From 11f7abcb66a68911feb11fc997f7583a92cba0ee Mon Sep 17 00:00:00 2001 From: Pun Butrach Date: Sat, 4 Oct 2025 23:03:42 +0700 Subject: [PATCH] chore: Cleanup, and hidden feature logged Signed-off-by: Pun Butrach --- .github/renovate.json5 | 33 + .github/workflows/build_release_apk.yml | 2 +- .github/workflows/ci.yml | 11 +- .github/workflows/release_update.yml | 6 +- .gitmodules | 2 +- Android.bp | 161 +- AndroidManifest-common.xml | 13 +- AndroidManifest.xml | 17 - CONTRIBUTING.md | 11 +- GITHUB_CHANGELOG.md | 206 +- OWNERS | 1 + PREUPLOAD.cfg | 2 +- README.md | 30 +- TELEGRAM_CHANGELOG.txt | 118 +- aconfig/launcher.aconfig | 194 +- aconfig/launcher_overview.aconfig | 76 +- aconfig/launcher_search.aconfig | 22 +- androidx-lib/build.gradle | 4 +- baseline-profile/build.gradle | 6 +- build.gradle | 182 +- compatLib/build.gradle | 2 +- compatLib/compatLibVQ/build.gradle | 2 +- compatLib/compatLibVR/build.gradle | 2 +- compatLib/compatLibVS/build.gradle | 2 +- compatLib/compatLibVT/build.gradle | 2 +- compatLib/compatLibVU/build.gradle | 2 +- compatLib/compatLibVV/build.gradle | 2 +- docs/assets/README.md | 22 +- docs/assets/device-frame.webp | Bin 49232 -> 51114 bytes flags/README.md | 26 +- flags/build.gradle | 4 +- .../android/launcher3/CustomFeatureFlags.java | 314 +- .../com/android/launcher3/FeatureFlags.java | 166 +- .../android/launcher3/FeatureFlagsImpl.java | 243 +- flags/src/com/android/launcher3/Flags.java | 264 +- .../android/systemui/CustomFeatureFlags.java | 987 +- .../com/android/systemui/FeatureFlags.java | 465 +- .../android/systemui/FeatureFlagsImpl.java | 709 +- flags/src/com/android/systemui/Flags.java | 1129 +- .../systemui/shared/CustomFeatureFlags.java | 47 +- .../android/systemui/shared/FeatureFlags.java | 19 +- .../systemui/shared/FeatureFlagsImpl.java | 47 +- .../com/android/systemui/shared/Flags.java | 57 +- .../window/flags2/CustomFeatureFlags.java | 1014 +- .../android/window/flags2/FeatureFlags.java | 414 +- .../window/flags2/FeatureFlagsImpl.java | 708 +- .../src/com/android/window/flags2/Flags.java | 1045 +- .../android/wm/shell/CustomFeatureFlags.java | 66 +- .../com/android/wm/shell/FeatureFlags.java | 29 +- .../android/wm/shell/FeatureFlagsImpl.java | 54 +- flags/src/com/android/wm/shell/Flags.java | 78 +- .../com/android/launcher3/BuildConfig.java | 5 + .../launcher3/Launcher3QuickStepGo.java | 4 +- gradle.properties | 2 + gradle/libs.versions.toml | 177 +- gradle/wrapper/gradle-wrapper.properties | 4 +- hidden-api/build.gradle | 2 +- lawnchair/assets/google_fonts.json | 89049 ++++++++-------- .../layout/all_apps_folder_application.xml | 5 +- lawnchair/res/layout/all_apps_folder_icon.xml | 4 +- lawnchair/res/values-af-rZA/strings.xml | 3 +- lawnchair/res/values-am-rET/strings.xml | 7 +- lawnchair/res/values-ar-rSA/strings.xml | 157 +- lawnchair/res/values-az-rAZ/strings.xml | 3 +- lawnchair/res/values-b+sr+Latn/strings.xml | 3 +- lawnchair/res/values-bn-rBD/strings.xml | 3 +- lawnchair/res/values-bs-rBA/strings.xml | 3 +- lawnchair/res/values-ca-rES/strings.xml | 3 +- lawnchair/res/values-cs-rCZ/strings.xml | 3 +- lawnchair/res/values-da-rDK/strings.xml | 3 +- lawnchair/res/values-de-rDE/strings.xml | 3 +- lawnchair/res/values-el-rGR/strings.xml | 1 - lawnchair/res/values-en-rCA/strings.xml | 3 +- lawnchair/res/values-es-rES/strings.xml | 5 +- lawnchair/res/values-et-rEE/strings.xml | 1 - lawnchair/res/values-fa-rIR/strings.xml | 39 +- lawnchair/res/values-fi-rFI/strings.xml | 3 +- lawnchair/res/values-fil-rPH/strings.xml | 3 +- lawnchair/res/values-fr-rFR/strings.xml | 1 - lawnchair/res/values-gl-rES/strings.xml | 5 +- lawnchair/res/values-hi-rIN/strings.xml | 3 +- lawnchair/res/values-hr-rHR/strings.xml | 3 +- lawnchair/res/values-hu-rHU/strings.xml | 3 +- lawnchair/res/values-in-rID/strings.xml | 3 +- lawnchair/res/values-it-rIT/strings.xml | 3 +- lawnchair/res/values-iw-rIL/strings.xml | 3 +- lawnchair/res/values-ja-rJP/strings.xml | 197 +- lawnchair/res/values-ka-rGE/strings.xml | 3 +- lawnchair/res/values-kmr-rTR/strings.xml | 3 +- lawnchair/res/values-ko-rKR/strings.xml | 137 +- lawnchair/res/values-lt-rLT/strings.xml | 3 +- lawnchair/res/values-ml-rIN/strings.xml | 3 +- lawnchair/res/values-mr-rIN/strings.xml | 3 +- lawnchair/res/values-nl-rNL/strings.xml | 3 +- lawnchair/res/values-no-rNO/strings.xml | 155 +- lawnchair/res/values-pl-rPL/strings.xml | 3 +- lawnchair/res/values-pt-rBR/strings.xml | 3 +- lawnchair/res/values-pt-rPT/strings.xml | 3 +- lawnchair/res/values-ro-rRO/strings.xml | 3 +- lawnchair/res/values-ru-rRU/strings.xml | 115 +- lawnchair/res/values-sk-rSK/strings.xml | 3 +- lawnchair/res/values-sl-rSI/strings.xml | 3 +- lawnchair/res/values-sq-rAL/strings.xml | 3 +- lawnchair/res/values-sr/strings.xml | 3 +- lawnchair/res/values-sv-rSE/strings.xml | 1 - lawnchair/res/values-sw-rKE/strings.xml | 3 +- lawnchair/res/values-ta-rIN/strings.xml | 3 +- lawnchair/res/values-te-rIN/strings.xml | 3 +- lawnchair/res/values-th-rTH/strings.xml | 3 +- lawnchair/res/values-tr-rTR/strings.xml | 3 +- lawnchair/res/values-uk-rUA/strings.xml | 3 +- lawnchair/res/values-ur-rIN/strings.xml | 3 +- lawnchair/res/values-ur-rPK/strings.xml | 3 +- lawnchair/res/values-uz-rUZ/strings.xml | 3 +- lawnchair/res/values-vi-rVN/strings.xml | 3 +- lawnchair/res/values-zh-rCN/strings.xml | 17 +- lawnchair/res/values-zh-rTW/strings.xml | 3 +- lawnchair/res/values/config.xml | 1 - lawnchair/res/values/strings.xml | 23 +- lawnchair/res/values/styles.xml | 1 + lawnchair/src/app/lawnchair/BlankActivity.kt | 14 +- .../app/lawnchair/DeviceProfileOverrides.kt | 6 +- .../src/app/lawnchair/LawnchairLauncher.kt | 20 +- .../allapps/LawnchairAlphabeticalAppsList.kt | 3 - .../allapps/views/SearchResultIcon.kt | 2 +- .../backup/ui/CreateBackupViewModel.kt | 4 +- .../gestures/config/GestureHandlerConfig.kt | 6 - .../gestures/config/GestureHandlerOption.kt | 1 - .../handlers/OpenNotificationsHandler.kt | 20 +- .../handlers/RecentsGestureHandler.kt | 23 +- .../gestures/handlers/SleepGestureHandler.kt | 73 +- .../app/lawnchair/icons/shape/IconShape.kt | 90 - .../nexuslauncher/SmartSpaceHostView.kt | 7 +- .../preferences/PreferenceManager.kt | 6 +- .../preferences2/PreferenceManager2.kt | 6 - .../LawnchairLocalSearchAlgorithm.kt | 2 +- .../algorithms/LawnchairSearchAlgorithm.kt | 4 - .../lawnchair/smartspace/CardPagerAdapter.kt | 11 +- .../theme/color/tokens/ColorTokens.kt | 5 +- .../theme/drawable/DrawableTokens.kt | 3 +- .../lawnchair/ui/popup/LawnchairShortcut.kt | 29 +- .../ui/popup/WallpaperCarouselView.kt | 3 +- .../lawnchair/ui/preferences/about/About.kt | 12 +- .../AcknowledgementsViewModel.kt | 2 +- .../components/GestureHandlerPreference.kt | 4 +- .../preferences/components/LauncherPreview.kt | 2 +- .../layout/LazyColumnPreferenceGroup.kt | 36 +- .../search/DockSearchPreferences.kt | 4 +- .../destinations/AppDrawerPreferences.kt | 4 - .../destinations/DebugMenuPreferences.kt | 81 +- .../destinations/DockPreferences.kt | 4 + .../destinations/FontSelectionPreference.kt | 1 + .../destinations/HiddenAppsPreferences.kt | 2 + .../destinations/IconShapePreference.kt | 2 - .../destinations/PickAppForGesture.kt | 1 + .../destinations/PreferencesDashboard.kt | 25 +- .../destinations/SelectAppsForDrawerFolder.kt | 2 + .../destinations/SelectIconPreference.kt | 2 +- .../ui/util/ProvideBottomSheetHandler.kt | 82 +- .../util/LawnchairWindowManagerProxy.kt | 25 +- .../lawnchair/views/LauncherPreviewView.kt | 84 +- .../views/LawnchairFloatingSurfaceView.kt | 6 +- prebuilts/libs/README.md | 26 +- prebuilts/libs/SystemUI-core-16.jar | Bin 12835474 -> 12415927 bytes prebuilts/libs/SystemUI-statsd-16.jar | Bin 12957 -> 12510 bytes prebuilts/libs/WindowManager-Shell-16.jar | Bin 2997695 -> 2825836 bytes prebuilts/libs/framework-16.jar | Bin 20875091 -> 20342081 bytes protos/launcher_atom.proto | 3 +- quickstep/Android.bp | 53 +- quickstep/AndroidManifest.xml | 8 +- .../facade/core/QuickstepComposeFeatures.kt | 14 +- .../facade/disabled/QuickstepComposeFacade.kt | 16 - .../facade/enabled/QuickstepComposeFacade.kt | 17 - .../res/color/app_chip_state_color_fg.xml | 1 - .../res/drawable/app_chip_menu_item_bg.xml | 54 +- .../keyboard_quick_switch_view_background.xml | 2 +- .../res/drawable/task_thumbnail_header_bg.xml | 2 +- .../gesture_tutorial_step_menu.xml | 5 +- .../res/layout/gesture_tutorial_fragment.xml | 14 + .../res/layout/gesture_tutorial_step_menu.xml | 5 +- quickstep/res/layout/icon_app_chip_view.xml | 26 +- .../res/layout/keyboard_quick_switch_view.xml | 1 + .../res/layout/overview_actions_container.xml | 16 +- .../layout/overview_add_desktop_button.xml | 4 +- .../res/layout/overview_clear_all_button.xml | 4 +- .../redesigned_gesture_tutorial_fragment.xml | 18 +- quickstep/res/layout/task.xml | 10 +- quickstep/res/layout/task_grouped.xml | 20 +- quickstep/res/layout/task_thumbnail.xml | 4 +- .../res/layout/task_view_menu_option.xml | 4 +- quickstep/res/layout/taskbar.xml | 11 - .../res/layout/taskbar_divider_popup_menu.xml | 2 +- quickstep/res/layout/taskbar_nav_button.xml | 1 - quickstep/res/values-af/strings.xml | 27 +- quickstep/res/values-am/strings.xml | 27 +- quickstep/res/values-ar/strings.xml | 27 +- quickstep/res/values-as/strings.xml | 27 +- quickstep/res/values-az/strings.xml | 27 +- quickstep/res/values-b+sr+Latn/strings.xml | 27 +- quickstep/res/values-be/strings.xml | 27 +- quickstep/res/values-bg/strings.xml | 27 +- quickstep/res/values-bn/strings.xml | 31 +- quickstep/res/values-bs/strings.xml | 27 +- quickstep/res/values-ca/strings.xml | 29 +- quickstep/res/values-cs/strings.xml | 27 +- quickstep/res/values-da/strings.xml | 27 +- quickstep/res/values-de/strings.xml | 39 +- quickstep/res/values-el/strings.xml | 27 +- quickstep/res/values-en-rAU/strings.xml | 27 +- quickstep/res/values-en-rCA/strings.xml | 27 +- quickstep/res/values-en-rGB/strings.xml | 27 +- quickstep/res/values-en-rIN/strings.xml | 27 +- quickstep/res/values-es-rUS/strings.xml | 29 +- quickstep/res/values-es/strings.xml | 27 +- quickstep/res/values-et/strings.xml | 27 +- quickstep/res/values-eu/strings.xml | 27 +- quickstep/res/values-fa/strings.xml | 27 +- quickstep/res/values-fi/strings.xml | 27 +- quickstep/res/values-fr-rCA/strings.xml | 35 +- quickstep/res/values-fr/strings.xml | 41 +- quickstep/res/values-gl/strings.xml | 27 +- quickstep/res/values-gu/strings.xml | 27 +- quickstep/res/values-hi/strings.xml | 33 +- quickstep/res/values-hr/strings.xml | 27 +- quickstep/res/values-hu/strings.xml | 27 +- quickstep/res/values-hy/strings.xml | 27 +- quickstep/res/values-in/strings.xml | 27 +- quickstep/res/values-is/strings.xml | 29 +- quickstep/res/values-it/strings.xml | 29 +- quickstep/res/values-iw/strings.xml | 31 +- quickstep/res/values-ja/strings.xml | 35 +- quickstep/res/values-ka/strings.xml | 27 +- quickstep/res/values-kk/strings.xml | 27 +- quickstep/res/values-km/strings.xml | 29 +- quickstep/res/values-kn/strings.xml | 29 +- quickstep/res/values-ko/strings.xml | 37 +- quickstep/res/values-ky/strings.xml | 27 +- quickstep/res/values-land/dimens.xml | 6 +- quickstep/res/values-lo/strings.xml | 27 +- quickstep/res/values-lt/strings.xml | 29 +- quickstep/res/values-lv/strings.xml | 27 +- quickstep/res/values-mk/strings.xml | 27 +- quickstep/res/values-ml/strings.xml | 27 +- quickstep/res/values-mn/strings.xml | 27 +- quickstep/res/values-mr/strings.xml | 27 +- quickstep/res/values-ms/strings.xml | 27 +- quickstep/res/values-my/strings.xml | 29 +- quickstep/res/values-nb/strings.xml | 29 +- quickstep/res/values-ne/strings.xml | 27 +- quickstep/res/values-night/colors.xml | 1 + quickstep/res/values-nl/strings.xml | 29 +- quickstep/res/values-or/strings.xml | 27 +- quickstep/res/values-pa/strings.xml | 27 +- quickstep/res/values-pl/strings.xml | 31 +- quickstep/res/values-pt-rPT/strings.xml | 31 +- quickstep/res/values-pt/strings.xml | 29 +- quickstep/res/values-ro/strings.xml | 27 +- quickstep/res/values-ru/strings.xml | 27 +- quickstep/res/values-si/strings.xml | 27 +- quickstep/res/values-sk/strings.xml | 35 +- quickstep/res/values-sl/strings.xml | 29 +- quickstep/res/values-sq/strings.xml | 27 +- quickstep/res/values-sr/strings.xml | 27 +- quickstep/res/values-sv/strings.xml | 27 +- quickstep/res/values-sw/strings.xml | 27 +- quickstep/res/values-sw600dp/config.xml | 4 - quickstep/res/values-sw600dp/dimens.xml | 1 - quickstep/res/values-sw720dp/dimens.xml | 1 - quickstep/res/values-ta/strings.xml | 27 +- quickstep/res/values-te/strings.xml | 31 +- quickstep/res/values-th/strings.xml | 27 +- quickstep/res/values-tl/strings.xml | 27 +- quickstep/res/values-tr/strings.xml | 27 +- quickstep/res/values-uk/strings.xml | 27 +- quickstep/res/values-ur/strings.xml | 27 +- quickstep/res/values-uz/strings.xml | 27 +- quickstep/res/values-vi/strings.xml | 35 +- quickstep/res/values-zh-rCN/strings.xml | 29 +- quickstep/res/values-zh-rHK/strings.xml | 27 +- quickstep/res/values-zh-rTW/strings.xml | 29 +- quickstep/res/values-zu/strings.xml | 27 +- quickstep/res/values/attrs.xml | 14 - quickstep/res/values/colors.xml | 9 +- quickstep/res/values/config.xml | 19 +- quickstep/res/values/dimens.xml | 78 +- quickstep/res/values/ids.xml | 2 - quickstep/res/values/strings.xml | 57 +- quickstep/res/values/styles.xml | 115 +- .../res/xml/indexable_launcher_prefs.xml | 7 - .../launcher3/QuickstepTransitionManager.java | 220 +- .../appprediction/AppsDividerView.java | 12 +- .../appprediction/PredictionRowView.java | 13 +- .../com/android/launcher3/dagger/Modules.kt | 37 +- .../desktop/DesktopAppLaunchTransition.kt | 6 +- .../DesktopAppLaunchTransitionManager.kt | 5 +- .../DesktopRecentsTransitionController.kt | 16 +- .../hybridhotseat/HotseatEduController.java | 16 +- .../hybridhotseat/HotseatEduDialog.java | 15 +- .../HotseatPredictionController.java | 60 +- .../launcher3/model/AppEventProducer.java | 84 +- .../launcher3/model/PredictionUpdateTask.java | 20 +- .../model/QuickstepModelDelegate.java | 411 +- .../launcher3/model/WellbeingModel.java | 8 +- .../model/WidgetsPredictionUpdateTask.java | 11 +- .../statehandlers/DepthController.java | 19 +- .../DesktopVisibilityController.kt | 72 +- .../launcher3/taskbar/BaseTaskbarContext.java | 43 +- .../taskbar/FallbackTaskbarUIController.java | 4 + .../KeyboardQuickSwitchController.java | 154 +- .../taskbar/KeyboardQuickSwitchTaskView.java | 2 +- .../taskbar/KeyboardQuickSwitchView.java | 71 - .../KeyboardQuickSwitchViewController.java | 101 +- .../taskbar/LauncherTaskbarUIController.java | 54 +- .../taskbar/ManageWindowsTaskbarShortcut.kt | 9 +- .../taskbar/NavbarButtonsViewController.java | 104 +- .../launcher3/taskbar/PinToTaskbarShortcut.kt | 24 +- .../taskbar/StashedHandleViewController.java | 39 +- .../taskbar/TaskbarActivityContext.java | 341 +- .../TaskbarAutohideSuspendController.java | 5 - .../taskbar/TaskbarBackgroundRenderer.kt | 15 +- .../launcher3/taskbar/TaskbarControllers.java | 14 +- .../taskbar/TaskbarDesktopModeController.kt | 17 +- .../taskbar/TaskbarDividerPopupView.kt | 25 +- .../taskbar/TaskbarDragController.java | 10 +- .../launcher3/taskbar/TaskbarDragLayer.java | 1 - .../taskbar/TaskbarDragLayerController.java | 15 +- .../launcher3/taskbar/TaskbarEduTooltip.kt | 4 +- .../taskbar/TaskbarEduTooltipController.kt | 18 +- .../TaskbarHoverToolTipController.java | 37 +- .../taskbar/TaskbarInsetsController.kt | 230 +- .../TaskbarLauncherStateController.java | 115 +- .../taskbar/TaskbarModelCallbacks.java | 98 +- .../taskbar/TaskbarModelCallbacksFactory.kt | 13 +- .../taskbar/TaskbarNavButtonController.java | 55 +- .../taskbar/TaskbarOverflowView.java | 12 - .../taskbar/TaskbarPinningController.kt | 30 +- .../taskbar/TaskbarPopupController.java | 47 +- .../taskbar/TaskbarRecentAppsController.kt | 138 +- .../launcher3/taskbar/TaskbarSharedState.java | 22 - .../taskbar/TaskbarStashController.java | 125 +- .../taskbar/TaskbarStashViaTouchController.kt | 14 +- .../taskbar/TaskbarThresholdUtils.java | 2 +- .../taskbar/TaskbarUIController.java | 21 - .../launcher3/taskbar/TaskbarView.java | 244 +- .../taskbar/TaskbarViewCallbacks.java | 4 +- .../taskbar/TaskbarViewCallbacksFactory.kt | 15 +- .../taskbar/TaskbarViewController.java | 186 +- .../android/launcher3/taskbar/Utilities.java | 26 +- .../VoiceInteractionWindowController.kt | 1 - .../allapps/TaskbarAllAppsController.java | 1 - .../allapps/TaskbarAllAppsSlideInView.java | 41 +- .../taskbar/bubbles/BubbleBarController.java | 106 +- .../bubbles/BubbleBarLocationDropTarget.kt | 59 +- .../bubbles/BubbleBarSwipeController.kt | 3 +- .../taskbar/bubbles/BubbleBarView.java | 119 +- .../bubbles/BubbleBarViewController.java | 195 +- .../taskbar/bubbles/BubbleControllers.java | 25 +- .../taskbar/bubbles/BubbleDismissViewExt.kt | 3 +- .../taskbar/bubbles/BubbleDragController.java | 62 +- .../BubbleStashedHandleViewController.java | 5 +- .../animation/BubbleBarViewAnimator.kt | 2 +- .../flyout/BubbleBarFlyoutController.kt | 1 - .../bubbles/flyout/BubbleBarFlyoutView.kt | 2 +- .../bubbles/stashing/BubbleStashController.kt | 10 +- .../DeviceProfileDimensionsProviderAdapter.kt | 4 +- .../PersistentBubbleStashController.kt | 12 +- .../TransientBubbleStashController.kt | 16 +- .../TaskbarAllAppsButtonContainer.kt | 38 +- .../customization/TaskbarDividerContainer.kt | 18 +- .../customization/TaskbarFeatureEvaluator.kt | 8 +- .../customization/TaskbarSpecsEvaluator.kt | 2 +- .../taskbar/growth/NudgeController.kt | 189 +- .../launcher3/taskbar/growth/NudgePayload.kt | 2 + .../navbutton/AbstractNavButtonLayoutter.kt | 2 +- .../navbutton/NavButtonLayoutFactory.kt | 2 +- .../navbutton/PhoneLandscapeNavLayoutter.kt | 25 +- .../navbutton/PhonePortraitNavLayoutter.kt | 12 +- .../navbutton/PhoneSeascapeNavLayoutter.kt | 21 +- .../taskbar/navbutton/SetupNavLayoutter.kt | 12 +- .../taskbar/navbutton/TaskbarNavLayoutter.kt | 12 +- .../overlay/TaskbarOverlayContext.java | 38 +- .../overlay/TaskbarOverlayController.java | 74 +- .../overlay/TaskbarOverlayDragLayer.java | 1 - .../uioverrides/PredictedAppIcon.java | 31 +- .../uioverrides/QuickstepLauncher.java | 286 +- .../uioverrides/QuickstepWidgetHolder.java | 26 - .../uioverrides/RecentsViewStateController.kt | 7 +- .../launcher3/uioverrides/SystemApiWrapper.kt | 38 +- .../uioverrides/states/AllAppsState.java | 40 +- .../states/BackgroundAppState.java | 18 +- .../states/OverviewModalTaskState.java | 2 +- .../uioverrides/states/OverviewState.java | 32 +- .../uioverrides/states/QuickSwitchState.java | 23 +- .../QuickstepAtomicAnimationFactory.java | 2 +- .../states/SplitScreenSelectState.java | 2 +- .../NavBarToHomeTouchController.java | 18 +- ...ButtonNavbarToOverviewTouchController.java | 19 +- .../NoButtonQuickSwitchTouchController.java | 14 +- .../PortraitStatesTouchController.java | 9 +- .../QuickSwitchTouchController.java | 2 +- .../StatusBarTouchController.java | 28 +- .../TaskViewDismissTouchController.kt | 251 +- .../TaskViewLaunchTouchController.kt | 14 +- .../TaskViewTouchControllerDeprecated.java | 2 +- .../TransposedQuickSwitchTouchController.java | 2 +- .../android/quickstep/AbsSwipeUpHandler.java | 156 +- .../android/quickstep/AllAppsActionManager.kt | 10 +- .../quickstep/AspectRatioSystemShortcut.kt | 7 +- .../quickstep/BaseActivityInterface.java | 43 + .../quickstep/BaseContainerInterface.java | 122 +- .../quickstep/BaseWindowInterface.java | 25 +- .../quickstep/DesktopFullscreenDrawParams.kt | 2 +- .../quickstep/DesktopSystemShortcut.kt | 25 +- .../src/com/android/quickstep/DisplayModel.kt | 37 +- .../ExternalDisplaySystemShortcut.kt | 5 +- .../quickstep/FallbackActivityInterface.java | 12 +- .../quickstep/FallbackSwipeHandler.java | 19 +- .../quickstep/FallbackWindowInterface.java | 56 +- .../com/android/quickstep/GestureState.java | 9 +- .../android/quickstep/HighResLoadingState.kt | 5 +- .../android/quickstep/HomeVisibilityState.kt | 28 +- .../android/quickstep/InputConsumerUtils.kt | 87 +- .../quickstep/InstantAppResolverImpl.java | 7 +- .../quickstep/LauncherActivityInterface.java | 40 +- .../LauncherBackAnimationController.java | 25 +- .../LauncherRestoreEventLoggerImpl.kt | 14 +- .../quickstep/LauncherSwipeHandlerV2.java | 29 +- quickstep/src/com/android/quickstep/OWNERS | 1 + .../quickstep/OverviewCommandHelper.kt | 409 +- .../quickstep/OverviewComponentObserver.java | 95 +- .../QuickstepTestInformationHandler.java | 269 +- .../android/quickstep/RecentTasksList.java | 82 +- .../android/quickstep/RecentsActivity.java | 28 +- .../quickstep/RecentsAnimationCallbacks.java | 11 +- .../quickstep/RecentsAnimationController.java | 27 +- .../RecentsAnimationDeviceState.java | 172 +- .../quickstep/RecentsAnimationTargets.java | 5 +- .../android/quickstep/RecentsFilterState.java | 19 +- .../com/android/quickstep/RecentsModel.java | 51 +- .../quickstep/RemoteAnimationTargets.java | 6 - .../android/quickstep/RemoteTargetGluer.java | 247 +- .../quickstep/RotationTouchHelper.java | 48 +- .../quickstep/SwipeUpAnimationLogic.java | 49 +- .../SystemDecorationChangeObserver.kt | 9 +- .../com/android/quickstep/SystemUiProxy.kt | 126 +- .../quickstep/TaskAnimationManager.java | 124 +- .../com/android/quickstep/TaskIconCache.kt | 42 +- .../android/quickstep/TaskOverlayFactory.java | 25 +- .../quickstep/TaskShortcutFactory.java | 106 +- .../android/quickstep/TaskThumbnailCache.kt | 52 +- .../com/android/quickstep/TaskViewUtils.java | 24 +- .../com/android/quickstep/TopTaskTracker.java | 113 +- .../quickstep/TouchInteractionService.java | 562 +- .../dagger/QuickstepBaseAppComponent.java | 43 +- .../FallbackRecentsStateController.java | 4 +- .../fallback/FallbackRecentsView.java | 72 +- .../quickstep/fallback/RecentsDragLayer.java | 4 +- .../quickstep/fallback/RecentsState.java | 47 +- .../quickstep/fallback/RecentsStateUtils.kt | 11 - .../fallback/window/RecentsWindowFlags.kt | 40 +- .../fallback/window/RecentsWindowManager.kt | 249 +- .../window/RecentsWindowSwipeHandler.java | 85 +- .../AccessibilityInputConsumer.java | 5 +- .../DeviceLockedInputConsumer.java | 7 +- .../NavHandleLongPressHandler.java | 43 +- .../OtherActivityInputConsumer.java | 12 +- .../inputconsumers/OverviewInputConsumer.java | 14 +- .../ProgressDelegateInputConsumer.java | 2 +- .../TaskbarUnstashInputConsumer.java | 71 +- .../quickstep/interaction/AllSetActivity.java | 175 +- .../interaction/EdgeBackGestureHandler.java | 2 +- .../interaction/GestureSandboxActivity.java | 4 +- .../quickstep/interaction/MenuFragment.java | 14 - .../interaction/NavBarGestureHandler.java | 2 +- .../SwipeUpGestureTutorialController.java | 11 +- .../interaction/TutorialController.java | 94 +- .../interaction/TutorialFragment.java | 4 +- .../logging/SettingsChangeLogger.java | 77 +- .../logging/StatsLogCompatManager.java | 931 + .../orientation/LandscapePagedViewHandler.kt | 75 +- .../orientation/PortraitPagedViewHandler.kt | 127 +- .../RecentsPagedOrientationHandler.kt | 24 +- .../orientation/SeascapePagedViewHandler.kt | 43 +- .../recents/data/RecentTasksRepository.kt | 4 +- .../RecentsDeviceProfileRepositoryImpl.kt | 2 +- .../quickstep/recents/data/TasksRepository.kt | 132 +- .../recents/di/RecentsDependencies.kt | 58 +- .../recents/domain/model/TaskModel.kt | 7 - .../recents/domain/usecase/GetTaskUseCase.kt | 50 +- .../usecase/OrganizeDesktopTasksUseCase.kt | 128 +- .../recents/ui/mapper/TaskUiStateMapper.kt | 123 +- .../ui/viewmodel/DesktopTaskViewModel.kt | 11 +- .../recents/ui/viewmodel/TaskTileUiState.kt | 8 +- .../recents/ui/viewmodel/TaskViewModel.kt | 105 +- .../recents/viewmodel/RecentsViewModel.kt | 13 +- .../task/thumbnail/TaskThumbnailUiState.kt | 36 +- .../task/thumbnail/TaskThumbnailView.kt | 73 +- .../quickstep/util/ActivityPreloadUtil.kt | 5 +- .../AnimatorControllerWithResistance.java | 4 +- .../quickstep/util/AppPairsController.java | 51 +- .../android/quickstep/util/BackAnimState.kt | 12 +- .../quickstep/util/BaseDepthController.java | 280 +- .../android/quickstep/util/BorderAnimator.kt | 2 +- .../quickstep/util/ContextualSearchInvoker.kt | 33 +- .../com/android/quickstep/util/DesktopTask.kt | 4 +- .../quickstep/util/ExternalDisplays.kt | 6 +- .../com/android/quickstep/util/GroupTask.kt | 36 +- .../LauncherUnfoldAnimationController.java | 8 +- .../android/quickstep/util/LayoutUtils.java | 3 +- .../util/QuickstepOnboardingPrefs.java | 2 +- .../quickstep/util/RecentsOrientedState.java | 26 +- .../quickstep/util/RectFSpringAnim.java | 8 +- .../util/ScalingWorkspaceRevealAnim.kt | 153 +- .../quickstep/util/SlideInRemoteTransition.kt | 6 +- .../util/SplitAnimationController.kt | 158 +- .../quickstep/util/SplitScreenUtils.kt | 37 +- .../util/SplitSelectStateController.java | 101 +- .../util/SplitToWorkspaceController.java | 2 +- .../SplitWithKeyboardShortcutController.java | 12 +- .../quickstep/util/SurfaceTransaction.java | 30 - .../util/SystemWindowManagerProxy.java | 49 +- .../quickstep/util/TaskGridNavHelper.kt | 4 - .../quickstep/util/TaskViewSimulator.java | 97 +- .../quickstep/util/TransformParams.java | 4 +- .../LauncherUnfoldTransitionController.kt | 12 +- .../quickstep/views/AddDesktopButton.kt | 42 - .../quickstep/views/AllAppsEduView.java | 4 +- .../com/android/quickstep/views/BlurUtils.kt | 70 +- .../android/quickstep/views/ClearAllButton.kt | 10 +- .../quickstep/views/DesktopTaskContentView.kt | 1 - .../quickstep/views/DesktopTaskView.kt | 441 +- .../quickstep/views/DigitalWellBeingToast.kt | 53 +- .../views/FloatingAppPairBackground.kt | 61 +- .../quickstep/views/FloatingAppPairView.kt | 30 +- .../quickstep/views/FloatingTaskView.java | 6 +- .../quickstep/views/FloatingWidgetView.java | 13 +- .../quickstep/views/GroupedTaskView.kt | 57 +- .../quickstep/views/IconAppChipView.kt | 373 +- .../com/android/quickstep/views/IconView.kt | 14 +- .../quickstep/views/LauncherRecentsView.java | 16 +- .../quickstep/views/OverviewActionsView.java | 49 +- .../quickstep/views/RecentsDismissUtils.kt | 1595 +- .../android/quickstep/views/RecentsView.java | 1238 +- .../quickstep/views/RecentsViewContainer.java | 14 +- .../quickstep/views/RecentsViewModelHelper.kt | 5 +- .../quickstep/views/RecentsViewUtils.kt | 325 +- .../android/quickstep/views/TaskContainer.kt | 85 +- .../android/quickstep/views/TaskMenuView.kt | 295 +- .../quickstep/views/TaskMenuViewWithArrow.kt | 4 +- .../views/TaskThumbnailViewDeprecated.java | 2 +- .../com/android/quickstep/views/TaskView.kt | 361 +- .../android/quickstep/views/TaskViewIcon.java | 50 + .../util/StateManagerProtoLogProxy.java | 6 - .../util/ActiveGestureErrorDetector.java | 28 +- .../util/ActiveGestureProtoLogProxy.java | 136 +- .../util/QuickstepProtoLogGroup.java | 5 +- .../util/RecentsWindowProtoLogProxy.java | 16 +- .../bubbles/BubbleBarViewScreenshotTest.kt | 33 +- .../bubbles/BubbleViewScreenshotTest.kt | 1 + .../TaskThumbnailViewScreenshotTest.kt | 72 +- .../DesktopAppLaunchTransitionManagerTest.kt | 32 +- .../model/QuickstepModelDelegateTest.kt | 55 +- .../model/data/TaskViewItemInfoTest.kt | 7 +- .../launcher3/taskbar/TaskbarBaseTestCase.kt | 2 - .../TaskbarHoverToolTipControllerTest.kt | 9 - .../TaskbarNavButtonControllerTest.java | 19 +- .../launcher3/taskbar/TaskbarOverflowTest.kt | 300 +- .../taskbar/TaskbarPopupControllerTest.kt | 65 +- .../TaskbarRecentAppsControllerTest.kt | 383 +- .../taskbar/TaskbarStashControllerTest.kt | 92 +- .../launcher3/taskbar/TaskbarViewTest.kt | 2 +- .../launcher3/taskbar/TaskbarViewTestUtil.kt | 79 +- .../TaskbarViewWithLayoutTransitionTest.kt | 17 +- .../bubbles/BubbleBarInputConsumerTest.kt | 2 - .../bubbles/BubbleBarSwipeControllerTest.kt | 2 - .../PersistentBubbleStashControllerTest.kt | 27 +- .../TransientBubbleStashControllerTest.kt | 29 +- .../navbutton/NavButtonLayoutFactoryTest.kt | 26 +- .../taskbar/rules/MockedRecentsModelHelper.kt | 19 +- .../taskbar/rules/TaskbarModeRuleTest.kt | 12 +- .../taskbar/rules/TaskbarUnitTestRule.kt | 54 +- .../rules/TaskbarWindowSandboxContext.kt | 95 +- .../quickstep/AbsSwipeUpHandlerTestCase.java | 158 +- .../quickstep/AllAppsActionManagerTest.kt | 34 +- .../com/android/quickstep/DisplayModelTest.kt | 15 +- .../FallbackSwipeHandlerTestCase.java | 8 - .../quickstep/HotseatWidthCalculationTest.kt | 14 +- .../LauncherRestoreEventLoggerImplTest.kt | 19 +- .../quickstep/LauncherSwipeHandlerV2Test.kt | 31 +- .../LauncherSwipeHandlerV2TestCase.java | 8 - .../quickstep/OverviewCommandHelperTest.kt | 232 +- .../quickstep/RecentTasksListTest.java | 51 +- .../RecentsAnimationDeviceStateTest.kt | 50 +- .../android/quickstep/RecentsModelTest.java | 55 +- .../RecentsWindowSwipeHandlerTestCase.java | 33 +- .../quickstep/TaskAnimationManagerTest.java | 111 +- .../NavHandleLongPressHandlerTest.java | 23 +- .../logging/SettingsChangeLoggerTest.kt | 30 +- .../recents/data/FakeTaskIconDataSource.kt | 5 +- .../data/FakeTaskThumbnailDataSource.kt | 9 +- .../recents/data/FakeTasksRepository.kt | 23 +- .../recents/data/TasksRepositoryTest.kt | 240 +- .../domain/usecase/GetTaskUseCaseTest.kt | 124 +- .../ui/mapper/TaskUiStateMapperTest.kt | 285 +- .../recents/ui/viewmodel/TaskViewModelTest.kt | 96 +- .../recents/viewmodel/RecentsViewModelTest.kt | 6 +- .../TaskbarPinningControllerTest.kt | 30 +- .../util/ContextualSearchInvokerTest.java | 11 + .../util/GestureExclusionManagerTest.kt | 4 +- .../android/quickstep/util/GroupTaskTest.kt | 91 +- .../util/SplitSelectStateControllerTest.kt | 5 +- .../quickstep/util/TaskGridNavHelperTest.kt | 11 - .../quickstep/util/TaskViewSimulatorTest.java | 129 +- .../quickstep/util/TransformParamsTest.kt | 2 +- .../WidgetsPredicationUpdateTaskTest.java | 64 +- .../statehandlers/DepthControllerTest.kt | 105 +- .../animation/BubbleBarViewAnimatorTest.kt | 17 - .../quickstep/AbstractQuickStepTest.java | 96 +- .../quickstep/AbstractTaplTestsTaskbar.java | 2 +- .../AspectRatioSystemShortcutTests.kt | 51 +- .../quickstep/DesktopSystemShortcutTest.kt | 169 +- .../quickstep/DigitalWellBeingToastTest.java | 67 +- .../ExternalDisplaySystemShortcutTest.kt | 37 +- .../quickstep/FallbackRecentsTest.java | 43 +- .../quickstep/InputConsumerUtilsTest.java | 26 +- .../quickstep/NavigationModeSwitchRule.java | 12 +- .../OrientationTouchTransformerTest.java | 3 +- .../quickstep/TaplOverviewIconTest.java | 4 +- .../TaplTestsKeyboardQuickSwitch.java | 8 +- .../quickstep/TaplTestsLockedTaskbar.java | 4 +- .../quickstep/TaplTestsOverviewDesktop.kt | 11 +- .../android/quickstep/TaplTestsQuickstep.java | 370 +- .../android/quickstep/TaplTestsTaskbar.java | 2 +- .../android/quickstep/TaplTestsTrackpad.java | 2 +- .../quickstep/TaplTestsTransientTaskbar.java | 36 +- .../com/android/quickstep/TaskViewTest.java | 18 - .../quickstep/TaskbarModeSwitchRule.java | 2 +- .../DesktopAppLaunchAnimatorHelperTest.kt | 2 +- .../quickstep/util/SplitScreenTestUtils.kt | 2 +- .../util/SplitSelectDataHolderTest.kt | 49 +- .../all_apps_tabs_background_unselected.xml | 2 +- ...pps_tabs_background_unselected_focused.xml | 2 +- res/drawable/bg_ps_mask_left_corner.xml | 2 +- res/drawable/bg_ps_mask_right_corner.xml | 2 +- .../bg_rounded_corner_bottom_sheet_handle.xml | 2 +- res/drawable/ic_bubble_button.xml | 14 +- ...ll_apps_search_button_expressive_theme.xml | 2 +- res/drawable/inset_rounded_action_button.xml | 4 +- res/drawable/private_space_app_divider.xml | 2 +- res/drawable/ps_settings_background.xml | 2 +- res/drawable/work_card.xml | 2 +- res/layout/add_item_confirmation_activity.xml | 2 +- res/layout/all_apps_personal_work_tabs.xml | 4 +- res/layout/launcher_preview_layout.xml | 2 +- .../launcher_preview_two_panel_layout.xml | 2 +- res/layout/private_space_header.xml | 30 +- res/layout/private_space_mask_view.xml | 2 +- res/layout/user_folder_icon_normalized.xml | 22 - res/layout/widget_recommendations.xml | 1 - res/layout/widgets_bottom_sheet_content.xml | 1 - res/layout/widgets_full_sheet_paged_view.xml | 1 - .../widgets_full_sheet_recyclerview.xml | 1 - res/layout/widgets_two_pane_sheet.xml | 1 - res/layout/work_apps_paused.xml | 6 +- res/layout/work_mode_fab.xml | 2 +- res/values-af/strings.xml | 10 +- res/values-am/strings.xml | 10 +- res/values-ar/strings.xml | 10 +- res/values-as/strings.xml | 12 +- res/values-az/strings.xml | 10 +- res/values-b+sr+Latn/strings.xml | 10 +- res/values-be/strings.xml | 10 +- res/values-bg/strings.xml | 10 +- res/values-bn/strings.xml | 10 +- res/values-bs/strings.xml | 10 +- res/values-ca/strings.xml | 12 +- res/values-cs/strings.xml | 12 +- res/values-da/strings.xml | 12 +- res/values-de/strings.xml | 10 +- res/values-el/strings.xml | 10 +- res/values-en-rAU/strings.xml | 12 +- res/values-en-rCA/strings.xml | 12 +- res/values-en-rGB/strings.xml | 12 +- res/values-en-rIN/strings.xml | 12 +- res/values-es-rUS/strings.xml | 10 +- res/values-es/strings.xml | 14 +- res/values-et/strings.xml | 10 +- res/values-eu/strings.xml | 12 +- res/values-fa/strings.xml | 14 +- res/values-fi/strings.xml | 10 +- res/values-fr-rCA/strings.xml | 18 +- res/values-fr/strings.xml | 12 +- res/values-gl/strings.xml | 14 +- res/values-gu/strings.xml | 12 +- res/values-hi/strings.xml | 14 +- res/values-hr/strings.xml | 12 +- res/values-hu/strings.xml | 10 +- res/values-hy/strings.xml | 12 +- res/values-in/strings.xml | 10 +- res/values-is/strings.xml | 10 +- res/values-it/strings.xml | 10 +- res/values-iw/strings.xml | 14 +- res/values-ja/strings.xml | 10 +- res/values-ka/strings.xml | 10 +- res/values-kk/strings.xml | 10 +- res/values-km/strings.xml | 10 +- res/values-kn/strings.xml | 14 +- res/values-ko/strings.xml | 10 +- res/values-ky/strings.xml | 10 +- res/values-lo/strings.xml | 10 +- res/values-lt/strings.xml | 12 +- res/values-lv/strings.xml | 10 +- res/values-mk/strings.xml | 10 +- res/values-ml/strings.xml | 10 +- res/values-mn/strings.xml | 12 +- res/values-mr/strings.xml | 10 +- res/values-ms/strings.xml | 10 +- res/values-my/strings.xml | 14 +- res/values-nb/strings.xml | 12 +- res/values-ne/strings.xml | 14 +- res/values-night/colors.xml | 101 +- res/values-night/styles.xml | 10 +- res/values-nl/strings.xml | 10 +- res/values-or/strings.xml | 10 +- res/values-pa/strings.xml | 12 +- res/values-pl/strings.xml | 10 +- res/values-pt-rPT/strings.xml | 14 +- res/values-pt/strings.xml | 12 +- res/values-ro/strings.xml | 10 +- res/values-ru/strings.xml | 12 +- res/values-si/strings.xml | 10 +- res/values-sk/strings.xml | 12 +- res/values-sl/strings.xml | 10 +- res/values-sq/strings.xml | 10 +- res/values-sr/strings.xml | 10 +- res/values-sv/strings.xml | 14 +- res/values-sw/strings.xml | 12 +- res/values-sw600dp-land/dimens.xml | 1 - res/values-sw600dp/dimens.xml | 1 - res/values-ta/strings.xml | 10 +- res/values-te/strings.xml | 10 +- res/values-th/strings.xml | 12 +- res/values-tl/strings.xml | 10 +- res/values-tr/strings.xml | 10 +- res/values-uk/strings.xml | 12 +- res/values-ur/strings.xml | 10 +- res/values-uz/strings.xml | 10 +- res/values-v31/colors.xml | 2 + res/values-v34/colors.xml | 166 +- res/values-vi/strings.xml | 10 +- res/values-zh-rCN/strings.xml | 16 +- res/values-zh-rHK/strings.xml | 10 +- res/values-zh-rTW/strings.xml | 10 +- res/values-zu/strings.xml | 10 +- res/values/attrs.xml | 41 +- res/values/colors.xml | 418 +- res/values/config.xml | 23 +- res/values/dimens.xml | 11 +- res/values/id.xml | 4 - res/values/strings.xml | 19 +- res/values/styles.xml | 107 +- res/xml/launcher_preferences.xml | 9 - settings.gradle | 25 +- .../testing/shared/TestProtocol.java | 17 +- .../launcher3/AbstractFloatingView.java | 11 +- .../launcher3/AppWidgetResizeFrame.java | 23 +- .../android/launcher3/AutoInstallsLayout.java | 22 +- src/com/android/launcher3/BaseActivity.java | 16 +- src/com/android/launcher3/BubbleTextView.java | 211 +- .../android/launcher3/ButtonDropTarget.java | 11 +- src/com/android/launcher3/CellLayout.java | 14 +- .../launcher3/CheckLongPressHelper.java | 10 +- .../android/launcher3/DeleteDropTarget.java | 17 +- src/com/android/launcher3/DeviceProfile.java | 1093 +- src/com/android/launcher3/DropTarget.java | 26 +- src/com/android/launcher3/DropTargetBar.java | 100 +- .../android/launcher3/DropTargetHandler.kt | 4 +- .../android/launcher3/GestureNavContract.java | 27 +- src/com/android/launcher3/Hotseat.java | 35 +- .../launcher3/InvariantDeviceProfile.java | 315 +- src/com/android/launcher3/Launcher.java | 442 +- .../android/launcher3/LauncherAnimUtils.java | 16 - .../android/launcher3/LauncherConstants.java | 11 +- src/com/android/launcher3/LauncherModel.kt | 44 +- src/com/android/launcher3/LauncherPrefs.kt | 11 +- .../android/launcher3/LauncherProvider.java | 70 +- .../android/launcher3/LauncherRootView.java | 11 +- .../android/launcher3/LauncherSettings.java | 144 +- src/com/android/launcher3/LauncherState.java | 39 +- .../launcher3/MainProcessInitializer.java | 70 +- src/com/android/launcher3/ModelCallbacks.kt | 392 +- src/com/android/launcher3/PagedView.java | 7 + .../launcher3/SecondaryDropTarget.java | 30 +- .../launcher3/SessionCommitReceiver.java | 5 - src/com/android/launcher3/Utilities.java | 61 +- src/com/android/launcher3/Workspace.java | 104 +- .../launcher3/WorkspaceLayoutManager.java | 2 + .../WorkspaceStateTransitionAnimation.java | 2 +- .../LauncherAccessibilityDelegate.java | 17 +- .../ShortcutMenuAccessibilityDelegate.java | 3 +- .../allapps/ActivityAllAppsContainerView.java | 177 +- .../launcher3/allapps/AllAppsStore.java | 50 +- .../allapps/AllAppsTransitionController.java | 30 +- .../allapps/AlphabeticalAppsList.java | 48 +- .../launcher3/allapps/BaseAllAppsAdapter.java | 21 +- .../launcher3/allapps/FloatingHeaderView.java | 12 +- .../launcher3/allapps/FloatingMaskView.java | 20 - .../allapps/LauncherAllAppsContainerView.java | 4 +- .../allapps/PrivateProfileManager.java | 89 +- .../RecyclerViewAnimationController.java | 1 + .../allapps/SectionDecorationHandler.java | 36 +- .../allapps/SectionDecorationInfo.java | 7 +- .../launcher3/allapps/WorkProfileManager.java | 8 +- .../launcher3/allapps/WorkUtilityView.java | 6 +- .../anim/AnimatedPropertySetter.java | 22 +- .../anim/KeyboardInsetAnimationCallback.java | 2 +- .../launcher3/anim/PropertySetter.java | 12 +- .../anim/SpringAnimationBuilder.java | 10 +- .../launcher3/apppairs/AppPairIconGraphic.kt | 4 +- .../LauncherRestoreEventLogger.kt | 14 +- .../android/launcher3/celllayout/CellInfo.kt | 41 +- .../launcher3/config/FeatureFlags.java | 10 +- .../launcher3/dagger/LauncherAppModule.java | 27 +- .../dagger/LauncherBaseAppComponent.java | 23 +- .../launcher3/dragndrop/DragController.java | 8 +- .../launcher3/dragndrop/DragLayer.java | 1 - .../android/launcher3/dragndrop/DragView.java | 14 +- .../dragndrop/LauncherDragController.java | 27 +- .../launcher3/dragndrop/SimpleDragLayer.java | 1 - .../folder/ClippedFolderIconLayoutRule.java | 140 +- src/com/android/launcher3/folder/Folder.java | 347 +- .../folder/FolderAnimationManager.java | 19 +- .../launcher3/folder/FolderGridOrganizer.java | 14 +- .../android/launcher3/folder/FolderIcon.java | 26 +- .../launcher3/folder/FolderNameProvider.java | 50 +- .../launcher3/folder/FolderPagedView.java | 16 +- .../launcher3/folder/LauncherDelegate.java | 43 +- .../launcher3/folder/PreviewBackground.java | 3 +- .../launcher3/folder/PreviewItemManager.java | 13 +- .../graphics/DragPreviewProvider.java | 16 +- .../graphics/FragmentWithPreview.java | 3 +- .../graphics/GridCustomizationsProxy.java | 226 +- .../graphics/LauncherCustomizationProvider.kt | 42 +- .../graphics/LauncherPreviewRenderer.java | 763 + .../graphics/PreloadIconDrawable.java | 94 +- .../graphics/PreviewSurfaceRenderer.java | 496 + .../launcher3/graphics/ShapeDelegate.kt | 81 +- .../launcher3/graphics/SysUiScrim.java | 2 +- .../launcher3/graphics/ThemeManager.kt | 32 +- .../android/launcher3/icons/IconCache.java | 290 +- .../launcher3/icons/LauncherIconProvider.java | 48 +- .../android/launcher3/icons/LauncherIcons.kt | 31 + .../logging/ColdRebootStartupLatencyLogger.kt | 192 + .../launcher3/logging/StartupLatencyLogger.kt | 128 +- .../model/AddWorkspaceItemsTask.java | 38 +- .../android/launcher3/model/AllAppsList.java | 48 +- .../launcher3/model/BaseLauncherBinder.java | 258 +- .../android/launcher3/model/BgDataModel.java | 477 + .../launcher3/model/CacheDataUpdatedTask.java | 46 +- .../launcher3/model/DatabaseHelper.java | 83 +- .../launcher3/model/FirstScreenBroadcast.java | 2 +- .../model/FirstScreenBroadcastHelper.kt | 2 +- .../model/GridSizeMigrationDBController.java | 14 +- .../launcher3/model/GridSizeMigrationLogic.kt | 14 +- .../launcher3/model/ItemInstallQueue.java | 29 +- .../launcher3/model/LayoutParserFactory.kt | 3 +- .../android/launcher3/model/LoaderCursor.java | 26 +- .../android/launcher3/model/LoaderTask.java | 433 +- .../launcher3/model/ModelDbController.java | 43 +- .../launcher3/model/ModelDelegate.java | 39 +- .../launcher3/model/ModelInitializer.kt | 62 +- .../launcher3/model/ModelTaskController.kt | 34 +- .../android/launcher3/model/ModelWriter.java | 49 +- ...PackageIncrementalDownloadUpdatedTask.java | 23 +- .../model/PackageInstallStateChangedTask.java | 51 +- .../launcher3/model/PackageUpdatedTask.java | 60 +- .../model/ReloadStringCacheTask.java | 9 +- .../launcher3/model/SessionFailureTask.kt | 20 +- .../launcher3/model/ShortcutsChangedTask.kt | 82 +- .../model/UserLockStateChangedTask.java | 15 +- .../launcher3/model/WorkspaceItemProcessor.kt | 102 +- .../model/WorkspaceItemSpaceFinder.java | 24 +- .../launcher3/model/data/AppPairInfo.kt | 18 +- .../launcher3/model/data/CollectionInfo.kt | 6 +- .../launcher3/model/data/IconRequestInfo.java | 11 +- .../launcher3/model/data/ItemInfo.java | 7 +- .../model/data/ItemInfoWithIcon.java | 5 +- .../pageindicators/PageIndicator.java | 10 + .../pageindicators/PageIndicatorDots.java | 192 +- .../launcher3/pm/InstallSessionHelper.java | 10 +- .../pm/ShortcutConfigActivityInfo.java | 2 +- .../android/launcher3/popup/ArrowPopup.java | 4 +- .../popup/PopupContainerWithArrow.java | 74 +- .../launcher3/popup/RemoteActionShortcut.java | 24 +- .../launcher3/popup/SystemShortcut.java | 81 +- .../launcher3/provider/RestoreDbTask.java | 34 +- .../launcher3/qsb/QsbContainerView.java | 49 +- .../responsive/ResponsiveCellSpecsProvider.kt | 55 +- .../launcher3/responsive/ResponsiveSpec.kt | 24 +- .../responsive/ResponsiveSpecsParser.kt | 8 +- .../SecondaryDisplayLauncher.java | 48 +- .../secondarydisplay/SecondaryDragLayer.java | 29 +- .../launcher3/settings/SettingsActivity.java | 7 +- .../launcher3/shapes/IconShapeModel.kt | 15 +- .../launcher3/shapes/ShapesProvider.kt | 57 +- .../launcher3/statemanager/BaseState.java | 2 +- .../launcher3/statemanager/StateManager.java | 21 - .../statemanager/StatefulContainer.java | 8 - .../launcher3/states/RotationHelper.java | 2 +- .../testing/TestInformationHandler.java | 8 +- .../testing/shared/TestProtocol.java | 45 +- .../AbstractStateChangeTouchController.java | 16 +- .../touch/AllAppsSwipeController.java | 33 +- .../launcher3/touch/ItemClickHandler.java | 16 +- .../touch/WorkspaceTouchListener.java | 42 +- .../android/launcher3/util/ApiWrapper.java | 31 +- src/com/android/launcher3/util/BaseContext.kt | 9 - .../launcher3/util/CellContentDimensions.kt | 19 +- .../android/launcher3/util/DimensionUtils.kt | 12 +- .../launcher3/util/DisplayController.java | 154 +- src/com/android/launcher3/util/Executors.java | 6 - .../launcher3/util/InstantAppResolver.java | 15 +- .../android/launcher3/util/ItemInflater.kt | 41 +- .../util/KeyboardShortcutsDelegate.java | 3 +- .../util/LauncherBindableItemsContainer.kt | 45 +- .../launcher3/util/LauncherLayoutBuilder.kt | 5 - .../android/launcher3/util/LooperExecutor.kt | 8 +- .../launcher3/util/MSDLPlayerWrapper.java | 9 +- .../util/MultiTranslateDelegate.java | 3 +- .../launcher3/util/ResourceBasedOverride.java | 3 - .../util/SplitConfigurationOptions.java | 119 + .../launcher3/util/TouchController.java | 13 +- .../launcher3/util/WallpaperThemeManager.kt | 8 +- .../util/coroutines/DispatcherProvider.kt | 65 +- .../util/window/WindowManagerProxy.java | 61 +- .../launcher3/views/AbstractSlideInView.java | 133 +- .../launcher3/views/ActivityContext.java | 52 +- .../android/launcher3/views/ArrowTipView.java | 60 +- .../launcher3/views/BaseDragLayer.java | 38 +- .../android/launcher3/views/ClipIconView.java | 46 +- .../launcher3/views/FloatingIconView.java | 12 +- .../launcher3/views/IconButtonView.java | 2 +- .../launcher3/views/OptionsPopupView.java | 31 +- .../android/launcher3/views/ScrimView.java | 29 - src/com/android/launcher3/views/Snackbar.java | 2 +- .../widget/AddItemWidgetsBottomSheet.java | 32 +- .../launcher3/widget/BaseWidgetSheet.java | 61 +- .../widget/DatabaseWidgetPreviewLoader.java | 14 +- .../widget/LauncherAppWidgetProviderInfo.java | 2 +- .../widget/PendingAppWidgetHostView.java | 5 +- .../widget/PendingItemDragHelper.java | 106 +- .../android/launcher3/widget/WidgetCell.java | 12 +- .../launcher3/widget/WidgetInflater.kt | 7 - .../widget/custom/CustomWidgetManager.java | 20 + .../WidgetRecommendationCategoryProvider.java | 7 +- .../picker/WidgetRecommendationsView.java | 2 +- .../widget/picker/WidgetsFullSheet.java | 32 +- .../widget/picker/WidgetsListHeader.java | 4 +- .../widget/picker/WidgetsTwoPaneSheet.java | 9 +- .../picker/model/WidgetPickerDataProvider.kt | 34 +- .../picker/util/WidgetPreviewContainerSize.kt | 16 +- .../util/WidgetPreviewContainerSizes.kt | 60 - .../launcher3/widget/util/WidgetSizes.java | 39 +- .../PersonalWorkSlidingTabStrip.java | 14 +- .../com/android/launcher3/BuildConfig.java | 5 + .../com/android/launcher3/dagger/Modules.kt | 4 - .../uioverrides/states/AllAppsState.java | 14 +- .../uioverrides/states/OverviewState.java | 8 +- .../util/StateManagerProtoLogProxy.java | 2 - systemUI/anim/.gitignore | 9 + systemUI/anim/Android.bp | 79 + systemUI/anim/AndroidManifest.xml | 22 + systemUI/anim/build.gradle | 52 + systemUI/anim/lib/Android.bp | 68 + systemUI/anim/lib/OWNERS | 3 + .../animation/OriginRemoteTransition.java | 516 + .../animation/OriginTransitionSession.java | 333 + .../animation/SurfaceUIComponent.java | 175 + .../systemui/animation/Transactions.java | 87 + .../systemui/animation/UIComponent.java | 86 + .../systemui/animation/ViewUIComponent.java | 388 + .../server/IOriginTransitionsImpl.java | 471 + .../animation/shared/IOriginTransitions.aidl | 44 + systemUI/anim/lib/tests/Android.bp | 47 + systemUI/anim/lib/tests/AndroidManifest.xml | 28 + systemUI/anim/lib/tests/AndroidTest.xml | 39 + .../OriginTransitionSessionTest.java | 406 + .../anim/res/anim/launch_dialog_enter.xml | 23 + systemUI/anim/res/anim/launch_dialog_exit.xml | 22 + systemUI/anim/res/values/ids.xml | 32 + systemUI/anim/res/values/styles.xml | 24 + .../animation/ActivityTransitionAnimator.kt | 1970 + .../animation/AnimationFeatureFlags.kt | 6 + .../animation/ComposableControllerFactory.kt | 60 + .../DelegateTransitionAnimatorController.kt | 26 + .../animation/DialogTransitionAnimator.kt | 1092 + .../android/systemui/animation/Expandable.kt | 106 + .../systemui/animation/FontInterpolator.kt | 195 + .../systemui/animation/FontVariationUtils.kt | 86 + .../com/android/systemui/animation/GSFAxes.kt | 99 + ...GhostedViewTransitionAnimatorController.kt | 612 + .../animation/IViewTransitionRegistry.kt | 56 + .../systemui/animation/LaunchableView.kt | 96 + .../animation/RemoteAnimationDelegate.kt | 30 + .../RemoteAnimationRunnerCompat.java | 293 + .../RemoteAnimationTargetCompat.java | 86 + .../systemui/animation/ShadeInterpolation.kt | 39 + .../systemui/animation/TextAnimator.kt | 364 + .../systemui/animation/TextInterpolator.kt | 555 + .../systemui/animation/TransitionAnimator.kt | 1234 + .../ViewDialogTransitionAnimatorController.kt | 128 + .../animation/ViewHierarchyAnimator.kt | 1173 + .../systemui/animation/ViewRootSync.kt | 43 + .../animation/ViewTransitionRegistry.kt | 166 + .../systemui/animation/ViewTransitionToken.kt | 34 + .../animation/back/BackAnimationSpec.kt | 79 + .../back/BackAnimationSpecForSysUi.kt | 83 + .../animation/back/BackTransformation.kt | 63 + .../back/BottomsheetBackAnimationSpec.kt | 42 + .../back/FlingOnBackAnimationCallback.kt | 186 + .../back/OnBackAnimationCallbackExtension.kt | 103 + .../animation/view/LaunchableFrameLayout.kt | 55 + .../animation/view/LaunchableImageView.kt | 56 + .../animation/view/LaunchableLinearLayout.kt | 55 + .../animation/view/LaunchableTextView.kt | 49 + .../surfaceeffects/PaintDrawCallback.kt | 53 + .../RenderEffectDrawCallback.kt | 39 + .../glowboxeffect/GlowBoxConfig.kt | 46 + .../glowboxeffect/GlowBoxEffect.kt | 185 + .../glowboxeffect/GlowBoxShader.kt | 58 + .../loadingeffect/LoadingEffect.kt | 366 + .../loadingeffect/LoadingEffectView.kt | 51 + .../ripple/MultiRippleController.kt | 49 + .../surfaceeffects/ripple/MultiRippleView.kt | 61 + .../surfaceeffects/ripple/RippleAnimation.kt | 93 + .../ripple/RippleAnimationConfig.kt | 29 + .../surfaceeffects/ripple/RippleShader.kt | 460 + .../surfaceeffects/ripple/RippleView.kt | 252 + .../shaders/SolidColorShader.kt | 36 + .../surfaceeffects/shaders/SparkleShader.kt | 115 + .../shaderutil/SdfShaderLibrary.kt | 128 + .../shaderutil/ShaderUtilLibrary.kt | 201 + .../TurbulenceNoiseAnimationConfig.kt | 89 + .../TurbulenceNoiseController.kt | 115 + .../turbulencenoise/TurbulenceNoiseShader.kt | 314 + .../turbulencenoise/TurbulenceNoiseView.kt | 236 + .../surfaceeffects/utils/MathUtils.kt | 24 + .../systemui/util/AnimatorExtensions.kt | 80 + .../src/com/android/systemui/util/Dialog.kt | 162 + .../com/android/systemui/util/Dimension.kt | 32 + systemUI/common/build.gradle | 8 +- .../common/coroutine/ConflatedCallbackFlow.kt | 25 - systemUI/log/Android.bp | 22 +- systemUI/log/build.gradle | 5 +- .../android/systemui/log/LogMessageImpl.kt | 6 +- .../com/android/systemui/log/core/LogLevel.kt | 18 +- systemUI/plugin/Android.bp | 1 - .../plugins/BcSmartspaceDataPlugin.java | 41 +- systemUI/plugin/build.gradle | 7 +- .../systemui/plugins/ActivityStarter.java | 7 - .../plugins/NavigationEdgeBackPlugin.java | 5 +- .../plugins/VolumeDialogController.java | 4 +- .../com/android/systemui/plugins/qs/QS.java | 12 - .../statusbar/NotificationMenuRowPlugin.java | 16 +- systemUI/plugin_core/Android.bp | 5 +- systemUI/plugin_core/build.gradle | 8 +- .../processor/ProtectedPluginProcessor.kt | 11 +- .../plugins/PluginLifecycleManager.java | 5 + .../systemui/plugins/PluginListener.java | 10 +- .../com/android/systemui/biometrics/Utils.kt | 77 +- .../shared/model/FingerprintSensorType.kt | 4 - .../biometrics/shared/model/PromptKind.kt | 10 +- systemUI/shared/build.gradle | 14 +- .../DisableSubpixelTextTransitionListener.kt | 11 - .../shared/navigationbar/KeyButtonRipple.java | 9 +- .../shared/plugins/PluginActionManager.java | 94 +- .../shared/plugins/PluginInstance.java | 65 +- .../shared/recents/ILauncherProxy.aidl | 8 +- .../shared/recents/ISystemUiProxy.aidl | 7 +- .../shared/recents/model/ThumbnailData.kt | 11 +- .../utilities/PreviewPositionHelper.java | 48 +- .../shared/regionsampling/RegionSampler.kt | 8 +- .../rotation/FloatingRotationButton.java | 53 +- .../shared/rotation/RotationButton.java | 8 +- .../rotation/RotationButtonController.java | 79 +- .../shared/system/ActivityManagerWrapper.java | 47 +- .../system/InputConsumerController.java | 37 +- .../system/InteractionJankMonitorWrapper.java | 12 +- .../shared/system/QuickStepContract.java | 4 +- .../RecentsAnimationControllerCompat.java | 22 +- .../UncaughtExceptionPreHandlerManager.kt | 9 +- .../unfold/system/SystemUnfoldSharedModule.kt | 37 +- systemUI/unfold/build.gradle | 13 +- .../config/ResourceUnfoldTransitionConfig.kt | 40 +- systemUI/utils/build.gradle | 2 +- systemUI/viewcapture/build.gradle | 6 +- tests/Android.bp | 20 +- tests/AndroidManifest.xml | 1 - .../DeviceProfileDumpTest/phonePortrait.txt | 1 + .../phonePortrait3Button.txt | 1 + .../phoneVerticalBar.txt | 1 + .../phoneVerticalBar3Button.txt | 1 + .../DeviceProfileDumpTest/tabletLandscape.txt | 1 + .../tabletLandscape3Button.txt | 1 + .../DeviceProfileDumpTest/tabletPortrait.txt | 1 + .../tabletPortrait3Button.txt | 1 + .../twoPanelLandscape.txt | 1 + .../twoPanelLandscape3Button.txt | 1 + ...twoPanelLandscape3Button_decoupleDepth.txt | 1 + .../twoPanelLandscape_decoupleDepth.txt | 1 + .../twoPanelPortrait.txt | 1 + .../twoPanelPortrait3Button.txt | 1 + .../twoPanelPortrait3Button_decoupleDepth.txt | 1 + .../twoPanelPortrait_decoupleDepth.txt | 1 + .../launcher3/AbstractDeviceProfileTest.kt | 34 +- .../launcher3/AutoInstallsLayoutTest.kt | 62 +- .../FakeInvariantDeviceProfileTest.kt | 7 - .../allapps/FloatingHeaderViewTest.kt | 16 +- .../allapps/PrivateProfileManagerTest.java | 9 +- .../celllayout/board/TestWorkspaceBuilder.kt | 4 +- .../dagger/LauncherComponentProviderTest.kt | 13 +- .../android/launcher3/folder/FolderTest.kt | 15 +- .../icons/FastBitmapDrawableTest.java | 92 +- .../launcher3/icons/IconCacheTest.java | 60 - .../icons/cache/CacheLookupFlagTest.kt | 21 - .../icons/mono/MonoIconThemeControllerTest.kt | 29 +- .../logging/StartupLatencyLoggerTest.kt | 347 +- .../model/AbstractWorkspaceModelTest.kt | 32 +- .../model/AddWorkspaceItemsTaskTest.kt | 64 +- .../launcher3/model/AsyncBindingTest.kt | 161 +- .../model/CacheDataUpdatedTaskTest.java | 46 +- .../model/DefaultLayoutProviderTest.java | 35 +- .../launcher3/model/FolderIconLoadTest.kt | 43 +- .../launcher3/model/GridSizeMigrationTest.kt | 11 +- .../launcher3/model/LoaderCursorTest.java | 33 +- .../PackageInstallStateChangedTaskTest.java | 45 +- .../launcher3/model/PackageUpdatedTaskTest.kt | 34 +- .../model/ShortcutsChangedTaskTest.kt | 66 +- .../model/WorkspaceItemProcessorTest.kt | 47 +- .../model/WorkspaceItemSpaceFinderTest.kt | 48 +- .../model/data/ItemInfoWithIconTest.kt | 11 +- .../launcher3/pm/InstallSessionTrackerTest.kt | 12 +- .../com/android/launcher3/pm/UserCacheTest.kt | 19 +- .../launcher3/provider/RestoreDbTaskTest.java | 12 +- .../AllAppsRecyclerViewPoolTest.kt | 2 +- .../ResponsiveCellSpecsProviderTest.kt | 226 +- .../launcher3/shapes/ShapesProviderTest.kt | 45 + .../launcher3/ui/BubbleTextViewTest.java | 11 +- .../util/ActivityContextWrapper.java | 1 - .../util/CellContentDimensionsTest.kt | 117 +- .../android/launcher3/util/DaggerGraphs.kt | 43 +- .../util/DaggerSingletonDeadlockTest.kt | 10 +- .../launcher3/util/DisplayControllerTest.kt | 78 +- .../launcher3/util/LauncherModelHelper.java | 283 + .../launcher3/util/ModelTestExtensions.kt | 22 - .../launcher3/util/SandboxApplication.kt | 103 +- .../util/SimpleBroadcastReceiverTest.kt | 2 +- .../launcher3/util/TestDispatcherProvider.kt | 3 +- .../launcher3/util/TestResourceHelper.kt | 19 +- .../util/TestSandboxModelContextWrapper.java | 3 +- .../launcher3/util/VibratorWrapperTest.kt | 6 +- .../launcher3/util/rule/BackAndRestoreRule.kt | 10 +- .../launcher3/widget/GeneratedPreviewTest.kt | 17 +- .../widget/custom/CustomWidgetManagerTest.kt | 4 +- .../model/WidgetPickerDataProviderTest.kt | 38 +- .../util/WidgetPreviewContainerSizesTest.kt | 2 +- .../picker/util/WidgetsTableUtilsTest.java | 4 +- tests/res/values/attrs.xml | 7 - tests/res/xml/appwidget_no_config_large.xml | 2 +- .../android/launcher3/LauncherIntentTest.java | 26 +- .../launcher3/allapps/KeyboardFocusTest.java | 33 +- .../allapps/TaplAllAppsIconsWorkingTest.java | 8 +- .../allapps/TaplOpenCloseAllAppsTest.java | 7 +- .../appiconmenu/TaplAppIconMenuTest.java | 7 +- .../BackupAndRestoreDBSelectionTest.kt | 53 +- .../launcher3/compat/PromiseIconUiTest.java | 3 +- .../launcher3/dragging/TaplDragTest.java | 7 +- .../dragging/TaplUninstallRemoveTest.java | 12 +- .../folder/PreviewItemManagerTest.kt | 74 +- .../android/launcher3/model/LoaderTaskTest.kt | 44 +- .../model/ModelMultiCallbacksTest.java | 113 +- .../model/WorkspaceItemProcessorExtraTest.kt | 18 +- .../HotseatWidthCalculationTest.kt | 14 +- .../launcher3/pm/InstallSessionHelperTest.kt | 8 +- .../launcher3/popup/SystemShortcutTest.java | 17 +- .../testcomponent/TestLauncherActivity.java | 18 - .../launcher3/ui/TaplTestsLauncher3Test.java | 8 +- .../util/BaseLauncherActivityTest.kt | 110 +- .../launcher3/util/ItemInflaterTest.kt | 67 +- .../util/WallpaperThemeManagerTest.kt | 6 - .../launcher3/util/rule/FailureWatcher.java | 28 +- .../launcher3/util/rule/SamplerRule.java | 19 +- .../util/rule/TestIsolationRule.java | 2 +- .../android/launcher3/tapl/BaseOverview.java | 29 +- .../launcher3/tapl/LaunchedAppState.java | 59 +- .../tapl/LauncherInstrumentation.java | 281 +- .../android/launcher3/tapl/OverviewTask.java | 101 +- .../launcher3/tapl/OverviewTaskMenu.java | 46 +- .../launcher3/tapl/PrivateSpaceContainer.java | 5 +- .../tapl/SearchResultFromTaskbarQsb.java | 8 +- .../com/android/launcher3/tapl/Taskbar.java | 16 +- .../launcher3/tapl/TaskbarAllApps.java | 10 +- .../launcher3/tapl/TaskbarAllAppsQsb.java | 8 +- .../launcher3/tapl/TaskbarAppIcon.java | 16 +- .../com/android/launcher3/tapl/Widgets.java | 10 - .../com/android/launcher3/tapl/Workspace.java | 15 +- .../launcher3/tapl/WorkspaceDragSource.java | 2 +- wmshell/Android.bp | 147 +- wmshell/OWNERS | 6 +- wmshell/aconfig/Android.bp | 1 - wmshell/aconfig/OWNERS | 3 +- wmshell/aconfig/multitasking.aconfig | 186 +- wmshell/build.gradle | 6 +- wmshell/multivalentTests/Android.bp | 27 +- wmshell/multivalentTests/AndroidManifest.xml | 15 - .../AndroidManifestRobolectric.xml | 7 - .../robolectric/config/robolectric.properties | 1 - .../wm/shell/bubbles/BubblePositionerTest.kt | 151 +- .../wm/shell/bubbles/BubbleStackViewTest.kt | 562 +- .../wm/shell/bubbles/BubbleTaskViewTest.kt | 85 +- .../BubbleExpandedViewPinControllerTest.kt | 46 +- wmshell/multivalentTestsForDevice | 0 wmshell/multivalentTestsForDevice/Android.bp | 99 + .../AndroidManifest.xml | 13 + .../AndroidManifestRobolectric.xml | 3 + .../multivalentTestsForDevice/AndroidTest.xml | 31 + wmshell/multivalentTestsForDevice/OWNERS | 4 + .../robolectric/config/robolectric.properties | 2 + .../wm/shell/bubbles/BubblePositionerTest.kt | 670 + .../wm/shell/bubbles/BubbleStackViewTest.kt | 462 + .../wm/shell/bubbles/BubbleTaskViewTest.kt | 92 + .../BubbleExpandedViewPinControllerTest.kt | 459 + wmshell/multivalentTestsForDeviceless | 0 .../multivalentTestsForDeviceless/Android.bp | 99 + .../AndroidManifest.xml | 13 + .../AndroidManifestRobolectric.xml | 3 + .../AndroidTest.xml | 31 + wmshell/multivalentTestsForDeviceless/OWNERS | 4 + .../robolectric/config/robolectric.properties | 2 + .../wm/shell/bubbles/BubblePositionerTest.kt | 670 + .../wm/shell/bubbles/BubbleStackViewTest.kt | 462 + .../wm/shell/bubbles/BubbleTaskViewTest.kt | 92 + .../BubbleExpandedViewPinControllerTest.kt | 459 + .../res/drawable/bubble_ic_create_bubble.xml | 12 +- .../res/drawable/bubble_ic_stop_bubble.xml | 12 +- .../res/layout/desktop_mode_app_header.xml | 14 - .../desktop_mode_window_decor_handle_menu.xml | 34 +- ...esktop_mode_window_decor_maximize_menu.xml | 13 +- .../letterbox_restart_dialog_layout.xml | 1 - wmshell/res/layout/split_divider.xml | 8 - wmshell/res/values-af/strings.xml | 7 - wmshell/res/values-am/strings.xml | 7 - wmshell/res/values-ar/strings.xml | 7 - wmshell/res/values-as/strings.xml | 7 - wmshell/res/values-az/strings.xml | 7 - wmshell/res/values-b+sr+Latn/strings.xml | 11 +- wmshell/res/values-be/strings.xml | 7 - wmshell/res/values-bg/strings.xml | 7 - wmshell/res/values-bn/strings.xml | 7 - wmshell/res/values-bs/strings.xml | 7 - wmshell/res/values-ca/strings.xml | 7 - wmshell/res/values-cs/strings.xml | 7 - wmshell/res/values-da/strings.xml | 7 - wmshell/res/values-de/strings.xml | 7 - wmshell/res/values-el/strings.xml | 7 - wmshell/res/values-en-rAU/strings.xml | 7 - wmshell/res/values-en-rCA/strings.xml | 7 - wmshell/res/values-en-rGB/strings.xml | 7 - wmshell/res/values-en-rIN/strings.xml | 7 - wmshell/res/values-es-rUS/strings.xml | 7 - wmshell/res/values-es/strings.xml | 7 - wmshell/res/values-et/strings.xml | 7 - wmshell/res/values-eu/strings.xml | 7 - wmshell/res/values-fa/strings.xml | 7 - wmshell/res/values-fi/strings.xml | 7 - wmshell/res/values-fr-rCA/strings.xml | 7 - wmshell/res/values-fr/strings.xml | 9 +- wmshell/res/values-gl/strings.xml | 7 - wmshell/res/values-gu/strings.xml | 7 - wmshell/res/values-hi/strings.xml | 7 - wmshell/res/values-hr/strings.xml | 7 - wmshell/res/values-hu/strings.xml | 7 - wmshell/res/values-hy/strings.xml | 7 - wmshell/res/values-in/strings.xml | 7 - wmshell/res/values-is/strings.xml | 7 - wmshell/res/values-it/strings.xml | 7 - wmshell/res/values-iw/strings.xml | 7 - wmshell/res/values-ja/strings.xml | 7 - wmshell/res/values-ka/strings.xml | 7 - wmshell/res/values-kk/strings.xml | 7 - wmshell/res/values-km/strings.xml | 7 - wmshell/res/values-kn/strings.xml | 7 - wmshell/res/values-kn/strings_tv.xml | 2 +- wmshell/res/values-ko/strings.xml | 7 - wmshell/res/values-ky/strings.xml | 7 - wmshell/res/values-lo/strings.xml | 7 - wmshell/res/values-lt/strings.xml | 7 - wmshell/res/values-lv/strings.xml | 7 - wmshell/res/values-mk/strings.xml | 7 - wmshell/res/values-ml/strings.xml | 7 - wmshell/res/values-mn/strings.xml | 7 - wmshell/res/values-mr/strings.xml | 7 - wmshell/res/values-ms/strings.xml | 7 - wmshell/res/values-my/strings.xml | 7 - wmshell/res/values-nb/strings.xml | 7 - wmshell/res/values-ne/strings.xml | 7 - wmshell/res/values-nl/strings.xml | 7 - wmshell/res/values-or/strings.xml | 7 - wmshell/res/values-pa/strings.xml | 7 - wmshell/res/values-pl/strings.xml | 7 - wmshell/res/values-pt-rBR/strings.xml | 7 - wmshell/res/values-pt-rPT/strings.xml | 7 - wmshell/res/values-pt/strings.xml | 7 - wmshell/res/values-ro/strings.xml | 7 - wmshell/res/values-ru/strings.xml | 13 +- wmshell/res/values-si/strings.xml | 7 - wmshell/res/values-sk/strings.xml | 7 - wmshell/res/values-sl/strings.xml | 7 - wmshell/res/values-sq/strings.xml | 7 - wmshell/res/values-sr/strings.xml | 11 +- wmshell/res/values-sv/strings.xml | 11 +- wmshell/res/values-sw/strings.xml | 7 - wmshell/res/values-ta/strings.xml | 9 +- wmshell/res/values-te/strings.xml | 7 - wmshell/res/values-th/strings.xml | 7 - wmshell/res/values-tl/strings.xml | 7 - wmshell/res/values-tr/strings.xml | 7 - wmshell/res/values-uk/strings.xml | 7 - wmshell/res/values-ur/strings.xml | 7 - wmshell/res/values-uz/strings.xml | 7 - wmshell/res/values-vi/strings.xml | 7 - wmshell/res/values-zh-rCN/strings.xml | 7 - wmshell/res/values-zh-rHK/strings.xml | 7 - wmshell/res/values-zh-rTW/strings.xml | 7 - wmshell/res/values-zu/strings.xml | 7 - wmshell/res/values/attrs.xml | 14 - wmshell/res/values/config.xml | 8 +- wmshell/res/values/dimen.xml | 12 +- wmshell/res/values/strings.xml | 16 - wmshell/res/values/styles.xml | 110 +- wmshell/shared/Android.bp | 2 - wmshell/shared/res/values/config.xml | 2 - wmshell/shared/res/values/dimen.xml | 13 +- .../wm/shell/shared/DesktopModeStatus.java | 2 +- .../shell/shared/FocusTransitionListener.java | 6 +- .../wm/shell/shared/GroupedTaskInfo.java | 7 +- .../wm/shell/shared/TransitionUtil.java | 14 +- .../shared/animation/MinimizeAnimator.kt | 16 - .../shell/shared/animation/PhysicsAnimator.kt | 47 +- .../shell/shared/animation/WindowAnimator.kt | 15 +- .../bubbles/BubbleAnythingFlagHelper.java | 31 - .../shell/shared/bubbles/BubbleBarLocation.kt | 12 - .../wm/shell/shared/bubbles/ContextUtils.kt | 3 +- .../wm/shell/shared/bubbles/DismissView.kt | 46 +- .../wm/shell/shared/bubbles/DragZone.kt | 71 +- .../shell/shared/bubbles/DragZoneFactory.kt | 532 +- .../wm/shell/shared/bubbles/DraggedObject.kt | 17 +- .../shell/shared/bubbles/DropTargetManager.kt | 179 +- .../wm/shell/shared/bubbles/DropTargetView.kt | 39 +- .../android/wm/shell/shared/bubbles/OWNERS | 1 + .../desktopmode/DesktopModeCompatPolicy.kt | 81 +- .../shared/desktopmode/DesktopModeStatus.java | 327 +- .../DesktopModeTransitionSource.kt | 2 - .../ManageWindowsViewContainer.kt | 1 - .../wm/shell/shared/split/SplitBounds.java | 128 +- .../shared/split/SplitScreenConstants.java | 39 +- .../android/wm/shell/ProtoLogController.java | 42 +- .../wm/shell/RootDisplayAreaOrganizer.java | 9 +- .../shell/RootTaskDisplayAreaOrganizer.java | 23 +- .../android/wm/shell/ShellTaskOrganizer.java | 499 +- .../ActivityEmbeddingAnimationAdapter.java | 13 +- .../ActivityEmbeddingAnimationRunner.java | 120 +- .../ActivityEmbeddingAnimationSpec.java | 62 +- .../ActivityEmbeddingController.java | 11 +- .../shell/animation/FlingAnimationUtils.java | 2 - .../android/wm/shell/back/BackAnimation.java | 27 +- .../shell/back/BackAnimationBackground.java | 31 +- .../shell/back/BackAnimationController.java | 1086 +- .../wm/shell/back/BackAnimationRunner.java | 118 +- .../shell/back/CrossActivityBackAnimation.kt | 78 +- .../wm/shell/back/CrossTaskBackAnimation.java | 72 +- .../back/CustomCrossActivityBackAnimation.kt | 16 +- .../back/DefaultCrossActivityBackAnimation.kt | 10 +- .../back/ShellBackAnimationRegistry.java | 25 +- .../com/android/wm/shell/back/TEST_MAPPING | 26 +- .../wm/shell/bubbles/BadgedImageView.java | 11 +- .../com/android/wm/shell/bubbles/Bubble.java | 435 +- .../wm/shell/bubbles/BubbleController.java | 1335 +- .../android/wm/shell/bubbles/BubbleData.java | 363 +- .../wm/shell/bubbles/BubbleDataRepository.kt | 10 +- .../bubbles/BubbleEducationController.kt | 2 +- .../wm/shell/bubbles/BubbleExpandedView.java | 214 +- .../bubbles/BubbleExpandedViewManager.kt | 31 +- .../wm/shell/bubbles/BubbleFlyoutView.java | 44 +- .../wm/shell/bubbles/BubbleLogger.java | 140 +- .../wm/shell/bubbles/BubbleOverflow.kt | 70 +- .../bubbles/BubbleOverflowContainerView.java | 20 +- .../wm/shell/bubbles/BubblePopupViewExt.kt | 10 +- .../wm/shell/bubbles/BubblePositioner.java | 170 +- .../wm/shell/bubbles/BubbleStackView.java | 439 +- .../shell/bubbles/BubbleStackViewManager.kt | 13 +- .../wm/shell/bubbles/BubbleTaskView.kt | 46 +- .../wm/shell/bubbles/BubbleViewInfoTask.java | 265 +- .../com/android/wm/shell/bubbles/Bubbles.java | 81 +- .../bubbles/BubblesNavBarGestureTracker.java | 2 +- .../BubblesNavBarMotionEventHandler.java | 2 +- .../bubbles/BubblesTransitionObserver.java | 154 +- .../wm/shell/bubbles/DismissViewExt.kt | 39 +- .../android/wm/shell/bubbles/IBubbles.aidl | 25 +- .../wm/shell/bubbles/IBubblesListener.aidl | 8 +- .../wm/shell/bubbles/ManageEducationView.kt | 9 +- .../src/com/android/wm/shell/bubbles/OWNERS | 1 + .../wm/shell/bubbles/StackEducationView.kt | 6 +- .../animation/AnimatableScaleMatrix.java | 6 - .../ExpandedAnimationController.java | 5 +- .../ExpandedViewAnimationControllerImpl.java | 4 +- .../animation/StackAnimationController.java | 2 +- .../bubbles/bar/BubbleBarAnimationHelper.java | 554 +- .../bubbles/bar/BubbleBarExpandedView.java | 618 +- .../BubbleBarExpandedViewDragController.kt | 72 +- .../bubbles/bar/BubbleBarHandleView.java | 147 +- .../shell/bubbles/bar/BubbleBarLayerView.java | 396 +- .../bubbles/bar/BubbleBarMenuItemView.java | 8 +- .../shell/bubbles/bar/BubbleBarMenuView.java | 67 - .../bar/BubbleBarMenuViewController.java | 174 +- .../bar/BubbleEducationViewController.kt | 40 +- .../bar/BubbleExpandedViewPinController.kt | 4 +- .../shortcut/CreateBubbleShortcutActivity.kt | 4 +- .../bubbles/shortcut/ShowBubblesActivity.kt | 4 +- .../shell/common/DisplayChangeController.java | 23 +- .../wm/shell/common/DisplayController.java | 190 +- .../wm/shell/common/DisplayImeController.java | 418 +- .../shell/common/DisplayInsetsController.java | 83 +- .../wm/shell/common/DisplayLayout.java | 118 +- .../wm/shell/common/HandlerExecutor.java | 87 - .../shell/common/LaunchAdjacentController.kt | 12 +- .../wm/shell/common/MultiInstanceHelper.kt | 106 +- .../wm/shell/common/ScreenshotUtils.java | 4 - .../wm/shell/common/ShellExecutor.java | 13 +- .../android/wm/shell/common/SurfaceUtils.java | 10 +- .../wm/shell/common/SyncTransactionQueue.java | 61 +- .../wm/shell/common/SystemWindows.java | 19 +- .../shell/common/TabletopModeController.java | 2 +- .../common/TaskStackListenerCallback.java | 3 - .../shell/common/TaskStackListenerImpl.java | 13 - .../com/android/wm/shell/common/pip/IPip.aidl | 6 +- .../shell/common/pip/LegacySizeSpecSource.kt | 10 +- .../pip/PhonePipKeepClearAlgorithm.java | 20 +- .../shell/common/pip/PhoneSizeSpecSource.kt | 10 +- .../wm/shell/common/pip/PipAppOpsListener.kt | 23 +- .../shell/common/pip/PipBoundsAlgorithm.java | 72 +- .../wm/shell/common/pip/PipBoundsState.java | 184 +- .../common/pip/PipDisplayLayoutState.java | 97 +- .../shell/common/pip/PipDoubleTapHelper.java | 50 +- .../wm/shell/common/pip/PipMediaController.kt | 7 - .../shell/common/pip/PipMenuController.java | 3 +- .../common/pip/PipPerfHintController.java | 2 +- .../android/wm/shell/common/pip/PipUtils.kt | 209 +- .../shell/common/split/DividerHandleView.java | 21 +- .../common/split/DividerRoundedCorner.java | 46 +- .../common/split/DividerSnapAlgorithm.java | 344 +- .../wm/shell/common/split/DividerView.java | 241 +- .../common/split/DockedDividerUtils.java | 10 +- .../shell/common/split/SplitDecorManager.java | 311 +- .../wm/shell/common/split/SplitLayout.java | 1087 +- .../shell/common/split/SplitScreenUtils.java | 104 +- .../common/split/SplitWindowManager.java | 21 +- .../wm/shell/compatui/CompatUIController.java | 222 +- .../wm/shell/compatui/CompatUILayout.java | 50 + .../compatui/CompatUIShellCommandHandler.java | 3 +- .../shell/compatui/CompatUIWindowManager.java | 159 +- .../CompatUIWindowManagerAbstract.java | 28 +- .../compatui/DialogAnimationController.java | 5 +- .../compatui/LetterboxEduWindowManager.java | 21 +- .../ReachabilityEduWindowManager.java | 6 +- .../compatui/RestartDialogWindowManager.java | 21 +- .../UserAspectRatioSettingsLayout.java | 2 - .../UserAspectRatioSettingsWindowManager.java | 55 +- .../wm/shell/dagger/TvWMShellModule.java | 20 +- .../wm/shell/dagger/WMShellBaseModule.java | 345 +- .../dagger/WMShellConcurrencyModule.java | 62 +- .../wm/shell/dagger/WMShellModule.java | 1555 +- .../wm/shell/dagger/pip/Pip1Module.java | 58 +- .../wm/shell/dagger/pip/Pip2Module.java | 204 +- .../wm/shell/dagger/pip/PipModule.java | 21 +- .../wm/shell/dagger/pip/TvPipModule.java | 18 +- .../wm/shell/desktopmode/DesktopMode.java | 17 +- .../desktopmode/DesktopModeEventLogger.kt | 631 +- .../DesktopModeLoggerTransitionObserver.kt | 408 +- .../DesktopModeShellCommandHandler.kt | 280 +- .../desktopmode/DesktopModeTransitionTypes.kt | 34 +- .../desktopmode/DesktopModeUiEventLogger.kt | 174 +- .../wm/shell/desktopmode/DesktopModeUtils.kt | 311 +- .../DesktopModeVisualIndicator.java | 716 +- .../desktopmode/DesktopTasksController.kt | 5103 +- .../shell/desktopmode/DesktopTasksLimiter.kt | 501 +- .../DesktopTasksTransitionObserver.kt | 218 +- .../desktopmode/DesktopWallpaperActivity.kt | 44 +- .../DragToDesktopTransitionHandler.kt | 1307 +- .../EnterDesktopTaskTransitionHandler.java | 38 +- .../ExitDesktopTaskTransitionHandler.java | 50 +- .../wm/shell/desktopmode/IDesktopMode.aidl | 68 +- .../desktopmode/IDesktopTaskListener.aidl | 50 +- .../com/android/wm/shell/desktopmode/OWNERS | 9 +- ...oggleResizeDesktopTaskTransitionHandler.kt | 63 +- .../src/com/android/wm/shell/docs/README.md | 3 - .../src/com/android/wm/shell/docs/changes.md | 8 +- .../src/com/android/wm/shell/docs/dagger.md | 67 +- .../com/android/wm/shell/docs/debugging.md | 133 +- .../com/android/wm/shell/docs/extending.md | 1 - .../src/com/android/wm/shell/docs/overview.md | 1 - .../src/com/android/wm/shell/docs/sysui.md | 14 +- .../src/com/android/wm/shell/docs/testing.md | 1 - .../com/android/wm/shell/docs/threading.md | 4 +- .../draganddrop/DragAndDropController.java | 136 +- .../wm/shell/draganddrop/DragLayout.java | 377 +- .../wm/shell/draganddrop/DragSession.java | 60 +- .../wm/shell/draganddrop/DragUtils.java | 66 +- .../wm/shell/draganddrop/DropZoneView.java | 69 +- .../shell/draganddrop/GlobalDragListener.kt | 2 +- .../wm/shell/freeform/FreeformComponents.java | 21 +- .../shell/freeform/FreeformTaskListener.java | 165 +- .../FreeformTaskTransitionHandler.java | 136 +- .../FreeformTaskTransitionObserver.java | 255 +- .../FreeformTaskTransitionStarter.java | 21 +- .../src/com/android/wm/shell/freeform/OWNERS | 8 +- .../fullscreen/FullscreenTaskListener.java | 72 +- .../keyguard/KeyguardTransitionHandler.java | 84 +- .../shell/keyguard/KeyguardTransitions.java | 7 - .../onehanded/BackgroundWindowManager.java | 3 +- .../shell/onehanded/OneHandedController.java | 8 +- .../OneHandedDisplayAreaOrganizer.java | 10 +- .../shell/performance/PerfHintController.kt | 12 +- .../pip/PinnedStackListenerForwarder.java | 16 + wmshell/src/com/android/wm/shell/pip/Pip.java | 24 +- .../wm/shell/pip/PipAnimationController.java | 242 +- .../pip/PipSurfaceTransactionHelper.java | 206 +- .../wm/shell/pip/PipTaskOrganizer.java | 434 +- .../android/wm/shell/pip/PipTransition.java | 219 +- .../wm/shell/pip/PipTransitionController.java | 168 +- .../pip/phone/PhonePipMenuController.java | 27 +- ...PipAccessibilityInteractionConnection.java | 10 +- .../wm/shell/pip/phone/PipController.java | 180 +- .../pip/phone/PipDismissTargetHandler.java | 6 +- .../wm/shell/pip/phone/PipInputConsumer.java | 2 +- .../wm/shell/pip/phone/PipMenuActionView.java | 5 - .../wm/shell/pip/phone/PipMenuView.java | 40 +- .../wm/shell/pip/phone/PipMotionHelper.java | 43 +- .../pip/phone/PipResizeGestureHandler.java | 218 +- .../wm/shell/pip/phone/PipTouchHandler.java | 13 +- .../wm/shell/pip/phone/PipTouchState.java | 2 +- .../src/com/android/wm/shell/pip/tv/OWNERS | 1 + .../wm/shell/pip/tv/TvPipActionsProvider.java | 2 +- .../wm/shell/pip/tv/TvPipBackgroundView.java | 2 +- .../wm/shell/pip/tv/TvPipBoundsAlgorithm.java | 2 +- .../shell/pip/tv/TvPipBoundsController.java | 2 +- .../wm/shell/pip/tv/TvPipController.java | 7 +- .../wm/shell/pip/tv/TvPipCustomAction.java | 2 +- .../wm/shell/pip/tv/TvPipMenuController.java | 17 +- .../shell/pip/tv/TvPipMenuEduTextDrawer.java | 2 +- .../wm/shell/pip/tv/TvPipMenuView.java | 2 +- .../pip/tv/TvPipNotificationController.java | 2 +- .../wm/shell/pip/tv/TvPipTaskOrganizer.java | 11 +- .../wm/shell/pip/tv/TvPipTransition.java | 20 +- .../pip2/PipSurfaceTransactionHelper.java | 206 +- .../pip2/animation/PipAlphaAnimator.java | 109 +- .../pip2/animation/PipResizeAnimator.java | 119 +- .../pip2/phone/PhonePipMenuController.java | 115 +- .../wm/shell/pip2/phone/PipController.java | 503 +- .../pip2/phone/PipDismissTargetHandler.java | 51 +- .../wm/shell/pip2/phone/PipInputConsumer.java | 23 +- .../shell/pip2/phone/PipMenuActionView.java | 5 - .../wm/shell/pip2/phone/PipMenuView.java | 50 +- .../wm/shell/pip2/phone/PipMotionHelper.java | 304 +- .../pip2/phone/PipResizeGestureHandler.java | 304 +- .../wm/shell/pip2/phone/PipScheduler.java | 427 +- .../wm/shell/pip2/phone/PipTouchHandler.java | 436 +- .../wm/shell/pip2/phone/PipTouchState.java | 12 +- .../wm/shell/pip2/phone/PipTransition.java | 1012 +- .../shell/pip2/phone/PipTransitionState.java | 203 +- .../wm/shell/protolog/ShellProtoLogGroup.java | 27 +- .../wm/shell/recents/IRecentTasks.aidl | 10 +- .../shell/recents/IRecentTasksListener.aidl | 15 +- .../android/wm/shell/recents/RecentTasks.java | 4 +- .../shell/recents/RecentTasksController.java | 746 +- .../recents/RecentsTransitionHandler.java | 917 +- .../RecentsTransitionStateListener.java | 42 +- .../recents/TaskStackTransitionObserver.kt | 270 +- .../wm/shell/splitscreen/ISplitScreen.aidl | 48 + .../splitscreen/ISplitSelectListener.aidl | 14 +- .../wm/shell/splitscreen/SplitScreen.java | 44 +- .../splitscreen/SplitScreenController.java | 553 +- .../SplitScreenShellCommandHandler.java | 17 +- .../splitscreen/SplitScreenTransitions.java | 74 +- .../splitscreen/SplitscreenEventLogger.java | 55 +- .../shell/splitscreen/StageCoordinator.java | 3347 +- .../shell/splitscreen/StageTaskListener.java | 334 +- .../android/wm/shell/splitscreen/tv/OWNERS | 1 + .../splitscreen/tv/TvSplitMenuController.java | 4 +- .../shell/splitscreen/tv/TvSplitMenuView.java | 6 +- .../tv/TvSplitScreenController.java | 35 +- .../splitscreen/tv/TvStageCoordinator.java | 20 +- .../SplashScreenExitAnimation.java | 3 +- .../SplashscreenContentDrawer.java | 45 +- .../SplashscreenWindowCreator.java | 19 +- .../StartingSurfaceDrawer.java | 13 +- .../StartingWindowController.java | 247 +- .../startingsurface/TaskSnapshotWindow.java | 52 +- .../WindowlessSnapshotWindowCreator.java | 24 +- .../WindowlessSplashWindowCreator.java | 20 +- .../PhoneStartingWindowTypeAlgorithm.java | 2 +- .../wm/shell/sysui/ShellCommandHandler.java | 6 +- .../wm/shell/sysui/ShellController.java | 107 +- .../com/android/wm/shell/sysui/ShellInit.java | 4 +- .../android/wm/shell/taskview/TaskView.java | 106 +- .../taskview/TaskViewFactoryController.java | 12 +- .../taskview/TaskViewTaskController.java | 479 +- .../shell/taskview/TaskViewTransitions.java | 846 +- .../transition/CounterRotatorHelper.java | 5 - .../shell/transition/DefaultMixedHandler.java | 276 +- .../transition/DefaultMixedTransition.java | 411 +- .../transition/DefaultTransitionHandler.java | 449 +- .../transition/HomeTransitionObserver.java | 111 +- .../transition/MixedTransitionHelper.java | 35 +- .../transition/OneShotRemoteHandler.java | 15 +- .../transition/RecentsMixedTransition.java | 69 +- .../transition/RemoteTransitionHandler.java | 16 +- .../transition/ScreenRotationAnimation.java | 155 +- .../transition/TransitionAnimationHelper.java | 250 +- .../wm/shell/transition/Transitions.java | 594 +- .../wm/shell/transition/WindowThumbnail.java | 5 +- .../tracing/PerfettoTransitionTracer.java | 13 +- .../unfold/UnfoldAnimationController.java | 2 +- .../shell/unfold/UnfoldTransitionHandler.java | 151 +- .../FullscreenUnfoldTaskAnimator.java | 3 +- .../animation/SplitTaskUnfoldAnimator.java | 12 +- .../CaptionWindowDecorViewModel.java | 214 +- .../windowdecor/CaptionWindowDecoration.java | 239 +- .../DesktopModeWindowDecorViewModel.java | 1773 +- .../DesktopModeWindowDecoration.java | 1694 +- .../wm/shell/windowdecor/DragDetector.java | 119 +- .../windowdecor/DragPositioningCallback.java | 11 +- .../DragPositioningCallbackUtility.java | 180 +- .../windowdecor/DragResizeInputListener.java | 399 +- .../windowdecor/DragResizeWindowGeometry.java | 162 +- .../FluidResizeTaskPositioner.java | 59 +- .../wm/shell/windowdecor/HandleImageButton.kt | 41 +- .../wm/shell/windowdecor/HandleMenu.java | 2 +- .../shell/windowdecor/HandleMenuAnimator.kt | 111 +- .../windowdecor/HandleMenuImageButton.kt | 7 +- .../shell/windowdecor/MaximizeButtonView.kt | 65 +- .../wm/shell/windowdecor/MaximizeMenu.kt | 866 +- .../windowdecor/MoveToDesktopAnimator.kt | 20 +- .../com/android/wm/shell/windowdecor/OWNERS | 3 +- .../wm/shell/windowdecor/ResizeVeil.kt | 160 +- .../wm/shell/windowdecor/TaskDragResizer.java | 23 +- .../windowdecor/TaskFocusStateConsumer.java | 2 +- .../wm/shell/windowdecor/TaskOperations.java | 39 +- .../VeiledResizeTaskPositioner.java | 111 +- .../windowdecor/WindowDecorViewModel.java | 3 +- .../shell/windowdecor/WindowDecoration.java | 725 +- .../AdditionalSystemViewContainer.kt | 114 +- .../wm/shell/windowdecor/common/ThemeUtils.kt | 4 - .../shell/windowdecor/extension/TaskInfo.kt | 19 - .../viewholder/AppHandleViewHolder.kt | 284 +- .../viewholder/AppHeaderViewHolder.kt | 687 +- .../viewholder/WindowDecorationViewHolder.kt | 28 +- wmshell/tests/OWNERS | 12 +- wmshell/tests/flicker/Android.bp | 20 +- wmshell/tests/flicker/appcompat/Android.bp | 74 +- .../flicker/appcompat/AndroidTestTemplate.xml | 8 - .../appcompat/OpenAppInSizeCompatModeTest.kt | 2 +- .../appcompat/OpenTransparentActivityTest.kt | 7 +- .../QuickSwitchLauncherToLetterboxAppTest.kt | 6 +- .../RepositionFixedPortraitAppTest.kt | 7 +- .../RestartAppInSizeCompatModeTest.kt | 2 +- .../RotateImmersiveAppInFullscreenTest.kt | 2 +- wmshell/tests/flicker/bubble/Android.bp | 55 - .../flicker/bubble/AndroidTestTemplate.xml | 10 - .../OpenActivityFromBubbleOnLocksreenTest.kt | 6 +- wmshell/tests/flicker/pip/Android.bp | 330 +- .../tests/flicker/pip/AndroidTestTemplate.xml | 15 - .../flicker/pip/csuiteDefaultTemplate.xml | 6 - .../flicker/pip/AutoEnterPipOnGoToHomeTest.kt | 47 +- .../pip/AutoEnterPipWithSourceRectHintTest.kt | 8 +- .../flicker/pip/ClosePipBySwipingDownTest.kt | 7 +- .../pip/ClosePipWithDismissButtonTest.kt | 8 +- .../pip/EnterPipOnUserLeaveHintTest.kt | 8 +- .../flicker/pip/EnterPipToOtherOrientation.kt | 76 +- .../flicker/pip/EnterPipViaAppUiButtonTest.kt | 8 +- .../pip/ExitPipToAppViaExpandButtonTest.kt | 10 +- .../flicker/pip/ExitPipToAppViaIntentTest.kt | 10 +- .../flicker/pip/ExpandPipOnDoubleClickTest.kt | 5 +- .../flicker/pip/ExpandPipOnPinchOpenTest.kt | 3 - ...omSplitScreenAutoEnterPipOnGoToHomeTest.kt | 10 +- ...mSplitScreenEnterPipOnUserLeaveHintTest.kt | 19 +- .../pip/MovePipDownOnShelfHeightChange.kt | 7 +- .../pip/MovePipOnImeVisibilityChangeTest.kt | 3 - .../pip/MovePipUpOnShelfHeightChangeTest.kt | 10 +- .../flicker/pip/PipAspectRatioChangeTest.kt | 8 +- .../wm/shell/flicker/pip/PipDragTest.kt | 6 +- .../shell/flicker/pip/PipDragThenSnapTest.kt | 17 +- .../wm/shell/flicker/pip/PipPinchInTest.kt | 8 +- .../pip/SetRequestedOrientationWhilePinned.kt | 39 +- .../flicker/pip/ShowPipAndRotateDisplay.kt | 5 +- .../pip/apps/AppsEnterPipTransition.kt | 35 +- .../flicker/pip/apps/MapsEnterPipTest.kt | 37 +- .../flicker/pip/apps/NetflixEnterPipTest.kt | 16 +- .../flicker/pip/apps/YouTubeEnterPipTest.kt | 12 +- .../YouTubeEnterPipToOtherOrientationTest.kt | 18 +- .../flicker/pip/common/ClosePipTransition.kt | 5 - .../flicker/pip/common/EnterPipTransition.kt | 8 +- .../pip/common/ExitPipToAppTransition.kt | 7 - .../shell/flicker/pip/common/PipTransition.kt | 23 +- .../wm/shell/flicker/pip/tv/TvPipBasicTest.kt | 2 +- .../wm/shell/flicker/pip/tv/TvPipMenuTests.kt | 2 +- .../CloseAllAppsWithAppHeaderExit.kt | 2 +- .../scenarios/EnterDesktopWithDrag.kt | 2 +- .../scenarios/ResizeAppWithCornerResize.kt | 2 +- .../wm/shell/flicker/BaseBenchmarkTest.kt | 6 - .../shell/flicker/utils/CommonAssertions.kt | 56 +- .../wm/shell/flicker/utils/CommonConstants.kt | 1 - .../shell/flicker/utils/ICommonAssertions.kt | 14 +- .../shell/flicker/utils/SplitScreenUtils.kt | 83 +- wmshell/tests/unittest/Android.bp | 48 +- wmshell/tests/unittest/AndroidTest.xml | 2 - wmshell/tests/unittest/res/values/dimen.xml | 2 - .../wm/shell/ShellTaskOrganizerTests.java | 403 +- .../com/android/wm/shell/ShellTestCase.java | 32 +- .../wm/shell/TestRunningTaskInfoBuilder.java | 87 +- .../android/wm/shell/TestShellExecutor.java | 6 - ...ActivityEmbeddingAnimationRunnerTests.java | 158 +- .../ActivityEmbeddingAnimationTestBase.java | 22 +- .../ActivityEmbeddingControllerTests.java | 47 +- .../back/BackAnimationControllerTest.java | 376 +- .../shell/back/BackProgressAnimatorTest.java | 34 +- .../CustomCrossActivityBackAnimationTest.kt | 8 +- .../shell/bubbles/BubbleDataRepositoryTest.kt | 4 +- .../wm/shell/bubbles/BubbleDataTest.java | 208 +- .../android/wm/shell/bubbles/BubbleTest.java | 175 +- .../wm/shell/bubbles/BubbleViewInfoTest.kt | 56 +- .../BubblesNavBarMotionEventHandlerTest.java | 13 +- .../ExpandedAnimationControllerTest.java | 1 - .../bubbles/bar/BubbleBarHandleViewTest.java | 34 +- .../common/DevicePostureControllerTest.java | 7 +- .../common/DisplayChangeControllerTests.java | 103 +- .../shell/common/DisplayControllerTests.java | 224 +- .../common/DisplayImeControllerTest.java | 66 +- .../common/DisplayInsetsControllerTest.java | 30 +- .../wm/shell/common/DisplayLayoutTest.java | 36 - .../shell/common/MultiInstanceHelperTest.kt | 77 +- .../common/TabletopModeControllerTest.java | 4 +- .../shell/common/split/DividerViewTest.java | 33 +- .../shell/common/split/SplitLayoutTests.java | 39 +- .../common/split/SplitWindowManagerTests.java | 6 +- .../compatui/CompatUIControllerTest.java | 308 +- .../wm/shell/compatui/CompatUILayoutTest.java | 109 +- .../compatui/CompatUIWindowManagerTest.java | 191 +- .../LetterboxEduDialogLayoutTest.java | 8 - .../LetterboxEduWindowManagerTest.java | 103 +- .../compatui/ReachabilityEduLayoutTest.java | 7 - .../ReachabilityEduWindowManagerTest.java | 6 - .../compatui/RestartDialogLayoutTest.java | 13 +- .../RestartDialogWindowManagerTest.java | 5 - .../UserAspectRatioSettingsLayoutTest.java | 17 +- ...rAspectRatioSettingsWindowManagerTest.java | 24 +- .../desktopmode/DesktopModeEventLoggerTest.kt | 838 +- ...DesktopModeLoggerTransitionObserverTest.kt | 1452 +- .../DesktopModeTransitionTypesTest.kt | 21 +- .../DesktopModeUiEventLoggerTest.kt | 38 +- .../DesktopModeVisualIndicatorTest.kt | 602 +- .../desktopmode/DesktopTasksControllerTest.kt | 12602 +-- .../desktopmode/DesktopTasksLimiterTest.kt | 917 +- .../shell/desktopmode/DesktopTestHelpers.kt | 141 +- .../DragToDesktopTransitionHandlerTest.kt | 1148 +- .../ExitDesktopTaskTransitionHandlerTest.java | 48 +- .../DragAndDropControllerTest.java | 47 +- .../draganddrop/GlobalDragListenerTest.kt | 6 +- .../freeform/FreeformTaskListenerTests.java | 307 +- .../FreeformTaskTransitionObserverTest.java | 416 +- .../onehanded/OneHandedControllerTest.java | 3 +- .../OneHandedDisplayAreaOrganizerTest.java | 9 +- .../shell/pip/PipAnimationControllerTest.java | 189 +- .../wm/shell/pip/PipTaskOrganizerTest.java | 61 +- .../wm/shell/pip/phone/PipControllerTest.java | 53 +- .../phone/PipResizeGestureHandlerTest.java | 19 +- .../shell/pip/phone/PipTouchHandlerTest.java | 20 +- .../src/com/android/wm/shell/pip/tv/OWNERS | 3 +- .../wm/shell/pip/tv/TvPipGravityTest.java | 19 +- .../recents/RecentTasksControllerTest.java | 677 +- .../wm/shell/recents/SplitBoundsTest.java | 59 +- .../TaskStackTransitionObserverTest.kt | 609 +- .../shared/animation/PhysicsAnimatorTest.kt | 43 - .../SplitScreenControllerTests.java | 130 +- .../wm/shell/splitscreen/SplitTestUtils.java | 64 +- .../splitscreen/SplitTransitionTests.java | 158 +- .../splitscreen/StageCoordinatorTests.java | 409 +- .../splitscreen/StageTaskListenerTests.java | 142 +- .../StartingSurfaceDrawerTests.java | 33 +- .../StartingWindowControllerTests.java | 91 +- .../wm/shell/sysui/ShellControllerTest.java | 97 +- .../wm/shell/taskview/TaskViewTest.java | 428 +- .../taskview/TaskViewTransitionsTest.java | 271 +- .../HomeTransitionObserverTest.java | 185 +- .../transition/ShellTransitionTests.java | 268 +- .../unfold/UnfoldAnimationControllerTest.java | 2 +- .../unfold/UnfoldTransitionHandlerTest.java | 118 +- .../DesktopModeWindowDecorViewModelTests.kt | 1735 +- .../DesktopModeWindowDecorationTests.java | 1823 +- .../wm/shell/windowdecor/DragDetectorTest.kt | 308 +- .../DragPositioningCallbackUtilityTest.kt | 511 +- .../DragResizeWindowGeometryTests.java | 164 +- .../FluidResizeTaskPositionerTest.kt | 87 +- .../wm/shell/windowdecor/HandleMenuTest.kt | 253 +- .../wm/shell/windowdecor/ResizeVeilTest.kt | 62 +- .../VeiledResizeTaskPositionerTest.kt | 99 +- .../windowdecor/WindowDecorationTests.java | 831 +- .../AdditionalSystemViewContainerTest.kt | 18 +- 1818 files changed, 104955 insertions(+), 147858 deletions(-) create mode 100644 systemUI/anim/.gitignore create mode 100644 systemUI/anim/Android.bp create mode 100644 systemUI/anim/AndroidManifest.xml create mode 100644 systemUI/anim/build.gradle create mode 100644 systemUI/anim/lib/Android.bp create mode 100644 systemUI/anim/lib/OWNERS create mode 100644 systemUI/anim/lib/src/com/android/systemui/animation/OriginRemoteTransition.java create mode 100644 systemUI/anim/lib/src/com/android/systemui/animation/OriginTransitionSession.java create mode 100644 systemUI/anim/lib/src/com/android/systemui/animation/SurfaceUIComponent.java create mode 100644 systemUI/anim/lib/src/com/android/systemui/animation/Transactions.java create mode 100644 systemUI/anim/lib/src/com/android/systemui/animation/UIComponent.java create mode 100644 systemUI/anim/lib/src/com/android/systemui/animation/ViewUIComponent.java create mode 100644 systemUI/anim/lib/src/com/android/systemui/animation/server/IOriginTransitionsImpl.java create mode 100644 systemUI/anim/lib/src/com/android/systemui/animation/shared/IOriginTransitions.aidl create mode 100644 systemUI/anim/lib/tests/Android.bp create mode 100644 systemUI/anim/lib/tests/AndroidManifest.xml create mode 100644 systemUI/anim/lib/tests/AndroidTest.xml create mode 100644 systemUI/anim/lib/tests/src/com/android/systemui/animation/OriginTransitionSessionTest.java create mode 100644 systemUI/anim/res/anim/launch_dialog_enter.xml create mode 100644 systemUI/anim/res/anim/launch_dialog_exit.xml create mode 100644 systemUI/anim/res/values/ids.xml create mode 100644 systemUI/anim/res/values/styles.xml create mode 100644 systemUI/anim/src/com/android/systemui/animation/ActivityTransitionAnimator.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/AnimationFeatureFlags.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/ComposableControllerFactory.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/DelegateTransitionAnimatorController.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/DialogTransitionAnimator.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/Expandable.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/FontInterpolator.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/FontVariationUtils.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/GSFAxes.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/GhostedViewTransitionAnimatorController.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/IViewTransitionRegistry.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/LaunchableView.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/RemoteAnimationDelegate.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/RemoteAnimationRunnerCompat.java create mode 100644 systemUI/anim/src/com/android/systemui/animation/RemoteAnimationTargetCompat.java create mode 100644 systemUI/anim/src/com/android/systemui/animation/ShadeInterpolation.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/TextAnimator.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/TextInterpolator.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/TransitionAnimator.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/ViewDialogTransitionAnimatorController.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/ViewHierarchyAnimator.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/ViewRootSync.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/ViewTransitionRegistry.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/ViewTransitionToken.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/back/BackAnimationSpec.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/back/BackAnimationSpecForSysUi.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/back/BackTransformation.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/back/BottomsheetBackAnimationSpec.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/back/FlingOnBackAnimationCallback.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/back/OnBackAnimationCallbackExtension.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/view/LaunchableFrameLayout.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/view/LaunchableImageView.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/view/LaunchableLinearLayout.kt create mode 100644 systemUI/anim/src/com/android/systemui/animation/view/LaunchableTextView.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/PaintDrawCallback.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/RenderEffectDrawCallback.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxConfig.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxEffect.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxShader.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/loadingeffect/LoadingEffect.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/loadingeffect/LoadingEffectView.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/MultiRippleController.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/MultiRippleView.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleAnimation.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleAnimationConfig.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleShader.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleView.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/shaders/SolidColorShader.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/shaders/SparkleShader.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/shaderutil/SdfShaderLibrary.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/shaderutil/ShaderUtilLibrary.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseAnimationConfig.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseController.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseShader.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseView.kt create mode 100644 systemUI/anim/src/com/android/systemui/surfaceeffects/utils/MathUtils.kt create mode 100644 systemUI/anim/src/com/android/systemui/util/AnimatorExtensions.kt create mode 100644 systemUI/anim/src/com/android/systemui/util/Dialog.kt create mode 100644 systemUI/anim/src/com/android/systemui/util/Dimension.kt delete mode 100644 wmshell/multivalentTestsForDevice create mode 100644 wmshell/multivalentTestsForDevice/Android.bp create mode 100644 wmshell/multivalentTestsForDevice/AndroidManifest.xml create mode 100644 wmshell/multivalentTestsForDevice/AndroidManifestRobolectric.xml create mode 100644 wmshell/multivalentTestsForDevice/AndroidTest.xml create mode 100644 wmshell/multivalentTestsForDevice/OWNERS create mode 100644 wmshell/multivalentTestsForDevice/robolectric/config/robolectric.properties create mode 100644 wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt create mode 100644 wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt create mode 100644 wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt create mode 100644 wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt delete mode 100644 wmshell/multivalentTestsForDeviceless create mode 100644 wmshell/multivalentTestsForDeviceless/Android.bp create mode 100644 wmshell/multivalentTestsForDeviceless/AndroidManifest.xml create mode 100644 wmshell/multivalentTestsForDeviceless/AndroidManifestRobolectric.xml create mode 100644 wmshell/multivalentTestsForDeviceless/AndroidTest.xml create mode 100644 wmshell/multivalentTestsForDeviceless/OWNERS create mode 100644 wmshell/multivalentTestsForDeviceless/robolectric/config/robolectric.properties create mode 100644 wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt create mode 100644 wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt create mode 100644 wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt create mode 100644 wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 51645b7e00..b96635cd73 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -6,4 +6,37 @@ labels: [ 'dependencies', ], + packageRules: [ + { + groupName: 'Kotlin and KSP', + matchPackageNames: [ + 'com.google.devtools.ksp{/,}**', + '/org.jetbrains.kotlin.*/' + ], + }, + { + groupName: 'AGP', + matchPackageNames: [ + '/com.android.*/', + ], + }, + { + groupName: 'dev.rikka.tools.refine', + matchPackageNames: [ + 'dev.rikka.tools.refine{/,}**', + ], + }, + { + groupName: 'androidx.lifecycle', + matchPackageNames: [ + '/androidx.lifecycle:*/', + ], + }, + { + groupName: 'Dagger', + matchPackageNames: [ + 'com.google.dagger{/,}**', + ], + }, + ], } diff --git a/.github/workflows/build_release_apk.yml b/.github/workflows/build_release_apk.yml index b3696d91c2..9f82156fe5 100644 --- a/.github/workflows/build_release_apk.yml +++ b/.github/workflows/build_release_apk.yml @@ -31,7 +31,7 @@ jobs: - name: Build release APK run: ./gradlew assembleLawnWithQuickstepGithubRelease bundleLawnWithQuickstepPlayRelease - name: Upload artifact - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v4 with: name: Release APK path: build/outputs/* diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9d1e68eb1c..e72693e0d4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,11 +51,11 @@ jobs: echo storeFile='${{ github.workspace }}/key.jks' >> keystore.properties echo ${{ secrets.KEYSTORE }} | base64 --decode > ${{ github.workspace }}/key.jks fi - # Release variant is disabled due to build conflict | assembleLawnWithQuickstepNightlyRelease + # pE-TODO(KLuQ83eJ): This fail CI, Kotlin daemon is unresponsive in GitHub CI for no reason. - name: Build debug APK run: ./gradlew assembleLawnWithQuickstepGithubDebug assembleLawnWithQuickstepPlayDebug --no-configuration-cache - name: Upload artifact - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v4 with: name: Debug APK path: build/outputs/apk/**/*.apk @@ -90,7 +90,7 @@ jobs: python -m pip install --upgrade pip pip install gitpython requests - name: Download artifact - uses: actions/download-artifact@v6 + uses: actions/download-artifact@v5 with: name: Debug APK path: artifacts/debug-apk @@ -119,14 +119,13 @@ jobs: nightly-release: runs-on: ubuntu-latest - if: false - # if: github.repository_owner == 'LawnchairLauncher' && github.event_name == 'push' && github.ref == 'refs/heads/15-dev' + if: github.repository_owner == 'LawnchairLauncher' && github.event_name == 'push' && github.ref == 'refs/heads/15-dev' needs: build-debug-apk permissions: contents: write steps: - uses: actions/checkout@v5 - - uses: actions/download-artifact@v6 + - uses: actions/download-artifact@v5 with: name: Debug APK # Note the # and () symbols are not supported in GitHub Release filenames, even manually diff --git a/.github/workflows/release_update.yml b/.github/workflows/release_update.yml index 6f24e75756..c9bf43e556 100644 --- a/.github/workflows/release_update.yml +++ b/.github/workflows/release_update.yml @@ -55,7 +55,7 @@ jobs: with: subject-path: ${{ github.event.inputs.artifactName }} - name: Upload artifact - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v4 with: name: Release APK path: ${{ github.event.inputs.artifactName }} @@ -68,7 +68,7 @@ jobs: steps: - uses: actions/checkout@v5 - name: Download artifact - uses: actions/download-artifact@v6 + uses: actions/download-artifact@v5 with: name: Release APK path: artifacts/release-apk @@ -88,7 +88,7 @@ jobs: steps: - uses: actions/checkout@v5 - name: Download artifact - uses: actions/download-artifact@v6 + uses: actions/download-artifact@v5 with: name: Release APK path: artifacts/release-apk diff --git a/.gitmodules b/.gitmodules index 4cdffc19cd..d92d339139 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,4 +1,4 @@ [submodule "platform_frameworks_libs_systemui"] path = platform_frameworks_libs_systemui url = https://github.com/BoringExperiments/platform_frameworks_libs_systemui - branch = 16-dev-qpr1 + branch = 16-dev diff --git a/Android.bp b/Android.bp index 07db82b10e..2c4fb37908 100644 --- a/Android.bp +++ b/Android.bp @@ -47,8 +47,8 @@ filegroup { filegroup { name: "launcher-compose-enabled-src", srcs: [ - "compose/facade/enabled/**/*.kt", - "compose/facade/core/**/*.kt", + "compose/facade/enabled/*.kt", + "compose/facade/core/*.kt", "compose/features/**/*.kt", ], } @@ -56,36 +56,8 @@ filegroup { filegroup { name: "launcher-compose-disabled-src", srcs: [ - "compose/facade/core/**/*.kt", - "compose/facade/disabled/**/*.kt", - ], -} - -filegroup { - name: "launcher-compose-test-helpers-src", - srcs: [ - "compose/tests/com/android/launcher3/helper/TestHelper.kt", - ], -} - -filegroup { - name: "launcher-compose-ui-tests-src", - srcs: [], // Placeholder for compose/tests/com/android/launcher3/ui/.. tests. -} - -// Tests for features that are enabled only when compose dependency is enabled & run as part of -// Launcher3Tests -filegroup { - name: "launcher-compose-unit-tests-src", - srcs: [ - "compose/tests/com/android/launcher3/widget/AddWidgetConfigTest.kt", - ], -} - -filegroup { - name: "launcher-compose-tests-src", - srcs: [ - "compose/tests/**/*.kt", + "compose/facade/core/*.kt", + "compose/facade/disabled/*.kt", ], } @@ -101,13 +73,6 @@ filegroup { ], } -filegroup { - name: "quickstep-compose-tests-src", - srcs: [ - "quickstep/compose/tests/**/*.kt", - ], -} - // Launcher ProtoLog support filegroup { name: "launcher-quickstep-unprocessed-protolog-src", @@ -157,6 +122,7 @@ java_genrule { "--protolog-class com.android.internal.protolog.common.ProtoLog " + "--loggroups-class com.android.quickstep.util.QuickstepProtoLogGroup " + "--loggroups-jar $(location :launcher-quickstep_protolog-groups) " + + "--viewer-config-type proto " + "--viewer-config $(out) " + "$(locations :launcher-quickstep-unprocessed-protolog-src)", out: ["launcher.quickstep.protolog.pb"], @@ -219,10 +185,6 @@ filegroup { srcs: ["proguard.flags"], } -soong_config_bool_variable { - name: "release_enable_compose_in_launcher", -} - // Opt-in configuration for Launcher3 code depending on Jetpack Compose. soong_config_module_type { name: "launcher_compose_java_defaults", @@ -235,6 +197,32 @@ soong_config_module_type { ], } +// Opt-in configuration for Launcher Quickstep code depending on Jetpack Compose. +soong_config_bool_variable { + name: "release_enable_compose_in_launcher", +} + +soong_config_module_type { + name: "quickstep_compose_java_defaults", + module_type: "java_defaults", + config_namespace: "ANDROID", + bool_variables: ["release_enable_compose_in_launcher"], + properties: [ + "srcs", + "static_libs", + ], +} + +soong_config_module_type { + name: "launcher_compose_tests_java_defaults", + module_type: "java_defaults", + config_namespace: "ANDROID", + bool_variables: ["release_enable_compose_in_launcher"], + properties: [ + "static_libs", + ], +} + launcher_compose_java_defaults { name: "launcher_compose_defaults", soong_config_variables: { @@ -243,13 +231,10 @@ launcher_compose_java_defaults { ":launcher-compose-enabled-src", ], + // Compose dependencies static_libs: [ - "widget_picker_component", - // Compose dependencies "androidx.compose.runtime_runtime", "androidx.compose.material3_material3", - "androidx.compose.ui_ui-tooling-preview", - "androidx.compose.ui_ui-tooling", ], // By default, Compose is disabled and we compile the ComposeFacade @@ -264,53 +249,6 @@ launcher_compose_java_defaults { }, } -soong_config_module_type { - name: "launcher_compose_tests_java_defaults", - module_type: "java_defaults", - config_namespace: "ANDROID", - bool_variables: ["release_enable_compose_in_launcher"], - properties: [ - "srcs", - "static_libs", - ], -} - -launcher_compose_tests_java_defaults { - name: "launcher_compose_tests_defaults", - soong_config_variables: { - release_enable_compose_in_launcher: { - srcs: [ - ":launcher-compose-test-helpers-src", - ":launcher-compose-unit-tests-src", - ], - // Compose dependencies - static_libs: [ - "widget_picker_component", - "androidx.compose.runtime_runtime", - "androidx.compose.ui_ui-test-junit4", - "androidx.compose.ui_ui-test-manifest", - ], - - conditions_default: { - srcs: [], - static_libs: [], - }, - }, - }, -} - -// Opt-in configuration for Launcher Quickstep code depending on Jetpack Compose. -soong_config_module_type { - name: "quickstep_compose_java_defaults", - module_type: "java_defaults", - config_namespace: "ANDROID", - bool_variables: ["release_enable_compose_in_launcher"], - properties: [ - "srcs", - "static_libs", - ], -} - quickstep_compose_java_defaults { name: "quickstep_compose_defaults", soong_config_variables: { @@ -323,8 +261,6 @@ quickstep_compose_java_defaults { static_libs: [ "androidx.compose.runtime_runtime", "androidx.compose.material3_material3", - "androidx.compose.ui_ui-tooling-preview", - "androidx.compose.ui_ui-tooling", ], // By default, Compose is disabled and we compile the ComposeFacade @@ -339,6 +275,24 @@ quickstep_compose_java_defaults { }, } +launcher_compose_tests_java_defaults { + name: "launcher_compose_tests_defaults", + soong_config_variables: { + release_enable_compose_in_launcher: { + // Compose dependencies + static_libs: [ + "androidx.compose.runtime_runtime", + "androidx.compose.ui_ui-test-junit4", + "androidx.compose.ui_ui-test-manifest", + ], + + conditions_default: { + static_libs: [], + }, + }, + }, +} + android_library { name: "launcher-aosp-tapl", libs: [ @@ -358,8 +312,6 @@ android_library { srcs: [ "tests/tapl/**/*.java", "tests/tapl/**/*.kt", - "tests/src_tapl_build_config/**/*.java", - "tests/src_tapl_build_config/**/*.kt", ], resource_dirs: [], manifest: "tests/tapl/AndroidManifest.xml", @@ -415,6 +367,9 @@ java_library { // Library with all the dependencies for building Launcher3 android_library { name: "Launcher3ResLib", + defaults: [ + "launcher_compose_defaults", + ], srcs: [], resource_dirs: ["res"], static_libs: [ @@ -433,7 +388,6 @@ android_library { "//frameworks/libs/systemui:view_capture", "//frameworks/libs/systemui:animationlib", "//frameworks/libs/systemui:contextualeducationlib", - "//frameworks/libs/systemui:mechanics", "//frameworks/libs/systemui:msdl", "SystemUI-statsd", "WindowManager-Shell-shared-AOSP", @@ -448,9 +402,6 @@ android_library { "dagger2", "jsr330", "com_android_systemui_shared_flags_lib", - "launcher-dagger-qualifiers", - "launcher-executor-qualifiers", - "launcher-executors-module", ], manifest: "AndroidManifest-common.xml", sdk_version: "current", @@ -468,10 +419,7 @@ android_library { // android_app { name: "Launcher3", - defaults: [ - "launcher-non-platform-apis-defaults", - "launcher_compose_defaults", - ], + defaults: ["launcher-non-platform-apis-defaults"], static_libs: [ "Launcher3ResLib", @@ -533,7 +481,6 @@ android_library { "SettingsLibSettingsTheme", "dagger2", "protolog-group", - "displaylib", ], manifest: "quickstep/AndroidManifest.xml", min_sdk_version: "current", diff --git a/AndroidManifest-common.xml b/AndroidManifest-common.xml index efaca3a83b..da43ea0bc6 100644 --- a/AndroidManifest-common.xml +++ b/AndroidManifest-common.xml @@ -65,14 +65,9 @@ android:protectionLevel="signatureOrSystem" android:label="@string/permlab_write_settings" android:description="@string/permdesc_write_settings"/> - - - + - - - - - - - - - diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a4c7e9cea6..49466708e8 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -61,12 +61,10 @@ Here are some contribution tips to help you get started: ### Additional documentation - [Lawnchair roadmap](ROADMAP.md) -- [Lawnchair verification](VERIFICATION.md) - [The Lawnchair Wiki](https://github.com/LawnchairLauncher/lawnchair/wiki) - [Lawnchair Visual Guidelines](/docs/assets/README.md) - [Lawnchair Quickstep Compat Library](compatLib/README.md) - [Lawnchair Preferences Components](lawnchair/src/app/lawnchair/ui/preferences/components/README.md) -- [Lawnchair Platform Frameworks Library SystemUI](platform_frameworks_libs_systemui/README.md) - [SystemUI Module](systemUI/README.md) - [ViewCapture](systemUI/viewcapture/README.md) - [Common](systemUI/common/README.md) @@ -94,7 +92,8 @@ We follow the **[Conventional Commits specification][conventional-commits]**. ### Versioning scheme -Lawnchair’s version code is composed of five parts, separated by underscores: +As of Lawnchair 15 Beta 1, Lawnchair’s version code is composed of five parts, separated by +underscores:

@@ -108,7 +107,7 @@ Lawnchair’s version code is composed of five parts, separated by underscores: 2. Android minor version 3. Lawnchair development stage 4. Lawnchair development version -5. Revision/Release number +5. Release number #### Lawnchair development stage @@ -141,7 +140,7 @@ Strings `names` in `strings.xml` should follow this format: Lawnchair uses a locally stored JSON file (`google_fonts.json`) to list available fonts from Google Fonts. This file should be updated periodically or before release to include the latest fonts. -To update Lawnchair’s font listing, follow these steps: +To update Lawnchair's font listing, follow these steps: 1. Get a [Google Fonts Developer API key][google-fonts-api-key]. @@ -152,7 +151,7 @@ To update Lawnchair’s font listing, follow these steps: #### Writing or updating Lawnchair documentation -Lawnchair’s documentations are written in Markdown and follow a style guides from +Lawnchair's documentations are written in Markdown and follow a style guides from [Google developer documentation style guide](https://developers.google.com/style). diff --git a/GITHUB_CHANGELOG.md b/GITHUB_CHANGELOG.md index cec7c6e94e..1c9fa724f0 100644 --- a/GITHUB_CHANGELOG.md +++ b/GITHUB_CHANGELOG.md @@ -1,185 +1,17 @@ -# Bubble Tea - -## Bubble Tea [QPR1] - -### 🏗️ Snapshot 10 (Development 4 Release 1) - -Bug fixes only - -Build: BS10.2111 (latest), BS10.2011 - -This is a developer-focused change log: -* Fix a lot of internal basic functionality -* Re-added some Lawnchair-specific code -* Fix workspace navigation -* Fix allapps navigation - -### 🥞 Snapshot 9 (Development 4 Release 1) - -This snapshot marks the first time Bubble Tea QPR1 is able to assemble the APK without errors, -all that's left is bug bash testing. Limited visibility closed testing is available. - -Build: BS9.2011 - -This is a developer-focused change log: -* Re-added searchuilib -* SearchUiLib updated to latest commits before being private -* Exclude disabled variant of Compose launcher3 features -* Fix all errors in Lawnchair side - -### Snapshot 8 (Development 4 Release 1) - -Build: BS8.1811 - -This snapshot marks the first time Bubble Tea QPR1 is able to compile ALL of the Launcher3 code -without errors, that leaves Lawnchair code as the remaining task before successfully compiling -Bubble Tea QPR1 - -This is a developer-focused change log: -* Migrate some functions to new changes -* WM-Shell (and WM-Shell Shared) updated to Android 16-0.0_r3 (Android 16.0.0 Release 3) -* Add Mechanics (SystemUI Platform Library) -* Some unresolved reference in Lawnchair code - -### Snapshot 7 (Development 4 Release 1) - -Build: BS7.1711 - -This snapshot marks the first time Bubble Tea QPR1 is able to pass KSP build stage without any -hiccups, the next 1 or 2 snapshots will be focusing on compilation stage, which should be the last -stage before we can get started on pE Development 4. - -This is a developer-focused change log: -* Codebase updated to Android 16-0.0_r3 (Android 16.0.0 Release 3) -* Prebuilt updated to Android 16-0.0_r3 (Android 16.0.0 Release 3) -* Platform libs updated to Android 16-0.0_r3 (Android 16.0.0 Release 3) - * Move ViewCapture to platform lib - * Add Displaylib -* Flags updated to Android 16-0.0_r3 (Android 16.0.0 Release 3) -* Pull concurrent, dagger (the launcher3) as module - * TODO? We might need to migrate it to build source like compose instead -* Lots of prebuilt documentations update -* Add compose as part of launcher3 build source - * Removed test because I hate configuration gradle - * cc: @validcube fix me, cc: too bad - -## Bubble Tea [r2] - -Lawnchair 16 pE Development 3 is here! Contributors are encouraged to target this branch instead of +Lawnchair 16 pE Development 1 is here! Contributors are encouraged to target this branch instead of older (i.e., Lawnchair `15-dev`). -### 🥞 Development 3 - -Build: BD3.1711 - -The biggest change log ever, this marked the end of Bubble Tea [r2] branch as future development -switched to Bubble Tea [QPR1]. See you at Snapshot 7 or Development 4! - -(Again) Originally going to launch D3 if most of the issue on tracker have been resolved, but hit a -stability milestone instead. - -This release includes 4 new features, and 33 bug fixes, -Reimplemented some of Lawnchair features, better sizing of home screen, updated README.md screenshot -and the inclusion of Bubble Tea project into the official Lawnchair repository as 16-dev! - -This release have been tested with: -* ☁️ Pixel 6 (Android 12.0) -* 📱 Nothing (3a)-series (Android 15, Android 16.0) -* 📱 Vivo Y21 (Android 12.0) -* 📱 HTC Wildfire E3 lite (Android 12.0) -* Many more! Unfortunately I only count build from pE Open testing! +### 🏗️ Development 2 (Draft) Compatibility list: -| 🏗️ Crash | 💫 Limited features | 🥞 Fully supported | -|-------------|---------------------|--------------------| -| Android 8.1 | | Android 12.0 | -| Android 9 | | Android 12.1 | -| Android 10 | | Android 13 | -| Android 11 | | Android 14 | -| | | Android 15 | -| | | Android 16 | - -> [!NOTE] -> QuickSwitch compatibility have not been tested at any time during the development of Bubble Tea! - -#### Features -* [Lawnchair] Complex Clover icon shape -* [Lawnchair] Very Sunny icon shape -* [Lawnchair/Font] Update Google Fonts listing to 25102025 -* [Lawnchair/Gesture] Allow Open Quick Settings* - -#### Fixes -* Disable OEM override on launcher settings, (reimplement `ENABLE_AUTO_INSTALLS_LAYOUT` | c51b2a221838aefb610b7146fc4ef7cb34e5e495) -* [Lawnchair/Iconloaderlib] Reimplement custom app name -* [Lawnchair] Reimplement Launcher3 debug page -* [Lawnchair] Reimplement Caddy and App drawer folder -* [Lawnchair] Reimplement Hotseat toggle -* [Lawnchair] Reimplement Favorite application label -* [Lawnchair] Hotseat positioning with favorite icon label enabled placed the same even if label is disabled -* [Lawnchair] Hotseat background now have a reasonably sized margin compared to D2 -* [Lawnchair] Qsb sizing now correctly estimate the width based on width of the app/widget layout or DeviceProfile on device with inlined Qsb -* [Lawnchair] Reimplement Allapps opacity configuration -* [DeviceProfile] Crash from createWindowContext on less than Android 12.0 -* [QuickstepLauncher] Ignore trying to set SystemUiProxy icon sizes on less than Android 12.1 -* [Lawnchair/BlankActivity] Apply Material 3 Expressive button animations -* [Launcher] Disable add widget button if home screen is locked -* [Lawnchair/Iconloaderlib] Crash when trying to set `null` monochrome icon on less than Android 12.1 -* [SystemUI/Unfold] Crash when getting configuration for foldable-specific resources -* [Lawnchair/Iconloaderlib] Don't parse monochrome drawable in Android 12.1 or less -* [Launcher3/AllApps] Allow theming of Expressive allapps -* ~~[Lawnchair] Lawnchair can now be compiled in release mode~~ - * [Lawnchair] Fix crashes with WM-Shell -* [Lawnchair] Bottom sheet blur will only trigger when your device supported blur* -* [Lawnchair/Lazy] Corner radii of lazy component now matched radius of non-lazy* -* [Lawnchair/Debug] Cleanup the debug menu* -* [Lawnchair/Docs] Warn off danger using 16-dev branch* -* [Launcher3] Crash with predictive back on some device using Android 13/14 -* [Launcher3] WindowInsets crash in Android 11 -* [Launcher3] Widgets crash on some device using Android 12 -* [Launcher3/PrivateSpace] Use custom icons of Private Space lock* -* [Launcher3/Iconloaderlib] App badges for work profile* -* [Lawnchair] Update spacing for dock search settings* -* [Launcher3] Quickstep dispatcher crash on Android 13 -* [Launcher3] Crash due to missing resources for Android 8.0 -* [Lawnchair/Docs] Update screenshot to 16-dev - -### 🥞 Development 2 - -Originally going to launch D2 if most of the comestic bug fixes have been resolved, but hit a -stability milestone instead. - -This release includes 15 new features, and 20 bug fixes, -Lawnchair settings now takes shape of initial material 3 expressive redesign, [(but by no mean finish!)][Lawnget] -launcher should now render icons better than D1 milestone, with auto-adaptive icons feature reimplemented. - -This release have been tested with: -* ☁️ Pixel 6 (Android 12.0) - Build: Ad-hoc -* ☁️ Pixel 6a (Android 12.1) - Build: Ad-hoc -* ☁️ Pixel 7 (Android 13) - Build: Ad-hoc -* ☁️ Pixel 9 (Android 15, Android 16.0) - Build: Ad-hoc -* ☁️ Pixel 9 Pro Fold (Android 14, Android 15) - Build: Ad-hoc -* ☁️ Vivo V40 (Android 15) - Build: Ad-hoc -* ☁️ Xiaomi MIX (Android 15) - Build: Ad-hoc -* 📱 Nothing (3a)-series (Android 15) - Build: pE-`15102025` -* 📱 Pixel 9 Pro XL (Android 16.0 QPR2 Beta 2) - Build: pE-`02102025` -* 📱 BLU View 5 Pro (Android 14) - Build: pE-`02102025` -* 📱🔥 Vivo Y21 (Android 12.0) - Build: pE-`08102025` - -> [!NOTE] -> QuickSwitch compatibility have not been tested at any time during the development of Bubble Tea! - -[Lawnget]: https://www.google.com/teapot - -Compatibility list: - -| 🏗️ Crash | 💫 Limited features | 🥞 Fully supported | -|-------------|---------------------|--------------------| -| Android 8.1 | Android 12.0 | Android 12.1 | -| Android 9 | | Android 13 | -| Android 10 | | Android 14 | -| Android 11 | | Android 15 | -| | | Android 16 | +| 🏗️ Crash | 💫 Limited features | 🥞 Fully supported | +|--------------|---------------------|--------------------| +| Android 8.1 | Android 12.1 | Android 13 | +| Android 9 | | Android 14 | +| Android 10 | | Android 15 | +| Android 11 | | Android 16 | +| Android 12.0 | | | #### Features @@ -194,13 +26,9 @@ Compatibility list: * Make Launcher3 colour more accurate to upstream Android 16 * ProvideComposeSheetHandler now have expressive blur * Lawnchair Settings now uses Material 3 Expressive -* Animate keyboard on/off state on app drawer search (Try enabling automatically show keyboard in app drawer settings and swipe up and down or directly tap “Apps list” in popup menu) -> (Backport not possible) +* Animate keyboard on/off state on app drawer search (Try enabling automatically show keyboard in app drawer settings and swipe up and down or directly tap “Apps list” in popup menu) -> (Backported to Lawnchair 15) * Add LeakCanary check to all debug variant of the application * [DEBUG] Launcher3 feature status diagnostic check in debug menu -* [Documentation] Add more visibility into both app certificate and SLSA verification for app authenticity check [VERIFICATION.md](VERIFICATION.md) -* [Documentation] Initial drafting of Improve documentation v6 (pave-path) -* [Launcher] Widget animations during resize -* [Iconloaderlib] Enable second hand for the clock app #### Fixes @@ -221,24 +49,16 @@ Compatibility list: * Assume flags `enableMovingContentIntoPrivateSpace` is false when ClassNotFoundException on Android 16 devices * Rare NoSuchMethodError crash on SurfaceControl setEarlyWakeupStart and setEarlyWakeupEnd * Properly align built-in smartspace in workspace -* Use WM Proxy from Lawnchair instead of System, fix Android 8.1/9/10/11/12.0/12.1 regarding SE, NSME like SystemBarUtils -> (dWkyIGw9), (reworked CllOXHJv) - * LawnchairWindowManagerProxy have been migrated to Dagger - * SystemWindowManagerProxy have been left unused -* [Lawnchair/Iconloaderlib] Update CustomAdaptiveIconDrawable to latest AOSP 13 -* [Iconloaderlib] Reset most of the changes to favour more AOSP 16_r02 code then Lawnchair (need rewrite) - * fix icon loaded in monochrome and always monochrome when it is not supposed to - * fix notification dots being twice the size with notification count -* [Lawnchair/Iconloaderlib] Reimplement Lawnchair Iconloaderlib (adaptive icons, monochrome, regular icon) #### Known Bugs * Preview can't show device wallpaper -> (lIxkAYGg) * IDP Preview doesn't refresh on settings change -> workaround is to hit apply and re-open the preview -> (ZbLX3438) -* Workspace theme doesn't refresh until restart -> (ZbLX3438) -> Fixed as part of (31lLEflf, 1MevNrzp) -* Lawnchair Colour can't handle restart causing default colour to be used instead -> Fixed? -> Properly fixed as part of (31lLEflf, 1MevNrzp) +* Workspace theme doesn't refresh until restart -> (ZbLX3438) +* Lawnchair Colour can't handle restart causing default colour to be used instead -> Fixed? * (Investigating) Work profile switch on widget selector *may* have reverted to Lawnchair 15 style * Full lists: https://trello.com/b/8IdvO81K/pe-lawnchair -### Development 1 +### 🥞 Development 1 First development milestone! Basic launcher functionality should be stable enough. diff --git a/OWNERS b/OWNERS index 65a5cf0841..3f7a780edc 100644 --- a/OWNERS +++ b/OWNERS @@ -51,6 +51,7 @@ jonmiranda@google.com jagrutdesai@google.com randypfohl@google.com saumyaprakash@google.com +sukeshram@google.com twickham@google.com victortulias@google.com diff --git a/PREUPLOAD.cfg b/PREUPLOAD.cfg index f99e9ca556..768ba652de 100644 --- a/PREUPLOAD.cfg +++ b/PREUPLOAD.cfg @@ -11,4 +11,4 @@ ktfmt = ${REPO_ROOT}/external/ktfmt/ktfmt.sh [Hook Scripts] checkstyle_hook = ${REPO_ROOT}/prebuilts/checkstyle/checkstyle.py --config_xml tools/checkstyle.xml --sha ${PREUPLOAD_COMMIT} -alint_hook = ${REPO_ROOT}/vendor/google/tools/alint + diff --git a/README.md b/README.md index 1c651f2780..450ab2e5a3 100644 --- a/README.md +++ b/README.md @@ -9,29 +9,23 @@ [![GitHub Downloads](https://img.shields.io/github/downloads/LawnchairLauncher/lawnchair/total.svg?label=GitHub%20Downloads&logo=github)](https://github.com/LawnchairLauncher/lawnchair/releases) [![Play Store Installs](https://img.shields.io/endpoint?color=green&logo=googleplay&logoColor=green&url=https%3A%2F%2Fplay.cuzi.workers.dev%2Fplay%3Fi%3Dapp.lawnchair.play%26l%3DPlay%2520Store%2520Installs%26m%3D%24shortinstalls)](https://play.google.com/store/apps/details?id=app.lawnchair.play) -> [!WARNING] -> This branch contains major changes from the rebase of Launcher3, including breaking changes and refactors that can cause Lawnchair to break. -> -> If you wish to contribute, read our [contributing guidelines](CONTRIBUTING.md). Note that this branch will undergo many changes as we slowly refactor our codebase, so the `16-dev` branch may be particularly unfriendly to new contributors. It is still possible to submit changes to `15-dev`, but new feature development will be focused on this branch. -> -> For regular users, we recommend staying on `15-dev` for stability purposes. - - + - A device running Lawnchair Launcher with green flower wallpaper + Google Pixel running Lawnchair Launcher with green wallpaper Lawnchair is a free, open-source home app for Android. Taking Launcher3—Android’s default home app—as a starting point, it ports Pixel Launcher features and introduces rich customization options. -This branch houses the codebase of Lawnchair 16, which is currently in development and is based on Launcher3 from Android 16. For Lawnchair 9 to 15, see the branches with the `9-` to `15-` prefixes, respectively. +This branch houses the codebase of Lawnchair 16, which is currently in beta and is based on Launcher3 from Android 16. For Lawnchair 9 to 15, see the branches with the `9-` to `15-` prefixes, respectively. ## Features -- **Material Expressive Theming:** Adapts to your wallpaper and system theme. +- **Material You Theming:** Adapts to your wallpaper and system theme. - **At a Glance Widget:** Displays information *at a glance* with support for [Smartspacer](https://github.com/KieronQuinn/Smartspacer). - **QuickSwitch Support:** Integrates with Android Recents on Android 10-15. (requires root) - **Global Search:** Allows quick access to apps, contacts, and web results from the home screen. @@ -80,7 +74,17 @@ These builds offer the latest features and bug fixes at a cost of being slower a ### Verification -Please visit [Lawnchair Verification](VERIFICATION.md) on way to verify Lawnchair. +Check that your download is using the official Lawnchair certification using these SHA-256 hashes: + +###### Google Play +``` +47:AC:92:63:1C:60:35:13:CC:8D:26:DD:9C:FF:E0:71:9A:8B:36:55:44:DC:CE:C2:09:58:24:EC:25:61:20:A7 +``` + +###### Elsewhere +``` +74:7C:36:45:B3:57:25:8B:2E:23:E8:51:E5:3C:96:74:7F:E0:AD:D0:07:E5:BA:2C:D9:7E:8C:85:57:2E:4D:C5 +``` ## Contributing diff --git a/TELEGRAM_CHANGELOG.txt b/TELEGRAM_CHANGELOG.txt index 08aeb77135..983015bcb0 100644 --- a/TELEGRAM_CHANGELOG.txt +++ b/TELEGRAM_CHANGELOG.txt @@ -1,25 +1,105 @@ -# Bubble Tea +Lawnchair 16 Development 1 is here! Contributors are encouraged to target this branch instead of +older (i.e., Lawnchair `15-dev`). -## Bubble Tea [QPR1] +### 🥞 Development 1 -### 🥞 Snapshot 7 (Development 4 Release 1) +First development milestone! Basic launcher functionality should be stable enough. -Build: BS7.1711 +* Make Lawnchair Launcher launchable in Android 12.1, 13, 14, 15, 16 +* Remove two deprecated features (Use Material U Popup, and Use dot pagination) +* Add pseudonym version in debug settings +* Adapt Lawnchair code to Launcher3 16 +* Make basic features of Launcher work (App Drawer, Home Screen, Search, Folders, Widgets) +* Enable Material Expressive Flags (Try swiping through launcher page) +* Enable All Apps Blur Flags (Try opening All Apps on supported devices) +* Enable MSDL Haptics Feedback Flags (Try gliding widget or icons across the homescreen) +* Make Predictive Back Gesture work on Android 13, 14, 15, 16 (Try swiping left or right on gesture-based navigational) +* Programmatically set Safe Mode status -This snapshot marks the first time Bubble Tea QPR1 is able to pass KSP build stage without any -hiccups, the next 1 or 2 snapshots will be focusing on compilation stage, which should be the last -stage before we can get started on pE Development 4. +#### Known Bugs + +* App Icon may sometimes render with less than 0 in height/width causing blank icon to be rendered and crashing ISE on customising icons +* Any Lawnchair settings using IDP will crash the launcher +* Icon pack isn't usable +* Dynamic icons will not be themed by launcher +* Full lists: https://trello.com/b/8IdvO81K/pe-lawnchair + +### Snapshot 6 This is a developer-focused change log: -* Codebase updated to Android 16-0.0_r3 (Android 16.0.0 Release 3) -* Prebuilt updated to Android 16-0.0_r3 (Android 16.0.0 Release 3) -* Platform libs updated to Android 16-0.0_r3 (Android 16.0.0 Release 3) - * Move ViewCapture to platform lib - * Add Displaylib -* Flags updated to Android 16-0.0_r3 (Android 16.0.0 Release 3) -* Pull concurrent, dagger (the launcher3) as module - * TODO? We might need to migrate it to build source like compose instead -* Lots of prebuilt documentations update -* Add compose as part of launcher3 build source - * Removed test because I hate configuration gradle - * cc: @validcube fix me, cc: too bad + +This snapshot marks the first time Lawnchair 16 is able to compile and build an APK! + +* Fix all issues with Java files in both `lawn` and `src` +* Make Lawnchair compilable (with instant crash) +* Move to KSP for Dagger code generation + +### Snapshot 5 + +This is a developer-focused change log: + +This snapshot now able to compile all sources (Kotlin files only) + +* Fix MORE MORE MORE `lawn` issues +* Use Gradle Version Catalog for consistent dependency version across all modules (Full implementation @ LawnchairLauncher/Lawnchair#5753) +* Magically fix ASM Instrumentation issues (I didn't do anything, it just works now) +* Fix ALL the issues in kotlin stage (`compileLawnWithQuickstepNightlyDebugKotlin`) +* Reintroduce some features from Lawnchair +* Add compatibility checks and workarounds for them +* Fix most issues with Java files in both `lawn` and `src` + +### Snapshot 4 + +This is a developer-focused change log: + +This snapshot marks the first time Lawnchair 16 is able to compile all Launcher3 sources! + +* Add `MSDLLib` to `platform_frameworks_libs_systemui` +* Add `contextualeducationlib` to `platform_frameworks_libs_systemui` +* Fix issues in both `lawn` and `src` modules +* Fix AIDL sources +* Resolve Lawnchair/LC-TODO lists +* Merge `wmshell.shared` res with res from `wmshell` +* Consistent build reproducibility by specifying dependencies in `build.gradle` +* Some ASM Instrumentation issues (and re-add some…) +* Update documentations + +### Snapshot 3 + +This is a developer-focused change log: + +Not a lot of errors left to go! + +* Finish correctly implementing all Dagger functions (?) +* Merge Lawnchair 15 Beta 1 into Bubble Tea + * Support for 16-kb page size devices +* Repository rebased and dropped commit + * Switch back from turbine-combined variant to javac variant for prebuilt SystemUI-core-16 because issues with LFS + * MORE MORE fixes regarding turbine-combined to javac +* Publish `platform_frameworks_libs_systemui` to pe 16-dev branch +* ATLEAST check to almost every launcher3 source file +* `Utils` module (stripped) +* Fix Dagger duplicated classes (because of Dagger dependency ksp/kapt mixing) +* Build reproducibility improvements by specifying dependencies in `build.gradle` files +* Fix some of the issues in both `lawn` and `src` modules + +### Snapshot 2 + +This is a developer-focused change log: + +This snapshot milestone marked the first time Lawnchair now able to compile all supplementary +modules, `src` + `lawn` will be in Snapshot 5 or Development 1 milestone. + +* Merge flags +* Fix some issues with launcher3 sources. +* A temporary workaround with framworks.jar not adding in anim module. +* Shared not having access to animationlib. +* **Switch from javac variant to turbine-combined variant for prebuilt SystemUI-core-16**. + +### From Initial snapshot 0 and 1 + +This is a developer-focused change log: +* Prebuilt updated to Android 16-0.0_r2 (Android 16.0.0 Release 2) +* Submodule have also been refreshed to A16r2 +* Baklava Compatlib (QuickSwitch compatibility not guaranteed) +* Refreshed internal documentation like prebuilt, systemUI diff --git a/aconfig/launcher.aconfig b/aconfig/launcher.aconfig index 7c8e5fdbd2..b083390b06 100644 --- a/aconfig/launcher.aconfig +++ b/aconfig/launcher.aconfig @@ -71,6 +71,13 @@ flag { bug: "347281365" } +flag { + name: "enable_unfolded_two_pane_picker" + namespace: "launcher" + description: "Enables two pane widget picker for unfolded foldables" + bug: "313922374" +} + flag { name: "enable_tablet_two_pane_picker_v2" namespace: "launcher" @@ -92,6 +99,13 @@ flag { bug: "238475505" } +flag { + name: "enable_shortcut_dont_suggest_app" + namespace: "launcher" + description: "Enables don't suggest app shortcut for suggested apps" + bug: "319250810" +} + flag { name: "enable_support_for_archiving" namespace: "launcher" @@ -166,6 +180,24 @@ flag { } } +flag { + name: "use_activity_overlay" + namespace: "launcher" + description: "Use an activity for home screen overlay" + bug: "273828110" +} + +flag { + name: "enable_grid_migration_fix" + namespace: "launcher" + description: "Keep items in place when migrating to a bigger grid" + bug: "325286145" + is_fixed_read_only: true + metadata { + purpose: PURPOSE_BUGFIX + } +} + flag { name: "enable_narrow_grid_restore" namespace: "launcher" @@ -191,6 +223,16 @@ flag { bug: "323886237" } +flag { + name: "enable_handle_delayed_gesture_callbacks" + namespace: "launcher" + description: "Enables additional handling for delayed mid-gesture callbacks" + bug: "285636175" + metadata { + purpose: PURPOSE_BUGFIX + } +} + flag { name: "enable_fallback_overview_in_window" namespace: "lse_desktop_experience" @@ -198,6 +240,30 @@ flag { bug: "292269949" } +flag { + name: "enable_smartspace_as_a_widget" + namespace: "launcher" + description: "Enables smartspace as a widget" + bug: "300140279" +} + +flag { + name: "enable_smartspace_removal_toggle" + namespace: "launcher" + description: "Enables smartspace removal toggle" + bug: "303471576" +} + +flag { + name: "enable_additional_home_animations" + namespace: "launcher" + description: "Enables custom home animations for non-running tasks" + bug: "237638627" + metadata { + purpose: PURPOSE_BUGFIX + } +} + flag { name: "enabled_folders_in_all_apps" namespace: "launcher" @@ -251,6 +317,13 @@ flag { bug: "400827727" } +flag { + name: "multiline_search_bar" + namespace: "launcher" + description: "Search bar can wrap to multi-line" + bug: "341795751" +} + flag { name: "enable_multi_instance_menu_taskbar" namespace: "launcher" @@ -258,6 +331,13 @@ flag { bug: "355237285" } +flag { + name: "navigate_to_child_preference" + namespace: "launcher" + description: "Settings screen supports navigating to child preference if the key is not on the screen" + bug: "293390881" +} + flag { name: "use_new_icon_for_archived_apps" namespace: "launcher" @@ -275,6 +355,16 @@ flag { bug: "358673724" } +flag { + name: "enable_desktop_task_alpha_animation" + namespace: "launcher" + description: "Enables the animation of the desktop task's background view" + bug: "320307666" + metadata { + purpose: PURPOSE_BUGFIX + } +} + flag { name: "ignore_three_finger_trackpad_for_nav_handle_long_press" namespace: "launcher" @@ -351,6 +441,20 @@ flag { bug: "345760034" } +flag { + name: "taskbar_overflow" + namespace: "launcher" + description: "Show recent apps in the taskbar overflow." + bug: "368119679" +} + +flag { + name: "enable_active_gesture_proto_log" + namespace: "launcher" + description: "Enables tracking active gesture logs in ProtoLog" + bug: "293182501" +} + flag { name: "enable_recents_window_proto_log" namespace: "lse_desktop_experience" @@ -365,6 +469,16 @@ flag { bug: "292269949" } +flag { + name: "coordinate_workspace_scale" + namespace: "launcher" + description: "Ensure that the workspace and hotseat scale doesn't conflict and transitions smoothly between launching and closing apps" + bug: "366403487" + metadata { + purpose: PURPOSE_BUGFIX + } +} + flag { name: "enable_tiered_widgets_by_default_in_picker" namespace: "launcher" @@ -410,6 +524,13 @@ flag { bug: "377496684" } +flag { + name: "enable_pinning_app_with_context_menu" + namespace: "launcher" + description: "Add options to pin/unpin to taskbar to app context menus." + bug: "375648361" +} + flag { name: "enable_launcher_icon_shapes" namespace: "launcher" @@ -444,17 +565,6 @@ flag { bug: "395145453" } -flag { - name: "external_data_access" - namespace: "launcher" - description: "For LauncherProvider bug fixes and new static permissions as part of the cross oem backup / restore effort." - bug: "395145453" - is_fixed_read_only: true - metadata { - purpose: PURPOSE_BUGFIX - } -} - flag { name: "gsf_res" namespace: "launcher" @@ -517,6 +627,13 @@ flag { bug: "394651876" } +flag { + name: "extendible_theme_manager" + namespace: "launcher" + description: "Enables custom theme manager in Launcher" + bug: "381897614" +} + flag { name: "enable_alt_tab_kqs_flatenning" namespace: "lse_desktop_experience" @@ -587,58 +704,3 @@ flag { purpose: PURPOSE_BUGFIX } } - -flag { - name: "enable_taskbar_ui_thread" - namespace: "launcher" - description: "Enable per-window thread for taskbar" - bug: "404636836" -} - -flag { - name: "enable_expressive_folder_expansion" - namespace: "launcher" - description: "Enables expressive folder expansion motion" - bug: "348708061" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { - name: "model_repository" - namespace: "launcher" - description: "Adds various data repositories for the model" - bug: "390572144" -} - -flag { - name: "home_screen_edit_improvements" - namespace: "launcher" - description: "Improves item removal and resizing within home screen" - bug: "416087474" -} - -flag { - name: "enable_widget_picker_refactor" - namespace: "launcher" - description: "Enables the refactored code for widget picker using separate activity and module" - bug: "370950552" -} - -flag { - name: "enable_reversible_home_action_corner" - namespace: "launcher" - description: "Enables home action corner to be reversible" - bug: "416664984" -} - -flag { - name: "enable_long_press_remove_shortcut" - namespace: "launcher" - description: "Enables remove app shortcut on long press menu" - bug: "419289205" - metadata { - purpose: PURPOSE_BUGFIX - } -} diff --git a/aconfig/launcher_overview.aconfig b/aconfig/launcher_overview.aconfig index c6fb8bfc7f..d27a2143e1 100644 --- a/aconfig/launcher_overview.aconfig +++ b/aconfig/launcher_overview.aconfig @@ -19,16 +19,16 @@ flag { name: "enable_refactor_task_thumbnail" namespace: "launcher_overview" description: "Enables rewritten version of TaskThumbnailViews in Overview" - bug: "331754864" + bug: "331753115" } flag { - name: "enable_coroutine_threading_improvements" + name: "enable_hover_of_child_elements_in_taskview" namespace: "launcher_overview" - description: "Enables changes to the threading model of Launcher's coroutines implementation" - bug: "416206104" + description: "Enables child elements to receive hover events in TaskView and respond visually to those hover events." + bug: "342594235" metadata { - purpose: PURPOSE_BUGFIX + purpose: PURPOSE_BUGFIX } } @@ -39,6 +39,23 @@ flag { bug: "357860832" } +flag { + name: "enable_overview_command_helper_timeout" + namespace: "launcher_overview" + description: "Enables OverviewCommandHelper new version with a timeout to prevent the queue to be unresponsive." + bug: "351122926" + metadata { + purpose: PURPOSE_BUGFIX + } +} + +flag { + name: "enable_desktop_windowing_carousel_detach" + namespace: "launcher_overview" + description: "Makes the desktop windowing task carousel detaches from fullscreen task carousel during quickswitch." + bug: "353947917" +} + flag { name: "enable_desktop_exploded_view" namespace: "launcher_overview" @@ -46,6 +63,16 @@ flag { bug: "378011776" } +flag { + name: "enable_use_top_visible_activity_for_exclude_from_recent_task" + namespace: "launcher_overview" + description: "Enables using the top visible activity for exclude from recent task instead of the activity indicies." + bug: "342627272" + metadata { + purpose: PURPOSE_BUGFIX + } +} + flag { name: "enable_expressive_dismiss_task_motion" namespace: "launcher_overview" @@ -53,6 +80,16 @@ flag { bug: "381239462" } +flag { + name: "enable_separate_external_display_tasks" + namespace: "launcher_overview" + description: "Enables separating external display tasks in Overview." + bug: "391311008" + metadata { + purpose: PURPOSE_BUGFIX + } +} + flag { name: "enable_overview_on_connected_displays" namespace: "launcher_overview" @@ -64,7 +101,7 @@ flag { name: "enable_overview_background_wallpaper_blur" namespace: "launcher_overview" description: "Enable wallpaper blur in overview." - bug: "360297985" + bug: "369975912" } flag { @@ -75,32 +112,11 @@ flag { } flag { - name: "enable_refactor_digital_wellbeing_toast" + name: "enable_show_enabled_shortcuts_in_accessibility_menu" namespace: "launcher_overview" - description: "Enables rewritten version of digital wellbeing toast in overview." - bug: "404838605" -} - -flag { - name: "enable_refactor_task_content_view" - namespace: "launcher_overview" - description: "Enables refactor wrapping TaskThumbnailView in a TaskContentView." - bug: "408971730" -} - -flag { - name: "enable_desktop_menu_on_secondary_display_bugfix" - namespace: "launcher_overview" - description: "Enable the 'Desktop' menu entry on full screen tiles on secondary display." - bug: "418822736" + description: "Enables showing the same shortcuts in the Task menu as well as the accessibility actions menu" + bug: "383662632" metadata { purpose: PURPOSE_BUGFIX } } - -flag { - name: "enable_simultaneous_overview_trigger_on_extended_desktop" - namespace: "launcher_overview" - description: "Enable Overview to launch and exit simultaneously on default and external displays wherever it was triggered or quit from" - bug: "421128035" -} diff --git a/aconfig/launcher_search.aconfig b/aconfig/launcher_search.aconfig index 15ea9580d6..b98eee6e32 100644 --- a/aconfig/launcher_search.aconfig +++ b/aconfig/launcher_search.aconfig @@ -22,6 +22,13 @@ flag { bug: "308054233" } +flag { + name: "private_space_app_installer_button" + namespace: "launcher_search" + description: "This flag enables addition of App Installer button in Private Space container." + bug: "308064949" +} + flag { name: "private_space_restrict_accessibility_drag" namespace: "launcher_search" @@ -36,15 +43,6 @@ flag { bug: "289223923" } -flag { - name: "nudge_pill" - namespace: "launcher_search" - description: "This flag enables change the nav or 3 button to nudge related edu (pill or icon) for CtS." - bug: "409121556" - metadata { - purpose: PURPOSE_BUGFIX - } -} flag { name: "private_space_add_floating_mask_view" @@ -55,9 +53,3 @@ flag { purpose: PURPOSE_BUGFIX } } -flag { - name: "enable_qsb_on_hotseat" - namespace: "launcher_search" - description: "Enable Search App's widget on hotseat" - bug: "405226308" -} diff --git a/androidx-lib/build.gradle b/androidx-lib/build.gradle index 39d8e88618..368938022c 100644 --- a/androidx-lib/build.gradle +++ b/androidx-lib/build.gradle @@ -1,6 +1,6 @@ plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) + id 'com.android.library' + id 'org.jetbrains.kotlin.android' } android { diff --git a/baseline-profile/build.gradle b/baseline-profile/build.gradle index eccb3db303..4c22a94dcb 100644 --- a/baseline-profile/build.gradle +++ b/baseline-profile/build.gradle @@ -1,9 +1,9 @@ import com.android.build.api.dsl.ManagedVirtualDevice plugins { - alias(libs.plugins.android.test) - alias(libs.plugins.androidx.baselineprofile) - alias(libs.plugins.kotlin.android) + id 'com.android.test' + id 'androidx.baselineprofile' + id 'org.jetbrains.kotlin.android' } android { diff --git a/build.gradle b/build.gradle index 07303ac784..970b1385e7 100644 --- a/build.gradle +++ b/build.gradle @@ -1,23 +1,23 @@ import app.cash.licensee.SpdxId import com.android.build.gradle.api.AndroidBasePlugin -import org.jetbrains.kotlin.gradle.dsl.JvmDefaultMode import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { - alias(libs.plugins.android.application) - alias(libs.plugins.android.library) apply false - alias(libs.plugins.android.test) apply false - alias(libs.plugins.androidx.baselineprofile) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.kotlin.compose) - alias(libs.plugins.kotlin.parcelize) - alias(libs.plugins.kotlin.serialization) - alias(libs.plugins.google.ksp) - alias(libs.plugins.google.protobuf) - alias(libs.plugins.cash.licensee) - alias(libs.plugins.rikka.refine) - alias(libs.plugins.diffplug.spotless) + id 'com.android.application' version "8.13.0" + id 'com.android.library' version "8.13.0" apply false + id 'com.android.test' version '8.13.0' apply false + id 'androidx.baselineprofile' version '1.4.1' + id 'org.jetbrains.kotlin.android' version "2.2.10" // Don't ever update to 2.2.20 + id 'org.jetbrains.kotlin.plugin.compose' version "2.2.10" // Don't ever update to 2.2.20 + id 'org.jetbrains.kotlin.plugin.parcelize' version "2.2.10" // Don't ever update to 2.2.20 + id 'org.jetbrains.kotlin.plugin.serialization' version "2.2.10" // Don't ever update to 2.2.20 + id "com.google.devtools.ksp" version "2.2.10-2.0.2" // Don't ever update to 2.2.20 + id 'com.google.protobuf' version "0.9.5" + id 'app.cash.licensee' version "1.13.0" + id 'dev.rikka.tools.refine' version "4.4.0" + id 'com.diffplug.spotless' version '7.2.1' + id 'com.google.dagger.hilt.android' version '2.57.1' } // LC-Build-TODO: addFrameworkJar() doesn't work, what??? @@ -33,11 +33,7 @@ allprojects { plugins.withType(AndroidBasePlugin).configureEach { android { buildToolsVersion "36.1.0" - compileSdk { - version = release(36) { - minorApiLevel = 1 - } - } + compileSdk 36 defaultConfig { minSdk 26 targetSdk 36 @@ -48,8 +44,8 @@ allprojects { checkReleaseBuilds false } compileOptions { - sourceCompatibility = libs.versions.jdkRelease.get() - targetCompatibility = libs.versions.jdkRelease.get() + sourceCompatibility = JavaVersion.VERSION_21 + targetCompatibility = JavaVersion.VERSION_21 } } dependencies { @@ -59,10 +55,11 @@ allprojects { } plugins.withId('com.google.protobuf') { + def protocVersion = '4.32.1' protobuf { // Configure the protoc executable protoc { - artifact = "com.google.protobuf:protoc:${libs.versions.protocVersion.get()}" + artifact = "com.google.protobuf:protoc:${protocVersion}" } generateProtoTasks { all().configureEach { task -> @@ -82,24 +79,17 @@ allprojects { plugins.withType(JavaBasePlugin).configureEach { java { - sourceCompatibility = libs.versions.jdkRelease.get() - targetCompatibility = libs.versions.jdkRelease.get() + sourceCompatibility = JavaVersion.VERSION_21 + targetCompatibility = JavaVersion.VERSION_21 } } tasks.withType(KotlinCompile).configureEach { compilerOptions { - jvmDefault = JvmDefaultMode.ENABLE - jvmTarget = JvmTarget.fromTarget(libs.versions.jdkRelease.get()) - } - } - - configurations.configureEach { - resolutionStrategy.eachDependency { - // Fix duplicate class kotlinx.android.parcel.* found in these 2 dependencies. - if (requested.module == libs.kotlin.androidExtensionRuntime.get().module) { - useTarget(libs.kotlin.parcelizeRuntime) - } + freeCompilerArgs.add( + "-Xjvm-default=all", + ) + jvmTarget = JvmTarget.JVM_21 } } @@ -113,12 +103,10 @@ allprojects { } gradle.projectsEvaluated { tasks.withType(JavaCompile).configureEach { - // Make sure the frameworkJar is always first in the classpath. classpath = files(frameworkJar, classpath) } tasks.withType(KotlinCompile).configureEach { - // Make sure the frameworkJar is always first in the classpath. - libraries.setFrom files(frameworkJar, libraries) + libraries.from(files(frameworkJar)) } } dependencies { @@ -155,21 +143,21 @@ final def ciRunNumber = System.getenv("GITHUB_RUN_NUMBER") ?: "" final def isReleaseBuild = ciBuild && ciRef.contains("beta") final def devReleaseName = ciBuild ? "Dev.(#${ciRunNumber})" : "Dev.(${buildCommit})" final def version = "16" -final def releaseName = "Development 4 Release 1" +final def releaseName = "Development 2 Release 0" final def versionDisplayName = "${version}.${isReleaseBuild ? releaseName : devReleaseName}" final def majorVersion = versionDisplayName.split("\\.")[0] -final def quickstepMinSdk = "29" -final def quickstepMaxSdk = "36" +def quickstepMinSdk = "29" +def quickstepMaxSdk = "36" android { namespace "com.android.launcher3" defaultConfig { /* - * Lawnchair Launcher 16.0 Development 4 Release 1 + * Lawnchair Launcher 16.0 Development 2 Release 1 * see CONTRIBUTING.md#versioning-scheme */ - versionCode 16_00_04_00_01 + versionCode 16_00_01_02_01 versionName "${versionDisplayName}" buildConfigField "String", "VERSION_DISPLAY_NAME", "\"${versionDisplayName}\"" buildConfigField "String", "MAJOR_VERSION", "\"${majorVersion}\"" @@ -258,17 +246,19 @@ android { applicationIdSuffix ".debug" resValue("string", "derived_app_name", "Lawnchair (Debug)") - manifestPlaceholders.quickstepMinSdk = "0" - manifestPlaceholders.quickstepMaxSdk = "100000" - buildConfigField "int", "QUICKSTEP_MIN_SDK", "0" - buildConfigField "int", "QUICKSTEP_MAX_SDK", "100000" + quickstepMinSdk = "0" + quickstepMaxSdk = "100000" + + manifestPlaceholders.quickstepMinSdk = quickstepMinSdk + manifestPlaceholders.quickstepMaxSdk = quickstepMaxSdk + buildConfigField "int", "QUICKSTEP_MIN_SDK", quickstepMinSdk + buildConfigField "int", "QUICKSTEP_MAX_SDK", quickstepMaxSdk } release { resValue("string", "derived_app_name", "Lawnchair") minifyEnabled true shrinkResources true - pseudoLocalesEnabled false proguardFiles proguardFilesFromAosp + "proguard.pro" } } @@ -319,7 +309,7 @@ android { sourceSets { main { res.srcDirs = ['res'] - java.srcDirs = ['src', 'src_plugins', 'compose/facade/core', 'compose/facade/enabled', 'compose/features'] // Lawnchair-TODO: Don't include Compose Disabled, but there's has to be another way of making this NOT long + java.srcDirs = ['src', 'src_plugins'] manifest.srcFile 'AndroidManifest-common.xml' proto { srcDirs = ['protos/', 'quickstep/protos_overrides/'] @@ -369,7 +359,9 @@ android { composeCompiler { stabilityConfigurationFiles.addAll( - layout.projectDirectory.file("compose_compiler_config.conf"), + [ + layout.projectDirectory.file("compose_compiler_config.conf"), + ] ) reportsDestination = layout.buildDirectory.dir("compose_build_reports") } @@ -382,15 +374,13 @@ dependencies { implementation projects.animationlib implementation projects.msdllib implementation projects.contextualeducationlib - implementation projects.viewcapturelib - implementation projects.displaylib - implementation projects.mechanics // Recents lib dependency withQuickstepCompileOnly projects.hiddenApi withQuickstepImplementation projects.shared - withQuickstepImplementation projects.animation + withQuickstepImplementation projects.anim withQuickstepImplementation projects.unfold + withQuickstepImplementation projects.viewcapture withQuickstepImplementation projects.log withQuickstepCompileOnly projects.plugin withQuickstepImplementation projects.plugincore @@ -408,100 +398,83 @@ dependencies { withQuickstepImplementation projects.compatLib.compatLibVBaklava withQuickstepImplementation projects.wmshell withQuickstepImplementation projects.flags - withQuickstepImplementation projects.dagger - withQuickstepImplementation projects.concurrent -// withQuickstepImplementation projects.compose - withQuickstepImplementation projects.modules.widgetpicker - implementation libs.androidx.dynamicanimation - implementation fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'SystemUI-statsd-16.jar') implementation fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'WindowManager-Shell-16.jar') withQuickstepCompileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'framework-16.jar') baselineProfile projects.baselineProfile coreLibraryDesugaring libs.android.desugarJdkLibs - - implementation libs.androidx.profileinstaller - baselineProfile projects.baselineProfile - - implementation libs.androidx.recyclerview - implementation libs.androidx.preference.ktx - implementation libs.javax.inject implementation libs.kotlinx.coroutines.android implementation libs.kotlinx.serialization.json - implementation libs.chickenhook.restrictionbypass - implementation libs.rikka.refine.runtime implementation libs.androidx.activity.compose implementation libs.androidx.constraintlayout implementation libs.androidx.datastore.preferences + implementation libs.androidx.dynamicanimation + implementation libs.androidx.lifecycle.viewmodel.compose + implementation libs.androidx.navigation.compose + implementation libs.androidx.palette.ktx + implementation libs.androidx.preference.ktx + implementation libs.androidx.profileinstaller + implementation libs.androidx.recyclerview + implementation libs.androidx.slice.core + implementation libs.androidx.window + implementation libs.bundles.graphics implementation platform(libs.compose.bom) implementation libs.compose.ui implementation libs.compose.ui.util implementation libs.compose.ui.graphics - implementation libs.bundles.graphics debugImplementation libs.compose.ui.tooling implementation libs.compose.ui.tooling.preview implementation libs.compose.ui.google.fonts implementation libs.compose.foundation - implementation libs.compose.material.icons implementation libs.compose.material + implementation libs.compose.material.icons implementation libs.compose.runtime.livedata implementation libs.compose.material3 implementation libs.compose.material3.windowSizeClass - implementation libs.androidx.activity.compose - implementation libs.androidx.lifecycle.viewmodel.compose - implementation libs.androidx.navigation.compose - implementation libs.androidx.constraintlayout - implementation libs.androidx.palette.ktx - implementation libs.androidx.slice.core - implementation libs.bundles.accompanist - implementation libs.google.material - implementation libs.material.motion.compose - implementation libs.kdrag0n.colorkt - implementation libs.coil.compose - implementation libs.xdrop.fuzzywuzzy - implementation libs.bundles.opto - implementation libs.androidx.datastore.preferences - - implementation libs.bundles.retrofit + ksp libs.dagger.compiler + implementation libs.dagger.hilt.android + ksp libs.dagger.hilt.compiler implementation libs.bundles.room ksp libs.room.compiler - implementation libs.libsu.service + implementation libs.bundles.retrofit - // Persian Date - implementation libs.persian.date + implementation libs.bundles.opto + implementation libs.bundles.accompanist + + implementation libs.google.material + implementation libs.material.motion.compose implementation libs.airbnb.lottie - - // Compose drag and drop library + implementation libs.coil.compose + implementation libs.hoko.blur implementation libs.reorderable + implementation libs.chickenhook.restrictionbypass + implementation libs.rikka.refine.runtime + implementation libs.libsu.service + implementation libs.persian.date + implementation libs.kdrag0n.colorkt + implementation libs.xdrop.fuzzywuzzy + // Smartspacer implementation(libs.smartspacer.sdk) { exclude group: "com.github.skydoves", module: "balloon" } - implementation libs.hoko.blur - - implementation libs.androidx.window - - ksp libs.dagger.compiler - implementation libs.dagger.hilt.android - ksp libs.dagger.hilt.compiler - - implementation libs.google.guava - debugImplementation libs.leakcanary.android } ksp { arg("room.schemaLocation", "$projectDir/schemas") + arg("room.generateKotlin", "true") + arg("room.incremental", "true") arg("dagger.hilt.disableModulesHaveInstallInCheck", "true") } @@ -528,12 +501,11 @@ licensee { allow(SpdxId.Apache_20) allow(SpdxId.BSD_3_Clause) allow(SpdxId.GPL_20_or_later) - allowDependency(libs.libsu.core) - allowDependency(libs.libsu.service) + allowDependency("com.github.topjohnwu.libsu", "core", "6.0.0") + allowDependency("com.github.topjohnwu.libsu", "service", "6.0.0") allowUrl("https://github.com/patrykmichalik/opto/blob/master/LICENSE") allowUrl("https://github.com/RikkaApps/HiddenApiRefinePlugin/blob/main/LICENSE") allowUrl("https://opensource.org/licenses/mit-license.php") bundleAndroidAsset = true - androidAssetReportPath = 'licenses.json' } diff --git a/compatLib/build.gradle b/compatLib/build.gradle index 5c3b5a0e13..1b8ec620d6 100644 --- a/compatLib/build.gradle +++ b/compatLib/build.gradle @@ -1,5 +1,5 @@ plugins { - alias(libs.plugins.android.library) + id 'com.android.library' } android { diff --git a/compatLib/compatLibVQ/build.gradle b/compatLib/compatLibVQ/build.gradle index ef00fa6dd1..6612b081b7 100644 --- a/compatLib/compatLibVQ/build.gradle +++ b/compatLib/compatLibVQ/build.gradle @@ -1,5 +1,5 @@ plugins { - alias(libs.plugins.android.library) + id 'com.android.library' } android { diff --git a/compatLib/compatLibVR/build.gradle b/compatLib/compatLibVR/build.gradle index a7fc5a3dca..f986eac6fb 100644 --- a/compatLib/compatLibVR/build.gradle +++ b/compatLib/compatLibVR/build.gradle @@ -1,5 +1,5 @@ plugins { - alias(libs.plugins.android.library) + id 'com.android.library' } android { diff --git a/compatLib/compatLibVS/build.gradle b/compatLib/compatLibVS/build.gradle index edc8d7699d..9f7b402a26 100644 --- a/compatLib/compatLibVS/build.gradle +++ b/compatLib/compatLibVS/build.gradle @@ -1,5 +1,5 @@ plugins { - alias(libs.plugins.android.library) + id 'com.android.library' } android { diff --git a/compatLib/compatLibVT/build.gradle b/compatLib/compatLibVT/build.gradle index 6ded6f55a8..101c48a87a 100644 --- a/compatLib/compatLibVT/build.gradle +++ b/compatLib/compatLibVT/build.gradle @@ -1,5 +1,5 @@ plugins { - alias(libs.plugins.android.library) + id 'com.android.library' } android { diff --git a/compatLib/compatLibVU/build.gradle b/compatLib/compatLibVU/build.gradle index 33bfad7094..f97b512e0b 100644 --- a/compatLib/compatLibVU/build.gradle +++ b/compatLib/compatLibVU/build.gradle @@ -1,5 +1,5 @@ plugins { - alias(libs.plugins.android.library) + id 'com.android.library' } android { diff --git a/compatLib/compatLibVV/build.gradle b/compatLib/compatLibVV/build.gradle index cd31b1a805..3f6535b56d 100644 --- a/compatLib/compatLibVV/build.gradle +++ b/compatLib/compatLibVV/build.gradle @@ -1,5 +1,5 @@ plugins { - alias(libs.plugins.android.library) + id 'com.android.library' } android { diff --git a/docs/assets/README.md b/docs/assets/README.md index 30e6cb7568..51ef527d05 100644 --- a/docs/assets/README.md +++ b/docs/assets/README.md @@ -1,19 +1,21 @@ -# Lawnchair Assets Guidelines +# Lawnchair Visual Guidelines This directory lists all the decoration & visual explainers used in the Lawnchair Documentation. -All assets created should use Material 3 design with `#47B84F` as source color, and +All assets created should use Material 3 design with `#47B84F` as source color and the [Inter](https://fonts.google.com/specimen/Inter) ([OFL v1.1](https://github.com/rsms/inter/?tab=OFL-1.1-1-ov-file#readme)) -typography. +typography. Visit the [Material 3 theme builder][material-theme-builder] for more information. -Visit the [Material 3 theme builder][material-theme-builder] for more information on color. +When creating device mockups for Lawnchair, make sure that you're using the latest commits of +Lawnchair or use Lawnchair Nightly as base. -## Device mockup +## Device Mockup -When creating device mockups for Lawnchair, make sure the latest stable commits of Lawnchair is use -as base. All wallpapers, fonts and icon packs are allowed as long as they're free-to-use -under a permissive license like the licenses from Creative-Common. Using vanilla out-of-the-box -experience is recommended because they show the user what to expect from Lawnchair Launcher when -they first use it. +Use in: [README](/README.md) + +* Icon pack: [Lawnicons](https://github.com/LawnchairLauncher/lawnicons) +* Wallpaper: https://unsplash.com/photos/photography-of-green-leaves-ZVKr8wADhpc +* Color Extraction Technique: Tonal Spot from Lawnchair +* License: https://unsplash.com/license [material-theme-builder]: https://material-foundation.github.io/material-theme-builder/?primary=%2347B84F&bodyFont=Inter&displayFont=Inter&colorMatch=false diff --git a/docs/assets/device-frame.webp b/docs/assets/device-frame.webp index 02e210ba156424594336ecef744e8d67ee5e2ae0..744a8e922e694a5de94bf37719cdbcd7f073e299 100644 GIT binary patch literal 51114 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%0AVlyOT@Gfx&yC-%}Avu$t{3Dqii zlgn9%CCvs2Jn$dhbP@tIs&5t^8u_;kxj)J^ka}X`HVD^w7Bnad*@BsMmw6TF3!t&b!JiO=byen> zX_?X;>!k@s*qmYy{8IkOwLc-XM?~n2GoTT-1<91(aexPb-!Z^DA>hdG|Deo8h)^}q znA*Zj1T|0}ySoG&Cum)tot|(((xb}ol7jEQC%@1o_pJI5XBYGWKtqppwXZgUQ zAG@#XKf6r7??w4&@7#j@$C1dn_dkvxpgF+Q)xgo9{E8&8Vt)#WNy;C(-R)tZ&22Y8 zm4}>q50&{K+~STsA{_m)nalwKk$PuifEZxv$L{!U+3y?h+k4;h{Cfc40F-^j`QM%I?f2b!`h89Q+yVf%9bdYD z?~9Aam(s+(x5sW&L=Q58pRn%4x+5K7WcNhXZ_7m@>PLGPA+5DqpdpIAG95y1-77ok zP#weJy`t$Ru+dNVSnm<1OhG1eEl=!<)|EjuwzLfuhRl_Yv-~PTXw57Lps}X`nzH$_ zdp7y8+`M#IkC9k}p}(|VogHmOXpa-;2cH#cwQWj{39JTR-Nd^Q;>J+pSCKEk`%2dT1uXCD0XAugYAtN=Yv zm#@nQdXz10aBpXGomi389beZkKU6KZ5R?*Wa33i&OOeXR!cS+i(3s^upgqB7GePu& z{sI|5#v%esQF z$HE}A35T9B=*xmDQzqT`GvfYhM1lM_I~J$7i0@>?dSc^!o-RSmB1E^;sI;%}HgwH$ zCbai;8JvPZlo{nZonEV%M@Co9NJDUSstTG4^eFCwik99Rpp95~#0q~c!Oz7=kUE-? zx^CA;cB2u3P}e(m&!QMFAdTU>Bc>~4N^iqQlRvZBMdwky8%_m`p_b`t;*0^hqqrJ7*B&9Pn$FxM!Wt!E^zcb6w=MNZcc+J9FJS!qm9UDa`!cf&D! zN^Zqv?CslCXR)E|avkoHj4>=8sie*=CNDCr+mYvQKu z)fRVljAwB)M#|E0w4EzKp2GgMJR?iX8U4J;GcxDaNw<~$Q(5(k_$i7*np+qC_6>9A z$VFW=Ue-?=B;f|}Z!+KMs)@FnKVm3p8FNGvNd8TGA}c{@@vWt%kXFK!V0f~qCF_x) zCG#HU@2j8}e9<_m7s)=rp#a`VkqfA>%#61v0)Oy1qhtmCzWI^TDlU>UWfAz6e78

GiEqPLcO2RVq(jh^9WLSQ~>ylyyCZtcT87 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 z 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 getFlagNames() { return Arrays.asList( Flags.FLAG_ACTIVITY_TRANSITION_USE_LARGEST_WINDOW, + Flags.FLAG_ADD_BLACK_BACKGROUND_FOR_WINDOW_MAGNIFIER, Flags.FLAG_ALWAYS_COMPOSE_QS_UI_FRAGMENT, Flags.FLAG_AMBIENT_TOUCH_MONITOR_LISTEN_TO_DISPLAY_CHANGES, - Flags.FLAG_ANIMATION_LIBRARY_DELAY_LEASH_CLEANUP, Flags.FLAG_APP_CLIPS_BACKLINKS, + Flags.FLAG_APP_SHORTCUT_REMOVAL_FIX, Flags.FLAG_AVALANCHE_REPLACE_HUN_WHEN_CRITICAL, - Flags.FLAG_BACK_BUTTON_ON_BOUNCER, - Flags.FLAG_BOUNCER_LIFECYCLE_FIX, + Flags.FLAG_BIND_KEYGUARD_MEDIA_VISIBILITY, Flags.FLAG_BOUNCER_UI_REVAMP, Flags.FLAG_BOUNCER_UI_REVAMP_2, Flags.FLAG_BP_COLORS, Flags.FLAG_BRIGHTNESS_SLIDER_FOCUS_STATE, + Flags.FLAG_CHECK_LOCKSCREEN_GONE_TRANSITION, Flags.FLAG_CLASSIC_FLAGS_MULTI_USER, - Flags.FLAG_CLIPBOARD_ANNOUNCE_LIVE_REGION, + Flags.FLAG_CLIPBOARD_IMAGE_TIMEOUT, + Flags.FLAG_CLIPBOARD_NONINTERACTIVE_ON_LOCKSCREEN, Flags.FLAG_CLIPBOARD_OVERLAY_MULTIUSER, + Flags.FLAG_CLIPBOARD_SHARED_TRANSITIONS, Flags.FLAG_CLIPBOARD_USE_DESCRIPTION_MIMETYPE, Flags.FLAG_CLOCK_FIDGET_ANIMATION, - Flags.FLAG_CLOCK_MODERNIZATION, Flags.FLAG_COMMUNAL_BOUNCER_DO_NOT_MODIFY_PLUGIN_OPEN, Flags.FLAG_COMMUNAL_EDIT_WIDGETS_ACTIVITY_FINISH_FIX, Flags.FLAG_COMMUNAL_HUB, Flags.FLAG_COMMUNAL_HUB_USE_THREAD_POOL_FOR_WIDGETS, Flags.FLAG_COMMUNAL_RESPONSIVE_GRID, - Flags.FLAG_COMMUNAL_SHADE_TOUCH_HANDLING_FIXES, + Flags.FLAG_COMMUNAL_SCENE_KTF_REFACTOR, Flags.FLAG_COMMUNAL_STANDALONE_SUPPORT, Flags.FLAG_COMMUNAL_TIMER_FLICKER_FIX, Flags.FLAG_COMMUNAL_WIDGET_RESIZING, @@ -1950,34 +2029,29 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_CONT_AUTH_PLUGIN, Flags.FLAG_CONTEXTUAL_TIPS_ASSISTANT_DISMISS_FIX, Flags.FLAG_COROUTINE_TRACING, + Flags.FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER, + Flags.FLAG_DEBUG_LIVE_UPDATES_PROMOTE_ALL, Flags.FLAG_DECOUPLE_VIEW_CONTROLLER_IN_ANIMLIB, + Flags.FLAG_DELAY_SHOW_MAGNIFICATION_BUTTON, Flags.FLAG_DESKTOP_EFFECTS_QS_TILE, - Flags.FLAG_DESKTOP_SCREEN_CAPTURE, + Flags.FLAG_DEVICE_ENTRY_UDFPS_REFACTOR, + Flags.FLAG_DISABLE_BLURRED_SHADE_VISIBLE, Flags.FLAG_DISABLE_CONTEXTUAL_TIPS_FREQUENCY_CHECK, Flags.FLAG_DISABLE_CONTEXTUAL_TIPS_IOS_SWITCHER_CHECK, - Flags.FLAG_DISABLE_DOUBLE_CLICK_SWAP_ON_BOUNCER, - Flags.FLAG_DO_NOT_USE_IMMEDIATE_COROUTINE_DISPATCHER, + Flags.FLAG_DISABLE_SHADE_TRACKPAD_TWO_FINGER_SWIPE, Flags.FLAG_DOUBLE_TAP_TO_SLEEP, - Flags.FLAG_DREAM_BIOMETRIC_PROMPT_FIXES, Flags.FLAG_DREAM_INPUT_SESSION_PILFER_ONCE, Flags.FLAG_DREAM_OVERLAY_BOUNCER_SWIPE_DIRECTION_FILTERING, - Flags.FLAG_DREAM_OVERLAY_UPDATED_UI, - Flags.FLAG_DREAM_PREVIEW_TAP_DISMISS, - Flags.FLAG_DREAM_TRANSITION_FIXES, + Flags.FLAG_DREAM_OVERLAY_UPDATED_FONT, Flags.FLAG_EDGE_BACK_GESTURE_HANDLER_THREAD, Flags.FLAG_EDGEBACK_GESTURE_HANDLER_GET_RUNNING_TASKS_BACKGROUND, Flags.FLAG_ENABLE_BACKGROUND_KEYGUARD_ONDRAWN_CALLBACK, - Flags.FLAG_ENABLE_CONSTRAINT_LAYOUT_LOCKSCREEN_ON_EXTERNAL_DISPLAY, Flags.FLAG_ENABLE_CONTEXTUAL_TIP_FOR_MUTE_VOLUME, Flags.FLAG_ENABLE_CONTEXTUAL_TIP_FOR_POWER_OFF, Flags.FLAG_ENABLE_CONTEXTUAL_TIP_FOR_TAKE_SCREENSHOT, Flags.FLAG_ENABLE_CONTEXTUAL_TIPS, - Flags.FLAG_ENABLE_DESKTOP_GROWTH, Flags.FLAG_ENABLE_EFFICIENT_DISPLAY_REPOSITORY, Flags.FLAG_ENABLE_LAYOUT_TRACING, - Flags.FLAG_ENABLE_MINMODE, - Flags.FLAG_ENABLE_SUGGESTED_DEVICE_UI, - Flags.FLAG_ENABLE_TOP_UI_CONTROLLER, Flags.FLAG_ENABLE_UNDERLAY, Flags.FLAG_ENABLE_VIEW_CAPTURE_TRACING, Flags.FLAG_ENFORCE_BRIGHTNESS_BASE_USER_RESTRICTION, @@ -1986,52 +2060,61 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_EXPAND_HEADS_UP_ON_INLINE_REPLY, Flags.FLAG_EXPANDED_PRIVACY_INDICATORS_ON_LARGE_SCREEN, Flags.FLAG_EXTENDED_APPS_SHORTCUT_CATEGORY, + Flags.FLAG_FACE_MESSAGE_DEFER_UPDATE, Flags.FLAG_FACE_SCANNING_ANIMATION_NPE_FIX, + Flags.FLAG_FASTER_UNLOCK_TRANSITION, Flags.FLAG_FETCH_BOOKMARKS_XML_KEYBOARD_SHORTCUTS, - Flags.FLAG_FIX_DIALOG_LAUNCH_ANIMATION_JANK_LOGGING, + Flags.FLAG_FIX_IMAGE_WALLPAPER_CRASH_SURFACE_ALREADY_RELEASED, Flags.FLAG_FIX_SCREENSHOT_ACTION_DISMISS_SYSTEM_WINDOWS, - Flags.FLAG_FLASHLIGHT_STRENGTH, Flags.FLAG_FLOATING_MENU_ANIMATED_TUCK, + Flags.FLAG_FLOATING_MENU_DISPLAY_CUTOUT_SUPPORT, + Flags.FLAG_FLOATING_MENU_DRAG_TO_EDIT, Flags.FLAG_FLOATING_MENU_DRAG_TO_HIDE, Flags.FLAG_FLOATING_MENU_HEARING_DEVICE_STATUS_ICON, Flags.FLAG_FLOATING_MENU_IME_DISPLACEMENT_ANIMATION, + Flags.FLAG_FLOATING_MENU_NARROW_TARGET_CONTENT_OBSERVER, Flags.FLAG_FLOATING_MENU_NOTIFY_TARGETS_CHANGED_ON_STRICT_DIFF, Flags.FLAG_FLOATING_MENU_OVERLAPS_NAV_BARS_FLAG, Flags.FLAG_FLOATING_MENU_RADII_ANIMATION, - Flags.FLAG_FLOATING_MENU_REMOVE_FULLSCREEN_TAPS, Flags.FLAG_GET_CONNECTED_DEVICE_NAME_UNSYNCHRONIZED, Flags.FLAG_GLANCEABLE_HUB_ALLOW_KEYGUARD_WHEN_DREAMING, Flags.FLAG_GLANCEABLE_HUB_BLURRED_BACKGROUND, Flags.FLAG_GLANCEABLE_HUB_DIRECT_EDIT_MODE, Flags.FLAG_GLANCEABLE_HUB_V2, Flags.FLAG_GLANCEABLE_HUB_V2_RESOURCES, + Flags.FLAG_HAPTICS_FOR_COMPOSE_SLIDERS, Flags.FLAG_HARDWARE_COLOR_STYLES, Flags.FLAG_HEARING_AIDS_QS_TILE_DIALOG, Flags.FLAG_HEARING_DEVICES_DIALOG_RELATED_TOOLS, Flags.FLAG_HIDE_RINGER_BUTTON_IN_SINGLE_VOLUME_MODE, Flags.FLAG_HOME_CONTROLS_DREAM_HSUM, - Flags.FLAG_HSU_BEHAVIOR_CHANGES, - Flags.FLAG_HUB_BLURRED_BY_SHADE_FIX, Flags.FLAG_HUB_EDIT_MODE_TOUCH_ADJUSTMENTS, - Flags.FLAG_HUB_EDIT_MODE_TRANSITION, + Flags.FLAG_HUBMODE_FULLSCREEN_VERTICAL_SWIPE, + Flags.FLAG_HUBMODE_FULLSCREEN_VERTICAL_SWIPE_FIX, Flags.FLAG_ICON_REFRESH_2025, + Flags.FLAG_IGNORE_TOUCHES_NEXT_TO_NOTIFICATION_SHELF, Flags.FLAG_INDICATION_TEXT_A11Y_FIX, - Flags.FLAG_INSTANT_HIDE_SHADE, Flags.FLAG_KEYBOARD_DOCKING_INDICATOR, Flags.FLAG_KEYBOARD_SHORTCUT_HELPER_REWRITE, Flags.FLAG_KEYBOARD_SHORTCUT_HELPER_SHORTCUT_CUSTOMIZER, Flags.FLAG_KEYBOARD_TOUCHPAD_CONTEXTUAL_EDUCATION, Flags.FLAG_KEYGUARD_TRANSITION_FORCE_FINISH_ON_SCREEN_OFF, + Flags.FLAG_KEYGUARD_WM_REORDER_ATMS_CALLS, Flags.FLAG_KEYGUARD_WM_STATE_REFACTOR, Flags.FLAG_LOCKSCREEN_FONT, Flags.FLAG_LOW_LIGHT_CLOCK_DREAM, - Flags.FLAG_LOWLIGHT_CLOCK_SET_BRIGHTNESS, - Flags.FLAG_LOWLIGHT_CLOCK_USES_KEYGUARD_CHARGING_STATUS, Flags.FLAG_MAGNETIC_NOTIFICATION_SWIPES, + Flags.FLAG_MEDIA_CONTROLS_A11Y_COLORS, Flags.FLAG_MEDIA_CONTROLS_BUTTON_MEDIA3, Flags.FLAG_MEDIA_CONTROLS_BUTTON_MEDIA3_PLACEMENT, - Flags.FLAG_MEDIA_CONTROLS_IN_COMPOSE, + Flags.FLAG_MEDIA_CONTROLS_DEVICE_MANAGER_BACKGROUND_EXECUTION, + Flags.FLAG_MEDIA_CONTROLS_DRAWABLES_REUSE_BUGFIX, + Flags.FLAG_MEDIA_CONTROLS_LOCKSCREEN_SHADE_BUG_FIX, Flags.FLAG_MEDIA_CONTROLS_UI_UPDATE, + Flags.FLAG_MEDIA_CONTROLS_UMO_INFLATION_IN_BACKGROUND, + Flags.FLAG_MEDIA_CONTROLS_USER_INITIATED_DELETEINTENT, + Flags.FLAG_MEDIA_LOAD_METADATA_VIA_MEDIA_DATA_LOADER, + Flags.FLAG_MEDIA_LOCKSCREEN_LAUNCH_ANIMATION, Flags.FLAG_MEDIA_PROJECTION_DIALOG_BEHIND_LOCKSCREEN, Flags.FLAG_MEDIA_PROJECTION_GREY_ERROR_TEXT, Flags.FLAG_MEDIA_PROJECTION_REQUEST_ATTRIBUTION_FIX, @@ -2040,7 +2123,6 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_MSDL_FEEDBACK, Flags.FLAG_MULTIUSER_WIFI_PICKER_TRACKER_SUPPORT, Flags.FLAG_NEW_AOD_TRANSITION, - Flags.FLAG_NEW_DOZING_KEYGUARD_STATES, Flags.FLAG_NEW_VOLUME_PANEL, Flags.FLAG_NON_TOUCHSCREEN_DEVICES_BYPASS_FALSING, Flags.FLAG_NOTES_ROLE_QS_TILE, @@ -2057,27 +2139,31 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_NOTIFICATION_COLOR_UPDATE_LOGGER, Flags.FLAG_NOTIFICATION_CONTENT_ALPHA_OPTIMIZATION, Flags.FLAG_NOTIFICATION_FOOTER_BACKGROUND_TINT_OPTIMIZATION, + Flags.FLAG_NOTIFICATION_OVER_EXPANSION_CLIPPING_FIX, + Flags.FLAG_NOTIFICATION_REENTRANT_DISMISS, Flags.FLAG_NOTIFICATION_ROW_ACCESSIBILITY_EXPANDED, Flags.FLAG_NOTIFICATION_ROW_CONTENT_BINDER_REFACTOR, Flags.FLAG_NOTIFICATION_ROW_TRANSPARENCY, + Flags.FLAG_NOTIFICATION_ROW_USER_CONTEXT, Flags.FLAG_NOTIFICATION_SHADE_BLUR, - Flags.FLAG_NOTIFICATION_SHADE_CLOSE_WAITS_FOR_CHILD_ANIMATIONS, Flags.FLAG_NOTIFICATION_SHADE_UI_THREAD, Flags.FLAG_NOTIFICATION_SKIP_SILENT_UPDATES, Flags.FLAG_NOTIFICATION_TRANSPARENT_HEADER_FIX, + Flags.FLAG_NOTIFICATION_VIEW_FLIPPER_PAUSING_V2, Flags.FLAG_NOTIFICATIONS_BACKGROUND_ICONS, Flags.FLAG_NOTIFICATIONS_FOOTER_VISIBILITY_FIX, Flags.FLAG_NOTIFICATIONS_HIDE_ON_DISPLAY_SWITCH, - Flags.FLAG_NOTIFICATIONS_HUN_ACCESSIBILITY_REFACTOR, Flags.FLAG_NOTIFICATIONS_HUN_SHARED_ANIMATION_VALUES, Flags.FLAG_NOTIFICATIONS_ICON_CONTAINER_REFACTOR, Flags.FLAG_NOTIFICATIONS_LAUNCH_RADIUS, Flags.FLAG_NOTIFICATIONS_LIVE_DATA_STORE_REFACTOR, Flags.FLAG_NOTIFICATIONS_PINNED_HUN_IN_SHADE, Flags.FLAG_NOTIFICATIONS_REDESIGN_FOOTER_VIEW, + Flags.FLAG_NOTIFICATIONS_REDESIGN_GUTS, Flags.FLAG_NOTIFY_PASSWORD_TEXT_VIEW_USER_ACTIVITY_IN_BACKGROUND, Flags.FLAG_NOTIFY_POWER_MANAGER_USER_ACTIVITY_BACKGROUND, - Flags.FLAG_ONGOING_ACTIVITY_CHIPS_ON_DREAM, + Flags.FLAG_ONLY_SHOW_MEDIA_STREAM_SLIDER_IN_SINGLE_VOLUME_MODE, + Flags.FLAG_OUTPUT_SWITCHER_REDESIGN, Flags.FLAG_OVERRIDE_SUPPRESS_OVERLAY_CONDITION, Flags.FLAG_PERMISSION_HELPER_INLINE_UI_RICH_ONGOING, Flags.FLAG_PERMISSION_HELPER_UI_RICH_ONGOING, @@ -2085,102 +2171,104 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_PIN_INPUT_FIELD_STYLED_FOCUS_STATE, Flags.FLAG_PREDICTIVE_BACK_ANIMATE_SHADE, Flags.FLAG_PREDICTIVE_BACK_DELAY_WM_TRANSITION, - Flags.FLAG_PRIVACY_DOT_LIVE_REGION, + Flags.FLAG_PRIORITY_PEOPLE_SECTION, Flags.FLAG_PROMOTE_NOTIFICATIONS_AUTOMATICALLY, + Flags.FLAG_PSS_APP_SELECTOR_RECENTS_SPLIT_SCREEN, Flags.FLAG_PSS_TASK_SWITCHER, - Flags.FLAG_QS_COMPOSE_FRAGMENT_EARLY_EXPANSION, - Flags.FLAG_QS_EDIT_MODE_TABS, - Flags.FLAG_QS_EDIT_MODE_TOOLTIP, + Flags.FLAG_QS_CUSTOM_TILE_CLICK_GUARANTEED_BUG_FIX, Flags.FLAG_QS_NEW_TILES, Flags.FLAG_QS_NEW_TILES_FUTURE, + Flags.FLAG_QS_QUICK_REBIND_ACTIVE_TILES, + Flags.FLAG_QS_REGISTER_SETTING_OBSERVER_ON_BG_THREAD, Flags.FLAG_QS_TILE_DETAILED_VIEW, Flags.FLAG_QS_TILE_FOCUS_STATE, - Flags.FLAG_QS_TILE_TRANSITION_INTERACTION_REFINEMENT, Flags.FLAG_QS_UI_REFACTOR, Flags.FLAG_QS_UI_REFACTOR_COMPOSE_FRAGMENT, - Flags.FLAG_QS_WIFI_CONFIG, Flags.FLAG_RECORD_ISSUE_QS_TILE, Flags.FLAG_REDESIGN_MAGNIFICATION_WINDOW_SIZE, + Flags.FLAG_REFACTOR_GET_CURRENT_USER, Flags.FLAG_REGISTER_BATTERY_CONTROLLER_RECEIVERS_IN_CORESTARTABLE, Flags.FLAG_REGISTER_CONTENT_OBSERVERS_ASYNC, Flags.FLAG_REGISTER_NEW_WALLET_CARD_IN_BACKGROUND, Flags.FLAG_REGISTER_WALLPAPER_NOTIFIER_BACKGROUND, - Flags.FLAG_REMEMBER_VIEW_MODEL_OFF_MAIN_THREAD, - Flags.FLAG_REMOVE_AOD_CAR_MODE, + Flags.FLAG_RELOCK_WITH_POWER_BUTTON_IMMEDIATELY, Flags.FLAG_REMOVE_DREAM_OVERLAY_HIDE_ON_TOUCH, - Flags.FLAG_REMOVE_NEARBY_SHARE_TILE_ANIMATION, Flags.FLAG_REMOVE_UPDATE_LISTENER_IN_QS_ICON_VIEW_IMPL, Flags.FLAG_REST_TO_UNLOCK, Flags.FLAG_RESTART_DREAM_ON_UNOCCLUDE, - Flags.FLAG_RESTRICT_COMMUNAL_APP_WIDGET_HOST_LISTENING, Flags.FLAG_REVAMPED_BOUNCER_MESSAGES, Flags.FLAG_RUN_FINGERPRINT_DETECT_ON_DISMISSIBLE_KEYGUARD, Flags.FLAG_SAVE_AND_RESTORE_MAGNIFICATION_SETTINGS_BUTTONS, Flags.FLAG_SCENE_CONTAINER, - Flags.FLAG_SCREEN_REACTIONS, Flags.FLAG_SCREENSHARE_NOTIFICATION_HIDING_BUG_FIX, Flags.FLAG_SCREENSHOT_ACTION_DISMISS_SYSTEM_WINDOWS, - Flags.FLAG_SCREENSHOT_ANNOUNCE_LIVE_REGION, Flags.FLAG_SCREENSHOT_MULTIDISPLAY_FOCUS_CHANGE, Flags.FLAG_SCREENSHOT_POLICY_SPLIT_AND_DESKTOP_MODE, Flags.FLAG_SCREENSHOT_SCROLL_CROP_VIEW_CRASH_FIX, + Flags.FLAG_SCREENSHOT_UI_CONTROLLER_REFACTOR, Flags.FLAG_SECONDARY_USER_WIDGET_HOST, Flags.FLAG_SETTINGS_EXT_REGISTER_CONTENT_OBSERVER_ON_BG_THREAD, Flags.FLAG_SHADE_EXPANDS_ON_STATUS_BAR_LONG_PRESS, - Flags.FLAG_SHADE_HEADER_BLUR_FONT_COLOR, Flags.FLAG_SHADE_HEADER_FONT_UPDATE, - Flags.FLAG_SHADE_QSVISIBLE_LOGIC, + Flags.FLAG_SHADE_LAUNCH_ACCESSIBILITY, Flags.FLAG_SHADE_WINDOW_GOES_AROUND, Flags.FLAG_SHADERLIB_LOADING_EFFECT_REFACTOR, Flags.FLAG_SHORTCUT_HELPER_KEY_GLYPH, Flags.FLAG_SHOW_AUDIO_SHARING_SLIDER_IN_VOLUME_PANEL, Flags.FLAG_SHOW_CLIPBOARD_INDICATION, Flags.FLAG_SHOW_LOCKED_BY_YOUR_WATCH_KEYGUARD_INDICATOR, + Flags.FLAG_SHOW_TOAST_WHEN_APP_CONTROL_BRIGHTNESS, Flags.FLAG_SIM_PIN_BOUNCER_RESET, + Flags.FLAG_SIM_PIN_RACE_CONDITION_ON_RESTART, + Flags.FLAG_SIM_PIN_USE_SLOT_ID, Flags.FLAG_SKIP_HIDE_SENSITIVE_NOTIF_ANIMATION, + Flags.FLAG_SLICE_BROADCAST_RELAY_IN_BACKGROUND, Flags.FLAG_SLICE_MANAGER_BINDER_CALL_BACKGROUND, + Flags.FLAG_SMARTSPACE_LOCKSCREEN_VIEWMODEL, Flags.FLAG_SMARTSPACE_RELOCATE_TO_BOTTOM, + Flags.FLAG_SMARTSPACE_REMOTEVIEWS_RENDERING_FIX, Flags.FLAG_SMARTSPACE_SWIPE_EVENT_LOGGING_FIX, Flags.FLAG_SMARTSPACE_VIEWPAGER2, Flags.FLAG_SOUNDDOSE_CUSTOMIZATION, Flags.FLAG_SPATIAL_MODEL_APP_PUSHBACK, - Flags.FLAG_SPATIAL_MODEL_BOUNCER_PUSHBACK, - Flags.FLAG_SPATIAL_MODEL_PUSHBACK_IN_SHADER, Flags.FLAG_STABILIZE_HEADS_UP_GROUP_V2, Flags.FLAG_STATUS_BAR_ALWAYS_CHECK_UNDERLYING_NETWORKS, - Flags.FLAG_STATUS_BAR_APP_HANDLE_TRACKING, - Flags.FLAG_STATUS_BAR_CHIP_TO_HUN_ANIMATION, + Flags.FLAG_STATUS_BAR_AUTO_START_SCREEN_RECORD_CHIP, Flags.FLAG_STATUS_BAR_CHIPS_MODERNIZATION, Flags.FLAG_STATUS_BAR_CHIPS_RETURN_ANIMATIONS, Flags.FLAG_STATUS_BAR_FONT_UPDATES, Flags.FLAG_STATUS_BAR_MOBILE_ICON_KAIROS, + Flags.FLAG_STATUS_BAR_MONOCHROME_ICONS_FIX, Flags.FLAG_STATUS_BAR_NO_HUN_BEHAVIOR, Flags.FLAG_STATUS_BAR_POPUP_CHIPS, - Flags.FLAG_STATUS_BAR_PRIVACY_CHIP_ANIMATION_EXEMPTION, Flags.FLAG_STATUS_BAR_ROOT_MODERNIZATION, - Flags.FLAG_STATUS_BAR_RUDIMENTARY_BATTERY, + Flags.FLAG_STATUS_BAR_SHOW_AUDIO_ONLY_PROJECTION_CHIP, Flags.FLAG_STATUS_BAR_SIGNAL_POLICY_REFACTOR, Flags.FLAG_STATUS_BAR_SIGNAL_POLICY_REFACTOR_ETHERNET, Flags.FLAG_STATUS_BAR_STATIC_INOUT_INDICATORS, + Flags.FLAG_STATUS_BAR_STOP_UPDATING_WINDOW_HEIGHT, Flags.FLAG_STATUS_BAR_SWIPE_OVER_CHIP, Flags.FLAG_STATUS_BAR_SWITCH_TO_SPN_FROM_DATA_SPN, - Flags.FLAG_STATUS_BAR_SYSTEM_STATUS_ICONS_IN_COMPOSE, Flags.FLAG_STATUS_BAR_UI_THREAD, Flags.FLAG_STATUS_BAR_WINDOW_NO_CUSTOM_TOUCH, - Flags.FLAG_STUCK_HEARING_DEVICES_QS_TILE_FIX, + Flags.FLAG_STOPPABLE_FGS_SYSTEM_APP, Flags.FLAG_SWITCH_USER_ON_BG, Flags.FLAG_SYSUI_TEAMFOOD, Flags.FLAG_THEME_OVERLAY_CONTROLLER_WAKEFULNESS_DEPRECATION, - Flags.FLAG_THIN_SCREEN_RECORDING_SERVICE, - Flags.FLAG_TRANSITION_RACE_CONDITION_PART2, + Flags.FLAG_TRANSITION_RACE_CONDITION, + Flags.FLAG_TRANSLUCENT_OCCLUDING_ACTIVITY_FIX, Flags.FLAG_TV_GLOBAL_ACTIONS_FOCUS, - Flags.FLAG_UDFPS_SCREEN_OFF_UNLOCK_FLICKER, - Flags.FLAG_UI_RICH_ONGOING_AOD_SKELETON_BG_INFLATION, + Flags.FLAG_UDFPS_VIEW_PERFORMANCE, Flags.FLAG_UNFOLD_ANIMATION_BACKGROUND_PROGRESS, + Flags.FLAG_UNFOLD_LATENCY_TRACKING_FIX, Flags.FLAG_UPDATE_CORNER_RADIUS_ON_DISPLAY_CHANGED, Flags.FLAG_UPDATE_USER_SWITCHER_BACKGROUND, Flags.FLAG_UPDATE_WINDOW_MAGNIFIER_BOTTOM_BOUNDARY, - Flags.FLAG_USE_AAD_PROX_SENSOR_IF_PRESENT, + Flags.FLAG_USE_AAD_PROX_SENSOR, + Flags.FLAG_USE_NOTIF_INFLATION_THREAD_FOR_FOOTER, + Flags.FLAG_USE_NOTIF_INFLATION_THREAD_FOR_ROW, + Flags.FLAG_USE_TRANSITIONS_FOR_KEYGUARD_OCCLUDED, + Flags.FLAG_USE_VOLUME_CONTROLLER, Flags.FLAG_USER_AWARE_SETTINGS_REPOSITORIES, Flags.FLAG_USER_ENCRYPTED_SOURCE, Flags.FLAG_USER_SWITCHER_ADD_SIGN_OUT_OPTION, @@ -2192,29 +2280,31 @@ public class CustomFeatureFlags implements FeatureFlags { private Set mReadOnlyFlagsSet = new HashSet<>( Arrays.asList( Flags.FLAG_ACTIVITY_TRANSITION_USE_LARGEST_WINDOW, + Flags.FLAG_ADD_BLACK_BACKGROUND_FOR_WINDOW_MAGNIFIER, Flags.FLAG_ALWAYS_COMPOSE_QS_UI_FRAGMENT, Flags.FLAG_AMBIENT_TOUCH_MONITOR_LISTEN_TO_DISPLAY_CHANGES, - Flags.FLAG_ANIMATION_LIBRARY_DELAY_LEASH_CLEANUP, Flags.FLAG_APP_CLIPS_BACKLINKS, + Flags.FLAG_APP_SHORTCUT_REMOVAL_FIX, Flags.FLAG_AVALANCHE_REPLACE_HUN_WHEN_CRITICAL, - Flags.FLAG_BACK_BUTTON_ON_BOUNCER, - Flags.FLAG_BOUNCER_LIFECYCLE_FIX, + Flags.FLAG_BIND_KEYGUARD_MEDIA_VISIBILITY, Flags.FLAG_BOUNCER_UI_REVAMP, Flags.FLAG_BOUNCER_UI_REVAMP_2, Flags.FLAG_BP_COLORS, Flags.FLAG_BRIGHTNESS_SLIDER_FOCUS_STATE, + Flags.FLAG_CHECK_LOCKSCREEN_GONE_TRANSITION, Flags.FLAG_CLASSIC_FLAGS_MULTI_USER, - Flags.FLAG_CLIPBOARD_ANNOUNCE_LIVE_REGION, + Flags.FLAG_CLIPBOARD_IMAGE_TIMEOUT, + Flags.FLAG_CLIPBOARD_NONINTERACTIVE_ON_LOCKSCREEN, Flags.FLAG_CLIPBOARD_OVERLAY_MULTIUSER, + Flags.FLAG_CLIPBOARD_SHARED_TRANSITIONS, Flags.FLAG_CLIPBOARD_USE_DESCRIPTION_MIMETYPE, Flags.FLAG_CLOCK_FIDGET_ANIMATION, - Flags.FLAG_CLOCK_MODERNIZATION, Flags.FLAG_COMMUNAL_BOUNCER_DO_NOT_MODIFY_PLUGIN_OPEN, Flags.FLAG_COMMUNAL_EDIT_WIDGETS_ACTIVITY_FINISH_FIX, Flags.FLAG_COMMUNAL_HUB, Flags.FLAG_COMMUNAL_HUB_USE_THREAD_POOL_FOR_WIDGETS, Flags.FLAG_COMMUNAL_RESPONSIVE_GRID, - Flags.FLAG_COMMUNAL_SHADE_TOUCH_HANDLING_FIXES, + Flags.FLAG_COMMUNAL_SCENE_KTF_REFACTOR, Flags.FLAG_COMMUNAL_STANDALONE_SUPPORT, Flags.FLAG_COMMUNAL_TIMER_FLICKER_FIX, Flags.FLAG_COMMUNAL_WIDGET_RESIZING, @@ -2224,34 +2314,29 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_CONT_AUTH_PLUGIN, Flags.FLAG_CONTEXTUAL_TIPS_ASSISTANT_DISMISS_FIX, Flags.FLAG_COROUTINE_TRACING, + Flags.FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER, + Flags.FLAG_DEBUG_LIVE_UPDATES_PROMOTE_ALL, Flags.FLAG_DECOUPLE_VIEW_CONTROLLER_IN_ANIMLIB, + Flags.FLAG_DELAY_SHOW_MAGNIFICATION_BUTTON, Flags.FLAG_DESKTOP_EFFECTS_QS_TILE, - Flags.FLAG_DESKTOP_SCREEN_CAPTURE, + Flags.FLAG_DEVICE_ENTRY_UDFPS_REFACTOR, + Flags.FLAG_DISABLE_BLURRED_SHADE_VISIBLE, Flags.FLAG_DISABLE_CONTEXTUAL_TIPS_FREQUENCY_CHECK, Flags.FLAG_DISABLE_CONTEXTUAL_TIPS_IOS_SWITCHER_CHECK, - Flags.FLAG_DISABLE_DOUBLE_CLICK_SWAP_ON_BOUNCER, - Flags.FLAG_DO_NOT_USE_IMMEDIATE_COROUTINE_DISPATCHER, + Flags.FLAG_DISABLE_SHADE_TRACKPAD_TWO_FINGER_SWIPE, Flags.FLAG_DOUBLE_TAP_TO_SLEEP, - Flags.FLAG_DREAM_BIOMETRIC_PROMPT_FIXES, Flags.FLAG_DREAM_INPUT_SESSION_PILFER_ONCE, Flags.FLAG_DREAM_OVERLAY_BOUNCER_SWIPE_DIRECTION_FILTERING, - Flags.FLAG_DREAM_OVERLAY_UPDATED_UI, - Flags.FLAG_DREAM_PREVIEW_TAP_DISMISS, - Flags.FLAG_DREAM_TRANSITION_FIXES, + Flags.FLAG_DREAM_OVERLAY_UPDATED_FONT, Flags.FLAG_EDGE_BACK_GESTURE_HANDLER_THREAD, Flags.FLAG_EDGEBACK_GESTURE_HANDLER_GET_RUNNING_TASKS_BACKGROUND, Flags.FLAG_ENABLE_BACKGROUND_KEYGUARD_ONDRAWN_CALLBACK, - Flags.FLAG_ENABLE_CONSTRAINT_LAYOUT_LOCKSCREEN_ON_EXTERNAL_DISPLAY, Flags.FLAG_ENABLE_CONTEXTUAL_TIP_FOR_MUTE_VOLUME, Flags.FLAG_ENABLE_CONTEXTUAL_TIP_FOR_POWER_OFF, Flags.FLAG_ENABLE_CONTEXTUAL_TIP_FOR_TAKE_SCREENSHOT, Flags.FLAG_ENABLE_CONTEXTUAL_TIPS, - Flags.FLAG_ENABLE_DESKTOP_GROWTH, Flags.FLAG_ENABLE_EFFICIENT_DISPLAY_REPOSITORY, Flags.FLAG_ENABLE_LAYOUT_TRACING, - Flags.FLAG_ENABLE_MINMODE, - Flags.FLAG_ENABLE_SUGGESTED_DEVICE_UI, - Flags.FLAG_ENABLE_TOP_UI_CONTROLLER, Flags.FLAG_ENABLE_UNDERLAY, Flags.FLAG_ENABLE_VIEW_CAPTURE_TRACING, Flags.FLAG_ENFORCE_BRIGHTNESS_BASE_USER_RESTRICTION, @@ -2260,52 +2345,61 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_EXPAND_HEADS_UP_ON_INLINE_REPLY, Flags.FLAG_EXPANDED_PRIVACY_INDICATORS_ON_LARGE_SCREEN, Flags.FLAG_EXTENDED_APPS_SHORTCUT_CATEGORY, + Flags.FLAG_FACE_MESSAGE_DEFER_UPDATE, Flags.FLAG_FACE_SCANNING_ANIMATION_NPE_FIX, + Flags.FLAG_FASTER_UNLOCK_TRANSITION, Flags.FLAG_FETCH_BOOKMARKS_XML_KEYBOARD_SHORTCUTS, - Flags.FLAG_FIX_DIALOG_LAUNCH_ANIMATION_JANK_LOGGING, + Flags.FLAG_FIX_IMAGE_WALLPAPER_CRASH_SURFACE_ALREADY_RELEASED, Flags.FLAG_FIX_SCREENSHOT_ACTION_DISMISS_SYSTEM_WINDOWS, - Flags.FLAG_FLASHLIGHT_STRENGTH, Flags.FLAG_FLOATING_MENU_ANIMATED_TUCK, + Flags.FLAG_FLOATING_MENU_DISPLAY_CUTOUT_SUPPORT, + Flags.FLAG_FLOATING_MENU_DRAG_TO_EDIT, Flags.FLAG_FLOATING_MENU_DRAG_TO_HIDE, Flags.FLAG_FLOATING_MENU_HEARING_DEVICE_STATUS_ICON, Flags.FLAG_FLOATING_MENU_IME_DISPLACEMENT_ANIMATION, + Flags.FLAG_FLOATING_MENU_NARROW_TARGET_CONTENT_OBSERVER, Flags.FLAG_FLOATING_MENU_NOTIFY_TARGETS_CHANGED_ON_STRICT_DIFF, Flags.FLAG_FLOATING_MENU_OVERLAPS_NAV_BARS_FLAG, Flags.FLAG_FLOATING_MENU_RADII_ANIMATION, - Flags.FLAG_FLOATING_MENU_REMOVE_FULLSCREEN_TAPS, Flags.FLAG_GET_CONNECTED_DEVICE_NAME_UNSYNCHRONIZED, Flags.FLAG_GLANCEABLE_HUB_ALLOW_KEYGUARD_WHEN_DREAMING, Flags.FLAG_GLANCEABLE_HUB_BLURRED_BACKGROUND, Flags.FLAG_GLANCEABLE_HUB_DIRECT_EDIT_MODE, Flags.FLAG_GLANCEABLE_HUB_V2, Flags.FLAG_GLANCEABLE_HUB_V2_RESOURCES, + Flags.FLAG_HAPTICS_FOR_COMPOSE_SLIDERS, Flags.FLAG_HARDWARE_COLOR_STYLES, Flags.FLAG_HEARING_AIDS_QS_TILE_DIALOG, Flags.FLAG_HEARING_DEVICES_DIALOG_RELATED_TOOLS, Flags.FLAG_HIDE_RINGER_BUTTON_IN_SINGLE_VOLUME_MODE, Flags.FLAG_HOME_CONTROLS_DREAM_HSUM, - Flags.FLAG_HSU_BEHAVIOR_CHANGES, - Flags.FLAG_HUB_BLURRED_BY_SHADE_FIX, Flags.FLAG_HUB_EDIT_MODE_TOUCH_ADJUSTMENTS, - Flags.FLAG_HUB_EDIT_MODE_TRANSITION, + Flags.FLAG_HUBMODE_FULLSCREEN_VERTICAL_SWIPE, + Flags.FLAG_HUBMODE_FULLSCREEN_VERTICAL_SWIPE_FIX, Flags.FLAG_ICON_REFRESH_2025, + Flags.FLAG_IGNORE_TOUCHES_NEXT_TO_NOTIFICATION_SHELF, Flags.FLAG_INDICATION_TEXT_A11Y_FIX, - Flags.FLAG_INSTANT_HIDE_SHADE, Flags.FLAG_KEYBOARD_DOCKING_INDICATOR, Flags.FLAG_KEYBOARD_SHORTCUT_HELPER_REWRITE, Flags.FLAG_KEYBOARD_SHORTCUT_HELPER_SHORTCUT_CUSTOMIZER, Flags.FLAG_KEYBOARD_TOUCHPAD_CONTEXTUAL_EDUCATION, Flags.FLAG_KEYGUARD_TRANSITION_FORCE_FINISH_ON_SCREEN_OFF, + Flags.FLAG_KEYGUARD_WM_REORDER_ATMS_CALLS, Flags.FLAG_KEYGUARD_WM_STATE_REFACTOR, Flags.FLAG_LOCKSCREEN_FONT, Flags.FLAG_LOW_LIGHT_CLOCK_DREAM, - Flags.FLAG_LOWLIGHT_CLOCK_SET_BRIGHTNESS, - Flags.FLAG_LOWLIGHT_CLOCK_USES_KEYGUARD_CHARGING_STATUS, Flags.FLAG_MAGNETIC_NOTIFICATION_SWIPES, + Flags.FLAG_MEDIA_CONTROLS_A11Y_COLORS, Flags.FLAG_MEDIA_CONTROLS_BUTTON_MEDIA3, Flags.FLAG_MEDIA_CONTROLS_BUTTON_MEDIA3_PLACEMENT, - Flags.FLAG_MEDIA_CONTROLS_IN_COMPOSE, + Flags.FLAG_MEDIA_CONTROLS_DEVICE_MANAGER_BACKGROUND_EXECUTION, + Flags.FLAG_MEDIA_CONTROLS_DRAWABLES_REUSE_BUGFIX, + Flags.FLAG_MEDIA_CONTROLS_LOCKSCREEN_SHADE_BUG_FIX, Flags.FLAG_MEDIA_CONTROLS_UI_UPDATE, + Flags.FLAG_MEDIA_CONTROLS_UMO_INFLATION_IN_BACKGROUND, + Flags.FLAG_MEDIA_CONTROLS_USER_INITIATED_DELETEINTENT, + Flags.FLAG_MEDIA_LOAD_METADATA_VIA_MEDIA_DATA_LOADER, + Flags.FLAG_MEDIA_LOCKSCREEN_LAUNCH_ANIMATION, Flags.FLAG_MEDIA_PROJECTION_DIALOG_BEHIND_LOCKSCREEN, Flags.FLAG_MEDIA_PROJECTION_GREY_ERROR_TEXT, Flags.FLAG_MEDIA_PROJECTION_REQUEST_ATTRIBUTION_FIX, @@ -2314,7 +2408,6 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_MSDL_FEEDBACK, Flags.FLAG_MULTIUSER_WIFI_PICKER_TRACKER_SUPPORT, Flags.FLAG_NEW_AOD_TRANSITION, - Flags.FLAG_NEW_DOZING_KEYGUARD_STATES, Flags.FLAG_NEW_VOLUME_PANEL, Flags.FLAG_NON_TOUCHSCREEN_DEVICES_BYPASS_FALSING, Flags.FLAG_NOTES_ROLE_QS_TILE, @@ -2331,27 +2424,31 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_NOTIFICATION_COLOR_UPDATE_LOGGER, Flags.FLAG_NOTIFICATION_CONTENT_ALPHA_OPTIMIZATION, Flags.FLAG_NOTIFICATION_FOOTER_BACKGROUND_TINT_OPTIMIZATION, + Flags.FLAG_NOTIFICATION_OVER_EXPANSION_CLIPPING_FIX, + Flags.FLAG_NOTIFICATION_REENTRANT_DISMISS, Flags.FLAG_NOTIFICATION_ROW_ACCESSIBILITY_EXPANDED, Flags.FLAG_NOTIFICATION_ROW_CONTENT_BINDER_REFACTOR, Flags.FLAG_NOTIFICATION_ROW_TRANSPARENCY, + Flags.FLAG_NOTIFICATION_ROW_USER_CONTEXT, Flags.FLAG_NOTIFICATION_SHADE_BLUR, - Flags.FLAG_NOTIFICATION_SHADE_CLOSE_WAITS_FOR_CHILD_ANIMATIONS, Flags.FLAG_NOTIFICATION_SHADE_UI_THREAD, Flags.FLAG_NOTIFICATION_SKIP_SILENT_UPDATES, Flags.FLAG_NOTIFICATION_TRANSPARENT_HEADER_FIX, + Flags.FLAG_NOTIFICATION_VIEW_FLIPPER_PAUSING_V2, Flags.FLAG_NOTIFICATIONS_BACKGROUND_ICONS, Flags.FLAG_NOTIFICATIONS_FOOTER_VISIBILITY_FIX, Flags.FLAG_NOTIFICATIONS_HIDE_ON_DISPLAY_SWITCH, - Flags.FLAG_NOTIFICATIONS_HUN_ACCESSIBILITY_REFACTOR, Flags.FLAG_NOTIFICATIONS_HUN_SHARED_ANIMATION_VALUES, Flags.FLAG_NOTIFICATIONS_ICON_CONTAINER_REFACTOR, Flags.FLAG_NOTIFICATIONS_LAUNCH_RADIUS, Flags.FLAG_NOTIFICATIONS_LIVE_DATA_STORE_REFACTOR, Flags.FLAG_NOTIFICATIONS_PINNED_HUN_IN_SHADE, Flags.FLAG_NOTIFICATIONS_REDESIGN_FOOTER_VIEW, + Flags.FLAG_NOTIFICATIONS_REDESIGN_GUTS, Flags.FLAG_NOTIFY_PASSWORD_TEXT_VIEW_USER_ACTIVITY_IN_BACKGROUND, Flags.FLAG_NOTIFY_POWER_MANAGER_USER_ACTIVITY_BACKGROUND, - Flags.FLAG_ONGOING_ACTIVITY_CHIPS_ON_DREAM, + Flags.FLAG_ONLY_SHOW_MEDIA_STREAM_SLIDER_IN_SINGLE_VOLUME_MODE, + Flags.FLAG_OUTPUT_SWITCHER_REDESIGN, Flags.FLAG_OVERRIDE_SUPPRESS_OVERLAY_CONDITION, Flags.FLAG_PERMISSION_HELPER_INLINE_UI_RICH_ONGOING, Flags.FLAG_PERMISSION_HELPER_UI_RICH_ONGOING, @@ -2359,102 +2456,104 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_PIN_INPUT_FIELD_STYLED_FOCUS_STATE, Flags.FLAG_PREDICTIVE_BACK_ANIMATE_SHADE, Flags.FLAG_PREDICTIVE_BACK_DELAY_WM_TRANSITION, - Flags.FLAG_PRIVACY_DOT_LIVE_REGION, + Flags.FLAG_PRIORITY_PEOPLE_SECTION, Flags.FLAG_PROMOTE_NOTIFICATIONS_AUTOMATICALLY, + Flags.FLAG_PSS_APP_SELECTOR_RECENTS_SPLIT_SCREEN, Flags.FLAG_PSS_TASK_SWITCHER, - Flags.FLAG_QS_COMPOSE_FRAGMENT_EARLY_EXPANSION, - Flags.FLAG_QS_EDIT_MODE_TABS, - Flags.FLAG_QS_EDIT_MODE_TOOLTIP, + Flags.FLAG_QS_CUSTOM_TILE_CLICK_GUARANTEED_BUG_FIX, Flags.FLAG_QS_NEW_TILES, Flags.FLAG_QS_NEW_TILES_FUTURE, + Flags.FLAG_QS_QUICK_REBIND_ACTIVE_TILES, + Flags.FLAG_QS_REGISTER_SETTING_OBSERVER_ON_BG_THREAD, Flags.FLAG_QS_TILE_DETAILED_VIEW, Flags.FLAG_QS_TILE_FOCUS_STATE, - Flags.FLAG_QS_TILE_TRANSITION_INTERACTION_REFINEMENT, Flags.FLAG_QS_UI_REFACTOR, Flags.FLAG_QS_UI_REFACTOR_COMPOSE_FRAGMENT, - Flags.FLAG_QS_WIFI_CONFIG, Flags.FLAG_RECORD_ISSUE_QS_TILE, Flags.FLAG_REDESIGN_MAGNIFICATION_WINDOW_SIZE, + Flags.FLAG_REFACTOR_GET_CURRENT_USER, Flags.FLAG_REGISTER_BATTERY_CONTROLLER_RECEIVERS_IN_CORESTARTABLE, Flags.FLAG_REGISTER_CONTENT_OBSERVERS_ASYNC, Flags.FLAG_REGISTER_NEW_WALLET_CARD_IN_BACKGROUND, Flags.FLAG_REGISTER_WALLPAPER_NOTIFIER_BACKGROUND, - Flags.FLAG_REMEMBER_VIEW_MODEL_OFF_MAIN_THREAD, - Flags.FLAG_REMOVE_AOD_CAR_MODE, + Flags.FLAG_RELOCK_WITH_POWER_BUTTON_IMMEDIATELY, Flags.FLAG_REMOVE_DREAM_OVERLAY_HIDE_ON_TOUCH, - Flags.FLAG_REMOVE_NEARBY_SHARE_TILE_ANIMATION, Flags.FLAG_REMOVE_UPDATE_LISTENER_IN_QS_ICON_VIEW_IMPL, Flags.FLAG_REST_TO_UNLOCK, Flags.FLAG_RESTART_DREAM_ON_UNOCCLUDE, - Flags.FLAG_RESTRICT_COMMUNAL_APP_WIDGET_HOST_LISTENING, Flags.FLAG_REVAMPED_BOUNCER_MESSAGES, Flags.FLAG_RUN_FINGERPRINT_DETECT_ON_DISMISSIBLE_KEYGUARD, Flags.FLAG_SAVE_AND_RESTORE_MAGNIFICATION_SETTINGS_BUTTONS, Flags.FLAG_SCENE_CONTAINER, - Flags.FLAG_SCREEN_REACTIONS, Flags.FLAG_SCREENSHARE_NOTIFICATION_HIDING_BUG_FIX, Flags.FLAG_SCREENSHOT_ACTION_DISMISS_SYSTEM_WINDOWS, - Flags.FLAG_SCREENSHOT_ANNOUNCE_LIVE_REGION, Flags.FLAG_SCREENSHOT_MULTIDISPLAY_FOCUS_CHANGE, Flags.FLAG_SCREENSHOT_POLICY_SPLIT_AND_DESKTOP_MODE, Flags.FLAG_SCREENSHOT_SCROLL_CROP_VIEW_CRASH_FIX, + Flags.FLAG_SCREENSHOT_UI_CONTROLLER_REFACTOR, Flags.FLAG_SECONDARY_USER_WIDGET_HOST, Flags.FLAG_SETTINGS_EXT_REGISTER_CONTENT_OBSERVER_ON_BG_THREAD, Flags.FLAG_SHADE_EXPANDS_ON_STATUS_BAR_LONG_PRESS, - Flags.FLAG_SHADE_HEADER_BLUR_FONT_COLOR, Flags.FLAG_SHADE_HEADER_FONT_UPDATE, - Flags.FLAG_SHADE_QSVISIBLE_LOGIC, + Flags.FLAG_SHADE_LAUNCH_ACCESSIBILITY, Flags.FLAG_SHADE_WINDOW_GOES_AROUND, Flags.FLAG_SHADERLIB_LOADING_EFFECT_REFACTOR, Flags.FLAG_SHORTCUT_HELPER_KEY_GLYPH, Flags.FLAG_SHOW_AUDIO_SHARING_SLIDER_IN_VOLUME_PANEL, Flags.FLAG_SHOW_CLIPBOARD_INDICATION, Flags.FLAG_SHOW_LOCKED_BY_YOUR_WATCH_KEYGUARD_INDICATOR, + Flags.FLAG_SHOW_TOAST_WHEN_APP_CONTROL_BRIGHTNESS, Flags.FLAG_SIM_PIN_BOUNCER_RESET, + Flags.FLAG_SIM_PIN_RACE_CONDITION_ON_RESTART, + Flags.FLAG_SIM_PIN_USE_SLOT_ID, Flags.FLAG_SKIP_HIDE_SENSITIVE_NOTIF_ANIMATION, + Flags.FLAG_SLICE_BROADCAST_RELAY_IN_BACKGROUND, Flags.FLAG_SLICE_MANAGER_BINDER_CALL_BACKGROUND, + Flags.FLAG_SMARTSPACE_LOCKSCREEN_VIEWMODEL, Flags.FLAG_SMARTSPACE_RELOCATE_TO_BOTTOM, + Flags.FLAG_SMARTSPACE_REMOTEVIEWS_RENDERING_FIX, Flags.FLAG_SMARTSPACE_SWIPE_EVENT_LOGGING_FIX, Flags.FLAG_SMARTSPACE_VIEWPAGER2, Flags.FLAG_SOUNDDOSE_CUSTOMIZATION, Flags.FLAG_SPATIAL_MODEL_APP_PUSHBACK, - Flags.FLAG_SPATIAL_MODEL_BOUNCER_PUSHBACK, - Flags.FLAG_SPATIAL_MODEL_PUSHBACK_IN_SHADER, Flags.FLAG_STABILIZE_HEADS_UP_GROUP_V2, Flags.FLAG_STATUS_BAR_ALWAYS_CHECK_UNDERLYING_NETWORKS, - Flags.FLAG_STATUS_BAR_APP_HANDLE_TRACKING, - Flags.FLAG_STATUS_BAR_CHIP_TO_HUN_ANIMATION, + Flags.FLAG_STATUS_BAR_AUTO_START_SCREEN_RECORD_CHIP, Flags.FLAG_STATUS_BAR_CHIPS_MODERNIZATION, Flags.FLAG_STATUS_BAR_CHIPS_RETURN_ANIMATIONS, Flags.FLAG_STATUS_BAR_FONT_UPDATES, Flags.FLAG_STATUS_BAR_MOBILE_ICON_KAIROS, + Flags.FLAG_STATUS_BAR_MONOCHROME_ICONS_FIX, Flags.FLAG_STATUS_BAR_NO_HUN_BEHAVIOR, Flags.FLAG_STATUS_BAR_POPUP_CHIPS, - Flags.FLAG_STATUS_BAR_PRIVACY_CHIP_ANIMATION_EXEMPTION, Flags.FLAG_STATUS_BAR_ROOT_MODERNIZATION, - Flags.FLAG_STATUS_BAR_RUDIMENTARY_BATTERY, + Flags.FLAG_STATUS_BAR_SHOW_AUDIO_ONLY_PROJECTION_CHIP, Flags.FLAG_STATUS_BAR_SIGNAL_POLICY_REFACTOR, Flags.FLAG_STATUS_BAR_SIGNAL_POLICY_REFACTOR_ETHERNET, Flags.FLAG_STATUS_BAR_STATIC_INOUT_INDICATORS, + Flags.FLAG_STATUS_BAR_STOP_UPDATING_WINDOW_HEIGHT, Flags.FLAG_STATUS_BAR_SWIPE_OVER_CHIP, Flags.FLAG_STATUS_BAR_SWITCH_TO_SPN_FROM_DATA_SPN, - Flags.FLAG_STATUS_BAR_SYSTEM_STATUS_ICONS_IN_COMPOSE, Flags.FLAG_STATUS_BAR_UI_THREAD, Flags.FLAG_STATUS_BAR_WINDOW_NO_CUSTOM_TOUCH, - Flags.FLAG_STUCK_HEARING_DEVICES_QS_TILE_FIX, + Flags.FLAG_STOPPABLE_FGS_SYSTEM_APP, Flags.FLAG_SWITCH_USER_ON_BG, Flags.FLAG_SYSUI_TEAMFOOD, Flags.FLAG_THEME_OVERLAY_CONTROLLER_WAKEFULNESS_DEPRECATION, - Flags.FLAG_THIN_SCREEN_RECORDING_SERVICE, - Flags.FLAG_TRANSITION_RACE_CONDITION_PART2, + Flags.FLAG_TRANSITION_RACE_CONDITION, + Flags.FLAG_TRANSLUCENT_OCCLUDING_ACTIVITY_FIX, Flags.FLAG_TV_GLOBAL_ACTIONS_FOCUS, - Flags.FLAG_UDFPS_SCREEN_OFF_UNLOCK_FLICKER, - Flags.FLAG_UI_RICH_ONGOING_AOD_SKELETON_BG_INFLATION, + Flags.FLAG_UDFPS_VIEW_PERFORMANCE, Flags.FLAG_UNFOLD_ANIMATION_BACKGROUND_PROGRESS, + Flags.FLAG_UNFOLD_LATENCY_TRACKING_FIX, Flags.FLAG_UPDATE_CORNER_RADIUS_ON_DISPLAY_CHANGED, Flags.FLAG_UPDATE_USER_SWITCHER_BACKGROUND, Flags.FLAG_UPDATE_WINDOW_MAGNIFIER_BOTTOM_BOUNDARY, - Flags.FLAG_USE_AAD_PROX_SENSOR_IF_PRESENT, + Flags.FLAG_USE_AAD_PROX_SENSOR, + Flags.FLAG_USE_NOTIF_INFLATION_THREAD_FOR_FOOTER, + Flags.FLAG_USE_NOTIF_INFLATION_THREAD_FOR_ROW, + Flags.FLAG_USE_TRANSITIONS_FOR_KEYGUARD_OCCLUDED, + Flags.FLAG_USE_VOLUME_CONTROLLER, Flags.FLAG_USER_AWARE_SETTINGS_REPOSITORIES, Flags.FLAG_USER_ENCRYPTED_SOURCE, Flags.FLAG_USER_SWITCHER_ADD_SIGN_OUT_OPTION, diff --git a/flags/src/com/android/systemui/FeatureFlags.java b/flags/src/com/android/systemui/FeatureFlags.java index 6fe1e4c4ac..681e59c0eb 100644 --- a/flags/src/com/android/systemui/FeatureFlags.java +++ b/flags/src/com/android/systemui/FeatureFlags.java @@ -1,42 +1,51 @@ package com.android.systemui; - +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public interface FeatureFlags { + boolean activityTransitionUseLargestWindow(); + + boolean addBlackBackgroundForWindowMagnifier(); + + + boolean alwaysComposeQsUiFragment(); + boolean ambientTouchMonitorListenToDisplayChanges(); - boolean animationLibraryDelayLeashCleanup(); - boolean appClipsBacklinks(); + + boolean appShortcutRemovalFix(); + + + boolean avalancheReplaceHunWhenCritical(); - boolean backButtonOnBouncer(); + boolean bindKeyguardMediaVisibility(); - boolean bouncerLifecycleFix(); - - boolean bouncerUiRevamp(); + boolean bouncerUiRevamp2(); + boolean bpColors(); @@ -44,16 +53,31 @@ public interface FeatureFlags { boolean brightnessSliderFocusState(); + + boolean checkLockscreenGoneTransition(); + + + boolean classicFlagsMultiUser(); - boolean clipboardAnnounceLiveRegion(); + + boolean clipboardImageTimeout(); + + + + boolean clipboardNoninteractiveOnLockscreen(); boolean clipboardOverlayMultiuser(); + + boolean clipboardSharedTransitions(); + + + boolean clipboardUseDescriptionMimetype(); @@ -62,18 +86,18 @@ public interface FeatureFlags { - boolean clockModernization(); - - boolean communalBouncerDoNotModifyPluginOpen(); + boolean communalEditWidgetsActivityFinishFix(); + boolean communalHub(); + boolean communalHubUseThreadPoolForWidgets(); @@ -81,19 +105,23 @@ public interface FeatureFlags { boolean communalResponsiveGrid(); - boolean communalShadeTouchHandlingFixes(); + + boolean communalSceneKtfRefactor(); boolean communalStandaloneSupport(); + boolean communalTimerFlickerFix(); + boolean communalWidgetResizing(); + boolean communalWidgetTrampolineFix(); @@ -105,9 +133,11 @@ public interface FeatureFlags { boolean confineNotificationTouchToViewWidth(); + boolean contAuthPlugin(); + boolean contextualTipsAssistantDismissFix(); @@ -116,15 +146,31 @@ public interface FeatureFlags { + boolean createWindowlessWindowMagnifier(); + + + + boolean debugLiveUpdatesPromoteAll(); + + + boolean decoupleViewControllerInAnimlib(); + boolean delayShowMagnificationButton(); + + + boolean desktopEffectsQsTile(); - boolean desktopScreenCapture(); + boolean deviceEntryUdfpsRefactor(); + + + + boolean disableBlurredShadeVisible(); @@ -136,66 +182,54 @@ public interface FeatureFlags { - boolean disableDoubleClickSwapOnBouncer(); - - - - boolean doNotUseImmediateCoroutineDispatcher(); + boolean disableShadeTrackpadTwoFingerSwipe(); boolean doubleTapToSleep(); - boolean dreamBiometricPromptFixes(); - boolean dreamInputSessionPilferOnce(); + boolean dreamOverlayBouncerSwipeDirectionFiltering(); - boolean dreamOverlayUpdatedUi(); - - boolean dreamPreviewTapDismiss(); - - - - boolean dreamTransitionFixes(); + boolean dreamOverlayUpdatedFont(); boolean edgeBackGestureHandlerThread(); + boolean edgebackGestureHandlerGetRunningTasksBackground(); + boolean enableBackgroundKeyguardOndrawnCallback(); - boolean enableConstraintLayoutLockscreenOnExternalDisplay(); - - boolean enableContextualTipForMuteVolume(); + boolean enableContextualTipForPowerOff(); + boolean enableContextualTipForTakeScreenshot(); + boolean enableContextualTips(); - boolean enableDesktopGrowth(); - - boolean enableEfficientDisplayRepository(); @@ -204,17 +238,6 @@ public interface FeatureFlags { - boolean enableMinmode(); - - - - boolean enableSuggestedDeviceUi(); - - - boolean enableTopUiController(); - - - boolean enableUnderlay(); @@ -222,6 +245,7 @@ public interface FeatureFlags { boolean enableViewCaptureTracing(); + boolean enforceBrightnessBaseUserRestriction(); @@ -229,9 +253,11 @@ public interface FeatureFlags { boolean exampleFlag(); + boolean expandCollapsePrivacyDialog(); + boolean expandHeadsUpOnInlineReply(); @@ -243,27 +269,43 @@ public interface FeatureFlags { boolean extendedAppsShortcutCategory(); + + boolean faceMessageDeferUpdate(); + + + boolean faceScanningAnimationNpeFix(); + + boolean fasterUnlockTransition(); + + + boolean fetchBookmarksXmlKeyboardShortcuts(); - boolean fixDialogLaunchAnimationJankLogging(); + + boolean fixImageWallpaperCrashSurfaceAlreadyReleased(); + boolean fixScreenshotActionDismissSystemWindows(); - boolean flashlightStrength(); - - - boolean floatingMenuAnimatedTuck(); + boolean floatingMenuDisplayCutoutSupport(); + + + + boolean floatingMenuDragToEdit(); + + + boolean floatingMenuDragToHide(); @@ -275,6 +317,11 @@ public interface FeatureFlags { boolean floatingMenuImeDisplacementAnimation(); + + boolean floatingMenuNarrowTargetContentObserver(); + + + boolean floatingMenuNotifyTargetsChangedOnStrictDiff(); @@ -287,9 +334,6 @@ public interface FeatureFlags { - boolean floatingMenuRemoveFullscreenTaps(); - - boolean getConnectedDeviceNameUnsynchronized(); @@ -313,12 +357,19 @@ public interface FeatureFlags { boolean glanceableHubV2Resources(); + + boolean hapticsForComposeSliders(); + + + boolean hardwareColorStyles(); + boolean hearingAidsQsTileDialog(); + boolean hearingDevicesDialogRelatedTools(); @@ -326,43 +377,47 @@ public interface FeatureFlags { boolean hideRingerButtonInSingleVolumeMode(); + boolean homeControlsDreamHsum(); - boolean hsuBehaviorChanges(); - - - boolean hubBlurredByShadeFix(); - - - boolean hubEditModeTouchAdjustments(); - boolean hubEditModeTransition(); + boolean hubmodeFullscreenVerticalSwipe(); + + + + boolean hubmodeFullscreenVerticalSwipeFix(); + boolean iconRefresh2025(); + + boolean ignoreTouchesNextToNotificationShelf(); + + + boolean indicationTextA11yFix(); - boolean instantHideShade(); - - boolean keyboardDockingIndicator(); + boolean keyboardShortcutHelperRewrite(); + boolean keyboardShortcutHelperShortcutCustomizer(); + boolean keyboardTouchpadContextualEducation(); @@ -371,9 +426,14 @@ public interface FeatureFlags { + boolean keyguardWmReorderAtmsCalls(); + + + boolean keyguardWmStateRefactor(); + boolean lockscreenFont(); @@ -381,16 +441,15 @@ public interface FeatureFlags { boolean lowLightClockDream(); - boolean lowlightClockSetBrightness(); - - - boolean lowlightClockUsesKeyguardChargingStatus(); - boolean magneticNotificationSwipes(); + boolean mediaControlsA11yColors(); + + + boolean mediaControlsButtonMedia3(); @@ -399,15 +458,42 @@ public interface FeatureFlags { - boolean mediaControlsInCompose(); + boolean mediaControlsDeviceManagerBackgroundExecution(); + + + + boolean mediaControlsDrawablesReuseBugfix(); + + + + boolean mediaControlsLockscreenShadeBugFix(); + boolean mediaControlsUiUpdate(); + + boolean mediaControlsUmoInflationInBackground(); + + + + boolean mediaControlsUserInitiatedDeleteintent(); + + + + boolean mediaLoadMetadataViaMediaDataLoader(); + + + + boolean mediaLockscreenLaunchAnimation(); + + + boolean mediaProjectionDialogBehindLockscreen(); + boolean mediaProjectionGreyErrorText(); @@ -419,9 +505,11 @@ public interface FeatureFlags { boolean modesUiDialogPaging(); + boolean moveTransitionAnimationLayer(); + boolean msdlFeedback(); @@ -429,13 +517,11 @@ public interface FeatureFlags { boolean multiuserWifiPickerTrackerSupport(); + boolean newAodTransition(); - boolean newDozingKeyguardStates(); - - boolean newVolumePanel(); @@ -455,21 +541,27 @@ public interface FeatureFlags { boolean notificationAmbientSuppressionAfterInflation(); + boolean notificationAnimatedActionsTreatment(); + boolean notificationAppearNonlinear(); + boolean notificationAsyncGroupHeaderInflation(); + boolean notificationAsyncHybridViewInflation(); + boolean notificationAvalancheSuppression(); + boolean notificationAvalancheThrottleHun(); @@ -485,6 +577,7 @@ public interface FeatureFlags { boolean notificationColorUpdateLogger(); + boolean notificationContentAlphaOptimization(); @@ -492,21 +585,34 @@ public interface FeatureFlags { boolean notificationFooterBackgroundTintOptimization(); + + boolean notificationOverExpansionClippingFix(); + + + + boolean notificationReentrantDismiss(); + + + boolean notificationRowAccessibilityExpanded(); + boolean notificationRowContentBinderRefactor(); + boolean notificationRowTransparency(); + + boolean notificationRowUserContext(); + + + boolean notificationShadeBlur(); - boolean notificationShadeCloseWaitsForChildAnimations(); - - boolean notificationShadeUiThread(); @@ -515,12 +621,19 @@ public interface FeatureFlags { boolean notificationSkipSilentUpdates(); + boolean notificationTransparentHeaderFix(); + + boolean notificationViewFlipperPausingV2(); + + + boolean notificationsBackgroundIcons(); + boolean notificationsFooterVisibilityFix(); @@ -529,35 +642,47 @@ public interface FeatureFlags { - boolean notificationsHunAccessibilityRefactor(); - - boolean notificationsHunSharedAnimationValues(); + boolean notificationsIconContainerRefactor(); + boolean notificationsLaunchRadius(); + boolean notificationsLiveDataStoreRefactor(); + boolean notificationsPinnedHunInShade(); + boolean notificationsRedesignFooterView(); + + boolean notificationsRedesignGuts(); + + + boolean notifyPasswordTextViewUserActivityInBackground(); + boolean notifyPowerManagerUserActivityBackground(); - boolean ongoingActivityChipsOnDream(); + boolean onlyShowMediaStreamSliderInSingleVolumeMode(); + + + + boolean outputSwitcherRedesign(); @@ -568,12 +693,15 @@ public interface FeatureFlags { boolean permissionHelperInlineUiRichOngoing(); + boolean permissionHelperUiRichOngoing(); + boolean physicalNotificationMovement(); + boolean pinInputFieldStyledFocusState(); @@ -586,7 +714,7 @@ public interface FeatureFlags { - boolean privacyDotLiveRegion(); + boolean priorityPeopleSection(); @@ -594,18 +722,15 @@ public interface FeatureFlags { + boolean pssAppSelectorRecentsSplitScreen(); + + + boolean pssTaskSwitcher(); - boolean qsComposeFragmentEarlyExpansion(); - - - - boolean qsEditModeTabs(); - - - boolean qsEditModeTooltip(); + boolean qsCustomTileClickGuaranteedBugFix(); @@ -617,27 +742,30 @@ public interface FeatureFlags { + boolean qsQuickRebindActiveTiles(); + + + + boolean qsRegisterSettingObserverOnBgThread(); + + + boolean qsTileDetailedView(); + boolean qsTileFocusState(); - boolean qsTileTransitionInteractionRefinement(); - - - boolean qsUiRefactor(); + boolean qsUiRefactorComposeFragment(); - boolean qsWifiConfig(); - - boolean recordIssueQsTile(); @@ -646,33 +774,34 @@ public interface FeatureFlags { + boolean refactorGetCurrentUser(); + + + boolean registerBatteryControllerReceiversInCorestartable(); + boolean registerContentObserversAsync(); + boolean registerNewWalletCardInBackground(); + boolean registerWallpaperNotifierBackground(); - boolean rememberViewModelOffMainThread(); + boolean relockWithPowerButtonImmediately(); - boolean removeAodCarMode(); - - boolean removeDreamOverlayHideOnTouch(); - boolean removeNearbyShareTileAnimation(); - - boolean removeUpdateListenerInQsIconViewImpl(); @@ -684,8 +813,6 @@ public interface FeatureFlags { boolean restartDreamOnUnocclude(); - boolean restrictCommunalAppWidgetHostListening(); - boolean revampedBouncerMessages(); @@ -694,6 +821,7 @@ public interface FeatureFlags { boolean runFingerprintDetectOnDismissibleKeyguard(); + boolean saveAndRestoreMagnificationSettingsButtons(); @@ -702,9 +830,6 @@ public interface FeatureFlags { - boolean screenReactions(); - - boolean screenshareNotificationHidingBugFix(); @@ -712,49 +837,55 @@ public interface FeatureFlags { boolean screenshotActionDismissSystemWindows(); - boolean screenshotAnnounceLiveRegion(); - - boolean screenshotMultidisplayFocusChange(); + boolean screenshotPolicySplitAndDesktopMode(); + boolean screenshotScrollCropViewCrashFix(); + boolean screenshotUiControllerRefactor(); + + + boolean secondaryUserWidgetHost(); + boolean settingsExtRegisterContentObserverOnBgThread(); + boolean shadeExpandsOnStatusBarLongPress(); - boolean shadeHeaderBlurFontColor(); - boolean shadeHeaderFontUpdate(); - boolean shadeQsvisibleLogic(); + boolean shadeLaunchAccessibility(); boolean shadeWindowGoesAround(); + boolean shaderlibLoadingEffectRefactor(); + boolean shortcutHelperKeyGlyph(); + boolean showAudioSharingSliderInVolumePanel(); @@ -766,52 +897,75 @@ public interface FeatureFlags { boolean showLockedByYourWatchKeyguardIndicator(); + + boolean showToastWhenAppControlBrightness(); + + + boolean simPinBouncerReset(); + + boolean simPinRaceConditionOnRestart(); + + + + boolean simPinUseSlotId(); + + + boolean skipHideSensitiveNotifAnimation(); + + boolean sliceBroadcastRelayInBackground(); + + + boolean sliceManagerBinderCallBackground(); + boolean smartspaceLockscreenViewmodel(); + + + boolean smartspaceRelocateToBottom(); + + boolean smartspaceRemoteviewsRenderingFix(); + + + boolean smartspaceSwipeEventLoggingFix(); + boolean smartspaceViewpager2(); + boolean sounddoseCustomization(); + boolean spatialModelAppPushback(); - boolean spatialModelBouncerPushback(); - - - boolean spatialModelPushbackInShader(); - - boolean stabilizeHeadsUpGroupV2(); + boolean statusBarAlwaysCheckUnderlyingNetworks(); - boolean statusBarAppHandleTracking(); + boolean statusBarAutoStartScreenRecordChip(); - boolean statusBarChipToHunAnimation(); - - boolean statusBarChipsModernization(); @@ -819,6 +973,7 @@ public interface FeatureFlags { boolean statusBarChipsReturnAnimations(); + boolean statusBarFontUpdates(); @@ -826,6 +981,11 @@ public interface FeatureFlags { boolean statusBarMobileIconKairos(); + + boolean statusBarMonochromeIconsFix(); + + + boolean statusBarNoHunBehavior(); @@ -833,19 +993,19 @@ public interface FeatureFlags { boolean statusBarPopupChips(); - boolean statusBarPrivacyChipAnimationExemption(); - boolean statusBarRootModernization(); - boolean statusBarRudimentaryBattery(); + boolean statusBarShowAudioOnlyProjectionChip(); + boolean statusBarSignalPolicyRefactor(); + boolean statusBarSignalPolicyRefactorEthernet(); @@ -853,24 +1013,29 @@ public interface FeatureFlags { boolean statusBarStaticInoutIndicators(); + + boolean statusBarStopUpdatingWindowHeight(); + + + boolean statusBarSwipeOverChip(); + boolean statusBarSwitchToSpnFromDataSpn(); - boolean statusBarSystemStatusIconsInCompose(); - - - boolean statusBarUiThread(); + boolean statusBarWindowNoCustomTouch(); - boolean stuckHearingDevicesQsTileFix(); + + boolean stoppableFgsSystemApp(); + boolean switchUserOnBg(); @@ -885,40 +1050,66 @@ public interface FeatureFlags { - boolean thinScreenRecordingService(); + boolean transitionRaceCondition(); - boolean transitionRaceConditionPart2(); + + boolean translucentOccludingActivityFix(); + boolean tvGlobalActionsFocus(); - boolean udfpsScreenOffUnlockFlicker(); + boolean udfpsViewPerformance(); - boolean uiRichOngoingAodSkeletonBgInflation(); boolean unfoldAnimationBackgroundProgress(); + + boolean unfoldLatencyTrackingFix(); + + + boolean updateCornerRadiusOnDisplayChanged(); + boolean updateUserSwitcherBackground(); + boolean updateWindowMagnifierBottomBoundary(); - boolean useAadProxSensorIfPresent(); + boolean useAadProxSensor(); + + + + boolean useNotifInflationThreadForFooter(); + + + + boolean useNotifInflationThreadForRow(); + + + + boolean useTransitionsForKeyguardOccluded(); + + + + boolean useVolumeController(); + boolean userAwareSettingsRepositories(); + boolean userEncryptedSource(); @@ -926,8 +1117,10 @@ public interface FeatureFlags { boolean userSwitcherAddSignOutOption(); + boolean visualInterruptionsRefactor(); + boolean volumeRedesign(); } diff --git a/flags/src/com/android/systemui/FeatureFlagsImpl.java b/flags/src/com/android/systemui/FeatureFlagsImpl.java index 2707adb4c3..7dbc6b650e 100644 --- a/flags/src/com/android/systemui/FeatureFlagsImpl.java +++ b/flags/src/com/android/systemui/FeatureFlagsImpl.java @@ -1,5 +1,5 @@ package com.android.systemui; - +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public final class FeatureFlagsImpl implements FeatureFlags { @Override @@ -12,13 +12,20 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean alwaysComposeQsUiFragment() { + public boolean addBlackBackgroundForWindowMagnifier() { return true; } @Override + public boolean alwaysComposeQsUiFragment() { + return false; + } + + @Override + + public boolean ambientTouchMonitorListenToDisplayChanges() { return true; } @@ -26,13 +33,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean animationLibraryDelayLeashCleanup() { - return true; - } - - @Override - - public boolean appClipsBacklinks() { return true; } @@ -40,43 +40,43 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean avalancheReplaceHunWhenCritical() { + public boolean appShortcutRemovalFix() { return true; } @Override - public boolean backButtonOnBouncer() { + public boolean avalancheReplaceHunWhenCritical() { return false; } @Override - public boolean bouncerLifecycleFix() { - return false; + public boolean bindKeyguardMediaVisibility() { + return true; } @Override public boolean bouncerUiRevamp() { - return true; + return false; } @Override public boolean bouncerUiRevamp2() { - return true; + return false; } @Override public boolean bpColors() { - return true; + return false; } @Override @@ -89,6 +89,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean checkLockscreenGoneTransition() { + return true; + } + + @Override + + public boolean classicFlagsMultiUser() { return true; } @@ -96,7 +103,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean clipboardAnnounceLiveRegion() { + public boolean clipboardImageTimeout() { + return true; + } + + @Override + + + public boolean clipboardNoninteractiveOnLockscreen() { return true; } @@ -110,6 +124,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean clipboardSharedTransitions() { + return true; + } + + @Override + + public boolean clipboardUseDescriptionMimetype() { return true; } @@ -124,13 +145,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean clockModernization() { - return false; - } - - @Override - - public boolean communalBouncerDoNotModifyPluginOpen() { return true; } @@ -166,7 +180,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean communalShadeTouchHandlingFixes() { + public boolean communalSceneKtfRefactor() { return true; } @@ -216,7 +230,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean contAuthPlugin() { - return true; + return false; } @Override @@ -236,6 +250,20 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean createWindowlessWindowMagnifier() { + return true; + } + + @Override + + + public boolean debugLiveUpdatesPromoteAll() { + return false; + } + + @Override + + public boolean decoupleViewControllerInAnimlib() { return false; } @@ -243,6 +271,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean delayShowMagnificationButton() { + return true; + } + + @Override + + public boolean desktopEffectsQsTile() { return false; } @@ -250,7 +285,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean desktopScreenCapture() { + public boolean deviceEntryUdfpsRefactor() { + return true; + } + + @Override + + + public boolean disableBlurredShadeVisible() { return false; } @@ -271,14 +313,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean disableDoubleClickSwapOnBouncer() { - return false; - } - - @Override - - - public boolean doNotUseImmediateCoroutineDispatcher() { + public boolean disableShadeTrackpadTwoFingerSwipe() { return false; } @@ -292,13 +327,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean dreamBiometricPromptFixes() { - return true; - } - - @Override - - public boolean dreamInputSessionPilferOnce() { return true; } @@ -313,21 +341,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean dreamOverlayUpdatedUi() { - return true; - } - - @Override - - - public boolean dreamPreviewTapDismiss() { - return true; - } - - @Override - - - public boolean dreamTransitionFixes() { + public boolean dreamOverlayUpdatedFont() { return false; } @@ -355,13 +369,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableConstraintLayoutLockscreenOnExternalDisplay() { - return false; - } - - @Override - - public boolean enableContextualTipForMuteVolume() { return true; } @@ -390,13 +397,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableDesktopGrowth() { - return false; - } - - @Override - - public boolean enableEfficientDisplayRepository() { return true; } @@ -411,27 +411,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableMinmode() { - return false; - } - - @Override - - - public boolean enableSuggestedDeviceUi() { - return false; - } - - @Override - - - public boolean enableTopUiController() { - return true; - } - - @Override - - public boolean enableUnderlay() { return false; } @@ -488,6 +467,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean faceMessageDeferUpdate() { + return true; + } + + @Override + + public boolean faceScanningAnimationNpeFix() { return true; } @@ -495,6 +481,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean fasterUnlockTransition() { + return true; + } + + @Override + + public boolean fetchBookmarksXmlKeyboardShortcuts() { return true; } @@ -502,7 +495,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean fixDialogLaunchAnimationJankLogging() { + public boolean fixImageWallpaperCrashSurfaceAlreadyReleased() { return true; } @@ -516,15 +509,22 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean flashlightStrength() { + public boolean floatingMenuAnimatedTuck() { return false; } @Override - public boolean floatingMenuAnimatedTuck() { - return false; + public boolean floatingMenuDisplayCutoutSupport() { + return true; + } + + @Override + + + public boolean floatingMenuDragToEdit() { + return true; } @Override @@ -551,6 +551,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean floatingMenuNarrowTargetContentObserver() { + return true; + } + + @Override + + public boolean floatingMenuNotifyTargetsChangedOnStrictDiff() { return true; } @@ -572,13 +579,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean floatingMenuRemoveFullscreenTaps() { - return false; - } - - @Override - - public boolean getConnectedDeviceNameUnsynchronized() { return true; } @@ -621,13 +621,20 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean hardwareColorStyles() { + public boolean hapticsForComposeSliders() { return true; } @Override + public boolean hardwareColorStyles() { + return false; + } + + @Override + + public boolean hearingAidsQsTileDialog() { return true; } @@ -656,20 +663,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean hsuBehaviorChanges() { - return false; - } - - @Override - - - public boolean hubBlurredByShadeFix() { - return true; - } - - @Override - - public boolean hubEditModeTouchAdjustments() { return false; } @@ -677,14 +670,28 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean hubEditModeTransition() { + public boolean hubmodeFullscreenVerticalSwipe() { return false; } @Override + public boolean hubmodeFullscreenVerticalSwipeFix() { + return true; + } + + @Override + + public boolean iconRefresh2025() { + return false; + } + + @Override + + + public boolean ignoreTouchesNextToNotificationShelf() { return true; } @@ -698,13 +705,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean instantHideShade() { - return true; - } - - @Override - - public boolean keyboardDockingIndicator() { return false; } @@ -740,6 +740,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean keyguardWmReorderAtmsCalls() { + return true; + } + + @Override + + public boolean keyguardWmStateRefactor() { return false; } @@ -748,7 +755,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean lockscreenFont() { - return true; + return false; } @Override @@ -761,21 +768,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean lowlightClockSetBrightness() { - return true; - } - - @Override - - - public boolean lowlightClockUsesKeyguardChargingStatus() { - return true; - } - - @Override - - public boolean magneticNotificationSwipes() { + return false; + } + + @Override + + + public boolean mediaControlsA11yColors() { return true; } @@ -796,14 +796,56 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean mediaControlsInCompose() { + public boolean mediaControlsDeviceManagerBackgroundExecution() { return false; } @Override + public boolean mediaControlsDrawablesReuseBugfix() { + return true; + } + + @Override + + + public boolean mediaControlsLockscreenShadeBugFix() { + return true; + } + + @Override + + public boolean mediaControlsUiUpdate() { + return false; + } + + @Override + + + public boolean mediaControlsUmoInflationInBackground() { + return true; + } + + @Override + + + public boolean mediaControlsUserInitiatedDeleteintent() { + return true; + } + + @Override + + + public boolean mediaLoadMetadataViaMediaDataLoader() { + return true; + } + + @Override + + + public boolean mediaLockscreenLaunchAnimation() { return true; } @@ -839,14 +881,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean moveTransitionAnimationLayer() { - return true; + return false; } @Override public boolean msdlFeedback() { - return true; + return false; } @Override @@ -866,13 +908,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean newDozingKeyguardStates() { - return false; - } - - @Override - - public boolean newVolumePanel() { return true; } @@ -909,7 +944,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean notificationAnimatedActionsTreatment() { - return true; + return false; } @Override @@ -951,7 +986,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean notificationBackgroundTintOptimization() { - return false; + return true; } @Override @@ -972,7 +1007,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean notificationContentAlphaOptimization() { - return true; + return false; } @Override @@ -985,6 +1020,20 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean notificationOverExpansionClippingFix() { + return true; + } + + @Override + + + public boolean notificationReentrantDismiss() { + return true; + } + + @Override + + public boolean notificationRowAccessibilityExpanded() { return true; } @@ -1000,6 +1049,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean notificationRowTransparency() { + return false; + } + + @Override + + + public boolean notificationRowUserContext() { return true; } @@ -1007,14 +1063,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean notificationShadeBlur() { - return true; - } - - @Override - - - public boolean notificationShadeCloseWaitsForChildAnimations() { - return true; + return false; } @Override @@ -1041,6 +1090,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean notificationViewFlipperPausingV2() { + return true; + } + + @Override + + public boolean notificationsBackgroundIcons() { return true; } @@ -1062,15 +1118,8 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean notificationsHunAccessibilityRefactor() { - return false; - } - - @Override - - public boolean notificationsHunSharedAnimationValues() { - return true; + return false; } @Override @@ -1084,7 +1133,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean notificationsLaunchRadius() { - return true; + return false; } @Override @@ -1105,7 +1154,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean notificationsRedesignFooterView() { - return true; + return false; + } + + @Override + + + public boolean notificationsRedesignGuts() { + return false; } @Override @@ -1125,7 +1181,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean ongoingActivityChipsOnDream() { + public boolean onlyShowMediaStreamSliderInSingleVolumeMode() { + return true; + } + + @Override + + + public boolean outputSwitcherRedesign() { return false; } @@ -1147,14 +1210,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean permissionHelperUiRichOngoing() { - return true; + return false; } @Override public boolean physicalNotificationMovement() { - return true; + return false; } @Override @@ -1181,8 +1244,8 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean privacyDotLiveRegion() { - return false; + public boolean priorityPeopleSection() { + return true; } @Override @@ -1195,6 +1258,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean pssAppSelectorRecentsSplitScreen() { + return true; + } + + @Override + + public boolean pssTaskSwitcher() { return false; } @@ -1202,21 +1272,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean qsComposeFragmentEarlyExpansion() { - return false; - } - - @Override - - - public boolean qsEditModeTabs() { - return false; - } - - @Override - - - public boolean qsEditModeTooltip() { + public boolean qsCustomTileClickGuaranteedBugFix() { return true; } @@ -1237,6 +1293,20 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean qsQuickRebindActiveTiles() { + return false; + } + + @Override + + + public boolean qsRegisterSettingObserverOnBgThread() { + return true; + } + + @Override + + public boolean qsTileDetailedView() { return false; } @@ -1251,13 +1321,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean qsTileTransitionInteractionRefinement() { - return false; - } - - @Override - - public boolean qsUiRefactor() { return false; } @@ -1266,13 +1329,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean qsUiRefactorComposeFragment() { - return true; - } - - @Override - - - public boolean qsWifiConfig() { return false; } @@ -1293,6 +1349,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean refactorGetCurrentUser() { + return true; + } + + @Override + + public boolean registerBatteryControllerReceiversInCorestartable() { return false; } @@ -1321,15 +1384,8 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean rememberViewModelOffMainThread() { - return false; - } - - @Override - - - public boolean removeAodCarMode() { - return false; + public boolean relockWithPowerButtonImmediately() { + return true; } @Override @@ -1342,13 +1398,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean removeNearbyShareTileAnimation() { - return false; - } - - @Override - - public boolean removeUpdateListenerInQsIconViewImpl() { return true; } @@ -1370,13 +1419,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean restrictCommunalAppWidgetHostListening() { - return true; - } - - @Override - - public boolean revampedBouncerMessages() { return true; } @@ -1405,13 +1447,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean screenReactions() { - return false; - } - - @Override - - public boolean screenshareNotificationHidingBugFix() { return true; } @@ -1426,13 +1461,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean screenshotAnnounceLiveRegion() { - return true; - } - - @Override - - public boolean screenshotMultidisplayFocusChange() { return false; } @@ -1454,6 +1482,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean screenshotUiControllerRefactor() { + return true; + } + + @Override + + public boolean secondaryUserWidgetHost() { return false; } @@ -1475,22 +1510,15 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean shadeHeaderBlurFontColor() { - return true; - } - - @Override - - public boolean shadeHeaderFontUpdate() { - return true; + return false; } @Override - public boolean shadeQsvisibleLogic() { - return false; + public boolean shadeLaunchAccessibility() { + return true; } @Override @@ -1518,7 +1546,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean showAudioSharingSliderInVolumePanel() { - return true; + return false; } @Override @@ -1538,6 +1566,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean showToastWhenAppControlBrightness() { + return true; + } + + @Override + + public boolean simPinBouncerReset() { return true; } @@ -1545,6 +1580,20 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean simPinRaceConditionOnRestart() { + return true; + } + + @Override + + + public boolean simPinUseSlotId() { + return true; + } + + @Override + + public boolean skipHideSensitiveNotifAnimation() { return true; } @@ -1552,6 +1601,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean sliceBroadcastRelayInBackground() { + return true; + } + + @Override + + public boolean sliceManagerBinderCallBackground() { return true; } @@ -1559,6 +1615,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean smartspaceLockscreenViewmodel() { + return true; + } + + @Override + + public boolean smartspaceRelocateToBottom() { return false; } @@ -1566,6 +1629,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean smartspaceRemoteviewsRenderingFix() { + return true; + } + + @Override + + public boolean smartspaceSwipeEventLoggingFix() { return true; } @@ -1574,7 +1644,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean smartspaceViewpager2() { - return true; + return false; } @Override @@ -1588,26 +1658,12 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean spatialModelAppPushback() { - return true; - } - - @Override - - - public boolean spatialModelBouncerPushback() { return false; } @Override - public boolean spatialModelPushbackInShader() { - return true; - } - - @Override - - public boolean stabilizeHeadsUpGroupV2() { return true; } @@ -1622,22 +1678,15 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean statusBarAppHandleTracking() { - return false; - } - - @Override - - - public boolean statusBarChipToHunAnimation() { - return false; + public boolean statusBarAutoStartScreenRecordChip() { + return true; } @Override public boolean statusBarChipsModernization() { - return true; + return false; } @Override @@ -1651,7 +1700,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean statusBarFontUpdates() { - return true; + return false; } @Override @@ -1664,13 +1713,20 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean statusBarNoHunBehavior() { + public boolean statusBarMonochromeIconsFix() { return true; } @Override + public boolean statusBarNoHunBehavior() { + return false; + } + + @Override + + public boolean statusBarPopupChips() { return false; } @@ -1678,22 +1734,15 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean statusBarPrivacyChipAnimationExemption() { - return true; - } - - @Override - - public boolean statusBarRootModernization() { - return true; + return false; } @Override - public boolean statusBarRudimentaryBattery() { - return false; + public boolean statusBarShowAudioOnlyProjectionChip() { + return true; } @Override @@ -1720,8 +1769,15 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean statusBarStopUpdatingWindowHeight() { + return false; + } + + @Override + + public boolean statusBarSwipeOverChip() { - return true; + return false; } @Override @@ -1734,13 +1790,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean statusBarSystemStatusIconsInCompose() { - return false; - } - - @Override - - public boolean statusBarUiThread() { return false; } @@ -1749,13 +1798,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean statusBarWindowNoCustomTouch() { - return true; + return false; } @Override - public boolean stuckHearingDevicesQsTileFix() { + public boolean stoppableFgsSystemApp() { return true; } @@ -1783,14 +1832,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean thinScreenRecordingService() { - return false; + public boolean transitionRaceCondition() { + return true; } @Override - public boolean transitionRaceConditionPart2() { + public boolean translucentOccludingActivityFix() { return true; } @@ -1798,20 +1847,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean tvGlobalActionsFocus() { - return true; + return false; } @Override - public boolean udfpsScreenOffUnlockFlicker() { - return true; - } - - @Override - - - public boolean uiRichOngoingAodSkeletonBgInflation() { + public boolean udfpsViewPerformance() { return true; } @@ -1825,6 +1867,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean unfoldLatencyTrackingFix() { + return false; + } + + @Override + + public boolean updateCornerRadiusOnDisplayChanged() { return true; } @@ -1840,14 +1889,42 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean updateWindowMagnifierBottomBoundary() { + return false; + } + + @Override + + + public boolean useAadProxSensor() { + return false; + } + + @Override + + + public boolean useNotifInflationThreadForFooter() { return true; } @Override - public boolean useAadProxSensorIfPresent() { - return false; + public boolean useNotifInflationThreadForRow() { + return true; + } + + @Override + + + public boolean useTransitionsForKeyguardOccluded() { + return true; + } + + @Override + + + public boolean useVolumeController() { + return true; } @Override @@ -1882,7 +1959,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean volumeRedesign() { - return true; + return false; } } diff --git a/flags/src/com/android/systemui/Flags.java b/flags/src/com/android/systemui/Flags.java index ec7e96af9f..ca51b086d1 100644 --- a/flags/src/com/android/systemui/Flags.java +++ b/flags/src/com/android/systemui/Flags.java @@ -1,24 +1,24 @@ package com.android.systemui; - +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public final class Flags { /** @hide */ public static final String FLAG_ACTIVITY_TRANSITION_USE_LARGEST_WINDOW = "com.android.systemui.activity_transition_use_largest_window"; /** @hide */ + public static final String FLAG_ADD_BLACK_BACKGROUND_FOR_WINDOW_MAGNIFIER = "com.android.systemui.add_black_background_for_window_magnifier"; + /** @hide */ public static final String FLAG_ALWAYS_COMPOSE_QS_UI_FRAGMENT = "com.android.systemui.always_compose_qs_ui_fragment"; /** @hide */ public static final String FLAG_AMBIENT_TOUCH_MONITOR_LISTEN_TO_DISPLAY_CHANGES = "com.android.systemui.ambient_touch_monitor_listen_to_display_changes"; /** @hide */ - public static final String FLAG_ANIMATION_LIBRARY_DELAY_LEASH_CLEANUP = "com.android.systemui.animation_library_delay_leash_cleanup"; - /** @hide */ public static final String FLAG_APP_CLIPS_BACKLINKS = "com.android.systemui.app_clips_backlinks"; /** @hide */ + public static final String FLAG_APP_SHORTCUT_REMOVAL_FIX = "com.android.systemui.app_shortcut_removal_fix"; + /** @hide */ public static final String FLAG_AVALANCHE_REPLACE_HUN_WHEN_CRITICAL = "com.android.systemui.avalanche_replace_hun_when_critical"; /** @hide */ - public static final String FLAG_BACK_BUTTON_ON_BOUNCER = "com.android.systemui.back_button_on_bouncer"; - /** @hide */ - public static final String FLAG_BOUNCER_LIFECYCLE_FIX = "com.android.systemui.bouncer_lifecycle_fix"; + public static final String FLAG_BIND_KEYGUARD_MEDIA_VISIBILITY = "com.android.systemui.bind_keyguard_media_visibility"; /** @hide */ public static final String FLAG_BOUNCER_UI_REVAMP = "com.android.systemui.bouncer_ui_revamp"; /** @hide */ @@ -28,18 +28,22 @@ public final class Flags { /** @hide */ public static final String FLAG_BRIGHTNESS_SLIDER_FOCUS_STATE = "com.android.systemui.brightness_slider_focus_state"; /** @hide */ + public static final String FLAG_CHECK_LOCKSCREEN_GONE_TRANSITION = "com.android.systemui.check_lockscreen_gone_transition"; + /** @hide */ public static final String FLAG_CLASSIC_FLAGS_MULTI_USER = "com.android.systemui.classic_flags_multi_user"; /** @hide */ - public static final String FLAG_CLIPBOARD_ANNOUNCE_LIVE_REGION = "com.android.systemui.clipboard_announce_live_region"; + public static final String FLAG_CLIPBOARD_IMAGE_TIMEOUT = "com.android.systemui.clipboard_image_timeout"; + /** @hide */ + public static final String FLAG_CLIPBOARD_NONINTERACTIVE_ON_LOCKSCREEN = "com.android.systemui.clipboard_noninteractive_on_lockscreen"; /** @hide */ public static final String FLAG_CLIPBOARD_OVERLAY_MULTIUSER = "com.android.systemui.clipboard_overlay_multiuser"; /** @hide */ + public static final String FLAG_CLIPBOARD_SHARED_TRANSITIONS = "com.android.systemui.clipboard_shared_transitions"; + /** @hide */ public static final String FLAG_CLIPBOARD_USE_DESCRIPTION_MIMETYPE = "com.android.systemui.clipboard_use_description_mimetype"; /** @hide */ public static final String FLAG_CLOCK_FIDGET_ANIMATION = "com.android.systemui.clock_fidget_animation"; /** @hide */ - public static final String FLAG_CLOCK_MODERNIZATION = "com.android.systemui.clock_modernization"; - /** @hide */ public static final String FLAG_COMMUNAL_BOUNCER_DO_NOT_MODIFY_PLUGIN_OPEN = "com.android.systemui.communal_bouncer_do_not_modify_plugin_open"; /** @hide */ public static final String FLAG_COMMUNAL_EDIT_WIDGETS_ACTIVITY_FINISH_FIX = "com.android.systemui.communal_edit_widgets_activity_finish_fix"; @@ -50,7 +54,7 @@ public final class Flags { /** @hide */ public static final String FLAG_COMMUNAL_RESPONSIVE_GRID = "com.android.systemui.communal_responsive_grid"; /** @hide */ - public static final String FLAG_COMMUNAL_SHADE_TOUCH_HANDLING_FIXES = "com.android.systemui.communal_shade_touch_handling_fixes"; + public static final String FLAG_COMMUNAL_SCENE_KTF_REFACTOR = "com.android.systemui.communal_scene_ktf_refactor"; /** @hide */ public static final String FLAG_COMMUNAL_STANDALONE_SUPPORT = "com.android.systemui.communal_standalone_support"; /** @hide */ @@ -70,33 +74,33 @@ public final class Flags { /** @hide */ public static final String FLAG_COROUTINE_TRACING = "com.android.systemui.coroutine_tracing"; /** @hide */ + public static final String FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER = "com.android.systemui.create_windowless_window_magnifier"; + /** @hide */ + public static final String FLAG_DEBUG_LIVE_UPDATES_PROMOTE_ALL = "com.android.systemui.debug_live_updates_promote_all"; + /** @hide */ public static final String FLAG_DECOUPLE_VIEW_CONTROLLER_IN_ANIMLIB = "com.android.systemui.decouple_view_controller_in_animlib"; /** @hide */ + public static final String FLAG_DELAY_SHOW_MAGNIFICATION_BUTTON = "com.android.systemui.delay_show_magnification_button"; + /** @hide */ public static final String FLAG_DESKTOP_EFFECTS_QS_TILE = "com.android.systemui.desktop_effects_qs_tile"; /** @hide */ - public static final String FLAG_DESKTOP_SCREEN_CAPTURE = "com.android.systemui.desktop_screen_capture"; + public static final String FLAG_DEVICE_ENTRY_UDFPS_REFACTOR = "com.android.systemui.device_entry_udfps_refactor"; + /** @hide */ + public static final String FLAG_DISABLE_BLURRED_SHADE_VISIBLE = "com.android.systemui.disable_blurred_shade_visible"; /** @hide */ public static final String FLAG_DISABLE_CONTEXTUAL_TIPS_FREQUENCY_CHECK = "com.android.systemui.disable_contextual_tips_frequency_check"; /** @hide */ public static final String FLAG_DISABLE_CONTEXTUAL_TIPS_IOS_SWITCHER_CHECK = "com.android.systemui.disable_contextual_tips_ios_switcher_check"; /** @hide */ - public static final String FLAG_DISABLE_DOUBLE_CLICK_SWAP_ON_BOUNCER = "com.android.systemui.disable_double_click_swap_on_bouncer"; - /** @hide */ - public static final String FLAG_DO_NOT_USE_IMMEDIATE_COROUTINE_DISPATCHER = "com.android.systemui.do_not_use_immediate_coroutine_dispatcher"; + public static final String FLAG_DISABLE_SHADE_TRACKPAD_TWO_FINGER_SWIPE = "com.android.systemui.disable_shade_trackpad_two_finger_swipe"; /** @hide */ public static final String FLAG_DOUBLE_TAP_TO_SLEEP = "com.android.systemui.double_tap_to_sleep"; /** @hide */ - public static final String FLAG_DREAM_BIOMETRIC_PROMPT_FIXES = "com.android.systemui.dream_biometric_prompt_fixes"; - /** @hide */ public static final String FLAG_DREAM_INPUT_SESSION_PILFER_ONCE = "com.android.systemui.dream_input_session_pilfer_once"; /** @hide */ public static final String FLAG_DREAM_OVERLAY_BOUNCER_SWIPE_DIRECTION_FILTERING = "com.android.systemui.dream_overlay_bouncer_swipe_direction_filtering"; /** @hide */ - public static final String FLAG_DREAM_OVERLAY_UPDATED_UI = "com.android.systemui.dream_overlay_updated_ui"; - /** @hide */ - public static final String FLAG_DREAM_PREVIEW_TAP_DISMISS = "com.android.systemui.dream_preview_tap_dismiss"; - /** @hide */ - public static final String FLAG_DREAM_TRANSITION_FIXES = "com.android.systemui.dream_transition_fixes"; + public static final String FLAG_DREAM_OVERLAY_UPDATED_FONT = "com.android.systemui.dream_overlay_updated_font"; /** @hide */ public static final String FLAG_EDGE_BACK_GESTURE_HANDLER_THREAD = "com.android.systemui.edge_back_gesture_handler_thread"; /** @hide */ @@ -104,8 +108,6 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_BACKGROUND_KEYGUARD_ONDRAWN_CALLBACK = "com.android.systemui.enable_background_keyguard_ondrawn_callback"; /** @hide */ - public static final String FLAG_ENABLE_CONSTRAINT_LAYOUT_LOCKSCREEN_ON_EXTERNAL_DISPLAY = "com.android.systemui.enable_constraint_layout_lockscreen_on_external_display"; - /** @hide */ public static final String FLAG_ENABLE_CONTEXTUAL_TIP_FOR_MUTE_VOLUME = "com.android.systemui.enable_contextual_tip_for_mute_volume"; /** @hide */ public static final String FLAG_ENABLE_CONTEXTUAL_TIP_FOR_POWER_OFF = "com.android.systemui.enable_contextual_tip_for_power_off"; @@ -114,18 +116,10 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_CONTEXTUAL_TIPS = "com.android.systemui.enable_contextual_tips"; /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_GROWTH = "com.android.systemui.enable_desktop_growth"; - /** @hide */ public static final String FLAG_ENABLE_EFFICIENT_DISPLAY_REPOSITORY = "com.android.systemui.enable_efficient_display_repository"; /** @hide */ public static final String FLAG_ENABLE_LAYOUT_TRACING = "com.android.systemui.enable_layout_tracing"; /** @hide */ - public static final String FLAG_ENABLE_MINMODE = "com.android.systemui.enable_minmode"; - /** @hide */ - public static final String FLAG_ENABLE_SUGGESTED_DEVICE_UI = "com.android.systemui.enable_suggested_device_ui"; - /** @hide */ - public static final String FLAG_ENABLE_TOP_UI_CONTROLLER = "com.android.systemui.enable_top_ui_controller"; - /** @hide */ public static final String FLAG_ENABLE_UNDERLAY = "com.android.systemui.enable_underlay"; /** @hide */ public static final String FLAG_ENABLE_VIEW_CAPTURE_TRACING = "com.android.systemui.enable_view_capture_tracing"; @@ -142,32 +136,38 @@ public final class Flags { /** @hide */ public static final String FLAG_EXTENDED_APPS_SHORTCUT_CATEGORY = "com.android.systemui.extended_apps_shortcut_category"; /** @hide */ + public static final String FLAG_FACE_MESSAGE_DEFER_UPDATE = "com.android.systemui.face_message_defer_update"; + /** @hide */ public static final String FLAG_FACE_SCANNING_ANIMATION_NPE_FIX = "com.android.systemui.face_scanning_animation_npe_fix"; /** @hide */ + public static final String FLAG_FASTER_UNLOCK_TRANSITION = "com.android.systemui.faster_unlock_transition"; + /** @hide */ public static final String FLAG_FETCH_BOOKMARKS_XML_KEYBOARD_SHORTCUTS = "com.android.systemui.fetch_bookmarks_xml_keyboard_shortcuts"; /** @hide */ - public static final String FLAG_FIX_DIALOG_LAUNCH_ANIMATION_JANK_LOGGING = "com.android.systemui.fix_dialog_launch_animation_jank_logging"; + public static final String FLAG_FIX_IMAGE_WALLPAPER_CRASH_SURFACE_ALREADY_RELEASED = "com.android.systemui.fix_image_wallpaper_crash_surface_already_released"; /** @hide */ public static final String FLAG_FIX_SCREENSHOT_ACTION_DISMISS_SYSTEM_WINDOWS = "com.android.systemui.fix_screenshot_action_dismiss_system_windows"; /** @hide */ - public static final String FLAG_FLASHLIGHT_STRENGTH = "com.android.systemui.flashlight_strength"; - /** @hide */ public static final String FLAG_FLOATING_MENU_ANIMATED_TUCK = "com.android.systemui.floating_menu_animated_tuck"; /** @hide */ + public static final String FLAG_FLOATING_MENU_DISPLAY_CUTOUT_SUPPORT = "com.android.systemui.floating_menu_display_cutout_support"; + /** @hide */ + public static final String FLAG_FLOATING_MENU_DRAG_TO_EDIT = "com.android.systemui.floating_menu_drag_to_edit"; + /** @hide */ public static final String FLAG_FLOATING_MENU_DRAG_TO_HIDE = "com.android.systemui.floating_menu_drag_to_hide"; /** @hide */ public static final String FLAG_FLOATING_MENU_HEARING_DEVICE_STATUS_ICON = "com.android.systemui.floating_menu_hearing_device_status_icon"; /** @hide */ public static final String FLAG_FLOATING_MENU_IME_DISPLACEMENT_ANIMATION = "com.android.systemui.floating_menu_ime_displacement_animation"; /** @hide */ + public static final String FLAG_FLOATING_MENU_NARROW_TARGET_CONTENT_OBSERVER = "com.android.systemui.floating_menu_narrow_target_content_observer"; + /** @hide */ public static final String FLAG_FLOATING_MENU_NOTIFY_TARGETS_CHANGED_ON_STRICT_DIFF = "com.android.systemui.floating_menu_notify_targets_changed_on_strict_diff"; /** @hide */ public static final String FLAG_FLOATING_MENU_OVERLAPS_NAV_BARS_FLAG = "com.android.systemui.floating_menu_overlaps_nav_bars_flag"; /** @hide */ public static final String FLAG_FLOATING_MENU_RADII_ANIMATION = "com.android.systemui.floating_menu_radii_animation"; /** @hide */ - public static final String FLAG_FLOATING_MENU_REMOVE_FULLSCREEN_TAPS = "com.android.systemui.floating_menu_remove_fullscreen_taps"; - /** @hide */ public static final String FLAG_GET_CONNECTED_DEVICE_NAME_UNSYNCHRONIZED = "com.android.systemui.get_connected_device_name_unsynchronized"; /** @hide */ public static final String FLAG_GLANCEABLE_HUB_ALLOW_KEYGUARD_WHEN_DREAMING = "com.android.systemui.glanceable_hub_allow_keyguard_when_dreaming"; @@ -180,6 +180,8 @@ public final class Flags { /** @hide */ public static final String FLAG_GLANCEABLE_HUB_V2_RESOURCES = "com.android.systemui.glanceable_hub_v2_resources"; /** @hide */ + public static final String FLAG_HAPTICS_FOR_COMPOSE_SLIDERS = "com.android.systemui.haptics_for_compose_sliders"; + /** @hide */ public static final String FLAG_HARDWARE_COLOR_STYLES = "com.android.systemui.hardware_color_styles"; /** @hide */ public static final String FLAG_HEARING_AIDS_QS_TILE_DIALOG = "com.android.systemui.hearing_aids_qs_tile_dialog"; @@ -190,19 +192,17 @@ public final class Flags { /** @hide */ public static final String FLAG_HOME_CONTROLS_DREAM_HSUM = "com.android.systemui.home_controls_dream_hsum"; /** @hide */ - public static final String FLAG_HSU_BEHAVIOR_CHANGES = "com.android.systemui.hsu_behavior_changes"; - /** @hide */ - public static final String FLAG_HUB_BLURRED_BY_SHADE_FIX = "com.android.systemui.hub_blurred_by_shade_fix"; - /** @hide */ public static final String FLAG_HUB_EDIT_MODE_TOUCH_ADJUSTMENTS = "com.android.systemui.hub_edit_mode_touch_adjustments"; /** @hide */ - public static final String FLAG_HUB_EDIT_MODE_TRANSITION = "com.android.systemui.hub_edit_mode_transition"; + public static final String FLAG_HUBMODE_FULLSCREEN_VERTICAL_SWIPE = "com.android.systemui.hubmode_fullscreen_vertical_swipe"; + /** @hide */ + public static final String FLAG_HUBMODE_FULLSCREEN_VERTICAL_SWIPE_FIX = "com.android.systemui.hubmode_fullscreen_vertical_swipe_fix"; /** @hide */ public static final String FLAG_ICON_REFRESH_2025 = "com.android.systemui.icon_refresh_2025"; /** @hide */ - public static final String FLAG_INDICATION_TEXT_A11Y_FIX = "com.android.systemui.indication_text_a11y_fix"; + public static final String FLAG_IGNORE_TOUCHES_NEXT_TO_NOTIFICATION_SHELF = "com.android.systemui.ignore_touches_next_to_notification_shelf"; /** @hide */ - public static final String FLAG_INSTANT_HIDE_SHADE = "com.android.systemui.instant_hide_shade"; + public static final String FLAG_INDICATION_TEXT_A11Y_FIX = "com.android.systemui.indication_text_a11y_fix"; /** @hide */ public static final String FLAG_KEYBOARD_DOCKING_INDICATOR = "com.android.systemui.keyboard_docking_indicator"; /** @hide */ @@ -214,26 +214,38 @@ public final class Flags { /** @hide */ public static final String FLAG_KEYGUARD_TRANSITION_FORCE_FINISH_ON_SCREEN_OFF = "com.android.systemui.keyguard_transition_force_finish_on_screen_off"; /** @hide */ + public static final String FLAG_KEYGUARD_WM_REORDER_ATMS_CALLS = "com.android.systemui.keyguard_wm_reorder_atms_calls"; + /** @hide */ public static final String FLAG_KEYGUARD_WM_STATE_REFACTOR = "com.android.systemui.keyguard_wm_state_refactor"; /** @hide */ public static final String FLAG_LOCKSCREEN_FONT = "com.android.systemui.lockscreen_font"; /** @hide */ public static final String FLAG_LOW_LIGHT_CLOCK_DREAM = "com.android.systemui.low_light_clock_dream"; /** @hide */ - public static final String FLAG_LOWLIGHT_CLOCK_SET_BRIGHTNESS = "com.android.systemui.lowlight_clock_set_brightness"; - /** @hide */ - public static final String FLAG_LOWLIGHT_CLOCK_USES_KEYGUARD_CHARGING_STATUS = "com.android.systemui.lowlight_clock_uses_keyguard_charging_status"; - /** @hide */ public static final String FLAG_MAGNETIC_NOTIFICATION_SWIPES = "com.android.systemui.magnetic_notification_swipes"; /** @hide */ + public static final String FLAG_MEDIA_CONTROLS_A11Y_COLORS = "com.android.systemui.media_controls_a11y_colors"; + /** @hide */ public static final String FLAG_MEDIA_CONTROLS_BUTTON_MEDIA3 = "com.android.systemui.media_controls_button_media3"; /** @hide */ public static final String FLAG_MEDIA_CONTROLS_BUTTON_MEDIA3_PLACEMENT = "com.android.systemui.media_controls_button_media3_placement"; /** @hide */ - public static final String FLAG_MEDIA_CONTROLS_IN_COMPOSE = "com.android.systemui.media_controls_in_compose"; + public static final String FLAG_MEDIA_CONTROLS_DEVICE_MANAGER_BACKGROUND_EXECUTION = "com.android.systemui.media_controls_device_manager_background_execution"; + /** @hide */ + public static final String FLAG_MEDIA_CONTROLS_DRAWABLES_REUSE_BUGFIX = "com.android.systemui.media_controls_drawables_reuse_bugfix"; + /** @hide */ + public static final String FLAG_MEDIA_CONTROLS_LOCKSCREEN_SHADE_BUG_FIX = "com.android.systemui.media_controls_lockscreen_shade_bug_fix"; /** @hide */ public static final String FLAG_MEDIA_CONTROLS_UI_UPDATE = "com.android.systemui.media_controls_ui_update"; /** @hide */ + public static final String FLAG_MEDIA_CONTROLS_UMO_INFLATION_IN_BACKGROUND = "com.android.systemui.media_controls_umo_inflation_in_background"; + /** @hide */ + public static final String FLAG_MEDIA_CONTROLS_USER_INITIATED_DELETEINTENT = "com.android.systemui.media_controls_user_initiated_deleteintent"; + /** @hide */ + public static final String FLAG_MEDIA_LOAD_METADATA_VIA_MEDIA_DATA_LOADER = "com.android.systemui.media_load_metadata_via_media_data_loader"; + /** @hide */ + public static final String FLAG_MEDIA_LOCKSCREEN_LAUNCH_ANIMATION = "com.android.systemui.media_lockscreen_launch_animation"; + /** @hide */ public static final String FLAG_MEDIA_PROJECTION_DIALOG_BEHIND_LOCKSCREEN = "com.android.systemui.media_projection_dialog_behind_lockscreen"; /** @hide */ public static final String FLAG_MEDIA_PROJECTION_GREY_ERROR_TEXT = "com.android.systemui.media_projection_grey_error_text"; @@ -250,8 +262,6 @@ public final class Flags { /** @hide */ public static final String FLAG_NEW_AOD_TRANSITION = "com.android.systemui.new_aod_transition"; /** @hide */ - public static final String FLAG_NEW_DOZING_KEYGUARD_STATES = "com.android.systemui.new_dozing_keyguard_states"; - /** @hide */ public static final String FLAG_NEW_VOLUME_PANEL = "com.android.systemui.new_volume_panel"; /** @hide */ public static final String FLAG_NON_TOUCHSCREEN_DEVICES_BYPASS_FALSING = "com.android.systemui.non_touchscreen_devices_bypass_falsing"; @@ -284,15 +294,19 @@ public final class Flags { /** @hide */ public static final String FLAG_NOTIFICATION_FOOTER_BACKGROUND_TINT_OPTIMIZATION = "com.android.systemui.notification_footer_background_tint_optimization"; /** @hide */ + public static final String FLAG_NOTIFICATION_OVER_EXPANSION_CLIPPING_FIX = "com.android.systemui.notification_over_expansion_clipping_fix"; + /** @hide */ + public static final String FLAG_NOTIFICATION_REENTRANT_DISMISS = "com.android.systemui.notification_reentrant_dismiss"; + /** @hide */ public static final String FLAG_NOTIFICATION_ROW_ACCESSIBILITY_EXPANDED = "com.android.systemui.notification_row_accessibility_expanded"; /** @hide */ public static final String FLAG_NOTIFICATION_ROW_CONTENT_BINDER_REFACTOR = "com.android.systemui.notification_row_content_binder_refactor"; /** @hide */ public static final String FLAG_NOTIFICATION_ROW_TRANSPARENCY = "com.android.systemui.notification_row_transparency"; /** @hide */ - public static final String FLAG_NOTIFICATION_SHADE_BLUR = "com.android.systemui.notification_shade_blur"; + public static final String FLAG_NOTIFICATION_ROW_USER_CONTEXT = "com.android.systemui.notification_row_user_context"; /** @hide */ - public static final String FLAG_NOTIFICATION_SHADE_CLOSE_WAITS_FOR_CHILD_ANIMATIONS = "com.android.systemui.notification_shade_close_waits_for_child_animations"; + public static final String FLAG_NOTIFICATION_SHADE_BLUR = "com.android.systemui.notification_shade_blur"; /** @hide */ public static final String FLAG_NOTIFICATION_SHADE_UI_THREAD = "com.android.systemui.notification_shade_ui_thread"; /** @hide */ @@ -300,14 +314,14 @@ public final class Flags { /** @hide */ public static final String FLAG_NOTIFICATION_TRANSPARENT_HEADER_FIX = "com.android.systemui.notification_transparent_header_fix"; /** @hide */ + public static final String FLAG_NOTIFICATION_VIEW_FLIPPER_PAUSING_V2 = "com.android.systemui.notification_view_flipper_pausing_v2"; + /** @hide */ public static final String FLAG_NOTIFICATIONS_BACKGROUND_ICONS = "com.android.systemui.notifications_background_icons"; /** @hide */ public static final String FLAG_NOTIFICATIONS_FOOTER_VISIBILITY_FIX = "com.android.systemui.notifications_footer_visibility_fix"; /** @hide */ public static final String FLAG_NOTIFICATIONS_HIDE_ON_DISPLAY_SWITCH = "com.android.systemui.notifications_hide_on_display_switch"; /** @hide */ - public static final String FLAG_NOTIFICATIONS_HUN_ACCESSIBILITY_REFACTOR = "com.android.systemui.notifications_hun_accessibility_refactor"; - /** @hide */ public static final String FLAG_NOTIFICATIONS_HUN_SHARED_ANIMATION_VALUES = "com.android.systemui.notifications_hun_shared_animation_values"; /** @hide */ public static final String FLAG_NOTIFICATIONS_ICON_CONTAINER_REFACTOR = "com.android.systemui.notifications_icon_container_refactor"; @@ -320,11 +334,15 @@ public final class Flags { /** @hide */ public static final String FLAG_NOTIFICATIONS_REDESIGN_FOOTER_VIEW = "com.android.systemui.notifications_redesign_footer_view"; /** @hide */ + public static final String FLAG_NOTIFICATIONS_REDESIGN_GUTS = "com.android.systemui.notifications_redesign_guts"; + /** @hide */ public static final String FLAG_NOTIFY_PASSWORD_TEXT_VIEW_USER_ACTIVITY_IN_BACKGROUND = "com.android.systemui.notify_password_text_view_user_activity_in_background"; /** @hide */ public static final String FLAG_NOTIFY_POWER_MANAGER_USER_ACTIVITY_BACKGROUND = "com.android.systemui.notify_power_manager_user_activity_background"; /** @hide */ - public static final String FLAG_ONGOING_ACTIVITY_CHIPS_ON_DREAM = "com.android.systemui.ongoing_activity_chips_on_dream"; + public static final String FLAG_ONLY_SHOW_MEDIA_STREAM_SLIDER_IN_SINGLE_VOLUME_MODE = "com.android.systemui.only_show_media_stream_slider_in_single_volume_mode"; + /** @hide */ + public static final String FLAG_OUTPUT_SWITCHER_REDESIGN = "com.android.systemui.output_switcher_redesign"; /** @hide */ public static final String FLAG_OVERRIDE_SUPPRESS_OVERLAY_CONDITION = "com.android.systemui.override_suppress_overlay_condition"; /** @hide */ @@ -340,38 +358,38 @@ public final class Flags { /** @hide */ public static final String FLAG_PREDICTIVE_BACK_DELAY_WM_TRANSITION = "com.android.systemui.predictive_back_delay_wm_transition"; /** @hide */ - public static final String FLAG_PRIVACY_DOT_LIVE_REGION = "com.android.systemui.privacy_dot_live_region"; + public static final String FLAG_PRIORITY_PEOPLE_SECTION = "com.android.systemui.priority_people_section"; /** @hide */ public static final String FLAG_PROMOTE_NOTIFICATIONS_AUTOMATICALLY = "com.android.systemui.promote_notifications_automatically"; /** @hide */ + public static final String FLAG_PSS_APP_SELECTOR_RECENTS_SPLIT_SCREEN = "com.android.systemui.pss_app_selector_recents_split_screen"; + /** @hide */ public static final String FLAG_PSS_TASK_SWITCHER = "com.android.systemui.pss_task_switcher"; /** @hide */ - public static final String FLAG_QS_COMPOSE_FRAGMENT_EARLY_EXPANSION = "com.android.systemui.qs_compose_fragment_early_expansion"; - /** @hide */ - public static final String FLAG_QS_EDIT_MODE_TABS = "com.android.systemui.qs_edit_mode_tabs"; - /** @hide */ - public static final String FLAG_QS_EDIT_MODE_TOOLTIP = "com.android.systemui.qs_edit_mode_tooltip"; + public static final String FLAG_QS_CUSTOM_TILE_CLICK_GUARANTEED_BUG_FIX = "com.android.systemui.qs_custom_tile_click_guaranteed_bug_fix"; /** @hide */ public static final String FLAG_QS_NEW_TILES = "com.android.systemui.qs_new_tiles"; /** @hide */ public static final String FLAG_QS_NEW_TILES_FUTURE = "com.android.systemui.qs_new_tiles_future"; /** @hide */ + public static final String FLAG_QS_QUICK_REBIND_ACTIVE_TILES = "com.android.systemui.qs_quick_rebind_active_tiles"; + /** @hide */ + public static final String FLAG_QS_REGISTER_SETTING_OBSERVER_ON_BG_THREAD = "com.android.systemui.qs_register_setting_observer_on_bg_thread"; + /** @hide */ public static final String FLAG_QS_TILE_DETAILED_VIEW = "com.android.systemui.qs_tile_detailed_view"; /** @hide */ public static final String FLAG_QS_TILE_FOCUS_STATE = "com.android.systemui.qs_tile_focus_state"; /** @hide */ - public static final String FLAG_QS_TILE_TRANSITION_INTERACTION_REFINEMENT = "com.android.systemui.qs_tile_transition_interaction_refinement"; - /** @hide */ public static final String FLAG_QS_UI_REFACTOR = "com.android.systemui.qs_ui_refactor"; /** @hide */ public static final String FLAG_QS_UI_REFACTOR_COMPOSE_FRAGMENT = "com.android.systemui.qs_ui_refactor_compose_fragment"; /** @hide */ - public static final String FLAG_QS_WIFI_CONFIG = "com.android.systemui.qs_wifi_config"; - /** @hide */ public static final String FLAG_RECORD_ISSUE_QS_TILE = "com.android.systemui.record_issue_qs_tile"; /** @hide */ public static final String FLAG_REDESIGN_MAGNIFICATION_WINDOW_SIZE = "com.android.systemui.redesign_magnification_window_size"; /** @hide */ + public static final String FLAG_REFACTOR_GET_CURRENT_USER = "com.android.systemui.refactor_get_current_user"; + /** @hide */ public static final String FLAG_REGISTER_BATTERY_CONTROLLER_RECEIVERS_IN_CORESTARTABLE = "com.android.systemui.register_battery_controller_receivers_in_corestartable"; /** @hide */ public static final String FLAG_REGISTER_CONTENT_OBSERVERS_ASYNC = "com.android.systemui.register_content_observers_async"; @@ -380,22 +398,16 @@ public final class Flags { /** @hide */ public static final String FLAG_REGISTER_WALLPAPER_NOTIFIER_BACKGROUND = "com.android.systemui.register_wallpaper_notifier_background"; /** @hide */ - public static final String FLAG_REMEMBER_VIEW_MODEL_OFF_MAIN_THREAD = "com.android.systemui.remember_view_model_off_main_thread"; - /** @hide */ - public static final String FLAG_REMOVE_AOD_CAR_MODE = "com.android.systemui.remove_aod_car_mode"; + public static final String FLAG_RELOCK_WITH_POWER_BUTTON_IMMEDIATELY = "com.android.systemui.relock_with_power_button_immediately"; /** @hide */ public static final String FLAG_REMOVE_DREAM_OVERLAY_HIDE_ON_TOUCH = "com.android.systemui.remove_dream_overlay_hide_on_touch"; /** @hide */ - public static final String FLAG_REMOVE_NEARBY_SHARE_TILE_ANIMATION = "com.android.systemui.remove_nearby_share_tile_animation"; - /** @hide */ public static final String FLAG_REMOVE_UPDATE_LISTENER_IN_QS_ICON_VIEW_IMPL = "com.android.systemui.remove_update_listener_in_qs_icon_view_impl"; /** @hide */ public static final String FLAG_REST_TO_UNLOCK = "com.android.systemui.rest_to_unlock"; /** @hide */ public static final String FLAG_RESTART_DREAM_ON_UNOCCLUDE = "com.android.systemui.restart_dream_on_unocclude"; /** @hide */ - public static final String FLAG_RESTRICT_COMMUNAL_APP_WIDGET_HOST_LISTENING = "com.android.systemui.restrict_communal_app_widget_host_listening"; - /** @hide */ public static final String FLAG_REVAMPED_BOUNCER_MESSAGES = "com.android.systemui.revamped_bouncer_messages"; /** @hide */ public static final String FLAG_RUN_FINGERPRINT_DETECT_ON_DISMISSIBLE_KEYGUARD = "com.android.systemui.run_fingerprint_detect_on_dismissible_keyguard"; @@ -404,31 +416,27 @@ public final class Flags { /** @hide */ public static final String FLAG_SCENE_CONTAINER = "com.android.systemui.scene_container"; /** @hide */ - public static final String FLAG_SCREEN_REACTIONS = "com.android.systemui.screen_reactions"; - /** @hide */ public static final String FLAG_SCREENSHARE_NOTIFICATION_HIDING_BUG_FIX = "com.android.systemui.screenshare_notification_hiding_bug_fix"; /** @hide */ public static final String FLAG_SCREENSHOT_ACTION_DISMISS_SYSTEM_WINDOWS = "com.android.systemui.screenshot_action_dismiss_system_windows"; /** @hide */ - public static final String FLAG_SCREENSHOT_ANNOUNCE_LIVE_REGION = "com.android.systemui.screenshot_announce_live_region"; - /** @hide */ public static final String FLAG_SCREENSHOT_MULTIDISPLAY_FOCUS_CHANGE = "com.android.systemui.screenshot_multidisplay_focus_change"; /** @hide */ public static final String FLAG_SCREENSHOT_POLICY_SPLIT_AND_DESKTOP_MODE = "com.android.systemui.screenshot_policy_split_and_desktop_mode"; /** @hide */ public static final String FLAG_SCREENSHOT_SCROLL_CROP_VIEW_CRASH_FIX = "com.android.systemui.screenshot_scroll_crop_view_crash_fix"; /** @hide */ + public static final String FLAG_SCREENSHOT_UI_CONTROLLER_REFACTOR = "com.android.systemui.screenshot_ui_controller_refactor"; + /** @hide */ public static final String FLAG_SECONDARY_USER_WIDGET_HOST = "com.android.systemui.secondary_user_widget_host"; /** @hide */ public static final String FLAG_SETTINGS_EXT_REGISTER_CONTENT_OBSERVER_ON_BG_THREAD = "com.android.systemui.settings_ext_register_content_observer_on_bg_thread"; /** @hide */ public static final String FLAG_SHADE_EXPANDS_ON_STATUS_BAR_LONG_PRESS = "com.android.systemui.shade_expands_on_status_bar_long_press"; /** @hide */ - public static final String FLAG_SHADE_HEADER_BLUR_FONT_COLOR = "com.android.systemui.shade_header_blur_font_color"; - /** @hide */ public static final String FLAG_SHADE_HEADER_FONT_UPDATE = "com.android.systemui.shade_header_font_update"; /** @hide */ - public static final String FLAG_SHADE_QSVISIBLE_LOGIC = "com.android.systemui.shade_qsvisible_logic"; + public static final String FLAG_SHADE_LAUNCH_ACCESSIBILITY = "com.android.systemui.shade_launch_accessibility"; /** @hide */ public static final String FLAG_SHADE_WINDOW_GOES_AROUND = "com.android.systemui.shade_window_goes_around"; /** @hide */ @@ -442,14 +450,26 @@ public final class Flags { /** @hide */ public static final String FLAG_SHOW_LOCKED_BY_YOUR_WATCH_KEYGUARD_INDICATOR = "com.android.systemui.show_locked_by_your_watch_keyguard_indicator"; /** @hide */ + public static final String FLAG_SHOW_TOAST_WHEN_APP_CONTROL_BRIGHTNESS = "com.android.systemui.show_toast_when_app_control_brightness"; + /** @hide */ public static final String FLAG_SIM_PIN_BOUNCER_RESET = "com.android.systemui.sim_pin_bouncer_reset"; /** @hide */ + public static final String FLAG_SIM_PIN_RACE_CONDITION_ON_RESTART = "com.android.systemui.sim_pin_race_condition_on_restart"; + /** @hide */ + public static final String FLAG_SIM_PIN_USE_SLOT_ID = "com.android.systemui.sim_pin_use_slot_id"; + /** @hide */ public static final String FLAG_SKIP_HIDE_SENSITIVE_NOTIF_ANIMATION = "com.android.systemui.skip_hide_sensitive_notif_animation"; /** @hide */ + public static final String FLAG_SLICE_BROADCAST_RELAY_IN_BACKGROUND = "com.android.systemui.slice_broadcast_relay_in_background"; + /** @hide */ public static final String FLAG_SLICE_MANAGER_BINDER_CALL_BACKGROUND = "com.android.systemui.slice_manager_binder_call_background"; /** @hide */ + public static final String FLAG_SMARTSPACE_LOCKSCREEN_VIEWMODEL = "com.android.systemui.smartspace_lockscreen_viewmodel"; + /** @hide */ public static final String FLAG_SMARTSPACE_RELOCATE_TO_BOTTOM = "com.android.systemui.smartspace_relocate_to_bottom"; /** @hide */ + public static final String FLAG_SMARTSPACE_REMOTEVIEWS_RENDERING_FIX = "com.android.systemui.smartspace_remoteviews_rendering_fix"; + /** @hide */ public static final String FLAG_SMARTSPACE_SWIPE_EVENT_LOGGING_FIX = "com.android.systemui.smartspace_swipe_event_logging_fix"; /** @hide */ public static final String FLAG_SMARTSPACE_VIEWPAGER2 = "com.android.systemui.smartspace_viewpager2"; @@ -458,17 +478,11 @@ public final class Flags { /** @hide */ public static final String FLAG_SPATIAL_MODEL_APP_PUSHBACK = "com.android.systemui.spatial_model_app_pushback"; /** @hide */ - public static final String FLAG_SPATIAL_MODEL_BOUNCER_PUSHBACK = "com.android.systemui.spatial_model_bouncer_pushback"; - /** @hide */ - public static final String FLAG_SPATIAL_MODEL_PUSHBACK_IN_SHADER = "com.android.systemui.spatial_model_pushback_in_shader"; - /** @hide */ public static final String FLAG_STABILIZE_HEADS_UP_GROUP_V2 = "com.android.systemui.stabilize_heads_up_group_v2"; /** @hide */ public static final String FLAG_STATUS_BAR_ALWAYS_CHECK_UNDERLYING_NETWORKS = "com.android.systemui.status_bar_always_check_underlying_networks"; /** @hide */ - public static final String FLAG_STATUS_BAR_APP_HANDLE_TRACKING = "com.android.systemui.status_bar_app_handle_tracking"; - /** @hide */ - public static final String FLAG_STATUS_BAR_CHIP_TO_HUN_ANIMATION = "com.android.systemui.status_bar_chip_to_hun_animation"; + public static final String FLAG_STATUS_BAR_AUTO_START_SCREEN_RECORD_CHIP = "com.android.systemui.status_bar_auto_start_screen_record_chip"; /** @hide */ public static final String FLAG_STATUS_BAR_CHIPS_MODERNIZATION = "com.android.systemui.status_bar_chips_modernization"; /** @hide */ @@ -478,15 +492,15 @@ public final class Flags { /** @hide */ public static final String FLAG_STATUS_BAR_MOBILE_ICON_KAIROS = "com.android.systemui.status_bar_mobile_icon_kairos"; /** @hide */ + public static final String FLAG_STATUS_BAR_MONOCHROME_ICONS_FIX = "com.android.systemui.status_bar_monochrome_icons_fix"; + /** @hide */ public static final String FLAG_STATUS_BAR_NO_HUN_BEHAVIOR = "com.android.systemui.status_bar_no_hun_behavior"; /** @hide */ public static final String FLAG_STATUS_BAR_POPUP_CHIPS = "com.android.systemui.status_bar_popup_chips"; /** @hide */ - public static final String FLAG_STATUS_BAR_PRIVACY_CHIP_ANIMATION_EXEMPTION = "com.android.systemui.status_bar_privacy_chip_animation_exemption"; - /** @hide */ public static final String FLAG_STATUS_BAR_ROOT_MODERNIZATION = "com.android.systemui.status_bar_root_modernization"; /** @hide */ - public static final String FLAG_STATUS_BAR_RUDIMENTARY_BATTERY = "com.android.systemui.status_bar_rudimentary_battery"; + public static final String FLAG_STATUS_BAR_SHOW_AUDIO_ONLY_PROJECTION_CHIP = "com.android.systemui.status_bar_show_audio_only_projection_chip"; /** @hide */ public static final String FLAG_STATUS_BAR_SIGNAL_POLICY_REFACTOR = "com.android.systemui.status_bar_signal_policy_refactor"; /** @hide */ @@ -494,17 +508,17 @@ public final class Flags { /** @hide */ public static final String FLAG_STATUS_BAR_STATIC_INOUT_INDICATORS = "com.android.systemui.status_bar_static_inout_indicators"; /** @hide */ + public static final String FLAG_STATUS_BAR_STOP_UPDATING_WINDOW_HEIGHT = "com.android.systemui.status_bar_stop_updating_window_height"; + /** @hide */ public static final String FLAG_STATUS_BAR_SWIPE_OVER_CHIP = "com.android.systemui.status_bar_swipe_over_chip"; /** @hide */ public static final String FLAG_STATUS_BAR_SWITCH_TO_SPN_FROM_DATA_SPN = "com.android.systemui.status_bar_switch_to_spn_from_data_spn"; /** @hide */ - public static final String FLAG_STATUS_BAR_SYSTEM_STATUS_ICONS_IN_COMPOSE = "com.android.systemui.status_bar_system_status_icons_in_compose"; - /** @hide */ public static final String FLAG_STATUS_BAR_UI_THREAD = "com.android.systemui.status_bar_ui_thread"; /** @hide */ public static final String FLAG_STATUS_BAR_WINDOW_NO_CUSTOM_TOUCH = "com.android.systemui.status_bar_window_no_custom_touch"; /** @hide */ - public static final String FLAG_STUCK_HEARING_DEVICES_QS_TILE_FIX = "com.android.systemui.stuck_hearing_devices_qs_tile_fix"; + public static final String FLAG_STOPPABLE_FGS_SYSTEM_APP = "com.android.systemui.stoppable_fgs_system_app"; /** @hide */ public static final String FLAG_SWITCH_USER_ON_BG = "com.android.systemui.switch_user_on_bg"; /** @hide */ @@ -512,25 +526,33 @@ public final class Flags { /** @hide */ public static final String FLAG_THEME_OVERLAY_CONTROLLER_WAKEFULNESS_DEPRECATION = "com.android.systemui.theme_overlay_controller_wakefulness_deprecation"; /** @hide */ - public static final String FLAG_THIN_SCREEN_RECORDING_SERVICE = "com.android.systemui.thin_screen_recording_service"; + public static final String FLAG_TRANSITION_RACE_CONDITION = "com.android.systemui.transition_race_condition"; /** @hide */ - public static final String FLAG_TRANSITION_RACE_CONDITION_PART2 = "com.android.systemui.transition_race_condition_part2"; + public static final String FLAG_TRANSLUCENT_OCCLUDING_ACTIVITY_FIX = "com.android.systemui.translucent_occluding_activity_fix"; /** @hide */ public static final String FLAG_TV_GLOBAL_ACTIONS_FOCUS = "com.android.systemui.tv_global_actions_focus"; /** @hide */ - public static final String FLAG_UDFPS_SCREEN_OFF_UNLOCK_FLICKER = "com.android.systemui.udfps_screen_off_unlock_flicker"; - /** @hide */ - public static final String FLAG_UI_RICH_ONGOING_AOD_SKELETON_BG_INFLATION = "com.android.systemui.ui_rich_ongoing_aod_skeleton_bg_inflation"; + public static final String FLAG_UDFPS_VIEW_PERFORMANCE = "com.android.systemui.udfps_view_performance"; /** @hide */ public static final String FLAG_UNFOLD_ANIMATION_BACKGROUND_PROGRESS = "com.android.systemui.unfold_animation_background_progress"; /** @hide */ + public static final String FLAG_UNFOLD_LATENCY_TRACKING_FIX = "com.android.systemui.unfold_latency_tracking_fix"; + /** @hide */ public static final String FLAG_UPDATE_CORNER_RADIUS_ON_DISPLAY_CHANGED = "com.android.systemui.update_corner_radius_on_display_changed"; /** @hide */ public static final String FLAG_UPDATE_USER_SWITCHER_BACKGROUND = "com.android.systemui.update_user_switcher_background"; /** @hide */ public static final String FLAG_UPDATE_WINDOW_MAGNIFIER_BOTTOM_BOUNDARY = "com.android.systemui.update_window_magnifier_bottom_boundary"; /** @hide */ - public static final String FLAG_USE_AAD_PROX_SENSOR_IF_PRESENT = "com.android.systemui.use_aad_prox_sensor_if_present"; + public static final String FLAG_USE_AAD_PROX_SENSOR = "com.android.systemui.use_aad_prox_sensor"; + /** @hide */ + public static final String FLAG_USE_NOTIF_INFLATION_THREAD_FOR_FOOTER = "com.android.systemui.use_notif_inflation_thread_for_footer"; + /** @hide */ + public static final String FLAG_USE_NOTIF_INFLATION_THREAD_FOR_ROW = "com.android.systemui.use_notif_inflation_thread_for_row"; + /** @hide */ + public static final String FLAG_USE_TRANSITIONS_FOR_KEYGUARD_OCCLUDED = "com.android.systemui.use_transitions_for_keyguard_occluded"; + /** @hide */ + public static final String FLAG_USE_VOLUME_CONTROLLER = "com.android.systemui.use_volume_controller"; /** @hide */ public static final String FLAG_USER_AWARE_SETTINGS_REPOSITORIES = "com.android.systemui.user_aware_settings_repositories"; /** @hide */ @@ -542,308 +564,399 @@ public final class Flags { /** @hide */ public static final String FLAG_VOLUME_REDESIGN = "com.android.systemui.volume_redesign"; + + public static boolean activityTransitionUseLargestWindow() { return FEATURE_FLAGS.activityTransitionUseLargestWindow(); } + + + public static boolean addBlackBackgroundForWindowMagnifier() { + + return FEATURE_FLAGS.addBlackBackgroundForWindowMagnifier(); + } + + + public static boolean alwaysComposeQsUiFragment() { return FEATURE_FLAGS.alwaysComposeQsUiFragment(); } + + public static boolean ambientTouchMonitorListenToDisplayChanges() { return FEATURE_FLAGS.ambientTouchMonitorListenToDisplayChanges(); } - public static boolean animationLibraryDelayLeashCleanup() { - - return FEATURE_FLAGS.animationLibraryDelayLeashCleanup(); - } + public static boolean appClipsBacklinks() { return FEATURE_FLAGS.appClipsBacklinks(); } + + + public static boolean appShortcutRemovalFix() { + + return FEATURE_FLAGS.appShortcutRemovalFix(); + } + + + public static boolean avalancheReplaceHunWhenCritical() { return FEATURE_FLAGS.avalancheReplaceHunWhenCritical(); } - public static boolean backButtonOnBouncer() { + + public static boolean bindKeyguardMediaVisibility() { - return FEATURE_FLAGS.backButtonOnBouncer(); + return FEATURE_FLAGS.bindKeyguardMediaVisibility(); } - public static boolean bouncerLifecycleFix() { - - return FEATURE_FLAGS.bouncerLifecycleFix(); - } public static boolean bouncerUiRevamp() { return FEATURE_FLAGS.bouncerUiRevamp(); } + + public static boolean bouncerUiRevamp2() { return FEATURE_FLAGS.bouncerUiRevamp2(); } + + public static boolean bpColors() { return FEATURE_FLAGS.bpColors(); } + public static boolean brightnessSliderFocusState() { return FEATURE_FLAGS.brightnessSliderFocusState(); } + + + public static boolean checkLockscreenGoneTransition() { + + return FEATURE_FLAGS.checkLockscreenGoneTransition(); + } + + + public static boolean classicFlagsMultiUser() { return FEATURE_FLAGS.classicFlagsMultiUser(); } - public static boolean clipboardAnnounceLiveRegion() { + + + public static boolean clipboardImageTimeout() { - return FEATURE_FLAGS.clipboardAnnounceLiveRegion(); + return FEATURE_FLAGS.clipboardImageTimeout(); } + + public static boolean clipboardNoninteractiveOnLockscreen() { + + return FEATURE_FLAGS.clipboardNoninteractiveOnLockscreen(); + } + + + public static boolean clipboardOverlayMultiuser() { return FEATURE_FLAGS.clipboardOverlayMultiuser(); } + + + public static boolean clipboardSharedTransitions() { + + return FEATURE_FLAGS.clipboardSharedTransitions(); + } + + + public static boolean clipboardUseDescriptionMimetype() { return FEATURE_FLAGS.clipboardUseDescriptionMimetype(); } + public static boolean clockFidgetAnimation() { return FEATURE_FLAGS.clockFidgetAnimation(); } - public static boolean clockModernization() { - - return FEATURE_FLAGS.clockModernization(); - } public static boolean communalBouncerDoNotModifyPluginOpen() { return FEATURE_FLAGS.communalBouncerDoNotModifyPluginOpen(); } + + public static boolean communalEditWidgetsActivityFinishFix() { return FEATURE_FLAGS.communalEditWidgetsActivityFinishFix(); } + + public static boolean communalHub() { return FEATURE_FLAGS.communalHub(); } + + public static boolean communalHubUseThreadPoolForWidgets() { return FEATURE_FLAGS.communalHubUseThreadPoolForWidgets(); } + public static boolean communalResponsiveGrid() { return FEATURE_FLAGS.communalResponsiveGrid(); } - public static boolean communalShadeTouchHandlingFixes() { + + + public static boolean communalSceneKtfRefactor() { - return FEATURE_FLAGS.communalShadeTouchHandlingFixes(); + return FEATURE_FLAGS.communalSceneKtfRefactor(); } + public static boolean communalStandaloneSupport() { return FEATURE_FLAGS.communalStandaloneSupport(); } + + public static boolean communalTimerFlickerFix() { return FEATURE_FLAGS.communalTimerFlickerFix(); } + + public static boolean communalWidgetResizing() { return FEATURE_FLAGS.communalWidgetResizing(); } + + public static boolean communalWidgetTrampolineFix() { return FEATURE_FLAGS.communalWidgetTrampolineFix(); } + public static boolean composeBouncer() { return FEATURE_FLAGS.composeBouncer(); } + public static boolean confineNotificationTouchToViewWidth() { return FEATURE_FLAGS.confineNotificationTouchToViewWidth(); } + + public static boolean contAuthPlugin() { return FEATURE_FLAGS.contAuthPlugin(); } + + public static boolean contextualTipsAssistantDismissFix() { return FEATURE_FLAGS.contextualTipsAssistantDismissFix(); } + public static boolean coroutineTracing() { return FEATURE_FLAGS.coroutineTracing(); } + + public static boolean createWindowlessWindowMagnifier() { + + return FEATURE_FLAGS.createWindowlessWindowMagnifier(); + } + + + + public static boolean debugLiveUpdatesPromoteAll() { + + return FEATURE_FLAGS.debugLiveUpdatesPromoteAll(); + } + + + public static boolean decoupleViewControllerInAnimlib() { return FEATURE_FLAGS.decoupleViewControllerInAnimlib(); } + + public static boolean delayShowMagnificationButton() { + + return FEATURE_FLAGS.delayShowMagnificationButton(); + } + + + public static boolean desktopEffectsQsTile() { return FEATURE_FLAGS.desktopEffectsQsTile(); } - public static boolean desktopScreenCapture() { + + public static boolean deviceEntryUdfpsRefactor() { - return FEATURE_FLAGS.desktopScreenCapture(); + return FEATURE_FLAGS.deviceEntryUdfpsRefactor(); } + + public static boolean disableBlurredShadeVisible() { + + return FEATURE_FLAGS.disableBlurredShadeVisible(); + } + + + public static boolean disableContextualTipsFrequencyCheck() { return FEATURE_FLAGS.disableContextualTipsFrequencyCheck(); } + public static boolean disableContextualTipsIosSwitcherCheck() { return FEATURE_FLAGS.disableContextualTipsIosSwitcherCheck(); } - public static boolean disableDoubleClickSwapOnBouncer() { + + public static boolean disableShadeTrackpadTwoFingerSwipe() { - return FEATURE_FLAGS.disableDoubleClickSwapOnBouncer(); + return FEATURE_FLAGS.disableShadeTrackpadTwoFingerSwipe(); } - public static boolean doNotUseImmediateCoroutineDispatcher() { - - return FEATURE_FLAGS.doNotUseImmediateCoroutineDispatcher(); - } - public static boolean doubleTapToSleep() { return FEATURE_FLAGS.doubleTapToSleep(); } - public static boolean dreamBiometricPromptFixes() { - - return FEATURE_FLAGS.dreamBiometricPromptFixes(); - } + public static boolean dreamInputSessionPilferOnce() { return FEATURE_FLAGS.dreamInputSessionPilferOnce(); } + + public static boolean dreamOverlayBouncerSwipeDirectionFiltering() { return FEATURE_FLAGS.dreamOverlayBouncerSwipeDirectionFiltering(); } - public static boolean dreamOverlayUpdatedUi() { - - return FEATURE_FLAGS.dreamOverlayUpdatedUi(); - } - - public static boolean dreamPreviewTapDismiss() { - - return FEATURE_FLAGS.dreamPreviewTapDismiss(); - } - public static boolean dreamTransitionFixes() { + public static boolean dreamOverlayUpdatedFont() { - return FEATURE_FLAGS.dreamTransitionFixes(); + return FEATURE_FLAGS.dreamOverlayUpdatedFont(); } + public static boolean edgeBackGestureHandlerThread() { return FEATURE_FLAGS.edgeBackGestureHandlerThread(); } + + public static boolean edgebackGestureHandlerGetRunningTasksBackground() { return FEATURE_FLAGS.edgebackGestureHandlerGetRunningTasksBackground(); } + + public static boolean enableBackgroundKeyguardOndrawnCallback() { return FEATURE_FLAGS.enableBackgroundKeyguardOndrawnCallback(); } - public static boolean enableConstraintLayoutLockscreenOnExternalDisplay() { - - return FEATURE_FLAGS.enableConstraintLayoutLockscreenOnExternalDisplay(); - } public static boolean enableContextualTipForMuteVolume() { return FEATURE_FLAGS.enableContextualTipForMuteVolume(); } + + public static boolean enableContextualTipForPowerOff() { return FEATURE_FLAGS.enableContextualTipForPowerOff(); } + + public static boolean enableContextualTipForTakeScreenshot() { return FEATURE_FLAGS.enableContextualTipForTakeScreenshot(); } + + public static boolean enableContextualTips() { return FEATURE_FLAGS.enableContextualTips(); } - public static boolean enableDesktopGrowth() { - - return FEATURE_FLAGS.enableDesktopGrowth(); - } public static boolean enableEfficientDisplayRepository() { @@ -851,28 +964,13 @@ public final class Flags { } + public static boolean enableLayoutTracing() { return FEATURE_FLAGS.enableLayoutTracing(); } - public static boolean enableMinmode() { - - return FEATURE_FLAGS.enableMinmode(); - } - - - public static boolean enableSuggestedDeviceUi() { - - return FEATURE_FLAGS.enableSuggestedDeviceUi(); - } - - public static boolean enableTopUiController() { - - return FEATURE_FLAGS.enableTopUiController(); - } - public static boolean enableUnderlay() { @@ -880,70 +978,97 @@ public final class Flags { } + public static boolean enableViewCaptureTracing() { return FEATURE_FLAGS.enableViewCaptureTracing(); } + + public static boolean enforceBrightnessBaseUserRestriction() { return FEATURE_FLAGS.enforceBrightnessBaseUserRestriction(); } + public static boolean exampleFlag() { return FEATURE_FLAGS.exampleFlag(); } + + public static boolean expandCollapsePrivacyDialog() { return FEATURE_FLAGS.expandCollapsePrivacyDialog(); } + + public static boolean expandHeadsUpOnInlineReply() { return FEATURE_FLAGS.expandHeadsUpOnInlineReply(); } + public static boolean expandedPrivacyIndicatorsOnLargeScreen() { return FEATURE_FLAGS.expandedPrivacyIndicatorsOnLargeScreen(); } + public static boolean extendedAppsShortcutCategory() { return FEATURE_FLAGS.extendedAppsShortcutCategory(); } + + + public static boolean faceMessageDeferUpdate() { + + return FEATURE_FLAGS.faceMessageDeferUpdate(); + } + + + public static boolean faceScanningAnimationNpeFix() { return FEATURE_FLAGS.faceScanningAnimationNpeFix(); } + + + public static boolean fasterUnlockTransition() { + + return FEATURE_FLAGS.fasterUnlockTransition(); + } + + + public static boolean fetchBookmarksXmlKeyboardShortcuts() { return FEATURE_FLAGS.fetchBookmarksXmlKeyboardShortcuts(); } - public static boolean fixDialogLaunchAnimationJankLogging() { + + + public static boolean fixImageWallpaperCrashSurfaceAlreadyReleased() { - return FEATURE_FLAGS.fixDialogLaunchAnimationJankLogging(); + return FEATURE_FLAGS.fixImageWallpaperCrashSurfaceAlreadyReleased(); } + + public static boolean fixScreenshotActionDismissSystemWindows() { return FEATURE_FLAGS.fixScreenshotActionDismissSystemWindows(); } - public static boolean flashlightStrength() { - - return FEATURE_FLAGS.flashlightStrength(); - } - public static boolean floatingMenuAnimatedTuck() { @@ -951,45 +1076,69 @@ public final class Flags { } + + public static boolean floatingMenuDisplayCutoutSupport() { + + return FEATURE_FLAGS.floatingMenuDisplayCutoutSupport(); + } + + + + public static boolean floatingMenuDragToEdit() { + + return FEATURE_FLAGS.floatingMenuDragToEdit(); + } + + + public static boolean floatingMenuDragToHide() { return FEATURE_FLAGS.floatingMenuDragToHide(); } + public static boolean floatingMenuHearingDeviceStatusIcon() { return FEATURE_FLAGS.floatingMenuHearingDeviceStatusIcon(); } + public static boolean floatingMenuImeDisplacementAnimation() { return FEATURE_FLAGS.floatingMenuImeDisplacementAnimation(); } + + + public static boolean floatingMenuNarrowTargetContentObserver() { + + return FEATURE_FLAGS.floatingMenuNarrowTargetContentObserver(); + } + + + public static boolean floatingMenuNotifyTargetsChangedOnStrictDiff() { return FEATURE_FLAGS.floatingMenuNotifyTargetsChangedOnStrictDiff(); } + public static boolean floatingMenuOverlapsNavBarsFlag() { return FEATURE_FLAGS.floatingMenuOverlapsNavBarsFlag(); } + public static boolean floatingMenuRadiiAnimation() { return FEATURE_FLAGS.floatingMenuRadiiAnimation(); } - public static boolean floatingMenuRemoveFullscreenTaps() { - - return FEATURE_FLAGS.floatingMenuRemoveFullscreenTaps(); - } public static boolean getConnectedDeviceNameUnsynchronized() { @@ -997,72 +1146,83 @@ public final class Flags { } + public static boolean glanceableHubAllowKeyguardWhenDreaming() { return FEATURE_FLAGS.glanceableHubAllowKeyguardWhenDreaming(); } + public static boolean glanceableHubBlurredBackground() { return FEATURE_FLAGS.glanceableHubBlurredBackground(); } + public static boolean glanceableHubDirectEditMode() { return FEATURE_FLAGS.glanceableHubDirectEditMode(); } + public static boolean glanceableHubV2() { return FEATURE_FLAGS.glanceableHubV2(); } + public static boolean glanceableHubV2Resources() { return FEATURE_FLAGS.glanceableHubV2Resources(); } + + + public static boolean hapticsForComposeSliders() { + + return FEATURE_FLAGS.hapticsForComposeSliders(); + } + + + public static boolean hardwareColorStyles() { return FEATURE_FLAGS.hardwareColorStyles(); } + + public static boolean hearingAidsQsTileDialog() { return FEATURE_FLAGS.hearingAidsQsTileDialog(); } + + public static boolean hearingDevicesDialogRelatedTools() { return FEATURE_FLAGS.hearingDevicesDialogRelatedTools(); } + public static boolean hideRingerButtonInSingleVolumeMode() { return FEATURE_FLAGS.hideRingerButtonInSingleVolumeMode(); } + + public static boolean homeControlsDreamHsum() { return FEATURE_FLAGS.homeControlsDreamHsum(); } - public static boolean hsuBehaviorChanges() { - - return FEATURE_FLAGS.hsuBehaviorChanges(); - } - - public static boolean hubBlurredByShadeFix() { - - return FEATURE_FLAGS.hubBlurredByShadeFix(); - } - public static boolean hubEditModeTouchAdjustments() { @@ -1070,25 +1230,40 @@ public final class Flags { } - public static boolean hubEditModeTransition() { + + public static boolean hubmodeFullscreenVerticalSwipe() { - return FEATURE_FLAGS.hubEditModeTransition(); + return FEATURE_FLAGS.hubmodeFullscreenVerticalSwipe(); } + + + public static boolean hubmodeFullscreenVerticalSwipeFix() { + + return FEATURE_FLAGS.hubmodeFullscreenVerticalSwipeFix(); + } + + + public static boolean iconRefresh2025() { return FEATURE_FLAGS.iconRefresh2025(); } + + + public static boolean ignoreTouchesNextToNotificationShelf() { + + return FEATURE_FLAGS.ignoreTouchesNextToNotificationShelf(); + } + + + public static boolean indicationTextA11yFix() { return FEATURE_FLAGS.indicationTextA11yFix(); } - public static boolean instantHideShade() { - - return FEATURE_FLAGS.instantHideShade(); - } public static boolean keyboardDockingIndicator() { @@ -1096,53 +1271,63 @@ public final class Flags { return FEATURE_FLAGS.keyboardDockingIndicator(); } + + public static boolean keyboardShortcutHelperRewrite() { return FEATURE_FLAGS.keyboardShortcutHelperRewrite(); } + + public static boolean keyboardShortcutHelperShortcutCustomizer() { return FEATURE_FLAGS.keyboardShortcutHelperShortcutCustomizer(); } + + public static boolean keyboardTouchpadContextualEducation() { return FEATURE_FLAGS.keyboardTouchpadContextualEducation(); } + public static boolean keyguardTransitionForceFinishOnScreenOff() { return FEATURE_FLAGS.keyguardTransitionForceFinishOnScreenOff(); } + + public static boolean keyguardWmReorderAtmsCalls() { + + return FEATURE_FLAGS.keyguardWmReorderAtmsCalls(); + } + + + public static boolean keyguardWmStateRefactor() { return FEATURE_FLAGS.keyguardWmStateRefactor(); } + + public static boolean lockscreenFont() { return FEATURE_FLAGS.lockscreenFont(); } + public static boolean lowLightClockDream() { return FEATURE_FLAGS.lowLightClockDream(); } - public static boolean lowlightClockSetBrightness() { - - return FEATURE_FLAGS.lowlightClockSetBrightness(); - } - public static boolean lowlightClockUsesKeyguardChargingStatus() { - - return FEATURE_FLAGS.lowlightClockUsesKeyguardChargingStatus(); - } public static boolean magneticNotificationSwipes() { @@ -1150,76 +1335,139 @@ public final class Flags { } + + public static boolean mediaControlsA11yColors() { + + return FEATURE_FLAGS.mediaControlsA11yColors(); + } + + + public static boolean mediaControlsButtonMedia3() { return FEATURE_FLAGS.mediaControlsButtonMedia3(); } + public static boolean mediaControlsButtonMedia3Placement() { return FEATURE_FLAGS.mediaControlsButtonMedia3Placement(); } - public static boolean mediaControlsInCompose() { + + public static boolean mediaControlsDeviceManagerBackgroundExecution() { - return FEATURE_FLAGS.mediaControlsInCompose(); + return FEATURE_FLAGS.mediaControlsDeviceManagerBackgroundExecution(); } + + + public static boolean mediaControlsDrawablesReuseBugfix() { + + return FEATURE_FLAGS.mediaControlsDrawablesReuseBugfix(); + } + + + + public static boolean mediaControlsLockscreenShadeBugFix() { + + return FEATURE_FLAGS.mediaControlsLockscreenShadeBugFix(); + } + + + public static boolean mediaControlsUiUpdate() { return FEATURE_FLAGS.mediaControlsUiUpdate(); } + + + public static boolean mediaControlsUmoInflationInBackground() { + + return FEATURE_FLAGS.mediaControlsUmoInflationInBackground(); + } + + + + public static boolean mediaControlsUserInitiatedDeleteintent() { + + return FEATURE_FLAGS.mediaControlsUserInitiatedDeleteintent(); + } + + + + public static boolean mediaLoadMetadataViaMediaDataLoader() { + + return FEATURE_FLAGS.mediaLoadMetadataViaMediaDataLoader(); + } + + + + public static boolean mediaLockscreenLaunchAnimation() { + + return FEATURE_FLAGS.mediaLockscreenLaunchAnimation(); + } + + + public static boolean mediaProjectionDialogBehindLockscreen() { return FEATURE_FLAGS.mediaProjectionDialogBehindLockscreen(); } + + public static boolean mediaProjectionGreyErrorText() { return FEATURE_FLAGS.mediaProjectionGreyErrorText(); } + public static boolean mediaProjectionRequestAttributionFix() { return FEATURE_FLAGS.mediaProjectionRequestAttributionFix(); } + public static boolean modesUiDialogPaging() { return FEATURE_FLAGS.modesUiDialogPaging(); } + + public static boolean moveTransitionAnimationLayer() { return FEATURE_FLAGS.moveTransitionAnimationLayer(); } + + public static boolean msdlFeedback() { return FEATURE_FLAGS.msdlFeedback(); } + public static boolean multiuserWifiPickerTrackerSupport() { return FEATURE_FLAGS.multiuserWifiPickerTrackerSupport(); } + + public static boolean newAodTransition() { return FEATURE_FLAGS.newAodTransition(); } - public static boolean newDozingKeyguardStates() { - - return FEATURE_FLAGS.newDozingKeyguardStates(); - } public static boolean newVolumePanel() { @@ -1227,112 +1475,159 @@ public final class Flags { } + public static boolean nonTouchscreenDevicesBypassFalsing() { return FEATURE_FLAGS.nonTouchscreenDevicesBypassFalsing(); } + public static boolean notesRoleQsTile() { return FEATURE_FLAGS.notesRoleQsTile(); } + public static boolean notificationAddXOnHoverToDismiss() { return FEATURE_FLAGS.notificationAddXOnHoverToDismiss(); } + public static boolean notificationAmbientSuppressionAfterInflation() { return FEATURE_FLAGS.notificationAmbientSuppressionAfterInflation(); } + + public static boolean notificationAnimatedActionsTreatment() { return FEATURE_FLAGS.notificationAnimatedActionsTreatment(); } + + public static boolean notificationAppearNonlinear() { return FEATURE_FLAGS.notificationAppearNonlinear(); } + + public static boolean notificationAsyncGroupHeaderInflation() { return FEATURE_FLAGS.notificationAsyncGroupHeaderInflation(); } + + public static boolean notificationAsyncHybridViewInflation() { return FEATURE_FLAGS.notificationAsyncHybridViewInflation(); } + + public static boolean notificationAvalancheSuppression() { return FEATURE_FLAGS.notificationAvalancheSuppression(); } + + public static boolean notificationAvalancheThrottleHun() { return FEATURE_FLAGS.notificationAvalancheThrottleHun(); } + public static boolean notificationBackgroundTintOptimization() { return FEATURE_FLAGS.notificationBackgroundTintOptimization(); } + public static boolean notificationBundleUi() { return FEATURE_FLAGS.notificationBundleUi(); } + public static boolean notificationColorUpdateLogger() { return FEATURE_FLAGS.notificationColorUpdateLogger(); } + + public static boolean notificationContentAlphaOptimization() { return FEATURE_FLAGS.notificationContentAlphaOptimization(); } + public static boolean notificationFooterBackgroundTintOptimization() { return FEATURE_FLAGS.notificationFooterBackgroundTintOptimization(); } + + + public static boolean notificationOverExpansionClippingFix() { + + return FEATURE_FLAGS.notificationOverExpansionClippingFix(); + } + + + + public static boolean notificationReentrantDismiss() { + + return FEATURE_FLAGS.notificationReentrantDismiss(); + } + + + public static boolean notificationRowAccessibilityExpanded() { return FEATURE_FLAGS.notificationRowAccessibilityExpanded(); } + + public static boolean notificationRowContentBinderRefactor() { return FEATURE_FLAGS.notificationRowContentBinderRefactor(); } + + public static boolean notificationRowTransparency() { return FEATURE_FLAGS.notificationRowTransparency(); } + + + public static boolean notificationRowUserContext() { + + return FEATURE_FLAGS.notificationRowUserContext(); + } + + + public static boolean notificationShadeBlur() { return FEATURE_FLAGS.notificationShadeBlur(); } - public static boolean notificationShadeCloseWaitsForChildAnimations() { - - return FEATURE_FLAGS.notificationShadeCloseWaitsForChildAnimations(); - } public static boolean notificationShadeUiThread() { @@ -1341,158 +1636,209 @@ public final class Flags { } + public static boolean notificationSkipSilentUpdates() { return FEATURE_FLAGS.notificationSkipSilentUpdates(); } + + public static boolean notificationTransparentHeaderFix() { return FEATURE_FLAGS.notificationTransparentHeaderFix(); } + + + public static boolean notificationViewFlipperPausingV2() { + + return FEATURE_FLAGS.notificationViewFlipperPausingV2(); + } + + + public static boolean notificationsBackgroundIcons() { return FEATURE_FLAGS.notificationsBackgroundIcons(); } + + public static boolean notificationsFooterVisibilityFix() { return FEATURE_FLAGS.notificationsFooterVisibilityFix(); } + public static boolean notificationsHideOnDisplaySwitch() { return FEATURE_FLAGS.notificationsHideOnDisplaySwitch(); } - public static boolean notificationsHunAccessibilityRefactor() { - - return FEATURE_FLAGS.notificationsHunAccessibilityRefactor(); - } public static boolean notificationsHunSharedAnimationValues() { return FEATURE_FLAGS.notificationsHunSharedAnimationValues(); } + + public static boolean notificationsIconContainerRefactor() { return FEATURE_FLAGS.notificationsIconContainerRefactor(); } + + public static boolean notificationsLaunchRadius() { return FEATURE_FLAGS.notificationsLaunchRadius(); } + + public static boolean notificationsLiveDataStoreRefactor() { return FEATURE_FLAGS.notificationsLiveDataStoreRefactor(); } + + public static boolean notificationsPinnedHunInShade() { return FEATURE_FLAGS.notificationsPinnedHunInShade(); } + + public static boolean notificationsRedesignFooterView() { return FEATURE_FLAGS.notificationsRedesignFooterView(); } + + + public static boolean notificationsRedesignGuts() { + + return FEATURE_FLAGS.notificationsRedesignGuts(); + } + + + public static boolean notifyPasswordTextViewUserActivityInBackground() { return FEATURE_FLAGS.notifyPasswordTextViewUserActivityInBackground(); } + + public static boolean notifyPowerManagerUserActivityBackground() { return FEATURE_FLAGS.notifyPowerManagerUserActivityBackground(); } - public static boolean ongoingActivityChipsOnDream() { + + public static boolean onlyShowMediaStreamSliderInSingleVolumeMode() { - return FEATURE_FLAGS.ongoingActivityChipsOnDream(); + return FEATURE_FLAGS.onlyShowMediaStreamSliderInSingleVolumeMode(); } + + public static boolean outputSwitcherRedesign() { + + return FEATURE_FLAGS.outputSwitcherRedesign(); + } + + + public static boolean overrideSuppressOverlayCondition() { return FEATURE_FLAGS.overrideSuppressOverlayCondition(); } + public static boolean permissionHelperInlineUiRichOngoing() { return FEATURE_FLAGS.permissionHelperInlineUiRichOngoing(); } + + public static boolean permissionHelperUiRichOngoing() { return FEATURE_FLAGS.permissionHelperUiRichOngoing(); } + + public static boolean physicalNotificationMovement() { return FEATURE_FLAGS.physicalNotificationMovement(); } + + public static boolean pinInputFieldStyledFocusState() { return FEATURE_FLAGS.pinInputFieldStyledFocusState(); } + public static boolean predictiveBackAnimateShade() { return FEATURE_FLAGS.predictiveBackAnimateShade(); } + public static boolean predictiveBackDelayWmTransition() { return FEATURE_FLAGS.predictiveBackDelayWmTransition(); } - public static boolean privacyDotLiveRegion() { + + public static boolean priorityPeopleSection() { - return FEATURE_FLAGS.privacyDotLiveRegion(); + return FEATURE_FLAGS.priorityPeopleSection(); } + public static boolean promoteNotificationsAutomatically() { return FEATURE_FLAGS.promoteNotificationsAutomatically(); } + + public static boolean pssAppSelectorRecentsSplitScreen() { + + return FEATURE_FLAGS.pssAppSelectorRecentsSplitScreen(); + } + + + public static boolean pssTaskSwitcher() { return FEATURE_FLAGS.pssTaskSwitcher(); } - public static boolean qsComposeFragmentEarlyExpansion() { + + public static boolean qsCustomTileClickGuaranteedBugFix() { - return FEATURE_FLAGS.qsComposeFragmentEarlyExpansion(); + return FEATURE_FLAGS.qsCustomTileClickGuaranteedBugFix(); } - public static boolean qsEditModeTabs() { - - return FEATURE_FLAGS.qsEditModeTabs(); - } - - public static boolean qsEditModeTooltip() { - - return FEATURE_FLAGS.qsEditModeTooltip(); - } - public static boolean qsNewTiles() { @@ -1500,44 +1846,55 @@ public final class Flags { } + public static boolean qsNewTilesFuture() { return FEATURE_FLAGS.qsNewTilesFuture(); } + + public static boolean qsQuickRebindActiveTiles() { + + return FEATURE_FLAGS.qsQuickRebindActiveTiles(); + } + + + + public static boolean qsRegisterSettingObserverOnBgThread() { + + return FEATURE_FLAGS.qsRegisterSettingObserverOnBgThread(); + } + + + public static boolean qsTileDetailedView() { return FEATURE_FLAGS.qsTileDetailedView(); } + + public static boolean qsTileFocusState() { return FEATURE_FLAGS.qsTileFocusState(); } - public static boolean qsTileTransitionInteractionRefinement() { - - return FEATURE_FLAGS.qsTileTransitionInteractionRefinement(); - } - public static boolean qsUiRefactor() { return FEATURE_FLAGS.qsUiRefactor(); } + + public static boolean qsUiRefactorComposeFragment() { return FEATURE_FLAGS.qsUiRefactorComposeFragment(); } - public static boolean qsWifiConfig() { - - return FEATURE_FLAGS.qsWifiConfig(); - } public static boolean recordIssueQsTile() { @@ -1545,43 +1902,55 @@ public final class Flags { } + public static boolean redesignMagnificationWindowSize() { return FEATURE_FLAGS.redesignMagnificationWindowSize(); } + + public static boolean refactorGetCurrentUser() { + + return FEATURE_FLAGS.refactorGetCurrentUser(); + } + + + public static boolean registerBatteryControllerReceiversInCorestartable() { return FEATURE_FLAGS.registerBatteryControllerReceiversInCorestartable(); } + + public static boolean registerContentObserversAsync() { return FEATURE_FLAGS.registerContentObserversAsync(); } + + public static boolean registerNewWalletCardInBackground() { return FEATURE_FLAGS.registerNewWalletCardInBackground(); } + + public static boolean registerWallpaperNotifierBackground() { return FEATURE_FLAGS.registerWallpaperNotifierBackground(); } - public static boolean rememberViewModelOffMainThread() { + + public static boolean relockWithPowerButtonImmediately() { - return FEATURE_FLAGS.rememberViewModelOffMainThread(); + return FEATURE_FLAGS.relockWithPowerButtonImmediately(); } - public static boolean removeAodCarMode() { - - return FEATURE_FLAGS.removeAodCarMode(); - } public static boolean removeDreamOverlayHideOnTouch() { @@ -1589,10 +1958,6 @@ public final class Flags { } - public static boolean removeNearbyShareTileAnimation() { - - return FEATURE_FLAGS.removeNearbyShareTileAnimation(); - } public static boolean removeUpdateListenerInQsIconViewImpl() { @@ -1600,21 +1965,20 @@ public final class Flags { } + public static boolean restToUnlock() { return FEATURE_FLAGS.restToUnlock(); } + public static boolean restartDreamOnUnocclude() { return FEATURE_FLAGS.restartDreamOnUnocclude(); } - public static boolean restrictCommunalAppWidgetHostListening() { - - return FEATURE_FLAGS.restrictCommunalAppWidgetHostListening(); - } + public static boolean revampedBouncerMessages() { @@ -1622,27 +1986,27 @@ public final class Flags { } + public static boolean runFingerprintDetectOnDismissibleKeyguard() { return FEATURE_FLAGS.runFingerprintDetectOnDismissibleKeyguard(); } + + public static boolean saveAndRestoreMagnificationSettingsButtons() { return FEATURE_FLAGS.saveAndRestoreMagnificationSettingsButtons(); } + public static boolean sceneContainer() { return FEATURE_FLAGS.sceneContainer(); } - public static boolean screenReactions() { - - return FEATURE_FLAGS.screenReactions(); - } public static boolean screenshareNotificationHidingBugFix() { @@ -1650,15 +2014,12 @@ public final class Flags { } + public static boolean screenshotActionDismissSystemWindows() { return FEATURE_FLAGS.screenshotActionDismissSystemWindows(); } - public static boolean screenshotAnnounceLiveRegion() { - - return FEATURE_FLAGS.screenshotAnnounceLiveRegion(); - } public static boolean screenshotMultidisplayFocusChange() { @@ -1666,36 +2027,49 @@ public final class Flags { return FEATURE_FLAGS.screenshotMultidisplayFocusChange(); } + + public static boolean screenshotPolicySplitAndDesktopMode() { return FEATURE_FLAGS.screenshotPolicySplitAndDesktopMode(); } + + public static boolean screenshotScrollCropViewCrashFix() { return FEATURE_FLAGS.screenshotScrollCropViewCrashFix(); } + + public static boolean screenshotUiControllerRefactor() { + + return FEATURE_FLAGS.screenshotUiControllerRefactor(); + } + + + public static boolean secondaryUserWidgetHost() { return FEATURE_FLAGS.secondaryUserWidgetHost(); } + + public static boolean settingsExtRegisterContentObserverOnBgThread() { return FEATURE_FLAGS.settingsExtRegisterContentObserverOnBgThread(); } + + public static boolean shadeExpandsOnStatusBarLongPress() { return FEATURE_FLAGS.shadeExpandsOnStatusBarLongPress(); } - public static boolean shadeHeaderBlurFontColor() { - - return FEATURE_FLAGS.shadeHeaderBlurFontColor(); - } + public static boolean shadeHeaderFontUpdate() { @@ -1703,117 +2077,174 @@ public final class Flags { } - public static boolean shadeQsvisibleLogic() { + + public static boolean shadeLaunchAccessibility() { - return FEATURE_FLAGS.shadeQsvisibleLogic(); + return FEATURE_FLAGS.shadeLaunchAccessibility(); } + public static boolean shadeWindowGoesAround() { return FEATURE_FLAGS.shadeWindowGoesAround(); } + + public static boolean shaderlibLoadingEffectRefactor() { return FEATURE_FLAGS.shaderlibLoadingEffectRefactor(); } + + public static boolean shortcutHelperKeyGlyph() { return FEATURE_FLAGS.shortcutHelperKeyGlyph(); } + + public static boolean showAudioSharingSliderInVolumePanel() { return FEATURE_FLAGS.showAudioSharingSliderInVolumePanel(); } + public static boolean showClipboardIndication() { return FEATURE_FLAGS.showClipboardIndication(); } + public static boolean showLockedByYourWatchKeyguardIndicator() { return FEATURE_FLAGS.showLockedByYourWatchKeyguardIndicator(); } + + + public static boolean showToastWhenAppControlBrightness() { + + return FEATURE_FLAGS.showToastWhenAppControlBrightness(); + } + + + public static boolean simPinBouncerReset() { return FEATURE_FLAGS.simPinBouncerReset(); } + + + public static boolean simPinRaceConditionOnRestart() { + + return FEATURE_FLAGS.simPinRaceConditionOnRestart(); + } + + + + public static boolean simPinUseSlotId() { + + return FEATURE_FLAGS.simPinUseSlotId(); + } + + + public static boolean skipHideSensitiveNotifAnimation() { return FEATURE_FLAGS.skipHideSensitiveNotifAnimation(); } + + + public static boolean sliceBroadcastRelayInBackground() { + + return FEATURE_FLAGS.sliceBroadcastRelayInBackground(); + } + + + public static boolean sliceManagerBinderCallBackground() { return FEATURE_FLAGS.sliceManagerBinderCallBackground(); } + + public static boolean smartspaceLockscreenViewmodel() { + + return FEATURE_FLAGS.smartspaceLockscreenViewmodel(); + } + + + public static boolean smartspaceRelocateToBottom() { return FEATURE_FLAGS.smartspaceRelocateToBottom(); } + + + public static boolean smartspaceRemoteviewsRenderingFix() { + + return FEATURE_FLAGS.smartspaceRemoteviewsRenderingFix(); + } + + + public static boolean smartspaceSwipeEventLoggingFix() { return FEATURE_FLAGS.smartspaceSwipeEventLoggingFix(); } + + public static boolean smartspaceViewpager2() { return FEATURE_FLAGS.smartspaceViewpager2(); } + + public static boolean sounddoseCustomization() { return FEATURE_FLAGS.sounddoseCustomization(); } + + public static boolean spatialModelAppPushback() { return FEATURE_FLAGS.spatialModelAppPushback(); } - public static boolean spatialModelBouncerPushback() { - - return FEATURE_FLAGS.spatialModelBouncerPushback(); - } - - public static boolean spatialModelPushbackInShader() { - - return FEATURE_FLAGS.spatialModelPushbackInShader(); - } public static boolean stabilizeHeadsUpGroupV2() { return FEATURE_FLAGS.stabilizeHeadsUpGroupV2(); } + + public static boolean statusBarAlwaysCheckUnderlyingNetworks() { return FEATURE_FLAGS.statusBarAlwaysCheckUnderlyingNetworks(); } - public static boolean statusBarAppHandleTracking() { + + public static boolean statusBarAutoStartScreenRecordChip() { - return FEATURE_FLAGS.statusBarAppHandleTracking(); + return FEATURE_FLAGS.statusBarAutoStartScreenRecordChip(); } - public static boolean statusBarChipToHunAnimation() { - - return FEATURE_FLAGS.statusBarChipToHunAnimation(); - } public static boolean statusBarChipsModernization() { @@ -1821,37 +2252,48 @@ public final class Flags { } + public static boolean statusBarChipsReturnAnimations() { return FEATURE_FLAGS.statusBarChipsReturnAnimations(); } + + public static boolean statusBarFontUpdates() { return FEATURE_FLAGS.statusBarFontUpdates(); } + public static boolean statusBarMobileIconKairos() { return FEATURE_FLAGS.statusBarMobileIconKairos(); } + + + public static boolean statusBarMonochromeIconsFix() { + + return FEATURE_FLAGS.statusBarMonochromeIconsFix(); + } + + + public static boolean statusBarNoHunBehavior() { return FEATURE_FLAGS.statusBarNoHunBehavior(); } + public static boolean statusBarPopupChips() { return FEATURE_FLAGS.statusBarPopupChips(); } - public static boolean statusBarPrivacyChipAnimationExemption() { - - return FEATURE_FLAGS.statusBarPrivacyChipAnimationExemption(); - } + public static boolean statusBarRootModernization() { @@ -1859,149 +2301,224 @@ public final class Flags { } - public static boolean statusBarRudimentaryBattery() { + + public static boolean statusBarShowAudioOnlyProjectionChip() { - return FEATURE_FLAGS.statusBarRudimentaryBattery(); + return FEATURE_FLAGS.statusBarShowAudioOnlyProjectionChip(); } + + public static boolean statusBarSignalPolicyRefactor() { return FEATURE_FLAGS.statusBarSignalPolicyRefactor(); } + + public static boolean statusBarSignalPolicyRefactorEthernet() { return FEATURE_FLAGS.statusBarSignalPolicyRefactorEthernet(); } + public static boolean statusBarStaticInoutIndicators() { return FEATURE_FLAGS.statusBarStaticInoutIndicators(); } + + + public static boolean statusBarStopUpdatingWindowHeight() { + + return FEATURE_FLAGS.statusBarStopUpdatingWindowHeight(); + } + + + public static boolean statusBarSwipeOverChip() { return FEATURE_FLAGS.statusBarSwipeOverChip(); } + + public static boolean statusBarSwitchToSpnFromDataSpn() { return FEATURE_FLAGS.statusBarSwitchToSpnFromDataSpn(); } - public static boolean statusBarSystemStatusIconsInCompose() { - - return FEATURE_FLAGS.statusBarSystemStatusIconsInCompose(); - } - public static boolean statusBarUiThread() { return FEATURE_FLAGS.statusBarUiThread(); } + + public static boolean statusBarWindowNoCustomTouch() { return FEATURE_FLAGS.statusBarWindowNoCustomTouch(); } - public static boolean stuckHearingDevicesQsTileFix() { + + + public static boolean stoppableFgsSystemApp() { - return FEATURE_FLAGS.stuckHearingDevicesQsTileFix(); + return FEATURE_FLAGS.stoppableFgsSystemApp(); } + + public static boolean switchUserOnBg() { return FEATURE_FLAGS.switchUserOnBg(); } + public static boolean sysuiTeamfood() { return FEATURE_FLAGS.sysuiTeamfood(); } + public static boolean themeOverlayControllerWakefulnessDeprecation() { return FEATURE_FLAGS.themeOverlayControllerWakefulnessDeprecation(); } - public static boolean thinScreenRecordingService() { + + public static boolean transitionRaceCondition() { - return FEATURE_FLAGS.thinScreenRecordingService(); + return FEATURE_FLAGS.transitionRaceCondition(); } - public static boolean transitionRaceConditionPart2() { + + + public static boolean translucentOccludingActivityFix() { - return FEATURE_FLAGS.transitionRaceConditionPart2(); + return FEATURE_FLAGS.translucentOccludingActivityFix(); } + + public static boolean tvGlobalActionsFocus() { return FEATURE_FLAGS.tvGlobalActionsFocus(); } - public static boolean udfpsScreenOffUnlockFlicker() { + + + public static boolean udfpsViewPerformance() { - return FEATURE_FLAGS.udfpsScreenOffUnlockFlicker(); + return FEATURE_FLAGS.udfpsViewPerformance(); } - public static boolean uiRichOngoingAodSkeletonBgInflation() { - - return FEATURE_FLAGS.uiRichOngoingAodSkeletonBgInflation(); - } + public static boolean unfoldAnimationBackgroundProgress() { return FEATURE_FLAGS.unfoldAnimationBackgroundProgress(); } + + + public static boolean unfoldLatencyTrackingFix() { + + return FEATURE_FLAGS.unfoldLatencyTrackingFix(); + } + + + public static boolean updateCornerRadiusOnDisplayChanged() { return FEATURE_FLAGS.updateCornerRadiusOnDisplayChanged(); } + + public static boolean updateUserSwitcherBackground() { return FEATURE_FLAGS.updateUserSwitcherBackground(); } + + public static boolean updateWindowMagnifierBottomBoundary() { return FEATURE_FLAGS.updateWindowMagnifierBottomBoundary(); } - public static boolean useAadProxSensorIfPresent() { + + public static boolean useAadProxSensor() { - return FEATURE_FLAGS.useAadProxSensorIfPresent(); + return FEATURE_FLAGS.useAadProxSensor(); } + + + public static boolean useNotifInflationThreadForFooter() { + + return FEATURE_FLAGS.useNotifInflationThreadForFooter(); + } + + + + public static boolean useNotifInflationThreadForRow() { + + return FEATURE_FLAGS.useNotifInflationThreadForRow(); + } + + + + public static boolean useTransitionsForKeyguardOccluded() { + + return FEATURE_FLAGS.useTransitionsForKeyguardOccluded(); + } + + + + public static boolean useVolumeController() { + + return FEATURE_FLAGS.useVolumeController(); + } + + + public static boolean userAwareSettingsRepositories() { return FEATURE_FLAGS.userAwareSettingsRepositories(); } + + public static boolean userEncryptedSource() { return FEATURE_FLAGS.userEncryptedSource(); } + public static boolean userSwitcherAddSignOutOption() { return FEATURE_FLAGS.userSwitcherAddSignOutOption(); } + + public static boolean visualInterruptionsRefactor() { return FEATURE_FLAGS.visualInterruptionsRefactor(); } + + public static boolean volumeRedesign() { return FEATURE_FLAGS.volumeRedesign(); diff --git a/flags/src/com/android/systemui/shared/CustomFeatureFlags.java b/flags/src/com/android/systemui/shared/CustomFeatureFlags.java index 8b4f34cd12..18f1f2b21d 100644 --- a/flags/src/com/android/systemui/shared/CustomFeatureFlags.java +++ b/flags/src/com/android/systemui/shared/CustomFeatureFlags.java @@ -1,5 +1,6 @@ package com.android.systemui.shared; +// TODO(b/303773055): Remove the annotation after access issue is resolved. import java.util.Arrays; import java.util.HashSet; @@ -59,16 +60,9 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableLppAssistInvocationEffect() { - return getValue(Flags.FLAG_ENABLE_LPP_ASSIST_INVOCATION_EFFECT, - FeatureFlags::enableLppAssistInvocationEffect); - } - - @Override - - public boolean enableLppAssistInvocationHapticEffect() { - return getValue(Flags.FLAG_ENABLE_LPP_ASSIST_INVOCATION_HAPTIC_EFFECT, - FeatureFlags::enableLppAssistInvocationHapticEffect); + public boolean enableLppSqueezeEffect() { + return getValue(Flags.FLAG_ENABLE_LPP_SQUEEZE_EFFECT, + FeatureFlags::enableLppSqueezeEffect); } @Override @@ -87,13 +81,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean extendibleThemeManager() { - return getValue(Flags.FLAG_EXTENDIBLE_THEME_MANAGER, - FeatureFlags::extendibleThemeManager); - } - - @Override - public boolean lockscreenCustomClocks() { return getValue(Flags.FLAG_LOCKSCREEN_CUSTOM_CLOCKS, FeatureFlags::lockscreenCustomClocks); @@ -150,6 +137,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean smartspaceRemoteviewsIntentHandler() { + return getValue(Flags.FLAG_SMARTSPACE_REMOTEVIEWS_INTENT_HANDLER, + FeatureFlags::smartspaceRemoteviewsIntentHandler); + } + + @Override + public boolean smartspaceSportsCardBackground() { return getValue(Flags.FLAG_SMARTSPACE_SPORTS_CARD_BACKGROUND, FeatureFlags::smartspaceSportsCardBackground); @@ -171,13 +165,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean smartspaceWeatherUseMonochromeFontIcons() { - return getValue(Flags.FLAG_SMARTSPACE_WEATHER_USE_MONOCHROME_FONT_ICONS, - FeatureFlags::smartspaceWeatherUseMonochromeFontIcons); - } - - @Override - public boolean statusBarConnectedDisplays() { return getValue(Flags.FLAG_STATUS_BAR_CONNECTED_DISPLAYS, FeatureFlags::statusBarConnectedDisplays); @@ -222,11 +209,9 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_CLOCK_REACTIVE_VARIANTS, Flags.FLAG_CURSOR_HOT_CORNER, Flags.FLAG_ENABLE_HOME_DELAY, - Flags.FLAG_ENABLE_LPP_ASSIST_INVOCATION_EFFECT, - Flags.FLAG_ENABLE_LPP_ASSIST_INVOCATION_HAPTIC_EFFECT, + Flags.FLAG_ENABLE_LPP_SQUEEZE_EFFECT, Flags.FLAG_EXAMPLE_SHARED_FLAG, Flags.FLAG_EXTENDED_WALLPAPER_EFFECTS, - Flags.FLAG_EXTENDIBLE_THEME_MANAGER, Flags.FLAG_LOCKSCREEN_CUSTOM_CLOCKS, Flags.FLAG_NEW_CUSTOMIZATION_PICKER_UI, Flags.FLAG_NEW_TOUCHPAD_GESTURES_TUTORIAL, @@ -235,10 +220,10 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_SCREENSHOT_CONTEXT_URL, Flags.FLAG_SHADE_ALLOW_BACK_GESTURE, Flags.FLAG_SIDEFPS_CONTROLLER_REFACTOR, + Flags.FLAG_SMARTSPACE_REMOTEVIEWS_INTENT_HANDLER, Flags.FLAG_SMARTSPACE_SPORTS_CARD_BACKGROUND, Flags.FLAG_SMARTSPACE_UI_UPDATE, Flags.FLAG_SMARTSPACE_UI_UPDATE_RESOURCES, - Flags.FLAG_SMARTSPACE_WEATHER_USE_MONOCHROME_FONT_ICONS, Flags.FLAG_STATUS_BAR_CONNECTED_DISPLAYS, Flags.FLAG_THREE_BUTTON_CORNER_SWIPE, Flags.FLAG_USE_PREFERRED_IMAGE_EDITOR @@ -253,11 +238,9 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_CLOCK_REACTIVE_VARIANTS, Flags.FLAG_CURSOR_HOT_CORNER, Flags.FLAG_ENABLE_HOME_DELAY, - Flags.FLAG_ENABLE_LPP_ASSIST_INVOCATION_EFFECT, - Flags.FLAG_ENABLE_LPP_ASSIST_INVOCATION_HAPTIC_EFFECT, + Flags.FLAG_ENABLE_LPP_SQUEEZE_EFFECT, Flags.FLAG_EXAMPLE_SHARED_FLAG, Flags.FLAG_EXTENDED_WALLPAPER_EFFECTS, - Flags.FLAG_EXTENDIBLE_THEME_MANAGER, Flags.FLAG_LOCKSCREEN_CUSTOM_CLOCKS, Flags.FLAG_NEW_CUSTOMIZATION_PICKER_UI, Flags.FLAG_NEW_TOUCHPAD_GESTURES_TUTORIAL, @@ -266,10 +249,10 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_SCREENSHOT_CONTEXT_URL, Flags.FLAG_SHADE_ALLOW_BACK_GESTURE, Flags.FLAG_SIDEFPS_CONTROLLER_REFACTOR, + Flags.FLAG_SMARTSPACE_REMOTEVIEWS_INTENT_HANDLER, Flags.FLAG_SMARTSPACE_SPORTS_CARD_BACKGROUND, Flags.FLAG_SMARTSPACE_UI_UPDATE, Flags.FLAG_SMARTSPACE_UI_UPDATE_RESOURCES, - Flags.FLAG_SMARTSPACE_WEATHER_USE_MONOCHROME_FONT_ICONS, Flags.FLAG_STATUS_BAR_CONNECTED_DISPLAYS, Flags.FLAG_THREE_BUTTON_CORNER_SWIPE, Flags.FLAG_USE_PREFERRED_IMAGE_EDITOR, diff --git a/flags/src/com/android/systemui/shared/FeatureFlags.java b/flags/src/com/android/systemui/shared/FeatureFlags.java index 5ccd2004c7..7f14ce4149 100644 --- a/flags/src/com/android/systemui/shared/FeatureFlags.java +++ b/flags/src/com/android/systemui/shared/FeatureFlags.java @@ -1,4 +1,5 @@ package com.android.systemui.shared; +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public interface FeatureFlags { @@ -30,11 +31,7 @@ public interface FeatureFlags { - boolean enableLppAssistInvocationEffect(); - - - - boolean enableLppAssistInvocationHapticEffect(); + boolean enableLppSqueezeEffect(); @@ -46,10 +43,6 @@ public interface FeatureFlags { - boolean extendibleThemeManager(); - - - boolean lockscreenCustomClocks(); @@ -82,6 +75,10 @@ public interface FeatureFlags { + boolean smartspaceRemoteviewsIntentHandler(); + + + boolean smartspaceSportsCardBackground(); @@ -94,10 +91,6 @@ public interface FeatureFlags { - boolean smartspaceWeatherUseMonochromeFontIcons(); - - - boolean statusBarConnectedDisplays(); diff --git a/flags/src/com/android/systemui/shared/FeatureFlagsImpl.java b/flags/src/com/android/systemui/shared/FeatureFlagsImpl.java index e51672c690..27cc82cf05 100644 --- a/flags/src/com/android/systemui/shared/FeatureFlagsImpl.java +++ b/flags/src/com/android/systemui/shared/FeatureFlagsImpl.java @@ -1,4 +1,5 @@ package com.android.systemui.shared; +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public final class FeatureFlagsImpl implements FeatureFlags { @@ -6,7 +7,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean ambientAod() { - return true; + return false; } @Override @@ -20,14 +21,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean clockReactiveSmartspaceLayout() { - return true; + return false; } @Override public boolean clockReactiveVariants() { - return true; + return false; } @Override @@ -47,15 +48,8 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableLppAssistInvocationEffect() { - return true; - } - - @Override - - - public boolean enableLppAssistInvocationHapticEffect() { - return true; + public boolean enableLppSqueezeEffect() { + return false; } @Override @@ -69,13 +63,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean extendedWallpaperEffects() { - return true; - } - - @Override - - - public boolean extendibleThemeManager() { return false; } @@ -83,14 +70,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean lockscreenCustomClocks() { - return true; + return false; } @Override public boolean newCustomizationPickerUi() { - return true; + return false; } @Override @@ -138,6 +125,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean smartspaceRemoteviewsIntentHandler() { + return true; + } + + @Override + + public boolean smartspaceSportsCardBackground() { return false; } @@ -146,20 +140,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean smartspaceUiUpdate() { - return true; + return false; } @Override public boolean smartspaceUiUpdateResources() { - return true; - } - - @Override - - - public boolean smartspaceWeatherUseMonochromeFontIcons() { return false; } @@ -181,7 +168,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean usePreferredImageEditor() { - return true; + return false; } } diff --git a/flags/src/com/android/systemui/shared/Flags.java b/flags/src/com/android/systemui/shared/Flags.java index 50edb698cf..26a3ca3f47 100644 --- a/flags/src/com/android/systemui/shared/Flags.java +++ b/flags/src/com/android/systemui/shared/Flags.java @@ -1,4 +1,5 @@ package com.android.systemui.shared; +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ @@ -16,16 +17,12 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_HOME_DELAY = "com.android.systemui.shared.enable_home_delay"; /** @hide */ - public static final String FLAG_ENABLE_LPP_ASSIST_INVOCATION_EFFECT = "com.android.systemui.shared.enable_lpp_assist_invocation_effect"; - /** @hide */ - public static final String FLAG_ENABLE_LPP_ASSIST_INVOCATION_HAPTIC_EFFECT = "com.android.systemui.shared.enable_lpp_assist_invocation_haptic_effect"; + public static final String FLAG_ENABLE_LPP_SQUEEZE_EFFECT = "com.android.systemui.shared.enable_lpp_squeeze_effect"; /** @hide */ public static final String FLAG_EXAMPLE_SHARED_FLAG = "com.android.systemui.shared.example_shared_flag"; /** @hide */ public static final String FLAG_EXTENDED_WALLPAPER_EFFECTS = "com.android.systemui.shared.extended_wallpaper_effects"; /** @hide */ - public static final String FLAG_EXTENDIBLE_THEME_MANAGER = "com.android.systemui.shared.extendible_theme_manager"; - /** @hide */ public static final String FLAG_LOCKSCREEN_CUSTOM_CLOCKS = "com.android.systemui.shared.lockscreen_custom_clocks"; /** @hide */ public static final String FLAG_NEW_CUSTOMIZATION_PICKER_UI = "com.android.systemui.shared.new_customization_picker_ui"; @@ -42,14 +39,14 @@ public final class Flags { /** @hide */ public static final String FLAG_SIDEFPS_CONTROLLER_REFACTOR = "com.android.systemui.shared.sidefps_controller_refactor"; /** @hide */ + public static final String FLAG_SMARTSPACE_REMOTEVIEWS_INTENT_HANDLER = "com.android.systemui.shared.smartspace_remoteviews_intent_handler"; + /** @hide */ public static final String FLAG_SMARTSPACE_SPORTS_CARD_BACKGROUND = "com.android.systemui.shared.smartspace_sports_card_background"; /** @hide */ public static final String FLAG_SMARTSPACE_UI_UPDATE = "com.android.systemui.shared.smartspace_ui_update"; /** @hide */ public static final String FLAG_SMARTSPACE_UI_UPDATE_RESOURCES = "com.android.systemui.shared.smartspace_ui_update_resources"; /** @hide */ - public static final String FLAG_SMARTSPACE_WEATHER_USE_MONOCHROME_FONT_ICONS = "com.android.systemui.shared.smartspace_weather_use_monochrome_font_icons"; - /** @hide */ public static final String FLAG_STATUS_BAR_CONNECTED_DISPLAYS = "com.android.systemui.shared.status_bar_connected_displays"; /** @hide */ public static final String FLAG_THREE_BUTTON_CORNER_SWIPE = "com.android.systemui.shared.three_button_corner_swipe"; @@ -57,53 +54,55 @@ public final class Flags { public static final String FLAG_USE_PREFERRED_IMAGE_EDITOR = "com.android.systemui.shared.use_preferred_image_editor"; + public static boolean ambientAod() { return FEATURE_FLAGS.ambientAod(); } + public static boolean bouncerAreaExclusion() { return FEATURE_FLAGS.bouncerAreaExclusion(); } + public static boolean clockReactiveSmartspaceLayout() { return FEATURE_FLAGS.clockReactiveSmartspaceLayout(); } + public static boolean clockReactiveVariants() { return FEATURE_FLAGS.clockReactiveVariants(); } + public static boolean cursorHotCorner() { return FEATURE_FLAGS.cursorHotCorner(); } + public static boolean enableHomeDelay() { return FEATURE_FLAGS.enableHomeDelay(); } - public static boolean enableLppAssistInvocationEffect() { + + public static boolean enableLppSqueezeEffect() { - return FEATURE_FLAGS.enableLppAssistInvocationEffect(); + return FEATURE_FLAGS.enableLppSqueezeEffect(); } - public static boolean enableLppAssistInvocationHapticEffect() { - - return FEATURE_FLAGS.enableLppAssistInvocationHapticEffect(); - } - public static boolean exampleSharedFlag() { @@ -111,17 +110,13 @@ public final class Flags { } + public static boolean extendedWallpaperEffects() { return FEATURE_FLAGS.extendedWallpaperEffects(); } - public static boolean extendibleThemeManager() { - - return FEATURE_FLAGS.extendibleThemeManager(); - } - public static boolean lockscreenCustomClocks() { @@ -129,71 +124,83 @@ public final class Flags { } + public static boolean newCustomizationPickerUi() { return FEATURE_FLAGS.newCustomizationPickerUi(); } + public static boolean newTouchpadGesturesTutorial() { return FEATURE_FLAGS.newTouchpadGesturesTutorial(); } + public static boolean returnAnimationFrameworkLibrary() { return FEATURE_FLAGS.returnAnimationFrameworkLibrary(); } + public static boolean returnAnimationFrameworkLongLived() { return FEATURE_FLAGS.returnAnimationFrameworkLongLived(); } + public static boolean screenshotContextUrl() { return FEATURE_FLAGS.screenshotContextUrl(); } + public static boolean shadeAllowBackGesture() { return FEATURE_FLAGS.shadeAllowBackGesture(); } + public static boolean sidefpsControllerRefactor() { return FEATURE_FLAGS.sidefpsControllerRefactor(); } + + public static boolean smartspaceRemoteviewsIntentHandler() { + + return FEATURE_FLAGS.smartspaceRemoteviewsIntentHandler(); + } + + + public static boolean smartspaceSportsCardBackground() { return FEATURE_FLAGS.smartspaceSportsCardBackground(); } + public static boolean smartspaceUiUpdate() { return FEATURE_FLAGS.smartspaceUiUpdate(); } + public static boolean smartspaceUiUpdateResources() { return FEATURE_FLAGS.smartspaceUiUpdateResources(); } - public static boolean smartspaceWeatherUseMonochromeFontIcons() { - - return FEATURE_FLAGS.smartspaceWeatherUseMonochromeFontIcons(); - } - public static boolean statusBarConnectedDisplays() { @@ -201,12 +208,14 @@ public final class Flags { } + public static boolean threeButtonCornerSwipe() { return FEATURE_FLAGS.threeButtonCornerSwipe(); } + public static boolean usePreferredImageEditor() { return FEATURE_FLAGS.usePreferredImageEditor(); diff --git a/flags/src/com/android/window/flags2/CustomFeatureFlags.java b/flags/src/com/android/window/flags2/CustomFeatureFlags.java index 2877bf901e..3591e0549a 100644 --- a/flags/src/com/android/window/flags2/CustomFeatureFlags.java +++ b/flags/src/com/android/window/flags2/CustomFeatureFlags.java @@ -1,6 +1,6 @@ package com.android.window.flags2; - +// TODO(b/303773055): Remove the annotation after access issue is resolved. import java.util.Arrays; import java.util.HashSet; import java.util.List; @@ -24,6 +24,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean activityEmbeddingAnimationCustomizationFlag() { + return getValue(Flags.FLAG_ACTIVITY_EMBEDDING_ANIMATION_CUSTOMIZATION_FLAG, + FeatureFlags::activityEmbeddingAnimationCustomizationFlag); + } + + @Override + public boolean activityEmbeddingDelayTaskFragmentFinishForActivityLaunch() { return getValue(Flags.FLAG_ACTIVITY_EMBEDDING_DELAY_TASK_FRAGMENT_FINISH_FOR_ACTIVITY_LAUNCH, FeatureFlags::activityEmbeddingDelayTaskFragmentFinishForActivityLaunch); @@ -59,6 +66,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean allowHideScmButton() { + return getValue(Flags.FLAG_ALLOW_HIDE_SCM_BUTTON, + FeatureFlags::allowHideScmButton); + } + + @Override + public boolean allowsScreenSizeDecoupledFromStatusBarAndCutout() { return getValue(Flags.FLAG_ALLOWS_SCREEN_SIZE_DECOUPLED_FROM_STATUS_BAR_AND_CUTOUT, FeatureFlags::allowsScreenSizeDecoupledFromStatusBarAndCutout); @@ -73,13 +87,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean alwaysSeqIdLayout() { - return getValue(Flags.FLAG_ALWAYS_SEQ_ID_LAYOUT, - FeatureFlags::alwaysSeqIdLayout); - } - - @Override - public boolean alwaysUpdateWallpaperPermission() { return getValue(Flags.FLAG_ALWAYS_UPDATE_WALLPAPER_PERMISSION, FeatureFlags::alwaysUpdateWallpaperPermission); @@ -115,13 +122,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean appCompatRefactoringRoundedCorners() { - return getValue(Flags.FLAG_APP_COMPAT_REFACTORING_ROUNDED_CORNERS, - FeatureFlags::appCompatRefactoringRoundedCorners); - } - - @Override - public boolean appCompatUiFramework() { return getValue(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK, FeatureFlags::appCompatUiFramework); @@ -178,13 +178,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean balCoverIntentSender() { - return getValue(Flags.FLAG_BAL_COVER_INTENT_SENDER, - FeatureFlags::balCoverIntentSender); - } - - @Override - public boolean balDontBringExistingBackgroundTaskStackToFg() { return getValue(Flags.FLAG_BAL_DONT_BRING_EXISTING_BACKGROUND_TASK_STACK_TO_FG, FeatureFlags::balDontBringExistingBackgroundTaskStackToFg); @@ -192,6 +185,20 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean balImproveRealCallerVisibilityCheck() { + return getValue(Flags.FLAG_BAL_IMPROVE_REAL_CALLER_VISIBILITY_CHECK, + FeatureFlags::balImproveRealCallerVisibilityCheck); + } + + @Override + + public boolean balImprovedMetrics() { + return getValue(Flags.FLAG_BAL_IMPROVED_METRICS, + FeatureFlags::balImprovedMetrics); + } + + @Override + public boolean balReduceGracePeriod() { return getValue(Flags.FLAG_BAL_REDUCE_GRACE_PERIOD, FeatureFlags::balReduceGracePeriod); @@ -199,6 +206,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean balRequireOptInByPendingIntentCreator() { + return getValue(Flags.FLAG_BAL_REQUIRE_OPT_IN_BY_PENDING_INTENT_CREATOR, + FeatureFlags::balRequireOptInByPendingIntentCreator); + } + + @Override + public boolean balRespectAppSwitchStateWhenCheckBoundByForegroundUid() { return getValue(Flags.FLAG_BAL_RESPECT_APP_SWITCH_STATE_WHEN_CHECK_BOUND_BY_FOREGROUND_UID, FeatureFlags::balRespectAppSwitchStateWhenCheckBoundByForegroundUid); @@ -241,6 +255,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean cacheWindowStyle() { + return getValue(Flags.FLAG_CACHE_WINDOW_STYLE, + FeatureFlags::cacheWindowStyle); + } + + @Override + public boolean cameraCompatForFreeform() { return getValue(Flags.FLAG_CAMERA_COMPAT_FOR_FREEFORM, FeatureFlags::cameraCompatForFreeform); @@ -255,6 +276,27 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean checkDisabledSnapshotsInTaskPersister() { + return getValue(Flags.FLAG_CHECK_DISABLED_SNAPSHOTS_IN_TASK_PERSISTER, + FeatureFlags::checkDisabledSnapshotsInTaskPersister); + } + + @Override + + public boolean cleanupDispatchPendingTransactionsRemoteException() { + return getValue(Flags.FLAG_CLEANUP_DISPATCH_PENDING_TRANSACTIONS_REMOTE_EXCEPTION, + FeatureFlags::cleanupDispatchPendingTransactionsRemoteException); + } + + @Override + + public boolean clearSystemVibrator() { + return getValue(Flags.FLAG_CLEAR_SYSTEM_VIBRATOR, + FeatureFlags::clearSystemVibrator); + } + + @Override + public boolean closeToSquareConfigIncludesStatusBar() { return getValue(Flags.FLAG_CLOSE_TO_SQUARE_CONFIG_INCLUDES_STATUS_BAR, FeatureFlags::closeToSquareConfigIncludesStatusBar); @@ -262,6 +304,20 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean condenseConfigurationChangeForSimpleMode() { + return getValue(Flags.FLAG_CONDENSE_CONFIGURATION_CHANGE_FOR_SIMPLE_MODE, + FeatureFlags::condenseConfigurationChangeForSimpleMode); + } + + @Override + + public boolean configurableFontScaleDefault() { + return getValue(Flags.FLAG_CONFIGURABLE_FONT_SCALE_DEFAULT, + FeatureFlags::configurableFontScaleDefault); + } + + @Override + public boolean coverDisplayOptIn() { return getValue(Flags.FLAG_COVER_DISPLAY_OPT_IN, FeatureFlags::coverDisplayOptIn); @@ -269,16 +325,16 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean currentAnimatorScaleUsesSharedMemory() { - return getValue(Flags.FLAG_CURRENT_ANIMATOR_SCALE_USES_SHARED_MEMORY, - FeatureFlags::currentAnimatorScaleUsesSharedMemory); + public boolean delayNotificationToMagnificationWhenRecentsWindowToFrontTransition() { + return getValue(Flags.FLAG_DELAY_NOTIFICATION_TO_MAGNIFICATION_WHEN_RECENTS_WINDOW_TO_FRONT_TRANSITION, + FeatureFlags::delayNotificationToMagnificationWhenRecentsWindowToFrontTransition); } @Override - public boolean defaultDeskWithoutWarmupMigration() { - return getValue(Flags.FLAG_DEFAULT_DESK_WITHOUT_WARMUP_MIGRATION, - FeatureFlags::defaultDeskWithoutWarmupMigration); + public boolean delegateBackGestureToShell() { + return getValue(Flags.FLAG_DELEGATE_BACK_GESTURE_TO_SHELL, + FeatureFlags::delegateBackGestureToShell); } @Override @@ -290,6 +346,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean deleteCaptureDisplay() { + return getValue(Flags.FLAG_DELETE_CAPTURE_DISPLAY, + FeatureFlags::deleteCaptureDisplay); + } + + @Override + public boolean density390Api() { return getValue(Flags.FLAG_DENSITY_390_API, FeatureFlags::density390Api); @@ -318,9 +381,23 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean dispatchFirstKeyguardLockedState() { - return getValue(Flags.FLAG_DISPATCH_FIRST_KEYGUARD_LOCKED_STATE, - FeatureFlags::dispatchFirstKeyguardLockedState); + public boolean doNotCheckIntersectionWhenNonMagnifiableWindowTransitions() { + return getValue(Flags.FLAG_DO_NOT_CHECK_INTERSECTION_WHEN_NON_MAGNIFIABLE_WINDOW_TRANSITIONS, + FeatureFlags::doNotCheckIntersectionWhenNonMagnifiableWindowTransitions); + } + + @Override + + public boolean earlyLaunchHint() { + return getValue(Flags.FLAG_EARLY_LAUNCH_HINT, + FeatureFlags::earlyLaunchHint); + } + + @Override + + public boolean edgeToEdgeByDefault() { + return getValue(Flags.FLAG_EDGE_TO_EDGE_BY_DEFAULT, + FeatureFlags::edgeToEdgeByDefault); } @Override @@ -339,13 +416,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableAppHandlePositionReporting() { - return getValue(Flags.FLAG_ENABLE_APP_HANDLE_POSITION_REPORTING, - FeatureFlags::enableAppHandlePositionReporting); - } - - @Override - public boolean enableAppHeaderWithTaskDensity() { return getValue(Flags.FLAG_ENABLE_APP_HEADER_WITH_TASK_DENSITY, FeatureFlags::enableAppHeaderWithTaskDensity); @@ -353,13 +423,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableBlockNonDesktopDisplayWindowDragBugfix() { - return getValue(Flags.FLAG_ENABLE_BLOCK_NON_DESKTOP_DISPLAY_WINDOW_DRAG_BUGFIX, - FeatureFlags::enableBlockNonDesktopDisplayWindowDragBugfix); - } - - @Override - public boolean enableBorderSettings() { return getValue(Flags.FLAG_ENABLE_BORDER_SETTINGS, FeatureFlags::enableBorderSettings); @@ -367,9 +430,9 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableBoxShadowSettings() { - return getValue(Flags.FLAG_ENABLE_BOX_SHADOW_SETTINGS, - FeatureFlags::enableBoxShadowSettings); + public boolean enableBufferTransformHintFromDisplay() { + return getValue(Flags.FLAG_ENABLE_BUFFER_TRANSFORM_HINT_FROM_DISPLAY, + FeatureFlags::enableBufferTransformHintFromDisplay); } @Override @@ -381,13 +444,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableCameraCompatCheckDeviceRotationBugfix() { - return getValue(Flags.FLAG_ENABLE_CAMERA_COMPAT_CHECK_DEVICE_ROTATION_BUGFIX, - FeatureFlags::enableCameraCompatCheckDeviceRotationBugfix); - } - - @Override - public boolean enableCameraCompatForDesktopWindowing() { return getValue(Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING, FeatureFlags::enableCameraCompatForDesktopWindowing); @@ -444,13 +500,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableCloseLidInteraction() { - return getValue(Flags.FLAG_ENABLE_CLOSE_LID_INTERACTION, - FeatureFlags::enableCloseLidInteraction); - } - - @Override - public boolean enableCompatUiVisibilityStatus() { return getValue(Flags.FLAG_ENABLE_COMPAT_UI_VISIBILITY_STATUS, FeatureFlags::enableCompatUiVisibilityStatus); @@ -493,13 +542,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableDesktopAppHeaderStateChangeAnnouncements() { - return getValue(Flags.FLAG_ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS, - FeatureFlags::enableDesktopAppHeaderStateChangeAnnouncements); - } - - @Override - public boolean enableDesktopAppLaunchAlttabTransitions() { return getValue(Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_ALTTAB_TRANSITIONS, FeatureFlags::enableDesktopAppLaunchAlttabTransitions); @@ -514,13 +556,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableDesktopAppLaunchBugfix() { - return getValue(Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_BUGFIX, - FeatureFlags::enableDesktopAppLaunchBugfix); - } - - @Override - public boolean enableDesktopAppLaunchTransitions() { return getValue(Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS, FeatureFlags::enableDesktopAppLaunchTransitions); @@ -549,34 +584,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableDesktopFirstBasedDefaultToDesktopBugfix() { - return getValue(Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DEFAULT_TO_DESKTOP_BUGFIX, - FeatureFlags::enableDesktopFirstBasedDefaultToDesktopBugfix); - } - - @Override - - public boolean enableDesktopFirstBasedDragToMaximize() { - return getValue(Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DRAG_TO_MAXIMIZE, - FeatureFlags::enableDesktopFirstBasedDragToMaximize); - } - - @Override - - public boolean enableDesktopFirstFullscreenRefocusBugfix() { - return getValue(Flags.FLAG_ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX, - FeatureFlags::enableDesktopFirstFullscreenRefocusBugfix); - } - - @Override - - public boolean enableDesktopFirstListener() { - return getValue(Flags.FLAG_ENABLE_DESKTOP_FIRST_LISTENER, - FeatureFlags::enableDesktopFirstListener); - } - - @Override - public boolean enableDesktopImeBugfix() { return getValue(Flags.FLAG_ENABLE_DESKTOP_IME_BUGFIX, FeatureFlags::enableDesktopImeBugfix); @@ -619,9 +626,9 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableDesktopSplitscreenTransitionBugfix() { - return getValue(Flags.FLAG_ENABLE_DESKTOP_SPLITSCREEN_TRANSITION_BUGFIX, - FeatureFlags::enableDesktopSplitscreenTransitionBugfix); + public boolean enableDesktopSwipeBackMinimizeAnimationBugfix() { + return getValue(Flags.FLAG_ENABLE_DESKTOP_SWIPE_BACK_MINIMIZE_ANIMATION_BUGFIX, + FeatureFlags::enableDesktopSwipeBackMinimizeAnimationBugfix); } @Override @@ -633,13 +640,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableDesktopTabTearingLaunchAnimation() { - return getValue(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, - FeatureFlags::enableDesktopTabTearingLaunchAnimation); - } - - @Override - public boolean enableDesktopTabTearingMinimizeAnimationBugfix() { return getValue(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, FeatureFlags::enableDesktopTabTearingMinimizeAnimationBugfix); @@ -647,13 +647,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableDesktopTaskLimitSeparateTransition() { - return getValue(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - FeatureFlags::enableDesktopTaskLimitSeparateTransition); - } - - @Override - public boolean enableDesktopTaskbarOnFreeformDisplays() { return getValue(Flags.FLAG_ENABLE_DESKTOP_TASKBAR_ON_FREEFORM_DISPLAYS, FeatureFlags::enableDesktopTaskbarOnFreeformDisplays); @@ -794,13 +787,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableDesktopWindowingPipInOverviewBugfix() { - return getValue(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP_IN_OVERVIEW_BUGFIX, - FeatureFlags::enableDesktopWindowingPipInOverviewBugfix); - } - - @Override - public boolean enableDesktopWindowingQuickSwitch() { return getValue(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_QUICK_SWITCH, FeatureFlags::enableDesktopWindowingQuickSwitch); @@ -864,13 +850,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableDisplayCompatMode() { - return getValue(Flags.FLAG_ENABLE_DISPLAY_COMPAT_MODE, - FeatureFlags::enableDisplayCompatMode); - } - - @Override - public boolean enableDisplayDisconnectInteraction() { return getValue(Flags.FLAG_ENABLE_DISPLAY_DISCONNECT_INTERACTION, FeatureFlags::enableDisplayDisconnectInteraction); @@ -920,13 +899,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableDraggingPipAcrossDisplays() { - return getValue(Flags.FLAG_ENABLE_DRAGGING_PIP_ACROSS_DISPLAYS, - FeatureFlags::enableDraggingPipAcrossDisplays); - } - - @Override - public boolean enableDynamicRadiusComputationBugfix() { return getValue(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX, FeatureFlags::enableDynamicRadiusComputationBugfix); @@ -934,34 +906,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableEmptyDeskOnMinimize() { - return getValue(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - FeatureFlags::enableEmptyDeskOnMinimize); - } - - @Override - - public boolean enableExperimentalBubblesController() { - return getValue(Flags.FLAG_ENABLE_EXPERIMENTAL_BUBBLES_CONTROLLER, - FeatureFlags::enableExperimentalBubblesController); - } - - @Override - - public boolean enableFreeformBoxShadows() { - return getValue(Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS, - FeatureFlags::enableFreeformBoxShadows); - } - - @Override - - public boolean enableFreeformDisplayLaunchParams() { - return getValue(Flags.FLAG_ENABLE_FREEFORM_DISPLAY_LAUNCH_PARAMS, - FeatureFlags::enableFreeformDisplayLaunchParams); - } - - @Override - public boolean enableFullScreenWindowOnRemovingSplitScreenStageBugfix() { return getValue(Flags.FLAG_ENABLE_FULL_SCREEN_WINDOW_ON_REMOVING_SPLIT_SCREEN_STAGE_BUGFIX, FeatureFlags::enableFullScreenWindowOnRemovingSplitScreenStageBugfix); @@ -969,13 +913,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableFullscreenWindowControls() { - return getValue(Flags.FLAG_ENABLE_FULLSCREEN_WINDOW_CONTROLS, - FeatureFlags::enableFullscreenWindowControls); - } - - @Override - public boolean enableFullyImmersiveInDesktop() { return getValue(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP, FeatureFlags::enableFullyImmersiveInDesktop); @@ -990,13 +927,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableHandlersDebuggingMode() { - return getValue(Flags.FLAG_ENABLE_HANDLERS_DEBUGGING_MODE, - FeatureFlags::enableHandlersDebuggingMode); - } - - @Override - public boolean enableHoldToDragAppHandle() { return getValue(Flags.FLAG_ENABLE_HOLD_TO_DRAG_APP_HANDLE, FeatureFlags::enableHoldToDragAppHandle); @@ -1004,20 +934,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableIndependentBackInProjected() { - return getValue(Flags.FLAG_ENABLE_INDEPENDENT_BACK_IN_PROJECTED, - FeatureFlags::enableIndependentBackInProjected); - } - - @Override - - public boolean enableInorderTransitionCallbacksForDesktop() { - return getValue(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP, - FeatureFlags::enableInorderTransitionCallbacksForDesktop); - } - - @Override - public boolean enableInputLayerTransitionFix() { return getValue(Flags.FLAG_ENABLE_INPUT_LAYER_TRANSITION_FIX, FeatureFlags::enableInputLayerTransitionFix); @@ -1025,13 +941,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableKeyGestureHandlerForSysui() { - return getValue(Flags.FLAG_ENABLE_KEY_GESTURE_HANDLER_FOR_SYSUI, - FeatureFlags::enableKeyGestureHandlerForSysui); - } - - @Override - public boolean enableMinimizeButton() { return getValue(Flags.FLAG_ENABLE_MINIMIZE_BUTTON, FeatureFlags::enableMinimizeButton); @@ -1046,13 +955,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableModalsFullscreenWithPlatformSignature() { - return getValue(Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE, - FeatureFlags::enableModalsFullscreenWithPlatformSignature); - } - - @Override - public boolean enableMoveToNextDisplayShortcut() { return getValue(Flags.FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT, FeatureFlags::enableMoveToNextDisplayShortcut); @@ -1081,13 +983,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableMultipleDesktopsDefaultActivationInDesktopFirstDisplays() { - return getValue(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_DEFAULT_ACTIVATION_IN_DESKTOP_FIRST_DISPLAYS, - FeatureFlags::enableMultipleDesktopsDefaultActivationInDesktopFirstDisplays); - } - - @Override - public boolean enableMultipleDesktopsFrontend() { return getValue(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_FRONTEND, FeatureFlags::enableMultipleDesktopsFrontend); @@ -1095,13 +990,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableNoWindowDecorationForDesks() { - return getValue(Flags.FLAG_ENABLE_NO_WINDOW_DECORATION_FOR_DESKS, - FeatureFlags::enableNoWindowDecorationForDesks); - } - - @Override - public boolean enableNonDefaultDisplaySplit() { return getValue(Flags.FLAG_ENABLE_NON_DEFAULT_DISPLAY_SPLIT, FeatureFlags::enableNonDefaultDisplaySplit); @@ -1109,13 +997,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableOmitAccelerometerRotationRestore() { - return getValue(Flags.FLAG_ENABLE_OMIT_ACCELEROMETER_ROTATION_RESTORE, - FeatureFlags::enableOmitAccelerometerRotationRestore); - } - - @Override - public boolean enableOpaqueBackgroundForTransparentWindows() { return getValue(Flags.FLAG_ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS, FeatureFlags::enableOpaqueBackgroundForTransparentWindows); @@ -1123,13 +1004,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableOverflowButtonForTaskbarPinnedItems() { - return getValue(Flags.FLAG_ENABLE_OVERFLOW_BUTTON_FOR_TASKBAR_PINNED_ITEMS, - FeatureFlags::enableOverflowButtonForTaskbarPinnedItems); - } - - @Override - public boolean enablePerDisplayDesktopWallpaperActivity() { return getValue(Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, FeatureFlags::enablePerDisplayDesktopWallpaperActivity); @@ -1151,13 +1025,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enablePinningAppWithContextMenu() { - return getValue(Flags.FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU, - FeatureFlags::enablePinningAppWithContextMenu); - } - - @Override - public boolean enablePresentationForConnectedDisplays() { return getValue(Flags.FLAG_ENABLE_PRESENTATION_FOR_CONNECTED_DISPLAYS, FeatureFlags::enablePresentationForConnectedDisplays); @@ -1179,13 +1046,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableRejectHomeTransition() { - return getValue(Flags.FLAG_ENABLE_REJECT_HOME_TRANSITION, - FeatureFlags::enableRejectHomeTransition); - } - - @Override - public boolean enableRequestFullscreenBugfix() { return getValue(Flags.FLAG_ENABLE_REQUEST_FULLSCREEN_BUGFIX, FeatureFlags::enableRequestFullscreenBugfix); @@ -1193,13 +1053,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableRequestFullscreenRefactor() { - return getValue(Flags.FLAG_ENABLE_REQUEST_FULLSCREEN_REFACTOR, - FeatureFlags::enableRequestFullscreenRefactor); - } - - @Override - public boolean enableResizingMetrics() { return getValue(Flags.FLAG_ENABLE_RESIZING_METRICS, FeatureFlags::enableResizingMetrics); @@ -1221,13 +1074,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableSeeThroughTaskFragments() { - return getValue(Flags.FLAG_ENABLE_SEE_THROUGH_TASK_FRAGMENTS, - FeatureFlags::enableSeeThroughTaskFragments); - } - - @Override - public boolean enableShellInitialBoundsRegressionBugFix() { return getValue(Flags.FLAG_ENABLE_SHELL_INITIAL_BOUNDS_REGRESSION_BUG_FIX, FeatureFlags::enableShellInitialBoundsRegressionBugFix); @@ -1249,20 +1095,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableSysDecorsCallbacksViaWm() { - return getValue(Flags.FLAG_ENABLE_SYS_DECORS_CALLBACKS_VIA_WM, - FeatureFlags::enableSysDecorsCallbacksViaWm); - } - - @Override - - public boolean enableTallAppHeaders() { - return getValue(Flags.FLAG_ENABLE_TALL_APP_HEADERS, - FeatureFlags::enableTallAppHeaders); - } - - @Override - public boolean enableTaskResizingKeyboardShortcuts() { return getValue(Flags.FLAG_ENABLE_TASK_RESIZING_KEYBOARD_SHORTCUTS, FeatureFlags::enableTaskResizingKeyboardShortcuts); @@ -1291,13 +1123,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableTaskbarRecentTasksThrottleBugfix() { - return getValue(Flags.FLAG_ENABLE_TASKBAR_RECENT_TASKS_THROTTLE_BUGFIX, - FeatureFlags::enableTaskbarRecentTasksThrottleBugfix); - } - - @Override - public boolean enableTaskbarRecentsLayoutTransition() { return getValue(Flags.FLAG_ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION, FeatureFlags::enableTaskbarRecentsLayoutTransition); @@ -1326,13 +1151,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableTransitionOnActivitySetRequestedOrientation() { - return getValue(Flags.FLAG_ENABLE_TRANSITION_ON_ACTIVITY_SET_REQUESTED_ORIENTATION, - FeatureFlags::enableTransitionOnActivitySetRequestedOrientation); - } - - @Override - public boolean enableVisualIndicatorInTransitionBugfix() { return getValue(Flags.FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX, FeatureFlags::enableVisualIndicatorInTransitionBugfix); @@ -1340,13 +1158,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableWindowContextOverrideType() { - return getValue(Flags.FLAG_ENABLE_WINDOW_CONTEXT_OVERRIDE_TYPE, - FeatureFlags::enableWindowContextOverrideType); - } - - @Override - public boolean enableWindowContextResourcesUpdateOnConfigChange() { return getValue(Flags.FLAG_ENABLE_WINDOW_CONTEXT_RESOURCES_UPDATE_ON_CONFIG_CHANGE, FeatureFlags::enableWindowContextResourcesUpdateOnConfigChange); @@ -1354,20 +1165,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableWindowDecorationRefactor() { - return getValue(Flags.FLAG_ENABLE_WINDOW_DECORATION_REFACTOR, - FeatureFlags::enableWindowDecorationRefactor); - } - - @Override - - public boolean enableWindowRepositioningApi() { - return getValue(Flags.FLAG_ENABLE_WINDOW_REPOSITIONING_API, - FeatureFlags::enableWindowRepositioningApi); - } - - @Override - public boolean enableWindowingDynamicInitialBounds() { return getValue(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS, FeatureFlags::enableWindowingDynamicInitialBounds); @@ -1389,13 +1186,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableWindowingTaskStackOrderBugfix() { - return getValue(Flags.FLAG_ENABLE_WINDOWING_TASK_STACK_ORDER_BUGFIX, - FeatureFlags::enableWindowingTaskStackOrderBugfix); - } - - @Override - public boolean enableWindowingTransitionHandlersObservers() { return getValue(Flags.FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS, FeatureFlags::enableWindowingTransitionHandlersObservers); @@ -1417,6 +1207,20 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean ensureWallpaperInTransitions() { + return getValue(Flags.FLAG_ENSURE_WALLPAPER_IN_TRANSITIONS, + FeatureFlags::ensureWallpaperInTransitions); + } + + @Override + + public boolean ensureWallpaperInWearTransitions() { + return getValue(Flags.FLAG_ENSURE_WALLPAPER_IN_WEAR_TRANSITIONS, + FeatureFlags::ensureWallpaperInWearTransitions); + } + + @Override + public boolean enterDesktopByDefaultOnFreeformDisplays() { return getValue(Flags.FLAG_ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS, FeatureFlags::enterDesktopByDefaultOnFreeformDisplays); @@ -1431,16 +1235,9 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean excludeDeskRootsFromDesktopTasks() { - return getValue(Flags.FLAG_EXCLUDE_DESK_ROOTS_FROM_DESKTOP_TASKS, - FeatureFlags::excludeDeskRootsFromDesktopTasks); - } - - @Override - - public boolean excludeNonMainWindowFromSnapshot() { - return getValue(Flags.FLAG_EXCLUDE_NON_MAIN_WINDOW_FROM_SNAPSHOT, - FeatureFlags::excludeNonMainWindowFromSnapshot); + public boolean excludeDrawingAppThemeSnapshotFromLock() { + return getValue(Flags.FLAG_EXCLUDE_DRAWING_APP_THEME_SNAPSHOT_FROM_LOCK, + FeatureFlags::excludeDrawingAppThemeSnapshotFromLock); } @Override @@ -1452,20 +1249,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean extendingPersistenceSnapshotQueueDepth() { - return getValue(Flags.FLAG_EXTENDING_PERSISTENCE_SNAPSHOT_QUEUE_DEPTH, - FeatureFlags::extendingPersistenceSnapshotQueueDepth); - } - - @Override - - public boolean fallbackToFocusedDisplay() { - return getValue(Flags.FLAG_FALLBACK_TO_FOCUSED_DISPLAY, - FeatureFlags::fallbackToFocusedDisplay); - } - - @Override - public boolean fifoPriorityForMajorUiProcesses() { return getValue(Flags.FLAG_FIFO_PRIORITY_FOR_MAJOR_UI_PROCESSES, FeatureFlags::fifoPriorityForMajorUiProcesses); @@ -1473,13 +1256,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean fixFullscreenInMultiWindow() { - return getValue(Flags.FLAG_FIX_FULLSCREEN_IN_MULTI_WINDOW, - FeatureFlags::fixFullscreenInMultiWindow); - } - - @Override - public boolean fixHideOverlayApi() { return getValue(Flags.FLAG_FIX_HIDE_OVERLAY_API, FeatureFlags::fixHideOverlayApi); @@ -1487,30 +1263,16 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean fixLayoutRestoredTask() { - return getValue(Flags.FLAG_FIX_LAYOUT_RESTORED_TASK, - FeatureFlags::fixLayoutRestoredTask); + public boolean fixLayoutExistingTask() { + return getValue(Flags.FLAG_FIX_LAYOUT_EXISTING_TASK, + FeatureFlags::fixLayoutExistingTask); } @Override - public boolean fixMovingUnfocusedTask() { - return getValue(Flags.FLAG_FIX_MOVING_UNFOCUSED_TASK, - FeatureFlags::fixMovingUnfocusedTask); - } - - @Override - - public boolean fixSetAdjacentTaskFragmentsWithParams() { - return getValue(Flags.FLAG_FIX_SET_ADJACENT_TASK_FRAGMENTS_WITH_PARAMS, - FeatureFlags::fixSetAdjacentTaskFragmentsWithParams); - } - - @Override - - public boolean fixShowWhenLockedSyncTimeout() { - return getValue(Flags.FLAG_FIX_SHOW_WHEN_LOCKED_SYNC_TIMEOUT, - FeatureFlags::fixShowWhenLockedSyncTimeout); + public boolean fixViewRootCallTrace() { + return getValue(Flags.FLAG_FIX_VIEW_ROOT_CALL_TRACE, + FeatureFlags::fixViewRootCallTrace); } @Override @@ -1522,13 +1284,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean forceShowSystemBarForBubble() { - return getValue(Flags.FLAG_FORCE_SHOW_SYSTEM_BAR_FOR_BUBBLE, - FeatureFlags::forceShowSystemBarForBubble); - } - - @Override - public boolean formFactorBasedDesktopFirstSwitch() { return getValue(Flags.FLAG_FORM_FACTOR_BASED_DESKTOP_FIRST_SWITCH, FeatureFlags::formFactorBasedDesktopFirstSwitch); @@ -1543,13 +1298,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean grantManageKeyGesturesToRecents() { - return getValue(Flags.FLAG_GRANT_MANAGE_KEY_GESTURES_TO_RECENTS, - FeatureFlags::grantManageKeyGesturesToRecents); - } - - @Override - public boolean ignoreAspectRatioRestrictionsForResizeableFreeformActivities() { return getValue(Flags.FLAG_IGNORE_ASPECT_RATIO_RESTRICTIONS_FOR_RESIZEABLE_FREEFORM_ACTIVITIES, FeatureFlags::ignoreAspectRatioRestrictionsForResizeableFreeformActivities); @@ -1585,13 +1333,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean interceptMotionFromMoveToCancel() { - return getValue(Flags.FLAG_INTERCEPT_MOTION_FROM_MOVE_TO_CANCEL, - FeatureFlags::interceptMotionFromMoveToCancel); - } - - @Override - public boolean jankApi() { return getValue(Flags.FLAG_JANK_API, FeatureFlags::jankApi); @@ -1599,6 +1340,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean keepAppWindowHideWhileLocked() { + return getValue(Flags.FLAG_KEEP_APP_WINDOW_HIDE_WHILE_LOCKED, + FeatureFlags::keepAppWindowHideWhileLocked); + } + + @Override + public boolean keyboardShortcutsToSwitchDesks() { return getValue(Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, FeatureFlags::keyboardShortcutsToSwitchDesks); @@ -1606,6 +1354,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean keyguardGoingAwayTimeout() { + return getValue(Flags.FLAG_KEYGUARD_GOING_AWAY_TIMEOUT, + FeatureFlags::keyguardGoingAwayTimeout); + } + + @Override + public boolean letterboxBackgroundWallpaper() { return getValue(Flags.FLAG_LETTERBOX_BACKGROUND_WALLPAPER, FeatureFlags::letterboxBackgroundWallpaper); @@ -1641,9 +1396,30 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean nestedTasksWithIndependentBoundsBugfix() { - return getValue(Flags.FLAG_NESTED_TASKS_WITH_INDEPENDENT_BOUNDS_BUGFIX, - FeatureFlags::nestedTasksWithIndependentBoundsBugfix); + public boolean nestedTasksWithIndependentBounds() { + return getValue(Flags.FLAG_NESTED_TASKS_WITH_INDEPENDENT_BOUNDS, + FeatureFlags::nestedTasksWithIndependentBounds); + } + + @Override + + public boolean noConsecutiveVisibilityEvents() { + return getValue(Flags.FLAG_NO_CONSECUTIVE_VISIBILITY_EVENTS, + FeatureFlags::noConsecutiveVisibilityEvents); + } + + @Override + + public boolean noDuplicateSurfaceDestroyedEvents() { + return getValue(Flags.FLAG_NO_DUPLICATE_SURFACE_DESTROYED_EVENTS, + FeatureFlags::noDuplicateSurfaceDestroyedEvents); + } + + @Override + + public boolean noVisibilityEventOnDisplayStateChange() { + return getValue(Flags.FLAG_NO_VISIBILITY_EVENT_ON_DISPLAY_STATE_CHANGE, + FeatureFlags::noVisibilityEventOnDisplayStateChange); } @Override @@ -1655,13 +1431,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean parallelCdTransitionsDuringRecents() { - return getValue(Flags.FLAG_PARALLEL_CD_TRANSITIONS_DURING_RECENTS, - FeatureFlags::parallelCdTransitionsDuringRecents); - } - - @Override - public boolean portWindowSizeAnimation() { return getValue(Flags.FLAG_PORT_WINDOW_SIZE_ANIMATION, FeatureFlags::portWindowSizeAnimation); @@ -1711,9 +1480,9 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean preserveRecentsTaskConfigurationOnRelaunch() { - return getValue(Flags.FLAG_PRESERVE_RECENTS_TASK_CONFIGURATION_ON_RELAUNCH, - FeatureFlags::preserveRecentsTaskConfigurationOnRelaunch); + public boolean processPriorityPolicyForMultiWindowMode() { + return getValue(Flags.FLAG_PROCESS_PRIORITY_POLICY_FOR_MULTI_WINDOW_MODE, + FeatureFlags::processPriorityPolicyForMultiWindowMode); } @Override @@ -1725,6 +1494,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean recordTaskSnapshotsBeforeShutdown() { + return getValue(Flags.FLAG_RECORD_TASK_SNAPSHOTS_BEFORE_SHUTDOWN, + FeatureFlags::recordTaskSnapshotsBeforeShutdown); + } + + @Override + public boolean reduceChangedExclusionRectsMsgs() { return getValue(Flags.FLAG_REDUCE_CHANGED_EXCLUSION_RECTS_MSGS, FeatureFlags::reduceChangedExclusionRectsMsgs); @@ -1732,6 +1508,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean reduceKeyguardTransitions() { + return getValue(Flags.FLAG_REDUCE_KEYGUARD_TRANSITIONS, + FeatureFlags::reduceKeyguardTransitions); + } + + @Override + public boolean reduceTaskSnapshotMemoryUsage() { return getValue(Flags.FLAG_REDUCE_TASK_SNAPSHOT_MEMORY_USAGE, FeatureFlags::reduceTaskSnapshotMemoryUsage); @@ -1739,6 +1522,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean reduceUnnecessaryMeasure() { + return getValue(Flags.FLAG_REDUCE_UNNECESSARY_MEASURE, + FeatureFlags::reduceUnnecessaryMeasure); + } + + @Override + public boolean relativeInsets() { return getValue(Flags.FLAG_RELATIVE_INSETS, FeatureFlags::relativeInsets); @@ -1753,9 +1543,9 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean releaseSurfaceOnTransitionFinish() { - return getValue(Flags.FLAG_RELEASE_SURFACE_ON_TRANSITION_FINISH, - FeatureFlags::releaseSurfaceOnTransitionFinish); + public boolean releaseUserAspectRatioWm() { + return getValue(Flags.FLAG_RELEASE_USER_ASPECT_RATIO_WM, + FeatureFlags::releaseUserAspectRatioWm); } @Override @@ -1767,6 +1557,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean removeDeferHidingClient() { + return getValue(Flags.FLAG_REMOVE_DEFER_HIDING_CLIENT, + FeatureFlags::removeDeferHidingClient); + } + + @Override + public boolean removeDepartTargetFromMotion() { return getValue(Flags.FLAG_REMOVE_DEPART_TARGET_FROM_MOTION, FeatureFlags::removeDepartTargetFromMotion); @@ -1774,20 +1571,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean removeStartingInTransition() { - return getValue(Flags.FLAG_REMOVE_STARTING_IN_TRANSITION, - FeatureFlags::removeStartingInTransition); - } - - @Override - - public boolean reparentToDefaultWithDisplayRemoval() { - return getValue(Flags.FLAG_REPARENT_TO_DEFAULT_WITH_DISPLAY_REMOVAL, - FeatureFlags::reparentToDefaultWithDisplayRemoval); - } - - @Override - public boolean reparentWindowTokenApi() { return getValue(Flags.FLAG_REPARENT_WINDOW_TOKEN_API, FeatureFlags::reparentWindowTokenApi); @@ -1795,23 +1578,9 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean respectFullscreenActivityOptionInDesktopLaunchParams() { - return getValue(Flags.FLAG_RESPECT_FULLSCREEN_ACTIVITY_OPTION_IN_DESKTOP_LAUNCH_PARAMS, - FeatureFlags::respectFullscreenActivityOptionInDesktopLaunchParams); - } - - @Override - - public boolean respectHierarchySurfaceVisibility() { - return getValue(Flags.FLAG_RESPECT_HIERARCHY_SURFACE_VISIBILITY, - FeatureFlags::respectHierarchySurfaceVisibility); - } - - @Override - - public boolean respectLeafTaskBounds() { - return getValue(Flags.FLAG_RESPECT_LEAF_TASK_BOUNDS, - FeatureFlags::respectLeafTaskBounds); + public boolean respectNonTopVisibleFixedOrientation() { + return getValue(Flags.FLAG_RESPECT_NON_TOP_VISIBLE_FIXED_ORIENTATION, + FeatureFlags::respectNonTopVisibleFixedOrientation); } @Override @@ -1823,27 +1592,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean restoreUserAspectRatioSettingsUsingService() { - return getValue(Flags.FLAG_RESTORE_USER_ASPECT_RATIO_SETTINGS_USING_SERVICE, - FeatureFlags::restoreUserAspectRatioSettingsUsingService); - } - - @Override - - public boolean restrictFreeformHiddenSystemBarsToFillingTasks() { - return getValue(Flags.FLAG_RESTRICT_FREEFORM_HIDDEN_SYSTEM_BARS_TO_FILLING_TASKS, - FeatureFlags::restrictFreeformHiddenSystemBarsToFillingTasks); - } - - @Override - - public boolean rootTaskForBubble() { - return getValue(Flags.FLAG_ROOT_TASK_FOR_BUBBLE, - FeatureFlags::rootTaskForBubble); - } - - @Override - public boolean safeRegionLetterboxing() { return getValue(Flags.FLAG_SAFE_REGION_LETTERBOXING, FeatureFlags::safeRegionLetterboxing); @@ -1872,13 +1620,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean screenBrightnessDimOnEmulator() { - return getValue(Flags.FLAG_SCREEN_BRIGHTNESS_DIM_ON_EMULATOR, - FeatureFlags::screenBrightnessDimOnEmulator); - } - - @Override - public boolean screenRecordingCallbacks() { return getValue(Flags.FLAG_SCREEN_RECORDING_CALLBACKS, FeatureFlags::screenRecordingCallbacks); @@ -1893,13 +1634,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean scvhSurfaceControlLifetimeFix() { - return getValue(Flags.FLAG_SCVH_SURFACE_CONTROL_LIFETIME_FIX, - FeatureFlags::scvhSurfaceControlLifetimeFix); - } - - @Override - public boolean sdkDesiredPresentTime() { return getValue(Flags.FLAG_SDK_DESIRED_PRESENT_TIME, FeatureFlags::sdkDesiredPresentTime); @@ -1949,13 +1683,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean skipDeactivationOfDeskWithNothingInFront() { - return getValue(Flags.FLAG_SKIP_DEACTIVATION_OF_DESK_WITH_NOTHING_IN_FRONT, - FeatureFlags::skipDeactivationOfDeskWithNothingInFront); - } - - @Override - public boolean skipDecorViewRelayoutWhenClosingBugfix() { return getValue(Flags.FLAG_SKIP_DECOR_VIEW_RELAYOUT_WHEN_CLOSING_BUGFIX, FeatureFlags::skipDecorViewRelayoutWhenClosingBugfix); @@ -1963,9 +1690,9 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean splashScreenViewSyncTransaction() { - return getValue(Flags.FLAG_SPLASH_SCREEN_VIEW_SYNC_TRANSACTION, - FeatureFlags::splashScreenViewSyncTransaction); + public boolean supportWidgetIntentsOnConnectedDisplay() { + return getValue(Flags.FLAG_SUPPORT_WIDGET_INTENTS_ON_CONNECTED_DISPLAY, + FeatureFlags::supportWidgetIntentsOnConnectedDisplay); } @Override @@ -2012,6 +1739,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean taskFragmentSystemOrganizerFlag() { + return getValue(Flags.FLAG_TASK_FRAGMENT_SYSTEM_ORGANIZER_FLAG, + FeatureFlags::taskFragmentSystemOrganizerFlag); + } + + @Override + public boolean touchPassThroughOptIn() { return getValue(Flags.FLAG_TOUCH_PASS_THROUGH_OPT_IN, FeatureFlags::touchPassThroughOptIn); @@ -2019,6 +1753,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean trackSystemUiContextBeforeWms() { + return getValue(Flags.FLAG_TRACK_SYSTEM_UI_CONTEXT_BEFORE_WMS, + FeatureFlags::trackSystemUiContextBeforeWms); + } + + @Override + public boolean transitReadyTracking() { return getValue(Flags.FLAG_TRANSIT_READY_TRACKING, FeatureFlags::transitReadyTracking); @@ -2033,13 +1774,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean transitionHandlerCujTags() { - return getValue(Flags.FLAG_TRANSITION_HANDLER_CUJ_TAGS, - FeatureFlags::transitionHandlerCujTags); - } - - @Override - public boolean trustedPresentationListenerForWindow() { return getValue(Flags.FLAG_TRUSTED_PRESENTATION_LISTENER_FOR_WINDOW, FeatureFlags::trustedPresentationListenerForWindow); @@ -2054,13 +1788,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean unifyShellBinders() { - return getValue(Flags.FLAG_UNIFY_SHELL_BINDERS, - FeatureFlags::unifyShellBinders); - } - - @Override - public boolean universalResizableByDefault() { return getValue(Flags.FLAG_UNIVERSAL_RESIZABLE_BY_DEFAULT, FeatureFlags::universalResizableByDefault); @@ -2089,20 +1816,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean updateHostInputTransferToken() { - return getValue(Flags.FLAG_UPDATE_HOST_INPUT_TRANSFER_TOKEN, - FeatureFlags::updateHostInputTransferToken); - } - - @Override - - public boolean updateTaskMinDimensionsWithRootActivity() { - return getValue(Flags.FLAG_UPDATE_TASK_MIN_DIMENSIONS_WITH_ROOT_ACTIVITY, - FeatureFlags::updateTaskMinDimensionsWithRootActivity); - } - - @Override - public boolean useCachedInsetsForDisplaySwitch() { return getValue(Flags.FLAG_USE_CACHED_INSETS_FOR_DISPLAY_SWITCH, FeatureFlags::useCachedInsetsForDisplaySwitch); @@ -2110,6 +1823,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean useRtFrameCallbackForSplashScreenTransfer() { + return getValue(Flags.FLAG_USE_RT_FRAME_CALLBACK_FOR_SPLASH_SCREEN_TRANSFER, + FeatureFlags::useRtFrameCallbackForSplashScreenTransfer); + } + + @Override + public boolean useTasksDimOnly() { return getValue(Flags.FLAG_USE_TASKS_DIM_ONLY, FeatureFlags::useTasksDimOnly); @@ -2117,6 +1837,20 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean useVisibleRequestedForProcessTracker() { + return getValue(Flags.FLAG_USE_VISIBLE_REQUESTED_FOR_PROCESS_TRACKER, + FeatureFlags::useVisibleRequestedForProcessTracker); + } + + @Override + + public boolean useWindowOriginalTouchableRegionWhenMagnificationRecomputeBounds() { + return getValue(Flags.FLAG_USE_WINDOW_ORIGINAL_TOUCHABLE_REGION_WHEN_MAGNIFICATION_RECOMPUTE_BOUNDS, + FeatureFlags::useWindowOriginalTouchableRegionWhenMagnificationRecomputeBounds); + } + + @Override + public boolean vdmForceAppUniversalResizableApi() { return getValue(Flags.FLAG_VDM_FORCE_APP_UNIVERSAL_RESIZABLE_API, FeatureFlags::vdmForceAppUniversalResizableApi); @@ -2156,20 +1890,20 @@ public class CustomFeatureFlags implements FeatureFlags { public List getFlagNames() { return Arrays.asList( Flags.FLAG_ACTION_MODE_EDGE_TO_EDGE, + Flags.FLAG_ACTIVITY_EMBEDDING_ANIMATION_CUSTOMIZATION_FLAG, Flags.FLAG_ACTIVITY_EMBEDDING_DELAY_TASK_FRAGMENT_FINISH_FOR_ACTIVITY_LAUNCH, Flags.FLAG_ACTIVITY_EMBEDDING_INTERACTIVE_DIVIDER_FLAG, Flags.FLAG_ACTIVITY_EMBEDDING_METRICS, Flags.FLAG_ACTIVITY_EMBEDDING_SUPPORT_FOR_CONNECTED_DISPLAYS, Flags.FLAG_ALLOW_DISABLE_ACTIVITY_RECORD_INPUT_SINK, + Flags.FLAG_ALLOW_HIDE_SCM_BUTTON, Flags.FLAG_ALLOWS_SCREEN_SIZE_DECOUPLED_FROM_STATUS_BAR_AND_CUTOUT, Flags.FLAG_ALWAYS_DRAW_MAGNIFICATION_FULLSCREEN_BORDER, - Flags.FLAG_ALWAYS_SEQ_ID_LAYOUT, Flags.FLAG_ALWAYS_UPDATE_WALLPAPER_PERMISSION, Flags.FLAG_AOD_TRANSITION, Flags.FLAG_APP_COMPAT_ASYNC_RELAYOUT, Flags.FLAG_APP_COMPAT_PROPERTIES_API, Flags.FLAG_APP_COMPAT_REFACTORING, - Flags.FLAG_APP_COMPAT_REFACTORING_ROUNDED_CORNERS, Flags.FLAG_APP_COMPAT_UI_FRAMEWORK, Flags.FLAG_APP_HANDLE_NO_RELAYOUT_ON_EXCLUSION_CHANGE, Flags.FLAG_APPLY_LIFECYCLE_ON_PIP_CHANGE, @@ -2178,36 +1912,44 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_BAL_ADDITIONAL_LOGGING, Flags.FLAG_BAL_ADDITIONAL_START_MODES, Flags.FLAG_BAL_CLEAR_ALLOWLIST_DURATION, - Flags.FLAG_BAL_COVER_INTENT_SENDER, Flags.FLAG_BAL_DONT_BRING_EXISTING_BACKGROUND_TASK_STACK_TO_FG, + Flags.FLAG_BAL_IMPROVE_REAL_CALLER_VISIBILITY_CHECK, + Flags.FLAG_BAL_IMPROVED_METRICS, Flags.FLAG_BAL_REDUCE_GRACE_PERIOD, + Flags.FLAG_BAL_REQUIRE_OPT_IN_BY_PENDING_INTENT_CREATOR, Flags.FLAG_BAL_RESPECT_APP_SWITCH_STATE_WHEN_CHECK_BOUND_BY_FOREGROUND_UID, Flags.FLAG_BAL_SEND_INTENT_WITH_OPTIONS, Flags.FLAG_BAL_SHOW_TOASTS_BLOCKED, Flags.FLAG_BAL_STRICT_MODE_GRACE_PERIOD, Flags.FLAG_BAL_STRICT_MODE_RO, Flags.FLAG_BETTER_SUPPORT_NON_MATCH_PARENT_ACTIVITY, + Flags.FLAG_CACHE_WINDOW_STYLE, Flags.FLAG_CAMERA_COMPAT_FOR_FREEFORM, Flags.FLAG_CAMERA_COMPAT_FULLSCREEN_PICK_SAME_TASK_ACTIVITY, + Flags.FLAG_CHECK_DISABLED_SNAPSHOTS_IN_TASK_PERSISTER, + Flags.FLAG_CLEANUP_DISPATCH_PENDING_TRANSACTIONS_REMOTE_EXCEPTION, + Flags.FLAG_CLEAR_SYSTEM_VIBRATOR, Flags.FLAG_CLOSE_TO_SQUARE_CONFIG_INCLUDES_STATUS_BAR, + Flags.FLAG_CONDENSE_CONFIGURATION_CHANGE_FOR_SIMPLE_MODE, + Flags.FLAG_CONFIGURABLE_FONT_SCALE_DEFAULT, Flags.FLAG_COVER_DISPLAY_OPT_IN, - Flags.FLAG_CURRENT_ANIMATOR_SCALE_USES_SHARED_MEMORY, - Flags.FLAG_DEFAULT_DESK_WITHOUT_WARMUP_MIGRATION, + Flags.FLAG_DELAY_NOTIFICATION_TO_MAGNIFICATION_WHEN_RECENTS_WINDOW_TO_FRONT_TRANSITION, + Flags.FLAG_DELEGATE_BACK_GESTURE_TO_SHELL, Flags.FLAG_DELEGATE_UNHANDLED_DRAGS, + Flags.FLAG_DELETE_CAPTURE_DISPLAY, Flags.FLAG_DENSITY_390_API, Flags.FLAG_DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX, Flags.FLAG_DISABLE_NON_RESIZABLE_APP_SNAP_RESIZING, Flags.FLAG_DISABLE_OPT_OUT_EDGE_TO_EDGE, - Flags.FLAG_DISPATCH_FIRST_KEYGUARD_LOCKED_STATE, + Flags.FLAG_DO_NOT_CHECK_INTERSECTION_WHEN_NON_MAGNIFIABLE_WINDOW_TRANSITIONS, + Flags.FLAG_EARLY_LAUNCH_HINT, + Flags.FLAG_EDGE_TO_EDGE_BY_DEFAULT, Flags.FLAG_ENABLE_ACCESSIBLE_CUSTOM_HEADERS, Flags.FLAG_ENABLE_ACTIVITY_EMBEDDING_SUPPORT_FOR_CONNECTED_DISPLAYS, - Flags.FLAG_ENABLE_APP_HANDLE_POSITION_REPORTING, Flags.FLAG_ENABLE_APP_HEADER_WITH_TASK_DENSITY, - Flags.FLAG_ENABLE_BLOCK_NON_DESKTOP_DISPLAY_WINDOW_DRAG_BUGFIX, Flags.FLAG_ENABLE_BORDER_SETTINGS, - Flags.FLAG_ENABLE_BOX_SHADOW_SETTINGS, + Flags.FLAG_ENABLE_BUFFER_TRANSFORM_HINT_FROM_DISPLAY, Flags.FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY, - Flags.FLAG_ENABLE_CAMERA_COMPAT_CHECK_DEVICE_ROTATION_BUGFIX, Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING, Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT, Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT_API, @@ -2216,36 +1958,27 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION, Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS, Flags.FLAG_ENABLE_CASCADING_WINDOWS, - Flags.FLAG_ENABLE_CLOSE_LID_INTERACTION, Flags.FLAG_ENABLE_COMPAT_UI_VISIBILITY_STATUS, Flags.FLAG_ENABLE_COMPATUI_SYSUI_LAUNCHER, Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_DND, Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_PIP, Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG, Flags.FLAG_ENABLE_DESKTOP_APP_HANDLE_ANIMATION, - Flags.FLAG_ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS, Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_ALTTAB_TRANSITIONS, Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_ALTTAB_TRANSITIONS_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS, Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_CLOSE_SHORTCUT_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_CLOSE_TASK_ANIMATION_IN_DTC_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DEFAULT_TO_DESKTOP_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DRAG_TO_MAXIMIZE, - Flags.FLAG_ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_FIRST_LISTENER, Flags.FLAG_ENABLE_DESKTOP_IME_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_IMMERSIVE_DRAG_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_INDICATOR_IN_SEPARATE_THREAD_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_MODE_THROUGH_DEV_OPTION, Flags.FLAG_ENABLE_DESKTOP_OPENING_DEEPLINK_MINIMIZE_ANIMATION_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_SPLITSCREEN_TRANSITION_BUGFIX, + Flags.FLAG_ENABLE_DESKTOP_SWIPE_BACK_MINIMIZE_ANIMATION_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_SYSTEM_DIALOGS_TRANSITIONS, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, Flags.FLAG_ENABLE_DESKTOP_TASKBAR_ON_FREEFORM_DISPLAYS, Flags.FLAG_ENABLE_DESKTOP_TRAMPOLINE_CLOSE_ANIMATION_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, @@ -2266,7 +1999,6 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PERSISTENCE, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP_IN_OVERVIEW_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_QUICK_SWITCH, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SCVH_CACHE_BUG_FIX, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS, @@ -2276,7 +2008,6 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, Flags.FLAG_ENABLE_DEVICE_STATE_AUTO_ROTATE_SETTING_LOGGING, Flags.FLAG_ENABLE_DEVICE_STATE_AUTO_ROTATE_SETTING_REFACTOR, - Flags.FLAG_ENABLE_DISPLAY_COMPAT_MODE, Flags.FLAG_ENABLE_DISPLAY_DISCONNECT_INTERACTION, Flags.FLAG_ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS, Flags.FLAG_ENABLE_DISPLAY_RECONNECT_INTERACTION, @@ -2284,112 +2015,82 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_ENABLE_DRAG_RESIZE_SET_UP_IN_BG_THREAD, Flags.FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX, Flags.FLAG_ENABLE_DRAG_TO_MAXIMIZE, - Flags.FLAG_ENABLE_DRAGGING_PIP_ACROSS_DISPLAYS, Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - Flags.FLAG_ENABLE_EXPERIMENTAL_BUBBLES_CONTROLLER, - Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS, - Flags.FLAG_ENABLE_FREEFORM_DISPLAY_LAUNCH_PARAMS, Flags.FLAG_ENABLE_FULL_SCREEN_WINDOW_ON_REMOVING_SPLIT_SCREEN_STAGE_BUGFIX, - Flags.FLAG_ENABLE_FULLSCREEN_WINDOW_CONTROLS, Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP, Flags.FLAG_ENABLE_HANDLE_INPUT_FIX, - Flags.FLAG_ENABLE_HANDLERS_DEBUGGING_MODE, Flags.FLAG_ENABLE_HOLD_TO_DRAG_APP_HANDLE, - Flags.FLAG_ENABLE_INDEPENDENT_BACK_IN_PROJECTED, - Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP, Flags.FLAG_ENABLE_INPUT_LAYER_TRANSITION_FIX, - Flags.FLAG_ENABLE_KEY_GESTURE_HANDLER_FOR_SYSUI, Flags.FLAG_ENABLE_MINIMIZE_BUTTON, Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION, - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE, Flags.FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT, Flags.FLAG_ENABLE_MULTI_DISPLAY_SPLIT, Flags.FLAG_ENABLE_MULTIDISPLAY_TRACKPAD_BACK_GESTURE, Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_DEFAULT_ACTIVATION_IN_DESKTOP_FIRST_DISPLAYS, Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_FRONTEND, - Flags.FLAG_ENABLE_NO_WINDOW_DECORATION_FOR_DESKS, Flags.FLAG_ENABLE_NON_DEFAULT_DISPLAY_SPLIT, - Flags.FLAG_ENABLE_OMIT_ACCELEROMETER_ROTATION_RESTORE, Flags.FLAG_ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS, - Flags.FLAG_ENABLE_OVERFLOW_BUTTON_FOR_TASKBAR_PINNED_ITEMS, Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, Flags.FLAG_ENABLE_PER_DISPLAY_PACKAGE_CONTEXT_CACHE_IN_STATUSBAR_NOTIF, Flags.FLAG_ENABLE_PERSISTING_DISPLAY_SIZE_FOR_CONNECTED_DISPLAYS, - Flags.FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU, Flags.FLAG_ENABLE_PRESENTATION_FOR_CONNECTED_DISPLAYS, Flags.FLAG_ENABLE_PROJECTED_DISPLAY_DESKTOP_MODE, Flags.FLAG_ENABLE_QUICKSWITCH_DESKTOP_SPLIT_BUGFIX, - Flags.FLAG_ENABLE_REJECT_HOME_TRANSITION, Flags.FLAG_ENABLE_REQUEST_FULLSCREEN_BUGFIX, - Flags.FLAG_ENABLE_REQUEST_FULLSCREEN_REFACTOR, Flags.FLAG_ENABLE_RESIZING_METRICS, Flags.FLAG_ENABLE_RESTART_MENU_FOR_CONNECTED_DISPLAYS, Flags.FLAG_ENABLE_RESTORE_TO_PREVIOUS_SIZE_FROM_DESKTOP_IMMERSIVE, - Flags.FLAG_ENABLE_SEE_THROUGH_TASK_FRAGMENTS, Flags.FLAG_ENABLE_SHELL_INITIAL_BOUNDS_REGRESSION_BUG_FIX, Flags.FLAG_ENABLE_SIZE_COMPAT_MODE_IMPROVEMENTS_FOR_CONNECTED_DISPLAYS, Flags.FLAG_ENABLE_START_LAUNCH_TRANSITION_FROM_TASKBAR_BUGFIX, - Flags.FLAG_ENABLE_SYS_DECORS_CALLBACKS_VIA_WM, - Flags.FLAG_ENABLE_TALL_APP_HEADERS, Flags.FLAG_ENABLE_TASK_RESIZING_KEYBOARD_SHORTCUTS, Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL, Flags.FLAG_ENABLE_TASKBAR_CONNECTED_DISPLAYS, Flags.FLAG_ENABLE_TASKBAR_OVERFLOW, - Flags.FLAG_ENABLE_TASKBAR_RECENT_TASKS_THROTTLE_BUGFIX, Flags.FLAG_ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION, Flags.FLAG_ENABLE_THEMED_APP_HEADERS, Flags.FLAG_ENABLE_TILE_RESIZING, Flags.FLAG_ENABLE_TOP_VISIBLE_ROOT_TASK_PER_USER_TRACKING, - Flags.FLAG_ENABLE_TRANSITION_ON_ACTIVITY_SET_REQUESTED_ORIENTATION, Flags.FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX, - Flags.FLAG_ENABLE_WINDOW_CONTEXT_OVERRIDE_TYPE, Flags.FLAG_ENABLE_WINDOW_CONTEXT_RESOURCES_UPDATE_ON_CONFIG_CHANGE, - Flags.FLAG_ENABLE_WINDOW_DECORATION_REFACTOR, - Flags.FLAG_ENABLE_WINDOW_REPOSITIONING_API, Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS, Flags.FLAG_ENABLE_WINDOWING_EDGE_DRAG_RESIZE, Flags.FLAG_ENABLE_WINDOWING_SCALED_RESIZING, - Flags.FLAG_ENABLE_WINDOWING_TASK_STACK_ORDER_BUGFIX, Flags.FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS, Flags.FLAG_ENFORCE_EDGE_TO_EDGE, Flags.FLAG_ENSURE_KEYGUARD_DOES_TRANSITION_STARTING, + Flags.FLAG_ENSURE_WALLPAPER_IN_TRANSITIONS, + Flags.FLAG_ENSURE_WALLPAPER_IN_WEAR_TRANSITIONS, Flags.FLAG_ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS, Flags.FLAG_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - Flags.FLAG_EXCLUDE_DESK_ROOTS_FROM_DESKTOP_TASKS, - Flags.FLAG_EXCLUDE_NON_MAIN_WINDOW_FROM_SNAPSHOT, + Flags.FLAG_EXCLUDE_DRAWING_APP_THEME_SNAPSHOT_FROM_LOCK, Flags.FLAG_EXCLUDE_TASK_FROM_RECENTS, - Flags.FLAG_EXTENDING_PERSISTENCE_SNAPSHOT_QUEUE_DEPTH, - Flags.FLAG_FALLBACK_TO_FOCUSED_DISPLAY, Flags.FLAG_FIFO_PRIORITY_FOR_MAJOR_UI_PROCESSES, - Flags.FLAG_FIX_FULLSCREEN_IN_MULTI_WINDOW, Flags.FLAG_FIX_HIDE_OVERLAY_API, - Flags.FLAG_FIX_LAYOUT_RESTORED_TASK, - Flags.FLAG_FIX_MOVING_UNFOCUSED_TASK, - Flags.FLAG_FIX_SET_ADJACENT_TASK_FRAGMENTS_WITH_PARAMS, - Flags.FLAG_FIX_SHOW_WHEN_LOCKED_SYNC_TIMEOUT, + Flags.FLAG_FIX_LAYOUT_EXISTING_TASK, + Flags.FLAG_FIX_VIEW_ROOT_CALL_TRACE, Flags.FLAG_FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK, - Flags.FLAG_FORCE_SHOW_SYSTEM_BAR_FOR_BUBBLE, Flags.FLAG_FORM_FACTOR_BASED_DESKTOP_FIRST_SWITCH, Flags.FLAG_GET_DIMMER_ON_CLOSING, - Flags.FLAG_GRANT_MANAGE_KEY_GESTURES_TO_RECENTS, Flags.FLAG_IGNORE_ASPECT_RATIO_RESTRICTIONS_FOR_RESIZEABLE_FREEFORM_ACTIVITIES, Flags.FLAG_IGNORE_CORNER_RADIUS_AND_SHADOWS, Flags.FLAG_INCLUDE_TOP_TRANSPARENT_FULLSCREEN_TASK_IN_DESKTOP_HEURISTIC, Flags.FLAG_INHERIT_TASK_BOUNDS_FOR_TRAMPOLINE_TASK_LAUNCHES, Flags.FLAG_INSETS_DECOUPLED_CONFIGURATION, - Flags.FLAG_INTERCEPT_MOTION_FROM_MOVE_TO_CANCEL, Flags.FLAG_JANK_API, + Flags.FLAG_KEEP_APP_WINDOW_HIDE_WHILE_LOCKED, Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, + Flags.FLAG_KEYGUARD_GOING_AWAY_TIMEOUT, Flags.FLAG_LETTERBOX_BACKGROUND_WALLPAPER, Flags.FLAG_MOVABLE_CUTOUT_CONFIGURATION, Flags.FLAG_MOVE_TO_EXTERNAL_DISPLAY_SHORTCUT, Flags.FLAG_MULTI_CROP, Flags.FLAG_NAV_BAR_TRANSPARENT_BY_DEFAULT, - Flags.FLAG_NESTED_TASKS_WITH_INDEPENDENT_BOUNDS_BUGFIX, + Flags.FLAG_NESTED_TASKS_WITH_INDEPENDENT_BOUNDS, + Flags.FLAG_NO_CONSECUTIVE_VISIBILITY_EVENTS, + Flags.FLAG_NO_DUPLICATE_SURFACE_DESTROYED_EVENTS, + Flags.FLAG_NO_VISIBILITY_EVENT_ON_DISPLAY_STATE_CHANGE, Flags.FLAG_OFFLOAD_COLOR_EXTRACTION, - Flags.FLAG_PARALLEL_CD_TRANSITIONS_DURING_RECENTS, Flags.FLAG_PORT_WINDOW_SIZE_ANIMATION, Flags.FLAG_PREDICTIVE_BACK_DEFAULT_ENABLE_SDK_36, Flags.FLAG_PREDICTIVE_BACK_PRIORITY_SYSTEM_NAVIGATION_OBSERVER, @@ -2397,33 +2098,28 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_PREDICTIVE_BACK_SYSTEM_OVERRIDE_CALLBACK, Flags.FLAG_PREDICTIVE_BACK_THREE_BUTTON_NAV, Flags.FLAG_PREDICTIVE_BACK_TIMESTAMP_API, - Flags.FLAG_PRESERVE_RECENTS_TASK_CONFIGURATION_ON_RELAUNCH, + Flags.FLAG_PROCESS_PRIORITY_POLICY_FOR_MULTI_WINDOW_MODE, Flags.FLAG_REAR_DISPLAY_DISABLE_FORCE_DESKTOP_SYSTEM_DECORATIONS, + Flags.FLAG_RECORD_TASK_SNAPSHOTS_BEFORE_SHUTDOWN, Flags.FLAG_REDUCE_CHANGED_EXCLUSION_RECTS_MSGS, + Flags.FLAG_REDUCE_KEYGUARD_TRANSITIONS, Flags.FLAG_REDUCE_TASK_SNAPSHOT_MEMORY_USAGE, + Flags.FLAG_REDUCE_UNNECESSARY_MEASURE, Flags.FLAG_RELATIVE_INSETS, Flags.FLAG_RELEASE_SNAPSHOT_AGGRESSIVELY, - Flags.FLAG_RELEASE_SURFACE_ON_TRANSITION_FINISH, + Flags.FLAG_RELEASE_USER_ASPECT_RATIO_WM, Flags.FLAG_REMOVE_ACTIVITY_STARTER_DREAM_CALLBACK, + Flags.FLAG_REMOVE_DEFER_HIDING_CLIENT, Flags.FLAG_REMOVE_DEPART_TARGET_FROM_MOTION, - Flags.FLAG_REMOVE_STARTING_IN_TRANSITION, - Flags.FLAG_REPARENT_TO_DEFAULT_WITH_DISPLAY_REMOVAL, Flags.FLAG_REPARENT_WINDOW_TOKEN_API, - Flags.FLAG_RESPECT_FULLSCREEN_ACTIVITY_OPTION_IN_DESKTOP_LAUNCH_PARAMS, - Flags.FLAG_RESPECT_HIERARCHY_SURFACE_VISIBILITY, - Flags.FLAG_RESPECT_LEAF_TASK_BOUNDS, + Flags.FLAG_RESPECT_NON_TOP_VISIBLE_FIXED_ORIENTATION, Flags.FLAG_RESPECT_ORIENTATION_CHANGE_FOR_UNRESIZEABLE, - Flags.FLAG_RESTORE_USER_ASPECT_RATIO_SETTINGS_USING_SERVICE, - Flags.FLAG_RESTRICT_FREEFORM_HIDDEN_SYSTEM_BARS_TO_FILLING_TASKS, - Flags.FLAG_ROOT_TASK_FOR_BUBBLE, Flags.FLAG_SAFE_REGION_LETTERBOXING, Flags.FLAG_SAFE_RELEASE_SNAPSHOT_AGGRESSIVELY, Flags.FLAG_SCHEDULING_FOR_NOTIFICATION_SHADE, Flags.FLAG_SCRAMBLE_SNAPSHOT_FILE_NAME, - Flags.FLAG_SCREEN_BRIGHTNESS_DIM_ON_EMULATOR, Flags.FLAG_SCREEN_RECORDING_CALLBACKS, Flags.FLAG_SCROLLING_FROM_LETTERBOX, - Flags.FLAG_SCVH_SURFACE_CONTROL_LIFETIME_FIX, Flags.FLAG_SDK_DESIRED_PRESENT_TIME, Flags.FLAG_SET_SC_PROPERTIES_IN_CLIENT, Flags.FLAG_SHOW_APP_HANDLE_LARGE_SCREENS, @@ -2431,30 +2127,30 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_SHOW_DESKTOP_WINDOWING_DEV_OPTION, Flags.FLAG_SHOW_HOME_BEHIND_DESKTOP, Flags.FLAG_SKIP_COMPAT_UI_EDUCATION_IN_DESKTOP_MODE, - Flags.FLAG_SKIP_DEACTIVATION_OF_DESK_WITH_NOTHING_IN_FRONT, Flags.FLAG_SKIP_DECOR_VIEW_RELAYOUT_WHEN_CLOSING_BUGFIX, - Flags.FLAG_SPLASH_SCREEN_VIEW_SYNC_TRANSACTION, + Flags.FLAG_SUPPORT_WIDGET_INTENTS_ON_CONNECTED_DISPLAY, Flags.FLAG_SUPPORTS_DRAG_ASSISTANT_TO_MULTIWINDOW, Flags.FLAG_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI, Flags.FLAG_SURFACE_CONTROL_INPUT_RECEIVER, Flags.FLAG_SURFACE_TRUSTED_OVERLAY, Flags.FLAG_SYNC_SCREEN_CAPTURE, Flags.FLAG_SYSTEM_UI_POST_ANIMATION_END, + Flags.FLAG_TASK_FRAGMENT_SYSTEM_ORGANIZER_FLAG, Flags.FLAG_TOUCH_PASS_THROUGH_OPT_IN, + Flags.FLAG_TRACK_SYSTEM_UI_CONTEXT_BEFORE_WMS, Flags.FLAG_TRANSIT_READY_TRACKING, Flags.FLAG_TRANSIT_TRACKER_PLUMBING, - Flags.FLAG_TRANSITION_HANDLER_CUJ_TAGS, Flags.FLAG_TRUSTED_PRESENTATION_LISTENER_FOR_WINDOW, Flags.FLAG_UNIFY_BACK_NAVIGATION_TRANSITION, - Flags.FLAG_UNIFY_SHELL_BINDERS, Flags.FLAG_UNIVERSAL_RESIZABLE_BY_DEFAULT, Flags.FLAG_UNTRUSTED_EMBEDDING_ANY_APP_PERMISSION, Flags.FLAG_UNTRUSTED_EMBEDDING_STATE_SHARING, Flags.FLAG_UPDATE_DIMS_WHEN_WINDOW_SHOWN, - Flags.FLAG_UPDATE_HOST_INPUT_TRANSFER_TOKEN, - Flags.FLAG_UPDATE_TASK_MIN_DIMENSIONS_WITH_ROOT_ACTIVITY, Flags.FLAG_USE_CACHED_INSETS_FOR_DISPLAY_SWITCH, + Flags.FLAG_USE_RT_FRAME_CALLBACK_FOR_SPLASH_SCREEN_TRANSFER, Flags.FLAG_USE_TASKS_DIM_ONLY, + Flags.FLAG_USE_VISIBLE_REQUESTED_FOR_PROCESS_TRACKER, + Flags.FLAG_USE_WINDOW_ORIGINAL_TOUCHABLE_REGION_WHEN_MAGNIFICATION_RECOMPUTE_BOUNDS, Flags.FLAG_VDM_FORCE_APP_UNIVERSAL_RESIZABLE_API, Flags.FLAG_WALLPAPER_OFFSET_ASYNC, Flags.FLAG_WLINFO_ONCREATE @@ -2464,20 +2160,20 @@ public class CustomFeatureFlags implements FeatureFlags { private Set mReadOnlyFlagsSet = new HashSet<>( Arrays.asList( Flags.FLAG_ACTION_MODE_EDGE_TO_EDGE, + Flags.FLAG_ACTIVITY_EMBEDDING_ANIMATION_CUSTOMIZATION_FLAG, Flags.FLAG_ACTIVITY_EMBEDDING_DELAY_TASK_FRAGMENT_FINISH_FOR_ACTIVITY_LAUNCH, Flags.FLAG_ACTIVITY_EMBEDDING_INTERACTIVE_DIVIDER_FLAG, Flags.FLAG_ACTIVITY_EMBEDDING_METRICS, Flags.FLAG_ACTIVITY_EMBEDDING_SUPPORT_FOR_CONNECTED_DISPLAYS, Flags.FLAG_ALLOW_DISABLE_ACTIVITY_RECORD_INPUT_SINK, + Flags.FLAG_ALLOW_HIDE_SCM_BUTTON, Flags.FLAG_ALLOWS_SCREEN_SIZE_DECOUPLED_FROM_STATUS_BAR_AND_CUTOUT, Flags.FLAG_ALWAYS_DRAW_MAGNIFICATION_FULLSCREEN_BORDER, - Flags.FLAG_ALWAYS_SEQ_ID_LAYOUT, Flags.FLAG_ALWAYS_UPDATE_WALLPAPER_PERMISSION, Flags.FLAG_AOD_TRANSITION, Flags.FLAG_APP_COMPAT_ASYNC_RELAYOUT, Flags.FLAG_APP_COMPAT_PROPERTIES_API, Flags.FLAG_APP_COMPAT_REFACTORING, - Flags.FLAG_APP_COMPAT_REFACTORING_ROUNDED_CORNERS, Flags.FLAG_APP_COMPAT_UI_FRAMEWORK, Flags.FLAG_APP_HANDLE_NO_RELAYOUT_ON_EXCLUSION_CHANGE, Flags.FLAG_APPLY_LIFECYCLE_ON_PIP_CHANGE, @@ -2486,36 +2182,44 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_BAL_ADDITIONAL_LOGGING, Flags.FLAG_BAL_ADDITIONAL_START_MODES, Flags.FLAG_BAL_CLEAR_ALLOWLIST_DURATION, - Flags.FLAG_BAL_COVER_INTENT_SENDER, Flags.FLAG_BAL_DONT_BRING_EXISTING_BACKGROUND_TASK_STACK_TO_FG, + Flags.FLAG_BAL_IMPROVE_REAL_CALLER_VISIBILITY_CHECK, + Flags.FLAG_BAL_IMPROVED_METRICS, Flags.FLAG_BAL_REDUCE_GRACE_PERIOD, + Flags.FLAG_BAL_REQUIRE_OPT_IN_BY_PENDING_INTENT_CREATOR, Flags.FLAG_BAL_RESPECT_APP_SWITCH_STATE_WHEN_CHECK_BOUND_BY_FOREGROUND_UID, Flags.FLAG_BAL_SEND_INTENT_WITH_OPTIONS, Flags.FLAG_BAL_SHOW_TOASTS_BLOCKED, Flags.FLAG_BAL_STRICT_MODE_GRACE_PERIOD, Flags.FLAG_BAL_STRICT_MODE_RO, Flags.FLAG_BETTER_SUPPORT_NON_MATCH_PARENT_ACTIVITY, + Flags.FLAG_CACHE_WINDOW_STYLE, Flags.FLAG_CAMERA_COMPAT_FOR_FREEFORM, Flags.FLAG_CAMERA_COMPAT_FULLSCREEN_PICK_SAME_TASK_ACTIVITY, + Flags.FLAG_CHECK_DISABLED_SNAPSHOTS_IN_TASK_PERSISTER, + Flags.FLAG_CLEANUP_DISPATCH_PENDING_TRANSACTIONS_REMOTE_EXCEPTION, + Flags.FLAG_CLEAR_SYSTEM_VIBRATOR, Flags.FLAG_CLOSE_TO_SQUARE_CONFIG_INCLUDES_STATUS_BAR, + Flags.FLAG_CONDENSE_CONFIGURATION_CHANGE_FOR_SIMPLE_MODE, + Flags.FLAG_CONFIGURABLE_FONT_SCALE_DEFAULT, Flags.FLAG_COVER_DISPLAY_OPT_IN, - Flags.FLAG_CURRENT_ANIMATOR_SCALE_USES_SHARED_MEMORY, - Flags.FLAG_DEFAULT_DESK_WITHOUT_WARMUP_MIGRATION, + Flags.FLAG_DELAY_NOTIFICATION_TO_MAGNIFICATION_WHEN_RECENTS_WINDOW_TO_FRONT_TRANSITION, + Flags.FLAG_DELEGATE_BACK_GESTURE_TO_SHELL, Flags.FLAG_DELEGATE_UNHANDLED_DRAGS, + Flags.FLAG_DELETE_CAPTURE_DISPLAY, Flags.FLAG_DENSITY_390_API, Flags.FLAG_DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX, Flags.FLAG_DISABLE_NON_RESIZABLE_APP_SNAP_RESIZING, Flags.FLAG_DISABLE_OPT_OUT_EDGE_TO_EDGE, - Flags.FLAG_DISPATCH_FIRST_KEYGUARD_LOCKED_STATE, + Flags.FLAG_DO_NOT_CHECK_INTERSECTION_WHEN_NON_MAGNIFIABLE_WINDOW_TRANSITIONS, + Flags.FLAG_EARLY_LAUNCH_HINT, + Flags.FLAG_EDGE_TO_EDGE_BY_DEFAULT, Flags.FLAG_ENABLE_ACCESSIBLE_CUSTOM_HEADERS, Flags.FLAG_ENABLE_ACTIVITY_EMBEDDING_SUPPORT_FOR_CONNECTED_DISPLAYS, - Flags.FLAG_ENABLE_APP_HANDLE_POSITION_REPORTING, Flags.FLAG_ENABLE_APP_HEADER_WITH_TASK_DENSITY, - Flags.FLAG_ENABLE_BLOCK_NON_DESKTOP_DISPLAY_WINDOW_DRAG_BUGFIX, Flags.FLAG_ENABLE_BORDER_SETTINGS, - Flags.FLAG_ENABLE_BOX_SHADOW_SETTINGS, + Flags.FLAG_ENABLE_BUFFER_TRANSFORM_HINT_FROM_DISPLAY, Flags.FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY, - Flags.FLAG_ENABLE_CAMERA_COMPAT_CHECK_DEVICE_ROTATION_BUGFIX, Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING, Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT, Flags.FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT_API, @@ -2524,36 +2228,27 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION, Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS, Flags.FLAG_ENABLE_CASCADING_WINDOWS, - Flags.FLAG_ENABLE_CLOSE_LID_INTERACTION, Flags.FLAG_ENABLE_COMPAT_UI_VISIBILITY_STATUS, Flags.FLAG_ENABLE_COMPATUI_SYSUI_LAUNCHER, Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_DND, Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_PIP, Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG, Flags.FLAG_ENABLE_DESKTOP_APP_HANDLE_ANIMATION, - Flags.FLAG_ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS, Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_ALTTAB_TRANSITIONS, Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_ALTTAB_TRANSITIONS_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS, Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_CLOSE_SHORTCUT_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_CLOSE_TASK_ANIMATION_IN_DTC_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DEFAULT_TO_DESKTOP_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DRAG_TO_MAXIMIZE, - Flags.FLAG_ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_FIRST_LISTENER, Flags.FLAG_ENABLE_DESKTOP_IME_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_IMMERSIVE_DRAG_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_INDICATOR_IN_SEPARATE_THREAD_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_MODE_THROUGH_DEV_OPTION, Flags.FLAG_ENABLE_DESKTOP_OPENING_DEEPLINK_MINIMIZE_ANIMATION_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_SPLITSCREEN_TRANSITION_BUGFIX, + Flags.FLAG_ENABLE_DESKTOP_SWIPE_BACK_MINIMIZE_ANIMATION_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_SYSTEM_DIALOGS_TRANSITIONS, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, Flags.FLAG_ENABLE_DESKTOP_TASKBAR_ON_FREEFORM_DISPLAYS, Flags.FLAG_ENABLE_DESKTOP_TRAMPOLINE_CLOSE_ANIMATION_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, @@ -2574,7 +2269,6 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PERSISTENCE, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP_IN_OVERVIEW_BUGFIX, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_QUICK_SWITCH, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SCVH_CACHE_BUG_FIX, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS, @@ -2584,7 +2278,6 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, Flags.FLAG_ENABLE_DEVICE_STATE_AUTO_ROTATE_SETTING_LOGGING, Flags.FLAG_ENABLE_DEVICE_STATE_AUTO_ROTATE_SETTING_REFACTOR, - Flags.FLAG_ENABLE_DISPLAY_COMPAT_MODE, Flags.FLAG_ENABLE_DISPLAY_DISCONNECT_INTERACTION, Flags.FLAG_ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS, Flags.FLAG_ENABLE_DISPLAY_RECONNECT_INTERACTION, @@ -2592,112 +2285,82 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_ENABLE_DRAG_RESIZE_SET_UP_IN_BG_THREAD, Flags.FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX, Flags.FLAG_ENABLE_DRAG_TO_MAXIMIZE, - Flags.FLAG_ENABLE_DRAGGING_PIP_ACROSS_DISPLAYS, Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - Flags.FLAG_ENABLE_EXPERIMENTAL_BUBBLES_CONTROLLER, - Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS, - Flags.FLAG_ENABLE_FREEFORM_DISPLAY_LAUNCH_PARAMS, Flags.FLAG_ENABLE_FULL_SCREEN_WINDOW_ON_REMOVING_SPLIT_SCREEN_STAGE_BUGFIX, - Flags.FLAG_ENABLE_FULLSCREEN_WINDOW_CONTROLS, Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP, Flags.FLAG_ENABLE_HANDLE_INPUT_FIX, - Flags.FLAG_ENABLE_HANDLERS_DEBUGGING_MODE, Flags.FLAG_ENABLE_HOLD_TO_DRAG_APP_HANDLE, - Flags.FLAG_ENABLE_INDEPENDENT_BACK_IN_PROJECTED, - Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP, Flags.FLAG_ENABLE_INPUT_LAYER_TRANSITION_FIX, - Flags.FLAG_ENABLE_KEY_GESTURE_HANDLER_FOR_SYSUI, Flags.FLAG_ENABLE_MINIMIZE_BUTTON, Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION, - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE, Flags.FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT, Flags.FLAG_ENABLE_MULTI_DISPLAY_SPLIT, Flags.FLAG_ENABLE_MULTIDISPLAY_TRACKPAD_BACK_GESTURE, Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_DEFAULT_ACTIVATION_IN_DESKTOP_FIRST_DISPLAYS, Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_FRONTEND, - Flags.FLAG_ENABLE_NO_WINDOW_DECORATION_FOR_DESKS, Flags.FLAG_ENABLE_NON_DEFAULT_DISPLAY_SPLIT, - Flags.FLAG_ENABLE_OMIT_ACCELEROMETER_ROTATION_RESTORE, Flags.FLAG_ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS, - Flags.FLAG_ENABLE_OVERFLOW_BUTTON_FOR_TASKBAR_PINNED_ITEMS, Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, Flags.FLAG_ENABLE_PER_DISPLAY_PACKAGE_CONTEXT_CACHE_IN_STATUSBAR_NOTIF, Flags.FLAG_ENABLE_PERSISTING_DISPLAY_SIZE_FOR_CONNECTED_DISPLAYS, - Flags.FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU, Flags.FLAG_ENABLE_PRESENTATION_FOR_CONNECTED_DISPLAYS, Flags.FLAG_ENABLE_PROJECTED_DISPLAY_DESKTOP_MODE, Flags.FLAG_ENABLE_QUICKSWITCH_DESKTOP_SPLIT_BUGFIX, - Flags.FLAG_ENABLE_REJECT_HOME_TRANSITION, Flags.FLAG_ENABLE_REQUEST_FULLSCREEN_BUGFIX, - Flags.FLAG_ENABLE_REQUEST_FULLSCREEN_REFACTOR, Flags.FLAG_ENABLE_RESIZING_METRICS, Flags.FLAG_ENABLE_RESTART_MENU_FOR_CONNECTED_DISPLAYS, Flags.FLAG_ENABLE_RESTORE_TO_PREVIOUS_SIZE_FROM_DESKTOP_IMMERSIVE, - Flags.FLAG_ENABLE_SEE_THROUGH_TASK_FRAGMENTS, Flags.FLAG_ENABLE_SHELL_INITIAL_BOUNDS_REGRESSION_BUG_FIX, Flags.FLAG_ENABLE_SIZE_COMPAT_MODE_IMPROVEMENTS_FOR_CONNECTED_DISPLAYS, Flags.FLAG_ENABLE_START_LAUNCH_TRANSITION_FROM_TASKBAR_BUGFIX, - Flags.FLAG_ENABLE_SYS_DECORS_CALLBACKS_VIA_WM, - Flags.FLAG_ENABLE_TALL_APP_HEADERS, Flags.FLAG_ENABLE_TASK_RESIZING_KEYBOARD_SHORTCUTS, Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL, Flags.FLAG_ENABLE_TASKBAR_CONNECTED_DISPLAYS, Flags.FLAG_ENABLE_TASKBAR_OVERFLOW, - Flags.FLAG_ENABLE_TASKBAR_RECENT_TASKS_THROTTLE_BUGFIX, Flags.FLAG_ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION, Flags.FLAG_ENABLE_THEMED_APP_HEADERS, Flags.FLAG_ENABLE_TILE_RESIZING, Flags.FLAG_ENABLE_TOP_VISIBLE_ROOT_TASK_PER_USER_TRACKING, - Flags.FLAG_ENABLE_TRANSITION_ON_ACTIVITY_SET_REQUESTED_ORIENTATION, Flags.FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX, - Flags.FLAG_ENABLE_WINDOW_CONTEXT_OVERRIDE_TYPE, Flags.FLAG_ENABLE_WINDOW_CONTEXT_RESOURCES_UPDATE_ON_CONFIG_CHANGE, - Flags.FLAG_ENABLE_WINDOW_DECORATION_REFACTOR, - Flags.FLAG_ENABLE_WINDOW_REPOSITIONING_API, Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS, Flags.FLAG_ENABLE_WINDOWING_EDGE_DRAG_RESIZE, Flags.FLAG_ENABLE_WINDOWING_SCALED_RESIZING, - Flags.FLAG_ENABLE_WINDOWING_TASK_STACK_ORDER_BUGFIX, Flags.FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS, Flags.FLAG_ENFORCE_EDGE_TO_EDGE, Flags.FLAG_ENSURE_KEYGUARD_DOES_TRANSITION_STARTING, + Flags.FLAG_ENSURE_WALLPAPER_IN_TRANSITIONS, + Flags.FLAG_ENSURE_WALLPAPER_IN_WEAR_TRANSITIONS, Flags.FLAG_ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS, Flags.FLAG_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - Flags.FLAG_EXCLUDE_DESK_ROOTS_FROM_DESKTOP_TASKS, - Flags.FLAG_EXCLUDE_NON_MAIN_WINDOW_FROM_SNAPSHOT, + Flags.FLAG_EXCLUDE_DRAWING_APP_THEME_SNAPSHOT_FROM_LOCK, Flags.FLAG_EXCLUDE_TASK_FROM_RECENTS, - Flags.FLAG_EXTENDING_PERSISTENCE_SNAPSHOT_QUEUE_DEPTH, - Flags.FLAG_FALLBACK_TO_FOCUSED_DISPLAY, Flags.FLAG_FIFO_PRIORITY_FOR_MAJOR_UI_PROCESSES, - Flags.FLAG_FIX_FULLSCREEN_IN_MULTI_WINDOW, Flags.FLAG_FIX_HIDE_OVERLAY_API, - Flags.FLAG_FIX_LAYOUT_RESTORED_TASK, - Flags.FLAG_FIX_MOVING_UNFOCUSED_TASK, - Flags.FLAG_FIX_SET_ADJACENT_TASK_FRAGMENTS_WITH_PARAMS, - Flags.FLAG_FIX_SHOW_WHEN_LOCKED_SYNC_TIMEOUT, + Flags.FLAG_FIX_LAYOUT_EXISTING_TASK, + Flags.FLAG_FIX_VIEW_ROOT_CALL_TRACE, Flags.FLAG_FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK, - Flags.FLAG_FORCE_SHOW_SYSTEM_BAR_FOR_BUBBLE, Flags.FLAG_FORM_FACTOR_BASED_DESKTOP_FIRST_SWITCH, Flags.FLAG_GET_DIMMER_ON_CLOSING, - Flags.FLAG_GRANT_MANAGE_KEY_GESTURES_TO_RECENTS, Flags.FLAG_IGNORE_ASPECT_RATIO_RESTRICTIONS_FOR_RESIZEABLE_FREEFORM_ACTIVITIES, Flags.FLAG_IGNORE_CORNER_RADIUS_AND_SHADOWS, Flags.FLAG_INCLUDE_TOP_TRANSPARENT_FULLSCREEN_TASK_IN_DESKTOP_HEURISTIC, Flags.FLAG_INHERIT_TASK_BOUNDS_FOR_TRAMPOLINE_TASK_LAUNCHES, Flags.FLAG_INSETS_DECOUPLED_CONFIGURATION, - Flags.FLAG_INTERCEPT_MOTION_FROM_MOVE_TO_CANCEL, Flags.FLAG_JANK_API, + Flags.FLAG_KEEP_APP_WINDOW_HIDE_WHILE_LOCKED, Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, + Flags.FLAG_KEYGUARD_GOING_AWAY_TIMEOUT, Flags.FLAG_LETTERBOX_BACKGROUND_WALLPAPER, Flags.FLAG_MOVABLE_CUTOUT_CONFIGURATION, Flags.FLAG_MOVE_TO_EXTERNAL_DISPLAY_SHORTCUT, Flags.FLAG_MULTI_CROP, Flags.FLAG_NAV_BAR_TRANSPARENT_BY_DEFAULT, - Flags.FLAG_NESTED_TASKS_WITH_INDEPENDENT_BOUNDS_BUGFIX, + Flags.FLAG_NESTED_TASKS_WITH_INDEPENDENT_BOUNDS, + Flags.FLAG_NO_CONSECUTIVE_VISIBILITY_EVENTS, + Flags.FLAG_NO_DUPLICATE_SURFACE_DESTROYED_EVENTS, + Flags.FLAG_NO_VISIBILITY_EVENT_ON_DISPLAY_STATE_CHANGE, Flags.FLAG_OFFLOAD_COLOR_EXTRACTION, - Flags.FLAG_PARALLEL_CD_TRANSITIONS_DURING_RECENTS, Flags.FLAG_PORT_WINDOW_SIZE_ANIMATION, Flags.FLAG_PREDICTIVE_BACK_DEFAULT_ENABLE_SDK_36, Flags.FLAG_PREDICTIVE_BACK_PRIORITY_SYSTEM_NAVIGATION_OBSERVER, @@ -2705,33 +2368,28 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_PREDICTIVE_BACK_SYSTEM_OVERRIDE_CALLBACK, Flags.FLAG_PREDICTIVE_BACK_THREE_BUTTON_NAV, Flags.FLAG_PREDICTIVE_BACK_TIMESTAMP_API, - Flags.FLAG_PRESERVE_RECENTS_TASK_CONFIGURATION_ON_RELAUNCH, + Flags.FLAG_PROCESS_PRIORITY_POLICY_FOR_MULTI_WINDOW_MODE, Flags.FLAG_REAR_DISPLAY_DISABLE_FORCE_DESKTOP_SYSTEM_DECORATIONS, + Flags.FLAG_RECORD_TASK_SNAPSHOTS_BEFORE_SHUTDOWN, Flags.FLAG_REDUCE_CHANGED_EXCLUSION_RECTS_MSGS, + Flags.FLAG_REDUCE_KEYGUARD_TRANSITIONS, Flags.FLAG_REDUCE_TASK_SNAPSHOT_MEMORY_USAGE, + Flags.FLAG_REDUCE_UNNECESSARY_MEASURE, Flags.FLAG_RELATIVE_INSETS, Flags.FLAG_RELEASE_SNAPSHOT_AGGRESSIVELY, - Flags.FLAG_RELEASE_SURFACE_ON_TRANSITION_FINISH, + Flags.FLAG_RELEASE_USER_ASPECT_RATIO_WM, Flags.FLAG_REMOVE_ACTIVITY_STARTER_DREAM_CALLBACK, + Flags.FLAG_REMOVE_DEFER_HIDING_CLIENT, Flags.FLAG_REMOVE_DEPART_TARGET_FROM_MOTION, - Flags.FLAG_REMOVE_STARTING_IN_TRANSITION, - Flags.FLAG_REPARENT_TO_DEFAULT_WITH_DISPLAY_REMOVAL, Flags.FLAG_REPARENT_WINDOW_TOKEN_API, - Flags.FLAG_RESPECT_FULLSCREEN_ACTIVITY_OPTION_IN_DESKTOP_LAUNCH_PARAMS, - Flags.FLAG_RESPECT_HIERARCHY_SURFACE_VISIBILITY, - Flags.FLAG_RESPECT_LEAF_TASK_BOUNDS, + Flags.FLAG_RESPECT_NON_TOP_VISIBLE_FIXED_ORIENTATION, Flags.FLAG_RESPECT_ORIENTATION_CHANGE_FOR_UNRESIZEABLE, - Flags.FLAG_RESTORE_USER_ASPECT_RATIO_SETTINGS_USING_SERVICE, - Flags.FLAG_RESTRICT_FREEFORM_HIDDEN_SYSTEM_BARS_TO_FILLING_TASKS, - Flags.FLAG_ROOT_TASK_FOR_BUBBLE, Flags.FLAG_SAFE_REGION_LETTERBOXING, Flags.FLAG_SAFE_RELEASE_SNAPSHOT_AGGRESSIVELY, Flags.FLAG_SCHEDULING_FOR_NOTIFICATION_SHADE, Flags.FLAG_SCRAMBLE_SNAPSHOT_FILE_NAME, - Flags.FLAG_SCREEN_BRIGHTNESS_DIM_ON_EMULATOR, Flags.FLAG_SCREEN_RECORDING_CALLBACKS, Flags.FLAG_SCROLLING_FROM_LETTERBOX, - Flags.FLAG_SCVH_SURFACE_CONTROL_LIFETIME_FIX, Flags.FLAG_SDK_DESIRED_PRESENT_TIME, Flags.FLAG_SET_SC_PROPERTIES_IN_CLIENT, Flags.FLAG_SHOW_APP_HANDLE_LARGE_SCREENS, @@ -2739,30 +2397,30 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_SHOW_DESKTOP_WINDOWING_DEV_OPTION, Flags.FLAG_SHOW_HOME_BEHIND_DESKTOP, Flags.FLAG_SKIP_COMPAT_UI_EDUCATION_IN_DESKTOP_MODE, - Flags.FLAG_SKIP_DEACTIVATION_OF_DESK_WITH_NOTHING_IN_FRONT, Flags.FLAG_SKIP_DECOR_VIEW_RELAYOUT_WHEN_CLOSING_BUGFIX, - Flags.FLAG_SPLASH_SCREEN_VIEW_SYNC_TRANSACTION, + Flags.FLAG_SUPPORT_WIDGET_INTENTS_ON_CONNECTED_DISPLAY, Flags.FLAG_SUPPORTS_DRAG_ASSISTANT_TO_MULTIWINDOW, Flags.FLAG_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI, Flags.FLAG_SURFACE_CONTROL_INPUT_RECEIVER, Flags.FLAG_SURFACE_TRUSTED_OVERLAY, Flags.FLAG_SYNC_SCREEN_CAPTURE, Flags.FLAG_SYSTEM_UI_POST_ANIMATION_END, + Flags.FLAG_TASK_FRAGMENT_SYSTEM_ORGANIZER_FLAG, Flags.FLAG_TOUCH_PASS_THROUGH_OPT_IN, + Flags.FLAG_TRACK_SYSTEM_UI_CONTEXT_BEFORE_WMS, Flags.FLAG_TRANSIT_READY_TRACKING, Flags.FLAG_TRANSIT_TRACKER_PLUMBING, - Flags.FLAG_TRANSITION_HANDLER_CUJ_TAGS, Flags.FLAG_TRUSTED_PRESENTATION_LISTENER_FOR_WINDOW, Flags.FLAG_UNIFY_BACK_NAVIGATION_TRANSITION, - Flags.FLAG_UNIFY_SHELL_BINDERS, Flags.FLAG_UNIVERSAL_RESIZABLE_BY_DEFAULT, Flags.FLAG_UNTRUSTED_EMBEDDING_ANY_APP_PERMISSION, Flags.FLAG_UNTRUSTED_EMBEDDING_STATE_SHARING, Flags.FLAG_UPDATE_DIMS_WHEN_WINDOW_SHOWN, - Flags.FLAG_UPDATE_HOST_INPUT_TRANSFER_TOKEN, - Flags.FLAG_UPDATE_TASK_MIN_DIMENSIONS_WITH_ROOT_ACTIVITY, Flags.FLAG_USE_CACHED_INSETS_FOR_DISPLAY_SWITCH, + Flags.FLAG_USE_RT_FRAME_CALLBACK_FOR_SPLASH_SCREEN_TRANSFER, Flags.FLAG_USE_TASKS_DIM_ONLY, + Flags.FLAG_USE_VISIBLE_REQUESTED_FOR_PROCESS_TRACKER, + Flags.FLAG_USE_WINDOW_ORIGINAL_TOUCHABLE_REGION_WHEN_MAGNIFICATION_RECOMPUTE_BOUNDS, Flags.FLAG_VDM_FORCE_APP_UNIVERSAL_RESIZABLE_API, Flags.FLAG_WALLPAPER_OFFSET_ASYNC, Flags.FLAG_WLINFO_ONCREATE, diff --git a/flags/src/com/android/window/flags2/FeatureFlags.java b/flags/src/com/android/window/flags2/FeatureFlags.java index fb17f04704..d8c9510e77 100644 --- a/flags/src/com/android/window/flags2/FeatureFlags.java +++ b/flags/src/com/android/window/flags2/FeatureFlags.java @@ -1,5 +1,5 @@ package com.android.window.flags2; - +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public interface FeatureFlags { @@ -9,6 +9,11 @@ public interface FeatureFlags { boolean actionModeEdgeToEdge(); + + boolean activityEmbeddingAnimationCustomizationFlag(); + + + boolean activityEmbeddingDelayTaskFragmentFinishForActivityLaunch(); @@ -16,9 +21,11 @@ public interface FeatureFlags { boolean activityEmbeddingInteractiveDividerFlag(); + boolean activityEmbeddingMetrics(); + boolean activityEmbeddingSupportForConnectedDisplays(); @@ -27,6 +34,10 @@ public interface FeatureFlags { + boolean allowHideScmButton(); + + + boolean allowsScreenSizeDecoupledFromStatusBarAndCutout(); @@ -34,16 +45,15 @@ public interface FeatureFlags { boolean alwaysDrawMagnificationFullscreenBorder(); - boolean alwaysSeqIdLayout(); - - boolean alwaysUpdateWallpaperPermission(); + boolean aodTransition(); + boolean appCompatAsyncRelayout(); @@ -51,18 +61,19 @@ public interface FeatureFlags { boolean appCompatPropertiesApi(); + boolean appCompatRefactoring(); - boolean appCompatRefactoringRoundedCorners(); - boolean appCompatUiFramework(); + boolean appHandleNoRelayoutOnExclusionChange(); + boolean applyLifecycleOnPipChange(); @@ -74,6 +85,7 @@ public interface FeatureFlags { boolean backupAndRestoreForUserAspectRatioSettings(); + boolean balAdditionalLogging(); @@ -81,20 +93,31 @@ public interface FeatureFlags { boolean balAdditionalStartModes(); + boolean balClearAllowlistDuration(); - boolean balCoverIntentSender(); - - boolean balDontBringExistingBackgroundTaskStackToFg(); + + boolean balImproveRealCallerVisibilityCheck(); + + + + boolean balImprovedMetrics(); + + + boolean balReduceGracePeriod(); + boolean balRequireOptInByPendingIntentCreator(); + + + boolean balRespectAppSwitchStateWhenCheckBoundByForegroundUid(); @@ -102,6 +125,7 @@ public interface FeatureFlags { boolean balSendIntentWithOptions(); + boolean balShowToastsBlocked(); @@ -117,23 +141,52 @@ public interface FeatureFlags { boolean betterSupportNonMatchParentActivity(); + + boolean cacheWindowStyle(); + + + boolean cameraCompatForFreeform(); + boolean cameraCompatFullscreenPickSameTaskActivity(); + + boolean checkDisabledSnapshotsInTaskPersister(); + + + + boolean cleanupDispatchPendingTransactionsRemoteException(); + + + + boolean clearSystemVibrator(); + + + boolean closeToSquareConfigIncludesStatusBar(); + boolean condenseConfigurationChangeForSimpleMode(); + + + + boolean configurableFontScaleDefault(); + + + boolean coverDisplayOptIn(); - boolean currentAnimatorScaleUsesSharedMemory(); + + boolean delayNotificationToMagnificationWhenRecentsWindowToFrontTransition(); - boolean defaultDeskWithoutWarmupMigration(); + + boolean delegateBackGestureToShell(); @@ -141,6 +194,10 @@ public interface FeatureFlags { + boolean deleteCaptureDisplay(); + + + boolean density390Api(); @@ -157,38 +214,41 @@ public interface FeatureFlags { - boolean dispatchFirstKeyguardLockedState(); + boolean doNotCheckIntersectionWhenNonMagnifiableWindowTransitions(); + + + + boolean earlyLaunchHint(); + + + + boolean edgeToEdgeByDefault(); boolean enableAccessibleCustomHeaders(); + boolean enableActivityEmbeddingSupportForConnectedDisplays(); - boolean enableAppHandlePositionReporting(); - - boolean enableAppHeaderWithTaskDensity(); - boolean enableBlockNonDesktopDisplayWindowDragBugfix(); - boolean enableBorderSettings(); - boolean enableBoxShadowSettings(); + + boolean enableBufferTransformHintFromDisplay(); + boolean enableBugFixesForSecondaryDisplay(); - boolean enableCameraCompatCheckDeviceRotationBugfix(); - - boolean enableCameraCompatForDesktopWindowing(); @@ -197,12 +257,15 @@ public interface FeatureFlags { boolean enableCameraCompatForDesktopWindowingOptOut(); + boolean enableCameraCompatForDesktopWindowingOptOutApi(); + boolean enableCameraCompatTrackTaskAndAppBugfix(); + boolean enableCaptionCompatInsetConversion(); @@ -218,22 +281,23 @@ public interface FeatureFlags { boolean enableCascadingWindows(); - boolean enableCloseLidInteraction(); - - boolean enableCompatUiVisibilityStatus(); + boolean enableCompatuiSysuiLauncher(); + boolean enableConnectedDisplaysDnd(); + boolean enableConnectedDisplaysPip(); + boolean enableConnectedDisplaysWindowDrag(); @@ -241,8 +305,6 @@ public interface FeatureFlags { boolean enableDesktopAppHandleAnimation(); - boolean enableDesktopAppHeaderStateChangeAnnouncements(); - boolean enableDesktopAppLaunchAlttabTransitions(); @@ -251,8 +313,6 @@ public interface FeatureFlags { boolean enableDesktopAppLaunchAlttabTransitionsBugfix(); - boolean enableDesktopAppLaunchBugfix(); - boolean enableDesktopAppLaunchTransitions(); @@ -261,23 +321,14 @@ public interface FeatureFlags { boolean enableDesktopAppLaunchTransitionsBugfix(); + boolean enableDesktopCloseShortcutBugfix(); + boolean enableDesktopCloseTaskAnimationInDtcBugfix(); - boolean enableDesktopFirstBasedDefaultToDesktopBugfix(); - - - boolean enableDesktopFirstBasedDragToMaximize(); - - - boolean enableDesktopFirstFullscreenRefocusBugfix(); - - - boolean enableDesktopFirstListener(); - boolean enableDesktopImeBugfix(); @@ -290,6 +341,7 @@ public interface FeatureFlags { boolean enableDesktopIndicatorInSeparateThreadBugfix(); + boolean enableDesktopModeThroughDevOption(); @@ -301,22 +353,18 @@ public interface FeatureFlags { boolean enableDesktopRecentsTransitionsCornersBugfix(); - boolean enableDesktopSplitscreenTransitionBugfix(); + + boolean enableDesktopSwipeBackMinimizeAnimationBugfix(); boolean enableDesktopSystemDialogsTransitions(); - boolean enableDesktopTabTearingLaunchAnimation(); - - boolean enableDesktopTabTearingMinimizeAnimationBugfix(); - boolean enableDesktopTaskLimitSeparateTransition(); - boolean enableDesktopTaskbarOnFreeformDisplays(); @@ -329,6 +377,7 @@ public interface FeatureFlags { boolean enableDesktopWallpaperActivityForSystemUser(); + boolean enableDesktopWindowingAppHandleEducation(); @@ -340,6 +389,7 @@ public interface FeatureFlags { boolean enableDesktopWindowingAppToWebEducation(); + boolean enableDesktopWindowingAppToWebEducationIntegration(); @@ -351,6 +401,7 @@ public interface FeatureFlags { boolean enableDesktopWindowingEnterTransitionBugfix(); + boolean enableDesktopWindowingEnterTransitions(); @@ -358,6 +409,7 @@ public interface FeatureFlags { boolean enableDesktopWindowingExitByMinimizeTransitionBugfix(); + boolean enableDesktopWindowingExitTransitions(); @@ -389,12 +441,10 @@ public interface FeatureFlags { boolean enableDesktopWindowingPersistence(); + boolean enableDesktopWindowingPip(); - boolean enableDesktopWindowingPipInOverviewBugfix(); - - boolean enableDesktopWindowingQuickSwitch(); @@ -415,6 +465,7 @@ public interface FeatureFlags { boolean enableDesktopWindowingTaskbarRunningApps(); + boolean enableDesktopWindowingTransitions(); @@ -422,6 +473,7 @@ public interface FeatureFlags { boolean enableDesktopWindowingWallpaperActivity(); + boolean enableDeviceStateAutoRotateSettingLogging(); @@ -429,18 +481,19 @@ public interface FeatureFlags { boolean enableDeviceStateAutoRotateSettingRefactor(); - boolean enableDisplayCompatMode(); - boolean enableDisplayDisconnectInteraction(); + boolean enableDisplayFocusInShellTransitions(); + boolean enableDisplayReconnectInteraction(); + boolean enableDisplayWindowingModeSwitching(); @@ -452,34 +505,18 @@ public interface FeatureFlags { boolean enableDragToDesktopIncomingTransitionsBugfix(); + boolean enableDragToMaximize(); - boolean enableDraggingPipAcrossDisplays(); - boolean enableDynamicRadiusComputationBugfix(); - boolean enableEmptyDeskOnMinimize(); - - - boolean enableExperimentalBubblesController(); - - - boolean enableFreeformBoxShadows(); - - - boolean enableFreeformDisplayLaunchParams(); - - boolean enableFullScreenWindowOnRemovingSplitScreenStageBugfix(); - boolean enableFullscreenWindowControls(); - - boolean enableFullyImmersiveInDesktop(); @@ -488,26 +525,14 @@ public interface FeatureFlags { boolean enableHandleInputFix(); - boolean enableHandlersDebuggingMode(); - - boolean enableHoldToDragAppHandle(); - boolean enableIndependentBackInProjected(); - - - boolean enableInorderTransitionCallbacksForDesktop(); - - boolean enableInputLayerTransitionFix(); - boolean enableKeyGestureHandlerForSysui(); - - boolean enableMinimizeButton(); @@ -517,44 +542,33 @@ public interface FeatureFlags { - boolean enableModalsFullscreenWithPlatformSignature(); - - boolean enableMoveToNextDisplayShortcut(); + boolean enableMultiDisplaySplit(); + boolean enableMultidisplayTrackpadBackGesture(); + boolean enableMultipleDesktopsBackend(); - boolean enableMultipleDesktopsDefaultActivationInDesktopFirstDisplays(); - boolean enableMultipleDesktopsFrontend(); - boolean enableNoWindowDecorationForDesks(); - - boolean enableNonDefaultDisplaySplit(); - boolean enableOmitAccelerometerRotationRestore(); - - - boolean enableOpaqueBackgroundForTransparentWindows(); - boolean enableOverflowButtonForTaskbarPinnedItems(); - boolean enablePerDisplayDesktopWallpaperActivity(); @@ -563,15 +577,15 @@ public interface FeatureFlags { boolean enablePerDisplayPackageContextCacheInStatusbarNotif(); + boolean enablePersistingDisplaySizeForConnectedDisplays(); - boolean enablePinningAppWithContextMenu(); - boolean enablePresentationForConnectedDisplays(); + boolean enableProjectedDisplayDesktopMode(); @@ -579,20 +593,15 @@ public interface FeatureFlags { boolean enableQuickswitchDesktopSplitBugfix(); - boolean enableRejectHomeTransition(); - - boolean enableRequestFullscreenBugfix(); - boolean enableRequestFullscreenRefactor(); - - boolean enableResizingMetrics(); + boolean enableRestartMenuForConnectedDisplays(); @@ -600,13 +609,11 @@ public interface FeatureFlags { boolean enableRestoreToPreviousSizeFromDesktopImmersive(); - boolean enableSeeThroughTaskFragments(); - - boolean enableShellInitialBoundsRegressionBugFix(); + boolean enableSizeCompatModeImprovementsForConnectedDisplays(); @@ -614,12 +621,6 @@ public interface FeatureFlags { boolean enableStartLaunchTransitionFromTaskbarBugfix(); - boolean enableSysDecorsCallbacksViaWm(); - - - boolean enableTallAppHeaders(); - - boolean enableTaskResizingKeyboardShortcuts(); @@ -628,6 +629,7 @@ public interface FeatureFlags { boolean enableTaskStackObserverInShell(); + boolean enableTaskbarConnectedDisplays(); @@ -635,9 +637,6 @@ public interface FeatureFlags { boolean enableTaskbarOverflow(); - boolean enableTaskbarRecentTasksThrottleBugfix(); - - boolean enableTaskbarRecentsLayoutTransition(); @@ -646,6 +645,7 @@ public interface FeatureFlags { boolean enableThemedAppHeaders(); + boolean enableTileResizing(); @@ -653,27 +653,14 @@ public interface FeatureFlags { boolean enableTopVisibleRootTaskPerUserTracking(); - boolean enableTransitionOnActivitySetRequestedOrientation(); - - boolean enableVisualIndicatorInTransitionBugfix(); - boolean enableWindowContextOverrideType(); - - - boolean enableWindowContextResourcesUpdateOnConfigChange(); - boolean enableWindowDecorationRefactor(); - - - boolean enableWindowRepositioningApi(); - - boolean enableWindowingDynamicInitialBounds(); @@ -686,8 +673,6 @@ public interface FeatureFlags { boolean enableWindowingScaledResizing(); - boolean enableWindowingTaskStackOrderBugfix(); - boolean enableWindowingTransitionHandlersObservers(); @@ -696,9 +681,19 @@ public interface FeatureFlags { boolean enforceEdgeToEdge(); + boolean ensureKeyguardDoesTransitionStarting(); + + boolean ensureWallpaperInTransitions(); + + + + boolean ensureWallpaperInWearTransitions(); + + + boolean enterDesktopByDefaultOnFreeformDisplays(); @@ -706,51 +701,35 @@ public interface FeatureFlags { boolean excludeCaptionFromAppBounds(); - boolean excludeDeskRootsFromDesktopTasks(); - - boolean excludeNonMainWindowFromSnapshot(); + boolean excludeDrawingAppThemeSnapshotFromLock(); boolean excludeTaskFromRecents(); - boolean extendingPersistenceSnapshotQueueDepth(); - - - boolean fallbackToFocusedDisplay(); - boolean fifoPriorityForMajorUiProcesses(); - boolean fixFullscreenInMultiWindow(); - - boolean fixHideOverlayApi(); - boolean fixLayoutRestoredTask(); + + boolean fixLayoutExistingTask(); - boolean fixMovingUnfocusedTask(); + boolean fixViewRootCallTrace(); - boolean fixSetAdjacentTaskFragmentsWithParams(); - - - boolean fixShowWhenLockedSyncTimeout(); boolean forceCloseTopTransparentFullscreenTask(); - boolean forceShowSystemBarForBubble(); - - boolean formFactorBasedDesktopFirstSwitch(); @@ -758,13 +737,11 @@ public interface FeatureFlags { boolean getDimmerOnClosing(); - boolean grantManageKeyGesturesToRecents(); - - boolean ignoreAspectRatioRestrictionsForResizeableFreeformActivities(); + boolean ignoreCornerRadiusAndShadows(); @@ -781,16 +758,22 @@ public interface FeatureFlags { - boolean interceptMotionFromMoveToCancel(); - - - boolean jankApi(); + + boolean keepAppWindowHideWhileLocked(); + + + boolean keyboardShortcutsToSwitchDesks(); + + boolean keyguardGoingAwayTimeout(); + + + boolean letterboxBackgroundWallpaper(); @@ -798,6 +781,7 @@ public interface FeatureFlags { boolean movableCutoutConfiguration(); + boolean moveToExternalDisplayShortcut(); @@ -805,19 +789,30 @@ public interface FeatureFlags { boolean multiCrop(); + boolean navBarTransparentByDefault(); - boolean nestedTasksWithIndependentBoundsBugfix(); + boolean nestedTasksWithIndependentBounds(); + + + + boolean noConsecutiveVisibilityEvents(); + + + + boolean noDuplicateSurfaceDestroyedEvents(); + + + + boolean noVisibilityEventOnDisplayStateChange(); boolean offloadColorExtraction(); - boolean parallelCdTransitionsDuringRecents(); - boolean portWindowSizeAnimation(); @@ -846,19 +841,35 @@ public interface FeatureFlags { boolean predictiveBackTimestampApi(); - boolean preserveRecentsTaskConfigurationOnRelaunch(); + + boolean processPriorityPolicyForMultiWindowMode(); boolean rearDisplayDisableForceDesktopSystemDecorations(); + + boolean recordTaskSnapshotsBeforeShutdown(); + + + boolean reduceChangedExclusionRectsMsgs(); + + boolean reduceKeyguardTransitions(); + + + boolean reduceTaskSnapshotMemoryUsage(); + + boolean reduceUnnecessaryMeasure(); + + + boolean relativeInsets(); @@ -867,36 +878,27 @@ public interface FeatureFlags { - boolean releaseSurfaceOnTransitionFinish(); + boolean releaseUserAspectRatioWm(); + boolean removeActivityStarterDreamCallback(); + boolean removeDeferHidingClient(); + + + boolean removeDepartTargetFromMotion(); - boolean removeStartingInTransition(); - - - - boolean reparentToDefaultWithDisplayRemoval(); - - - boolean reparentWindowTokenApi(); - boolean respectFullscreenActivityOptionInDesktopLaunchParams(); - - - boolean respectHierarchySurfaceVisibility(); - - - boolean respectLeafTaskBounds(); + boolean respectNonTopVisibleFixedOrientation(); @@ -904,15 +906,6 @@ public interface FeatureFlags { - boolean restoreUserAspectRatioSettingsUsingService(); - - - boolean restrictFreeformHiddenSystemBarsToFillingTasks(); - - - boolean rootTaskForBubble(); - - boolean safeRegionLetterboxing(); @@ -924,29 +917,27 @@ public interface FeatureFlags { boolean schedulingForNotificationShade(); + boolean scrambleSnapshotFileName(); - boolean screenBrightnessDimOnEmulator(); - - boolean screenRecordingCallbacks(); + boolean scrollingFromLetterbox(); - boolean scvhSurfaceControlLifetimeFix(); - - boolean sdkDesiredPresentTime(); + boolean setScPropertiesInClient(); + boolean showAppHandleLargeScreens(); @@ -958,6 +949,7 @@ public interface FeatureFlags { boolean showDesktopWindowingDevOption(); + boolean showHomeBehindDesktop(); @@ -965,15 +957,12 @@ public interface FeatureFlags { boolean skipCompatUiEducationInDesktopMode(); - boolean skipDeactivationOfDeskWithNothingInFront(); - - boolean skipDecorViewRelayoutWhenClosingBugfix(); - boolean splashScreenViewSyncTransaction(); + boolean supportWidgetIntentsOnConnectedDisplay(); @@ -1001,18 +990,25 @@ public interface FeatureFlags { + boolean taskFragmentSystemOrganizerFlag(); + + + boolean touchPassThroughOptIn(); + + boolean trackSystemUiContextBeforeWms(); + + + boolean transitReadyTracking(); + boolean transitTrackerPlumbing(); - boolean transitionHandlerCujTags(); - - boolean trustedPresentationListenerForWindow(); @@ -1021,13 +1017,11 @@ public interface FeatureFlags { boolean unifyBackNavigationTransition(); - boolean unifyShellBinders(); - - boolean universalResizableByDefault(); + boolean untrustedEmbeddingAnyAppPermission(); @@ -1035,25 +1029,31 @@ public interface FeatureFlags { boolean untrustedEmbeddingStateSharing(); + boolean updateDimsWhenWindowShown(); - boolean updateHostInputTransferToken(); - - - boolean updateTaskMinDimensionsWithRootActivity(); - - - boolean useCachedInsetsForDisplaySwitch(); + boolean useRtFrameCallbackForSplashScreenTransfer(); + + + boolean useTasksDimOnly(); + boolean useVisibleRequestedForProcessTracker(); + + + + boolean useWindowOriginalTouchableRegionWhenMagnificationRecomputeBounds(); + + + boolean vdmForceAppUniversalResizableApi(); diff --git a/flags/src/com/android/window/flags2/FeatureFlagsImpl.java b/flags/src/com/android/window/flags2/FeatureFlagsImpl.java index 69d0017591..142a639298 100644 --- a/flags/src/com/android/window/flags2/FeatureFlagsImpl.java +++ b/flags/src/com/android/window/flags2/FeatureFlagsImpl.java @@ -1,11 +1,18 @@ package com.android.window.flags2; - +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public final class FeatureFlagsImpl implements FeatureFlags { @Override public boolean actionModeEdgeToEdge() { + return false; + } + + @Override + + + public boolean activityEmbeddingAnimationCustomizationFlag() { return true; } @@ -47,6 +54,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean allowHideScmButton() { + return true; + } + + @Override + + public boolean allowsScreenSizeDecoupledFromStatusBarAndCutout() { return true; } @@ -61,13 +75,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean alwaysSeqIdLayout() { - return false; - } - - @Override - - public boolean alwaysUpdateWallpaperPermission() { return true; } @@ -103,13 +110,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean appCompatRefactoringRoundedCorners() { - return false; - } - - @Override - - public boolean appCompatUiFramework() { return false; } @@ -139,7 +139,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean backupAndRestoreForUserAspectRatioSettings() { - return true; + return false; } @Override @@ -166,14 +166,21 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean balCoverIntentSender() { - return false; + public boolean balDontBringExistingBackgroundTaskStackToFg() { + return true; } @Override - public boolean balDontBringExistingBackgroundTaskStackToFg() { + public boolean balImproveRealCallerVisibilityCheck() { + return true; + } + + @Override + + + public boolean balImprovedMetrics() { return true; } @@ -187,6 +194,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean balRequireOptInByPendingIntentCreator() { + return true; + } + + @Override + + public boolean balRespectAppSwitchStateWhenCheckBoundByForegroundUid() { return true; } @@ -229,6 +243,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean cacheWindowStyle() { + return true; + } + + @Override + + public boolean cameraCompatForFreeform() { return false; } @@ -243,6 +264,27 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean checkDisabledSnapshotsInTaskPersister() { + return true; + } + + @Override + + + public boolean cleanupDispatchPendingTransactionsRemoteException() { + return false; + } + + @Override + + + public boolean clearSystemVibrator() { + return true; + } + + @Override + + public boolean closeToSquareConfigIncludesStatusBar() { return false; } @@ -250,6 +292,20 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean condenseConfigurationChangeForSimpleMode() { + return true; + } + + @Override + + + public boolean configurableFontScaleDefault() { + return true; + } + + @Override + + public boolean coverDisplayOptIn() { return true; } @@ -257,14 +313,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean currentAnimatorScaleUsesSharedMemory() { - return false; + public boolean delayNotificationToMagnificationWhenRecentsWindowToFrontTransition() { + return true; } @Override - public boolean defaultDeskWithoutWarmupMigration() { + public boolean delegateBackGestureToShell() { return false; } @@ -278,6 +334,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean deleteCaptureDisplay() { + return true; + } + + @Override + + public boolean density390Api() { return true; } @@ -306,13 +369,27 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean dispatchFirstKeyguardLockedState() { + public boolean doNotCheckIntersectionWhenNonMagnifiableWindowTransitions() { + return false; + } + + @Override + + + public boolean earlyLaunchHint() { return true; } @Override + public boolean edgeToEdgeByDefault() { + return false; + } + + @Override + + public boolean enableAccessibleCustomHeaders() { return true; } @@ -327,13 +404,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableAppHandlePositionReporting() { - return false; - } - - @Override - - public boolean enableAppHeaderWithTaskDensity() { return true; } @@ -341,13 +411,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableBlockNonDesktopDisplayWindowDragBugfix() { - return false; - } - - @Override - - public boolean enableBorderSettings() { return false; } @@ -355,8 +418,8 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableBoxShadowSettings() { - return false; + public boolean enableBufferTransformHintFromDisplay() { + return true; } @Override @@ -369,13 +432,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableCameraCompatCheckDeviceRotationBugfix() { - return false; - } - - @Override - - public boolean enableCameraCompatForDesktopWindowing() { return true; } @@ -432,13 +488,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableCloseLidInteraction() { - return false; - } - - @Override - - public boolean enableCompatUiVisibilityStatus() { return true; } @@ -481,13 +530,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableDesktopAppHeaderStateChangeAnnouncements() { - return false; - } - - @Override - - public boolean enableDesktopAppLaunchAlttabTransitions() { return false; } @@ -502,13 +544,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableDesktopAppLaunchBugfix() { - return false; - } - - @Override - - public boolean enableDesktopAppLaunchTransitions() { return false; } @@ -537,34 +572,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableDesktopFirstBasedDefaultToDesktopBugfix() { - return false; - } - - @Override - - - public boolean enableDesktopFirstBasedDragToMaximize() { - return false; - } - - @Override - - - public boolean enableDesktopFirstFullscreenRefocusBugfix() { - return false; - } - - @Override - - - public boolean enableDesktopFirstListener() { - return false; - } - - @Override - - public boolean enableDesktopImeBugfix() { return false; } @@ -607,7 +614,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableDesktopSplitscreenTransitionBugfix() { + public boolean enableDesktopSwipeBackMinimizeAnimationBugfix() { return false; } @@ -621,13 +628,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableDesktopTabTearingLaunchAnimation() { - return false; - } - - @Override - - public boolean enableDesktopTabTearingMinimizeAnimationBugfix() { return true; } @@ -635,13 +635,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableDesktopTaskLimitSeparateTransition() { - return false; - } - - @Override - - public boolean enableDesktopTaskbarOnFreeformDisplays() { return false; } @@ -782,13 +775,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableDesktopWindowingPipInOverviewBugfix() { - return false; - } - - @Override - - public boolean enableDesktopWindowingQuickSwitch() { return true; } @@ -846,13 +832,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean enableDeviceStateAutoRotateSettingRefactor() { - return true; - } - - @Override - - - public boolean enableDisplayCompatMode() { return false; } @@ -908,13 +887,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableDraggingPipAcrossDisplays() { - return false; - } - - @Override - - public boolean enableDynamicRadiusComputationBugfix() { return false; } @@ -922,34 +894,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableEmptyDeskOnMinimize() { - return false; - } - - @Override - - - public boolean enableExperimentalBubblesController() { - return false; - } - - @Override - - - public boolean enableFreeformBoxShadows() { - return false; - } - - @Override - - - public boolean enableFreeformDisplayLaunchParams() { - return false; - } - - @Override - - public boolean enableFullScreenWindowOnRemovingSplitScreenStageBugfix() { return true; } @@ -957,13 +901,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableFullscreenWindowControls() { - return false; - } - - @Override - - public boolean enableFullyImmersiveInDesktop() { return true; } @@ -978,13 +915,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableHandlersDebuggingMode() { - return false; - } - - @Override - - public boolean enableHoldToDragAppHandle() { return true; } @@ -992,20 +922,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableIndependentBackInProjected() { - return false; - } - - @Override - - - public boolean enableInorderTransitionCallbacksForDesktop() { - return false; - } - - @Override - - public boolean enableInputLayerTransitionFix() { return true; } @@ -1013,13 +929,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableKeyGestureHandlerForSysui() { - return false; - } - - @Override - - public boolean enableMinimizeButton() { return true; } @@ -1034,13 +943,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableModalsFullscreenWithPlatformSignature() { - return true; - } - - @Override - - public boolean enableMoveToNextDisplayShortcut() { return false; } @@ -1069,13 +971,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableMultipleDesktopsDefaultActivationInDesktopFirstDisplays() { - return false; - } - - @Override - - public boolean enableMultipleDesktopsFrontend() { return false; } @@ -1083,13 +978,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableNoWindowDecorationForDesks() { - return true; - } - - @Override - - public boolean enableNonDefaultDisplaySplit() { return false; } @@ -1097,13 +985,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableOmitAccelerometerRotationRestore() { - return true; - } - - @Override - - public boolean enableOpaqueBackgroundForTransparentWindows() { return true; } @@ -1111,13 +992,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableOverflowButtonForTaskbarPinnedItems() { - return false; - } - - @Override - - public boolean enablePerDisplayDesktopWallpaperActivity() { return false; } @@ -1126,20 +1000,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean enablePerDisplayPackageContextCacheInStatusbarNotif() { - return true; - } - - @Override - - - public boolean enablePersistingDisplaySizeForConnectedDisplays() { return false; } @Override - public boolean enablePinningAppWithContextMenu() { + public boolean enablePersistingDisplaySizeForConnectedDisplays() { return false; } @@ -1167,13 +1034,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableRejectHomeTransition() { - return false; - } - - @Override - - public boolean enableRequestFullscreenBugfix() { return true; } @@ -1181,13 +1041,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableRequestFullscreenRefactor() { - return false; - } - - @Override - - public boolean enableResizingMetrics() { return true; } @@ -1209,13 +1062,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableSeeThroughTaskFragments() { - return false; - } - - @Override - - public boolean enableShellInitialBoundsRegressionBugFix() { return true; } @@ -1237,20 +1083,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableSysDecorsCallbacksViaWm() { - return false; - } - - @Override - - - public boolean enableTallAppHeaders() { - return false; - } - - @Override - - public boolean enableTaskResizingKeyboardShortcuts() { return true; } @@ -1273,13 +1105,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean enableTaskbarOverflow() { - return true; - } - - @Override - - - public boolean enableTaskbarRecentTasksThrottleBugfix() { return false; } @@ -1314,13 +1139,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableTransitionOnActivitySetRequestedOrientation() { - return false; - } - - @Override - - public boolean enableVisualIndicatorInTransitionBugfix() { return true; } @@ -1328,13 +1146,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableWindowContextOverrideType() { - return true; - } - - @Override - - public boolean enableWindowContextResourcesUpdateOnConfigChange() { return true; } @@ -1342,20 +1153,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableWindowDecorationRefactor() { - return false; - } - - @Override - - - public boolean enableWindowRepositioningApi() { - return false; - } - - @Override - - public boolean enableWindowingDynamicInitialBounds() { return true; } @@ -1377,13 +1174,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableWindowingTaskStackOrderBugfix() { - return false; - } - - @Override - - public boolean enableWindowingTransitionHandlersObservers() { return false; } @@ -1405,6 +1195,20 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean ensureWallpaperInTransitions() { + return true; + } + + @Override + + + public boolean ensureWallpaperInWearTransitions() { + return true; + } + + @Override + + public boolean enterDesktopByDefaultOnFreeformDisplays() { return false; } @@ -1419,35 +1223,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean excludeDeskRootsFromDesktopTasks() { - return false; - } - - @Override - - - public boolean excludeNonMainWindowFromSnapshot() { - return false; - } - - @Override - - - public boolean excludeTaskFromRecents() { + public boolean excludeDrawingAppThemeSnapshotFromLock() { return true; } @Override - public boolean extendingPersistenceSnapshotQueueDepth() { - return false; - } - - @Override - - - public boolean fallbackToFocusedDisplay() { + public boolean excludeTaskFromRecents() { return false; } @@ -1461,13 +1244,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean fixFullscreenInMultiWindow() { - return false; - } - - @Override - - public boolean fixHideOverlayApi() { return true; } @@ -1475,28 +1251,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean fixLayoutRestoredTask() { - return false; + public boolean fixLayoutExistingTask() { + return true; } @Override - public boolean fixMovingUnfocusedTask() { - return false; - } - - @Override - - - public boolean fixSetAdjacentTaskFragmentsWithParams() { - return false; - } - - @Override - - - public boolean fixShowWhenLockedSyncTimeout() { + public boolean fixViewRootCallTrace() { return false; } @@ -1510,13 +1272,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean forceShowSystemBarForBubble() { - return true; - } - - @Override - - public boolean formFactorBasedDesktopFirstSwitch() { return false; } @@ -1531,13 +1286,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean grantManageKeyGesturesToRecents() { - return false; - } - - @Override - - public boolean ignoreAspectRatioRestrictionsForResizeableFreeformActivities() { return true; } @@ -1573,14 +1321,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean interceptMotionFromMoveToCancel() { + public boolean jankApi() { return true; } @Override - public boolean jankApi() { + public boolean keepAppWindowHideWhileLocked() { return true; } @@ -1594,6 +1342,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean keyguardGoingAwayTimeout() { + return true; + } + + @Override + + public boolean letterboxBackgroundWallpaper() { return false; } @@ -1629,7 +1384,28 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean nestedTasksWithIndependentBoundsBugfix() { + public boolean nestedTasksWithIndependentBounds() { + return false; + } + + @Override + + + public boolean noConsecutiveVisibilityEvents() { + return true; + } + + @Override + + + public boolean noDuplicateSurfaceDestroyedEvents() { + return true; + } + + @Override + + + public boolean noVisibilityEventOnDisplayStateChange() { return true; } @@ -1637,13 +1413,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean offloadColorExtraction() { - return true; - } - - @Override - - - public boolean parallelCdTransitionsDuringRecents() { return false; } @@ -1699,8 +1468,8 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean preserveRecentsTaskConfigurationOnRelaunch() { - return false; + public boolean processPriorityPolicyForMultiWindowMode() { + return true; } @Override @@ -1713,6 +1482,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean recordTaskSnapshotsBeforeShutdown() { + return true; + } + + @Override + + public boolean reduceChangedExclusionRectsMsgs() { return false; } @@ -1720,6 +1496,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean reduceKeyguardTransitions() { + return true; + } + + @Override + + public boolean reduceTaskSnapshotMemoryUsage() { return false; } @@ -1727,6 +1510,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean reduceUnnecessaryMeasure() { + return false; + } + + @Override + + public boolean relativeInsets() { return false; } @@ -1741,7 +1531,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean releaseSurfaceOnTransitionFinish() { + public boolean releaseUserAspectRatioWm() { return true; } @@ -1755,22 +1545,15 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean removeDeferHidingClient() { + return true; + } + + @Override + + public boolean removeDepartTargetFromMotion() { - return true; - } - - @Override - - - public boolean removeStartingInTransition() { - return true; - } - - @Override - - - public boolean reparentToDefaultWithDisplayRemoval() { - return true; + return false; } @Override @@ -1783,27 +1566,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean respectFullscreenActivityOptionInDesktopLaunchParams() { - return false; - } - - @Override - - - public boolean respectHierarchySurfaceVisibility() { + public boolean respectNonTopVisibleFixedOrientation() { return true; } @Override - public boolean respectLeafTaskBounds() { - return false; - } - - @Override - - public boolean respectOrientationChangeForUnresizeable() { return true; } @@ -1811,27 +1580,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean restoreUserAspectRatioSettingsUsingService() { - return true; - } - - @Override - - - public boolean restrictFreeformHiddenSystemBarsToFillingTasks() { - return false; - } - - @Override - - - public boolean rootTaskForBubble() { - return false; - } - - @Override - - public boolean safeRegionLetterboxing() { return false; } @@ -1840,7 +1588,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean safeReleaseSnapshotAggressively() { - return true; + return false; } @Override @@ -1860,13 +1608,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean screenBrightnessDimOnEmulator() { - return false; - } - - @Override - - public boolean screenRecordingCallbacks() { return true; } @@ -1881,13 +1622,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean scvhSurfaceControlLifetimeFix() { - return false; - } - - @Override - - public boolean sdkDesiredPresentTime() { return true; } @@ -1910,7 +1644,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean showDesktopExperienceDevOption() { - return true; + return false; } @Override @@ -1937,13 +1671,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean skipDeactivationOfDeskWithNothingInFront() { - return false; - } - - @Override - - public boolean skipDecorViewRelayoutWhenClosingBugfix() { return true; } @@ -1951,8 +1678,8 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean splashScreenViewSyncTransaction() { - return true; + public boolean supportWidgetIntentsOnConnectedDisplay() { + return false; } @Override @@ -1994,6 +1721,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean systemUiPostAnimationEnd() { + return false; + } + + @Override + + + public boolean taskFragmentSystemOrganizerFlag() { return true; } @@ -2007,6 +1741,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean trackSystemUiContextBeforeWms() { + return true; + } + + @Override + + public boolean transitReadyTracking() { return false; } @@ -2021,13 +1762,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean transitionHandlerCujTags() { - return false; - } - - @Override - - public boolean trustedPresentationListenerForWindow() { return true; } @@ -2042,13 +1776,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean unifyShellBinders() { - return false; - } - - @Override - - public boolean universalResizableByDefault() { return true; } @@ -2077,21 +1804,14 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean updateHostInputTransferToken() { - return true; - } - - @Override - - - public boolean updateTaskMinDimensionsWithRootActivity() { + public boolean useCachedInsetsForDisplaySwitch() { return false; } @Override - public boolean useCachedInsetsForDisplaySwitch() { + public boolean useRtFrameCallbackForSplashScreenTransfer() { return true; } @@ -2105,6 +1825,20 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean useVisibleRequestedForProcessTracker() { + return false; + } + + @Override + + + public boolean useWindowOriginalTouchableRegionWhenMagnificationRecomputeBounds() { + return false; + } + + @Override + + public boolean vdmForceAppUniversalResizableApi() { return true; } diff --git a/flags/src/com/android/window/flags2/Flags.java b/flags/src/com/android/window/flags2/Flags.java index 9fd05aed69..5ad83f821d 100644 --- a/flags/src/com/android/window/flags2/Flags.java +++ b/flags/src/com/android/window/flags2/Flags.java @@ -1,11 +1,13 @@ package com.android.window.flags2; - +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public final class Flags { /** @hide */ public static final String FLAG_ACTION_MODE_EDGE_TO_EDGE = "com.android.window.flags.action_mode_edge_to_edge"; /** @hide */ + public static final String FLAG_ACTIVITY_EMBEDDING_ANIMATION_CUSTOMIZATION_FLAG = "com.android.window.flags.activity_embedding_animation_customization_flag"; + /** @hide */ public static final String FLAG_ACTIVITY_EMBEDDING_DELAY_TASK_FRAGMENT_FINISH_FOR_ACTIVITY_LAUNCH = "com.android.window.flags.activity_embedding_delay_task_fragment_finish_for_activity_launch"; /** @hide */ public static final String FLAG_ACTIVITY_EMBEDDING_INTERACTIVE_DIVIDER_FLAG = "com.android.window.flags.activity_embedding_interactive_divider_flag"; @@ -16,12 +18,12 @@ public final class Flags { /** @hide */ public static final String FLAG_ALLOW_DISABLE_ACTIVITY_RECORD_INPUT_SINK = "com.android.window.flags.allow_disable_activity_record_input_sink"; /** @hide */ + public static final String FLAG_ALLOW_HIDE_SCM_BUTTON = "com.android.window.flags.allow_hide_scm_button"; + /** @hide */ public static final String FLAG_ALLOWS_SCREEN_SIZE_DECOUPLED_FROM_STATUS_BAR_AND_CUTOUT = "com.android.window.flags.allows_screen_size_decoupled_from_status_bar_and_cutout"; /** @hide */ public static final String FLAG_ALWAYS_DRAW_MAGNIFICATION_FULLSCREEN_BORDER = "com.android.window.flags.always_draw_magnification_fullscreen_border"; /** @hide */ - public static final String FLAG_ALWAYS_SEQ_ID_LAYOUT = "com.android.window.flags.always_seq_id_layout"; - /** @hide */ public static final String FLAG_ALWAYS_UPDATE_WALLPAPER_PERMISSION = "com.android.window.flags.always_update_wallpaper_permission"; /** @hide */ public static final String FLAG_AOD_TRANSITION = "com.android.window.flags.aod_transition"; @@ -32,8 +34,6 @@ public final class Flags { /** @hide */ public static final String FLAG_APP_COMPAT_REFACTORING = "com.android.window.flags.app_compat_refactoring"; /** @hide */ - public static final String FLAG_APP_COMPAT_REFACTORING_ROUNDED_CORNERS = "com.android.window.flags.app_compat_refactoring_rounded_corners"; - /** @hide */ public static final String FLAG_APP_COMPAT_UI_FRAMEWORK = "com.android.window.flags.app_compat_ui_framework"; /** @hide */ public static final String FLAG_APP_HANDLE_NO_RELAYOUT_ON_EXCLUSION_CHANGE = "com.android.window.flags.app_handle_no_relayout_on_exclusion_change"; @@ -50,12 +50,16 @@ public final class Flags { /** @hide */ public static final String FLAG_BAL_CLEAR_ALLOWLIST_DURATION = "com.android.window.flags.bal_clear_allowlist_duration"; /** @hide */ - public static final String FLAG_BAL_COVER_INTENT_SENDER = "com.android.window.flags.bal_cover_intent_sender"; - /** @hide */ public static final String FLAG_BAL_DONT_BRING_EXISTING_BACKGROUND_TASK_STACK_TO_FG = "com.android.window.flags.bal_dont_bring_existing_background_task_stack_to_fg"; /** @hide */ + public static final String FLAG_BAL_IMPROVE_REAL_CALLER_VISIBILITY_CHECK = "com.android.window.flags.bal_improve_real_caller_visibility_check"; + /** @hide */ + public static final String FLAG_BAL_IMPROVED_METRICS = "com.android.window.flags.bal_improved_metrics"; + /** @hide */ public static final String FLAG_BAL_REDUCE_GRACE_PERIOD = "com.android.window.flags.bal_reduce_grace_period"; /** @hide */ + public static final String FLAG_BAL_REQUIRE_OPT_IN_BY_PENDING_INTENT_CREATOR = "com.android.window.flags.bal_require_opt_in_by_pending_intent_creator"; + /** @hide */ public static final String FLAG_BAL_RESPECT_APP_SWITCH_STATE_WHEN_CHECK_BOUND_BY_FOREGROUND_UID = "com.android.window.flags.bal_respect_app_switch_state_when_check_bound_by_foreground_uid"; /** @hide */ public static final String FLAG_BAL_SEND_INTENT_WITH_OPTIONS = "com.android.window.flags.bal_send_intent_with_options"; @@ -68,20 +72,34 @@ public final class Flags { /** @hide */ public static final String FLAG_BETTER_SUPPORT_NON_MATCH_PARENT_ACTIVITY = "com.android.window.flags.better_support_non_match_parent_activity"; /** @hide */ + public static final String FLAG_CACHE_WINDOW_STYLE = "com.android.window.flags.cache_window_style"; + /** @hide */ public static final String FLAG_CAMERA_COMPAT_FOR_FREEFORM = "com.android.window.flags.camera_compat_for_freeform"; /** @hide */ public static final String FLAG_CAMERA_COMPAT_FULLSCREEN_PICK_SAME_TASK_ACTIVITY = "com.android.window.flags.camera_compat_fullscreen_pick_same_task_activity"; /** @hide */ + public static final String FLAG_CHECK_DISABLED_SNAPSHOTS_IN_TASK_PERSISTER = "com.android.window.flags.check_disabled_snapshots_in_task_persister"; + /** @hide */ + public static final String FLAG_CLEANUP_DISPATCH_PENDING_TRANSACTIONS_REMOTE_EXCEPTION = "com.android.window.flags.cleanup_dispatch_pending_transactions_remote_exception"; + /** @hide */ + public static final String FLAG_CLEAR_SYSTEM_VIBRATOR = "com.android.window.flags.clear_system_vibrator"; + /** @hide */ public static final String FLAG_CLOSE_TO_SQUARE_CONFIG_INCLUDES_STATUS_BAR = "com.android.window.flags.close_to_square_config_includes_status_bar"; /** @hide */ + public static final String FLAG_CONDENSE_CONFIGURATION_CHANGE_FOR_SIMPLE_MODE = "com.android.window.flags.condense_configuration_change_for_simple_mode"; + /** @hide */ + public static final String FLAG_CONFIGURABLE_FONT_SCALE_DEFAULT = "com.android.window.flags.configurable_font_scale_default"; + /** @hide */ public static final String FLAG_COVER_DISPLAY_OPT_IN = "com.android.window.flags.cover_display_opt_in"; /** @hide */ - public static final String FLAG_CURRENT_ANIMATOR_SCALE_USES_SHARED_MEMORY = "com.android.window.flags.current_animator_scale_uses_shared_memory"; + public static final String FLAG_DELAY_NOTIFICATION_TO_MAGNIFICATION_WHEN_RECENTS_WINDOW_TO_FRONT_TRANSITION = "com.android.window.flags.delay_notification_to_magnification_when_recents_window_to_front_transition"; /** @hide */ - public static final String FLAG_DEFAULT_DESK_WITHOUT_WARMUP_MIGRATION = "com.android.window.flags.default_desk_without_warmup_migration"; + public static final String FLAG_DELEGATE_BACK_GESTURE_TO_SHELL = "com.android.window.flags.delegate_back_gesture_to_shell"; /** @hide */ public static final String FLAG_DELEGATE_UNHANDLED_DRAGS = "com.android.window.flags.delegate_unhandled_drags"; /** @hide */ + public static final String FLAG_DELETE_CAPTURE_DISPLAY = "com.android.window.flags.delete_capture_display"; + /** @hide */ public static final String FLAG_DENSITY_390_API = "com.android.window.flags.density_390_api"; /** @hide */ public static final String FLAG_DISABLE_DESKTOP_LAUNCH_PARAMS_OUTSIDE_DESKTOP_BUG_FIX = "com.android.window.flags.disable_desktop_launch_params_outside_desktop_bug_fix"; @@ -90,26 +108,24 @@ public final class Flags { /** @hide */ public static final String FLAG_DISABLE_OPT_OUT_EDGE_TO_EDGE = "com.android.window.flags.disable_opt_out_edge_to_edge"; /** @hide */ - public static final String FLAG_DISPATCH_FIRST_KEYGUARD_LOCKED_STATE = "com.android.window.flags.dispatch_first_keyguard_locked_state"; + public static final String FLAG_DO_NOT_CHECK_INTERSECTION_WHEN_NON_MAGNIFIABLE_WINDOW_TRANSITIONS = "com.android.window.flags.do_not_check_intersection_when_non_magnifiable_window_transitions"; + /** @hide */ + public static final String FLAG_EARLY_LAUNCH_HINT = "com.android.window.flags.early_launch_hint"; + /** @hide */ + public static final String FLAG_EDGE_TO_EDGE_BY_DEFAULT = "com.android.window.flags.edge_to_edge_by_default"; /** @hide */ public static final String FLAG_ENABLE_ACCESSIBLE_CUSTOM_HEADERS = "com.android.window.flags.enable_accessible_custom_headers"; /** @hide */ public static final String FLAG_ENABLE_ACTIVITY_EMBEDDING_SUPPORT_FOR_CONNECTED_DISPLAYS = "com.android.window.flags.enable_activity_embedding_support_for_connected_displays"; /** @hide */ - public static final String FLAG_ENABLE_APP_HANDLE_POSITION_REPORTING = "com.android.window.flags.enable_app_handle_position_reporting"; - /** @hide */ public static final String FLAG_ENABLE_APP_HEADER_WITH_TASK_DENSITY = "com.android.window.flags.enable_app_header_with_task_density"; /** @hide */ - public static final String FLAG_ENABLE_BLOCK_NON_DESKTOP_DISPLAY_WINDOW_DRAG_BUGFIX = "com.android.window.flags.enable_block_non_desktop_display_window_drag_bugfix"; - /** @hide */ public static final String FLAG_ENABLE_BORDER_SETTINGS = "com.android.window.flags.enable_border_settings"; /** @hide */ - public static final String FLAG_ENABLE_BOX_SHADOW_SETTINGS = "com.android.window.flags.enable_box_shadow_settings"; + public static final String FLAG_ENABLE_BUFFER_TRANSFORM_HINT_FROM_DISPLAY = "com.android.window.flags.enable_buffer_transform_hint_from_display"; /** @hide */ public static final String FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY = "com.android.window.flags.enable_bug_fixes_for_secondary_display"; /** @hide */ - public static final String FLAG_ENABLE_CAMERA_COMPAT_CHECK_DEVICE_ROTATION_BUGFIX = "com.android.window.flags.enable_camera_compat_check_device_rotation_bugfix"; - /** @hide */ public static final String FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING = "com.android.window.flags.enable_camera_compat_for_desktop_windowing"; /** @hide */ public static final String FLAG_ENABLE_CAMERA_COMPAT_FOR_DESKTOP_WINDOWING_OPT_OUT = "com.android.window.flags.enable_camera_compat_for_desktop_windowing_opt_out"; @@ -126,8 +142,6 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_CASCADING_WINDOWS = "com.android.window.flags.enable_cascading_windows"; /** @hide */ - public static final String FLAG_ENABLE_CLOSE_LID_INTERACTION = "com.android.window.flags.enable_close_lid_interaction"; - /** @hide */ public static final String FLAG_ENABLE_COMPAT_UI_VISIBILITY_STATUS = "com.android.window.flags.enable_compat_ui_visibility_status"; /** @hide */ public static final String FLAG_ENABLE_COMPATUI_SYSUI_LAUNCHER = "com.android.window.flags.enable_compatui_sysui_launcher"; @@ -140,14 +154,10 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_DESKTOP_APP_HANDLE_ANIMATION = "com.android.window.flags.enable_desktop_app_handle_animation"; /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS = "com.android.window.flags.enable_desktop_app_header_state_change_announcements"; - /** @hide */ public static final String FLAG_ENABLE_DESKTOP_APP_LAUNCH_ALTTAB_TRANSITIONS = "com.android.window.flags.enable_desktop_app_launch_alttab_transitions"; /** @hide */ public static final String FLAG_ENABLE_DESKTOP_APP_LAUNCH_ALTTAB_TRANSITIONS_BUGFIX = "com.android.window.flags.enable_desktop_app_launch_alttab_transitions_bugfix"; /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_APP_LAUNCH_BUGFIX = "com.android.window.flags.enable_desktop_app_launch_bugfix"; - /** @hide */ public static final String FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS = "com.android.window.flags.enable_desktop_app_launch_transitions"; /** @hide */ public static final String FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX = "com.android.window.flags.enable_desktop_app_launch_transitions_bugfix"; @@ -156,14 +166,6 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_DESKTOP_CLOSE_TASK_ANIMATION_IN_DTC_BUGFIX = "com.android.window.flags.enable_desktop_close_task_animation_in_dtc_bugfix"; /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_FIRST_BASED_DEFAULT_TO_DESKTOP_BUGFIX = "com.android.window.flags.enable_desktop_first_based_default_to_desktop_bugfix"; - /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_FIRST_BASED_DRAG_TO_MAXIMIZE = "com.android.window.flags.enable_desktop_first_based_drag_to_maximize"; - /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX = "com.android.window.flags.enable_desktop_first_fullscreen_refocus_bugfix"; - /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_FIRST_LISTENER = "com.android.window.flags.enable_desktop_first_listener"; - /** @hide */ public static final String FLAG_ENABLE_DESKTOP_IME_BUGFIX = "com.android.window.flags.enable_desktop_ime_bugfix"; /** @hide */ public static final String FLAG_ENABLE_DESKTOP_IMMERSIVE_DRAG_BUGFIX = "com.android.window.flags.enable_desktop_immersive_drag_bugfix"; @@ -176,16 +178,12 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX = "com.android.window.flags.enable_desktop_recents_transitions_corners_bugfix"; /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_SPLITSCREEN_TRANSITION_BUGFIX = "com.android.window.flags.enable_desktop_splitscreen_transition_bugfix"; + public static final String FLAG_ENABLE_DESKTOP_SWIPE_BACK_MINIMIZE_ANIMATION_BUGFIX = "com.android.window.flags.enable_desktop_swipe_back_minimize_animation_bugfix"; /** @hide */ public static final String FLAG_ENABLE_DESKTOP_SYSTEM_DIALOGS_TRANSITIONS = "com.android.window.flags.enable_desktop_system_dialogs_transitions"; /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION = "com.android.window.flags.enable_desktop_tab_tearing_launch_animation"; - /** @hide */ public static final String FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX = "com.android.window.flags.enable_desktop_tab_tearing_minimize_animation_bugfix"; /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION = "com.android.window.flags.enable_desktop_task_limit_separate_transition"; - /** @hide */ public static final String FLAG_ENABLE_DESKTOP_TASKBAR_ON_FREEFORM_DISPLAYS = "com.android.window.flags.enable_desktop_taskbar_on_freeform_displays"; /** @hide */ public static final String FLAG_ENABLE_DESKTOP_TRAMPOLINE_CLOSE_ANIMATION_BUGFIX = "com.android.window.flags.enable_desktop_trampoline_close_animation_bugfix"; @@ -226,8 +224,6 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_DESKTOP_WINDOWING_PIP = "com.android.window.flags.enable_desktop_windowing_pip"; /** @hide */ - public static final String FLAG_ENABLE_DESKTOP_WINDOWING_PIP_IN_OVERVIEW_BUGFIX = "com.android.window.flags.enable_desktop_windowing_pip_in_overview_bugfix"; - /** @hide */ public static final String FLAG_ENABLE_DESKTOP_WINDOWING_QUICK_SWITCH = "com.android.window.flags.enable_desktop_windowing_quick_switch"; /** @hide */ public static final String FLAG_ENABLE_DESKTOP_WINDOWING_SCVH_CACHE_BUG_FIX = "com.android.window.flags.enable_desktop_windowing_scvh_cache_bug_fix"; @@ -246,8 +242,6 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_DEVICE_STATE_AUTO_ROTATE_SETTING_REFACTOR = "com.android.window.flags.enable_device_state_auto_rotate_setting_refactor"; /** @hide */ - public static final String FLAG_ENABLE_DISPLAY_COMPAT_MODE = "com.android.window.flags.enable_display_compat_mode"; - /** @hide */ public static final String FLAG_ENABLE_DISPLAY_DISCONNECT_INTERACTION = "com.android.window.flags.enable_display_disconnect_interaction"; /** @hide */ public static final String FLAG_ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS = "com.android.window.flags.enable_display_focus_in_shell_transitions"; @@ -262,44 +256,22 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_DRAG_TO_MAXIMIZE = "com.android.window.flags.enable_drag_to_maximize"; /** @hide */ - public static final String FLAG_ENABLE_DRAGGING_PIP_ACROSS_DISPLAYS = "com.android.window.flags.enable_dragging_pip_across_displays"; - /** @hide */ public static final String FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX = "com.android.window.flags.enable_dynamic_radius_computation_bugfix"; /** @hide */ - public static final String FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE = "com.android.window.flags.enable_empty_desk_on_minimize"; - /** @hide */ - public static final String FLAG_ENABLE_EXPERIMENTAL_BUBBLES_CONTROLLER = "com.android.window.flags.enable_experimental_bubbles_controller"; - /** @hide */ - public static final String FLAG_ENABLE_FREEFORM_BOX_SHADOWS = "com.android.window.flags.enable_freeform_box_shadows"; - /** @hide */ - public static final String FLAG_ENABLE_FREEFORM_DISPLAY_LAUNCH_PARAMS = "com.android.window.flags.enable_freeform_display_launch_params"; - /** @hide */ public static final String FLAG_ENABLE_FULL_SCREEN_WINDOW_ON_REMOVING_SPLIT_SCREEN_STAGE_BUGFIX = "com.android.window.flags.enable_full_screen_window_on_removing_split_screen_stage_bugfix"; /** @hide */ - public static final String FLAG_ENABLE_FULLSCREEN_WINDOW_CONTROLS = "com.android.window.flags.enable_fullscreen_window_controls"; - /** @hide */ public static final String FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP = "com.android.window.flags.enable_fully_immersive_in_desktop"; /** @hide */ public static final String FLAG_ENABLE_HANDLE_INPUT_FIX = "com.android.window.flags.enable_handle_input_fix"; /** @hide */ - public static final String FLAG_ENABLE_HANDLERS_DEBUGGING_MODE = "com.android.window.flags.enable_handlers_debugging_mode"; - /** @hide */ public static final String FLAG_ENABLE_HOLD_TO_DRAG_APP_HANDLE = "com.android.window.flags.enable_hold_to_drag_app_handle"; /** @hide */ - public static final String FLAG_ENABLE_INDEPENDENT_BACK_IN_PROJECTED = "com.android.window.flags.enable_independent_back_in_projected"; - /** @hide */ - public static final String FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP = "com.android.window.flags.enable_inorder_transition_callbacks_for_desktop"; - /** @hide */ public static final String FLAG_ENABLE_INPUT_LAYER_TRANSITION_FIX = "com.android.window.flags.enable_input_layer_transition_fix"; /** @hide */ - public static final String FLAG_ENABLE_KEY_GESTURE_HANDLER_FOR_SYSUI = "com.android.window.flags.enable_key_gesture_handler_for_sysui"; - /** @hide */ public static final String FLAG_ENABLE_MINIMIZE_BUTTON = "com.android.window.flags.enable_minimize_button"; /** @hide */ public static final String FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION = "com.android.window.flags.enable_modals_fullscreen_with_permission"; /** @hide */ - public static final String FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE = "com.android.window.flags.enable_modals_fullscreen_with_platform_signature"; - /** @hide */ public static final String FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT = "com.android.window.flags.enable_move_to_next_display_shortcut"; /** @hide */ public static final String FLAG_ENABLE_MULTI_DISPLAY_SPLIT = "com.android.window.flags.enable_multi_display_split"; @@ -308,58 +280,38 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND = "com.android.window.flags.enable_multiple_desktops_backend"; /** @hide */ - public static final String FLAG_ENABLE_MULTIPLE_DESKTOPS_DEFAULT_ACTIVATION_IN_DESKTOP_FIRST_DISPLAYS = "com.android.window.flags.enable_multiple_desktops_default_activation_in_desktop_first_displays"; - /** @hide */ public static final String FLAG_ENABLE_MULTIPLE_DESKTOPS_FRONTEND = "com.android.window.flags.enable_multiple_desktops_frontend"; /** @hide */ - public static final String FLAG_ENABLE_NO_WINDOW_DECORATION_FOR_DESKS = "com.android.window.flags.enable_no_window_decoration_for_desks"; - /** @hide */ public static final String FLAG_ENABLE_NON_DEFAULT_DISPLAY_SPLIT = "com.android.window.flags.enable_non_default_display_split"; /** @hide */ - public static final String FLAG_ENABLE_OMIT_ACCELEROMETER_ROTATION_RESTORE = "com.android.window.flags.enable_omit_accelerometer_rotation_restore"; - /** @hide */ public static final String FLAG_ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS = "com.android.window.flags.enable_opaque_background_for_transparent_windows"; /** @hide */ - public static final String FLAG_ENABLE_OVERFLOW_BUTTON_FOR_TASKBAR_PINNED_ITEMS = "com.android.window.flags.enable_overflow_button_for_taskbar_pinned_items"; - /** @hide */ public static final String FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY = "com.android.window.flags.enable_per_display_desktop_wallpaper_activity"; /** @hide */ public static final String FLAG_ENABLE_PER_DISPLAY_PACKAGE_CONTEXT_CACHE_IN_STATUSBAR_NOTIF = "com.android.window.flags.enable_per_display_package_context_cache_in_statusbar_notif"; /** @hide */ public static final String FLAG_ENABLE_PERSISTING_DISPLAY_SIZE_FOR_CONNECTED_DISPLAYS = "com.android.window.flags.enable_persisting_display_size_for_connected_displays"; /** @hide */ - public static final String FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU = "com.android.window.flags.enable_pinning_app_with_context_menu"; - /** @hide */ public static final String FLAG_ENABLE_PRESENTATION_FOR_CONNECTED_DISPLAYS = "com.android.window.flags.enable_presentation_for_connected_displays"; /** @hide */ public static final String FLAG_ENABLE_PROJECTED_DISPLAY_DESKTOP_MODE = "com.android.window.flags.enable_projected_display_desktop_mode"; /** @hide */ public static final String FLAG_ENABLE_QUICKSWITCH_DESKTOP_SPLIT_BUGFIX = "com.android.window.flags.enable_quickswitch_desktop_split_bugfix"; /** @hide */ - public static final String FLAG_ENABLE_REJECT_HOME_TRANSITION = "com.android.window.flags.enable_reject_home_transition"; - /** @hide */ public static final String FLAG_ENABLE_REQUEST_FULLSCREEN_BUGFIX = "com.android.window.flags.enable_request_fullscreen_bugfix"; /** @hide */ - public static final String FLAG_ENABLE_REQUEST_FULLSCREEN_REFACTOR = "com.android.window.flags.enable_request_fullscreen_refactor"; - /** @hide */ public static final String FLAG_ENABLE_RESIZING_METRICS = "com.android.window.flags.enable_resizing_metrics"; /** @hide */ public static final String FLAG_ENABLE_RESTART_MENU_FOR_CONNECTED_DISPLAYS = "com.android.window.flags.enable_restart_menu_for_connected_displays"; /** @hide */ public static final String FLAG_ENABLE_RESTORE_TO_PREVIOUS_SIZE_FROM_DESKTOP_IMMERSIVE = "com.android.window.flags.enable_restore_to_previous_size_from_desktop_immersive"; /** @hide */ - public static final String FLAG_ENABLE_SEE_THROUGH_TASK_FRAGMENTS = "com.android.window.flags.enable_see_through_task_fragments"; - /** @hide */ public static final String FLAG_ENABLE_SHELL_INITIAL_BOUNDS_REGRESSION_BUG_FIX = "com.android.window.flags.enable_shell_initial_bounds_regression_bug_fix"; /** @hide */ public static final String FLAG_ENABLE_SIZE_COMPAT_MODE_IMPROVEMENTS_FOR_CONNECTED_DISPLAYS = "com.android.window.flags.enable_size_compat_mode_improvements_for_connected_displays"; /** @hide */ public static final String FLAG_ENABLE_START_LAUNCH_TRANSITION_FROM_TASKBAR_BUGFIX = "com.android.window.flags.enable_start_launch_transition_from_taskbar_bugfix"; /** @hide */ - public static final String FLAG_ENABLE_SYS_DECORS_CALLBACKS_VIA_WM = "com.android.window.flags.enable_sys_decors_callbacks_via_wm"; - /** @hide */ - public static final String FLAG_ENABLE_TALL_APP_HEADERS = "com.android.window.flags.enable_tall_app_headers"; - /** @hide */ public static final String FLAG_ENABLE_TASK_RESIZING_KEYBOARD_SHORTCUTS = "com.android.window.flags.enable_task_resizing_keyboard_shortcuts"; /** @hide */ public static final String FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL = "com.android.window.flags.enable_task_stack_observer_in_shell"; @@ -368,8 +320,6 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_TASKBAR_OVERFLOW = "com.android.window.flags.enable_taskbar_overflow"; /** @hide */ - public static final String FLAG_ENABLE_TASKBAR_RECENT_TASKS_THROTTLE_BUGFIX = "com.android.window.flags.enable_taskbar_recent_tasks_throttle_bugfix"; - /** @hide */ public static final String FLAG_ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION = "com.android.window.flags.enable_taskbar_recents_layout_transition"; /** @hide */ public static final String FLAG_ENABLE_THEMED_APP_HEADERS = "com.android.window.flags.enable_themed_app_headers"; @@ -378,70 +328,48 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_TOP_VISIBLE_ROOT_TASK_PER_USER_TRACKING = "com.android.window.flags.enable_top_visible_root_task_per_user_tracking"; /** @hide */ - public static final String FLAG_ENABLE_TRANSITION_ON_ACTIVITY_SET_REQUESTED_ORIENTATION = "com.android.window.flags.enable_transition_on_activity_set_requested_orientation"; - /** @hide */ public static final String FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX = "com.android.window.flags.enable_visual_indicator_in_transition_bugfix"; /** @hide */ - public static final String FLAG_ENABLE_WINDOW_CONTEXT_OVERRIDE_TYPE = "com.android.window.flags.enable_window_context_override_type"; - /** @hide */ public static final String FLAG_ENABLE_WINDOW_CONTEXT_RESOURCES_UPDATE_ON_CONFIG_CHANGE = "com.android.window.flags.enable_window_context_resources_update_on_config_change"; /** @hide */ - public static final String FLAG_ENABLE_WINDOW_DECORATION_REFACTOR = "com.android.window.flags.enable_window_decoration_refactor"; - /** @hide */ - public static final String FLAG_ENABLE_WINDOW_REPOSITIONING_API = "com.android.window.flags.enable_window_repositioning_api"; - /** @hide */ public static final String FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS = "com.android.window.flags.enable_windowing_dynamic_initial_bounds"; /** @hide */ public static final String FLAG_ENABLE_WINDOWING_EDGE_DRAG_RESIZE = "com.android.window.flags.enable_windowing_edge_drag_resize"; /** @hide */ public static final String FLAG_ENABLE_WINDOWING_SCALED_RESIZING = "com.android.window.flags.enable_windowing_scaled_resizing"; /** @hide */ - public static final String FLAG_ENABLE_WINDOWING_TASK_STACK_ORDER_BUGFIX = "com.android.window.flags.enable_windowing_task_stack_order_bugfix"; - /** @hide */ public static final String FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS = "com.android.window.flags.enable_windowing_transition_handlers_observers"; /** @hide */ public static final String FLAG_ENFORCE_EDGE_TO_EDGE = "com.android.window.flags.enforce_edge_to_edge"; /** @hide */ public static final String FLAG_ENSURE_KEYGUARD_DOES_TRANSITION_STARTING = "com.android.window.flags.ensure_keyguard_does_transition_starting"; /** @hide */ + public static final String FLAG_ENSURE_WALLPAPER_IN_TRANSITIONS = "com.android.window.flags.ensure_wallpaper_in_transitions"; + /** @hide */ + public static final String FLAG_ENSURE_WALLPAPER_IN_WEAR_TRANSITIONS = "com.android.window.flags.ensure_wallpaper_in_wear_transitions"; + /** @hide */ public static final String FLAG_ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS = "com.android.window.flags.enter_desktop_by_default_on_freeform_displays"; /** @hide */ public static final String FLAG_EXCLUDE_CAPTION_FROM_APP_BOUNDS = "com.android.window.flags.exclude_caption_from_app_bounds"; /** @hide */ - public static final String FLAG_EXCLUDE_DESK_ROOTS_FROM_DESKTOP_TASKS = "com.android.window.flags.exclude_desk_roots_from_desktop_tasks"; - /** @hide */ - public static final String FLAG_EXCLUDE_NON_MAIN_WINDOW_FROM_SNAPSHOT = "com.android.window.flags.exclude_non_main_window_from_snapshot"; + public static final String FLAG_EXCLUDE_DRAWING_APP_THEME_SNAPSHOT_FROM_LOCK = "com.android.window.flags.exclude_drawing_app_theme_snapshot_from_lock"; /** @hide */ public static final String FLAG_EXCLUDE_TASK_FROM_RECENTS = "com.android.window.flags.exclude_task_from_recents"; /** @hide */ - public static final String FLAG_EXTENDING_PERSISTENCE_SNAPSHOT_QUEUE_DEPTH = "com.android.window.flags.extending_persistence_snapshot_queue_depth"; - /** @hide */ - public static final String FLAG_FALLBACK_TO_FOCUSED_DISPLAY = "com.android.window.flags.fallback_to_focused_display"; - /** @hide */ public static final String FLAG_FIFO_PRIORITY_FOR_MAJOR_UI_PROCESSES = "com.android.window.flags.fifo_priority_for_major_ui_processes"; /** @hide */ - public static final String FLAG_FIX_FULLSCREEN_IN_MULTI_WINDOW = "com.android.window.flags.fix_fullscreen_in_multi_window"; - /** @hide */ public static final String FLAG_FIX_HIDE_OVERLAY_API = "com.android.window.flags.fix_hide_overlay_api"; /** @hide */ - public static final String FLAG_FIX_LAYOUT_RESTORED_TASK = "com.android.window.flags.fix_layout_restored_task"; + public static final String FLAG_FIX_LAYOUT_EXISTING_TASK = "com.android.window.flags.fix_layout_existing_task"; /** @hide */ - public static final String FLAG_FIX_MOVING_UNFOCUSED_TASK = "com.android.window.flags.fix_moving_unfocused_task"; - /** @hide */ - public static final String FLAG_FIX_SET_ADJACENT_TASK_FRAGMENTS_WITH_PARAMS = "com.android.window.flags.fix_set_adjacent_task_fragments_with_params"; - /** @hide */ - public static final String FLAG_FIX_SHOW_WHEN_LOCKED_SYNC_TIMEOUT = "com.android.window.flags.fix_show_when_locked_sync_timeout"; + public static final String FLAG_FIX_VIEW_ROOT_CALL_TRACE = "com.android.window.flags.fix_view_root_call_trace"; /** @hide */ public static final String FLAG_FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK = "com.android.window.flags.force_close_top_transparent_fullscreen_task"; /** @hide */ - public static final String FLAG_FORCE_SHOW_SYSTEM_BAR_FOR_BUBBLE = "com.android.window.flags.force_show_system_bar_for_bubble"; - /** @hide */ public static final String FLAG_FORM_FACTOR_BASED_DESKTOP_FIRST_SWITCH = "com.android.window.flags.form_factor_based_desktop_first_switch"; /** @hide */ public static final String FLAG_GET_DIMMER_ON_CLOSING = "com.android.window.flags.get_dimmer_on_closing"; /** @hide */ - public static final String FLAG_GRANT_MANAGE_KEY_GESTURES_TO_RECENTS = "com.android.window.flags.grant_manage_key_gestures_to_recents"; - /** @hide */ public static final String FLAG_IGNORE_ASPECT_RATIO_RESTRICTIONS_FOR_RESIZEABLE_FREEFORM_ACTIVITIES = "com.android.window.flags.ignore_aspect_ratio_restrictions_for_resizeable_freeform_activities"; /** @hide */ public static final String FLAG_IGNORE_CORNER_RADIUS_AND_SHADOWS = "com.android.window.flags.ignore_corner_radius_and_shadows"; @@ -452,12 +380,14 @@ public final class Flags { /** @hide */ public static final String FLAG_INSETS_DECOUPLED_CONFIGURATION = "com.android.window.flags.insets_decoupled_configuration"; /** @hide */ - public static final String FLAG_INTERCEPT_MOTION_FROM_MOVE_TO_CANCEL = "com.android.window.flags.intercept_motion_from_move_to_cancel"; - /** @hide */ public static final String FLAG_JANK_API = "com.android.window.flags.jank_api"; /** @hide */ + public static final String FLAG_KEEP_APP_WINDOW_HIDE_WHILE_LOCKED = "com.android.window.flags.keep_app_window_hide_while_locked"; + /** @hide */ public static final String FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS = "com.android.window.flags.keyboard_shortcuts_to_switch_desks"; /** @hide */ + public static final String FLAG_KEYGUARD_GOING_AWAY_TIMEOUT = "com.android.window.flags.keyguard_going_away_timeout"; + /** @hide */ public static final String FLAG_LETTERBOX_BACKGROUND_WALLPAPER = "com.android.window.flags.letterbox_background_wallpaper"; /** @hide */ public static final String FLAG_MOVABLE_CUTOUT_CONFIGURATION = "com.android.window.flags.movable_cutout_configuration"; @@ -468,12 +398,16 @@ public final class Flags { /** @hide */ public static final String FLAG_NAV_BAR_TRANSPARENT_BY_DEFAULT = "com.android.window.flags.nav_bar_transparent_by_default"; /** @hide */ - public static final String FLAG_NESTED_TASKS_WITH_INDEPENDENT_BOUNDS_BUGFIX = "com.android.window.flags.nested_tasks_with_independent_bounds_bugfix"; + public static final String FLAG_NESTED_TASKS_WITH_INDEPENDENT_BOUNDS = "com.android.window.flags.nested_tasks_with_independent_bounds"; + /** @hide */ + public static final String FLAG_NO_CONSECUTIVE_VISIBILITY_EVENTS = "com.android.window.flags.no_consecutive_visibility_events"; + /** @hide */ + public static final String FLAG_NO_DUPLICATE_SURFACE_DESTROYED_EVENTS = "com.android.window.flags.no_duplicate_surface_destroyed_events"; + /** @hide */ + public static final String FLAG_NO_VISIBILITY_EVENT_ON_DISPLAY_STATE_CHANGE = "com.android.window.flags.no_visibility_event_on_display_state_change"; /** @hide */ public static final String FLAG_OFFLOAD_COLOR_EXTRACTION = "com.android.window.flags.offload_color_extraction"; /** @hide */ - public static final String FLAG_PARALLEL_CD_TRANSITIONS_DURING_RECENTS = "com.android.window.flags.parallel_cd_transitions_during_recents"; - /** @hide */ public static final String FLAG_PORT_WINDOW_SIZE_ANIMATION = "com.android.window.flags.port_window_size_animation"; /** @hide */ public static final String FLAG_PREDICTIVE_BACK_DEFAULT_ENABLE_SDK_36 = "com.android.window.flags.predictive_back_default_enable_sdk_36"; @@ -488,44 +422,38 @@ public final class Flags { /** @hide */ public static final String FLAG_PREDICTIVE_BACK_TIMESTAMP_API = "com.android.window.flags.predictive_back_timestamp_api"; /** @hide */ - public static final String FLAG_PRESERVE_RECENTS_TASK_CONFIGURATION_ON_RELAUNCH = "com.android.window.flags.preserve_recents_task_configuration_on_relaunch"; + public static final String FLAG_PROCESS_PRIORITY_POLICY_FOR_MULTI_WINDOW_MODE = "com.android.window.flags.process_priority_policy_for_multi_window_mode"; /** @hide */ public static final String FLAG_REAR_DISPLAY_DISABLE_FORCE_DESKTOP_SYSTEM_DECORATIONS = "com.android.window.flags.rear_display_disable_force_desktop_system_decorations"; /** @hide */ + public static final String FLAG_RECORD_TASK_SNAPSHOTS_BEFORE_SHUTDOWN = "com.android.window.flags.record_task_snapshots_before_shutdown"; + /** @hide */ public static final String FLAG_REDUCE_CHANGED_EXCLUSION_RECTS_MSGS = "com.android.window.flags.reduce_changed_exclusion_rects_msgs"; /** @hide */ + public static final String FLAG_REDUCE_KEYGUARD_TRANSITIONS = "com.android.window.flags.reduce_keyguard_transitions"; + /** @hide */ public static final String FLAG_REDUCE_TASK_SNAPSHOT_MEMORY_USAGE = "com.android.window.flags.reduce_task_snapshot_memory_usage"; /** @hide */ + public static final String FLAG_REDUCE_UNNECESSARY_MEASURE = "com.android.window.flags.reduce_unnecessary_measure"; + /** @hide */ public static final String FLAG_RELATIVE_INSETS = "com.android.window.flags.relative_insets"; /** @hide */ public static final String FLAG_RELEASE_SNAPSHOT_AGGRESSIVELY = "com.android.window.flags.release_snapshot_aggressively"; /** @hide */ - public static final String FLAG_RELEASE_SURFACE_ON_TRANSITION_FINISH = "com.android.window.flags.release_surface_on_transition_finish"; + public static final String FLAG_RELEASE_USER_ASPECT_RATIO_WM = "com.android.window.flags.release_user_aspect_ratio_wm"; /** @hide */ public static final String FLAG_REMOVE_ACTIVITY_STARTER_DREAM_CALLBACK = "com.android.window.flags.remove_activity_starter_dream_callback"; /** @hide */ + public static final String FLAG_REMOVE_DEFER_HIDING_CLIENT = "com.android.window.flags.remove_defer_hiding_client"; + /** @hide */ public static final String FLAG_REMOVE_DEPART_TARGET_FROM_MOTION = "com.android.window.flags.remove_depart_target_from_motion"; /** @hide */ - public static final String FLAG_REMOVE_STARTING_IN_TRANSITION = "com.android.window.flags.remove_starting_in_transition"; - /** @hide */ - public static final String FLAG_REPARENT_TO_DEFAULT_WITH_DISPLAY_REMOVAL = "com.android.window.flags.reparent_to_default_with_display_removal"; - /** @hide */ public static final String FLAG_REPARENT_WINDOW_TOKEN_API = "com.android.window.flags.reparent_window_token_api"; /** @hide */ - public static final String FLAG_RESPECT_FULLSCREEN_ACTIVITY_OPTION_IN_DESKTOP_LAUNCH_PARAMS = "com.android.window.flags.respect_fullscreen_activity_option_in_desktop_launch_params"; - /** @hide */ - public static final String FLAG_RESPECT_HIERARCHY_SURFACE_VISIBILITY = "com.android.window.flags.respect_hierarchy_surface_visibility"; - /** @hide */ - public static final String FLAG_RESPECT_LEAF_TASK_BOUNDS = "com.android.window.flags.respect_leaf_task_bounds"; + public static final String FLAG_RESPECT_NON_TOP_VISIBLE_FIXED_ORIENTATION = "com.android.window.flags.respect_non_top_visible_fixed_orientation"; /** @hide */ public static final String FLAG_RESPECT_ORIENTATION_CHANGE_FOR_UNRESIZEABLE = "com.android.window.flags.respect_orientation_change_for_unresizeable"; /** @hide */ - public static final String FLAG_RESTORE_USER_ASPECT_RATIO_SETTINGS_USING_SERVICE = "com.android.window.flags.restore_user_aspect_ratio_settings_using_service"; - /** @hide */ - public static final String FLAG_RESTRICT_FREEFORM_HIDDEN_SYSTEM_BARS_TO_FILLING_TASKS = "com.android.window.flags.restrict_freeform_hidden_system_bars_to_filling_tasks"; - /** @hide */ - public static final String FLAG_ROOT_TASK_FOR_BUBBLE = "com.android.window.flags.root_task_for_bubble"; - /** @hide */ public static final String FLAG_SAFE_REGION_LETTERBOXING = "com.android.window.flags.safe_region_letterboxing"; /** @hide */ public static final String FLAG_SAFE_RELEASE_SNAPSHOT_AGGRESSIVELY = "com.android.window.flags.safe_release_snapshot_aggressively"; @@ -534,14 +462,10 @@ public final class Flags { /** @hide */ public static final String FLAG_SCRAMBLE_SNAPSHOT_FILE_NAME = "com.android.window.flags.scramble_snapshot_file_name"; /** @hide */ - public static final String FLAG_SCREEN_BRIGHTNESS_DIM_ON_EMULATOR = "com.android.window.flags.screen_brightness_dim_on_emulator"; - /** @hide */ public static final String FLAG_SCREEN_RECORDING_CALLBACKS = "com.android.window.flags.screen_recording_callbacks"; /** @hide */ public static final String FLAG_SCROLLING_FROM_LETTERBOX = "com.android.window.flags.scrolling_from_letterbox"; /** @hide */ - public static final String FLAG_SCVH_SURFACE_CONTROL_LIFETIME_FIX = "com.android.window.flags.scvh_surface_control_lifetime_fix"; - /** @hide */ public static final String FLAG_SDK_DESIRED_PRESENT_TIME = "com.android.window.flags.sdk_desired_present_time"; /** @hide */ public static final String FLAG_SET_SC_PROPERTIES_IN_CLIENT = "com.android.window.flags.set_sc_properties_in_client"; @@ -556,11 +480,9 @@ public final class Flags { /** @hide */ public static final String FLAG_SKIP_COMPAT_UI_EDUCATION_IN_DESKTOP_MODE = "com.android.window.flags.skip_compat_ui_education_in_desktop_mode"; /** @hide */ - public static final String FLAG_SKIP_DEACTIVATION_OF_DESK_WITH_NOTHING_IN_FRONT = "com.android.window.flags.skip_deactivation_of_desk_with_nothing_in_front"; - /** @hide */ public static final String FLAG_SKIP_DECOR_VIEW_RELAYOUT_WHEN_CLOSING_BUGFIX = "com.android.window.flags.skip_decor_view_relayout_when_closing_bugfix"; /** @hide */ - public static final String FLAG_SPLASH_SCREEN_VIEW_SYNC_TRANSACTION = "com.android.window.flags.splash_screen_view_sync_transaction"; + public static final String FLAG_SUPPORT_WIDGET_INTENTS_ON_CONNECTED_DISPLAY = "com.android.window.flags.support_widget_intents_on_connected_display"; /** @hide */ public static final String FLAG_SUPPORTS_DRAG_ASSISTANT_TO_MULTIWINDOW = "com.android.window.flags.supports_drag_assistant_to_multiwindow"; /** @hide */ @@ -574,20 +496,20 @@ public final class Flags { /** @hide */ public static final String FLAG_SYSTEM_UI_POST_ANIMATION_END = "com.android.window.flags.system_ui_post_animation_end"; /** @hide */ + public static final String FLAG_TASK_FRAGMENT_SYSTEM_ORGANIZER_FLAG = "com.android.window.flags.task_fragment_system_organizer_flag"; + /** @hide */ public static final String FLAG_TOUCH_PASS_THROUGH_OPT_IN = "com.android.window.flags.touch_pass_through_opt_in"; /** @hide */ + public static final String FLAG_TRACK_SYSTEM_UI_CONTEXT_BEFORE_WMS = "com.android.window.flags.track_system_ui_context_before_wms"; + /** @hide */ public static final String FLAG_TRANSIT_READY_TRACKING = "com.android.window.flags.transit_ready_tracking"; /** @hide */ public static final String FLAG_TRANSIT_TRACKER_PLUMBING = "com.android.window.flags.transit_tracker_plumbing"; /** @hide */ - public static final String FLAG_TRANSITION_HANDLER_CUJ_TAGS = "com.android.window.flags.transition_handler_cuj_tags"; - /** @hide */ public static final String FLAG_TRUSTED_PRESENTATION_LISTENER_FOR_WINDOW = "com.android.window.flags.trusted_presentation_listener_for_window"; /** @hide */ public static final String FLAG_UNIFY_BACK_NAVIGATION_TRANSITION = "com.android.window.flags.unify_back_navigation_transition"; /** @hide */ - public static final String FLAG_UNIFY_SHELL_BINDERS = "com.android.window.flags.unify_shell_binders"; - /** @hide */ public static final String FLAG_UNIVERSAL_RESIZABLE_BY_DEFAULT = "com.android.window.flags.universal_resizable_by_default"; /** @hide */ public static final String FLAG_UNTRUSTED_EMBEDDING_ANY_APP_PERMISSION = "com.android.window.flags.untrusted_embedding_any_app_permission"; @@ -596,14 +518,16 @@ public final class Flags { /** @hide */ public static final String FLAG_UPDATE_DIMS_WHEN_WINDOW_SHOWN = "com.android.window.flags.update_dims_when_window_shown"; /** @hide */ - public static final String FLAG_UPDATE_HOST_INPUT_TRANSFER_TOKEN = "com.android.window.flags.update_host_input_transfer_token"; - /** @hide */ - public static final String FLAG_UPDATE_TASK_MIN_DIMENSIONS_WITH_ROOT_ACTIVITY = "com.android.window.flags.update_task_min_dimensions_with_root_activity"; - /** @hide */ public static final String FLAG_USE_CACHED_INSETS_FOR_DISPLAY_SWITCH = "com.android.window.flags.use_cached_insets_for_display_switch"; /** @hide */ + public static final String FLAG_USE_RT_FRAME_CALLBACK_FOR_SPLASH_SCREEN_TRANSFER = "com.android.window.flags.use_rt_frame_callback_for_splash_screen_transfer"; + /** @hide */ public static final String FLAG_USE_TASKS_DIM_ONLY = "com.android.window.flags.use_tasks_dim_only"; /** @hide */ + public static final String FLAG_USE_VISIBLE_REQUESTED_FOR_PROCESS_TRACKER = "com.android.window.flags.use_visible_requested_for_process_tracker"; + /** @hide */ + public static final String FLAG_USE_WINDOW_ORIGINAL_TOUCHABLE_REGION_WHEN_MAGNIFICATION_RECOMPUTE_BOUNDS = "com.android.window.flags.use_window_original_touchable_region_when_magnification_recompute_bounds"; + /** @hide */ public static final String FLAG_VDM_FORCE_APP_UNIVERSAL_RESIZABLE_API = "com.android.window.flags.vdm_force_app_universal_resizable_api"; /** @hide */ public static final String FLAG_WALLPAPER_OFFSET_ASYNC = "com.android.window.flags.wallpaper_offset_async"; @@ -611,54 +535,75 @@ public final class Flags { public static final String FLAG_WLINFO_ONCREATE = "com.android.window.flags.wlinfo_oncreate"; + public static boolean actionModeEdgeToEdge() { return FEATURE_FLAGS.actionModeEdgeToEdge(); } + + + public static boolean activityEmbeddingAnimationCustomizationFlag() { + + return FEATURE_FLAGS.activityEmbeddingAnimationCustomizationFlag(); + } + + + public static boolean activityEmbeddingDelayTaskFragmentFinishForActivityLaunch() { return FEATURE_FLAGS.activityEmbeddingDelayTaskFragmentFinishForActivityLaunch(); } + public static boolean activityEmbeddingInteractiveDividerFlag() { return FEATURE_FLAGS.activityEmbeddingInteractiveDividerFlag(); } + + public static boolean activityEmbeddingMetrics() { return FEATURE_FLAGS.activityEmbeddingMetrics(); } + + public static boolean activityEmbeddingSupportForConnectedDisplays() { return FEATURE_FLAGS.activityEmbeddingSupportForConnectedDisplays(); } + public static boolean allowDisableActivityRecordInputSink() { return FEATURE_FLAGS.allowDisableActivityRecordInputSink(); } + + public static boolean allowHideScmButton() { + + return FEATURE_FLAGS.allowHideScmButton(); + } + + + public static boolean allowsScreenSizeDecoupledFromStatusBarAndCutout() { return FEATURE_FLAGS.allowsScreenSizeDecoupledFromStatusBarAndCutout(); } + public static boolean alwaysDrawMagnificationFullscreenBorder() { return FEATURE_FLAGS.alwaysDrawMagnificationFullscreenBorder(); } - public static boolean alwaysSeqIdLayout() { - - return FEATURE_FLAGS.alwaysSeqIdLayout(); - } public static boolean alwaysUpdateWallpaperPermission() { @@ -666,79 +611,90 @@ public final class Flags { return FEATURE_FLAGS.alwaysUpdateWallpaperPermission(); } + + public static boolean aodTransition() { return FEATURE_FLAGS.aodTransition(); } + + public static boolean appCompatAsyncRelayout() { return FEATURE_FLAGS.appCompatAsyncRelayout(); } + public static boolean appCompatPropertiesApi() { return FEATURE_FLAGS.appCompatPropertiesApi(); } + + public static boolean appCompatRefactoring() { return FEATURE_FLAGS.appCompatRefactoring(); } - public static boolean appCompatRefactoringRoundedCorners() { - - return FEATURE_FLAGS.appCompatRefactoringRoundedCorners(); - } + public static boolean appCompatUiFramework() { return FEATURE_FLAGS.appCompatUiFramework(); } + + public static boolean appHandleNoRelayoutOnExclusionChange() { return FEATURE_FLAGS.appHandleNoRelayoutOnExclusionChange(); } + + public static boolean applyLifecycleOnPipChange() { return FEATURE_FLAGS.applyLifecycleOnPipChange(); } + public static boolean avoidRebindingIntentionallyDisconnectedWallpaper() { return FEATURE_FLAGS.avoidRebindingIntentionallyDisconnectedWallpaper(); } + public static boolean backupAndRestoreForUserAspectRatioSettings() { return FEATURE_FLAGS.backupAndRestoreForUserAspectRatioSettings(); } + + public static boolean balAdditionalLogging() { return FEATURE_FLAGS.balAdditionalLogging(); } + public static boolean balAdditionalStartModes() { return FEATURE_FLAGS.balAdditionalStartModes(); } + + public static boolean balClearAllowlistDuration() { return FEATURE_FLAGS.balClearAllowlistDuration(); } - public static boolean balCoverIntentSender() { - - return FEATURE_FLAGS.balCoverIntentSender(); - } public static boolean balDontBringExistingBackgroundTaskStackToFg() { @@ -746,128 +702,237 @@ public final class Flags { return FEATURE_FLAGS.balDontBringExistingBackgroundTaskStackToFg(); } + + + public static boolean balImproveRealCallerVisibilityCheck() { + + return FEATURE_FLAGS.balImproveRealCallerVisibilityCheck(); + } + + + + public static boolean balImprovedMetrics() { + + return FEATURE_FLAGS.balImprovedMetrics(); + } + + + public static boolean balReduceGracePeriod() { return FEATURE_FLAGS.balReduceGracePeriod(); } + + public static boolean balRequireOptInByPendingIntentCreator() { + + return FEATURE_FLAGS.balRequireOptInByPendingIntentCreator(); + } + + + public static boolean balRespectAppSwitchStateWhenCheckBoundByForegroundUid() { return FEATURE_FLAGS.balRespectAppSwitchStateWhenCheckBoundByForegroundUid(); } + public static boolean balSendIntentWithOptions() { return FEATURE_FLAGS.balSendIntentWithOptions(); } + + public static boolean balShowToastsBlocked() { return FEATURE_FLAGS.balShowToastsBlocked(); } + public static boolean balStrictModeGracePeriod() { return FEATURE_FLAGS.balStrictModeGracePeriod(); } + public static boolean balStrictModeRo() { return FEATURE_FLAGS.balStrictModeRo(); } + public static boolean betterSupportNonMatchParentActivity() { return FEATURE_FLAGS.betterSupportNonMatchParentActivity(); } + + + public static boolean cacheWindowStyle() { + + return FEATURE_FLAGS.cacheWindowStyle(); + } + + + public static boolean cameraCompatForFreeform() { return FEATURE_FLAGS.cameraCompatForFreeform(); } + + public static boolean cameraCompatFullscreenPickSameTaskActivity() { return FEATURE_FLAGS.cameraCompatFullscreenPickSameTaskActivity(); } + + + public static boolean checkDisabledSnapshotsInTaskPersister() { + + return FEATURE_FLAGS.checkDisabledSnapshotsInTaskPersister(); + } + + + + public static boolean cleanupDispatchPendingTransactionsRemoteException() { + + return FEATURE_FLAGS.cleanupDispatchPendingTransactionsRemoteException(); + } + + + + public static boolean clearSystemVibrator() { + + return FEATURE_FLAGS.clearSystemVibrator(); + } + + + public static boolean closeToSquareConfigIncludesStatusBar() { return FEATURE_FLAGS.closeToSquareConfigIncludesStatusBar(); } + + public static boolean condenseConfigurationChangeForSimpleMode() { + + return FEATURE_FLAGS.condenseConfigurationChangeForSimpleMode(); + } + + + + public static boolean configurableFontScaleDefault() { + + return FEATURE_FLAGS.configurableFontScaleDefault(); + } + + + public static boolean coverDisplayOptIn() { return FEATURE_FLAGS.coverDisplayOptIn(); } - public static boolean currentAnimatorScaleUsesSharedMemory() { + + + public static boolean delayNotificationToMagnificationWhenRecentsWindowToFrontTransition() { - return FEATURE_FLAGS.currentAnimatorScaleUsesSharedMemory(); + return FEATURE_FLAGS.delayNotificationToMagnificationWhenRecentsWindowToFrontTransition(); } - public static boolean defaultDeskWithoutWarmupMigration() { + + + public static boolean delegateBackGestureToShell() { - return FEATURE_FLAGS.defaultDeskWithoutWarmupMigration(); + return FEATURE_FLAGS.delegateBackGestureToShell(); } + public static boolean delegateUnhandledDrags() { return FEATURE_FLAGS.delegateUnhandledDrags(); } + + public static boolean deleteCaptureDisplay() { + + return FEATURE_FLAGS.deleteCaptureDisplay(); + } + + + public static boolean density390Api() { return FEATURE_FLAGS.density390Api(); } + public static boolean disableDesktopLaunchParamsOutsideDesktopBugFix() { return FEATURE_FLAGS.disableDesktopLaunchParamsOutsideDesktopBugFix(); } + public static boolean disableNonResizableAppSnapResizing() { return FEATURE_FLAGS.disableNonResizableAppSnapResizing(); } + public static boolean disableOptOutEdgeToEdge() { return FEATURE_FLAGS.disableOptOutEdgeToEdge(); } - public static boolean dispatchFirstKeyguardLockedState() { + + public static boolean doNotCheckIntersectionWhenNonMagnifiableWindowTransitions() { - return FEATURE_FLAGS.dispatchFirstKeyguardLockedState(); + return FEATURE_FLAGS.doNotCheckIntersectionWhenNonMagnifiableWindowTransitions(); } + + public static boolean earlyLaunchHint() { + + return FEATURE_FLAGS.earlyLaunchHint(); + } + + + + public static boolean edgeToEdgeByDefault() { + + return FEATURE_FLAGS.edgeToEdgeByDefault(); + } + + + public static boolean enableAccessibleCustomHeaders() { return FEATURE_FLAGS.enableAccessibleCustomHeaders(); } + + public static boolean enableActivityEmbeddingSupportForConnectedDisplays() { return FEATURE_FLAGS.enableActivityEmbeddingSupportForConnectedDisplays(); } - public static boolean enableAppHandlePositionReporting() { - - return FEATURE_FLAGS.enableAppHandlePositionReporting(); - } public static boolean enableAppHeaderWithTaskDensity() { @@ -875,30 +940,27 @@ public final class Flags { return FEATURE_FLAGS.enableAppHeaderWithTaskDensity(); } - public static boolean enableBlockNonDesktopDisplayWindowDragBugfix() { - - return FEATURE_FLAGS.enableBlockNonDesktopDisplayWindowDragBugfix(); - } + public static boolean enableBorderSettings() { return FEATURE_FLAGS.enableBorderSettings(); } - public static boolean enableBoxShadowSettings() { + + + public static boolean enableBufferTransformHintFromDisplay() { - return FEATURE_FLAGS.enableBoxShadowSettings(); + return FEATURE_FLAGS.enableBufferTransformHintFromDisplay(); } + + public static boolean enableBugFixesForSecondaryDisplay() { return FEATURE_FLAGS.enableBugFixesForSecondaryDisplay(); } - public static boolean enableCameraCompatCheckDeviceRotationBugfix() { - - return FEATURE_FLAGS.enableCameraCompatCheckDeviceRotationBugfix(); - } public static boolean enableCameraCompatForDesktopWindowing() { @@ -907,48 +969,54 @@ public final class Flags { } + public static boolean enableCameraCompatForDesktopWindowingOptOut() { return FEATURE_FLAGS.enableCameraCompatForDesktopWindowingOptOut(); } + + public static boolean enableCameraCompatForDesktopWindowingOptOutApi() { return FEATURE_FLAGS.enableCameraCompatForDesktopWindowingOptOutApi(); } + + public static boolean enableCameraCompatTrackTaskAndAppBugfix() { return FEATURE_FLAGS.enableCameraCompatTrackTaskAndAppBugfix(); } + + public static boolean enableCaptionCompatInsetConversion() { return FEATURE_FLAGS.enableCaptionCompatInsetConversion(); } + public static boolean enableCaptionCompatInsetForceConsumption() { return FEATURE_FLAGS.enableCaptionCompatInsetForceConsumption(); } + public static boolean enableCaptionCompatInsetForceConsumptionAlways() { return FEATURE_FLAGS.enableCaptionCompatInsetForceConsumptionAlways(); } + public static boolean enableCascadingWindows() { return FEATURE_FLAGS.enableCascadingWindows(); } - public static boolean enableCloseLidInteraction() { - - return FEATURE_FLAGS.enableCloseLidInteraction(); - } public static boolean enableCompatUiVisibilityStatus() { @@ -956,36 +1024,42 @@ public final class Flags { return FEATURE_FLAGS.enableCompatUiVisibilityStatus(); } + + public static boolean enableCompatuiSysuiLauncher() { return FEATURE_FLAGS.enableCompatuiSysuiLauncher(); } + + public static boolean enableConnectedDisplaysDnd() { return FEATURE_FLAGS.enableConnectedDisplaysDnd(); } + + public static boolean enableConnectedDisplaysPip() { return FEATURE_FLAGS.enableConnectedDisplaysPip(); } + + public static boolean enableConnectedDisplaysWindowDrag() { return FEATURE_FLAGS.enableConnectedDisplaysWindowDrag(); } + public static boolean enableDesktopAppHandleAnimation() { return FEATURE_FLAGS.enableDesktopAppHandleAnimation(); } - public static boolean enableDesktopAppHeaderStateChangeAnnouncements() { - - return FEATURE_FLAGS.enableDesktopAppHeaderStateChangeAnnouncements(); - } + public static boolean enableDesktopAppLaunchAlttabTransitions() { @@ -993,15 +1067,13 @@ public final class Flags { } + public static boolean enableDesktopAppLaunchAlttabTransitionsBugfix() { return FEATURE_FLAGS.enableDesktopAppLaunchAlttabTransitionsBugfix(); } - public static boolean enableDesktopAppLaunchBugfix() { - - return FEATURE_FLAGS.enableDesktopAppLaunchBugfix(); - } + public static boolean enableDesktopAppLaunchTransitions() { @@ -1009,40 +1081,27 @@ public final class Flags { } + public static boolean enableDesktopAppLaunchTransitionsBugfix() { return FEATURE_FLAGS.enableDesktopAppLaunchTransitionsBugfix(); } + + public static boolean enableDesktopCloseShortcutBugfix() { return FEATURE_FLAGS.enableDesktopCloseShortcutBugfix(); } + + public static boolean enableDesktopCloseTaskAnimationInDtcBugfix() { return FEATURE_FLAGS.enableDesktopCloseTaskAnimationInDtcBugfix(); } - public static boolean enableDesktopFirstBasedDefaultToDesktopBugfix() { - - return FEATURE_FLAGS.enableDesktopFirstBasedDefaultToDesktopBugfix(); - } - public static boolean enableDesktopFirstBasedDragToMaximize() { - - return FEATURE_FLAGS.enableDesktopFirstBasedDragToMaximize(); - } - - public static boolean enableDesktopFirstFullscreenRefocusBugfix() { - - return FEATURE_FLAGS.enableDesktopFirstFullscreenRefocusBugfix(); - } - - public static boolean enableDesktopFirstListener() { - - return FEATURE_FLAGS.enableDesktopFirstListener(); - } public static boolean enableDesktopImeBugfix() { @@ -1050,49 +1109,54 @@ public final class Flags { } + public static boolean enableDesktopImmersiveDragBugfix() { return FEATURE_FLAGS.enableDesktopImmersiveDragBugfix(); } + public static boolean enableDesktopIndicatorInSeparateThreadBugfix() { return FEATURE_FLAGS.enableDesktopIndicatorInSeparateThreadBugfix(); } + + public static boolean enableDesktopModeThroughDevOption() { return FEATURE_FLAGS.enableDesktopModeThroughDevOption(); } + public static boolean enableDesktopOpeningDeeplinkMinimizeAnimationBugfix() { return FEATURE_FLAGS.enableDesktopOpeningDeeplinkMinimizeAnimationBugfix(); } + public static boolean enableDesktopRecentsTransitionsCornersBugfix() { return FEATURE_FLAGS.enableDesktopRecentsTransitionsCornersBugfix(); } - public static boolean enableDesktopSplitscreenTransitionBugfix() { + + + public static boolean enableDesktopSwipeBackMinimizeAnimationBugfix() { - return FEATURE_FLAGS.enableDesktopSplitscreenTransitionBugfix(); + return FEATURE_FLAGS.enableDesktopSwipeBackMinimizeAnimationBugfix(); } + public static boolean enableDesktopSystemDialogsTransitions() { return FEATURE_FLAGS.enableDesktopSystemDialogsTransitions(); } - public static boolean enableDesktopTabTearingLaunchAnimation() { - - return FEATURE_FLAGS.enableDesktopTabTearingLaunchAnimation(); - } public static boolean enableDesktopTabTearingMinimizeAnimationBugfix() { @@ -1100,10 +1164,7 @@ public final class Flags { return FEATURE_FLAGS.enableDesktopTabTearingMinimizeAnimationBugfix(); } - public static boolean enableDesktopTaskLimitSeparateTransition() { - - return FEATURE_FLAGS.enableDesktopTaskLimitSeparateTransition(); - } + public static boolean enableDesktopTaskbarOnFreeformDisplays() { @@ -1111,118 +1172,138 @@ public final class Flags { } + public static boolean enableDesktopTrampolineCloseAnimationBugfix() { return FEATURE_FLAGS.enableDesktopTrampolineCloseAnimationBugfix(); } + public static boolean enableDesktopWallpaperActivityForSystemUser() { return FEATURE_FLAGS.enableDesktopWallpaperActivityForSystemUser(); } + + public static boolean enableDesktopWindowingAppHandleEducation() { return FEATURE_FLAGS.enableDesktopWindowingAppHandleEducation(); } + public static boolean enableDesktopWindowingAppToWeb() { return FEATURE_FLAGS.enableDesktopWindowingAppToWeb(); } + public static boolean enableDesktopWindowingAppToWebEducation() { return FEATURE_FLAGS.enableDesktopWindowingAppToWebEducation(); } + + public static boolean enableDesktopWindowingAppToWebEducationIntegration() { return FEATURE_FLAGS.enableDesktopWindowingAppToWebEducationIntegration(); } + public static boolean enableDesktopWindowingBackNavigation() { return FEATURE_FLAGS.enableDesktopWindowingBackNavigation(); } + public static boolean enableDesktopWindowingEnterTransitionBugfix() { return FEATURE_FLAGS.enableDesktopWindowingEnterTransitionBugfix(); } + + public static boolean enableDesktopWindowingEnterTransitions() { return FEATURE_FLAGS.enableDesktopWindowingEnterTransitions(); } + public static boolean enableDesktopWindowingExitByMinimizeTransitionBugfix() { return FEATURE_FLAGS.enableDesktopWindowingExitByMinimizeTransitionBugfix(); } + + public static boolean enableDesktopWindowingExitTransitions() { return FEATURE_FLAGS.enableDesktopWindowingExitTransitions(); } + public static boolean enableDesktopWindowingExitTransitionsBugfix() { return FEATURE_FLAGS.enableDesktopWindowingExitTransitionsBugfix(); } + public static boolean enableDesktopWindowingHsum() { return FEATURE_FLAGS.enableDesktopWindowingHsum(); } + public static boolean enableDesktopWindowingImmersiveHandleHiding() { return FEATURE_FLAGS.enableDesktopWindowingImmersiveHandleHiding(); } + public static boolean enableDesktopWindowingModalsPolicy() { return FEATURE_FLAGS.enableDesktopWindowingModalsPolicy(); } + public static boolean enableDesktopWindowingMode() { return FEATURE_FLAGS.enableDesktopWindowingMode(); } + public static boolean enableDesktopWindowingMultiInstanceFeatures() { return FEATURE_FLAGS.enableDesktopWindowingMultiInstanceFeatures(); } + public static boolean enableDesktopWindowingPersistence() { return FEATURE_FLAGS.enableDesktopWindowingPersistence(); } + + public static boolean enableDesktopWindowingPip() { return FEATURE_FLAGS.enableDesktopWindowingPip(); } - public static boolean enableDesktopWindowingPipInOverviewBugfix() { - - return FEATURE_FLAGS.enableDesktopWindowingPipInOverviewBugfix(); - } public static boolean enableDesktopWindowingQuickSwitch() { @@ -1231,122 +1312,117 @@ public final class Flags { } + public static boolean enableDesktopWindowingScvhCacheBugFix() { return FEATURE_FLAGS.enableDesktopWindowingScvhCacheBugFix(); } + public static boolean enableDesktopWindowingSizeConstraints() { return FEATURE_FLAGS.enableDesktopWindowingSizeConstraints(); } + public static boolean enableDesktopWindowingTaskLimit() { return FEATURE_FLAGS.enableDesktopWindowingTaskLimit(); } + public static boolean enableDesktopWindowingTaskbarRunningApps() { return FEATURE_FLAGS.enableDesktopWindowingTaskbarRunningApps(); } + + public static boolean enableDesktopWindowingTransitions() { return FEATURE_FLAGS.enableDesktopWindowingTransitions(); } + public static boolean enableDesktopWindowingWallpaperActivity() { return FEATURE_FLAGS.enableDesktopWindowingWallpaperActivity(); } + + public static boolean enableDeviceStateAutoRotateSettingLogging() { return FEATURE_FLAGS.enableDeviceStateAutoRotateSettingLogging(); } + public static boolean enableDeviceStateAutoRotateSettingRefactor() { return FEATURE_FLAGS.enableDeviceStateAutoRotateSettingRefactor(); } - public static boolean enableDisplayCompatMode() { - - return FEATURE_FLAGS.enableDisplayCompatMode(); - } + public static boolean enableDisplayDisconnectInteraction() { return FEATURE_FLAGS.enableDisplayDisconnectInteraction(); } + + public static boolean enableDisplayFocusInShellTransitions() { return FEATURE_FLAGS.enableDisplayFocusInShellTransitions(); } + + public static boolean enableDisplayReconnectInteraction() { return FEATURE_FLAGS.enableDisplayReconnectInteraction(); } + + public static boolean enableDisplayWindowingModeSwitching() { return FEATURE_FLAGS.enableDisplayWindowingModeSwitching(); } + public static boolean enableDragResizeSetUpInBgThread() { return FEATURE_FLAGS.enableDragResizeSetUpInBgThread(); } + public static boolean enableDragToDesktopIncomingTransitionsBugfix() { return FEATURE_FLAGS.enableDragToDesktopIncomingTransitionsBugfix(); } + + public static boolean enableDragToMaximize() { return FEATURE_FLAGS.enableDragToMaximize(); } - public static boolean enableDraggingPipAcrossDisplays() { - - return FEATURE_FLAGS.enableDraggingPipAcrossDisplays(); - } + public static boolean enableDynamicRadiusComputationBugfix() { return FEATURE_FLAGS.enableDynamicRadiusComputationBugfix(); } - public static boolean enableEmptyDeskOnMinimize() { - - return FEATURE_FLAGS.enableEmptyDeskOnMinimize(); - } - - public static boolean enableExperimentalBubblesController() { - - return FEATURE_FLAGS.enableExperimentalBubblesController(); - } - - public static boolean enableFreeformBoxShadows() { - - return FEATURE_FLAGS.enableFreeformBoxShadows(); - } - - public static boolean enableFreeformDisplayLaunchParams() { - - return FEATURE_FLAGS.enableFreeformDisplayLaunchParams(); - } public static boolean enableFullScreenWindowOnRemovingSplitScreenStageBugfix() { @@ -1354,10 +1430,6 @@ public final class Flags { return FEATURE_FLAGS.enableFullScreenWindowOnRemovingSplitScreenStageBugfix(); } - public static boolean enableFullscreenWindowControls() { - - return FEATURE_FLAGS.enableFullscreenWindowControls(); - } public static boolean enableFullyImmersiveInDesktop() { @@ -1366,15 +1438,12 @@ public final class Flags { } + public static boolean enableHandleInputFix() { return FEATURE_FLAGS.enableHandleInputFix(); } - public static boolean enableHandlersDebuggingMode() { - - return FEATURE_FLAGS.enableHandlersDebuggingMode(); - } public static boolean enableHoldToDragAppHandle() { @@ -1382,15 +1451,6 @@ public final class Flags { return FEATURE_FLAGS.enableHoldToDragAppHandle(); } - public static boolean enableIndependentBackInProjected() { - - return FEATURE_FLAGS.enableIndependentBackInProjected(); - } - - public static boolean enableInorderTransitionCallbacksForDesktop() { - - return FEATURE_FLAGS.enableInorderTransitionCallbacksForDesktop(); - } public static boolean enableInputLayerTransitionFix() { @@ -1398,10 +1458,6 @@ public final class Flags { return FEATURE_FLAGS.enableInputLayerTransitionFix(); } - public static boolean enableKeyGestureHandlerForSysui() { - - return FEATURE_FLAGS.enableKeyGestureHandlerForSysui(); - } public static boolean enableMinimizeButton() { @@ -1410,41 +1466,41 @@ public final class Flags { } + public static boolean enableModalsFullscreenWithPermission() { return FEATURE_FLAGS.enableModalsFullscreenWithPermission(); } - public static boolean enableModalsFullscreenWithPlatformSignature() { - - return FEATURE_FLAGS.enableModalsFullscreenWithPlatformSignature(); - } public static boolean enableMoveToNextDisplayShortcut() { return FEATURE_FLAGS.enableMoveToNextDisplayShortcut(); } + + public static boolean enableMultiDisplaySplit() { return FEATURE_FLAGS.enableMultiDisplaySplit(); } + + public static boolean enableMultidisplayTrackpadBackGesture() { return FEATURE_FLAGS.enableMultidisplayTrackpadBackGesture(); } + + public static boolean enableMultipleDesktopsBackend() { return FEATURE_FLAGS.enableMultipleDesktopsBackend(); } - public static boolean enableMultipleDesktopsDefaultActivationInDesktopFirstDisplays() { - - return FEATURE_FLAGS.enableMultipleDesktopsDefaultActivationInDesktopFirstDisplays(); - } + public static boolean enableMultipleDesktopsFrontend() { @@ -1452,10 +1508,6 @@ public final class Flags { } - public static boolean enableNoWindowDecorationForDesks() { - - return FEATURE_FLAGS.enableNoWindowDecorationForDesks(); - } public static boolean enableNonDefaultDisplaySplit() { @@ -1463,21 +1515,13 @@ public final class Flags { } - public static boolean enableOmitAccelerometerRotationRestore() { - - return FEATURE_FLAGS.enableOmitAccelerometerRotationRestore(); - } - public static boolean enableOpaqueBackgroundForTransparentWindows() { return FEATURE_FLAGS.enableOpaqueBackgroundForTransparentWindows(); } - public static boolean enableOverflowButtonForTaskbarPinnedItems() { - - return FEATURE_FLAGS.enableOverflowButtonForTaskbarPinnedItems(); - } + public static boolean enablePerDisplayDesktopWallpaperActivity() { @@ -1485,41 +1529,40 @@ public final class Flags { } + public static boolean enablePerDisplayPackageContextCacheInStatusbarNotif() { return FEATURE_FLAGS.enablePerDisplayPackageContextCacheInStatusbarNotif(); } + + public static boolean enablePersistingDisplaySizeForConnectedDisplays() { return FEATURE_FLAGS.enablePersistingDisplaySizeForConnectedDisplays(); } - public static boolean enablePinningAppWithContextMenu() { - - return FEATURE_FLAGS.enablePinningAppWithContextMenu(); - } + public static boolean enablePresentationForConnectedDisplays() { return FEATURE_FLAGS.enablePresentationForConnectedDisplays(); } + + public static boolean enableProjectedDisplayDesktopMode() { return FEATURE_FLAGS.enableProjectedDisplayDesktopMode(); } + public static boolean enableQuickswitchDesktopSplitBugfix() { return FEATURE_FLAGS.enableQuickswitchDesktopSplitBugfix(); } - public static boolean enableRejectHomeTransition() { - - return FEATURE_FLAGS.enableRejectHomeTransition(); - } public static boolean enableRequestFullscreenBugfix() { @@ -1527,10 +1570,6 @@ public final class Flags { return FEATURE_FLAGS.enableRequestFullscreenBugfix(); } - public static boolean enableRequestFullscreenRefactor() { - - return FEATURE_FLAGS.enableRequestFullscreenRefactor(); - } public static boolean enableResizingMetrics() { @@ -1538,21 +1577,20 @@ public final class Flags { return FEATURE_FLAGS.enableResizingMetrics(); } + + public static boolean enableRestartMenuForConnectedDisplays() { return FEATURE_FLAGS.enableRestartMenuForConnectedDisplays(); } + public static boolean enableRestoreToPreviousSizeFromDesktopImmersive() { return FEATURE_FLAGS.enableRestoreToPreviousSizeFromDesktopImmersive(); } - public static boolean enableSeeThroughTaskFragments() { - - return FEATURE_FLAGS.enableSeeThroughTaskFragments(); - } public static boolean enableShellInitialBoundsRegressionBugFix() { @@ -1560,26 +1598,20 @@ public final class Flags { return FEATURE_FLAGS.enableShellInitialBoundsRegressionBugFix(); } + + public static boolean enableSizeCompatModeImprovementsForConnectedDisplays() { return FEATURE_FLAGS.enableSizeCompatModeImprovementsForConnectedDisplays(); } + public static boolean enableStartLaunchTransitionFromTaskbarBugfix() { return FEATURE_FLAGS.enableStartLaunchTransitionFromTaskbarBugfix(); } - public static boolean enableSysDecorsCallbacksViaWm() { - - return FEATURE_FLAGS.enableSysDecorsCallbacksViaWm(); - } - - public static boolean enableTallAppHeaders() { - - return FEATURE_FLAGS.enableTallAppHeaders(); - } public static boolean enableTaskResizingKeyboardShortcuts() { @@ -1588,26 +1620,26 @@ public final class Flags { } + public static boolean enableTaskStackObserverInShell() { return FEATURE_FLAGS.enableTaskStackObserverInShell(); } + + public static boolean enableTaskbarConnectedDisplays() { return FEATURE_FLAGS.enableTaskbarConnectedDisplays(); } + public static boolean enableTaskbarOverflow() { return FEATURE_FLAGS.enableTaskbarOverflow(); } - public static boolean enableTaskbarRecentTasksThrottleBugfix() { - - return FEATURE_FLAGS.enableTaskbarRecentTasksThrottleBugfix(); - } public static boolean enableTaskbarRecentsLayoutTransition() { @@ -1616,26 +1648,26 @@ public final class Flags { } + public static boolean enableThemedAppHeaders() { return FEATURE_FLAGS.enableThemedAppHeaders(); } + + public static boolean enableTileResizing() { return FEATURE_FLAGS.enableTileResizing(); } + public static boolean enableTopVisibleRootTaskPerUserTracking() { return FEATURE_FLAGS.enableTopVisibleRootTaskPerUserTracking(); } - public static boolean enableTransitionOnActivitySetRequestedOrientation() { - - return FEATURE_FLAGS.enableTransitionOnActivitySetRequestedOrientation(); - } public static boolean enableVisualIndicatorInTransitionBugfix() { @@ -1644,26 +1676,12 @@ public final class Flags { } - public static boolean enableWindowContextOverrideType() { - - return FEATURE_FLAGS.enableWindowContextOverrideType(); - } - public static boolean enableWindowContextResourcesUpdateOnConfigChange() { return FEATURE_FLAGS.enableWindowContextResourcesUpdateOnConfigChange(); } - public static boolean enableWindowDecorationRefactor() { - - return FEATURE_FLAGS.enableWindowDecorationRefactor(); - } - - public static boolean enableWindowRepositioningApi() { - - return FEATURE_FLAGS.enableWindowRepositioningApi(); - } public static boolean enableWindowingDynamicInitialBounds() { @@ -1672,21 +1690,20 @@ public final class Flags { } + public static boolean enableWindowingEdgeDragResize() { return FEATURE_FLAGS.enableWindowingEdgeDragResize(); } + public static boolean enableWindowingScaledResizing() { return FEATURE_FLAGS.enableWindowingScaledResizing(); } - public static boolean enableWindowingTaskStackOrderBugfix() { - - return FEATURE_FLAGS.enableWindowingTaskStackOrderBugfix(); - } + public static boolean enableWindowingTransitionHandlersObservers() { @@ -1694,36 +1711,54 @@ public final class Flags { } + public static boolean enforceEdgeToEdge() { return FEATURE_FLAGS.enforceEdgeToEdge(); } + + public static boolean ensureKeyguardDoesTransitionStarting() { return FEATURE_FLAGS.ensureKeyguardDoesTransitionStarting(); } + + + public static boolean ensureWallpaperInTransitions() { + + return FEATURE_FLAGS.ensureWallpaperInTransitions(); + } + + + + public static boolean ensureWallpaperInWearTransitions() { + + return FEATURE_FLAGS.ensureWallpaperInWearTransitions(); + } + + + public static boolean enterDesktopByDefaultOnFreeformDisplays() { return FEATURE_FLAGS.enterDesktopByDefaultOnFreeformDisplays(); } + public static boolean excludeCaptionFromAppBounds() { return FEATURE_FLAGS.excludeCaptionFromAppBounds(); } - public static boolean excludeDeskRootsFromDesktopTasks() { + + + public static boolean excludeDrawingAppThemeSnapshotFromLock() { - return FEATURE_FLAGS.excludeDeskRootsFromDesktopTasks(); + return FEATURE_FLAGS.excludeDrawingAppThemeSnapshotFromLock(); } - public static boolean excludeNonMainWindowFromSnapshot() { - - return FEATURE_FLAGS.excludeNonMainWindowFromSnapshot(); - } public static boolean excludeTaskFromRecents() { @@ -1731,25 +1766,13 @@ public final class Flags { return FEATURE_FLAGS.excludeTaskFromRecents(); } - public static boolean extendingPersistenceSnapshotQueueDepth() { - - return FEATURE_FLAGS.extendingPersistenceSnapshotQueueDepth(); - } - public static boolean fallbackToFocusedDisplay() { - - return FEATURE_FLAGS.fallbackToFocusedDisplay(); - } public static boolean fifoPriorityForMajorUiProcesses() { return FEATURE_FLAGS.fifoPriorityForMajorUiProcesses(); } - public static boolean fixFullscreenInMultiWindow() { - - return FEATURE_FLAGS.fixFullscreenInMultiWindow(); - } public static boolean fixHideOverlayApi() { @@ -1757,25 +1780,21 @@ public final class Flags { return FEATURE_FLAGS.fixHideOverlayApi(); } - public static boolean fixLayoutRestoredTask() { + + + public static boolean fixLayoutExistingTask() { - return FEATURE_FLAGS.fixLayoutRestoredTask(); + return FEATURE_FLAGS.fixLayoutExistingTask(); } - public static boolean fixMovingUnfocusedTask() { + + + public static boolean fixViewRootCallTrace() { - return FEATURE_FLAGS.fixMovingUnfocusedTask(); + return FEATURE_FLAGS.fixViewRootCallTrace(); } - public static boolean fixSetAdjacentTaskFragmentsWithParams() { - - return FEATURE_FLAGS.fixSetAdjacentTaskFragmentsWithParams(); - } - public static boolean fixShowWhenLockedSyncTimeout() { - - return FEATURE_FLAGS.fixShowWhenLockedSyncTimeout(); - } public static boolean forceCloseTopTransparentFullscreenTask() { @@ -1783,10 +1802,6 @@ public final class Flags { } - public static boolean forceShowSystemBarForBubble() { - - return FEATURE_FLAGS.forceShowSystemBarForBubble(); - } public static boolean formFactorBasedDesktopFirstSwitch() { @@ -1794,15 +1809,12 @@ public final class Flags { } + public static boolean getDimmerOnClosing() { return FEATURE_FLAGS.getDimmerOnClosing(); } - public static boolean grantManageKeyGesturesToRecents() { - - return FEATURE_FLAGS.grantManageKeyGesturesToRecents(); - } public static boolean ignoreAspectRatioRestrictionsForResizeableFreeformActivities() { @@ -1810,89 +1822,133 @@ public final class Flags { return FEATURE_FLAGS.ignoreAspectRatioRestrictionsForResizeableFreeformActivities(); } + + public static boolean ignoreCornerRadiusAndShadows() { return FEATURE_FLAGS.ignoreCornerRadiusAndShadows(); } + public static boolean includeTopTransparentFullscreenTaskInDesktopHeuristic() { return FEATURE_FLAGS.includeTopTransparentFullscreenTaskInDesktopHeuristic(); } + public static boolean inheritTaskBoundsForTrampolineTaskLaunches() { return FEATURE_FLAGS.inheritTaskBoundsForTrampolineTaskLaunches(); } + public static boolean insetsDecoupledConfiguration() { return FEATURE_FLAGS.insetsDecoupledConfiguration(); } - public static boolean interceptMotionFromMoveToCancel() { - - return FEATURE_FLAGS.interceptMotionFromMoveToCancel(); - } - public static boolean jankApi() { return FEATURE_FLAGS.jankApi(); } + + + public static boolean keepAppWindowHideWhileLocked() { + + return FEATURE_FLAGS.keepAppWindowHideWhileLocked(); + } + + + public static boolean keyboardShortcutsToSwitchDesks() { return FEATURE_FLAGS.keyboardShortcutsToSwitchDesks(); } + + + public static boolean keyguardGoingAwayTimeout() { + + return FEATURE_FLAGS.keyguardGoingAwayTimeout(); + } + + + public static boolean letterboxBackgroundWallpaper() { return FEATURE_FLAGS.letterboxBackgroundWallpaper(); } + public static boolean movableCutoutConfiguration() { return FEATURE_FLAGS.movableCutoutConfiguration(); } + + public static boolean moveToExternalDisplayShortcut() { return FEATURE_FLAGS.moveToExternalDisplayShortcut(); } + public static boolean multiCrop() { return FEATURE_FLAGS.multiCrop(); } + + public static boolean navBarTransparentByDefault() { return FEATURE_FLAGS.navBarTransparentByDefault(); } - public static boolean nestedTasksWithIndependentBoundsBugfix() { + + public static boolean nestedTasksWithIndependentBounds() { - return FEATURE_FLAGS.nestedTasksWithIndependentBoundsBugfix(); + return FEATURE_FLAGS.nestedTasksWithIndependentBounds(); } + + public static boolean noConsecutiveVisibilityEvents() { + + return FEATURE_FLAGS.noConsecutiveVisibilityEvents(); + } + + + + public static boolean noDuplicateSurfaceDestroyedEvents() { + + return FEATURE_FLAGS.noDuplicateSurfaceDestroyedEvents(); + } + + + + public static boolean noVisibilityEventOnDisplayStateChange() { + + return FEATURE_FLAGS.noVisibilityEventOnDisplayStateChange(); + } + + + public static boolean offloadColorExtraction() { return FEATURE_FLAGS.offloadColorExtraction(); } - public static boolean parallelCdTransitionsDuringRecents() { - - return FEATURE_FLAGS.parallelCdTransitionsDuringRecents(); - } + public static boolean portWindowSizeAnimation() { @@ -1900,123 +1956,152 @@ public final class Flags { } + public static boolean predictiveBackDefaultEnableSdk36() { return FEATURE_FLAGS.predictiveBackDefaultEnableSdk36(); } + public static boolean predictiveBackPrioritySystemNavigationObserver() { return FEATURE_FLAGS.predictiveBackPrioritySystemNavigationObserver(); } + public static boolean predictiveBackSwipeEdgeNoneApi() { return FEATURE_FLAGS.predictiveBackSwipeEdgeNoneApi(); } + public static boolean predictiveBackSystemOverrideCallback() { return FEATURE_FLAGS.predictiveBackSystemOverrideCallback(); } + public static boolean predictiveBackThreeButtonNav() { return FEATURE_FLAGS.predictiveBackThreeButtonNav(); } + public static boolean predictiveBackTimestampApi() { return FEATURE_FLAGS.predictiveBackTimestampApi(); } - public static boolean preserveRecentsTaskConfigurationOnRelaunch() { + + + public static boolean processPriorityPolicyForMultiWindowMode() { - return FEATURE_FLAGS.preserveRecentsTaskConfigurationOnRelaunch(); + return FEATURE_FLAGS.processPriorityPolicyForMultiWindowMode(); } + public static boolean rearDisplayDisableForceDesktopSystemDecorations() { return FEATURE_FLAGS.rearDisplayDisableForceDesktopSystemDecorations(); } + + + public static boolean recordTaskSnapshotsBeforeShutdown() { + + return FEATURE_FLAGS.recordTaskSnapshotsBeforeShutdown(); + } + + + public static boolean reduceChangedExclusionRectsMsgs() { return FEATURE_FLAGS.reduceChangedExclusionRectsMsgs(); } + + + public static boolean reduceKeyguardTransitions() { + + return FEATURE_FLAGS.reduceKeyguardTransitions(); + } + + + public static boolean reduceTaskSnapshotMemoryUsage() { return FEATURE_FLAGS.reduceTaskSnapshotMemoryUsage(); } + + + public static boolean reduceUnnecessaryMeasure() { + + return FEATURE_FLAGS.reduceUnnecessaryMeasure(); + } + + + public static boolean relativeInsets() { return FEATURE_FLAGS.relativeInsets(); } + public static boolean releaseSnapshotAggressively() { return FEATURE_FLAGS.releaseSnapshotAggressively(); } - public static boolean releaseSurfaceOnTransitionFinish() { + + public static boolean releaseUserAspectRatioWm() { - return FEATURE_FLAGS.releaseSurfaceOnTransitionFinish(); + return FEATURE_FLAGS.releaseUserAspectRatioWm(); } + + public static boolean removeActivityStarterDreamCallback() { return FEATURE_FLAGS.removeActivityStarterDreamCallback(); } + + public static boolean removeDeferHidingClient() { + + return FEATURE_FLAGS.removeDeferHidingClient(); + } + + + public static boolean removeDepartTargetFromMotion() { return FEATURE_FLAGS.removeDepartTargetFromMotion(); } - public static boolean removeStartingInTransition() { - - return FEATURE_FLAGS.removeStartingInTransition(); - } - - - public static boolean reparentToDefaultWithDisplayRemoval() { - - return FEATURE_FLAGS.reparentToDefaultWithDisplayRemoval(); - } - public static boolean reparentWindowTokenApi() { return FEATURE_FLAGS.reparentWindowTokenApi(); } - public static boolean respectFullscreenActivityOptionInDesktopLaunchParams() { - - return FEATURE_FLAGS.respectFullscreenActivityOptionInDesktopLaunchParams(); - } - public static boolean respectHierarchySurfaceVisibility() { + public static boolean respectNonTopVisibleFixedOrientation() { - return FEATURE_FLAGS.respectHierarchySurfaceVisibility(); + return FEATURE_FLAGS.respectNonTopVisibleFixedOrientation(); } - public static boolean respectLeafTaskBounds() { - - return FEATURE_FLAGS.respectLeafTaskBounds(); - } public static boolean respectOrientationChangeForUnresizeable() { @@ -2025,20 +2110,6 @@ public final class Flags { } - public static boolean restoreUserAspectRatioSettingsUsingService() { - - return FEATURE_FLAGS.restoreUserAspectRatioSettingsUsingService(); - } - - public static boolean restrictFreeformHiddenSystemBarsToFillingTasks() { - - return FEATURE_FLAGS.restrictFreeformHiddenSystemBarsToFillingTasks(); - } - - public static boolean rootTaskForBubble() { - - return FEATURE_FLAGS.rootTaskForBubble(); - } public static boolean safeRegionLetterboxing() { @@ -2046,26 +2117,26 @@ public final class Flags { } + public static boolean safeReleaseSnapshotAggressively() { return FEATURE_FLAGS.safeReleaseSnapshotAggressively(); } + public static boolean schedulingForNotificationShade() { return FEATURE_FLAGS.schedulingForNotificationShade(); } + + public static boolean scrambleSnapshotFileName() { return FEATURE_FLAGS.scrambleSnapshotFileName(); } - public static boolean screenBrightnessDimOnEmulator() { - - return FEATURE_FLAGS.screenBrightnessDimOnEmulator(); - } public static boolean screenRecordingCallbacks() { @@ -2073,15 +2144,13 @@ public final class Flags { return FEATURE_FLAGS.screenRecordingCallbacks(); } + + public static boolean scrollingFromLetterbox() { return FEATURE_FLAGS.scrollingFromLetterbox(); } - public static boolean scvhSurfaceControlLifetimeFix() { - - return FEATURE_FLAGS.scvhSurfaceControlLifetimeFix(); - } public static boolean sdkDesiredPresentTime() { @@ -2089,43 +2158,48 @@ public final class Flags { return FEATURE_FLAGS.sdkDesiredPresentTime(); } + + public static boolean setScPropertiesInClient() { return FEATURE_FLAGS.setScPropertiesInClient(); } + + public static boolean showAppHandleLargeScreens() { return FEATURE_FLAGS.showAppHandleLargeScreens(); } + public static boolean showDesktopExperienceDevOption() { return FEATURE_FLAGS.showDesktopExperienceDevOption(); } + public static boolean showDesktopWindowingDevOption() { return FEATURE_FLAGS.showDesktopWindowingDevOption(); } + + public static boolean showHomeBehindDesktop() { return FEATURE_FLAGS.showHomeBehindDesktop(); } + public static boolean skipCompatUiEducationInDesktopMode() { return FEATURE_FLAGS.skipCompatUiEducationInDesktopMode(); } - public static boolean skipDeactivationOfDeskWithNothingInFront() { - - return FEATURE_FLAGS.skipDeactivationOfDeskWithNothingInFront(); - } public static boolean skipDecorViewRelayoutWhenClosingBugfix() { @@ -2134,67 +2208,89 @@ public final class Flags { } - public static boolean splashScreenViewSyncTransaction() { + + public static boolean supportWidgetIntentsOnConnectedDisplay() { - return FEATURE_FLAGS.splashScreenViewSyncTransaction(); + return FEATURE_FLAGS.supportWidgetIntentsOnConnectedDisplay(); } + public static boolean supportsDragAssistantToMultiwindow() { return FEATURE_FLAGS.supportsDragAssistantToMultiwindow(); } + public static boolean supportsMultiInstanceSystemUi() { return FEATURE_FLAGS.supportsMultiInstanceSystemUi(); } + public static boolean surfaceControlInputReceiver() { return FEATURE_FLAGS.surfaceControlInputReceiver(); } + public static boolean surfaceTrustedOverlay() { return FEATURE_FLAGS.surfaceTrustedOverlay(); } + public static boolean syncScreenCapture() { return FEATURE_FLAGS.syncScreenCapture(); } + public static boolean systemUiPostAnimationEnd() { return FEATURE_FLAGS.systemUiPostAnimationEnd(); } + + public static boolean taskFragmentSystemOrganizerFlag() { + + return FEATURE_FLAGS.taskFragmentSystemOrganizerFlag(); + } + + + public static boolean touchPassThroughOptIn() { return FEATURE_FLAGS.touchPassThroughOptIn(); } + + + public static boolean trackSystemUiContextBeforeWms() { + + return FEATURE_FLAGS.trackSystemUiContextBeforeWms(); + } + + + public static boolean transitReadyTracking() { return FEATURE_FLAGS.transitReadyTracking(); } + + public static boolean transitTrackerPlumbing() { return FEATURE_FLAGS.transitTrackerPlumbing(); } - public static boolean transitionHandlerCujTags() { - - return FEATURE_FLAGS.transitionHandlerCujTags(); - } public static boolean trustedPresentationListenerForWindow() { @@ -2203,15 +2299,12 @@ public final class Flags { } + public static boolean unifyBackNavigationTransition() { return FEATURE_FLAGS.unifyBackNavigationTransition(); } - public static boolean unifyShellBinders() { - - return FEATURE_FLAGS.unifyShellBinders(); - } public static boolean universalResizableByDefault() { @@ -2219,33 +2312,28 @@ public final class Flags { return FEATURE_FLAGS.universalResizableByDefault(); } + + public static boolean untrustedEmbeddingAnyAppPermission() { return FEATURE_FLAGS.untrustedEmbeddingAnyAppPermission(); } + public static boolean untrustedEmbeddingStateSharing() { return FEATURE_FLAGS.untrustedEmbeddingStateSharing(); } + + public static boolean updateDimsWhenWindowShown() { return FEATURE_FLAGS.updateDimsWhenWindowShown(); } - public static boolean updateHostInputTransferToken() { - - return FEATURE_FLAGS.updateHostInputTransferToken(); - } - - public static boolean updateTaskMinDimensionsWithRootActivity() { - - return FEATURE_FLAGS.updateTaskMinDimensionsWithRootActivity(); - } - public static boolean useCachedInsetsForDisplaySwitch() { @@ -2253,24 +2341,49 @@ public final class Flags { } + + public static boolean useRtFrameCallbackForSplashScreenTransfer() { + + return FEATURE_FLAGS.useRtFrameCallbackForSplashScreenTransfer(); + } + + + public static boolean useTasksDimOnly() { return FEATURE_FLAGS.useTasksDimOnly(); } + + public static boolean useVisibleRequestedForProcessTracker() { + + return FEATURE_FLAGS.useVisibleRequestedForProcessTracker(); + } + + + + public static boolean useWindowOriginalTouchableRegionWhenMagnificationRecomputeBounds() { + + return FEATURE_FLAGS.useWindowOriginalTouchableRegionWhenMagnificationRecomputeBounds(); + } + + + public static boolean vdmForceAppUniversalResizableApi() { return FEATURE_FLAGS.vdmForceAppUniversalResizableApi(); } + public static boolean wallpaperOffsetAsync() { return FEATURE_FLAGS.wallpaperOffsetAsync(); } + public static boolean wlinfoOncreate() { return FEATURE_FLAGS.wlinfoOncreate(); diff --git a/flags/src/com/android/wm/shell/CustomFeatureFlags.java b/flags/src/com/android/wm/shell/CustomFeatureFlags.java index f93318fb70..ce1e21d693 100644 --- a/flags/src/com/android/wm/shell/CustomFeatureFlags.java +++ b/flags/src/com/android/wm/shell/CustomFeatureFlags.java @@ -1,5 +1,6 @@ package com.android.wm.shell; +// TODO(b/303773055): Remove the annotation after access issue is resolved. import java.util.Arrays; import java.util.HashSet; @@ -17,6 +18,13 @@ public class CustomFeatureFlags implements FeatureFlags { } @Override + public boolean bubbleViewInfoExecutors() { + return getValue(Flags.FLAG_BUBBLE_VIEW_INFO_EXECUTORS, + FeatureFlags::bubbleViewInfoExecutors); + } + + @Override + public boolean enableAutoTaskStackController() { return getValue(Flags.FLAG_ENABLE_AUTO_TASK_STACK_CONTROLLER, FeatureFlags::enableAutoTaskStackController); @@ -31,13 +39,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableBubbleAppCompatFixes() { - return getValue(Flags.FLAG_ENABLE_BUBBLE_APP_COMPAT_FIXES, - FeatureFlags::enableBubbleAppCompatFixes); - } - - @Override - public boolean enableBubbleBar() { return getValue(Flags.FLAG_ENABLE_BUBBLE_BAR, FeatureFlags::enableBubbleBar); @@ -59,13 +60,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableBubbleSwipeUpCleanup() { - return getValue(Flags.FLAG_ENABLE_BUBBLE_SWIPE_UP_CLEANUP, - FeatureFlags::enableBubbleSwipeUpCleanup); - } - - @Override - public boolean enableBubbleTaskViewListener() { return getValue(Flags.FLAG_ENABLE_BUBBLE_TASK_VIEW_LISTENER, FeatureFlags::enableBubbleTaskViewListener); @@ -101,13 +95,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enableEnterSplitRemoveBubble() { - return getValue(Flags.FLAG_ENABLE_ENTER_SPLIT_REMOVE_BUBBLE, - FeatureFlags::enableEnterSplitRemoveBubble); - } - - @Override - public boolean enableFlexibleSplit() { return getValue(Flags.FLAG_ENABLE_FLEXIBLE_SPLIT, FeatureFlags::enableFlexibleSplit); @@ -157,13 +144,6 @@ public class CustomFeatureFlags implements FeatureFlags { @Override - public boolean enablePipBoxShadows() { - return getValue(Flags.FLAG_ENABLE_PIP_BOX_SHADOWS, - FeatureFlags::enablePipBoxShadows); - } - - @Override - public boolean enablePipUmoExperience() { return getValue(Flags.FLAG_ENABLE_PIP_UMO_EXPERIENCE, FeatureFlags::enablePipUmoExperience); @@ -192,6 +172,13 @@ public class CustomFeatureFlags implements FeatureFlags { @Override + public boolean enableTaskViewControllerCleanup() { + return getValue(Flags.FLAG_ENABLE_TASK_VIEW_CONTROLLER_CLEANUP, + FeatureFlags::enableTaskViewControllerCleanup); + } + + @Override + public boolean enableTaskbarNavbarUnification() { return getValue(Flags.FLAG_ENABLE_TASKBAR_NAVBAR_UNIFICATION, FeatureFlags::enableTaskbarNavbarUnification); @@ -232,13 +219,6 @@ public class CustomFeatureFlags implements FeatureFlags { FeatureFlags::taskViewRepository); } - @Override - - public boolean taskViewTransitionsRefactor() { - return getValue(Flags.FLAG_TASK_VIEW_TRANSITIONS_REFACTOR, - FeatureFlags::taskViewTransitionsRefactor); - } - public boolean isFlagReadOnlyOptimized(String flagName) { if (mReadOnlyFlagsSet.contains(flagName) && isOptimizationEnabled()) { @@ -258,19 +238,17 @@ public class CustomFeatureFlags implements FeatureFlags { public List getFlagNames() { return Arrays.asList( + Flags.FLAG_BUBBLE_VIEW_INFO_EXECUTORS, Flags.FLAG_ENABLE_AUTO_TASK_STACK_CONTROLLER, Flags.FLAG_ENABLE_BUBBLE_ANYTHING, - Flags.FLAG_ENABLE_BUBBLE_APP_COMPAT_FIXES, Flags.FLAG_ENABLE_BUBBLE_BAR, Flags.FLAG_ENABLE_BUBBLE_BAR_ON_PHONES, Flags.FLAG_ENABLE_BUBBLE_STASHING, - Flags.FLAG_ENABLE_BUBBLE_SWIPE_UP_CLEANUP, Flags.FLAG_ENABLE_BUBBLE_TASK_VIEW_LISTENER, Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, Flags.FLAG_ENABLE_BUBBLES_LONG_PRESS_NAV_HANDLE, Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE, Flags.FLAG_ENABLE_DYNAMIC_INSETS_FOR_APP_LAUNCH, - Flags.FLAG_ENABLE_ENTER_SPLIT_REMOVE_BUBBLE, Flags.FLAG_ENABLE_FLEXIBLE_SPLIT, Flags.FLAG_ENABLE_FLEXIBLE_TWO_APP_SPLIT, Flags.FLAG_ENABLE_GSF, @@ -278,36 +256,33 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_ENABLE_NEW_BUBBLE_ANIMATIONS, Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW, Flags.FLAG_ENABLE_PIP2, - Flags.FLAG_ENABLE_PIP_BOX_SHADOWS, Flags.FLAG_ENABLE_PIP_UMO_EXPERIENCE, Flags.FLAG_ENABLE_RECENTS_BOOKEND_TRANSITION, Flags.FLAG_ENABLE_RETRIEVABLE_BUBBLES, Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING, + Flags.FLAG_ENABLE_TASK_VIEW_CONTROLLER_CLEANUP, Flags.FLAG_ENABLE_TASKBAR_NAVBAR_UNIFICATION, Flags.FLAG_ENABLE_TASKBAR_ON_PHONES, Flags.FLAG_ENABLE_TINY_TASKBAR, Flags.FLAG_FIX_MISSING_USER_CHANGE_CALLBACKS, Flags.FLAG_ONLY_REUSE_BUBBLED_TASK_WHEN_LAUNCHED_FROM_BUBBLE, - Flags.FLAG_TASK_VIEW_REPOSITORY, - Flags.FLAG_TASK_VIEW_TRANSITIONS_REFACTOR + Flags.FLAG_TASK_VIEW_REPOSITORY ); } private Set mReadOnlyFlagsSet = new HashSet<>( Arrays.asList( + Flags.FLAG_BUBBLE_VIEW_INFO_EXECUTORS, Flags.FLAG_ENABLE_AUTO_TASK_STACK_CONTROLLER, Flags.FLAG_ENABLE_BUBBLE_ANYTHING, - Flags.FLAG_ENABLE_BUBBLE_APP_COMPAT_FIXES, Flags.FLAG_ENABLE_BUBBLE_BAR, Flags.FLAG_ENABLE_BUBBLE_BAR_ON_PHONES, Flags.FLAG_ENABLE_BUBBLE_STASHING, - Flags.FLAG_ENABLE_BUBBLE_SWIPE_UP_CLEANUP, Flags.FLAG_ENABLE_BUBBLE_TASK_VIEW_LISTENER, Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, Flags.FLAG_ENABLE_BUBBLES_LONG_PRESS_NAV_HANDLE, Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE, Flags.FLAG_ENABLE_DYNAMIC_INSETS_FOR_APP_LAUNCH, - Flags.FLAG_ENABLE_ENTER_SPLIT_REMOVE_BUBBLE, Flags.FLAG_ENABLE_FLEXIBLE_SPLIT, Flags.FLAG_ENABLE_FLEXIBLE_TWO_APP_SPLIT, Flags.FLAG_ENABLE_GSF, @@ -315,18 +290,17 @@ public class CustomFeatureFlags implements FeatureFlags { Flags.FLAG_ENABLE_NEW_BUBBLE_ANIMATIONS, Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW, Flags.FLAG_ENABLE_PIP2, - Flags.FLAG_ENABLE_PIP_BOX_SHADOWS, Flags.FLAG_ENABLE_PIP_UMO_EXPERIENCE, Flags.FLAG_ENABLE_RECENTS_BOOKEND_TRANSITION, Flags.FLAG_ENABLE_RETRIEVABLE_BUBBLES, Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING, + Flags.FLAG_ENABLE_TASK_VIEW_CONTROLLER_CLEANUP, Flags.FLAG_ENABLE_TASKBAR_NAVBAR_UNIFICATION, Flags.FLAG_ENABLE_TASKBAR_ON_PHONES, Flags.FLAG_ENABLE_TINY_TASKBAR, Flags.FLAG_FIX_MISSING_USER_CHANGE_CALLBACKS, Flags.FLAG_ONLY_REUSE_BUBBLED_TASK_WHEN_LAUNCHED_FROM_BUBBLE, Flags.FLAG_TASK_VIEW_REPOSITORY, - Flags.FLAG_TASK_VIEW_TRANSITIONS_REFACTOR, "" ) ); diff --git a/flags/src/com/android/wm/shell/FeatureFlags.java b/flags/src/com/android/wm/shell/FeatureFlags.java index b71360b9d4..5441eaed38 100644 --- a/flags/src/com/android/wm/shell/FeatureFlags.java +++ b/flags/src/com/android/wm/shell/FeatureFlags.java @@ -1,4 +1,5 @@ package com.android.wm.shell; +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public interface FeatureFlags { @@ -6,6 +7,10 @@ public interface FeatureFlags { + boolean bubbleViewInfoExecutors(); + + + boolean enableAutoTaskStackController(); @@ -14,10 +19,6 @@ public interface FeatureFlags { - boolean enableBubbleAppCompatFixes(); - - - boolean enableBubbleBar(); @@ -30,10 +31,6 @@ public interface FeatureFlags { - boolean enableBubbleSwipeUpCleanup(); - - - boolean enableBubbleTaskViewListener(); @@ -54,10 +51,6 @@ public interface FeatureFlags { - boolean enableEnterSplitRemoveBubble(); - - - boolean enableFlexibleSplit(); @@ -86,10 +79,6 @@ public interface FeatureFlags { - boolean enablePipBoxShadows(); - - - boolean enablePipUmoExperience(); @@ -106,6 +95,10 @@ public interface FeatureFlags { + boolean enableTaskViewControllerCleanup(); + + + boolean enableTaskbarNavbarUnification(); @@ -127,8 +120,4 @@ public interface FeatureFlags { boolean taskViewRepository(); - - - - boolean taskViewTransitionsRefactor(); } diff --git a/flags/src/com/android/wm/shell/FeatureFlagsImpl.java b/flags/src/com/android/wm/shell/FeatureFlagsImpl.java index fb9eeda960..8620fce733 100644 --- a/flags/src/com/android/wm/shell/FeatureFlagsImpl.java +++ b/flags/src/com/android/wm/shell/FeatureFlagsImpl.java @@ -1,10 +1,18 @@ package com.android.wm.shell; +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean bubbleViewInfoExecutors() { + return true; + } + + @Override + + public boolean enableAutoTaskStackController() { return false; } @@ -19,13 +27,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableBubbleAppCompatFixes() { - return true; - } - - @Override - - public boolean enableBubbleBar() { return false; } @@ -47,13 +48,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enableBubbleSwipeUpCleanup() { - return true; - } - - @Override - - public boolean enableBubbleTaskViewListener() { return false; } @@ -83,13 +77,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean enableDynamicInsetsForAppLaunch() { - return true; - } - - @Override - - - public boolean enableEnterSplitRemoveBubble() { return false; } @@ -145,13 +132,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override - public boolean enablePipBoxShadows() { - return false; - } - - @Override - - public boolean enablePipUmoExperience() { return false; } @@ -160,7 +140,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean enableRecentsBookendTransition() { - return true; + return false; } @Override @@ -180,6 +160,13 @@ public final class FeatureFlagsImpl implements FeatureFlags { @Override + public boolean enableTaskViewControllerCleanup() { + return true; + } + + @Override + + public boolean enableTaskbarNavbarUnification() { return true; } @@ -202,7 +189,7 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean fixMissingUserChangeCallbacks() { - return true; + return false; } @Override @@ -216,13 +203,6 @@ public final class FeatureFlagsImpl implements FeatureFlags { public boolean taskViewRepository() { - return true; - } - - @Override - - - public boolean taskViewTransitionsRefactor() { return false; } diff --git a/flags/src/com/android/wm/shell/Flags.java b/flags/src/com/android/wm/shell/Flags.java index b39d79b781..d5dbf382c4 100644 --- a/flags/src/com/android/wm/shell/Flags.java +++ b/flags/src/com/android/wm/shell/Flags.java @@ -1,23 +1,22 @@ package com.android.wm.shell; +// TODO(b/303773055): Remove the annotation after access issue is resolved. /** @hide */ public final class Flags { + /** @hide */ + public static final String FLAG_BUBBLE_VIEW_INFO_EXECUTORS = "com.android.wm.shell.bubble_view_info_executors"; /** @hide */ public static final String FLAG_ENABLE_AUTO_TASK_STACK_CONTROLLER = "com.android.wm.shell.enable_auto_task_stack_controller"; /** @hide */ public static final String FLAG_ENABLE_BUBBLE_ANYTHING = "com.android.wm.shell.enable_bubble_anything"; /** @hide */ - public static final String FLAG_ENABLE_BUBBLE_APP_COMPAT_FIXES = "com.android.wm.shell.enable_bubble_app_compat_fixes"; - /** @hide */ public static final String FLAG_ENABLE_BUBBLE_BAR = "com.android.wm.shell.enable_bubble_bar"; /** @hide */ public static final String FLAG_ENABLE_BUBBLE_BAR_ON_PHONES = "com.android.wm.shell.enable_bubble_bar_on_phones"; /** @hide */ public static final String FLAG_ENABLE_BUBBLE_STASHING = "com.android.wm.shell.enable_bubble_stashing"; /** @hide */ - public static final String FLAG_ENABLE_BUBBLE_SWIPE_UP_CLEANUP = "com.android.wm.shell.enable_bubble_swipe_up_cleanup"; - /** @hide */ public static final String FLAG_ENABLE_BUBBLE_TASK_VIEW_LISTENER = "com.android.wm.shell.enable_bubble_task_view_listener"; /** @hide */ public static final String FLAG_ENABLE_BUBBLE_TO_FULLSCREEN = "com.android.wm.shell.enable_bubble_to_fullscreen"; @@ -28,8 +27,6 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_DYNAMIC_INSETS_FOR_APP_LAUNCH = "com.android.wm.shell.enable_dynamic_insets_for_app_launch"; /** @hide */ - public static final String FLAG_ENABLE_ENTER_SPLIT_REMOVE_BUBBLE = "com.android.wm.shell.enable_enter_split_remove_bubble"; - /** @hide */ public static final String FLAG_ENABLE_FLEXIBLE_SPLIT = "com.android.wm.shell.enable_flexible_split"; /** @hide */ public static final String FLAG_ENABLE_FLEXIBLE_TWO_APP_SPLIT = "com.android.wm.shell.enable_flexible_two_app_split"; @@ -44,8 +41,6 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_PIP2 = "com.android.wm.shell.enable_pip2"; /** @hide */ - public static final String FLAG_ENABLE_PIP_BOX_SHADOWS = "com.android.wm.shell.enable_pip_box_shadows"; - /** @hide */ public static final String FLAG_ENABLE_PIP_UMO_EXPERIENCE = "com.android.wm.shell.enable_pip_umo_experience"; /** @hide */ public static final String FLAG_ENABLE_RECENTS_BOOKEND_TRANSITION = "com.android.wm.shell.enable_recents_bookend_transition"; @@ -54,6 +49,8 @@ public final class Flags { /** @hide */ public static final String FLAG_ENABLE_SHELL_TOP_TASK_TRACKING = "com.android.wm.shell.enable_shell_top_task_tracking"; /** @hide */ + public static final String FLAG_ENABLE_TASK_VIEW_CONTROLLER_CLEANUP = "com.android.wm.shell.enable_task_view_controller_cleanup"; + /** @hide */ public static final String FLAG_ENABLE_TASKBAR_NAVBAR_UNIFICATION = "com.android.wm.shell.enable_taskbar_navbar_unification"; /** @hide */ public static final String FLAG_ENABLE_TASKBAR_ON_PHONES = "com.android.wm.shell.enable_taskbar_on_phones"; @@ -65,8 +62,14 @@ public final class Flags { public static final String FLAG_ONLY_REUSE_BUBBLED_TASK_WHEN_LAUNCHED_FROM_BUBBLE = "com.android.wm.shell.only_reuse_bubbled_task_when_launched_from_bubble"; /** @hide */ public static final String FLAG_TASK_VIEW_REPOSITORY = "com.android.wm.shell.task_view_repository"; - /** @hide */ - public static final String FLAG_TASK_VIEW_TRANSITIONS_REFACTOR = "com.android.wm.shell.task_view_transitions_refactor"; + + + + public static boolean bubbleViewInfoExecutors() { + + return FEATURE_FLAGS.bubbleViewInfoExecutors(); + } + public static boolean enableAutoTaskStackController() { @@ -75,17 +78,13 @@ public final class Flags { } + public static boolean enableBubbleAnything() { return FEATURE_FLAGS.enableBubbleAnything(); } - public static boolean enableBubbleAppCompatFixes() { - - return FEATURE_FLAGS.enableBubbleAppCompatFixes(); - } - public static boolean enableBubbleBar() { @@ -93,23 +92,20 @@ public final class Flags { } + public static boolean enableBubbleBarOnPhones() { return FEATURE_FLAGS.enableBubbleBarOnPhones(); } + public static boolean enableBubbleStashing() { return FEATURE_FLAGS.enableBubbleStashing(); } - public static boolean enableBubbleSwipeUpCleanup() { - - return FEATURE_FLAGS.enableBubbleSwipeUpCleanup(); - } - public static boolean enableBubbleTaskViewListener() { @@ -117,35 +113,34 @@ public final class Flags { } + public static boolean enableBubbleToFullscreen() { return FEATURE_FLAGS.enableBubbleToFullscreen(); } + public static boolean enableBubblesLongPressNavHandle() { return FEATURE_FLAGS.enableBubblesLongPressNavHandle(); } + public static boolean enableCreateAnyBubble() { return FEATURE_FLAGS.enableCreateAnyBubble(); } + public static boolean enableDynamicInsetsForAppLaunch() { return FEATURE_FLAGS.enableDynamicInsetsForAppLaunch(); } - public static boolean enableEnterSplitRemoveBubble() { - - return FEATURE_FLAGS.enableEnterSplitRemoveBubble(); - } - public static boolean enableFlexibleSplit() { @@ -153,47 +148,48 @@ public final class Flags { } + public static boolean enableFlexibleTwoAppSplit() { return FEATURE_FLAGS.enableFlexibleTwoAppSplit(); } + public static boolean enableGsf() { return FEATURE_FLAGS.enableGsf(); } + public static boolean enableMagneticSplitDivider() { return FEATURE_FLAGS.enableMagneticSplitDivider(); } + public static boolean enableNewBubbleAnimations() { return FEATURE_FLAGS.enableNewBubbleAnimations(); } + public static boolean enableOptionalBubbleOverflow() { return FEATURE_FLAGS.enableOptionalBubbleOverflow(); } + public static boolean enablePip2() { return FEATURE_FLAGS.enablePip2(); } - public static boolean enablePipBoxShadows() { - - return FEATURE_FLAGS.enablePipBoxShadows(); - } - public static boolean enablePipUmoExperience() { @@ -201,65 +197,75 @@ public final class Flags { } + public static boolean enableRecentsBookendTransition() { return FEATURE_FLAGS.enableRecentsBookendTransition(); } + public static boolean enableRetrievableBubbles() { return FEATURE_FLAGS.enableRetrievableBubbles(); } + public static boolean enableShellTopTaskTracking() { return FEATURE_FLAGS.enableShellTopTaskTracking(); } + + public static boolean enableTaskViewControllerCleanup() { + + return FEATURE_FLAGS.enableTaskViewControllerCleanup(); + } + + + public static boolean enableTaskbarNavbarUnification() { return FEATURE_FLAGS.enableTaskbarNavbarUnification(); } + public static boolean enableTaskbarOnPhones() { return FEATURE_FLAGS.enableTaskbarOnPhones(); } + public static boolean enableTinyTaskbar() { return FEATURE_FLAGS.enableTinyTaskbar(); } + public static boolean fixMissingUserChangeCallbacks() { return FEATURE_FLAGS.fixMissingUserChangeCallbacks(); } + public static boolean onlyReuseBubbledTaskWhenLaunchedFromBubble() { return FEATURE_FLAGS.onlyReuseBubbledTaskWhenLaunchedFromBubble(); } + public static boolean taskViewRepository() { return FEATURE_FLAGS.taskViewRepository(); } - - public static boolean taskViewTransitionsRefactor() { - - return FEATURE_FLAGS.taskViewTransitionsRefactor(); - } - private static FeatureFlags FEATURE_FLAGS = new FeatureFlagsImpl(); } diff --git a/go/quickstep/src/com/android/launcher3/BuildConfig.java b/go/quickstep/src/com/android/launcher3/BuildConfig.java index 53ccbd30c7..cfcda39e01 100644 --- a/go/quickstep/src/com/android/launcher3/BuildConfig.java +++ b/go/quickstep/src/com/android/launcher3/BuildConfig.java @@ -26,6 +26,11 @@ public final class BuildConfig { */ public static final boolean QSB_ON_FIRST_SCREEN = true; + /** + * Flag to state if the widget on the top of the first screen should be shown. + */ + public static final boolean WIDGET_ON_FIRST_SCREEN = false; + /** * Flag to control various developer centric features */ diff --git a/go/quickstep/src/com/android/launcher3/Launcher3QuickStepGo.java b/go/quickstep/src/com/android/launcher3/Launcher3QuickStepGo.java index bb406a2dd9..8bd0fec2de 100644 --- a/go/quickstep/src/com/android/launcher3/Launcher3QuickStepGo.java +++ b/go/quickstep/src/com/android/launcher3/Launcher3QuickStepGo.java @@ -28,8 +28,8 @@ public class Launcher3QuickStepGo extends QuickstepLauncher { private static final String TAG = "Launcher3QuickStepGo"; @Override - public Stream getSupportedShortcuts(int container) { - Stream shortcuts = super.getSupportedShortcuts(container); + public Stream getSupportedShortcuts() { + Stream shortcuts = super.getSupportedShortcuts(); if (AppSharing.ENABLE_APP_SHARING) { shortcuts = Stream.concat(shortcuts, Stream.of(AppSharing.SHORTCUT_FACTORY)); diff --git a/gradle.properties b/gradle.properties index 371870f473..35700c0a29 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,6 +5,8 @@ android.useAndroidX=true android.enableHiddenApiCheck=false android.hideApiWarning=false +# Disabling this fail ASM Instrumentation. +android.nonTransitiveRClass=true # Improve build performance by enabling R8 parallelism. android.r8.maxWorkers=4 diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index e91051321d..461440ce8a 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,101 +1,68 @@ [versions] -core = "1.17.0" -jdkRelease = "21" - accompanist = "0.37.3" +activityCompose = "1.11.0" +airbnbLottie = "6.6.10" +androidDesugar = "2.1.5" benchmarkMacroJunit4 = "1.4.1" +coil = "2.7.0" +compose = "1.9.2" +composeBom = "2025.09.01" +composeMaterial = "1.9.2" +composeMaterial3 = "1.5.0-alpha04" +composeMaterialIcons = "1.7.8" concurrentFutures = "1.3.0" +constraintlayout = "2.2.1" coreAnimation = "1.0.0" coreKtx = "1.17.0" -error_prone_annotations = "2.44.0" -espressoCore = "3.7.0" -junit = "1.3.0" -junitVersion = "4.13.2" -mockito = "5.14.2" -mockitoKotlin = "5.4.0" -opto = "1.0.18" -protocVersion = "4.33.1" -retrofit = "3.0.0" -room = "2.8.3" -testRules = "1.7.0" -testRunner = "1.7.0" -truth = "1.4.5" - -activityCompose = "1.11.0" -airbnbLottie = "6.7.1" -androidDesugar = "2.1.5" -coil = "2.7.0" -composeBom = "2025.11.00" -compose = "1.9.4" -composeMaterial = "1.9.4" -composeMaterial3 = "1.5.0-alpha08" -composeMaterialIcons = "1.7.8" -composeCompiler = "1.5.15" -constraintlayout = "2.2.1" dagger = "2.57.2" datastore = "1.1.7" dynamicanimation = "1.1.0" +errorProneAnnotations = "2.42.0" +espressoCore = "3.7.0" fuzzywuzzy = "1.4.0" googleMaterial = "1.13.0" graphicsCore = "1.0.3" graphicsPath = "1.0.1" -graphicsShapes = "1.1.0" +graphicsShapes = "1.1.0-rc01" hokoBlur = "1.5.5" javaxInject = "1" +junit = "1.3.0" kdrag0nColorkt = "1.0.5" +kotlinStdlibJdk7 = "2.2.10" kotlinxCoroutines = "1.10.2" kotlinxSerialization = "1.9.0" leakcanaryAndroid = "2.14" libsu = "6.0.0" lifecycle = "2.9.4" materialMotionCompose = "2.0.1" -navigationCompose = "2.9.6" -okhttp = "5.3.0" +navigationCompose = "2.9.5" +okhttp = "5.1.0" +opto = "1.0.18" palette = "1.0.0" persianDate = "1.7.1" preference = "1.2.1" profileinstaller = "1.4.1" +protocVersion = "4.32.1" recyclerview = "1.4.0" reorderable = "2.5.1" restrictionBypass = "2.2" +retrofit = "3.0.0" +rikkaRefine = "4.4.0" +room = "2.8.1" slice = "1.1.0-alpha02" smartspacer = "1.1.2" uiautomator = "2.3.0" window = "1.5.0" -agp = "8.13.1" -baselineprofile = "1.4.1" -kotlin = "2.2.21" -protobuf = "0.9.5" -licensee = "1.14.1" -refine = "4.4.0" -spotless = "8.0.0" - -guava = "33.5.0-android" - -[plugins] -android-application = { id = "com.android.application", version.ref = "agp" } -android-library = { id = "com.android.library", version.ref = "agp" } -android-test = { id = "com.android.test", version.ref = "agp" } -androidx-baselineprofile = { id = "androidx.baselineprofile", version.ref = "baselineprofile" } - -kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } -kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } -kotlin-parcelize = { id = "org.jetbrains.kotlin.plugin.parcelize", version.ref = "kotlin" } -kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } -google-ksp = "com.google.devtools.ksp:2.3.1" -google-protobuf = { id = "com.google.protobuf", version.ref = "protobuf" } -cash-licensee = { id = "app.cash.licensee", version.ref = "licensee" } -rikka-refine = { id = "dev.rikka.tools.refine", version.ref = "refine" } -diffplug-spotless = { id = "com.diffplug.spotless", version.ref = "spotless" } - [libraries] -# AndroidX +accompanist-adaptive = { group = "com.google.accompanist", name = "accompanist-adaptive", version.ref = "accompanist" } +accompanist-drawablepainter = { group = "com.google.accompanist", name = "accompanist-drawablepainter", version.ref = "accompanist" } +accompanist-permissions = { group = "com.google.accompanist", name = "accompanist-permissions", version.ref = "accompanist" } + androidx-activity-compose = { group = "androidx.activity", name = "activity-compose", version.ref = "activityCompose" } androidx-benchmark-macro-junit4 = { module = "androidx.benchmark:benchmark-macro-junit4", version.ref = "benchmarkMacroJunit4" } androidx-concurrent-futures = { module = "androidx.concurrent:concurrent-futures", version.ref = "concurrentFutures" } androidx-constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayout", version.ref = "constraintlayout" } -androidx-core = { module = "androidx.core:core", version.ref = "core" } androidx-core-animation = { module = "androidx.core:core-animation", version.ref = "coreAnimation" } androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "coreKtx" } androidx-datastore-preferences = { group = "androidx.datastore", name = "datastore-preferences", version.ref = "datastore" } @@ -113,100 +80,88 @@ androidx-preference-ktx = { group = "androidx.preference", name = "preference-kt androidx-profileinstaller = { group = "androidx.profileinstaller", name = "profileinstaller", version.ref = "profileinstaller" } androidx-recyclerview = { group = "androidx.recyclerview", name = "recyclerview", version.ref = "recyclerview" } androidx-slice-core = { group = "androidx.slice", name = "slice-core", version.ref = "slice" } -androidx-test-rules = { group = "androidx.test", name = "rules", version.ref = "testRules" } -androidx-test-runner = { group = "androidx.test", name = "runner", version.ref = "testRunner" } androidx-uiautomator = { module = "androidx.test.uiautomator:uiautomator", version.ref = "uiautomator" } androidx-window = { group = "androidx.window", name = "window", version.ref = "window" } -# Compose compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "composeBom" } compose-foundation = { group = "androidx.compose.foundation", name = "foundation", version.ref = "compose" } -compose-foundation-layout = { group = "androidx.compose.foundation", name = "foundation-layout", version.ref = "compose" } compose-material = { group = "androidx.compose.material", name = "material", version.ref = "composeMaterial" } compose-material-icons = { group = "androidx.compose.material", name = "material-icons-extended", version.ref = "composeMaterialIcons" } compose-material3 = { group = "androidx.compose.material3", name = "material3", version.ref = "composeMaterial3" } compose-material3-windowSizeClass = { group = "androidx.compose.material3", name = "material3-window-size-class", version.ref = "composeMaterial3" } -compose-runtime = { group = "androidx.compose.runtime", name = "runtime", version.ref = "compose" } compose-runtime-livedata = { group = "androidx.compose.runtime", name = "runtime-livedata", version.ref = "compose" } compose-ui = { group = "androidx.compose.ui", name = "ui", version.ref = "compose" } compose-ui-google-fonts = { group = "androidx.compose.ui", name = "ui-text-google-fonts", version.ref = "compose" } compose-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics", version.ref = "compose"} -compose-ui-test-junit4 = { group = "androidx.compose.ui", name = "ui-test-junit4", version.ref = "compose" } -compose-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest", version.ref = "compose" } compose-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling", version.ref = "compose" } compose-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview", version.ref = "compose" } compose-ui-util = { group = "androidx.compose.ui", name = "ui-util", version.ref = "compose" } -compose-compiler = { group = "androidx.compose.compiler", name = "compose-compiler", version.ref = "composeCompiler"} -dagger = { group = "com.google.dagger", name = "dagger", version.ref = "dagger" } dagger-compiler = { group = "com.google.dagger", name = "dagger-compiler", version.ref = "dagger" } -dagger-android-processor = { group = "com.google.dagger", name = "dagger-android-processor", version.ref = "dagger" } dagger-hilt-android = { group = "com.google.dagger", name = "hilt-android", version.ref = "dagger" } dagger-hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "dagger" } -# Accompanist -accompanist-adaptive = { group = "com.google.accompanist", name = "accompanist-adaptive", version.ref = "accompanist" } -accompanist-drawablepainter = { group = "com.google.accompanist", name = "accompanist-drawablepainter", version.ref = "accompanist" } -accompanist-permissions = { group = "com.google.accompanist", name = "accompanist-permissions", version.ref = "accompanist" } +google-errorprone-annotations = { module = "com.google.errorprone:error_prone_annotations", version.ref = "errorProneAnnotations" } +google-material = { group = "com.google.android.material", name = "material", version.ref = "googleMaterial" } -# Opto -opto-core = { group = "com.patrykmichalik.opto", name = "core", version.ref = "opto" } +kotlin-stdlib-jdk7 = { module = "org.jetbrains.kotlin:kotlin-stdlib-jdk7", version.ref = "kotlinStdlibJdk7" } +kotlinx-coroutines-android = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-android", version.ref = "kotlinxCoroutines" } +kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinxSerialization" } + +leakcanary-android = { module = "com.squareup.leakcanary:leakcanary-android", version.ref = "leakcanaryAndroid" } opto-compose = { group = "com.patrykmichalik.opto", name = "compose", version.ref = "opto" } +opto-core = { group = "com.patrykmichalik.opto", name = "core", version.ref = "opto" } opto-domain = { group = "com.patrykmichalik.opto", name = "domain", version.ref = "opto" } -# Retrofit & OkHttp protobuf-javalite = { module = "com.google.protobuf:protobuf-javalite", version.ref = "protocVersion" } -retrofit-core = { group = "com.squareup.retrofit2", name = "retrofit", version.ref = "retrofit" } -retrofit-converter-kotlinx = { group = "com.squareup.retrofit2", name = "converter-kotlinx-serialization", version.ref = "retrofit" } -okhttp = { group = "com.squareup.okhttp3", name = "okhttp", version.ref = "okhttp" } -# Room +retrofit-converter-kotlinx = { group = "com.squareup.retrofit2", name = "converter-kotlinx-serialization", version.ref = "retrofit" } +retrofit-core = { group = "com.squareup.retrofit2", name = "retrofit", version.ref = "retrofit" } +squareup-okhttp = { group = "com.squareup.okhttp3", name = "okhttp", version.ref = "okhttp" } + room-compiler = { group = "androidx.room", name = "room-compiler", version.ref = "room" } room-ktx = { group = "androidx.room", name = "room-ktx", version.ref = "room" } room-runtime = { group = "androidx.room", name = "room-runtime", version.ref = "room" } -# Kotlin -kotlin-androidExtensionRuntime = { module = "org.jetbrains.kotlin:kotlin-android-extensions-runtime", version.ref = "kotlin" } -kotlin-parcelizeRuntime = { module = "org.jetbrains.kotlin:kotlin-parcelize-runtime", version.ref = "kotlin" } -kotlin-stdlib-jdk7 = { module = "org.jetbrains.kotlin:kotlin-stdlib-jdk7", version.ref = "kotlin" } -# KotlinX -kotlinx-coroutines-android = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-android", version.ref = "kotlinxCoroutines" } -kotlinx-coroutines-test = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-test", version.ref = "kotlinxCoroutines" } -kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinxSerialization" } - -# Other -android-desugarJdkLibs = { group = "com.android.tools", name = "desugar_jdk_libs", version.ref = "androidDesugar" } airbnb-lottie = { group = "com.airbnb.android", name = "lottie", version.ref = "airbnbLottie" } +android-desugarJdkLibs = { group = "com.android.tools", name = "desugar_jdk_libs", version.ref = "androidDesugar" } chickenhook-restrictionbypass = { group = "com.github.ChickenHook", name = "RestrictionBypass", version.ref = "restrictionBypass" } coil-compose = { group = "io.coil-kt", name = "coil-compose", version.ref = "coil" } -google-errorprone-annotations = { module = "com.google.errorprone:error_prone_annotations", version.ref = "error_prone_annotations" } -google-material = { group = "com.google.android.material", name = "material", version.ref = "googleMaterial" } -google-truth = { group = "com.google.truth", name = "truth", version.ref = "truth" } hoko-blur = { group = "io.github.hokofly", name = "hoko-blur", version.ref = "hokoBlur" } -junit = { group = "junit", name = "junit", version.ref = "junitVersion" } -mockito-android = { group = "org.mockito", name = "mockito-android", version.ref = "mockito" } -mockito-kotlin = { group = "org.mockito.kotlin", name = "mockito-kotlin", version.ref = "mockitoKotlin" } -mockito-robolectric = { group = "org.mockito", name = "mockito-core", version.ref = "mockito" } -mockito-robolectric-bytebuddy = { group = "net.bytebuddy", name = "byte-buddy", version = "1.15.11" } -mockito-robolectric-bytebuddy-agent = { group = "net.bytebuddy", name = "byte-buddy-agent", version = "1.15.11" } javax-inject = { group = "javax.inject", name = "javax.inject", version.ref = "javaxInject" } kdrag0n-colorkt = { group = "dev.kdrag0n", name = "colorkt", version.ref = "kdrag0nColorkt" } -leakcanary-android = { module = "com.squareup.leakcanary:leakcanary-android", version.ref = "leakcanaryAndroid" } -libsu-core = { group = "com.github.topjohnwu.libsu", name = "core", version.ref = "libsu" } libsu-service = { group = "com.github.topjohnwu.libsu", name = "service", version.ref = "libsu" } material-motion-compose = { group = "io.github.fornewid", name = "material-motion-compose-core", version.ref = "materialMotionCompose" } persian-date = { group = "com.github.samanzamani", name = "PersianDate", version.ref = "persianDate" } reorderable = { group = "sh.calvin.reorderable", name = "reorderable", version.ref = "reorderable" } -rikka-annotation = { module = "dev.rikka.tools.refine:annotation", version.ref = "refine" } -rikka-annotation-processor = { module = "dev.rikka.tools.refine:annotation-processor", version.ref = "refine" } -rikka-refine-runtime = { group = "dev.rikka.tools.refine", name = "runtime", version.ref = "refine" } +rikka-annotation = { module = "dev.rikka.tools.refine:annotation", version.ref = "rikkaRefine" } +rikka-annotation-processor = { module = "dev.rikka.tools.refine:annotation-processor", version.ref = "rikkaRefine" } +rikka-refine-runtime = { group = "dev.rikka.tools.refine", name = "runtime", version.ref = "rikkaRefine" } smartspacer-sdk = { group = "com.kieronquinn.smartspacer", name = "sdk-client", version.ref = "smartspacer" } xdrop-fuzzywuzzy = { group = "me.xdrop", name = "fuzzywuzzy", version.ref = "fuzzywuzzy" } -google-guava = { group = "com.google.guava", name = "guava", version.ref = "guava" } [bundles] -accompanist = ["accompanist-adaptive", "accompanist-drawablepainter", "accompanist-permissions"] -graphics = ["androidx-graphics-core", "androidx-graphics-path", "androidx-graphics-shapes"] -opto = ["opto-domain", "opto-core", "opto-compose"] -retrofit = ["retrofit-core", "retrofit-converter-kotlinx", "okhttp"] -room = ["room-runtime", "room-ktx"] +accompanist = [ + "accompanist-adaptive", + "accompanist-drawablepainter", + "accompanist-permissions", +] +graphics = [ + "androidx-graphics-core", + "androidx-graphics-path", + "androidx-graphics-shapes", +] +opto = [ + "opto-domain", + "opto-core", + "opto-compose", +] +retrofit = [ + "retrofit-core", + "retrofit-converter-kotlinx", + "squareup-okhttp", +] +room = [ + "room-runtime", + "room-ktx", +] diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 49ab6fc3f2..6a38a8cea6 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=df67a32e86e3276d011735facb1535f64d0d88df84fa87521e90becc2d735444 -distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-bin.zip +distributionSha256Sum=a17ddd85a26b6a7f5ddb71ff8b05fc5104c0202c6e64782429790c933686c806 +distributionUrl=https\://services.gradle.org/distributions/gradle-9.1.0-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/hidden-api/build.gradle b/hidden-api/build.gradle index 6a486f51bd..2fc60ebe74 100644 --- a/hidden-api/build.gradle +++ b/hidden-api/build.gradle @@ -1,5 +1,5 @@ plugins { - alias(libs.plugins.android.library) + id 'com.android.library' } android { diff --git a/lawnchair/assets/google_fonts.json b/lawnchair/assets/google_fonts.json index 0d6589bc1d..878aced1ea 100644 --- a/lawnchair/assets/google_fonts.json +++ b/lawnchair/assets/google_fonts.json @@ -1,46894 +1,42159 @@ { - "kind": "webfonts#webfontList", - "items": [ - { - "family": "ABeeZee", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/abeezee/v23/esDR31xSG-6AGleN6tKukbcHCpE.ttf", - "italic": "https://fonts.gstatic.com/s/abeezee/v23/esDT31xSG-6AGleN2tCklZUCGpG-GQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/abeezee/v23/esDR31xSG-6AGleN2tOklQ.ttf" - }, - { - "family": "ADLaM Display", - "variants": [ - "regular" - ], - "subsets": [ - "adlam", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/adlamdisplay/v1/KFOhCnGXkPOLlhx6jD8_b1ZECsHYkYBPY3o.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/adlamdisplay/v1/KFOhCnGXkPOLlhx6jD8_b1ZEOsDSlQ.ttf" - }, - { - "family": "AR One Sans", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/aronesans/v6/TUZezwhrmbFp0Srr_tH6fv6RcUejHO_u7GF5aXfv-U2QzBLF6gslWn_9DW03no5mBF4.ttf", - "500": "https://fonts.gstatic.com/s/aronesans/v6/TUZezwhrmbFp0Srr_tH6fv6RcUejHO_u7GF5aXfv-U2QzBLF6gslWk39DW03no5mBF4.ttf", - "600": "https://fonts.gstatic.com/s/aronesans/v6/TUZezwhrmbFp0Srr_tH6fv6RcUejHO_u7GF5aXfv-U2QzBLF6gslWqH6DW03no5mBF4.ttf", - "700": "https://fonts.gstatic.com/s/aronesans/v6/TUZezwhrmbFp0Srr_tH6fv6RcUejHO_u7GF5aXfv-U2QzBLF6gslWpj6DW03no5mBF4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/aronesans/v6/TUZezwhrmbFp0Srr_tH6fv6RcUejHO_u7GF5aXfv-U2QzBLF6gslWn_9PWw9mg.ttf" - }, - { - "family": "Abel", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/abel/v18/MwQ5bhbm2POE6VhLPJp6qGI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/abel/v18/MwQ5bhbm2POE2VlBOA.ttf" - }, - { - "family": "Abhaya Libre", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "sinhala" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/abhayalibre/v18/e3tmeuGtX-Co5MNzeAOqinEge0PWovdU4w.ttf", - "500": "https://fonts.gstatic.com/s/abhayalibre/v18/e3t5euGtX-Co5MNzeAOqinEYj2ryqtxI6oYtBA.ttf", - "600": "https://fonts.gstatic.com/s/abhayalibre/v18/e3t5euGtX-Co5MNzeAOqinEYo23yqtxI6oYtBA.ttf", - "700": "https://fonts.gstatic.com/s/abhayalibre/v18/e3t5euGtX-Co5MNzeAOqinEYx2zyqtxI6oYtBA.ttf", - "800": "https://fonts.gstatic.com/s/abhayalibre/v18/e3t5euGtX-Co5MNzeAOqinEY22_yqtxI6oYtBA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/abhayalibre/v18/e3tmeuGtX-Co5MNzeAOqinEQeknS.ttf" - }, - { - "family": "Aboreto", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/aboreto/v2/5DCXAKLhwDDQ4N8blKTeA2yuxSY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/aboreto/v2/5DCXAKLhwDDQ4N8bpKXUBw.ttf" - }, - { - "family": "Abril Fatface", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/abrilfatface/v25/zOL64pLDlL1D99S8g8PtiKchm-BsjOLhZBY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/abrilfatface/v25/zOL64pLDlL1D99S8g8PtiKchq-FmiA.ttf" - }, - { - "family": "Abyssinica SIL", - "variants": [ - "regular" - ], - "subsets": [ - "ethiopic", - "latin", - "latin-ext" - ], - "version": "v9", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/abyssinicasil/v9/oY1H8ezOqK7iI3rK_45WKoc8J6UZBFOVAXuI.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/abyssinicasil/v9/oY1H8ezOqK7iI3rK_45WKoc8J5UYDlc.ttf" - }, - { - "family": "Aclonica", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/aclonica/v25/K2FyfZJVlfNNSEBXGb7TCI6oBjLz.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/aclonica/v25/K2FyfZJVlfNNSEBXGY7SAoo.ttf" - }, - { - "family": "Acme", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/acme/v27/RrQfboBx-C5_bx3Lb23lzLk.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/acme/v27/RrQfboBx-C5_XxzBaw.ttf" - }, - { - "family": "Actor", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/actor/v18/wEOzEBbCkc5cO3ekXygtUMIO.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/actor/v18/wEOzEBbCkc5cO0elVSw.ttf" - }, - { - "family": "Adamina", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/adamina/v22/j8_r6-DH1bjoc-dwu-reETl4Bno.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/adamina/v22/j8_r6-DH1bjoc-dwi-vUFQ.ttf" - }, - { - "family": "Advent Pro", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext" - ], - "version": "v33", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/adventpro/v33/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLQyJPTJoonw1aBA.ttf", - "200": "https://fonts.gstatic.com/s/adventpro/v33/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLwyNPTJoonw1aBA.ttf", - "300": "https://fonts.gstatic.com/s/adventpro/v33/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLHSNPTJoonw1aBA.ttf", - "regular": "https://fonts.gstatic.com/s/adventpro/v33/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLQyNPTJoonw1aBA.ttf", - "500": "https://fonts.gstatic.com/s/adventpro/v33/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLcSNPTJoonw1aBA.ttf", - "600": "https://fonts.gstatic.com/s/adventpro/v33/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLnSRPTJoonw1aBA.ttf", - "700": "https://fonts.gstatic.com/s/adventpro/v33/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLpCRPTJoonw1aBA.ttf", - "800": "https://fonts.gstatic.com/s/adventpro/v33/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLwyRPTJoonw1aBA.ttf", - "900": "https://fonts.gstatic.com/s/adventpro/v33/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpL6iRPTJoonw1aBA.ttf", - "100italic": "https://fonts.gstatic.com/s/adventpro/v33/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CnDpAsvQhKBH4C.ttf", - "200italic": "https://fonts.gstatic.com/s/adventpro/v33/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AnD5AsvQhKBH4C.ttf", - "300italic": "https://fonts.gstatic.com/s/adventpro/v33/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2D5D5AsvQhKBH4C.ttf", - "italic": "https://fonts.gstatic.com/s/adventpro/v33/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CnD5AsvQhKBH4C.ttf", - "500italic": "https://fonts.gstatic.com/s/adventpro/v33/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CVD5AsvQhKBH4C.ttf", - "600italic": "https://fonts.gstatic.com/s/adventpro/v33/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2B5CJAsvQhKBH4C.ttf", - "700italic": "https://fonts.gstatic.com/s/adventpro/v33/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2BACJAsvQhKBH4C.ttf", - "800italic": "https://fonts.gstatic.com/s/adventpro/v33/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AnCJAsvQhKBH4C.ttf", - "900italic": "https://fonts.gstatic.com/s/adventpro/v33/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AOCJAsvQhKBH4C.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/adventpro/v33/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLQyN_TZAs.ttf" - }, - { - "family": "Afacad", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/afacad/v3/6NUK8FKMIQOGaw6wjYT7ZHG_zsBBfhXtWmA08mCgdfM.ttf", - "500": "https://fonts.gstatic.com/s/afacad/v3/6NUK8FKMIQOGaw6wjYT7ZHG_zsBBfiftWmA08mCgdfM.ttf", - "600": "https://fonts.gstatic.com/s/afacad/v3/6NUK8FKMIQOGaw6wjYT7ZHG_zsBBfsvqWmA08mCgdfM.ttf", - "700": "https://fonts.gstatic.com/s/afacad/v3/6NUK8FKMIQOGaw6wjYT7ZHG_zsBBfvLqWmA08mCgdfM.ttf", - "italic": "https://fonts.gstatic.com/s/afacad/v3/6NUI8FKMIQOGaw6ahLYEvBjUVG5Ga92usiM-9kKlZfNfuw.ttf", - "500italic": "https://fonts.gstatic.com/s/afacad/v3/6NUI8FKMIQOGaw6ahLYEvBjUVG5Ga92ugCM-9kKlZfNfuw.ttf", - "600italic": "https://fonts.gstatic.com/s/afacad/v3/6NUI8FKMIQOGaw6ahLYEvBjUVG5Ga92ubCQ-9kKlZfNfuw.ttf", - "700italic": "https://fonts.gstatic.com/s/afacad/v3/6NUI8FKMIQOGaw6ahLYEvBjUVG5Ga92uVSQ-9kKlZfNfuw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/afacad/v3/6NUK8FKMIQOGaw6wjYT7ZHG_zsBBfhXtamE-9g.ttf" - }, - { - "family": "Afacad Flux", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/afacadflux/v4/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsUwWZaRqQsJr67E.ttf", - "200": "https://fonts.gstatic.com/s/afacadflux/v4/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edscwXZaRqQsJr67E.ttf", - "300": "https://fonts.gstatic.com/s/afacadflux/v4/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsRIXZaRqQsJr67E.ttf", - "regular": "https://fonts.gstatic.com/s/afacadflux/v4/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsUwXZaRqQsJr67E.ttf", - "500": "https://fonts.gstatic.com/s/afacadflux/v4/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsX4XZaRqQsJr67E.ttf", - "600": "https://fonts.gstatic.com/s/afacadflux/v4/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsZIQZaRqQsJr67E.ttf", - "700": "https://fonts.gstatic.com/s/afacadflux/v4/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsasQZaRqQsJr67E.ttf", - "800": "https://fonts.gstatic.com/s/afacadflux/v4/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edscwQZaRqQsJr67E.ttf", - "900": "https://fonts.gstatic.com/s/afacadflux/v4/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edseUQZaRqQsJr67E.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/afacadflux/v4/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsUwXVaVgRg.ttf" - }, - { - "family": "Agbalumo", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic-ext", - "ethiopic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/agbalumo/v6/55xvey5uMdT2N37KZcMFirl08KDJ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/agbalumo/v6/55xvey5uMdT2N37KZfMEgL0.ttf" - }, - { - "family": "Agdasima", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/agdasima/v5/PN_zRfyxp2f1fUCgAMg6rzjb_-Da.ttf", - "700": "https://fonts.gstatic.com/s/agdasima/v5/PN_0Rfyxp2f1fUCgAPCGgBzT1PzTz2Mi.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/agdasima/v5/PN_zRfyxp2f1fUCgAPg7pTw.ttf" - }, - { - "family": "Agu Display", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/agudisplay/v3/iJWXBXKbbi6BeMC1_RX7qF_V5E7aciGRRWUwX4ftka9LM6y8Zg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/agudisplay/v3/iJWXBXKbbi6BeMC1_RX7qF_V5E7aciGRRWUwX4fdkKVP.ttf" - }, - { - "family": "Aguafina Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/aguafinascript/v24/If2QXTv_ZzSxGIO30LemWEOmt1bHqs4pgicOrg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/aguafinascript/v24/If2QXTv_ZzSxGIO30LemWEOmt1b3q8Qt.ttf" - }, - { - "family": "Akatab", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "tifinagh" - ], - "version": "v9", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/akatab/v9/VuJwdNrK3Z7gqJEPWIz5NIh-YA.ttf", - "500": "https://fonts.gstatic.com/s/akatab/v9/VuJzdNrK3Z7gqJE3rKXdPKNiaRpFvg.ttf", - "600": "https://fonts.gstatic.com/s/akatab/v9/VuJzdNrK3Z7gqJE3gKLdPKNiaRpFvg.ttf", - "700": "https://fonts.gstatic.com/s/akatab/v9/VuJzdNrK3Z7gqJE35KPdPKNiaRpFvg.ttf", - "800": "https://fonts.gstatic.com/s/akatab/v9/VuJzdNrK3Z7gqJE3-KDdPKNiaRpFvg.ttf", - "900": "https://fonts.gstatic.com/s/akatab/v9/VuJzdNrK3Z7gqJE33KHdPKNiaRpFvg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/akatab/v9/VuJwdNrK3Z7gqJE_WYb9.ttf" - }, - { - "family": "Akaya Kanadaka", - "variants": [ - "regular" - ], - "subsets": [ - "kannada", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/akayakanadaka/v18/N0bM2S5CPO5oOQqvazoRRb-8-PfRS5VBBSSF.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/akayakanadaka/v18/N0bM2S5CPO5oOQqvazoRRb-8-MfQQZE.ttf" - }, - { - "family": "Akaya Telivigala", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "telugu" - ], - "version": "v28", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/akayatelivigala/v28/lJwc-oo_iG9wXqU3rCTD395tp0uifdLdsIH0YH8.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/akayatelivigala/v28/lJwc-oo_iG9wXqU3rCTD395tp0uiTdPXtA.ttf" - }, - { - "family": "Akronim", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/akronim/v23/fdN-9sqWtWZZlHRp-gBxkFYN-a8.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/akronim/v23/fdN-9sqWtWZZlHRpygF7lA.ttf" - }, - { - "family": "Akshar", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/akshar/v17/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSSgFy9CY94XsnPc.ttf", - "regular": "https://fonts.gstatic.com/s/akshar/v17/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSXYFy9CY94XsnPc.ttf", - "500": "https://fonts.gstatic.com/s/akshar/v17/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSUQFy9CY94XsnPc.ttf", - "600": "https://fonts.gstatic.com/s/akshar/v17/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSagCy9CY94XsnPc.ttf", - "700": "https://fonts.gstatic.com/s/akshar/v17/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSZECy9CY94XsnPc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/akshar/v17/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSXYF-9GS8w.ttf" - }, - { - "family": "Aladin", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/aladin/v26/ZgNSjPJFPrvJV5f16Sf4pGT2Ng.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/aladin/v26/ZgNSjPJFPrvJV5fF6C38.ttf" - }, - { - "family": "Alan Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-09-18", - "files": { - "300": "https://fonts.gstatic.com/s/alansans/v1/zOLt4pbDmq5Eu6ebjMSx4sywa339j__gfIHoxyB1jBwiRr0.ttf", - "regular": "https://fonts.gstatic.com/s/alansans/v1/zOLt4pbDmq5Eu6ebjMSx4sywa339j__gfN_oxyB1jBwiRr0.ttf", - "500": "https://fonts.gstatic.com/s/alansans/v1/zOLt4pbDmq5Eu6ebjMSx4sywa339j__gfO3oxyB1jBwiRr0.ttf", - "600": "https://fonts.gstatic.com/s/alansans/v1/zOLt4pbDmq5Eu6ebjMSx4sywa339j__gfAHvxyB1jBwiRr0.ttf", - "700": "https://fonts.gstatic.com/s/alansans/v1/zOLt4pbDmq5Eu6ebjMSx4sywa339j__gfDjvxyB1jBwiRr0.ttf", - "800": "https://fonts.gstatic.com/s/alansans/v1/zOLt4pbDmq5Eu6ebjMSx4sywa339j__gfF_vxyB1jBwiRr0.ttf", - "900": "https://fonts.gstatic.com/s/alansans/v1/zOLt4pbDmq5Eu6ebjMSx4sywa339j__gfHbvxyB1jBwiRr0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alansans/v1/zOLt4pbDmq5Eu6ebjMSx4sywa339j__gfN_o9yF_iA.ttf" - }, - { - "family": "Alata", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/alata/v12/PbytFmztEwbIofe6xKcRQEOX.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alata/v12/PbytFmztEwbIoce7zqM.ttf" - }, - { - "family": "Alatsi", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/alatsi/v14/TK3iWkUJAxQ2nLNGHjUHte5fKg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alatsi/v14/TK3iWkUJAxQ2nLN2Hz8D.ttf" - }, - { - "family": "Albert Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/albertsans/v4/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHq5L_rI32TxAj1g.ttf", - "200": "https://fonts.gstatic.com/s/albertsans/v4/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHK5P_rI32TxAj1g.ttf", - "300": "https://fonts.gstatic.com/s/albertsans/v4/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSH9ZP_rI32TxAj1g.ttf", - "regular": "https://fonts.gstatic.com/s/albertsans/v4/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHq5P_rI32TxAj1g.ttf", - "500": "https://fonts.gstatic.com/s/albertsans/v4/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHmZP_rI32TxAj1g.ttf", - "600": "https://fonts.gstatic.com/s/albertsans/v4/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHdZT_rI32TxAj1g.ttf", - "700": "https://fonts.gstatic.com/s/albertsans/v4/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHTJT_rI32TxAj1g.ttf", - "800": "https://fonts.gstatic.com/s/albertsans/v4/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHK5T_rI32TxAj1g.ttf", - "900": "https://fonts.gstatic.com/s/albertsans/v4/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHApT_rI32TxAj1g.ttf", - "100italic": "https://fonts.gstatic.com/s/albertsans/v4/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9AX7ofybRUz1r5t.ttf", - "200italic": "https://fonts.gstatic.com/s/albertsans/v4/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9CX74fybRUz1r5t.ttf", - "300italic": "https://fonts.gstatic.com/s/albertsans/v4/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9BJ74fybRUz1r5t.ttf", - "italic": "https://fonts.gstatic.com/s/albertsans/v4/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9AX74fybRUz1r5t.ttf", - "500italic": "https://fonts.gstatic.com/s/albertsans/v4/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9Al74fybRUz1r5t.ttf", - "600italic": "https://fonts.gstatic.com/s/albertsans/v4/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9DJ6IfybRUz1r5t.ttf", - "700italic": "https://fonts.gstatic.com/s/albertsans/v4/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9Dw6IfybRUz1r5t.ttf", - "800italic": "https://fonts.gstatic.com/s/albertsans/v4/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9CX6IfybRUz1r5t.ttf", - "900italic": "https://fonts.gstatic.com/s/albertsans/v4/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9C-6IfybRUz1r5t.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/albertsans/v4/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHq5PPrYfy.ttf" - }, - { - "family": "Aldrich", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/aldrich/v22/MCoTzAn-1s3IGyJMZaAS3pP5H_E.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/aldrich/v22/MCoTzAn-1s3IGyJMVaEY2g.ttf" - }, - { - "family": "Alef", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "hebrew", - "latin" - ], - "version": "v24", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/alef/v24/FeVfS0NQpLYgrjJbC5FxxbU.ttf", - "700": "https://fonts.gstatic.com/s/alef/v24/FeVQS0NQpLYglo50L5la2bxii28.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alef/v24/FeVfS0NQpLYgnjNRDw.ttf" - }, - { - "family": "Alegreya", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v39", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/alegreya/v39/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNG9hUI_KCisSGVrw.ttf", - "500": "https://fonts.gstatic.com/s/alegreya/v39/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGxBUI_KCisSGVrw.ttf", - "600": "https://fonts.gstatic.com/s/alegreya/v39/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGKBII_KCisSGVrw.ttf", - "700": "https://fonts.gstatic.com/s/alegreya/v39/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGERII_KCisSGVrw.ttf", - "800": "https://fonts.gstatic.com/s/alegreya/v39/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGdhII_KCisSGVrw.ttf", - "900": "https://fonts.gstatic.com/s/alegreya/v39/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGXxII_KCisSGVrw.ttf", - "italic": "https://fonts.gstatic.com/s/alegreya/v39/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlbgv6qmkySFr9V9.ttf", - "500italic": "https://fonts.gstatic.com/s/alegreya/v39/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlbSv6qmkySFr9V9.ttf", - "600italic": "https://fonts.gstatic.com/s/alegreya/v39/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlY-uKqmkySFr9V9.ttf", - "700italic": "https://fonts.gstatic.com/s/alegreya/v39/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlYHuKqmkySFr9V9.ttf", - "800italic": "https://fonts.gstatic.com/s/alegreya/v39/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlZguKqmkySFr9V9.ttf", - "900italic": "https://fonts.gstatic.com/s/alegreya/v39/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlZJuKqmkySFr9V9.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alegreya/v39/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNG9hU4_aqm.ttf" - }, - { - "family": "Alegreya SC", - "variants": [ - "regular", - "italic", - "500", - "500italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/alegreyasc/v26/taiOGmRtCJ62-O0HhNEa-a6o05E5abe_.ttf", - "italic": "https://fonts.gstatic.com/s/alegreyasc/v26/taiMGmRtCJ62-O0HhNEa-Z6q2ZUbbKe_DGs.ttf", - "500": "https://fonts.gstatic.com/s/alegreyasc/v26/taiTGmRtCJ62-O0HhNEa-ZZc-rUxQqu2FXKD.ttf", - "500italic": "https://fonts.gstatic.com/s/alegreyasc/v26/taiRGmRtCJ62-O0HhNEa-Z6q4WEySK-UEGKDBz4.ttf", - "700": "https://fonts.gstatic.com/s/alegreyasc/v26/taiTGmRtCJ62-O0HhNEa-ZYU_LUxQqu2FXKD.ttf", - "700italic": "https://fonts.gstatic.com/s/alegreyasc/v26/taiRGmRtCJ62-O0HhNEa-Z6q4Sk0SK-UEGKDBz4.ttf", - "800": "https://fonts.gstatic.com/s/alegreyasc/v26/taiTGmRtCJ62-O0HhNEa-ZYI_7UxQqu2FXKD.ttf", - "800italic": "https://fonts.gstatic.com/s/alegreyasc/v26/taiRGmRtCJ62-O0HhNEa-Z6q4TU3SK-UEGKDBz4.ttf", - "900": "https://fonts.gstatic.com/s/alegreyasc/v26/taiTGmRtCJ62-O0HhNEa-ZYs_rUxQqu2FXKD.ttf", - "900italic": "https://fonts.gstatic.com/s/alegreyasc/v26/taiRGmRtCJ62-O0HhNEa-Z6q4RE2SK-UEGKDBz4.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alegreyasc/v26/taiOGmRtCJ62-O0HhNEa-Z6p2ZU.ttf" - }, - { - "family": "Alegreya Sans", - "variants": [ - "100", - "100italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUt9_-1phKLFgshYDvh6Vwt5TltuGdShm5bsg.ttf", - "100italic": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUv9_-1phKLFgshYDvh6Vwt7V9V3G1WpGtLsgu7.ttf", - "300": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUu9_-1phKLFgshYDvh6Vwt5fFPmE18imdCqxI.ttf", - "300italic": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUo9_-1phKLFgshYDvh6Vwt7V9VFE92jkVHuxKiBA.ttf", - "regular": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUz9_-1phKLFgshYDvh6Vwt3V1nvEVXlm4.ttf", - "italic": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUt9_-1phKLFgshYDvh6Vwt7V9tuGdShm5bsg.ttf", - "500": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUu9_-1phKLFgshYDvh6Vwt5alOmE18imdCqxI.ttf", - "500italic": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUo9_-1phKLFgshYDvh6Vwt7V9VTE52jkVHuxKiBA.ttf", - "700": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUu9_-1phKLFgshYDvh6Vwt5eFImE18imdCqxI.ttf", - "700italic": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUo9_-1phKLFgshYDvh6Vwt7V9VBEh2jkVHuxKiBA.ttf", - "800": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUu9_-1phKLFgshYDvh6Vwt5f1LmE18imdCqxI.ttf", - "800italic": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUo9_-1phKLFgshYDvh6Vwt7V9VGEt2jkVHuxKiBA.ttf", - "900": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUu9_-1phKLFgshYDvh6Vwt5dlKmE18imdCqxI.ttf", - "900italic": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUo9_-1phKLFgshYDvh6Vwt7V9VPEp2jkVHuxKiBA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alegreyasans/v26/5aUz9_-1phKLFgshYDvh6Vwt7VxtuA.ttf" - }, - { - "family": "Alegreya Sans SC", - "variants": [ - "100", - "100italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGn4-RGJqfMvt7P8FUr0Q1j-Hf1Dipl8g5FPYtmMg.ttf", - "100italic": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGl4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdlgRBH452Mvds.ttf", - "300": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DuJH0iRrMYJ_K-4.ttf", - "300italic": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdXiZhNaB6O-51OA.ttf", - "regular": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGh4-RGJqfMvt7P8FUr0Q1j-Hf1Nk5v9ixALYs.ttf", - "italic": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGn4-RGJqfMvt7P8FUr0Q1j-Hf1Bkxl8g5FPYtmMg.ttf", - "500": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DrpG0iRrMYJ_K-4.ttf", - "500italic": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdBidhNaB6O-51OA.ttf", - "700": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DvJA0iRrMYJ_K-4.ttf", - "700italic": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdTiFhNaB6O-51OA.ttf", - "800": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1Du5D0iRrMYJ_K-4.ttf", - "800italic": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdUiJhNaB6O-51OA.ttf", - "900": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DspC0iRrMYJ_K-4.ttf", - "900italic": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxddiNhNaB6O-51OA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGh4-RGJqfMvt7P8FUr0Q1j-Hf1Bk9l8g.ttf" - }, - { - "family": "Aleo", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/aleo/v16/c4m61nF8G8_s6gHhIOX0IYBo_KJ3G2P9HI4qCBtJ.ttf", - "200": "https://fonts.gstatic.com/s/aleo/v16/c4m61nF8G8_s6gHhIOX0IYBo_KL3GmP9HI4qCBtJ.ttf", - "300": "https://fonts.gstatic.com/s/aleo/v16/c4m61nF8G8_s6gHhIOX0IYBo_KIpGmP9HI4qCBtJ.ttf", - "regular": "https://fonts.gstatic.com/s/aleo/v16/c4m61nF8G8_s6gHhIOX0IYBo_KJ3GmP9HI4qCBtJ.ttf", - "500": "https://fonts.gstatic.com/s/aleo/v16/c4m61nF8G8_s6gHhIOX0IYBo_KJFGmP9HI4qCBtJ.ttf", - "600": "https://fonts.gstatic.com/s/aleo/v16/c4m61nF8G8_s6gHhIOX0IYBo_KKpHWP9HI4qCBtJ.ttf", - "700": "https://fonts.gstatic.com/s/aleo/v16/c4m61nF8G8_s6gHhIOX0IYBo_KKQHWP9HI4qCBtJ.ttf", - "800": "https://fonts.gstatic.com/s/aleo/v16/c4m61nF8G8_s6gHhIOX0IYBo_KL3HWP9HI4qCBtJ.ttf", - "900": "https://fonts.gstatic.com/s/aleo/v16/c4m61nF8G8_s6gHhIOX0IYBo_KLeHWP9HI4qCBtJ.ttf", - "100italic": "https://fonts.gstatic.com/s/aleo/v16/c4m81nF8G8_swAjT3z2dShrG-7e_WYu_FooIDQtJbok.ttf", - "200italic": "https://fonts.gstatic.com/s/aleo/v16/c4m81nF8G8_swAjT3z2dShrG-7e_WQu-FooIDQtJbok.ttf", - "300italic": "https://fonts.gstatic.com/s/aleo/v16/c4m81nF8G8_swAjT3z2dShrG-7e_WdW-FooIDQtJbok.ttf", - "italic": "https://fonts.gstatic.com/s/aleo/v16/c4m81nF8G8_swAjT3z2dShrG-7e_WYu-FooIDQtJbok.ttf", - "500italic": "https://fonts.gstatic.com/s/aleo/v16/c4m81nF8G8_swAjT3z2dShrG-7e_Wbm-FooIDQtJbok.ttf", - "600italic": "https://fonts.gstatic.com/s/aleo/v16/c4m81nF8G8_swAjT3z2dShrG-7e_WVW5FooIDQtJbok.ttf", - "700italic": "https://fonts.gstatic.com/s/aleo/v16/c4m81nF8G8_swAjT3z2dShrG-7e_WWy5FooIDQtJbok.ttf", - "800italic": "https://fonts.gstatic.com/s/aleo/v16/c4m81nF8G8_swAjT3z2dShrG-7e_WQu5FooIDQtJbok.ttf", - "900italic": "https://fonts.gstatic.com/s/aleo/v16/c4m81nF8G8_swAjT3z2dShrG-7e_WSK5FooIDQtJbok.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/aleo/v16/c4m61nF8G8_s6gHhIOX0IYBo_KJ3GlP8Foo.ttf" - }, - { - "family": "Alex Brush", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/alexbrush/v23/SZc83FzrJKuqFbwMKk6EtUL57DtOmCc.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alexbrush/v23/SZc83FzrJKuqFbwMKk6EhUPz6A.ttf" - }, - { - "family": "Alexandria", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/alexandria/v6/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9r7T6bHHJ8BRq0b.ttf", - "200": "https://fonts.gstatic.com/s/alexandria/v6/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9p7TqbHHJ8BRq0b.ttf", - "300": "https://fonts.gstatic.com/s/alexandria/v6/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9qlTqbHHJ8BRq0b.ttf", - "regular": "https://fonts.gstatic.com/s/alexandria/v6/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9r7TqbHHJ8BRq0b.ttf", - "500": "https://fonts.gstatic.com/s/alexandria/v6/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9rJTqbHHJ8BRq0b.ttf", - "600": "https://fonts.gstatic.com/s/alexandria/v6/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9olSabHHJ8BRq0b.ttf", - "700": "https://fonts.gstatic.com/s/alexandria/v6/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9ocSabHHJ8BRq0b.ttf", - "800": "https://fonts.gstatic.com/s/alexandria/v6/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9p7SabHHJ8BRq0b.ttf", - "900": "https://fonts.gstatic.com/s/alexandria/v6/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9pSSabHHJ8BRq0b.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alexandria/v6/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9r7TpbGFps.ttf" - }, - { - "family": "Alfa Slab One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/alfaslabone/v21/6NUQ8FmMKwSEKjnm5-4v-4Jh6dVretWvYmE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alfaslabone/v21/6NUQ8FmMKwSEKjnm5-4v-4Jh2dRhfg.ttf" - }, - { - "family": "Alice", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/alice/v21/OpNCnoEEmtHa6FcJpA_chzJ0.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alice/v21/OpNCnoEEmtHa6GcIrgs.ttf" - }, - { - "family": "Alike", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/alike/v22/HI_EiYEYI6BIoEjBSZXAQ4-d.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alike/v22/HI_EiYEYI6BIoHjAQ5E.ttf" - }, - { - "family": "Alike Angular", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v27", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/alikeangular/v27/3qTrojWunjGQtEBlIcwMbSoI3kM6bB7FKjE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alikeangular/v27/3qTrojWunjGQtEBlIcwMbSoI7kIwaA.ttf" - }, - { - "family": "Alkalami", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/alkalami/v8/zOL_4pfDmqRL95WXi5eLw8BMuvhH.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alkalami/v8/zOL_4pfDmqRL95WXi6eKycQ.ttf" - }, - { - "family": "Alkatra", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "bengali", - "devanagari", - "latin", - "latin-ext", - "oriya" - ], - "version": "v5", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/alkatra/v5/r05EGLZA5qhCYsyJbuChFuK48Medzngmu7cPrNDVemxE.ttf", - "500": "https://fonts.gstatic.com/s/alkatra/v5/r05EGLZA5qhCYsyJbuChFuK48MedzngUu7cPrNDVemxE.ttf", - "600": "https://fonts.gstatic.com/s/alkatra/v5/r05EGLZA5qhCYsyJbuChFuK48Medznj4vLcPrNDVemxE.ttf", - "700": "https://fonts.gstatic.com/s/alkatra/v5/r05EGLZA5qhCYsyJbuChFuK48MedznjBvLcPrNDVemxE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alkatra/v5/r05EGLZA5qhCYsyJbuChFuK48Medzngmu4cOptQ.ttf" - }, - { - "family": "Allan", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/allan/v26/ea8XadU7WuTxEtb2P9SF8nZE.ttf", - "700": "https://fonts.gstatic.com/s/allan/v26/ea8aadU7WuTxEu5KEPCN2WpNgEKU.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/allan/v26/ea8XadU7WuTxEub3NdA.ttf" - }, - { - "family": "Allerta", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/allerta/v19/TwMO-IAHRlkbx940UnEdSQqO5uY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/allerta/v19/TwMO-IAHRlkbx940YnAXTQ.ttf" - }, - { - "family": "Allerta Stencil", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/allertastencil/v24/HTx0L209KT-LmIE9N7OR6eiycOeF-zz313DuvQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/allertastencil/v24/HTx0L209KT-LmIE9N7OR6eiycOe1-jbz.ttf" - }, - { - "family": "Allison", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/allison/v13/X7nl4b88AP2nkbvZOCaQ4MTgAgk.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/allison/v13/X7nl4b88AP2nkbvZCCea5A.ttf" - }, - { - "family": "Allura", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/allura/v23/9oRPNYsQpS4zjuAPjAIXPtrrGA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/allura/v23/9oRPNYsQpS4zjuA_jQgT.ttf" - }, - { - "family": "Almarai", - "variants": [ - "300", - "regular", - "700", - "800" - ], - "subsets": [ - "arabic", - "latin" - ], - "version": "v19", - "lastModified": "2025-09-02", - "files": { - "300": "https://fonts.gstatic.com/s/almarai/v19/tssoApxBaigK_hnnS_anhnicoq72sXg.ttf", - "regular": "https://fonts.gstatic.com/s/almarai/v19/tsstApxBaigK_hnnc1qPonC3vqc.ttf", - "700": "https://fonts.gstatic.com/s/almarai/v19/tssoApxBaigK_hnnS-aghnicoq72sXg.ttf", - "800": "https://fonts.gstatic.com/s/almarai/v19/tssoApxBaigK_hnnS_qjhnicoq72sXg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/almarai/v19/tsstApxBaigK_hnnQ1uFpg.ttf" - }, - { - "family": "Almendra", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/almendra/v28/H4ckBXKAlMnTn0CskyY6wr-wg763.ttf", - "italic": "https://fonts.gstatic.com/s/almendra/v28/H4ciBXKAlMnTn0CskxY4yLuShq63czE.ttf", - "700": "https://fonts.gstatic.com/s/almendra/v28/H4cjBXKAlMnTn0Cskx6G7Zu4qKK-aihq.ttf", - "700italic": "https://fonts.gstatic.com/s/almendra/v28/H4chBXKAlMnTn0CskxY48Ae9oqacbzhqDtg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/almendra/v28/H4ckBXKAlMnTn0CskxY7yLs.ttf" - }, - { - "family": "Almendra Display", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v33", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/almendradisplay/v33/0FlPVOGWl1Sb4O3tETtADHRRlZhzXS_eTyer338.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/almendradisplay/v33/0FlPVOGWl1Sb4O3tETtADHRRlZhzbS7USw.ttf" - }, - { - "family": "Almendra SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v31", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/almendrasc/v31/Iure6Yx284eebowr7hbyTZZJprVA4XQ0.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/almendrasc/v31/Iure6Yx284eebowr7hbyTaZIrLE.ttf" - }, - { - "family": "Alumni Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/alumnisans/v20/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9OO5QqFsJ3C8qng.ttf", - "200": "https://fonts.gstatic.com/s/alumnisans/v20/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9uO9QqFsJ3C8qng.ttf", - "300": "https://fonts.gstatic.com/s/alumnisans/v20/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9Zu9QqFsJ3C8qng.ttf", - "regular": "https://fonts.gstatic.com/s/alumnisans/v20/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9OO9QqFsJ3C8qng.ttf", - "500": "https://fonts.gstatic.com/s/alumnisans/v20/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9Cu9QqFsJ3C8qng.ttf", - "600": "https://fonts.gstatic.com/s/alumnisans/v20/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd95uhQqFsJ3C8qng.ttf", - "700": "https://fonts.gstatic.com/s/alumnisans/v20/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd93-hQqFsJ3C8qng.ttf", - "800": "https://fonts.gstatic.com/s/alumnisans/v20/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9uOhQqFsJ3C8qng.ttf", - "900": "https://fonts.gstatic.com/s/alumnisans/v20/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9kehQqFsJ3C8qng.ttf", - "100italic": "https://fonts.gstatic.com/s/alumnisans/v20/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Ky46lEN_io6npfB.ttf", - "200italic": "https://fonts.gstatic.com/s/alumnisans/v20/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kw461EN_io6npfB.ttf", - "300italic": "https://fonts.gstatic.com/s/alumnisans/v20/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kzm61EN_io6npfB.ttf", - "italic": "https://fonts.gstatic.com/s/alumnisans/v20/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Ky461EN_io6npfB.ttf", - "500italic": "https://fonts.gstatic.com/s/alumnisans/v20/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8KyK61EN_io6npfB.ttf", - "600italic": "https://fonts.gstatic.com/s/alumnisans/v20/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kxm7FEN_io6npfB.ttf", - "700italic": "https://fonts.gstatic.com/s/alumnisans/v20/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kxf7FEN_io6npfB.ttf", - "800italic": "https://fonts.gstatic.com/s/alumnisans/v20/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kw47FEN_io6npfB.ttf", - "900italic": "https://fonts.gstatic.com/s/alumnisans/v20/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8KwR7FEN_io6npfB.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alumnisans/v20/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9OO9gqVEN.ttf" - }, - { - "family": "Alumni Sans Collegiate One", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/alumnisanscollegiateone/v7/MQpB-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhjdayDiPw2ta.ttf", - "italic": "https://fonts.gstatic.com/s/alumnisanscollegiateone/v7/MQpD-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhgdYwjytxntaDFU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alumnisanscollegiateone/v7/MQpB-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhgdbwjw.ttf" - }, - { - "family": "Alumni Sans Inline One", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/alumnisansinlineone/v7/RrQBbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpD3AZcr7xbYw.ttf", - "italic": "https://fonts.gstatic.com/s/alumnisansinlineone/v7/RrQDbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpP3ITdpz0fYxcrQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alumnisansinlineone/v7/RrQBbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpP3ETdg.ttf" - }, - { - "family": "Alumni Sans Pinstripe", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/alumnisanspinstripe/v8/ZgNNjOFFPq_AUJD1umyS30W-Xub8zD1ObhezYrVIpcDA5w.ttf", - "italic": "https://fonts.gstatic.com/s/alumnisanspinstripe/v8/ZgNDjOFFPq_AUJD1umyS30W-Xub8zD1ObheDYL9Mh8XQ5_cY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alumnisanspinstripe/v8/ZgNNjOFFPq_AUJD1umyS30W-Xub8zD1ObheDY79M.ttf" - }, - { - "family": "Alumni Sans SC", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GfYaxzVjArrOeNFYbCvkZ8C28IyGwp26UHdIteaLxWgMKfbBlLNQ.ttf", - "200": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GfYaxzVjArrOeNFYbCvkZ8C28IyGwp26UHdIte6L1WgMKfbBlLNQ.ttf", - "300": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GfYaxzVjArrOeNFYbCvkZ8C28IyGwp26UHdIteNr1WgMKfbBlLNQ.ttf", - "regular": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GfYaxzVjArrOeNFYbCvkZ8C28IyGwp26UHdIteaL1WgMKfbBlLNQ.ttf", - "500": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GfYaxzVjArrOeNFYbCvkZ8C28IyGwp26UHdIteWr1WgMKfbBlLNQ.ttf", - "600": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GfYaxzVjArrOeNFYbCvkZ8C28IyGwp26UHdItetrpWgMKfbBlLNQ.ttf", - "700": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GfYaxzVjArrOeNFYbCvkZ8C28IyGwp26UHdItej7pWgMKfbBlLNQ.ttf", - "800": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GfYaxzVjArrOeNFYbCvkZ8C28IyGwp26UHdIte6LpWgMKfbBlLNQ.ttf", - "900": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GfYaxzVjArrOeNFYbCvkZ8C28IyGwp26UHdItewbpWgMKfbBlLNQ.ttf", - "100italic": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GdYaxzVjArrOeNFYbCvkZ8C0UB-pPxss6d2oxLoP6-wsibThxbNRJQ.ttf", - "200italic": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GdYaxzVjArrOeNFYbCvkZ8C0UB-pPxss6d2oxLoP4-w8ibThxbNRJQ.ttf", - "300italic": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GdYaxzVjArrOeNFYbCvkZ8C0UB-pPxss6d2oxLoP7gw8ibThxbNRJQ.ttf", - "italic": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GdYaxzVjArrOeNFYbCvkZ8C0UB-pPxss6d2oxLoP6-w8ibThxbNRJQ.ttf", - "500italic": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GdYaxzVjArrOeNFYbCvkZ8C0UB-pPxss6d2oxLoP6Mw8ibThxbNRJQ.ttf", - "600italic": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GdYaxzVjArrOeNFYbCvkZ8C0UB-pPxss6d2oxLoP5gxMibThxbNRJQ.ttf", - "700italic": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GdYaxzVjArrOeNFYbCvkZ8C0UB-pPxss6d2oxLoP5ZxMibThxbNRJQ.ttf", - "800italic": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GdYaxzVjArrOeNFYbCvkZ8C0UB-pPxss6d2oxLoP4-xMibThxbNRJQ.ttf", - "900italic": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GdYaxzVjArrOeNFYbCvkZ8C0UB-pPxss6d2oxLoP4XxMibThxbNRJQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GfYaxzVjArrOeNFYbCvkZ8C28IyGwp26UHdIteaL1mgcib.ttf" - }, - { - "family": "Amarante", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/amarante/v30/xMQXuF1KTa6EvGx9bq-3C3rAmD-b.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/amarante/v30/xMQXuF1KTa6EvGx9bp-2AX4.ttf" - }, - { - "family": "Amaranth", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/amaranth/v19/KtkuALODe433f0j1zPnCF9GqwnzW.ttf", - "italic": "https://fonts.gstatic.com/s/amaranth/v19/KtkoALODe433f0j1zMnAHdWIx2zWD4I.ttf", - "700": "https://fonts.gstatic.com/s/amaranth/v19/KtkpALODe433f0j1zMF-OPWi6WDfFpuc.ttf", - "700italic": "https://fonts.gstatic.com/s/amaranth/v19/KtkrALODe433f0j1zMnAJWmn42T9E4ucRY8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/amaranth/v19/KtkuALODe433f0j1zMnDHdU.ttf" - }, - { - "family": "Amatic SC", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "hebrew", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/amaticsc/v28/TUZyzwprpvBS1izr_vO0De6ecZQf1A.ttf", - "700": "https://fonts.gstatic.com/s/amaticsc/v28/TUZ3zwprpvBS1izr_vOMscG6eb8D3WTy-A.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/amaticsc/v28/TUZyzwprpvBS1izr_vOEDOSa.ttf" - }, - { - "family": "Amethysta", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/amethysta/v17/rP2Fp2K15kgb_F3ibfWIGDWCBl0O8Q.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/amethysta/v17/rP2Fp2K15kgb_F3ibfW4GT-G.ttf" - }, - { - "family": "Amiko", - "variants": [ - "regular", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/amiko/v15/WwkQxPq1DFK04tqlc17MMZgJ.ttf", - "600": "https://fonts.gstatic.com/s/amiko/v15/WwkdxPq1DFK04uJ9XXrEGoQAUco5.ttf", - "700": "https://fonts.gstatic.com/s/amiko/v15/WwkdxPq1DFK04uIZXHrEGoQAUco5.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/amiko/v15/WwkQxPq1DFK04uqkeVo.ttf" - }, - { - "family": "Amiri", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/amiri/v30/J7aRnpd8CGxBHqUpvrIw74NL.ttf", - "italic": "https://fonts.gstatic.com/s/amiri/v30/J7afnpd8CGxBHpUrtLYS6pNLAjk.ttf", - "700": "https://fonts.gstatic.com/s/amiri/v30/J7acnpd8CGxBHp2VkZY4xJ9CGyAa.ttf", - "700italic": "https://fonts.gstatic.com/s/amiri/v30/J7aanpd8CGxBHpUrjAo9zptgHjAavCA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/amiri/v30/J7aRnpd8CGxBHpUotLY.ttf" - }, - { - "family": "Amiri Quran", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin" - ], - "version": "v19", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/amiriquran/v19/_Xmo-Hk0rD6DbUL4_vH8Zq5t7Cycsu-2.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/amiriquran/v19/_Xmo-Hk0rD6DbUL4_vH8Zp5s5ig.ttf" - }, - { - "family": "Amita", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/amita/v20/HhyaU5si9Om7PQlvAfSKEZZL.ttf", - "700": "https://fonts.gstatic.com/s/amita/v20/HhyXU5si9Om7PTHTLtCCOopCTKkI.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/amita/v20/HhyaU5si9Om7PTluC_A.ttf" - }, - { - "family": "Anaheim", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/anaheim/v17/8vIX7w042Wp87g4Gy0_24JbCiPrl-h5sLqrFIkJQb7zU.ttf", - "500": "https://fonts.gstatic.com/s/anaheim/v17/8vIX7w042Wp87g4Gy0_24JbCiPrl-h5eLqrFIkJQb7zU.ttf", - "600": "https://fonts.gstatic.com/s/anaheim/v17/8vIX7w042Wp87g4Gy0_24JbCiPrl-h6yKarFIkJQb7zU.ttf", - "700": "https://fonts.gstatic.com/s/anaheim/v17/8vIX7w042Wp87g4Gy0_24JbCiPrl-h6LKarFIkJQb7zU.ttf", - "800": "https://fonts.gstatic.com/s/anaheim/v17/8vIX7w042Wp87g4Gy0_24JbCiPrl-h7sKarFIkJQb7zU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anaheim/v17/8vIX7w042Wp87g4Gy0_24JbCiPrl-h5sLprEKEY.ttf" - }, - { - "family": "Ancizar Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "greek", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/ancizarsans/v8/fC1zPYtHY2vX3wj8IbE7PxeWXCAxfsUebXFMyzipBpIu30AZbUY.ttf", - "200": "https://fonts.gstatic.com/s/ancizarsans/v8/fC1zPYtHY2vX3wj8IbE7PxeWXCAxfsUebXFMy7ioBpIu30AZbUY.ttf", - "300": "https://fonts.gstatic.com/s/ancizarsans/v8/fC1zPYtHY2vX3wj8IbE7PxeWXCAxfsUebXFMy2aoBpIu30AZbUY.ttf", - "regular": "https://fonts.gstatic.com/s/ancizarsans/v8/fC1zPYtHY2vX3wj8IbE7PxeWXCAxfsUebXFMyzioBpIu30AZbUY.ttf", - "500": "https://fonts.gstatic.com/s/ancizarsans/v8/fC1zPYtHY2vX3wj8IbE7PxeWXCAxfsUebXFMywqoBpIu30AZbUY.ttf", - "600": "https://fonts.gstatic.com/s/ancizarsans/v8/fC1zPYtHY2vX3wj8IbE7PxeWXCAxfsUebXFMy-avBpIu30AZbUY.ttf", - "700": "https://fonts.gstatic.com/s/ancizarsans/v8/fC1zPYtHY2vX3wj8IbE7PxeWXCAxfsUebXFMy9-vBpIu30AZbUY.ttf", - "800": "https://fonts.gstatic.com/s/ancizarsans/v8/fC1zPYtHY2vX3wj8IbE7PxeWXCAxfsUebXFMy7ivBpIu30AZbUY.ttf", - "900": "https://fonts.gstatic.com/s/ancizarsans/v8/fC1zPYtHY2vX3wj8IbE7PxeWXCAxfsUebXFMy5GvBpIu30AZbUY.ttf", - "100italic": "https://fonts.gstatic.com/s/ancizarsans/v8/fC11PYtHY2vX3wj8IbE7Pxe8VRLOpqx1999L3vDr7tAk22IcfUZgBQ.ttf", - "200italic": "https://fonts.gstatic.com/s/ancizarsans/v8/fC11PYtHY2vX3wj8IbE7Pxe8VRLOpqx1999L3vDrbtEk22IcfUZgBQ.ttf", - "300italic": "https://fonts.gstatic.com/s/ancizarsans/v8/fC11PYtHY2vX3wj8IbE7Pxe8VRLOpqx1999L3vDrsNEk22IcfUZgBQ.ttf", - "italic": "https://fonts.gstatic.com/s/ancizarsans/v8/fC11PYtHY2vX3wj8IbE7Pxe8VRLOpqx1999L3vDr7tEk22IcfUZgBQ.ttf", - "500italic": "https://fonts.gstatic.com/s/ancizarsans/v8/fC11PYtHY2vX3wj8IbE7Pxe8VRLOpqx1999L3vDr3NEk22IcfUZgBQ.ttf", - "600italic": "https://fonts.gstatic.com/s/ancizarsans/v8/fC11PYtHY2vX3wj8IbE7Pxe8VRLOpqx1999L3vDrMNYk22IcfUZgBQ.ttf", - "700italic": "https://fonts.gstatic.com/s/ancizarsans/v8/fC11PYtHY2vX3wj8IbE7Pxe8VRLOpqx1999L3vDrCdYk22IcfUZgBQ.ttf", - "800italic": "https://fonts.gstatic.com/s/ancizarsans/v8/fC11PYtHY2vX3wj8IbE7Pxe8VRLOpqx1999L3vDrbtYk22IcfUZgBQ.ttf", - "900italic": "https://fonts.gstatic.com/s/ancizarsans/v8/fC11PYtHY2vX3wj8IbE7Pxe8VRLOpqx1999L3vDrR9Yk22IcfUZgBQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ancizarsans/v8/fC1zPYtHY2vX3wj8IbE7PxeWXCAxfsUebXFMyzioNpMk2w.ttf" - }, - { - "family": "Ancizar Serif", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "greek", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_lRfmxrmD9dEi_Qbtf91W1xPPTOqu-ZIAJUN2H_fAQtYfaQ_ao.ttf", - "regular": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_lRfmxrmD9dEi_Qbtf91W1xPPTOqu-ZIAJUN3Z_fAQtYfaQ_ao.ttf", - "500": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_lRfmxrmD9dEi_Qbtf91W1xPPTOqu-ZIAJUN3r_fAQtYfaQ_ao.ttf", - "600": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_lRfmxrmD9dEi_Qbtf91W1xPPTOqu-ZIAJUN0H-vAQtYfaQ_ao.ttf", - "700": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_lRfmxrmD9dEi_Qbtf91W1xPPTOqu-ZIAJUN0--vAQtYfaQ_ao.ttf", - "800": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_lRfmxrmD9dEi_Qbtf91W1xPPTOqu-ZIAJUN1Z-vAQtYfaQ_ao.ttf", - "900": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_lRfmxrmD9dEi_Qbtf91W1xPPTOqu-ZIAJUN1w-vAQtYfaQ_ao.ttf", - "300italic": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_nRfmxrmD9dEi_Qbtf91W17vrhxXPXDxqnV8gRvkZTv4P4Ruao7Y0.ttf", - "italic": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_nRfmxrmD9dEi_Qbtf91W17vrhxXPXDxqnV8gRvhhTv4P4Ruao7Y0.ttf", - "500italic": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_nRfmxrmD9dEi_Qbtf91W17vrhxXPXDxqnV8gRvipTv4P4Ruao7Y0.ttf", - "600italic": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_nRfmxrmD9dEi_Qbtf91W17vrhxXPXDxqnV8gRvsZUv4P4Ruao7Y0.ttf", - "700italic": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_nRfmxrmD9dEi_Qbtf91W17vrhxXPXDxqnV8gRvv9Uv4P4Ruao7Y0.ttf", - "800italic": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_nRfmxrmD9dEi_Qbtf91W17vrhxXPXDxqnV8gRvphUv4P4Ruao7Y0.ttf", - "900italic": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_nRfmxrmD9dEi_Qbtf91W17vrhxXPXDxqnV8gRvrFUv4P4Ruao7Y0.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ancizarserif/v8/PN_lRfmxrmD9dEi_Qbtf91W1xPPTOqu-ZIAJUN3Z_cARv4M.ttf" - }, - { - "family": "Andada Pro", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/andadapro/v24/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DPJBY8cFLzvIt2S.ttf", - "500": "https://fonts.gstatic.com/s/andadapro/v24/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DP7BY8cFLzvIt2S.ttf", - "600": "https://fonts.gstatic.com/s/andadapro/v24/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DMXAo8cFLzvIt2S.ttf", - "700": "https://fonts.gstatic.com/s/andadapro/v24/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DMuAo8cFLzvIt2S.ttf", - "800": "https://fonts.gstatic.com/s/andadapro/v24/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DNJAo8cFLzvIt2S.ttf", - "italic": "https://fonts.gstatic.com/s/andadapro/v24/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRmdfHrjNJ82Stjw.ttf", - "500italic": "https://fonts.gstatic.com/s/andadapro/v24/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRlVfHrjNJ82Stjw.ttf", - "600italic": "https://fonts.gstatic.com/s/andadapro/v24/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRrlYHrjNJ82Stjw.ttf", - "700italic": "https://fonts.gstatic.com/s/andadapro/v24/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRoBYHrjNJ82Stjw.ttf", - "800italic": "https://fonts.gstatic.com/s/andadapro/v24/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRudYHrjNJ82Stjw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/andadapro/v24/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DPJBb8dHrg.ttf" - }, - { - "family": "Andika", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/andika/v27/mem_Ya6iyW-LwqgAbbwRWrwGVA.ttf", - "italic": "https://fonts.gstatic.com/s/andika/v27/mem9Ya6iyW-Lwqgwb7YVeLkWVNBt.ttf", - "700": "https://fonts.gstatic.com/s/andika/v27/mem8Ya6iyW-Lwqg40ZM1UpcaXcl0Aw.ttf", - "700italic": "https://fonts.gstatic.com/s/andika/v27/mem6Ya6iyW-Lwqgwb46pV50ef8xkA76a.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/andika/v27/mem_Ya6iyW-LwqgwbLYV.ttf" - }, - { - "family": "Anek Bangla", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "bengali", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/anekbangla/v16/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofm9YIocg56yyvt0.ttf", - "200": "https://fonts.gstatic.com/s/anekbangla/v16/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofu9ZIocg56yyvt0.ttf", - "300": "https://fonts.gstatic.com/s/anekbangla/v16/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfjFZIocg56yyvt0.ttf", - "regular": "https://fonts.gstatic.com/s/anekbangla/v16/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofm9ZIocg56yyvt0.ttf", - "500": "https://fonts.gstatic.com/s/anekbangla/v16/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofl1ZIocg56yyvt0.ttf", - "600": "https://fonts.gstatic.com/s/anekbangla/v16/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfrFeIocg56yyvt0.ttf", - "700": "https://fonts.gstatic.com/s/anekbangla/v16/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfoheIocg56yyvt0.ttf", - "800": "https://fonts.gstatic.com/s/anekbangla/v16/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofu9eIocg56yyvt0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anekbangla/v16/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofm9ZEoYq4w.ttf" - }, - { - "family": "Anek Devanagari", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/anekdevanagari/v17/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDtk-9nFk0LjZ7E.ttf", - "200": "https://fonts.gstatic.com/s/anekdevanagari/v17/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLBtku9nFk0LjZ7E.ttf", - "300": "https://fonts.gstatic.com/s/anekdevanagari/v17/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLCzku9nFk0LjZ7E.ttf", - "regular": "https://fonts.gstatic.com/s/anekdevanagari/v17/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDtku9nFk0LjZ7E.ttf", - "500": "https://fonts.gstatic.com/s/anekdevanagari/v17/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDfku9nFk0LjZ7E.ttf", - "600": "https://fonts.gstatic.com/s/anekdevanagari/v17/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLAzle9nFk0LjZ7E.ttf", - "700": "https://fonts.gstatic.com/s/anekdevanagari/v17/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLAKle9nFk0LjZ7E.ttf", - "800": "https://fonts.gstatic.com/s/anekdevanagari/v17/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLBtle9nFk0LjZ7E.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anekdevanagari/v17/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDtkt9mHEk.ttf" - }, - { - "family": "Anek Gujarati", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/anekgujarati/v17/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0F5G7w0KgB7Lm7g.ttf", - "200": "https://fonts.gstatic.com/s/anekgujarati/v17/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0l5C7w0KgB7Lm7g.ttf", - "300": "https://fonts.gstatic.com/s/anekgujarati/v17/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0SZC7w0KgB7Lm7g.ttf", - "regular": "https://fonts.gstatic.com/s/anekgujarati/v17/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0F5C7w0KgB7Lm7g.ttf", - "500": "https://fonts.gstatic.com/s/anekgujarati/v17/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0JZC7w0KgB7Lm7g.ttf", - "600": "https://fonts.gstatic.com/s/anekgujarati/v17/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0yZe7w0KgB7Lm7g.ttf", - "700": "https://fonts.gstatic.com/s/anekgujarati/v17/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-08Je7w0KgB7Lm7g.ttf", - "800": "https://fonts.gstatic.com/s/anekgujarati/v17/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0l5e7w0KgB7Lm7g.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anekgujarati/v17/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0F5CLwkik.ttf" - }, - { - "family": "Anek Gurmukhi", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "gurmukhi", - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/anekgurmukhi/v13/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbd5ppXK41H6DjbA.ttf", - "200": "https://fonts.gstatic.com/s/anekgurmukhi/v13/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkb95tpXK41H6DjbA.ttf", - "300": "https://fonts.gstatic.com/s/anekgurmukhi/v13/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbKZtpXK41H6DjbA.ttf", - "regular": "https://fonts.gstatic.com/s/anekgurmukhi/v13/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbd5tpXK41H6DjbA.ttf", - "500": "https://fonts.gstatic.com/s/anekgurmukhi/v13/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbRZtpXK41H6DjbA.ttf", - "600": "https://fonts.gstatic.com/s/anekgurmukhi/v13/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbqZxpXK41H6DjbA.ttf", - "700": "https://fonts.gstatic.com/s/anekgurmukhi/v13/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbkJxpXK41H6DjbA.ttf", - "800": "https://fonts.gstatic.com/s/anekgurmukhi/v13/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkb95xpXK41H6DjbA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anekgurmukhi/v13/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbd5tZXaQx.ttf" - }, - { - "family": "Anek Kannada", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "kannada", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/anekkannada/v15/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFDEAukVReA1oef.ttf", - "200": "https://fonts.gstatic.com/s/anekkannada/v15/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dHDEQukVReA1oef.ttf", - "300": "https://fonts.gstatic.com/s/anekkannada/v15/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dEdEQukVReA1oef.ttf", - "regular": "https://fonts.gstatic.com/s/anekkannada/v15/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFDEQukVReA1oef.ttf", - "500": "https://fonts.gstatic.com/s/anekkannada/v15/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFxEQukVReA1oef.ttf", - "600": "https://fonts.gstatic.com/s/anekkannada/v15/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dGdFgukVReA1oef.ttf", - "700": "https://fonts.gstatic.com/s/anekkannada/v15/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dGkFgukVReA1oef.ttf", - "800": "https://fonts.gstatic.com/s/anekkannada/v15/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dHDFgukVReA1oef.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anekkannada/v15/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFDETulXxM.ttf" - }, - { - "family": "Anek Latin", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/aneklatin/v11/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuR7EZKdClWL3kgw.ttf", - "200": "https://fonts.gstatic.com/s/aneklatin/v11/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3Pux7AZKdClWL3kgw.ttf", - "300": "https://fonts.gstatic.com/s/aneklatin/v11/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuGbAZKdClWL3kgw.ttf", - "regular": "https://fonts.gstatic.com/s/aneklatin/v11/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuR7AZKdClWL3kgw.ttf", - "500": "https://fonts.gstatic.com/s/aneklatin/v11/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PudbAZKdClWL3kgw.ttf", - "600": "https://fonts.gstatic.com/s/aneklatin/v11/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PumbcZKdClWL3kgw.ttf", - "700": "https://fonts.gstatic.com/s/aneklatin/v11/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuoLcZKdClWL3kgw.ttf", - "800": "https://fonts.gstatic.com/s/aneklatin/v11/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3Pux7cZKdClWL3kgw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/aneklatin/v11/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuR7ApKNqh.ttf" - }, - { - "family": "Anek Malayalam", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "malayalam" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/anekmalayalam/v18/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUZu_HMr5PDO71Qs.ttf", - "200": "https://fonts.gstatic.com/s/anekmalayalam/v18/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTURu-HMr5PDO71Qs.ttf", - "300": "https://fonts.gstatic.com/s/anekmalayalam/v18/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUcW-HMr5PDO71Qs.ttf", - "regular": "https://fonts.gstatic.com/s/anekmalayalam/v18/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUZu-HMr5PDO71Qs.ttf", - "500": "https://fonts.gstatic.com/s/anekmalayalam/v18/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUam-HMr5PDO71Qs.ttf", - "600": "https://fonts.gstatic.com/s/anekmalayalam/v18/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUUW5HMr5PDO71Qs.ttf", - "700": "https://fonts.gstatic.com/s/anekmalayalam/v18/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUXy5HMr5PDO71Qs.ttf", - "800": "https://fonts.gstatic.com/s/anekmalayalam/v18/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTURu5HMr5PDO71Qs.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anekmalayalam/v18/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUZu-LMvzOA.ttf" - }, - { - "family": "Anek Odia", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "oriya" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/anekodia/v17/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmZf63mXZAtm_es.ttf", - "200": "https://fonts.gstatic.com/s/anekodia/v17/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnkZfq3mXZAtm_es.ttf", - "300": "https://fonts.gstatic.com/s/anekodia/v17/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnnHfq3mXZAtm_es.ttf", - "regular": "https://fonts.gstatic.com/s/anekodia/v17/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmZfq3mXZAtm_es.ttf", - "500": "https://fonts.gstatic.com/s/anekodia/v17/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmrfq3mXZAtm_es.ttf", - "600": "https://fonts.gstatic.com/s/anekodia/v17/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnlHea3mXZAtm_es.ttf", - "700": "https://fonts.gstatic.com/s/anekodia/v17/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnl-ea3mXZAtm_es.ttf", - "800": "https://fonts.gstatic.com/s/anekodia/v17/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnkZea3mXZAtm_es.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anekodia/v17/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmZfp3nV5Q.ttf" - }, - { - "family": "Anek Tamil", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/anektamil/v18/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNQiZ6q4v4oegjOQ.ttf", - "200": "https://fonts.gstatic.com/s/anektamil/v18/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNwid6q4v4oegjOQ.ttf", - "300": "https://fonts.gstatic.com/s/anektamil/v18/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNHCd6q4v4oegjOQ.ttf", - "regular": "https://fonts.gstatic.com/s/anektamil/v18/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNQid6q4v4oegjOQ.ttf", - "500": "https://fonts.gstatic.com/s/anektamil/v18/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNcCd6q4v4oegjOQ.ttf", - "600": "https://fonts.gstatic.com/s/anektamil/v18/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNnCB6q4v4oegjOQ.ttf", - "700": "https://fonts.gstatic.com/s/anektamil/v18/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNpSB6q4v4oegjOQ.ttf", - "800": "https://fonts.gstatic.com/s/anektamil/v18/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNwiB6q4v4oegjOQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anektamil/v18/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNQidKqoH8.ttf" - }, - { - "family": "Anek Telugu", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "telugu" - ], - "version": "v13", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/anektelugu/v13/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13y-_oE2G2ep10_8.ttf", - "200": "https://fonts.gstatic.com/s/anektelugu/v13/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i136--oE2G2ep10_8.ttf", - "300": "https://fonts.gstatic.com/s/anektelugu/v13/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i133G-oE2G2ep10_8.ttf", - "regular": "https://fonts.gstatic.com/s/anektelugu/v13/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13y--oE2G2ep10_8.ttf", - "500": "https://fonts.gstatic.com/s/anektelugu/v13/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13x2-oE2G2ep10_8.ttf", - "600": "https://fonts.gstatic.com/s/anektelugu/v13/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13_G5oE2G2ep10_8.ttf", - "700": "https://fonts.gstatic.com/s/anektelugu/v13/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i138i5oE2G2ep10_8.ttf", - "800": "https://fonts.gstatic.com/s/anektelugu/v13/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i136-5oE2G2ep10_8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anektelugu/v13/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13y--kEyM3Q.ttf" - }, - { - "family": "Angkor", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v35", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/angkor/v35/H4cmBXyAlsPdnlb-8iw-4Lqggw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/angkor/v35/H4cmBXyAlsPdnlbO8yY6.ttf" - }, - { - "family": "Annapurna SIL", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/annapurnasil/v2/yYLv0hDY0f2iu9tPmRWtllid8NN9dZT_PZs.ttf", - "700": "https://fonts.gstatic.com/s/annapurnasil/v2/yYLy0hDY0f2iu9tPmRWtllidyG9SUZzUIZJ008A.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/annapurnasil/v2/yYLv0hDY0f2iu9tPmRWtllidwNJ3cQ.ttf" - }, - { - "family": "Annie Use Your Telescope", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/annieuseyourtelescope/v20/daaLSS4tI2qYYl3Jq9s_Hu74xwktnlKxH6osGVGjlDfB3UUVZA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/annieuseyourtelescope/v20/daaLSS4tI2qYYl3Jq9s_Hu74xwktnlKxH6osGVGTlT3F.ttf" - }, - { - "family": "Anonymous Pro", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "greek", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/anonymouspro/v22/rP2Bp2a15UIB7Un-bOeISG3pLlw89CH98Ko.ttf", - "italic": "https://fonts.gstatic.com/s/anonymouspro/v22/rP2fp2a15UIB7Un-bOeISG3pHl428AP44Kqr2Q.ttf", - "700": "https://fonts.gstatic.com/s/anonymouspro/v22/rP2cp2a15UIB7Un-bOeISG3pFuAT0CnW7KOywKo.ttf", - "700italic": "https://fonts.gstatic.com/s/anonymouspro/v22/rP2ap2a15UIB7Un-bOeISG3pHl4OTCzc6IG30KqB9Q.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anonymouspro/v22/rP2Bp2a15UIB7Un-bOeISG3pHl028A.ttf" - }, - { - "family": "Anta", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/anta/v1/gyBzhwQ3KsIyZFwxPFimIo0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anta/v1/gyBzhwQ3KsIyVF07OA.ttf" - }, - { - "family": "Antic", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/antic/v20/TuGfUVB8XY5DRaZLodgzydtk.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/antic/v20/TuGfUVB8XY5DRZZKq9w.ttf" - }, - { - "family": "Antic Didone", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/anticdidone/v17/RWmPoKKX6u8sp8fIWdnDKqDiqYsGBGBzCw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anticdidone/v17/RWmPoKKX6u8sp8fIWdnDKqDSqIEC.ttf" - }, - { - "family": "Antic Slab", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/anticslab/v17/bWt97fPFfRzkCa9Jlp6IWcJWXW5p5Qo.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anticslab/v17/bWt97fPFfRzkCa9Jlp6IacNcWQ.ttf" - }, - { - "family": "Anton", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/anton/v27/1Ptgg87LROyAm0K08i4gS7lu.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anton/v27/1Ptgg87LROyAm3K1-Co.ttf" - }, - { - "family": "Anton SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/antonsc/v1/4UaBrEBBsgltGn71sxLmzanB44N1.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/antonsc/v1/4UaBrEBBsgltGn71syLnx60.ttf" - }, - { - "family": "Antonio", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/antonio/v22/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxx8BtIY2DwSXlM.ttf", - "200": "https://fonts.gstatic.com/s/antonio/v22/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVzx8RtIY2DwSXlM.ttf", - "300": "https://fonts.gstatic.com/s/antonio/v22/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVwv8RtIY2DwSXlM.ttf", - "regular": "https://fonts.gstatic.com/s/antonio/v22/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxx8RtIY2DwSXlM.ttf", - "500": "https://fonts.gstatic.com/s/antonio/v22/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxD8RtIY2DwSXlM.ttf", - "600": "https://fonts.gstatic.com/s/antonio/v22/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVyv9htIY2DwSXlM.ttf", - "700": "https://fonts.gstatic.com/s/antonio/v22/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVyW9htIY2DwSXlM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/antonio/v22/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxx8StJaWQ.ttf" - }, - { - "family": "Anuphan", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/anuphan/v6/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkY9A4kGmW927Gu.ttf", - "200": "https://fonts.gstatic.com/s/anuphan/v6/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCmY9Q4kGmW927Gu.ttf", - "300": "https://fonts.gstatic.com/s/anuphan/v6/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZClG9Q4kGmW927Gu.ttf", - "regular": "https://fonts.gstatic.com/s/anuphan/v6/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkY9Q4kGmW927Gu.ttf", - "500": "https://fonts.gstatic.com/s/anuphan/v6/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkq9Q4kGmW927Gu.ttf", - "600": "https://fonts.gstatic.com/s/anuphan/v6/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCnG8g4kGmW927Gu.ttf", - "700": "https://fonts.gstatic.com/s/anuphan/v6/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCn_8g4kGmW927Gu.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anuphan/v6/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkY9T4lEGE.ttf" - }, - { - "family": "Anybody", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/anybody/v13/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J12HPrsXD_nBPpQ.ttf", - "200": "https://fonts.gstatic.com/s/anybody/v13/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JV2DPrsXD_nBPpQ.ttf", - "300": "https://fonts.gstatic.com/s/anybody/v13/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JiWDPrsXD_nBPpQ.ttf", - "regular": "https://fonts.gstatic.com/s/anybody/v13/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J12DPrsXD_nBPpQ.ttf", - "500": "https://fonts.gstatic.com/s/anybody/v13/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J5WDPrsXD_nBPpQ.ttf", - "600": "https://fonts.gstatic.com/s/anybody/v13/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JCWfPrsXD_nBPpQ.ttf", - "700": "https://fonts.gstatic.com/s/anybody/v13/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JMGfPrsXD_nBPpQ.ttf", - "800": "https://fonts.gstatic.com/s/anybody/v13/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JV2fPrsXD_nBPpQ.ttf", - "900": "https://fonts.gstatic.com/s/anybody/v13/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JfmfPrsXD_nBPpQ.ttf", - "100italic": "https://fonts.gstatic.com/s/anybody/v13/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMn7M_H3HVfpcHY.ttf", - "200italic": "https://fonts.gstatic.com/s/anybody/v13/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOn7c_H3HVfpcHY.ttf", - "300italic": "https://fonts.gstatic.com/s/anybody/v13/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyN57c_H3HVfpcHY.ttf", - "italic": "https://fonts.gstatic.com/s/anybody/v13/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMn7c_H3HVfpcHY.ttf", - "500italic": "https://fonts.gstatic.com/s/anybody/v13/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMV7c_H3HVfpcHY.ttf", - "600italic": "https://fonts.gstatic.com/s/anybody/v13/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyP56s_H3HVfpcHY.ttf", - "700italic": "https://fonts.gstatic.com/s/anybody/v13/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyPA6s_H3HVfpcHY.ttf", - "800italic": "https://fonts.gstatic.com/s/anybody/v13/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOn6s_H3HVfpcHY.ttf", - "900italic": "https://fonts.gstatic.com/s/anybody/v13/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOO6s_H3HVfpcHY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/anybody/v13/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J12D_r8_H.ttf" - }, - { - "family": "Aoboshi One", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/aoboshione/v13/Gg8xN5kXaAXtHQrFxwl10ysLBmZX_UEg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/aoboshione/v13/Gg8xN5kXaAXtHQrFxwl10xsKDGI.ttf" - }, - { - "family": "Arapey", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/arapey/v17/-W__XJn-UDDA2RC6Z9AcZkIzeg.ttf", - "italic": "https://fonts.gstatic.com/s/arapey/v17/-W_9XJn-UDDA2RCKZdoYREcjeo0k.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arapey/v17/-W__XJn-UDDA2RCKZtoY.ttf" - }, - { - "family": "Arbutus", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/arbutus/v30/NaPYcZ7dG_5J3poob9JtryO8fMU.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arbutus/v30/NaPYcZ7dG_5J3pooX9Nnqw.ttf" - }, - { - "family": "Arbutus Slab", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/arbutusslab/v17/oY1Z8e7OuLXkJGbXtr5ba7ZVa68dJlaFAQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arbutusslab/v17/oY1Z8e7OuLXkJGbXtr5ba7ZlaqUZ.ttf" - }, - { - "family": "Architects Daughter", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/architectsdaughter/v20/KtkxAKiDZI_td1Lkx62xHZHDtgO_Y-bvfY5q4szgE-Q.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/architectsdaughter/v20/KtkxAKiDZI_td1Lkx62xHZHDtgO_Y-bvTY9g5g.ttf" - }, - { - "family": "Archivo", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/archivo/v25/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTNDJp8B1oJ0vyVQ.ttf", - "200": "https://fonts.gstatic.com/s/archivo/v25/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTtDNp8B1oJ0vyVQ.ttf", - "300": "https://fonts.gstatic.com/s/archivo/v25/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTajNp8B1oJ0vyVQ.ttf", - "regular": "https://fonts.gstatic.com/s/archivo/v25/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTNDNp8B1oJ0vyVQ.ttf", - "500": "https://fonts.gstatic.com/s/archivo/v25/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTBjNp8B1oJ0vyVQ.ttf", - "600": "https://fonts.gstatic.com/s/archivo/v25/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTT6jRp8B1oJ0vyVQ.ttf", - "700": "https://fonts.gstatic.com/s/archivo/v25/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTT0zRp8B1oJ0vyVQ.ttf", - "800": "https://fonts.gstatic.com/s/archivo/v25/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTtDRp8B1oJ0vyVQ.ttf", - "900": "https://fonts.gstatic.com/s/archivo/v25/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTnTRp8B1oJ0vyVQ.ttf", - "100italic": "https://fonts.gstatic.com/s/archivo/v25/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCBshdsBU7iVdxQ.ttf", - "200italic": "https://fonts.gstatic.com/s/archivo/v25/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HABsxdsBU7iVdxQ.ttf", - "300italic": "https://fonts.gstatic.com/s/archivo/v25/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HDfsxdsBU7iVdxQ.ttf", - "italic": "https://fonts.gstatic.com/s/archivo/v25/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCBsxdsBU7iVdxQ.ttf", - "500italic": "https://fonts.gstatic.com/s/archivo/v25/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCzsxdsBU7iVdxQ.ttf", - "600italic": "https://fonts.gstatic.com/s/archivo/v25/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HBftBdsBU7iVdxQ.ttf", - "700italic": "https://fonts.gstatic.com/s/archivo/v25/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HBmtBdsBU7iVdxQ.ttf", - "800italic": "https://fonts.gstatic.com/s/archivo/v25/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HABtBdsBU7iVdxQ.ttf", - "900italic": "https://fonts.gstatic.com/s/archivo/v25/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HAotBdsBU7iVdxQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/archivo/v25/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTNDNZ8Rds.ttf" - }, - { - "family": "Archivo Black", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/archivoblack/v23/HTxqL289NzCGg4MzN6KJ7eW6OYuP_x7yx3A.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/archivoblack/v23/HTxqL289NzCGg4MzN6KJ7eW6CYqF-w.ttf" - }, - { - "family": "Archivo Narrow", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v35", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/archivonarrow/v35/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvLFGKpHOtFCQ76Q.ttf", - "500": "https://fonts.gstatic.com/s/archivonarrow/v35/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvHlGKpHOtFCQ76Q.ttf", - "600": "https://fonts.gstatic.com/s/archivonarrow/v35/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhv8laKpHOtFCQ76Q.ttf", - "700": "https://fonts.gstatic.com/s/archivonarrow/v35/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvy1aKpHOtFCQ76Q.ttf", - "italic": "https://fonts.gstatic.com/s/archivonarrow/v35/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BJi53mpNiEr6T6Y.ttf", - "500italic": "https://fonts.gstatic.com/s/archivonarrow/v35/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BJQ53mpNiEr6T6Y.ttf", - "600italic": "https://fonts.gstatic.com/s/archivonarrow/v35/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BK84HmpNiEr6T6Y.ttf", - "700italic": "https://fonts.gstatic.com/s/archivonarrow/v35/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BKF4HmpNiEr6T6Y.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/archivonarrow/v35/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvLFG6pXmp.ttf" - }, - { - "family": "Are You Serious", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/areyouserious/v14/ll8kK2GVSSr-PtjQ5nONVcNn4306hT9nCGRayg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/areyouserious/v14/ll8kK2GVSSr-PtjQ5nONVcNn430KhDVj.ttf" - }, - { - "family": "Aref Ruqaa", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/arefruqaa/v26/WwkbxPW1E165rajQKDulEIAiVNo5xNY.ttf", - "700": "https://fonts.gstatic.com/s/arefruqaa/v26/WwkYxPW1E165rajQKDulKDwNcNIS2N_7Bdk.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arefruqaa/v26/WwkbxPW1E165rajQKDulIIEoUA.ttf" - }, - { - "family": "Aref Ruqaa Ink", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/arefruqaaink/v11/1q2fY5WOGUFlt84GTOkP6Kdx72ThVIGpgnxL.ttf", - "700": "https://fonts.gstatic.com/s/arefruqaaink/v11/1q2cY5WOGUFlt84GTOkP6Kdx71xde6WhqWBCyxWn.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arefruqaaink/v11/1q2fY5WOGUFlt84GTOkP6Kdx71TgXoU.ttf", - "colorCapabilities": [ - "COLRv1", - "SVG" - ] - }, - { - "family": "Arima", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "greek", - "greek-ext", - "latin", - "latin-ext", - "malayalam", - "tamil", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/arima/v7/neIWzCqmt4Aup_qE1nFWqxI1RZX1YTE-pQGOyYw2fw.ttf", - "200": "https://fonts.gstatic.com/s/arima/v7/neIWzCqmt4Aup_qE1nFWqxI1RZX14TA-pQGOyYw2fw.ttf", - "300": "https://fonts.gstatic.com/s/arima/v7/neIWzCqmt4Aup_qE1nFWqxI1RZX1PzA-pQGOyYw2fw.ttf", - "regular": "https://fonts.gstatic.com/s/arima/v7/neIWzCqmt4Aup_qE1nFWqxI1RZX1YTA-pQGOyYw2fw.ttf", - "500": "https://fonts.gstatic.com/s/arima/v7/neIWzCqmt4Aup_qE1nFWqxI1RZX1UzA-pQGOyYw2fw.ttf", - "600": "https://fonts.gstatic.com/s/arima/v7/neIWzCqmt4Aup_qE1nFWqxI1RZX1vzc-pQGOyYw2fw.ttf", - "700": "https://fonts.gstatic.com/s/arima/v7/neIWzCqmt4Aup_qE1nFWqxI1RZX1hjc-pQGOyYw2fw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arima/v7/neIWzCqmt4Aup_qE1nFWqxI1RZX1YTAOpAuK.ttf" - }, - { - "family": "Arimo", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "hebrew", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v35", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/arimo/v35/P5sfzZCDf9_T_3cV7NCUECyoxNk37cxsBxDAVQI4aA.ttf", - "500": "https://fonts.gstatic.com/s/arimo/v35/P5sfzZCDf9_T_3cV7NCUECyoxNk338xsBxDAVQI4aA.ttf", - "600": "https://fonts.gstatic.com/s/arimo/v35/P5sfzZCDf9_T_3cV7NCUECyoxNk3M8tsBxDAVQI4aA.ttf", - "700": "https://fonts.gstatic.com/s/arimo/v35/P5sfzZCDf9_T_3cV7NCUECyoxNk3CstsBxDAVQI4aA.ttf", - "italic": "https://fonts.gstatic.com/s/arimo/v35/P5sdzZCDf9_T_10c3i9MeUcyat4iJY-ERBrEdwcoaKww.ttf", - "500italic": "https://fonts.gstatic.com/s/arimo/v35/P5sdzZCDf9_T_10c3i9MeUcyat4iJY-2RBrEdwcoaKww.ttf", - "600italic": "https://fonts.gstatic.com/s/arimo/v35/P5sdzZCDf9_T_10c3i9MeUcyat4iJY9aQxrEdwcoaKww.ttf", - "700italic": "https://fonts.gstatic.com/s/arimo/v35/P5sdzZCDf9_T_10c3i9MeUcyat4iJY9jQxrEdwcoaKww.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arimo/v35/P5sfzZCDf9_T_3cV7NCUECyoxNk37cxcBhrE.ttf" - }, - { - "family": "Arizonia", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/arizonia/v23/neIIzCemt4A5qa7mv6WGHK06UY30.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arizonia/v23/neIIzCemt4A5qa7mv5WHFqk.ttf" - }, - { - "family": "Armata", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/armata/v21/gokvH63_HV5jQ-E9lD53Q2u_mQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/armata/v21/gokvH63_HV5jQ-ENlTRz.ttf" - }, - { - "family": "Arsenal", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/arsenal/v13/wXKrE3kQtZQ4pF3D11_WAewrhXY.ttf", - "italic": "https://fonts.gstatic.com/s/arsenal/v13/wXKpE3kQtZQ4pF3D513cBc4ulXYrtA.ttf", - "700": "https://fonts.gstatic.com/s/arsenal/v13/wXKuE3kQtZQ4pF3D7-P5JeQAmX8yrdk.ttf", - "700italic": "https://fonts.gstatic.com/s/arsenal/v13/wXKsE3kQtZQ4pF3D513kueEKnV03vdnKjw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arsenal/v13/wXKrE3kQtZQ4pF3D517cBQ.ttf" - }, - { - "family": "Arsenal SC", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/arsenalsc/v1/x3dlckLHea6e5BEtsfxiXNossybsHQI.ttf", - "italic": "https://fonts.gstatic.com/s/arsenalsc/v1/x3dnckLHea6e5BEtsfxibNgmtwTpDQIrGg.ttf", - "700": "https://fonts.gstatic.com/s/arsenalsc/v1/x3dmckLHea6e5BEtsfxiZGYDly7HAQsyA2Y.ttf", - "700italic": "https://fonts.gstatic.com/s/arsenalsc/v1/x3d4ckLHea6e5BEtsfxibNgeCyvNBSk3E2YljQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arsenalsc/v1/x3dlckLHea6e5BEtsfxibNsmtw.ttf" - }, - { - "family": "Artifika", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/artifika/v22/VEMyRoxzronptCuxu6Wt5jDtreOL.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/artifika/v22/VEMyRoxzronptCuxu5Ws7DQ.ttf" - }, - { - "family": "Arvo", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v23", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/arvo/v23/tDbD2oWUg0MKmSAa7Lzr7vs.ttf", - "italic": "https://fonts.gstatic.com/s/arvo/v23/tDbN2oWUg0MKqSIQ6J7u_vvijQ.ttf", - "700": "https://fonts.gstatic.com/s/arvo/v23/tDbM2oWUg0MKoZw1yLTA8vL7lAE.ttf", - "700italic": "https://fonts.gstatic.com/s/arvo/v23/tDbO2oWUg0MKqSIoVLHK9tD-hAHkGg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arvo/v23/tDbD2oWUg0MKqSEQ6A.ttf" - }, - { - "family": "Arya", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/arya/v21/ga6CawNG-HJd9Ub1-beqdFE.ttf", - "700": "https://fonts.gstatic.com/s/arya/v21/ga6NawNG-HJdzfra3b-BaFg3dRE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/arya/v21/ga6CawNG-HJdxUf__Q.ttf" - }, - { - "family": "Asap", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v34", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/asap/v34/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYkqQsLmOXoA7Glw.ttf", - "200": "https://fonts.gstatic.com/s/asap/v34/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYEqUsLmOXoA7Glw.ttf", - "300": "https://fonts.gstatic.com/s/asap/v34/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYzKUsLmOXoA7Glw.ttf", - "regular": "https://fonts.gstatic.com/s/asap/v34/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYkqUsLmOXoA7Glw.ttf", - "500": "https://fonts.gstatic.com/s/asap/v34/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYoKUsLmOXoA7Glw.ttf", - "600": "https://fonts.gstatic.com/s/asap/v34/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYTKIsLmOXoA7Glw.ttf", - "700": "https://fonts.gstatic.com/s/asap/v34/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYdaIsLmOXoA7Glw.ttf", - "800": "https://fonts.gstatic.com/s/asap/v34/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYEqIsLmOXoA7Glw.ttf", - "900": "https://fonts.gstatic.com/s/asap/v34/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYO6IsLmOXoA7Glw.ttf", - "100italic": "https://fonts.gstatic.com/s/asap/v34/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWubEbGmTggvWl0Qn.ttf", - "200italic": "https://fonts.gstatic.com/s/asap/v34/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZEbWmTggvWl0Qn.ttf", - "300italic": "https://fonts.gstatic.com/s/asap/v34/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuaabWmTggvWl0Qn.ttf", - "italic": "https://fonts.gstatic.com/s/asap/v34/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWubEbWmTggvWl0Qn.ttf", - "500italic": "https://fonts.gstatic.com/s/asap/v34/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWub2bWmTggvWl0Qn.ttf", - "600italic": "https://fonts.gstatic.com/s/asap/v34/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuYaammTggvWl0Qn.ttf", - "700italic": "https://fonts.gstatic.com/s/asap/v34/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuYjammTggvWl0Qn.ttf", - "800italic": "https://fonts.gstatic.com/s/asap/v34/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZEammTggvWl0Qn.ttf", - "900italic": "https://fonts.gstatic.com/s/asap/v34/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZtammTggvWl0Qn.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/asap/v34/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYkqUcL2mT.ttf" - }, - { - "family": "Asap Condensed", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-02", - "files": { - "200": "https://fonts.gstatic.com/s/asapcondensed/v18/pxieypY1o9NHyXh3WvSbGSggdO9DSWlEgGqgp-pO.ttf", - "200italic": "https://fonts.gstatic.com/s/asapcondensed/v18/pxiYypY1o9NHyXh3WvSbGSggdOeJUIFFim6CovpOkXA.ttf", - "300": "https://fonts.gstatic.com/s/asapcondensed/v18/pxieypY1o9NHyXh3WvSbGSggdO8nSmlEgGqgp-pO.ttf", - "300italic": "https://fonts.gstatic.com/s/asapcondensed/v18/pxiYypY1o9NHyXh3WvSbGSggdOeJUOVGim6CovpOkXA.ttf", - "regular": "https://fonts.gstatic.com/s/asapcondensed/v18/pxidypY1o9NHyXh3WvSbGSggdNeLYk1Mq3ap.ttf", - "italic": "https://fonts.gstatic.com/s/asapcondensed/v18/pxifypY1o9NHyXh3WvSbGSggdOeJaElurmapvvM.ttf", - "500": "https://fonts.gstatic.com/s/asapcondensed/v18/pxieypY1o9NHyXh3WvSbGSggdO9_S2lEgGqgp-pO.ttf", - "500italic": "https://fonts.gstatic.com/s/asapcondensed/v18/pxiYypY1o9NHyXh3WvSbGSggdOeJUL1Him6CovpOkXA.ttf", - "600": "https://fonts.gstatic.com/s/asapcondensed/v18/pxieypY1o9NHyXh3WvSbGSggdO9TTGlEgGqgp-pO.ttf", - "600italic": "https://fonts.gstatic.com/s/asapcondensed/v18/pxiYypY1o9NHyXh3WvSbGSggdOeJUJFAim6CovpOkXA.ttf", - "700": "https://fonts.gstatic.com/s/asapcondensed/v18/pxieypY1o9NHyXh3WvSbGSggdO83TWlEgGqgp-pO.ttf", - "700italic": "https://fonts.gstatic.com/s/asapcondensed/v18/pxiYypY1o9NHyXh3WvSbGSggdOeJUPVBim6CovpOkXA.ttf", - "800": "https://fonts.gstatic.com/s/asapcondensed/v18/pxieypY1o9NHyXh3WvSbGSggdO8rTmlEgGqgp-pO.ttf", - "800italic": "https://fonts.gstatic.com/s/asapcondensed/v18/pxiYypY1o9NHyXh3WvSbGSggdOeJUOlCim6CovpOkXA.ttf", - "900": "https://fonts.gstatic.com/s/asapcondensed/v18/pxieypY1o9NHyXh3WvSbGSggdO8PT2lEgGqgp-pO.ttf", - "900italic": "https://fonts.gstatic.com/s/asapcondensed/v18/pxiYypY1o9NHyXh3WvSbGSggdOeJUM1Dim6CovpOkXA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/asapcondensed/v18/pxidypY1o9NHyXh3WvSbGSggdOeKaEk.ttf" - }, - { - "family": "Asar", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/asar/v24/sZlLdRyI6TBIXkYQDLlTW6E.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/asar/v24/sZlLdRyI6TBIbkcaCA.ttf" - }, - { - "family": "Asimovian", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/asimovian/v2/oY1c8evOub78P2XN94MXCv5xY4QBLw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/asimovian/v2/oY1c8evOub78P2XN94MnC_R1.ttf" - }, - { - "family": "Asset", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v30", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/asset/v30/SLXGc1na-mM4cWImRJqExst1.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/asset/v30/SLXGc1na-mM4cVInTp4.ttf" - }, - { - "family": "Assistant", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/assistant/v24/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtmZnEGGf3qGuvM4.ttf", - "300": "https://fonts.gstatic.com/s/assistant/v24/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtrhnEGGf3qGuvM4.ttf", - "regular": "https://fonts.gstatic.com/s/assistant/v24/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtuZnEGGf3qGuvM4.ttf", - "500": "https://fonts.gstatic.com/s/assistant/v24/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQttRnEGGf3qGuvM4.ttf", - "600": "https://fonts.gstatic.com/s/assistant/v24/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtjhgEGGf3qGuvM4.ttf", - "700": "https://fonts.gstatic.com/s/assistant/v24/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtgFgEGGf3qGuvM4.ttf", - "800": "https://fonts.gstatic.com/s/assistant/v24/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtmZgEGGf3qGuvM4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/assistant/v24/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtuZnIGCV2g.ttf" - }, - { - "family": "Asta Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v3", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/astasans/v3/XoH32Y74XaWovvhMb0c3tN_dRqdT9zveo6r_mVnvqYRoVr0.ttf", - "regular": "https://fonts.gstatic.com/s/astasans/v3/XoH32Y74XaWovvhMb0c3tN_dRqdT9zveo_T_mVnvqYRoVr0.ttf", - "500": "https://fonts.gstatic.com/s/astasans/v3/XoH32Y74XaWovvhMb0c3tN_dRqdT9zveo8b_mVnvqYRoVr0.ttf", - "600": "https://fonts.gstatic.com/s/astasans/v3/XoH32Y74XaWovvhMb0c3tN_dRqdT9zveoyr4mVnvqYRoVr0.ttf", - "700": "https://fonts.gstatic.com/s/astasans/v3/XoH32Y74XaWovvhMb0c3tN_dRqdT9zveoxP4mVnvqYRoVr0.ttf", - "800": "https://fonts.gstatic.com/s/astasans/v3/XoH32Y74XaWovvhMb0c3tN_dRqdT9zveo3T4mVnvqYRoVr0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/astasans/v3/XoH32Y74XaWovvhMb0c3tN_dRqdT9zveo_T_qVjlrQ.ttf" - }, - { - "family": "Astloch", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/astloch/v27/TuGRUVJ8QI5GSeUjq9wRzMtkH1Q.ttf", - "700": "https://fonts.gstatic.com/s/astloch/v27/TuGUUVJ8QI5GSeUjk2A-6MNPA10xLMQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/astloch/v27/TuGRUVJ8QI5GSeUjm90byA.ttf" - }, - { - "family": "Asul", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/asul/v22/VuJ-dNjKxYr46fMFXK78JIg.ttf", - "700": "https://fonts.gstatic.com/s/asul/v22/VuJxdNjKxYr40U8qeKbXOIFneRo.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/asul/v22/VuJ-dNjKxYr42fIPWA.ttf" - }, - { - "family": "Athiti", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/athiti/v14/pe0sMISdLIZIv1wAxDNyAv2-C99ycg.ttf", - "300": "https://fonts.gstatic.com/s/athiti/v14/pe0sMISdLIZIv1wAoDByAv2-C99ycg.ttf", - "regular": "https://fonts.gstatic.com/s/athiti/v14/pe0vMISdLIZIv1w4DBhWCtaiAg.ttf", - "500": "https://fonts.gstatic.com/s/athiti/v14/pe0sMISdLIZIv1wA-DFyAv2-C99ycg.ttf", - "600": "https://fonts.gstatic.com/s/athiti/v14/pe0sMISdLIZIv1wA1DZyAv2-C99ycg.ttf", - "700": "https://fonts.gstatic.com/s/athiti/v14/pe0sMISdLIZIv1wAsDdyAv2-C99ycg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/athiti/v14/pe0vMISdLIZIv1wIDRJS.ttf" - }, - { - "family": "Atkinson Hyperlegible", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/atkinsonhyperlegible/v12/9Bt23C1KxNDXMspQ1lPyU89-1h6ONRlW45GE5ZgpewSSbQ.ttf", - "italic": "https://fonts.gstatic.com/s/atkinsonhyperlegible/v12/9Bt43C1KxNDXMspQ1lPyU89-1h6ONRlW45G055ItWQGCbUWn.ttf", - "700": "https://fonts.gstatic.com/s/atkinsonhyperlegible/v12/9Bt73C1KxNDXMspQ1lPyU89-1h6ONRlW45G8WbcNcy-OZFy-FA.ttf", - "700italic": "https://fonts.gstatic.com/s/atkinsonhyperlegible/v12/9Bt93C1KxNDXMspQ1lPyU89-1h6ONRlW45G056qRdiWKRlmuFH24.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/atkinsonhyperlegible/v12/9Bt23C1KxNDXMspQ1lPyU89-1h6ONRlW45G05JIt.ttf" - }, - { - "family": "Atkinson Hyperlegible Mono", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssNAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiyihrK15gZ4k_SaZnNeiDSkb2qzelw.ttf", - "300": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssNAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiyihrK15gZ4k_SaZQteiDSkb2qzelw.ttf", - "regular": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssNAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiyihrK15gZ4k_SaZHNeiDSkb2qzelw.ttf", - "500": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssNAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiyihrK15gZ4k_SaZLteiDSkb2qzelw.ttf", - "600": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssNAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiyihrK15gZ4k_SaZwtCiDSkb2qzelw.ttf", - "700": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssNAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiyihrK15gZ4k_SaZ-9CiDSkb2qzelw.ttf", - "800": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssNAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiyihrK15gZ4k_SaZnNCiDSkb2qzelw.ttf", - "200italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssPAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiwKonlKh6PW-UyGM1JTKTiMf-KnOlxYs.ttf", - "300italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssPAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiwKonlKh6PW-UyGM1JQUTiMf-KnOlxYs.ttf", - "italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssPAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiwKonlKh6PW-UyGM1JRKTiMf-KnOlxYs.ttf", - "500italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssPAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiwKonlKh6PW-UyGM1JR4TiMf-KnOlxYs.ttf", - "600italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssPAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiwKonlKh6PW-UyGM1JSUSSMf-KnOlxYs.ttf", - "700italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssPAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiwKonlKh6PW-UyGM1JStSSMf-KnOlxYs.ttf", - "800italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssPAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiwKonlKh6PW-UyGM1JTKSSMf-KnOlxYs.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tssNAoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBiyihrK15gZ4k_SaZHNeSDCMf.ttf" - }, - { - "family": "Atkinson Hyperlegible Next", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v7", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP4cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGscKFt4tOOfV4ZmW3bLQhtNl93TwPEQ.ttf", - "300": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP4cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGscKFt4tOOfV4ZmW3srQhtNl93TwPEQ.ttf", - "regular": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP4cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGscKFt4tOOfV4ZmW37LQhtNl93TwPEQ.ttf", - "500": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP4cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGscKFt4tOOfV4ZmW33rQhtNl93TwPEQ.ttf", - "600": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP4cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGscKFt4tOOfV4ZmW3MrMhtNl93TwPEQ.ttf", - "700": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP4cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGscKFt4tOOfV4ZmW3C7MhtNl93TwPEQ.ttf", - "800": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP4cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGscKFt4tOOfV4ZmW3bLMhtNl93TwPEQ.ttf", - "200italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP6cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGseiMhXSWUJ7iyGKiJPdJ99N5_zkfEYNP.ttf", - "300italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP6cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGseiMhXSWUJ7iyGKiJPeX99N5_zkfEYNP.ttf", - "italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP6cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGseiMhXSWUJ7iyGKiJPfJ99N5_zkfEYNP.ttf", - "500italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP6cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGseiMhXSWUJ7iyGKiJPf799N5_zkfEYNP.ttf", - "600italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP6cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGseiMhXSWUJ7iyGKiJPcX8NN5_zkfEYNP.ttf", - "700italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP6cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGseiMhXSWUJ7iyGKiJPcu8NN5_zkfEYNP.ttf", - "800italic": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP6cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGseiMhXSWUJ7iyGKiJPdJ8NN5_zkfEYNP.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaP4cYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGscKFt4tOOfV4ZmW37LQRtdN5.ttf" - }, - { - "family": "Atma", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "bengali", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/atma/v19/uK_z4rqWc-Eoo8JzKjc9PvedRkM.ttf", - "regular": "https://fonts.gstatic.com/s/atma/v19/uK_84rqWc-Eom25bDj8WIv4.ttf", - "500": "https://fonts.gstatic.com/s/atma/v19/uK_z4rqWc-Eoo5pyKjc9PvedRkM.ttf", - "600": "https://fonts.gstatic.com/s/atma/v19/uK_z4rqWc-Eoo7Z1Kjc9PvedRkM.ttf", - "700": "https://fonts.gstatic.com/s/atma/v19/uK_z4rqWc-Eoo9J0Kjc9PvedRkM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/atma/v19/uK_84rqWc-Eoq29RCg.ttf" - }, - { - "family": "Atomic Age", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/atomicage/v29/f0Xz0eug6sdmRFkYZZGL58Ht9a8GYeA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/atomicage/v29/f0Xz0eug6sdmRFkYZZGL18Dn8Q.ttf" - }, - { - "family": "Aubrey", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v29", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/aubrey/v29/q5uGsou7NPBw-p7vugNsCxVEgA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/aubrey/v29/q5uGsou7NPBw-p7fuwlo.ttf" - }, - { - "family": "Audiowide", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/audiowide/v22/l7gdbjpo0cum0ckerWCtkQXPExpQBw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/audiowide/v22/l7gdbjpo0cum0ckerWCdkA_L.ttf" - }, - { - "family": "Autour One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/autourone/v25/UqyVK80cP25l3fJgbdfbk5lWVscxdKE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/autourone/v25/UqyVK80cP25l3fJgbdfbo5hcUg.ttf" - }, - { - "family": "Average", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/average/v19/fC1hPYBHe23MxA7rIeJwVWytTyk.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/average/v19/fC1hPYBHe23MxA7rEeN6UQ.ttf" - }, - { - "family": "Average Sans", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/averagesans/v17/1Ptpg8fLXP2dlAXR-HlJJNJPBdqazVoK4A.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/averagesans/v17/1Ptpg8fLXP2dlAXR-HlJJNJ_BNCe.ttf" - }, - { - "family": "Averia Gruesa Libre", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/averiagruesalibre/v22/NGSov4nEGEktOaDRKsY-1dhh8eEtIx3ZUmmJw0SLRA8.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/averiagruesalibre/v22/NGSov4nEGEktOaDRKsY-1dhh8eEtIx3ZYmiDxw.ttf" - }, - { - "family": "Averia Libre", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-05-30", - "files": { - "300": "https://fonts.gstatic.com/s/averialibre/v16/2V0FKIcMGZEnV6xygz7eNjEarovtb07t-pQgTw.ttf", - "300italic": "https://fonts.gstatic.com/s/averialibre/v16/2V0HKIcMGZEnV6xygz7eNjESAJFhbUTp2JEwT4Sk.ttf", - "regular": "https://fonts.gstatic.com/s/averialibre/v16/2V0aKIcMGZEnV6xygz7eNjEiAqPJZ2Xx8w.ttf", - "italic": "https://fonts.gstatic.com/s/averialibre/v16/2V0EKIcMGZEnV6xygz7eNjESAKnNRWDh8405.ttf", - "700": "https://fonts.gstatic.com/s/averialibre/v16/2V0FKIcMGZEnV6xygz7eNjEavoztb07t-pQgTw.ttf", - "700italic": "https://fonts.gstatic.com/s/averialibre/v16/2V0HKIcMGZEnV6xygz7eNjESAJFxakTp2JEwT4Sk.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/averialibre/v16/2V0aKIcMGZEnV6xygz7eNjESA6nN.ttf" - }, - { - "family": "Averia Sans Libre", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-06-02", - "files": { - "300": "https://fonts.gstatic.com/s/averiasanslibre/v20/ga6SaxZG_G5OvCf_rt7FH3B6BHLMEd3lMKcQJZP1LmD9.ttf", - "300italic": "https://fonts.gstatic.com/s/averiasanslibre/v20/ga6caxZG_G5OvCf_rt7FH3B6BHLMEdVLKisSL5fXK3D9qtg.ttf", - "regular": "https://fonts.gstatic.com/s/averiasanslibre/v20/ga6XaxZG_G5OvCf_rt7FH3B6BHLMEeVJGIMYDo_8.ttf", - "italic": "https://fonts.gstatic.com/s/averiasanslibre/v20/ga6RaxZG_G5OvCf_rt7FH3B6BHLMEdVLEoc6C5_8N3k.ttf", - "700": "https://fonts.gstatic.com/s/averiasanslibre/v20/ga6SaxZG_G5OvCf_rt7FH3B6BHLMEd31N6cQJZP1LmD9.ttf", - "700italic": "https://fonts.gstatic.com/s/averiasanslibre/v20/ga6caxZG_G5OvCf_rt7FH3B6BHLMEdVLKjsVL5fXK3D9qtg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/averiasanslibre/v20/ga6XaxZG_G5OvCf_rt7FH3B6BHLMEdVIEoc.ttf" - }, - { - "family": "Averia Serif Libre", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-06-02", - "files": { - "300": "https://fonts.gstatic.com/s/averiaseriflibre/v19/neIVzD2ms4wxr6GvjeD0X88SHPyX2xYGCSmqwacqdrKvbQ.ttf", - "300italic": "https://fonts.gstatic.com/s/averiaseriflibre/v19/neIbzD2ms4wxr6GvjeD0X88SHPyX2xYOpzMmw60uVLe_bXHq.ttf", - "regular": "https://fonts.gstatic.com/s/averiaseriflibre/v19/neIWzD2ms4wxr6GvjeD0X88SHPyX2xY-pQGOyYw2fw.ttf", - "italic": "https://fonts.gstatic.com/s/averiaseriflibre/v19/neIUzD2ms4wxr6GvjeD0X88SHPyX2xYOpwuK64kmf6u2.ttf", - "700": "https://fonts.gstatic.com/s/averiaseriflibre/v19/neIVzD2ms4wxr6GvjeD0X88SHPyX2xYGGS6qwacqdrKvbQ.ttf", - "700italic": "https://fonts.gstatic.com/s/averiaseriflibre/v19/neIbzD2ms4wxr6GvjeD0X88SHPyX2xYOpzM2xK0uVLe_bXHq.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/averiaseriflibre/v19/neIWzD2ms4wxr6GvjeD0X88SHPyX2xYOpAuK.ttf" - }, - { - "family": "Azeret Mono", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/azeretmono/v21/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfnPRh0raa-5s3AA.ttf", - "200": "https://fonts.gstatic.com/s/azeretmono/v21/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfHPVh0raa-5s3AA.ttf", - "300": "https://fonts.gstatic.com/s/azeretmono/v21/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfwvVh0raa-5s3AA.ttf", - "regular": "https://fonts.gstatic.com/s/azeretmono/v21/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfnPVh0raa-5s3AA.ttf", - "500": "https://fonts.gstatic.com/s/azeretmono/v21/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfrvVh0raa-5s3AA.ttf", - "600": "https://fonts.gstatic.com/s/azeretmono/v21/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfQvJh0raa-5s3AA.ttf", - "700": "https://fonts.gstatic.com/s/azeretmono/v21/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfe_Jh0raa-5s3AA.ttf", - "800": "https://fonts.gstatic.com/s/azeretmono/v21/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfHPJh0raa-5s3AA.ttf", - "900": "https://fonts.gstatic.com/s/azeretmono/v21/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfNfJh0raa-5s3AA.ttf", - "100italic": "https://fonts.gstatic.com/s/azeretmono/v21/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLaJkLye2Z4nAN7J.ttf", - "200italic": "https://fonts.gstatic.com/s/azeretmono/v21/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYJkbye2Z4nAN7J.ttf", - "300italic": "https://fonts.gstatic.com/s/azeretmono/v21/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLbXkbye2Z4nAN7J.ttf", - "italic": "https://fonts.gstatic.com/s/azeretmono/v21/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLaJkbye2Z4nAN7J.ttf", - "500italic": "https://fonts.gstatic.com/s/azeretmono/v21/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLa7kbye2Z4nAN7J.ttf", - "600italic": "https://fonts.gstatic.com/s/azeretmono/v21/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLZXlrye2Z4nAN7J.ttf", - "700italic": "https://fonts.gstatic.com/s/azeretmono/v21/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLZulrye2Z4nAN7J.ttf", - "800italic": "https://fonts.gstatic.com/s/azeretmono/v21/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYJlrye2Z4nAN7J.ttf", - "900italic": "https://fonts.gstatic.com/s/azeretmono/v21/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYglrye2Z4nAN7J.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/azeretmono/v21/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfnPVR07ye.ttf" - }, - { - "family": "B612", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/b612/v13/3JnySDDxiSz32jm4GDigUXw.ttf", - "italic": "https://fonts.gstatic.com/s/b612/v13/3Jn8SDDxiSz36juyHBqlQXwdVw.ttf", - "700": "https://fonts.gstatic.com/s/b612/v13/3Jn9SDDxiSz34oWXPDCLTXUETuE.ttf", - "700italic": "https://fonts.gstatic.com/s/b612/v13/3Jn_SDDxiSz36juKoDWBSVcBXuFb0Q.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/b612/v13/3JnySDDxiSz36jiyHA.ttf" - }, - { - "family": "B612 Mono", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/b612mono/v16/kmK_Zq85QVWbN1eW6lJl1wTcquRTtg.ttf", - "italic": "https://fonts.gstatic.com/s/b612mono/v16/kmK5Zq85QVWbN1eW6lJV1Q7YiOFDtqtf.ttf", - "700": "https://fonts.gstatic.com/s/b612mono/v16/kmK6Zq85QVWbN1eW6lJdayv4os9Pv7JGSg.ttf", - "700italic": "https://fonts.gstatic.com/s/b612mono/v16/kmKkZq85QVWbN1eW6lJV1TZkp8VLnbdWSg4x.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/b612mono/v16/kmK_Zq85QVWbN1eW6lJV1g7Y.ttf" - }, - { - "family": "BBH Sans Bartle", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-10-06", - "files": { - "regular": "https://fonts.gstatic.com/s/bbhsansbartle/v1/eLGEP-v-CSnwOk_evJ1qrrCJCQTJ9eYh0tfR-Q.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bbhsansbartle/v1/eLGEP-v-CSnwOk_evJ1qrrCJCQT59Owl.ttf" - }, - { - "family": "BBH Sans Bogle", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-10-06", - "files": { - "regular": "https://fonts.gstatic.com/s/bbhsansbogle/v1/LYjbdGTyv25vPsUz0wMCwj1DMf_fcpC69i6N.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bbhsansbogle/v1/LYjbdGTyv25vPsUz0wMCwj1DMc_eeJQ.ttf" - }, - { - "family": "BBH Sans Hegarty", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-10-06", - "files": { - "regular": "https://fonts.gstatic.com/s/bbhsanshegarty/v1/UqyLK9cfCFIq--EuUZn21v4dILtJTKAJduj91zQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bbhsanshegarty/v1/UqyLK9cfCFIq--EuUZn21v4dILtJfKEDcg.ttf" - }, - { - "family": "BIZ UDGothic", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "greek-ext", - "japanese", - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/bizudgothic/v12/daafSTouBF7RUjnbt8p3LuKttQN98z_MbQ.ttf", - "700": "https://fonts.gstatic.com/s/bizudgothic/v12/daaASTouBF7RUjnbt8p3LuKVCSxZ-xTQZMhbaA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bizudgothic/v12/daafSTouBF7RUjnbt8p3LuKdtAl5.ttf" - }, - { - "family": "BIZ UDMincho", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "greek-ext", - "japanese", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/bizudmincho/v11/EJRRQgI6eOxFjBdKs38yhtW1dwT7rcpY8Q.ttf", - "700": "https://fonts.gstatic.com/s/bizudmincho/v11/EJROQgI6eOxFjBdKs38yhtWNyyvfpeFE-IyCrw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bizudmincho/v11/EJRRQgI6eOxFjBdKs38yhtWFdg7_.ttf" - }, - { - "family": "BIZ UDPGothic", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "greek-ext", - "japanese", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/bizudpgothic/v15/hES36X5pHAIBjmS84VL0Bue83nUMQWkMUAk.ttf", - "700": "https://fonts.gstatic.com/s/bizudpgothic/v15/hESq6X5pHAIBjmS84VL0Bue85skjZWEnTABCSQo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bizudpgothic/v15/hES36X5pHAIBjmS84VL0Bue87nQGRQ.ttf" - }, - { - "family": "BIZ UDPMincho", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "greek-ext", - "japanese", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/bizudpmincho/v11/ypvfbXOBrmYppy7oWWTg1_58nhhYtUb0gZk.ttf", - "700": "https://fonts.gstatic.com/s/bizudpmincho/v11/ypvCbXOBrmYppy7oWWTg1_58pqR3kU7fnZAy57k.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bizudpmincho/v11/ypvfbXOBrmYppy7oWWTg1_58rhlSsQ.ttf" - }, - { - "family": "Babylonica", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/babylonica/v7/5aUw9_i2qxWVCAE2aHjTqDJ0-VVMoEw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/babylonica/v7/5aUw9_i2qxWVCAE2aHjTmDN-_Q.ttf" - }, - { - "family": "Bacasime Antique", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/bacasimeantique/v1/tDbX2pGXkFYEykldjZSrmI6T_XWZOwStSUrV_BE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bacasimeantique/v1/tDbX2pGXkFYEykldjZSrmI6T_XWZCwWnTQ.ttf" - }, - { - "family": "Bad Script", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/badscript/v18/6NUT8F6PJgbFWQn47_x7lOwuzd1AZtw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/badscript/v18/6NUT8F6PJgbFWQn47_x7pO0kyQ.ttf" - }, - { - "family": "Badeen Display", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/badeendisplay/v1/pxidypY2sdZSjFU4cPmNBzckadeLYk1Mq3ap.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/badeendisplay/v1/pxidypY2sdZSjFU4cPmNBzckaeeKaEk.ttf" - }, - { - "family": "Bagel Fat One", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/bagelfatone/v2/hYkPPucsQOr5dy02WmQr5Zkd0B5mvv0dSbM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bagelfatone/v2/hYkPPucsQOr5dy02WmQr5Zkd4B9sug.ttf" - }, - { - "family": "Bahiana", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/bahiana/v25/uU9PCBUV4YenPWJU7xPb3vyHmlI.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bahiana/v25/uU9PCBUV4YenPWJU3xLR2g.ttf" - }, - { - "family": "Bahianita", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/bahianita/v23/yYLr0hTb3vuqqsBUgxWtxTvV2NJPcA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bahianita/v23/yYLr0hTb3vuqqsBUgxWdxDHR.ttf" - }, - { - "family": "Bai Jamjuree", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIqapSCOBt_aeQQ7ftydoa0kePuk5A1-yiSgA.ttf", - "200italic": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIoapSCOBt_aeQQ7ftydoa8W_oGkpox2S2CgOva.ttf", - "300": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIqapSCOBt_aeQQ7ftydoa09eDuk5A1-yiSgA.ttf", - "300italic": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIoapSCOBt_aeQQ7ftydoa8W_pikZox2S2CgOva.ttf", - "regular": "https://fonts.gstatic.com/s/baijamjuree/v13/LDI1apSCOBt_aeQQ7ftydoaMWcjKm7sp8g.ttf", - "italic": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIrapSCOBt_aeQQ7ftydoa8W8LOub458jGL.ttf", - "500": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIqapSCOBt_aeQQ7ftydoa0reHuk5A1-yiSgA.ttf", - "500italic": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIoapSCOBt_aeQQ7ftydoa8W_o6kJox2S2CgOva.ttf", - "600": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIqapSCOBt_aeQQ7ftydoa0gebuk5A1-yiSgA.ttf", - "600italic": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIoapSCOBt_aeQQ7ftydoa8W_oWl5ox2S2CgOva.ttf", - "700": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIqapSCOBt_aeQQ7ftydoa05efuk5A1-yiSgA.ttf", - "700italic": "https://fonts.gstatic.com/s/baijamjuree/v13/LDIoapSCOBt_aeQQ7ftydoa8W_pylpox2S2CgOva.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baijamjuree/v13/LDI1apSCOBt_aeQQ7ftydoa8WMLO.ttf" - }, - { - "family": "Bakbak One", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/bakbakone/v11/zOL54pXAl6RI-p_ardnuycRuv-hHkOs.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bakbakone/v11/zOL54pXAl6RI-p_ardnu-cVkuw.ttf" - }, - { - "family": "Ballet", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v30", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/ballet/v30/QGYyz_MYZA-HM4NjuGOVnUEXme1I4Xi3C4G-EiAou6Y.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ballet/v30/QGYyz_MYZA-HM4NjuGOVnUEXme1I4Xi3O4C0Fg.ttf" - }, - { - "family": "Baloo 2", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/baloo2/v23/wXK0E3kTposypRydzVT08TS3JnAmtdgazapv9Fat7WcN.ttf", - "500": "https://fonts.gstatic.com/s/baloo2/v23/wXK0E3kTposypRydzVT08TS3JnAmtdgozapv9Fat7WcN.ttf", - "600": "https://fonts.gstatic.com/s/baloo2/v23/wXK0E3kTposypRydzVT08TS3JnAmtdjEyqpv9Fat7WcN.ttf", - "700": "https://fonts.gstatic.com/s/baloo2/v23/wXK0E3kTposypRydzVT08TS3JnAmtdj9yqpv9Fat7WcN.ttf", - "800": "https://fonts.gstatic.com/s/baloo2/v23/wXK0E3kTposypRydzVT08TS3JnAmtdiayqpv9Fat7WcN.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baloo2/v23/wXK0E3kTposypRydzVT08TS3JnAmtdgazZpu_lI.ttf" - }, - { - "family": "Baloo Bhai 2", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v30", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/baloobhai2/v30/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNighMXeCo-jsZzo.ttf", - "500": "https://fonts.gstatic.com/s/baloobhai2/v30/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNhohMXeCo-jsZzo.ttf", - "600": "https://fonts.gstatic.com/s/baloobhai2/v30/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNvYmMXeCo-jsZzo.ttf", - "700": "https://fonts.gstatic.com/s/baloobhai2/v30/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNs8mMXeCo-jsZzo.ttf", - "800": "https://fonts.gstatic.com/s/baloobhai2/v30/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNqgmMXeCo-jsZzo.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baloobhai2/v30/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNighAXaIpw.ttf" - }, - { - "family": "Baloo Bhaijaan 2", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/baloobhaijaan2/v21/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TyRSqP4L4ppfcyC.ttf", - "500": "https://fonts.gstatic.com/s/baloobhaijaan2/v21/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TyjSqP4L4ppfcyC.ttf", - "600": "https://fonts.gstatic.com/s/baloobhaijaan2/v21/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TxPTaP4L4ppfcyC.ttf", - "700": "https://fonts.gstatic.com/s/baloobhaijaan2/v21/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8Tx2TaP4L4ppfcyC.ttf", - "800": "https://fonts.gstatic.com/s/baloobhaijaan2/v21/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TwRTaP4L4ppfcyC.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baloobhaijaan2/v21/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TyRSpP5JY4.ttf" - }, - { - "family": "Baloo Bhaina 2", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "oriya", - "vietnamese" - ], - "version": "v29", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/baloobhaina2/v29/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEssPvRfRLYWmZSA.ttf", - "500": "https://fonts.gstatic.com/s/baloobhaina2/v29/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEgMPvRfRLYWmZSA.ttf", - "600": "https://fonts.gstatic.com/s/baloobhaina2/v29/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEbMTvRfRLYWmZSA.ttf", - "700": "https://fonts.gstatic.com/s/baloobhaina2/v29/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEVcTvRfRLYWmZSA.ttf", - "800": "https://fonts.gstatic.com/s/baloobhaina2/v29/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEMsTvRfRLYWmZSA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baloobhaina2/v29/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEssPfRP5P.ttf" - }, - { - "family": "Baloo Chettan 2", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "malayalam", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/baloochettan2/v23/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CeKTO1oeH9xI2gc.ttf", - "500": "https://fonts.gstatic.com/s/baloochettan2/v23/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CdCTO1oeH9xI2gc.ttf", - "600": "https://fonts.gstatic.com/s/baloochettan2/v23/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CTyUO1oeH9xI2gc.ttf", - "700": "https://fonts.gstatic.com/s/baloochettan2/v23/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CQWUO1oeH9xI2gc.ttf", - "800": "https://fonts.gstatic.com/s/baloochettan2/v23/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CWKUO1oeH9xI2gc.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baloochettan2/v23/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CeKTC1sUGw.ttf" - }, - { - "family": "Baloo Da 2", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "bengali", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/balooda2/v26/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjALsTNe55aRa7UE.ttf", - "500": "https://fonts.gstatic.com/s/balooda2/v26/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjA5sTNe55aRa7UE.ttf", - "600": "https://fonts.gstatic.com/s/balooda2/v26/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjDVtjNe55aRa7UE.ttf", - "700": "https://fonts.gstatic.com/s/balooda2/v26/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjDstjNe55aRa7UE.ttf", - "800": "https://fonts.gstatic.com/s/balooda2/v26/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjCLtjNe55aRa7UE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/balooda2/v26/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjALsQNf7ZI.ttf" - }, - { - "family": "Baloo Paaji 2", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "gurmukhi", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v29", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/baloopaaji2/v29/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9AX74fybRUz1r5t.ttf", - "500": "https://fonts.gstatic.com/s/baloopaaji2/v29/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9Al74fybRUz1r5t.ttf", - "600": "https://fonts.gstatic.com/s/baloopaaji2/v29/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9DJ6IfybRUz1r5t.ttf", - "700": "https://fonts.gstatic.com/s/baloopaaji2/v29/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9Dw6IfybRUz1r5t.ttf", - "800": "https://fonts.gstatic.com/s/baloopaaji2/v29/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9CX6IfybRUz1r5t.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baloopaaji2/v29/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9AX77fzZxE.ttf" - }, - { - "family": "Baloo Tamma 2", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "kannada", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/balootamma2/v20/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMscPp-0IF71SGC5.ttf", - "500": "https://fonts.gstatic.com/s/balootamma2/v20/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMsuPp-0IF71SGC5.ttf", - "600": "https://fonts.gstatic.com/s/balootamma2/v20/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMvCOZ-0IF71SGC5.ttf", - "700": "https://fonts.gstatic.com/s/balootamma2/v20/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMv7OZ-0IF71SGC5.ttf", - "800": "https://fonts.gstatic.com/s/balootamma2/v20/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMucOZ-0IF71SGC5.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/balootamma2/v20/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMscPq-1Klo.ttf" - }, - { - "family": "Baloo Tammudu 2", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "telugu", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/balootammudu2/v27/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_Jf8e4c6PZSlGmAA.ttf", - "500": "https://fonts.gstatic.com/s/balootammudu2/v27/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_Jc0e4c6PZSlGmAA.ttf", - "600": "https://fonts.gstatic.com/s/balootammudu2/v27/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JSEZ4c6PZSlGmAA.ttf", - "700": "https://fonts.gstatic.com/s/balootammudu2/v27/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JRgZ4c6PZSlGmAA.ttf", - "800": "https://fonts.gstatic.com/s/balootammudu2/v27/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JX8Z4c6PZSlGmAA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/balootammudu2/v27/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_Jf8e0c-FYQ.ttf" - }, - { - "family": "Baloo Thambi 2", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/baloothambi2/v22/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKzcIzaQRG_n4osQ.ttf", - "500": "https://fonts.gstatic.com/s/baloothambi2/v22/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbK_8IzaQRG_n4osQ.ttf", - "600": "https://fonts.gstatic.com/s/baloothambi2/v22/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKE8UzaQRG_n4osQ.ttf", - "700": "https://fonts.gstatic.com/s/baloothambi2/v22/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKKsUzaQRG_n4osQ.ttf", - "800": "https://fonts.gstatic.com/s/baloothambi2/v22/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKTcUzaQRG_n4osQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baloothambi2/v22/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKzcIDaA5C.ttf" - }, - { - "family": "Balsamiq Sans", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/balsamiqsans/v15/P5sEzZiAbNrN8SB3lQQX7Pnc8dkdIYdNHzs.ttf", - "italic": "https://fonts.gstatic.com/s/balsamiqsans/v15/P5sazZiAbNrN8SB3lQQX7PncwdsXJaVIDzvcXA.ttf", - "700": "https://fonts.gstatic.com/s/balsamiqsans/v15/P5sZzZiAbNrN8SB3lQQX7PncyWUyBY9mAzLFRQI.ttf", - "700italic": "https://fonts.gstatic.com/s/balsamiqsans/v15/P5sfzZiAbNrN8SB3lQQX7PncwdsvmYpsBxDAVQI4aA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/balsamiqsans/v15/P5sEzZiAbNrN8SB3lQQX7PncwdgXJQ.ttf" - }, - { - "family": "Balthazar", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/balthazar/v18/d6lKkaajS8Gm4CVQjFEvyRTo39l8hw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/balthazar/v18/d6lKkaajS8Gm4CVQjFEfyB7s.ttf" - }, - { - "family": "Bangers", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/bangers/v25/FeVQS0BTqb0h60ACL5la2bxii28.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bangers/v25/FeVQS0BTqb0h60ACH5hQ3Q.ttf" - }, - { - "family": "Barlow", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/barlow/v13/7cHrv4kjgoGqM7E3b8s8yn4hnCci.ttf", - "100italic": "https://fonts.gstatic.com/s/barlow/v13/7cHtv4kjgoGqM7E_CfNYwHoDmTcibrA.ttf", - "200": "https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3w-oc4FAtlT47dw.ttf", - "200italic": "https://fonts.gstatic.com/s/barlow/v13/7cHsv4kjgoGqM7E_CfP04Voptzsrd6m9.ttf", - "300": "https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3p-kc4FAtlT47dw.ttf", - "300italic": "https://fonts.gstatic.com/s/barlow/v13/7cHsv4kjgoGqM7E_CfOQ4loptzsrd6m9.ttf", - "regular": "https://fonts.gstatic.com/s/barlow/v13/7cHpv4kjgoGqM7EPC8E46HsxnA.ttf", - "italic": "https://fonts.gstatic.com/s/barlow/v13/7cHrv4kjgoGqM7E_Ccs8yn4hnCci.ttf", - "500": "https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3_-gc4FAtlT47dw.ttf", - "500italic": "https://fonts.gstatic.com/s/barlow/v13/7cHsv4kjgoGqM7E_CfPI41optzsrd6m9.ttf", - "600": "https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E30-8c4FAtlT47dw.ttf", - "600italic": "https://fonts.gstatic.com/s/barlow/v13/7cHsv4kjgoGqM7E_CfPk5Foptzsrd6m9.ttf", - "700": "https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3t-4c4FAtlT47dw.ttf", - "700italic": "https://fonts.gstatic.com/s/barlow/v13/7cHsv4kjgoGqM7E_CfOA5Voptzsrd6m9.ttf", - "800": "https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3q-0c4FAtlT47dw.ttf", - "800italic": "https://fonts.gstatic.com/s/barlow/v13/7cHsv4kjgoGqM7E_CfOc5loptzsrd6m9.ttf", - "900": "https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3j-wc4FAtlT47dw.ttf", - "900italic": "https://fonts.gstatic.com/s/barlow/v13/7cHsv4kjgoGqM7E_CfO451optzsrd6m9.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/barlow/v13/7cHpv4kjgoGqM7E_Css8.ttf" - }, - { - "family": "Barlow Condensed", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxxL3I-JCGChYJ8VI-L6OO_au7B43LT31vytKgbaw.ttf", - "100italic": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxzL3I-JCGChYJ8VI-L6OO_au7B6xTru1H2lq0La6JN.ttf", - "200": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B497y_3HcuKECcrs.ttf", - "200italic": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrF3DWvIMHYrtUxg.ttf", - "300": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B47rx_3HcuKECcrs.ttf", - "300italic": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrc3PWvIMHYrtUxg.ttf", - "regular": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTx3L3I-JCGChYJ8VI-L6OO_au7B2xbZ23n3pKg.ttf", - "italic": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxxL3I-JCGChYJ8VI-L6OO_au7B6xTT31vytKgbaw.ttf", - "500": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B4-Lw_3HcuKECcrs.ttf", - "500italic": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrK3LWvIMHYrtUxg.ttf", - "600": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B4873_3HcuKECcrs.ttf", - "600italic": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrB3XWvIMHYrtUxg.ttf", - "700": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B46r2_3HcuKECcrs.ttf", - "700italic": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrY3TWvIMHYrtUxg.ttf", - "800": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B47b1_3HcuKECcrs.ttf", - "800italic": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrf3fWvIMHYrtUxg.ttf", - "900": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B45L0_3HcuKECcrs.ttf", - "900italic": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrW3bWvIMHYrtUxg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/barlowcondensed/v13/HTx3L3I-JCGChYJ8VI-L6OO_au7B6xfT3w.ttf" - }, - { - "family": "Barlow Semi Condensed", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfG4qvKk8ogoSP.ttf", - "100italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpjgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbLLIEsKh5SPZWs.ttf", - "200": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRft6uPAGEki52WfA.ttf", - "200italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJnAWsgqZiGfHK5.ttf", - "300": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf06iPAGEki52WfA.ttf", - "300italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIDAmsgqZiGfHK5.ttf", - "regular": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRnf4CrCEo4gg.ttf", - "italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfYqvKk8ogoSP.ttf", - "500": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfi6mPAGEki52WfA.ttf", - "500italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJbA2sgqZiGfHK5.ttf", - "600": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfp66PAGEki52WfA.ttf", - "600italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJ3BGsgqZiGfHK5.ttf", - "700": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfw6-PAGEki52WfA.ttf", - "700italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbITBWsgqZiGfHK5.ttf", - "800": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf36yPAGEki52WfA.ttf", - "800italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIPBmsgqZiGfHK5.ttf", - "900": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf-62PAGEki52WfA.ttf", - "900italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIrB2sgqZiGfHK5.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfoqv.ttf" - }, - { - "family": "Barriecito", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/barriecito/v18/WWXXlj-CbBOSLY2QTuY_KdUiYwTO0MU.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/barriecito/v18/WWXXlj-CbBOSLY2QTuY_GdQoZw.ttf" - }, - { - "family": "Barrio", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/barrio/v20/wEO8EBXBk8hBIDiEdQYhWdsX1Q.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/barrio/v20/wEO8EBXBk8hBIDi0dAwl.ttf" - }, - { - "family": "Basic", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/basic/v18/xfu_0WLxV2_XKQN34lDVyR7D.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/basic/v18/xfu_0WLxV2_XKTN26FQ.ttf" - }, - { - "family": "Baskervville", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/baskervville/v20/YA9Br0yU4l_XOrogbkun3kQ6vLFYXmpq8sRsYuDrugOydR1FLkw.ttf", - "500": "https://fonts.gstatic.com/s/baskervville/v20/YA9Br0yU4l_XOrogbkun3kQ6vLFYXmpq8sRsYtLrugOydR1FLkw.ttf", - "600": "https://fonts.gstatic.com/s/baskervville/v20/YA9Br0yU4l_XOrogbkun3kQ6vLFYXmpq8sRsYj7sugOydR1FLkw.ttf", - "700": "https://fonts.gstatic.com/s/baskervville/v20/YA9Br0yU4l_XOrogbkun3kQ6vLFYXmpq8sRsYgfsugOydR1FLkw.ttf", - "italic": "https://fonts.gstatic.com/s/baskervville/v20/YA9Hr0yU4l_XOrogbkun3kQQtYOnhgMBaGprdyioUkC4cT9APkyagA.ttf", - "500italic": "https://fonts.gstatic.com/s/baskervville/v20/YA9Hr0yU4l_XOrogbkun3kQQtYOnhgMBaGprdyioYEC4cT9APkyagA.ttf", - "600italic": "https://fonts.gstatic.com/s/baskervville/v20/YA9Hr0yU4l_XOrogbkun3kQQtYOnhgMBaGprdyiojEe4cT9APkyagA.ttf", - "700italic": "https://fonts.gstatic.com/s/baskervville/v20/YA9Hr0yU4l_XOrogbkun3kQQtYOnhgMBaGprdyiotUe4cT9APkyagA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baskervville/v20/YA9Br0yU4l_XOrogbkun3kQ6vLFYXmpq8sRsYuDrigK4cQ.ttf" - }, - { - "family": "Baskervville SC", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/baskervvillesc/v4/X7ny4bc_DeKlh6bBbk_WiKnBSUvL5HaHbrgS1MXKHjziXM3kPWntDsg.ttf", - "500": "https://fonts.gstatic.com/s/baskervvillesc/v4/X7ny4bc_DeKlh6bBbk_WiKnBSUvL5HaHbrgS1MXKHg7iXM3kPWntDsg.ttf", - "600": "https://fonts.gstatic.com/s/baskervvillesc/v4/X7ny4bc_DeKlh6bBbk_WiKnBSUvL5HaHbrgS1MXKHuLlXM3kPWntDsg.ttf", - "700": "https://fonts.gstatic.com/s/baskervvillesc/v4/X7ny4bc_DeKlh6bBbk_WiKnBSUvL5HaHbrgS1MXKHtvlXM3kPWntDsg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baskervvillesc/v4/X7ny4bc_DeKlh6bBbk_WiKnBSUvL5HaHbrgS1MXKHjzibMzuOQ.ttf" - }, - { - "family": "Battambang", - "variants": [ - "100", - "300", - "regular", - "700", - "900" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v26", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/battambang/v26/uk-kEGe7raEw-HjkzZabNhGp5w50_o9T7Q.ttf", - "300": "https://fonts.gstatic.com/s/battambang/v26/uk-lEGe7raEw-HjkzZabNtmLxyRa8oZK9I0.ttf", - "regular": "https://fonts.gstatic.com/s/battambang/v26/uk-mEGe7raEw-HjkzZabDnWj4yxx7o8.ttf", - "700": "https://fonts.gstatic.com/s/battambang/v26/uk-lEGe7raEw-HjkzZabNsmMxyRa8oZK9I0.ttf", - "900": "https://fonts.gstatic.com/s/battambang/v26/uk-lEGe7raEw-HjkzZabNvGOxyRa8oZK9I0.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/battambang/v26/uk-mEGe7raEw-HjkzZabPnSp5w.ttf" - }, - { - "family": "Baumans", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/baumans/v18/-W_-XJj9QyTd3QfpR_oyaksqY5Q.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/baumans/v18/-W_-XJj9QyTd3Qfpd_s4bg.ttf" - }, - { - "family": "Bayon", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v36", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/bayon/v36/9XUrlJNmn0LPFl-pOhYEd2NJ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bayon/v36/9XUrlJNmn0LPFm-oMBI.ttf" - }, - { - "family": "Be Vietnam Pro", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVNSTAyLFyeg_IDWvOJmVES_HRUBX8YYbAiah8.ttf", - "100italic": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVLSTAyLFyeg_IDWvOJmVES_HwyPRsSZZIneh-waA.ttf", - "200": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVMSTAyLFyeg_IDWvOJmVES_HT4JF8yT7wrcwap.ttf", - "200italic": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVKSTAyLFyeg_IDWvOJmVES_HwyPbczRbgJdhapcUU.ttf", - "300": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVMSTAyLFyeg_IDWvOJmVES_HScJ18yT7wrcwap.ttf", - "300italic": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVKSTAyLFyeg_IDWvOJmVES_HwyPdMwRbgJdhapcUU.ttf", - "regular": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVPSTAyLFyeg_IDWvOJmVES_EwwD3s6ZKAi.ttf", - "italic": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVNSTAyLFyeg_IDWvOJmVES_HwyBX8YYbAiah8.ttf", - "500": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVMSTAyLFyeg_IDWvOJmVES_HTEJl8yT7wrcwap.ttf", - "500italic": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVKSTAyLFyeg_IDWvOJmVES_HwyPYsxRbgJdhapcUU.ttf", - "600": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVMSTAyLFyeg_IDWvOJmVES_HToIV8yT7wrcwap.ttf", - "600italic": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVKSTAyLFyeg_IDWvOJmVES_HwyPac2RbgJdhapcUU.ttf", - "700": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVMSTAyLFyeg_IDWvOJmVES_HSMIF8yT7wrcwap.ttf", - "700italic": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVKSTAyLFyeg_IDWvOJmVES_HwyPcM3RbgJdhapcUU.ttf", - "800": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVMSTAyLFyeg_IDWvOJmVES_HSQI18yT7wrcwap.ttf", - "800italic": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVKSTAyLFyeg_IDWvOJmVES_HwyPd80RbgJdhapcUU.ttf", - "900": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVMSTAyLFyeg_IDWvOJmVES_HS0Il8yT7wrcwap.ttf", - "900italic": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVKSTAyLFyeg_IDWvOJmVES_HwyPfs1RbgJdhapcUU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bevietnampro/v12/QdVPSTAyLFyeg_IDWvOJmVES_HwxBX8.ttf" - }, - { - "family": "Beau Rivage", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/beaurivage/v2/UcCi3FIgIG2bH4mMNWJUlmg3NZp8K2sL.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/beaurivage/v2/UcCi3FIgIG2bH4mMNWJUllg2P54.ttf" - }, - { - "family": "Bebas Neue", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/bebasneue/v16/JTUSjIg69CK48gW7PXooxW5rygbi49c.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bebasneue/v16/JTUSjIg69CK48gW7PXoo9W9hzg.ttf" - }, - { - "family": "Beiruti", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/beiruti/v5/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9Y95wujgWg2SGdV.ttf", - "300": "https://fonts.gstatic.com/s/beiruti/v5/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9bj5wujgWg2SGdV.ttf", - "regular": "https://fonts.gstatic.com/s/beiruti/v5/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9a95wujgWg2SGdV.ttf", - "500": "https://fonts.gstatic.com/s/beiruti/v5/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9aP5wujgWg2SGdV.ttf", - "600": "https://fonts.gstatic.com/s/beiruti/v5/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9Zj4AujgWg2SGdV.ttf", - "700": "https://fonts.gstatic.com/s/beiruti/v5/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9Za4AujgWg2SGdV.ttf", - "800": "https://fonts.gstatic.com/s/beiruti/v5/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9Y94AujgWg2SGdV.ttf", - "900": "https://fonts.gstatic.com/s/beiruti/v5/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9YU4AujgWg2SGdV.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/beiruti/v5/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9a95zuii2w.ttf" - }, - { - "family": "Belanosima", - "variants": [ - "regular", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/belanosima/v4/3y9k6bI8ejDo_3MfCDSLxABbF3JBg54.ttf", - "600": "https://fonts.gstatic.com/s/belanosima/v4/3y9n6bI8ejDo_3MfCDSL_Nh1M3pqn5cdJ-4.ttf", - "700": "https://fonts.gstatic.com/s/belanosima/v4/3y9n6bI8ejDo_3MfCDSL_Lx0M3pqn5cdJ-4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/belanosima/v4/3y9k6bI8ejDo_3MfCDSL9AFREw.ttf" - }, - { - "family": "Belgrano", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/belgrano/v19/55xvey5tM9rwKWrJZcMFirl08KDJ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/belgrano/v19/55xvey5tM9rwKWrJZfMEgL0.ttf" - }, - { - "family": "Bellefair", - "variants": [ - "regular" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/bellefair/v15/kJExBuYY6AAuhiXUxG19__A2pOdvDA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bellefair/v15/kJExBuYY6AAuhiXUxG1N_voy.ttf" - }, - { - "family": "Belleza", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/belleza/v18/0nkoC9_pNeMfhX4BtcbyawzruP8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/belleza/v18/0nkoC9_pNeMfhX4Bhcf4bw.ttf" - }, - { - "family": "Bellota", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/bellota/v17/MwQzbhXl3_qEpiwAID55kGMViblPtXs.ttf", - "300italic": "https://fonts.gstatic.com/s/bellota/v17/MwQxbhXl3_qEpiwAKJBjHGEfjZtKpXulTQ.ttf", - "regular": "https://fonts.gstatic.com/s/bellota/v17/MwQ2bhXl3_qEpiwAGJJRtGs-lbA.ttf", - "italic": "https://fonts.gstatic.com/s/bellota/v17/MwQ0bhXl3_qEpiwAKJBbsEk7hbBWrA.ttf", - "700": "https://fonts.gstatic.com/s/bellota/v17/MwQzbhXl3_qEpiwAIC5-kGMViblPtXs.ttf", - "700italic": "https://fonts.gstatic.com/s/bellota/v17/MwQxbhXl3_qEpiwAKJBjDGYfjZtKpXulTQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bellota/v17/MwQ2bhXl3_qEpiwAKJNbsA.ttf" - }, - { - "family": "Bellota Text", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/bellotatext/v20/0FlMVP2VnlWS4f3-UE9hHXM5VfsqfQXwQy6yxg.ttf", - "300italic": "https://fonts.gstatic.com/s/bellotatext/v20/0FlOVP2VnlWS4f3-UE9hHXMx--Gmfw_0YSuixmYK.ttf", - "regular": "https://fonts.gstatic.com/s/bellotatext/v20/0FlTVP2VnlWS4f3-UE9hHXMB-dMOdS7sSg.ttf", - "italic": "https://fonts.gstatic.com/s/bellotatext/v20/0FlNVP2VnlWS4f3-UE9hHXMx-9kKVyv8Sjer.ttf", - "700": "https://fonts.gstatic.com/s/bellotatext/v20/0FlMVP2VnlWS4f3-UE9hHXM5RfwqfQXwQy6yxg.ttf", - "700italic": "https://fonts.gstatic.com/s/bellotatext/v20/0FlOVP2VnlWS4f3-UE9hHXMx--G2eA_0YSuixmYK.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bellotatext/v20/0FlTVP2VnlWS4f3-UE9hHXMx-NkK.ttf" - }, - { - "family": "BenchNine", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/benchnine/v17/ahcev8612zF4jxrwMosT--tRhWa8q0v8ag.ttf", - "regular": "https://fonts.gstatic.com/s/benchnine/v17/ahcbv8612zF4jxrwMosrV8N1jU2gog.ttf", - "700": "https://fonts.gstatic.com/s/benchnine/v17/ahcev8612zF4jxrwMosT6-xRhWa8q0v8ag.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/benchnine/v17/ahcbv8612zF4jxrwMosbVslx.ttf" - }, - { - "family": "Benne", - "variants": [ - "regular" - ], - "subsets": [ - "kannada", - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/benne/v24/L0xzDFAhn18E6Vjxlt6qTDBN.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/benne/v24/L0xzDFAhn18E6WjwnNo.ttf" - }, - { - "family": "Bentham", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/bentham/v20/VdGeAZQPEpYfmHglKWw7CJaK_y4.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bentham/v20/VdGeAZQPEpYfmHglGW0xDA.ttf" - }, - { - "family": "Berkshire Swash", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/berkshireswash/v22/ptRRTi-cavZOGqCvnNJDl5m5XmNPrcQybX4pQA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/berkshireswash/v22/ptRRTi-cavZOGqCvnNJDl5m5XmN_rM42.ttf" - }, - { - "family": "Besley", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/besley/v22/PlIhFlO1MaNwaNGWUC92IOH_mtG4fbbBSdRoFPOl8-E.ttf", - "500": "https://fonts.gstatic.com/s/besley/v22/PlIhFlO1MaNwaNGWUC92IOH_mtG4fYTBSdRoFPOl8-E.ttf", - "600": "https://fonts.gstatic.com/s/besley/v22/PlIhFlO1MaNwaNGWUC92IOH_mtG4fWjGSdRoFPOl8-E.ttf", - "700": "https://fonts.gstatic.com/s/besley/v22/PlIhFlO1MaNwaNGWUC92IOH_mtG4fVHGSdRoFPOl8-E.ttf", - "800": "https://fonts.gstatic.com/s/besley/v22/PlIhFlO1MaNwaNGWUC92IOH_mtG4fTbGSdRoFPOl8-E.ttf", - "900": "https://fonts.gstatic.com/s/besley/v22/PlIhFlO1MaNwaNGWUC92IOH_mtG4fR_GSdRoFPOl8-E.ttf", - "italic": "https://fonts.gstatic.com/s/besley/v22/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CoZdiENGg4-E04A.ttf", - "500italic": "https://fonts.gstatic.com/s/besley/v22/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6Ck5diENGg4-E04A.ttf", - "600italic": "https://fonts.gstatic.com/s/besley/v22/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6Cf5BiENGg4-E04A.ttf", - "700italic": "https://fonts.gstatic.com/s/besley/v22/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CRpBiENGg4-E04A.ttf", - "800italic": "https://fonts.gstatic.com/s/besley/v22/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CIZBiENGg4-E04A.ttf", - "900italic": "https://fonts.gstatic.com/s/besley/v22/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CCJBiENGg4-E04A.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/besley/v22/PlIhFlO1MaNwaNGWUC92IOH_mtG4fbbBedViEA.ttf" - }, - { - "family": "Beth Ellen", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/bethellen/v22/WwkbxPW2BE-3rb_JNT-qEIAiVNo5xNY.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bethellen/v22/WwkbxPW2BE-3rb_JNT-qIIEoUA.ttf" - }, - { - "family": "Bevan", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/bevan/v26/4iCj6KZ0a9NXjF8aUir7tlSJ.ttf", - "italic": "https://fonts.gstatic.com/s/bevan/v26/4iCt6KZ0a9NXjG8YWC7Zs0SJD4U.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bevan/v26/4iCj6KZ0a9NXjG8bWC4.ttf" - }, - { - "family": "BhuTuka Expanded One", - "variants": [ - "regular" - ], - "subsets": [ - "gurmukhi", - "latin", - "latin-ext" - ], - "version": "v9", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/bhutukaexpandedone/v9/SLXXc0jZ4WUJcClHTtv0t7IaDRsBsWRiJCyX8pg_RVH1.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bhutukaexpandedone/v9/SLXXc0jZ4WUJcClHTtv0t7IaDRsBsWRiJByW-Jw.ttf" - }, - { - "family": "Big Shoulders", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/bigshoulders/v4/qFdk35CPh40oITJ69S3GFqy5-BQAcbz7z7beObrv_PytqyTi33thrko9SOL9ANM1LlZAtA.ttf", - "200": "https://fonts.gstatic.com/s/bigshoulders/v4/qFdk35CPh40oITJ69S3GFqy5-BQAcbz7z7beObrv_PytqyTi33thrko9yOP9ANM1LlZAtA.ttf", - "300": "https://fonts.gstatic.com/s/bigshoulders/v4/qFdk35CPh40oITJ69S3GFqy5-BQAcbz7z7beObrv_PytqyTi33thrko9FuP9ANM1LlZAtA.ttf", - "regular": "https://fonts.gstatic.com/s/bigshoulders/v4/qFdk35CPh40oITJ69S3GFqy5-BQAcbz7z7beObrv_PytqyTi33thrko9SOP9ANM1LlZAtA.ttf", - "500": "https://fonts.gstatic.com/s/bigshoulders/v4/qFdk35CPh40oITJ69S3GFqy5-BQAcbz7z7beObrv_PytqyTi33thrko9euP9ANM1LlZAtA.ttf", - "600": "https://fonts.gstatic.com/s/bigshoulders/v4/qFdk35CPh40oITJ69S3GFqy5-BQAcbz7z7beObrv_PytqyTi33thrko9luT9ANM1LlZAtA.ttf", - "700": "https://fonts.gstatic.com/s/bigshoulders/v4/qFdk35CPh40oITJ69S3GFqy5-BQAcbz7z7beObrv_PytqyTi33thrko9r-T9ANM1LlZAtA.ttf", - "800": "https://fonts.gstatic.com/s/bigshoulders/v4/qFdk35CPh40oITJ69S3GFqy5-BQAcbz7z7beObrv_PytqyTi33thrko9yOT9ANM1LlZAtA.ttf", - "900": "https://fonts.gstatic.com/s/bigshoulders/v4/qFdk35CPh40oITJ69S3GFqy5-BQAcbz7z7beObrv_PytqyTi33thrko94eT9ANM1LlZAtA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bigshoulders/v4/qFdk35CPh40oITJ69S3GFqy5-BQAcbz7z7beObrv_PytqyTi33thrko9SOPNAdkx.ttf" - }, - { - "family": "Big Shoulders Inline", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/bigshouldersinline/v4/bx68NwSCkev-8u0YNXAF6gArLyznvspgMZDcnsTZieUyOqQzOiBfauOMaRhGeKwO1nHb-oUTA-kSKkM.ttf", - "200": "https://fonts.gstatic.com/s/bigshouldersinline/v4/bx68NwSCkev-8u0YNXAF6gArLyznvspgMZDcnsTZieUyOqQzOiBfauOMaRhGeKwO1vHa-oUTA-kSKkM.ttf", - "300": "https://fonts.gstatic.com/s/bigshouldersinline/v4/bx68NwSCkev-8u0YNXAF6gArLyznvspgMZDcnsTZieUyOqQzOiBfauOMaRhGeKwO1i_a-oUTA-kSKkM.ttf", - "regular": "https://fonts.gstatic.com/s/bigshouldersinline/v4/bx68NwSCkev-8u0YNXAF6gArLyznvspgMZDcnsTZieUyOqQzOiBfauOMaRhGeKwO1nHa-oUTA-kSKkM.ttf", - "500": "https://fonts.gstatic.com/s/bigshouldersinline/v4/bx68NwSCkev-8u0YNXAF6gArLyznvspgMZDcnsTZieUyOqQzOiBfauOMaRhGeKwO1kPa-oUTA-kSKkM.ttf", - "600": "https://fonts.gstatic.com/s/bigshouldersinline/v4/bx68NwSCkev-8u0YNXAF6gArLyznvspgMZDcnsTZieUyOqQzOiBfauOMaRhGeKwO1q_d-oUTA-kSKkM.ttf", - "700": "https://fonts.gstatic.com/s/bigshouldersinline/v4/bx68NwSCkev-8u0YNXAF6gArLyznvspgMZDcnsTZieUyOqQzOiBfauOMaRhGeKwO1pbd-oUTA-kSKkM.ttf", - "800": "https://fonts.gstatic.com/s/bigshouldersinline/v4/bx68NwSCkev-8u0YNXAF6gArLyznvspgMZDcnsTZieUyOqQzOiBfauOMaRhGeKwO1vHd-oUTA-kSKkM.ttf", - "900": "https://fonts.gstatic.com/s/bigshouldersinline/v4/bx68NwSCkev-8u0YNXAF6gArLyznvspgMZDcnsTZieUyOqQzOiBfauOMaRhGeKwO1tjd-oUTA-kSKkM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bigshouldersinline/v4/bx68NwSCkev-8u0YNXAF6gArLyznvspgMZDcnsTZieUyOqQzOiBfauOMaRhGeKwO1nHayoQZBw.ttf" - }, - { - "family": "Big Shoulders Stencil", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwM2-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbFxqa9oQbR_CiZMgOzPB7iSLKdsgE9Sp2x5OZJnqtwIp4I.ttf", - "200": "https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwM2-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbFxqa9oQbR_CiZMgOzPB7iSLKdsgE9Sp0x5eZJnqtwIp4I.ttf", - "300": "https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwM2-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbFxqa9oQbR_CiZMgOzPB7iSLKdsgE9Sp3v5eZJnqtwIp4I.ttf", - "regular": "https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwM2-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbFxqa9oQbR_CiZMgOzPB7iSLKdsgE9Sp2x5eZJnqtwIp4I.ttf", - "500": "https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwM2-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbFxqa9oQbR_CiZMgOzPB7iSLKdsgE9Sp2D5eZJnqtwIp4I.ttf", - "600": "https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwM2-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbFxqa9oQbR_CiZMgOzPB7iSLKdsgE9Sp1v4uZJnqtwIp4I.ttf", - "700": "https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwM2-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbFxqa9oQbR_CiZMgOzPB7iSLKdsgE9Sp1W4uZJnqtwIp4I.ttf", - "800": "https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwM2-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbFxqa9oQbR_CiZMgOzPB7iSLKdsgE9Sp0x4uZJnqtwIp4I.ttf", - "900": "https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwM2-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbFxqa9oQbR_CiZMgOzPB7iSLKdsgE9Sp0Y4uZJnqtwIp4I.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwM2-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbFxqa9oQbR_CiZMgOzPB7iSLKdsgE9Sp2x5dZIlK8.ttf" - }, - { - "family": "Bigelow Rules", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v31", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/bigelowrules/v31/RrQWboly8iR_I3KWSzeRuN0zT4cCH8WAJVk.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bigelowrules/v31/RrQWboly8iR_I3KWSzeRuN0zf4YIGw.ttf" - }, - { - "family": "Bigshot One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v31", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/bigshotone/v31/u-470qukhRkkO6BD_7cM_gxuUQJBXv_-.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bigshotone/v31/u-470qukhRkkO6BD_7cM_jxvWwY.ttf" - }, - { - "family": "Bilbo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/bilbo/v21/o-0EIpgpwWwZ210hpIRz4wxE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bilbo/v21/o-0EIpgpwWwZ220groA.ttf" - }, - { - "family": "Bilbo Swash Caps", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/bilboswashcaps/v23/zrf-0GXbz-H3Wb4XBsGrTgq2PVmdqAPopiRfKp8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bilboswashcaps/v23/zrf-0GXbz-H3Wb4XBsGrTgq2PVmdmALiog.ttf" - }, - { - "family": "BioRhyme", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/biorhyme/v21/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OrIimiaki-gkRDE.ttf", - "300": "https://fonts.gstatic.com/s/biorhyme/v21/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4Omwimiaki-gkRDE.ttf", - "regular": "https://fonts.gstatic.com/s/biorhyme/v21/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OjIimiaki-gkRDE.ttf", - "500": "https://fonts.gstatic.com/s/biorhyme/v21/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OgAimiaki-gkRDE.ttf", - "600": "https://fonts.gstatic.com/s/biorhyme/v21/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4Ouwlmiaki-gkRDE.ttf", - "700": "https://fonts.gstatic.com/s/biorhyme/v21/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OtUlmiaki-gkRDE.ttf", - "800": "https://fonts.gstatic.com/s/biorhyme/v21/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OrIlmiaki-gkRDE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/biorhyme/v21/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OjIiqieujw.ttf" - }, - { - "family": "BioRhyme Expanded", - "variants": [ - "200", - "300", - "regular", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/biorhymeexpanded/v23/i7dVIE1zZzytGswgU577CDY9LjbffxxcblSHSdTXrb_z.ttf", - "300": "https://fonts.gstatic.com/s/biorhymeexpanded/v23/i7dVIE1zZzytGswgU577CDY9Ljbffxw4bVSHSdTXrb_z.ttf", - "regular": "https://fonts.gstatic.com/s/biorhymeexpanded/v23/i7dQIE1zZzytGswgU577CDY9LjbffySURXCPYsje.ttf", - "700": "https://fonts.gstatic.com/s/biorhymeexpanded/v23/i7dVIE1zZzytGswgU577CDY9LjbffxwoalSHSdTXrb_z.ttf", - "800": "https://fonts.gstatic.com/s/biorhymeexpanded/v23/i7dVIE1zZzytGswgU577CDY9Ljbffxw0aVSHSdTXrb_z.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/biorhymeexpanded/v23/i7dQIE1zZzytGswgU577CDY9LjbffxSVT3Q.ttf" - }, - { - "family": "Birthstone", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/birthstone/v16/8AtsGs2xO4yLRhy87sv_HLn5jRfZHzM.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/birthstone/v16/8AtsGs2xO4yLRhy87sv_LLjziQ.ttf" - }, - { - "family": "Birthstone Bounce", - "variants": [ - "regular", - "500" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/birthstonebounce/v13/ga6XaxZF43lIvTWrktHOTBJZGH7dEeVJGIMYDo_8.ttf", - "500": "https://fonts.gstatic.com/s/birthstonebounce/v13/ga6SaxZF43lIvTWrktHOTBJZGH7dEd29MacQJZP1LmD9.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/birthstonebounce/v13/ga6XaxZF43lIvTWrktHOTBJZGH7dEdVIEoc.ttf" - }, - { - "family": "Biryani", - "variants": [ - "200", - "300", - "regular", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/biryani/v15/hv-TlzNxIFoO84YddYQyGTBSU-J-RxQ.ttf", - "300": "https://fonts.gstatic.com/s/biryani/v15/hv-TlzNxIFoO84YddeAxGTBSU-J-RxQ.ttf", - "regular": "https://fonts.gstatic.com/s/biryani/v15/hv-WlzNxIFoO84YdTUwZPTh5T-s.ttf", - "600": "https://fonts.gstatic.com/s/biryani/v15/hv-TlzNxIFoO84YddZQ3GTBSU-J-RxQ.ttf", - "700": "https://fonts.gstatic.com/s/biryani/v15/hv-TlzNxIFoO84YddfA2GTBSU-J-RxQ.ttf", - "800": "https://fonts.gstatic.com/s/biryani/v15/hv-TlzNxIFoO84Yddew1GTBSU-J-RxQ.ttf", - "900": "https://fonts.gstatic.com/s/biryani/v15/hv-TlzNxIFoO84Yddcg0GTBSU-J-RxQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/biryani/v15/hv-WlzNxIFoO84YdfU0TOQ.ttf" - }, - { - "family": "Bitcount", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcount/v3/ijxXs53kQsE1Y5J-lI1wubXnlQH-1-E1LhaU1dJRZZaHU0slfybi9GQwiTv06bjtugLjdPqK3d9XKDqRc2jrJlC4ZRsgxqxP-aVoJVvr06JyZBdg54o.ttf", - "200": "https://fonts.gstatic.com/s/bitcount/v3/ijxXs53kQsE1Y5J-lI1wubXnlQH-1-E1LhaU1dJRZZaHU0slfybi9GQwiTv06bjtugLjdPqK3d9XKDqRc2jrJlC4ZRsgxqxP-aVoJdvq06JyZBdg54o.ttf", - "300": "https://fonts.gstatic.com/s/bitcount/v3/ijxXs53kQsE1Y5J-lI1wubXnlQH-1-E1LhaU1dJRZZaHU0slfybi9GQwiTv06bjtugLjdPqK3d9XKDqRc2jrJlC4ZRsgxqxP-aVoJQXq06JyZBdg54o.ttf", - "regular": "https://fonts.gstatic.com/s/bitcount/v3/ijxXs53kQsE1Y5J-lI1wubXnlQH-1-E1LhaU1dJRZZaHU0slfybi9GQwiTv06bjtugLjdPqK3d9XKDqRc2jrJlC4ZRsgxqxP-aVoJVvq06JyZBdg54o.ttf", - "500": "https://fonts.gstatic.com/s/bitcount/v3/ijxXs53kQsE1Y5J-lI1wubXnlQH-1-E1LhaU1dJRZZaHU0slfybi9GQwiTv06bjtugLjdPqK3d9XKDqRc2jrJlC4ZRsgxqxP-aVoJWnq06JyZBdg54o.ttf", - "600": "https://fonts.gstatic.com/s/bitcount/v3/ijxXs53kQsE1Y5J-lI1wubXnlQH-1-E1LhaU1dJRZZaHU0slfybi9GQwiTv06bjtugLjdPqK3d9XKDqRc2jrJlC4ZRsgxqxP-aVoJYXt06JyZBdg54o.ttf", - "700": "https://fonts.gstatic.com/s/bitcount/v3/ijxXs53kQsE1Y5J-lI1wubXnlQH-1-E1LhaU1dJRZZaHU0slfybi9GQwiTv06bjtugLjdPqK3d9XKDqRc2jrJlC4ZRsgxqxP-aVoJbzt06JyZBdg54o.ttf", - "800": "https://fonts.gstatic.com/s/bitcount/v3/ijxXs53kQsE1Y5J-lI1wubXnlQH-1-E1LhaU1dJRZZaHU0slfybi9GQwiTv06bjtugLjdPqK3d9XKDqRc2jrJlC4ZRsgxqxP-aVoJdvt06JyZBdg54o.ttf", - "900": "https://fonts.gstatic.com/s/bitcount/v3/ijxXs53kQsE1Y5J-lI1wubXnlQH-1-E1LhaU1dJRZZaHU0slfybi9GQwiTv06bjtugLjdPqK3d9XKDqRc2jrJlC4ZRsgxqxP-aVoJfLt06JyZBdg54o.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcount/v3/ijxXs53kQsE1Y5J-lI1wubXnlQH-1-E1LhaU1dJRZZaHU0slfybi9GQwiTv06bjtugLjdPqK3d9XKDqRc2jrJlC4ZRsgxqxP-aVoJVvq46N4YA.ttf" - }, - { - "family": "Bitcount Grid Double", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBK7rFjbakJVFOargiWSKQysDITG_S0VtG0x3HD2FYHVdlZI-rLlahmEAPp8wjYMvkPq48MVQo5RQf2svjnxa5Anx8-Y-pHdkVb0ByRHaxzbXaLbA9wfZDxleZEXi_Ul10k.ttf", - "200": "https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBK7rFjbakJVFOargiWSKQysDITG_S0VtG0x3HD2FYHVdlZI-rLlahmEAPp8wjYMvkPq48MVQo5RQf2svjnxa5Anx8-Y-pHdkVb0ByRHaxzbXaLbA9wfZLxkeZEXi_Ul10k.ttf", - "300": "https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBK7rFjbakJVFOargiWSKQysDITG_S0VtG0x3HD2FYHVdlZI-rLlahmEAPp8wjYMvkPq48MVQo5RQf2svjnxa5Anx8-Y-pHdkVb0ByRHaxzbXaLbA9wfZGJkeZEXi_Ul10k.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBK7rFjbakJVFOargiWSKQysDITG_S0VtG0x3HD2FYHVdlZI-rLlahmEAPp8wjYMvkPq48MVQo5RQf2svjnxa5Anx8-Y-pHdkVb0ByRHaxzbXaLbA9wfZDxkeZEXi_Ul10k.ttf", - "500": "https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBK7rFjbakJVFOargiWSKQysDITG_S0VtG0x3HD2FYHVdlZI-rLlahmEAPp8wjYMvkPq48MVQo5RQf2svjnxa5Anx8-Y-pHdkVb0ByRHaxzbXaLbA9wfZA5keZEXi_Ul10k.ttf", - "600": "https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBK7rFjbakJVFOargiWSKQysDITG_S0VtG0x3HD2FYHVdlZI-rLlahmEAPp8wjYMvkPq48MVQo5RQf2svjnxa5Anx8-Y-pHdkVb0ByRHaxzbXaLbA9wfZOJjeZEXi_Ul10k.ttf", - "700": "https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBK7rFjbakJVFOargiWSKQysDITG_S0VtG0x3HD2FYHVdlZI-rLlahmEAPp8wjYMvkPq48MVQo5RQf2svjnxa5Anx8-Y-pHdkVb0ByRHaxzbXaLbA9wfZNtjeZEXi_Ul10k.ttf", - "800": "https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBK7rFjbakJVFOargiWSKQysDITG_S0VtG0x3HD2FYHVdlZI-rLlahmEAPp8wjYMvkPq48MVQo5RQf2svjnxa5Anx8-Y-pHdkVb0ByRHaxzbXaLbA9wfZLxjeZEXi_Ul10k.ttf", - "900": "https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBK7rFjbakJVFOargiWSKQysDITG_S0VtG0x3HD2FYHVdlZI-rLlahmEAPp8wjYMvkPq48MVQo5RQf2svjnxa5Anx8-Y-pHdkVb0ByRHaxzbXaLbA9wfZJVjeZEXi_Ul10k.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBK7rFjbakJVFOargiWSKQysDITG_S0VtG0x3HD2FYHVdlZI-rLlahmEAPp8wjYMvkPq48MVQo5RQf2svjnxa5Anx8-Y-pHdkVb0ByRHaxzbXaLbA9wfZDxkSZAdjw.ttf" - }, - { - "family": "Bitcount Grid Double Ink", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55zMcCw3FN_jOGTSZJcl588VlZiMRBEu8MNfAa1hTmcIC-EgZzYwMlaO_awRPudtyc3Y6uQYyaHkeKGSq8TU4RVR7xpYN_MnWZejEGOGrT-NcapoFhvUOhVjLNJ2XCLrbMxtAR6SYY1mL-OvDnjOVsnRj34-p6VMvv549Lg7J4HRX7TqUxwskRMxVR7_3L-QRhDtbv8kM-EDNmBQr1-hsC1tMPJC0vkO2JhzR07bFhBRdj-elg.ttf", - "200": "https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55zMcCw3FN_jOGTSZJcl588VlZiMRBEu8MNfAa1hTmcIC-EgZzYwMlaO_awRPudtyc3Y6uQYyaHkeKGSq8TU4RVR7xpYN_MnWZejEGOGrT-NcapoFhvUOhVjLNJ2XCLrbMxtAR6SYY1mL-OvDnjOVsnRj34-p6VMvv549Lg7J4HRX7TqUxwskRMxVR7_3L-QRhDtbv8kM-EDNmBQr1-hsC1tMPJC0vkO2Jhzx0_bFhBRdj-elg.ttf", - "300": "https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55zMcCw3FN_jOGTSZJcl588VlZiMRBEu8MNfAa1hTmcIC-EgZzYwMlaO_awRPudtyc3Y6uQYyaHkeKGSq8TU4RVR7xpYN_MnWZejEGOGrT-NcapoFhvUOhVjLNJ2XCLrbMxtAR6SYY1mL-OvDnjOVsnRj34-p6VMvv549Lg7J4HRX7TqUxwskRMxVR7_3L-QRhDtbv8kM-EDNmBQr1-hsC1tMPJC0vkO2JhzGU_bFhBRdj-elg.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55zMcCw3FN_jOGTSZJcl588VlZiMRBEu8MNfAa1hTmcIC-EgZzYwMlaO_awRPudtyc3Y6uQYyaHkeKGSq8TU4RVR7xpYN_MnWZejEGOGrT-NcapoFhvUOhVjLNJ2XCLrbMxtAR6SYY1mL-OvDnjOVsnRj34-p6VMvv549Lg7J4HRX7TqUxwskRMxVR7_3L-QRhDtbv8kM-EDNmBQr1-hsC1tMPJC0vkO2JhzR0_bFhBRdj-elg.ttf", - "500": "https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55zMcCw3FN_jOGTSZJcl588VlZiMRBEu8MNfAa1hTmcIC-EgZzYwMlaO_awRPudtyc3Y6uQYyaHkeKGSq8TU4RVR7xpYN_MnWZejEGOGrT-NcapoFhvUOhVjLNJ2XCLrbMxtAR6SYY1mL-OvDnjOVsnRj34-p6VMvv549Lg7J4HRX7TqUxwskRMxVR7_3L-QRhDtbv8kM-EDNmBQr1-hsC1tMPJC0vkO2JhzdU_bFhBRdj-elg.ttf", - "600": "https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55zMcCw3FN_jOGTSZJcl588VlZiMRBEu8MNfAa1hTmcIC-EgZzYwMlaO_awRPudtyc3Y6uQYyaHkeKGSq8TU4RVR7xpYN_MnWZejEGOGrT-NcapoFhvUOhVjLNJ2XCLrbMxtAR6SYY1mL-OvDnjOVsnRj34-p6VMvv549Lg7J4HRX7TqUxwskRMxVR7_3L-QRhDtbv8kM-EDNmBQr1-hsC1tMPJC0vkO2JhzmUjbFhBRdj-elg.ttf", - "700": "https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55zMcCw3FN_jOGTSZJcl588VlZiMRBEu8MNfAa1hTmcIC-EgZzYwMlaO_awRPudtyc3Y6uQYyaHkeKGSq8TU4RVR7xpYN_MnWZejEGOGrT-NcapoFhvUOhVjLNJ2XCLrbMxtAR6SYY1mL-OvDnjOVsnRj34-p6VMvv549Lg7J4HRX7TqUxwskRMxVR7_3L-QRhDtbv8kM-EDNmBQr1-hsC1tMPJC0vkO2JhzoEjbFhBRdj-elg.ttf", - "800": "https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55zMcCw3FN_jOGTSZJcl588VlZiMRBEu8MNfAa1hTmcIC-EgZzYwMlaO_awRPudtyc3Y6uQYyaHkeKGSq8TU4RVR7xpYN_MnWZejEGOGrT-NcapoFhvUOhVjLNJ2XCLrbMxtAR6SYY1mL-OvDnjOVsnRj34-p6VMvv549Lg7J4HRX7TqUxwskRMxVR7_3L-QRhDtbv8kM-EDNmBQr1-hsC1tMPJC0vkO2Jhzx0jbFhBRdj-elg.ttf", - "900": "https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55zMcCw3FN_jOGTSZJcl588VlZiMRBEu8MNfAa1hTmcIC-EgZzYwMlaO_awRPudtyc3Y6uQYyaHkeKGSq8TU4RVR7xpYN_MnWZejEGOGrT-NcapoFhvUOhVjLNJ2XCLrbMxtAR6SYY1mL-OvDnjOVsnRj34-p6VMvv549Lg7J4HRX7TqUxwskRMxVR7_3L-QRhDtbv8kM-EDNmBQr1-hsC1tMPJC0vkO2Jhz7kjbFhBRdj-elg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55zMcCw3FN_jOGTSZJcl588VlZiMRBEu8MNfAa1hTmcIC-EgZzYwMlaO_awRPudtyc3Y6uQYyaHkeKGSq8TU4RVR7xpYN_MnWZejEGOGrT-NcapoFhvUOhVjLNJ2XCLrbMxtAR6SYY1mL-OvDnjOVsnRj34-p6VMvv549Lg7J4HRX7TqUxwskRMxVR7_3L-QRhDtbv8kM-EDNmBQr1-hsC1tMPJC0vkO2JhzR0_rFxpV.ttf", - "colorCapabilities": [ - "COLRv1" - ] - }, - { - "family": "Bitcount Grid Single", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY8bfi2OU1tLpjaqQveNvbC2qfsuQPDVASHjTcBszBsXfC5C9kAKu8QoqnfqMiS4gVij5yxO41San7UnNMBH-Y9u33JUGFdHpUYahAAdbgvnnHmmgUGanohqZUINrmJ9z94.ttf", - "200": "https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY8bfi2OU1tLpjaqQveNvbC2qfsuQPDVASHjTcBszBsXfC5C9kAKu8QoqnfqMiS4gVij5yxO41San7UnNMBH-Y9u33JUGFdHpUYahAAdbgvnnHmmgUGanghrZUINrmJ9z94.ttf", - "300": "https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY8bfi2OU1tLpjaqQveNvbC2qfsuQPDVASHjTcBszBsXfC5C9kAKu8QoqnfqMiS4gVij5yxO41San7UnNMBH-Y9u33JUGFdHpUYahAAdbgvnnHmmgUGantZrZUINrmJ9z94.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY8bfi2OU1tLpjaqQveNvbC2qfsuQPDVASHjTcBszBsXfC5C9kAKu8QoqnfqMiS4gVij5yxO41San7UnNMBH-Y9u33JUGFdHpUYahAAdbgvnnHmmgUGanohrZUINrmJ9z94.ttf", - "500": "https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY8bfi2OU1tLpjaqQveNvbC2qfsuQPDVASHjTcBszBsXfC5C9kAKu8QoqnfqMiS4gVij5yxO41San7UnNMBH-Y9u33JUGFdHpUYahAAdbgvnnHmmgUGanrprZUINrmJ9z94.ttf", - "600": "https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY8bfi2OU1tLpjaqQveNvbC2qfsuQPDVASHjTcBszBsXfC5C9kAKu8QoqnfqMiS4gVij5yxO41San7UnNMBH-Y9u33JUGFdHpUYahAAdbgvnnHmmgUGanlZsZUINrmJ9z94.ttf", - "700": "https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY8bfi2OU1tLpjaqQveNvbC2qfsuQPDVASHjTcBszBsXfC5C9kAKu8QoqnfqMiS4gVij5yxO41San7UnNMBH-Y9u33JUGFdHpUYahAAdbgvnnHmmgUGanm9sZUINrmJ9z94.ttf", - "800": "https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY8bfi2OU1tLpjaqQveNvbC2qfsuQPDVASHjTcBszBsXfC5C9kAKu8QoqnfqMiS4gVij5yxO41San7UnNMBH-Y9u33JUGFdHpUYahAAdbgvnnHmmgUGanghsZUINrmJ9z94.ttf", - "900": "https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY8bfi2OU1tLpjaqQveNvbC2qfsuQPDVASHjTcBszBsXfC5C9kAKu8QoqnfqMiS4gVij5yxO41San7UnNMBH-Y9u33JUGFdHpUYahAAdbgvnnHmmgUGaniFsZUINrmJ9z94.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY8bfi2OU1tLpjaqQveNvbC2qfsuQPDVASHjTcBszBsXfC5C9kAKu8QoqnfqMiS4gVij5yxO41San7UnNMBH-Y9u33JUGFdHpUYahAAdbgvnnHmmgUGanohrVUMHqg.ttf" - }, - { - "family": "Bitcount Grid Single Ink", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaN4epOEK_VIyYAuIaZn7FnUAOSVYeI0Ctm5-AxV__OGadlXPkpqc2W3G80KvDvfZJcTBZtOWSEifRuVdQ9MPZtUsYBBEK6cMpFmAx9Xgbn8m7Ha_CUon9Fm0PP1zM05Dnsuyw04ZGzhvlKxYNMYWI3t91IQXOwJRiUJVTErJ5YUW4O8LJCoXjD9tXQjarshNDUf3e0O5j3ZjrZCu23Qd4G0EACUTNK-QKavMl1GIY8dxef0jQ.ttf", - "200": "https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaN4epOEK_VIyYAuIaZn7FnUAOSVYeI0Ctm5-AxV__OGadlXPkpqc2W3G80KvDvfZJcTBZtOWSEifRuVdQ9MPZtUsYBBEK6cMpFmAx9Xgbn8m7Ha_CUon9Fm0PP1zM05Dnsuyw04ZGzhvlKxYNMYWI3t91IQXOwJRiUJVTErJ5YUW4O8LJCoXjD9tXQjarshNDUf3e0O5j3ZjrZCu23Qd4G0EACUTNK-QKavslxGIY8dxef0jQ.ttf", - "300": "https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaN4epOEK_VIyYAuIaZn7FnUAOSVYeI0Ctm5-AxV__OGadlXPkpqc2W3G80KvDvfZJcTBZtOWSEifRuVdQ9MPZtUsYBBEK6cMpFmAx9Xgbn8m7Ha_CUon9Fm0PP1zM05Dnsuyw04ZGzhvlKxYNMYWI3t91IQXOwJRiUJVTErJ5YUW4O8LJCoXjD9tXQjarshNDUf3e0O5j3ZjrZCu23Qd4G0EACUTNK-QKavbFxGIY8dxef0jQ.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaN4epOEK_VIyYAuIaZn7FnUAOSVYeI0Ctm5-AxV__OGadlXPkpqc2W3G80KvDvfZJcTBZtOWSEifRuVdQ9MPZtUsYBBEK6cMpFmAx9Xgbn8m7Ha_CUon9Fm0PP1zM05Dnsuyw04ZGzhvlKxYNMYWI3t91IQXOwJRiUJVTErJ5YUW4O8LJCoXjD9tXQjarshNDUf3e0O5j3ZjrZCu23Qd4G0EACUTNK-QKavMlxGIY8dxef0jQ.ttf", - "500": "https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaN4epOEK_VIyYAuIaZn7FnUAOSVYeI0Ctm5-AxV__OGadlXPkpqc2W3G80KvDvfZJcTBZtOWSEifRuVdQ9MPZtUsYBBEK6cMpFmAx9Xgbn8m7Ha_CUon9Fm0PP1zM05Dnsuyw04ZGzhvlKxYNMYWI3t91IQXOwJRiUJVTErJ5YUW4O8LJCoXjD9tXQjarshNDUf3e0O5j3ZjrZCu23Qd4G0EACUTNK-QKavAFxGIY8dxef0jQ.ttf", - "600": "https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaN4epOEK_VIyYAuIaZn7FnUAOSVYeI0Ctm5-AxV__OGadlXPkpqc2W3G80KvDvfZJcTBZtOWSEifRuVdQ9MPZtUsYBBEK6cMpFmAx9Xgbn8m7Ha_CUon9Fm0PP1zM05Dnsuyw04ZGzhvlKxYNMYWI3t91IQXOwJRiUJVTErJ5YUW4O8LJCoXjD9tXQjarshNDUf3e0O5j3ZjrZCu23Qd4G0EACUTNK-QKav7FtGIY8dxef0jQ.ttf", - "700": "https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaN4epOEK_VIyYAuIaZn7FnUAOSVYeI0Ctm5-AxV__OGadlXPkpqc2W3G80KvDvfZJcTBZtOWSEifRuVdQ9MPZtUsYBBEK6cMpFmAx9Xgbn8m7Ha_CUon9Fm0PP1zM05Dnsuyw04ZGzhvlKxYNMYWI3t91IQXOwJRiUJVTErJ5YUW4O8LJCoXjD9tXQjarshNDUf3e0O5j3ZjrZCu23Qd4G0EACUTNK-QKav1VtGIY8dxef0jQ.ttf", - "800": "https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaN4epOEK_VIyYAuIaZn7FnUAOSVYeI0Ctm5-AxV__OGadlXPkpqc2W3G80KvDvfZJcTBZtOWSEifRuVdQ9MPZtUsYBBEK6cMpFmAx9Xgbn8m7Ha_CUon9Fm0PP1zM05Dnsuyw04ZGzhvlKxYNMYWI3t91IQXOwJRiUJVTErJ5YUW4O8LJCoXjD9tXQjarshNDUf3e0O5j3ZjrZCu23Qd4G0EACUTNK-QKavsltGIY8dxef0jQ.ttf", - "900": "https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaN4epOEK_VIyYAuIaZn7FnUAOSVYeI0Ctm5-AxV__OGadlXPkpqc2W3G80KvDvfZJcTBZtOWSEifRuVdQ9MPZtUsYBBEK6cMpFmAx9Xgbn8m7Ha_CUon9Fm0PP1zM05Dnsuyw04ZGzhvlKxYNMYWI3t91IQXOwJRiUJVTErJ5YUW4O8LJCoXjD9tXQjarshNDUf3e0O5j3ZjrZCu23Qd4G0EACUTNK-QKavm1tGIY8dxef0jQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaN4epOEK_VIyYAuIaZn7FnUAOSVYeI0Ctm5-AxV__OGadlXPkpqc2W3G80KvDvfZJcTBZtOWSEifRuVdQ9MPZtUsYBBEK6cMpFmAx9Xgbn8m7Ha_CUon9Fm0PP1zM05Dnsuyw04ZGzhvlKxYNMYWI3t91IQXOwJRiUJVTErJ5YUW4O8LJCoXjD9tXQjarshNDUf3e0O5j3ZjrZCu23Qd4G0EACUTNK-QKavMlx2IIUZ.ttf", - "colorCapabilities": [ - "COLRv1" - ] - }, - { - "family": "Bitcount Ink", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountink/v2/CHw3XOqbPlXqZygxqACCMDRlDHEsWMeZ-ply2TQhrGdTTV70MvuSq-hd_83nDPWRtOLnAR0RGYwUI6_l53HbUsPlZt2f_nGD_DNHtMCB7B9hQwZ0b5o6F6iN-beb4rZZL0lJiDukrkTdyFcJaMYOfDmhx95p-j2BlGfR752-BOzpyNMOV-otpEi0LP8lkm2L_v1iV4b0vZlRFNojp-LpjycCL3BeDtAVdA.ttf", - "200": "https://fonts.gstatic.com/s/bitcountink/v2/CHw3XOqbPlXqZygxqACCMDRlDHEsWMeZ-ply2TQhrGdTTV70MvuSq-hd_83nDPWRtOLnAR0RGYwUI6_l53HbUsPlZt2f_nGD_DNHtMCB7B9hQwZ0b5o6F6iN-beb4rZZL0lJiDukrkTdyFcJaMYOfDmhx95p-j2BlGfR752-BOzpyNMOV-otpEi0LP8lkm2L_v1iV4b0vZlRFNojp-LpDyYCL3BeDtAVdA.ttf", - "300": "https://fonts.gstatic.com/s/bitcountink/v2/CHw3XOqbPlXqZygxqACCMDRlDHEsWMeZ-ply2TQhrGdTTV70MvuSq-hd_83nDPWRtOLnAR0RGYwUI6_l53HbUsPlZt2f_nGD_DNHtMCB7B9hQwZ0b5o6F6iN-beb4rZZL0lJiDukrkTdyFcJaMYOfDmhx95p-j2BlGfR752-BOzpyNMOV-otpEi0LP8lkm2L_v1iV4b0vZlRFNojp-Lp0SYCL3BeDtAVdA.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountink/v2/CHw3XOqbPlXqZygxqACCMDRlDHEsWMeZ-ply2TQhrGdTTV70MvuSq-hd_83nDPWRtOLnAR0RGYwUI6_l53HbUsPlZt2f_nGD_DNHtMCB7B9hQwZ0b5o6F6iN-beb4rZZL0lJiDukrkTdyFcJaMYOfDmhx95p-j2BlGfR752-BOzpyNMOV-otpEi0LP8lkm2L_v1iV4b0vZlRFNojp-LpjyYCL3BeDtAVdA.ttf", - "500": "https://fonts.gstatic.com/s/bitcountink/v2/CHw3XOqbPlXqZygxqACCMDRlDHEsWMeZ-ply2TQhrGdTTV70MvuSq-hd_83nDPWRtOLnAR0RGYwUI6_l53HbUsPlZt2f_nGD_DNHtMCB7B9hQwZ0b5o6F6iN-beb4rZZL0lJiDukrkTdyFcJaMYOfDmhx95p-j2BlGfR752-BOzpyNMOV-otpEi0LP8lkm2L_v1iV4b0vZlRFNojp-LpvSYCL3BeDtAVdA.ttf", - "600": "https://fonts.gstatic.com/s/bitcountink/v2/CHw3XOqbPlXqZygxqACCMDRlDHEsWMeZ-ply2TQhrGdTTV70MvuSq-hd_83nDPWRtOLnAR0RGYwUI6_l53HbUsPlZt2f_nGD_DNHtMCB7B9hQwZ0b5o6F6iN-beb4rZZL0lJiDukrkTdyFcJaMYOfDmhx95p-j2BlGfR752-BOzpyNMOV-otpEi0LP8lkm2L_v1iV4b0vZlRFNojp-LpUSECL3BeDtAVdA.ttf", - "700": "https://fonts.gstatic.com/s/bitcountink/v2/CHw3XOqbPlXqZygxqACCMDRlDHEsWMeZ-ply2TQhrGdTTV70MvuSq-hd_83nDPWRtOLnAR0RGYwUI6_l53HbUsPlZt2f_nGD_DNHtMCB7B9hQwZ0b5o6F6iN-beb4rZZL0lJiDukrkTdyFcJaMYOfDmhx95p-j2BlGfR752-BOzpyNMOV-otpEi0LP8lkm2L_v1iV4b0vZlRFNojp-LpaCECL3BeDtAVdA.ttf", - "800": "https://fonts.gstatic.com/s/bitcountink/v2/CHw3XOqbPlXqZygxqACCMDRlDHEsWMeZ-ply2TQhrGdTTV70MvuSq-hd_83nDPWRtOLnAR0RGYwUI6_l53HbUsPlZt2f_nGD_DNHtMCB7B9hQwZ0b5o6F6iN-beb4rZZL0lJiDukrkTdyFcJaMYOfDmhx95p-j2BlGfR752-BOzpyNMOV-otpEi0LP8lkm2L_v1iV4b0vZlRFNojp-LpDyECL3BeDtAVdA.ttf", - "900": "https://fonts.gstatic.com/s/bitcountink/v2/CHw3XOqbPlXqZygxqACCMDRlDHEsWMeZ-ply2TQhrGdTTV70MvuSq-hd_83nDPWRtOLnAR0RGYwUI6_l53HbUsPlZt2f_nGD_DNHtMCB7B9hQwZ0b5o6F6iN-beb4rZZL0lJiDukrkTdyFcJaMYOfDmhx95p-j2BlGfR752-BOzpyNMOV-otpEi0LP8lkm2L_v1iV4b0vZlRFNojp-LpJiECL3BeDtAVdA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountink/v2/CHw3XOqbPlXqZygxqACCMDRlDHEsWMeZ-ply2TQhrGdTTV70MvuSq-hd_83nDPWRtOLnAR0RGYwUI6_l53HbUsPlZt2f_nGD_DNHtMCB7B9hQwZ0b5o6F6iN-beb4rZZL0lJiDukrkTdyFcJaMYOfDmhx95p-j2BlGfR752-BOzpyNMOV-otpEi0LP8lkm2L_v1iV4b0vZlRFNojp-LpjyYyLnpa.ttf", - "colorCapabilities": [ - "COLRv1" - ] - }, - { - "family": "Bitcount Prop Double", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2EvfY5Wn-tBSVxaDL6DUOXQJ26dEAnh698zMFjGZaPCtbJHl1TFmDKfGe4_bKUh3sC1Q7DxZ5-3PQRHsSZEX9ctiFN1ZosZvKyl3LzeFmQvK5hIm0nBWck5Kx91m1YFsiM.ttf", - "200": "https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2EvfY5Wn-tBSVxaDL6DUOXQJ26dEAnh698zMFjGZaPCtbJHl1TFmDKfGe4_bKUh3sC1Q7DxZ5-3PQRHsSZEX9ctiFN1ZosZvKyl3LzeFmQvK5hIm0nBWUk4Kx91m1YFsiM.ttf", - "300": "https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2EvfY5Wn-tBSVxaDL6DUOXQJ26dEAnh698zMFjGZaPCtbJHl1TFmDKfGe4_bKUh3sC1Q7DxZ5-3PQRHsSZEX9ctiFN1ZosZvKyl3LzeFmQvK5hIm0nBWZc4Kx91m1YFsiM.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2EvfY5Wn-tBSVxaDL6DUOXQJ26dEAnh698zMFjGZaPCtbJHl1TFmDKfGe4_bKUh3sC1Q7DxZ5-3PQRHsSZEX9ctiFN1ZosZvKyl3LzeFmQvK5hIm0nBWck4Kx91m1YFsiM.ttf", - "500": "https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2EvfY5Wn-tBSVxaDL6DUOXQJ26dEAnh698zMFjGZaPCtbJHl1TFmDKfGe4_bKUh3sC1Q7DxZ5-3PQRHsSZEX9ctiFN1ZosZvKyl3LzeFmQvK5hIm0nBWfs4Kx91m1YFsiM.ttf", - "600": "https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2EvfY5Wn-tBSVxaDL6DUOXQJ26dEAnh698zMFjGZaPCtbJHl1TFmDKfGe4_bKUh3sC1Q7DxZ5-3PQRHsSZEX9ctiFN1ZosZvKyl3LzeFmQvK5hIm0nBWRc_Kx91m1YFsiM.ttf", - "700": "https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2EvfY5Wn-tBSVxaDL6DUOXQJ26dEAnh698zMFjGZaPCtbJHl1TFmDKfGe4_bKUh3sC1Q7DxZ5-3PQRHsSZEX9ctiFN1ZosZvKyl3LzeFmQvK5hIm0nBWS4_Kx91m1YFsiM.ttf", - "800": "https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2EvfY5Wn-tBSVxaDL6DUOXQJ26dEAnh698zMFjGZaPCtbJHl1TFmDKfGe4_bKUh3sC1Q7DxZ5-3PQRHsSZEX9ctiFN1ZosZvKyl3LzeFmQvK5hIm0nBWUk_Kx91m1YFsiM.ttf", - "900": "https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2EvfY5Wn-tBSVxaDL6DUOXQJ26dEAnh698zMFjGZaPCtbJHl1TFmDKfGe4_bKUh3sC1Q7DxZ5-3PQRHsSZEX9ctiFN1ZosZvKyl3LzeFmQvK5hIm0nBWWA_Kx91m1YFsiM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2EvfY5Wn-tBSVxaDL6DUOXQJ26dEAnh698zMFjGZaPCtbJHl1TFmDKfGe4_bKUh3sC1Q7DxZ5-3PQRHsSZEX9ctiFN1ZosZvKyl3LzeFmQvK5hIm0nBWck4Gx5_nw.ttf" - }, - { - "family": "Bitcount Prop Double Ink", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4EraqgqeCwyoeHYKJOMnRRAOHVHr-2bKnsgKOU1mvV-Vk5S_hxGNApRqvOsLjMS7TL7U6J7vsT0x86f1E_MhJ7Fc8CNp0DtWIOPIdLKGVtyw2WU1OmnzDEO5QVqngZewgsX32-qkruHpLpXeSB4hOOrFaY6I-9oLQWBuD4CtdBkkmqV6mdr8M41Shcr_DYnIqojkFlhekgcGiaIMOm7DY3-ibiJFY5uuJUAz5--C4pTNcOH4A.ttf", - "200": "https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4EraqgqeCwyoeHYKJOMnRRAOHVHr-2bKnsgKOU1mvV-Vk5S_hxGNApRqvOsLjMS7TL7U6J7vsT0x86f1E_MhJ7Fc8CNp0DtWIOPIdLKGVtyw2WU1OmnzDEO5QVqngZewgsX32-qkruHpLpXeSB4hOOrFaY6I-9oLQWBuD4CtdBkkmqV6mdr8M41Shcr_DYnIqojkFlhekgcGiaIMOm7DY3-ibiJFY5uuJUAT56-C4pTNcOH4A.ttf", - "300": "https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4EraqgqeCwyoeHYKJOMnRRAOHVHr-2bKnsgKOU1mvV-Vk5S_hxGNApRqvOsLjMS7TL7U6J7vsT0x86f1E_MhJ7Fc8CNp0DtWIOPIdLKGVtyw2WU1OmnzDEO5QVqngZewgsX32-qkruHpLpXeSB4hOOrFaY6I-9oLQWBuD4CtdBkkmqV6mdr8M41Shcr_DYnIqojkFlhekgcGiaIMOm7DY3-ibiJFY5uuJUAkZ6-C4pTNcOH4A.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4EraqgqeCwyoeHYKJOMnRRAOHVHr-2bKnsgKOU1mvV-Vk5S_hxGNApRqvOsLjMS7TL7U6J7vsT0x86f1E_MhJ7Fc8CNp0DtWIOPIdLKGVtyw2WU1OmnzDEO5QVqngZewgsX32-qkruHpLpXeSB4hOOrFaY6I-9oLQWBuD4CtdBkkmqV6mdr8M41Shcr_DYnIqojkFlhekgcGiaIMOm7DY3-ibiJFY5uuJUAz56-C4pTNcOH4A.ttf", - "500": "https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4EraqgqeCwyoeHYKJOMnRRAOHVHr-2bKnsgKOU1mvV-Vk5S_hxGNApRqvOsLjMS7TL7U6J7vsT0x86f1E_MhJ7Fc8CNp0DtWIOPIdLKGVtyw2WU1OmnzDEO5QVqngZewgsX32-qkruHpLpXeSB4hOOrFaY6I-9oLQWBuD4CtdBkkmqV6mdr8M41Shcr_DYnIqojkFlhekgcGiaIMOm7DY3-ibiJFY5uuJUA_Z6-C4pTNcOH4A.ttf", - "600": "https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4EraqgqeCwyoeHYKJOMnRRAOHVHr-2bKnsgKOU1mvV-Vk5S_hxGNApRqvOsLjMS7TL7U6J7vsT0x86f1E_MhJ7Fc8CNp0DtWIOPIdLKGVtyw2WU1OmnzDEO5QVqngZewgsX32-qkruHpLpXeSB4hOOrFaY6I-9oLQWBuD4CtdBkkmqV6mdr8M41Shcr_DYnIqojkFlhekgcGiaIMOm7DY3-ibiJFY5uuJUAEZm-C4pTNcOH4A.ttf", - "700": "https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4EraqgqeCwyoeHYKJOMnRRAOHVHr-2bKnsgKOU1mvV-Vk5S_hxGNApRqvOsLjMS7TL7U6J7vsT0x86f1E_MhJ7Fc8CNp0DtWIOPIdLKGVtyw2WU1OmnzDEO5QVqngZewgsX32-qkruHpLpXeSB4hOOrFaY6I-9oLQWBuD4CtdBkkmqV6mdr8M41Shcr_DYnIqojkFlhekgcGiaIMOm7DY3-ibiJFY5uuJUAKJm-C4pTNcOH4A.ttf", - "800": "https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4EraqgqeCwyoeHYKJOMnRRAOHVHr-2bKnsgKOU1mvV-Vk5S_hxGNApRqvOsLjMS7TL7U6J7vsT0x86f1E_MhJ7Fc8CNp0DtWIOPIdLKGVtyw2WU1OmnzDEO5QVqngZewgsX32-qkruHpLpXeSB4hOOrFaY6I-9oLQWBuD4CtdBkkmqV6mdr8M41Shcr_DYnIqojkFlhekgcGiaIMOm7DY3-ibiJFY5uuJUAT5m-C4pTNcOH4A.ttf", - "900": "https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4EraqgqeCwyoeHYKJOMnRRAOHVHr-2bKnsgKOU1mvV-Vk5S_hxGNApRqvOsLjMS7TL7U6J7vsT0x86f1E_MhJ7Fc8CNp0DtWIOPIdLKGVtyw2WU1OmnzDEO5QVqngZewgsX32-qkruHpLpXeSB4hOOrFaY6I-9oLQWBuD4CtdBkkmqV6mdr8M41Shcr_DYnIqojkFlhekgcGiaIMOm7DY3-ibiJFY5uuJUAZpm-C4pTNcOH4A.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4EraqgqeCwyoeHYKJOMnRRAOHVHr-2bKnsgKOU1mvV-Vk5S_hxGNApRqvOsLjMS7TL7U6J7vsT0x86f1E_MhJ7Fc8CNp0DtWIOPIdLKGVtyw2WU1OmnzDEO5QVqngZewgsX32-qkruHpLpXeSB4hOOrFaY6I-9oLQWBuD4CtdBkkmqV6mdr8M41Shcr_DYnIqojkFlhekgcGiaIMOm7DY3-ibiJFY5uuJUAz56OCoBX.ttf", - "colorCapabilities": [ - "COLRv1" - ] - }, - { - "family": "Bitcount Prop Single", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W-gXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhz4VoumsGFhzYseFqK9f_KOwYjYsHSocfu1DlxztzQH877SgJ2SUzQ4SJdODLz0JoLU3vXFrqXQooCdbs921GXZkLGUYg0NjZiU.ttf", - "200": "https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W-gXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhz4VoumsGFhzYseFqK9f_KOwYjYsHSocfu1DlxztzQH877SgJ2SUzQ4SJdODLz0JoLU3vXFrqXQooCdbs921GfZlLGUYg0NjZiU.ttf", - "300": "https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W-gXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhz4VoumsGFhzYseFqK9f_KOwYjYsHSocfu1DlxztzQH877SgJ2SUzQ4SJdODLz0JoLU3vXFrqXQooCdbs921GShlLGUYg0NjZiU.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W-gXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhz4VoumsGFhzYseFqK9f_KOwYjYsHSocfu1DlxztzQH877SgJ2SUzQ4SJdODLz0JoLU3vXFrqXQooCdbs921GXZlLGUYg0NjZiU.ttf", - "500": "https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W-gXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhz4VoumsGFhzYseFqK9f_KOwYjYsHSocfu1DlxztzQH877SgJ2SUzQ4SJdODLz0JoLU3vXFrqXQooCdbs921GURlLGUYg0NjZiU.ttf", - "600": "https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W-gXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhz4VoumsGFhzYseFqK9f_KOwYjYsHSocfu1DlxztzQH877SgJ2SUzQ4SJdODLz0JoLU3vXFrqXQooCdbs921GahiLGUYg0NjZiU.ttf", - "700": "https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W-gXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhz4VoumsGFhzYseFqK9f_KOwYjYsHSocfu1DlxztzQH877SgJ2SUzQ4SJdODLz0JoLU3vXFrqXQooCdbs921GZFiLGUYg0NjZiU.ttf", - "800": "https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W-gXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhz4VoumsGFhzYseFqK9f_KOwYjYsHSocfu1DlxztzQH877SgJ2SUzQ4SJdODLz0JoLU3vXFrqXQooCdbs921GfZiLGUYg0NjZiU.ttf", - "900": "https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W-gXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhz4VoumsGFhzYseFqK9f_KOwYjYsHSocfu1DlxztzQH877SgJ2SUzQ4SJdODLz0JoLU3vXFrqXQooCdbs921Gd9iLGUYg0NjZiU.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W-gXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhz4VoumsGFhzYseFqK9f_KOwYjYsHSocfu1DlxztzQH877SgJ2SUzQ4SJdODLz0JoLU3vXFrqXQooCdbs921GXZlHGQShw.ttf" - }, - { - "family": "Bitcount Prop Single Ink", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXILGHRJhY4pqVPamSvcVZZF7Vdg3La14u9PlzzO1nQEbZPzF-4gWjUKyDXV8KJN2EmG9tnR1UwPVIktRU7KfRvK49YKhcKoqpd0qENrktXGo3hmFUX9oJiQ_cI3D53uhksE9rntl1PkS1IjdhAg77zMwnnLO7zJ5bZKR5MO8LRFFwWr-XrNplyw2CuD3tEnNissrzK7ZCnsz5HReNrx9v6MX009gC5TFm4u37HDRGOJzIi0xg.ttf", - "200": "https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXILGHRJhY4pqVPamSvcVZZF7Vdg3La14u9PlzzO1nQEbZPzF-4gWjUKyDXV8KJN2EmG9tnR1UwPVIktRU7KfRvK49YKhcKoqpd0qENrktXGo3hmFUX9oJiQ_cI3D53uhksE9rntl1PkS1IjdhAg77zMwnnLO7zJ5bZKR5MO8LRFFwWr-XrNplyw2CuD3tEnNissrzK7ZCnsz5HReNrx9v6MX009gC5TFm4uX7DDRGOJzIi0xg.ttf", - "300": "https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXILGHRJhY4pqVPamSvcVZZF7Vdg3La14u9PlzzO1nQEbZPzF-4gWjUKyDXV8KJN2EmG9tnR1UwPVIktRU7KfRvK49YKhcKoqpd0qENrktXGo3hmFUX9oJiQ_cI3D53uhksE9rntl1PkS1IjdhAg77zMwnnLO7zJ5bZKR5MO8LRFFwWr-XrNplyw2CuD3tEnNissrzK7ZCnsz5HReNrx9v6MX009gC5TFm4ugbDDRGOJzIi0xg.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXILGHRJhY4pqVPamSvcVZZF7Vdg3La14u9PlzzO1nQEbZPzF-4gWjUKyDXV8KJN2EmG9tnR1UwPVIktRU7KfRvK49YKhcKoqpd0qENrktXGo3hmFUX9oJiQ_cI3D53uhksE9rntl1PkS1IjdhAg77zMwnnLO7zJ5bZKR5MO8LRFFwWr-XrNplyw2CuD3tEnNissrzK7ZCnsz5HReNrx9v6MX009gC5TFm4u37DDRGOJzIi0xg.ttf", - "500": "https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXILGHRJhY4pqVPamSvcVZZF7Vdg3La14u9PlzzO1nQEbZPzF-4gWjUKyDXV8KJN2EmG9tnR1UwPVIktRU7KfRvK49YKhcKoqpd0qENrktXGo3hmFUX9oJiQ_cI3D53uhksE9rntl1PkS1IjdhAg77zMwnnLO7zJ5bZKR5MO8LRFFwWr-XrNplyw2CuD3tEnNissrzK7ZCnsz5HReNrx9v6MX009gC5TFm4u7bDDRGOJzIi0xg.ttf", - "600": "https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXILGHRJhY4pqVPamSvcVZZF7Vdg3La14u9PlzzO1nQEbZPzF-4gWjUKyDXV8KJN2EmG9tnR1UwPVIktRU7KfRvK49YKhcKoqpd0qENrktXGo3hmFUX9oJiQ_cI3D53uhksE9rntl1PkS1IjdhAg77zMwnnLO7zJ5bZKR5MO8LRFFwWr-XrNplyw2CuD3tEnNissrzK7ZCnsz5HReNrx9v6MX009gC5TFm4uAbfDRGOJzIi0xg.ttf", - "700": "https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXILGHRJhY4pqVPamSvcVZZF7Vdg3La14u9PlzzO1nQEbZPzF-4gWjUKyDXV8KJN2EmG9tnR1UwPVIktRU7KfRvK49YKhcKoqpd0qENrktXGo3hmFUX9oJiQ_cI3D53uhksE9rntl1PkS1IjdhAg77zMwnnLO7zJ5bZKR5MO8LRFFwWr-XrNplyw2CuD3tEnNissrzK7ZCnsz5HReNrx9v6MX009gC5TFm4uOLfDRGOJzIi0xg.ttf", - "800": "https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXILGHRJhY4pqVPamSvcVZZF7Vdg3La14u9PlzzO1nQEbZPzF-4gWjUKyDXV8KJN2EmG9tnR1UwPVIktRU7KfRvK49YKhcKoqpd0qENrktXGo3hmFUX9oJiQ_cI3D53uhksE9rntl1PkS1IjdhAg77zMwnnLO7zJ5bZKR5MO8LRFFwWr-XrNplyw2CuD3tEnNissrzK7ZCnsz5HReNrx9v6MX009gC5TFm4uX7fDRGOJzIi0xg.ttf", - "900": "https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXILGHRJhY4pqVPamSvcVZZF7Vdg3La14u9PlzzO1nQEbZPzF-4gWjUKyDXV8KJN2EmG9tnR1UwPVIktRU7KfRvK49YKhcKoqpd0qENrktXGo3hmFUX9oJiQ_cI3D53uhksE9rntl1PkS1IjdhAg77zMwnnLO7zJ5bZKR5MO8LRFFwWr-XrNplyw2CuD3tEnNissrzK7ZCnsz5HReNrx9v6MX009gC5TFm4udrfDRGOJzIi0xg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXILGHRJhY4pqVPamSvcVZZF7Vdg3La14u9PlzzO1nQEbZPzF-4gWjUKyDXV8KJN2EmG9tnR1UwPVIktRU7KfRvK49YKhcKoqpd0qENrktXGo3hmFUX9oJiQ_cI3D53uhksE9rntl1PkS1IjdhAg77zMwnnLO7zJ5bZKR5MO8LRFFwWr-XrNplyw2CuD3tEnNissrzK7ZCnsz5HReNrx9v6MX009gC5TFm4u37DzRWmN.ttf", - "colorCapabilities": [ - "COLRv1" - ] - }, - { - "family": "Bitcount Single", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountsingle/v3/or25Q6T72-iP2RY6OLSkb95a817cjULDyyhvb6tTxCxtAOObpH9NnfLjSWiXv_OGqtjRD0BNzrItMZWC-9SK8R6EpA2l9RAyOs8BbxT7gd3xw8jKC4tYzXjwevWm.ttf", - "200": "https://fonts.gstatic.com/s/bitcountsingle/v3/or25Q6T72-iP2RY6OLSkb95a817cjULDyyhvb6tTxCxtAOObpH9NnfLjSWiXv_OGqtjRD0BNzrItMZWC-9SK8R6EpA2l9RAyOs8BbxT7gd3xw8hKCotYzXjwevWm.ttf", - "300": "https://fonts.gstatic.com/s/bitcountsingle/v3/or25Q6T72-iP2RY6OLSkb95a817cjULDyyhvb6tTxCxtAOObpH9NnfLjSWiXv_OGqtjRD0BNzrItMZWC-9SK8R6EpA2l9RAyOs8BbxT7gd3xw8iUCotYzXjwevWm.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountsingle/v3/or25Q6T72-iP2RY6OLSkb95a817cjULDyyhvb6tTxCxtAOObpH9NnfLjSWiXv_OGqtjRD0BNzrItMZWC-9SK8R6EpA2l9RAyOs8BbxT7gd3xw8jKCotYzXjwevWm.ttf", - "500": "https://fonts.gstatic.com/s/bitcountsingle/v3/or25Q6T72-iP2RY6OLSkb95a817cjULDyyhvb6tTxCxtAOObpH9NnfLjSWiXv_OGqtjRD0BNzrItMZWC-9SK8R6EpA2l9RAyOs8BbxT7gd3xw8j4CotYzXjwevWm.ttf", - "600": "https://fonts.gstatic.com/s/bitcountsingle/v3/or25Q6T72-iP2RY6OLSkb95a817cjULDyyhvb6tTxCxtAOObpH9NnfLjSWiXv_OGqtjRD0BNzrItMZWC-9SK8R6EpA2l9RAyOs8BbxT7gd3xw8gUDYtYzXjwevWm.ttf", - "700": "https://fonts.gstatic.com/s/bitcountsingle/v3/or25Q6T72-iP2RY6OLSkb95a817cjULDyyhvb6tTxCxtAOObpH9NnfLjSWiXv_OGqtjRD0BNzrItMZWC-9SK8R6EpA2l9RAyOs8BbxT7gd3xw8gtDYtYzXjwevWm.ttf", - "800": "https://fonts.gstatic.com/s/bitcountsingle/v3/or25Q6T72-iP2RY6OLSkb95a817cjULDyyhvb6tTxCxtAOObpH9NnfLjSWiXv_OGqtjRD0BNzrItMZWC-9SK8R6EpA2l9RAyOs8BbxT7gd3xw8hKDYtYzXjwevWm.ttf", - "900": "https://fonts.gstatic.com/s/bitcountsingle/v3/or25Q6T72-iP2RY6OLSkb95a817cjULDyyhvb6tTxCxtAOObpH9NnfLjSWiXv_OGqtjRD0BNzrItMZWC-9SK8R6EpA2l9RAyOs8BbxT7gd3xw8hjDYtYzXjwevWm.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountsingle/v3/or25Q6T72-iP2RY6OLSkb95a817cjULDyyhvb6tTxCxtAOObpH9NnfLjSWiXv_OGqtjRD0BNzrItMZWC-9SK8R6EpA2l9RAyOs8BbxT7gd3xw8jKCrtZx3w.ttf" - }, - { - "family": "Bitcount Single Ink", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/bitcountsingleink/v4/Fwb25OZl6FQz81GlJoqgm6XFwi_b1Oat-linM3eIpWvrZ9yhd874qjc72qi5T1IMgiBoydD3bDjJgnXIJ9Cr_oGr36FB5R5iKLRfpSXGN3dP9opQwU38v-r6dJk-vDaziAhRxAxKG59HJAjcNGNBlalyPEmoi939mIWU-GaeCu-JxR9Tn0k2TuKy0CJqQ-Jyh2beggR6Zmt0ewICe5TepUFVly3QN0T8ugz0rbvZS6k.ttf", - "200": "https://fonts.gstatic.com/s/bitcountsingleink/v4/Fwb25OZl6FQz81GlJoqgm6XFwi_b1Oat-linM3eIpWvrZ9yhd874qjc72qi5T1IMgiBoydD3bDjJgnXIJ9Cr_oGr36FB5R5iKLRfpSXGN3dP9opQwU38v-r6dJk-vDaziAhRxAxKG59HJAjcNGNBlalyPEmoi939mIWU-GaeCu-JxR9Tn0k2TuKy0CJqQ-Jyh2beggR6Zmt0ewICe5TepUFVly3QN8T9ugz0rbvZS6k.ttf", - "300": "https://fonts.gstatic.com/s/bitcountsingleink/v4/Fwb25OZl6FQz81GlJoqgm6XFwi_b1Oat-linM3eIpWvrZ9yhd874qjc72qi5T1IMgiBoydD3bDjJgnXIJ9Cr_oGr36FB5R5iKLRfpSXGN3dP9opQwU38v-r6dJk-vDaziAhRxAxKG59HJAjcNGNBlalyPEmoi939mIWU-GaeCu-JxR9Tn0k2TuKy0CJqQ-Jyh2beggR6Zmt0ewICe5TepUFVly3QNxr9ugz0rbvZS6k.ttf", - "regular": "https://fonts.gstatic.com/s/bitcountsingleink/v4/Fwb25OZl6FQz81GlJoqgm6XFwi_b1Oat-linM3eIpWvrZ9yhd874qjc72qi5T1IMgiBoydD3bDjJgnXIJ9Cr_oGr36FB5R5iKLRfpSXGN3dP9opQwU38v-r6dJk-vDaziAhRxAxKG59HJAjcNGNBlalyPEmoi939mIWU-GaeCu-JxR9Tn0k2TuKy0CJqQ-Jyh2beggR6Zmt0ewICe5TepUFVly3QN0T9ugz0rbvZS6k.ttf", - "500": "https://fonts.gstatic.com/s/bitcountsingleink/v4/Fwb25OZl6FQz81GlJoqgm6XFwi_b1Oat-linM3eIpWvrZ9yhd874qjc72qi5T1IMgiBoydD3bDjJgnXIJ9Cr_oGr36FB5R5iKLRfpSXGN3dP9opQwU38v-r6dJk-vDaziAhRxAxKG59HJAjcNGNBlalyPEmoi939mIWU-GaeCu-JxR9Tn0k2TuKy0CJqQ-Jyh2beggR6Zmt0ewICe5TepUFVly3QN3b9ugz0rbvZS6k.ttf", - "600": "https://fonts.gstatic.com/s/bitcountsingleink/v4/Fwb25OZl6FQz81GlJoqgm6XFwi_b1Oat-linM3eIpWvrZ9yhd874qjc72qi5T1IMgiBoydD3bDjJgnXIJ9Cr_oGr36FB5R5iKLRfpSXGN3dP9opQwU38v-r6dJk-vDaziAhRxAxKG59HJAjcNGNBlalyPEmoi939mIWU-GaeCu-JxR9Tn0k2TuKy0CJqQ-Jyh2beggR6Zmt0ewICe5TepUFVly3QN5r6ugz0rbvZS6k.ttf", - "700": "https://fonts.gstatic.com/s/bitcountsingleink/v4/Fwb25OZl6FQz81GlJoqgm6XFwi_b1Oat-linM3eIpWvrZ9yhd874qjc72qi5T1IMgiBoydD3bDjJgnXIJ9Cr_oGr36FB5R5iKLRfpSXGN3dP9opQwU38v-r6dJk-vDaziAhRxAxKG59HJAjcNGNBlalyPEmoi939mIWU-GaeCu-JxR9Tn0k2TuKy0CJqQ-Jyh2beggR6Zmt0ewICe5TepUFVly3QN6P6ugz0rbvZS6k.ttf", - "800": "https://fonts.gstatic.com/s/bitcountsingleink/v4/Fwb25OZl6FQz81GlJoqgm6XFwi_b1Oat-linM3eIpWvrZ9yhd874qjc72qi5T1IMgiBoydD3bDjJgnXIJ9Cr_oGr36FB5R5iKLRfpSXGN3dP9opQwU38v-r6dJk-vDaziAhRxAxKG59HJAjcNGNBlalyPEmoi939mIWU-GaeCu-JxR9Tn0k2TuKy0CJqQ-Jyh2beggR6Zmt0ewICe5TepUFVly3QN8T6ugz0rbvZS6k.ttf", - "900": "https://fonts.gstatic.com/s/bitcountsingleink/v4/Fwb25OZl6FQz81GlJoqgm6XFwi_b1Oat-linM3eIpWvrZ9yhd874qjc72qi5T1IMgiBoydD3bDjJgnXIJ9Cr_oGr36FB5R5iKLRfpSXGN3dP9opQwU38v-r6dJk-vDaziAhRxAxKG59HJAjcNGNBlalyPEmoi939mIWU-GaeCu-JxR9Tn0k2TuKy0CJqQ-Jyh2beggR6Zmt0ewICe5TepUFVly3QN-36ugz0rbvZS6k.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitcountsingleink/v4/Fwb25OZl6FQz81GlJoqgm6XFwi_b1Oat-linM3eIpWvrZ9yhd874qjc72qi5T1IMgiBoydD3bDjJgnXIJ9Cr_oGr36FB5R5iKLRfpSXGN3dP9opQwU38v-r6dJk-vDaziAhRxAxKG59HJAjcNGNBlalyPEmoi939mIWU-GaeCu-JxR9Tn0k2TuKy0CJqQ-Jyh2beggR6Zmt0ewICe5TepUFVly3QN0T9ig3-qQ.ttf", - "colorCapabilities": [ - "COLRv1" - ] - }, - { - "family": "Bitter", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v40", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/bitter/v40/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8fbeCL_EXFh2reU.ttf", - "200": "https://fonts.gstatic.com/s/bitter/v40/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8XbfCL_EXFh2reU.ttf", - "300": "https://fonts.gstatic.com/s/bitter/v40/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8ajfCL_EXFh2reU.ttf", - "regular": "https://fonts.gstatic.com/s/bitter/v40/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8fbfCL_EXFh2reU.ttf", - "500": "https://fonts.gstatic.com/s/bitter/v40/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8cTfCL_EXFh2reU.ttf", - "600": "https://fonts.gstatic.com/s/bitter/v40/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8SjYCL_EXFh2reU.ttf", - "700": "https://fonts.gstatic.com/s/bitter/v40/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8RHYCL_EXFh2reU.ttf", - "800": "https://fonts.gstatic.com/s/bitter/v40/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8XbYCL_EXFh2reU.ttf", - "900": "https://fonts.gstatic.com/s/bitter/v40/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8V_YCL_EXFh2reU.ttf", - "100italic": "https://fonts.gstatic.com/s/bitter/v40/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c4P3OWHpzveWxBw.ttf", - "200italic": "https://fonts.gstatic.com/s/bitter/v40/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cYPzOWHpzveWxBw.ttf", - "300italic": "https://fonts.gstatic.com/s/bitter/v40/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cvvzOWHpzveWxBw.ttf", - "italic": "https://fonts.gstatic.com/s/bitter/v40/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c4PzOWHpzveWxBw.ttf", - "500italic": "https://fonts.gstatic.com/s/bitter/v40/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c0vzOWHpzveWxBw.ttf", - "600italic": "https://fonts.gstatic.com/s/bitter/v40/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cPvvOWHpzveWxBw.ttf", - "700italic": "https://fonts.gstatic.com/s/bitter/v40/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cB_vOWHpzveWxBw.ttf", - "800italic": "https://fonts.gstatic.com/s/bitter/v40/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cYPvOWHpzveWxBw.ttf", - "900italic": "https://fonts.gstatic.com/s/bitter/v40/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cSfvOWHpzveWxBw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bitter/v40/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8fbfOL7OWA.ttf" - }, - { - "family": "Black And White Picture", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v30", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/blackandwhitepicture/v30/TwMe-JAERlQd3ooUHBUXGmrmioKjjnRSFO-NqI5HbcMi-yWY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/blackandwhitepicture/v30/TwMe-JAERlQd3ooUHBUXGmrmioKjjnRSFO-NqL5GZ8c.ttf" - }, - { - "family": "Black Han Sans", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/blackhansans/v24/ea8Aad44WunzF9a-dL6toA8r8nqVIXSkH-Hc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/blackhansans/v24/ea8Aad44WunzF9a-dL6toA8r8kqUK3A.ttf" - }, - { - "family": "Black Ops One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/blackopsone/v21/qWcsB6-ypo7xBdr6Xshe96H3WDzRtjkho4M.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/blackopsone/v21/qWcsB6-ypo7xBdr6Xshe96H3aD3bsg.ttf" - }, - { - "family": "Blaka", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/blaka/v8/8vIG7w8722p_6kdr20D2FV5e.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/blaka/v8/8vIG7w8722p_6ndq0UQ.ttf" - }, - { - "family": "Blaka Hollow", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/blakahollow/v8/MCoUzAL91sjRE2FsKsxUtezYB9oFyW_-oA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/blakahollow/v8/MCoUzAL91sjRE2FsKsxUtezoBtAB.ttf" - }, - { - "family": "Blaka Ink", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v10", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/blakaink/v10/AlZy_zVVtpj22Znag2chdXf4XB0Tow.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/blakaink/v10/AlZy_zVVtpj22Znag2cRdH38.ttf", - "colorCapabilities": [ - "COLRv1", - "SVG" - ] - }, - { - "family": "Blinker", - "variants": [ - "100", - "200", - "300", - "regular", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/blinker/v14/cIf_MaFatEE-VTaP_E2hZEsCkIt9QQ.ttf", - "200": "https://fonts.gstatic.com/s/blinker/v14/cIf4MaFatEE-VTaP_OGARGEsnIJkWL4.ttf", - "300": "https://fonts.gstatic.com/s/blinker/v14/cIf4MaFatEE-VTaP_IWDRGEsnIJkWL4.ttf", - "regular": "https://fonts.gstatic.com/s/blinker/v14/cIf9MaFatEE-VTaPxCmrYGkHgIs.ttf", - "600": "https://fonts.gstatic.com/s/blinker/v14/cIf4MaFatEE-VTaP_PGFRGEsnIJkWL4.ttf", - "700": "https://fonts.gstatic.com/s/blinker/v14/cIf4MaFatEE-VTaP_JWERGEsnIJkWL4.ttf", - "800": "https://fonts.gstatic.com/s/blinker/v14/cIf4MaFatEE-VTaP_ImHRGEsnIJkWL4.ttf", - "900": "https://fonts.gstatic.com/s/blinker/v14/cIf4MaFatEE-VTaP_K2GRGEsnIJkWL4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/blinker/v14/cIf9MaFatEE-VTaP9CihZA.ttf" - }, - { - "family": "Bodoni Moda", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oU7awIBytVjMYwE.ttf", - "500": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oXzawIBytVjMYwE.ttf", - "600": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oZDdwIBytVjMYwE.ttf", - "700": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oandwIBytVjMYwE.ttf", - "800": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oc7dwIBytVjMYwE.ttf", - "900": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oefdwIBytVjMYwE.ttf", - "italic": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZKMN4sXrJcwHqoQ.ttf", - "500italic": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZGsN4sXrJcwHqoQ.ttf", - "600italic": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZ9sR4sXrJcwHqoQ.ttf", - "700italic": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZz8R4sXrJcwHqoQ.ttf", - "800italic": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZqMR4sXrJcwHqoQ.ttf", - "900italic": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZgcR4sXrJcwHqoQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bodonimoda/v28/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oU7a8IF4sQ.ttf" - }, - { - "family": "Bodoni Moda SC", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v3", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbA7uXJyb9N7yr8E.ttf", - "500": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbDzuXJyb9N7yr8E.ttf", - "600": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbNDpXJyb9N7yr8E.ttf", - "700": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbOnpXJyb9N7yr8E.ttf", - "800": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbI7pXJyb9N7yr8E.ttf", - "900": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbKfpXJyb9N7yr8E.ttf", - "italic": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecattN-R8Pz3v8Etew.ttf", - "500italic": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecatht-R8Pz3v8Etew.ttf", - "600italic": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecatatiR8Pz3v8Etew.ttf", - "700italic": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecatU9iR8Pz3v8Etew.ttf", - "800italic": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecatNNiR8Pz3v8Etew.ttf", - "900italic": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecatHdiR8Pz3v8Etew.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bodonimodasc/v3/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbA7ubJ2R8A.ttf" - }, - { - "family": "Bokor", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v32", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/bokor/v32/m8JcjfpeeaqTiR2WdInbcaxE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bokor/v32/m8JcjfpeeaqTiS2Xfo0.ttf" - }, - { - "family": "Boldonse", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/boldonse/v1/ZgNQjPxGPbbJUZemjC38hmHmNpCO.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/boldonse/v1/ZgNQjPxGPbbJUZemjB39jGU.ttf" - }, - { - "family": "Bona Nova", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "hebrew", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/bonanova/v12/B50NF7ZCpX7fcHfvIUBJi6hqHK-CLA.ttf", - "italic": "https://fonts.gstatic.com/s/bonanova/v12/B50LF7ZCpX7fcHfvIUB5iaJuPqqSLJYf.ttf", - "700": "https://fonts.gstatic.com/s/bonanova/v12/B50IF7ZCpX7fcHfvIUBxN4dOFISeJY8GgQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bonanova/v12/B50NF7ZCpX7fcHfvIUB5iqJu.ttf" - }, - { - "family": "Bona Nova SC", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "hebrew", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/bonanovasc/v1/mem5YaShyGWDiYdPG_c1Af4-VeJoCqeDjg.ttf", - "italic": "https://fonts.gstatic.com/s/bonanovasc/v1/memnYaShyGWDiYdPG_c1Af4OV-hsKKKTjrPW.ttf", - "700": "https://fonts.gstatic.com/s/bonanovasc/v1/memmYaShyGWDiYdPG_c1Af4G6c1MAoyfh6rPXA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bonanovasc/v1/mem5YaShyGWDiYdPG_c1Af4OVOhs.ttf" - }, - { - "family": "Bonbon", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v32", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/bonbon/v32/0FlVVPeVlFec4ee_cDEAbQY5-A.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bonbon/v32/0FlVVPeVlFec4eePcTsE.ttf" - }, - { - "family": "Bonheur Royale", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/bonheurroyale/v15/c4m51nt_GMTrtX-b9GcG4-YRmYK_c0f1N5Ij.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bonheurroyale/v15/c4m51nt_GMTrtX-b9GcG4-YRmbK-eUM.ttf" - }, - { - "family": "Boogaloo", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v25", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/boogaloo/v25/kmK-Zq45GAvOdnaW6x1F_SrQo_1K.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/boogaloo/v25/kmK-Zq45GAvOdnaW6y1E9y4.ttf" - }, - { - "family": "Borel", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/borel/v3/6qLOKZsftAPisgshYyMnOjwE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/borel/v3/6qLOKZsftAPisjsgaSc.ttf" - }, - { - "family": "Bowlby One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v25", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/bowlbyone/v25/taiPGmVuC4y96PFeqp8smo6C_Z0wcK4.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bowlbyone/v25/taiPGmVuC4y96PFeqp8sqo-I-Q.ttf" - }, - { - "family": "Bowlby One SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/bowlbyonesc/v27/DtVlJxerQqQm37tzN3wMug9Pzgj8owhNjuE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bowlbyonesc/v27/DtVlJxerQqQm37tzN3wMug9P_gn2pw.ttf" - }, - { - "family": "Braah One", - "variants": [ - "regular" - ], - "subsets": [ - "gurmukhi", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/braahone/v8/KFOlCnWUpt6LsxxxiylvAx05IsDqlA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/braahone/v8/KFOlCnWUpt6LsxxxiylfAhc9.ttf" - }, - { - "family": "Brawler", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/brawler/v20/xn7gYHE3xXewAscGsgC7S9XdZN8.ttf", - "700": "https://fonts.gstatic.com/s/brawler/v20/xn7lYHE3xXewAscGiryUb932eNaPfk8.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/brawler/v20/xn7gYHE3xXewAscGggGxTw.ttf" - }, - { - "family": "Bree Serif", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/breeserif/v18/4UaHrEJCrhhnVA3DgluAx63j5pN1MwI.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/breeserif/v18/4UaHrEJCrhhnVA3DgluA96zp4g.ttf" - }, - { - "family": "Bricolage Grotesque", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvZviyM0vs-wJDtw.ttf", - "300": "https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvUXiyM0vs-wJDtw.ttf", - "regular": "https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvRviyM0vs-wJDtw.ttf", - "500": "https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvSniyM0vs-wJDtw.ttf", - "600": "https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvcXlyM0vs-wJDtw.ttf", - "700": "https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvfzlyM0vs-wJDtw.ttf", - "800": "https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvZvlyM0vs-wJDtw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvRvi-Mwltw.ttf" - }, - { - "family": "Bruno Ace", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v7", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/brunoace/v7/WwkcxPa2E06x4trkOj_kMKoMWNMg3Q.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/brunoace/v7/WwkcxPa2E06x4trkOj_UMaAI.ttf" - }, - { - "family": "Bruno Ace SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v7", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/brunoacesc/v7/ptROTiycffFLBuiHjdJDl634LSFrpe8uZA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/brunoacesc/v7/ptROTiycffFLBuiHjdJDl63ILCtv.ttf" - }, - { - "family": "Brygada 1918", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/brygada1918/v27/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y2-f-V8Wu5O3gbo.ttf", - "500": "https://fonts.gstatic.com/s/brygada1918/v27/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y12f-V8Wu5O3gbo.ttf", - "600": "https://fonts.gstatic.com/s/brygada1918/v27/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y7GY-V8Wu5O3gbo.ttf", - "700": "https://fonts.gstatic.com/s/brygada1918/v27/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y4iY-V8Wu5O3gbo.ttf", - "italic": "https://fonts.gstatic.com/s/brygada1918/v27/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfcERwcv7GykboaLg.ttf", - "500italic": "https://fonts.gstatic.com/s/brygada1918/v27/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfcIxwcv7GykboaLg.ttf", - "600italic": "https://fonts.gstatic.com/s/brygada1918/v27/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfczxscv7GykboaLg.ttf", - "700italic": "https://fonts.gstatic.com/s/brygada1918/v27/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfc9hscv7GykboaLg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/brygada1918/v27/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y2-fyV4cvw.ttf" - }, - { - "family": "Bubblegum Sans", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/bubblegumsans/v22/AYCSpXb_Z9EORv1M5QTjEzMEtdaHzoPPb7R4.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bubblegumsans/v22/AYCSpXb_Z9EORv1M5QTjEzMEteaGxIc.ttf" - }, - { - "family": "Bubbler One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/bubblerone/v22/f0Xy0eqj68ppQV9KBLmAouHH26MPePkt.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bubblerone/v22/f0Xy0eqj68ppQV9KBLmAotHG0ac.ttf" - }, - { - "family": "Buda", - "variants": [ - "300" - ], - "subsets": [ - "latin" - ], - "version": "v31", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/buda/v31/GFDqWAN8mnyIJSSrG7UBr7pZKA0.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/buda/v31/GFDqWAN8mnyIJSSrK7QLqw.ttf" - }, - { - "family": "Buenard", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/buenard/v22/OD5cuM6Cyma8FnnsJTzfWLAhv7i92sqpK0_3iBYVfsc4.ttf", - "500": "https://fonts.gstatic.com/s/buenard/v22/OD5cuM6Cyma8FnnsJTzfWLAhv7i92sqbK0_3iBYVfsc4.ttf", - "600": "https://fonts.gstatic.com/s/buenard/v22/OD5cuM6Cyma8FnnsJTzfWLAhv7i92sp3LE_3iBYVfsc4.ttf", - "700": "https://fonts.gstatic.com/s/buenard/v22/OD5cuM6Cyma8FnnsJTzfWLAhv7i92spOLE_3iBYVfsc4.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/buenard/v22/OD5cuM6Cyma8FnnsJTzfWLAhv7i92sqpK3_2ghI.ttf" - }, - { - "family": "Bungee", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/bungee/v17/N0bU2SZBIuF2PU_ECn50Kd_PmA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bungee/v17/N0bU2SZBIuF2PU_0C3Rw.ttf" - }, - { - "family": "Bungee Hairline", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/bungeehairline/v26/snfys0G548t04270a_ljTLUVrv-7YB2dQ5ZPqQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bungeehairline/v26/snfys0G548t04270a_ljTLUVrv-LYReZ.ttf" - }, - { - "family": "Bungee Inline", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/bungeeinline/v19/Gg8zN58UcgnlCweMrih332VuDGJ1-FEglsc.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bungeeinline/v19/Gg8zN58UcgnlCweMrih332VuPGN__A.ttf" - }, - { - "family": "Bungee Outline", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/bungeeoutline/v24/_6_mEDvmVP24UvU2MyiGDslL3Qg3YhJqPXxo.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bungeeoutline/v24/_6_mEDvmVP24UvU2MyiGDslL3Tg2aBY.ttf" - }, - { - "family": "Bungee Shade", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/bungeeshade/v17/DtVkJxarWL0t2KdzK3oI_jks7iLSrwFUlw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bungeeshade/v17/DtVkJxarWL0t2KdzK3oI_jkc7yjW.ttf" - }, - { - "family": "Bungee Spice", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/bungeespice/v15/nwpTtK2nIhxE0q-IwgSpZBqCzyI-aMPF7Q.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bungeespice/v15/nwpTtK2nIhxE0q-IwgSpZBqyzig6.ttf", - "colorCapabilities": [ - "COLRv1", - "SVG" - ] - }, - { - "family": "Bungee Tint", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/bungeetint/v3/J7abnpl_EGtUEuAJwN9WmrtKMDwTpTkB.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bungeetint/v3/J7abnpl_EGtUEuAJwN9WmotLOjg.ttf", - "colorCapabilities": [ - "COLRv0" - ] - }, - { - "family": "Butcherman", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/butcherman/v25/2EbiL-thF0loflXUBOdb1zWzq_5uT84.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/butcherman/v25/2EbiL-thF0loflXUBOdb5zS5rw.ttf" - }, - { - "family": "Butterfly Kids", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/butterflykids/v27/ll8lK2CWTjuqAsXDqlnIbMNs5S4arxFrAX1D.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/butterflykids/v27/ll8lK2CWTjuqAsXDqlnIbMNs5R4bpRU.ttf" - }, - { - "family": "Bytesized", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/bytesized/v1/goksH6L8FkdnROln8XBTS0CjkP1Yog.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/bytesized/v1/goksH6L8FkdnROln8XBjSkqn.ttf" - }, - { - "family": "Cabin", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v35", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/cabin/v35/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkV2EL7Gvxm7rE_s.ttf", - "500": "https://fonts.gstatic.com/s/cabin/v35/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkW-EL7Gvxm7rE_s.ttf", - "600": "https://fonts.gstatic.com/s/cabin/v35/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkYODL7Gvxm7rE_s.ttf", - "700": "https://fonts.gstatic.com/s/cabin/v35/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkbqDL7Gvxm7rE_s.ttf", - "italic": "https://fonts.gstatic.com/s/cabin/v35/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHx_KlwkzuA_u1Bg.ttf", - "500italic": "https://fonts.gstatic.com/s/cabin/v35/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXH9fKlwkzuA_u1Bg.ttf", - "600italic": "https://fonts.gstatic.com/s/cabin/v35/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHGfWlwkzuA_u1Bg.ttf", - "700italic": "https://fonts.gstatic.com/s/cabin/v35/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHIPWlwkzuA_u1Bg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cabin/v35/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkV2EH7Clwg.ttf" - }, - { - "family": "Cabin Condensed", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/cabincondensed/v21/nwpMtK6mNhBK2err_hqkYhHRqmwaYOjZ5HZl8Q.ttf", - "500": "https://fonts.gstatic.com/s/cabincondensed/v21/nwpJtK6mNhBK2err_hqkYhHRqmwilMH97F15-K1oqQ.ttf", - "600": "https://fonts.gstatic.com/s/cabincondensed/v21/nwpJtK6mNhBK2err_hqkYhHRqmwiuMb97F15-K1oqQ.ttf", - "700": "https://fonts.gstatic.com/s/cabincondensed/v21/nwpJtK6mNhBK2err_hqkYhHRqmwi3Mf97F15-K1oqQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cabincondensed/v21/nwpMtK6mNhBK2err_hqkYhHRqmwqYeLd.ttf" - }, - { - "family": "Cabin Sketch", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/cabinsketch/v23/QGYpz_kZZAGCONcK2A4bGOjMn9JM6fnuKg.ttf", - "700": "https://fonts.gstatic.com/s/cabinsketch/v23/QGY2z_kZZAGCONcK2A4bGOj0I_1o4dLyI4CMFw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cabinsketch/v23/QGYpz_kZZAGCONcK2A4bGOj8nthI.ttf" - }, - { - "family": "Cactus Classical Serif", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-07-16", - "files": { - "regular": "https://fonts.gstatic.com/s/cactusclassicalserif/v13/sZlVdQ6K-zJOCzUaS90zMNN-Ep-OoC8dZr0JFuBIFX-pv-E.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cactusclassicalserif/v13/sZlVdQ6K-zJOCzUaS90zMNN-Ep-OoC8dZr0JJuFCEQ.ttf" - }, - { - "family": "Caesar Dressing", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/caesardressing/v22/yYLx0hLa3vawqtwdswbotmK4vrR3cbb6LZttyg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/caesardressing/v22/yYLx0hLa3vawqtwdswbotmK4vrRHcLz-.ttf" - }, - { - "family": "Cagliostro", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/cagliostro/v22/ZgNWjP5HM73BV5amnX-TjGXEM4COoE4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cagliostro/v22/ZgNWjP5HM73BV5amnX-TvGTONw.ttf" - }, - { - "family": "Cairo", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v31", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/cairo/v31/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hGA-W1ToLQ-HmkA.ttf", - "300": "https://fonts.gstatic.com/s/cairo/v31/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hL4-W1ToLQ-HmkA.ttf", - "regular": "https://fonts.gstatic.com/s/cairo/v31/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hOA-W1ToLQ-HmkA.ttf", - "500": "https://fonts.gstatic.com/s/cairo/v31/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hNI-W1ToLQ-HmkA.ttf", - "600": "https://fonts.gstatic.com/s/cairo/v31/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hD45W1ToLQ-HmkA.ttf", - "700": "https://fonts.gstatic.com/s/cairo/v31/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hAc5W1ToLQ-HmkA.ttf", - "800": "https://fonts.gstatic.com/s/cairo/v31/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hGA5W1ToLQ-HmkA.ttf", - "900": "https://fonts.gstatic.com/s/cairo/v31/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hEk5W1ToLQ-HmkA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cairo/v31/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hOA-a1XiKQ.ttf" - }, - { - "family": "Cairo Play", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/cairoplay/v13/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1EnYq9yXa8GvzaA.ttf", - "300": "https://fonts.gstatic.com/s/cairoplay/v13/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1zHYq9yXa8GvzaA.ttf", - "regular": "https://fonts.gstatic.com/s/cairoplay/v13/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1knYq9yXa8GvzaA.ttf", - "500": "https://fonts.gstatic.com/s/cairoplay/v13/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1oHYq9yXa8GvzaA.ttf", - "600": "https://fonts.gstatic.com/s/cairoplay/v13/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1THEq9yXa8GvzaA.ttf", - "700": "https://fonts.gstatic.com/s/cairoplay/v13/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1dXEq9yXa8GvzaA.ttf", - "800": "https://fonts.gstatic.com/s/cairoplay/v13/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1EnEq9yXa8GvzaA.ttf", - "900": "https://fonts.gstatic.com/s/cairoplay/v13/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1O3Eq9yXa8GvzaA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cairoplay/v13/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1knYa9i_e.ttf", - "colorCapabilities": [ - "COLRv0" - ] - }, - { - "family": "Cal Sans", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-06-09", - "files": { - "regular": "https://fonts.gstatic.com/s/calsans/v2/fdN99sWUv3gWqXxqqSBbvloE4LZx.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/calsans/v2/fdN99sWUv3gWqXxqqRBatF4.ttf" - }, - { - "family": "Caladea", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/caladea/v8/kJEzBugZ7AAjhybUjR93-9IztOc.ttf", - "italic": "https://fonts.gstatic.com/s/caladea/v8/kJExBugZ7AAjhybUvR19__A2pOdvDA.ttf", - "700": "https://fonts.gstatic.com/s/caladea/v8/kJE2BugZ7AAjhybUtaNY39oYqO52FZ0.ttf", - "700italic": "https://fonts.gstatic.com/s/caladea/v8/kJE0BugZ7AAjhybUvR1FQ98SrMxzBZ2lDA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/caladea/v8/kJEzBugZ7AAjhybUvR59_w.ttf" - }, - { - "family": "Calistoga", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/calistoga/v18/6NUU8F2OJg6MeR7l4e0vtMYAwdRZfw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/calistoga/v18/6NUU8F2OJg6MeR7l4e0ftcwE.ttf" - }, - { - "family": "Calligraffitti", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/calligraffitti/v20/46k2lbT3XjDVqJw3DCmCFjE0vnFZM5ZBpYN-.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/calligraffitti/v20/46k2lbT3XjDVqJw3DCmCFjE0vkFYOZI.ttf" - }, - { - "family": "Cambay", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/cambay/v14/SLXJc1rY6H0_ZDsGbrSIz9JsaA.ttf", - "italic": "https://fonts.gstatic.com/s/cambay/v14/SLXLc1rY6H0_ZDs2bL6M7dd8aGZk.ttf", - "700": "https://fonts.gstatic.com/s/cambay/v14/SLXKc1rY6H0_ZDs-0pusx_lwYX99kA.ttf", - "700italic": "https://fonts.gstatic.com/s/cambay/v14/SLXMc1rY6H0_ZDs2bIYwwvN0Q3ptkDMN.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cambay/v14/SLXJc1rY6H0_ZDs2b76M.ttf" - }, - { - "family": "Cambo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/cambo/v19/IFSqHeNEk8FJk416ok7xkPm8.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cambo/v19/IFSqHeNEk8FJk717qEo.ttf" - }, - { - "family": "Candal", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/candal/v16/XoHn2YH6T7-t_8cNAR4Jt9Yxlw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/candal/v16/XoHn2YH6T7-t_8c9ABQN.ttf" - }, - { - "family": "Cantarell", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/cantarell/v18/B50NF7ZDq37KMUvlO01Ji6hqHK-CLA.ttf", - "italic": "https://fonts.gstatic.com/s/cantarell/v18/B50LF7ZDq37KMUvlO015iaJuPqqSLJYf.ttf", - "700": "https://fonts.gstatic.com/s/cantarell/v18/B50IF7ZDq37KMUvlO01xN4dOFISeJY8GgQ.ttf", - "700italic": "https://fonts.gstatic.com/s/cantarell/v18/B50WF7ZDq37KMUvlO015iZrSEY6aB4oWgWHB.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cantarell/v18/B50NF7ZDq37KMUvlO015iqJu.ttf" - }, - { - "family": "Cantata One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/cantataone/v16/PlI5Fl60Nb5obNzNe2jslVxEt8CwfGaD.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cantataone/v16/PlI5Fl60Nb5obNzNe2jslWxFvcQ.ttf" - }, - { - "family": "Cantora One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/cantoraone/v20/gyB4hws1JdgnKy56GB_JX6zdZ4vZVbgZ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cantoraone/v20/gyB4hws1JdgnKy56GB_JX5zcbY8.ttf" - }, - { - "family": "Caprasimo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v6", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/caprasimo/v6/esDT31JQOPuXIUGBp72klZUCGpG-GQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/caprasimo/v6/esDT31JQOPuXIUGBp72UlJ8G.ttf" - }, - { - "family": "Capriola", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/capriola/v15/wXKoE3YSppcvo1PDln_8L-AinG8y.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/capriola/v15/wXKoE3YSppcvo1PDlk_9JeQ.ttf" - }, - { - "family": "Caramel", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/caramel/v8/P5sCzZKBbMTf_ShyxCRuiZ-uydg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/caramel/v8/P5sCzZKBbMTf_Shy9CVkjQ.ttf" - }, - { - "family": "Carattere", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/carattere/v8/4iCv6Kp1b9dXlgt_CkvTt2aMH4V_gg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/carattere/v8/4iCv6Kp1b9dXlgt_CkvjtmyI.ttf" - }, - { - "family": "Cardo", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "gothic", - "greek", - "greek-ext", - "hebrew", - "latin", - "latin-ext", - "old-italic", - "runic" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/cardo/v21/wlp_gwjKBV1pqiv_1oAZ2H5O.ttf", - "italic": "https://fonts.gstatic.com/s/cardo/v21/wlpxgwjKBV1pqhv93IQ73W5OcCk.ttf", - "700": "https://fonts.gstatic.com/s/cardo/v21/wlpygwjKBV1pqhND-aQR82JHaTBX.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cardo/v21/wlp_gwjKBV1pqhv-3IQ.ttf" - }, - { - "family": "Carlito", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/carlito/v4/3Jn9SDPw3m-pk039PDCLTXUETuE.ttf", - "italic": "https://fonts.gstatic.com/s/carlito/v4/3Jn_SDPw3m-pk039DDKBSVcBXuFb0Q.ttf", - "700": "https://fonts.gstatic.com/s/carlito/v4/3Jn4SDPw3m-pk039BIykaX0vUuhCyOo.ttf", - "700italic": "https://fonts.gstatic.com/s/carlito/v4/3Jn6SDPw3m-pk039DDK59XglVspH2OprMQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/carlito/v4/3Jn9SDPw3m-pk039DDGBSQ.ttf" - }, - { - "family": "Carme", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/carme/v17/ptRHTiWdbvZIDOjGxLNrxfbZ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/carme/v17/ptRHTiWdbvZIDNjHzrc.ttf" - }, - { - "family": "Carrois Gothic", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/carroisgothic/v17/Z9XPDmFATg-N1PLtLOOxvIHl9ZmD3i7ajcJ-.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/carroisgothic/v17/Z9XPDmFATg-N1PLtLOOxvIHl9amC1Co.ttf" - }, - { - "family": "Carrois Gothic SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/carroisgothicsc/v16/ZgNJjOVHM6jfUZCmyUqT2A2HVKjc-28nNHabY4dN.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/carroisgothicsc/v16/ZgNJjOVHM6jfUZCmyUqT2A2HVKjc-18mPnI.ttf" - }, - { - "family": "Carter One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/carterone/v18/q5uCsoe5IOB2-pXv9UcNIxR2hYxREMs.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/carterone/v18/q5uCsoe5IOB2-pXv9UcNExV8gQ.ttf" - }, - { - "family": "Cascadia Code", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "arabic", - "braille", - "cyrillic", - "cyrillic-ext", - "greek", - "hebrew", - "latin", - "latin-ext", - "symbols2", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc_B6-zq5zxD57cT5s916v3QjfzRuG9AIUcXuWMOaDPb9pHaHCA.ttf", - "300": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc_B6-zq5zxD57cT5s916v3QjfzRuG9AIUcXuVSOaDPb9pHaHCA.ttf", - "regular": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc_B6-zq5zxD57cT5s916v3QjfzRuG9AIUcXuUMOaDPb9pHaHCA.ttf", - "500": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc_B6-zq5zxD57cT5s916v3QjfzRuG9AIUcXuU-OaDPb9pHaHCA.ttf", - "600": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc_B6-zq5zxD57cT5s916v3QjfzRuG9AIUcXuXSPqDPb9pHaHCA.ttf", - "700": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc_B6-zq5zxD57cT5s916v3QjfzRuG9AIUcXuXrPqDPb9pHaHCA.ttf", - "200italic": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc9B6-zq5zxD57cT5s916v3aD7BuTnUax-yWfDEesiMZd5lbWCAUXU.ttf", - "300italic": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc9B6-zq5zxD57cT5s916v3aD7BuTnUax-yWfDEehaMZd5lbWCAUXU.ttf", - "italic": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc9B6-zq5zxD57cT5s916v3aD7BuTnUax-yWfDEekiMZd5lbWCAUXU.ttf", - "500italic": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc9B6-zq5zxD57cT5s916v3aD7BuTnUax-yWfDEenqMZd5lbWCAUXU.ttf", - "600italic": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc9B6-zq5zxD57cT5s916v3aD7BuTnUax-yWfDEepaLZd5lbWCAUXU.ttf", - "700italic": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc9B6-zq5zxD57cT5s916v3aD7BuTnUax-yWfDEeq-LZd5lbWCAUXU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cascadiacode/v5/qWc_B6-zq5zxD57cT5s916v3QjfzRuG9AIUcXuUMOZDOZd4.ttf" - }, - { - "family": "Cascadia Mono", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "arabic", - "braille", - "cyrillic", - "cyrillic-ext", - "greek", - "hebrew", - "latin", - "latin-ext", - "symbols2", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZlzw5pquJF3iuizJDZYqr1Q54PIbV3QmZsSTadsWVkNot27AYk.ttf", - "300": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZlzw5pquJF3iuizJDZYqr1Q54PIbV3QmZsSTZDsWVkNot27AYk.ttf", - "regular": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZlzw5pquJF3iuizJDZYqr1Q54PIbV3QmZsSTYdsWVkNot27AYk.ttf", - "500": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZlzw5pquJF3iuizJDZYqr1Q54PIbV3QmZsSTYvsWVkNot27AYk.ttf", - "600": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZlzw5pquJF3iuizJDZYqr1Q54PIbV3QmZsSTbDtmVkNot27AYk.ttf", - "700": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZlzw5pquJF3iuizJDZYqr1Q54PIbV3QmZsSTb6tmVkNot27AYk.ttf", - "200italic": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZnzw5pquJF3iuizJDZYqr1aZc93m0eKfzCTiPV8g0nPI9U6RYkQrY.ttf", - "300italic": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZnzw5pquJF3iuizJDZYqr1aZc93m0eKfzCTiPV8tMnPI9U6RYkQrY.ttf", - "italic": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZnzw5pquJF3iuizJDZYqr1aZc93m0eKfzCTiPV8o0nPI9U6RYkQrY.ttf", - "500italic": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZnzw5pquJF3iuizJDZYqr1aZc93m0eKfzCTiPV8r8nPI9U6RYkQrY.ttf", - "600italic": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZnzw5pquJF3iuizJDZYqr1aZc93m0eKfzCTiPV8lMgPI9U6RYkQrY.ttf", - "700italic": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZnzw5pquJF3iuizJDZYqr1aZc93m0eKfzCTiPV8mogPI9U6RYkQrY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cascadiamono/v5/TUZlzw5pquJF3iuizJDZYqr1Q54PIbV3QmZsSTYdsVVlPI8.ttf" - }, - { - "family": "Castoro", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/castoro/v20/1q2GY5yMCld3-O4cHYhEzOYenEU.ttf", - "italic": "https://fonts.gstatic.com/s/castoro/v20/1q2EY5yMCld3-O4cLYpOyMQbjEX5fw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/castoro/v20/1q2GY5yMCld3-O4cLYlOyA.ttf" - }, - { - "family": "Castoro Titling", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v10", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/castorotitling/v10/buEupouwccj03leTfjUAhEZWlrNqYgckeo9RMw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/castorotitling/v10/buEupouwccj03leTfjUAhEZWlrNaYw0g.ttf" - }, - { - "family": "Catamaran", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil" - ], - "version": "v28", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/catamaran/v28/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPHjc1anXuluiLyw.ttf", - "200": "https://fonts.gstatic.com/s/catamaran/v28/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPPjd1anXuluiLyw.ttf", - "300": "https://fonts.gstatic.com/s/catamaran/v28/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPCbd1anXuluiLyw.ttf", - "regular": "https://fonts.gstatic.com/s/catamaran/v28/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPHjd1anXuluiLyw.ttf", - "500": "https://fonts.gstatic.com/s/catamaran/v28/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPErd1anXuluiLyw.ttf", - "600": "https://fonts.gstatic.com/s/catamaran/v28/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPKba1anXuluiLyw.ttf", - "700": "https://fonts.gstatic.com/s/catamaran/v28/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPJ_a1anXuluiLyw.ttf", - "800": "https://fonts.gstatic.com/s/catamaran/v28/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPPja1anXuluiLyw.ttf", - "900": "https://fonts.gstatic.com/s/catamaran/v28/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPNHa1anXuluiLyw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/catamaran/v28/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPHjd5ajdvg.ttf" - }, - { - "family": "Caudex", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "greek", - "greek-ext", - "latin", - "latin-ext", - "runic", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/caudex/v19/esDQ311QOP6BJUrIyviAnb4eEw.ttf", - "italic": "https://fonts.gstatic.com/s/caudex/v19/esDS311QOP6BJUr4yPKEv7sOE4in.ttf", - "700": "https://fonts.gstatic.com/s/caudex/v19/esDT311QOP6BJUrwdteklZUCGpG-GQ.ttf", - "700italic": "https://fonts.gstatic.com/s/caudex/v19/esDV311QOP6BJUr4yMo4kJ8GOJSuGdLB.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/caudex/v19/esDQ311QOP6BJUr4y_KE.ttf" - }, - { - "family": "Caveat", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/caveat/v23/WnznHAc5bAfYB2QRah7pcpNvOx-pjfJ9SIKjYBxPigs.ttf", - "500": "https://fonts.gstatic.com/s/caveat/v23/WnznHAc5bAfYB2QRah7pcpNvOx-pjcB9SIKjYBxPigs.ttf", - "600": "https://fonts.gstatic.com/s/caveat/v23/WnznHAc5bAfYB2QRah7pcpNvOx-pjSx6SIKjYBxPigs.ttf", - "700": "https://fonts.gstatic.com/s/caveat/v23/WnznHAc5bAfYB2QRah7pcpNvOx-pjRV6SIKjYBxPigs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/caveat/v23/WnznHAc5bAfYB2QRah7pcpNvOx-pjfJ9eIOpZA.ttf" - }, - { - "family": "Caveat Brush", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/caveatbrush/v12/EYq0maZfwr9S9-ETZc3fKXtMW7mT03pdQw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/caveatbrush/v12/EYq0maZfwr9S9-ETZc3fKXt8WrOX.ttf" - }, - { - "family": "Cedarville Cursive", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/cedarvillecursive/v18/yYL00g_a2veiudhUmxjo5VKkoqA-B_neJbBxw8BeTg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cedarvillecursive/v18/yYL00g_a2veiudhUmxjo5VKkoqA-B_nuJLp1.ttf" - }, - { - "family": "Ceviche One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/cevicheone/v17/gyB4hws1IcA6JzR-GB_JX6zdZ4vZVbgZ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cevicheone/v17/gyB4hws1IcA6JzR-GB_JX5zcbY8.ttf" - }, - { - "family": "Chakra Petch", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/chakrapetch/v13/cIflMapbsEk7TDLdtEz1BwkeNIhFQJXE3AY00g.ttf", - "300italic": "https://fonts.gstatic.com/s/chakrapetch/v13/cIfnMapbsEk7TDLdtEz1BwkWmpLJQp_A_gMk0izH.ttf", - "regular": "https://fonts.gstatic.com/s/chakrapetch/v13/cIf6MapbsEk7TDLdtEz1BwkmmKBhSL7Y1Q.ttf", - "italic": "https://fonts.gstatic.com/s/chakrapetch/v13/cIfkMapbsEk7TDLdtEz1BwkWmqplarvI1R8t.ttf", - "500": "https://fonts.gstatic.com/s/chakrapetch/v13/cIflMapbsEk7TDLdtEz1BwkebIlFQJXE3AY00g.ttf", - "500italic": "https://fonts.gstatic.com/s/chakrapetch/v13/cIfnMapbsEk7TDLdtEz1BwkWmpKRQ5_A_gMk0izH.ttf", - "600": "https://fonts.gstatic.com/s/chakrapetch/v13/cIflMapbsEk7TDLdtEz1BwkeQI5FQJXE3AY00g.ttf", - "600italic": "https://fonts.gstatic.com/s/chakrapetch/v13/cIfnMapbsEk7TDLdtEz1BwkWmpK9RJ_A_gMk0izH.ttf", - "700": "https://fonts.gstatic.com/s/chakrapetch/v13/cIflMapbsEk7TDLdtEz1BwkeJI9FQJXE3AY00g.ttf", - "700italic": "https://fonts.gstatic.com/s/chakrapetch/v13/cIfnMapbsEk7TDLdtEz1BwkWmpLZRZ_A_gMk0izH.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chakrapetch/v13/cIf6MapbsEk7TDLdtEz1BwkWmapl.ttf" - }, - { - "family": "Changa", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/changa/v29/2-c79JNi2YuVOUcOarRPgnNGooxCZy2xQjDp9htf1ZM.ttf", - "300": "https://fonts.gstatic.com/s/changa/v29/2-c79JNi2YuVOUcOarRPgnNGooxCZ_OxQjDp9htf1ZM.ttf", - "regular": "https://fonts.gstatic.com/s/changa/v29/2-c79JNi2YuVOUcOarRPgnNGooxCZ62xQjDp9htf1ZM.ttf", - "500": "https://fonts.gstatic.com/s/changa/v29/2-c79JNi2YuVOUcOarRPgnNGooxCZ5-xQjDp9htf1ZM.ttf", - "600": "https://fonts.gstatic.com/s/changa/v29/2-c79JNi2YuVOUcOarRPgnNGooxCZ3O2QjDp9htf1ZM.ttf", - "700": "https://fonts.gstatic.com/s/changa/v29/2-c79JNi2YuVOUcOarRPgnNGooxCZ0q2QjDp9htf1ZM.ttf", - "800": "https://fonts.gstatic.com/s/changa/v29/2-c79JNi2YuVOUcOarRPgnNGooxCZy22QjDp9htf1ZM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/changa/v29/2-c79JNi2YuVOUcOarRPgnNGooxCZ62xcjHj8g.ttf" - }, - { - "family": "Changa One", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/changaone/v22/xfu00W3wXn3QLUJXhzq46AbouLfbK64.ttf", - "italic": "https://fonts.gstatic.com/s/changaone/v22/xfu20W3wXn3QLUJXhzq42ATivJXeO67ISw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/changaone/v22/xfu00W3wXn3QLUJXhzq42AfivA.ttf" - }, - { - "family": "Chango", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/chango/v29/2V0cKI0OB5U7WaJyz324TFUaAw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chango/v29/2V0cKI0OB5U7WaJCzne8.ttf" - }, - { - "family": "Charis SIL", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/charissil/v2/oPWK_kV3l-s-Q8govXvKrPrmYjZ2Xn0.ttf", - "italic": "https://fonts.gstatic.com/s/charissil/v2/oPWI_kV3l-s-Q8govXvKnPjsZhRzTn2Ozw.ttf", - "700": "https://fonts.gstatic.com/s/charissil/v2/oPWJ_kV3l-s-Q8govXvKlEbJRj5dQnSX1ko.ttf", - "700italic": "https://fonts.gstatic.com/s/charissil/v2/oPWX_kV3l-s-Q8govXvKnPjU2jtXRlaSxkrMCQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/charissil/v2/oPWK_kV3l-s-Q8govXvKnPvsZg.ttf" - }, - { - "family": "Charm", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/charm/v14/7cHmv4oii5K0MeYvIe804WIo.ttf", - "700": "https://fonts.gstatic.com/s/charm/v14/7cHrv4oii5K0Md6TDss8yn4hnCci.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/charm/v14/7cHmv4oii5K0MdYuK-s.ttf" - }, - { - "family": "Charmonman", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/charmonman/v20/MjQDmiR3vP_nuxDv47jiWJGovLdh6OE.ttf", - "700": "https://fonts.gstatic.com/s/charmonman/v20/MjQAmiR3vP_nuxDv47jiYC2HmL9K9OhmGnY.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/charmonman/v20/MjQDmiR3vP_nuxDv47jiaJCiuA.ttf" - }, - { - "family": "Chathura", - "variants": [ - "100", - "300", - "regular", - "700", - "800" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/chathura/v22/_gP91R7-rzUuVjim42dEq0SbTvZyuDo.ttf", - "300": "https://fonts.gstatic.com/s/chathura/v22/_gP81R7-rzUuVjim42eMiWSxYPp7oSNy.ttf", - "regular": "https://fonts.gstatic.com/s/chathura/v22/_gP71R7-rzUuVjim418goUC5S-Zy.ttf", - "700": "https://fonts.gstatic.com/s/chathura/v22/_gP81R7-rzUuVjim42ecjmSxYPp7oSNy.ttf", - "800": "https://fonts.gstatic.com/s/chathura/v22/_gP81R7-rzUuVjim42eAjWSxYPp7oSNy.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chathura/v22/_gP71R7-rzUuVjim428hq0Q.ttf" - }, - { - "family": "Chau Philomene One", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/chauphilomeneone/v16/55xxezRsPtfie1vPY49qzdgSlJiHRQFsnIx7QMISdQ.ttf", - "italic": "https://fonts.gstatic.com/s/chauphilomeneone/v16/55xzezRsPtfie1vPY49qzdgSlJiHRQFcnoZ_YscCdXQB.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chauphilomeneone/v16/55xxezRsPtfie1vPY49qzdgSlJiHRQFcnYZ_.ttf" - }, - { - "family": "Chela One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/chelaone/v22/6ae-4KC7Uqgdz_JZdPIy31vWNTMwoQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chelaone/v22/6ae-4KC7Uqgdz_JZdPIC3lHS.ttf" - }, - { - "family": "Chelsea Market", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/chelseamarket/v14/BCawqZsHqfr89WNP_IApC8tzKBhlLA4uKkWk.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chelseamarket/v14/BCawqZsHqfr89WNP_IApC8tzKChkJgo.ttf" - }, - { - "family": "Chenla", - "variants": [ - "regular" - ], - "subsets": [ - "khmer" - ], - "version": "v25", - "lastModified": "2022-09-22", - "files": { - "regular": "https://fonts.gstatic.com/s/chenla/v25/SZc43FDpIKu8WZ9eXxfonUPL6Q.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chenla/v25/SZc43FDpIKu8WZ9uXh3s.ttf" - }, - { - "family": "Cherish", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/cherish/v9/ll88K2mXUyqsDsTN5iDCI6IJjg8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cherish/v9/ll88K2mXUyqsDsTN1iHIJw.ttf" - }, - { - "family": "Cherry Bomb One", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/cherrybombone/v11/y83DW4od1h6KlV3c6JJhRhGOdhrKDNpF41fr-w.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cherrybombone/v11/y83DW4od1h6KlV3c6JJhRhGOdhr6DdBB.ttf" - }, - { - "family": "Cherry Cream Soda", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/cherrycreamsoda/v21/UMBIrOxBrW6w2FFyi9paG0fdVdRciTd6Cd47DJ7G.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cherrycreamsoda/v21/UMBIrOxBrW6w2FFyi9paG0fdVdRciQd7A9o.ttf" - }, - { - "family": "Cherry Swash", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/cherryswash/v22/i7dNIFByZjaNAMxtZcnfAy58QHi-EwWMbg.ttf", - "700": "https://fonts.gstatic.com/s/cherryswash/v22/i7dSIFByZjaNAMxtZcnfAy5E_FeaGy6QZ3WfYg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cherryswash/v22/i7dNIFByZjaNAMxtZcnfAy5MQXK6.ttf" - }, - { - "family": "Chewy", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/chewy/v18/uK_94ruUb-k-wk5xIDMfO-ed.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chewy/v18/uK_94ruUb-k-wn5wKjc.ttf" - }, - { - "family": "Chicle", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/chicle/v27/lJwG-pw9i2dqU-BDyWKuobYSxw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chicle/v27/lJwG-pw9i2dqU-BzyGiq.ttf" - }, - { - "family": "Chilanka", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "malayalam" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/chilanka/v23/WWXRlj2DZQiMJYaYRrJQI9EAZhTO.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chilanka/v23/WWXRlj2DZQiMJYaYRoJRKdU.ttf" - }, - { - "family": "Chiron GoRound TC", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-08-26", - "files": { - "200": "https://fonts.gstatic.com/s/chirongoroundtc/v2/tssEAopDbiwZ4xauFDX3yQ3Ywoaj6kNR0yP4oqNo8RKq7BqJHA8n4CeB1Q.ttf", - "300": "https://fonts.gstatic.com/s/chirongoroundtc/v2/tssEAopDbiwZ4xauFDX3yQ3Ywoaj6kNR0yP4oqNo8RKqMhqJHA8n4CeB1Q.ttf", - "regular": "https://fonts.gstatic.com/s/chirongoroundtc/v2/tssEAopDbiwZ4xauFDX3yQ3Ywoaj6kNR0yP4oqNo8RKqbBqJHA8n4CeB1Q.ttf", - "500": "https://fonts.gstatic.com/s/chirongoroundtc/v2/tssEAopDbiwZ4xauFDX3yQ3Ywoaj6kNR0yP4oqNo8RKqXhqJHA8n4CeB1Q.ttf", - "600": "https://fonts.gstatic.com/s/chirongoroundtc/v2/tssEAopDbiwZ4xauFDX3yQ3Ywoaj6kNR0yP4oqNo8RKqsh2JHA8n4CeB1Q.ttf", - "700": "https://fonts.gstatic.com/s/chirongoroundtc/v2/tssEAopDbiwZ4xauFDX3yQ3Ywoaj6kNR0yP4oqNo8RKqix2JHA8n4CeB1Q.ttf", - "800": "https://fonts.gstatic.com/s/chirongoroundtc/v2/tssEAopDbiwZ4xauFDX3yQ3Ywoaj6kNR0yP4oqNo8RKq7B2JHA8n4CeB1Q.ttf", - "900": "https://fonts.gstatic.com/s/chirongoroundtc/v2/tssEAopDbiwZ4xauFDX3yQ3Ywoaj6kNR0yP4oqNo8RKqxR2JHA8n4CeB1Q.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chirongoroundtc/v2/tssEAopDbiwZ4xauFDX3yQ3Ywoaj6kNR0yP4oqNo8RKqbBq5HQUj.ttf" - }, - { - "family": "Chiron Hei HK", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "symbols2", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-08-26", - "files": { - "200": "https://fonts.gstatic.com/s/chironheihk/v3/wXK-E3MSr44vpVKPvzqVJaxhp3w7QQhPNY163lLtr18MkTEyjPI0.ttf", - "300": "https://fonts.gstatic.com/s/chironheihk/v3/wXK-E3MSr44vpVKPvzqVJaxhp3w7QQhPNY163lIzr18MkTEyjPI0.ttf", - "regular": "https://fonts.gstatic.com/s/chironheihk/v3/wXK-E3MSr44vpVKPvzqVJaxhp3w7QQhPNY163lJtr18MkTEyjPI0.ttf", - "500": "https://fonts.gstatic.com/s/chironheihk/v3/wXK-E3MSr44vpVKPvzqVJaxhp3w7QQhPNY163lJfr18MkTEyjPI0.ttf", - "600": "https://fonts.gstatic.com/s/chironheihk/v3/wXK-E3MSr44vpVKPvzqVJaxhp3w7QQhPNY163lKzqF8MkTEyjPI0.ttf", - "700": "https://fonts.gstatic.com/s/chironheihk/v3/wXK-E3MSr44vpVKPvzqVJaxhp3w7QQhPNY163lKKqF8MkTEyjPI0.ttf", - "800": "https://fonts.gstatic.com/s/chironheihk/v3/wXK-E3MSr44vpVKPvzqVJaxhp3w7QQhPNY163lLtqF8MkTEyjPI0.ttf", - "900": "https://fonts.gstatic.com/s/chironheihk/v3/wXK-E3MSr44vpVKPvzqVJaxhp3w7QQhPNY163lLEqF8MkTEyjPI0.ttf", - "200italic": "https://fonts.gstatic.com/s/chironheihk/v3/wXK8E3MSr44vpVKPvzqVJaxhjXUJvtAmXhfU2Uel7DdPmzUQieI0QjQ.ttf", - "300italic": "https://fonts.gstatic.com/s/chironheihk/v3/wXK8E3MSr44vpVKPvzqVJaxhjXUJvtAmXhfU2Uel7OlPmzUQieI0QjQ.ttf", - "italic": "https://fonts.gstatic.com/s/chironheihk/v3/wXK8E3MSr44vpVKPvzqVJaxhjXUJvtAmXhfU2Uel7LdPmzUQieI0QjQ.ttf", - "500italic": "https://fonts.gstatic.com/s/chironheihk/v3/wXK8E3MSr44vpVKPvzqVJaxhjXUJvtAmXhfU2Uel7IVPmzUQieI0QjQ.ttf", - "600italic": "https://fonts.gstatic.com/s/chironheihk/v3/wXK8E3MSr44vpVKPvzqVJaxhjXUJvtAmXhfU2Uel7GlImzUQieI0QjQ.ttf", - "700italic": "https://fonts.gstatic.com/s/chironheihk/v3/wXK8E3MSr44vpVKPvzqVJaxhjXUJvtAmXhfU2Uel7FBImzUQieI0QjQ.ttf", - "800italic": "https://fonts.gstatic.com/s/chironheihk/v3/wXK8E3MSr44vpVKPvzqVJaxhjXUJvtAmXhfU2Uel7DdImzUQieI0QjQ.ttf", - "900italic": "https://fonts.gstatic.com/s/chironheihk/v3/wXK8E3MSr44vpVKPvzqVJaxhjXUJvtAmXhfU2Uel7B5ImzUQieI0QjQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chironheihk/v3/wXK-E3MSr44vpVKPvzqVJaxhp3w7QQhPNY163lJtr28NmzU.ttf" - }, - { - "family": "Chiron Sung HK", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "chinese-hongkong", - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "symbols2", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-06-12", - "files": { - "200": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFtD_XLTZPpXIpS3-3dhGzHTSilFc8oGNI59hRjdOSt_krURtf4_Q.ttf", - "300": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFtD_XLTZPpXIpS3-3dhGzHTSilFc8oGNI59hRjquSt_krURtf4_Q.ttf", - "regular": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFtD_XLTZPpXIpS3-3dhGzHTSilFc8oGNI59hRj9OSt_krURtf4_Q.ttf", - "500": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFtD_XLTZPpXIpS3-3dhGzHTSilFc8oGNI59hRjxuSt_krURtf4_Q.ttf", - "600": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFtD_XLTZPpXIpS3-3dhGzHTSilFc8oGNI59hRjKuOt_krURtf4_Q.ttf", - "700": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFtD_XLTZPpXIpS3-3dhGzHTSilFc8oGNI59hRjE-Ot_krURtf4_Q.ttf", - "800": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFtD_XLTZPpXIpS3-3dhGzHTSilFc8oGNI59hRjdOOt_krURtf4_Q.ttf", - "900": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFtD_XLTZPpXIpS3-3dhGzHTSilFc8oGNI59hRjXeOt_krURtf4_Q.ttf", - "200italic": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFvD_XLTZPpXIpS3-3dhGzHTQKsJzDwcbmjWBN2PKfFvUDQZNLo_U2r.ttf", - "300italic": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFvD_XLTZPpXIpS3-3dhGzHTQKsJzDwcbmjWBN2PKcbvUDQZNLo_U2r.ttf", - "italic": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFvD_XLTZPpXIpS3-3dhGzHTQKsJzDwcbmjWBN2PKdFvUDQZNLo_U2r.ttf", - "500italic": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFvD_XLTZPpXIpS3-3dhGzHTQKsJzDwcbmjWBN2PKd3vUDQZNLo_U2r.ttf", - "600italic": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFvD_XLTZPpXIpS3-3dhGzHTQKsJzDwcbmjWBN2PKebukDQZNLo_U2r.ttf", - "700italic": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFvD_XLTZPpXIpS3-3dhGzHTQKsJzDwcbmjWBN2PKeiukDQZNLo_U2r.ttf", - "800italic": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFvD_XLTZPpXIpS3-3dhGzHTQKsJzDwcbmjWBN2PKfFukDQZNLo_U2r.ttf", - "900italic": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFvD_XLTZPpXIpS3-3dhGzHTQKsJzDwcbmjWBN2PKfsukDQZNLo_U2r.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chironsunghk/v1/nuFtD_XLTZPpXIpS3-3dhGzHTSilFc8oGNI59hRj9OSd_0DQ.ttf" - }, - { - "family": "Chivo", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/chivo/v21/va9b4kzIxd1KFppkaRKvDRPJVDf_vB7ul2DSFXjQiQ.ttf", - "200": "https://fonts.gstatic.com/s/chivo/v21/va9b4kzIxd1KFppkaRKvDRPJVDf_PB_ul2DSFXjQiQ.ttf", - "300": "https://fonts.gstatic.com/s/chivo/v21/va9b4kzIxd1KFppkaRKvDRPJVDf_4h_ul2DSFXjQiQ.ttf", - "regular": "https://fonts.gstatic.com/s/chivo/v21/va9b4kzIxd1KFppkaRKvDRPJVDf_vB_ul2DSFXjQiQ.ttf", - "500": "https://fonts.gstatic.com/s/chivo/v21/va9b4kzIxd1KFppkaRKvDRPJVDf_jh_ul2DSFXjQiQ.ttf", - "600": "https://fonts.gstatic.com/s/chivo/v21/va9b4kzIxd1KFppkaRKvDRPJVDf_Yhjul2DSFXjQiQ.ttf", - "700": "https://fonts.gstatic.com/s/chivo/v21/va9b4kzIxd1KFppkaRKvDRPJVDf_Wxjul2DSFXjQiQ.ttf", - "800": "https://fonts.gstatic.com/s/chivo/v21/va9b4kzIxd1KFppkaRKvDRPJVDf_PBjul2DSFXjQiQ.ttf", - "900": "https://fonts.gstatic.com/s/chivo/v21/va9b4kzIxd1KFppkaRKvDRPJVDf_FRjul2DSFXjQiQ.ttf", - "100italic": "https://fonts.gstatic.com/s/chivo/v21/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFwG1WrWN33AiasJ.ttf", - "200italic": "https://fonts.gstatic.com/s/chivo/v21/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyG1GrWN33AiasJ.ttf", - "300italic": "https://fonts.gstatic.com/s/chivo/v21/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFxY1GrWN33AiasJ.ttf", - "italic": "https://fonts.gstatic.com/s/chivo/v21/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFwG1GrWN33AiasJ.ttf", - "500italic": "https://fonts.gstatic.com/s/chivo/v21/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFw01GrWN33AiasJ.ttf", - "600italic": "https://fonts.gstatic.com/s/chivo/v21/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFzY02rWN33AiasJ.ttf", - "700italic": "https://fonts.gstatic.com/s/chivo/v21/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFzh02rWN33AiasJ.ttf", - "800italic": "https://fonts.gstatic.com/s/chivo/v21/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyG02rWN33AiasJ.ttf", - "900italic": "https://fonts.gstatic.com/s/chivo/v21/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyv02rWN33AiasJ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chivo/v21/va9b4kzIxd1KFppkaRKvDRPJVDf_vB_elmrW.ttf" - }, - { - "family": "Chivo Mono", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/chivomono/v11/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7hrqfVKphL03l4.ttf", - "200": "https://fonts.gstatic.com/s/chivomono/v11/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5hr6fVKphL03l4.ttf", - "300": "https://fonts.gstatic.com/s/chivomono/v11/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D6_r6fVKphL03l4.ttf", - "regular": "https://fonts.gstatic.com/s/chivomono/v11/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7hr6fVKphL03l4.ttf", - "500": "https://fonts.gstatic.com/s/chivomono/v11/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7Tr6fVKphL03l4.ttf", - "600": "https://fonts.gstatic.com/s/chivomono/v11/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D4_qKfVKphL03l4.ttf", - "700": "https://fonts.gstatic.com/s/chivomono/v11/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D4GqKfVKphL03l4.ttf", - "800": "https://fonts.gstatic.com/s/chivomono/v11/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5hqKfVKphL03l4.ttf", - "900": "https://fonts.gstatic.com/s/chivomono/v11/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5IqKfVKphL03l4.ttf", - "100italic": "https://fonts.gstatic.com/s/chivomono/v11/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7E-XIJxp1ml4imo.ttf", - "200italic": "https://fonts.gstatic.com/s/chivomono/v11/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7M-WIJxp1ml4imo.ttf", - "300italic": "https://fonts.gstatic.com/s/chivomono/v11/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7BGWIJxp1ml4imo.ttf", - "italic": "https://fonts.gstatic.com/s/chivomono/v11/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7E-WIJxp1ml4imo.ttf", - "500italic": "https://fonts.gstatic.com/s/chivomono/v11/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7H2WIJxp1ml4imo.ttf", - "600italic": "https://fonts.gstatic.com/s/chivomono/v11/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7JGRIJxp1ml4imo.ttf", - "700italic": "https://fonts.gstatic.com/s/chivomono/v11/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7KiRIJxp1ml4imo.ttf", - "800italic": "https://fonts.gstatic.com/s/chivomono/v11/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7M-RIJxp1ml4imo.ttf", - "900italic": "https://fonts.gstatic.com/s/chivomono/v11/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7OaRIJxp1ml4imo.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chivomono/v11/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7hr5fUIJw.ttf" - }, - { - "family": "Chocolate Classical Sans", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/chocolateclassicalsans/v14/nuFqD-PLTZX4XIgT-P2ToCDudWHHflqUpTpfjWdDPI2J9mHITw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chocolateclassicalsans/v14/nuFqD-PLTZX4XIgT-P2ToCDudWHHflqUpTpfjWdzPYeN.ttf" - }, - { - "family": "Chokokutai", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/chokokutai/v12/kmK4Zqw4HwvCeHGM8Fws9y7ypu1Kr7I.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chokokutai/v12/kmK4Zqw4HwvCeHGM8Fwsxy_4og.ttf" - }, - { - "family": "Chonburi", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/chonburi/v14/8AtqGs-wOpGRTBq66IWaFr3biAfZ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/chonburi/v14/8AtqGs-wOpGRTBq66LWbHLk.ttf" - }, - { - "family": "Cinzel", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/cinzel/v26/8vIU7ww63mVu7gtR-kwKxNvkNOjw-tbnTYrvDE5ZdqU.ttf", - "500": "https://fonts.gstatic.com/s/cinzel/v26/8vIU7ww63mVu7gtR-kwKxNvkNOjw-uTnTYrvDE5ZdqU.ttf", - "600": "https://fonts.gstatic.com/s/cinzel/v26/8vIU7ww63mVu7gtR-kwKxNvkNOjw-gjgTYrvDE5ZdqU.ttf", - "700": "https://fonts.gstatic.com/s/cinzel/v26/8vIU7ww63mVu7gtR-kwKxNvkNOjw-jHgTYrvDE5ZdqU.ttf", - "800": "https://fonts.gstatic.com/s/cinzel/v26/8vIU7ww63mVu7gtR-kwKxNvkNOjw-lbgTYrvDE5ZdqU.ttf", - "900": "https://fonts.gstatic.com/s/cinzel/v26/8vIU7ww63mVu7gtR-kwKxNvkNOjw-n_gTYrvDE5ZdqU.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cinzel/v26/8vIU7ww63mVu7gtR-kwKxNvkNOjw-tbnfYvlCA.ttf" - }, - { - "family": "Cinzel Decorative", - "variants": [ - "regular", - "700", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/cinzeldecorative/v19/daaCSScvJGqLYhG8nNt8KPPswUAPnh7URs1LaCyC.ttf", - "700": "https://fonts.gstatic.com/s/cinzeldecorative/v19/daaHSScvJGqLYhG8nNt8KPPswUAPniZoaelDQzCLlQXE.ttf", - "900": "https://fonts.gstatic.com/s/cinzeldecorative/v19/daaHSScvJGqLYhG8nNt8KPPswUAPniZQa-lDQzCLlQXE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cinzeldecorative/v19/daaCSScvJGqLYhG8nNt8KPPswUAPni7VTMk.ttf" - }, - { - "family": "Clicker Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/clickerscript/v14/raxkHiKPvt8CMH6ZWP8PdlEq72rY2zqUKafv.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/clickerscript/v14/raxkHiKPvt8CMH6ZWP8PdlEq71rZ0T4.ttf" - }, - { - "family": "Climate Crisis", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/climatecrisis/v14/wEOpEB3AntNeKCPBVW9XOKlmp3AUgWFN1DvIvcM0gFp6jaUrGb7PsQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/climatecrisis/v14/wEOpEB3AntNeKCPBVW9XOKlmp3AUgWFN1DvIvcM0gFpKjK8v.ttf" - }, - { - "family": "Coda", - "variants": [ - "regular", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/coda/v22/SLXHc1jY5nQ8JUIMapaN39I.ttf", - "800": "https://fonts.gstatic.com/s/coda/v22/SLXIc1jY5nQ8HeIgTp6mw9t1cX8.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/coda/v22/SLXHc1jY5nQ8FUMGbg.ttf" - }, - { - "family": "Codystar", - "variants": [ - "300", - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/codystar/v19/FwZf7-Q1xVk-40qxOuYsyuyrj0e29bfC.ttf", - "regular": "https://fonts.gstatic.com/s/codystar/v19/FwZY7-Q1xVk-40qxOt6A4sijpFu_.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/codystar/v19/FwZY7-Q1xVk-40qxOu6B6Mw.ttf" - }, - { - "family": "Coiny", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/coiny/v17/gyByhwU1K989PXwbElSvO5Tc.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/coiny/v17/gyByhwU1K989PUwaGFA.ttf" - }, - { - "family": "Combo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/combo/v22/BXRlvF3Jh_fIhg0iBu9y8Hf0.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/combo/v22/BXRlvF3Jh_fIhj0jDOs.ttf" - }, - { - "family": "Comfortaa", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v47", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/comfortaa/v47/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4TbMPrQVIT9c2c8.ttf", - "regular": "https://fonts.gstatic.com/s/comfortaa/v47/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4WjMPrQVIT9c2c8.ttf", - "500": "https://fonts.gstatic.com/s/comfortaa/v47/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4VrMPrQVIT9c2c8.ttf", - "600": "https://fonts.gstatic.com/s/comfortaa/v47/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4bbLPrQVIT9c2c8.ttf", - "700": "https://fonts.gstatic.com/s/comfortaa/v47/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4Y_LPrQVIT9c2c8.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/comfortaa/v47/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4WjMDrUfJQ.ttf" - }, - { - "family": "Comforter", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/comforter/v9/H4clBXOCl8nQnlaql3Qa6JG8iqeuag.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/comforter/v9/H4clBXOCl8nQnlaql3Qq6Zu4.ttf" - }, - { - "family": "Comforter Brush", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/comforterbrush/v9/Y4GTYa1xVSggrfzZI5WMjxRaOz0jwLL9Th8YYA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/comforterbrush/v9/Y4GTYa1xVSggrfzZI5WMjxRaOz0Twbj5.ttf" - }, - { - "family": "Comic Neue", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v9", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/comicneue/v9/4UaErEJDsxBrF37olUeD_wHLwpteLwtHJlc.ttf", - "300italic": "https://fonts.gstatic.com/s/comicneue/v9/4UaarEJDsxBrF37olUeD96_RTplUKylCNlcw_Q.ttf", - "regular": "https://fonts.gstatic.com/s/comicneue/v9/4UaHrEJDsxBrF37olUeDx63j5pN1MwI.ttf", - "italic": "https://fonts.gstatic.com/s/comicneue/v9/4UaFrEJDsxBrF37olUeD96_p4rFwIwJePw.ttf", - "700": "https://fonts.gstatic.com/s/comicneue/v9/4UaErEJDsxBrF37olUeD_xHMwpteLwtHJlc.ttf", - "700italic": "https://fonts.gstatic.com/s/comicneue/v9/4UaarEJDsxBrF37olUeD96_RXp5UKylCNlcw_Q.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/comicneue/v9/4UaHrEJDsxBrF37olUeD96zp4g.ttf" - }, - { - "family": "Comic Relief", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "greek", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-04-23", - "files": { - "regular": "https://fonts.gstatic.com/s/comicrelief/v2/BCauqZkHrvL55SZ8uaEhHMY2XBJhDgs-Kg.ttf", - "700": "https://fonts.gstatic.com/s/comicrelief/v2/BCaxqZkHrvL55SZ8uaEhHMYO4D1FBiAiI1y92w.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/comicrelief/v2/BCauqZkHrvL55SZ8uaEhHMYGXRhl.ttf" - }, - { - "family": "Coming Soon", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/comingsoon/v20/qWcuB6mzpYL7AJ2VfdQR1u-SUjjzsykh.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/comingsoon/v20/qWcuB6mzpYL7AJ2VfdQR1t-TWDw.ttf" - }, - { - "family": "Comme", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/comme/v4/8QIUdirKhMbn-uG1kHz0MgviDe1z5cBr644fWsRO9w.ttf", - "200": "https://fonts.gstatic.com/s/comme/v4/8QIUdirKhMbn-uG1kHz0MgviDe1zZcFr644fWsRO9w.ttf", - "300": "https://fonts.gstatic.com/s/comme/v4/8QIUdirKhMbn-uG1kHz0MgviDe1zu8Fr644fWsRO9w.ttf", - "regular": "https://fonts.gstatic.com/s/comme/v4/8QIUdirKhMbn-uG1kHz0MgviDe1z5cFr644fWsRO9w.ttf", - "500": "https://fonts.gstatic.com/s/comme/v4/8QIUdirKhMbn-uG1kHz0MgviDe1z18Fr644fWsRO9w.ttf", - "600": "https://fonts.gstatic.com/s/comme/v4/8QIUdirKhMbn-uG1kHz0MgviDe1zO8Zr644fWsRO9w.ttf", - "700": "https://fonts.gstatic.com/s/comme/v4/8QIUdirKhMbn-uG1kHz0MgviDe1zAsZr644fWsRO9w.ttf", - "800": "https://fonts.gstatic.com/s/comme/v4/8QIUdirKhMbn-uG1kHz0MgviDe1zZcZr644fWsRO9w.ttf", - "900": "https://fonts.gstatic.com/s/comme/v4/8QIUdirKhMbn-uG1kHz0MgviDe1zTMZr644fWsRO9w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/comme/v4/8QIUdirKhMbn-uG1kHz0MgviDe1z5cFb6oQb.ttf" - }, - { - "family": "Commissioner", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/commissioner/v24/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTMNcGPe7Fu0jUdk.ttf", - "200": "https://fonts.gstatic.com/s/commissioner/v24/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTENdGPe7Fu0jUdk.ttf", - "300": "https://fonts.gstatic.com/s/commissioner/v24/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTJ1dGPe7Fu0jUdk.ttf", - "regular": "https://fonts.gstatic.com/s/commissioner/v24/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTMNdGPe7Fu0jUdk.ttf", - "500": "https://fonts.gstatic.com/s/commissioner/v24/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTPFdGPe7Fu0jUdk.ttf", - "600": "https://fonts.gstatic.com/s/commissioner/v24/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTB1aGPe7Fu0jUdk.ttf", - "700": "https://fonts.gstatic.com/s/commissioner/v24/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTCRaGPe7Fu0jUdk.ttf", - "800": "https://fonts.gstatic.com/s/commissioner/v24/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTENaGPe7Fu0jUdk.ttf", - "900": "https://fonts.gstatic.com/s/commissioner/v24/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTGpaGPe7Fu0jUdk.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/commissioner/v24/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTMNdKPaxEg.ttf" - }, - { - "family": "Concert One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/concertone/v24/VEM1Ro9xs5PjtzCu-srDqRTlhv-CuVAQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/concertone/v24/VEM1Ro9xs5PjtzCu-srDqSTkjPs.ttf" - }, - { - "family": "Condiment", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/condiment/v26/pONk1hggFNmwvXALyH6Sq4n4o1vyCQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/condiment/v26/pONk1hggFNmwvXALyH6iqoP8.ttf" - }, - { - "family": "Content", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "khmer" - ], - "version": "v27", - "lastModified": "2024-12-04", - "files": { - "regular": "https://fonts.gstatic.com/s/content/v27/zrfl0HLayePhU_AwUaDyIiL0RCg.ttf", - "700": "https://fonts.gstatic.com/s/content/v27/zrfg0HLayePhU_AwaRzdBirfWCHvkAI.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/content/v27/zrfl0HLayePhU_AwYaH4Jg.ttf" - }, - { - "family": "Contrail One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/contrailone/v21/eLGbP-j_JA-kG0_Zo51noafdZUvt_c092w.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/contrailone/v21/eLGbP-j_JA-kG0_Zo51noaftZEHp.ttf" - }, - { - "family": "Convergence", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/convergence/v16/rax5HiePvdgXPmmMHcIPYRhasU7Q8Cad.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/convergence/v16/rax5HiePvdgXPmmMHcIPYShbu0o.ttf" - }, - { - "family": "Cookie", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/cookie/v23/syky-y18lb0tSbfNlQCT9tPdpw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cookie/v23/syky-y18lb0tSbf9lAqX.ttf" - }, - { - "family": "Copse", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/copse/v16/11hPGpDKz1rGb0djHkihUb-A.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/copse/v16/11hPGpDKz1rGb3diFEw.ttf" - }, - { - "family": "Coral Pixels", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-04-23", - "files": { - "regular": "https://fonts.gstatic.com/s/coralpixels/v1/qWctB66zpZ3zAtrlR8Mb1LyyeBb_ujA4ug.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/coralpixels/v1/qWctB66zpZ3zAtrlR8Mb1LyCeRz7.ttf", - "colorCapabilities": [ - "COLRv0" - ] - }, - { - "family": "Corben", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/corben/v23/LYjDdGzzklQtCMp9oAlEpVs3VQ.ttf", - "700": "https://fonts.gstatic.com/s/corben/v23/LYjAdGzzklQtCMpFHCZgrXArXN7HWQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/corben/v23/LYjDdGzzklQtCMpNoQNA.ttf" - }, - { - "family": "Corinthia", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/corinthia/v13/wEO_EBrAnchaJyPMHE0FUfAL3EsHiA.ttf", - "700": "https://fonts.gstatic.com/s/corinthia/v13/wEO6EBrAnchaJyPMHE097d8v1GAbgbLXQA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/corinthia/v13/wEO_EBrAnchaJyPMHE01UPoP.ttf" - }, - { - "family": "Cormorant", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/cormorant/v24/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFk9TQ7Rg7A2uwYs.ttf", - "regular": "https://fonts.gstatic.com/s/cormorant/v24/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFhFTQ7Rg7A2uwYs.ttf", - "500": "https://fonts.gstatic.com/s/cormorant/v24/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFiNTQ7Rg7A2uwYs.ttf", - "600": "https://fonts.gstatic.com/s/cormorant/v24/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFs9UQ7Rg7A2uwYs.ttf", - "700": "https://fonts.gstatic.com/s/cormorant/v24/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFvZUQ7Rg7A2uwYs.ttf", - "300italic": "https://fonts.gstatic.com/s/cormorant/v24/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQ9fdq6C-r0YvxdA.ttf", - "italic": "https://fonts.gstatic.com/s/cormorant/v24/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQq_dq6C-r0YvxdA.ttf", - "500italic": "https://fonts.gstatic.com/s/cormorant/v24/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQmfdq6C-r0YvxdA.ttf", - "600italic": "https://fonts.gstatic.com/s/cormorant/v24/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQdfBq6C-r0YvxdA.ttf", - "700italic": "https://fonts.gstatic.com/s/cormorant/v24/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQTPBq6C-r0YvxdA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cormorant/v24/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFhFTc7Vq6A.ttf" - }, - { - "family": "Cormorant Garamond", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_qE6GnPEi_s4Mfs.ttf", - "regular": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_v86GnPEi_s4Mfs.ttf", - "500": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_s06GnPEi_s4Mfs.ttf", - "600": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_iE9GnPEi_s4Mfs.ttf", - "700": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_hg9GnPEi_s4Mfs.ttf", - "300italic": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3smX5slCNuHLi8bLeY9MK7whWMhyjYrGFEsdtdc62E6zd5rDDOj9k9Ifu5UQ.ttf", - "italic": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3smX5slCNuHLi8bLeY9MK7whWMhyjYrGFEsdtdc62E6zd58jDOj9k9Ifu5UQ.ttf", - "500italic": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3smX5slCNuHLi8bLeY9MK7whWMhyjYrGFEsdtdc62E6zd5wDDOj9k9Ifu5UQ.ttf", - "600italic": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3smX5slCNuHLi8bLeY9MK7whWMhyjYrGFEsdtdc62E6zd5LDfOj9k9Ifu5UQ.ttf", - "700italic": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3smX5slCNuHLi8bLeY9MK7whWMhyjYrGFEsdtdc62E6zd5FTfOj9k9Ifu5UQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_v86KnLOjw.ttf" - }, - { - "family": "Cormorant Infant", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/cormorantinfant/v22/HhyCU44g9vKiM1sORYSiWeAsLN99xfs9KOOc_agJPrhxYOWThDlDkWSy.ttf", - "regular": "https://fonts.gstatic.com/s/cormorantinfant/v22/HhyCU44g9vKiM1sORYSiWeAsLN99xfs9KOOc_agJPrgvYOWThDlDkWSy.ttf", - "500": "https://fonts.gstatic.com/s/cormorantinfant/v22/HhyCU44g9vKiM1sORYSiWeAsLN99xfs9KOOc_agJPrgdYOWThDlDkWSy.ttf", - "600": "https://fonts.gstatic.com/s/cormorantinfant/v22/HhyCU44g9vKiM1sORYSiWeAsLN99xfs9KOOc_agJPrjxZ-WThDlDkWSy.ttf", - "700": "https://fonts.gstatic.com/s/cormorantinfant/v22/HhyCU44g9vKiM1sORYSiWeAsLN99xfs9KOOc_agJPrjIZ-WThDlDkWSy.ttf", - "300italic": "https://fonts.gstatic.com/s/cormorantinfant/v22/Hhy8U44g9vKiM1sORYSiWeAsLN997_IP1zv1ljKnOa3nI1PQjj1hlHSyazs.ttf", - "italic": "https://fonts.gstatic.com/s/cormorantinfant/v22/Hhy8U44g9vKiM1sORYSiWeAsLN997_IP1zv1ljKnOa3nIw3Qjj1hlHSyazs.ttf", - "500italic": "https://fonts.gstatic.com/s/cormorantinfant/v22/Hhy8U44g9vKiM1sORYSiWeAsLN997_IP1zv1ljKnOa3nIz_Qjj1hlHSyazs.ttf", - "600italic": "https://fonts.gstatic.com/s/cormorantinfant/v22/Hhy8U44g9vKiM1sORYSiWeAsLN997_IP1zv1ljKnOa3nI9PXjj1hlHSyazs.ttf", - "700italic": "https://fonts.gstatic.com/s/cormorantinfant/v22/Hhy8U44g9vKiM1sORYSiWeAsLN997_IP1zv1ljKnOa3nI-rXjj1hlHSyazs.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cormorantinfant/v22/HhyCU44g9vKiM1sORYSiWeAsLN99xfs9KOOc_agJPrgvYNWSjj0.ttf" - }, - { - "family": "Cormorant SC", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/cormorantsc/v19/0ybmGD4kxqXBmOVLG30OGwsmABIU_R3y8DOWGA.ttf", - "regular": "https://fonts.gstatic.com/s/cormorantsc/v19/0yb5GD4kxqXBmOVLG30OGwserDow9Tbu-Q.ttf", - "500": "https://fonts.gstatic.com/s/cormorantsc/v19/0ybmGD4kxqXBmOVLG30OGwsmWBMU_R3y8DOWGA.ttf", - "600": "https://fonts.gstatic.com/s/cormorantsc/v19/0ybmGD4kxqXBmOVLG30OGwsmdBQU_R3y8DOWGA.ttf", - "700": "https://fonts.gstatic.com/s/cormorantsc/v19/0ybmGD4kxqXBmOVLG30OGwsmEBUU_R3y8DOWGA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cormorantsc/v19/0yb5GD4kxqXBmOVLG30OGwsurTA0.ttf" - }, - { - "family": "Cormorant Unicase", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/cormorantunicase/v25/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9N_tucv7Gy0DRzS.ttf", - "regular": "https://fonts.gstatic.com/s/cormorantunicase/v25/HI_QiZUaILtOqhqgDeXoF_n1_fTGX-vTnsMnx3C9.ttf", - "500": "https://fonts.gstatic.com/s/cormorantunicase/v25/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9Mnt-cv7Gy0DRzS.ttf", - "600": "https://fonts.gstatic.com/s/cormorantunicase/v25/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9MLsOcv7Gy0DRzS.ttf", - "700": "https://fonts.gstatic.com/s/cormorantunicase/v25/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9Nvsecv7Gy0DRzS.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cormorantunicase/v25/HI_QiZUaILtOqhqgDeXoF_n1_fTGX9vSlMc.ttf" - }, - { - "family": "Cormorant Upright", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/cormorantupright/v19/VuJudM3I2Y35poFONtLdafkUCHw1y1N5phDsU9X6RPzQ.ttf", - "regular": "https://fonts.gstatic.com/s/cormorantupright/v19/VuJrdM3I2Y35poFONtLdafkUCHw1y2vVjjTkeMnz.ttf", - "500": "https://fonts.gstatic.com/s/cormorantupright/v19/VuJudM3I2Y35poFONtLdafkUCHw1y1MhpxDsU9X6RPzQ.ttf", - "600": "https://fonts.gstatic.com/s/cormorantupright/v19/VuJudM3I2Y35poFONtLdafkUCHw1y1MNoBDsU9X6RPzQ.ttf", - "700": "https://fonts.gstatic.com/s/cormorantupright/v19/VuJudM3I2Y35poFONtLdafkUCHw1y1NpoRDsU9X6RPzQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cormorantupright/v19/VuJrdM3I2Y35poFONtLdafkUCHw1y1vUhDA.ttf" - }, - { - "family": "Cossette Texte", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/cossettetexte/v1/S6ukw4pDXzTb-m1kPi_7eV-ciP01xPBQ19bE.ttf", - "700": "https://fonts.gstatic.com/s/cossettetexte/v1/S6unw4pDXzTb-m1kPi_7eV-ciMWJ69RY_MrNDZes.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cossettetexte/v1/S6ukw4pDXzTb-m1kPi_7eV-ciM00zvQ.ttf" - }, - { - "family": "Cossette Titre", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/cossettetitre/v1/11hYGpvKz1nGbxMXUWz9OdPzuiEZrPeE8cA2.ttf", - "700": "https://fonts.gstatic.com/s/cossettetitre/v1/11hbGpvKz1nGbxMXUWz9OdPzuhmlg9OM2tw_RXR-.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cossettetitre/v1/11hYGpvKz1nGbxMXUWz9OdPzuhEYpvM.ttf" - }, - { - "family": "Courgette", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/courgette/v19/wEO_EBrAnc9BLjLQAUkFUfAL3EsHiA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/courgette/v19/wEO_EBrAnc9BLjLQAUk1UPoP.ttf" - }, - { - "family": "Courier Prime", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/courierprime/v11/u-450q2lgwslOqpF_6gQ8kELWwZjW-_-tvg.ttf", - "italic": "https://fonts.gstatic.com/s/courierprime/v11/u-4n0q2lgwslOqpF_6gQ8kELawRpX837pvjxPA.ttf", - "700": "https://fonts.gstatic.com/s/courierprime/v11/u-4k0q2lgwslOqpF_6gQ8kELY7pMf-fVqvHoJXw.ttf", - "700italic": "https://fonts.gstatic.com/s/courierprime/v11/u-4i0q2lgwslOqpF_6gQ8kELawRR4-LfrtPtNXyeAg.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/courierprime/v11/u-450q2lgwslOqpF_6gQ8kELawdpXw.ttf" - }, - { - "family": "Cousine", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "hebrew", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v29", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/cousine/v29/d6lIkaiiRdih4SpPzSMlzTbtz9k.ttf", - "italic": "https://fonts.gstatic.com/s/cousine/v29/d6lKkaiiRdih4SpP_SEvyRTo39l8hw.ttf", - "700": "https://fonts.gstatic.com/s/cousine/v29/d6lNkaiiRdih4SpP9Z8K6T7G09BlnmQ.ttf", - "700italic": "https://fonts.gstatic.com/s/cousine/v29/d6lPkaiiRdih4SpP_SEXdTvM1_JgjmRpOA.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cousine/v29/d6lIkaiiRdih4SpP_SIvyQ.ttf" - }, - { - "family": "Coustard", - "variants": [ - "regular", - "900" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/coustard/v17/3XFpErgg3YsZ5fqUU9UPvWXuROTd.ttf", - "900": "https://fonts.gstatic.com/s/coustard/v17/3XFuErgg3YsZ5fqUU-2LkEHmb_jU3eRL.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/coustard/v17/3XFpErgg3YsZ5fqUU-UOt2E.ttf" - }, - { - "family": "Covered By Your Grace", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/coveredbyyourgrace/v17/QGYwz-AZahWOJJI9kykWW9mD6opopoqXSOS0FgItq6bFIg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/coveredbyyourgrace/v17/QGYwz-AZahWOJJI9kykWW9mD6opopoqXSOSEFwgp.ttf" - }, - { - "family": "Crafty Girls", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/craftygirls/v16/va9B4kXI39VaDdlPJo8N_NvuQR37fF3Wlg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/craftygirls/v16/va9B4kXI39VaDdlPJo8N_NveQBf_.ttf" - }, - { - "family": "Creepster", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v13", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/creepster/v13/AlZy_zVUqJz4yMrniH4hdXf4XB0Tow.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/creepster/v13/AlZy_zVUqJz4yMrniH4RdH38.ttf" - }, - { - "family": "Crete Round", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/creteround/v16/55xoey1sJNPjPiv1ZZZrxJ1827zAKnxN.ttf", - "italic": "https://fonts.gstatic.com/s/creteround/v16/55xqey1sJNPjPiv1ZZZrxK1-0bjiL2xNhKc.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/creteround/v16/55xoey1sJNPjPiv1ZZZrxK190bg.ttf" - }, - { - "family": "Crimson Pro", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v28", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZTm18OJE_VNWoyQ.ttf", - "300": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZkG18OJE_VNWoyQ.ttf", - "regular": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZzm18OJE_VNWoyQ.ttf", - "500": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZ_G18OJE_VNWoyQ.ttf", - "600": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZEGp8OJE_VNWoyQ.ttf", - "700": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZKWp8OJE_VNWoyQ.ttf", - "800": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZTmp8OJE_VNWoyQ.ttf", - "900": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZZ2p8OJE_VNWoyQ.ttf", - "200italic": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi4Ue5s7dtC4yZNE.ttf", - "300italic": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi7Ke5s7dtC4yZNE.ttf", - "italic": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi6Ue5s7dtC4yZNE.ttf", - "500italic": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi6me5s7dtC4yZNE.ttf", - "600italic": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi5KfJs7dtC4yZNE.ttf", - "700italic": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi5zfJs7dtC4yZNE.ttf", - "800italic": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi4UfJs7dtC4yZNE.ttf", - "900italic": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi49fJs7dtC4yZNE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/crimsonpro/v28/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZzm1MOZs7.ttf" - }, - { - "family": "Crimson Text", - "variants": [ - "regular", - "italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJvaAJSA_JN3Q.ttf", - "italic": "https://fonts.gstatic.com/s/crimsontext/v19/wlpogwHKFkZgtmSR3NB0oRJfaghWIfdd3ahG.ttf", - "600": "https://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJXsCx2C9lR1LFffg.ttf", - "600italic": "https://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajCOD9NV9rRPfrKu.ttf", - "700": "https://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJX1C12C9lR1LFffg.ttf", - "700italic": "https://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajDqDtNV9rRPfrKu.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJfaQhW.ttf" - }, - { - "family": "Croissant One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/croissantone/v28/3y9n6bU9bTPg4m8NDy3Kq24UM3pqn5cdJ-4.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/croissantone/v28/3y9n6bU9bTPg4m8NDy3Kq24UA3tgmw.ttf" - }, - { - "family": "Crushed", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v32", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/crushed/v32/U9Mc6dym6WXImTlFT1kfuIqyLzA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/crushed/v32/U9Mc6dym6WXImTlFf1gVvA.ttf" - }, - { - "family": "Cuprum", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v29", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/cuprum/v29/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6ZjzSJjQjgnU.ttf", - "500": "https://fonts.gstatic.com/s/cuprum/v29/dg45_pLmvrkcOkBnKsOzXyGWTBcmg9f6ZjzSJjQjgnU.ttf", - "600": "https://fonts.gstatic.com/s/cuprum/v29/dg45_pLmvrkcOkBnKsOzXyGWTBcmgzv9ZjzSJjQjgnU.ttf", - "700": "https://fonts.gstatic.com/s/cuprum/v29/dg45_pLmvrkcOkBnKsOzXyGWTBcmgwL9ZjzSJjQjgnU.ttf", - "italic": "https://fonts.gstatic.com/s/cuprum/v29/dg47_pLmvrkcOkBNI_FMh0j91rkhli25jn_YIhYmknUPEA.ttf", - "500italic": "https://fonts.gstatic.com/s/cuprum/v29/dg47_pLmvrkcOkBNI_FMh0j91rkhli25vH_YIhYmknUPEA.ttf", - "600italic": "https://fonts.gstatic.com/s/cuprum/v29/dg47_pLmvrkcOkBNI_FMh0j91rkhli25UHjYIhYmknUPEA.ttf", - "700italic": "https://fonts.gstatic.com/s/cuprum/v29/dg47_pLmvrkcOkBNI_FMh0j91rkhli25aXjYIhYmknUPEA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cuprum/v29/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6Vj3YIg.ttf" - }, - { - "family": "Cute Font", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v28", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/cutefont/v28/Noaw6Uny2oWPbSHMrY6vmJNVNC9hkw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cutefont/v28/Noaw6Uny2oWPbSHMrY6fmZlR.ttf" - }, - { - "family": "Cutive", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/cutive/v24/NaPZcZ_fHOhV3Ip7T_hDoyqlZQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cutive/v24/NaPZcZ_fHOhV3IpLTvJH.ttf" - }, - { - "family": "Cutive Mono", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/cutivemono/v23/m8JWjfRfY7WVjVi2E-K9H5RFRG-K3Mud.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/cutivemono/v23/m8JWjfRfY7WVjVi2E-K9H6RETms.ttf" - }, - { - "family": "DM Mono", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "500", - "500italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/dmmono/v16/aFTR7PB1QTsUX8KYvrGyIYSnbKX9Rlk.ttf", - "300italic": "https://fonts.gstatic.com/s/dmmono/v16/aFTT7PB1QTsUX8KYth-orYataIf4VllXuA.ttf", - "regular": "https://fonts.gstatic.com/s/dmmono/v16/aFTU7PB1QTsUX8KYhh2aBYyMcKw.ttf", - "italic": "https://fonts.gstatic.com/s/dmmono/v16/aFTW7PB1QTsUX8KYth-QAa6JYKzkXw.ttf", - "500": "https://fonts.gstatic.com/s/dmmono/v16/aFTR7PB1QTsUX8KYvumzIYSnbKX9Rlk.ttf", - "500italic": "https://fonts.gstatic.com/s/dmmono/v16/aFTT7PB1QTsUX8KYth-o9YetaIf4VllXuA.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dmmono/v16/aFTU7PB1QTsUX8KYthyQAQ.ttf" - }, - { - "family": "DM Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAop1hTmf3ZGMZpg.ttf", - "200": "https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAIpxhTmf3ZGMZpg.ttf", - "300": "https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwA_JxhTmf3ZGMZpg.ttf", - "regular": "https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxhTmf3ZGMZpg.ttf", - "500": "https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAkJxhTmf3ZGMZpg.ttf", - "600": "https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAfJthTmf3ZGMZpg.ttf", - "700": "https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwARZthTmf3ZGMZpg.ttf", - "800": "https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAIpthTmf3ZGMZpg.ttf", - "900": "https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAC5thTmf3ZGMZpg.ttf", - "100italic": "https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDG3zRmYJpso5.ttf", - "200italic": "https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8JDW3zRmYJpso5.ttf", - "300italic": "https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat_XDW3zRmYJpso5.ttf", - "italic": "https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDW3zRmYJpso5.ttf", - "500italic": "https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-7DW3zRmYJpso5.ttf", - "600italic": "https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9XCm3zRmYJpso5.ttf", - "700italic": "https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9uCm3zRmYJpso5.ttf", - "800italic": "https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8JCm3zRmYJpso5.ttf", - "900italic": "https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8gCm3zRmYJpso5.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxRT23z.ttf" - }, - { - "family": "DM Serif Display", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/dmserifdisplay/v17/-nFnOHM81r4j6k0gjAW3mujVU2B2K_d709jy92k.ttf", - "italic": "https://fonts.gstatic.com/s/dmserifdisplay/v17/-nFhOHM81r4j6k0gjAW3mujVU2B2G_Vx1_r352np3Q.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dmserifdisplay/v17/-nFnOHM81r4j6k0gjAW3mujVU2B2G_Zx1w.ttf" - }, - { - "family": "DM Serif Text", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/dmseriftext/v13/rnCu-xZa_krGokauCeNq1wWyafOPXHIJErY.ttf", - "italic": "https://fonts.gstatic.com/s/dmseriftext/v13/rnCw-xZa_krGokauCeNq1wWyWfGFWFAMArZKqQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dmseriftext/v13/rnCu-xZa_krGokauCeNq1wWyWfKFWA.ttf" - }, - { - "family": "Dai Banna SIL", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "new-tai-lue" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "300": "https://fonts.gstatic.com/s/daibannasil/v2/lW-lwj0AJWmpwGyJ2uEoA4I7tYKoDsrKOgMX95A.ttf", - "300italic": "https://fonts.gstatic.com/s/daibannasil/v2/lW-jwj0AJWmpwGyJ2uEoA4I7vSyygsjAPiES55D3Vg.ttf", - "regular": "https://fonts.gstatic.com/s/daibannasil/v2/lW-4wj0AJWmpwGyJ2uEoA4I7jS6AKsLhJgo.ttf", - "italic": "https://fonts.gstatic.com/s/daibannasil/v2/lW-mwj0AJWmpwGyJ2uEoA4I7vSyKLuDkNgoO7g.ttf", - "500": "https://fonts.gstatic.com/s/daibannasil/v2/lW-lwj0AJWmpwGyJ2uEoA4I7tdqpDsrKOgMX95A.ttf", - "500italic": "https://fonts.gstatic.com/s/daibannasil/v2/lW-jwj0AJWmpwGyJ2uEoA4I7vSyy2snAPiES55D3Vg.ttf", - "600": "https://fonts.gstatic.com/s/daibannasil/v2/lW-lwj0AJWmpwGyJ2uEoA4I7tfauDsrKOgMX95A.ttf", - "600italic": "https://fonts.gstatic.com/s/daibannasil/v2/lW-jwj0AJWmpwGyJ2uEoA4I7vSyy9s7APiES55D3Vg.ttf", - "700": "https://fonts.gstatic.com/s/daibannasil/v2/lW-lwj0AJWmpwGyJ2uEoA4I7tZKvDsrKOgMX95A.ttf", - "700italic": "https://fonts.gstatic.com/s/daibannasil/v2/lW-jwj0AJWmpwGyJ2uEoA4I7vSyyks_APiES55D3Vg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/daibannasil/v2/lW-4wj0AJWmpwGyJ2uEoA4I7vS-KLg.ttf" - }, - { - "family": "Damion", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/damion/v15/hv-XlzJ3KEUe_YZUbWY3MTFgVg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/damion/v15/hv-XlzJ3KEUe_YZkbGwz.ttf" - }, - { - "family": "Dancing Script", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v29", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/dancingscript/v29/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSoHTeB9ptDqpw.ttf", - "500": "https://fonts.gstatic.com/s/dancingscript/v29/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BAyoHTeB9ptDqpw.ttf", - "600": "https://fonts.gstatic.com/s/dancingscript/v29/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7B7y0HTeB9ptDqpw.ttf", - "700": "https://fonts.gstatic.com/s/dancingscript/v29/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7B1i0HTeB9ptDqpw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dancingscript/v29/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSo3TOp5.ttf" - }, - { - "family": "Danfo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/danfo/v5/snf3s0u_98t16THfK1Csj3N41ZqbYDe5S71ToPrNKQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/danfo/v5/snf3s0u_98t16THfK1Csj3N41ZqbYDeJSrdX.ttf" - }, - { - "family": "Dangrek", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v33", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/dangrek/v33/LYjCdG30nEgoH8E2gCNqqVIuTN4.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dangrek/v33/LYjCdG30nEgoH8E2sCJgrQ.ttf" - }, - { - "family": "Darker Grotesque", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v10", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/darkergrotesque/v10/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXxpqn7y-XFyZFUB.ttf", - "regular": "https://fonts.gstatic.com/s/darkergrotesque/v10/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXw3qn7y-XFyZFUB.ttf", - "500": "https://fonts.gstatic.com/s/darkergrotesque/v10/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXwFqn7y-XFyZFUB.ttf", - "600": "https://fonts.gstatic.com/s/darkergrotesque/v10/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXzprX7y-XFyZFUB.ttf", - "700": "https://fonts.gstatic.com/s/darkergrotesque/v10/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXzQrX7y-XFyZFUB.ttf", - "800": "https://fonts.gstatic.com/s/darkergrotesque/v10/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXy3rX7y-XFyZFUB.ttf", - "900": "https://fonts.gstatic.com/s/darkergrotesque/v10/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXyerX7y-XFyZFUB.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/darkergrotesque/v10/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXw3qk7z83U.ttf" - }, - { - "family": "Darumadrop One", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/darumadropone/v14/cY9cfjeIW11dpCKgRLi675a87IhHBJOxZQPp.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/darumadropone/v14/cY9cfjeIW11dpCKgRLi675a87LhGDpc.ttf" - }, - { - "family": "David Libre", - "variants": [ - "regular", - "500", - "700" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/davidlibre/v17/snfus0W_99N64iuYSvp4W_l86p6TYS-Y.ttf", - "500": "https://fonts.gstatic.com/s/davidlibre/v17/snfzs0W_99N64iuYSvp4W8GIw7qbSjORSo9W.ttf", - "700": "https://fonts.gstatic.com/s/davidlibre/v17/snfzs0W_99N64iuYSvp4W8HAxbqbSjORSo9W.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/davidlibre/v17/snfus0W_99N64iuYSvp4W8l94Jo.ttf" - }, - { - "family": "Dawning of a New Day", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/dawningofanewday/v22/t5t_IQMbOp2SEwuncwLRjMfIg1yYit_nAz8bhWJGNoBE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dawningofanewday/v22/t5t_IQMbOp2SEwuncwLRjMfIg1yYit_nAw8aj2Y.ttf" - }, - { - "family": "Days One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin" - ], - "version": "v19", - "lastModified": "2025-04-23", - "files": { - "regular": "https://fonts.gstatic.com/s/daysone/v19/mem9YaCnxnKRiYZOCLYVeLkWVNBt.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/daysone/v19/mem9YaCnxnKRiYZOCIYUcr0.ttf" - }, - { - "family": "Dekko", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/dekko/v23/46khlb_wWjfSrttFR0vsfl1B.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dekko/v23/46khlb_wWjfSrutETU8.ttf" - }, - { - "family": "Dela Gothic One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "greek", - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/delagothicone/v19/hESp6XxvMDRA-2eD0lXpDa6QkBAGRUsJQAlbUA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/delagothicone/v19/hESp6XxvMDRA-2eD0lXpDa6QkBA2REEN.ttf" - }, - { - "family": "Delicious Handrawn", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v10", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/delicioushandrawn/v10/wlpsgx_NAUNkpmKQifcxkQchDFo3fJ113JpDd6u3AQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/delicioushandrawn/v10/wlpsgx_NAUNkpmKQifcxkQchDFo3fJ1F3ZBH.ttf" - }, - { - "family": "Delius", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/delius/v21/PN_xRfK0pW_9e1rtYcI-jT3L_w.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/delius/v21/PN_xRfK0pW_9e1rdYMg6.ttf" - }, - { - "family": "Delius Swash Caps", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/deliusswashcaps/v25/oY1E8fPLr7v4JWCExZpWebxVKORpXXedKmeBvEYs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/deliusswashcaps/v25/oY1E8fPLr7v4JWCExZpWebxVKORpXUecIGM.ttf" - }, - { - "family": "Delius Unicase", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v30", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/deliusunicase/v30/845BNMEwEIOVT8BmgfSzIr_6mmLHd-73LXWs.ttf", - "700": "https://fonts.gstatic.com/s/deliusunicase/v30/845CNMEwEIOVT8BmgfSzIr_6mlp7WMr_BmmlS5aw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/deliusunicase/v30/845BNMEwEIOVT8BmgfSzIr_6mlLGfeo.ttf" - }, - { - "family": "Della Respira", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/dellarespira/v24/RLp5K5v44KaueWI6iEJQBiGPRfkSu6EuTHo.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dellarespira/v24/RLp5K5v44KaueWI6iEJQBiGPdfgYvw.ttf" - }, - { - "family": "Denk One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/denkone/v21/dg4m_pzhrqcFb2IzROtHpbglShon.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/denkone/v21/dg4m_pzhrqcFb2IzRNtGr7w.ttf" - }, - { - "family": "Devonshire", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/devonshire/v29/46kqlbDwWirWr4gtBD2BX0Vq01lYAZM.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/devonshire/v29/46kqlbDwWirWr4gtBD2Bb0Rg1w.ttf" - }, - { - "family": "Dhurjati", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/dhurjati/v27/_6_8ED3gSeatXfFiFX3ySKQtuTA2.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dhurjati/v27/_6_8ED3gSeatXfFiFU3zQqA.ttf" - }, - { - "family": "Didact Gothic", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/didactgothic/v21/ahcfv8qz1zt6hCC5G4F_P4ASpUySp0LlcyQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/didactgothic/v21/ahcfv8qz1zt6hCC5G4F_P4ASlU2Yow.ttf" - }, - { - "family": "Diphylleia", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/diphylleia/v2/DtVmJxCtRKMixK4_HXsIulwm6gDXvwE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/diphylleia/v2/DtVmJxCtRKMixK4_HXsIil0s7g.ttf" - }, - { - "family": "Diplomata", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v33", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/diplomata/v33/Cn-0JtiMXwhNwp-wKxyfYGxYrdM9Sg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/diplomata/v33/Cn-0JtiMXwhNwp-wKxyvYWZc.ttf" - }, - { - "family": "Diplomata SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/diplomatasc/v30/buExpoi3ecvs3kidKgBJo2kf-P5Oaiw4cw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/diplomatasc/v30/buExpoi3ecvs3kidKgBJo2kv-fRK.ttf" - }, - { - "family": "Do Hyeon", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/dohyeon/v21/TwMN-I8CRRU2zM86HFE3ZwaH__-C.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dohyeon/v21/TwMN-I8CRRU2zM86HGE2bQI.ttf" - }, - { - "family": "Dokdo", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/dokdo/v23/esDf315XNuCBLxLo4NaMlKcH.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dokdo/v23/esDf315XNuCBLyLp6tI.ttf" - }, - { - "family": "Domine", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/domine/v25/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X3LAI10VErGuW8Q.ttf", - "500": "https://fonts.gstatic.com/s/domine/v25/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X0DAI10VErGuW8Q.ttf", - "600": "https://fonts.gstatic.com/s/domine/v25/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X6zHI10VErGuW8Q.ttf", - "700": "https://fonts.gstatic.com/s/domine/v25/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X5XHI10VErGuW8Q.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/domine/v25/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X3LAE1wfFg.ttf" - }, - { - "family": "Donegal One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/donegalone/v22/m8JWjfRYea-ZnFz6fsK9FZRFRG-K3Mud.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/donegalone/v22/m8JWjfRYea-ZnFz6fsK9FaRETms.ttf" - }, - { - "family": "Dongle", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "korean", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/dongle/v16/sJoG3Ltdjt6VPkqeEcxrYjWNzXvVPA.ttf", - "regular": "https://fonts.gstatic.com/s/dongle/v16/sJoF3Ltdjt6VPkqmveRPah6RxA.ttf", - "700": "https://fonts.gstatic.com/s/dongle/v16/sJoG3Ltdjt6VPkqeActrYjWNzXvVPA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dongle/v16/sJoF3Ltdjt6VPkqWvO5L.ttf" - }, - { - "family": "Doppio One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/doppioone/v14/Gg8wN5gSaBfyBw2MqCh-lgshKGpe5Fg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/doppioone/v14/Gg8wN5gSaBfyBw2MqCh-pgorLA.ttf" - }, - { - "family": "Dorsa", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v29", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/dorsa/v29/yYLn0hjd0OGwqo493XCFxAnQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dorsa/v29/yYLn0hjd0OGwqr4813Q.ttf" - }, - { - "family": "Dosis", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v34", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/dosis/v34/HhyJU5sn9vOmLxNkIwRSjTVNWLEJt7MV3BkFTq4EPw.ttf", - "300": "https://fonts.gstatic.com/s/dosis/v34/HhyJU5sn9vOmLxNkIwRSjTVNWLEJabMV3BkFTq4EPw.ttf", - "regular": "https://fonts.gstatic.com/s/dosis/v34/HhyJU5sn9vOmLxNkIwRSjTVNWLEJN7MV3BkFTq4EPw.ttf", - "500": "https://fonts.gstatic.com/s/dosis/v34/HhyJU5sn9vOmLxNkIwRSjTVNWLEJBbMV3BkFTq4EPw.ttf", - "600": "https://fonts.gstatic.com/s/dosis/v34/HhyJU5sn9vOmLxNkIwRSjTVNWLEJ6bQV3BkFTq4EPw.ttf", - "700": "https://fonts.gstatic.com/s/dosis/v34/HhyJU5sn9vOmLxNkIwRSjTVNWLEJ0LQV3BkFTq4EPw.ttf", - "800": "https://fonts.gstatic.com/s/dosis/v34/HhyJU5sn9vOmLxNkIwRSjTVNWLEJt7QV3BkFTq4EPw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dosis/v34/HhyJU5sn9vOmLxNkIwRSjTVNWLEJN7Ml3RMB.ttf" - }, - { - "family": "DotGothic16", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/dotgothic16/v21/v6-QGYjBJFKgyw5nSoDAGE7L435YPFrT.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dotgothic16/v21/v6-QGYjBJFKgyw5nSoDAGH7K6Xo.ttf" - }, - { - "family": "Doto", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/doto/v3/t5tJIRMbNJ6TQG7Il_EKPqP9zTnvqqGNcuvLMt1JIphFOOOez0WSvrlpgw.ttf", - "200": "https://fonts.gstatic.com/s/doto/v3/t5tJIRMbNJ6TQG7Il_EKPqP9zTnvqqGNcuvLMt1JIphFuOKez0WSvrlpgw.ttf", - "300": "https://fonts.gstatic.com/s/doto/v3/t5tJIRMbNJ6TQG7Il_EKPqP9zTnvqqGNcuvLMt1JIphFZuKez0WSvrlpgw.ttf", - "regular": "https://fonts.gstatic.com/s/doto/v3/t5tJIRMbNJ6TQG7Il_EKPqP9zTnvqqGNcuvLMt1JIphFOOKez0WSvrlpgw.ttf", - "500": "https://fonts.gstatic.com/s/doto/v3/t5tJIRMbNJ6TQG7Il_EKPqP9zTnvqqGNcuvLMt1JIphFCuKez0WSvrlpgw.ttf", - "600": "https://fonts.gstatic.com/s/doto/v3/t5tJIRMbNJ6TQG7Il_EKPqP9zTnvqqGNcuvLMt1JIphF5uWez0WSvrlpgw.ttf", - "700": "https://fonts.gstatic.com/s/doto/v3/t5tJIRMbNJ6TQG7Il_EKPqP9zTnvqqGNcuvLMt1JIphF3-Wez0WSvrlpgw.ttf", - "800": "https://fonts.gstatic.com/s/doto/v3/t5tJIRMbNJ6TQG7Il_EKPqP9zTnvqqGNcuvLMt1JIphFuOWez0WSvrlpgw.ttf", - "900": "https://fonts.gstatic.com/s/doto/v3/t5tJIRMbNJ6TQG7Il_EKPqP9zTnvqqGNcuvLMt1JIphFkeWez0WSvrlpgw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/doto/v3/t5tJIRMbNJ6TQG7Il_EKPqP9zTnvqqGNcuvLMt1JIphFOOKuzk-W.ttf" - }, - { - "family": "Dr Sugiyama", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/drsugiyama/v30/HTxoL2k4N3O9n5I1boGI7abRM4-t-g7y.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/drsugiyama/v30/HTxoL2k4N3O9n5I1boGI7ZbQOYs.ttf" - }, - { - "family": "Duru Sans", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/durusans/v21/xn7iYH8xwmSyTvEV_HOxT_fYdN-WZw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/durusans/v21/xn7iYH8xwmSyTvEV_HOBTv3c.ttf" - }, - { - "family": "DynaPuff", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v9", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/dynapuff/v9/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RSxYu6YjrSRs4wn8.ttf", - "500": "https://fonts.gstatic.com/s/dynapuff/v9/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RSyQu6YjrSRs4wn8.ttf", - "600": "https://fonts.gstatic.com/s/dynapuff/v9/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RS8gp6YjrSRs4wn8.ttf", - "700": "https://fonts.gstatic.com/s/dynapuff/v9/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RS_Ep6YjrSRs4wn8.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dynapuff/v9/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RSxYu2YnhTQ.ttf" - }, - { - "family": "Dynalight", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/dynalight/v24/1Ptsg8LOU_aOmQvTsF4ISotrDfGGxA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/dynalight/v24/1Ptsg8LOU_aOmQvTsF44S4Fv.ttf" - }, - { - "family": "EB Garamond", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v32", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-6_RUA4V-e6yHgQ.ttf", - "500": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-2fRUA4V-e6yHgQ.ttf", - "600": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-NfNUA4V-e6yHgQ.ttf", - "700": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-DPNUA4V-e6yHgQ.ttf", - "800": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-a_NUA4V-e6yHgQ.ttf", - "italic": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7e8QI96WamXgXFI.ttf", - "500italic": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7eOQI96WamXgXFI.ttf", - "600italic": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7diR496WamXgXFI.ttf", - "700italic": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7dbR496WamXgXFI.ttf", - "800italic": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7c8R496WamXgXFI.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ebgaramond/v32/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-6_RkAo96.ttf" - }, - { - "family": "Eagle Lake", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/eaglelake/v26/ptRMTiqbbuNJDOiKj9wG5O7yKQNute8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eaglelake/v26/ptRMTiqbbuNJDOiKj9wG1O_4LQ.ttf" - }, - { - "family": "East Sea Dokdo", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v26", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/eastseadokdo/v26/xfuo0Wn2V2_KanASqXSZp22m05_aGavYS18y.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eastseadokdo/v26/xfuo0Wn2V2_KanASqXSZp22m06_bE68.ttf" - }, - { - "family": "Eater", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/eater/v27/mtG04_FCK7bOvpu2u3FwsXsR.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eater/v27/mtG04_FCK7bOvqu3sXU.ttf" - }, - { - "family": "Economica", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/economica/v17/Qw3fZQZaHCLgIWa29ZBrMcgAAl1lfQ.ttf", - "italic": "https://fonts.gstatic.com/s/economica/v17/Qw3ZZQZaHCLgIWa29ZBbM8IEIFh1fWUl.ttf", - "700": "https://fonts.gstatic.com/s/economica/v17/Qw3aZQZaHCLgIWa29ZBTjeckCnZ5dHw8iw.ttf", - "700italic": "https://fonts.gstatic.com/s/economica/v17/Qw3EZQZaHCLgIWa29ZBbM_q4D3x9Vnksi4M7.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/economica/v17/Qw3fZQZaHCLgIWa29ZBbMMIE.ttf" - }, - { - "family": "Eczar", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "devanagari", - "greek", - "greek-ext", - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/eczar/v27/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXHd6WqTIVKWJKWg.ttf", - "500": "https://fonts.gstatic.com/s/eczar/v27/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXL96WqTIVKWJKWg.ttf", - "600": "https://fonts.gstatic.com/s/eczar/v27/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXw9mWqTIVKWJKWg.ttf", - "700": "https://fonts.gstatic.com/s/eczar/v27/BXR2vF3Pi-DLmxcpJB-qbNTyTMDX-tmWqTIVKWJKWg.ttf", - "800": "https://fonts.gstatic.com/s/eczar/v27/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXndmWqTIVKWJKWg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eczar/v27/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXHd6mqDgR.ttf" - }, - { - "family": "Edu AU VIC WA NT Arrows", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/eduauvicwantarrows/v4/z7N7dQTteSlUDJZJAmUB9MuVbLPBjsrTFZLUbdjnSmlATbEWXt5tAcvhTTk90n91Vw.ttf", - "500": "https://fonts.gstatic.com/s/eduauvicwantarrows/v4/z7N7dQTteSlUDJZJAmUB9MuVbLPBjsrTFZLUbdjnSmlATbEWXt5tM8vhTTk90n91Vw.ttf", - "600": "https://fonts.gstatic.com/s/eduauvicwantarrows/v4/z7N7dQTteSlUDJZJAmUB9MuVbLPBjsrTFZLUbdjnSmlATbEWXt5t38zhTTk90n91Vw.ttf", - "700": "https://fonts.gstatic.com/s/eduauvicwantarrows/v4/z7N7dQTteSlUDJZJAmUB9MuVbLPBjsrTFZLUbdjnSmlATbEWXt5t5szhTTk90n91Vw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eduauvicwantarrows/v4/z7N7dQTteSlUDJZJAmUB9MuVbLPBjsrTFZLUbdjnSmlATbEWXt5tAcvRTDM5.ttf" - }, - { - "family": "Edu AU VIC WA NT Dots", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/eduauvicwantdots/v4/S6uQw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3_B4dZ6MmTX8QNLvtYEtmT2SB3_5U.ttf", - "500": "https://fonts.gstatic.com/s/eduauvicwantdots/v4/S6uQw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3_B4dZ6MmTX8QNLslYEtmT2SB3_5U.ttf", - "600": "https://fonts.gstatic.com/s/eduauvicwantdots/v4/S6uQw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3_B4dZ6MmTX8QNLiVfEtmT2SB3_5U.ttf", - "700": "https://fonts.gstatic.com/s/eduauvicwantdots/v4/S6uQw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3_B4dZ6MmTX8QNLhxfEtmT2SB3_5U.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eduauvicwantdots/v4/S6uQw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3_B4dZ6MmTX8QNLvtYItiZ3Q.ttf" - }, - { - "family": "Edu AU VIC WA NT Guides", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/eduauvicwantguides/v3/TuG-UUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LCZuAcLMeb8FnyPdK1ZazoF08FsYlA.ttf", - "500": "https://fonts.gstatic.com/s/eduauvicwantguides/v3/TuG-UUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LCZuAcLMeb8FnyPdGVZazoF08FsYlA.ttf", - "600": "https://fonts.gstatic.com/s/eduauvicwantguides/v3/TuG-UUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LCZuAcLMeb8FnyPd9VFazoF08FsYlA.ttf", - "700": "https://fonts.gstatic.com/s/eduauvicwantguides/v3/TuG-UUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LCZuAcLMeb8FnyPdzFFazoF08FsYlA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eduauvicwantguides/v3/TuG-UUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LCZuAcLMeb8FnyPdK1Zqz4tw.ttf" - }, - { - "family": "Edu AU VIC WA NT Hand", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/eduauvicwanthand/v3/C8cO4dY1tX2x0uuiUHFS4y7ERV-jfqJ6x063HfvcsxiYKifhtCJ1lKtFbYfTEUU.ttf", - "500": "https://fonts.gstatic.com/s/eduauvicwanthand/v3/C8cO4dY1tX2x0uuiUHFS4y7ERV-jfqJ6x063HfvcsxiYKifhtBB1lKtFbYfTEUU.ttf", - "600": "https://fonts.gstatic.com/s/eduauvicwanthand/v3/C8cO4dY1tX2x0uuiUHFS4y7ERV-jfqJ6x063HfvcsxiYKifhtPxylKtFbYfTEUU.ttf", - "700": "https://fonts.gstatic.com/s/eduauvicwanthand/v3/C8cO4dY1tX2x0uuiUHFS4y7ERV-jfqJ6x063HfvcsxiYKifhtMVylKtFbYfTEUU.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eduauvicwanthand/v3/C8cO4dY1tX2x0uuiUHFS4y7ERV-jfqJ6x063HfvcsxiYKifhtCJ1pKpPaQ.ttf" - }, - { - "family": "Edu AU VIC WA NT Pre", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/eduauvicwantpre/v3/f0Xc0fWk-t0rbG8Ycr-t55aG0elTWbFeXaYI98CnuNLeosIyJmkwr6MhKkg6nw.ttf", - "500": "https://fonts.gstatic.com/s/eduauvicwantpre/v3/f0Xc0fWk-t0rbG8Ycr-t55aG0elTWbFeXaYI98CnuNLeosIyFGkwr6MhKkg6nw.ttf", - "600": "https://fonts.gstatic.com/s/eduauvicwantpre/v3/f0Xc0fWk-t0rbG8Ycr-t55aG0elTWbFeXaYI98CnuNLeosIy-G4wr6MhKkg6nw.ttf", - "700": "https://fonts.gstatic.com/s/eduauvicwantpre/v3/f0Xc0fWk-t0rbG8Ycr-t55aG0elTWbFeXaYI98CnuNLeosIywW4wr6MhKkg6nw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eduauvicwantpre/v3/f0Xc0fWk-t0rbG8Ycr-t55aG0elTWbFeXaYI98CnuNLeosIyJmkArqkl.ttf" - }, - { - "family": "Edu NSW ACT Cursive", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/edunswactcursive/v3/xn7LYGUw02PnIPEjskHSG_2fCaz9DzhQbcTNLWxkwsHVCrd5giiVjXBs6BMb.ttf", - "500": "https://fonts.gstatic.com/s/edunswactcursive/v3/xn7LYGUw02PnIPEjskHSG_2fCaz9DzhQbcTNLWxkwsHVCrdLgiiVjXBs6BMb.ttf", - "600": "https://fonts.gstatic.com/s/edunswactcursive/v3/xn7LYGUw02PnIPEjskHSG_2fCaz9DzhQbcTNLWxkwsHVCrenhSiVjXBs6BMb.ttf", - "700": "https://fonts.gstatic.com/s/edunswactcursive/v3/xn7LYGUw02PnIPEjskHSG_2fCaz9DzhQbcTNLWxkwsHVCreehSiVjXBs6BMb.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/edunswactcursive/v3/xn7LYGUw02PnIPEjskHSG_2fCaz9DzhQbcTNLWxkwsHVCrd5ghiUh3Q.ttf" - }, - { - "family": "Edu NSW ACT Foundation", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v5", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/edunswactfoundation/v5/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki9tovGLeC-sfguJ.ttf", - "500": "https://fonts.gstatic.com/s/edunswactfoundation/v5/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki9fovGLeC-sfguJ.ttf", - "600": "https://fonts.gstatic.com/s/edunswactfoundation/v5/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki-zpfGLeC-sfguJ.ttf", - "700": "https://fonts.gstatic.com/s/edunswactfoundation/v5/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki-KpfGLeC-sfguJ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/edunswactfoundation/v5/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki9tosGKcis.ttf" - }, - { - "family": "Edu NSW ACT Hand Pre", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/edunswacthandpre/v3/kmKXZrI-ExGJWUmupHwGgw6Qw4svl-MsLiw7ATFEXwCkLE0ywWBqtsjedKEHuQ.ttf", - "500": "https://fonts.gstatic.com/s/edunswacthandpre/v3/kmKXZrI-ExGJWUmupHwGgw6Qw4svl-MsLiw7ATFEXwCkLE0y82BqtsjedKEHuQ.ttf", - "600": "https://fonts.gstatic.com/s/edunswacthandpre/v3/kmKXZrI-ExGJWUmupHwGgw6Qw4svl-MsLiw7ATFEXwCkLE0yH2dqtsjedKEHuQ.ttf", - "700": "https://fonts.gstatic.com/s/edunswacthandpre/v3/kmKXZrI-ExGJWUmupHwGgw6Qw4svl-MsLiw7ATFEXwCkLE0yJmdqtsjedKEHuQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/edunswacthandpre/v3/kmKXZrI-ExGJWUmupHwGgw6Qw4svl-MsLiw7ATFEXwCkLE0ywWBat8La.ttf" - }, - { - "family": "Edu QLD Beginner", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v5", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/eduqldbeginner/v5/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE4E3oebi6vyVWCN.ttf", - "500": "https://fonts.gstatic.com/s/eduqldbeginner/v5/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE423oebi6vyVWCN.ttf", - "600": "https://fonts.gstatic.com/s/eduqldbeginner/v5/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE7a2Yebi6vyVWCN.ttf", - "700": "https://fonts.gstatic.com/s/eduqldbeginner/v5/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE7j2Yebi6vyVWCN.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eduqldbeginner/v5/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE4E3reaga8.ttf" - }, - { - "family": "Edu QLD Hand", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/eduqldhand/v3/d6lakaOkTtjy2QhuzWtup1rW3NCQVvjKPjPjngAUeRt5gGCzkrs.ttf", - "500": "https://fonts.gstatic.com/s/eduqldhand/v3/d6lakaOkTtjy2QhuzWtup1rW3NCQVvjKPjPjnjIUeRt5gGCzkrs.ttf", - "600": "https://fonts.gstatic.com/s/eduqldhand/v3/d6lakaOkTtjy2QhuzWtup1rW3NCQVvjKPjPjnt4TeRt5gGCzkrs.ttf", - "700": "https://fonts.gstatic.com/s/eduqldhand/v3/d6lakaOkTtjy2QhuzWtup1rW3NCQVvjKPjPjnucTeRt5gGCzkrs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eduqldhand/v3/d6lakaOkTtjy2QhuzWtup1rW3NCQVvjKPjPjngAUSRpzhA.ttf" - }, - { - "family": "Edu SA Beginner", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v5", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/edusabeginner/v5/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9989fo1yBydUEDs.ttf", - "500": "https://fonts.gstatic.com/s/edusabeginner/v5/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9-09fo1yBydUEDs.ttf", - "600": "https://fonts.gstatic.com/s/edusabeginner/v5/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9wE6fo1yBydUEDs.ttf", - "700": "https://fonts.gstatic.com/s/edusabeginner/v5/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9zg6fo1yBydUEDs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/edusabeginner/v5/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9989Tox4Aw.ttf" - }, - { - "family": "Edu SA Hand", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/edusahand/v3/memtYaOmw37C-ogAJfd7NocVXTy8nx2cmqvXlWumvkSE55OZgw.ttf", - "500": "https://fonts.gstatic.com/s/edusahand/v3/memtYaOmw37C-ogAJfd7NocVXTy8nx2cmqvXp2umvkSE55OZgw.ttf", - "600": "https://fonts.gstatic.com/s/edusahand/v3/memtYaOmw37C-ogAJfd7NocVXTy8nx2cmqvXS2ymvkSE55OZgw.ttf", - "700": "https://fonts.gstatic.com/s/edusahand/v3/memtYaOmw37C-ogAJfd7NocVXTy8nx2cmqvXcmymvkSE55OZgw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/edusahand/v3/memtYaOmw37C-ogAJfd7NocVXTy8nx2cmqvXlWuWv06A.ttf" - }, - { - "family": "Edu TAS Beginner", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v5", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/edutasbeginner/v5/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_HwemkrBWRhvk02.ttf", - "500": "https://fonts.gstatic.com/s/edutasbeginner/v5/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_HCemkrBWRhvk02.ttf", - "600": "https://fonts.gstatic.com/s/edutasbeginner/v5/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_EufWkrBWRhvk02.ttf", - "700": "https://fonts.gstatic.com/s/edutasbeginner/v5/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_EXfWkrBWRhvk02.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/edutasbeginner/v5/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_HwelkqD2A.ttf" - }, - { - "family": "Edu VIC WA NT Beginner", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/eduvicwantbeginner/v6/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-OXlPmFXwnpkeGR.ttf", - "500": "https://fonts.gstatic.com/s/eduvicwantbeginner/v6/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-OllPmFXwnpkeGR.ttf", - "600": "https://fonts.gstatic.com/s/eduvicwantbeginner/v6/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-NJk_mFXwnpkeGR.ttf", - "700": "https://fonts.gstatic.com/s/eduvicwantbeginner/v6/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-Nwk_mFXwnpkeGR.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eduvicwantbeginner/v6/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-OXlMmEVQ0.ttf" - }, - { - "family": "Edu VIC WA NT Hand", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/eduvicwanthand/v3/UcCO3EsnIXnOaZKmY1Ry0wZjP9YVRBcw2boKoduKmMEVuLyfMZhrib2Bg-4.ttf", - "500": "https://fonts.gstatic.com/s/eduvicwanthand/v3/UcCO3EsnIXnOaZKmY1Ry0wZjP9YVRBcw2boKoduKmMEVuI6fMZhrib2Bg-4.ttf", - "600": "https://fonts.gstatic.com/s/eduvicwanthand/v3/UcCO3EsnIXnOaZKmY1Ry0wZjP9YVRBcw2boKoduKmMEVuGKYMZhrib2Bg-4.ttf", - "700": "https://fonts.gstatic.com/s/eduvicwanthand/v3/UcCO3EsnIXnOaZKmY1Ry0wZjP9YVRBcw2boKoduKmMEVuFuYMZhrib2Bg-4.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eduvicwanthand/v3/UcCO3EsnIXnOaZKmY1Ry0wZjP9YVRBcw2boKoduKmMEVuLyfAZlhjQ.ttf" - }, - { - "family": "Edu VIC WA NT Hand Pre", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/eduvicwanthandpre/v3/neInzDmioZxjkInM_tLHFudmcN2Uxxc-9Vnv-4YmimMq127-YLTo4dgUBS1Nzqn8.ttf", - "500": "https://fonts.gstatic.com/s/eduvicwanthandpre/v3/neInzDmioZxjkInM_tLHFudmcN2Uxxc-9Vnv-4YmimMq127-YLTa4dgUBS1Nzqn8.ttf", - "600": "https://fonts.gstatic.com/s/eduvicwanthandpre/v3/neInzDmioZxjkInM_tLHFudmcN2Uxxc-9Vnv-4YmimMq127-YLQ25tgUBS1Nzqn8.ttf", - "700": "https://fonts.gstatic.com/s/eduvicwanthandpre/v3/neInzDmioZxjkInM_tLHFudmcN2Uxxc-9Vnv-4YmimMq127-YLQP5tgUBS1Nzqn8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/eduvicwanthandpre/v3/neInzDmioZxjkInM_tLHFudmcN2Uxxc-9Vnv-4YmimMq127-YLTo4egVDyk.ttf" - }, - { - "family": "El Messiri", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/elmessiri/v25/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuXwe65ghj3OoapG.ttf", - "500": "https://fonts.gstatic.com/s/elmessiri/v25/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuXCe65ghj3OoapG.ttf", - "600": "https://fonts.gstatic.com/s/elmessiri/v25/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuUufK5ghj3OoapG.ttf", - "700": "https://fonts.gstatic.com/s/elmessiri/v25/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuUXfK5ghj3OoapG.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/elmessiri/v25/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuXwe55hjDk.ttf" - }, - { - "family": "Electrolize", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/electrolize/v20/cIf5Ma1dtE0zSiGSiED7AUEGso5tQafB.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/electrolize/v20/cIf5Ma1dtE0zSiGSiED7AXEHuIo.ttf" - }, - { - "family": "Elsie", - "variants": [ - "regular", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/elsie/v26/BCanqZABrez54yYu9slAeLgX.ttf", - "900": "https://fonts.gstatic.com/s/elsie/v26/BCaqqZABrez54x6q2-1IU6QeXSBk.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/elsie/v26/BCanqZABrez54xYv_M0.ttf" - }, - { - "family": "Elsie Swash Caps", - "variants": [ - "regular", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/elsieswashcaps/v25/845DNN8xGZyVX5MVo_upKf7KnjK0ferVKGWsUo8.ttf", - "900": "https://fonts.gstatic.com/s/elsieswashcaps/v25/845ENN8xGZyVX5MVo_upKf7KnjK0RW74DG2HToawrdU.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/elsieswashcaps/v25/845DNN8xGZyVX5MVo_upKf7KnjK0TevfLA.ttf" - }, - { - "family": "Emblema One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/emblemaone/v22/nKKT-GQ0F5dSY8vzG0rOEIRBHl57G_f_.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/emblemaone/v22/nKKT-GQ0F5dSY8vzG0rOELRAFFo.ttf" - }, - { - "family": "Emilys Candy", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/emilyscandy/v21/2EbgL-1mD1Rnb0OGKudbk0y5r9xrX84JjA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/emilyscandy/v21/2EbgL-1mD1Rnb0OGKudbk0yJrtZv.ttf" - }, - { - "family": "Encode Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/encodesans/v23/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHiZtWP7FJCt2c.ttf", - "200": "https://fonts.gstatic.com/s/encodesans/v23/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGOHjZtWP7FJCt2c.ttf", - "300": "https://fonts.gstatic.com/s/encodesans/v23/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGD_jZtWP7FJCt2c.ttf", - "regular": "https://fonts.gstatic.com/s/encodesans/v23/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHjZtWP7FJCt2c.ttf", - "500": "https://fonts.gstatic.com/s/encodesans/v23/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGFPjZtWP7FJCt2c.ttf", - "600": "https://fonts.gstatic.com/s/encodesans/v23/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGL_kZtWP7FJCt2c.ttf", - "700": "https://fonts.gstatic.com/s/encodesans/v23/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGIbkZtWP7FJCt2c.ttf", - "800": "https://fonts.gstatic.com/s/encodesans/v23/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGOHkZtWP7FJCt2c.ttf", - "900": "https://fonts.gstatic.com/s/encodesans/v23/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGMjkZtWP7FJCt2c.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/encodesans/v23/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHjVtSF6A.ttf" - }, - { - "family": "Encode Sans Condensed", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_76_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-5a-JLQoFI2KR.ttf", - "200": "https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-SY6pByQJKnuIFA.ttf", - "300": "https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-LY2pByQJKnuIFA.ttf", - "regular": "https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_16_LD37rqfuwxyIuaZhE6cRXOLtm2gfTGgaWNDw8VIw.ttf", - "500": "https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-dYypByQJKnuIFA.ttf", - "600": "https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-WYupByQJKnuIFA.ttf", - "700": "https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-PYqpByQJKnuIFA.ttf", - "800": "https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-IYmpByQJKnuIFA.ttf", - "900": "https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-BYipByQJKnuIFA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_16_LD37rqfuwxyIuaZhE6cRXOLtm2gfT2gK-J.ttf" - }, - { - "family": "Encode Sans Expanded", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/encodesansexpanded/v12/c4mx1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpJGKQNicoAbJlw.ttf", - "200": "https://fonts.gstatic.com/s/encodesansexpanded/v12/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpLqCCNIXIwSP0XD.ttf", - "300": "https://fonts.gstatic.com/s/encodesansexpanded/v12/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKOCyNIXIwSP0XD.ttf", - "regular": "https://fonts.gstatic.com/s/encodesansexpanded/v12/c4m_1mF4GcnstG_Jh1QH6ac4hNLeNyeYUqoiIwdAd5Ab.ttf", - "500": "https://fonts.gstatic.com/s/encodesansexpanded/v12/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpLWCiNIXIwSP0XD.ttf", - "600": "https://fonts.gstatic.com/s/encodesansexpanded/v12/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpL6DSNIXIwSP0XD.ttf", - "700": "https://fonts.gstatic.com/s/encodesansexpanded/v12/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKeDCNIXIwSP0XD.ttf", - "800": "https://fonts.gstatic.com/s/encodesansexpanded/v12/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKCDyNIXIwSP0XD.ttf", - "900": "https://fonts.gstatic.com/s/encodesansexpanded/v12/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKmDiNIXIwSP0XD.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/encodesansexpanded/v12/c4m_1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpojKQM.ttf" - }, - { - "family": "Encode Sans SC", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/encodesanssc/v14/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HHhn8c9NOEEClIc.ttf", - "200": "https://fonts.gstatic.com/s/encodesanssc/v14/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HPhm8c9NOEEClIc.ttf", - "300": "https://fonts.gstatic.com/s/encodesanssc/v14/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HCZm8c9NOEEClIc.ttf", - "regular": "https://fonts.gstatic.com/s/encodesanssc/v14/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HHhm8c9NOEEClIc.ttf", - "500": "https://fonts.gstatic.com/s/encodesanssc/v14/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HEpm8c9NOEEClIc.ttf", - "600": "https://fonts.gstatic.com/s/encodesanssc/v14/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HKZh8c9NOEEClIc.ttf", - "700": "https://fonts.gstatic.com/s/encodesanssc/v14/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HJ9h8c9NOEEClIc.ttf", - "800": "https://fonts.gstatic.com/s/encodesanssc/v14/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HPhh8c9NOEEClIc.ttf", - "900": "https://fonts.gstatic.com/s/encodesanssc/v14/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HNFh8c9NOEEClIc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/encodesanssc/v14/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HHhmwc5HPA.ttf" - }, - { - "family": "Encode Sans Semi Condensed", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT6oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1T19MFtQ9jpVUA.ttf", - "200": "https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1RZ1eFHbdTgTFmr.ttf", - "300": "https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Q91uFHbdTgTFmr.ttf", - "regular": "https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT4oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG2yR_sVPRsjp.ttf", - "500": "https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Rl1-FHbdTgTFmr.ttf", - "600": "https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1RJ0OFHbdTgTFmr.ttf", - "700": "https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Qt0eFHbdTgTFmr.ttf", - "800": "https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Qx0uFHbdTgTFmr.ttf", - "900": "https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1QV0-FHbdTgTFmr.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT4oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1yQ9ME.ttf" - }, - { - "family": "Encode Sans Semi Expanded", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke8xOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM-41KwrlKXeOEA.ttf", - "200": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM0IUCyDLJX6XCWU.ttf", - "300": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMyYXCyDLJX6XCWU.ttf", - "regular": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke83OhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TC4o_LyjgOXc.ttf", - "500": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM34WCyDLJX6XCWU.ttf", - "600": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM1IRCyDLJX6XCWU.ttf", - "700": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMzYQCyDLJX6XCWU.ttf", - "800": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMyoTCyDLJX6XCWU.ttf", - "900": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMw4SCyDLJX6XCWU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke83OhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TO4s1Kw.ttf" - }, - { - "family": "Engagement", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/engagement/v29/x3dlckLDZbqa7RUs9MFVXNossybsHQI.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/engagement/v29/x3dlckLDZbqa7RUs9MFVbNsmtw.ttf" - }, - { - "family": "Englebert", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/englebert/v24/xn7iYH8w2XGrC8AR4HSxT_fYdN-WZw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/englebert/v24/xn7iYH8w2XGrC8AR4HSBTv3c.ttf" - }, - { - "family": "Enriqueta", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/enriqueta/v19/goksH6L7AUFrRvV44HVTS0CjkP1Yog.ttf", - "500": "https://fonts.gstatic.com/s/enriqueta/v19/gokpH6L7AUFrRvV44HVrv2mHmNZEq6TTFw.ttf", - "600": "https://fonts.gstatic.com/s/enriqueta/v19/gokpH6L7AUFrRvV44HVrk26HmNZEq6TTFw.ttf", - "700": "https://fonts.gstatic.com/s/enriqueta/v19/gokpH6L7AUFrRvV44HVr92-HmNZEq6TTFw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/enriqueta/v19/goksH6L7AUFrRvV44HVjSkqn.ttf" - }, - { - "family": "Ephesis", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/ephesis/v11/uU9PCBUS8IerL2VG7xPb3vyHmlI.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ephesis/v11/uU9PCBUS8IerL2VG3xLR2g.ttf" - }, - { - "family": "Epilogue", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/epilogue/v20/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXMDLiDJXVigHPVA.ttf", - "200": "https://fonts.gstatic.com/s/epilogue/v20/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXsDPiDJXVigHPVA.ttf", - "300": "https://fonts.gstatic.com/s/epilogue/v20/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXbjPiDJXVigHPVA.ttf", - "regular": "https://fonts.gstatic.com/s/epilogue/v20/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXMDPiDJXVigHPVA.ttf", - "500": "https://fonts.gstatic.com/s/epilogue/v20/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXAjPiDJXVigHPVA.ttf", - "600": "https://fonts.gstatic.com/s/epilogue/v20/O4ZMFGj5hxF0EhjimngomvnCCtqb30OX7jTiDJXVigHPVA.ttf", - "700": "https://fonts.gstatic.com/s/epilogue/v20/O4ZMFGj5hxF0EhjimngomvnCCtqb30OX1zTiDJXVigHPVA.ttf", - "800": "https://fonts.gstatic.com/s/epilogue/v20/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXsDTiDJXVigHPVA.ttf", - "900": "https://fonts.gstatic.com/s/epilogue/v20/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXmTTiDJXVigHPVA.ttf", - "100italic": "https://fonts.gstatic.com/s/epilogue/v20/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HAKTp_RqATfVHNU.ttf", - "200italic": "https://fonts.gstatic.com/s/epilogue/v20/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCKT5_RqATfVHNU.ttf", - "300italic": "https://fonts.gstatic.com/s/epilogue/v20/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HBUT5_RqATfVHNU.ttf", - "italic": "https://fonts.gstatic.com/s/epilogue/v20/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HAKT5_RqATfVHNU.ttf", - "500italic": "https://fonts.gstatic.com/s/epilogue/v20/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HA4T5_RqATfVHNU.ttf", - "600italic": "https://fonts.gstatic.com/s/epilogue/v20/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HDUSJ_RqATfVHNU.ttf", - "700italic": "https://fonts.gstatic.com/s/epilogue/v20/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HDtSJ_RqATfVHNU.ttf", - "800italic": "https://fonts.gstatic.com/s/epilogue/v20/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCKSJ_RqATfVHNU.ttf", - "900italic": "https://fonts.gstatic.com/s/epilogue/v20/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCjSJ_RqATfVHNU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/epilogue/v20/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXMDPSDZ_R.ttf" - }, - { - "family": "Epunda Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/epundasans/v5/ea8Kads_Rv3-GJfWRrHjgFROia5FlsurC_ndMlT7Sb54PQAqcA.ttf", - "regular": "https://fonts.gstatic.com/s/epundasans/v5/ea8Kads_Rv3-GJfWRrHjgFROia5FlsurC_ndbFT7Sb54PQAqcA.ttf", - "500": "https://fonts.gstatic.com/s/epundasans/v5/ea8Kads_Rv3-GJfWRrHjgFROia5FlsurC_ndXlT7Sb54PQAqcA.ttf", - "600": "https://fonts.gstatic.com/s/epundasans/v5/ea8Kads_Rv3-GJfWRrHjgFROia5FlsurC_ndslP7Sb54PQAqcA.ttf", - "700": "https://fonts.gstatic.com/s/epundasans/v5/ea8Kads_Rv3-GJfWRrHjgFROia5FlsurC_ndi1P7Sb54PQAqcA.ttf", - "800": "https://fonts.gstatic.com/s/epundasans/v5/ea8Kads_Rv3-GJfWRrHjgFROia5FlsurC_nd7FP7Sb54PQAqcA.ttf", - "900": "https://fonts.gstatic.com/s/epundasans/v5/ea8Kads_Rv3-GJfWRrHjgFROia5FlsurC_ndxVP7Sb54PQAqcA.ttf", - "300italic": "https://fonts.gstatic.com/s/epundasans/v5/ea8Mads_Rv3-GJfWRrHjgH5Hu1Gd_6Axpf7IpBdNCrR8HwU6cADD.ttf", - "italic": "https://fonts.gstatic.com/s/epundasans/v5/ea8Mads_Rv3-GJfWRrHjgH5Hu1Gd_6Axpf7IpBcTCrR8HwU6cADD.ttf", - "500italic": "https://fonts.gstatic.com/s/epundasans/v5/ea8Mads_Rv3-GJfWRrHjgH5Hu1Gd_6Axpf7IpBchCrR8HwU6cADD.ttf", - "600italic": "https://fonts.gstatic.com/s/epundasans/v5/ea8Mads_Rv3-GJfWRrHjgH5Hu1Gd_6Axpf7IpBfNDbR8HwU6cADD.ttf", - "700italic": "https://fonts.gstatic.com/s/epundasans/v5/ea8Mads_Rv3-GJfWRrHjgH5Hu1Gd_6Axpf7IpBf0DbR8HwU6cADD.ttf", - "800italic": "https://fonts.gstatic.com/s/epundasans/v5/ea8Mads_Rv3-GJfWRrHjgH5Hu1Gd_6Axpf7IpBeTDbR8HwU6cADD.ttf", - "900italic": "https://fonts.gstatic.com/s/epundasans/v5/ea8Mads_Rv3-GJfWRrHjgH5Hu1Gd_6Axpf7IpBe6DbR8HwU6cADD.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/epundasans/v5/ea8Kads_Rv3-GJfWRrHjgFROia5FlsurC_ndbFTLSLR8.ttf" - }, - { - "family": "Epunda Slab", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-08-26", - "files": { - "300": "https://fonts.gstatic.com/s/epundaslab/v2/46k8lbHxTynXpZplPiOFHX9L36WJhClOsZt_JjNVoU4Q_2eOpA.ttf", - "regular": "https://fonts.gstatic.com/s/epundaslab/v2/46k8lbHxTynXpZplPiOFHX9L36WJhClOsZt_eDNVoU4Q_2eOpA.ttf", - "500": "https://fonts.gstatic.com/s/epundaslab/v2/46k8lbHxTynXpZplPiOFHX9L36WJhClOsZt_SjNVoU4Q_2eOpA.ttf", - "600": "https://fonts.gstatic.com/s/epundaslab/v2/46k8lbHxTynXpZplPiOFHX9L36WJhClOsZt_pjRVoU4Q_2eOpA.ttf", - "700": "https://fonts.gstatic.com/s/epundaslab/v2/46k8lbHxTynXpZplPiOFHX9L36WJhClOsZt_nzRVoU4Q_2eOpA.ttf", - "800": "https://fonts.gstatic.com/s/epundaslab/v2/46k8lbHxTynXpZplPiOFHX9L36WJhClOsZt_-DRVoU4Q_2eOpA.ttf", - "900": "https://fonts.gstatic.com/s/epundaslab/v2/46k8lbHxTynXpZplPiOFHX9L36WJhClOsZt_0TRVoU4Q_2eOpA.ttf", - "300italic": "https://fonts.gstatic.com/s/epundaslab/v2/46k6lbHxTynXpZplPiOFHVVC7VpR7ULUH5xqsHDj4kQU3WKepN0B.ttf", - "italic": "https://fonts.gstatic.com/s/epundaslab/v2/46k6lbHxTynXpZplPiOFHVVC7VpR7ULUH5xqsHC94kQU3WKepN0B.ttf", - "500italic": "https://fonts.gstatic.com/s/epundaslab/v2/46k6lbHxTynXpZplPiOFHVVC7VpR7ULUH5xqsHCP4kQU3WKepN0B.ttf", - "600italic": "https://fonts.gstatic.com/s/epundaslab/v2/46k6lbHxTynXpZplPiOFHVVC7VpR7ULUH5xqsHBj5UQU3WKepN0B.ttf", - "700italic": "https://fonts.gstatic.com/s/epundaslab/v2/46k6lbHxTynXpZplPiOFHVVC7VpR7ULUH5xqsHBa5UQU3WKepN0B.ttf", - "800italic": "https://fonts.gstatic.com/s/epundaslab/v2/46k6lbHxTynXpZplPiOFHVVC7VpR7ULUH5xqsHA95UQU3WKepN0B.ttf", - "900italic": "https://fonts.gstatic.com/s/epundaslab/v2/46k6lbHxTynXpZplPiOFHVVC7VpR7ULUH5xqsHAU5UQU3WKepN0B.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/epundaslab/v2/46k8lbHxTynXpZplPiOFHX9L36WJhClOsZt_eDNloEQU.ttf" - }, - { - "family": "Erica One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/ericaone/v29/WBLnrEXccV9VGrOKmGD1W0_MJMGxiQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ericaone/v29/WBLnrEXccV9VGrOKmGDFWkXI.ttf" - }, - { - "family": "Esteban", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/esteban/v16/r05bGLZE-bdGdN-GdOuD5jokU8E.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/esteban/v16/r05bGLZE-bdGdN-GROqJ4g.ttf" - }, - { - "family": "Estonia", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/estonia/v13/7Au_p_4ijSecA1yHCCL8zkwMIFg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/estonia/v13/7Au_p_4ijSecA1yHOCP2yg.ttf" - }, - { - "family": "Euphoria Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/euphoriascript/v22/mFTpWb0X2bLb_cx6To2B8GpKoD5ak_ZT1D8x7Q.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/euphoriascript/v22/mFTpWb0X2bLb_cx6To2B8GpKoD5qkvxX.ttf" - }, - { - "family": "Ewert", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/ewert/v27/va9I4kzO2tFODYBvS-J3kbDP.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ewert/v27/va9I4kzO2tFODbBuQeY.ttf" - }, - { - "family": "Exile", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-13", - "files": { - "regular": "https://fonts.gstatic.com/s/exile/v1/pxiKyp0xqNtbjBsYHpT2dkNE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/exile/v1/pxiKyp0xqNtbjCsZFJA.ttf" - }, - { - "family": "Exo", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/exo/v25/4UaZrEtFpBI4f1ZSIK9d4LjJ4lM2CwNsOl4p5Is.ttf", - "200": "https://fonts.gstatic.com/s/exo/v25/4UaZrEtFpBI4f1ZSIK9d4LjJ4tM3CwNsOl4p5Is.ttf", - "300": "https://fonts.gstatic.com/s/exo/v25/4UaZrEtFpBI4f1ZSIK9d4LjJ4g03CwNsOl4p5Is.ttf", - "regular": "https://fonts.gstatic.com/s/exo/v25/4UaZrEtFpBI4f1ZSIK9d4LjJ4lM3CwNsOl4p5Is.ttf", - "500": "https://fonts.gstatic.com/s/exo/v25/4UaZrEtFpBI4f1ZSIK9d4LjJ4mE3CwNsOl4p5Is.ttf", - "600": "https://fonts.gstatic.com/s/exo/v25/4UaZrEtFpBI4f1ZSIK9d4LjJ4o0wCwNsOl4p5Is.ttf", - "700": "https://fonts.gstatic.com/s/exo/v25/4UaZrEtFpBI4f1ZSIK9d4LjJ4rQwCwNsOl4p5Is.ttf", - "800": "https://fonts.gstatic.com/s/exo/v25/4UaZrEtFpBI4f1ZSIK9d4LjJ4tMwCwNsOl4p5Is.ttf", - "900": "https://fonts.gstatic.com/s/exo/v25/4UaZrEtFpBI4f1ZSIK9d4LjJ4vowCwNsOl4p5Is.ttf", - "100italic": "https://fonts.gstatic.com/s/exo/v25/4UafrEtFpBISdmSt-MY2ehbO95t040FmPnws9Iu-uA.ttf", - "200italic": "https://fonts.gstatic.com/s/exo/v25/4UafrEtFpBISdmSt-MY2ehbO95t0Y0BmPnws9Iu-uA.ttf", - "300italic": "https://fonts.gstatic.com/s/exo/v25/4UafrEtFpBISdmSt-MY2ehbO95t0vUBmPnws9Iu-uA.ttf", - "italic": "https://fonts.gstatic.com/s/exo/v25/4UafrEtFpBISdmSt-MY2ehbO95t040BmPnws9Iu-uA.ttf", - "500italic": "https://fonts.gstatic.com/s/exo/v25/4UafrEtFpBISdmSt-MY2ehbO95t00UBmPnws9Iu-uA.ttf", - "600italic": "https://fonts.gstatic.com/s/exo/v25/4UafrEtFpBISdmSt-MY2ehbO95t0PUdmPnws9Iu-uA.ttf", - "700italic": "https://fonts.gstatic.com/s/exo/v25/4UafrEtFpBISdmSt-MY2ehbO95t0BEdmPnws9Iu-uA.ttf", - "800italic": "https://fonts.gstatic.com/s/exo/v25/4UafrEtFpBISdmSt-MY2ehbO95t0Y0dmPnws9Iu-uA.ttf", - "900italic": "https://fonts.gstatic.com/s/exo/v25/4UafrEtFpBISdmSt-MY2ehbO95t0SkdmPnws9Iu-uA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/exo/v25/4UaZrEtFpBI4f1ZSIK9d4LjJ4lM3OwJmPg.ttf" - }, - { - "family": "Exo 2", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/exo2/v26/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvOcPtq-rpvLpQ.ttf", - "200": "https://fonts.gstatic.com/s/exo2/v26/7cH1v4okm5zmbvwkAx_sfcEuiD8jPvKcPtq-rpvLpQ.ttf", - "300": "https://fonts.gstatic.com/s/exo2/v26/7cH1v4okm5zmbvwkAx_sfcEuiD8j4PKcPtq-rpvLpQ.ttf", - "regular": "https://fonts.gstatic.com/s/exo2/v26/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvKcPtq-rpvLpQ.ttf", - "500": "https://fonts.gstatic.com/s/exo2/v26/7cH1v4okm5zmbvwkAx_sfcEuiD8jjPKcPtq-rpvLpQ.ttf", - "600": "https://fonts.gstatic.com/s/exo2/v26/7cH1v4okm5zmbvwkAx_sfcEuiD8jYPWcPtq-rpvLpQ.ttf", - "700": "https://fonts.gstatic.com/s/exo2/v26/7cH1v4okm5zmbvwkAx_sfcEuiD8jWfWcPtq-rpvLpQ.ttf", - "800": "https://fonts.gstatic.com/s/exo2/v26/7cH1v4okm5zmbvwkAx_sfcEuiD8jPvWcPtq-rpvLpQ.ttf", - "900": "https://fonts.gstatic.com/s/exo2/v26/7cH1v4okm5zmbvwkAx_sfcEuiD8jF_WcPtq-rpvLpQ.ttf", - "100italic": "https://fonts.gstatic.com/s/exo2/v26/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drF0fNC6jJ7bpQBL.ttf", - "200italic": "https://fonts.gstatic.com/s/exo2/v26/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drH0fdC6jJ7bpQBL.ttf", - "300italic": "https://fonts.gstatic.com/s/exo2/v26/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drEqfdC6jJ7bpQBL.ttf", - "italic": "https://fonts.gstatic.com/s/exo2/v26/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drF0fdC6jJ7bpQBL.ttf", - "500italic": "https://fonts.gstatic.com/s/exo2/v26/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drFGfdC6jJ7bpQBL.ttf", - "600italic": "https://fonts.gstatic.com/s/exo2/v26/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drGqetC6jJ7bpQBL.ttf", - "700italic": "https://fonts.gstatic.com/s/exo2/v26/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drGTetC6jJ7bpQBL.ttf", - "800italic": "https://fonts.gstatic.com/s/exo2/v26/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drH0etC6jJ7bpQBL.ttf", - "900italic": "https://fonts.gstatic.com/s/exo2/v26/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drHdetC6jJ7bpQBL.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/exo2/v26/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvKsP9C6.ttf" - }, - { - "family": "Expletus Sans", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v31", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/expletussans/v31/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaSY2s1oFQTcXfMm.ttf", - "500": "https://fonts.gstatic.com/s/expletussans/v31/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaSq2s1oFQTcXfMm.ttf", - "600": "https://fonts.gstatic.com/s/expletussans/v31/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaRG3c1oFQTcXfMm.ttf", - "700": "https://fonts.gstatic.com/s/expletussans/v31/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaR_3c1oFQTcXfMm.ttf", - "italic": "https://fonts.gstatic.com/s/expletussans/v31/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmSUrHwD-WOMmKKY.ttf", - "500italic": "https://fonts.gstatic.com/s/expletussans/v31/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmRcrHwD-WOMmKKY.ttf", - "600italic": "https://fonts.gstatic.com/s/expletussans/v31/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmfssHwD-WOMmKKY.ttf", - "700italic": "https://fonts.gstatic.com/s/expletussans/v31/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmcIsHwD-WOMmKKY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/expletussans/v31/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaSY2v1pHwA.ttf" - }, - { - "family": "Explora", - "variants": [ - "regular" - ], - "subsets": [ - "cherokee", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/explora/v11/tsstApxFfjUH4wrvc1qPonC3vqc.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/explora/v11/tsstApxFfjUH4wrvQ1uFpg.ttf" - }, - { - "family": "Faculty Glyphic", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/facultyglyphic/v4/RrQIbot2-iBvI2mYSyKIrcgoBuQIG-eFNVmULg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/facultyglyphic/v4/RrQIbot2-iBvI2mYSyKIrcgoBuQ4Gu2B.ttf" - }, - { - "family": "Fahkwang", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/fahkwang/v18/Noa26Uj3zpmBOgbNpOJHmZlRFipxkwjx.ttf", - "200italic": "https://fonts.gstatic.com/s/fahkwang/v18/Noa06Uj3zpmBOgbNpOqNgHFQHC5Tlhjxdw4.ttf", - "300": "https://fonts.gstatic.com/s/fahkwang/v18/Noa26Uj3zpmBOgbNpOIjmplRFipxkwjx.ttf", - "300italic": "https://fonts.gstatic.com/s/fahkwang/v18/Noa06Uj3zpmBOgbNpOqNgBVTHC5Tlhjxdw4.ttf", - "regular": "https://fonts.gstatic.com/s/fahkwang/v18/Noax6Uj3zpmBOgbNpNqPsr1ZPTZ4.ttf", - "italic": "https://fonts.gstatic.com/s/fahkwang/v18/Noa36Uj3zpmBOgbNpOqNuLl7OCZ4ihE.ttf", - "500": "https://fonts.gstatic.com/s/fahkwang/v18/Noa26Uj3zpmBOgbNpOJ7m5lRFipxkwjx.ttf", - "500italic": "https://fonts.gstatic.com/s/fahkwang/v18/Noa06Uj3zpmBOgbNpOqNgE1SHC5Tlhjxdw4.ttf", - "600": "https://fonts.gstatic.com/s/fahkwang/v18/Noa26Uj3zpmBOgbNpOJXnJlRFipxkwjx.ttf", - "600italic": "https://fonts.gstatic.com/s/fahkwang/v18/Noa06Uj3zpmBOgbNpOqNgGFVHC5Tlhjxdw4.ttf", - "700": "https://fonts.gstatic.com/s/fahkwang/v18/Noa26Uj3zpmBOgbNpOIznZlRFipxkwjx.ttf", - "700italic": "https://fonts.gstatic.com/s/fahkwang/v18/Noa06Uj3zpmBOgbNpOqNgAVUHC5Tlhjxdw4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fahkwang/v18/Noax6Uj3zpmBOgbNpOqOuLk.ttf" - }, - { - "family": "Familjen Grotesk", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/familjengrotesk/v11/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMGJaSztc1jcEYq2.ttf", - "500": "https://fonts.gstatic.com/s/familjengrotesk/v11/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMG7aSztc1jcEYq2.ttf", - "600": "https://fonts.gstatic.com/s/familjengrotesk/v11/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMFXbiztc1jcEYq2.ttf", - "700": "https://fonts.gstatic.com/s/familjengrotesk/v11/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMFubiztc1jcEYq2.ttf", - "italic": "https://fonts.gstatic.com/s/familjengrotesk/v11/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKsSueVz-FJq2Rv4.ttf", - "500italic": "https://fonts.gstatic.com/s/familjengrotesk/v11/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKvaueVz-FJq2Rv4.ttf", - "600italic": "https://fonts.gstatic.com/s/familjengrotesk/v11/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKhqpeVz-FJq2Rv4.ttf", - "700italic": "https://fonts.gstatic.com/s/familjengrotesk/v11/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKiOpeVz-FJq2Rv4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/familjengrotesk/v11/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMGJaRzseVw.ttf" - }, - { - "family": "Fanwood Text", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/fanwoodtext/v17/3XFtErwl05Ad_vSCF6Fq7xXGRdbY1P1Sbg.ttf", - "italic": "https://fonts.gstatic.com/s/fanwoodtext/v17/3XFzErwl05Ad_vSCF6Fq7xX2R9zc9vhCblye.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fanwoodtext/v17/3XFtErwl05Ad_vSCF6Fq7xX2RNzc.ttf" - }, - { - "family": "Farro", - "variants": [ - "300", - "regular", - "500", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/farro/v15/i7dJIFl3byGNHa3hNJ6-WkJUQUq7.ttf", - "regular": "https://fonts.gstatic.com/s/farro/v15/i7dEIFl3byGNHZVNHLq2cV5d.ttf", - "500": "https://fonts.gstatic.com/s/farro/v15/i7dJIFl3byGNHa25NZ6-WkJUQUq7.ttf", - "700": "https://fonts.gstatic.com/s/farro/v15/i7dJIFl3byGNHa3xM56-WkJUQUq7.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/farro/v15/i7dEIFl3byGNHaVMFr4.ttf" - }, - { - "family": "Farsan", - "variants": [ - "regular" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/farsan/v24/VEMwRoJ0vY_zsyz62q-pxDX9rQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/farsan/v24/VEMwRoJ0vY_zsyzK26Wt.ttf" - }, - { - "family": "Fascinate", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/fascinate/v23/z7NWdRrufC8XJK0IIEli1LbQRPyNrw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fascinate/v23/z7NWdRrufC8XJK0IIElS1bzU.ttf" - }, - { - "family": "Fascinate Inline", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/fascinateinline/v24/jVyR7mzzB3zc-jp6QCAu60poNqIy1g3CfRXxWZQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fascinateinline/v24/jVyR7mzzB3zc-jp6QCAu60poNqIy5gzIeQ.ttf" - }, - { - "family": "Faster One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/fasterone/v20/H4ciBXCHmdfClFb-vWhfyLuShq63czE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fasterone/v20/H4ciBXCHmdfClFb-vWhf-LqYgg.ttf" - }, - { - "family": "Fasthand", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v33", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/fasthand/v33/0yb9GDohyKTYn_ZEESkuYkw2rQg1.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fasthand/v33/0yb9GDohyKTYn_ZEERkvaEg.ttf" - }, - { - "family": "Fauna One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/faunaone/v16/wlpzgwTPBVpjpCuwkuEx2UxLYClOCg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/faunaone/v16/wlpzgwTPBVpjpCuwkuEB2EZP.ttf" - }, - { - "family": "Faustina", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/faustina/v23/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHls3IEvGVWWe8tbEg.ttf", - "regular": "https://fonts.gstatic.com/s/faustina/v23/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsgoEvGVWWe8tbEg.ttf", - "500": "https://fonts.gstatic.com/s/faustina/v23/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlssIEvGVWWe8tbEg.ttf", - "600": "https://fonts.gstatic.com/s/faustina/v23/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsXIYvGVWWe8tbEg.ttf", - "700": "https://fonts.gstatic.com/s/faustina/v23/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsZYYvGVWWe8tbEg.ttf", - "800": "https://fonts.gstatic.com/s/faustina/v23/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsAoYvGVWWe8tbEg.ttf", - "300italic": "https://fonts.gstatic.com/s/faustina/v23/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsKZWl-SWc5LEnoF.ttf", - "italic": "https://fonts.gstatic.com/s/faustina/v23/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsLHWl-SWc5LEnoF.ttf", - "500italic": "https://fonts.gstatic.com/s/faustina/v23/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsL1Wl-SWc5LEnoF.ttf", - "600italic": "https://fonts.gstatic.com/s/faustina/v23/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsIZXV-SWc5LEnoF.ttf", - "700italic": "https://fonts.gstatic.com/s/faustina/v23/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsIgXV-SWc5LEnoF.ttf", - "800italic": "https://fonts.gstatic.com/s/faustina/v23/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsJHXV-SWc5LEnoF.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/faustina/v23/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsgoEfGF-S.ttf" - }, - { - "family": "Federant", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v31", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/federant/v31/2sDdZGNfip_eirT0_U0jRUG0AqUc.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/federant/v31/2sDdZGNfip_eirT0_X0iT0U.ttf" - }, - { - "family": "Federo", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/federo/v20/iJWFBX-cbD_ETsbmjVOe2WTG7Q.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/federo/v20/iJWFBX-cbD_ETsbWjFma.ttf" - }, - { - "family": "Felipa", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/felipa/v27/FwZa7-owz1Eu4F_wSNSEwM2zpA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/felipa/v27/FwZa7-owz1Eu4F_ASd6A.ttf" - }, - { - "family": "Fenix", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/fenix/v21/XoHo2YL_S7-g5ostKzAFvs8o.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fenix/v21/XoHo2YL_S7-g5rssITQ.ttf" - }, - { - "family": "Festive", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/festive/v11/cY9Ffj6KX1xcoDWhFtfgy9HTkak.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/festive/v11/cY9Ffj6KX1xcoDWhJtbqzw.ttf" - }, - { - "family": "Figtree", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v9", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_chQF5ewkEU4HTy.ttf", - "regular": "https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_d_QF5ewkEU4HTy.ttf", - "500": "https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_dNQF5ewkEU4HTy.ttf", - "600": "https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_ehR15ewkEU4HTy.ttf", - "700": "https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_eYR15ewkEU4HTy.ttf", - "800": "https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_f_R15ewkEU4HTy.ttf", - "900": "https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_fWR15ewkEU4HTy.ttf", - "300italic": "https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A-gdyEU25WTybO8.ttf", - "italic": "https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A7YdyEU25WTybO8.ttf", - "500italic": "https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A4QdyEU25WTybO8.ttf", - "600italic": "https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A2gayEU25WTybO8.ttf", - "700italic": "https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A1EayEU25WTybO8.ttf", - "800italic": "https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3AzYayEU25WTybO8.ttf", - "900italic": "https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3Ax8ayEU25WTybO8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_d_QG5fyEU.ttf" - }, - { - "family": "Finger Paint", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/fingerpaint/v21/0QInMXVJ-o-oRn_7dron8YWO85bS8ANesw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fingerpaint/v21/0QInMXVJ-o-oRn_7dron8YW-8pzW.ttf" - }, - { - "family": "Finlandica", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v10", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/finlandica/v10/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19A7rEjx9i5ss3a3.ttf", - "500": "https://fonts.gstatic.com/s/finlandica/v10/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19AJrEjx9i5ss3a3.ttf", - "600": "https://fonts.gstatic.com/s/finlandica/v10/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19Dlq0jx9i5ss3a3.ttf", - "700": "https://fonts.gstatic.com/s/finlandica/v10/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19Dcq0jx9i5ss3a3.ttf", - "italic": "https://fonts.gstatic.com/s/finlandica/v10/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz76Cy_CpOtma3uNQ.ttf", - "500italic": "https://fonts.gstatic.com/s/finlandica/v10/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz75Ky_CpOtma3uNQ.ttf", - "600italic": "https://fonts.gstatic.com/s/finlandica/v10/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz7361_CpOtma3uNQ.ttf", - "700italic": "https://fonts.gstatic.com/s/finlandica/v10/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz70e1_CpOtma3uNQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/finlandica/v10/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19A7rHjw_Co.ttf" - }, - { - "family": "Fira Code", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "symbols2" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/firacode/v27/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_GNsFVfxN87gsj0.ttf", - "regular": "https://fonts.gstatic.com/s/firacode/v27/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_D1sFVfxN87gsj0.ttf", - "500": "https://fonts.gstatic.com/s/firacode/v27/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_A9sFVfxN87gsj0.ttf", - "600": "https://fonts.gstatic.com/s/firacode/v27/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_ONrFVfxN87gsj0.ttf", - "700": "https://fonts.gstatic.com/s/firacode/v27/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_NprFVfxN87gsj0.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/firacode/v27/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_D1sJVb7Mw.ttf" - }, - { - "family": "Fira Mono", - "variants": [ - "regular", - "500", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "symbols2" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/firamono/v16/N0bX2SlFPv1weGeLZDtQIfTTkdbJYA.ttf", - "500": "https://fonts.gstatic.com/s/firamono/v16/N0bS2SlFPv1weGeLZDto1d33mf3VaZBRBQ.ttf", - "700": "https://fonts.gstatic.com/s/firamono/v16/N0bS2SlFPv1weGeLZDtondv3mf3VaZBRBQ.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/firamono/v16/N0bX2SlFPv1weGeLZDtgIP7X.ttf" - }, - { - "family": "Fira Sans", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/firasans/v18/va9C4kDNxMZdWfMOD5Vn9IjOazP3dUTP.ttf", - "100italic": "https://fonts.gstatic.com/s/firasans/v18/va9A4kDNxMZdWfMOD5VvkrCqYTfVcFTPj0s.ttf", - "200": "https://fonts.gstatic.com/s/firasans/v18/va9B4kDNxMZdWfMOD5VnWKnuQR37fF3Wlg.ttf", - "200italic": "https://fonts.gstatic.com/s/firasans/v18/va9f4kDNxMZdWfMOD5VvkrAGQBf_XljGllLX.ttf", - "300": "https://fonts.gstatic.com/s/firasans/v18/va9B4kDNxMZdWfMOD5VnPKruQR37fF3Wlg.ttf", - "300italic": "https://fonts.gstatic.com/s/firasans/v18/va9f4kDNxMZdWfMOD5VvkrBiQxf_XljGllLX.ttf", - "regular": "https://fonts.gstatic.com/s/firasans/v18/va9E4kDNxMZdWfMOD5VfkILKSTbndQ.ttf", - "italic": "https://fonts.gstatic.com/s/firasans/v18/va9C4kDNxMZdWfMOD5VvkojOazP3dUTP.ttf", - "500": "https://fonts.gstatic.com/s/firasans/v18/va9B4kDNxMZdWfMOD5VnZKvuQR37fF3Wlg.ttf", - "500italic": "https://fonts.gstatic.com/s/firasans/v18/va9f4kDNxMZdWfMOD5VvkrA6Qhf_XljGllLX.ttf", - "600": "https://fonts.gstatic.com/s/firasans/v18/va9B4kDNxMZdWfMOD5VnSKzuQR37fF3Wlg.ttf", - "600italic": "https://fonts.gstatic.com/s/firasans/v18/va9f4kDNxMZdWfMOD5VvkrAWRRf_XljGllLX.ttf", - "700": "https://fonts.gstatic.com/s/firasans/v18/va9B4kDNxMZdWfMOD5VnLK3uQR37fF3Wlg.ttf", - "700italic": "https://fonts.gstatic.com/s/firasans/v18/va9f4kDNxMZdWfMOD5VvkrByRBf_XljGllLX.ttf", - "800": "https://fonts.gstatic.com/s/firasans/v18/va9B4kDNxMZdWfMOD5VnMK7uQR37fF3Wlg.ttf", - "800italic": "https://fonts.gstatic.com/s/firasans/v18/va9f4kDNxMZdWfMOD5VvkrBuRxf_XljGllLX.ttf", - "900": "https://fonts.gstatic.com/s/firasans/v18/va9B4kDNxMZdWfMOD5VnFK_uQR37fF3Wlg.ttf", - "900italic": "https://fonts.gstatic.com/s/firasans/v18/va9f4kDNxMZdWfMOD5VvkrBKRhf_XljGllLX.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/firasans/v18/va9E4kDNxMZdWfMOD5VvkYjO.ttf" - }, - { - "family": "Fira Sans Condensed", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOjEADFm8hSaQTFG18FErVhsC9x-tarWZXtqOlQfx9CjA.ttf", - "100italic": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOtEADFm8hSaQTFG18FErVhsC9x-tarUfPVzONUXRpSjJcu.ttf", - "200": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWTnMiMN-cxZblY4.ttf", - "200italic": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVYMJ0dzRehY43EA.ttf", - "300": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWV3PiMN-cxZblY4.ttf", - "300italic": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVBMF0dzRehY43EA.ttf", - "regular": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOhEADFm8hSaQTFG18FErVhsC9x-tarYfHnrMtVbx8.ttf", - "italic": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOjEADFm8hSaQTFG18FErVhsC9x-tarUfPtqOlQfx9CjA.ttf", - "500": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWQXOiMN-cxZblY4.ttf", - "500italic": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVXMB0dzRehY43EA.ttf", - "600": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWSnJiMN-cxZblY4.ttf", - "600italic": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVcMd0dzRehY43EA.ttf", - "700": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWU3IiMN-cxZblY4.ttf", - "700italic": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVFMZ0dzRehY43EA.ttf", - "800": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWVHLiMN-cxZblY4.ttf", - "800italic": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVCMV0dzRehY43EA.ttf", - "900": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWXXKiMN-cxZblY4.ttf", - "900italic": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVLMR0dzRehY43EA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/firasanscondensed/v11/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfDtqA.ttf" - }, - { - "family": "Fira Sans Extra Condensed", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPMcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3Zyuv1WarE9ncg.ttf", - "100italic": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPOcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqW21-ejkp3cn22.ttf", - "200": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3TCPn3-0oEZ-a2Q.ttf", - "200italic": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWd36-pGR7e2SvJQ.ttf", - "300": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3VSMn3-0oEZ-a2Q.ttf", - "300italic": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWE32-pGR7e2SvJQ.ttf", - "regular": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPKcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda5fiku3efvE8.ttf", - "italic": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPMcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fquv1WarE9ncg.ttf", - "500": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3QyNn3-0oEZ-a2Q.ttf", - "500italic": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWS3y-pGR7e2SvJQ.ttf", - "600": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3SCKn3-0oEZ-a2Q.ttf", - "600italic": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWZ3u-pGR7e2SvJQ.ttf", - "700": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3USLn3-0oEZ-a2Q.ttf", - "700italic": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWA3q-pGR7e2SvJQ.ttf", - "800": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3ViIn3-0oEZ-a2Q.ttf", - "800italic": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWH3m-pGR7e2SvJQ.ttf", - "900": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3XyJn3-0oEZ-a2Q.ttf", - "900italic": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWO3i-pGR7e2SvJQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPKcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fmuvw.ttf" - }, - { - "family": "Fjalla One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/fjallaone/v16/Yq6R-LCAWCX3-6Ky7FAFnOZwkxgtUb8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fjallaone/v16/Yq6R-LCAWCX3-6Ky7FAFrOd6lw.ttf" - }, - { - "family": "Fjord One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/fjordone/v22/zOL-4pbEnKBY_9S1jNKr6e5As-FeiQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fjordone/v22/zOL-4pbEnKBY_9S1jNKb6ORE.ttf" - }, - { - "family": "Flamenco", - "variants": [ - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/flamenco/v19/neIPzCehqYguo67ssZ0qNIkyepH9qGsf.ttf", - "regular": "https://fonts.gstatic.com/s/flamenco/v19/neIIzCehqYguo67ssaWGHK06UY30.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/flamenco/v19/neIIzCehqYguo67ssZWHFqk.ttf" - }, - { - "family": "Flavors", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/flavors/v28/FBV2dDrhxqmveJTpbkzlNqkG9UY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/flavors/v28/FBV2dDrhxqmveJTpXk3vMg.ttf" - }, - { - "family": "Fleur De Leah", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/fleurdeleah/v11/AYCNpXX7ftYZWLhv9UmPJTMC5vat4I_Gdq0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fleurdeleah/v11/AYCNpXX7ftYZWLhv9UmPJTMC1ven5A.ttf" - }, - { - "family": "Flow Block", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/flowblock/v15/wlp0gwfPCEB65UmTk-d6-WZlbCBXE_I.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/flowblock/v15/wlp0gwfPCEB65UmTk-d6yWdvaA.ttf" - }, - { - "family": "Flow Circular", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/flowcircular/v15/lJwB-pc4j2F-H8YKuyvfxdZ45ifpWdr2rIg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/flowcircular/v15/lJwB-pc4j2F-H8YKuyvfxdZ41ibjXQ.ttf" - }, - { - "family": "Flow Rounded", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/flowrounded/v15/-zki91mtwsU9qlLiGwD4oQX3oZX-Xup87g.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/flowrounded/v15/-zki91mtwsU9qlLiGwD4oQXHoJ_6.ttf" - }, - { - "family": "Foldit", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/foldit/v8/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XpANmapUYLHkN80.ttf", - "200": "https://fonts.gstatic.com/s/foldit/v8/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XhAMmapUYLHkN80.ttf", - "300": "https://fonts.gstatic.com/s/foldit/v8/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8Xs4MmapUYLHkN80.ttf", - "regular": "https://fonts.gstatic.com/s/foldit/v8/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XpAMmapUYLHkN80.ttf", - "500": "https://fonts.gstatic.com/s/foldit/v8/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XqIMmapUYLHkN80.ttf", - "600": "https://fonts.gstatic.com/s/foldit/v8/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8Xk4LmapUYLHkN80.ttf", - "700": "https://fonts.gstatic.com/s/foldit/v8/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XncLmapUYLHkN80.ttf", - "800": "https://fonts.gstatic.com/s/foldit/v8/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XhALmapUYLHkN80.ttf", - "900": "https://fonts.gstatic.com/s/foldit/v8/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XjkLmapUYLHkN80.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/foldit/v8/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XpAMqateZA.ttf", - "colorCapabilities": [ - "COLRv1" - ] - }, - { - "family": "Fondamento", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/fondamento/v22/4UaHrEJGsxNmFTPDnkaJx63j5pN1MwI.ttf", - "italic": "https://fonts.gstatic.com/s/fondamento/v22/4UaFrEJGsxNmFTPDnkaJ96_p4rFwIwJePw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fondamento/v22/4UaHrEJGsxNmFTPDnkaJ96zp4g.ttf" - }, - { - "family": "Fontdiner Swanky", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/fontdinerswanky/v24/ijwOs4XgRNsiaI5-hcVb4hQgMvCD4uEfKiGvxts.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fontdinerswanky/v24/ijwOs4XgRNsiaI5-hcVb4hQgMvCD0uAVLg.ttf" - }, - { - "family": "Forum", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/forum/v19/6aey4Ky-Vb8Ew_IWMJMa3mnT.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/forum/v19/6aey4Ky-Vb8Ew8IXOpc.ttf" - }, - { - "family": "Fragment Mono", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v6", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/fragmentmono/v6/4iCr6K5wfMRRjxp0DA6-2CLnN4RNh4UI_1U.ttf", - "italic": "https://fonts.gstatic.com/s/fragmentmono/v6/4iC16K5wfMRRjxp0DA6-2CLnB4ZHg6cN71URtQ.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fragmentmono/v6/4iCr6K5wfMRRjxp0DA6-2CLnB4VHgw.ttf" - }, - { - "family": "Francois One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/francoisone/v22/_Xmr-H4zszafZw3A-KPSZutNxgKQu_avAg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/francoisone/v22/_Xmr-H4zszafZw3A-KPSZut9xwiU.ttf" - }, - { - "family": "Frank Ruhl Libre", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/frankruhllibre/v23/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw6bYVqQPxR2EUR_.ttf", - "regular": "https://fonts.gstatic.com/s/frankruhllibre/v23/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw7FYVqQPxR2EUR_.ttf", - "500": "https://fonts.gstatic.com/s/frankruhllibre/v23/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw73YVqQPxR2EUR_.ttf", - "600": "https://fonts.gstatic.com/s/frankruhllibre/v23/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw4bZlqQPxR2EUR_.ttf", - "700": "https://fonts.gstatic.com/s/frankruhllibre/v23/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw4iZlqQPxR2EUR_.ttf", - "800": "https://fonts.gstatic.com/s/frankruhllibre/v23/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw5FZlqQPxR2EUR_.ttf", - "900": "https://fonts.gstatic.com/s/frankruhllibre/v23/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw5sZlqQPxR2EUR_.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/frankruhllibre/v23/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw7FYWqRNRA.ttf" - }, - { - "family": "Fraunces", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v38", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/fraunces/v38/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIctxqjDvTShUtWNg.ttf", - "200": "https://fonts.gstatic.com/s/fraunces/v38/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcNxujDvTShUtWNg.ttf", - "300": "https://fonts.gstatic.com/s/fraunces/v38/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIc6RujDvTShUtWNg.ttf", - "regular": "https://fonts.gstatic.com/s/fraunces/v38/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIctxujDvTShUtWNg.ttf", - "500": "https://fonts.gstatic.com/s/fraunces/v38/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIchRujDvTShUtWNg.ttf", - "600": "https://fonts.gstatic.com/s/fraunces/v38/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcaRyjDvTShUtWNg.ttf", - "700": "https://fonts.gstatic.com/s/fraunces/v38/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcUByjDvTShUtWNg.ttf", - "800": "https://fonts.gstatic.com/s/fraunces/v38/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcNxyjDvTShUtWNg.ttf", - "900": "https://fonts.gstatic.com/s/fraunces/v38/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcHhyjDvTShUtWNg.ttf", - "100italic": "https://fonts.gstatic.com/s/fraunces/v38/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1hLTP7Wp05GNi3k.ttf", - "200italic": "https://fonts.gstatic.com/s/fraunces/v38/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jLTf7Wp05GNi3k.ttf", - "300italic": "https://fonts.gstatic.com/s/fraunces/v38/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1gVTf7Wp05GNi3k.ttf", - "italic": "https://fonts.gstatic.com/s/fraunces/v38/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1hLTf7Wp05GNi3k.ttf", - "500italic": "https://fonts.gstatic.com/s/fraunces/v38/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1h5Tf7Wp05GNi3k.ttf", - "600italic": "https://fonts.gstatic.com/s/fraunces/v38/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1iVSv7Wp05GNi3k.ttf", - "700italic": "https://fonts.gstatic.com/s/fraunces/v38/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1isSv7Wp05GNi3k.ttf", - "800italic": "https://fonts.gstatic.com/s/fraunces/v38/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jLSv7Wp05GNi3k.ttf", - "900italic": "https://fonts.gstatic.com/s/fraunces/v38/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jiSv7Wp05GNi3k.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fraunces/v38/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIctxuTD_7W.ttf" - }, - { - "family": "Freckle Face", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/freckleface/v16/AMOWz4SXrmKHCvXTohxY-YI0U1K2w9lb4g.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/freckleface/v16/AMOWz4SXrmKHCvXTohxY-YIEUliy.ttf" - }, - { - "family": "Fredericka the Great", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/frederickathegreat/v23/9Bt33CxNwt7aOctW2xjbCstzwVKsIBVV-9Skz7Ylch2L.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/frederickathegreat/v23/9Bt33CxNwt7aOctW2xjbCstzwVKsIBVV--SlxbI.ttf" - }, - { - "family": "Fredoka", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/fredoka/v17/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OryLMFuOLlNldbw.ttf", - "regular": "https://fonts.gstatic.com/s/fredoka/v17/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3O8SLMFuOLlNldbw.ttf", - "500": "https://fonts.gstatic.com/s/fredoka/v17/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OwyLMFuOLlNldbw.ttf", - "600": "https://fonts.gstatic.com/s/fredoka/v17/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OLyXMFuOLlNldbw.ttf", - "700": "https://fonts.gstatic.com/s/fredoka/v17/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OFiXMFuOLlNldbw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fredoka/v17/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3O8SL8F-mP.ttf" - }, - { - "family": "Freehand", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v34", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/freehand/v34/cIf-Ma5eqk01VjKTgAmBTmUOmZJk.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/freehand/v34/cIf-Ma5eqk01VjKTgDmARGE.ttf" - }, - { - "family": "Freeman", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/freeman/v1/S6u9w4NGQiLN8nh-ew-FGC_p9dw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/freeman/v1/S6u9w4NGQiLN8nh-Sw6PHA.ttf" - }, - { - "family": "Fresca", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/fresca/v24/6ae94K--SKgCzbM2Gr0W13DKPA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fresca/v24/6ae94K--SKgCzbMGG7cS.ttf" - }, - { - "family": "Frijole", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v15", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/frijole/v15/uU9PCBUR8oakM2BQ7xPb3vyHmlI.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/frijole/v15/uU9PCBUR8oakM2BQ3xLR2g.ttf" - }, - { - "family": "Fruktur", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v28", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/fruktur/v28/SZc53FHsOru5QYsMfz3GkUrS8DI.ttf", - "italic": "https://fonts.gstatic.com/s/fruktur/v28/SZc73FHsOru5QYsMTz_MlWjX4DJXgQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fruktur/v28/SZc53FHsOru5QYsMTzzMlQ.ttf" - }, - { - "family": "Fugaz One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/fugazone/v21/rax_HiWKp9EAITukFslMBBJek0vA8A.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fugazone/v21/rax_HiWKp9EAITukFsl8BRha.ttf" - }, - { - "family": "Fuggles", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/fuggles/v14/k3kQo8UEJOlD1hpOTd7iL0nAMaM.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fuggles/v14/k3kQo8UEJOlD1hpOfd_oKw.ttf" - }, - { - "family": "Funnel Display", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/funneldisplay/v3/B50bF7FGv37QNVWgE0ga--4PbZSRJXrOHcLHLoAYxGPXWMVwIZDKFA.ttf", - "regular": "https://fonts.gstatic.com/s/funneldisplay/v3/B50bF7FGv37QNVWgE0ga--4PbZSRJXrOHcLHLoAYmmPXWMVwIZDKFA.ttf", - "500": "https://fonts.gstatic.com/s/funneldisplay/v3/B50bF7FGv37QNVWgE0ga--4PbZSRJXrOHcLHLoAYqGPXWMVwIZDKFA.ttf", - "600": "https://fonts.gstatic.com/s/funneldisplay/v3/B50bF7FGv37QNVWgE0ga--4PbZSRJXrOHcLHLoAYRGTXWMVwIZDKFA.ttf", - "700": "https://fonts.gstatic.com/s/funneldisplay/v3/B50bF7FGv37QNVWgE0ga--4PbZSRJXrOHcLHLoAYfWTXWMVwIZDKFA.ttf", - "800": "https://fonts.gstatic.com/s/funneldisplay/v3/B50bF7FGv37QNVWgE0ga--4PbZSRJXrOHcLHLoAYGmTXWMVwIZDKFA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/funneldisplay/v3/B50bF7FGv37QNVWgE0ga--4PbZSRJXrOHcLHLoAYmmPnWc90.ttf" - }, - { - "family": "Funnel Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/funnelsans/v3/OpNfno8Dg9bX6Bsp3Wq69RB-VukSVv3aISFAy3mEfm9NnDyL7w.ttf", - "regular": "https://fonts.gstatic.com/s/funnelsans/v3/OpNfno8Dg9bX6Bsp3Wq69RB-VukSVv3aISFAlXmEfm9NnDyL7w.ttf", - "500": "https://fonts.gstatic.com/s/funnelsans/v3/OpNfno8Dg9bX6Bsp3Wq69RB-VukSVv3aISFAp3mEfm9NnDyL7w.ttf", - "600": "https://fonts.gstatic.com/s/funnelsans/v3/OpNfno8Dg9bX6Bsp3Wq69RB-VukSVv3aISFAS36Efm9NnDyL7w.ttf", - "700": "https://fonts.gstatic.com/s/funnelsans/v3/OpNfno8Dg9bX6Bsp3Wq69RB-VukSVv3aISFAcn6Efm9NnDyL7w.ttf", - "800": "https://fonts.gstatic.com/s/funnelsans/v3/OpNfno8Dg9bX6Bsp3Wq69RB-VukSVv3aISFAFX6Efm9NnDyL7w.ttf", - "300italic": "https://fonts.gstatic.com/s/funnelsans/v3/OpNZno8Dg9bX6Bsp3Wq69Tp3ZBbKP5ZAjyZVXToyPWVJvjmb76XZ.ttf", - "italic": "https://fonts.gstatic.com/s/funnelsans/v3/OpNZno8Dg9bX6Bsp3Wq69Tp3ZBbKP5ZAjyZVXTpsPWVJvjmb76XZ.ttf", - "500italic": "https://fonts.gstatic.com/s/funnelsans/v3/OpNZno8Dg9bX6Bsp3Wq69Tp3ZBbKP5ZAjyZVXTpePWVJvjmb76XZ.ttf", - "600italic": "https://fonts.gstatic.com/s/funnelsans/v3/OpNZno8Dg9bX6Bsp3Wq69Tp3ZBbKP5ZAjyZVXTqyOmVJvjmb76XZ.ttf", - "700italic": "https://fonts.gstatic.com/s/funnelsans/v3/OpNZno8Dg9bX6Bsp3Wq69Tp3ZBbKP5ZAjyZVXTqLOmVJvjmb76XZ.ttf", - "800italic": "https://fonts.gstatic.com/s/funnelsans/v3/OpNZno8Dg9bX6Bsp3Wq69Tp3ZBbKP5ZAjyZVXTrsOmVJvjmb76XZ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/funnelsans/v3/OpNfno8Dg9bX6Bsp3Wq69RB-VukSVv3aISFAlXm0f2VJ.ttf" - }, - { - "family": "Fustat", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/fustat/v4/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCMQQRryztWo_3fk.ttf", - "300": "https://fonts.gstatic.com/s/fustat/v4/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCBoQRryztWo_3fk.ttf", - "regular": "https://fonts.gstatic.com/s/fustat/v4/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCEQQRryztWo_3fk.ttf", - "500": "https://fonts.gstatic.com/s/fustat/v4/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCHYQRryztWo_3fk.ttf", - "600": "https://fonts.gstatic.com/s/fustat/v4/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCJoXRryztWo_3fk.ttf", - "700": "https://fonts.gstatic.com/s/fustat/v4/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCKMXRryztWo_3fk.ttf", - "800": "https://fonts.gstatic.com/s/fustat/v4/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCMQXRryztWo_3fk.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fustat/v4/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCEQQdr25sQ.ttf" - }, - { - "family": "Fuzzy Bubbles", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/fuzzybubbles/v9/6qLGKZMbrgv9pwtjPEVNV0F2NnP5Zxsreko.ttf", - "700": "https://fonts.gstatic.com/s/fuzzybubbles/v9/6qLbKZMbrgv9pwtjPEVNV0F2Ds_WQxMAZkM1pn4.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/fuzzybubbles/v9/6qLGKZMbrgv9pwtjPEVNV0F2BnLzYw.ttf" - }, - { - "family": "GFS Didot", - "variants": [ - "regular" - ], - "subsets": [ - "greek", - "greek-ext", - "latin", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/gfsdidot/v18/Jqzh5TybZ9vZMWFssvwiF-fGFSCGAA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gfsdidot/v18/Jqzh5TybZ9vZMWFssvwSFu3C.ttf" - }, - { - "family": "GFS Neohellenic", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "greek", - "greek-ext", - "latin", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/gfsneohellenic/v27/8QIRdiDOrfiq0b7R8O1Iw9WLcY5TLahP46UDUw.ttf", - "italic": "https://fonts.gstatic.com/s/gfsneohellenic/v27/8QITdiDOrfiq0b7R8O1Iw9WLcY5jL6JLwaATU91X.ttf", - "700": "https://fonts.gstatic.com/s/gfsneohellenic/v27/8QIUdiDOrfiq0b7R8O1Iw9WLcY5rkYdr644fWsRO9w.ttf", - "700italic": "https://fonts.gstatic.com/s/gfsneohellenic/v27/8QIWdiDOrfiq0b7R8O1Iw9WLcY5jL5r37oQbeMFe985V.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gfsneohellenic/v27/8QIRdiDOrfiq0b7R8O1Iw9WLcY5jLKJL.ttf" - }, - { - "family": "Ga Maamli", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/gamaamli/v3/uU9NCBsQ4c-DPW1Yo3rR2t6CilKOdQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gamaamli/v3/uU9NCBsQ4c-DPW1Yo3rh29SG.ttf" - }, - { - "family": "Gabarito", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v9", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/gabarito/v9/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj248K0FgItq6bFIg.ttf", - "500": "https://fonts.gstatic.com/s/gabarito/v9/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj20cK0FgItq6bFIg.ttf", - "600": "https://fonts.gstatic.com/s/gabarito/v9/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj2PcW0FgItq6bFIg.ttf", - "700": "https://fonts.gstatic.com/s/gabarito/v9/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj2BMW0FgItq6bFIg.ttf", - "800": "https://fonts.gstatic.com/s/gabarito/v9/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj2Y8W0FgItq6bFIg.ttf", - "900": "https://fonts.gstatic.com/s/gabarito/v9/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj2SsW0FgItq6bFIg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gabarito/v9/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj248KEFwgp.ttf" - }, - { - "family": "Gabriela", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/gabriela/v23/qkBWXvsO6sreR8E-b_m-zrpHmRzC.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gabriela/v23/qkBWXvsO6sreR8E-b8m_xL4.ttf" - }, - { - "family": "Gaegu", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/gaegu/v23/TuGSUVB6Up9NU57nifw74sdtBk0x.ttf", - "regular": "https://fonts.gstatic.com/s/gaegu/v23/TuGfUVB6Up9NU6ZLodgzydtk.ttf", - "700": "https://fonts.gstatic.com/s/gaegu/v23/TuGSUVB6Up9NU573jvw74sdtBk0x.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gaegu/v23/TuGfUVB6Up9NU5ZKq9w.ttf" - }, - { - "family": "Gafata", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/gafata/v22/XRXV3I6Cn0VJKon4MuyAbsrVcA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gafata/v22/XRXV3I6Cn0VJKonIM-aE.ttf" - }, - { - "family": "Gajraj One", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v7", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/gajrajone/v7/1cX2aUDCDpXsuWVb1jIjr1GqhcitzeM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gajrajone/v7/1cX2aUDCDpXsuWVb1jIjn1CggQ.ttf" - }, - { - "family": "Galada", - "variants": [ - "regular" - ], - "subsets": [ - "bengali", - "latin" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/galada/v21/H4cmBXyGmcjXlUX-8iw-4Lqggw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/galada/v21/H4cmBXyGmcjXlUXO8yY6.ttf" - }, - { - "family": "Galdeano", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/galdeano/v23/uU9MCBoQ4YOqOW1boDPx8PCOg0uX.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/galdeano/v23/uU9MCBoQ4YOqOW1boAPw-vQ.ttf" - }, - { - "family": "Galindo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/galindo/v26/HI_KiYMeLqVKqwyuQ5HiRp-dhpQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/galindo/v26/HI_KiYMeLqVKqwyuc5DoQg.ttf" - }, - { - "family": "Gamja Flower", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v26", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/gamjaflower/v26/6NUR8FiKJg-Pa0rM6uN40Z4kyf9Fdty2ew.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gamjaflower/v26/6NUR8FiKJg-Pa0rM6uN40Z4UyPVB.ttf" - }, - { - "family": "Gantari", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/gantari/v4/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0gOz3wa5GD2qnm.ttf", - "200": "https://fonts.gstatic.com/s/gantari/v4/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2gOj3wa5GD2qnm.ttf", - "300": "https://fonts.gstatic.com/s/gantari/v4/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g1-Oj3wa5GD2qnm.ttf", - "regular": "https://fonts.gstatic.com/s/gantari/v4/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0gOj3wa5GD2qnm.ttf", - "500": "https://fonts.gstatic.com/s/gantari/v4/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0SOj3wa5GD2qnm.ttf", - "600": "https://fonts.gstatic.com/s/gantari/v4/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g3-PT3wa5GD2qnm.ttf", - "700": "https://fonts.gstatic.com/s/gantari/v4/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g3HPT3wa5GD2qnm.ttf", - "800": "https://fonts.gstatic.com/s/gantari/v4/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2gPT3wa5GD2qnm.ttf", - "900": "https://fonts.gstatic.com/s/gantari/v4/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2JPT3wa5GD2qnm.ttf", - "100italic": "https://fonts.gstatic.com/s/gantari/v4/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoedWyYZWh37nmpWc.ttf", - "200italic": "https://fonts.gstatic.com/s/gantari/v4/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeVWzYZWh37nmpWc.ttf", - "300italic": "https://fonts.gstatic.com/s/gantari/v4/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeYuzYZWh37nmpWc.ttf", - "italic": "https://fonts.gstatic.com/s/gantari/v4/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoedWzYZWh37nmpWc.ttf", - "500italic": "https://fonts.gstatic.com/s/gantari/v4/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeeezYZWh37nmpWc.ttf", - "600italic": "https://fonts.gstatic.com/s/gantari/v4/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeQu0YZWh37nmpWc.ttf", - "700italic": "https://fonts.gstatic.com/s/gantari/v4/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeTK0YZWh37nmpWc.ttf", - "800italic": "https://fonts.gstatic.com/s/gantari/v4/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeVW0YZWh37nmpWc.ttf", - "900italic": "https://fonts.gstatic.com/s/gantari/v4/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeXy0YZWh37nmpWc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gantari/v4/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0gOg3xYZU.ttf" - }, - { - "family": "Gasoek One", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/gasoekone/v3/EJRTQgQ_UMUKvDgnlX80zrq_cyb-vco.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gasoekone/v3/EJRTQgQ_UMUKvDgnlX80_ru1dw.ttf" - }, - { - "family": "Gayathri", - "variants": [ - "100", - "regular", - "700" - ], - "subsets": [ - "latin", - "malayalam" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/gayathri/v20/MCoWzAb429DbBilWLLhc-pvSA_gA2W8.ttf", - "regular": "https://fonts.gstatic.com/s/gayathri/v20/MCoQzAb429DbBilWLIA48J_wBugA.ttf", - "700": "https://fonts.gstatic.com/s/gayathri/v20/MCoXzAb429DbBilWLLiE37v4LfQJwHbn.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gayathri/v20/MCoQzAb429DbBilWLLA5-ps.ttf" - }, - { - "family": "Geist", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/geist/v4/gyBhhwUxId8gMGYQMKR3pzfaWI_RnOI4nZPby1QNtA.ttf", - "200": "https://fonts.gstatic.com/s/geist/v4/gyBhhwUxId8gMGYQMKR3pzfaWI_RHOM4nZPby1QNtA.ttf", - "300": "https://fonts.gstatic.com/s/geist/v4/gyBhhwUxId8gMGYQMKR3pzfaWI_RwuM4nZPby1QNtA.ttf", - "regular": "https://fonts.gstatic.com/s/geist/v4/gyBhhwUxId8gMGYQMKR3pzfaWI_RnOM4nZPby1QNtA.ttf", - "500": "https://fonts.gstatic.com/s/geist/v4/gyBhhwUxId8gMGYQMKR3pzfaWI_RruM4nZPby1QNtA.ttf", - "600": "https://fonts.gstatic.com/s/geist/v4/gyBhhwUxId8gMGYQMKR3pzfaWI_RQuQ4nZPby1QNtA.ttf", - "700": "https://fonts.gstatic.com/s/geist/v4/gyBhhwUxId8gMGYQMKR3pzfaWI_Re-Q4nZPby1QNtA.ttf", - "800": "https://fonts.gstatic.com/s/geist/v4/gyBhhwUxId8gMGYQMKR3pzfaWI_RHOQ4nZPby1QNtA.ttf", - "900": "https://fonts.gstatic.com/s/geist/v4/gyBhhwUxId8gMGYQMKR3pzfaWI_RNeQ4nZPby1QNtA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/geist/v4/gyBhhwUxId8gMGYQMKR3pzfaWI_RnOMInJnf.ttf" - }, - { - "family": "Geist Mono", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/geistmono/v4/or3yQ6H-1_WfwkMZI_qYPLs1a-t7PU0AbeE9KZ5T7ihaO_CS.ttf", - "200": "https://fonts.gstatic.com/s/geistmono/v4/or3yQ6H-1_WfwkMZI_qYPLs1a-t7PU0AbeG9KJ5T7ihaO_CS.ttf", - "300": "https://fonts.gstatic.com/s/geistmono/v4/or3yQ6H-1_WfwkMZI_qYPLs1a-t7PU0AbeFjKJ5T7ihaO_CS.ttf", - "regular": "https://fonts.gstatic.com/s/geistmono/v4/or3yQ6H-1_WfwkMZI_qYPLs1a-t7PU0AbeE9KJ5T7ihaO_CS.ttf", - "500": "https://fonts.gstatic.com/s/geistmono/v4/or3yQ6H-1_WfwkMZI_qYPLs1a-t7PU0AbeEPKJ5T7ihaO_CS.ttf", - "600": "https://fonts.gstatic.com/s/geistmono/v4/or3yQ6H-1_WfwkMZI_qYPLs1a-t7PU0AbeHjL55T7ihaO_CS.ttf", - "700": "https://fonts.gstatic.com/s/geistmono/v4/or3yQ6H-1_WfwkMZI_qYPLs1a-t7PU0AbeHaL55T7ihaO_CS.ttf", - "800": "https://fonts.gstatic.com/s/geistmono/v4/or3yQ6H-1_WfwkMZI_qYPLs1a-t7PU0AbeG9L55T7ihaO_CS.ttf", - "900": "https://fonts.gstatic.com/s/geistmono/v4/or3yQ6H-1_WfwkMZI_qYPLs1a-t7PU0AbeGUL55T7ihaO_CS.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/geistmono/v4/or3yQ6H-1_WfwkMZI_qYPLs1a-t7PU0AbeE9KK5S5Cw.ttf" - }, - { - "family": "Gelasio", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/gelasio/v14/cIfiMaFfvUQxTTqS3iKJkLGbI41wQL8Ilycs-TDO8Aba.ttf", - "500": "https://fonts.gstatic.com/s/gelasio/v14/cIfiMaFfvUQxTTqS3iKJkLGbI41wQL86lycs-TDO8Aba.ttf", - "600": "https://fonts.gstatic.com/s/gelasio/v14/cIfiMaFfvUQxTTqS3iKJkLGbI41wQL_WkCcs-TDO8Aba.ttf", - "700": "https://fonts.gstatic.com/s/gelasio/v14/cIfiMaFfvUQxTTqS3iKJkLGbI41wQL_vkCcs-TDO8Aba.ttf", - "italic": "https://fonts.gstatic.com/s/gelasio/v14/cIfsMaFfvUQxTTqS9Cu7b2nySBfeR6rA1M9v8zTs9RbanYs.ttf", - "500italic": "https://fonts.gstatic.com/s/gelasio/v14/cIfsMaFfvUQxTTqS9Cu7b2nySBfeR6rA1P1v8zTs9RbanYs.ttf", - "600italic": "https://fonts.gstatic.com/s/gelasio/v14/cIfsMaFfvUQxTTqS9Cu7b2nySBfeR6rA1BFo8zTs9RbanYs.ttf", - "700italic": "https://fonts.gstatic.com/s/gelasio/v14/cIfsMaFfvUQxTTqS9Cu7b2nySBfeR6rA1Cho8zTs9RbanYs.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gelasio/v14/cIfiMaFfvUQxTTqS3iKJkLGbI41wQL8Ilxct8zQ.ttf" - }, - { - "family": "Gemunu Libre", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "sinhala" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/gemunulibre/v18/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp05iJPvSLeMXPIWA.ttf", - "300": "https://fonts.gstatic.com/s/gemunulibre/v18/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp00aJPvSLeMXPIWA.ttf", - "regular": "https://fonts.gstatic.com/s/gemunulibre/v18/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0xiJPvSLeMXPIWA.ttf", - "500": "https://fonts.gstatic.com/s/gemunulibre/v18/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0yqJPvSLeMXPIWA.ttf", - "600": "https://fonts.gstatic.com/s/gemunulibre/v18/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp08aOPvSLeMXPIWA.ttf", - "700": "https://fonts.gstatic.com/s/gemunulibre/v18/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0_-OPvSLeMXPIWA.ttf", - "800": "https://fonts.gstatic.com/s/gemunulibre/v18/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp05iOPvSLeMXPIWA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gemunulibre/v18/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0xiJDvWBfA.ttf" - }, - { - "family": "Genos", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cherokee", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/genos/v16/SlGNmQqPqpUOYTYjacb0Hc91fTwVqknorUK6K7ZsAg.ttf", - "200": "https://fonts.gstatic.com/s/genos/v16/SlGNmQqPqpUOYTYjacb0Hc91fTwVKkjorUK6K7ZsAg.ttf", - "300": "https://fonts.gstatic.com/s/genos/v16/SlGNmQqPqpUOYTYjacb0Hc91fTwV9EjorUK6K7ZsAg.ttf", - "regular": "https://fonts.gstatic.com/s/genos/v16/SlGNmQqPqpUOYTYjacb0Hc91fTwVqkjorUK6K7ZsAg.ttf", - "500": "https://fonts.gstatic.com/s/genos/v16/SlGNmQqPqpUOYTYjacb0Hc91fTwVmEjorUK6K7ZsAg.ttf", - "600": "https://fonts.gstatic.com/s/genos/v16/SlGNmQqPqpUOYTYjacb0Hc91fTwVdE_orUK6K7ZsAg.ttf", - "700": "https://fonts.gstatic.com/s/genos/v16/SlGNmQqPqpUOYTYjacb0Hc91fTwVTU_orUK6K7ZsAg.ttf", - "800": "https://fonts.gstatic.com/s/genos/v16/SlGNmQqPqpUOYTYjacb0Hc91fTwVKk_orUK6K7ZsAg.ttf", - "900": "https://fonts.gstatic.com/s/genos/v16/SlGNmQqPqpUOYTYjacb0Hc91fTwVA0_orUK6K7ZsAg.ttf", - "100italic": "https://fonts.gstatic.com/s/genos/v16/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsA70i-CbN8Ard7.ttf", - "200italic": "https://fonts.gstatic.com/s/genos/v16/SlGPmQqPqpUOYRwqWzksdKTv0zsAYguA7ki-CbN8Ard7.ttf", - "300italic": "https://fonts.gstatic.com/s/genos/v16/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgte7ki-CbN8Ard7.ttf", - "italic": "https://fonts.gstatic.com/s/genos/v16/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsA7ki-CbN8Ard7.ttf", - "500italic": "https://fonts.gstatic.com/s/genos/v16/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsy7ki-CbN8Ard7.ttf", - "600italic": "https://fonts.gstatic.com/s/genos/v16/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgve6Ui-CbN8Ard7.ttf", - "700italic": "https://fonts.gstatic.com/s/genos/v16/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgvn6Ui-CbN8Ard7.ttf", - "800italic": "https://fonts.gstatic.com/s/genos/v16/SlGPmQqPqpUOYRwqWzksdKTv0zsAYguA6Ui-CbN8Ard7.ttf", - "900italic": "https://fonts.gstatic.com/s/genos/v16/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgup6Ui-CbN8Ard7.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/genos/v16/SlGNmQqPqpUOYTYjacb0Hc91fTwVqkjYrEi-.ttf" - }, - { - "family": "Gentium Book Plus", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFL2-RHBgUK5fbjKxRpbBtJPyRpofKfdbLOrdPV.ttf", - "italic": "https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFN2-RHBgUK5fbjKxRpbBtJPyRpocKdf7bsqMPVZb4.ttf", - "700": "https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFO2-RHBgUK5fbjKxRpbBtJPyRpocojWpbGhs_cfKe1.ttf", - "700italic": "https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFA2-RHBgUK5fbjKxRpbBtJPyRpocKdRwrDjMv-ebe1Els.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFL2-RHBgUK5fbjKxRpbBtJPyRpocKef7Y.ttf" - }, - { - "family": "Gentium Plus", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/gentiumplus/v2/Iurd6Ytw-oSPaZ00r2bNe8VpjJtM6G0t9w.ttf", - "italic": "https://fonts.gstatic.com/s/gentiumplus/v2/IurD6Ytw-oSPaZ00r2bNe8VZjpFIymg9957e.ttf", - "700": "https://fonts.gstatic.com/s/gentiumplus/v2/IurC6Ytw-oSPaZ00r2bNe8VRMLRo4EYx_ofHsw.ttf", - "700italic": "https://fonts.gstatic.com/s/gentiumplus/v2/IurA6Ytw-oSPaZ00r2bNe8VZjqn05Uw13ILXs-h6.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gentiumplus/v2/Iurd6Ytw-oSPaZ00r2bNe8VZjZFI.ttf" - }, - { - "family": "Geo", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/geo/v23/CSRz4zRZlufVL3BmQjlCbQ.ttf", - "italic": "https://fonts.gstatic.com/s/geo/v23/CSRx4zRZluflLXpiYDxSbf8r.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/geo/v23/CSRz4zRZluflLnpi.ttf" - }, - { - "family": "Geologica", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/geologica/v5/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDx_qQ-MYAXWnqFs.ttf", - "200": "https://fonts.gstatic.com/s/geologica/v5/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD5_rQ-MYAXWnqFs.ttf", - "300": "https://fonts.gstatic.com/s/geologica/v5/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD0HrQ-MYAXWnqFs.ttf", - "regular": "https://fonts.gstatic.com/s/geologica/v5/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDx_rQ-MYAXWnqFs.ttf", - "500": "https://fonts.gstatic.com/s/geologica/v5/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDy3rQ-MYAXWnqFs.ttf", - "600": "https://fonts.gstatic.com/s/geologica/v5/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD8HsQ-MYAXWnqFs.ttf", - "700": "https://fonts.gstatic.com/s/geologica/v5/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD_jsQ-MYAXWnqFs.ttf", - "800": "https://fonts.gstatic.com/s/geologica/v5/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD5_sQ-MYAXWnqFs.ttf", - "900": "https://fonts.gstatic.com/s/geologica/v5/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD7bsQ-MYAXWnqFs.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/geologica/v5/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDx_rc-ISBQ.ttf" - }, - { - "family": "Georama", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/georama/v15/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5GvktmQsL5_tgbg.ttf", - "200": "https://fonts.gstatic.com/s/georama/v15/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5mvgtmQsL5_tgbg.ttf", - "300": "https://fonts.gstatic.com/s/georama/v15/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5RPgtmQsL5_tgbg.ttf", - "regular": "https://fonts.gstatic.com/s/georama/v15/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5GvgtmQsL5_tgbg.ttf", - "500": "https://fonts.gstatic.com/s/georama/v15/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5KPgtmQsL5_tgbg.ttf", - "600": "https://fonts.gstatic.com/s/georama/v15/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5xP8tmQsL5_tgbg.ttf", - "700": "https://fonts.gstatic.com/s/georama/v15/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5_f8tmQsL5_tgbg.ttf", - "800": "https://fonts.gstatic.com/s/georama/v15/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5mv8tmQsL5_tgbg.ttf", - "900": "https://fonts.gstatic.com/s/georama/v15/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5s_8tmQsL5_tgbg.ttf", - "100italic": "https://fonts.gstatic.com/s/georama/v15/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rvF2wEPxf5wbh3T.ttf", - "200italic": "https://fonts.gstatic.com/s/georama/v15/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rtF2gEPxf5wbh3T.ttf", - "300italic": "https://fonts.gstatic.com/s/georama/v15/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rub2gEPxf5wbh3T.ttf", - "italic": "https://fonts.gstatic.com/s/georama/v15/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rvF2gEPxf5wbh3T.ttf", - "500italic": "https://fonts.gstatic.com/s/georama/v15/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rv32gEPxf5wbh3T.ttf", - "600italic": "https://fonts.gstatic.com/s/georama/v15/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rsb3QEPxf5wbh3T.ttf", - "700italic": "https://fonts.gstatic.com/s/georama/v15/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rsi3QEPxf5wbh3T.ttf", - "800italic": "https://fonts.gstatic.com/s/georama/v15/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rtF3QEPxf5wbh3T.ttf", - "900italic": "https://fonts.gstatic.com/s/georama/v15/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rts3QEPxf5wbh3T.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/georama/v15/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5GvgdmAEP.ttf" - }, - { - "family": "Geostar", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v27", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/geostar/v27/sykz-yx4n701VLOftSq9-trEvlQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/geostar/v27/sykz-yx4n701VLOfhSu3_g.ttf" - }, - { - "family": "Geostar Fill", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v27", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/geostarfill/v27/AMOWz4SWuWiXFfjEohxQ9os0U1K2w9lb4g.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/geostarfill/v27/AMOWz4SWuWiXFfjEohxQ9osEUliy.ttf" - }, - { - "family": "Germania One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/germaniaone/v21/Fh4yPjrqIyv2ucM2qzBjeS3ezAJONau6ew.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/germaniaone/v21/Fh4yPjrqIyv2ucM2qzBjeS3uzQhK.ttf" - }, - { - "family": "Gideon Roman", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/gideonroman/v13/e3tmeuGrVOys8sxzZgWlmXoge0PWovdU4w.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gideonroman/v13/e3tmeuGrVOys8sxzZgWlmXoQeknS.ttf" - }, - { - "family": "Gidole", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/gidole/v24/sZlFdR6O8zVVEiMaCJtWS6EPcA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gidole/v24/sZlFdR6O8zVVEiMqCZFS.ttf" - }, - { - "family": "Gidugu", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "telugu" - ], - "version": "v28", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/gidugu/v28/L0x8DFMkk1Uf6w3RvPCmRSlUig.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gidugu/v28/L0x8DFMkk1Uf6w3hvfqi.ttf" - }, - { - "family": "Gilda Display", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/gildadisplay/v20/t5tmIRoYMoaYG0WEOh7HwMeR7TnFrpOHYh4.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gildadisplay/v20/t5tmIRoYMoaYG0WEOh7HwMeR3TjPqg.ttf" - }, - { - "family": "Girassol", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/girassol/v24/JTUUjIo_-DK48laaNC9Nz2pJzxbi.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/girassol/v24/JTUUjIo_-DK48laaNB9MxW4.ttf" - }, - { - "family": "Give You Glory", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/giveyouglory/v17/8QIQdiHOgt3vv4LR7ahjw9-XYc1zB4ZD6rwa.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/giveyouglory/v17/8QIQdiHOgt3vv4LR7ahjw9-XYf1yDYI.ttf" - }, - { - "family": "Glass Antiqua", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/glassantiqua/v26/xfu30Wr0Wn3NOQM2piC0uXOjnL_wN6fRUkY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/glassantiqua/v26/xfu30Wr0Wn3NOQM2piC0uXOjrL76Mw.ttf" - }, - { - "family": "Glegoo", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/glegoo/v17/_Xmt-HQyrTKWaw2Ji6mZAI91xw.ttf", - "700": "https://fonts.gstatic.com/s/glegoo/v17/_Xmu-HQyrTKWaw2xN4a9CKRpzimMsg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/glegoo/v17/_Xmt-HQyrTKWaw25iqOd.ttf" - }, - { - "family": "Gloock", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/gloock/v8/Iurb6YFw84WUY4N5jxylBrdRjQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gloock/v8/Iurb6YFw84WUY4NJjhah.ttf" - }, - { - "family": "Gloria Hallelujah", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/gloriahallelujah/v24/LYjYdHv3kUk9BMV96EIswT9DIbW-MLSy3TKEvkCF.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gloriahallelujah/v24/LYjYdHv3kUk9BMV96EIswT9DIbW-MISz1zY.ttf" - }, - { - "family": "Glory", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/glory/v18/q5uasoi9Lf1w5t3Est24nq9blIRQwIiDpn-dDi9EOQ.ttf", - "200": "https://fonts.gstatic.com/s/glory/v18/q5uasoi9Lf1w5t3Est24nq9blIRQQImDpn-dDi9EOQ.ttf", - "300": "https://fonts.gstatic.com/s/glory/v18/q5uasoi9Lf1w5t3Est24nq9blIRQnomDpn-dDi9EOQ.ttf", - "regular": "https://fonts.gstatic.com/s/glory/v18/q5uasoi9Lf1w5t3Est24nq9blIRQwImDpn-dDi9EOQ.ttf", - "500": "https://fonts.gstatic.com/s/glory/v18/q5uasoi9Lf1w5t3Est24nq9blIRQ8omDpn-dDi9EOQ.ttf", - "600": "https://fonts.gstatic.com/s/glory/v18/q5uasoi9Lf1w5t3Est24nq9blIRQHo6Dpn-dDi9EOQ.ttf", - "700": "https://fonts.gstatic.com/s/glory/v18/q5uasoi9Lf1w5t3Est24nq9blIRQJ46Dpn-dDi9EOQ.ttf", - "800": "https://fonts.gstatic.com/s/glory/v18/q5uasoi9Lf1w5t3Est24nq9blIRQQI6Dpn-dDi9EOQ.ttf", - "100italic": "https://fonts.gstatic.com/s/glory/v18/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpr5HWZLCpUOaM6.ttf", - "200italic": "https://fonts.gstatic.com/s/glory/v18/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMrr5XWZLCpUOaM6.ttf", - "300italic": "https://fonts.gstatic.com/s/glory/v18/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMo15XWZLCpUOaM6.ttf", - "italic": "https://fonts.gstatic.com/s/glory/v18/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpr5XWZLCpUOaM6.ttf", - "500italic": "https://fonts.gstatic.com/s/glory/v18/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpZ5XWZLCpUOaM6.ttf", - "600italic": "https://fonts.gstatic.com/s/glory/v18/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMq14nWZLCpUOaM6.ttf", - "700italic": "https://fonts.gstatic.com/s/glory/v18/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMqM4nWZLCpUOaM6.ttf", - "800italic": "https://fonts.gstatic.com/s/glory/v18/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMrr4nWZLCpUOaM6.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/glory/v18/q5uasoi9Lf1w5t3Est24nq9blIRQwImzp3WZ.ttf" - }, - { - "family": "Gluten", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/gluten/v18/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vb7B1Luni7ciJh.ttf", - "200": "https://fonts.gstatic.com/s/gluten/v18/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xb7R1Luni7ciJh.ttf", - "300": "https://fonts.gstatic.com/s/gluten/v18/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8UF7R1Luni7ciJh.ttf", - "regular": "https://fonts.gstatic.com/s/gluten/v18/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vb7R1Luni7ciJh.ttf", - "500": "https://fonts.gstatic.com/s/gluten/v18/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vp7R1Luni7ciJh.ttf", - "600": "https://fonts.gstatic.com/s/gluten/v18/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8WF6h1Luni7ciJh.ttf", - "700": "https://fonts.gstatic.com/s/gluten/v18/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8W86h1Luni7ciJh.ttf", - "800": "https://fonts.gstatic.com/s/gluten/v18/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xb6h1Luni7ciJh.ttf", - "900": "https://fonts.gstatic.com/s/gluten/v18/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xy6h1Luni7ciJh.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gluten/v18/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vb7S1KsHw.ttf" - }, - { - "family": "Goblin One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v28", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/goblinone/v28/CSR64z1ZnOqZRjRCBVY_TOcATNt_pOU.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/goblinone/v28/CSR64z1ZnOqZRjRCBVY_fOYKSA.ttf" - }, - { - "family": "Gochi Hand", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v25", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/gochihand/v25/hES06XlsOjtJsgCkx1PkTo71-n0nXWA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gochihand/v25/hES06XlsOjtJsgCkx1Pkfo___g.ttf" - }, - { - "family": "Goldman", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/goldman/v21/pe0uMIWbN4JFplR2LDJ4Bt-7G98.ttf", - "700": "https://fonts.gstatic.com/s/goldman/v21/pe0rMIWbN4JFplR2FI5XIteQB9Zra1U.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/goldman/v21/pe0uMIWbN4JFplR2HDNyAg.ttf" - }, - { - "family": "Golos Text", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v7", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/golostext/v7/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plVRRQ5cEr8zXcyx.ttf", - "500": "https://fonts.gstatic.com/s/golostext/v7/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plVjRQ5cEr8zXcyx.ttf", - "600": "https://fonts.gstatic.com/s/golostext/v7/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plWPQg5cEr8zXcyx.ttf", - "700": "https://fonts.gstatic.com/s/golostext/v7/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plW2Qg5cEr8zXcyx.ttf", - "800": "https://fonts.gstatic.com/s/golostext/v7/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plXRQg5cEr8zXcyx.ttf", - "900": "https://fonts.gstatic.com/s/golostext/v7/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plX4Qg5cEr8zXcyx.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/golostext/v7/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plVRRT5dGLs.ttf" - }, - { - "family": "Google Sans Code", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "adlam", - "canadian-aboriginal", - "cherokee", - "latin", - "latin-ext", - "math", - "old-permic", - "symbols", - "symbols2", - "syriac", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/googlesanscode/v14/pxiSyogzv91QhV44Z_GQBHsGf5PuckJMXr41HfVaiXE_ggF--rWcgmBz.ttf", - "regular": "https://fonts.gstatic.com/s/googlesanscode/v14/pxiSyogzv91QhV44Z_GQBHsGf5PuckJMXr41HfVaiXFhggF--rWcgmBz.ttf", - "500": "https://fonts.gstatic.com/s/googlesanscode/v14/pxiSyogzv91QhV44Z_GQBHsGf5PuckJMXr41HfVaiXFTggF--rWcgmBz.ttf", - "600": "https://fonts.gstatic.com/s/googlesanscode/v14/pxiSyogzv91QhV44Z_GQBHsGf5PuckJMXr41HfVaiXG_hQF--rWcgmBz.ttf", - "700": "https://fonts.gstatic.com/s/googlesanscode/v14/pxiSyogzv91QhV44Z_GQBHsGf5PuckJMXr41HfVaiXGGhQF--rWcgmBz.ttf", - "800": "https://fonts.gstatic.com/s/googlesanscode/v14/pxiSyogzv91QhV44Z_GQBHsGf5PuckJMXr41HfVaiXHhhQF--rWcgmBz.ttf", - "300italic": "https://fonts.gstatic.com/s/googlesanscode/v14/pxisyogzv91QhV44Z_GQBHsGf5PuWEt-oWZcdm_0jmSpwbc98LG-h3BzvSU.ttf", - "italic": "https://fonts.gstatic.com/s/googlesanscode/v14/pxisyogzv91QhV44Z_GQBHsGf5PuWEt-oWZcdm_0jmSpwek98LG-h3BzvSU.ttf", - "500italic": "https://fonts.gstatic.com/s/googlesanscode/v14/pxisyogzv91QhV44Z_GQBHsGf5PuWEt-oWZcdm_0jmSpwds98LG-h3BzvSU.ttf", - "600italic": "https://fonts.gstatic.com/s/googlesanscode/v14/pxisyogzv91QhV44Z_GQBHsGf5PuWEt-oWZcdm_0jmSpwTc68LG-h3BzvSU.ttf", - "700italic": "https://fonts.gstatic.com/s/googlesanscode/v14/pxisyogzv91QhV44Z_GQBHsGf5PuWEt-oWZcdm_0jmSpwQ468LG-h3BzvSU.ttf", - "800italic": "https://fonts.gstatic.com/s/googlesanscode/v14/pxisyogzv91QhV44Z_GQBHsGf5PuWEt-oWZcdm_0jmSpwWk68LG-h3BzvSU.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/googlesanscode/v14/pxiSyogzv91QhV44Z_GQBHsGf5PuckJMXr41HfVaiXFhgjF_8LE.ttf" - }, - { - "family": "Gorditas", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/gorditas/v24/ll8_K2aTVD26DsPEtQDoDa4AlxYb.ttf", - "700": "https://fonts.gstatic.com/s/gorditas/v24/ll84K2aTVD26DsPEtThUIooIvAoShA1i.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gorditas/v24/ll8_K2aTVD26DsPEtTDpB6o.ttf" - }, - { - "family": "Gothic A1", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "korean", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/gothica1/v18/CSR74z5ZnPydRjlCCwlCCMcqYtd2vfwk.ttf", - "200": "https://fonts.gstatic.com/s/gothica1/v18/CSR44z5ZnPydRjlCCwlCpOYKSPl6tOU9Eg.ttf", - "300": "https://fonts.gstatic.com/s/gothica1/v18/CSR44z5ZnPydRjlCCwlCwOUKSPl6tOU9Eg.ttf", - "regular": "https://fonts.gstatic.com/s/gothica1/v18/CSR94z5ZnPydRjlCCwl6bM0uQNJmvQ.ttf", - "500": "https://fonts.gstatic.com/s/gothica1/v18/CSR44z5ZnPydRjlCCwlCmOQKSPl6tOU9Eg.ttf", - "600": "https://fonts.gstatic.com/s/gothica1/v18/CSR44z5ZnPydRjlCCwlCtOMKSPl6tOU9Eg.ttf", - "700": "https://fonts.gstatic.com/s/gothica1/v18/CSR44z5ZnPydRjlCCwlC0OIKSPl6tOU9Eg.ttf", - "800": "https://fonts.gstatic.com/s/gothica1/v18/CSR44z5ZnPydRjlCCwlCzOEKSPl6tOU9Eg.ttf", - "900": "https://fonts.gstatic.com/s/gothica1/v18/CSR44z5ZnPydRjlCCwlC6OAKSPl6tOU9Eg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gothica1/v18/CSR94z5ZnPydRjlCCwlKbccq.ttf" - }, - { - "family": "Gotu", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/gotu/v18/o-0FIpksx3QOlH0Lioh6-hU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gotu/v18/o-0FIpksx3QOpHwBjg.ttf" - }, - { - "family": "Goudy Bookletter 1911", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/goudybookletter1911/v21/sykt-z54laciWfKv-kX8krex0jDiD2HbY6I5tRbXZ4IXAA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/goudybookletter1911/v21/sykt-z54laciWfKv-kX8krex0jDiD2HbY6IJtBzT.ttf" - }, - { - "family": "Gowun Batang", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "korean", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/gowunbatang/v12/ijwSs5nhRMIjYsdSgcMa3wRhXLH-yuAtLw.ttf", - "700": "https://fonts.gstatic.com/s/gowunbatang/v12/ijwNs5nhRMIjYsdSgcMa3wRZ4J7awssxJii23w.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gowunbatang/v12/ijwSs5nhRMIjYsdSgcMa3wRRXbv6.ttf" - }, - { - "family": "Gowun Dodum", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/gowundodum/v12/3Jn5SD_00GqwlBnWc1TUJF0FfORL0fNy.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gowundodum/v12/3Jn5SD_00GqwlBnWc1TUJG0EduA.ttf" - }, - { - "family": "Graduate", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/graduate/v19/C8cg4cs3o2n15t_2YxgR6X2NZAn2.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/graduate/v19/C8cg4cs3o2n15t_2YygQ43k.ttf" - }, - { - "family": "Grand Hotel", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/grandhotel/v21/7Au7p_IgjDKdCRWuR1azpmQNEl0O0kEx.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/grandhotel/v21/7Au7p_IgjDKdCRWuR1azplQMGFk.ttf" - }, - { - "family": "Grandiflora One", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/grandifloraone/v3/0ybmGD0g27bCk_5MGWZcKWhxwnUU_R3y8DOWGA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/grandifloraone/v3/0ybmGD0g27bCk_5MGWZcKWhxwnUk_Bf2.ttf" - }, - { - "family": "Grandstander", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/grandstander/v20/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD1-_D3jWttFGmQk.ttf", - "200": "https://fonts.gstatic.com/s/grandstander/v20/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD9--D3jWttFGmQk.ttf", - "300": "https://fonts.gstatic.com/s/grandstander/v20/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQDwG-D3jWttFGmQk.ttf", - "regular": "https://fonts.gstatic.com/s/grandstander/v20/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD1--D3jWttFGmQk.ttf", - "500": "https://fonts.gstatic.com/s/grandstander/v20/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD22-D3jWttFGmQk.ttf", - "600": "https://fonts.gstatic.com/s/grandstander/v20/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD4G5D3jWttFGmQk.ttf", - "700": "https://fonts.gstatic.com/s/grandstander/v20/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD7i5D3jWttFGmQk.ttf", - "800": "https://fonts.gstatic.com/s/grandstander/v20/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD9-5D3jWttFGmQk.ttf", - "900": "https://fonts.gstatic.com/s/grandstander/v20/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD_a5D3jWttFGmQk.ttf", - "100italic": "https://fonts.gstatic.com/s/grandstander/v20/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf95zrcsvNDiQlBYQ.ttf", - "200italic": "https://fonts.gstatic.com/s/grandstander/v20/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ZzvcsvNDiQlBYQ.ttf", - "300italic": "https://fonts.gstatic.com/s/grandstander/v20/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9uTvcsvNDiQlBYQ.ttf", - "italic": "https://fonts.gstatic.com/s/grandstander/v20/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf95zvcsvNDiQlBYQ.ttf", - "500italic": "https://fonts.gstatic.com/s/grandstander/v20/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf91TvcsvNDiQlBYQ.ttf", - "600italic": "https://fonts.gstatic.com/s/grandstander/v20/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9OTzcsvNDiQlBYQ.ttf", - "700italic": "https://fonts.gstatic.com/s/grandstander/v20/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ADzcsvNDiQlBYQ.ttf", - "800italic": "https://fonts.gstatic.com/s/grandstander/v20/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ZzzcsvNDiQlBYQ.ttf", - "900italic": "https://fonts.gstatic.com/s/grandstander/v20/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9TjzcsvNDiQlBYQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/grandstander/v20/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD1--P3ncsg.ttf" - }, - { - "family": "Grape Nuts", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/grapenuts/v7/syk2-yF4iLM2RfKj4F7k3tLvol2RN1E.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/grapenuts/v7/syk2-yF4iLM2RfKj4F7k7tPlpg.ttf" - }, - { - "family": "Gravitas One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/gravitasone/v21/5h1diZ4hJ3cblKy3LWakKQmaDWRNr3DzbQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gravitasone/v21/5h1diZ4hJ3cblKy3LWakKQmqDG5J.ttf" - }, - { - "family": "Great Vibes", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/greatvibes/v21/RWmMoKWR9v4ksMfaWd_JN-XCg6UKDXlq.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/greatvibes/v21/RWmMoKWR9v4ksMfaWd_JN9XDiaE.ttf" - }, - { - "family": "Grechen Fuemen", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/grechenfuemen/v11/vEFI2_tHEQ4d5ObgKxBzZh0MAWgc-NaXXq7H.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/grechenfuemen/v11/vEFI2_tHEQ4d5ObgKxBzZh0MAVgd8tI.ttf" - }, - { - "family": "Grenze", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/grenze/v16/O4ZRFGb7hR12BxqPm2IjuAkalnmd.ttf", - "100italic": "https://fonts.gstatic.com/s/grenze/v16/O4ZXFGb7hR12BxqH_VpHsg04k2md0kI.ttf", - "200": "https://fonts.gstatic.com/s/grenze/v16/O4ZQFGb7hR12BxqPN0MDkicWn2CEyw.ttf", - "200italic": "https://fonts.gstatic.com/s/grenze/v16/O4ZWFGb7hR12BxqH_Vrrky0SvWWUy1uW.ttf", - "300": "https://fonts.gstatic.com/s/grenze/v16/O4ZQFGb7hR12BxqPU0ADkicWn2CEyw.ttf", - "300italic": "https://fonts.gstatic.com/s/grenze/v16/O4ZWFGb7hR12BxqH_VqPkC0SvWWUy1uW.ttf", - "regular": "https://fonts.gstatic.com/s/grenze/v16/O4ZTFGb7hR12Bxq3_2gnmgwKlg.ttf", - "italic": "https://fonts.gstatic.com/s/grenze/v16/O4ZRFGb7hR12BxqH_WIjuAkalnmd.ttf", - "500": "https://fonts.gstatic.com/s/grenze/v16/O4ZQFGb7hR12BxqPC0EDkicWn2CEyw.ttf", - "500italic": "https://fonts.gstatic.com/s/grenze/v16/O4ZWFGb7hR12BxqH_VrXkS0SvWWUy1uW.ttf", - "600": "https://fonts.gstatic.com/s/grenze/v16/O4ZQFGb7hR12BxqPJ0YDkicWn2CEyw.ttf", - "600italic": "https://fonts.gstatic.com/s/grenze/v16/O4ZWFGb7hR12BxqH_Vr7li0SvWWUy1uW.ttf", - "700": "https://fonts.gstatic.com/s/grenze/v16/O4ZQFGb7hR12BxqPQ0cDkicWn2CEyw.ttf", - "700italic": "https://fonts.gstatic.com/s/grenze/v16/O4ZWFGb7hR12BxqH_Vqfly0SvWWUy1uW.ttf", - "800": "https://fonts.gstatic.com/s/grenze/v16/O4ZQFGb7hR12BxqPX0QDkicWn2CEyw.ttf", - "800italic": "https://fonts.gstatic.com/s/grenze/v16/O4ZWFGb7hR12BxqH_VqDlC0SvWWUy1uW.ttf", - "900": "https://fonts.gstatic.com/s/grenze/v16/O4ZQFGb7hR12BxqPe0UDkicWn2CEyw.ttf", - "900italic": "https://fonts.gstatic.com/s/grenze/v16/O4ZWFGb7hR12BxqH_VqnlS0SvWWUy1uW.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/grenze/v16/O4ZTFGb7hR12BxqH_mIj.ttf" - }, - { - "family": "Grenze Gotisch", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5Lz5UcICdYPSd_w.ttf", - "200": "https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5rz9UcICdYPSd_w.ttf", - "300": "https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5cT9UcICdYPSd_w.ttf", - "regular": "https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5Lz9UcICdYPSd_w.ttf", - "500": "https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5HT9UcICdYPSd_w.ttf", - "600": "https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i58ThUcICdYPSd_w.ttf", - "700": "https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5yDhUcICdYPSd_w.ttf", - "800": "https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5rzhUcICdYPSd_w.ttf", - "900": "https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5hjhUcICdYPSd_w.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5Lz9kcYqZ.ttf" - }, - { - "family": "Grey Qo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/greyqo/v11/BXRrvF_Nmv_TyXxNDOtQ9Wf0QcE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/greyqo/v11/BXRrvF_Nmv_TyXxNPOpa8Q.ttf" - }, - { - "family": "Griffy", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/griffy/v23/FwZa7-ox2FQh9kfwSNSEwM2zpA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/griffy/v23/FwZa7-ox2FQh9kfASd6A.ttf" - }, - { - "family": "Gruppo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/gruppo/v23/WwkfxPmzE06v_ZWFWXDAOIEQUQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gruppo/v23/WwkfxPmzE06v_ZW1WHrE.ttf" - }, - { - "family": "Gudea", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/gudea/v16/neIFzCqgsI0mp-CP9IGON7Ez.ttf", - "italic": "https://fonts.gstatic.com/s/gudea/v16/neILzCqgsI0mp9CN_oWsMqEzSJQ.ttf", - "700": "https://fonts.gstatic.com/s/gudea/v16/neIIzCqgsI0mp9gz26WGHK06UY30.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gudea/v16/neIFzCqgsI0mp9CO_oU.ttf" - }, - { - "family": "Gugi", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/gugi/v21/A2BVn5dXywshVA6A9DEfgqM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gugi/v21/A2BVn5dXywshZA-K8A.ttf" - }, - { - "family": "Gulzar", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/gulzar/v14/Wnz6HAc9eB3HB2ILYTwZqg_MPQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gulzar/v14/Wnz6HAc9eB3HB2I7YDYd.ttf" - }, - { - "family": "Gupter", - "variants": [ - "regular", - "500", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/gupter/v18/2-cm9JNmxJqPO1QUYZa_Wu_lpA.ttf", - "500": "https://fonts.gstatic.com/s/gupter/v18/2-cl9JNmxJqPO1Qslb-bUsT5rZhaZg.ttf", - "700": "https://fonts.gstatic.com/s/gupter/v18/2-cl9JNmxJqPO1Qs3bmbUsT5rZhaZg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gupter/v18/2-cm9JNmxJqPO1QkYJy7.ttf" - }, - { - "family": "Gurajada", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "telugu" - ], - "version": "v22", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/gurajada/v22/FwZY7-Qx308m-l-0Kd6A4sijpFu_.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gurajada/v22/FwZY7-Qx308m-l-0Ke6B6Mw.ttf" - }, - { - "family": "Gwendolyn", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/gwendolyn/v9/qkBXXvoO_M3CSss-d7ee5JRLkAXbMQ.ttf", - "700": "https://fonts.gstatic.com/s/gwendolyn/v9/qkBSXvoO_M3CSss-d7emWLtvmC7HONiSFQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/gwendolyn/v9/qkBXXvoO_M3CSss-d7eu5Z5P.ttf" - }, - { - "family": "Habibi", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/habibi/v22/CSR-4zFWkuqcTTNCShJeZOYySQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/habibi/v22/CSR-4zFWkuqcTTNySxha.ttf" - }, - { - "family": "Hachi Maru Pop", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/hachimarupop/v23/HI_TiYoRLqpLrEiMAuO9Ysfz7rW1EM_btd8u.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hachimarupop/v23/HI_TiYoRLqpLrEiMAuO9Ysfz7oW0Gss.ttf" - }, - { - "family": "Hahmlet", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "korean", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/hahmlet/v21/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RhKOdjobsO-aVxn.ttf", - "200": "https://fonts.gstatic.com/s/hahmlet/v21/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjKONjobsO-aVxn.ttf", - "300": "https://fonts.gstatic.com/s/hahmlet/v21/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RgUONjobsO-aVxn.ttf", - "regular": "https://fonts.gstatic.com/s/hahmlet/v21/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RhKONjobsO-aVxn.ttf", - "500": "https://fonts.gstatic.com/s/hahmlet/v21/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4Rh4ONjobsO-aVxn.ttf", - "600": "https://fonts.gstatic.com/s/hahmlet/v21/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RiUP9jobsO-aVxn.ttf", - "700": "https://fonts.gstatic.com/s/hahmlet/v21/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RitP9jobsO-aVxn.ttf", - "800": "https://fonts.gstatic.com/s/hahmlet/v21/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjKP9jobsO-aVxn.ttf", - "900": "https://fonts.gstatic.com/s/hahmlet/v21/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjjP9jobsO-aVxn.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hahmlet/v21/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RhKOOjpZMc.ttf" - }, - { - "family": "Halant", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/halant/v17/u-490qaujRI2Pbsvc_pCmwZqcwdRXg.ttf", - "regular": "https://fonts.gstatic.com/s/halant/v17/u-4-0qaujRI2PbsX39Jmky12eg.ttf", - "500": "https://fonts.gstatic.com/s/halant/v17/u-490qaujRI2PbsvK_tCmwZqcwdRXg.ttf", - "600": "https://fonts.gstatic.com/s/halant/v17/u-490qaujRI2PbsvB_xCmwZqcwdRXg.ttf", - "700": "https://fonts.gstatic.com/s/halant/v17/u-490qaujRI2PbsvY_1CmwZqcwdRXg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/halant/v17/u-4-0qaujRI2Pbsn3thi.ttf" - }, - { - "family": "Hammersmith One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/hammersmithone/v18/qWcyB624q4L_C4jGQ9IK0O_dFlnbshsks4MRXw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hammersmithone/v18/qWcyB624q4L_C4jGQ9IK0O_dFlnrsxEg.ttf" - }, - { - "family": "Hanalei", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/hanalei/v24/E21n_dD8iufIjBRHXzgmVydREus.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hanalei/v24/E21n_dD8iufIjBRHbzksUw.ttf" - }, - { - "family": "Hanalei Fill", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/hanaleifill/v23/fC1mPYtObGbfyQznIaQzPQiMVwLBplm9aw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hanaleifill/v23/fC1mPYtObGbfyQznIaQzPQi8VgjF.ttf" - }, - { - "family": "Handjet", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "armenian", - "cyrillic", - "cyrillic-ext", - "greek", - "hebrew", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/handjet/v22/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHTmbUkUsEHFAH2A.ttf", - "200": "https://fonts.gstatic.com/s/handjet/v22/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHbmaUkUsEHFAH2A.ttf", - "300": "https://fonts.gstatic.com/s/handjet/v22/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHWeaUkUsEHFAH2A.ttf", - "regular": "https://fonts.gstatic.com/s/handjet/v22/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHTmaUkUsEHFAH2A.ttf", - "500": "https://fonts.gstatic.com/s/handjet/v22/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHQuaUkUsEHFAH2A.ttf", - "600": "https://fonts.gstatic.com/s/handjet/v22/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHeedUkUsEHFAH2A.ttf", - "700": "https://fonts.gstatic.com/s/handjet/v22/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHd6dUkUsEHFAH2A.ttf", - "800": "https://fonts.gstatic.com/s/handjet/v22/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHbmdUkUsEHFAH2A.ttf", - "900": "https://fonts.gstatic.com/s/handjet/v22/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHZCdUkUsEHFAH2A.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/handjet/v22/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHTmaYkQmFA.ttf" - }, - { - "family": "Handlee", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/handlee/v20/-F6xfjBsISg9aMakDmr6oilJ3ik.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/handlee/v20/-F6xfjBsISg9aMakPmvwpg.ttf" - }, - { - "family": "Hanken Grotesk", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2da4fpNzXhRKA.ttf", - "200": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcM2Za4fpNzXhRKA.ttf", - "300": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Nc7WZa4fpNzXhRKA.ttf", - "regular": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2Za4fpNzXhRKA.ttf", - "500": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcgWZa4fpNzXhRKA.ttf", - "600": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcbWFa4fpNzXhRKA.ttf", - "700": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcVGFa4fpNzXhRKA.ttf", - "800": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcM2Fa4fpNzXhRKA.ttf", - "900": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcGmFa4fpNzXhRKA.ttf", - "100italic": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWyo_BJ731BKMSK.ttf", - "200italic": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUyovBJ731BKMSK.ttf", - "300italic": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyXsovBJ731BKMSK.ttf", - "italic": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWyovBJ731BKMSK.ttf", - "500italic": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWAovBJ731BKMSK.ttf", - "600italic": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyVspfBJ731BKMSK.ttf", - "700italic": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyVVpfBJ731BKMSK.ttf", - "800italic": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUypfBJ731BKMSK.ttf", - "900italic": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUbpfBJ731BKMSK.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hankengrotesk/v12/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2Zq4PBJ.ttf" - }, - { - "family": "Hanuman", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v24", - "lastModified": "2025-06-12", - "files": { - "100": "https://fonts.gstatic.com/s/hanuman/v24/VuJudNvD15HhpJJBYq31yFn72hxIv0sd5hDsU9X6RPzQ.ttf", - "200": "https://fonts.gstatic.com/s/hanuman/v24/VuJudNvD15HhpJJBYq31yFn72hxIv0ud5xDsU9X6RPzQ.ttf", - "300": "https://fonts.gstatic.com/s/hanuman/v24/VuJudNvD15HhpJJBYq31yFn72hxIv0tD5xDsU9X6RPzQ.ttf", - "regular": "https://fonts.gstatic.com/s/hanuman/v24/VuJudNvD15HhpJJBYq31yFn72hxIv0sd5xDsU9X6RPzQ.ttf", - "500": "https://fonts.gstatic.com/s/hanuman/v24/VuJudNvD15HhpJJBYq31yFn72hxIv0sv5xDsU9X6RPzQ.ttf", - "600": "https://fonts.gstatic.com/s/hanuman/v24/VuJudNvD15HhpJJBYq31yFn72hxIv0vD4BDsU9X6RPzQ.ttf", - "700": "https://fonts.gstatic.com/s/hanuman/v24/VuJudNvD15HhpJJBYq31yFn72hxIv0v64BDsU9X6RPzQ.ttf", - "800": "https://fonts.gstatic.com/s/hanuman/v24/VuJudNvD15HhpJJBYq31yFn72hxIv0ud4BDsU9X6RPzQ.ttf", - "900": "https://fonts.gstatic.com/s/hanuman/v24/VuJudNvD15HhpJJBYq31yFn72hxIv0u04BDsU9X6RPzQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hanuman/v24/VuJudNvD15HhpJJBYq31yFn72hxIv0sd5yDtWdE.ttf" - }, - { - "family": "Happy Monkey", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/happymonkey/v15/K2F2fZZcl-9SXwl5F_C4R_OABwD2bWqVjw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/happymonkey/v15/K2F2fZZcl-9SXwl5F_C4R_OwBgry.ttf" - }, - { - "family": "Harmattan", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/harmattan/v24/goksH6L2DkFvVvRp9XpTS0CjkP1Yog.ttf", - "500": "https://fonts.gstatic.com/s/harmattan/v24/gokpH6L2DkFvVvRp9Xprv2mHmNZEq6TTFw.ttf", - "600": "https://fonts.gstatic.com/s/harmattan/v24/gokpH6L2DkFvVvRp9Xprk26HmNZEq6TTFw.ttf", - "700": "https://fonts.gstatic.com/s/harmattan/v24/gokpH6L2DkFvVvRp9Xpr92-HmNZEq6TTFw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/harmattan/v24/goksH6L2DkFvVvRp9XpjSkqn.ttf" - }, - { - "family": "Headland One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/headlandone/v17/yYLu0hHR2vKnp89Tk1TCq3Tx0PlTeZ3mJA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/headlandone/v17/yYLu0hHR2vKnp89Tk1TCq3TB0fNX.ttf" - }, - { - "family": "Hedvig Letters Sans", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/hedvigletterssans/v2/CHy_V_PfGVjobSBkihHWDT98RVp37w8jQJ1N3Twgi1w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hedvigletterssans/v2/CHy_V_PfGVjobSBkihHWDT98RVp37w8jcJxH2Q.ttf" - }, - { - "family": "Hedvig Letters Serif", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v4", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/hedviglettersserif/v4/OD5puN2I2mekHmyoU1Kj2AXOd5_7v7gIDlX8quj7viQ_N1HixEAZf7fcvSGpZg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hedviglettersserif/v4/OD5puN2I2mekHmyoU1Kj2AXOd5_7v7gIDlX8quj7viQ_N1HixEApfr3Y.ttf" - }, - { - "family": "Heebo", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v28", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/heebo/v28/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EiS2cckOnz02SXQ.ttf", - "200": "https://fonts.gstatic.com/s/heebo/v28/NGSpv5_NC0k9P_v6ZUCbLRAHxK1ECSycckOnz02SXQ.ttf", - "300": "https://fonts.gstatic.com/s/heebo/v28/NGSpv5_NC0k9P_v6ZUCbLRAHxK1E1yycckOnz02SXQ.ttf", - "regular": "https://fonts.gstatic.com/s/heebo/v28/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EiSycckOnz02SXQ.ttf", - "500": "https://fonts.gstatic.com/s/heebo/v28/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EuyycckOnz02SXQ.ttf", - "600": "https://fonts.gstatic.com/s/heebo/v28/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EVyucckOnz02SXQ.ttf", - "700": "https://fonts.gstatic.com/s/heebo/v28/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EbiucckOnz02SXQ.ttf", - "800": "https://fonts.gstatic.com/s/heebo/v28/NGSpv5_NC0k9P_v6ZUCbLRAHxK1ECSucckOnz02SXQ.ttf", - "900": "https://fonts.gstatic.com/s/heebo/v28/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EICucckOnz02SXQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/heebo/v28/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EiSysc0mj.ttf" - }, - { - "family": "Henny Penny", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/hennypenny/v18/wXKvE3UZookzsxz_kjGSfMQqt3M7tMDT.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hennypenny/v18/wXKvE3UZookzsxz_kjGSfPQrvXc.ttf" - }, - { - "family": "Hepta Slab", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/heptaslab/v25/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvkV5jfbY5B0NBkz.ttf", - "200": "https://fonts.gstatic.com/s/heptaslab/v25/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvmV5zfbY5B0NBkz.ttf", - "300": "https://fonts.gstatic.com/s/heptaslab/v25/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvlL5zfbY5B0NBkz.ttf", - "regular": "https://fonts.gstatic.com/s/heptaslab/v25/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvkV5zfbY5B0NBkz.ttf", - "500": "https://fonts.gstatic.com/s/heptaslab/v25/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvkn5zfbY5B0NBkz.ttf", - "600": "https://fonts.gstatic.com/s/heptaslab/v25/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvnL4DfbY5B0NBkz.ttf", - "700": "https://fonts.gstatic.com/s/heptaslab/v25/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvny4DfbY5B0NBkz.ttf", - "800": "https://fonts.gstatic.com/s/heptaslab/v25/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvmV4DfbY5B0NBkz.ttf", - "900": "https://fonts.gstatic.com/s/heptaslab/v25/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvm84DfbY5B0NBkz.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/heptaslab/v25/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvkV5wfaaZQ.ttf" - }, - { - "family": "Herr Von Muellerhoff", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/herrvonmuellerhoff/v23/WBL6rFjRZkREW8WqmCWYLgCkQKXb4CAft3c6_qJY3QPQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/herrvonmuellerhoff/v23/WBL6rFjRZkREW8WqmCWYLgCkQKXb4CAft0c79KY.ttf" - }, - { - "family": "Hi Melody", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/himelody/v19/46ktlbP8Vnz0pJcqCTbEf29E31BBGA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/himelody/v19/46ktlbP8Vnz0pJcqCTb0fmVA.ttf" - }, - { - "family": "Hina Mincho", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/hinamincho/v16/2sDaZGBRhpXa2Jjz5w5LAGW8KbkVZTHR.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hinamincho/v16/2sDaZGBRhpXa2Jjz5w5LAFW9I70.ttf" - }, - { - "family": "Hind", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/hind/v18/5aU19_a8oxmIfMJaIRuYjDpf5Vw.ttf", - "regular": "https://fonts.gstatic.com/s/hind/v18/5aU69_a8oxmIRG5yBROzkDM.ttf", - "500": "https://fonts.gstatic.com/s/hind/v18/5aU19_a8oxmIfJpbIRuYjDpf5Vw.ttf", - "600": "https://fonts.gstatic.com/s/hind/v18/5aU19_a8oxmIfLZcIRuYjDpf5Vw.ttf", - "700": "https://fonts.gstatic.com/s/hind/v18/5aU19_a8oxmIfNJdIRuYjDpf5Vw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hind/v18/5aU69_a8oxmIdG94AQ.ttf" - }, - { - "family": "Hind Guntur", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "telugu" - ], - "version": "v14", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/hindguntur/v14/wXKyE3UZrok56nvamSuJd_yGn1czn9zaj5Ju.ttf", - "regular": "https://fonts.gstatic.com/s/hindguntur/v14/wXKvE3UZrok56nvamSuJd8Qqt3M7tMDT.ttf", - "500": "https://fonts.gstatic.com/s/hindguntur/v14/wXKyE3UZrok56nvamSuJd_zenlczn9zaj5Ju.ttf", - "600": "https://fonts.gstatic.com/s/hindguntur/v14/wXKyE3UZrok56nvamSuJd_zymVczn9zaj5Ju.ttf", - "700": "https://fonts.gstatic.com/s/hindguntur/v14/wXKyE3UZrok56nvamSuJd_yWmFczn9zaj5Ju.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hindguntur/v14/wXKvE3UZrok56nvamSuJd_QrvXc.ttf" - }, - { - "family": "Hind Madurai", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil" - ], - "version": "v13", - "lastModified": "2025-09-02", - "files": { - "300": "https://fonts.gstatic.com/s/hindmadurai/v13/f0Xu0e2p98ZvDXdZQIOcpqjfXaUnecsoMJ0b_g.ttf", - "regular": "https://fonts.gstatic.com/s/hindmadurai/v13/f0Xx0e2p98ZvDXdZQIOcpqjn8Y0DceA0OQ.ttf", - "500": "https://fonts.gstatic.com/s/hindmadurai/v13/f0Xu0e2p98ZvDXdZQIOcpqjfBaQnecsoMJ0b_g.ttf", - "600": "https://fonts.gstatic.com/s/hindmadurai/v13/f0Xu0e2p98ZvDXdZQIOcpqjfKaMnecsoMJ0b_g.ttf", - "700": "https://fonts.gstatic.com/s/hindmadurai/v13/f0Xu0e2p98ZvDXdZQIOcpqjfTaInecsoMJ0b_g.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hindmadurai/v13/f0Xx0e2p98ZvDXdZQIOcpqjX8IcH.ttf" - }, - { - "family": "Hind Mysuru", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "kannada", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "300": "https://fonts.gstatic.com/s/hindmysuru/v1/sykq-yB3k7wiAJ-U5l_li8pppHWQBVTqU4sY.ttf", - "regular": "https://fonts.gstatic.com/s/hindmysuru/v1/syk3-yB3k7wiAJ-U5l_li_LFjFGYLkjj.ttf", - "500": "https://fonts.gstatic.com/s/hindmysuru/v1/sykq-yB3k7wiAJ-U5l_li8oxpXWQBVTqU4sY.ttf", - "600": "https://fonts.gstatic.com/s/hindmysuru/v1/sykq-yB3k7wiAJ-U5l_li8odonWQBVTqU4sY.ttf", - "700": "https://fonts.gstatic.com/s/hindmysuru/v1/sykq-yB3k7wiAJ-U5l_li8p5o3WQBVTqU4sY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hindmysuru/v1/syk3-yB3k7wiAJ-U5l_li8LEhlU.ttf" - }, - { - "family": "Hind Siliguri", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "bengali", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/hindsiliguri/v14/ijwOs5juQtsyLLR5jN4cxBEoRDf44uEfKiGvxts.ttf", - "regular": "https://fonts.gstatic.com/s/hindsiliguri/v14/ijwTs5juQtsyLLR5jN4cxBEofJvQxuk0Nig.ttf", - "500": "https://fonts.gstatic.com/s/hindsiliguri/v14/ijwOs5juQtsyLLR5jN4cxBEoRG_54uEfKiGvxts.ttf", - "600": "https://fonts.gstatic.com/s/hindsiliguri/v14/ijwOs5juQtsyLLR5jN4cxBEoREP-4uEfKiGvxts.ttf", - "700": "https://fonts.gstatic.com/s/hindsiliguri/v14/ijwOs5juQtsyLLR5jN4cxBEoRCf_4uEfKiGvxts.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hindsiliguri/v14/ijwTs5juQtsyLLR5jN4cxBEoTJrawg.ttf" - }, - { - "family": "Hind Vadodara", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/hindvadodara/v16/neIQzCKvrIcn5pbuuuriV9tTSDn3iXM0oSOL2Yw.ttf", - "regular": "https://fonts.gstatic.com/s/hindvadodara/v16/neINzCKvrIcn5pbuuuriV9tTcJXfrXsfvSo.ttf", - "500": "https://fonts.gstatic.com/s/hindvadodara/v16/neIQzCKvrIcn5pbuuuriV9tTSGH2iXM0oSOL2Yw.ttf", - "600": "https://fonts.gstatic.com/s/hindvadodara/v16/neIQzCKvrIcn5pbuuuriV9tTSE3xiXM0oSOL2Yw.ttf", - "700": "https://fonts.gstatic.com/s/hindvadodara/v16/neIQzCKvrIcn5pbuuuriV9tTSCnwiXM0oSOL2Yw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hindvadodara/v16/neINzCKvrIcn5pbuuuriV9tTQJTVqQ.ttf" - }, - { - "family": "Holtwood One SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/holtwoodonesc/v23/yYLx0hLR0P-3vMFSk1TCq3Txg5B3cbb6LZttyg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/holtwoodonesc/v23/yYLx0hLR0P-3vMFSk1TCq3Txg5BHcLz-.ttf" - }, - { - "family": "Homemade Apple", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/homemadeapple/v24/Qw3EZQFXECDrI2q789EKQZJob3x9Vnksi4M7.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/homemadeapple/v24/Qw3EZQFXECDrI2q789EKQZJob0x8XH0.ttf" - }, - { - "family": "Homenaje", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/homenaje/v17/FwZY7-Q-xVAi_l-6Ld6A4sijpFu_.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/homenaje/v17/FwZY7-Q-xVAi_l-6Le6B6Mw.ttf" - }, - { - "family": "Honk", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/honk/v6/m8J7jftUea-XwTaemClumrBQbmvynOmXBji9zFhHRr8WFgVLo7tNepQKvg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/honk/v6/m8J7jftUea-XwTaemClumrBQbmvynOmXBji9zFhHRr8WFgV7orFJ.ttf", - "colorCapabilities": [ - "COLRv1" - ] - }, - { - "family": "Host Grotesk", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3UmWBnlCJ3U42vbbfdwMjzqHAXOdFzqU5PubnOzhap-j94InI.ttf", - "regular": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3UmWBnlCJ3U42vbbfdwMjzqHAXOdFzqU5PuefOzhap-j94InI.ttf", - "500": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3UmWBnlCJ3U42vbbfdwMjzqHAXOdFzqU5PudXOzhap-j94InI.ttf", - "600": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3UmWBnlCJ3U42vbbfdwMjzqHAXOdFzqU5PuTnJzhap-j94InI.ttf", - "700": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3UmWBnlCJ3U42vbbfdwMjzqHAXOdFzqU5PuQDJzhap-j94InI.ttf", - "800": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3UmWBnlCJ3U42vbbfdwMjzqHAXOdFzqU5PuWfJzhap-j94InI.ttf", - "300italic": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3SmWBnlCJ3U42vbbfdwMjZoULo4bgYM-BIrC-NeFWj_h19MnL2jg.ttf", - "italic": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3SmWBnlCJ3U42vbbfdwMjZoULo4bgYM-BIrC-NJlWj_h19MnL2jg.ttf", - "500italic": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3SmWBnlCJ3U42vbbfdwMjZoULo4bgYM-BIrC-NFFWj_h19MnL2jg.ttf", - "600italic": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3SmWBnlCJ3U42vbbfdwMjZoULo4bgYM-BIrC-N-FKj_h19MnL2jg.ttf", - "700italic": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3SmWBnlCJ3U42vbbfdwMjZoULo4bgYM-BIrC-NwVKj_h19MnL2jg.ttf", - "800italic": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3SmWBnlCJ3U42vbbfdwMjZoULo4bgYM-BIrC-NplKj_h19MnL2jg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hostgrotesk/v5/co3UmWBnlCJ3U42vbbfdwMjzqHAXOdFzqU5PuefO_hej_g.ttf" - }, - { - "family": "Hubballi", - "variants": [ - "regular" - ], - "subsets": [ - "kannada", - "latin", - "latin-ext" - ], - "version": "v10", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/hubballi/v10/o-0JIpUj3WIZ1RFN56B7yBBNYuSF.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hubballi/v10/o-0JIpUj3WIZ1RFN55B6whQ.ttf" - }, - { - "family": "Hubot Sans", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/hubotsans/v5/pe0BMIiULYxOvxVLbVwhONyy6zb7yFM9V5G3iZ3X0avsIiCxjLsCZ7ZdgLDVwVqcXQ.ttf", - "300": "https://fonts.gstatic.com/s/hubotsans/v5/pe0BMIiULYxOvxVLbVwhONyy6zb7yFM9V5G3iZ3X0avsIiCxjLsCubZdgLDVwVqcXQ.ttf", - "regular": "https://fonts.gstatic.com/s/hubotsans/v5/pe0BMIiULYxOvxVLbVwhONyy6zb7yFM9V5G3iZ3X0avsIiCxjLsC57ZdgLDVwVqcXQ.ttf", - "500": "https://fonts.gstatic.com/s/hubotsans/v5/pe0BMIiULYxOvxVLbVwhONyy6zb7yFM9V5G3iZ3X0avsIiCxjLsC1bZdgLDVwVqcXQ.ttf", - "600": "https://fonts.gstatic.com/s/hubotsans/v5/pe0BMIiULYxOvxVLbVwhONyy6zb7yFM9V5G3iZ3X0avsIiCxjLsCObFdgLDVwVqcXQ.ttf", - "700": "https://fonts.gstatic.com/s/hubotsans/v5/pe0BMIiULYxOvxVLbVwhONyy6zb7yFM9V5G3iZ3X0avsIiCxjLsCALFdgLDVwVqcXQ.ttf", - "800": "https://fonts.gstatic.com/s/hubotsans/v5/pe0BMIiULYxOvxVLbVwhONyy6zb7yFM9V5G3iZ3X0avsIiCxjLsCZ7FdgLDVwVqcXQ.ttf", - "900": "https://fonts.gstatic.com/s/hubotsans/v5/pe0BMIiULYxOvxVLbVwhONyy6zb7yFM9V5G3iZ3X0avsIiCxjLsCTrFdgLDVwVqcXQ.ttf", - "200italic": "https://fonts.gstatic.com/s/hubotsans/v5/pe0PMIiULYxOvxVLbVwhEtWACNaCm8WTUIR_y2-e41Q0S0srIrwXL_U1w7rR41-MXUss.ttf", - "300italic": "https://fonts.gstatic.com/s/hubotsans/v5/pe0PMIiULYxOvxVLbVwhEtWACNaCm8WTUIR_y2-e41Q0S0srIrwXL_Xrw7rR41-MXUss.ttf", - "italic": "https://fonts.gstatic.com/s/hubotsans/v5/pe0PMIiULYxOvxVLbVwhEtWACNaCm8WTUIR_y2-e41Q0S0srIrwXL_W1w7rR41-MXUss.ttf", - "500italic": "https://fonts.gstatic.com/s/hubotsans/v5/pe0PMIiULYxOvxVLbVwhEtWACNaCm8WTUIR_y2-e41Q0S0srIrwXL_WHw7rR41-MXUss.ttf", - "600italic": "https://fonts.gstatic.com/s/hubotsans/v5/pe0PMIiULYxOvxVLbVwhEtWACNaCm8WTUIR_y2-e41Q0S0srIrwXL_VrxLrR41-MXUss.ttf", - "700italic": "https://fonts.gstatic.com/s/hubotsans/v5/pe0PMIiULYxOvxVLbVwhEtWACNaCm8WTUIR_y2-e41Q0S0srIrwXL_VSxLrR41-MXUss.ttf", - "800italic": "https://fonts.gstatic.com/s/hubotsans/v5/pe0PMIiULYxOvxVLbVwhEtWACNaCm8WTUIR_y2-e41Q0S0srIrwXL_U1xLrR41-MXUss.ttf", - "900italic": "https://fonts.gstatic.com/s/hubotsans/v5/pe0PMIiULYxOvxVLbVwhEtWACNaCm8WTUIR_y2-e41Q0S0srIrwXL_UcxLrR41-MXUss.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hubotsans/v5/pe0BMIiULYxOvxVLbVwhONyy6zb7yFM9V5G3iZ3X0avsIiCxjLsC57ZtgbrR.ttf" - }, - { - "family": "Huninn", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-06-12", - "files": { - "regular": "https://fonts.gstatic.com/s/huninn/v2/OpNNnoINg9bQ4xkpjiHQjittXw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/huninn/v2/OpNNnoINg9bQ4xkZjyvU.ttf" - }, - { - "family": "Hurricane", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/hurricane/v9/pe0sMIuULZxTolZ5YldyAv2-C99ycg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/hurricane/v9/pe0sMIuULZxTolZ5YldCA_e6.ttf" - }, - { - "family": "IBM Plex Mono", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6pfjptAgt5VM-kVkqdyU8n3kwq0n1hj-sNFQ.ttf", - "100italic": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6rfjptAgt5VM-kVkqdyU8n1ioStndlre4dFcFh.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3uAL8ldPg-IUDNg.ttf", - "200italic": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6sfjptAgt5VM-kVkqdyU8n1ioSGlZFh8ARHNh4zg.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3oQI8ldPg-IUDNg.ttf", - "300italic": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6sfjptAgt5VM-kVkqdyU8n1ioSflVFh8ARHNh4zg.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n5igg1l9kn-s.ttf", - "italic": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6pfjptAgt5VM-kVkqdyU8n1ioq0n1hj-sNFQ.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3twJ8ldPg-IUDNg.ttf", - "500italic": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6sfjptAgt5VM-kVkqdyU8n1ioSJlRFh8ARHNh4zg.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3vAO8ldPg-IUDNg.ttf", - "600italic": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6sfjptAgt5VM-kVkqdyU8n1ioSClNFh8ARHNh4zg.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3pQP8ldPg-IUDNg.ttf", - "700italic": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F6sfjptAgt5VM-kVkqdyU8n1ioSblJFh8ARHNh4zg.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n1ikq0g.ttf" - }, - { - "family": "IBM Plex Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXGKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1swZSAXcomDVmadSD6lhzAKI5loa26g.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXGKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1swZSAXcomDVmadSDallzAKI5loa26g.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXGKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1swZSAXcomDVmadSDtFlzAKI5loa26g.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXGKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1swZSAXcomDVmadSD6llzAKI5loa26g.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXGKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1swZSAXcomDVmadSD2FlzAKI5loa26g.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXGKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1swZSAXcomDVmadSDNF5zAKI5loa26g.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXGKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1swZSAXcomDVmadSDDV5zAKI5loa26g.ttf", - "100italic": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXEKVElMYYaJe8bpLHnCwDKhdTEG46kmUZQCX598fQbM4jw8V78x9OWIhqbQqg9tIOm6vje.ttf", - "200italic": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXEKVElMYYaJe8bpLHnCwDKhdTEG46kmUZQCX598fQbM4jw8V78x9OWIhobQ6g9tIOm6vje.ttf", - "300italic": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXEKVElMYYaJe8bpLHnCwDKhdTEG46kmUZQCX598fQbM4jw8V78x9OWIhrFQ6g9tIOm6vje.ttf", - "italic": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXEKVElMYYaJe8bpLHnCwDKhdTEG46kmUZQCX598fQbM4jw8V78x9OWIhqbQ6g9tIOm6vje.ttf", - "500italic": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXEKVElMYYaJe8bpLHnCwDKhdTEG46kmUZQCX598fQbM4jw8V78x9OWIhqpQ6g9tIOm6vje.ttf", - "600italic": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXEKVElMYYaJe8bpLHnCwDKhdTEG46kmUZQCX598fQbM4jw8V78x9OWIhpFRKg9tIOm6vje.ttf", - "700italic": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXEKVElMYYaJe8bpLHnCwDKhdTEG46kmUZQCX598fQbM4jw8V78x9OWIhp8RKg9tIOm6vje.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexsans/v23/zYXGKVElMYYaJe8bpLHnCwDKr932-G7dytD-Dmu1swZSAXcomDVmadSD6llDAag9.ttf" - }, - { - "family": "IBM Plex Sans Arabic", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3MZRtWPQCuHme67tEYUIx3Kh0PHR9N6YNe3PC5eMlAMg0.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPy_dCTVsVJKxTs.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YOW_tCTVsVJKxTs.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3CZRtWPQCuHme67tEYUIx3Kh0PHR9N6bs61vSbfdlA.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPO_9CTVsVJKxTs.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPi-NCTVsVJKxTs.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YOG-dCTVsVJKxTs.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3CZRtWPQCuHme67tEYUIx3Kh0PHR9N6Ys73PA.ttf" - }, - { - "family": "IBM Plex Sans Condensed", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY7KyKvBgYsMDhM.ttf", - "100italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8hN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8M_LhakJHhOgBg.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY5m6Yvrr4cFFwq5.ttf", - "200italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8GPqpYMnEhq5H1w.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4C6ovrr4cFFwq5.ttf", - "300italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8AfppYMnEhq5H1w.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHbauwq_jhJsM.ttf", - "italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYasyKvBgYsMDhM.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY5a64vrr4cFFwq5.ttf", - "500italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8F_opYMnEhq5H1w.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY527Ivrr4cFFwq5.ttf", - "600italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8HPvpYMnEhq5H1w.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4S7Yvrr4cFFwq5.ttf", - "700italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8BfupYMnEhq5H1w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYavyKs.ttf" - }, - { - "family": "IBM Plex Sans Devanagari", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic-ext", - "devanagari", - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v12/XRXB3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HMUjwUcjwCEQq.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v12/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HnWnQe-b8AV0z0w.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v12/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_H-WrQe-b8AV0z0w.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v12/XRXH3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O__VUL0c83gCA.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v12/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HoWvQe-b8AV0z0w.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v12/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HjWzQe-b8AV0z0w.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v12/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_H6W3Qe-b8AV0z0w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v12/XRXH3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_PVEjw.ttf" - }, - { - "family": "IBM Plex Sans Hebrew", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v12/BCa4qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEXB-l0VqDaM7C4.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v12/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEVt230_hjqF9Tc2.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v12/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEUJ2H0_hjqF9Tc2.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v12/BCa2qYENg9Kw1mpLpO0bGM5lfHAAZHhDXH2l8Fk3rSaM.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v12/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEVR2X0_hjqF9Tc2.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v12/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEV93n0_hjqF9Tc2.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v12/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEUZ330_hjqF9Tc2.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v12/BCa2qYENg9Kw1mpLpO0bGM5lfHAAZHhDXE2k-l0.ttf" - }, - { - "family": "IBM Plex Sans JP", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v7", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexsansjp/v7/Z9XLDn9KbTDf6_f7dISNqYf_tvPT7E7yjPB7twdmHQ.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexsansjp/v7/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7OLTrNpVuw5_BAM.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexsansjp/v7/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7IbQrNpVuw5_BAM.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexsansjp/v7/Z9XNDn9KbTDf6_f7dISNqYf_tvPT1Cr4iNJ-pwc.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexsansjp/v7/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7N7RrNpVuw5_BAM.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexsansjp/v7/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7PLWrNpVuw5_BAM.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexsansjp/v7/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7JbXrNpVuw5_BAM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexsansjp/v7/Z9XNDn9KbTDf6_f7dISNqYf_tvPT5CvyjA.ttf" - }, - { - "family": "IBM Plex Sans KR", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "korean", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexsanskr/v11/vEFM2-VJISZe3O_rc3ZVYh4aTwNOyra_X5zCpMrMfA.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexsanskr/v11/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyhqef7bsqMPVZb4.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexsanskr/v11/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyn6df7bsqMPVZb4.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexsanskr/v11/vEFK2-VJISZe3O_rc3ZVYh4aTwNO8tK1W77HtMo.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexsanskr/v11/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyiacf7bsqMPVZb4.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexsanskr/v11/vEFN2-VJISZe3O_rc3ZVYh4aTwNOygqbf7bsqMPVZb4.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexsanskr/v11/vEFN2-VJISZe3O_rc3ZVYh4aTwNOym6af7bsqMPVZb4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexsanskr/v11/vEFK2-VJISZe3O_rc3ZVYh4aTwNOwtO_Xw.ttf" - }, - { - "family": "IBM Plex Sans Thai", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "thai" - ], - "version": "v11", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexsansthai/v11/m8JNje1VVIzcq1HzJq2AEdo2Tj_qvLqEatYlR8ZKUqcX.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexsansthai/v11/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqExvcFbehGW74OXw.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexsansthai/v11/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqEovQFbehGW74OXw.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexsansthai/v11/m8JPje1VVIzcq1HzJq2AEdo2Tj_qvLq8DtwhZcNaUg.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexsansthai/v11/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqE-vUFbehGW74OXw.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexsansthai/v11/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqE1vIFbehGW74OXw.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexsansthai/v11/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqEsvMFbehGW74OXw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexsansthai/v11/m8JPje1VVIzcq1HzJq2AEdo2Tj_qvLqMD9Yl.ttf" - }, - { - "family": "IBM Plex Sans Thai Looped", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "thai" - ], - "version": "v12", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v12/tss5AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_HaKpHOtFCQ76Q.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v12/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_NqrhFmDGC0i8Cc.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v12/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_L6ohFmDGC0i8Cc.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v12/tss_AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30LxBKAoFGoBCQ.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v12/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_OaphFmDGC0i8Cc.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v12/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_MquhFmDGC0i8Cc.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v12/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_K6vhFmDGC0i8Cc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v12/tss_AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L9BOKpA.ttf" - }, - { - "family": "IBM Plex Serif", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizBREVNn1dOx-zrZ2X3pZvkTi182zIZj1bIkNo.ttf", - "100italic": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizHREVNn1dOx-zrZ2X3pZvkTiUa41YTi3TNgNq55w.ttf", - "200": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizAREVNn1dOx-zrZ2X3pZvkTi3Q-hIzoVrBicOg.ttf", - "200italic": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizGREVNn1dOx-zrZ2X3pZvkTiUa4_oyq17jjNOg_oc.ttf", - "300": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizAREVNn1dOx-zrZ2X3pZvkTi20-RIzoVrBicOg.ttf", - "300italic": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizGREVNn1dOx-zrZ2X3pZvkTiUa454xq17jjNOg_oc.ttf", - "regular": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizDREVNn1dOx-zrZ2X3pZvkThUY0TY7ikbI.ttf", - "italic": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizBREVNn1dOx-zrZ2X3pZvkTiUa2zIZj1bIkNo.ttf", - "500": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizAREVNn1dOx-zrZ2X3pZvkTi3s-BIzoVrBicOg.ttf", - "500italic": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizGREVNn1dOx-zrZ2X3pZvkTiUa48Ywq17jjNOg_oc.ttf", - "600": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizAREVNn1dOx-zrZ2X3pZvkTi3A_xIzoVrBicOg.ttf", - "600italic": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizGREVNn1dOx-zrZ2X3pZvkTiUa4-o3q17jjNOg_oc.ttf", - "700": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizAREVNn1dOx-zrZ2X3pZvkTi2k_hIzoVrBicOg.ttf", - "700italic": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizGREVNn1dOx-zrZ2X3pZvkTiUa4442q17jjNOg_oc.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibmplexserif/v20/jizDREVNn1dOx-zrZ2X3pZvkTiUZ2zI.ttf" - }, - { - "family": "IM Fell DW Pica", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/imfelldwpica/v16/2sDGZGRQotv9nbn2qSl0TxXVYNw9ZAPUvi88MQ.ttf", - "italic": "https://fonts.gstatic.com/s/imfelldwpica/v16/2sDEZGRQotv9nbn2qSl0TxXVYNwNZgnQnCosMXm0.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imfelldwpica/v16/2sDGZGRQotv9nbn2qSl0TxXVYNwNZQnQ.ttf" - }, - { - "family": "IM Fell DW Pica SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/imfelldwpicasc/v21/0ybjGCAu5PfqkvtGVU15aBhXz3EUrnTW-BiKEUiBGA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imfelldwpicasc/v21/0ybjGCAu5PfqkvtGVU15aBhXz3EUrnTm-RKO.ttf" - }, - { - "family": "IM Fell Double Pica", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v14", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/imfelldoublepica/v14/3XF2EqMq_94s9PeKF7Fg4gOKINyMtZ8rT0S1UL5Ayp0.ttf", - "italic": "https://fonts.gstatic.com/s/imfelldoublepica/v14/3XF0EqMq_94s9PeKF7Fg4gOKINyMtZ8rf0a_VJxF2p2G8g.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imfelldoublepica/v14/3XF2EqMq_94s9PeKF7Fg4gOKINyMtZ8rf0W_VA.ttf" - }, - { - "family": "IM Fell Double Pica SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/imfelldoublepicasc/v21/neIazDmuiMkFo6zj_sHpQ8teNbWlwBB_hXjJ4Y0Eeru2dGg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imfelldoublepicasc/v21/neIazDmuiMkFo6zj_sHpQ8teNbWlwBB_hXjJ0YwOfg.ttf" - }, - { - "family": "IM Fell English", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v14", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/imfellenglish/v14/Ktk1ALSLW8zDe0rthJysWrnLsAz3F6mZVY9Y5w.ttf", - "italic": "https://fonts.gstatic.com/s/imfellenglish/v14/Ktk3ALSLW8zDe0rthJysWrnLsAzHFaOdd4pI59zg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imfellenglish/v14/Ktk1ALSLW8zDe0rthJysWrnLsAzHFqOd.ttf" - }, - { - "family": "IM Fell English SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/imfellenglishsc/v16/a8IENpD3CDX-4zrWfr1VY879qFF05pZLO4gOg0shzA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imfellenglishsc/v16/a8IENpD3CDX-4zrWfr1VY879qFF05pZ7OoIK.ttf" - }, - { - "family": "IM Fell French Canon", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6ufiNtDWYfYc-tDiyiw08rrghJszkK6coVPt1ozoPz.ttf", - "italic": "https://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6gfiNtDWYfYc-tDiyiw08rrghJszkK6foXNNlKy5PzzrU.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6ufiNtDWYfYc-tDiyiw08rrghJszkK6foUNNk.ttf" - }, - { - "family": "IM Fell French Canon SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/imfellfrenchcanonsc/v23/FBVmdCru5-ifcor2bgq9V89khWcmQghEURY7H3c0UBCVIVqH.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imfellfrenchcanonsc/v23/FBVmdCru5-ifcor2bgq9V89khWcmQghEURY7H0c1WhQ.ttf" - }, - { - "family": "IM Fell Great Primer", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6aNwSJtayYxOkbYFsT6hMsLzX7u85rJorXvDo3SQY1.ttf", - "italic": "https://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6UNwSJtayYxOkbYFsT6hMsLzX7u85rJrrVtj4VTBY1N6U.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6aNwSJtayYxOkbYFsT6hMsLzX7u85rJrrWtj4.ttf" - }, - { - "family": "IM Fell Great Primer SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/imfellgreatprimersc/v21/ga6daxBOxyt6sCqz3fjZCTFCTUDMHagsQKdDTLf9BXz0s8FG.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imfellgreatprimersc/v21/ga6daxBOxyt6sCqz3fjZCTFCTUDMHagsQKdDTIf8D3g.ttf" - }, - { - "family": "Iansui", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-traditional", - "latin", - "latin-ext", - "symbols2" - ], - "version": "v7", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/iansui/v7/w8gbH2UoTuUp5bOajSGD1FcXoQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/iansui/v7/w8gbH2UoTuUp5bOqjCuH.ttf" - }, - { - "family": "Ibarra Real Nova", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/ibarrarealnova/v30/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXdg5MDtVT9TWIvS.ttf", - "500": "https://fonts.gstatic.com/s/ibarrarealnova/v30/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXdS5MDtVT9TWIvS.ttf", - "600": "https://fonts.gstatic.com/s/ibarrarealnova/v30/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXe-48DtVT9TWIvS.ttf", - "700": "https://fonts.gstatic.com/s/ibarrarealnova/v30/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXeH48DtVT9TWIvS.ttf", - "italic": "https://fonts.gstatic.com/s/ibarrarealnova/v30/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKopyiuXztxXZvSkTo.ttf", - "500italic": "https://fonts.gstatic.com/s/ibarrarealnova/v30/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKopxquXztxXZvSkTo.ttf", - "600italic": "https://fonts.gstatic.com/s/ibarrarealnova/v30/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKop_apXztxXZvSkTo.ttf", - "700italic": "https://fonts.gstatic.com/s/ibarrarealnova/v30/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKop8-pXztxXZvSkTo.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ibarrarealnova/v30/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXdg5PDsXzs.ttf" - }, - { - "family": "Iceberg", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v26", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/iceberg/v26/8QIJdijAiM7o-qnZuIgOq7jkAOw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/iceberg/v26/8QIJdijAiM7o-qnZiIkErw.ttf" - }, - { - "family": "Iceland", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/iceland/v22/rax9HiuFsdMNOnWPWKxGADBbg0s.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/iceland/v22/rax9HiuFsdMNOnWPaK1MBA.ttf" - }, - { - "family": "Imbue", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v29", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/imbue/v29/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP8iWfOsNNK-Q4xY.ttf", - "200": "https://fonts.gstatic.com/s/imbue/v29/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP0iXfOsNNK-Q4xY.ttf", - "300": "https://fonts.gstatic.com/s/imbue/v29/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP5aXfOsNNK-Q4xY.ttf", - "regular": "https://fonts.gstatic.com/s/imbue/v29/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP8iXfOsNNK-Q4xY.ttf", - "500": "https://fonts.gstatic.com/s/imbue/v29/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP_qXfOsNNK-Q4xY.ttf", - "600": "https://fonts.gstatic.com/s/imbue/v29/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoPxaQfOsNNK-Q4xY.ttf", - "700": "https://fonts.gstatic.com/s/imbue/v29/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoPy-QfOsNNK-Q4xY.ttf", - "800": "https://fonts.gstatic.com/s/imbue/v29/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP0iQfOsNNK-Q4xY.ttf", - "900": "https://fonts.gstatic.com/s/imbue/v29/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP2GQfOsNNK-Q4xY.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imbue/v29/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP8iXTOoHMA.ttf" - }, - { - "family": "Imperial Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/imperialscript/v8/5DCPAKrpzy_H98IV2ISnZBbGrVNvPenlvttWNg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imperialscript/v8/5DCPAKrpzy_H98IV2ISnZBbGrVNfPOPh.ttf" - }, - { - "family": "Imprima", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/imprima/v19/VEMxRoN7sY3yuy-7-oWHyDzktPo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/imprima/v19/VEMxRoN7sY3yuy-7yoSNzA.ttf" - }, - { - "family": "Inclusive Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk8C9biPuwflXcJ46P4PGWE08T-gfZusL0kQqtfLhtN7mxtc0bIsQ.ttf", - "regular": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk8C9biPuwflXcJ46P4PGWE08T-gfZusL0kQqtfcBtN7mxtc0bIsQ.ttf", - "500": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk8C9biPuwflXcJ46P4PGWE08T-gfZusL0kQqtfQhtN7mxtc0bIsQ.ttf", - "600": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk8C9biPuwflXcJ46P4PGWE08T-gfZusL0kQqtfrhxN7mxtc0bIsQ.ttf", - "700": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk8C9biPuwflXcJ46P4PGWE08T-gfZusL0kQqtflxxN7mxtc0bIsQ.ttf", - "300italic": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk-C9biPuwflXcJ46P4PGWE0-73swm22da-7KxKuFj7rWZpUUPYsTVx.ttf", - "italic": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk-C9biPuwflXcJ46P4PGWE0-73swm22da-7KxKuFilrWZpUUPYsTVx.ttf", - "500italic": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk-C9biPuwflXcJ46P4PGWE0-73swm22da-7KxKuFiXrWZpUUPYsTVx.ttf", - "600italic": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk-C9biPuwflXcJ46P4PGWE0-73swm22da-7KxKuFh7qmZpUUPYsTVx.ttf", - "700italic": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk-C9biPuwflXcJ46P4PGWE0-73swm22da-7KxKuFhCqmZpUUPYsTVx.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/inclusivesans/v4/0nk8C9biPuwflXcJ46P4PGWE08T-gfZusL0kQqtfcBt972Zp.ttf" - }, - { - "family": "Inconsolata", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v37", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7LppwU8aRr8lleY2co.ttf", - "300": "https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp9s8aRr8lleY2co.ttf", - "regular": "https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp4U8aRr8lleY2co.ttf", - "500": "https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp7c8aRr8lleY2co.ttf", - "600": "https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp1s7aRr8lleY2co.ttf", - "700": "https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp2I7aRr8lleY2co.ttf", - "800": "https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7LppwU7aRr8lleY2co.ttf", - "900": "https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lppyw7aRr8lleY2co.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp4U8WRv2kg.ttf" - }, - { - "family": "Inder", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/inder/v15/w8gUH2YoQe8_4vq6pw-P3U4O.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/inder/v15/w8gUH2YoQe8_4sq7rQs.ttf" - }, - { - "family": "Indie Flower", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/indieflower/v24/m8JVjfNVeKWVnh3QMuKkFcZlbkGG1dKEDw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/indieflower/v24/m8JVjfNVeKWVnh3QMuKkFcZVb0uC.ttf" - }, - { - "family": "Ingrid Darling", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/ingriddarling/v7/LDIrapaJNxUtSuFdw-9yf4rCPsLOub458jGL.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ingriddarling/v7/LDIrapaJNxUtSuFdw-9yf4rCPvLPs7o.ttf" - }, - { - "family": "Inika", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/inika/v22/rnCm-x5X3QP-phTHRcc2s2XH.ttf", - "700": "https://fonts.gstatic.com/s/inika/v22/rnCr-x5X3QP-pix7auM-mHnOSOuk.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/inika/v22/rnCm-x5X3QP-piTGT8M.ttf" - }, - { - "family": "Inknut Antiqua", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/inknutantiqua/v16/Y4GRYax7VC4ot_qNB4nYpBdaKU2vwrj5bBoIYJNf.ttf", - "regular": "https://fonts.gstatic.com/s/inknutantiqua/v16/Y4GSYax7VC4ot_qNB4nYpBdaKXUD6pzxRwYB.ttf", - "500": "https://fonts.gstatic.com/s/inknutantiqua/v16/Y4GRYax7VC4ot_qNB4nYpBdaKU33w7j5bBoIYJNf.ttf", - "600": "https://fonts.gstatic.com/s/inknutantiqua/v16/Y4GRYax7VC4ot_qNB4nYpBdaKU3bxLj5bBoIYJNf.ttf", - "700": "https://fonts.gstatic.com/s/inknutantiqua/v16/Y4GRYax7VC4ot_qNB4nYpBdaKU2_xbj5bBoIYJNf.ttf", - "800": "https://fonts.gstatic.com/s/inknutantiqua/v16/Y4GRYax7VC4ot_qNB4nYpBdaKU2jxrj5bBoIYJNf.ttf", - "900": "https://fonts.gstatic.com/s/inknutantiqua/v16/Y4GRYax7VC4ot_qNB4nYpBdaKU2Hx7j5bBoIYJNf.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/inknutantiqua/v16/Y4GSYax7VC4ot_qNB4nYpBdaKUUC4Jg.ttf" - }, - { - "family": "Inria Sans", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/inriasans/v15/ptRPTiqXYfZMCOiVj9kQ3ELaDQtFqeY3fX4.ttf", - "300italic": "https://fonts.gstatic.com/s/inriasans/v15/ptRRTiqXYfZMCOiVj9kQ1OzAgQlPrcQybX4pQA.ttf", - "regular": "https://fonts.gstatic.com/s/inriasans/v15/ptRMTiqXYfZMCOiVj9kQ5O7yKQNute8.ttf", - "italic": "https://fonts.gstatic.com/s/inriasans/v15/ptROTiqXYfZMCOiVj9kQ1Oz4LSFrpe8uZA.ttf", - "700": "https://fonts.gstatic.com/s/inriasans/v15/ptRPTiqXYfZMCOiVj9kQ3FLdDQtFqeY3fX4.ttf", - "700italic": "https://fonts.gstatic.com/s/inriasans/v15/ptRRTiqXYfZMCOiVj9kQ1OzAkQ5PrcQybX4pQA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/inriasans/v15/ptRMTiqXYfZMCOiVj9kQ1O_4LQ.ttf" - }, - { - "family": "Inria Serif", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/inriaserif/v18/fC14PYxPY3rXxEndZJAzN3wAVQjFhFyta3xN.ttf", - "300italic": "https://fonts.gstatic.com/s/inriaserif/v18/fC16PYxPY3rXxEndZJAzN3SuT4THjliPbmxN0_E.ttf", - "regular": "https://fonts.gstatic.com/s/inriaserif/v18/fC1lPYxPY3rXxEndZJAzN0SsfSzNr0Ck.ttf", - "italic": "https://fonts.gstatic.com/s/inriaserif/v18/fC1nPYxPY3rXxEndZJAzN3SudyjvqlCkcmU.ttf", - "700": "https://fonts.gstatic.com/s/inriaserif/v18/fC14PYxPY3rXxEndZJAzN3wQUgjFhFyta3xN.ttf", - "700italic": "https://fonts.gstatic.com/s/inriaserif/v18/fC16PYxPY3rXxEndZJAzN3SuT5TAjliPbmxN0_E.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/inriaserif/v18/fC1lPYxPY3rXxEndZJAzN3Stdyg.ttf" - }, - { - "family": "Inspiration", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/inspiration/v7/x3dkckPPZa6L4wIg5cZOEvoGnSrlBBsy.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/inspiration/v7/x3dkckPPZa6L4wIg5cZOEsoHly4.ttf" - }, - { - "family": "Instrument Sans", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/instrumentsans/v4/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSTF-Qf1mS0v3_7Y.ttf", - "500": "https://fonts.gstatic.com/s/instrumentsans/v4/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npST3-Qf1mS0v3_7Y.ttf", - "600": "https://fonts.gstatic.com/s/instrumentsans/v4/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSQb_gf1mS0v3_7Y.ttf", - "700": "https://fonts.gstatic.com/s/instrumentsans/v4/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSQi_gf1mS0v3_7Y.ttf", - "italic": "https://fonts.gstatic.com/s/instrumentsans/v4/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENuu-2kykN2u7YUwU.ttf", - "500italic": "https://fonts.gstatic.com/s/instrumentsans/v4/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENut22kykN2u7YUwU.ttf", - "600italic": "https://fonts.gstatic.com/s/instrumentsans/v4/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENujGxkykN2u7YUwU.ttf", - "700italic": "https://fonts.gstatic.com/s/instrumentsans/v4/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENugixkykN2u7YUwU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/instrumentsans/v4/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSTF-Tf0kyk.ttf" - }, - { - "family": "Instrument Serif", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/instrumentserif/v5/jizBRFtNs2ka5fXjeivQ4LroWlx-2zIZj1bIkNo.ttf", - "italic": "https://fonts.gstatic.com/s/instrumentserif/v5/jizHRFtNs2ka5fXjeivQ4LroWlx-6zATi3TNgNq55w.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/instrumentserif/v5/jizBRFtNs2ka5fXjeivQ4LroWlx-6zMTiw.ttf" - }, - { - "family": "Intel One Mono", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "symbols2", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-07-16", - "files": { - "300": "https://fonts.gstatic.com/s/intelonemono/v2/P5sWzZuLY8Lb_G1RikFkwPjBvuM8LXucmoHDSAMg__cRnD9TMr2nYA.ttf", - "300italic": "https://fonts.gstatic.com/s/intelonemono/v2/P5sUzZuLY8Lb_G1RikFkwPjBvsk1H4RE8-pZ5gQ1abSn3zVXELi3YD27.ttf", - "regular": "https://fonts.gstatic.com/s/intelonemono/v2/P5sWzZuLY8Lb_G1RikFkwPjBvuM8LXucmoHDSAMgofcRnD9TMr2nYA.ttf", - "italic": "https://fonts.gstatic.com/s/intelonemono/v2/P5sUzZuLY8Lb_G1RikFkwPjBvsk1H4RE8-pZ5gQ1abT53zVXELi3YD27.ttf", - "500": "https://fonts.gstatic.com/s/intelonemono/v2/P5sWzZuLY8Lb_G1RikFkwPjBvuM8LXucmoHDSAMgk_cRnD9TMr2nYA.ttf", - "500italic": "https://fonts.gstatic.com/s/intelonemono/v2/P5sUzZuLY8Lb_G1RikFkwPjBvsk1H4RE8-pZ5gQ1abTL3zVXELi3YD27.ttf", - "600": "https://fonts.gstatic.com/s/intelonemono/v2/P5sWzZuLY8Lb_G1RikFkwPjBvuM8LXucmoHDSAMgf_ARnD9TMr2nYA.ttf", - "600italic": "https://fonts.gstatic.com/s/intelonemono/v2/P5sUzZuLY8Lb_G1RikFkwPjBvsk1H4RE8-pZ5gQ1abQn2DVXELi3YD27.ttf", - "700": "https://fonts.gstatic.com/s/intelonemono/v2/P5sWzZuLY8Lb_G1RikFkwPjBvuM8LXucmoHDSAMgRvARnD9TMr2nYA.ttf", - "700italic": "https://fonts.gstatic.com/s/intelonemono/v2/P5sUzZuLY8Lb_G1RikFkwPjBvsk1H4RE8-pZ5gQ1abQe2DVXELi3YD27.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/intelonemono/v2/P5sWzZuLY8Lb_G1RikFkwPjBvuM8LXucmoHDSAMgofchnTVX.ttf" - }, - { - "family": "Inter", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuLyeMZhrib2Bg-4.ttf", - "200": "https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuDyfMZhrib2Bg-4.ttf", - "300": "https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuOKfMZhrib2Bg-4.ttf", - "regular": "https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuLyfMZhrib2Bg-4.ttf", - "500": "https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuI6fMZhrib2Bg-4.ttf", - "600": "https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuGKYMZhrib2Bg-4.ttf", - "700": "https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuFuYMZhrib2Bg-4.ttf", - "800": "https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuDyYMZhrib2Bg-4.ttf", - "900": "https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuBWYMZhrib2Bg-4.ttf", - "100italic": "https://fonts.gstatic.com/s/inter/v20/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTc2dphjZ-Ek-7MeA.ttf", - "200italic": "https://fonts.gstatic.com/s/inter/v20/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTcWdthjZ-Ek-7MeA.ttf", - "300italic": "https://fonts.gstatic.com/s/inter/v20/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTch9thjZ-Ek-7MeA.ttf", - "italic": "https://fonts.gstatic.com/s/inter/v20/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTc2dthjZ-Ek-7MeA.ttf", - "500italic": "https://fonts.gstatic.com/s/inter/v20/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTc69thjZ-Ek-7MeA.ttf", - "600italic": "https://fonts.gstatic.com/s/inter/v20/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTcB9xhjZ-Ek-7MeA.ttf", - "700italic": "https://fonts.gstatic.com/s/inter/v20/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTcPtxhjZ-Ek-7MeA.ttf", - "800italic": "https://fonts.gstatic.com/s/inter/v20/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTcWdxhjZ-Ek-7MeA.ttf", - "900italic": "https://fonts.gstatic.com/s/inter/v20/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTccNxhjZ-Ek-7MeA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuLyfAZlhjQ.ttf" - }, - { - "family": "Inter Tight", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjDw6qXCRToK8EPg.ttf", - "200": "https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjjw-qXCRToK8EPg.ttf", - "300": "https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjUQ-qXCRToK8EPg.ttf", - "regular": "https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjDw-qXCRToK8EPg.ttf", - "500": "https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjPQ-qXCRToK8EPg.ttf", - "600": "https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mj0QiqXCRToK8EPg.ttf", - "700": "https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mj6AiqXCRToK8EPg.ttf", - "800": "https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjjwiqXCRToK8EPg.ttf", - "900": "https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjpgiqXCRToK8EPg.ttf", - "100italic": "https://fonts.gstatic.com/s/intertight/v9/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xCHi5XgqoUPvi5.ttf", - "200italic": "https://fonts.gstatic.com/s/intertight/v9/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zCHy5XgqoUPvi5.ttf", - "300italic": "https://fonts.gstatic.com/s/intertight/v9/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0wcHy5XgqoUPvi5.ttf", - "italic": "https://fonts.gstatic.com/s/intertight/v9/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xCHy5XgqoUPvi5.ttf", - "500italic": "https://fonts.gstatic.com/s/intertight/v9/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xwHy5XgqoUPvi5.ttf", - "600italic": "https://fonts.gstatic.com/s/intertight/v9/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0ycGC5XgqoUPvi5.ttf", - "700italic": "https://fonts.gstatic.com/s/intertight/v9/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0ylGC5XgqoUPvi5.ttf", - "800italic": "https://fonts.gstatic.com/s/intertight/v9/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zCGC5XgqoUPvi5.ttf", - "900italic": "https://fonts.gstatic.com/s/intertight/v9/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zrGC5XgqoUPvi5.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjDw-aXS5X.ttf" - }, - { - "family": "Irish Grover", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v23", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/irishgrover/v23/buExpoi6YtLz2QW7LA4flVgf-P5Oaiw4cw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/irishgrover/v23/buExpoi6YtLz2QW7LA4flVgv-fRK.ttf" - }, - { - "family": "Island Moments", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/islandmoments/v8/NaPBcZfVGvBdxIt7Ar0qzkXJF-TGIohbZ6SY.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/islandmoments/v8/NaPBcZfVGvBdxIt7Ar0qzkXJF9THKIw.ttf" - }, - { - "family": "Istok Web", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/istokweb/v26/3qTvojGmgSyUukBzKslZAWF-9kIIaQ.ttf", - "italic": "https://fonts.gstatic.com/s/istokweb/v26/3qTpojGmgSyUukBzKslpA2t61EcYaQ7F.ttf", - "700": "https://fonts.gstatic.com/s/istokweb/v26/3qTqojGmgSyUukBzKslhvU5a_mkUYBfcMw.ttf", - "700italic": "https://fonts.gstatic.com/s/istokweb/v26/3qT0ojGmgSyUukBzKslpA1PG-2MQQhLMMygN.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/istokweb/v26/3qTvojGmgSyUukBzKslpAGt6.ttf" - }, - { - "family": "Italiana", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/italiana/v21/QldNNTtLsx4E__B0XTmRY31Wx7Vv.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/italiana/v21/QldNNTtLsx4E__B0XQmQaXk.ttf" - }, - { - "family": "Italianno", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/italianno/v18/dg4n_p3sv6gCJkwzT6Rnj5YpQwM-gg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/italianno/v18/dg4n_p3sv6gCJkwzT6RXjpwt.ttf" - }, - { - "family": "Itim", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/itim/v16/0nknC9ziJOYewARKkc7ZdwU.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/itim/v16/0nknC9ziJOYe8AVAlQ.ttf" - }, - { - "family": "Jacquard 12", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v8", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jacquard12/v8/vm8ydRLuXETEweL79J4rGc3JUnr34c9-.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jacquard12/v8/vm8ydRLuXETEweL79J4rGf3IWH4.ttf" - }, - { - "family": "Jacquard 12 Charted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jacquard12charted/v4/i7dWIE97bzCOB9Q_Up6PQmYfKDPIb2HwT3StZ9jetKY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jacquard12charted/v4/i7dWIE97bzCOB9Q_Up6PQmYfKDPIb2Hwf3WnYw.ttf" - }, - { - "family": "Jacquard 24", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jacquard24/v4/jVyO7nf_B2zO5jVpUGU8lgQEdchf9xXp.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jacquard24/v4/jVyO7nf_B2zO5jVpUGU8ljQFf8w.ttf" - }, - { - "family": "Jacquard 24 Charted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jacquard24charted/v5/mtGm4-dNK6HaudrE9VVKhENTsEXEYish0iRrMYJ_K-4.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jacquard24charted/v5/mtGm4-dNK6HaudrE9VVKhENTsEXEYish4iVhNQ.ttf" - }, - { - "family": "Jacquarda Bastarda 9", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v6", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jacquardabastarda9/v6/f0Xp0fWr_8t6WFtKQJfOhaC0hcZ1HYAMAbwD1TB_JHHY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jacquardabastarda9/v6/f0Xp0fWr_8t6WFtKQJfOhaC0hcZ1HYAMAYwC3zQ.ttf" - }, - { - "family": "Jacquarda Bastarda 9 Charted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jacquardabastarda9charted/v4/Yq6D-KaMUyfq4qLgx19A_ocp43FeLd9m0vDxm-yf8JPuf0cPaL8pmQg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jacquardabastarda9charted/v4/Yq6D-KaMUyfq4qLgx19A_ocp43FeLd9m0vDxm-yf8JPuT0YFbA.ttf" - }, - { - "family": "Jacques Francois", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v26", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/jacquesfrancois/v26/ZXu9e04ZvKeOOHIe1TMahbcIU2cgmcPqoeRWfbs.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jacquesfrancois/v26/ZXu9e04ZvKeOOHIe1TMahbcIU2cgqcLgpQ.ttf" - }, - { - "family": "Jacques Francois Shadow", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v27", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/jacquesfrancoisshadow/v27/KR1FBtOz8PKTMk-kqdkLVrvR0ECFrB6Pin-2_q8VsHuV5ULS.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jacquesfrancoisshadow/v27/KR1FBtOz8PKTMk-kqdkLVrvR0ECFrB6Pin-2_p8Uun8.ttf" - }, - { - "family": "Jaini", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/jaini/v1/fC1vPYJMbGHQzEmOK-ZSUHyt.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jaini/v1/fC1vPYJMbGHQzHmPIeI.ttf" - }, - { - "family": "Jaini Purva", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/jainipurva/v1/CHynV-vdHVXwbWcUswbUGHoOHH4sj3lR.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jainipurva/v1/CHynV-vdHVXwbWcUswbUGEoPFno.ttf" - }, - { - "family": "Jaldi", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/jaldi/v14/or3sQ67z0_CI30NUZpD_B6g8.ttf", - "700": "https://fonts.gstatic.com/s/jaldi/v14/or3hQ67z0_CI33voSbT3LLQ1niPn.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jaldi/v14/or3sQ67z0_CI33NVbJQ.ttf" - }, - { - "family": "Jaro", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/jaro/v8/ea8DadQwV_r_Rv3-7zZMCGhQgVr1SlCsNP3VpQ_a.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jaro/v8/ea8DadQwV_r_Rv3-7zZMCGhQgVr1SmCtPvk.ttf" - }, - { - "family": "Jersey 10", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jersey10/v4/GftH7vZKsggXMf9n_J5X-JLgy1wtSw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jersey10/v4/GftH7vZKsggXMf9n_J5n-Zjk.ttf" - }, - { - "family": "Jersey 10 Charted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jersey10charted/v4/oY1E8fPFr6XiNWqEp90XSbwUGfF8SnedKmeBvEYs.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jersey10charted/v4/oY1E8fPFr6XiNWqEp90XSbwUGfF8SkecIGM.ttf" - }, - { - "family": "Jersey 15", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jersey15/v4/_6_9EDzuROGsUuk2TWjSYoohsCkvSQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jersey15/v4/_6_9EDzuROGsUuk2TWjiY4Al.ttf" - }, - { - "family": "Jersey 15 Charted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jersey15charted/v4/nuFjD-rCQIjoVp1Sva2ToCTudGbLeRv4r2024gxi.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jersey15charted/v4/nuFjD-rCQIjoVp1Sva2ToCTudGbLeSv5pWk.ttf" - }, - { - "family": "Jersey 20", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jersey20/v4/ZgNRjP1ON6jeW4D12z3crE_qP4mXuQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jersey20/v4/ZgNRjP1ON6jeW4D12z3srUXu.ttf" - }, - { - "family": "Jersey 20 Charted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jersey20charted/v4/JTUNjJMy9DKq5FzVaj9tpgYgvHqGn_Z1ji-rqnQ_.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jersey20charted/v4/JTUNjJMy9DKq5FzVaj9tpgYgvHqGn8Z0hCs.ttf" - }, - { - "family": "Jersey 25", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jersey25/v4/ll8-K2eeXj2tAs6F9BXIJ4AMng8ChA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jersey25/v4/ll8-K2eeXj2tAs6F9BX4JooI.ttf" - }, - { - "family": "Jersey 25 Charted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/jersey25charted/v3/6NUM8EWHIhCWbxOqtLkv94Rlu6EkGv2uUGQW93Cg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jersey25charted/v3/6NUM8EWHIhCWbxOqtLkv94Rlu6EkGs2vWmA.ttf" - }, - { - "family": "JetBrains Mono", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yK1jPVmUsaaDhw.ttf", - "200": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8SKxjPVmUsaaDhw.ttf", - "300": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8lqxjPVmUsaaDhw.ttf", - "regular": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKxjPVmUsaaDhw.ttf", - "500": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8-qxjPVmUsaaDhw.ttf", - "600": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8FqtjPVmUsaaDhw.ttf", - "700": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8L6tjPVmUsaaDhw.ttf", - "800": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8SKtjPVmUsaaDhw.ttf", - "100italic": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-Lf1OQk6OThxPA.ttf", - "200italic": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO8LflOQk6OThxPA.ttf", - "300italic": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO_VflOQk6OThxPA.ttf", - "italic": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-LflOQk6OThxPA.ttf", - "500italic": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-5flOQk6OThxPA.ttf", - "600italic": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO9VeVOQk6OThxPA.ttf", - "700italic": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO9seVOQk6OThxPA.ttf", - "800italic": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO8LeVOQk6OThxPA.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKxTPFOQ.ttf" - }, - { - "family": "Jim Nightshade", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/jimnightshade/v21/PlIkFlu9Pb08Q8HLM1PxmB0g-OS4V3qKaMxD.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jimnightshade/v21/PlIkFlu9Pb08Q8HLM1PxmB0g-NS5XX4.ttf" - }, - { - "family": "Joan", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/joan/v12/ZXupe1oZsqWRbRdH8X1p_Ng.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/joan/v12/ZXupe1oZsqWRXRZN9Q.ttf" - }, - { - "family": "Jockey One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/jockeyone/v23/HTxpL2g2KjCFj4x8WI6ArIb7HYOk4xc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jockeyone/v23/HTxpL2g2KjCFj4x8WI6AnIfxGQ.ttf" - }, - { - "family": "Jolly Lodger", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/jollylodger/v21/BXRsvFTAh_bGkA1uQ48dlB3VWerT3ZyuqA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jollylodger/v21/BXRsvFTAh_bGkA1uQ48dlB3lWODX.ttf" - }, - { - "family": "Jomhuria", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/jomhuria/v22/Dxxp8j-TMXf-llKur2b1MOGbC3Dh.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jomhuria/v22/Dxxp8j-TMXf-llKur1b0OuU.ttf" - }, - { - "family": "Jomolhari", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "tibetan" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/jomolhari/v21/EvONzA1M1Iw_CBd2hsQCF1IZKq5INg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jomolhari/v21/EvONzA1M1Iw_CBd2hsQyFlgd.ttf" - }, - { - "family": "Josefin Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v34", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjRXMFrLgTsQV0.ttf", - "200": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_LjQXMFrLgTsQV0.ttf", - "300": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_GbQXMFrLgTsQV0.ttf", - "regular": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjQXMFrLgTsQV0.ttf", - "500": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_ArQXMFrLgTsQV0.ttf", - "600": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_ObXXMFrLgTsQV0.ttf", - "700": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_N_XXMFrLgTsQV0.ttf", - "100italic": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTtINhKibpUV3MEQ.ttf", - "200italic": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTNIJhKibpUV3MEQ.ttf", - "300italic": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCT6oJhKibpUV3MEQ.ttf", - "italic": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTtIJhKibpUV3MEQ.ttf", - "500italic": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCThoJhKibpUV3MEQ.ttf", - "600italic": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTaoVhKibpUV3MEQ.ttf", - "700italic": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTU4VhKibpUV3MEQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/josefinsans/v34/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjQbMBhKg.ttf" - }, - { - "family": "Josefin Slab", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v29", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/josefinslab/v29/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W71mtd3k3K6CcEyI.ttf", - "200": "https://fonts.gstatic.com/s/josefinslab/v29/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W79msd3k3K6CcEyI.ttf", - "300": "https://fonts.gstatic.com/s/josefinslab/v29/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W7wesd3k3K6CcEyI.ttf", - "regular": "https://fonts.gstatic.com/s/josefinslab/v29/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W71msd3k3K6CcEyI.ttf", - "500": "https://fonts.gstatic.com/s/josefinslab/v29/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W72usd3k3K6CcEyI.ttf", - "600": "https://fonts.gstatic.com/s/josefinslab/v29/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W74erd3k3K6CcEyI.ttf", - "700": "https://fonts.gstatic.com/s/josefinslab/v29/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W776rd3k3K6CcEyI.ttf", - "100italic": "https://fonts.gstatic.com/s/josefinslab/v29/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvnzs9L4KZAyK43w.ttf", - "200italic": "https://fonts.gstatic.com/s/josefinslab/v29/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvHzo9L4KZAyK43w.ttf", - "300italic": "https://fonts.gstatic.com/s/josefinslab/v29/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvwTo9L4KZAyK43w.ttf", - "italic": "https://fonts.gstatic.com/s/josefinslab/v29/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvnzo9L4KZAyK43w.ttf", - "500italic": "https://fonts.gstatic.com/s/josefinslab/v29/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvrTo9L4KZAyK43w.ttf", - "600italic": "https://fonts.gstatic.com/s/josefinslab/v29/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvQT09L4KZAyK43w.ttf", - "700italic": "https://fonts.gstatic.com/s/josefinslab/v29/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHveD09L4KZAyK43w.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/josefinslab/v29/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W71msR3g9Lw.ttf" - }, - { - "family": "Jost", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/jost/v20/92zPtBhPNqw79Ij1E865zBUv7myjJAVGPokMmuHL.ttf", - "200": "https://fonts.gstatic.com/s/jost/v20/92zPtBhPNqw79Ij1E865zBUv7mwjJQVGPokMmuHL.ttf", - "300": "https://fonts.gstatic.com/s/jost/v20/92zPtBhPNqw79Ij1E865zBUv7mz9JQVGPokMmuHL.ttf", - "regular": "https://fonts.gstatic.com/s/jost/v20/92zPtBhPNqw79Ij1E865zBUv7myjJQVGPokMmuHL.ttf", - "500": "https://fonts.gstatic.com/s/jost/v20/92zPtBhPNqw79Ij1E865zBUv7myRJQVGPokMmuHL.ttf", - "600": "https://fonts.gstatic.com/s/jost/v20/92zPtBhPNqw79Ij1E865zBUv7mx9IgVGPokMmuHL.ttf", - "700": "https://fonts.gstatic.com/s/jost/v20/92zPtBhPNqw79Ij1E865zBUv7mxEIgVGPokMmuHL.ttf", - "800": "https://fonts.gstatic.com/s/jost/v20/92zPtBhPNqw79Ij1E865zBUv7mwjIgVGPokMmuHL.ttf", - "900": "https://fonts.gstatic.com/s/jost/v20/92zPtBhPNqw79Ij1E865zBUv7mwKIgVGPokMmuHL.ttf", - "100italic": "https://fonts.gstatic.com/s/jost/v20/92zJtBhPNqw73oHH7BbQp4-B6XlrZu0ENI0un_HLMEo.ttf", - "200italic": "https://fonts.gstatic.com/s/jost/v20/92zJtBhPNqw73oHH7BbQp4-B6XlrZm0FNI0un_HLMEo.ttf", - "300italic": "https://fonts.gstatic.com/s/jost/v20/92zJtBhPNqw73oHH7BbQp4-B6XlrZrMFNI0un_HLMEo.ttf", - "italic": "https://fonts.gstatic.com/s/jost/v20/92zJtBhPNqw73oHH7BbQp4-B6XlrZu0FNI0un_HLMEo.ttf", - "500italic": "https://fonts.gstatic.com/s/jost/v20/92zJtBhPNqw73oHH7BbQp4-B6XlrZt8FNI0un_HLMEo.ttf", - "600italic": "https://fonts.gstatic.com/s/jost/v20/92zJtBhPNqw73oHH7BbQp4-B6XlrZjMCNI0un_HLMEo.ttf", - "700italic": "https://fonts.gstatic.com/s/jost/v20/92zJtBhPNqw73oHH7BbQp4-B6XlrZgoCNI0un_HLMEo.ttf", - "800italic": "https://fonts.gstatic.com/s/jost/v20/92zJtBhPNqw73oHH7BbQp4-B6XlrZm0CNI0un_HLMEo.ttf", - "900italic": "https://fonts.gstatic.com/s/jost/v20/92zJtBhPNqw73oHH7BbQp4-B6XlrZkQCNI0un_HLMEo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jost/v20/92zPtBhPNqw79Ij1E865zBUv7myjJTVHNI0.ttf" - }, - { - "family": "Joti One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/jotione/v28/Z9XVDmdJQAmWm9TwaYTe4u2El6GC.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jotione/v28/Z9XVDmdJQAmWm9TwabTf6Ok.ttf" - }, - { - "family": "Jua", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/jua/v18/co3KmW9ljjAjc-DZCsKgsg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jua/v18/co3KmW9ljjATcurd.ttf" - }, - { - "family": "Judson", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/judson/v20/FeVRS0Fbvbc14VxRD7N01bV7kg.ttf", - "italic": "https://fonts.gstatic.com/s/judson/v20/FeVTS0Fbvbc14VxhDblw97BrknZf.ttf", - "700": "https://fonts.gstatic.com/s/judson/v20/FeVSS0Fbvbc14Vxps5xQ3Z5nm29Gww.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/judson/v20/FeVRS0Fbvbc14VxhDrlw.ttf" - }, - { - "family": "Julee", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/julee/v26/TuGfUVB3RpZPQ6ZLodgzydtk.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/julee/v26/TuGfUVB3RpZPQ5ZKq9w.ttf" - }, - { - "family": "Julius Sans One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/juliussansone/v20/1Pt2g8TAX_SGgBGUi0tGOYEga5W-xXEW6aGXHw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/juliussansone/v20/1Pt2g8TAX_SGgBGUi0tGOYEga5WOxHsS.ttf" - }, - { - "family": "Junge", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v26", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/junge/v26/gokgH670Gl1lUqAdvhB7SnKm.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/junge/v26/gokgH670Gl1lUpActBQ.ttf" - }, - { - "family": "Jura", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "kayah-li", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v34", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/jura/v34/z7NOdRfiaC4Vd8hhoPzfb5vBTP0D7auhTfmrH_rt.ttf", - "regular": "https://fonts.gstatic.com/s/jura/v34/z7NOdRfiaC4Vd8hhoPzfb5vBTP1d7auhTfmrH_rt.ttf", - "500": "https://fonts.gstatic.com/s/jura/v34/z7NOdRfiaC4Vd8hhoPzfb5vBTP1v7auhTfmrH_rt.ttf", - "600": "https://fonts.gstatic.com/s/jura/v34/z7NOdRfiaC4Vd8hhoPzfb5vBTP2D6quhTfmrH_rt.ttf", - "700": "https://fonts.gstatic.com/s/jura/v34/z7NOdRfiaC4Vd8hhoPzfb5vBTP266quhTfmrH_rt.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/jura/v34/z7NOdRfiaC4Vd8hhoPzfb5vBTP1d7ZugR_0.ttf" - }, - { - "family": "Just Another Hand", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/justanotherhand/v21/845CNN4-AJyIGvIou-6yJKyptyOpOcr_BmmlS5aw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/justanotherhand/v21/845CNN4-AJyIGvIou-6yJKyptyOpOfr-DG0.ttf" - }, - { - "family": "Just Me Again Down Here", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/justmeagaindownhere/v25/MwQmbgXtz-Wc6RUEGNMc0QpRrfUh2hSdBBMoAuwHvqDwc_fg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/justmeagaindownhere/v25/MwQmbgXtz-Wc6RUEGNMc0QpRrfUh2hSdBBMoAtwGtKQ.ttf" - }, - { - "family": "K2D", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/k2d/v13/J7aRnpF2V0ErE6UpvrIw74NL.ttf", - "100italic": "https://fonts.gstatic.com/s/k2d/v13/J7afnpF2V0EjdZ1NtLYS6pNLAjk.ttf", - "200": "https://fonts.gstatic.com/s/k2d/v13/J7aenpF2V0Erv4QJlJw85ppSGw.ttf", - "200italic": "https://fonts.gstatic.com/s/k2d/v13/J7acnpF2V0EjdZ3hlZY4xJ9CGyAa.ttf", - "300": "https://fonts.gstatic.com/s/k2d/v13/J7aenpF2V0Er24cJlJw85ppSGw.ttf", - "300italic": "https://fonts.gstatic.com/s/k2d/v13/J7acnpF2V0EjdZ2FlpY4xJ9CGyAa.ttf", - "regular": "https://fonts.gstatic.com/s/k2d/v13/J7aTnpF2V0ETd68tnLcg7w.ttf", - "italic": "https://fonts.gstatic.com/s/k2d/v13/J7aRnpF2V0EjdaUpvrIw74NL.ttf", - "500": "https://fonts.gstatic.com/s/k2d/v13/J7aenpF2V0Erg4YJlJw85ppSGw.ttf", - "500italic": "https://fonts.gstatic.com/s/k2d/v13/J7acnpF2V0EjdZ3dl5Y4xJ9CGyAa.ttf", - "600": "https://fonts.gstatic.com/s/k2d/v13/J7aenpF2V0Err4EJlJw85ppSGw.ttf", - "600italic": "https://fonts.gstatic.com/s/k2d/v13/J7acnpF2V0EjdZ3xkJY4xJ9CGyAa.ttf", - "700": "https://fonts.gstatic.com/s/k2d/v13/J7aenpF2V0Ery4AJlJw85ppSGw.ttf", - "700italic": "https://fonts.gstatic.com/s/k2d/v13/J7acnpF2V0EjdZ2VkZY4xJ9CGyAa.ttf", - "800": "https://fonts.gstatic.com/s/k2d/v13/J7aenpF2V0Er14MJlJw85ppSGw.ttf", - "800italic": "https://fonts.gstatic.com/s/k2d/v13/J7acnpF2V0EjdZ2JkpY4xJ9CGyAa.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/k2d/v13/J7aTnpF2V0EjdqUp.ttf" - }, - { - "family": "Kablammo", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "emoji", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/kablammo/v4/bWtm7fHPcgrhC-J3lcXhcQTY5Ixs6Au9YgCjjx0Rf4YDKw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kablammo/v4/bWtm7fHPcgrhC-J3lcXhcQTY5Ixs6Au9YgCTjhcV.ttf" - }, - { - "family": "Kadwa", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin" - ], - "version": "v13", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/kadwa/v13/rnCm-x5V0g7iphTHRcc2s2XH.ttf", - "700": "https://fonts.gstatic.com/s/kadwa/v13/rnCr-x5V0g7ipix7auM-mHnOSOuk.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kadwa/v13/rnCm-x5V0g7ipiTGT8M.ttf" - }, - { - "family": "Kaisei Decol", - "variants": [ - "regular", - "500", - "700" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/kaiseidecol/v11/bMrwmSqP45sidWf3QmfFW6iyW1EP22OjoA.ttf", - "500": "https://fonts.gstatic.com/s/kaiseidecol/v11/bMrvmSqP45sidWf3QmfFW6iKr3gr00i_qb57kA.ttf", - "700": "https://fonts.gstatic.com/s/kaiseidecol/v11/bMrvmSqP45sidWf3QmfFW6iK534r00i_qb57kA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kaiseidecol/v11/bMrwmSqP45sidWf3QmfFW6iCWlsL.ttf" - }, - { - "family": "Kaisei HarunoUmi", - "variants": [ - "regular", - "500", - "700" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/kaiseiharunoumi/v11/HI_RiZQSLqBQoAHhK_C6N_nzy_jcGsv5sM8u3mk.ttf", - "500": "https://fonts.gstatic.com/s/kaiseiharunoumi/v11/HI_WiZQSLqBQoAHhK_C6N_nzy_jcIj_QlMcFwmC9FAU.ttf", - "700": "https://fonts.gstatic.com/s/kaiseiharunoumi/v11/HI_WiZQSLqBQoAHhK_C6N_nzy_jcInfWlMcFwmC9FAU.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kaiseiharunoumi/v11/HI_RiZQSLqBQoAHhK_C6N_nzy_jcKsrztA.ttf" - }, - { - "family": "Kaisei Opti", - "variants": [ - "regular", - "500", - "700" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/kaiseiopti/v11/QldKNThJphYb8_g6c2nlIFle7KlmxuHx.ttf", - "500": "https://fonts.gstatic.com/s/kaiseiopti/v11/QldXNThJphYb8_g6c2nlIGGqxY1u7f34DYwn.ttf", - "700": "https://fonts.gstatic.com/s/kaiseiopti/v11/QldXNThJphYb8_g6c2nlIGHiw41u7f34DYwn.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kaiseiopti/v11/QldKNThJphYb8_g6c2nlIGlf5q0.ttf" - }, - { - "family": "Kaisei Tokumin", - "variants": [ - "regular", - "500", - "700", - "800" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/kaiseitokumin/v11/Gg8sN5wdZg7xCwuMsylww2ZiQkJf1l0pj946.ttf", - "500": "https://fonts.gstatic.com/s/kaiseitokumin/v11/Gg8vN5wdZg7xCwuMsylww2ZiQnqr_3khpMIzeI6v.ttf", - "700": "https://fonts.gstatic.com/s/kaiseitokumin/v11/Gg8vN5wdZg7xCwuMsylww2ZiQnrj-XkhpMIzeI6v.ttf", - "800": "https://fonts.gstatic.com/s/kaiseitokumin/v11/Gg8vN5wdZg7xCwuMsylww2ZiQnr_-nkhpMIzeI6v.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kaiseitokumin/v11/Gg8sN5wdZg7xCwuMsylww2ZiQnJe3Fk.ttf" - }, - { - "family": "Kalam", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/kalam/v18/YA9Qr0Wd4kDdMtD6GgLLmCUItqGt.ttf", - "regular": "https://fonts.gstatic.com/s/kalam/v18/YA9dr0Wd4kDdMuhWMibDszkB.ttf", - "700": "https://fonts.gstatic.com/s/kalam/v18/YA9Qr0Wd4kDdMtDqHQLLmCUItqGt.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kalam/v18/YA9dr0Wd4kDdMthXOCI.ttf" - }, - { - "family": "Kalnia", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "math" - ], - "version": "v6", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/kalnia/v6/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW9il2xRGNcykIZc.ttf", - "200": "https://fonts.gstatic.com/s/kalnia/v6/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW_ilmxRGNcykIZc.ttf", - "300": "https://fonts.gstatic.com/s/kalnia/v6/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW88lmxRGNcykIZc.ttf", - "regular": "https://fonts.gstatic.com/s/kalnia/v6/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW9ilmxRGNcykIZc.ttf", - "500": "https://fonts.gstatic.com/s/kalnia/v6/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW9QlmxRGNcykIZc.ttf", - "600": "https://fonts.gstatic.com/s/kalnia/v6/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW-8kWxRGNcykIZc.ttf", - "700": "https://fonts.gstatic.com/s/kalnia/v6/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW-FkWxRGNcykIZc.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kalnia/v6/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW9illxQEtM.ttf" - }, - { - "family": "Kalnia Glaze", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/kalniaglaze/v5/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYdL63nZKfhpVTvN.ttf", - "200": "https://fonts.gstatic.com/s/kalniaglaze/v5/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYfL6nnZKfhpVTvN.ttf", - "300": "https://fonts.gstatic.com/s/kalniaglaze/v5/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYcV6nnZKfhpVTvN.ttf", - "regular": "https://fonts.gstatic.com/s/kalniaglaze/v5/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYdL6nnZKfhpVTvN.ttf", - "500": "https://fonts.gstatic.com/s/kalniaglaze/v5/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYd56nnZKfhpVTvN.ttf", - "600": "https://fonts.gstatic.com/s/kalniaglaze/v5/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYeV7XnZKfhpVTvN.ttf", - "700": "https://fonts.gstatic.com/s/kalniaglaze/v5/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYes7XnZKfhpVTvN.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kalniaglaze/v5/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYdL6knYI_w.ttf", - "colorCapabilities": [ - "COLRv1" - ] - }, - { - "family": "Kameron", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/kameron/v18/vm8pdR7vXErQxuznqrUS3z1Uw3nq4Ne3cbcbvZPxCDLR.ttf", - "500": "https://fonts.gstatic.com/s/kameron/v18/vm8pdR7vXErQxuznqrUS3z1Uw3nq4NeFcbcbvZPxCDLR.ttf", - "600": "https://fonts.gstatic.com/s/kameron/v18/vm8pdR7vXErQxuznqrUS3z1Uw3nq4NdpdrcbvZPxCDLR.ttf", - "700": "https://fonts.gstatic.com/s/kameron/v18/vm8pdR7vXErQxuznqrUS3z1Uw3nq4NdQdrcbvZPxCDLR.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kameron/v18/vm8pdR7vXErQxuznqrUS3z1Uw3nq4Ne3cYcat5c.ttf" - }, - { - "family": "Kanchenjunga", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "kirat-rai", - "latin" - ], - "version": "v2", - "lastModified": "2025-04-23", - "files": { - "regular": "https://fonts.gstatic.com/s/kanchenjunga/v2/RWmPoKKd5fUmrILiWsjCI6TiqYsGBGBzCw.ttf", - "500": "https://fonts.gstatic.com/s/kanchenjunga/v2/RWmQoKKd5fUmrILiWsjCI6TaXaIiDEtvAlaMKw.ttf", - "600": "https://fonts.gstatic.com/s/kanchenjunga/v2/RWmQoKKd5fUmrILiWsjCI6TacaUiDEtvAlaMKw.ttf", - "700": "https://fonts.gstatic.com/s/kanchenjunga/v2/RWmQoKKd5fUmrILiWsjCI6TaFaQiDEtvAlaMKw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kanchenjunga/v2/RWmPoKKd5fUmrILiWsjCI6TSqIEC.ttf" - }, - { - "family": "Kanit", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/kanit/v17/nKKX-Go6G5tXcr72GwWKcaxALFs.ttf", - "100italic": "https://fonts.gstatic.com/s/kanit/v17/nKKV-Go6G5tXcraQI2GAdY5FPFtrGw.ttf", - "200": "https://fonts.gstatic.com/s/kanit/v17/nKKU-Go6G5tXcr5aOiWgX6BJNUJy.ttf", - "200italic": "https://fonts.gstatic.com/s/kanit/v17/nKKS-Go6G5tXcraQI82hVaRrMFJyAu4.ttf", - "300": "https://fonts.gstatic.com/s/kanit/v17/nKKU-Go6G5tXcr4-OSWgX6BJNUJy.ttf", - "300italic": "https://fonts.gstatic.com/s/kanit/v17/nKKS-Go6G5tXcraQI6miVaRrMFJyAu4.ttf", - "regular": "https://fonts.gstatic.com/s/kanit/v17/nKKZ-Go6G5tXcoaSEQGodLxA.ttf", - "italic": "https://fonts.gstatic.com/s/kanit/v17/nKKX-Go6G5tXcraQGwWKcaxALFs.ttf", - "500": "https://fonts.gstatic.com/s/kanit/v17/nKKU-Go6G5tXcr5mOCWgX6BJNUJy.ttf", - "500italic": "https://fonts.gstatic.com/s/kanit/v17/nKKS-Go6G5tXcraQI_GjVaRrMFJyAu4.ttf", - "600": "https://fonts.gstatic.com/s/kanit/v17/nKKU-Go6G5tXcr5KPyWgX6BJNUJy.ttf", - "600italic": "https://fonts.gstatic.com/s/kanit/v17/nKKS-Go6G5tXcraQI92kVaRrMFJyAu4.ttf", - "700": "https://fonts.gstatic.com/s/kanit/v17/nKKU-Go6G5tXcr4uPiWgX6BJNUJy.ttf", - "700italic": "https://fonts.gstatic.com/s/kanit/v17/nKKS-Go6G5tXcraQI7mlVaRrMFJyAu4.ttf", - "800": "https://fonts.gstatic.com/s/kanit/v17/nKKU-Go6G5tXcr4yPSWgX6BJNUJy.ttf", - "800italic": "https://fonts.gstatic.com/s/kanit/v17/nKKS-Go6G5tXcraQI6WmVaRrMFJyAu4.ttf", - "900": "https://fonts.gstatic.com/s/kanit/v17/nKKU-Go6G5tXcr4WPCWgX6BJNUJy.ttf", - "900italic": "https://fonts.gstatic.com/s/kanit/v17/nKKS-Go6G5tXcraQI4GnVaRrMFJyAu4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kanit/v17/nKKZ-Go6G5tXcraTGwU.ttf" - }, - { - "family": "Kantumruy Pro", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "khmer", - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1urUs0M34dR6dW.ttf", - "200": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg3urEs0M34dR6dW.ttf", - "300": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg0wrEs0M34dR6dW.ttf", - "regular": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1urEs0M34dR6dW.ttf", - "500": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1crEs0M34dR6dW.ttf", - "600": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg2wq0s0M34dR6dW.ttf", - "700": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg2Jq0s0M34dR6dW.ttf", - "100italic": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim76N2OXo_QrdWlcU.ttf", - "200italic": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim7yN3OXo_QrdWlcU.ttf", - "300italic": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim7_13OXo_QrdWlcU.ttf", - "italic": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim76N3OXo_QrdWlcU.ttf", - "500italic": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim75F3OXo_QrdWlcU.ttf", - "600italic": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim731wOXo_QrdWlcU.ttf", - "700italic": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim70RwOXo_QrdWlcU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kantumruypro/v12/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1urHs1OXo.ttf" - }, - { - "family": "Kapakana", - "variants": [ - "300", - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/kapakana/v19/sykt-yN0m6InS7OD9BCc9iYVO-6XOlDixNA5tRbXZ4IXAA.ttf", - "regular": "https://fonts.gstatic.com/s/kapakana/v19/sykt-yN0m6InS7OD9BCc9iYVO-6XOlDimtA5tRbXZ4IXAA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kapakana/v19/sykt-yN0m6InS7OD9BCc9iYVO-6XOlDimtAJtBzT.ttf" - }, - { - "family": "Karantina", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/karantina/v13/buExpo24ccnh31GVMABxXCgf-P5Oaiw4cw.ttf", - "regular": "https://fonts.gstatic.com/s/karantina/v13/buE0po24ccnh31GVMABJ8AA78NVSYw.ttf", - "700": "https://fonts.gstatic.com/s/karantina/v13/buExpo24ccnh31GVMABxTC8f-P5Oaiw4cw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/karantina/v13/buE0po24ccnh31GVMAB58Qo_.ttf" - }, - { - "family": "Karla", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v33", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTDeJqqFENLR7fHGw.ttf", - "300": "https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTDppqqFENLR7fHGw.ttf", - "regular": "https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTD-JqqFENLR7fHGw.ttf", - "500": "https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTDypqqFENLR7fHGw.ttf", - "600": "https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTDJp2qFENLR7fHGw.ttf", - "700": "https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTDH52qFENLR7fHGw.ttf", - "800": "https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTDeJ2qFENLR7fHGw.ttf", - "200italic": "https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNnCV0lPZbLXGxGR.ttf", - "300italic": "https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNkcV0lPZbLXGxGR.ttf", - "italic": "https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNlCV0lPZbLXGxGR.ttf", - "500italic": "https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNlwV0lPZbLXGxGR.ttf", - "600italic": "https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNmcUElPZbLXGxGR.ttf", - "700italic": "https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNmlUElPZbLXGxGR.ttf", - "800italic": "https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNnCUElPZbLXGxGR.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTD-JqaFUlP.ttf" - }, - { - "family": "Karla Tamil Inclined", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "tamil" - ], - "version": "v2", - "lastModified": "2024-10-29", - "files": { - "regular": "https://fonts.gstatic.com/s/karlatamilinclined/v2/vm8pdQ3vXFXZ1aPd8dNzR82AFh2TibkaVrcbvZPxCDLR.ttf", - "700": "https://fonts.gstatic.com/s/karlatamilinclined/v2/vm8mdQ3vXFXZ1aPd8dNzR82AFh2TibkaVo-nkrf5Iy7YGkI1.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/karlatamilinclined/v2/vm8pdQ3vXFXZ1aPd8dNzR82AFh2TibkaVocat5c.ttf" - }, - { - "family": "Karla Tamil Upright", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "tamil" - ], - "version": "v2", - "lastModified": "2024-10-29", - "files": { - "regular": "https://fonts.gstatic.com/s/karlatamilupright/v2/IFS4HfVMk95HnY0u6SeQ_cHoozW_3U5XoBJ9hK8kMK4.ttf", - "700": "https://fonts.gstatic.com/s/karlatamilupright/v2/IFS1HfVMk95HnY0u6SeQ_cHoozW_3U5XmK5SoKcPLKclE4o.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/karlatamilupright/v2/IFS4HfVMk95HnY0u6SeQ_cHoozW_3U5XkBN3gA.ttf" - }, - { - "family": "Karma", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/karma/v18/va9F4kzAzMZRGLjDY8Z_uqzGQC_-.ttf", - "regular": "https://fonts.gstatic.com/s/karma/v18/va9I4kzAzMZRGIBvS-J3kbDP.ttf", - "500": "https://fonts.gstatic.com/s/karma/v18/va9F4kzAzMZRGLibYsZ_uqzGQC_-.ttf", - "600": "https://fonts.gstatic.com/s/karma/v18/va9F4kzAzMZRGLi3ZcZ_uqzGQC_-.ttf", - "700": "https://fonts.gstatic.com/s/karma/v18/va9F4kzAzMZRGLjTZMZ_uqzGQC_-.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/karma/v18/va9I4kzAzMZRGLBuQeY.ttf" - }, - { - "family": "Katibeh", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/katibeh/v22/ZGjXol5MQJog4bxDaC1RVDNdGDs.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/katibeh/v22/ZGjXol5MQJog4bxDWCxbUA.ttf" - }, - { - "family": "Kaushan Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/kaushanscript/v19/vm8vdRfvXFLG3OLnsO15WYS5DF7_ytN3M48a.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kaushanscript/v19/vm8vdRfvXFLG3OLnsO15WYS5DG7-wNc.ttf" - }, - { - "family": "Kavivanar", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/kavivanar/v22/o-0IIpQgyXYSwhxP7_Jb4j5Ba_2c7A.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kavivanar/v22/o-0IIpQgyXYSwhxP7_Jr4zRF.ttf" - }, - { - "family": "Kavoon", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/kavoon/v25/pxiFyp4_scRYhlU4NLr6f1pdEQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kavoon/v25/pxiFyp4_scRYhlUINbD-.ttf" - }, - { - "family": "Kay Pho Du", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "kayah-li", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/kayphodu/v2/jizfREFPvGNOx-jhPwHR4OmnLD0Z4zM.ttf", - "500": "https://fonts.gstatic.com/s/kayphodu/v2/jizcREFPvGNOx-jhPwHR2B2OCDUy_zoyk18.ttf", - "600": "https://fonts.gstatic.com/s/kayphodu/v2/jizcREFPvGNOx-jhPwHR2DGJCDUy_zoyk18.ttf", - "700": "https://fonts.gstatic.com/s/kayphodu/v2/jizcREFPvGNOx-jhPwHR2FWICDUy_zoyk18.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kayphodu/v2/jizfREFPvGNOx-jhPwHR0OitKA.ttf" - }, - { - "family": "Kdam Thmor Pro", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin", - "latin-ext" - ], - "version": "v7", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/kdamthmorpro/v7/EJRPQgAzVdcI-Qdvt34jzurnGA7_j89I8ZWb.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kdamthmorpro/v7/EJRPQgAzVdcI-Qdvt34jzurnGD7-hcs.ttf" - }, - { - "family": "Keania One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/keaniaone/v26/zOL54pXJk65E8pXardnuycRuv-hHkOs.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/keaniaone/v26/zOL54pXJk65E8pXardnu-cVkuw.ttf" - }, - { - "family": "Kelly Slab", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/kellyslab/v18/-W_7XJX0Rz3cxUnJC5t6TkMBf50kbiM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kellyslab/v18/-W_7XJX0Rz3cxUnJC5t6fkILew.ttf" - }, - { - "family": "Kenia", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v30", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/kenia/v30/jizURE5PuHQH9qCONUGswfGM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kenia/v30/jizURE5PuHQH9pCPP0U.ttf" - }, - { - "family": "Khand", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/khand/v22/TwMN-IINQlQQ0bL5cFE3ZwaH__-C.ttf", - "regular": "https://fonts.gstatic.com/s/khand/v22/TwMA-IINQlQQ0YpVWHU_TBqO.ttf", - "500": "https://fonts.gstatic.com/s/khand/v22/TwMN-IINQlQQ0bKhcVE3ZwaH__-C.ttf", - "600": "https://fonts.gstatic.com/s/khand/v22/TwMN-IINQlQQ0bKNdlE3ZwaH__-C.ttf", - "700": "https://fonts.gstatic.com/s/khand/v22/TwMN-IINQlQQ0bLpd1E3ZwaH__-C.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/khand/v22/TwMA-IINQlQQ0bpUUnE.ttf" - }, - { - "family": "Khmer", - "variants": [ - "regular" - ], - "subsets": [ - "khmer" - ], - "version": "v38", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/khmer/v38/MjQImit_vPPwpF-BpN2EeYmD.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/khmer/v38/MjQImit_vPPwpG-Artk.ttf" - }, - { - "family": "Khula", - "variants": [ - "300", - "regular", - "600", - "700", - "800" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/khula/v17/OpNPnoEOns3V7G-ljCvUrC59XwXD.ttf", - "regular": "https://fonts.gstatic.com/s/khula/v17/OpNCnoEOns3V7FcJpA_chzJ0.ttf", - "600": "https://fonts.gstatic.com/s/khula/v17/OpNPnoEOns3V7G_RiivUrC59XwXD.ttf", - "700": "https://fonts.gstatic.com/s/khula/v17/OpNPnoEOns3V7G-1iyvUrC59XwXD.ttf", - "800": "https://fonts.gstatic.com/s/khula/v17/OpNPnoEOns3V7G-piCvUrC59XwXD.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/khula/v17/OpNCnoEOns3V7GcIrgs.ttf" - }, - { - "family": "Kings", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/kings/v9/8AtnGsK4O5CYXU_Iq6GSPaHS.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kings/v9/8AtnGsK4O5CYXX_JoaU.ttf" - }, - { - "family": "Kirang Haerang", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/kiranghaerang/v22/E21-_dn_gvvIjhYON1lpIU4-bcqvWPaJq4no.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kiranghaerang/v22/E21-_dn_gvvIjhYON1lpIU4-bfquUvI.ttf" - }, - { - "family": "Kite One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/kiteone/v23/70lQu7shLnA_E02vyq1b6HnGO4uA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kiteone/v23/70lQu7shLnA_E02vyp1a4n0.ttf" - }, - { - "family": "Kiwi Maru", - "variants": [ - "300", - "regular", - "500" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/kiwimaru/v20/R70djykGkuuDep-hRg6gNCi0Vxn9R5ShnA.ttf", - "regular": "https://fonts.gstatic.com/s/kiwimaru/v20/R70YjykGkuuDep-hRg6YmACQXzLhTg.ttf", - "500": "https://fonts.gstatic.com/s/kiwimaru/v20/R70djykGkuuDep-hRg6gbCm0Vxn9R5ShnA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kiwimaru/v20/R70YjykGkuuDep-hRg6omQqU.ttf" - }, - { - "family": "Klee One", - "variants": [ - "regular", - "600" - ], - "subsets": [ - "cyrillic", - "greek-ext", - "japanese", - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/kleeone/v13/LDIxapCLNRc6A8oT4q4AOeekWPrP.ttf", - "600": "https://fonts.gstatic.com/s/kleeone/v13/LDI2apCLNRc6A8oT4pbYF8Osc-bGkqIw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kleeone/v13/LDIxapCLNRc6A8oT4p4BM-M.ttf" - }, - { - "family": "Knewave", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/knewave/v15/sykz-yx0lLcxQaSItSq9-trEvlQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/knewave/v15/sykz-yx0lLcxQaSIhSu3_g.ttf" - }, - { - "family": "KoHo", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/koho/v18/K2FxfZ5fmddNPuE1WJ75JoKhHys.ttf", - "200italic": "https://fonts.gstatic.com/s/koho/v18/K2FzfZ5fmddNNisssJ_zIqCkDyvqZA.ttf", - "300": "https://fonts.gstatic.com/s/koho/v18/K2FxfZ5fmddNPoU2WJ75JoKhHys.ttf", - "300italic": "https://fonts.gstatic.com/s/koho/v18/K2FzfZ5fmddNNiss1JzzIqCkDyvqZA.ttf", - "regular": "https://fonts.gstatic.com/s/koho/v18/K2F-fZ5fmddNBikefJbSOos.ttf", - "italic": "https://fonts.gstatic.com/s/koho/v18/K2FwfZ5fmddNNisUeLTXKou4Bg.ttf", - "500": "https://fonts.gstatic.com/s/koho/v18/K2FxfZ5fmddNPt03WJ75JoKhHys.ttf", - "500italic": "https://fonts.gstatic.com/s/koho/v18/K2FzfZ5fmddNNissjJ3zIqCkDyvqZA.ttf", - "600": "https://fonts.gstatic.com/s/koho/v18/K2FxfZ5fmddNPvEwWJ75JoKhHys.ttf", - "600italic": "https://fonts.gstatic.com/s/koho/v18/K2FzfZ5fmddNNissoJrzIqCkDyvqZA.ttf", - "700": "https://fonts.gstatic.com/s/koho/v18/K2FxfZ5fmddNPpUxWJ75JoKhHys.ttf", - "700italic": "https://fonts.gstatic.com/s/koho/v18/K2FzfZ5fmddNNissxJvzIqCkDyvqZA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/koho/v18/K2F-fZ5fmddNNigUeA.ttf" - }, - { - "family": "Kodchasan", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/kodchasan/v20/1cX0aUPOAJv9sG4I-DJeR1Cggeqo3eMeoA.ttf", - "200italic": "https://fonts.gstatic.com/s/kodchasan/v20/1cXqaUPOAJv9sG4I-DJWjUlIgOCs_-YOoIgN.ttf", - "300": "https://fonts.gstatic.com/s/kodchasan/v20/1cX0aUPOAJv9sG4I-DJeI1Oggeqo3eMeoA.ttf", - "300italic": "https://fonts.gstatic.com/s/kodchasan/v20/1cXqaUPOAJv9sG4I-DJWjUksg-Cs_-YOoIgN.ttf", - "regular": "https://fonts.gstatic.com/s/kodchasan/v20/1cXxaUPOAJv9sG4I-DJmj3uEicG01A.ttf", - "italic": "https://fonts.gstatic.com/s/kodchasan/v20/1cX3aUPOAJv9sG4I-DJWjXGAq8Sk1PoH.ttf", - "500": "https://fonts.gstatic.com/s/kodchasan/v20/1cX0aUPOAJv9sG4I-DJee1Kggeqo3eMeoA.ttf", - "500italic": "https://fonts.gstatic.com/s/kodchasan/v20/1cXqaUPOAJv9sG4I-DJWjUl0guCs_-YOoIgN.ttf", - "600": "https://fonts.gstatic.com/s/kodchasan/v20/1cX0aUPOAJv9sG4I-DJeV1Wggeqo3eMeoA.ttf", - "600italic": "https://fonts.gstatic.com/s/kodchasan/v20/1cXqaUPOAJv9sG4I-DJWjUlYheCs_-YOoIgN.ttf", - "700": "https://fonts.gstatic.com/s/kodchasan/v20/1cX0aUPOAJv9sG4I-DJeM1Sggeqo3eMeoA.ttf", - "700italic": "https://fonts.gstatic.com/s/kodchasan/v20/1cXqaUPOAJv9sG4I-DJWjUk8hOCs_-YOoIgN.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kodchasan/v20/1cXxaUPOAJv9sG4I-DJWjnGA.ttf" - }, - { - "family": "Kode Mono", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/kodemono/v4/A2BLn5pb0QgtVEPFnlYkkaoBgw4qv9odq5my9DqTaOW2A3k.ttf", - "500": "https://fonts.gstatic.com/s/kodemono/v4/A2BLn5pb0QgtVEPFnlYkkaoBgw4qv9odq6uy9DqTaOW2A3k.ttf", - "600": "https://fonts.gstatic.com/s/kodemono/v4/A2BLn5pb0QgtVEPFnlYkkaoBgw4qv9odq0e19DqTaOW2A3k.ttf", - "700": "https://fonts.gstatic.com/s/kodemono/v4/A2BLn5pb0QgtVEPFnlYkkaoBgw4qv9odq3619DqTaOW2A3k.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kodemono/v4/A2BLn5pb0QgtVEPFnlYkkaoBgw4qv9odq5myxDuZbA.ttf" - }, - { - "family": "Koh Santepheap", - "variants": [ - "100", - "300", - "regular", - "700", - "900" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v15", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/kohsantepheap/v15/gNMfW3p6SJbwyGj2rBZyeOrTjNuFHVyTtjNJUWU.ttf", - "300": "https://fonts.gstatic.com/s/kohsantepheap/v15/gNMeW3p6SJbwyGj2rBZyeOrTjNtNP3y5mD9ASHz5.ttf", - "regular": "https://fonts.gstatic.com/s/kohsantepheap/v15/gNMdW3p6SJbwyGj2rBZyeOrTjOPhF1ixsyNJ.ttf", - "700": "https://fonts.gstatic.com/s/kohsantepheap/v15/gNMeW3p6SJbwyGj2rBZyeOrTjNtdOHy5mD9ASHz5.ttf", - "900": "https://fonts.gstatic.com/s/kohsantepheap/v15/gNMeW3p6SJbwyGj2rBZyeOrTjNtlOny5mD9ASHz5.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kohsantepheap/v15/gNMdW3p6SJbwyGj2rBZyeOrTjNPgHVw.ttf" - }, - { - "family": "Kolker Brush", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/kolkerbrush/v8/iJWDBXWRZjfKWdvmzwvvog3-7KJ6x8qNUQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kolkerbrush/v8/iJWDBXWRZjfKWdvmzwvvog3O7ah-.ttf" - }, - { - "family": "Konkhmer Sleokchher", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/konkhmersleokchher/v3/_Xmw-GE-rjmabA_M-aPOZOsCrUv825LFI3507E0d-W0.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/konkhmersleokchher/v3/_Xmw-GE-rjmabA_M-aPOZOsCrUv825LFE39-6A.ttf" - }, - { - "family": "Kosugi", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/kosugi/v19/pxiFyp4_v8FCjlI4NLr6f1pdEQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kosugi/v19/pxiFyp4_v8FCjlIINbD-.ttf" - }, - { - "family": "Kosugi Maru", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/kosugimaru/v17/0nksC9PgP_wGh21A2KeqGiTqivr9iBq_.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kosugimaru/v17/0nksC9PgP_wGh21A2KeqGhTrgP4.ttf" - }, - { - "family": "Kotta One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/kottaone/v21/S6u_w41LXzPc_jlfNWqPHA3s5dwt7w.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kottaone/v21/S6u_w41LXzPc_jlfNWq_HQfo.ttf" - }, - { - "family": "Koulen", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v30", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/koulen/v30/AMOQz46as3KIBPeWgnA9kuYMUg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/koulen/v30/AMOQz46as3KIBPemg3o5.ttf" - }, - { - "family": "Kranky", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v29", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/kranky/v29/hESw6XVgJzlPsFnMpheEZo_H_w.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kranky/v29/hESw6XVgJzlPsFn8px2A.ttf" - }, - { - "family": "Kreon", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v40", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/kreon/v40/t5t9IRIUKY-TFF_LW5lnMR3v2DnvPNimejUfp2dWNg.ttf", - "regular": "https://fonts.gstatic.com/s/kreon/v40/t5t9IRIUKY-TFF_LW5lnMR3v2DnvYtimejUfp2dWNg.ttf", - "500": "https://fonts.gstatic.com/s/kreon/v40/t5t9IRIUKY-TFF_LW5lnMR3v2DnvUNimejUfp2dWNg.ttf", - "600": "https://fonts.gstatic.com/s/kreon/v40/t5t9IRIUKY-TFF_LW5lnMR3v2DnvvN-mejUfp2dWNg.ttf", - "700": "https://fonts.gstatic.com/s/kreon/v40/t5t9IRIUKY-TFF_LW5lnMR3v2Dnvhd-mejUfp2dWNg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kreon/v40/t5t9IRIUKY-TFF_LW5lnMR3v2DnvYtiWez8b.ttf" - }, - { - "family": "Kristi", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/kristi/v23/uK_y4ricdeU6zwdRCh0TMv6EXw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kristi/v23/uK_y4ricdeU6zwdhCxcX.ttf" - }, - { - "family": "Krona One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/kronaone/v15/jAnEgHdjHcjgfIb1ZcUCMY-h3cWkWg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kronaone/v15/jAnEgHdjHcjgfIb1ZcUyMIWl.ttf" - }, - { - "family": "Krub", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/krub/v11/sZlEdRyC6CRYZo47KLF4R6gWaf8.ttf", - "200italic": "https://fonts.gstatic.com/s/krub/v11/sZlGdRyC6CRYbkQiwLByQ4oTef_6gQ.ttf", - "300": "https://fonts.gstatic.com/s/krub/v11/sZlEdRyC6CRYZuo4KLF4R6gWaf8.ttf", - "300italic": "https://fonts.gstatic.com/s/krub/v11/sZlGdRyC6CRYbkQipLNyQ4oTef_6gQ.ttf", - "regular": "https://fonts.gstatic.com/s/krub/v11/sZlLdRyC6CRYXkYQDLlTW6E.ttf", - "italic": "https://fonts.gstatic.com/s/krub/v11/sZlFdRyC6CRYbkQaCJtWS6EPcA.ttf", - "500": "https://fonts.gstatic.com/s/krub/v11/sZlEdRyC6CRYZrI5KLF4R6gWaf8.ttf", - "500italic": "https://fonts.gstatic.com/s/krub/v11/sZlGdRyC6CRYbkQi_LJyQ4oTef_6gQ.ttf", - "600": "https://fonts.gstatic.com/s/krub/v11/sZlEdRyC6CRYZp4-KLF4R6gWaf8.ttf", - "600italic": "https://fonts.gstatic.com/s/krub/v11/sZlGdRyC6CRYbkQi0LVyQ4oTef_6gQ.ttf", - "700": "https://fonts.gstatic.com/s/krub/v11/sZlEdRyC6CRYZvo_KLF4R6gWaf8.ttf", - "700italic": "https://fonts.gstatic.com/s/krub/v11/sZlGdRyC6CRYbkQitLRyQ4oTef_6gQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/krub/v11/sZlLdRyC6CRYbkcaCA.ttf" - }, - { - "family": "Kufam", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/kufam/v26/C8c-4cY7pG7w_oSJDszBXsKCcBH3lqk7qQCJHvIwYg.ttf", - "500": "https://fonts.gstatic.com/s/kufam/v26/C8c-4cY7pG7w_oSJDszBXsKCcBH3pKk7qQCJHvIwYg.ttf", - "600": "https://fonts.gstatic.com/s/kufam/v26/C8c-4cY7pG7w_oSJDszBXsKCcBH3SK47qQCJHvIwYg.ttf", - "700": "https://fonts.gstatic.com/s/kufam/v26/C8c-4cY7pG7w_oSJDszBXsKCcBH3ca47qQCJHvIwYg.ttf", - "800": "https://fonts.gstatic.com/s/kufam/v26/C8c-4cY7pG7w_oSJDszBXsKCcBH3Fq47qQCJHvIwYg.ttf", - "900": "https://fonts.gstatic.com/s/kufam/v26/C8c-4cY7pG7w_oSJDszBXsKCcBH3P647qQCJHvIwYg.ttf", - "italic": "https://fonts.gstatic.com/s/kufam/v26/C8c84cY7pG7w_q6APDMZN6kY3hbiXurT6gqNPPcgYp0i.ttf", - "500italic": "https://fonts.gstatic.com/s/kufam/v26/C8c84cY7pG7w_q6APDMZN6kY3hbiXurh6gqNPPcgYp0i.ttf", - "600italic": "https://fonts.gstatic.com/s/kufam/v26/C8c84cY7pG7w_q6APDMZN6kY3hbiXuoN7QqNPPcgYp0i.ttf", - "700italic": "https://fonts.gstatic.com/s/kufam/v26/C8c84cY7pG7w_q6APDMZN6kY3hbiXuo07QqNPPcgYp0i.ttf", - "800italic": "https://fonts.gstatic.com/s/kufam/v26/C8c84cY7pG7w_q6APDMZN6kY3hbiXupT7QqNPPcgYp0i.ttf", - "900italic": "https://fonts.gstatic.com/s/kufam/v26/C8c84cY7pG7w_q6APDMZN6kY3hbiXup67QqNPPcgYp0i.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kufam/v26/C8c-4cY7pG7w_oSJDszBXsKCcBH3lqkLqAqN.ttf" - }, - { - "family": "Kulim Park", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/kulimpark/v15/fdN49secq3hflz1Uu3IwjJYNwa5aZbUvGjU.ttf", - "200italic": "https://fonts.gstatic.com/s/kulimpark/v15/fdNm9secq3hflz1Uu3IwhFwUKa9QYZcqCjVVUA.ttf", - "300": "https://fonts.gstatic.com/s/kulimpark/v15/fdN49secq3hflz1Uu3IwjPIOwa5aZbUvGjU.ttf", - "300italic": "https://fonts.gstatic.com/s/kulimpark/v15/fdNm9secq3hflz1Uu3IwhFwUTaxQYZcqCjVVUA.ttf", - "regular": "https://fonts.gstatic.com/s/kulimpark/v15/fdN79secq3hflz1Uu3IwtF4m5aZxebw.ttf", - "italic": "https://fonts.gstatic.com/s/kulimpark/v15/fdN59secq3hflz1Uu3IwhFws4YR0abw2Aw.ttf", - "600": "https://fonts.gstatic.com/s/kulimpark/v15/fdN49secq3hflz1Uu3IwjIYIwa5aZbUvGjU.ttf", - "600italic": "https://fonts.gstatic.com/s/kulimpark/v15/fdNm9secq3hflz1Uu3IwhFwUOapQYZcqCjVVUA.ttf", - "700": "https://fonts.gstatic.com/s/kulimpark/v15/fdN49secq3hflz1Uu3IwjOIJwa5aZbUvGjU.ttf", - "700italic": "https://fonts.gstatic.com/s/kulimpark/v15/fdNm9secq3hflz1Uu3IwhFwUXatQYZcqCjVVUA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kulimpark/v15/fdN79secq3hflz1Uu3IwhF8s4Q.ttf" - }, - { - "family": "Kumar One", - "variants": [ - "regular" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/kumarone/v25/bMr1mS-P958wYi6YaGeGNO6WU3oT0g.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kumarone/v25/bMr1mS-P958wYi6YaGe2NeSS.ttf" - }, - { - "family": "Kumar One Outline", - "variants": [ - "regular" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/kumaroneoutline/v20/Noao6VH62pyLP0fsrZ-v18wlUEcX9zDwRQu8EGKF.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kumaroneoutline/v20/Noao6VH62pyLP0fsrZ-v18wlUEcX9wDxTw8.ttf" - }, - { - "family": "Kumbh Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/kumbhsans/v27/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQkZcA8bTuUkqaLg.ttf", - "200": "https://fonts.gstatic.com/s/kumbhsans/v27/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQEZYA8bTuUkqaLg.ttf", - "300": "https://fonts.gstatic.com/s/kumbhsans/v27/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQz5YA8bTuUkqaLg.ttf", - "regular": "https://fonts.gstatic.com/s/kumbhsans/v27/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQkZYA8bTuUkqaLg.ttf", - "500": "https://fonts.gstatic.com/s/kumbhsans/v27/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQo5YA8bTuUkqaLg.ttf", - "600": "https://fonts.gstatic.com/s/kumbhsans/v27/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQT5EA8bTuUkqaLg.ttf", - "700": "https://fonts.gstatic.com/s/kumbhsans/v27/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQdpEA8bTuUkqaLg.ttf", - "800": "https://fonts.gstatic.com/s/kumbhsans/v27/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQEZEA8bTuUkqaLg.ttf", - "900": "https://fonts.gstatic.com/s/kumbhsans/v27/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQOJEA8bTuUkqaLg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kumbhsans/v27/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQkZYw8L7q.ttf" - }, - { - "family": "Kurale", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "devanagari", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/kurale/v14/4iCs6KV9e9dXjho6eAT3v02QFg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/kurale/v14/4iCs6KV9e9dXjhoKeQ7z.ttf" - }, - { - "family": "LXGW Marker Gothic", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "symbols2", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-06-12", - "files": { - "regular": "https://fonts.gstatic.com/s/lxgwmarkergothic/v1/Gg8oN4AaXyDVTi_NlS1-xCtMQxY3lToBjuw_cZe26Q.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lxgwmarkergothic/v1/Gg8oN4AaXyDVTi_NlS1-xCtMQxY3lToxj-Y7.ttf" - }, - { - "family": "LXGW WenKai Mono TC", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "lisu", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-06-09", - "files": { - "300": "https://fonts.gstatic.com/s/lxgwwenkaimonotc/v9/pxiVyos4iPVgyWx9WtufHnsIf5nkaB0HssKqhvJljXmo2SA.ttf", - "regular": "https://fonts.gstatic.com/s/lxgwwenkaimonotc/v9/pxiYyos4iPVgyWx9WtufHnsIf5nkaB0Him6CovpOkXA.ttf", - "700": "https://fonts.gstatic.com/s/lxgwwenkaimonotc/v9/pxiVyos4iPVgyWx9WtufHnsIf5nkaB0HstKthvJljXmo2SA.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lxgwwenkaimonotc/v9/pxiYyos4iPVgyWx9WtufHnsIf5nkaB0Hum-Ipg.ttf" - }, - { - "family": "LXGW WenKai TC", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "lisu", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-06-09", - "files": { - "300": "https://fonts.gstatic.com/s/lxgwwenkaitc/v9/w8gAH20td8wNsI3f40DmtXZb4_MmBfkpTClICyan.ttf", - "regular": "https://fonts.gstatic.com/s/lxgwwenkaitc/v9/w8gDH20td8wNsI3f40DmtXZb48uKLd0hZzVB.ttf", - "700": "https://fonts.gstatic.com/s/lxgwwenkaitc/v9/w8gAH20td8wNsI3f40DmtXZb4_M2AvkpTClICyan.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lxgwwenkaitc/v9/w8gDH20td8wNsI3f40DmtXZb4_uLJ9k.ttf" - }, - { - "family": "La Belle Aurore", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/labelleaurore/v23/RrQIbot8-mNYKnGNDkWlocovHeIIG-eFNVmULg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/labelleaurore/v23/RrQIbot8-mNYKnGNDkWlocovHeI4Gu2B.ttf" - }, - { - "family": "Labrada", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/labrada/v4/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VTSgM4QPdUej17.ttf", - "200": "https://fonts.gstatic.com/s/labrada/v4/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9XTSwM4QPdUej17.ttf", - "300": "https://fonts.gstatic.com/s/labrada/v4/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9UNSwM4QPdUej17.ttf", - "regular": "https://fonts.gstatic.com/s/labrada/v4/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VTSwM4QPdUej17.ttf", - "500": "https://fonts.gstatic.com/s/labrada/v4/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VhSwM4QPdUej17.ttf", - "600": "https://fonts.gstatic.com/s/labrada/v4/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9WNTAM4QPdUej17.ttf", - "700": "https://fonts.gstatic.com/s/labrada/v4/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9W0TAM4QPdUej17.ttf", - "800": "https://fonts.gstatic.com/s/labrada/v4/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9XTTAM4QPdUej17.ttf", - "900": "https://fonts.gstatic.com/s/labrada/v4/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9X6TAM4QPdUej17.ttf", - "100italic": "https://fonts.gstatic.com/s/labrada/v4/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCOt6SvN2fy17-dE.ttf", - "200italic": "https://fonts.gstatic.com/s/labrada/v4/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCGt7SvN2fy17-dE.ttf", - "300italic": "https://fonts.gstatic.com/s/labrada/v4/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCLV7SvN2fy17-dE.ttf", - "italic": "https://fonts.gstatic.com/s/labrada/v4/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCOt7SvN2fy17-dE.ttf", - "500italic": "https://fonts.gstatic.com/s/labrada/v4/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCNl7SvN2fy17-dE.ttf", - "600italic": "https://fonts.gstatic.com/s/labrada/v4/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCDV8SvN2fy17-dE.ttf", - "700italic": "https://fonts.gstatic.com/s/labrada/v4/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCAx8SvN2fy17-dE.ttf", - "800italic": "https://fonts.gstatic.com/s/labrada/v4/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCGt8SvN2fy17-dE.ttf", - "900italic": "https://fonts.gstatic.com/s/labrada/v4/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCEJ8SvN2fy17-dE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/labrada/v4/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VTSzM5SvM.ttf" - }, - { - "family": "Lacquer", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/lacquer/v16/EYqzma1QwqpG4_BBB7-AXhttQ5I.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lacquer/v16/EYqzma1QwqpG4_BBN76KWg.ttf" - }, - { - "family": "Laila", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-06-25", - "files": { - "300": "https://fonts.gstatic.com/s/laila/v20/LYjBdG_8nE8jDLzxogNAh14nVcfe.ttf", - "regular": "https://fonts.gstatic.com/s/laila/v20/LYjMdG_8nE8jDIRdiidIrEIu.ttf", - "500": "https://fonts.gstatic.com/s/laila/v20/LYjBdG_8nE8jDLypowNAh14nVcfe.ttf", - "600": "https://fonts.gstatic.com/s/laila/v20/LYjBdG_8nE8jDLyFpANAh14nVcfe.ttf", - "700": "https://fonts.gstatic.com/s/laila/v20/LYjBdG_8nE8jDLzhpQNAh14nVcfe.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/laila/v20/LYjMdG_8nE8jDLRcgCM.ttf" - }, - { - "family": "Lakki Reddy", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v25", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/lakkireddy/v25/S6u5w49MUSzD9jlCPmvLZQfox9k97-xZ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lakkireddy/v25/S6u5w49MUSzD9jlCPmvLZTfpzd0.ttf" - }, - { - "family": "Lalezar", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/lalezar/v16/zrfl0HLVx-HwTP82UaDyIiL0RCg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lalezar/v16/zrfl0HLVx-HwTP82YaH4Jg.ttf" - }, - { - "family": "Lancelot", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/lancelot/v28/J7acnppxBGtQEulG4JY4xJ9CGyAa.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lancelot/v28/J7acnppxBGtQEulG4KY5zps.ttf" - }, - { - "family": "Langar", - "variants": [ - "regular" - ], - "subsets": [ - "gurmukhi", - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/langar/v30/kJEyBukW7AIlgjGVrTVZ99sqrQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/langar/v30/kJEyBukW7AIlgjGlrD9d.ttf" - }, - { - "family": "Lateef", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v35", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/lateef/v35/hESz6XVnNCxEvkb0bjygbqTb9nQ-RA.ttf", - "300": "https://fonts.gstatic.com/s/lateef/v35/hESz6XVnNCxEvkb0Cj-gbqTb9nQ-RA.ttf", - "regular": "https://fonts.gstatic.com/s/lateef/v35/hESw6XVnNCxEvkbMpheEZo_H_w.ttf", - "500": "https://fonts.gstatic.com/s/lateef/v35/hESz6XVnNCxEvkb0Uj6gbqTb9nQ-RA.ttf", - "600": "https://fonts.gstatic.com/s/lateef/v35/hESz6XVnNCxEvkb0fjmgbqTb9nQ-RA.ttf", - "700": "https://fonts.gstatic.com/s/lateef/v35/hESz6XVnNCxEvkb0GjigbqTb9nQ-RA.ttf", - "800": "https://fonts.gstatic.com/s/lateef/v35/hESz6XVnNCxEvkb0BjugbqTb9nQ-RA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lateef/v35/hESw6XVnNCxEvkb8px2A.ttf" - }, - { - "family": "Lato", - "variants": [ - "100", - "100italic", - "300", - "300italic", - "regular", - "italic", - "700", - "700italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/lato/v25/S6u8w4BMUTPHh30wWyWrFCbw7A.ttf", - "100italic": "https://fonts.gstatic.com/s/lato/v25/S6u-w4BMUTPHjxsIPy-vNiPg7MU0.ttf", - "300": "https://fonts.gstatic.com/s/lato/v25/S6u9w4BMUTPHh7USew-FGC_p9dw.ttf", - "300italic": "https://fonts.gstatic.com/s/lato/v25/S6u_w4BMUTPHjxsI9w2PHA3s5dwt7w.ttf", - "regular": "https://fonts.gstatic.com/s/lato/v25/S6uyw4BMUTPHvxk6XweuBCY.ttf", - "italic": "https://fonts.gstatic.com/s/lato/v25/S6u8w4BMUTPHjxswWyWrFCbw7A.ttf", - "700": "https://fonts.gstatic.com/s/lato/v25/S6u9w4BMUTPHh6UVew-FGC_p9dw.ttf", - "700italic": "https://fonts.gstatic.com/s/lato/v25/S6u_w4BMUTPHjxsI5wqPHA3s5dwt7w.ttf", - "900": "https://fonts.gstatic.com/s/lato/v25/S6u9w4BMUTPHh50Xew-FGC_p9dw.ttf", - "900italic": "https://fonts.gstatic.com/s/lato/v25/S6u_w4BMUTPHjxsI3wiPHA3s5dwt7w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lato/v25/S6uyw4BMUTPHjxgwWw.ttf" - }, - { - "family": "Lavishly Yours", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/lavishlyyours/v7/jizDREVIvGwH5OjiZmX9r5z_WxUY0TY7ikbI.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lavishlyyours/v7/jizDREVIvGwH5OjiZmX9r5z_WyUZ2zI.ttf" - }, - { - "family": "League Gothic", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/leaguegothic/v13/qFdR35CBi4tvBz81xy7WG7ep-BQAY7Krj7feObpH_-amidQ6Q9hn.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/leaguegothic/v13/qFdR35CBi4tvBz81xy7WG7ep-BQAY7Krj7feObpH_9ang9A.ttf" - }, - { - "family": "League Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v30", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/leaguescript/v30/CSR54zpSlumSWj9CGVsoBZdeaNNUuOwkC2s.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/leaguescript/v30/CSR54zpSlumSWj9CGVsoBZdeWNJevA.ttf" - }, - { - "family": "League Spartan", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/leaguespartan/v15/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvM_oXpBMdcFguczA.ttf", - "200": "https://fonts.gstatic.com/s/leaguespartan/v15/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMfoTpBMdcFguczA.ttf", - "300": "https://fonts.gstatic.com/s/leaguespartan/v15/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMoITpBMdcFguczA.ttf", - "regular": "https://fonts.gstatic.com/s/leaguespartan/v15/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvM_oTpBMdcFguczA.ttf", - "500": "https://fonts.gstatic.com/s/leaguespartan/v15/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMzITpBMdcFguczA.ttf", - "600": "https://fonts.gstatic.com/s/leaguespartan/v15/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMIIPpBMdcFguczA.ttf", - "700": "https://fonts.gstatic.com/s/leaguespartan/v15/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMGYPpBMdcFguczA.ttf", - "800": "https://fonts.gstatic.com/s/leaguespartan/v15/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMfoPpBMdcFguczA.ttf", - "900": "https://fonts.gstatic.com/s/leaguespartan/v15/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMV4PpBMdcFguczA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/leaguespartan/v15/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvM_oTZBc1Y.ttf" - }, - { - "family": "Leckerli One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/leckerlione/v22/V8mCoQH8VCsNttEnxnGQ-1itLZxcBtItFw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/leckerlione/v22/V8mCoQH8VCsNttEnxnGQ-1idLJZY.ttf" - }, - { - "family": "Ledger", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/ledger/v17/j8_q6-HK1L3if_sxm8DwHTBhHw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ledger/v17/j8_q6-HK1L3if_sBmsr0.ttf" - }, - { - "family": "Lekton", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/lekton/v21/SZc43FDmLaWmWpBeXxfonUPL6Q.ttf", - "italic": "https://fonts.gstatic.com/s/lekton/v21/SZc63FDmLaWmWpBuXR3sv0bb6StO.ttf", - "700": "https://fonts.gstatic.com/s/lekton/v21/SZc73FDmLaWmWpBm4zjMlWjX4DJXgQ.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lekton/v21/SZc43FDmLaWmWpBuXh3s.ttf" - }, - { - "family": "Lemon", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/lemon/v19/HI_EiYEVKqRMq0jBSZXAQ4-d.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lemon/v19/HI_EiYEVKqRMq3jAQ5E.ttf" - }, - { - "family": "Lemonada", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v31", - "lastModified": "2025-09-02", - "files": { - "300": "https://fonts.gstatic.com/s/lemonada/v31/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGJOt2mfWc3Z2pTg.ttf", - "regular": "https://fonts.gstatic.com/s/lemonada/v31/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGeut2mfWc3Z2pTg.ttf", - "500": "https://fonts.gstatic.com/s/lemonada/v31/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGSOt2mfWc3Z2pTg.ttf", - "600": "https://fonts.gstatic.com/s/lemonada/v31/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGpOx2mfWc3Z2pTg.ttf", - "700": "https://fonts.gstatic.com/s/lemonada/v31/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGnex2mfWc3Z2pTg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lemonada/v31/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGeutGmP-Y.ttf" - }, - { - "family": "Lexend", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/lexend/v26/wlptgwvFAVdoq2_F94zlCfv0bz1WCzsX_LBte6KuGEo.ttf", - "200": "https://fonts.gstatic.com/s/lexend/v26/wlptgwvFAVdoq2_F94zlCfv0bz1WC7sW_LBte6KuGEo.ttf", - "300": "https://fonts.gstatic.com/s/lexend/v26/wlptgwvFAVdoq2_F94zlCfv0bz1WC2UW_LBte6KuGEo.ttf", - "regular": "https://fonts.gstatic.com/s/lexend/v26/wlptgwvFAVdoq2_F94zlCfv0bz1WCzsW_LBte6KuGEo.ttf", - "500": "https://fonts.gstatic.com/s/lexend/v26/wlptgwvFAVdoq2_F94zlCfv0bz1WCwkW_LBte6KuGEo.ttf", - "600": "https://fonts.gstatic.com/s/lexend/v26/wlptgwvFAVdoq2_F94zlCfv0bz1WC-UR_LBte6KuGEo.ttf", - "700": "https://fonts.gstatic.com/s/lexend/v26/wlptgwvFAVdoq2_F94zlCfv0bz1WC9wR_LBte6KuGEo.ttf", - "800": "https://fonts.gstatic.com/s/lexend/v26/wlptgwvFAVdoq2_F94zlCfv0bz1WC7sR_LBte6KuGEo.ttf", - "900": "https://fonts.gstatic.com/s/lexend/v26/wlptgwvFAVdoq2_F94zlCfv0bz1WC5IR_LBte6KuGEo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lexend/v26/wlptgwvFAVdoq2_F94zlCfv0bz1WCzsWzLFnfw.ttf" - }, - { - "family": "Lexend Deca", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/lexenddeca/v25/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48MxArBPCqLNflg.ttf", - "200": "https://fonts.gstatic.com/s/lexenddeca/v25/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4cM1ArBPCqLNflg.ttf", - "300": "https://fonts.gstatic.com/s/lexenddeca/v25/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4rs1ArBPCqLNflg.ttf", - "regular": "https://fonts.gstatic.com/s/lexenddeca/v25/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48M1ArBPCqLNflg.ttf", - "500": "https://fonts.gstatic.com/s/lexenddeca/v25/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4ws1ArBPCqLNflg.ttf", - "600": "https://fonts.gstatic.com/s/lexenddeca/v25/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4LspArBPCqLNflg.ttf", - "700": "https://fonts.gstatic.com/s/lexenddeca/v25/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4F8pArBPCqLNflg.ttf", - "800": "https://fonts.gstatic.com/s/lexenddeca/v25/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4cMpArBPCqLNflg.ttf", - "900": "https://fonts.gstatic.com/s/lexenddeca/v25/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4WcpArBPCqLNflg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lexenddeca/v25/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48M1wrRnG.ttf" - }, - { - "family": "Lexend Exa", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v35", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/lexendexa/v35/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9r7T6bHHJ8BRq0b.ttf", - "200": "https://fonts.gstatic.com/s/lexendexa/v35/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9p7TqbHHJ8BRq0b.ttf", - "300": "https://fonts.gstatic.com/s/lexendexa/v35/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9qlTqbHHJ8BRq0b.ttf", - "regular": "https://fonts.gstatic.com/s/lexendexa/v35/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9r7TqbHHJ8BRq0b.ttf", - "500": "https://fonts.gstatic.com/s/lexendexa/v35/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9rJTqbHHJ8BRq0b.ttf", - "600": "https://fonts.gstatic.com/s/lexendexa/v35/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9olSabHHJ8BRq0b.ttf", - "700": "https://fonts.gstatic.com/s/lexendexa/v35/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9ocSabHHJ8BRq0b.ttf", - "800": "https://fonts.gstatic.com/s/lexendexa/v35/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9p7SabHHJ8BRq0b.ttf", - "900": "https://fonts.gstatic.com/s/lexendexa/v35/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9pSSabHHJ8BRq0b.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lexendexa/v35/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9r7TpbGFps.ttf" - }, - { - "family": "Lexend Giga", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/lexendgiga/v27/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC2LmE68oo6eepYQ.ttf", - "200": "https://fonts.gstatic.com/s/lexendgiga/v27/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCWLiE68oo6eepYQ.ttf", - "300": "https://fonts.gstatic.com/s/lexendgiga/v27/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRChriE68oo6eepYQ.ttf", - "regular": "https://fonts.gstatic.com/s/lexendgiga/v27/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC2LiE68oo6eepYQ.ttf", - "500": "https://fonts.gstatic.com/s/lexendgiga/v27/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC6riE68oo6eepYQ.ttf", - "600": "https://fonts.gstatic.com/s/lexendgiga/v27/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCBr-E68oo6eepYQ.ttf", - "700": "https://fonts.gstatic.com/s/lexendgiga/v27/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCP7-E68oo6eepYQ.ttf", - "800": "https://fonts.gstatic.com/s/lexendgiga/v27/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCWL-E68oo6eepYQ.ttf", - "900": "https://fonts.gstatic.com/s/lexendgiga/v27/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCcb-E68oo6eepYQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lexendgiga/v27/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC2Li06sAs.ttf" - }, - { - "family": "Lexend Mega", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/lexendmega/v27/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDL8fivveyiq9EqQw.ttf", - "200": "https://fonts.gstatic.com/s/lexendmega/v27/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLcfmvveyiq9EqQw.ttf", - "300": "https://fonts.gstatic.com/s/lexendmega/v27/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLr_mvveyiq9EqQw.ttf", - "regular": "https://fonts.gstatic.com/s/lexendmega/v27/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDL8fmvveyiq9EqQw.ttf", - "500": "https://fonts.gstatic.com/s/lexendmega/v27/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLw_mvveyiq9EqQw.ttf", - "600": "https://fonts.gstatic.com/s/lexendmega/v27/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLL_6vveyiq9EqQw.ttf", - "700": "https://fonts.gstatic.com/s/lexendmega/v27/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLFv6vveyiq9EqQw.ttf", - "800": "https://fonts.gstatic.com/s/lexendmega/v27/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLcf6vveyiq9EqQw.ttf", - "900": "https://fonts.gstatic.com/s/lexendmega/v27/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLWP6vveyiq9EqQw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lexendmega/v27/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDL8fmfvOam.ttf" - }, - { - "family": "Lexend Peta", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v30", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/lexendpeta/v30/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR6SFyW1YuRTsnfw.ttf", - "200": "https://fonts.gstatic.com/s/lexendpeta/v30/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRaSByW1YuRTsnfw.ttf", - "300": "https://fonts.gstatic.com/s/lexendpeta/v30/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRtyByW1YuRTsnfw.ttf", - "regular": "https://fonts.gstatic.com/s/lexendpeta/v30/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR6SByW1YuRTsnfw.ttf", - "500": "https://fonts.gstatic.com/s/lexendpeta/v30/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR2yByW1YuRTsnfw.ttf", - "600": "https://fonts.gstatic.com/s/lexendpeta/v30/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRNydyW1YuRTsnfw.ttf", - "700": "https://fonts.gstatic.com/s/lexendpeta/v30/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRDidyW1YuRTsnfw.ttf", - "800": "https://fonts.gstatic.com/s/lexendpeta/v30/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRaSdyW1YuRTsnfw.ttf", - "900": "https://fonts.gstatic.com/s/lexendpeta/v30/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRQCdyW1YuRTsnfw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lexendpeta/v30/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR6SBCWlwq.ttf" - }, - { - "family": "Lexend Tera", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v29", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/lexendtera/v29/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM5zITdpz0fYxcrQ.ttf", - "200": "https://fonts.gstatic.com/s/lexendtera/v29/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMZzMTdpz0fYxcrQ.ttf", - "300": "https://fonts.gstatic.com/s/lexendtera/v29/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMuTMTdpz0fYxcrQ.ttf", - "regular": "https://fonts.gstatic.com/s/lexendtera/v29/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM5zMTdpz0fYxcrQ.ttf", - "500": "https://fonts.gstatic.com/s/lexendtera/v29/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM1TMTdpz0fYxcrQ.ttf", - "600": "https://fonts.gstatic.com/s/lexendtera/v29/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMOTQTdpz0fYxcrQ.ttf", - "700": "https://fonts.gstatic.com/s/lexendtera/v29/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMADQTdpz0fYxcrQ.ttf", - "800": "https://fonts.gstatic.com/s/lexendtera/v29/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMZzQTdpz0fYxcrQ.ttf", - "900": "https://fonts.gstatic.com/s/lexendtera/v29/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMTjQTdpz0fYxcrQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lexendtera/v29/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM5zMjd5bw.ttf" - }, - { - "family": "Lexend Zetta", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v32", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/lexendzetta/v32/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy9bH0z5jbs8qbts.ttf", - "200": "https://fonts.gstatic.com/s/lexendzetta/v32/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy1bG0z5jbs8qbts.ttf", - "300": "https://fonts.gstatic.com/s/lexendzetta/v32/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy4jG0z5jbs8qbts.ttf", - "regular": "https://fonts.gstatic.com/s/lexendzetta/v32/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy9bG0z5jbs8qbts.ttf", - "500": "https://fonts.gstatic.com/s/lexendzetta/v32/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy-TG0z5jbs8qbts.ttf", - "600": "https://fonts.gstatic.com/s/lexendzetta/v32/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCywjB0z5jbs8qbts.ttf", - "700": "https://fonts.gstatic.com/s/lexendzetta/v32/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCyzHB0z5jbs8qbts.ttf", - "800": "https://fonts.gstatic.com/s/lexendzetta/v32/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy1bB0z5jbs8qbts.ttf", - "900": "https://fonts.gstatic.com/s/lexendzetta/v32/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy3_B0z5jbs8qbts.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lexendzetta/v32/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy9bG4z9pag.ttf" - }, - { - "family": "Libertinus Keyboard", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/libertinuskeyboard/v2/NaPEcYrQAP5Z2JsyIac0i2DYHaapaf43RryztWo_3fk.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/libertinuskeyboard/v2/NaPEcYrQAP5Z2JsyIac0i2DYHaapaf43dr25sQ.ttf" - }, - { - "family": "Libertinus Math", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "math", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/libertinusmath/v1/Gw6iwc3770TVMoHVurPejWtfenRLv_KJt3R-2Q.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/libertinusmath/v1/Gw6iwc3770TVMoHVurPejWtfenR7vviN.ttf" - }, - { - "family": "Libertinus Mono", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/libertinusmono/v1/_gPg1RnxrjY_TDm97ApTqwneJJFToBF3YROW_w.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/libertinusmono/v1/_gPg1RnxrjY_TDm97ApTqwneJJFjoRtz.ttf" - }, - { - "family": "Libertinus Sans", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-07-30", - "files": { - "regular": "https://fonts.gstatic.com/s/libertinussans/v1/YA9Lr0-a6k7ZLbw_dle4knJh2cqMjt3V_dB0Yw.ttf", - "italic": "https://fonts.gstatic.com/s/libertinussans/v1/YA9Jr0-a6k7ZLbw_dle4knJh2cq8jNfR39VkYzCp.ttf", - "700": "https://fonts.gstatic.com/s/libertinussans/v1/YA9Or0-a6k7ZLbw_dle4knJh2cq0MvLx9ftoaimwmw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/libertinussans/v1/YA9Lr0-a6k7ZLbw_dle4knJh2cq8j9fR.ttf" - }, - { - "family": "Libertinus Serif", - "variants": [ - "regular", - "italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "hebrew", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-07-30", - "files": { - "regular": "https://fonts.gstatic.com/s/libertinusserif/v1/RLpkK4bw7KinajYBg0RTTwCLF5Ben6kFUHPIFaU.ttf", - "italic": "https://fonts.gstatic.com/s/libertinusserif/v1/RLpiK4bw7KinajYBg0RTTwCLF5Ber6sPVFHNBaVImA.ttf", - "600": "https://fonts.gstatic.com/s/libertinusserif/v1/RLpjK4bw7KinajYBg0RTTwCLF5Bep3ErdHvjCaxRgew.ttf", - "600italic": "https://fonts.gstatic.com/s/libertinusserif/v1/RLphK4bw7KinajYBg0RTTwCLF5Ber6s3jH_pDY5UkexwPg.ttf", - "700": "https://fonts.gstatic.com/s/libertinusserif/v1/RLpjK4bw7KinajYBg0RTTwCLF5BepxUqdHvjCaxRgew.ttf", - "700italic": "https://fonts.gstatic.com/s/libertinusserif/v1/RLphK4bw7KinajYBg0RTTwCLF5Ber6s36H7pDY5UkexwPg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/libertinusserif/v1/RLpkK4bw7KinajYBg0RTTwCLF5Ber6gPVA.ttf" - }, - { - "family": "Libertinus Serif Display", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/libertinusserifdisplay/v2/0FlHVOmbklub_P32Hm53RVREi5BsXWudOF_Gpgcrg81gHhVOxQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/libertinusserifdisplay/v2/0FlHVOmbklub_P32Hm53RVREi5BsXWudOF_Gpgcbgsdk.ttf" - }, - { - "family": "Libre Barcode 128", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v31", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/librebarcode128/v31/cIfnMbdUsUoiW3O_hVviCwVjuLtXeJ_A_gMk0izH.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librebarcode128/v31/cIfnMbdUsUoiW3O_hVviCwVjuLtXeK_B9Ac.ttf" - }, - { - "family": "Libre Barcode 128 Text", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v31", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/librebarcode128text/v31/fdNv9tubt3ZEnz1Gu3I4-zppwZ9CWZ16Z0w5cV3Y6M90w4k.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librebarcode128text/v31/fdNv9tubt3ZEnz1Gu3I4-zppwZ9CWZ16Z0w5QVzS7A.ttf" - }, - { - "family": "Libre Barcode 39", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v25", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/librebarcode39/v25/-nFnOHM08vwC6h8Li1eQnP_AHzI2K_d709jy92k.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librebarcode39/v25/-nFnOHM08vwC6h8Li1eQnP_AHzI2G_Zx1w.ttf" - }, - { - "family": "Libre Barcode 39 Extended", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v30", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/librebarcode39extended/v30/8At7Gt6_O5yNS0-K4Nf5U922qSzhJ3dUdfJpwNUgfNRCOZ1GOBw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librebarcode39extended/v30/8At7Gt6_O5yNS0-K4Nf5U922qSzhJ3dUdfJpwNUgTNVIPQ.ttf" - }, - { - "family": "Libre Barcode 39 Extended Text", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v30", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/librebarcode39extendedtext/v30/eLG1P_rwIgOiDA7yrs9LoKaYRVLQ1YldrrOnnL7xPO4jNP68fLIiPopNNA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librebarcode39extendedtext/v30/eLG1P_rwIgOiDA7yrs9LoKaYRVLQ1YldrrOnnL7xPO4jNP6Mfbgm.ttf" - }, - { - "family": "Libre Barcode 39 Text", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v32", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/librebarcode39text/v32/sJoa3KhViNKANw_E3LwoDXvs5Un0HQ1vT-031RRL-9rYaw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librebarcode39text/v32/sJoa3KhViNKANw_E3LwoDXvs5Un0HQ1vT-0H1B5P.ttf" - }, - { - "family": "Libre Barcode EAN13 Text", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v25", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/librebarcodeean13text/v25/wlpigxXFDU1_oCu9nfZytgIqSG0XRcJm_OQiB96PAGEki52WfA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librebarcodeean13text/v25/wlpigxXFDU1_oCu9nfZytgIqSG0XRcJm_OQiB96_AWsg.ttf" - }, - { - "family": "Libre Baskerville", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/librebaskerville/v17/kmKnZrc3Hgbbcjq75U4uslyuy4kn0pNeYRI4CN2V.ttf", - "italic": "https://fonts.gstatic.com/s/librebaskerville/v17/kmKhZrc3Hgbbcjq75U4uslyuy4kn0qNcaxYaDc2V2ro.ttf", - "700": "https://fonts.gstatic.com/s/librebaskerville/v17/kmKiZrc3Hgbbcjq75U4uslyuy4kn0qviTjYwI8Gcw6Oi.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librebaskerville/v17/kmKnZrc3Hgbbcjq75U4uslyuy4kn0qNfaxY.ttf" - }, - { - "family": "Libre Bodoni", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/librebodoni/v9/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6I1fwWzZcOb3U3s.ttf", - "500": "https://fonts.gstatic.com/s/librebodoni/v9/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6L9fwWzZcOb3U3s.ttf", - "600": "https://fonts.gstatic.com/s/librebodoni/v9/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6FNYwWzZcOb3U3s.ttf", - "700": "https://fonts.gstatic.com/s/librebodoni/v9/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6GpYwWzZcOb3U3s.ttf", - "italic": "https://fonts.gstatic.com/s/librebodoni/v9/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUcKS_TdMTyQ3syLg.ttf", - "500italic": "https://fonts.gstatic.com/s/librebodoni/v9/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUcGy_TdMTyQ3syLg.ttf", - "600italic": "https://fonts.gstatic.com/s/librebodoni/v9/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUc9yjTdMTyQ3syLg.ttf", - "700italic": "https://fonts.gstatic.com/s/librebodoni/v9/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUczijTdMTyQ3syLg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librebodoni/v9/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6I1f8W3TdA.ttf" - }, - { - "family": "Libre Caslon Display", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/librecaslondisplay/v18/TuGOUUFxWphYQ6YI6q9Xp61FQzxDRKmzr2lRdRhtCC4d.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librecaslondisplay/v18/TuGOUUFxWphYQ6YI6q9Xp61FQzxDRKmzr1lQfxw.ttf" - }, - { - "family": "Libre Caslon Text", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/librecaslontext/v5/DdT878IGsGw1aF1JU10PUbTvNNaDMcq_3eNrHgO1.ttf", - "italic": "https://fonts.gstatic.com/s/librecaslontext/v5/DdT678IGsGw1aF1JU10PUbTvNNaDMfq91-dJGxO1q9o.ttf", - "700": "https://fonts.gstatic.com/s/librecaslontext/v5/DdT578IGsGw1aF1JU10PUbTvNNaDMfID8sdjNR-8ssPt.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librecaslontext/v5/DdT878IGsGw1aF1JU10PUbTvNNaDMfq-1-c.ttf" - }, - { - "family": "Libre Franklin", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/librefranklin/v20/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsSUB9rIb-JH1g.ttf", - "200": "https://fonts.gstatic.com/s/librefranklin/v20/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhrsWUB9rIb-JH1g.ttf", - "300": "https://fonts.gstatic.com/s/librefranklin/v20/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhcMWUB9rIb-JH1g.ttf", - "regular": "https://fonts.gstatic.com/s/librefranklin/v20/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsWUB9rIb-JH1g.ttf", - "500": "https://fonts.gstatic.com/s/librefranklin/v20/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhHMWUB9rIb-JH1g.ttf", - "600": "https://fonts.gstatic.com/s/librefranklin/v20/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduh8MKUB9rIb-JH1g.ttf", - "700": "https://fonts.gstatic.com/s/librefranklin/v20/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhycKUB9rIb-JH1g.ttf", - "800": "https://fonts.gstatic.com/s/librefranklin/v20/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhrsKUB9rIb-JH1g.ttf", - "900": "https://fonts.gstatic.com/s/librefranklin/v20/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhh8KUB9rIb-JH1g.ttf", - "100italic": "https://fonts.gstatic.com/s/librefranklin/v20/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZ8RdDMTedX1sGE.ttf", - "200italic": "https://fonts.gstatic.com/s/librefranklin/v20/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05ob8RNDMTedX1sGE.ttf", - "300italic": "https://fonts.gstatic.com/s/librefranklin/v20/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oYiRNDMTedX1sGE.ttf", - "italic": "https://fonts.gstatic.com/s/librefranklin/v20/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZ8RNDMTedX1sGE.ttf", - "500italic": "https://fonts.gstatic.com/s/librefranklin/v20/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZORNDMTedX1sGE.ttf", - "600italic": "https://fonts.gstatic.com/s/librefranklin/v20/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oaiQ9DMTedX1sGE.ttf", - "700italic": "https://fonts.gstatic.com/s/librefranklin/v20/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oabQ9DMTedX1sGE.ttf", - "800italic": "https://fonts.gstatic.com/s/librefranklin/v20/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05ob8Q9DMTedX1sGE.ttf", - "900italic": "https://fonts.gstatic.com/s/librefranklin/v20/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05obVQ9DMTedX1sGE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/librefranklin/v20/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsWkBtDM.ttf" - }, - { - "family": "Licorice", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/licorice/v8/t5tjIR8TMomTCAyjNk23hqLgzCHu.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/licorice/v8/t5tjIR8TMomTCAyjNn22jKY.ttf" - }, - { - "family": "Life Savers", - "variants": [ - "regular", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/lifesavers/v23/ZXuie1UftKKabUQMgxAal_lrFgpbuNvB.ttf", - "700": "https://fonts.gstatic.com/s/lifesavers/v23/ZXu_e1UftKKabUQMgxAal8HXOS5Tk8fIpPRW.ttf", - "800": "https://fonts.gstatic.com/s/lifesavers/v23/ZXu_e1UftKKabUQMgxAal8HLOi5Tk8fIpPRW.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lifesavers/v23/ZXuie1UftKKabUQMgxAal8lqHA4.ttf" - }, - { - "family": "Lilita One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/lilitaone/v17/i7dPIFZ9Zz-WBtRtedDbUEZ2RFq7AwU.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lilitaone/v17/i7dPIFZ9Zz-WBtRtedDbYEd8QA.ttf" - }, - { - "family": "Lily Script One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/lilyscriptone/v16/LhW9MV7ZMfIPdMxeBjBvFN8SXLS4gsSjQNsRMg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lilyscriptone/v16/LhW9MV7ZMfIPdMxeBjBvFN8SXLSIg86n.ttf" - }, - { - "family": "Limelight", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/limelight/v21/XLYkIZL7aopJVbZJHDuYPeNGrnY2TA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/limelight/v21/XLYkIZL7aopJVbZJHDuoPOlC.ttf" - }, - { - "family": "Linden Hill", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/lindenhill/v27/-F61fjxoKSg9Yc3hZgO8ygFI7CwC009k.ttf", - "italic": "https://fonts.gstatic.com/s/lindenhill/v27/-F63fjxoKSg9Yc3hZgO8yjFK5igg1l9kn-s.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lindenhill/v27/-F61fjxoKSg9Yc3hZgO8yjFJ5ig.ttf" - }, - { - "family": "Linefont", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin" - ], - "version": "v10", - "lastModified": "2025-09-17", - "files": { - "100": "https://fonts.gstatic.com/s/linefont/v10/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY4UNbu7tmdXux3U.ttf", - "200": "https://fonts.gstatic.com/s/linefont/v10/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnYwUMbu7tmdXux3U.ttf", - "300": "https://fonts.gstatic.com/s/linefont/v10/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY9sMbu7tmdXux3U.ttf", - "regular": "https://fonts.gstatic.com/s/linefont/v10/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY4UMbu7tmdXux3U.ttf", - "500": "https://fonts.gstatic.com/s/linefont/v10/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY7cMbu7tmdXux3U.ttf", - "600": "https://fonts.gstatic.com/s/linefont/v10/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY1sLbu7tmdXux3U.ttf", - "700": "https://fonts.gstatic.com/s/linefont/v10/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY2ILbu7tmdXux3U.ttf", - "800": "https://fonts.gstatic.com/s/linefont/v10/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnYwULbu7tmdXux3U.ttf", - "900": "https://fonts.gstatic.com/s/linefont/v10/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnYywLbu7tmdXux3U.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/linefont/v10/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY4UMXu_nnQ.ttf" - }, - { - "family": "Lisu Bosa", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "lisu" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "200": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXX2DGRdbY1P1Sbg.ttf", - "200italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXkuRNzc9vhCblye.ttf", - "300": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXO2PGRdbY1P1Sbg.ttf", - "300italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXlKR9zc9vhCblye.ttf", - "regular": "https://fonts.gstatic.com/s/lisubosa/v2/3XFoErkv240fsdmJRJQvl0viTf3E3Q.ttf", - "italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFuErkv240fsdmJRJQflUHmb_jU3eRL.ttf", - "500": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXY2LGRdbY1P1Sbg.ttf", - "500italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXkSRtzc9vhCblye.ttf", - "600": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXT2XGRdbY1P1Sbg.ttf", - "600italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXk-Qdzc9vhCblye.ttf", - "700": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXK2TGRdbY1P1Sbg.ttf", - "700italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXlaQNzc9vhCblye.ttf", - "800": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXN2fGRdbY1P1Sbg.ttf", - "800italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXlGQ9zc9vhCblye.ttf", - "900": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXE2bGRdbY1P1Sbg.ttf", - "900italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXliQtzc9vhCblye.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lisubosa/v2/3XFoErkv240fsdmJRJQflkHm.ttf" - }, - { - "family": "Liter", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/liter/v4/SLXGc1nX4GQ4d2ImRJqExst1.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/liter/v4/SLXGc1nX4GQ4d1InTp4.ttf" - }, - { - "family": "Literata", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v40", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/literata/v40/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbJG_F_bcTWCWp8g.ttf", - "300": "https://fonts.gstatic.com/s/literata/v40/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbE-_F_bcTWCWp8g.ttf", - "regular": "https://fonts.gstatic.com/s/literata/v40/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbBG_F_bcTWCWp8g.ttf", - "500": "https://fonts.gstatic.com/s/literata/v40/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbCO_F_bcTWCWp8g.ttf", - "600": "https://fonts.gstatic.com/s/literata/v40/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbM-4F_bcTWCWp8g.ttf", - "700": "https://fonts.gstatic.com/s/literata/v40/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbPa4F_bcTWCWp8g.ttf", - "800": "https://fonts.gstatic.com/s/literata/v40/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbJG4F_bcTWCWp8g.ttf", - "900": "https://fonts.gstatic.com/s/literata/v40/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbLi4F_bcTWCWp8g.ttf", - "200italic": "https://fonts.gstatic.com/s/literata/v40/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8f7XWSUKTt8iVow.ttf", - "300italic": "https://fonts.gstatic.com/s/literata/v40/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8obXWSUKTt8iVow.ttf", - "italic": "https://fonts.gstatic.com/s/literata/v40/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8_7XWSUKTt8iVow.ttf", - "500italic": "https://fonts.gstatic.com/s/literata/v40/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8zbXWSUKTt8iVow.ttf", - "600italic": "https://fonts.gstatic.com/s/literata/v40/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8IbLWSUKTt8iVow.ttf", - "700italic": "https://fonts.gstatic.com/s/literata/v40/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8GLLWSUKTt8iVow.ttf", - "800italic": "https://fonts.gstatic.com/s/literata/v40/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8f7LWSUKTt8iVow.ttf", - "900italic": "https://fonts.gstatic.com/s/literata/v40/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8VrLWSUKTt8iVow.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/literata/v40/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbBG_J_fWSQ.ttf" - }, - { - "family": "Liu Jian Mao Cao", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-simplified", - "latin" - ], - "version": "v24", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/liujianmaocao/v24/845DNN84HJrccNonurqXILGpvCOoferVKGWsUo8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/liujianmaocao/v24/845DNN84HJrccNonurqXILGpvCOoTevfLA.ttf" - }, - { - "family": "Livvic", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/livvic/v15/rnCr-x1S2hzjrlffC-M-mHnOSOuk.ttf", - "100italic": "https://fonts.gstatic.com/s/livvic/v15/rnCt-x1S2hzjrlfXbdtakn3sTfukQHs.ttf", - "200": "https://fonts.gstatic.com/s/livvic/v15/rnCq-x1S2hzjrlffp8IeslfCQfK9WQ.ttf", - "200italic": "https://fonts.gstatic.com/s/livvic/v15/rnCs-x1S2hzjrlfXbdv2s13GY_etWWIJ.ttf", - "300": "https://fonts.gstatic.com/s/livvic/v15/rnCq-x1S2hzjrlffw8EeslfCQfK9WQ.ttf", - "300italic": "https://fonts.gstatic.com/s/livvic/v15/rnCs-x1S2hzjrlfXbduSsF3GY_etWWIJ.ttf", - "regular": "https://fonts.gstatic.com/s/livvic/v15/rnCp-x1S2hzjrlfnb-k6unzeSA.ttf", - "italic": "https://fonts.gstatic.com/s/livvic/v15/rnCr-x1S2hzjrlfXbeM-mHnOSOuk.ttf", - "500": "https://fonts.gstatic.com/s/livvic/v15/rnCq-x1S2hzjrlffm8AeslfCQfK9WQ.ttf", - "500italic": "https://fonts.gstatic.com/s/livvic/v15/rnCs-x1S2hzjrlfXbdvKsV3GY_etWWIJ.ttf", - "600": "https://fonts.gstatic.com/s/livvic/v15/rnCq-x1S2hzjrlfft8ceslfCQfK9WQ.ttf", - "600italic": "https://fonts.gstatic.com/s/livvic/v15/rnCs-x1S2hzjrlfXbdvmtl3GY_etWWIJ.ttf", - "700": "https://fonts.gstatic.com/s/livvic/v15/rnCq-x1S2hzjrlff08YeslfCQfK9WQ.ttf", - "700italic": "https://fonts.gstatic.com/s/livvic/v15/rnCs-x1S2hzjrlfXbduCt13GY_etWWIJ.ttf", - "900": "https://fonts.gstatic.com/s/livvic/v15/rnCq-x1S2hzjrlff68QeslfCQfK9WQ.ttf", - "900italic": "https://fonts.gstatic.com/s/livvic/v15/rnCs-x1S2hzjrlfXbdu6tV3GY_etWWIJ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/livvic/v15/rnCp-x1S2hzjrlfXbuM-.ttf" - }, - { - "family": "Lobster", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v32", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/lobster/v32/neILzCirqoswsqX9_oWsMqEzSJQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lobster/v32/neILzCirqoswsqX9zoSmNg.ttf" - }, - { - "family": "Lobster Two", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/lobstertwo/v22/BngMUXZGTXPUvIoyV6yN59fK7KSJ4ACD.ttf", - "italic": "https://fonts.gstatic.com/s/lobstertwo/v22/BngOUXZGTXPUvIoyV6yN5-fI5qCr5RCDY_k.ttf", - "700": "https://fonts.gstatic.com/s/lobstertwo/v22/BngRUXZGTXPUvIoyV6yN5-92w4CByxyKeuDp.ttf", - "700italic": "https://fonts.gstatic.com/s/lobstertwo/v22/BngTUXZGTXPUvIoyV6yN5-fI3hyEwRiof_DpXMY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lobstertwo/v22/BngMUXZGTXPUvIoyV6yN5-fL5qA.ttf" - }, - { - "family": "Londrina Outline", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v29", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/londrinaoutline/v29/C8c44dM8vmb14dfsZxhetg3pDH-SfuoxrSKMDvI.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/londrinaoutline/v29/C8c44dM8vmb14dfsZxhetg3pDH-STus7qQ.ttf" - }, - { - "family": "Londrina Shadow", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/londrinashadow/v28/oPWX_kB4kOQoWNJmjxLV5JuoCUlXRlaSxkrMCQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/londrinashadow/v28/oPWX_kB4kOQoWNJmjxLV5JuoCUlnR1yW.ttf" - }, - { - "family": "Londrina Sketch", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v27", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/londrinasketch/v27/c4m41npxGMTnomOHtRU68eIJn8qfWWn5Pos6CA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/londrinasketch/v27/c4m41npxGMTnomOHtRU68eIJn8qvWGP9.ttf" - }, - { - "family": "Londrina Solid", - "variants": [ - "100", - "300", - "regular", - "900" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/londrinasolid/v19/flUjRq6sw40kQEJxWNgkLuudGfs9KBYesZHhV64.ttf", - "300": "https://fonts.gstatic.com/s/londrinasolid/v19/flUiRq6sw40kQEJxWNgkLuudGfv1CjY0n53oTrcL.ttf", - "regular": "https://fonts.gstatic.com/s/londrinasolid/v19/flUhRq6sw40kQEJxWNgkLuudGcNZIhI8tIHh.ttf", - "900": "https://fonts.gstatic.com/s/londrinasolid/v19/flUiRq6sw40kQEJxWNgkLuudGfvdDzY0n53oTrcL.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/londrinasolid/v19/flUhRq6sw40kQEJxWNgkLuudGfNYKBY.ttf" - }, - { - "family": "Long Cang", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-simplified", - "latin" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/longcang/v21/LYjAdGP8kkgoTec8zkRgrXArXN7HWQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/longcang/v21/LYjAdGP8kkgoTec8zkRQrHov.ttf" - }, - { - "family": "Lora", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v37", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/lora/v37/0QI6MX1D_JOuGQbT0gvTJPa787weuyJGmKxemMeZ.ttf", - "500": "https://fonts.gstatic.com/s/lora/v37/0QI6MX1D_JOuGQbT0gvTJPa787wsuyJGmKxemMeZ.ttf", - "600": "https://fonts.gstatic.com/s/lora/v37/0QI6MX1D_JOuGQbT0gvTJPa787zAvCJGmKxemMeZ.ttf", - "700": "https://fonts.gstatic.com/s/lora/v37/0QI6MX1D_JOuGQbT0gvTJPa787z5vCJGmKxemMeZ.ttf", - "italic": "https://fonts.gstatic.com/s/lora/v37/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-MoFkqh8ndeZzZ0.ttf", - "500italic": "https://fonts.gstatic.com/s/lora/v37/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-PgFkqh8ndeZzZ0.ttf", - "600italic": "https://fonts.gstatic.com/s/lora/v37/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-BQCkqh8ndeZzZ0.ttf", - "700italic": "https://fonts.gstatic.com/s/lora/v37/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-C0Ckqh8ndeZzZ0.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lora/v37/0QI6MX1D_JOuGQbT0gvTJPa787weuxJHkqg.ttf" - }, - { - "family": "Love Light", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/lovelight/v8/t5tlIR0TNJyZWimpNAXDjKbCyTHuspo.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lovelight/v8/t5tlIR0TNJyZWimpNAXDvKfIzQ.ttf" - }, - { - "family": "Love Ya Like A Sister", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/loveyalikeasister/v23/R70EjzUBlOqPeouhFDfR80-0FhOqJubN-Be78nZcsGGycA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/loveyalikeasister/v23/R70EjzUBlOqPeouhFDfR80-0FhOqJubN-BeL83xY.ttf" - }, - { - "family": "Loved by the King", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/lovedbytheking/v24/Gw6gwdP76VDVJNXerebZxUMeRXUF2PiNlXFu2R64.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lovedbytheking/v24/Gw6gwdP76VDVJNXerebZxUMeRXUF2MiMn3U.ttf" - }, - { - "family": "Lovers Quarrel", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/loversquarrel/v25/Yq6N-LSKXTL-5bCy8ksBzpQ_-zAsY7pO6siz.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/loversquarrel/v25/Yq6N-LSKXTL-5bCy8ksBzpQ_-wAtab4.ttf" - }, - { - "family": "Luckiest Guy", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/luckiestguy/v25/_gP_1RrxsjcxVyin9l9n_j2RStR3qDpraA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/luckiestguy/v25/_gP_1RrxsjcxVyin9l9n_j2hS95z.ttf" - }, - { - "family": "Lugrasimo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/lugrasimo/v5/qkBXXvoF_s_eT9c7Y7ae5JRLkAXbMQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lugrasimo/v5/qkBXXvoF_s_eT9c7Y7au5Z5P.ttf" - }, - { - "family": "Lumanosimo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/lumanosimo/v5/K2F0fZBYg_JDSEZHEfO8AoqKAyLzfWo.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lumanosimo/v5/K2F0fZBYg_JDSEZHEfO8MouABw.ttf" - }, - { - "family": "Lunasima", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "hebrew", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/lunasima/v1/wEO-EBvPh9RSOj7JFAwle94H1VIe.ttf", - "700": "https://fonts.gstatic.com/s/lunasima/v1/wEO5EBvPh9RSOj7JFDSZVPoP_k4XiKvO.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lunasima/v1/wEO-EBvPh9RSOj7JFDwkcdo.ttf" - }, - { - "family": "Lusitana", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v14", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/lusitana/v14/CSR84z9ShvucWzsMKxhaRuMiSct_.ttf", - "700": "https://fonts.gstatic.com/s/lusitana/v14/CSR74z9ShvucWzsMKyDmaccqYtd2vfwk.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lusitana/v14/CSR84z9ShvucWzsMKyhbTOc.ttf" - }, - { - "family": "Lustria", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v14", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/lustria/v14/9oRONYodvDEyjuhOrCg5MtPyAcg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/lustria/v14/9oRONYodvDEyjuhOnCkzNg.ttf" - }, - { - "family": "Luxurious Roman", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v10", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/luxuriousroman/v10/buEupou_ZcP1w0yTKxJJokVSmbpqYgckeo9RMw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/luxuriousroman/v10/buEupou_ZcP1w0yTKxJJokVSmbpaYw0g.ttf" - }, - { - "family": "Luxurious Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/luxuriousscript/v9/ahcCv9e7yydulT32KZ0rBIoD7DzMg0rOby1JtYk.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/luxuriousscript/v9/ahcCv9e7yydulT32KZ0rBIoD7DzMs0vEaw.ttf" - }, - { - "family": "M PLUS 1", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/mplus1/v15/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5VSe78nZcsGGycA.ttf", - "200": "https://fonts.gstatic.com/s/mplus1/v15/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW51Sa78nZcsGGycA.ttf", - "300": "https://fonts.gstatic.com/s/mplus1/v15/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5Cya78nZcsGGycA.ttf", - "regular": "https://fonts.gstatic.com/s/mplus1/v15/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5VSa78nZcsGGycA.ttf", - "500": "https://fonts.gstatic.com/s/mplus1/v15/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5Zya78nZcsGGycA.ttf", - "600": "https://fonts.gstatic.com/s/mplus1/v15/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5iyG78nZcsGGycA.ttf", - "700": "https://fonts.gstatic.com/s/mplus1/v15/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5siG78nZcsGGycA.ttf", - "800": "https://fonts.gstatic.com/s/mplus1/v15/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW51SG78nZcsGGycA.ttf", - "900": "https://fonts.gstatic.com/s/mplus1/v15/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5_CG78nZcsGGycA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mplus1/v15/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5VSaL83xY.ttf" - }, - { - "family": "M PLUS 1 Code", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/mplus1code/v16/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7iN0XHpapwmdZhY.ttf", - "200": "https://fonts.gstatic.com/s/mplus1code/v16/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7gN0HHpapwmdZhY.ttf", - "300": "https://fonts.gstatic.com/s/mplus1code/v16/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7jT0HHpapwmdZhY.ttf", - "regular": "https://fonts.gstatic.com/s/mplus1code/v16/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7iN0HHpapwmdZhY.ttf", - "500": "https://fonts.gstatic.com/s/mplus1code/v16/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7i_0HHpapwmdZhY.ttf", - "600": "https://fonts.gstatic.com/s/mplus1code/v16/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7hT13HpapwmdZhY.ttf", - "700": "https://fonts.gstatic.com/s/mplus1code/v16/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7hq13HpapwmdZhY.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mplus1code/v16/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7iN0EHoYJg.ttf" - }, - { - "family": "M PLUS 1p", - "variants": [ - "100", - "300", - "regular", - "500", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "hebrew", - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v32", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/mplus1p/v32/e3tleuShHdiFyPFzBRrQnDQAUW3aq-5N.ttf", - "300": "https://fonts.gstatic.com/s/mplus1p/v32/e3tmeuShHdiFyPFzBRrQVBYge0PWovdU4w.ttf", - "regular": "https://fonts.gstatic.com/s/mplus1p/v32/e3tjeuShHdiFyPFzBRro-D4Ec2jKqw.ttf", - "500": "https://fonts.gstatic.com/s/mplus1p/v32/e3tmeuShHdiFyPFzBRrQDBcge0PWovdU4w.ttf", - "700": "https://fonts.gstatic.com/s/mplus1p/v32/e3tmeuShHdiFyPFzBRrQRBEge0PWovdU4w.ttf", - "800": "https://fonts.gstatic.com/s/mplus1p/v32/e3tmeuShHdiFyPFzBRrQWBIge0PWovdU4w.ttf", - "900": "https://fonts.gstatic.com/s/mplus1p/v32/e3tmeuShHdiFyPFzBRrQfBMge0PWovdU4w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mplus1p/v32/e3tjeuShHdiFyPFzBRrY-TQA.ttf" - }, - { - "family": "M PLUS 2", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/mplus2/v15/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwOa-VxlqHrzNgAw.ttf", - "200": "https://fonts.gstatic.com/s/mplus2/v15/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwua6VxlqHrzNgAw.ttf", - "300": "https://fonts.gstatic.com/s/mplus2/v15/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwZ66VxlqHrzNgAw.ttf", - "regular": "https://fonts.gstatic.com/s/mplus2/v15/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwOa6VxlqHrzNgAw.ttf", - "500": "https://fonts.gstatic.com/s/mplus2/v15/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwC66VxlqHrzNgAw.ttf", - "600": "https://fonts.gstatic.com/s/mplus2/v15/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkw56mVxlqHrzNgAw.ttf", - "700": "https://fonts.gstatic.com/s/mplus2/v15/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkw3qmVxlqHrzNgAw.ttf", - "800": "https://fonts.gstatic.com/s/mplus2/v15/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwuamVxlqHrzNgAw.ttf", - "900": "https://fonts.gstatic.com/s/mplus2/v15/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwkKmVxlqHrzNgAw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mplus2/v15/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwOa6lx1CD.ttf" - }, - { - "family": "M PLUS Code Latin", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/mpluscodelatin/v16/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1EbB6i5MqF9TRwg.ttf", - "200": "https://fonts.gstatic.com/s/mpluscodelatin/v16/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1MbA6i5MqF9TRwg.ttf", - "300": "https://fonts.gstatic.com/s/mpluscodelatin/v16/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1BjA6i5MqF9TRwg.ttf", - "regular": "https://fonts.gstatic.com/s/mpluscodelatin/v16/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1EbA6i5MqF9TRwg.ttf", - "500": "https://fonts.gstatic.com/s/mpluscodelatin/v16/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1HTA6i5MqF9TRwg.ttf", - "600": "https://fonts.gstatic.com/s/mpluscodelatin/v16/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1JjH6i5MqF9TRwg.ttf", - "700": "https://fonts.gstatic.com/s/mpluscodelatin/v16/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1KHH6i5MqF9TRwg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mpluscodelatin/v16/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1EbA2i9GrA.ttf" - }, - { - "family": "M PLUS Rounded 1c", - "variants": [ - "100", - "300", - "regular", - "500", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "hebrew", - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-06-25", - "files": { - "100": "https://fonts.gstatic.com/s/mplusrounded1c/v19/VdGCAYIAV6gnpUpoWwNkYvrugw9RuM3ixLsg6-av1x0.ttf", - "300": "https://fonts.gstatic.com/s/mplusrounded1c/v19/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0q5psKxeqmzgRK.ttf", - "regular": "https://fonts.gstatic.com/s/mplusrounded1c/v19/VdGEAYIAV6gnpUpoWwNkYvrugw9RuPWGzr8C7vav.ttf", - "500": "https://fonts.gstatic.com/s/mplusrounded1c/v19/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM1y55sKxeqmzgRK.ttf", - "700": "https://fonts.gstatic.com/s/mplusrounded1c/v19/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM064ZsKxeqmzgRK.ttf", - "800": "https://fonts.gstatic.com/s/mplusrounded1c/v19/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0m4psKxeqmzgRK.ttf", - "900": "https://fonts.gstatic.com/s/mplusrounded1c/v19/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0C45sKxeqmzgRK.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mplusrounded1c/v19/VdGEAYIAV6gnpUpoWwNkYvrugw9RuMWHxLs.ttf" - }, - { - "family": "Ma Shan Zheng", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-simplified", - "latin" - ], - "version": "v14", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/mashanzheng/v14/NaPecZTRCLxvwo41b4gvzkXaRMTsDIRSfr0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mashanzheng/v14/NaPecZTRCLxvwo41b4gvzkXadMXmCA.ttf" - }, - { - "family": "Macondo", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v27", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/macondo/v27/RrQQboN9-iB1IXmOS2XO0LBBd4Y.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/macondo/v27/RrQQboN9-iB1IXmOe2TE1A.ttf" - }, - { - "family": "Macondo Swash Caps", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v26", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/macondoswashcaps/v26/6NUL8EaAJgGKZA7lpt941Z9s6ZYgDq6Oekoa_mm5bA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/macondoswashcaps/v26/6NUL8EaAJgGKZA7lpt941Z9s6ZYgDq6-e0Ae.ttf" - }, - { - "family": "Mada", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/mada/v21/7Aulp_0qnzeSVz7u3PJLcUMYOFlOkHkw2-m9x2iC.ttf", - "300": "https://fonts.gstatic.com/s/mada/v21/7Aulp_0qnzeSVz7u3PJLcUMYOFmQkHkw2-m9x2iC.ttf", - "regular": "https://fonts.gstatic.com/s/mada/v21/7Aulp_0qnzeSVz7u3PJLcUMYOFnOkHkw2-m9x2iC.ttf", - "500": "https://fonts.gstatic.com/s/mada/v21/7Aulp_0qnzeSVz7u3PJLcUMYOFn8kHkw2-m9x2iC.ttf", - "600": "https://fonts.gstatic.com/s/mada/v21/7Aulp_0qnzeSVz7u3PJLcUMYOFkQl3kw2-m9x2iC.ttf", - "700": "https://fonts.gstatic.com/s/mada/v21/7Aulp_0qnzeSVz7u3PJLcUMYOFkpl3kw2-m9x2iC.ttf", - "800": "https://fonts.gstatic.com/s/mada/v21/7Aulp_0qnzeSVz7u3PJLcUMYOFlOl3kw2-m9x2iC.ttf", - "900": "https://fonts.gstatic.com/s/mada/v21/7Aulp_0qnzeSVz7u3PJLcUMYOFlnl3kw2-m9x2iC.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mada/v21/7Aulp_0qnzeSVz7u3PJLcUMYOFnOkEkx0e0.ttf" - }, - { - "family": "Madimi One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/madimione/v1/2V0YKIEADpA8U6RygDnZZFQoBoHMd2U.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/madimione/v1/2V0YKIEADpA8U6RygDnZVFUiAg.ttf" - }, - { - "family": "Magra", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/magra/v15/uK_94ruaZus72k5xIDMfO-ed.ttf", - "700": "https://fonts.gstatic.com/s/magra/v15/uK_w4ruaZus72nbNDxcXEPuUX1ow.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/magra/v15/uK_94ruaZus72n5wKjc.ttf" - }, - { - "family": "Maiden Orange", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v32", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/maidenorange/v32/kJE1BuIX7AUmhi2V4m08kb1XjOZdCZS8FY8.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/maidenorange/v32/kJE1BuIX7AUmhi2V4m08kb1XvOdXDQ.ttf" - }, - { - "family": "Maitree", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/maitree/v11/MjQDmil5tffhpBrklhGNWJGovLdh6OE.ttf", - "300": "https://fonts.gstatic.com/s/maitree/v11/MjQDmil5tffhpBrklnWOWJGovLdh6OE.ttf", - "regular": "https://fonts.gstatic.com/s/maitree/v11/MjQGmil5tffhpBrkrtmmfJmDoL4.ttf", - "500": "https://fonts.gstatic.com/s/maitree/v11/MjQDmil5tffhpBrkli2PWJGovLdh6OE.ttf", - "600": "https://fonts.gstatic.com/s/maitree/v11/MjQDmil5tffhpBrklgGIWJGovLdh6OE.ttf", - "700": "https://fonts.gstatic.com/s/maitree/v11/MjQDmil5tffhpBrklmWJWJGovLdh6OE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/maitree/v11/MjQGmil5tffhpBrkntiseA.ttf" - }, - { - "family": "Major Mono Display", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/majormonodisplay/v18/RWmVoLyb5fEqtsfBX9PDZIGr2tFubRhLCn2QIndPww.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/majormonodisplay/v18/RWmVoLyb5fEqtsfBX9PDZIGr2tFubRh7C3eU.ttf" - }, - { - "family": "Mako", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/mako/v19/H4coBX6Mmc_Z0ST09g478Lo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mako/v19/H4coBX6Mmc_Z4SX-8g.ttf" - }, - { - "family": "Mali", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/mali/v13/N0bV2SRONuN4QOLlKlRaJdbWgdY.ttf", - "200italic": "https://fonts.gstatic.com/s/mali/v13/N0bX2SRONuN4SCj8wlVQIfTTkdbJYA.ttf", - "300": "https://fonts.gstatic.com/s/mali/v13/N0bV2SRONuN4QIbmKlRaJdbWgdY.ttf", - "300italic": "https://fonts.gstatic.com/s/mali/v13/N0bX2SRONuN4SCj8plZQIfTTkdbJYA.ttf", - "regular": "https://fonts.gstatic.com/s/mali/v13/N0ba2SRONuN4eCrODlxxOd8.ttf", - "italic": "https://fonts.gstatic.com/s/mali/v13/N0bU2SRONuN4SCjECn50Kd_PmA.ttf", - "500": "https://fonts.gstatic.com/s/mali/v13/N0bV2SRONuN4QN7nKlRaJdbWgdY.ttf", - "500italic": "https://fonts.gstatic.com/s/mali/v13/N0bX2SRONuN4SCj8_ldQIfTTkdbJYA.ttf", - "600": "https://fonts.gstatic.com/s/mali/v13/N0bV2SRONuN4QPLgKlRaJdbWgdY.ttf", - "600italic": "https://fonts.gstatic.com/s/mali/v13/N0bX2SRONuN4SCj80lBQIfTTkdbJYA.ttf", - "700": "https://fonts.gstatic.com/s/mali/v13/N0bV2SRONuN4QJbhKlRaJdbWgdY.ttf", - "700italic": "https://fonts.gstatic.com/s/mali/v13/N0bX2SRONuN4SCj8tlFQIfTTkdbJYA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mali/v13/N0ba2SRONuN4SCvECg.ttf" - }, - { - "family": "Mallanna", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v15", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/mallanna/v15/hv-Vlzx-KEQb84YaDGwzEzRwVvJ-.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mallanna/v15/hv-Vlzx-KEQb84YaDFwyGTA.ttf" - }, - { - "family": "Maname", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "sinhala", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/maname/v2/gNMFW3J8RpCx9my42FkGGI6q_Q.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/maname/v2/gNMFW3J8RpCx9myI2VMC.ttf" - }, - { - "family": "Mandali", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/mandali/v16/LhWlMVbYOfASNfNUVFk1ZPdcKtA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mandali/v16/LhWlMVbYOfASNfNUZFg_YA.ttf" - }, - { - "family": "Manjari", - "variants": [ - "100", - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "malayalam" - ], - "version": "v14", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/manjari/v14/k3kSo8UPMOBO2w1UdbroK2vFIaOV8A.ttf", - "regular": "https://fonts.gstatic.com/s/manjari/v14/k3kQo8UPMOBO2w1UTd7iL0nAMaM.ttf", - "700": "https://fonts.gstatic.com/s/manjari/v14/k3kVo8UPMOBO2w1UdWLNC0HrLaqM6Q4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/manjari/v14/k3kQo8UPMOBO2w1Ufd_oKw.ttf" - }, - { - "family": "Manrope", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk59FO_F87jxeN7B.ttf", - "300": "https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk6jFO_F87jxeN7B.ttf", - "regular": "https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FO_F87jxeN7B.ttf", - "500": "https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk7PFO_F87jxeN7B.ttf", - "600": "https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk4jE-_F87jxeN7B.ttf", - "700": "https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk4aE-_F87jxeN7B.ttf", - "800": "https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk59E-_F87jxeN7B.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FN_E-bw.ttf" - }, - { - "family": "Mansalva", - "variants": [ - "regular" - ], - "subsets": [ - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/mansalva/v16/aWB4m0aacbtDfvq5NJllI47vdyBg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mansalva/v16/aWB4m0aacbtDfvq5NKlkKYo.ttf" - }, - { - "family": "Manuale", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v31", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/manuale/v31/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeG6e7wD1TB_JHHY.ttf", - "regular": "https://fonts.gstatic.com/s/manuale/v31/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeHke7wD1TB_JHHY.ttf", - "500": "https://fonts.gstatic.com/s/manuale/v31/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeHWe7wD1TB_JHHY.ttf", - "600": "https://fonts.gstatic.com/s/manuale/v31/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeE6fLwD1TB_JHHY.ttf", - "700": "https://fonts.gstatic.com/s/manuale/v31/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeEDfLwD1TB_JHHY.ttf", - "800": "https://fonts.gstatic.com/s/manuale/v31/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeFkfLwD1TB_JHHY.ttf", - "300italic": "https://fonts.gstatic.com/s/manuale/v31/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOApA3zRdIWHYr8M.ttf", - "italic": "https://fonts.gstatic.com/s/manuale/v31/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOFRA3zRdIWHYr8M.ttf", - "500italic": "https://fonts.gstatic.com/s/manuale/v31/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOGZA3zRdIWHYr8M.ttf", - "600italic": "https://fonts.gstatic.com/s/manuale/v31/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOIpH3zRdIWHYr8M.ttf", - "700italic": "https://fonts.gstatic.com/s/manuale/v31/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOLNH3zRdIWHYr8M.ttf", - "800italic": "https://fonts.gstatic.com/s/manuale/v31/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsONRH3zRdIWHYr8M.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/manuale/v31/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeHke4wC3zQ.ttf" - }, - { - "family": "Manufacturing Consent", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/manufacturingconsent/v1/N0bL2TVONuFkPkuHfiECSLCwuZS-D-IsakikR6QvbfFYLA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/manufacturingconsent/v1/N0bL2TVONuFkPkuHfiECSLCwuZS-D-IsakiURq4r.ttf" - }, - { - "family": "Marcellus", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/marcellus/v14/wEO_EBrOk8hQLDvIAF8FUfAL3EsHiA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/marcellus/v14/wEO_EBrOk8hQLDvIAF81UPoP.ttf" - }, - { - "family": "Marcellus SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/marcellussc/v14/ke8iOgUHP1dg-Rmi6RWjbLEPgdydGKikhA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/marcellussc/v14/ke8iOgUHP1dg-Rmi6RWjbLE_gNaZ.ttf" - }, - { - "family": "Marck Script", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/marckscript/v22/nwpTtK2oNgBA3Or78gapdwuCzyI-aMPF7Q.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/marckscript/v22/nwpTtK2oNgBA3Or78gapdwuyzig6.ttf" - }, - { - "family": "Margarine", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/margarine/v27/qkBXXvoE6trLT9Y7YLye5JRLkAXbMQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/margarine/v27/qkBXXvoE6trLT9Y7YLyu5Z5P.ttf" - }, - { - "family": "Marhey", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/marhey/v8/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBZVwO2cXiGevOMw.ttf", - "regular": "https://fonts.gstatic.com/s/marhey/v8/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBctwO2cXiGevOMw.ttf", - "500": "https://fonts.gstatic.com/s/marhey/v8/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBflwO2cXiGevOMw.ttf", - "600": "https://fonts.gstatic.com/s/marhey/v8/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBRV3O2cXiGevOMw.ttf", - "700": "https://fonts.gstatic.com/s/marhey/v8/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBSx3O2cXiGevOMw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/marhey/v8/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBctwC2YdjA.ttf" - }, - { - "family": "Markazi Text", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v28", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/markazitext/v28/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtfSQT4MlBekmJLo.ttf", - "500": "https://fonts.gstatic.com/s/markazitext/v28/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtcaQT4MlBekmJLo.ttf", - "600": "https://fonts.gstatic.com/s/markazitext/v28/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtSqXT4MlBekmJLo.ttf", - "700": "https://fonts.gstatic.com/s/markazitext/v28/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtROXT4MlBekmJLo.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/markazitext/v28/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtfSQf4IvAQ.ttf" - }, - { - "family": "Marko One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/markoone/v24/9Btq3DFG0cnVM5lw1haaKpUfrHPzUw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/markoone/v24/9Btq3DFG0cnVM5lw1haqK58b.ttf" - }, - { - "family": "Marmelad", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/marmelad/v19/Qw3eZQdSHj_jK2e-8tFLG-YMC0R8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/marmelad/v19/Qw3eZQdSHj_jK2e-8uFKEeI.ttf" - }, - { - "family": "Martel", - "variants": [ - "200", - "300", - "regular", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/martel/v12/PN_yRfK9oXHga0XVqekahRbX9vnDzw.ttf", - "300": "https://fonts.gstatic.com/s/martel/v12/PN_yRfK9oXHga0XVzeoahRbX9vnDzw.ttf", - "regular": "https://fonts.gstatic.com/s/martel/v12/PN_xRfK9oXHga0XtYcI-jT3L_w.ttf", - "600": "https://fonts.gstatic.com/s/martel/v12/PN_yRfK9oXHga0XVuewahRbX9vnDzw.ttf", - "700": "https://fonts.gstatic.com/s/martel/v12/PN_yRfK9oXHga0XV3e0ahRbX9vnDzw.ttf", - "800": "https://fonts.gstatic.com/s/martel/v12/PN_yRfK9oXHga0XVwe4ahRbX9vnDzw.ttf", - "900": "https://fonts.gstatic.com/s/martel/v12/PN_yRfK9oXHga0XV5e8ahRbX9vnDzw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/martel/v12/PN_xRfK9oXHga0XdYMg6.ttf" - }, - { - "family": "Martel Sans", - "variants": [ - "200", - "300", - "regular", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/martelsans/v14/h0GxssGi7VdzDgKjM-4d8hAX5suHFUknqMxQ.ttf", - "300": "https://fonts.gstatic.com/s/martelsans/v14/h0GxssGi7VdzDgKjM-4d8hBz5cuHFUknqMxQ.ttf", - "regular": "https://fonts.gstatic.com/s/martelsans/v14/h0GsssGi7VdzDgKjM-4d8ijfze-PPlUu.ttf", - "600": "https://fonts.gstatic.com/s/martelsans/v14/h0GxssGi7VdzDgKjM-4d8hAH48uHFUknqMxQ.ttf", - "700": "https://fonts.gstatic.com/s/martelsans/v14/h0GxssGi7VdzDgKjM-4d8hBj4suHFUknqMxQ.ttf", - "800": "https://fonts.gstatic.com/s/martelsans/v14/h0GxssGi7VdzDgKjM-4d8hB_4cuHFUknqMxQ.ttf", - "900": "https://fonts.gstatic.com/s/martelsans/v14/h0GxssGi7VdzDgKjM-4d8hBb4MuHFUknqMxQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/martelsans/v14/h0GsssGi7VdzDgKjM-4d8hjex-s.ttf" - }, - { - "family": "Martian Mono", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v6", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/martianmono/v6/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1qus6WD75kdpF2.ttf", - "200": "https://fonts.gstatic.com/s/martianmono/v6/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY3qu86WD75kdpF2.ttf", - "300": "https://fonts.gstatic.com/s/martianmono/v6/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY00u86WD75kdpF2.ttf", - "regular": "https://fonts.gstatic.com/s/martianmono/v6/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1qu86WD75kdpF2.ttf", - "500": "https://fonts.gstatic.com/s/martianmono/v6/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1Yu86WD75kdpF2.ttf", - "600": "https://fonts.gstatic.com/s/martianmono/v6/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY20vM6WD75kdpF2.ttf", - "700": "https://fonts.gstatic.com/s/martianmono/v6/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY2NvM6WD75kdpF2.ttf", - "800": "https://fonts.gstatic.com/s/martianmono/v6/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY3qvM6WD75kdpF2.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/martianmono/v6/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1qu_6XBbo.ttf" - }, - { - "family": "Marvel", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/marvel/v17/nwpVtKeoNgBV0qaIkV7ED366zg.ttf", - "italic": "https://fonts.gstatic.com/s/marvel/v17/nwpXtKeoNgBV0qa4k1TALXuqzhA7.ttf", - "700": "https://fonts.gstatic.com/s/marvel/v17/nwpWtKeoNgBV0qawLXHgB1WmxwkiYQ.ttf", - "700italic": "https://fonts.gstatic.com/s/marvel/v17/nwpQtKeoNgBV0qa4k2x8Al-i5QwyYdrc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/marvel/v17/nwpVtKeoNgBV0qa4kFTA.ttf" - }, - { - "family": "Matangi", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-08-26", - "files": { - "300": "https://fonts.gstatic.com/s/matangi/v5/kmKiZqE2FhDIeX2QvjZNI_5FGeJet7PICDYwI8Gcw6Oi.ttf", - "regular": "https://fonts.gstatic.com/s/matangi/v5/kmKiZqE2FhDIeX2QvjZNI_5FGeJet7OWCDYwI8Gcw6Oi.ttf", - "500": "https://fonts.gstatic.com/s/matangi/v5/kmKiZqE2FhDIeX2QvjZNI_5FGeJet7OkCDYwI8Gcw6Oi.ttf", - "600": "https://fonts.gstatic.com/s/matangi/v5/kmKiZqE2FhDIeX2QvjZNI_5FGeJet7NIDzYwI8Gcw6Oi.ttf", - "700": "https://fonts.gstatic.com/s/matangi/v5/kmKiZqE2FhDIeX2QvjZNI_5FGeJet7NxDzYwI8Gcw6Oi.ttf", - "800": "https://fonts.gstatic.com/s/matangi/v5/kmKiZqE2FhDIeX2QvjZNI_5FGeJet7MWDzYwI8Gcw6Oi.ttf", - "900": "https://fonts.gstatic.com/s/matangi/v5/kmKiZqE2FhDIeX2QvjZNI_5FGeJet7M_DzYwI8Gcw6Oi.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/matangi/v5/kmKiZqE2FhDIeX2QvjZNI_5FGeJet7OWCAYxKcU.ttf" - }, - { - "family": "Mate", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/mate/v19/m8JdjftRd7WZ2z28WoXSaLU.ttf", - "italic": "https://fonts.gstatic.com/s/mate/v19/m8JTjftRd7WZ6z-2XqfXeLVdbw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mate/v19/m8JdjftRd7WZ6zy2Xg.ttf" - }, - { - "family": "Mate SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/matesc/v23/-nF8OGQ1-uoVr2wKyiXZ95OkJwA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/matesc/v23/-nF8OGQ1-uoVr2wK-iTT8w.ttf" - }, - { - "family": "Matemasie", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/matemasie/v4/OD5BuMCN3ne3Gmr7dlL3rEq4DL6w2w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/matemasie/v4/OD5BuMCN3ne3Gmr7dlLHrUC8.ttf" - }, - { - "family": "Material Icons", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v145", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/materialicons/v145/flUhRq6tzZclQEJ-Vdg-IuiaDsNZIhI8tIHh.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/materialicons/v145/flUhRq6tzZclQEJ-Vdg-IuiaDvNYKBY.ttf" - }, - { - "family": "Material Icons Outlined", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v110", - "lastModified": "2025-06-17", - "files": { - "regular": "https://fonts.gstatic.com/s/materialiconsoutlined/v110/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcdl5GuI2Ze.otf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/materialiconsoutlined/v110/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhXcanZM.otf" - }, - { - "family": "Material Icons Round", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v109", - "lastModified": "2025-06-17", - "files": { - "regular": "https://fonts.gstatic.com/s/materialiconsround/v109/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmMq_fTTvg-.otf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/materialiconsround/v109/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flzmLofU.otf" - }, - { - "family": "Material Icons Sharp", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v110", - "lastModified": "2025-06-17", - "files": { - "regular": "https://fonts.gstatic.com/s/materialiconssharp/v110/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvSImEyc0vd.otf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/materialiconssharp/v110/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvlvVKGM.otf" - }, - { - "family": "Material Icons Two Tone", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v113", - "lastModified": "2025-06-17", - "files": { - "regular": "https://fonts.gstatic.com/s/materialiconstwotone/v113/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu3NjDrH_77.otf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/materialiconstwotone/v113/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNBuwPDI.otf", - "colorCapabilities": [ - "COLRv0" - ] - }, - { - "family": "Material Symbols", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-10-17", - "files": { - "100": "https://fonts.gstatic.com/s/materialsymbols/v17/d6kSkb-sS9m3-i1LgQNcsFOOuLQXvG559b5GLMxCWRtThFK5gn7xw7XblIl2peTfMb7ONaa2_wzcUHR1Ukiw2RYw2vadH3BFk0G4701x-cU0BaNVXEHuRbn3PT2vOA.ttf", - "200": "https://fonts.gstatic.com/s/materialsymbols/v17/d6kSkb-sS9m3-i1LgQNcsFOOuLQXvG559b5GLMxCWRtThFK5gn7xw7XblIl2peTfMb7ONaa2_wzcUHR1Ukiw2RYw2vadH3BFk0G4701x-cU0BaNV3EDuRbn3PT2vOA.ttf", - "300": "https://fonts.gstatic.com/s/materialsymbols/v17/d6kSkb-sS9m3-i1LgQNcsFOOuLQXvG559b5GLMxCWRtThFK5gn7xw7XblIl2peTfMb7ONaa2_wzcUHR1Ukiw2RYw2vadH3BFk0G4701x-cU0BaNVAkDuRbn3PT2vOA.ttf", - "regular": "https://fonts.gstatic.com/s/materialsymbols/v17/d6kSkb-sS9m3-i1LgQNcsFOOuLQXvG559b5GLMxCWRtThFK5gn7xw7XblIl2peTfMb7ONaa2_wzcUHR1Ukiw2RYw2vadH3BFk0G4701x-cU0BaNVXEDuRbn3PT2vOA.ttf", - "500": "https://fonts.gstatic.com/s/materialsymbols/v17/d6kSkb-sS9m3-i1LgQNcsFOOuLQXvG559b5GLMxCWRtThFK5gn7xw7XblIl2peTfMb7ONaa2_wzcUHR1Ukiw2RYw2vadH3BFk0G4701x-cU0BaNVbkDuRbn3PT2vOA.ttf", - "600": "https://fonts.gstatic.com/s/materialsymbols/v17/d6kSkb-sS9m3-i1LgQNcsFOOuLQXvG559b5GLMxCWRtThFK5gn7xw7XblIl2peTfMb7ONaa2_wzcUHR1Ukiw2RYw2vadH3BFk0G4701x-cU0BaNVgkfuRbn3PT2vOA.ttf", - "700": "https://fonts.gstatic.com/s/materialsymbols/v17/d6kSkb-sS9m3-i1LgQNcsFOOuLQXvG559b5GLMxCWRtThFK5gn7xw7XblIl2peTfMb7ONaa2_wzcUHR1Ukiw2RYw2vadH3BFk0G4701x-cU0BaNVu0fuRbn3PT2vOA.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/materialsymbols/v17/d6kSkb-sS9m3-i1LgQNcsFOOuLQXvG559b5GLMxCWRtThFK5gn7xw7XblIl2peTfMb7ONaa2_wzcUHR1Ukiw2RYw2vadH3BFk0G4701x-cU0BaNVXEDeRLPz.ttf" - }, - { - "family": "Material Symbols Outlined", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v290", - "lastModified": "2025-10-17", - "files": { - "100": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v290/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCvHeembd5zrTgt.ttf", - "200": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v290/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDAvHOembd5zrTgt.ttf", - "300": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v290/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDDxHOembd5zrTgt.ttf", - "regular": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v290/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCvHOembd5zrTgt.ttf", - "500": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v290/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCdHOembd5zrTgt.ttf", - "600": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v290/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDBxG-embd5zrTgt.ttf", - "700": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v290/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDBIG-embd5zrTgt.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v290/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCvHNenZ9o.ttf" - }, - { - "family": "Material Symbols Rounded", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v291", - "lastModified": "2025-10-17", - "files": { - "100": "https://fonts.gstatic.com/s/materialsymbolsrounded/v291/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIekXxKJKJBjAa8.ttf", - "200": "https://fonts.gstatic.com/s/materialsymbolsrounded/v291/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rAelXxKJKJBjAa8.ttf", - "300": "https://fonts.gstatic.com/s/materialsymbolsrounded/v291/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rNmlXxKJKJBjAa8.ttf", - "regular": "https://fonts.gstatic.com/s/materialsymbolsrounded/v291/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIelXxKJKJBjAa8.ttf", - "500": "https://fonts.gstatic.com/s/materialsymbolsrounded/v291/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rLWlXxKJKJBjAa8.ttf", - "600": "https://fonts.gstatic.com/s/materialsymbolsrounded/v291/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rFmiXxKJKJBjAa8.ttf", - "700": "https://fonts.gstatic.com/s/materialsymbolsrounded/v291/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rGCiXxKJKJBjAa8.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/materialsymbolsrounded/v291/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIelbxODLA.ttf" - }, - { - "family": "Material Symbols Sharp", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v287", - "lastModified": "2025-10-17", - "files": { - "100": "https://fonts.gstatic.com/s/materialsymbolssharp/v287/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxOLozCOJ1H7-knk.ttf", - "200": "https://fonts.gstatic.com/s/materialsymbolssharp/v287/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxMLojCOJ1H7-knk.ttf", - "300": "https://fonts.gstatic.com/s/materialsymbolssharp/v287/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxPVojCOJ1H7-knk.ttf", - "regular": "https://fonts.gstatic.com/s/materialsymbolssharp/v287/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxOLojCOJ1H7-knk.ttf", - "500": "https://fonts.gstatic.com/s/materialsymbolssharp/v287/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxO5ojCOJ1H7-knk.ttf", - "600": "https://fonts.gstatic.com/s/materialsymbolssharp/v287/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxNVpTCOJ1H7-knk.ttf", - "700": "https://fonts.gstatic.com/s/materialsymbolssharp/v287/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxNspTCOJ1H7-knk.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/materialsymbolssharp/v287/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxOLogCPLVU.ttf" - }, - { - "family": "Maven Pro", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v40", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/mavenpro/v40/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8SX25nCpozp5GvU.ttf", - "500": "https://fonts.gstatic.com/s/mavenpro/v40/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8Rf25nCpozp5GvU.ttf", - "600": "https://fonts.gstatic.com/s/mavenpro/v40/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8fvx5nCpozp5GvU.ttf", - "700": "https://fonts.gstatic.com/s/mavenpro/v40/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8cLx5nCpozp5GvU.ttf", - "800": "https://fonts.gstatic.com/s/mavenpro/v40/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8aXx5nCpozp5GvU.ttf", - "900": "https://fonts.gstatic.com/s/mavenpro/v40/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8Yzx5nCpozp5GvU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mavenpro/v40/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8SX21nGjpw.ttf" - }, - { - "family": "McLaren", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/mclaren/v19/2EbnL-ZuAXFqZFXISYYf8z2Yt_c.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mclaren/v19/2EbnL-ZuAXFqZFXIeYcV9w.ttf" - }, - { - "family": "Mea Culpa", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/meaculpa/v8/AMOTz4GcuWbEIuza8jsZms0QW3mqyg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/meaculpa/v8/AMOTz4GcuWbEIuza8jspm8cU.ttf" - }, - { - "family": "Meddon", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/meddon/v27/kmK8ZqA2EgDNeHTZhBdB3y_Aow.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/meddon/v27/kmK8ZqA2EgDNeHTphR1F.ttf" - }, - { - "family": "MedievalSharp", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/medievalsharp/v28/EvOJzAlL3oU5AQl2mP5KdgptAq96MwvXLDk.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/medievalsharp/v28/EvOJzAlL3oU5AQl2mP5KdgptMq5wNw.ttf" - }, - { - "family": "Medula One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/medulaone/v20/YA9Wr0qb5kjJM6l2V0yukiEqs7GtlvY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/medulaone/v20/YA9Wr0qb5kjJM6l2V0yuoiAgtw.ttf" - }, - { - "family": "Meera Inimai", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "tamil" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/meerainimai/v14/845fNMM5EIqOW5MPuvO3ILep_2jDVevnLQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/meerainimai/v14/845fNMM5EIqOW5MPuvO3ILeZ_mLH.ttf" - }, - { - "family": "Megrim", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/megrim/v18/46kulbz5WjvLqJZlbWXgd0RY1g.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/megrim/v18/46kulbz5WjvLqJZVbG_k.ttf" - }, - { - "family": "Meie Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/meiescript/v22/_LOImzDK7erRjhunIspaMjxn5IXg0WDz.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/meiescript/v22/_LOImzDK7erRjhunIspaMgxm7oE.ttf" - }, - { - "family": "Menbere", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "ethiopic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-06-25", - "files": { - "100": "https://fonts.gstatic.com/s/menbere/v1/lJwY-p0zhmBrWvcG80OiXWeXfSDWXdI_9qn1UnpeWOQ5.ttf", - "200": "https://fonts.gstatic.com/s/menbere/v1/lJwY-p0zhmBrWvcG80OiXWeXfSDWXdK_96n1UnpeWOQ5.ttf", - "300": "https://fonts.gstatic.com/s/menbere/v1/lJwY-p0zhmBrWvcG80OiXWeXfSDWXdJh96n1UnpeWOQ5.ttf", - "regular": "https://fonts.gstatic.com/s/menbere/v1/lJwY-p0zhmBrWvcG80OiXWeXfSDWXdI_96n1UnpeWOQ5.ttf", - "500": "https://fonts.gstatic.com/s/menbere/v1/lJwY-p0zhmBrWvcG80OiXWeXfSDWXdIN96n1UnpeWOQ5.ttf", - "600": "https://fonts.gstatic.com/s/menbere/v1/lJwY-p0zhmBrWvcG80OiXWeXfSDWXdLh8Kn1UnpeWOQ5.ttf", - "700": "https://fonts.gstatic.com/s/menbere/v1/lJwY-p0zhmBrWvcG80OiXWeXfSDWXdLY8Kn1UnpeWOQ5.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/menbere/v1/lJwY-p0zhmBrWvcG80OiXWeXfSDWXdI_95n0WH4.ttf" - }, - { - "family": "Meow Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/meowscript/v6/0FlQVPqanlaJrtr8AnJ0ESch0_0CfDf1.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/meowscript/v6/0FlQVPqanlaJrtr8AnJ0ERcg2fk.ttf" - }, - { - "family": "Merienda", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/merienda/v22/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5JHhoSU78QGBV0A.ttf", - "regular": "https://fonts.gstatic.com/s/merienda/v22/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5enhoSU78QGBV0A.ttf", - "500": "https://fonts.gstatic.com/s/merienda/v22/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5SHhoSU78QGBV0A.ttf", - "600": "https://fonts.gstatic.com/s/merienda/v22/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5pH9oSU78QGBV0A.ttf", - "700": "https://fonts.gstatic.com/s/merienda/v22/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5nX9oSU78QGBV0A.ttf", - "800": "https://fonts.gstatic.com/s/merienda/v22/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5-n9oSU78QGBV0A.ttf", - "900": "https://fonts.gstatic.com/s/merienda/v22/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5039oSU78QGBV0A.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/merienda/v22/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5enhYSET4.ttf" - }, - { - "family": "Merriweather", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v33", - "lastModified": "2025-09-02", - "files": { - "300": "https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDrgCcqE1f0KvXKYQ.ttf", - "regular": "https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDr3icqE1f0KvXKYQ.ttf", - "500": "https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDr7CcqE1f0KvXKYQ.ttf", - "600": "https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDrACAqE1f0KvXKYQ.ttf", - "700": "https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDrOSAqE1f0KvXKYQ.ttf", - "800": "https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDrXiAqE1f0KvXKYQ.ttf", - "900": "https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDrdyAqE1f0KvXKYQ.ttf", - "300italic": "https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmScUF3wCPDaYa_F.ttf", - "italic": "https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmTCUF3wCPDaYa_F.ttf", - "500italic": "https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmTwUF3wCPDaYa_F.ttf", - "600italic": "https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmQcV13wCPDaYa_F.ttf", - "700italic": "https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmQlV13wCPDaYa_F.ttf", - "800italic": "https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmRCV13wCPDaYa_F.ttf", - "900italic": "https://fonts.gstatic.com/s/merriweather/v33/u-4B0qyriQwlOrhSvowK_l5-eTxCVx0ZbwLvKH2Gk9hLmp0v5yA-xXPqCzLvPee1XYk_XSf-FmRrV13wCPDaYa_F.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/merriweather/v33/u-4D0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiScCmDxhtNOKl8yDr3icaEl3w.ttf" - }, - { - "family": "Merriweather Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZ_O4ljuEG7xFHnQ.ttf", - "regular": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZou4ljuEG7xFHnQ.ttf", - "500": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZkO4ljuEG7xFHnQ.ttf", - "600": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZfOkljuEG7xFHnQ.ttf", - "700": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZRekljuEG7xFHnQ.ttf", - "800": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZIukljuEG7xFHnQ.ttf", - "300italic": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq2TzesCzRRXnaur.ttf", - "italic": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq3NzesCzRRXnaur.ttf", - "500italic": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq3_zesCzRRXnaur.ttf", - "600italic": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq0TyusCzRRXnaur.ttf", - "700italic": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq0qyusCzRRXnaur.ttf", - "800italic": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq1NyusCzRRXnaur.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/merriweathersans/v28/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZou4Vj-sC.ttf" - }, - { - "family": "Metal", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v32", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/metal/v32/lW-wwjUJIXTo7i3nnoQAUdN2.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/metal/v32/lW-wwjUJIXTo7h3mlIA.ttf" - }, - { - "family": "Metal Mania", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/metalmania/v23/RWmMoKWb4e8kqMfBUdPFJeXCg6UKDXlq.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/metalmania/v23/RWmMoKWb4e8kqMfBUdPFJdXDiaE.ttf" - }, - { - "family": "Metamorphous", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/metamorphous/v22/Wnz8HA03aAXcC39ZEX5y1330PCCthTsmaQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/metamorphous/v22/Wnz8HA03aAXcC39ZEX5y133EPSqp.ttf" - }, - { - "family": "Metrophobic", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/metrophobic/v24/sJoA3LZUhMSAPV_u0qwiAT-J737FPEEL.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/metrophobic/v24/sJoA3LZUhMSAPV_u0qwiAQ-I5Xo.ttf" - }, - { - "family": "Michroma", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/michroma/v21/PN_zRfy9qWD8fEagAMg6rzjb_-Da.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/michroma/v21/PN_zRfy9qWD8fEagAPg7pTw.ttf" - }, - { - "family": "Micro 5", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/micro5/v2/H4cnBX2MkcfEngTr0gYQ7LO5mqc.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/micro5/v2/H4cnBX2MkcfEngTr4gca6A.ttf" - }, - { - "family": "Micro 5 Charted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/micro5charted/v2/hESp6XxmPDtTtADZhn7oD_yrmxEGRUsJQAlbUA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/micro5charted/v2/hESp6XxmPDtTtADZhn7oD_yrmxE2REEN.ttf" - }, - { - "family": "Milonga", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/milonga/v24/SZc53FHnIaK9W5kffz3GkUrS8DI.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/milonga/v24/SZc53FHnIaK9W5kfTzzMlQ.ttf" - }, - { - "family": "Miltonian", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v32", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/miltonian/v32/zOL-4pbPn6Ne9JqTg9mr6e5As-FeiQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/miltonian/v32/zOL-4pbPn6Ne9JqTg9mb6ORE.ttf" - }, - { - "family": "Miltonian Tattoo", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v34", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/miltoniantattoo/v34/EvOUzBRL0o0kCxF-lcMCQxlpVsA_FwP8MDBku-s.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/miltoniantattoo/v34/EvOUzBRL0o0kCxF-lcMCQxlpVsA_JwL2NA.ttf" - }, - { - "family": "Mina", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "bengali", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/mina/v14/-nFzOGc18vARrz9j7i3y65o.ttf", - "700": "https://fonts.gstatic.com/s/mina/v14/-nF8OGc18vARl4NMyiXZ95OkJwA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mina/v14/-nFzOGc18vARnz5p6g.ttf" - }, - { - "family": "Mingzat", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "lepcha" - ], - "version": "v11", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/mingzat/v11/0QIgMX5C-o-oWWyvBttkm_mv670.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mingzat/v11/0QIgMX5C-o-oWWyvNtpunw.ttf" - }, - { - "family": "Miniver", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/miniver/v27/eLGcP-PxIg-5H0vC770Cy8r8fWA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/miniver/v27/eLGcP-PxIg-5H0vC37wIzw.ttf" - }, - { - "family": "Miriam Libre", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/miriamlibre/v19/DdT0798HsHwubBAqfkcBTL_1a7sPlXcE8PJjH9P3k9vGL-8tY7Q.ttf", - "500": "https://fonts.gstatic.com/s/miriamlibre/v19/DdT0798HsHwubBAqfkcBTL_1a7sPlXcE8PJjH-H3k9vGL-8tY7Q.ttf", - "600": "https://fonts.gstatic.com/s/miriamlibre/v19/DdT0798HsHwubBAqfkcBTL_1a7sPlXcE8PJjHw3wk9vGL-8tY7Q.ttf", - "700": "https://fonts.gstatic.com/s/miriamlibre/v19/DdT0798HsHwubBAqfkcBTL_1a7sPlXcE8PJjHzTwk9vGL-8tY7Q.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/miriamlibre/v19/DdT0798HsHwubBAqfkcBTL_1a7sPlXcE8PJjH9P3o9rMKw.ttf" - }, - { - "family": "Mirza", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/mirza/v19/co3ImWlikiN5EurdKMewsrvI.ttf", - "500": "https://fonts.gstatic.com/s/mirza/v19/co3FmWlikiN5EtIpAeO4mafBomDi.ttf", - "600": "https://fonts.gstatic.com/s/mirza/v19/co3FmWlikiN5EtIFBuO4mafBomDi.ttf", - "700": "https://fonts.gstatic.com/s/mirza/v19/co3FmWlikiN5EtJhB-O4mafBomDi.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mirza/v19/co3ImWlikiN5EtrcIsM.ttf" - }, - { - "family": "Miss Fajardose", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/missfajardose/v23/E21-_dn5gvrawDdPFVl-N0Ajb8qvWPaJq4no.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/missfajardose/v23/E21-_dn5gvrawDdPFVl-N0Ajb_quUvI.ttf" - }, - { - "family": "Mitr", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/mitr/v13/pxiEypw5ucZF8fMZFJDUc1NECPY.ttf", - "300": "https://fonts.gstatic.com/s/mitr/v13/pxiEypw5ucZF8ZcaFJDUc1NECPY.ttf", - "regular": "https://fonts.gstatic.com/s/mitr/v13/pxiLypw5ucZFyTsyMJj_b1o.ttf", - "500": "https://fonts.gstatic.com/s/mitr/v13/pxiEypw5ucZF8c8bFJDUc1NECPY.ttf", - "600": "https://fonts.gstatic.com/s/mitr/v13/pxiEypw5ucZF8eMcFJDUc1NECPY.ttf", - "700": "https://fonts.gstatic.com/s/mitr/v13/pxiEypw5ucZF8YcdFJDUc1NECPY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mitr/v13/pxiLypw5ucZF-To4NA.ttf" - }, - { - "family": "Mochiy Pop One", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin" - ], - "version": "v12", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/mochiypopone/v12/QdVPSTA9Jh-gg-5XZP2UmU4O9kwwD3s6ZKAi.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mochiypopone/v12/QdVPSTA9Jh-gg-5XZP2UmU4O9nwxBX8.ttf" - }, - { - "family": "Mochiy Pop P One", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin" - ], - "version": "v12", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/mochiypoppone/v12/Ktk2AKuPeY_td1-h9LayHYWCjAqyN4O3WYZB_sU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mochiypoppone/v12/Ktk2AKuPeY_td1-h9LayHYWCjAqyB4K9XQ.ttf" - }, - { - "family": "Modak", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/modak/v21/EJRYQgs1XtIEsnMH8BVZ76KU.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/modak/v21/EJRYQgs1XtIEskMG-hE.ttf" - }, - { - "family": "Modern Antiqua", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/modernantiqua/v26/NGStv5TIAUg6Iq_RLNo_2dp1sI1Ea2u0c3Gi.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/modernantiqua/v26/NGStv5TIAUg6Iq_RLNo_2dp1sL1FYW8.ttf" - }, - { - "family": "Moderustic", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/moderustic/v3/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjBVsTNe55aRa7UE.ttf", - "regular": "https://fonts.gstatic.com/s/moderustic/v3/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjALsTNe55aRa7UE.ttf", - "500": "https://fonts.gstatic.com/s/moderustic/v3/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjA5sTNe55aRa7UE.ttf", - "600": "https://fonts.gstatic.com/s/moderustic/v3/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjDVtjNe55aRa7UE.ttf", - "700": "https://fonts.gstatic.com/s/moderustic/v3/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjDstjNe55aRa7UE.ttf", - "800": "https://fonts.gstatic.com/s/moderustic/v3/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjCLtjNe55aRa7UE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/moderustic/v3/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjALsQNf7ZI.ttf" - }, - { - "family": "Mogra", - "variants": [ - "regular" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/mogra/v22/f0X40eSs8c95TBo4DvLmxtnG.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mogra/v22/f0X40eSs8c95TCo5BPY.ttf" - }, - { - "family": "Mohave", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/mohave/v13/7cH0v4ksjJunKqMVAOPIMOeSmiojdif_HvCQopLSvBk.ttf", - "regular": "https://fonts.gstatic.com/s/mohave/v13/7cH0v4ksjJunKqMVAOPIMOeSmiojdnn_HvCQopLSvBk.ttf", - "500": "https://fonts.gstatic.com/s/mohave/v13/7cH0v4ksjJunKqMVAOPIMOeSmiojdkv_HvCQopLSvBk.ttf", - "600": "https://fonts.gstatic.com/s/mohave/v13/7cH0v4ksjJunKqMVAOPIMOeSmiojdqf4HvCQopLSvBk.ttf", - "700": "https://fonts.gstatic.com/s/mohave/v13/7cH0v4ksjJunKqMVAOPIMOeSmiojdp74HvCQopLSvBk.ttf", - "300italic": "https://fonts.gstatic.com/s/mohave/v13/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8qLOaprDXrBlSVw.ttf", - "italic": "https://fonts.gstatic.com/s/mohave/v13/7cH2v4ksjJunKqM_CdE36I75AIQkY7G89rOaprDXrBlSVw.ttf", - "500italic": "https://fonts.gstatic.com/s/mohave/v13/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8xLOaprDXrBlSVw.ttf", - "600italic": "https://fonts.gstatic.com/s/mohave/v13/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8KLSaprDXrBlSVw.ttf", - "700italic": "https://fonts.gstatic.com/s/mohave/v13/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8EbSaprDXrBlSVw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mohave/v13/7cH0v4ksjJunKqMVAOPIMOeSmiojdnn_LvGapg.ttf" - }, - { - "family": "Moirai One", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/moiraione/v1/2sDbZGFUgJLJmby6xgNGT0WWB7UcfCg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/moiraione/v1/2sDbZGFUgJLJmby6xgNGf0ScAw.ttf" - }, - { - "family": "Molengo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/molengo/v17/I_uuMpWeuBzZNBtQbbRQkiCvs5Y.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/molengo/v17/I_uuMpWeuBzZNBtQXbValg.ttf" - }, - { - "family": "Molle", - "variants": [ - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "italic": "https://fonts.gstatic.com/s/molle/v25/E21n_dL5hOXFhWEsXzgmVydREus.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/molle/v25/E21n_dL5hOXFhWEsbzksUw.ttf" - }, - { - "family": "Mona Sans", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/monasans/v4/o-0mIpQmx24alC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyB9A99d41P6zHtY.ttf", - "300": "https://fonts.gstatic.com/s/monasans/v4/o-0mIpQmx24alC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyCjA99d41P6zHtY.ttf", - "regular": "https://fonts.gstatic.com/s/monasans/v4/o-0mIpQmx24alC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyD9A99d41P6zHtY.ttf", - "500": "https://fonts.gstatic.com/s/monasans/v4/o-0mIpQmx24alC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyDPA99d41P6zHtY.ttf", - "600": "https://fonts.gstatic.com/s/monasans/v4/o-0mIpQmx24alC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyAjBN9d41P6zHtY.ttf", - "700": "https://fonts.gstatic.com/s/monasans/v4/o-0mIpQmx24alC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyAaBN9d41P6zHtY.ttf", - "800": "https://fonts.gstatic.com/s/monasans/v4/o-0mIpQmx24alC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyB9BN9d41P6zHtY.ttf", - "900": "https://fonts.gstatic.com/s/monasans/v4/o-0mIpQmx24alC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyBUBN9d41P6zHtY.ttf", - "200italic": "https://fonts.gstatic.com/s/monasans/v4/o-0kIpQmx24alC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QLce6VfYyWtY1rI.ttf", - "300italic": "https://fonts.gstatic.com/s/monasans/v4/o-0kIpQmx24alC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QGke6VfYyWtY1rI.ttf", - "italic": "https://fonts.gstatic.com/s/monasans/v4/o-0kIpQmx24alC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QDce6VfYyWtY1rI.ttf", - "500italic": "https://fonts.gstatic.com/s/monasans/v4/o-0kIpQmx24alC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QAUe6VfYyWtY1rI.ttf", - "600italic": "https://fonts.gstatic.com/s/monasans/v4/o-0kIpQmx24alC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QOkZ6VfYyWtY1rI.ttf", - "700italic": "https://fonts.gstatic.com/s/monasans/v4/o-0kIpQmx24alC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QNAZ6VfYyWtY1rI.ttf", - "800italic": "https://fonts.gstatic.com/s/monasans/v4/o-0kIpQmx24alC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QLcZ6VfYyWtY1rI.ttf", - "900italic": "https://fonts.gstatic.com/s/monasans/v4/o-0kIpQmx24alC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QJ4Z6VfYyWtY1rI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/monasans/v4/o-0mIpQmx24alC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyD9A-9c6Vc.ttf" - }, - { - "family": "Monda", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/monda/v19/TK3-WkYFABsmjuBtFuvTIFRAPpWsH3oMoWtGaA-Ijw.ttf", - "500": "https://fonts.gstatic.com/s/monda/v19/TK3-WkYFABsmjuBtFuvTIFRAPpWsLXoMoWtGaA-Ijw.ttf", - "600": "https://fonts.gstatic.com/s/monda/v19/TK3-WkYFABsmjuBtFuvTIFRAPpWswX0MoWtGaA-Ijw.ttf", - "700": "https://fonts.gstatic.com/s/monda/v19/TK3-WkYFABsmjuBtFuvTIFRAPpWs-H0MoWtGaA-Ijw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/monda/v19/TK3-WkYFABsmjuBtFuvTIFRAPpWsH3o8oGFC.ttf" - }, - { - "family": "Monofett", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/monofett/v24/mFTyWbofw6zc9NtnW43SuRwr0VJ7.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/monofett/v24/mFTyWbofw6zc9NtnW73Tsxg.ttf" - }, - { - "family": "Monomakh", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/monomakh/v1/Wnz4HAk3Yh_SC3FACTYdiArcPRKo.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/monomakh/v1/Wnz4HAk3Yh_SC3FACQYcgg4.ttf" - }, - { - "family": "Monomaniac One", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/monomaniacone/v15/4iC06K17YctZjx50EU-QlwPmcqRnqYkB5kwI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/monomaniacone/v15/4iC06K17YctZjx50EU-QlwPmcpRmo40.ttf" - }, - { - "family": "Monoton", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/monoton/v22/5h1aiZUrOngCibe4fkbBQ2S7FU8.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/monoton/v22/5h1aiZUrOngCibe4TkfLRw.ttf" - }, - { - "family": "Monsieur La Doulaise", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/monsieurladoulaise/v20/_Xmz-GY4rjmCbQfc-aPRaa4pqV340p7EZl5ewkEU4HTy.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/monsieurladoulaise/v20/_Xmz-GY4rjmCbQfc-aPRaa4pqV340p7EZm5fyEU.ttf" - }, - { - "family": "Montaga", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/montaga/v14/H4cnBX2Ml8rCkEO_0gYQ7LO5mqc.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/montaga/v14/H4cnBX2Ml8rCkEO_4gca6A.ttf" - }, - { - "family": "Montagu Slab", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/montaguslab/v17/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDbE3P9Fs7bOSO7.ttf", - "200": "https://fonts.gstatic.com/s/montaguslab/v17/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkBbEnP9Fs7bOSO7.ttf", - "300": "https://fonts.gstatic.com/s/montaguslab/v17/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkCFEnP9Fs7bOSO7.ttf", - "regular": "https://fonts.gstatic.com/s/montaguslab/v17/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDbEnP9Fs7bOSO7.ttf", - "500": "https://fonts.gstatic.com/s/montaguslab/v17/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDpEnP9Fs7bOSO7.ttf", - "600": "https://fonts.gstatic.com/s/montaguslab/v17/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkAFFXP9Fs7bOSO7.ttf", - "700": "https://fonts.gstatic.com/s/montaguslab/v17/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkA8FXP9Fs7bOSO7.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/montaguslab/v17/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDbEkP8HMo.ttf" - }, - { - "family": "MonteCarlo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/montecarlo/v13/buEzpo6-f9X01GadLA0G0CoV_NxLeiw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/montecarlo/v13/buEzpo6-f9X01GadLA0G4Csf-A.ttf" - }, - { - "family": "Montez", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/montez/v25/845ZNMk5GoGIX8lm1LDeSd-R_g.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/montez/v25/845ZNMk5GoGIX8lW1bra.ttf" - }, - { - "family": "Montserrat", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v31", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Uw-Y3tcoqK5.ttf", - "200": "https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvr6Ew-Y3tcoqK5.ttf", - "300": "https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCs16Ew-Y3tcoqK5.ttf", - "regular": "https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew-Y3tcoqK5.ttf", - "500": "https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew-Y3tcoqK5.ttf", - "600": "https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCu170w-Y3tcoqK5.ttf", - "700": "https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w-Y3tcoqK5.ttf", - "800": "https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvr70w-Y3tcoqK5.ttf", - "900": "https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvC70w-Y3tcoqK5.ttf", - "100italic": "https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R8aX9-p7K5ILg.ttf", - "200italic": "https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqyR9aX9-p7K5ILg.ttf", - "300italic": "https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq_p9aX9-p7K5ILg.ttf", - "italic": "https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R9aX9-p7K5ILg.ttf", - "500italic": "https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq5Z9aX9-p7K5ILg.ttf", - "600italic": "https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq3p6aX9-p7K5ILg.ttf", - "700italic": "https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq0N6aX9-p7K5ILg.ttf", - "800italic": "https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqyR6aX9-p7K5ILg.ttf", - "900italic": "https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqw16aX9-p7K5ILg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw_aX8.ttf" - }, - { - "family": "Montserrat Alternates", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/montserratalternates/v18/mFThWacfw6zH4dthXcyms1lPpC8I_b0juU0xiKfVKphL03l4.ttf", - "100italic": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTjWacfw6zH4dthXcyms1lPpC8I_b0juU057p-xIJxp1ml4imo.ttf", - "200": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xJIb1ALZH2mBhkw.ttf", - "200italic": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8dAbxD-GVxk3Nd.ttf", - "300": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xQIX1ALZH2mBhkw.ttf", - "300italic": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p95ArxD-GVxk3Nd.ttf", - "regular": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTvWacfw6zH4dthXcyms1lPpC8I_b0juU0J7K3RCJ1b0w.ttf", - "italic": "https://fonts.gstatic.com/s/montserratalternates/v18/mFThWacfw6zH4dthXcyms1lPpC8I_b0juU057qfVKphL03l4.ttf", - "500": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xGIT1ALZH2mBhkw.ttf", - "500italic": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8hA7xD-GVxk3Nd.ttf", - "600": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xNIP1ALZH2mBhkw.ttf", - "600italic": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8NBLxD-GVxk3Nd.ttf", - "700": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xUIL1ALZH2mBhkw.ttf", - "700italic": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p9pBbxD-GVxk3Nd.ttf", - "800": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xTIH1ALZH2mBhkw.ttf", - "800italic": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p91BrxD-GVxk3Nd.ttf", - "900": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xaID1ALZH2mBhkw.ttf", - "900italic": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p9RB7xD-GVxk3Nd.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/montserratalternates/v18/mFTvWacfw6zH4dthXcyms1lPpC8I_b0juU057afV.ttf" - }, - { - "family": "Montserrat Underline", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTbWaYfw6zH4dthXcyms01NtC8I_7U5uQQi5HMFnSdEx2F5Wil8ubbffHtmMw.ttf", - "200": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTbWaYfw6zH4dthXcyms01NtC8I_7U5uQQi5HMFnSdEx2F52ih8ubbffHtmMw.ttf", - "300": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTbWaYfw6zH4dthXcyms01NtC8I_7U5uQQi5HMFnSdEx2F5BCh8ubbffHtmMw.ttf", - "regular": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTbWaYfw6zH4dthXcyms01NtC8I_7U5uQQi5HMFnSdEx2F5Wih8ubbffHtmMw.ttf", - "500": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTbWaYfw6zH4dthXcyms01NtC8I_7U5uQQi5HMFnSdEx2F5aCh8ubbffHtmMw.ttf", - "600": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTbWaYfw6zH4dthXcyms01NtC8I_7U5uQQi5HMFnSdEx2F5hC98ubbffHtmMw.ttf", - "700": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTbWaYfw6zH4dthXcyms01NtC8I_7U5uQQi5HMFnSdEx2F5vS98ubbffHtmMw.ttf", - "800": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTbWaYfw6zH4dthXcyms01NtC8I_7U5uQQi5HMFnSdEx2F52i98ubbffHtmMw.ttf", - "900": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTbWaYfw6zH4dthXcyms01NtC8I_7U5uQQi5HMFnSdEx2F58y98ubbffHtmMw.ttf", - "100italic": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTdWaYfw6zH4dthXcyms01NtC8I_7U5uS4r1ozd9EzeaWZskmuU-7zbXn52M1Mi.ttf", - "200italic": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTdWaYfw6zH4dthXcyms01NtC8I_7U5uS4r1ozd9EzeaWZskmsU-rzbXn52M1Mi.ttf", - "300italic": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTdWaYfw6zH4dthXcyms01NtC8I_7U5uS4r1ozd9EzeaWZskmvK-rzbXn52M1Mi.ttf", - "italic": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTdWaYfw6zH4dthXcyms01NtC8I_7U5uS4r1ozd9EzeaWZskmuU-rzbXn52M1Mi.ttf", - "500italic": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTdWaYfw6zH4dthXcyms01NtC8I_7U5uS4r1ozd9EzeaWZskmum-rzbXn52M1Mi.ttf", - "600italic": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTdWaYfw6zH4dthXcyms01NtC8I_7U5uS4r1ozd9EzeaWZskmtK_bzbXn52M1Mi.ttf", - "700italic": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTdWaYfw6zH4dthXcyms01NtC8I_7U5uS4r1ozd9EzeaWZskmtz_bzbXn52M1Mi.ttf", - "800italic": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTdWaYfw6zH4dthXcyms01NtC8I_7U5uS4r1ozd9EzeaWZskmsU_bzbXn52M1Mi.ttf", - "900italic": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTdWaYfw6zH4dthXcyms01NtC8I_7U5uS4r1ozd9EzeaWZskms9_bzbXn52M1Mi.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/montserratunderline/v3/mFTbWaYfw6zH4dthXcyms01NtC8I_7U5uQQi5HMFnSdEx2F5WihMuLzb.ttf" - }, - { - "family": "Moo Lah Lah", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/moolahlah/v8/dg4h_p_opKZOA0w1AYcm55wtYQYugjW4.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/moolahlah/v8/dg4h_p_opKZOA0w1AYcm56wsawI.ttf" - }, - { - "family": "Mooli", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/mooli/v1/-F6_fjJpLyk1bYPBBG7YpzlJ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mooli/v1/-F6_fjJpLyk1bbPADmo.ttf" - }, - { - "family": "Moon Dance", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/moondance/v8/WBLgrEbUbFlYW9ekmGawe2XiKMiokE4.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/moondance/v8/WBLgrEbUbFlYW9ekmGawS2ToLA.ttf" - }, - { - "family": "Moul", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v30", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/moul/v30/nuF2D__FSo_3E-RYiJCy-00.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/moul/v30/nuF2D__FSo_3I-VSjA.ttf" - }, - { - "family": "Moulpali", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v33", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/moulpali/v33/H4ckBXKMl9HagUWymyY6wr-wg763.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/moulpali/v33/H4ckBXKMl9HagUWymxY7yLs.ttf" - }, - { - "family": "Mountains of Christmas", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/mountainsofchristmas/v24/3y9w6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7ePNamMPNpJpc.ttf", - "700": "https://fonts.gstatic.com/s/mountainsofchristmas/v24/3y9z6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7eBGqJFPtCOp6IaEA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mountainsofchristmas/v24/3y9w6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7eDNesNA.ttf" - }, - { - "family": "Mouse Memoirs", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/mousememoirs/v19/t5tmIRoSNJ-PH0WNNgDYxdSb7TnFrpOHYh4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mousememoirs/v19/t5tmIRoSNJ-PH0WNNgDYxdSb3TjPqg.ttf" - }, - { - "family": "Mozilla Headline", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-07-30", - "files": { - "200": "https://fonts.gstatic.com/s/mozillaheadline/v1/QGYLz-UXahmCOps4kyMKGuSA9pYt2_P-w2kFrS88o6cVYRvBSDSOuerB_FOBYIYVZRxvtcorUQ.ttf", - "300": "https://fonts.gstatic.com/s/mozillaheadline/v1/QGYLz-UXahmCOps4kyMKGuSA9pYt2_P-w2kFrS88o6cVYRvBSDSOuerB_FOBvoYVZRxvtcorUQ.ttf", - "regular": "https://fonts.gstatic.com/s/mozillaheadline/v1/QGYLz-UXahmCOps4kyMKGuSA9pYt2_P-w2kFrS88o6cVYRvBSDSOuerB_FOB4IYVZRxvtcorUQ.ttf", - "500": "https://fonts.gstatic.com/s/mozillaheadline/v1/QGYLz-UXahmCOps4kyMKGuSA9pYt2_P-w2kFrS88o6cVYRvBSDSOuerB_FOB0oYVZRxvtcorUQ.ttf", - "600": "https://fonts.gstatic.com/s/mozillaheadline/v1/QGYLz-UXahmCOps4kyMKGuSA9pYt2_P-w2kFrS88o6cVYRvBSDSOuerB_FOBPoEVZRxvtcorUQ.ttf", - "700": "https://fonts.gstatic.com/s/mozillaheadline/v1/QGYLz-UXahmCOps4kyMKGuSA9pYt2_P-w2kFrS88o6cVYRvBSDSOuerB_FOBB4EVZRxvtcorUQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mozillaheadline/v1/QGYLz-UXahmCOps4kyMKGuSA9pYt2_P-w2kFrS88o6cVYRvBSDSOuerB_FOB4IYlZBZr.ttf" - }, - { - "family": "Mozilla Text", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-07-30", - "files": { - "200": "https://fonts.gstatic.com/s/mozillatext/v1/SZcr3FrnJ7S7WZIff2mJ7Tbp4zu7ULu3HkPOBwUcPNBRVYmoOXo.ttf", - "300": "https://fonts.gstatic.com/s/mozillatext/v1/SZcr3FrnJ7S7WZIff2mJ7Tbp4zu7ULu3HkPOB9scPNBRVYmoOXo.ttf", - "regular": "https://fonts.gstatic.com/s/mozillatext/v1/SZcr3FrnJ7S7WZIff2mJ7Tbp4zu7ULu3HkPOB4UcPNBRVYmoOXo.ttf", - "500": "https://fonts.gstatic.com/s/mozillatext/v1/SZcr3FrnJ7S7WZIff2mJ7Tbp4zu7ULu3HkPOB7ccPNBRVYmoOXo.ttf", - "600": "https://fonts.gstatic.com/s/mozillatext/v1/SZcr3FrnJ7S7WZIff2mJ7Tbp4zu7ULu3HkPOB1sbPNBRVYmoOXo.ttf", - "700": "https://fonts.gstatic.com/s/mozillatext/v1/SZcr3FrnJ7S7WZIff2mJ7Tbp4zu7ULu3HkPOB2IbPNBRVYmoOXo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mozillatext/v1/SZcr3FrnJ7S7WZIff2mJ7Tbp4zu7ULu3HkPOB4UcDNFbUQ.ttf" - }, - { - "family": "Mr Bedfort", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/mrbedfort/v23/MQpR-WCtNZSWAdTMwBicliq0XZe_Iy8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mrbedfort/v23/MQpR-WCtNZSWAdTMwBicpiu-WQ.ttf" - }, - { - "family": "Mr Dafoe", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/mrdafoe/v15/lJwE-pIzkS5NXuMMrGiqg7MCxz_C.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mrdafoe/v15/lJwE-pIzkS5NXuMMrFiribc.ttf" - }, - { - "family": "Mr De Haviland", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/mrdehaviland/v15/OpNVnooIhJj96FdB73296ksbOj3C4ULVNTlB.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mrdehaviland/v15/OpNVnooIhJj96FdB73296ksbOg3D60Y.ttf" - }, - { - "family": "Mrs Saint Delafield", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/mrssaintdelafield/v14/v6-IGZDIOVXH9xtmTZfRagunqBw5WC62cK4tLsubB2w.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mrssaintdelafield/v14/v6-IGZDIOVXH9xtmTZfRagunqBw5WC62QK8nKg.ttf" - }, - { - "family": "Mrs Sheppards", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/mrssheppards/v25/PN_2Rfm9snC0XUGoEZhb91ig3vjxynMix4Y.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mrssheppards/v25/PN_2Rfm9snC0XUGoEZhb91ig7vn7zg.ttf" - }, - { - "family": "Ms Madi", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/msmadi/v2/HTxsL2UxNnOji5E1N-DPiI7QAYo.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/msmadi/v2/HTxsL2UxNnOji5E1B-HFjA.ttf" - }, - { - "family": "Mukta", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/mukta/v17/iJWHBXyXfDDVXbEOjFma-2HW7ZB_.ttf", - "300": "https://fonts.gstatic.com/s/mukta/v17/iJWHBXyXfDDVXbFqj1ma-2HW7ZB_.ttf", - "regular": "https://fonts.gstatic.com/s/mukta/v17/iJWKBXyXfDDVXYnGp32S0H3f.ttf", - "500": "https://fonts.gstatic.com/s/mukta/v17/iJWHBXyXfDDVXbEyjlma-2HW7ZB_.ttf", - "600": "https://fonts.gstatic.com/s/mukta/v17/iJWHBXyXfDDVXbEeiVma-2HW7ZB_.ttf", - "700": "https://fonts.gstatic.com/s/mukta/v17/iJWHBXyXfDDVXbF6iFma-2HW7ZB_.ttf", - "800": "https://fonts.gstatic.com/s/mukta/v17/iJWHBXyXfDDVXbFmi1ma-2HW7ZB_.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mukta/v17/iJWKBXyXfDDVXbnHrXk.ttf" - }, - { - "family": "Mukta Mahee", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "gurmukhi", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/muktamahee/v19/XRXN3IOIi0hcP8iVU67hA9MFcBoHJndqZCsW.ttf", - "300": "https://fonts.gstatic.com/s/muktamahee/v19/XRXN3IOIi0hcP8iVU67hA9NhcxoHJndqZCsW.ttf", - "regular": "https://fonts.gstatic.com/s/muktamahee/v19/XRXQ3IOIi0hcP8iVU67hA-vNWz4PDWtj.ttf", - "500": "https://fonts.gstatic.com/s/muktamahee/v19/XRXN3IOIi0hcP8iVU67hA9M5choHJndqZCsW.ttf", - "600": "https://fonts.gstatic.com/s/muktamahee/v19/XRXN3IOIi0hcP8iVU67hA9MVdRoHJndqZCsW.ttf", - "700": "https://fonts.gstatic.com/s/muktamahee/v19/XRXN3IOIi0hcP8iVU67hA9NxdBoHJndqZCsW.ttf", - "800": "https://fonts.gstatic.com/s/muktamahee/v19/XRXN3IOIi0hcP8iVU67hA9NtdxoHJndqZCsW.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/muktamahee/v19/XRXQ3IOIi0hcP8iVU67hA9vMUTo.ttf" - }, - { - "family": "Mukta Malar", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/muktamalar/v14/MCoKzAXyz8LOE2FpJMxZqIMwBtAB62ruoAZW.ttf", - "300": "https://fonts.gstatic.com/s/muktamalar/v14/MCoKzAXyz8LOE2FpJMxZqINUBdAB62ruoAZW.ttf", - "regular": "https://fonts.gstatic.com/s/muktamalar/v14/MCoXzAXyz8LOE2FpJMxZqLv4LfQJwHbn.ttf", - "500": "https://fonts.gstatic.com/s/muktamalar/v14/MCoKzAXyz8LOE2FpJMxZqIMMBNAB62ruoAZW.ttf", - "600": "https://fonts.gstatic.com/s/muktamalar/v14/MCoKzAXyz8LOE2FpJMxZqIMgA9AB62ruoAZW.ttf", - "700": "https://fonts.gstatic.com/s/muktamalar/v14/MCoKzAXyz8LOE2FpJMxZqINEAtAB62ruoAZW.ttf", - "800": "https://fonts.gstatic.com/s/muktamalar/v14/MCoKzAXyz8LOE2FpJMxZqINYAdAB62ruoAZW.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/muktamalar/v14/MCoXzAXyz8LOE2FpJMxZqIv5J_A.ttf" - }, - { - "family": "Mukta Vaani", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/muktavaani/v15/3JnkSD_-ynaxmxnEfVHPIGXNV8BD-u97MW1a.ttf", - "300": "https://fonts.gstatic.com/s/muktavaani/v15/3JnkSD_-ynaxmxnEfVHPIGWpVMBD-u97MW1a.ttf", - "regular": "https://fonts.gstatic.com/s/muktavaani/v15/3Jn5SD_-ynaxmxnEfVHPIF0FfORL0fNy.ttf", - "500": "https://fonts.gstatic.com/s/muktavaani/v15/3JnkSD_-ynaxmxnEfVHPIGXxVcBD-u97MW1a.ttf", - "600": "https://fonts.gstatic.com/s/muktavaani/v15/3JnkSD_-ynaxmxnEfVHPIGXdUsBD-u97MW1a.ttf", - "700": "https://fonts.gstatic.com/s/muktavaani/v15/3JnkSD_-ynaxmxnEfVHPIGW5U8BD-u97MW1a.ttf", - "800": "https://fonts.gstatic.com/s/muktavaani/v15/3JnkSD_-ynaxmxnEfVHPIGWlUMBD-u97MW1a.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/muktavaani/v15/3Jn5SD_-ynaxmxnEfVHPIG0EduA.ttf" - }, - { - "family": "Mulish", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexRNRwaClGrw-PTY.ttf", - "300": "https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexc1RwaClGrw-PTY.ttf", - "regular": "https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexZNRwaClGrw-PTY.ttf", - "500": "https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexaFRwaClGrw-PTY.ttf", - "600": "https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexU1WwaClGrw-PTY.ttf", - "700": "https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexXRWwaClGrw-PTY.ttf", - "800": "https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexRNWwaClGrw-PTY.ttf", - "900": "https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexTpWwaClGrw-PTY.ttf", - "200italic": "https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSqeOvHp47LTZFwA.ttf", - "300italic": "https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSd-OvHp47LTZFwA.ttf", - "italic": "https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSKeOvHp47LTZFwA.ttf", - "500italic": "https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSG-OvHp47LTZFwA.ttf", - "600italic": "https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsS9-SvHp47LTZFwA.ttf", - "700italic": "https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSzuSvHp47LTZFwA.ttf", - "800italic": "https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSqeSvHp47LTZFwA.ttf", - "900italic": "https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSgOSvHp47LTZFwA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexZNR8aGvHg.ttf" - }, - { - "family": "Murecho", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "japanese", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/murecho/v17/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpr5HWZLCpUOaM6.ttf", - "200": "https://fonts.gstatic.com/s/murecho/v17/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrr5XWZLCpUOaM6.ttf", - "300": "https://fonts.gstatic.com/s/murecho/v17/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMo15XWZLCpUOaM6.ttf", - "regular": "https://fonts.gstatic.com/s/murecho/v17/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpr5XWZLCpUOaM6.ttf", - "500": "https://fonts.gstatic.com/s/murecho/v17/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpZ5XWZLCpUOaM6.ttf", - "600": "https://fonts.gstatic.com/s/murecho/v17/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMq14nWZLCpUOaM6.ttf", - "700": "https://fonts.gstatic.com/s/murecho/v17/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMqM4nWZLCpUOaM6.ttf", - "800": "https://fonts.gstatic.com/s/murecho/v17/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrr4nWZLCpUOaM6.ttf", - "900": "https://fonts.gstatic.com/s/murecho/v17/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrC4nWZLCpUOaM6.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/murecho/v17/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpr5UWYJi4.ttf" - }, - { - "family": "MuseoModerno", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v29", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/museomoderno/v29/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMlZFuewajeKlCdo.ttf", - "200": "https://fonts.gstatic.com/s/museomoderno/v29/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMtZEuewajeKlCdo.ttf", - "300": "https://fonts.gstatic.com/s/museomoderno/v29/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMghEuewajeKlCdo.ttf", - "regular": "https://fonts.gstatic.com/s/museomoderno/v29/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMlZEuewajeKlCdo.ttf", - "500": "https://fonts.gstatic.com/s/museomoderno/v29/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMmREuewajeKlCdo.ttf", - "600": "https://fonts.gstatic.com/s/museomoderno/v29/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMohDuewajeKlCdo.ttf", - "700": "https://fonts.gstatic.com/s/museomoderno/v29/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMrFDuewajeKlCdo.ttf", - "800": "https://fonts.gstatic.com/s/museomoderno/v29/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMtZDuewajeKlCdo.ttf", - "900": "https://fonts.gstatic.com/s/museomoderno/v29/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMv9DuewajeKlCdo.ttf", - "100italic": "https://fonts.gstatic.com/s/museomoderno/v29/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HUa4QicCgGdrS3g.ttf", - "200italic": "https://fonts.gstatic.com/s/museomoderno/v29/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H0a8QicCgGdrS3g.ttf", - "300italic": "https://fonts.gstatic.com/s/museomoderno/v29/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HD68QicCgGdrS3g.ttf", - "italic": "https://fonts.gstatic.com/s/museomoderno/v29/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HUa8QicCgGdrS3g.ttf", - "500italic": "https://fonts.gstatic.com/s/museomoderno/v29/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HY68QicCgGdrS3g.ttf", - "600italic": "https://fonts.gstatic.com/s/museomoderno/v29/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54Hj6gQicCgGdrS3g.ttf", - "700italic": "https://fonts.gstatic.com/s/museomoderno/v29/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HtqgQicCgGdrS3g.ttf", - "800italic": "https://fonts.gstatic.com/s/museomoderno/v29/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H0agQicCgGdrS3g.ttf", - "900italic": "https://fonts.gstatic.com/s/museomoderno/v29/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H-KgQicCgGdrS3g.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/museomoderno/v29/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMlZEie0QiQ.ttf" - }, - { - "family": "My Soul", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/mysoul/v7/3XFqErcuy945_u6KF_Ulk2nnXf0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mysoul/v7/3XFqErcuy945_u6KJ_Qvlw.ttf" - }, - { - "family": "Mynerve", - "variants": [ - "regular" - ], - "subsets": [ - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/mynerve/v8/P5sCzZKPdNjb4jt7xCRuiZ-uydg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mynerve/v8/P5sCzZKPdNjb4jt79CVkjQ.ttf" - }, - { - "family": "Mystery Quest", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/mysteryquest/v21/-nF6OG414u0E6k0wynSGlujRHwElD_9Qz9E.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/mysteryquest/v21/-nF6OG414u0E6k0wynSGlujRLwAvCw.ttf" - }, - { - "family": "NTR", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/ntr/v19/RLpzK5Xy0ZjiGGhs5TA4bg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ntr/v19/RLpzK5Xy0ZjSGWJo.ttf" - }, - { - "family": "Nabla", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "math", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/nabla/v17/j8_D6-LI0Lvpe7Makz5UhJt9C3uqg_X_75gyGS4jAxsNIjrRNRBUFFR_198.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nabla/v17/j8_D6-LI0Lvpe7Makz5UhJt9C3uqg_X_75gyGS4jAxsNIjrRBRFeEA.ttf", - "colorCapabilities": [ - "COLRv1", - "SVG" - ] - }, - { - "family": "Namdhinggo", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "limbu" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-mEGe3rbgg8Xzoy5-TDnWj4yxx7o8.ttf", - "500": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-lEGe3rbgg8Xzoy5-TNoGKxyRa8oZK9I0.ttf", - "600": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-lEGe3rbgg8Xzoy5-TNq2NxyRa8oZK9I0.ttf", - "700": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-lEGe3rbgg8Xzoy5-TNsmMxyRa8oZK9I0.ttf", - "800": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-lEGe3rbgg8Xzoy5-TNtWPxyRa8oZK9I0.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-mEGe3rbgg8Xzoy5-TPnSp5w.ttf" - }, - { - "family": "Nanum Brush Script", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v26", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/nanumbrushscript/v26/wXK2E2wfpokopxzthSqPbcR5_gVaxazyjqBr1lO97Q.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nanumbrushscript/v26/wXK2E2wfpokopxzthSqPbcR5_gVaxazCj6pv.ttf" - }, - { - "family": "Nanum Gothic", - "variants": [ - "regular", - "700", - "800" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v26", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/nanumgothic/v26/PN_3Rfi-oW3hYwmKDpxS7F_z_tLfxno73g.ttf", - "700": "https://fonts.gstatic.com/s/nanumgothic/v26/PN_oRfi-oW3hYwmKDpxS7F_LQv37zlEn14YEUQ.ttf", - "800": "https://fonts.gstatic.com/s/nanumgothic/v26/PN_oRfi-oW3hYwmKDpxS7F_LXv77zlEn14YEUQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nanumgothic/v26/PN_3Rfi-oW3hYwmKDpxS7F_D_9jb.ttf" - }, - { - "family": "Nanum Gothic Coding", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/nanumgothiccoding/v27/8QIVdjzHisX_8vv59_xMxtPFW4IXROwsy6QxVs1X7tc.ttf", - "700": "https://fonts.gstatic.com/s/nanumgothiccoding/v27/8QIYdjzHisX_8vv59_xMxtPFW4IXROws8xgecsV88t5V9r4.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nanumgothiccoding/v27/8QIVdjzHisX_8vv59_xMxtPFW4IXROws-6U7Ug.ttf" - }, - { - "family": "Nanum Myeongjo", - "variants": [ - "regular", - "700", - "800" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v31", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/nanummyeongjo/v31/9Btx3DZF0dXLMZlywRbVRNhxy1LreHQ8juyl.ttf", - "700": "https://fonts.gstatic.com/s/nanummyeongjo/v31/9Bty3DZF0dXLMZlywRbVRNhxy2pXV1A0pfCs5Kos.ttf", - "800": "https://fonts.gstatic.com/s/nanummyeongjo/v31/9Bty3DZF0dXLMZlywRbVRNhxy2pLVFA0pfCs5Kos.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nanummyeongjo/v31/9Btx3DZF0dXLMZlywRbVRNhxy2LqcnA.ttf" - }, - { - "family": "Nanum Pen Script", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v25", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/nanumpenscript/v25/daaDSSYiLGqEal3MvdA_FOL_3FkN2z7-aMFCcTU.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nanumpenscript/v25/daaDSSYiLGqEal3MvdA_FOL_3FkN6z_0bA.ttf" - }, - { - "family": "Narnoor", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "gunjala-gondi", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v10", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/narnoor/v10/cIf9MaFWuVo-UTyPxCmrYGkHgIs.ttf", - "500": "https://fonts.gstatic.com/s/narnoor/v10/cIf4MaFWuVo-UTyP_N2CRGEsnIJkWL4.ttf", - "600": "https://fonts.gstatic.com/s/narnoor/v10/cIf4MaFWuVo-UTyP_PGFRGEsnIJkWL4.ttf", - "700": "https://fonts.gstatic.com/s/narnoor/v10/cIf4MaFWuVo-UTyP_JWERGEsnIJkWL4.ttf", - "800": "https://fonts.gstatic.com/s/narnoor/v10/cIf4MaFWuVo-UTyP_ImHRGEsnIJkWL4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/narnoor/v10/cIf9MaFWuVo-UTyP9CihZA.ttf" - }, - { - "family": "Nata Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-07-30", - "files": { - "100": "https://fonts.gstatic.com/s/natasans/v1/1q2XY5KBClBit88SU_tUw-brVNlaeZChg6wI6g2M62M1AXs.ttf", - "200": "https://fonts.gstatic.com/s/natasans/v1/1q2XY5KBClBit88SU_tUw-brVNlaeZChgywJ6g2M62M1AXs.ttf", - "300": "https://fonts.gstatic.com/s/natasans/v1/1q2XY5KBClBit88SU_tUw-brVNlaeZChg_IJ6g2M62M1AXs.ttf", - "regular": "https://fonts.gstatic.com/s/natasans/v1/1q2XY5KBClBit88SU_tUw-brVNlaeZChg6wJ6g2M62M1AXs.ttf", - "500": "https://fonts.gstatic.com/s/natasans/v1/1q2XY5KBClBit88SU_tUw-brVNlaeZChg54J6g2M62M1AXs.ttf", - "600": "https://fonts.gstatic.com/s/natasans/v1/1q2XY5KBClBit88SU_tUw-brVNlaeZChg3IO6g2M62M1AXs.ttf", - "700": "https://fonts.gstatic.com/s/natasans/v1/1q2XY5KBClBit88SU_tUw-brVNlaeZChg0sO6g2M62M1AXs.ttf", - "800": "https://fonts.gstatic.com/s/natasans/v1/1q2XY5KBClBit88SU_tUw-brVNlaeZChgywO6g2M62M1AXs.ttf", - "900": "https://fonts.gstatic.com/s/natasans/v1/1q2XY5KBClBit88SU_tUw-brVNlaeZChgwUO6g2M62M1AXs.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/natasans/v1/1q2XY5KBClBit88SU_tUw-brVNlaeZChg6wJ2gyG7w.ttf" - }, - { - "family": "National Park", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/nationalpark/v4/GftQ7vJOtg4NO-gmoY4nmcqP-VY9vs1ixcqgHfL_b5XMdoayNUNf.ttf", - "300": "https://fonts.gstatic.com/s/nationalpark/v4/GftQ7vJOtg4NO-gmoY4nmcqP-VY9vs1ixcqgHfIhb5XMdoayNUNf.ttf", - "regular": "https://fonts.gstatic.com/s/nationalpark/v4/GftQ7vJOtg4NO-gmoY4nmcqP-VY9vs1ixcqgHfJ_b5XMdoayNUNf.ttf", - "500": "https://fonts.gstatic.com/s/nationalpark/v4/GftQ7vJOtg4NO-gmoY4nmcqP-VY9vs1ixcqgHfJNb5XMdoayNUNf.ttf", - "600": "https://fonts.gstatic.com/s/nationalpark/v4/GftQ7vJOtg4NO-gmoY4nmcqP-VY9vs1ixcqgHfKhaJXMdoayNUNf.ttf", - "700": "https://fonts.gstatic.com/s/nationalpark/v4/GftQ7vJOtg4NO-gmoY4nmcqP-VY9vs1ixcqgHfKYaJXMdoayNUNf.ttf", - "800": "https://fonts.gstatic.com/s/nationalpark/v4/GftQ7vJOtg4NO-gmoY4nmcqP-VY9vs1ixcqgHfL_aJXMdoayNUNf.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nationalpark/v4/GftQ7vJOtg4NO-gmoY4nmcqP-VY9vs1ixcqgHfJ_b6XNfII.ttf" - }, - { - "family": "Neonderthaw", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/neonderthaw/v8/Iure6Yx5-oWVZI0r-17AeZZJprVA4XQ0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/neonderthaw/v8/Iure6Yx5-oWVZI0r-17AeaZIrLE.ttf" - }, - { - "family": "Nerko One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/nerkoone/v17/m8JQjfZSc7OXlB3ZMOjzcJ5BZmqa3A.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nerkoone/v17/m8JQjfZSc7OXlB3ZMOjDcZRF.ttf" - }, - { - "family": "Neucha", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/neucha/v18/q5uGsou0JOdh94bvugNsCxVEgA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/neucha/v18/q5uGsou0JOdh94bfuwlo.ttf" - }, - { - "family": "Neuton", - "variants": [ - "200", - "300", - "regular", - "italic", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/neuton/v24/UMBQrPtMoH62xUZKAKkfegD5Drog6Q.ttf", - "300": "https://fonts.gstatic.com/s/neuton/v24/UMBQrPtMoH62xUZKZKofegD5Drog6Q.ttf", - "regular": "https://fonts.gstatic.com/s/neuton/v24/UMBTrPtMoH62xUZyyII7civlBw.ttf", - "italic": "https://fonts.gstatic.com/s/neuton/v24/UMBRrPtMoH62xUZCyog_UC71B6M5.ttf", - "700": "https://fonts.gstatic.com/s/neuton/v24/UMBQrPtMoH62xUZKdK0fegD5Drog6Q.ttf", - "800": "https://fonts.gstatic.com/s/neuton/v24/UMBQrPtMoH62xUZKaK4fegD5Drog6Q.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/neuton/v24/UMBTrPtMoH62xUZCyYg_.ttf" - }, - { - "family": "New Amsterdam", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/newamsterdam/v1/YA9Vr02Y5lucHqUlbEe51kBtl7mGiv_Q7dA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/newamsterdam/v1/YA9Vr02Y5lucHqUlbEe51kBtp7iMjg.ttf" - }, - { - "family": "New Rocker", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/newrocker/v17/MwQzbhjp3-HImzcCU_cJkGMViblPtXs.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/newrocker/v17/MwQzbhjp3-HImzcCU_cJoGIfjQ.ttf" - }, - { - "family": "New Tegomin", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/newtegomin/v13/SLXMc1fV7Gd9USdBAfPlqfN0Q3ptkDMN.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/newtegomin/v13/SLXMc1fV7Gd9USdBAfPlqcN1SX4.ttf" - }, - { - "family": "News Cycle", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/newscycle/v26/CSR64z1Qlv-GDxkbKVQ_TOcATNt_pOU.ttf", - "700": "https://fonts.gstatic.com/s/newscycle/v26/CSR54z1Qlv-GDxkbKVQ_dFsvaNNUuOwkC2s.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/newscycle/v26/CSR64z1Qlv-GDxkbKVQ_fOYKSA.ttf" - }, - { - "family": "Newsreader", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/newsreader/v26/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438w-I_ADOxEPjCggA.ttf", - "300": "https://fonts.gstatic.com/s/newsreader/v26/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wJo_ADOxEPjCggA.ttf", - "regular": "https://fonts.gstatic.com/s/newsreader/v26/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438weI_ADOxEPjCggA.ttf", - "500": "https://fonts.gstatic.com/s/newsreader/v26/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wSo_ADOxEPjCggA.ttf", - "600": "https://fonts.gstatic.com/s/newsreader/v26/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wpojADOxEPjCggA.ttf", - "700": "https://fonts.gstatic.com/s/newsreader/v26/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wn4jADOxEPjCggA.ttf", - "800": "https://fonts.gstatic.com/s/newsreader/v26/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438w-IjADOxEPjCggA.ttf", - "200italic": "https://fonts.gstatic.com/s/newsreader/v26/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMyoT-ZAHDWwgECi.ttf", - "300italic": "https://fonts.gstatic.com/s/newsreader/v26/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMx2T-ZAHDWwgECi.ttf", - "italic": "https://fonts.gstatic.com/s/newsreader/v26/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMwoT-ZAHDWwgECi.ttf", - "500italic": "https://fonts.gstatic.com/s/newsreader/v26/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMwaT-ZAHDWwgECi.ttf", - "600italic": "https://fonts.gstatic.com/s/newsreader/v26/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMz2SOZAHDWwgECi.ttf", - "700italic": "https://fonts.gstatic.com/s/newsreader/v26/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMzPSOZAHDWwgECi.ttf", - "800italic": "https://fonts.gstatic.com/s/newsreader/v26/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMyoSOZAHDWwgECi.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/newsreader/v26/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438weI_wDeZA.ttf" - }, - { - "family": "Niconne", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/niconne/v16/w8gaH2QvRug1_rTfrQut2F4OuOo.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/niconne/v16/w8gaH2QvRug1_rTfnQqn3A.ttf" - }, - { - "family": "Niramit", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/niramit/v12/I_urMpWdvgLdNxVLVXx7tiiEr5_BdZ8.ttf", - "200italic": "https://fonts.gstatic.com/s/niramit/v12/I_upMpWdvgLdNxVLXbZiXimOq73EZZ_f6w.ttf", - "300": "https://fonts.gstatic.com/s/niramit/v12/I_urMpWdvgLdNxVLVRh4tiiEr5_BdZ8.ttf", - "300italic": "https://fonts.gstatic.com/s/niramit/v12/I_upMpWdvgLdNxVLXbZiOiqOq73EZZ_f6w.ttf", - "regular": "https://fonts.gstatic.com/s/niramit/v12/I_uuMpWdvgLdNxVLbbRQkiCvs5Y.ttf", - "italic": "https://fonts.gstatic.com/s/niramit/v12/I_usMpWdvgLdNxVLXbZalgKqo5bYbA.ttf", - "500": "https://fonts.gstatic.com/s/niramit/v12/I_urMpWdvgLdNxVLVUB5tiiEr5_BdZ8.ttf", - "500italic": "https://fonts.gstatic.com/s/niramit/v12/I_upMpWdvgLdNxVLXbZiYiuOq73EZZ_f6w.ttf", - "600": "https://fonts.gstatic.com/s/niramit/v12/I_urMpWdvgLdNxVLVWx-tiiEr5_BdZ8.ttf", - "600italic": "https://fonts.gstatic.com/s/niramit/v12/I_upMpWdvgLdNxVLXbZiTiyOq73EZZ_f6w.ttf", - "700": "https://fonts.gstatic.com/s/niramit/v12/I_urMpWdvgLdNxVLVQh_tiiEr5_BdZ8.ttf", - "700italic": "https://fonts.gstatic.com/s/niramit/v12/I_upMpWdvgLdNxVLXbZiKi2Oq73EZZ_f6w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/niramit/v12/I_uuMpWdvgLdNxVLXbValg.ttf" - }, - { - "family": "Nixie One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/nixieone/v17/lW-8wjkKLXjg5y2o2uUoUOFzpS-yLw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nixieone/v17/lW-8wjkKLXjg5y2o2uUYUet3.ttf" - }, - { - "family": "Nobile", - "variants": [ - "regular", - "italic", - "500", - "500italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/nobile/v19/m8JTjflSeaOVl1i2XqfXeLVdbw.ttf", - "italic": "https://fonts.gstatic.com/s/nobile/v19/m8JRjflSeaOVl1iGXK3TWrBNb3OD.ttf", - "500": "https://fonts.gstatic.com/s/nobile/v19/m8JQjflSeaOVl1iOqo7zcJ5BZmqa3A.ttf", - "500italic": "https://fonts.gstatic.com/s/nobile/v19/m8JWjflSeaOVl1iGXJUnc5RFRG-K3Mud.ttf", - "700": "https://fonts.gstatic.com/s/nobile/v19/m8JQjflSeaOVl1iO4ojzcJ5BZmqa3A.ttf", - "700italic": "https://fonts.gstatic.com/s/nobile/v19/m8JWjflSeaOVl1iGXJVvdZRFRG-K3Mud.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nobile/v19/m8JTjflSeaOVl1iGX63T.ttf" - }, - { - "family": "Nokora", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v34", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/nokora/v34/hYkVPuwgTubzaWxKMBj_emrD9wtMuj1ecbKpdHdrk1k.ttf", - "200": "https://fonts.gstatic.com/s/nokora/v34/hYkVPuwgTubzaWxKMBj_emrD9wtMur1fcbKpdHdrk1k.ttf", - "300": "https://fonts.gstatic.com/s/nokora/v34/hYkVPuwgTubzaWxKMBj_emrD9wtMumNfcbKpdHdrk1k.ttf", - "regular": "https://fonts.gstatic.com/s/nokora/v34/hYkVPuwgTubzaWxKMBj_emrD9wtMuj1fcbKpdHdrk1k.ttf", - "500": "https://fonts.gstatic.com/s/nokora/v34/hYkVPuwgTubzaWxKMBj_emrD9wtMug9fcbKpdHdrk1k.ttf", - "600": "https://fonts.gstatic.com/s/nokora/v34/hYkVPuwgTubzaWxKMBj_emrD9wtMuuNYcbKpdHdrk1k.ttf", - "700": "https://fonts.gstatic.com/s/nokora/v34/hYkVPuwgTubzaWxKMBj_emrD9wtMutpYcbKpdHdrk1k.ttf", - "800": "https://fonts.gstatic.com/s/nokora/v34/hYkVPuwgTubzaWxKMBj_emrD9wtMur1YcbKpdHdrk1k.ttf", - "900": "https://fonts.gstatic.com/s/nokora/v34/hYkVPuwgTubzaWxKMBj_emrD9wtMupRYcbKpdHdrk1k.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nokora/v34/hYkVPuwgTubzaWxKMBj_emrD9wtMuj1fQbOjcA.ttf" - }, - { - "family": "Norican", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/norican/v16/MwQ2bhXp1eSBqjkPGJJRtGs-lbA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/norican/v16/MwQ2bhXp1eSBqjkPKJNbsA.ttf" - }, - { - "family": "Nosifer", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/nosifer/v23/ZGjXol5JTp0g5bxZaC1RVDNdGDs.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nosifer/v23/ZGjXol5JTp0g5bxZWCxbUA.ttf" - }, - { - "family": "Notable", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/notable/v20/gNMEW3N_SIqx-WX9-HMoFIez5MI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notable/v20/gNMEW3N_SIqx-WX9yHIiEA.ttf" - }, - { - "family": "Nothing You Could Do", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/nothingyoucoulddo/v21/oY1B8fbBpaP5OX3DtrRYf_Q2BPB1SnfZb0OJl1ol2Ymo.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nothingyoucoulddo/v21/oY1B8fbBpaP5OX3DtrRYf_Q2BPB1SnfZb3OInV4.ttf" - }, - { - "family": "Noticia Text", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/noticiatext/v16/VuJ2dNDF2Yv9qppOePKYRP1GYTFZt0rNpQ.ttf", - "italic": "https://fonts.gstatic.com/s/noticiatext/v16/VuJodNDF2Yv9qppOePKYRP12YztdlU_dpSjt.ttf", - "700": "https://fonts.gstatic.com/s/noticiatext/v16/VuJpdNDF2Yv9qppOePKYRP1-3R59v2HRrDH0eA.ttf", - "700italic": "https://fonts.gstatic.com/s/noticiatext/v16/VuJrdNDF2Yv9qppOePKYRP12YwPhumvVjjTkeMnz.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/noticiatext/v16/VuJ2dNDF2Yv9qppOePKYRP12YDtd.ttf" - }, - { - "family": "Noto Color Emoji", - "variants": [ - "regular" - ], - "subsets": [ - "emoji" - ], - "version": "v36", - "lastModified": "2025-09-06", - "files": { - "regular": "https://fonts.gstatic.com/s/notocoloremoji/v36/Yq6P-KqIXTD0t4D9z1ESnKM3-HpFab5s79iz64w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notocoloremoji/v36/Yq6P-KqIXTD0t4D9z1ESnKM3-HpFWb9m6w.ttf", - "colorCapabilities": [ - "COLRv1", - "SVG" - ] - }, - { - "family": "Noto Emoji", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "emoji" - ], - "version": "v61", - "lastModified": "2025-09-17", - "files": { - "300": "https://fonts.gstatic.com/s/notoemoji/v61/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob_10jwvS-FGJCMY.ttf", - "regular": "https://fonts.gstatic.com/s/notoemoji/v61/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-r0jwvS-FGJCMY.ttf", - "500": "https://fonts.gstatic.com/s/notoemoji/v61/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-Z0jwvS-FGJCMY.ttf", - "600": "https://fonts.gstatic.com/s/notoemoji/v61/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob911TwvS-FGJCMY.ttf", - "700": "https://fonts.gstatic.com/s/notoemoji/v61/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob9M1TwvS-FGJCMY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoemoji/v61/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-r0gwuQeU.ttf" - }, - { - "family": "Noto Kufi Arabic", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v27", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notokufiarabic/v27/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5v3obPnLSmf5yD.ttf", - "200": "https://fonts.gstatic.com/s/notokufiarabic/v27/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7v34bPnLSmf5yD.ttf", - "300": "https://fonts.gstatic.com/s/notokufiarabic/v27/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh4x34bPnLSmf5yD.ttf", - "regular": "https://fonts.gstatic.com/s/notokufiarabic/v27/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5v34bPnLSmf5yD.ttf", - "500": "https://fonts.gstatic.com/s/notokufiarabic/v27/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5d34bPnLSmf5yD.ttf", - "600": "https://fonts.gstatic.com/s/notokufiarabic/v27/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh6x2IbPnLSmf5yD.ttf", - "700": "https://fonts.gstatic.com/s/notokufiarabic/v27/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh6I2IbPnLSmf5yD.ttf", - "800": "https://fonts.gstatic.com/s/notokufiarabic/v27/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7v2IbPnLSmf5yD.ttf", - "900": "https://fonts.gstatic.com/s/notokufiarabic/v27/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7G2IbPnLSmf5yD.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notokufiarabic/v27/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5v37bOlrA.ttf" - }, - { - "family": "Noto Music", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "music" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notomusic/v21/pe0rMIiSN5pO63htf1sxIteQB9Zra1U.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notomusic/v21/pe0rMIiSN5pO63htf1sxEtaaAw.ttf" - }, - { - "family": "Noto Naskh Arabic", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v39", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notonaskharabic/v39/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwvc5krK0z9_Mnuw.ttf", - "500": "https://fonts.gstatic.com/s/notonaskharabic/v39/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwj85krK0z9_Mnuw.ttf", - "600": "https://fonts.gstatic.com/s/notonaskharabic/v39/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwY8lkrK0z9_Mnuw.ttf", - "700": "https://fonts.gstatic.com/s/notonaskharabic/v39/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwWslkrK0z9_Mnuw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notonaskharabic/v39/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwvc5Urac3.ttf" - }, - { - "family": "Noto Nastaliq Urdu", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/notonastaliqurdu/v23/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qt_-DK2f2-_8mEw.ttf", - "500": "https://fonts.gstatic.com/s/notonastaliqurdu/v23/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qu3-DK2f2-_8mEw.ttf", - "600": "https://fonts.gstatic.com/s/notonastaliqurdu/v23/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3QgH5DK2f2-_8mEw.ttf", - "700": "https://fonts.gstatic.com/s/notonastaliqurdu/v23/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qjj5DK2f2-_8mEw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notonastaliqurdu/v23/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qt_-PKyV3w.ttf" - }, - { - "family": "Noto Rashi Hebrew", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "greek-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/notorashihebrew/v28/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZB-DkRyq6Nf2pfA.ttf", - "200": "https://fonts.gstatic.com/s/notorashihebrew/v28/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZh-HkRyq6Nf2pfA.ttf", - "300": "https://fonts.gstatic.com/s/notorashihebrew/v28/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZWeHkRyq6Nf2pfA.ttf", - "regular": "https://fonts.gstatic.com/s/notorashihebrew/v28/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZB-HkRyq6Nf2pfA.ttf", - "500": "https://fonts.gstatic.com/s/notorashihebrew/v28/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZNeHkRyq6Nf2pfA.ttf", - "600": "https://fonts.gstatic.com/s/notorashihebrew/v28/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZ2ebkRyq6Nf2pfA.ttf", - "700": "https://fonts.gstatic.com/s/notorashihebrew/v28/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZ4ObkRyq6Nf2pfA.ttf", - "800": "https://fonts.gstatic.com/s/notorashihebrew/v28/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZh-bkRyq6Nf2pfA.ttf", - "900": "https://fonts.gstatic.com/s/notorashihebrew/v28/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZrubkRyq6Nf2pfA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notorashihebrew/v28/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZB-HURiC-.ttf" - }, - { - "family": "Noto Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "devanagari", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v42", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notosans/v42/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyD9At9d41P6zHtY.ttf", - "200": "https://fonts.gstatic.com/s/notosans/v42/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyB9A99d41P6zHtY.ttf", - "300": "https://fonts.gstatic.com/s/notosans/v42/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyCjA99d41P6zHtY.ttf", - "regular": "https://fonts.gstatic.com/s/notosans/v42/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyD9A99d41P6zHtY.ttf", - "500": "https://fonts.gstatic.com/s/notosans/v42/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyDPA99d41P6zHtY.ttf", - "600": "https://fonts.gstatic.com/s/notosans/v42/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyAjBN9d41P6zHtY.ttf", - "700": "https://fonts.gstatic.com/s/notosans/v42/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyAaBN9d41P6zHtY.ttf", - "800": "https://fonts.gstatic.com/s/notosans/v42/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyB9BN9d41P6zHtY.ttf", - "900": "https://fonts.gstatic.com/s/notosans/v42/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyBUBN9d41P6zHtY.ttf", - "100italic": "https://fonts.gstatic.com/s/notosans/v42/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QDcf6VfYyWtY1rI.ttf", - "200italic": "https://fonts.gstatic.com/s/notosans/v42/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QLce6VfYyWtY1rI.ttf", - "300italic": "https://fonts.gstatic.com/s/notosans/v42/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QGke6VfYyWtY1rI.ttf", - "italic": "https://fonts.gstatic.com/s/notosans/v42/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QDce6VfYyWtY1rI.ttf", - "500italic": "https://fonts.gstatic.com/s/notosans/v42/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QAUe6VfYyWtY1rI.ttf", - "600italic": "https://fonts.gstatic.com/s/notosans/v42/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QOkZ6VfYyWtY1rI.ttf", - "700italic": "https://fonts.gstatic.com/s/notosans/v42/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QNAZ6VfYyWtY1rI.ttf", - "800italic": "https://fonts.gstatic.com/s/notosans/v42/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QLcZ6VfYyWtY1rI.ttf", - "900italic": "https://fonts.gstatic.com/s/notosans/v42/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QJ4Z6VfYyWtY1rI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosans/v42/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyD9A-9c6Vc.ttf" - }, - { - "family": "Noto Sans Adlam", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "adlam", - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansadlam/v27/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufnv0TGnBZLwhuvk.ttf", - "500": "https://fonts.gstatic.com/s/notosansadlam/v27/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufkn0TGnBZLwhuvk.ttf", - "600": "https://fonts.gstatic.com/s/notosansadlam/v27/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufqXzTGnBZLwhuvk.ttf", - "700": "https://fonts.gstatic.com/s/notosansadlam/v27/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufpzzTGnBZLwhuvk.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansadlam/v27/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufnv0fGjLYA.ttf" - }, - { - "family": "Noto Sans Adlam Unjoined", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "adlam", - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansadlamunjoined/v28/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_Ye35PMEe-E3slUg.ttf", - "500": "https://fonts.gstatic.com/s/notosansadlamunjoined/v28/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_Yd_5PMEe-E3slUg.ttf", - "600": "https://fonts.gstatic.com/s/notosansadlamunjoined/v28/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_YTP-PMEe-E3slUg.ttf", - "700": "https://fonts.gstatic.com/s/notosansadlamunjoined/v28/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_YQr-PMEe-E3slUg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansadlamunjoined/v28/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_Ye35DMAU_A.ttf" - }, - { - "family": "Noto Sans Anatolian Hieroglyphs", - "variants": [ - "regular" - ], - "subsets": [ - "anatolian-hieroglyphs", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansanatolianhieroglyphs/v17/ijw9s4roRME5LLRxjsRb8A0gKPSWq4BbDmHHu6j2pEtUJzZWXybIymc5QYo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansanatolianhieroglyphs/v17/ijw9s4roRME5LLRxjsRb8A0gKPSWq4BbDmHHu6j2pEtUJzZWbyfCzg.ttf" - }, - { - "family": "Noto Sans Arabic", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v33", - "lastModified": "2025-09-17", - "files": { - "100": "https://fonts.gstatic.com/s/notosansarabic/v33/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyG2vu3CBFQLaig.ttf", - "200": "https://fonts.gstatic.com/s/notosansarabic/v33/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfSGyvu3CBFQLaig.ttf", - "300": "https://fonts.gstatic.com/s/notosansarabic/v33/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCflmyvu3CBFQLaig.ttf", - "regular": "https://fonts.gstatic.com/s/notosansarabic/v33/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyGyvu3CBFQLaig.ttf", - "500": "https://fonts.gstatic.com/s/notosansarabic/v33/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCf-myvu3CBFQLaig.ttf", - "600": "https://fonts.gstatic.com/s/notosansarabic/v33/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfFmuvu3CBFQLaig.ttf", - "700": "https://fonts.gstatic.com/s/notosansarabic/v33/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfL2uvu3CBFQLaig.ttf", - "800": "https://fonts.gstatic.com/s/notosansarabic/v33/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfSGuvu3CBFQLaig.ttf", - "900": "https://fonts.gstatic.com/s/notosansarabic/v33/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfYWuvu3CBFQLaig.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansarabic/v33/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyGyfunqF.ttf" - }, - { - "family": "Noto Sans Armenian", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "armenian", - "latin", - "latin-ext" - ], - "version": "v47", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxbq0iYy6zF3Eg.ttf", - "200": "https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopxb60iYy6zF3Eg.ttf", - "300": "https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLoqvb60iYy6zF3Eg.ttf", - "regular": "https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxb60iYy6zF3Eg.ttf", - "500": "https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorDb60iYy6zF3Eg.ttf", - "600": "https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLoovaK0iYy6zF3Eg.ttf", - "700": "https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLooWaK0iYy6zF3Eg.ttf", - "800": "https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopxaK0iYy6zF3Eg.ttf", - "900": "https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopYaK0iYy6zF3Eg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxb50jaSo.ttf" - }, - { - "family": "Noto Sans Avestan", - "variants": [ - "regular" - ], - "subsets": [ - "avestan", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansavestan/v22/bWti7ejKfBziStx7lIzKOLQZKhIJkyu9SASLji8U.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansavestan/v22/bWti7ejKfBziStx7lIzKOLQZKhIJkxu8QgA.ttf" - }, - { - "family": "Noto Sans Balinese", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "balinese", - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansbalinese/v27/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov7fdhE5Vd222PPY.ttf", - "500": "https://fonts.gstatic.com/s/notosansbalinese/v27/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov4XdhE5Vd222PPY.ttf", - "600": "https://fonts.gstatic.com/s/notosansbalinese/v27/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov2nahE5Vd222PPY.ttf", - "700": "https://fonts.gstatic.com/s/notosansbalinese/v27/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov1DahE5Vd222PPY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansbalinese/v27/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov7fdtE9fcw.ttf" - }, - { - "family": "Noto Sans Bamum", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "bamum", - "latin", - "latin-ext" - ], - "version": "v35", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansbamum/v35/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEddO-_gLykxEkxA.ttf", - "500": "https://fonts.gstatic.com/s/notosansbamum/v35/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEeVO-_gLykxEkxA.ttf", - "600": "https://fonts.gstatic.com/s/notosansbamum/v35/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEQlJ-_gLykxEkxA.ttf", - "700": "https://fonts.gstatic.com/s/notosansbamum/v35/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPETBJ-_gLykxEkxA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansbamum/v35/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEddOy_kBzg.ttf" - }, - { - "family": "Noto Sans Bassa Vah", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "bassa-vah", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansbassavah/v21/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MaAc6p34gH-GD7.ttf", - "500": "https://fonts.gstatic.com/s/notosansbassavah/v21/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MoAc6p34gH-GD7.ttf", - "600": "https://fonts.gstatic.com/s/notosansbassavah/v21/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4PEBs6p34gH-GD7.ttf", - "700": "https://fonts.gstatic.com/s/notosansbassavah/v21/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4P9Bs6p34gH-GD7.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansbassavah/v21/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MaAf6o1Yw.ttf" - }, - { - "family": "Noto Sans Batak", - "variants": [ - "regular" - ], - "subsets": [ - "batak", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansbatak/v23/gok2H6TwAEdtF9N8-mdTCQvT-Zdgo4_PHuk74A.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansbatak/v23/gok2H6TwAEdtF9N8-mdTCQvT-ZdQooXL.ttf" - }, - { - "family": "Noto Sans Bengali", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "bengali", - "latin", - "latin-ext" - ], - "version": "v32", - "lastModified": "2025-09-17", - "files": { - "100": "https://fonts.gstatic.com/s/notosansbengali/v32/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolKudCk8izI0lc.ttf", - "200": "https://fonts.gstatic.com/s/notosansbengali/v32/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsglLudCk8izI0lc.ttf", - "300": "https://fonts.gstatic.com/s/notosansbengali/v32/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmstdLudCk8izI0lc.ttf", - "regular": "https://fonts.gstatic.com/s/notosansbengali/v32/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolLudCk8izI0lc.ttf", - "500": "https://fonts.gstatic.com/s/notosansbengali/v32/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsrtLudCk8izI0lc.ttf", - "600": "https://fonts.gstatic.com/s/notosansbengali/v32/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsldMudCk8izI0lc.ttf", - "700": "https://fonts.gstatic.com/s/notosansbengali/v32/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6Kmsm5MudCk8izI0lc.ttf", - "800": "https://fonts.gstatic.com/s/notosansbengali/v32/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsglMudCk8izI0lc.ttf", - "900": "https://fonts.gstatic.com/s/notosansbengali/v32/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsiBMudCk8izI0lc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansbengali/v32/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolLidGu9g.ttf" - }, - { - "family": "Noto Sans Bhaiksuki", - "variants": [ - "regular" - ], - "subsets": [ - "bhaiksuki", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansbhaiksuki/v18/UcC63EosKniBH4iELXATsSBWdvUHXxhj8rLUdU4wh9U.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansbhaiksuki/v18/UcC63EosKniBH4iELXATsSBWdvUHXxhjwrPecQ.ttf" - }, - { - "family": "Noto Sans Brahmi", - "variants": [ - "regular" - ], - "subsets": [ - "brahmi", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansbrahmi/v20/vEFK2-VODB8RrNDvZSUmQQIIByV18tK1W77HtMo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansbrahmi/v20/vEFK2-VODB8RrNDvZSUmQQIIByV1wtO_Xw.ttf" - }, - { - "family": "Noto Sans Buginese", - "variants": [ - "regular" - ], - "subsets": [ - "buginese", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansbuginese/v19/esDM30ldNv-KYGGJpKGk18phe_7Da6_gtfuEXLmNtw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansbuginese/v19/esDM30ldNv-KYGGJpKGk18phe_7Da6_QtPGA.ttf" - }, - { - "family": "Noto Sans Buhid", - "variants": [ - "regular" - ], - "subsets": [ - "buhid", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansbuhid/v23/Dxxy8jiXMW75w3OmoDXVWJD7YwzAe6tgnaFoGA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansbuhid/v23/Dxxy8jiXMW75w3OmoDXVWJD7YwzweqFk.ttf" - }, - { - "family": "Noto Sans Canadian Aboriginal", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "canadian-aboriginal", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLj_yAsg0q0uhQ.ttf", - "200": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig2Ln_yAsg0q0uhQ.ttf", - "300": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigBrn_yAsg0q0uhQ.ttf", - "regular": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLn_yAsg0q0uhQ.ttf", - "500": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigarn_yAsg0q0uhQ.ttf", - "600": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzighr7_yAsg0q0uhQ.ttf", - "700": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigv77_yAsg0q0uhQ.ttf", - "800": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig2L7_yAsg0q0uhQ.ttf", - "900": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig8b7_yAsg0q0uhQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLnPyQEk.ttf" - }, - { - "family": "Noto Sans Carian", - "variants": [ - "regular" - ], - "subsets": [ - "carian", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanscarian/v17/LDIpaoiONgYwA9Yc6f0gUILeMIOgs7ob9yGLmfI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanscarian/v17/LDIpaoiONgYwA9Yc6f0gUILeMIOgg7sR8w.ttf" - }, - { - "family": "Noto Sans Caucasian Albanian", - "variants": [ - "regular" - ], - "subsets": [ - "caucasian-albanian", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanscaucasianalbanian/v19/nKKA-HM_FYFRJvXzVXaANsU0VzsAc46QGOkWytlTs-TXrYDmoVmRSZo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanscaucasianalbanian/v19/nKKA-HM_FYFRJvXzVXaANsU0VzsAc46QGOkWytlTs-TXnYHspQ.ttf" - }, - { - "family": "Noto Sans Chakma", - "variants": [ - "regular" - ], - "subsets": [ - "chakma", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanschakma/v18/Y4GQYbJ8VTEp4t3MKJSMjg5OIzhi4JjTQhYBeYo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanschakma/v18/Y4GQYbJ8VTEp4t3MKJSMjg5OIzhi0JnZRg.ttf" - }, - { - "family": "Noto Sans Cham", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cham", - "latin", - "latin-ext" - ], - "version": "v33", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/notosanscham/v33/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcER0cv7GykboaLg.ttf", - "200": "https://fonts.gstatic.com/s/notosanscham/v33/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfckRwcv7GykboaLg.ttf", - "300": "https://fonts.gstatic.com/s/notosanscham/v33/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcTxwcv7GykboaLg.ttf", - "regular": "https://fonts.gstatic.com/s/notosanscham/v33/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcERwcv7GykboaLg.ttf", - "500": "https://fonts.gstatic.com/s/notosanscham/v33/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcIxwcv7GykboaLg.ttf", - "600": "https://fonts.gstatic.com/s/notosanscham/v33/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfczxscv7GykboaLg.ttf", - "700": "https://fonts.gstatic.com/s/notosanscham/v33/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfc9hscv7GykboaLg.ttf", - "800": "https://fonts.gstatic.com/s/notosanscham/v33/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfckRscv7GykboaLg.ttf", - "900": "https://fonts.gstatic.com/s/notosanscham/v33/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcuBscv7GykboaLg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanscham/v33/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcERwsvru2.ttf" - }, - { - "family": "Noto Sans Cherokee", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cherokee", - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosanscherokee/v25/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5ODkm5rAffjl0.ttf", - "200": "https://fonts.gstatic.com/s/notosanscherokee/v25/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWq5PDkm5rAffjl0.ttf", - "300": "https://fonts.gstatic.com/s/notosanscherokee/v25/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWnBPDkm5rAffjl0.ttf", - "regular": "https://fonts.gstatic.com/s/notosanscherokee/v25/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5PDkm5rAffjl0.ttf", - "500": "https://fonts.gstatic.com/s/notosanscherokee/v25/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWhxPDkm5rAffjl0.ttf", - "600": "https://fonts.gstatic.com/s/notosanscherokee/v25/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWvBIDkm5rAffjl0.ttf", - "700": "https://fonts.gstatic.com/s/notosanscherokee/v25/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWslIDkm5rAffjl0.ttf", - "800": "https://fonts.gstatic.com/s/notosanscherokee/v25/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWq5IDkm5rAffjl0.ttf", - "900": "https://fonts.gstatic.com/s/notosanscherokee/v25/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWodIDkm5rAffjl0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanscherokee/v25/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5PPkizqA.ttf" - }, - { - "family": "Noto Sans Chorasmian", - "variants": [ - "regular" - ], - "subsets": [ - "chorasmian", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v3", - "lastModified": "2024-01-26", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanschorasmian/v3/MQpL-X6uKMC7ROPLwRnI9ULxK_7NVkf8S5vyoH7w4g9b.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanschorasmian/v3/MQpL-X6uKMC7ROPLwRnI9ULxK_7NVkf8S6vzqno.ttf" - }, - { - "family": "Noto Sans Coptic", - "variants": [ - "regular" - ], - "subsets": [ - "coptic", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanscoptic/v22/iJWfBWmUZi_OHPqn4wq6kgqumOEd78u_VG0xR4Y.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanscoptic/v22/iJWfBWmUZi_OHPqn4wq6kgqumOEd38q1UA.ttf" - }, - { - "family": "Noto Sans Cuneiform", - "variants": [ - "regular" - ], - "subsets": [ - "cuneiform", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanscuneiform/v18/bMrrmTWK7YY-MF22aHGGd7H8PhJtvBDWgb9JlRQueeQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanscuneiform/v18/bMrrmTWK7YY-MF22aHGGd7H8PhJtvBDWsb5DkQ.ttf" - }, - { - "family": "Noto Sans Cypriot", - "variants": [ - "regular" - ], - "subsets": [ - "cypriot", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanscypriot/v20/8AtzGta9PYqQDjyp79a6f8Cj-3a3cxIsK5MPpahF.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanscypriot/v20/8AtzGta9PYqQDjyp79a6f8Cj-3a3cyItIZc.ttf" - }, - { - "family": "Noto Sans Cypro Minoan", - "variants": [ - "regular" - ], - "subsets": [ - "cypro-minoan", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanscyprominoan/v1/2Eb2L_dtDUlkNmPHB_UVtEzp3ZlPGqZ_4nAGq9eSf8_eQSE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanscyprominoan/v1/2Eb2L_dtDUlkNmPHB_UVtEzp3ZlPGqZ_4nAGm9aYew.ttf" - }, - { - "family": "Noto Sans Deseret", - "variants": [ - "regular" - ], - "subsets": [ - "deseret", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansdeseret/v18/MwQsbgPp1eKH6QsAVuFb9AZM6MMr2Vq9ZnJSZtQG.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansdeseret/v18/MwQsbgPp1eKH6QsAVuFb9AZM6MMr2Wq8bHY.ttf" - }, - { - "family": "Noto Sans Devanagari", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQky-AzoFoW4Ow.ttf", - "200": "https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlfQly-AzoFoW4Ow.ttf", - "300": "https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlSoly-AzoFoW4Ow.ttf", - "regular": "https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQly-AzoFoW4Ow.ttf", - "500": "https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlUYly-AzoFoW4Ow.ttf", - "600": "https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08Alaoiy-AzoFoW4Ow.ttf", - "700": "https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlZMiy-AzoFoW4Ow.ttf", - "800": "https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlfQiy-AzoFoW4Ow.ttf", - "900": "https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08Ald0iy-AzoFoW4Ow.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQl--E5pA.ttf" - }, - { - "family": "Noto Sans Display", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v30", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_3cLVTGQ2iHrvWM.ttf", - "200": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp__cKVTGQ2iHrvWM.ttf", - "300": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_ykKVTGQ2iHrvWM.ttf", - "regular": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_3cKVTGQ2iHrvWM.ttf", - "500": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_0UKVTGQ2iHrvWM.ttf", - "600": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_6kNVTGQ2iHrvWM.ttf", - "700": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_5ANVTGQ2iHrvWM.ttf", - "800": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp__cNVTGQ2iHrvWM.ttf", - "900": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_94NVTGQ2iHrvWM.ttf", - "100italic": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JvXOa3gPurWM9uQ.ttf", - "200italic": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JPXKa3gPurWM9uQ.ttf", - "300italic": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9J43Ka3gPurWM9uQ.ttf", - "italic": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JvXKa3gPurWM9uQ.ttf", - "500italic": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9Jj3Ka3gPurWM9uQ.ttf", - "600italic": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JY3Wa3gPurWM9uQ.ttf", - "700italic": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JWnWa3gPurWM9uQ.ttf", - "800italic": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JPXWa3gPurWM9uQ.ttf", - "900italic": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JFHWa3gPurWM9uQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansdisplay/v30/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_3cKZTCa3g.ttf" - }, - { - "family": "Noto Sans Duployan", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "duployan", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansduployan/v19/gokzH7nwAEdtF9N8-mdTDx_X9JM5wsvrFsIn6WYDvA.ttf", - "700": "https://fonts.gstatic.com/s/notosansduployan/v19/gokwH7nwAEdtF9N8-mdTDx_X9JM5wsvTqu0D4U0ftZS-Iw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansduployan/v19/gokzH7nwAEdtF9N8-mdTDx_X9JM5wsvbF8gj.ttf" - }, - { - "family": "Noto Sans Egyptian Hieroglyphs", - "variants": [ - "regular" - ], - "subsets": [ - "egyptian-hieroglyphs", - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansegyptianhieroglyphs/v30/vEF42-tODB8RrNDvZSUmRhcQHzx1s7y_F9-j3qSzEcbEYindSVK8xRg7iw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansegyptianhieroglyphs/v30/vEF42-tODB8RrNDvZSUmRhcQHzx1s7y_F9-j3qSzEcbEYintSFi4.ttf" - }, - { - "family": "Noto Sans Elbasan", - "variants": [ - "regular" - ], - "subsets": [ - "elbasan", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanselbasan/v17/-F6rfiZqLzI2JPCgQBnw400qp1trvHdlre4dFcFh.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanselbasan/v17/-F6rfiZqLzI2JPCgQBnw400qp1trvEdkp-o.ttf" - }, - { - "family": "Noto Sans Elymaic", - "variants": [ - "regular" - ], - "subsets": [ - "elymaic", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanselymaic/v18/UqyKK9YTJW5liNMhTMqe9vUFP65ZD4AjWOT0zi2V.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanselymaic/v18/UqyKK9YTJW5liNMhTMqe9vUFP65ZD7AiUuA.ttf" - }, - { - "family": "Noto Sans Ethiopic", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "ethiopic", - "latin", - "latin-ext" - ], - "version": "v50", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/notosansethiopic/v50/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T35OKqDjwmfeaY9u.ttf", - "200": "https://fonts.gstatic.com/s/notosansethiopic/v50/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37OK6DjwmfeaY9u.ttf", - "300": "https://fonts.gstatic.com/s/notosansethiopic/v50/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T34QK6DjwmfeaY9u.ttf", - "regular": "https://fonts.gstatic.com/s/notosansethiopic/v50/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T35OK6DjwmfeaY9u.ttf", - "500": "https://fonts.gstatic.com/s/notosansethiopic/v50/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T358K6DjwmfeaY9u.ttf", - "600": "https://fonts.gstatic.com/s/notosansethiopic/v50/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T36QLKDjwmfeaY9u.ttf", - "700": "https://fonts.gstatic.com/s/notosansethiopic/v50/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T36pLKDjwmfeaY9u.ttf", - "800": "https://fonts.gstatic.com/s/notosansethiopic/v50/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37OLKDjwmfeaY9u.ttf", - "900": "https://fonts.gstatic.com/s/notosansethiopic/v50/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37nLKDjwmfeaY9u.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansethiopic/v50/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T35OK5DiyGM.ttf" - }, - { - "family": "Noto Sans Georgian", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic-ext", - "georgian", - "greek-ext", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v48", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzVj-f5WK0OQV.ttf", - "200": "https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptnzFj-f5WK0OQV.ttf", - "300": "https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpu5zFj-f5WK0OQV.ttf", - "regular": "https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzFj-f5WK0OQV.ttf", - "500": "https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvVzFj-f5WK0OQV.ttf", - "600": "https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdps5y1j-f5WK0OQV.ttf", - "700": "https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpsAy1j-f5WK0OQV.ttf", - "800": "https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptny1j-f5WK0OQV.ttf", - "900": "https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptOy1j-f5WK0OQV.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzGj_dZE.ttf" - }, - { - "family": "Noto Sans Glagolitic", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic-ext", - "glagolitic", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansglagolitic/v19/1q2ZY4-BBFBst88SU_tOj4J-4yuNF_HI4ERK4Amu7nM1.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansglagolitic/v19/1q2ZY4-BBFBst88SU_tOj4J-4yuNF_HI4HRL6g0.ttf" - }, - { - "family": "Noto Sans Gothic", - "variants": [ - "regular" - ], - "subsets": [ - "gothic", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansgothic/v17/TuGKUUVzXI5FBtUq5a8bj6wRbzxTFMX40kFQRx0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansgothic/v17/TuGKUUVzXI5FBtUq5a8bj6wRbzxTJMTy1g.ttf" - }, - { - "family": "Noto Sans Grantha", - "variants": [ - "regular" - ], - "subsets": [ - "grantha", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansgrantha/v20/3y976akwcCjmsU8NDyrKo3IQfQ4o-r8cFeulHc6N.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansgrantha/v20/3y976akwcCjmsU8NDyrKo3IQfQ4o-o8dH-8.ttf" - }, - { - "family": "Noto Sans Gujarati", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/notosansgujarati/v27/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFgPM_OdiEH0s.ttf", - "200": "https://fonts.gstatic.com/s/notosansgujarati/v27/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wpFwPM_OdiEH0s.ttf", - "300": "https://fonts.gstatic.com/s/notosansgujarati/v27/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_z3FwPM_OdiEH0s.ttf", - "regular": "https://fonts.gstatic.com/s/notosansgujarati/v27/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFwPM_OdiEH0s.ttf", - "500": "https://fonts.gstatic.com/s/notosansgujarati/v27/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ybFwPM_OdiEH0s.ttf", - "600": "https://fonts.gstatic.com/s/notosansgujarati/v27/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_x3EAPM_OdiEH0s.ttf", - "700": "https://fonts.gstatic.com/s/notosansgujarati/v27/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_xOEAPM_OdiEH0s.ttf", - "800": "https://fonts.gstatic.com/s/notosansgujarati/v27/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wpEAPM_OdiEH0s.ttf", - "900": "https://fonts.gstatic.com/s/notosansgujarati/v27/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wAEAPM_OdiEH0s.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansgujarati/v27/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFzPN9uM.ttf" - }, - { - "family": "Noto Sans Gunjala Gondi", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "gunjala-gondi", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansgunjalagondi/v21/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYL4YDE4J4vCTxEJQ.ttf", - "500": "https://fonts.gstatic.com/s/notosansgunjalagondi/v21/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYL04DE4J4vCTxEJQ.ttf", - "600": "https://fonts.gstatic.com/s/notosansgunjalagondi/v21/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYLP4fE4J4vCTxEJQ.ttf", - "700": "https://fonts.gstatic.com/s/notosansgunjalagondi/v21/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYLBofE4J4vCTxEJQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansgunjalagondi/v21/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYL4YD04ZQr.ttf" - }, - { - "family": "Noto Sans Gurmukhi", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "gurmukhi", - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1Oe3bxZ_trdp7h.ttf", - "200": "https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3OenbxZ_trdp7h.ttf", - "300": "https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG0QenbxZ_trdp7h.ttf", - "regular": "https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1OenbxZ_trdp7h.ttf", - "500": "https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG18enbxZ_trdp7h.ttf", - "600": "https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG2QfXbxZ_trdp7h.ttf", - "700": "https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG2pfXbxZ_trdp7h.ttf", - "800": "https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3OfXbxZ_trdp7h.ttf", - "900": "https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3nfXbxZ_trdp7h.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1Oekbwbf8.ttf" - }, - { - "family": "Noto Sans HK", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "chinese-hongkong", - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v34", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosanshk/v34/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qHB_-oWTiYjNvVA.ttf", - "200": "https://fonts.gstatic.com/s/notosanshk/v34/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qPB--oWTiYjNvVA.ttf", - "300": "https://fonts.gstatic.com/s/notosanshk/v34/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qC5--oWTiYjNvVA.ttf", - "regular": "https://fonts.gstatic.com/s/notosanshk/v34/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qHB--oWTiYjNvVA.ttf", - "500": "https://fonts.gstatic.com/s/notosanshk/v34/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qEJ--oWTiYjNvVA.ttf", - "600": "https://fonts.gstatic.com/s/notosanshk/v34/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qK55-oWTiYjNvVA.ttf", - "700": "https://fonts.gstatic.com/s/notosanshk/v34/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qJd5-oWTiYjNvVA.ttf", - "800": "https://fonts.gstatic.com/s/notosanshk/v34/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qPB5-oWTiYjNvVA.ttf", - "900": "https://fonts.gstatic.com/s/notosanshk/v34/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qNl5-oWTiYjNvVA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanshk/v34/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qHB-yoSZjQ.ttf" - }, - { - "family": "Noto Sans Hanifi Rohingya", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "hanifi-rohingya", - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanshanifirohingya/v30/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIYY4j6vvcudK8rN.ttf", - "500": "https://fonts.gstatic.com/s/notosanshanifirohingya/v30/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIYq4j6vvcudK8rN.ttf", - "600": "https://fonts.gstatic.com/s/notosanshanifirohingya/v30/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIbG5T6vvcudK8rN.ttf", - "700": "https://fonts.gstatic.com/s/notosanshanifirohingya/v30/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIb_5T6vvcudK8rN.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanshanifirohingya/v30/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIYY4g6ut88.ttf" - }, - { - "family": "Noto Sans Hanunoo", - "variants": [ - "regular" - ], - "subsets": [ - "hanunoo", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanshanunoo/v22/f0Xs0fCv8dxkDWlZSoXOj6CphMloFsEsEpgL_ix2.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanshanunoo/v22/f0Xs0fCv8dxkDWlZSoXOj6CphMloFvEtGJw.ttf" - }, - { - "family": "Noto Sans Hatran", - "variants": [ - "regular" - ], - "subsets": [ - "hatran", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanshatran/v17/A2BBn4Ne0RgnVF3Lnko-0sOBIfL_mM83r1nwzDs.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanshatran/v17/A2BBn4Ne0RgnVF3Lnko-0sOBIfL_qM49qw.ttf" - }, - { - "family": "Noto Sans Hebrew", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic-ext", - "greek-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v50", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosanshebrew/v50/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4utoiJltutR2g.ttf", - "200": "https://fonts.gstatic.com/s/notosanshebrew/v50/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX94qtoiJltutR2g.ttf", - "300": "https://fonts.gstatic.com/s/notosanshebrew/v50/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXKYqtoiJltutR2g.ttf", - "regular": "https://fonts.gstatic.com/s/notosanshebrew/v50/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4qtoiJltutR2g.ttf", - "500": "https://fonts.gstatic.com/s/notosanshebrew/v50/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXRYqtoiJltutR2g.ttf", - "600": "https://fonts.gstatic.com/s/notosanshebrew/v50/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXqY2toiJltutR2g.ttf", - "700": "https://fonts.gstatic.com/s/notosanshebrew/v50/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXkI2toiJltutR2g.ttf", - "800": "https://fonts.gstatic.com/s/notosanshebrew/v50/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX942toiJltutR2g.ttf", - "900": "https://fonts.gstatic.com/s/notosanshebrew/v50/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX3o2toiJltutR2g.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanshebrew/v50/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4qdoyhh.ttf" - }, - { - "family": "Noto Sans Imperial Aramaic", - "variants": [ - "regular" - ], - "subsets": [ - "imperial-aramaic", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansimperialaramaic/v18/a8IMNpjwKmHXpgXbMIsbTc_kvks91LlLetBr5itQrtdml3YfPNno.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansimperialaramaic/v18/a8IMNpjwKmHXpgXbMIsbTc_kvks91LlLetBr5itQrudnnXI.ttf" - }, - { - "family": "Noto Sans Indic Siyaq Numbers", - "variants": [ - "regular" - ], - "subsets": [ - "indic-siyaq-numbers", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansindicsiyaqnumbers/v17/6xK5dTJFKcWIu4bpRBjRZRpsIYHabOeZ8UZLubTzpXNHKx2WPOpVd5Iu.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansindicsiyaqnumbers/v17/6xK5dTJFKcWIu4bpRBjRZRpsIYHabOeZ8UZLubTzpXNHKy2XNu4.ttf" - }, - { - "family": "Noto Sans Inscriptional Pahlavi", - "variants": [ - "regular" - ], - "subsets": [ - "inscriptional-pahlavi", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansinscriptionalpahlavi/v18/ll8UK3GaVDuxR-TEqFPIbsR79Xxz9WEKbwsjpz7VklYlC7FCVtqVOAYK0QA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansinscriptionalpahlavi/v18/ll8UK3GaVDuxR-TEqFPIbsR79Xxz9WEKbwsjpz7VklYlC7FCZtufPA.ttf" - }, - { - "family": "Noto Sans Inscriptional Parthian", - "variants": [ - "regular" - ], - "subsets": [ - "inscriptional-parthian", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansinscriptionalparthian/v18/k3k7o-IMPvpLmixcA63oYi-yStDkgXuXncL7dzfW3P4TAJ2yklBJ2jNkLlLr.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansinscriptionalparthian/v18/k3k7o-IMPvpLmixcA63oYi-yStDkgXuXncL7dzfW3P4TAJ2ykmBI0Dc.ttf" - }, - { - "family": "Noto Sans JP", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v55", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosansjp/v55/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEi75vY0rw-oME.ttf", - "200": "https://fonts.gstatic.com/s/notosansjp/v55/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFJEj75vY0rw-oME.ttf", - "300": "https://fonts.gstatic.com/s/notosansjp/v55/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFE8j75vY0rw-oME.ttf", - "regular": "https://fonts.gstatic.com/s/notosansjp/v55/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEj75vY0rw-oME.ttf", - "500": "https://fonts.gstatic.com/s/notosansjp/v55/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFCMj75vY0rw-oME.ttf", - "600": "https://fonts.gstatic.com/s/notosansjp/v55/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFM8k75vY0rw-oME.ttf", - "700": "https://fonts.gstatic.com/s/notosansjp/v55/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFPYk75vY0rw-oME.ttf", - "800": "https://fonts.gstatic.com/s/notosansjp/v55/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFJEk75vY0rw-oME.ttf", - "900": "https://fonts.gstatic.com/s/notosansjp/v55/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFLgk75vY0rw-oME.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansjp/v55/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEj35rS1g.ttf" - }, - { - "family": "Noto Sans Javanese", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "javanese", - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansjavanese/v25/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxJnkFFliZYWj4O8.ttf", - "500": "https://fonts.gstatic.com/s/notosansjavanese/v25/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxKvkFFliZYWj4O8.ttf", - "600": "https://fonts.gstatic.com/s/notosansjavanese/v25/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxEfjFFliZYWj4O8.ttf", - "700": "https://fonts.gstatic.com/s/notosansjavanese/v25/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxH7jFFliZYWj4O8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansjavanese/v25/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxJnkJFhoYQ.ttf" - }, - { - "family": "Noto Sans KR", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "korean", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v38", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosanskr/v38/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzuozeLTq8H4hfeE.ttf", - "200": "https://fonts.gstatic.com/s/notosanskr/v38/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzmoyeLTq8H4hfeE.ttf", - "300": "https://fonts.gstatic.com/s/notosanskr/v38/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzrQyeLTq8H4hfeE.ttf", - "regular": "https://fonts.gstatic.com/s/notosanskr/v38/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzuoyeLTq8H4hfeE.ttf", - "500": "https://fonts.gstatic.com/s/notosanskr/v38/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzztgyeLTq8H4hfeE.ttf", - "600": "https://fonts.gstatic.com/s/notosanskr/v38/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzjQ1eLTq8H4hfeE.ttf", - "700": "https://fonts.gstatic.com/s/notosanskr/v38/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzg01eLTq8H4hfeE.ttf", - "800": "https://fonts.gstatic.com/s/notosanskr/v38/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzmo1eLTq8H4hfeE.ttf", - "900": "https://fonts.gstatic.com/s/notosanskr/v38/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzkM1eLTq8H4hfeE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanskr/v38/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzuoySLXg9A.ttf" - }, - { - "family": "Noto Sans Kaithi", - "variants": [ - "regular" - ], - "subsets": [ - "kaithi", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanskaithi/v23/buEtppS9f8_vkXadMBJJu0tWjLwjQi0KdoZIKlo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanskaithi/v23/buEtppS9f8_vkXadMBJJu0tWjLwjciwAcg.ttf" - }, - { - "family": "Noto Sans Kannada", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "kannada", - "latin", - "latin-ext" - ], - "version": "v31", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/notosanskannada/v31/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvMzSIMLsPKrkY.ttf", - "200": "https://fonts.gstatic.com/s/notosanskannada/v31/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrLvNzSIMLsPKrkY.ttf", - "300": "https://fonts.gstatic.com/s/notosanskannada/v31/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrGXNzSIMLsPKrkY.ttf", - "regular": "https://fonts.gstatic.com/s/notosanskannada/v31/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvNzSIMLsPKrkY.ttf", - "500": "https://fonts.gstatic.com/s/notosanskannada/v31/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrAnNzSIMLsPKrkY.ttf", - "600": "https://fonts.gstatic.com/s/notosanskannada/v31/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrOXKzSIMLsPKrkY.ttf", - "700": "https://fonts.gstatic.com/s/notosanskannada/v31/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrNzKzSIMLsPKrkY.ttf", - "800": "https://fonts.gstatic.com/s/notosanskannada/v31/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrLvKzSIMLsPKrkY.ttf", - "900": "https://fonts.gstatic.com/s/notosanskannada/v31/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrJLKzSIMLsPKrkY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanskannada/v31/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvN_SMGKg.ttf" - }, - { - "family": "Noto Sans Kawi", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "kawi", - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanskawi/v5/92zBtBJLNqsg7tCciW0EPHNNh1ZgbtGWiTYDjvnK4AhmCpRyMjXVsQ.ttf", - "500": "https://fonts.gstatic.com/s/notosanskawi/v5/92zBtBJLNqsg7tCciW0EPHNNh1ZgbtGWiTYDjvnK0ghmCpRyMjXVsQ.ttf", - "600": "https://fonts.gstatic.com/s/notosanskawi/v5/92zBtBJLNqsg7tCciW0EPHNNh1ZgbtGWiTYDjvnKPg9mCpRyMjXVsQ.ttf", - "700": "https://fonts.gstatic.com/s/notosanskawi/v5/92zBtBJLNqsg7tCciW0EPHNNh1ZgbtGWiTYDjvnKBw9mCpRyMjXVsQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanskawi/v5/92zBtBJLNqsg7tCciW0EPHNNh1ZgbtGWiTYDjvnK4AhWC552.ttf" - }, - { - "family": "Noto Sans Kayah Li", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "kayah-li", - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanskayahli/v26/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WCc3CZH4EXLuKVM.ttf", - "500": "https://fonts.gstatic.com/s/notosanskayahli/v26/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WBU3CZH4EXLuKVM.ttf", - "600": "https://fonts.gstatic.com/s/notosanskayahli/v26/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WPkwCZH4EXLuKVM.ttf", - "700": "https://fonts.gstatic.com/s/notosanskayahli/v26/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WMAwCZH4EXLuKVM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanskayahli/v26/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WCc3OZDyFQ.ttf" - }, - { - "family": "Noto Sans Kharoshthi", - "variants": [ - "regular" - ], - "subsets": [ - "kharoshthi", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanskharoshthi/v17/Fh4qPiLjKS30-P4-pGMMXCCfvkc5Vd7KE5z4rFyx5mR1.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanskharoshthi/v17/Fh4qPiLjKS30-P4-pGMMXCCfvkc5Vd7KE6z5plg.ttf" - }, - { - "family": "Noto Sans Khmer", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "khmer", - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notosanskhmer/v29/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAZz4kAbrddiA.ttf", - "200": "https://fonts.gstatic.com/s/notosanskhmer/v29/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYsNAJz4kAbrddiA.ttf", - "300": "https://fonts.gstatic.com/s/notosanskhmer/v29/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYvTAJz4kAbrddiA.ttf", - "regular": "https://fonts.gstatic.com/s/notosanskhmer/v29/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAJz4kAbrddiA.ttf", - "500": "https://fonts.gstatic.com/s/notosanskhmer/v29/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYu_AJz4kAbrddiA.ttf", - "600": "https://fonts.gstatic.com/s/notosanskhmer/v29/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYtTB5z4kAbrddiA.ttf", - "700": "https://fonts.gstatic.com/s/notosanskhmer/v29/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYtqB5z4kAbrddiA.ttf", - "800": "https://fonts.gstatic.com/s/notosanskhmer/v29/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYsNB5z4kAbrddiA.ttf", - "900": "https://fonts.gstatic.com/s/notosanskhmer/v29/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYskB5z4kAbrddiA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanskhmer/v29/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAKz5mgI.ttf" - }, - { - "family": "Noto Sans Khojki", - "variants": [ - "regular" - ], - "subsets": [ - "khojki", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanskhojki/v20/-nFnOHM29Oofr2wohFbTuPPKVWpmK_d709jy92k.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanskhojki/v20/-nFnOHM29Oofr2wohFbTuPPKVWpmG_Zx1w.ttf" - }, - { - "family": "Noto Sans Khudawadi", - "variants": [ - "regular" - ], - "subsets": [ - "khudawadi", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanskhudawadi/v23/fdNi9t6ZsWBZ2k5ltHN73zZ5hc8HANlHIjRnVVXz9MY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanskhudawadi/v23/fdNi9t6ZsWBZ2k5ltHN73zZ5hc8HANlHEjVtUQ.ttf" - }, - { - "family": "Noto Sans Lao", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "lao", - "latin", - "latin-ext" - ], - "version": "v33", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/notosanslao/v33/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccfdf5MK3riB2w.ttf", - "200": "https://fonts.gstatic.com/s/notosanslao/v33/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt48cbdf5MK3riB2w.ttf", - "300": "https://fonts.gstatic.com/s/notosanslao/v33/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4L8bdf5MK3riB2w.ttf", - "regular": "https://fonts.gstatic.com/s/notosanslao/v33/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccbdf5MK3riB2w.ttf", - "500": "https://fonts.gstatic.com/s/notosanslao/v33/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4Q8bdf5MK3riB2w.ttf", - "600": "https://fonts.gstatic.com/s/notosanslao/v33/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4r8Hdf5MK3riB2w.ttf", - "700": "https://fonts.gstatic.com/s/notosanslao/v33/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4lsHdf5MK3riB2w.ttf", - "800": "https://fonts.gstatic.com/s/notosanslao/v33/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt48cHdf5MK3riB2w.ttf", - "900": "https://fonts.gstatic.com/s/notosanslao/v33/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt42MHdf5MK3riB2w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanslao/v33/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccbtfpkO.ttf" - }, - { - "family": "Noto Sans Lao Looped", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "lao", - "latin", - "latin-ext" - ], - "version": "v10", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomPr2M-Zw5V_T71k.ttf", - "200": "https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomHr3M-Zw5V_T71k.ttf", - "300": "https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomKT3M-Zw5V_T71k.ttf", - "regular": "https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomPr3M-Zw5V_T71k.ttf", - "500": "https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomMj3M-Zw5V_T71k.ttf", - "600": "https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomCTwM-Zw5V_T71k.ttf", - "700": "https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomB3wM-Zw5V_T71k.ttf", - "800": "https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomHrwM-Zw5V_T71k.ttf", - "900": "https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomFPwM-Zw5V_T71k.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomPr3A-d64Q.ttf" - }, - { - "family": "Noto Sans Lepcha", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "lepcha" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanslepcha/v20/0QI7MWlB_JWgA166SKhu05TekNS32AJstqBXgd4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanslepcha/v20/0QI7MWlB_JWgA166SKhu05TekNS36ANmsg.ttf" - }, - { - "family": "Noto Sans Limbu", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "limbu" - ], - "version": "v26", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanslimbu/v26/3JnlSDv90Gmq2mrzckOBBRRoNJVj0MF3OHRDnA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanslimbu/v26/3JnlSDv90Gmq2mrzckOBBRRoNJVT0ctz.ttf" - }, - { - "family": "Noto Sans Linear A", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "linear-a" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanslineara/v19/oPWS_l16kP4jCuhpgEGmwJOiA18FZj22zmHQAGQicw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanslineara/v19/oPWS_l16kP4jCuhpgEGmwJOiA18FZj2Gz2vU.ttf" - }, - { - "family": "Noto Sans Linear B", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "linear-b" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanslinearb/v18/HhyJU4wt9vSgfHoORYOiXOckKNB737IV3BkFTq4EPw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanslinearb/v18/HhyJU4wt9vSgfHoORYOiXOckKNB737Il3RMB.ttf" - }, - { - "family": "Noto Sans Lisu", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "lisu" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanslisu/v27/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP2Vwt29IlxkVdig.ttf", - "500": "https://fonts.gstatic.com/s/notosanslisu/v27/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP61wt29IlxkVdig.ttf", - "600": "https://fonts.gstatic.com/s/notosanslisu/v27/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHPB1st29IlxkVdig.ttf", - "700": "https://fonts.gstatic.com/s/notosanslisu/v27/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHPPlst29IlxkVdig.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanslisu/v27/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP2Vwd2tgh.ttf" - }, - { - "family": "Noto Sans Lycian", - "variants": [ - "regular" - ], - "subsets": [ - "lycian" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanslycian/v16/QldVNSNMqAsHtsJ7UmqxBQA9r8wA5_naCJwn00E.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanslycian/v16/QldVNSNMqAsHtsJ7UmqxBQA9r8wA1_jQDA.ttf" - }, - { - "family": "Noto Sans Lydian", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "lydian" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanslydian/v19/c4m71mVzGN7s8FmIukZJ1v4ZlcPReUPXMoIjEQI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanslydian/v19/c4m71mVzGN7s8FmIukZJ1v4ZlcPRSULdNg.ttf" - }, - { - "family": "Noto Sans Mahajani", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "mahajani" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmahajani/v20/-F6sfiVqLzI2JPCgQBnw60Agp0JrvD5Fh8ARHNh4zg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmahajani/v20/-F6sfiVqLzI2JPCgQBnw60Agp0JrvD51hsoV.ttf" - }, - { - "family": "Noto Sans Malayalam", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "malayalam" - ], - "version": "v29", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuH9BFzEr6HxEA.ttf", - "200": "https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_xuD9BFzEr6HxEA.ttf", - "300": "https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_GOD9BFzEr6HxEA.ttf", - "regular": "https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuD9BFzEr6HxEA.ttf", - "500": "https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_dOD9BFzEr6HxEA.ttf", - "600": "https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_mOf9BFzEr6HxEA.ttf", - "700": "https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_oef9BFzEr6HxEA.ttf", - "800": "https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_xuf9BFzEr6HxEA.ttf", - "900": "https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_7-f9BFzEr6HxEA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuDNBVbA.ttf" - }, - { - "family": "Noto Sans Mandaic", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "mandaic" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmandaic/v18/cIfnMbdWt1w_HgCcilqhKQBo_OsMI5_A_gMk0izH.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmandaic/v18/cIfnMbdWt1w_HgCcilqhKQBo_OsMI6_B9Ac.ttf" - }, - { - "family": "Noto Sans Manichaean", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "manichaean" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmanichaean/v19/taiVGntiC4--qtsfi4Jp9-_GkPZZCcrfekqCNTtFCtdX.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmanichaean/v19/taiVGntiC4--qtsfi4Jp9-_GkPZZCcrfenqDPz8.ttf" - }, - { - "family": "Noto Sans Marchen", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "marchen" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmarchen/v21/aFTO7OZ_Y282EP-WyG6QTOX_C8WZMHhPk652ZaHk.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmarchen/v21/aFTO7OZ_Y282EP-WyG6QTOX_C8WZMEhOmao.ttf" - }, - { - "family": "Noto Sans Masaram Gondi", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "masaram-gondi" - ], - "version": "v18", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmasaramgondi/v18/6xK_dThFKcWIu4bpRBjRYRV7KZCbUq6n_1kPnuGe7RI9WSWX.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmasaramgondi/v18/6xK_dThFKcWIu4bpRBjRYRV7KZCbUq6n_1kPntGf5xY.ttf" - }, - { - "family": "Noto Sans Math", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "math" - ], - "version": "v18", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmath/v18/7Aump_cpkSecTWaHRlH2hyV5UHkG-V048PW0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmath/v18/7Aump_cpkSecTWaHRlH2hyV5UEkH81k.ttf" - }, - { - "family": "Noto Sans Mayan Numerals", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "mayan-numerals" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmayannumerals/v17/PlIuFk25O6RzLfvNNVSivR09_KqYMwvvDKYjfIiE68oo6eepYQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmayannumerals/v17/PlIuFk25O6RzLfvNNVSivR09_KqYMwvvDKYjfIi06sAs.ttf" - }, - { - "family": "Noto Sans Medefaidrin", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "medefaidrin" - ], - "version": "v29", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmedefaidrin/v29/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmErWlT318e5A3rw.ttf", - "500": "https://fonts.gstatic.com/s/notosansmedefaidrin/v29/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmHjWlT318e5A3rw.ttf", - "600": "https://fonts.gstatic.com/s/notosansmedefaidrin/v29/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmJTRlT318e5A3rw.ttf", - "700": "https://fonts.gstatic.com/s/notosansmedefaidrin/v29/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmK3RlT318e5A3rw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmedefaidrin/v29/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmErWpTz_9Q.ttf" - }, - { - "family": "Noto Sans Meetei Mayek", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "meetei-mayek" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ__TW5PgeFYVa.ttf", - "200": "https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1RJ_vTW5PgeFYVa.ttf", - "300": "https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1SX_vTW5PgeFYVa.ttf", - "regular": "https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ_vTW5PgeFYVa.ttf", - "500": "https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1T7_vTW5PgeFYVa.ttf", - "600": "https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1QX-fTW5PgeFYVa.ttf", - "700": "https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1Qu-fTW5PgeFYVa.ttf", - "800": "https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1RJ-fTW5PgeFYVa.ttf", - "900": "https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1Rg-fTW5PgeFYVa.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ_sTX7vw.ttf" - }, - { - "family": "Noto Sans Mende Kikakui", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "mende-kikakui" - ], - "version": "v29", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmendekikakui/v29/11hRGoLHz17aKjQCWj-JHcLvu2Q5zZrnkbNCLUx_aDJLAHer.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmendekikakui/v29/11hRGoLHz17aKjQCWj-JHcLvu2Q5zZrnkbNCLXx-YjY.ttf" - }, - { - "family": "Noto Sans Meroitic", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "meroitic", - "meroitic-cursive", - "meroitic-hieroglyphs" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmeroitic/v19/IFS5HfRJndhE3P4b5jnZ3ITPvC6i00UDgDhTiKY9KQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmeroitic/v19/IFS5HfRJndhE3P4b5jnZ3ITPvC6i00UzgTJX.ttf" - }, - { - "family": "Noto Sans Miao", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "miao" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmiao/v18/Dxxz8jmXMW75w3OmoDXVV4zyZUjgUYVslLhx.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmiao/v18/Dxxz8jmXMW75w3OmoDXVV4zyZXjhW4E.ttf" - }, - { - "family": "Noto Sans Modi", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "modi" - ], - "version": "v25", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmodi/v25/pe03MIySN5pO62Z5YkFyT7jeav5qWVAgVol-.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmodi/v25/pe03MIySN5pO62Z5YkFyT7jeas5rU1Q.ttf" - }, - { - "family": "Noto Sans Mongolian", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "mongolian", - "symbols" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmongolian/v23/VdGCAYADGIwE0EopZx8xQfHlgEAMsrToxLsg6-av1x0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmongolian/v23/VdGCAYADGIwE0EopZx8xQfHlgEAMsrTo9Loq7w.ttf" - }, - { - "family": "Noto Sans Mono", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v37", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/notosansmono/v37/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_FNI49rXVEQQL8Y.ttf", - "200": "https://fonts.gstatic.com/s/notosansmono/v37/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_NNJ49rXVEQQL8Y.ttf", - "300": "https://fonts.gstatic.com/s/notosansmono/v37/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_A1J49rXVEQQL8Y.ttf", - "regular": "https://fonts.gstatic.com/s/notosansmono/v37/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_FNJ49rXVEQQL8Y.ttf", - "500": "https://fonts.gstatic.com/s/notosansmono/v37/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_GFJ49rXVEQQL8Y.ttf", - "600": "https://fonts.gstatic.com/s/notosansmono/v37/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_I1O49rXVEQQL8Y.ttf", - "700": "https://fonts.gstatic.com/s/notosansmono/v37/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_LRO49rXVEQQL8Y.ttf", - "800": "https://fonts.gstatic.com/s/notosansmono/v37/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_NNO49rXVEQQL8Y.ttf", - "900": "https://fonts.gstatic.com/s/notosansmono/v37/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_PpO49rXVEQQL8Y.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmono/v37/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_FNJ09vdUA.ttf" - }, - { - "family": "Noto Sans Mro", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "mro" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmro/v19/qWcsB6--pZv9TqnUQMhe9b39WDzRtjkho4M.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmro/v19/qWcsB6--pZv9TqnUQMhe9b39aD3bsg.ttf" - }, - { - "family": "Noto Sans Multani", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "multani" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansmultani/v21/9Bty3ClF38_RfOpe1gCaZ8p30BOFO1A0pfCs5Kos.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmultani/v21/9Bty3ClF38_RfOpe1gCaZ8p30BOFO2A1r_Q.ttf" - }, - { - "family": "Noto Sans Myanmar", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "myanmar" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZs_y1ZtY3ymOryg38hOCSdOnFq0HGS1uEapkAC3AY.ttf", - "200": "https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HE-98EwiEwLxR-r.ttf", - "300": "https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFa9MEwiEwLxR-r.ttf", - "regular": "https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZq_y1ZtY3ymOryg38hOCSdOnFq0En23OU4o1AC.ttf", - "500": "https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HEC9cEwiEwLxR-r.ttf", - "600": "https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HEu8sEwiEwLxR-r.ttf", - "700": "https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFK88EwiEwLxR-r.ttf", - "800": "https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFW8MEwiEwLxR-r.ttf", - "900": "https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFy8cEwiEwLxR-r.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZq_y1ZtY3ymOryg38hOCSdOnFq0Hn31uE.ttf" - }, - { - "family": "Noto Sans NKo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "nko" - ], - "version": "v7", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansnko/v7/esDX31ZdNv-KYGGJpKGk2_RpMpCMHMLBrdA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansnko/v7/esDX31ZdNv-KYGGJpKGk2_RpApGGGA.ttf" - }, - { - "family": "Noto Sans NKo Unjoined", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "nko" - ], - "version": "v4", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansnkounjoined/v4/MCo_zBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szPOBB5nuzMdWs0rvF2gEPxf5wbh3T.ttf", - "500": "https://fonts.gstatic.com/s/notosansnkounjoined/v4/MCo_zBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szPOBB5nuzMdWs0rv32gEPxf5wbh3T.ttf", - "600": "https://fonts.gstatic.com/s/notosansnkounjoined/v4/MCo_zBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szPOBB5nuzMdWs0rsb3QEPxf5wbh3T.ttf", - "700": "https://fonts.gstatic.com/s/notosansnkounjoined/v4/MCo_zBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szPOBB5nuzMdWs0rsi3QEPxf5wbh3T.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansnkounjoined/v4/MCo_zBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szPOBB5nuzMdWs0rvF2jEOz_o.ttf" - }, - { - "family": "Noto Sans Nabataean", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "nabataean" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansnabataean/v17/IFS4HfVJndhE3P4b5jnZ34DfsjO330dNoBJ9hK8kMK4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansnabataean/v17/IFS4HfVJndhE3P4b5jnZ34DfsjO330dNkBN3gA.ttf" - }, - { - "family": "Noto Sans Nag Mundari", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "nag-mundari" - ], - "version": "v4", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansnagmundari/v4/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHRxirbUGA0whP19M.ttf", - "500": "https://fonts.gstatic.com/s/notosansnagmundari/v4/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHRyqrbUGA0whP19M.ttf", - "600": "https://fonts.gstatic.com/s/notosansnagmundari/v4/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHR8asbUGA0whP19M.ttf", - "700": "https://fonts.gstatic.com/s/notosansnagmundari/v4/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHR_-sbUGA0whP19M.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansnagmundari/v4/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHRxirXUCK1w.ttf" - }, - { - "family": "Noto Sans Nandinagari", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "nandinagari" - ], - "version": "v4", - "lastModified": "2023-10-25", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansnandinagari/v4/or38Q7733eiDljA1IufXSNFT-1KI5y10H4jVa5RXzC1KOw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansnandinagari/v4/or38Q7733eiDljA1IufXSNFT-1KI5y10H4jlap5T.ttf" - }, - { - "family": "Noto Sans New Tai Lue", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "new-tai-lue" - ], - "version": "v24", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansnewtailue/v24/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdeXAYUbghFPKzeY.ttf", - "500": "https://fonts.gstatic.com/s/notosansnewtailue/v24/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pddfAYUbghFPKzeY.ttf", - "600": "https://fonts.gstatic.com/s/notosansnewtailue/v24/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdTvHYUbghFPKzeY.ttf", - "700": "https://fonts.gstatic.com/s/notosansnewtailue/v24/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdQLHYUbghFPKzeY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansnewtailue/v24/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdeXAUUfqgA.ttf" - }, - { - "family": "Noto Sans Newa", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "newa" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansnewa/v17/7r3fqXp6utEsO9pI4f8ok8sWg8n_qN4R5lNU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansnewa/v17/7r3fqXp6utEsO9pI4f8ok8sWg_n-oto.ttf" - }, - { - "family": "Noto Sans Nushu", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "nushu" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansnushu/v20/rnCw-xRQ3B7652emAbAe_Ai1IYaFWFAMArZKqQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansnushu/v20/rnCw-xRQ3B7652emAbAe_Ai1IYa1WVoI.ttf" - }, - { - "family": "Noto Sans Ogham", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "ogham" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansogham/v18/kmKlZqk1GBDGN0mY6k5lmEmww4hrt5laQxcoCA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansogham/v18/kmKlZqk1GBDGN0mY6k5lmEmww4hbtpNe.ttf" - }, - { - "family": "Noto Sans Ol Chiki", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "ol-chiki" - ], - "version": "v31", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansolchiki/v31/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALWk267I6gVrz5gQ.ttf", - "500": "https://fonts.gstatic.com/s/notosansolchiki/v31/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALVs267I6gVrz5gQ.ttf", - "600": "https://fonts.gstatic.com/s/notosansolchiki/v31/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALbcx67I6gVrz5gQ.ttf", - "700": "https://fonts.gstatic.com/s/notosansolchiki/v31/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALY4x67I6gVrz5gQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansolchiki/v31/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALWk227MwhQ.ttf" - }, - { - "family": "Noto Sans Old Hungarian", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "old-hungarian" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansoldhungarian/v19/E213_cD6hP3GwCJPEUssHEM0KqLaHJXg2PiIgRfjbg5nCYXt.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansoldhungarian/v19/E213_cD6hP3GwCJPEUssHEM0KqLaHJXg2PiIgSfiZAo.ttf" - }, - { - "family": "Noto Sans Old Italic", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "old-italic" - ], - "version": "v18", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansolditalic/v18/TuGOUUFzXI5FBtUq5a8bh68BJxxEVam7tWlRdRhtCC4d.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansolditalic/v18/TuGOUUFzXI5FBtUq5a8bh68BJxxEVam7tVlQfxw.ttf" - }, - { - "family": "Noto Sans Old North Arabian", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "old-north-arabian" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansoldnortharabian/v17/esDF30BdNv-KYGGJpKGk2tNiMt7Jar6olZDyNdr81zBQmUo_xw4ABw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansoldnortharabian/v17/esDF30BdNv-KYGGJpKGk2tNiMt7Jar6olZDyNdr81zBgmEA7.ttf" - }, - { - "family": "Noto Sans Old Permic", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "old-permic" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansoldpermic/v18/snf1s1q1-dF8pli1TesqcbUY4Mr-ElrwKLdXgv_dKYB5.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansoldpermic/v18/snf1s1q1-dF8pli1TesqcbUY4Mr-ElrwKIdWiPs.ttf" - }, - { - "family": "Noto Sans Old Persian", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "old-persian" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansoldpersian/v17/wEOjEAbNnc5caQTFG18FHrZr9Bp6-8CmIJ_tqOlQfx9CjA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansoldpersian/v17/wEOjEAbNnc5caQTFG18FHrZr9Bp6-8CmIJ_dqeNU.ttf" - }, - { - "family": "Noto Sans Old Sogdian", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "old-sogdian" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansoldsogdian/v18/3JnjSCH90Gmq2mrzckOBBhFhdrMst48aURt7neIqM-9uyg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansoldsogdian/v18/3JnjSCH90Gmq2mrzckOBBhFhdrMst48aURtLnOgu.ttf" - }, - { - "family": "Noto Sans Old South Arabian", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "old-south-arabian" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansoldsoutharabian/v17/3qT5oiOhnSyU8TNFIdhZTice3hB_HWKsEnF--0XCHiKx1OtDT9HwTA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansoldsoutharabian/v17/3qT5oiOhnSyU8TNFIdhZTice3hB_HWKsEnF--0XCHiKB1eFH.ttf" - }, - { - "family": "Noto Sans Old Turkic", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "old-turkic" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansoldturkic/v19/yMJNMJVya43H0SUF_WmcGEQVqoEMKDKbsE2RjEw-Vyws.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansoldturkic/v19/yMJNMJVya43H0SUF_WmcGEQVqoEMKDKbsH2Qhkg.ttf" - }, - { - "family": "Noto Sans Oriya", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "oriya" - ], - "version": "v33", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/notosansoriya/v33/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0fq_c6LhHBRe-.ttf", - "200": "https://fonts.gstatic.com/s/notosansoriya/v33/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivh0f6_c6LhHBRe-.ttf", - "300": "https://fonts.gstatic.com/s/notosansoriya/v33/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Iviqf6_c6LhHBRe-.ttf", - "regular": "https://fonts.gstatic.com/s/notosansoriya/v33/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0f6_c6LhHBRe-.ttf", - "500": "https://fonts.gstatic.com/s/notosansoriya/v33/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvjGf6_c6LhHBRe-.ttf", - "600": "https://fonts.gstatic.com/s/notosansoriya/v33/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvgqeK_c6LhHBRe-.ttf", - "700": "https://fonts.gstatic.com/s/notosansoriya/v33/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvgTeK_c6LhHBRe-.ttf", - "800": "https://fonts.gstatic.com/s/notosansoriya/v33/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivh0eK_c6LhHBRe-.ttf", - "900": "https://fonts.gstatic.com/s/notosansoriya/v33/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvhdeK_c6LhHBRe-.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansoriya/v33/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0f5_d4rw.ttf" - }, - { - "family": "Noto Sans Osage", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "osage" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansosage/v19/oPWX_kB6kP4jCuhpgEGmw4mtAVtXRlaSxkrMCQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansosage/v19/oPWX_kB6kP4jCuhpgEGmw4mtAVtnR1yW.ttf" - }, - { - "family": "Noto Sans Osmanya", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "osmanya" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansosmanya/v19/8vIS7xs32H97qzQKnzfeWzUyUpOJmz6kR47NCV5Z.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansosmanya/v19/8vIS7xs32H97qzQKnzfeWzUyUpOJmw6lTYo.ttf" - }, - { - "family": "Noto Sans Pahawh Hmong", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "pahawh-hmong" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanspahawhhmong/v19/bWtp7e_KfBziStx7lIzKKaMUOBEA3UPQDW7krzc_c48aMpM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanspahawhhmong/v19/bWtp7e_KfBziStx7lIzKKaMUOBEA3UPQDW7knzY1dw.ttf" - }, - { - "family": "Noto Sans Palmyrene", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "palmyrene" - ], - "version": "v17", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanspalmyrene/v17/ZgNPjOdKPa7CHqq0h37c_ASCWvH93SFCPnK5ZpdNtcA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanspalmyrene/v17/ZgNPjOdKPa7CHqq0h37c_ASCWvH93SFCDnOzYg.ttf" - }, - { - "family": "Noto Sans Pau Cin Hau", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "pau-cin-hau" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanspaucinhau/v21/x3d-cl3IZKmUqiMg_9wBLLtzl22EayN7ehIdjEWqKMxsKw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanspaucinhau/v21/x3d-cl3IZKmUqiMg_9wBLLtzl22EayN7ehItjU-u.ttf" - }, - { - "family": "Noto Sans PhagsPa", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "phags-pa", - "symbols" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansphagspa/v24/XLY8IYr5bJNDGYxPGjyYbaEjwQR-LFlsYMYHGGeT.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansphagspa/v24/XLY8IYr5bJNDGYxPGjyYbaEjwQR-LGltasI.ttf" - }, - { - "family": "Noto Sans Phoenician", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "phoenician" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansphoenician/v18/jizFRF9Ksm4Bt9PvcTaEkIHiTVtxmFtS5X7Jot-p5561.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansphoenician/v18/jizFRF9Ksm4Bt9PvcTaEkIHiTVtxmFtS5U7IqNs.ttf" - }, - { - "family": "Noto Sans Psalter Pahlavi", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "psalter-pahlavi" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanspsalterpahlavi/v18/rP2Vp3K65FkAtHfwd-eISGznYihzggmsicPfud3w1G3KsUQBct4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanspsalterpahlavi/v18/rP2Vp3K65FkAtHfwd-eISGznYihzggmsicPfud3w5GzAtQ.ttf" - }, - { - "family": "Noto Sans Rejang", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "rejang" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansrejang/v22/Ktk2AKuMeZjqPnXgyqrib7DIogqwN4O3WYZB_sU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansrejang/v22/Ktk2AKuMeZjqPnXgyqrib7DIogqwB4K9XQ.ttf" - }, - { - "family": "Noto Sans Runic", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "runic" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansrunic/v18/H4c_BXWPl9DZ0Xe_nHUaus7W68WWaxpvHtgIYg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansrunic/v18/H4c_BXWPl9DZ0Xe_nHUaus7W68WmahBr.ttf" - }, - { - "family": "Noto Sans SC", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "chinese-simplified", - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v39", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notosanssc/v39/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG9_EnYxNbPzS5HE.ttf", - "200": "https://fonts.gstatic.com/s/notosanssc/v39/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG1_FnYxNbPzS5HE.ttf", - "300": "https://fonts.gstatic.com/s/notosanssc/v39/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG4HFnYxNbPzS5HE.ttf", - "regular": "https://fonts.gstatic.com/s/notosanssc/v39/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG9_FnYxNbPzS5HE.ttf", - "500": "https://fonts.gstatic.com/s/notosanssc/v39/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG-3FnYxNbPzS5HE.ttf", - "600": "https://fonts.gstatic.com/s/notosanssc/v39/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaGwHCnYxNbPzS5HE.ttf", - "700": "https://fonts.gstatic.com/s/notosanssc/v39/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaGzjCnYxNbPzS5HE.ttf", - "800": "https://fonts.gstatic.com/s/notosanssc/v39/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG1_CnYxNbPzS5HE.ttf", - "900": "https://fonts.gstatic.com/s/notosanssc/v39/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG3bCnYxNbPzS5HE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssc/v39/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG9_FrY1HaA.ttf" - }, - { - "family": "Noto Sans Samaritan", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "samaritan" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssamaritan/v17/buEqppe9f8_vkXadMBJJo0tSmaYjFkxOUo5jNlOVMzQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssamaritan/v17/buEqppe9f8_vkXadMBJJo0tSmaYjFkxOYo9pMg.ttf" - }, - { - "family": "Noto Sans Saurashtra", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "saurashtra" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssaurashtra/v24/ea8GacQ0Wfz_XKWXe6OtoA8w8zvmYwTef9ndjhPTSIx9.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssaurashtra/v24/ea8GacQ0Wfz_XKWXe6OtoA8w8zvmYwTef-nchBc.ttf" - }, - { - "family": "Noto Sans Sharada", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "sharada" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssharada/v17/gok0H7rwAEdtF9N8-mdTGALG6p0kwoXLPOwr4H8a.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssharada/v17/gok0H7rwAEdtF9N8-mdTGALG6p0kwrXKNug.ttf" - }, - { - "family": "Noto Sans Shavian", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "shavian" - ], - "version": "v18", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansshavian/v18/CHy5V_HZE0jxJBQlqAeCKjJvQBNF4EFQSplv2Cwg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansshavian/v18/CHy5V_HZE0jxJBQlqAeCKjJvQBNF4HFRQJ0.ttf" - }, - { - "family": "Noto Sans Siddham", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "siddham" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssiddham/v21/OZpZg-FwqiNLe9PELUikxTWDoCCeGqndk3Ic92ZH.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssiddham/v21/OZpZg-FwqiNLe9PELUikxTWDoCCeGpncmXY.ttf" - }, - { - "family": "Noto Sans SignWriting", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "signwriting" - ], - "version": "v5", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssignwriting/v5/Noas6VX_wIWFbTTCrYmvy9A2UnkL-2SZAWiUEVCARYQemg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssignwriting/v5/Noas6VX_wIWFbTTCrYmvy9A2UnkL-2SZAWikEFqE.ttf" - }, - { - "family": "Noto Sans Sinhala", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "sinhala" - ], - "version": "v36", - "lastModified": "2025-09-17", - "files": { - "100": "https://fonts.gstatic.com/s/notosanssinhala/v36/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2b5lgLpJwbQRM.ttf", - "200": "https://fonts.gstatic.com/s/notosanssinhala/v36/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwo2a5lgLpJwbQRM.ttf", - "300": "https://fonts.gstatic.com/s/notosanssinhala/v36/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwlOa5lgLpJwbQRM.ttf", - "regular": "https://fonts.gstatic.com/s/notosanssinhala/v36/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2a5lgLpJwbQRM.ttf", - "500": "https://fonts.gstatic.com/s/notosanssinhala/v36/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwj-a5lgLpJwbQRM.ttf", - "600": "https://fonts.gstatic.com/s/notosanssinhala/v36/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwtOd5lgLpJwbQRM.ttf", - "700": "https://fonts.gstatic.com/s/notosanssinhala/v36/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwuqd5lgLpJwbQRM.ttf", - "800": "https://fonts.gstatic.com/s/notosanssinhala/v36/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwo2d5lgLpJwbQRM.ttf", - "900": "https://fonts.gstatic.com/s/notosanssinhala/v36/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwqSd5lgLpJwbQRM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssinhala/v36/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2a1lkBoA.ttf" - }, - { - "family": "Noto Sans Sogdian", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "sogdian" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssogdian/v17/taiQGn5iC4--qtsfi4Jp6eHPnfxQBo--Pm6KHidM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssogdian/v17/taiQGn5iC4--qtsfi4Jp6eHPnfxQBr-_NGo.ttf" - }, - { - "family": "Noto Sans Sora Sompeng", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "sora-sompeng" - ], - "version": "v26", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssorasompeng/v26/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHR818DpZXJQd4Mu.ttf", - "500": "https://fonts.gstatic.com/s/notosanssorasompeng/v26/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHRO18DpZXJQd4Mu.ttf", - "600": "https://fonts.gstatic.com/s/notosanssorasompeng/v26/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHSi0MDpZXJQd4Mu.ttf", - "700": "https://fonts.gstatic.com/s/notosanssorasompeng/v26/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHSb0MDpZXJQd4Mu.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssorasompeng/v26/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHR81_Dob3Y.ttf" - }, - { - "family": "Noto Sans Soyombo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "soyombo" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssoyombo/v18/RWmSoL-Y6-8q5LTtXs6MF6q7xsxgY0FrIFOcK25W.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssoyombo/v18/RWmSoL-Y6-8q5LTtXs6MF6q7xsxgY3FqKlc.ttf" - }, - { - "family": "Noto Sans Sundanese", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "sundanese" - ], - "version": "v28", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssundanese/v28/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxpNNHCizv7fQES.ttf", - "500": "https://fonts.gstatic.com/s/notosanssundanese/v28/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxbNNHCizv7fQES.ttf", - "600": "https://fonts.gstatic.com/s/notosanssundanese/v28/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6cty3M9HCizv7fQES.ttf", - "700": "https://fonts.gstatic.com/s/notosanssundanese/v28/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctyOM9HCizv7fQES.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssundanese/v28/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxpNOHDgT8.ttf" - }, - { - "family": "Noto Sans Sunuwar", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "sunuwar" - ], - "version": "v1", - "lastModified": "2025-06-26", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssunuwar/v1/FwZB7_04xUkosG2xJo2gm7nF0DTfho_Du2akOrkv.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssunuwar/v1/FwZB7_04xUkosG2xJo2gm7nF0DTfhr_CsWI.ttf" - }, - { - "family": "Noto Sans Syloti Nagri", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "syloti-nagri" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssylotinagri/v25/uU9eCAQZ75uhfF9UoWDRiY3q7Sf_VFV3m4dGFVfxN87gsj0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssylotinagri/v25/uU9eCAQZ75uhfF9UoWDRiY3q7Sf_VFV3m4dGJVb7Mw.ttf" - }, - { - "family": "Noto Sans Symbols", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "symbols" - ], - "version": "v47", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/notosanssymbols/v47/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ4gavVFRkzrbQ.ttf", - "200": "https://fonts.gstatic.com/s/notosanssymbols/v47/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g_Q8gavVFRkzrbQ.ttf", - "300": "https://fonts.gstatic.com/s/notosanssymbols/v47/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gIw8gavVFRkzrbQ.ttf", - "regular": "https://fonts.gstatic.com/s/notosanssymbols/v47/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ8gavVFRkzrbQ.ttf", - "500": "https://fonts.gstatic.com/s/notosanssymbols/v47/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gTw8gavVFRkzrbQ.ttf", - "600": "https://fonts.gstatic.com/s/notosanssymbols/v47/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gowggavVFRkzrbQ.ttf", - "700": "https://fonts.gstatic.com/s/notosanssymbols/v47/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gmgggavVFRkzrbQ.ttf", - "800": "https://fonts.gstatic.com/s/notosanssymbols/v47/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g_QggavVFRkzrbQ.ttf", - "900": "https://fonts.gstatic.com/s/notosanssymbols/v47/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g1AggavVFRkzrbQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssymbols/v47/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ8Qa_9B.ttf" - }, - { - "family": "Noto Sans Symbols 2", - "variants": [ - "regular" - ], - "subsets": [ - "braille", - "latin", - "latin-ext", - "math", - "mayan-numerals", - "symbols" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanssymbols2/v25/I_uyMoGduATTei9eI8daxVHDyfisHr71ypPqfX71-AI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssymbols2/v25/I_uyMoGduATTei9eI8daxVHDyfisHr71-pLgeQ.ttf" - }, - { - "family": "Noto Sans Syriac", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "syriac" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9caJyZfUL_FC.ttf", - "200": "https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-XD9MaJyZfUL_FC.ttf", - "300": "https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Ud9MaJyZfUL_FC.ttf", - "regular": "https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9MaJyZfUL_FC.ttf", - "500": "https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Vx9MaJyZfUL_FC.ttf", - "600": "https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Wd88aJyZfUL_FC.ttf", - "700": "https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Wk88aJyZfUL_FC.ttf", - "800": "https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-XD88aJyZfUL_FC.ttf", - "900": "https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Xq88aJyZfUL_FC.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9PaIw5M.ttf" - }, - { - "family": "Noto Sans Syriac Eastern", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "syriac" - ], - "version": "v3", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPi-eszCL5ep1QPQ.ttf", - "200": "https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPq-fszCL5ep1QPQ.ttf", - "300": "https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPnGfszCL5ep1QPQ.ttf", - "regular": "https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPi-fszCL5ep1QPQ.ttf", - "500": "https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPh2fszCL5ep1QPQ.ttf", - "600": "https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPvGYszCL5ep1QPQ.ttf", - "700": "https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPsiYszCL5ep1QPQ.ttf", - "800": "https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPq-YszCL5ep1QPQ.ttf", - "900": "https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPoaYszCL5ep1QPQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPi-fgzGB4Q.ttf" - }, - { - "family": "Noto Sans TC", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v38", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosanstc/v38/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz76Cz_CpOtma3uNQ.ttf", - "200": "https://fonts.gstatic.com/s/notosanstc/v38/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz7yCy_CpOtma3uNQ.ttf", - "300": "https://fonts.gstatic.com/s/notosanstc/v38/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz7_6y_CpOtma3uNQ.ttf", - "regular": "https://fonts.gstatic.com/s/notosanstc/v38/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz76Cy_CpOtma3uNQ.ttf", - "500": "https://fonts.gstatic.com/s/notosanstc/v38/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz75Ky_CpOtma3uNQ.ttf", - "600": "https://fonts.gstatic.com/s/notosanstc/v38/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz7361_CpOtma3uNQ.ttf", - "700": "https://fonts.gstatic.com/s/notosanstc/v38/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz70e1_CpOtma3uNQ.ttf", - "800": "https://fonts.gstatic.com/s/notosanstc/v38/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz7yC1_CpOtma3uNQ.ttf", - "900": "https://fonts.gstatic.com/s/notosanstc/v38/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz7wm1_CpOtma3uNQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstc/v38/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz76CyzCtEsg.ttf" - }, - { - "family": "Noto Sans Tagalog", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tagalog" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanstagalog/v23/J7aFnoNzCnFcV9ZI-sUYuvote1R0wwEAA8jHexnL.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstagalog/v23/J7aFnoNzCnFcV9ZI-sUYuvote1R0wzEBCcw.ttf" - }, - { - "family": "Noto Sans Tagbanwa", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tagbanwa" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanstagbanwa/v19/Y4GWYbB8VTEp4t3MKJSMmQdIKjRtt_nZRjQEaYpGoQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstagbanwa/v19/Y4GWYbB8VTEp4t3MKJSMmQdIKjRtt_npRz4A.ttf" - }, - { - "family": "Noto Sans Tai Le", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tai-le" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanstaile/v18/vEFK2-VODB8RrNDvZSUmVxEATwR58tK1W77HtMo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstaile/v18/vEFK2-VODB8RrNDvZSUmVxEATwR5wtO_Xw.ttf" - }, - { - "family": "Noto Sans Tai Tham", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "tai-tham" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanstaitham/v25/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBCUbPgquyaRGKMw.ttf", - "500": "https://fonts.gstatic.com/s/notosanstaitham/v25/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBBcbPgquyaRGKMw.ttf", - "600": "https://fonts.gstatic.com/s/notosanstaitham/v25/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBPscPgquyaRGKMw.ttf", - "700": "https://fonts.gstatic.com/s/notosanstaitham/v25/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBMIcPgquyaRGKMw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstaitham/v25/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBCUbDgukzQ.ttf" - }, - { - "family": "Noto Sans Tai Viet", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tai-viet" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanstaiviet/v20/8QIUdj3HhN_lv4jf9vsE-9GMOLsaSPZr644fWsRO9w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstaiviet/v20/8QIUdj3HhN_lv4jf9vsE-9GMOLsaSPZb6oQb.ttf" - }, - { - "family": "Noto Sans Takri", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "takri" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanstakri/v25/TuGJUVpzXI5FBtUq5a8bnKIOdTwQNO_W3khJXg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstakri/v25/TuGJUVpzXI5FBtUq5a8bnKIOdTwgNeXS.ttf" - }, - { - "family": "Noto Sans Tamil", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil" - ], - "version": "v31", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/notosanstamil/v31/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGor0RqKDt_EvT.ttf", - "200": "https://fonts.gstatic.com/s/notosanstamil/v31/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tGo70RqKDt_EvT.ttf", - "300": "https://fonts.gstatic.com/s/notosanstamil/v31/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7uYo70RqKDt_EvT.ttf", - "regular": "https://fonts.gstatic.com/s/notosanstamil/v31/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGo70RqKDt_EvT.ttf", - "500": "https://fonts.gstatic.com/s/notosanstamil/v31/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7v0o70RqKDt_EvT.ttf", - "600": "https://fonts.gstatic.com/s/notosanstamil/v31/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7sYpL0RqKDt_EvT.ttf", - "700": "https://fonts.gstatic.com/s/notosanstamil/v31/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7shpL0RqKDt_EvT.ttf", - "800": "https://fonts.gstatic.com/s/notosanstamil/v31/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tGpL0RqKDt_EvT.ttf", - "900": "https://fonts.gstatic.com/s/notosanstamil/v31/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tvpL0RqKDt_EvT.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstamil/v31/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGo40QoqQ.ttf" - }, - { - "family": "Noto Sans Tamil Supplement", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil-supplement" - ], - "version": "v23", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanstamilsupplement/v23/DdTz78kEtnooLS5rXF1DaruiCd_bFp_Ph4sGcn7ax_vsAeMkeq1x.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstamilsupplement/v23/DdTz78kEtnooLS5rXF1DaruiCd_bFp_Ph4sGcn7ax8vtC-c.ttf" - }, - { - "family": "Noto Sans Tangsa", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "tangsa" - ], - "version": "v9", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanstangsa/v9/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp1YkyoRYdplyJDA.ttf", - "500": "https://fonts.gstatic.com/s/notosanstangsa/v9/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp1qkyoRYdplyJDA.ttf", - "600": "https://fonts.gstatic.com/s/notosanstangsa/v9/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp2GlCoRYdplyJDA.ttf", - "700": "https://fonts.gstatic.com/s/notosanstangsa/v9/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp2_lCoRYdplyJDA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstangsa/v9/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp1YkxoQa94.ttf" - }, - { - "family": "Noto Sans Telugu", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "telugu" - ], - "version": "v30", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/notosanstelugu/v30/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezfqQUbf-3v37w.ttf", - "200": "https://fonts.gstatic.com/s/notosanstelugu/v30/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt-zbqQUbf-3v37w.ttf", - "300": "https://fonts.gstatic.com/s/notosanstelugu/v30/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntJTbqQUbf-3v37w.ttf", - "regular": "https://fonts.gstatic.com/s/notosanstelugu/v30/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezbqQUbf-3v37w.ttf", - "500": "https://fonts.gstatic.com/s/notosanstelugu/v30/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntSTbqQUbf-3v37w.ttf", - "600": "https://fonts.gstatic.com/s/notosanstelugu/v30/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntpTHqQUbf-3v37w.ttf", - "700": "https://fonts.gstatic.com/s/notosanstelugu/v30/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntnDHqQUbf-3v37w.ttf", - "800": "https://fonts.gstatic.com/s/notosanstelugu/v30/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt-zHqQUbf-3v37w.ttf", - "900": "https://fonts.gstatic.com/s/notosanstelugu/v30/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt0jHqQUbf-3v37w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstelugu/v30/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezbaQEzb.ttf" - }, - { - "family": "Noto Sans Thaana", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "thaana" - ], - "version": "v26", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosansthaana/v26/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbxLhnu4-tbNu.ttf", - "200": "https://fonts.gstatic.com/s/notosansthaana/v26/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VrbhLhnu4-tbNu.ttf", - "300": "https://fonts.gstatic.com/s/notosansthaana/v26/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4W1bhLhnu4-tbNu.ttf", - "regular": "https://fonts.gstatic.com/s/notosansthaana/v26/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbhLhnu4-tbNu.ttf", - "500": "https://fonts.gstatic.com/s/notosansthaana/v26/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XZbhLhnu4-tbNu.ttf", - "600": "https://fonts.gstatic.com/s/notosansthaana/v26/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4U1aRLhnu4-tbNu.ttf", - "700": "https://fonts.gstatic.com/s/notosansthaana/v26/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4UMaRLhnu4-tbNu.ttf", - "800": "https://fonts.gstatic.com/s/notosansthaana/v26/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VraRLhnu4-tbNu.ttf", - "900": "https://fonts.gstatic.com/s/notosansthaana/v26/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VCaRLhnu4-tbNu.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansthaana/v26/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbiLglOo.ttf" - }, - { - "family": "Noto Sans Thai", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "thai" - ], - "version": "v29", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosansthai/v29/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RspzF-QRvzzXg.ttf", - "200": "https://fonts.gstatic.com/s/notosansthai/v29/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUxRtpzF-QRvzzXg.ttf", - "300": "https://fonts.gstatic.com/s/notosansthai/v29/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU8ptpzF-QRvzzXg.ttf", - "regular": "https://fonts.gstatic.com/s/notosansthai/v29/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RtpzF-QRvzzXg.ttf", - "500": "https://fonts.gstatic.com/s/notosansthai/v29/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU6ZtpzF-QRvzzXg.ttf", - "600": "https://fonts.gstatic.com/s/notosansthai/v29/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU0pqpzF-QRvzzXg.ttf", - "700": "https://fonts.gstatic.com/s/notosansthai/v29/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU3NqpzF-QRvzzXg.ttf", - "800": "https://fonts.gstatic.com/s/notosansthai/v29/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUxRqpzF-QRvzzXg.ttf", - "900": "https://fonts.gstatic.com/s/notosansthai/v29/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUz1qpzF-QRvzzXg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansthai/v29/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RtlzB0RQ.ttf" - }, - { - "family": "Noto Sans Thai Looped", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "thai" - ], - "version": "v16", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notosansthailooped/v16/B503F6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R36MIjwurFMX_p0KVmQL3HnxYJ8hCVQ-_gtHxJiQo49kz2h.ttf", - "200": "https://fonts.gstatic.com/s/notosansthailooped/v16/B503F6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R36MIjwurFMX_p0KVmQL3HnxYJ8hCVQ-_itHhJiQo49kz2h.ttf", - "300": "https://fonts.gstatic.com/s/notosansthailooped/v16/B503F6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R36MIjwurFMX_p0KVmQL3HnxYJ8hCVQ-_hzHhJiQo49kz2h.ttf", - "regular": "https://fonts.gstatic.com/s/notosansthailooped/v16/B503F6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R36MIjwurFMX_p0KVmQL3HnxYJ8hCVQ-_gtHhJiQo49kz2h.ttf", - "500": "https://fonts.gstatic.com/s/notosansthailooped/v16/B503F6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R36MIjwurFMX_p0KVmQL3HnxYJ8hCVQ-_gfHhJiQo49kz2h.ttf", - "600": "https://fonts.gstatic.com/s/notosansthailooped/v16/B503F6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R36MIjwurFMX_p0KVmQL3HnxYJ8hCVQ-_jzGRJiQo49kz2h.ttf", - "700": "https://fonts.gstatic.com/s/notosansthailooped/v16/B503F6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R36MIjwurFMX_p0KVmQL3HnxYJ8hCVQ-_jKGRJiQo49kz2h.ttf", - "800": "https://fonts.gstatic.com/s/notosansthailooped/v16/B503F6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R36MIjwurFMX_p0KVmQL3HnxYJ8hCVQ-_itGRJiQo49kz2h.ttf", - "900": "https://fonts.gstatic.com/s/notosansthailooped/v16/B503F6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R36MIjwurFMX_p0KVmQL3HnxYJ8hCVQ-_iEGRJiQo49kz2h.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansthailooped/v16/B503F6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R36MIjwurFMX_p0KVmQL3HnxYJ8hCVQ-_gtHiJjSIo.ttf" - }, - { - "family": "Noto Sans Tifinagh", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tifinagh" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanstifinagh/v21/I_uzMoCduATTei9eI8dawkHIwvmhCvbn6rnEcXfs4Q.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstifinagh/v21/I_uzMoCduATTei9eI8dawkHIwvmhCvbX67PA.ttf" - }, - { - "family": "Noto Sans Tirhuta", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tirhuta" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanstirhuta/v17/t5t6IQYRNJ6TWjahPR6X-M-apUyby7uGUBsTrn5P.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanstirhuta/v17/t5t6IQYRNJ6TWjahPR6X-M-apUyby4uHWh8.ttf" - }, - { - "family": "Noto Sans Ugaritic", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "ugaritic" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansugaritic/v17/3qTwoiqhnSyU8TNFIdhZVCwbjCpkAXXkMhoIkiazfg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansugaritic/v17/3qTwoiqhnSyU8TNFIdhZVCwbjCpkAXXUMxAM.ttf" - }, - { - "family": "Noto Sans Vai", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vai" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansvai/v18/NaPecZTSBuhTirw6IaFn_UrURMTsDIRSfr0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansvai/v18/NaPecZTSBuhTirw6IaFn_UrUdMXmCA.ttf" - }, - { - "family": "Noto Sans Vithkuqi", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vithkuqi" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansvithkuqi/v3/jVyi7m77CXvQswd6WjYu9E1wN6cih2TSchUEkQgw3KTnva5SgKM7vmn0BLE.ttf", - "500": "https://fonts.gstatic.com/s/notosansvithkuqi/v3/jVyi7m77CXvQswd6WjYu9E1wN6cih2TSchUEkQgw3KTnvZxSgKM7vmn0BLE.ttf", - "600": "https://fonts.gstatic.com/s/notosansvithkuqi/v3/jVyi7m77CXvQswd6WjYu9E1wN6cih2TSchUEkQgw3KTnvXBVgKM7vmn0BLE.ttf", - "700": "https://fonts.gstatic.com/s/notosansvithkuqi/v3/jVyi7m77CXvQswd6WjYu9E1wN6cih2TSchUEkQgw3KTnvUlVgKM7vmn0BLE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansvithkuqi/v3/jVyi7m77CXvQswd6WjYu9E1wN6cih2TSchUEkQgw3KTnva5SsKIxug.ttf" - }, - { - "family": "Noto Sans Wancho", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "wancho" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanswancho/v18/zrf-0GXXyfn6Fs0lH9P4cUubP0GBqAPopiRfKp8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanswancho/v18/zrf-0GXXyfn6Fs0lH9P4cUubP0GBmALiog.ttf" - }, - { - "family": "Noto Sans Warang Citi", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "warang-citi" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanswarangciti/v18/EYqtmb9SzL1YtsZSScyKDXIeOv3w-zgsNvKRpeVCCXzdgA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanswarangciti/v18/EYqtmb9SzL1YtsZSScyKDXIeOv3w-zgsNvKhpO9G.ttf" - }, - { - "family": "Noto Sans Yi", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "yi" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notosansyi/v20/sJoD3LFXjsSdcnzn071rO3apxVDJNVgSNg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosansyi/v20/sJoD3LFXjsSdcnzn071rO3aZxFrN.ttf" - }, - { - "family": "Noto Sans Zanabazar Square", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "zanabazar-square" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notosanszanabazarsquare/v20/Cn-jJsuGWQxOjaGwMQ6fOicyxLBEMRfDtkzl4uagQtJxOCEgN0Gc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notosanszanabazarsquare/v20/Cn-jJsuGWQxOjaGwMQ6fOicyxLBEMRfDtkzl4uagQuJwMiU.ttf" - }, - { - "family": "Noto Serif", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "math", - "vietnamese" - ], - "version": "v33", - "lastModified": "2025-09-06", - "files": { - "100": "https://fonts.gstatic.com/s/notoserif/v33/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZqFGjwM0Lhq_Szw.ttf", - "200": "https://fonts.gstatic.com/s/notoserif/v33/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZKFCjwM0Lhq_Szw.ttf", - "300": "https://fonts.gstatic.com/s/notoserif/v33/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZ9lCjwM0Lhq_Szw.ttf", - "regular": "https://fonts.gstatic.com/s/notoserif/v33/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZqFCjwM0Lhq_Szw.ttf", - "500": "https://fonts.gstatic.com/s/notoserif/v33/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZmlCjwM0Lhq_Szw.ttf", - "600": "https://fonts.gstatic.com/s/notoserif/v33/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZdlejwM0Lhq_Szw.ttf", - "700": "https://fonts.gstatic.com/s/notoserif/v33/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZT1ejwM0Lhq_Szw.ttf", - "800": "https://fonts.gstatic.com/s/notoserif/v33/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZKFejwM0Lhq_Szw.ttf", - "900": "https://fonts.gstatic.com/s/notoserif/v33/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZAVejwM0Lhq_Szw.ttf", - "100italic": "https://fonts.gstatic.com/s/notoserif/v33/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBNLgscPpKrCzyUi.ttf", - "200italic": "https://fonts.gstatic.com/s/notoserif/v33/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPLg8cPpKrCzyUi.ttf", - "300italic": "https://fonts.gstatic.com/s/notoserif/v33/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBMVg8cPpKrCzyUi.ttf", - "italic": "https://fonts.gstatic.com/s/notoserif/v33/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBNLg8cPpKrCzyUi.ttf", - "500italic": "https://fonts.gstatic.com/s/notoserif/v33/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBN5g8cPpKrCzyUi.ttf", - "600italic": "https://fonts.gstatic.com/s/notoserif/v33/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBOVhMcPpKrCzyUi.ttf", - "700italic": "https://fonts.gstatic.com/s/notoserif/v33/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBOshMcPpKrCzyUi.ttf", - "800italic": "https://fonts.gstatic.com/s/notoserif/v33/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPLhMcPpKrCzyUi.ttf", - "900italic": "https://fonts.gstatic.com/s/notoserif/v33/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPihMcPpKrCzyUi.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserif/v33/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZqFCTwccP.ttf" - }, - { - "family": "Noto Serif Ahom", - "variants": [ - "regular" - ], - "subsets": [ - "ahom", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifahom/v21/FeVIS0hfp6cprmEUffAW_fUL_AN-wuYrPFiwaw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifahom/v21/FeVIS0hfp6cprmEUffAW_fUL_ANOw-wv.ttf" - }, - { - "family": "Noto Serif Armenian", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "armenian", - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZi8ObxvXagGdkbg.ttf", - "200": "https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZC8KbxvXagGdkbg.ttf", - "300": "https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZ1cKbxvXagGdkbg.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZi8KbxvXagGdkbg.ttf", - "500": "https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZucKbxvXagGdkbg.ttf", - "600": "https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZVcWbxvXagGdkbg.ttf", - "700": "https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZbMWbxvXagGdkbg.ttf", - "800": "https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZC8WbxvXagGdkbg.ttf", - "900": "https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZIsWbxvXagGdkbg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZi8Krx__e.ttf" - }, - { - "family": "Noto Serif Balinese", - "variants": [ - "regular" - ], - "subsets": [ - "balinese", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifbalinese/v21/QdVKSS0-JginysQSRvuCmUMB_wVeQAxXRbgJdhapcUU.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifbalinese/v21/QdVKSS0-JginysQSRvuCmUMB_wVeQAxXdbkDcg.ttf" - }, - { - "family": "Noto Serif Bengali", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "bengali", - "latin", - "latin-ext" - ], - "version": "v31", - "lastModified": "2025-09-17", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAH3qn4LjQH8yD.ttf", - "200": "https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfeAHnqn4LjQH8yD.ttf", - "300": "https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfdeHnqn4LjQH8yD.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAHnqn4LjQH8yD.ttf", - "500": "https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcyHnqn4LjQH8yD.ttf", - "600": "https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JffeGXqn4LjQH8yD.ttf", - "700": "https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JffnGXqn4LjQH8yD.ttf", - "800": "https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfeAGXqn4LjQH8yD.ttf", - "900": "https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfepGXqn4LjQH8yD.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAHkqm6rw.ttf" - }, - { - "family": "Noto Serif Devanagari", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v34", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTA-og-HMUe1u_dv.ttf", - "200": "https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTC-ow-HMUe1u_dv.ttf", - "300": "https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTBgow-HMUe1u_dv.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTA-ow-HMUe1u_dv.ttf", - "500": "https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTAMow-HMUe1u_dv.ttf", - "600": "https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTDgpA-HMUe1u_dv.ttf", - "700": "https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTDZpA-HMUe1u_dv.ttf", - "800": "https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTC-pA-HMUe1u_dv.ttf", - "900": "https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTCXpA-HMUe1u_dv.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTA-oz-GO0M.ttf" - }, - { - "family": "Noto Serif Display", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v29", - "lastModified": "2025-09-06", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpd49gKaDU9hvzC.ttf", - "200": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVrd4tgKaDU9hvzC.ttf", - "300": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVoD4tgKaDU9hvzC.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpd4tgKaDU9hvzC.ttf", - "500": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpv4tgKaDU9hvzC.ttf", - "600": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVqD5dgKaDU9hvzC.ttf", - "700": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVq65dgKaDU9hvzC.ttf", - "800": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVrd5dgKaDU9hvzC.ttf", - "900": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVr05dgKaDU9hvzC.ttf", - "100italic": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoTBIYjEfg-zCmf4.ttf", - "200italic": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VobBJYjEfg-zCmf4.ttf", - "300italic": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoW5JYjEfg-zCmf4.ttf", - "italic": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoTBJYjEfg-zCmf4.ttf", - "500italic": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoQJJYjEfg-zCmf4.ttf", - "600italic": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-Voe5OYjEfg-zCmf4.ttf", - "700italic": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoddOYjEfg-zCmf4.ttf", - "800italic": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VobBOYjEfg-zCmf4.ttf", - "900italic": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoZlOYjEfg-zCmf4.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifdisplay/v29/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpd4ugLYjE.ttf" - }, - { - "family": "Noto Serif Dives Akuru", - "variants": [ - "regular" - ], - "subsets": [ - "dives-akuru", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifdivesakuru/v8/QldfNSVMqAsHtsJ_TnD3aT03sMgd57ibeeZT60DIyoV9Ejs.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifdivesakuru/v8/QldfNSVMqAsHtsJ_TnD3aT03sMgd57ibeeZT20HCzg.ttf" - }, - { - "family": "Noto Serif Dogra", - "variants": [ - "regular" - ], - "subsets": [ - "dogra", - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifdogra/v24/MQpP-XquKMC7ROPP3QOOlm7xPu3fGy63IbPzkns.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifdogra/v24/MQpP-XquKMC7ROPP3QOOlm7xPu3fKy-9JQ.ttf" - }, - { - "family": "Noto Serif Ethiopic", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "ethiopic", - "latin", - "latin-ext" - ], - "version": "v32", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCzSQjkaO9UVLyiw.ttf", - "200": "https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCTSUjkaO9UVLyiw.ttf", - "300": "https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCkyUjkaO9UVLyiw.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCzSUjkaO9UVLyiw.ttf", - "500": "https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxC_yUjkaO9UVLyiw.ttf", - "600": "https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCEyIjkaO9UVLyiw.ttf", - "700": "https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCKiIjkaO9UVLyiw.ttf", - "800": "https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCTSIjkaO9UVLyiw.ttf", - "900": "https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCZCIjkaO9UVLyiw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCzSUTkKm5.ttf" - }, - { - "family": "Noto Serif Georgian", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "georgian", - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSTvsfdzTw-FgZxQ.ttf", - "200": "https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSzvofdzTw-FgZxQ.ttf", - "300": "https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSEPofdzTw-FgZxQ.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSTvofdzTw-FgZxQ.ttf", - "500": "https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSfPofdzTw-FgZxQ.ttf", - "600": "https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSkP0fdzTw-FgZxQ.ttf", - "700": "https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSqf0fdzTw-FgZxQ.ttf", - "800": "https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSzv0fdzTw-FgZxQ.ttf", - "900": "https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aS5_0fdzTw-FgZxQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSTvovdj70.ttf" - }, - { - "family": "Noto Serif Grantha", - "variants": [ - "regular" - ], - "subsets": [ - "grantha", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifgrantha/v22/qkBIXuEH5NzDDvc3fLDYxPk9-Wq3WLiqFENLR7fHGw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifgrantha/v22/qkBIXuEH5NzDDvc3fLDYxPk9-Wq3WLiaFUlP.ttf" - }, - { - "family": "Noto Serif Gujarati", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v29", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifgujarati/v29/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYycYzuM1Kf-OJu.ttf", - "200": "https://fonts.gstatic.com/s/notoserifgujarati/v29/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuaycIzuM1Kf-OJu.ttf", - "300": "https://fonts.gstatic.com/s/notoserifgujarati/v29/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuZscIzuM1Kf-OJu.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifgujarati/v29/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYycIzuM1Kf-OJu.ttf", - "500": "https://fonts.gstatic.com/s/notoserifgujarati/v29/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYAcIzuM1Kf-OJu.ttf", - "600": "https://fonts.gstatic.com/s/notoserifgujarati/v29/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Hubsd4zuM1Kf-OJu.ttf", - "700": "https://fonts.gstatic.com/s/notoserifgujarati/v29/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HubVd4zuM1Kf-OJu.ttf", - "800": "https://fonts.gstatic.com/s/notoserifgujarati/v29/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Huayd4zuM1Kf-OJu.ttf", - "900": "https://fonts.gstatic.com/s/notoserifgujarati/v29/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Huabd4zuM1Kf-OJu.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifgujarati/v29/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYycLzvOVY.ttf" - }, - { - "family": "Noto Serif Gurmukhi", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "gurmukhi", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6-eBTNmqVU7y6l.ttf", - "200": "https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4-eRTNmqVU7y6l.ttf", - "300": "https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr7geRTNmqVU7y6l.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6-eRTNmqVU7y6l.ttf", - "500": "https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6MeRTNmqVU7y6l.ttf", - "600": "https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr5gfhTNmqVU7y6l.ttf", - "700": "https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr5ZfhTNmqVU7y6l.ttf", - "800": "https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4-fhTNmqVU7y6l.ttf", - "900": "https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4XfhTNmqVU7y6l.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6-eSTMkKE.ttf" - }, - { - "family": "Noto Serif HK", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "chinese-hongkong", - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/notoserifhk/v11/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMf-K2RmV9Su1M6i.ttf", - "300": "https://fonts.gstatic.com/s/notoserifhk/v11/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMcgK2RmV9Su1M6i.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifhk/v11/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMd-K2RmV9Su1M6i.ttf", - "500": "https://fonts.gstatic.com/s/notoserifhk/v11/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMdMK2RmV9Su1M6i.ttf", - "600": "https://fonts.gstatic.com/s/notoserifhk/v11/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMegLGRmV9Su1M6i.ttf", - "700": "https://fonts.gstatic.com/s/notoserifhk/v11/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMeZLGRmV9Su1M6i.ttf", - "800": "https://fonts.gstatic.com/s/notoserifhk/v11/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMf-LGRmV9Su1M6i.ttf", - "900": "https://fonts.gstatic.com/s/notoserifhk/v11/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMfXLGRmV9Su1M6i.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifhk/v11/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMd-K1RnXdA.ttf" - }, - { - "family": "Noto Serif Hebrew", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifhebrew/v30/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVAwTAG8_vlQxz24.ttf", - "200": "https://fonts.gstatic.com/s/notoserifhebrew/v30/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVIwSAG8_vlQxz24.ttf", - "300": "https://fonts.gstatic.com/s/notoserifhebrew/v30/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVFISAG8_vlQxz24.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifhebrew/v30/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVAwSAG8_vlQxz24.ttf", - "500": "https://fonts.gstatic.com/s/notoserifhebrew/v30/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVD4SAG8_vlQxz24.ttf", - "600": "https://fonts.gstatic.com/s/notoserifhebrew/v30/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVNIVAG8_vlQxz24.ttf", - "700": "https://fonts.gstatic.com/s/notoserifhebrew/v30/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVOsVAG8_vlQxz24.ttf", - "800": "https://fonts.gstatic.com/s/notoserifhebrew/v30/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVIwVAG8_vlQxz24.ttf", - "900": "https://fonts.gstatic.com/s/notoserifhebrew/v30/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVKUVAG8_vlQxz24.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifhebrew/v30/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVAwSMG41ug.ttf" - }, - { - "family": "Noto Serif Hentaigana", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "kana-extended", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/notoserifhentaigana/v17/uk-OEHi3o6EruUbj3pGaDj3siVARn-kqgu1eOHk7wYK23O0hzgwGqxEZWEARdDE.ttf", - "300": "https://fonts.gstatic.com/s/notoserifhentaigana/v17/uk-OEHi3o6EruUbj3pGaDj3siVARn-kqgu1eOHk7wYK23O0hztIGqxEZWEARdDE.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifhentaigana/v17/uk-OEHi3o6EruUbj3pGaDj3siVARn-kqgu1eOHk7wYK23O0hzowGqxEZWEARdDE.ttf", - "500": "https://fonts.gstatic.com/s/notoserifhentaigana/v17/uk-OEHi3o6EruUbj3pGaDj3siVARn-kqgu1eOHk7wYK23O0hzr4GqxEZWEARdDE.ttf", - "600": "https://fonts.gstatic.com/s/notoserifhentaigana/v17/uk-OEHi3o6EruUbj3pGaDj3siVARn-kqgu1eOHk7wYK23O0hzlIBqxEZWEARdDE.ttf", - "700": "https://fonts.gstatic.com/s/notoserifhentaigana/v17/uk-OEHi3o6EruUbj3pGaDj3siVARn-kqgu1eOHk7wYK23O0hzmsBqxEZWEARdDE.ttf", - "800": "https://fonts.gstatic.com/s/notoserifhentaigana/v17/uk-OEHi3o6EruUbj3pGaDj3siVARn-kqgu1eOHk7wYK23O0hzgwBqxEZWEARdDE.ttf", - "900": "https://fonts.gstatic.com/s/notoserifhentaigana/v17/uk-OEHi3o6EruUbj3pGaDj3siVARn-kqgu1eOHk7wYK23O0hziUBqxEZWEARdDE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifhentaigana/v17/uk-OEHi3o6EruUbj3pGaDj3siVARn-kqgu1eOHk7wYK23O0hzowGmxATXA.ttf" - }, - { - "family": "Noto Serif JP", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v32", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/notoserifjp/v32/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2byxOubAILO5wBCU.ttf", - "300": "https://fonts.gstatic.com/s/notoserifjp/v32/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bxvOubAILO5wBCU.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifjp/v32/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bwxOubAILO5wBCU.ttf", - "500": "https://fonts.gstatic.com/s/notoserifjp/v32/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bwDOubAILO5wBCU.ttf", - "600": "https://fonts.gstatic.com/s/notoserifjp/v32/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bzvPebAILO5wBCU.ttf", - "700": "https://fonts.gstatic.com/s/notoserifjp/v32/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bzWPebAILO5wBCU.ttf", - "800": "https://fonts.gstatic.com/s/notoserifjp/v32/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2byxPebAILO5wBCU.ttf", - "900": "https://fonts.gstatic.com/s/notoserifjp/v32/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2byYPebAILO5wBCU.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifjp/v32/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bwxOtbBKrc.ttf" - }, - { - "family": "Noto Serif KR", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "korean", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v30", - "lastModified": "2025-09-02", - "files": { - "200": "https://fonts.gstatic.com/s/notoserifkr/v30/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOnchmeM524ZvTePRu.ttf", - "300": "https://fonts.gstatic.com/s/notoserifkr/v30/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOnci4eM524ZvTePRu.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifkr/v30/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOncjmeM524ZvTePRu.ttf", - "500": "https://fonts.gstatic.com/s/notoserifkr/v30/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOncjUeM524ZvTePRu.ttf", - "600": "https://fonts.gstatic.com/s/notoserifkr/v30/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOncg4f8524ZvTePRu.ttf", - "700": "https://fonts.gstatic.com/s/notoserifkr/v30/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOncgBf8524ZvTePRu.ttf", - "800": "https://fonts.gstatic.com/s/notoserifkr/v30/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOnchmf8524ZvTePRu.ttf", - "900": "https://fonts.gstatic.com/s/notoserifkr/v30/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOnchPf8524ZvTePRu.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifkr/v30/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOncjmeP53658.ttf" - }, - { - "family": "Noto Serif Kannada", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "kannada", - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifkannada/v30/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgcYCceRJ71svgcI.ttf", - "200": "https://fonts.gstatic.com/s/notoserifkannada/v30/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgUYDceRJ71svgcI.ttf", - "300": "https://fonts.gstatic.com/s/notoserifkannada/v30/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgZgDceRJ71svgcI.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifkannada/v30/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgcYDceRJ71svgcI.ttf", - "500": "https://fonts.gstatic.com/s/notoserifkannada/v30/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgfQDceRJ71svgcI.ttf", - "600": "https://fonts.gstatic.com/s/notoserifkannada/v30/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgRgEceRJ71svgcI.ttf", - "700": "https://fonts.gstatic.com/s/notoserifkannada/v30/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgSEEceRJ71svgcI.ttf", - "800": "https://fonts.gstatic.com/s/notoserifkannada/v30/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgUYEceRJ71svgcI.ttf", - "900": "https://fonts.gstatic.com/s/notoserifkannada/v30/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgW8EceRJ71svgcI.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifkannada/v30/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgcYDQeVD6w.ttf" - }, - { - "family": "Noto Serif Khitan Small Script", - "variants": [ - "regular" - ], - "subsets": [ - "khitan-small-script", - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifkhitansmallscript/v4/jizzRFVKsm4Bt9PrbSzC4KLlQUF5lRJg5j-l5PvyhfTdd4TsZ8lb39iddA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifkhitansmallscript/v4/jizzRFVKsm4Bt9PrbSzC4KLlQUF5lRJg5j-l5PvyhfTdd4TcZsNf.ttf" - }, - { - "family": "Noto Serif Khmer", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "khmer", - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN6B4wXEZK9Xo4xg.ttf", - "200": "https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNaB8wXEZK9Xo4xg.ttf", - "300": "https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNth8wXEZK9Xo4xg.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN6B8wXEZK9Xo4xg.ttf", - "500": "https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN2h8wXEZK9Xo4xg.ttf", - "600": "https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNNhgwXEZK9Xo4xg.ttf", - "700": "https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNDxgwXEZK9Xo4xg.ttf", - "800": "https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNaBgwXEZK9Xo4xg.ttf", - "900": "https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNQRgwXEZK9Xo4xg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN6B8AXUxO.ttf" - }, - { - "family": "Noto Serif Khojki", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "khojki", - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifkhojki/v13/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMY0ghvyZ0Qtc5HAQ.ttf", - "500": "https://fonts.gstatic.com/s/notoserifkhojki/v13/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMY4AhvyZ0Qtc5HAQ.ttf", - "600": "https://fonts.gstatic.com/s/notoserifkhojki/v13/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMYDA9vyZ0Qtc5HAQ.ttf", - "700": "https://fonts.gstatic.com/s/notoserifkhojki/v13/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMYNQ9vyZ0Qtc5HAQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifkhojki/v13/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMY0ghfyJcU.ttf" - }, - { - "family": "Noto Serif Lao", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "lao", - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/notoseriflao/v29/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VeMLrvOjlmyhHHQ.ttf", - "200": "https://fonts.gstatic.com/s/notoseriflao/v29/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VWMKrvOjlmyhHHQ.ttf", - "300": "https://fonts.gstatic.com/s/notoseriflao/v29/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8Vb0KrvOjlmyhHHQ.ttf", - "regular": "https://fonts.gstatic.com/s/notoseriflao/v29/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VeMKrvOjlmyhHHQ.ttf", - "500": "https://fonts.gstatic.com/s/notoseriflao/v29/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VdEKrvOjlmyhHHQ.ttf", - "600": "https://fonts.gstatic.com/s/notoseriflao/v29/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VT0NrvOjlmyhHHQ.ttf", - "700": "https://fonts.gstatic.com/s/notoseriflao/v29/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VQQNrvOjlmyhHHQ.ttf", - "800": "https://fonts.gstatic.com/s/notoseriflao/v29/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VWMNrvOjlmyhHHQ.ttf", - "900": "https://fonts.gstatic.com/s/notoseriflao/v29/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VUoNrvOjlmyhHHQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoseriflao/v29/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VeMKnvKpkg.ttf" - }, - { - "family": "Noto Serif Makasar", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "makasar" - ], - "version": "v1", - "lastModified": "2023-06-30", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifmakasar/v1/memjYbqtyH-NiZpFH_9zcvB_PqkfY9S7j4HTVSmevw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifmakasar/v1/memjYbqtyH-NiZpFH_9zcvB_PqkfY9SLjovX.ttf" - }, - { - "family": "Noto Serif Malayalam", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "malayalam" - ], - "version": "v32", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1t-1fnVwHpQVySg.ttf", - "200": "https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1N-xfnVwHpQVySg.ttf", - "300": "https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL16exfnVwHpQVySg.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1t-xfnVwHpQVySg.ttf", - "500": "https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1hexfnVwHpQVySg.ttf", - "600": "https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1aetfnVwHpQVySg.ttf", - "700": "https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1UOtfnVwHpQVySg.ttf", - "800": "https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1N-tfnVwHpQVySg.ttf", - "900": "https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1HutfnVwHpQVySg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1t-xvnFYD.ttf" - }, - { - "family": "Noto Serif Myanmar", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "myanmar" - ], - "version": "v14", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJudM7F2Yv76aBKKs-bHMQfAHUw3jnNwBDsU9X6RPzQ.ttf", - "200": "https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNbDHMefv2TeXJng.ttf", - "300": "https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNCDLMefv2TeXJng.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJsdM7F2Yv76aBKKs-bHMQfAHUw3jn1pBrocdDqRA.ttf", - "500": "https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNUDPMefv2TeXJng.ttf", - "600": "https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNfDTMefv2TeXJng.ttf", - "700": "https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNGDXMefv2TeXJng.ttf", - "800": "https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNBDbMefv2TeXJng.ttf", - "900": "https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNIDfMefv2TeXJng.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJsdM7F2Yv76aBKKs-bHMQfAHUw3jnFpRDs.ttf" - }, - { - "family": "Noto Serif NP Hmong", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "nyiakeng-puachue-hmong" - ], - "version": "v5", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifnphmong/v5/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbjPhFLp3u0rVO-d.ttf", - "500": "https://fonts.gstatic.com/s/notoserifnphmong/v5/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbj9hFLp3u0rVO-d.ttf", - "600": "https://fonts.gstatic.com/s/notoserifnphmong/v5/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbgRg1Lp3u0rVO-d.ttf", - "700": "https://fonts.gstatic.com/s/notoserifnphmong/v5/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbgog1Lp3u0rVO-d.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifnphmong/v5/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbjPhGLo1Ok.ttf" - }, - { - "family": "Noto Serif Old Uyghur", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "old-uyghur" - ], - "version": "v4", - "lastModified": "2024-09-23", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifolduyghur/v4/v6-KGZbLJFKIhClqUYqXDiGnrVoFRCW6JdwnKumeF2yVgA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifolduyghur/v4/v6-KGZbLJFKIhClqUYqXDiGnrVoFRCW6JdwXK-Oa.ttf" - }, - { - "family": "Noto Serif Oriya", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "oriya" - ], - "version": "v6", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/notoseriforiya/v6/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxrc_Hy-v039MF1j.ttf", - "500": "https://fonts.gstatic.com/s/notoseriforiya/v6/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxru_Hy-v039MF1j.ttf", - "600": "https://fonts.gstatic.com/s/notoseriforiya/v6/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxoC-3y-v039MF1j.ttf", - "700": "https://fonts.gstatic.com/s/notoseriforiya/v6/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxo7-3y-v039MF1j.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoseriforiya/v6/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxrc_Ey_tUk.ttf" - }, - { - "family": "Noto Serif Ottoman Siyaq", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "ottoman-siyaq-numbers" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifottomansiyaq/v2/fC1yPZ9IYnzRhTrrc4s8cSvYI0eozzaFOQ01qoHLJrgA00kAdA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifottomansiyaq/v2/fC1yPZ9IYnzRhTrrc4s8cSvYI0eozzaFOQ01qoH7J7IE.ttf" - }, - { - "family": "Noto Serif SC", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "chinese-simplified", - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v34", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/notoserifsc/v34/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7QCqyWv847hdDWC.ttf", - "300": "https://fonts.gstatic.com/s/notoserifsc/v34/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7TcqyWv847hdDWC.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifsc/v34/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7SCqyWv847hdDWC.ttf", - "500": "https://fonts.gstatic.com/s/notoserifsc/v34/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7SwqyWv847hdDWC.ttf", - "600": "https://fonts.gstatic.com/s/notoserifsc/v34/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7RcrCWv847hdDWC.ttf", - "700": "https://fonts.gstatic.com/s/notoserifsc/v34/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7RlrCWv847hdDWC.ttf", - "800": "https://fonts.gstatic.com/s/notoserifsc/v34/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7QCrCWv847hdDWC.ttf", - "900": "https://fonts.gstatic.com/s/notoserifsc/v34/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7QrrCWv847hdDWC.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifsc/v34/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7SCqxWu-Yo.ttf" - }, - { - "family": "Noto Serif Sinhala", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "sinhala" - ], - "version": "v30", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifsinhala/v30/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGxRlMsxaLRn3W-.ttf", - "200": "https://fonts.gstatic.com/s/notoserifsinhala/v30/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pExR1MsxaLRn3W-.ttf", - "300": "https://fonts.gstatic.com/s/notoserifsinhala/v30/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pHvR1MsxaLRn3W-.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifsinhala/v30/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGxR1MsxaLRn3W-.ttf", - "500": "https://fonts.gstatic.com/s/notoserifsinhala/v30/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGDR1MsxaLRn3W-.ttf", - "600": "https://fonts.gstatic.com/s/notoserifsinhala/v30/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pFvQFMsxaLRn3W-.ttf", - "700": "https://fonts.gstatic.com/s/notoserifsinhala/v30/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pFWQFMsxaLRn3W-.ttf", - "800": "https://fonts.gstatic.com/s/notoserifsinhala/v30/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pExQFMsxaLRn3W-.ttf", - "900": "https://fonts.gstatic.com/s/notoserifsinhala/v30/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pEYQFMsxaLRn3W-.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifsinhala/v30/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGxR2Mtz6Y.ttf" - }, - { - "family": "Noto Serif TC", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v34", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/notoseriftc/v34/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX_aMOpDOWYMr2OM.ttf", - "300": "https://fonts.gstatic.com/s/notoseriftc/v34/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX8EMOpDOWYMr2OM.ttf", - "regular": "https://fonts.gstatic.com/s/notoseriftc/v34/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX9aMOpDOWYMr2OM.ttf", - "500": "https://fonts.gstatic.com/s/notoseriftc/v34/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX9oMOpDOWYMr2OM.ttf", - "600": "https://fonts.gstatic.com/s/notoseriftc/v34/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX-EN-pDOWYMr2OM.ttf", - "700": "https://fonts.gstatic.com/s/notoseriftc/v34/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX-9N-pDOWYMr2OM.ttf", - "800": "https://fonts.gstatic.com/s/notoseriftc/v34/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX_aN-pDOWYMr2OM.ttf", - "900": "https://fonts.gstatic.com/s/notoseriftc/v34/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX_zN-pDOWYMr2OM.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoseriftc/v34/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX9aMNpCM2I.ttf" - }, - { - "family": "Noto Serif Tamil", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil" - ], - "version": "v31", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecattN6R8Pz3v8Etew.ttf", - "200": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatNN-R8Pz3v8Etew.ttf", - "300": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecat6t-R8Pz3v8Etew.ttf", - "regular": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecattN-R8Pz3v8Etew.ttf", - "500": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatht-R8Pz3v8Etew.ttf", - "600": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatatiR8Pz3v8Etew.ttf", - "700": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatU9iR8Pz3v8Etew.ttf", - "800": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatNNiR8Pz3v8Etew.ttf", - "900": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatHdiR8Pz3v8Etew.ttf", - "100italic": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJx5svbzncQ9e3wx.ttf", - "200italic": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJz5s_bzncQ9e3wx.ttf", - "300italic": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJwns_bzncQ9e3wx.ttf", - "italic": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJx5s_bzncQ9e3wx.ttf", - "500italic": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJxLs_bzncQ9e3wx.ttf", - "600italic": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJyntPbzncQ9e3wx.ttf", - "700italic": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJyetPbzncQ9e3wx.ttf", - "800italic": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJz5tPbzncQ9e3wx.ttf", - "900italic": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJzQtPbzncQ9e3wx.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoseriftamil/v31/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecattN-h8fbz.ttf" - }, - { - "family": "Noto Serif Tangut", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tangut" - ], - "version": "v19", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/notoseriftangut/v19/xn76YGc72GKoTvER4Gn3b4m9Ern7Em41fcvN2KT4.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoseriftangut/v19/xn76YGc72GKoTvER4Gn3b4m9Ern7El40d88.ttf" - }, - { - "family": "Noto Serif Telugu", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "telugu" - ], - "version": "v29", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9D9TGwuY2fjgrZYA.ttf", - "200": "https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DdTCwuY2fjgrZYA.ttf", - "300": "https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DqzCwuY2fjgrZYA.ttf", - "regular": "https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9D9TCwuY2fjgrZYA.ttf", - "500": "https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DxzCwuY2fjgrZYA.ttf", - "600": "https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DKzewuY2fjgrZYA.ttf", - "700": "https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DEjewuY2fjgrZYA.ttf", - "800": "https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DdTewuY2fjgrZYA.ttf", - "900": "https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DXDewuY2fjgrZYA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9D9TCAuIeb.ttf" - }, - { - "family": "Noto Serif Thai", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "thai" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/notoserifthai/v28/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oiFuRRCmsdu0Qx.ttf", - "200": "https://fonts.gstatic.com/s/notoserifthai/v28/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qiF-RRCmsdu0Qx.ttf", - "300": "https://fonts.gstatic.com/s/notoserifthai/v28/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0p8F-RRCmsdu0Qx.ttf", - "regular": "https://fonts.gstatic.com/s/notoserifthai/v28/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oiF-RRCmsdu0Qx.ttf", - "500": "https://fonts.gstatic.com/s/notoserifthai/v28/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oQF-RRCmsdu0Qx.ttf", - "600": "https://fonts.gstatic.com/s/notoserifthai/v28/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0r8EORRCmsdu0Qx.ttf", - "700": "https://fonts.gstatic.com/s/notoserifthai/v28/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0rFEORRCmsdu0Qx.ttf", - "800": "https://fonts.gstatic.com/s/notoserifthai/v28/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qiEORRCmsdu0Qx.ttf", - "900": "https://fonts.gstatic.com/s/notoserifthai/v28/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qLEORRCmsdu0Qx.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifthai/v28/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oiF9RQAG8.ttf" - }, - { - "family": "Noto Serif Tibetan", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "tibetan" - ], - "version": "v24", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/notoseriftibetan/v24/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIrYdPS7rdSy_32c.ttf", - "200": "https://fonts.gstatic.com/s/notoseriftibetan/v24/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIjYcPS7rdSy_32c.ttf", - "300": "https://fonts.gstatic.com/s/notoseriftibetan/v24/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIugcPS7rdSy_32c.ttf", - "regular": "https://fonts.gstatic.com/s/notoseriftibetan/v24/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIrYcPS7rdSy_32c.ttf", - "500": "https://fonts.gstatic.com/s/notoseriftibetan/v24/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIoQcPS7rdSy_32c.ttf", - "600": "https://fonts.gstatic.com/s/notoseriftibetan/v24/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmImgbPS7rdSy_32c.ttf", - "700": "https://fonts.gstatic.com/s/notoseriftibetan/v24/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIlEbPS7rdSy_32c.ttf", - "800": "https://fonts.gstatic.com/s/notoseriftibetan/v24/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIjYbPS7rdSy_32c.ttf", - "900": "https://fonts.gstatic.com/s/notoseriftibetan/v24/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIh8bPS7rdSy_32c.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoseriftibetan/v24/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIrYcDS_hcQ.ttf" - }, - { - "family": "Noto Serif Todhri", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "todhri" - ], - "version": "v3", - "lastModified": "2025-01-23", - "files": { - "regular": "https://fonts.gstatic.com/s/notoseriftodhri/v3/dFalZeyY-aYz1YVbjMoBWml1nBz7N3ByX6n0fnNk.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoseriftodhri/v3/dFalZeyY-aYz1YVbjMoBWml1nBz7N0BzVa0.ttf" - }, - { - "family": "Noto Serif Toto", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "toto" - ], - "version": "v7", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notoseriftoto/v7/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhCy3Il-aj55vdNug.ttf", - "500": "https://fonts.gstatic.com/s/notoseriftoto/v7/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhCx_Il-aj55vdNug.ttf", - "600": "https://fonts.gstatic.com/s/notoseriftoto/v7/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhC_PPl-aj55vdNug.ttf", - "700": "https://fonts.gstatic.com/s/notoseriftoto/v7/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhC8rPl-aj55vdNug.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoseriftoto/v7/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhCy3Ip-ep4w.ttf" - }, - { - "family": "Noto Serif Vithkuqi", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vithkuqi" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifvithkuqi/v3/YA94r1OY7FjTf5szakutkndpw9HH-4a4z9pklvg1IQSNcRWMdW2Cqy9A4teH.ttf", - "500": "https://fonts.gstatic.com/s/notoserifvithkuqi/v3/YA94r1OY7FjTf5szakutkndpw9HH-4a4z9pklvg1IQSNcRW-dW2Cqy9A4teH.ttf", - "600": "https://fonts.gstatic.com/s/notoserifvithkuqi/v3/YA94r1OY7FjTf5szakutkndpw9HH-4a4z9pklvg1IQSNcRVScm2Cqy9A4teH.ttf", - "700": "https://fonts.gstatic.com/s/notoserifvithkuqi/v3/YA94r1OY7FjTf5szakutkndpw9HH-4a4z9pklvg1IQSNcRVrcm2Cqy9A4teH.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifvithkuqi/v3/YA94r1OY7FjTf5szakutkndpw9HH-4a4z9pklvg1IQSNcRWMdV2DoSs.ttf" - }, - { - "family": "Noto Serif Yezidi", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "yezidi" - ], - "version": "v23", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/notoserifyezidi/v23/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspD2yEkrlGJgmVCqg.ttf", - "500": "https://fonts.gstatic.com/s/notoserifyezidi/v23/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspD6SEkrlGJgmVCqg.ttf", - "600": "https://fonts.gstatic.com/s/notoserifyezidi/v23/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspDBSYkrlGJgmVCqg.ttf", - "700": "https://fonts.gstatic.com/s/notoserifyezidi/v23/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspDPCYkrlGJgmVCqg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoserifyezidi/v23/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspD2yEUr1uN.ttf" - }, - { - "family": "Noto Traditional Nushu", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "nushu" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/nototraditionalnushu/v23/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXvy1tnPa7QoqirI.ttf", - "regular": "https://fonts.gstatic.com/s/nototraditionalnushu/v23/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXus1tnPa7QoqirI.ttf", - "500": "https://fonts.gstatic.com/s/nototraditionalnushu/v23/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXue1tnPa7QoqirI.ttf", - "600": "https://fonts.gstatic.com/s/nototraditionalnushu/v23/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXty0dnPa7QoqirI.ttf", - "700": "https://fonts.gstatic.com/s/nototraditionalnushu/v23/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXtL0dnPa7QoqirI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nototraditionalnushu/v23/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXus1unOYbA.ttf" - }, - { - "family": "Noto Znamenny Musical Notation", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols", - "znamenny" - ], - "version": "v7", - "lastModified": "2025-06-09", - "files": { - "regular": "https://fonts.gstatic.com/s/notoznamennymusicalnotation/v7/CSRW4ylQnPyaDwAMK1U_AolTaJ4Lz41GcgaIZV9YO2rO88jvtpqqdoWa7g.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/notoznamennymusicalnotation/v7/CSRW4ylQnPyaDwAMK1U_AolTaJ4Lz41GcgaIZV9YO2rO88jft5Cu.ttf", - "colorCapabilities": [ - "COLRv0" - ] - }, - { - "family": "Nova Cut", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/novacut/v26/KFOkCnSYu8mL-39LkWxPKTM1K9nz.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/novacut/v26/KFOkCnSYu8mL-39LkVxOIzc.ttf" - }, - { - "family": "Nova Flat", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/novaflat/v26/QdVUSTc-JgqpytEbVebEuStkm20oJA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/novaflat/v26/QdVUSTc-JgqpytEbVeb0uCFg.ttf" - }, - { - "family": "Nova Mono", - "variants": [ - "regular" - ], - "subsets": [ - "greek", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/novamono/v23/Cn-0JtiGWQ5Ajb--MRKfYGxYrdM9Sg.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/novamono/v23/Cn-0JtiGWQ5Ajb--MRKvYWZc.ttf" - }, - { - "family": "Nova Oval", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/novaoval/v26/jAnEgHdmANHvPenMaswCMY-h3cWkWg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/novaoval/v26/jAnEgHdmANHvPenMaswyMIWl.ttf" - }, - { - "family": "Nova Round", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/novaround/v23/flU9Rqquw5UhEnlwTJYTYYfeeetYEBc.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/novaround/v23/flU9Rqquw5UhEnlwTJYTUYbUfQ.ttf" - }, - { - "family": "Nova Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/novascript/v27/7Au7p_IpkSWSTWaFWkumvmQNEl0O0kEx.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/novascript/v27/7Au7p_IpkSWSTWaFWkumvlQMGFk.ttf" - }, - { - "family": "Nova Slim", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/novaslim/v26/Z9XUDmZNQAuem8jyZcn-yMOInrib9Q.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/novaslim/v26/Z9XUDmZNQAuem8jyZcnOycmM.ttf" - }, - { - "family": "Nova Square", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/novasquare/v27/RrQUbo9-9DV7b06QHgSWsZhARYMgGtWA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/novasquare/v27/RrQUbo9-9DV7b06QHgSWsahBT4c.ttf" - }, - { - "family": "Numans", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/numans/v16/SlGRmQmGupYAfH8IYRggiHVqaQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/numans/v16/SlGRmQmGupYAfH84YBIk.ttf" - }, - { - "family": "Nunito", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v32", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/nunito/v32/XRXI3I6Li01BKofiOc5wtlZ2di8HDDshRTM9jo7eTWk.ttf", - "300": "https://fonts.gstatic.com/s/nunito/v32/XRXI3I6Li01BKofiOc5wtlZ2di8HDOUhRTM9jo7eTWk.ttf", - "regular": "https://fonts.gstatic.com/s/nunito/v32/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTM9jo7eTWk.ttf", - "500": "https://fonts.gstatic.com/s/nunito/v32/XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhRTM9jo7eTWk.ttf", - "600": "https://fonts.gstatic.com/s/nunito/v32/XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTM9jo7eTWk.ttf", - "700": "https://fonts.gstatic.com/s/nunito/v32/XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTM9jo7eTWk.ttf", - "800": "https://fonts.gstatic.com/s/nunito/v32/XRXI3I6Li01BKofiOc5wtlZ2di8HDDsmRTM9jo7eTWk.ttf", - "900": "https://fonts.gstatic.com/s/nunito/v32/XRXI3I6Li01BKofiOc5wtlZ2di8HDBImRTM9jo7eTWk.ttf", - "200italic": "https://fonts.gstatic.com/s/nunito/v32/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiLXA3iqzbXWnoeg.ttf", - "300italic": "https://fonts.gstatic.com/s/nunito/v32/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNi83A3iqzbXWnoeg.ttf", - "italic": "https://fonts.gstatic.com/s/nunito/v32/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNirXA3iqzbXWnoeg.ttf", - "500italic": "https://fonts.gstatic.com/s/nunito/v32/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNin3A3iqzbXWnoeg.ttf", - "600italic": "https://fonts.gstatic.com/s/nunito/v32/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNic3c3iqzbXWnoeg.ttf", - "700italic": "https://fonts.gstatic.com/s/nunito/v32/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiSnc3iqzbXWnoeg.ttf", - "800italic": "https://fonts.gstatic.com/s/nunito/v32/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiLXc3iqzbXWnoeg.ttf", - "900italic": "https://fonts.gstatic.com/s/nunito/v32/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiBHc3iqzbXWnoeg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nunito/v32/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshdTI3ig.ttf" - }, - { - "family": "Nunito Sans", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GVilntF8kA_Ykqw.ttf", - "300": "https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GiClntF8kA_Ykqw.ttf", - "regular": "https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G1ilntF8kA_Ykqw.ttf", - "500": "https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G5ClntF8kA_Ykqw.ttf", - "600": "https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GCC5ntF8kA_Ykqw.ttf", - "700": "https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GMS5ntF8kA_Ykqw.ttf", - "800": "https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GVi5ntF8kA_Ykqw.ttf", - "900": "https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4Gfy5ntF8kA_Ykqw.ttf", - "200italic": "https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmoP91UgIfM0qxVd.ttf", - "300italic": "https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmrR91UgIfM0qxVd.ttf", - "italic": "https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmqP91UgIfM0qxVd.ttf", - "500italic": "https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmq991UgIfM0qxVd.ttf", - "600italic": "https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmpR8FUgIfM0qxVd.ttf", - "700italic": "https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmpo8FUgIfM0qxVd.ttf", - "800italic": "https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmoP8FUgIfM0qxVd.ttf", - "900italic": "https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmom8FUgIfM0qxVd.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G1ilXtVUg.ttf" - }, - { - "family": "Nuosu SIL", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "yi" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/nuosusil/v12/8vIK7wM3wmRn_kc4uAjeFGxbO_zo-w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/nuosusil/v12/8vIK7wM3wmRn_kc4uAjuFWZf.ttf" - }, - { - "family": "Odibee Sans", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/odibeesans/v20/neIPzCSooYAho6WvjeToRYkyepH9qGsf.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/odibeesans/v20/neIPzCSooYAho6WvjeToRbkzcJU.ttf" - }, - { - "family": "Odor Mean Chey", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v31", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/odormeanchey/v31/raxkHiKDttkTe1aOGcJMR1A_4mrY2zqUKafv.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/odormeanchey/v31/raxkHiKDttkTe1aOGcJMR1A_4lrZ0T4.ttf" - }, - { - "family": "Offside", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/offside/v26/HI_KiYMWKa9QrAykQ5HiRp-dhpQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/offside/v26/HI_KiYMWKa9QrAykc5DoQg.ttf" - }, - { - "family": "Oi", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "tamil", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/oi/v21/w8gXH2EuRqtaut6yjBOG.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oi/v21/w8gXH2EuRptbsNo.ttf" - }, - { - "family": "Ojuju", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/ojuju/v5/7r3bqXF7v9ApbrMih3jYQBVm9-n_ypk552FRLYeruQ.ttf", - "300": "https://fonts.gstatic.com/s/ojuju/v5/7r3bqXF7v9ApbrMih3jYQBVm9-n_FJk552FRLYeruQ.ttf", - "regular": "https://fonts.gstatic.com/s/ojuju/v5/7r3bqXF7v9ApbrMih3jYQBVm9-n_Spk552FRLYeruQ.ttf", - "500": "https://fonts.gstatic.com/s/ojuju/v5/7r3bqXF7v9ApbrMih3jYQBVm9-n_eJk552FRLYeruQ.ttf", - "600": "https://fonts.gstatic.com/s/ojuju/v5/7r3bqXF7v9ApbrMih3jYQBVm9-n_lJ4552FRLYeruQ.ttf", - "700": "https://fonts.gstatic.com/s/ojuju/v5/7r3bqXF7v9ApbrMih3jYQBVm9-n_rZ4552FRLYeruQ.ttf", - "800": "https://fonts.gstatic.com/s/ojuju/v5/7r3bqXF7v9ApbrMih3jYQBVm9-n_yp4552FRLYeruQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ojuju/v5/7r3bqXF7v9ApbrMih3jYQBVm9-n_SpkJ5mtV.ttf" - }, - { - "family": "Old Standard TT", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/oldstandardtt/v22/MwQubh3o1vLImiwAVvYawgcf2eVurVC5RHdCZg.ttf", - "italic": "https://fonts.gstatic.com/s/oldstandardtt/v22/MwQsbh3o1vLImiwAVvYawgcf2eVer1q9ZnJSZtQG.ttf", - "700": "https://fonts.gstatic.com/s/oldstandardtt/v22/MwQrbh3o1vLImiwAVvYawgcf2eVWEX-dTFxeb80flQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oldstandardtt/v22/MwQubh3o1vLImiwAVvYawgcf2eVerFq9.ttf" - }, - { - "family": "Oldenburg", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/oldenburg/v24/fC1jPY5JYWzbywv7c4V6UU6oXyndrw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oldenburg/v24/fC1jPY5JYWzbywv7c4VKUESs.ttf" - }, - { - "family": "Ole", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/ole/v3/dFazZf6Z-rd89fw69qJ_ew.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ole/v3/dFazZf6Z-rdM9PY-.ttf" - }, - { - "family": "Oleo Script", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/oleoscript/v15/rax5HieDvtMOe0iICsUccBhasU7Q8Cad.ttf", - "700": "https://fonts.gstatic.com/s/oleoscript/v15/raxkHieDvtMOe0iICsUccCDmnmrY2zqUKafv.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oleoscript/v15/rax5HieDvtMOe0iICsUccChbu0o.ttf" - }, - { - "family": "Oleo Script Swash Caps", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/oleoscriptswashcaps/v14/Noaj6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HMXquSY0Hg90.ttf", - "700": "https://fonts.gstatic.com/s/oleoscriptswashcaps/v14/Noag6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HCcaBbYUsn9T5dt0.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oleoscriptswashcaps/v14/Noaj6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HAXukTQ.ttf" - }, - { - "family": "Onest", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v9", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPh9R6ZshFMQWXgSQ.ttf", - "200": "https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhdR-ZshFMQWXgSQ.ttf", - "300": "https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhqx-ZshFMQWXgSQ.ttf", - "regular": "https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPh9R-ZshFMQWXgSQ.ttf", - "500": "https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhxx-ZshFMQWXgSQ.ttf", - "600": "https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhKxiZshFMQWXgSQ.ttf", - "700": "https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhEhiZshFMQWXgSQ.ttf", - "800": "https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhdRiZshFMQWXgSQ.ttf", - "900": "https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhXBiZshFMQWXgSQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPh9R-psxtI.ttf" - }, - { - "family": "Oooh Baby", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/ooohbaby/v4/2sDcZGJWgJTT2Jf76xQDb2-4C7wFZQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ooohbaby/v4/2sDcZGJWgJTT2Jf76xQzbmW8.ttf" - }, - { - "family": "Open Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "hebrew", - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v44", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4nY1M2xLER.ttf", - "regular": "https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4nY1M2xLER.ttf", - "500": "https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjr0C4nY1M2xLER.ttf", - "600": "https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsgH1y4nY1M2xLER.ttf", - "700": "https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4nY1M2xLER.ttf", - "800": "https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgshZ1y4nY1M2xLER.ttf", - "300italic": "https://fonts.gstatic.com/s/opensans/v44/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVcUwaERZjA.ttf", - "italic": "https://fonts.gstatic.com/s/opensans/v44/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVcUwaERZjA.ttf", - "500italic": "https://fonts.gstatic.com/s/opensans/v44/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk_RkaVcUwaERZjA.ttf", - "600italic": "https://fonts.gstatic.com/s/opensans/v44/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkxhjaVcUwaERZjA.ttf", - "700italic": "https://fonts.gstatic.com/s/opensans/v44/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVcUwaERZjA.ttf", - "800italic": "https://fonts.gstatic.com/s/opensans/v44/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk0ZjaVcUwaERZjA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4maVc.ttf" - }, - { - "family": "Oranienbaum", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/oranienbaum/v16/OZpHg_txtzZKMuXLIVrx-3zn7kz3dpHc.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oranienbaum/v16/OZpHg_txtzZKMuXLIVrx-0zm5Eg.ttf" - }, - { - "family": "Orbit", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/orbit/v1/_LOCmz7I-uHd2mjEeqciRwRm.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/orbit/v1/_LOCmz7I-uHd2ljFcKM.ttf" - }, - { - "family": "Orbitron", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin" - ], - "version": "v35", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/orbitron/v35/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyGy6xpmIyXjU1pg.ttf", - "500": "https://fonts.gstatic.com/s/orbitron/v35/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyKS6xpmIyXjU1pg.ttf", - "600": "https://fonts.gstatic.com/s/orbitron/v35/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyxSmxpmIyXjU1pg.ttf", - "700": "https://fonts.gstatic.com/s/orbitron/v35/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1ny_CmxpmIyXjU1pg.ttf", - "800": "https://fonts.gstatic.com/s/orbitron/v35/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nymymxpmIyXjU1pg.ttf", - "900": "https://fonts.gstatic.com/s/orbitron/v35/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nysimxpmIyXjU1pg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/orbitron/v35/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyGy6Bp2g2.ttf" - }, - { - "family": "Oregano", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/oregano/v17/If2IXTPxciS3H4S2kZffPznO3yM.ttf", - "italic": "https://fonts.gstatic.com/s/oregano/v17/If2KXTPxciS3H4S2oZXVOxvLzyP_qw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oregano/v17/If2IXTPxciS3H4S2oZbVOw.ttf" - }, - { - "family": "Orelega One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/orelegaone/v14/3qTpojOggD2XtAdFb-QXZGt61EcYaQ7F.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/orelegaone/v14/3qTpojOggD2XtAdFb-QXZFt73kM.ttf" - }, - { - "family": "Orienta", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/orienta/v16/PlI9FlK4Jrl5Y9zNeyeo9HRFhcU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/orienta/v16/PlI9FlK4Jrl5Y9zNSyai8A.ttf" - }, - { - "family": "Original Surfer", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/originalsurfer/v25/RWmQoKGZ9vIirYntXJ3_MbekzNMiDEtvAlaMKw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/originalsurfer/v25/RWmQoKGZ9vIirYntXJ3_MbekzNMSDUFr.ttf" - }, - { - "family": "Oswald", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v57", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs13FvgUFoZAaRliE.ttf", - "300": "https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs169vgUFoZAaRliE.ttf", - "regular": "https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvgUFoZAaRliE.ttf", - "500": "https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs18NvgUFoZAaRliE.ttf", - "600": "https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs1y9ogUFoZAaRliE.ttf", - "700": "https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZogUFoZAaRliE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvsUBiYA.ttf" - }, - { - "family": "Outfit", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/outfit/v15/QGYyz_MVcBeNP4NjuGObqx1XmO1I4TC0C4G-EiAou6Y.ttf", - "200": "https://fonts.gstatic.com/s/outfit/v15/QGYyz_MVcBeNP4NjuGObqx1XmO1I4bC1C4G-EiAou6Y.ttf", - "300": "https://fonts.gstatic.com/s/outfit/v15/QGYyz_MVcBeNP4NjuGObqx1XmO1I4W61C4G-EiAou6Y.ttf", - "regular": "https://fonts.gstatic.com/s/outfit/v15/QGYyz_MVcBeNP4NjuGObqx1XmO1I4TC1C4G-EiAou6Y.ttf", - "500": "https://fonts.gstatic.com/s/outfit/v15/QGYyz_MVcBeNP4NjuGObqx1XmO1I4QK1C4G-EiAou6Y.ttf", - "600": "https://fonts.gstatic.com/s/outfit/v15/QGYyz_MVcBeNP4NjuGObqx1XmO1I4e6yC4G-EiAou6Y.ttf", - "700": "https://fonts.gstatic.com/s/outfit/v15/QGYyz_MVcBeNP4NjuGObqx1XmO1I4deyC4G-EiAou6Y.ttf", - "800": "https://fonts.gstatic.com/s/outfit/v15/QGYyz_MVcBeNP4NjuGObqx1XmO1I4bCyC4G-EiAou6Y.ttf", - "900": "https://fonts.gstatic.com/s/outfit/v15/QGYyz_MVcBeNP4NjuGObqx1XmO1I4ZmyC4G-EiAou6Y.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/outfit/v15/QGYyz_MVcBeNP4NjuGObqx1XmO1I4TC1O4C0Fg.ttf" - }, - { - "family": "Over the Rainbow", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/overtherainbow/v23/11haGoXG1k_HKhMLUWz7Mc7vvW5upvOm9NA2XG0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/overtherainbow/v23/11haGoXG1k_HKhMLUWz7Mc7vvW5ulvKs8A.ttf" - }, - { - "family": "Overlock", - "variants": [ - "regular", - "italic", - "700", - "700italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/overlock/v19/Z9XVDmdMWRiN1_T9Z4Te4u2El6GC.ttf", - "italic": "https://fonts.gstatic.com/s/overlock/v19/Z9XTDmdMWRiN1_T9Z7Tc6OmmkrGC7Cs.ttf", - "700": "https://fonts.gstatic.com/s/overlock/v19/Z9XSDmdMWRiN1_T9Z7xizcmMvL2L9TLT.ttf", - "700italic": "https://fonts.gstatic.com/s/overlock/v19/Z9XQDmdMWRiN1_T9Z7Tc0FWJtrmp8CLTlNs.ttf", - "900": "https://fonts.gstatic.com/s/overlock/v19/Z9XSDmdMWRiN1_T9Z7xaz8mMvL2L9TLT.ttf", - "900italic": "https://fonts.gstatic.com/s/overlock/v19/Z9XQDmdMWRiN1_T9Z7Tc0G2Ltrmp8CLTlNs.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/overlock/v19/Z9XVDmdMWRiN1_T9Z7Tf6Ok.ttf" - }, - { - "family": "Overlock SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/overlocksc/v25/1cX3aUHKGZrstGAY8nwVzHGAq8Sk1PoH.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/overlocksc/v25/1cX3aUHKGZrstGAY8nwVzEGBocA.ttf" - }, - { - "family": "Overpass", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/overpass/v19/qFda35WCmI96Ajtm83upeyoaX6QPnlo6_PLrOZCLtce-og.ttf", - "200": "https://fonts.gstatic.com/s/overpass/v19/qFda35WCmI96Ajtm83upeyoaX6QPnlo6fPPrOZCLtce-og.ttf", - "300": "https://fonts.gstatic.com/s/overpass/v19/qFda35WCmI96Ajtm83upeyoaX6QPnlo6ovPrOZCLtce-og.ttf", - "regular": "https://fonts.gstatic.com/s/overpass/v19/qFda35WCmI96Ajtm83upeyoaX6QPnlo6_PPrOZCLtce-og.ttf", - "500": "https://fonts.gstatic.com/s/overpass/v19/qFda35WCmI96Ajtm83upeyoaX6QPnlo6zvPrOZCLtce-og.ttf", - "600": "https://fonts.gstatic.com/s/overpass/v19/qFda35WCmI96Ajtm83upeyoaX6QPnlo6IvTrOZCLtce-og.ttf", - "700": "https://fonts.gstatic.com/s/overpass/v19/qFda35WCmI96Ajtm83upeyoaX6QPnlo6G_TrOZCLtce-og.ttf", - "800": "https://fonts.gstatic.com/s/overpass/v19/qFda35WCmI96Ajtm83upeyoaX6QPnlo6fPTrOZCLtce-og.ttf", - "900": "https://fonts.gstatic.com/s/overpass/v19/qFda35WCmI96Ajtm83upeyoaX6QPnlo6VfTrOZCLtce-og.ttf", - "100italic": "https://fonts.gstatic.com/s/overpass/v19/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLADe5qPl8Kuosgz.ttf", - "200italic": "https://fonts.gstatic.com/s/overpass/v19/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCDepqPl8Kuosgz.ttf", - "300italic": "https://fonts.gstatic.com/s/overpass/v19/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLBdepqPl8Kuosgz.ttf", - "italic": "https://fonts.gstatic.com/s/overpass/v19/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLADepqPl8Kuosgz.ttf", - "500italic": "https://fonts.gstatic.com/s/overpass/v19/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLAxepqPl8Kuosgz.ttf", - "600italic": "https://fonts.gstatic.com/s/overpass/v19/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLDdfZqPl8Kuosgz.ttf", - "700italic": "https://fonts.gstatic.com/s/overpass/v19/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLDkfZqPl8Kuosgz.ttf", - "800italic": "https://fonts.gstatic.com/s/overpass/v19/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCDfZqPl8Kuosgz.ttf", - "900italic": "https://fonts.gstatic.com/s/overpass/v19/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCqfZqPl8Kuosgz.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/overpass/v19/qFda35WCmI96Ajtm83upeyoaX6QPnlo6_PPbOJqP.ttf" - }, - { - "family": "Overpass Mono", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/overpassmono/v21/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EWKokzzXur-SmIr.ttf", - "regular": "https://fonts.gstatic.com/s/overpassmono/v21/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EXUokzzXur-SmIr.ttf", - "500": "https://fonts.gstatic.com/s/overpassmono/v21/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EXmokzzXur-SmIr.ttf", - "600": "https://fonts.gstatic.com/s/overpassmono/v21/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EUKpUzzXur-SmIr.ttf", - "700": "https://fonts.gstatic.com/s/overpassmono/v21/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EUzpUzzXur-SmIr.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/overpassmono/v21/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EXUonzyVO4.ttf" - }, - { - "family": "Ovo", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/ovo/v18/yYLl0h7Wyfzjy4Q5_3WVxA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ovo/v18/yYLl0h7WyfzTyo49.ttf" - }, - { - "family": "Oxanium", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/oxanium/v21/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G83JfniMBXQ7d67x.ttf", - "300": "https://fonts.gstatic.com/s/oxanium/v21/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G80XfniMBXQ7d67x.ttf", - "regular": "https://fonts.gstatic.com/s/oxanium/v21/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G81JfniMBXQ7d67x.ttf", - "500": "https://fonts.gstatic.com/s/oxanium/v21/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G817fniMBXQ7d67x.ttf", - "600": "https://fonts.gstatic.com/s/oxanium/v21/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G82XeXiMBXQ7d67x.ttf", - "700": "https://fonts.gstatic.com/s/oxanium/v21/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G82ueXiMBXQ7d67x.ttf", - "800": "https://fonts.gstatic.com/s/oxanium/v21/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G83JeXiMBXQ7d67x.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oxanium/v21/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G81JfkiND3A.ttf" - }, - { - "family": "Oxygen", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/oxygen/v16/2sDcZG1Wl4LcnbuCJW8Db2-4C7wFZQ.ttf", - "regular": "https://fonts.gstatic.com/s/oxygen/v16/2sDfZG1Wl4Lcnbu6iUcnZ0SkAg.ttf", - "700": "https://fonts.gstatic.com/s/oxygen/v16/2sDcZG1Wl4LcnbuCNWgDb2-4C7wFZQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oxygen/v16/2sDfZG1Wl4LcnbuKiE0j.ttf" - }, - { - "family": "Oxygen Mono", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/oxygenmono/v15/h0GsssGg9FxgDgCjLeAd7ijfze-PPlUu.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/oxygenmono/v15/h0GsssGg9FxgDgCjLeAd7hjex-s.ttf" - }, - { - "family": "PT Mono", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/ptmono/v14/9oRONYoBnWILk-9ArCg5MtPyAcg.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ptmono/v14/9oRONYoBnWILk-9AnCkzNg.ttf" - }, - { - "family": "PT Sans", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/ptsans/v18/jizaRExUiTo99u79P0WOxOGMMDQ.ttf", - "italic": "https://fonts.gstatic.com/s/ptsans/v18/jizYRExUiTo99u79D0eEwMOJIDQA-g.ttf", - "700": "https://fonts.gstatic.com/s/ptsans/v18/jizfRExUiTo99u79B_mh4OmnLD0Z4zM.ttf", - "700italic": "https://fonts.gstatic.com/s/ptsans/v18/jizdRExUiTo99u79D0e8fOytKB8c8zMrig.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ptsans/v18/jizaRExUiTo99u79D0SEwA.ttf" - }, - { - "family": "PT Sans Caption", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/ptsanscaption/v20/0FlMVP6Hrxmt7-fsUFhlFXNIlpcqfQXwQy6yxg.ttf", - "700": "https://fonts.gstatic.com/s/ptsanscaption/v20/0FlJVP6Hrxmt7-fsUFhlFXNIlpcSwSrUSwWuz38Tgg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ptsanscaption/v20/0FlMVP6Hrxmt7-fsUFhlFXNIlpcafA_0.ttf" - }, - { - "family": "PT Sans Narrow", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/ptsansnarrow/v19/BngRUXNadjH0qYEzV7ab-oWlsYCByxyKeuDp.ttf", - "700": "https://fonts.gstatic.com/s/ptsansnarrow/v19/BngSUXNadjH0qYEzV7ab-oWlsbg95DiCUfzgRd-3.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ptsansnarrow/v19/BngRUXNadjH0qYEzV7ab-oWlsbCAwRg.ttf" - }, - { - "family": "PT Serif", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/ptserif/v19/EJRVQgYoZZY2vCFuvDFRxL6ddjb-.ttf", - "italic": "https://fonts.gstatic.com/s/ptserif/v19/EJRTQgYoZZY2vCFuvAFTzrq_cyb-vco.ttf", - "700": "https://fonts.gstatic.com/s/ptserif/v19/EJRSQgYoZZY2vCFuvAnt65qVXSr3pNNB.ttf", - "700italic": "https://fonts.gstatic.com/s/ptserif/v19/EJRQQgYoZZY2vCFuvAFT9gaQVy7VocNB6Iw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ptserif/v19/EJRVQgYoZZY2vCFuvAFQzro.ttf" - }, - { - "family": "PT Serif Caption", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/ptserifcaption/v18/ieVl2ZhbGCW-JoW6S34pSDpqYKU059WxDCs5cvI.ttf", - "italic": "https://fonts.gstatic.com/s/ptserifcaption/v18/ieVj2ZhbGCW-JoW6S34pSDpqYKU019e7CAk8YvJEeg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ptserifcaption/v18/ieVl2ZhbGCW-JoW6S34pSDpqYKU019S7CA.ttf" - }, - { - "family": "Pacifico", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/pacifico/v23/FwZY7-Qmy14u9lezJ96A4sijpFu_.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pacifico/v23/FwZY7-Qmy14u9lezJ-6B6Mw.ttf" - }, - { - "family": "Padauk", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "myanmar" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/padauk/v17/RrQRboJg-id7OnbBa0_g3LlYbg.ttf", - "700": "https://fonts.gstatic.com/s/padauk/v17/RrQSboJg-id7Onb512DE1JJEZ4YwGg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/padauk/v17/RrQRboJg-id7OnbxakXk.ttf" - }, - { - "family": "Padyakke Expanded One", - "variants": [ - "regular" - ], - "subsets": [ - "kannada", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/padyakkeexpandedone/v8/K2FvfY9El_tbR0JfHb6WWvrBaU6XAUvC4IAYOKRkpDjeoQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/padyakkeexpandedone/v8/K2FvfY9El_tbR0JfHb6WWvrBaU6XAUvC4IAoOa5g.ttf" - }, - { - "family": "Palanquin", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/palanquin/v17/9XUhlJ90n1fBFg7ceXwUEltI7rWmZzTH.ttf", - "200": "https://fonts.gstatic.com/s/palanquin/v17/9XUilJ90n1fBFg7ceXwUvnpoxJuqbi3ezg.ttf", - "300": "https://fonts.gstatic.com/s/palanquin/v17/9XUilJ90n1fBFg7ceXwU2nloxJuqbi3ezg.ttf", - "regular": "https://fonts.gstatic.com/s/palanquin/v17/9XUnlJ90n1fBFg7ceXwsdlFMzLC2Zw.ttf", - "500": "https://fonts.gstatic.com/s/palanquin/v17/9XUilJ90n1fBFg7ceXwUgnhoxJuqbi3ezg.ttf", - "600": "https://fonts.gstatic.com/s/palanquin/v17/9XUilJ90n1fBFg7ceXwUrn9oxJuqbi3ezg.ttf", - "700": "https://fonts.gstatic.com/s/palanquin/v17/9XUilJ90n1fBFg7ceXwUyn5oxJuqbi3ezg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/palanquin/v17/9XUnlJ90n1fBFg7ceXwcd1tI.ttf" - }, - { - "family": "Palanquin Dark", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/palanquindark/v17/xn75YHgl1nqmANMB-26xC7yuF_6OTEo9VtfE.ttf", - "500": "https://fonts.gstatic.com/s/palanquindark/v17/xn76YHgl1nqmANMB-26xC7yuF8Z6ZW41fcvN2KT4.ttf", - "600": "https://fonts.gstatic.com/s/palanquindark/v17/xn76YHgl1nqmANMB-26xC7yuF8ZWYm41fcvN2KT4.ttf", - "700": "https://fonts.gstatic.com/s/palanquindark/v17/xn76YHgl1nqmANMB-26xC7yuF8YyY241fcvN2KT4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/palanquindark/v17/xn75YHgl1nqmANMB-26xC7yuF86PRk4.ttf" - }, - { - "family": "Palette Mosaic", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin" - ], - "version": "v13", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/palettemosaic/v13/AMOIz4aBvWuBFe3TohdW6YZ9MFiy4dxL4jSr.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/palettemosaic/v13/AMOIz4aBvWuBFe3TohdW6YZ9MGiz69g.ttf" - }, - { - "family": "Pangolin", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/pangolin/v12/cY9GfjGcW0FPpi-tWPfK5d3aiLBG.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pangolin/v12/cY9GfjGcW0FPpi-tWMfL79k.ttf" - }, - { - "family": "Paprika", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/paprika/v24/8QIJdijZitv49rDfuIgOq7jkAOw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/paprika/v24/8QIJdijZitv49rDfiIkErw.ttf" - }, - { - "family": "Parastoo", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/parastoo/v1/-F6vfj90ITQ4d9euQVDbrtWYW5MNx1dlT6k1FPNkx5rq1w.ttf", - "500": "https://fonts.gstatic.com/s/parastoo/v1/-F6vfj90ITQ4d9euQVDbrtWYW5MNx1dlfak1FPNkx5rq1w.ttf", - "600": "https://fonts.gstatic.com/s/parastoo/v1/-F6vfj90ITQ4d9euQVDbrtWYW5MNx1dlka41FPNkx5rq1w.ttf", - "700": "https://fonts.gstatic.com/s/parastoo/v1/-F6vfj90ITQ4d9euQVDbrtWYW5MNx1dlqK41FPNkx5rq1w.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/parastoo/v1/-F6vfj90ITQ4d9euQVDbrtWYW5MNx1dlT6kFFflg.ttf" - }, - { - "family": "Parisienne", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/parisienne/v14/E21i_d3kivvAkxhLEVZpcy96DuKuavM.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/parisienne/v14/E21i_d3kivvAkxhLEVZpQy5wCg.ttf" - }, - { - "family": "Parkinsans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/parkinsans/v3/-W_uXJXvQyPb1QfpBpRrVEgjj0W4zSUk4gSI6R8K-8Z_dt-E.ttf", - "regular": "https://fonts.gstatic.com/s/parkinsans/v3/-W_uXJXvQyPb1QfpBpRrVEgjj0W4zSUk4gTW6R8K-8Z_dt-E.ttf", - "500": "https://fonts.gstatic.com/s/parkinsans/v3/-W_uXJXvQyPb1QfpBpRrVEgjj0W4zSUk4gTk6R8K-8Z_dt-E.ttf", - "600": "https://fonts.gstatic.com/s/parkinsans/v3/-W_uXJXvQyPb1QfpBpRrVEgjj0W4zSUk4gQI7h8K-8Z_dt-E.ttf", - "700": "https://fonts.gstatic.com/s/parkinsans/v3/-W_uXJXvQyPb1QfpBpRrVEgjj0W4zSUk4gQx7h8K-8Z_dt-E.ttf", - "800": "https://fonts.gstatic.com/s/parkinsans/v3/-W_uXJXvQyPb1QfpBpRrVEgjj0W4zSUk4gRW7h8K-8Z_dt-E.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/parkinsans/v3/-W_uXJXvQyPb1QfpBpRrVEgjj0W4zSUk4gTW6S8L8cI.ttf" - }, - { - "family": "Passero One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/passeroone/v28/JTUTjIko8DOq5FeaeEAjgE5B5Arr-s50.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/passeroone/v28/JTUTjIko8DOq5FeaeEAjgH5A7g4.ttf" - }, - { - "family": "Passion One", - "variants": [ - "regular", - "700", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/passionone/v20/PbynFmL8HhTPqbjUzux3JHuW_Frg6YoV.ttf", - "700": "https://fonts.gstatic.com/s/passionone/v20/Pby6FmL8HhTPqbjUzux3JEMq037owpYcuH8y.ttf", - "900": "https://fonts.gstatic.com/s/passionone/v20/Pby6FmL8HhTPqbjUzux3JEMS0X7owpYcuH8y.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/passionone/v20/PbynFmL8HhTPqbjUzux3JEuX9l4.ttf" - }, - { - "family": "Passions Conflict", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/passionsconflict/v9/kmKnZrcrFhfafnWX9x0GuEC-zowow5NeYRI4CN2V.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/passionsconflict/v9/kmKnZrcrFhfafnWX9x0GuEC-zowow6NfaxY.ttf" - }, - { - "family": "Pathway Extreme", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak2Nx1Kyw3igP5eg.ttf", - "200": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakWN11Kyw3igP5eg.ttf", - "300": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakht11Kyw3igP5eg.ttf", - "regular": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak2N11Kyw3igP5eg.ttf", - "500": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak6t11Kyw3igP5eg.ttf", - "600": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakBtp1Kyw3igP5eg.ttf", - "700": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakP9p1Kyw3igP5eg.ttf", - "800": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakWNp1Kyw3igP5eg.ttf", - "900": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakcdp1Kyw3igP5eg.ttf", - "100italic": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6daSYzqAbpepnF.ttf", - "200italic": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ4daCYzqAbpepnF.ttf", - "300italic": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ7DaCYzqAbpepnF.ttf", - "italic": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6daCYzqAbpepnF.ttf", - "500italic": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6vaCYzqAbpepnF.ttf", - "600italic": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ5DbyYzqAbpepnF.ttf", - "700italic": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ56byYzqAbpepnF.ttf", - "800italic": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ4dbyYzqAbpepnF.ttf", - "900italic": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ40byYzqAbpepnF.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pathwayextreme/v7/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak2N1FKiYz.ttf" - }, - { - "family": "Pathway Gothic One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/pathwaygothicone/v16/MwQrbgD32-KAvjkYGNUUxAtW7pEBwx-dTFxeb80flQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pathwaygothicone/v16/MwQrbgD32-KAvjkYGNUUxAtW7pEBwx-tTVZa.ttf" - }, - { - "family": "Patrick Hand", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/patrickhand/v25/LDI1apSQOAYtSuYWp8ZhfYeMWcjKm7sp8g.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/patrickhand/v25/LDI1apSQOAYtSuYWp8ZhfYe8WMLO.ttf" - }, - { - "family": "Patrick Hand SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/patrickhandsc/v17/0nkwC9f7MfsBiWcLtY65AWDK873ViSi6JQc7Vg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/patrickhandsc/v17/0nkwC9f7MfsBiWcLtY65AWDK873liCK-.ttf" - }, - { - "family": "Pattaya", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/pattaya/v18/ea8ZadcqV_zkHY-XNdCn92ZEmVs.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pattaya/v18/ea8ZadcqV_zkHY-XBdGt8w.ttf" - }, - { - "family": "Patua One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/patuaone/v22/ZXuke1cDvLCKLDcimxBI5PNvNA9LuA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/patuaone/v22/ZXuke1cDvLCKLDcimxB45flr.ttf" - }, - { - "family": "Pavanam", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil" - ], - "version": "v13", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/pavanam/v13/BXRrvF_aiezLh0xPDOtQ9Wf0QcE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pavanam/v13/BXRrvF_aiezLh0xPPOpa8Q.ttf" - }, - { - "family": "Paytone One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/paytoneone/v25/0nksC9P7MfYHj2oFtYm2CiTqivr9iBq_.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/paytoneone/v25/0nksC9P7MfYHj2oFtYm2ChTrgP4.ttf" - }, - { - "family": "Peddana", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/peddana/v24/aFTU7PBhaX89UcKWhh2aBYyMcKw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/peddana/v24/aFTU7PBhaX89UcKWthyQAQ.ttf" - }, - { - "family": "Peralta", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/peralta/v21/hYkJPu0-RP_9d3kRGxAhrv956B8.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/peralta/v21/hYkJPu0-RP_9d3kRKxErqg.ttf" - }, - { - "family": "Permanent Marker", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/permanentmarker/v16/Fh4uPib9Iyv2ucM6pGQMWimMp004HaqIfrT5nlk.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/permanentmarker/v16/Fh4uPib9Iyv2ucM6pGQMWimMp004LauCeg.ttf" - }, - { - "family": "Petemoss", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/petemoss/v9/A2BZn5tA2xgtGWHZgxkesKb9UouQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/petemoss/v9/A2BZn5tA2xgtGWHZgykfuqI.ttf" - }, - { - "family": "Petit Formal Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/petitformalscript/v19/B50TF6xQr2TXJBnGOFME6u5OR83oRP5qoHnqP4gZSiE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/petitformalscript/v19/B50TF6xQr2TXJBnGOFME6u5OR83oRP5qkHjgOw.ttf" - }, - { - "family": "Petrona", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v36", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/petrona/v36/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6NsARBH452Mvds.ttf", - "200": "https://fonts.gstatic.com/s/petrona/v36/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4NsQRBH452Mvds.ttf", - "300": "https://fonts.gstatic.com/s/petrona/v36/mtGl4_NXL7bZo9XXq35wRLONYyOjFk7TsQRBH452Mvds.ttf", - "regular": "https://fonts.gstatic.com/s/petrona/v36/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6NsQRBH452Mvds.ttf", - "500": "https://fonts.gstatic.com/s/petrona/v36/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6_sQRBH452Mvds.ttf", - "600": "https://fonts.gstatic.com/s/petrona/v36/mtGl4_NXL7bZo9XXq35wRLONYyOjFk5TtgRBH452Mvds.ttf", - "700": "https://fonts.gstatic.com/s/petrona/v36/mtGl4_NXL7bZo9XXq35wRLONYyOjFk5qtgRBH452Mvds.ttf", - "800": "https://fonts.gstatic.com/s/petrona/v36/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4NtgRBH452Mvds.ttf", - "900": "https://fonts.gstatic.com/s/petrona/v36/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4ktgRBH452Mvds.ttf", - "100italic": "https://fonts.gstatic.com/s/petrona/v36/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8uwDFYpUN-dsIWs.ttf", - "200italic": "https://fonts.gstatic.com/s/petrona/v36/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8mwCFYpUN-dsIWs.ttf", - "300italic": "https://fonts.gstatic.com/s/petrona/v36/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8rICFYpUN-dsIWs.ttf", - "italic": "https://fonts.gstatic.com/s/petrona/v36/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8uwCFYpUN-dsIWs.ttf", - "500italic": "https://fonts.gstatic.com/s/petrona/v36/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8t4CFYpUN-dsIWs.ttf", - "600italic": "https://fonts.gstatic.com/s/petrona/v36/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8jIFFYpUN-dsIWs.ttf", - "700italic": "https://fonts.gstatic.com/s/petrona/v36/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8gsFFYpUN-dsIWs.ttf", - "800italic": "https://fonts.gstatic.com/s/petrona/v36/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8mwFFYpUN-dsIWs.ttf", - "900italic": "https://fonts.gstatic.com/s/petrona/v36/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8kUFFYpUN-dsIWs.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/petrona/v36/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6NsTRAFYo.ttf" - }, - { - "family": "Phetsarath", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "lao" - ], - "version": "v3", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/phetsarath/v3/N0bQ2SpTP-plK0uWayAYAd79nd_QeZA.ttf", - "700": "https://fonts.gstatic.com/s/phetsarath/v3/N0bT2SpTP-plK0uWayAYOWLSudf7ZZlIHD0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/phetsarath/v3/N0bQ2SpTP-plK0uWayAYMd_3mQ.ttf" - }, - { - "family": "Philosopher", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/philosopher/v21/vEFV2_5QCwIS4_Dhez5jcVBpRUwU08qe.ttf", - "italic": "https://fonts.gstatic.com/s/philosopher/v21/vEFX2_5QCwIS4_Dhez5jcWBrT0g21tqeR7c.ttf", - "700": "https://fonts.gstatic.com/s/philosopher/v21/vEFI2_5QCwIS4_Dhez5jcWjVamgc-NaXXq7H.ttf", - "700italic": "https://fonts.gstatic.com/s/philosopher/v21/vEFK2_5QCwIS4_Dhez5jcWBrd_QZ8tK1W77HtMo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/philosopher/v21/vEFV2_5QCwIS4_Dhez5jcWBoT0g.ttf" - }, - { - "family": "Phudu", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/phudu/v6/0FlJVPSHk0ya-7OUeO_U-Lwm7PkK62zUSwWuz38Tgg.ttf", - "regular": "https://fonts.gstatic.com/s/phudu/v6/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKtWzUSwWuz38Tgg.ttf", - "500": "https://fonts.gstatic.com/s/phudu/v6/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKh2zUSwWuz38Tgg.ttf", - "600": "https://fonts.gstatic.com/s/phudu/v6/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKa2vUSwWuz38Tgg.ttf", - "700": "https://fonts.gstatic.com/s/phudu/v6/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKUmvUSwWuz38Tgg.ttf", - "800": "https://fonts.gstatic.com/s/phudu/v6/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKNWvUSwWuz38Tgg.ttf", - "900": "https://fonts.gstatic.com/s/phudu/v6/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKHGvUSwWuz38Tgg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/phudu/v6/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKtWzkSg-q.ttf" - }, - { - "family": "Piazzolla", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v40", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/piazzolla/v40/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LYx3Ly1AHfAAy5.ttf", - "200": "https://fonts.gstatic.com/s/piazzolla/v40/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JYxnLy1AHfAAy5.ttf", - "300": "https://fonts.gstatic.com/s/piazzolla/v40/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7KGxnLy1AHfAAy5.ttf", - "regular": "https://fonts.gstatic.com/s/piazzolla/v40/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LYxnLy1AHfAAy5.ttf", - "500": "https://fonts.gstatic.com/s/piazzolla/v40/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LqxnLy1AHfAAy5.ttf", - "600": "https://fonts.gstatic.com/s/piazzolla/v40/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7IGwXLy1AHfAAy5.ttf", - "700": "https://fonts.gstatic.com/s/piazzolla/v40/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7I_wXLy1AHfAAy5.ttf", - "800": "https://fonts.gstatic.com/s/piazzolla/v40/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JYwXLy1AHfAAy5.ttf", - "900": "https://fonts.gstatic.com/s/piazzolla/v40/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JxwXLy1AHfAAy5.ttf", - "100italic": "https://fonts.gstatic.com/s/piazzolla/v40/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhZqw3gX9BRy5m5M.ttf", - "200italic": "https://fonts.gstatic.com/s/piazzolla/v40/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhRqx3gX9BRy5m5M.ttf", - "300italic": "https://fonts.gstatic.com/s/piazzolla/v40/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhcSx3gX9BRy5m5M.ttf", - "italic": "https://fonts.gstatic.com/s/piazzolla/v40/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhZqx3gX9BRy5m5M.ttf", - "500italic": "https://fonts.gstatic.com/s/piazzolla/v40/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhaix3gX9BRy5m5M.ttf", - "600italic": "https://fonts.gstatic.com/s/piazzolla/v40/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhUS23gX9BRy5m5M.ttf", - "700italic": "https://fonts.gstatic.com/s/piazzolla/v40/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhX223gX9BRy5m5M.ttf", - "800italic": "https://fonts.gstatic.com/s/piazzolla/v40/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhRq23gX9BRy5m5M.ttf", - "900italic": "https://fonts.gstatic.com/s/piazzolla/v40/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhTO23gX9BRy5m5M.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/piazzolla/v40/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LYxkLz3gU.ttf" - }, - { - "family": "Piedra", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/piedra/v27/ke8kOg8aN0Bn7hTunEyHN_M3gA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/piedra/v27/ke8kOg8aN0Bn7hTenUaD.ttf" - }, - { - "family": "Pinyon Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/pinyonscript/v24/6xKpdSJbL9-e9LuoeQiDRQR8aOLQO4bhiDY.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pinyonscript/v24/6xKpdSJbL9-e9LuoeQiDRQR8WOPaPw.ttf" - }, - { - "family": "Pirata One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/pirataone/v23/I_urMpiDvgLdLh0fAtoftiiEr5_BdZ8.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pirataone/v23/I_urMpiDvgLdLh0fAtofhimOqw.ttf" - }, - { - "family": "Pixelify Sans", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/pixelifysans/v3/CHy2V-3HFUT7aC4iv1TxGDR9DHEserHN25py2TTp0H1Yb5JagkmX.ttf", - "500": "https://fonts.gstatic.com/s/pixelifysans/v3/CHy2V-3HFUT7aC4iv1TxGDR9DHEserHN25py2TTb0H1Yb5JagkmX.ttf", - "600": "https://fonts.gstatic.com/s/pixelifysans/v3/CHy2V-3HFUT7aC4iv1TxGDR9DHEserHN25py2TQ3131Yb5JagkmX.ttf", - "700": "https://fonts.gstatic.com/s/pixelifysans/v3/CHy2V-3HFUT7aC4iv1TxGDR9DHEserHN25py2TQO131Yb5JagkmX.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pixelifysans/v3/CHy2V-3HFUT7aC4iv1TxGDR9DHEserHN25py2TTp0E1ZZZY.ttf" - }, - { - "family": "Plaster", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/plaster/v25/DdTm79QatW80eRh4Ei5JOtLOeLI.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/plaster/v25/DdTm79QatW80eRh4Ii9DPg.ttf" - }, - { - "family": "Platypi", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/platypi/v6/bMromSGU7pMlaX6-PAmuwBQP4Hwe02It4p9juxgnYP1P.ttf", - "regular": "https://fonts.gstatic.com/s/platypi/v6/bMromSGU7pMlaX6-PAmuwBQP4Hwe02Jz4p9juxgnYP1P.ttf", - "500": "https://fonts.gstatic.com/s/platypi/v6/bMromSGU7pMlaX6-PAmuwBQP4Hwe02JB4p9juxgnYP1P.ttf", - "600": "https://fonts.gstatic.com/s/platypi/v6/bMromSGU7pMlaX6-PAmuwBQP4Hwe02Kt5Z9juxgnYP1P.ttf", - "700": "https://fonts.gstatic.com/s/platypi/v6/bMromSGU7pMlaX6-PAmuwBQP4Hwe02KU5Z9juxgnYP1P.ttf", - "800": "https://fonts.gstatic.com/s/platypi/v6/bMromSGU7pMlaX6-PAmuwBQP4Hwe02Lz5Z9juxgnYP1P.ttf", - "300italic": "https://fonts.gstatic.com/s/platypi/v6/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7oSkgsRwFZe1PPTo.ttf", - "italic": "https://fonts.gstatic.com/s/platypi/v6/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7oXcgsRwFZe1PPTo.ttf", - "500italic": "https://fonts.gstatic.com/s/platypi/v6/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7oUUgsRwFZe1PPTo.ttf", - "600italic": "https://fonts.gstatic.com/s/platypi/v6/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7oaknsRwFZe1PPTo.ttf", - "700italic": "https://fonts.gstatic.com/s/platypi/v6/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7oZAnsRwFZe1PPTo.ttf", - "800italic": "https://fonts.gstatic.com/s/platypi/v6/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7ofcnsRwFZe1PPTo.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/platypi/v6/bMromSGU7pMlaX6-PAmuwBQP4Hwe02Jz4q9isRw.ttf" - }, - { - "family": "Play", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/play/v21/6aez4K2oVqwIjtI8Hp8Tx3A.ttf", - "700": "https://fonts.gstatic.com/s/play/v21/6ae84K2oVqwItm4TOpc423nTJTM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/play/v21/6aez4K2oVqwIvtM2Gg.ttf" - }, - { - "family": "Playball", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/playball/v22/TK3gWksYAxQ7jbsKcj8Dl-tPKo2t.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playball/v22/TK3gWksYAxQ7jbsKcg8Cne8.ttf" - }, - { - "family": "Playfair", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v10", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/playfair/v10/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPlKetgdoSMw5ifm.ttf", - "regular": "https://fonts.gstatic.com/s/playfair/v10/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPkUetgdoSMw5ifm.ttf", - "500": "https://fonts.gstatic.com/s/playfair/v10/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPkmetgdoSMw5ifm.ttf", - "600": "https://fonts.gstatic.com/s/playfair/v10/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPnKfdgdoSMw5ifm.ttf", - "700": "https://fonts.gstatic.com/s/playfair/v10/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPnzfdgdoSMw5ifm.ttf", - "800": "https://fonts.gstatic.com/s/playfair/v10/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPmUfdgdoSMw5ifm.ttf", - "900": "https://fonts.gstatic.com/s/playfair/v10/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPm9fdgdoSMw5ifm.ttf", - "300italic": "https://fonts.gstatic.com/s/playfair/v10/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOW5eqycS4zfmNrE.ttf", - "italic": "https://fonts.gstatic.com/s/playfair/v10/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOTBeqycS4zfmNrE.ttf", - "500italic": "https://fonts.gstatic.com/s/playfair/v10/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOQJeqycS4zfmNrE.ttf", - "600italic": "https://fonts.gstatic.com/s/playfair/v10/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOe5ZqycS4zfmNrE.ttf", - "700italic": "https://fonts.gstatic.com/s/playfair/v10/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOddZqycS4zfmNrE.ttf", - "800italic": "https://fonts.gstatic.com/s/playfair/v10/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcObBZqycS4zfmNrE.ttf", - "900italic": "https://fonts.gstatic.com/s/playfair/v10/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOZlZqycS4zfmNrE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playfair/v10/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPkUeugcqyc.ttf" - }, - { - "family": "Playfair Display", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v40", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKdFvUDQZNLo_U2r.ttf", - "500": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKd3vUDQZNLo_U2r.ttf", - "600": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKebukDQZNLo_U2r.ttf", - "700": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKeiukDQZNLo_U2r.ttf", - "800": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKfFukDQZNLo_U2r.ttf", - "900": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKfsukDQZNLo_U2r.ttf", - "italic": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_qiTbtbK-F2rA0s.ttf", - "500italic": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_pqTbtbK-F2rA0s.ttf", - "600italic": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_naUbtbK-F2rA0s.ttf", - "700italic": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_k-UbtbK-F2rA0s.ttf", - "800italic": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_iiUbtbK-F2rA0s.ttf", - "900italic": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_gGUbtbK-F2rA0s.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playfairdisplay/v40/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKdFvXDRbtY.ttf" - }, - { - "family": "Playfair Display SC", - "variants": [ - "regular", - "italic", - "700", - "700italic", - "900", - "900italic" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/playfairdisplaysc/v18/ke85OhoaMkR6-hSn7kbHVoFf7ZfgMPr_pb4GEcM2M4s.ttf", - "italic": "https://fonts.gstatic.com/s/playfairdisplaysc/v18/ke87OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbwMFeEzI4sNKg.ttf", - "700": "https://fonts.gstatic.com/s/playfairdisplaysc/v18/ke80OhoaMkR6-hSn7kbHVoFf7ZfgMPr_nQIpNcsdL4IUMyE.ttf", - "700italic": "https://fonts.gstatic.com/s/playfairdisplaysc/v18/ke82OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw0qc4XK6ARIyH5IA.ttf", - "900": "https://fonts.gstatic.com/s/playfairdisplaysc/v18/ke80OhoaMkR6-hSn7kbHVoFf7ZfgMPr_nTorNcsdL4IUMyE.ttf", - "900italic": "https://fonts.gstatic.com/s/playfairdisplaysc/v18/ke82OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw0kcwXK6ARIyH5IA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playfairdisplaysc/v18/ke85OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lb8MFQ.ttf" - }, - { - "family": "Playpen Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "emoji", - "greek", - "latin", - "latin-ext", - "math", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playpensans/v22/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IvRgunQ9Ffmme0w.ttf", - "200": "https://fonts.gstatic.com/s/playpensans/v22/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4InRhunQ9Ffmme0w.ttf", - "300": "https://fonts.gstatic.com/s/playpensans/v22/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IqphunQ9Ffmme0w.ttf", - "regular": "https://fonts.gstatic.com/s/playpensans/v22/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IvRhunQ9Ffmme0w.ttf", - "500": "https://fonts.gstatic.com/s/playpensans/v22/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IsZhunQ9Ffmme0w.ttf", - "600": "https://fonts.gstatic.com/s/playpensans/v22/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IipmunQ9Ffmme0w.ttf", - "700": "https://fonts.gstatic.com/s/playpensans/v22/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IhNmunQ9Ffmme0w.ttf", - "800": "https://fonts.gstatic.com/s/playpensans/v22/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4InRmunQ9Ffmme0w.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playpensans/v22/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IvRhinU3EQ.ttf" - }, - { - "family": "Playpen Sans Arabic", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "arabic", - "emoji", - "latin", - "latin-ext", - "math" - ], - "version": "v8", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/playpensansarabic/v8/KtkGAKiSeo38bkPvhIqjU6aCgha2der-Z4VIEhR8sOKet-ZBobPcBO1L0EHE.ttf", - "200": "https://fonts.gstatic.com/s/playpensansarabic/v8/KtkGAKiSeo38bkPvhIqjU6aCgha2der-Z4VIEhR8sOKet-bBoLPcBO1L0EHE.ttf", - "300": "https://fonts.gstatic.com/s/playpensansarabic/v8/KtkGAKiSeo38bkPvhIqjU6aCgha2der-Z4VIEhR8sOKet-YfoLPcBO1L0EHE.ttf", - "regular": "https://fonts.gstatic.com/s/playpensansarabic/v8/KtkGAKiSeo38bkPvhIqjU6aCgha2der-Z4VIEhR8sOKet-ZBoLPcBO1L0EHE.ttf", - "500": "https://fonts.gstatic.com/s/playpensansarabic/v8/KtkGAKiSeo38bkPvhIqjU6aCgha2der-Z4VIEhR8sOKet-ZzoLPcBO1L0EHE.ttf", - "600": "https://fonts.gstatic.com/s/playpensansarabic/v8/KtkGAKiSeo38bkPvhIqjU6aCgha2der-Z4VIEhR8sOKet-afp7PcBO1L0EHE.ttf", - "700": "https://fonts.gstatic.com/s/playpensansarabic/v8/KtkGAKiSeo38bkPvhIqjU6aCgha2der-Z4VIEhR8sOKet-amp7PcBO1L0EHE.ttf", - "800": "https://fonts.gstatic.com/s/playpensansarabic/v8/KtkGAKiSeo38bkPvhIqjU6aCgha2der-Z4VIEhR8sOKet-bBp7PcBO1L0EHE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playpensansarabic/v8/KtkGAKiSeo38bkPvhIqjU6aCgha2der-Z4VIEhR8sOKet-ZBoIPdDuk.ttf" - }, - { - "family": "Playpen Sans Deva", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "devanagari", - "emoji", - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/playpensansdeva/v4/vm8fdQj0UUbMxObnsO17RZ7pPBuJge10OmPLCiz-HCrQ0xgUG_5NygdkiQ.ttf", - "200": "https://fonts.gstatic.com/s/playpensansdeva/v4/vm8fdQj0UUbMxObnsO17RZ7pPBuJge10OmPLCiz-HCrQUxkUG_5NygdkiQ.ttf", - "300": "https://fonts.gstatic.com/s/playpensansdeva/v4/vm8fdQj0UUbMxObnsO17RZ7pPBuJge10OmPLCiz-HCrQjRkUG_5NygdkiQ.ttf", - "regular": "https://fonts.gstatic.com/s/playpensansdeva/v4/vm8fdQj0UUbMxObnsO17RZ7pPBuJge10OmPLCiz-HCrQ0xkUG_5NygdkiQ.ttf", - "500": "https://fonts.gstatic.com/s/playpensansdeva/v4/vm8fdQj0UUbMxObnsO17RZ7pPBuJge10OmPLCiz-HCrQ4RkUG_5NygdkiQ.ttf", - "600": "https://fonts.gstatic.com/s/playpensansdeva/v4/vm8fdQj0UUbMxObnsO17RZ7pPBuJge10OmPLCiz-HCrQDR4UG_5NygdkiQ.ttf", - "700": "https://fonts.gstatic.com/s/playpensansdeva/v4/vm8fdQj0UUbMxObnsO17RZ7pPBuJge10OmPLCiz-HCrQNB4UG_5NygdkiQ.ttf", - "800": "https://fonts.gstatic.com/s/playpensansdeva/v4/vm8fdQj0UUbMxObnsO17RZ7pPBuJge10OmPLCiz-HCrQUx4UG_5NygdkiQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playpensansdeva/v4/vm8fdQj0UUbMxObnsO17RZ7pPBuJge10OmPLCiz-HCrQ0xkkGvRJ.ttf" - }, - { - "family": "Playpen Sans Hebrew", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "emoji", - "hebrew", - "latin", - "latin-ext", - "math" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playpensanshebrew/v8/lJws-okuj29wT-AN6RvLx8QqjkKhL7eAjoL9jK7L4vstDnnp5pC63VFfsRss.ttf", - "200": "https://fonts.gstatic.com/s/playpensanshebrew/v8/lJws-okuj29wT-AN6RvLx8QqjkKhL7eAjoL9jK7L4vstDnlp55C63VFfsRss.ttf", - "300": "https://fonts.gstatic.com/s/playpensanshebrew/v8/lJws-okuj29wT-AN6RvLx8QqjkKhL7eAjoL9jK7L4vstDnm355C63VFfsRss.ttf", - "regular": "https://fonts.gstatic.com/s/playpensanshebrew/v8/lJws-okuj29wT-AN6RvLx8QqjkKhL7eAjoL9jK7L4vstDnnp55C63VFfsRss.ttf", - "500": "https://fonts.gstatic.com/s/playpensanshebrew/v8/lJws-okuj29wT-AN6RvLx8QqjkKhL7eAjoL9jK7L4vstDnnb55C63VFfsRss.ttf", - "600": "https://fonts.gstatic.com/s/playpensanshebrew/v8/lJws-okuj29wT-AN6RvLx8QqjkKhL7eAjoL9jK7L4vstDnk34JC63VFfsRss.ttf", - "700": "https://fonts.gstatic.com/s/playpensanshebrew/v8/lJws-okuj29wT-AN6RvLx8QqjkKhL7eAjoL9jK7L4vstDnkO4JC63VFfsRss.ttf", - "800": "https://fonts.gstatic.com/s/playpensanshebrew/v8/lJws-okuj29wT-AN6RvLx8QqjkKhL7eAjoL9jK7L4vstDnlp4JC63VFfsRss.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playpensanshebrew/v8/lJws-okuj29wT-AN6RvLx8QqjkKhL7eAjoL9jK7L4vstDnnp56C711U.ttf" - }, - { - "family": "Playpen Sans Thai", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "emoji", - "latin", - "latin-ext", - "math", - "thai" - ], - "version": "v8", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/playpensansthai/v8/VdG3AYIdG5kSgHwmKT9wYu2rs0cBsu-N7E_aclWp2hxLghGPoxxAISLTzA.ttf", - "200": "https://fonts.gstatic.com/s/playpensansthai/v8/VdG3AYIdG5kSgHwmKT9wYu2rs0cBsu-N7E_aclWp2hxLAhCPoxxAISLTzA.ttf", - "300": "https://fonts.gstatic.com/s/playpensansthai/v8/VdG3AYIdG5kSgHwmKT9wYu2rs0cBsu-N7E_aclWp2hxL3BCPoxxAISLTzA.ttf", - "regular": "https://fonts.gstatic.com/s/playpensansthai/v8/VdG3AYIdG5kSgHwmKT9wYu2rs0cBsu-N7E_aclWp2hxLghCPoxxAISLTzA.ttf", - "500": "https://fonts.gstatic.com/s/playpensansthai/v8/VdG3AYIdG5kSgHwmKT9wYu2rs0cBsu-N7E_aclWp2hxLsBCPoxxAISLTzA.ttf", - "600": "https://fonts.gstatic.com/s/playpensansthai/v8/VdG3AYIdG5kSgHwmKT9wYu2rs0cBsu-N7E_aclWp2hxLXBePoxxAISLTzA.ttf", - "700": "https://fonts.gstatic.com/s/playpensansthai/v8/VdG3AYIdG5kSgHwmKT9wYu2rs0cBsu-N7E_aclWp2hxLZRePoxxAISLTzA.ttf", - "800": "https://fonts.gstatic.com/s/playpensansthai/v8/VdG3AYIdG5kSgHwmKT9wYu2rs0cBsu-N7E_aclWp2hxLAhePoxxAISLTzA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playpensansthai/v8/VdG3AYIdG5kSgHwmKT9wYu2rs0cBsu-N7E_aclWp2hxLghC_ohZE.ttf" - }, - { - "family": "Playwrite AR", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playwritear/v6/VEMjRohisJz5pTCzruCNjWbfp_N-aNWqYgKS-fteqf-ES67xIO8.ttf", - "200": "https://fonts.gstatic.com/s/playwritear/v6/VEMjRohisJz5pTCzruCNjWbfp_N-aNWqYgKS-Xtfqf-ES67xIO8.ttf", - "300": "https://fonts.gstatic.com/s/playwritear/v6/VEMjRohisJz5pTCzruCNjWbfp_N-aNWqYgKS-aVfqf-ES67xIO8.ttf", - "regular": "https://fonts.gstatic.com/s/playwritear/v6/VEMjRohisJz5pTCzruCNjWbfp_N-aNWqYgKS-ftfqf-ES67xIO8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritear/v6/VEMjRohisJz5pTCzruCNjWbfp_N-aNWqYgKS-ftfmf6OTw.ttf" - }, - { - "family": "Playwrite AR Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v5", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritearguides/v5/iJWYBWqKZTrYS9uv-Ry6kDf-q_0Xq67mcGUaW4_MiYQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritearguides/v5/iJWYBWqKZTrYS9uv-Ry6kDf-q_0Xq67mQGQQXw.ttf" - }, - { - "family": "Playwrite AT", - "variants": [ - "100", - "200", - "300", - "regular", - "100italic", - "200italic", - "300italic", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteat/v6/Gw6owc7n6kfJN4fVoKON7HIEBRSfb0U2uGBm2M77d03MLIHJ-rk.ttf", - "200": "https://fonts.gstatic.com/s/playwriteat/v6/Gw6owc7n6kfJN4fVoKON7HIEBRSfb0U2uGBm2E76d03MLIHJ-rk.ttf", - "300": "https://fonts.gstatic.com/s/playwriteat/v6/Gw6owc7n6kfJN4fVoKON7HIEBRSfb0U2uGBm2JD6d03MLIHJ-rk.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteat/v6/Gw6owc7n6kfJN4fVoKON7HIEBRSfb0U2uGBm2M76d03MLIHJ-rk.ttf", - "100italic": "https://fonts.gstatic.com/s/playwriteat/v6/Gw6uwc7n6kfJN4fVoKON7HIuDCZgtyxdIs5hzQa5nw_GKKPM6rkyVg.ttf", - "200italic": "https://fonts.gstatic.com/s/playwriteat/v6/Gw6uwc7n6kfJN4fVoKON7HIuDCZgtyxdIs5hzQa5Hw7GKKPM6rkyVg.ttf", - "300italic": "https://fonts.gstatic.com/s/playwriteat/v6/Gw6uwc7n6kfJN4fVoKON7HIuDCZgtyxdIs5hzQa5wQ7GKKPM6rkyVg.ttf", - "italic": "https://fonts.gstatic.com/s/playwriteat/v6/Gw6uwc7n6kfJN4fVoKON7HIuDCZgtyxdIs5hzQa5nw7GKKPM6rkyVg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteat/v6/Gw6owc7n6kfJN4fVoKON7HIEBRSfb0U2uGBm2M76R0zGKA.ttf" - }, - { - "family": "Playwrite AT Guides", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteatguides/v1/QdVKSS0gJR2xneUeQPfE-FVA1BlZQRpBRbgJdhapcUU.ttf", - "italic": "https://fonts.gstatic.com/s/playwriteatguides/v1/QdVISS0gJR2xneUeQPfE-FVA1BlZQRpBdboDcjSsYUVUjg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteatguides/v1/QdVKSS0gJR2xneUeQPfE-FVA1BlZQRpBdbkDcg.ttf" - }, - { - "family": "Playwrite AU NSW", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteaunsw/v11/6qLWKY4NtxD-qVlIPUIPenElWCCEWRgilpupBXi19xZjML96TD2dC1gS.ttf", - "200": "https://fonts.gstatic.com/s/playwriteaunsw/v11/6qLWKY4NtxD-qVlIPUIPenElWCCEWRgilpupBXi19xbjMb96TD2dC1gS.ttf", - "300": "https://fonts.gstatic.com/s/playwriteaunsw/v11/6qLWKY4NtxD-qVlIPUIPenElWCCEWRgilpupBXi19xY9Mb96TD2dC1gS.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteaunsw/v11/6qLWKY4NtxD-qVlIPUIPenElWCCEWRgilpupBXi19xZjMb96TD2dC1gS.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteaunsw/v11/6qLWKY4NtxD-qVlIPUIPenElWCCEWRgilpupBXi19xZjMY97Rjk.ttf" - }, - { - "family": "Playwrite AU NSW Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteaunswguides/v1/LDIiao-QNRMmVPcU8-sgUraMF7GZs_1Emk3v8tPbZeQ3YBXs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteaunswguides/v1/LDIiao-QNRMmVPcU8-sgUraMF7GZs_1Emk3v8uPab-A.ttf" - }, - { - "family": "Playwrite AU QLD", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteauqld/v11/SlGGmR-Yo5oYZX5BFVcEwSFSOXBRWADAWbgjmLBhA6-yMY2fqm1BV-XS.ttf", - "200": "https://fonts.gstatic.com/s/playwriteauqld/v11/SlGGmR-Yo5oYZX5BFVcEwSFSOXBRWADAWbgjmLBhA68yMI2fqm1BV-XS.ttf", - "300": "https://fonts.gstatic.com/s/playwriteauqld/v11/SlGGmR-Yo5oYZX5BFVcEwSFSOXBRWADAWbgjmLBhA6_sMI2fqm1BV-XS.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteauqld/v11/SlGGmR-Yo5oYZX5BFVcEwSFSOXBRWADAWbgjmLBhA6-yMI2fqm1BV-XS.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteauqld/v11/SlGGmR-Yo5oYZX5BFVcEwSFSOXBRWADAWbgjmLBhA6-yML2eoGk.ttf" - }, - { - "family": "Playwrite AU QLD Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteauqldguides/v1/TuGBUUJtX5tTUfQi_7kbiZZFVhl0FIKnvy00LDxlIzIU5RwD.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteauqldguides/v1/TuGBUUJtX5tTUfQi_7kbiZZFVhl0FIKnvy00LAxkKTY.ttf" - }, - { - "family": "Playwrite AU SA", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteausa/v11/YcmhsZpNS1SdgmHbGgtRuUElnR3CmSC5bVQVlrclpZgQcuVjCoV0bbE.ttf", - "200": "https://fonts.gstatic.com/s/playwriteausa/v11/YcmhsZpNS1SdgmHbGgtRuUElnR3CmSC5bVQVlrclpRgRcuVjCoV0bbE.ttf", - "300": "https://fonts.gstatic.com/s/playwriteausa/v11/YcmhsZpNS1SdgmHbGgtRuUElnR3CmSC5bVQVlrclpcYRcuVjCoV0bbE.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteausa/v11/YcmhsZpNS1SdgmHbGgtRuUElnR3CmSC5bVQVlrclpZgRcuVjCoV0bbE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteausa/v11/YcmhsZpNS1SdgmHbGgtRuUElnR3CmSC5bVQVlrclpZgRQuRpDg.ttf" - }, - { - "family": "Playwrite AU SA Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteausaguides/v1/3JnsSCLj03y8jUv7aFWBCCglBaFjl54aVBAovcgEP-Z3054.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteausaguides/v1/3JnsSCLj03y8jUv7aFWBCCglBaFjl54aVBAojckOOw.ttf" - }, - { - "family": "Playwrite AU TAS", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteautas/v11/GftT7u9QuxsdI_QuuctXue3ElxxmcBb3ih0opvWiLLUEHqK6Hl9WrXm4.ttf", - "200": "https://fonts.gstatic.com/s/playwriteautas/v11/GftT7u9QuxsdI_QuuctXue3ElxxmcBb3ih0opvWiLLWEH6K6Hl9WrXm4.ttf", - "300": "https://fonts.gstatic.com/s/playwriteautas/v11/GftT7u9QuxsdI_QuuctXue3ElxxmcBb3ih0opvWiLLVaH6K6Hl9WrXm4.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteautas/v11/GftT7u9QuxsdI_QuuctXue3ElxxmcBb3ih0opvWiLLUEH6K6Hl9WrXm4.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteautas/v11/GftT7u9QuxsdI_QuuctXue3ElxxmcBb3ih0opvWiLLUEH5K7FFs.ttf" - }, - { - "family": "Playwrite AU TAS Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteautasguides/v1/cY9Vfi6cVk5RvjGtQrLqjozy3ekUDtDMDX-NNjbKL4UbaDZD.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteautasguides/v1/cY9Vfi6cVk5RvjGtQrLqjozy3ekUDtDMDX-NNgbLJYE.ttf" - }, - { - "family": "Playwrite AU VIC", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteauvic/v11/bWtu7enUfwn0Hf1zjprKOJdcDy8rxwC1ltAeNDAAd4fTaLK0CBIDKNvl.ttf", - "200": "https://fonts.gstatic.com/s/playwriteauvic/v11/bWtu7enUfwn0Hf1zjprKOJdcDy8rxwC1ltAeNDAAd4dTabK0CBIDKNvl.ttf", - "300": "https://fonts.gstatic.com/s/playwriteauvic/v11/bWtu7enUfwn0Hf1zjprKOJdcDy8rxwC1ltAeNDAAd4eNabK0CBIDKNvl.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteauvic/v11/bWtu7enUfwn0Hf1zjprKOJdcDy8rxwC1ltAeNDAAd4fTabK0CBIDKNvl.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteauvic/v11/bWtu7enUfwn0Hf1zjprKOJdcDy8rxwC1ltAeNDAAd4fTaYK1AhY.ttf" - }, - { - "family": "Playwrite AU VIC Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteauvicguides/v1/ll8sK3mEVy6nEMXMskXIZv8owEdZpVIWaQEnuD6F2TpBa98q.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteauvicguides/v1/ll8sK3mEVy6nEMXMskXIZv8owEdZpVIWaQEnuA6E0z4.ttf" - }, - { - "family": "Playwrite BE VLG", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/playwritebevlg/v6/GFD8WBdug3mQSvrAT9AL6fd4ZkB-a2sDmg3dy2W0blL8vfCMMiyBIkNg.ttf", - "200": "https://fonts.gstatic.com/s/playwritebevlg/v6/GFD8WBdug3mQSvrAT9AL6fd4ZkB-a2sDmg3dy2W0blJ8vPCMMiyBIkNg.ttf", - "300": "https://fonts.gstatic.com/s/playwritebevlg/v6/GFD8WBdug3mQSvrAT9AL6fd4ZkB-a2sDmg3dy2W0blKivPCMMiyBIkNg.ttf", - "regular": "https://fonts.gstatic.com/s/playwritebevlg/v6/GFD8WBdug3mQSvrAT9AL6fd4ZkB-a2sDmg3dy2W0blL8vPCMMiyBIkNg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritebevlg/v6/GFD8WBdug3mQSvrAT9AL6fd4ZkB-a2sDmg3dy2W0blL8vMCNOCg.ttf" - }, - { - "family": "Playwrite BE VLG Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritebevlgguides/v2/EYqjmb1Mz6hO4edaU9qKGFZMDd_Q-zwwK__U1u9GK3nNgEoc.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritebevlgguides/v2/EYqjmb1Mz6hO4edaU9qKGFZMDd_Q-zwwK__U1t9HIX0.ttf" - }, - { - "family": "Playwrite BE WAL", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v7", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwritebewal/v7/DtV1Jwq5QbIzyrA6DHdJ2BksuUmanQtEYjAlv96WFsWCGfugHxwiSZp8.ttf", - "200": "https://fonts.gstatic.com/s/playwritebewal/v7/DtV1Jwq5QbIzyrA6DHdJ2BksuUmanQtEYjAlv96WFsUCGPugHxwiSZp8.ttf", - "300": "https://fonts.gstatic.com/s/playwritebewal/v7/DtV1Jwq5QbIzyrA6DHdJ2BksuUmanQtEYjAlv96WFsXcGPugHxwiSZp8.ttf", - "regular": "https://fonts.gstatic.com/s/playwritebewal/v7/DtV1Jwq5QbIzyrA6DHdJ2BksuUmanQtEYjAlv96WFsWCGPugHxwiSZp8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritebewal/v7/DtV1Jwq5QbIzyrA6DHdJ2BksuUmanQtEYjAlv96WFsWCGMuhFRg.ttf" - }, - { - "family": "Playwrite BE WAL Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritebewalguides/v1/l7gPbiR5yM62ycwevWCt02rrTFoEJvY4kyrrUzHlVJabaOSA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritebewalguides/v1/l7gPbiR5yM62ycwevWCt02rrTFoEJvY4kyrrUwHkXpI.ttf" - }, - { - "family": "Playwrite BR", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/playwritebr/v11/kJEhBuMK4Q07lDHc2Xp9vYgIp-6D3QEGCpthmFOOFsfjAOVZBgs.ttf", - "200": "https://fonts.gstatic.com/s/playwritebr/v11/kJEhBuMK4Q07lDHc2Xp9vYgIp-6D3QEGCpthmNOPFsfjAOVZBgs.ttf", - "300": "https://fonts.gstatic.com/s/playwritebr/v11/kJEhBuMK4Q07lDHc2Xp9vYgIp-6D3QEGCpthmA2PFsfjAOVZBgs.ttf", - "regular": "https://fonts.gstatic.com/s/playwritebr/v11/kJEhBuMK4Q07lDHc2Xp9vYgIp-6D3QEGCpthmFOPFsfjAOVZBgs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritebr/v11/kJEhBuMK4Q07lDHc2Xp9vYgIp-6D3QEGCpthmFOPJsbpBA.ttf" - }, - { - "family": "Playwrite BR Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritebrguides/v1/tssxAohQaiQS-wrnJz-F5CqW4dOezRwp-9cCOxBu_BM.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritebrguides/v1/tssxAohQaiQS-wrnJz-F5CqW4dOezRwpy9YIPw.ttf" - }, - { - "family": "Playwrite CA", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteca/v11/z7NGdR_4cT0NOrEAIElil93uR_VhfhYaYOijHiquYp261AIQU98.ttf", - "200": "https://fonts.gstatic.com/s/playwriteca/v11/z7NGdR_4cT0NOrEAIElil93uR_VhfhYaYOijHqqvYp261AIQU98.ttf", - "300": "https://fonts.gstatic.com/s/playwriteca/v11/z7NGdR_4cT0NOrEAIElil93uR_VhfhYaYOijHnSvYp261AIQU98.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteca/v11/z7NGdR_4cT0NOrEAIElil93uR_VhfhYaYOijHiqvYp261AIQU98.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteca/v11/z7NGdR_4cT0NOrEAIElil93uR_VhfhYaYOijHiqvUpyw0A.ttf" - }, - { - "family": "Playwrite CA Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritecaguides/v1/MjQamj1kuP_soQ3o-rysO9Ci_8oJlIUUInch3bTfcxs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritecaguides/v1/MjQamj1kuP_soQ3o-rysO9Ci_8oJlIUUEnYr2Q.ttf" - }, - { - "family": "Playwrite CL", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/playwritecl/v6/-zk391m7wssz_XLkGgu8hy3tqrcOhnbf6ForU8JbvLq3DyPNbus.ttf", - "200": "https://fonts.gstatic.com/s/playwritecl/v6/-zk391m7wssz_XLkGgu8hy3tqrcOhnbf6ForU0JavLq3DyPNbus.ttf", - "300": "https://fonts.gstatic.com/s/playwritecl/v6/-zk391m7wssz_XLkGgu8hy3tqrcOhnbf6ForU5xavLq3DyPNbus.ttf", - "regular": "https://fonts.gstatic.com/s/playwritecl/v6/-zk391m7wssz_XLkGgu8hy3tqrcOhnbf6ForU8JavLq3DyPNbus.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritecl/v6/-zk391m7wssz_XLkGgu8hy3tqrcOhnbf6ForU8JajLu9Cw.ttf" - }, - { - "family": "Playwrite CL Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteclguides/v2/Z9XKDnxTQxyGzOn3eMH-i6Ws0czqkE-hrNpVuw5_BAM.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteclguides/v2/Z9XKDnxTQxyGzOn3eMH-i6Ws0czqkE-hnNtfvw.ttf" - }, - { - "family": "Playwrite CO", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v13", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteco/v13/0FlGVP2Hl1iH-fv2BH4kJkgb8vH-rbJPTDqqx7ZJo-dOEhxX3Iw.ttf", - "200": "https://fonts.gstatic.com/s/playwriteco/v13/0FlGVP2Hl1iH-fv2BH4kJkgb8vH-rbJPTDqqxzZIo-dOEhxX3Iw.ttf", - "300": "https://fonts.gstatic.com/s/playwriteco/v13/0FlGVP2Hl1iH-fv2BH4kJkgb8vH-rbJPTDqqx-hIo-dOEhxX3Iw.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteco/v13/0FlGVP2Hl1iH-fv2BH4kJkgb8vH-rbJPTDqqx7ZIo-dOEhxX3Iw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteco/v13/0FlGVP2Hl1iH-fv2BH4kJkgb8vH-rbJPTDqqx7ZIk-ZEFg.ttf" - }, - { - "family": "Playwrite CO Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v5", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritecoguides/v5/AYCXpWvtftIVXepC5AzjAx1KgYPugOK0TqxTJw_GOM0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritecoguides/v5/AYCXpWvtftIVXepC5AzjAx1KgYPugOK0fq1ZIw.ttf" - }, - { - "family": "Playwrite CU", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/playwritecu/v6/VuJjdNDb2p7tvoFGLMPdf9xcahOpb9ZuoyXseRmwZeT7m2YIByI.ttf", - "200": "https://fonts.gstatic.com/s/playwritecu/v6/VuJjdNDb2p7tvoFGLMPdf9xcahOpb9ZuoyXseZmxZeT7m2YIByI.ttf", - "300": "https://fonts.gstatic.com/s/playwritecu/v6/VuJjdNDb2p7tvoFGLMPdf9xcahOpb9ZuoyXseUexZeT7m2YIByI.ttf", - "regular": "https://fonts.gstatic.com/s/playwritecu/v6/VuJjdNDb2p7tvoFGLMPdf9xcahOpb9ZuoyXseRmxZeT7m2YIByI.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritecu/v6/VuJjdNDb2p7tvoFGLMPdf9xcahOpb9ZuoyXseRmxVeXxnw.ttf" - }, - { - "family": "Playwrite CU Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritecuguides/v1/c4m81mZtG8v6p3iAoFBJ2dJdu9fWPSaOFooIDQtJbok.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritecuguides/v1/c4m81mZtG8v6p3iAoFBJ2dJdu9fWPSaOJosCCQ.ttf" - }, - { - "family": "Playwrite CZ", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/playwritecz/v6/8vIa7wYp22pt_BUChSHeVxxlOPUEKoMfap_FCI4aTqT_VkAS5X4.ttf", - "200": "https://fonts.gstatic.com/s/playwritecz/v6/8vIa7wYp22pt_BUChSHeVxxlOPUEKoMfap_FCA4bTqT_VkAS5X4.ttf", - "300": "https://fonts.gstatic.com/s/playwritecz/v6/8vIa7wYp22pt_BUChSHeVxxlOPUEKoMfap_FCNAbTqT_VkAS5X4.ttf", - "regular": "https://fonts.gstatic.com/s/playwritecz/v6/8vIa7wYp22pt_BUChSHeVxxlOPUEKoMfap_FCI4bTqT_VkAS5X4.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritecz/v6/8vIa7wYp22pt_BUChSHeVxxlOPUEKoMfap_FCI4bfqX1Ug.ttf" - }, - { - "family": "Playwrite CZ Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteczguides/v1/6qLcKY0NtxD-qVlIPUIPeH4lUQa6B3ZZQkseuneh7xc.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteczguides/v1/6qLcKY0NtxD-qVlIPUIPeH4lUQa6B3ZZckoUvg.ttf" - }, - { - "family": "Playwrite DE Grund", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwritedegrund/v11/EJR-QhwoXdccriFurnRxqv-1MFyKy696-4VufrEGGbTZz2qGZwCUOfSwZTM.ttf", - "200": "https://fonts.gstatic.com/s/playwritedegrund/v11/EJR-QhwoXdccriFurnRxqv-1MFyKy696-4VufrEGGbTZz-qHZwCUOfSwZTM.ttf", - "300": "https://fonts.gstatic.com/s/playwritedegrund/v11/EJR-QhwoXdccriFurnRxqv-1MFyKy696-4VufrEGGbTZzzSHZwCUOfSwZTM.ttf", - "regular": "https://fonts.gstatic.com/s/playwritedegrund/v11/EJR-QhwoXdccriFurnRxqv-1MFyKy696-4VufrEGGbTZz2qHZwCUOfSwZTM.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedegrund/v11/EJR-QhwoXdccriFurnRxqv-1MFyKy696-4VufrEGGbTZz2qHVwGePQ.ttf" - }, - { - "family": "Playwrite DE Grund Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritedegrundguides/v1/OD5RuNCQ02KrAHnha1L36CWcQ83dtK5BLxqexnduX98TJlnjHAA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedegrundguides/v1/OD5RuNCQ02KrAHnha1L36CWcQ83dtK5BLxqexndub94ZIg.ttf" - }, - { - "family": "Playwrite DE LA", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/playwritedela/v11/oY1J8e3fprboJ2HN4ogXTpFVJ8QjJV9p0P4yukst2FnrPgcigC5Ph2w.ttf", - "200": "https://fonts.gstatic.com/s/playwritedela/v11/oY1J8e3fprboJ2HN4ogXTpFVJ8QjJV9p0P4yukst2NnqPgcigC5Ph2w.ttf", - "300": "https://fonts.gstatic.com/s/playwritedela/v11/oY1J8e3fprboJ2HN4ogXTpFVJ8QjJV9p0P4yukst2AfqPgcigC5Ph2w.ttf", - "regular": "https://fonts.gstatic.com/s/playwritedela/v11/oY1J8e3fprboJ2HN4ogXTpFVJ8QjJV9p0P4yukst2FnqPgcigC5Ph2w.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedela/v11/oY1J8e3fprboJ2HN4ogXTpFVJ8QjJV9p0P4yukst2FnqDgYohA.ttf" - }, - { - "family": "Playwrite DE LA Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritedelaguides/v2/1q2XY42fB0V64O4aSe1OjKs_yAXBOfDI5wE56g2M62M1AXs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedelaguides/v2/1q2XY42fB0V64O4aSe1OjKs_yAXBOfDI5wE52gyG7w.ttf" - }, - { - "family": "Playwrite DE SAS", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwritedesas/v11/1Pt4g9vaRvmWghDdrE8IDuRPVrHN_1AaFXASpbMqJTeVg-6lSyVPgRkJ.ttf", - "200": "https://fonts.gstatic.com/s/playwritedesas/v11/1Pt4g9vaRvmWghDdrE8IDuRPVrHN_1AaFXASpbMqJTcVgu6lSyVPgRkJ.ttf", - "300": "https://fonts.gstatic.com/s/playwritedesas/v11/1Pt4g9vaRvmWghDdrE8IDuRPVrHN_1AaFXASpbMqJTfLgu6lSyVPgRkJ.ttf", - "regular": "https://fonts.gstatic.com/s/playwritedesas/v11/1Pt4g9vaRvmWghDdrE8IDuRPVrHN_1AaFXASpbMqJTeVgu6lSyVPgRkJ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedesas/v11/1Pt4g9vaRvmWghDdrE8IDuRPVrHN_1AaFXASpbMqJTeVgt6kQSE.ttf" - }, - { - "family": "Playwrite DE SAS Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritedesasguides/v1/8At5GtCjPp-GWR2h9cC6ePzz2l6LJ3VZaPNi15BEdtBgPI1G.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedesasguides/v1/8At5GtCjPp-GWR2h9cC6ePzz2l6LJ3VZaPNi16BFfNQ.ttf" - }, - { - "family": "Playwrite DE VA", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/playwritedeva/v11/VuJmdNPb2p7tvoFGLMPdeMxGN1pntEMhdK1XfsTyRSyTv24jGyvutu4.ttf", - "200": "https://fonts.gstatic.com/s/playwritedeva/v11/VuJmdNPb2p7tvoFGLMPdeMxGN1pntEMhdK1XfsTyRaySv24jGyvutu4.ttf", - "300": "https://fonts.gstatic.com/s/playwritedeva/v11/VuJmdNPb2p7tvoFGLMPdeMxGN1pntEMhdK1XfsTyRXKSv24jGyvutu4.ttf", - "regular": "https://fonts.gstatic.com/s/playwritedeva/v11/VuJmdNPb2p7tvoFGLMPdeMxGN1pntEMhdK1XfsTyRSySv24jGyvutu4.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedeva/v11/VuJmdNPb2p7tvoFGLMPdeMxGN1pntEMhdK1XfsTyRSySj28pHw.ttf" - }, - { - "family": "Playwrite DE VA Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritedevaguides/v1/WwkPxOmkDVqm-ojMLT_kdMUoBpMYm6KTeb28UB9SNQIUdqQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedevaguides/v1/WwkPxOmkDVqm-ojMLT_kdMUoBpMYm6KTeb28YB5YMQ.ttf" - }, - { - "family": "Playwrite DK Loopet", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwritedkloopet/v6/memVYbuzy2qb3rtJGfM1FvY-GacDcsPvtaDfqfgbBWmV75JJwOgRuQovSE8_.ttf", - "200": "https://fonts.gstatic.com/s/playwritedkloopet/v6/memVYbuzy2qb3rtJGfM1FvY-GacDcsPvtaDfqfgbBWmV75LJwegRuQovSE8_.ttf", - "300": "https://fonts.gstatic.com/s/playwritedkloopet/v6/memVYbuzy2qb3rtJGfM1FvY-GacDcsPvtaDfqfgbBWmV75IXwegRuQovSE8_.ttf", - "regular": "https://fonts.gstatic.com/s/playwritedkloopet/v6/memVYbuzy2qb3rtJGfM1FvY-GacDcsPvtaDfqfgbBWmV75JJwegRuQovSE8_.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedkloopet/v6/memVYbuzy2qb3rtJGfM1FvY-GacDcsPvtaDfqfgbBWmV75JJwdgQsw4.ttf" - }, - { - "family": "Playwrite DK Loopet Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritedkloopetguides/v1/4iC46LlmYsRPlQ1zDEvT8weoW-sI8-h9xxN83W-Cb5tmElj-b0nB.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedkloopetguides/v1/4iC46LlmYsRPlQ1zDEvT8weoW-sI8-h9xxN83W-Cb6tnGFw.ttf" - }, - { - "family": "Playwrite DK Uloopet", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playwritedkuloopet/v6/bWtS7e3Ufwn0Hf1zjprKPYlcDAoHknvYFjqIh8PF6jwcP5K06lQrKeng6LUzAA.ttf", - "200": "https://fonts.gstatic.com/s/playwritedkuloopet/v6/bWtS7e3Ufwn0Hf1zjprKPYlcDAoHknvYFjqIh8PF6jwcP5K0alUrKeng6LUzAA.ttf", - "300": "https://fonts.gstatic.com/s/playwritedkuloopet/v6/bWtS7e3Ufwn0Hf1zjprKPYlcDAoHknvYFjqIh8PF6jwcP5K0tFUrKeng6LUzAA.ttf", - "regular": "https://fonts.gstatic.com/s/playwritedkuloopet/v6/bWtS7e3Ufwn0Hf1zjprKPYlcDAoHknvYFjqIh8PF6jwcP5K06lUrKeng6LUzAA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedkuloopet/v6/bWtS7e3Ufwn0Hf1zjprKPYlcDAoHknvYFjqIh8PF6jwcP5K06lUbKOPk.ttf" - }, - { - "family": "Playwrite DK Uloopet Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritedkuloopetguides/v1/WwkKxOSkDVqm-ojMLT_kdMsoBb5Xs6efafiIBXYcVHk1bo9bkIONtA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritedkuloopetguides/v1/WwkKxOSkDVqm-ojMLT_kdMsoBb5Xs6efafiIBXYcVHkFb4Vf.ttf" - }, - { - "family": "Playwrite ES", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playwritees/v11/kJEhBuMK4Q07lDHc2Xp9uokIp-6D3QEGCpthmFOOFsfjAOVZBgs.ttf", - "200": "https://fonts.gstatic.com/s/playwritees/v11/kJEhBuMK4Q07lDHc2Xp9uokIp-6D3QEGCpthmNOPFsfjAOVZBgs.ttf", - "300": "https://fonts.gstatic.com/s/playwritees/v11/kJEhBuMK4Q07lDHc2Xp9uokIp-6D3QEGCpthmA2PFsfjAOVZBgs.ttf", - "regular": "https://fonts.gstatic.com/s/playwritees/v11/kJEhBuMK4Q07lDHc2Xp9uokIp-6D3QEGCpthmFOPFsfjAOVZBgs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritees/v11/kJEhBuMK4Q07lDHc2Xp9uokIp-6D3QEGCpthmFOPJsbpBA.ttf" - }, - { - "family": "Playwrite ES Deco", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteesdeco/v11/7AuWp-g3kjKKGkePXEf2jxctfDxlvGM7-RllW8uEsjJ4yrZxOQ9p5Cljpw.ttf", - "200": "https://fonts.gstatic.com/s/playwriteesdeco/v11/7AuWp-g3kjKKGkePXEf2jxctfDxlvGM7-RllW8uEsjJ4SrdxOQ9p5Cljpw.ttf", - "300": "https://fonts.gstatic.com/s/playwriteesdeco/v11/7AuWp-g3kjKKGkePXEf2jxctfDxlvGM7-RllW8uEsjJ4lLdxOQ9p5Cljpw.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteesdeco/v11/7AuWp-g3kjKKGkePXEf2jxctfDxlvGM7-RllW8uEsjJ4yrdxOQ9p5Cljpw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteesdeco/v11/7AuWp-g3kjKKGkePXEf2jxctfDxlvGM7-RllW8uEsjJ4yrdBOAVt.ttf" - }, - { - "family": "Playwrite ES Deco Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteesdecoguides/v1/flUrRriwwII5RVl2TZ1XBNTUOYY6ZzZzwPCEKtwqYEyDBQWJ7Q.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteesdecoguides/v1/flUrRriwwII5RVl2TZ1XBNTUOYY6ZzZzwPCEKtwaYUaH.ttf" - }, - { - "family": "Playwrite ES Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteesguides/v1/VuJtdM_b2p7tvoFGLMPdedpGJm402y6mhDDGfdnzXeU.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteesguides/v1/VuJtdM_b2p7tvoFGLMPdedpGJm402y6mtDHMeQ.ttf" - }, - { - "family": "Playwrite FR Moderne", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playwritefrmoderne/v11/3y9L6awucz3w5m4FFTzKolJRXhUk_u1yWtWmFCJcqUBvK5aJuAOvAl74XSpRjw.ttf", - "200": "https://fonts.gstatic.com/s/playwritefrmoderne/v11/3y9L6awucz3w5m4FFTzKolJRXhUk_u1yWtWmFCJcqUBvK5aJOAKvAl74XSpRjw.ttf", - "300": "https://fonts.gstatic.com/s/playwritefrmoderne/v11/3y9L6awucz3w5m4FFTzKolJRXhUk_u1yWtWmFCJcqUBvK5aJ5gKvAl74XSpRjw.ttf", - "regular": "https://fonts.gstatic.com/s/playwritefrmoderne/v11/3y9L6awucz3w5m4FFTzKolJRXhUk_u1yWtWmFCJcqUBvK5aJuAKvAl74XSpRjw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritefrmoderne/v11/3y9L6awucz3w5m4FFTzKolJRXhUk_u1yWtWmFCJcqUBvK5aJuAKfA1T8.ttf" - }, - { - "family": "Playwrite FR Moderne Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritefrmoderneguides/v2/CSRr4yxOn-mMWCgLPl16KrUKBbwa2ZZLdkrvXllIP22HnIzLvrG2fw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritefrmoderneguides/v2/CSRr4yxOn-mMWCgLPl16KrUKBbwa2ZZLdkrvXllIP223nYbP.ttf" - }, - { - "family": "Playwrite FR Trad", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v13", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playwritefrtrad/v13/sJot3KxJjdGLJV3vyatrJE2pkQisWWMBP23HSIVI5tvAogrNdt-fwzTS5A.ttf", - "200": "https://fonts.gstatic.com/s/playwritefrtrad/v13/sJot3KxJjdGLJV3vyatrJE2pkQisWWMBP23HSIVI5tvAIgvNdt-fwzTS5A.ttf", - "300": "https://fonts.gstatic.com/s/playwritefrtrad/v13/sJot3KxJjdGLJV3vyatrJE2pkQisWWMBP23HSIVI5tvA_AvNdt-fwzTS5A.ttf", - "regular": "https://fonts.gstatic.com/s/playwritefrtrad/v13/sJot3KxJjdGLJV3vyatrJE2pkQisWWMBP23HSIVI5tvAogvNdt-fwzTS5A.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritefrtrad/v13/sJot3KxJjdGLJV3vyatrJE2pkQisWWMBP23HSIVI5tvAogv9d9Wb.ttf" - }, - { - "family": "Playwrite FR Trad Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritefrtradguides/v1/l7gMbit5yM62ycwevWCt133rT2kpYpEKjyfqRWLFfriXYf2ZXw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritefrtradguides/v1/l7gMbit5yM62ycwevWCt133rT2kpYpEKjyfqRWL1f7KT.ttf" - }, - { - "family": "Playwrite GB J", - "variants": [ - "100", - "200", - "300", - "regular", - "100italic", - "200italic", - "300italic", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playwritegbj/v11/k3kEo8wSPe9dzQ1UGbvobAPhY5iG-fsubxedDheGdc5HaN7X9HFR8Q.ttf", - "200": "https://fonts.gstatic.com/s/playwritegbj/v11/k3kEo8wSPe9dzQ1UGbvobAPhY5iG-fsubxedDheG9c9HaN7X9HFR8Q.ttf", - "300": "https://fonts.gstatic.com/s/playwritegbj/v11/k3kEo8wSPe9dzQ1UGbvobAPhY5iG-fsubxedDheGK89HaN7X9HFR8Q.ttf", - "regular": "https://fonts.gstatic.com/s/playwritegbj/v11/k3kEo8wSPe9dzQ1UGbvobAPhY5iG-fsubxedDheGdc9HaN7X9HFR8Q.ttf", - "100italic": "https://fonts.gstatic.com/s/playwritegbj/v11/k3kGo8wSPe9dzQ1UGbvobAPhY7KPywT2BnwHoBCTvYyvKtTT1nRB8S9t.ttf", - "200italic": "https://fonts.gstatic.com/s/playwritegbj/v11/k3kGo8wSPe9dzQ1UGbvobAPhY7KPywT2BnwHoBCTvYwvK9TT1nRB8S9t.ttf", - "300italic": "https://fonts.gstatic.com/s/playwritegbj/v11/k3kGo8wSPe9dzQ1UGbvobAPhY7KPywT2BnwHoBCTvYzxK9TT1nRB8S9t.ttf", - "italic": "https://fonts.gstatic.com/s/playwritegbj/v11/k3kGo8wSPe9dzQ1UGbvobAPhY7KPywT2BnwHoBCTvYyvK9TT1nRB8S9t.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritegbj/v11/k3kEo8wSPe9dzQ1UGbvobAPhY5iG-fsubxedDheGdc93adTT.ttf" - }, - { - "family": "Playwrite GB J Guides", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritegbjguides/v2/CSRh4yJOn-mMWCgLPl16K6UKAvM5yY1BdhmIKxooUh-_nQ.ttf", - "italic": "https://fonts.gstatic.com/s/playwritegbjguides/v2/CSRv4yJOn-mMWCgLPl16K6UKAvM5yY1Bdhm4KRAscBqvnb7O.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritegbjguides/v2/CSRh4yJOn-mMWCgLPl16K6UKAvM5yY1Bdhm4KhAs.ttf" - }, - { - "family": "Playwrite GB S", - "variants": [ - "100", - "200", - "300", - "regular", - "100italic", - "200italic", - "300italic", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v12", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/playwritegbs/v12/oPWb_kFkk-s1Xclhmlemy7jsNQR8TohGU_DTHWU6uhH8x5eMaTk8AQ.ttf", - "200": "https://fonts.gstatic.com/s/playwritegbs/v12/oPWb_kFkk-s1Xclhmlemy7jsNQR8TohGU_DTHWU6OhD8x5eMaTk8AQ.ttf", - "300": "https://fonts.gstatic.com/s/playwritegbs/v12/oPWb_kFkk-s1Xclhmlemy7jsNQR8TohGU_DTHWU65BD8x5eMaTk8AQ.ttf", - "regular": "https://fonts.gstatic.com/s/playwritegbs/v12/oPWb_kFkk-s1Xclhmlemy7jsNQR8TohGU_DTHWU6uhD8x5eMaTk8AQ.ttf", - "100italic": "https://fonts.gstatic.com/s/playwritegbs/v12/oPWZ_kFkk-s1Xclhmlemy7jsNS51fHeeOptJs2IvclMUhZ2ISzwsAReZ.ttf", - "200italic": "https://fonts.gstatic.com/s/playwritegbs/v12/oPWZ_kFkk-s1Xclhmlemy7jsNS51fHeeOptJs2IvclOUhJ2ISzwsAReZ.ttf", - "300italic": "https://fonts.gstatic.com/s/playwritegbs/v12/oPWZ_kFkk-s1Xclhmlemy7jsNS51fHeeOptJs2IvclNKhJ2ISzwsAReZ.ttf", - "italic": "https://fonts.gstatic.com/s/playwritegbs/v12/oPWZ_kFkk-s1Xclhmlemy7jsNS51fHeeOptJs2IvclMUhJ2ISzwsAReZ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritegbs/v12/oPWb_kFkk-s1Xclhmlemy7jsNQR8TohGU_DTHWU6uhDMxp2I.ttf" - }, - { - "family": "Playwrite GB S Guides", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritegbsguides/v1/0FlKVOSHl1iH-fv2BH4kIkUBqtlNCEaQLlyKx1QPi-Z8Fw.ttf", - "italic": "https://fonts.gstatic.com/s/playwritegbsguides/v1/0FlEVOSHl1iH-fv2BH4kIkUBqtlNCEaQLly6xV4LqeNsFwxX.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritegbsguides/v1/0FlKVOSHl1iH-fv2BH4kIkUBqtlNCEaQLly6xl4L.ttf" - }, - { - "family": "Playwrite HR", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwritehr/v6/WWXAljmQYQCZM5qaU_dwQYcybAQ7GFn1mFNJPsoA9YHXAHC7tvg.ttf", - "200": "https://fonts.gstatic.com/s/playwritehr/v6/WWXAljmQYQCZM5qaU_dwQYcybAQ7GFn1mFNJPkoB9YHXAHC7tvg.ttf", - "300": "https://fonts.gstatic.com/s/playwritehr/v6/WWXAljmQYQCZM5qaU_dwQYcybAQ7GFn1mFNJPpQB9YHXAHC7tvg.ttf", - "regular": "https://fonts.gstatic.com/s/playwritehr/v6/WWXAljmQYQCZM5qaU_dwQYcybAQ7GFn1mFNJPsoB9YHXAHC7tvg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritehr/v6/WWXAljmQYQCZM5qaU_dwQYcybAQ7GFn1mFNJPsoBxYDdBA.ttf" - }, - { - "family": "Playwrite HR Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritehrguides/v1/6NUK8EedKwOcfRjj8ukv_L4kjqAoGrjdWmA08mCgdfM.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritehrguides/v1/6NUK8EedKwOcfRjj8ukv_L4kjqAoGrjdamE-9g.ttf" - }, - { - "family": "Playwrite HR Lijeva", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playwritehrlijeva/v6/gNMvW2dhS5-p7HvxrBYiWN2SsKqLWCrYiDBAvbRl82ZY0d4zB8aUy4_lxmKl.ttf", - "200": "https://fonts.gstatic.com/s/playwritehrlijeva/v6/gNMvW2dhS5-p7HvxrBYiWN2SsKqLWCrYiDBAvbRl82ZY0d6zBsaUy4_lxmKl.ttf", - "300": "https://fonts.gstatic.com/s/playwritehrlijeva/v6/gNMvW2dhS5-p7HvxrBYiWN2SsKqLWCrYiDBAvbRl82ZY0d5tBsaUy4_lxmKl.ttf", - "regular": "https://fonts.gstatic.com/s/playwritehrlijeva/v6/gNMvW2dhS5-p7HvxrBYiWN2SsKqLWCrYiDBAvbRl82ZY0d4zBsaUy4_lxmKl.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritehrlijeva/v6/gNMvW2dhS5-p7HvxrBYiWN2SsKqLWCrYiDBAvbRl82ZY0d4zBvaVwYs.ttf" - }, - { - "family": "Playwrite HR Lijeva Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritehrlijevaguides/v1/uU9aCAgH7I63K35cu3bRkqamzjr8EW133LJaXDO-QObhgDgMKYJO.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritehrlijevaguides/v1/uU9aCAgH7I63K35cu3bRkqamzjr8EW133LJaXDO-QNbgijw.ttf" - }, - { - "family": "Playwrite HU", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/playwritehu/v6/A2BIn59A0g0xA3zDhFw-0vfPWJtlaFKmrETx1PL7TO2dH3B2Xx4.ttf", - "200": "https://fonts.gstatic.com/s/playwritehu/v6/A2BIn59A0g0xA3zDhFw-0vfPWJtlaFKmrETx1HL6TO2dH3B2Xx4.ttf", - "300": "https://fonts.gstatic.com/s/playwritehu/v6/A2BIn59A0g0xA3zDhFw-0vfPWJtlaFKmrETx1Kz6TO2dH3B2Xx4.ttf", - "regular": "https://fonts.gstatic.com/s/playwritehu/v6/A2BIn59A0g0xA3zDhFw-0vfPWJtlaFKmrETx1PL6TO2dH3B2Xx4.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritehu/v6/A2BIn59A0g0xA3zDhFw-0vfPWJtlaFKmrETx1PL6fOyXGw.ttf" - }, - { - "family": "Playwrite HU Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritehuguides/v1/AYCXpWvtftIVXepC5AzjCAdKgYPugOK0TqxTJw_GOM0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritehuguides/v1/AYCXpWvtftIVXepC5AzjCAdKgYPugOK0fq1ZIw.ttf" - }, - { - "family": "Playwrite ID", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteid/v11/Cn-kJt2YWhlY2oC4KxifKQJmrtrRm-sKkQqUl0-QB_JbFi0pLlg.ttf", - "200": "https://fonts.gstatic.com/s/playwriteid/v11/Cn-kJt2YWhlY2oC4KxifKQJmrtrRm-sKkQqUl8-RB_JbFi0pLlg.ttf", - "300": "https://fonts.gstatic.com/s/playwriteid/v11/Cn-kJt2YWhlY2oC4KxifKQJmrtrRm-sKkQqUlxGRB_JbFi0pLlg.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteid/v11/Cn-kJt2YWhlY2oC4KxifKQJmrtrRm-sKkQqUl0-RB_JbFi0pLlg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteid/v11/Cn-kJt2YWhlY2oC4KxifKQJmrtrRm-sKkQqUl0-RN_NREg.ttf" - }, - { - "family": "Playwrite ID Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteidguides/v1/MjQamj1kuP_soQ3o-rysMdWi_8oJlIUUInch3bTfcxs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteidguides/v1/MjQamj1kuP_soQ3o-rysMdWi_8oJlIUUEnYr2Q.ttf" - }, - { - "family": "Playwrite IE", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteie/v11/fC1zPYtWYWnH0hvndYd6GCGWXCAxfsUebXFMyzipBpIu30AZbUY.ttf", - "200": "https://fonts.gstatic.com/s/playwriteie/v11/fC1zPYtWYWnH0hvndYd6GCGWXCAxfsUebXFMy7ioBpIu30AZbUY.ttf", - "300": "https://fonts.gstatic.com/s/playwriteie/v11/fC1zPYtWYWnH0hvndYd6GCGWXCAxfsUebXFMy2aoBpIu30AZbUY.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteie/v11/fC1zPYtWYWnH0hvndYd6GCGWXCAxfsUebXFMyzioBpIu30AZbUY.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteie/v11/fC1zPYtWYWnH0hvndYd6GCGWXCAxfsUebXFMyzioNpMk2w.ttf" - }, - { - "family": "Playwrite IE Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteieguides/v1/LhW5MULFNP8PI-1UADw_Kbp9daTx5ovUaNojN9_8IVQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteieguides/v1/LhW5MULFNP8PI-1UADw_Kbp9daTx5ovUWNspMw.ttf" - }, - { - "family": "Playwrite IN", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/playwritein/v11/uk-xEGGpoLQ97mfv2J3cZzuz7CyEJhPw65lkM7mNMR8n3_Ag1kU.ttf", - "200": "https://fonts.gstatic.com/s/playwritein/v11/uk-xEGGpoLQ97mfv2J3cZzuz7CyEJhPw65lkMzmMMR8n3_Ag1kU.ttf", - "300": "https://fonts.gstatic.com/s/playwritein/v11/uk-xEGGpoLQ97mfv2J3cZzuz7CyEJhPw65lkM-eMMR8n3_Ag1kU.ttf", - "regular": "https://fonts.gstatic.com/s/playwritein/v11/uk-xEGGpoLQ97mfv2J3cZzuz7CyEJhPw65lkM7mMMR8n3_Ag1kU.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritein/v11/uk-xEGGpoLQ97mfv2J3cZzuz7CyEJhPw65lkM7mMAR4t2w.ttf" - }, - { - "family": "Playwrite IN Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteinguides/v1/GFD2WBRug3mQSvrAT9AL4vx4d3lQNQV4Tt1qdGqgdlM.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteinguides/v1/GFD2WBRug3mQSvrAT9AL4vx4d3lQNQV4ftxgcA.ttf" - }, - { - "family": "Playwrite IS", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v10", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteis/v10/JTUFjI4o_SGg9lecLGptrD17xQYXK0vOoz6jq6R8aX9-p7K5ILg.ttf", - "200": "https://fonts.gstatic.com/s/playwriteis/v10/JTUFjI4o_SGg9lecLGptrD17xQYXK0vOoz6jqyR9aX9-p7K5ILg.ttf", - "300": "https://fonts.gstatic.com/s/playwriteis/v10/JTUFjI4o_SGg9lecLGptrD17xQYXK0vOoz6jq_p9aX9-p7K5ILg.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteis/v10/JTUFjI4o_SGg9lecLGptrD17xQYXK0vOoz6jq6R9aX9-p7K5ILg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteis/v10/JTUFjI4o_SGg9lecLGptrD17xQYXK0vOoz6jq6R9WX50ow.ttf" - }, - { - "family": "Playwrite IS Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteisguides/v1/5aUp9-GkphaVExwxdX6SwWF-uigk3Cglrm9ptxu7HZ0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteisguides/v1/5aUp9-GkphaVExwxdX6SwWF-uigk3Cglnm5jsw.ttf" - }, - { - "family": "Playwrite IT Moderna", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteitmoderna/v11/mFTbWaYCwKPK5cx6W8jy2kwDnSUe9q45vQQi5HMFnSdEx2F5Wil8ubbffHtmMw.ttf", - "200": "https://fonts.gstatic.com/s/playwriteitmoderna/v11/mFTbWaYCwKPK5cx6W8jy2kwDnSUe9q45vQQi5HMFnSdEx2F52ih8ubbffHtmMw.ttf", - "300": "https://fonts.gstatic.com/s/playwriteitmoderna/v11/mFTbWaYCwKPK5cx6W8jy2kwDnSUe9q45vQQi5HMFnSdEx2F5BCh8ubbffHtmMw.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteitmoderna/v11/mFTbWaYCwKPK5cx6W8jy2kwDnSUe9q45vQQi5HMFnSdEx2F5Wih8ubbffHtmMw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteitmoderna/v11/mFTbWaYCwKPK5cx6W8jy2kwDnSUe9q45vQQi5HMFnSdEx2F5WihMuLzb.ttf" - }, - { - "family": "Playwrite IT Moderna Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteitmodernaguides/v1/2sDKZHBJg5rCj6fz_QgDJhGcTtJ5AVu-1w5jRQjRv9qPpOVtBhB5gQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteitmodernaguides/v1/2sDKZHBJg5rCj6fz_QgDJhGcTtJ5AVu-1w5jRQjRv9q_pe9p.ttf" - }, - { - "family": "Playwrite IT Trad", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteittrad/v11/SlG5mR6Yo5oYZX5BFVcEySBSPE50BjHDpZxuvgxzFq96u--_gENNXvzL2Q.ttf", - "200": "https://fonts.gstatic.com/s/playwriteittrad/v11/SlG5mR6Yo5oYZX5BFVcEySBSPE50BjHDpZxuvgxzFq96O-6_gENNXvzL2Q.ttf", - "300": "https://fonts.gstatic.com/s/playwriteittrad/v11/SlG5mR6Yo5oYZX5BFVcEySBSPE50BjHDpZxuvgxzFq965e6_gENNXvzL2Q.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteittrad/v11/SlG5mR6Yo5oYZX5BFVcEySBSPE50BjHDpZxuvgxzFq96u-6_gENNXvzL2Q.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteittrad/v11/SlG5mR6Yo5oYZX5BFVcEySBSPE50BjHDpZxuvgxzFq96u-6PgUlJ.ttf" - }, - { - "family": "Playwrite IT Trad Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteittradguides/v2/SlGDmReYo5oYZX5BFVcEySBSPE50BiuP2AHaRsRUA4V-e6yHgQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteittradguides/v2/SlGDmReYo5oYZX5BFVcEySBSPE50BiuP2AHaRsRkAo96.ttf" - }, - { - "family": "Playwrite MX", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v13", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/playwritemx/v13/6xK9dSNbKtCe7KfhXg7RYSwyQ-oO7xNblyJr9wnc5xYfXDWXDu8.ttf", - "200": "https://fonts.gstatic.com/s/playwritemx/v13/6xK9dSNbKtCe7KfhXg7RYSwyQ-oO7xNblyJr94nd5xYfXDWXDu8.ttf", - "300": "https://fonts.gstatic.com/s/playwritemx/v13/6xK9dSNbKtCe7KfhXg7RYSwyQ-oO7xNblyJr91fd5xYfXDWXDu8.ttf", - "regular": "https://fonts.gstatic.com/s/playwritemx/v13/6xK9dSNbKtCe7KfhXg7RYSwyQ-oO7xNblyJr9wnd5xYfXDWXDu8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritemx/v13/6xK9dSNbKtCe7KfhXg7RYSwyQ-oO7xNblyJr9wnd1xcVWA.ttf" - }, - { - "family": "Playwrite MX Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritemxguides/v1/k3kMo9ESPe9dzQ1UGbvoZhnhbtfklWqN0qywHx-HpY0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritemxguides/v1/k3kMo9ESPe9dzQ1UGbvoZhnhbtfklWqN4q26Gw.ttf" - }, - { - "family": "Playwrite NG Modern", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/playwritengmodern/v11/ijw-s4b2R9Qve5V5lNJb_yRhEfSep5NbFCKmKgoEeCA4V17tPQbi5GswWJNE.ttf", - "200": "https://fonts.gstatic.com/s/playwritengmodern/v11/ijw-s4b2R9Qve5V5lNJb_yRhEfSep5NbFCKmKgoEeCA4V15tPAbi5GswWJNE.ttf", - "300": "https://fonts.gstatic.com/s/playwritengmodern/v11/ijw-s4b2R9Qve5V5lNJb_yRhEfSep5NbFCKmKgoEeCA4V16zPAbi5GswWJNE.ttf", - "regular": "https://fonts.gstatic.com/s/playwritengmodern/v11/ijw-s4b2R9Qve5V5lNJb_yRhEfSep5NbFCKmKgoEeCA4V17tPAbi5GswWJNE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritengmodern/v11/ijw-s4b2R9Qve5V5lNJb_yRhEfSep5NbFCKmKgoEeCA4V17tPDbj7m8.ttf" - }, - { - "family": "Playwrite NG Modern Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritengmodernguides/v1/6qLVKYQNtxD-qVlIPUIPdWMlWxy3BmFEQgxB1xvFhDarWJtyZyGU.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritengmodernguides/v1/6qLVKYQNtxD-qVlIPUIPdWMlWxy3BmFEQgxB1xvFhAaqUp8.ttf" - }, - { - "family": "Playwrite NL", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v10", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwritenl/v10/k3kCo84SPe9dzQ1UGbvoZQ37Iqp5IZJF9bmaG9_EnYxNbPzS5HE.ttf", - "200": "https://fonts.gstatic.com/s/playwritenl/v10/k3kCo84SPe9dzQ1UGbvoZQ37Iqp5IZJF9bmaG1_FnYxNbPzS5HE.ttf", - "300": "https://fonts.gstatic.com/s/playwritenl/v10/k3kCo84SPe9dzQ1UGbvoZQ37Iqp5IZJF9bmaG4HFnYxNbPzS5HE.ttf", - "regular": "https://fonts.gstatic.com/s/playwritenl/v10/k3kCo84SPe9dzQ1UGbvoZQ37Iqp5IZJF9bmaG9_FnYxNbPzS5HE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritenl/v10/k3kCo84SPe9dzQ1UGbvoZQ37Iqp5IZJF9bmaG9_FrY1HaA.ttf" - }, - { - "family": "Playwrite NL Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritenlguides/v1/FwZH7_8mxlw-50y5PJughoCL4jbXkMqwsWKGP6kvdPA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritenlguides/v1/FwZH7_8mxlw-50y5PJughoCL4jbXkMqwgWOMOw.ttf" - }, - { - "family": "Playwrite NO", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v10", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteno/v10/nuFrD_fYSZviRJYb-P2TrQO1DRpazaZDgnw-49whHKen-mjRVtc.ttf", - "200": "https://fonts.gstatic.com/s/playwriteno/v10/nuFrD_fYSZviRJYb-P2TrQO1DRpazaZDgnw-41wgHKen-mjRVtc.ttf", - "300": "https://fonts.gstatic.com/s/playwriteno/v10/nuFrD_fYSZviRJYb-P2TrQO1DRpazaZDgnw-44IgHKen-mjRVtc.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteno/v10/nuFrD_fYSZviRJYb-P2TrQO1DRpazaZDgnw-49wgHKen-mjRVtc.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteno/v10/nuFrD_fYSZviRJYb-P2TrQO1DRpazaZDgnw-49wgLKat_g.ttf" - }, - { - "family": "Playwrite NO Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritenoguides/v1/DPEwYx-Cyg4cQ2aAcFshOLL79zJKccqHe2-Z2vnLeAs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritenoguides/v1/DPEwYx-Cyg4cQ2aAcFshOLL79zJKccqHS26T3g.ttf" - }, - { - "family": "Playwrite NZ", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/playwritenz/v11/d6lakaOxRsyr_zZDmUYvh2TW3NCQVvjKPjPjngAVeRt5gGCzkrs.ttf", - "200": "https://fonts.gstatic.com/s/playwritenz/v11/d6lakaOxRsyr_zZDmUYvh2TW3NCQVvjKPjPjnoAUeRt5gGCzkrs.ttf", - "300": "https://fonts.gstatic.com/s/playwritenz/v11/d6lakaOxRsyr_zZDmUYvh2TW3NCQVvjKPjPjnl4UeRt5gGCzkrs.ttf", - "regular": "https://fonts.gstatic.com/s/playwritenz/v11/d6lakaOxRsyr_zZDmUYvh2TW3NCQVvjKPjPjngAUeRt5gGCzkrs.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritenz/v11/d6lakaOxRsyr_zZDmUYvh2TW3NCQVvjKPjPjngAUSRpzhA.ttf" - }, - { - "family": "Playwrite NZ Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritenzguides/v1/t5t8IQQPN4uFDRepJwiX4vzIikyGzv71Wh8xq25PL5k.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritenzguides/v1/t5t8IQQPN4uFDRepJwiX4vzIikyGzv71ah47rw.ttf" - }, - { - "family": "Playwrite PE", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v6", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/playwritepe/v6/FwZJ7-Amxlw-50y5PJugmImRrktKJDJ4lnesO2lsTPHFdtSgb_A.ttf", - "200": "https://fonts.gstatic.com/s/playwritepe/v6/FwZJ7-Amxlw-50y5PJugmImRrktKJDJ4lnesO-ltTPHFdtSgb_A.ttf", - "300": "https://fonts.gstatic.com/s/playwritepe/v6/FwZJ7-Amxlw-50y5PJugmImRrktKJDJ4lnesOzdtTPHFdtSgb_A.ttf", - "regular": "https://fonts.gstatic.com/s/playwritepe/v6/FwZJ7-Amxlw-50y5PJugmImRrktKJDJ4lnesO2ltTPHFdtSgb_A.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritepe/v6/FwZJ7-Amxlw-50y5PJugmImRrktKJDJ4lnesO2ltfPDPcg.ttf" - }, - { - "family": "Playwrite PE Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritepeguides/v1/AMONz5uBsGadFuvf9j8ZyqI0FA3br70wwyyAlqETME8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritepeguides/v1/AMONz5uBsGadFuvf9j8ZyqI0FA3br70w8y2Kkg.ttf" - }, - { - "family": "Playwrite PL", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v10", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/playwritepl/v10/0QIyMXVf_4C2VH-yUr5uz72U-LQiKJ_9tb1WmRfa9ZybSwcVtHQ.ttf", - "200": "https://fonts.gstatic.com/s/playwritepl/v10/0QIyMXVf_4C2VH-yUr5uz72U-LQiKJ_9tb1WmZfb9ZybSwcVtHQ.ttf", - "300": "https://fonts.gstatic.com/s/playwritepl/v10/0QIyMXVf_4C2VH-yUr5uz72U-LQiKJ_9tb1WmUnb9ZybSwcVtHQ.ttf", - "regular": "https://fonts.gstatic.com/s/playwritepl/v10/0QIyMXVf_4C2VH-yUr5uz72U-LQiKJ_9tb1WmRfb9ZybSwcVtHQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritepl/v10/0QIyMXVf_4C2VH-yUr5uz72U-LQiKJ_9tb1WmRfbxZ2RTw.ttf" - }, - { - "family": "Playwrite PL Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteplguides/v1/jVyW7m_lCm7G5CZyQCAu8mgkGLk-kmibWR3aRZ2Kw7A.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteplguides/v1/jVyW7m_lCm7G5CZyQCAu8mgkGLk-kmibaRzQQQ.ttf" - }, - { - "family": "Playwrite PT", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v10", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwritept/v10/6NUE8FidKwOcfRjj8ukv5Lg-wt21rkAVfXUe9qDjTfJtvlo3Qaw.ttf", - "200": "https://fonts.gstatic.com/s/playwritept/v10/6NUE8FidKwOcfRjj8ukv5Lg-wt21rkAVfXUe9iDiTfJtvlo3Qaw.ttf", - "300": "https://fonts.gstatic.com/s/playwritept/v10/6NUE8FidKwOcfRjj8ukv5Lg-wt21rkAVfXUe9v7iTfJtvlo3Qaw.ttf", - "regular": "https://fonts.gstatic.com/s/playwritept/v10/6NUE8FidKwOcfRjj8ukv5Lg-wt21rkAVfXUe9qDiTfJtvlo3Qaw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritept/v10/6NUE8FidKwOcfRjj8ukv5Lg-wt21rkAVfXUe9qDiffNnug.ttf" - }, - { - "family": "Playwrite PT Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteptguides/v2/sJoY3K5JjdGLJV3vyatrMkupgg-kWTx5F5k90TZO69o.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteptguides/v2/sJoY3K5JjdGLJV3vyatrMkupgg-kWTx5J5g31Q.ttf" - }, - { - "family": "Playwrite RO", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v10", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/playwritero/v10/gok8H6fuA1J7QPJ04HFTGSWdk_S0czhwEf0j4a9ZnZWMJnZeBS8.ttf", - "200": "https://fonts.gstatic.com/s/playwritero/v10/gok8H6fuA1J7QPJ04HFTGSWdk_S0czhwEf0j4S9YnZWMJnZeBS8.ttf", - "300": "https://fonts.gstatic.com/s/playwritero/v10/gok8H6fuA1J7QPJ04HFTGSWdk_S0czhwEf0j4fFYnZWMJnZeBS8.ttf", - "regular": "https://fonts.gstatic.com/s/playwritero/v10/gok8H6fuA1J7QPJ04HFTGSWdk_S0czhwEf0j4a9YnZWMJnZeBS8.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritero/v10/gok8H6fuA1J7QPJ04HFTGSWdk_S0czhwEf0j4a9YrZSGIg.ttf" - }, - { - "family": "Playwrite RO Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteroguides/v1/wlptgx7ZCE50snmWiOExiylvL10_b5Ym_LBte6KuGEo.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteroguides/v1/wlptgx7ZCE50snmWiOExiylvL10_b5YmzLFnfw.ttf" - }, - { - "family": "Playwrite SK", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v10", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/playwritesk/v10/9XU3lJp0klrZDw3AZHcsJTByz7latrF9yDIlf-2dvsOzdK9OF68.ttf", - "200": "https://fonts.gstatic.com/s/playwritesk/v10/9XU3lJp0klrZDw3AZHcsJTByz7latrF9yDIlf22cvsOzdK9OF68.ttf", - "300": "https://fonts.gstatic.com/s/playwritesk/v10/9XU3lJp0klrZDw3AZHcsJTByz7latrF9yDIlf7OcvsOzdK9OF68.ttf", - "regular": "https://fonts.gstatic.com/s/playwritesk/v10/9XU3lJp0klrZDw3AZHcsJTByz7latrF9yDIlf-2cvsOzdK9OF68.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritesk/v10/9XU3lJp0klrZDw3AZHcsJTByz7latrF9yDIlf-2cjsK5cA.ttf" - }, - { - "family": "Playwrite SK Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteskguides/v1/P5sezYaSYdfH5z93kEFk3tyPlqxeQeo_JzruWQshcbU.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteskguides/v1/P5sezYaSYdfH5z93kEFk3tyPlqxeQeo_FzvkXQ.ttf" - }, - { - "family": "Playwrite TZ", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/playwritetz/v11/RLptK5rs6au7bzABmVQAOwnUbvHMbzSUU27JDWwSue1COwjVROo.ttf", - "200": "https://fonts.gstatic.com/s/playwritetz/v11/RLptK5rs6au7bzABmVQAOwnUbvHMbzSUU27JDewTue1COwjVROo.ttf", - "300": "https://fonts.gstatic.com/s/playwritetz/v11/RLptK5rs6au7bzABmVQAOwnUbvHMbzSUU27JDTITue1COwjVROo.ttf", - "regular": "https://fonts.gstatic.com/s/playwritetz/v11/RLptK5rs6au7bzABmVQAOwnUbvHMbzSUU27JDWwTue1COwjVROo.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritetz/v11/RLptK5rs6au7bzABmVQAOwnUbvHMbzSUU27JDWwTiexIPw.ttf" - }, - { - "family": "Playwrite TZ Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritetzguides/v1/SLXUc0_L5XEkcjBPGvusk4lULgsM9U5_YQy93JQ2XEg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritetzguides/v1/SLXUc0_L5XEkcjBPGvusk4lULgsM9U5_UQ232A.ttf" - }, - { - "family": "Playwrite US Modern", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteusmodern/v11/H4cMBWmRlMXPhla3hmMaveiYz8nSDkIFLNIYl2TXUwK62YohNw2Da0LCgUPK.ttf", - "200": "https://fonts.gstatic.com/s/playwriteusmodern/v11/H4cMBWmRlMXPhla3hmMaveiYz8nSDkIFLNIYl2TXUwK62YqhNg2Da0LCgUPK.ttf", - "300": "https://fonts.gstatic.com/s/playwriteusmodern/v11/H4cMBWmRlMXPhla3hmMaveiYz8nSDkIFLNIYl2TXUwK62Yp_Ng2Da0LCgUPK.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteusmodern/v11/H4cMBWmRlMXPhla3hmMaveiYz8nSDkIFLNIYl2TXUwK62YohNg2Da0LCgUPK.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteusmodern/v11/H4cMBWmRlMXPhla3hmMaveiYz8nSDkIFLNIYl2TXUwK62YohNj2CYUY.ttf" - }, - { - "family": "Playwrite US Modern Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteusmodernguides/v1/0QI1MWNf_4C2VH-yUr5uyqKOvtOynXAoku8j8Lv9pryxZQscrW1V.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteusmodernguides/v1/0QI1MWNf_4C2VH-yUr5uyqKOvtOynXAoku8j8Lv9poywbw8.ttf" - }, - { - "family": "Playwrite US Trad", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteustrad/v11/fdNX9tyHsnVPjW9trmV7wQ0stdwRBYclCsCdzOb1-cd1E8pgj6Kf5uBNig.ttf", - "200": "https://fonts.gstatic.com/s/playwriteustrad/v11/fdNX9tyHsnVPjW9trmV7wQ0stdwRBYclCsCdzOb1-cd1k8tgj6Kf5uBNig.ttf", - "300": "https://fonts.gstatic.com/s/playwriteustrad/v11/fdNX9tyHsnVPjW9trmV7wQ0stdwRBYclCsCdzOb1-cd1Tctgj6Kf5uBNig.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteustrad/v11/fdNX9tyHsnVPjW9trmV7wQ0stdwRBYclCsCdzOb1-cd1E8tgj6Kf5uBNig.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteustrad/v11/fdNX9tyHsnVPjW9trmV7wQ0stdwRBYclCsCdzOb1-cd1E8tQjqib.ttf" - }, - { - "family": "Playwrite US Trad Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwriteustradguides/v1/-zk29027wssz_XLkGgu8kTL39c2bMssjmiZPNnk5nJCZAyrUdw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteustradguides/v1/-zk29027wssz_XLkGgu8kTL39c2bMssjmiZPNnkJnZqd.ttf" - }, - { - "family": "Playwrite VN", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/playwritevn/v11/mtGo4_hXJqPSu8nf5RBY5i0q0yxCxtP-9TFBNUI8E-9HPWIQtD0.ttf", - "200": "https://fonts.gstatic.com/s/playwritevn/v11/mtGo4_hXJqPSu8nf5RBY5i0q0yxCxtP-9TFBNcI9E-9HPWIQtD0.ttf", - "300": "https://fonts.gstatic.com/s/playwritevn/v11/mtGo4_hXJqPSu8nf5RBY5i0q0yxCxtP-9TFBNRw9E-9HPWIQtD0.ttf", - "regular": "https://fonts.gstatic.com/s/playwritevn/v11/mtGo4_hXJqPSu8nf5RBY5i0q0yxCxtP-9TFBNUI9E-9HPWIQtD0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritevn/v11/mtGo4_hXJqPSu8nf5RBY5i0q0yxCxtP-9TFBNUI9I-5NOQ.ttf" - }, - { - "family": "Playwrite VN Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritevnguides/v1/JIAvUUlydXJZq1IQU8oDBn2CUkROHFEAfXMXfpmSLuI.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritevnguides/v1/JIAvUUlydXJZq1IQU8oDBn2CUkROHFEATXIdeg.ttf" - }, - { - "family": "Playwrite ZA", - "variants": [ - "100", - "200", - "300", - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v11", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/playwriteza/v11/Noag6Uzhw5CTOhXKt5-vwvhrNyaNQo1LaBq0EbLGbYUsn9T5dt0.ttf", - "200": "https://fonts.gstatic.com/s/playwriteza/v11/Noag6Uzhw5CTOhXKt5-vwvhrNyaNQo1LaBq0ETLHbYUsn9T5dt0.ttf", - "300": "https://fonts.gstatic.com/s/playwriteza/v11/Noag6Uzhw5CTOhXKt5-vwvhrNyaNQo1LaBq0EezHbYUsn9T5dt0.ttf", - "regular": "https://fonts.gstatic.com/s/playwriteza/v11/Noag6Uzhw5CTOhXKt5-vwvhrNyaNQo1LaBq0EbLHbYUsn9T5dt0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwriteza/v11/Noag6Uzhw5CTOhXKt5-vwvhrNyaNQo1LaBq0EbLHXYQmmw.ttf" - }, - { - "family": "Playwrite ZA Guides", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/playwritezaguides/v1/O4ZOFHPsmxlhCg3-iycDyEwy0BT1ribk2HDoCLfQmgE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/playwritezaguides/v1/O4ZOFHPsmxlhCg3-iycDyEwy0BT1ribk6HHiDA.ttf" - }, - { - "family": "Plus Jakarta Sans", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KU7NShXUEKi4Rw.ttf", - "300": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_907NShXUEKi4Rw.ttf", - "regular": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_qU7NShXUEKi4Rw.ttf", - "500": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_m07NShXUEKi4Rw.ttf", - "600": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_d0nNShXUEKi4Rw.ttf", - "700": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_TknNShXUEKi4Rw.ttf", - "800": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KUnNShXUEKi4Rw.ttf", - "200italic": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ2lCR_QMq2oR82k.ttf", - "300italic": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ17CR_QMq2oR82k.ttf", - "italic": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0lCR_QMq2oR82k.ttf", - "500italic": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0XCR_QMq2oR82k.ttf", - "600italic": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ37Dh_QMq2oR82k.ttf", - "700italic": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ3CDh_QMq2oR82k.ttf", - "800italic": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ2lDh_QMq2oR82k.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/plusjakartasans/v12/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_qU79Sx_Q.ttf" - }, - { - "family": "Pochaevsk", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin" - ], - "version": "v5", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/pochaevsk/v5/55xuey9_OdX_Om7ReYgloJd4-bnQKg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pochaevsk/v5/55xuey9_OdX_Om7ReYgVoZ18.ttf" - }, - { - "family": "Podkova", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v33", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/podkova/v33/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWtFzcU4EoporSHH.ttf", - "500": "https://fonts.gstatic.com/s/podkova/v33/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWt3zcU4EoporSHH.ttf", - "600": "https://fonts.gstatic.com/s/podkova/v33/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWubysU4EoporSHH.ttf", - "700": "https://fonts.gstatic.com/s/podkova/v33/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWuiysU4EoporSHH.ttf", - "800": "https://fonts.gstatic.com/s/podkova/v33/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWvFysU4EoporSHH.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/podkova/v33/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWtFzfU5GI4.ttf" - }, - { - "family": "Poetsen One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/poetsenone/v3/ke8hOgIaMUB37xCgvCntWtIvq_KREbG9.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/poetsenone/v3/ke8hOgIaMUB37xCgvCntWuIuofY.ttf" - }, - { - "family": "Poiret One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/poiretone/v18/UqyVK80NJXN4zfRgbdfbk5lWVscxdKE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/poiretone/v18/UqyVK80NJXN4zfRgbdfbo5hcUg.ttf" - }, - { - "family": "Poller One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v25", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/pollerone/v25/ahccv82n0TN3gia5E4Bud-lbgUS5u0s.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pollerone/v25/ahccv82n0TN3gia5E4BuR-hRhQ.ttf" - }, - { - "family": "Poltawski Nowy", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/poltawskinowy/v5/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KqCWnDS6V5CzCoQ.ttf", - "500": "https://fonts.gstatic.com/s/poltawskinowy/v5/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KmiWnDS6V5CzCoQ.ttf", - "600": "https://fonts.gstatic.com/s/poltawskinowy/v5/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KdiKnDS6V5CzCoQ.ttf", - "700": "https://fonts.gstatic.com/s/poltawskinowy/v5/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KTyKnDS6V5CzCoQ.ttf", - "italic": "https://fonts.gstatic.com/s/poltawskinowy/v5/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGZPTiSRxinSoROp.ttf", - "500italic": "https://fonts.gstatic.com/s/poltawskinowy/v5/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGZ9TiSRxinSoROp.ttf", - "600italic": "https://fonts.gstatic.com/s/poltawskinowy/v5/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGaRSSSRxinSoROp.ttf", - "700italic": "https://fonts.gstatic.com/s/poltawskinowy/v5/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGaoSSSRxinSoROp.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/poltawskinowy/v5/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KqCWXDCSR.ttf" - }, - { - "family": "Poly", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/poly/v18/MQpb-W6wKNitRLCAq2Lpris.ttf", - "italic": "https://fonts.gstatic.com/s/poly/v18/MQpV-W6wKNitdLKKr0DsviuGWA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/poly/v18/MQpb-W6wKNitdLGKrw.ttf" - }, - { - "family": "Pompiere", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/pompiere/v21/VEMyRoxis5Dwuyeov6Wt5jDtreOL.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pompiere/v21/VEMyRoxis5Dwuyeov5Ws7DQ.ttf" - }, - { - "family": "Ponnala", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v3", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/ponnala/v3/w8gaH2QxQOU08bbbrQut2F4OuOo.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ponnala/v3/w8gaH2QxQOU08bbbnQqn3A.ttf" - }, - { - "family": "Ponomar", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin" - ], - "version": "v5", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/ponomar/v5/or3iQ6zp3fKD2wImbJTdArg8hzo.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ponomar/v5/or3iQ6zp3fKD2wImXJXXBg.ttf" - }, - { - "family": "Pontano Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/pontanosans/v19/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOSzMncaMp9gzWsE.ttf", - "regular": "https://fonts.gstatic.com/s/pontanosans/v19/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOXLMncaMp9gzWsE.ttf", - "500": "https://fonts.gstatic.com/s/pontanosans/v19/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOUDMncaMp9gzWsE.ttf", - "600": "https://fonts.gstatic.com/s/pontanosans/v19/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOazLncaMp9gzWsE.ttf", - "700": "https://fonts.gstatic.com/s/pontanosans/v19/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOZXLncaMp9gzWsE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pontanosans/v19/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOXLMrceGow.ttf" - }, - { - "family": "Poor Story", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/poorstory/v24/jizfREFUsnUct9P6cDfd4OmnLD0Z4zM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/poorstory/v24/jizfREFUsnUct9P6cDfd0OitKA.ttf" - }, - { - "family": "Poppins", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/poppins/v24/pxiGyp8kv8JHgFVrLPTed3FBGPaTSQ.ttf", - "100italic": "https://fonts.gstatic.com/s/poppins/v24/pxiAyp8kv8JHgFVrJJLmE3tFOvODSVFF.ttf", - "200": "https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLFj_V1tvFP-KUEg.ttf", - "200italic": "https://fonts.gstatic.com/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmv1plEN2PQEhcqw.ttf", - "300": "https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLDz8V1tvFP-KUEg.ttf", - "300italic": "https://fonts.gstatic.com/s/poppins/v24/pxiDyp8kv8JHgFVrJJLm21llEN2PQEhcqw.ttf", - "regular": "https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf", - "italic": "https://fonts.gstatic.com/s/poppins/v24/pxiGyp8kv8JHgFVrJJLed3FBGPaTSQ.ttf", - "500": "https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLGT9V1tvFP-KUEg.ttf", - "500italic": "https://fonts.gstatic.com/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmg1hlEN2PQEhcqw.ttf", - "600": "https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6V1tvFP-KUEg.ttf", - "600italic": "https://fonts.gstatic.com/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmr19lEN2PQEhcqw.ttf", - "700": "https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLCz7V1tvFP-KUEg.ttf", - "700italic": "https://fonts.gstatic.com/s/poppins/v24/pxiDyp8kv8JHgFVrJJLmy15lEN2PQEhcqw.ttf", - "800": "https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLDD4V1tvFP-KUEg.ttf", - "800italic": "https://fonts.gstatic.com/s/poppins/v24/pxiDyp8kv8JHgFVrJJLm111lEN2PQEhcqw.ttf", - "900": "https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLBT5V1tvFP-KUEg.ttf", - "900italic": "https://fonts.gstatic.com/s/poppins/v24/pxiDyp8kv8JHgFVrJJLm81xlEN2PQEhcqw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJHedw.ttf" - }, - { - "family": "Port Lligat Sans", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/portlligatsans/v24/kmKmZrYrGBbdN1aV7Vokow6Lw4s4l7N0Tx4xEcQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/portlligatsans/v24/kmKmZrYrGBbdN1aV7Vokow6Lw4s4p7J-Sw.ttf" - }, - { - "family": "Port Lligat Slab", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v27", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/portlligatslab/v27/LDIpaoiQNgArA8kR7ulhZ8P_NYOss7ob9yGLmfI.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/portlligatslab/v27/LDIpaoiQNgArA8kR7ulhZ8P_NYOsg7sR8w.ttf" - }, - { - "family": "Potta One", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/pottaone/v19/FeVSS05Bp6cy7xI-YfxQ3Z5nm29Gww.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pottaone/v19/FeVSS05Bp6cy7xI-Yfxg3JRj.ttf" - }, - { - "family": "Pragati Narrow", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/pragatinarrow/v15/vm8vdRf0T0bS1ffgsPB7WZ-mD17_ytN3M48a.ttf", - "700": "https://fonts.gstatic.com/s/pragatinarrow/v15/vm8sdRf0T0bS1ffgsPB7WZ-mD2ZD5fd_GJMTlo_4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pragatinarrow/v15/vm8vdRf0T0bS1ffgsPB7WZ-mD27-wNc.ttf" - }, - { - "family": "Praise", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/praise/v9/qkBUXvUZ-cnFXcFyDvO67L9XmQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/praise/v9/qkBUXvUZ-cnFXcFCD_m-.ttf" - }, - { - "family": "Prata", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/prata/v22/6xKhdSpbNNCT-vWIAG_5LWwJ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/prata/v22/6xKhdSpbNNCT-sWJCms.ttf" - }, - { - "family": "Preahvihear", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v32", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/preahvihear/v32/6NUS8F-dNQeEYhzj7uluxswE49FJf8Wv.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/preahvihear/v32/6NUS8F-dNQeEYhzj7uluxvwF6dU.ttf" - }, - { - "family": "Press Start 2P", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/pressstart2p/v16/e3t4euO8T-267oIAQAu6jDQyK0nSgPJE4580.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pressstart2p/v16/e3t4euO8T-267oIAQAu6jDQyK3nTivY.ttf" - }, - { - "family": "Pridi", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/pridi/v15/2sDdZG5JnZLfkc1SiE0jRUG0AqUc.ttf", - "300": "https://fonts.gstatic.com/s/pridi/v15/2sDdZG5JnZLfkc02i00jRUG0AqUc.ttf", - "regular": "https://fonts.gstatic.com/s/pridi/v15/2sDQZG5JnZLfkfWao2krbl29.ttf", - "500": "https://fonts.gstatic.com/s/pridi/v15/2sDdZG5JnZLfkc1uik0jRUG0AqUc.ttf", - "600": "https://fonts.gstatic.com/s/pridi/v15/2sDdZG5JnZLfkc1CjU0jRUG0AqUc.ttf", - "700": "https://fonts.gstatic.com/s/pridi/v15/2sDdZG5JnZLfkc0mjE0jRUG0AqUc.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/pridi/v15/2sDQZG5JnZLfkcWbqW0.ttf" - }, - { - "family": "Princess Sofia", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/princesssofia/v27/qWczB6yguIb8DZ_GXZst16n7GRz7mDUoupoI.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/princesssofia/v27/qWczB6yguIb8DZ_GXZst16n7GSz6kjE.ttf" - }, - { - "family": "Prociono", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v28", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/prociono/v28/r05YGLlR-KxAf9GGO8upyDYtStiJ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/prociono/v28/r05YGLlR-KxAf9GGO_uowjI.ttf" - }, - { - "family": "Prompt", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/prompt/v12/-W_9XJnvUD7dzB2CA9oYREcjeo0k.ttf", - "100italic": "https://fonts.gstatic.com/s/prompt/v12/-W_7XJnvUD7dzB2KZeJ8TkMBf50kbiM.ttf", - "200": "https://fonts.gstatic.com/s/prompt/v12/-W_8XJnvUD7dzB2Cr_s4bmkvc5Q9dw.ttf", - "200italic": "https://fonts.gstatic.com/s/prompt/v12/-W_6XJnvUD7dzB2KZeLQb2MrUZEtdzow.ttf", - "300": "https://fonts.gstatic.com/s/prompt/v12/-W_8XJnvUD7dzB2Cy_g4bmkvc5Q9dw.ttf", - "300italic": "https://fonts.gstatic.com/s/prompt/v12/-W_6XJnvUD7dzB2KZeK0bGMrUZEtdzow.ttf", - "regular": "https://fonts.gstatic.com/s/prompt/v12/-W__XJnvUD7dzB26Z9AcZkIzeg.ttf", - "italic": "https://fonts.gstatic.com/s/prompt/v12/-W_9XJnvUD7dzB2KZdoYREcjeo0k.ttf", - "500": "https://fonts.gstatic.com/s/prompt/v12/-W_8XJnvUD7dzB2Ck_k4bmkvc5Q9dw.ttf", - "500italic": "https://fonts.gstatic.com/s/prompt/v12/-W_6XJnvUD7dzB2KZeLsbWMrUZEtdzow.ttf", - "600": "https://fonts.gstatic.com/s/prompt/v12/-W_8XJnvUD7dzB2Cv_44bmkvc5Q9dw.ttf", - "600italic": "https://fonts.gstatic.com/s/prompt/v12/-W_6XJnvUD7dzB2KZeLAamMrUZEtdzow.ttf", - "700": "https://fonts.gstatic.com/s/prompt/v12/-W_8XJnvUD7dzB2C2_84bmkvc5Q9dw.ttf", - "700italic": "https://fonts.gstatic.com/s/prompt/v12/-W_6XJnvUD7dzB2KZeKka2MrUZEtdzow.ttf", - "800": "https://fonts.gstatic.com/s/prompt/v12/-W_8XJnvUD7dzB2Cx_w4bmkvc5Q9dw.ttf", - "800italic": "https://fonts.gstatic.com/s/prompt/v12/-W_6XJnvUD7dzB2KZeK4aGMrUZEtdzow.ttf", - "900": "https://fonts.gstatic.com/s/prompt/v12/-W_8XJnvUD7dzB2C4_04bmkvc5Q9dw.ttf", - "900italic": "https://fonts.gstatic.com/s/prompt/v12/-W_6XJnvUD7dzB2KZeKcaWMrUZEtdzow.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/prompt/v12/-W__XJnvUD7dzB2KZtoY.ttf" - }, - { - "family": "Prosto One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/prostoone/v21/OpNJno4VhNfK-RgpwWWxpipfWhXD00c.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/prostoone/v21/OpNJno4VhNfK-RgpwWWxlitVXg.ttf" - }, - { - "family": "Protest Guerrilla", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/protestguerrilla/v2/Qw3HZR5PDSL6K3irtrY-VJB2YzARHV0koJ8y_eiS.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/protestguerrilla/v2/Qw3HZR5PDSL6K3irtrY-VJB2YzARHW0lqps.ttf" - }, - { - "family": "Protest Revolution", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/protestrevolution/v2/11hcGofZ0kXBbxQXFB7MJsjtqnVw6Z2s8PIzTG1nQw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/protestrevolution/v2/11hcGofZ0kXBbxQXFB7MJsjtqnVw6Z2c8fg3.ttf" - }, - { - "family": "Protest Riot", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/protestriot/v2/d6lPkaOxWMKm7TdezXFmpkrM1_JgjmRpOA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/protestriot/v2/d6lPkaOxWMKm7TdezXFmpkr81vhk.ttf" - }, - { - "family": "Protest Strike", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/proteststrike/v2/0QI5MXdf4Y67Rn6vBog67ZjFlpzW0gZOs7BX.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/proteststrike/v2/0QI5MXdf4Y67Rn6vBog67ZjFlqzX2AI.ttf" - }, - { - "family": "Proza Libre", - "variants": [ - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v9", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/prozalibre/v9/LYjGdGHgj0k1DIQRyUEyyHovftvXWYyz.ttf", - "italic": "https://fonts.gstatic.com/s/prozalibre/v9/LYjEdGHgj0k1DIQRyUEyyEotdN_1XJyz7zc.ttf", - "500": "https://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyELbV__fcpC69i6N.ttf", - "500italic": "https://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTCvceJSY8z6Np1k.ttf", - "600": "https://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEL3UP_fcpC69i6N.ttf", - "600italic": "https://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTAfbeJSY8z6Np1k.ttf", - "700": "https://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEKTUf_fcpC69i6N.ttf", - "700italic": "https://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTGPaeJSY8z6Np1k.ttf", - "800": "https://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEKPUv_fcpC69i6N.ttf", - "800italic": "https://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTH_ZeJSY8z6Np1k.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/prozalibre/v9/LYjGdGHgj0k1DIQRyUEyyEoudN8.ttf" - }, - { - "family": "Public Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/publicsans/v21/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpi5ww0pX189fg.ttf", - "200": "https://fonts.gstatic.com/s/publicsans/v21/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulpm5ww0pX189fg.ttf", - "300": "https://fonts.gstatic.com/s/publicsans/v21/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuSJm5ww0pX189fg.ttf", - "regular": "https://fonts.gstatic.com/s/publicsans/v21/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpm5ww0pX189fg.ttf", - "500": "https://fonts.gstatic.com/s/publicsans/v21/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuJJm5ww0pX189fg.ttf", - "600": "https://fonts.gstatic.com/s/publicsans/v21/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuyJ65ww0pX189fg.ttf", - "700": "https://fonts.gstatic.com/s/publicsans/v21/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymu8Z65ww0pX189fg.ttf", - "800": "https://fonts.gstatic.com/s/publicsans/v21/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulp65ww0pX189fg.ttf", - "900": "https://fonts.gstatic.com/s/publicsans/v21/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuv565ww0pX189fg.ttf", - "100italic": "https://fonts.gstatic.com/s/publicsans/v21/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgQctfVotfj7j.ttf", - "200italic": "https://fonts.gstatic.com/s/publicsans/v21/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRgActfVotfj7j.ttf", - "300italic": "https://fonts.gstatic.com/s/publicsans/v21/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673toPgActfVotfj7j.ttf", - "italic": "https://fonts.gstatic.com/s/publicsans/v21/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgActfVotfj7j.ttf", - "500italic": "https://fonts.gstatic.com/s/publicsans/v21/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpjgActfVotfj7j.ttf", - "600italic": "https://fonts.gstatic.com/s/publicsans/v21/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tqPhwctfVotfj7j.ttf", - "700italic": "https://fonts.gstatic.com/s/publicsans/v21/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tq2hwctfVotfj7j.ttf", - "800italic": "https://fonts.gstatic.com/s/publicsans/v21/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRhwctfVotfj7j.ttf", - "900italic": "https://fonts.gstatic.com/s/publicsans/v21/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tr4hwctfVotfj7j.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/publicsans/v21/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpmJwgct.ttf" - }, - { - "family": "Puppies Play", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/puppiesplay/v11/wlp2gwHZEV99rG6M3NR9uB9vaAJSA_JN3Q.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/puppiesplay/v11/wlp2gwHZEV99rG6M3NR9uB9faQhW.ttf" - }, - { - "family": "Puritan", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v25", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/puritan/v25/845YNMgkAJ2VTtIo9JrwRdaI50M.ttf", - "italic": "https://fonts.gstatic.com/s/puritan/v25/845aNMgkAJ2VTtIoxJj6QfSN90PfXA.ttf", - "700": "https://fonts.gstatic.com/s/puritan/v25/845dNMgkAJ2VTtIozCbfYd6j-0rGRes.ttf", - "700italic": "https://fonts.gstatic.com/s/puritan/v25/845fNMgkAJ2VTtIoxJjC_dup_2jDVevnLQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/puritan/v25/845YNMgkAJ2VTtIoxJv6QQ.ttf" - }, - { - "family": "Purple Purse", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/purplepurse/v25/qWctB66gv53iAp-Vfs4My6qyeBb_ujA4ug.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/purplepurse/v25/qWctB66gv53iAp-Vfs4My6qCeRz7.ttf" - }, - { - "family": "Qahiri", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin" - ], - "version": "v11", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/qahiri/v11/tsssAp1RZy0C_hGuU3Chrnmupw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/qahiri/v11/tsssAp1RZy0C_hGeUnql.ttf" - }, - { - "family": "Quando", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/quando/v18/xMQVuFNaVa6YuW0pC6WzKX_QmA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/quando/v18/xMQVuFNaVa6YuW0ZCq-3.ttf" - }, - { - "family": "Quantico", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/quantico/v19/rax-HiSdp9cPL3KIF4xsLjxSmlLZ.ttf", - "italic": "https://fonts.gstatic.com/s/quantico/v19/rax4HiSdp9cPL3KIF7xuJDhwn0LZ6T8.ttf", - "700": "https://fonts.gstatic.com/s/quantico/v19/rax5HiSdp9cPL3KIF7TQARhasU7Q8Cad.ttf", - "700italic": "https://fonts.gstatic.com/s/quantico/v19/rax7HiSdp9cPL3KIF7xuHIRfu0ry9TadML4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/quantico/v19/rax-HiSdp9cPL3KIF7xtJDg.ttf" - }, - { - "family": "Quattrocento", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/quattrocento/v24/OZpEg_xvsDZQL_LKIF7q4jPHxGL7f4jFuA.ttf", - "700": "https://fonts.gstatic.com/s/quattrocento/v24/OZpbg_xvsDZQL_LKIF7q4jP_eE3fd6PZsXcM9w.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/quattrocento/v24/OZpEg_xvsDZQL_LKIF7q4jP3xWj_.ttf" - }, - { - "family": "Quattrocento Sans", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/quattrocentosans/v22/va9c4lja2NVIDdIAAoMR5MfuElaRB3zOvU7eHGHJ.ttf", - "italic": "https://fonts.gstatic.com/s/quattrocentosans/v22/va9a4lja2NVIDdIAAoMR5MfuElaRB0zMt0r8GXHJkLI.ttf", - "700": "https://fonts.gstatic.com/s/quattrocentosans/v22/va9Z4lja2NVIDdIAAoMR5MfuElaRB0RykmrWN33AiasJ.ttf", - "700italic": "https://fonts.gstatic.com/s/quattrocentosans/v22/va9X4lja2NVIDdIAAoMR5MfuElaRB0zMj_bTPXnijLsJV7E.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/quattrocentosans/v22/va9c4lja2NVIDdIAAoMR5MfuElaRB0zPt0o.ttf" - }, - { - "family": "Questrial", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/questrial/v19/QdVUSTchPBm7nuUeVf7EuStkm20oJA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/questrial/v19/QdVUSTchPBm7nuUeVf70uCFg.ttf" - }, - { - "family": "Quicksand", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v37", - "lastModified": "2025-09-02", - "files": { - "300": "https://fonts.gstatic.com/s/quicksand/v37/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkKEo18G0wx40QDw.ttf", - "regular": "https://fonts.gstatic.com/s/quicksand/v37/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkP8o18G0wx40QDw.ttf", - "500": "https://fonts.gstatic.com/s/quicksand/v37/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkM0o18G0wx40QDw.ttf", - "600": "https://fonts.gstatic.com/s/quicksand/v37/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkCEv18G0wx40QDw.ttf", - "700": "https://fonts.gstatic.com/s/quicksand/v37/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkBgv18G0wx40QDw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/quicksand/v37/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkP8o58C-xw.ttf" - }, - { - "family": "Quintessential", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/quintessential/v24/fdNn9sOGq31Yjnh3qWU14DdtjY5wS7kmAyxM.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/quintessential/v24/fdNn9sOGq31Yjnh3qWU14Ddtjb5xQb0.ttf" - }, - { - "family": "Qwigley", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/qwigley/v20/1cXzaU3UGJb5tGoCuVxsi1mBmcE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/qwigley/v20/1cXzaU3UGJb5tGoCiV1mjw.ttf" - }, - { - "family": "Qwitcher Grypen", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/qwitchergrypen/v8/pxicypclp9tDilN9RrC5BSI1dZmrSGNAom-wpw.ttf", - "700": "https://fonts.gstatic.com/s/qwitchergrypen/v8/pxiZypclp9tDilN9RrC5BSI1dZmT9ExkqkSsrvNXiA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/qwitchergrypen/v8/pxicypclp9tDilN9RrC5BSI1dZmbSWlE.ttf" - }, - { - "family": "REM", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/rem/v4/WnzgHAIoSDyHbRjfsYumpRvUPMLrrToUbIqIfBU.ttf", - "200": "https://fonts.gstatic.com/s/rem/v4/WnzgHAIoSDyHbRjfsYumpRvUPELqrToUbIqIfBU.ttf", - "300": "https://fonts.gstatic.com/s/rem/v4/WnzgHAIoSDyHbRjfsYumpRvUPJzqrToUbIqIfBU.ttf", - "regular": "https://fonts.gstatic.com/s/rem/v4/WnzgHAIoSDyHbRjfsYumpRvUPMLqrToUbIqIfBU.ttf", - "500": "https://fonts.gstatic.com/s/rem/v4/WnzgHAIoSDyHbRjfsYumpRvUPPDqrToUbIqIfBU.ttf", - "600": "https://fonts.gstatic.com/s/rem/v4/WnzgHAIoSDyHbRjfsYumpRvUPBztrToUbIqIfBU.ttf", - "700": "https://fonts.gstatic.com/s/rem/v4/WnzgHAIoSDyHbRjfsYumpRvUPCXtrToUbIqIfBU.ttf", - "800": "https://fonts.gstatic.com/s/rem/v4/WnzgHAIoSDyHbRjfsYumpRvUPELtrToUbIqIfBU.ttf", - "900": "https://fonts.gstatic.com/s/rem/v4/WnzgHAIoSDyHbRjfsYumpRvUPGvtrToUbIqIfBU.ttf", - "100italic": "https://fonts.gstatic.com/s/rem/v4/WnzmHAIoSDytZCogaeLNP7XTKQqpRXgeaKiNbBVWkw.ttf", - "200italic": "https://fonts.gstatic.com/s/rem/v4/WnzmHAIoSDytZCogaeLNP7XTKQqpxXkeaKiNbBVWkw.ttf", - "300italic": "https://fonts.gstatic.com/s/rem/v4/WnzmHAIoSDytZCogaeLNP7XTKQqpG3keaKiNbBVWkw.ttf", - "italic": "https://fonts.gstatic.com/s/rem/v4/WnzmHAIoSDytZCogaeLNP7XTKQqpRXkeaKiNbBVWkw.ttf", - "500italic": "https://fonts.gstatic.com/s/rem/v4/WnzmHAIoSDytZCogaeLNP7XTKQqpd3keaKiNbBVWkw.ttf", - "600italic": "https://fonts.gstatic.com/s/rem/v4/WnzmHAIoSDytZCogaeLNP7XTKQqpm34eaKiNbBVWkw.ttf", - "700italic": "https://fonts.gstatic.com/s/rem/v4/WnzmHAIoSDytZCogaeLNP7XTKQqpon4eaKiNbBVWkw.ttf", - "800italic": "https://fonts.gstatic.com/s/rem/v4/WnzmHAIoSDytZCogaeLNP7XTKQqpxX4eaKiNbBVWkw.ttf", - "900italic": "https://fonts.gstatic.com/s/rem/v4/WnzmHAIoSDytZCogaeLNP7XTKQqp7H4eaKiNbBVWkw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rem/v4/WnzgHAIoSDyHbRjfsYumpRvUPMLqnTseaA.ttf" - }, - { - "family": "Racing Sans One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/racingsansone/v17/sykr-yRtm7EvTrXNxkv5jfKKyDCwL3rmWpIBtA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/racingsansone/v17/sykr-yRtm7EvTrXNxkv5jfKKyDCALnDi.ttf" - }, - { - "family": "Radio Canada", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "canadian-aboriginal", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/radiocanada/v26/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nESkQPIJOdSSfOT.ttf", - "regular": "https://fonts.gstatic.com/s/radiocanada/v26/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nFMkQPIJOdSSfOT.ttf", - "500": "https://fonts.gstatic.com/s/radiocanada/v26/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nF-kQPIJOdSSfOT.ttf", - "600": "https://fonts.gstatic.com/s/radiocanada/v26/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nGSlgPIJOdSSfOT.ttf", - "700": "https://fonts.gstatic.com/s/radiocanada/v26/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nGrlgPIJOdSSfOT.ttf", - "300italic": "https://fonts.gstatic.com/s/radiocanada/v26/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0rWLLuNwTOOTa9k.ttf", - "italic": "https://fonts.gstatic.com/s/radiocanada/v26/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0uuLLuNwTOOTa9k.ttf", - "500italic": "https://fonts.gstatic.com/s/radiocanada/v26/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0tmLLuNwTOOTa9k.ttf", - "600italic": "https://fonts.gstatic.com/s/radiocanada/v26/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0jWMLuNwTOOTa9k.ttf", - "700italic": "https://fonts.gstatic.com/s/radiocanada/v26/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0gyMLuNwTOOTa9k.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/radiocanada/v26/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nFMkTPJLuM.ttf" - }, - { - "family": "Radio Canada Big", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/radiocanadabig/v3/LYjUdHrinEImAoQewU0hyTsPFra4Yp-6A-YRBF-RX6nNRY3p2pcheCsG.ttf", - "500": "https://fonts.gstatic.com/s/radiocanadabig/v3/LYjUdHrinEImAoQewU0hyTsPFra4Yp-6A-YRBF-RX6n_RY3p2pcheCsG.ttf", - "600": "https://fonts.gstatic.com/s/radiocanadabig/v3/LYjUdHrinEImAoQewU0hyTsPFra4Yp-6A-YRBF-RX6kTQo3p2pcheCsG.ttf", - "700": "https://fonts.gstatic.com/s/radiocanadabig/v3/LYjUdHrinEImAoQewU0hyTsPFra4Yp-6A-YRBF-RX6kqQo3p2pcheCsG.ttf", - "italic": "https://fonts.gstatic.com/s/radiocanadabig/v3/LYjqdHrinEImAoQewU0hyTsPFra4SJaI_D54b8U_WLwFBmWq0JMDfTsGdMc.ttf", - "500italic": "https://fonts.gstatic.com/s/radiocanadabig/v3/LYjqdHrinEImAoQewU0hyTsPFra4SJaI_D54b8U_WLwFBleq0JMDfTsGdMc.ttf", - "600italic": "https://fonts.gstatic.com/s/radiocanadabig/v3/LYjqdHrinEImAoQewU0hyTsPFra4SJaI_D54b8U_WLwFBrut0JMDfTsGdMc.ttf", - "700italic": "https://fonts.gstatic.com/s/radiocanadabig/v3/LYjqdHrinEImAoQewU0hyTsPFra4SJaI_D54b8U_WLwFBoKt0JMDfTsGdMc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/radiocanadabig/v3/LYjUdHrinEImAoQewU0hyTsPFra4Yp-6A-YRBF-RX6nNRb3o0JM.ttf" - }, - { - "family": "Radley", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/radley/v24/LYjDdGzinEIjCN19oAlEpVs3VQ.ttf", - "italic": "https://fonts.gstatic.com/s/radley/v24/LYjBdGzinEIjCN1NogNAh14nVcfe.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/radley/v24/LYjDdGzinEIjCN1NoQNA.ttf" - }, - { - "family": "Rajdhani", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/rajdhani/v17/LDI2apCSOBg7S-QT7pasEcOsc-bGkqIw.ttf", - "regular": "https://fonts.gstatic.com/s/rajdhani/v17/LDIxapCSOBg7S-QT7q4AOeekWPrP.ttf", - "500": "https://fonts.gstatic.com/s/rajdhani/v17/LDI2apCSOBg7S-QT7pb0EMOsc-bGkqIw.ttf", - "600": "https://fonts.gstatic.com/s/rajdhani/v17/LDI2apCSOBg7S-QT7pbYF8Osc-bGkqIw.ttf", - "700": "https://fonts.gstatic.com/s/rajdhani/v17/LDI2apCSOBg7S-QT7pa8FsOsc-bGkqIw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rajdhani/v17/LDIxapCSOBg7S-QT7p4BM-M.ttf" - }, - { - "family": "Rakkas", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/rakkas/v22/Qw3cZQlNHiblL3j_lttPOeMcCw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rakkas/v22/Qw3cZQlNHiblL3jPl9FL.ttf" - }, - { - "family": "Raleway", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v37", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvao4CPNLA3JC9c.ttf", - "200": "https://fonts.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtaooCPNLA3JC9c.ttf", - "300": "https://fonts.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVuEooCPNLA3JC9c.ttf", - "regular": "https://fonts.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaooCPNLA3JC9c.ttf", - "500": "https://fonts.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvoooCPNLA3JC9c.ttf", - "600": "https://fonts.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVsEpYCPNLA3JC9c.ttf", - "700": "https://fonts.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pYCPNLA3JC9c.ttf", - "800": "https://fonts.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtapYCPNLA3JC9c.ttf", - "900": "https://fonts.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtzpYCPNLA3JC9c.ttf", - "100italic": "https://fonts.gstatic.com/s/raleway/v37/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4WjNPrQVIT9c2c8.ttf", - "200italic": "https://fonts.gstatic.com/s/raleway/v37/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4ejMPrQVIT9c2c8.ttf", - "300italic": "https://fonts.gstatic.com/s/raleway/v37/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4TbMPrQVIT9c2c8.ttf", - "italic": "https://fonts.gstatic.com/s/raleway/v37/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4WjMPrQVIT9c2c8.ttf", - "500italic": "https://fonts.gstatic.com/s/raleway/v37/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4VrMPrQVIT9c2c8.ttf", - "600italic": "https://fonts.gstatic.com/s/raleway/v37/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4bbLPrQVIT9c2c8.ttf", - "700italic": "https://fonts.gstatic.com/s/raleway/v37/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4Y_LPrQVIT9c2c8.ttf", - "800italic": "https://fonts.gstatic.com/s/raleway/v37/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4ejLPrQVIT9c2c8.ttf", - "900italic": "https://fonts.gstatic.com/s/raleway/v37/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4cHLPrQVIT9c2c8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCOPrQ.ttf" - }, - { - "family": "Raleway Dots", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/ralewaydots/v19/6NUR8FifJg6AfQvzpshgwJ8kyf9Fdty2ew.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ralewaydots/v19/6NUR8FifJg6AfQvzpshgwJ8UyPVB.ttf" - }, - { - "family": "Ramabhadra", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/ramabhadra/v17/EYq2maBOwqRW9P1SQ83LehNGX5uWw3o.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ramabhadra/v17/EYq2maBOwqRW9P1SQ83LShJMWw.ttf" - }, - { - "family": "Ramaraja", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/ramaraja/v17/SlGTmQearpYAYG1CABIkqnB6aSQU.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ramaraja/v17/SlGTmQearpYAYG1CACIloHQ.ttf" - }, - { - "family": "Rambla", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/rambla/v14/snfrs0ip98hx6mr0I7IONthkwQ.ttf", - "italic": "https://fonts.gstatic.com/s/rambla/v14/snfps0ip98hx6mrEIbgKFN10wYKa.ttf", - "700": "https://fonts.gstatic.com/s/rambla/v14/snfos0ip98hx6mrMn50qPvN4yJuDYQ.ttf", - "700italic": "https://fonts.gstatic.com/s/rambla/v14/snfus0ip98hx6mrEIYC2O_l86p6TYS-Y.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rambla/v14/snfrs0ip98hx6mrEIrgK.ttf" - }, - { - "family": "Rammetto One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/rammettoone/v21/LhWiMV3HOfMbMetJG3lQDpp9Mvuciu-_SQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rammettoone/v21/LhWiMV3HOfMbMetJG3lQDppNM_GY.ttf" - }, - { - "family": "Rampart One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/rampartone/v13/K2F1fZFGl_JSR1tAWNG9R6qgLS76ZHOM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rampartone/v13/K2F1fZFGl_JSR1tAWNG9R5qhJyo.ttf" - }, - { - "family": "Ranchers", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/ranchers/v19/zrfm0H3Lx-P2Xvs2AoDYDC79XTHv.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ranchers/v19/zrfm0H3Lx-P2Xvs2ArDZBio.ttf" - }, - { - "family": "Rancho", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/rancho/v22/46kulbzmXjLaqZRlbWXgd0RY1g.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rancho/v22/46kulbzmXjLaqZRVbG_k.ttf" - }, - { - "family": "Ranga", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-04-23", - "files": { - "regular": "https://fonts.gstatic.com/s/ranga/v22/C8ct4cYisGb28p6CLDwZwmGE.ttf", - "700": "https://fonts.gstatic.com/s/ranga/v22/C8cg4cYisGb28qY-AxgR6X2NZAn2.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ranga/v22/C8ct4cYisGb28q6DJjg.ttf" - }, - { - "family": "Rasa", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/rasa/v27/xn76YHIn1mWmVKl8ZtAM9NrJfN4YJW41fcvN2KT4.ttf", - "regular": "https://fonts.gstatic.com/s/rasa/v27/xn76YHIn1mWmVKl8ZtAM9NrJfN5GJW41fcvN2KT4.ttf", - "500": "https://fonts.gstatic.com/s/rasa/v27/xn76YHIn1mWmVKl8ZtAM9NrJfN50JW41fcvN2KT4.ttf", - "600": "https://fonts.gstatic.com/s/rasa/v27/xn76YHIn1mWmVKl8ZtAM9NrJfN6YIm41fcvN2KT4.ttf", - "700": "https://fonts.gstatic.com/s/rasa/v27/xn76YHIn1mWmVKl8ZtAM9NrJfN6hIm41fcvN2KT4.ttf", - "300italic": "https://fonts.gstatic.com/s/rasa/v27/xn78YHIn1mWmfqBOmQhln0Bne8uOZth2d8_v3bT4Ycc.ttf", - "italic": "https://fonts.gstatic.com/s/rasa/v27/xn78YHIn1mWmfqBOmQhln0Bne8uOZoZ2d8_v3bT4Ycc.ttf", - "500italic": "https://fonts.gstatic.com/s/rasa/v27/xn78YHIn1mWmfqBOmQhln0Bne8uOZrR2d8_v3bT4Ycc.ttf", - "600italic": "https://fonts.gstatic.com/s/rasa/v27/xn78YHIn1mWmfqBOmQhln0Bne8uOZlhxd8_v3bT4Ycc.ttf", - "700italic": "https://fonts.gstatic.com/s/rasa/v27/xn78YHIn1mWmfqBOmQhln0Bne8uOZmFxd8_v3bT4Ycc.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rasa/v27/xn76YHIn1mWmVKl8ZtAM9NrJfN5GJV40d88.ttf" - }, - { - "family": "Rationale", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v30", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/rationale/v30/9XUnlJ92n0_JFxHIfHcsdlFMzLC2Zw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rationale/v30/9XUnlJ92n0_JFxHIfHccd1tI.ttf" - }, - { - "family": "Ravi Prakash", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v21", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/raviprakash/v21/gokpH6fsDkVrF9Bv9X8SOAKHmNZEq6TTFw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/raviprakash/v21/gokpH6fsDkVrF9Bv9X8SOAK3mdxA.ttf" - }, - { - "family": "Readex Pro", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/readexpro/v27/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCYUSmgmsglvjkag.ttf", - "300": "https://fonts.gstatic.com/s/readexpro/v27/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCv0Smgmsglvjkag.ttf", - "regular": "https://fonts.gstatic.com/s/readexpro/v27/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTC4USmgmsglvjkag.ttf", - "500": "https://fonts.gstatic.com/s/readexpro/v27/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTC00Smgmsglvjkag.ttf", - "600": "https://fonts.gstatic.com/s/readexpro/v27/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCP0Omgmsglvjkag.ttf", - "700": "https://fonts.gstatic.com/s/readexpro/v27/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCBkOmgmsglvjkag.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/readexpro/v27/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTC4USWg2Ek.ttf" - }, - { - "family": "Recursive", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v44", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/recursive/v44/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadDck018vwxjDJCL.ttf", - "regular": "https://fonts.gstatic.com/s/recursive/v44/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadCCk018vwxjDJCL.ttf", - "500": "https://fonts.gstatic.com/s/recursive/v44/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadCwk018vwxjDJCL.ttf", - "600": "https://fonts.gstatic.com/s/recursive/v44/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadBclE18vwxjDJCL.ttf", - "700": "https://fonts.gstatic.com/s/recursive/v44/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadBllE18vwxjDJCL.ttf", - "800": "https://fonts.gstatic.com/s/recursive/v44/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadAClE18vwxjDJCL.ttf", - "900": "https://fonts.gstatic.com/s/recursive/v44/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadArlE18vwxjDJCL.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/recursive/v44/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadCCk319tQg.ttf" - }, - { - "family": "Red Hat Display", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbjKWckg5-Xecg3w.ttf", - "regular": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbmyWckg5-Xecg3w.ttf", - "500": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbl6Wckg5-Xecg3w.ttf", - "600": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbrKRckg5-Xecg3w.ttf", - "700": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbouRckg5-Xecg3w.ttf", - "800": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbuyRckg5-Xecg3w.ttf", - "900": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbsWRckg5-Xecg3w.ttf", - "300italic": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVxAsz_VWZk3zJGg.ttf", - "italic": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVmgsz_VWZk3zJGg.ttf", - "500italic": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVqAsz_VWZk3zJGg.ttf", - "600italic": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVRAwz_VWZk3zJGg.ttf", - "700italic": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVfQwz_VWZk3zJGg.ttf", - "800italic": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVGgwz_VWZk3zJGg.ttf", - "900italic": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVMwwz_VWZk3zJGg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/redhatdisplay/v21/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbmyWQkkz_Q.ttf" - }, - { - "family": "Red Hat Mono", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/redhatmono/v16/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQQPI-7HNuW4QuKI.ttf", - "regular": "https://fonts.gstatic.com/s/redhatmono/v16/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQV3I-7HNuW4QuKI.ttf", - "500": "https://fonts.gstatic.com/s/redhatmono/v16/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQW_I-7HNuW4QuKI.ttf", - "600": "https://fonts.gstatic.com/s/redhatmono/v16/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQYPP-7HNuW4QuKI.ttf", - "700": "https://fonts.gstatic.com/s/redhatmono/v16/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQbrP-7HNuW4QuKI.ttf", - "300italic": "https://fonts.gstatic.com/s/redhatmono/v16/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLTfLHvUwVqKIJuw.ttf", - "italic": "https://fonts.gstatic.com/s/redhatmono/v16/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLE_LHvUwVqKIJuw.ttf", - "500italic": "https://fonts.gstatic.com/s/redhatmono/v16/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLIfLHvUwVqKIJuw.ttf", - "600italic": "https://fonts.gstatic.com/s/redhatmono/v16/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLzfXHvUwVqKIJuw.ttf", - "700italic": "https://fonts.gstatic.com/s/redhatmono/v16/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWL9PXHvUwVqKIJuw.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/redhatmono/v16/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQV3Iy7DHvQ.ttf" - }, - { - "family": "Red Hat Text", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/redhattext/v19/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML-ZwVrbacYVFtIY.ttf", - "regular": "https://fonts.gstatic.com/s/redhattext/v19/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML7hwVrbacYVFtIY.ttf", - "500": "https://fonts.gstatic.com/s/redhattext/v19/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML4pwVrbacYVFtIY.ttf", - "600": "https://fonts.gstatic.com/s/redhattext/v19/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML2Z3VrbacYVFtIY.ttf", - "700": "https://fonts.gstatic.com/s/redhattext/v19/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML193VrbacYVFtIY.ttf", - "300italic": "https://fonts.gstatic.com/s/redhattext/v19/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAz4PXQdadApIYv_g.ttf", - "italic": "https://fonts.gstatic.com/s/redhattext/v19/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzvvXQdadApIYv_g.ttf", - "500italic": "https://fonts.gstatic.com/s/redhattext/v19/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzjPXQdadApIYv_g.ttf", - "600italic": "https://fonts.gstatic.com/s/redhattext/v19/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzYPLQdadApIYv_g.ttf", - "700italic": "https://fonts.gstatic.com/s/redhattext/v19/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzWfLQdadApIYv_g.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/redhattext/v19/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML7hwZrfQdQ.ttf" - }, - { - "family": "Red Rose", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/redrose/v25/QdVISTYiLBjouPgEUajvsfWwDtc3MH8y8_sDcjSsYUVUjg.ttf", - "regular": "https://fonts.gstatic.com/s/redrose/v25/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yrfsDcjSsYUVUjg.ttf", - "500": "https://fonts.gstatic.com/s/redrose/v25/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yn_sDcjSsYUVUjg.ttf", - "600": "https://fonts.gstatic.com/s/redrose/v25/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yc_wDcjSsYUVUjg.ttf", - "700": "https://fonts.gstatic.com/s/redrose/v25/QdVISTYiLBjouPgEUajvsfWwDtc3MH8ySvwDcjSsYUVUjg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/redrose/v25/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yrfszcz6o.ttf" - }, - { - "family": "Redacted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/redacted/v11/Z9XVDmdRShme2O_7aITe4u2El6GC.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/redacted/v11/Z9XVDmdRShme2O_7aLTf6Ok.ttf" - }, - { - "family": "Redacted Script", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-17", - "files": { - "300": "https://fonts.gstatic.com/s/redactedscript/v12/ypvEbXGRglhokR7dcC3d1-R6zmxqHUzVmbI397ldkg.ttf", - "regular": "https://fonts.gstatic.com/s/redactedscript/v12/ypvBbXGRglhokR7dcC3d1-R6zmxSsWTxkZkr_g.ttf", - "700": "https://fonts.gstatic.com/s/redactedscript/v12/ypvEbXGRglhokR7dcC3d1-R6zmxqDUvVmbI397ldkg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/redactedscript/v12/ypvBbXGRglhokR7dcC3d1-R6zmxisG71.ttf" - }, - { - "family": "Reddit Mono", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/redditmono/v5/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUQCYacnnYz7yQYA.ttf", - "300": "https://fonts.gstatic.com/s/redditmono/v5/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUniYacnnYz7yQYA.ttf", - "regular": "https://fonts.gstatic.com/s/redditmono/v5/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUwCYacnnYz7yQYA.ttf", - "500": "https://fonts.gstatic.com/s/redditmono/v5/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vU8iYacnnYz7yQYA.ttf", - "600": "https://fonts.gstatic.com/s/redditmono/v5/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUHiEacnnYz7yQYA.ttf", - "700": "https://fonts.gstatic.com/s/redditmono/v5/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUJyEacnnYz7yQYA.ttf", - "800": "https://fonts.gstatic.com/s/redditmono/v5/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUQCEacnnYz7yQYA.ttf", - "900": "https://fonts.gstatic.com/s/redditmono/v5/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUaSEacnnYz7yQYA.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/redditmono/v5/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUwCYqc3Pc.ttf" - }, - { - "family": "Reddit Sans", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/redditsans/v6/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5ux7YxmAVfBiVMFlw.ttf", - "300": "https://fonts.gstatic.com/s/redditsans/v6/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxM4xmAVfBiVMFlw.ttf", - "regular": "https://fonts.gstatic.com/s/redditsans/v6/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxbYxmAVfBiVMFlw.ttf", - "500": "https://fonts.gstatic.com/s/redditsans/v6/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxX4xmAVfBiVMFlw.ttf", - "600": "https://fonts.gstatic.com/s/redditsans/v6/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxs4tmAVfBiVMFlw.ttf", - "700": "https://fonts.gstatic.com/s/redditsans/v6/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxiotmAVfBiVMFlw.ttf", - "800": "https://fonts.gstatic.com/s/redditsans/v6/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5ux7YtmAVfBiVMFlw.ttf", - "900": "https://fonts.gstatic.com/s/redditsans/v6/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxxItmAVfBiVMFlw.ttf", - "200italic": "https://fonts.gstatic.com/s/redditsans/v6/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc8OQl3Fq1YVlz5F.ttf", - "300italic": "https://fonts.gstatic.com/s/redditsans/v6/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc_QQl3Fq1YVlz5F.ttf", - "italic": "https://fonts.gstatic.com/s/redditsans/v6/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc-OQl3Fq1YVlz5F.ttf", - "500italic": "https://fonts.gstatic.com/s/redditsans/v6/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc-8Ql3Fq1YVlz5F.ttf", - "600italic": "https://fonts.gstatic.com/s/redditsans/v6/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc9QRV3Fq1YVlz5F.ttf", - "700italic": "https://fonts.gstatic.com/s/redditsans/v6/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc9pRV3Fq1YVlz5F.ttf", - "800italic": "https://fonts.gstatic.com/s/redditsans/v6/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc8ORV3Fq1YVlz5F.ttf", - "900italic": "https://fonts.gstatic.com/s/redditsans/v6/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc8nRV3Fq1YVlz5F.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/redditsans/v6/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxbYxWAF3F.ttf" - }, - { - "family": "Reddit Sans Condensed", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/redditsanscondensed/v5/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro9kKUpU4u7XDIuc.ttf", - "300": "https://fonts.gstatic.com/s/redditsanscondensed/v5/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJrowcKUpU4u7XDIuc.ttf", - "regular": "https://fonts.gstatic.com/s/redditsanscondensed/v5/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro1kKUpU4u7XDIuc.ttf", - "500": "https://fonts.gstatic.com/s/redditsanscondensed/v5/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro2sKUpU4u7XDIuc.ttf", - "600": "https://fonts.gstatic.com/s/redditsanscondensed/v5/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro4cNUpU4u7XDIuc.ttf", - "700": "https://fonts.gstatic.com/s/redditsanscondensed/v5/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro74NUpU4u7XDIuc.ttf", - "800": "https://fonts.gstatic.com/s/redditsanscondensed/v5/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro9kNUpU4u7XDIuc.ttf", - "900": "https://fonts.gstatic.com/s/redditsanscondensed/v5/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro_ANUpU4u7XDIuc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/redditsanscondensed/v5/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro1kKYpQyvw.ttf" - }, - { - "family": "Redressed", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v32", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/redressed/v32/x3dickHUbrmJ7wMy9MsBfPACvy_1BA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/redressed/v32/x3dickHUbrmJ7wMy9MsxffoG.ttf" - }, - { - "family": "Reem Kufi", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v28", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/reemkufi/v28/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtuZnEGGf3qGuvM4.ttf", - "500": "https://fonts.gstatic.com/s/reemkufi/v28/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQttRnEGGf3qGuvM4.ttf", - "600": "https://fonts.gstatic.com/s/reemkufi/v28/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtjhgEGGf3qGuvM4.ttf", - "700": "https://fonts.gstatic.com/s/reemkufi/v28/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtgFgEGGf3qGuvM4.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/reemkufi/v28/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtuZnIGCV2g.ttf" - }, - { - "family": "Reem Kufi Fun", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/reemkufifun/v13/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChoYj3nCgrvqZzZXq.ttf", - "500": "https://fonts.gstatic.com/s/reemkufifun/v13/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChoYR3nCgrvqZzZXq.ttf", - "600": "https://fonts.gstatic.com/s/reemkufifun/v13/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChob92XCgrvqZzZXq.ttf", - "700": "https://fonts.gstatic.com/s/reemkufifun/v13/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChobE2XCgrvqZzZXq.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/reemkufifun/v13/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChoYj3kChpP4.ttf", - "colorCapabilities": [ - "COLRv0" - ] - }, - { - "family": "Reem Kufi Ink", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v11", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/reemkufiink/v11/oPWJ_kJmmu8hCvB9iFumxZSnRj5dQnSX1ko.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/reemkufiink/v11/oPWJ_kJmmu8hCvB9iFumxZSndj9XRg.ttf", - "colorCapabilities": [ - "COLRv1", - "SVG" - ] - }, - { - "family": "Reenie Beanie", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/reeniebeanie/v22/z7NSdR76eDkaJKZJFkkjuvWxbP2_qoOgf_w.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/reeniebeanie/v22/z7NSdR76eDkaJKZJFkkjuvWxXPy1rg.ttf" - }, - { - "family": "Reggae One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/reggaeone/v19/7r3DqX5msMIkeuwJwOJt_a5L5uH-mts.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/reggaeone/v19/7r3DqX5msMIkeuwJwOJtza9B4g.ttf" - }, - { - "family": "Rethink Sans", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v7", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/rethinksans/v7/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45DmqkmFRCE7mma-aua4.ttf", - "500": "https://fonts.gstatic.com/s/rethinksans/v7/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45DmqklNRCE7mma-aua4.ttf", - "600": "https://fonts.gstatic.com/s/rethinksans/v7/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45Dmqkr9WCE7mma-aua4.ttf", - "700": "https://fonts.gstatic.com/s/rethinksans/v7/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45DmqkoZWCE7mma-aua4.ttf", - "800": "https://fonts.gstatic.com/s/rethinksans/v7/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45DmqkuFWCE7mma-aua4.ttf", - "italic": "https://fonts.gstatic.com/s/rethinksans/v7/AMOFz4SDuXOMCPfdoglY9JQEUUK5wyyTfpeth6kS4A3snY2fqa7iVQ.ttf", - "500italic": "https://fonts.gstatic.com/s/rethinksans/v7/AMOFz4SDuXOMCPfdoglY9JQEUUK5wyyTfpeth6kS0g3snY2fqa7iVQ.ttf", - "600italic": "https://fonts.gstatic.com/s/rethinksans/v7/AMOFz4SDuXOMCPfdoglY9JQEUUK5wyyTfpeth6kSPgrsnY2fqa7iVQ.ttf", - "700italic": "https://fonts.gstatic.com/s/rethinksans/v7/AMOFz4SDuXOMCPfdoglY9JQEUUK5wyyTfpeth6kSBwrsnY2fqa7iVQ.ttf", - "800italic": "https://fonts.gstatic.com/s/rethinksans/v7/AMOFz4SDuXOMCPfdoglY9JQEUUK5wyyTfpeth6kSYArsnY2fqa7iVQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rethinksans/v7/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45DmqkmFROE_snQ.ttf" - }, - { - "family": "Revalia", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/revalia/v24/WwkexPimBE2-4ZPEeVruNIgJSNM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/revalia/v24/WwkexPimBE2-4ZPESVvkMA.ttf" - }, - { - "family": "Rhodium Libre", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/rhodiumlibre/v21/1q2AY5adA0tn_ukeHcQHqpx6pETLeo2gm2U.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rhodiumlibre/v21/1q2AY5adA0tn_ukeHcQHqpx6lEXBfg.ttf" - }, - { - "family": "Ribeye", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/ribeye/v27/L0x8DFMxk1MP9R3RvPCmRSlUig.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ribeye/v27/L0x8DFMxk1MP9R3hvfqi.ttf" - }, - { - "family": "Ribeye Marrow", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/ribeyemarrow/v26/GFDsWApshnqMRO2JdtRZ2d0vEAwTVWgKdtw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ribeyemarrow/v26/GFDsWApshnqMRO2JdtRZ2d0vIA0ZUQ.ttf" - }, - { - "family": "Righteous", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/righteous/v18/1cXxaUPXBpj2rGoU7C9mj3uEicG01A.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/righteous/v18/1cXxaUPXBpj2rGoU7C9WjnGA.ttf" - }, - { - "family": "Risque", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/risque/v24/VdGfAZUfHosahXxoCUYVBJ-T5g.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/risque/v24/VdGfAZUfHosahXxYCEwR.ttf" - }, - { - "family": "Road Rage", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/roadrage/v9/6NUU8F2fKAOBKjjr4ekvtMYAwdRZfw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/roadrage/v9/6NUU8F2fKAOBKjjr4ekftcwE.ttf" - }, - { - "family": "Roboto", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v49", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/roboto/v49/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbGmTggvWl0Qn.ttf", - "200": "https://fonts.gstatic.com/s/roboto/v49/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuZEbWmTggvWl0Qn.ttf", - "300": "https://fonts.gstatic.com/s/roboto/v49/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuaabWmTggvWl0Qn.ttf", - "regular": "https://fonts.gstatic.com/s/roboto/v49/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbWmTggvWl0Qn.ttf", - "500": "https://fonts.gstatic.com/s/roboto/v49/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWub2bWmTggvWl0Qn.ttf", - "600": "https://fonts.gstatic.com/s/roboto/v49/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuYaammTggvWl0Qn.ttf", - "700": "https://fonts.gstatic.com/s/roboto/v49/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuYjammTggvWl0Qn.ttf", - "800": "https://fonts.gstatic.com/s/roboto/v49/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuZEammTggvWl0Qn.ttf", - "900": "https://fonts.gstatic.com/s/roboto/v49/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuZtammTggvWl0Qn.ttf", - "100italic": "https://fonts.gstatic.com/s/roboto/v49/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLoHRiA_0klQnx24.ttf", - "200italic": "https://fonts.gstatic.com/s/roboto/v49/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLgHQiA_0klQnx24.ttf", - "300italic": "https://fonts.gstatic.com/s/roboto/v49/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLt_QiA_0klQnx24.ttf", - "italic": "https://fonts.gstatic.com/s/roboto/v49/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLoHQiA_0klQnx24.ttf", - "500italic": "https://fonts.gstatic.com/s/roboto/v49/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLrPQiA_0klQnx24.ttf", - "600italic": "https://fonts.gstatic.com/s/roboto/v49/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLl_XiA_0klQnx24.ttf", - "700italic": "https://fonts.gstatic.com/s/roboto/v49/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLmbXiA_0klQnx24.ttf", - "800italic": "https://fonts.gstatic.com/s/roboto/v49/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLgHXiA_0klQnx24.ttf", - "900italic": "https://fonts.gstatic.com/s/roboto/v49/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLijXiA_0klQnx24.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/roboto/v49/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmSiA8.ttf" - }, - { - "family": "Roboto Condensed", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v31", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyo_BJ731BKMSK.ttf", - "200": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyUyovBJ731BKMSK.ttf", - "300": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyXsovBJ731BKMSK.ttf", - "regular": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyovBJ731BKMSK.ttf", - "500": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWAovBJ731BKMSK.ttf", - "600": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyVspfBJ731BKMSK.ttf", - "700": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyVVpfBJ731BKMSK.ttf", - "800": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyUypfBJ731BKMSK.ttf", - "900": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyUbpfBJ731BKMSK.ttf", - "100italic": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64RgL5XljLdSK37o.ttf", - "200italic": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64ZgK5XljLdSK37o.ttf", - "300italic": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64UYK5XljLdSK37o.ttf", - "italic": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64RgK5XljLdSK37o.ttf", - "500italic": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64SoK5XljLdSK37o.ttf", - "600italic": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64cYN5XljLdSK37o.ttf", - "700italic": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64f8N5XljLdSK37o.ttf", - "800italic": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64ZgN5XljLdSK37o.ttf", - "900italic": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64bEN5XljLdSK37o.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyosBI5Xk.ttf" - }, - { - "family": "Roboto Flex", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v30", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/robotoflex/v30/NaNnepOXO_NexZs0b5QrzlOHb8wCikXpYqmZsWI-__OGbt8jZktqc2V3Zs0KvDLdBP8SBZtOs2IifRuUZQMsPJtUsR4DEK6cULNeUx9XgTnH37Ha_FIAp4Fm0PP1hw45DntW2x0wZGzhPmr1YNMYKYn9_1IQXGwJAiUJVUMdN5YUW4O8HtSoXjC1z3QSabshNFVe3e0O5j3ZjrZCu23Qd4G0EBysQNK-QKavMl1cKq3tHXtXi8mzLjaAQbGunCNCKMY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/robotoflex/v30/NaNnepOXO_NexZs0b5QrzlOHb8wCikXpYqmZsWI-__OGbt8jZktqc2V3Zs0KvDLdBP8SBZtOs2IifRuUZQMsPJtUsR4DEK6cULNeUx9XgTnH37Ha_FIAp4Fm0PP1hw45DntW2x0wZGzhPmr1YNMYKYn9_1IQXGwJAiUJVUMdN5YUW4O8HtSoXjC1z3QSabshNFVe3e0O5j3ZjrZCu23Qd4G0EBysQNK-QKavMl1cKq3tHXtXi8mzLjaAcbCkmA.ttf" - }, - { - "family": "Roboto Mono", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v31", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/robotomono/v31/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vuPQ--5Ip2sSQ.ttf", - "200": "https://fonts.gstatic.com/s/robotomono/v31/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_XvqPQ--5Ip2sSQ.ttf", - "300": "https://fonts.gstatic.com/s/robotomono/v31/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_gPqPQ--5Ip2sSQ.ttf", - "regular": "https://fonts.gstatic.com/s/robotomono/v31/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vqPQ--5Ip2sSQ.ttf", - "500": "https://fonts.gstatic.com/s/robotomono/v31/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_7PqPQ--5Ip2sSQ.ttf", - "600": "https://fonts.gstatic.com/s/robotomono/v31/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_AP2PQ--5Ip2sSQ.ttf", - "700": "https://fonts.gstatic.com/s/robotomono/v31/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_Of2PQ--5Ip2sSQ.ttf", - "100italic": "https://fonts.gstatic.com/s/robotomono/v31/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAeW9AJi8SZwt.ttf", - "200italic": "https://fonts.gstatic.com/s/robotomono/v31/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrnnAOW9AJi8SZwt.ttf", - "300italic": "https://fonts.gstatic.com/s/robotomono/v31/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrk5AOW9AJi8SZwt.ttf", - "italic": "https://fonts.gstatic.com/s/robotomono/v31/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAOW9AJi8SZwt.ttf", - "500italic": "https://fonts.gstatic.com/s/robotomono/v31/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlVAOW9AJi8SZwt.ttf", - "600italic": "https://fonts.gstatic.com/s/robotomono/v31/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrm5B-W9AJi8SZwt.ttf", - "700italic": "https://fonts.gstatic.com/s/robotomono/v31/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrmAB-W9AJi8SZwt.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/robotomono/v31/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vq_QuW9.ttf" - }, - { - "family": "Roboto Serif", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/robotoserif/v17/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEliosp6d2Af5fR4k.ttf", - "200": "https://fonts.gstatic.com/s/robotoserif/v17/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElqotp6d2Af5fR4k.ttf", - "300": "https://fonts.gstatic.com/s/robotoserif/v17/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElnQtp6d2Af5fR4k.ttf", - "regular": "https://fonts.gstatic.com/s/robotoserif/v17/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEliotp6d2Af5fR4k.ttf", - "500": "https://fonts.gstatic.com/s/robotoserif/v17/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElhgtp6d2Af5fR4k.ttf", - "600": "https://fonts.gstatic.com/s/robotoserif/v17/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElvQqp6d2Af5fR4k.ttf", - "700": "https://fonts.gstatic.com/s/robotoserif/v17/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEls0qp6d2Af5fR4k.ttf", - "800": "https://fonts.gstatic.com/s/robotoserif/v17/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElqoqp6d2Af5fR4k.ttf", - "900": "https://fonts.gstatic.com/s/robotoserif/v17/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEloMqp6d2Af5fR4k.ttf", - "100italic": "https://fonts.gstatic.com/s/robotoserif/v17/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuT-V8BdxaV4nUFw.ttf", - "200italic": "https://fonts.gstatic.com/s/robotoserif/v17/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Juz-R8BdxaV4nUFw.ttf", - "300italic": "https://fonts.gstatic.com/s/robotoserif/v17/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuEeR8BdxaV4nUFw.ttf", - "italic": "https://fonts.gstatic.com/s/robotoserif/v17/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuT-R8BdxaV4nUFw.ttf", - "500italic": "https://fonts.gstatic.com/s/robotoserif/v17/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JufeR8BdxaV4nUFw.ttf", - "600italic": "https://fonts.gstatic.com/s/robotoserif/v17/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JukeN8BdxaV4nUFw.ttf", - "700italic": "https://fonts.gstatic.com/s/robotoserif/v17/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuqON8BdxaV4nUFw.ttf", - "800italic": "https://fonts.gstatic.com/s/robotoserif/v17/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Juz-N8BdxaV4nUFw.ttf", - "900italic": "https://fonts.gstatic.com/s/robotoserif/v17/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Ju5uN8BdxaV4nUFw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/robotoserif/v17/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEliotl6Z8BQ.ttf" - }, - { - "family": "Roboto Slab", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v36", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/robotoslab/v36/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjojIWWaG5iddG-1A.ttf", - "200": "https://fonts.gstatic.com/s/robotoslab/v36/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoDISWaG5iddG-1A.ttf", - "300": "https://fonts.gstatic.com/s/robotoslab/v36/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjo0oSWaG5iddG-1A.ttf", - "regular": "https://fonts.gstatic.com/s/robotoslab/v36/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjojISWaG5iddG-1A.ttf", - "500": "https://fonts.gstatic.com/s/robotoslab/v36/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjovoSWaG5iddG-1A.ttf", - "600": "https://fonts.gstatic.com/s/robotoslab/v36/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoUoOWaG5iddG-1A.ttf", - "700": "https://fonts.gstatic.com/s/robotoslab/v36/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoa4OWaG5iddG-1A.ttf", - "800": "https://fonts.gstatic.com/s/robotoslab/v36/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoDIOWaG5iddG-1A.ttf", - "900": "https://fonts.gstatic.com/s/robotoslab/v36/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoJYOWaG5iddG-1A.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/robotoslab/v36/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjojISmaWRm.ttf" - }, - { - "family": "Rochester", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/rochester/v24/6ae-4KCqVa4Zy6Fif-Uy31vWNTMwoQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rochester/v24/6ae-4KCqVa4Zy6Fif-UC3lHS.ttf" - }, - { - "family": "Rock 3D", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin" - ], - "version": "v13", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/rock3d/v13/yYLp0hrL0PCo651513SnwRnQyNI.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rock3d/v13/yYLp0hrL0PCo651553WtxQ.ttf" - }, - { - "family": "Rock Salt", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/rocksalt/v24/MwQ0bhv11fWD6QsAVOZbsEk7hbBWrA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rocksalt/v24/MwQ0bhv11fWD6QsAVOZrsUM_.ttf" - }, - { - "family": "RocknRoll One", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/rocknrollone/v16/kmK7ZqspGAfCeUiW6FFlmEC9guVhs7tfUxc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rocknrollone/v16/kmK7ZqspGAfCeUiW6FFlmEC9suRrtw.ttf" - }, - { - "family": "Rokkitt", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v39", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/rokkitt/v39/qFdb35qfgYFjGy5hukqqhw5XeRgdi1rydpDLE76HvN6n.ttf", - "200": "https://fonts.gstatic.com/s/rokkitt/v39/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pyd5DLE76HvN6n.ttf", - "300": "https://fonts.gstatic.com/s/rokkitt/v39/qFdb35qfgYFjGy5hukqqhw5XeRgdi1qsd5DLE76HvN6n.ttf", - "regular": "https://fonts.gstatic.com/s/rokkitt/v39/qFdb35qfgYFjGy5hukqqhw5XeRgdi1ryd5DLE76HvN6n.ttf", - "500": "https://fonts.gstatic.com/s/rokkitt/v39/qFdb35qfgYFjGy5hukqqhw5XeRgdi1rAd5DLE76HvN6n.ttf", - "600": "https://fonts.gstatic.com/s/rokkitt/v39/qFdb35qfgYFjGy5hukqqhw5XeRgdi1oscJDLE76HvN6n.ttf", - "700": "https://fonts.gstatic.com/s/rokkitt/v39/qFdb35qfgYFjGy5hukqqhw5XeRgdi1oVcJDLE76HvN6n.ttf", - "800": "https://fonts.gstatic.com/s/rokkitt/v39/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pycJDLE76HvN6n.ttf", - "900": "https://fonts.gstatic.com/s/rokkitt/v39/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pbcJDLE76HvN6n.ttf", - "100italic": "https://fonts.gstatic.com/s/rokkitt/v39/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NHiJGbqluc6nu9E.ttf", - "200italic": "https://fonts.gstatic.com/s/rokkitt/v39/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NPiIGbqluc6nu9E.ttf", - "300italic": "https://fonts.gstatic.com/s/rokkitt/v39/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NCaIGbqluc6nu9E.ttf", - "italic": "https://fonts.gstatic.com/s/rokkitt/v39/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NHiIGbqluc6nu9E.ttf", - "500italic": "https://fonts.gstatic.com/s/rokkitt/v39/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NEqIGbqluc6nu9E.ttf", - "600italic": "https://fonts.gstatic.com/s/rokkitt/v39/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NKaPGbqluc6nu9E.ttf", - "700italic": "https://fonts.gstatic.com/s/rokkitt/v39/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NJ-PGbqluc6nu9E.ttf", - "800italic": "https://fonts.gstatic.com/s/rokkitt/v39/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NPiPGbqluc6nu9E.ttf", - "900italic": "https://fonts.gstatic.com/s/rokkitt/v39/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NNGPGbqluc6nu9E.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rokkitt/v39/qFdb35qfgYFjGy5hukqqhw5XeRgdi1ryd6DKGbo.ttf" - }, - { - "family": "Romanesco", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/romanesco/v22/w8gYH2ozQOY7_r_J7mSn3HwLqOqSBg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/romanesco/v22/w8gYH2ozQOY7_r_J7mSX3XYP.ttf" - }, - { - "family": "Ropa Sans", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/ropasans/v16/EYqxmaNOzLlWtsZSScyKWjloU5KP2g.ttf", - "italic": "https://fonts.gstatic.com/s/ropasans/v16/EYq3maNOzLlWtsZSScy6WDNscZef2mNE.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ropasans/v16/EYqxmaNOzLlWtsZSScy6WzNs.ttf" - }, - { - "family": "Rosario", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v35", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/rosario/v35/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM69GCWczd-YnOzUD.ttf", - "regular": "https://fonts.gstatic.com/s/rosario/v35/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM68YCWczd-YnOzUD.ttf", - "500": "https://fonts.gstatic.com/s/rosario/v35/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM68qCWczd-YnOzUD.ttf", - "600": "https://fonts.gstatic.com/s/rosario/v35/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM6_GDmczd-YnOzUD.ttf", - "700": "https://fonts.gstatic.com/s/rosario/v35/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM6__Dmczd-YnOzUD.ttf", - "300italic": "https://fonts.gstatic.com/s/rosario/v35/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQStFwfeIFPiUDn08.ttf", - "italic": "https://fonts.gstatic.com/s/rosario/v35/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSo9wfeIFPiUDn08.ttf", - "500italic": "https://fonts.gstatic.com/s/rosario/v35/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSr1wfeIFPiUDn08.ttf", - "600italic": "https://fonts.gstatic.com/s/rosario/v35/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSlF3feIFPiUDn08.ttf", - "700italic": "https://fonts.gstatic.com/s/rosario/v35/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSmh3feIFPiUDn08.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rosario/v35/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM68YCVcyfeI.ttf" - }, - { - "family": "Rosarivo", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/rosarivo/v24/PlI-Fl2lO6N9f8HaNAeC2nhMnNy5.ttf", - "italic": "https://fonts.gstatic.com/s/rosarivo/v24/PlI4Fl2lO6N9f8HaNDeA0Hxumcy5ZX8.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rosarivo/v24/PlI-Fl2lO6N9f8HaNDeD0Hw.ttf" - }, - { - "family": "Rouge Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/rougescript/v20/LYjFdGbiklMoCIQOw1Ep3S4PVPXbUJWq9g.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rougescript/v20/LYjFdGbiklMoCIQOw1Ep3S4_Vf_f.ttf" - }, - { - "family": "Rowdies", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/rowdies/v19/ptRMTieMYPNBAK219hth5O7yKQNute8.ttf", - "regular": "https://fonts.gstatic.com/s/rowdies/v19/ptRJTieMYPNBAK21zrdJwObZNQo.ttf", - "700": "https://fonts.gstatic.com/s/rowdies/v19/ptRMTieMYPNBAK219gtm5O7yKQNute8.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rowdies/v19/ptRJTieMYPNBAK21_rZDxA.ttf" - }, - { - "family": "Rozha One", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/rozhaone/v17/AlZy_zVFtYP12Zncg2khdXf4XB0Tow.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rozhaone/v17/AlZy_zVFtYP12Zncg2kRdH38.ttf" - }, - { - "family": "Rubik", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "arabic", - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v31", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/rubik/v31/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-WYi1UE80V4bVkA.ttf", - "regular": "https://fonts.gstatic.com/s/rubik/v31/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-B4i1UE80V4bVkA.ttf", - "500": "https://fonts.gstatic.com/s/rubik/v31/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-NYi1UE80V4bVkA.ttf", - "600": "https://fonts.gstatic.com/s/rubik/v31/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-2Y-1UE80V4bVkA.ttf", - "700": "https://fonts.gstatic.com/s/rubik/v31/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-4I-1UE80V4bVkA.ttf", - "800": "https://fonts.gstatic.com/s/rubik/v31/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-h4-1UE80V4bVkA.ttf", - "900": "https://fonts.gstatic.com/s/rubik/v31/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-ro-1UE80V4bVkA.ttf", - "300italic": "https://fonts.gstatic.com/s/rubik/v31/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8sDE0UwdYPFkJ1O.ttf", - "italic": "https://fonts.gstatic.com/s/rubik/v31/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8tdE0UwdYPFkJ1O.ttf", - "500italic": "https://fonts.gstatic.com/s/rubik/v31/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8tvE0UwdYPFkJ1O.ttf", - "600italic": "https://fonts.gstatic.com/s/rubik/v31/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8uDFEUwdYPFkJ1O.ttf", - "700italic": "https://fonts.gstatic.com/s/rubik/v31/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8u6FEUwdYPFkJ1O.ttf", - "800italic": "https://fonts.gstatic.com/s/rubik/v31/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8vdFEUwdYPFkJ1O.ttf", - "900italic": "https://fonts.gstatic.com/s/rubik/v31/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8v0FEUwdYPFkJ1O.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubik/v31/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-B4iFUUUw.ttf" - }, - { - "family": "Rubik 80s Fade", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubik80sfade/v2/U9MF6dW37nLSmnwZXyoV-uPXUhHwkbL8IHcK.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubik80sfade/v2/U9MF6dW37nLSmnwZXyoV-uPXUiHxm7Y.ttf" - }, - { - "family": "Rubik Beastly", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikbeastly/v11/0QImMXRd5oOmSC2ZQ7o9653X07z8_ApHqqk.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikbeastly/v11/0QImMXRd5oOmSC2ZQ7o9653X4732-A.ttf" - }, - { - "family": "Rubik Broken Fax", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikbrokenfax/v1/NGSvv4rXG042O-GzH9sg1cUgl8w8YW-WdmGi300.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikbrokenfax/v1/NGSvv4rXG042O-GzH9sg1cUgl8w8UW6ccg.ttf" - }, - { - "family": "Rubik Bubbles", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikbubbles/v3/JIA1UVdwbHFJtwA7Us1BPFbRNTENfDxyRXI.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikbubbles/v3/JIA1UVdwbHFJtwA7Us1BPFbRBTAHeA.ttf" - }, - { - "family": "Rubik Burned", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikburned/v1/Jqzk5TmOVOqQHihKqPpscqniHQuaCY5ZSg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikburned/v1/Jqzk5TmOVOqQHihKqPpscqnSHAGe.ttf" - }, - { - "family": "Rubik Dirt", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikdirt/v2/DtVmJxC7WLEj1uIXEWAdulwm6gDXvwE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikdirt/v2/DtVmJxC7WLEj1uIXEWAdil0s7g.ttf" - }, - { - "family": "Rubik Distressed", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikdistressed/v1/GFDxWBdsmnqAVqjtUsZf2dcrQ2ldcWAhatVBaGM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikdistressed/v1/GFDxWBdsmnqAVqjtUsZf2dcrQ2ldQWErbg.ttf" - }, - { - "family": "Rubik Doodle Shadow", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikdoodleshadow/v1/rP2bp3im_k8G_wTVdvvMdHqmXTR3lEaLyKuZ3KOY7Gw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikdoodleshadow/v1/rP2bp3im_k8G_wTVdvvMdHqmXTR3lEaL-KqT2A.ttf" - }, - { - "family": "Rubik Doodle Triangles", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikdoodletriangles/v1/esDA301BLOmMKxKspb3g-domRuLPeaSn2bTzdLi_slZxgWE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikdoodletriangles/v1/esDA301BLOmMKxKspb3g-domRuLPeaSn2bTzRLm1tg.ttf" - }, - { - "family": "Rubik Gemstones", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikgemstones/v1/zrf90HrL0-_8Xb4DFM2rUkWbOVrOiCnGqi1GMw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikgemstones/v1/zrf90HrL0-_8Xb4DFM2rUkWbOVr-iSPC.ttf" - }, - { - "family": "Rubik Glitch", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikglitch/v2/qkBSXv8b_srFRYQVYrDKh9ZvmC7HONiSFQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikglitch/v2/qkBSXv8b_srFRYQVYrDKh9ZfmSTD.ttf" - }, - { - "family": "Rubik Glitch Pop", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikglitchpop/v1/tDbX2pGHhFcM0gB3hN2elZLa3G-MOwStSUrV_BE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikglitchpop/v1/tDbX2pGHhFcM0gB3hN2elZLa3G-MCwWnTQ.ttf" - }, - { - "family": "Rubik Iso", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikiso/v2/x3dickHUfr-S4VAI4sABfPACvy_1BA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikiso/v2/x3dickHUfr-S4VAI4sAxffoG.ttf" - }, - { - "family": "Rubik Lines", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubiklines/v1/_gP81R3vsjYzVW2Y6xFF-GSxYPp7oSNy.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubiklines/v1/_gP81R3vsjYzVW2Y6xFF-FSwav4.ttf" - }, - { - "family": "Rubik Maps", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikmaps/v1/Gw6_wcjl80TZK9XxtbbejSYUChRqp9k.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikmaps/v1/Gw6_wcjl80TZK9XxtbbevSceDg.ttf" - }, - { - "family": "Rubik Marker Hatch", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikmarkerhatch/v1/QldTNSFQsh0B_bFXXWv6LAt-jswapJHQDL4iw0H6zw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikmarkerhatch/v1/QldTNSFQsh0B_bFXXWv6LAt-jswapJHgDbQm.ttf" - }, - { - "family": "Rubik Maze", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikmaze/v2/xMQRuF9ZVa2ftiJEavXSAX7inS-bxV4.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikmaze/v2/xMQRuF9ZVa2ftiJEavXSMX_omQ.ttf" - }, - { - "family": "Rubik Microbe", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikmicrobe/v2/UqyWK8oPP3hjw6ANS9rM3PsZcs8aaKgiauE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikmicrobe/v2/UqyWK8oPP3hjw6ANS9rM3PsZQs4QbA.ttf" - }, - { - "family": "Rubik Mono One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikmonoone/v20/UqyJK8kPP3hjw6ANTdfRk9YSN-8wRqQrc_j9.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikmonoone/v20/UqyJK8kPP3hjw6ANTdfRk9YSN98xTKA.ttf" - }, - { - "family": "Rubik Moonrocks", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v7", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikmoonrocks/v7/845ANMAmAI2VUZMLu_W0M7HqlDHnXcD7JGy1Sw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikmoonrocks/v7/845ANMAmAI2VUZMLu_W0M7HqlDHXXMr_.ttf" - }, - { - "family": "Rubik Pixels", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikpixels/v3/SlGXmQOaupkIeSx4CEpB7AdSaBYRagrQrA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikpixels/v3/SlGXmQOaupkIeSx4CEpB7AdiaRwV.ttf" - }, - { - "family": "Rubik Puddles", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikpuddles/v2/1Ptog8bYX_qGnkLkrU5MJsQcJfC0wVMT-aE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikpuddles/v2/1Ptog8bYX_qGnkLkrU5MJsQcFfG-xQ.ttf" - }, - { - "family": "Rubik Scribble", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikscribble/v1/snfzs0Cp48d67SuHQOpjXLsQpbqbSjORSo9W.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikscribble/v1/snfzs0Cp48d67SuHQOpjXLsQpYqaQDc.ttf" - }, - { - "family": "Rubik Spray Paint", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikspraypaint/v1/WnzhHBAoeBPUDTB4EWR82y6EXWPH-Ro-QoaBZQxP.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikspraypaint/v1/WnzhHBAoeBPUDTB4EWR82y6EXWPH-So_SII.ttf" - }, - { - "family": "Rubik Storm", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikstorm/v1/eLGYP-_uPgO5Ag7ju9JaouL9T2Xh9NQk.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikstorm/v1/eLGYP-_uPgO5Ag7ju9JaotL8RWE.ttf" - }, - { - "family": "Rubik Vinyl", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikvinyl/v1/iJWABXKIfDnIV4mQ5BfjvUXexox2ztOU.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikvinyl/v1/iJWABXKIfDnIV4mQ5BfjvXXfzIg.ttf" - }, - { - "family": "Rubik Wet Paint", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "hebrew", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/rubikwetpaint/v2/HTx0L20uMDGHgdULcpTF3Oe4d_-F-zz313DuvQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rubikwetpaint/v2/HTx0L20uMDGHgdULcpTF3Oe4d_-1-jbz.ttf" - }, - { - "family": "Ruda", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v30", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/ruda/v30/k3kKo8YQJOpFgHQ1mQ5VkEbUKaJFsi_-2KiSGg-H.ttf", - "500": "https://fonts.gstatic.com/s/ruda/v30/k3kKo8YQJOpFgHQ1mQ5VkEbUKaJ3si_-2KiSGg-H.ttf", - "600": "https://fonts.gstatic.com/s/ruda/v30/k3kKo8YQJOpFgHQ1mQ5VkEbUKaKbtS_-2KiSGg-H.ttf", - "700": "https://fonts.gstatic.com/s/ruda/v30/k3kKo8YQJOpFgHQ1mQ5VkEbUKaKitS_-2KiSGg-H.ttf", - "800": "https://fonts.gstatic.com/s/ruda/v30/k3kKo8YQJOpFgHQ1mQ5VkEbUKaLFtS_-2KiSGg-H.ttf", - "900": "https://fonts.gstatic.com/s/ruda/v30/k3kKo8YQJOpFgHQ1mQ5VkEbUKaLstS_-2KiSGg-H.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ruda/v30/k3kKo8YQJOpFgHQ1mQ5VkEbUKaJFsh__0qw.ttf" - }, - { - "family": "Rufina", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/rufina/v17/Yq6V-LyURyLy-aKyoxRktOdClg.ttf", - "700": "https://fonts.gstatic.com/s/rufina/v17/Yq6W-LyURyLy-aKKHztAvMxenxE0SA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rufina/v17/Yq6V-LyURyLy-aKCoh5g.ttf" - }, - { - "family": "Ruge Boogie", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v30", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/rugeboogie/v30/JIA3UVFwbHRF_GIWSMhKNROiPzUveSxy.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rugeboogie/v30/JIA3UVFwbHRF_GIWSMhKNSOjNTE.ttf" - }, - { - "family": "Ruluko", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/ruluko/v22/xMQVuFNZVaODtm0pC6WzKX_QmA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ruluko/v22/xMQVuFNZVaODtm0ZCq-3.ttf" - }, - { - "family": "Rum Raisin", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/rumraisin/v24/nwpRtKu3Ih8D5avB4h2uJ3-IywA7eMM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rumraisin/v24/nwpRtKu3Ih8D5avB4h2uF36Czw.ttf" - }, - { - "family": "Ruslan Display", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v27", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/ruslandisplay/v27/Gw6jwczl81XcIZuckK_e3UpfdzxrldyFvm1n.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ruslandisplay/v27/Gw6jwczl81XcIZuckK_e3Upfdwxqn9g.ttf" - }, - { - "family": "Russo One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/russoone/v18/Z9XUDmZRWg6M1LvRYsH-yMOInrib9Q.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/russoone/v18/Z9XUDmZRWg6M1LvRYsHOycmM.ttf" - }, - { - "family": "Ruthie", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v28", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/ruthie/v28/gokvH63sGkdqXuU9lD53Q2u_mQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ruthie/v28/gokvH63sGkdqXuUNlTRz.ttf" - }, - { - "family": "Ruwudu", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/ruwudu/v4/syky-y1tj6UzRKfNlQCT9tPdpw.ttf", - "500": "https://fonts.gstatic.com/s/ruwudu/v4/sykx-y1tj6UzRKf1YSm3_vjBrlSILg.ttf", - "600": "https://fonts.gstatic.com/s/ruwudu/v4/sykx-y1tj6UzRKf1TS63_vjBrlSILg.ttf", - "700": "https://fonts.gstatic.com/s/ruwudu/v4/sykx-y1tj6UzRKf1KS-3_vjBrlSILg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ruwudu/v4/syky-y1tj6UzRKf9lAqX.ttf" - }, - { - "family": "Rye", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/rye/v17/r05XGLJT86YDFpTsXOqx4w.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/rye/v17/r05XGLJT86YzF57o.ttf" - }, - { - "family": "STIX Two Text", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/stixtwotext/v18/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5Yihg2SOYWxFMN1WD.ttf", - "500": "https://fonts.gstatic.com/s/stixtwotext/v18/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5YihS2SOYWxFMN1WD.ttf", - "600": "https://fonts.gstatic.com/s/stixtwotext/v18/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5Yii-3iOYWxFMN1WD.ttf", - "700": "https://fonts.gstatic.com/s/stixtwotext/v18/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5YiiH3iOYWxFMN1WD.ttf", - "italic": "https://fonts.gstatic.com/s/stixtwotext/v18/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omsvbURVuMkWDmSo.ttf", - "500italic": "https://fonts.gstatic.com/s/stixtwotext/v18/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omvnbURVuMkWDmSo.ttf", - "600italic": "https://fonts.gstatic.com/s/stixtwotext/v18/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omhXcURVuMkWDmSo.ttf", - "700italic": "https://fonts.gstatic.com/s/stixtwotext/v18/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omizcURVuMkWDmSo.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/stixtwotext/v18/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5Yihg2ROZURU.ttf" - }, - { - "family": "SUSE", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-18", - "files": { - "100": "https://fonts.gstatic.com/s/suse/v4/MwQsbhb078Wt81NpzELmC2QqjbGG71q9ZnJSZtQG.ttf", - "200": "https://fonts.gstatic.com/s/suse/v4/MwQsbhb078Wt81NpzELmC2QqjbEG7lq9ZnJSZtQG.ttf", - "300": "https://fonts.gstatic.com/s/suse/v4/MwQsbhb078Wt81NpzELmC2QqjbHY7lq9ZnJSZtQG.ttf", - "regular": "https://fonts.gstatic.com/s/suse/v4/MwQsbhb078Wt81NpzELmC2QqjbGG7lq9ZnJSZtQG.ttf", - "500": "https://fonts.gstatic.com/s/suse/v4/MwQsbhb078Wt81NpzELmC2QqjbG07lq9ZnJSZtQG.ttf", - "600": "https://fonts.gstatic.com/s/suse/v4/MwQsbhb078Wt81NpzELmC2QqjbFY6Vq9ZnJSZtQG.ttf", - "700": "https://fonts.gstatic.com/s/suse/v4/MwQsbhb078Wt81NpzELmC2QqjbFh6Vq9ZnJSZtQG.ttf", - "800": "https://fonts.gstatic.com/s/suse/v4/MwQsbhb078Wt81NpzELmC2QqjbEG6Vq9ZnJSZtQG.ttf", - "900": "https://fonts.gstatic.com/s/suse/v4/MwQsbhb078Wt81NpzELmC2QqjbEv6Vq9ZnJSZtQG.ttf", - "100italic": "https://fonts.gstatic.com/s/suse/v4/MwQqbhb078Wt2VpbM5qPYP6EiqROrbL_bHZwY8QGjKU.ttf", - "200italic": "https://fonts.gstatic.com/s/suse/v4/MwQqbhb078Wt2VpbM5qPYP6EiqROrTL-bHZwY8QGjKU.ttf", - "300italic": "https://fonts.gstatic.com/s/suse/v4/MwQqbhb078Wt2VpbM5qPYP6EiqROrez-bHZwY8QGjKU.ttf", - "italic": "https://fonts.gstatic.com/s/suse/v4/MwQqbhb078Wt2VpbM5qPYP6EiqROrbL-bHZwY8QGjKU.ttf", - "500italic": "https://fonts.gstatic.com/s/suse/v4/MwQqbhb078Wt2VpbM5qPYP6EiqROrYD-bHZwY8QGjKU.ttf", - "600italic": "https://fonts.gstatic.com/s/suse/v4/MwQqbhb078Wt2VpbM5qPYP6EiqROrWz5bHZwY8QGjKU.ttf", - "700italic": "https://fonts.gstatic.com/s/suse/v4/MwQqbhb078Wt2VpbM5qPYP6EiqROrVX5bHZwY8QGjKU.ttf", - "800italic": "https://fonts.gstatic.com/s/suse/v4/MwQqbhb078Wt2VpbM5qPYP6EiqROrTL5bHZwY8QGjKU.ttf", - "900italic": "https://fonts.gstatic.com/s/suse/v4/MwQqbhb078Wt2VpbM5qPYP6EiqROrRv5bHZwY8QGjKU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/suse/v4/MwQsbhb078Wt81NpzELmC2QqjbGG7mq8bHY.ttf" - }, - { - "family": "SUSE Mono", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v1", - "lastModified": "2025-09-18", - "files": { - "100": "https://fonts.gstatic.com/s/susemono/v1/y83KW4wN6yi9x2mTxJI2Lzk1yOJRC-VB656x2gtcobW_gE0.ttf", - "200": "https://fonts.gstatic.com/s/susemono/v1/y83KW4wN6yi9x2mTxJI2Lzk1yOJRC-VB6x6w2gtcobW_gE0.ttf", - "300": "https://fonts.gstatic.com/s/susemono/v1/y83KW4wN6yi9x2mTxJI2Lzk1yOJRC-VB68Cw2gtcobW_gE0.ttf", - "regular": "https://fonts.gstatic.com/s/susemono/v1/y83KW4wN6yi9x2mTxJI2Lzk1yOJRC-VB656w2gtcobW_gE0.ttf", - "500": "https://fonts.gstatic.com/s/susemono/v1/y83KW4wN6yi9x2mTxJI2Lzk1yOJRC-VB66yw2gtcobW_gE0.ttf", - "600": "https://fonts.gstatic.com/s/susemono/v1/y83KW4wN6yi9x2mTxJI2Lzk1yOJRC-VB60C32gtcobW_gE0.ttf", - "700": "https://fonts.gstatic.com/s/susemono/v1/y83KW4wN6yi9x2mTxJI2Lzk1yOJRC-VB63m32gtcobW_gE0.ttf", - "800": "https://fonts.gstatic.com/s/susemono/v1/y83KW4wN6yi9x2mTxJI2Lzk1yOJRC-VB6x632gtcobW_gE0.ttf", - "100italic": "https://fonts.gstatic.com/s/susemono/v1/y83IW4wN6yi9x2mTxJIcJgvKEIs6kUtG_lbzMklWpZe6kE2tPw.ttf", - "200italic": "https://fonts.gstatic.com/s/susemono/v1/y83IW4wN6yi9x2mTxJIcJgvKEIs6kUtG_lbzskhWpZe6kE2tPw.ttf", - "300italic": "https://fonts.gstatic.com/s/susemono/v1/y83IW4wN6yi9x2mTxJIcJgvKEIs6kUtG_lbzbEhWpZe6kE2tPw.ttf", - "italic": "https://fonts.gstatic.com/s/susemono/v1/y83IW4wN6yi9x2mTxJIcJgvKEIs6kUtG_lbzMkhWpZe6kE2tPw.ttf", - "500italic": "https://fonts.gstatic.com/s/susemono/v1/y83IW4wN6yi9x2mTxJIcJgvKEIs6kUtG_lbzAEhWpZe6kE2tPw.ttf", - "600italic": "https://fonts.gstatic.com/s/susemono/v1/y83IW4wN6yi9x2mTxJIcJgvKEIs6kUtG_lbz7E9WpZe6kE2tPw.ttf", - "700italic": "https://fonts.gstatic.com/s/susemono/v1/y83IW4wN6yi9x2mTxJIcJgvKEIs6kUtG_lbz1U9WpZe6kE2tPw.ttf", - "800italic": "https://fonts.gstatic.com/s/susemono/v1/y83IW4wN6yi9x2mTxJIcJgvKEIs6kUtG_lbzsk9WpZe6kE2tPw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/susemono/v1/y83KW4wN6yi9x2mTxJI2Lzk1yOJRC-VB656w6gpWpQ.ttf" - }, - { - "family": "Sacramento", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/sacramento/v17/buEzpo6gcdjy0EiZMBUG0CoV_NxLeiw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sacramento/v17/buEzpo6gcdjy0EiZMBUG4Csf-A.ttf" - }, - { - "family": "Sahitya", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/sahitya/v20/6qLAKZkOuhnuqlJAaScFPywEDnI.ttf", - "700": "https://fonts.gstatic.com/s/sahitya/v20/6qLFKZkOuhnuqlJAUZsqGyQvEnvSexI.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sahitya/v20/6qLAKZkOuhnuqlJAWSYPOw.ttf" - }, - { - "family": "Sail", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/sail/v17/DPEjYwiBxwYJFBTDADYAbvw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sail/v17/DPEjYwiBxwYJJBXJBA.ttf" - }, - { - "family": "Saira", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/saira/v22/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA71rDosg7lwYmUVY.ttf", - "200": "https://fonts.gstatic.com/s/saira/v22/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA79rCosg7lwYmUVY.ttf", - "300": "https://fonts.gstatic.com/s/saira/v22/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA7wTCosg7lwYmUVY.ttf", - "regular": "https://fonts.gstatic.com/s/saira/v22/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA71rCosg7lwYmUVY.ttf", - "500": "https://fonts.gstatic.com/s/saira/v22/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA72jCosg7lwYmUVY.ttf", - "600": "https://fonts.gstatic.com/s/saira/v22/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA74TFosg7lwYmUVY.ttf", - "700": "https://fonts.gstatic.com/s/saira/v22/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA773Fosg7lwYmUVY.ttf", - "800": "https://fonts.gstatic.com/s/saira/v22/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA79rFosg7lwYmUVY.ttf", - "900": "https://fonts.gstatic.com/s/saira/v22/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA7_PFosg7lwYmUVY.ttf", - "100italic": "https://fonts.gstatic.com/s/saira/v22/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBSooxkyQjQVYmxA.ttf", - "200italic": "https://fonts.gstatic.com/s/saira/v22/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKByosxkyQjQVYmxA.ttf", - "300italic": "https://fonts.gstatic.com/s/saira/v22/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBFIsxkyQjQVYmxA.ttf", - "italic": "https://fonts.gstatic.com/s/saira/v22/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBSosxkyQjQVYmxA.ttf", - "500italic": "https://fonts.gstatic.com/s/saira/v22/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBeIsxkyQjQVYmxA.ttf", - "600italic": "https://fonts.gstatic.com/s/saira/v22/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBlIwxkyQjQVYmxA.ttf", - "700italic": "https://fonts.gstatic.com/s/saira/v22/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBrYwxkyQjQVYmxA.ttf", - "800italic": "https://fonts.gstatic.com/s/saira/v22/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKByowxkyQjQVYmxA.ttf", - "900italic": "https://fonts.gstatic.com/s/saira/v22/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKB44wxkyQjQVYmxA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/saira/v22/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA71rCkskxkw.ttf" - }, - { - "family": "Saira Condensed", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/sairacondensed/v12/EJRMQgErUN8XuHNEtX81i9TmEkrnwetA2omSrzS8.ttf", - "200": "https://fonts.gstatic.com/s/sairacondensed/v12/EJRLQgErUN8XuHNEtX81i9TmEkrnbcpg8Keepi2lHw.ttf", - "300": "https://fonts.gstatic.com/s/sairacondensed/v12/EJRLQgErUN8XuHNEtX81i9TmEkrnCclg8Keepi2lHw.ttf", - "regular": "https://fonts.gstatic.com/s/sairacondensed/v12/EJROQgErUN8XuHNEtX81i9TmEkrfpeFE-IyCrw.ttf", - "500": "https://fonts.gstatic.com/s/sairacondensed/v12/EJRLQgErUN8XuHNEtX81i9TmEkrnUchg8Keepi2lHw.ttf", - "600": "https://fonts.gstatic.com/s/sairacondensed/v12/EJRLQgErUN8XuHNEtX81i9TmEkrnfc9g8Keepi2lHw.ttf", - "700": "https://fonts.gstatic.com/s/sairacondensed/v12/EJRLQgErUN8XuHNEtX81i9TmEkrnGc5g8Keepi2lHw.ttf", - "800": "https://fonts.gstatic.com/s/sairacondensed/v12/EJRLQgErUN8XuHNEtX81i9TmEkrnBc1g8Keepi2lHw.ttf", - "900": "https://fonts.gstatic.com/s/sairacondensed/v12/EJRLQgErUN8XuHNEtX81i9TmEkrnIcxg8Keepi2lHw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sairacondensed/v12/EJROQgErUN8XuHNEtX81i9TmEkrvpOtA.ttf" - }, - { - "family": "Saira Extra Condensed", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFsOHYr-vcC7h8MklGBkrvmUG9rbpkisrTri0jx9i5ss3a3.ttf", - "200": "https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrJ2nR3ABgum-uoQ.ttf", - "300": "https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrQ2rR3ABgum-uoQ.ttf", - "regular": "https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFiOHYr-vcC7h8MklGBkrvmUG9rbpkisrTT70L11Ct8sw.ttf", - "500": "https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrG2vR3ABgum-uoQ.ttf", - "600": "https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrN2zR3ABgum-uoQ.ttf", - "700": "https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrU23R3ABgum-uoQ.ttf", - "800": "https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrT27R3ABgum-uoQ.ttf", - "900": "https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTra2_R3ABgum-uoQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFiOHYr-vcC7h8MklGBkrvmUG9rbpkisrTj7kjx.ttf" - }, - { - "family": "Saira Semi Condensed", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MN6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXdvaOM8rXT-8V8.ttf", - "200": "https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXfDScMWg3j36Ebz.ttf", - "300": "https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXenSsMWg3j36Ebz.ttf", - "regular": "https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MD6c-2-nnJkHxyCjRcnMHcWVWV1cWRRU8LYuceqGT-.ttf", - "500": "https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXf_S8MWg3j36Ebz.ttf", - "600": "https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXfTTMMWg3j36Ebz.ttf", - "700": "https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXe3TcMWg3j36Ebz.ttf", - "800": "https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXerTsMWg3j36Ebz.ttf", - "900": "https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXePT8MWg3j36Ebz.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MD6c-2-nnJkHxyCjRcnMHcWVWV1cWRRX8KaOM.ttf" - }, - { - "family": "Saira Stencil One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/sairastencilone/v18/SLXSc03I6HkvZGJ1GvvipLoYSTEL9AsMawif2YQ2.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sairastencilone/v18/SLXSc03I6HkvZGJ1GvvipLoYSTEL9DsNYQw.ttf" - }, - { - "family": "Salsa", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/salsa/v23/gNMKW3FiRpKj-imY8ncKEZez.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/salsa/v23/gNMKW3FiRpKj-hmZ-HM.ttf" - }, - { - "family": "Sanchez", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/sanchez/v17/Ycm2sZJORluHnXbITm5b_BwE1l0.ttf", - "italic": "https://fonts.gstatic.com/s/sanchez/v17/Ycm0sZJORluHnXbIfmxR-D4Bxl3gkw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sanchez/v17/Ycm2sZJORluHnXbIfm9R-A.ttf" - }, - { - "family": "Sancreek", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/sancreek/v27/pxiHypAnsdxUm159X7D-XV9NEe-K.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sancreek/v27/pxiHypAnsdxUm159X4D_V1s.ttf" - }, - { - "family": "Sankofa Display", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/sankofadisplay/v2/Ktk1ALSRd4LucUDghJ2rTqXOoh33F6mZVY9Y5w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sankofadisplay/v2/Ktk1ALSRd4LucUDghJ2rTqXOoh3HFqOd.ttf" - }, - { - "family": "Sansation", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "greek", - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-04-23", - "files": { - "300": "https://fonts.gstatic.com/s/sansation/v1/LYjFdGPjnEg8DNA0z01YAVgPVPXbUJWq9g.ttf", - "300italic": "https://fonts.gstatic.com/s/sansation/v1/LYjbdGPjnEg8DNA0z01Qr0KDVv_fcpC69i6N.ttf", - "regular": "https://fonts.gstatic.com/s/sansation/v1/LYjAdGPjnEg8DNA0z01grXArXN7HWQ.ttf", - "italic": "https://fonts.gstatic.com/s/sansation/v1/LYjGdGPjnEg8DNA0z01Qr3ovftvXWYyz.ttf", - "700": "https://fonts.gstatic.com/s/sansation/v1/LYjFdGPjnEg8DNA0z01YEV8PVPXbUJWq9g.ttf", - "700italic": "https://fonts.gstatic.com/s/sansation/v1/LYjbdGPjnEg8DNA0z01Qr0KTUf_fcpC69i6N.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sansation/v1/LYjAdGPjnEg8DNA0z01QrHov.ttf" - }, - { - "family": "Sansita", - "variants": [ - "regular", - "italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/sansita/v12/QldONTRRphEb_-V7HBm7TXFf3qw.ttf", - "italic": "https://fonts.gstatic.com/s/sansita/v12/QldMNTRRphEb_-V7LBuxSVNazqx2xg.ttf", - "700": "https://fonts.gstatic.com/s/sansita/v12/QldLNTRRphEb_-V7JKWUaXl0wqVv3_g.ttf", - "700italic": "https://fonts.gstatic.com/s/sansita/v12/QldJNTRRphEb_-V7LBuJ9Xx-xodqz_joDQ.ttf", - "800": "https://fonts.gstatic.com/s/sansita/v12/QldLNTRRphEb_-V7JLmXaXl0wqVv3_g.ttf", - "800italic": "https://fonts.gstatic.com/s/sansita/v12/QldJNTRRphEb_-V7LBuJ6X9-xodqz_joDQ.ttf", - "900": "https://fonts.gstatic.com/s/sansita/v12/QldLNTRRphEb_-V7JJ2WaXl0wqVv3_g.ttf", - "900italic": "https://fonts.gstatic.com/s/sansita/v12/QldJNTRRphEb_-V7LBuJzX5-xodqz_joDQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sansita/v12/QldONTRRphEb_-V7LBixSQ.ttf" - }, - { - "family": "Sansita Swashed", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/sansitaswashed/v23/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW-ppbToVehmEa4Q.ttf", - "regular": "https://fonts.gstatic.com/s/sansitaswashed/v23/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW7RpbToVehmEa4Q.ttf", - "500": "https://fonts.gstatic.com/s/sansitaswashed/v23/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW4ZpbToVehmEa4Q.ttf", - "600": "https://fonts.gstatic.com/s/sansitaswashed/v23/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW2pubToVehmEa4Q.ttf", - "700": "https://fonts.gstatic.com/s/sansitaswashed/v23/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW1NubToVehmEa4Q.ttf", - "800": "https://fonts.gstatic.com/s/sansitaswashed/v23/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSWzRubToVehmEa4Q.ttf", - "900": "https://fonts.gstatic.com/s/sansitaswashed/v23/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSWx1ubToVehmEa4Q.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sansitaswashed/v23/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW7RpXTsffg.ttf" - }, - { - "family": "Sarabun", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/sarabun/v17/DtVhJx26TKEr37c9YHZJmnYI5gnOpg.ttf", - "100italic": "https://fonts.gstatic.com/s/sarabun/v17/DtVnJx26TKEr37c9aBBx_nwMxAzephhN.ttf", - "200": "https://fonts.gstatic.com/s/sarabun/v17/DtVmJx26TKEr37c9YNpoulwm6gDXvwE.ttf", - "200italic": "https://fonts.gstatic.com/s/sarabun/v17/DtVkJx26TKEr37c9aBBxUl0s7iLSrwFUlw.ttf", - "300": "https://fonts.gstatic.com/s/sarabun/v17/DtVmJx26TKEr37c9YL5rulwm6gDXvwE.ttf", - "300italic": "https://fonts.gstatic.com/s/sarabun/v17/DtVkJx26TKEr37c9aBBxNl4s7iLSrwFUlw.ttf", - "regular": "https://fonts.gstatic.com/s/sarabun/v17/DtVjJx26TKEr37c9WBJDnlQN9gk.ttf", - "italic": "https://fonts.gstatic.com/s/sarabun/v17/DtVhJx26TKEr37c9aBBJmnYI5gnOpg.ttf", - "500": "https://fonts.gstatic.com/s/sarabun/v17/DtVmJx26TKEr37c9YOZqulwm6gDXvwE.ttf", - "500italic": "https://fonts.gstatic.com/s/sarabun/v17/DtVkJx26TKEr37c9aBBxbl8s7iLSrwFUlw.ttf", - "600": "https://fonts.gstatic.com/s/sarabun/v17/DtVmJx26TKEr37c9YMptulwm6gDXvwE.ttf", - "600italic": "https://fonts.gstatic.com/s/sarabun/v17/DtVkJx26TKEr37c9aBBxQlgs7iLSrwFUlw.ttf", - "700": "https://fonts.gstatic.com/s/sarabun/v17/DtVmJx26TKEr37c9YK5sulwm6gDXvwE.ttf", - "700italic": "https://fonts.gstatic.com/s/sarabun/v17/DtVkJx26TKEr37c9aBBxJlks7iLSrwFUlw.ttf", - "800": "https://fonts.gstatic.com/s/sarabun/v17/DtVmJx26TKEr37c9YLJvulwm6gDXvwE.ttf", - "800italic": "https://fonts.gstatic.com/s/sarabun/v17/DtVkJx26TKEr37c9aBBxOlos7iLSrwFUlw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sarabun/v17/DtVjJx26TKEr37c9aBNJmg.ttf" - }, - { - "family": "Sarala", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/sarala/v14/uK_y4riEZv4o1w9RCh0TMv6EXw.ttf", - "700": "https://fonts.gstatic.com/s/sarala/v14/uK_x4riEZv4o1w9ptjI3OtWYVkMpXA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sarala/v14/uK_y4riEZv4o1w9hCxcX.ttf" - }, - { - "family": "Sarina", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/sarina/v25/-F6wfjF3ITQwasLhLkDUriBQxw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sarina/v25/-F6wfjF3ITQwasLRL0rQ.ttf" - }, - { - "family": "Sarpanch", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/sarpanch/v15/hESy6Xt4NCpRuk6Pzh2ARIrX_20n.ttf", - "500": "https://fonts.gstatic.com/s/sarpanch/v15/hES16Xt4NCpRuk6PziV0ba7f1HEuRHkM.ttf", - "600": "https://fonts.gstatic.com/s/sarpanch/v15/hES16Xt4NCpRuk6PziVYaq7f1HEuRHkM.ttf", - "700": "https://fonts.gstatic.com/s/sarpanch/v15/hES16Xt4NCpRuk6PziU8a67f1HEuRHkM.ttf", - "800": "https://fonts.gstatic.com/s/sarpanch/v15/hES16Xt4NCpRuk6PziUgaK7f1HEuRHkM.ttf", - "900": "https://fonts.gstatic.com/s/sarpanch/v15/hES16Xt4NCpRuk6PziUEaa7f1HEuRHkM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sarpanch/v15/hESy6Xt4NCpRuk6Pzi2BTo4.ttf" - }, - { - "family": "Sassy Frass", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/sassyfrass/v9/LhWhMVrGOe0FLb97BjhsE99dGNWQg_am.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sassyfrass/v9/LhWhMVrGOe0FLb97BjhsE-9cEtE.ttf" - }, - { - "family": "Satisfy", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/satisfy/v22/rP2Hp2yn6lkG50LoOZSCHBeHFl0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/satisfy/v22/rP2Hp2yn6lkG50LoCZWIGA.ttf" - }, - { - "family": "Savate", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/savate/v5/QdVKSTgjKAqpnvJNP5oQaZzblHkwJTdxRbgJdhapcUU.ttf", - "300": "https://fonts.gstatic.com/s/savate/v5/QdVKSTgjKAqpnvJNP5oQaZzblHkwJelxRbgJdhapcUU.ttf", - "regular": "https://fonts.gstatic.com/s/savate/v5/QdVKSTgjKAqpnvJNP5oQaZzblHkwJbdxRbgJdhapcUU.ttf", - "500": "https://fonts.gstatic.com/s/savate/v5/QdVKSTgjKAqpnvJNP5oQaZzblHkwJYVxRbgJdhapcUU.ttf", - "600": "https://fonts.gstatic.com/s/savate/v5/QdVKSTgjKAqpnvJNP5oQaZzblHkwJWl2RbgJdhapcUU.ttf", - "700": "https://fonts.gstatic.com/s/savate/v5/QdVKSTgjKAqpnvJNP5oQaZzblHkwJVB2RbgJdhapcUU.ttf", - "800": "https://fonts.gstatic.com/s/savate/v5/QdVKSTgjKAqpnvJNP5oQaZzblHkwJTd2RbgJdhapcUU.ttf", - "900": "https://fonts.gstatic.com/s/savate/v5/QdVKSTgjKAqpnvJNP5oQaZzblHkwJR52RbgJdhapcUU.ttf", - "200italic": "https://fonts.gstatic.com/s/savate/v5/QdVISTgjKAqpnvJnNqjvsfWwDtc3MH8yLfsDcjSsYUVUjg.ttf", - "300italic": "https://fonts.gstatic.com/s/savate/v5/QdVISTgjKAqpnvJnNqjvsfWwDtc3MH8y8_sDcjSsYUVUjg.ttf", - "italic": "https://fonts.gstatic.com/s/savate/v5/QdVISTgjKAqpnvJnNqjvsfWwDtc3MH8yrfsDcjSsYUVUjg.ttf", - "500italic": "https://fonts.gstatic.com/s/savate/v5/QdVISTgjKAqpnvJnNqjvsfWwDtc3MH8yn_sDcjSsYUVUjg.ttf", - "600italic": "https://fonts.gstatic.com/s/savate/v5/QdVISTgjKAqpnvJnNqjvsfWwDtc3MH8yc_wDcjSsYUVUjg.ttf", - "700italic": "https://fonts.gstatic.com/s/savate/v5/QdVISTgjKAqpnvJnNqjvsfWwDtc3MH8ySvwDcjSsYUVUjg.ttf", - "800italic": "https://fonts.gstatic.com/s/savate/v5/QdVISTgjKAqpnvJnNqjvsfWwDtc3MH8yLfwDcjSsYUVUjg.ttf", - "900italic": "https://fonts.gstatic.com/s/savate/v5/QdVISTgjKAqpnvJnNqjvsfWwDtc3MH8yBPwDcjSsYUVUjg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/savate/v5/QdVKSTgjKAqpnvJNP5oQaZzblHkwJbdxdbkDcg.ttf" - }, - { - "family": "Sawarabi Gothic", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/sawarabigothic/v16/x3d4ckfVaqqa-BEj-I9mE65u3k3NBSk3E2YljQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sawarabigothic/v16/x3d4ckfVaqqa-BEj-I9mE65u3k39BCMz.ttf" - }, - { - "family": "Sawarabi Mincho", - "variants": [ - "regular" - ], - "subsets": [ - "braille", - "japanese", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/sawarabimincho/v20/8QIRdiDaitzr7brc8ahpxt6GcIJTLahP46UDUw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sawarabimincho/v20/8QIRdiDaitzr7brc8ahpxt6GcIJjLKJL.ttf" - }, - { - "family": "Scada", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/scada/v16/RLpxK5Pv5qumeWJoxzUobkvv.ttf", - "italic": "https://fonts.gstatic.com/s/scada/v16/RLp_K5Pv5qumeVJqzTEKa1vvffg.ttf", - "700": "https://fonts.gstatic.com/s/scada/v16/RLp8K5Pv5qumeVrU6BEgRVfmZOE5.ttf", - "700italic": "https://fonts.gstatic.com/s/scada/v16/RLp6K5Pv5qumeVJq9Y0lT1PEYfE5p6g.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/scada/v16/RLpxK5Pv5qumeVJpzTE.ttf" - }, - { - "family": "Scheherazade New", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/scheherazadenew/v20/4UaZrFhTvxVnHDvUkUiHg8jprP4DCwNsOl4p5Is.ttf", - "500": "https://fonts.gstatic.com/s/scheherazadenew/v20/4UaerFhTvxVnHDvUkUiHg8jprP4DM_dFHlYC-IKnoSE.ttf", - "600": "https://fonts.gstatic.com/s/scheherazadenew/v20/4UaerFhTvxVnHDvUkUiHg8jprP4DM9tCHlYC-IKnoSE.ttf", - "700": "https://fonts.gstatic.com/s/scheherazadenew/v20/4UaerFhTvxVnHDvUkUiHg8jprP4DM79DHlYC-IKnoSE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/scheherazadenew/v20/4UaZrFhTvxVnHDvUkUiHg8jprP4DOwJmPg.ttf" - }, - { - "family": "Schibsted Grotesk", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v7", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNIsEAT8JuXFGVOQ.ttf", - "500": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNEMEAT8JuXFGVOQ.ttf", - "600": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMN_MYAT8JuXFGVOQ.ttf", - "700": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNxcYAT8JuXFGVOQ.ttf", - "800": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNosYAT8JuXFGVOQ.ttf", - "900": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNi8YAT8JuXFGVOQ.ttf", - "italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oLoDMhqflSFOTXs.ttf", - "500italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oLaDMhqflSFOTXs.ttf", - "600italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oI2C8hqflSFOTXs.ttf", - "700italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oIPC8hqflSFOTXs.ttf", - "800italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oJoC8hqflSFOTXs.ttf", - "900italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oJBC8hqflSFOTXs.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/schibstedgrotesk/v7/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNIsEwTshq.ttf" - }, - { - "family": "Schoolbell", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/schoolbell/v18/92zQtBZWOrcgoe-fgnJIVxIQ6mRqfiQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/schoolbell/v18/92zQtBZWOrcgoe-fgnJIZxMa7g.ttf" - }, - { - "family": "Scope One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/scopeone/v15/WBLnrEXKYFlGHrOKmGD1W0_MJMGxiQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/scopeone/v15/WBLnrEXKYFlGHrOKmGDFWkXI.ttf" - }, - { - "family": "Seaweed Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/seaweedscript/v17/bx6cNx6Tne2pxOATYE8C_Rsoe0WJ-KcGVbLW.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/seaweedscript/v17/bx6cNx6Tne2pxOATYE8C_Rsoe3WI8qM.ttf" - }, - { - "family": "Secular One", - "variants": [ - "regular" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/secularone/v14/8QINdiTajsj_87rMuMdKypDlMul7LJpK.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/secularone/v14/8QINdiTajsj_87rMuMdKyqDkOO0.ttf" - }, - { - "family": "Sedan", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/sedan/v1/Yq6a-L-VVyD6-eOSiTpovf5b.ttf", - "italic": "https://fonts.gstatic.com/s/sedan/v1/Yq6U-L-VVyD6-dOQgz5KuO5bjxE.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sedan/v1/Yq6a-L-VVyD6-dOTgz4.ttf" - }, - { - "family": "Sedan SC", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/sedansc/v2/yMJRMIlvYZ3Jn1Y30Dq8fSx5i814.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sedansc/v2/yMJRMIlvYZ3Jn1Y30Aq9dyg.ttf" - }, - { - "family": "Sedgwick Ave", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/sedgwickave/v13/uK_04rKEYuguzAcSYRdWTJq8Xmg1Vcf5JA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sedgwickave/v13/uK_04rKEYuguzAcSYRdWTJqMX2Ix.ttf" - }, - { - "family": "Sedgwick Ave Display", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/sedgwickavedisplay/v23/xfuu0XPgU3jZPUoUo3ScvmPi-NapQ8OxM2czd-YnOzUD.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sedgwickavedisplay/v23/xfuu0XPgU3jZPUoUo3ScvmPi-NapQ8OxM1cyfeI.ttf" - }, - { - "family": "Sen", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/sen/v12/6xK0dSxYI9_dkN18-vZKK2EISCq5H47KlD9q78A.ttf", - "500": "https://fonts.gstatic.com/s/sen/v12/6xK0dSxYI9_dkN18-vZKK2EISBi5H47KlD9q78A.ttf", - "600": "https://fonts.gstatic.com/s/sen/v12/6xK0dSxYI9_dkN18-vZKK2EISPS-H47KlD9q78A.ttf", - "700": "https://fonts.gstatic.com/s/sen/v12/6xK0dSxYI9_dkN18-vZKK2EISM2-H47KlD9q78A.ttf", - "800": "https://fonts.gstatic.com/s/sen/v12/6xK0dSxYI9_dkN18-vZKK2EISKq-H47KlD9q78A.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sen/v12/6xK0dSxYI9_dkN18-vZKK2EISCq5L4_AkA.ttf" - }, - { - "family": "Send Flowers", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/sendflowers/v7/If2PXTjtZS-0Xqy13uCQSULvxwjjouU1iw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sendflowers/v7/If2PXTjtZS-0Xqy13uCQSULfxgLn.ttf" - }, - { - "family": "Sevillana", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/sevillana/v25/KFOlCnWFscmDt1Bfiy1vAx05IsDqlA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sevillana/v25/KFOlCnWFscmDt1Bfiy1fAhc9.ttf" - }, - { - "family": "Seymour One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/seymourone/v25/4iCp6Khla9xbjQpoWGGd0myIPYBvgpUI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/seymourone/v25/4iCp6Khla9xbjQpoWGGd0lyJN4Q.ttf" - }, - { - "family": "Shadows Into Light", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/shadowsintolight/v22/UqyNK9UOIntux_czAvDQx_ZcHqZXBNQDcsr4xzSMYA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shadowsintolight/v22/UqyNK9UOIntux_czAvDQx_ZcHqZXBNQzc8D8.ttf" - }, - { - "family": "Shadows Into Light Two", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/shadowsintolighttwo/v19/4iC86LVlZsRSjQhpWGedwyOoW-0A6_kpsyNmlAvNGLNnIF0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shadowsintolighttwo/v19/4iC86LVlZsRSjQhpWGedwyOoW-0A6_kpsyNmpArHHA.ttf" - }, - { - "family": "Shafarik", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "glagolitic", - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/shafarik/v3/RWmLoKaF7PojpZXlW52sbsHKqLkD.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shafarik/v3/RWmLoKaF7PojpZXlW62tZMU.ttf" - }, - { - "family": "Shalimar", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/shalimar/v9/uU9MCBoE6I6iNWFUvTPx8PCOg0uX.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shalimar/v9/uU9MCBoE6I6iNWFUvQPw-vQ.ttf" - }, - { - "family": "Shantell Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/shantellsans/v13/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYQiS2i2yPwxjyRN.ttf", - "regular": "https://fonts.gstatic.com/s/shantellsans/v13/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYR8S2i2yPwxjyRN.ttf", - "500": "https://fonts.gstatic.com/s/shantellsans/v13/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYROS2i2yPwxjyRN.ttf", - "600": "https://fonts.gstatic.com/s/shantellsans/v13/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYSiTGi2yPwxjyRN.ttf", - "700": "https://fonts.gstatic.com/s/shantellsans/v13/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYSbTGi2yPwxjyRN.ttf", - "800": "https://fonts.gstatic.com/s/shantellsans/v13/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYT8TGi2yPwxjyRN.ttf", - "300italic": "https://fonts.gstatic.com/s/shantellsans/v13/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CN71wvgTijRNYgQ.ttf", - "italic": "https://fonts.gstatic.com/s/shantellsans/v13/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CID1wvgTijRNYgQ.ttf", - "500italic": "https://fonts.gstatic.com/s/shantellsans/v13/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CLL1wvgTijRNYgQ.ttf", - "600italic": "https://fonts.gstatic.com/s/shantellsans/v13/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CF7ywvgTijRNYgQ.ttf", - "700italic": "https://fonts.gstatic.com/s/shantellsans/v13/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CGfywvgTijRNYgQ.ttf", - "800italic": "https://fonts.gstatic.com/s/shantellsans/v13/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CADywvgTijRNYgQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shantellsans/v13/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYR8S1i3wvg.ttf" - }, - { - "family": "Shanti", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/shanti/v25/t5thIREMM4uSDgzgU0ezpKfwzA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shanti/v25/t5thIREMM4uSDgzQUk23.ttf" - }, - { - "family": "Share", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/share/v20/i7dEIFliZjKNF5VNHLq2cV5d.ttf", - "italic": "https://fonts.gstatic.com/s/share/v20/i7dKIFliZjKNF6VPFr6UdE5dWFM.ttf", - "700": "https://fonts.gstatic.com/s/share/v20/i7dJIFliZjKNF63xM56-WkJUQUq7.ttf", - "700italic": "https://fonts.gstatic.com/s/share/v20/i7dPIFliZjKNF6VPLgK7UEZ2RFq7AwU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/share/v20/i7dEIFliZjKNF6VMFr4.ttf" - }, - { - "family": "Share Tech", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/sharetech/v23/7cHtv4Uyi5K0OeZ7bohUwHoDmTcibrA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sharetech/v23/7cHtv4Uyi5K0OeZ7bohU8HsJnQ.ttf" - }, - { - "family": "Share Tech Mono", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/sharetechmono/v16/J7aHnp1uDWRBEqV98dVQztYldFc7pAsEIc3Xew.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sharetechmono/v16/J7aHnp1uDWRBEqV98dVQztYldFcLpQEA.ttf" - }, - { - "family": "Shippori Antique", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/shipporiantique/v11/-F6qfid3KC8pdMyzR0qRyFUht11v8ldPg-IUDNg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shipporiantique/v11/-F6qfid3KC8pdMyzR0qRyFUht11vwlZFhw.ttf" - }, - { - "family": "Shippori Antique B1", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/shipporiantiqueb1/v11/2Eb7L_JwClR7Zl_UAKZ0mUHw3oMKd40grRFCj9-5Y8Y.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shipporiantiqueb1/v11/2Eb7L_JwClR7Zl_UAKZ0mUHw3oMKd40gnRBIiw.ttf" - }, - { - "family": "Shippori Mincho", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/shipporimincho/v17/VdGGAZweH5EbgHY6YExcZfDoj0BA2_-C7LoS7g.ttf", - "500": "https://fonts.gstatic.com/s/shipporimincho/v17/VdGDAZweH5EbgHY6YExcZfDoj0B4L9am5JEO5--2zg.ttf", - "600": "https://fonts.gstatic.com/s/shipporimincho/v17/VdGDAZweH5EbgHY6YExcZfDoj0B4A9Gm5JEO5--2zg.ttf", - "700": "https://fonts.gstatic.com/s/shipporimincho/v17/VdGDAZweH5EbgHY6YExcZfDoj0B4Z9Cm5JEO5--2zg.ttf", - "800": "https://fonts.gstatic.com/s/shipporimincho/v17/VdGDAZweH5EbgHY6YExcZfDoj0B4e9Om5JEO5--2zg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shipporimincho/v17/VdGGAZweH5EbgHY6YExcZfDoj0Bw2vWG.ttf" - }, - { - "family": "Shippori Mincho B1", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/shipporiminchob1/v24/wXK2E2wCr44tulPdnn-xbIpJ9RgT9-nyjqBr1lO97Q.ttf", - "500": "https://fonts.gstatic.com/s/shipporiminchob1/v24/wXK1E2wCr44tulPdnn-xbIpJ9RgT9-nKeolP3nih5H4Uug.ttf", - "600": "https://fonts.gstatic.com/s/shipporiminchob1/v24/wXK1E2wCr44tulPdnn-xbIpJ9RgT9-nKVo5P3nih5H4Uug.ttf", - "700": "https://fonts.gstatic.com/s/shipporiminchob1/v24/wXK1E2wCr44tulPdnn-xbIpJ9RgT9-nKMo9P3nih5H4Uug.ttf", - "800": "https://fonts.gstatic.com/s/shipporiminchob1/v24/wXK1E2wCr44tulPdnn-xbIpJ9RgT9-nKLoxP3nih5H4Uug.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shipporiminchob1/v24/wXK2E2wCr44tulPdnn-xbIpJ9RgT9-nCj6pv.ttf" - }, - { - "family": "Shizuru", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin" - ], - "version": "v13", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/shizuru/v13/O4ZSFGfvnxFiCA3i30IJlgUTj2A.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shizuru/v13/O4ZSFGfvnxFiCA3i70MDkg.ttf" - }, - { - "family": "Shojumaru", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/shojumaru/v16/rax_HiWfutkLLnaKCtlMBBJek0vA8A.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shojumaru/v16/rax_HiWfutkLLnaKCtl8BRha.ttf" - }, - { - "family": "Short Stack", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/shortstack/v16/bMrzmS2X6p0jZC6EcmPFX-SScX8D0nq6.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shortstack/v16/bMrzmS2X6p0jZC6EcmPFX9STe3s.ttf" - }, - { - "family": "Shrikhand", - "variants": [ - "regular" - ], - "subsets": [ - "gujarati", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/shrikhand/v17/a8IbNovtLWfR7T7bMJwbBIiQ0zhMtA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/shrikhand/v17/a8IbNovtLWfR7T7bMJwrBYKU.ttf" - }, - { - "family": "Siemreap", - "variants": [ - "regular" - ], - "subsets": [ - "khmer" - ], - "version": "v30", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/siemreap/v30/Gg82N5oFbgLvHAfNl2YbnA8DLXpe.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/siemreap/v30/Gg82N5oFbgLvHAfNl1Yalgs.ttf" - }, - { - "family": "Sigmar", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/sigmar/v9/hv-XlzJgIE8a85pUbWY3MTFgVg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sigmar/v9/hv-XlzJgIE8a85pkbGwz.ttf" - }, - { - "family": "Sigmar One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/sigmarone/v20/co3DmWZ8kjZuErj9Ta3dk6Pjp3Di8U0.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sigmarone/v20/co3DmWZ8kjZuErj9Ta3do6Lpow.ttf" - }, - { - "family": "Signika", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v29", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/signika/v29/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r93zuYzTMngt4xjw.ttf", - "regular": "https://fonts.gstatic.com/s/signika/v29/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9gTuYzTMngt4xjw.ttf", - "500": "https://fonts.gstatic.com/s/signika/v29/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9szuYzTMngt4xjw.ttf", - "600": "https://fonts.gstatic.com/s/signika/v29/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9XzyYzTMngt4xjw.ttf", - "700": "https://fonts.gstatic.com/s/signika/v29/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9ZjyYzTMngt4xjw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/signika/v29/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9gTuozDkj.ttf" - }, - { - "family": "Signika Negative", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v26", - "lastModified": "2025-09-02", - "files": { - "300": "https://fonts.gstatic.com/s/signikanegative/v26/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAr5S73st9hiuEq8.ttf", - "regular": "https://fonts.gstatic.com/s/signikanegative/v26/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAqnS73st9hiuEq8.ttf", - "500": "https://fonts.gstatic.com/s/signikanegative/v26/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAqVS73st9hiuEq8.ttf", - "600": "https://fonts.gstatic.com/s/signikanegative/v26/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAp5TL3st9hiuEq8.ttf", - "700": "https://fonts.gstatic.com/s/signikanegative/v26/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RApATL3st9hiuEq8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/signikanegative/v26/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAqnS43tvdw.ttf" - }, - { - "family": "Silkscreen", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v6", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/silkscreen/v6/m8JXjfVPf62XiF7kO-i9ULRvamODxdI.ttf", - "700": "https://fonts.gstatic.com/s/silkscreen/v6/m8JUjfVPf62XiF7kO-i9aAhATmuo2dudFvc.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/silkscreen/v6/m8JXjfVPf62XiF7kO-i9YLVlbg.ttf" - }, - { - "family": "Simonetta", - "variants": [ - "regular", - "italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/simonetta/v29/x3dickHVYrCU5BU15c4BfPACvy_1BA.ttf", - "italic": "https://fonts.gstatic.com/s/simonetta/v29/x3dkckHVYrCU5BU15c4xfvoGnSrlBBsy.ttf", - "900": "https://fonts.gstatic.com/s/simonetta/v29/x3dnckHVYrCU5BU15c45-N0mtwTpDQIrGg.ttf", - "900italic": "https://fonts.gstatic.com/s/simonetta/v29/x3d5ckHVYrCU5BU15c4xfsKCsA7tLwc7Gn88.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/simonetta/v29/x3dickHVYrCU5BU15c4xffoG.ttf" - }, - { - "family": "Single Day", - "variants": [ - "regular" - ], - "subsets": [ - "korean" - ], - "version": "v19", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/singleday/v19/LYjHdGDjlEgoAcF95EI5jVoFUNfeQJU.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/singleday/v19/LYjHdGDjlEgoAcF95EI5vVsPVA.ttf" - }, - { - "family": "Sintony", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/sintony/v17/XoHm2YDqR7-98cVUITQnu98ojjs.ttf", - "700": "https://fonts.gstatic.com/s/sintony/v17/XoHj2YDqR7-98cVUGYgIn9cDkjLp6C8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sintony/v17/XoHm2YDqR7-98cVUETUtvw.ttf" - }, - { - "family": "Sirin Stencil", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v27", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/sirinstencil/v27/mem4YaWwznmLx-lzGfN7MdRydchGBq6al6o.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sirinstencil/v27/mem4YaWwznmLx-lzGfN7MdRyRclMAg.ttf" - }, - { - "family": "Sirivennela", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v2", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/sirivennela/v2/kmK5Zq0oHhbAYX-X6lgptg7YiOFDtqtf.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sirivennela/v2/kmK5Zq0oHhbAYX-X6lgptj7ZguU.ttf" - }, - { - "family": "Six Caps", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/sixcaps/v23/6ae_4KGrU7VR7bNmabcS9XXaPCop.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sixcaps/v23/6ae_4KGrU7VR7bNmaYcT_3E.ttf" - }, - { - "family": "Sixtyfour", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v3", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/sixtyfour/v3/OD5vuMCT1numDm3nakXtp2h4jg463t9haG_3mBkVsV20uFT3BAE5f73YnyS5ZuOV.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sixtyfour/v3/OD5vuMCT1numDm3nakXtp2h4jg463t9haG_3mBkVsV20uFT3BAE5f43ZlSA.ttf" - }, - { - "family": "Sixtyfour Convergence", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols" - ], - "version": "v5", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/sixtyfourconvergence/v5/m8IQjepPf7mIglv5K__zM9srGA7wurbybZMfZsqG2Q6EWlJro5FJSJ4acT9PoOPwGgieaK7zkSpdXP-GrR9Yw9Tg7E4HGLbUKPlOh102hotkk3grz3g.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sixtyfourconvergence/v5/m8IQjepPf7mIglv5K__zM9srGA7wurbybZMfZsqG2Q6EWlJro5FJSJ4acT9PoOPwGgieaK7zkSpdXP-GrR9Yw9Tg7E4HGLbUKPlOh102topulw.ttf", - "colorCapabilities": [ - "COLRv1" - ] - }, - { - "family": "Skranji", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/skranji/v14/OZpDg_dtriVFNerMYzuuklTm3Ek.ttf", - "700": "https://fonts.gstatic.com/s/skranji/v14/OZpGg_dtriVFNerMW4eBtlzNwED-b4g.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/skranji/v14/OZpDg_dtriVFNerMUzqklg.ttf" - }, - { - "family": "Slabo 13px", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/slabo13px/v17/11hEGp_azEvXZUdSBzzRcKer2wkYnvI.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/slabo13px/v17/11hEGp_azEvXZUdSBzzRQKah3w.ttf" - }, - { - "family": "Slabo 27px", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/slabo27px/v16/mFT0WbgBwKPR_Z4hGN2qsxgJ1EJ7i90.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/slabo27px/v16/mFT0WbgBwKPR_Z4hGN2qgxkD0A.ttf" - }, - { - "family": "Slackey", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v29", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/slackey/v29/N0bV2SdQO-5yM0-dKlRaJdbWgdY.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/slackey/v29/N0bV2SdQO-5yM0-dGlVQIQ.ttf" - }, - { - "family": "Slackside One", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/slacksideone/v14/EJRQQgMrXdcGsiBuvnRxodTwVy7VocNB6Iw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/slacksideone/v14/EJRQQgMrXdcGsiBuvnRxodTwZy_fpQ.ttf" - }, - { - "family": "Smokum", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v30", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/smokum/v30/TK3iWkUbAhopmrdGHjUHte5fKg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/smokum/v30/TK3iWkUbAhopmrd2Hz8D.ttf" - }, - { - "family": "Smooch", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/smooch/v9/o-0LIps4xW8U1xUBjqp_6hVdYg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/smooch/v9/o-0LIps4xW8U1xUxj6B7.ttf" - }, - { - "family": "Smooch Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/smoochsans/v15/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiwUFodqIeNlzayg.ttf", - "200": "https://fonts.gstatic.com/s/smoochsans/v15/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiQUBodqIeNlzayg.ttf", - "300": "https://fonts.gstatic.com/s/smoochsans/v15/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oin0BodqIeNlzayg.ttf", - "regular": "https://fonts.gstatic.com/s/smoochsans/v15/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiwUBodqIeNlzayg.ttf", - "500": "https://fonts.gstatic.com/s/smoochsans/v15/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oi80BodqIeNlzayg.ttf", - "600": "https://fonts.gstatic.com/s/smoochsans/v15/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiH0dodqIeNlzayg.ttf", - "700": "https://fonts.gstatic.com/s/smoochsans/v15/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiJkdodqIeNlzayg.ttf", - "800": "https://fonts.gstatic.com/s/smoochsans/v15/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiQUdodqIeNlzayg.ttf", - "900": "https://fonts.gstatic.com/s/smoochsans/v15/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiaEdodqIeNlzayg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/smoochsans/v15/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiwUBYd6ga.ttf" - }, - { - "family": "Smythe", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/smythe/v24/MwQ3bhT01--coT1BOLh_uGInjA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/smythe/v24/MwQ3bhT01--coT1xObJ7.ttf" - }, - { - "family": "Sniglet", - "variants": [ - "regular", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/sniglet/v18/cIf9MaFLtkE3UjaJxCmrYGkHgIs.ttf", - "800": "https://fonts.gstatic.com/s/sniglet/v18/cIf4MaFLtkE3UjaJ_ImHRGEsnIJkWL4.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sniglet/v18/cIf9MaFLtkE3UjaJ9CihZA.ttf" - }, - { - "family": "Snippet", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/snippet/v21/bWt47f7XfQH9Gupu2v_Afcp9QWc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/snippet/v21/bWt47f7XfQH9Gupu6v7KeQ.ttf" - }, - { - "family": "Snowburst One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/snowburstone/v21/MQpS-WezKdujBsXY3B7I-UT7eZ-UPyacPbo.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/snowburstone/v21/MQpS-WezKdujBsXY3B7I-UT7SZ6eOw.ttf" - }, - { - "family": "Sofadi One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/sofadione/v22/JIA2UVBxdnVBuElZaMFGcDOIETkmYDU.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sofadione/v22/JIA2UVBxdnVBuElZaMFGQDKCFQ.ttf" - }, - { - "family": "Sofia", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v15", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/sofia/v15/8QIHdirahM3j_vu-sowsrqjk.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sofia/v15/8QIHdirahM3j_su_uIg.ttf" - }, - { - "family": "Sofia Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69B6sa3trvKCXl8k.ttf", - "200": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69D6sK3trvKCXl8k.ttf", - "300": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69AksK3trvKCXl8k.ttf", - "regular": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69B6sK3trvKCXl8k.ttf", - "500": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69BIsK3trvKCXl8k.ttf", - "600": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69Ckt63trvKCXl8k.ttf", - "700": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69Cdt63trvKCXl8k.ttf", - "800": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69D6t63trvKCXl8k.ttf", - "900": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69DTt63trvKCXl8k.ttf", - "100italic": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy80WvpPagW08kdLY.ttf", - "200italic": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy88WupPagW08kdLY.ttf", - "300italic": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy8xuupPagW08kdLY.ttf", - "italic": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy80WupPagW08kdLY.ttf", - "500italic": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy83eupPagW08kdLY.ttf", - "600italic": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy85uppPagW08kdLY.ttf", - "700italic": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy86KppPagW08kdLY.ttf", - "800italic": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy88WppPagW08kdLY.ttf", - "900italic": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy8-yppPagW08kdLY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sofiasans/v20/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69B6sJ3spPY.ttf" - }, - { - "family": "Sofia Sans Condensed", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext" - ], - "version": "v6", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqh-Csl8QO3OfwQQ.ttf", - "200": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqB-Gsl8QO3OfwQQ.ttf", - "300": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUq2eGsl8QO3OfwQQ.ttf", - "regular": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqh-Gsl8QO3OfwQQ.ttf", - "500": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqteGsl8QO3OfwQQ.ttf", - "600": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqWeasl8QO3OfwQQ.ttf", - "700": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqYOasl8QO3OfwQQ.ttf", - "800": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqB-asl8QO3OfwQQ.ttf", - "900": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqLuasl8QO3OfwQQ.ttf", - "100italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6JE1c4K_uLgQZ_3.ttf", - "200italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6LE1M4K_uLgQZ_3.ttf", - "300italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Ia1M4K_uLgQZ_3.ttf", - "italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6JE1M4K_uLgQZ_3.ttf", - "500italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6J21M4K_uLgQZ_3.ttf", - "600italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Ka084K_uLgQZ_3.ttf", - "700italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Kj084K_uLgQZ_3.ttf", - "800italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6LE084K_uLgQZ_3.ttf", - "900italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Lt084K_uLgQZ_3.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqh-Gcls4K.ttf" - }, - { - "family": "Sofia Sans Extra Condensed", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext" - ], - "version": "v6", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLmmmEfzmM356GxA.ttf", - "200": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLGmiEfzmM356GxA.ttf", - "300": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLxGiEfzmM356GxA.ttf", - "regular": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLmmiEfzmM356GxA.ttf", - "500": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLqGiEfzmM356GxA.ttf", - "600": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLRG-EfzmM356GxA.ttf", - "700": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLfW-EfzmM356GxA.ttf", - "800": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLGm-EfzmM356GxA.ttf", - "900": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLM2-EfzmM356GxA.ttf", - "100italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitsPTOI_ZuWxFXe.ttf", - "200italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivsPDOI_ZuWxFXe.ttf", - "300italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUisyPDOI_ZuWxFXe.ttf", - "italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitsPDOI_ZuWxFXe.ttf", - "500italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitePDOI_ZuWxFXe.ttf", - "600italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUiuyOzOI_ZuWxFXe.ttf", - "700italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUiuLOzOI_ZuWxFXe.ttf", - "800italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivsOzOI_ZuWxFXe.ttf", - "900italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivFOzOI_ZuWxFXe.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLmmi0fjOI.ttf" - }, - { - "family": "Sofia Sans Semi Condensed", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoobEO9TGahllIhN.ttf", - "200": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqbEe9TGahllIhN.ttf", - "300": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvopFEe9TGahllIhN.ttf", - "regular": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoobEe9TGahllIhN.ttf", - "500": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoopEe9TGahllIhN.ttf", - "600": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvorFFu9TGahllIhN.ttf", - "700": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvor8Fu9TGahllIhN.ttf", - "800": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqbFu9TGahllIhN.ttf", - "900": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqyFu9TGahllIhN.ttf", - "100italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUgcRE6xHkZhNeas.ttf", - "200italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUocQE6xHkZhNeas.ttf", - "300italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUlkQE6xHkZhNeas.ttf", - "italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUgcQE6xHkZhNeas.ttf", - "500italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUjUQE6xHkZhNeas.ttf", - "600italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUtkXE6xHkZhNeas.ttf", - "700italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUuAXE6xHkZhNeas.ttf", - "800italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUocXE6xHkZhNeas.ttf", - "900italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUq4XE6xHkZhNeas.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoobEd9SE6w.ttf" - }, - { - "family": "Solitreo", - "variants": [ - "regular" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/solitreo/v2/r05YGLlS5a9KYsyNO8upyDYtStiJ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/solitreo/v2/r05YGLlS5a9KYsyNO_uowjI.ttf" - }, - { - "family": "Solway", - "variants": [ - "300", - "regular", - "500", - "700", - "800" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-09-08", - "files": { - "300": "https://fonts.gstatic.com/s/solway/v19/AMOTz46Cs2uTAOCuLlgZms0QW3mqyg.ttf", - "regular": "https://fonts.gstatic.com/s/solway/v19/AMOQz46Cs2uTAOCWgnA9kuYMUg.ttf", - "500": "https://fonts.gstatic.com/s/solway/v19/AMOTz46Cs2uTAOCudlkZms0QW3mqyg.ttf", - "700": "https://fonts.gstatic.com/s/solway/v19/AMOTz46Cs2uTAOCuPl8Zms0QW3mqyg.ttf", - "800": "https://fonts.gstatic.com/s/solway/v19/AMOTz46Cs2uTAOCuIlwZms0QW3mqyg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/solway/v19/AMOQz46Cs2uTAOCmg3o5.ttf" - }, - { - "family": "Sometype Mono", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/sometypemono/v4/70lGu745KGk_R3uxyq0WrROhAJiJsJ_eTWllpTAMGE9agQBbs7uG.ttf", - "500": "https://fonts.gstatic.com/s/sometypemono/v4/70lGu745KGk_R3uxyq0WrROhAJiJsJ_eTWllpTA-GE9agQBbs7uG.ttf", - "600": "https://fonts.gstatic.com/s/sometypemono/v4/70lGu745KGk_R3uxyq0WrROhAJiJsJ_eTWllpTDSH09agQBbs7uG.ttf", - "700": "https://fonts.gstatic.com/s/sometypemono/v4/70lGu745KGk_R3uxyq0WrROhAJiJsJ_eTWllpTDrH09agQBbs7uG.ttf", - "italic": "https://fonts.gstatic.com/s/sometypemono/v4/70lEu745KGk_R3uxyq0WrROhKpG7T0e3JvPLoiXEW6cZiwR5tquGrxk.ttf", - "500italic": "https://fonts.gstatic.com/s/sometypemono/v4/70lEu745KGk_R3uxyq0WrROhKpG7T0e3JvPLoiXEW5UZiwR5tquGrxk.ttf", - "600italic": "https://fonts.gstatic.com/s/sometypemono/v4/70lEu745KGk_R3uxyq0WrROhKpG7T0e3JvPLoiXEW3keiwR5tquGrxk.ttf", - "700italic": "https://fonts.gstatic.com/s/sometypemono/v4/70lEu745KGk_R3uxyq0WrROhKpG7T0e3JvPLoiXEW0AeiwR5tquGrxk.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sometypemono/v4/70lGu745KGk_R3uxyq0WrROhAJiJsJ_eTWllpTAMGH9biwQ.ttf" - }, - { - "family": "Song Myung", - "variants": [ - "regular" - ], - "subsets": [ - "korean" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/songmyung/v22/1cX2aUDWAJH5-EIC7DIhr1GqhcitzeM.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/songmyung/v22/1cX2aUDWAJH5-EIC7DIhn1CggQ.ttf" - }, - { - "family": "Sono", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/sono/v12/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVNkWdEnR4qYeB4Q.ttf", - "300": "https://fonts.gstatic.com/s/sono/v12/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxV6EWdEnR4qYeB4Q.ttf", - "regular": "https://fonts.gstatic.com/s/sono/v12/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVtkWdEnR4qYeB4Q.ttf", - "500": "https://fonts.gstatic.com/s/sono/v12/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVhEWdEnR4qYeB4Q.ttf", - "600": "https://fonts.gstatic.com/s/sono/v12/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVaEKdEnR4qYeB4Q.ttf", - "700": "https://fonts.gstatic.com/s/sono/v12/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVUUKdEnR4qYeB4Q.ttf", - "800": "https://fonts.gstatic.com/s/sono/v12/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVNkKdEnR4qYeB4Q.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sono/v12/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVtkWtE358.ttf" - }, - { - "family": "Sonsie One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/sonsieone/v22/PbymFmP_EAnPqbKaoc18YVu80lbp8JM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sonsieone/v22/PbymFmP_EAnPqbKaoc18UVq21g.ttf" - }, - { - "family": "Sora", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/sora/v17/xMQOuFFYT72X5wkB_18qmnndmSdSn3-KIwNhBti0.ttf", - "200": "https://fonts.gstatic.com/s/sora/v17/xMQOuFFYT72X5wkB_18qmnndmSfSnn-KIwNhBti0.ttf", - "300": "https://fonts.gstatic.com/s/sora/v17/xMQOuFFYT72X5wkB_18qmnndmScMnn-KIwNhBti0.ttf", - "regular": "https://fonts.gstatic.com/s/sora/v17/xMQOuFFYT72X5wkB_18qmnndmSdSnn-KIwNhBti0.ttf", - "500": "https://fonts.gstatic.com/s/sora/v17/xMQOuFFYT72X5wkB_18qmnndmSdgnn-KIwNhBti0.ttf", - "600": "https://fonts.gstatic.com/s/sora/v17/xMQOuFFYT72X5wkB_18qmnndmSeMmX-KIwNhBti0.ttf", - "700": "https://fonts.gstatic.com/s/sora/v17/xMQOuFFYT72X5wkB_18qmnndmSe1mX-KIwNhBti0.ttf", - "800": "https://fonts.gstatic.com/s/sora/v17/xMQOuFFYT72X5wkB_18qmnndmSfSmX-KIwNhBti0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sora/v17/xMQOuFFYT72X5wkB_18qmnndmSdSnk-LKQc.ttf" - }, - { - "family": "Sorts Mill Goudy", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/sortsmillgoudy/v16/Qw3GZR9MED_6PSuS_50nEaVrfzgEXH0OjpM75PE.ttf", - "italic": "https://fonts.gstatic.com/s/sortsmillgoudy/v16/Qw3AZR9MED_6PSuS_50nEaVrfzgEbH8EirE-9PGLfQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sortsmillgoudy/v16/Qw3GZR9MED_6PSuS_50nEaVrfzgEbHwEig.ttf" - }, - { - "family": "Sour Gummy", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/sourgummy/v3/8AtGGs2gPYuNDii97MjjBrLbYfdJvDU5AZfP5opPVCC4oC5ANR1N88JU91CMD2tcoQ.ttf", - "200": "https://fonts.gstatic.com/s/sourgummy/v3/8AtGGs2gPYuNDii97MjjBrLbYfdJvDU5AZfP5opPVCC4oC5ANR1Nc8NU91CMD2tcoQ.ttf", - "300": "https://fonts.gstatic.com/s/sourgummy/v3/8AtGGs2gPYuNDii97MjjBrLbYfdJvDU5AZfP5opPVCC4oC5ANR1NrcNU91CMD2tcoQ.ttf", - "regular": "https://fonts.gstatic.com/s/sourgummy/v3/8AtGGs2gPYuNDii97MjjBrLbYfdJvDU5AZfP5opPVCC4oC5ANR1N88NU91CMD2tcoQ.ttf", - "500": "https://fonts.gstatic.com/s/sourgummy/v3/8AtGGs2gPYuNDii97MjjBrLbYfdJvDU5AZfP5opPVCC4oC5ANR1NwcNU91CMD2tcoQ.ttf", - "600": "https://fonts.gstatic.com/s/sourgummy/v3/8AtGGs2gPYuNDii97MjjBrLbYfdJvDU5AZfP5opPVCC4oC5ANR1NLcRU91CMD2tcoQ.ttf", - "700": "https://fonts.gstatic.com/s/sourgummy/v3/8AtGGs2gPYuNDii97MjjBrLbYfdJvDU5AZfP5opPVCC4oC5ANR1NFMRU91CMD2tcoQ.ttf", - "800": "https://fonts.gstatic.com/s/sourgummy/v3/8AtGGs2gPYuNDii97MjjBrLbYfdJvDU5AZfP5opPVCC4oC5ANR1Nc8RU91CMD2tcoQ.ttf", - "900": "https://fonts.gstatic.com/s/sourgummy/v3/8AtGGs2gPYuNDii97MjjBrLbYfdJvDU5AZfP5opPVCC4oC5ANR1NWsRU91CMD2tcoQ.ttf", - "100italic": "https://fonts.gstatic.com/s/sourgummy/v3/8AtIGs2gPYuNDii97MjjLLvpghcw76OXBoIHpHgGZt9gyUXamxpYO4C8tVqILW5MobGa.ttf", - "200italic": "https://fonts.gstatic.com/s/sourgummy/v3/8AtIGs2gPYuNDii97MjjLLvpghcw76OXBoIHpHgGZt9gyUXamxpYO4A8tFqILW5MobGa.ttf", - "300italic": "https://fonts.gstatic.com/s/sourgummy/v3/8AtIGs2gPYuNDii97MjjLLvpghcw76OXBoIHpHgGZt9gyUXamxpYO4DitFqILW5MobGa.ttf", - "italic": "https://fonts.gstatic.com/s/sourgummy/v3/8AtIGs2gPYuNDii97MjjLLvpghcw76OXBoIHpHgGZt9gyUXamxpYO4C8tFqILW5MobGa.ttf", - "500italic": "https://fonts.gstatic.com/s/sourgummy/v3/8AtIGs2gPYuNDii97MjjLLvpghcw76OXBoIHpHgGZt9gyUXamxpYO4COtFqILW5MobGa.ttf", - "600italic": "https://fonts.gstatic.com/s/sourgummy/v3/8AtIGs2gPYuNDii97MjjLLvpghcw76OXBoIHpHgGZt9gyUXamxpYO4Bis1qILW5MobGa.ttf", - "700italic": "https://fonts.gstatic.com/s/sourgummy/v3/8AtIGs2gPYuNDii97MjjLLvpghcw76OXBoIHpHgGZt9gyUXamxpYO4Bbs1qILW5MobGa.ttf", - "800italic": "https://fonts.gstatic.com/s/sourgummy/v3/8AtIGs2gPYuNDii97MjjLLvpghcw76OXBoIHpHgGZt9gyUXamxpYO4A8s1qILW5MobGa.ttf", - "900italic": "https://fonts.gstatic.com/s/sourgummy/v3/8AtIGs2gPYuNDii97MjjLLvpghcw76OXBoIHpHgGZt9gyUXamxpYO4AVs1qILW5MobGa.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sourgummy/v3/8AtGGs2gPYuNDii97MjjBrLbYfdJvDU5AZfP5opPVCC4oC5ANR1N88Nk9lqI.ttf" - }, - { - "family": "Source Code Pro", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v31", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DEyQhM5hTXUcdJg.ttf", - "300": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DJKQhM5hTXUcdJg.ttf", - "regular": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQhM5hTXUcdJg.ttf", - "500": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DP6QhM5hTXUcdJg.ttf", - "600": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DBKXhM5hTXUcdJg.ttf", - "700": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DCuXhM5hTXUcdJg.ttf", - "800": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DEyXhM5hTXUcdJg.ttf", - "900": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DGWXhM5hTXUcdJg.ttf", - "200italic": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTT7I1rSVcZZJiGpw.ttf", - "300italic": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTMo1rSVcZZJiGpw.ttf", - "italic": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTbI1rSVcZZJiGpw.ttf", - "500italic": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTXo1rSVcZZJiGpw.ttf", - "600italic": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTsoprSVcZZJiGpw.ttf", - "700italic": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTi4prSVcZZJiGpw.ttf", - "800italic": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTT7IprSVcZZJiGpw.ttf", - "900italic": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTxYprSVcZZJiGpw.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sourcecodepro/v31/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQtM9rSQ.ttf" - }, - { - "family": "Source Sans 3", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "200": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kw461EN_io6npfB.ttf", - "300": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kzm61EN_io6npfB.ttf", - "regular": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Ky461EN_io6npfB.ttf", - "500": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8KyK61EN_io6npfB.ttf", - "600": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kxm7FEN_io6npfB.ttf", - "700": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kxf7FEN_io6npfB.ttf", - "800": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kw47FEN_io6npfB.ttf", - "900": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8KwR7FEN_io6npfB.ttf", - "200italic": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqDlO9C4Ym4fB3Ts.ttf", - "300italic": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqOdO9C4Ym4fB3Ts.ttf", - "italic": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqLlO9C4Ym4fB3Ts.ttf", - "500italic": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqItO9C4Ym4fB3Ts.ttf", - "600italic": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqGdJ9C4Ym4fB3Ts.ttf", - "700italic": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqF5J9C4Ym4fB3Ts.ttf", - "800italic": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqDlJ9C4Ym4fB3Ts.ttf", - "900italic": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqBBJ9C4Ym4fB3Ts.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sourcesans3/v19/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Ky462EM9C4.ttf" - }, - { - "family": "Source Serif 4", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v14", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/sourceserif4/v14/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjipdqrhxXD-wGvjU.ttf", - "300": "https://fonts.gstatic.com/s/sourceserif4/v14/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjiklqrhxXD-wGvjU.ttf", - "regular": "https://fonts.gstatic.com/s/sourceserif4/v14/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjihdqrhxXD-wGvjU.ttf", - "500": "https://fonts.gstatic.com/s/sourceserif4/v14/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjiiVqrhxXD-wGvjU.ttf", - "600": "https://fonts.gstatic.com/s/sourceserif4/v14/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjisltrhxXD-wGvjU.ttf", - "700": "https://fonts.gstatic.com/s/sourceserif4/v14/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjivBtrhxXD-wGvjU.ttf", - "800": "https://fonts.gstatic.com/s/sourceserif4/v14/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjipdtrhxXD-wGvjU.ttf", - "900": "https://fonts.gstatic.com/s/sourceserif4/v14/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjir5trhxXD-wGvjU.ttf", - "200italic": "https://fonts.gstatic.com/s/sourceserif4/v14/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pxl9dC84DrjXEXw.ttf", - "300italic": "https://fonts.gstatic.com/s/sourceserif4/v14/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pGF9dC84DrjXEXw.ttf", - "italic": "https://fonts.gstatic.com/s/sourceserif4/v14/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pRl9dC84DrjXEXw.ttf", - "500italic": "https://fonts.gstatic.com/s/sourceserif4/v14/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pdF9dC84DrjXEXw.ttf", - "600italic": "https://fonts.gstatic.com/s/sourceserif4/v14/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pmFhdC84DrjXEXw.ttf", - "700italic": "https://fonts.gstatic.com/s/sourceserif4/v14/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98poVhdC84DrjXEXw.ttf", - "800italic": "https://fonts.gstatic.com/s/sourceserif4/v14/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pxlhdC84DrjXEXw.ttf", - "900italic": "https://fonts.gstatic.com/s/sourceserif4/v14/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98p71hdC84DrjXEXw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sourceserif4/v14/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjihdqnh1dCw.ttf" - }, - { - "family": "Space Grotesk", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/spacegrotesk/v22/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj62UUsjNsFjTDJK.ttf", - "regular": "https://fonts.gstatic.com/s/spacegrotesk/v22/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj7oUUsjNsFjTDJK.ttf", - "500": "https://fonts.gstatic.com/s/spacegrotesk/v22/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj7aUUsjNsFjTDJK.ttf", - "600": "https://fonts.gstatic.com/s/spacegrotesk/v22/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj42VksjNsFjTDJK.ttf", - "700": "https://fonts.gstatic.com/s/spacegrotesk/v22/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj4PVksjNsFjTDJK.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/spacegrotesk/v22/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj7oUXsiPMU.ttf" - }, - { - "family": "Space Mono", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRUEZ2RFq7AwU.ttf", - "italic": "https://fonts.gstatic.com/s/spacemono/v17/i7dNIFZifjKcF5UAWdDRYER8QHi-EwWMbg.ttf", - "700": "https://fonts.gstatic.com/s/spacemono/v17/i7dMIFZifjKcF5UAWdDRaPpZYFKQHwyVd3U.ttf", - "700italic": "https://fonts.gstatic.com/s/spacemono/v17/i7dSIFZifjKcF5UAWdDRYERE_FeaGy6QZ3WfYg.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRYEd8QA.ttf" - }, - { - "family": "Special Elite", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/specialelite/v20/XLYgIZbkc4JPUL5CVArUVL0nhncESXFtUsM.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/specialelite/v20/XLYgIZbkc4JPUL5CVArUVL0ntnYOTQ.ttf" - }, - { - "family": "Special Gothic", - "variants": [ - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-07-30", - "files": { - "regular": "https://fonts.gstatic.com/s/specialgothic/v3/1q2lY5WcG0Fg_v0fHc8BvIZ2537qdm1JEt9N3w2mJykOEnLhliLsitHN4bF8-SgLPIOkEp8.ttf", - "500": "https://fonts.gstatic.com/s/specialgothic/v3/1q2lY5WcG0Fg_v0fHc8BvIZ2537qdm1JEt9N3w2mJykOEnLhliLsitHN4YN8-SgLPIOkEp8.ttf", - "600": "https://fonts.gstatic.com/s/specialgothic/v3/1q2lY5WcG0Fg_v0fHc8BvIZ2537qdm1JEt9N3w2mJykOEnLhliLsitHN4W97-SgLPIOkEp8.ttf", - "700": "https://fonts.gstatic.com/s/specialgothic/v3/1q2lY5WcG0Fg_v0fHc8BvIZ2537qdm1JEt9N3w2mJykOEnLhliLsitHN4VZ7-SgLPIOkEp8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/specialgothic/v3/1q2lY5WcG0Fg_v0fHc8BvIZ2537qdm1JEt9N3w2mJykOEnLhliLsitHN4bF8ySkBOA.ttf" - }, - { - "family": "Special Gothic Condensed One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-04-23", - "files": { - "regular": "https://fonts.gstatic.com/s/specialgothiccondensedone/v2/R70Njzwei_mJM7OsFDzX7EL9NBO6IPvd-Avolzh49w7PUZt_5YtxbX8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/specialgothiccondensedone/v2/R70Njzwei_mJM7OsFDzX7EL9NBO6IPvd-Avolzh49w7PYZp14Q.ttf" - }, - { - "family": "Special Gothic Expanded One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-04-23", - "files": { - "regular": "https://fonts.gstatic.com/s/specialgothicexpandedone/v2/IurO6Zxk74-YaYk1r3HOet4g75ENmBxUmOK61tA0Iu5gn5t-KhUVvQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/specialgothicexpandedone/v2/IurO6Zxk74-YaYk1r3HOet4g75ENmBxUmOK61tA0Iu5QnpF6.ttf" - }, - { - "family": "Spectral", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/spectral/v15/rnCs-xNNww_2s0amA9v2s13GY_etWWIJ.ttf", - "200italic": "https://fonts.gstatic.com/s/spectral/v15/rnCu-xNNww_2s0amA9M8qrXHafOPXHIJErY.ttf", - "300": "https://fonts.gstatic.com/s/spectral/v15/rnCs-xNNww_2s0amA9uSsF3GY_etWWIJ.ttf", - "300italic": "https://fonts.gstatic.com/s/spectral/v15/rnCu-xNNww_2s0amA9M8qtHEafOPXHIJErY.ttf", - "regular": "https://fonts.gstatic.com/s/spectral/v15/rnCr-xNNww_2s0amA-M-mHnOSOuk.ttf", - "italic": "https://fonts.gstatic.com/s/spectral/v15/rnCt-xNNww_2s0amA9M8kn3sTfukQHs.ttf", - "500": "https://fonts.gstatic.com/s/spectral/v15/rnCs-xNNww_2s0amA9vKsV3GY_etWWIJ.ttf", - "500italic": "https://fonts.gstatic.com/s/spectral/v15/rnCu-xNNww_2s0amA9M8qonFafOPXHIJErY.ttf", - "600": "https://fonts.gstatic.com/s/spectral/v15/rnCs-xNNww_2s0amA9vmtl3GY_etWWIJ.ttf", - "600italic": "https://fonts.gstatic.com/s/spectral/v15/rnCu-xNNww_2s0amA9M8qqXCafOPXHIJErY.ttf", - "700": "https://fonts.gstatic.com/s/spectral/v15/rnCs-xNNww_2s0amA9uCt13GY_etWWIJ.ttf", - "700italic": "https://fonts.gstatic.com/s/spectral/v15/rnCu-xNNww_2s0amA9M8qsHDafOPXHIJErY.ttf", - "800": "https://fonts.gstatic.com/s/spectral/v15/rnCs-xNNww_2s0amA9uetF3GY_etWWIJ.ttf", - "800italic": "https://fonts.gstatic.com/s/spectral/v15/rnCu-xNNww_2s0amA9M8qt3AafOPXHIJErY.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/spectral/v15/rnCr-xNNww_2s0amA9M_kn0.ttf" - }, - { - "family": "Spectral SC", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-02", - "files": { - "200": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk0ALCRZonmalTgyPmRfs1qwkTXPYeVXJZB.ttf", - "200italic": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk2ALCRZonmalTgyPmRfsWg26zWN4O3WYZB_sU.ttf", - "300": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk0ALCRZonmalTgyPmRfs0OwUTXPYeVXJZB.ttf", - "300italic": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk2ALCRZonmalTgyPmRfsWg28jVN4O3WYZB_sU.ttf", - "regular": "https://fonts.gstatic.com/s/spectralsc/v15/KtkpALCRZonmalTgyPmRfvWi6WDfFpuc.ttf", - "italic": "https://fonts.gstatic.com/s/spectralsc/v15/KtkrALCRZonmalTgyPmRfsWg42T9E4ucRY8.ttf", - "500": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk0ALCRZonmalTgyPmRfs1WwETXPYeVXJZB.ttf", - "500italic": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk2ALCRZonmalTgyPmRfsWg25DUN4O3WYZB_sU.ttf", - "600": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk0ALCRZonmalTgyPmRfs16x0TXPYeVXJZB.ttf", - "600italic": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk2ALCRZonmalTgyPmRfsWg27zTN4O3WYZB_sU.ttf", - "700": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk0ALCRZonmalTgyPmRfs0exkTXPYeVXJZB.ttf", - "700italic": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk2ALCRZonmalTgyPmRfsWg29jSN4O3WYZB_sU.ttf", - "800": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk0ALCRZonmalTgyPmRfs0CxUTXPYeVXJZB.ttf", - "800italic": "https://fonts.gstatic.com/s/spectralsc/v15/Ktk2ALCRZonmalTgyPmRfsWg28TRN4O3WYZB_sU.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/spectralsc/v15/KtkpALCRZonmalTgyPmRfsWj42Q.ttf" - }, - { - "family": "Spicy Rice", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/spicyrice/v28/uK_24rSEd-Uqwk4jY1RyGv-2WkowRcc.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/spicyrice/v28/uK_24rSEd-Uqwk4jY1RyKv68Xg.ttf" - }, - { - "family": "Spinnaker", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/spinnaker/v21/w8gYH2oyX-I0_rvR6Hmn3HwLqOqSBg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/spinnaker/v21/w8gYH2oyX-I0_rvR6HmX3XYP.ttf" - }, - { - "family": "Spirax", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/spirax/v22/buE3poKgYNLy0F3cXktt-Csn-Q.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/spirax/v22/buE3poKgYNLy0F3sX0Fp.ttf" - }, - { - "family": "Splash", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/splash/v8/KtksAL2RZoDkbU6hpPPGNdS6wg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/splash/v8/KtksAL2RZoDkbU6RpfnC.ttf" - }, - { - "family": "Spline Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/splinesans/v16/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpZlnYEtvlUfE2kw.ttf", - "regular": "https://fonts.gstatic.com/s/splinesans/v16/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpOFnYEtvlUfE2kw.ttf", - "500": "https://fonts.gstatic.com/s/splinesans/v16/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpClnYEtvlUfE2kw.ttf", - "600": "https://fonts.gstatic.com/s/splinesans/v16/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRp5l7YEtvlUfE2kw.ttf", - "700": "https://fonts.gstatic.com/s/splinesans/v16/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRp317YEtvlUfE2kw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/splinesans/v16/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpOFnoE9Hh.ttf" - }, - { - "family": "Spline Sans Mono", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/splinesansmono/v13/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGA8MrtVy4d4dGb1.ttf", - "regular": "https://fonts.gstatic.com/s/splinesansmono/v13/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGBiMrtVy4d4dGb1.ttf", - "500": "https://fonts.gstatic.com/s/splinesansmono/v13/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGBQMrtVy4d4dGb1.ttf", - "600": "https://fonts.gstatic.com/s/splinesansmono/v13/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGC8NbtVy4d4dGb1.ttf", - "700": "https://fonts.gstatic.com/s/splinesansmono/v13/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGCFNbtVy4d4dGb1.ttf", - "300italic": "https://fonts.gstatic.com/s/splinesansmono/v13/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcQ0WwYNacXb12MM.ttf", - "italic": "https://fonts.gstatic.com/s/splinesansmono/v13/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcVMWwYNacXb12MM.ttf", - "500italic": "https://fonts.gstatic.com/s/splinesansmono/v13/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcWEWwYNacXb12MM.ttf", - "600italic": "https://fonts.gstatic.com/s/splinesansmono/v13/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcY0RwYNacXb12MM.ttf", - "700italic": "https://fonts.gstatic.com/s/splinesansmono/v13/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcbQRwYNacXb12MM.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/splinesansmono/v13/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGBiMotUwYM.ttf" - }, - { - "family": "Squada One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/squadaone/v20/BCasqZ8XsOrx4mcOk6MtWaA8WDBkHgs.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/squadaone/v20/BCasqZ8XsOrx4mcOk6MtaaE2XA.ttf" - }, - { - "family": "Square Peg", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/squarepeg/v7/y83eW48Nzw6ZlUHc-phrBDHrHHfrFPE.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/squarepeg/v7/y83eW48Nzw6ZlUHc-phrNDDhGA.ttf" - }, - { - "family": "Sree Krushnadevaraya", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v23", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/sreekrushnadevaraya/v23/R70FjzQeifmPepmyQQjQ9kvwMkWYPfTA_EWb2FhQuXir.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sreekrushnadevaraya/v23/R70FjzQeifmPepmyQQjQ9kvwMkWYPfTA_HWa0lw.ttf" - }, - { - "family": "Sriracha", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/sriracha/v16/0nkrC9D4IuYBgWcI9ObYRQDioeb0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sriracha/v16/0nkrC9D4IuYBgWcI9NbZTwQ.ttf" - }, - { - "family": "Srisakdi", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/srisakdi/v18/yMJRMIlvdpDbkB0A-jq8fSx5i814.ttf", - "700": "https://fonts.gstatic.com/s/srisakdi/v18/yMJWMIlvdpDbkB0A-gIAUghxoNFxW0Hz.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/srisakdi/v18/yMJRMIlvdpDbkB0A-gq9dyg.ttf" - }, - { - "family": "Staatliches", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/staatliches/v15/HI_OiY8KO6hCsQSoAPmtMbectJG9O9PS.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/staatliches/v15/HI_OiY8KO6hCsQSoAPmtMYedvpU.ttf" - }, - { - "family": "Stalemate", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/stalemate/v24/taiIGmZ_EJq97-UfkZRpuqSs8ZQpaQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/stalemate/v24/taiIGmZ_EJq97-UfkZRZu66o.ttf" - }, - { - "family": "Stalinist One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v58", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/stalinistone/v58/MQpS-WezM9W4Dd7D3B7I-UT7eZ-UPyacPbo.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/stalinistone/v58/MQpS-WezM9W4Dd7D3B7I-UT7SZ6eOw.ttf" - }, - { - "family": "Stardos Stencil", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v15", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/stardosstencil/v15/X7n94bcuGPC8hrvEOHXOgaKCc2TR71R3tiSx0g.ttf", - "700": "https://fonts.gstatic.com/s/stardosstencil/v15/X7n44bcuGPC8hrvEOHXOgaKCc2TpU3tTvg-t29HSHw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/stardosstencil/v15/X7n94bcuGPC8hrvEOHXOgaKCc2Th7l5z.ttf" - }, - { - "family": "Stick", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/stick/v20/Qw3TZQpMCyTtJSvfvPVDMPoF.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/stick/v20/Qw3TZQpMCyTtJRvetvE.ttf" - }, - { - "family": "Stick No Bills", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "sinhala" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/sticknobills/v17/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVP8Q7KriwKhcTKA.ttf", - "300": "https://fonts.gstatic.com/s/sticknobills/v17/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcV4cQ7KriwKhcTKA.ttf", - "regular": "https://fonts.gstatic.com/s/sticknobills/v17/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVv8Q7KriwKhcTKA.ttf", - "500": "https://fonts.gstatic.com/s/sticknobills/v17/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVjcQ7KriwKhcTKA.ttf", - "600": "https://fonts.gstatic.com/s/sticknobills/v17/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVYcM7KriwKhcTKA.ttf", - "700": "https://fonts.gstatic.com/s/sticknobills/v17/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVWMM7KriwKhcTKA.ttf", - "800": "https://fonts.gstatic.com/s/sticknobills/v17/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVP8M7KriwKhcTKA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sticknobills/v17/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVv8QLK7K0.ttf" - }, - { - "family": "Stint Ultra Condensed", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/stintultracondensed/v25/-W_gXIrsVjjeyEnPC45qD2NoFPtBE0xCh2A-qhUO2cNvdg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/stintultracondensed/v25/-W_gXIrsVjjeyEnPC45qD2NoFPtBE0xCh2AOqx8K.ttf" - }, - { - "family": "Stint Ultra Expanded", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/stintultraexpanded/v24/CSRg4yNNh-GbW3o3JkwoDcdvMKMf0oBAd0qoATQkWwam.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/stintultraexpanded/v24/CSRg4yNNh-GbW3o3JkwoDcdvMKMf0oBAd3qpCzA.ttf" - }, - { - "family": "Stoke", - "variants": [ - "300", - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/stoke/v26/z7NXdRb7aTMfKNvFVgxC_pjcTeWU.ttf", - "regular": "https://fonts.gstatic.com/s/stoke/v26/z7NadRb7aTMfKONpfihK1YTV.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/stoke/v26/z7NadRb7aTMfKNNodCw.ttf" - }, - { - "family": "Story Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v3", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/storyscript/v3/mem5YaSw02SQ0OlzDuR8Isk-VeJoCqeDjg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/storyscript/v3/mem5YaSw02SQ0OlzDuR8IskOVOhs.ttf" - }, - { - "family": "Strait", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/strait/v19/DtViJxy6WaEr1LZzeDhtkl0U7w.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/strait/v19/DtViJxy6WaEr1LZDeTJp.ttf" - }, - { - "family": "Style Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/stylescript/v13/vm8xdRX3SV7Z0aPa88xzW5npeFT76NZnMw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/stylescript/v13/vm8xdRX3SV7Z0aPa88xzW5nZeV7_.ttf" - }, - { - "family": "Stylish", - "variants": [ - "regular" - ], - "subsets": [ - "korean" - ], - "version": "v25", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/stylish/v25/m8JSjfhPYriQkk7-fo35dLxEdmo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/stylish/v25/m8JSjfhPYriQkk7-TozzcA.ttf" - }, - { - "family": "Sue Ellen Francisco", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/sueellenfrancisco/v22/wXK3E20CsoJ9j1DDkjHcQ5ZL8xRaxru9ropF2lqk9H4.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sueellenfrancisco/v22/wXK3E20CsoJ9j1DDkjHcQ5ZL8xRaxru9notP3g.ttf" - }, - { - "family": "Suez One", - "variants": [ - "regular" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/suezone/v15/taiJGmd_EZ6rqscQgNFJkIqg-I0w.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/suezone/v15/taiJGmd_EZ6rqscQgOFImo4.ttf" - }, - { - "family": "Sulphur Point", - "variants": [ - "300", - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/sulphurpoint/v16/RLpkK5vv8KaycDcazWFPBj2afVU6n6kFUHPIFaU.ttf", - "regular": "https://fonts.gstatic.com/s/sulphurpoint/v16/RLp5K5vv8KaycDcazWFPBj2aRfkSu6EuTHo.ttf", - "700": "https://fonts.gstatic.com/s/sulphurpoint/v16/RLpkK5vv8KaycDcazWFPBj2afUU9n6kFUHPIFaU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sulphurpoint/v16/RLp5K5vv8KaycDcazWFPBj2adfgYvw.ttf" - }, - { - "family": "Sumana", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/sumana/v12/4UaDrE5TqRBjGj-G8Bji76zR4w.ttf", - "700": "https://fonts.gstatic.com/s/sumana/v12/4UaArE5TqRBjGj--TDfG54fN6ppsKg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sumana/v12/4UaDrE5TqRBjGj-28RLm.ttf" - }, - { - "family": "Sunflower", - "variants": [ - "300", - "500", - "700" - ], - "subsets": [ - "korean" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/sunflower/v18/RWmPoKeF8fUjqIj7Vc-06MfiqYsGBGBzCw.ttf", - "500": "https://fonts.gstatic.com/s/sunflower/v18/RWmPoKeF8fUjqIj7Vc-0sMbiqYsGBGBzCw.ttf", - "700": "https://fonts.gstatic.com/s/sunflower/v18/RWmPoKeF8fUjqIj7Vc-0-MDiqYsGBGBzCw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sunflower/v18/RWmPoKeF8fUjqIj7Vc-06MfSqIEC.ttf" - }, - { - "family": "Sunshiney", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/sunshiney/v24/LDIwapGTLBwsS-wT4vcgE8moUePWkg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sunshiney/v24/LDIwapGTLBwsS-wT4vcQEsOs.ttf" - }, - { - "family": "Supermercado One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/supermercadoone/v29/OpNXnpQWg8jc_xps_Gi14kVVEXOn60b3MClBRTs.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/supermercadoone/v29/OpNXnpQWg8jc_xps_Gi14kVVEXOn20f9NA.ttf" - }, - { - "family": "Sura", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/sura/v21/SZc23FL5PbyzFf5UWzXtjUM.ttf", - "700": "https://fonts.gstatic.com/s/sura/v21/SZc53FL5PbyzLUJ7fz3GkUrS8DI.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/sura/v21/SZc23FL5PbyzJf9eXw.ttf" - }, - { - "family": "Suranna", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v15", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/suranna/v15/gokuH6ztGkFjWe58tBRZT2KmgP0.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/suranna/v15/gokuH6ztGkFjWe58hBVTSw.ttf" - }, - { - "family": "Suravaram", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/suravaram/v23/_gP61R_usiY7SCym4xIAi261Qv9roQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/suravaram/v23/_gP61R_usiY7SCym4xIwimSx.ttf" - }, - { - "family": "Suwannaphum", - "variants": [ - "100", - "300", - "regular", - "700", - "900" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v33", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/suwannaphum/v33/jAnAgHV7GtDvc8jbe8hXXL3B9cSWXx2VZmk.ttf", - "300": "https://fonts.gstatic.com/s/suwannaphum/v33/jAnfgHV7GtDvc8jbe8hXXL0J1-S8cRGcf3Ai.ttf", - "regular": "https://fonts.gstatic.com/s/suwannaphum/v33/jAnCgHV7GtDvc8jbe8hXXIWl_8C0Wg2V.ttf", - "700": "https://fonts.gstatic.com/s/suwannaphum/v33/jAnfgHV7GtDvc8jbe8hXXL0Z0OS8cRGcf3Ai.ttf", - "900": "https://fonts.gstatic.com/s/suwannaphum/v33/jAnfgHV7GtDvc8jbe8hXXL0h0uS8cRGcf3Ai.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/suwannaphum/v33/jAnCgHV7GtDvc8jbe8hXXLWk9cQ.ttf" - }, - { - "family": "Swanky and Moo Moo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/swankyandmoomoo/v24/flUlRrKz24IuWVI_WJYTYcqbEsMUZ3kUtbPkR64SYQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/swankyandmoomoo/v24/flUlRrKz24IuWVI_WJYTYcqbEsMUZ3kktLng.ttf" - }, - { - "family": "Syncopate", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/syncopate/v24/pe0sMIuPIYBCpEV5eFdyAv2-C99ycg.ttf", - "700": "https://fonts.gstatic.com/s/syncopate/v24/pe0pMIuPIYBCpEV5eFdKvtKaA_Rue1UwVg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/syncopate/v24/pe0sMIuPIYBCpEV5eFdCA_e6.ttf" - }, - { - "family": "Syne", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "greek", - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/syne/v24/8vIS7w4qzmVxsWxjBZRjr0FKM_04uT6kR47NCV5Z.ttf", - "500": "https://fonts.gstatic.com/s/syne/v24/8vIS7w4qzmVxsWxjBZRjr0FKM_0KuT6kR47NCV5Z.ttf", - "600": "https://fonts.gstatic.com/s/syne/v24/8vIS7w4qzmVxsWxjBZRjr0FKM_3mvj6kR47NCV5Z.ttf", - "700": "https://fonts.gstatic.com/s/syne/v24/8vIS7w4qzmVxsWxjBZRjr0FKM_3fvj6kR47NCV5Z.ttf", - "800": "https://fonts.gstatic.com/s/syne/v24/8vIS7w4qzmVxsWxjBZRjr0FKM_24vj6kR47NCV5Z.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/syne/v24/8vIS7w4qzmVxsWxjBZRjr0FKM_04uQ6lTYo.ttf" - }, - { - "family": "Syne Mono", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/synemono/v16/K2FzfZNHj_FHBmRbFvHzIqCkDyvqZA.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/synemono/v16/K2FzfZNHj_FHBmRbFvHDI6qg.ttf" - }, - { - "family": "Syne Tactile", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/synetactile/v16/11hGGpna2UTQKjMCVzjAPMKh3ysdjvKU8Q.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/synetactile/v16/11hGGpna2UTQKjMCVzjAPMKR3iEZ.ttf" - }, - { - "family": "TASA Explorer", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/tasaexplorer/v2/K2FkfZdAt8xjBmxMCPK8UO_SPSH6kbsQNeItOI6o7xnGirZPlnP-.ttf", - "500": "https://fonts.gstatic.com/s/tasaexplorer/v2/K2FkfZdAt8xjBmxMCPK8UO_SPSH6kbsQNeItOI6a7xnGirZPlnP-.ttf", - "600": "https://fonts.gstatic.com/s/tasaexplorer/v2/K2FkfZdAt8xjBmxMCPK8UO_SPSH6kbsQNeItOI526BnGirZPlnP-.ttf", - "700": "https://fonts.gstatic.com/s/tasaexplorer/v2/K2FkfZdAt8xjBmxMCPK8UO_SPSH6kbsQNeItOI5P6BnGirZPlnP-.ttf", - "800": "https://fonts.gstatic.com/s/tasaexplorer/v2/K2FkfZdAt8xjBmxMCPK8UO_SPSH6kbsQNeItOI4o6BnGirZPlnP-.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tasaexplorer/v2/K2FkfZdAt8xjBmxMCPK8UO_SPSH6kbsQNeItOI6o7ynHgLI.ttf" - }, - { - "family": "TASA Orbiter", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/tasaorbiter/v2/3XF4Erw3860rsdSUVZx78hPcTvQoDGHxaFGfVH4C8py095IuGcc.ttf", - "500": "https://fonts.gstatic.com/s/tasaorbiter/v2/3XF4Erw3860rsdSUVZx78hPcTvQoDGHxaFGfVEwC8py095IuGcc.ttf", - "600": "https://fonts.gstatic.com/s/tasaorbiter/v2/3XF4Erw3860rsdSUVZx78hPcTvQoDGHxaFGfVKAF8py095IuGcc.ttf", - "700": "https://fonts.gstatic.com/s/tasaorbiter/v2/3XF4Erw3860rsdSUVZx78hPcTvQoDGHxaFGfVJkF8py095IuGcc.ttf", - "800": "https://fonts.gstatic.com/s/tasaorbiter/v2/3XF4Erw3860rsdSUVZx78hPcTvQoDGHxaFGfVP4F8py095IuGcc.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tasaorbiter/v2/3XF4Erw3860rsdSUVZx78hPcTvQoDGHxaFGfVH4Cwp2-8w.ttf" - }, - { - "family": "Tac One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/tacone/v5/ahcZv8Cj3zw7qDr8fO4hU-FwnU0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tacone/v5/ahcZv8Cj3zw7qDr8TO8rVw.ttf" - }, - { - "family": "Tagesschrift", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-04-23", - "files": { - "regular": "https://fonts.gstatic.com/s/tagesschrift/v2/pe0pMI6IOYlEuEZ7ZEA7ZKOaA_Rue1UwVg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tagesschrift/v2/pe0pMI6IOYlEuEZ7ZEA7ZKOqAv5q.ttf" - }, - { - "family": "Tai Heritage Pro", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "tai-viet", - "vietnamese" - ], - "version": "v9", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/taiheritagepro/v9/sZlfdQid-zgaNiNIYcUzJMU3IYyNoHxSENxuLuE.ttf", - "700": "https://fonts.gstatic.com/s/taiheritagepro/v9/sZlYdQid-zgaNiNIYcUzJMU3IYyNmMB9NNRFMuhjCXY.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/taiheritagepro/v9/sZlfdQid-zgaNiNIYcUzJMU3IYyNkH1YFA.ttf" - }, - { - "family": "Tajawal", - "variants": [ - "200", - "300", - "regular", - "500", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "latin" - ], - "version": "v12", - "lastModified": "2025-09-08", - "files": { - "200": "https://fonts.gstatic.com/s/tajawal/v12/Iurf6YBj_oCad4k1l_6gLrZjiLlJ-G0.ttf", - "300": "https://fonts.gstatic.com/s/tajawal/v12/Iurf6YBj_oCad4k1l5qjLrZjiLlJ-G0.ttf", - "regular": "https://fonts.gstatic.com/s/tajawal/v12/Iura6YBj_oCad4k1rzaLCr5IlLA.ttf", - "500": "https://fonts.gstatic.com/s/tajawal/v12/Iurf6YBj_oCad4k1l8KiLrZjiLlJ-G0.ttf", - "700": "https://fonts.gstatic.com/s/tajawal/v12/Iurf6YBj_oCad4k1l4qkLrZjiLlJ-G0.ttf", - "800": "https://fonts.gstatic.com/s/tajawal/v12/Iurf6YBj_oCad4k1l5anLrZjiLlJ-G0.ttf", - "900": "https://fonts.gstatic.com/s/tajawal/v12/Iurf6YBj_oCad4k1l7KmLrZjiLlJ-G0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tajawal/v12/Iura6YBj_oCad4k1nzeBDg.ttf" - }, - { - "family": "Tangerine", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/tangerine/v18/IurY6Y5j_oScZZow4VOBDpxNhLBQ4Q.ttf", - "700": "https://fonts.gstatic.com/s/tangerine/v18/Iurd6Y5j_oScZZow4VO5srNpjJtM6G0t9w.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tangerine/v18/IurY6Y5j_oScZZow4VOxD5ZJ.ttf" - }, - { - "family": "Tapestry", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/tapestry/v6/SlGTmQecrosEYXhaGBIkqnB6aSQU.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tapestry/v6/SlGTmQecrosEYXhaGCIloHQ.ttf" - }, - { - "family": "Taprom", - "variants": [ - "regular" - ], - "subsets": [ - "khmer", - "latin" - ], - "version": "v29", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/taprom/v29/UcCn3F82JHycULbFQyk3-0kvHg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/taprom/v29/UcCn3F82JHycULb1QiMz.ttf" - }, - { - "family": "Tauri", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/tauri/v20/TwMA-IISS0AM3IpVWHU_TBqO.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tauri/v20/TwMA-IISS0AM3LpUUnE.ttf" - }, - { - "family": "Taviraj", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v15", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/taviraj/v15/ahcbv8Cj3ylylTXzRIorV8N1jU2gog.ttf", - "100italic": "https://fonts.gstatic.com/s/taviraj/v15/ahcdv8Cj3ylylTXzTOwTM8lxr0iwolLl.ttf", - "200": "https://fonts.gstatic.com/s/taviraj/v15/ahccv8Cj3ylylTXzRCYKd-lbgUS5u0s.ttf", - "200italic": "https://fonts.gstatic.com/s/taviraj/v15/ahcev8Cj3ylylTXzTOwTn-hRhWa8q0v8ag.ttf", - "300": "https://fonts.gstatic.com/s/taviraj/v15/ahccv8Cj3ylylTXzREIJd-lbgUS5u0s.ttf", - "300italic": "https://fonts.gstatic.com/s/taviraj/v15/ahcev8Cj3ylylTXzTOwT--tRhWa8q0v8ag.ttf", - "regular": "https://fonts.gstatic.com/s/taviraj/v15/ahcZv8Cj3ylylTXzfO4hU-FwnU0.ttf", - "italic": "https://fonts.gstatic.com/s/taviraj/v15/ahcbv8Cj3ylylTXzTOwrV8N1jU2gog.ttf", - "500": "https://fonts.gstatic.com/s/taviraj/v15/ahccv8Cj3ylylTXzRBoId-lbgUS5u0s.ttf", - "500italic": "https://fonts.gstatic.com/s/taviraj/v15/ahcev8Cj3ylylTXzTOwTo-pRhWa8q0v8ag.ttf", - "600": "https://fonts.gstatic.com/s/taviraj/v15/ahccv8Cj3ylylTXzRDYPd-lbgUS5u0s.ttf", - "600italic": "https://fonts.gstatic.com/s/taviraj/v15/ahcev8Cj3ylylTXzTOwTj-1RhWa8q0v8ag.ttf", - "700": "https://fonts.gstatic.com/s/taviraj/v15/ahccv8Cj3ylylTXzRFIOd-lbgUS5u0s.ttf", - "700italic": "https://fonts.gstatic.com/s/taviraj/v15/ahcev8Cj3ylylTXzTOwT6-xRhWa8q0v8ag.ttf", - "800": "https://fonts.gstatic.com/s/taviraj/v15/ahccv8Cj3ylylTXzRE4Nd-lbgUS5u0s.ttf", - "800italic": "https://fonts.gstatic.com/s/taviraj/v15/ahcev8Cj3ylylTXzTOwT9-9RhWa8q0v8ag.ttf", - "900": "https://fonts.gstatic.com/s/taviraj/v15/ahccv8Cj3ylylTXzRGoMd-lbgUS5u0s.ttf", - "900italic": "https://fonts.gstatic.com/s/taviraj/v15/ahcev8Cj3ylylTXzTOwT0-5RhWa8q0v8ag.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/taviraj/v15/ahcZv8Cj3ylylTXzTO8rVw.ttf" - }, - { - "family": "Teachers", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "greek-ext", - "latin", - "latin-ext" - ], - "version": "v6", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/teachers/v6/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBr3powY55O4AS32A.ttf", - "500": "https://fonts.gstatic.com/s/teachers/v6/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBr7JowY55O4AS32A.ttf", - "600": "https://fonts.gstatic.com/s/teachers/v6/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBrAJ0wY55O4AS32A.ttf", - "700": "https://fonts.gstatic.com/s/teachers/v6/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBrOZ0wY55O4AS32A.ttf", - "800": "https://fonts.gstatic.com/s/teachers/v6/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBrXp0wY55O4AS32A.ttf", - "italic": "https://fonts.gstatic.com/s/teachers/v6/H4c3BXKVncXVmUGsgRY40rCwdnYr0Dd-FtnYIJRKwgGn2JLo.ttf", - "500italic": "https://fonts.gstatic.com/s/teachers/v6/H4c3BXKVncXVmUGsgRY40rCwdnYr0Dd-FtnqIJRKwgGn2JLo.ttf", - "600italic": "https://fonts.gstatic.com/s/teachers/v6/H4c3BXKVncXVmUGsgRY40rCwdnYr0Dd-FtkGJ5RKwgGn2JLo.ttf", - "700italic": "https://fonts.gstatic.com/s/teachers/v6/H4c3BXKVncXVmUGsgRY40rCwdnYr0Dd-Ftk_J5RKwgGn2JLo.ttf", - "800italic": "https://fonts.gstatic.com/s/teachers/v6/H4c3BXKVncXVmUGsgRY40rCwdnYr0Dd-FtlYJ5RKwgGn2JLo.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/teachers/v6/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBr3poAYpRK.ttf" - }, - { - "family": "Teko", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/teko/v23/LYjYdG7kmE0gV69VVPPdFl06VN9JG7Sy3TKEvkCF.ttf", - "regular": "https://fonts.gstatic.com/s/teko/v23/LYjYdG7kmE0gV69VVPPdFl06VN8XG7Sy3TKEvkCF.ttf", - "500": "https://fonts.gstatic.com/s/teko/v23/LYjYdG7kmE0gV69VVPPdFl06VN8lG7Sy3TKEvkCF.ttf", - "600": "https://fonts.gstatic.com/s/teko/v23/LYjYdG7kmE0gV69VVPPdFl06VN_JHLSy3TKEvkCF.ttf", - "700": "https://fonts.gstatic.com/s/teko/v23/LYjYdG7kmE0gV69VVPPdFl06VN_wHLSy3TKEvkCF.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/teko/v23/LYjYdG7kmE0gV69VVPPdFl06VN8XG4Sz1zY.ttf" - }, - { - "family": "Tektur", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/tektur/v6/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TrwuVYtOY8P7TWd0.ttf", - "500": "https://fonts.gstatic.com/s/tektur/v6/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TrwcVYtOY8P7TWd0.ttf", - "600": "https://fonts.gstatic.com/s/tektur/v6/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TrzwUotOY8P7TWd0.ttf", - "700": "https://fonts.gstatic.com/s/tektur/v6/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TrzJUotOY8P7TWd0.ttf", - "800": "https://fonts.gstatic.com/s/tektur/v6/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TryuUotOY8P7TWd0.ttf", - "900": "https://fonts.gstatic.com/s/tektur/v6/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TryHUotOY8P7TWd0.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tektur/v6/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TrwuVbtPacc.ttf" - }, - { - "family": "Telex", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/telex/v18/ieVw2Y1fKWmIO9fTB1piKFIf.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/telex/v18/ieVw2Y1fKWmIO-fSDV4.ttf" - }, - { - "family": "Tenali Ramakrishna", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v14", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/tenaliramakrishna/v14/raxgHj6Yt9gAN3LLKs0BZVMo8jmwn1-8KJXqUFFvtA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tenaliramakrishna/v14/raxgHj6Yt9gAN3LLKs0BZVMo8jmwn1-MKZ_u.ttf" - }, - { - "family": "Tenor Sans", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/tenorsans/v21/bx6ANxqUneKx06UkIXISr3JyC22IyqI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tenorsans/v21/bx6ANxqUneKx06UkIXISn3N4Dw.ttf" - }, - { - "family": "Text Me One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v26", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/textmeone/v26/i7dOIFdlayuLUvgoFvHQFWZcalayGhyV.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/textmeone/v26/i7dOIFdlayuLUvgoFvHQFVZdYFI.ttf" - }, - { - "family": "Texturina", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v32", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/texturina/v32/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eYG_Ug25riW1OD.ttf", - "200": "https://fonts.gstatic.com/s/texturina/v32/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cYGvUg25riW1OD.ttf", - "300": "https://fonts.gstatic.com/s/texturina/v32/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2fGGvUg25riW1OD.ttf", - "regular": "https://fonts.gstatic.com/s/texturina/v32/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eYGvUg25riW1OD.ttf", - "500": "https://fonts.gstatic.com/s/texturina/v32/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eqGvUg25riW1OD.ttf", - "600": "https://fonts.gstatic.com/s/texturina/v32/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2dGHfUg25riW1OD.ttf", - "700": "https://fonts.gstatic.com/s/texturina/v32/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2d_HfUg25riW1OD.ttf", - "800": "https://fonts.gstatic.com/s/texturina/v32/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cYHfUg25riW1OD.ttf", - "900": "https://fonts.gstatic.com/s/texturina/v32/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cxHfUg25riW1OD.ttf", - "100italic": "https://fonts.gstatic.com/s/texturina/v32/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWR1i0Z7AXkODN94.ttf", - "200italic": "https://fonts.gstatic.com/s/texturina/v32/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWZ1j0Z7AXkODN94.ttf", - "300italic": "https://fonts.gstatic.com/s/texturina/v32/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWUNj0Z7AXkODN94.ttf", - "italic": "https://fonts.gstatic.com/s/texturina/v32/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWR1j0Z7AXkODN94.ttf", - "500italic": "https://fonts.gstatic.com/s/texturina/v32/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWS9j0Z7AXkODN94.ttf", - "600italic": "https://fonts.gstatic.com/s/texturina/v32/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWcNk0Z7AXkODN94.ttf", - "700italic": "https://fonts.gstatic.com/s/texturina/v32/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWfpk0Z7AXkODN94.ttf", - "800italic": "https://fonts.gstatic.com/s/texturina/v32/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWZ1k0Z7AXkODN94.ttf", - "900italic": "https://fonts.gstatic.com/s/texturina/v32/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWbRk0Z7AXkODN94.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/texturina/v32/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eYGsUh0Z4.ttf" - }, - { - "family": "Thasadith", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/thasadith/v13/mtG44_1TIqPYrd_f5R1YsEkU0CWuFw.ttf", - "italic": "https://fonts.gstatic.com/s/thasadith/v13/mtG-4_1TIqPYrd_f5R1oskMQ8iC-F1ZE.ttf", - "700": "https://fonts.gstatic.com/s/thasadith/v13/mtG94_1TIqPYrd_f5R1gDGYw2A6yHk9d8w.ttf", - "700italic": "https://fonts.gstatic.com/s/thasadith/v13/mtGj4_1TIqPYrd_f5R1osnus3QS2PEpN8zxA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/thasadith/v13/mtG44_1TIqPYrd_f5R1osUMQ.ttf" - }, - { - "family": "The Girl Next Door", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/thegirlnextdoor/v25/pe0zMJCIMIsBjFxqYBIcZ6_OI5oFHCYIV7t7w6bE2A.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/thegirlnextdoor/v25/pe0zMJCIMIsBjFxqYBIcZ6_OI5oFHCY4VrF_.ttf" - }, - { - "family": "The Nautigal", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/thenautigal/v8/VdGZAZ8ZH51Lvng9fQV2bfKr5wVk09Se5Q.ttf", - "700": "https://fonts.gstatic.com/s/thenautigal/v8/VdGGAZ8ZH51Lvng9fQV2bfKTWypA2_-C7LoS7g.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/thenautigal/v8/VdGZAZ8ZH51Lvng9fQV2bfKb5g9g.ttf" - }, - { - "family": "Tienne", - "variants": [ - "regular", - "700", - "900" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/tienne/v21/AYCKpX7pe9YCRP0LkEPHSFNyxw.ttf", - "700": "https://fonts.gstatic.com/s/tienne/v21/AYCJpX7pe9YCRP0zLGzjQHhuzvef5Q.ttf", - "900": "https://fonts.gstatic.com/s/tienne/v21/AYCJpX7pe9YCRP0zFG7jQHhuzvef5Q.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tienne/v21/AYCKpX7pe9YCRP07kUnD.ttf" - }, - { - "family": "TikTok Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-11", - "files": { - "300": "https://fonts.gstatic.com/s/tiktoksans/v7/70kbu7g-Lm8OXGnh_Ow1sUfFMmlnhbRF425wxXH-UGeud7XItbaHtxhggMrrmAvSNAHtMV6x5PpBL2J5Rgbj-Bo7VuH1pFroETJ6Rg.ttf", - "regular": "https://fonts.gstatic.com/s/tiktoksans/v7/70kbu7g-Lm8OXGnh_Ow1sUfFMmlnhbRF425wxXH-UGeud7XItbaHtxhggMrrmAvSNAHtMV6x5PpBL2J5Rgbj-Bo7COH1pFroETJ6Rg.ttf", - "500": "https://fonts.gstatic.com/s/tiktoksans/v7/70kbu7g-Lm8OXGnh_Ow1sUfFMmlnhbRF425wxXH-UGeud7XItbaHtxhggMrrmAvSNAHtMV6x5PpBL2J5Rgbj-Bo7OuH1pFroETJ6Rg.ttf", - "600": "https://fonts.gstatic.com/s/tiktoksans/v7/70kbu7g-Lm8OXGnh_Ow1sUfFMmlnhbRF425wxXH-UGeud7XItbaHtxhggMrrmAvSNAHtMV6x5PpBL2J5Rgbj-Bo71ub1pFroETJ6Rg.ttf", - "700": "https://fonts.gstatic.com/s/tiktoksans/v7/70kbu7g-Lm8OXGnh_Ow1sUfFMmlnhbRF425wxXH-UGeud7XItbaHtxhggMrrmAvSNAHtMV6x5PpBL2J5Rgbj-Bo77-b1pFroETJ6Rg.ttf", - "800": "https://fonts.gstatic.com/s/tiktoksans/v7/70kbu7g-Lm8OXGnh_Ow1sUfFMmlnhbRF425wxXH-UGeud7XItbaHtxhggMrrmAvSNAHtMV6x5PpBL2J5Rgbj-Bo7iOb1pFroETJ6Rg.ttf", - "900": "https://fonts.gstatic.com/s/tiktoksans/v7/70kbu7g-Lm8OXGnh_Ow1sUfFMmlnhbRF425wxXH-UGeud7XItbaHtxhggMrrmAvSNAHtMV6x5PpBL2J5Rgbj-Bo7oeb1pFroETJ6Rg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tiktoksans/v7/70kbu7g-Lm8OXGnh_Ow1sUfFMmlnhbRF425wxXH-UGeud7XItbaHtxhggMrrmAvSNAHtMV6x5PpBL2J5Rgbj-Bo7COHFpVDs.ttf" - }, - { - "family": "Tillana", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/tillana/v15/VuJxdNvf35P4qJ1OeKbXOIFneRo.ttf", - "500": "https://fonts.gstatic.com/s/tillana/v15/VuJ0dNvf35P4qJ1OQFL-HIlMZRNcp0o.ttf", - "600": "https://fonts.gstatic.com/s/tillana/v15/VuJ0dNvf35P4qJ1OQH75HIlMZRNcp0o.ttf", - "700": "https://fonts.gstatic.com/s/tillana/v15/VuJ0dNvf35P4qJ1OQBr4HIlMZRNcp0o.ttf", - "800": "https://fonts.gstatic.com/s/tillana/v15/VuJ0dNvf35P4qJ1OQAb7HIlMZRNcp0o.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tillana/v15/VuJxdNvf35P4qJ1OSKfdPA.ttf" - }, - { - "family": "Tilt Neon", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/tiltneon/v12/E21L_d7gguXdwD9LEFY2WCeElCNtd-eBqpHp1TzrkJSmwpj5ndxquXK9WualJ9DS.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tiltneon/v12/E21L_d7gguXdwD9LEFY2WCeElCNtd-eBqpHp1TzrkJSmwpj5ndxquUK8UOI.ttf" - }, - { - "family": "Tilt Prism", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/tiltprism/v16/5h11iZgyPHoZ3YikNzWGfWey2dCAZXT-bH9V4VGn-FJ7tLI25oc_rIbwoTSrn86NKw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tiltprism/v16/5h11iZgyPHoZ3YikNzWGfWey2dCAZXT-bH9V4VGn-FJ7tLI25oc_rIbAoD6v.ttf" - }, - { - "family": "Tilt Warp", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/tiltwarp/v18/AlZc_zVDs5XpmO7yn3w7flUoytXJp3z29uEwmEMLEJljLXvT8UJSZTBxAVfMGOPb.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tiltwarp/v18/AlZc_zVDs5XpmO7yn3w7flUoytXJp3z29uEwmEMLEJljLXvT8UJSZQBwC1M.ttf" - }, - { - "family": "Timmana", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "telugu" - ], - "version": "v14", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/timmana/v14/6xKvdShfL9yK-rvpCmvbKHwJUOM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/timmana/v14/6xKvdShfL9yK-rvpOmrRLA.ttf" - }, - { - "family": "Tinos", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "hebrew", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/tinos/v25/buE4poGnedXvwgX8dGVh8TI-.ttf", - "italic": "https://fonts.gstatic.com/s/tinos/v25/buE2poGnedXvwjX-fmFD9CI-4NU.ttf", - "700": "https://fonts.gstatic.com/s/tinos/v25/buE1poGnedXvwj1AW0Fp2i43-cxL.ttf", - "700italic": "https://fonts.gstatic.com/s/tinos/v25/buEzpoGnedXvwjX-Rt1s0CoV_NxLeiw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tinos/v25/buE4poGnedXvwjX9fmE.ttf" - }, - { - "family": "Tiny5", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/tiny5/v3/KFOpCnmCvdGT7hw-z0hHAi88.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tiny5/v3/KFOpCnmCvdGT7iw_xUw.ttf" - }, - { - "family": "Tiro Bangla", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "bengali", - "latin", - "latin-ext" - ], - "version": "v6", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/tirobangla/v6/IFSgHe1Tm95E3O8b5i2V8MG9-UPeuz4i.ttf", - "italic": "https://fonts.gstatic.com/s/tirobangla/v6/IFSiHe1Tm95E3O8b5i2V8PG_80f8vi4imBM.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tirobangla/v6/IFSgHe1Tm95E3O8b5i2V8PG880c.ttf" - }, - { - "family": "Tiro Devanagari Hindi", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/tirodevanagarihindi/v5/55xyezN7P8T4e0_CfIJrwdodg9HoYw0i-M9fSOkOfG0Y3A.ttf", - "italic": "https://fonts.gstatic.com/s/tirodevanagarihindi/v5/55x8ezN7P8T4e0_CfIJrwdodg9HoYw0i-M9vSuMKXmgI3F_o.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tirodevanagarihindi/v5/55xyezN7P8T4e0_CfIJrwdodg9HoYw0i-M9vSeMK.ttf" - }, - { - "family": "Tiro Devanagari Marathi", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1xPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkotDrDJYM2lAZ.ttf", - "italic": "https://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1zPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkouDpBpIu30AZbUY.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1xPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkouDqBpI.ttf" - }, - { - "family": "Tiro Devanagari Sanskrit", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v5", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoAzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59pEoEqgtOh0w.ttf", - "italic": "https://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoGzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59ZEIsuoNax06MM.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoAzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59ZE4su.ttf" - }, - { - "family": "Tiro Gurmukhi", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "gurmukhi", - "latin", - "latin-ext" - ], - "version": "v6", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/tirogurmukhi/v6/x3dmckXSYq-Uqjc048JUF7Jvly7HAQsyA2Y.ttf", - "italic": "https://fonts.gstatic.com/s/tirogurmukhi/v6/x3d4ckXSYq-Uqjc048JUF7JvpyzNBSk3E2YljQ.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tirogurmukhi/v6/x3dmckXSYq-Uqjc048JUF7Jvpy_NBQ.ttf" - }, - { - "family": "Tiro Kannada", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "kannada", - "latin", - "latin-ext" - ], - "version": "v6", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/tirokannada/v6/CSR44ztKmvqaDxEDJFY7CIYKSPl6tOU9Eg.ttf", - "italic": "https://fonts.gstatic.com/s/tirokannada/v6/CSRm4ztKmvqaDxEDJFY7CIY6SvN-luAtEnKp.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tirokannada/v6/CSR44ztKmvqaDxEDJFY7CIY6SfN-.ttf" - }, - { - "family": "Tiro Tamil", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext", - "tamil" - ], - "version": "v11", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/tirotamil/v11/m8JXjfVIf7OT22n3M-S_ULRvamODxdI.ttf", - "italic": "https://fonts.gstatic.com/s/tirotamil/v11/m8JVjfVIf7OT22n3M-S_YLZlbkGG1dKEDw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tirotamil/v11/m8JXjfVIf7OT22n3M-S_YLVlbg.ttf" - }, - { - "family": "Tiro Telugu", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext", - "telugu" - ], - "version": "v7", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/tirotelugu/v7/aFTQ7PxlZWk2EPiSymjXdKSNQqn0X0BO.ttf", - "italic": "https://fonts.gstatic.com/s/tirotelugu/v7/aFTS7PxlZWk2EPiSymjXdJSPSK3WWlBOoas.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tirotelugu/v7/aFTQ7PxlZWk2EPiSymjXdJSMSK0.ttf" - }, - { - "family": "Tirra", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "tifinagh" - ], - "version": "v2", - "lastModified": "2025-08-26", - "files": { - "regular": "https://fonts.gstatic.com/s/tirra/v2/WBLrrEnNakREGrPF3AHdWn3J.ttf", - "500": "https://fonts.gstatic.com/s/tirra/v2/WBLmrEnNakREGosx9SXVcWHALdio.ttf", - "600": "https://fonts.gstatic.com/s/tirra/v2/WBLmrEnNakREGosd8iXVcWHALdio.ttf", - "700": "https://fonts.gstatic.com/s/tirra/v2/WBLmrEnNakREGot58yXVcWHALdio.ttf", - "800": "https://fonts.gstatic.com/s/tirra/v2/WBLmrEnNakREGotl8CXVcWHALdio.ttf", - "900": "https://fonts.gstatic.com/s/tirra/v2/WBLmrEnNakREGotB8SXVcWHALdio.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tirra/v2/WBLrrEnNakREGoPE1gU.ttf" - }, - { - "family": "Titan One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/titanone/v17/mFTzWbsGxbbS_J5cQcjykzIn2Etikg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/titanone/v17/mFTzWbsGxbbS_J5cQcjCkjgj.ttf" - }, - { - "family": "Titillium Web", - "variants": [ - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "600", - "600italic", - "700", - "700italic", - "900" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPDcZTIAOhVxoMyOr9n_E7ffAzHKIx5YrSYqWM.ttf", - "200italic": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPFcZTIAOhVxoMyOr9n_E7fdMbewI1zZpaduWMmxA.ttf", - "300": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPDcZTIAOhVxoMyOr9n_E7ffGjEKIx5YrSYqWM.ttf", - "300italic": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPFcZTIAOhVxoMyOr9n_E7fdMbepI5zZpaduWMmxA.ttf", - "regular": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPecZTIAOhVxoMyOr9n_E7fRMTsDIRSfr0.ttf", - "italic": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPAcZTIAOhVxoMyOr9n_E7fdMbmCKZXbr2BsA.ttf", - "600": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPDcZTIAOhVxoMyOr9n_E7ffBzCKIx5YrSYqWM.ttf", - "600italic": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPFcZTIAOhVxoMyOr9n_E7fdMbe0IhzZpaduWMmxA.ttf", - "700": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPDcZTIAOhVxoMyOr9n_E7ffHjDKIx5YrSYqWM.ttf", - "700italic": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPFcZTIAOhVxoMyOr9n_E7fdMbetIlzZpaduWMmxA.ttf", - "900": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPDcZTIAOhVxoMyOr9n_E7ffEDBKIx5YrSYqWM.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/titilliumweb/v19/NaPecZTIAOhVxoMyOr9n_E7fdMXmCA.ttf" - }, - { - "family": "Tomorrow", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/tomorrow/v19/WBLgrETNbFtZCeGqgR2xe2XiKMiokE4.ttf", - "100italic": "https://fonts.gstatic.com/s/tomorrow/v19/WBLirETNbFtZCeGqgRXXQwHoLOqtgE5h0A.ttf", - "200": "https://fonts.gstatic.com/s/tomorrow/v19/WBLhrETNbFtZCeGqgR0dWkXIBsShiVd4.ttf", - "200italic": "https://fonts.gstatic.com/s/tomorrow/v19/WBLjrETNbFtZCeGqgRXXQ63JDMCDjEd4yVY.ttf", - "300": "https://fonts.gstatic.com/s/tomorrow/v19/WBLhrETNbFtZCeGqgR15WUXIBsShiVd4.ttf", - "300italic": "https://fonts.gstatic.com/s/tomorrow/v19/WBLjrETNbFtZCeGqgRXXQ8nKDMCDjEd4yVY.ttf", - "regular": "https://fonts.gstatic.com/s/tomorrow/v19/WBLmrETNbFtZCeGqgSXVcWHALdio.ttf", - "italic": "https://fonts.gstatic.com/s/tomorrow/v19/WBLgrETNbFtZCeGqgRXXe2XiKMiokE4.ttf", - "500": "https://fonts.gstatic.com/s/tomorrow/v19/WBLhrETNbFtZCeGqgR0hWEXIBsShiVd4.ttf", - "500italic": "https://fonts.gstatic.com/s/tomorrow/v19/WBLjrETNbFtZCeGqgRXXQ5HLDMCDjEd4yVY.ttf", - "600": "https://fonts.gstatic.com/s/tomorrow/v19/WBLhrETNbFtZCeGqgR0NX0XIBsShiVd4.ttf", - "600italic": "https://fonts.gstatic.com/s/tomorrow/v19/WBLjrETNbFtZCeGqgRXXQ73MDMCDjEd4yVY.ttf", - "700": "https://fonts.gstatic.com/s/tomorrow/v19/WBLhrETNbFtZCeGqgR1pXkXIBsShiVd4.ttf", - "700italic": "https://fonts.gstatic.com/s/tomorrow/v19/WBLjrETNbFtZCeGqgRXXQ9nNDMCDjEd4yVY.ttf", - "800": "https://fonts.gstatic.com/s/tomorrow/v19/WBLhrETNbFtZCeGqgR11XUXIBsShiVd4.ttf", - "800italic": "https://fonts.gstatic.com/s/tomorrow/v19/WBLjrETNbFtZCeGqgRXXQ8XODMCDjEd4yVY.ttf", - "900": "https://fonts.gstatic.com/s/tomorrow/v19/WBLhrETNbFtZCeGqgR1RXEXIBsShiVd4.ttf", - "900italic": "https://fonts.gstatic.com/s/tomorrow/v19/WBLjrETNbFtZCeGqgRXXQ-HPDMCDjEd4yVY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tomorrow/v19/WBLmrETNbFtZCeGqgRXUe2U.ttf" - }, - { - "family": "Tourney", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/tourney/v16/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GOQByZTp1I1LcGA.ttf", - "200": "https://fonts.gstatic.com/s/tourney/v16/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GuQFyZTp1I1LcGA.ttf", - "300": "https://fonts.gstatic.com/s/tourney/v16/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GZwFyZTp1I1LcGA.ttf", - "regular": "https://fonts.gstatic.com/s/tourney/v16/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GOQFyZTp1I1LcGA.ttf", - "500": "https://fonts.gstatic.com/s/tourney/v16/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GCwFyZTp1I1LcGA.ttf", - "600": "https://fonts.gstatic.com/s/tourney/v16/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7G5wZyZTp1I1LcGA.ttf", - "700": "https://fonts.gstatic.com/s/tourney/v16/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7G3gZyZTp1I1LcGA.ttf", - "800": "https://fonts.gstatic.com/s/tourney/v16/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GuQZyZTp1I1LcGA.ttf", - "900": "https://fonts.gstatic.com/s/tourney/v16/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GkAZyZTp1I1LcGA.ttf", - "100italic": "https://fonts.gstatic.com/s/tourney/v16/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKaJzBxAVfMGOPb.ttf", - "200italic": "https://fonts.gstatic.com/s/tourney/v16/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIaJjBxAVfMGOPb.ttf", - "300italic": "https://fonts.gstatic.com/s/tourney/v16/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8ULEJjBxAVfMGOPb.ttf", - "italic": "https://fonts.gstatic.com/s/tourney/v16/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKaJjBxAVfMGOPb.ttf", - "500italic": "https://fonts.gstatic.com/s/tourney/v16/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKoJjBxAVfMGOPb.ttf", - "600italic": "https://fonts.gstatic.com/s/tourney/v16/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UJEITBxAVfMGOPb.ttf", - "700italic": "https://fonts.gstatic.com/s/tourney/v16/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UJ9ITBxAVfMGOPb.ttf", - "800italic": "https://fonts.gstatic.com/s/tourney/v16/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIaITBxAVfMGOPb.ttf", - "900italic": "https://fonts.gstatic.com/s/tourney/v16/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIzITBxAVfMGOPb.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tourney/v16/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GOQFCZDBx.ttf" - }, - { - "family": "Trade Winds", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/tradewinds/v18/AYCPpXPpYNIIT7h8-QenM3Jq7PKP5Z_G.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tradewinds/v18/AYCPpXPpYNIIT7h8-QenM0Jr5vY.ttf" - }, - { - "family": "Train One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/trainone/v16/gyB-hwkiNtc6KnxUVjWHOqbZRY7JVQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/trainone/v16/gyB-hwkiNtc6KnxUVjW3O6zd.ttf" - }, - { - "family": "Triodion", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/triodion/v3/IFSnHe5TgMVEmMQV5mr5u-W10l_X.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/triodion/v3/IFSnHe5TgMVEmMQV5lr4seE.ttf" - }, - { - "family": "Trirong", - "variants": [ - "100", - "100italic", - "200", - "200italic", - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic", - "900", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "thai", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/trirong/v17/7r3EqXNgp8wxdOdOl-go3YRl6ujngw.ttf", - "100italic": "https://fonts.gstatic.com/s/trirong/v17/7r3CqXNgp8wxdOdOn44QuY5hyO33g8IY.ttf", - "200": "https://fonts.gstatic.com/s/trirong/v17/7r3DqXNgp8wxdOdOl0QJ_a5L5uH-mts.ttf", - "200italic": "https://fonts.gstatic.com/s/trirong/v17/7r3BqXNgp8wxdOdOn44QFa9B4sP7itsB5g.ttf", - "300": "https://fonts.gstatic.com/s/trirong/v17/7r3DqXNgp8wxdOdOlyAK_a5L5uH-mts.ttf", - "300italic": "https://fonts.gstatic.com/s/trirong/v17/7r3BqXNgp8wxdOdOn44QcaxB4sP7itsB5g.ttf", - "regular": "https://fonts.gstatic.com/s/trirong/v17/7r3GqXNgp8wxdOdOr4wi2aZg-ug.ttf", - "italic": "https://fonts.gstatic.com/s/trirong/v17/7r3EqXNgp8wxdOdOn44o3YRl6ujngw.ttf", - "500": "https://fonts.gstatic.com/s/trirong/v17/7r3DqXNgp8wxdOdOl3gL_a5L5uH-mts.ttf", - "500italic": "https://fonts.gstatic.com/s/trirong/v17/7r3BqXNgp8wxdOdOn44QKa1B4sP7itsB5g.ttf", - "600": "https://fonts.gstatic.com/s/trirong/v17/7r3DqXNgp8wxdOdOl1QM_a5L5uH-mts.ttf", - "600italic": "https://fonts.gstatic.com/s/trirong/v17/7r3BqXNgp8wxdOdOn44QBapB4sP7itsB5g.ttf", - "700": "https://fonts.gstatic.com/s/trirong/v17/7r3DqXNgp8wxdOdOlzAN_a5L5uH-mts.ttf", - "700italic": "https://fonts.gstatic.com/s/trirong/v17/7r3BqXNgp8wxdOdOn44QYatB4sP7itsB5g.ttf", - "800": "https://fonts.gstatic.com/s/trirong/v17/7r3DqXNgp8wxdOdOlywO_a5L5uH-mts.ttf", - "800italic": "https://fonts.gstatic.com/s/trirong/v17/7r3BqXNgp8wxdOdOn44QfahB4sP7itsB5g.ttf", - "900": "https://fonts.gstatic.com/s/trirong/v17/7r3DqXNgp8wxdOdOlwgP_a5L5uH-mts.ttf", - "900italic": "https://fonts.gstatic.com/s/trirong/v17/7r3BqXNgp8wxdOdOn44QWalB4sP7itsB5g.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/trirong/v17/7r3GqXNgp8wxdOdOn40o3Q.ttf" - }, - { - "family": "Trispace", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-08", - "files": { - "100": "https://fonts.gstatic.com/s/trispace/v27/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbH9qoQl0zHugpt0.ttf", - "200": "https://fonts.gstatic.com/s/trispace/v27/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbP9roQl0zHugpt0.ttf", - "300": "https://fonts.gstatic.com/s/trispace/v27/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbCFroQl0zHugpt0.ttf", - "regular": "https://fonts.gstatic.com/s/trispace/v27/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbH9roQl0zHugpt0.ttf", - "500": "https://fonts.gstatic.com/s/trispace/v27/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbE1roQl0zHugpt0.ttf", - "600": "https://fonts.gstatic.com/s/trispace/v27/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbKFsoQl0zHugpt0.ttf", - "700": "https://fonts.gstatic.com/s/trispace/v27/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbJhsoQl0zHugpt0.ttf", - "800": "https://fonts.gstatic.com/s/trispace/v27/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbP9soQl0zHugpt0.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/trispace/v27/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbH9rkQh-yA.ttf" - }, - { - "family": "Trocchi", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/trocchi/v19/qWcqB6WkuIDxDZLcDrtUvMeTYD0.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/trocchi/v19/qWcqB6WkuIDxDZLcPrpeuA.ttf" - }, - { - "family": "Trochut", - "variants": [ - "regular", - "italic", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/trochut/v24/CHyjV-fDDlP9bDIw5nSIfVIPLns.ttf", - "italic": "https://fonts.gstatic.com/s/trochut/v24/CHyhV-fDDlP9bDIw1naCeXAKPns8jw.ttf", - "700": "https://fonts.gstatic.com/s/trochut/v24/CHymV-fDDlP9bDIw3sinWVokMnIllmA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/trochut/v24/CHyjV-fDDlP9bDIw1nWCeQ.ttf" - }, - { - "family": "Truculenta", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v27", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/truculenta/v27/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMlAjswcFHnJMMhg.ttf", - "200": "https://fonts.gstatic.com/s/truculenta/v27/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMtAiswcFHnJMMhg.ttf", - "300": "https://fonts.gstatic.com/s/truculenta/v27/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMg4iswcFHnJMMhg.ttf", - "regular": "https://fonts.gstatic.com/s/truculenta/v27/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMlAiswcFHnJMMhg.ttf", - "500": "https://fonts.gstatic.com/s/truculenta/v27/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMmIiswcFHnJMMhg.ttf", - "600": "https://fonts.gstatic.com/s/truculenta/v27/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMo4lswcFHnJMMhg.ttf", - "700": "https://fonts.gstatic.com/s/truculenta/v27/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMrclswcFHnJMMhg.ttf", - "800": "https://fonts.gstatic.com/s/truculenta/v27/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMtAlswcFHnJMMhg.ttf", - "900": "https://fonts.gstatic.com/s/truculenta/v27/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMvklswcFHnJMMhg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/truculenta/v27/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMlAigwYPGg.ttf" - }, - { - "family": "Trykker", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/trykker/v22/KtktALyWZJXudUPzhNnoOd2j22U.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/trykker/v22/KtktALyWZJXudUPztNjiPQ.ttf" - }, - { - "family": "Tsukimi Rounded", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/tsukimirounded/v14/sJoZ3LJNksWZO0LvnZwkF3HtoB7VkVsqN7MT3T9X8g.ttf", - "regular": "https://fonts.gstatic.com/s/tsukimirounded/v14/sJoc3LJNksWZO0LvnZwkF3HtoB7tPXMOP5gP1A.ttf", - "500": "https://fonts.gstatic.com/s/tsukimirounded/v14/sJoZ3LJNksWZO0LvnZwkF3HtoB7VyVoqN7MT3T9X8g.ttf", - "600": "https://fonts.gstatic.com/s/tsukimirounded/v14/sJoZ3LJNksWZO0LvnZwkF3HtoB7V5V0qN7MT3T9X8g.ttf", - "700": "https://fonts.gstatic.com/s/tsukimirounded/v14/sJoZ3LJNksWZO0LvnZwkF3HtoB7VgVwqN7MT3T9X8g.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tsukimirounded/v14/sJoc3LJNksWZO0LvnZwkF3HtoB7dPHkK.ttf" - }, - { - "family": "Tuffy", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext", - "phoenician" - ], - "version": "v1", - "lastModified": "2025-04-23", - "files": { - "regular": "https://fonts.gstatic.com/s/tuffy/v1/1q2IY56bHkJl7rxzF4xmyfYe.ttf", - "italic": "https://fonts.gstatic.com/s/tuffy/v1/1q2GY56bHkJl7oxxHYhEzOYenEU.ttf", - "700": "https://fonts.gstatic.com/s/tuffy/v1/1q2FY56bHkJl7oTPOKhu4uoXhVzg.ttf", - "700italic": "https://fonts.gstatic.com/s/tuffy/v1/1q2DY56bHkJl7oxxJTRr6O41gEzgZoQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tuffy/v1/1q2IY56bHkJl7oxyHYg.ttf" - }, - { - "family": "Tulpen One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v26", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/tulpenone/v26/dFa6ZfeC474skLgesc0CWj0w_HyIRlE.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/tulpenone/v26/dFa6ZfeC474skLgesc0Cajw6-A.ttf" - }, - { - "family": "Turret Road", - "variants": [ - "200", - "300", - "regular", - "500", - "700", - "800" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/turretroad/v11/pxidypMgpcBFjE84Zv-fE0ONEdeLYk1Mq3ap.ttf", - "300": "https://fonts.gstatic.com/s/turretroad/v11/pxidypMgpcBFjE84Zv-fE0PpEteLYk1Mq3ap.ttf", - "regular": "https://fonts.gstatic.com/s/turretroad/v11/pxiAypMgpcBFjE84Zv-fE3tFOvODSVFF.ttf", - "500": "https://fonts.gstatic.com/s/turretroad/v11/pxidypMgpcBFjE84Zv-fE0OxE9eLYk1Mq3ap.ttf", - "700": "https://fonts.gstatic.com/s/turretroad/v11/pxidypMgpcBFjE84Zv-fE0P5FdeLYk1Mq3ap.ttf", - "800": "https://fonts.gstatic.com/s/turretroad/v11/pxidypMgpcBFjE84Zv-fE0PlFteLYk1Mq3ap.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/turretroad/v11/pxiAypMgpcBFjE84Zv-fE0tEMPc.ttf" - }, - { - "family": "Twinkle Star", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/twinklestar/v8/pe0pMI6IL4dPoFl9LGEmY6WaA_Rue1UwVg.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/twinklestar/v8/pe0pMI6IL4dPoFl9LGEmY6WqAv5q.ttf" - }, - { - "family": "Ubuntu", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-02", - "files": { - "300": "https://fonts.gstatic.com/s/ubuntu/v21/4iCv6KVjbNBYlgoC1CzTt2aMH4V_gg.ttf", - "300italic": "https://fonts.gstatic.com/s/ubuntu/v21/4iCp6KVjbNBYlgoKejZftWyIPYBvgpUI.ttf", - "regular": "https://fonts.gstatic.com/s/ubuntu/v21/4iCs6KVjbNBYlgo6eAT3v02QFg.ttf", - "italic": "https://fonts.gstatic.com/s/ubuntu/v21/4iCu6KVjbNBYlgoKeg7znUiAFpxm.ttf", - "500": "https://fonts.gstatic.com/s/ubuntu/v21/4iCv6KVjbNBYlgoCjC3Tt2aMH4V_gg.ttf", - "500italic": "https://fonts.gstatic.com/s/ubuntu/v21/4iCp6KVjbNBYlgoKejYHtGyIPYBvgpUI.ttf", - "700": "https://fonts.gstatic.com/s/ubuntu/v21/4iCv6KVjbNBYlgoCxCvTt2aMH4V_gg.ttf", - "700italic": "https://fonts.gstatic.com/s/ubuntu/v21/4iCp6KVjbNBYlgoKejZPsmyIPYBvgpUI.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ubuntu/v21/4iCs6KVjbNBYlgoKeQ7z.ttf" - }, - { - "family": "Ubuntu Condensed", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/ubuntucondensed/v17/u-4k0rCzjgs5J7oXnJcM_0kACGMtf-fVqvHoJXw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ubuntucondensed/v17/u-4k0rCzjgs5J7oXnJcM_0kACGMtT-bfrg.ttf" - }, - { - "family": "Ubuntu Mono", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/ubuntumono/v19/KFOjCneDtsqEr0keqCMhbBc9AMX6lJBP.ttf", - "italic": "https://fonts.gstatic.com/s/ubuntumono/v19/KFOhCneDtsqEr0keqCMhbCc_CsHYkYBPY3o.ttf", - "700": "https://fonts.gstatic.com/s/ubuntumono/v19/KFO-CneDtsqEr0keqCMhbC-BL-Hyv4xGemO1.ttf", - "700italic": "https://fonts.gstatic.com/s/ubuntumono/v19/KFO8CneDtsqEr0keqCMhbCc_Mn33tYhkf3O1GVg.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ubuntumono/v19/KFOjCneDtsqEr0keqCMhbCc8CsE.ttf" - }, - { - "family": "Ubuntu Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-02", - "files": { - "100": "https://fonts.gstatic.com/s/ubuntusans/v4/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbujzt7CfqLVLT9mgk.ttf", - "200": "https://fonts.gstatic.com/s/ubuntusans/v4/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbuj7t6CfqLVLT9mgk.ttf", - "300": "https://fonts.gstatic.com/s/ubuntusans/v4/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbuj2V6CfqLVLT9mgk.ttf", - "regular": "https://fonts.gstatic.com/s/ubuntusans/v4/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbujzt6CfqLVLT9mgk.ttf", - "500": "https://fonts.gstatic.com/s/ubuntusans/v4/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbujwl6CfqLVLT9mgk.ttf", - "600": "https://fonts.gstatic.com/s/ubuntusans/v4/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbuj-V9CfqLVLT9mgk.ttf", - "700": "https://fonts.gstatic.com/s/ubuntusans/v4/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbuj9x9CfqLVLT9mgk.ttf", - "800": "https://fonts.gstatic.com/s/ubuntusans/v4/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbuj7t9CfqLVLT9mgk.ttf", - "100italic": "https://fonts.gstatic.com/s/ubuntusans/v4/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM54biBUJb4iglIHg.ttf", - "200italic": "https://fonts.gstatic.com/s/ubuntusans/v4/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM5YbmBUJb4iglIHg.ttf", - "300italic": "https://fonts.gstatic.com/s/ubuntusans/v4/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM5v7mBUJb4iglIHg.ttf", - "italic": "https://fonts.gstatic.com/s/ubuntusans/v4/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM54bmBUJb4iglIHg.ttf", - "500italic": "https://fonts.gstatic.com/s/ubuntusans/v4/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM507mBUJb4iglIHg.ttf", - "600italic": "https://fonts.gstatic.com/s/ubuntusans/v4/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM5P76BUJb4iglIHg.ttf", - "700italic": "https://fonts.gstatic.com/s/ubuntusans/v4/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM5Br6BUJb4iglIHg.ttf", - "800italic": "https://fonts.gstatic.com/s/ubuntusans/v4/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM5Yb6BUJb4iglIHg.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ubuntusans/v4/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbujzt6OfuBUA.ttf" - }, - { - "family": "Ubuntu Sans Mono", - "variants": [ - "regular", - "500", - "600", - "700", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "greek-ext", - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/ubuntusansmono/v3/jVyc7mzgBHrR5yE7ZyRg0QRJMKI4zAbgjc1t-pKe27Ev_kYRiqcZu3n0.ttf", - "500": "https://fonts.gstatic.com/s/ubuntusansmono/v3/jVyc7mzgBHrR5yE7ZyRg0QRJMKI4zAbgjc1t-pKe27Ed_kYRiqcZu3n0.ttf", - "600": "https://fonts.gstatic.com/s/ubuntusansmono/v3/jVyc7mzgBHrR5yE7ZyRg0QRJMKI4zAbgjc1t-pKe27Hx-UYRiqcZu3n0.ttf", - "700": "https://fonts.gstatic.com/s/ubuntusansmono/v3/jVyc7mzgBHrR5yE7ZyRg0QRJMKI4zAbgjc1t-pKe27HI-UYRiqcZu3n0.ttf", - "italic": "https://fonts.gstatic.com/s/ubuntusansmono/v3/jVyi7mzgBHrR5yE7ZyRg0QRJMKI45g_SchUEkQgw3KTnva5SgKM7vmn0BLE.ttf", - "500italic": "https://fonts.gstatic.com/s/ubuntusansmono/v3/jVyi7mzgBHrR5yE7ZyRg0QRJMKI45g_SchUEkQgw3KTnvZxSgKM7vmn0BLE.ttf", - "600italic": "https://fonts.gstatic.com/s/ubuntusansmono/v3/jVyi7mzgBHrR5yE7ZyRg0QRJMKI45g_SchUEkQgw3KTnvXBVgKM7vmn0BLE.ttf", - "700italic": "https://fonts.gstatic.com/s/ubuntusansmono/v3/jVyi7mzgBHrR5yE7ZyRg0QRJMKI45g_SchUEkQgw3KTnvUlVgKM7vmn0BLE.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ubuntusansmono/v3/jVyc7mzgBHrR5yE7ZyRg0QRJMKI4zAbgjc1t-pKe27Ev_nYQgKM.ttf" - }, - { - "family": "Uchen", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "tibetan" - ], - "version": "v11", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/uchen/v11/nKKZ-GokGZ1baIaSEQGodLxA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/uchen/v11/nKKZ-GokGZ1baLaTGwU.ttf" - }, - { - "family": "Ultra", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/ultra/v25/zOLy4prXmrtY-tT6yLOD6NxF.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ultra/v25/zOLy4prXmrtY-uT7wrc.ttf" - }, - { - "family": "Unbounded", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-11", - "files": { - "200": "https://fonts.gstatic.com/s/unbounded/v12/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG65jx043HgP6LR0Y.ttf", - "300": "https://fonts.gstatic.com/s/unbounded/v12/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG60bx043HgP6LR0Y.ttf", - "regular": "https://fonts.gstatic.com/s/unbounded/v12/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6xjx043HgP6LR0Y.ttf", - "500": "https://fonts.gstatic.com/s/unbounded/v12/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6yrx043HgP6LR0Y.ttf", - "600": "https://fonts.gstatic.com/s/unbounded/v12/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG68b2043HgP6LR0Y.ttf", - "700": "https://fonts.gstatic.com/s/unbounded/v12/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6__2043HgP6LR0Y.ttf", - "800": "https://fonts.gstatic.com/s/unbounded/v12/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG65j2043HgP6LR0Y.ttf", - "900": "https://fonts.gstatic.com/s/unbounded/v12/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG67H2043HgP6LR0Y.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/unbounded/v12/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6xjx44zNhA.ttf" - }, - { - "family": "Uncial Antiqua", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/uncialantiqua/v22/N0bM2S5WOex4OUbESzoESK-i-PfRS5VBBSSF.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/uncialantiqua/v22/N0bM2S5WOex4OUbESzoESK-i-MfQQZE.ttf" - }, - { - "family": "Underdog", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/underdog/v24/CHygV-jCElj7diMroVSiU14GN2Il.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/underdog/v24/CHygV-jCElj7diMroWSjWVo.ttf" - }, - { - "family": "Unica One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/unicaone/v20/DPEuYwWHyAYGVTSmalshdtffuEY7FA.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/unicaone/v20/DPEuYwWHyAYGVTSmalsRd93b.ttf" - }, - { - "family": "UnifrakturCook", - "variants": [ - "700" - ], - "subsets": [ - "latin" - ], - "version": "v25", - "lastModified": "2025-09-05", - "files": { - "700": "https://fonts.gstatic.com/s/unifrakturcook/v25/IurA6Yli8YOdcoky-0PTTdkm56n05Uw13ILXs-h6.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/unifrakturcook/v25/IurA6Yli8YOdcoky-0PTTdkm56n05Xw01oY.ttf" - }, - { - "family": "UnifrakturMaguntia", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/unifrakturmaguntia/v22/WWXPlieVYwiGNomYU-ciRLRvEmK7oaVun2xNNgNa1A.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/unifrakturmaguntia/v22/WWXPlieVYwiGNomYU-ciRLRvEmK7oaVenmZJ.ttf" - }, - { - "family": "Unkempt", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin" - ], - "version": "v22", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/unkempt/v22/2EbnL-Z2DFZue0DSSYYf8z2Yt_c.ttf", - "700": "https://fonts.gstatic.com/s/unkempt/v22/2EbiL-Z2DFZue0DScTow1zWzq_5uT84.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/unkempt/v22/2EbnL-Z2DFZue0DSeYcV9w.ttf" - }, - { - "family": "Unlock", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v28", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/unlock/v28/7Au-p_8ykD-cDl7GKAjSwkUVOQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/unlock/v28/7Au-p_8ykD-cDl72KQLW.ttf" - }, - { - "family": "Unna", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/unna/v25/AYCEpXzofN0NCpgBlGHCWFM.ttf", - "italic": "https://fonts.gstatic.com/s/unna/v25/AYCKpXzofN0NOpoLkEPHSFNyxw.ttf", - "700": "https://fonts.gstatic.com/s/unna/v25/AYCLpXzofN0NMiQusGnpRFpr3vc.ttf", - "700italic": "https://fonts.gstatic.com/s/unna/v25/AYCJpXzofN0NOpozLGzjQHhuzvef5Q.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/unna/v25/AYCEpXzofN0NOpkLkA.ttf" - }, - { - "family": "UoqMunThenKhung", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "latin", - "symbols2" - ], - "version": "v1", - "lastModified": "2025-06-25", - "files": { - "regular": "https://fonts.gstatic.com/s/uoqmunthenkhung/v1/Y4GTYa1nVTQLt-D5LoLChg5aJjIjwLL9Th8YYA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/uoqmunthenkhung/v1/Y4GTYa1nVTQLt-D5LoLChg5aJjITwbj5.ttf" - }, - { - "family": "Updock", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/updock/v7/nuF4D_3dVZ70UI9SjLK3602XBw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/updock/v7/nuF4D_3dVZ70UI9ijbiz.ttf" - }, - { - "family": "Urbanist", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/urbanist/v18/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDyx8fFpOrS8SlKw.ttf", - "200": "https://fonts.gstatic.com/s/urbanist/v18/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDSx4fFpOrS8SlKw.ttf", - "300": "https://fonts.gstatic.com/s/urbanist/v18/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDlR4fFpOrS8SlKw.ttf", - "regular": "https://fonts.gstatic.com/s/urbanist/v18/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDyx4fFpOrS8SlKw.ttf", - "500": "https://fonts.gstatic.com/s/urbanist/v18/L0xjDF02iFML4hGCyOCpRdycFsGxSrqD-R4fFpOrS8SlKw.ttf", - "600": "https://fonts.gstatic.com/s/urbanist/v18/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDFRkfFpOrS8SlKw.ttf", - "700": "https://fonts.gstatic.com/s/urbanist/v18/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDLBkfFpOrS8SlKw.ttf", - "800": "https://fonts.gstatic.com/s/urbanist/v18/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDSxkfFpOrS8SlKw.ttf", - "900": "https://fonts.gstatic.com/s/urbanist/v18/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDYhkfFpOrS8SlKw.ttf", - "100italic": "https://fonts.gstatic.com/s/urbanist/v18/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA133VJmvacG1K4S1.ttf", - "200italic": "https://fonts.gstatic.com/s/urbanist/v18/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA113VZmvacG1K4S1.ttf", - "300italic": "https://fonts.gstatic.com/s/urbanist/v18/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA12pVZmvacG1K4S1.ttf", - "italic": "https://fonts.gstatic.com/s/urbanist/v18/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA133VZmvacG1K4S1.ttf", - "500italic": "https://fonts.gstatic.com/s/urbanist/v18/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA13FVZmvacG1K4S1.ttf", - "600italic": "https://fonts.gstatic.com/s/urbanist/v18/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA10pUpmvacG1K4S1.ttf", - "700italic": "https://fonts.gstatic.com/s/urbanist/v18/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA10QUpmvacG1K4S1.ttf", - "800italic": "https://fonts.gstatic.com/s/urbanist/v18/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA113UpmvacG1K4S1.ttf", - "900italic": "https://fonts.gstatic.com/s/urbanist/v18/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA11eUpmvacG1K4S1.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/urbanist/v18/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDyx4vF5mv.ttf" - }, - { - "family": "VT323", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/vt323/v18/pxiKyp0ihIEF2hsYHpT2dkNE.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vt323/v18/pxiKyp0ihIEF2isZFJA.ttf" - }, - { - "family": "Vampiro One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/vampiroone/v19/gokqH6DoDl5yXvJytFsdLkqnsvhIor3K.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vampiroone/v19/gokqH6DoDl5yXvJytFsdLnqmuPw.ttf" - }, - { - "family": "Varela", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/varela/v17/DPEtYwqExx0AWHXJBBQFfvzDsQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/varela/v17/DPEtYwqExx0AWHX5BR4B.ttf" - }, - { - "family": "Varela Round", - "variants": [ - "regular" - ], - "subsets": [ - "hebrew", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/varelaround/v21/w8gdH283Tvk__Lua32TysjIvoMGOD9gxZw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/varelaround/v21/w8gdH283Tvk__Lua32TysjIfocuK.ttf" - }, - { - "family": "Varta", - "variants": [ - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-10", - "files": { - "300": "https://fonts.gstatic.com/s/varta/v25/Qw3AZQpJHj_6LzHUngWbrFkDH1x96j4EirE-9PGLfQ.ttf", - "regular": "https://fonts.gstatic.com/s/varta/v25/Qw3AZQpJHj_6LzHUngWbrFkDH1x9tD4EirE-9PGLfQ.ttf", - "500": "https://fonts.gstatic.com/s/varta/v25/Qw3AZQpJHj_6LzHUngWbrFkDH1x9hj4EirE-9PGLfQ.ttf", - "600": "https://fonts.gstatic.com/s/varta/v25/Qw3AZQpJHj_6LzHUngWbrFkDH1x9ajkEirE-9PGLfQ.ttf", - "700": "https://fonts.gstatic.com/s/varta/v25/Qw3AZQpJHj_6LzHUngWbrFkDH1x9UzkEirE-9PGLfQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/varta/v25/Qw3AZQpJHj_6LzHUngWbrFkDH1x9tD40i7s6.ttf" - }, - { - "family": "Vast Shadow", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/vastshadow/v21/pe0qMImKOZ1V62ZwbVY9dfe6Kdpickwp.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vastshadow/v21/pe0qMImKOZ1V62ZwbVY9dce7I94.ttf" - }, - { - "family": "Vazirmatn", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/vazirmatn/v16/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklWgyOReZ72DF_QY.ttf", - "200": "https://fonts.gstatic.com/s/vazirmatn/v16/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklegzOReZ72DF_QY.ttf", - "300": "https://fonts.gstatic.com/s/vazirmatn/v16/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklTYzOReZ72DF_QY.ttf", - "regular": "https://fonts.gstatic.com/s/vazirmatn/v16/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklWgzOReZ72DF_QY.ttf", - "500": "https://fonts.gstatic.com/s/vazirmatn/v16/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklVozOReZ72DF_QY.ttf", - "600": "https://fonts.gstatic.com/s/vazirmatn/v16/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklbY0OReZ72DF_QY.ttf", - "700": "https://fonts.gstatic.com/s/vazirmatn/v16/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklY80OReZ72DF_QY.ttf", - "800": "https://fonts.gstatic.com/s/vazirmatn/v16/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRkleg0OReZ72DF_QY.ttf", - "900": "https://fonts.gstatic.com/s/vazirmatn/v16/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklcE0OReZ72DF_QY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vazirmatn/v16/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklWgzCRaT6w.ttf" - }, - { - "family": "Vend Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v1", - "lastModified": "2025-08-26", - "files": { - "300": "https://fonts.gstatic.com/s/vendsans/v1/E212_d7ijufNwCJPEUs2WCek2ncUdeeBqgeqzzfJQAJuEJw.ttf", - "regular": "https://fonts.gstatic.com/s/vendsans/v1/E212_d7ijufNwCJPEUs2WCek2ncUdeeBqlmqzzfJQAJuEJw.ttf", - "500": "https://fonts.gstatic.com/s/vendsans/v1/E212_d7ijufNwCJPEUs2WCek2ncUdeeBqmuqzzfJQAJuEJw.ttf", - "600": "https://fonts.gstatic.com/s/vendsans/v1/E212_d7ijufNwCJPEUs2WCek2ncUdeeBqoetzzfJQAJuEJw.ttf", - "700": "https://fonts.gstatic.com/s/vendsans/v1/E212_d7ijufNwCJPEUs2WCek2ncUdeeBqr6tzzfJQAJuEJw.ttf", - "300italic": "https://fonts.gstatic.com/s/vendsans/v1/E210_d7ijufNwCJPEUscURVbAh5_70mGv5HpeXTDRCBrAJz0nA.ttf", - "italic": "https://fonts.gstatic.com/s/vendsans/v1/E210_d7ijufNwCJPEUscURVbAh5_70mGv5HpJ3TDRCBrAJz0nA.ttf", - "500italic": "https://fonts.gstatic.com/s/vendsans/v1/E210_d7ijufNwCJPEUscURVbAh5_70mGv5HpFXTDRCBrAJz0nA.ttf", - "600italic": "https://fonts.gstatic.com/s/vendsans/v1/E210_d7ijufNwCJPEUscURVbAh5_70mGv5Hp-XPDRCBrAJz0nA.ttf", - "700italic": "https://fonts.gstatic.com/s/vendsans/v1/E210_d7ijufNwCJPEUscURVbAh5_70mGv5HpwHPDRCBrAJz0nA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vendsans/v1/E212_d7ijufNwCJPEUs2WCek2ncUdeeBqlmq_zbDRA.ttf" - }, - { - "family": "Vesper Libre", - "variants": [ - "regular", - "500", - "700", - "900" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/vesperlibre/v21/bx6CNxyWnf-uxPdXDHUD_Rd4D0-N2qIWVQ.ttf", - "500": "https://fonts.gstatic.com/s/vesperlibre/v21/bx6dNxyWnf-uxPdXDHUD_RdA-2ap0okKXKvPlw.ttf", - "700": "https://fonts.gstatic.com/s/vesperlibre/v21/bx6dNxyWnf-uxPdXDHUD_RdAs2Cp0okKXKvPlw.ttf", - "900": "https://fonts.gstatic.com/s/vesperlibre/v21/bx6dNxyWnf-uxPdXDHUD_RdAi2Kp0okKXKvPlw.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vesperlibre/v21/bx6CNxyWnf-uxPdXDHUD_RdIDkWJ.ttf" - }, - { - "family": "Viaoda Libre", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v20", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/viaodalibre/v20/vEFW2_lWCgoR6OKuRz9kcRVJb2IY2tOHXg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/viaodalibre/v20/vEFW2_lWCgoR6OKuRz9kcRV5bmgc.ttf" - }, - { - "family": "Vibes", - "variants": [ - "regular" - ], - "subsets": [ - "arabic", - "latin" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/vibes/v16/QdVYSTsmIB6tmbd3HpbsuBlh.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vibes/v16/QdVYSTsmIB6tmYd2FJI.ttf" - }, - { - "family": "Vibur", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/vibur/v24/DPEiYwmEzw0QRjTpLjoJd-Xa.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vibur/v24/DPEiYwmEzw0QRgToJD4.ttf" - }, - { - "family": "Victor Mono", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-05", - "files": { - "100": "https://fonts.gstatic.com/s/victormono/v5/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyO8_NhNyOV0Y9bQ.ttf", - "200": "https://fonts.gstatic.com/s/victormono/v5/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyu87NhNyOV0Y9bQ.ttf", - "300": "https://fonts.gstatic.com/s/victormono/v5/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyZc7NhNyOV0Y9bQ.ttf", - "regular": "https://fonts.gstatic.com/s/victormono/v5/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyO87NhNyOV0Y9bQ.ttf", - "500": "https://fonts.gstatic.com/s/victormono/v5/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyCc7NhNyOV0Y9bQ.ttf", - "600": "https://fonts.gstatic.com/s/victormono/v5/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCy5cnNhNyOV0Y9bQ.ttf", - "700": "https://fonts.gstatic.com/s/victormono/v5/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCy3MnNhNyOV0Y9bQ.ttf", - "100italic": "https://fonts.gstatic.com/s/victormono/v5/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen840lxtaKdUMtba8p.ttf", - "200italic": "https://fonts.gstatic.com/s/victormono/v5/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen842lx9aKdUMtba8p.ttf", - "300italic": "https://fonts.gstatic.com/s/victormono/v5/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen8417x9aKdUMtba8p.ttf", - "italic": "https://fonts.gstatic.com/s/victormono/v5/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen840lx9aKdUMtba8p.ttf", - "500italic": "https://fonts.gstatic.com/s/victormono/v5/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen840Xx9aKdUMtba8p.ttf", - "600italic": "https://fonts.gstatic.com/s/victormono/v5/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen8437wNaKdUMtba8p.ttf", - "700italic": "https://fonts.gstatic.com/s/victormono/v5/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen843CwNaKdUMtba8p.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/victormono/v5/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyO879hdaK.ttf" - }, - { - "family": "Vidaloka", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/vidaloka/v19/7cHrv4c3ipenMKlEass8yn4hnCci.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vidaloka/v19/7cHrv4c3ipenMKlEavs9wHo.ttf" - }, - { - "family": "Viga", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/viga/v15/xMQbuFFdSaiX_QIjD4e2OX8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/viga/v15/xMQbuFFdSaiXzQMpCw.ttf" - }, - { - "family": "Vina Sans", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/vinasans/v8/m8JQjfZKf6-d2273MP7zcJ5BZmqa3A.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vinasans/v8/m8JQjfZKf6-d2273MP7DcZRF.ttf" - }, - { - "family": "Voces", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/voces/v24/-F6_fjJyLyU8d4PBBG7YpzlJ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/voces/v24/-F6_fjJyLyU8d7PADmo.ttf" - }, - { - "family": "Volkhov", - "variants": [ - "regular", - "italic", - "700", - "700italic" - ], - "subsets": [ - "latin" - ], - "version": "v18", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/volkhov/v18/SlGQmQieoJcKemNeQTIOhHxzcD0.ttf", - "italic": "https://fonts.gstatic.com/s/volkhov/v18/SlGSmQieoJcKemNecTAEgF52YD0NYw.ttf", - "700": "https://fonts.gstatic.com/s/volkhov/v18/SlGVmQieoJcKemNeeY4hoHRYbDQUego.ttf", - "700italic": "https://fonts.gstatic.com/s/volkhov/v18/SlGXmQieoJcKemNecTA8PHFSaBYRagrQrA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/volkhov/v18/SlGQmQieoJcKemNecTMEgA.ttf" - }, - { - "family": "Vollkorn", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v30", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/vollkorn/v30/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2MHGuGWOdEbD63w.ttf", - "500": "https://fonts.gstatic.com/s/vollkorn/v30/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2AnGuGWOdEbD63w.ttf", - "600": "https://fonts.gstatic.com/s/vollkorn/v30/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df27nauGWOdEbD63w.ttf", - "700": "https://fonts.gstatic.com/s/vollkorn/v30/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df213auGWOdEbD63w.ttf", - "800": "https://fonts.gstatic.com/s/vollkorn/v30/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2sHauGWOdEbD63w.ttf", - "900": "https://fonts.gstatic.com/s/vollkorn/v30/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2mXauGWOdEbD63w.ttf", - "italic": "https://fonts.gstatic.com/s/vollkorn/v30/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DJGWmmZM7Xq34g9.ttf", - "500italic": "https://fonts.gstatic.com/s/vollkorn/v30/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DJ0WmmZM7Xq34g9.ttf", - "600italic": "https://fonts.gstatic.com/s/vollkorn/v30/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DKYXWmZM7Xq34g9.ttf", - "700italic": "https://fonts.gstatic.com/s/vollkorn/v30/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DKhXWmZM7Xq34g9.ttf", - "800italic": "https://fonts.gstatic.com/s/vollkorn/v30/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DLGXWmZM7Xq34g9.ttf", - "900italic": "https://fonts.gstatic.com/s/vollkorn/v30/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DLvXWmZM7Xq34g9.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vollkorn/v30/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2MHGeGGmZ.ttf" - }, - { - "family": "Vollkorn SC", - "variants": [ - "regular", - "600", - "700", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/vollkornsc/v12/j8_v6-zQ3rXpceZj9cqnVhF5NH-iSq_E.ttf", - "600": "https://fonts.gstatic.com/s/vollkornsc/v12/j8_y6-zQ3rXpceZj9cqnVimhGluqYbPN5Yjn.ttf", - "700": "https://fonts.gstatic.com/s/vollkornsc/v12/j8_y6-zQ3rXpceZj9cqnVinFG1uqYbPN5Yjn.ttf", - "900": "https://fonts.gstatic.com/s/vollkornsc/v12/j8_y6-zQ3rXpceZj9cqnVin9GVuqYbPN5Yjn.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vollkornsc/v12/j8_v6-zQ3rXpceZj9cqnViF4Pns.ttf" - }, - { - "family": "Voltaire", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v23", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/voltaire/v23/1Pttg8PcRfSblAvGvQooYKVnBOif.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/voltaire/v23/1Pttg8PcRfSblAvGvTopaqE.ttf" - }, - { - "family": "Vujahday Script", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v10", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/vujahdayscript/v10/RWmQoKGA8fEkrIPtSZ3_J7er2dUiDEtvAlaMKw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/vujahdayscript/v10/RWmQoKGA8fEkrIPtSZ3_J7er2dUSDUFr.ttf" - }, - { - "family": "WDXL Lubrifont JP N", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext", - "symbols2" - ], - "version": "v1", - "lastModified": "2025-06-12", - "files": { - "regular": "https://fonts.gstatic.com/s/wdxllubrifontjpn/v1/8At1GtSkFqazDiO949fzWta9_T-SVxJiIZctoLhFRNU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wdxllubrifontjpn/v1/8At1GtSkFqazDiO949fzWta9_T-SVxJiEZYnpA.ttf" - }, - { - "family": "WDXL Lubrifont SC", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-simplified", - "cyrillic", - "latin", - "latin-ext", - "symbols2" - ], - "version": "v1", - "lastModified": "2025-06-12", - "files": { - "regular": "https://fonts.gstatic.com/s/wdxllubrifontsc/v1/gNMeW2VmY6acu0XtugFrduDciOOyfny5mD9ASHz5.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wdxllubrifontsc/v1/gNMeW2VmY6acu0XtugFrduDciOOyfky4kjs.ttf" - }, - { - "family": "WDXL Lubrifont TC", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-traditional", - "cyrillic", - "latin", - "latin-ext", - "symbols2" - ], - "version": "v4", - "lastModified": "2025-06-18", - "files": { - "regular": "https://fonts.gstatic.com/s/wdxllubrifonttc/v4/nKKN-H4mPq1yJurnWXfJE8svQHonWc_-EqxyqaA8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wdxllubrifonttc/v4/nKKN-H4mPq1yJurnWXfJE8svQHonWf__GKg.ttf" - }, - { - "family": "Waiting for the Sunrise", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v23", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/waitingforthesunrise/v23/WBL1rFvOYl9CEv2i1mO6KUW8RKWJ2zoXoz5JsYZQ9h_ZYk5J.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/waitingforthesunrise/v23/WBL1rFvOYl9CEv2i1mO6KUW8RKWJ2zoXoz5JsbZR_Bs.ttf" - }, - { - "family": "Wallpoet", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v21", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/wallpoet/v21/f0X10em2_8RnXVVdUNbu7cXP8L8G.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wallpoet/v21/f0X10em2_8RnXVVdUObv58E.ttf" - }, - { - "family": "Walter Turncoat", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v24", - "lastModified": "2025-06-02", - "files": { - "regular": "https://fonts.gstatic.com/s/walterturncoat/v24/snfys0Gs98ln43n0d-14ULoToe67YB2dQ5ZPqQ.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/walterturncoat/v24/snfys0Gs98ln43n0d-14ULoToe6LYReZ.ttf" - }, - { - "family": "Warnes", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v29", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/warnes/v29/pONn1hc0GsW6sW5OpiC2o6Lkqg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/warnes/v29/pONn1hc0GsW6sW5-pyqy.ttf" - }, - { - "family": "Water Brush", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v6", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/waterbrush/v6/AYCPpXPqc8cJWLhp4hywKHJq7PKP5Z_G.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/waterbrush/v6/AYCPpXPqc8cJWLhp4hywKEJr5vY.ttf" - }, - { - "family": "Waterfall", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v8", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/waterfall/v8/MCoRzAfo293fACdFKcwY2rH8D_EZwA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/waterfall/v8/MCoRzAfo293fACdFKcwo27v4.ttf" - }, - { - "family": "Wavefont", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "latin" - ], - "version": "v19", - "lastModified": "2025-09-17", - "files": { - "100": "https://fonts.gstatic.com/s/wavefont/v19/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI3V0rDHXKtOXOg4.ttf", - "200": "https://fonts.gstatic.com/s/wavefont/v19/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI1V07DHXKtOXOg4.ttf", - "300": "https://fonts.gstatic.com/s/wavefont/v19/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI2L07DHXKtOXOg4.ttf", - "regular": "https://fonts.gstatic.com/s/wavefont/v19/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI3V07DHXKtOXOg4.ttf", - "500": "https://fonts.gstatic.com/s/wavefont/v19/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI3n07DHXKtOXOg4.ttf", - "600": "https://fonts.gstatic.com/s/wavefont/v19/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI0L1LDHXKtOXOg4.ttf", - "700": "https://fonts.gstatic.com/s/wavefont/v19/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI0y1LDHXKtOXOg4.ttf", - "800": "https://fonts.gstatic.com/s/wavefont/v19/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI1V1LDHXKtOXOg4.ttf", - "900": "https://fonts.gstatic.com/s/wavefont/v19/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI181LDHXKtOXOg4.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wavefont/v19/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI3V04DGVq8.ttf" - }, - { - "family": "Wellfleet", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/wellfleet/v25/nuF7D_LfQJb3VYgX6eyT42aLDhO2HA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wellfleet/v25/nuF7D_LfQJb3VYgX6eyj4myP.ttf" - }, - { - "family": "Wendy One", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v20", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/wendyone/v20/2sDcZGJOipXfgfXV5wgDb2-4C7wFZQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wendyone/v20/2sDcZGJOipXfgfXV5wgzbmW8.ttf" - }, - { - "family": "Whisper", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v7", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/whisper/v7/q5uHsoqtKftx74K9milCBxxdmYU.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/whisper/v7/q5uHsoqtKftx74K9qihIAw.ttf" - }, - { - "family": "WindSong", - "variants": [ - "regular", - "500" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/windsong/v13/KR1WBsyu-P-GFEW57r95HdG6vjH3.ttf", - "500": "https://fonts.gstatic.com/s/windsong/v13/KR1RBsyu-P-GFEW57oeNNPWylS3-jVXm.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/windsong/v13/KR1WBsyu-P-GFEW57o94F9U.ttf" - }, - { - "family": "Winky Rough", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/winkyrough/v4/t5tzIRwIMoSXA0WSPBjQxJzjxc0_NyCBbx8bOSVuN7JB-KCmzg.ttf", - "regular": "https://fonts.gstatic.com/s/winkyrough/v4/t5tzIRwIMoSXA0WSPBjQxJzjxc0_NyCBbx8bZyVuN7JB-KCmzg.ttf", - "500": "https://fonts.gstatic.com/s/winkyrough/v4/t5tzIRwIMoSXA0WSPBjQxJzjxc0_NyCBbx8bVSVuN7JB-KCmzg.ttf", - "600": "https://fonts.gstatic.com/s/winkyrough/v4/t5tzIRwIMoSXA0WSPBjQxJzjxc0_NyCBbx8buSJuN7JB-KCmzg.ttf", - "700": "https://fonts.gstatic.com/s/winkyrough/v4/t5tzIRwIMoSXA0WSPBjQxJzjxc0_NyCBbx8bgCJuN7JB-KCmzg.ttf", - "800": "https://fonts.gstatic.com/s/winkyrough/v4/t5tzIRwIMoSXA0WSPBjQxJzjxc0_NyCBbx8b5yJuN7JB-KCmzg.ttf", - "900": "https://fonts.gstatic.com/s/winkyrough/v4/t5tzIRwIMoSXA0WSPBjQxJzjxc0_NyCBbx8bziJuN7JB-KCmzg.ttf", - "300italic": "https://fonts.gstatic.com/s/winkyrough/v4/t5t1IRwIMoSXA0WSPBjQxLbq9zLnXksbwRgOr2bYdLhF2qW2zneX.ttf", - "italic": "https://fonts.gstatic.com/s/winkyrough/v4/t5t1IRwIMoSXA0WSPBjQxLbq9zLnXksbwRgOr2aGdLhF2qW2zneX.ttf", - "500italic": "https://fonts.gstatic.com/s/winkyrough/v4/t5t1IRwIMoSXA0WSPBjQxLbq9zLnXksbwRgOr2a0dLhF2qW2zneX.ttf", - "600italic": "https://fonts.gstatic.com/s/winkyrough/v4/t5t1IRwIMoSXA0WSPBjQxLbq9zLnXksbwRgOr2ZYc7hF2qW2zneX.ttf", - "700italic": "https://fonts.gstatic.com/s/winkyrough/v4/t5t1IRwIMoSXA0WSPBjQxLbq9zLnXksbwRgOr2Zhc7hF2qW2zneX.ttf", - "800italic": "https://fonts.gstatic.com/s/winkyrough/v4/t5t1IRwIMoSXA0WSPBjQxLbq9zLnXksbwRgOr2YGc7hF2qW2zneX.ttf", - "900italic": "https://fonts.gstatic.com/s/winkyrough/v4/t5t1IRwIMoSXA0WSPBjQxLbq9zLnXksbwRgOr2Yvc7hF2qW2zneX.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/winkyrough/v4/t5tzIRwIMoSXA0WSPBjQxJzjxc0_NyCBbx8bZyVeNrhF.ttf" - }, - { - "family": "Winky Sans", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v3", - "lastModified": "2025-09-02", - "files": { - "300": "https://fonts.gstatic.com/s/winkysans/v3/ll8sK2SDUiG1Hpf2p06bHaEAYt6HPhJ2AGXUiD6F2TpBa98q.ttf", - "regular": "https://fonts.gstatic.com/s/winkysans/v3/ll8sK2SDUiG1Hpf2p06bHaEAYt6HPhJ2AGWKiD6F2TpBa98q.ttf", - "500": "https://fonts.gstatic.com/s/winkysans/v3/ll8sK2SDUiG1Hpf2p06bHaEAYt6HPhJ2AGW4iD6F2TpBa98q.ttf", - "600": "https://fonts.gstatic.com/s/winkysans/v3/ll8sK2SDUiG1Hpf2p06bHaEAYt6HPhJ2AGVUjz6F2TpBa98q.ttf", - "700": "https://fonts.gstatic.com/s/winkysans/v3/ll8sK2SDUiG1Hpf2p06bHaEAYt6HPhJ2AGVtjz6F2TpBa98q.ttf", - "800": "https://fonts.gstatic.com/s/winkysans/v3/ll8sK2SDUiG1Hpf2p06bHaEAYt6HPhJ2AGUKjz6F2TpBa98q.ttf", - "900": "https://fonts.gstatic.com/s/winkysans/v3/ll8sK2SDUiG1Hpf2p06bHaEAYt6HPhJ2AGUjjz6F2TpBa98q.ttf", - "300italic": "https://fonts.gstatic.com/s/winkysans/v3/ll8uK2SDUiG1Hpf2p06bN6gynQbuVYjYB3BCy4jG0z5jbs8qbts.ttf", - "italic": "https://fonts.gstatic.com/s/winkysans/v3/ll8uK2SDUiG1Hpf2p06bN6gynQbuVYjYB3BCy9bG0z5jbs8qbts.ttf", - "500italic": "https://fonts.gstatic.com/s/winkysans/v3/ll8uK2SDUiG1Hpf2p06bN6gynQbuVYjYB3BCy-TG0z5jbs8qbts.ttf", - "600italic": "https://fonts.gstatic.com/s/winkysans/v3/ll8uK2SDUiG1Hpf2p06bN6gynQbuVYjYB3BCywjB0z5jbs8qbts.ttf", - "700italic": "https://fonts.gstatic.com/s/winkysans/v3/ll8uK2SDUiG1Hpf2p06bN6gynQbuVYjYB3BCyzHB0z5jbs8qbts.ttf", - "800italic": "https://fonts.gstatic.com/s/winkysans/v3/ll8uK2SDUiG1Hpf2p06bN6gynQbuVYjYB3BCy1bB0z5jbs8qbts.ttf", - "900italic": "https://fonts.gstatic.com/s/winkysans/v3/ll8uK2SDUiG1Hpf2p06bN6gynQbuVYjYB3BCy3_B0z5jbs8qbts.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/winkysans/v3/ll8sK2SDUiG1Hpf2p06bHaEAYt6HPhJ2AGWKiA6E0z4.ttf" - }, - { - "family": "Wire One", - "variants": [ - "regular" - ], - "subsets": [ - "latin" - ], - "version": "v30", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/wireone/v30/qFdH35Wah5htUhV75WGiWdrCwwcJ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wireone/v30/qFdH35Wah5htUhV75VGjU94.ttf" - }, - { - "family": "Wittgenstein", - "variants": [ - "regular", - "500", - "600", - "700", - "800", - "900", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v4", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/wittgenstein/v4/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61G4T_Bv7Z15J4ow.ttf", - "500": "https://fonts.gstatic.com/s/wittgenstein/v4/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61FwT_Bv7Z15J4ow.ttf", - "600": "https://fonts.gstatic.com/s/wittgenstein/v4/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61LAU_Bv7Z15J4ow.ttf", - "700": "https://fonts.gstatic.com/s/wittgenstein/v4/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61IkU_Bv7Z15J4ow.ttf", - "800": "https://fonts.gstatic.com/s/wittgenstein/v4/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61O4U_Bv7Z15J4ow.ttf", - "900": "https://fonts.gstatic.com/s/wittgenstein/v4/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61McU_Bv7Z15J4ow.ttf", - "italic": "https://fonts.gstatic.com/s/wittgenstein/v4/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQFFjxY3xM8ozHYA.ttf", - "500italic": "https://fonts.gstatic.com/s/wittgenstein/v4/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQJljxY3xM8ozHYA.ttf", - "600italic": "https://fonts.gstatic.com/s/wittgenstein/v4/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQyl_xY3xM8ozHYA.ttf", - "700italic": "https://fonts.gstatic.com/s/wittgenstein/v4/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQ81_xY3xM8ozHYA.ttf", - "800italic": "https://fonts.gstatic.com/s/wittgenstein/v4/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQlF_xY3xM8ozHYA.ttf", - "900italic": "https://fonts.gstatic.com/s/wittgenstein/v4/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQvV_xY3xM8ozHYA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wittgenstein/v4/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61G4TzBrxYw.ttf" - }, - { - "family": "Wix Madefor Display", - "variants": [ - "regular", - "500", - "600", - "700", - "800" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v12", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/wixmadefordisplay/v12/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYFhYltkv_3HQKgh.ttf", - "500": "https://fonts.gstatic.com/s/wixmadefordisplay/v12/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYFTYltkv_3HQKgh.ttf", - "600": "https://fonts.gstatic.com/s/wixmadefordisplay/v12/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYG_ZVtkv_3HQKgh.ttf", - "700": "https://fonts.gstatic.com/s/wixmadefordisplay/v12/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYGGZVtkv_3HQKgh.ttf", - "800": "https://fonts.gstatic.com/s/wixmadefordisplay/v12/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYHhZVtkv_3HQKgh.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wixmadefordisplay/v12/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYFhYmtltfk.ttf" - }, - { - "family": "Wix Madefor Text", - "variants": [ - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic", - "800", - "800italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cK_NOeFgpRt9rN5.ttf", - "italic": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3dw_GiJBP86N53IY.ttf", - "500": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cKNNOeFgpRt9rN5.ttf", - "500italic": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3dz3GiJBP86N53IY.ttf", - "600": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cJhM-eFgpRt9rN5.ttf", - "600italic": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d9HBiJBP86N53IY.ttf", - "700": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cJYM-eFgpRt9rN5.ttf", - "700italic": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d-jBiJBP86N53IY.ttf", - "800": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cI_M-eFgpRt9rN5.ttf", - "800italic": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d4_BiJBP86N53IY.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/wixmadefortext/v17/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cK_NNeEiJA.ttf" - }, - { - "family": "Work Sans", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nWNigDp6_cOyA.ttf", - "200": "https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K8nXNigDp6_cOyA.ttf", - "300": "https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32KxfXNigDp6_cOyA.ttf", - "regular": "https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXNigDp6_cOyA.ttf", - "500": "https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K3vXNigDp6_cOyA.ttf", - "600": "https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K5fQNigDp6_cOyA.ttf", - "700": "https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K67QNigDp6_cOyA.ttf", - "800": "https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K8nQNigDp6_cOyA.ttf", - "900": "https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K-DQNigDp6_cOyA.ttf", - "100italic": "https://fonts.gstatic.com/s/worksans/v24/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU3moJo43ZKyDSQQ.ttf", - "200italic": "https://fonts.gstatic.com/s/worksans/v24/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUXmsJo43ZKyDSQQ.ttf", - "300italic": "https://fonts.gstatic.com/s/worksans/v24/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUgGsJo43ZKyDSQQ.ttf", - "italic": "https://fonts.gstatic.com/s/worksans/v24/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU3msJo43ZKyDSQQ.ttf", - "500italic": "https://fonts.gstatic.com/s/worksans/v24/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU7GsJo43ZKyDSQQ.ttf", - "600italic": "https://fonts.gstatic.com/s/worksans/v24/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUAGwJo43ZKyDSQQ.ttf", - "700italic": "https://fonts.gstatic.com/s/worksans/v24/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUOWwJo43ZKyDSQQ.ttf", - "800italic": "https://fonts.gstatic.com/s/worksans/v24/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUXmwJo43ZKyDSQQ.ttf", - "900italic": "https://fonts.gstatic.com/s/worksans/v24/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUd2wJo43ZKyDSQQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXBikJow.ttf" - }, - { - "family": "Workbench", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "math", - "symbols" - ], - "version": "v3", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/workbench/v3/FeV8S05Gp6Et7FcfbPFK1rynGd_MxtkvNFmoUDFhgF2VKTGQk6vapdOL0GKqgZyb.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/workbench/v3/FeV8S05Gp6Et7FcfbPFK1rynGd_MxtkvNFmoUDFhgF2VKTGQk6vapeOK2mY.ttf" - }, - { - "family": "Xanh Mono", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v19", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/xanhmono/v19/R70YjykVmvKCep-vWhSYmACQXzLhTg.ttf", - "italic": "https://fonts.gstatic.com/s/xanhmono/v19/R70ejykVmvKCep-vWhSomgqUfTfxTo24.ttf" - }, - "category": "monospace", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/xanhmono/v19/R70YjykVmvKCep-vWhSomQqU.ttf" - }, - { - "family": "Yaldevi", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "latin", - "latin-ext", - "sinhala" - ], - "version": "v17", - "lastModified": "2025-09-10", - "files": { - "200": "https://fonts.gstatic.com/s/yaldevi/v17/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpfxJzvobxLCBJkS.ttf", - "300": "https://fonts.gstatic.com/s/yaldevi/v17/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpcvJzvobxLCBJkS.ttf", - "regular": "https://fonts.gstatic.com/s/yaldevi/v17/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpdxJzvobxLCBJkS.ttf", - "500": "https://fonts.gstatic.com/s/yaldevi/v17/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpdDJzvobxLCBJkS.ttf", - "600": "https://fonts.gstatic.com/s/yaldevi/v17/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpevIDvobxLCBJkS.ttf", - "700": "https://fonts.gstatic.com/s/yaldevi/v17/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpeWIDvobxLCBJkS.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yaldevi/v17/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpdxJwvpZRY.ttf" - }, - { - "family": "Yanone Kaffeesatz", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v32", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/yanonekaffeesatz/v32/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftodtWpcGuLCnXkVA.ttf", - "300": "https://fonts.gstatic.com/s/yanonekaffeesatz/v32/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoqNWpcGuLCnXkVA.ttf", - "regular": "https://fonts.gstatic.com/s/yanonekaffeesatz/v32/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIfto9tWpcGuLCnXkVA.ttf", - "500": "https://fonts.gstatic.com/s/yanonekaffeesatz/v32/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoxNWpcGuLCnXkVA.ttf", - "600": "https://fonts.gstatic.com/s/yanonekaffeesatz/v32/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoKNKpcGuLCnXkVA.ttf", - "700": "https://fonts.gstatic.com/s/yanonekaffeesatz/v32/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoEdKpcGuLCnXkVA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yanonekaffeesatz/v32/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIfto9tWZcWGP.ttf" - }, - { - "family": "Yantramanav", - "variants": [ - "100", - "300", - "regular", - "500", - "700", - "900" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/yantramanav/v15/flU-Rqu5zY00QEpyWJYWN5-QXeNzDB41rZg.ttf", - "300": "https://fonts.gstatic.com/s/yantramanav/v15/flUhRqu5zY00QEpyWJYWN59Yf8NZIhI8tIHh.ttf", - "regular": "https://fonts.gstatic.com/s/yantramanav/v15/flU8Rqu5zY00QEpyWJYWN6f0V-dRCQ41.ttf", - "500": "https://fonts.gstatic.com/s/yantramanav/v15/flUhRqu5zY00QEpyWJYWN58AfsNZIhI8tIHh.ttf", - "700": "https://fonts.gstatic.com/s/yantramanav/v15/flUhRqu5zY00QEpyWJYWN59IeMNZIhI8tIHh.ttf", - "900": "https://fonts.gstatic.com/s/yantramanav/v15/flUhRqu5zY00QEpyWJYWN59wesNZIhI8tIHh.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yantramanav/v15/flU8Rqu5zY00QEpyWJYWN5f1XeM.ttf" - }, - { - "family": "Yarndings 12", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "math", - "symbols" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/yarndings12/v4/55xreyp2N8T5P2LJbZAlkY9c8ZLMI2VUnQ.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yarndings12/v4/55xreyp2N8T5P2LJbZAlkY9s8JjI.ttf" - }, - { - "family": "Yarndings 12 Charted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "math", - "symbols" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/yarndings12charted/v4/eLGDP_DlKhO-DUfeqM4I_vDdJgmIh7hAvvbJ0t-dHaJH.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yarndings12charted/v4/eLGDP_DlKhO-DUfeqM4I_vDdJgmIh7hAvsbI2Ns.ttf" - }, - { - "family": "Yarndings 20", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "math", - "symbols" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/yarndings20/v4/TuGWUVlkUohEQu8l7K8b-vNFB380PMTK1w.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yarndings20/v4/TuGWUVlkUohEQu8l7K8b-vN1BnUw.ttf" - }, - { - "family": "Yarndings 20 Charted", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "math", - "symbols" - ], - "version": "v4", - "lastModified": "2025-09-17", - "files": { - "regular": "https://fonts.gstatic.com/s/yarndings20charted/v4/QldRNSdbpg0G8vh0W2qxe0l-hcUPtY2VaLQm4UTqz5V9.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yarndings20charted/v4/QldRNSdbpg0G8vh0W2qxe0l-hcUPtY2VaIQn60A.ttf" - }, - { - "family": "Yatra One", - "variants": [ - "regular" - ], - "subsets": [ - "devanagari", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/yatraone/v16/C8ch4copsHzj8p7NaF0xw1OBbRDvXw.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yatraone/v16/C8ch4copsHzj8p7NaF0BwlmF.ttf" - }, - { - "family": "Yellowtail", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v25", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/yellowtail/v25/OZpGg_pnoDtINPfRIlLotlzNwED-b4g.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yellowtail/v25/OZpGg_pnoDtINPfRIlLohl3HxA.ttf" - }, - { - "family": "Yeon Sung", - "variants": [ - "regular" - ], - "subsets": [ - "korean", - "latin" - ], - "version": "v22", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/yeonsung/v22/QldMNTpbohAGtsJvUn6xSVNazqx2xg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yeonsung/v22/QldMNTpbohAGtsJvUn6BSFle.ttf" - }, - { - "family": "Yeseva One", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v24", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/yesevaone/v24/OpNJno4ck8vc-xYpwWWxpipfWhXD00c.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yesevaone/v24/OpNJno4ck8vc-xYpwWWxlitVXg.ttf" - }, - { - "family": "Yesteryear", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/yesteryear/v21/dg4g_p78rroaKl8kRKo1r7wHTwonmyw.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yesteryear/v21/dg4g_p78rroaKl8kRKo1n70NSw.ttf" - }, - { - "family": "Yomogi", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v13", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/yomogi/v13/VuJwdNrS2ZL7rpoPWIz5NIh-YA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yomogi/v13/VuJwdNrS2ZL7rpo_WYb9.ttf" - }, - { - "family": "Young Serif", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-05-30", - "files": { - "regular": "https://fonts.gstatic.com/s/youngserif/v2/3qTpojO2nS2VtkB3KtkQZ2t61EcYaQ7F.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/youngserif/v2/3qTpojO2nS2VtkB3KtkQZ1t73kM.ttf" - }, - { - "family": "Yrsa", - "variants": [ - "300", - "regular", - "500", - "600", - "700", - "300italic", - "italic", - "500italic", - "600italic", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext", - "vietnamese" - ], - "version": "v25", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/yrsa/v25/wlprgwnQFlxs_wD3CFSMYmFaaCjASNNV9rRPfrKu.ttf", - "regular": "https://fonts.gstatic.com/s/yrsa/v25/wlprgwnQFlxs_wD3CFSMYmFaaCieSNNV9rRPfrKu.ttf", - "500": "https://fonts.gstatic.com/s/yrsa/v25/wlprgwnQFlxs_wD3CFSMYmFaaCisSNNV9rRPfrKu.ttf", - "600": "https://fonts.gstatic.com/s/yrsa/v25/wlprgwnQFlxs_wD3CFSMYmFaaChAT9NV9rRPfrKu.ttf", - "700": "https://fonts.gstatic.com/s/yrsa/v25/wlprgwnQFlxs_wD3CFSMYmFaaCh5T9NV9rRPfrKu.ttf", - "300italic": "https://fonts.gstatic.com/s/yrsa/v25/wlptgwnQFlxs1QnF94zlCfv0bz1WC2UW_LBte6KuGEo.ttf", - "italic": "https://fonts.gstatic.com/s/yrsa/v25/wlptgwnQFlxs1QnF94zlCfv0bz1WCzsW_LBte6KuGEo.ttf", - "500italic": "https://fonts.gstatic.com/s/yrsa/v25/wlptgwnQFlxs1QnF94zlCfv0bz1WCwkW_LBte6KuGEo.ttf", - "600italic": "https://fonts.gstatic.com/s/yrsa/v25/wlptgwnQFlxs1QnF94zlCfv0bz1WC-UR_LBte6KuGEo.ttf", - "700italic": "https://fonts.gstatic.com/s/yrsa/v25/wlptgwnQFlxs1QnF94zlCfv0bz1WC9wR_LBte6KuGEo.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yrsa/v25/wlprgwnQFlxs_wD3CFSMYmFaaCieSONU_LA.ttf" - }, - { - "family": "Ysabeau", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v5", - "lastModified": "2025-09-11", - "files": { - "100": "https://fonts.gstatic.com/s/ysabeau/v5/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OWCTYwI8Gcw6Oi.ttf", - "200": "https://fonts.gstatic.com/s/ysabeau/v5/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7MWCDYwI8Gcw6Oi.ttf", - "300": "https://fonts.gstatic.com/s/ysabeau/v5/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7PICDYwI8Gcw6Oi.ttf", - "regular": "https://fonts.gstatic.com/s/ysabeau/v5/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OWCDYwI8Gcw6Oi.ttf", - "500": "https://fonts.gstatic.com/s/ysabeau/v5/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OkCDYwI8Gcw6Oi.ttf", - "600": "https://fonts.gstatic.com/s/ysabeau/v5/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7NIDzYwI8Gcw6Oi.ttf", - "700": "https://fonts.gstatic.com/s/ysabeau/v5/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7NxDzYwI8Gcw6Oi.ttf", - "800": "https://fonts.gstatic.com/s/ysabeau/v5/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7MWDzYwI8Gcw6Oi.ttf", - "900": "https://fonts.gstatic.com/s/ysabeau/v5/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7M_DzYwI8Gcw6Oi.ttf", - "100italic": "https://fonts.gstatic.com/s/ysabeau/v5/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS95yKcW-xrOiIUw.ttf", - "200italic": "https://fonts.gstatic.com/s/ysabeau/v5/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS15zKcW-xrOiIUw.ttf", - "300italic": "https://fonts.gstatic.com/s/ysabeau/v5/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS4BzKcW-xrOiIUw.ttf", - "italic": "https://fonts.gstatic.com/s/ysabeau/v5/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS95zKcW-xrOiIUw.ttf", - "500italic": "https://fonts.gstatic.com/s/ysabeau/v5/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS-xzKcW-xrOiIUw.ttf", - "600italic": "https://fonts.gstatic.com/s/ysabeau/v5/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeSwB0KcW-xrOiIUw.ttf", - "700italic": "https://fonts.gstatic.com/s/ysabeau/v5/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeSzl0KcW-xrOiIUw.ttf", - "800italic": "https://fonts.gstatic.com/s/ysabeau/v5/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS150KcW-xrOiIUw.ttf", - "900italic": "https://fonts.gstatic.com/s/ysabeau/v5/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS3d0KcW-xrOiIUw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ysabeau/v5/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OWCAYxKcU.ttf" - }, - { - "family": "Ysabeau Infant", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYFo4HK5ChLwKH6A.ttf", - "200": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYlo8HK5ChLwKH6A.ttf", - "300": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYSI8HK5ChLwKH6A.ttf", - "regular": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYFo8HK5ChLwKH6A.ttf", - "500": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYJI8HK5ChLwKH6A.ttf", - "600": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYyIgHK5ChLwKH6A.ttf", - "700": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQY8YgHK5ChLwKH6A.ttf", - "800": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYlogHK5ChLwKH6A.ttf", - "900": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYv4gHK5ChLwKH6A.ttf", - "100italic": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3szvaZqlDQeX6Dc5.ttf", - "200italic": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3sxvaJqlDQeX6Dc5.ttf", - "300italic": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3syxaJqlDQeX6Dc5.ttf", - "italic": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3szvaJqlDQeX6Dc5.ttf", - "500italic": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3szdaJqlDQeX6Dc5.ttf", - "600italic": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3swxb5qlDQeX6Dc5.ttf", - "700italic": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3swIb5qlDQeX6Dc5.ttf", - "800italic": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3sxvb5qlDQeX6Dc5.ttf", - "900italic": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3sxGb5qlDQeX6Dc5.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYFo83Kpql.ttf" - }, - { - "family": "Ysabeau Office", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "100italic", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-10", - "files": { - "100": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbh6IfYSfpQj7IGQ.ttf", - "200": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbB6MfYSfpQj7IGQ.ttf", - "300": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPb2aMfYSfpQj7IGQ.ttf", - "regular": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbh6MfYSfpQj7IGQ.ttf", - "500": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbtaMfYSfpQj7IGQ.ttf", - "600": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbWaQfYSfpQj7IGQ.ttf", - "700": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbYKQfYSfpQj7IGQ.ttf", - "800": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbB6QfYSfpQj7IGQ.ttf", - "900": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbLqQfYSfpQj7IGQ.ttf", - "100italic": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-D3Iy3tYDvYGbGh.ttf", - "200italic": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-B3Ii3tYDvYGbGh.ttf", - "300italic": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-CpIi3tYDvYGbGh.ttf", - "italic": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-D3Ii3tYDvYGbGh.ttf", - "500italic": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-DFIi3tYDvYGbGh.ttf", - "600italic": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-ApJS3tYDvYGbGh.ttf", - "700italic": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-AQJS3tYDvYGbGh.ttf", - "800italic": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-B3JS3tYDvYGbGh.ttf", - "900italic": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-BeJS3tYDvYGbGh.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ysabeauoffice/v4/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbh6MvYC3t.ttf" - }, - { - "family": "Ysabeau SC", - "variants": [ - "100", - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900" - ], - "subsets": [ - "cyrillic", - "cyrillic-ext", - "greek", - "latin", - "latin-ext", - "math", - "symbols", - "vietnamese" - ], - "version": "v4", - "lastModified": "2025-09-16", - "files": { - "100": "https://fonts.gstatic.com/s/ysabeausc/v4/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw98U1qEZ4EOmsT5.ttf", - "200": "https://fonts.gstatic.com/s/ysabeausc/v4/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw_8UlqEZ4EOmsT5.ttf", - "300": "https://fonts.gstatic.com/s/ysabeausc/v4/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw8iUlqEZ4EOmsT5.ttf", - "regular": "https://fonts.gstatic.com/s/ysabeausc/v4/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw98UlqEZ4EOmsT5.ttf", - "500": "https://fonts.gstatic.com/s/ysabeausc/v4/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw9OUlqEZ4EOmsT5.ttf", - "600": "https://fonts.gstatic.com/s/ysabeausc/v4/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw-iVVqEZ4EOmsT5.ttf", - "700": "https://fonts.gstatic.com/s/ysabeausc/v4/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw-bVVqEZ4EOmsT5.ttf", - "800": "https://fonts.gstatic.com/s/ysabeausc/v4/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw_8VVqEZ4EOmsT5.ttf", - "900": "https://fonts.gstatic.com/s/ysabeausc/v4/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw_VVVqEZ4EOmsT5.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/ysabeausc/v4/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw98UmqFbYU.ttf" - }, - { - "family": "Yuji Boku", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/yujiboku/v8/P5sAzZybeNzXsA9xj1Fkjb2r2dgvJA.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yujiboku/v8/P5sAzZybeNzXsA9xj1FUjLev.ttf" - }, - { - "family": "Yuji Hentaigana Akari", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/yujihentaiganaakari/v14/cY9bfiyVT0VB6QuhWKOrpr6z58lnb_zYFnLIRTzODYALaA.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yujihentaiganaakari/v14/cY9bfiyVT0VB6QuhWKOrpr6z58lnb_zYFnL4RDbK.ttf" - }, - { - "family": "Yuji Hentaigana Akebono", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v15", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/yujihentaiganaakebono/v15/EJRGQhkhRNwM-RtitGUwh930GU_f5KAlkuL0wQy9NKXRzrrF.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yujihentaiganaakebono/v15/EJRGQhkhRNwM-RtitGUwh930GU_f5KAlkuL0wTy8PqE.ttf" - }, - { - "family": "Yuji Mai", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/yujimai/v8/ZgNQjPxdJ7DEHrS0gC38hmHmNpCO.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yujimai/v8/ZgNQjPxdJ7DEHrS0gB39jGU.ttf" - }, - { - "family": "Yuji Syuku", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/yujisyuku/v8/BngNUXdTV3vO6Lw5ApOPqPfgwqiA-Rk.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yujisyuku/v8/BngNUXdTV3vO6Lw5ApOPmPbqxg.ttf" - }, - { - "family": "Yusei Magic", - "variants": [ - "regular" - ], - "subsets": [ - "japanese", - "latin", - "latin-ext" - ], - "version": "v16", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/yuseimagic/v16/yYLt0hbAyuCmoo5wlhPkpjHR-tdfcIT_.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/yuseimagic/v16/yYLt0hbAyuCmoo5wlhPkpgHQ8NM.ttf" - }, - { - "family": "ZCOOL KuaiLe", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-simplified", - "latin" - ], - "version": "v20", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/zcoolkuaile/v20/tssqApdaRQokwFjFJjvM6h2WpozzoXhC2g.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zcoolkuaile/v20/tssqApdaRQokwFjFJjvM6h2mp4b3.ttf" - }, - { - "family": "ZCOOL QingKe HuangYou", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-simplified", - "latin" - ], - "version": "v16", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/zcoolqingkehuangyou/v16/2Eb5L_R5IXJEWhD3AOhSvFC554MOOahI4mRIi_28c8bHWA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zcoolqingkehuangyou/v16/2Eb5L_R5IXJEWhD3AOhSvFC554MOOahI4mR4ive4.ttf" - }, - { - "family": "ZCOOL XiaoWei", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-simplified", - "latin" - ], - "version": "v15", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/zcoolxiaowei/v15/i7dMIFFrTRywPpUVX9_RJyM1YFKQHwyVd3U.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zcoolxiaowei/v15/i7dMIFFrTRywPpUVX9_RJyM1UFOaGw.ttf" - }, - { - "family": "Zain", - "variants": [ - "200", - "300", - "300italic", - "regular", - "italic", - "700", - "800", - "900" - ], - "subsets": [ - "arabic", - "latin" - ], - "version": "v3", - "lastModified": "2025-05-30", - "files": { - "200": "https://fonts.gstatic.com/s/zain/v3/sykz-y9lm7soOBrstSq9-trEvlQ.ttf", - "300": "https://fonts.gstatic.com/s/zain/v3/sykz-y9lm7soOH7vtSq9-trEvlQ.ttf", - "300italic": "https://fonts.gstatic.com/s/zain/v3/sykx-y9lm7soMND1OSi3_vjBrlSILg.ttf", - "regular": "https://fonts.gstatic.com/s/zain/v3/syk8-y9lm7soANLHkSKW5tM.ttf", - "italic": "https://fonts.gstatic.com/s/zain/v3/syky-y9lm7soMNDNlQCT9tPdpw.ttf", - "700": "https://fonts.gstatic.com/s/zain/v3/sykz-y9lm7soOG7otSq9-trEvlQ.ttf", - "800": "https://fonts.gstatic.com/s/zain/v3/sykz-y9lm7soOHLrtSq9-trEvlQ.ttf", - "900": "https://fonts.gstatic.com/s/zain/v3/sykz-y9lm7soOFbqtSq9-trEvlQ.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zain/v3/syk8-y9lm7soMNPNlQ.ttf" - }, - { - "family": "Zalando Sans", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ67-Asy1Em_lq_aK3hpr-RrktWHD54lnesO2lsVvrnhgw8zPbXoT-7PzkTYUMEgzhp.ttf", - "300": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ67-Asy1Em_lq_aK3hpr-RrktWHD54lnesO2lsVvrnhgw8zPbXoT9lPzkTYUMEgzhp.ttf", - "regular": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ67-Asy1Em_lq_aK3hpr-RrktWHD54lnesO2lsVvrnhgw8zPbXoT87PzkTYUMEgzhp.ttf", - "500": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ67-Asy1Em_lq_aK3hpr-RrktWHD54lnesO2lsVvrnhgw8zPbXoT8JPzkTYUMEgzhp.ttf", - "600": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ67-Asy1Em_lq_aK3hpr-RrktWHD54lnesO2lsVvrnhgw8zPbXoT_lODkTYUMEgzhp.ttf", - "700": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ67-Asy1Em_lq_aK3hpr-RrktWHD54lnesO2lsVvrnhgw8zPbXoT_cODkTYUMEgzhp.ttf", - "800": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ67-Asy1Em_lq_aK3hpr-RrktWHD54lnesO2lsVvrnhgw8zPbXoT-7ODkTYUMEgzhp.ttf", - "900": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ67-Asy1Em_lq_aK3hpr-RrktWHD54lnesO2lsVvrnhgw8zPbXoT-SODkTYUMEgzhp.ttf", - "200italic": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ47-Asy1Em_lq_aK3hpr-7p3m1_EcrANmrLqEupLPVedRVp2x5pirzfFFQa0cmhihp69o.ttf", - "300italic": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ47-Asy1Em_lq_aK3hpr-7p3m1_EcrANmrLqEupLPVedRVp2x5pirzfI9Qa0cmhihp69o.ttf", - "italic": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ47-Asy1Em_lq_aK3hpr-7p3m1_EcrANmrLqEupLPVedRVp2x5pirzfNFQa0cmhihp69o.ttf", - "500italic": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ47-Asy1Em_lq_aK3hpr-7p3m1_EcrANmrLqEupLPVedRVp2x5pirzfONQa0cmhihp69o.ttf", - "600italic": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ47-Asy1Em_lq_aK3hpr-7p3m1_EcrANmrLqEupLPVedRVp2x5pirzfA9Xa0cmhihp69o.ttf", - "700italic": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ47-Asy1Em_lq_aK3hpr-7p3m1_EcrANmrLqEupLPVedRVp2x5pirzfDZXa0cmhihp69o.ttf", - "800italic": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ47-Asy1Em_lq_aK3hpr-7p3m1_EcrANmrLqEupLPVedRVp2x5pirzfFFXa0cmhihp69o.ttf", - "900italic": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ47-Asy1Em_lq_aK3hpr-7p3m1_EcrANmrLqEupLPVedRVp2x5pirzfHhXa0cmhihp69o.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zalandosans/v2/FwZ67-Asy1Em_lq_aK3hpr-RrktWHD54lnesO2lsVvrnhgw8zPbXoT87PwkSa0c.ttf" - }, - { - "family": "Zalando Sans Expanded", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU6jJci8Cy470GaeFwsix1hi3aTmrgRwU-ZoGTKmeLvpK-4OPGIl41hcxm2zLI.ttf", - "300": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU6jJci8Cy470GaeFwsix1hi3aTmrgRwU-ZoGTKmeLvpK-4OC-Il41hcxm2zLI.ttf", - "regular": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU6jJci8Cy470GaeFwsix1hi3aTmrgRwU-ZoGTKmeLvpK-4OHGIl41hcxm2zLI.ttf", - "500": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU6jJci8Cy470GaeFwsix1hi3aTmrgRwU-ZoGTKmeLvpK-4OEOIl41hcxm2zLI.ttf", - "600": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU6jJci8Cy470GaeFwsix1hi3aTmrgRwU-ZoGTKmeLvpK-4OK-Pl41hcxm2zLI.ttf", - "700": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU6jJci8Cy470GaeFwsix1hi3aTmrgRwU-ZoGTKmeLvpK-4OJaPl41hcxm2zLI.ttf", - "800": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU6jJci8Cy470GaeFwsix1hi3aTmrgRwU-ZoGTKmeLvpK-4OPGPl41hcxm2zLI.ttf", - "900": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU6jJci8Cy470GaeFwsix1hi3aTmrgRwU-ZoGTKmeLvpK-4ONiPl41hcxm2zLI.ttf", - "200italic": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU4jJci8Cy470GaeFwsix1hi3aTmrgRwU-zqVY1QYuEPgG_LbnL_85rdzuz3LKaMA.ttf", - "300italic": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU4jJci8Cy470GaeFwsix1hi3aTmrgRwU-zqVY1QYuEPgG_LbnLIc5rdzuz3LKaMA.ttf", - "italic": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU4jJci8Cy470GaeFwsix1hi3aTmrgRwU-zqVY1QYuEPgG_LbnLf85rdzuz3LKaMA.ttf", - "500italic": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU4jJci8Cy470GaeFwsix1hi3aTmrgRwU-zqVY1QYuEPgG_LbnLTc5rdzuz3LKaMA.ttf", - "600italic": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU4jJci8Cy470GaeFwsix1hi3aTmrgRwU-zqVY1QYuEPgG_LbnLoclrdzuz3LKaMA.ttf", - "700italic": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU4jJci8Cy470GaeFwsix1hi3aTmrgRwU-zqVY1QYuEPgG_LbnLmMlrdzuz3LKaMA.ttf", - "800italic": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU4jJci8Cy470GaeFwsix1hi3aTmrgRwU-zqVY1QYuEPgG_LbnL_8lrdzuz3LKaMA.ttf", - "900italic": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU4jJci8Cy470GaeFwsix1hi3aTmrgRwU-zqVY1QYuEPgG_LbnL1slrdzuz3LKaMA.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTU6jJci8Cy470GaeFwsix1hi3aTmrgRwU-ZoGTKmeLvpK-4OHGIp4xrdw.ttf" - }, - { - "family": "Zalando Sans SemiExpanded", - "variants": [ - "200", - "300", - "regular", - "500", - "600", - "700", - "800", - "900", - "200italic", - "300italic", - "italic", - "500italic", - "600italic", - "700italic", - "800italic", - "900italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v2", - "lastModified": "2025-09-16", - "files": { - "200": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLhKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrEzR2jhk_n3T6ACkBbEnP9Fs7bOSO7.ttf", - "300": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLhKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrEzR2jhk_n3T6ACkCFEnP9Fs7bOSO7.ttf", - "regular": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLhKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrEzR2jhk_n3T6ACkDbEnP9Fs7bOSO7.ttf", - "500": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLhKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrEzR2jhk_n3T6ACkDpEnP9Fs7bOSO7.ttf", - "600": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLhKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrEzR2jhk_n3T6ACkAFFXP9Fs7bOSO7.ttf", - "700": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLhKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrEzR2jhk_n3T6ACkA8FXP9Fs7bOSO7.ttf", - "800": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLhKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrEzR2jhk_n3T6ACkBbFXP9Fs7bOSO7.ttf", - "900": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLhKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrEzR2jhk_n3T6ACkByFXP9Fs7bOSO7.ttf", - "200italic": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLjKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrE5xSReZeOtqQuDVUTURu-HMr5PDO71Qs.ttf", - "300italic": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLjKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrE5xSReZeOtqQuDVUTUcW-HMr5PDO71Qs.ttf", - "italic": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLjKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrE5xSReZeOtqQuDVUTUZu-HMr5PDO71Qs.ttf", - "500italic": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLjKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrE5xSReZeOtqQuDVUTUam-HMr5PDO71Qs.ttf", - "600italic": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLjKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrE5xSReZeOtqQuDVUTUUW5HMr5PDO71Qs.ttf", - "700italic": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLjKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrE5xSReZeOtqQuDVUTUXy5HMr5PDO71Qs.ttf", - "800italic": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLjKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrE5xSReZeOtqQuDVUTURu5HMr5PDO71Qs.ttf", - "900italic": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLjKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrE5xSReZeOtqQuDVUTUTK5HMr5PDO71Qs.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLhKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrEzR2jhk_n3T6ACkDbEkP8HMo.ttf" - }, - { - "family": "Zen Antique", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "greek", - "japanese", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/zenantique/v14/AYCPpXPnd91Ma_Zf-Ri2JXJq7PKP5Z_G.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zenantique/v14/AYCPpXPnd91Ma_Zf-Ri2JUJr5vY.ttf" - }, - { - "family": "Zen Antique Soft", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "greek", - "japanese", - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/zenantiquesoft/v14/DtV4JwqzSL1q_KwnEWMc_3xfgW6ihwBmkui5HNg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zenantiquesoft/v14/DtV4JwqzSL1q_KwnEWMc_3xfgW6itwFslg.ttf" - }, - { - "family": "Zen Dots", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v14", - "lastModified": "2025-09-05", - "files": { - "regular": "https://fonts.gstatic.com/s/zendots/v14/XRXX3ICfm00IGoesQeaETM_FcCIG.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zendots/v14/XRXX3ICfm00IGoesQdaFRss.ttf" - }, - { - "family": "Zen Kaku Gothic Antique", - "variants": [ - "300", - "regular", - "500", - "700", - "900" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/zenkakugothicantique/v18/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22cM9TarWJtyZyGU.ttf", - "regular": "https://fonts.gstatic.com/s/zenkakugothicantique/v18/6qLQKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB21-g3RKjc4d7.ttf", - "500": "https://fonts.gstatic.com/s/zenkakugothicantique/v18/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22dU9DarWJtyZyGU.ttf", - "700": "https://fonts.gstatic.com/s/zenkakugothicantique/v18/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22cc8jarWJtyZyGU.ttf", - "900": "https://fonts.gstatic.com/s/zenkakugothicantique/v18/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22ck8DarWJtyZyGU.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zenkakugothicantique/v18/6qLQKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22-h1xY.ttf" - }, - { - "family": "Zen Kaku Gothic New", - "variants": [ - "300", - "regular", - "500", - "700", - "900" - ], - "subsets": [ - "cyrillic", - "japanese", - "latin", - "latin-ext" - ], - "version": "v18", - "lastModified": "2025-09-16", - "files": { - "300": "https://fonts.gstatic.com/s/zenkakugothicnew/v18/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqpdKaWTSTGlMyd8.ttf", - "regular": "https://fonts.gstatic.com/s/zenkakugothicnew/v18/gNMYW2drQpDw0GjzrVNFf_valaDBcznOkjtiTWz5UGA.ttf", - "500": "https://fonts.gstatic.com/s/zenkakugothicnew/v18/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqs9LaWTSTGlMyd8.ttf", - "700": "https://fonts.gstatic.com/s/zenkakugothicnew/v18/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqodNaWTSTGlMyd8.ttf", - "900": "https://fonts.gstatic.com/s/zenkakugothicnew/v18/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqr9PaWTSTGlMyd8.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zenkakugothicnew/v18/gNMYW2drQpDw0GjzrVNFf_valaDBcznOojpoSQ.ttf" - }, - { - "family": "Zen Kurenaido", - "variants": [ - "regular" - ], - "subsets": [ - "cyrillic", - "greek", - "japanese", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/zenkurenaido/v19/3XFsEr0515BK2u6UUptu_gWJZfz22PRLd0U.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zenkurenaido/v19/3XFsEr0515BK2u6UUptu_gWJVf383A.ttf" - }, - { - "family": "Zen Loop", - "variants": [ - "regular", - "italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v11", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/zenloop/v11/h0GrssK16UsnJwHsEK9zqwzX5vOG.ttf", - "italic": "https://fonts.gstatic.com/s/zenloop/v11/h0GtssK16UsnJwHsEJ9xoQj14-OGJ0w.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zenloop/v11/h0GrssK16UsnJwHsEJ9yoQg.ttf" - }, - { - "family": "Zen Maru Gothic", - "variants": [ - "300", - "regular", - "500", - "700", - "900" - ], - "subsets": [ - "cyrillic", - "greek", - "japanese", - "latin", - "latin-ext" - ], - "version": "v19", - "lastModified": "2025-06-25", - "files": { - "300": "https://fonts.gstatic.com/s/zenmarugothic/v19/o-0XIpIxzW5b-RxT-6A8jWAtCp-cQWpCPJqa_ajlvw.ttf", - "regular": "https://fonts.gstatic.com/s/zenmarugothic/v19/o-0SIpIxzW5b-RxT-6A8jWAtCp-k7UJmNLGG9A.ttf", - "500": "https://fonts.gstatic.com/s/zenmarugothic/v19/o-0XIpIxzW5b-RxT-6A8jWAtCp-cGWtCPJqa_ajlvw.ttf", - "700": "https://fonts.gstatic.com/s/zenmarugothic/v19/o-0XIpIxzW5b-RxT-6A8jWAtCp-cUW1CPJqa_ajlvw.ttf", - "900": "https://fonts.gstatic.com/s/zenmarugothic/v19/o-0XIpIxzW5b-RxT-6A8jWAtCp-caW9CPJqa_ajlvw.ttf" - }, - "category": "sans-serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zenmarugothic/v19/o-0SIpIxzW5b-RxT-6A8jWAtCp-U7Ehi.ttf" - }, - { - "family": "Zen Old Mincho", - "variants": [ - "regular", - "500", - "600", - "700", - "900" - ], - "subsets": [ - "cyrillic", - "greek", - "japanese", - "latin", - "latin-ext" - ], - "version": "v13", - "lastModified": "2025-09-02", - "files": { - "regular": "https://fonts.gstatic.com/s/zenoldmincho/v13/tss0ApVaYytLwxTqcxfMyBveyYb3g31S2s8p.ttf", - "500": "https://fonts.gstatic.com/s/zenoldmincho/v13/tss3ApVaYytLwxTqcxfMyBveyb4Dqlla8dMgPgBu.ttf", - "600": "https://fonts.gstatic.com/s/zenoldmincho/v13/tss3ApVaYytLwxTqcxfMyBveyb4vrVla8dMgPgBu.ttf", - "700": "https://fonts.gstatic.com/s/zenoldmincho/v13/tss3ApVaYytLwxTqcxfMyBveyb5LrFla8dMgPgBu.ttf", - "900": "https://fonts.gstatic.com/s/zenoldmincho/v13/tss3ApVaYytLwxTqcxfMyBveyb5zrlla8dMgPgBu.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zenoldmincho/v13/tss0ApVaYytLwxTqcxfMyBveybb2iXk.ttf" - }, - { - "family": "Zen Tokyo Zoo", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v8", - "lastModified": "2025-09-10", - "files": { - "regular": "https://fonts.gstatic.com/s/zentokyozoo/v8/NGSyv5ffC0J_BK6aFNtr6sRv8a1uRWe9amg.ttf" - }, - "category": "display", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zentokyozoo/v8/NGSyv5ffC0J_BK6aFNtr6sRvwaxkQQ.ttf" - }, - { - "family": "Zeyada", - "variants": [ - "regular" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v22", - "lastModified": "2025-09-16", - "files": { - "regular": "https://fonts.gstatic.com/s/zeyada/v22/11hAGpPTxVPUbgZDNGatWKaZ3g.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zeyada/v22/11hAGpPTxVPUbgZzNWyp.ttf" - }, - { - "family": "Zhi Mang Xing", - "variants": [ - "regular" - ], - "subsets": [ - "chinese-simplified", - "latin" - ], - "version": "v19", - "lastModified": "2025-09-08", - "files": { - "regular": "https://fonts.gstatic.com/s/zhimangxing/v19/f0Xw0ey79sErYFtWQ9a2rq-g0actfektIJ0.ttf" - }, - "category": "handwriting", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zhimangxing/v19/f0Xw0ey79sErYFtWQ9a2rq-g4aYneQ.ttf" - }, - { - "family": "Zilla Slab", - "variants": [ - "300", - "300italic", - "regular", - "italic", - "500", - "500italic", - "600", - "600italic", - "700", - "700italic" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v12", - "lastModified": "2025-09-05", - "files": { - "300": "https://fonts.gstatic.com/s/zillaslab/v12/dFa5ZfeM_74wlPZtksIFYpEY2HSjWlhzbaw.ttf", - "300italic": "https://fonts.gstatic.com/s/zillaslab/v12/dFanZfeM_74wlPZtksIFaj8CVHapXnp2fazkfg.ttf", - "regular": "https://fonts.gstatic.com/s/zillaslab/v12/dFa6ZfeM_74wlPZtksIFWj0w_HyIRlE.ttf", - "italic": "https://fonts.gstatic.com/s/zillaslab/v12/dFa4ZfeM_74wlPZtksIFaj86-F6NVlFqdA.ttf", - "500": "https://fonts.gstatic.com/s/zillaslab/v12/dFa5ZfeM_74wlPZtksIFYskZ2HSjWlhzbaw.ttf", - "500italic": "https://fonts.gstatic.com/s/zillaslab/v12/dFanZfeM_74wlPZtksIFaj8CDHepXnp2fazkfg.ttf", - "600": "https://fonts.gstatic.com/s/zillaslab/v12/dFa5ZfeM_74wlPZtksIFYuUe2HSjWlhzbaw.ttf", - "600italic": "https://fonts.gstatic.com/s/zillaslab/v12/dFanZfeM_74wlPZtksIFaj8CIHCpXnp2fazkfg.ttf", - "700": "https://fonts.gstatic.com/s/zillaslab/v12/dFa5ZfeM_74wlPZtksIFYoEf2HSjWlhzbaw.ttf", - "700italic": "https://fonts.gstatic.com/s/zillaslab/v12/dFanZfeM_74wlPZtksIFaj8CRHGpXnp2fazkfg.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zillaslab/v12/dFa6ZfeM_74wlPZtksIFajw6-A.ttf" - }, - { - "family": "Zilla Slab Highlight", - "variants": [ - "regular", - "700" - ], - "subsets": [ - "latin", - "latin-ext" - ], - "version": "v21", - "lastModified": "2025-09-11", - "files": { - "regular": "https://fonts.gstatic.com/s/zillaslabhighlight/v21/gNMbW2BrTpK8-inLtBJgMMfbm6uNVDvRxhtIY2DwSXlM.ttf", - "700": "https://fonts.gstatic.com/s/zillaslabhighlight/v21/gNMUW2BrTpK8-inLtBJgMMfbm6uNVDvRxiP0TET4YmVF0Mb6.ttf" - }, - "category": "serif", - "kind": "webfonts#webfont", - "menu": "https://fonts.gstatic.com/s/zillaslabhighlight/v21/gNMbW2BrTpK8-inLtBJgMMfbm6uNVDvRxitJaWQ.ttf" - } - ] + "kind": "webfonts#webfontList", + "items": [ + { + "family": "ABeeZee", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/abeezee/v22/esDR31xSG-6AGleN6tKukbcHCpE.ttf", + "italic": "https://fonts.gstatic.com/s/abeezee/v22/esDT31xSG-6AGleN2tCklZUCGpG-GQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/abeezee/v22/esDR31xSG-6AGleN2tOklQ.ttf" + }, + { + "family": "ADLaM Display", + "variants": [ + "regular" + ], + "subsets": [ + "adlam", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/adlamdisplay/v1/KFOhCnGXkPOLlhx6jD8_b1ZECsHYkYBPY3o.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/adlamdisplay/v1/KFOhCnGXkPOLlhx6jD8_b1ZEOsDSlQ.ttf" + }, + { + "family": "AR One Sans", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/aronesans/v4/TUZezwhrmbFp0Srr_tH6fv6RcUejHO_u7GF5aXfv-U2QzBLF6gslWn_9DW03no5mBF4.ttf", + "500": "https://fonts.gstatic.com/s/aronesans/v4/TUZezwhrmbFp0Srr_tH6fv6RcUejHO_u7GF5aXfv-U2QzBLF6gslWk39DW03no5mBF4.ttf", + "600": "https://fonts.gstatic.com/s/aronesans/v4/TUZezwhrmbFp0Srr_tH6fv6RcUejHO_u7GF5aXfv-U2QzBLF6gslWqH6DW03no5mBF4.ttf", + "700": "https://fonts.gstatic.com/s/aronesans/v4/TUZezwhrmbFp0Srr_tH6fv6RcUejHO_u7GF5aXfv-U2QzBLF6gslWpj6DW03no5mBF4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/aronesans/v4/TUZezwhrmbFp0Srr_tH6fv6RcUejHO_u7GF5aXfv-U2QzBLF6gslWn_9PWw9mg.ttf" + }, + { + "family": "Abel", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/abel/v18/MwQ5bhbm2POE6VhLPJp6qGI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/abel/v18/MwQ5bhbm2POE2VlBOA.ttf" + }, + { + "family": "Abhaya Libre", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "sinhala" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/abhayalibre/v17/e3tmeuGtX-Co5MNzeAOqinEge0PWovdU4w.ttf", + "500": "https://fonts.gstatic.com/s/abhayalibre/v17/e3t5euGtX-Co5MNzeAOqinEYj2ryqtxI6oYtBA.ttf", + "600": "https://fonts.gstatic.com/s/abhayalibre/v17/e3t5euGtX-Co5MNzeAOqinEYo23yqtxI6oYtBA.ttf", + "700": "https://fonts.gstatic.com/s/abhayalibre/v17/e3t5euGtX-Co5MNzeAOqinEYx2zyqtxI6oYtBA.ttf", + "800": "https://fonts.gstatic.com/s/abhayalibre/v17/e3t5euGtX-Co5MNzeAOqinEY22_yqtxI6oYtBA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/abhayalibre/v17/e3tmeuGtX-Co5MNzeAOqinEQeknS.ttf" + }, + { + "family": "Aboreto", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/aboreto/v2/5DCXAKLhwDDQ4N8blKTeA2yuxSY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/aboreto/v2/5DCXAKLhwDDQ4N8bpKXUBw.ttf" + }, + { + "family": "Abril Fatface", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/abrilfatface/v23/zOL64pLDlL1D99S8g8PtiKchm-BsjOLhZBY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/abrilfatface/v23/zOL64pLDlL1D99S8g8PtiKchq-FmiA.ttf" + }, + { + "family": "Abyssinica SIL", + "variants": [ + "regular" + ], + "subsets": [ + "ethiopic", + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/abyssinicasil/v5/oY1H8ezOqK7iI3rK_45WKoc8J6UZBFOVAXuI.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/abyssinicasil/v5/oY1H8ezOqK7iI3rK_45WKoc8J5UYDlc.ttf" + }, + { + "family": "Aclonica", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/aclonica/v22/K2FyfZJVlfNNSEBXGb7TCI6oBjLz.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/aclonica/v22/K2FyfZJVlfNNSEBXGY7SAoo.ttf" + }, + { + "family": "Acme", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/acme/v25/RrQfboBx-C5_bx3Lb23lzLk.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/acme/v25/RrQfboBx-C5_XxzBaw.ttf" + }, + { + "family": "Actor", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/actor/v17/wEOzEBbCkc5cO3ekXygtUMIO.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/actor/v17/wEOzEBbCkc5cO0elVSw.ttf" + }, + { + "family": "Adamina", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/adamina/v21/j8_r6-DH1bjoc-dwu-reETl4Bno.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/adamina/v21/j8_r6-DH1bjoc-dwi-vUFQ.ttf" + }, + { + "family": "Advent Pro", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/adventpro/v28/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLQyJPTJoonw1aBA.ttf", + "200": "https://fonts.gstatic.com/s/adventpro/v28/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLwyNPTJoonw1aBA.ttf", + "300": "https://fonts.gstatic.com/s/adventpro/v28/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLHSNPTJoonw1aBA.ttf", + "regular": "https://fonts.gstatic.com/s/adventpro/v28/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLQyNPTJoonw1aBA.ttf", + "500": "https://fonts.gstatic.com/s/adventpro/v28/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLcSNPTJoonw1aBA.ttf", + "600": "https://fonts.gstatic.com/s/adventpro/v28/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLnSRPTJoonw1aBA.ttf", + "700": "https://fonts.gstatic.com/s/adventpro/v28/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLpCRPTJoonw1aBA.ttf", + "800": "https://fonts.gstatic.com/s/adventpro/v28/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLwyRPTJoonw1aBA.ttf", + "900": "https://fonts.gstatic.com/s/adventpro/v28/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpL6iRPTJoonw1aBA.ttf", + "100italic": "https://fonts.gstatic.com/s/adventpro/v28/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CnDpAsvQhKBH4C.ttf", + "200italic": "https://fonts.gstatic.com/s/adventpro/v28/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AnD5AsvQhKBH4C.ttf", + "300italic": "https://fonts.gstatic.com/s/adventpro/v28/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2D5D5AsvQhKBH4C.ttf", + "italic": "https://fonts.gstatic.com/s/adventpro/v28/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CnD5AsvQhKBH4C.ttf", + "500italic": "https://fonts.gstatic.com/s/adventpro/v28/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2CVD5AsvQhKBH4C.ttf", + "600italic": "https://fonts.gstatic.com/s/adventpro/v28/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2B5CJAsvQhKBH4C.ttf", + "700italic": "https://fonts.gstatic.com/s/adventpro/v28/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2BACJAsvQhKBH4C.ttf", + "800italic": "https://fonts.gstatic.com/s/adventpro/v28/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AnCJAsvQhKBH4C.ttf", + "900italic": "https://fonts.gstatic.com/s/adventpro/v28/V8mkoQfxVT4Dvddr_yOwhT-3Jr6w5kKOEbAVEvZiKGAr6BX29i1ei2AOCJAsvQhKBH4C.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/adventpro/v28/V8mqoQfxVT4Dvddr_yOwrzaFxV7JtdQgFqXdUAQrGp_zgX5sWCpLQyN_TZAs.ttf" + }, + { + "family": "Afacad", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/afacad/v1/6NUK8FKMIQOGaw6wjYT7ZHG_zsBBfhXtWmA08mCgdfM.ttf", + "500": "https://fonts.gstatic.com/s/afacad/v1/6NUK8FKMIQOGaw6wjYT7ZHG_zsBBfiftWmA08mCgdfM.ttf", + "600": "https://fonts.gstatic.com/s/afacad/v1/6NUK8FKMIQOGaw6wjYT7ZHG_zsBBfsvqWmA08mCgdfM.ttf", + "700": "https://fonts.gstatic.com/s/afacad/v1/6NUK8FKMIQOGaw6wjYT7ZHG_zsBBfvLqWmA08mCgdfM.ttf", + "italic": "https://fonts.gstatic.com/s/afacad/v1/6NUI8FKMIQOGaw6ahLYEvBjUVG5Ga92usiM-9kKlZfNfuw.ttf", + "500italic": "https://fonts.gstatic.com/s/afacad/v1/6NUI8FKMIQOGaw6ahLYEvBjUVG5Ga92ugCM-9kKlZfNfuw.ttf", + "600italic": "https://fonts.gstatic.com/s/afacad/v1/6NUI8FKMIQOGaw6ahLYEvBjUVG5Ga92ubCQ-9kKlZfNfuw.ttf", + "700italic": "https://fonts.gstatic.com/s/afacad/v1/6NUI8FKMIQOGaw6ahLYEvBjUVG5Ga92uVSQ-9kKlZfNfuw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/afacad/v1/6NUK8FKMIQOGaw6wjYT7ZHG_zsBBfhXtamE-9g.ttf" + }, + { + "family": "Afacad Flux", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/afacadflux/v1/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsUwWZaRqQsJr67E.ttf", + "200": "https://fonts.gstatic.com/s/afacadflux/v1/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edscwXZaRqQsJr67E.ttf", + "300": "https://fonts.gstatic.com/s/afacadflux/v1/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsRIXZaRqQsJr67E.ttf", + "regular": "https://fonts.gstatic.com/s/afacadflux/v1/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsUwXZaRqQsJr67E.ttf", + "500": "https://fonts.gstatic.com/s/afacadflux/v1/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsX4XZaRqQsJr67E.ttf", + "600": "https://fonts.gstatic.com/s/afacadflux/v1/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsZIQZaRqQsJr67E.ttf", + "700": "https://fonts.gstatic.com/s/afacadflux/v1/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsasQZaRqQsJr67E.ttf", + "800": "https://fonts.gstatic.com/s/afacadflux/v1/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edscwQZaRqQsJr67E.ttf", + "900": "https://fonts.gstatic.com/s/afacadflux/v1/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edseUQZaRqQsJr67E.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/afacadflux/v1/9oRgNYYQryMlneUPykRmTuH4ET0fri4I5rJVT_CWHKDZnskVK5edsUwXVaVgRg.ttf" + }, + { + "family": "Agbalumo", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/agbalumo/v5/55xvey5uMdT2N37KZcMFirl08KDJ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/agbalumo/v5/55xvey5uMdT2N37KZfMEgL0.ttf" + }, + { + "family": "Agdasima", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/agdasima/v4/PN_zRfyxp2f1fUCgAMg6rzjb_-Da.ttf", + "700": "https://fonts.gstatic.com/s/agdasima/v4/PN_0Rfyxp2f1fUCgAPCGgBzT1PzTz2Mi.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/agdasima/v4/PN_zRfyxp2f1fUCgAPg7pTw.ttf" + }, + { + "family": "Aguafina Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/aguafinascript/v22/If2QXTv_ZzSxGIO30LemWEOmt1bHqs4pgicOrg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/aguafinascript/v22/If2QXTv_ZzSxGIO30LemWEOmt1b3q8Qt.ttf" + }, + { + "family": "Akatab", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "tifinagh" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/akatab/v7/VuJwdNrK3Z7gqJEPWIz5NIh-YA.ttf", + "500": "https://fonts.gstatic.com/s/akatab/v7/VuJzdNrK3Z7gqJE3rKXdPKNiaRpFvg.ttf", + "600": "https://fonts.gstatic.com/s/akatab/v7/VuJzdNrK3Z7gqJE3gKLdPKNiaRpFvg.ttf", + "700": "https://fonts.gstatic.com/s/akatab/v7/VuJzdNrK3Z7gqJE35KPdPKNiaRpFvg.ttf", + "800": "https://fonts.gstatic.com/s/akatab/v7/VuJzdNrK3Z7gqJE3-KDdPKNiaRpFvg.ttf", + "900": "https://fonts.gstatic.com/s/akatab/v7/VuJzdNrK3Z7gqJE33KHdPKNiaRpFvg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/akatab/v7/VuJwdNrK3Z7gqJE_WYb9.ttf" + }, + { + "family": "Akaya Kanadaka", + "variants": [ + "regular" + ], + "subsets": [ + "kannada", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/akayakanadaka/v16/N0bM2S5CPO5oOQqvazoRRb-8-PfRS5VBBSSF.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/akayakanadaka/v16/N0bM2S5CPO5oOQqvazoRRb-8-MfQQZE.ttf" + }, + { + "family": "Akaya Telivigala", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "telugu" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/akayatelivigala/v22/lJwc-oo_iG9wXqU3rCTD395tp0uifdLdsIH0YH8.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/akayatelivigala/v22/lJwc-oo_iG9wXqU3rCTD395tp0uiTdPXtA.ttf" + }, + { + "family": "Akronim", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/akronim/v23/fdN-9sqWtWZZlHRp-gBxkFYN-a8.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/akronim/v23/fdN-9sqWtWZZlHRpygF7lA.ttf" + }, + { + "family": "Akshar", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSSgFy9CY94XsnPc.ttf", + "regular": "https://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSXYFy9CY94XsnPc.ttf", + "500": "https://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSUQFy9CY94XsnPc.ttf", + "600": "https://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSagCy9CY94XsnPc.ttf", + "700": "https://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSZECy9CY94XsnPc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/akshar/v9/Yq6I-LyHWTfz9rGoqDaUbHvhkAUsSXYF-9GS8w.ttf" + }, + { + "family": "Aladin", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/aladin/v24/ZgNSjPJFPrvJV5f16Sf4pGT2Ng.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/aladin/v24/ZgNSjPJFPrvJV5fF6C38.ttf" + }, + { + "family": "Alata", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/alata/v11/PbytFmztEwbIofe6xKcRQEOX.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alata/v11/PbytFmztEwbIoce7zqM.ttf" + }, + { + "family": "Alatsi", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alatsi/v13/TK3iWkUJAxQ2nLNGHjUHte5fKg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alatsi/v13/TK3iWkUJAxQ2nLN2Hz8D.ttf" + }, + { + "family": "Albert Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHq5L_rI32TxAj1g.ttf", + "200": "https://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHK5P_rI32TxAj1g.ttf", + "300": "https://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSH9ZP_rI32TxAj1g.ttf", + "regular": "https://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHq5P_rI32TxAj1g.ttf", + "500": "https://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHmZP_rI32TxAj1g.ttf", + "600": "https://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHdZT_rI32TxAj1g.ttf", + "700": "https://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHTJT_rI32TxAj1g.ttf", + "800": "https://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHK5T_rI32TxAj1g.ttf", + "900": "https://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHApT_rI32TxAj1g.ttf", + "100italic": "https://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9AX7ofybRUz1r5t.ttf", + "200italic": "https://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9CX74fybRUz1r5t.ttf", + "300italic": "https://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9BJ74fybRUz1r5t.ttf", + "italic": "https://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9AX74fybRUz1r5t.ttf", + "500italic": "https://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9Al74fybRUz1r5t.ttf", + "600italic": "https://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9DJ6IfybRUz1r5t.ttf", + "700italic": "https://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9Dw6IfybRUz1r5t.ttf", + "800italic": "https://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9CX6IfybRUz1r5t.ttf", + "900italic": "https://fonts.gstatic.com/s/albertsans/v1/i7dfIFdwYjGaAMFtZd_QA1Zeelmy79QJ1HOSY9C-6IfybRUz1r5t.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/albertsans/v1/i7dZIFdwYjGaAMFtZd_QA3xXSKZqhr-TenSHq5PPrYfy.ttf" + }, + { + "family": "Aldrich", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/aldrich/v21/MCoTzAn-1s3IGyJMZaAS3pP5H_E.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/aldrich/v21/MCoTzAn-1s3IGyJMVaEY2g.ttf" + }, + { + "family": "Alef", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "hebrew", + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alef/v21/FeVfS0NQpLYgrjJbC5FxxbU.ttf", + "700": "https://fonts.gstatic.com/s/alef/v21/FeVQS0NQpLYglo50L5la2bxii28.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alef/v21/FeVfS0NQpLYgnjNRDw.ttf" + }, + { + "family": "Alegreya", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v36", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/alegreya/v36/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNG9hUI_KCisSGVrw.ttf", + "500": "https://fonts.gstatic.com/s/alegreya/v36/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGxBUI_KCisSGVrw.ttf", + "600": "https://fonts.gstatic.com/s/alegreya/v36/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGKBII_KCisSGVrw.ttf", + "700": "https://fonts.gstatic.com/s/alegreya/v36/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGERII_KCisSGVrw.ttf", + "800": "https://fonts.gstatic.com/s/alegreya/v36/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGdhII_KCisSGVrw.ttf", + "900": "https://fonts.gstatic.com/s/alegreya/v36/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNGXxII_KCisSGVrw.ttf", + "italic": "https://fonts.gstatic.com/s/alegreya/v36/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlbgv6qmkySFr9V9.ttf", + "500italic": "https://fonts.gstatic.com/s/alegreya/v36/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlbSv6qmkySFr9V9.ttf", + "600italic": "https://fonts.gstatic.com/s/alegreya/v36/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlY-uKqmkySFr9V9.ttf", + "700italic": "https://fonts.gstatic.com/s/alegreya/v36/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlYHuKqmkySFr9V9.ttf", + "800italic": "https://fonts.gstatic.com/s/alegreya/v36/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlZguKqmkySFr9V9.ttf", + "900italic": "https://fonts.gstatic.com/s/alegreya/v36/4UaSrEBBsBhlBjvfkSLk3abBFkvpkARTPlZJuKqmkySFr9V9.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alegreya/v36/4UacrEBBsBhlBjvfkQjt71kZfyBzPgNG9hU4_aqm.ttf" + }, + { + "family": "Alegreya SC", + "variants": [ + "regular", + "italic", + "500", + "500italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alegreyasc/v25/taiOGmRtCJ62-O0HhNEa-a6o05E5abe_.ttf", + "italic": "https://fonts.gstatic.com/s/alegreyasc/v25/taiMGmRtCJ62-O0HhNEa-Z6q2ZUbbKe_DGs.ttf", + "500": "https://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZZc-rUxQqu2FXKD.ttf", + "500italic": "https://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4WEySK-UEGKDBz4.ttf", + "700": "https://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZYU_LUxQqu2FXKD.ttf", + "700italic": "https://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4Sk0SK-UEGKDBz4.ttf", + "800": "https://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZYI_7UxQqu2FXKD.ttf", + "800italic": "https://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4TU3SK-UEGKDBz4.ttf", + "900": "https://fonts.gstatic.com/s/alegreyasc/v25/taiTGmRtCJ62-O0HhNEa-ZYs_rUxQqu2FXKD.ttf", + "900italic": "https://fonts.gstatic.com/s/alegreyasc/v25/taiRGmRtCJ62-O0HhNEa-Z6q4RE2SK-UEGKDBz4.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alegreyasc/v25/taiOGmRtCJ62-O0HhNEa-Z6p2ZU.ttf" + }, + { + "family": "Alegreya Sans", + "variants": [ + "100", + "100italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v25", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUt9_-1phKLFgshYDvh6Vwt5TltuGdShm5bsg.ttf", + "100italic": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUv9_-1phKLFgshYDvh6Vwt7V9V3G1WpGtLsgu7.ttf", + "300": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUu9_-1phKLFgshYDvh6Vwt5fFPmE18imdCqxI.ttf", + "300italic": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUo9_-1phKLFgshYDvh6Vwt7V9VFE92jkVHuxKiBA.ttf", + "regular": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUz9_-1phKLFgshYDvh6Vwt3V1nvEVXlm4.ttf", + "italic": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUt9_-1phKLFgshYDvh6Vwt7V9tuGdShm5bsg.ttf", + "500": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUu9_-1phKLFgshYDvh6Vwt5alOmE18imdCqxI.ttf", + "500italic": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUo9_-1phKLFgshYDvh6Vwt7V9VTE52jkVHuxKiBA.ttf", + "700": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUu9_-1phKLFgshYDvh6Vwt5eFImE18imdCqxI.ttf", + "700italic": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUo9_-1phKLFgshYDvh6Vwt7V9VBEh2jkVHuxKiBA.ttf", + "800": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUu9_-1phKLFgshYDvh6Vwt5f1LmE18imdCqxI.ttf", + "800italic": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUo9_-1phKLFgshYDvh6Vwt7V9VGEt2jkVHuxKiBA.ttf", + "900": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUu9_-1phKLFgshYDvh6Vwt5dlKmE18imdCqxI.ttf", + "900italic": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUo9_-1phKLFgshYDvh6Vwt7V9VPEp2jkVHuxKiBA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alegreyasans/v25/5aUz9_-1phKLFgshYDvh6Vwt7VxtuA.ttf" + }, + { + "family": "Alegreya Sans SC", + "variants": [ + "100", + "100italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGn4-RGJqfMvt7P8FUr0Q1j-Hf1Dipl8g5FPYtmMg.ttf", + "100italic": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGl4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdlgRBH452Mvds.ttf", + "300": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DuJH0iRrMYJ_K-4.ttf", + "300italic": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdXiZhNaB6O-51OA.ttf", + "regular": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGh4-RGJqfMvt7P8FUr0Q1j-Hf1Nk5v9ixALYs.ttf", + "italic": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGn4-RGJqfMvt7P8FUr0Q1j-Hf1Bkxl8g5FPYtmMg.ttf", + "500": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DrpG0iRrMYJ_K-4.ttf", + "500italic": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdBidhNaB6O-51OA.ttf", + "700": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DvJA0iRrMYJ_K-4.ttf", + "700italic": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdTiFhNaB6O-51OA.ttf", + "800": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1Du5D0iRrMYJ_K-4.ttf", + "800italic": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxdUiJhNaB6O-51OA.ttf", + "900": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGm4-RGJqfMvt7P8FUr0Q1j-Hf1DspC0iRrMYJ_K-4.ttf", + "900italic": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGk4-RGJqfMvt7P8FUr0Q1j-Hf1BkxddiNhNaB6O-51OA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alegreyasanssc/v23/mtGh4-RGJqfMvt7P8FUr0Q1j-Hf1Bk9l8g.ttf" + }, + { + "family": "Aleo", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/aleo/v14/c4m61nF8G8_s6gHhIOX0IYBo_KJ3G2P9HI4qCBtJ.ttf", + "200": "https://fonts.gstatic.com/s/aleo/v14/c4m61nF8G8_s6gHhIOX0IYBo_KL3GmP9HI4qCBtJ.ttf", + "300": "https://fonts.gstatic.com/s/aleo/v14/c4m61nF8G8_s6gHhIOX0IYBo_KIpGmP9HI4qCBtJ.ttf", + "regular": "https://fonts.gstatic.com/s/aleo/v14/c4m61nF8G8_s6gHhIOX0IYBo_KJ3GmP9HI4qCBtJ.ttf", + "500": "https://fonts.gstatic.com/s/aleo/v14/c4m61nF8G8_s6gHhIOX0IYBo_KJFGmP9HI4qCBtJ.ttf", + "600": "https://fonts.gstatic.com/s/aleo/v14/c4m61nF8G8_s6gHhIOX0IYBo_KKpHWP9HI4qCBtJ.ttf", + "700": "https://fonts.gstatic.com/s/aleo/v14/c4m61nF8G8_s6gHhIOX0IYBo_KKQHWP9HI4qCBtJ.ttf", + "800": "https://fonts.gstatic.com/s/aleo/v14/c4m61nF8G8_s6gHhIOX0IYBo_KL3HWP9HI4qCBtJ.ttf", + "900": "https://fonts.gstatic.com/s/aleo/v14/c4m61nF8G8_s6gHhIOX0IYBo_KLeHWP9HI4qCBtJ.ttf", + "100italic": "https://fonts.gstatic.com/s/aleo/v14/c4m81nF8G8_swAjT3z2dShrG-7e_WYu_FooIDQtJbok.ttf", + "200italic": "https://fonts.gstatic.com/s/aleo/v14/c4m81nF8G8_swAjT3z2dShrG-7e_WQu-FooIDQtJbok.ttf", + "300italic": "https://fonts.gstatic.com/s/aleo/v14/c4m81nF8G8_swAjT3z2dShrG-7e_WdW-FooIDQtJbok.ttf", + "italic": "https://fonts.gstatic.com/s/aleo/v14/c4m81nF8G8_swAjT3z2dShrG-7e_WYu-FooIDQtJbok.ttf", + "500italic": "https://fonts.gstatic.com/s/aleo/v14/c4m81nF8G8_swAjT3z2dShrG-7e_Wbm-FooIDQtJbok.ttf", + "600italic": "https://fonts.gstatic.com/s/aleo/v14/c4m81nF8G8_swAjT3z2dShrG-7e_WVW5FooIDQtJbok.ttf", + "700italic": "https://fonts.gstatic.com/s/aleo/v14/c4m81nF8G8_swAjT3z2dShrG-7e_WWy5FooIDQtJbok.ttf", + "800italic": "https://fonts.gstatic.com/s/aleo/v14/c4m81nF8G8_swAjT3z2dShrG-7e_WQu5FooIDQtJbok.ttf", + "900italic": "https://fonts.gstatic.com/s/aleo/v14/c4m81nF8G8_swAjT3z2dShrG-7e_WSK5FooIDQtJbok.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/aleo/v14/c4m61nF8G8_s6gHhIOX0IYBo_KJ3GlP8Foo.ttf" + }, + { + "family": "Alex Brush", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alexbrush/v22/SZc83FzrJKuqFbwMKk6EtUL57DtOmCc.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alexbrush/v22/SZc83FzrJKuqFbwMKk6EhUPz6A.ttf" + }, + { + "family": "Alexandria", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9r7T6bHHJ8BRq0b.ttf", + "200": "https://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9p7TqbHHJ8BRq0b.ttf", + "300": "https://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9qlTqbHHJ8BRq0b.ttf", + "regular": "https://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9r7TqbHHJ8BRq0b.ttf", + "500": "https://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9rJTqbHHJ8BRq0b.ttf", + "600": "https://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9olSabHHJ8BRq0b.ttf", + "700": "https://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9ocSabHHJ8BRq0b.ttf", + "800": "https://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9p7SabHHJ8BRq0b.ttf", + "900": "https://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9pSSabHHJ8BRq0b.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alexandria/v3/UMBCrPdDqW66y0Y2usFeQCH18mulUxBvI9r7TpbGFps.ttf" + }, + { + "family": "Alfa Slab One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alfaslabone/v19/6NUQ8FmMKwSEKjnm5-4v-4Jh6dVretWvYmE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alfaslabone/v19/6NUQ8FmMKwSEKjnm5-4v-4Jh2dRhfg.ttf" + }, + { + "family": "Alice", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alice/v20/OpNCnoEEmtHa6FcJpA_chzJ0.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alice/v20/OpNCnoEEmtHa6GcIrgs.ttf" + }, + { + "family": "Alike", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alike/v21/HI_EiYEYI6BIoEjBSZXAQ4-d.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alike/v21/HI_EiYEYI6BIoHjAQ5E.ttf" + }, + { + "family": "Alike Angular", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alikeangular/v25/3qTrojWunjGQtEBlIcwMbSoI3kM6bB7FKjE.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alikeangular/v25/3qTrojWunjGQtEBlIcwMbSoI7kIwaA.ttf" + }, + { + "family": "Alkalami", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alkalami/v7/zOL_4pfDmqRL95WXi5eLw8BMuvhH.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alkalami/v7/zOL_4pfDmqRL95WXi6eKycQ.ttf" + }, + { + "family": "Alkatra", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "bengali", + "devanagari", + "latin", + "latin-ext", + "oriya" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48Medzngmu7cPrNDVemxE.ttf", + "500": "https://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48MedzngUu7cPrNDVemxE.ttf", + "600": "https://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48Medznj4vLcPrNDVemxE.ttf", + "700": "https://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48MedznjBvLcPrNDVemxE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alkatra/v3/r05EGLZA5qhCYsyJbuChFuK48Medzngmu4cOptQ.ttf" + }, + { + "family": "Allan", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/allan/v24/ea8XadU7WuTxEtb2P9SF8nZE.ttf", + "700": "https://fonts.gstatic.com/s/allan/v24/ea8aadU7WuTxEu5KEPCN2WpNgEKU.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/allan/v24/ea8XadU7WuTxEub3NdA.ttf" + }, + { + "family": "Allerta", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/allerta/v18/TwMO-IAHRlkbx940UnEdSQqO5uY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/allerta/v18/TwMO-IAHRlkbx940YnAXTQ.ttf" + }, + { + "family": "Allerta Stencil", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/allertastencil/v22/HTx0L209KT-LmIE9N7OR6eiycOeF-zz313DuvQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/allertastencil/v22/HTx0L209KT-LmIE9N7OR6eiycOe1-jbz.ttf" + }, + { + "family": "Allison", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/allison/v11/X7nl4b88AP2nkbvZOCaQ4MTgAgk.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/allison/v11/X7nl4b88AP2nkbvZCCea5A.ttf" + }, + { + "family": "Allura", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/allura/v21/9oRPNYsQpS4zjuAPjAIXPtrrGA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/allura/v21/9oRPNYsQpS4zjuA_jQgT.ttf" + }, + { + "family": "Almarai", + "variants": [ + "300", + "regular", + "700", + "800" + ], + "subsets": [ + "arabic", + "latin" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/almarai/v13/tssoApxBaigK_hnnS_anhnicoq72sXg.ttf", + "regular": "https://fonts.gstatic.com/s/almarai/v13/tsstApxBaigK_hnnc1qPonC3vqc.ttf", + "700": "https://fonts.gstatic.com/s/almarai/v13/tssoApxBaigK_hnnS-aghnicoq72sXg.ttf", + "800": "https://fonts.gstatic.com/s/almarai/v13/tssoApxBaigK_hnnS_qjhnicoq72sXg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/almarai/v13/tsstApxBaigK_hnnQ1uFpg.ttf" + }, + { + "family": "Almendra", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/almendra/v26/H4ckBXKAlMnTn0CskyY6wr-wg763.ttf", + "italic": "https://fonts.gstatic.com/s/almendra/v26/H4ciBXKAlMnTn0CskxY4yLuShq63czE.ttf", + "700": "https://fonts.gstatic.com/s/almendra/v26/H4cjBXKAlMnTn0Cskx6G7Zu4qKK-aihq.ttf", + "700italic": "https://fonts.gstatic.com/s/almendra/v26/H4chBXKAlMnTn0CskxY48Ae9oqacbzhqDtg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/almendra/v26/H4ckBXKAlMnTn0CskxY7yLs.ttf" + }, + { + "family": "Almendra Display", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v31", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/almendradisplay/v31/0FlPVOGWl1Sb4O3tETtADHRRlZhzXS_eTyer338.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/almendradisplay/v31/0FlPVOGWl1Sb4O3tETtADHRRlZhzbS7USw.ttf" + }, + { + "family": "Almendra SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/almendrasc/v29/Iure6Yx284eebowr7hbyTZZJprVA4XQ0.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/almendrasc/v29/Iure6Yx284eebowr7hbyTaZIrLE.ttf" + }, + { + "family": "Alumni Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/alumnisans/v18/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9OO5QqFsJ3C8qng.ttf", + "200": "https://fonts.gstatic.com/s/alumnisans/v18/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9uO9QqFsJ3C8qng.ttf", + "300": "https://fonts.gstatic.com/s/alumnisans/v18/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9Zu9QqFsJ3C8qng.ttf", + "regular": "https://fonts.gstatic.com/s/alumnisans/v18/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9OO9QqFsJ3C8qng.ttf", + "500": "https://fonts.gstatic.com/s/alumnisans/v18/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9Cu9QqFsJ3C8qng.ttf", + "600": "https://fonts.gstatic.com/s/alumnisans/v18/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd95uhQqFsJ3C8qng.ttf", + "700": "https://fonts.gstatic.com/s/alumnisans/v18/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd93-hQqFsJ3C8qng.ttf", + "800": "https://fonts.gstatic.com/s/alumnisans/v18/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9uOhQqFsJ3C8qng.ttf", + "900": "https://fonts.gstatic.com/s/alumnisans/v18/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9kehQqFsJ3C8qng.ttf", + "100italic": "https://fonts.gstatic.com/s/alumnisans/v18/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Ky46lEN_io6npfB.ttf", + "200italic": "https://fonts.gstatic.com/s/alumnisans/v18/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kw461EN_io6npfB.ttf", + "300italic": "https://fonts.gstatic.com/s/alumnisans/v18/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kzm61EN_io6npfB.ttf", + "italic": "https://fonts.gstatic.com/s/alumnisans/v18/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Ky461EN_io6npfB.ttf", + "500italic": "https://fonts.gstatic.com/s/alumnisans/v18/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8KyK61EN_io6npfB.ttf", + "600italic": "https://fonts.gstatic.com/s/alumnisans/v18/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kxm7FEN_io6npfB.ttf", + "700italic": "https://fonts.gstatic.com/s/alumnisans/v18/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kxf7FEN_io6npfB.ttf", + "800italic": "https://fonts.gstatic.com/s/alumnisans/v18/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8Kw47FEN_io6npfB.ttf", + "900italic": "https://fonts.gstatic.com/s/alumnisans/v18/nwpBtKqkOwdO2aOIwhWudG-g9QMylBJAV3Bo8KwR7FEN_io6npfB.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alumnisans/v18/nwpHtKqkOwdO2aOIwhWudEWpx_zq_Xna-Xd9OO9gqVEN.ttf" + }, + { + "family": "Alumni Sans Collegiate One", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alumnisanscollegiateone/v5/MQpB-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhjdayDiPw2ta.ttf", + "italic": "https://fonts.gstatic.com/s/alumnisanscollegiateone/v5/MQpD-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhgdYwjytxntaDFU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alumnisanscollegiateone/v5/MQpB-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhgdbwjw.ttf" + }, + { + "family": "Alumni Sans Inline One", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alumnisansinlineone/v5/RrQBbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpD3AZcr7xbYw.ttf", + "italic": "https://fonts.gstatic.com/s/alumnisansinlineone/v5/RrQDbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpP3ITdpz0fYxcrQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alumnisansinlineone/v5/RrQBbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpP3ETdg.ttf" + }, + { + "family": "Alumni Sans Pinstripe", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/alumnisanspinstripe/v6/ZgNNjOFFPq_AUJD1umyS30W-Xub8zD1ObhezYrVIpcDA5w.ttf", + "italic": "https://fonts.gstatic.com/s/alumnisanspinstripe/v6/ZgNDjOFFPq_AUJD1umyS30W-Xub8zD1ObheDYL9Mh8XQ5_cY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/alumnisanspinstripe/v6/ZgNNjOFFPq_AUJD1umyS30W-Xub8zD1ObheDY79M.ttf" + }, + { + "family": "Amarante", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/amarante/v28/xMQXuF1KTa6EvGx9bq-3C3rAmD-b.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/amarante/v28/xMQXuF1KTa6EvGx9bp-2AX4.ttf" + }, + { + "family": "Amaranth", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/amaranth/v18/KtkuALODe433f0j1zPnCF9GqwnzW.ttf", + "italic": "https://fonts.gstatic.com/s/amaranth/v18/KtkoALODe433f0j1zMnAHdWIx2zWD4I.ttf", + "700": "https://fonts.gstatic.com/s/amaranth/v18/KtkpALODe433f0j1zMF-OPWi6WDfFpuc.ttf", + "700italic": "https://fonts.gstatic.com/s/amaranth/v18/KtkrALODe433f0j1zMnAJWmn42T9E4ucRY8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/amaranth/v18/KtkuALODe433f0j1zMnDHdU.ttf" + }, + { + "family": "Amatic SC", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "cyrillic", + "hebrew", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/amaticsc/v26/TUZyzwprpvBS1izr_vO0De6ecZQf1A.ttf", + "700": "https://fonts.gstatic.com/s/amaticsc/v26/TUZ3zwprpvBS1izr_vOMscG6eb8D3WTy-A.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/amaticsc/v26/TUZyzwprpvBS1izr_vOEDOSa.ttf" + }, + { + "family": "Amethysta", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/amethysta/v16/rP2Fp2K15kgb_F3ibfWIGDWCBl0O8Q.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/amethysta/v16/rP2Fp2K15kgb_F3ibfW4GT-G.ttf" + }, + { + "family": "Amiko", + "variants": [ + "regular", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/amiko/v14/WwkQxPq1DFK04tqlc17MMZgJ.ttf", + "600": "https://fonts.gstatic.com/s/amiko/v14/WwkdxPq1DFK04uJ9XXrEGoQAUco5.ttf", + "700": "https://fonts.gstatic.com/s/amiko/v14/WwkdxPq1DFK04uIZXHrEGoQAUco5.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/amiko/v14/WwkQxPq1DFK04uqkeVo.ttf" + }, + { + "family": "Amiri", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/amiri/v27/J7aRnpd8CGxBHqUpvrIw74NL.ttf", + "italic": "https://fonts.gstatic.com/s/amiri/v27/J7afnpd8CGxBHpUrtLYS6pNLAjk.ttf", + "700": "https://fonts.gstatic.com/s/amiri/v27/J7acnpd8CGxBHp2VkZY4xJ9CGyAa.ttf", + "700italic": "https://fonts.gstatic.com/s/amiri/v27/J7aanpd8CGxBHpUrjAo9zptgHjAavCA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/amiri/v27/J7aRnpd8CGxBHpUotLY.ttf" + }, + { + "family": "Amiri Quran", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin" + ], + "version": "v14", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/amiriquran/v14/_Xmo-Hk0rD6DbUL4_vH8Zq5t7Cycsu-2.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/amiriquran/v14/_Xmo-Hk0rD6DbUL4_vH8Zp5s5ig.ttf", + "colorCapabilities": [ + "COLRv0", + "SVG" + ] + }, + { + "family": "Amita", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/amita/v18/HhyaU5si9Om7PQlvAfSKEZZL.ttf", + "700": "https://fonts.gstatic.com/s/amita/v18/HhyXU5si9Om7PTHTLtCCOopCTKkI.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/amita/v18/HhyaU5si9Om7PTluC_A.ttf" + }, + { + "family": "Anaheim", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/anaheim/v15/8vIX7w042Wp87g4Gy0_24JbCiPrl-h5sLqrFIkJQb7zU.ttf", + "500": "https://fonts.gstatic.com/s/anaheim/v15/8vIX7w042Wp87g4Gy0_24JbCiPrl-h5eLqrFIkJQb7zU.ttf", + "600": "https://fonts.gstatic.com/s/anaheim/v15/8vIX7w042Wp87g4Gy0_24JbCiPrl-h6yKarFIkJQb7zU.ttf", + "700": "https://fonts.gstatic.com/s/anaheim/v15/8vIX7w042Wp87g4Gy0_24JbCiPrl-h6LKarFIkJQb7zU.ttf", + "800": "https://fonts.gstatic.com/s/anaheim/v15/8vIX7w042Wp87g4Gy0_24JbCiPrl-h7sKarFIkJQb7zU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anaheim/v15/8vIX7w042Wp87g4Gy0_24JbCiPrl-h5sLprEKEY.ttf" + }, + { + "family": "Andada Pro", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/andadapro/v21/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DPJBY8cFLzvIt2S.ttf", + "500": "https://fonts.gstatic.com/s/andadapro/v21/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DP7BY8cFLzvIt2S.ttf", + "600": "https://fonts.gstatic.com/s/andadapro/v21/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DMXAo8cFLzvIt2S.ttf", + "700": "https://fonts.gstatic.com/s/andadapro/v21/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DMuAo8cFLzvIt2S.ttf", + "800": "https://fonts.gstatic.com/s/andadapro/v21/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DNJAo8cFLzvIt2S.ttf", + "italic": "https://fonts.gstatic.com/s/andadapro/v21/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRmdfHrjNJ82Stjw.ttf", + "500italic": "https://fonts.gstatic.com/s/andadapro/v21/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRlVfHrjNJ82Stjw.ttf", + "600italic": "https://fonts.gstatic.com/s/andadapro/v21/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRrlYHrjNJ82Stjw.ttf", + "700italic": "https://fonts.gstatic.com/s/andadapro/v21/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRoBYHrjNJ82Stjw.ttf", + "800italic": "https://fonts.gstatic.com/s/andadapro/v21/HhyGU5Qi9-SuOEhPe4LtAIxwRrn9L22O2yYBRudYHrjNJ82Stjw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/andadapro/v21/HhyEU5Qi9-SuOEhPe4LtKoVCuWGURPcg3DPJBb8dHrg.ttf" + }, + { + "family": "Andika", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/andika/v25/mem_Ya6iyW-LwqgAbbwRWrwGVA.ttf", + "italic": "https://fonts.gstatic.com/s/andika/v25/mem9Ya6iyW-Lwqgwb7YVeLkWVNBt.ttf", + "700": "https://fonts.gstatic.com/s/andika/v25/mem8Ya6iyW-Lwqg40ZM1UpcaXcl0Aw.ttf", + "700italic": "https://fonts.gstatic.com/s/andika/v25/mem6Ya6iyW-Lwqgwb46pV50ef8xkA76a.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/andika/v25/mem_Ya6iyW-LwqgwbLYV.ttf" + }, + { + "family": "Anek Bangla", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "bengali", + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anekbangla/v5/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofm9YIocg56yyvt0.ttf", + "200": "https://fonts.gstatic.com/s/anekbangla/v5/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofu9ZIocg56yyvt0.ttf", + "300": "https://fonts.gstatic.com/s/anekbangla/v5/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfjFZIocg56yyvt0.ttf", + "regular": "https://fonts.gstatic.com/s/anekbangla/v5/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofm9ZIocg56yyvt0.ttf", + "500": "https://fonts.gstatic.com/s/anekbangla/v5/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofl1ZIocg56yyvt0.ttf", + "600": "https://fonts.gstatic.com/s/anekbangla/v5/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfrFeIocg56yyvt0.ttf", + "700": "https://fonts.gstatic.com/s/anekbangla/v5/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3OfoheIocg56yyvt0.ttf", + "800": "https://fonts.gstatic.com/s/anekbangla/v5/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofu9eIocg56yyvt0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anekbangla/v5/_gPW1R38qTExHg-17BhM6n66QhabMYB0fBKONtHhRSIUIre5mq3Ofm9ZEoYq4w.ttf" + }, + { + "family": "Anek Devanagari", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDtk-9nFk0LjZ7E.ttf", + "200": "https://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLBtku9nFk0LjZ7E.ttf", + "300": "https://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLCzku9nFk0LjZ7E.ttf", + "regular": "https://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDtku9nFk0LjZ7E.ttf", + "500": "https://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDfku9nFk0LjZ7E.ttf", + "600": "https://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLAzle9nFk0LjZ7E.ttf", + "700": "https://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLAKle9nFk0LjZ7E.ttf", + "800": "https://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLBtle9nFk0LjZ7E.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anekdevanagari/v8/jVyo7nP0CGrUsxB-QiRgw0NlLaVt_QUAkYxLRoCL23mlh20ZVHOMAWbgHLDtkt9mHEk.ttf" + }, + { + "family": "Anek Gujarati", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0F5G7w0KgB7Lm7g.ttf", + "200": "https://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0l5C7w0KgB7Lm7g.ttf", + "300": "https://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0SZC7w0KgB7Lm7g.ttf", + "regular": "https://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0F5C7w0KgB7Lm7g.ttf", + "500": "https://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0JZC7w0KgB7Lm7g.ttf", + "600": "https://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0yZe7w0KgB7Lm7g.ttf", + "700": "https://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-08Je7w0KgB7Lm7g.ttf", + "800": "https://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0l5e7w0KgB7Lm7g.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anekgujarati/v9/l7g_bj5oysqknvkCo2T_8FuiIRBA7lncQUmbIBEtPKiYYQhRwyBxCD-0F5CLwkik.ttf" + }, + { + "family": "Anek Gurmukhi", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "gurmukhi", + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbd5ppXK41H6DjbA.ttf", + "200": "https://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkb95tpXK41H6DjbA.ttf", + "300": "https://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbKZtpXK41H6DjbA.ttf", + "regular": "https://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbd5tpXK41H6DjbA.ttf", + "500": "https://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbRZtpXK41H6DjbA.ttf", + "600": "https://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbqZxpXK41H6DjbA.ttf", + "700": "https://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbkJxpXK41H6DjbA.ttf", + "800": "https://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkb95xpXK41H6DjbA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anekgurmukhi/v8/0QIAMXRO_YSkA0quVLY79JnHybfeEOrXCa9Dmd9Ql6a6R_vEMc5TaLkbd5tZXaQx.ttf" + }, + { + "family": "Anek Kannada", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "kannada", + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anekkannada/v5/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFDEAukVReA1oef.ttf", + "200": "https://fonts.gstatic.com/s/anekkannada/v5/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dHDEQukVReA1oef.ttf", + "300": "https://fonts.gstatic.com/s/anekkannada/v5/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dEdEQukVReA1oef.ttf", + "regular": "https://fonts.gstatic.com/s/anekkannada/v5/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFDEQukVReA1oef.ttf", + "500": "https://fonts.gstatic.com/s/anekkannada/v5/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFxEQukVReA1oef.ttf", + "600": "https://fonts.gstatic.com/s/anekkannada/v5/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dGdFgukVReA1oef.ttf", + "700": "https://fonts.gstatic.com/s/anekkannada/v5/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dGkFgukVReA1oef.ttf", + "800": "https://fonts.gstatic.com/s/anekkannada/v5/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dHDFgukVReA1oef.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anekkannada/v5/raxcHiCNvNMKe1CKFsINYFlgkEIwGa8nL6ruWJg1j--h8pvBKSiw4dFDETulXxM.ttf" + }, + { + "family": "Anek Latin", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/aneklatin/v5/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuR7EZKdClWL3kgw.ttf", + "200": "https://fonts.gstatic.com/s/aneklatin/v5/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3Pux7AZKdClWL3kgw.ttf", + "300": "https://fonts.gstatic.com/s/aneklatin/v5/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuGbAZKdClWL3kgw.ttf", + "regular": "https://fonts.gstatic.com/s/aneklatin/v5/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuR7AZKdClWL3kgw.ttf", + "500": "https://fonts.gstatic.com/s/aneklatin/v5/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PudbAZKdClWL3kgw.ttf", + "600": "https://fonts.gstatic.com/s/aneklatin/v5/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PumbcZKdClWL3kgw.ttf", + "700": "https://fonts.gstatic.com/s/aneklatin/v5/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuoLcZKdClWL3kgw.ttf", + "800": "https://fonts.gstatic.com/s/aneklatin/v5/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3Pux7cZKdClWL3kgw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/aneklatin/v5/co3pmWZulTRoU4a8dqrWiajBS5ByUkvdrluH-xWG5uJTY4x-L3PuR7ApKNqh.ttf" + }, + { + "family": "Anek Malayalam", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "malayalam" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anekmalayalam/v6/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUZu_HMr5PDO71Qs.ttf", + "200": "https://fonts.gstatic.com/s/anekmalayalam/v6/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTURu-HMr5PDO71Qs.ttf", + "300": "https://fonts.gstatic.com/s/anekmalayalam/v6/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUcW-HMr5PDO71Qs.ttf", + "regular": "https://fonts.gstatic.com/s/anekmalayalam/v6/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUZu-HMr5PDO71Qs.ttf", + "500": "https://fonts.gstatic.com/s/anekmalayalam/v6/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUam-HMr5PDO71Qs.ttf", + "600": "https://fonts.gstatic.com/s/anekmalayalam/v6/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUUW5HMr5PDO71Qs.ttf", + "700": "https://fonts.gstatic.com/s/anekmalayalam/v6/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUXy5HMr5PDO71Qs.ttf", + "800": "https://fonts.gstatic.com/s/anekmalayalam/v6/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTURu5HMr5PDO71Qs.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anekmalayalam/v6/6qLjKZActRTs_mZAJUZWWkhke0nYa_vC8_Azq3-gP1SReZeOtqQuDVUTUZu-LMvzOA.ttf" + }, + { + "family": "Anek Odia", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "oriya" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anekodia/v6/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmZf63mXZAtm_es.ttf", + "200": "https://fonts.gstatic.com/s/anekodia/v6/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnkZfq3mXZAtm_es.ttf", + "300": "https://fonts.gstatic.com/s/anekodia/v6/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnnHfq3mXZAtm_es.ttf", + "regular": "https://fonts.gstatic.com/s/anekodia/v6/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmZfq3mXZAtm_es.ttf", + "500": "https://fonts.gstatic.com/s/anekodia/v6/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmrfq3mXZAtm_es.ttf", + "600": "https://fonts.gstatic.com/s/anekodia/v6/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnlHea3mXZAtm_es.ttf", + "700": "https://fonts.gstatic.com/s/anekodia/v6/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnl-ea3mXZAtm_es.ttf", + "800": "https://fonts.gstatic.com/s/anekodia/v6/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnkZea3mXZAtm_es.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anekodia/v6/TK3PWkoJARApz5UCd345tuevwwQX0CwsoYkAWgWYevAauivBUnmZfp3nV5Q.ttf" + }, + { + "family": "Anek Tamil", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNQiZ6q4v4oegjOQ.ttf", + "200": "https://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNwid6q4v4oegjOQ.ttf", + "300": "https://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNHCd6q4v4oegjOQ.ttf", + "regular": "https://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNQid6q4v4oegjOQ.ttf", + "500": "https://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNcCd6q4v4oegjOQ.ttf", + "600": "https://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNnCB6q4v4oegjOQ.ttf", + "700": "https://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNpSB6q4v4oegjOQ.ttf", + "800": "https://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNwiB6q4v4oegjOQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anektamil/v9/XLYJIZH2bYJHGYtPGSbUB8JKTp-_9n55SsLHW0WZez6TjtkDu3uNQidKqoH8.ttf" + }, + { + "family": "Anek Telugu", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "telugu" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13y-_oE2G2ep10_8.ttf", + "200": "https://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i136--oE2G2ep10_8.ttf", + "300": "https://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i133G-oE2G2ep10_8.ttf", + "regular": "https://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13y--oE2G2ep10_8.ttf", + "500": "https://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13x2-oE2G2ep10_8.ttf", + "600": "https://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13_G5oE2G2ep10_8.ttf", + "700": "https://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i138i5oE2G2ep10_8.ttf", + "800": "https://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i136-5oE2G2ep10_8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anektelugu/v8/LhWLMVrUNvsddMtYGCx4FcVWOjlwE1WgXdoJ-5XHMl2DkooGK7i13y--kEyM3Q.ttf" + }, + { + "family": "Angkor", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v32", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/angkor/v32/H4cmBXyAlsPdnlb-8iw-4Lqggw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/angkor/v32/H4cmBXyAlsPdnlbO8yY6.ttf" + }, + { + "family": "Annapurna SIL", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/annapurnasil/v2/yYLv0hDY0f2iu9tPmRWtllid8NN9dZT_PZs.ttf", + "700": "https://fonts.gstatic.com/s/annapurnasil/v2/yYLy0hDY0f2iu9tPmRWtllidyG9SUZzUIZJ008A.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/annapurnasil/v2/yYLv0hDY0f2iu9tPmRWtllidwNJ3cQ.ttf" + }, + { + "family": "Annie Use Your Telescope", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/annieuseyourtelescope/v18/daaLSS4tI2qYYl3Jq9s_Hu74xwktnlKxH6osGVGjlDfB3UUVZA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/annieuseyourtelescope/v18/daaLSS4tI2qYYl3Jq9s_Hu74xwktnlKxH6osGVGTlT3F.ttf" + }, + { + "family": "Anonymous Pro", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "greek", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/anonymouspro/v21/rP2Bp2a15UIB7Un-bOeISG3pLlw89CH98Ko.ttf", + "italic": "https://fonts.gstatic.com/s/anonymouspro/v21/rP2fp2a15UIB7Un-bOeISG3pHl428AP44Kqr2Q.ttf", + "700": "https://fonts.gstatic.com/s/anonymouspro/v21/rP2cp2a15UIB7Un-bOeISG3pFuAT0CnW7KOywKo.ttf", + "700italic": "https://fonts.gstatic.com/s/anonymouspro/v21/rP2ap2a15UIB7Un-bOeISG3pHl4OTCzc6IG30KqB9Q.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anonymouspro/v21/rP2Bp2a15UIB7Un-bOeISG3pHl028A.ttf" + }, + { + "family": "Anta", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/anta/v1/gyBzhwQ3KsIyZFwxPFimIo0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anta/v1/gyBzhwQ3KsIyVF07OA.ttf" + }, + { + "family": "Antic", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/antic/v19/TuGfUVB8XY5DRaZLodgzydtk.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/antic/v19/TuGfUVB8XY5DRZZKq9w.ttf" + }, + { + "family": "Antic Didone", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/anticdidone/v16/RWmPoKKX6u8sp8fIWdnDKqDiqYsGBGBzCw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anticdidone/v16/RWmPoKKX6u8sp8fIWdnDKqDSqIEC.ttf" + }, + { + "family": "Antic Slab", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/anticslab/v16/bWt97fPFfRzkCa9Jlp6IWcJWXW5p5Qo.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anticslab/v16/bWt97fPFfRzkCa9Jlp6IacNcWQ.ttf" + }, + { + "family": "Anton", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/anton/v25/1Ptgg87LROyAm0K08i4gS7lu.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anton/v25/1Ptgg87LROyAm3K1-Co.ttf" + }, + { + "family": "Anton SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/antonsc/v1/4UaBrEBBsgltGn71sxLmzanB44N1.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/antonsc/v1/4UaBrEBBsgltGn71syLnx60.ttf" + }, + { + "family": "Antonio", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/antonio/v19/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxx8BtIY2DwSXlM.ttf", + "200": "https://fonts.gstatic.com/s/antonio/v19/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVzx8RtIY2DwSXlM.ttf", + "300": "https://fonts.gstatic.com/s/antonio/v19/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVwv8RtIY2DwSXlM.ttf", + "regular": "https://fonts.gstatic.com/s/antonio/v19/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxx8RtIY2DwSXlM.ttf", + "500": "https://fonts.gstatic.com/s/antonio/v19/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxD8RtIY2DwSXlM.ttf", + "600": "https://fonts.gstatic.com/s/antonio/v19/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVyv9htIY2DwSXlM.ttf", + "700": "https://fonts.gstatic.com/s/antonio/v19/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVyW9htIY2DwSXlM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/antonio/v19/gNMbW3NwSYq_9WD34ngK5F8vR8T0PVxx8StJaWQ.ttf" + }, + { + "family": "Anuphan", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anuphan/v4/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkY9A4kGmW927Gu.ttf", + "200": "https://fonts.gstatic.com/s/anuphan/v4/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCmY9Q4kGmW927Gu.ttf", + "300": "https://fonts.gstatic.com/s/anuphan/v4/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZClG9Q4kGmW927Gu.ttf", + "regular": "https://fonts.gstatic.com/s/anuphan/v4/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkY9Q4kGmW927Gu.ttf", + "500": "https://fonts.gstatic.com/s/anuphan/v4/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkq9Q4kGmW927Gu.ttf", + "600": "https://fonts.gstatic.com/s/anuphan/v4/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCnG8g4kGmW927Gu.ttf", + "700": "https://fonts.gstatic.com/s/anuphan/v4/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCn_8g4kGmW927Gu.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anuphan/v4/2sDBZGxYgY7LkLT0s2Yrm5UhuLoIZCkY9T4lEGE.ttf" + }, + { + "family": "Anybody", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/anybody/v11/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J12HPrsXD_nBPpQ.ttf", + "200": "https://fonts.gstatic.com/s/anybody/v11/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JV2DPrsXD_nBPpQ.ttf", + "300": "https://fonts.gstatic.com/s/anybody/v11/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JiWDPrsXD_nBPpQ.ttf", + "regular": "https://fonts.gstatic.com/s/anybody/v11/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J12DPrsXD_nBPpQ.ttf", + "500": "https://fonts.gstatic.com/s/anybody/v11/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J5WDPrsXD_nBPpQ.ttf", + "600": "https://fonts.gstatic.com/s/anybody/v11/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JCWfPrsXD_nBPpQ.ttf", + "700": "https://fonts.gstatic.com/s/anybody/v11/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JMGfPrsXD_nBPpQ.ttf", + "800": "https://fonts.gstatic.com/s/anybody/v11/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JV2fPrsXD_nBPpQ.ttf", + "900": "https://fonts.gstatic.com/s/anybody/v11/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4JfmfPrsXD_nBPpQ.ttf", + "100italic": "https://fonts.gstatic.com/s/anybody/v11/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMn7M_H3HVfpcHY.ttf", + "200italic": "https://fonts.gstatic.com/s/anybody/v11/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOn7c_H3HVfpcHY.ttf", + "300italic": "https://fonts.gstatic.com/s/anybody/v11/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyN57c_H3HVfpcHY.ttf", + "italic": "https://fonts.gstatic.com/s/anybody/v11/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMn7c_H3HVfpcHY.ttf", + "500italic": "https://fonts.gstatic.com/s/anybody/v11/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyMV7c_H3HVfpcHY.ttf", + "600italic": "https://fonts.gstatic.com/s/anybody/v11/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyP56s_H3HVfpcHY.ttf", + "700italic": "https://fonts.gstatic.com/s/anybody/v11/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyPA6s_H3HVfpcHY.ttf", + "800italic": "https://fonts.gstatic.com/s/anybody/v11/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOn6s_H3HVfpcHY.ttf", + "900italic": "https://fonts.gstatic.com/s/anybody/v11/VuJddNvK2Ib2ppdWSKTHN4GOiYrmuF7VpPiuQ9r6sTRMJGkcHyOO6s_H3HVfpcHY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/anybody/v11/VuJbdNvK2Ib2ppdWYq311GH32hxIv0sd5grncSUi2F_Wim4J12D_r8_H.ttf" + }, + { + "family": "Aoboshi One", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/aoboshione/v11/Gg8xN5kXaAXtHQrFxwl10ysLBmZX_UEg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/aoboshione/v11/Gg8xN5kXaAXtHQrFxwl10xsKDGI.ttf" + }, + { + "family": "Arapey", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arapey/v16/-W__XJn-UDDA2RC6Z9AcZkIzeg.ttf", + "italic": "https://fonts.gstatic.com/s/arapey/v16/-W_9XJn-UDDA2RCKZdoYREcjeo0k.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arapey/v16/-W__XJn-UDDA2RCKZtoY.ttf" + }, + { + "family": "Arbutus", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arbutus/v28/NaPYcZ7dG_5J3poob9JtryO8fMU.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arbutus/v28/NaPYcZ7dG_5J3pooX9Nnqw.ttf" + }, + { + "family": "Arbutus Slab", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arbutusslab/v16/oY1Z8e7OuLXkJGbXtr5ba7ZVa68dJlaFAQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arbutusslab/v16/oY1Z8e7OuLXkJGbXtr5ba7ZlaqUZ.ttf" + }, + { + "family": "Architects Daughter", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/architectsdaughter/v18/KtkxAKiDZI_td1Lkx62xHZHDtgO_Y-bvfY5q4szgE-Q.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/architectsdaughter/v18/KtkxAKiDZI_td1Lkx62xHZHDtgO_Y-bvTY9g5g.ttf" + }, + { + "family": "Archivo", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/archivo/v19/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTNDJp8B1oJ0vyVQ.ttf", + "200": "https://fonts.gstatic.com/s/archivo/v19/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTtDNp8B1oJ0vyVQ.ttf", + "300": "https://fonts.gstatic.com/s/archivo/v19/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTajNp8B1oJ0vyVQ.ttf", + "regular": "https://fonts.gstatic.com/s/archivo/v19/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTNDNp8B1oJ0vyVQ.ttf", + "500": "https://fonts.gstatic.com/s/archivo/v19/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTBjNp8B1oJ0vyVQ.ttf", + "600": "https://fonts.gstatic.com/s/archivo/v19/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTT6jRp8B1oJ0vyVQ.ttf", + "700": "https://fonts.gstatic.com/s/archivo/v19/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTT0zRp8B1oJ0vyVQ.ttf", + "800": "https://fonts.gstatic.com/s/archivo/v19/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTtDRp8B1oJ0vyVQ.ttf", + "900": "https://fonts.gstatic.com/s/archivo/v19/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTnTRp8B1oJ0vyVQ.ttf", + "100italic": "https://fonts.gstatic.com/s/archivo/v19/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCBshdsBU7iVdxQ.ttf", + "200italic": "https://fonts.gstatic.com/s/archivo/v19/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HABsxdsBU7iVdxQ.ttf", + "300italic": "https://fonts.gstatic.com/s/archivo/v19/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HDfsxdsBU7iVdxQ.ttf", + "italic": "https://fonts.gstatic.com/s/archivo/v19/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCBsxdsBU7iVdxQ.ttf", + "500italic": "https://fonts.gstatic.com/s/archivo/v19/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HCzsxdsBU7iVdxQ.ttf", + "600italic": "https://fonts.gstatic.com/s/archivo/v19/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HBftBdsBU7iVdxQ.ttf", + "700italic": "https://fonts.gstatic.com/s/archivo/v19/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HBmtBdsBU7iVdxQ.ttf", + "800italic": "https://fonts.gstatic.com/s/archivo/v19/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HABtBdsBU7iVdxQ.ttf", + "900italic": "https://fonts.gstatic.com/s/archivo/v19/k3k8o8UDI-1M0wlSfdzyIEkpwTM29hr-8mTYIRyOSVz60_PG_HAotBdsBU7iVdxQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/archivo/v19/k3k6o8UDI-1M0wlSV9XAw6lQkqWY8Q82sJaRE-NWIDdgffTTNDNZ8Rds.ttf" + }, + { + "family": "Archivo Black", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/archivoblack/v21/HTxqL289NzCGg4MzN6KJ7eW6OYuP_x7yx3A.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/archivoblack/v21/HTxqL289NzCGg4MzN6KJ7eW6CYqF-w.ttf" + }, + { + "family": "Archivo Narrow", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v30", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/archivonarrow/v30/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvLFGKpHOtFCQ76Q.ttf", + "500": "https://fonts.gstatic.com/s/archivonarrow/v30/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvHlGKpHOtFCQ76Q.ttf", + "600": "https://fonts.gstatic.com/s/archivonarrow/v30/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhv8laKpHOtFCQ76Q.ttf", + "700": "https://fonts.gstatic.com/s/archivonarrow/v30/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvy1aKpHOtFCQ76Q.ttf", + "italic": "https://fonts.gstatic.com/s/archivonarrow/v30/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BJi53mpNiEr6T6Y.ttf", + "500italic": "https://fonts.gstatic.com/s/archivonarrow/v30/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BJQ53mpNiEr6T6Y.ttf", + "600italic": "https://fonts.gstatic.com/s/archivonarrow/v30/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BK84HmpNiEr6T6Y.ttf", + "700italic": "https://fonts.gstatic.com/s/archivonarrow/v30/tss7ApVBdCYD5Q7hcxTE1ArZ0bb1k3JSLwe1hB965BKF4HmpNiEr6T6Y.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/archivonarrow/v30/tss5ApVBdCYD5Q7hcxTE1ArZ0Zz8oY2KRmwvKhhvLFG6pXmp.ttf" + }, + { + "family": "Are You Serious", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/areyouserious/v12/ll8kK2GVSSr-PtjQ5nONVcNn4306hT9nCGRayg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/areyouserious/v12/ll8kK2GVSSr-PtjQ5nONVcNn430KhDVj.ttf" + }, + { + "family": "Aref Ruqaa", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arefruqaa/v25/WwkbxPW1E165rajQKDulEIAiVNo5xNY.ttf", + "700": "https://fonts.gstatic.com/s/arefruqaa/v25/WwkYxPW1E165rajQKDulKDwNcNIS2N_7Bdk.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arefruqaa/v25/WwkbxPW1E165rajQKDulIIEoUA.ttf" + }, + { + "family": "Aref Ruqaa Ink", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arefruqaaink/v10/1q2fY5WOGUFlt84GTOkP6Kdx72ThVIGpgnxL.ttf", + "700": "https://fonts.gstatic.com/s/arefruqaaink/v10/1q2cY5WOGUFlt84GTOkP6Kdx71xde6WhqWBCyxWn.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arefruqaaink/v10/1q2fY5WOGUFlt84GTOkP6Kdx71TgXoU.ttf", + "colorCapabilities": [ + "COLRv1", + "SVG" + ] + }, + { + "family": "Arima", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "greek", + "greek-ext", + "latin", + "latin-ext", + "malayalam", + "tamil", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1YTE-pQGOyYw2fw.ttf", + "200": "https://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX14TA-pQGOyYw2fw.ttf", + "300": "https://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1PzA-pQGOyYw2fw.ttf", + "regular": "https://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1YTA-pQGOyYw2fw.ttf", + "500": "https://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1UzA-pQGOyYw2fw.ttf", + "600": "https://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1vzc-pQGOyYw2fw.ttf", + "700": "https://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1hjc-pQGOyYw2fw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arima/v5/neIWzCqmt4Aup_qE1nFWqxI1RZX1YTAOpAuK.ttf" + }, + { + "family": "Arimo", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "hebrew", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arimo/v29/P5sfzZCDf9_T_3cV7NCUECyoxNk37cxsBxDAVQI4aA.ttf", + "500": "https://fonts.gstatic.com/s/arimo/v29/P5sfzZCDf9_T_3cV7NCUECyoxNk338xsBxDAVQI4aA.ttf", + "600": "https://fonts.gstatic.com/s/arimo/v29/P5sfzZCDf9_T_3cV7NCUECyoxNk3M8tsBxDAVQI4aA.ttf", + "700": "https://fonts.gstatic.com/s/arimo/v29/P5sfzZCDf9_T_3cV7NCUECyoxNk3CstsBxDAVQI4aA.ttf", + "italic": "https://fonts.gstatic.com/s/arimo/v29/P5sdzZCDf9_T_10c3i9MeUcyat4iJY-ERBrEdwcoaKww.ttf", + "500italic": "https://fonts.gstatic.com/s/arimo/v29/P5sdzZCDf9_T_10c3i9MeUcyat4iJY-2RBrEdwcoaKww.ttf", + "600italic": "https://fonts.gstatic.com/s/arimo/v29/P5sdzZCDf9_T_10c3i9MeUcyat4iJY9aQxrEdwcoaKww.ttf", + "700italic": "https://fonts.gstatic.com/s/arimo/v29/P5sdzZCDf9_T_10c3i9MeUcyat4iJY9jQxrEdwcoaKww.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arimo/v29/P5sfzZCDf9_T_3cV7NCUECyoxNk37cxcBhrE.ttf" + }, + { + "family": "Arizonia", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arizonia/v21/neIIzCemt4A5qa7mv6WGHK06UY30.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arizonia/v21/neIIzCemt4A5qa7mv5WHFqk.ttf" + }, + { + "family": "Armata", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/armata/v20/gokvH63_HV5jQ-E9lD53Q2u_mQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/armata/v20/gokvH63_HV5jQ-ENlTRz.ttf" + }, + { + "family": "Arsenal", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arsenal/v12/wXKrE3kQtZQ4pF3D11_WAewrhXY.ttf", + "italic": "https://fonts.gstatic.com/s/arsenal/v12/wXKpE3kQtZQ4pF3D513cBc4ulXYrtA.ttf", + "700": "https://fonts.gstatic.com/s/arsenal/v12/wXKuE3kQtZQ4pF3D7-P5JeQAmX8yrdk.ttf", + "700italic": "https://fonts.gstatic.com/s/arsenal/v12/wXKsE3kQtZQ4pF3D513kueEKnV03vdnKjw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arsenal/v12/wXKrE3kQtZQ4pF3D517cBQ.ttf" + }, + { + "family": "Arsenal SC", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arsenalsc/v1/x3dlckLHea6e5BEtsfxiXNossybsHQI.ttf", + "italic": "https://fonts.gstatic.com/s/arsenalsc/v1/x3dnckLHea6e5BEtsfxibNgmtwTpDQIrGg.ttf", + "700": "https://fonts.gstatic.com/s/arsenalsc/v1/x3dmckLHea6e5BEtsfxiZGYDly7HAQsyA2Y.ttf", + "700italic": "https://fonts.gstatic.com/s/arsenalsc/v1/x3d4ckLHea6e5BEtsfxibNgeCyvNBSk3E2YljQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arsenalsc/v1/x3dlckLHea6e5BEtsfxibNsmtw.ttf" + }, + { + "family": "Artifika", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/artifika/v21/VEMyRoxzronptCuxu6Wt5jDtreOL.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/artifika/v21/VEMyRoxzronptCuxu5Ws7DQ.ttf" + }, + { + "family": "Arvo", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arvo/v22/tDbD2oWUg0MKmSAa7Lzr7vs.ttf", + "italic": "https://fonts.gstatic.com/s/arvo/v22/tDbN2oWUg0MKqSIQ6J7u_vvijQ.ttf", + "700": "https://fonts.gstatic.com/s/arvo/v22/tDbM2oWUg0MKoZw1yLTA8vL7lAE.ttf", + "700italic": "https://fonts.gstatic.com/s/arvo/v22/tDbO2oWUg0MKqSIoVLHK9tD-hAHkGg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arvo/v22/tDbD2oWUg0MKqSEQ6A.ttf" + }, + { + "family": "Arya", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/arya/v19/ga6CawNG-HJd9Ub1-beqdFE.ttf", + "700": "https://fonts.gstatic.com/s/arya/v19/ga6NawNG-HJdzfra3b-BaFg3dRE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/arya/v19/ga6CawNG-HJdxUf__Q.ttf" + }, + { + "family": "Asap", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v30", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/asap/v30/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYkqQsLmOXoA7Glw.ttf", + "200": "https://fonts.gstatic.com/s/asap/v30/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYEqUsLmOXoA7Glw.ttf", + "300": "https://fonts.gstatic.com/s/asap/v30/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYzKUsLmOXoA7Glw.ttf", + "regular": "https://fonts.gstatic.com/s/asap/v30/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYkqUsLmOXoA7Glw.ttf", + "500": "https://fonts.gstatic.com/s/asap/v30/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYoKUsLmOXoA7Glw.ttf", + "600": "https://fonts.gstatic.com/s/asap/v30/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYTKIsLmOXoA7Glw.ttf", + "700": "https://fonts.gstatic.com/s/asap/v30/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYdaIsLmOXoA7Glw.ttf", + "800": "https://fonts.gstatic.com/s/asap/v30/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYEqIsLmOXoA7Glw.ttf", + "900": "https://fonts.gstatic.com/s/asap/v30/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYO6IsLmOXoA7Glw.ttf", + "100italic": "https://fonts.gstatic.com/s/asap/v30/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWubEbGmTggvWl0Qn.ttf", + "200italic": "https://fonts.gstatic.com/s/asap/v30/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZEbWmTggvWl0Qn.ttf", + "300italic": "https://fonts.gstatic.com/s/asap/v30/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuaabWmTggvWl0Qn.ttf", + "italic": "https://fonts.gstatic.com/s/asap/v30/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWubEbWmTggvWl0Qn.ttf", + "500italic": "https://fonts.gstatic.com/s/asap/v30/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWub2bWmTggvWl0Qn.ttf", + "600italic": "https://fonts.gstatic.com/s/asap/v30/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuYaammTggvWl0Qn.ttf", + "700italic": "https://fonts.gstatic.com/s/asap/v30/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuYjammTggvWl0Qn.ttf", + "800italic": "https://fonts.gstatic.com/s/asap/v30/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZEammTggvWl0Qn.ttf", + "900italic": "https://fonts.gstatic.com/s/asap/v30/KFOMCniXp96ayz4E7kSn66aGLdTylUAMQXC89YmC2DPNWuZtammTggvWl0Qn.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/asap/v30/KFOOCniXp96a4Tc2DaTeuDAoKsE617JFc49knOIYdjTYkqUcL2mT.ttf" + }, + { + "family": "Asap Condensed", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO9DSWlEgGqgp-pO.ttf", + "200italic": "https://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUIFFim6CovpOkXA.ttf", + "300": "https://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO8nSmlEgGqgp-pO.ttf", + "300italic": "https://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUOVGim6CovpOkXA.ttf", + "regular": "https://fonts.gstatic.com/s/asapcondensed/v17/pxidypY1o9NHyXh3WvSbGSggdNeLYk1Mq3ap.ttf", + "italic": "https://fonts.gstatic.com/s/asapcondensed/v17/pxifypY1o9NHyXh3WvSbGSggdOeJaElurmapvvM.ttf", + "500": "https://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO9_S2lEgGqgp-pO.ttf", + "500italic": "https://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUL1Him6CovpOkXA.ttf", + "600": "https://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO9TTGlEgGqgp-pO.ttf", + "600italic": "https://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUJFAim6CovpOkXA.ttf", + "700": "https://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO83TWlEgGqgp-pO.ttf", + "700italic": "https://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUPVBim6CovpOkXA.ttf", + "800": "https://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO8rTmlEgGqgp-pO.ttf", + "800italic": "https://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUOlCim6CovpOkXA.ttf", + "900": "https://fonts.gstatic.com/s/asapcondensed/v17/pxieypY1o9NHyXh3WvSbGSggdO8PT2lEgGqgp-pO.ttf", + "900italic": "https://fonts.gstatic.com/s/asapcondensed/v17/pxiYypY1o9NHyXh3WvSbGSggdOeJUM1Dim6CovpOkXA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/asapcondensed/v17/pxidypY1o9NHyXh3WvSbGSggdOeKaEk.ttf" + }, + { + "family": "Asar", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/asar/v22/sZlLdRyI6TBIXkYQDLlTW6E.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/asar/v22/sZlLdRyI6TBIbkcaCA.ttf" + }, + { + "family": "Asset", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/asset/v29/SLXGc1na-mM4cWImRJqExst1.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/asset/v29/SLXGc1na-mM4cVInTp4.ttf" + }, + { + "family": "Assistant", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/assistant/v19/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtmZnEGGf3qGuvM4.ttf", + "300": "https://fonts.gstatic.com/s/assistant/v19/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtrhnEGGf3qGuvM4.ttf", + "regular": "https://fonts.gstatic.com/s/assistant/v19/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtuZnEGGf3qGuvM4.ttf", + "500": "https://fonts.gstatic.com/s/assistant/v19/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQttRnEGGf3qGuvM4.ttf", + "600": "https://fonts.gstatic.com/s/assistant/v19/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtjhgEGGf3qGuvM4.ttf", + "700": "https://fonts.gstatic.com/s/assistant/v19/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtgFgEGGf3qGuvM4.ttf", + "800": "https://fonts.gstatic.com/s/assistant/v19/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtmZgEGGf3qGuvM4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/assistant/v19/2sDPZGJYnIjSi6H75xkZZE1I0yCmYzzQtuZnIGCV2g.ttf" + }, + { + "family": "Astloch", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/astloch/v26/TuGRUVJ8QI5GSeUjq9wRzMtkH1Q.ttf", + "700": "https://fonts.gstatic.com/s/astloch/v26/TuGUUVJ8QI5GSeUjk2A-6MNPA10xLMQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/astloch/v26/TuGRUVJ8QI5GSeUjm90byA.ttf" + }, + { + "family": "Asul", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/asul/v21/VuJ-dNjKxYr46fMFXK78JIg.ttf", + "700": "https://fonts.gstatic.com/s/asul/v21/VuJxdNjKxYr40U8qeKbXOIFneRo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/asul/v21/VuJ-dNjKxYr42fIPWA.ttf" + }, + { + "family": "Athiti", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wAxDNyAv2-C99ycg.ttf", + "300": "https://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wAoDByAv2-C99ycg.ttf", + "regular": "https://fonts.gstatic.com/s/athiti/v12/pe0vMISdLIZIv1w4DBhWCtaiAg.ttf", + "500": "https://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wA-DFyAv2-C99ycg.ttf", + "600": "https://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wA1DZyAv2-C99ycg.ttf", + "700": "https://fonts.gstatic.com/s/athiti/v12/pe0sMISdLIZIv1wAsDdyAv2-C99ycg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/athiti/v12/pe0vMISdLIZIv1wIDRJS.ttf" + }, + { + "family": "Atkinson Hyperlegible", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt23C1KxNDXMspQ1lPyU89-1h6ONRlW45GE5ZgpewSSbQ.ttf", + "italic": "https://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt43C1KxNDXMspQ1lPyU89-1h6ONRlW45G055ItWQGCbUWn.ttf", + "700": "https://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt73C1KxNDXMspQ1lPyU89-1h6ONRlW45G8WbcNcy-OZFy-FA.ttf", + "700italic": "https://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt93C1KxNDXMspQ1lPyU89-1h6ONRlW45G056qRdiWKRlmuFH24.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/atkinsonhyperlegible/v11/9Bt23C1KxNDXMspQ1lPyU89-1h6ONRlW45G05JIt.ttf" + }, + { + "family": "Atma", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "bengali", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo8JzKjc9PvedRkM.ttf", + "regular": "https://fonts.gstatic.com/s/atma/v16/uK_84rqWc-Eom25bDj8WIv4.ttf", + "500": "https://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo5pyKjc9PvedRkM.ttf", + "600": "https://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo7Z1Kjc9PvedRkM.ttf", + "700": "https://fonts.gstatic.com/s/atma/v16/uK_z4rqWc-Eoo9J0Kjc9PvedRkM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/atma/v16/uK_84rqWc-Eoq29RCg.ttf" + }, + { + "family": "Atomic Age", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/atomicage/v27/f0Xz0eug6sdmRFkYZZGL58Ht9a8GYeA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/atomicage/v27/f0Xz0eug6sdmRFkYZZGL18Dn8Q.ttf" + }, + { + "family": "Aubrey", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/aubrey/v28/q5uGsou7NPBw-p7vugNsCxVEgA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/aubrey/v28/q5uGsou7NPBw-p7fuwlo.ttf" + }, + { + "family": "Audiowide", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/audiowide/v20/l7gdbjpo0cum0ckerWCtkQXPExpQBw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/audiowide/v20/l7gdbjpo0cum0ckerWCdkA_L.ttf" + }, + { + "family": "Autour One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/autourone/v24/UqyVK80cP25l3fJgbdfbk5lWVscxdKE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/autourone/v24/UqyVK80cP25l3fJgbdfbo5hcUg.ttf" + }, + { + "family": "Average", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/average/v18/fC1hPYBHe23MxA7rIeJwVWytTyk.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/average/v18/fC1hPYBHe23MxA7rEeN6UQ.ttf" + }, + { + "family": "Average Sans", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/averagesans/v16/1Ptpg8fLXP2dlAXR-HlJJNJPBdqazVoK4A.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/averagesans/v16/1Ptpg8fLXP2dlAXR-HlJJNJ_BNCe.ttf" + }, + { + "family": "Averia Gruesa Libre", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/averiagruesalibre/v22/NGSov4nEGEktOaDRKsY-1dhh8eEtIx3ZUmmJw0SLRA8.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/averiagruesalibre/v22/NGSov4nEGEktOaDRKsY-1dhh8eEtIx3ZYmiDxw.ttf" + }, + { + "family": "Averia Libre", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/averialibre/v16/2V0FKIcMGZEnV6xygz7eNjEarovtb07t-pQgTw.ttf", + "300italic": "https://fonts.gstatic.com/s/averialibre/v16/2V0HKIcMGZEnV6xygz7eNjESAJFhbUTp2JEwT4Sk.ttf", + "regular": "https://fonts.gstatic.com/s/averialibre/v16/2V0aKIcMGZEnV6xygz7eNjEiAqPJZ2Xx8w.ttf", + "italic": "https://fonts.gstatic.com/s/averialibre/v16/2V0EKIcMGZEnV6xygz7eNjESAKnNRWDh8405.ttf", + "700": "https://fonts.gstatic.com/s/averialibre/v16/2V0FKIcMGZEnV6xygz7eNjEavoztb07t-pQgTw.ttf", + "700italic": "https://fonts.gstatic.com/s/averialibre/v16/2V0HKIcMGZEnV6xygz7eNjESAJFxakTp2JEwT4Sk.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/averialibre/v16/2V0aKIcMGZEnV6xygz7eNjESA6nN.ttf" + }, + { + "family": "Averia Sans Libre", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/averiasanslibre/v19/ga6SaxZG_G5OvCf_rt7FH3B6BHLMEd3lMKcQJZP1LmD9.ttf", + "300italic": "https://fonts.gstatic.com/s/averiasanslibre/v19/ga6caxZG_G5OvCf_rt7FH3B6BHLMEdVLKisSL5fXK3D9qtg.ttf", + "regular": "https://fonts.gstatic.com/s/averiasanslibre/v19/ga6XaxZG_G5OvCf_rt7FH3B6BHLMEeVJGIMYDo_8.ttf", + "italic": "https://fonts.gstatic.com/s/averiasanslibre/v19/ga6RaxZG_G5OvCf_rt7FH3B6BHLMEdVLEoc6C5_8N3k.ttf", + "700": "https://fonts.gstatic.com/s/averiasanslibre/v19/ga6SaxZG_G5OvCf_rt7FH3B6BHLMEd31N6cQJZP1LmD9.ttf", + "700italic": "https://fonts.gstatic.com/s/averiasanslibre/v19/ga6caxZG_G5OvCf_rt7FH3B6BHLMEdVLKjsVL5fXK3D9qtg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/averiasanslibre/v19/ga6XaxZG_G5OvCf_rt7FH3B6BHLMEdVIEoc.ttf" + }, + { + "family": "Averia Serif Libre", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/averiaseriflibre/v18/neIVzD2ms4wxr6GvjeD0X88SHPyX2xYGCSmqwacqdrKvbQ.ttf", + "300italic": "https://fonts.gstatic.com/s/averiaseriflibre/v18/neIbzD2ms4wxr6GvjeD0X88SHPyX2xYOpzMmw60uVLe_bXHq.ttf", + "regular": "https://fonts.gstatic.com/s/averiaseriflibre/v18/neIWzD2ms4wxr6GvjeD0X88SHPyX2xY-pQGOyYw2fw.ttf", + "italic": "https://fonts.gstatic.com/s/averiaseriflibre/v18/neIUzD2ms4wxr6GvjeD0X88SHPyX2xYOpwuK64kmf6u2.ttf", + "700": "https://fonts.gstatic.com/s/averiaseriflibre/v18/neIVzD2ms4wxr6GvjeD0X88SHPyX2xYGGS6qwacqdrKvbQ.ttf", + "700italic": "https://fonts.gstatic.com/s/averiaseriflibre/v18/neIbzD2ms4wxr6GvjeD0X88SHPyX2xYOpzM2xK0uVLe_bXHq.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/averiaseriflibre/v18/neIWzD2ms4wxr6GvjeD0X88SHPyX2xYOpAuK.ttf" + }, + { + "family": "Azeret Mono", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfnPRh0raa-5s3AA.ttf", + "200": "https://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfHPVh0raa-5s3AA.ttf", + "300": "https://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfwvVh0raa-5s3AA.ttf", + "regular": "https://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfnPVh0raa-5s3AA.ttf", + "500": "https://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfrvVh0raa-5s3AA.ttf", + "600": "https://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfQvJh0raa-5s3AA.ttf", + "700": "https://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfe_Jh0raa-5s3AA.ttf", + "800": "https://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfHPJh0raa-5s3AA.ttf", + "900": "https://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfNfJh0raa-5s3AA.ttf", + "100italic": "https://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLaJkLye2Z4nAN7J.ttf", + "200italic": "https://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYJkbye2Z4nAN7J.ttf", + "300italic": "https://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLbXkbye2Z4nAN7J.ttf", + "italic": "https://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLaJkbye2Z4nAN7J.ttf", + "500italic": "https://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLa7kbye2Z4nAN7J.ttf", + "600italic": "https://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLZXlrye2Z4nAN7J.ttf", + "700italic": "https://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLZulrye2Z4nAN7J.ttf", + "800italic": "https://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYJlrye2Z4nAN7J.ttf", + "900italic": "https://fonts.gstatic.com/s/azeretmono/v17/3XF_ErsiyJsY9O_Gepph-HHkf_fUKCzX1EOKVLYglrye2Z4nAN7J.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/azeretmono/v17/3XF5ErsiyJsY9O_Gepph-FvtTQgMQUdNekSfnPVR07ye.ttf" + }, + { + "family": "B612", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/b612/v12/3JnySDDxiSz32jm4GDigUXw.ttf", + "italic": "https://fonts.gstatic.com/s/b612/v12/3Jn8SDDxiSz36juyHBqlQXwdVw.ttf", + "700": "https://fonts.gstatic.com/s/b612/v12/3Jn9SDDxiSz34oWXPDCLTXUETuE.ttf", + "700italic": "https://fonts.gstatic.com/s/b612/v12/3Jn_SDDxiSz36juKoDWBSVcBXuFb0Q.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/b612/v12/3JnySDDxiSz36jiyHA.ttf" + }, + { + "family": "B612 Mono", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/b612mono/v14/kmK_Zq85QVWbN1eW6lJl1wTcquRTtg.ttf", + "italic": "https://fonts.gstatic.com/s/b612mono/v14/kmK5Zq85QVWbN1eW6lJV1Q7YiOFDtqtf.ttf", + "700": "https://fonts.gstatic.com/s/b612mono/v14/kmK6Zq85QVWbN1eW6lJdayv4os9Pv7JGSg.ttf", + "700italic": "https://fonts.gstatic.com/s/b612mono/v14/kmKkZq85QVWbN1eW6lJV1TZkp8VLnbdWSg4x.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/b612mono/v14/kmK_Zq85QVWbN1eW6lJV1g7Y.ttf" + }, + { + "family": "BIZ UDGothic", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "cyrillic", + "greek-ext", + "japanese", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bizudgothic/v12/daafSTouBF7RUjnbt8p3LuKttQN98z_MbQ.ttf", + "700": "https://fonts.gstatic.com/s/bizudgothic/v12/daaASTouBF7RUjnbt8p3LuKVCSxZ-xTQZMhbaA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bizudgothic/v12/daafSTouBF7RUjnbt8p3LuKdtAl5.ttf" + }, + { + "family": "BIZ UDMincho", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "cyrillic", + "greek-ext", + "japanese", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bizudmincho/v11/EJRRQgI6eOxFjBdKs38yhtW1dwT7rcpY8Q.ttf", + "700": "https://fonts.gstatic.com/s/bizudmincho/v11/EJROQgI6eOxFjBdKs38yhtWNyyvfpeFE-IyCrw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bizudmincho/v11/EJRRQgI6eOxFjBdKs38yhtWFdg7_.ttf" + }, + { + "family": "BIZ UDPGothic", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "cyrillic", + "greek-ext", + "japanese", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bizudpgothic/v14/hES36X5pHAIBjmS84VL0Bue83nUMQWkMUAk.ttf", + "700": "https://fonts.gstatic.com/s/bizudpgothic/v14/hESq6X5pHAIBjmS84VL0Bue85skjZWEnTABCSQo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bizudpgothic/v14/hES36X5pHAIBjmS84VL0Bue87nQGRQ.ttf" + }, + { + "family": "BIZ UDPMincho", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "cyrillic", + "greek-ext", + "japanese", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bizudpmincho/v11/ypvfbXOBrmYppy7oWWTg1_58nhhYtUb0gZk.ttf", + "700": "https://fonts.gstatic.com/s/bizudpmincho/v11/ypvCbXOBrmYppy7oWWTg1_58pqR3kU7fnZAy57k.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bizudpmincho/v11/ypvfbXOBrmYppy7oWWTg1_58rhlSsQ.ttf" + }, + { + "family": "Babylonica", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/babylonica/v5/5aUw9_i2qxWVCAE2aHjTqDJ0-VVMoEw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/babylonica/v5/5aUw9_i2qxWVCAE2aHjTmDN-_Q.ttf" + }, + { + "family": "Bacasime Antique", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bacasimeantique/v1/tDbX2pGXkFYEykldjZSrmI6T_XWZOwStSUrV_BE.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bacasimeantique/v1/tDbX2pGXkFYEykldjZSrmI6T_XWZCwWnTQ.ttf" + }, + { + "family": "Bad Script", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/badscript/v16/6NUT8F6PJgbFWQn47_x7lOwuzd1AZtw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/badscript/v16/6NUT8F6PJgbFWQn47_x7pO0kyQ.ttf" + }, + { + "family": "Bagel Fat One", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/bagelfatone/v1/hYkPPucsQOr5dy02WmQr5Zkd0B5mvv0dSbM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bagelfatone/v1/hYkPPucsQOr5dy02WmQr5Zkd4B9sug.ttf" + }, + { + "family": "Bahiana", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bahiana/v23/uU9PCBUV4YenPWJU7xPb3vyHmlI.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bahiana/v23/uU9PCBUV4YenPWJU3xLR2g.ttf" + }, + { + "family": "Bahianita", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bahianita/v21/yYLr0hTb3vuqqsBUgxWtxTvV2NJPcA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bahianita/v21/yYLr0hTb3vuqqsBUgxWdxDHR.ttf" + }, + { + "family": "Bai Jamjuree", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa0kePuk5A1-yiSgA.ttf", + "200italic": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_oGkpox2S2CgOva.ttf", + "300": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa09eDuk5A1-yiSgA.ttf", + "300italic": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_pikZox2S2CgOva.ttf", + "regular": "https://fonts.gstatic.com/s/baijamjuree/v11/LDI1apSCOBt_aeQQ7ftydoaMWcjKm7sp8g.ttf", + "italic": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIrapSCOBt_aeQQ7ftydoa8W8LOub458jGL.ttf", + "500": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa0reHuk5A1-yiSgA.ttf", + "500italic": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_o6kJox2S2CgOva.ttf", + "600": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa0gebuk5A1-yiSgA.ttf", + "600italic": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_oWl5ox2S2CgOva.ttf", + "700": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIqapSCOBt_aeQQ7ftydoa05efuk5A1-yiSgA.ttf", + "700italic": "https://fonts.gstatic.com/s/baijamjuree/v11/LDIoapSCOBt_aeQQ7ftydoa8W_pylpox2S2CgOva.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baijamjuree/v11/LDI1apSCOBt_aeQQ7ftydoa8WMLO.ttf" + }, + { + "family": "Bakbak One", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bakbakone/v8/zOL54pXAl6RI-p_ardnuycRuv-hHkOs.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bakbakone/v8/zOL54pXAl6RI-p_ardnu-cVkuw.ttf" + }, + { + "family": "Ballet", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ballet/v27/QGYyz_MYZA-HM4NjuGOVnUEXme1I4Xi3C4G-EiAou6Y.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ballet/v27/QGYyz_MYZA-HM4NjuGOVnUEXme1I4Xi3O4C0Fg.ttf" + }, + { + "family": "Baloo 2", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/baloo2/v21/wXK0E3kTposypRydzVT08TS3JnAmtdgazapv9Fat7WcN.ttf", + "500": "https://fonts.gstatic.com/s/baloo2/v21/wXK0E3kTposypRydzVT08TS3JnAmtdgozapv9Fat7WcN.ttf", + "600": "https://fonts.gstatic.com/s/baloo2/v21/wXK0E3kTposypRydzVT08TS3JnAmtdjEyqpv9Fat7WcN.ttf", + "700": "https://fonts.gstatic.com/s/baloo2/v21/wXK0E3kTposypRydzVT08TS3JnAmtdj9yqpv9Fat7WcN.ttf", + "800": "https://fonts.gstatic.com/s/baloo2/v21/wXK0E3kTposypRydzVT08TS3JnAmtdiayqpv9Fat7WcN.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baloo2/v21/wXK0E3kTposypRydzVT08TS3JnAmtdgazZpu_lI.ttf" + }, + { + "family": "Baloo Bhai 2", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/baloobhai2/v28/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNighMXeCo-jsZzo.ttf", + "500": "https://fonts.gstatic.com/s/baloobhai2/v28/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNhohMXeCo-jsZzo.ttf", + "600": "https://fonts.gstatic.com/s/baloobhai2/v28/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNvYmMXeCo-jsZzo.ttf", + "700": "https://fonts.gstatic.com/s/baloobhai2/v28/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNs8mMXeCo-jsZzo.ttf", + "800": "https://fonts.gstatic.com/s/baloobhai2/v28/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNqgmMXeCo-jsZzo.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baloobhai2/v28/sZlWdRSL-z1VEWZ4YNA7Y5ItevYWUOHDE8FvNighAXaIpw.ttf" + }, + { + "family": "Baloo Bhaijaan 2", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/baloobhaijaan2/v19/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TyRSqP4L4ppfcyC.ttf", + "500": "https://fonts.gstatic.com/s/baloobhaijaan2/v19/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TyjSqP4L4ppfcyC.ttf", + "600": "https://fonts.gstatic.com/s/baloobhaijaan2/v19/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TxPTaP4L4ppfcyC.ttf", + "700": "https://fonts.gstatic.com/s/baloobhaijaan2/v19/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8Tx2TaP4L4ppfcyC.ttf", + "800": "https://fonts.gstatic.com/s/baloobhaijaan2/v19/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TwRTaP4L4ppfcyC.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baloobhaijaan2/v19/zYXwKUwuEqdVGqM8tPDdAA_Y-_bMKo1EhQd2tWxo8TyRSpP5JY4.ttf" + }, + { + "family": "Baloo Bhaina 2", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "oriya", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/baloobhaina2/v27/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEssPvRfRLYWmZSA.ttf", + "500": "https://fonts.gstatic.com/s/baloobhaina2/v27/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEgMPvRfRLYWmZSA.ttf", + "600": "https://fonts.gstatic.com/s/baloobhaina2/v27/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEbMTvRfRLYWmZSA.ttf", + "700": "https://fonts.gstatic.com/s/baloobhaina2/v27/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEVcTvRfRLYWmZSA.ttf", + "800": "https://fonts.gstatic.com/s/baloobhaina2/v27/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEMsTvRfRLYWmZSA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baloobhaina2/v27/qWc-B6yyq4P9Adr3RtoX1q6ySgbwusXwJjkOS-XEssPfRP5P.ttf" + }, + { + "family": "Baloo Chettan 2", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "malayalam", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/baloochettan2/v21/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CeKTO1oeH9xI2gc.ttf", + "500": "https://fonts.gstatic.com/s/baloochettan2/v21/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CdCTO1oeH9xI2gc.ttf", + "600": "https://fonts.gstatic.com/s/baloochettan2/v21/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CTyUO1oeH9xI2gc.ttf", + "700": "https://fonts.gstatic.com/s/baloochettan2/v21/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CQWUO1oeH9xI2gc.ttf", + "800": "https://fonts.gstatic.com/s/baloochettan2/v21/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CWKUO1oeH9xI2gc.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baloochettan2/v21/vm8hdRbmXEva26PK-NtuX4ynWEzF69-L4gqgkIL5CeKTC1sUGw.ttf" + }, + { + "family": "Baloo Da 2", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "bengali", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/balooda2/v24/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjALsTNe55aRa7UE.ttf", + "500": "https://fonts.gstatic.com/s/balooda2/v24/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjA5sTNe55aRa7UE.ttf", + "600": "https://fonts.gstatic.com/s/balooda2/v24/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjDVtjNe55aRa7UE.ttf", + "700": "https://fonts.gstatic.com/s/balooda2/v24/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjDstjNe55aRa7UE.ttf", + "800": "https://fonts.gstatic.com/s/balooda2/v24/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjCLtjNe55aRa7UE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/balooda2/v24/2-c39J9j0IaUMQZwAJyJaOX1UUnf3GLnYjALsQNf7ZI.ttf" + }, + { + "family": "Baloo Paaji 2", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "gurmukhi", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/baloopaaji2/v27/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9AX74fybRUz1r5t.ttf", + "500": "https://fonts.gstatic.com/s/baloopaaji2/v27/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9Al74fybRUz1r5t.ttf", + "600": "https://fonts.gstatic.com/s/baloopaaji2/v27/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9DJ6IfybRUz1r5t.ttf", + "700": "https://fonts.gstatic.com/s/baloopaaji2/v27/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9Dw6IfybRUz1r5t.ttf", + "800": "https://fonts.gstatic.com/s/baloopaaji2/v27/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9CX6IfybRUz1r5t.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baloopaaji2/v27/i7dfIFFzbz-QHZUdV9_UGWZuelmy79QJ1HOSY9AX77fzZxE.ttf" + }, + { + "family": "Baloo Tamma 2", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "kannada", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/balootamma2/v16/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMscPp-0IF71SGC5.ttf", + "500": "https://fonts.gstatic.com/s/balootamma2/v16/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMsuPp-0IF71SGC5.ttf", + "600": "https://fonts.gstatic.com/s/balootamma2/v16/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMvCOZ-0IF71SGC5.ttf", + "700": "https://fonts.gstatic.com/s/balootamma2/v16/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMv7OZ-0IF71SGC5.ttf", + "800": "https://fonts.gstatic.com/s/balootamma2/v16/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMucOZ-0IF71SGC5.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/balootamma2/v16/vEFE2_hCAgcR46PaajtrYlBbVUMUJgIC5LHTrMscPq-1Klo.ttf" + }, + { + "family": "Baloo Tammudu 2", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "telugu", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/balootammudu2/v23/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_Jf8e4c6PZSlGmAA.ttf", + "500": "https://fonts.gstatic.com/s/balootammudu2/v23/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_Jc0e4c6PZSlGmAA.ttf", + "600": "https://fonts.gstatic.com/s/balootammudu2/v23/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JSEZ4c6PZSlGmAA.ttf", + "700": "https://fonts.gstatic.com/s/balootammudu2/v23/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JRgZ4c6PZSlGmAA.ttf", + "800": "https://fonts.gstatic.com/s/balootammudu2/v23/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_JX8Z4c6PZSlGmAA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/balootammudu2/v23/1Pt5g8TIS_SAmkLguUdFP8UaJcKkzlPmMT00GaE_Jf8e0c-FYQ.ttf" + }, + { + "family": "Baloo Thambi 2", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/baloothambi2/v17/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKzcIzaQRG_n4osQ.ttf", + "500": "https://fonts.gstatic.com/s/baloothambi2/v17/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbK_8IzaQRG_n4osQ.ttf", + "600": "https://fonts.gstatic.com/s/baloothambi2/v17/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKE8UzaQRG_n4osQ.ttf", + "700": "https://fonts.gstatic.com/s/baloothambi2/v17/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKKsUzaQRG_n4osQ.ttf", + "800": "https://fonts.gstatic.com/s/baloothambi2/v17/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKTcUzaQRG_n4osQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baloothambi2/v17/cY9RfjeOW0NHpmOQXranrbDyu5JMJmNp-aDvUBbKzcIDaA5C.ttf" + }, + { + "family": "Balsamiq Sans", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/balsamiqsans/v14/P5sEzZiAbNrN8SB3lQQX7Pnc8dkdIYdNHzs.ttf", + "italic": "https://fonts.gstatic.com/s/balsamiqsans/v14/P5sazZiAbNrN8SB3lQQX7PncwdsXJaVIDzvcXA.ttf", + "700": "https://fonts.gstatic.com/s/balsamiqsans/v14/P5sZzZiAbNrN8SB3lQQX7PncyWUyBY9mAzLFRQI.ttf", + "700italic": "https://fonts.gstatic.com/s/balsamiqsans/v14/P5sfzZiAbNrN8SB3lQQX7PncwdsvmYpsBxDAVQI4aA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/balsamiqsans/v14/P5sEzZiAbNrN8SB3lQQX7PncwdgXJQ.ttf" + }, + { + "family": "Balthazar", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/balthazar/v17/d6lKkaajS8Gm4CVQjFEvyRTo39l8hw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/balthazar/v17/d6lKkaajS8Gm4CVQjFEfyB7s.ttf" + }, + { + "family": "Bangers", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bangers/v24/FeVQS0BTqb0h60ACL5la2bxii28.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bangers/v24/FeVQS0BTqb0h60ACH5hQ3Q.ttf" + }, + { + "family": "Barlow", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/barlow/v12/7cHrv4kjgoGqM7E3b8s8yn4hnCci.ttf", + "100italic": "https://fonts.gstatic.com/s/barlow/v12/7cHtv4kjgoGqM7E_CfNYwHoDmTcibrA.ttf", + "200": "https://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3w-oc4FAtlT47dw.ttf", + "200italic": "https://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfP04Voptzsrd6m9.ttf", + "300": "https://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3p-kc4FAtlT47dw.ttf", + "300italic": "https://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfOQ4loptzsrd6m9.ttf", + "regular": "https://fonts.gstatic.com/s/barlow/v12/7cHpv4kjgoGqM7EPC8E46HsxnA.ttf", + "italic": "https://fonts.gstatic.com/s/barlow/v12/7cHrv4kjgoGqM7E_Ccs8yn4hnCci.ttf", + "500": "https://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3_-gc4FAtlT47dw.ttf", + "500italic": "https://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfPI41optzsrd6m9.ttf", + "600": "https://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E30-8c4FAtlT47dw.ttf", + "600italic": "https://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfPk5Foptzsrd6m9.ttf", + "700": "https://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3t-4c4FAtlT47dw.ttf", + "700italic": "https://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfOA5Voptzsrd6m9.ttf", + "800": "https://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3q-0c4FAtlT47dw.ttf", + "800italic": "https://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfOc5loptzsrd6m9.ttf", + "900": "https://fonts.gstatic.com/s/barlow/v12/7cHqv4kjgoGqM7E3j-wc4FAtlT47dw.ttf", + "900italic": "https://fonts.gstatic.com/s/barlow/v12/7cHsv4kjgoGqM7E_CfO451optzsrd6m9.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/barlow/v12/7cHpv4kjgoGqM7E_Css8.ttf" + }, + { + "family": "Barlow Condensed", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxxL3I-JCGChYJ8VI-L6OO_au7B43LT31vytKgbaw.ttf", + "100italic": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxzL3I-JCGChYJ8VI-L6OO_au7B6xTru1H2lq0La6JN.ttf", + "200": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B497y_3HcuKECcrs.ttf", + "200italic": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrF3DWvIMHYrtUxg.ttf", + "300": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B47rx_3HcuKECcrs.ttf", + "300italic": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrc3PWvIMHYrtUxg.ttf", + "regular": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTx3L3I-JCGChYJ8VI-L6OO_au7B2xbZ23n3pKg.ttf", + "italic": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxxL3I-JCGChYJ8VI-L6OO_au7B6xTT31vytKgbaw.ttf", + "500": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B4-Lw_3HcuKECcrs.ttf", + "500italic": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrK3LWvIMHYrtUxg.ttf", + "600": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B4873_3HcuKECcrs.ttf", + "600italic": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrB3XWvIMHYrtUxg.ttf", + "700": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B46r2_3HcuKECcrs.ttf", + "700italic": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrY3TWvIMHYrtUxg.ttf", + "800": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B47b1_3HcuKECcrs.ttf", + "800italic": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrf3fWvIMHYrtUxg.ttf", + "900": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxwL3I-JCGChYJ8VI-L6OO_au7B45L0_3HcuKECcrs.ttf", + "900italic": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTxyL3I-JCGChYJ8VI-L6OO_au7B6xTrW3bWvIMHYrtUxg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/barlowcondensed/v12/HTx3L3I-JCGChYJ8VI-L6OO_au7B6xfT3w.ttf" + }, + { + "family": "Barlow Semi Condensed", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfG4qvKk8ogoSP.ttf", + "100italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpjgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbLLIEsKh5SPZWs.ttf", + "200": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRft6uPAGEki52WfA.ttf", + "200italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJnAWsgqZiGfHK5.ttf", + "300": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf06iPAGEki52WfA.ttf", + "300italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIDAmsgqZiGfHK5.ttf", + "regular": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRnf4CrCEo4gg.ttf", + "italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlphgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfYqvKk8ogoSP.ttf", + "500": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfi6mPAGEki52WfA.ttf", + "500italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJbA2sgqZiGfHK5.ttf", + "600": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfp66PAGEki52WfA.ttf", + "600italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbJ3BGsgqZiGfHK5.ttf", + "700": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRfw6-PAGEki52WfA.ttf", + "700italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbITBWsgqZiGfHK5.ttf", + "800": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf36yPAGEki52WfA.ttf", + "800italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIPBmsgqZiGfHK5.ttf", + "900": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpigxjLBV1hqnzfr-F8sEYMB0Yybp0mudRf-62PAGEki52WfA.ttf", + "900italic": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpkgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfbIrB2sgqZiGfHK5.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/barlowsemicondensed/v15/wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRXfoqv.ttf" + }, + { + "family": "Barriecito", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/barriecito/v17/WWXXlj-CbBOSLY2QTuY_KdUiYwTO0MU.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/barriecito/v17/WWXXlj-CbBOSLY2QTuY_GdQoZw.ttf" + }, + { + "family": "Barrio", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/barrio/v19/wEO8EBXBk8hBIDiEdQYhWdsX1Q.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/barrio/v19/wEO8EBXBk8hBIDi0dAwl.ttf" + }, + { + "family": "Basic", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/basic/v17/xfu_0WLxV2_XKQN34lDVyR7D.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/basic/v17/xfu_0WLxV2_XKTN26FQ.ttf" + }, + { + "family": "Baskervville", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/baskervville/v16/YA9Ur0yU4l_XOrogbkun3kQgt5OohvbJ9A.ttf", + "italic": "https://fonts.gstatic.com/s/baskervville/v16/YA9Kr0yU4l_XOrogbkun3kQQtZmspPPZ9Mlt.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baskervville/v16/YA9Ur0yU4l_XOrogbkun3kQQtpms.ttf" + }, + { + "family": "Baskervville SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/baskervvillesc/v1/X7n94bc_DeKlh6bBbk_WiKnBSUvR71R3tiSx0g.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baskervvillesc/v1/X7n94bc_DeKlh6bBbk_WiKnBSUvh7l5z.ttf" + }, + { + "family": "Battambang", + "variants": [ + "100", + "300", + "regular", + "700", + "900" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v24", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/battambang/v24/uk-kEGe7raEw-HjkzZabNhGp5w50_o9T7Q.ttf", + "300": "https://fonts.gstatic.com/s/battambang/v24/uk-lEGe7raEw-HjkzZabNtmLxyRa8oZK9I0.ttf", + "regular": "https://fonts.gstatic.com/s/battambang/v24/uk-mEGe7raEw-HjkzZabDnWj4yxx7o8.ttf", + "700": "https://fonts.gstatic.com/s/battambang/v24/uk-lEGe7raEw-HjkzZabNsmMxyRa8oZK9I0.ttf", + "900": "https://fonts.gstatic.com/s/battambang/v24/uk-lEGe7raEw-HjkzZabNvGOxyRa8oZK9I0.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/battambang/v24/uk-mEGe7raEw-HjkzZabPnSp5w.ttf" + }, + { + "family": "Baumans", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/baumans/v17/-W_-XJj9QyTd3QfpR_oyaksqY5Q.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/baumans/v17/-W_-XJj9QyTd3Qfpd_s4bg.ttf" + }, + { + "family": "Bayon", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v34", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/bayon/v34/9XUrlJNmn0LPFl-pOhYEd2NJ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bayon/v34/9XUrlJNmn0LPFm-oMBI.ttf" + }, + { + "family": "Be Vietnam Pro", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVNSTAyLFyeg_IDWvOJmVES_HRUBX8YYbAiah8.ttf", + "100italic": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVLSTAyLFyeg_IDWvOJmVES_HwyPRsSZZIneh-waA.ttf", + "200": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVMSTAyLFyeg_IDWvOJmVES_HT4JF8yT7wrcwap.ttf", + "200italic": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVKSTAyLFyeg_IDWvOJmVES_HwyPbczRbgJdhapcUU.ttf", + "300": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVMSTAyLFyeg_IDWvOJmVES_HScJ18yT7wrcwap.ttf", + "300italic": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVKSTAyLFyeg_IDWvOJmVES_HwyPdMwRbgJdhapcUU.ttf", + "regular": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVPSTAyLFyeg_IDWvOJmVES_EwwD3s6ZKAi.ttf", + "italic": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVNSTAyLFyeg_IDWvOJmVES_HwyBX8YYbAiah8.ttf", + "500": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVMSTAyLFyeg_IDWvOJmVES_HTEJl8yT7wrcwap.ttf", + "500italic": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVKSTAyLFyeg_IDWvOJmVES_HwyPYsxRbgJdhapcUU.ttf", + "600": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVMSTAyLFyeg_IDWvOJmVES_HToIV8yT7wrcwap.ttf", + "600italic": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVKSTAyLFyeg_IDWvOJmVES_HwyPac2RbgJdhapcUU.ttf", + "700": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVMSTAyLFyeg_IDWvOJmVES_HSMIF8yT7wrcwap.ttf", + "700italic": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVKSTAyLFyeg_IDWvOJmVES_HwyPcM3RbgJdhapcUU.ttf", + "800": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVMSTAyLFyeg_IDWvOJmVES_HSQI18yT7wrcwap.ttf", + "800italic": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVKSTAyLFyeg_IDWvOJmVES_HwyPd80RbgJdhapcUU.ttf", + "900": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVMSTAyLFyeg_IDWvOJmVES_HS0Il8yT7wrcwap.ttf", + "900italic": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVKSTAyLFyeg_IDWvOJmVES_HwyPfs1RbgJdhapcUU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bevietnampro/v11/QdVPSTAyLFyeg_IDWvOJmVES_HwxBX8.ttf" + }, + { + "family": "Beau Rivage", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/beaurivage/v2/UcCi3FIgIG2bH4mMNWJUlmg3NZp8K2sL.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/beaurivage/v2/UcCi3FIgIG2bH4mMNWJUllg2P54.ttf" + }, + { + "family": "Bebas Neue", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bebasneue/v14/JTUSjIg69CK48gW7PXooxW5rygbi49c.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bebasneue/v14/JTUSjIg69CK48gW7PXoo9W9hzg.ttf" + }, + { + "family": "Beiruti", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/beiruti/v2/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9Y95wujgWg2SGdV.ttf", + "300": "https://fonts.gstatic.com/s/beiruti/v2/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9bj5wujgWg2SGdV.ttf", + "regular": "https://fonts.gstatic.com/s/beiruti/v2/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9a95wujgWg2SGdV.ttf", + "500": "https://fonts.gstatic.com/s/beiruti/v2/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9aP5wujgWg2SGdV.ttf", + "600": "https://fonts.gstatic.com/s/beiruti/v2/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9Zj4AujgWg2SGdV.ttf", + "700": "https://fonts.gstatic.com/s/beiruti/v2/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9Za4AujgWg2SGdV.ttf", + "800": "https://fonts.gstatic.com/s/beiruti/v2/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9Y94AujgWg2SGdV.ttf", + "900": "https://fonts.gstatic.com/s/beiruti/v2/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9YU4AujgWg2SGdV.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/beiruti/v2/JTUIjIU69Cmr9FGcYgRFEb7cdQn2-9a95zuii2w.ttf" + }, + { + "family": "Belanosima", + "variants": [ + "regular", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/belanosima/v3/3y9k6bI8ejDo_3MfCDSLxABbF3JBg54.ttf", + "600": "https://fonts.gstatic.com/s/belanosima/v3/3y9n6bI8ejDo_3MfCDSL_Nh1M3pqn5cdJ-4.ttf", + "700": "https://fonts.gstatic.com/s/belanosima/v3/3y9n6bI8ejDo_3MfCDSL_Lx0M3pqn5cdJ-4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/belanosima/v3/3y9k6bI8ejDo_3MfCDSL9AFREw.ttf" + }, + { + "family": "Belgrano", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/belgrano/v18/55xvey5tM9rwKWrJZcMFirl08KDJ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/belgrano/v18/55xvey5tM9rwKWrJZfMEgL0.ttf" + }, + { + "family": "Bellefair", + "variants": [ + "regular" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/bellefair/v14/kJExBuYY6AAuhiXUxG19__A2pOdvDA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bellefair/v14/kJExBuYY6AAuhiXUxG1N_voy.ttf" + }, + { + "family": "Belleza", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/belleza/v17/0nkoC9_pNeMfhX4BtcbyawzruP8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/belleza/v17/0nkoC9_pNeMfhX4Bhcf4bw.ttf" + }, + { + "family": "Bellota", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/bellota/v16/MwQzbhXl3_qEpiwAID55kGMViblPtXs.ttf", + "300italic": "https://fonts.gstatic.com/s/bellota/v16/MwQxbhXl3_qEpiwAKJBjHGEfjZtKpXulTQ.ttf", + "regular": "https://fonts.gstatic.com/s/bellota/v16/MwQ2bhXl3_qEpiwAGJJRtGs-lbA.ttf", + "italic": "https://fonts.gstatic.com/s/bellota/v16/MwQ0bhXl3_qEpiwAKJBbsEk7hbBWrA.ttf", + "700": "https://fonts.gstatic.com/s/bellota/v16/MwQzbhXl3_qEpiwAIC5-kGMViblPtXs.ttf", + "700italic": "https://fonts.gstatic.com/s/bellota/v16/MwQxbhXl3_qEpiwAKJBjDGYfjZtKpXulTQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bellota/v16/MwQ2bhXl3_qEpiwAKJNbsA.ttf" + }, + { + "family": "Bellota Text", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/bellotatext/v18/0FlMVP2VnlWS4f3-UE9hHXM5VfsqfQXwQy6yxg.ttf", + "300italic": "https://fonts.gstatic.com/s/bellotatext/v18/0FlOVP2VnlWS4f3-UE9hHXMx--Gmfw_0YSuixmYK.ttf", + "regular": "https://fonts.gstatic.com/s/bellotatext/v18/0FlTVP2VnlWS4f3-UE9hHXMB-dMOdS7sSg.ttf", + "italic": "https://fonts.gstatic.com/s/bellotatext/v18/0FlNVP2VnlWS4f3-UE9hHXMx-9kKVyv8Sjer.ttf", + "700": "https://fonts.gstatic.com/s/bellotatext/v18/0FlMVP2VnlWS4f3-UE9hHXM5RfwqfQXwQy6yxg.ttf", + "700italic": "https://fonts.gstatic.com/s/bellotatext/v18/0FlOVP2VnlWS4f3-UE9hHXMx--G2eA_0YSuixmYK.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bellotatext/v18/0FlTVP2VnlWS4f3-UE9hHXMx-NkK.ttf" + }, + { + "family": "BenchNine", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/benchnine/v16/ahcev8612zF4jxrwMosT--tRhWa8q0v8ag.ttf", + "regular": "https://fonts.gstatic.com/s/benchnine/v16/ahcbv8612zF4jxrwMosrV8N1jU2gog.ttf", + "700": "https://fonts.gstatic.com/s/benchnine/v16/ahcev8612zF4jxrwMosT6-xRhWa8q0v8ag.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/benchnine/v16/ahcbv8612zF4jxrwMosbVslx.ttf" + }, + { + "family": "Benne", + "variants": [ + "regular" + ], + "subsets": [ + "kannada", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/benne/v22/L0xzDFAhn18E6Vjxlt6qTDBN.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/benne/v22/L0xzDFAhn18E6WjwnNo.ttf" + }, + { + "family": "Bentham", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/bentham/v18/VdGeAZQPEpYfmHglKWw7CJaK_y4.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bentham/v18/VdGeAZQPEpYfmHglGW0xDA.ttf" + }, + { + "family": "Berkshire Swash", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/berkshireswash/v20/ptRRTi-cavZOGqCvnNJDl5m5XmNPrcQybX4pQA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/berkshireswash/v20/ptRRTi-cavZOGqCvnNJDl5m5XmN_rM42.ttf" + }, + { + "family": "Besley", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/besley/v20/PlIhFlO1MaNwaNGWUC92IOH_mtG4fbbBSdRoFPOl8-E.ttf", + "500": "https://fonts.gstatic.com/s/besley/v20/PlIhFlO1MaNwaNGWUC92IOH_mtG4fYTBSdRoFPOl8-E.ttf", + "600": "https://fonts.gstatic.com/s/besley/v20/PlIhFlO1MaNwaNGWUC92IOH_mtG4fWjGSdRoFPOl8-E.ttf", + "700": "https://fonts.gstatic.com/s/besley/v20/PlIhFlO1MaNwaNGWUC92IOH_mtG4fVHGSdRoFPOl8-E.ttf", + "800": "https://fonts.gstatic.com/s/besley/v20/PlIhFlO1MaNwaNGWUC92IOH_mtG4fTbGSdRoFPOl8-E.ttf", + "900": "https://fonts.gstatic.com/s/besley/v20/PlIhFlO1MaNwaNGWUC92IOH_mtG4fR_GSdRoFPOl8-E.ttf", + "italic": "https://fonts.gstatic.com/s/besley/v20/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CoZdiENGg4-E04A.ttf", + "500italic": "https://fonts.gstatic.com/s/besley/v20/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6Ck5diENGg4-E04A.ttf", + "600italic": "https://fonts.gstatic.com/s/besley/v20/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6Cf5BiENGg4-E04A.ttf", + "700italic": "https://fonts.gstatic.com/s/besley/v20/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CRpBiENGg4-E04A.ttf", + "800italic": "https://fonts.gstatic.com/s/besley/v20/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CIZBiENGg4-E04A.ttf", + "900italic": "https://fonts.gstatic.com/s/besley/v20/PlIjFlO1MaNwaNG8WR2J-IiUAH-_aH6CCJBiENGg4-E04A.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/besley/v20/PlIhFlO1MaNwaNGWUC92IOH_mtG4fbbBedViEA.ttf" + }, + { + "family": "Beth Ellen", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bethellen/v21/WwkbxPW2BE-3rb_JNT-qEIAiVNo5xNY.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bethellen/v21/WwkbxPW2BE-3rb_JNT-qIIEoUA.ttf" + }, + { + "family": "Bevan", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bevan/v24/4iCj6KZ0a9NXjF8aUir7tlSJ.ttf", + "italic": "https://fonts.gstatic.com/s/bevan/v24/4iCt6KZ0a9NXjG8YWC7Zs0SJD4U.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bevan/v24/4iCj6KZ0a9NXjG8bWC4.ttf" + }, + { + "family": "BhuTuka Expanded One", + "variants": [ + "regular" + ], + "subsets": [ + "gurmukhi", + "latin", + "latin-ext" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bhutukaexpandedone/v7/SLXXc0jZ4WUJcClHTtv0t7IaDRsBsWRiJCyX8pg_RVH1.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bhutukaexpandedone/v7/SLXXc0jZ4WUJcClHTtv0t7IaDRsBsWRiJByW-Jw.ttf" + }, + { + "family": "Big Shoulders Display", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/bigshouldersdisplay/v21/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdY86JF46SRP4yZQ.ttf", + "200": "https://fonts.gstatic.com/s/bigshouldersdisplay/v21/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdQ87JF46SRP4yZQ.ttf", + "300": "https://fonts.gstatic.com/s/bigshouldersdisplay/v21/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YddE7JF46SRP4yZQ.ttf", + "regular": "https://fonts.gstatic.com/s/bigshouldersdisplay/v21/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdY87JF46SRP4yZQ.ttf", + "500": "https://fonts.gstatic.com/s/bigshouldersdisplay/v21/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0Ydb07JF46SRP4yZQ.ttf", + "600": "https://fonts.gstatic.com/s/bigshouldersdisplay/v21/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdVE8JF46SRP4yZQ.ttf", + "700": "https://fonts.gstatic.com/s/bigshouldersdisplay/v21/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdWg8JF46SRP4yZQ.ttf", + "800": "https://fonts.gstatic.com/s/bigshouldersdisplay/v21/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdQ88JF46SRP4yZQ.ttf", + "900": "https://fonts.gstatic.com/s/bigshouldersdisplay/v21/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdSY8JF46SRP4yZQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bigshouldersdisplay/v21/fC1MPZJEZG-e9gHhdI4-NBbfd2ys3SjJCx12wPgf9g-_3F0YdY87FF8wTQ.ttf" + }, + { + "family": "Big Shoulders Inline Display", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/bigshouldersinlinedisplay/v27/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0nBEnR5yPc2Huux.ttf", + "200": "https://fonts.gstatic.com/s/bigshouldersinlinedisplay/v27/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0lBE3R5yPc2Huux.ttf", + "300": "https://fonts.gstatic.com/s/bigshouldersinlinedisplay/v27/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0mfE3R5yPc2Huux.ttf", + "regular": "https://fonts.gstatic.com/s/bigshouldersinlinedisplay/v27/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0nBE3R5yPc2Huux.ttf", + "500": "https://fonts.gstatic.com/s/bigshouldersinlinedisplay/v27/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0nzE3R5yPc2Huux.ttf", + "600": "https://fonts.gstatic.com/s/bigshouldersinlinedisplay/v27/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0kfFHR5yPc2Huux.ttf", + "700": "https://fonts.gstatic.com/s/bigshouldersinlinedisplay/v27/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0kmFHR5yPc2Huux.ttf", + "800": "https://fonts.gstatic.com/s/bigshouldersinlinedisplay/v27/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0lBFHR5yPc2Huux.ttf", + "900": "https://fonts.gstatic.com/s/bigshouldersinlinedisplay/v27/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0loFHR5yPc2Huux.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bigshouldersinlinedisplay/v27/_LOumyfF4eSU_SCrJc9OI24U7siGvBGcZqmqV9-ZZ85CGNOFeNLxoYMPJ0nBE0R4wvM.ttf" + }, + { + "family": "Big Shoulders Inline Text", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/bigshouldersinlinetext/v26/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwga0yqGN7Y6Jsc8c.ttf", + "200": "https://fonts.gstatic.com/s/bigshouldersinlinetext/v26/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgY0y6GN7Y6Jsc8c.ttf", + "300": "https://fonts.gstatic.com/s/bigshouldersinlinetext/v26/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgbqy6GN7Y6Jsc8c.ttf", + "regular": "https://fonts.gstatic.com/s/bigshouldersinlinetext/v26/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwga0y6GN7Y6Jsc8c.ttf", + "500": "https://fonts.gstatic.com/s/bigshouldersinlinetext/v26/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgaGy6GN7Y6Jsc8c.ttf", + "600": "https://fonts.gstatic.com/s/bigshouldersinlinetext/v26/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgZqzKGN7Y6Jsc8c.ttf", + "700": "https://fonts.gstatic.com/s/bigshouldersinlinetext/v26/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgZTzKGN7Y6Jsc8c.ttf", + "800": "https://fonts.gstatic.com/s/bigshouldersinlinetext/v26/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgY0zKGN7Y6Jsc8c.ttf", + "900": "https://fonts.gstatic.com/s/bigshouldersinlinetext/v26/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwgYdzKGN7Y6Jsc8c.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bigshouldersinlinetext/v26/vm8XdQDmVECV5-vm5dJ-Tp-6WDeRjL4RV7dP8u-NMyHY74qpoNNcwga0y5GM54o.ttf" + }, + { + "family": "Big Shoulders Stencil Display", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_O0nPKHznJucP9w.ttf", + "200": "https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_u0jPKHznJucP9w.ttf", + "300": "https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_ZUjPKHznJucP9w.ttf", + "regular": "https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_O0jPKHznJucP9w.ttf", + "500": "https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_CUjPKHznJucP9w.ttf", + "600": "https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_5U_PKHznJucP9w.ttf", + "700": "https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_3E_PKHznJucP9w.ttf", + "800": "https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_u0_PKHznJucP9w.ttf", + "900": "https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_kk_PKHznJucP9w.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bigshouldersstencildisplay/v28/6aeZ4LS6U6pR_bp5b_t2ugOhHWFcxSGP9ttD96KCb8xPytKb-oPRU-vkuLm_O0j_KXbj.ttf" + }, + { + "family": "Big Shoulders Stencil Text", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/bigshouldersstenciltext/v26/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGR04XIGS_Py_AWbQ.ttf", + "200": "https://fonts.gstatic.com/s/bigshouldersstenciltext/v26/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRU4TIGS_Py_AWbQ.ttf", + "300": "https://fonts.gstatic.com/s/bigshouldersstenciltext/v26/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRjYTIGS_Py_AWbQ.ttf", + "regular": "https://fonts.gstatic.com/s/bigshouldersstenciltext/v26/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGR04TIGS_Py_AWbQ.ttf", + "500": "https://fonts.gstatic.com/s/bigshouldersstenciltext/v26/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGR4YTIGS_Py_AWbQ.ttf", + "600": "https://fonts.gstatic.com/s/bigshouldersstenciltext/v26/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRDYPIGS_Py_AWbQ.ttf", + "700": "https://fonts.gstatic.com/s/bigshouldersstenciltext/v26/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRNIPIGS_Py_AWbQ.ttf", + "800": "https://fonts.gstatic.com/s/bigshouldersstenciltext/v26/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGRU4PIGS_Py_AWbQ.ttf", + "900": "https://fonts.gstatic.com/s/bigshouldersstenciltext/v26/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGReoPIGS_Py_AWbQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bigshouldersstenciltext/v26/5aUV9-i2oxDMNwY3dHfW7UAt3Q453SM15wNj53bCcab2SJYLLUtk1OGR04T4GCXL.ttf" + }, + { + "family": "Big Shoulders Text", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/bigshoulderstext/v24/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Y-r3TIPNl6P2pc.ttf", + "200": "https://fonts.gstatic.com/s/bigshoulderstext/v24/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Q-q3TIPNl6P2pc.ttf", + "300": "https://fonts.gstatic.com/s/bigshoulderstext/v24/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3dGq3TIPNl6P2pc.ttf", + "regular": "https://fonts.gstatic.com/s/bigshoulderstext/v24/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Y-q3TIPNl6P2pc.ttf", + "500": "https://fonts.gstatic.com/s/bigshoulderstext/v24/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3b2q3TIPNl6P2pc.ttf", + "600": "https://fonts.gstatic.com/s/bigshoulderstext/v24/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3VGt3TIPNl6P2pc.ttf", + "700": "https://fonts.gstatic.com/s/bigshoulderstext/v24/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Wit3TIPNl6P2pc.ttf", + "800": "https://fonts.gstatic.com/s/bigshoulderstext/v24/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Q-t3TIPNl6P2pc.ttf", + "900": "https://fonts.gstatic.com/s/bigshoulderstext/v24/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Sat3TIPNl6P2pc.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bigshoulderstext/v24/55xEezRtP9G3CGPIf49hxc8P0eytUxB2l66LmF6xc3kA3Y-q7TMFMg.ttf" + }, + { + "family": "Bigelow Rules", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bigelowrules/v29/RrQWboly8iR_I3KWSzeRuN0zT4cCH8WAJVk.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bigelowrules/v29/RrQWboly8iR_I3KWSzeRuN0zf4YIGw.ttf" + }, + { + "family": "Bigshot One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bigshotone/v29/u-470qukhRkkO6BD_7cM_gxuUQJBXv_-.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bigshotone/v29/u-470qukhRkkO6BD_7cM_jxvWwY.ttf" + }, + { + "family": "Bilbo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bilbo/v20/o-0EIpgpwWwZ210hpIRz4wxE.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bilbo/v20/o-0EIpgpwWwZ220groA.ttf" + }, + { + "family": "Bilbo Swash Caps", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bilboswashcaps/v22/zrf-0GXbz-H3Wb4XBsGrTgq2PVmdqAPopiRfKp8.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bilboswashcaps/v22/zrf-0GXbz-H3Wb4XBsGrTgq2PVmdmALiog.ttf" + }, + { + "family": "BioRhyme", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/biorhyme/v17/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OrIimiaki-gkRDE.ttf", + "300": "https://fonts.gstatic.com/s/biorhyme/v17/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4Omwimiaki-gkRDE.ttf", + "regular": "https://fonts.gstatic.com/s/biorhyme/v17/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OjIimiaki-gkRDE.ttf", + "500": "https://fonts.gstatic.com/s/biorhyme/v17/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OgAimiaki-gkRDE.ttf", + "600": "https://fonts.gstatic.com/s/biorhyme/v17/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4Ouwlmiaki-gkRDE.ttf", + "700": "https://fonts.gstatic.com/s/biorhyme/v17/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OtUlmiaki-gkRDE.ttf", + "800": "https://fonts.gstatic.com/s/biorhyme/v17/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OrIlmiaki-gkRDE.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/biorhyme/v17/1cXeaULHBpDMsHYW_GZNh7loEHurwOIGadI205trrbeBgQs4OjIiqieujw.ttf" + }, + { + "family": "BioRhyme Expanded", + "variants": [ + "200", + "300", + "regular", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/biorhymeexpanded/v21/i7dVIE1zZzytGswgU577CDY9LjbffxxcblSHSdTXrb_z.ttf", + "300": "https://fonts.gstatic.com/s/biorhymeexpanded/v21/i7dVIE1zZzytGswgU577CDY9Ljbffxw4bVSHSdTXrb_z.ttf", + "regular": "https://fonts.gstatic.com/s/biorhymeexpanded/v21/i7dQIE1zZzytGswgU577CDY9LjbffySURXCPYsje.ttf", + "700": "https://fonts.gstatic.com/s/biorhymeexpanded/v21/i7dVIE1zZzytGswgU577CDY9LjbffxwoalSHSdTXrb_z.ttf", + "800": "https://fonts.gstatic.com/s/biorhymeexpanded/v21/i7dVIE1zZzytGswgU577CDY9Ljbffxw0aVSHSdTXrb_z.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/biorhymeexpanded/v21/i7dQIE1zZzytGswgU577CDY9LjbffxSVT3Q.ttf" + }, + { + "family": "Birthstone", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/birthstone/v14/8AtsGs2xO4yLRhy87sv_HLn5jRfZHzM.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/birthstone/v14/8AtsGs2xO4yLRhy87sv_LLjziQ.ttf" + }, + { + "family": "Birthstone Bounce", + "variants": [ + "regular", + "500" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/birthstonebounce/v11/ga6XaxZF43lIvTWrktHOTBJZGH7dEeVJGIMYDo_8.ttf", + "500": "https://fonts.gstatic.com/s/birthstonebounce/v11/ga6SaxZF43lIvTWrktHOTBJZGH7dEd29MacQJZP1LmD9.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/birthstonebounce/v11/ga6XaxZF43lIvTWrktHOTBJZGH7dEdVIEoc.ttf" + }, + { + "family": "Biryani", + "variants": [ + "200", + "300", + "regular", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddYQyGTBSU-J-RxQ.ttf", + "300": "https://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddeAxGTBSU-J-RxQ.ttf", + "regular": "https://fonts.gstatic.com/s/biryani/v13/hv-WlzNxIFoO84YdTUwZPTh5T-s.ttf", + "600": "https://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddZQ3GTBSU-J-RxQ.ttf", + "700": "https://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84YddfA2GTBSU-J-RxQ.ttf", + "800": "https://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84Yddew1GTBSU-J-RxQ.ttf", + "900": "https://fonts.gstatic.com/s/biryani/v13/hv-TlzNxIFoO84Yddcg0GTBSU-J-RxQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/biryani/v13/hv-WlzNxIFoO84YdfU0TOQ.ttf" + }, + { + "family": "Bitter", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v36", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/bitter/v36/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8fbeCL_EXFh2reU.ttf", + "200": "https://fonts.gstatic.com/s/bitter/v36/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8XbfCL_EXFh2reU.ttf", + "300": "https://fonts.gstatic.com/s/bitter/v36/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8ajfCL_EXFh2reU.ttf", + "regular": "https://fonts.gstatic.com/s/bitter/v36/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8fbfCL_EXFh2reU.ttf", + "500": "https://fonts.gstatic.com/s/bitter/v36/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8cTfCL_EXFh2reU.ttf", + "600": "https://fonts.gstatic.com/s/bitter/v36/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8SjYCL_EXFh2reU.ttf", + "700": "https://fonts.gstatic.com/s/bitter/v36/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8RHYCL_EXFh2reU.ttf", + "800": "https://fonts.gstatic.com/s/bitter/v36/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8XbYCL_EXFh2reU.ttf", + "900": "https://fonts.gstatic.com/s/bitter/v36/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8V_YCL_EXFh2reU.ttf", + "100italic": "https://fonts.gstatic.com/s/bitter/v36/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c4P3OWHpzveWxBw.ttf", + "200italic": "https://fonts.gstatic.com/s/bitter/v36/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cYPzOWHpzveWxBw.ttf", + "300italic": "https://fonts.gstatic.com/s/bitter/v36/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cvvzOWHpzveWxBw.ttf", + "italic": "https://fonts.gstatic.com/s/bitter/v36/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c4PzOWHpzveWxBw.ttf", + "500italic": "https://fonts.gstatic.com/s/bitter/v36/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6c0vzOWHpzveWxBw.ttf", + "600italic": "https://fonts.gstatic.com/s/bitter/v36/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cPvvOWHpzveWxBw.ttf", + "700italic": "https://fonts.gstatic.com/s/bitter/v36/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cB_vOWHpzveWxBw.ttf", + "800italic": "https://fonts.gstatic.com/s/bitter/v36/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cYPvOWHpzveWxBw.ttf", + "900italic": "https://fonts.gstatic.com/s/bitter/v36/raxjHiqOu8IVPmn7epZnDMyKBvHf5D6cSfvOWHpzveWxBw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bitter/v36/raxhHiqOu8IVPmnRc6SY1KXhnF_Y8fbfOL7OWA.ttf" + }, + { + "family": "Black And White Picture", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v24", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/blackandwhitepicture/v24/TwMe-JAERlQd3ooUHBUXGmrmioKjjnRSFO-NqI5HbcMi-yWY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/blackandwhitepicture/v24/TwMe-JAERlQd3ooUHBUXGmrmioKjjnRSFO-NqL5GZ8c.ttf" + }, + { + "family": "Black Han Sans", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v17", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/blackhansans/v17/ea8Aad44WunzF9a-dL6toA8r8nqVIXSkH-Hc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/blackhansans/v17/ea8Aad44WunzF9a-dL6toA8r8kqUK3A.ttf" + }, + { + "family": "Black Ops One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/blackopsone/v20/qWcsB6-ypo7xBdr6Xshe96H3WDzRtjkho4M.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/blackopsone/v20/qWcsB6-ypo7xBdr6Xshe96H3aD3bsg.ttf" + }, + { + "family": "Blaka", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/blaka/v7/8vIG7w8722p_6kdr20D2FV5e.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/blaka/v7/8vIG7w8722p_6ndq0UQ.ttf" + }, + { + "family": "Blaka Hollow", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/blakahollow/v7/MCoUzAL91sjRE2FsKsxUtezYB9oFyW_-oA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/blakahollow/v7/MCoUzAL91sjRE2FsKsxUtezoBtAB.ttf" + }, + { + "family": "Blaka Ink", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/blakaink/v8/AlZy_zVVtpj22Znag2chdXf4XB0Tow.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/blakaink/v8/AlZy_zVVtpj22Znag2cRdH38.ttf", + "colorCapabilities": [ + "COLRv1", + "SVG" + ] + }, + { + "family": "Blinker", + "variants": [ + "100", + "200", + "300", + "regular", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/blinker/v13/cIf_MaFatEE-VTaP_E2hZEsCkIt9QQ.ttf", + "200": "https://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_OGARGEsnIJkWL4.ttf", + "300": "https://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_IWDRGEsnIJkWL4.ttf", + "regular": "https://fonts.gstatic.com/s/blinker/v13/cIf9MaFatEE-VTaPxCmrYGkHgIs.ttf", + "600": "https://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_PGFRGEsnIJkWL4.ttf", + "700": "https://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_JWERGEsnIJkWL4.ttf", + "800": "https://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_ImHRGEsnIJkWL4.ttf", + "900": "https://fonts.gstatic.com/s/blinker/v13/cIf4MaFatEE-VTaP_K2GRGEsnIJkWL4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/blinker/v13/cIf9MaFatEE-VTaP9CihZA.ttf" + }, + { + "family": "Bodoni Moda", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oU7awIBytVjMYwE.ttf", + "500": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oXzawIBytVjMYwE.ttf", + "600": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oZDdwIBytVjMYwE.ttf", + "700": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oandwIBytVjMYwE.ttf", + "800": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oc7dwIBytVjMYwE.ttf", + "900": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oefdwIBytVjMYwE.ttf", + "italic": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZKMN4sXrJcwHqoQ.ttf", + "500italic": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZGsN4sXrJcwHqoQ.ttf", + "600italic": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZ9sR4sXrJcwHqoQ.ttf", + "700italic": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZz8R4sXrJcwHqoQ.ttf", + "800italic": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZqMR4sXrJcwHqoQ.ttf", + "900italic": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZgcR4sXrJcwHqoQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bodonimoda/v25/aFT67PxzY382XsXX63LUYL6GYFcan6NJrKp-VPjfJMShrpsGFUt8oU7a8IF4sQ.ttf" + }, + { + "family": "Bodoni Moda SC", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbA7uXJyb9N7yr8E.ttf", + "500": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbDzuXJyb9N7yr8E.ttf", + "600": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbNDpXJyb9N7yr8E.ttf", + "700": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbOnpXJyb9N7yr8E.ttf", + "800": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbI7pXJyb9N7yr8E.ttf", + "900": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbKfpXJyb9N7yr8E.ttf", + "italic": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecattN-R8Pz3v8Etew.ttf", + "500italic": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecatht-R8Pz3v8Etew.ttf", + "600italic": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecatatiR8Pz3v8Etew.ttf", + "700italic": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecatU9iR8Pz3v8Etew.ttf", + "800italic": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecatNNiR8Pz3v8Etew.ttf", + "900italic": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjndGTykkIgA8197UwkzHp8F8_dYp-6DdBNRF6RX6k1R5fi-Gf55IgAecatHdiR8Pz3v8Etew.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bodonimodasc/v1/LYjhdGTykkIgA8197UwkzHp8F-XUUG5UNs2KqliEb-g_DaUdIA6SfiYHbA7ubJ2R8A.ttf" + }, + { + "family": "Bokor", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v30", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/bokor/v30/m8JcjfpeeaqTiR2WdInbcaxE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bokor/v30/m8JcjfpeeaqTiS2Xfo0.ttf" + }, + { + "family": "Bona Nova", + "variants": [ + "regular", + "italic", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "hebrew", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/bonanova/v11/B50NF7ZCpX7fcHfvIUBJi6hqHK-CLA.ttf", + "italic": "https://fonts.gstatic.com/s/bonanova/v11/B50LF7ZCpX7fcHfvIUB5iaJuPqqSLJYf.ttf", + "700": "https://fonts.gstatic.com/s/bonanova/v11/B50IF7ZCpX7fcHfvIUBxN4dOFISeJY8GgQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bonanova/v11/B50NF7ZCpX7fcHfvIUB5iqJu.ttf" + }, + { + "family": "Bona Nova SC", + "variants": [ + "regular", + "italic", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "hebrew", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bonanovasc/v1/mem5YaShyGWDiYdPG_c1Af4-VeJoCqeDjg.ttf", + "italic": "https://fonts.gstatic.com/s/bonanovasc/v1/memnYaShyGWDiYdPG_c1Af4OV-hsKKKTjrPW.ttf", + "700": "https://fonts.gstatic.com/s/bonanovasc/v1/memmYaShyGWDiYdPG_c1Af4G6c1MAoyfh6rPXA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bonanovasc/v1/mem5YaShyGWDiYdPG_c1Af4OVOhs.ttf" + }, + { + "family": "Bonbon", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v30", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bonbon/v30/0FlVVPeVlFec4ee_cDEAbQY5-A.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bonbon/v30/0FlVVPeVlFec4eePcTsE.ttf" + }, + { + "family": "Bonheur Royale", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bonheurroyale/v13/c4m51nt_GMTrtX-b9GcG4-YRmYK_c0f1N5Ij.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bonheurroyale/v13/c4m51nt_GMTrtX-b9GcG4-YRmbK-eUM.ttf" + }, + { + "family": "Boogaloo", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/boogaloo/v23/kmK-Zq45GAvOdnaW6x1F_SrQo_1K.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/boogaloo/v23/kmK-Zq45GAvOdnaW6y1E9y4.ttf" + }, + { + "family": "Borel", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/borel/v3/6qLOKZsftAPisgshYyMnOjwE.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/borel/v3/6qLOKZsftAPisjsgaSc.ttf" + }, + { + "family": "Bowlby One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bowlbyone/v23/taiPGmVuC4y96PFeqp8smo6C_Z0wcK4.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bowlbyone/v23/taiPGmVuC4y96PFeqp8sqo-I-Q.ttf" + }, + { + "family": "Bowlby One SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bowlbyonesc/v25/DtVlJxerQqQm37tzN3wMug9Pzgj8owhNjuE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bowlbyonesc/v25/DtVlJxerQqQm37tzN3wMug9P_gn2pw.ttf" + }, + { + "family": "Braah One", + "variants": [ + "regular" + ], + "subsets": [ + "gurmukhi", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/braahone/v6/KFOlCnWUpt6LsxxxiylvAx05IsDqlA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/braahone/v6/KFOlCnWUpt6LsxxxiylfAhc9.ttf" + }, + { + "family": "Brawler", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/brawler/v19/xn7gYHE3xXewAscGsgC7S9XdZN8.ttf", + "700": "https://fonts.gstatic.com/s/brawler/v19/xn7lYHE3xXewAscGiryUb932eNaPfk8.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/brawler/v19/xn7gYHE3xXewAscGggGxTw.ttf" + }, + { + "family": "Bree Serif", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/breeserif/v17/4UaHrEJCrhhnVA3DgluAx63j5pN1MwI.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/breeserif/v17/4UaHrEJCrhhnVA3DgluA96zp4g.ttf" + }, + { + "family": "Bricolage Grotesque", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/bricolagegrotesque/v7/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvZviyM0vs-wJDtw.ttf", + "300": "https://fonts.gstatic.com/s/bricolagegrotesque/v7/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvUXiyM0vs-wJDtw.ttf", + "regular": "https://fonts.gstatic.com/s/bricolagegrotesque/v7/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvRviyM0vs-wJDtw.ttf", + "500": "https://fonts.gstatic.com/s/bricolagegrotesque/v7/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvSniyM0vs-wJDtw.ttf", + "600": "https://fonts.gstatic.com/s/bricolagegrotesque/v7/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvcXlyM0vs-wJDtw.ttf", + "700": "https://fonts.gstatic.com/s/bricolagegrotesque/v7/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvfzlyM0vs-wJDtw.ttf", + "800": "https://fonts.gstatic.com/s/bricolagegrotesque/v7/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvZvlyM0vs-wJDtw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bricolagegrotesque/v7/3y9U6as8bTXq_nANBjzKo3IeZx8z6up5BeSl5jBNz_19PpbpMXuECpwUxJBOm_OJWiaaD30YfKfjZZoLvRvi-Mwltw.ttf" + }, + { + "family": "Bruno Ace", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/brunoace/v5/WwkcxPa2E06x4trkOj_kMKoMWNMg3Q.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/brunoace/v5/WwkcxPa2E06x4trkOj_UMaAI.ttf" + }, + { + "family": "Bruno Ace SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/brunoacesc/v5/ptROTiycffFLBuiHjdJDl634LSFrpe8uZA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/brunoacesc/v5/ptROTiycffFLBuiHjdJDl63ILCtv.ttf" + }, + { + "family": "Brygada 1918", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v25", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/brygada1918/v25/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y2-f-V8Wu5O3gbo.ttf", + "500": "https://fonts.gstatic.com/s/brygada1918/v25/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y12f-V8Wu5O3gbo.ttf", + "600": "https://fonts.gstatic.com/s/brygada1918/v25/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y7GY-V8Wu5O3gbo.ttf", + "700": "https://fonts.gstatic.com/s/brygada1918/v25/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y4iY-V8Wu5O3gbo.ttf", + "italic": "https://fonts.gstatic.com/s/brygada1918/v25/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfcERwcv7GykboaLg.ttf", + "500italic": "https://fonts.gstatic.com/s/brygada1918/v25/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfcIxwcv7GykboaLg.ttf", + "600italic": "https://fonts.gstatic.com/s/brygada1918/v25/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfczxscv7GykboaLg.ttf", + "700italic": "https://fonts.gstatic.com/s/brygada1918/v25/pe06MI6eKpdGqlF5LANrM--qAeRhe6D4yip43qfc9hscv7GykboaLg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/brygada1918/v25/pe08MI6eKpdGqlF5LANrM--ACNaeo8mTUIR_y2-fyV4cvw.ttf" + }, + { + "family": "Bubblegum Sans", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bubblegumsans/v20/AYCSpXb_Z9EORv1M5QTjEzMEtdaHzoPPb7R4.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bubblegumsans/v20/AYCSpXb_Z9EORv1M5QTjEzMEteaGxIc.ttf" + }, + { + "family": "Bubbler One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bubblerone/v21/f0Xy0eqj68ppQV9KBLmAouHH26MPePkt.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bubblerone/v21/f0Xy0eqj68ppQV9KBLmAotHG0ac.ttf" + }, + { + "family": "Buda", + "variants": [ + "300" + ], + "subsets": [ + "latin" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/buda/v29/GFDqWAN8mnyIJSSrG7UBr7pZKA0.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/buda/v29/GFDqWAN8mnyIJSSrK7QLqw.ttf" + }, + { + "family": "Buenard", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/buenard/v17/OD5DuM6Cyma8FnnsPzf9qGi9HL4.ttf", + "700": "https://fonts.gstatic.com/s/buenard/v17/OD5GuM6Cyma8FnnsB4vSjGCWALepwss.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/buenard/v17/OD5DuM6Cyma8FnnsDzb3rA.ttf" + }, + { + "family": "Bungee", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bungee/v14/N0bU2SZBIuF2PU_ECn50Kd_PmA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bungee/v14/N0bU2SZBIuF2PU_0C3Rw.ttf" + }, + { + "family": "Bungee Hairline", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bungeehairline/v23/snfys0G548t04270a_ljTLUVrv-7YB2dQ5ZPqQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bungeehairline/v23/snfys0G548t04270a_ljTLUVrv-LYReZ.ttf" + }, + { + "family": "Bungee Inline", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bungeeinline/v16/Gg8zN58UcgnlCweMrih332VuDGJ1-FEglsc.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bungeeinline/v16/Gg8zN58UcgnlCweMrih332VuPGN__A.ttf" + }, + { + "family": "Bungee Outline", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bungeeoutline/v21/_6_mEDvmVP24UvU2MyiGDslL3Qg3YhJqPXxo.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bungeeoutline/v21/_6_mEDvmVP24UvU2MyiGDslL3Tg2aBY.ttf" + }, + { + "family": "Bungee Shade", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bungeeshade/v14/DtVkJxarWL0t2KdzK3oI_jks7iLSrwFUlw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bungeeshade/v14/DtVkJxarWL0t2KdzK3oI_jkc7yjW.ttf" + }, + { + "family": "Bungee Spice", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bungeespice/v12/nwpTtK2nIhxE0q-IwgSpZBqCzyI-aMPF7Q.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bungeespice/v12/nwpTtK2nIhxE0q-IwgSpZBqyzig6.ttf", + "colorCapabilities": [ + "COLRv1", + "SVG" + ] + }, + { + "family": "Bungee Tint", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/bungeetint/v1/J7abnpl_EGtUEuAJwN9WmrtKMDwTpTkB.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/bungeetint/v1/J7abnpl_EGtUEuAJwN9WmotLOjg.ttf", + "colorCapabilities": [ + "COLRv0" + ] + }, + { + "family": "Butcherman", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/butcherman/v24/2EbiL-thF0loflXUBOdb1zWzq_5uT84.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/butcherman/v24/2EbiL-thF0loflXUBOdb5zS5rw.ttf" + }, + { + "family": "Butterfly Kids", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/butterflykids/v25/ll8lK2CWTjuqAsXDqlnIbMNs5S4arxFrAX1D.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/butterflykids/v25/ll8lK2CWTjuqAsXDqlnIbMNs5R4bpRU.ttf" + }, + { + "family": "Cabin", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cabin/v27/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkV2EL7Gvxm7rE_s.ttf", + "500": "https://fonts.gstatic.com/s/cabin/v27/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkW-EL7Gvxm7rE_s.ttf", + "600": "https://fonts.gstatic.com/s/cabin/v27/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkYODL7Gvxm7rE_s.ttf", + "700": "https://fonts.gstatic.com/s/cabin/v27/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkbqDL7Gvxm7rE_s.ttf", + "italic": "https://fonts.gstatic.com/s/cabin/v27/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHx_KlwkzuA_u1Bg.ttf", + "500italic": "https://fonts.gstatic.com/s/cabin/v27/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXH9fKlwkzuA_u1Bg.ttf", + "600italic": "https://fonts.gstatic.com/s/cabin/v27/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHGfWlwkzuA_u1Bg.ttf", + "700italic": "https://fonts.gstatic.com/s/cabin/v27/u-4V0qWljRw-Pd815fNqc8T_wAFcX-c37MPiNYlWniJ2hJXHIPWlwkzuA_u1Bg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cabin/v27/u-4X0qWljRw-PfU81xCKCpdpbgZJl6XFpfEd7eA9BIxxkV2EH7Clwg.ttf" + }, + { + "family": "Cabin Condensed", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cabincondensed/v20/nwpMtK6mNhBK2err_hqkYhHRqmwaYOjZ5HZl8Q.ttf", + "500": "https://fonts.gstatic.com/s/cabincondensed/v20/nwpJtK6mNhBK2err_hqkYhHRqmwilMH97F15-K1oqQ.ttf", + "600": "https://fonts.gstatic.com/s/cabincondensed/v20/nwpJtK6mNhBK2err_hqkYhHRqmwiuMb97F15-K1oqQ.ttf", + "700": "https://fonts.gstatic.com/s/cabincondensed/v20/nwpJtK6mNhBK2err_hqkYhHRqmwi3Mf97F15-K1oqQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cabincondensed/v20/nwpMtK6mNhBK2err_hqkYhHRqmwqYeLd.ttf" + }, + { + "family": "Cabin Sketch", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cabinsketch/v21/QGYpz_kZZAGCONcK2A4bGOjMn9JM6fnuKg.ttf", + "700": "https://fonts.gstatic.com/s/cabinsketch/v21/QGY2z_kZZAGCONcK2A4bGOj0I_1o4dLyI4CMFw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cabinsketch/v21/QGYpz_kZZAGCONcK2A4bGOj8nthI.ttf" + }, + { + "family": "Cactus Classical Serif", + "variants": [ + "regular" + ], + "subsets": [ + "chinese-hongkong", + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cactusclassicalserif/v5/sZlVdQ6K-zJOCzUaS90zMNN-Ep-OoC8dZr0JFuBIFX-pv-E.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cactusclassicalserif/v5/sZlVdQ6K-zJOCzUaS90zMNN-Ep-OoC8dZr0JJuFCEQ.ttf" + }, + { + "family": "Caesar Dressing", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/caesardressing/v21/yYLx0hLa3vawqtwdswbotmK4vrR3cbb6LZttyg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/caesardressing/v21/yYLx0hLa3vawqtwdswbotmK4vrRHcLz-.ttf" + }, + { + "family": "Cagliostro", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cagliostro/v21/ZgNWjP5HM73BV5amnX-TjGXEM4COoE4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cagliostro/v21/ZgNWjP5HM73BV5amnX-TvGTONw.ttf" + }, + { + "family": "Cairo", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hGA-W1ToLQ-HmkA.ttf", + "300": "https://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hL4-W1ToLQ-HmkA.ttf", + "regular": "https://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hOA-W1ToLQ-HmkA.ttf", + "500": "https://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hNI-W1ToLQ-HmkA.ttf", + "600": "https://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hD45W1ToLQ-HmkA.ttf", + "700": "https://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hAc5W1ToLQ-HmkA.ttf", + "800": "https://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hGA5W1ToLQ-HmkA.ttf", + "900": "https://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hEk5W1ToLQ-HmkA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cairo/v28/SLXgc1nY6HkvangtZmpQdkhzfH5lkSs2SgRjCAGMQ1z0hOA-a1XiKQ.ttf" + }, + { + "family": "Cairo Play", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1EnYq9yXa8GvzaA.ttf", + "300": "https://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1zHYq9yXa8GvzaA.ttf", + "regular": "https://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1knYq9yXa8GvzaA.ttf", + "500": "https://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1oHYq9yXa8GvzaA.ttf", + "600": "https://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1THEq9yXa8GvzaA.ttf", + "700": "https://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1dXEq9yXa8GvzaA.ttf", + "800": "https://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1EnEq9yXa8GvzaA.ttf", + "900": "https://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1O3Eq9yXa8GvzaA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cairoplay/v7/wXKEE3QSpo4vpRz_mz6FP-8iaauCLt_Hjopv3miu5IvcJo49mOo1knYa9i_e.ttf", + "colorCapabilities": [ + "COLRv0" + ] + }, + { + "family": "Caladea", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/caladea/v7/kJEzBugZ7AAjhybUjR93-9IztOc.ttf", + "italic": "https://fonts.gstatic.com/s/caladea/v7/kJExBugZ7AAjhybUvR19__A2pOdvDA.ttf", + "700": "https://fonts.gstatic.com/s/caladea/v7/kJE2BugZ7AAjhybUtaNY39oYqO52FZ0.ttf", + "700italic": "https://fonts.gstatic.com/s/caladea/v7/kJE0BugZ7AAjhybUvR1FQ98SrMxzBZ2lDA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/caladea/v7/kJEzBugZ7AAjhybUvR59_w.ttf" + }, + { + "family": "Calistoga", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/calistoga/v16/6NUU8F2OJg6MeR7l4e0vtMYAwdRZfw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/calistoga/v16/6NUU8F2OJg6MeR7l4e0ftcwE.ttf" + }, + { + "family": "Calligraffitti", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/calligraffitti/v19/46k2lbT3XjDVqJw3DCmCFjE0vnFZM5ZBpYN-.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/calligraffitti/v19/46k2lbT3XjDVqJw3DCmCFjE0vkFYOZI.ttf" + }, + { + "family": "Cambay", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cambay/v12/SLXJc1rY6H0_ZDsGbrSIz9JsaA.ttf", + "italic": "https://fonts.gstatic.com/s/cambay/v12/SLXLc1rY6H0_ZDs2bL6M7dd8aGZk.ttf", + "700": "https://fonts.gstatic.com/s/cambay/v12/SLXKc1rY6H0_ZDs-0pusx_lwYX99kA.ttf", + "700italic": "https://fonts.gstatic.com/s/cambay/v12/SLXMc1rY6H0_ZDs2bIYwwvN0Q3ptkDMN.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cambay/v12/SLXJc1rY6H0_ZDs2b76M.ttf" + }, + { + "family": "Cambo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/cambo/v18/IFSqHeNEk8FJk416ok7xkPm8.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cambo/v18/IFSqHeNEk8FJk717qEo.ttf" + }, + { + "family": "Candal", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/candal/v15/XoHn2YH6T7-t_8cNAR4Jt9Yxlw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/candal/v15/XoHn2YH6T7-t_8c9ABQN.ttf" + }, + { + "family": "Cantarell", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cantarell/v17/B50NF7ZDq37KMUvlO01Ji6hqHK-CLA.ttf", + "italic": "https://fonts.gstatic.com/s/cantarell/v17/B50LF7ZDq37KMUvlO015iaJuPqqSLJYf.ttf", + "700": "https://fonts.gstatic.com/s/cantarell/v17/B50IF7ZDq37KMUvlO01xN4dOFISeJY8GgQ.ttf", + "700italic": "https://fonts.gstatic.com/s/cantarell/v17/B50WF7ZDq37KMUvlO015iZrSEY6aB4oWgWHB.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cantarell/v17/B50NF7ZDq37KMUvlO015iqJu.ttf" + }, + { + "family": "Cantata One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cantataone/v15/PlI5Fl60Nb5obNzNe2jslVxEt8CwfGaD.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cantataone/v15/PlI5Fl60Nb5obNzNe2jslWxFvcQ.ttf" + }, + { + "family": "Cantora One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cantoraone/v19/gyB4hws1JdgnKy56GB_JX6zdZ4vZVbgZ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cantoraone/v19/gyB4hws1JdgnKy56GB_JX5zcbY8.ttf" + }, + { + "family": "Caprasimo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/caprasimo/v5/esDT31JQOPuXIUGBp72klZUCGpG-GQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/caprasimo/v5/esDT31JQOPuXIUGBp72UlJ8G.ttf" + }, + { + "family": "Capriola", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/capriola/v14/wXKoE3YSppcvo1PDln_8L-AinG8y.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/capriola/v14/wXKoE3YSppcvo1PDlk_9JeQ.ttf" + }, + { + "family": "Caramel", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/caramel/v7/P5sCzZKBbMTf_ShyxCRuiZ-uydg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/caramel/v7/P5sCzZKBbMTf_Shy9CVkjQ.ttf" + }, + { + "family": "Carattere", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/carattere/v7/4iCv6Kp1b9dXlgt_CkvTt2aMH4V_gg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/carattere/v7/4iCv6Kp1b9dXlgt_CkvjtmyI.ttf" + }, + { + "family": "Cardo", + "variants": [ + "regular", + "italic", + "700" + ], + "subsets": [ + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cardo/v19/wlp_gwjKBV1pqiv_1oAZ2H5O.ttf", + "italic": "https://fonts.gstatic.com/s/cardo/v19/wlpxgwjKBV1pqhv93IQ73W5OcCk.ttf", + "700": "https://fonts.gstatic.com/s/cardo/v19/wlpygwjKBV1pqhND-aQR82JHaTBX.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cardo/v19/wlp_gwjKBV1pqhv-3IQ.ttf" + }, + { + "family": "Carlito", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/carlito/v3/3Jn9SDPw3m-pk039PDCLTXUETuE.ttf", + "italic": "https://fonts.gstatic.com/s/carlito/v3/3Jn_SDPw3m-pk039DDKBSVcBXuFb0Q.ttf", + "700": "https://fonts.gstatic.com/s/carlito/v3/3Jn4SDPw3m-pk039BIykaX0vUuhCyOo.ttf", + "700italic": "https://fonts.gstatic.com/s/carlito/v3/3Jn6SDPw3m-pk039DDK59XglVspH2OprMQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/carlito/v3/3Jn9SDPw3m-pk039DDGBSQ.ttf" + }, + { + "family": "Carme", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/carme/v16/ptRHTiWdbvZIDOjGxLNrxfbZ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/carme/v16/ptRHTiWdbvZIDNjHzrc.ttf" + }, + { + "family": "Carrois Gothic", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/carroisgothic/v16/Z9XPDmFATg-N1PLtLOOxvIHl9ZmD3i7ajcJ-.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/carroisgothic/v16/Z9XPDmFATg-N1PLtLOOxvIHl9amC1Co.ttf" + }, + { + "family": "Carrois Gothic SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/carroisgothicsc/v15/ZgNJjOVHM6jfUZCmyUqT2A2HVKjc-28nNHabY4dN.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/carroisgothicsc/v15/ZgNJjOVHM6jfUZCmyUqT2A2HVKjc-18mPnI.ttf" + }, + { + "family": "Carter One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/carterone/v17/q5uCsoe5IOB2-pXv9UcNIxR2hYxREMs.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/carterone/v17/q5uCsoe5IOB2-pXv9UcNExV8gQ.ttf" + }, + { + "family": "Castoro", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/castoro/v19/1q2GY5yMCld3-O4cHYhEzOYenEU.ttf", + "italic": "https://fonts.gstatic.com/s/castoro/v19/1q2EY5yMCld3-O4cLYpOyMQbjEX5fw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/castoro/v19/1q2GY5yMCld3-O4cLYlOyA.ttf" + }, + { + "family": "Castoro Titling", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/castorotitling/v8/buEupouwccj03leTfjUAhEZWlrNqYgckeo9RMw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/castorotitling/v8/buEupouwccj03leTfjUAhEZWlrNaYw0g.ttf" + }, + { + "family": "Catamaran", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/catamaran/v19/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPHjc1anXuluiLyw.ttf", + "200": "https://fonts.gstatic.com/s/catamaran/v19/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPPjd1anXuluiLyw.ttf", + "300": "https://fonts.gstatic.com/s/catamaran/v19/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPCbd1anXuluiLyw.ttf", + "regular": "https://fonts.gstatic.com/s/catamaran/v19/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPHjd1anXuluiLyw.ttf", + "500": "https://fonts.gstatic.com/s/catamaran/v19/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPErd1anXuluiLyw.ttf", + "600": "https://fonts.gstatic.com/s/catamaran/v19/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPKba1anXuluiLyw.ttf", + "700": "https://fonts.gstatic.com/s/catamaran/v19/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPJ_a1anXuluiLyw.ttf", + "800": "https://fonts.gstatic.com/s/catamaran/v19/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPPja1anXuluiLyw.ttf", + "900": "https://fonts.gstatic.com/s/catamaran/v19/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPNHa1anXuluiLyw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/catamaran/v19/o-0bIpQoyXQa2RxT7-5B6Ryxs2E_6n1iPHjd5ajdvg.ttf" + }, + { + "family": "Caudex", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/caudex/v17/esDQ311QOP6BJUrIyviAnb4eEw.ttf", + "italic": "https://fonts.gstatic.com/s/caudex/v17/esDS311QOP6BJUr4yPKEv7sOE4in.ttf", + "700": "https://fonts.gstatic.com/s/caudex/v17/esDT311QOP6BJUrwdteklZUCGpG-GQ.ttf", + "700italic": "https://fonts.gstatic.com/s/caudex/v17/esDV311QOP6BJUr4yMo4kJ8GOJSuGdLB.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/caudex/v17/esDQ311QOP6BJUr4y_KE.ttf" + }, + { + "family": "Caveat", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/caveat/v18/WnznHAc5bAfYB2QRah7pcpNvOx-pjfJ9SIKjYBxPigs.ttf", + "500": "https://fonts.gstatic.com/s/caveat/v18/WnznHAc5bAfYB2QRah7pcpNvOx-pjcB9SIKjYBxPigs.ttf", + "600": "https://fonts.gstatic.com/s/caveat/v18/WnznHAc5bAfYB2QRah7pcpNvOx-pjSx6SIKjYBxPigs.ttf", + "700": "https://fonts.gstatic.com/s/caveat/v18/WnznHAc5bAfYB2QRah7pcpNvOx-pjRV6SIKjYBxPigs.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/caveat/v18/WnznHAc5bAfYB2QRah7pcpNvOx-pjfJ9eIOpZA.ttf" + }, + { + "family": "Caveat Brush", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/caveatbrush/v11/EYq0maZfwr9S9-ETZc3fKXtMW7mT03pdQw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/caveatbrush/v11/EYq0maZfwr9S9-ETZc3fKXt8WrOX.ttf" + }, + { + "family": "Cedarville Cursive", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cedarvillecursive/v17/yYL00g_a2veiudhUmxjo5VKkoqA-B_neJbBxw8BeTg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cedarvillecursive/v17/yYL00g_a2veiudhUmxjo5VKkoqA-B_nuJLp1.ttf" + }, + { + "family": "Ceviche One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cevicheone/v16/gyB4hws1IcA6JzR-GB_JX6zdZ4vZVbgZ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cevicheone/v16/gyB4hws1IcA6JzR-GB_JX5zcbY8.ttf" + }, + { + "family": "Chakra Petch", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/chakrapetch/v11/cIflMapbsEk7TDLdtEz1BwkeNIhFQJXE3AY00g.ttf", + "300italic": "https://fonts.gstatic.com/s/chakrapetch/v11/cIfnMapbsEk7TDLdtEz1BwkWmpLJQp_A_gMk0izH.ttf", + "regular": "https://fonts.gstatic.com/s/chakrapetch/v11/cIf6MapbsEk7TDLdtEz1BwkmmKBhSL7Y1Q.ttf", + "italic": "https://fonts.gstatic.com/s/chakrapetch/v11/cIfkMapbsEk7TDLdtEz1BwkWmqplarvI1R8t.ttf", + "500": "https://fonts.gstatic.com/s/chakrapetch/v11/cIflMapbsEk7TDLdtEz1BwkebIlFQJXE3AY00g.ttf", + "500italic": "https://fonts.gstatic.com/s/chakrapetch/v11/cIfnMapbsEk7TDLdtEz1BwkWmpKRQ5_A_gMk0izH.ttf", + "600": "https://fonts.gstatic.com/s/chakrapetch/v11/cIflMapbsEk7TDLdtEz1BwkeQI5FQJXE3AY00g.ttf", + "600italic": "https://fonts.gstatic.com/s/chakrapetch/v11/cIfnMapbsEk7TDLdtEz1BwkWmpK9RJ_A_gMk0izH.ttf", + "700": "https://fonts.gstatic.com/s/chakrapetch/v11/cIflMapbsEk7TDLdtEz1BwkeJI9FQJXE3AY00g.ttf", + "700italic": "https://fonts.gstatic.com/s/chakrapetch/v11/cIfnMapbsEk7TDLdtEz1BwkWmpLZRZ_A_gMk0izH.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chakrapetch/v11/cIf6MapbsEk7TDLdtEz1BwkWmapl.ttf" + }, + { + "family": "Changa", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/changa/v27/2-c79JNi2YuVOUcOarRPgnNGooxCZy2xQjDp9htf1ZM.ttf", + "300": "https://fonts.gstatic.com/s/changa/v27/2-c79JNi2YuVOUcOarRPgnNGooxCZ_OxQjDp9htf1ZM.ttf", + "regular": "https://fonts.gstatic.com/s/changa/v27/2-c79JNi2YuVOUcOarRPgnNGooxCZ62xQjDp9htf1ZM.ttf", + "500": "https://fonts.gstatic.com/s/changa/v27/2-c79JNi2YuVOUcOarRPgnNGooxCZ5-xQjDp9htf1ZM.ttf", + "600": "https://fonts.gstatic.com/s/changa/v27/2-c79JNi2YuVOUcOarRPgnNGooxCZ3O2QjDp9htf1ZM.ttf", + "700": "https://fonts.gstatic.com/s/changa/v27/2-c79JNi2YuVOUcOarRPgnNGooxCZ0q2QjDp9htf1ZM.ttf", + "800": "https://fonts.gstatic.com/s/changa/v27/2-c79JNi2YuVOUcOarRPgnNGooxCZy22QjDp9htf1ZM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/changa/v27/2-c79JNi2YuVOUcOarRPgnNGooxCZ62xcjHj8g.ttf" + }, + { + "family": "Changa One", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/changaone/v20/xfu00W3wXn3QLUJXhzq46AbouLfbK64.ttf", + "italic": "https://fonts.gstatic.com/s/changaone/v20/xfu20W3wXn3QLUJXhzq42ATivJXeO67ISw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/changaone/v20/xfu00W3wXn3QLUJXhzq42AfivA.ttf" + }, + { + "family": "Chango", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/chango/v27/2V0cKI0OB5U7WaJyz324TFUaAw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chango/v27/2V0cKI0OB5U7WaJCzne8.ttf" + }, + { + "family": "Charis SIL", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/charissil/v2/oPWK_kV3l-s-Q8govXvKrPrmYjZ2Xn0.ttf", + "italic": "https://fonts.gstatic.com/s/charissil/v2/oPWI_kV3l-s-Q8govXvKnPjsZhRzTn2Ozw.ttf", + "700": "https://fonts.gstatic.com/s/charissil/v2/oPWJ_kV3l-s-Q8govXvKlEbJRj5dQnSX1ko.ttf", + "700italic": "https://fonts.gstatic.com/s/charissil/v2/oPWX_kV3l-s-Q8govXvKnPjU2jtXRlaSxkrMCQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/charissil/v2/oPWK_kV3l-s-Q8govXvKnPvsZg.ttf" + }, + { + "family": "Charm", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/charm/v11/7cHmv4oii5K0MeYvIe804WIo.ttf", + "700": "https://fonts.gstatic.com/s/charm/v11/7cHrv4oii5K0Md6TDss8yn4hnCci.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/charm/v11/7cHmv4oii5K0MdYuK-s.ttf" + }, + { + "family": "Charmonman", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/charmonman/v18/MjQDmiR3vP_nuxDv47jiWJGovLdh6OE.ttf", + "700": "https://fonts.gstatic.com/s/charmonman/v18/MjQAmiR3vP_nuxDv47jiYC2HmL9K9OhmGnY.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/charmonman/v18/MjQDmiR3vP_nuxDv47jiaJCiuA.ttf" + }, + { + "family": "Chathura", + "variants": [ + "100", + "300", + "regular", + "700", + "800" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v20", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/chathura/v20/_gP91R7-rzUuVjim42dEq0SbTvZyuDo.ttf", + "300": "https://fonts.gstatic.com/s/chathura/v20/_gP81R7-rzUuVjim42eMiWSxYPp7oSNy.ttf", + "regular": "https://fonts.gstatic.com/s/chathura/v20/_gP71R7-rzUuVjim418goUC5S-Zy.ttf", + "700": "https://fonts.gstatic.com/s/chathura/v20/_gP81R7-rzUuVjim42ecjmSxYPp7oSNy.ttf", + "800": "https://fonts.gstatic.com/s/chathura/v20/_gP81R7-rzUuVjim42eAjWSxYPp7oSNy.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chathura/v20/_gP71R7-rzUuVjim428hq0Q.ttf" + }, + { + "family": "Chau Philomene One", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/chauphilomeneone/v15/55xxezRsPtfie1vPY49qzdgSlJiHRQFsnIx7QMISdQ.ttf", + "italic": "https://fonts.gstatic.com/s/chauphilomeneone/v15/55xzezRsPtfie1vPY49qzdgSlJiHRQFcnoZ_YscCdXQB.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chauphilomeneone/v15/55xxezRsPtfie1vPY49qzdgSlJiHRQFcnYZ_.ttf" + }, + { + "family": "Chela One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/chelaone/v21/6ae-4KC7Uqgdz_JZdPIy31vWNTMwoQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chelaone/v21/6ae-4KC7Uqgdz_JZdPIC3lHS.ttf" + }, + { + "family": "Chelsea Market", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/chelseamarket/v13/BCawqZsHqfr89WNP_IApC8tzKBhlLA4uKkWk.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chelseamarket/v13/BCawqZsHqfr89WNP_IApC8tzKChkJgo.ttf" + }, + { + "family": "Chenla", + "variants": [ + "regular" + ], + "subsets": [ + "khmer" + ], + "version": "v25", + "lastModified": "2022-09-22", + "files": { + "regular": "https://fonts.gstatic.com/s/chenla/v25/SZc43FDpIKu8WZ9eXxfonUPL6Q.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chenla/v25/SZc43FDpIKu8WZ9uXh3s.ttf" + }, + { + "family": "Cherish", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cherish/v8/ll88K2mXUyqsDsTN5iDCI6IJjg8.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cherish/v8/ll88K2mXUyqsDsTN1iHIJw.ttf" + }, + { + "family": "Cherry Bomb One", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/cherrybombone/v9/y83DW4od1h6KlV3c6JJhRhGOdhrKDNpF41fr-w.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cherrybombone/v9/y83DW4od1h6KlV3c6JJhRhGOdhr6DdBB.ttf" + }, + { + "family": "Cherry Cream Soda", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cherrycreamsoda/v21/UMBIrOxBrW6w2FFyi9paG0fdVdRciTd6Cd47DJ7G.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cherrycreamsoda/v21/UMBIrOxBrW6w2FFyi9paG0fdVdRciQd7A9o.ttf" + }, + { + "family": "Cherry Swash", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cherryswash/v20/i7dNIFByZjaNAMxtZcnfAy58QHi-EwWMbg.ttf", + "700": "https://fonts.gstatic.com/s/cherryswash/v20/i7dSIFByZjaNAMxtZcnfAy5E_FeaGy6QZ3WfYg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cherryswash/v20/i7dNIFByZjaNAMxtZcnfAy5MQXK6.ttf" + }, + { + "family": "Chewy", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/chewy/v18/uK_94ruUb-k-wk5xIDMfO-ed.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chewy/v18/uK_94ruUb-k-wn5wKjc.ttf" + }, + { + "family": "Chicle", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/chicle/v25/lJwG-pw9i2dqU-BDyWKuobYSxw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chicle/v25/lJwG-pw9i2dqU-BzyGiq.ttf" + }, + { + "family": "Chilanka", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "malayalam" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/chilanka/v20/WWXRlj2DZQiMJYaYRrJQI9EAZhTO.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chilanka/v20/WWXRlj2DZQiMJYaYRoJRKdU.ttf" + }, + { + "family": "Chivo", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_vB7ul2DSFXjQiQ.ttf", + "200": "https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_PB_ul2DSFXjQiQ.ttf", + "300": "https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_4h_ul2DSFXjQiQ.ttf", + "regular": "https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_vB_ul2DSFXjQiQ.ttf", + "500": "https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_jh_ul2DSFXjQiQ.ttf", + "600": "https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_Yhjul2DSFXjQiQ.ttf", + "700": "https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_Wxjul2DSFXjQiQ.ttf", + "800": "https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_PBjul2DSFXjQiQ.ttf", + "900": "https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_FRjul2DSFXjQiQ.ttf", + "100italic": "https://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFwG1WrWN33AiasJ.ttf", + "200italic": "https://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyG1GrWN33AiasJ.ttf", + "300italic": "https://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFxY1GrWN33AiasJ.ttf", + "italic": "https://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFwG1GrWN33AiasJ.ttf", + "500italic": "https://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFw01GrWN33AiasJ.ttf", + "600italic": "https://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFzY02rWN33AiasJ.ttf", + "700italic": "https://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFzh02rWN33AiasJ.ttf", + "800italic": "https://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyG02rWN33AiasJ.ttf", + "900italic": "https://fonts.gstatic.com/s/chivo/v18/va9Z4kzIxd1KFrBtW-13ZHhT-jDqdFyv02rWN33AiasJ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chivo/v18/va9b4kzIxd1KFppkaRKvDRPJVDf_vB_elmrW.ttf" + }, + { + "family": "Chivo Mono", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/chivomono/v9/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7hrqfVKphL03l4.ttf", + "200": "https://fonts.gstatic.com/s/chivomono/v9/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5hr6fVKphL03l4.ttf", + "300": "https://fonts.gstatic.com/s/chivomono/v9/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D6_r6fVKphL03l4.ttf", + "regular": "https://fonts.gstatic.com/s/chivomono/v9/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7hr6fVKphL03l4.ttf", + "500": "https://fonts.gstatic.com/s/chivomono/v9/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7Tr6fVKphL03l4.ttf", + "600": "https://fonts.gstatic.com/s/chivomono/v9/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D4_qKfVKphL03l4.ttf", + "700": "https://fonts.gstatic.com/s/chivomono/v9/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D4GqKfVKphL03l4.ttf", + "800": "https://fonts.gstatic.com/s/chivomono/v9/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5hqKfVKphL03l4.ttf", + "900": "https://fonts.gstatic.com/s/chivomono/v9/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D5IqKfVKphL03l4.ttf", + "100italic": "https://fonts.gstatic.com/s/chivomono/v9/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7E-XIJxp1ml4imo.ttf", + "200italic": "https://fonts.gstatic.com/s/chivomono/v9/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7M-WIJxp1ml4imo.ttf", + "300italic": "https://fonts.gstatic.com/s/chivomono/v9/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7BGWIJxp1ml4imo.ttf", + "italic": "https://fonts.gstatic.com/s/chivomono/v9/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7E-WIJxp1ml4imo.ttf", + "500italic": "https://fonts.gstatic.com/s/chivomono/v9/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7H2WIJxp1ml4imo.ttf", + "600italic": "https://fonts.gstatic.com/s/chivomono/v9/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7JGRIJxp1ml4imo.ttf", + "700italic": "https://fonts.gstatic.com/s/chivomono/v9/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7KiRIJxp1ml4imo.ttf", + "800italic": "https://fonts.gstatic.com/s/chivomono/v9/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7M-RIJxp1ml4imo.ttf", + "900italic": "https://fonts.gstatic.com/s/chivomono/v9/mFTjWbgRxKvF_Z5eQMO9gxoZ20KOQ0Hs2ysp7OaRIJxp1ml4imo.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chivomono/v9/mFThWbgRxKvF_Z5eQMO9qRMrJJrnKNtC3D7hr5fUIJw.ttf" + }, + { + "family": "Chocolate Classical Sans", + "variants": [ + "regular" + ], + "subsets": [ + "chinese-hongkong", + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/chocolateclassicalsans/v5/nuFqD-PLTZX4XIgT-P2ToCDudWHHflqUpTpfjWdDPI2J9mHITw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chocolateclassicalsans/v5/nuFqD-PLTZX4XIgT-P2ToCDudWHHflqUpTpfjWdzPYeN.ttf" + }, + { + "family": "Chokokutai", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/chokokutai/v10/kmK4Zqw4HwvCeHGM8Fws9y7ypu1Kr7I.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chokokutai/v10/kmK4Zqw4HwvCeHGM8Fwsxy_4og.ttf" + }, + { + "family": "Chonburi", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/chonburi/v12/8AtqGs-wOpGRTBq66IWaFr3biAfZ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/chonburi/v12/8AtqGs-wOpGRTBq66LWbHLk.ttf" + }, + { + "family": "Cinzel", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-tbnTYrvDE5ZdqU.ttf", + "500": "https://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-uTnTYrvDE5ZdqU.ttf", + "600": "https://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-gjgTYrvDE5ZdqU.ttf", + "700": "https://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-jHgTYrvDE5ZdqU.ttf", + "800": "https://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-lbgTYrvDE5ZdqU.ttf", + "900": "https://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-n_gTYrvDE5ZdqU.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cinzel/v23/8vIU7ww63mVu7gtR-kwKxNvkNOjw-tbnfYvlCA.ttf" + }, + { + "family": "Cinzel Decorative", + "variants": [ + "regular", + "700", + "900" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cinzeldecorative/v16/daaCSScvJGqLYhG8nNt8KPPswUAPnh7URs1LaCyC.ttf", + "700": "https://fonts.gstatic.com/s/cinzeldecorative/v16/daaHSScvJGqLYhG8nNt8KPPswUAPniZoaelDQzCLlQXE.ttf", + "900": "https://fonts.gstatic.com/s/cinzeldecorative/v16/daaHSScvJGqLYhG8nNt8KPPswUAPniZQa-lDQzCLlQXE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cinzeldecorative/v16/daaCSScvJGqLYhG8nNt8KPPswUAPni7VTMk.ttf" + }, + { + "family": "Clicker Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/clickerscript/v13/raxkHiKPvt8CMH6ZWP8PdlEq72rY2zqUKafv.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/clickerscript/v13/raxkHiKPvt8CMH6ZWP8PdlEq71rZ0T4.ttf" + }, + { + "family": "Climate Crisis", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/climatecrisis/v8/wEOpEB3AntNeKCPBVW9XOKlmp3AUgWFN1DvIvcM0gFp6jaUrGb7PsQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/climatecrisis/v8/wEOpEB3AntNeKCPBVW9XOKlmp3AUgWFN1DvIvcM0gFpKjK8v.ttf" + }, + { + "family": "Coda", + "variants": [ + "regular", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/coda/v21/SLXHc1jY5nQ8JUIMapaN39I.ttf", + "800": "https://fonts.gstatic.com/s/coda/v21/SLXIc1jY5nQ8HeIgTp6mw9t1cX8.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/coda/v21/SLXHc1jY5nQ8FUMGbg.ttf" + }, + { + "family": "Codystar", + "variants": [ + "300", + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/codystar/v17/FwZf7-Q1xVk-40qxOuYsyuyrj0e29bfC.ttf", + "regular": "https://fonts.gstatic.com/s/codystar/v17/FwZY7-Q1xVk-40qxOt6A4sijpFu_.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/codystar/v17/FwZY7-Q1xVk-40qxOu6B6Mw.ttf" + }, + { + "family": "Coiny", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/coiny/v16/gyByhwU1K989PXwbElSvO5Tc.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/coiny/v16/gyByhwU1K989PUwaGFA.ttf" + }, + { + "family": "Combo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/combo/v21/BXRlvF3Jh_fIhg0iBu9y8Hf0.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/combo/v21/BXRlvF3Jh_fIhj0jDOs.ttf" + }, + { + "family": "Comfortaa", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v45", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/comfortaa/v45/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4TbMPrQVIT9c2c8.ttf", + "regular": "https://fonts.gstatic.com/s/comfortaa/v45/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4WjMPrQVIT9c2c8.ttf", + "500": "https://fonts.gstatic.com/s/comfortaa/v45/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4VrMPrQVIT9c2c8.ttf", + "600": "https://fonts.gstatic.com/s/comfortaa/v45/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4bbLPrQVIT9c2c8.ttf", + "700": "https://fonts.gstatic.com/s/comfortaa/v45/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4Y_LPrQVIT9c2c8.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/comfortaa/v45/1Pt_g8LJRfWJmhDAuUsSQamb1W0lwk4S4WjMDrUfJQ.ttf" + }, + { + "family": "Comforter", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/comforter/v7/H4clBXOCl8nQnlaql3Qa6JG8iqeuag.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/comforter/v7/H4clBXOCl8nQnlaql3Qq6Zu4.ttf" + }, + { + "family": "Comforter Brush", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/comforterbrush/v7/Y4GTYa1xVSggrfzZI5WMjxRaOz0jwLL9Th8YYA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/comforterbrush/v7/Y4GTYa1xVSggrfzZI5WMjxRaOz0Twbj5.ttf" + }, + { + "family": "Comic Neue", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/comicneue/v8/4UaErEJDsxBrF37olUeD_wHLwpteLwtHJlc.ttf", + "300italic": "https://fonts.gstatic.com/s/comicneue/v8/4UaarEJDsxBrF37olUeD96_RTplUKylCNlcw_Q.ttf", + "regular": "https://fonts.gstatic.com/s/comicneue/v8/4UaHrEJDsxBrF37olUeDx63j5pN1MwI.ttf", + "italic": "https://fonts.gstatic.com/s/comicneue/v8/4UaFrEJDsxBrF37olUeD96_p4rFwIwJePw.ttf", + "700": "https://fonts.gstatic.com/s/comicneue/v8/4UaErEJDsxBrF37olUeD_xHMwpteLwtHJlc.ttf", + "700italic": "https://fonts.gstatic.com/s/comicneue/v8/4UaarEJDsxBrF37olUeD96_RXp5UKylCNlcw_Q.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/comicneue/v8/4UaHrEJDsxBrF37olUeD96zp4g.ttf" + }, + { + "family": "Coming Soon", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/comingsoon/v19/qWcuB6mzpYL7AJ2VfdQR1u-SUjjzsykh.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/comingsoon/v19/qWcuB6mzpYL7AJ2VfdQR1t-TWDw.ttf" + }, + { + "family": "Comme", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1z5cBr644fWsRO9w.ttf", + "200": "https://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zZcFr644fWsRO9w.ttf", + "300": "https://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zu8Fr644fWsRO9w.ttf", + "regular": "https://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1z5cFr644fWsRO9w.ttf", + "500": "https://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1z18Fr644fWsRO9w.ttf", + "600": "https://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zO8Zr644fWsRO9w.ttf", + "700": "https://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zAsZr644fWsRO9w.ttf", + "800": "https://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zZcZr644fWsRO9w.ttf", + "900": "https://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1zTMZr644fWsRO9w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/comme/v2/8QIUdirKhMbn-uG1kHz0MgviDe1z5cFb6oQb.ttf" + }, + { + "family": "Commissioner", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTMNcGPe7Fu0jUdk.ttf", + "200": "https://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTENdGPe7Fu0jUdk.ttf", + "300": "https://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTJ1dGPe7Fu0jUdk.ttf", + "regular": "https://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTMNdGPe7Fu0jUdk.ttf", + "500": "https://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTPFdGPe7Fu0jUdk.ttf", + "600": "https://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTB1aGPe7Fu0jUdk.ttf", + "700": "https://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTCRaGPe7Fu0jUdk.ttf", + "800": "https://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTENaGPe7Fu0jUdk.ttf", + "900": "https://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTGpaGPe7Fu0jUdk.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/commissioner/v20/tDaH2o2WnlgI0FNDgduEk4jAhwgumbU1SVfU5BD8OuRL8OstC6KOhgvBYWSFJ-Mgdrgiju6fF8meZm0rk4eF-ZugTMNdKPaxEg.ttf" + }, + { + "family": "Concert One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/concertone/v22/VEM1Ro9xs5PjtzCu-srDqRTlhv-CuVAQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/concertone/v22/VEM1Ro9xs5PjtzCu-srDqSTkjPs.ttf" + }, + { + "family": "Condiment", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/condiment/v24/pONk1hggFNmwvXALyH6Sq4n4o1vyCQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/condiment/v24/pONk1hggFNmwvXALyH6iqoP8.ttf" + }, + { + "family": "Content", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "khmer" + ], + "version": "v24", + "lastModified": "2022-09-22", + "files": { + "regular": "https://fonts.gstatic.com/s/content/v24/zrfl0HLayePhU_AwUaDyIiL0RCg.ttf", + "700": "https://fonts.gstatic.com/s/content/v24/zrfg0HLayePhU_AwaRzdBirfWCHvkAI.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/content/v24/zrfl0HLayePhU_AwYaH4Jg.ttf" + }, + { + "family": "Contrail One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/contrailone/v19/eLGbP-j_JA-kG0_Zo51noafdZUvt_c092w.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/contrailone/v19/eLGbP-j_JA-kG0_Zo51noaftZEHp.ttf" + }, + { + "family": "Convergence", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/convergence/v15/rax5HiePvdgXPmmMHcIPYRhasU7Q8Cad.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/convergence/v15/rax5HiePvdgXPmmMHcIPYShbu0o.ttf" + }, + { + "family": "Cookie", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cookie/v21/syky-y18lb0tSbfNlQCT9tPdpw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cookie/v21/syky-y18lb0tSbf9lAqX.ttf" + }, + { + "family": "Copse", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/copse/v15/11hPGpDKz1rGb0djHkihUb-A.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/copse/v15/11hPGpDKz1rGb3diFEw.ttf" + }, + { + "family": "Corben", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/corben/v21/LYjDdGzzklQtCMp9oAlEpVs3VQ.ttf", + "700": "https://fonts.gstatic.com/s/corben/v21/LYjAdGzzklQtCMpFHCZgrXArXN7HWQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/corben/v21/LYjDdGzzklQtCMpNoQNA.ttf" + }, + { + "family": "Corinthia", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/corinthia/v11/wEO_EBrAnchaJyPMHE0FUfAL3EsHiA.ttf", + "700": "https://fonts.gstatic.com/s/corinthia/v11/wEO6EBrAnchaJyPMHE097d8v1GAbgbLXQA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/corinthia/v11/wEO_EBrAnchaJyPMHE01UPoP.ttf" + }, + { + "family": "Cormorant", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFk9TQ7Rg7A2uwYs.ttf", + "regular": "https://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFhFTQ7Rg7A2uwYs.ttf", + "500": "https://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFiNTQ7Rg7A2uwYs.ttf", + "600": "https://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFs9UQ7Rg7A2uwYs.ttf", + "700": "https://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFvZUQ7Rg7A2uwYs.ttf", + "300italic": "https://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQ9fdq6C-r0YvxdA.ttf", + "italic": "https://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQq_dq6C-r0YvxdA.ttf", + "500italic": "https://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQmfdq6C-r0YvxdA.ttf", + "600italic": "https://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQdfBq6C-r0YvxdA.ttf", + "700italic": "https://fonts.gstatic.com/s/cormorant/v21/H4c0BXOCl9bbnla_nHIq6oGzilJm9otsA9kQTPBq6C-r0YvxdA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cormorant/v21/H4c2BXOCl9bbnla_nHIA47NMUjsNbCVrFhFTc7Vq6A.ttf" + }, + { + "family": "Cormorant Garamond", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQAllvuQWJ5heb_w.ttf", + "300italic": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEPjuw-NxBKL_y94.ttf", + "regular": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3bmX5slCNuHLi8bLeY9MK7whWMhyjornFLsS6V7w.ttf", + "italic": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3ZmX5slCNuHLi8bLeY9MK7whWMhyjYrHtPkyuF7w6C.ttf", + "500": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQWlhvuQWJ5heb_w.ttf", + "500italic": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEO7ug-NxBKL_y94.ttf", + "600": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQdl9vuQWJ5heb_w.ttf", + "600italic": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEOXvQ-NxBKL_y94.ttf", + "700": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3YmX5slCNuHLi8bLeY9MK7whWMhyjQEl5vuQWJ5heb_w.ttf", + "700italic": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3WmX5slCNuHLi8bLeY9MK7whWMhyjYrEPzvA-NxBKL_y94.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cormorantgaramond/v16/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYr3tP.ttf" + }, + { + "family": "Cormorant Infant", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN9951w3_DMrQqcdJrk.ttf", + "300italic": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItcDEhRoUYNrn_Ig.ttf", + "regular": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyPU44g9vKiM1sORYSiWeAsLN993_Af2DsAXq4.ttf", + "italic": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyJU44g9vKiM1sORYSiWeAsLN997_IV3BkFTq4EPw.ttf", + "500": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN995wQ2_DMrQqcdJrk.ttf", + "500italic": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItKDAhRoUYNrn_Ig.ttf", + "600": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN995ygx_DMrQqcdJrk.ttf", + "600italic": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItBDchRoUYNrn_Ig.ttf", + "700": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyIU44g9vKiM1sORYSiWeAsLN9950ww_DMrQqcdJrk.ttf", + "700italic": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyKU44g9vKiM1sORYSiWeAsLN997_ItYDYhRoUYNrn_Ig.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cormorantinfant/v17/HhyPU44g9vKiM1sORYSiWeAsLN997_EV3A.ttf" + }, + { + "family": "Cormorant SC", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmABIU_R3y8DOWGA.ttf", + "regular": "https://fonts.gstatic.com/s/cormorantsc/v18/0yb5GD4kxqXBmOVLG30OGwserDow9Tbu-Q.ttf", + "500": "https://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmWBMU_R3y8DOWGA.ttf", + "600": "https://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmdBQU_R3y8DOWGA.ttf", + "700": "https://fonts.gstatic.com/s/cormorantsc/v18/0ybmGD4kxqXBmOVLG30OGwsmEBUU_R3y8DOWGA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cormorantsc/v18/0yb5GD4kxqXBmOVLG30OGwsurTA0.ttf" + }, + { + "family": "Cormorant Unicase", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9N_tucv7Gy0DRzS.ttf", + "regular": "https://fonts.gstatic.com/s/cormorantunicase/v24/HI_QiZUaILtOqhqgDeXoF_n1_fTGX-vTnsMnx3C9.ttf", + "500": "https://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9Mnt-cv7Gy0DRzS.ttf", + "600": "https://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9MLsOcv7Gy0DRzS.ttf", + "700": "https://fonts.gstatic.com/s/cormorantunicase/v24/HI_ViZUaILtOqhqgDeXoF_n1_fTGX9Nvsecv7Gy0DRzS.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cormorantunicase/v24/HI_QiZUaILtOqhqgDeXoF_n1_fTGX9vSlMc.ttf" + }, + { + "family": "Cormorant Upright", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1N5phDsU9X6RPzQ.ttf", + "regular": "https://fonts.gstatic.com/s/cormorantupright/v18/VuJrdM3I2Y35poFONtLdafkUCHw1y2vVjjTkeMnz.ttf", + "500": "https://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1MhpxDsU9X6RPzQ.ttf", + "600": "https://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1MNoBDsU9X6RPzQ.ttf", + "700": "https://fonts.gstatic.com/s/cormorantupright/v18/VuJudM3I2Y35poFONtLdafkUCHw1y1NpoRDsU9X6RPzQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cormorantupright/v18/VuJrdM3I2Y35poFONtLdafkUCHw1y1vUhDA.ttf" + }, + { + "family": "Courgette", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/courgette/v17/wEO_EBrAnc9BLjLQAUkFUfAL3EsHiA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/courgette/v17/wEO_EBrAnc9BLjLQAUk1UPoP.ttf" + }, + { + "family": "Courier Prime", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/courierprime/v9/u-450q2lgwslOqpF_6gQ8kELWwZjW-_-tvg.ttf", + "italic": "https://fonts.gstatic.com/s/courierprime/v9/u-4n0q2lgwslOqpF_6gQ8kELawRpX837pvjxPA.ttf", + "700": "https://fonts.gstatic.com/s/courierprime/v9/u-4k0q2lgwslOqpF_6gQ8kELY7pMf-fVqvHoJXw.ttf", + "700italic": "https://fonts.gstatic.com/s/courierprime/v9/u-4i0q2lgwslOqpF_6gQ8kELawRR4-LfrtPtNXyeAg.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/courierprime/v9/u-450q2lgwslOqpF_6gQ8kELawdpXw.ttf" + }, + { + "family": "Cousine", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "hebrew", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cousine/v27/d6lIkaiiRdih4SpPzSMlzTbtz9k.ttf", + "italic": "https://fonts.gstatic.com/s/cousine/v27/d6lKkaiiRdih4SpP_SEvyRTo39l8hw.ttf", + "700": "https://fonts.gstatic.com/s/cousine/v27/d6lNkaiiRdih4SpP9Z8K6T7G09BlnmQ.ttf", + "700italic": "https://fonts.gstatic.com/s/cousine/v27/d6lPkaiiRdih4SpP_SEXdTvM1_JgjmRpOA.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cousine/v27/d6lIkaiiRdih4SpP_SIvyQ.ttf" + }, + { + "family": "Coustard", + "variants": [ + "regular", + "900" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/coustard/v16/3XFpErgg3YsZ5fqUU9UPvWXuROTd.ttf", + "900": "https://fonts.gstatic.com/s/coustard/v16/3XFuErgg3YsZ5fqUU-2LkEHmb_jU3eRL.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/coustard/v16/3XFpErgg3YsZ5fqUU-UOt2E.ttf" + }, + { + "family": "Covered By Your Grace", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/coveredbyyourgrace/v15/QGYwz-AZahWOJJI9kykWW9mD6opopoqXSOS0FgItq6bFIg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/coveredbyyourgrace/v15/QGYwz-AZahWOJJI9kykWW9mD6opopoqXSOSEFwgp.ttf" + }, + { + "family": "Crafty Girls", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/craftygirls/v16/va9B4kXI39VaDdlPJo8N_NvuQR37fF3Wlg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/craftygirls/v16/va9B4kXI39VaDdlPJo8N_NveQBf_.ttf" + }, + { + "family": "Creepster", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/creepster/v13/AlZy_zVUqJz4yMrniH4hdXf4XB0Tow.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/creepster/v13/AlZy_zVUqJz4yMrniH4RdH38.ttf" + }, + { + "family": "Crete Round", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/creteround/v15/55xoey1sJNPjPiv1ZZZrxJ1827zAKnxN.ttf", + "italic": "https://fonts.gstatic.com/s/creteround/v15/55xqey1sJNPjPiv1ZZZrxK1-0bjiL2xNhKc.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/creteround/v15/55xoey1sJNPjPiv1ZZZrxK190bg.ttf" + }, + { + "family": "Crimson Pro", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZTm18OJE_VNWoyQ.ttf", + "300": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZkG18OJE_VNWoyQ.ttf", + "regular": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZzm18OJE_VNWoyQ.ttf", + "500": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZ_G18OJE_VNWoyQ.ttf", + "600": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZEGp8OJE_VNWoyQ.ttf", + "700": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZKWp8OJE_VNWoyQ.ttf", + "800": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZTmp8OJE_VNWoyQ.ttf", + "900": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZZ2p8OJE_VNWoyQ.ttf", + "200italic": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi4Ue5s7dtC4yZNE.ttf", + "300italic": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi7Ke5s7dtC4yZNE.ttf", + "italic": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi6Ue5s7dtC4yZNE.ttf", + "500italic": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi6me5s7dtC4yZNE.ttf", + "600italic": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi5KfJs7dtC4yZNE.ttf", + "700italic": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi5zfJs7dtC4yZNE.ttf", + "800italic": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi4UfJs7dtC4yZNE.ttf", + "900italic": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uSsoa5M_tv7IihmnkabAReu49Y_Bo-HVKMBi49fJs7dtC4yZNE.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/crimsonpro/v24/q5uUsoa5M_tv7IihmnkabC5XiXCAlXGks1WZzm1MOZs7.ttf" + }, + { + "family": "Crimson Text", + "variants": [ + "regular", + "italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJvaAJSA_JN3Q.ttf", + "italic": "https://fonts.gstatic.com/s/crimsontext/v19/wlpogwHKFkZgtmSR3NB0oRJfaghWIfdd3ahG.ttf", + "600": "https://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJXsCx2C9lR1LFffg.ttf", + "600italic": "https://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajCOD9NV9rRPfrKu.ttf", + "700": "https://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJX1C12C9lR1LFffg.ttf", + "700italic": "https://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajDqDtNV9rRPfrKu.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJfaQhW.ttf" + }, + { + "family": "Croissant One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/croissantone/v26/3y9n6bU9bTPg4m8NDy3Kq24UM3pqn5cdJ-4.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/croissantone/v26/3y9n6bU9bTPg4m8NDy3Kq24UA3tgmw.ttf" + }, + { + "family": "Crushed", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/crushed/v29/U9Mc6dym6WXImTlFT1kfuIqyLzA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/crushed/v29/U9Mc6dym6WXImTlFf1gVvA.ttf" + }, + { + "family": "Cuprum", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6ZjzSJjQjgnU.ttf", + "500": "https://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmg9f6ZjzSJjQjgnU.ttf", + "600": "https://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmgzv9ZjzSJjQjgnU.ttf", + "700": "https://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmgwL9ZjzSJjQjgnU.ttf", + "italic": "https://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25jn_YIhYmknUPEA.ttf", + "500italic": "https://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25vH_YIhYmknUPEA.ttf", + "600italic": "https://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25UHjYIhYmknUPEA.ttf", + "700italic": "https://fonts.gstatic.com/s/cuprum/v25/dg47_pLmvrkcOkBNI_FMh0j91rkhli25aXjYIhYmknUPEA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cuprum/v25/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6Vj3YIg.ttf" + }, + { + "family": "Cute Font", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v22", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/cutefont/v22/Noaw6Uny2oWPbSHMrY6vmJNVNC9hkw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cutefont/v22/Noaw6Uny2oWPbSHMrY6fmZlR.ttf" + }, + { + "family": "Cutive", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cutive/v22/NaPZcZ_fHOhV3Ip7T_hDoyqlZQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cutive/v22/NaPZcZ_fHOhV3IpLTvJH.ttf" + }, + { + "family": "Cutive Mono", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/cutivemono/v21/m8JWjfRfY7WVjVi2E-K9H5RFRG-K3Mud.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/cutivemono/v21/m8JWjfRfY7WVjVi2E-K9H6RETms.ttf" + }, + { + "family": "DM Mono", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "500", + "500italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/dmmono/v14/aFTR7PB1QTsUX8KYvrGyIYSnbKX9Rlk.ttf", + "300italic": "https://fonts.gstatic.com/s/dmmono/v14/aFTT7PB1QTsUX8KYth-orYataIf4VllXuA.ttf", + "regular": "https://fonts.gstatic.com/s/dmmono/v14/aFTU7PB1QTsUX8KYhh2aBYyMcKw.ttf", + "italic": "https://fonts.gstatic.com/s/dmmono/v14/aFTW7PB1QTsUX8KYth-QAa6JYKzkXw.ttf", + "500": "https://fonts.gstatic.com/s/dmmono/v14/aFTR7PB1QTsUX8KYvumzIYSnbKX9Rlk.ttf", + "500italic": "https://fonts.gstatic.com/s/dmmono/v14/aFTT7PB1QTsUX8KYth-o9YetaIf4VllXuA.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dmmono/v14/aFTU7PB1QTsUX8KYthyQAQ.ttf" + }, + { + "family": "DM Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAop1hTmf3ZGMZpg.ttf", + "200": "https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAIpxhTmf3ZGMZpg.ttf", + "300": "https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwA_JxhTmf3ZGMZpg.ttf", + "regular": "https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxhTmf3ZGMZpg.ttf", + "500": "https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAkJxhTmf3ZGMZpg.ttf", + "600": "https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAfJthTmf3ZGMZpg.ttf", + "700": "https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwARZthTmf3ZGMZpg.ttf", + "800": "https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAIpthTmf3ZGMZpg.ttf", + "900": "https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAC5thTmf3ZGMZpg.ttf", + "100italic": "https://fonts.gstatic.com/s/dmsans/v15/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDG3zRmYJpso5.ttf", + "200italic": "https://fonts.gstatic.com/s/dmsans/v15/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8JDW3zRmYJpso5.ttf", + "300italic": "https://fonts.gstatic.com/s/dmsans/v15/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat_XDW3zRmYJpso5.ttf", + "italic": "https://fonts.gstatic.com/s/dmsans/v15/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDW3zRmYJpso5.ttf", + "500italic": "https://fonts.gstatic.com/s/dmsans/v15/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-7DW3zRmYJpso5.ttf", + "600italic": "https://fonts.gstatic.com/s/dmsans/v15/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9XCm3zRmYJpso5.ttf", + "700italic": "https://fonts.gstatic.com/s/dmsans/v15/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9uCm3zRmYJpso5.ttf", + "800italic": "https://fonts.gstatic.com/s/dmsans/v15/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8JCm3zRmYJpso5.ttf", + "900italic": "https://fonts.gstatic.com/s/dmsans/v15/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8gCm3zRmYJpso5.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dmsans/v15/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxRT23z.ttf" + }, + { + "family": "DM Serif Display", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/dmserifdisplay/v15/-nFnOHM81r4j6k0gjAW3mujVU2B2K_d709jy92k.ttf", + "italic": "https://fonts.gstatic.com/s/dmserifdisplay/v15/-nFhOHM81r4j6k0gjAW3mujVU2B2G_Vx1_r352np3Q.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dmserifdisplay/v15/-nFnOHM81r4j6k0gjAW3mujVU2B2G_Zx1w.ttf" + }, + { + "family": "DM Serif Text", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/dmseriftext/v12/rnCu-xZa_krGokauCeNq1wWyafOPXHIJErY.ttf", + "italic": "https://fonts.gstatic.com/s/dmseriftext/v12/rnCw-xZa_krGokauCeNq1wWyWfGFWFAMArZKqQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dmseriftext/v12/rnCu-xZa_krGokauCeNq1wWyWfKFWA.ttf" + }, + { + "family": "Dai Banna SIL", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "new-tai-lue" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/daibannasil/v2/lW-lwj0AJWmpwGyJ2uEoA4I7tYKoDsrKOgMX95A.ttf", + "300italic": "https://fonts.gstatic.com/s/daibannasil/v2/lW-jwj0AJWmpwGyJ2uEoA4I7vSyygsjAPiES55D3Vg.ttf", + "regular": "https://fonts.gstatic.com/s/daibannasil/v2/lW-4wj0AJWmpwGyJ2uEoA4I7jS6AKsLhJgo.ttf", + "italic": "https://fonts.gstatic.com/s/daibannasil/v2/lW-mwj0AJWmpwGyJ2uEoA4I7vSyKLuDkNgoO7g.ttf", + "500": "https://fonts.gstatic.com/s/daibannasil/v2/lW-lwj0AJWmpwGyJ2uEoA4I7tdqpDsrKOgMX95A.ttf", + "500italic": "https://fonts.gstatic.com/s/daibannasil/v2/lW-jwj0AJWmpwGyJ2uEoA4I7vSyy2snAPiES55D3Vg.ttf", + "600": "https://fonts.gstatic.com/s/daibannasil/v2/lW-lwj0AJWmpwGyJ2uEoA4I7tfauDsrKOgMX95A.ttf", + "600italic": "https://fonts.gstatic.com/s/daibannasil/v2/lW-jwj0AJWmpwGyJ2uEoA4I7vSyy9s7APiES55D3Vg.ttf", + "700": "https://fonts.gstatic.com/s/daibannasil/v2/lW-lwj0AJWmpwGyJ2uEoA4I7tZKvDsrKOgMX95A.ttf", + "700italic": "https://fonts.gstatic.com/s/daibannasil/v2/lW-jwj0AJWmpwGyJ2uEoA4I7vSyyks_APiES55D3Vg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/daibannasil/v2/lW-4wj0AJWmpwGyJ2uEoA4I7vS-KLg.ttf" + }, + { + "family": "Damion", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/damion/v15/hv-XlzJ3KEUe_YZUbWY3MTFgVg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/damion/v15/hv-XlzJ3KEUe_YZkbGwz.ttf" + }, + { + "family": "Dancing Script", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/dancingscript/v25/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSoHTeB9ptDqpw.ttf", + "500": "https://fonts.gstatic.com/s/dancingscript/v25/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BAyoHTeB9ptDqpw.ttf", + "600": "https://fonts.gstatic.com/s/dancingscript/v25/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7B7y0HTeB9ptDqpw.ttf", + "700": "https://fonts.gstatic.com/s/dancingscript/v25/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7B1i0HTeB9ptDqpw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dancingscript/v25/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSo3TOp5.ttf" + }, + { + "family": "Danfo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/danfo/v3/snf3s0u_98t16THfK1Csj3N41ZqbYDe5S71ToPrNKQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/danfo/v3/snf3s0u_98t16THfK1Csj3N41ZqbYDeJSrdX.ttf" + }, + { + "family": "Dangrek", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v30", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/dangrek/v30/LYjCdG30nEgoH8E2gCNqqVIuTN4.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dangrek/v30/LYjCdG30nEgoH8E2sCJgrQ.ttf" + }, + { + "family": "Darker Grotesque", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXxpqn7y-XFyZFUB.ttf", + "regular": "https://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXw3qn7y-XFyZFUB.ttf", + "500": "https://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXwFqn7y-XFyZFUB.ttf", + "600": "https://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXzprX7y-XFyZFUB.ttf", + "700": "https://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXzQrX7y-XFyZFUB.ttf", + "800": "https://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXy3rX7y-XFyZFUB.ttf", + "900": "https://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXyerX7y-XFyZFUB.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/darkergrotesque/v8/U9MK6cuh-mLQlC4BKCtayOfARkSVgb381b-W8-QDqXw3qk7z83U.ttf" + }, + { + "family": "Darumadrop One", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/darumadropone/v12/cY9cfjeIW11dpCKgRLi675a87IhHBJOxZQPp.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/darumadropone/v12/cY9cfjeIW11dpCKgRLi675a87LhGDpc.ttf" + }, + { + "family": "David Libre", + "variants": [ + "regular", + "500", + "700" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/davidlibre/v16/snfus0W_99N64iuYSvp4W_l86p6TYS-Y.ttf", + "500": "https://fonts.gstatic.com/s/davidlibre/v16/snfzs0W_99N64iuYSvp4W8GIw7qbSjORSo9W.ttf", + "700": "https://fonts.gstatic.com/s/davidlibre/v16/snfzs0W_99N64iuYSvp4W8HAxbqbSjORSo9W.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/davidlibre/v16/snfus0W_99N64iuYSvp4W8l94Jo.ttf" + }, + { + "family": "Dawning of a New Day", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/dawningofanewday/v20/t5t_IQMbOp2SEwuncwLRjMfIg1yYit_nAz8bhWJGNoBE.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dawningofanewday/v20/t5t_IQMbOp2SEwuncwLRjMfIg1yYit_nAw8aj2Y.ttf" + }, + { + "family": "Days One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/daysone/v18/mem9YaCnxnKRiYZOCLYVeLkWVNBt.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/daysone/v18/mem9YaCnxnKRiYZOCIYUcr0.ttf" + }, + { + "family": "Dekko", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/dekko/v21/46khlb_wWjfSrttFR0vsfl1B.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dekko/v21/46khlb_wWjfSrutETU8.ttf" + }, + { + "family": "Dela Gothic One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "greek", + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/delagothicone/v16/hESp6XxvMDRA-2eD0lXpDa6QkBAGRUsJQAlbUA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/delagothicone/v16/hESp6XxvMDRA-2eD0lXpDa6QkBA2REEN.ttf" + }, + { + "family": "Delicious Handrawn", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/delicioushandrawn/v8/wlpsgx_NAUNkpmKQifcxkQchDFo3fJ113JpDd6u3AQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/delicioushandrawn/v8/wlpsgx_NAUNkpmKQifcxkQchDFo3fJ1F3ZBH.ttf" + }, + { + "family": "Delius", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/delius/v19/PN_xRfK0pW_9e1rtYcI-jT3L_w.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/delius/v19/PN_xRfK0pW_9e1rdYMg6.ttf" + }, + { + "family": "Delius Swash Caps", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/deliusswashcaps/v23/oY1E8fPLr7v4JWCExZpWebxVKORpXXedKmeBvEYs.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/deliusswashcaps/v23/oY1E8fPLr7v4JWCExZpWebxVKORpXUecIGM.ttf" + }, + { + "family": "Delius Unicase", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/deliusunicase/v28/845BNMEwEIOVT8BmgfSzIr_6mmLHd-73LXWs.ttf", + "700": "https://fonts.gstatic.com/s/deliusunicase/v28/845CNMEwEIOVT8BmgfSzIr_6mlp7WMr_BmmlS5aw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/deliusunicase/v28/845BNMEwEIOVT8BmgfSzIr_6mlLGfeo.ttf" + }, + { + "family": "Della Respira", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/dellarespira/v22/RLp5K5v44KaueWI6iEJQBiGPRfkSu6EuTHo.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dellarespira/v22/RLp5K5v44KaueWI6iEJQBiGPdfgYvw.ttf" + }, + { + "family": "Denk One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/denkone/v19/dg4m_pzhrqcFb2IzROtHpbglShon.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/denkone/v19/dg4m_pzhrqcFb2IzRNtGr7w.ttf" + }, + { + "family": "Devonshire", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/devonshire/v27/46kqlbDwWirWr4gtBD2BX0Vq01lYAZM.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/devonshire/v27/46kqlbDwWirWr4gtBD2Bb0Rg1w.ttf" + }, + { + "family": "Dhurjati", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v24", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/dhurjati/v24/_6_8ED3gSeatXfFiFX3ySKQtuTA2.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dhurjati/v24/_6_8ED3gSeatXfFiFU3zQqA.ttf" + }, + { + "family": "Didact Gothic", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/didactgothic/v20/ahcfv8qz1zt6hCC5G4F_P4ASpUySp0LlcyQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/didactgothic/v20/ahcfv8qz1zt6hCC5G4F_P4ASlU2Yow.ttf" + }, + { + "family": "Diphylleia", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/diphylleia/v1/DtVmJxCtRKMixK4_HXsIulwm6gDXvwE.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/diphylleia/v1/DtVmJxCtRKMixK4_HXsIil0s7g.ttf" + }, + { + "family": "Diplomata", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v31", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/diplomata/v31/Cn-0JtiMXwhNwp-wKxyfYGxYrdM9Sg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/diplomata/v31/Cn-0JtiMXwhNwp-wKxyvYWZc.ttf" + }, + { + "family": "Diplomata SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/diplomatasc/v28/buExpoi3ecvs3kidKgBJo2kf-P5Oaiw4cw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/diplomatasc/v28/buExpoi3ecvs3kidKgBJo2kv-fRK.ttf" + }, + { + "family": "Do Hyeon", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v19", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/dohyeon/v19/TwMN-I8CRRU2zM86HFE3ZwaH__-C.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dohyeon/v19/TwMN-I8CRRU2zM86HGE2bQI.ttf" + }, + { + "family": "Dokdo", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v17", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/dokdo/v17/esDf315XNuCBLxLo4NaMlKcH.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dokdo/v17/esDf315XNuCBLyLp6tI.ttf" + }, + { + "family": "Domine", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/domine/v23/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X3LAI10VErGuW8Q.ttf", + "500": "https://fonts.gstatic.com/s/domine/v23/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X0DAI10VErGuW8Q.ttf", + "600": "https://fonts.gstatic.com/s/domine/v23/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X6zHI10VErGuW8Q.ttf", + "700": "https://fonts.gstatic.com/s/domine/v23/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X5XHI10VErGuW8Q.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/domine/v23/L0xhDFMnlVwD4h3Lt9JWnbX3jG-2X3LAE1wfFg.ttf" + }, + { + "family": "Donegal One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/donegalone/v21/m8JWjfRYea-ZnFz6fsK9FZRFRG-K3Mud.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/donegalone/v21/m8JWjfRYea-ZnFz6fsK9FaRETms.ttf" + }, + { + "family": "Dongle", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "korean", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-08-12", + "files": { + "300": "https://fonts.gstatic.com/s/dongle/v12/sJoG3Ltdjt6VPkqeEcxrYjWNzXvVPA.ttf", + "regular": "https://fonts.gstatic.com/s/dongle/v12/sJoF3Ltdjt6VPkqmveRPah6RxA.ttf", + "700": "https://fonts.gstatic.com/s/dongle/v12/sJoG3Ltdjt6VPkqeActrYjWNzXvVPA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dongle/v12/sJoF3Ltdjt6VPkqWvO5L.ttf" + }, + { + "family": "Doppio One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/doppioone/v13/Gg8wN5gSaBfyBw2MqCh-lgshKGpe5Fg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/doppioone/v13/Gg8wN5gSaBfyBw2MqCh-pgorLA.ttf" + }, + { + "family": "Dorsa", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/dorsa/v27/yYLn0hjd0OGwqo493XCFxAnQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dorsa/v27/yYLn0hjd0OGwqr4813Q.ttf" + }, + { + "family": "Dosis", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v32", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/dosis/v32/HhyJU5sn9vOmLxNkIwRSjTVNWLEJt7MV3BkFTq4EPw.ttf", + "300": "https://fonts.gstatic.com/s/dosis/v32/HhyJU5sn9vOmLxNkIwRSjTVNWLEJabMV3BkFTq4EPw.ttf", + "regular": "https://fonts.gstatic.com/s/dosis/v32/HhyJU5sn9vOmLxNkIwRSjTVNWLEJN7MV3BkFTq4EPw.ttf", + "500": "https://fonts.gstatic.com/s/dosis/v32/HhyJU5sn9vOmLxNkIwRSjTVNWLEJBbMV3BkFTq4EPw.ttf", + "600": "https://fonts.gstatic.com/s/dosis/v32/HhyJU5sn9vOmLxNkIwRSjTVNWLEJ6bQV3BkFTq4EPw.ttf", + "700": "https://fonts.gstatic.com/s/dosis/v32/HhyJU5sn9vOmLxNkIwRSjTVNWLEJ0LQV3BkFTq4EPw.ttf", + "800": "https://fonts.gstatic.com/s/dosis/v32/HhyJU5sn9vOmLxNkIwRSjTVNWLEJt7QV3BkFTq4EPw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dosis/v32/HhyJU5sn9vOmLxNkIwRSjTVNWLEJN7Ml3RMB.ttf" + }, + { + "family": "DotGothic16", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/dotgothic16/v18/v6-QGYjBJFKgyw5nSoDAGE7L435YPFrT.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dotgothic16/v18/v6-QGYjBJFKgyw5nSoDAGH7K6Xo.ttf" + }, + { + "family": "Dr Sugiyama", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/drsugiyama/v28/HTxoL2k4N3O9n5I1boGI7abRM4-t-g7y.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/drsugiyama/v28/HTxoL2k4N3O9n5I1boGI7ZbQOYs.ttf" + }, + { + "family": "Duru Sans", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/durusans/v20/xn7iYH8xwmSyTvEV_HOxT_fYdN-WZw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/durusans/v20/xn7iYH8xwmSyTvEV_HOBTv3c.ttf" + }, + { + "family": "DynaPuff", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RSxYu6YjrSRs4wn8.ttf", + "500": "https://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RSyQu6YjrSRs4wn8.ttf", + "600": "https://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RS8gp6YjrSRs4wn8.ttf", + "700": "https://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RS_Ep6YjrSRs4wn8.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dynapuff/v4/z7N5dRvsZDIVHbYPMhZJ3HQ83UaSu4uhr7-ZFeoYkgAr1x8RSxYu2YnhTQ.ttf" + }, + { + "family": "Dynalight", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/dynalight/v22/1Ptsg8LOU_aOmQvTsF4ISotrDfGGxA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/dynalight/v22/1Ptsg8LOU_aOmQvTsF44S4Fv.ttf" + }, + { + "family": "EB Garamond", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v30", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-6_RUA4V-e6yHgQ.ttf", + "500": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-2fRUA4V-e6yHgQ.ttf", + "600": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-NfNUA4V-e6yHgQ.ttf", + "700": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-DPNUA4V-e6yHgQ.ttf", + "800": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-a_NUA4V-e6yHgQ.ttf", + "italic": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7e8QI96WamXgXFI.ttf", + "500italic": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7eOQI96WamXgXFI.ttf", + "600italic": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7diR496WamXgXFI.ttf", + "700italic": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7dbR496WamXgXFI.ttf", + "800italic": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7c8R496WamXgXFI.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ebgaramond/v30/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-6_RkAo96.ttf" + }, + { + "family": "Eagle Lake", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/eaglelake/v24/ptRMTiqbbuNJDOiKj9wG5O7yKQNute8.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/eaglelake/v24/ptRMTiqbbuNJDOiKj9wG1O_4LQ.ttf" + }, + { + "family": "East Sea Dokdo", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v22", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/eastseadokdo/v22/xfuo0Wn2V2_KanASqXSZp22m05_aGavYS18y.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/eastseadokdo/v22/xfuo0Wn2V2_KanASqXSZp22m06_bE68.ttf" + }, + { + "family": "Eater", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/eater/v25/mtG04_FCK7bOvpu2u3FwsXsR.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/eater/v25/mtG04_FCK7bOvqu3sXU.ttf" + }, + { + "family": "Economica", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/economica/v15/Qw3fZQZaHCLgIWa29ZBrMcgAAl1lfQ.ttf", + "italic": "https://fonts.gstatic.com/s/economica/v15/Qw3ZZQZaHCLgIWa29ZBbM8IEIFh1fWUl.ttf", + "700": "https://fonts.gstatic.com/s/economica/v15/Qw3aZQZaHCLgIWa29ZBTjeckCnZ5dHw8iw.ttf", + "700italic": "https://fonts.gstatic.com/s/economica/v15/Qw3EZQZaHCLgIWa29ZBbM_q4D3x9Vnksi4M7.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/economica/v15/Qw3fZQZaHCLgIWa29ZBbMMIE.ttf" + }, + { + "family": "Eczar", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "devanagari", + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXHd6WqTIVKWJKWg.ttf", + "500": "https://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXL96WqTIVKWJKWg.ttf", + "600": "https://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXw9mWqTIVKWJKWg.ttf", + "700": "https://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDX-tmWqTIVKWJKWg.ttf", + "800": "https://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXndmWqTIVKWJKWg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/eczar/v22/BXR2vF3Pi-DLmxcpJB-qbNTyTMDXHd6mqDgR.ttf" + }, + { + "family": "Edu AU VIC WA NT Dots", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-23", + "files": { + "regular": "https://fonts.gstatic.com/s/eduauvicwantdots/v1/S6uQw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3_B4dZ6MmTX8QNLvtYEtmT2SB3_5U.ttf", + "500": "https://fonts.gstatic.com/s/eduauvicwantdots/v1/S6uQw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3_B4dZ6MmTX8QNLslYEtmT2SB3_5U.ttf", + "600": "https://fonts.gstatic.com/s/eduauvicwantdots/v1/S6uQw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3_B4dZ6MmTX8QNLiVfEtmT2SB3_5U.ttf", + "700": "https://fonts.gstatic.com/s/eduauvicwantdots/v1/S6uQw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3_B4dZ6MmTX8QNLhxfEtmT2SB3_5U.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/eduauvicwantdots/v1/S6uQw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3_B4dZ6MmTX8QNLvtYItiZ3Q.ttf" + }, + { + "family": "Edu AU VIC WA NT Guides", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-23", + "files": { + "regular": "https://fonts.gstatic.com/s/eduauvicwantguides/v1/TuG-UUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LCZuAcLMeb8FnyPdK1ZazoF08FsYlA.ttf", + "500": "https://fonts.gstatic.com/s/eduauvicwantguides/v1/TuG-UUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LCZuAcLMeb8FnyPdGVZazoF08FsYlA.ttf", + "600": "https://fonts.gstatic.com/s/eduauvicwantguides/v1/TuG-UUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LCZuAcLMeb8FnyPd9VFazoF08FsYlA.ttf", + "700": "https://fonts.gstatic.com/s/eduauvicwantguides/v1/TuG-UUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LCZuAcLMeb8FnyPdzFFazoF08FsYlA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/eduauvicwantguides/v1/TuG-UUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LCZuAcLMeb8FnyPdK1Zqz4tw.ttf" + }, + { + "family": "Edu AU VIC WA NT Hand", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/eduauvicwanthand/v1/C8cO4dY1tX2x0uuiUHFS4y7ERV-jfqJ6x063HfvcsxiYKifhtCJ1lKtFbYfTEUU.ttf", + "500": "https://fonts.gstatic.com/s/eduauvicwanthand/v1/C8cO4dY1tX2x0uuiUHFS4y7ERV-jfqJ6x063HfvcsxiYKifhtBB1lKtFbYfTEUU.ttf", + "600": "https://fonts.gstatic.com/s/eduauvicwanthand/v1/C8cO4dY1tX2x0uuiUHFS4y7ERV-jfqJ6x063HfvcsxiYKifhtPxylKtFbYfTEUU.ttf", + "700": "https://fonts.gstatic.com/s/eduauvicwanthand/v1/C8cO4dY1tX2x0uuiUHFS4y7ERV-jfqJ6x063HfvcsxiYKifhtMVylKtFbYfTEUU.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/eduauvicwanthand/v1/C8cO4dY1tX2x0uuiUHFS4y7ERV-jfqJ6x063HfvcsxiYKifhtCJ1pKpPaQ.ttf" + }, + { + "family": "Edu NSW ACT Foundation", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v2", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki9tovGLeC-sfguJ.ttf", + "500": "https://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki9fovGLeC-sfguJ.ttf", + "600": "https://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki-zpfGLeC-sfguJ.ttf", + "700": "https://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki-KpfGLeC-sfguJ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/edunswactfoundation/v2/raxRHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAYlt_QTQ0vUxJki9tosGKcis.ttf" + }, + { + "family": "Edu QLD Beginner", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE4E3oebi6vyVWCN.ttf", + "500": "https://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE423oebi6vyVWCN.ttf", + "600": "https://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE7a2Yebi6vyVWCN.ttf", + "700": "https://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE7j2Yebi6vyVWCN.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/eduqldbeginner/v3/AMOHz5iUuHLEMNXyohhc_Y56PR3A8dNLF_w3Ka4HKE4E3reaga8.ttf" + }, + { + "family": "Edu SA Beginner", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9989fo1yBydUEDs.ttf", + "500": "https://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9-09fo1yBydUEDs.ttf", + "600": "https://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9wE6fo1yBydUEDs.ttf", + "700": "https://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9zg6fo1yBydUEDs.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/edusabeginner/v3/rnC_-xRb1x-1lHXnLaZZ2xOoLIGfU3L82irpr_3C9989Tox4Aw.ttf" + }, + { + "family": "Edu TAS Beginner", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_HwemkrBWRhvk02.ttf", + "500": "https://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_HCemkrBWRhvk02.ttf", + "600": "https://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_EufWkrBWRhvk02.ttf", + "700": "https://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_EXfWkrBWRhvk02.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/edutasbeginner/v3/ZXuwe04WubHfGVY-1TcNg7AFUmshg8jIUTzK3r34f_HwelkqD2A.ttf" + }, + { + "family": "Edu VIC WA NT Beginner", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-OXlPmFXwnpkeGR.ttf", + "500": "https://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-OllPmFXwnpkeGR.ttf", + "600": "https://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-NJk_mFXwnpkeGR.ttf", + "700": "https://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-Nwk_mFXwnpkeGR.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/eduvicwantbeginner/v4/jiz2RF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7stCpElYpvPfZZ-OXlMmEVQ0.ttf" + }, + { + "family": "El Messiri", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuXwe65ghj3OoapG.ttf", + "500": "https://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuXCe65ghj3OoapG.ttf", + "600": "https://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuUufK5ghj3OoapG.ttf", + "700": "https://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuUXfK5ghj3OoapG.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/elmessiri/v22/K2FhfZBRmr9vQ1pHEey6GIGo8_pv3myYjuXwe55hjDk.ttf" + }, + { + "family": "Electrolize", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/electrolize/v18/cIf5Ma1dtE0zSiGSiED7AUEGso5tQafB.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/electrolize/v18/cIf5Ma1dtE0zSiGSiED7AXEHuIo.ttf" + }, + { + "family": "Elsie", + "variants": [ + "regular", + "900" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/elsie/v24/BCanqZABrez54yYu9slAeLgX.ttf", + "900": "https://fonts.gstatic.com/s/elsie/v24/BCaqqZABrez54x6q2-1IU6QeXSBk.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/elsie/v24/BCanqZABrez54xYv_M0.ttf" + }, + { + "family": "Elsie Swash Caps", + "variants": [ + "regular", + "900" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/elsieswashcaps/v24/845DNN8xGZyVX5MVo_upKf7KnjK0ferVKGWsUo8.ttf", + "900": "https://fonts.gstatic.com/s/elsieswashcaps/v24/845ENN8xGZyVX5MVo_upKf7KnjK0RW74DG2HToawrdU.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/elsieswashcaps/v24/845DNN8xGZyVX5MVo_upKf7KnjK0TevfLA.ttf" + }, + { + "family": "Emblema One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/emblemaone/v21/nKKT-GQ0F5dSY8vzG0rOEIRBHl57G_f_.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/emblemaone/v21/nKKT-GQ0F5dSY8vzG0rOELRAFFo.ttf" + }, + { + "family": "Emilys Candy", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/emilyscandy/v19/2EbgL-1mD1Rnb0OGKudbk0y5r9xrX84JjA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/emilyscandy/v19/2EbgL-1mD1Rnb0OGKudbk0yJrtZv.ttf" + }, + { + "family": "Encode Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHiZtWP7FJCt2c.ttf", + "200": "https://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGOHjZtWP7FJCt2c.ttf", + "300": "https://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGD_jZtWP7FJCt2c.ttf", + "regular": "https://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHjZtWP7FJCt2c.ttf", + "500": "https://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGFPjZtWP7FJCt2c.ttf", + "600": "https://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGL_kZtWP7FJCt2c.ttf", + "700": "https://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGIbkZtWP7FJCt2c.ttf", + "800": "https://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGOHkZtWP7FJCt2c.ttf", + "900": "https://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGMjkZtWP7FJCt2c.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/encodesans/v19/LDIcapOFNxEwR-Bd1O9uYNmnUQomAgE25imKSbHhROjLsZBWTSrQGGHjVtSF6A.ttf" + }, + { + "family": "Encode Sans Condensed", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/encodesanscondensed/v10/j8_76_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-5a-JLQoFI2KR.ttf", + "200": "https://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-SY6pByQJKnuIFA.ttf", + "300": "https://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-LY2pByQJKnuIFA.ttf", + "regular": "https://fonts.gstatic.com/s/encodesanscondensed/v10/j8_16_LD37rqfuwxyIuaZhE6cRXOLtm2gfTGgaWNDw8VIw.ttf", + "500": "https://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-dYypByQJKnuIFA.ttf", + "600": "https://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-WYupByQJKnuIFA.ttf", + "700": "https://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-PYqpByQJKnuIFA.ttf", + "800": "https://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-IYmpByQJKnuIFA.ttf", + "900": "https://fonts.gstatic.com/s/encodesanscondensed/v10/j8_46_LD37rqfuwxyIuaZhE6cRXOLtm2gfT-BYipByQJKnuIFA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/encodesanscondensed/v10/j8_16_LD37rqfuwxyIuaZhE6cRXOLtm2gfT2gK-J.ttf" + }, + { + "family": "Encode Sans Expanded", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/encodesansexpanded/v11/c4mx1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpJGKQNicoAbJlw.ttf", + "200": "https://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpLqCCNIXIwSP0XD.ttf", + "300": "https://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKOCyNIXIwSP0XD.ttf", + "regular": "https://fonts.gstatic.com/s/encodesansexpanded/v11/c4m_1mF4GcnstG_Jh1QH6ac4hNLeNyeYUqoiIwdAd5Ab.ttf", + "500": "https://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpLWCiNIXIwSP0XD.ttf", + "600": "https://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpL6DSNIXIwSP0XD.ttf", + "700": "https://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKeDCNIXIwSP0XD.ttf", + "800": "https://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKCDyNIXIwSP0XD.ttf", + "900": "https://fonts.gstatic.com/s/encodesansexpanded/v11/c4mw1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpKmDiNIXIwSP0XD.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/encodesansexpanded/v11/c4m_1mF4GcnstG_Jh1QH6ac4hNLeNyeYUpojKQM.ttf" + }, + { + "family": "Encode Sans SC", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/encodesanssc/v9/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HHhn8c9NOEEClIc.ttf", + "200": "https://fonts.gstatic.com/s/encodesanssc/v9/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HPhm8c9NOEEClIc.ttf", + "300": "https://fonts.gstatic.com/s/encodesanssc/v9/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HCZm8c9NOEEClIc.ttf", + "regular": "https://fonts.gstatic.com/s/encodesanssc/v9/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HHhm8c9NOEEClIc.ttf", + "500": "https://fonts.gstatic.com/s/encodesanssc/v9/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HEpm8c9NOEEClIc.ttf", + "600": "https://fonts.gstatic.com/s/encodesanssc/v9/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HKZh8c9NOEEClIc.ttf", + "700": "https://fonts.gstatic.com/s/encodesanssc/v9/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HJ9h8c9NOEEClIc.ttf", + "800": "https://fonts.gstatic.com/s/encodesanssc/v9/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HPhh8c9NOEEClIc.ttf", + "900": "https://fonts.gstatic.com/s/encodesanssc/v9/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HNFh8c9NOEEClIc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/encodesanssc/v9/jVyp7nLwCGzQ9zE7ZyRg0QRXHPZc_uUA6Kb3VJWLE_Pdtm7lcD6qvXT1HHhmwc5HPA.ttf" + }, + { + "family": "Encode Sans Semi Condensed", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT6oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1T19MFtQ9jpVUA.ttf", + "200": "https://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1RZ1eFHbdTgTFmr.ttf", + "300": "https://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Q91uFHbdTgTFmr.ttf", + "regular": "https://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT4oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG2yR_sVPRsjp.ttf", + "500": "https://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Rl1-FHbdTgTFmr.ttf", + "600": "https://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1RJ0OFHbdTgTFmr.ttf", + "700": "https://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Qt0eFHbdTgTFmr.ttf", + "800": "https://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1Qx0uFHbdTgTFmr.ttf", + "900": "https://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT7oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1QV0-FHbdTgTFmr.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/encodesanssemicondensed/v10/3qT4oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG1yQ9ME.ttf" + }, + { + "family": "Encode Sans Semi Expanded", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8xOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM-41KwrlKXeOEA.ttf", + "200": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM0IUCyDLJX6XCWU.ttf", + "300": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMyYXCyDLJX6XCWU.ttf", + "regular": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke83OhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TC4o_LyjgOXc.ttf", + "500": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM34WCyDLJX6XCWU.ttf", + "600": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TM1IRCyDLJX6XCWU.ttf", + "700": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMzYQCyDLJX6XCWU.ttf", + "800": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMyoTCyDLJX6XCWU.ttf", + "900": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke8yOhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TMw4SCyDLJX6XCWU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/encodesanssemiexpanded/v19/ke83OhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TO4s1Kw.ttf" + }, + { + "family": "Engagement", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/engagement/v26/x3dlckLDZbqa7RUs9MFVXNossybsHQI.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/engagement/v26/x3dlckLDZbqa7RUs9MFVbNsmtw.ttf" + }, + { + "family": "Englebert", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/englebert/v21/xn7iYH8w2XGrC8AR4HSxT_fYdN-WZw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/englebert/v21/xn7iYH8w2XGrC8AR4HSBTv3c.ttf" + }, + { + "family": "Enriqueta", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/enriqueta/v17/goksH6L7AUFrRvV44HVTS0CjkP1Yog.ttf", + "500": "https://fonts.gstatic.com/s/enriqueta/v17/gokpH6L7AUFrRvV44HVrv2mHmNZEq6TTFw.ttf", + "600": "https://fonts.gstatic.com/s/enriqueta/v17/gokpH6L7AUFrRvV44HVrk26HmNZEq6TTFw.ttf", + "700": "https://fonts.gstatic.com/s/enriqueta/v17/gokpH6L7AUFrRvV44HVr92-HmNZEq6TTFw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/enriqueta/v17/goksH6L7AUFrRvV44HVjSkqn.ttf" + }, + { + "family": "Ephesis", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ephesis/v9/uU9PCBUS8IerL2VG7xPb3vyHmlI.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ephesis/v9/uU9PCBUS8IerL2VG3xLR2g.ttf" + }, + { + "family": "Epilogue", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXMDLiDJXVigHPVA.ttf", + "200": "https://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXsDPiDJXVigHPVA.ttf", + "300": "https://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXbjPiDJXVigHPVA.ttf", + "regular": "https://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXMDPiDJXVigHPVA.ttf", + "500": "https://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXAjPiDJXVigHPVA.ttf", + "600": "https://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OX7jTiDJXVigHPVA.ttf", + "700": "https://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OX1zTiDJXVigHPVA.ttf", + "800": "https://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXsDTiDJXVigHPVA.ttf", + "900": "https://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXmTTiDJXVigHPVA.ttf", + "100italic": "https://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HAKTp_RqATfVHNU.ttf", + "200italic": "https://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCKT5_RqATfVHNU.ttf", + "300italic": "https://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HBUT5_RqATfVHNU.ttf", + "italic": "https://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HAKT5_RqATfVHNU.ttf", + "500italic": "https://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HA4T5_RqATfVHNU.ttf", + "600italic": "https://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HDUSJ_RqATfVHNU.ttf", + "700italic": "https://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HDtSJ_RqATfVHNU.ttf", + "800italic": "https://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCKSJ_RqATfVHNU.ttf", + "900italic": "https://fonts.gstatic.com/s/epilogue/v17/O4ZCFGj5hxF0EhjimlIhqAYaY7EBcUSC-HCjSJ_RqATfVHNU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/epilogue/v17/O4ZMFGj5hxF0EhjimngomvnCCtqb30OXMDPSDZ_R.ttf" + }, + { + "family": "Erica One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ericaone/v27/WBLnrEXccV9VGrOKmGD1W0_MJMGxiQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ericaone/v27/WBLnrEXccV9VGrOKmGDFWkXI.ttf" + }, + { + "family": "Esteban", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/esteban/v15/r05bGLZE-bdGdN-GdOuD5jokU8E.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/esteban/v15/r05bGLZE-bdGdN-GROqJ4g.ttf" + }, + { + "family": "Estonia", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/estonia/v11/7Au_p_4ijSecA1yHCCL8zkwMIFg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/estonia/v11/7Au_p_4ijSecA1yHOCP2yg.ttf" + }, + { + "family": "Euphoria Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/euphoriascript/v20/mFTpWb0X2bLb_cx6To2B8GpKoD5ak_ZT1D8x7Q.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/euphoriascript/v20/mFTpWb0X2bLb_cx6To2B8GpKoD5qkvxX.ttf" + }, + { + "family": "Ewert", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ewert/v25/va9I4kzO2tFODYBvS-J3kbDP.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ewert/v25/va9I4kzO2tFODbBuQeY.ttf" + }, + { + "family": "Exo", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/exo/v21/4UaZrEtFpBI4f1ZSIK9d4LjJ4lM2CwNsOl4p5Is.ttf", + "200": "https://fonts.gstatic.com/s/exo/v21/4UaZrEtFpBI4f1ZSIK9d4LjJ4tM3CwNsOl4p5Is.ttf", + "300": "https://fonts.gstatic.com/s/exo/v21/4UaZrEtFpBI4f1ZSIK9d4LjJ4g03CwNsOl4p5Is.ttf", + "regular": "https://fonts.gstatic.com/s/exo/v21/4UaZrEtFpBI4f1ZSIK9d4LjJ4lM3CwNsOl4p5Is.ttf", + "500": "https://fonts.gstatic.com/s/exo/v21/4UaZrEtFpBI4f1ZSIK9d4LjJ4mE3CwNsOl4p5Is.ttf", + "600": "https://fonts.gstatic.com/s/exo/v21/4UaZrEtFpBI4f1ZSIK9d4LjJ4o0wCwNsOl4p5Is.ttf", + "700": "https://fonts.gstatic.com/s/exo/v21/4UaZrEtFpBI4f1ZSIK9d4LjJ4rQwCwNsOl4p5Is.ttf", + "800": "https://fonts.gstatic.com/s/exo/v21/4UaZrEtFpBI4f1ZSIK9d4LjJ4tMwCwNsOl4p5Is.ttf", + "900": "https://fonts.gstatic.com/s/exo/v21/4UaZrEtFpBI4f1ZSIK9d4LjJ4vowCwNsOl4p5Is.ttf", + "100italic": "https://fonts.gstatic.com/s/exo/v21/4UafrEtFpBISdmSt-MY2ehbO95t040FmPnws9Iu-uA.ttf", + "200italic": "https://fonts.gstatic.com/s/exo/v21/4UafrEtFpBISdmSt-MY2ehbO95t0Y0BmPnws9Iu-uA.ttf", + "300italic": "https://fonts.gstatic.com/s/exo/v21/4UafrEtFpBISdmSt-MY2ehbO95t0vUBmPnws9Iu-uA.ttf", + "italic": "https://fonts.gstatic.com/s/exo/v21/4UafrEtFpBISdmSt-MY2ehbO95t040BmPnws9Iu-uA.ttf", + "500italic": "https://fonts.gstatic.com/s/exo/v21/4UafrEtFpBISdmSt-MY2ehbO95t00UBmPnws9Iu-uA.ttf", + "600italic": "https://fonts.gstatic.com/s/exo/v21/4UafrEtFpBISdmSt-MY2ehbO95t0PUdmPnws9Iu-uA.ttf", + "700italic": "https://fonts.gstatic.com/s/exo/v21/4UafrEtFpBISdmSt-MY2ehbO95t0BEdmPnws9Iu-uA.ttf", + "800italic": "https://fonts.gstatic.com/s/exo/v21/4UafrEtFpBISdmSt-MY2ehbO95t0Y0dmPnws9Iu-uA.ttf", + "900italic": "https://fonts.gstatic.com/s/exo/v21/4UafrEtFpBISdmSt-MY2ehbO95t0SkdmPnws9Iu-uA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/exo/v21/4UaZrEtFpBI4f1ZSIK9d4LjJ4lM3OwJmPg.ttf" + }, + { + "family": "Exo 2", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/exo2/v21/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvOcPtq-rpvLpQ.ttf", + "200": "https://fonts.gstatic.com/s/exo2/v21/7cH1v4okm5zmbvwkAx_sfcEuiD8jPvKcPtq-rpvLpQ.ttf", + "300": "https://fonts.gstatic.com/s/exo2/v21/7cH1v4okm5zmbvwkAx_sfcEuiD8j4PKcPtq-rpvLpQ.ttf", + "regular": "https://fonts.gstatic.com/s/exo2/v21/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvKcPtq-rpvLpQ.ttf", + "500": "https://fonts.gstatic.com/s/exo2/v21/7cH1v4okm5zmbvwkAx_sfcEuiD8jjPKcPtq-rpvLpQ.ttf", + "600": "https://fonts.gstatic.com/s/exo2/v21/7cH1v4okm5zmbvwkAx_sfcEuiD8jYPWcPtq-rpvLpQ.ttf", + "700": "https://fonts.gstatic.com/s/exo2/v21/7cH1v4okm5zmbvwkAx_sfcEuiD8jWfWcPtq-rpvLpQ.ttf", + "800": "https://fonts.gstatic.com/s/exo2/v21/7cH1v4okm5zmbvwkAx_sfcEuiD8jPvWcPtq-rpvLpQ.ttf", + "900": "https://fonts.gstatic.com/s/exo2/v21/7cH1v4okm5zmbvwkAx_sfcEuiD8jF_WcPtq-rpvLpQ.ttf", + "100italic": "https://fonts.gstatic.com/s/exo2/v21/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drF0fNC6jJ7bpQBL.ttf", + "200italic": "https://fonts.gstatic.com/s/exo2/v21/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drH0fdC6jJ7bpQBL.ttf", + "300italic": "https://fonts.gstatic.com/s/exo2/v21/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drEqfdC6jJ7bpQBL.ttf", + "italic": "https://fonts.gstatic.com/s/exo2/v21/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drF0fdC6jJ7bpQBL.ttf", + "500italic": "https://fonts.gstatic.com/s/exo2/v21/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drFGfdC6jJ7bpQBL.ttf", + "600italic": "https://fonts.gstatic.com/s/exo2/v21/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drGqetC6jJ7bpQBL.ttf", + "700italic": "https://fonts.gstatic.com/s/exo2/v21/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drGTetC6jJ7bpQBL.ttf", + "800italic": "https://fonts.gstatic.com/s/exo2/v21/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drH0etC6jJ7bpQBL.ttf", + "900italic": "https://fonts.gstatic.com/s/exo2/v21/7cH3v4okm5zmbtYtMeA0FKq0Jjg2drHdetC6jJ7bpQBL.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/exo2/v21/7cH1v4okm5zmbvwkAx_sfcEuiD8jvvKsP9C6.ttf" + }, + { + "family": "Expletus Sans", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/expletussans/v29/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaSY2s1oFQTcXfMm.ttf", + "500": "https://fonts.gstatic.com/s/expletussans/v29/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaSq2s1oFQTcXfMm.ttf", + "600": "https://fonts.gstatic.com/s/expletussans/v29/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaRG3c1oFQTcXfMm.ttf", + "700": "https://fonts.gstatic.com/s/expletussans/v29/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaR_3c1oFQTcXfMm.ttf", + "italic": "https://fonts.gstatic.com/s/expletussans/v29/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmSUrHwD-WOMmKKY.ttf", + "500italic": "https://fonts.gstatic.com/s/expletussans/v29/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmRcrHwD-WOMmKKY.ttf", + "600italic": "https://fonts.gstatic.com/s/expletussans/v29/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmfssHwD-WOMmKKY.ttf", + "700italic": "https://fonts.gstatic.com/s/expletussans/v29/RLpoK5v5_bqufTYdnhFzDj2ddfsCtKHbhOZyCrFQmcIsHwD-WOMmKKY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/expletussans/v29/RLpqK5v5_bqufTYdnhFzDj2dX_IwS3my73zcDaSY2v1pHwA.ttf" + }, + { + "family": "Explora", + "variants": [ + "regular" + ], + "subsets": [ + "cherokee", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/explora/v9/tsstApxFfjUH4wrvc1qPonC3vqc.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/explora/v9/tsstApxFfjUH4wrvQ1uFpg.ttf" + }, + { + "family": "Fahkwang", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOJHmZlRFipxkwjx.ttf", + "200italic": "https://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgHFQHC5Tlhjxdw4.ttf", + "300": "https://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOIjmplRFipxkwjx.ttf", + "300italic": "https://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgBVTHC5Tlhjxdw4.ttf", + "regular": "https://fonts.gstatic.com/s/fahkwang/v16/Noax6Uj3zpmBOgbNpNqPsr1ZPTZ4.ttf", + "italic": "https://fonts.gstatic.com/s/fahkwang/v16/Noa36Uj3zpmBOgbNpOqNuLl7OCZ4ihE.ttf", + "500": "https://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOJ7m5lRFipxkwjx.ttf", + "500italic": "https://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgE1SHC5Tlhjxdw4.ttf", + "600": "https://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOJXnJlRFipxkwjx.ttf", + "600italic": "https://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgGFVHC5Tlhjxdw4.ttf", + "700": "https://fonts.gstatic.com/s/fahkwang/v16/Noa26Uj3zpmBOgbNpOIznZlRFipxkwjx.ttf", + "700italic": "https://fonts.gstatic.com/s/fahkwang/v16/Noa06Uj3zpmBOgbNpOqNgAVUHC5Tlhjxdw4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fahkwang/v16/Noax6Uj3zpmBOgbNpOqOuLk.ttf" + }, + { + "family": "Familjen Grotesk", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMGJaSztc1jcEYq2.ttf", + "500": "https://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMG7aSztc1jcEYq2.ttf", + "600": "https://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMFXbiztc1jcEYq2.ttf", + "700": "https://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMFubiztc1jcEYq2.ttf", + "italic": "https://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKsSueVz-FJq2Rv4.ttf", + "500italic": "https://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKvaueVz-FJq2Rv4.ttf", + "600italic": "https://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKhqpeVz-FJq2Rv4.ttf", + "700italic": "https://fonts.gstatic.com/s/familjengrotesk/v8/Qw31ZR9ZHiDnImG6-NEMQ41wby8WbH8egZPOLG0oe9RBKiOpeVz-FJq2Rv4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/familjengrotesk/v8/Qw3LZR9ZHiDnImG6-NEMQ41wby8WRnYsfkunR_eGfMGJaRzseVw.ttf" + }, + { + "family": "Fanwood Text", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fanwoodtext/v15/3XFtErwl05Ad_vSCF6Fq7xXGRdbY1P1Sbg.ttf", + "italic": "https://fonts.gstatic.com/s/fanwoodtext/v15/3XFzErwl05Ad_vSCF6Fq7xX2R9zc9vhCblye.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fanwoodtext/v15/3XFtErwl05Ad_vSCF6Fq7xX2RNzc.ttf" + }, + { + "family": "Farro", + "variants": [ + "300", + "regular", + "500", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/farro/v14/i7dJIFl3byGNHa3hNJ6-WkJUQUq7.ttf", + "regular": "https://fonts.gstatic.com/s/farro/v14/i7dEIFl3byGNHZVNHLq2cV5d.ttf", + "500": "https://fonts.gstatic.com/s/farro/v14/i7dJIFl3byGNHa25NZ6-WkJUQUq7.ttf", + "700": "https://fonts.gstatic.com/s/farro/v14/i7dJIFl3byGNHa3xM56-WkJUQUq7.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/farro/v14/i7dEIFl3byGNHaVMFr4.ttf" + }, + { + "family": "Farsan", + "variants": [ + "regular" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/farsan/v22/VEMwRoJ0vY_zsyz62q-pxDX9rQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/farsan/v22/VEMwRoJ0vY_zsyzK26Wt.ttf" + }, + { + "family": "Fascinate", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fascinate/v21/z7NWdRrufC8XJK0IIEli1LbQRPyNrw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fascinate/v21/z7NWdRrufC8XJK0IIElS1bzU.ttf" + }, + { + "family": "Fascinate Inline", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fascinateinline/v22/jVyR7mzzB3zc-jp6QCAu60poNqIy1g3CfRXxWZQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fascinateinline/v22/jVyR7mzzB3zc-jp6QCAu60poNqIy5gzIeQ.ttf" + }, + { + "family": "Faster One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fasterone/v19/H4ciBXCHmdfClFb-vWhfyLuShq63czE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fasterone/v19/H4ciBXCHmdfClFb-vWhf-LqYgg.ttf" + }, + { + "family": "Fasthand", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v30", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/fasthand/v30/0yb9GDohyKTYn_ZEESkuYkw2rQg1.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fasthand/v30/0yb9GDohyKTYn_ZEERkvaEg.ttf" + }, + { + "family": "Fauna One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/faunaone/v15/wlpzgwTPBVpjpCuwkuEx2UxLYClOCg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/faunaone/v15/wlpzgwTPBVpjpCuwkuEB2EZP.ttf" + }, + { + "family": "Faustina", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHls3IEvGVWWe8tbEg.ttf", + "regular": "https://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsgoEvGVWWe8tbEg.ttf", + "500": "https://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlssIEvGVWWe8tbEg.ttf", + "600": "https://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsXIYvGVWWe8tbEg.ttf", + "700": "https://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsZYYvGVWWe8tbEg.ttf", + "800": "https://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsAoYvGVWWe8tbEg.ttf", + "300italic": "https://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsKZWl-SWc5LEnoF.ttf", + "italic": "https://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsLHWl-SWc5LEnoF.ttf", + "500italic": "https://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsL1Wl-SWc5LEnoF.ttf", + "600italic": "https://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsIZXV-SWc5LEnoF.ttf", + "700italic": "https://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsIgXV-SWc5LEnoF.ttf", + "800italic": "https://fonts.gstatic.com/s/faustina/v20/XLY2IZPxYpJfTbZAFV-6B8JKUqez9n55SsJHXV-SWc5LEnoF.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/faustina/v20/XLY4IZPxYpJfTbZAFXWzNT2SO8wpWHlsgoEfGF-S.ttf" + }, + { + "family": "Federant", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/federant/v29/2sDdZGNfip_eirT0_U0jRUG0AqUc.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/federant/v29/2sDdZGNfip_eirT0_X0iT0U.ttf" + }, + { + "family": "Federo", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/federo/v19/iJWFBX-cbD_ETsbmjVOe2WTG7Q.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/federo/v19/iJWFBX-cbD_ETsbWjFma.ttf" + }, + { + "family": "Felipa", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/felipa/v25/FwZa7-owz1Eu4F_wSNSEwM2zpA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/felipa/v25/FwZa7-owz1Eu4F_ASd6A.ttf" + }, + { + "family": "Fenix", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fenix/v20/XoHo2YL_S7-g5ostKzAFvs8o.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fenix/v20/XoHo2YL_S7-g5rssITQ.ttf" + }, + { + "family": "Festive", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/festive/v9/cY9Ffj6KX1xcoDWhFtfgy9HTkak.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/festive/v9/cY9Ffj6KX1xcoDWhJtbqzw.ttf" + }, + { + "family": "Figtree", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-30", + "files": { + "300": "https://fonts.gstatic.com/s/figtree/v6/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_chQF5ewkEU4HTy.ttf", + "regular": "https://fonts.gstatic.com/s/figtree/v6/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_d_QF5ewkEU4HTy.ttf", + "500": "https://fonts.gstatic.com/s/figtree/v6/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_dNQF5ewkEU4HTy.ttf", + "600": "https://fonts.gstatic.com/s/figtree/v6/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_ehR15ewkEU4HTy.ttf", + "700": "https://fonts.gstatic.com/s/figtree/v6/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_eYR15ewkEU4HTy.ttf", + "800": "https://fonts.gstatic.com/s/figtree/v6/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_f_R15ewkEU4HTy.ttf", + "900": "https://fonts.gstatic.com/s/figtree/v6/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_fWR15ewkEU4HTy.ttf", + "300italic": "https://fonts.gstatic.com/s/figtree/v6/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A-gdyEU25WTybO8.ttf", + "italic": "https://fonts.gstatic.com/s/figtree/v6/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A7YdyEU25WTybO8.ttf", + "500italic": "https://fonts.gstatic.com/s/figtree/v6/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A4QdyEU25WTybO8.ttf", + "600italic": "https://fonts.gstatic.com/s/figtree/v6/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A2gayEU25WTybO8.ttf", + "700italic": "https://fonts.gstatic.com/s/figtree/v6/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A1EayEU25WTybO8.ttf", + "800italic": "https://fonts.gstatic.com/s/figtree/v6/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3AzYayEU25WTybO8.ttf", + "900italic": "https://fonts.gstatic.com/s/figtree/v6/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3Ax8ayEU25WTybO8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/figtree/v6/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_d_QG5fyEU.ttf" + }, + { + "family": "Finger Paint", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fingerpaint/v19/0QInMXVJ-o-oRn_7dron8YWO85bS8ANesw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fingerpaint/v19/0QInMXVJ-o-oRn_7dron8YW-8pzW.ttf" + }, + { + "family": "Finlandica", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19A7rEjx9i5ss3a3.ttf", + "500": "https://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19AJrEjx9i5ss3a3.ttf", + "600": "https://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19Dlq0jx9i5ss3a3.ttf", + "700": "https://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19Dcq0jx9i5ss3a3.ttf", + "italic": "https://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz76Cy_CpOtma3uNQ.ttf", + "500italic": "https://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz75Ky_CpOtma3uNQ.ttf", + "600italic": "https://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz7361_CpOtma3uNQ.ttf", + "700italic": "https://fonts.gstatic.com/s/finlandica/v8/-nFuOGk-8vAc7lEtg0aS45mfNAn722rq0MXz70e1_CpOtma3uNQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/finlandica/v8/-nFsOGk-8vAc7lEtg0aSyZCty9GSsPBE19A7rHjw_Co.ttf" + }, + { + "family": "Fira Code", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/firacode/v22/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_GNsFVfxN87gsj0.ttf", + "regular": "https://fonts.gstatic.com/s/firacode/v22/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_D1sFVfxN87gsj0.ttf", + "500": "https://fonts.gstatic.com/s/firacode/v22/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_A9sFVfxN87gsj0.ttf", + "600": "https://fonts.gstatic.com/s/firacode/v22/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_ONrFVfxN87gsj0.ttf", + "700": "https://fonts.gstatic.com/s/firacode/v22/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_NprFVfxN87gsj0.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/firacode/v22/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_D1sJVb7Mw.ttf" + }, + { + "family": "Fira Mono", + "variants": [ + "regular", + "500", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/firamono/v14/N0bX2SlFPv1weGeLZDtQIfTTkdbJYA.ttf", + "500": "https://fonts.gstatic.com/s/firamono/v14/N0bS2SlFPv1weGeLZDto1d33mf3VaZBRBQ.ttf", + "700": "https://fonts.gstatic.com/s/firamono/v14/N0bS2SlFPv1weGeLZDtondv3mf3VaZBRBQ.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/firamono/v14/N0bX2SlFPv1weGeLZDtgIP7X.ttf" + }, + { + "family": "Fira Sans", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/firasans/v17/va9C4kDNxMZdWfMOD5Vn9IjOazP3dUTP.ttf", + "100italic": "https://fonts.gstatic.com/s/firasans/v17/va9A4kDNxMZdWfMOD5VvkrCqYTfVcFTPj0s.ttf", + "200": "https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnWKnuQR37fF3Wlg.ttf", + "200italic": "https://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrAGQBf_XljGllLX.ttf", + "300": "https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnPKruQR37fF3Wlg.ttf", + "300italic": "https://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrBiQxf_XljGllLX.ttf", + "regular": "https://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5VfkILKSTbndQ.ttf", + "italic": "https://fonts.gstatic.com/s/firasans/v17/va9C4kDNxMZdWfMOD5VvkojOazP3dUTP.ttf", + "500": "https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnZKvuQR37fF3Wlg.ttf", + "500italic": "https://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrA6Qhf_XljGllLX.ttf", + "600": "https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnSKzuQR37fF3Wlg.ttf", + "600italic": "https://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrAWRRf_XljGllLX.ttf", + "700": "https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnLK3uQR37fF3Wlg.ttf", + "700italic": "https://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrByRBf_XljGllLX.ttf", + "800": "https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnMK7uQR37fF3Wlg.ttf", + "800italic": "https://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrBuRxf_XljGllLX.ttf", + "900": "https://fonts.gstatic.com/s/firasans/v17/va9B4kDNxMZdWfMOD5VnFK_uQR37fF3Wlg.ttf", + "900italic": "https://fonts.gstatic.com/s/firasans/v17/va9f4kDNxMZdWfMOD5VvkrBKRhf_XljGllLX.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/firasans/v17/va9E4kDNxMZdWfMOD5VvkYjO.ttf" + }, + { + "family": "Fira Sans Condensed", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOjEADFm8hSaQTFG18FErVhsC9x-tarWZXtqOlQfx9CjA.ttf", + "100italic": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOtEADFm8hSaQTFG18FErVhsC9x-tarUfPVzONUXRpSjJcu.ttf", + "200": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWTnMiMN-cxZblY4.ttf", + "200italic": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVYMJ0dzRehY43EA.ttf", + "300": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWV3PiMN-cxZblY4.ttf", + "300italic": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVBMF0dzRehY43EA.ttf", + "regular": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOhEADFm8hSaQTFG18FErVhsC9x-tarYfHnrMtVbx8.ttf", + "italic": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOjEADFm8hSaQTFG18FErVhsC9x-tarUfPtqOlQfx9CjA.ttf", + "500": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWQXOiMN-cxZblY4.ttf", + "500italic": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVXMB0dzRehY43EA.ttf", + "600": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWSnJiMN-cxZblY4.ttf", + "600italic": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVcMd0dzRehY43EA.ttf", + "700": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWU3IiMN-cxZblY4.ttf", + "700italic": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVFMZ0dzRehY43EA.ttf", + "800": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWVHLiMN-cxZblY4.ttf", + "800italic": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVCMV0dzRehY43EA.ttf", + "900": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOsEADFm8hSaQTFG18FErVhsC9x-tarWXXKiMN-cxZblY4.ttf", + "900italic": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOuEADFm8hSaQTFG18FErVhsC9x-tarUfPVLMR0dzRehY43EA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/firasanscondensed/v10/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfDtqA.ttf" + }, + { + "family": "Fira Sans Extra Condensed", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPMcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3Zyuv1WarE9ncg.ttf", + "100italic": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPOcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqW21-ejkp3cn22.ttf", + "200": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3TCPn3-0oEZ-a2Q.ttf", + "200italic": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWd36-pGR7e2SvJQ.ttf", + "300": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3VSMn3-0oEZ-a2Q.ttf", + "300italic": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWE32-pGR7e2SvJQ.ttf", + "regular": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPKcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda5fiku3efvE8.ttf", + "italic": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPMcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fquv1WarE9ncg.ttf", + "500": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3QyNn3-0oEZ-a2Q.ttf", + "500italic": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWS3y-pGR7e2SvJQ.ttf", + "600": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3SCKn3-0oEZ-a2Q.ttf", + "600italic": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWZ3u-pGR7e2SvJQ.ttf", + "700": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3USLn3-0oEZ-a2Q.ttf", + "700italic": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWA3q-pGR7e2SvJQ.ttf", + "800": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3ViIn3-0oEZ-a2Q.ttf", + "800italic": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWH3m-pGR7e2SvJQ.ttf", + "900": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPPcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda3XyJn3-0oEZ-a2Q.ttf", + "900italic": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPxcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fqWO3i-pGR7e2SvJQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/firasansextracondensed/v10/NaPKcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda1fmuvw.ttf" + }, + { + "family": "Fjalla One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fjallaone/v15/Yq6R-LCAWCX3-6Ky7FAFnOZwkxgtUb8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fjallaone/v15/Yq6R-LCAWCX3-6Ky7FAFrOd6lw.ttf" + }, + { + "family": "Fjord One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fjordone/v21/zOL-4pbEnKBY_9S1jNKr6e5As-FeiQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fjordone/v21/zOL-4pbEnKBY_9S1jNKb6ORE.ttf" + }, + { + "family": "Flamenco", + "variants": [ + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/flamenco/v18/neIPzCehqYguo67ssZ0qNIkyepH9qGsf.ttf", + "regular": "https://fonts.gstatic.com/s/flamenco/v18/neIIzCehqYguo67ssaWGHK06UY30.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/flamenco/v18/neIIzCehqYguo67ssZWHFqk.ttf" + }, + { + "family": "Flavors", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/flavors/v26/FBV2dDrhxqmveJTpbkzlNqkG9UY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/flavors/v26/FBV2dDrhxqmveJTpXk3vMg.ttf" + }, + { + "family": "Fleur De Leah", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fleurdeleah/v9/AYCNpXX7ftYZWLhv9UmPJTMC5vat4I_Gdq0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fleurdeleah/v9/AYCNpXX7ftYZWLhv9UmPJTMC1ven5A.ttf" + }, + { + "family": "Flow Block", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/flowblock/v11/wlp0gwfPCEB65UmTk-d6-WZlbCBXE_I.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/flowblock/v11/wlp0gwfPCEB65UmTk-d6yWdvaA.ttf" + }, + { + "family": "Flow Circular", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/flowcircular/v11/lJwB-pc4j2F-H8YKuyvfxdZ45ifpWdr2rIg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/flowcircular/v11/lJwB-pc4j2F-H8YKuyvfxdZ41ibjXQ.ttf" + }, + { + "family": "Flow Rounded", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/flowrounded/v11/-zki91mtwsU9qlLiGwD4oQX3oZX-Xup87g.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/flowrounded/v11/-zki91mtwsU9qlLiGwD4oQXHoJ_6.ttf" + }, + { + "family": "Foldit", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/foldit/v5/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XpANmapUYLHkN80.ttf", + "200": "https://fonts.gstatic.com/s/foldit/v5/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XhAMmapUYLHkN80.ttf", + "300": "https://fonts.gstatic.com/s/foldit/v5/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8Xs4MmapUYLHkN80.ttf", + "regular": "https://fonts.gstatic.com/s/foldit/v5/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XpAMmapUYLHkN80.ttf", + "500": "https://fonts.gstatic.com/s/foldit/v5/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XqIMmapUYLHkN80.ttf", + "600": "https://fonts.gstatic.com/s/foldit/v5/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8Xk4LmapUYLHkN80.ttf", + "700": "https://fonts.gstatic.com/s/foldit/v5/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XncLmapUYLHkN80.ttf", + "800": "https://fonts.gstatic.com/s/foldit/v5/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XhALmapUYLHkN80.ttf", + "900": "https://fonts.gstatic.com/s/foldit/v5/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XjkLmapUYLHkN80.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/foldit/v5/aFTI7PF3Y3c9WdjNrRVE0Rk2b7j8XpAMqateZA.ttf", + "colorCapabilities": [ + "COLRv1" + ] + }, + { + "family": "Fondamento", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fondamento/v20/4UaHrEJGsxNmFTPDnkaJx63j5pN1MwI.ttf", + "italic": "https://fonts.gstatic.com/s/fondamento/v20/4UaFrEJGsxNmFTPDnkaJ96_p4rFwIwJePw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fondamento/v20/4UaHrEJGsxNmFTPDnkaJ96zp4g.ttf" + }, + { + "family": "Fontdiner Swanky", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fontdinerswanky/v23/ijwOs4XgRNsiaI5-hcVb4hQgMvCD4uEfKiGvxts.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fontdinerswanky/v23/ijwOs4XgRNsiaI5-hcVb4hQgMvCD0uAVLg.ttf" + }, + { + "family": "Forum", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/forum/v18/6aey4Ky-Vb8Ew_IWMJMa3mnT.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/forum/v18/6aey4Ky-Vb8Ew8IXOpc.ttf" + }, + { + "family": "Fragment Mono", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fragmentmono/v4/4iCr6K5wfMRRjxp0DA6-2CLnN4RNh4UI_1U.ttf", + "italic": "https://fonts.gstatic.com/s/fragmentmono/v4/4iC16K5wfMRRjxp0DA6-2CLnB4ZHg6cN71URtQ.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fragmentmono/v4/4iCr6K5wfMRRjxp0DA6-2CLnB4VHgw.ttf" + }, + { + "family": "Francois One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/francoisone/v21/_Xmr-H4zszafZw3A-KPSZutNxgKQu_avAg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/francoisone/v21/_Xmr-H4zszafZw3A-KPSZut9xwiU.ttf" + }, + { + "family": "Frank Ruhl Libre", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/frankruhllibre/v21/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw6bYVqQPxR2EUR_.ttf", + "regular": "https://fonts.gstatic.com/s/frankruhllibre/v21/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw7FYVqQPxR2EUR_.ttf", + "500": "https://fonts.gstatic.com/s/frankruhllibre/v21/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw73YVqQPxR2EUR_.ttf", + "600": "https://fonts.gstatic.com/s/frankruhllibre/v21/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw4bZlqQPxR2EUR_.ttf", + "700": "https://fonts.gstatic.com/s/frankruhllibre/v21/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw4iZlqQPxR2EUR_.ttf", + "800": "https://fonts.gstatic.com/s/frankruhllibre/v21/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw5FZlqQPxR2EUR_.ttf", + "900": "https://fonts.gstatic.com/s/frankruhllibre/v21/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw5sZlqQPxR2EUR_.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/frankruhllibre/v21/j8_96_fAw7jrcalD7oKYNX0QfAnPcbzNEEB7OoicBw7FYWqRNRA.ttf" + }, + { + "family": "Fraunces", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v31", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIctxqjDvTShUtWNg.ttf", + "200": "https://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcNxujDvTShUtWNg.ttf", + "300": "https://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIc6RujDvTShUtWNg.ttf", + "regular": "https://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIctxujDvTShUtWNg.ttf", + "500": "https://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIchRujDvTShUtWNg.ttf", + "600": "https://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcaRyjDvTShUtWNg.ttf", + "700": "https://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcUByjDvTShUtWNg.ttf", + "800": "https://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcNxyjDvTShUtWNg.ttf", + "900": "https://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIcHhyjDvTShUtWNg.ttf", + "100italic": "https://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1hLTP7Wp05GNi3k.ttf", + "200italic": "https://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jLTf7Wp05GNi3k.ttf", + "300italic": "https://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1gVTf7Wp05GNi3k.ttf", + "italic": "https://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1hLTf7Wp05GNi3k.ttf", + "500italic": "https://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1h5Tf7Wp05GNi3k.ttf", + "600italic": "https://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1iVSv7Wp05GNi3k.ttf", + "700italic": "https://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1isSv7Wp05GNi3k.ttf", + "800italic": "https://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jLSv7Wp05GNi3k.ttf", + "900italic": "https://fonts.gstatic.com/s/fraunces/v31/6NVf8FyLNQOQZAnv9ZwNjucMHVn85Ni7emAe9lKqZTnbB-gzTK0K1ChJdt9vIVYX9G37lvd9sPEKsxx664UJf1jiSv7Wp05GNi3k.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fraunces/v31/6NUh8FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0K7iN7hzFUPJH58nib1603gg7S2nfgRYIctxuTD_7W.ttf" + }, + { + "family": "Freckle Face", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/freckleface/v15/AMOWz4SXrmKHCvXTohxY-YI0U1K2w9lb4g.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/freckleface/v15/AMOWz4SXrmKHCvXTohxY-YIEUliy.ttf" + }, + { + "family": "Fredericka the Great", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/frederickathegreat/v21/9Bt33CxNwt7aOctW2xjbCstzwVKsIBVV-9Skz7Ylch2L.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/frederickathegreat/v21/9Bt33CxNwt7aOctW2xjbCstzwVKsIBVV--SlxbI.ttf" + }, + { + "family": "Fredoka", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OryLMFuOLlNldbw.ttf", + "regular": "https://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3O8SLMFuOLlNldbw.ttf", + "500": "https://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OwyLMFuOLlNldbw.ttf", + "600": "https://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OLyXMFuOLlNldbw.ttf", + "700": "https://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3OFiXMFuOLlNldbw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fredoka/v14/X7nP4b87HvSqjb_WIi2yDCRwoQ_k7367_B-i2yQag0-mac3O8SL8F-mP.ttf" + }, + { + "family": "Freehand", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v31", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/freehand/v31/cIf-Ma5eqk01VjKTgAmBTmUOmZJk.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/freehand/v31/cIf-Ma5eqk01VjKTgDmARGE.ttf" + }, + { + "family": "Freeman", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/freeman/v1/S6u9w4NGQiLN8nh-ew-FGC_p9dw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/freeman/v1/S6u9w4NGQiLN8nh-Sw6PHA.ttf" + }, + { + "family": "Fresca", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fresca/v22/6ae94K--SKgCzbM2Gr0W13DKPA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fresca/v22/6ae94K--SKgCzbMGG7cS.ttf" + }, + { + "family": "Frijole", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/frijole/v14/uU9PCBUR8oakM2BQ7xPb3vyHmlI.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/frijole/v14/uU9PCBUR8oakM2BQ3xLR2g.ttf" + }, + { + "family": "Fruktur", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fruktur/v27/SZc53FHsOru5QYsMfz3GkUrS8DI.ttf", + "italic": "https://fonts.gstatic.com/s/fruktur/v27/SZc73FHsOru5QYsMTz_MlWjX4DJXgQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fruktur/v27/SZc53FHsOru5QYsMTzzMlQ.ttf" + }, + { + "family": "Fugaz One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fugazone/v19/rax_HiWKp9EAITukFslMBBJek0vA8A.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fugazone/v19/rax_HiWKp9EAITukFsl8BRha.ttf" + }, + { + "family": "Fuggles", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fuggles/v12/k3kQo8UEJOlD1hpOTd7iL0nAMaM.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fuggles/v12/k3kQo8UEJOlD1hpOfd_oKw.ttf" + }, + { + "family": "Fustat", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/fustat/v1/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCMQQRryztWo_3fk.ttf", + "300": "https://fonts.gstatic.com/s/fustat/v1/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCBoQRryztWo_3fk.ttf", + "regular": "https://fonts.gstatic.com/s/fustat/v1/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCEQQRryztWo_3fk.ttf", + "500": "https://fonts.gstatic.com/s/fustat/v1/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCHYQRryztWo_3fk.ttf", + "600": "https://fonts.gstatic.com/s/fustat/v1/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCJoXRryztWo_3fk.ttf", + "700": "https://fonts.gstatic.com/s/fustat/v1/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCKMXRryztWo_3fk.ttf", + "800": "https://fonts.gstatic.com/s/fustat/v1/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCMQXRryztWo_3fk.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fustat/v1/NaPEcZ_aHO9Iy5thRNqze7YGY9HGCEQQdr25sQ.ttf" + }, + { + "family": "Fuzzy Bubbles", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/fuzzybubbles/v7/6qLGKZMbrgv9pwtjPEVNV0F2NnP5Zxsreko.ttf", + "700": "https://fonts.gstatic.com/s/fuzzybubbles/v7/6qLbKZMbrgv9pwtjPEVNV0F2Ds_WQxMAZkM1pn4.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/fuzzybubbles/v7/6qLGKZMbrgv9pwtjPEVNV0F2BnLzYw.ttf" + }, + { + "family": "GFS Didot", + "variants": [ + "regular" + ], + "subsets": [ + "greek" + ], + "version": "v16", + "lastModified": "2024-04-12", + "files": { + "regular": "https://fonts.gstatic.com/s/gfsdidot/v16/Jqzh5TybZ9vZMWFssvwiF-fGFSCGAA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gfsdidot/v16/Jqzh5TybZ9vZMWFssvwSFu3C.ttf" + }, + { + "family": "GFS Neohellenic", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "greek" + ], + "version": "v25", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/gfsneohellenic/v25/8QIRdiDOrfiq0b7R8O1Iw9WLcY5TLahP46UDUw.ttf", + "italic": "https://fonts.gstatic.com/s/gfsneohellenic/v25/8QITdiDOrfiq0b7R8O1Iw9WLcY5jL6JLwaATU91X.ttf", + "700": "https://fonts.gstatic.com/s/gfsneohellenic/v25/8QIUdiDOrfiq0b7R8O1Iw9WLcY5rkYdr644fWsRO9w.ttf", + "700italic": "https://fonts.gstatic.com/s/gfsneohellenic/v25/8QIWdiDOrfiq0b7R8O1Iw9WLcY5jL5r37oQbeMFe985V.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gfsneohellenic/v25/8QIRdiDOrfiq0b7R8O1Iw9WLcY5jLKJL.ttf" + }, + { + "family": "Ga Maamli", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gamaamli/v2/uU9NCBsQ4c-DPW1Yo3rR2t6CilKOdQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gamaamli/v2/uU9NCBsQ4c-DPW1Yo3rh29SG.ttf" + }, + { + "family": "Gabarito", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gabarito/v7/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj248K0FgItq6bFIg.ttf", + "500": "https://fonts.gstatic.com/s/gabarito/v7/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj20cK0FgItq6bFIg.ttf", + "600": "https://fonts.gstatic.com/s/gabarito/v7/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj2PcW0FgItq6bFIg.ttf", + "700": "https://fonts.gstatic.com/s/gabarito/v7/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj2BMW0FgItq6bFIg.ttf", + "800": "https://fonts.gstatic.com/s/gabarito/v7/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj2Y8W0FgItq6bFIg.ttf", + "900": "https://fonts.gstatic.com/s/gabarito/v7/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj2SsW0FgItq6bFIg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gabarito/v7/QGYwz_0dZAGKJJ4t3FFkc3Q8AkNP9Pj248KEFwgp.ttf" + }, + { + "family": "Gabriela", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gabriela/v21/qkBWXvsO6sreR8E-b_m-zrpHmRzC.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gabriela/v21/qkBWXvsO6sreR8E-b8m_xL4.ttf" + }, + { + "family": "Gaegu", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v17", + "lastModified": "2024-08-12", + "files": { + "300": "https://fonts.gstatic.com/s/gaegu/v17/TuGSUVB6Up9NU57nifw74sdtBk0x.ttf", + "regular": "https://fonts.gstatic.com/s/gaegu/v17/TuGfUVB6Up9NU6ZLodgzydtk.ttf", + "700": "https://fonts.gstatic.com/s/gaegu/v17/TuGSUVB6Up9NU573jvw74sdtBk0x.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gaegu/v17/TuGfUVB6Up9NU5ZKq9w.ttf" + }, + { + "family": "Gafata", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gafata/v20/XRXV3I6Cn0VJKon4MuyAbsrVcA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gafata/v20/XRXV3I6Cn0VJKonIM-aE.ttf" + }, + { + "family": "Gajraj One", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gajrajone/v5/1cX2aUDCDpXsuWVb1jIjr1GqhcitzeM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gajrajone/v5/1cX2aUDCDpXsuWVb1jIjn1CggQ.ttf" + }, + { + "family": "Galada", + "variants": [ + "regular" + ], + "subsets": [ + "bengali", + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/galada/v18/H4cmBXyGmcjXlUX-8iw-4Lqggw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/galada/v18/H4cmBXyGmcjXlUXO8yY6.ttf" + }, + { + "family": "Galdeano", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/galdeano/v22/uU9MCBoQ4YOqOW1boDPx8PCOg0uX.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/galdeano/v22/uU9MCBoQ4YOqOW1boAPw-vQ.ttf" + }, + { + "family": "Galindo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/galindo/v24/HI_KiYMeLqVKqwyuQ5HiRp-dhpQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/galindo/v24/HI_KiYMeLqVKqwyuc5DoQg.ttf" + }, + { + "family": "Gamja Flower", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v22", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/gamjaflower/v22/6NUR8FiKJg-Pa0rM6uN40Z4kyf9Fdty2ew.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gamjaflower/v22/6NUR8FiKJg-Pa0rM6uN40Z4UyPVB.ttf" + }, + { + "family": "Gantari", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0gOz3wa5GD2qnm.ttf", + "200": "https://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2gOj3wa5GD2qnm.ttf", + "300": "https://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g1-Oj3wa5GD2qnm.ttf", + "regular": "https://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0gOj3wa5GD2qnm.ttf", + "500": "https://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0SOj3wa5GD2qnm.ttf", + "600": "https://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g3-PT3wa5GD2qnm.ttf", + "700": "https://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g3HPT3wa5GD2qnm.ttf", + "800": "https://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2gPT3wa5GD2qnm.ttf", + "900": "https://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g2JPT3wa5GD2qnm.ttf", + "100italic": "https://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoedWyYZWh37nmpWc.ttf", + "200italic": "https://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeVWzYZWh37nmpWc.ttf", + "300italic": "https://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeYuzYZWh37nmpWc.ttf", + "italic": "https://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoedWzYZWh37nmpWc.ttf", + "500italic": "https://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeeezYZWh37nmpWc.ttf", + "600italic": "https://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeQu0YZWh37nmpWc.ttf", + "700italic": "https://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeTK0YZWh37nmpWc.ttf", + "800italic": "https://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeVW0YZWh37nmpWc.ttf", + "900italic": "https://fonts.gstatic.com/s/gantari/v1/jVyb7nvyB2HL8iZyJEc0qSzwj1Hs8RjoeXy0YZWh37nmpWc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gantari/v1/jVyV7nvyB2HL8iZyDk4GVvSZ5MtC9g0gOg3xYZU.ttf" + }, + { + "family": "Gasoek One", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin", + "latin-ext" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/gasoekone/v3/EJRTQgQ_UMUKvDgnlX80zrq_cyb-vco.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gasoekone/v3/EJRTQgQ_UMUKvDgnlX80_ru1dw.ttf" + }, + { + "family": "Gayathri", + "variants": [ + "100", + "regular", + "700" + ], + "subsets": [ + "latin", + "malayalam" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/gayathri/v17/MCoWzAb429DbBilWLLhc-pvSA_gA2W8.ttf", + "regular": "https://fonts.gstatic.com/s/gayathri/v17/MCoQzAb429DbBilWLIA48J_wBugA.ttf", + "700": "https://fonts.gstatic.com/s/gayathri/v17/MCoXzAb429DbBilWLLiE37v4LfQJwHbn.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gayathri/v17/MCoQzAb429DbBilWLLA5-ps.ttf" + }, + { + "family": "Gelasio", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gelasio/v12/cIfiMaFfvUQxTTqS3iKJkLGbI41wQL8Ilycs-TDO8Aba.ttf", + "500": "https://fonts.gstatic.com/s/gelasio/v12/cIfiMaFfvUQxTTqS3iKJkLGbI41wQL86lycs-TDO8Aba.ttf", + "600": "https://fonts.gstatic.com/s/gelasio/v12/cIfiMaFfvUQxTTqS3iKJkLGbI41wQL_WkCcs-TDO8Aba.ttf", + "700": "https://fonts.gstatic.com/s/gelasio/v12/cIfiMaFfvUQxTTqS3iKJkLGbI41wQL_vkCcs-TDO8Aba.ttf", + "italic": "https://fonts.gstatic.com/s/gelasio/v12/cIfsMaFfvUQxTTqS9Cu7b2nySBfeR6rA1M9v8zTs9RbanYs.ttf", + "500italic": "https://fonts.gstatic.com/s/gelasio/v12/cIfsMaFfvUQxTTqS9Cu7b2nySBfeR6rA1P1v8zTs9RbanYs.ttf", + "600italic": "https://fonts.gstatic.com/s/gelasio/v12/cIfsMaFfvUQxTTqS9Cu7b2nySBfeR6rA1BFo8zTs9RbanYs.ttf", + "700italic": "https://fonts.gstatic.com/s/gelasio/v12/cIfsMaFfvUQxTTqS9Cu7b2nySBfeR6rA1Cho8zTs9RbanYs.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gelasio/v12/cIfiMaFfvUQxTTqS3iKJkLGbI41wQL8Ilxct8zQ.ttf" + }, + { + "family": "Gemunu Libre", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "sinhala" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/gemunulibre/v14/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp05iJPvSLeMXPIWA.ttf", + "300": "https://fonts.gstatic.com/s/gemunulibre/v14/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp00aJPvSLeMXPIWA.ttf", + "regular": "https://fonts.gstatic.com/s/gemunulibre/v14/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0xiJPvSLeMXPIWA.ttf", + "500": "https://fonts.gstatic.com/s/gemunulibre/v14/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0yqJPvSLeMXPIWA.ttf", + "600": "https://fonts.gstatic.com/s/gemunulibre/v14/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp08aOPvSLeMXPIWA.ttf", + "700": "https://fonts.gstatic.com/s/gemunulibre/v14/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0_-OPvSLeMXPIWA.ttf", + "800": "https://fonts.gstatic.com/s/gemunulibre/v14/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp05iOPvSLeMXPIWA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gemunulibre/v14/X7n34bQ6Cfy7jKGXVE_YlqnbEQAFP-PIuTCp0xiJDvWBfA.ttf" + }, + { + "family": "Genos", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cherokee", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/genos/v12/SlGNmQqPqpUOYTYjacb0Hc91fTwVqknorUK6K7ZsAg.ttf", + "200": "https://fonts.gstatic.com/s/genos/v12/SlGNmQqPqpUOYTYjacb0Hc91fTwVKkjorUK6K7ZsAg.ttf", + "300": "https://fonts.gstatic.com/s/genos/v12/SlGNmQqPqpUOYTYjacb0Hc91fTwV9EjorUK6K7ZsAg.ttf", + "regular": "https://fonts.gstatic.com/s/genos/v12/SlGNmQqPqpUOYTYjacb0Hc91fTwVqkjorUK6K7ZsAg.ttf", + "500": "https://fonts.gstatic.com/s/genos/v12/SlGNmQqPqpUOYTYjacb0Hc91fTwVmEjorUK6K7ZsAg.ttf", + "600": "https://fonts.gstatic.com/s/genos/v12/SlGNmQqPqpUOYTYjacb0Hc91fTwVdE_orUK6K7ZsAg.ttf", + "700": "https://fonts.gstatic.com/s/genos/v12/SlGNmQqPqpUOYTYjacb0Hc91fTwVTU_orUK6K7ZsAg.ttf", + "800": "https://fonts.gstatic.com/s/genos/v12/SlGNmQqPqpUOYTYjacb0Hc91fTwVKk_orUK6K7ZsAg.ttf", + "900": "https://fonts.gstatic.com/s/genos/v12/SlGNmQqPqpUOYTYjacb0Hc91fTwVA0_orUK6K7ZsAg.ttf", + "100italic": "https://fonts.gstatic.com/s/genos/v12/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsA70i-CbN8Ard7.ttf", + "200italic": "https://fonts.gstatic.com/s/genos/v12/SlGPmQqPqpUOYRwqWzksdKTv0zsAYguA7ki-CbN8Ard7.ttf", + "300italic": "https://fonts.gstatic.com/s/genos/v12/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgte7ki-CbN8Ard7.ttf", + "italic": "https://fonts.gstatic.com/s/genos/v12/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsA7ki-CbN8Ard7.ttf", + "500italic": "https://fonts.gstatic.com/s/genos/v12/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgsy7ki-CbN8Ard7.ttf", + "600italic": "https://fonts.gstatic.com/s/genos/v12/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgve6Ui-CbN8Ard7.ttf", + "700italic": "https://fonts.gstatic.com/s/genos/v12/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgvn6Ui-CbN8Ard7.ttf", + "800italic": "https://fonts.gstatic.com/s/genos/v12/SlGPmQqPqpUOYRwqWzksdKTv0zsAYguA6Ui-CbN8Ard7.ttf", + "900italic": "https://fonts.gstatic.com/s/genos/v12/SlGPmQqPqpUOYRwqWzksdKTv0zsAYgup6Ui-CbN8Ard7.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/genos/v12/SlGNmQqPqpUOYTYjacb0Hc91fTwVqkjYrEi-.ttf" + }, + { + "family": "Gentium Book Plus", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFL2-RHBgUK5fbjKxRpbBtJPyRpofKfdbLOrdPV.ttf", + "italic": "https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFN2-RHBgUK5fbjKxRpbBtJPyRpocKdf7bsqMPVZb4.ttf", + "700": "https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFO2-RHBgUK5fbjKxRpbBtJPyRpocojWpbGhs_cfKe1.ttf", + "700italic": "https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFA2-RHBgUK5fbjKxRpbBtJPyRpocKdRwrDjMv-ebe1Els.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFL2-RHBgUK5fbjKxRpbBtJPyRpocKef7Y.ttf" + }, + { + "family": "Gentium Plus", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gentiumplus/v2/Iurd6Ytw-oSPaZ00r2bNe8VpjJtM6G0t9w.ttf", + "italic": "https://fonts.gstatic.com/s/gentiumplus/v2/IurD6Ytw-oSPaZ00r2bNe8VZjpFIymg9957e.ttf", + "700": "https://fonts.gstatic.com/s/gentiumplus/v2/IurC6Ytw-oSPaZ00r2bNe8VRMLRo4EYx_ofHsw.ttf", + "700italic": "https://fonts.gstatic.com/s/gentiumplus/v2/IurA6Ytw-oSPaZ00r2bNe8VZjqn05Uw13ILXs-h6.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gentiumplus/v2/Iurd6Ytw-oSPaZ00r2bNe8VZjZFI.ttf" + }, + { + "family": "Geo", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/geo/v21/CSRz4zRZlufVL3BmQjlCbQ.ttf", + "italic": "https://fonts.gstatic.com/s/geo/v21/CSRx4zRZluflLXpiYDxSbf8r.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/geo/v21/CSRz4zRZluflLnpi.ttf" + }, + { + "family": "Geologica", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDx_qQ-MYAXWnqFs.ttf", + "200": "https://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD5_rQ-MYAXWnqFs.ttf", + "300": "https://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD0HrQ-MYAXWnqFs.ttf", + "regular": "https://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDx_rQ-MYAXWnqFs.ttf", + "500": "https://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDy3rQ-MYAXWnqFs.ttf", + "600": "https://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD8HsQ-MYAXWnqFs.ttf", + "700": "https://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD_jsQ-MYAXWnqFs.ttf", + "800": "https://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD5_sQ-MYAXWnqFs.ttf", + "900": "https://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqD7bsQ-MYAXWnqFs.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/geologica/v1/oY1o8evIr7j9P3TN9YwNAdyjzUyDKkKdAGOJh1UlCDUIhAIdhCZOn1fLsig7jfvCCPHZckU8H3G11_z-_OZqDx_rc-ISBQ.ttf" + }, + { + "family": "Georama", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/georama/v13/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5GvktmQsL5_tgbg.ttf", + "200": "https://fonts.gstatic.com/s/georama/v13/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5mvgtmQsL5_tgbg.ttf", + "300": "https://fonts.gstatic.com/s/georama/v13/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5RPgtmQsL5_tgbg.ttf", + "regular": "https://fonts.gstatic.com/s/georama/v13/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5GvgtmQsL5_tgbg.ttf", + "500": "https://fonts.gstatic.com/s/georama/v13/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5KPgtmQsL5_tgbg.ttf", + "600": "https://fonts.gstatic.com/s/georama/v13/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5xP8tmQsL5_tgbg.ttf", + "700": "https://fonts.gstatic.com/s/georama/v13/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5_f8tmQsL5_tgbg.ttf", + "800": "https://fonts.gstatic.com/s/georama/v13/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5mv8tmQsL5_tgbg.ttf", + "900": "https://fonts.gstatic.com/s/georama/v13/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5s_8tmQsL5_tgbg.ttf", + "100italic": "https://fonts.gstatic.com/s/georama/v13/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rvF2wEPxf5wbh3T.ttf", + "200italic": "https://fonts.gstatic.com/s/georama/v13/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rtF2gEPxf5wbh3T.ttf", + "300italic": "https://fonts.gstatic.com/s/georama/v13/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rub2gEPxf5wbh3T.ttf", + "italic": "https://fonts.gstatic.com/s/georama/v13/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rvF2gEPxf5wbh3T.ttf", + "500italic": "https://fonts.gstatic.com/s/georama/v13/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rv32gEPxf5wbh3T.ttf", + "600italic": "https://fonts.gstatic.com/s/georama/v13/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rsb3QEPxf5wbh3T.ttf", + "700italic": "https://fonts.gstatic.com/s/georama/v13/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rsi3QEPxf5wbh3T.ttf", + "800italic": "https://fonts.gstatic.com/s/georama/v13/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rtF3QEPxf5wbh3T.ttf", + "900italic": "https://fonts.gstatic.com/s/georama/v13/MCo_zAn438bIEyxFVaIC0ZMQ72G6xnvmodYVPOBB5nuzMdWs0rts3QEPxf5wbh3T.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/georama/v13/MCo5zAn438bIEyxFf6swMnNpvPcUwW4u4yRcDh-ZjxApn9K5GvgdmAEP.ttf" + }, + { + "family": "Geostar", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/geostar/v26/sykz-yx4n701VLOftSq9-trEvlQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/geostar/v26/sykz-yx4n701VLOfhSu3_g.ttf" + }, + { + "family": "Geostar Fill", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/geostarfill/v26/AMOWz4SWuWiXFfjEohxQ9os0U1K2w9lb4g.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/geostarfill/v26/AMOWz4SWuWiXFfjEohxQ9osEUliy.ttf" + }, + { + "family": "Germania One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/germaniaone/v20/Fh4yPjrqIyv2ucM2qzBjeS3ezAJONau6ew.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/germaniaone/v20/Fh4yPjrqIyv2ucM2qzBjeS3uzQhK.ttf" + }, + { + "family": "Gideon Roman", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gideonroman/v11/e3tmeuGrVOys8sxzZgWlmXoge0PWovdU4w.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gideonroman/v11/e3tmeuGrVOys8sxzZgWlmXoQeknS.ttf" + }, + { + "family": "Gidugu", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gidugu/v25/L0x8DFMkk1Uf6w3RvPCmRSlUig.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gidugu/v25/L0x8DFMkk1Uf6w3hvfqi.ttf" + }, + { + "family": "Gilda Display", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gildadisplay/v18/t5tmIRoYMoaYG0WEOh7HwMeR7TnFrpOHYh4.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gildadisplay/v18/t5tmIRoYMoaYG0WEOh7HwMeR3TjPqg.ttf" + }, + { + "family": "Girassol", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/girassol/v22/JTUUjIo_-DK48laaNC9Nz2pJzxbi.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/girassol/v22/JTUUjIo_-DK48laaNB9MxW4.ttf" + }, + { + "family": "Give You Glory", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/giveyouglory/v15/8QIQdiHOgt3vv4LR7ahjw9-XYc1zB4ZD6rwa.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/giveyouglory/v15/8QIQdiHOgt3vv4LR7ahjw9-XYf1yDYI.ttf" + }, + { + "family": "Glass Antiqua", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/glassantiqua/v24/xfu30Wr0Wn3NOQM2piC0uXOjnL_wN6fRUkY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/glassantiqua/v24/xfu30Wr0Wn3NOQM2piC0uXOjrL76Mw.ttf" + }, + { + "family": "Glegoo", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/glegoo/v16/_Xmt-HQyrTKWaw2Ji6mZAI91xw.ttf", + "700": "https://fonts.gstatic.com/s/glegoo/v16/_Xmu-HQyrTKWaw2xN4a9CKRpzimMsg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/glegoo/v16/_Xmt-HQyrTKWaw25iqOd.ttf" + }, + { + "family": "Gloock", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gloock/v6/Iurb6YFw84WUY4N5jxylBrdRjQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gloock/v6/Iurb6YFw84WUY4NJjhah.ttf" + }, + { + "family": "Gloria Hallelujah", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gloriahallelujah/v21/LYjYdHv3kUk9BMV96EIswT9DIbW-MLSy3TKEvkCF.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gloriahallelujah/v21/LYjYdHv3kUk9BMV96EIswT9DIbW-MISz1zY.ttf" + }, + { + "family": "Glory", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/glory/v15/q5uasoi9Lf1w5t3Est24nq9blIRQwIiDpn-dDi9EOQ.ttf", + "200": "https://fonts.gstatic.com/s/glory/v15/q5uasoi9Lf1w5t3Est24nq9blIRQQImDpn-dDi9EOQ.ttf", + "300": "https://fonts.gstatic.com/s/glory/v15/q5uasoi9Lf1w5t3Est24nq9blIRQnomDpn-dDi9EOQ.ttf", + "regular": "https://fonts.gstatic.com/s/glory/v15/q5uasoi9Lf1w5t3Est24nq9blIRQwImDpn-dDi9EOQ.ttf", + "500": "https://fonts.gstatic.com/s/glory/v15/q5uasoi9Lf1w5t3Est24nq9blIRQ8omDpn-dDi9EOQ.ttf", + "600": "https://fonts.gstatic.com/s/glory/v15/q5uasoi9Lf1w5t3Est24nq9blIRQHo6Dpn-dDi9EOQ.ttf", + "700": "https://fonts.gstatic.com/s/glory/v15/q5uasoi9Lf1w5t3Est24nq9blIRQJ46Dpn-dDi9EOQ.ttf", + "800": "https://fonts.gstatic.com/s/glory/v15/q5uasoi9Lf1w5t3Est24nq9blIRQQI6Dpn-dDi9EOQ.ttf", + "100italic": "https://fonts.gstatic.com/s/glory/v15/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpr5HWZLCpUOaM6.ttf", + "200italic": "https://fonts.gstatic.com/s/glory/v15/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMrr5XWZLCpUOaM6.ttf", + "300italic": "https://fonts.gstatic.com/s/glory/v15/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMo15XWZLCpUOaM6.ttf", + "italic": "https://fonts.gstatic.com/s/glory/v15/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpr5XWZLCpUOaM6.ttf", + "500italic": "https://fonts.gstatic.com/s/glory/v15/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMpZ5XWZLCpUOaM6.ttf", + "600italic": "https://fonts.gstatic.com/s/glory/v15/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMq14nWZLCpUOaM6.ttf", + "700italic": "https://fonts.gstatic.com/s/glory/v15/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMqM4nWZLCpUOaM6.ttf", + "800italic": "https://fonts.gstatic.com/s/glory/v15/q5uYsoi9Lf1w5vfNgCJg98TBOoNFCMrr4nWZLCpUOaM6.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/glory/v15/q5uasoi9Lf1w5t3Est24nq9blIRQwImzp3WZ.ttf" + }, + { + "family": "Gluten", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/gluten/v16/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vb7B1Luni7ciJh.ttf", + "200": "https://fonts.gstatic.com/s/gluten/v16/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xb7R1Luni7ciJh.ttf", + "300": "https://fonts.gstatic.com/s/gluten/v16/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8UF7R1Luni7ciJh.ttf", + "regular": "https://fonts.gstatic.com/s/gluten/v16/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vb7R1Luni7ciJh.ttf", + "500": "https://fonts.gstatic.com/s/gluten/v16/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vp7R1Luni7ciJh.ttf", + "600": "https://fonts.gstatic.com/s/gluten/v16/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8WF6h1Luni7ciJh.ttf", + "700": "https://fonts.gstatic.com/s/gluten/v16/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8W86h1Luni7ciJh.ttf", + "800": "https://fonts.gstatic.com/s/gluten/v16/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xb6h1Luni7ciJh.ttf", + "900": "https://fonts.gstatic.com/s/gluten/v16/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Xy6h1Luni7ciJh.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gluten/v16/Hhy_U5gk9fW7OUdVIPh2zD_RSqQJ__A15jgJsn-Bhb_yI8Vb7S1KsHw.ttf" + }, + { + "family": "Goblin One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/goblinone/v26/CSR64z1ZnOqZRjRCBVY_TOcATNt_pOU.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/goblinone/v26/CSR64z1ZnOqZRjRCBVY_fOYKSA.ttf" + }, + { + "family": "Gochi Hand", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gochihand/v23/hES06XlsOjtJsgCkx1PkTo71-n0nXWA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gochihand/v23/hES06XlsOjtJsgCkx1Pkfo___g.ttf" + }, + { + "family": "Goldman", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/goldman/v19/pe0uMIWbN4JFplR2LDJ4Bt-7G98.ttf", + "700": "https://fonts.gstatic.com/s/goldman/v19/pe0rMIWbN4JFplR2FI5XIteQB9Zra1U.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/goldman/v19/pe0uMIWbN4JFplR2HDNyAg.ttf" + }, + { + "family": "Golos Text", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plVRRQ5cEr8zXcyx.ttf", + "500": "https://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plVjRQ5cEr8zXcyx.ttf", + "600": "https://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plWPQg5cEr8zXcyx.ttf", + "700": "https://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plW2Qg5cEr8zXcyx.ttf", + "800": "https://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plXRQg5cEr8zXcyx.ttf", + "900": "https://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plX4Qg5cEr8zXcyx.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/golostext/v4/q5uXsoe9Lv5t7Meb31EcOR9UdVTNs822plVRRT5dGLs.ttf" + }, + { + "family": "Gorditas", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gorditas/v22/ll8_K2aTVD26DsPEtQDoDa4AlxYb.ttf", + "700": "https://fonts.gstatic.com/s/gorditas/v22/ll84K2aTVD26DsPEtThUIooIvAoShA1i.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gorditas/v22/ll8_K2aTVD26DsPEtTDpB6o.ttf" + }, + { + "family": "Gothic A1", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/gothica1/v13/CSR74z5ZnPydRjlCCwlCCMcqYtd2vfwk.ttf", + "200": "https://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCpOYKSPl6tOU9Eg.ttf", + "300": "https://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCwOUKSPl6tOU9Eg.ttf", + "regular": "https://fonts.gstatic.com/s/gothica1/v13/CSR94z5ZnPydRjlCCwl6bM0uQNJmvQ.ttf", + "500": "https://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCmOQKSPl6tOU9Eg.ttf", + "600": "https://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCtOMKSPl6tOU9Eg.ttf", + "700": "https://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlC0OIKSPl6tOU9Eg.ttf", + "800": "https://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlCzOEKSPl6tOU9Eg.ttf", + "900": "https://fonts.gstatic.com/s/gothica1/v13/CSR44z5ZnPydRjlCCwlC6OAKSPl6tOU9Eg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gothica1/v13/CSR94z5ZnPydRjlCCwlKbccq.ttf" + }, + { + "family": "Gotu", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gotu/v16/o-0FIpksx3QOlH0Lioh6-hU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gotu/v16/o-0FIpksx3QOpHwBjg.ttf" + }, + { + "family": "Goudy Bookletter 1911", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/goudybookletter1911/v19/sykt-z54laciWfKv-kX8krex0jDiD2HbY6I5tRbXZ4IXAA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/goudybookletter1911/v19/sykt-z54laciWfKv-kX8krex0jDiD2HbY6IJtBzT.ttf" + }, + { + "family": "Gowun Batang", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "korean", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/gowunbatang/v7/ijwSs5nhRMIjYsdSgcMa3wRhXLH-yuAtLw.ttf", + "700": "https://fonts.gstatic.com/s/gowunbatang/v7/ijwNs5nhRMIjYsdSgcMa3wRZ4J7awssxJii23w.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gowunbatang/v7/ijwSs5nhRMIjYsdSgcMa3wRRXbv6.ttf" + }, + { + "family": "Gowun Dodum", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/gowundodum/v7/3Jn5SD_00GqwlBnWc1TUJF0FfORL0fNy.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gowundodum/v7/3Jn5SD_00GqwlBnWc1TUJG0EduA.ttf" + }, + { + "family": "Graduate", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/graduate/v17/C8cg4cs3o2n15t_2YxgR6X2NZAn2.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/graduate/v17/C8cg4cs3o2n15t_2YygQ43k.ttf" + }, + { + "family": "Grand Hotel", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/grandhotel/v19/7Au7p_IgjDKdCRWuR1azpmQNEl0O0kEx.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/grandhotel/v19/7Au7p_IgjDKdCRWuR1azplQMGFk.ttf" + }, + { + "family": "Grandiflora One", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin", + "latin-ext" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/grandifloraone/v3/0ybmGD0g27bCk_5MGWZcKWhxwnUU_R3y8DOWGA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/grandifloraone/v3/0ybmGD0g27bCk_5MGWZcKWhxwnUk_Bf2.ttf" + }, + { + "family": "Grandstander", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/grandstander/v18/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD1-_D3jWttFGmQk.ttf", + "200": "https://fonts.gstatic.com/s/grandstander/v18/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD9--D3jWttFGmQk.ttf", + "300": "https://fonts.gstatic.com/s/grandstander/v18/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQDwG-D3jWttFGmQk.ttf", + "regular": "https://fonts.gstatic.com/s/grandstander/v18/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD1--D3jWttFGmQk.ttf", + "500": "https://fonts.gstatic.com/s/grandstander/v18/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD22-D3jWttFGmQk.ttf", + "600": "https://fonts.gstatic.com/s/grandstander/v18/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD4G5D3jWttFGmQk.ttf", + "700": "https://fonts.gstatic.com/s/grandstander/v18/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD7i5D3jWttFGmQk.ttf", + "800": "https://fonts.gstatic.com/s/grandstander/v18/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD9-5D3jWttFGmQk.ttf", + "900": "https://fonts.gstatic.com/s/grandstander/v18/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD_a5D3jWttFGmQk.ttf", + "100italic": "https://fonts.gstatic.com/s/grandstander/v18/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf95zrcsvNDiQlBYQ.ttf", + "200italic": "https://fonts.gstatic.com/s/grandstander/v18/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ZzvcsvNDiQlBYQ.ttf", + "300italic": "https://fonts.gstatic.com/s/grandstander/v18/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9uTvcsvNDiQlBYQ.ttf", + "italic": "https://fonts.gstatic.com/s/grandstander/v18/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf95zvcsvNDiQlBYQ.ttf", + "500italic": "https://fonts.gstatic.com/s/grandstander/v18/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf91TvcsvNDiQlBYQ.ttf", + "600italic": "https://fonts.gstatic.com/s/grandstander/v18/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9OTzcsvNDiQlBYQ.ttf", + "700italic": "https://fonts.gstatic.com/s/grandstander/v18/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ADzcsvNDiQlBYQ.ttf", + "800italic": "https://fonts.gstatic.com/s/grandstander/v18/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9ZzzcsvNDiQlBYQ.ttf", + "900italic": "https://fonts.gstatic.com/s/grandstander/v18/ga6ZawtA-GpSsTWrnNHPCSImbyq1fDGZrzwXGpf9TjzcsvNDiQlBYQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/grandstander/v18/ga6fawtA-GpSsTWrnNHPCSIMZhhKpFjyNZIQD1--P3ncsg.ttf" + }, + { + "family": "Grape Nuts", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/grapenuts/v5/syk2-yF4iLM2RfKj4F7k3tLvol2RN1E.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/grapenuts/v5/syk2-yF4iLM2RfKj4F7k7tPlpg.ttf" + }, + { + "family": "Gravitas One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gravitasone/v19/5h1diZ4hJ3cblKy3LWakKQmaDWRNr3DzbQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gravitasone/v19/5h1diZ4hJ3cblKy3LWakKQmqDG5J.ttf" + }, + { + "family": "Great Vibes", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/greatvibes/v19/RWmMoKWR9v4ksMfaWd_JN-XCg6UKDXlq.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/greatvibes/v19/RWmMoKWR9v4ksMfaWd_JN9XDiaE.ttf" + }, + { + "family": "Grechen Fuemen", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/grechenfuemen/v9/vEFI2_tHEQ4d5ObgKxBzZh0MAWgc-NaXXq7H.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/grechenfuemen/v9/vEFI2_tHEQ4d5ObgKxBzZh0MAVgd8tI.ttf" + }, + { + "family": "Grenze", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/grenze/v15/O4ZRFGb7hR12BxqPm2IjuAkalnmd.ttf", + "100italic": "https://fonts.gstatic.com/s/grenze/v15/O4ZXFGb7hR12BxqH_VpHsg04k2md0kI.ttf", + "200": "https://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPN0MDkicWn2CEyw.ttf", + "200italic": "https://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_Vrrky0SvWWUy1uW.ttf", + "300": "https://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPU0ADkicWn2CEyw.ttf", + "300italic": "https://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VqPkC0SvWWUy1uW.ttf", + "regular": "https://fonts.gstatic.com/s/grenze/v15/O4ZTFGb7hR12Bxq3_2gnmgwKlg.ttf", + "italic": "https://fonts.gstatic.com/s/grenze/v15/O4ZRFGb7hR12BxqH_WIjuAkalnmd.ttf", + "500": "https://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPC0EDkicWn2CEyw.ttf", + "500italic": "https://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VrXkS0SvWWUy1uW.ttf", + "600": "https://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPJ0YDkicWn2CEyw.ttf", + "600italic": "https://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_Vr7li0SvWWUy1uW.ttf", + "700": "https://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPQ0cDkicWn2CEyw.ttf", + "700italic": "https://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_Vqfly0SvWWUy1uW.ttf", + "800": "https://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPX0QDkicWn2CEyw.ttf", + "800italic": "https://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VqDlC0SvWWUy1uW.ttf", + "900": "https://fonts.gstatic.com/s/grenze/v15/O4ZQFGb7hR12BxqPe0UDkicWn2CEyw.ttf", + "900italic": "https://fonts.gstatic.com/s/grenze/v15/O4ZWFGb7hR12BxqH_VqnlS0SvWWUy1uW.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/grenze/v15/O4ZTFGb7hR12BxqH_mIj.ttf" + }, + { + "family": "Grenze Gotisch", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/grenzegotisch/v18/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5Lz5UcICdYPSd_w.ttf", + "200": "https://fonts.gstatic.com/s/grenzegotisch/v18/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5rz9UcICdYPSd_w.ttf", + "300": "https://fonts.gstatic.com/s/grenzegotisch/v18/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5cT9UcICdYPSd_w.ttf", + "regular": "https://fonts.gstatic.com/s/grenzegotisch/v18/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5Lz9UcICdYPSd_w.ttf", + "500": "https://fonts.gstatic.com/s/grenzegotisch/v18/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5HT9UcICdYPSd_w.ttf", + "600": "https://fonts.gstatic.com/s/grenzegotisch/v18/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i58ThUcICdYPSd_w.ttf", + "700": "https://fonts.gstatic.com/s/grenzegotisch/v18/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5yDhUcICdYPSd_w.ttf", + "800": "https://fonts.gstatic.com/s/grenzegotisch/v18/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5rzhUcICdYPSd_w.ttf", + "900": "https://fonts.gstatic.com/s/grenzegotisch/v18/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5hjhUcICdYPSd_w.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/grenzegotisch/v18/Fh4hPjjqNDz1osh_jX9YfjudpBJBNV5y5wf_k1i5Lz9kcYqZ.ttf" + }, + { + "family": "Grey Qo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/greyqo/v9/BXRrvF_Nmv_TyXxNDOtQ9Wf0QcE.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/greyqo/v9/BXRrvF_Nmv_TyXxNPOpa8Q.ttf" + }, + { + "family": "Griffy", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/griffy/v22/FwZa7-ox2FQh9kfwSNSEwM2zpA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/griffy/v22/FwZa7-ox2FQh9kfASd6A.ttf" + }, + { + "family": "Gruppo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gruppo/v21/WwkfxPmzE06v_ZWFWXDAOIEQUQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gruppo/v21/WwkfxPmzE06v_ZW1WHrE.ttf" + }, + { + "family": "Gudea", + "variants": [ + "regular", + "italic", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gudea/v15/neIFzCqgsI0mp-CP9IGON7Ez.ttf", + "italic": "https://fonts.gstatic.com/s/gudea/v15/neILzCqgsI0mp9CN_oWsMqEzSJQ.ttf", + "700": "https://fonts.gstatic.com/s/gudea/v15/neIIzCqgsI0mp9gz26WGHK06UY30.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gudea/v15/neIFzCqgsI0mp9CO_oU.ttf" + }, + { + "family": "Gugi", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v15", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/gugi/v15/A2BVn5dXywshVA6A9DEfgqM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gugi/v15/A2BVn5dXywshZA-K8A.ttf" + }, + { + "family": "Gulzar", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gulzar/v12/Wnz6HAc9eB3HB2ILYTwZqg_MPQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gulzar/v12/Wnz6HAc9eB3HB2I7YDYd.ttf" + }, + { + "family": "Gupter", + "variants": [ + "regular", + "500", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gupter/v14/2-cm9JNmxJqPO1QUYZa_Wu_lpA.ttf", + "500": "https://fonts.gstatic.com/s/gupter/v14/2-cl9JNmxJqPO1Qslb-bUsT5rZhaZg.ttf", + "700": "https://fonts.gstatic.com/s/gupter/v14/2-cl9JNmxJqPO1Qs3bmbUsT5rZhaZg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gupter/v14/2-cm9JNmxJqPO1QkYJy7.ttf" + }, + { + "family": "Gurajada", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gurajada/v19/FwZY7-Qx308m-l-0Kd6A4sijpFu_.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gurajada/v19/FwZY7-Qx308m-l-0Ke6B6Mw.ttf" + }, + { + "family": "Gwendolyn", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/gwendolyn/v7/qkBXXvoO_M3CSss-d7ee5JRLkAXbMQ.ttf", + "700": "https://fonts.gstatic.com/s/gwendolyn/v7/qkBSXvoO_M3CSss-d7emWLtvmC7HONiSFQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/gwendolyn/v7/qkBXXvoO_M3CSss-d7eu5Z5P.ttf" + }, + { + "family": "Habibi", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/habibi/v21/CSR-4zFWkuqcTTNCShJeZOYySQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/habibi/v21/CSR-4zFWkuqcTTNySxha.ttf" + }, + { + "family": "Hachi Maru Pop", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/hachimarupop/v20/HI_TiYoRLqpLrEiMAuO9Ysfz7rW1EM_btd8u.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hachimarupop/v20/HI_TiYoRLqpLrEiMAuO9Ysfz7oW0Gss.ttf" + }, + { + "family": "Hahmlet", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "korean", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RhKOdjobsO-aVxn.ttf", + "200": "https://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjKONjobsO-aVxn.ttf", + "300": "https://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RgUONjobsO-aVxn.ttf", + "regular": "https://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RhKONjobsO-aVxn.ttf", + "500": "https://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4Rh4ONjobsO-aVxn.ttf", + "600": "https://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RiUP9jobsO-aVxn.ttf", + "700": "https://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RitP9jobsO-aVxn.ttf", + "800": "https://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjKP9jobsO-aVxn.ttf", + "900": "https://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RjjP9jobsO-aVxn.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hahmlet/v13/BngXUXpCQ3nKpIo0TfPyfCdXfaeU4RhKOOjpZMc.ttf" + }, + { + "family": "Halant", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/halant/v14/u-490qaujRI2Pbsvc_pCmwZqcwdRXg.ttf", + "regular": "https://fonts.gstatic.com/s/halant/v14/u-4-0qaujRI2PbsX39Jmky12eg.ttf", + "500": "https://fonts.gstatic.com/s/halant/v14/u-490qaujRI2PbsvK_tCmwZqcwdRXg.ttf", + "600": "https://fonts.gstatic.com/s/halant/v14/u-490qaujRI2PbsvB_xCmwZqcwdRXg.ttf", + "700": "https://fonts.gstatic.com/s/halant/v14/u-490qaujRI2PbsvY_1CmwZqcwdRXg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/halant/v14/u-4-0qaujRI2Pbsn3thi.ttf" + }, + { + "family": "Hammersmith One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/hammersmithone/v17/qWcyB624q4L_C4jGQ9IK0O_dFlnbshsks4MRXw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hammersmithone/v17/qWcyB624q4L_C4jGQ9IK0O_dFlnrsxEg.ttf" + }, + { + "family": "Hanalei", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/hanalei/v23/E21n_dD8iufIjBRHXzgmVydREus.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hanalei/v23/E21n_dD8iufIjBRHbzksUw.ttf" + }, + { + "family": "Hanalei Fill", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/hanaleifill/v22/fC1mPYtObGbfyQznIaQzPQiMVwLBplm9aw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hanaleifill/v22/fC1mPYtObGbfyQznIaQzPQi8VgjF.ttf" + }, + { + "family": "Handjet", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "arabic", + "armenian", + "cyrillic", + "cyrillic-ext", + "greek", + "hebrew", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/handjet/v19/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHTmbUkUsEHFAH2A.ttf", + "200": "https://fonts.gstatic.com/s/handjet/v19/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHbmaUkUsEHFAH2A.ttf", + "300": "https://fonts.gstatic.com/s/handjet/v19/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHWeaUkUsEHFAH2A.ttf", + "regular": "https://fonts.gstatic.com/s/handjet/v19/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHTmaUkUsEHFAH2A.ttf", + "500": "https://fonts.gstatic.com/s/handjet/v19/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHQuaUkUsEHFAH2A.ttf", + "600": "https://fonts.gstatic.com/s/handjet/v19/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHeedUkUsEHFAH2A.ttf", + "700": "https://fonts.gstatic.com/s/handjet/v19/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHd6dUkUsEHFAH2A.ttf", + "800": "https://fonts.gstatic.com/s/handjet/v19/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHbmdUkUsEHFAH2A.ttf", + "900": "https://fonts.gstatic.com/s/handjet/v19/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHZCdUkUsEHFAH2A.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/handjet/v19/oY1n8eXHq7n1OnbQrOY_2FrEwYEMLlcdP1mCtZaLaTutCwcIhGZ0lGU0akFcO3XFHTmaYkQmFA.ttf" + }, + { + "family": "Handlee", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/handlee/v18/-F6xfjBsISg9aMakDmr6oilJ3ik.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/handlee/v18/-F6xfjBsISg9aMakPmvwpg.ttf" + }, + { + "family": "Hanken Grotesk", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2da4fpNzXhRKA.ttf", + "200": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcM2Za4fpNzXhRKA.ttf", + "300": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Nc7WZa4fpNzXhRKA.ttf", + "regular": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2Za4fpNzXhRKA.ttf", + "500": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcgWZa4fpNzXhRKA.ttf", + "600": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcbWFa4fpNzXhRKA.ttf", + "700": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcVGFa4fpNzXhRKA.ttf", + "800": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcM2Fa4fpNzXhRKA.ttf", + "900": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_NcGmFa4fpNzXhRKA.ttf", + "100italic": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWyo_BJ731BKMSK.ttf", + "200italic": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUyovBJ731BKMSK.ttf", + "300italic": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyXsovBJ731BKMSK.ttf", + "italic": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWyovBJ731BKMSK.ttf", + "500italic": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyWAovBJ731BKMSK.ttf", + "600italic": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyVspfBJ731BKMSK.ttf", + "700italic": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyVVpfBJ731BKMSK.ttf", + "800italic": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUypfBJ731BKMSK.ttf", + "900italic": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVo2YZDLWuGJpnzaiwFXS9tYtpY_d6T_POl0fRJeyUbpfBJ731BKMSK.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hankengrotesk/v8/ieVq2YZDLWuGJpnzaiwFXS9tYvBRzyFLlZg_f_Ncs2Zq4PBJ.ttf" + }, + { + "family": "Hanuman", + "variants": [ + "100", + "300", + "regular", + "700", + "900" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v22", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/hanuman/v22/VuJzdNvD15HhpJJBQMLdPKNiaRpFvg.ttf", + "300": "https://fonts.gstatic.com/s/hanuman/v22/VuJ0dNvD15HhpJJBQAr_HIlMZRNcp0o.ttf", + "regular": "https://fonts.gstatic.com/s/hanuman/v22/VuJxdNvD15HhpJJBeKbXOIFneRo.ttf", + "700": "https://fonts.gstatic.com/s/hanuman/v22/VuJ0dNvD15HhpJJBQBr4HIlMZRNcp0o.ttf", + "900": "https://fonts.gstatic.com/s/hanuman/v22/VuJ0dNvD15HhpJJBQCL6HIlMZRNcp0o.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hanuman/v22/VuJxdNvD15HhpJJBSKfdPA.ttf" + }, + { + "family": "Happy Monkey", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/happymonkey/v14/K2F2fZZcl-9SXwl5F_C4R_OABwD2bWqVjw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/happymonkey/v14/K2F2fZZcl-9SXwl5F_C4R_OwBgry.ttf" + }, + { + "family": "Harmattan", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/harmattan/v19/goksH6L2DkFvVvRp9XpTS0CjkP1Yog.ttf", + "500": "https://fonts.gstatic.com/s/harmattan/v19/gokpH6L2DkFvVvRp9Xprv2mHmNZEq6TTFw.ttf", + "600": "https://fonts.gstatic.com/s/harmattan/v19/gokpH6L2DkFvVvRp9Xprk26HmNZEq6TTFw.ttf", + "700": "https://fonts.gstatic.com/s/harmattan/v19/gokpH6L2DkFvVvRp9Xpr92-HmNZEq6TTFw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/harmattan/v19/goksH6L2DkFvVvRp9XpjSkqn.ttf" + }, + { + "family": "Headland One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/headlandone/v16/yYLu0hHR2vKnp89Tk1TCq3Tx0PlTeZ3mJA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/headlandone/v16/yYLu0hHR2vKnp89Tk1TCq3TB0fNX.ttf" + }, + { + "family": "Hedvig Letters Sans", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/hedvigletterssans/v2/CHy_V_PfGVjobSBkihHWDT98RVp37w8jQJ1N3Twgi1w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hedvigletterssans/v2/CHy_V_PfGVjobSBkihHWDT98RVp37w8jcJxH2Q.ttf" + }, + { + "family": "Hedvig Letters Serif", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/hedviglettersserif/v2/OD5puN2I2mekHmyoU1Kj2AXOd5_7v7gIDlX8quj7viQ_N1HixEAZf7fcvSGpZg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hedviglettersserif/v2/OD5puN2I2mekHmyoU1Kj2AXOd5_7v7gIDlX8quj7viQ_N1HixEApfr3Y.ttf" + }, + { + "family": "Heebo", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/heebo/v26/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EiS2cckOnz02SXQ.ttf", + "200": "https://fonts.gstatic.com/s/heebo/v26/NGSpv5_NC0k9P_v6ZUCbLRAHxK1ECSycckOnz02SXQ.ttf", + "300": "https://fonts.gstatic.com/s/heebo/v26/NGSpv5_NC0k9P_v6ZUCbLRAHxK1E1yycckOnz02SXQ.ttf", + "regular": "https://fonts.gstatic.com/s/heebo/v26/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EiSycckOnz02SXQ.ttf", + "500": "https://fonts.gstatic.com/s/heebo/v26/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EuyycckOnz02SXQ.ttf", + "600": "https://fonts.gstatic.com/s/heebo/v26/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EVyucckOnz02SXQ.ttf", + "700": "https://fonts.gstatic.com/s/heebo/v26/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EbiucckOnz02SXQ.ttf", + "800": "https://fonts.gstatic.com/s/heebo/v26/NGSpv5_NC0k9P_v6ZUCbLRAHxK1ECSucckOnz02SXQ.ttf", + "900": "https://fonts.gstatic.com/s/heebo/v26/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EICucckOnz02SXQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/heebo/v26/NGSpv5_NC0k9P_v6ZUCbLRAHxK1EiSysc0mj.ttf" + }, + { + "family": "Henny Penny", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/hennypenny/v17/wXKvE3UZookzsxz_kjGSfMQqt3M7tMDT.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hennypenny/v17/wXKvE3UZookzsxz_kjGSfPQrvXc.ttf" + }, + { + "family": "Hepta Slab", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/heptaslab/v23/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvkV5jfbY5B0NBkz.ttf", + "200": "https://fonts.gstatic.com/s/heptaslab/v23/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvmV5zfbY5B0NBkz.ttf", + "300": "https://fonts.gstatic.com/s/heptaslab/v23/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvlL5zfbY5B0NBkz.ttf", + "regular": "https://fonts.gstatic.com/s/heptaslab/v23/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvkV5zfbY5B0NBkz.ttf", + "500": "https://fonts.gstatic.com/s/heptaslab/v23/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvkn5zfbY5B0NBkz.ttf", + "600": "https://fonts.gstatic.com/s/heptaslab/v23/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvnL4DfbY5B0NBkz.ttf", + "700": "https://fonts.gstatic.com/s/heptaslab/v23/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvny4DfbY5B0NBkz.ttf", + "800": "https://fonts.gstatic.com/s/heptaslab/v23/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvmV4DfbY5B0NBkz.ttf", + "900": "https://fonts.gstatic.com/s/heptaslab/v23/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5Hvm84DfbY5B0NBkz.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/heptaslab/v23/ea8JadoyU_jkHdalebHvyWVNdYoIsHe5HvkV5wfaaZQ.ttf" + }, + { + "family": "Herr Von Muellerhoff", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/herrvonmuellerhoff/v21/WBL6rFjRZkREW8WqmCWYLgCkQKXb4CAft3c6_qJY3QPQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/herrvonmuellerhoff/v21/WBL6rFjRZkREW8WqmCWYLgCkQKXb4CAft0c79KY.ttf" + }, + { + "family": "Hi Melody", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v15", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/himelody/v15/46ktlbP8Vnz0pJcqCTbEf29E31BBGA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/himelody/v15/46ktlbP8Vnz0pJcqCTb0fmVA.ttf" + }, + { + "family": "Hina Mincho", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/hinamincho/v13/2sDaZGBRhpXa2Jjz5w5LAGW8KbkVZTHR.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hinamincho/v13/2sDaZGBRhpXa2Jjz5w5LAFW9I70.ttf" + }, + { + "family": "Hind", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfMJaIRuYjDpf5Vw.ttf", + "regular": "https://fonts.gstatic.com/s/hind/v16/5aU69_a8oxmIRG5yBROzkDM.ttf", + "500": "https://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfJpbIRuYjDpf5Vw.ttf", + "600": "https://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfLZcIRuYjDpf5Vw.ttf", + "700": "https://fonts.gstatic.com/s/hind/v16/5aU19_a8oxmIfNJdIRuYjDpf5Vw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hind/v16/5aU69_a8oxmIdG94AQ.ttf" + }, + { + "family": "Hind Guntur", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "telugu" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_yGn1czn9zaj5Ju.ttf", + "regular": "https://fonts.gstatic.com/s/hindguntur/v12/wXKvE3UZrok56nvamSuJd8Qqt3M7tMDT.ttf", + "500": "https://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_zenlczn9zaj5Ju.ttf", + "600": "https://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_zymVczn9zaj5Ju.ttf", + "700": "https://fonts.gstatic.com/s/hindguntur/v12/wXKyE3UZrok56nvamSuJd_yWmFczn9zaj5Ju.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hindguntur/v12/wXKvE3UZrok56nvamSuJd_QrvXc.ttf" + }, + { + "family": "Hind Madurai", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfXaUnecsoMJ0b_g.ttf", + "regular": "https://fonts.gstatic.com/s/hindmadurai/v11/f0Xx0e2p98ZvDXdZQIOcpqjn8Y0DceA0OQ.ttf", + "500": "https://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfBaQnecsoMJ0b_g.ttf", + "600": "https://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfKaMnecsoMJ0b_g.ttf", + "700": "https://fonts.gstatic.com/s/hindmadurai/v11/f0Xu0e2p98ZvDXdZQIOcpqjfTaInecsoMJ0b_g.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hindmadurai/v11/f0Xx0e2p98ZvDXdZQIOcpqjX8IcH.ttf" + }, + { + "family": "Hind Siliguri", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "bengali", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoRDf44uEfKiGvxts.ttf", + "regular": "https://fonts.gstatic.com/s/hindsiliguri/v12/ijwTs5juQtsyLLR5jN4cxBEofJvQxuk0Nig.ttf", + "500": "https://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoRG_54uEfKiGvxts.ttf", + "600": "https://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoREP-4uEfKiGvxts.ttf", + "700": "https://fonts.gstatic.com/s/hindsiliguri/v12/ijwOs5juQtsyLLR5jN4cxBEoRCf_4uEfKiGvxts.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hindsiliguri/v12/ijwTs5juQtsyLLR5jN4cxBEoTJrawg.ttf" + }, + { + "family": "Hind Vadodara", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSDn3iXM0oSOL2Yw.ttf", + "regular": "https://fonts.gstatic.com/s/hindvadodara/v13/neINzCKvrIcn5pbuuuriV9tTcJXfrXsfvSo.ttf", + "500": "https://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSGH2iXM0oSOL2Yw.ttf", + "600": "https://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSE3xiXM0oSOL2Yw.ttf", + "700": "https://fonts.gstatic.com/s/hindvadodara/v13/neIQzCKvrIcn5pbuuuriV9tTSCnwiXM0oSOL2Yw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hindvadodara/v13/neINzCKvrIcn5pbuuuriV9tTQJTVqQ.ttf" + }, + { + "family": "Holtwood One SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/holtwoodonesc/v21/yYLx0hLR0P-3vMFSk1TCq3Txg5B3cbb6LZttyg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/holtwoodonesc/v21/yYLx0hLR0P-3vMFSk1TCq3Txg5BHcLz-.ttf" + }, + { + "family": "Homemade Apple", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/homemadeapple/v22/Qw3EZQFXECDrI2q789EKQZJob3x9Vnksi4M7.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/homemadeapple/v22/Qw3EZQFXECDrI2q789EKQZJob0x8XH0.ttf" + }, + { + "family": "Homenaje", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/homenaje/v16/FwZY7-Q-xVAi_l-6Ld6A4sijpFu_.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/homenaje/v16/FwZY7-Q-xVAi_l-6Le6B6Mw.ttf" + }, + { + "family": "Honk", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/honk/v1/m8J7jftUea-XwTaemClumrBQbmvynOmXBji9zFhHRr8WFgVLo7tNepQKvg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/honk/v1/m8J7jftUea-XwTaemClumrBQbmvynOmXBji9zFhHRr8WFgV7orFJ.ttf", + "colorCapabilities": [ + "COLRv1" + ] + }, + { + "family": "Hubballi", + "variants": [ + "regular" + ], + "subsets": [ + "kannada", + "latin", + "latin-ext" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/hubballi/v7/o-0JIpUj3WIZ1RFN56B7yBBNYuSF.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hubballi/v7/o-0JIpUj3WIZ1RFN55B6whQ.ttf" + }, + { + "family": "Hurricane", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/hurricane/v7/pe0sMIuULZxTolZ5YldyAv2-C99ycg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/hurricane/v7/pe0sMIuULZxTolZ5YldCA_e6.ttf" + }, + { + "family": "IBM Plex Mono", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6pfjptAgt5VM-kVkqdyU8n3kwq0n1hj-sNFQ.ttf", + "100italic": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6rfjptAgt5VM-kVkqdyU8n1ioStndlre4dFcFh.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3uAL8ldPg-IUDNg.ttf", + "200italic": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSGlZFh8ARHNh4zg.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3oQI8ldPg-IUDNg.ttf", + "300italic": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSflVFh8ARHNh4zg.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F63fjptAgt5VM-kVkqdyU8n5igg1l9kn-s.ttf", + "italic": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6pfjptAgt5VM-kVkqdyU8n1ioq0n1hj-sNFQ.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3twJ8ldPg-IUDNg.ttf", + "500italic": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSJlRFh8ARHNh4zg.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3vAO8ldPg-IUDNg.ttf", + "600italic": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSClNFh8ARHNh4zg.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6qfjptAgt5VM-kVkqdyU8n3pQP8ldPg-IUDNg.ttf", + "700italic": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F6sfjptAgt5VM-kVkqdyU8n1ioSblJFh8ARHNh4zg.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexmono/v19/-F63fjptAgt5VM-kVkqdyU8n1ikq0g.ttf" + }, + { + "family": "IBM Plex Sans", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX-KVElMYYaJe8bpLHnCwDKjbLeEKxIedbzDw.ttf", + "100italic": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX8KVElMYYaJe8bpLHnCwDKhdTmdKZMW9PjD3N8.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjR7_MIZmdd_qFmo.ttf", + "200italic": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTm2Idscf3vBmpl8A.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjXr8MIZmdd_qFmo.ttf", + "300italic": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRscf3vBmpl8A.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYXgKVElMYYaJe8bpLHnCwDKtdbUFI5NadY.ttf", + "italic": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX-KVElMYYaJe8bpLHnCwDKhdTeEKxIedbzDw.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjSL9MIZmdd_qFmo.ttf", + "500italic": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTm5IVscf3vBmpl8A.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjQ76MIZmdd_qFmo.ttf", + "600italic": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJscf3vBmpl8A.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX9KVElMYYaJe8bpLHnCwDKjWr7MIZmdd_qFmo.ttf", + "700italic": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYX7KVElMYYaJe8bpLHnCwDKhdTmrINscf3vBmpl8A.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexsans/v19/zYXgKVElMYYaJe8bpLHnCwDKhdfeEA.ttf" + }, + { + "family": "IBM Plex Sans Arabic", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3MZRtWPQCuHme67tEYUIx3Kh0PHR9N6YNe3PC5eMlAMg0.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPy_dCTVsVJKxTs.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YOW_tCTVsVJKxTs.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3CZRtWPQCuHme67tEYUIx3Kh0PHR9N6bs61vSbfdlA.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPO_9CTVsVJKxTs.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YPi-NCTVsVJKxTs.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3NZRtWPQCuHme67tEYUIx3Kh0PHR9N6YOG-dCTVsVJKxTs.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexsansarabic/v12/Qw3CZRtWPQCuHme67tEYUIx3Kh0PHR9N6Ys73PA.ttf" + }, + { + "family": "IBM Plex Sans Condensed", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY7KyKvBgYsMDhM.ttf", + "100italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8hN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8M_LhakJHhOgBg.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY5m6Yvrr4cFFwq5.ttf", + "200italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8GPqpYMnEhq5H1w.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4C6ovrr4cFFwq5.ttf", + "300italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8AfppYMnEhq5H1w.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHbauwq_jhJsM.ttf", + "italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8nN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYasyKvBgYsMDhM.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY5a64vrr4cFFwq5.ttf", + "500italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8F_opYMnEhq5H1w.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY527Ivrr4cFFwq5.ttf", + "600italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8HPvpYMnEhq5H1w.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8gN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHY4S7Yvrr4cFFwq5.ttf", + "700italic": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8iN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYas8BfupYMnEhq5H1w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexsanscondensed/v14/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHYavyKs.ttf" + }, + { + "family": "IBM Plex Sans Devanagari", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic-ext", + "devanagari", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXB3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HMUjwUcjwCEQq.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HnWnQe-b8AV0z0w.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_H-WrQe-b8AV0z0w.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXH3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O__VUL0c83gCA.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HoWvQe-b8AV0z0w.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_HjWzQe-b8AV0z0w.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXA3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_H6W3Qe-b8AV0z0w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexsansdevanagari/v11/XRXH3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O_PVEjw.ttf" + }, + { + "family": "IBM Plex Sans Hebrew", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa4qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEXB-l0VqDaM7C4.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEVt230_hjqF9Tc2.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEUJ2H0_hjqF9Tc2.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa2qYENg9Kw1mpLpO0bGM5lfHAAZHhDXH2l8Fk3rSaM.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEVR2X0_hjqF9Tc2.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEV93n0_hjqF9Tc2.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa5qYENg9Kw1mpLpO0bGM5lfHAAZHhDXEUZ330_hjqF9Tc2.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexsanshebrew/v11/BCa2qYENg9Kw1mpLpO0bGM5lfHAAZHhDXE2k-l0.ttf" + }, + { + "family": "IBM Plex Sans JP", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexsansjp/v6/Z9XLDn9KbTDf6_f7dISNqYf_tvPT7E7yjPB7twdmHQ.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexsansjp/v6/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7OLTrNpVuw5_BAM.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexsansjp/v6/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7IbQrNpVuw5_BAM.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexsansjp/v6/Z9XNDn9KbTDf6_f7dISNqYf_tvPT1Cr4iNJ-pwc.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexsansjp/v6/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7N7RrNpVuw5_BAM.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexsansjp/v6/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7PLWrNpVuw5_BAM.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexsansjp/v6/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7JbXrNpVuw5_BAM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexsansjp/v6/Z9XNDn9KbTDf6_f7dISNqYf_tvPT5CvyjA.ttf" + }, + { + "family": "IBM Plex Sans KR", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "korean", + "latin", + "latin-ext" + ], + "version": "v10", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFM2-VJISZe3O_rc3ZVYh4aTwNOyra_X5zCpMrMfA.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyhqef7bsqMPVZb4.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyn6df7bsqMPVZb4.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFK2-VJISZe3O_rc3ZVYh4aTwNO8tK1W77HtMo.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOyiacf7bsqMPVZb4.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOygqbf7bsqMPVZb4.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFN2-VJISZe3O_rc3ZVYh4aTwNOym6af7bsqMPVZb4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexsanskr/v10/vEFK2-VJISZe3O_rc3ZVYh4aTwNOwtO_Xw.ttf" + }, + { + "family": "IBM Plex Sans Thai", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "thai" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JNje1VVIzcq1HzJq2AEdo2Tj_qvLqEatYlR8ZKUqcX.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqExvcFbehGW74OXw.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqEovQFbehGW74OXw.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JPje1VVIzcq1HzJq2AEdo2Tj_qvLq8DtwhZcNaUg.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqE-vUFbehGW74OXw.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqE1vIFbehGW74OXw.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JMje1VVIzcq1HzJq2AEdo2Tj_qvLqEsvMFbehGW74OXw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexsansthai/v10/m8JPje1VVIzcq1HzJq2AEdo2Tj_qvLqMD9Yl.ttf" + }, + { + "family": "IBM Plex Sans Thai Looped", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "thai" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss5AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_HaKpHOtFCQ76Q.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_NqrhFmDGC0i8Cc.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_L6ohFmDGC0i8Cc.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss_AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30LxBKAoFGoBCQ.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_OaphFmDGC0i8Cc.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_MquhFmDGC0i8Cc.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss6AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L_K6vhFmDGC0i8Cc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexsansthailooped/v11/tss_AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30L9BOKpA.ttf" + }, + { + "family": "IBM Plex Serif", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizBREVNn1dOx-zrZ2X3pZvkTi182zIZj1bIkNo.ttf", + "100italic": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizHREVNn1dOx-zrZ2X3pZvkTiUa41YTi3TNgNq55w.ttf", + "200": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi3Q-hIzoVrBicOg.ttf", + "200italic": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa4_oyq17jjNOg_oc.ttf", + "300": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi20-RIzoVrBicOg.ttf", + "300italic": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa454xq17jjNOg_oc.ttf", + "regular": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizDREVNn1dOx-zrZ2X3pZvkThUY0TY7ikbI.ttf", + "italic": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizBREVNn1dOx-zrZ2X3pZvkTiUa2zIZj1bIkNo.ttf", + "500": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi3s-BIzoVrBicOg.ttf", + "500italic": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa48Ywq17jjNOg_oc.ttf", + "600": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi3A_xIzoVrBicOg.ttf", + "600italic": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa4-o3q17jjNOg_oc.ttf", + "700": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizAREVNn1dOx-zrZ2X3pZvkTi2k_hIzoVrBicOg.ttf", + "700italic": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizGREVNn1dOx-zrZ2X3pZvkTiUa4442q17jjNOg_oc.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibmplexserif/v19/jizDREVNn1dOx-zrZ2X3pZvkTiUZ2zI.ttf" + }, + { + "family": "IM Fell DW Pica", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imfelldwpica/v16/2sDGZGRQotv9nbn2qSl0TxXVYNw9ZAPUvi88MQ.ttf", + "italic": "https://fonts.gstatic.com/s/imfelldwpica/v16/2sDEZGRQotv9nbn2qSl0TxXVYNwNZgnQnCosMXm0.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imfelldwpica/v16/2sDGZGRQotv9nbn2qSl0TxXVYNwNZQnQ.ttf" + }, + { + "family": "IM Fell DW Pica SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imfelldwpicasc/v21/0ybjGCAu5PfqkvtGVU15aBhXz3EUrnTW-BiKEUiBGA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imfelldwpicasc/v21/0ybjGCAu5PfqkvtGVU15aBhXz3EUrnTm-RKO.ttf" + }, + { + "family": "IM Fell Double Pica", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imfelldoublepica/v14/3XF2EqMq_94s9PeKF7Fg4gOKINyMtZ8rT0S1UL5Ayp0.ttf", + "italic": "https://fonts.gstatic.com/s/imfelldoublepica/v14/3XF0EqMq_94s9PeKF7Fg4gOKINyMtZ8rf0a_VJxF2p2G8g.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imfelldoublepica/v14/3XF2EqMq_94s9PeKF7Fg4gOKINyMtZ8rf0W_VA.ttf" + }, + { + "family": "IM Fell Double Pica SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imfelldoublepicasc/v21/neIazDmuiMkFo6zj_sHpQ8teNbWlwBB_hXjJ4Y0Eeru2dGg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imfelldoublepicasc/v21/neIazDmuiMkFo6zj_sHpQ8teNbWlwBB_hXjJ0YwOfg.ttf" + }, + { + "family": "IM Fell English", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imfellenglish/v14/Ktk1ALSLW8zDe0rthJysWrnLsAz3F6mZVY9Y5w.ttf", + "italic": "https://fonts.gstatic.com/s/imfellenglish/v14/Ktk3ALSLW8zDe0rthJysWrnLsAzHFaOdd4pI59zg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imfellenglish/v14/Ktk1ALSLW8zDe0rthJysWrnLsAzHFqOd.ttf" + }, + { + "family": "IM Fell English SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imfellenglishsc/v16/a8IENpD3CDX-4zrWfr1VY879qFF05pZLO4gOg0shzA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imfellenglishsc/v16/a8IENpD3CDX-4zrWfr1VY879qFF05pZ7OoIK.ttf" + }, + { + "family": "IM Fell French Canon", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6ufiNtDWYfYc-tDiyiw08rrghJszkK6coVPt1ozoPz.ttf", + "italic": "https://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6gfiNtDWYfYc-tDiyiw08rrghJszkK6foXNNlKy5PzzrU.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6ufiNtDWYfYc-tDiyiw08rrghJszkK6foUNNk.ttf" + }, + { + "family": "IM Fell French Canon SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imfellfrenchcanonsc/v22/FBVmdCru5-ifcor2bgq9V89khWcmQghEURY7H3c0UBCVIVqH.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imfellfrenchcanonsc/v22/FBVmdCru5-ifcor2bgq9V89khWcmQghEURY7H0c1WhQ.ttf" + }, + { + "family": "IM Fell Great Primer", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6aNwSJtayYxOkbYFsT6hMsLzX7u85rJorXvDo3SQY1.ttf", + "italic": "https://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6UNwSJtayYxOkbYFsT6hMsLzX7u85rJrrVtj4VTBY1N6U.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6aNwSJtayYxOkbYFsT6hMsLzX7u85rJrrWtj4.ttf" + }, + { + "family": "IM Fell Great Primer SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imfellgreatprimersc/v21/ga6daxBOxyt6sCqz3fjZCTFCTUDMHagsQKdDTLf9BXz0s8FG.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imfellgreatprimersc/v21/ga6daxBOxyt6sCqz3fjZCTFCTUDMHagsQKdDTIf8D3g.ttf" + }, + { + "family": "Ibarra Real Nova", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ibarrarealnova/v27/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXdg5MDtVT9TWIvS.ttf", + "500": "https://fonts.gstatic.com/s/ibarrarealnova/v27/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXdS5MDtVT9TWIvS.ttf", + "600": "https://fonts.gstatic.com/s/ibarrarealnova/v27/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXe-48DtVT9TWIvS.ttf", + "700": "https://fonts.gstatic.com/s/ibarrarealnova/v27/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXeH48DtVT9TWIvS.ttf", + "italic": "https://fonts.gstatic.com/s/ibarrarealnova/v27/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKopyiuXztxXZvSkTo.ttf", + "500italic": "https://fonts.gstatic.com/s/ibarrarealnova/v27/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKopxquXztxXZvSkTo.ttf", + "600italic": "https://fonts.gstatic.com/s/ibarrarealnova/v27/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKop_apXztxXZvSkTo.ttf", + "700italic": "https://fonts.gstatic.com/s/ibarrarealnova/v27/sZlsdQiA-DBIDCcaWtQzL4BZHoiDkH5CH9yb5n3ZFmKop8-pXztxXZvSkTo.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ibarrarealnova/v27/sZlSdQiA-DBIDCcaWtQzL4BZHoiDundw4ATyjed3EXdg5PDsXzs.ttf" + }, + { + "family": "Iceberg", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/iceberg/v24/8QIJdijAiM7o-qnZuIgOq7jkAOw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/iceberg/v24/8QIJdijAiM7o-qnZiIkErw.ttf" + }, + { + "family": "Iceland", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/iceland/v20/rax9HiuFsdMNOnWPWKxGADBbg0s.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/iceland/v20/rax9HiuFsdMNOnWPaK1MBA.ttf" + }, + { + "family": "Imbue", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/imbue/v27/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP8iWfOsNNK-Q4xY.ttf", + "200": "https://fonts.gstatic.com/s/imbue/v27/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP0iXfOsNNK-Q4xY.ttf", + "300": "https://fonts.gstatic.com/s/imbue/v27/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP5aXfOsNNK-Q4xY.ttf", + "regular": "https://fonts.gstatic.com/s/imbue/v27/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP8iXfOsNNK-Q4xY.ttf", + "500": "https://fonts.gstatic.com/s/imbue/v27/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP_qXfOsNNK-Q4xY.ttf", + "600": "https://fonts.gstatic.com/s/imbue/v27/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoPxaQfOsNNK-Q4xY.ttf", + "700": "https://fonts.gstatic.com/s/imbue/v27/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoPy-QfOsNNK-Q4xY.ttf", + "800": "https://fonts.gstatic.com/s/imbue/v27/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP0iQfOsNNK-Q4xY.ttf", + "900": "https://fonts.gstatic.com/s/imbue/v27/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP2GQfOsNNK-Q4xY.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imbue/v27/RLpXK5P16Ki3fXhj5cvGrqjocPk4n-gVX3M93TnrnvhoP8iXTOoHMA.ttf" + }, + { + "family": "Imperial Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imperialscript/v6/5DCPAKrpzy_H98IV2ISnZBbGrVNvPenlvttWNg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imperialscript/v6/5DCPAKrpzy_H98IV2ISnZBbGrVNfPOPh.ttf" + }, + { + "family": "Imprima", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/imprima/v18/VEMxRoN7sY3yuy-7-oWHyDzktPo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/imprima/v18/VEMxRoN7sY3yuy-7yoSNzA.ttf" + }, + { + "family": "Inclusive Sans", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/inclusivesans/v1/0nkxC9biPuwflXcJ46P4PGWE0971owa2LB4i.ttf", + "italic": "https://fonts.gstatic.com/s/inclusivesans/v1/0nkzC9biPuwflXcJ46P4PGWE0-73qQKUKQ4iT6o.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/inclusivesans/v1/0nkxC9biPuwflXcJ46P4PGWE0-70qQI.ttf" + }, + { + "family": "Inconsolata", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v32", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/inconsolata/v32/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7LppwU8aRr8lleY2co.ttf", + "300": "https://fonts.gstatic.com/s/inconsolata/v32/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp9s8aRr8lleY2co.ttf", + "regular": "https://fonts.gstatic.com/s/inconsolata/v32/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp4U8aRr8lleY2co.ttf", + "500": "https://fonts.gstatic.com/s/inconsolata/v32/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp7c8aRr8lleY2co.ttf", + "600": "https://fonts.gstatic.com/s/inconsolata/v32/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp1s7aRr8lleY2co.ttf", + "700": "https://fonts.gstatic.com/s/inconsolata/v32/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp2I7aRr8lleY2co.ttf", + "800": "https://fonts.gstatic.com/s/inconsolata/v32/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7LppwU7aRr8lleY2co.ttf", + "900": "https://fonts.gstatic.com/s/inconsolata/v32/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lppyw7aRr8lleY2co.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/inconsolata/v32/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp4U8WRv2kg.ttf" + }, + { + "family": "Inder", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/inder/v14/w8gUH2YoQe8_4vq6pw-P3U4O.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/inder/v14/w8gUH2YoQe8_4sq7rQs.ttf" + }, + { + "family": "Indie Flower", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/indieflower/v21/m8JVjfNVeKWVnh3QMuKkFcZlbkGG1dKEDw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/indieflower/v21/m8JVjfNVeKWVnh3QMuKkFcZVb0uC.ttf" + }, + { + "family": "Ingrid Darling", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ingriddarling/v5/LDIrapaJNxUtSuFdw-9yf4rCPsLOub458jGL.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ingriddarling/v5/LDIrapaJNxUtSuFdw-9yf4rCPvLPs7o.ttf" + }, + { + "family": "Inika", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/inika/v21/rnCm-x5X3QP-phTHRcc2s2XH.ttf", + "700": "https://fonts.gstatic.com/s/inika/v21/rnCr-x5X3QP-pix7auM-mHnOSOuk.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/inika/v21/rnCm-x5X3QP-piTGT8M.ttf" + }, + { + "family": "Inknut Antiqua", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-08-12", + "files": { + "300": "https://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2vwrj5bBoIYJNf.ttf", + "regular": "https://fonts.gstatic.com/s/inknutantiqua/v14/Y4GSYax7VC4ot_qNB4nYpBdaKXUD6pzxRwYB.ttf", + "500": "https://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU33w7j5bBoIYJNf.ttf", + "600": "https://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU3bxLj5bBoIYJNf.ttf", + "700": "https://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2_xbj5bBoIYJNf.ttf", + "800": "https://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2jxrj5bBoIYJNf.ttf", + "900": "https://fonts.gstatic.com/s/inknutantiqua/v14/Y4GRYax7VC4ot_qNB4nYpBdaKU2Hx7j5bBoIYJNf.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/inknutantiqua/v14/Y4GSYax7VC4ot_qNB4nYpBdaKUUC4Jg.ttf" + }, + { + "family": "Inria Sans", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-08-12", + "files": { + "300": "https://fonts.gstatic.com/s/inriasans/v14/ptRPTiqXYfZMCOiVj9kQ3ELaDQtFqeY3fX4.ttf", + "300italic": "https://fonts.gstatic.com/s/inriasans/v14/ptRRTiqXYfZMCOiVj9kQ1OzAgQlPrcQybX4pQA.ttf", + "regular": "https://fonts.gstatic.com/s/inriasans/v14/ptRMTiqXYfZMCOiVj9kQ5O7yKQNute8.ttf", + "italic": "https://fonts.gstatic.com/s/inriasans/v14/ptROTiqXYfZMCOiVj9kQ1Oz4LSFrpe8uZA.ttf", + "700": "https://fonts.gstatic.com/s/inriasans/v14/ptRPTiqXYfZMCOiVj9kQ3FLdDQtFqeY3fX4.ttf", + "700italic": "https://fonts.gstatic.com/s/inriasans/v14/ptRRTiqXYfZMCOiVj9kQ1OzAkQ5PrcQybX4pQA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/inriasans/v14/ptRMTiqXYfZMCOiVj9kQ1O_4LQ.ttf" + }, + { + "family": "Inria Serif", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-08-12", + "files": { + "300": "https://fonts.gstatic.com/s/inriaserif/v16/fC14PYxPY3rXxEndZJAzN3wAVQjFhFyta3xN.ttf", + "300italic": "https://fonts.gstatic.com/s/inriaserif/v16/fC16PYxPY3rXxEndZJAzN3SuT4THjliPbmxN0_E.ttf", + "regular": "https://fonts.gstatic.com/s/inriaserif/v16/fC1lPYxPY3rXxEndZJAzN0SsfSzNr0Ck.ttf", + "italic": "https://fonts.gstatic.com/s/inriaserif/v16/fC1nPYxPY3rXxEndZJAzN3SudyjvqlCkcmU.ttf", + "700": "https://fonts.gstatic.com/s/inriaserif/v16/fC14PYxPY3rXxEndZJAzN3wQUgjFhFyta3xN.ttf", + "700italic": "https://fonts.gstatic.com/s/inriaserif/v16/fC16PYxPY3rXxEndZJAzN3SuT5TAjliPbmxN0_E.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/inriaserif/v16/fC1lPYxPY3rXxEndZJAzN3Stdyg.ttf" + }, + { + "family": "Inspiration", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/inspiration/v6/x3dkckPPZa6L4wIg5cZOEvoGnSrlBBsy.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/inspiration/v6/x3dkckPPZa6L4wIg5cZOEsoHly4.ttf" + }, + { + "family": "Instrument Sans", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSTF-Qf1mS0v3_7Y.ttf", + "500": "https://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npST3-Qf1mS0v3_7Y.ttf", + "600": "https://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSQb_gf1mS0v3_7Y.ttf", + "700": "https://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSQi_gf1mS0v3_7Y.ttf", + "italic": "https://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENuu-2kykN2u7YUwU.ttf", + "500italic": "https://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENut22kykN2u7YUwU.ttf", + "600italic": "https://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENujGxkykN2u7YUwU.ttf", + "700italic": "https://fonts.gstatic.com/s/instrumentsans/v1/pxigypc9vsFDm051Uf6KVwgkfoSbSnNPooZAN0lInHGpCWNE27lgU-XJojENugixkykN2u7YUwU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/instrumentsans/v1/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSTF-Tf0kyk.ttf" + }, + { + "family": "Instrument Serif", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/instrumentserif/v4/jizBRFtNs2ka5fXjeivQ4LroWlx-2zIZj1bIkNo.ttf", + "italic": "https://fonts.gstatic.com/s/instrumentserif/v4/jizHRFtNs2ka5fXjeivQ4LroWlx-6zATi3TNgNq55w.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/instrumentserif/v4/jizBRFtNs2ka5fXjeivQ4LroWlx-6zMTiw.ttf" + }, + { + "family": "Inter", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuLyeMZhrib2Bg-4.ttf", + "200": "https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuDyfMZhrib2Bg-4.ttf", + "300": "https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuOKfMZhrib2Bg-4.ttf", + "regular": "https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuLyfMZhrib2Bg-4.ttf", + "500": "https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuI6fMZhrib2Bg-4.ttf", + "600": "https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuGKYMZhrib2Bg-4.ttf", + "700": "https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuFuYMZhrib2Bg-4.ttf", + "800": "https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuDyYMZhrib2Bg-4.ttf", + "900": "https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuBWYMZhrib2Bg-4.ttf", + "100italic": "https://fonts.gstatic.com/s/inter/v18/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTc2dphjZ-Ek-7MeA.ttf", + "200italic": "https://fonts.gstatic.com/s/inter/v18/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTcWdthjZ-Ek-7MeA.ttf", + "300italic": "https://fonts.gstatic.com/s/inter/v18/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTch9thjZ-Ek-7MeA.ttf", + "italic": "https://fonts.gstatic.com/s/inter/v18/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTc2dthjZ-Ek-7MeA.ttf", + "500italic": "https://fonts.gstatic.com/s/inter/v18/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTc69thjZ-Ek-7MeA.ttf", + "600italic": "https://fonts.gstatic.com/s/inter/v18/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTcB9xhjZ-Ek-7MeA.ttf", + "700italic": "https://fonts.gstatic.com/s/inter/v18/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTcPtxhjZ-Ek-7MeA.ttf", + "800italic": "https://fonts.gstatic.com/s/inter/v18/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTcWdxhjZ-Ek-7MeA.ttf", + "900italic": "https://fonts.gstatic.com/s/inter/v18/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTccNxhjZ-Ek-7MeA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuLyfAZlhjQ.ttf" + }, + { + "family": "Inter Tight", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjDw6qXCRToK8EPg.ttf", + "200": "https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjjw-qXCRToK8EPg.ttf", + "300": "https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjUQ-qXCRToK8EPg.ttf", + "regular": "https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjDw-qXCRToK8EPg.ttf", + "500": "https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjPQ-qXCRToK8EPg.ttf", + "600": "https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mj0QiqXCRToK8EPg.ttf", + "700": "https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mj6AiqXCRToK8EPg.ttf", + "800": "https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjjwiqXCRToK8EPg.ttf", + "900": "https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjpgiqXCRToK8EPg.ttf", + "100italic": "https://fonts.gstatic.com/s/intertight/v7/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xCHi5XgqoUPvi5.ttf", + "200italic": "https://fonts.gstatic.com/s/intertight/v7/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zCHy5XgqoUPvi5.ttf", + "300italic": "https://fonts.gstatic.com/s/intertight/v7/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0wcHy5XgqoUPvi5.ttf", + "italic": "https://fonts.gstatic.com/s/intertight/v7/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xCHy5XgqoUPvi5.ttf", + "500italic": "https://fonts.gstatic.com/s/intertight/v7/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0xwHy5XgqoUPvi5.ttf", + "600italic": "https://fonts.gstatic.com/s/intertight/v7/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0ycGC5XgqoUPvi5.ttf", + "700italic": "https://fonts.gstatic.com/s/intertight/v7/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0ylGC5XgqoUPvi5.ttf", + "800italic": "https://fonts.gstatic.com/s/intertight/v7/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zCGC5XgqoUPvi5.ttf", + "900italic": "https://fonts.gstatic.com/s/intertight/v7/NGShv5HMAFg6IuGlBNMjxLsC66ZMtb8hyW62x0zrGC5XgqoUPvi5.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mjDw-aXS5X.ttf" + }, + { + "family": "Irish Grover", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/irishgrover/v23/buExpoi6YtLz2QW7LA4flVgf-P5Oaiw4cw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/irishgrover/v23/buExpoi6YtLz2QW7LA4flVgv-fRK.ttf" + }, + { + "family": "Island Moments", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/islandmoments/v6/NaPBcZfVGvBdxIt7Ar0qzkXJF-TGIohbZ6SY.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/islandmoments/v6/NaPBcZfVGvBdxIt7Ar0qzkXJF9THKIw.ttf" + }, + { + "family": "Istok Web", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/istokweb/v24/3qTvojGmgSyUukBzKslZAWF-9kIIaQ.ttf", + "italic": "https://fonts.gstatic.com/s/istokweb/v24/3qTpojGmgSyUukBzKslpA2t61EcYaQ7F.ttf", + "700": "https://fonts.gstatic.com/s/istokweb/v24/3qTqojGmgSyUukBzKslhvU5a_mkUYBfcMw.ttf", + "700italic": "https://fonts.gstatic.com/s/istokweb/v24/3qT0ojGmgSyUukBzKslpA1PG-2MQQhLMMygN.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/istokweb/v24/3qTvojGmgSyUukBzKslpAGt6.ttf" + }, + { + "family": "Italiana", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/italiana/v20/QldNNTtLsx4E__B0XTmRY31Wx7Vv.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/italiana/v20/QldNNTtLsx4E__B0XQmQaXk.ttf" + }, + { + "family": "Italianno", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/italianno/v17/dg4n_p3sv6gCJkwzT6Rnj5YpQwM-gg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/italianno/v17/dg4n_p3sv6gCJkwzT6RXjpwt.ttf" + }, + { + "family": "Itim", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/itim/v14/0nknC9ziJOYewARKkc7ZdwU.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/itim/v14/0nknC9ziJOYe8AVAlQ.ttf" + }, + { + "family": "Jacquard 12", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jacquard12/v6/vm8ydRLuXETEweL79J4rGc3JUnr34c9-.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jacquard12/v6/vm8ydRLuXETEweL79J4rGf3IWH4.ttf" + }, + { + "family": "Jacquard 12 Charted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jacquard12charted/v2/i7dWIE97bzCOB9Q_Up6PQmYfKDPIb2HwT3StZ9jetKY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jacquard12charted/v2/i7dWIE97bzCOB9Q_Up6PQmYfKDPIb2Hwf3WnYw.ttf" + }, + { + "family": "Jacquard 24", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jacquard24/v2/jVyO7nf_B2zO5jVpUGU8lgQEdchf9xXp.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jacquard24/v2/jVyO7nf_B2zO5jVpUGU8ljQFf8w.ttf" + }, + { + "family": "Jacquard 24 Charted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jacquard24charted/v3/mtGm4-dNK6HaudrE9VVKhENTsEXEYish0iRrMYJ_K-4.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jacquard24charted/v3/mtGm4-dNK6HaudrE9VVKhENTsEXEYish4iVhNQ.ttf" + }, + { + "family": "Jacquarda Bastarda 9", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jacquardabastarda9/v4/f0Xp0fWr_8t6WFtKQJfOhaC0hcZ1HYAMAbwD1TB_JHHY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jacquardabastarda9/v4/f0Xp0fWr_8t6WFtKQJfOhaC0hcZ1HYAMAYwC3zQ.ttf" + }, + { + "family": "Jacquarda Bastarda 9 Charted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jacquardabastarda9charted/v2/Yq6D-KaMUyfq4qLgx19A_ocp43FeLd9m0vDxm-yf8JPuf0cPaL8pmQg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jacquardabastarda9charted/v2/Yq6D-KaMUyfq4qLgx19A_ocp43FeLd9m0vDxm-yf8JPuT0YFbA.ttf" + }, + { + "family": "Jacques Francois", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jacquesfrancois/v24/ZXu9e04ZvKeOOHIe1TMahbcIU2cgmcPqoeRWfbs.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jacquesfrancois/v24/ZXu9e04ZvKeOOHIe1TMahbcIU2cgqcLgpQ.ttf" + }, + { + "family": "Jacques Francois Shadow", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jacquesfrancoisshadow/v25/KR1FBtOz8PKTMk-kqdkLVrvR0ECFrB6Pin-2_q8VsHuV5ULS.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jacquesfrancoisshadow/v25/KR1FBtOz8PKTMk-kqdkLVrvR0ECFrB6Pin-2_p8Uun8.ttf" + }, + { + "family": "Jaini", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jaini/v1/fC1vPYJMbGHQzEmOK-ZSUHyt.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jaini/v1/fC1vPYJMbGHQzHmPIeI.ttf" + }, + { + "family": "Jaini Purva", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jainipurva/v1/CHynV-vdHVXwbWcUswbUGHoOHH4sj3lR.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jainipurva/v1/CHynV-vdHVXwbWcUswbUGEoPFno.ttf" + }, + { + "family": "Jaldi", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jaldi/v12/or3sQ67z0_CI30NUZpD_B6g8.ttf", + "700": "https://fonts.gstatic.com/s/jaldi/v12/or3hQ67z0_CI33voSbT3LLQ1niPn.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jaldi/v12/or3sQ67z0_CI33NVbJQ.ttf" + }, + { + "family": "Jaro", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jaro/v6/ea8DadQwV_r_Rv3-7zZMCGhQgVr1SlCsNP3VpQ_a.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jaro/v6/ea8DadQwV_r_Rv3-7zZMCGhQgVr1SmCtPvk.ttf" + }, + { + "family": "Jersey 10", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jersey10/v2/GftH7vZKsggXMf9n_J5X-JLgy1wtSw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jersey10/v2/GftH7vZKsggXMf9n_J5n-Zjk.ttf" + }, + { + "family": "Jersey 10 Charted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jersey10charted/v2/oY1E8fPFr6XiNWqEp90XSbwUGfF8SnedKmeBvEYs.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jersey10charted/v2/oY1E8fPFr6XiNWqEp90XSbwUGfF8SkecIGM.ttf" + }, + { + "family": "Jersey 15", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jersey15/v2/_6_9EDzuROGsUuk2TWjSYoohsCkvSQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jersey15/v2/_6_9EDzuROGsUuk2TWjiY4Al.ttf" + }, + { + "family": "Jersey 15 Charted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jersey15charted/v2/nuFjD-rCQIjoVp1Sva2ToCTudGbLeRv4r2024gxi.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jersey15charted/v2/nuFjD-rCQIjoVp1Sva2ToCTudGbLeSv5pWk.ttf" + }, + { + "family": "Jersey 20", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jersey20/v2/ZgNRjP1ON6jeW4D12z3crE_qP4mXuQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jersey20/v2/ZgNRjP1ON6jeW4D12z3srUXu.ttf" + }, + { + "family": "Jersey 20 Charted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jersey20charted/v2/JTUNjJMy9DKq5FzVaj9tpgYgvHqGn_Z1ji-rqnQ_.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jersey20charted/v2/JTUNjJMy9DKq5FzVaj9tpgYgvHqGn8Z0hCs.ttf" + }, + { + "family": "Jersey 25", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jersey25/v2/ll8-K2eeXj2tAs6F9BXIJ4AMng8ChA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jersey25/v2/ll8-K2eeXj2tAs6F9BX4JooI.ttf" + }, + { + "family": "Jersey 25 Charted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jersey25charted/v2/6NUM8EWHIhCWbxOqtLkv94Rlu6EkGv2uUGQW93Cg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jersey25charted/v2/6NUM8EWHIhCWbxOqtLkv94Rlu6EkGs2vWmA.ttf" + }, + { + "family": "JetBrains Mono", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yK1jPVmUsaaDhw.ttf", + "200": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8SKxjPVmUsaaDhw.ttf", + "300": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8lqxjPVmUsaaDhw.ttf", + "regular": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKxjPVmUsaaDhw.ttf", + "500": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8-qxjPVmUsaaDhw.ttf", + "600": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8FqtjPVmUsaaDhw.ttf", + "700": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8L6tjPVmUsaaDhw.ttf", + "800": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8SKtjPVmUsaaDhw.ttf", + "100italic": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-Lf1OQk6OThxPA.ttf", + "200italic": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO8LflOQk6OThxPA.ttf", + "300italic": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO_VflOQk6OThxPA.ttf", + "italic": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-LflOQk6OThxPA.ttf", + "500italic": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO-5flOQk6OThxPA.ttf", + "600italic": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO9VeVOQk6OThxPA.ttf", + "700italic": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO9seVOQk6OThxPA.ttf", + "800italic": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDba2o-flEEny0FZhsfKu5WU4xD-IQ-PuZJJXxfpAO8LeVOQk6OThxPA.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jetbrainsmono/v20/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKxTPFOQ.ttf" + }, + { + "family": "Jim Nightshade", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jimnightshade/v20/PlIkFlu9Pb08Q8HLM1PxmB0g-OS4V3qKaMxD.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jimnightshade/v20/PlIkFlu9Pb08Q8HLM1PxmB0g-NS5XX4.ttf" + }, + { + "family": "Joan", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/joan/v11/ZXupe1oZsqWRbRdH8X1p_Ng.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/joan/v11/ZXupe1oZsqWRXRZN9Q.ttf" + }, + { + "family": "Jockey One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jockeyone/v21/HTxpL2g2KjCFj4x8WI6ArIb7HYOk4xc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jockeyone/v21/HTxpL2g2KjCFj4x8WI6AnIfxGQ.ttf" + }, + { + "family": "Jolly Lodger", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jollylodger/v20/BXRsvFTAh_bGkA1uQ48dlB3VWerT3ZyuqA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jollylodger/v20/BXRsvFTAh_bGkA1uQ48dlB3lWODX.ttf" + }, + { + "family": "Jomhuria", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jomhuria/v20/Dxxp8j-TMXf-llKur2b1MOGbC3Dh.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jomhuria/v20/Dxxp8j-TMXf-llKur1b0OuU.ttf" + }, + { + "family": "Jomolhari", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "tibetan" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jomolhari/v18/EvONzA1M1Iw_CBd2hsQCF1IZKq5INg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jomolhari/v18/EvONzA1M1Iw_CBd2hsQyFlgd.ttf" + }, + { + "family": "Josefin Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v32", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjRXMFrLgTsQV0.ttf", + "200": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_LjQXMFrLgTsQV0.ttf", + "300": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_GbQXMFrLgTsQV0.ttf", + "regular": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjQXMFrLgTsQV0.ttf", + "500": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_ArQXMFrLgTsQV0.ttf", + "600": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_ObXXMFrLgTsQV0.ttf", + "700": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_N_XXMFrLgTsQV0.ttf", + "100italic": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTtINhKibpUV3MEQ.ttf", + "200italic": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTNIJhKibpUV3MEQ.ttf", + "300italic": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCT6oJhKibpUV3MEQ.ttf", + "italic": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTtIJhKibpUV3MEQ.ttf", + "500italic": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCThoJhKibpUV3MEQ.ttf", + "600italic": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTaoVhKibpUV3MEQ.ttf", + "700italic": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3JZQNVED7rKGKxtqIqX5EUCGZ2dIn0FyA96fCTU4VhKibpUV3MEQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/josefinsans/v32/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjQbMBhKg.ttf" + }, + { + "family": "Josefin Slab", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/josefinslab/v26/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W71mtd3k3K6CcEyI.ttf", + "200": "https://fonts.gstatic.com/s/josefinslab/v26/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W79msd3k3K6CcEyI.ttf", + "300": "https://fonts.gstatic.com/s/josefinslab/v26/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W7wesd3k3K6CcEyI.ttf", + "regular": "https://fonts.gstatic.com/s/josefinslab/v26/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W71msd3k3K6CcEyI.ttf", + "500": "https://fonts.gstatic.com/s/josefinslab/v26/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W72usd3k3K6CcEyI.ttf", + "600": "https://fonts.gstatic.com/s/josefinslab/v26/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W74erd3k3K6CcEyI.ttf", + "700": "https://fonts.gstatic.com/s/josefinslab/v26/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W776rd3k3K6CcEyI.ttf", + "100italic": "https://fonts.gstatic.com/s/josefinslab/v26/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvnzs9L4KZAyK43w.ttf", + "200italic": "https://fonts.gstatic.com/s/josefinslab/v26/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvHzo9L4KZAyK43w.ttf", + "300italic": "https://fonts.gstatic.com/s/josefinslab/v26/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvwTo9L4KZAyK43w.ttf", + "italic": "https://fonts.gstatic.com/s/josefinslab/v26/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvnzo9L4KZAyK43w.ttf", + "500italic": "https://fonts.gstatic.com/s/josefinslab/v26/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvrTo9L4KZAyK43w.ttf", + "600italic": "https://fonts.gstatic.com/s/josefinslab/v26/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHvQT09L4KZAyK43w.ttf", + "700italic": "https://fonts.gstatic.com/s/josefinslab/v26/lW-qwjwOK3Ps5GSJlNNkMalnrxShJj4wo7AR-pHveD09L4KZAyK43w.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/josefinslab/v26/lW-swjwOK3Ps5GSJlNNkMalNpiZe_ldbOR4W71msR3g9Lw.ttf" + }, + { + "family": "Jost", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/jost/v18/92zPtBhPNqw79Ij1E865zBUv7myjJAVGPokMmuHL.ttf", + "200": "https://fonts.gstatic.com/s/jost/v18/92zPtBhPNqw79Ij1E865zBUv7mwjJQVGPokMmuHL.ttf", + "300": "https://fonts.gstatic.com/s/jost/v18/92zPtBhPNqw79Ij1E865zBUv7mz9JQVGPokMmuHL.ttf", + "regular": "https://fonts.gstatic.com/s/jost/v18/92zPtBhPNqw79Ij1E865zBUv7myjJQVGPokMmuHL.ttf", + "500": "https://fonts.gstatic.com/s/jost/v18/92zPtBhPNqw79Ij1E865zBUv7myRJQVGPokMmuHL.ttf", + "600": "https://fonts.gstatic.com/s/jost/v18/92zPtBhPNqw79Ij1E865zBUv7mx9IgVGPokMmuHL.ttf", + "700": "https://fonts.gstatic.com/s/jost/v18/92zPtBhPNqw79Ij1E865zBUv7mxEIgVGPokMmuHL.ttf", + "800": "https://fonts.gstatic.com/s/jost/v18/92zPtBhPNqw79Ij1E865zBUv7mwjIgVGPokMmuHL.ttf", + "900": "https://fonts.gstatic.com/s/jost/v18/92zPtBhPNqw79Ij1E865zBUv7mwKIgVGPokMmuHL.ttf", + "100italic": "https://fonts.gstatic.com/s/jost/v18/92zJtBhPNqw73oHH7BbQp4-B6XlrZu0ENI0un_HLMEo.ttf", + "200italic": "https://fonts.gstatic.com/s/jost/v18/92zJtBhPNqw73oHH7BbQp4-B6XlrZm0FNI0un_HLMEo.ttf", + "300italic": "https://fonts.gstatic.com/s/jost/v18/92zJtBhPNqw73oHH7BbQp4-B6XlrZrMFNI0un_HLMEo.ttf", + "italic": "https://fonts.gstatic.com/s/jost/v18/92zJtBhPNqw73oHH7BbQp4-B6XlrZu0FNI0un_HLMEo.ttf", + "500italic": "https://fonts.gstatic.com/s/jost/v18/92zJtBhPNqw73oHH7BbQp4-B6XlrZt8FNI0un_HLMEo.ttf", + "600italic": "https://fonts.gstatic.com/s/jost/v18/92zJtBhPNqw73oHH7BbQp4-B6XlrZjMCNI0un_HLMEo.ttf", + "700italic": "https://fonts.gstatic.com/s/jost/v18/92zJtBhPNqw73oHH7BbQp4-B6XlrZgoCNI0un_HLMEo.ttf", + "800italic": "https://fonts.gstatic.com/s/jost/v18/92zJtBhPNqw73oHH7BbQp4-B6XlrZm0CNI0un_HLMEo.ttf", + "900italic": "https://fonts.gstatic.com/s/jost/v18/92zJtBhPNqw73oHH7BbQp4-B6XlrZkQCNI0un_HLMEo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jost/v18/92zPtBhPNqw79Ij1E865zBUv7myjJTVHNI0.ttf" + }, + { + "family": "Joti One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/jotione/v26/Z9XVDmdJQAmWm9TwaYTe4u2El6GC.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jotione/v26/Z9XVDmdJQAmWm9TwabTf6Ok.ttf" + }, + { + "family": "Jua", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v16", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/jua/v16/co3KmW9ljjAjc-DZCsKgsg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jua/v16/co3KmW9ljjATcurd.ttf" + }, + { + "family": "Judson", + "variants": [ + "regular", + "italic", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/judson/v19/FeVRS0Fbvbc14VxRD7N01bV7kg.ttf", + "italic": "https://fonts.gstatic.com/s/judson/v19/FeVTS0Fbvbc14VxhDblw97BrknZf.ttf", + "700": "https://fonts.gstatic.com/s/judson/v19/FeVSS0Fbvbc14Vxps5xQ3Z5nm29Gww.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/judson/v19/FeVRS0Fbvbc14VxhDrlw.ttf" + }, + { + "family": "Julee", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/julee/v25/TuGfUVB3RpZPQ6ZLodgzydtk.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/julee/v25/TuGfUVB3RpZPQ5ZKq9w.ttf" + }, + { + "family": "Julius Sans One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/juliussansone/v18/1Pt2g8TAX_SGgBGUi0tGOYEga5W-xXEW6aGXHw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/juliussansone/v18/1Pt2g8TAX_SGgBGUi0tGOYEga5WOxHsS.ttf" + }, + { + "family": "Junge", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/junge/v24/gokgH670Gl1lUqAdvhB7SnKm.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/junge/v24/gokgH670Gl1lUpActBQ.ttf" + }, + { + "family": "Jura", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "kayah-li", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v31", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/jura/v31/z7NOdRfiaC4Vd8hhoPzfb5vBTP0D7auhTfmrH_rt.ttf", + "regular": "https://fonts.gstatic.com/s/jura/v31/z7NOdRfiaC4Vd8hhoPzfb5vBTP1d7auhTfmrH_rt.ttf", + "500": "https://fonts.gstatic.com/s/jura/v31/z7NOdRfiaC4Vd8hhoPzfb5vBTP1v7auhTfmrH_rt.ttf", + "600": "https://fonts.gstatic.com/s/jura/v31/z7NOdRfiaC4Vd8hhoPzfb5vBTP2D6quhTfmrH_rt.ttf", + "700": "https://fonts.gstatic.com/s/jura/v31/z7NOdRfiaC4Vd8hhoPzfb5vBTP266quhTfmrH_rt.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/jura/v31/z7NOdRfiaC4Vd8hhoPzfb5vBTP1d7ZugR_0.ttf" + }, + { + "family": "Just Another Hand", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/justanotherhand/v19/845CNN4-AJyIGvIou-6yJKyptyOpOcr_BmmlS5aw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/justanotherhand/v19/845CNN4-AJyIGvIou-6yJKyptyOpOfr-DG0.ttf" + }, + { + "family": "Just Me Again Down Here", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/justmeagaindownhere/v24/MwQmbgXtz-Wc6RUEGNMc0QpRrfUh2hSdBBMoAuwHvqDwc_fg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/justmeagaindownhere/v24/MwQmbgXtz-Wc6RUEGNMc0QpRrfUh2hSdBBMoAtwGtKQ.ttf" + }, + { + "family": "K2D", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/k2d/v11/J7aRnpF2V0ErE6UpvrIw74NL.ttf", + "100italic": "https://fonts.gstatic.com/s/k2d/v11/J7afnpF2V0EjdZ1NtLYS6pNLAjk.ttf", + "200": "https://fonts.gstatic.com/s/k2d/v11/J7aenpF2V0Erv4QJlJw85ppSGw.ttf", + "200italic": "https://fonts.gstatic.com/s/k2d/v11/J7acnpF2V0EjdZ3hlZY4xJ9CGyAa.ttf", + "300": "https://fonts.gstatic.com/s/k2d/v11/J7aenpF2V0Er24cJlJw85ppSGw.ttf", + "300italic": "https://fonts.gstatic.com/s/k2d/v11/J7acnpF2V0EjdZ2FlpY4xJ9CGyAa.ttf", + "regular": "https://fonts.gstatic.com/s/k2d/v11/J7aTnpF2V0ETd68tnLcg7w.ttf", + "italic": "https://fonts.gstatic.com/s/k2d/v11/J7aRnpF2V0EjdaUpvrIw74NL.ttf", + "500": "https://fonts.gstatic.com/s/k2d/v11/J7aenpF2V0Erg4YJlJw85ppSGw.ttf", + "500italic": "https://fonts.gstatic.com/s/k2d/v11/J7acnpF2V0EjdZ3dl5Y4xJ9CGyAa.ttf", + "600": "https://fonts.gstatic.com/s/k2d/v11/J7aenpF2V0Err4EJlJw85ppSGw.ttf", + "600italic": "https://fonts.gstatic.com/s/k2d/v11/J7acnpF2V0EjdZ3xkJY4xJ9CGyAa.ttf", + "700": "https://fonts.gstatic.com/s/k2d/v11/J7aenpF2V0Ery4AJlJw85ppSGw.ttf", + "700italic": "https://fonts.gstatic.com/s/k2d/v11/J7acnpF2V0EjdZ2VkZY4xJ9CGyAa.ttf", + "800": "https://fonts.gstatic.com/s/k2d/v11/J7aenpF2V0Er14MJlJw85ppSGw.ttf", + "800italic": "https://fonts.gstatic.com/s/k2d/v11/J7acnpF2V0EjdZ2JkpY4xJ9CGyAa.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/k2d/v11/J7aTnpF2V0EjdqUp.ttf" + }, + { + "family": "Kablammo", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kablammo/v1/bWtm7fHPcgrhC-J3lcXhcQTY5Ixs6Au9YgCjjx0Rf4YDKw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kablammo/v1/bWtm7fHPcgrhC-J3lcXhcQTY5Ixs6Au9YgCTjhcV.ttf" + }, + { + "family": "Kadwa", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kadwa/v10/rnCm-x5V0g7iphTHRcc2s2XH.ttf", + "700": "https://fonts.gstatic.com/s/kadwa/v10/rnCr-x5V0g7ipix7auM-mHnOSOuk.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kadwa/v10/rnCm-x5V0g7ipiTGT8M.ttf" + }, + { + "family": "Kaisei Decol", + "variants": [ + "regular", + "500", + "700" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kaiseidecol/v9/bMrwmSqP45sidWf3QmfFW6iyW1EP22OjoA.ttf", + "500": "https://fonts.gstatic.com/s/kaiseidecol/v9/bMrvmSqP45sidWf3QmfFW6iKr3gr00i_qb57kA.ttf", + "700": "https://fonts.gstatic.com/s/kaiseidecol/v9/bMrvmSqP45sidWf3QmfFW6iK534r00i_qb57kA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kaiseidecol/v9/bMrwmSqP45sidWf3QmfFW6iCWlsL.ttf" + }, + { + "family": "Kaisei HarunoUmi", + "variants": [ + "regular", + "500", + "700" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kaiseiharunoumi/v9/HI_RiZQSLqBQoAHhK_C6N_nzy_jcGsv5sM8u3mk.ttf", + "500": "https://fonts.gstatic.com/s/kaiseiharunoumi/v9/HI_WiZQSLqBQoAHhK_C6N_nzy_jcIj_QlMcFwmC9FAU.ttf", + "700": "https://fonts.gstatic.com/s/kaiseiharunoumi/v9/HI_WiZQSLqBQoAHhK_C6N_nzy_jcInfWlMcFwmC9FAU.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kaiseiharunoumi/v9/HI_RiZQSLqBQoAHhK_C6N_nzy_jcKsrztA.ttf" + }, + { + "family": "Kaisei Opti", + "variants": [ + "regular", + "500", + "700" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kaiseiopti/v9/QldKNThJphYb8_g6c2nlIFle7KlmxuHx.ttf", + "500": "https://fonts.gstatic.com/s/kaiseiopti/v9/QldXNThJphYb8_g6c2nlIGGqxY1u7f34DYwn.ttf", + "700": "https://fonts.gstatic.com/s/kaiseiopti/v9/QldXNThJphYb8_g6c2nlIGHiw41u7f34DYwn.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kaiseiopti/v9/QldKNThJphYb8_g6c2nlIGlf5q0.ttf" + }, + { + "family": "Kaisei Tokumin", + "variants": [ + "regular", + "500", + "700", + "800" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kaiseitokumin/v9/Gg8sN5wdZg7xCwuMsylww2ZiQkJf1l0pj946.ttf", + "500": "https://fonts.gstatic.com/s/kaiseitokumin/v9/Gg8vN5wdZg7xCwuMsylww2ZiQnqr_3khpMIzeI6v.ttf", + "700": "https://fonts.gstatic.com/s/kaiseitokumin/v9/Gg8vN5wdZg7xCwuMsylww2ZiQnrj-XkhpMIzeI6v.ttf", + "800": "https://fonts.gstatic.com/s/kaiseitokumin/v9/Gg8vN5wdZg7xCwuMsylww2ZiQnr_-nkhpMIzeI6v.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kaiseitokumin/v9/Gg8sN5wdZg7xCwuMsylww2ZiQnJe3Fk.ttf" + }, + { + "family": "Kalam", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/kalam/v16/YA9Qr0Wd4kDdMtD6GgLLmCUItqGt.ttf", + "regular": "https://fonts.gstatic.com/s/kalam/v16/YA9dr0Wd4kDdMuhWMibDszkB.ttf", + "700": "https://fonts.gstatic.com/s/kalam/v16/YA9Qr0Wd4kDdMtDqHQLLmCUItqGt.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kalam/v16/YA9dr0Wd4kDdMthXOCI.ttf" + }, + { + "family": "Kalnia", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "math" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/kalnia/v2/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW9il2xRGNcykIZc.ttf", + "200": "https://fonts.gstatic.com/s/kalnia/v2/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW_ilmxRGNcykIZc.ttf", + "300": "https://fonts.gstatic.com/s/kalnia/v2/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW88lmxRGNcykIZc.ttf", + "regular": "https://fonts.gstatic.com/s/kalnia/v2/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW9ilmxRGNcykIZc.ttf", + "500": "https://fonts.gstatic.com/s/kalnia/v2/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW9QlmxRGNcykIZc.ttf", + "600": "https://fonts.gstatic.com/s/kalnia/v2/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW-8kWxRGNcykIZc.ttf", + "700": "https://fonts.gstatic.com/s/kalnia/v2/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW-FkWxRGNcykIZc.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kalnia/v2/11hqGpPCwUbbYwZZP0RBuDY62BQZhjvOytM_sLzi-TFWAW9illxQEtM.ttf" + }, + { + "family": "Kalnia Glaze", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/kalniaglaze/v1/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYdL63nZKfhpVTvN.ttf", + "200": "https://fonts.gstatic.com/s/kalniaglaze/v1/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYfL6nnZKfhpVTvN.ttf", + "300": "https://fonts.gstatic.com/s/kalniaglaze/v1/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYcV6nnZKfhpVTvN.ttf", + "regular": "https://fonts.gstatic.com/s/kalniaglaze/v1/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYdL6nnZKfhpVTvN.ttf", + "500": "https://fonts.gstatic.com/s/kalniaglaze/v1/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYd56nnZKfhpVTvN.ttf", + "600": "https://fonts.gstatic.com/s/kalniaglaze/v1/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYeV7XnZKfhpVTvN.ttf", + "700": "https://fonts.gstatic.com/s/kalniaglaze/v1/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYes7XnZKfhpVTvN.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kalniaglaze/v1/wlpQgwHCBUNjrGrfu-hwowN1YyC-42Lu26VHf2LtOkAod0wTxm2tFYdL6knYI_w.ttf", + "colorCapabilities": [ + "COLRv1" + ] + }, + { + "family": "Kameron", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kameron/v16/vm8pdR7vXErQxuznqrUS3z1Uw3nq4Ne3cbcbvZPxCDLR.ttf", + "500": "https://fonts.gstatic.com/s/kameron/v16/vm8pdR7vXErQxuznqrUS3z1Uw3nq4NeFcbcbvZPxCDLR.ttf", + "600": "https://fonts.gstatic.com/s/kameron/v16/vm8pdR7vXErQxuznqrUS3z1Uw3nq4NdpdrcbvZPxCDLR.ttf", + "700": "https://fonts.gstatic.com/s/kameron/v16/vm8pdR7vXErQxuznqrUS3z1Uw3nq4NdQdrcbvZPxCDLR.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kameron/v16/vm8pdR7vXErQxuznqrUS3z1Uw3nq4Ne3cYcat5c.ttf" + }, + { + "family": "Kanit", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/kanit/v15/nKKX-Go6G5tXcr72GwWKcaxALFs.ttf", + "100italic": "https://fonts.gstatic.com/s/kanit/v15/nKKV-Go6G5tXcraQI2GAdY5FPFtrGw.ttf", + "200": "https://fonts.gstatic.com/s/kanit/v15/nKKU-Go6G5tXcr5aOiWgX6BJNUJy.ttf", + "200italic": "https://fonts.gstatic.com/s/kanit/v15/nKKS-Go6G5tXcraQI82hVaRrMFJyAu4.ttf", + "300": "https://fonts.gstatic.com/s/kanit/v15/nKKU-Go6G5tXcr4-OSWgX6BJNUJy.ttf", + "300italic": "https://fonts.gstatic.com/s/kanit/v15/nKKS-Go6G5tXcraQI6miVaRrMFJyAu4.ttf", + "regular": "https://fonts.gstatic.com/s/kanit/v15/nKKZ-Go6G5tXcoaSEQGodLxA.ttf", + "italic": "https://fonts.gstatic.com/s/kanit/v15/nKKX-Go6G5tXcraQGwWKcaxALFs.ttf", + "500": "https://fonts.gstatic.com/s/kanit/v15/nKKU-Go6G5tXcr5mOCWgX6BJNUJy.ttf", + "500italic": "https://fonts.gstatic.com/s/kanit/v15/nKKS-Go6G5tXcraQI_GjVaRrMFJyAu4.ttf", + "600": "https://fonts.gstatic.com/s/kanit/v15/nKKU-Go6G5tXcr5KPyWgX6BJNUJy.ttf", + "600italic": "https://fonts.gstatic.com/s/kanit/v15/nKKS-Go6G5tXcraQI92kVaRrMFJyAu4.ttf", + "700": "https://fonts.gstatic.com/s/kanit/v15/nKKU-Go6G5tXcr4uPiWgX6BJNUJy.ttf", + "700italic": "https://fonts.gstatic.com/s/kanit/v15/nKKS-Go6G5tXcraQI7mlVaRrMFJyAu4.ttf", + "800": "https://fonts.gstatic.com/s/kanit/v15/nKKU-Go6G5tXcr4yPSWgX6BJNUJy.ttf", + "800italic": "https://fonts.gstatic.com/s/kanit/v15/nKKS-Go6G5tXcraQI6WmVaRrMFJyAu4.ttf", + "900": "https://fonts.gstatic.com/s/kanit/v15/nKKU-Go6G5tXcr4WPCWgX6BJNUJy.ttf", + "900italic": "https://fonts.gstatic.com/s/kanit/v15/nKKS-Go6G5tXcraQI4GnVaRrMFJyAu4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kanit/v15/nKKZ-Go6G5tXcraTGwU.ttf" + }, + { + "family": "Kantumruy Pro", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "khmer", + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1urUs0M34dR6dW.ttf", + "200": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg3urEs0M34dR6dW.ttf", + "300": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg0wrEs0M34dR6dW.ttf", + "regular": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1urEs0M34dR6dW.ttf", + "500": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1crEs0M34dR6dW.ttf", + "600": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg2wq0s0M34dR6dW.ttf", + "700": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg2Jq0s0M34dR6dW.ttf", + "100italic": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim76N2OXo_QrdWlcU.ttf", + "200italic": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim7yN3OXo_QrdWlcU.ttf", + "300italic": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim7_13OXo_QrdWlcU.ttf", + "italic": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim76N3OXo_QrdWlcU.ttf", + "500italic": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim75F3OXo_QrdWlcU.ttf", + "600italic": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim731wOXo_QrdWlcU.ttf", + "700italic": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2RY5aECkp34vEBSPFOmJxwlEbbdY1VU_nxzRim70RwOXo_QrdWlcU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kantumruypro/v8/1q2TY5aECkp34vEBSPFOmJxwvk_pilU8OGNfyg1urHs1OXo.ttf" + }, + { + "family": "Karantina", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/karantina/v11/buExpo24ccnh31GVMABxXCgf-P5Oaiw4cw.ttf", + "regular": "https://fonts.gstatic.com/s/karantina/v11/buE0po24ccnh31GVMABJ8AA78NVSYw.ttf", + "700": "https://fonts.gstatic.com/s/karantina/v11/buExpo24ccnh31GVMABxTC8f-P5Oaiw4cw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/karantina/v11/buE0po24ccnh31GVMAB58Qo_.ttf" + }, + { + "family": "Karla", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v31", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/karla/v31/qkBIXvYC6trAT55ZBi1ueQVIjQTDeJqqFENLR7fHGw.ttf", + "300": "https://fonts.gstatic.com/s/karla/v31/qkBIXvYC6trAT55ZBi1ueQVIjQTDppqqFENLR7fHGw.ttf", + "regular": "https://fonts.gstatic.com/s/karla/v31/qkBIXvYC6trAT55ZBi1ueQVIjQTD-JqqFENLR7fHGw.ttf", + "500": "https://fonts.gstatic.com/s/karla/v31/qkBIXvYC6trAT55ZBi1ueQVIjQTDypqqFENLR7fHGw.ttf", + "600": "https://fonts.gstatic.com/s/karla/v31/qkBIXvYC6trAT55ZBi1ueQVIjQTDJp2qFENLR7fHGw.ttf", + "700": "https://fonts.gstatic.com/s/karla/v31/qkBIXvYC6trAT55ZBi1ueQVIjQTDH52qFENLR7fHGw.ttf", + "800": "https://fonts.gstatic.com/s/karla/v31/qkBIXvYC6trAT55ZBi1ueQVIjQTDeJ2qFENLR7fHGw.ttf", + "200italic": "https://fonts.gstatic.com/s/karla/v31/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNnCV0lPZbLXGxGR.ttf", + "300italic": "https://fonts.gstatic.com/s/karla/v31/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNkcV0lPZbLXGxGR.ttf", + "italic": "https://fonts.gstatic.com/s/karla/v31/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNlCV0lPZbLXGxGR.ttf", + "500italic": "https://fonts.gstatic.com/s/karla/v31/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNlwV0lPZbLXGxGR.ttf", + "600italic": "https://fonts.gstatic.com/s/karla/v31/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNmcUElPZbLXGxGR.ttf", + "700italic": "https://fonts.gstatic.com/s/karla/v31/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNmlUElPZbLXGxGR.ttf", + "800italic": "https://fonts.gstatic.com/s/karla/v31/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNnCUElPZbLXGxGR.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/karla/v31/qkBIXvYC6trAT55ZBi1ueQVIjQTD-JqaFUlP.ttf" + }, + { + "family": "Karma", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLjDY8Z_uqzGQC_-.ttf", + "regular": "https://fonts.gstatic.com/s/karma/v16/va9I4kzAzMZRGIBvS-J3kbDP.ttf", + "500": "https://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLibYsZ_uqzGQC_-.ttf", + "600": "https://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLi3ZcZ_uqzGQC_-.ttf", + "700": "https://fonts.gstatic.com/s/karma/v16/va9F4kzAzMZRGLjTZMZ_uqzGQC_-.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/karma/v16/va9I4kzAzMZRGLBuQeY.ttf" + }, + { + "family": "Katibeh", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/katibeh/v19/ZGjXol5MQJog4bxDaC1RVDNdGDs.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/katibeh/v19/ZGjXol5MQJog4bxDWCxbUA.ttf" + }, + { + "family": "Kaushan Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kaushanscript/v18/vm8vdRfvXFLG3OLnsO15WYS5DF7_ytN3M48a.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kaushanscript/v18/vm8vdRfvXFLG3OLnsO15WYS5DG7-wNc.ttf" + }, + { + "family": "Kavivanar", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kavivanar/v20/o-0IIpQgyXYSwhxP7_Jb4j5Ba_2c7A.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kavivanar/v20/o-0IIpQgyXYSwhxP7_Jr4zRF.ttf" + }, + { + "family": "Kavoon", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kavoon/v23/pxiFyp4_scRYhlU4NLr6f1pdEQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kavoon/v23/pxiFyp4_scRYhlUINbD-.ttf" + }, + { + "family": "Kay Pho Du", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "kayah-li", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kayphodu/v2/jizfREFPvGNOx-jhPwHR4OmnLD0Z4zM.ttf", + "500": "https://fonts.gstatic.com/s/kayphodu/v2/jizcREFPvGNOx-jhPwHR2B2OCDUy_zoyk18.ttf", + "600": "https://fonts.gstatic.com/s/kayphodu/v2/jizcREFPvGNOx-jhPwHR2DGJCDUy_zoyk18.ttf", + "700": "https://fonts.gstatic.com/s/kayphodu/v2/jizcREFPvGNOx-jhPwHR2FWICDUy_zoyk18.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kayphodu/v2/jizfREFPvGNOx-jhPwHR0OitKA.ttf" + }, + { + "family": "Kdam Thmor Pro", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kdamthmorpro/v4/EJRPQgAzVdcI-Qdvt34jzurnGA7_j89I8ZWb.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kdamthmorpro/v4/EJRPQgAzVdcI-Qdvt34jzurnGD7-hcs.ttf" + }, + { + "family": "Keania One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/keaniaone/v24/zOL54pXJk65E8pXardnuycRuv-hHkOs.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/keaniaone/v24/zOL54pXJk65E8pXardnu-cVkuw.ttf" + }, + { + "family": "Kelly Slab", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kellyslab/v17/-W_7XJX0Rz3cxUnJC5t6TkMBf50kbiM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kellyslab/v17/-W_7XJX0Rz3cxUnJC5t6fkILew.ttf" + }, + { + "family": "Kenia", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kenia/v28/jizURE5PuHQH9qCONUGswfGM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kenia/v28/jizURE5PuHQH9pCPP0U.ttf" + }, + { + "family": "Khand", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bL5cFE3ZwaH__-C.ttf", + "regular": "https://fonts.gstatic.com/s/khand/v17/TwMA-IINQlQQ0YpVWHU_TBqO.ttf", + "500": "https://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bKhcVE3ZwaH__-C.ttf", + "600": "https://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bKNdlE3ZwaH__-C.ttf", + "700": "https://fonts.gstatic.com/s/khand/v17/TwMN-IINQlQQ0bLpd1E3ZwaH__-C.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/khand/v17/TwMA-IINQlQQ0bpUUnE.ttf" + }, + { + "family": "Khmer", + "variants": [ + "regular" + ], + "subsets": [ + "khmer" + ], + "version": "v29", + "lastModified": "2023-08-25", + "files": { + "regular": "https://fonts.gstatic.com/s/khmer/v29/MjQImit_vPPwpF-BpN2EeYmD.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/khmer/v29/MjQImit_vPPwpG-Artk.ttf" + }, + { + "family": "Khula", + "variants": [ + "300", + "regular", + "600", + "700", + "800" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-08-12", + "files": { + "300": "https://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G-ljCvUrC59XwXD.ttf", + "regular": "https://fonts.gstatic.com/s/khula/v12/OpNCnoEOns3V7FcJpA_chzJ0.ttf", + "600": "https://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G_RiivUrC59XwXD.ttf", + "700": "https://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G-1iyvUrC59XwXD.ttf", + "800": "https://fonts.gstatic.com/s/khula/v12/OpNPnoEOns3V7G-piCvUrC59XwXD.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/khula/v12/OpNCnoEOns3V7GcIrgs.ttf" + }, + { + "family": "Kings", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kings/v7/8AtnGsK4O5CYXU_Iq6GSPaHS.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kings/v7/8AtnGsK4O5CYXX_JoaU.ttf" + }, + { + "family": "Kirang Haerang", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v21", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/kiranghaerang/v21/E21-_dn_gvvIjhYON1lpIU4-bcqvWPaJq4no.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kiranghaerang/v21/E21-_dn_gvvIjhYON1lpIU4-bfquUvI.ttf" + }, + { + "family": "Kite One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kiteone/v22/70lQu7shLnA_E02vyq1b6HnGO4uA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kiteone/v22/70lQu7shLnA_E02vyp1a4n0.ttf" + }, + { + "family": "Kiwi Maru", + "variants": [ + "300", + "regular", + "500" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/kiwimaru/v15/R70djykGkuuDep-hRg6gNCi0Vxn9R5ShnA.ttf", + "regular": "https://fonts.gstatic.com/s/kiwimaru/v15/R70YjykGkuuDep-hRg6YmACQXzLhTg.ttf", + "500": "https://fonts.gstatic.com/s/kiwimaru/v15/R70djykGkuuDep-hRg6gbCm0Vxn9R5ShnA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kiwimaru/v15/R70YjykGkuuDep-hRg6omQqU.ttf" + }, + { + "family": "Klee One", + "variants": [ + "regular", + "600" + ], + "subsets": [ + "cyrillic", + "greek-ext", + "japanese", + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kleeone/v8/LDIxapCLNRc6A8oT4q4AOeekWPrP.ttf", + "600": "https://fonts.gstatic.com/s/kleeone/v8/LDI2apCLNRc6A8oT4pbYF8Osc-bGkqIw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kleeone/v8/LDIxapCLNRc6A8oT4p4BM-M.ttf" + }, + { + "family": "Knewave", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/knewave/v14/sykz-yx0lLcxQaSItSq9-trEvlQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/knewave/v14/sykz-yx0lLcxQaSIhSu3_g.ttf" + }, + { + "family": "KoHo", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPuE1WJ75JoKhHys.ttf", + "200italic": "https://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNisssJ_zIqCkDyvqZA.ttf", + "300": "https://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPoU2WJ75JoKhHys.ttf", + "300italic": "https://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNiss1JzzIqCkDyvqZA.ttf", + "regular": "https://fonts.gstatic.com/s/koho/v16/K2F-fZ5fmddNBikefJbSOos.ttf", + "italic": "https://fonts.gstatic.com/s/koho/v16/K2FwfZ5fmddNNisUeLTXKou4Bg.ttf", + "500": "https://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPt03WJ75JoKhHys.ttf", + "500italic": "https://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNissjJ3zIqCkDyvqZA.ttf", + "600": "https://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPvEwWJ75JoKhHys.ttf", + "600italic": "https://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNissoJrzIqCkDyvqZA.ttf", + "700": "https://fonts.gstatic.com/s/koho/v16/K2FxfZ5fmddNPpUxWJ75JoKhHys.ttf", + "700italic": "https://fonts.gstatic.com/s/koho/v16/K2FzfZ5fmddNNissxJvzIqCkDyvqZA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/koho/v16/K2F-fZ5fmddNNigUeA.ttf" + }, + { + "family": "Kodchasan", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeR1Cggeqo3eMeoA.ttf", + "200italic": "https://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUlIgOCs_-YOoIgN.ttf", + "300": "https://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeI1Oggeqo3eMeoA.ttf", + "300italic": "https://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUksg-Cs_-YOoIgN.ttf", + "regular": "https://fonts.gstatic.com/s/kodchasan/v17/1cXxaUPOAJv9sG4I-DJmj3uEicG01A.ttf", + "italic": "https://fonts.gstatic.com/s/kodchasan/v17/1cX3aUPOAJv9sG4I-DJWjXGAq8Sk1PoH.ttf", + "500": "https://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJee1Kggeqo3eMeoA.ttf", + "500italic": "https://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUl0guCs_-YOoIgN.ttf", + "600": "https://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeV1Wggeqo3eMeoA.ttf", + "600italic": "https://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUlYheCs_-YOoIgN.ttf", + "700": "https://fonts.gstatic.com/s/kodchasan/v17/1cX0aUPOAJv9sG4I-DJeM1Sggeqo3eMeoA.ttf", + "700italic": "https://fonts.gstatic.com/s/kodchasan/v17/1cXqaUPOAJv9sG4I-DJWjUk8hOCs_-YOoIgN.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kodchasan/v17/1cXxaUPOAJv9sG4I-DJWjnGA.ttf" + }, + { + "family": "Kode Mono", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kodemono/v2/A2BLn5pb0QgtVEPFnlYkkaoBgw4qv9odq5my9DqTaOW2A3k.ttf", + "500": "https://fonts.gstatic.com/s/kodemono/v2/A2BLn5pb0QgtVEPFnlYkkaoBgw4qv9odq6uy9DqTaOW2A3k.ttf", + "600": "https://fonts.gstatic.com/s/kodemono/v2/A2BLn5pb0QgtVEPFnlYkkaoBgw4qv9odq0e19DqTaOW2A3k.ttf", + "700": "https://fonts.gstatic.com/s/kodemono/v2/A2BLn5pb0QgtVEPFnlYkkaoBgw4qv9odq3619DqTaOW2A3k.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kodemono/v2/A2BLn5pb0QgtVEPFnlYkkaoBgw4qv9odq5myxDuZbA.ttf" + }, + { + "family": "Koh Santepheap", + "variants": [ + "100", + "300", + "regular", + "700", + "900" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v11", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/kohsantepheap/v11/gNMfW3p6SJbwyGj2rBZyeOrTjNuFHVyTtjNJUWU.ttf", + "300": "https://fonts.gstatic.com/s/kohsantepheap/v11/gNMeW3p6SJbwyGj2rBZyeOrTjNtNP3y5mD9ASHz5.ttf", + "regular": "https://fonts.gstatic.com/s/kohsantepheap/v11/gNMdW3p6SJbwyGj2rBZyeOrTjOPhF1ixsyNJ.ttf", + "700": "https://fonts.gstatic.com/s/kohsantepheap/v11/gNMeW3p6SJbwyGj2rBZyeOrTjNtdOHy5mD9ASHz5.ttf", + "900": "https://fonts.gstatic.com/s/kohsantepheap/v11/gNMeW3p6SJbwyGj2rBZyeOrTjNtlOny5mD9ASHz5.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kohsantepheap/v11/gNMdW3p6SJbwyGj2rBZyeOrTjNPgHVw.ttf" + }, + { + "family": "Kolker Brush", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kolkerbrush/v6/iJWDBXWRZjfKWdvmzwvvog3-7KJ6x8qNUQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kolkerbrush/v6/iJWDBXWRZjfKWdvmzwvvog3O7ah-.ttf" + }, + { + "family": "Konkhmer Sleokchher", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/konkhmersleokchher/v2/_Xmw-GE-rjmabA_M-aPOZOsCrUv825LFI3507E0d-W0.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/konkhmersleokchher/v2/_Xmw-GE-rjmabA_M-aPOZOsCrUv825LFE39-6A.ttf" + }, + { + "family": "Kosugi", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/kosugi/v15/pxiFyp4_v8FCjlI4NLr6f1pdEQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kosugi/v15/pxiFyp4_v8FCjlIINbD-.ttf" + }, + { + "family": "Kosugi Maru", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/kosugimaru/v14/0nksC9PgP_wGh21A2KeqGiTqivr9iBq_.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kosugimaru/v14/0nksC9PgP_wGh21A2KeqGhTrgP4.ttf" + }, + { + "family": "Kotta One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kottaone/v20/S6u_w41LXzPc_jlfNWqPHA3s5dwt7w.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kottaone/v20/S6u_w41LXzPc_jlfNWq_HQfo.ttf" + }, + { + "family": "Koulen", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v28", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/koulen/v28/AMOQz46as3KIBPeWgnA9kuYMUg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/koulen/v28/AMOQz46as3KIBPemg3o5.ttf" + }, + { + "family": "Kranky", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kranky/v28/hESw6XVgJzlPsFnMpheEZo_H_w.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kranky/v28/hESw6XVgJzlPsFn8px2A.ttf" + }, + { + "family": "Kreon", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v37", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvPNimejUfp2dWNg.ttf", + "regular": "https://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvYtimejUfp2dWNg.ttf", + "500": "https://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvUNimejUfp2dWNg.ttf", + "600": "https://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvvN-mejUfp2dWNg.ttf", + "700": "https://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2Dnvhd-mejUfp2dWNg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kreon/v37/t5t9IRIUKY-TFF_LW5lnMR3v2DnvYtiWez8b.ttf" + }, + { + "family": "Kristi", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kristi/v21/uK_y4ricdeU6zwdRCh0TMv6EXw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kristi/v21/uK_y4ricdeU6zwdhCxcX.ttf" + }, + { + "family": "Krona One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kronaone/v14/jAnEgHdjHcjgfIb1ZcUCMY-h3cWkWg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kronaone/v14/jAnEgHdjHcjgfIb1ZcUyMIWl.ttf" + }, + { + "family": "Krub", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZo47KLF4R6gWaf8.ttf", + "200italic": "https://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQiwLByQ4oTef_6gQ.ttf", + "300": "https://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZuo4KLF4R6gWaf8.ttf", + "300italic": "https://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQipLNyQ4oTef_6gQ.ttf", + "regular": "https://fonts.gstatic.com/s/krub/v9/sZlLdRyC6CRYXkYQDLlTW6E.ttf", + "italic": "https://fonts.gstatic.com/s/krub/v9/sZlFdRyC6CRYbkQaCJtWS6EPcA.ttf", + "500": "https://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZrI5KLF4R6gWaf8.ttf", + "500italic": "https://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQi_LJyQ4oTef_6gQ.ttf", + "600": "https://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZp4-KLF4R6gWaf8.ttf", + "600italic": "https://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQi0LVyQ4oTef_6gQ.ttf", + "700": "https://fonts.gstatic.com/s/krub/v9/sZlEdRyC6CRYZvo_KLF4R6gWaf8.ttf", + "700italic": "https://fonts.gstatic.com/s/krub/v9/sZlGdRyC6CRYbkQitLRyQ4oTef_6gQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/krub/v9/sZlLdRyC6CRYbkcaCA.ttf" + }, + { + "family": "Kufam", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kufam/v21/C8c-4cY7pG7w_oSJDszBXsKCcBH3lqk7qQCJHvIwYg.ttf", + "500": "https://fonts.gstatic.com/s/kufam/v21/C8c-4cY7pG7w_oSJDszBXsKCcBH3pKk7qQCJHvIwYg.ttf", + "600": "https://fonts.gstatic.com/s/kufam/v21/C8c-4cY7pG7w_oSJDszBXsKCcBH3SK47qQCJHvIwYg.ttf", + "700": "https://fonts.gstatic.com/s/kufam/v21/C8c-4cY7pG7w_oSJDszBXsKCcBH3ca47qQCJHvIwYg.ttf", + "800": "https://fonts.gstatic.com/s/kufam/v21/C8c-4cY7pG7w_oSJDszBXsKCcBH3Fq47qQCJHvIwYg.ttf", + "900": "https://fonts.gstatic.com/s/kufam/v21/C8c-4cY7pG7w_oSJDszBXsKCcBH3P647qQCJHvIwYg.ttf", + "italic": "https://fonts.gstatic.com/s/kufam/v21/C8c84cY7pG7w_q6APDMZN6kY3hbiXurT6gqNPPcgYp0i.ttf", + "500italic": "https://fonts.gstatic.com/s/kufam/v21/C8c84cY7pG7w_q6APDMZN6kY3hbiXurh6gqNPPcgYp0i.ttf", + "600italic": "https://fonts.gstatic.com/s/kufam/v21/C8c84cY7pG7w_q6APDMZN6kY3hbiXuoN7QqNPPcgYp0i.ttf", + "700italic": "https://fonts.gstatic.com/s/kufam/v21/C8c84cY7pG7w_q6APDMZN6kY3hbiXuo07QqNPPcgYp0i.ttf", + "800italic": "https://fonts.gstatic.com/s/kufam/v21/C8c84cY7pG7w_q6APDMZN6kY3hbiXupT7QqNPPcgYp0i.ttf", + "900italic": "https://fonts.gstatic.com/s/kufam/v21/C8c84cY7pG7w_q6APDMZN6kY3hbiXup67QqNPPcgYp0i.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kufam/v21/C8c-4cY7pG7w_oSJDszBXsKCcBH3lqkLqAqN.ttf" + }, + { + "family": "Kulim Park", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjJYNwa5aZbUvGjU.ttf", + "200italic": "https://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUKa9QYZcqCjVVUA.ttf", + "300": "https://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjPIOwa5aZbUvGjU.ttf", + "300italic": "https://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUTaxQYZcqCjVVUA.ttf", + "regular": "https://fonts.gstatic.com/s/kulimpark/v14/fdN79secq3hflz1Uu3IwtF4m5aZxebw.ttf", + "italic": "https://fonts.gstatic.com/s/kulimpark/v14/fdN59secq3hflz1Uu3IwhFws4YR0abw2Aw.ttf", + "600": "https://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjIYIwa5aZbUvGjU.ttf", + "600italic": "https://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUOapQYZcqCjVVUA.ttf", + "700": "https://fonts.gstatic.com/s/kulimpark/v14/fdN49secq3hflz1Uu3IwjOIJwa5aZbUvGjU.ttf", + "700italic": "https://fonts.gstatic.com/s/kulimpark/v14/fdNm9secq3hflz1Uu3IwhFwUXatQYZcqCjVVUA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kulimpark/v14/fdN79secq3hflz1Uu3IwhF8s4Q.ttf" + }, + { + "family": "Kumar One", + "variants": [ + "regular" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kumarone/v21/bMr1mS-P958wYi6YaGeGNO6WU3oT0g.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kumarone/v21/bMr1mS-P958wYi6YaGe2NeSS.ttf" + }, + { + "family": "Kumar One Outline", + "variants": [ + "regular" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kumaroneoutline/v17/Noao6VH62pyLP0fsrZ-v18wlUEcX9zDwRQu8EGKF.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kumaroneoutline/v17/Noao6VH62pyLP0fsrZ-v18wlUEcX9wDxTw8.ttf" + }, + { + "family": "Kumbh Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/kumbhsans/v22/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQkZcA8bTuUkqaLg.ttf", + "200": "https://fonts.gstatic.com/s/kumbhsans/v22/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQEZYA8bTuUkqaLg.ttf", + "300": "https://fonts.gstatic.com/s/kumbhsans/v22/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQz5YA8bTuUkqaLg.ttf", + "regular": "https://fonts.gstatic.com/s/kumbhsans/v22/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQkZYA8bTuUkqaLg.ttf", + "500": "https://fonts.gstatic.com/s/kumbhsans/v22/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQo5YA8bTuUkqaLg.ttf", + "600": "https://fonts.gstatic.com/s/kumbhsans/v22/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQT5EA8bTuUkqaLg.ttf", + "700": "https://fonts.gstatic.com/s/kumbhsans/v22/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQdpEA8bTuUkqaLg.ttf", + "800": "https://fonts.gstatic.com/s/kumbhsans/v22/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQEZEA8bTuUkqaLg.ttf", + "900": "https://fonts.gstatic.com/s/kumbhsans/v22/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQOJEA8bTuUkqaLg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kumbhsans/v22/c4mP1n92AsfhuCq6tVsaoIx1LQICk0boNoq0SjlDfnzKo-bF3mdQkZYw8L7q.ttf" + }, + { + "family": "Kurale", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "devanagari", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/kurale/v12/4iCs6KV9e9dXjho6eAT3v02QFg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/kurale/v12/4iCs6KV9e9dXjhoKeQ7z.ttf" + }, + { + "family": "LXGW WenKai Mono TC", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "chinese-hongkong", + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "lisu", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/lxgwwenkaimonotc/v5/pxiVyos4iPVgyWx9WtufHnsIf5nkaB0HssKqhvJljXmo2SA.ttf", + "regular": "https://fonts.gstatic.com/s/lxgwwenkaimonotc/v5/pxiYyos4iPVgyWx9WtufHnsIf5nkaB0Him6CovpOkXA.ttf", + "700": "https://fonts.gstatic.com/s/lxgwwenkaimonotc/v5/pxiVyos4iPVgyWx9WtufHnsIf5nkaB0HstKthvJljXmo2SA.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lxgwwenkaimonotc/v5/pxiYyos4iPVgyWx9WtufHnsIf5nkaB0Hum-Ipg.ttf" + }, + { + "family": "LXGW WenKai TC", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "chinese-hongkong", + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "lisu", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/lxgwwenkaitc/v5/w8gAH20td8wNsI3f40DmtXZb4_MmBfkpTClICyan.ttf", + "regular": "https://fonts.gstatic.com/s/lxgwwenkaitc/v5/w8gDH20td8wNsI3f40DmtXZb48uKLd0hZzVB.ttf", + "700": "https://fonts.gstatic.com/s/lxgwwenkaitc/v5/w8gAH20td8wNsI3f40DmtXZb4_M2AvkpTClICyan.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lxgwwenkaitc/v5/w8gDH20td8wNsI3f40DmtXZb4_uLJ9k.ttf" + }, + { + "family": "La Belle Aurore", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/labelleaurore/v20/RrQIbot8-mNYKnGNDkWlocovHeIIG-eFNVmULg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/labelleaurore/v20/RrQIbot8-mNYKnGNDkWlocovHeI4Gu2B.ttf" + }, + { + "family": "Labrada", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VTSgM4QPdUej17.ttf", + "200": "https://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9XTSwM4QPdUej17.ttf", + "300": "https://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9UNSwM4QPdUej17.ttf", + "regular": "https://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VTSwM4QPdUej17.ttf", + "500": "https://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VhSwM4QPdUej17.ttf", + "600": "https://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9WNTAM4QPdUej17.ttf", + "700": "https://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9W0TAM4QPdUej17.ttf", + "800": "https://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9XTTAM4QPdUej17.ttf", + "900": "https://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9X6TAM4QPdUej17.ttf", + "100italic": "https://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCOt6SvN2fy17-dE.ttf", + "200italic": "https://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCGt7SvN2fy17-dE.ttf", + "300italic": "https://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCLV7SvN2fy17-dE.ttf", + "italic": "https://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCOt7SvN2fy17-dE.ttf", + "500italic": "https://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCNl7SvN2fy17-dE.ttf", + "600italic": "https://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCDV8SvN2fy17-dE.ttf", + "700italic": "https://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCAx8SvN2fy17-dE.ttf", + "800italic": "https://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCGt8SvN2fy17-dE.ttf", + "900italic": "https://fonts.gstatic.com/s/labrada/v2/ieVv2Y9HLWefIpOyPVxQIkLq2VfhwMCbCEJ8SvN2fy17-dE.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/labrada/v2/ieVh2Y9HLWefIpOyF1Vi3ZqDss1Px9VTSzM5SvM.ttf" + }, + { + "family": "Lacquer", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lacquer/v15/EYqzma1QwqpG4_BBB7-AXhttQ5I.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lacquer/v15/EYqzma1QwqpG4_BBN76KWg.ttf" + }, + { + "family": "Laila", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/laila/v15/LYjBdG_8nE8jDLzxogNAh14nVcfe.ttf", + "regular": "https://fonts.gstatic.com/s/laila/v15/LYjMdG_8nE8jDIRdiidIrEIu.ttf", + "500": "https://fonts.gstatic.com/s/laila/v15/LYjBdG_8nE8jDLypowNAh14nVcfe.ttf", + "600": "https://fonts.gstatic.com/s/laila/v15/LYjBdG_8nE8jDLyFpANAh14nVcfe.ttf", + "700": "https://fonts.gstatic.com/s/laila/v15/LYjBdG_8nE8jDLzhpQNAh14nVcfe.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/laila/v15/LYjMdG_8nE8jDLRcgCM.ttf" + }, + { + "family": "Lakki Reddy", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lakkireddy/v21/S6u5w49MUSzD9jlCPmvLZQfox9k97-xZ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lakkireddy/v21/S6u5w49MUSzD9jlCPmvLZTfpzd0.ttf" + }, + { + "family": "Lalezar", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lalezar/v14/zrfl0HLVx-HwTP82UaDyIiL0RCg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lalezar/v14/zrfl0HLVx-HwTP82YaH4Jg.ttf" + }, + { + "family": "Lancelot", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lancelot/v26/J7acnppxBGtQEulG4JY4xJ9CGyAa.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lancelot/v26/J7acnppxBGtQEulG4KY5zps.ttf" + }, + { + "family": "Langar", + "variants": [ + "regular" + ], + "subsets": [ + "gurmukhi", + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/langar/v27/kJEyBukW7AIlgjGVrTVZ99sqrQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/langar/v27/kJEyBukW7AIlgjGlrD9d.ttf" + }, + { + "family": "Lateef", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v30", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/lateef/v30/hESz6XVnNCxEvkb0bjygbqTb9nQ-RA.ttf", + "300": "https://fonts.gstatic.com/s/lateef/v30/hESz6XVnNCxEvkb0Cj-gbqTb9nQ-RA.ttf", + "regular": "https://fonts.gstatic.com/s/lateef/v30/hESw6XVnNCxEvkbMpheEZo_H_w.ttf", + "500": "https://fonts.gstatic.com/s/lateef/v30/hESz6XVnNCxEvkb0Uj6gbqTb9nQ-RA.ttf", + "600": "https://fonts.gstatic.com/s/lateef/v30/hESz6XVnNCxEvkb0fjmgbqTb9nQ-RA.ttf", + "700": "https://fonts.gstatic.com/s/lateef/v30/hESz6XVnNCxEvkb0GjigbqTb9nQ-RA.ttf", + "800": "https://fonts.gstatic.com/s/lateef/v30/hESz6XVnNCxEvkb0BjugbqTb9nQ-RA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lateef/v30/hESw6XVnNCxEvkb8px2A.ttf" + }, + { + "family": "Lato", + "variants": [ + "100", + "100italic", + "300", + "300italic", + "regular", + "italic", + "700", + "700italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/lato/v24/S6u8w4BMUTPHh30wWyWrFCbw7A.ttf", + "100italic": "https://fonts.gstatic.com/s/lato/v24/S6u-w4BMUTPHjxsIPy-vNiPg7MU0.ttf", + "300": "https://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh7USew-FGC_p9dw.ttf", + "300italic": "https://fonts.gstatic.com/s/lato/v24/S6u_w4BMUTPHjxsI9w2PHA3s5dwt7w.ttf", + "regular": "https://fonts.gstatic.com/s/lato/v24/S6uyw4BMUTPHvxk6XweuBCY.ttf", + "italic": "https://fonts.gstatic.com/s/lato/v24/S6u8w4BMUTPHjxswWyWrFCbw7A.ttf", + "700": "https://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh6UVew-FGC_p9dw.ttf", + "700italic": "https://fonts.gstatic.com/s/lato/v24/S6u_w4BMUTPHjxsI5wqPHA3s5dwt7w.ttf", + "900": "https://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh50Xew-FGC_p9dw.ttf", + "900italic": "https://fonts.gstatic.com/s/lato/v24/S6u_w4BMUTPHjxsI3wiPHA3s5dwt7w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lato/v24/S6uyw4BMUTPHjxgwWw.ttf" + }, + { + "family": "Lavishly Yours", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lavishlyyours/v5/jizDREVIvGwH5OjiZmX9r5z_WxUY0TY7ikbI.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lavishlyyours/v5/jizDREVIvGwH5OjiZmX9r5z_WyUZ2zI.ttf" + }, + { + "family": "League Gothic", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/leaguegothic/v11/qFdR35CBi4tvBz81xy7WG7ep-BQAY7Krj7feObpH_-amidQ6Q9hn.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/leaguegothic/v11/qFdR35CBi4tvBz81xy7WG7ep-BQAY7Krj7feObpH_9ang9A.ttf" + }, + { + "family": "League Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/leaguescript/v28/CSR54zpSlumSWj9CGVsoBZdeaNNUuOwkC2s.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/leaguescript/v28/CSR54zpSlumSWj9CGVsoBZdeWNJevA.ttf" + }, + { + "family": "League Spartan", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvM_oXpBMdcFguczA.ttf", + "200": "https://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMfoTpBMdcFguczA.ttf", + "300": "https://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMoITpBMdcFguczA.ttf", + "regular": "https://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvM_oTpBMdcFguczA.ttf", + "500": "https://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMzITpBMdcFguczA.ttf", + "600": "https://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMIIPpBMdcFguczA.ttf", + "700": "https://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMGYPpBMdcFguczA.ttf", + "800": "https://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMfoPpBMdcFguczA.ttf", + "900": "https://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvMV4PpBMdcFguczA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/leaguespartan/v11/kJEnBuEW6A0lliaV_m88ja5Twtx8BWhtkDVmjZvM_oTZBc1Y.ttf" + }, + { + "family": "Leckerli One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/leckerlione/v20/V8mCoQH8VCsNttEnxnGQ-1itLZxcBtItFw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/leckerlione/v20/V8mCoQH8VCsNttEnxnGQ-1idLJZY.ttf" + }, + { + "family": "Ledger", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ledger/v16/j8_q6-HK1L3if_sxm8DwHTBhHw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ledger/v16/j8_q6-HK1L3if_sBmsr0.ttf" + }, + { + "family": "Lekton", + "variants": [ + "regular", + "italic", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lekton/v20/SZc43FDmLaWmWpBeXxfonUPL6Q.ttf", + "italic": "https://fonts.gstatic.com/s/lekton/v20/SZc63FDmLaWmWpBuXR3sv0bb6StO.ttf", + "700": "https://fonts.gstatic.com/s/lekton/v20/SZc73FDmLaWmWpBm4zjMlWjX4DJXgQ.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lekton/v20/SZc43FDmLaWmWpBuXh3s.ttf" + }, + { + "family": "Lemon", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lemon/v17/HI_EiYEVKqRMq0jBSZXAQ4-d.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lemon/v17/HI_EiYEVKqRMq3jAQ5E.ttf" + }, + { + "family": "Lemonada", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/lemonada/v28/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGJOt2mfWc3Z2pTg.ttf", + "regular": "https://fonts.gstatic.com/s/lemonada/v28/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGeut2mfWc3Z2pTg.ttf", + "500": "https://fonts.gstatic.com/s/lemonada/v28/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGSOt2mfWc3Z2pTg.ttf", + "600": "https://fonts.gstatic.com/s/lemonada/v28/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGpOx2mfWc3Z2pTg.ttf", + "700": "https://fonts.gstatic.com/s/lemonada/v28/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGnex2mfWc3Z2pTg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lemonada/v28/0QI-MXFD9oygTWy_R-FFlwV-bgfR7QJGeutGmP-Y.ttf" + }, + { + "family": "Lexend", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/lexend/v23/wlptgwvFAVdoq2_F94zlCfv0bz1WCzsX_LBte6KuGEo.ttf", + "200": "https://fonts.gstatic.com/s/lexend/v23/wlptgwvFAVdoq2_F94zlCfv0bz1WC7sW_LBte6KuGEo.ttf", + "300": "https://fonts.gstatic.com/s/lexend/v23/wlptgwvFAVdoq2_F94zlCfv0bz1WC2UW_LBte6KuGEo.ttf", + "regular": "https://fonts.gstatic.com/s/lexend/v23/wlptgwvFAVdoq2_F94zlCfv0bz1WCzsW_LBte6KuGEo.ttf", + "500": "https://fonts.gstatic.com/s/lexend/v23/wlptgwvFAVdoq2_F94zlCfv0bz1WCwkW_LBte6KuGEo.ttf", + "600": "https://fonts.gstatic.com/s/lexend/v23/wlptgwvFAVdoq2_F94zlCfv0bz1WC-UR_LBte6KuGEo.ttf", + "700": "https://fonts.gstatic.com/s/lexend/v23/wlptgwvFAVdoq2_F94zlCfv0bz1WC9wR_LBte6KuGEo.ttf", + "800": "https://fonts.gstatic.com/s/lexend/v23/wlptgwvFAVdoq2_F94zlCfv0bz1WC7sR_LBte6KuGEo.ttf", + "900": "https://fonts.gstatic.com/s/lexend/v23/wlptgwvFAVdoq2_F94zlCfv0bz1WC5IR_LBte6KuGEo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lexend/v23/wlptgwvFAVdoq2_F94zlCfv0bz1WCzsWzLFnfw.ttf" + }, + { + "family": "Lexend Deca", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48MxArBPCqLNflg.ttf", + "200": "https://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4cM1ArBPCqLNflg.ttf", + "300": "https://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4rs1ArBPCqLNflg.ttf", + "regular": "https://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48M1ArBPCqLNflg.ttf", + "500": "https://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4ws1ArBPCqLNflg.ttf", + "600": "https://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4LspArBPCqLNflg.ttf", + "700": "https://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4F8pArBPCqLNflg.ttf", + "800": "https://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4cMpArBPCqLNflg.ttf", + "900": "https://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4WcpArBPCqLNflg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lexenddeca/v21/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48M1wrRnG.ttf" + }, + { + "family": "Lexend Exa", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v30", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9r7T6bHHJ8BRq0b.ttf", + "200": "https://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9p7TqbHHJ8BRq0b.ttf", + "300": "https://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9qlTqbHHJ8BRq0b.ttf", + "regular": "https://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9r7TqbHHJ8BRq0b.ttf", + "500": "https://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9rJTqbHHJ8BRq0b.ttf", + "600": "https://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9olSabHHJ8BRq0b.ttf", + "700": "https://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9ocSabHHJ8BRq0b.ttf", + "800": "https://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9p7SabHHJ8BRq0b.ttf", + "900": "https://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9pSSabHHJ8BRq0b.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lexendexa/v30/UMBCrPdOoHOnxExyjdBeQCH18mulUxBvI9r7TpbGFps.ttf" + }, + { + "family": "Lexend Giga", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/lexendgiga/v25/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC2LmE68oo6eepYQ.ttf", + "200": "https://fonts.gstatic.com/s/lexendgiga/v25/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCWLiE68oo6eepYQ.ttf", + "300": "https://fonts.gstatic.com/s/lexendgiga/v25/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRChriE68oo6eepYQ.ttf", + "regular": "https://fonts.gstatic.com/s/lexendgiga/v25/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC2LiE68oo6eepYQ.ttf", + "500": "https://fonts.gstatic.com/s/lexendgiga/v25/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC6riE68oo6eepYQ.ttf", + "600": "https://fonts.gstatic.com/s/lexendgiga/v25/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCBr-E68oo6eepYQ.ttf", + "700": "https://fonts.gstatic.com/s/lexendgiga/v25/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCP7-E68oo6eepYQ.ttf", + "800": "https://fonts.gstatic.com/s/lexendgiga/v25/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCWL-E68oo6eepYQ.ttf", + "900": "https://fonts.gstatic.com/s/lexendgiga/v25/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRCcb-E68oo6eepYQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lexendgiga/v25/PlIuFl67Mah5Y8yMHE7lkUZPlTBo4MWFfNRC2Li06sAs.ttf" + }, + { + "family": "Lexend Mega", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/lexendmega/v25/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDL8fivveyiq9EqQw.ttf", + "200": "https://fonts.gstatic.com/s/lexendmega/v25/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLcfmvveyiq9EqQw.ttf", + "300": "https://fonts.gstatic.com/s/lexendmega/v25/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLr_mvveyiq9EqQw.ttf", + "regular": "https://fonts.gstatic.com/s/lexendmega/v25/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDL8fmvveyiq9EqQw.ttf", + "500": "https://fonts.gstatic.com/s/lexendmega/v25/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLw_mvveyiq9EqQw.ttf", + "600": "https://fonts.gstatic.com/s/lexendmega/v25/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLL_6vveyiq9EqQw.ttf", + "700": "https://fonts.gstatic.com/s/lexendmega/v25/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLFv6vveyiq9EqQw.ttf", + "800": "https://fonts.gstatic.com/s/lexendmega/v25/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLcf6vveyiq9EqQw.ttf", + "900": "https://fonts.gstatic.com/s/lexendmega/v25/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDLWP6vveyiq9EqQw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lexendmega/v25/qFdX35aBi5JtHD41zSTFEuTByuvYFuE9IbDL8fmfvOam.ttf" + }, + { + "family": "Lexend Peta", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR6SFyW1YuRTsnfw.ttf", + "200": "https://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRaSByW1YuRTsnfw.ttf", + "300": "https://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRtyByW1YuRTsnfw.ttf", + "regular": "https://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR6SByW1YuRTsnfw.ttf", + "500": "https://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR2yByW1YuRTsnfw.ttf", + "600": "https://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRNydyW1YuRTsnfw.ttf", + "700": "https://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRDidyW1YuRTsnfw.ttf", + "800": "https://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRaSdyW1YuRTsnfw.ttf", + "900": "https://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgRQCdyW1YuRTsnfw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lexendpeta/v27/BXR4vFPGjeLPh0kCfI4OkFX-UTQHSCaxvBgR6SBCWlwq.ttf" + }, + { + "family": "Lexend Tera", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM5zITdpz0fYxcrQ.ttf", + "200": "https://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMZzMTdpz0fYxcrQ.ttf", + "300": "https://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMuTMTdpz0fYxcrQ.ttf", + "regular": "https://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM5zMTdpz0fYxcrQ.ttf", + "500": "https://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM1TMTdpz0fYxcrQ.ttf", + "600": "https://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMOTQTdpz0fYxcrQ.ttf", + "700": "https://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMADQTdpz0fYxcrQ.ttf", + "800": "https://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMZzQTdpz0fYxcrQ.ttf", + "900": "https://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiMTjQTdpz0fYxcrQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lexendtera/v27/RrQDbo98_jt_IXnBPwCWtYJLZ3P4hnaGKFiM5zMjd5bw.ttf" + }, + { + "family": "Lexend Zetta", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy9bH0z5jbs8qbts.ttf", + "200": "https://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy1bG0z5jbs8qbts.ttf", + "300": "https://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy4jG0z5jbs8qbts.ttf", + "regular": "https://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy9bG0z5jbs8qbts.ttf", + "500": "https://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy-TG0z5jbs8qbts.ttf", + "600": "https://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCywjB0z5jbs8qbts.ttf", + "700": "https://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCyzHB0z5jbs8qbts.ttf", + "800": "https://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy1bB0z5jbs8qbts.ttf", + "900": "https://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy3_B0z5jbs8qbts.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lexendzetta/v28/ll8uK2KYXje7CdOFnEWcU8synQbuVYjYB3BCy9bG4z9pag.ttf" + }, + { + "family": "Libre Barcode 128", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/librebarcode128/v28/cIfnMbdUsUoiW3O_hVviCwVjuLtXeJ_A_gMk0izH.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librebarcode128/v28/cIfnMbdUsUoiW3O_hVviCwVjuLtXeK_B9Ac.ttf" + }, + { + "family": "Libre Barcode 128 Text", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/librebarcode128text/v28/fdNv9tubt3ZEnz1Gu3I4-zppwZ9CWZ16Z0w5cV3Y6M90w4k.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librebarcode128text/v28/fdNv9tubt3ZEnz1Gu3I4-zppwZ9CWZ16Z0w5QVzS7A.ttf" + }, + { + "family": "Libre Barcode 39", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/librebarcode39/v21/-nFnOHM08vwC6h8Li1eQnP_AHzI2K_d709jy92k.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librebarcode39/v21/-nFnOHM08vwC6h8Li1eQnP_AHzI2G_Zx1w.ttf" + }, + { + "family": "Libre Barcode 39 Extended", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v27", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/librebarcode39extended/v27/8At7Gt6_O5yNS0-K4Nf5U922qSzhJ3dUdfJpwNUgfNRCOZ1GOBw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librebarcode39extended/v27/8At7Gt6_O5yNS0-K4Nf5U922qSzhJ3dUdfJpwNUgTNVIPQ.ttf" + }, + { + "family": "Libre Barcode 39 Extended Text", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v27", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/librebarcode39extendedtext/v27/eLG1P_rwIgOiDA7yrs9LoKaYRVLQ1YldrrOnnL7xPO4jNP68fLIiPopNNA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librebarcode39extendedtext/v27/eLG1P_rwIgOiDA7yrs9LoKaYRVLQ1YldrrOnnL7xPO4jNP6Mfbgm.ttf" + }, + { + "family": "Libre Barcode 39 Text", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/librebarcode39text/v28/sJoa3KhViNKANw_E3LwoDXvs5Un0HQ1vT-031RRL-9rYaw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librebarcode39text/v28/sJoa3KhViNKANw_E3LwoDXvs5Un0HQ1vT-0H1B5P.ttf" + }, + { + "family": "Libre Barcode EAN13 Text", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/librebarcodeean13text/v21/wlpigxXFDU1_oCu9nfZytgIqSG0XRcJm_OQiB96PAGEki52WfA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librebarcodeean13text/v21/wlpigxXFDU1_oCu9nfZytgIqSG0XRcJm_OQiB96_AWsg.ttf" + }, + { + "family": "Libre Baskerville", + "variants": [ + "regular", + "italic", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/librebaskerville/v14/kmKnZrc3Hgbbcjq75U4uslyuy4kn0pNeYRI4CN2V.ttf", + "italic": "https://fonts.gstatic.com/s/librebaskerville/v14/kmKhZrc3Hgbbcjq75U4uslyuy4kn0qNcaxYaDc2V2ro.ttf", + "700": "https://fonts.gstatic.com/s/librebaskerville/v14/kmKiZrc3Hgbbcjq75U4uslyuy4kn0qviTjYwI8Gcw6Oi.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librebaskerville/v14/kmKnZrc3Hgbbcjq75U4uslyuy4kn0qNfaxY.ttf" + }, + { + "family": "Libre Bodoni", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6I1fwWzZcOb3U3s.ttf", + "500": "https://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6L9fwWzZcOb3U3s.ttf", + "600": "https://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6FNYwWzZcOb3U3s.ttf", + "700": "https://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6GpYwWzZcOb3U3s.ttf", + "italic": "https://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUcKS_TdMTyQ3syLg.ttf", + "500italic": "https://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUcGy_TdMTyQ3syLg.ttf", + "600italic": "https://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUc9yjTdMTyQ3syLg.ttf", + "700italic": "https://fonts.gstatic.com/s/librebodoni/v5/_Xm4-H45qDWDYULr5OfyZud9xBKfuwNnnsVZ_UUczijTdMTyQ3syLg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librebodoni/v5/_Xm--H45qDWDYULr5OfyZudXzSBgY2oMBGte6I1f8W3TdA.ttf" + }, + { + "family": "Libre Caslon Display", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/librecaslondisplay/v16/TuGOUUFxWphYQ6YI6q9Xp61FQzxDRKmzr2lRdRhtCC4d.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librecaslondisplay/v16/TuGOUUFxWphYQ6YI6q9Xp61FQzxDRKmzr1lQfxw.ttf" + }, + { + "family": "Libre Caslon Text", + "variants": [ + "regular", + "italic", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/librecaslontext/v5/DdT878IGsGw1aF1JU10PUbTvNNaDMcq_3eNrHgO1.ttf", + "italic": "https://fonts.gstatic.com/s/librecaslontext/v5/DdT678IGsGw1aF1JU10PUbTvNNaDMfq91-dJGxO1q9o.ttf", + "700": "https://fonts.gstatic.com/s/librecaslontext/v5/DdT578IGsGw1aF1JU10PUbTvNNaDMfID8sdjNR-8ssPt.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librecaslontext/v5/DdT878IGsGw1aF1JU10PUbTvNNaDMfq-1-c.ttf" + }, + { + "family": "Libre Franklin", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsSUB9rIb-JH1g.ttf", + "200": "https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhrsWUB9rIb-JH1g.ttf", + "300": "https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhcMWUB9rIb-JH1g.ttf", + "regular": "https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsWUB9rIb-JH1g.ttf", + "500": "https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhHMWUB9rIb-JH1g.ttf", + "600": "https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduh8MKUB9rIb-JH1g.ttf", + "700": "https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhycKUB9rIb-JH1g.ttf", + "800": "https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhrsKUB9rIb-JH1g.ttf", + "900": "https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhh8KUB9rIb-JH1g.ttf", + "100italic": "https://fonts.gstatic.com/s/librefranklin/v18/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZ8RdDMTedX1sGE.ttf", + "200italic": "https://fonts.gstatic.com/s/librefranklin/v18/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05ob8RNDMTedX1sGE.ttf", + "300italic": "https://fonts.gstatic.com/s/librefranklin/v18/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oYiRNDMTedX1sGE.ttf", + "italic": "https://fonts.gstatic.com/s/librefranklin/v18/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZ8RNDMTedX1sGE.ttf", + "500italic": "https://fonts.gstatic.com/s/librefranklin/v18/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oZORNDMTedX1sGE.ttf", + "600italic": "https://fonts.gstatic.com/s/librefranklin/v18/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oaiQ9DMTedX1sGE.ttf", + "700italic": "https://fonts.gstatic.com/s/librefranklin/v18/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05oabQ9DMTedX1sGE.ttf", + "800italic": "https://fonts.gstatic.com/s/librefranklin/v18/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05ob8Q9DMTedX1sGE.ttf", + "900italic": "https://fonts.gstatic.com/s/librefranklin/v18/jizMREVItHgc8qDIbSTKq4XkRiUawTk7f45UM9y05obVQ9DMTedX1sGE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/librefranklin/v18/jizOREVItHgc8qDIbSTKq4XkRg8T88bjFuXOnduhLsWkBtDM.ttf" + }, + { + "family": "Licorice", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/licorice/v6/t5tjIR8TMomTCAyjNk23hqLgzCHu.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/licorice/v6/t5tjIR8TMomTCAyjNn22jKY.ttf" + }, + { + "family": "Life Savers", + "variants": [ + "regular", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lifesavers/v21/ZXuie1UftKKabUQMgxAal_lrFgpbuNvB.ttf", + "700": "https://fonts.gstatic.com/s/lifesavers/v21/ZXu_e1UftKKabUQMgxAal8HXOS5Tk8fIpPRW.ttf", + "800": "https://fonts.gstatic.com/s/lifesavers/v21/ZXu_e1UftKKabUQMgxAal8HLOi5Tk8fIpPRW.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lifesavers/v21/ZXuie1UftKKabUQMgxAal8lqHA4.ttf" + }, + { + "family": "Lilita One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lilitaone/v15/i7dPIFZ9Zz-WBtRtedDbUEZ2RFq7AwU.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lilitaone/v15/i7dPIFZ9Zz-WBtRtedDbYEd8QA.ttf" + }, + { + "family": "Lily Script One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lilyscriptone/v15/LhW9MV7ZMfIPdMxeBjBvFN8SXLS4gsSjQNsRMg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lilyscriptone/v15/LhW9MV7ZMfIPdMxeBjBvFN8SXLSIg86n.ttf" + }, + { + "family": "Limelight", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/limelight/v19/XLYkIZL7aopJVbZJHDuYPeNGrnY2TA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/limelight/v19/XLYkIZL7aopJVbZJHDuoPOlC.ttf" + }, + { + "family": "Linden Hill", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lindenhill/v24/-F61fjxoKSg9Yc3hZgO8ygFI7CwC009k.ttf", + "italic": "https://fonts.gstatic.com/s/lindenhill/v24/-F63fjxoKSg9Yc3hZgO8yjFK5igg1l9kn-s.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lindenhill/v24/-F61fjxoKSg9Yc3hZgO8yjFJ5ig.ttf" + }, + { + "family": "Linefont", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin" + ], + "version": "v5", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/linefont/v5/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY4UNbu7tmdXux3U.ttf", + "200": "https://fonts.gstatic.com/s/linefont/v5/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnYwUMbu7tmdXux3U.ttf", + "300": "https://fonts.gstatic.com/s/linefont/v5/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY9sMbu7tmdXux3U.ttf", + "regular": "https://fonts.gstatic.com/s/linefont/v5/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY4UMbu7tmdXux3U.ttf", + "500": "https://fonts.gstatic.com/s/linefont/v5/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY7cMbu7tmdXux3U.ttf", + "600": "https://fonts.gstatic.com/s/linefont/v5/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY1sLbu7tmdXux3U.ttf", + "700": "https://fonts.gstatic.com/s/linefont/v5/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY2ILbu7tmdXux3U.ttf", + "800": "https://fonts.gstatic.com/s/linefont/v5/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnYwULbu7tmdXux3U.ttf", + "900": "https://fonts.gstatic.com/s/linefont/v5/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnYywLbu7tmdXux3U.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/linefont/v5/dg4I_pzpoqcLKUIzVfFMh1TF2rkhli25jn7CKTTWSumsFuSnY4UMXu_nnQ.ttf" + }, + { + "family": "Lisu Bosa", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "lisu" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXX2DGRdbY1P1Sbg.ttf", + "200italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXkuRNzc9vhCblye.ttf", + "300": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXO2PGRdbY1P1Sbg.ttf", + "300italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXlKR9zc9vhCblye.ttf", + "regular": "https://fonts.gstatic.com/s/lisubosa/v2/3XFoErkv240fsdmJRJQvl0viTf3E3Q.ttf", + "italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFuErkv240fsdmJRJQflUHmb_jU3eRL.ttf", + "500": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXY2LGRdbY1P1Sbg.ttf", + "500italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXkSRtzc9vhCblye.ttf", + "600": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXT2XGRdbY1P1Sbg.ttf", + "600italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXk-Qdzc9vhCblye.ttf", + "700": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXK2TGRdbY1P1Sbg.ttf", + "700italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXlaQNzc9vhCblye.ttf", + "800": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXN2fGRdbY1P1Sbg.ttf", + "800italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXlGQ9zc9vhCblye.ttf", + "900": "https://fonts.gstatic.com/s/lisubosa/v2/3XFtErkv240fsdmJRJQXE2bGRdbY1P1Sbg.ttf", + "900italic": "https://fonts.gstatic.com/s/lisubosa/v2/3XFzErkv240fsdmJRJQflXliQtzc9vhCblye.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lisubosa/v2/3XFoErkv240fsdmJRJQflkHm.ttf" + }, + { + "family": "Literata", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v35", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/literata/v35/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbJG_F_bcTWCWp8g.ttf", + "300": "https://fonts.gstatic.com/s/literata/v35/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbE-_F_bcTWCWp8g.ttf", + "regular": "https://fonts.gstatic.com/s/literata/v35/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbBG_F_bcTWCWp8g.ttf", + "500": "https://fonts.gstatic.com/s/literata/v35/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbCO_F_bcTWCWp8g.ttf", + "600": "https://fonts.gstatic.com/s/literata/v35/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbM-4F_bcTWCWp8g.ttf", + "700": "https://fonts.gstatic.com/s/literata/v35/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbPa4F_bcTWCWp8g.ttf", + "800": "https://fonts.gstatic.com/s/literata/v35/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbJG4F_bcTWCWp8g.ttf", + "900": "https://fonts.gstatic.com/s/literata/v35/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbLi4F_bcTWCWp8g.ttf", + "200italic": "https://fonts.gstatic.com/s/literata/v35/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8f7XWSUKTt8iVow.ttf", + "300italic": "https://fonts.gstatic.com/s/literata/v35/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8obXWSUKTt8iVow.ttf", + "italic": "https://fonts.gstatic.com/s/literata/v35/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8_7XWSUKTt8iVow.ttf", + "500italic": "https://fonts.gstatic.com/s/literata/v35/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8zbXWSUKTt8iVow.ttf", + "600italic": "https://fonts.gstatic.com/s/literata/v35/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8IbLWSUKTt8iVow.ttf", + "700italic": "https://fonts.gstatic.com/s/literata/v35/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8GLLWSUKTt8iVow.ttf", + "800italic": "https://fonts.gstatic.com/s/literata/v35/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8f7LWSUKTt8iVow.ttf", + "900italic": "https://fonts.gstatic.com/s/literata/v35/or3NQ6P12-iJxAIgLYT1PLs1Zd0nfUwAbeGVKoRYzNiCp1OUedn8VrLWSUKTt8iVow.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/literata/v35/or3PQ6P12-iJxAIgLa78DkrbXsDgk0oVDaDPYLanFLHpPf2TbBG_J_fWSQ.ttf" + }, + { + "family": "Liu Jian Mao Cao", + "variants": [ + "regular" + ], + "subsets": [ + "chinese-simplified", + "latin" + ], + "version": "v20", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/liujianmaocao/v20/845DNN84HJrccNonurqXILGpvCOoferVKGWsUo8.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/liujianmaocao/v20/845DNN84HJrccNonurqXILGpvCOoTevfLA.ttf" + }, + { + "family": "Livvic", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/livvic/v14/rnCr-x1S2hzjrlffC-M-mHnOSOuk.ttf", + "100italic": "https://fonts.gstatic.com/s/livvic/v14/rnCt-x1S2hzjrlfXbdtakn3sTfukQHs.ttf", + "200": "https://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlffp8IeslfCQfK9WQ.ttf", + "200italic": "https://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdv2s13GY_etWWIJ.ttf", + "300": "https://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlffw8EeslfCQfK9WQ.ttf", + "300italic": "https://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbduSsF3GY_etWWIJ.ttf", + "regular": "https://fonts.gstatic.com/s/livvic/v14/rnCp-x1S2hzjrlfnb-k6unzeSA.ttf", + "italic": "https://fonts.gstatic.com/s/livvic/v14/rnCr-x1S2hzjrlfXbeM-mHnOSOuk.ttf", + "500": "https://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlffm8AeslfCQfK9WQ.ttf", + "500italic": "https://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdvKsV3GY_etWWIJ.ttf", + "600": "https://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlfft8ceslfCQfK9WQ.ttf", + "600italic": "https://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdvmtl3GY_etWWIJ.ttf", + "700": "https://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlff08YeslfCQfK9WQ.ttf", + "700italic": "https://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbduCt13GY_etWWIJ.ttf", + "900": "https://fonts.gstatic.com/s/livvic/v14/rnCq-x1S2hzjrlff68QeslfCQfK9WQ.ttf", + "900italic": "https://fonts.gstatic.com/s/livvic/v14/rnCs-x1S2hzjrlfXbdu6tV3GY_etWWIJ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/livvic/v14/rnCp-x1S2hzjrlfXbuM-.ttf" + }, + { + "family": "Lobster", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v30", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lobster/v30/neILzCirqoswsqX9_oWsMqEzSJQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lobster/v30/neILzCirqoswsqX9zoSmNg.ttf" + }, + { + "family": "Lobster Two", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lobstertwo/v20/BngMUXZGTXPUvIoyV6yN59fK7KSJ4ACD.ttf", + "italic": "https://fonts.gstatic.com/s/lobstertwo/v20/BngOUXZGTXPUvIoyV6yN5-fI5qCr5RCDY_k.ttf", + "700": "https://fonts.gstatic.com/s/lobstertwo/v20/BngRUXZGTXPUvIoyV6yN5-92w4CByxyKeuDp.ttf", + "700italic": "https://fonts.gstatic.com/s/lobstertwo/v20/BngTUXZGTXPUvIoyV6yN5-fI3hyEwRiof_DpXMY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lobstertwo/v20/BngMUXZGTXPUvIoyV6yN5-fL5qA.ttf" + }, + { + "family": "Londrina Outline", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/londrinaoutline/v27/C8c44dM8vmb14dfsZxhetg3pDH-SfuoxrSKMDvI.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/londrinaoutline/v27/C8c44dM8vmb14dfsZxhetg3pDH-STus7qQ.ttf" + }, + { + "family": "Londrina Shadow", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/londrinashadow/v26/oPWX_kB4kOQoWNJmjxLV5JuoCUlXRlaSxkrMCQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/londrinashadow/v26/oPWX_kB4kOQoWNJmjxLV5JuoCUlnR1yW.ttf" + }, + { + "family": "Londrina Sketch", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/londrinasketch/v25/c4m41npxGMTnomOHtRU68eIJn8qfWWn5Pos6CA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/londrinasketch/v25/c4m41npxGMTnomOHtRU68eIJn8qvWGP9.ttf" + }, + { + "family": "Londrina Solid", + "variants": [ + "100", + "300", + "regular", + "900" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/londrinasolid/v17/flUjRq6sw40kQEJxWNgkLuudGfs9KBYesZHhV64.ttf", + "300": "https://fonts.gstatic.com/s/londrinasolid/v17/flUiRq6sw40kQEJxWNgkLuudGfv1CjY0n53oTrcL.ttf", + "regular": "https://fonts.gstatic.com/s/londrinasolid/v17/flUhRq6sw40kQEJxWNgkLuudGcNZIhI8tIHh.ttf", + "900": "https://fonts.gstatic.com/s/londrinasolid/v17/flUiRq6sw40kQEJxWNgkLuudGfvdDzY0n53oTrcL.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/londrinasolid/v17/flUhRq6sw40kQEJxWNgkLuudGfNYKBY.ttf" + }, + { + "family": "Long Cang", + "variants": [ + "regular" + ], + "subsets": [ + "chinese-simplified", + "latin" + ], + "version": "v17", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/longcang/v17/LYjAdGP8kkgoTec8zkRgrXArXN7HWQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/longcang/v17/LYjAdGP8kkgoTec8zkRQrHov.ttf" + }, + { + "family": "Lora", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v35", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lora/v35/0QI6MX1D_JOuGQbT0gvTJPa787weuyJGmKxemMeZ.ttf", + "500": "https://fonts.gstatic.com/s/lora/v35/0QI6MX1D_JOuGQbT0gvTJPa787wsuyJGmKxemMeZ.ttf", + "600": "https://fonts.gstatic.com/s/lora/v35/0QI6MX1D_JOuGQbT0gvTJPa787zAvCJGmKxemMeZ.ttf", + "700": "https://fonts.gstatic.com/s/lora/v35/0QI6MX1D_JOuGQbT0gvTJPa787z5vCJGmKxemMeZ.ttf", + "italic": "https://fonts.gstatic.com/s/lora/v35/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-MoFkqh8ndeZzZ0.ttf", + "500italic": "https://fonts.gstatic.com/s/lora/v35/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-PgFkqh8ndeZzZ0.ttf", + "600italic": "https://fonts.gstatic.com/s/lora/v35/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-BQCkqh8ndeZzZ0.ttf", + "700italic": "https://fonts.gstatic.com/s/lora/v35/0QI8MX1D_JOuMw_hLdO6T2wV9KnW-C0Ckqh8ndeZzZ0.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lora/v35/0QI6MX1D_JOuGQbT0gvTJPa787weuxJHkqg.ttf" + }, + { + "family": "Love Light", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lovelight/v6/t5tlIR0TNJyZWimpNAXDjKbCyTHuspo.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lovelight/v6/t5tlIR0TNJyZWimpNAXDvKfIzQ.ttf" + }, + { + "family": "Love Ya Like A Sister", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/loveyalikeasister/v22/R70EjzUBlOqPeouhFDfR80-0FhOqJubN-Be78nZcsGGycA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/loveyalikeasister/v22/R70EjzUBlOqPeouhFDfR80-0FhOqJubN-BeL83xY.ttf" + }, + { + "family": "Loved by the King", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lovedbytheking/v21/Gw6gwdP76VDVJNXerebZxUMeRXUF2PiNlXFu2R64.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lovedbytheking/v21/Gw6gwdP76VDVJNXerebZxUMeRXUF2MiMn3U.ttf" + }, + { + "family": "Lovers Quarrel", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/loversquarrel/v23/Yq6N-LSKXTL-5bCy8ksBzpQ_-zAsY7pO6siz.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/loversquarrel/v23/Yq6N-LSKXTL-5bCy8ksBzpQ_-wAtab4.ttf" + }, + { + "family": "Luckiest Guy", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/luckiestguy/v22/_gP_1RrxsjcxVyin9l9n_j2RStR3qDpraA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/luckiestguy/v22/_gP_1RrxsjcxVyin9l9n_j2hS95z.ttf" + }, + { + "family": "Lugrasimo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lugrasimo/v4/qkBXXvoF_s_eT9c7Y7ae5JRLkAXbMQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lugrasimo/v4/qkBXXvoF_s_eT9c7Y7au5Z5P.ttf" + }, + { + "family": "Lumanosimo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lumanosimo/v4/K2F0fZBYg_JDSEZHEfO8AoqKAyLzfWo.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lumanosimo/v4/K2F0fZBYg_JDSEZHEfO8MouABw.ttf" + }, + { + "family": "Lunasima", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "hebrew", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lunasima/v1/wEO-EBvPh9RSOj7JFAwle94H1VIe.ttf", + "700": "https://fonts.gstatic.com/s/lunasima/v1/wEO5EBvPh9RSOj7JFDSZVPoP_k4XiKvO.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lunasima/v1/wEO-EBvPh9RSOj7JFDwkcdo.ttf" + }, + { + "family": "Lusitana", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lusitana/v13/CSR84z9ShvucWzsMKxhaRuMiSct_.ttf", + "700": "https://fonts.gstatic.com/s/lusitana/v13/CSR74z9ShvucWzsMKyDmaccqYtd2vfwk.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lusitana/v13/CSR84z9ShvucWzsMKyhbTOc.ttf" + }, + { + "family": "Lustria", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/lustria/v13/9oRONYodvDEyjuhOrCg5MtPyAcg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/lustria/v13/9oRONYodvDEyjuhOnCkzNg.ttf" + }, + { + "family": "Luxurious Roman", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/luxuriousroman/v8/buEupou_ZcP1w0yTKxJJokVSmbpqYgckeo9RMw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/luxuriousroman/v8/buEupou_ZcP1w0yTKxJJokVSmbpaYw0g.ttf" + }, + { + "family": "Luxurious Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/luxuriousscript/v7/ahcCv9e7yydulT32KZ0rBIoD7DzMg0rOby1JtYk.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/luxuriousscript/v7/ahcCv9e7yydulT32KZ0rBIoD7DzMs0vEaw.ttf" + }, + { + "family": "M PLUS 1", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-08-07", + "files": { + "100": "https://fonts.gstatic.com/s/mplus1/v11/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5VSe78nZcsGGycA.ttf", + "200": "https://fonts.gstatic.com/s/mplus1/v11/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW51Sa78nZcsGGycA.ttf", + "300": "https://fonts.gstatic.com/s/mplus1/v11/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5Cya78nZcsGGycA.ttf", + "regular": "https://fonts.gstatic.com/s/mplus1/v11/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5VSa78nZcsGGycA.ttf", + "500": "https://fonts.gstatic.com/s/mplus1/v11/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5Zya78nZcsGGycA.ttf", + "600": "https://fonts.gstatic.com/s/mplus1/v11/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5iyG78nZcsGGycA.ttf", + "700": "https://fonts.gstatic.com/s/mplus1/v11/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5siG78nZcsGGycA.ttf", + "800": "https://fonts.gstatic.com/s/mplus1/v11/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW51SG78nZcsGGycA.ttf", + "900": "https://fonts.gstatic.com/s/mplus1/v11/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5_CG78nZcsGGycA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mplus1/v11/R70EjygA28ymD4HgBUGzkN5Eyoj-WpW5VSaL83xY.ttf" + }, + { + "family": "M PLUS 1 Code", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-08-07", + "files": { + "100": "https://fonts.gstatic.com/s/mplus1code/v13/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7iN0XHpapwmdZhY.ttf", + "200": "https://fonts.gstatic.com/s/mplus1code/v13/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7gN0HHpapwmdZhY.ttf", + "300": "https://fonts.gstatic.com/s/mplus1code/v13/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7jT0HHpapwmdZhY.ttf", + "regular": "https://fonts.gstatic.com/s/mplus1code/v13/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7iN0HHpapwmdZhY.ttf", + "500": "https://fonts.gstatic.com/s/mplus1code/v13/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7i_0HHpapwmdZhY.ttf", + "600": "https://fonts.gstatic.com/s/mplus1code/v13/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7hT13HpapwmdZhY.ttf", + "700": "https://fonts.gstatic.com/s/mplus1code/v13/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7hq13HpapwmdZhY.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mplus1code/v13/ypvMbXOOx2xFpzmYJS3N2_J2hBN6RZ5oIp8m_7iN0EHoYJg.ttf" + }, + { + "family": "M PLUS 1p", + "variants": [ + "100", + "300", + "regular", + "500", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "hebrew", + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v30", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/mplus1p/v30/e3tleuShHdiFyPFzBRrQnDQAUW3aq-5N.ttf", + "300": "https://fonts.gstatic.com/s/mplus1p/v30/e3tmeuShHdiFyPFzBRrQVBYge0PWovdU4w.ttf", + "regular": "https://fonts.gstatic.com/s/mplus1p/v30/e3tjeuShHdiFyPFzBRro-D4Ec2jKqw.ttf", + "500": "https://fonts.gstatic.com/s/mplus1p/v30/e3tmeuShHdiFyPFzBRrQDBcge0PWovdU4w.ttf", + "700": "https://fonts.gstatic.com/s/mplus1p/v30/e3tmeuShHdiFyPFzBRrQRBEge0PWovdU4w.ttf", + "800": "https://fonts.gstatic.com/s/mplus1p/v30/e3tmeuShHdiFyPFzBRrQWBIge0PWovdU4w.ttf", + "900": "https://fonts.gstatic.com/s/mplus1p/v30/e3tmeuShHdiFyPFzBRrQfBMge0PWovdU4w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mplus1p/v30/e3tjeuShHdiFyPFzBRrY-TQA.ttf" + }, + { + "family": "M PLUS 2", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-08-07", + "files": { + "100": "https://fonts.gstatic.com/s/mplus2/v10/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwOa-VxlqHrzNgAw.ttf", + "200": "https://fonts.gstatic.com/s/mplus2/v10/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwua6VxlqHrzNgAw.ttf", + "300": "https://fonts.gstatic.com/s/mplus2/v10/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwZ66VxlqHrzNgAw.ttf", + "regular": "https://fonts.gstatic.com/s/mplus2/v10/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwOa6VxlqHrzNgAw.ttf", + "500": "https://fonts.gstatic.com/s/mplus2/v10/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwC66VxlqHrzNgAw.ttf", + "600": "https://fonts.gstatic.com/s/mplus2/v10/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkw56mVxlqHrzNgAw.ttf", + "700": "https://fonts.gstatic.com/s/mplus2/v10/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkw3qmVxlqHrzNgAw.ttf", + "800": "https://fonts.gstatic.com/s/mplus2/v10/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwuamVxlqHrzNgAw.ttf", + "900": "https://fonts.gstatic.com/s/mplus2/v10/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwkKmVxlqHrzNgAw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mplus2/v10/7Auhp_Eq3gO_OGbGGhjdwrDdpeIBxlkwOa6lx1CD.ttf" + }, + { + "family": "M PLUS Code Latin", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/mpluscodelatin/v13/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1EbB6i5MqF9TRwg.ttf", + "200": "https://fonts.gstatic.com/s/mpluscodelatin/v13/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1MbA6i5MqF9TRwg.ttf", + "300": "https://fonts.gstatic.com/s/mpluscodelatin/v13/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1BjA6i5MqF9TRwg.ttf", + "regular": "https://fonts.gstatic.com/s/mpluscodelatin/v13/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1EbA6i5MqF9TRwg.ttf", + "500": "https://fonts.gstatic.com/s/mpluscodelatin/v13/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1HTA6i5MqF9TRwg.ttf", + "600": "https://fonts.gstatic.com/s/mpluscodelatin/v13/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1JjH6i5MqF9TRwg.ttf", + "700": "https://fonts.gstatic.com/s/mpluscodelatin/v13/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1KHH6i5MqF9TRwg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mpluscodelatin/v13/hv-ylyV-aXg7x7tULiNXXBA0Np4WMS8fDIymHY8fy8wn4_ifLAtrObKDO0Xf1EbA2i9GrA.ttf" + }, + { + "family": "M PLUS Rounded 1c", + "variants": [ + "100", + "300", + "regular", + "500", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "hebrew", + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/mplusrounded1c/v16/VdGCAYIAV6gnpUpoWwNkYvrugw9RuM3ixLsg6-av1x0.ttf", + "300": "https://fonts.gstatic.com/s/mplusrounded1c/v16/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0q5psKxeqmzgRK.ttf", + "regular": "https://fonts.gstatic.com/s/mplusrounded1c/v16/VdGEAYIAV6gnpUpoWwNkYvrugw9RuPWGzr8C7vav.ttf", + "500": "https://fonts.gstatic.com/s/mplusrounded1c/v16/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM1y55sKxeqmzgRK.ttf", + "700": "https://fonts.gstatic.com/s/mplusrounded1c/v16/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM064ZsKxeqmzgRK.ttf", + "800": "https://fonts.gstatic.com/s/mplusrounded1c/v16/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0m4psKxeqmzgRK.ttf", + "900": "https://fonts.gstatic.com/s/mplusrounded1c/v16/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0C45sKxeqmzgRK.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mplusrounded1c/v16/VdGEAYIAV6gnpUpoWwNkYvrugw9RuMWHxLs.ttf" + }, + { + "family": "Ma Shan Zheng", + "variants": [ + "regular" + ], + "subsets": [ + "chinese-simplified", + "latin" + ], + "version": "v10", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/mashanzheng/v10/NaPecZTRCLxvwo41b4gvzkXaRMTsDIRSfr0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mashanzheng/v10/NaPecZTRCLxvwo41b4gvzkXadMXmCA.ttf" + }, + { + "family": "Macondo", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/macondo/v25/RrQQboN9-iB1IXmOS2XO0LBBd4Y.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/macondo/v25/RrQQboN9-iB1IXmOe2TE1A.ttf" + }, + { + "family": "Macondo Swash Caps", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/macondoswashcaps/v24/6NUL8EaAJgGKZA7lpt941Z9s6ZYgDq6Oekoa_mm5bA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/macondoswashcaps/v24/6NUL8EaAJgGKZA7lpt941Z9s6ZYgDq6-e0Ae.ttf" + }, + { + "family": "Mada", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFlOkHkw2-m9x2iC.ttf", + "300": "https://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFmQkHkw2-m9x2iC.ttf", + "regular": "https://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFnOkHkw2-m9x2iC.ttf", + "500": "https://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFn8kHkw2-m9x2iC.ttf", + "600": "https://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFkQl3kw2-m9x2iC.ttf", + "700": "https://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFkpl3kw2-m9x2iC.ttf", + "800": "https://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFlOl3kw2-m9x2iC.ttf", + "900": "https://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFlnl3kw2-m9x2iC.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mada/v19/7Aulp_0qnzeSVz7u3PJLcUMYOFnOkEkx0e0.ttf" + }, + { + "family": "Madimi One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/madimione/v1/2V0YKIEADpA8U6RygDnZZFQoBoHMd2U.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/madimione/v1/2V0YKIEADpA8U6RygDnZVFUiAg.ttf" + }, + { + "family": "Magra", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/magra/v14/uK_94ruaZus72k5xIDMfO-ed.ttf", + "700": "https://fonts.gstatic.com/s/magra/v14/uK_w4ruaZus72nbNDxcXEPuUX1ow.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/magra/v14/uK_94ruaZus72n5wKjc.ttf" + }, + { + "family": "Maiden Orange", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/maidenorange/v29/kJE1BuIX7AUmhi2V4m08kb1XjOZdCZS8FY8.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/maidenorange/v29/kJE1BuIX7AUmhi2V4m08kb1XvOdXDQ.ttf" + }, + { + "family": "Maitree", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklhGNWJGovLdh6OE.ttf", + "300": "https://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklnWOWJGovLdh6OE.ttf", + "regular": "https://fonts.gstatic.com/s/maitree/v10/MjQGmil5tffhpBrkrtmmfJmDoL4.ttf", + "500": "https://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrkli2PWJGovLdh6OE.ttf", + "600": "https://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklgGIWJGovLdh6OE.ttf", + "700": "https://fonts.gstatic.com/s/maitree/v10/MjQDmil5tffhpBrklmWJWJGovLdh6OE.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/maitree/v10/MjQGmil5tffhpBrkntiseA.ttf" + }, + { + "family": "Major Mono Display", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/majormonodisplay/v16/RWmVoLyb5fEqtsfBX9PDZIGr2tFubRhLCn2QIndPww.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/majormonodisplay/v16/RWmVoLyb5fEqtsfBX9PDZIGr2tFubRh7C3eU.ttf" + }, + { + "family": "Mako", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mako/v19/H4coBX6Mmc_Z0ST09g478Lo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mako/v19/H4coBX6Mmc_Z4SX-8g.ttf" + }, + { + "family": "Mali", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QOLlKlRaJdbWgdY.ttf", + "200italic": "https://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8wlVQIfTTkdbJYA.ttf", + "300": "https://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QIbmKlRaJdbWgdY.ttf", + "300italic": "https://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8plZQIfTTkdbJYA.ttf", + "regular": "https://fonts.gstatic.com/s/mali/v10/N0ba2SRONuN4eCrODlxxOd8.ttf", + "italic": "https://fonts.gstatic.com/s/mali/v10/N0bU2SRONuN4SCjECn50Kd_PmA.ttf", + "500": "https://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QN7nKlRaJdbWgdY.ttf", + "500italic": "https://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8_ldQIfTTkdbJYA.ttf", + "600": "https://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QPLgKlRaJdbWgdY.ttf", + "600italic": "https://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj80lBQIfTTkdbJYA.ttf", + "700": "https://fonts.gstatic.com/s/mali/v10/N0bV2SRONuN4QJbhKlRaJdbWgdY.ttf", + "700italic": "https://fonts.gstatic.com/s/mali/v10/N0bX2SRONuN4SCj8tlFQIfTTkdbJYA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mali/v10/N0ba2SRONuN4SCvECg.ttf" + }, + { + "family": "Mallanna", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v14", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/mallanna/v14/hv-Vlzx-KEQb84YaDGwzEzRwVvJ-.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mallanna/v14/hv-Vlzx-KEQb84YaDFwyGTA.ttf" + }, + { + "family": "Maname", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "sinhala", + "vietnamese" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/maname/v1/gNMFW3J8RpCx9my42FkGGI6q_Q.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/maname/v1/gNMFW3J8RpCx9myI2VMC.ttf" + }, + { + "family": "Mandali", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v15", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/mandali/v15/LhWlMVbYOfASNfNUVFk1ZPdcKtA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mandali/v15/LhWlMVbYOfASNfNUZFg_YA.ttf" + }, + { + "family": "Manjari", + "variants": [ + "100", + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "malayalam" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/manjari/v12/k3kSo8UPMOBO2w1UdbroK2vFIaOV8A.ttf", + "regular": "https://fonts.gstatic.com/s/manjari/v12/k3kQo8UPMOBO2w1UTd7iL0nAMaM.ttf", + "700": "https://fonts.gstatic.com/s/manjari/v12/k3kVo8UPMOBO2w1UdWLNC0HrLaqM6Q4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/manjari/v12/k3kQo8UPMOBO2w1Ufd_oKw.ttf" + }, + { + "family": "Manrope", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-08-12", + "files": { + "200": "https://fonts.gstatic.com/s/manrope/v15/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk59FO_F87jxeN7B.ttf", + "300": "https://fonts.gstatic.com/s/manrope/v15/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk6jFO_F87jxeN7B.ttf", + "regular": "https://fonts.gstatic.com/s/manrope/v15/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FO_F87jxeN7B.ttf", + "500": "https://fonts.gstatic.com/s/manrope/v15/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk7PFO_F87jxeN7B.ttf", + "600": "https://fonts.gstatic.com/s/manrope/v15/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk4jE-_F87jxeN7B.ttf", + "700": "https://fonts.gstatic.com/s/manrope/v15/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk4aE-_F87jxeN7B.ttf", + "800": "https://fonts.gstatic.com/s/manrope/v15/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk59E-_F87jxeN7B.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/manrope/v15/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FN_E-bw.ttf" + }, + { + "family": "Mansalva", + "variants": [ + "regular" + ], + "subsets": [ + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mansalva/v14/aWB4m0aacbtDfvq5NJllI47vdyBg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mansalva/v14/aWB4m0aacbtDfvq5NKlkKYo.ttf" + }, + { + "family": "Manuale", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeG6e7wD1TB_JHHY.ttf", + "regular": "https://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeHke7wD1TB_JHHY.ttf", + "500": "https://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeHWe7wD1TB_JHHY.ttf", + "600": "https://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeE6fLwD1TB_JHHY.ttf", + "700": "https://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeEDfLwD1TB_JHHY.ttf", + "800": "https://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeFkfLwD1TB_JHHY.ttf", + "300italic": "https://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOApA3zRdIWHYr8M.ttf", + "italic": "https://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOFRA3zRdIWHYr8M.ttf", + "500italic": "https://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOGZA3zRdIWHYr8M.ttf", + "600italic": "https://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOIpH3zRdIWHYr8M.ttf", + "700italic": "https://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsOLNH3zRdIWHYr8M.ttf", + "800italic": "https://fonts.gstatic.com/s/manuale/v28/f0Xn0eas_8Z-TFZdNPTUzMkzITq8fvQsONRH3zRdIWHYr8M.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/manuale/v28/f0Xp0eas_8Z-TFZdHv3mMxFaSqASeeHke4wC3zQ.ttf" + }, + { + "family": "Marcellus", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/marcellus/v13/wEO_EBrOk8hQLDvIAF8FUfAL3EsHiA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/marcellus/v13/wEO_EBrOk8hQLDvIAF81UPoP.ttf" + }, + { + "family": "Marcellus SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/marcellussc/v13/ke8iOgUHP1dg-Rmi6RWjbLEPgdydGKikhA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/marcellussc/v13/ke8iOgUHP1dg-Rmi6RWjbLE_gNaZ.ttf" + }, + { + "family": "Marck Script", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/marckscript/v20/nwpTtK2oNgBA3Or78gapdwuCzyI-aMPF7Q.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/marckscript/v20/nwpTtK2oNgBA3Or78gapdwuyzig6.ttf" + }, + { + "family": "Margarine", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/margarine/v25/qkBXXvoE6trLT9Y7YLye5JRLkAXbMQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/margarine/v25/qkBXXvoE6trLT9Y7YLyu5Z5P.ttf" + }, + { + "family": "Marhey", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/marhey/v6/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBZVwO2cXiGevOMw.ttf", + "regular": "https://fonts.gstatic.com/s/marhey/v6/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBctwO2cXiGevOMw.ttf", + "500": "https://fonts.gstatic.com/s/marhey/v6/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBflwO2cXiGevOMw.ttf", + "600": "https://fonts.gstatic.com/s/marhey/v6/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBRV3O2cXiGevOMw.ttf", + "700": "https://fonts.gstatic.com/s/marhey/v6/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBSx3O2cXiGevOMw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/marhey/v6/x3d8ck7Laq-T7wl7mqfVrEe9sDvtBctwC2YdjA.ttf" + }, + { + "family": "Markazi Text", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/markazitext/v23/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtfSQT4MlBekmJLo.ttf", + "500": "https://fonts.gstatic.com/s/markazitext/v23/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtcaQT4MlBekmJLo.ttf", + "600": "https://fonts.gstatic.com/s/markazitext/v23/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtSqXT4MlBekmJLo.ttf", + "700": "https://fonts.gstatic.com/s/markazitext/v23/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtROXT4MlBekmJLo.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/markazitext/v23/sykh-ydym6AtQaiEtX7yhqb_rV1k_81ZVYYZtfSQf4IvAQ.ttf" + }, + { + "family": "Marko One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/markoone/v23/9Btq3DFG0cnVM5lw1haaKpUfrHPzUw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/markoone/v23/9Btq3DFG0cnVM5lw1haqK58b.ttf" + }, + { + "family": "Marmelad", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/marmelad/v18/Qw3eZQdSHj_jK2e-8tFLG-YMC0R8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/marmelad/v18/Qw3eZQdSHj_jK2e-8uFKEeI.ttf" + }, + { + "family": "Martel", + "variants": [ + "200", + "300", + "regular", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/martel/v11/PN_yRfK9oXHga0XVqekahRbX9vnDzw.ttf", + "300": "https://fonts.gstatic.com/s/martel/v11/PN_yRfK9oXHga0XVzeoahRbX9vnDzw.ttf", + "regular": "https://fonts.gstatic.com/s/martel/v11/PN_xRfK9oXHga0XtYcI-jT3L_w.ttf", + "600": "https://fonts.gstatic.com/s/martel/v11/PN_yRfK9oXHga0XVuewahRbX9vnDzw.ttf", + "700": "https://fonts.gstatic.com/s/martel/v11/PN_yRfK9oXHga0XV3e0ahRbX9vnDzw.ttf", + "800": "https://fonts.gstatic.com/s/martel/v11/PN_yRfK9oXHga0XVwe4ahRbX9vnDzw.ttf", + "900": "https://fonts.gstatic.com/s/martel/v11/PN_yRfK9oXHga0XV5e8ahRbX9vnDzw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/martel/v11/PN_xRfK9oXHga0XdYMg6.ttf" + }, + { + "family": "Martel Sans", + "variants": [ + "200", + "300", + "regular", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/martelsans/v13/h0GxssGi7VdzDgKjM-4d8hAX5suHFUknqMxQ.ttf", + "300": "https://fonts.gstatic.com/s/martelsans/v13/h0GxssGi7VdzDgKjM-4d8hBz5cuHFUknqMxQ.ttf", + "regular": "https://fonts.gstatic.com/s/martelsans/v13/h0GsssGi7VdzDgKjM-4d8ijfze-PPlUu.ttf", + "600": "https://fonts.gstatic.com/s/martelsans/v13/h0GxssGi7VdzDgKjM-4d8hAH48uHFUknqMxQ.ttf", + "700": "https://fonts.gstatic.com/s/martelsans/v13/h0GxssGi7VdzDgKjM-4d8hBj4suHFUknqMxQ.ttf", + "800": "https://fonts.gstatic.com/s/martelsans/v13/h0GxssGi7VdzDgKjM-4d8hB_4cuHFUknqMxQ.ttf", + "900": "https://fonts.gstatic.com/s/martelsans/v13/h0GxssGi7VdzDgKjM-4d8hBb4MuHFUknqMxQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/martelsans/v13/h0GsssGi7VdzDgKjM-4d8hjex-s.ttf" + }, + { + "family": "Martian Mono", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1qus6WD75kdpF2.ttf", + "200": "https://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY3qu86WD75kdpF2.ttf", + "300": "https://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY00u86WD75kdpF2.ttf", + "regular": "https://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1qu86WD75kdpF2.ttf", + "500": "https://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1Yu86WD75kdpF2.ttf", + "600": "https://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY20vM6WD75kdpF2.ttf", + "700": "https://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY2NvM6WD75kdpF2.ttf", + "800": "https://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY3qvM6WD75kdpF2.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/martianmono/v3/2V08KIcADoYhV6w87xrTKjs4CYElh_VS9YA4TlTnQzaVMIE6j15dYY1qu_6XBbo.ttf" + }, + { + "family": "Marvel", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/marvel/v16/nwpVtKeoNgBV0qaIkV7ED366zg.ttf", + "italic": "https://fonts.gstatic.com/s/marvel/v16/nwpXtKeoNgBV0qa4k1TALXuqzhA7.ttf", + "700": "https://fonts.gstatic.com/s/marvel/v16/nwpWtKeoNgBV0qawLXHgB1WmxwkiYQ.ttf", + "700italic": "https://fonts.gstatic.com/s/marvel/v16/nwpQtKeoNgBV0qa4k2x8Al-i5QwyYdrc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/marvel/v16/nwpVtKeoNgBV0qa4kFTA.ttf" + }, + { + "family": "Mate", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mate/v17/m8JdjftRd7WZ2z28WoXSaLU.ttf", + "italic": "https://fonts.gstatic.com/s/mate/v17/m8JTjftRd7WZ6z-2XqfXeLVdbw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mate/v17/m8JdjftRd7WZ6zy2Xg.ttf" + }, + { + "family": "Mate SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/matesc/v22/-nF8OGQ1-uoVr2wKyiXZ95OkJwA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/matesc/v22/-nF8OGQ1-uoVr2wK-iTT8w.ttf" + }, + { + "family": "Matemasie", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/matemasie/v2/OD5BuMCN3ne3Gmr7dlL3rEq4DL6w2w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/matemasie/v2/OD5BuMCN3ne3Gmr7dlLHrUC8.ttf" + }, + { + "family": "Material Icons", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v142", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/materialicons/v142/flUhRq6tzZclQEJ-Vdg-IuiaDsNZIhI8tIHh.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/materialicons/v142/flUhRq6tzZclQEJ-Vdg-IuiaDvNYKBY.ttf" + }, + { + "family": "Material Icons Outlined", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v109", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/materialiconsoutlined/v109/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcdl5GuI2Ze.otf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/materialiconsoutlined/v109/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhXcanZM.otf" + }, + { + "family": "Material Icons Round", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v108", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/materialiconsround/v108/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flwmMq_fTTvg-.otf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/materialiconsround/v108/LDItaoyNOAY6Uewc665JcIzCKsKc_M9flzmLofU.otf" + }, + { + "family": "Material Icons Sharp", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v109", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/materialiconssharp/v109/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvmvSImEyc0vd.otf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/materialiconssharp/v109/oPWQ_lt5nv4pWNJpghLP75WiFR4kLh3kvlvVKGM.otf" + }, + { + "family": "Material Icons Two Tone", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v112", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/materialiconstwotone/v112/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu3NjDrH_77.otf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/materialiconstwotone/v112/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNBuwPDI.otf", + "colorCapabilities": [ + "COLRv0" + ] + }, + { + "family": "Material Symbols Outlined", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v210", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v210/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCvHeembd5zrTgt.ttf", + "200": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v210/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDAvHOembd5zrTgt.ttf", + "300": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v210/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDDxHOembd5zrTgt.ttf", + "regular": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v210/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCvHOembd5zrTgt.ttf", + "500": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v210/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCdHOembd5zrTgt.ttf", + "600": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v210/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDBxG-embd5zrTgt.ttf", + "700": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v210/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDBIG-embd5zrTgt.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/materialsymbolsoutlined/v210/kJF1BvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oDMzByHX9rA6RzaxHMPdY43zj-jCxv3fzvRNU22ZXGJpEpjC_1v-p_4MrImHCIJIZrDCvHNenZ9o.ttf" + }, + { + "family": "Material Symbols Rounded", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v209", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/materialsymbolsrounded/v209/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIekXxKJKJBjAa8.ttf", + "200": "https://fonts.gstatic.com/s/materialsymbolsrounded/v209/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rAelXxKJKJBjAa8.ttf", + "300": "https://fonts.gstatic.com/s/materialsymbolsrounded/v209/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rNmlXxKJKJBjAa8.ttf", + "regular": "https://fonts.gstatic.com/s/materialsymbolsrounded/v209/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIelXxKJKJBjAa8.ttf", + "500": "https://fonts.gstatic.com/s/materialsymbolsrounded/v209/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rLWlXxKJKJBjAa8.ttf", + "600": "https://fonts.gstatic.com/s/materialsymbolsrounded/v209/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rFmiXxKJKJBjAa8.ttf", + "700": "https://fonts.gstatic.com/s/materialsymbolsrounded/v209/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rGCiXxKJKJBjAa8.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/materialsymbolsrounded/v209/syl0-zNym6YjUruM-QrEh7-nyTnjDwKNJ_190FjpZIvDmUSVOK7BDB_Qb9vUSzq3wzLK-P0J-V_Zs-QtQth3-jOcbTCVpeRL2w5rwZu2rIelbxODLA.ttf" + }, + { + "family": "Material Symbols Sharp", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v206", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/materialsymbolssharp/v206/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxOLozCOJ1H7-knk.ttf", + "200": "https://fonts.gstatic.com/s/materialsymbolssharp/v206/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxMLojCOJ1H7-knk.ttf", + "300": "https://fonts.gstatic.com/s/materialsymbolssharp/v206/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxPVojCOJ1H7-knk.ttf", + "regular": "https://fonts.gstatic.com/s/materialsymbolssharp/v206/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxOLojCOJ1H7-knk.ttf", + "500": "https://fonts.gstatic.com/s/materialsymbolssharp/v206/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxO5ojCOJ1H7-knk.ttf", + "600": "https://fonts.gstatic.com/s/materialsymbolssharp/v206/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxNVpTCOJ1H7-knk.ttf", + "700": "https://fonts.gstatic.com/s/materialsymbolssharp/v206/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxNspTCOJ1H7-knk.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/materialsymbolssharp/v206/gNNBW2J8Roq16WD5tFNRaeLQk6-SHQ_R00k4c2_whPnoY9ruReaU4bHmz74m0ZkGH-VBYe1x0TV6x4yFH8F-H5OdzEL3sVTgJtfbYxOLogCPLVU.ttf" + }, + { + "family": "Maven Pro", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v36", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mavenpro/v36/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8SX25nCpozp5GvU.ttf", + "500": "https://fonts.gstatic.com/s/mavenpro/v36/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8Rf25nCpozp5GvU.ttf", + "600": "https://fonts.gstatic.com/s/mavenpro/v36/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8fvx5nCpozp5GvU.ttf", + "700": "https://fonts.gstatic.com/s/mavenpro/v36/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8cLx5nCpozp5GvU.ttf", + "800": "https://fonts.gstatic.com/s/mavenpro/v36/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8aXx5nCpozp5GvU.ttf", + "900": "https://fonts.gstatic.com/s/mavenpro/v36/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8Yzx5nCpozp5GvU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mavenpro/v36/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8SX21nGjpw.ttf" + }, + { + "family": "McLaren", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mclaren/v17/2EbnL-ZuAXFqZFXISYYf8z2Yt_c.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mclaren/v17/2EbnL-ZuAXFqZFXIeYcV9w.ttf" + }, + { + "family": "Mea Culpa", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/meaculpa/v6/AMOTz4GcuWbEIuza8jsZms0QW3mqyg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/meaculpa/v6/AMOTz4GcuWbEIuza8jspm8cU.ttf" + }, + { + "family": "Meddon", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/meddon/v24/kmK8ZqA2EgDNeHTZhBdB3y_Aow.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/meddon/v24/kmK8ZqA2EgDNeHTphR1F.ttf" + }, + { + "family": "MedievalSharp", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/medievalsharp/v26/EvOJzAlL3oU5AQl2mP5KdgptAq96MwvXLDk.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/medievalsharp/v26/EvOJzAlL3oU5AQl2mP5KdgptMq5wNw.ttf" + }, + { + "family": "Medula One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/medulaone/v19/YA9Wr0qb5kjJM6l2V0yukiEqs7GtlvY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/medulaone/v19/YA9Wr0qb5kjJM6l2V0yuoiAgtw.ttf" + }, + { + "family": "Meera Inimai", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "tamil" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/meerainimai/v12/845fNMM5EIqOW5MPuvO3ILep_2jDVevnLQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/meerainimai/v12/845fNMM5EIqOW5MPuvO3ILeZ_mLH.ttf" + }, + { + "family": "Megrim", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/megrim/v16/46kulbz5WjvLqJZlbWXgd0RY1g.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/megrim/v16/46kulbz5WjvLqJZVbG_k.ttf" + }, + { + "family": "Meie Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/meiescript/v21/_LOImzDK7erRjhunIspaMjxn5IXg0WDz.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/meiescript/v21/_LOImzDK7erRjhunIspaMgxm7oE.ttf" + }, + { + "family": "Meow Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/meowscript/v5/0FlQVPqanlaJrtr8AnJ0ESch0_0CfDf1.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/meowscript/v5/0FlQVPqanlaJrtr8AnJ0ERcg2fk.ttf" + }, + { + "family": "Merienda", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5JHhoSU78QGBV0A.ttf", + "regular": "https://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5enhoSU78QGBV0A.ttf", + "500": "https://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5SHhoSU78QGBV0A.ttf", + "600": "https://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5pH9oSU78QGBV0A.ttf", + "700": "https://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5nX9oSU78QGBV0A.ttf", + "800": "https://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5-n9oSU78QGBV0A.ttf", + "900": "https://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5039oSU78QGBV0A.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/merienda/v19/gNMaW3x8Qoy5_mf8uUkJGHtiYXjmKFy5enhYSET4.ttf" + }, + { + "family": "Merriweather", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "700", + "700italic", + "900", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v30", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/merriweather/v30/u-4n0qyriQwlOrhSvowK_l521wRpX837pvjxPA.ttf", + "300italic": "https://fonts.gstatic.com/s/merriweather/v30/u-4l0qyriQwlOrhSvowK_l5-eR7lXcf_hP3hPGWH.ttf", + "regular": "https://fonts.gstatic.com/s/merriweather/v30/u-440qyriQwlOrhSvowK_l5OeyxNV-bnrw.ttf", + "italic": "https://fonts.gstatic.com/s/merriweather/v30/u-4m0qyriQwlOrhSvowK_l5-eSZJdeP3r-Ho.ttf", + "700": "https://fonts.gstatic.com/s/merriweather/v30/u-4n0qyriQwlOrhSvowK_l52xwNpX837pvjxPA.ttf", + "700italic": "https://fonts.gstatic.com/s/merriweather/v30/u-4l0qyriQwlOrhSvowK_l5-eR71Wsf_hP3hPGWH.ttf", + "900": "https://fonts.gstatic.com/s/merriweather/v30/u-4n0qyriQwlOrhSvowK_l52_wFpX837pvjxPA.ttf", + "900italic": "https://fonts.gstatic.com/s/merriweather/v30/u-4l0qyriQwlOrhSvowK_l5-eR7NWMf_hP3hPGWH.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/merriweather/v30/u-440qyriQwlOrhSvowK_l5-eiZJ.ttf" + }, + { + "family": "Merriweather Sans", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZ_O4ljuEG7xFHnQ.ttf", + "regular": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZou4ljuEG7xFHnQ.ttf", + "500": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZkO4ljuEG7xFHnQ.ttf", + "600": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZfOkljuEG7xFHnQ.ttf", + "700": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZRekljuEG7xFHnQ.ttf", + "800": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZIukljuEG7xFHnQ.ttf", + "300italic": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq2TzesCzRRXnaur.ttf", + "italic": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq3NzesCzRRXnaur.ttf", + "500italic": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq3_zesCzRRXnaur.ttf", + "600italic": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq0TyusCzRRXnaur.ttf", + "700italic": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq0qyusCzRRXnaur.ttf", + "800italic": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cM9IRs1JiJN1FRAMjTN5zd9vgsFHXwWDvLBsPDdpWMaq1NyusCzRRXnaur.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/merriweathersans/v26/2-cO9IRs1JiJN1FRAMjTN5zd9vgsFF_5asQTb6hZ2JKZou4Vj-sC.ttf" + }, + { + "family": "Metal", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v30", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/metal/v30/lW-wwjUJIXTo7i3nnoQAUdN2.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/metal/v30/lW-wwjUJIXTo7h3mlIA.ttf" + }, + { + "family": "Metal Mania", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/metalmania/v22/RWmMoKWb4e8kqMfBUdPFJeXCg6UKDXlq.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/metalmania/v22/RWmMoKWb4e8kqMfBUdPFJdXDiaE.ttf" + }, + { + "family": "Metamorphous", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/metamorphous/v20/Wnz8HA03aAXcC39ZEX5y1330PCCthTsmaQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/metamorphous/v20/Wnz8HA03aAXcC39ZEX5y133EPSqp.ttf" + }, + { + "family": "Metrophobic", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/metrophobic/v23/sJoA3LZUhMSAPV_u0qwiAT-J737FPEEL.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/metrophobic/v23/sJoA3LZUhMSAPV_u0qwiAQ-I5Xo.ttf" + }, + { + "family": "Michroma", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/michroma/v19/PN_zRfy9qWD8fEagAMg6rzjb_-Da.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/michroma/v19/PN_zRfy9qWD8fEagAPg7pTw.ttf" + }, + { + "family": "Micro 5", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/micro5/v1/H4cnBX2MkcfEngTr0gYQ7LO5mqc.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/micro5/v1/H4cnBX2MkcfEngTr4gca6A.ttf" + }, + { + "family": "Micro 5 Charted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/micro5charted/v1/hESp6XxmPDtTtADZhn7oD_yrmxEGRUsJQAlbUA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/micro5charted/v1/hESp6XxmPDtTtADZhn7oD_yrmxE2REEN.ttf" + }, + { + "family": "Milonga", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/milonga/v22/SZc53FHnIaK9W5kffz3GkUrS8DI.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/milonga/v22/SZc53FHnIaK9W5kfTzzMlQ.ttf" + }, + { + "family": "Miltonian", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v30", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/miltonian/v30/zOL-4pbPn6Ne9JqTg9mr6e5As-FeiQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/miltonian/v30/zOL-4pbPn6Ne9JqTg9mb6ORE.ttf" + }, + { + "family": "Miltonian Tattoo", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v32", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/miltoniantattoo/v32/EvOUzBRL0o0kCxF-lcMCQxlpVsA_FwP8MDBku-s.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/miltoniantattoo/v32/EvOUzBRL0o0kCxF-lcMCQxlpVsA_JwL2NA.ttf" + }, + { + "family": "Mina", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "bengali", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mina/v11/-nFzOGc18vARrz9j7i3y65o.ttf", + "700": "https://fonts.gstatic.com/s/mina/v11/-nF8OGc18vARl4NMyiXZ95OkJwA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mina/v11/-nFzOGc18vARnz5p6g.ttf" + }, + { + "family": "Mingzat", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "lepcha" + ], + "version": "v8", + "lastModified": "2023-09-13", + "files": { + "regular": "https://fonts.gstatic.com/s/mingzat/v8/0QIgMX5C-o-oWWyvBttkm_mv670.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mingzat/v8/0QIgMX5C-o-oWWyvNtpunw.ttf" + }, + { + "family": "Miniver", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/miniver/v25/eLGcP-PxIg-5H0vC770Cy8r8fWA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/miniver/v25/eLGcP-PxIg-5H0vC37wIzw.ttf" + }, + { + "family": "Miriam Libre", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/miriamlibre/v14/DdTh798HsHwubBAqfkcBTL_vYJn_Teun9g.ttf", + "700": "https://fonts.gstatic.com/s/miriamlibre/v14/DdT-798HsHwubBAqfkcBTL_X3LbbRcC7_-Z7Hg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/miriamlibre/v14/DdTh798HsHwubBAqfkcBTL_fYZP7.ttf" + }, + { + "family": "Mirza", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mirza/v17/co3ImWlikiN5EurdKMewsrvI.ttf", + "500": "https://fonts.gstatic.com/s/mirza/v17/co3FmWlikiN5EtIpAeO4mafBomDi.ttf", + "600": "https://fonts.gstatic.com/s/mirza/v17/co3FmWlikiN5EtIFBuO4mafBomDi.ttf", + "700": "https://fonts.gstatic.com/s/mirza/v17/co3FmWlikiN5EtJhB-O4mafBomDi.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mirza/v17/co3ImWlikiN5EtrcIsM.ttf" + }, + { + "family": "Miss Fajardose", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/missfajardose/v22/E21-_dn5gvrawDdPFVl-N0Ajb8qvWPaJq4no.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/missfajardose/v22/E21-_dn5gvrawDdPFVl-N0Ajb_quUvI.ttf" + }, + { + "family": "Mitr", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8fMZFJDUc1NECPY.ttf", + "300": "https://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8ZcaFJDUc1NECPY.ttf", + "regular": "https://fonts.gstatic.com/s/mitr/v11/pxiLypw5ucZFyTsyMJj_b1o.ttf", + "500": "https://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8c8bFJDUc1NECPY.ttf", + "600": "https://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8eMcFJDUc1NECPY.ttf", + "700": "https://fonts.gstatic.com/s/mitr/v11/pxiEypw5ucZF8YcdFJDUc1NECPY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mitr/v11/pxiLypw5ucZF-To4NA.ttf" + }, + { + "family": "Mochiy Pop One", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mochiypopone/v10/QdVPSTA9Jh-gg-5XZP2UmU4O9kwwD3s6ZKAi.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mochiypopone/v10/QdVPSTA9Jh-gg-5XZP2UmU4O9nwxBX8.ttf" + }, + { + "family": "Mochiy Pop P One", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mochiypoppone/v10/Ktk2AKuPeY_td1-h9LayHYWCjAqyN4O3WYZB_sU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mochiypoppone/v10/Ktk2AKuPeY_td1-h9LayHYWCjAqyB4K9XQ.ttf" + }, + { + "family": "Modak", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/modak/v18/EJRYQgs1XtIEsnMH8BVZ76KU.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/modak/v18/EJRYQgs1XtIEskMG-hE.ttf" + }, + { + "family": "Modern Antiqua", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/modernantiqua/v24/NGStv5TIAUg6Iq_RLNo_2dp1sI1Ea2u0c3Gi.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/modernantiqua/v24/NGStv5TIAUg6Iq_RLNo_2dp1sL1FYW8.ttf" + }, + { + "family": "Moderustic", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/moderustic/v1/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjBVsTNe55aRa7UE.ttf", + "regular": "https://fonts.gstatic.com/s/moderustic/v1/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjALsTNe55aRa7UE.ttf", + "500": "https://fonts.gstatic.com/s/moderustic/v1/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjA5sTNe55aRa7UE.ttf", + "600": "https://fonts.gstatic.com/s/moderustic/v1/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjDVtjNe55aRa7UE.ttf", + "700": "https://fonts.gstatic.com/s/moderustic/v1/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjDstjNe55aRa7UE.ttf", + "800": "https://fonts.gstatic.com/s/moderustic/v1/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjCLtjNe55aRa7UE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/moderustic/v1/2-c39J9s3o6eLFNHFdXYaOX1UUnf3GLnYjALsQNf7ZI.ttf" + }, + { + "family": "Mogra", + "variants": [ + "regular" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mogra/v19/f0X40eSs8c95TBo4DvLmxtnG.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mogra/v19/f0X40eSs8c95TCo5BPY.ttf" + }, + { + "family": "Mohave", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/mohave/v9/7cH0v4ksjJunKqMVAOPIMOeSmiojdif_HvCQopLSvBk.ttf", + "regular": "https://fonts.gstatic.com/s/mohave/v9/7cH0v4ksjJunKqMVAOPIMOeSmiojdnn_HvCQopLSvBk.ttf", + "500": "https://fonts.gstatic.com/s/mohave/v9/7cH0v4ksjJunKqMVAOPIMOeSmiojdkv_HvCQopLSvBk.ttf", + "600": "https://fonts.gstatic.com/s/mohave/v9/7cH0v4ksjJunKqMVAOPIMOeSmiojdqf4HvCQopLSvBk.ttf", + "700": "https://fonts.gstatic.com/s/mohave/v9/7cH0v4ksjJunKqMVAOPIMOeSmiojdp74HvCQopLSvBk.ttf", + "300italic": "https://fonts.gstatic.com/s/mohave/v9/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8qLOaprDXrBlSVw.ttf", + "italic": "https://fonts.gstatic.com/s/mohave/v9/7cH2v4ksjJunKqM_CdE36I75AIQkY7G89rOaprDXrBlSVw.ttf", + "500italic": "https://fonts.gstatic.com/s/mohave/v9/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8xLOaprDXrBlSVw.ttf", + "600italic": "https://fonts.gstatic.com/s/mohave/v9/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8KLSaprDXrBlSVw.ttf", + "700italic": "https://fonts.gstatic.com/s/mohave/v9/7cH2v4ksjJunKqM_CdE36I75AIQkY7G8EbSaprDXrBlSVw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mohave/v9/7cH0v4ksjJunKqMVAOPIMOeSmiojdnn_LvGapg.ttf" + }, + { + "family": "Moirai One", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/moiraione/v1/2sDbZGFUgJLJmby6xgNGT0WWB7UcfCg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/moiraione/v1/2sDbZGFUgJLJmby6xgNGf0ScAw.ttf" + }, + { + "family": "Molengo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/molengo/v16/I_uuMpWeuBzZNBtQbbRQkiCvs5Y.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/molengo/v16/I_uuMpWeuBzZNBtQXbValg.ttf" + }, + { + "family": "Molle", + "variants": [ + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "italic": "https://fonts.gstatic.com/s/molle/v23/E21n_dL5hOXFhWEsXzgmVydREus.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/molle/v23/E21n_dL5hOXFhWEsbzksUw.ttf" + }, + { + "family": "Monda", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/monda/v17/TK3-WkYFABsmjuBtFuvTIFRAPpWsH3oMoWtGaA-Ijw.ttf", + "500": "https://fonts.gstatic.com/s/monda/v17/TK3-WkYFABsmjuBtFuvTIFRAPpWsLXoMoWtGaA-Ijw.ttf", + "600": "https://fonts.gstatic.com/s/monda/v17/TK3-WkYFABsmjuBtFuvTIFRAPpWswX0MoWtGaA-Ijw.ttf", + "700": "https://fonts.gstatic.com/s/monda/v17/TK3-WkYFABsmjuBtFuvTIFRAPpWs-H0MoWtGaA-Ijw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/monda/v17/TK3-WkYFABsmjuBtFuvTIFRAPpWsH3o8oGFC.ttf" + }, + { + "family": "Monofett", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/monofett/v23/mFTyWbofw6zc9NtnW43SuRwr0VJ7.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/monofett/v23/mFTyWbofw6zc9NtnW73Tsxg.ttf" + }, + { + "family": "Monomaniac One", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/monomaniacone/v12/4iC06K17YctZjx50EU-QlwPmcqRnqYkB5kwI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/monomaniacone/v12/4iC06K17YctZjx50EU-QlwPmcpRmo40.ttf" + }, + { + "family": "Monoton", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/monoton/v19/5h1aiZUrOngCibe4fkbBQ2S7FU8.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/monoton/v19/5h1aiZUrOngCibe4TkfLRw.ttf" + }, + { + "family": "Monsieur La Doulaise", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/monsieurladoulaise/v18/_Xmz-GY4rjmCbQfc-aPRaa4pqV340p7EZl5ewkEU4HTy.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/monsieurladoulaise/v18/_Xmz-GY4rjmCbQfc-aPRaa4pqV340p7EZm5fyEU.ttf" + }, + { + "family": "Montaga", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/montaga/v13/H4cnBX2Ml8rCkEO_0gYQ7LO5mqc.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/montaga/v13/H4cnBX2Ml8rCkEO_4gca6A.ttf" + }, + { + "family": "Montagu Slab", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/montaguslab/v12/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDbE3P9Fs7bOSO7.ttf", + "200": "https://fonts.gstatic.com/s/montaguslab/v12/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkBbEnP9Fs7bOSO7.ttf", + "300": "https://fonts.gstatic.com/s/montaguslab/v12/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkCFEnP9Fs7bOSO7.ttf", + "regular": "https://fonts.gstatic.com/s/montaguslab/v12/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDbEnP9Fs7bOSO7.ttf", + "500": "https://fonts.gstatic.com/s/montaguslab/v12/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDpEnP9Fs7bOSO7.ttf", + "600": "https://fonts.gstatic.com/s/montaguslab/v12/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkAFFXP9Fs7bOSO7.ttf", + "700": "https://fonts.gstatic.com/s/montaguslab/v12/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkA8FXP9Fs7bOSO7.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/montaguslab/v12/6qLhKZIQtB_zv0xUaXRDWkY_HXsphdLRZF40vm_jzR2jhk_n3T6ACkDbEkP8HMo.ttf" + }, + { + "family": "MonteCarlo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/montecarlo/v11/buEzpo6-f9X01GadLA0G0CoV_NxLeiw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/montecarlo/v11/buEzpo6-f9X01GadLA0G4Csf-A.ttf" + }, + { + "family": "Montez", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/montez/v22/845ZNMk5GoGIX8lm1LDeSd-R_g.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/montez/v22/845ZNMk5GoGIX8lW1bra.ttf" + }, + { + "family": "Montserrat", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Uw-Y3tcoqK5.ttf", + "200": "https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvr6Ew-Y3tcoqK5.ttf", + "300": "https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCs16Ew-Y3tcoqK5.ttf", + "regular": "https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew-Y3tcoqK5.ttf", + "500": "https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew-Y3tcoqK5.ttf", + "600": "https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCu170w-Y3tcoqK5.ttf", + "700": "https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w-Y3tcoqK5.ttf", + "800": "https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvr70w-Y3tcoqK5.ttf", + "900": "https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvC70w-Y3tcoqK5.ttf", + "100italic": "https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R8aX9-p7K5ILg.ttf", + "200italic": "https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqyR9aX9-p7K5ILg.ttf", + "300italic": "https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq_p9aX9-p7K5ILg.ttf", + "italic": "https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R9aX9-p7K5ILg.ttf", + "500italic": "https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq5Z9aX9-p7K5ILg.ttf", + "600italic": "https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq3p6aX9-p7K5ILg.ttf", + "700italic": "https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq0N6aX9-p7K5ILg.ttf", + "800italic": "https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqyR6aX9-p7K5ILg.ttf", + "900italic": "https://fonts.gstatic.com/s/montserrat/v26/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqw16aX9-p7K5ILg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/montserrat/v26/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw_aX8.ttf" + }, + { + "family": "Montserrat Alternates", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/montserratalternates/v17/mFThWacfw6zH4dthXcyms1lPpC8I_b0juU0xiKfVKphL03l4.ttf", + "100italic": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTjWacfw6zH4dthXcyms1lPpC8I_b0juU057p-xIJxp1ml4imo.ttf", + "200": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xJIb1ALZH2mBhkw.ttf", + "200italic": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8dAbxD-GVxk3Nd.ttf", + "300": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xQIX1ALZH2mBhkw.ttf", + "300italic": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p95ArxD-GVxk3Nd.ttf", + "regular": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTvWacfw6zH4dthXcyms1lPpC8I_b0juU0J7K3RCJ1b0w.ttf", + "italic": "https://fonts.gstatic.com/s/montserratalternates/v17/mFThWacfw6zH4dthXcyms1lPpC8I_b0juU057qfVKphL03l4.ttf", + "500": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xGIT1ALZH2mBhkw.ttf", + "500italic": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8hA7xD-GVxk3Nd.ttf", + "600": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xNIP1ALZH2mBhkw.ttf", + "600italic": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p8NBLxD-GVxk3Nd.ttf", + "700": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xUIL1ALZH2mBhkw.ttf", + "700italic": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p9pBbxD-GVxk3Nd.ttf", + "800": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xTIH1ALZH2mBhkw.ttf", + "800italic": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p91BrxD-GVxk3Nd.ttf", + "900": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTiWacfw6zH4dthXcyms1lPpC8I_b0juU0xaID1ALZH2mBhkw.ttf", + "900italic": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTkWacfw6zH4dthXcyms1lPpC8I_b0juU057p9RB7xD-GVxk3Nd.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/montserratalternates/v17/mFTvWacfw6zH4dthXcyms1lPpC8I_b0juU057afV.ttf" + }, + { + "family": "Montserrat Subrayada", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/montserratsubrayada/v19/U9MD6c-o9H7PgjlTHThBnNHGVUORwteQQE8LYuceqGT-.ttf", + "700": "https://fonts.gstatic.com/s/montserratsubrayada/v19/U9MM6c-o9H7PgjlTHThBnNHGVUORwteQQHe3TcMWg3j36Ebz.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/montserratsubrayada/v19/U9MD6c-o9H7PgjlTHThBnNHGVUORwteQQH8KaOM.ttf" + }, + { + "family": "Moo Lah Lah", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/moolahlah/v6/dg4h_p_opKZOA0w1AYcm55wtYQYugjW4.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/moolahlah/v6/dg4h_p_opKZOA0w1AYcm56wsawI.ttf" + }, + { + "family": "Mooli", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mooli/v1/-F6_fjJpLyk1bYPBBG7YpzlJ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mooli/v1/-F6_fjJpLyk1bbPADmo.ttf" + }, + { + "family": "Moon Dance", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/moondance/v6/WBLgrEbUbFlYW9ekmGawe2XiKMiokE4.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/moondance/v6/WBLgrEbUbFlYW9ekmGawS2ToLA.ttf" + }, + { + "family": "Moul", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v27", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/moul/v27/nuF2D__FSo_3E-RYiJCy-00.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/moul/v27/nuF2D__FSo_3I-VSjA.ttf" + }, + { + "family": "Moulpali", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v30", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/moulpali/v30/H4ckBXKMl9HagUWymyY6wr-wg763.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/moulpali/v30/H4ckBXKMl9HagUWymxY7yLs.ttf" + }, + { + "family": "Mountains of Christmas", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mountainsofchristmas/v22/3y9w6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7ePNamMPNpJpc.ttf", + "700": "https://fonts.gstatic.com/s/mountainsofchristmas/v22/3y9z6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7eBGqJFPtCOp6IaEA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mountainsofchristmas/v22/3y9w6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7eDNesNA.ttf" + }, + { + "family": "Mouse Memoirs", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mousememoirs/v17/t5tmIRoSNJ-PH0WNNgDYxdSb7TnFrpOHYh4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mousememoirs/v17/t5tmIRoSNJ-PH0WNNgDYxdSb3TjPqg.ttf" + }, + { + "family": "Mr Bedfort", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mrbedfort/v22/MQpR-WCtNZSWAdTMwBicliq0XZe_Iy8.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mrbedfort/v22/MQpR-WCtNZSWAdTMwBicpiu-WQ.ttf" + }, + { + "family": "Mr Dafoe", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mrdafoe/v14/lJwE-pIzkS5NXuMMrGiqg7MCxz_C.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mrdafoe/v14/lJwE-pIzkS5NXuMMrFiribc.ttf" + }, + { + "family": "Mr De Haviland", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mrdehaviland/v14/OpNVnooIhJj96FdB73296ksbOj3C4ULVNTlB.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mrdehaviland/v14/OpNVnooIhJj96FdB73296ksbOg3D60Y.ttf" + }, + { + "family": "Mrs Saint Delafield", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mrssaintdelafield/v13/v6-IGZDIOVXH9xtmTZfRagunqBw5WC62cK4tLsubB2w.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mrssaintdelafield/v13/v6-IGZDIOVXH9xtmTZfRagunqBw5WC62QK8nKg.ttf" + }, + { + "family": "Mrs Sheppards", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mrssheppards/v23/PN_2Rfm9snC0XUGoEZhb91ig3vjxynMix4Y.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mrssheppards/v23/PN_2Rfm9snC0XUGoEZhb91ig7vn7zg.ttf" + }, + { + "family": "Ms Madi", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/msmadi/v2/HTxsL2UxNnOji5E1N-DPiI7QAYo.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/msmadi/v2/HTxsL2UxNnOji5E1B-HFjA.ttf" + }, + { + "family": "Mukta", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbEOjFma-2HW7ZB_.ttf", + "300": "https://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbFqj1ma-2HW7ZB_.ttf", + "regular": "https://fonts.gstatic.com/s/mukta/v14/iJWKBXyXfDDVXYnGp32S0H3f.ttf", + "500": "https://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbEyjlma-2HW7ZB_.ttf", + "600": "https://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbEeiVma-2HW7ZB_.ttf", + "700": "https://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbF6iFma-2HW7ZB_.ttf", + "800": "https://fonts.gstatic.com/s/mukta/v14/iJWHBXyXfDDVXbFmi1ma-2HW7ZB_.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mukta/v14/iJWKBXyXfDDVXbnHrXk.ttf" + }, + { + "family": "Mukta Mahee", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "gurmukhi", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9MFcBoHJndqZCsW.ttf", + "300": "https://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9NhcxoHJndqZCsW.ttf", + "regular": "https://fonts.gstatic.com/s/muktamahee/v16/XRXQ3IOIi0hcP8iVU67hA-vNWz4PDWtj.ttf", + "500": "https://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9M5choHJndqZCsW.ttf", + "600": "https://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9MVdRoHJndqZCsW.ttf", + "700": "https://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9NxdBoHJndqZCsW.ttf", + "800": "https://fonts.gstatic.com/s/muktamahee/v16/XRXN3IOIi0hcP8iVU67hA9NtdxoHJndqZCsW.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/muktamahee/v16/XRXQ3IOIi0hcP8iVU67hA9vMUTo.ttf" + }, + { + "family": "Mukta Malar", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqIMwBtAB62ruoAZW.ttf", + "300": "https://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqINUBdAB62ruoAZW.ttf", + "regular": "https://fonts.gstatic.com/s/muktamalar/v12/MCoXzAXyz8LOE2FpJMxZqLv4LfQJwHbn.ttf", + "500": "https://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqIMMBNAB62ruoAZW.ttf", + "600": "https://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqIMgA9AB62ruoAZW.ttf", + "700": "https://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqINEAtAB62ruoAZW.ttf", + "800": "https://fonts.gstatic.com/s/muktamalar/v12/MCoKzAXyz8LOE2FpJMxZqINYAdAB62ruoAZW.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/muktamalar/v12/MCoXzAXyz8LOE2FpJMxZqIv5J_A.ttf" + }, + { + "family": "Mukta Vaani", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGXNV8BD-u97MW1a.ttf", + "300": "https://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGWpVMBD-u97MW1a.ttf", + "regular": "https://fonts.gstatic.com/s/muktavaani/v13/3Jn5SD_-ynaxmxnEfVHPIF0FfORL0fNy.ttf", + "500": "https://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGXxVcBD-u97MW1a.ttf", + "600": "https://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGXdUsBD-u97MW1a.ttf", + "700": "https://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGW5U8BD-u97MW1a.ttf", + "800": "https://fonts.gstatic.com/s/muktavaani/v13/3JnkSD_-ynaxmxnEfVHPIGWlUMBD-u97MW1a.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/muktavaani/v13/3Jn5SD_-ynaxmxnEfVHPIG0EduA.ttf" + }, + { + "family": "Mulish", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/mulish/v13/1Ptyg83HX_SGhgqO0yLcmjzUAuWexRNRwaClGrw-PTY.ttf", + "300": "https://fonts.gstatic.com/s/mulish/v13/1Ptyg83HX_SGhgqO0yLcmjzUAuWexc1RwaClGrw-PTY.ttf", + "regular": "https://fonts.gstatic.com/s/mulish/v13/1Ptyg83HX_SGhgqO0yLcmjzUAuWexZNRwaClGrw-PTY.ttf", + "500": "https://fonts.gstatic.com/s/mulish/v13/1Ptyg83HX_SGhgqO0yLcmjzUAuWexaFRwaClGrw-PTY.ttf", + "600": "https://fonts.gstatic.com/s/mulish/v13/1Ptyg83HX_SGhgqO0yLcmjzUAuWexU1WwaClGrw-PTY.ttf", + "700": "https://fonts.gstatic.com/s/mulish/v13/1Ptyg83HX_SGhgqO0yLcmjzUAuWexXRWwaClGrw-PTY.ttf", + "800": "https://fonts.gstatic.com/s/mulish/v13/1Ptyg83HX_SGhgqO0yLcmjzUAuWexRNWwaClGrw-PTY.ttf", + "900": "https://fonts.gstatic.com/s/mulish/v13/1Ptyg83HX_SGhgqO0yLcmjzUAuWexTpWwaClGrw-PTY.ttf", + "200italic": "https://fonts.gstatic.com/s/mulish/v13/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSqeOvHp47LTZFwA.ttf", + "300italic": "https://fonts.gstatic.com/s/mulish/v13/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSd-OvHp47LTZFwA.ttf", + "italic": "https://fonts.gstatic.com/s/mulish/v13/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSKeOvHp47LTZFwA.ttf", + "500italic": "https://fonts.gstatic.com/s/mulish/v13/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSG-OvHp47LTZFwA.ttf", + "600italic": "https://fonts.gstatic.com/s/mulish/v13/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsS9-SvHp47LTZFwA.ttf", + "700italic": "https://fonts.gstatic.com/s/mulish/v13/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSzuSvHp47LTZFwA.ttf", + "800italic": "https://fonts.gstatic.com/s/mulish/v13/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSqeSvHp47LTZFwA.ttf", + "900italic": "https://fonts.gstatic.com/s/mulish/v13/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSgOSvHp47LTZFwA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mulish/v13/1Ptyg83HX_SGhgqO0yLcmjzUAuWexZNR8aGvHg.ttf" + }, + { + "family": "Murecho", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "japanese", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-08-07", + "files": { + "100": "https://fonts.gstatic.com/s/murecho/v12/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpr5HWZLCpUOaM6.ttf", + "200": "https://fonts.gstatic.com/s/murecho/v12/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrr5XWZLCpUOaM6.ttf", + "300": "https://fonts.gstatic.com/s/murecho/v12/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMo15XWZLCpUOaM6.ttf", + "regular": "https://fonts.gstatic.com/s/murecho/v12/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpr5XWZLCpUOaM6.ttf", + "500": "https://fonts.gstatic.com/s/murecho/v12/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpZ5XWZLCpUOaM6.ttf", + "600": "https://fonts.gstatic.com/s/murecho/v12/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMq14nWZLCpUOaM6.ttf", + "700": "https://fonts.gstatic.com/s/murecho/v12/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMqM4nWZLCpUOaM6.ttf", + "800": "https://fonts.gstatic.com/s/murecho/v12/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrr4nWZLCpUOaM6.ttf", + "900": "https://fonts.gstatic.com/s/murecho/v12/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMrC4nWZLCpUOaM6.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/murecho/v12/q5uYsoq3NOBn_I-ggCJg98TBOoNFCMpr5UWYJi4.ttf" + }, + { + "family": "MuseoModerno", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/museomoderno/v27/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMlZFuewajeKlCdo.ttf", + "200": "https://fonts.gstatic.com/s/museomoderno/v27/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMtZEuewajeKlCdo.ttf", + "300": "https://fonts.gstatic.com/s/museomoderno/v27/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMghEuewajeKlCdo.ttf", + "regular": "https://fonts.gstatic.com/s/museomoderno/v27/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMlZEuewajeKlCdo.ttf", + "500": "https://fonts.gstatic.com/s/museomoderno/v27/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMmREuewajeKlCdo.ttf", + "600": "https://fonts.gstatic.com/s/museomoderno/v27/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMohDuewajeKlCdo.ttf", + "700": "https://fonts.gstatic.com/s/museomoderno/v27/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMrFDuewajeKlCdo.ttf", + "800": "https://fonts.gstatic.com/s/museomoderno/v27/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMtZDuewajeKlCdo.ttf", + "900": "https://fonts.gstatic.com/s/museomoderno/v27/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMv9DuewajeKlCdo.ttf", + "100italic": "https://fonts.gstatic.com/s/museomoderno/v27/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HUa4QicCgGdrS3g.ttf", + "200italic": "https://fonts.gstatic.com/s/museomoderno/v27/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H0a8QicCgGdrS3g.ttf", + "300italic": "https://fonts.gstatic.com/s/museomoderno/v27/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HD68QicCgGdrS3g.ttf", + "italic": "https://fonts.gstatic.com/s/museomoderno/v27/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HUa8QicCgGdrS3g.ttf", + "500italic": "https://fonts.gstatic.com/s/museomoderno/v27/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HY68QicCgGdrS3g.ttf", + "600italic": "https://fonts.gstatic.com/s/museomoderno/v27/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54Hj6gQicCgGdrS3g.ttf", + "700italic": "https://fonts.gstatic.com/s/museomoderno/v27/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54HtqgQicCgGdrS3g.ttf", + "800italic": "https://fonts.gstatic.com/s/museomoderno/v27/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H0agQicCgGdrS3g.ttf", + "900italic": "https://fonts.gstatic.com/s/museomoderno/v27/zrfx0HnU0_7wWdMrFcWqSEXlXhPlgPcSP5dZJ54H-KgQicCgGdrS3g.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/museomoderno/v27/zrf30HnU0_7wWdMrFcWqSEXPVyEaWJ55pTleMlZEie0QiQ.ttf" + }, + { + "family": "My Soul", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mysoul/v5/3XFqErcuy945_u6KF_Ulk2nnXf0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mysoul/v5/3XFqErcuy945_u6KJ_Qvlw.ttf" + }, + { + "family": "Mynerve", + "variants": [ + "regular" + ], + "subsets": [ + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mynerve/v6/P5sCzZKPdNjb4jt7xCRuiZ-uydg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mynerve/v6/P5sCzZKPdNjb4jt79CVkjQ.ttf" + }, + { + "family": "Mystery Quest", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/mysteryquest/v20/-nF6OG414u0E6k0wynSGlujRHwElD_9Qz9E.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/mysteryquest/v20/-nF6OG414u0E6k0wynSGlujRLwAvCw.ttf" + }, + { + "family": "NTR", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v15", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/ntr/v15/RLpzK5Xy0ZjiGGhs5TA4bg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ntr/v15/RLpzK5Xy0ZjSGWJo.ttf" + }, + { + "family": "Nabla", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "math", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/nabla/v10/j8_D6-LI0Lvpe7Makz5UhJt9C3uqg_X_75gyGS4jAxsNIjrRNRBUFFR_198.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nabla/v10/j8_D6-LI0Lvpe7Makz5UhJt9C3uqg_X_75gyGS4jAxsNIjrRBRFeEA.ttf", + "colorCapabilities": [ + "COLRv1", + "SVG" + ] + }, + { + "family": "Namdhinggo", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "limbu" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-mEGe3rbgg8Xzoy5-TDnWj4yxx7o8.ttf", + "500": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-lEGe3rbgg8Xzoy5-TNoGKxyRa8oZK9I0.ttf", + "600": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-lEGe3rbgg8Xzoy5-TNq2NxyRa8oZK9I0.ttf", + "700": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-lEGe3rbgg8Xzoy5-TNsmMxyRa8oZK9I0.ttf", + "800": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-lEGe3rbgg8Xzoy5-TNtWPxyRa8oZK9I0.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/namdhinggo/v2/uk-mEGe3rbgg8Xzoy5-TPnSp5w.ttf" + }, + { + "family": "Nanum Brush Script", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v22", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/nanumbrushscript/v22/wXK2E2wfpokopxzthSqPbcR5_gVaxazyjqBr1lO97Q.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nanumbrushscript/v22/wXK2E2wfpokopxzthSqPbcR5_gVaxazCj6pv.ttf" + }, + { + "family": "Nanum Gothic", + "variants": [ + "regular", + "700", + "800" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v23", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/nanumgothic/v23/PN_3Rfi-oW3hYwmKDpxS7F_z_tLfxno73g.ttf", + "700": "https://fonts.gstatic.com/s/nanumgothic/v23/PN_oRfi-oW3hYwmKDpxS7F_LQv37zlEn14YEUQ.ttf", + "800": "https://fonts.gstatic.com/s/nanumgothic/v23/PN_oRfi-oW3hYwmKDpxS7F_LXv77zlEn14YEUQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nanumgothic/v23/PN_3Rfi-oW3hYwmKDpxS7F_D_9jb.ttf" + }, + { + "family": "Nanum Gothic Coding", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v21", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/nanumgothiccoding/v21/8QIVdjzHisX_8vv59_xMxtPFW4IXROwsy6QxVs1X7tc.ttf", + "700": "https://fonts.gstatic.com/s/nanumgothiccoding/v21/8QIYdjzHisX_8vv59_xMxtPFW4IXROws8xgecsV88t5V9r4.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nanumgothiccoding/v21/8QIVdjzHisX_8vv59_xMxtPFW4IXROws-6U7Ug.ttf" + }, + { + "family": "Nanum Myeongjo", + "variants": [ + "regular", + "700", + "800" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v22", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/nanummyeongjo/v22/9Btx3DZF0dXLMZlywRbVRNhxy1LreHQ8juyl.ttf", + "700": "https://fonts.gstatic.com/s/nanummyeongjo/v22/9Bty3DZF0dXLMZlywRbVRNhxy2pXV1A0pfCs5Kos.ttf", + "800": "https://fonts.gstatic.com/s/nanummyeongjo/v22/9Bty3DZF0dXLMZlywRbVRNhxy2pLVFA0pfCs5Kos.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nanummyeongjo/v22/9Btx3DZF0dXLMZlywRbVRNhxy2LqcnA.ttf" + }, + { + "family": "Nanum Pen Script", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v19", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/nanumpenscript/v19/daaDSSYiLGqEal3MvdA_FOL_3FkN2z7-aMFCcTU.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nanumpenscript/v19/daaDSSYiLGqEal3MvdA_FOL_3FkN6z_0bA.ttf" + }, + { + "family": "Narnoor", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "gunjala-gondi", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v7", + "lastModified": "2023-11-28", + "files": { + "regular": "https://fonts.gstatic.com/s/narnoor/v7/cIf9MaFWuVo-UTyPxCmrYGkHgIs.ttf", + "500": "https://fonts.gstatic.com/s/narnoor/v7/cIf4MaFWuVo-UTyP_N2CRGEsnIJkWL4.ttf", + "600": "https://fonts.gstatic.com/s/narnoor/v7/cIf4MaFWuVo-UTyP_PGFRGEsnIJkWL4.ttf", + "700": "https://fonts.gstatic.com/s/narnoor/v7/cIf4MaFWuVo-UTyP_JWERGEsnIJkWL4.ttf", + "800": "https://fonts.gstatic.com/s/narnoor/v7/cIf4MaFWuVo-UTyP_ImHRGEsnIJkWL4.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/narnoor/v7/cIf9MaFWuVo-UTyP9CihZA.ttf" + }, + { + "family": "Neonderthaw", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/neonderthaw/v6/Iure6Yx5-oWVZI0r-17AeZZJprVA4XQ0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/neonderthaw/v6/Iure6Yx5-oWVZI0r-17AeaZIrLE.ttf" + }, + { + "family": "Nerko One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/nerkoone/v16/m8JQjfZSc7OXlB3ZMOjzcJ5BZmqa3A.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nerkoone/v16/m8JQjfZSc7OXlB3ZMOjDcZRF.ttf" + }, + { + "family": "Neucha", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/neucha/v17/q5uGsou0JOdh94bvugNsCxVEgA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/neucha/v17/q5uGsou0JOdh94bfuwlo.ttf" + }, + { + "family": "Neuton", + "variants": [ + "200", + "300", + "regular", + "italic", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-08-12", + "files": { + "200": "https://fonts.gstatic.com/s/neuton/v22/UMBQrPtMoH62xUZKAKkfegD5Drog6Q.ttf", + "300": "https://fonts.gstatic.com/s/neuton/v22/UMBQrPtMoH62xUZKZKofegD5Drog6Q.ttf", + "regular": "https://fonts.gstatic.com/s/neuton/v22/UMBTrPtMoH62xUZyyII7civlBw.ttf", + "italic": "https://fonts.gstatic.com/s/neuton/v22/UMBRrPtMoH62xUZCyog_UC71B6M5.ttf", + "700": "https://fonts.gstatic.com/s/neuton/v22/UMBQrPtMoH62xUZKdK0fegD5Drog6Q.ttf", + "800": "https://fonts.gstatic.com/s/neuton/v22/UMBQrPtMoH62xUZKaK4fegD5Drog6Q.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/neuton/v22/UMBTrPtMoH62xUZCyYg_.ttf" + }, + { + "family": "New Amsterdam", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/newamsterdam/v1/YA9Vr02Y5lucHqUlbEe51kBtl7mGiv_Q7dA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/newamsterdam/v1/YA9Vr02Y5lucHqUlbEe51kBtp7iMjg.ttf" + }, + { + "family": "New Rocker", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/newrocker/v16/MwQzbhjp3-HImzcCU_cJkGMViblPtXs.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/newrocker/v16/MwQzbhjp3-HImzcCU_cJoGIfjQ.ttf" + }, + { + "family": "New Tegomin", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/newtegomin/v11/SLXMc1fV7Gd9USdBAfPlqfN0Q3ptkDMN.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/newtegomin/v11/SLXMc1fV7Gd9USdBAfPlqcN1SX4.ttf" + }, + { + "family": "News Cycle", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/newscycle/v23/CSR64z1Qlv-GDxkbKVQ_TOcATNt_pOU.ttf", + "700": "https://fonts.gstatic.com/s/newscycle/v23/CSR54z1Qlv-GDxkbKVQ_dFsvaNNUuOwkC2s.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/newscycle/v23/CSR64z1Qlv-GDxkbKVQ_fOYKSA.ttf" + }, + { + "family": "Newsreader", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/newsreader/v20/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438w-I_ADOxEPjCggA.ttf", + "300": "https://fonts.gstatic.com/s/newsreader/v20/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wJo_ADOxEPjCggA.ttf", + "regular": "https://fonts.gstatic.com/s/newsreader/v20/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438weI_ADOxEPjCggA.ttf", + "500": "https://fonts.gstatic.com/s/newsreader/v20/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wSo_ADOxEPjCggA.ttf", + "600": "https://fonts.gstatic.com/s/newsreader/v20/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wpojADOxEPjCggA.ttf", + "700": "https://fonts.gstatic.com/s/newsreader/v20/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438wn4jADOxEPjCggA.ttf", + "800": "https://fonts.gstatic.com/s/newsreader/v20/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438w-IjADOxEPjCggA.ttf", + "200italic": "https://fonts.gstatic.com/s/newsreader/v20/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMyoT-ZAHDWwgECi.ttf", + "300italic": "https://fonts.gstatic.com/s/newsreader/v20/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMx2T-ZAHDWwgECi.ttf", + "italic": "https://fonts.gstatic.com/s/newsreader/v20/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMwoT-ZAHDWwgECi.ttf", + "500italic": "https://fonts.gstatic.com/s/newsreader/v20/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMwaT-ZAHDWwgECi.ttf", + "600italic": "https://fonts.gstatic.com/s/newsreader/v20/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMz2SOZAHDWwgECi.ttf", + "700italic": "https://fonts.gstatic.com/s/newsreader/v20/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMzPSOZAHDWwgECi.ttf", + "800italic": "https://fonts.gstatic.com/s/newsreader/v20/cY9kfjOCX1hbuyalUrK439vogqC9yFZCYg7oRZaLP4obnf7fTXglsMyoSOZAHDWwgECi.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/newsreader/v20/cY9qfjOCX1hbuyalUrK49dLac06G1ZGsZBtoBCzBDXXD9JVF438weI_wDeZA.ttf" + }, + { + "family": "Niconne", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/niconne/v15/w8gaH2QvRug1_rTfrQut2F4OuOo.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/niconne/v15/w8gaH2QvRug1_rTfnQqn3A.ttf" + }, + { + "family": "Niramit", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVXx7tiiEr5_BdZ8.ttf", + "200italic": "https://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiXimOq73EZZ_f6w.ttf", + "300": "https://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVRh4tiiEr5_BdZ8.ttf", + "300italic": "https://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiOiqOq73EZZ_f6w.ttf", + "regular": "https://fonts.gstatic.com/s/niramit/v10/I_uuMpWdvgLdNxVLbbRQkiCvs5Y.ttf", + "italic": "https://fonts.gstatic.com/s/niramit/v10/I_usMpWdvgLdNxVLXbZalgKqo5bYbA.ttf", + "500": "https://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVUB5tiiEr5_BdZ8.ttf", + "500italic": "https://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiYiuOq73EZZ_f6w.ttf", + "600": "https://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVWx-tiiEr5_BdZ8.ttf", + "600italic": "https://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiTiyOq73EZZ_f6w.ttf", + "700": "https://fonts.gstatic.com/s/niramit/v10/I_urMpWdvgLdNxVLVQh_tiiEr5_BdZ8.ttf", + "700italic": "https://fonts.gstatic.com/s/niramit/v10/I_upMpWdvgLdNxVLXbZiKi2Oq73EZZ_f6w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/niramit/v10/I_uuMpWdvgLdNxVLXbValg.ttf" + }, + { + "family": "Nixie One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/nixieone/v16/lW-8wjkKLXjg5y2o2uUoUOFzpS-yLw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nixieone/v16/lW-8wjkKLXjg5y2o2uUYUet3.ttf" + }, + { + "family": "Nobile", + "variants": [ + "regular", + "italic", + "500", + "500italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/nobile/v17/m8JTjflSeaOVl1i2XqfXeLVdbw.ttf", + "italic": "https://fonts.gstatic.com/s/nobile/v17/m8JRjflSeaOVl1iGXK3TWrBNb3OD.ttf", + "500": "https://fonts.gstatic.com/s/nobile/v17/m8JQjflSeaOVl1iOqo7zcJ5BZmqa3A.ttf", + "500italic": "https://fonts.gstatic.com/s/nobile/v17/m8JWjflSeaOVl1iGXJUnc5RFRG-K3Mud.ttf", + "700": "https://fonts.gstatic.com/s/nobile/v17/m8JQjflSeaOVl1iO4ojzcJ5BZmqa3A.ttf", + "700italic": "https://fonts.gstatic.com/s/nobile/v17/m8JWjflSeaOVl1iGXJVvdZRFRG-K3Mud.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nobile/v17/m8JTjflSeaOVl1iGX63T.ttf" + }, + { + "family": "Nokora", + "variants": [ + "100", + "300", + "regular", + "700", + "900" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v31", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/nokora/v31/hYkKPuwgTubzaWxoXzALgPNw8QZN.ttf", + "300": "https://fonts.gstatic.com/s/nokora/v31/hYkLPuwgTubzaWxolxIrqt18-B9Uuw.ttf", + "regular": "https://fonts.gstatic.com/s/nokora/v31/hYkIPuwgTubzaWxQOzoPovZg8Q.ttf", + "700": "https://fonts.gstatic.com/s/nokora/v31/hYkLPuwgTubzaWxohxUrqt18-B9Uuw.ttf", + "900": "https://fonts.gstatic.com/s/nokora/v31/hYkLPuwgTubzaWxovxcrqt18-B9Uuw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nokora/v31/hYkIPuwgTubzaWxgOjAL.ttf" + }, + { + "family": "Norican", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/norican/v15/MwQ2bhXp1eSBqjkPGJJRtGs-lbA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/norican/v15/MwQ2bhXp1eSBqjkPKJNbsA.ttf" + }, + { + "family": "Nosifer", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/nosifer/v22/ZGjXol5JTp0g5bxZaC1RVDNdGDs.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nosifer/v22/ZGjXol5JTp0g5bxZWCxbUA.ttf" + }, + { + "family": "Notable", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/notable/v18/gNMEW3N_SIqx-WX9-HMoFIez5MI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notable/v18/gNMEW3N_SIqx-WX9yHIiEA.ttf" + }, + { + "family": "Nothing You Could Do", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/nothingyoucoulddo/v19/oY1B8fbBpaP5OX3DtrRYf_Q2BPB1SnfZb0OJl1ol2Ymo.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nothingyoucoulddo/v19/oY1B8fbBpaP5OX3DtrRYf_Q2BPB1SnfZb3OInV4.ttf" + }, + { + "family": "Noticia Text", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/noticiatext/v15/VuJ2dNDF2Yv9qppOePKYRP1GYTFZt0rNpQ.ttf", + "italic": "https://fonts.gstatic.com/s/noticiatext/v15/VuJodNDF2Yv9qppOePKYRP12YztdlU_dpSjt.ttf", + "700": "https://fonts.gstatic.com/s/noticiatext/v15/VuJpdNDF2Yv9qppOePKYRP1-3R59v2HRrDH0eA.ttf", + "700italic": "https://fonts.gstatic.com/s/noticiatext/v15/VuJrdNDF2Yv9qppOePKYRP12YwPhumvVjjTkeMnz.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/noticiatext/v15/VuJ2dNDF2Yv9qppOePKYRP12YDtd.ttf" + }, + { + "family": "Noto Color Emoji", + "variants": [ + "regular" + ], + "subsets": [ + "emoji" + ], + "version": "v32", + "lastModified": "2024-09-03", + "files": { + "regular": "https://fonts.gstatic.com/s/notocoloremoji/v32/Yq6P-KqIXTD0t4D9z1ESnKM3-HpFab5s79iz64w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notocoloremoji/v32/Yq6P-KqIXTD0t4D9z1ESnKM3-HpFWb9m6w.ttf", + "colorCapabilities": [ + "COLRv1", + "SVG" + ] + }, + { + "family": "Noto Emoji", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "emoji" + ], + "version": "v51", + "lastModified": "2024-09-03", + "files": { + "300": "https://fonts.gstatic.com/s/notoemoji/v51/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob_10jwvS-FGJCMY.ttf", + "regular": "https://fonts.gstatic.com/s/notoemoji/v51/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-r0jwvS-FGJCMY.ttf", + "500": "https://fonts.gstatic.com/s/notoemoji/v51/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-Z0jwvS-FGJCMY.ttf", + "600": "https://fonts.gstatic.com/s/notoemoji/v51/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob911TwvS-FGJCMY.ttf", + "700": "https://fonts.gstatic.com/s/notoemoji/v51/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob9M1TwvS-FGJCMY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoemoji/v51/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-r0gwuQeU.ttf" + }, + { + "family": "Noto Kufi Arabic", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v21", + "lastModified": "2024-02-29", + "files": { + "100": "https://fonts.gstatic.com/s/notokufiarabic/v21/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5v3obPnLSmf5yD.ttf", + "200": "https://fonts.gstatic.com/s/notokufiarabic/v21/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7v34bPnLSmf5yD.ttf", + "300": "https://fonts.gstatic.com/s/notokufiarabic/v21/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh4x34bPnLSmf5yD.ttf", + "regular": "https://fonts.gstatic.com/s/notokufiarabic/v21/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5v34bPnLSmf5yD.ttf", + "500": "https://fonts.gstatic.com/s/notokufiarabic/v21/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5d34bPnLSmf5yD.ttf", + "600": "https://fonts.gstatic.com/s/notokufiarabic/v21/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh6x2IbPnLSmf5yD.ttf", + "700": "https://fonts.gstatic.com/s/notokufiarabic/v21/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh6I2IbPnLSmf5yD.ttf", + "800": "https://fonts.gstatic.com/s/notokufiarabic/v21/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7v2IbPnLSmf5yD.ttf", + "900": "https://fonts.gstatic.com/s/notokufiarabic/v21/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh7G2IbPnLSmf5yD.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notokufiarabic/v21/CSRp4ydQnPyaDxEXLFF6LZVLKrodhu8t57o1kDc5Wh5v37bOlrA.ttf" + }, + { + "family": "Noto Music", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "music" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/notomusic/v20/pe0rMIiSN5pO63htf1sxIteQB9Zra1U.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notomusic/v20/pe0rMIiSN5pO63htf1sxEtaaAw.ttf" + }, + { + "family": "Noto Naskh Arabic", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v34", + "lastModified": "2024-04-12", + "files": { + "regular": "https://fonts.gstatic.com/s/notonaskharabic/v34/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwvc5krK0z9_Mnuw.ttf", + "500": "https://fonts.gstatic.com/s/notonaskharabic/v34/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwj85krK0z9_Mnuw.ttf", + "600": "https://fonts.gstatic.com/s/notonaskharabic/v34/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwY8lkrK0z9_Mnuw.ttf", + "700": "https://fonts.gstatic.com/s/notonaskharabic/v34/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwWslkrK0z9_Mnuw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notonaskharabic/v34/RrQ5bpV-9Dd1b1OAGA6M9PkyDuVBePeKNaxcsss0Y7bwvc5Urac3.ttf" + }, + { + "family": "Noto Nastaliq Urdu", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2023-03-21", + "files": { + "regular": "https://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qt_-DK2f2-_8mEw.ttf", + "500": "https://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qu3-DK2f2-_8mEw.ttf", + "600": "https://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3QgH5DK2f2-_8mEw.ttf", + "700": "https://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qjj5DK2f2-_8mEw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notonastaliqurdu/v20/LhWNMUPbN-oZdNFcBy1-DJYsEoTq5pudQ9L940pGPkB3Qt_-PKyV3w.ttf" + }, + { + "family": "Noto Rashi Hebrew", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "greek-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-06-05", + "files": { + "100": "https://fonts.gstatic.com/s/notorashihebrew/v26/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZB-DkRyq6Nf2pfA.ttf", + "200": "https://fonts.gstatic.com/s/notorashihebrew/v26/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZh-HkRyq6Nf2pfA.ttf", + "300": "https://fonts.gstatic.com/s/notorashihebrew/v26/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZWeHkRyq6Nf2pfA.ttf", + "regular": "https://fonts.gstatic.com/s/notorashihebrew/v26/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZB-HkRyq6Nf2pfA.ttf", + "500": "https://fonts.gstatic.com/s/notorashihebrew/v26/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZNeHkRyq6Nf2pfA.ttf", + "600": "https://fonts.gstatic.com/s/notorashihebrew/v26/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZ2ebkRyq6Nf2pfA.ttf", + "700": "https://fonts.gstatic.com/s/notorashihebrew/v26/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZ4ObkRyq6Nf2pfA.ttf", + "800": "https://fonts.gstatic.com/s/notorashihebrew/v26/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZh-bkRyq6Nf2pfA.ttf", + "900": "https://fonts.gstatic.com/s/notorashihebrew/v26/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZrubkRyq6Nf2pfA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notorashihebrew/v26/EJR_Qh82XsIK-QFmqXk4zvLwFVya0vFL-HlKM5e6C6HZB-HURiC-.ttf" + }, + { + "family": "Noto Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "devanagari", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v36", + "lastModified": "2024-02-16", + "files": { + "100": "https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyD9At9d41P6zHtY.ttf", + "200": "https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyB9A99d41P6zHtY.ttf", + "300": "https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyCjA99d41P6zHtY.ttf", + "regular": "https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyD9A99d41P6zHtY.ttf", + "500": "https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyDPA99d41P6zHtY.ttf", + "600": "https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyAjBN9d41P6zHtY.ttf", + "700": "https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyAaBN9d41P6zHtY.ttf", + "800": "https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyB9BN9d41P6zHtY.ttf", + "900": "https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyBUBN9d41P6zHtY.ttf", + "100italic": "https://fonts.gstatic.com/s/notosans/v36/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QDcf6VfYyWtY1rI.ttf", + "200italic": "https://fonts.gstatic.com/s/notosans/v36/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QLce6VfYyWtY1rI.ttf", + "300italic": "https://fonts.gstatic.com/s/notosans/v36/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QGke6VfYyWtY1rI.ttf", + "italic": "https://fonts.gstatic.com/s/notosans/v36/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QDce6VfYyWtY1rI.ttf", + "500italic": "https://fonts.gstatic.com/s/notosans/v36/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QAUe6VfYyWtY1rI.ttf", + "600italic": "https://fonts.gstatic.com/s/notosans/v36/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QOkZ6VfYyWtY1rI.ttf", + "700italic": "https://fonts.gstatic.com/s/notosans/v36/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QNAZ6VfYyWtY1rI.ttf", + "800italic": "https://fonts.gstatic.com/s/notosans/v36/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QLcZ6VfYyWtY1rI.ttf", + "900italic": "https://fonts.gstatic.com/s/notosans/v36/o-0kIpQlx3QUlC5A4PNr4C5OaxRsfNNlKbCePevHtVtX57DGjDU1QJ4Z6VfYyWtY1rI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyD9A-9c6Vc.ttf" + }, + { + "family": "Noto Sans Adlam", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "adlam", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2023-09-14", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansadlam/v22/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufnv0TGnBZLwhuvk.ttf", + "500": "https://fonts.gstatic.com/s/notosansadlam/v22/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufkn0TGnBZLwhuvk.ttf", + "600": "https://fonts.gstatic.com/s/notosansadlam/v22/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufqXzTGnBZLwhuvk.ttf", + "700": "https://fonts.gstatic.com/s/notosansadlam/v22/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufpzzTGnBZLwhuvk.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansadlam/v22/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufnv0fGjLYA.ttf" + }, + { + "family": "Noto Sans Adlam Unjoined", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "adlam", + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-07-01", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansadlamunjoined/v26/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_Ye35PMEe-E3slUg.ttf", + "500": "https://fonts.gstatic.com/s/notosansadlamunjoined/v26/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_Yd_5PMEe-E3slUg.ttf", + "600": "https://fonts.gstatic.com/s/notosansadlamunjoined/v26/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_YTP-PMEe-E3slUg.ttf", + "700": "https://fonts.gstatic.com/s/notosansadlamunjoined/v26/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_YQr-PMEe-E3slUg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansadlamunjoined/v26/P5sszY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcaYrzFTIjsPam_Ye35DMAU_A.ttf" + }, + { + "family": "Noto Sans Anatolian Hieroglyphs", + "variants": [ + "regular" + ], + "subsets": [ + "anatolian-hieroglyphs", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansanatolianhieroglyphs/v16/ijw9s4roRME5LLRxjsRb8A0gKPSWq4BbDmHHu6j2pEtUJzZWXybIymc5QYo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansanatolianhieroglyphs/v16/ijw9s4roRME5LLRxjsRb8A0gKPSWq4BbDmHHu6j2pEtUJzZWbyfCzg.ttf" + }, + { + "family": "Noto Sans Arabic", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "arabic" + ], + "version": "v18", + "lastModified": "2022-06-01", + "files": { + "100": "https://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyG2vu3CBFQLaig.ttf", + "200": "https://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfSGyvu3CBFQLaig.ttf", + "300": "https://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCflmyvu3CBFQLaig.ttf", + "regular": "https://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyGyvu3CBFQLaig.ttf", + "500": "https://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCf-myvu3CBFQLaig.ttf", + "600": "https://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfFmuvu3CBFQLaig.ttf", + "700": "https://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfL2uvu3CBFQLaig.ttf", + "800": "https://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfSGuvu3CBFQLaig.ttf", + "900": "https://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfYWuvu3CBFQLaig.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyGyfunqF.ttf" + }, + { + "family": "Noto Sans Armenian", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "armenian", + "latin", + "latin-ext" + ], + "version": "v43", + "lastModified": "2023-11-09", + "files": { + "100": "https://fonts.gstatic.com/s/notosansarmenian/v43/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxbq0iYy6zF3Eg.ttf", + "200": "https://fonts.gstatic.com/s/notosansarmenian/v43/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopxb60iYy6zF3Eg.ttf", + "300": "https://fonts.gstatic.com/s/notosansarmenian/v43/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLoqvb60iYy6zF3Eg.ttf", + "regular": "https://fonts.gstatic.com/s/notosansarmenian/v43/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxb60iYy6zF3Eg.ttf", + "500": "https://fonts.gstatic.com/s/notosansarmenian/v43/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorDb60iYy6zF3Eg.ttf", + "600": "https://fonts.gstatic.com/s/notosansarmenian/v43/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLoovaK0iYy6zF3Eg.ttf", + "700": "https://fonts.gstatic.com/s/notosansarmenian/v43/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLooWaK0iYy6zF3Eg.ttf", + "800": "https://fonts.gstatic.com/s/notosansarmenian/v43/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopxaK0iYy6zF3Eg.ttf", + "900": "https://fonts.gstatic.com/s/notosansarmenian/v43/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLopYaK0iYy6zF3Eg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansarmenian/v43/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxb50jaSo.ttf" + }, + { + "family": "Noto Sans Avestan", + "variants": [ + "regular" + ], + "subsets": [ + "avestan", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2023-09-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansavestan/v21/bWti7ejKfBziStx7lIzKOLQZKhIJkyu9SASLji8U.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansavestan/v21/bWti7ejKfBziStx7lIzKOLQZKhIJkxu8QgA.ttf" + }, + { + "family": "Noto Sans Balinese", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "balinese", + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2023-05-02", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov7fdhE5Vd222PPY.ttf", + "500": "https://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov4XdhE5Vd222PPY.ttf", + "600": "https://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov2nahE5Vd222PPY.ttf", + "700": "https://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov1DahE5Vd222PPY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov7fdtE9fcw.ttf" + }, + { + "family": "Noto Sans Bamum", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "bamum", + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2023-09-14", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansbamum/v27/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEddO-_gLykxEkxA.ttf", + "500": "https://fonts.gstatic.com/s/notosansbamum/v27/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEeVO-_gLykxEkxA.ttf", + "600": "https://fonts.gstatic.com/s/notosansbamum/v27/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEQlJ-_gLykxEkxA.ttf", + "700": "https://fonts.gstatic.com/s/notosansbamum/v27/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPETBJ-_gLykxEkxA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansbamum/v27/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEddOy_kBzg.ttf" + }, + { + "family": "Noto Sans Bassa Vah", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "bassa-vah", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2022-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MaAc6p34gH-GD7.ttf", + "500": "https://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MoAc6p34gH-GD7.ttf", + "600": "https://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4PEBs6p34gH-GD7.ttf", + "700": "https://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4P9Bs6p34gH-GD7.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MaAf6o1Yw.ttf" + }, + { + "family": "Noto Sans Batak", + "variants": [ + "regular" + ], + "subsets": [ + "batak", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-02-29", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansbatak/v20/gok2H6TwAEdtF9N8-mdTCQvT-Zdgo4_PHuk74A.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansbatak/v20/gok2H6TwAEdtF9N8-mdTCQvT-ZdQooXL.ttf" + }, + { + "family": "Noto Sans Bengali", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "bengali", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2022-09-22", + "files": { + "100": "https://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolKudCk8izI0lc.ttf", + "200": "https://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsglLudCk8izI0lc.ttf", + "300": "https://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmstdLudCk8izI0lc.ttf", + "regular": "https://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolLudCk8izI0lc.ttf", + "500": "https://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsrtLudCk8izI0lc.ttf", + "600": "https://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsldMudCk8izI0lc.ttf", + "700": "https://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6Kmsm5MudCk8izI0lc.ttf", + "800": "https://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsglMudCk8izI0lc.ttf", + "900": "https://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsiBMudCk8izI0lc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolLidGu9g.ttf" + }, + { + "family": "Noto Sans Bhaiksuki", + "variants": [ + "regular" + ], + "subsets": [ + "bhaiksuki", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansbhaiksuki/v17/UcC63EosKniBH4iELXATsSBWdvUHXxhj8rLUdU4wh9U.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansbhaiksuki/v17/UcC63EosKniBH4iELXATsSBWdvUHXxhjwrPecQ.ttf" + }, + { + "family": "Noto Sans Brahmi", + "variants": [ + "regular" + ], + "subsets": [ + "brahmi", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v19", + "lastModified": "2024-02-29", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansbrahmi/v19/vEFK2-VODB8RrNDvZSUmQQIIByV18tK1W77HtMo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansbrahmi/v19/vEFK2-VODB8RrNDvZSUmQQIIByV1wtO_Xw.ttf" + }, + { + "family": "Noto Sans Buginese", + "variants": [ + "regular" + ], + "subsets": [ + "buginese", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2023-05-02", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansbuginese/v18/esDM30ldNv-KYGGJpKGk18phe_7Da6_gtfuEXLmNtw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansbuginese/v18/esDM30ldNv-KYGGJpKGk18phe_7Da6_QtPGA.ttf" + }, + { + "family": "Noto Sans Buhid", + "variants": [ + "regular" + ], + "subsets": [ + "buhid", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2023-09-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansbuhid/v22/Dxxy8jiXMW75w3OmoDXVWJD7YwzAe6tgnaFoGA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansbuhid/v22/Dxxy8jiXMW75w3OmoDXVWJD7YwzweqFk.ttf" + }, + { + "family": "Noto Sans Canadian Aboriginal", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "canadian-aboriginal", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v26", + "lastModified": "2024-05-02", + "files": { + "100": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v26/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLj_yAsg0q0uhQ.ttf", + "200": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v26/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig2Ln_yAsg0q0uhQ.ttf", + "300": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v26/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigBrn_yAsg0q0uhQ.ttf", + "regular": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v26/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLn_yAsg0q0uhQ.ttf", + "500": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v26/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigarn_yAsg0q0uhQ.ttf", + "600": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v26/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzighr7_yAsg0q0uhQ.ttf", + "700": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v26/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigv77_yAsg0q0uhQ.ttf", + "800": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v26/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig2L7_yAsg0q0uhQ.ttf", + "900": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v26/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzig8b7_yAsg0q0uhQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanscanadianaboriginal/v26/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLnPyQEk.ttf" + }, + { + "family": "Noto Sans Carian", + "variants": [ + "regular" + ], + "subsets": [ + "carian", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanscarian/v16/LDIpaoiONgYwA9Yc6f0gUILeMIOgs7ob9yGLmfI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanscarian/v16/LDIpaoiONgYwA9Yc6f0gUILeMIOgg7sR8w.ttf" + }, + { + "family": "Noto Sans Caucasian Albanian", + "variants": [ + "regular" + ], + "subsets": [ + "caucasian-albanian", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2023-10-25", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanscaucasianalbanian/v18/nKKA-HM_FYFRJvXzVXaANsU0VzsAc46QGOkWytlTs-TXrYDmoVmRSZo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanscaucasianalbanian/v18/nKKA-HM_FYFRJvXzVXaANsU0VzsAc46QGOkWytlTs-TXnYHspQ.ttf" + }, + { + "family": "Noto Sans Chakma", + "variants": [ + "regular" + ], + "subsets": [ + "chakma", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2022-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanschakma/v17/Y4GQYbJ8VTEp4t3MKJSMjg5OIzhi4JjTQhYBeYo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanschakma/v17/Y4GQYbJ8VTEp4t3MKJSMjg5OIzhi0JnZRg.ttf" + }, + { + "family": "Noto Sans Cham", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cham", + "latin", + "latin-ext" + ], + "version": "v31", + "lastModified": "2024-07-30", + "files": { + "100": "https://fonts.gstatic.com/s/notosanscham/v31/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcER0cv7GykboaLg.ttf", + "200": "https://fonts.gstatic.com/s/notosanscham/v31/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfckRwcv7GykboaLg.ttf", + "300": "https://fonts.gstatic.com/s/notosanscham/v31/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcTxwcv7GykboaLg.ttf", + "regular": "https://fonts.gstatic.com/s/notosanscham/v31/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcERwcv7GykboaLg.ttf", + "500": "https://fonts.gstatic.com/s/notosanscham/v31/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcIxwcv7GykboaLg.ttf", + "600": "https://fonts.gstatic.com/s/notosanscham/v31/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfczxscv7GykboaLg.ttf", + "700": "https://fonts.gstatic.com/s/notosanscham/v31/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfc9hscv7GykboaLg.ttf", + "800": "https://fonts.gstatic.com/s/notosanscham/v31/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfckRscv7GykboaLg.ttf", + "900": "https://fonts.gstatic.com/s/notosanscham/v31/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcuBscv7GykboaLg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanscham/v31/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcERwsvru2.ttf" + }, + { + "family": "Noto Sans Cherokee", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cherokee", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2023-09-14", + "files": { + "100": "https://fonts.gstatic.com/s/notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5ODkm5rAffjl0.ttf", + "200": "https://fonts.gstatic.com/s/notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWq5PDkm5rAffjl0.ttf", + "300": "https://fonts.gstatic.com/s/notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWnBPDkm5rAffjl0.ttf", + "regular": "https://fonts.gstatic.com/s/notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5PDkm5rAffjl0.ttf", + "500": "https://fonts.gstatic.com/s/notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWhxPDkm5rAffjl0.ttf", + "600": "https://fonts.gstatic.com/s/notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWvBIDkm5rAffjl0.ttf", + "700": "https://fonts.gstatic.com/s/notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWslIDkm5rAffjl0.ttf", + "800": "https://fonts.gstatic.com/s/notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWq5IDkm5rAffjl0.ttf", + "900": "https://fonts.gstatic.com/s/notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWodIDkm5rAffjl0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanscherokee/v20/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5PPkizqA.ttf" + }, + { + "family": "Noto Sans Chorasmian", + "variants": [ + "regular" + ], + "subsets": [ + "chorasmian", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v3", + "lastModified": "2024-01-26", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanschorasmian/v3/MQpL-X6uKMC7ROPLwRnI9ULxK_7NVkf8S5vyoH7w4g9b.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanschorasmian/v3/MQpL-X6uKMC7ROPLwRnI9ULxK_7NVkf8S6vzqno.ttf" + }, + { + "family": "Noto Sans Coptic", + "variants": [ + "regular" + ], + "subsets": [ + "coptic", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2023-12-14", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanscoptic/v21/iJWfBWmUZi_OHPqn4wq6kgqumOEd78u_VG0xR4Y.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanscoptic/v21/iJWfBWmUZi_OHPqn4wq6kgqumOEd38q1UA.ttf" + }, + { + "family": "Noto Sans Cuneiform", + "variants": [ + "regular" + ], + "subsets": [ + "cuneiform", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanscuneiform/v17/bMrrmTWK7YY-MF22aHGGd7H8PhJtvBDWgb9JlRQueeQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanscuneiform/v17/bMrrmTWK7YY-MF22aHGGd7H8PhJtvBDWsb5DkQ.ttf" + }, + { + "family": "Noto Sans Cypriot", + "variants": [ + "regular" + ], + "subsets": [ + "cypriot", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2023-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanscypriot/v19/8AtzGta9PYqQDjyp79a6f8Cj-3a3cxIsK5MPpahF.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanscypriot/v19/8AtzGta9PYqQDjyp79a6f8Cj-3a3cyItIZc.ttf" + }, + { + "family": "Noto Sans Cypro Minoan", + "variants": [ + "regular" + ], + "subsets": [ + "cypro-minoan", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanscyprominoan/v1/2Eb2L_dtDUlkNmPHB_UVtEzp3ZlPGqZ_4nAGq9eSf8_eQSE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanscyprominoan/v1/2Eb2L_dtDUlkNmPHB_UVtEzp3ZlPGqZ_4nAGm9aYew.ttf" + }, + { + "family": "Noto Sans Deseret", + "variants": [ + "regular" + ], + "subsets": [ + "deseret", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansdeseret/v17/MwQsbgPp1eKH6QsAVuFb9AZM6MMr2Vq9ZnJSZtQG.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansdeseret/v17/MwQsbgPp1eKH6QsAVuFb9AZM6MMr2Wq8bHY.ttf" + }, + { + "family": "Noto Sans Devanagari", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-07-01", + "files": { + "100": "https://fonts.gstatic.com/s/notosansdevanagari/v26/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQky-AzoFoW4Ow.ttf", + "200": "https://fonts.gstatic.com/s/notosansdevanagari/v26/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlfQly-AzoFoW4Ow.ttf", + "300": "https://fonts.gstatic.com/s/notosansdevanagari/v26/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlSoly-AzoFoW4Ow.ttf", + "regular": "https://fonts.gstatic.com/s/notosansdevanagari/v26/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQly-AzoFoW4Ow.ttf", + "500": "https://fonts.gstatic.com/s/notosansdevanagari/v26/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlUYly-AzoFoW4Ow.ttf", + "600": "https://fonts.gstatic.com/s/notosansdevanagari/v26/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08Alaoiy-AzoFoW4Ow.ttf", + "700": "https://fonts.gstatic.com/s/notosansdevanagari/v26/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlZMiy-AzoFoW4Ow.ttf", + "800": "https://fonts.gstatic.com/s/notosansdevanagari/v26/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlfQiy-AzoFoW4Ow.ttf", + "900": "https://fonts.gstatic.com/s/notosansdevanagari/v26/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08Ald0iy-AzoFoW4Ow.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansdevanagari/v26/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQl--E5pA.ttf" + }, + { + "family": "Noto Sans Display", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v26", + "lastModified": "2023-09-14", + "files": { + "100": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_3cLVTGQ2iHrvWM.ttf", + "200": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp__cKVTGQ2iHrvWM.ttf", + "300": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_ykKVTGQ2iHrvWM.ttf", + "regular": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_3cKVTGQ2iHrvWM.ttf", + "500": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_0UKVTGQ2iHrvWM.ttf", + "600": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_6kNVTGQ2iHrvWM.ttf", + "700": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_5ANVTGQ2iHrvWM.ttf", + "800": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp__cNVTGQ2iHrvWM.ttf", + "900": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_94NVTGQ2iHrvWM.ttf", + "100italic": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JvXOa3gPurWM9uQ.ttf", + "200italic": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JPXKa3gPurWM9uQ.ttf", + "300italic": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9J43Ka3gPurWM9uQ.ttf", + "italic": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JvXKa3gPurWM9uQ.ttf", + "500italic": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9Jj3Ka3gPurWM9uQ.ttf", + "600italic": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JY3Wa3gPurWM9uQ.ttf", + "700italic": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JWnWa3gPurWM9uQ.ttf", + "800italic": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JPXWa3gPurWM9uQ.ttf", + "900italic": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpZK4fy6r6tOBEJg0IAKzqdFZVZxrktbnDB5UzBIup9PwAcHtEsOFNBZqyu6r9JFHWa3gPurWM9uQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansdisplay/v26/RLpbK4fy6r6tOBEJg0IAKzqdFZVZxpMkXJMhnB9XjO1o90LuV-PT4Doq_AKp_3cKZTCa3g.ttf" + }, + { + "family": "Noto Sans Duployan", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "duployan", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-07-01", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansduployan/v18/gokzH7nwAEdtF9N8-mdTDx_X9JM5wsvrFsIn6WYDvA.ttf", + "700": "https://fonts.gstatic.com/s/notosansduployan/v18/gokwH7nwAEdtF9N8-mdTDx_X9JM5wsvTqu0D4U0ftZS-Iw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansduployan/v18/gokzH7nwAEdtF9N8-mdTDx_X9JM5wsvbF8gj.ttf" + }, + { + "family": "Noto Sans Egyptian Hieroglyphs", + "variants": [ + "regular" + ], + "subsets": [ + "egyptian-hieroglyphs", + "latin", + "latin-ext" + ], + "version": "v29", + "lastModified": "2024-05-02", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansegyptianhieroglyphs/v29/vEF42-tODB8RrNDvZSUmRhcQHzx1s7y_F9-j3qSzEcbEYindSVK8xRg7iw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansegyptianhieroglyphs/v29/vEF42-tODB8RrNDvZSUmRhcQHzx1s7y_F9-j3qSzEcbEYintSFi4.ttf" + }, + { + "family": "Noto Sans Elbasan", + "variants": [ + "regular" + ], + "subsets": [ + "elbasan", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2023-05-23", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanselbasan/v16/-F6rfiZqLzI2JPCgQBnw400qp1trvHdlre4dFcFh.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanselbasan/v16/-F6rfiZqLzI2JPCgQBnw400qp1trvEdkp-o.ttf" + }, + { + "family": "Noto Sans Elymaic", + "variants": [ + "regular" + ], + "subsets": [ + "elymaic", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2023-10-25", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanselymaic/v17/UqyKK9YTJW5liNMhTMqe9vUFP65ZD4AjWOT0zi2V.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanselymaic/v17/UqyKK9YTJW5liNMhTMqe9vUFP65ZD7AiUuA.ttf" + }, + { + "family": "Noto Sans Ethiopic", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "ethiopic", + "latin", + "latin-ext" + ], + "version": "v47", + "lastModified": "2023-09-13", + "files": { + "100": "https://fonts.gstatic.com/s/notosansethiopic/v47/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T35OKqDjwmfeaY9u.ttf", + "200": "https://fonts.gstatic.com/s/notosansethiopic/v47/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37OK6DjwmfeaY9u.ttf", + "300": "https://fonts.gstatic.com/s/notosansethiopic/v47/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T34QK6DjwmfeaY9u.ttf", + "regular": "https://fonts.gstatic.com/s/notosansethiopic/v47/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T35OK6DjwmfeaY9u.ttf", + "500": "https://fonts.gstatic.com/s/notosansethiopic/v47/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T358K6DjwmfeaY9u.ttf", + "600": "https://fonts.gstatic.com/s/notosansethiopic/v47/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T36QLKDjwmfeaY9u.ttf", + "700": "https://fonts.gstatic.com/s/notosansethiopic/v47/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T36pLKDjwmfeaY9u.ttf", + "800": "https://fonts.gstatic.com/s/notosansethiopic/v47/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37OLKDjwmfeaY9u.ttf", + "900": "https://fonts.gstatic.com/s/notosansethiopic/v47/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T37nLKDjwmfeaY9u.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansethiopic/v47/7cHPv50vjIepfJVOZZgcpQ5B9FBTH9KGNfhSTgtoow1KVnIvyBoMSzUMacb-T35OK5DiyGM.ttf" + }, + { + "family": "Noto Sans Georgian", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic-ext", + "georgian", + "greek-ext", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v44", + "lastModified": "2024-02-29", + "files": { + "100": "https://fonts.gstatic.com/s/notosansgeorgian/v44/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzVj-f5WK0OQV.ttf", + "200": "https://fonts.gstatic.com/s/notosansgeorgian/v44/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptnzFj-f5WK0OQV.ttf", + "300": "https://fonts.gstatic.com/s/notosansgeorgian/v44/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpu5zFj-f5WK0OQV.ttf", + "regular": "https://fonts.gstatic.com/s/notosansgeorgian/v44/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzFj-f5WK0OQV.ttf", + "500": "https://fonts.gstatic.com/s/notosansgeorgian/v44/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvVzFj-f5WK0OQV.ttf", + "600": "https://fonts.gstatic.com/s/notosansgeorgian/v44/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdps5y1j-f5WK0OQV.ttf", + "700": "https://fonts.gstatic.com/s/notosansgeorgian/v44/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpsAy1j-f5WK0OQV.ttf", + "800": "https://fonts.gstatic.com/s/notosansgeorgian/v44/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptny1j-f5WK0OQV.ttf", + "900": "https://fonts.gstatic.com/s/notosansgeorgian/v44/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdptOy1j-f5WK0OQV.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansgeorgian/v44/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzGj_dZE.ttf" + }, + { + "family": "Noto Sans Glagolitic", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic-ext", + "glagolitic", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v18", + "lastModified": "2024-01-26", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansglagolitic/v18/1q2ZY4-BBFBst88SU_tOj4J-4yuNF_HI4ERK4Amu7nM1.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansglagolitic/v18/1q2ZY4-BBFBst88SU_tOj4J-4yuNF_HI4HRL6g0.ttf" + }, + { + "family": "Noto Sans Gothic", + "variants": [ + "regular" + ], + "subsets": [ + "gothic", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansgothic/v16/TuGKUUVzXI5FBtUq5a8bj6wRbzxTFMX40kFQRx0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansgothic/v16/TuGKUUVzXI5FBtUq5a8bj6wRbzxTJMTy1g.ttf" + }, + { + "family": "Noto Sans Grantha", + "variants": [ + "regular" + ], + "subsets": [ + "grantha", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-06-10", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansgrantha/v19/3y976akwcCjmsU8NDyrKo3IQfQ4o-r8cFeulHc6N.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansgrantha/v19/3y976akwcCjmsU8NDyrKo3IQfQ4o-o8dH-8.ttf" + }, + { + "family": "Noto Sans Gujarati", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v25", + "lastModified": "2023-11-28", + "files": { + "100": "https://fonts.gstatic.com/s/notosansgujarati/v25/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFgPM_OdiEH0s.ttf", + "200": "https://fonts.gstatic.com/s/notosansgujarati/v25/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wpFwPM_OdiEH0s.ttf", + "300": "https://fonts.gstatic.com/s/notosansgujarati/v25/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_z3FwPM_OdiEH0s.ttf", + "regular": "https://fonts.gstatic.com/s/notosansgujarati/v25/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFwPM_OdiEH0s.ttf", + "500": "https://fonts.gstatic.com/s/notosansgujarati/v25/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ybFwPM_OdiEH0s.ttf", + "600": "https://fonts.gstatic.com/s/notosansgujarati/v25/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_x3EAPM_OdiEH0s.ttf", + "700": "https://fonts.gstatic.com/s/notosansgujarati/v25/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_xOEAPM_OdiEH0s.ttf", + "800": "https://fonts.gstatic.com/s/notosansgujarati/v25/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wpEAPM_OdiEH0s.ttf", + "900": "https://fonts.gstatic.com/s/notosansgujarati/v25/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_wAEAPM_OdiEH0s.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansgujarati/v25/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFzPN9uM.ttf" + }, + { + "family": "Noto Sans Gunjala Gondi", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "gunjala-gondi", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansgunjalagondi/v19/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYL4YDE4J4vCTxEJQ.ttf", + "500": "https://fonts.gstatic.com/s/notosansgunjalagondi/v19/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYL04DE4J4vCTxEJQ.ttf", + "600": "https://fonts.gstatic.com/s/notosansgunjalagondi/v19/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYLP4fE4J4vCTxEJQ.ttf", + "700": "https://fonts.gstatic.com/s/notosansgunjalagondi/v19/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYLBofE4J4vCTxEJQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansgunjalagondi/v19/bWtX7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5g0ef3PLtymzNxYL4YD04ZQr.ttf" + }, + { + "family": "Noto Sans Gurmukhi", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "gurmukhi", + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2023-04-27", + "files": { + "100": "https://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1Oe3bxZ_trdp7h.ttf", + "200": "https://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3OenbxZ_trdp7h.ttf", + "300": "https://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG0QenbxZ_trdp7h.ttf", + "regular": "https://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1OenbxZ_trdp7h.ttf", + "500": "https://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG18enbxZ_trdp7h.ttf", + "600": "https://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG2QfXbxZ_trdp7h.ttf", + "700": "https://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG2pfXbxZ_trdp7h.ttf", + "800": "https://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3OfXbxZ_trdp7h.ttf", + "900": "https://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG3nfXbxZ_trdp7h.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1Oekbwbf8.ttf" + }, + { + "family": "Noto Sans HK", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "chinese-hongkong", + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v32", + "lastModified": "2024-07-30", + "files": { + "100": "https://fonts.gstatic.com/s/notosanshk/v32/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qHB_-oWTiYjNvVA.ttf", + "200": "https://fonts.gstatic.com/s/notosanshk/v32/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qPB--oWTiYjNvVA.ttf", + "300": "https://fonts.gstatic.com/s/notosanshk/v32/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qC5--oWTiYjNvVA.ttf", + "regular": "https://fonts.gstatic.com/s/notosanshk/v32/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qHB--oWTiYjNvVA.ttf", + "500": "https://fonts.gstatic.com/s/notosanshk/v32/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qEJ--oWTiYjNvVA.ttf", + "600": "https://fonts.gstatic.com/s/notosanshk/v32/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qK55-oWTiYjNvVA.ttf", + "700": "https://fonts.gstatic.com/s/notosanshk/v32/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qJd5-oWTiYjNvVA.ttf", + "800": "https://fonts.gstatic.com/s/notosanshk/v32/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qPB5-oWTiYjNvVA.ttf", + "900": "https://fonts.gstatic.com/s/notosanshk/v32/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qNl5-oWTiYjNvVA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanshk/v32/nKKF-GM_FYFRJvXzVXaAPe97P1KHynJFP716qHB-yoSZjQ.ttf" + }, + { + "family": "Noto Sans Hanifi Rohingya", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "hanifi-rohingya", + "latin", + "latin-ext" + ], + "version": "v28", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanshanifirohingya/v28/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIYY4j6vvcudK8rN.ttf", + "500": "https://fonts.gstatic.com/s/notosanshanifirohingya/v28/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIYq4j6vvcudK8rN.ttf", + "600": "https://fonts.gstatic.com/s/notosanshanifirohingya/v28/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIbG5T6vvcudK8rN.ttf", + "700": "https://fonts.gstatic.com/s/notosanshanifirohingya/v28/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIb_5T6vvcudK8rN.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanshanifirohingya/v28/5h17iYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLNyo3tiaiuSIAqrIYY4g6ut88.ttf" + }, + { + "family": "Noto Sans Hanunoo", + "variants": [ + "regular" + ], + "subsets": [ + "hanunoo", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2023-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanshanunoo/v21/f0Xs0fCv8dxkDWlZSoXOj6CphMloFsEsEpgL_ix2.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanshanunoo/v21/f0Xs0fCv8dxkDWlZSoXOj6CphMloFvEtGJw.ttf" + }, + { + "family": "Noto Sans Hatran", + "variants": [ + "regular" + ], + "subsets": [ + "hatran", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2023-07-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanshatran/v16/A2BBn4Ne0RgnVF3Lnko-0sOBIfL_mM83r1nwzDs.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanshatran/v16/A2BBn4Ne0RgnVF3Lnko-0sOBIfL_qM49qw.ttf" + }, + { + "family": "Noto Sans Hebrew", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic-ext", + "greek-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v46", + "lastModified": "2024-07-01", + "files": { + "100": "https://fonts.gstatic.com/s/notosanshebrew/v46/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4utoiJltutR2g.ttf", + "200": "https://fonts.gstatic.com/s/notosanshebrew/v46/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX94qtoiJltutR2g.ttf", + "300": "https://fonts.gstatic.com/s/notosanshebrew/v46/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXKYqtoiJltutR2g.ttf", + "regular": "https://fonts.gstatic.com/s/notosanshebrew/v46/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4qtoiJltutR2g.ttf", + "500": "https://fonts.gstatic.com/s/notosanshebrew/v46/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXRYqtoiJltutR2g.ttf", + "600": "https://fonts.gstatic.com/s/notosanshebrew/v46/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXqY2toiJltutR2g.ttf", + "700": "https://fonts.gstatic.com/s/notosanshebrew/v46/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXkI2toiJltutR2g.ttf", + "800": "https://fonts.gstatic.com/s/notosanshebrew/v46/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX942toiJltutR2g.ttf", + "900": "https://fonts.gstatic.com/s/notosanshebrew/v46/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiX3o2toiJltutR2g.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanshebrew/v46/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4qdoyhh.ttf" + }, + { + "family": "Noto Sans Imperial Aramaic", + "variants": [ + "regular" + ], + "subsets": [ + "imperial-aramaic", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-07-01", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansimperialaramaic/v17/a8IMNpjwKmHXpgXbMIsbTc_kvks91LlLetBr5itQrtdml3YfPNno.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansimperialaramaic/v17/a8IMNpjwKmHXpgXbMIsbTc_kvks91LlLetBr5itQrudnnXI.ttf" + }, + { + "family": "Noto Sans Indic Siyaq Numbers", + "variants": [ + "regular" + ], + "subsets": [ + "indic-siyaq-numbers", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansindicsiyaqnumbers/v16/6xK5dTJFKcWIu4bpRBjRZRpsIYHabOeZ8UZLubTzpXNHKx2WPOpVd5Iu.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansindicsiyaqnumbers/v16/6xK5dTJFKcWIu4bpRBjRZRpsIYHabOeZ8UZLubTzpXNHKy2XNu4.ttf" + }, + { + "family": "Noto Sans Inscriptional Pahlavi", + "variants": [ + "regular" + ], + "subsets": [ + "inscriptional-pahlavi", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-07-01", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansinscriptionalpahlavi/v17/ll8UK3GaVDuxR-TEqFPIbsR79Xxz9WEKbwsjpz7VklYlC7FCVtqVOAYK0QA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansinscriptionalpahlavi/v17/ll8UK3GaVDuxR-TEqFPIbsR79Xxz9WEKbwsjpz7VklYlC7FCZtufPA.ttf" + }, + { + "family": "Noto Sans Inscriptional Parthian", + "variants": [ + "regular" + ], + "subsets": [ + "inscriptional-parthian", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-07-01", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansinscriptionalparthian/v17/k3k7o-IMPvpLmixcA63oYi-yStDkgXuXncL7dzfW3P4TAJ2yklBJ2jNkLlLr.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansinscriptionalparthian/v17/k3k7o-IMPvpLmixcA63oYi-yStDkgXuXncL7dzfW3P4TAJ2ykmBI0Dc.ttf" + }, + { + "family": "Noto Sans JP", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v53", + "lastModified": "2024-08-07", + "files": { + "100": "https://fonts.gstatic.com/s/notosansjp/v53/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEi75vY0rw-oME.ttf", + "200": "https://fonts.gstatic.com/s/notosansjp/v53/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFJEj75vY0rw-oME.ttf", + "300": "https://fonts.gstatic.com/s/notosansjp/v53/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFE8j75vY0rw-oME.ttf", + "regular": "https://fonts.gstatic.com/s/notosansjp/v53/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEj75vY0rw-oME.ttf", + "500": "https://fonts.gstatic.com/s/notosansjp/v53/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFCMj75vY0rw-oME.ttf", + "600": "https://fonts.gstatic.com/s/notosansjp/v53/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFM8k75vY0rw-oME.ttf", + "700": "https://fonts.gstatic.com/s/notosansjp/v53/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFPYk75vY0rw-oME.ttf", + "800": "https://fonts.gstatic.com/s/notosansjp/v53/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFJEk75vY0rw-oME.ttf", + "900": "https://fonts.gstatic.com/s/notosansjp/v53/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFLgk75vY0rw-oME.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansjp/v53/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEj35rS1g.ttf" + }, + { + "family": "Noto Sans Javanese", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "javanese", + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansjavanese/v23/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxJnkFFliZYWj4O8.ttf", + "500": "https://fonts.gstatic.com/s/notosansjavanese/v23/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxKvkFFliZYWj4O8.ttf", + "600": "https://fonts.gstatic.com/s/notosansjavanese/v23/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxEfjFFliZYWj4O8.ttf", + "700": "https://fonts.gstatic.com/s/notosansjavanese/v23/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxH7jFFliZYWj4O8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansjavanese/v23/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxJnkJFhoYQ.ttf" + }, + { + "family": "Noto Sans KR", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "korean", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v36", + "lastModified": "2023-08-17", + "files": { + "100": "https://fonts.gstatic.com/s/notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzuozeLTq8H4hfeE.ttf", + "200": "https://fonts.gstatic.com/s/notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzmoyeLTq8H4hfeE.ttf", + "300": "https://fonts.gstatic.com/s/notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzrQyeLTq8H4hfeE.ttf", + "regular": "https://fonts.gstatic.com/s/notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzuoyeLTq8H4hfeE.ttf", + "500": "https://fonts.gstatic.com/s/notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzztgyeLTq8H4hfeE.ttf", + "600": "https://fonts.gstatic.com/s/notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzjQ1eLTq8H4hfeE.ttf", + "700": "https://fonts.gstatic.com/s/notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzg01eLTq8H4hfeE.ttf", + "800": "https://fonts.gstatic.com/s/notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzmo1eLTq8H4hfeE.ttf", + "900": "https://fonts.gstatic.com/s/notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzkM1eLTq8H4hfeE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanskr/v36/PbyxFmXiEBPT4ITbgNA5Cgms3VYcOA-vvnIzzuoySLXg9A.ttf" + }, + { + "family": "Noto Sans Kaithi", + "variants": [ + "regular" + ], + "subsets": [ + "kaithi", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-07-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanskaithi/v22/buEtppS9f8_vkXadMBJJu0tWjLwjQi0KdoZIKlo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanskaithi/v22/buEtppS9f8_vkXadMBJJu0tWjLwjciwAcg.ttf" + }, + { + "family": "Noto Sans Kannada", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "kannada", + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2023-10-25", + "files": { + "100": "https://fonts.gstatic.com/s/notosanskannada/v27/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvMzSIMLsPKrkY.ttf", + "200": "https://fonts.gstatic.com/s/notosanskannada/v27/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrLvNzSIMLsPKrkY.ttf", + "300": "https://fonts.gstatic.com/s/notosanskannada/v27/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrGXNzSIMLsPKrkY.ttf", + "regular": "https://fonts.gstatic.com/s/notosanskannada/v27/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvNzSIMLsPKrkY.ttf", + "500": "https://fonts.gstatic.com/s/notosanskannada/v27/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrAnNzSIMLsPKrkY.ttf", + "600": "https://fonts.gstatic.com/s/notosanskannada/v27/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrOXKzSIMLsPKrkY.ttf", + "700": "https://fonts.gstatic.com/s/notosanskannada/v27/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrNzKzSIMLsPKrkY.ttf", + "800": "https://fonts.gstatic.com/s/notosanskannada/v27/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrLvKzSIMLsPKrkY.ttf", + "900": "https://fonts.gstatic.com/s/notosanskannada/v27/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrJLKzSIMLsPKrkY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanskannada/v27/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvN_SMGKg.ttf" + }, + { + "family": "Noto Sans Kawi", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "kawi", + "latin", + "latin-ext" + ], + "version": "v3", + "lastModified": "2023-10-25", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanskawi/v3/92zBtBJLNqsg7tCciW0EPHNNh1ZgbtGWiTYDjvnK4AhmCpRyMjXVsQ.ttf", + "500": "https://fonts.gstatic.com/s/notosanskawi/v3/92zBtBJLNqsg7tCciW0EPHNNh1ZgbtGWiTYDjvnK0ghmCpRyMjXVsQ.ttf", + "600": "https://fonts.gstatic.com/s/notosanskawi/v3/92zBtBJLNqsg7tCciW0EPHNNh1ZgbtGWiTYDjvnKPg9mCpRyMjXVsQ.ttf", + "700": "https://fonts.gstatic.com/s/notosanskawi/v3/92zBtBJLNqsg7tCciW0EPHNNh1ZgbtGWiTYDjvnKBw9mCpRyMjXVsQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanskawi/v3/92zBtBJLNqsg7tCciW0EPHNNh1ZgbtGWiTYDjvnK4AhWC552.ttf" + }, + { + "family": "Noto Sans Kayah Li", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "kayah-li", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2023-09-14", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanskayahli/v21/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WCc3CZH4EXLuKVM.ttf", + "500": "https://fonts.gstatic.com/s/notosanskayahli/v21/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WBU3CZH4EXLuKVM.ttf", + "600": "https://fonts.gstatic.com/s/notosanskayahli/v21/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WPkwCZH4EXLuKVM.ttf", + "700": "https://fonts.gstatic.com/s/notosanskayahli/v21/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WMAwCZH4EXLuKVM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanskayahli/v21/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WCc3OZDyFQ.ttf" + }, + { + "family": "Noto Sans Kharoshthi", + "variants": [ + "regular" + ], + "subsets": [ + "kharoshthi", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2023-04-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanskharoshthi/v16/Fh4qPiLjKS30-P4-pGMMXCCfvkc5Vd7KE5z4rFyx5mR1.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanskharoshthi/v16/Fh4qPiLjKS30-P4-pGMMXCCfvkc5Vd7KE6z5plg.ttf" + }, + { + "family": "Noto Sans Khmer", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "khmer", + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2023-10-25", + "files": { + "100": "https://fonts.gstatic.com/s/notosanskhmer/v24/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAZz4kAbrddiA.ttf", + "200": "https://fonts.gstatic.com/s/notosanskhmer/v24/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYsNAJz4kAbrddiA.ttf", + "300": "https://fonts.gstatic.com/s/notosanskhmer/v24/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYvTAJz4kAbrddiA.ttf", + "regular": "https://fonts.gstatic.com/s/notosanskhmer/v24/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAJz4kAbrddiA.ttf", + "500": "https://fonts.gstatic.com/s/notosanskhmer/v24/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYu_AJz4kAbrddiA.ttf", + "600": "https://fonts.gstatic.com/s/notosanskhmer/v24/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYtTB5z4kAbrddiA.ttf", + "700": "https://fonts.gstatic.com/s/notosanskhmer/v24/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYtqB5z4kAbrddiA.ttf", + "800": "https://fonts.gstatic.com/s/notosanskhmer/v24/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYsNB5z4kAbrddiA.ttf", + "900": "https://fonts.gstatic.com/s/notosanskhmer/v24/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYskB5z4kAbrddiA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanskhmer/v24/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAKz5mgI.ttf" + }, + { + "family": "Noto Sans Khojki", + "variants": [ + "regular" + ], + "subsets": [ + "khojki", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-02-16", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanskhojki/v19/-nFnOHM29Oofr2wohFbTuPPKVWpmK_d709jy92k.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanskhojki/v19/-nFnOHM29Oofr2wohFbTuPPKVWpmG_Zx1w.ttf" + }, + { + "family": "Noto Sans Khudawadi", + "variants": [ + "regular" + ], + "subsets": [ + "khudawadi", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-08-21", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanskhudawadi/v22/fdNi9t6ZsWBZ2k5ltHN73zZ5hc8HANlHIjRnVVXz9MY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanskhudawadi/v22/fdNi9t6ZsWBZ2k5ltHN73zZ5hc8HANlHEjVtUQ.ttf" + }, + { + "family": "Noto Sans Lao", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "lao", + "latin", + "latin-ext" + ], + "version": "v30", + "lastModified": "2023-09-27", + "files": { + "100": "https://fonts.gstatic.com/s/notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccfdf5MK3riB2w.ttf", + "200": "https://fonts.gstatic.com/s/notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt48cbdf5MK3riB2w.ttf", + "300": "https://fonts.gstatic.com/s/notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4L8bdf5MK3riB2w.ttf", + "regular": "https://fonts.gstatic.com/s/notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccbdf5MK3riB2w.ttf", + "500": "https://fonts.gstatic.com/s/notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4Q8bdf5MK3riB2w.ttf", + "600": "https://fonts.gstatic.com/s/notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4r8Hdf5MK3riB2w.ttf", + "700": "https://fonts.gstatic.com/s/notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4lsHdf5MK3riB2w.ttf", + "800": "https://fonts.gstatic.com/s/notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt48cHdf5MK3riB2w.ttf", + "900": "https://fonts.gstatic.com/s/notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt42MHdf5MK3riB2w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanslao/v30/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccbtfpkO.ttf" + }, + { + "family": "Noto Sans Lao Looped", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "lao", + "latin", + "latin-ext" + ], + "version": "v7", + "lastModified": "2023-09-27", + "files": { + "100": "https://fonts.gstatic.com/s/notosanslaolooped/v7/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomPr2M-Zw5V_T71k.ttf", + "200": "https://fonts.gstatic.com/s/notosanslaolooped/v7/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomHr3M-Zw5V_T71k.ttf", + "300": "https://fonts.gstatic.com/s/notosanslaolooped/v7/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomKT3M-Zw5V_T71k.ttf", + "regular": "https://fonts.gstatic.com/s/notosanslaolooped/v7/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomPr3M-Zw5V_T71k.ttf", + "500": "https://fonts.gstatic.com/s/notosanslaolooped/v7/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomMj3M-Zw5V_T71k.ttf", + "600": "https://fonts.gstatic.com/s/notosanslaolooped/v7/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomCTwM-Zw5V_T71k.ttf", + "700": "https://fonts.gstatic.com/s/notosanslaolooped/v7/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomB3wM-Zw5V_T71k.ttf", + "800": "https://fonts.gstatic.com/s/notosanslaolooped/v7/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomHrwM-Zw5V_T71k.ttf", + "900": "https://fonts.gstatic.com/s/notosanslaolooped/v7/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomFPwM-Zw5V_T71k.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanslaolooped/v7/a8IgNpbwKmHXpgXbMIsbSMP7-3U72qUOX5gBg6LRXExhqHIX9YPTpvqkW4UthhjomPr3A-d64Q.ttf" + }, + { + "family": "Noto Sans Lepcha", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "lepcha" + ], + "version": "v19", + "lastModified": "2023-09-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanslepcha/v19/0QI7MWlB_JWgA166SKhu05TekNS32AJstqBXgd4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanslepcha/v19/0QI7MWlB_JWgA166SKhu05TekNS36ANmsg.ttf" + }, + { + "family": "Noto Sans Limbu", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "limbu" + ], + "version": "v24", + "lastModified": "2024-07-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanslimbu/v24/3JnlSDv90Gmq2mrzckOBBRRoNJVj0MF3OHRDnA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanslimbu/v24/3JnlSDv90Gmq2mrzckOBBRRoNJVT0ctz.ttf" + }, + { + "family": "Noto Sans Linear A", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "linear-a" + ], + "version": "v18", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanslineara/v18/oPWS_l16kP4jCuhpgEGmwJOiA18FZj22zmHQAGQicw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanslineara/v18/oPWS_l16kP4jCuhpgEGmwJOiA18FZj2Gz2vU.ttf" + }, + { + "family": "Noto Sans Linear B", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "linear-b" + ], + "version": "v17", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanslinearb/v17/HhyJU4wt9vSgfHoORYOiXOckKNB737IV3BkFTq4EPw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanslinearb/v17/HhyJU4wt9vSgfHoORYOiXOckKNB737Il3RMB.ttf" + }, + { + "family": "Noto Sans Lisu", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "lisu" + ], + "version": "v25", + "lastModified": "2023-03-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP2Vwt29IlxkVdig.ttf", + "500": "https://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP61wt29IlxkVdig.ttf", + "600": "https://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHPB1st29IlxkVdig.ttf", + "700": "https://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHPPlst29IlxkVdig.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP2Vwd2tgh.ttf" + }, + { + "family": "Noto Sans Lycian", + "variants": [ + "regular" + ], + "subsets": [ + "lycian" + ], + "version": "v15", + "lastModified": "2022-05-10", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanslycian/v15/QldVNSNMqAsHtsJ7UmqxBQA9r8wA5_naCJwn00E.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanslycian/v15/QldVNSNMqAsHtsJ7UmqxBQA9r8wA1_jQDA.ttf" + }, + { + "family": "Noto Sans Lydian", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "lydian" + ], + "version": "v18", + "lastModified": "2023-12-14", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanslydian/v18/c4m71mVzGN7s8FmIukZJ1v4ZlcPReUPXMoIjEQI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanslydian/v18/c4m71mVzGN7s8FmIukZJ1v4ZlcPRSULdNg.ttf" + }, + { + "family": "Noto Sans Mahajani", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "mahajani" + ], + "version": "v19", + "lastModified": "2023-09-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmahajani/v19/-F6sfiVqLzI2JPCgQBnw60Agp0JrvD5Fh8ARHNh4zg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmahajani/v19/-F6sfiVqLzI2JPCgQBnw60Agp0JrvD51hsoV.ttf" + }, + { + "family": "Noto Sans Malayalam", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "malayalam" + ], + "version": "v26", + "lastModified": "2023-04-27", + "files": { + "100": "https://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuH9BFzEr6HxEA.ttf", + "200": "https://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_xuD9BFzEr6HxEA.ttf", + "300": "https://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_GOD9BFzEr6HxEA.ttf", + "regular": "https://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuD9BFzEr6HxEA.ttf", + "500": "https://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_dOD9BFzEr6HxEA.ttf", + "600": "https://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_mOf9BFzEr6HxEA.ttf", + "700": "https://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_oef9BFzEr6HxEA.ttf", + "800": "https://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_xuf9BFzEr6HxEA.ttf", + "900": "https://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_7-f9BFzEr6HxEA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuDNBVbA.ttf" + }, + { + "family": "Noto Sans Mandaic", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "mandaic" + ], + "version": "v17", + "lastModified": "2024-07-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmandaic/v17/cIfnMbdWt1w_HgCcilqhKQBo_OsMI5_A_gMk0izH.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmandaic/v17/cIfnMbdWt1w_HgCcilqhKQBo_OsMI6_B9Ac.ttf" + }, + { + "family": "Noto Sans Manichaean", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "manichaean" + ], + "version": "v18", + "lastModified": "2023-10-25", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmanichaean/v18/taiVGntiC4--qtsfi4Jp9-_GkPZZCcrfekqCNTtFCtdX.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmanichaean/v18/taiVGntiC4--qtsfi4Jp9-_GkPZZCcrfenqDPz8.ttf" + }, + { + "family": "Noto Sans Marchen", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "marchen" + ], + "version": "v20", + "lastModified": "2024-07-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmarchen/v20/aFTO7OZ_Y282EP-WyG6QTOX_C8WZMHhPk652ZaHk.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmarchen/v20/aFTO7OZ_Y282EP-WyG6QTOX_C8WZMEhOmao.ttf" + }, + { + "family": "Noto Sans Masaram Gondi", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "masaram-gondi" + ], + "version": "v17", + "lastModified": "2022-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmasaramgondi/v17/6xK_dThFKcWIu4bpRBjRYRV7KZCbUq6n_1kPnuGe7RI9WSWX.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmasaramgondi/v17/6xK_dThFKcWIu4bpRBjRYRV7KZCbUq6n_1kPntGf5xY.ttf" + }, + { + "family": "Noto Sans Math", + "variants": [ + "regular" + ], + "subsets": [ + "math" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmath/v15/7Aump_cpkSecTWaHRlH2hyV5UHkG-V048PW0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmath/v15/7Aump_cpkSecTWaHRlH2hyV5UEkH81k.ttf" + }, + { + "family": "Noto Sans Mayan Numerals", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "mayan-numerals" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmayannumerals/v16/PlIuFk25O6RzLfvNNVSivR09_KqYMwvvDKYjfIiE68oo6eepYQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmayannumerals/v16/PlIuFk25O6RzLfvNNVSivR09_KqYMwvvDKYjfIi06sAs.ttf" + }, + { + "family": "Noto Sans Medefaidrin", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "medefaidrin" + ], + "version": "v23", + "lastModified": "2023-09-14", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmedefaidrin/v23/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmErWlT318e5A3rw.ttf", + "500": "https://fonts.gstatic.com/s/notosansmedefaidrin/v23/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmHjWlT318e5A3rw.ttf", + "600": "https://fonts.gstatic.com/s/notosansmedefaidrin/v23/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmJTRlT318e5A3rw.ttf", + "700": "https://fonts.gstatic.com/s/notosansmedefaidrin/v23/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmK3RlT318e5A3rw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmedefaidrin/v23/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmErWpTz_9Q.ttf" + }, + { + "family": "Noto Sans Meetei Mayek", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "meetei-mayek" + ], + "version": "v15", + "lastModified": "2023-09-14", + "files": { + "100": "https://fonts.gstatic.com/s/notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ__TW5PgeFYVa.ttf", + "200": "https://fonts.gstatic.com/s/notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1RJ_vTW5PgeFYVa.ttf", + "300": "https://fonts.gstatic.com/s/notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1SX_vTW5PgeFYVa.ttf", + "regular": "https://fonts.gstatic.com/s/notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ_vTW5PgeFYVa.ttf", + "500": "https://fonts.gstatic.com/s/notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1T7_vTW5PgeFYVa.ttf", + "600": "https://fonts.gstatic.com/s/notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1QX-fTW5PgeFYVa.ttf", + "700": "https://fonts.gstatic.com/s/notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1Qu-fTW5PgeFYVa.ttf", + "800": "https://fonts.gstatic.com/s/notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1RJ-fTW5PgeFYVa.ttf", + "900": "https://fonts.gstatic.com/s/notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1Rg-fTW5PgeFYVa.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmeeteimayek/v15/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ_sTX7vw.ttf" + }, + { + "family": "Noto Sans Mende Kikakui", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "mende-kikakui" + ], + "version": "v28", + "lastModified": "2022-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmendekikakui/v28/11hRGoLHz17aKjQCWj-JHcLvu2Q5zZrnkbNCLUx_aDJLAHer.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmendekikakui/v28/11hRGoLHz17aKjQCWj-JHcLvu2Q5zZrnkbNCLXx-YjY.ttf" + }, + { + "family": "Noto Sans Meroitic", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "meroitic", + "meroitic-cursive", + "meroitic-hieroglyphs" + ], + "version": "v18", + "lastModified": "2023-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmeroitic/v18/IFS5HfRJndhE3P4b5jnZ3ITPvC6i00UDgDhTiKY9KQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmeroitic/v18/IFS5HfRJndhE3P4b5jnZ3ITPvC6i00UzgTJX.ttf" + }, + { + "family": "Noto Sans Miao", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "miao" + ], + "version": "v17", + "lastModified": "2022-09-28", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmiao/v17/Dxxz8jmXMW75w3OmoDXVV4zyZUjgUYVslLhx.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmiao/v17/Dxxz8jmXMW75w3OmoDXVV4zyZXjhW4E.ttf" + }, + { + "family": "Noto Sans Modi", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "modi" + ], + "version": "v23", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmodi/v23/pe03MIySN5pO62Z5YkFyT7jeav5qWVAgVol-.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmodi/v23/pe03MIySN5pO62Z5YkFyT7jeas5rU1Q.ttf" + }, + { + "family": "Noto Sans Mongolian", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "mongolian", + "symbols" + ], + "version": "v22", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmongolian/v22/VdGCAYADGIwE0EopZx8xQfHlgEAMsrToxLsg6-av1x0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmongolian/v22/VdGCAYADGIwE0EopZx8xQfHlgEAMsrTo9Loq7w.ttf" + }, + { + "family": "Noto Sans Mono", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v30", + "lastModified": "2023-10-25", + "files": { + "100": "https://fonts.gstatic.com/s/notosansmono/v30/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_FNI49rXVEQQL8Y.ttf", + "200": "https://fonts.gstatic.com/s/notosansmono/v30/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_NNJ49rXVEQQL8Y.ttf", + "300": "https://fonts.gstatic.com/s/notosansmono/v30/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_A1J49rXVEQQL8Y.ttf", + "regular": "https://fonts.gstatic.com/s/notosansmono/v30/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_FNJ49rXVEQQL8Y.ttf", + "500": "https://fonts.gstatic.com/s/notosansmono/v30/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_GFJ49rXVEQQL8Y.ttf", + "600": "https://fonts.gstatic.com/s/notosansmono/v30/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_I1O49rXVEQQL8Y.ttf", + "700": "https://fonts.gstatic.com/s/notosansmono/v30/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_LRO49rXVEQQL8Y.ttf", + "800": "https://fonts.gstatic.com/s/notosansmono/v30/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_NNO49rXVEQQL8Y.ttf", + "900": "https://fonts.gstatic.com/s/notosansmono/v30/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_PpO49rXVEQQL8Y.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmono/v30/BngrUXNETWXI6LwhGYvaxZikqZqK6fBq6kPvUce2oAZcdthSBUsYck4-_FNJ09vdUA.ttf" + }, + { + "family": "Noto Sans Mro", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "mro" + ], + "version": "v18", + "lastModified": "2022-12-08", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmro/v18/qWcsB6--pZv9TqnUQMhe9b39WDzRtjkho4M.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmro/v18/qWcsB6--pZv9TqnUQMhe9b39aD3bsg.ttf" + }, + { + "family": "Noto Sans Multani", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "multani" + ], + "version": "v20", + "lastModified": "2022-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansmultani/v20/9Bty3ClF38_RfOpe1gCaZ8p30BOFO1A0pfCs5Kos.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmultani/v20/9Bty3ClF38_RfOpe1gCaZ8p30BOFO2A1r_Q.ttf" + }, + { + "family": "Noto Sans Myanmar", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "myanmar" + ], + "version": "v20", + "lastModified": "2022-09-28", + "files": { + "100": "https://fonts.gstatic.com/s/notosansmyanmar/v20/AlZs_y1ZtY3ymOryg38hOCSdOnFq0HGS1uEapkAC3AY.ttf", + "200": "https://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HE-98EwiEwLxR-r.ttf", + "300": "https://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFa9MEwiEwLxR-r.ttf", + "regular": "https://fonts.gstatic.com/s/notosansmyanmar/v20/AlZq_y1ZtY3ymOryg38hOCSdOnFq0En23OU4o1AC.ttf", + "500": "https://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HEC9cEwiEwLxR-r.ttf", + "600": "https://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HEu8sEwiEwLxR-r.ttf", + "700": "https://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFK88EwiEwLxR-r.ttf", + "800": "https://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFW8MEwiEwLxR-r.ttf", + "900": "https://fonts.gstatic.com/s/notosansmyanmar/v20/AlZv_y1ZtY3ymOryg38hOCSdOnFq0HFy8cEwiEwLxR-r.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansmyanmar/v20/AlZq_y1ZtY3ymOryg38hOCSdOnFq0Hn31uE.ttf" + }, + { + "family": "Noto Sans NKo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "nko" + ], + "version": "v6", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansnko/v6/esDX31ZdNv-KYGGJpKGk2_RpMpCMHMLBrdA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansnko/v6/esDX31ZdNv-KYGGJpKGk2_RpApGGGA.ttf" + }, + { + "family": "Noto Sans NKo Unjoined", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "nko" + ], + "version": "v2", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansnkounjoined/v2/MCo_zBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szPOBB5nuzMdWs0rvF2gEPxf5wbh3T.ttf", + "500": "https://fonts.gstatic.com/s/notosansnkounjoined/v2/MCo_zBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szPOBB5nuzMdWs0rv32gEPxf5wbh3T.ttf", + "600": "https://fonts.gstatic.com/s/notosansnkounjoined/v2/MCo_zBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szPOBB5nuzMdWs0rsb3QEPxf5wbh3T.ttf", + "700": "https://fonts.gstatic.com/s/notosansnkounjoined/v2/MCo_zBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szPOBB5nuzMdWs0rsi3QEPxf5wbh3T.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansnkounjoined/v2/MCo_zBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szPOBB5nuzMdWs0rvF2jEOz_o.ttf" + }, + { + "family": "Noto Sans Nabataean", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "nabataean" + ], + "version": "v16", + "lastModified": "2023-06-22", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansnabataean/v16/IFS4HfVJndhE3P4b5jnZ34DfsjO330dNoBJ9hK8kMK4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansnabataean/v16/IFS4HfVJndhE3P4b5jnZ34DfsjO330dNkBN3gA.ttf" + }, + { + "family": "Noto Sans Nag Mundari", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "nag-mundari" + ], + "version": "v2", + "lastModified": "2024-07-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansnagmundari/v2/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHRxirbUGA0whP19M.ttf", + "500": "https://fonts.gstatic.com/s/notosansnagmundari/v2/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHRyqrbUGA0whP19M.ttf", + "600": "https://fonts.gstatic.com/s/notosansnagmundari/v2/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHR8asbUGA0whP19M.ttf", + "700": "https://fonts.gstatic.com/s/notosansnagmundari/v2/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHR_-sbUGA0whP19M.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansnagmundari/v2/3qTAoi2hnSyU8TNFIdhZTyod3g5lBnKlQFk2kS9fr9Eq09RHRxirXUCK1w.ttf" + }, + { + "family": "Noto Sans Nandinagari", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "nandinagari" + ], + "version": "v4", + "lastModified": "2023-10-25", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansnandinagari/v4/or38Q7733eiDljA1IufXSNFT-1KI5y10H4jVa5RXzC1KOw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansnandinagari/v4/or38Q7733eiDljA1IufXSNFT-1KI5y10H4jlap5T.ttf" + }, + { + "family": "Noto Sans New Tai Lue", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "new-tai-lue" + ], + "version": "v22", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansnewtailue/v22/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdeXAYUbghFPKzeY.ttf", + "500": "https://fonts.gstatic.com/s/notosansnewtailue/v22/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pddfAYUbghFPKzeY.ttf", + "600": "https://fonts.gstatic.com/s/notosansnewtailue/v22/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdTvHYUbghFPKzeY.ttf", + "700": "https://fonts.gstatic.com/s/notosansnewtailue/v22/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdQLHYUbghFPKzeY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansnewtailue/v22/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdeXAUUfqgA.ttf" + }, + { + "family": "Noto Sans Newa", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "newa" + ], + "version": "v16", + "lastModified": "2022-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansnewa/v16/7r3fqXp6utEsO9pI4f8ok8sWg8n_qN4R5lNU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansnewa/v16/7r3fqXp6utEsO9pI4f8ok8sWg_n-oto.ttf" + }, + { + "family": "Noto Sans Nushu", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "nushu" + ], + "version": "v19", + "lastModified": "2023-04-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansnushu/v19/rnCw-xRQ3B7652emAbAe_Ai1IYaFWFAMArZKqQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansnushu/v19/rnCw-xRQ3B7652emAbAe_Ai1IYa1WVoI.ttf" + }, + { + "family": "Noto Sans Ogham", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "ogham" + ], + "version": "v17", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansogham/v17/kmKlZqk1GBDGN0mY6k5lmEmww4hrt5laQxcoCA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansogham/v17/kmKlZqk1GBDGN0mY6k5lmEmww4hbtpNe.ttf" + }, + { + "family": "Noto Sans Ol Chiki", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "ol-chiki" + ], + "version": "v29", + "lastModified": "2023-09-14", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansolchiki/v29/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALWk267I6gVrz5gQ.ttf", + "500": "https://fonts.gstatic.com/s/notosansolchiki/v29/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALVs267I6gVrz5gQ.ttf", + "600": "https://fonts.gstatic.com/s/notosansolchiki/v29/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALbcx67I6gVrz5gQ.ttf", + "700": "https://fonts.gstatic.com/s/notosansolchiki/v29/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALY4x67I6gVrz5gQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansolchiki/v29/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALWk227MwhQ.ttf" + }, + { + "family": "Noto Sans Old Hungarian", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "old-hungarian" + ], + "version": "v18", + "lastModified": "2023-09-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansoldhungarian/v18/E213_cD6hP3GwCJPEUssHEM0KqLaHJXg2PiIgRfjbg5nCYXt.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansoldhungarian/v18/E213_cD6hP3GwCJPEUssHEM0KqLaHJXg2PiIgSfiZAo.ttf" + }, + { + "family": "Noto Sans Old Italic", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "old-italic" + ], + "version": "v17", + "lastModified": "2024-07-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansolditalic/v17/TuGOUUFzXI5FBtUq5a8bh68BJxxEVam7tWlRdRhtCC4d.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansolditalic/v17/TuGOUUFzXI5FBtUq5a8bh68BJxxEVam7tVlQfxw.ttf" + }, + { + "family": "Noto Sans Old North Arabian", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "old-north-arabian" + ], + "version": "v16", + "lastModified": "2023-07-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansoldnortharabian/v16/esDF30BdNv-KYGGJpKGk2tNiMt7Jar6olZDyNdr81zBQmUo_xw4ABw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansoldnortharabian/v16/esDF30BdNv-KYGGJpKGk2tNiMt7Jar6olZDyNdr81zBgmEA7.ttf" + }, + { + "family": "Noto Sans Old Permic", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "old-permic" + ], + "version": "v17", + "lastModified": "2023-07-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansoldpermic/v17/snf1s1q1-dF8pli1TesqcbUY4Mr-ElrwKLdXgv_dKYB5.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansoldpermic/v17/snf1s1q1-dF8pli1TesqcbUY4Mr-ElrwKIdWiPs.ttf" + }, + { + "family": "Noto Sans Old Persian", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "old-persian" + ], + "version": "v16", + "lastModified": "2023-07-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansoldpersian/v16/wEOjEAbNnc5caQTFG18FHrZr9Bp6-8CmIJ_tqOlQfx9CjA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansoldpersian/v16/wEOjEAbNnc5caQTFG18FHrZr9Bp6-8CmIJ_dqeNU.ttf" + }, + { + "family": "Noto Sans Old Sogdian", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "old-sogdian" + ], + "version": "v17", + "lastModified": "2024-07-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansoldsogdian/v17/3JnjSCH90Gmq2mrzckOBBhFhdrMst48aURt7neIqM-9uyg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansoldsogdian/v17/3JnjSCH90Gmq2mrzckOBBhFhdrMst48aURtLnOgu.ttf" + }, + { + "family": "Noto Sans Old South Arabian", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "old-south-arabian" + ], + "version": "v16", + "lastModified": "2023-07-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansoldsoutharabian/v16/3qT5oiOhnSyU8TNFIdhZTice3hB_HWKsEnF--0XCHiKx1OtDT9HwTA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansoldsoutharabian/v16/3qT5oiOhnSyU8TNFIdhZTice3hB_HWKsEnF--0XCHiKB1eFH.ttf" + }, + { + "family": "Noto Sans Old Turkic", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "old-turkic" + ], + "version": "v18", + "lastModified": "2024-07-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansoldturkic/v18/yMJNMJVya43H0SUF_WmcGEQVqoEMKDKbsE2RjEw-Vyws.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansoldturkic/v18/yMJNMJVya43H0SUF_WmcGEQVqoEMKDKbsH2Qhkg.ttf" + }, + { + "family": "Noto Sans Oriya", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "oriya" + ], + "version": "v31", + "lastModified": "2024-04-12", + "files": { + "100": "https://fonts.gstatic.com/s/notosansoriya/v31/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0fq_c6LhHBRe-.ttf", + "200": "https://fonts.gstatic.com/s/notosansoriya/v31/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivh0f6_c6LhHBRe-.ttf", + "300": "https://fonts.gstatic.com/s/notosansoriya/v31/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Iviqf6_c6LhHBRe-.ttf", + "regular": "https://fonts.gstatic.com/s/notosansoriya/v31/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0f6_c6LhHBRe-.ttf", + "500": "https://fonts.gstatic.com/s/notosansoriya/v31/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvjGf6_c6LhHBRe-.ttf", + "600": "https://fonts.gstatic.com/s/notosansoriya/v31/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvgqeK_c6LhHBRe-.ttf", + "700": "https://fonts.gstatic.com/s/notosansoriya/v31/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvgTeK_c6LhHBRe-.ttf", + "800": "https://fonts.gstatic.com/s/notosansoriya/v31/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivh0eK_c6LhHBRe-.ttf", + "900": "https://fonts.gstatic.com/s/notosansoriya/v31/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5IvhdeK_c6LhHBRe-.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansoriya/v31/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0f5_d4rw.ttf" + }, + { + "family": "Noto Sans Osage", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "osage" + ], + "version": "v18", + "lastModified": "2022-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansosage/v18/oPWX_kB6kP4jCuhpgEGmw4mtAVtXRlaSxkrMCQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansosage/v18/oPWX_kB6kP4jCuhpgEGmw4mtAVtnR1yW.ttf" + }, + { + "family": "Noto Sans Osmanya", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "osmanya" + ], + "version": "v18", + "lastModified": "2022-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansosmanya/v18/8vIS7xs32H97qzQKnzfeWzUyUpOJmz6kR47NCV5Z.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansosmanya/v18/8vIS7xs32H97qzQKnzfeWzUyUpOJmw6lTYo.ttf" + }, + { + "family": "Noto Sans Pahawh Hmong", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "pahawh-hmong" + ], + "version": "v18", + "lastModified": "2023-05-02", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanspahawhhmong/v18/bWtp7e_KfBziStx7lIzKKaMUOBEA3UPQDW7krzc_c48aMpM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanspahawhhmong/v18/bWtp7e_KfBziStx7lIzKKaMUOBEA3UPQDW7knzY1dw.ttf" + }, + { + "family": "Noto Sans Palmyrene", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "palmyrene" + ], + "version": "v16", + "lastModified": "2023-06-22", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanspalmyrene/v16/ZgNPjOdKPa7CHqq0h37c_ASCWvH93SFCPnK5ZpdNtcA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanspalmyrene/v16/ZgNPjOdKPa7CHqq0h37c_ASCWvH93SFCDnOzYg.ttf" + }, + { + "family": "Noto Sans Pau Cin Hau", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "pau-cin-hau" + ], + "version": "v20", + "lastModified": "2023-05-02", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanspaucinhau/v20/x3d-cl3IZKmUqiMg_9wBLLtzl22EayN7ehIdjEWqKMxsKw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanspaucinhau/v20/x3d-cl3IZKmUqiMg_9wBLLtzl22EayN7ehItjU-u.ttf" + }, + { + "family": "Noto Sans Phags Pa", + "variants": [ + "regular" + ], + "subsets": [ + "phags-pa" + ], + "version": "v15", + "lastModified": "2022-05-10", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansphagspa/v15/pxiZyoo6v8ZYyWh5WuPeJzMkd4SrGChkqkSsrvNXiA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansphagspa/v15/pxiZyoo6v8ZYyWh5WuPeJzMkd4SrGChUq06o.ttf" + }, + { + "family": "Noto Sans Phoenician", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "phoenician" + ], + "version": "v17", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansphoenician/v17/jizFRF9Ksm4Bt9PvcTaEkIHiTVtxmFtS5X7Jot-p5561.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansphoenician/v17/jizFRF9Ksm4Bt9PvcTaEkIHiTVtxmFtS5U7IqNs.ttf" + }, + { + "family": "Noto Sans Psalter Pahlavi", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "psalter-pahlavi" + ], + "version": "v17", + "lastModified": "2024-07-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanspsalterpahlavi/v17/rP2Vp3K65FkAtHfwd-eISGznYihzggmsicPfud3w1G3KsUQBct4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanspsalterpahlavi/v17/rP2Vp3K65FkAtHfwd-eISGznYihzggmsicPfud3w5GzAtQ.ttf" + }, + { + "family": "Noto Sans Rejang", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "rejang" + ], + "version": "v21", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansrejang/v21/Ktk2AKuMeZjqPnXgyqrib7DIogqwN4O3WYZB_sU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansrejang/v21/Ktk2AKuMeZjqPnXgyqrib7DIogqwB4K9XQ.ttf" + }, + { + "family": "Noto Sans Runic", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "runic" + ], + "version": "v17", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansrunic/v17/H4c_BXWPl9DZ0Xe_nHUaus7W68WWaxpvHtgIYg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansrunic/v17/H4c_BXWPl9DZ0Xe_nHUaus7W68WmahBr.ttf" + }, + { + "family": "Noto Sans SC", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "chinese-simplified", + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v37", + "lastModified": "2024-07-30", + "files": { + "100": "https://fonts.gstatic.com/s/notosanssc/v37/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG9_EnYxNbPzS5HE.ttf", + "200": "https://fonts.gstatic.com/s/notosanssc/v37/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG1_FnYxNbPzS5HE.ttf", + "300": "https://fonts.gstatic.com/s/notosanssc/v37/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG4HFnYxNbPzS5HE.ttf", + "regular": "https://fonts.gstatic.com/s/notosanssc/v37/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG9_FnYxNbPzS5HE.ttf", + "500": "https://fonts.gstatic.com/s/notosanssc/v37/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG-3FnYxNbPzS5HE.ttf", + "600": "https://fonts.gstatic.com/s/notosanssc/v37/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaGwHCnYxNbPzS5HE.ttf", + "700": "https://fonts.gstatic.com/s/notosanssc/v37/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaGzjCnYxNbPzS5HE.ttf", + "800": "https://fonts.gstatic.com/s/notosanssc/v37/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG1_CnYxNbPzS5HE.ttf", + "900": "https://fonts.gstatic.com/s/notosanssc/v37/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG3bCnYxNbPzS5HE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssc/v37/k3kCo84MPvpLmixcA63oeAL7Iqp5IZJF9bmaG9_FrY1HaA.ttf" + }, + { + "family": "Noto Sans Samaritan", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "samaritan" + ], + "version": "v16", + "lastModified": "2023-06-22", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssamaritan/v16/buEqppe9f8_vkXadMBJJo0tSmaYjFkxOUo5jNlOVMzQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssamaritan/v16/buEqppe9f8_vkXadMBJJo0tSmaYjFkxOYo9pMg.ttf" + }, + { + "family": "Noto Sans Saurashtra", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "saurashtra" + ], + "version": "v23", + "lastModified": "2023-09-13", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssaurashtra/v23/ea8GacQ0Wfz_XKWXe6OtoA8w8zvmYwTef9ndjhPTSIx9.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssaurashtra/v23/ea8GacQ0Wfz_XKWXe6OtoA8w8zvmYwTef-nchBc.ttf" + }, + { + "family": "Noto Sans Sharada", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "sharada" + ], + "version": "v16", + "lastModified": "2022-11-18", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssharada/v16/gok0H7rwAEdtF9N8-mdTGALG6p0kwoXLPOwr4H8a.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssharada/v16/gok0H7rwAEdtF9N8-mdTGALG6p0kwrXKNug.ttf" + }, + { + "family": "Noto Sans Shavian", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "shavian" + ], + "version": "v17", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansshavian/v17/CHy5V_HZE0jxJBQlqAeCKjJvQBNF4EFQSplv2Cwg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansshavian/v17/CHy5V_HZE0jxJBQlqAeCKjJvQBNF4HFRQJ0.ttf" + }, + { + "family": "Noto Sans Siddham", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "siddham" + ], + "version": "v20", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssiddham/v20/OZpZg-FwqiNLe9PELUikxTWDoCCeGqndk3Ic92ZH.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssiddham/v20/OZpZg-FwqiNLe9PELUikxTWDoCCeGpncmXY.ttf" + }, + { + "family": "Noto Sans SignWriting", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "signwriting" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssignwriting/v4/Noas6VX_wIWFbTTCrYmvy9A2UnkL-2SZAWiUEVCARYQemg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssignwriting/v4/Noas6VX_wIWFbTTCrYmvy9A2UnkL-2SZAWikEFqE.ttf" + }, + { + "family": "Noto Sans Sinhala", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "sinhala" + ], + "version": "v26", + "lastModified": "2022-09-28", + "files": { + "100": "https://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2b5lgLpJwbQRM.ttf", + "200": "https://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwo2a5lgLpJwbQRM.ttf", + "300": "https://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwlOa5lgLpJwbQRM.ttf", + "regular": "https://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2a5lgLpJwbQRM.ttf", + "500": "https://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwj-a5lgLpJwbQRM.ttf", + "600": "https://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwtOd5lgLpJwbQRM.ttf", + "700": "https://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwuqd5lgLpJwbQRM.ttf", + "800": "https://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwo2d5lgLpJwbQRM.ttf", + "900": "https://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwqSd5lgLpJwbQRM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2a1lkBoA.ttf" + }, + { + "family": "Noto Sans Sogdian", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "sogdian" + ], + "version": "v16", + "lastModified": "2023-06-22", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssogdian/v16/taiQGn5iC4--qtsfi4Jp6eHPnfxQBo--Pm6KHidM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssogdian/v16/taiQGn5iC4--qtsfi4Jp6eHPnfxQBr-_NGo.ttf" + }, + { + "family": "Noto Sans Sora Sompeng", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "sora-sompeng" + ], + "version": "v24", + "lastModified": "2023-03-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHR818DpZXJQd4Mu.ttf", + "500": "https://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHRO18DpZXJQd4Mu.ttf", + "600": "https://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHSi0MDpZXJQd4Mu.ttf", + "700": "https://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHSb0MDpZXJQd4Mu.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHR81_Dob3Y.ttf" + }, + { + "family": "Noto Sans Soyombo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "soyombo" + ], + "version": "v17", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssoyombo/v17/RWmSoL-Y6-8q5LTtXs6MF6q7xsxgY0FrIFOcK25W.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssoyombo/v17/RWmSoL-Y6-8q5LTtXs6MF6q7xsxgY3FqKlc.ttf" + }, + { + "family": "Noto Sans Sundanese", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "sundanese" + ], + "version": "v26", + "lastModified": "2024-05-02", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssundanese/v26/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxpNNHCizv7fQES.ttf", + "500": "https://fonts.gstatic.com/s/notosanssundanese/v26/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxbNNHCizv7fQES.ttf", + "600": "https://fonts.gstatic.com/s/notosanssundanese/v26/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6cty3M9HCizv7fQES.ttf", + "700": "https://fonts.gstatic.com/s/notosanssundanese/v26/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctyOM9HCizv7fQES.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssundanese/v26/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxpNOHDgT8.ttf" + }, + { + "family": "Noto Sans Syloti Nagri", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "syloti-nagri" + ], + "version": "v23", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssylotinagri/v23/uU9eCAQZ75uhfF9UoWDRiY3q7Sf_VFV3m4dGFVfxN87gsj0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssylotinagri/v23/uU9eCAQZ75uhfF9UoWDRiY3q7Sf_VFV3m4dGJVb7Mw.ttf" + }, + { + "family": "Noto Sans Symbols", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "symbols" + ], + "version": "v43", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/notosanssymbols/v43/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ4gavVFRkzrbQ.ttf", + "200": "https://fonts.gstatic.com/s/notosanssymbols/v43/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g_Q8gavVFRkzrbQ.ttf", + "300": "https://fonts.gstatic.com/s/notosanssymbols/v43/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gIw8gavVFRkzrbQ.ttf", + "regular": "https://fonts.gstatic.com/s/notosanssymbols/v43/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ8gavVFRkzrbQ.ttf", + "500": "https://fonts.gstatic.com/s/notosanssymbols/v43/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gTw8gavVFRkzrbQ.ttf", + "600": "https://fonts.gstatic.com/s/notosanssymbols/v43/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gowggavVFRkzrbQ.ttf", + "700": "https://fonts.gstatic.com/s/notosanssymbols/v43/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gmgggavVFRkzrbQ.ttf", + "800": "https://fonts.gstatic.com/s/notosanssymbols/v43/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g_QggavVFRkzrbQ.ttf", + "900": "https://fonts.gstatic.com/s/notosanssymbols/v43/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3g1AggavVFRkzrbQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssymbols/v43/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ8Qa_9B.ttf" + }, + { + "family": "Noto Sans Symbols 2", + "variants": [ + "regular" + ], + "subsets": [ + "braille", + "latin", + "latin-ext", + "math", + "mayan-numerals", + "symbols" + ], + "version": "v24", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanssymbols2/v24/I_uyMoGduATTei9eI8daxVHDyfisHr71ypPqfX71-AI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssymbols2/v24/I_uyMoGduATTei9eI8daxVHDyfisHr71-pLgeQ.ttf" + }, + { + "family": "Noto Sans Syriac", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "syriac" + ], + "version": "v16", + "lastModified": "2023-04-27", + "files": { + "100": "https://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9caJyZfUL_FC.ttf", + "200": "https://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-XD9MaJyZfUL_FC.ttf", + "300": "https://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Ud9MaJyZfUL_FC.ttf", + "regular": "https://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9MaJyZfUL_FC.ttf", + "500": "https://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Vx9MaJyZfUL_FC.ttf", + "600": "https://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Wd88aJyZfUL_FC.ttf", + "700": "https://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Wk88aJyZfUL_FC.ttf", + "800": "https://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-XD88aJyZfUL_FC.ttf", + "900": "https://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-Xq88aJyZfUL_FC.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9PaIw5M.ttf" + }, + { + "family": "Noto Sans Syriac Eastern", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "syriac" + ], + "version": "v1", + "lastModified": "2023-07-13", + "files": { + "100": "https://fonts.gstatic.com/s/notosanssyriaceastern/v1/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPi-eszCL5ep1QPQ.ttf", + "200": "https://fonts.gstatic.com/s/notosanssyriaceastern/v1/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPq-fszCL5ep1QPQ.ttf", + "300": "https://fonts.gstatic.com/s/notosanssyriaceastern/v1/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPnGfszCL5ep1QPQ.ttf", + "regular": "https://fonts.gstatic.com/s/notosanssyriaceastern/v1/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPi-fszCL5ep1QPQ.ttf", + "500": "https://fonts.gstatic.com/s/notosanssyriaceastern/v1/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPh2fszCL5ep1QPQ.ttf", + "600": "https://fonts.gstatic.com/s/notosanssyriaceastern/v1/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPvGYszCL5ep1QPQ.ttf", + "700": "https://fonts.gstatic.com/s/notosanssyriaceastern/v1/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPsiYszCL5ep1QPQ.ttf", + "800": "https://fonts.gstatic.com/s/notosanssyriaceastern/v1/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPq-YszCL5ep1QPQ.ttf", + "900": "https://fonts.gstatic.com/s/notosanssyriaceastern/v1/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPoaYszCL5ep1QPQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanssyriaceastern/v1/Noac6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxS-Ro3yS0FDacnHPi-fgzGB4Q.ttf" + }, + { + "family": "Noto Sans TC", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "chinese-traditional", + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v36", + "lastModified": "2024-07-30", + "files": { + "100": "https://fonts.gstatic.com/s/notosanstc/v36/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz76Cz_CpOtma3uNQ.ttf", + "200": "https://fonts.gstatic.com/s/notosanstc/v36/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz7yCy_CpOtma3uNQ.ttf", + "300": "https://fonts.gstatic.com/s/notosanstc/v36/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz7_6y_CpOtma3uNQ.ttf", + "regular": "https://fonts.gstatic.com/s/notosanstc/v36/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz76Cy_CpOtma3uNQ.ttf", + "500": "https://fonts.gstatic.com/s/notosanstc/v36/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz75Ky_CpOtma3uNQ.ttf", + "600": "https://fonts.gstatic.com/s/notosanstc/v36/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz7361_CpOtma3uNQ.ttf", + "700": "https://fonts.gstatic.com/s/notosanstc/v36/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz70e1_CpOtma3uNQ.ttf", + "800": "https://fonts.gstatic.com/s/notosanstc/v36/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz7yC1_CpOtma3uNQ.ttf", + "900": "https://fonts.gstatic.com/s/notosanstc/v36/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz7wm1_CpOtma3uNQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstc/v36/-nFuOG829Oofr2wohFbTp9ifNAn722rq0MXz76CyzCtEsg.ttf" + }, + { + "family": "Noto Sans Tagalog", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tagalog" + ], + "version": "v22", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanstagalog/v22/J7aFnoNzCnFcV9ZI-sUYuvote1R0wwEAA8jHexnL.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstagalog/v22/J7aFnoNzCnFcV9ZI-sUYuvote1R0wzEBCcw.ttf" + }, + { + "family": "Noto Sans Tagbanwa", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tagbanwa" + ], + "version": "v18", + "lastModified": "2023-05-02", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanstagbanwa/v18/Y4GWYbB8VTEp4t3MKJSMmQdIKjRtt_nZRjQEaYpGoQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstagbanwa/v18/Y4GWYbB8VTEp4t3MKJSMmQdIKjRtt_npRz4A.ttf" + }, + { + "family": "Noto Sans Tai Le", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tai-le" + ], + "version": "v17", + "lastModified": "2022-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanstaile/v17/vEFK2-VODB8RrNDvZSUmVxEATwR58tK1W77HtMo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstaile/v17/vEFK2-VODB8RrNDvZSUmVxEATwR5wtO_Xw.ttf" + }, + { + "family": "Noto Sans Tai Tham", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "tai-tham" + ], + "version": "v20", + "lastModified": "2023-09-14", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanstaitham/v20/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBCUbPgquyaRGKMw.ttf", + "500": "https://fonts.gstatic.com/s/notosanstaitham/v20/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBBcbPgquyaRGKMw.ttf", + "600": "https://fonts.gstatic.com/s/notosanstaitham/v20/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBPscPgquyaRGKMw.ttf", + "700": "https://fonts.gstatic.com/s/notosanstaitham/v20/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBMIcPgquyaRGKMw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstaitham/v20/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBCUbDgukzQ.ttf" + }, + { + "family": "Noto Sans Tai Viet", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tai-viet" + ], + "version": "v19", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanstaiviet/v19/8QIUdj3HhN_lv4jf9vsE-9GMOLsaSPZr644fWsRO9w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstaiviet/v19/8QIUdj3HhN_lv4jf9vsE-9GMOLsaSPZb6oQb.ttf" + }, + { + "family": "Noto Sans Takri", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "takri" + ], + "version": "v24", + "lastModified": "2023-10-25", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanstakri/v24/TuGJUVpzXI5FBtUq5a8bnKIOdTwQNO_W3khJXg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstakri/v24/TuGJUVpzXI5FBtUq5a8bnKIOdTwgNeXS.ttf" + }, + { + "family": "Noto Sans Tamil", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil" + ], + "version": "v27", + "lastModified": "2023-04-27", + "files": { + "100": "https://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGor0RqKDt_EvT.ttf", + "200": "https://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tGo70RqKDt_EvT.ttf", + "300": "https://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7uYo70RqKDt_EvT.ttf", + "regular": "https://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGo70RqKDt_EvT.ttf", + "500": "https://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7v0o70RqKDt_EvT.ttf", + "600": "https://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7sYpL0RqKDt_EvT.ttf", + "700": "https://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7shpL0RqKDt_EvT.ttf", + "800": "https://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tGpL0RqKDt_EvT.ttf", + "900": "https://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7tvpL0RqKDt_EvT.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGo40QoqQ.ttf" + }, + { + "family": "Noto Sans Tamil Supplement", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil-supplement" + ], + "version": "v21", + "lastModified": "2023-06-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanstamilsupplement/v21/DdTz78kEtnooLS5rXF1DaruiCd_bFp_Ph4sGcn7ax_vsAeMkeq1x.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstamilsupplement/v21/DdTz78kEtnooLS5rXF1DaruiCd_bFp_Ph4sGcn7ax8vtC-c.ttf" + }, + { + "family": "Noto Sans Tangsa", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "tangsa" + ], + "version": "v6", + "lastModified": "2023-10-25", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanstangsa/v6/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp1YkyoRYdplyJDA.ttf", + "500": "https://fonts.gstatic.com/s/notosanstangsa/v6/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp1qkyoRYdplyJDA.ttf", + "600": "https://fonts.gstatic.com/s/notosanstangsa/v6/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp2GlCoRYdplyJDA.ttf", + "700": "https://fonts.gstatic.com/s/notosanstangsa/v6/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp2_lCoRYdplyJDA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstangsa/v6/z7NCdQPmcigbbZAIOl9igP26K470lICpky0-peX5Qp1YkxoQa94.ttf" + }, + { + "family": "Noto Sans Telugu", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "telugu" + ], + "version": "v26", + "lastModified": "2023-10-25", + "files": { + "100": "https://fonts.gstatic.com/s/notosanstelugu/v26/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezfqQUbf-3v37w.ttf", + "200": "https://fonts.gstatic.com/s/notosanstelugu/v26/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt-zbqQUbf-3v37w.ttf", + "300": "https://fonts.gstatic.com/s/notosanstelugu/v26/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntJTbqQUbf-3v37w.ttf", + "regular": "https://fonts.gstatic.com/s/notosanstelugu/v26/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezbqQUbf-3v37w.ttf", + "500": "https://fonts.gstatic.com/s/notosanstelugu/v26/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntSTbqQUbf-3v37w.ttf", + "600": "https://fonts.gstatic.com/s/notosanstelugu/v26/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntpTHqQUbf-3v37w.ttf", + "700": "https://fonts.gstatic.com/s/notosanstelugu/v26/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntnDHqQUbf-3v37w.ttf", + "800": "https://fonts.gstatic.com/s/notosanstelugu/v26/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt-zHqQUbf-3v37w.ttf", + "900": "https://fonts.gstatic.com/s/notosanstelugu/v26/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEnt0jHqQUbf-3v37w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstelugu/v26/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezbaQEzb.ttf" + }, + { + "family": "Noto Sans Thaana", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "thaana" + ], + "version": "v24", + "lastModified": "2023-11-09", + "files": { + "100": "https://fonts.gstatic.com/s/notosansthaana/v24/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbxLhnu4-tbNu.ttf", + "200": "https://fonts.gstatic.com/s/notosansthaana/v24/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VrbhLhnu4-tbNu.ttf", + "300": "https://fonts.gstatic.com/s/notosansthaana/v24/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4W1bhLhnu4-tbNu.ttf", + "regular": "https://fonts.gstatic.com/s/notosansthaana/v24/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbhLhnu4-tbNu.ttf", + "500": "https://fonts.gstatic.com/s/notosansthaana/v24/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XZbhLhnu4-tbNu.ttf", + "600": "https://fonts.gstatic.com/s/notosansthaana/v24/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4U1aRLhnu4-tbNu.ttf", + "700": "https://fonts.gstatic.com/s/notosansthaana/v24/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4UMaRLhnu4-tbNu.ttf", + "800": "https://fonts.gstatic.com/s/notosansthaana/v24/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VraRLhnu4-tbNu.ttf", + "900": "https://fonts.gstatic.com/s/notosansthaana/v24/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4VCaRLhnu4-tbNu.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansthaana/v24/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbiLglOo.ttf" + }, + { + "family": "Noto Sans Thai", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "thai" + ], + "version": "v25", + "lastModified": "2023-10-25", + "files": { + "100": "https://fonts.gstatic.com/s/notosansthai/v25/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RspzF-QRvzzXg.ttf", + "200": "https://fonts.gstatic.com/s/notosansthai/v25/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUxRtpzF-QRvzzXg.ttf", + "300": "https://fonts.gstatic.com/s/notosansthai/v25/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU8ptpzF-QRvzzXg.ttf", + "regular": "https://fonts.gstatic.com/s/notosansthai/v25/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RtpzF-QRvzzXg.ttf", + "500": "https://fonts.gstatic.com/s/notosansthai/v25/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU6ZtpzF-QRvzzXg.ttf", + "600": "https://fonts.gstatic.com/s/notosansthai/v25/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU0pqpzF-QRvzzXg.ttf", + "700": "https://fonts.gstatic.com/s/notosansthai/v25/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU3NqpzF-QRvzzXg.ttf", + "800": "https://fonts.gstatic.com/s/notosansthai/v25/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUxRqpzF-QRvzzXg.ttf", + "900": "https://fonts.gstatic.com/s/notosansthai/v25/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdUz1qpzF-QRvzzXg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansthai/v25/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RtlzB0RQ.ttf" + }, + { + "family": "Noto Sans Thai Looped", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "thai" + ], + "version": "v14", + "lastModified": "2023-04-27", + "files": { + "100": "https://fonts.gstatic.com/s/notosansthailooped/v14/B50fF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3YX6AYeCT_Wfd1.ttf", + "200": "https://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Y84E4UgrzUO5sKA.ttf", + "300": "https://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yl4I4UgrzUO5sKA.ttf", + "regular": "https://fonts.gstatic.com/s/notosansthailooped/v14/B50RF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3gO6ocWiHvWQ.ttf", + "500": "https://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yz4M4UgrzUO5sKA.ttf", + "600": "https://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Y44Q4UgrzUO5sKA.ttf", + "700": "https://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yh4U4UgrzUO5sKA.ttf", + "800": "https://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Ym4Y4UgrzUO5sKA.ttf", + "900": "https://fonts.gstatic.com/s/notosansthailooped/v14/B50cF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3Yv4c4UgrzUO5sKA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansthailooped/v14/B50RF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3QOqAY.ttf" + }, + { + "family": "Noto Sans Tifinagh", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tifinagh" + ], + "version": "v20", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanstifinagh/v20/I_uzMoCduATTei9eI8dawkHIwvmhCvbn6rnEcXfs4Q.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstifinagh/v20/I_uzMoCduATTei9eI8dawkHIwvmhCvbX67PA.ttf" + }, + { + "family": "Noto Sans Tirhuta", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tirhuta" + ], + "version": "v16", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanstirhuta/v16/t5t6IQYRNJ6TWjahPR6X-M-apUyby7uGUBsTrn5P.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanstirhuta/v16/t5t6IQYRNJ6TWjahPR6X-M-apUyby4uHWh8.ttf" + }, + { + "family": "Noto Sans Ugaritic", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "ugaritic" + ], + "version": "v16", + "lastModified": "2023-05-23", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansugaritic/v16/3qTwoiqhnSyU8TNFIdhZVCwbjCpkAXXkMhoIkiazfg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansugaritic/v16/3qTwoiqhnSyU8TNFIdhZVCwbjCpkAXXUMxAM.ttf" + }, + { + "family": "Noto Sans Vai", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vai" + ], + "version": "v17", + "lastModified": "2022-09-28", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansvai/v17/NaPecZTSBuhTirw6IaFn_UrURMTsDIRSfr0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansvai/v17/NaPecZTSBuhTirw6IaFn_UrUdMXmCA.ttf" + }, + { + "family": "Noto Sans Vithkuqi", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vithkuqi" + ], + "version": "v1", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansvithkuqi/v1/jVyi7m77CXvQswd6WjYu9E1wN6cih2TSchUEkQgw3KTnva5SgKM7vmn0BLE.ttf", + "500": "https://fonts.gstatic.com/s/notosansvithkuqi/v1/jVyi7m77CXvQswd6WjYu9E1wN6cih2TSchUEkQgw3KTnvZxSgKM7vmn0BLE.ttf", + "600": "https://fonts.gstatic.com/s/notosansvithkuqi/v1/jVyi7m77CXvQswd6WjYu9E1wN6cih2TSchUEkQgw3KTnvXBVgKM7vmn0BLE.ttf", + "700": "https://fonts.gstatic.com/s/notosansvithkuqi/v1/jVyi7m77CXvQswd6WjYu9E1wN6cih2TSchUEkQgw3KTnvUlVgKM7vmn0BLE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansvithkuqi/v1/jVyi7m77CXvQswd6WjYu9E1wN6cih2TSchUEkQgw3KTnva5SsKIxug.ttf" + }, + { + "family": "Noto Sans Wancho", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "wancho" + ], + "version": "v17", + "lastModified": "2022-09-28", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanswancho/v17/zrf-0GXXyfn6Fs0lH9P4cUubP0GBqAPopiRfKp8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanswancho/v17/zrf-0GXXyfn6Fs0lH9P4cUubP0GBmALiog.ttf" + }, + { + "family": "Noto Sans Warang Citi", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "warang-citi" + ], + "version": "v17", + "lastModified": "2022-09-28", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanswarangciti/v17/EYqtmb9SzL1YtsZSScyKDXIeOv3w-zgsNvKRpeVCCXzdgA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanswarangciti/v17/EYqtmb9SzL1YtsZSScyKDXIeOv3w-zgsNvKhpO9G.ttf" + }, + { + "family": "Noto Sans Yi", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "yi" + ], + "version": "v19", + "lastModified": "2023-05-02", + "files": { + "regular": "https://fonts.gstatic.com/s/notosansyi/v19/sJoD3LFXjsSdcnzn071rO3apxVDJNVgSNg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosansyi/v19/sJoD3LFXjsSdcnzn071rO3aZxFrN.ttf" + }, + { + "family": "Noto Sans Zanabazar Square", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "zanabazar-square" + ], + "version": "v19", + "lastModified": "2023-09-27", + "files": { + "regular": "https://fonts.gstatic.com/s/notosanszanabazarsquare/v19/Cn-jJsuGWQxOjaGwMQ6fOicyxLBEMRfDtkzl4uagQtJxOCEgN0Gc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notosanszanabazarsquare/v19/Cn-jJsuGWQxOjaGwMQ6fOicyxLBEMRfDtkzl4uagQuJwMiU.ttf" + }, + { + "family": "Noto Serif", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2023-10-25", + "files": { + "100": "https://fonts.gstatic.com/s/notoserif/v23/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZqFGjwM0Lhq_Szw.ttf", + "200": "https://fonts.gstatic.com/s/notoserif/v23/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZKFCjwM0Lhq_Szw.ttf", + "300": "https://fonts.gstatic.com/s/notoserif/v23/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZ9lCjwM0Lhq_Szw.ttf", + "regular": "https://fonts.gstatic.com/s/notoserif/v23/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZqFCjwM0Lhq_Szw.ttf", + "500": "https://fonts.gstatic.com/s/notoserif/v23/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZmlCjwM0Lhq_Szw.ttf", + "600": "https://fonts.gstatic.com/s/notoserif/v23/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZdlejwM0Lhq_Szw.ttf", + "700": "https://fonts.gstatic.com/s/notoserif/v23/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZT1ejwM0Lhq_Szw.ttf", + "800": "https://fonts.gstatic.com/s/notoserif/v23/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZKFejwM0Lhq_Szw.ttf", + "900": "https://fonts.gstatic.com/s/notoserif/v23/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZAVejwM0Lhq_Szw.ttf", + "100italic": "https://fonts.gstatic.com/s/notoserif/v23/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBNLgscPpKrCzyUi.ttf", + "200italic": "https://fonts.gstatic.com/s/notoserif/v23/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPLg8cPpKrCzyUi.ttf", + "300italic": "https://fonts.gstatic.com/s/notoserif/v23/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBMVg8cPpKrCzyUi.ttf", + "italic": "https://fonts.gstatic.com/s/notoserif/v23/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBNLg8cPpKrCzyUi.ttf", + "500italic": "https://fonts.gstatic.com/s/notoserif/v23/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBN5g8cPpKrCzyUi.ttf", + "600italic": "https://fonts.gstatic.com/s/notoserif/v23/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBOVhMcPpKrCzyUi.ttf", + "700italic": "https://fonts.gstatic.com/s/notoserif/v23/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBOshMcPpKrCzyUi.ttf", + "800italic": "https://fonts.gstatic.com/s/notoserif/v23/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPLhMcPpKrCzyUi.ttf", + "900italic": "https://fonts.gstatic.com/s/notoserif/v23/ga6saw1J5X9T9RW6j9bNfFIMZhhWnFTyNZIQD1-_FXP0RgnaOg9MYBPihMcPpKrCzyUi.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserif/v23/ga6iaw1J5X9T9RW6j9bNVls-hfgvz8JcMofYTa32J4wsL2JAlAhZqFCTwccP.ttf" + }, + { + "family": "Noto Serif Ahom", + "variants": [ + "regular" + ], + "subsets": [ + "ahom", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2023-11-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifahom/v20/FeVIS0hfp6cprmEUffAW_fUL_AN-wuYrPFiwaw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifahom/v20/FeVIS0hfp6cprmEUffAW_fUL_ANOw-wv.ttf" + }, + { + "family": "Noto Serif Armenian", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "armenian", + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2023-11-09", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifarmenian/v27/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZi8ObxvXagGdkbg.ttf", + "200": "https://fonts.gstatic.com/s/notoserifarmenian/v27/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZC8KbxvXagGdkbg.ttf", + "300": "https://fonts.gstatic.com/s/notoserifarmenian/v27/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZ1cKbxvXagGdkbg.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifarmenian/v27/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZi8KbxvXagGdkbg.ttf", + "500": "https://fonts.gstatic.com/s/notoserifarmenian/v27/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZucKbxvXagGdkbg.ttf", + "600": "https://fonts.gstatic.com/s/notoserifarmenian/v27/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZVcWbxvXagGdkbg.ttf", + "700": "https://fonts.gstatic.com/s/notoserifarmenian/v27/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZbMWbxvXagGdkbg.ttf", + "800": "https://fonts.gstatic.com/s/notoserifarmenian/v27/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZC8WbxvXagGdkbg.ttf", + "900": "https://fonts.gstatic.com/s/notoserifarmenian/v27/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZIsWbxvXagGdkbg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifarmenian/v27/3XFMEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ_zDNzDe5xNnKxyZi8Krx__e.ttf" + }, + { + "family": "Noto Serif Balinese", + "variants": [ + "regular" + ], + "subsets": [ + "balinese", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-07-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifbalinese/v20/QdVKSS0-JginysQSRvuCmUMB_wVeQAxXRbgJdhapcUU.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifbalinese/v20/QdVKSS0-JginysQSRvuCmUMB_wVeQAxXdbkDcg.ttf" + }, + { + "family": "Noto Serif Bengali", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "bengali", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2022-09-22", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAH3qn4LjQH8yD.ttf", + "200": "https://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfeAHnqn4LjQH8yD.ttf", + "300": "https://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfdeHnqn4LjQH8yD.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAHnqn4LjQH8yD.ttf", + "500": "https://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcyHnqn4LjQH8yD.ttf", + "600": "https://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JffeGXqn4LjQH8yD.ttf", + "700": "https://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JffnGXqn4LjQH8yD.ttf", + "800": "https://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfeAGXqn4LjQH8yD.ttf", + "900": "https://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfepGXqn4LjQH8yD.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifbengali/v19/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAHkqm6rw.ttf" + }, + { + "family": "Noto Serif Devanagari", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v30", + "lastModified": "2024-07-01", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifdevanagari/v30/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTA-og-HMUe1u_dv.ttf", + "200": "https://fonts.gstatic.com/s/notoserifdevanagari/v30/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTC-ow-HMUe1u_dv.ttf", + "300": "https://fonts.gstatic.com/s/notoserifdevanagari/v30/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTBgow-HMUe1u_dv.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifdevanagari/v30/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTA-ow-HMUe1u_dv.ttf", + "500": "https://fonts.gstatic.com/s/notoserifdevanagari/v30/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTAMow-HMUe1u_dv.ttf", + "600": "https://fonts.gstatic.com/s/notoserifdevanagari/v30/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTDgpA-HMUe1u_dv.ttf", + "700": "https://fonts.gstatic.com/s/notoserifdevanagari/v30/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTDZpA-HMUe1u_dv.ttf", + "800": "https://fonts.gstatic.com/s/notoserifdevanagari/v30/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTC-pA-HMUe1u_dv.ttf", + "900": "https://fonts.gstatic.com/s/notoserifdevanagari/v30/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTCXpA-HMUe1u_dv.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifdevanagari/v30/x3dYcl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4Hh2dGyFzPLcQPVbnRNeFsw0xRWb6uxTA-oz-GO0M.ttf" + }, + { + "family": "Noto Serif Display", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v24", + "lastModified": "2023-08-25", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpd49gKaDU9hvzC.ttf", + "200": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVrd4tgKaDU9hvzC.ttf", + "300": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVoD4tgKaDU9hvzC.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpd4tgKaDU9hvzC.ttf", + "500": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpv4tgKaDU9hvzC.ttf", + "600": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVqD5dgKaDU9hvzC.ttf", + "700": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVq65dgKaDU9hvzC.ttf", + "800": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVrd5dgKaDU9hvzC.ttf", + "900": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVr05dgKaDU9hvzC.ttf", + "100italic": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoTBIYjEfg-zCmf4.ttf", + "200italic": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VobBJYjEfg-zCmf4.ttf", + "300italic": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoW5JYjEfg-zCmf4.ttf", + "italic": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoTBJYjEfg-zCmf4.ttf", + "500italic": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoQJJYjEfg-zCmf4.ttf", + "600italic": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-Voe5OYjEfg-zCmf4.ttf", + "700italic": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoddOYjEfg-zCmf4.ttf", + "800italic": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VobBOYjEfg-zCmf4.ttf", + "900italic": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buEPppa9f8_vkXaZLAgP0G5Wi6QmA1QwcLRCOrN8uo7t6FBJOJTQit-N33sQOk-VoZlOYjEfg-zCmf4.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifdisplay/v24/buERppa9f8_vkXaZLAgP0G5Wi6QmA1QaeYah2sovLCDq_ZgLyt3idQfktOG-PVpd4ugLYjE.ttf" + }, + { + "family": "Noto Serif Dogra", + "variants": [ + "regular" + ], + "subsets": [ + "dogra", + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2023-11-28", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifdogra/v23/MQpP-XquKMC7ROPP3QOOlm7xPu3fGy63IbPzkns.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifdogra/v23/MQpP-XquKMC7ROPP3QOOlm7xPu3fKy-9JQ.ttf" + }, + { + "family": "Noto Serif Ethiopic", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "ethiopic", + "latin", + "latin-ext" + ], + "version": "v30", + "lastModified": "2023-09-14", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifethiopic/v30/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCzSQjkaO9UVLyiw.ttf", + "200": "https://fonts.gstatic.com/s/notoserifethiopic/v30/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCTSUjkaO9UVLyiw.ttf", + "300": "https://fonts.gstatic.com/s/notoserifethiopic/v30/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCkyUjkaO9UVLyiw.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifethiopic/v30/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCzSUjkaO9UVLyiw.ttf", + "500": "https://fonts.gstatic.com/s/notoserifethiopic/v30/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxC_yUjkaO9UVLyiw.ttf", + "600": "https://fonts.gstatic.com/s/notoserifethiopic/v30/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCEyIjkaO9UVLyiw.ttf", + "700": "https://fonts.gstatic.com/s/notoserifethiopic/v30/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCKiIjkaO9UVLyiw.ttf", + "800": "https://fonts.gstatic.com/s/notoserifethiopic/v30/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCTSIjkaO9UVLyiw.ttf", + "900": "https://fonts.gstatic.com/s/notoserifethiopic/v30/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCZCIjkaO9UVLyiw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifethiopic/v30/V8mjoR7-XjwJ8_Au3Ti5tXj5Rd83frpWLK4d-taxqWw2HMWjDxBAg5S_0QsrggxCzSUTkKm5.ttf" + }, + { + "family": "Noto Serif Georgian", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "georgian", + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2023-11-28", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifgeorgian/v26/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSTvsfdzTw-FgZxQ.ttf", + "200": "https://fonts.gstatic.com/s/notoserifgeorgian/v26/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSzvofdzTw-FgZxQ.ttf", + "300": "https://fonts.gstatic.com/s/notoserifgeorgian/v26/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSEPofdzTw-FgZxQ.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifgeorgian/v26/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSTvofdzTw-FgZxQ.ttf", + "500": "https://fonts.gstatic.com/s/notoserifgeorgian/v26/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSfPofdzTw-FgZxQ.ttf", + "600": "https://fonts.gstatic.com/s/notoserifgeorgian/v26/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSkP0fdzTw-FgZxQ.ttf", + "700": "https://fonts.gstatic.com/s/notoserifgeorgian/v26/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSqf0fdzTw-FgZxQ.ttf", + "800": "https://fonts.gstatic.com/s/notoserifgeorgian/v26/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSzv0fdzTw-FgZxQ.ttf", + "900": "https://fonts.gstatic.com/s/notoserifgeorgian/v26/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aS5_0fdzTw-FgZxQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifgeorgian/v26/VEMXRpd8s4nv8hG_qOzL7HOAw4nt0Sl_XxyaEduNMvi7T6Y4etRnmGhyLop-R3aSTvovdj70.ttf" + }, + { + "family": "Noto Serif Grantha", + "variants": [ + "regular" + ], + "subsets": [ + "grantha", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-06-10", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifgrantha/v21/qkBIXuEH5NzDDvc3fLDYxPk9-Wq3WLiqFENLR7fHGw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifgrantha/v21/qkBIXuEH5NzDDvc3fLDYxPk9-Wq3WLiaFUlP.ttf" + }, + { + "family": "Noto Serif Gujarati", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v27", + "lastModified": "2023-11-28", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifgujarati/v27/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYycYzuM1Kf-OJu.ttf", + "200": "https://fonts.gstatic.com/s/notoserifgujarati/v27/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuaycIzuM1Kf-OJu.ttf", + "300": "https://fonts.gstatic.com/s/notoserifgujarati/v27/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuZscIzuM1Kf-OJu.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifgujarati/v27/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYycIzuM1Kf-OJu.ttf", + "500": "https://fonts.gstatic.com/s/notoserifgujarati/v27/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYAcIzuM1Kf-OJu.ttf", + "600": "https://fonts.gstatic.com/s/notoserifgujarati/v27/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Hubsd4zuM1Kf-OJu.ttf", + "700": "https://fonts.gstatic.com/s/notoserifgujarati/v27/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HubVd4zuM1Kf-OJu.ttf", + "800": "https://fonts.gstatic.com/s/notoserifgujarati/v27/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Huayd4zuM1Kf-OJu.ttf", + "900": "https://fonts.gstatic.com/s/notoserifgujarati/v27/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2Huabd4zuM1Kf-OJu.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifgujarati/v27/hESa6WBlOixO-3OJ1FTmTsmqlBRUJBVkcgNLpdsspzP2HuYycLzvOVY.ttf" + }, + { + "family": "Noto Serif Gurmukhi", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "gurmukhi", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2023-04-27", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6-eBTNmqVU7y6l.ttf", + "200": "https://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4-eRTNmqVU7y6l.ttf", + "300": "https://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr7geRTNmqVU7y6l.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6-eRTNmqVU7y6l.ttf", + "500": "https://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6MeRTNmqVU7y6l.ttf", + "600": "https://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr5gfhTNmqVU7y6l.ttf", + "700": "https://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr5ZfhTNmqVU7y6l.ttf", + "800": "https://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4-fhTNmqVU7y6l.ttf", + "900": "https://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr4XfhTNmqVU7y6l.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifgurmukhi/v20/92z-tA9LNqsg7tCYlXdCV1VPnAEeDU0vLoYMbylXk0xTCr6-eSTMkKE.ttf" + }, + { + "family": "Noto Serif HK", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "chinese-hongkong", + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-23", + "files": { + "200": "https://fonts.gstatic.com/s/notoserifhk/v9/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMf-K2RmV9Su1M6i.ttf", + "300": "https://fonts.gstatic.com/s/notoserifhk/v9/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMcgK2RmV9Su1M6i.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifhk/v9/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMd-K2RmV9Su1M6i.ttf", + "500": "https://fonts.gstatic.com/s/notoserifhk/v9/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMdMK2RmV9Su1M6i.ttf", + "600": "https://fonts.gstatic.com/s/notoserifhk/v9/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMegLGRmV9Su1M6i.ttf", + "700": "https://fonts.gstatic.com/s/notoserifhk/v9/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMeZLGRmV9Su1M6i.ttf", + "800": "https://fonts.gstatic.com/s/notoserifhk/v9/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMf-LGRmV9Su1M6i.ttf", + "900": "https://fonts.gstatic.com/s/notoserifhk/v9/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMfXLGRmV9Su1M6i.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifhk/v9/BngdUXBETWXI6LwlBZGcqL-B_KuJFcgfwP_9RMd-K1RnXdA.ttf" + }, + { + "family": "Noto Serif Hebrew", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext" + ], + "version": "v28", + "lastModified": "2024-06-10", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifhebrew/v28/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVAwTAG8_vlQxz24.ttf", + "200": "https://fonts.gstatic.com/s/notoserifhebrew/v28/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVIwSAG8_vlQxz24.ttf", + "300": "https://fonts.gstatic.com/s/notoserifhebrew/v28/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVFISAG8_vlQxz24.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifhebrew/v28/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVAwSAG8_vlQxz24.ttf", + "500": "https://fonts.gstatic.com/s/notoserifhebrew/v28/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVD4SAG8_vlQxz24.ttf", + "600": "https://fonts.gstatic.com/s/notoserifhebrew/v28/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVNIVAG8_vlQxz24.ttf", + "700": "https://fonts.gstatic.com/s/notoserifhebrew/v28/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVOsVAG8_vlQxz24.ttf", + "800": "https://fonts.gstatic.com/s/notoserifhebrew/v28/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVIwVAG8_vlQxz24.ttf", + "900": "https://fonts.gstatic.com/s/notoserifhebrew/v28/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVKUVAG8_vlQxz24.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifhebrew/v28/k3k0o9MMPvpLmixYH7euCwmkS9DohjX1-kRyiqyBqIxnoLbp93i9IKrXKF_qVAwSMG41ug.ttf" + }, + { + "family": "Noto Serif JP", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v30", + "lastModified": "2024-09-23", + "files": { + "200": "https://fonts.gstatic.com/s/notoserifjp/v30/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2byxOubAILO5wBCU.ttf", + "300": "https://fonts.gstatic.com/s/notoserifjp/v30/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bxvOubAILO5wBCU.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifjp/v30/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bwxOubAILO5wBCU.ttf", + "500": "https://fonts.gstatic.com/s/notoserifjp/v30/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bwDOubAILO5wBCU.ttf", + "600": "https://fonts.gstatic.com/s/notoserifjp/v30/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bzvPebAILO5wBCU.ttf", + "700": "https://fonts.gstatic.com/s/notoserifjp/v30/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bzWPebAILO5wBCU.ttf", + "800": "https://fonts.gstatic.com/s/notoserifjp/v30/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2byxPebAILO5wBCU.ttf", + "900": "https://fonts.gstatic.com/s/notoserifjp/v30/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2byYPebAILO5wBCU.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifjp/v30/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bwxOtbBKrc.ttf" + }, + { + "family": "Noto Serif KR", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "korean", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v28", + "lastModified": "2024-09-23", + "files": { + "200": "https://fonts.gstatic.com/s/notoserifkr/v28/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOnchmeM524ZvTePRu.ttf", + "300": "https://fonts.gstatic.com/s/notoserifkr/v28/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOnci4eM524ZvTePRu.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifkr/v28/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOncjmeM524ZvTePRu.ttf", + "500": "https://fonts.gstatic.com/s/notoserifkr/v28/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOncjUeM524ZvTePRu.ttf", + "600": "https://fonts.gstatic.com/s/notoserifkr/v28/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOncg4f8524ZvTePRu.ttf", + "700": "https://fonts.gstatic.com/s/notoserifkr/v28/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOncgBf8524ZvTePRu.ttf", + "800": "https://fonts.gstatic.com/s/notoserifkr/v28/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOnchmf8524ZvTePRu.ttf", + "900": "https://fonts.gstatic.com/s/notoserifkr/v28/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOnchPf8524ZvTePRu.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifkr/v28/3JnoSDn90Gmq2mr3blnHaTZXbOtLJDvui3JOncjmeP53658.ttf" + }, + { + "family": "Noto Serif Kannada", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "kannada", + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2023-10-25", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifkannada/v27/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgcYCceRJ71svgcI.ttf", + "200": "https://fonts.gstatic.com/s/notoserifkannada/v27/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgUYDceRJ71svgcI.ttf", + "300": "https://fonts.gstatic.com/s/notoserifkannada/v27/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgZgDceRJ71svgcI.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifkannada/v27/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgcYDceRJ71svgcI.ttf", + "500": "https://fonts.gstatic.com/s/notoserifkannada/v27/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgfQDceRJ71svgcI.ttf", + "600": "https://fonts.gstatic.com/s/notoserifkannada/v27/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgRgEceRJ71svgcI.ttf", + "700": "https://fonts.gstatic.com/s/notoserifkannada/v27/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgSEEceRJ71svgcI.ttf", + "800": "https://fonts.gstatic.com/s/notoserifkannada/v27/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgUYEceRJ71svgcI.ttf", + "900": "https://fonts.gstatic.com/s/notoserifkannada/v27/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgW8EceRJ71svgcI.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifkannada/v27/v6-8GZHLJFKIhClqUYqXDiWqpxQxWSPoW6bz-l4hGHiNgcYDQeVD6w.ttf" + }, + { + "family": "Noto Serif Khitan Small Script", + "variants": [ + "regular" + ], + "subsets": [ + "khitan-small-script", + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifkhitansmallscript/v4/jizzRFVKsm4Bt9PrbSzC4KLlQUF5lRJg5j-l5PvyhfTdd4TsZ8lb39iddA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifkhitansmallscript/v4/jizzRFVKsm4Bt9PrbSzC4KLlQUF5lRJg5j-l5PvyhfTdd4TcZsNf.ttf" + }, + { + "family": "Noto Serif Khmer", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "khmer", + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2023-10-25", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifkhmer/v25/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN6B4wXEZK9Xo4xg.ttf", + "200": "https://fonts.gstatic.com/s/notoserifkhmer/v25/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNaB8wXEZK9Xo4xg.ttf", + "300": "https://fonts.gstatic.com/s/notoserifkhmer/v25/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNth8wXEZK9Xo4xg.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifkhmer/v25/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN6B8wXEZK9Xo4xg.ttf", + "500": "https://fonts.gstatic.com/s/notoserifkhmer/v25/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN2h8wXEZK9Xo4xg.ttf", + "600": "https://fonts.gstatic.com/s/notoserifkhmer/v25/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNNhgwXEZK9Xo4xg.ttf", + "700": "https://fonts.gstatic.com/s/notoserifkhmer/v25/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNDxgwXEZK9Xo4xg.ttf", + "800": "https://fonts.gstatic.com/s/notoserifkhmer/v25/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNaBgwXEZK9Xo4xg.ttf", + "900": "https://fonts.gstatic.com/s/notoserifkhmer/v25/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdNQRgwXEZK9Xo4xg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifkhmer/v25/-F6UfidqLzI2JPCkXAO2hmogq0146FxtbwKEr951z5s6lI40sDRH_AVhUKdN6B8AXUxO.ttf" + }, + { + "family": "Noto Serif Khojki", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "khojki", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-02-02", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifkhojki/v11/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMY0ghvyZ0Qtc5HAQ.ttf", + "500": "https://fonts.gstatic.com/s/notoserifkhojki/v11/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMY4AhvyZ0Qtc5HAQ.ttf", + "600": "https://fonts.gstatic.com/s/notoserifkhojki/v11/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMYDA9vyZ0Qtc5HAQ.ttf", + "700": "https://fonts.gstatic.com/s/notoserifkhojki/v11/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMYNQ9vyZ0Qtc5HAQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifkhojki/v11/I_uHMoOduATTei9aP90ctmPGxP2rBKTM4mcQ5M3z9QMY0ghfyJcU.ttf" + }, + { + "family": "Noto Serif Lao", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "lao", + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2023-09-27", + "files": { + "100": "https://fonts.gstatic.com/s/notoseriflao/v24/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VeMLrvOjlmyhHHQ.ttf", + "200": "https://fonts.gstatic.com/s/notoseriflao/v24/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VWMKrvOjlmyhHHQ.ttf", + "300": "https://fonts.gstatic.com/s/notoseriflao/v24/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8Vb0KrvOjlmyhHHQ.ttf", + "regular": "https://fonts.gstatic.com/s/notoseriflao/v24/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VeMKrvOjlmyhHHQ.ttf", + "500": "https://fonts.gstatic.com/s/notoseriflao/v24/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VdEKrvOjlmyhHHQ.ttf", + "600": "https://fonts.gstatic.com/s/notoseriflao/v24/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VT0NrvOjlmyhHHQ.ttf", + "700": "https://fonts.gstatic.com/s/notoseriflao/v24/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VQQNrvOjlmyhHHQ.ttf", + "800": "https://fonts.gstatic.com/s/notoseriflao/v24/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VWMNrvOjlmyhHHQ.ttf", + "900": "https://fonts.gstatic.com/s/notoseriflao/v24/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VUoNrvOjlmyhHHQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoseriflao/v24/3y9C6bYwcCjmsU8JEzCMxEwQfEBLk3f0rlSqCdaM_LlSNZ59oNw0BWH8VeMKnvKpkg.ttf" + }, + { + "family": "Noto Serif Makasar", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "makasar" + ], + "version": "v1", + "lastModified": "2023-06-30", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifmakasar/v1/memjYbqtyH-NiZpFH_9zcvB_PqkfY9S7j4HTVSmevw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifmakasar/v1/memjYbqtyH-NiZpFH_9zcvB_PqkfY9SLjovX.ttf" + }, + { + "family": "Noto Serif Malayalam", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "malayalam" + ], + "version": "v28", + "lastModified": "2023-05-02", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1t-1fnVwHpQVySg.ttf", + "200": "https://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1N-xfnVwHpQVySg.ttf", + "300": "https://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL16exfnVwHpQVySg.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1t-xfnVwHpQVySg.ttf", + "500": "https://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1hexfnVwHpQVySg.ttf", + "600": "https://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1aetfnVwHpQVySg.ttf", + "700": "https://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1UOtfnVwHpQVySg.ttf", + "800": "https://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1N-tfnVwHpQVySg.ttf", + "900": "https://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1HutfnVwHpQVySg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifmalayalam/v28/JIAZUU5sdmdP_HMcVcZFcH7DeVBeGVgSMEk2cmVDq1ihUXL1t-xvnFYD.ttf" + }, + { + "family": "Noto Serif Myanmar", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "myanmar" + ], + "version": "v13", + "lastModified": "2022-09-28", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJudM7F2Yv76aBKKs-bHMQfAHUw3jnNwBDsU9X6RPzQ.ttf", + "200": "https://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNbDHMefv2TeXJng.ttf", + "300": "https://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNCDLMefv2TeXJng.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJsdM7F2Yv76aBKKs-bHMQfAHUw3jn1pBrocdDqRA.ttf", + "500": "https://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNUDPMefv2TeXJng.ttf", + "600": "https://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNfDTMefv2TeXJng.ttf", + "700": "https://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNGDXMefv2TeXJng.ttf", + "800": "https://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNBDbMefv2TeXJng.ttf", + "900": "https://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJvdM7F2Yv76aBKKs-bHMQfAHUw3jnNIDfMefv2TeXJng.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifmyanmar/v13/VuJsdM7F2Yv76aBKKs-bHMQfAHUw3jnFpRDs.ttf" + }, + { + "family": "Noto Serif NP Hmong", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "nyiakeng-puachue-hmong" + ], + "version": "v1", + "lastModified": "2022-12-08", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbjPhFLp3u0rVO-d.ttf", + "500": "https://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbj9hFLp3u0rVO-d.ttf", + "600": "https://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbgRg1Lp3u0rVO-d.ttf", + "700": "https://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbgog1Lp3u0rVO-d.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifnphmong/v1/pONN1gItFMO79E4L1GPUi-2sixKHZyFj9Jy6_KhXPwzdvbjPhGLo1Ok.ttf" + }, + { + "family": "Noto Serif Old Uyghur", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "old-uyghur" + ], + "version": "v4", + "lastModified": "2024-09-23", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifolduyghur/v4/v6-KGZbLJFKIhClqUYqXDiGnrVoFRCW6JdwnKumeF2yVgA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifolduyghur/v4/v6-KGZbLJFKIhClqUYqXDiGnrVoFRCW6JdwXK-Oa.ttf" + }, + { + "family": "Noto Serif Oriya", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "oriya" + ], + "version": "v4", + "lastModified": "2023-03-09", + "files": { + "regular": "https://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxrc_Hy-v039MF1j.ttf", + "500": "https://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxru_Hy-v039MF1j.ttf", + "600": "https://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxoC-3y-v039MF1j.ttf", + "700": "https://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxo7-3y-v039MF1j.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoseriforiya/v4/MjQQmj56u-r69izk_LDqWN7w0cYByutv9qeWYrvLaxrc_Ey_tUk.ttf" + }, + { + "family": "Noto Serif Ottoman Siyaq", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "ottoman-siyaq-numbers" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifottomansiyaq/v2/fC1yPZ9IYnzRhTrrc4s8cSvYI0eozzaFOQ01qoHLJrgA00kAdA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifottomansiyaq/v2/fC1yPZ9IYnzRhTrrc4s8cSvYI0eozzaFOQ01qoH7J7IE.ttf" + }, + { + "family": "Noto Serif SC", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "chinese-simplified", + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v31", + "lastModified": "2024-07-30", + "files": { + "200": "https://fonts.gstatic.com/s/notoserifsc/v31/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7QCqyWv847hdDWC.ttf", + "300": "https://fonts.gstatic.com/s/notoserifsc/v31/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7TcqyWv847hdDWC.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifsc/v31/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7SCqyWv847hdDWC.ttf", + "500": "https://fonts.gstatic.com/s/notoserifsc/v31/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7SwqyWv847hdDWC.ttf", + "600": "https://fonts.gstatic.com/s/notoserifsc/v31/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7RcrCWv847hdDWC.ttf", + "700": "https://fonts.gstatic.com/s/notoserifsc/v31/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7RlrCWv847hdDWC.ttf", + "800": "https://fonts.gstatic.com/s/notoserifsc/v31/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7QCrCWv847hdDWC.ttf", + "900": "https://fonts.gstatic.com/s/notoserifsc/v31/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7QrrCWv847hdDWC.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifsc/v31/H4cyBXePl9DZ0Xe7gG9cyOj7uK2-n-D2rd4FY7SCqxWu-Yo.ttf" + }, + { + "family": "Noto Serif Sinhala", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "sinhala" + ], + "version": "v26", + "lastModified": "2023-05-02", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGxRlMsxaLRn3W-.ttf", + "200": "https://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pExR1MsxaLRn3W-.ttf", + "300": "https://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pHvR1MsxaLRn3W-.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGxR1MsxaLRn3W-.ttf", + "500": "https://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGDR1MsxaLRn3W-.ttf", + "600": "https://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pFvQFMsxaLRn3W-.ttf", + "700": "https://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pFWQFMsxaLRn3W-.ttf", + "800": "https://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pExQFMsxaLRn3W-.ttf", + "900": "https://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pEYQFMsxaLRn3W-.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifsinhala/v26/DtVEJwinQqclnZE2CnsPug9lgGC3y2F2nehQ7Eg4EdBKWxPiDxMivFLgRXs_-pGxR2Mtz6Y.ttf" + }, + { + "family": "Noto Serif TC", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "chinese-traditional", + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v32", + "lastModified": "2024-09-23", + "files": { + "200": "https://fonts.gstatic.com/s/notoseriftc/v32/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX_aMOpDOWYMr2OM.ttf", + "300": "https://fonts.gstatic.com/s/notoseriftc/v32/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX8EMOpDOWYMr2OM.ttf", + "regular": "https://fonts.gstatic.com/s/notoseriftc/v32/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX9aMOpDOWYMr2OM.ttf", + "500": "https://fonts.gstatic.com/s/notoseriftc/v32/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX9oMOpDOWYMr2OM.ttf", + "600": "https://fonts.gstatic.com/s/notoseriftc/v32/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX-EN-pDOWYMr2OM.ttf", + "700": "https://fonts.gstatic.com/s/notoseriftc/v32/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX-9N-pDOWYMr2OM.ttf", + "800": "https://fonts.gstatic.com/s/notoseriftc/v32/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX_aN-pDOWYMr2OM.ttf", + "900": "https://fonts.gstatic.com/s/notoseriftc/v32/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX_zN-pDOWYMr2OM.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoseriftc/v32/XLYzIZb5bJNDGYxLBibeHZ0BnHwmuanx8cUaGX9aMNpCM2I.ttf" + }, + { + "family": "Noto Serif Tamil", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil" + ], + "version": "v28", + "lastModified": "2023-04-27", + "files": { + "100": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecattN6R8Pz3v8Etew.ttf", + "200": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatNN-R8Pz3v8Etew.ttf", + "300": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecat6t-R8Pz3v8Etew.ttf", + "regular": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecattN-R8Pz3v8Etew.ttf", + "500": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatht-R8Pz3v8Etew.ttf", + "600": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatatiR8Pz3v8Etew.ttf", + "700": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatU9iR8Pz3v8Etew.ttf", + "800": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatNNiR8Pz3v8Etew.ttf", + "900": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecatHdiR8Pz3v8Etew.ttf", + "100italic": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJx5svbzncQ9e3wx.ttf", + "200italic": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJz5s_bzncQ9e3wx.ttf", + "300italic": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJwns_bzncQ9e3wx.ttf", + "italic": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJx5s_bzncQ9e3wx.ttf", + "500italic": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJxLs_bzncQ9e3wx.ttf", + "600italic": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJyntPbzncQ9e3wx.ttf", + "700italic": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJyetPbzncQ9e3wx.ttf", + "800italic": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJz5tPbzncQ9e3wx.ttf", + "900italic": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjldHr-klIgTfc40komjQ5OObazSJaI_D5kV8k_WLwFBmWrypghjeOa18G4fJzQtPbzncQ9e3wx.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoseriftamil/v28/LYjndHr-klIgTfc40komjQ5OObazYp-6H94dBF-RX6nNRJfi-Gf55IgAecattN-h8fbz.ttf" + }, + { + "family": "Noto Serif Tangut", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tangut" + ], + "version": "v16", + "lastModified": "2023-05-23", + "files": { + "regular": "https://fonts.gstatic.com/s/notoseriftangut/v16/xn76YGc72GKoTvER4Gn3b4m9Ern7Em41fcvN2KT4.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoseriftangut/v16/xn76YGc72GKoTvER4Gn3b4m9Ern7El40d88.ttf" + }, + { + "family": "Noto Serif Telugu", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "telugu" + ], + "version": "v26", + "lastModified": "2023-10-25", + "files": { + "100": "https://fonts.gstatic.com/s/notoseriftelugu/v26/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9D9TGwuY2fjgrZYA.ttf", + "200": "https://fonts.gstatic.com/s/notoseriftelugu/v26/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DdTCwuY2fjgrZYA.ttf", + "300": "https://fonts.gstatic.com/s/notoseriftelugu/v26/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DqzCwuY2fjgrZYA.ttf", + "regular": "https://fonts.gstatic.com/s/notoseriftelugu/v26/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9D9TCwuY2fjgrZYA.ttf", + "500": "https://fonts.gstatic.com/s/notoseriftelugu/v26/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DxzCwuY2fjgrZYA.ttf", + "600": "https://fonts.gstatic.com/s/notoseriftelugu/v26/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DKzewuY2fjgrZYA.ttf", + "700": "https://fonts.gstatic.com/s/notoseriftelugu/v26/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DEjewuY2fjgrZYA.ttf", + "800": "https://fonts.gstatic.com/s/notoseriftelugu/v26/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DdTewuY2fjgrZYA.ttf", + "900": "https://fonts.gstatic.com/s/notoseriftelugu/v26/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9DXDewuY2fjgrZYA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoseriftelugu/v26/tDbl2pCbnkEKmXNVmt2M1q6f4HWbbj6MRbYEeav7Fe9D9TCAuIeb.ttf" + }, + { + "family": "Noto Serif Thai", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "thai" + ], + "version": "v24", + "lastModified": "2023-10-25", + "files": { + "100": "https://fonts.gstatic.com/s/notoserifthai/v24/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oiFuRRCmsdu0Qx.ttf", + "200": "https://fonts.gstatic.com/s/notoserifthai/v24/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qiF-RRCmsdu0Qx.ttf", + "300": "https://fonts.gstatic.com/s/notoserifthai/v24/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0p8F-RRCmsdu0Qx.ttf", + "regular": "https://fonts.gstatic.com/s/notoserifthai/v24/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oiF-RRCmsdu0Qx.ttf", + "500": "https://fonts.gstatic.com/s/notoserifthai/v24/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oQF-RRCmsdu0Qx.ttf", + "600": "https://fonts.gstatic.com/s/notoserifthai/v24/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0r8EORRCmsdu0Qx.ttf", + "700": "https://fonts.gstatic.com/s/notoserifthai/v24/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0rFEORRCmsdu0Qx.ttf", + "800": "https://fonts.gstatic.com/s/notoserifthai/v24/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qiEORRCmsdu0Qx.ttf", + "900": "https://fonts.gstatic.com/s/notoserifthai/v24/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0qLEORRCmsdu0Qx.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifthai/v24/k3kyo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQlUv_bCKDUSzB5L0oiF9RQAG8.ttf" + }, + { + "family": "Noto Serif Tibetan", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "tibetan" + ], + "version": "v22", + "lastModified": "2023-03-09", + "files": { + "100": "https://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIrYdPS7rdSy_32c.ttf", + "200": "https://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIjYcPS7rdSy_32c.ttf", + "300": "https://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIugcPS7rdSy_32c.ttf", + "regular": "https://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIrYcPS7rdSy_32c.ttf", + "500": "https://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIoQcPS7rdSy_32c.ttf", + "600": "https://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmImgbPS7rdSy_32c.ttf", + "700": "https://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIlEbPS7rdSy_32c.ttf", + "800": "https://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIjYbPS7rdSy_32c.ttf", + "900": "https://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIh8bPS7rdSy_32c.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoseriftibetan/v22/gokGH7nwAEdtF9N45n0Vaz7O-pk0wsvxHeDXMfqguoCmIrYcDS_hcQ.ttf" + }, + { + "family": "Noto Serif Toto", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "toto" + ], + "version": "v5", + "lastModified": "2024-07-16", + "files": { + "regular": "https://fonts.gstatic.com/s/notoseriftoto/v5/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhCy3Il-aj55vdNug.ttf", + "500": "https://fonts.gstatic.com/s/notoseriftoto/v5/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhCx_Il-aj55vdNug.ttf", + "600": "https://fonts.gstatic.com/s/notoseriftoto/v5/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhC_PPl-aj55vdNug.ttf", + "700": "https://fonts.gstatic.com/s/notoseriftoto/v5/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhC8rPl-aj55vdNug.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoseriftoto/v5/Ktk6ALSMeZjqPnXk1rCkHYHNtwvtHItpjRP74dHhCy3Ip-ep4w.ttf" + }, + { + "family": "Noto Serif Vithkuqi", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vithkuqi" + ], + "version": "v1", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifvithkuqi/v1/YA94r1OY7FjTf5szakutkndpw9HH-4a4z9pklvg1IQSNcRWMdW2Cqy9A4teH.ttf", + "500": "https://fonts.gstatic.com/s/notoserifvithkuqi/v1/YA94r1OY7FjTf5szakutkndpw9HH-4a4z9pklvg1IQSNcRW-dW2Cqy9A4teH.ttf", + "600": "https://fonts.gstatic.com/s/notoserifvithkuqi/v1/YA94r1OY7FjTf5szakutkndpw9HH-4a4z9pklvg1IQSNcRVScm2Cqy9A4teH.ttf", + "700": "https://fonts.gstatic.com/s/notoserifvithkuqi/v1/YA94r1OY7FjTf5szakutkndpw9HH-4a4z9pklvg1IQSNcRVrcm2Cqy9A4teH.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifvithkuqi/v1/YA94r1OY7FjTf5szakutkndpw9HH-4a4z9pklvg1IQSNcRWMdV2DoSs.ttf" + }, + { + "family": "Noto Serif Yezidi", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "yezidi" + ], + "version": "v21", + "lastModified": "2023-07-24", + "files": { + "regular": "https://fonts.gstatic.com/s/notoserifyezidi/v21/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspD2yEkrlGJgmVCqg.ttf", + "500": "https://fonts.gstatic.com/s/notoserifyezidi/v21/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspD6SEkrlGJgmVCqg.ttf", + "600": "https://fonts.gstatic.com/s/notoserifyezidi/v21/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspDBSYkrlGJgmVCqg.ttf", + "700": "https://fonts.gstatic.com/s/notoserifyezidi/v21/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspDPCYkrlGJgmVCqg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoserifyezidi/v21/XLYPIYr5bJNDGYxLBibeHZAn3B5KJENnQjbfhMSVZspD2yEUr1uN.ttf" + }, + { + "family": "Noto Traditional Nushu", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "nushu" + ], + "version": "v17", + "lastModified": "2023-05-23", + "files": { + "300": "https://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXvy1tnPa7QoqirI.ttf", + "regular": "https://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXus1tnPa7QoqirI.ttf", + "500": "https://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXue1tnPa7QoqirI.ttf", + "600": "https://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXty0dnPa7QoqirI.ttf", + "700": "https://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXtL0dnPa7QoqirI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nototraditionalnushu/v17/SZcV3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67PUZX6ADm6oa8IXus1unOYbA.ttf" + }, + { + "family": "Noto Znamenny Musical Notation", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols", + "znamenny" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/notoznamennymusicalnotation/v3/CSRW4ylQnPyaDwAMK1U_AolTaJ4Lz41GcgaIZV9YO2rO88jvtpqqdoWa7g.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/notoznamennymusicalnotation/v3/CSRW4ylQnPyaDwAMK1U_AolTaJ4Lz41GcgaIZV9YO2rO88jft5Cu.ttf", + "colorCapabilities": [ + "COLRv0" + ] + }, + { + "family": "Nova Cut", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/novacut/v24/KFOkCnSYu8mL-39LkWxPKTM1K9nz.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/novacut/v24/KFOkCnSYu8mL-39LkVxOIzc.ttf" + }, + { + "family": "Nova Flat", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/novaflat/v24/QdVUSTc-JgqpytEbVebEuStkm20oJA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/novaflat/v24/QdVUSTc-JgqpytEbVeb0uCFg.ttf" + }, + { + "family": "Nova Mono", + "variants": [ + "regular" + ], + "subsets": [ + "greek", + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/novamono/v20/Cn-0JtiGWQ5Ajb--MRKfYGxYrdM9Sg.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/novamono/v20/Cn-0JtiGWQ5Ajb--MRKvYWZc.ttf" + }, + { + "family": "Nova Oval", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/novaoval/v24/jAnEgHdmANHvPenMaswCMY-h3cWkWg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/novaoval/v24/jAnEgHdmANHvPenMaswyMIWl.ttf" + }, + { + "family": "Nova Round", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/novaround/v21/flU9Rqquw5UhEnlwTJYTYYfeeetYEBc.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/novaround/v21/flU9Rqquw5UhEnlwTJYTUYbUfQ.ttf" + }, + { + "family": "Nova Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/novascript/v25/7Au7p_IpkSWSTWaFWkumvmQNEl0O0kEx.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/novascript/v25/7Au7p_IpkSWSTWaFWkumvlQMGFk.ttf" + }, + { + "family": "Nova Slim", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/novaslim/v24/Z9XUDmZNQAuem8jyZcn-yMOInrib9Q.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/novaslim/v24/Z9XUDmZNQAuem8jyZcnOycmM.ttf" + }, + { + "family": "Nova Square", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/novasquare/v24/RrQUbo9-9DV7b06QHgSWsZhARYMgGtWA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/novasquare/v24/RrQUbo9-9DV7b06QHgSWsahBT4c.ttf" + }, + { + "family": "Numans", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/numans/v15/SlGRmQmGupYAfH8IYRggiHVqaQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/numans/v15/SlGRmQmGupYAfH84YBIk.ttf" + }, + { + "family": "Nunito", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/nunito/v26/XRXI3I6Li01BKofiOc5wtlZ2di8HDDshRTM9jo7eTWk.ttf", + "300": "https://fonts.gstatic.com/s/nunito/v26/XRXI3I6Li01BKofiOc5wtlZ2di8HDOUhRTM9jo7eTWk.ttf", + "regular": "https://fonts.gstatic.com/s/nunito/v26/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTM9jo7eTWk.ttf", + "500": "https://fonts.gstatic.com/s/nunito/v26/XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhRTM9jo7eTWk.ttf", + "600": "https://fonts.gstatic.com/s/nunito/v26/XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTM9jo7eTWk.ttf", + "700": "https://fonts.gstatic.com/s/nunito/v26/XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTM9jo7eTWk.ttf", + "800": "https://fonts.gstatic.com/s/nunito/v26/XRXI3I6Li01BKofiOc5wtlZ2di8HDDsmRTM9jo7eTWk.ttf", + "900": "https://fonts.gstatic.com/s/nunito/v26/XRXI3I6Li01BKofiOc5wtlZ2di8HDBImRTM9jo7eTWk.ttf", + "200italic": "https://fonts.gstatic.com/s/nunito/v26/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiLXA3iqzbXWnoeg.ttf", + "300italic": "https://fonts.gstatic.com/s/nunito/v26/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNi83A3iqzbXWnoeg.ttf", + "italic": "https://fonts.gstatic.com/s/nunito/v26/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNirXA3iqzbXWnoeg.ttf", + "500italic": "https://fonts.gstatic.com/s/nunito/v26/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNin3A3iqzbXWnoeg.ttf", + "600italic": "https://fonts.gstatic.com/s/nunito/v26/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNic3c3iqzbXWnoeg.ttf", + "700italic": "https://fonts.gstatic.com/s/nunito/v26/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiSnc3iqzbXWnoeg.ttf", + "800italic": "https://fonts.gstatic.com/s/nunito/v26/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiLXc3iqzbXWnoeg.ttf", + "900italic": "https://fonts.gstatic.com/s/nunito/v26/XRXK3I6Li01BKofIMPyPbj8d7IEAGXNiBHc3iqzbXWnoeg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nunito/v26/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshdTI3ig.ttf" + }, + { + "family": "Nunito Sans", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GVilntF8kA_Ykqw.ttf", + "300": "https://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GiClntF8kA_Ykqw.ttf", + "regular": "https://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G1ilntF8kA_Ykqw.ttf", + "500": "https://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G5ClntF8kA_Ykqw.ttf", + "600": "https://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GCC5ntF8kA_Ykqw.ttf", + "700": "https://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GMS5ntF8kA_Ykqw.ttf", + "800": "https://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GVi5ntF8kA_Ykqw.ttf", + "900": "https://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4Gfy5ntF8kA_Ykqw.ttf", + "200italic": "https://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmoP91UgIfM0qxVd.ttf", + "300italic": "https://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmrR91UgIfM0qxVd.ttf", + "italic": "https://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmqP91UgIfM0qxVd.ttf", + "500italic": "https://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmq991UgIfM0qxVd.ttf", + "600italic": "https://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmpR8FUgIfM0qxVd.ttf", + "700italic": "https://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmpo8FUgIfM0qxVd.ttf", + "800italic": "https://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmoP8FUgIfM0qxVd.ttf", + "900italic": "https://fonts.gstatic.com/s/nunitosans/v15/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmom8FUgIfM0qxVd.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nunitosans/v15/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G1ilXtVUg.ttf" + }, + { + "family": "Nuosu SIL", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "yi" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/nuosusil/v10/8vIK7wM3wmRn_kc4uAjeFGxbO_zo-w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/nuosusil/v10/8vIK7wM3wmRn_kc4uAjuFWZf.ttf" + }, + { + "family": "Odibee Sans", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/odibeesans/v18/neIPzCSooYAho6WvjeToRYkyepH9qGsf.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/odibeesans/v18/neIPzCSooYAho6WvjeToRbkzcJU.ttf" + }, + { + "family": "Odor Mean Chey", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v27", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/odormeanchey/v27/raxkHiKDttkTe1aOGcJMR1A_4mrY2zqUKafv.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/odormeanchey/v27/raxkHiKDttkTe1aOGcJMR1A_4lrZ0T4.ttf" + }, + { + "family": "Offside", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/offside/v24/HI_KiYMWKa9QrAykQ5HiRp-dhpQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/offside/v24/HI_KiYMWKa9QrAykc5DoQg.ttf" + }, + { + "family": "Oi", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "tamil", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/oi/v19/w8gXH2EuRqtaut6yjBOG.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oi/v19/w8gXH2EuRptbsNo.ttf" + }, + { + "family": "Ojuju", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/ojuju/v3/7r3bqXF7v9ApbrMih3jYQBVm9-n_ypk552FRLYeruQ.ttf", + "300": "https://fonts.gstatic.com/s/ojuju/v3/7r3bqXF7v9ApbrMih3jYQBVm9-n_FJk552FRLYeruQ.ttf", + "regular": "https://fonts.gstatic.com/s/ojuju/v3/7r3bqXF7v9ApbrMih3jYQBVm9-n_Spk552FRLYeruQ.ttf", + "500": "https://fonts.gstatic.com/s/ojuju/v3/7r3bqXF7v9ApbrMih3jYQBVm9-n_eJk552FRLYeruQ.ttf", + "600": "https://fonts.gstatic.com/s/ojuju/v3/7r3bqXF7v9ApbrMih3jYQBVm9-n_lJ4552FRLYeruQ.ttf", + "700": "https://fonts.gstatic.com/s/ojuju/v3/7r3bqXF7v9ApbrMih3jYQBVm9-n_rZ4552FRLYeruQ.ttf", + "800": "https://fonts.gstatic.com/s/ojuju/v3/7r3bqXF7v9ApbrMih3jYQBVm9-n_yp4552FRLYeruQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ojuju/v3/7r3bqXF7v9ApbrMih3jYQBVm9-n_SpkJ5mtV.ttf" + }, + { + "family": "Old Standard TT", + "variants": [ + "regular", + "italic", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/oldstandardtt/v20/MwQubh3o1vLImiwAVvYawgcf2eVurVC5RHdCZg.ttf", + "italic": "https://fonts.gstatic.com/s/oldstandardtt/v20/MwQsbh3o1vLImiwAVvYawgcf2eVer1q9ZnJSZtQG.ttf", + "700": "https://fonts.gstatic.com/s/oldstandardtt/v20/MwQrbh3o1vLImiwAVvYawgcf2eVWEX-dTFxeb80flQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oldstandardtt/v20/MwQubh3o1vLImiwAVvYawgcf2eVerFq9.ttf" + }, + { + "family": "Oldenburg", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/oldenburg/v22/fC1jPY5JYWzbywv7c4V6UU6oXyndrw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oldenburg/v22/fC1jPY5JYWzbywv7c4VKUESs.ttf" + }, + { + "family": "Ole", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ole/v3/dFazZf6Z-rd89fw69qJ_ew.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ole/v3/dFazZf6Z-rdM9PY-.ttf" + }, + { + "family": "Oleo Script", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/oleoscript/v14/rax5HieDvtMOe0iICsUccBhasU7Q8Cad.ttf", + "700": "https://fonts.gstatic.com/s/oleoscript/v14/raxkHieDvtMOe0iICsUccCDmnmrY2zqUKafv.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oleoscript/v14/rax5HieDvtMOe0iICsUccChbu0o.ttf" + }, + { + "family": "Oleo Script Swash Caps", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/oleoscriptswashcaps/v13/Noaj6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HMXquSY0Hg90.ttf", + "700": "https://fonts.gstatic.com/s/oleoscriptswashcaps/v13/Noag6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HCcaBbYUsn9T5dt0.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oleoscriptswashcaps/v13/Noaj6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HAXukTQ.ttf" + }, + { + "family": "Onest", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/onest/v6/gNMZW3F-SZuj7zOT0IfSjTS16cPh9R6ZshFMQWXgSQ.ttf", + "200": "https://fonts.gstatic.com/s/onest/v6/gNMZW3F-SZuj7zOT0IfSjTS16cPhdR-ZshFMQWXgSQ.ttf", + "300": "https://fonts.gstatic.com/s/onest/v6/gNMZW3F-SZuj7zOT0IfSjTS16cPhqx-ZshFMQWXgSQ.ttf", + "regular": "https://fonts.gstatic.com/s/onest/v6/gNMZW3F-SZuj7zOT0IfSjTS16cPh9R-ZshFMQWXgSQ.ttf", + "500": "https://fonts.gstatic.com/s/onest/v6/gNMZW3F-SZuj7zOT0IfSjTS16cPhxx-ZshFMQWXgSQ.ttf", + "600": "https://fonts.gstatic.com/s/onest/v6/gNMZW3F-SZuj7zOT0IfSjTS16cPhKxiZshFMQWXgSQ.ttf", + "700": "https://fonts.gstatic.com/s/onest/v6/gNMZW3F-SZuj7zOT0IfSjTS16cPhEhiZshFMQWXgSQ.ttf", + "800": "https://fonts.gstatic.com/s/onest/v6/gNMZW3F-SZuj7zOT0IfSjTS16cPhdRiZshFMQWXgSQ.ttf", + "900": "https://fonts.gstatic.com/s/onest/v6/gNMZW3F-SZuj7zOT0IfSjTS16cPhXBiZshFMQWXgSQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/onest/v6/gNMZW3F-SZuj7zOT0IfSjTS16cPh9R-psxtI.ttf" + }, + { + "family": "Oooh Baby", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ooohbaby/v4/2sDcZGJWgJTT2Jf76xQDb2-4C7wFZQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ooohbaby/v4/2sDcZGJWgJTT2Jf76xQzbmW8.ttf" + }, + { + "family": "Open Sans", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "hebrew", + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v40", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/opensans/v40/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4nY1M2xLER.ttf", + "regular": "https://fonts.gstatic.com/s/opensans/v40/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4nY1M2xLER.ttf", + "500": "https://fonts.gstatic.com/s/opensans/v40/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjr0C4nY1M2xLER.ttf", + "600": "https://fonts.gstatic.com/s/opensans/v40/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsgH1y4nY1M2xLER.ttf", + "700": "https://fonts.gstatic.com/s/opensans/v40/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4nY1M2xLER.ttf", + "800": "https://fonts.gstatic.com/s/opensans/v40/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgshZ1y4nY1M2xLER.ttf", + "300italic": "https://fonts.gstatic.com/s/opensans/v40/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVcUwaERZjA.ttf", + "italic": "https://fonts.gstatic.com/s/opensans/v40/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVcUwaERZjA.ttf", + "500italic": "https://fonts.gstatic.com/s/opensans/v40/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk_RkaVcUwaERZjA.ttf", + "600italic": "https://fonts.gstatic.com/s/opensans/v40/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkxhjaVcUwaERZjA.ttf", + "700italic": "https://fonts.gstatic.com/s/opensans/v40/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVcUwaERZjA.ttf", + "800italic": "https://fonts.gstatic.com/s/opensans/v40/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk0ZjaVcUwaERZjA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/opensans/v40/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4maVc.ttf" + }, + { + "family": "Oranienbaum", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/oranienbaum/v15/OZpHg_txtzZKMuXLIVrx-3zn7kz3dpHc.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oranienbaum/v15/OZpHg_txtzZKMuXLIVrx-0zm5Eg.ttf" + }, + { + "family": "Orbit", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/orbit/v1/_LOCmz7I-uHd2mjEeqciRwRm.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/orbit/v1/_LOCmz7I-uHd2ljFcKM.ttf" + }, + { + "family": "Orbitron", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin" + ], + "version": "v31", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/orbitron/v31/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyGy6xpmIyXjU1pg.ttf", + "500": "https://fonts.gstatic.com/s/orbitron/v31/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyKS6xpmIyXjU1pg.ttf", + "600": "https://fonts.gstatic.com/s/orbitron/v31/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyxSmxpmIyXjU1pg.ttf", + "700": "https://fonts.gstatic.com/s/orbitron/v31/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1ny_CmxpmIyXjU1pg.ttf", + "800": "https://fonts.gstatic.com/s/orbitron/v31/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nymymxpmIyXjU1pg.ttf", + "900": "https://fonts.gstatic.com/s/orbitron/v31/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nysimxpmIyXjU1pg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/orbitron/v31/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nyGy6Bp2g2.ttf" + }, + { + "family": "Oregano", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/oregano/v15/If2IXTPxciS3H4S2kZffPznO3yM.ttf", + "italic": "https://fonts.gstatic.com/s/oregano/v15/If2KXTPxciS3H4S2oZXVOxvLzyP_qw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oregano/v15/If2IXTPxciS3H4S2oZbVOw.ttf" + }, + { + "family": "Orelega One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/orelegaone/v12/3qTpojOggD2XtAdFb-QXZGt61EcYaQ7F.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/orelegaone/v12/3qTpojOggD2XtAdFb-QXZFt73kM.ttf" + }, + { + "family": "Orienta", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/orienta/v15/PlI9FlK4Jrl5Y9zNeyeo9HRFhcU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/orienta/v15/PlI9FlK4Jrl5Y9zNSyai8A.ttf" + }, + { + "family": "Original Surfer", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/originalsurfer/v22/RWmQoKGZ9vIirYntXJ3_MbekzNMiDEtvAlaMKw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/originalsurfer/v22/RWmQoKGZ9vIirYntXJ3_MbekzNMSDUFr.ttf" + }, + { + "family": "Oswald", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v53", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/oswald/v53/TK3_WkUHHAIjg75cFRf3bXL8LICs13FvgUFoZAaRliE.ttf", + "300": "https://fonts.gstatic.com/s/oswald/v53/TK3_WkUHHAIjg75cFRf3bXL8LICs169vgUFoZAaRliE.ttf", + "regular": "https://fonts.gstatic.com/s/oswald/v53/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvgUFoZAaRliE.ttf", + "500": "https://fonts.gstatic.com/s/oswald/v53/TK3_WkUHHAIjg75cFRf3bXL8LICs18NvgUFoZAaRliE.ttf", + "600": "https://fonts.gstatic.com/s/oswald/v53/TK3_WkUHHAIjg75cFRf3bXL8LICs1y9ogUFoZAaRliE.ttf", + "700": "https://fonts.gstatic.com/s/oswald/v53/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZogUFoZAaRliE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oswald/v53/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvsUBiYA.ttf" + }, + { + "family": "Outfit", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4TC0C4G-EiAou6Y.ttf", + "200": "https://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4bC1C4G-EiAou6Y.ttf", + "300": "https://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4W61C4G-EiAou6Y.ttf", + "regular": "https://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4TC1C4G-EiAou6Y.ttf", + "500": "https://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4QK1C4G-EiAou6Y.ttf", + "600": "https://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4e6yC4G-EiAou6Y.ttf", + "700": "https://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4deyC4G-EiAou6Y.ttf", + "800": "https://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4bCyC4G-EiAou6Y.ttf", + "900": "https://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4ZmyC4G-EiAou6Y.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/outfit/v11/QGYyz_MVcBeNP4NjuGObqx1XmO1I4TC1O4C0Fg.ttf" + }, + { + "family": "Over the Rainbow", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/overtherainbow/v20/11haGoXG1k_HKhMLUWz7Mc7vvW5upvOm9NA2XG0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/overtherainbow/v20/11haGoXG1k_HKhMLUWz7Mc7vvW5ulvKs8A.ttf" + }, + { + "family": "Overlock", + "variants": [ + "regular", + "italic", + "700", + "700italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/overlock/v17/Z9XVDmdMWRiN1_T9Z4Te4u2El6GC.ttf", + "italic": "https://fonts.gstatic.com/s/overlock/v17/Z9XTDmdMWRiN1_T9Z7Tc6OmmkrGC7Cs.ttf", + "700": "https://fonts.gstatic.com/s/overlock/v17/Z9XSDmdMWRiN1_T9Z7xizcmMvL2L9TLT.ttf", + "700italic": "https://fonts.gstatic.com/s/overlock/v17/Z9XQDmdMWRiN1_T9Z7Tc0FWJtrmp8CLTlNs.ttf", + "900": "https://fonts.gstatic.com/s/overlock/v17/Z9XSDmdMWRiN1_T9Z7xaz8mMvL2L9TLT.ttf", + "900italic": "https://fonts.gstatic.com/s/overlock/v17/Z9XQDmdMWRiN1_T9Z7Tc0G2Ltrmp8CLTlNs.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/overlock/v17/Z9XVDmdMWRiN1_T9Z7Tf6Ok.ttf" + }, + { + "family": "Overlock SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/overlocksc/v23/1cX3aUHKGZrstGAY8nwVzHGAq8Sk1PoH.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/overlocksc/v23/1cX3aUHKGZrstGAY8nwVzEGBocA.ttf" + }, + { + "family": "Overpass", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/overpass/v16/qFda35WCmI96Ajtm83upeyoaX6QPnlo6_PLrOZCLtce-og.ttf", + "200": "https://fonts.gstatic.com/s/overpass/v16/qFda35WCmI96Ajtm83upeyoaX6QPnlo6fPPrOZCLtce-og.ttf", + "300": "https://fonts.gstatic.com/s/overpass/v16/qFda35WCmI96Ajtm83upeyoaX6QPnlo6ovPrOZCLtce-og.ttf", + "regular": "https://fonts.gstatic.com/s/overpass/v16/qFda35WCmI96Ajtm83upeyoaX6QPnlo6_PPrOZCLtce-og.ttf", + "500": "https://fonts.gstatic.com/s/overpass/v16/qFda35WCmI96Ajtm83upeyoaX6QPnlo6zvPrOZCLtce-og.ttf", + "600": "https://fonts.gstatic.com/s/overpass/v16/qFda35WCmI96Ajtm83upeyoaX6QPnlo6IvTrOZCLtce-og.ttf", + "700": "https://fonts.gstatic.com/s/overpass/v16/qFda35WCmI96Ajtm83upeyoaX6QPnlo6G_TrOZCLtce-og.ttf", + "800": "https://fonts.gstatic.com/s/overpass/v16/qFda35WCmI96Ajtm83upeyoaX6QPnlo6fPTrOZCLtce-og.ttf", + "900": "https://fonts.gstatic.com/s/overpass/v16/qFda35WCmI96Ajtm83upeyoaX6QPnlo6VfTrOZCLtce-og.ttf", + "100italic": "https://fonts.gstatic.com/s/overpass/v16/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLADe5qPl8Kuosgz.ttf", + "200italic": "https://fonts.gstatic.com/s/overpass/v16/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCDepqPl8Kuosgz.ttf", + "300italic": "https://fonts.gstatic.com/s/overpass/v16/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLBdepqPl8Kuosgz.ttf", + "italic": "https://fonts.gstatic.com/s/overpass/v16/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLADepqPl8Kuosgz.ttf", + "500italic": "https://fonts.gstatic.com/s/overpass/v16/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLAxepqPl8Kuosgz.ttf", + "600italic": "https://fonts.gstatic.com/s/overpass/v16/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLDdfZqPl8Kuosgz.ttf", + "700italic": "https://fonts.gstatic.com/s/overpass/v16/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLDkfZqPl8Kuosgz.ttf", + "800italic": "https://fonts.gstatic.com/s/overpass/v16/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCDfZqPl8Kuosgz.ttf", + "900italic": "https://fonts.gstatic.com/s/overpass/v16/qFdU35WCmI96Ajtm81GgSdXCNs-VMF0vNLCqfZqPl8Kuosgz.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/overpass/v16/qFda35WCmI96Ajtm83upeyoaX6QPnlo6_PPbOJqP.ttf" + }, + { + "family": "Overpass Mono", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/overpassmono/v16/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EWKokzzXur-SmIr.ttf", + "regular": "https://fonts.gstatic.com/s/overpassmono/v16/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EXUokzzXur-SmIr.ttf", + "500": "https://fonts.gstatic.com/s/overpassmono/v16/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EXmokzzXur-SmIr.ttf", + "600": "https://fonts.gstatic.com/s/overpassmono/v16/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EUKpUzzXur-SmIr.ttf", + "700": "https://fonts.gstatic.com/s/overpassmono/v16/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EUzpUzzXur-SmIr.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/overpassmono/v16/_Xm5-H86tzKDdAPa-KPQZ-AC_COcRycquHlL6EXUonzyVO4.ttf" + }, + { + "family": "Ovo", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ovo/v17/yYLl0h7Wyfzjy4Q5_3WVxA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ovo/v17/yYLl0h7WyfzTyo49.ttf" + }, + { + "family": "Oxanium", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/oxanium/v19/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G83JfniMBXQ7d67x.ttf", + "300": "https://fonts.gstatic.com/s/oxanium/v19/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G80XfniMBXQ7d67x.ttf", + "regular": "https://fonts.gstatic.com/s/oxanium/v19/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G81JfniMBXQ7d67x.ttf", + "500": "https://fonts.gstatic.com/s/oxanium/v19/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G817fniMBXQ7d67x.ttf", + "600": "https://fonts.gstatic.com/s/oxanium/v19/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G82XeXiMBXQ7d67x.ttf", + "700": "https://fonts.gstatic.com/s/oxanium/v19/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G82ueXiMBXQ7d67x.ttf", + "800": "https://fonts.gstatic.com/s/oxanium/v19/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G83JeXiMBXQ7d67x.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oxanium/v19/RrQPboN_4yJ0JmiMUW7sIGjd1IA9G81JfkiND3A.ttf" + }, + { + "family": "Oxygen", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/oxygen/v15/2sDcZG1Wl4LcnbuCJW8Db2-4C7wFZQ.ttf", + "regular": "https://fonts.gstatic.com/s/oxygen/v15/2sDfZG1Wl4Lcnbu6iUcnZ0SkAg.ttf", + "700": "https://fonts.gstatic.com/s/oxygen/v15/2sDcZG1Wl4LcnbuCNWgDb2-4C7wFZQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oxygen/v15/2sDfZG1Wl4LcnbuKiE0j.ttf" + }, + { + "family": "Oxygen Mono", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/oxygenmono/v14/h0GsssGg9FxgDgCjLeAd7ijfze-PPlUu.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/oxygenmono/v14/h0GsssGg9FxgDgCjLeAd7hjex-s.ttf" + }, + { + "family": "PT Mono", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/ptmono/v13/9oRONYoBnWILk-9ArCg5MtPyAcg.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ptmono/v13/9oRONYoBnWILk-9AnCkzNg.ttf" + }, + { + "family": "PT Sans", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/ptsans/v17/jizaRExUiTo99u79P0WOxOGMMDQ.ttf", + "italic": "https://fonts.gstatic.com/s/ptsans/v17/jizYRExUiTo99u79D0eEwMOJIDQA-g.ttf", + "700": "https://fonts.gstatic.com/s/ptsans/v17/jizfRExUiTo99u79B_mh4OmnLD0Z4zM.ttf", + "700italic": "https://fonts.gstatic.com/s/ptsans/v17/jizdRExUiTo99u79D0e8fOytKB8c8zMrig.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ptsans/v17/jizaRExUiTo99u79D0SEwA.ttf" + }, + { + "family": "PT Sans Caption", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/ptsanscaption/v19/0FlMVP6Hrxmt7-fsUFhlFXNIlpcqfQXwQy6yxg.ttf", + "700": "https://fonts.gstatic.com/s/ptsanscaption/v19/0FlJVP6Hrxmt7-fsUFhlFXNIlpcSwSrUSwWuz38Tgg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ptsanscaption/v19/0FlMVP6Hrxmt7-fsUFhlFXNIlpcafA_0.ttf" + }, + { + "family": "PT Sans Narrow", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/ptsansnarrow/v18/BngRUXNadjH0qYEzV7ab-oWlsYCByxyKeuDp.ttf", + "700": "https://fonts.gstatic.com/s/ptsansnarrow/v18/BngSUXNadjH0qYEzV7ab-oWlsbg95DiCUfzgRd-3.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ptsansnarrow/v18/BngRUXNadjH0qYEzV7ab-oWlsbCAwRg.ttf" + }, + { + "family": "PT Serif", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/ptserif/v18/EJRVQgYoZZY2vCFuvDFRxL6ddjb-.ttf", + "italic": "https://fonts.gstatic.com/s/ptserif/v18/EJRTQgYoZZY2vCFuvAFTzrq_cyb-vco.ttf", + "700": "https://fonts.gstatic.com/s/ptserif/v18/EJRSQgYoZZY2vCFuvAnt65qVXSr3pNNB.ttf", + "700italic": "https://fonts.gstatic.com/s/ptserif/v18/EJRQQgYoZZY2vCFuvAFT9gaQVy7VocNB6Iw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ptserif/v18/EJRVQgYoZZY2vCFuvAFQzro.ttf" + }, + { + "family": "PT Serif Caption", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/ptserifcaption/v17/ieVl2ZhbGCW-JoW6S34pSDpqYKU059WxDCs5cvI.ttf", + "italic": "https://fonts.gstatic.com/s/ptserifcaption/v17/ieVj2ZhbGCW-JoW6S34pSDpqYKU019e7CAk8YvJEeg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ptserifcaption/v17/ieVl2ZhbGCW-JoW6S34pSDpqYKU019S7CA.ttf" + }, + { + "family": "Pacifico", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pacifico/v22/FwZY7-Qmy14u9lezJ96A4sijpFu_.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pacifico/v22/FwZY7-Qmy14u9lezJ-6B6Mw.ttf" + }, + { + "family": "Padauk", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "myanmar" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/padauk/v16/RrQRboJg-id7OnbBa0_g3LlYbg.ttf", + "700": "https://fonts.gstatic.com/s/padauk/v16/RrQSboJg-id7Onb512DE1JJEZ4YwGg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/padauk/v16/RrQRboJg-id7OnbxakXk.ttf" + }, + { + "family": "Padyakke Expanded One", + "variants": [ + "regular" + ], + "subsets": [ + "kannada", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/padyakkeexpandedone/v6/K2FvfY9El_tbR0JfHb6WWvrBaU6XAUvC4IAYOKRkpDjeoQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/padyakkeexpandedone/v6/K2FvfY9El_tbR0JfHb6WWvrBaU6XAUvC4IAoOa5g.ttf" + }, + { + "family": "Palanquin", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/palanquin/v13/9XUhlJ90n1fBFg7ceXwUEltI7rWmZzTH.ttf", + "200": "https://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUvnpoxJuqbi3ezg.ttf", + "300": "https://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwU2nloxJuqbi3ezg.ttf", + "regular": "https://fonts.gstatic.com/s/palanquin/v13/9XUnlJ90n1fBFg7ceXwsdlFMzLC2Zw.ttf", + "500": "https://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUgnhoxJuqbi3ezg.ttf", + "600": "https://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUrn9oxJuqbi3ezg.ttf", + "700": "https://fonts.gstatic.com/s/palanquin/v13/9XUilJ90n1fBFg7ceXwUyn5oxJuqbi3ezg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/palanquin/v13/9XUnlJ90n1fBFg7ceXwcd1tI.ttf" + }, + { + "family": "Palanquin Dark", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/palanquindark/v14/xn75YHgl1nqmANMB-26xC7yuF_6OTEo9VtfE.ttf", + "500": "https://fonts.gstatic.com/s/palanquindark/v14/xn76YHgl1nqmANMB-26xC7yuF8Z6ZW41fcvN2KT4.ttf", + "600": "https://fonts.gstatic.com/s/palanquindark/v14/xn76YHgl1nqmANMB-26xC7yuF8ZWYm41fcvN2KT4.ttf", + "700": "https://fonts.gstatic.com/s/palanquindark/v14/xn76YHgl1nqmANMB-26xC7yuF8YyY241fcvN2KT4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/palanquindark/v14/xn75YHgl1nqmANMB-26xC7yuF86PRk4.ttf" + }, + { + "family": "Palette Mosaic", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin" + ], + "version": "v11", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/palettemosaic/v11/AMOIz4aBvWuBFe3TohdW6YZ9MFiy4dxL4jSr.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/palettemosaic/v11/AMOIz4aBvWuBFe3TohdW6YZ9MGiz69g.ttf" + }, + { + "family": "Pangolin", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pangolin/v11/cY9GfjGcW0FPpi-tWPfK5d3aiLBG.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pangolin/v11/cY9GfjGcW0FPpi-tWMfL79k.ttf" + }, + { + "family": "Paprika", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2022-09-22", + "files": { + "regular": "https://fonts.gstatic.com/s/paprika/v21/8QIJdijZitv49rDfuIgOq7jkAOw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/paprika/v21/8QIJdijZitv49rDfiIkErw.ttf" + }, + { + "family": "Parisienne", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/parisienne/v13/E21i_d3kivvAkxhLEVZpcy96DuKuavM.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/parisienne/v13/E21i_d3kivvAkxhLEVZpQy5wCg.ttf" + }, + { + "family": "Passero One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/passeroone/v26/JTUTjIko8DOq5FeaeEAjgE5B5Arr-s50.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/passeroone/v26/JTUTjIko8DOq5FeaeEAjgH5A7g4.ttf" + }, + { + "family": "Passion One", + "variants": [ + "regular", + "700", + "900" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/passionone/v18/PbynFmL8HhTPqbjUzux3JHuW_Frg6YoV.ttf", + "700": "https://fonts.gstatic.com/s/passionone/v18/Pby6FmL8HhTPqbjUzux3JEMq037owpYcuH8y.ttf", + "900": "https://fonts.gstatic.com/s/passionone/v18/Pby6FmL8HhTPqbjUzux3JEMS0X7owpYcuH8y.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/passionone/v18/PbynFmL8HhTPqbjUzux3JEuX9l4.ttf" + }, + { + "family": "Passions Conflict", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/passionsconflict/v7/kmKnZrcrFhfafnWX9x0GuEC-zowow5NeYRI4CN2V.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/passionsconflict/v7/kmKnZrcrFhfafnWX9x0GuEC-zowow6NfaxY.ttf" + }, + { + "family": "Pathway Extreme", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak2Nx1Kyw3igP5eg.ttf", + "200": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakWN11Kyw3igP5eg.ttf", + "300": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakht11Kyw3igP5eg.ttf", + "regular": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak2N11Kyw3igP5eg.ttf", + "500": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak6t11Kyw3igP5eg.ttf", + "600": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakBtp1Kyw3igP5eg.ttf", + "700": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakP9p1Kyw3igP5eg.ttf", + "800": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakWNp1Kyw3igP5eg.ttf", + "900": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xakcdp1Kyw3igP5eg.ttf", + "100italic": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6daSYzqAbpepnF.ttf", + "200italic": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ4daCYzqAbpepnF.ttf", + "300italic": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ7DaCYzqAbpepnF.ttf", + "italic": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6daCYzqAbpepnF.ttf", + "500italic": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ6vaCYzqAbpepnF.ttf", + "600italic": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ5DbyYzqAbpepnF.ttf", + "700italic": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ56byYzqAbpepnF.ttf", + "800italic": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ4dbyYzqAbpepnF.ttf", + "900italic": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI4zCC3pJ0rsaH2_sD-QttXPfDlq0kVrdFsAHYoa7O3LCjRa7zISmmvKDxFz3m_CdF3-dIqTRGxEJ40byYzqAbpepnF.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pathwayextreme/v3/neI6zCC3pJ0rsaH2_sD-QttXPfDPonvkQ-pxx5gufvP2VmLjiFyxGf8BLymNjYv2Oy6vkLmw4xak2N1FKiYz.ttf" + }, + { + "family": "Pathway Gothic One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pathwaygothicone/v15/MwQrbgD32-KAvjkYGNUUxAtW7pEBwx-dTFxeb80flQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pathwaygothicone/v15/MwQrbgD32-KAvjkYGNUUxAtW7pEBwx-tTVZa.ttf" + }, + { + "family": "Patrick Hand", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/patrickhand/v23/LDI1apSQOAYtSuYWp8ZhfYeMWcjKm7sp8g.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/patrickhand/v23/LDI1apSQOAYtSuYWp8ZhfYe8WMLO.ttf" + }, + { + "family": "Patrick Hand SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/patrickhandsc/v15/0nkwC9f7MfsBiWcLtY65AWDK873ViSi6JQc7Vg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/patrickhandsc/v15/0nkwC9f7MfsBiWcLtY65AWDK873liCK-.ttf" + }, + { + "family": "Pattaya", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pattaya/v16/ea8ZadcqV_zkHY-XNdCn92ZEmVs.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pattaya/v16/ea8ZadcqV_zkHY-XBdGt8w.ttf" + }, + { + "family": "Patua One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/patuaone/v20/ZXuke1cDvLCKLDcimxBI5PNvNA9LuA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/patuaone/v20/ZXuke1cDvLCKLDcimxB45flr.ttf" + }, + { + "family": "Pavanam", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pavanam/v11/BXRrvF_aiezLh0xPDOtQ9Wf0QcE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pavanam/v11/BXRrvF_aiezLh0xPPOpa8Q.ttf" + }, + { + "family": "Paytone One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/paytoneone/v23/0nksC9P7MfYHj2oFtYm2CiTqivr9iBq_.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/paytoneone/v23/0nksC9P7MfYHj2oFtYm2ChTrgP4.ttf" + }, + { + "family": "Peddana", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v20", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/peddana/v20/aFTU7PBhaX89UcKWhh2aBYyMcKw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/peddana/v20/aFTU7PBhaX89UcKWthyQAQ.ttf" + }, + { + "family": "Peralta", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/peralta/v19/hYkJPu0-RP_9d3kRGxAhrv956B8.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/peralta/v19/hYkJPu0-RP_9d3kRKxErqg.ttf" + }, + { + "family": "Permanent Marker", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/permanentmarker/v16/Fh4uPib9Iyv2ucM6pGQMWimMp004HaqIfrT5nlk.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/permanentmarker/v16/Fh4uPib9Iyv2ucM6pGQMWimMp004LauCeg.ttf" + }, + { + "family": "Petemoss", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/petemoss/v7/A2BZn5tA2xgtGWHZgxkesKb9UouQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/petemoss/v7/A2BZn5tA2xgtGWHZgykfuqI.ttf" + }, + { + "family": "Petit Formal Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/petitformalscript/v17/B50TF6xQr2TXJBnGOFME6u5OR83oRP5qoHnqP4gZSiE.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/petitformalscript/v17/B50TF6xQr2TXJBnGOFME6u5OR83oRP5qkHjgOw.ttf" + }, + { + "family": "Petrona", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v32", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6NsARBH452Mvds.ttf", + "200": "https://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4NsQRBH452Mvds.ttf", + "300": "https://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk7TsQRBH452Mvds.ttf", + "regular": "https://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6NsQRBH452Mvds.ttf", + "500": "https://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6_sQRBH452Mvds.ttf", + "600": "https://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk5TtgRBH452Mvds.ttf", + "700": "https://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk5qtgRBH452Mvds.ttf", + "800": "https://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4NtgRBH452Mvds.ttf", + "900": "https://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk4ktgRBH452Mvds.ttf", + "100italic": "https://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8uwDFYpUN-dsIWs.ttf", + "200italic": "https://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8mwCFYpUN-dsIWs.ttf", + "300italic": "https://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8rICFYpUN-dsIWs.ttf", + "italic": "https://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8uwCFYpUN-dsIWs.ttf", + "500italic": "https://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8t4CFYpUN-dsIWs.ttf", + "600italic": "https://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8jIFFYpUN-dsIWs.ttf", + "700italic": "https://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8gsFFYpUN-dsIWs.ttf", + "800italic": "https://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8mwFFYpUN-dsIWs.ttf", + "900italic": "https://fonts.gstatic.com/s/petrona/v32/mtGr4_NXL7bZo9XXgXdCu2vkCLkNEVtF8kUFFYpUN-dsIWs.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/petrona/v32/mtGl4_NXL7bZo9XXq35wRLONYyOjFk6NsTRAFYo.ttf" + }, + { + "family": "Philosopher", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/philosopher/v20/vEFV2_5QCwIS4_Dhez5jcVBpRUwU08qe.ttf", + "italic": "https://fonts.gstatic.com/s/philosopher/v20/vEFX2_5QCwIS4_Dhez5jcWBrT0g21tqeR7c.ttf", + "700": "https://fonts.gstatic.com/s/philosopher/v20/vEFI2_5QCwIS4_Dhez5jcWjVamgc-NaXXq7H.ttf", + "700italic": "https://fonts.gstatic.com/s/philosopher/v20/vEFK2_5QCwIS4_Dhez5jcWBrd_QZ8tK1W77HtMo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/philosopher/v20/vEFV2_5QCwIS4_Dhez5jcWBoT0g.ttf" + }, + { + "family": "Phudu", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/phudu/v4/0FlJVPSHk0ya-7OUeO_U-Lwm7PkK62zUSwWuz38Tgg.ttf", + "regular": "https://fonts.gstatic.com/s/phudu/v4/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKtWzUSwWuz38Tgg.ttf", + "500": "https://fonts.gstatic.com/s/phudu/v4/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKh2zUSwWuz38Tgg.ttf", + "600": "https://fonts.gstatic.com/s/phudu/v4/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKa2vUSwWuz38Tgg.ttf", + "700": "https://fonts.gstatic.com/s/phudu/v4/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKUmvUSwWuz38Tgg.ttf", + "800": "https://fonts.gstatic.com/s/phudu/v4/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKNWvUSwWuz38Tgg.ttf", + "900": "https://fonts.gstatic.com/s/phudu/v4/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKHGvUSwWuz38Tgg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/phudu/v4/0FlJVPSHk0ya-7OUeO_U-Lwm7PkKtWzkSg-q.ttf" + }, + { + "family": "Piazzolla", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v36", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/piazzolla/v36/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LYx3Ly1AHfAAy5.ttf", + "200": "https://fonts.gstatic.com/s/piazzolla/v36/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JYxnLy1AHfAAy5.ttf", + "300": "https://fonts.gstatic.com/s/piazzolla/v36/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7KGxnLy1AHfAAy5.ttf", + "regular": "https://fonts.gstatic.com/s/piazzolla/v36/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LYxnLy1AHfAAy5.ttf", + "500": "https://fonts.gstatic.com/s/piazzolla/v36/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LqxnLy1AHfAAy5.ttf", + "600": "https://fonts.gstatic.com/s/piazzolla/v36/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7IGwXLy1AHfAAy5.ttf", + "700": "https://fonts.gstatic.com/s/piazzolla/v36/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7I_wXLy1AHfAAy5.ttf", + "800": "https://fonts.gstatic.com/s/piazzolla/v36/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JYwXLy1AHfAAy5.ttf", + "900": "https://fonts.gstatic.com/s/piazzolla/v36/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7JxwXLy1AHfAAy5.ttf", + "100italic": "https://fonts.gstatic.com/s/piazzolla/v36/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhZqw3gX9BRy5m5M.ttf", + "200italic": "https://fonts.gstatic.com/s/piazzolla/v36/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhRqx3gX9BRy5m5M.ttf", + "300italic": "https://fonts.gstatic.com/s/piazzolla/v36/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhcSx3gX9BRy5m5M.ttf", + "italic": "https://fonts.gstatic.com/s/piazzolla/v36/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhZqx3gX9BRy5m5M.ttf", + "500italic": "https://fonts.gstatic.com/s/piazzolla/v36/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhaix3gX9BRy5m5M.ttf", + "600italic": "https://fonts.gstatic.com/s/piazzolla/v36/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhUS23gX9BRy5m5M.ttf", + "700italic": "https://fonts.gstatic.com/s/piazzolla/v36/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhX223gX9BRy5m5M.ttf", + "800italic": "https://fonts.gstatic.com/s/piazzolla/v36/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhRq23gX9BRy5m5M.ttf", + "900italic": "https://fonts.gstatic.com/s/piazzolla/v36/N0b72SlTPu5rIkWIZjVgI-TckS03oGpPETyEJ88Rbvi0_TzOzKcQhTO23gX9BRy5m5M.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/piazzolla/v36/N0b52SlTPu5rIkWIZjVKKtYtfxYqZ4RJBFzFfYUjkSDdlqZgy7LYxkLz3gU.ttf" + }, + { + "family": "Piedra", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/piedra/v25/ke8kOg8aN0Bn7hTunEyHN_M3gA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/piedra/v25/ke8kOg8aN0Bn7hTenUaD.ttf" + }, + { + "family": "Pinyon Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pinyonscript/v22/6xKpdSJbL9-e9LuoeQiDRQR8aOLQO4bhiDY.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pinyonscript/v22/6xKpdSJbL9-e9LuoeQiDRQR8WOPaPw.ttf" + }, + { + "family": "Pirata One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pirataone/v22/I_urMpiDvgLdLh0fAtoftiiEr5_BdZ8.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pirataone/v22/I_urMpiDvgLdLh0fAtofhimOqw.ttf" + }, + { + "family": "Pixelify Sans", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pixelifysans/v1/CHy2V-3HFUT7aC4iv1TxGDR9DHEserHN25py2TTp0H1Yb5JagkmX.ttf", + "500": "https://fonts.gstatic.com/s/pixelifysans/v1/CHy2V-3HFUT7aC4iv1TxGDR9DHEserHN25py2TTb0H1Yb5JagkmX.ttf", + "600": "https://fonts.gstatic.com/s/pixelifysans/v1/CHy2V-3HFUT7aC4iv1TxGDR9DHEserHN25py2TQ3131Yb5JagkmX.ttf", + "700": "https://fonts.gstatic.com/s/pixelifysans/v1/CHy2V-3HFUT7aC4iv1TxGDR9DHEserHN25py2TQO131Yb5JagkmX.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pixelifysans/v1/CHy2V-3HFUT7aC4iv1TxGDR9DHEserHN25py2TTp0E1ZZZY.ttf" + }, + { + "family": "Plaster", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/plaster/v24/DdTm79QatW80eRh4Ei5JOtLOeLI.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/plaster/v24/DdTm79QatW80eRh4Ii9DPg.ttf" + }, + { + "family": "Platypi", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/platypi/v4/bMromSGU7pMlaX6-PAmuwBQP4Hwe02It4p9juxgnYP1P.ttf", + "regular": "https://fonts.gstatic.com/s/platypi/v4/bMromSGU7pMlaX6-PAmuwBQP4Hwe02Jz4p9juxgnYP1P.ttf", + "500": "https://fonts.gstatic.com/s/platypi/v4/bMromSGU7pMlaX6-PAmuwBQP4Hwe02JB4p9juxgnYP1P.ttf", + "600": "https://fonts.gstatic.com/s/platypi/v4/bMromSGU7pMlaX6-PAmuwBQP4Hwe02Kt5Z9juxgnYP1P.ttf", + "700": "https://fonts.gstatic.com/s/platypi/v4/bMromSGU7pMlaX6-PAmuwBQP4Hwe02KU5Z9juxgnYP1P.ttf", + "800": "https://fonts.gstatic.com/s/platypi/v4/bMromSGU7pMlaX6-PAmuwBQP4Hwe02Lz5Z9juxgnYP1P.ttf", + "300italic": "https://fonts.gstatic.com/s/platypi/v4/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7oSkgsRwFZe1PPTo.ttf", + "italic": "https://fonts.gstatic.com/s/platypi/v4/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7oXcgsRwFZe1PPTo.ttf", + "500italic": "https://fonts.gstatic.com/s/platypi/v4/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7oUUgsRwFZe1PPTo.ttf", + "600italic": "https://fonts.gstatic.com/s/platypi/v4/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7oaknsRwFZe1PPTo.ttf", + "700italic": "https://fonts.gstatic.com/s/platypi/v4/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7oZAnsRwFZe1PPTo.ttf", + "800italic": "https://fonts.gstatic.com/s/platypi/v4/bMrmmSGU7pMlaX6-FgCcP8xmi-aw1He7ofcnsRwFZe1PPTo.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/platypi/v4/bMromSGU7pMlaX6-PAmuwBQP4Hwe02Jz4q9isRw.ttf" + }, + { + "family": "Play", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/play/v19/6aez4K2oVqwIjtI8Hp8Tx3A.ttf", + "700": "https://fonts.gstatic.com/s/play/v19/6ae84K2oVqwItm4TOpc423nTJTM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/play/v19/6aez4K2oVqwIvtM2Gg.ttf" + }, + { + "family": "Playball", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/playball/v20/TK3gWksYAxQ7jbsKcj8Dl-tPKo2t.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playball/v20/TK3gWksYAxQ7jbsKcg8Cne8.ttf" + }, + { + "family": "Playfair", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/playfair/v2/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPlKetgdoSMw5ifm.ttf", + "regular": "https://fonts.gstatic.com/s/playfair/v2/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPkUetgdoSMw5ifm.ttf", + "500": "https://fonts.gstatic.com/s/playfair/v2/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPkmetgdoSMw5ifm.ttf", + "600": "https://fonts.gstatic.com/s/playfair/v2/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPnKfdgdoSMw5ifm.ttf", + "700": "https://fonts.gstatic.com/s/playfair/v2/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPnzfdgdoSMw5ifm.ttf", + "800": "https://fonts.gstatic.com/s/playfair/v2/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPmUfdgdoSMw5ifm.ttf", + "900": "https://fonts.gstatic.com/s/playfair/v2/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPm9fdgdoSMw5ifm.ttf", + "300italic": "https://fonts.gstatic.com/s/playfair/v2/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOW5eqycS4zfmNrE.ttf", + "italic": "https://fonts.gstatic.com/s/playfair/v2/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOTBeqycS4zfmNrE.ttf", + "500italic": "https://fonts.gstatic.com/s/playfair/v2/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOQJeqycS4zfmNrE.ttf", + "600italic": "https://fonts.gstatic.com/s/playfair/v2/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOe5ZqycS4zfmNrE.ttf", + "700italic": "https://fonts.gstatic.com/s/playfair/v2/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOddZqycS4zfmNrE.ttf", + "800italic": "https://fonts.gstatic.com/s/playfair/v2/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcObBZqycS4zfmNrE.ttf", + "900italic": "https://fonts.gstatic.com/s/playfair/v2/0nkSC9D7PO4KhmUJ59baVQ_iWhg0cgSrLQZDFpFUsLCFf_1ubkfQeG9KkBAQcOsAs-zcOZlZqycS4zfmNrE.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playfair/v2/0nkQC9D7PO4KhmUJ5_zTZ_4MYQXznAK-TUcZXKO3UMnW6VNpe4-SiiZ4b8h5G3GutPkUeugcqyc.ttf" + }, + { + "family": "Playfair Display", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v37", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKdFvUDQZNLo_U2r.ttf", + "500": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKd3vUDQZNLo_U2r.ttf", + "600": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKebukDQZNLo_U2r.ttf", + "700": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKeiukDQZNLo_U2r.ttf", + "800": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKfFukDQZNLo_U2r.ttf", + "900": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKfsukDQZNLo_U2r.ttf", + "italic": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_qiTbtbK-F2rA0s.ttf", + "500italic": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_pqTbtbK-F2rA0s.ttf", + "600italic": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_naUbtbK-F2rA0s.ttf", + "700italic": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_k-UbtbK-F2rA0s.ttf", + "800italic": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_iiUbtbK-F2rA0s.ttf", + "900italic": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_gGUbtbK-F2rA0s.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playfairdisplay/v37/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKdFvXDRbtY.ttf" + }, + { + "family": "Playfair Display SC", + "variants": [ + "regular", + "italic", + "700", + "700italic", + "900", + "900italic" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/playfairdisplaysc/v17/ke85OhoaMkR6-hSn7kbHVoFf7ZfgMPr_pb4GEcM2M4s.ttf", + "italic": "https://fonts.gstatic.com/s/playfairdisplaysc/v17/ke87OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbwMFeEzI4sNKg.ttf", + "700": "https://fonts.gstatic.com/s/playfairdisplaysc/v17/ke80OhoaMkR6-hSn7kbHVoFf7ZfgMPr_nQIpNcsdL4IUMyE.ttf", + "700italic": "https://fonts.gstatic.com/s/playfairdisplaysc/v17/ke82OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw0qc4XK6ARIyH5IA.ttf", + "900": "https://fonts.gstatic.com/s/playfairdisplaysc/v17/ke80OhoaMkR6-hSn7kbHVoFf7ZfgMPr_nTorNcsdL4IUMyE.ttf", + "900italic": "https://fonts.gstatic.com/s/playfairdisplaysc/v17/ke82OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw0kcwXK6ARIyH5IA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playfairdisplaysc/v17/ke85OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lb8MFQ.ttf" + }, + { + "family": "Playpen Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "emoji", + "latin", + "latin-ext", + "math", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playpensans/v13/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IvRgunQ9Ffmme0w.ttf", + "200": "https://fonts.gstatic.com/s/playpensans/v13/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4InRhunQ9Ffmme0w.ttf", + "300": "https://fonts.gstatic.com/s/playpensans/v13/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IqphunQ9Ffmme0w.ttf", + "regular": "https://fonts.gstatic.com/s/playpensans/v13/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IvRhunQ9Ffmme0w.ttf", + "500": "https://fonts.gstatic.com/s/playpensans/v13/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IsZhunQ9Ffmme0w.ttf", + "600": "https://fonts.gstatic.com/s/playpensans/v13/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IipmunQ9Ffmme0w.ttf", + "700": "https://fonts.gstatic.com/s/playpensans/v13/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IhNmunQ9Ffmme0w.ttf", + "800": "https://fonts.gstatic.com/s/playpensans/v13/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4InRmunQ9Ffmme0w.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playpensans/v13/dg43_pj1p6gXP0gzAZgm4c8XQArSU7ACQSn4IvRhinU3EQ.ttf" + }, + { + "family": "Playwrite AR", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritear/v1/VEMjRohisJz5pTCzruCNjWbfp_N-aNWqYgKS-fteqf-ES67xIO8.ttf", + "200": "https://fonts.gstatic.com/s/playwritear/v1/VEMjRohisJz5pTCzruCNjWbfp_N-aNWqYgKS-Xtfqf-ES67xIO8.ttf", + "300": "https://fonts.gstatic.com/s/playwritear/v1/VEMjRohisJz5pTCzruCNjWbfp_N-aNWqYgKS-aVfqf-ES67xIO8.ttf", + "regular": "https://fonts.gstatic.com/s/playwritear/v1/VEMjRohisJz5pTCzruCNjWbfp_N-aNWqYgKS-ftfqf-ES67xIO8.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritear/v1/VEMjRohisJz5pTCzruCNjWbfp_N-aNWqYgKS-ftfmf6OTw.ttf" + }, + { + "family": "Playwrite AT", + "variants": [ + "100", + "200", + "300", + "regular", + "100italic", + "200italic", + "300italic", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteat/v1/Gw6owc7n6kfJN4fVoKON7HIEBRSfb0U2uGBm2M77d03MLIHJ-rk.ttf", + "200": "https://fonts.gstatic.com/s/playwriteat/v1/Gw6owc7n6kfJN4fVoKON7HIEBRSfb0U2uGBm2E76d03MLIHJ-rk.ttf", + "300": "https://fonts.gstatic.com/s/playwriteat/v1/Gw6owc7n6kfJN4fVoKON7HIEBRSfb0U2uGBm2JD6d03MLIHJ-rk.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteat/v1/Gw6owc7n6kfJN4fVoKON7HIEBRSfb0U2uGBm2M76d03MLIHJ-rk.ttf", + "100italic": "https://fonts.gstatic.com/s/playwriteat/v1/Gw6uwc7n6kfJN4fVoKON7HIuDCZgtyxdIs5hzQa5nw_GKKPM6rkyVg.ttf", + "200italic": "https://fonts.gstatic.com/s/playwriteat/v1/Gw6uwc7n6kfJN4fVoKON7HIuDCZgtyxdIs5hzQa5Hw7GKKPM6rkyVg.ttf", + "300italic": "https://fonts.gstatic.com/s/playwriteat/v1/Gw6uwc7n6kfJN4fVoKON7HIuDCZgtyxdIs5hzQa5wQ7GKKPM6rkyVg.ttf", + "italic": "https://fonts.gstatic.com/s/playwriteat/v1/Gw6uwc7n6kfJN4fVoKON7HIuDCZgtyxdIs5hzQa5nw7GKKPM6rkyVg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteat/v1/Gw6owc7n6kfJN4fVoKON7HIEBRSfb0U2uGBm2M76R0zGKA.ttf" + }, + { + "family": "Playwrite AU NSW", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteaunsw/v4/6qLWKY4NtxD-qVlIPUIPenElWCCEWRgilpupBXi19xZjML96TD2dC1gS.ttf", + "200": "https://fonts.gstatic.com/s/playwriteaunsw/v4/6qLWKY4NtxD-qVlIPUIPenElWCCEWRgilpupBXi19xbjMb96TD2dC1gS.ttf", + "300": "https://fonts.gstatic.com/s/playwriteaunsw/v4/6qLWKY4NtxD-qVlIPUIPenElWCCEWRgilpupBXi19xY9Mb96TD2dC1gS.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteaunsw/v4/6qLWKY4NtxD-qVlIPUIPenElWCCEWRgilpupBXi19xZjMb96TD2dC1gS.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteaunsw/v4/6qLWKY4NtxD-qVlIPUIPenElWCCEWRgilpupBXi19xZjMY97Rjk.ttf" + }, + { + "family": "Playwrite AU QLD", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteauqld/v4/SlGGmR-Yo5oYZX5BFVcEwSFSOXBRWADAWbgjmLBhA6-yMY2fqm1BV-XS.ttf", + "200": "https://fonts.gstatic.com/s/playwriteauqld/v4/SlGGmR-Yo5oYZX5BFVcEwSFSOXBRWADAWbgjmLBhA68yMI2fqm1BV-XS.ttf", + "300": "https://fonts.gstatic.com/s/playwriteauqld/v4/SlGGmR-Yo5oYZX5BFVcEwSFSOXBRWADAWbgjmLBhA6_sMI2fqm1BV-XS.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteauqld/v4/SlGGmR-Yo5oYZX5BFVcEwSFSOXBRWADAWbgjmLBhA6-yMI2fqm1BV-XS.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteauqld/v4/SlGGmR-Yo5oYZX5BFVcEwSFSOXBRWADAWbgjmLBhA6-yML2eoGk.ttf" + }, + { + "family": "Playwrite AU SA", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteausa/v4/YcmhsZpNS1SdgmHbGgtRuUElnR3CmSC5bVQVlrclpZgQcuVjCoV0bbE.ttf", + "200": "https://fonts.gstatic.com/s/playwriteausa/v4/YcmhsZpNS1SdgmHbGgtRuUElnR3CmSC5bVQVlrclpRgRcuVjCoV0bbE.ttf", + "300": "https://fonts.gstatic.com/s/playwriteausa/v4/YcmhsZpNS1SdgmHbGgtRuUElnR3CmSC5bVQVlrclpcYRcuVjCoV0bbE.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteausa/v4/YcmhsZpNS1SdgmHbGgtRuUElnR3CmSC5bVQVlrclpZgRcuVjCoV0bbE.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteausa/v4/YcmhsZpNS1SdgmHbGgtRuUElnR3CmSC5bVQVlrclpZgRQuRpDg.ttf" + }, + { + "family": "Playwrite AU TAS", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteautas/v4/GftT7u9QuxsdI_QuuctXue3ElxxmcBb3ih0opvWiLLUEHqK6Hl9WrXm4.ttf", + "200": "https://fonts.gstatic.com/s/playwriteautas/v4/GftT7u9QuxsdI_QuuctXue3ElxxmcBb3ih0opvWiLLWEH6K6Hl9WrXm4.ttf", + "300": "https://fonts.gstatic.com/s/playwriteautas/v4/GftT7u9QuxsdI_QuuctXue3ElxxmcBb3ih0opvWiLLVaH6K6Hl9WrXm4.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteautas/v4/GftT7u9QuxsdI_QuuctXue3ElxxmcBb3ih0opvWiLLUEH6K6Hl9WrXm4.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteautas/v4/GftT7u9QuxsdI_QuuctXue3ElxxmcBb3ih0opvWiLLUEH5K7FFs.ttf" + }, + { + "family": "Playwrite AU VIC", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteauvic/v4/bWtu7enUfwn0Hf1zjprKOJdcDy8rxwC1ltAeNDAAd4fTaLK0CBIDKNvl.ttf", + "200": "https://fonts.gstatic.com/s/playwriteauvic/v4/bWtu7enUfwn0Hf1zjprKOJdcDy8rxwC1ltAeNDAAd4dTabK0CBIDKNvl.ttf", + "300": "https://fonts.gstatic.com/s/playwriteauvic/v4/bWtu7enUfwn0Hf1zjprKOJdcDy8rxwC1ltAeNDAAd4eNabK0CBIDKNvl.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteauvic/v4/bWtu7enUfwn0Hf1zjprKOJdcDy8rxwC1ltAeNDAAd4fTabK0CBIDKNvl.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteauvic/v4/bWtu7enUfwn0Hf1zjprKOJdcDy8rxwC1ltAeNDAAd4fTaYK1AhY.ttf" + }, + { + "family": "Playwrite BE VLG", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritebevlg/v1/GFD8WBdug3mQSvrAT9AL6fd4ZkB-a2sDmg3dy2W0blL8vfCMMiyBIkNg.ttf", + "200": "https://fonts.gstatic.com/s/playwritebevlg/v1/GFD8WBdug3mQSvrAT9AL6fd4ZkB-a2sDmg3dy2W0blJ8vPCMMiyBIkNg.ttf", + "300": "https://fonts.gstatic.com/s/playwritebevlg/v1/GFD8WBdug3mQSvrAT9AL6fd4ZkB-a2sDmg3dy2W0blKivPCMMiyBIkNg.ttf", + "regular": "https://fonts.gstatic.com/s/playwritebevlg/v1/GFD8WBdug3mQSvrAT9AL6fd4ZkB-a2sDmg3dy2W0blL8vPCMMiyBIkNg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritebevlg/v1/GFD8WBdug3mQSvrAT9AL6fd4ZkB-a2sDmg3dy2W0blL8vMCNOCg.ttf" + }, + { + "family": "Playwrite BE WAL", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritebewal/v1/DtV1Jwq5QbIzyrA6DHdJ2BksuUmanQtEYjAlv96WFsWCGfugHxwiSZp8.ttf", + "200": "https://fonts.gstatic.com/s/playwritebewal/v1/DtV1Jwq5QbIzyrA6DHdJ2BksuUmanQtEYjAlv96WFsUCGPugHxwiSZp8.ttf", + "300": "https://fonts.gstatic.com/s/playwritebewal/v1/DtV1Jwq5QbIzyrA6DHdJ2BksuUmanQtEYjAlv96WFsXcGPugHxwiSZp8.ttf", + "regular": "https://fonts.gstatic.com/s/playwritebewal/v1/DtV1Jwq5QbIzyrA6DHdJ2BksuUmanQtEYjAlv96WFsWCGPugHxwiSZp8.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritebewal/v1/DtV1Jwq5QbIzyrA6DHdJ2BksuUmanQtEYjAlv96WFsWCGMuhFRg.ttf" + }, + { + "family": "Playwrite BR", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritebr/v4/kJEhBuMK4Q07lDHc2Xp9vYgIp-6D3QEGCpthmFOOFsfjAOVZBgs.ttf", + "200": "https://fonts.gstatic.com/s/playwritebr/v4/kJEhBuMK4Q07lDHc2Xp9vYgIp-6D3QEGCpthmNOPFsfjAOVZBgs.ttf", + "300": "https://fonts.gstatic.com/s/playwritebr/v4/kJEhBuMK4Q07lDHc2Xp9vYgIp-6D3QEGCpthmA2PFsfjAOVZBgs.ttf", + "regular": "https://fonts.gstatic.com/s/playwritebr/v4/kJEhBuMK4Q07lDHc2Xp9vYgIp-6D3QEGCpthmFOPFsfjAOVZBgs.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritebr/v4/kJEhBuMK4Q07lDHc2Xp9vYgIp-6D3QEGCpthmFOPJsbpBA.ttf" + }, + { + "family": "Playwrite CA", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteca/v4/z7NGdR_4cT0NOrEAIElil93uR_VhfhYaYOijHiquYp261AIQU98.ttf", + "200": "https://fonts.gstatic.com/s/playwriteca/v4/z7NGdR_4cT0NOrEAIElil93uR_VhfhYaYOijHqqvYp261AIQU98.ttf", + "300": "https://fonts.gstatic.com/s/playwriteca/v4/z7NGdR_4cT0NOrEAIElil93uR_VhfhYaYOijHnSvYp261AIQU98.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteca/v4/z7NGdR_4cT0NOrEAIElil93uR_VhfhYaYOijHiqvYp261AIQU98.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteca/v4/z7NGdR_4cT0NOrEAIElil93uR_VhfhYaYOijHiqvUpyw0A.ttf" + }, + { + "family": "Playwrite CL", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritecl/v1/-zk391m7wssz_XLkGgu8hy3tqrcOhnbf6ForU8JbvLq3DyPNbus.ttf", + "200": "https://fonts.gstatic.com/s/playwritecl/v1/-zk391m7wssz_XLkGgu8hy3tqrcOhnbf6ForU0JavLq3DyPNbus.ttf", + "300": "https://fonts.gstatic.com/s/playwritecl/v1/-zk391m7wssz_XLkGgu8hy3tqrcOhnbf6ForU5xavLq3DyPNbus.ttf", + "regular": "https://fonts.gstatic.com/s/playwritecl/v1/-zk391m7wssz_XLkGgu8hy3tqrcOhnbf6ForU8JavLq3DyPNbus.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritecl/v1/-zk391m7wssz_XLkGgu8hy3tqrcOhnbf6ForU8JajLu9Cw.ttf" + }, + { + "family": "Playwrite CO", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v6", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteco/v6/0FlGVP2Hl1iH-fv2BH4kJkgb8vH-rbJPTDqqx7ZJo-dOEhxX3Iw.ttf", + "200": "https://fonts.gstatic.com/s/playwriteco/v6/0FlGVP2Hl1iH-fv2BH4kJkgb8vH-rbJPTDqqxzZIo-dOEhxX3Iw.ttf", + "300": "https://fonts.gstatic.com/s/playwriteco/v6/0FlGVP2Hl1iH-fv2BH4kJkgb8vH-rbJPTDqqx-hIo-dOEhxX3Iw.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteco/v6/0FlGVP2Hl1iH-fv2BH4kJkgb8vH-rbJPTDqqx7ZIo-dOEhxX3Iw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteco/v6/0FlGVP2Hl1iH-fv2BH4kJkgb8vH-rbJPTDqqx7ZIk-ZEFg.ttf" + }, + { + "family": "Playwrite CU", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritecu/v1/VuJjdNDb2p7tvoFGLMPdf9xcahOpb9ZuoyXseRmwZeT7m2YIByI.ttf", + "200": "https://fonts.gstatic.com/s/playwritecu/v1/VuJjdNDb2p7tvoFGLMPdf9xcahOpb9ZuoyXseZmxZeT7m2YIByI.ttf", + "300": "https://fonts.gstatic.com/s/playwritecu/v1/VuJjdNDb2p7tvoFGLMPdf9xcahOpb9ZuoyXseUexZeT7m2YIByI.ttf", + "regular": "https://fonts.gstatic.com/s/playwritecu/v1/VuJjdNDb2p7tvoFGLMPdf9xcahOpb9ZuoyXseRmxZeT7m2YIByI.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritecu/v1/VuJjdNDb2p7tvoFGLMPdf9xcahOpb9ZuoyXseRmxVeXxnw.ttf" + }, + { + "family": "Playwrite CZ", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritecz/v1/8vIa7wYp22pt_BUChSHeVxxlOPUEKoMfap_FCI4aTqT_VkAS5X4.ttf", + "200": "https://fonts.gstatic.com/s/playwritecz/v1/8vIa7wYp22pt_BUChSHeVxxlOPUEKoMfap_FCA4bTqT_VkAS5X4.ttf", + "300": "https://fonts.gstatic.com/s/playwritecz/v1/8vIa7wYp22pt_BUChSHeVxxlOPUEKoMfap_FCNAbTqT_VkAS5X4.ttf", + "regular": "https://fonts.gstatic.com/s/playwritecz/v1/8vIa7wYp22pt_BUChSHeVxxlOPUEKoMfap_FCI4bTqT_VkAS5X4.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritecz/v1/8vIa7wYp22pt_BUChSHeVxxlOPUEKoMfap_FCI4bfqX1Ug.ttf" + }, + { + "family": "Playwrite DE Grund", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritedegrund/v4/EJR-QhwoXdccriFurnRxqv-1MFyKy696-4VufrEGGbTZz2qGZwCUOfSwZTM.ttf", + "200": "https://fonts.gstatic.com/s/playwritedegrund/v4/EJR-QhwoXdccriFurnRxqv-1MFyKy696-4VufrEGGbTZz-qHZwCUOfSwZTM.ttf", + "300": "https://fonts.gstatic.com/s/playwritedegrund/v4/EJR-QhwoXdccriFurnRxqv-1MFyKy696-4VufrEGGbTZzzSHZwCUOfSwZTM.ttf", + "regular": "https://fonts.gstatic.com/s/playwritedegrund/v4/EJR-QhwoXdccriFurnRxqv-1MFyKy696-4VufrEGGbTZz2qHZwCUOfSwZTM.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritedegrund/v4/EJR-QhwoXdccriFurnRxqv-1MFyKy696-4VufrEGGbTZz2qHVwGePQ.ttf" + }, + { + "family": "Playwrite DE LA", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritedela/v4/oY1J8e3fprboJ2HN4ogXTpFVJ8QjJV9p0P4yukst2FnrPgcigC5Ph2w.ttf", + "200": "https://fonts.gstatic.com/s/playwritedela/v4/oY1J8e3fprboJ2HN4ogXTpFVJ8QjJV9p0P4yukst2NnqPgcigC5Ph2w.ttf", + "300": "https://fonts.gstatic.com/s/playwritedela/v4/oY1J8e3fprboJ2HN4ogXTpFVJ8QjJV9p0P4yukst2AfqPgcigC5Ph2w.ttf", + "regular": "https://fonts.gstatic.com/s/playwritedela/v4/oY1J8e3fprboJ2HN4ogXTpFVJ8QjJV9p0P4yukst2FnqPgcigC5Ph2w.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritedela/v4/oY1J8e3fprboJ2HN4ogXTpFVJ8QjJV9p0P4yukst2FnqDgYohA.ttf" + }, + { + "family": "Playwrite DE SAS", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritedesas/v4/1Pt4g9vaRvmWghDdrE8IDuRPVrHN_1AaFXASpbMqJTeVg-6lSyVPgRkJ.ttf", + "200": "https://fonts.gstatic.com/s/playwritedesas/v4/1Pt4g9vaRvmWghDdrE8IDuRPVrHN_1AaFXASpbMqJTcVgu6lSyVPgRkJ.ttf", + "300": "https://fonts.gstatic.com/s/playwritedesas/v4/1Pt4g9vaRvmWghDdrE8IDuRPVrHN_1AaFXASpbMqJTfLgu6lSyVPgRkJ.ttf", + "regular": "https://fonts.gstatic.com/s/playwritedesas/v4/1Pt4g9vaRvmWghDdrE8IDuRPVrHN_1AaFXASpbMqJTeVgu6lSyVPgRkJ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritedesas/v4/1Pt4g9vaRvmWghDdrE8IDuRPVrHN_1AaFXASpbMqJTeVgt6kQSE.ttf" + }, + { + "family": "Playwrite DE VA", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritedeva/v4/VuJmdNPb2p7tvoFGLMPdeMxGN1pntEMhdK1XfsTyRSyTv24jGyvutu4.ttf", + "200": "https://fonts.gstatic.com/s/playwritedeva/v4/VuJmdNPb2p7tvoFGLMPdeMxGN1pntEMhdK1XfsTyRaySv24jGyvutu4.ttf", + "300": "https://fonts.gstatic.com/s/playwritedeva/v4/VuJmdNPb2p7tvoFGLMPdeMxGN1pntEMhdK1XfsTyRXKSv24jGyvutu4.ttf", + "regular": "https://fonts.gstatic.com/s/playwritedeva/v4/VuJmdNPb2p7tvoFGLMPdeMxGN1pntEMhdK1XfsTyRSySv24jGyvutu4.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritedeva/v4/VuJmdNPb2p7tvoFGLMPdeMxGN1pntEMhdK1XfsTyRSySj28pHw.ttf" + }, + { + "family": "Playwrite DK Loopet", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritedkloopet/v1/memVYbuzy2qb3rtJGfM1FvY-GacDcsPvtaDfqfgbBWmV75JJwOgRuQovSE8_.ttf", + "200": "https://fonts.gstatic.com/s/playwritedkloopet/v1/memVYbuzy2qb3rtJGfM1FvY-GacDcsPvtaDfqfgbBWmV75LJwegRuQovSE8_.ttf", + "300": "https://fonts.gstatic.com/s/playwritedkloopet/v1/memVYbuzy2qb3rtJGfM1FvY-GacDcsPvtaDfqfgbBWmV75IXwegRuQovSE8_.ttf", + "regular": "https://fonts.gstatic.com/s/playwritedkloopet/v1/memVYbuzy2qb3rtJGfM1FvY-GacDcsPvtaDfqfgbBWmV75JJwegRuQovSE8_.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritedkloopet/v1/memVYbuzy2qb3rtJGfM1FvY-GacDcsPvtaDfqfgbBWmV75JJwdgQsw4.ttf" + }, + { + "family": "Playwrite DK Uloopet", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritedkuloopet/v1/bWtS7e3Ufwn0Hf1zjprKPYlcDAoHknvYFjqIh8PF6jwcP5K06lQrKeng6LUzAA.ttf", + "200": "https://fonts.gstatic.com/s/playwritedkuloopet/v1/bWtS7e3Ufwn0Hf1zjprKPYlcDAoHknvYFjqIh8PF6jwcP5K0alUrKeng6LUzAA.ttf", + "300": "https://fonts.gstatic.com/s/playwritedkuloopet/v1/bWtS7e3Ufwn0Hf1zjprKPYlcDAoHknvYFjqIh8PF6jwcP5K0tFUrKeng6LUzAA.ttf", + "regular": "https://fonts.gstatic.com/s/playwritedkuloopet/v1/bWtS7e3Ufwn0Hf1zjprKPYlcDAoHknvYFjqIh8PF6jwcP5K06lUrKeng6LUzAA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritedkuloopet/v1/bWtS7e3Ufwn0Hf1zjprKPYlcDAoHknvYFjqIh8PF6jwcP5K06lUbKOPk.ttf" + }, + { + "family": "Playwrite ES", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritees/v4/kJEhBuMK4Q07lDHc2Xp9uokIp-6D3QEGCpthmFOOFsfjAOVZBgs.ttf", + "200": "https://fonts.gstatic.com/s/playwritees/v4/kJEhBuMK4Q07lDHc2Xp9uokIp-6D3QEGCpthmNOPFsfjAOVZBgs.ttf", + "300": "https://fonts.gstatic.com/s/playwritees/v4/kJEhBuMK4Q07lDHc2Xp9uokIp-6D3QEGCpthmA2PFsfjAOVZBgs.ttf", + "regular": "https://fonts.gstatic.com/s/playwritees/v4/kJEhBuMK4Q07lDHc2Xp9uokIp-6D3QEGCpthmFOPFsfjAOVZBgs.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritees/v4/kJEhBuMK4Q07lDHc2Xp9uokIp-6D3QEGCpthmFOPJsbpBA.ttf" + }, + { + "family": "Playwrite ES Deco", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteesdeco/v4/7AuWp-g3kjKKGkePXEf2jxctfDxlvGM7-RllW8uEsjJ4yrZxOQ9p5Cljpw.ttf", + "200": "https://fonts.gstatic.com/s/playwriteesdeco/v4/7AuWp-g3kjKKGkePXEf2jxctfDxlvGM7-RllW8uEsjJ4SrdxOQ9p5Cljpw.ttf", + "300": "https://fonts.gstatic.com/s/playwriteesdeco/v4/7AuWp-g3kjKKGkePXEf2jxctfDxlvGM7-RllW8uEsjJ4lLdxOQ9p5Cljpw.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteesdeco/v4/7AuWp-g3kjKKGkePXEf2jxctfDxlvGM7-RllW8uEsjJ4yrdxOQ9p5Cljpw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteesdeco/v4/7AuWp-g3kjKKGkePXEf2jxctfDxlvGM7-RllW8uEsjJ4yrdBOAVt.ttf" + }, + { + "family": "Playwrite FR Moderne", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritefrmoderne/v4/3y9L6awucz3w5m4FFTzKolJRXhUk_u1yWtWmFCJcqUBvK5aJuAOvAl74XSpRjw.ttf", + "200": "https://fonts.gstatic.com/s/playwritefrmoderne/v4/3y9L6awucz3w5m4FFTzKolJRXhUk_u1yWtWmFCJcqUBvK5aJOAKvAl74XSpRjw.ttf", + "300": "https://fonts.gstatic.com/s/playwritefrmoderne/v4/3y9L6awucz3w5m4FFTzKolJRXhUk_u1yWtWmFCJcqUBvK5aJ5gKvAl74XSpRjw.ttf", + "regular": "https://fonts.gstatic.com/s/playwritefrmoderne/v4/3y9L6awucz3w5m4FFTzKolJRXhUk_u1yWtWmFCJcqUBvK5aJuAKvAl74XSpRjw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritefrmoderne/v4/3y9L6awucz3w5m4FFTzKolJRXhUk_u1yWtWmFCJcqUBvK5aJuAKfA1T8.ttf" + }, + { + "family": "Playwrite FR Trad", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v6", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritefrtrad/v6/sJot3KxJjdGLJV3vyatrJE2pkQisWWMBP23HSIVI5tvAogrNdt-fwzTS5A.ttf", + "200": "https://fonts.gstatic.com/s/playwritefrtrad/v6/sJot3KxJjdGLJV3vyatrJE2pkQisWWMBP23HSIVI5tvAIgvNdt-fwzTS5A.ttf", + "300": "https://fonts.gstatic.com/s/playwritefrtrad/v6/sJot3KxJjdGLJV3vyatrJE2pkQisWWMBP23HSIVI5tvA_AvNdt-fwzTS5A.ttf", + "regular": "https://fonts.gstatic.com/s/playwritefrtrad/v6/sJot3KxJjdGLJV3vyatrJE2pkQisWWMBP23HSIVI5tvAogvNdt-fwzTS5A.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritefrtrad/v6/sJot3KxJjdGLJV3vyatrJE2pkQisWWMBP23HSIVI5tvAogv9d9Wb.ttf" + }, + { + "family": "Playwrite GB J", + "variants": [ + "100", + "200", + "300", + "regular", + "100italic", + "200italic", + "300italic", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritegbj/v4/k3kEo8wSPe9dzQ1UGbvobAPhY5iG-fsubxedDheGdc5HaN7X9HFR8Q.ttf", + "200": "https://fonts.gstatic.com/s/playwritegbj/v4/k3kEo8wSPe9dzQ1UGbvobAPhY5iG-fsubxedDheG9c9HaN7X9HFR8Q.ttf", + "300": "https://fonts.gstatic.com/s/playwritegbj/v4/k3kEo8wSPe9dzQ1UGbvobAPhY5iG-fsubxedDheGK89HaN7X9HFR8Q.ttf", + "regular": "https://fonts.gstatic.com/s/playwritegbj/v4/k3kEo8wSPe9dzQ1UGbvobAPhY5iG-fsubxedDheGdc9HaN7X9HFR8Q.ttf", + "100italic": "https://fonts.gstatic.com/s/playwritegbj/v4/k3kGo8wSPe9dzQ1UGbvobAPhY7KPywT2BnwHoBCTvYyvKtTT1nRB8S9t.ttf", + "200italic": "https://fonts.gstatic.com/s/playwritegbj/v4/k3kGo8wSPe9dzQ1UGbvobAPhY7KPywT2BnwHoBCTvYwvK9TT1nRB8S9t.ttf", + "300italic": "https://fonts.gstatic.com/s/playwritegbj/v4/k3kGo8wSPe9dzQ1UGbvobAPhY7KPywT2BnwHoBCTvYzxK9TT1nRB8S9t.ttf", + "italic": "https://fonts.gstatic.com/s/playwritegbj/v4/k3kGo8wSPe9dzQ1UGbvobAPhY7KPywT2BnwHoBCTvYyvK9TT1nRB8S9t.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritegbj/v4/k3kEo8wSPe9dzQ1UGbvobAPhY5iG-fsubxedDheGdc93adTT.ttf" + }, + { + "family": "Playwrite GB S", + "variants": [ + "100", + "200", + "300", + "regular", + "100italic", + "200italic", + "300italic", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v5", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritegbs/v5/oPWb_kFkk-s1Xclhmlemy7jsNQR8TohGU_DTHWU6uhH8x5eMaTk8AQ.ttf", + "200": "https://fonts.gstatic.com/s/playwritegbs/v5/oPWb_kFkk-s1Xclhmlemy7jsNQR8TohGU_DTHWU6OhD8x5eMaTk8AQ.ttf", + "300": "https://fonts.gstatic.com/s/playwritegbs/v5/oPWb_kFkk-s1Xclhmlemy7jsNQR8TohGU_DTHWU65BD8x5eMaTk8AQ.ttf", + "regular": "https://fonts.gstatic.com/s/playwritegbs/v5/oPWb_kFkk-s1Xclhmlemy7jsNQR8TohGU_DTHWU6uhD8x5eMaTk8AQ.ttf", + "100italic": "https://fonts.gstatic.com/s/playwritegbs/v5/oPWZ_kFkk-s1Xclhmlemy7jsNS51fHeeOptJs2IvclMUhZ2ISzwsAReZ.ttf", + "200italic": "https://fonts.gstatic.com/s/playwritegbs/v5/oPWZ_kFkk-s1Xclhmlemy7jsNS51fHeeOptJs2IvclOUhJ2ISzwsAReZ.ttf", + "300italic": "https://fonts.gstatic.com/s/playwritegbs/v5/oPWZ_kFkk-s1Xclhmlemy7jsNS51fHeeOptJs2IvclNKhJ2ISzwsAReZ.ttf", + "italic": "https://fonts.gstatic.com/s/playwritegbs/v5/oPWZ_kFkk-s1Xclhmlemy7jsNS51fHeeOptJs2IvclMUhJ2ISzwsAReZ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritegbs/v5/oPWb_kFkk-s1Xclhmlemy7jsNQR8TohGU_DTHWU6uhDMxp2I.ttf" + }, + { + "family": "Playwrite HR", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritehr/v1/WWXAljmQYQCZM5qaU_dwQYcybAQ7GFn1mFNJPsoA9YHXAHC7tvg.ttf", + "200": "https://fonts.gstatic.com/s/playwritehr/v1/WWXAljmQYQCZM5qaU_dwQYcybAQ7GFn1mFNJPkoB9YHXAHC7tvg.ttf", + "300": "https://fonts.gstatic.com/s/playwritehr/v1/WWXAljmQYQCZM5qaU_dwQYcybAQ7GFn1mFNJPpQB9YHXAHC7tvg.ttf", + "regular": "https://fonts.gstatic.com/s/playwritehr/v1/WWXAljmQYQCZM5qaU_dwQYcybAQ7GFn1mFNJPsoB9YHXAHC7tvg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritehr/v1/WWXAljmQYQCZM5qaU_dwQYcybAQ7GFn1mFNJPsoBxYDdBA.ttf" + }, + { + "family": "Playwrite HR Lijeva", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritehrlijeva/v1/gNMvW2dhS5-p7HvxrBYiWN2SsKqLWCrYiDBAvbRl82ZY0d4zB8aUy4_lxmKl.ttf", + "200": "https://fonts.gstatic.com/s/playwritehrlijeva/v1/gNMvW2dhS5-p7HvxrBYiWN2SsKqLWCrYiDBAvbRl82ZY0d6zBsaUy4_lxmKl.ttf", + "300": "https://fonts.gstatic.com/s/playwritehrlijeva/v1/gNMvW2dhS5-p7HvxrBYiWN2SsKqLWCrYiDBAvbRl82ZY0d5tBsaUy4_lxmKl.ttf", + "regular": "https://fonts.gstatic.com/s/playwritehrlijeva/v1/gNMvW2dhS5-p7HvxrBYiWN2SsKqLWCrYiDBAvbRl82ZY0d4zBsaUy4_lxmKl.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritehrlijeva/v1/gNMvW2dhS5-p7HvxrBYiWN2SsKqLWCrYiDBAvbRl82ZY0d4zBvaVwYs.ttf" + }, + { + "family": "Playwrite HU", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritehu/v1/A2BIn59A0g0xA3zDhFw-0vfPWJtlaFKmrETx1PL7TO2dH3B2Xx4.ttf", + "200": "https://fonts.gstatic.com/s/playwritehu/v1/A2BIn59A0g0xA3zDhFw-0vfPWJtlaFKmrETx1HL6TO2dH3B2Xx4.ttf", + "300": "https://fonts.gstatic.com/s/playwritehu/v1/A2BIn59A0g0xA3zDhFw-0vfPWJtlaFKmrETx1Kz6TO2dH3B2Xx4.ttf", + "regular": "https://fonts.gstatic.com/s/playwritehu/v1/A2BIn59A0g0xA3zDhFw-0vfPWJtlaFKmrETx1PL6TO2dH3B2Xx4.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritehu/v1/A2BIn59A0g0xA3zDhFw-0vfPWJtlaFKmrETx1PL6fOyXGw.ttf" + }, + { + "family": "Playwrite ID", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteid/v4/Cn-kJt2YWhlY2oC4KxifKQJmrtrRm-sKkQqUl0-QB_JbFi0pLlg.ttf", + "200": "https://fonts.gstatic.com/s/playwriteid/v4/Cn-kJt2YWhlY2oC4KxifKQJmrtrRm-sKkQqUl8-RB_JbFi0pLlg.ttf", + "300": "https://fonts.gstatic.com/s/playwriteid/v4/Cn-kJt2YWhlY2oC4KxifKQJmrtrRm-sKkQqUlxGRB_JbFi0pLlg.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteid/v4/Cn-kJt2YWhlY2oC4KxifKQJmrtrRm-sKkQqUl0-RB_JbFi0pLlg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteid/v4/Cn-kJt2YWhlY2oC4KxifKQJmrtrRm-sKkQqUl0-RN_NREg.ttf" + }, + { + "family": "Playwrite IE", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteie/v4/fC1zPYtWYWnH0hvndYd6GCGWXCAxfsUebXFMyzipBpIu30AZbUY.ttf", + "200": "https://fonts.gstatic.com/s/playwriteie/v4/fC1zPYtWYWnH0hvndYd6GCGWXCAxfsUebXFMy7ioBpIu30AZbUY.ttf", + "300": "https://fonts.gstatic.com/s/playwriteie/v4/fC1zPYtWYWnH0hvndYd6GCGWXCAxfsUebXFMy2aoBpIu30AZbUY.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteie/v4/fC1zPYtWYWnH0hvndYd6GCGWXCAxfsUebXFMyzioBpIu30AZbUY.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteie/v4/fC1zPYtWYWnH0hvndYd6GCGWXCAxfsUebXFMyzioNpMk2w.ttf" + }, + { + "family": "Playwrite IN", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritein/v4/uk-xEGGpoLQ97mfv2J3cZzuz7CyEJhPw65lkM7mNMR8n3_Ag1kU.ttf", + "200": "https://fonts.gstatic.com/s/playwritein/v4/uk-xEGGpoLQ97mfv2J3cZzuz7CyEJhPw65lkMzmMMR8n3_Ag1kU.ttf", + "300": "https://fonts.gstatic.com/s/playwritein/v4/uk-xEGGpoLQ97mfv2J3cZzuz7CyEJhPw65lkM-eMMR8n3_Ag1kU.ttf", + "regular": "https://fonts.gstatic.com/s/playwritein/v4/uk-xEGGpoLQ97mfv2J3cZzuz7CyEJhPw65lkM7mMMR8n3_Ag1kU.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritein/v4/uk-xEGGpoLQ97mfv2J3cZzuz7CyEJhPw65lkM7mMAR4t2w.ttf" + }, + { + "family": "Playwrite IS", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteis/v3/JTUFjI4o_SGg9lecLGptrD17xQYXK0vOoz6jq6R8aX9-p7K5ILg.ttf", + "200": "https://fonts.gstatic.com/s/playwriteis/v3/JTUFjI4o_SGg9lecLGptrD17xQYXK0vOoz6jqyR9aX9-p7K5ILg.ttf", + "300": "https://fonts.gstatic.com/s/playwriteis/v3/JTUFjI4o_SGg9lecLGptrD17xQYXK0vOoz6jq_p9aX9-p7K5ILg.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteis/v3/JTUFjI4o_SGg9lecLGptrD17xQYXK0vOoz6jq6R9aX9-p7K5ILg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteis/v3/JTUFjI4o_SGg9lecLGptrD17xQYXK0vOoz6jq6R9WX50ow.ttf" + }, + { + "family": "Playwrite IT Moderna", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteitmoderna/v4/mFTbWaYCwKPK5cx6W8jy2kwDnSUe9q45vQQi5HMFnSdEx2F5Wil8ubbffHtmMw.ttf", + "200": "https://fonts.gstatic.com/s/playwriteitmoderna/v4/mFTbWaYCwKPK5cx6W8jy2kwDnSUe9q45vQQi5HMFnSdEx2F52ih8ubbffHtmMw.ttf", + "300": "https://fonts.gstatic.com/s/playwriteitmoderna/v4/mFTbWaYCwKPK5cx6W8jy2kwDnSUe9q45vQQi5HMFnSdEx2F5BCh8ubbffHtmMw.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteitmoderna/v4/mFTbWaYCwKPK5cx6W8jy2kwDnSUe9q45vQQi5HMFnSdEx2F5Wih8ubbffHtmMw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteitmoderna/v4/mFTbWaYCwKPK5cx6W8jy2kwDnSUe9q45vQQi5HMFnSdEx2F5WihMuLzb.ttf" + }, + { + "family": "Playwrite IT Trad", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteittrad/v4/SlG5mR6Yo5oYZX5BFVcEySBSPE50BjHDpZxuvgxzFq96u--_gENNXvzL2Q.ttf", + "200": "https://fonts.gstatic.com/s/playwriteittrad/v4/SlG5mR6Yo5oYZX5BFVcEySBSPE50BjHDpZxuvgxzFq96O-6_gENNXvzL2Q.ttf", + "300": "https://fonts.gstatic.com/s/playwriteittrad/v4/SlG5mR6Yo5oYZX5BFVcEySBSPE50BjHDpZxuvgxzFq965e6_gENNXvzL2Q.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteittrad/v4/SlG5mR6Yo5oYZX5BFVcEySBSPE50BjHDpZxuvgxzFq96u-6_gENNXvzL2Q.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteittrad/v4/SlG5mR6Yo5oYZX5BFVcEySBSPE50BjHDpZxuvgxzFq96u-6PgUlJ.ttf" + }, + { + "family": "Playwrite MX", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritemx/v4/6xK9dSNbKtCe7KfhXg7RYSwyQ-oO7xNblyJr9wnc5xYfXDWXDu8.ttf", + "200": "https://fonts.gstatic.com/s/playwritemx/v4/6xK9dSNbKtCe7KfhXg7RYSwyQ-oO7xNblyJr94nd5xYfXDWXDu8.ttf", + "300": "https://fonts.gstatic.com/s/playwritemx/v4/6xK9dSNbKtCe7KfhXg7RYSwyQ-oO7xNblyJr91fd5xYfXDWXDu8.ttf", + "regular": "https://fonts.gstatic.com/s/playwritemx/v4/6xK9dSNbKtCe7KfhXg7RYSwyQ-oO7xNblyJr9wnd5xYfXDWXDu8.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritemx/v4/6xK9dSNbKtCe7KfhXg7RYSwyQ-oO7xNblyJr9wnd1xcVWA.ttf" + }, + { + "family": "Playwrite NG Modern", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritengmodern/v4/ijw-s4b2R9Qve5V5lNJb_yRhEfSep5NbFCKmKgoEeCA4V17tPQbi5GswWJNE.ttf", + "200": "https://fonts.gstatic.com/s/playwritengmodern/v4/ijw-s4b2R9Qve5V5lNJb_yRhEfSep5NbFCKmKgoEeCA4V15tPAbi5GswWJNE.ttf", + "300": "https://fonts.gstatic.com/s/playwritengmodern/v4/ijw-s4b2R9Qve5V5lNJb_yRhEfSep5NbFCKmKgoEeCA4V16zPAbi5GswWJNE.ttf", + "regular": "https://fonts.gstatic.com/s/playwritengmodern/v4/ijw-s4b2R9Qve5V5lNJb_yRhEfSep5NbFCKmKgoEeCA4V17tPAbi5GswWJNE.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritengmodern/v4/ijw-s4b2R9Qve5V5lNJb_yRhEfSep5NbFCKmKgoEeCA4V17tPDbj7m8.ttf" + }, + { + "family": "Playwrite NL", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritenl/v3/k3kCo84SPe9dzQ1UGbvoZQ37Iqp5IZJF9bmaG9_EnYxNbPzS5HE.ttf", + "200": "https://fonts.gstatic.com/s/playwritenl/v3/k3kCo84SPe9dzQ1UGbvoZQ37Iqp5IZJF9bmaG1_FnYxNbPzS5HE.ttf", + "300": "https://fonts.gstatic.com/s/playwritenl/v3/k3kCo84SPe9dzQ1UGbvoZQ37Iqp5IZJF9bmaG4HFnYxNbPzS5HE.ttf", + "regular": "https://fonts.gstatic.com/s/playwritenl/v3/k3kCo84SPe9dzQ1UGbvoZQ37Iqp5IZJF9bmaG9_FnYxNbPzS5HE.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritenl/v3/k3kCo84SPe9dzQ1UGbvoZQ37Iqp5IZJF9bmaG9_FrY1HaA.ttf" + }, + { + "family": "Playwrite NO", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteno/v3/nuFrD_fYSZviRJYb-P2TrQO1DRpazaZDgnw-49whHKen-mjRVtc.ttf", + "200": "https://fonts.gstatic.com/s/playwriteno/v3/nuFrD_fYSZviRJYb-P2TrQO1DRpazaZDgnw-41wgHKen-mjRVtc.ttf", + "300": "https://fonts.gstatic.com/s/playwriteno/v3/nuFrD_fYSZviRJYb-P2TrQO1DRpazaZDgnw-44IgHKen-mjRVtc.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteno/v3/nuFrD_fYSZviRJYb-P2TrQO1DRpazaZDgnw-49wgHKen-mjRVtc.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteno/v3/nuFrD_fYSZviRJYb-P2TrQO1DRpazaZDgnw-49wgLKat_g.ttf" + }, + { + "family": "Playwrite NZ", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritenz/v4/d6lakaOxRsyr_zZDmUYvh2TW3NCQVvjKPjPjngAVeRt5gGCzkrs.ttf", + "200": "https://fonts.gstatic.com/s/playwritenz/v4/d6lakaOxRsyr_zZDmUYvh2TW3NCQVvjKPjPjnoAUeRt5gGCzkrs.ttf", + "300": "https://fonts.gstatic.com/s/playwritenz/v4/d6lakaOxRsyr_zZDmUYvh2TW3NCQVvjKPjPjnl4UeRt5gGCzkrs.ttf", + "regular": "https://fonts.gstatic.com/s/playwritenz/v4/d6lakaOxRsyr_zZDmUYvh2TW3NCQVvjKPjPjngAUeRt5gGCzkrs.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritenz/v4/d6lakaOxRsyr_zZDmUYvh2TW3NCQVvjKPjPjngAUSRpzhA.ttf" + }, + { + "family": "Playwrite PE", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v1", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritepe/v1/FwZJ7-Amxlw-50y5PJugmImRrktKJDJ4lnesO2lsTPHFdtSgb_A.ttf", + "200": "https://fonts.gstatic.com/s/playwritepe/v1/FwZJ7-Amxlw-50y5PJugmImRrktKJDJ4lnesO-ltTPHFdtSgb_A.ttf", + "300": "https://fonts.gstatic.com/s/playwritepe/v1/FwZJ7-Amxlw-50y5PJugmImRrktKJDJ4lnesOzdtTPHFdtSgb_A.ttf", + "regular": "https://fonts.gstatic.com/s/playwritepe/v1/FwZJ7-Amxlw-50y5PJugmImRrktKJDJ4lnesO2ltTPHFdtSgb_A.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritepe/v1/FwZJ7-Amxlw-50y5PJugmImRrktKJDJ4lnesO2ltfPDPcg.ttf" + }, + { + "family": "Playwrite PL", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritepl/v3/0QIyMXVf_4C2VH-yUr5uz72U-LQiKJ_9tb1WmRfa9ZybSwcVtHQ.ttf", + "200": "https://fonts.gstatic.com/s/playwritepl/v3/0QIyMXVf_4C2VH-yUr5uz72U-LQiKJ_9tb1WmZfb9ZybSwcVtHQ.ttf", + "300": "https://fonts.gstatic.com/s/playwritepl/v3/0QIyMXVf_4C2VH-yUr5uz72U-LQiKJ_9tb1WmUnb9ZybSwcVtHQ.ttf", + "regular": "https://fonts.gstatic.com/s/playwritepl/v3/0QIyMXVf_4C2VH-yUr5uz72U-LQiKJ_9tb1WmRfb9ZybSwcVtHQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritepl/v3/0QIyMXVf_4C2VH-yUr5uz72U-LQiKJ_9tb1WmRfbxZ2RTw.ttf" + }, + { + "family": "Playwrite PT", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritept/v3/6NUE8FidKwOcfRjj8ukv5Lg-wt21rkAVfXUe9qDjTfJtvlo3Qaw.ttf", + "200": "https://fonts.gstatic.com/s/playwritept/v3/6NUE8FidKwOcfRjj8ukv5Lg-wt21rkAVfXUe9iDiTfJtvlo3Qaw.ttf", + "300": "https://fonts.gstatic.com/s/playwritept/v3/6NUE8FidKwOcfRjj8ukv5Lg-wt21rkAVfXUe9v7iTfJtvlo3Qaw.ttf", + "regular": "https://fonts.gstatic.com/s/playwritept/v3/6NUE8FidKwOcfRjj8ukv5Lg-wt21rkAVfXUe9qDiTfJtvlo3Qaw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritept/v3/6NUE8FidKwOcfRjj8ukv5Lg-wt21rkAVfXUe9qDiffNnug.ttf" + }, + { + "family": "Playwrite RO", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritero/v3/gok8H6fuA1J7QPJ04HFTGSWdk_S0czhwEf0j4a9ZnZWMJnZeBS8.ttf", + "200": "https://fonts.gstatic.com/s/playwritero/v3/gok8H6fuA1J7QPJ04HFTGSWdk_S0czhwEf0j4S9YnZWMJnZeBS8.ttf", + "300": "https://fonts.gstatic.com/s/playwritero/v3/gok8H6fuA1J7QPJ04HFTGSWdk_S0czhwEf0j4fFYnZWMJnZeBS8.ttf", + "regular": "https://fonts.gstatic.com/s/playwritero/v3/gok8H6fuA1J7QPJ04HFTGSWdk_S0czhwEf0j4a9YnZWMJnZeBS8.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritero/v3/gok8H6fuA1J7QPJ04HFTGSWdk_S0czhwEf0j4a9YrZSGIg.ttf" + }, + { + "family": "Playwrite SK", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v3", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritesk/v3/9XU3lJp0klrZDw3AZHcsJTByz7latrF9yDIlf-2dvsOzdK9OF68.ttf", + "200": "https://fonts.gstatic.com/s/playwritesk/v3/9XU3lJp0klrZDw3AZHcsJTByz7latrF9yDIlf22cvsOzdK9OF68.ttf", + "300": "https://fonts.gstatic.com/s/playwritesk/v3/9XU3lJp0klrZDw3AZHcsJTByz7latrF9yDIlf7OcvsOzdK9OF68.ttf", + "regular": "https://fonts.gstatic.com/s/playwritesk/v3/9XU3lJp0klrZDw3AZHcsJTByz7latrF9yDIlf-2cvsOzdK9OF68.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritesk/v3/9XU3lJp0klrZDw3AZHcsJTByz7latrF9yDIlf-2cjsK5cA.ttf" + }, + { + "family": "Playwrite TZ", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritetz/v4/RLptK5rs6au7bzABmVQAOwnUbvHMbzSUU27JDWwSue1COwjVROo.ttf", + "200": "https://fonts.gstatic.com/s/playwritetz/v4/RLptK5rs6au7bzABmVQAOwnUbvHMbzSUU27JDewTue1COwjVROo.ttf", + "300": "https://fonts.gstatic.com/s/playwritetz/v4/RLptK5rs6au7bzABmVQAOwnUbvHMbzSUU27JDTITue1COwjVROo.ttf", + "regular": "https://fonts.gstatic.com/s/playwritetz/v4/RLptK5rs6au7bzABmVQAOwnUbvHMbzSUU27JDWwTue1COwjVROo.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritetz/v4/RLptK5rs6au7bzABmVQAOwnUbvHMbzSUU27JDWwTiexIPw.ttf" + }, + { + "family": "Playwrite US Modern", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteusmodern/v4/H4cMBWmRlMXPhla3hmMaveiYz8nSDkIFLNIYl2TXUwK62YohNw2Da0LCgUPK.ttf", + "200": "https://fonts.gstatic.com/s/playwriteusmodern/v4/H4cMBWmRlMXPhla3hmMaveiYz8nSDkIFLNIYl2TXUwK62YqhNg2Da0LCgUPK.ttf", + "300": "https://fonts.gstatic.com/s/playwriteusmodern/v4/H4cMBWmRlMXPhla3hmMaveiYz8nSDkIFLNIYl2TXUwK62Yp_Ng2Da0LCgUPK.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteusmodern/v4/H4cMBWmRlMXPhla3hmMaveiYz8nSDkIFLNIYl2TXUwK62YohNg2Da0LCgUPK.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteusmodern/v4/H4cMBWmRlMXPhla3hmMaveiYz8nSDkIFLNIYl2TXUwK62YohNj2CYUY.ttf" + }, + { + "family": "Playwrite US Trad", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteustrad/v4/fdNX9tyHsnVPjW9trmV7wQ0stdwRBYclCsCdzOb1-cd1E8pgj6Kf5uBNig.ttf", + "200": "https://fonts.gstatic.com/s/playwriteustrad/v4/fdNX9tyHsnVPjW9trmV7wQ0stdwRBYclCsCdzOb1-cd1k8tgj6Kf5uBNig.ttf", + "300": "https://fonts.gstatic.com/s/playwriteustrad/v4/fdNX9tyHsnVPjW9trmV7wQ0stdwRBYclCsCdzOb1-cd1Tctgj6Kf5uBNig.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteustrad/v4/fdNX9tyHsnVPjW9trmV7wQ0stdwRBYclCsCdzOb1-cd1E8tgj6Kf5uBNig.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteustrad/v4/fdNX9tyHsnVPjW9trmV7wQ0stdwRBYclCsCdzOb1-cd1E8tQjqib.ttf" + }, + { + "family": "Playwrite VN", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwritevn/v4/mtGo4_hXJqPSu8nf5RBY5i0q0yxCxtP-9TFBNUI8E-9HPWIQtD0.ttf", + "200": "https://fonts.gstatic.com/s/playwritevn/v4/mtGo4_hXJqPSu8nf5RBY5i0q0yxCxtP-9TFBNcI9E-9HPWIQtD0.ttf", + "300": "https://fonts.gstatic.com/s/playwritevn/v4/mtGo4_hXJqPSu8nf5RBY5i0q0yxCxtP-9TFBNRw9E-9HPWIQtD0.ttf", + "regular": "https://fonts.gstatic.com/s/playwritevn/v4/mtGo4_hXJqPSu8nf5RBY5i0q0yxCxtP-9TFBNUI9E-9HPWIQtD0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwritevn/v4/mtGo4_hXJqPSu8nf5RBY5i0q0yxCxtP-9TFBNUI9I-5NOQ.ttf" + }, + { + "family": "Playwrite ZA", + "variants": [ + "100", + "200", + "300", + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v4", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/playwriteza/v4/Noag6Uzhw5CTOhXKt5-vwvhrNyaNQo1LaBq0EbLGbYUsn9T5dt0.ttf", + "200": "https://fonts.gstatic.com/s/playwriteza/v4/Noag6Uzhw5CTOhXKt5-vwvhrNyaNQo1LaBq0ETLHbYUsn9T5dt0.ttf", + "300": "https://fonts.gstatic.com/s/playwriteza/v4/Noag6Uzhw5CTOhXKt5-vwvhrNyaNQo1LaBq0EezHbYUsn9T5dt0.ttf", + "regular": "https://fonts.gstatic.com/s/playwriteza/v4/Noag6Uzhw5CTOhXKt5-vwvhrNyaNQo1LaBq0EbLHbYUsn9T5dt0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/playwriteza/v4/Noag6Uzhw5CTOhXKt5-vwvhrNyaNQo1LaBq0EbLHXYQmmw.ttf" + }, + { + "family": "Plus Jakarta Sans", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KU7NShXUEKi4Rw.ttf", + "300": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_907NShXUEKi4Rw.ttf", + "regular": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_qU7NShXUEKi4Rw.ttf", + "500": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_m07NShXUEKi4Rw.ttf", + "600": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_d0nNShXUEKi4Rw.ttf", + "700": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_TknNShXUEKi4Rw.ttf", + "800": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_KUnNShXUEKi4Rw.ttf", + "200italic": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ2lCR_QMq2oR82k.ttf", + "300italic": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ17CR_QMq2oR82k.ttf", + "italic": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0lCR_QMq2oR82k.ttf", + "500italic": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ0XCR_QMq2oR82k.ttf", + "600italic": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ37Dh_QMq2oR82k.ttf", + "700italic": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ3CDh_QMq2oR82k.ttf", + "800italic": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIZaomQNQcsA88c7O9yZ4KMCoOg4KozySKCdSNG9OcqYQ2lDh_QMq2oR82k.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/plusjakartasans/v8/LDIbaomQNQcsA88c7O9yZ4KMCoOg4IA6-91aHEjcWuA_qU79Sx_Q.ttf" + }, + { + "family": "Podkova", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v31", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/podkova/v31/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWtFzcU4EoporSHH.ttf", + "500": "https://fonts.gstatic.com/s/podkova/v31/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWt3zcU4EoporSHH.ttf", + "600": "https://fonts.gstatic.com/s/podkova/v31/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWubysU4EoporSHH.ttf", + "700": "https://fonts.gstatic.com/s/podkova/v31/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWuiysU4EoporSHH.ttf", + "800": "https://fonts.gstatic.com/s/podkova/v31/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWvFysU4EoporSHH.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/podkova/v31/K2FufZ1EmftJSV9VQpXb1lo9vC3nZWtFzfU5GI4.ttf" + }, + { + "family": "Poetsen One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/poetsenone/v3/ke8hOgIaMUB37xCgvCntWtIvq_KREbG9.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/poetsenone/v3/ke8hOgIaMUB37xCgvCntWuIuofY.ttf" + }, + { + "family": "Poiret One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/poiretone/v16/UqyVK80NJXN4zfRgbdfbk5lWVscxdKE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/poiretone/v16/UqyVK80NJXN4zfRgbdfbo5hcUg.ttf" + }, + { + "family": "Poller One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pollerone/v23/ahccv82n0TN3gia5E4Bud-lbgUS5u0s.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pollerone/v23/ahccv82n0TN3gia5E4BuR-hRhQ.ttf" + }, + { + "family": "Poltawski Nowy", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KqCWnDS6V5CzCoQ.ttf", + "500": "https://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KmiWnDS6V5CzCoQ.ttf", + "600": "https://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KdiKnDS6V5CzCoQ.ttf", + "700": "https://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KTyKnDS6V5CzCoQ.ttf", + "italic": "https://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGZPTiSRxinSoROp.ttf", + "500italic": "https://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGZ9TiSRxinSoROp.ttf", + "600italic": "https://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGaRSSSRxinSoROp.ttf", + "700italic": "https://fonts.gstatic.com/s/poltawskinowy/v2/flUuRq6ww480U1xsUpFXD-iDBPNbMh08QUl99KgfYGaoSSSRxinSoROp.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/poltawskinowy/v2/flUsRq6ww480U1xsUpFXD-iDBNlSAOLkKCLnWq8KqCWXDCSR.ttf" + }, + { + "family": "Poly", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/poly/v16/MQpb-W6wKNitRLCAq2Lpris.ttf", + "italic": "https://fonts.gstatic.com/s/poly/v16/MQpV-W6wKNitdLKKr0DsviuGWA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/poly/v16/MQpb-W6wKNitdLGKrw.ttf" + }, + { + "family": "Pompiere", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pompiere/v19/VEMyRoxis5Dwuyeov6Wt5jDtreOL.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pompiere/v19/VEMyRoxis5Dwuyeov5Ws7DQ.ttf" + }, + { + "family": "Pontano Sans", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/pontanosans/v17/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOSzMncaMp9gzWsE.ttf", + "regular": "https://fonts.gstatic.com/s/pontanosans/v17/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOXLMncaMp9gzWsE.ttf", + "500": "https://fonts.gstatic.com/s/pontanosans/v17/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOUDMncaMp9gzWsE.ttf", + "600": "https://fonts.gstatic.com/s/pontanosans/v17/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOazLncaMp9gzWsE.ttf", + "700": "https://fonts.gstatic.com/s/pontanosans/v17/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOZXLncaMp9gzWsE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pontanosans/v17/qFdW35GdgYR8EzR6oBLDHa3wyRf8W8eBM6XLOXLMrceGow.ttf" + }, + { + "family": "Poor Story", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v20", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/poorstory/v20/jizfREFUsnUct9P6cDfd4OmnLD0Z4zM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/poorstory/v20/jizfREFUsnUct9P6cDfd0OitKA.ttf" + }, + { + "family": "Poppins", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/poppins/v21/pxiGyp8kv8JHgFVrLPTed3FBGPaTSQ.ttf", + "100italic": "https://fonts.gstatic.com/s/poppins/v21/pxiAyp8kv8JHgFVrJJLmE3tFOvODSVFF.ttf", + "200": "https://fonts.gstatic.com/s/poppins/v21/pxiByp8kv8JHgFVrLFj_V1tvFP-KUEg.ttf", + "200italic": "https://fonts.gstatic.com/s/poppins/v21/pxiDyp8kv8JHgFVrJJLmv1plEN2PQEhcqw.ttf", + "300": "https://fonts.gstatic.com/s/poppins/v21/pxiByp8kv8JHgFVrLDz8V1tvFP-KUEg.ttf", + "300italic": "https://fonts.gstatic.com/s/poppins/v21/pxiDyp8kv8JHgFVrJJLm21llEN2PQEhcqw.ttf", + "regular": "https://fonts.gstatic.com/s/poppins/v21/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf", + "italic": "https://fonts.gstatic.com/s/poppins/v21/pxiGyp8kv8JHgFVrJJLed3FBGPaTSQ.ttf", + "500": "https://fonts.gstatic.com/s/poppins/v21/pxiByp8kv8JHgFVrLGT9V1tvFP-KUEg.ttf", + "500italic": "https://fonts.gstatic.com/s/poppins/v21/pxiDyp8kv8JHgFVrJJLmg1hlEN2PQEhcqw.ttf", + "600": "https://fonts.gstatic.com/s/poppins/v21/pxiByp8kv8JHgFVrLEj6V1tvFP-KUEg.ttf", + "600italic": "https://fonts.gstatic.com/s/poppins/v21/pxiDyp8kv8JHgFVrJJLmr19lEN2PQEhcqw.ttf", + "700": "https://fonts.gstatic.com/s/poppins/v21/pxiByp8kv8JHgFVrLCz7V1tvFP-KUEg.ttf", + "700italic": "https://fonts.gstatic.com/s/poppins/v21/pxiDyp8kv8JHgFVrJJLmy15lEN2PQEhcqw.ttf", + "800": "https://fonts.gstatic.com/s/poppins/v21/pxiByp8kv8JHgFVrLDD4V1tvFP-KUEg.ttf", + "800italic": "https://fonts.gstatic.com/s/poppins/v21/pxiDyp8kv8JHgFVrJJLm111lEN2PQEhcqw.ttf", + "900": "https://fonts.gstatic.com/s/poppins/v21/pxiByp8kv8JHgFVrLBT5V1tvFP-KUEg.ttf", + "900italic": "https://fonts.gstatic.com/s/poppins/v21/pxiDyp8kv8JHgFVrJJLm81xlEN2PQEhcqw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/poppins/v21/pxiEyp8kv8JHgFVrJJHedw.ttf" + }, + { + "family": "Port Lligat Sans", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/portlligatsans/v22/kmKmZrYrGBbdN1aV7Vokow6Lw4s4l7N0Tx4xEcQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/portlligatsans/v22/kmKmZrYrGBbdN1aV7Vokow6Lw4s4p7J-Sw.ttf" + }, + { + "family": "Port Lligat Slab", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/portlligatslab/v25/LDIpaoiQNgArA8kR7ulhZ8P_NYOss7ob9yGLmfI.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/portlligatslab/v25/LDIpaoiQNgArA8kR7ulhZ8P_NYOsg7sR8w.ttf" + }, + { + "family": "Potta One", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/pottaone/v17/FeVSS05Bp6cy7xI-YfxQ3Z5nm29Gww.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pottaone/v17/FeVSS05Bp6cy7xI-Yfxg3JRj.ttf" + }, + { + "family": "Pragati Narrow", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pragatinarrow/v13/vm8vdRf0T0bS1ffgsPB7WZ-mD17_ytN3M48a.ttf", + "700": "https://fonts.gstatic.com/s/pragatinarrow/v13/vm8sdRf0T0bS1ffgsPB7WZ-mD2ZD5fd_GJMTlo_4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pragatinarrow/v13/vm8vdRf0T0bS1ffgsPB7WZ-mD27-wNc.ttf" + }, + { + "family": "Praise", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/praise/v7/qkBUXvUZ-cnFXcFyDvO67L9XmQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/praise/v7/qkBUXvUZ-cnFXcFCD_m-.ttf" + }, + { + "family": "Prata", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/prata/v20/6xKhdSpbNNCT-vWIAG_5LWwJ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/prata/v20/6xKhdSpbNNCT-sWJCms.ttf" + }, + { + "family": "Preahvihear", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v29", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/preahvihear/v29/6NUS8F-dNQeEYhzj7uluxswE49FJf8Wv.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/preahvihear/v29/6NUS8F-dNQeEYhzj7uluxvwF6dU.ttf" + }, + { + "family": "Press Start 2P", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/pressstart2p/v15/e3t4euO8T-267oIAQAu6jDQyK0nSgPJE4580.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pressstart2p/v15/e3t4euO8T-267oIAQAu6jDQyK3nTivY.ttf" + }, + { + "family": "Pridi", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/pridi/v13/2sDdZG5JnZLfkc1SiE0jRUG0AqUc.ttf", + "300": "https://fonts.gstatic.com/s/pridi/v13/2sDdZG5JnZLfkc02i00jRUG0AqUc.ttf", + "regular": "https://fonts.gstatic.com/s/pridi/v13/2sDQZG5JnZLfkfWao2krbl29.ttf", + "500": "https://fonts.gstatic.com/s/pridi/v13/2sDdZG5JnZLfkc1uik0jRUG0AqUc.ttf", + "600": "https://fonts.gstatic.com/s/pridi/v13/2sDdZG5JnZLfkc1CjU0jRUG0AqUc.ttf", + "700": "https://fonts.gstatic.com/s/pridi/v13/2sDdZG5JnZLfkc0mjE0jRUG0AqUc.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/pridi/v13/2sDQZG5JnZLfkcWbqW0.ttf" + }, + { + "family": "Princess Sofia", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/princesssofia/v25/qWczB6yguIb8DZ_GXZst16n7GRz7mDUoupoI.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/princesssofia/v25/qWczB6yguIb8DZ_GXZst16n7GSz6kjE.ttf" + }, + { + "family": "Prociono", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/prociono/v26/r05YGLlR-KxAf9GGO8upyDYtStiJ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/prociono/v26/r05YGLlR-KxAf9GGO_uowjI.ttf" + }, + { + "family": "Prompt", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/prompt/v10/-W_9XJnvUD7dzB2CA9oYREcjeo0k.ttf", + "100italic": "https://fonts.gstatic.com/s/prompt/v10/-W_7XJnvUD7dzB2KZeJ8TkMBf50kbiM.ttf", + "200": "https://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cr_s4bmkvc5Q9dw.ttf", + "200italic": "https://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeLQb2MrUZEtdzow.ttf", + "300": "https://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cy_g4bmkvc5Q9dw.ttf", + "300italic": "https://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeK0bGMrUZEtdzow.ttf", + "regular": "https://fonts.gstatic.com/s/prompt/v10/-W__XJnvUD7dzB26Z9AcZkIzeg.ttf", + "italic": "https://fonts.gstatic.com/s/prompt/v10/-W_9XJnvUD7dzB2KZdoYREcjeo0k.ttf", + "500": "https://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Ck_k4bmkvc5Q9dw.ttf", + "500italic": "https://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeLsbWMrUZEtdzow.ttf", + "600": "https://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cv_44bmkvc5Q9dw.ttf", + "600italic": "https://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeLAamMrUZEtdzow.ttf", + "700": "https://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2C2_84bmkvc5Q9dw.ttf", + "700italic": "https://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeKka2MrUZEtdzow.ttf", + "800": "https://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2Cx_w4bmkvc5Q9dw.ttf", + "800italic": "https://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeK4aGMrUZEtdzow.ttf", + "900": "https://fonts.gstatic.com/s/prompt/v10/-W_8XJnvUD7dzB2C4_04bmkvc5Q9dw.ttf", + "900italic": "https://fonts.gstatic.com/s/prompt/v10/-W_6XJnvUD7dzB2KZeKcaWMrUZEtdzow.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/prompt/v10/-W__XJnvUD7dzB2KZtoY.ttf" + }, + { + "family": "Prosto One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/prostoone/v19/OpNJno4VhNfK-RgpwWWxpipfWhXD00c.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/prostoone/v19/OpNJno4VhNfK-RgpwWWxlitVXg.ttf" + }, + { + "family": "Protest Guerrilla", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/protestguerrilla/v2/Qw3HZR5PDSL6K3irtrY-VJB2YzARHV0koJ8y_eiS.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/protestguerrilla/v2/Qw3HZR5PDSL6K3irtrY-VJB2YzARHW0lqps.ttf" + }, + { + "family": "Protest Revolution", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/protestrevolution/v2/11hcGofZ0kXBbxQXFB7MJsjtqnVw6Z2s8PIzTG1nQw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/protestrevolution/v2/11hcGofZ0kXBbxQXFB7MJsjtqnVw6Z2c8fg3.ttf" + }, + { + "family": "Protest Riot", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/protestriot/v2/d6lPkaOxWMKm7TdezXFmpkrM1_JgjmRpOA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/protestriot/v2/d6lPkaOxWMKm7TdezXFmpkr81vhk.ttf" + }, + { + "family": "Protest Strike", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/proteststrike/v2/0QI5MXdf4Y67Rn6vBog67ZjFlpzW0gZOs7BX.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/proteststrike/v2/0QI5MXdf4Y67Rn6vBog67ZjFlqzX2AI.ttf" + }, + { + "family": "Proza Libre", + "variants": [ + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/prozalibre/v9/LYjGdGHgj0k1DIQRyUEyyHovftvXWYyz.ttf", + "italic": "https://fonts.gstatic.com/s/prozalibre/v9/LYjEdGHgj0k1DIQRyUEyyEotdN_1XJyz7zc.ttf", + "500": "https://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyELbV__fcpC69i6N.ttf", + "500italic": "https://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTCvceJSY8z6Np1k.ttf", + "600": "https://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEL3UP_fcpC69i6N.ttf", + "600italic": "https://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTAfbeJSY8z6Np1k.ttf", + "700": "https://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEKTUf_fcpC69i6N.ttf", + "700italic": "https://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTGPaeJSY8z6Np1k.ttf", + "800": "https://fonts.gstatic.com/s/prozalibre/v9/LYjbdGHgj0k1DIQRyUEyyEKPUv_fcpC69i6N.ttf", + "800italic": "https://fonts.gstatic.com/s/prozalibre/v9/LYjZdGHgj0k1DIQRyUEyyEotTH_ZeJSY8z6Np1k.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/prozalibre/v9/LYjGdGHgj0k1DIQRyUEyyEoudN8.ttf" + }, + { + "family": "Public Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpi5ww0pX189fg.ttf", + "200": "https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulpm5ww0pX189fg.ttf", + "300": "https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuSJm5ww0pX189fg.ttf", + "regular": "https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpm5ww0pX189fg.ttf", + "500": "https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuJJm5ww0pX189fg.ttf", + "600": "https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuyJ65ww0pX189fg.ttf", + "700": "https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymu8Z65ww0pX189fg.ttf", + "800": "https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulp65ww0pX189fg.ttf", + "900": "https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuv565ww0pX189fg.ttf", + "100italic": "https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgQctfVotfj7j.ttf", + "200italic": "https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRgActfVotfj7j.ttf", + "300italic": "https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673toPgActfVotfj7j.ttf", + "italic": "https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgActfVotfj7j.ttf", + "500italic": "https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpjgActfVotfj7j.ttf", + "600italic": "https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tqPhwctfVotfj7j.ttf", + "700italic": "https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tq2hwctfVotfj7j.ttf", + "800italic": "https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRhwctfVotfj7j.ttf", + "900italic": "https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tr4hwctfVotfj7j.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpmJwgct.ttf" + }, + { + "family": "Puppies Play", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/puppiesplay/v9/wlp2gwHZEV99rG6M3NR9uB9vaAJSA_JN3Q.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/puppiesplay/v9/wlp2gwHZEV99rG6M3NR9uB9faQhW.ttf" + }, + { + "family": "Puritan", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/puritan/v24/845YNMgkAJ2VTtIo9JrwRdaI50M.ttf", + "italic": "https://fonts.gstatic.com/s/puritan/v24/845aNMgkAJ2VTtIoxJj6QfSN90PfXA.ttf", + "700": "https://fonts.gstatic.com/s/puritan/v24/845dNMgkAJ2VTtIozCbfYd6j-0rGRes.ttf", + "700italic": "https://fonts.gstatic.com/s/puritan/v24/845fNMgkAJ2VTtIoxJjC_dup_2jDVevnLQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/puritan/v24/845YNMgkAJ2VTtIoxJv6QQ.ttf" + }, + { + "family": "Purple Purse", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/purplepurse/v23/qWctB66gv53iAp-Vfs4My6qyeBb_ujA4ug.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/purplepurse/v23/qWctB66gv53iAp-Vfs4My6qCeRz7.ttf" + }, + { + "family": "Qahiri", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin" + ], + "version": "v9", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/qahiri/v9/tsssAp1RZy0C_hGuU3Chrnmupw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/qahiri/v9/tsssAp1RZy0C_hGeUnql.ttf" + }, + { + "family": "Quando", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/quando/v16/xMQVuFNaVa6YuW0pC6WzKX_QmA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/quando/v16/xMQVuFNaVa6YuW0ZCq-3.ttf" + }, + { + "family": "Quantico", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/quantico/v17/rax-HiSdp9cPL3KIF4xsLjxSmlLZ.ttf", + "italic": "https://fonts.gstatic.com/s/quantico/v17/rax4HiSdp9cPL3KIF7xuJDhwn0LZ6T8.ttf", + "700": "https://fonts.gstatic.com/s/quantico/v17/rax5HiSdp9cPL3KIF7TQARhasU7Q8Cad.ttf", + "700italic": "https://fonts.gstatic.com/s/quantico/v17/rax7HiSdp9cPL3KIF7xuHIRfu0ry9TadML4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/quantico/v17/rax-HiSdp9cPL3KIF7xtJDg.ttf" + }, + { + "family": "Quattrocento", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/quattrocento/v23/OZpEg_xvsDZQL_LKIF7q4jPHxGL7f4jFuA.ttf", + "700": "https://fonts.gstatic.com/s/quattrocento/v23/OZpbg_xvsDZQL_LKIF7q4jP_eE3fd6PZsXcM9w.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/quattrocento/v23/OZpEg_xvsDZQL_LKIF7q4jP3xWj_.ttf" + }, + { + "family": "Quattrocento Sans", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/quattrocentosans/v21/va9c4lja2NVIDdIAAoMR5MfuElaRB3zOvU7eHGHJ.ttf", + "italic": "https://fonts.gstatic.com/s/quattrocentosans/v21/va9a4lja2NVIDdIAAoMR5MfuElaRB0zMt0r8GXHJkLI.ttf", + "700": "https://fonts.gstatic.com/s/quattrocentosans/v21/va9Z4lja2NVIDdIAAoMR5MfuElaRB0RykmrWN33AiasJ.ttf", + "700italic": "https://fonts.gstatic.com/s/quattrocentosans/v21/va9X4lja2NVIDdIAAoMR5MfuElaRB0zMj_bTPXnijLsJV7E.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/quattrocentosans/v21/va9c4lja2NVIDdIAAoMR5MfuElaRB0zPt0o.ttf" + }, + { + "family": "Questrial", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/questrial/v18/QdVUSTchPBm7nuUeVf7EuStkm20oJA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/questrial/v18/QdVUSTchPBm7nuUeVf70uCFg.ttf" + }, + { + "family": "Quicksand", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v31", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/quicksand/v31/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkKEo18G0wx40QDw.ttf", + "regular": "https://fonts.gstatic.com/s/quicksand/v31/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkP8o18G0wx40QDw.ttf", + "500": "https://fonts.gstatic.com/s/quicksand/v31/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkM0o18G0wx40QDw.ttf", + "600": "https://fonts.gstatic.com/s/quicksand/v31/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkCEv18G0wx40QDw.ttf", + "700": "https://fonts.gstatic.com/s/quicksand/v31/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkBgv18G0wx40QDw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/quicksand/v31/6xK-dSZaM9iE8KbpRA_LJ3z8mH9BOJvgkP8o58C-xw.ttf" + }, + { + "family": "Quintessential", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/quintessential/v22/fdNn9sOGq31Yjnh3qWU14DdtjY5wS7kmAyxM.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/quintessential/v22/fdNn9sOGq31Yjnh3qWU14Ddtjb5xQb0.ttf" + }, + { + "family": "Qwigley", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/qwigley/v18/1cXzaU3UGJb5tGoCuVxsi1mBmcE.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/qwigley/v18/1cXzaU3UGJb5tGoCiV1mjw.ttf" + }, + { + "family": "Qwitcher Grypen", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/qwitchergrypen/v6/pxicypclp9tDilN9RrC5BSI1dZmrSGNAom-wpw.ttf", + "700": "https://fonts.gstatic.com/s/qwitchergrypen/v6/pxiZypclp9tDilN9RrC5BSI1dZmT9ExkqkSsrvNXiA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/qwitchergrypen/v6/pxicypclp9tDilN9RrC5BSI1dZmbSWlE.ttf" + }, + { + "family": "REM", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/rem/v2/WnzgHAIoSDyHbRjfsYumpRvUPMLrrToUbIqIfBU.ttf", + "200": "https://fonts.gstatic.com/s/rem/v2/WnzgHAIoSDyHbRjfsYumpRvUPELqrToUbIqIfBU.ttf", + "300": "https://fonts.gstatic.com/s/rem/v2/WnzgHAIoSDyHbRjfsYumpRvUPJzqrToUbIqIfBU.ttf", + "regular": "https://fonts.gstatic.com/s/rem/v2/WnzgHAIoSDyHbRjfsYumpRvUPMLqrToUbIqIfBU.ttf", + "500": "https://fonts.gstatic.com/s/rem/v2/WnzgHAIoSDyHbRjfsYumpRvUPPDqrToUbIqIfBU.ttf", + "600": "https://fonts.gstatic.com/s/rem/v2/WnzgHAIoSDyHbRjfsYumpRvUPBztrToUbIqIfBU.ttf", + "700": "https://fonts.gstatic.com/s/rem/v2/WnzgHAIoSDyHbRjfsYumpRvUPCXtrToUbIqIfBU.ttf", + "800": "https://fonts.gstatic.com/s/rem/v2/WnzgHAIoSDyHbRjfsYumpRvUPELtrToUbIqIfBU.ttf", + "900": "https://fonts.gstatic.com/s/rem/v2/WnzgHAIoSDyHbRjfsYumpRvUPGvtrToUbIqIfBU.ttf", + "100italic": "https://fonts.gstatic.com/s/rem/v2/WnzmHAIoSDytZCogaeLNP7XTKQqpRXgeaKiNbBVWkw.ttf", + "200italic": "https://fonts.gstatic.com/s/rem/v2/WnzmHAIoSDytZCogaeLNP7XTKQqpxXkeaKiNbBVWkw.ttf", + "300italic": "https://fonts.gstatic.com/s/rem/v2/WnzmHAIoSDytZCogaeLNP7XTKQqpG3keaKiNbBVWkw.ttf", + "italic": "https://fonts.gstatic.com/s/rem/v2/WnzmHAIoSDytZCogaeLNP7XTKQqpRXkeaKiNbBVWkw.ttf", + "500italic": "https://fonts.gstatic.com/s/rem/v2/WnzmHAIoSDytZCogaeLNP7XTKQqpd3keaKiNbBVWkw.ttf", + "600italic": "https://fonts.gstatic.com/s/rem/v2/WnzmHAIoSDytZCogaeLNP7XTKQqpm34eaKiNbBVWkw.ttf", + "700italic": "https://fonts.gstatic.com/s/rem/v2/WnzmHAIoSDytZCogaeLNP7XTKQqpon4eaKiNbBVWkw.ttf", + "800italic": "https://fonts.gstatic.com/s/rem/v2/WnzmHAIoSDytZCogaeLNP7XTKQqpxX4eaKiNbBVWkw.ttf", + "900italic": "https://fonts.gstatic.com/s/rem/v2/WnzmHAIoSDytZCogaeLNP7XTKQqp7H4eaKiNbBVWkw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rem/v2/WnzgHAIoSDyHbRjfsYumpRvUPMLqnTseaA.ttf" + }, + { + "family": "Racing Sans One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/racingsansone/v15/sykr-yRtm7EvTrXNxkv5jfKKyDCwL3rmWpIBtA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/racingsansone/v15/sykr-yRtm7EvTrXNxkv5jfKKyDCALnDi.ttf" + }, + { + "family": "Radio Canada", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "canadian-aboriginal", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nESkQPIJOdSSfOT.ttf", + "regular": "https://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nFMkQPIJOdSSfOT.ttf", + "500": "https://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nF-kQPIJOdSSfOT.ttf", + "600": "https://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nGSlgPIJOdSSfOT.ttf", + "700": "https://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nGrlgPIJOdSSfOT.ttf", + "300italic": "https://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0rWLLuNwTOOTa9k.ttf", + "italic": "https://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0uuLLuNwTOOTa9k.ttf", + "500italic": "https://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0tmLLuNwTOOTa9k.ttf", + "600italic": "https://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0jWMLuNwTOOTa9k.ttf", + "700italic": "https://fonts.gstatic.com/s/radiocanada/v21/XRX33ISXn0dBMcibU6jlAqrdcwAMBJuK9IgQn4bfnSrKcMQM2cGQ1WSE0gyMLuNwTOOTa9k.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/radiocanada/v21/XRX13ISXn0dBMcibU6jlAqr3ejLv5OLZYiYXik6db2P4jxxlsls-0nFMkTPJLuM.ttf" + }, + { + "family": "Radio Canada Big", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/radiocanadabig/v1/LYjUdHrinEImAoQewU0hyTsPFra4Yp-6A-YRBF-RX6nNRY3p2pcheCsG.ttf", + "500": "https://fonts.gstatic.com/s/radiocanadabig/v1/LYjUdHrinEImAoQewU0hyTsPFra4Yp-6A-YRBF-RX6n_RY3p2pcheCsG.ttf", + "600": "https://fonts.gstatic.com/s/radiocanadabig/v1/LYjUdHrinEImAoQewU0hyTsPFra4Yp-6A-YRBF-RX6kTQo3p2pcheCsG.ttf", + "700": "https://fonts.gstatic.com/s/radiocanadabig/v1/LYjUdHrinEImAoQewU0hyTsPFra4Yp-6A-YRBF-RX6kqQo3p2pcheCsG.ttf", + "italic": "https://fonts.gstatic.com/s/radiocanadabig/v1/LYjqdHrinEImAoQewU0hyTsPFra4SJaI_D54b8U_WLwFBmWq0JMDfTsGdMc.ttf", + "500italic": "https://fonts.gstatic.com/s/radiocanadabig/v1/LYjqdHrinEImAoQewU0hyTsPFra4SJaI_D54b8U_WLwFBleq0JMDfTsGdMc.ttf", + "600italic": "https://fonts.gstatic.com/s/radiocanadabig/v1/LYjqdHrinEImAoQewU0hyTsPFra4SJaI_D54b8U_WLwFBrut0JMDfTsGdMc.ttf", + "700italic": "https://fonts.gstatic.com/s/radiocanadabig/v1/LYjqdHrinEImAoQewU0hyTsPFra4SJaI_D54b8U_WLwFBoKt0JMDfTsGdMc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/radiocanadabig/v1/LYjUdHrinEImAoQewU0hyTsPFra4Yp-6A-YRBF-RX6nNRb3o0JM.ttf" + }, + { + "family": "Radley", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/radley/v22/LYjDdGzinEIjCN19oAlEpVs3VQ.ttf", + "italic": "https://fonts.gstatic.com/s/radley/v22/LYjBdGzinEIjCN1NogNAh14nVcfe.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/radley/v22/LYjDdGzinEIjCN1NoQNA.ttf" + }, + { + "family": "Rajdhani", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-08-12", + "files": { + "300": "https://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pasEcOsc-bGkqIw.ttf", + "regular": "https://fonts.gstatic.com/s/rajdhani/v15/LDIxapCSOBg7S-QT7q4AOeekWPrP.ttf", + "500": "https://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pb0EMOsc-bGkqIw.ttf", + "600": "https://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pbYF8Osc-bGkqIw.ttf", + "700": "https://fonts.gstatic.com/s/rajdhani/v15/LDI2apCSOBg7S-QT7pa8FsOsc-bGkqIw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rajdhani/v15/LDIxapCSOBg7S-QT7p4BM-M.ttf" + }, + { + "family": "Rakkas", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rakkas/v19/Qw3cZQlNHiblL3j_lttPOeMcCw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rakkas/v19/Qw3cZQlNHiblL3jPl9FL.ttf" + }, + { + "family": "Raleway", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v34", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/raleway/v34/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvao4CPNLA3JC9c.ttf", + "200": "https://fonts.gstatic.com/s/raleway/v34/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtaooCPNLA3JC9c.ttf", + "300": "https://fonts.gstatic.com/s/raleway/v34/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVuEooCPNLA3JC9c.ttf", + "regular": "https://fonts.gstatic.com/s/raleway/v34/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaooCPNLA3JC9c.ttf", + "500": "https://fonts.gstatic.com/s/raleway/v34/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvoooCPNLA3JC9c.ttf", + "600": "https://fonts.gstatic.com/s/raleway/v34/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVsEpYCPNLA3JC9c.ttf", + "700": "https://fonts.gstatic.com/s/raleway/v34/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pYCPNLA3JC9c.ttf", + "800": "https://fonts.gstatic.com/s/raleway/v34/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtapYCPNLA3JC9c.ttf", + "900": "https://fonts.gstatic.com/s/raleway/v34/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVtzpYCPNLA3JC9c.ttf", + "100italic": "https://fonts.gstatic.com/s/raleway/v34/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4WjNPrQVIT9c2c8.ttf", + "200italic": "https://fonts.gstatic.com/s/raleway/v34/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4ejMPrQVIT9c2c8.ttf", + "300italic": "https://fonts.gstatic.com/s/raleway/v34/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4TbMPrQVIT9c2c8.ttf", + "italic": "https://fonts.gstatic.com/s/raleway/v34/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4WjMPrQVIT9c2c8.ttf", + "500italic": "https://fonts.gstatic.com/s/raleway/v34/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4VrMPrQVIT9c2c8.ttf", + "600italic": "https://fonts.gstatic.com/s/raleway/v34/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4bbLPrQVIT9c2c8.ttf", + "700italic": "https://fonts.gstatic.com/s/raleway/v34/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4Y_LPrQVIT9c2c8.ttf", + "800italic": "https://fonts.gstatic.com/s/raleway/v34/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4ejLPrQVIT9c2c8.ttf", + "900italic": "https://fonts.gstatic.com/s/raleway/v34/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4cHLPrQVIT9c2c8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/raleway/v34/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCOPrQ.ttf" + }, + { + "family": "Raleway Dots", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ralewaydots/v18/6NUR8FifJg6AfQvzpshgwJ8kyf9Fdty2ew.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ralewaydots/v18/6NUR8FifJg6AfQvzpshgwJ8UyPVB.ttf" + }, + { + "family": "Ramabhadra", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v15", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/ramabhadra/v15/EYq2maBOwqRW9P1SQ83LehNGX5uWw3o.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ramabhadra/v15/EYq2maBOwqRW9P1SQ83LShJMWw.ttf" + }, + { + "family": "Ramaraja", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v15", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/ramaraja/v15/SlGTmQearpYAYG1CABIkqnB6aSQU.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ramaraja/v15/SlGTmQearpYAYG1CACIloHQ.ttf" + }, + { + "family": "Rambla", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rambla/v13/snfrs0ip98hx6mr0I7IONthkwQ.ttf", + "italic": "https://fonts.gstatic.com/s/rambla/v13/snfps0ip98hx6mrEIbgKFN10wYKa.ttf", + "700": "https://fonts.gstatic.com/s/rambla/v13/snfos0ip98hx6mrMn50qPvN4yJuDYQ.ttf", + "700italic": "https://fonts.gstatic.com/s/rambla/v13/snfus0ip98hx6mrEIYC2O_l86p6TYS-Y.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rambla/v13/snfrs0ip98hx6mrEIrgK.ttf" + }, + { + "family": "Rammetto One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rammettoone/v19/LhWiMV3HOfMbMetJG3lQDpp9Mvuciu-_SQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rammettoone/v19/LhWiMV3HOfMbMetJG3lQDppNM_GY.ttf" + }, + { + "family": "Rampart One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rampartone/v10/K2F1fZFGl_JSR1tAWNG9R6qgLS76ZHOM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rampartone/v10/K2F1fZFGl_JSR1tAWNG9R5qhJyo.ttf" + }, + { + "family": "Ranchers", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ranchers/v17/zrfm0H3Lx-P2Xvs2AoDYDC79XTHv.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ranchers/v17/zrfm0H3Lx-P2Xvs2ArDZBio.ttf" + }, + { + "family": "Rancho", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rancho/v21/46kulbzmXjLaqZRlbWXgd0RY1g.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rancho/v21/46kulbzmXjLaqZRVbG_k.ttf" + }, + { + "family": "Ranga", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ranga/v21/C8ct4cYisGb28p6CLDwZwmGE.ttf", + "700": "https://fonts.gstatic.com/s/ranga/v21/C8cg4cYisGb28qY-AxgR6X2NZAn2.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ranga/v21/C8ct4cYisGb28q6DJjg.ttf" + }, + { + "family": "Rasa", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/rasa/v22/xn76YHIn1mWmVKl8ZtAM9NrJfN4YJW41fcvN2KT4.ttf", + "regular": "https://fonts.gstatic.com/s/rasa/v22/xn76YHIn1mWmVKl8ZtAM9NrJfN5GJW41fcvN2KT4.ttf", + "500": "https://fonts.gstatic.com/s/rasa/v22/xn76YHIn1mWmVKl8ZtAM9NrJfN50JW41fcvN2KT4.ttf", + "600": "https://fonts.gstatic.com/s/rasa/v22/xn76YHIn1mWmVKl8ZtAM9NrJfN6YIm41fcvN2KT4.ttf", + "700": "https://fonts.gstatic.com/s/rasa/v22/xn76YHIn1mWmVKl8ZtAM9NrJfN6hIm41fcvN2KT4.ttf", + "300italic": "https://fonts.gstatic.com/s/rasa/v22/xn78YHIn1mWmfqBOmQhln0Bne8uOZth2d8_v3bT4Ycc.ttf", + "italic": "https://fonts.gstatic.com/s/rasa/v22/xn78YHIn1mWmfqBOmQhln0Bne8uOZoZ2d8_v3bT4Ycc.ttf", + "500italic": "https://fonts.gstatic.com/s/rasa/v22/xn78YHIn1mWmfqBOmQhln0Bne8uOZrR2d8_v3bT4Ycc.ttf", + "600italic": "https://fonts.gstatic.com/s/rasa/v22/xn78YHIn1mWmfqBOmQhln0Bne8uOZlhxd8_v3bT4Ycc.ttf", + "700italic": "https://fonts.gstatic.com/s/rasa/v22/xn78YHIn1mWmfqBOmQhln0Bne8uOZmFxd8_v3bT4Ycc.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rasa/v22/xn76YHIn1mWmVKl8ZtAM9NrJfN5GJV40d88.ttf" + }, + { + "family": "Rationale", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rationale/v28/9XUnlJ92n0_JFxHIfHcsdlFMzLC2Zw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rationale/v28/9XUnlJ92n0_JFxHIfHccd1tI.ttf" + }, + { + "family": "Ravi Prakash", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v19", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/raviprakash/v19/gokpH6fsDkVrF9Bv9X8SOAKHmNZEq6TTFw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/raviprakash/v19/gokpH6fsDkVrF9Bv9X8SOAK3mdxA.ttf" + }, + { + "family": "Readex Pro", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCYUSmgmsglvjkag.ttf", + "300": "https://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCv0Smgmsglvjkag.ttf", + "regular": "https://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTC4USmgmsglvjkag.ttf", + "500": "https://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTC00Smgmsglvjkag.ttf", + "600": "https://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCP0Omgmsglvjkag.ttf", + "700": "https://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTCBkOmgmsglvjkag.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/readexpro/v21/SLXnc1bJ7HE5YDoGPuzj_dh8uc7wUy8ZQQyX2KY8TL0kGZN6blTC4USWg2Ek.ttf" + }, + { + "family": "Recursive", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v38", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/recursive/v38/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadDck018vwxjDJCL.ttf", + "regular": "https://fonts.gstatic.com/s/recursive/v38/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadCCk018vwxjDJCL.ttf", + "500": "https://fonts.gstatic.com/s/recursive/v38/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadCwk018vwxjDJCL.ttf", + "600": "https://fonts.gstatic.com/s/recursive/v38/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadBclE18vwxjDJCL.ttf", + "700": "https://fonts.gstatic.com/s/recursive/v38/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadBllE18vwxjDJCL.ttf", + "800": "https://fonts.gstatic.com/s/recursive/v38/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadAClE18vwxjDJCL.ttf", + "900": "https://fonts.gstatic.com/s/recursive/v38/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadArlE18vwxjDJCL.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/recursive/v38/8vJN7wMr0mhh-RQChyHEH06TlXhq_gukbYrFMk1QuAIcyEwG_X-dpEfaE5YaERmK-CImKsvxvU-MXGX2fSqasNfUvz2xbXfn1uEQadCCk319tQg.ttf" + }, + { + "family": "Red Hat Display", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbjKWckg5-Xecg3w.ttf", + "regular": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbmyWckg5-Xecg3w.ttf", + "500": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbl6Wckg5-Xecg3w.ttf", + "600": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbrKRckg5-Xecg3w.ttf", + "700": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbouRckg5-Xecg3w.ttf", + "800": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbuyRckg5-Xecg3w.ttf", + "900": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbsWRckg5-Xecg3w.ttf", + "300italic": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVxAsz_VWZk3zJGg.ttf", + "italic": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVmgsz_VWZk3zJGg.ttf", + "500italic": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVqAsz_VWZk3zJGg.ttf", + "600italic": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVRAwz_VWZk3zJGg.ttf", + "700italic": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVfQwz_VWZk3zJGg.ttf", + "800italic": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVGgwz_VWZk3zJGg.ttf", + "900italic": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIh7wUr0m80wwYf0QCXZzYzUoTg-CSvZX4Vlf1fe6TVMwwz_VWZk3zJGg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/redhatdisplay/v19/8vIf7wUr0m80wwYf0QCXZzYzUoTK8RZQvRd-D1NYbmyWQkkz_Q.ttf" + }, + { + "family": "Red Hat Mono", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/redhatmono/v11/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQQPI-7HNuW4QuKI.ttf", + "regular": "https://fonts.gstatic.com/s/redhatmono/v11/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQV3I-7HNuW4QuKI.ttf", + "500": "https://fonts.gstatic.com/s/redhatmono/v11/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQW_I-7HNuW4QuKI.ttf", + "600": "https://fonts.gstatic.com/s/redhatmono/v11/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQYPP-7HNuW4QuKI.ttf", + "700": "https://fonts.gstatic.com/s/redhatmono/v11/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQbrP-7HNuW4QuKI.ttf", + "300italic": "https://fonts.gstatic.com/s/redhatmono/v11/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLTfLHvUwVqKIJuw.ttf", + "italic": "https://fonts.gstatic.com/s/redhatmono/v11/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLE_LHvUwVqKIJuw.ttf", + "500italic": "https://fonts.gstatic.com/s/redhatmono/v11/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLIfLHvUwVqKIJuw.ttf", + "600italic": "https://fonts.gstatic.com/s/redhatmono/v11/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWLzfXHvUwVqKIJuw.ttf", + "700italic": "https://fonts.gstatic.com/s/redhatmono/v11/jVye7nDnA2uf2zVvFAhhzEsUXfZc_vk45Kb3VJWL9PXHvUwVqKIJuw.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/redhatmono/v11/jVyY7nDnA2uf2zVvFAhhzEs-VMSjJpBTfgjwQV3Iy7DHvQ.ttf" + }, + { + "family": "Red Hat Text", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/redhattext/v14/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML-ZwVrbacYVFtIY.ttf", + "regular": "https://fonts.gstatic.com/s/redhattext/v14/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML7hwVrbacYVFtIY.ttf", + "500": "https://fonts.gstatic.com/s/redhattext/v14/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML4pwVrbacYVFtIY.ttf", + "600": "https://fonts.gstatic.com/s/redhattext/v14/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML2Z3VrbacYVFtIY.ttf", + "700": "https://fonts.gstatic.com/s/redhattext/v14/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML193VrbacYVFtIY.ttf", + "300italic": "https://fonts.gstatic.com/s/redhattext/v14/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAz4PXQdadApIYv_g.ttf", + "italic": "https://fonts.gstatic.com/s/redhattext/v14/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzvvXQdadApIYv_g.ttf", + "500italic": "https://fonts.gstatic.com/s/redhattext/v14/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzjPXQdadApIYv_g.ttf", + "600italic": "https://fonts.gstatic.com/s/redhattext/v14/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzYPLQdadApIYv_g.ttf", + "700italic": "https://fonts.gstatic.com/s/redhattext/v14/RrQEbohi_ic6B3yVSzGBrMxQbb0jEzlRoOOLOnAzWfLQdadApIYv_g.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/redhattext/v14/RrQCbohi_ic6B3yVSzGBrMx6ZI_cy1A6Ok2ML7hwZrfQdQ.ttf" + }, + { + "family": "Red Rose", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/redrose/v20/QdVISTYiLBjouPgEUajvsfWwDtc3MH8y8_sDcjSsYUVUjg.ttf", + "regular": "https://fonts.gstatic.com/s/redrose/v20/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yrfsDcjSsYUVUjg.ttf", + "500": "https://fonts.gstatic.com/s/redrose/v20/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yn_sDcjSsYUVUjg.ttf", + "600": "https://fonts.gstatic.com/s/redrose/v20/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yc_wDcjSsYUVUjg.ttf", + "700": "https://fonts.gstatic.com/s/redrose/v20/QdVISTYiLBjouPgEUajvsfWwDtc3MH8ySvwDcjSsYUVUjg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/redrose/v20/QdVISTYiLBjouPgEUajvsfWwDtc3MH8yrfszcz6o.ttf" + }, + { + "family": "Redacted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/redacted/v8/Z9XVDmdRShme2O_7aITe4u2El6GC.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/redacted/v8/Z9XVDmdRShme2O_7aLTf6Ok.ttf" + }, + { + "family": "Redacted Script", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/redactedscript/v10/ypvEbXGRglhokR7dcC3d1-R6zmxqHUzVmbI397ldkg.ttf", + "regular": "https://fonts.gstatic.com/s/redactedscript/v10/ypvBbXGRglhokR7dcC3d1-R6zmxSsWTxkZkr_g.ttf", + "700": "https://fonts.gstatic.com/s/redactedscript/v10/ypvEbXGRglhokR7dcC3d1-R6zmxqDUvVmbI397ldkg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/redactedscript/v10/ypvBbXGRglhokR7dcC3d1-R6zmxisG71.ttf" + }, + { + "family": "Reddit Mono", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/redditmono/v3/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUQCYacnnYz7yQYA.ttf", + "300": "https://fonts.gstatic.com/s/redditmono/v3/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUniYacnnYz7yQYA.ttf", + "regular": "https://fonts.gstatic.com/s/redditmono/v3/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUwCYacnnYz7yQYA.ttf", + "500": "https://fonts.gstatic.com/s/redditmono/v3/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vU8iYacnnYz7yQYA.ttf", + "600": "https://fonts.gstatic.com/s/redditmono/v3/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUHiEacnnYz7yQYA.ttf", + "700": "https://fonts.gstatic.com/s/redditmono/v3/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUJyEacnnYz7yQYA.ttf", + "800": "https://fonts.gstatic.com/s/redditmono/v3/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUQCEacnnYz7yQYA.ttf", + "900": "https://fonts.gstatic.com/s/redditmono/v3/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUaSEacnnYz7yQYA.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/redditmono/v3/oPWc_kRmmu4oQ88oo13o48DHbsqn28eR20vUwCYqc3Pc.ttf" + }, + { + "family": "Reddit Sans", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/redditsans/v4/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5ux7YxmAVfBiVMFlw.ttf", + "300": "https://fonts.gstatic.com/s/redditsans/v4/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxM4xmAVfBiVMFlw.ttf", + "regular": "https://fonts.gstatic.com/s/redditsans/v4/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxbYxmAVfBiVMFlw.ttf", + "500": "https://fonts.gstatic.com/s/redditsans/v4/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxX4xmAVfBiVMFlw.ttf", + "600": "https://fonts.gstatic.com/s/redditsans/v4/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxs4tmAVfBiVMFlw.ttf", + "700": "https://fonts.gstatic.com/s/redditsans/v4/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxiotmAVfBiVMFlw.ttf", + "800": "https://fonts.gstatic.com/s/redditsans/v4/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5ux7YtmAVfBiVMFlw.ttf", + "900": "https://fonts.gstatic.com/s/redditsans/v4/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxxItmAVfBiVMFlw.ttf", + "200italic": "https://fonts.gstatic.com/s/redditsans/v4/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc8OQl3Fq1YVlz5F.ttf", + "300italic": "https://fonts.gstatic.com/s/redditsans/v4/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc_QQl3Fq1YVlz5F.ttf", + "italic": "https://fonts.gstatic.com/s/redditsans/v4/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc-OQl3Fq1YVlz5F.ttf", + "500italic": "https://fonts.gstatic.com/s/redditsans/v4/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc-8Ql3Fq1YVlz5F.ttf", + "600italic": "https://fonts.gstatic.com/s/redditsans/v4/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc9QRV3Fq1YVlz5F.ttf", + "700italic": "https://fonts.gstatic.com/s/redditsans/v4/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc9pRV3Fq1YVlz5F.ttf", + "800italic": "https://fonts.gstatic.com/s/redditsans/v4/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc8ORV3Fq1YVlz5F.ttf", + "900italic": "https://fonts.gstatic.com/s/redditsans/v4/EYqmmaFOxq1T_-ETdN7EKQNuYZifL6vY-Zykpc8nRV3Fq1YVlz5F.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/redditsans/v4/EYqgmaFOxq1T_-ETdN7EKSlnU2dHRsBCV5uxbYxWAF3F.ttf" + }, + { + "family": "Reddit Sans Condensed", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/redditsanscondensed/v3/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro9kKUpU4u7XDIuc.ttf", + "300": "https://fonts.gstatic.com/s/redditsanscondensed/v3/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJrowcKUpU4u7XDIuc.ttf", + "regular": "https://fonts.gstatic.com/s/redditsanscondensed/v3/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro1kKUpU4u7XDIuc.ttf", + "500": "https://fonts.gstatic.com/s/redditsanscondensed/v3/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro2sKUpU4u7XDIuc.ttf", + "600": "https://fonts.gstatic.com/s/redditsanscondensed/v3/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro4cNUpU4u7XDIuc.ttf", + "700": "https://fonts.gstatic.com/s/redditsanscondensed/v3/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro74NUpU4u7XDIuc.ttf", + "800": "https://fonts.gstatic.com/s/redditsanscondensed/v3/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro9kNUpU4u7XDIuc.ttf", + "900": "https://fonts.gstatic.com/s/redditsanscondensed/v3/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro_ANUpU4u7XDIuc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/redditsanscondensed/v3/m8J_jepOc6WYkkm2Dey9A5QGAQXmuL3va5IfZsq2gyKtWVJro1kKYpQyvw.ttf" + }, + { + "family": "Redressed", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v29", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/redressed/v29/x3dickHUbrmJ7wMy9MsBfPACvy_1BA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/redressed/v29/x3dickHUbrmJ7wMy9MsxffoG.ttf" + }, + { + "family": "Reem Kufi", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/reemkufi/v21/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtuZnEGGf3qGuvM4.ttf", + "500": "https://fonts.gstatic.com/s/reemkufi/v21/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQttRnEGGf3qGuvM4.ttf", + "600": "https://fonts.gstatic.com/s/reemkufi/v21/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtjhgEGGf3qGuvM4.ttf", + "700": "https://fonts.gstatic.com/s/reemkufi/v21/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtgFgEGGf3qGuvM4.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/reemkufi/v21/2sDPZGJLip7W2J7v7wQZZE1I0yCmYzzQtuZnIGCV2g.ttf" + }, + { + "family": "Reem Kufi Fun", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChoYj3nCgrvqZzZXq.ttf", + "500": "https://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChoYR3nCgrvqZzZXq.ttf", + "600": "https://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChob92XCgrvqZzZXq.ttf", + "700": "https://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChobE2XCgrvqZzZXq.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/reemkufifun/v7/uK_m4rOFYukkmyUEbF43fIryZEk5qRZ8nrKChoYj3kChpP4.ttf", + "colorCapabilities": [ + "COLRv0" + ] + }, + { + "family": "Reem Kufi Ink", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/reemkufiink/v9/oPWJ_kJmmu8hCvB9iFumxZSnRj5dQnSX1ko.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/reemkufiink/v9/oPWJ_kJmmu8hCvB9iFumxZSndj9XRg.ttf", + "colorCapabilities": [ + "COLRv1", + "SVG" + ] + }, + { + "family": "Reenie Beanie", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/reeniebeanie/v20/z7NSdR76eDkaJKZJFkkjuvWxbP2_qoOgf_w.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/reeniebeanie/v20/z7NSdR76eDkaJKZJFkkjuvWxXPy1rg.ttf" + }, + { + "family": "Reggae One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/reggaeone/v17/7r3DqX5msMIkeuwJwOJt_a5L5uH-mts.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/reggaeone/v17/7r3DqX5msMIkeuwJwOJtza9B4g.ttf" + }, + { + "family": "Rethink Sans", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rethinksans/v5/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45DmqkmFRCE7mma-aua4.ttf", + "500": "https://fonts.gstatic.com/s/rethinksans/v5/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45DmqklNRCE7mma-aua4.ttf", + "600": "https://fonts.gstatic.com/s/rethinksans/v5/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45Dmqkr9WCE7mma-aua4.ttf", + "700": "https://fonts.gstatic.com/s/rethinksans/v5/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45DmqkoZWCE7mma-aua4.ttf", + "800": "https://fonts.gstatic.com/s/rethinksans/v5/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45DmqkuFWCE7mma-aua4.ttf", + "italic": "https://fonts.gstatic.com/s/rethinksans/v5/AMOFz4SDuXOMCPfdoglY9JQEUUK5wyyTfpeth6kS4A3snY2fqa7iVQ.ttf", + "500italic": "https://fonts.gstatic.com/s/rethinksans/v5/AMOFz4SDuXOMCPfdoglY9JQEUUK5wyyTfpeth6kS0g3snY2fqa7iVQ.ttf", + "600italic": "https://fonts.gstatic.com/s/rethinksans/v5/AMOFz4SDuXOMCPfdoglY9JQEUUK5wyyTfpeth6kSPgrsnY2fqa7iVQ.ttf", + "700italic": "https://fonts.gstatic.com/s/rethinksans/v5/AMOFz4SDuXOMCPfdoglY9JQEUUK5wyyTfpeth6kSBwrsnY2fqa7iVQ.ttf", + "800italic": "https://fonts.gstatic.com/s/rethinksans/v5/AMOFz4SDuXOMCPfdoglY9JQEUUK5wyyTfpeth6kSYArsnY2fqa7iVQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rethinksans/v5/AMODz4SDuXOMCPfdoglY9JQuWHBGG0X45DmqkmFROE_snQ.ttf" + }, + { + "family": "Revalia", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/revalia/v22/WwkexPimBE2-4ZPEeVruNIgJSNM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/revalia/v22/WwkexPimBE2-4ZPESVvkMA.ttf" + }, + { + "family": "Rhodium Libre", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/rhodiumlibre/v19/1q2AY5adA0tn_ukeHcQHqpx6pETLeo2gm2U.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rhodiumlibre/v19/1q2AY5adA0tn_ukeHcQHqpx6lEXBfg.ttf" + }, + { + "family": "Ribeye", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ribeye/v25/L0x8DFMxk1MP9R3RvPCmRSlUig.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ribeye/v25/L0x8DFMxk1MP9R3hvfqi.ttf" + }, + { + "family": "Ribeye Marrow", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ribeyemarrow/v24/GFDsWApshnqMRO2JdtRZ2d0vEAwTVWgKdtw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ribeyemarrow/v24/GFDsWApshnqMRO2JdtRZ2d0vIA0ZUQ.ttf" + }, + { + "family": "Righteous", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/righteous/v17/1cXxaUPXBpj2rGoU7C9mj3uEicG01A.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/righteous/v17/1cXxaUPXBpj2rGoU7C9WjnGA.ttf" + }, + { + "family": "Risque", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/risque/v22/VdGfAZUfHosahXxoCUYVBJ-T5g.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/risque/v22/VdGfAZUfHosahXxYCEwR.ttf" + }, + { + "family": "Road Rage", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/roadrage/v7/6NUU8F2fKAOBKjjr4ekvtMYAwdRZfw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/roadrage/v7/6NUU8F2fKAOBKjjr4ekftcwE.ttf" + }, + { + "family": "Roboto", + "variants": [ + "100", + "100italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "700", + "700italic", + "900", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v32", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1MmgWxPKTM1K9nz.ttf", + "100italic": "https://fonts.gstatic.com/s/roboto/v32/KFOiCnqEu92Fr1Mu51QrIzcXLsnzjYk.ttf", + "300": "https://fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmSU5vAx05IsDqlA.ttf", + "300italic": "https://fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TjARc9AMX6lJBP.ttf", + "regular": "https://fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Me5WZLCzYlKw.ttf", + "italic": "https://fonts.gstatic.com/s/roboto/v32/KFOkCnqEu92Fr1Mu52xPKTM1K9nz.ttf", + "500": "https://fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmEU9vAx05IsDqlA.ttf", + "500italic": "https://fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51S7ABc9AMX6lJBP.ttf", + "700": "https://fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmWUlvAx05IsDqlA.ttf", + "700italic": "https://fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TzBhc9AMX6lJBP.ttf", + "900": "https://fonts.gstatic.com/s/roboto/v32/KFOlCnqEu92Fr1MmYUtvAx05IsDqlA.ttf", + "900italic": "https://fonts.gstatic.com/s/roboto/v32/KFOjCnqEu92Fr1Mu51TLBBc9AMX6lJBP.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/roboto/v32/KFOmCnqEu92Fr1Mu5GxP.ttf" + }, + { + "family": "Roboto Condensed", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyo_BJ731BKMSK.ttf", + "200": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyUyovBJ731BKMSK.ttf", + "300": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyXsovBJ731BKMSK.ttf", + "regular": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyovBJ731BKMSK.ttf", + "500": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWAovBJ731BKMSK.ttf", + "600": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyVspfBJ731BKMSK.ttf", + "700": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyVVpfBJ731BKMSK.ttf", + "800": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyUypfBJ731BKMSK.ttf", + "900": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyUbpfBJ731BKMSK.ttf", + "100italic": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64RgL5XljLdSK37o.ttf", + "200italic": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64ZgK5XljLdSK37o.ttf", + "300italic": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64UYK5XljLdSK37o.ttf", + "italic": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64RgK5XljLdSK37o.ttf", + "500italic": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64SoK5XljLdSK37o.ttf", + "600italic": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64cYN5XljLdSK37o.ttf", + "700italic": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64f8N5XljLdSK37o.ttf", + "800italic": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64ZgN5XljLdSK37o.ttf", + "900italic": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64bEN5XljLdSK37o.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/robotocondensed/v27/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyosBI5Xk.ttf" + }, + { + "family": "Roboto Flex", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/robotoflex/v26/NaNnepOXO_NexZs0b5QrzlOHb8wCikXpYqmZsWI-__OGbt8jZktqc2V3Zs0KvDLdBP8SBZtOs2IifRuUZQMsPJtUsR4DEK6cULNeUx9XgTnH37Ha_FIAp4Fm0PP1hw45DntW2x0wZGzhPmr1YNMYKYn9_1IQXGwJAiUJVUMdN5YUW4O8HtSoXjC1z3QSabshNFVe3e0O5j3ZjrZCu23Qd4G0EBysQNK-QKavMl1cKq3tHXtXi8mzLjaAQbGunCNCKMY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/robotoflex/v26/NaNnepOXO_NexZs0b5QrzlOHb8wCikXpYqmZsWI-__OGbt8jZktqc2V3Zs0KvDLdBP8SBZtOs2IifRuUZQMsPJtUsR4DEK6cULNeUx9XgTnH37Ha_FIAp4Fm0PP1hw45DntW2x0wZGzhPmr1YNMYKYn9_1IQXGwJAiUJVUMdN5YUW4O8HtSoXjC1z3QSabshNFVe3e0O5j3ZjrZCu23Qd4G0EBysQNK-QKavMl1cKq3tHXtXi8mzLjaAcbCkmA.ttf" + }, + { + "family": "Roboto Mono", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/robotomono/v23/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vuPQ--5Ip2sSQ.ttf", + "200": "https://fonts.gstatic.com/s/robotomono/v23/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_XvqPQ--5Ip2sSQ.ttf", + "300": "https://fonts.gstatic.com/s/robotomono/v23/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_gPqPQ--5Ip2sSQ.ttf", + "regular": "https://fonts.gstatic.com/s/robotomono/v23/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vqPQ--5Ip2sSQ.ttf", + "500": "https://fonts.gstatic.com/s/robotomono/v23/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_7PqPQ--5Ip2sSQ.ttf", + "600": "https://fonts.gstatic.com/s/robotomono/v23/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_AP2PQ--5Ip2sSQ.ttf", + "700": "https://fonts.gstatic.com/s/robotomono/v23/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_Of2PQ--5Ip2sSQ.ttf", + "100italic": "https://fonts.gstatic.com/s/robotomono/v23/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAeW9AJi8SZwt.ttf", + "200italic": "https://fonts.gstatic.com/s/robotomono/v23/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrnnAOW9AJi8SZwt.ttf", + "300italic": "https://fonts.gstatic.com/s/robotomono/v23/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrk5AOW9AJi8SZwt.ttf", + "italic": "https://fonts.gstatic.com/s/robotomono/v23/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAOW9AJi8SZwt.ttf", + "500italic": "https://fonts.gstatic.com/s/robotomono/v23/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlVAOW9AJi8SZwt.ttf", + "600italic": "https://fonts.gstatic.com/s/robotomono/v23/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrm5B-W9AJi8SZwt.ttf", + "700italic": "https://fonts.gstatic.com/s/robotomono/v23/L0xoDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrmAB-W9AJi8SZwt.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/robotomono/v23/L0xuDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vq_QuW9.ttf" + }, + { + "family": "Roboto Serif", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-30", + "files": { + "100": "https://fonts.gstatic.com/s/robotoserif/v15/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEliosp6d2Af5fR4k.ttf", + "200": "https://fonts.gstatic.com/s/robotoserif/v15/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElqotp6d2Af5fR4k.ttf", + "300": "https://fonts.gstatic.com/s/robotoserif/v15/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElnQtp6d2Af5fR4k.ttf", + "regular": "https://fonts.gstatic.com/s/robotoserif/v15/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEliotp6d2Af5fR4k.ttf", + "500": "https://fonts.gstatic.com/s/robotoserif/v15/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElhgtp6d2Af5fR4k.ttf", + "600": "https://fonts.gstatic.com/s/robotoserif/v15/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElvQqp6d2Af5fR4k.ttf", + "700": "https://fonts.gstatic.com/s/robotoserif/v15/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEls0qp6d2Af5fR4k.ttf", + "800": "https://fonts.gstatic.com/s/robotoserif/v15/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcElqoqp6d2Af5fR4k.ttf", + "900": "https://fonts.gstatic.com/s/robotoserif/v15/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEloMqp6d2Af5fR4k.ttf", + "100italic": "https://fonts.gstatic.com/s/robotoserif/v15/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuT-V8BdxaV4nUFw.ttf", + "200italic": "https://fonts.gstatic.com/s/robotoserif/v15/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Juz-R8BdxaV4nUFw.ttf", + "300italic": "https://fonts.gstatic.com/s/robotoserif/v15/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuEeR8BdxaV4nUFw.ttf", + "italic": "https://fonts.gstatic.com/s/robotoserif/v15/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuT-R8BdxaV4nUFw.ttf", + "500italic": "https://fonts.gstatic.com/s/robotoserif/v15/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JufeR8BdxaV4nUFw.ttf", + "600italic": "https://fonts.gstatic.com/s/robotoserif/v15/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JukeN8BdxaV4nUFw.ttf", + "700italic": "https://fonts.gstatic.com/s/robotoserif/v15/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-JuqON8BdxaV4nUFw.ttf", + "800italic": "https://fonts.gstatic.com/s/robotoserif/v15/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Juz-N8BdxaV4nUFw.ttf", + "900italic": "https://fonts.gstatic.com/s/robotoserif/v15/R71XjywflP6FLr3gZx7K8UyEVQnyR1E7VN-f51xYuGCQepOvB0KLc2v0wKKB0Q4MSZxyqf2CgAchbDJ69BcVZxkDg-Ju5uN8BdxaV4nUFw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/robotoserif/v15/R71RjywflP6FLr3gZx7K8UyuXDs9zVwDmXCb8lxYgmuii32UGoVldX6UgfjL4-3sMM_kB_qXSEXTJQCFLH5-_bcEliotl6Z8BQ.ttf" + }, + { + "family": "Roboto Slab", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v34", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/robotoslab/v34/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjojIWWaG5iddG-1A.ttf", + "200": "https://fonts.gstatic.com/s/robotoslab/v34/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoDISWaG5iddG-1A.ttf", + "300": "https://fonts.gstatic.com/s/robotoslab/v34/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjo0oSWaG5iddG-1A.ttf", + "regular": "https://fonts.gstatic.com/s/robotoslab/v34/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjojISWaG5iddG-1A.ttf", + "500": "https://fonts.gstatic.com/s/robotoslab/v34/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjovoSWaG5iddG-1A.ttf", + "600": "https://fonts.gstatic.com/s/robotoslab/v34/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoUoOWaG5iddG-1A.ttf", + "700": "https://fonts.gstatic.com/s/robotoslab/v34/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoa4OWaG5iddG-1A.ttf", + "800": "https://fonts.gstatic.com/s/robotoslab/v34/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoDIOWaG5iddG-1A.ttf", + "900": "https://fonts.gstatic.com/s/robotoslab/v34/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjoJYOWaG5iddG-1A.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/robotoslab/v34/BngbUXZYTXPIvIBgJJSb6s3BzlRRfKOFbvjojISmaWRm.ttf" + }, + { + "family": "Rochester", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rochester/v22/6ae-4KCqVa4Zy6Fif-Uy31vWNTMwoQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rochester/v22/6ae-4KCqVa4Zy6Fif-UC3lHS.ttf" + }, + { + "family": "Rock 3D", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin" + ], + "version": "v11", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/rock3d/v11/yYLp0hrL0PCo651513SnwRnQyNI.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rock3d/v11/yYLp0hrL0PCo651553WtxQ.ttf" + }, + { + "family": "Rock Salt", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rocksalt/v22/MwQ0bhv11fWD6QsAVOZbsEk7hbBWrA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rocksalt/v22/MwQ0bhv11fWD6QsAVOZrsUM_.ttf" + }, + { + "family": "RocknRoll One", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rocknrollone/v14/kmK7ZqspGAfCeUiW6FFlmEC9guVhs7tfUxc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rocknrollone/v14/kmK7ZqspGAfCeUiW6FFlmEC9suRrtw.ttf" + }, + { + "family": "Rokkitt", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v36", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/rokkitt/v36/qFdb35qfgYFjGy5hukqqhw5XeRgdi1rydpDLE76HvN6n.ttf", + "200": "https://fonts.gstatic.com/s/rokkitt/v36/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pyd5DLE76HvN6n.ttf", + "300": "https://fonts.gstatic.com/s/rokkitt/v36/qFdb35qfgYFjGy5hukqqhw5XeRgdi1qsd5DLE76HvN6n.ttf", + "regular": "https://fonts.gstatic.com/s/rokkitt/v36/qFdb35qfgYFjGy5hukqqhw5XeRgdi1ryd5DLE76HvN6n.ttf", + "500": "https://fonts.gstatic.com/s/rokkitt/v36/qFdb35qfgYFjGy5hukqqhw5XeRgdi1rAd5DLE76HvN6n.ttf", + "600": "https://fonts.gstatic.com/s/rokkitt/v36/qFdb35qfgYFjGy5hukqqhw5XeRgdi1oscJDLE76HvN6n.ttf", + "700": "https://fonts.gstatic.com/s/rokkitt/v36/qFdb35qfgYFjGy5hukqqhw5XeRgdi1oVcJDLE76HvN6n.ttf", + "800": "https://fonts.gstatic.com/s/rokkitt/v36/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pycJDLE76HvN6n.ttf", + "900": "https://fonts.gstatic.com/s/rokkitt/v36/qFdb35qfgYFjGy5hukqqhw5XeRgdi1pbcJDLE76HvN6n.ttf", + "100italic": "https://fonts.gstatic.com/s/rokkitt/v36/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NHiJGbqluc6nu9E.ttf", + "200italic": "https://fonts.gstatic.com/s/rokkitt/v36/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NPiIGbqluc6nu9E.ttf", + "300italic": "https://fonts.gstatic.com/s/rokkitt/v36/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NCaIGbqluc6nu9E.ttf", + "italic": "https://fonts.gstatic.com/s/rokkitt/v36/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NHiIGbqluc6nu9E.ttf", + "500italic": "https://fonts.gstatic.com/s/rokkitt/v36/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NEqIGbqluc6nu9E.ttf", + "600italic": "https://fonts.gstatic.com/s/rokkitt/v36/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NKaPGbqluc6nu9E.ttf", + "700italic": "https://fonts.gstatic.com/s/rokkitt/v36/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NJ-PGbqluc6nu9E.ttf", + "800italic": "https://fonts.gstatic.com/s/rokkitt/v36/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NPiPGbqluc6nu9E.ttf", + "900italic": "https://fonts.gstatic.com/s/rokkitt/v36/qFdV35qfgYFjGy5hkEOYeNY-EoKzjE86NNGPGbqluc6nu9E.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rokkitt/v36/qFdb35qfgYFjGy5hukqqhw5XeRgdi1ryd6DKGbo.ttf" + }, + { + "family": "Romanesco", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/romanesco/v21/w8gYH2ozQOY7_r_J7mSn3HwLqOqSBg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/romanesco/v21/w8gYH2ozQOY7_r_J7mSX3XYP.ttf" + }, + { + "family": "Ropa Sans", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ropasans/v15/EYqxmaNOzLlWtsZSScyKWjloU5KP2g.ttf", + "italic": "https://fonts.gstatic.com/s/ropasans/v15/EYq3maNOzLlWtsZSScy6WDNscZef2mNE.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ropasans/v15/EYqxmaNOzLlWtsZSScy6WzNs.ttf" + }, + { + "family": "Rosario", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v31", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM69GCWczd-YnOzUD.ttf", + "regular": "https://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM68YCWczd-YnOzUD.ttf", + "500": "https://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM68qCWczd-YnOzUD.ttf", + "600": "https://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM6_GDmczd-YnOzUD.ttf", + "700": "https://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM6__Dmczd-YnOzUD.ttf", + "300italic": "https://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQStFwfeIFPiUDn08.ttf", + "italic": "https://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSo9wfeIFPiUDn08.ttf", + "500italic": "https://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSr1wfeIFPiUDn08.ttf", + "600italic": "https://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSlF3feIFPiUDn08.ttf", + "700italic": "https://fonts.gstatic.com/s/rosario/v31/xfug0WDhWW_fOEoY2Fbnww42bCJhNLrQSmh3feIFPiUDn08.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rosario/v31/xfuu0WDhWW_fOEoY8l_VPNZfB7jPM68YCVcyfeI.ttf" + }, + { + "family": "Rosarivo", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rosarivo/v22/PlI-Fl2lO6N9f8HaNAeC2nhMnNy5.ttf", + "italic": "https://fonts.gstatic.com/s/rosarivo/v22/PlI4Fl2lO6N9f8HaNDeA0Hxumcy5ZX8.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rosarivo/v22/PlI-Fl2lO6N9f8HaNDeD0Hw.ttf" + }, + { + "family": "Rouge Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rougescript/v18/LYjFdGbiklMoCIQOw1Ep3S4PVPXbUJWq9g.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rougescript/v18/LYjFdGbiklMoCIQOw1Ep3S4_Vf_f.ttf" + }, + { + "family": "Rowdies", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/rowdies/v17/ptRMTieMYPNBAK219hth5O7yKQNute8.ttf", + "regular": "https://fonts.gstatic.com/s/rowdies/v17/ptRJTieMYPNBAK21zrdJwObZNQo.ttf", + "700": "https://fonts.gstatic.com/s/rowdies/v17/ptRMTieMYPNBAK219gtm5O7yKQNute8.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rowdies/v17/ptRJTieMYPNBAK21_rZDxA.ttf" + }, + { + "family": "Rozha One", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rozhaone/v15/AlZy_zVFtYP12Zncg2khdXf4XB0Tow.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rozhaone/v15/AlZy_zVFtYP12Zncg2kRdH38.ttf" + }, + { + "family": "Rubik", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "arabic", + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-WYi1UE80V4bVkA.ttf", + "regular": "https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-B4i1UE80V4bVkA.ttf", + "500": "https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-NYi1UE80V4bVkA.ttf", + "600": "https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-2Y-1UE80V4bVkA.ttf", + "700": "https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-4I-1UE80V4bVkA.ttf", + "800": "https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-h4-1UE80V4bVkA.ttf", + "900": "https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-ro-1UE80V4bVkA.ttf", + "300italic": "https://fonts.gstatic.com/s/rubik/v28/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8sDE0UwdYPFkJ1O.ttf", + "italic": "https://fonts.gstatic.com/s/rubik/v28/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8tdE0UwdYPFkJ1O.ttf", + "500italic": "https://fonts.gstatic.com/s/rubik/v28/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8tvE0UwdYPFkJ1O.ttf", + "600italic": "https://fonts.gstatic.com/s/rubik/v28/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8uDFEUwdYPFkJ1O.ttf", + "700italic": "https://fonts.gstatic.com/s/rubik/v28/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8u6FEUwdYPFkJ1O.ttf", + "800italic": "https://fonts.gstatic.com/s/rubik/v28/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8vdFEUwdYPFkJ1O.ttf", + "900italic": "https://fonts.gstatic.com/s/rubik/v28/iJWbBXyIfDnIV7nEt3KSJbVDV49rz8v0FEUwdYPFkJ1O.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-B4iFUUUw.ttf" + }, + { + "family": "Rubik 80s Fade", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubik80sfade/v2/U9MF6dW37nLSmnwZXyoV-uPXUhHwkbL8IHcK.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubik80sfade/v2/U9MF6dW37nLSmnwZXyoV-uPXUiHxm7Y.ttf" + }, + { + "family": "Rubik Beastly", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikbeastly/v10/0QImMXRd5oOmSC2ZQ7o9653X07z8_ApHqqk.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikbeastly/v10/0QImMXRd5oOmSC2ZQ7o9653X4732-A.ttf" + }, + { + "family": "Rubik Broken Fax", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikbrokenfax/v1/NGSvv4rXG042O-GzH9sg1cUgl8w8YW-WdmGi300.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikbrokenfax/v1/NGSvv4rXG042O-GzH9sg1cUgl8w8UW6ccg.ttf" + }, + { + "family": "Rubik Bubbles", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikbubbles/v3/JIA1UVdwbHFJtwA7Us1BPFbRNTENfDxyRXI.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikbubbles/v3/JIA1UVdwbHFJtwA7Us1BPFbRBTAHeA.ttf" + }, + { + "family": "Rubik Burned", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikburned/v1/Jqzk5TmOVOqQHihKqPpscqniHQuaCY5ZSg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikburned/v1/Jqzk5TmOVOqQHihKqPpscqnSHAGe.ttf" + }, + { + "family": "Rubik Dirt", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikdirt/v2/DtVmJxC7WLEj1uIXEWAdulwm6gDXvwE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikdirt/v2/DtVmJxC7WLEj1uIXEWAdil0s7g.ttf" + }, + { + "family": "Rubik Distressed", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikdistressed/v1/GFDxWBdsmnqAVqjtUsZf2dcrQ2ldcWAhatVBaGM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikdistressed/v1/GFDxWBdsmnqAVqjtUsZf2dcrQ2ldQWErbg.ttf" + }, + { + "family": "Rubik Doodle Shadow", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikdoodleshadow/v1/rP2bp3im_k8G_wTVdvvMdHqmXTR3lEaLyKuZ3KOY7Gw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikdoodleshadow/v1/rP2bp3im_k8G_wTVdvvMdHqmXTR3lEaL-KqT2A.ttf" + }, + { + "family": "Rubik Doodle Triangles", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikdoodletriangles/v1/esDA301BLOmMKxKspb3g-domRuLPeaSn2bTzdLi_slZxgWE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikdoodletriangles/v1/esDA301BLOmMKxKspb3g-domRuLPeaSn2bTzRLm1tg.ttf" + }, + { + "family": "Rubik Gemstones", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikgemstones/v1/zrf90HrL0-_8Xb4DFM2rUkWbOVrOiCnGqi1GMw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikgemstones/v1/zrf90HrL0-_8Xb4DFM2rUkWbOVr-iSPC.ttf" + }, + { + "family": "Rubik Glitch", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikglitch/v2/qkBSXv8b_srFRYQVYrDKh9ZvmC7HONiSFQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikglitch/v2/qkBSXv8b_srFRYQVYrDKh9ZfmSTD.ttf" + }, + { + "family": "Rubik Glitch Pop", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikglitchpop/v1/tDbX2pGHhFcM0gB3hN2elZLa3G-MOwStSUrV_BE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikglitchpop/v1/tDbX2pGHhFcM0gB3hN2elZLa3G-MCwWnTQ.ttf" + }, + { + "family": "Rubik Iso", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikiso/v2/x3dickHUfr-S4VAI4sABfPACvy_1BA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikiso/v2/x3dickHUfr-S4VAI4sAxffoG.ttf" + }, + { + "family": "Rubik Lines", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubiklines/v1/_gP81R3vsjYzVW2Y6xFF-GSxYPp7oSNy.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubiklines/v1/_gP81R3vsjYzVW2Y6xFF-FSwav4.ttf" + }, + { + "family": "Rubik Maps", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikmaps/v1/Gw6_wcjl80TZK9XxtbbejSYUChRqp9k.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikmaps/v1/Gw6_wcjl80TZK9XxtbbevSceDg.ttf" + }, + { + "family": "Rubik Marker Hatch", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikmarkerhatch/v1/QldTNSFQsh0B_bFXXWv6LAt-jswapJHQDL4iw0H6zw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikmarkerhatch/v1/QldTNSFQsh0B_bFXXWv6LAt-jswapJHgDbQm.ttf" + }, + { + "family": "Rubik Maze", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikmaze/v2/xMQRuF9ZVa2ftiJEavXSAX7inS-bxV4.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikmaze/v2/xMQRuF9ZVa2ftiJEavXSMX_omQ.ttf" + }, + { + "family": "Rubik Microbe", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikmicrobe/v2/UqyWK8oPP3hjw6ANS9rM3PsZcs8aaKgiauE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikmicrobe/v2/UqyWK8oPP3hjw6ANS9rM3PsZQs4QbA.ttf" + }, + { + "family": "Rubik Mono One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikmonoone/v18/UqyJK8kPP3hjw6ANTdfRk9YSN-8wRqQrc_j9.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikmonoone/v18/UqyJK8kPP3hjw6ANTdfRk9YSN98xTKA.ttf" + }, + { + "family": "Rubik Moonrocks", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikmoonrocks/v5/845ANMAmAI2VUZMLu_W0M7HqlDHnXcD7JGy1Sw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikmoonrocks/v5/845ANMAmAI2VUZMLu_W0M7HqlDHXXMr_.ttf" + }, + { + "family": "Rubik Pixels", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikpixels/v2/SlGXmQOaupkIeSx4CEpB7AdSaBYRagrQrA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikpixels/v2/SlGXmQOaupkIeSx4CEpB7AdiaRwV.ttf" + }, + { + "family": "Rubik Puddles", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikpuddles/v2/1Ptog8bYX_qGnkLkrU5MJsQcJfC0wVMT-aE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikpuddles/v2/1Ptog8bYX_qGnkLkrU5MJsQcFfG-xQ.ttf" + }, + { + "family": "Rubik Scribble", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikscribble/v1/snfzs0Cp48d67SuHQOpjXLsQpbqbSjORSo9W.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikscribble/v1/snfzs0Cp48d67SuHQOpjXLsQpYqaQDc.ttf" + }, + { + "family": "Rubik Spray Paint", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikspraypaint/v1/WnzhHBAoeBPUDTB4EWR82y6EXWPH-Ro-QoaBZQxP.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikspraypaint/v1/WnzhHBAoeBPUDTB4EWR82y6EXWPH-So_SII.ttf" + }, + { + "family": "Rubik Storm", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikstorm/v1/eLGYP-_uPgO5Ag7ju9JaouL9T2Xh9NQk.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikstorm/v1/eLGYP-_uPgO5Ag7ju9JaotL8RWE.ttf" + }, + { + "family": "Rubik Vinyl", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikvinyl/v1/iJWABXKIfDnIV4mQ5BfjvUXexox2ztOU.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikvinyl/v1/iJWABXKIfDnIV4mQ5BfjvXXfzIg.ttf" + }, + { + "family": "Rubik Wet Paint", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "hebrew", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rubikwetpaint/v2/HTx0L20uMDGHgdULcpTF3Oe4d_-F-zz313DuvQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rubikwetpaint/v2/HTx0L20uMDGHgdULcpTF3Oe4d_-1-jbz.ttf" + }, + { + "family": "Ruda", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ruda/v28/k3kKo8YQJOpFgHQ1mQ5VkEbUKaJFsi_-2KiSGg-H.ttf", + "500": "https://fonts.gstatic.com/s/ruda/v28/k3kKo8YQJOpFgHQ1mQ5VkEbUKaJ3si_-2KiSGg-H.ttf", + "600": "https://fonts.gstatic.com/s/ruda/v28/k3kKo8YQJOpFgHQ1mQ5VkEbUKaKbtS_-2KiSGg-H.ttf", + "700": "https://fonts.gstatic.com/s/ruda/v28/k3kKo8YQJOpFgHQ1mQ5VkEbUKaKitS_-2KiSGg-H.ttf", + "800": "https://fonts.gstatic.com/s/ruda/v28/k3kKo8YQJOpFgHQ1mQ5VkEbUKaLFtS_-2KiSGg-H.ttf", + "900": "https://fonts.gstatic.com/s/ruda/v28/k3kKo8YQJOpFgHQ1mQ5VkEbUKaLstS_-2KiSGg-H.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ruda/v28/k3kKo8YQJOpFgHQ1mQ5VkEbUKaJFsh__0qw.ttf" + }, + { + "family": "Rufina", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rufina/v15/Yq6V-LyURyLy-aKyoxRktOdClg.ttf", + "700": "https://fonts.gstatic.com/s/rufina/v15/Yq6W-LyURyLy-aKKHztAvMxenxE0SA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rufina/v15/Yq6V-LyURyLy-aKCoh5g.ttf" + }, + { + "family": "Ruge Boogie", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rugeboogie/v28/JIA3UVFwbHRF_GIWSMhKNROiPzUveSxy.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rugeboogie/v28/JIA3UVFwbHRF_GIWSMhKNSOjNTE.ttf" + }, + { + "family": "Ruluko", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ruluko/v21/xMQVuFNZVaODtm0pC6WzKX_QmA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ruluko/v21/xMQVuFNZVaODtm0ZCq-3.ttf" + }, + { + "family": "Rum Raisin", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rumraisin/v22/nwpRtKu3Ih8D5avB4h2uJ3-IywA7eMM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rumraisin/v22/nwpRtKu3Ih8D5avB4h2uF36Czw.ttf" + }, + { + "family": "Ruslan Display", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ruslandisplay/v26/Gw6jwczl81XcIZuckK_e3UpfdzxrldyFvm1n.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ruslandisplay/v26/Gw6jwczl81XcIZuckK_e3Upfdwxqn9g.ttf" + }, + { + "family": "Russo One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/russoone/v16/Z9XUDmZRWg6M1LvRYsH-yMOInrib9Q.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/russoone/v16/Z9XUDmZRWg6M1LvRYsHOycmM.ttf" + }, + { + "family": "Ruthie", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ruthie/v26/gokvH63sGkdqXuU9lD53Q2u_mQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ruthie/v26/gokvH63sGkdqXuUNlTRz.ttf" + }, + { + "family": "Ruwudu", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ruwudu/v4/syky-y1tj6UzRKfNlQCT9tPdpw.ttf", + "500": "https://fonts.gstatic.com/s/ruwudu/v4/sykx-y1tj6UzRKf1YSm3_vjBrlSILg.ttf", + "600": "https://fonts.gstatic.com/s/ruwudu/v4/sykx-y1tj6UzRKf1TS63_vjBrlSILg.ttf", + "700": "https://fonts.gstatic.com/s/ruwudu/v4/sykx-y1tj6UzRKf1KS-3_vjBrlSILg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ruwudu/v4/syky-y1tj6UzRKf9lAqX.ttf" + }, + { + "family": "Rye", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/rye/v15/r05XGLJT86YDFpTsXOqx4w.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/rye/v15/r05XGLJT86YzF57o.ttf" + }, + { + "family": "STIX Two Text", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/stixtwotext/v12/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5Yihg2SOYWxFMN1WD.ttf", + "500": "https://fonts.gstatic.com/s/stixtwotext/v12/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5YihS2SOYWxFMN1WD.ttf", + "600": "https://fonts.gstatic.com/s/stixtwotext/v12/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5Yii-3iOYWxFMN1WD.ttf", + "700": "https://fonts.gstatic.com/s/stixtwotext/v12/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5YiiH3iOYWxFMN1WD.ttf", + "italic": "https://fonts.gstatic.com/s/stixtwotext/v12/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omsvbURVuMkWDmSo.ttf", + "500italic": "https://fonts.gstatic.com/s/stixtwotext/v12/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omvnbURVuMkWDmSo.ttf", + "600italic": "https://fonts.gstatic.com/s/stixtwotext/v12/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omhXcURVuMkWDmSo.ttf", + "700italic": "https://fonts.gstatic.com/s/stixtwotext/v12/YA9Er02F12Xkf5whdwKf11l0p7uWhf8lJUzXZT2omizcURVuMkWDmSo.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/stixtwotext/v12/YA9Gr02F12Xkf5whdwKf11l0jbKkeidMTtZ5Yihg2ROZURU.ttf" + }, + { + "family": "SUSE", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-08-28", + "files": { + "100": "https://fonts.gstatic.com/s/suse/v1/MwQsbhb078Wt81NpzELmC2QqjbGG71q9ZnJSZtQG.ttf", + "200": "https://fonts.gstatic.com/s/suse/v1/MwQsbhb078Wt81NpzELmC2QqjbEG7lq9ZnJSZtQG.ttf", + "300": "https://fonts.gstatic.com/s/suse/v1/MwQsbhb078Wt81NpzELmC2QqjbHY7lq9ZnJSZtQG.ttf", + "regular": "https://fonts.gstatic.com/s/suse/v1/MwQsbhb078Wt81NpzELmC2QqjbGG7lq9ZnJSZtQG.ttf", + "500": "https://fonts.gstatic.com/s/suse/v1/MwQsbhb078Wt81NpzELmC2QqjbG07lq9ZnJSZtQG.ttf", + "600": "https://fonts.gstatic.com/s/suse/v1/MwQsbhb078Wt81NpzELmC2QqjbFY6Vq9ZnJSZtQG.ttf", + "700": "https://fonts.gstatic.com/s/suse/v1/MwQsbhb078Wt81NpzELmC2QqjbFh6Vq9ZnJSZtQG.ttf", + "800": "https://fonts.gstatic.com/s/suse/v1/MwQsbhb078Wt81NpzELmC2QqjbEG6Vq9ZnJSZtQG.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/suse/v1/MwQsbhb078Wt81NpzELmC2QqjbGG7mq8bHY.ttf" + }, + { + "family": "Sacramento", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sacramento/v15/buEzpo6gcdjy0EiZMBUG0CoV_NxLeiw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sacramento/v15/buEzpo6gcdjy0EiZMBUG4Csf-A.ttf" + }, + { + "family": "Sahitya", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sahitya/v17/6qLAKZkOuhnuqlJAaScFPywEDnI.ttf", + "700": "https://fonts.gstatic.com/s/sahitya/v17/6qLFKZkOuhnuqlJAUZsqGyQvEnvSexI.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sahitya/v17/6qLAKZkOuhnuqlJAWSYPOw.ttf" + }, + { + "family": "Sail", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sail/v16/DPEjYwiBxwYJFBTDADYAbvw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sail/v16/DPEjYwiBxwYJJBXJBA.ttf" + }, + { + "family": "Saira", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/saira/v20/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA71rDosg7lwYmUVY.ttf", + "200": "https://fonts.gstatic.com/s/saira/v20/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA79rCosg7lwYmUVY.ttf", + "300": "https://fonts.gstatic.com/s/saira/v20/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA7wTCosg7lwYmUVY.ttf", + "regular": "https://fonts.gstatic.com/s/saira/v20/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA71rCosg7lwYmUVY.ttf", + "500": "https://fonts.gstatic.com/s/saira/v20/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA72jCosg7lwYmUVY.ttf", + "600": "https://fonts.gstatic.com/s/saira/v20/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA74TFosg7lwYmUVY.ttf", + "700": "https://fonts.gstatic.com/s/saira/v20/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA773Fosg7lwYmUVY.ttf", + "800": "https://fonts.gstatic.com/s/saira/v20/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA79rFosg7lwYmUVY.ttf", + "900": "https://fonts.gstatic.com/s/saira/v20/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA7_PFosg7lwYmUVY.ttf", + "100italic": "https://fonts.gstatic.com/s/saira/v20/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBSooxkyQjQVYmxA.ttf", + "200italic": "https://fonts.gstatic.com/s/saira/v20/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKByosxkyQjQVYmxA.ttf", + "300italic": "https://fonts.gstatic.com/s/saira/v20/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBFIsxkyQjQVYmxA.ttf", + "italic": "https://fonts.gstatic.com/s/saira/v20/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBSosxkyQjQVYmxA.ttf", + "500italic": "https://fonts.gstatic.com/s/saira/v20/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBeIsxkyQjQVYmxA.ttf", + "600italic": "https://fonts.gstatic.com/s/saira/v20/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBlIwxkyQjQVYmxA.ttf", + "700italic": "https://fonts.gstatic.com/s/saira/v20/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKBrYwxkyQjQVYmxA.ttf", + "800italic": "https://fonts.gstatic.com/s/saira/v20/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKByowxkyQjQVYmxA.ttf", + "900italic": "https://fonts.gstatic.com/s/saira/v20/memUYa2wxmKQyNkiV50dulWP7s95AqZTzZHcVdxWI9WH-pKB44wxkyQjQVYmxA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/saira/v20/memWYa2wxmKQyPMrZX79wwYZQMhsyuShhKMjjbU9uXuA71rCkskxkw.ttf" + }, + { + "family": "Saira Condensed", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/sairacondensed/v11/EJRMQgErUN8XuHNEtX81i9TmEkrnwetA2omSrzS8.ttf", + "200": "https://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnbcpg8Keepi2lHw.ttf", + "300": "https://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnCclg8Keepi2lHw.ttf", + "regular": "https://fonts.gstatic.com/s/sairacondensed/v11/EJROQgErUN8XuHNEtX81i9TmEkrfpeFE-IyCrw.ttf", + "500": "https://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnUchg8Keepi2lHw.ttf", + "600": "https://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnfc9g8Keepi2lHw.ttf", + "700": "https://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnGc5g8Keepi2lHw.ttf", + "800": "https://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnBc1g8Keepi2lHw.ttf", + "900": "https://fonts.gstatic.com/s/sairacondensed/v11/EJRLQgErUN8XuHNEtX81i9TmEkrnIcxg8Keepi2lHw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sairacondensed/v11/EJROQgErUN8XuHNEtX81i9TmEkrvpOtA.ttf" + }, + { + "family": "Saira Extra Condensed", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/sairaextracondensed/v13/-nFsOHYr-vcC7h8MklGBkrvmUG9rbpkisrTri0jx9i5ss3a3.ttf", + "200": "https://fonts.gstatic.com/s/sairaextracondensed/v13/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrJ2nR3ABgum-uoQ.ttf", + "300": "https://fonts.gstatic.com/s/sairaextracondensed/v13/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrQ2rR3ABgum-uoQ.ttf", + "regular": "https://fonts.gstatic.com/s/sairaextracondensed/v13/-nFiOHYr-vcC7h8MklGBkrvmUG9rbpkisrTT70L11Ct8sw.ttf", + "500": "https://fonts.gstatic.com/s/sairaextracondensed/v13/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrG2vR3ABgum-uoQ.ttf", + "600": "https://fonts.gstatic.com/s/sairaextracondensed/v13/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrN2zR3ABgum-uoQ.ttf", + "700": "https://fonts.gstatic.com/s/sairaextracondensed/v13/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrU23R3ABgum-uoQ.ttf", + "800": "https://fonts.gstatic.com/s/sairaextracondensed/v13/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTrT27R3ABgum-uoQ.ttf", + "900": "https://fonts.gstatic.com/s/sairaextracondensed/v13/-nFvOHYr-vcC7h8MklGBkrvmUG9rbpkisrTra2_R3ABgum-uoQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sairaextracondensed/v13/-nFiOHYr-vcC7h8MklGBkrvmUG9rbpkisrTj7kjx.ttf" + }, + { + "family": "Saira Semi Condensed", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MN6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXdvaOM8rXT-8V8.ttf", + "200": "https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXfDScMWg3j36Ebz.ttf", + "300": "https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXenSsMWg3j36Ebz.ttf", + "regular": "https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MD6c-2-nnJkHxyCjRcnMHcWVWV1cWRRU8LYuceqGT-.ttf", + "500": "https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXf_S8MWg3j36Ebz.ttf", + "600": "https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXfTTMMWg3j36Ebz.ttf", + "700": "https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXe3TcMWg3j36Ebz.ttf", + "800": "https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXerTsMWg3j36Ebz.ttf", + "900": "https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MM6c-2-nnJkHxyCjRcnMHcWVWV1cWRRXePT8MWg3j36Ebz.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sairasemicondensed/v13/U9MD6c-2-nnJkHxyCjRcnMHcWVWV1cWRRX8KaOM.ttf" + }, + { + "family": "Saira Stencil One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sairastencilone/v16/SLXSc03I6HkvZGJ1GvvipLoYSTEL9AsMawif2YQ2.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sairastencilone/v16/SLXSc03I6HkvZGJ1GvvipLoYSTEL9DsNYQw.ttf" + }, + { + "family": "Salsa", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/salsa/v21/gNMKW3FiRpKj-imY8ncKEZez.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/salsa/v21/gNMKW3FiRpKj-hmZ-HM.ttf" + }, + { + "family": "Sanchez", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sanchez/v15/Ycm2sZJORluHnXbITm5b_BwE1l0.ttf", + "italic": "https://fonts.gstatic.com/s/sanchez/v15/Ycm0sZJORluHnXbIfmxR-D4Bxl3gkw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sanchez/v15/Ycm2sZJORluHnXbIfm9R-A.ttf" + }, + { + "family": "Sancreek", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sancreek/v25/pxiHypAnsdxUm159X7D-XV9NEe-K.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sancreek/v25/pxiHypAnsdxUm159X4D_V1s.ttf" + }, + { + "family": "Sankofa Display", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sankofadisplay/v2/Ktk1ALSRd4LucUDghJ2rTqXOoh33F6mZVY9Y5w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sankofadisplay/v2/Ktk1ALSRd4LucUDghJ2rTqXOoh3HFqOd.ttf" + }, + { + "family": "Sansita", + "variants": [ + "regular", + "italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sansita/v11/QldONTRRphEb_-V7HBm7TXFf3qw.ttf", + "italic": "https://fonts.gstatic.com/s/sansita/v11/QldMNTRRphEb_-V7LBuxSVNazqx2xg.ttf", + "700": "https://fonts.gstatic.com/s/sansita/v11/QldLNTRRphEb_-V7JKWUaXl0wqVv3_g.ttf", + "700italic": "https://fonts.gstatic.com/s/sansita/v11/QldJNTRRphEb_-V7LBuJ9Xx-xodqz_joDQ.ttf", + "800": "https://fonts.gstatic.com/s/sansita/v11/QldLNTRRphEb_-V7JLmXaXl0wqVv3_g.ttf", + "800italic": "https://fonts.gstatic.com/s/sansita/v11/QldJNTRRphEb_-V7LBuJ6X9-xodqz_joDQ.ttf", + "900": "https://fonts.gstatic.com/s/sansita/v11/QldLNTRRphEb_-V7JJ2WaXl0wqVv3_g.ttf", + "900italic": "https://fonts.gstatic.com/s/sansita/v11/QldJNTRRphEb_-V7LBuJzX5-xodqz_joDQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sansita/v11/QldONTRRphEb_-V7LBixSQ.ttf" + }, + { + "family": "Sansita Swashed", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/sansitaswashed/v18/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW-ppbToVehmEa4Q.ttf", + "regular": "https://fonts.gstatic.com/s/sansitaswashed/v18/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW7RpbToVehmEa4Q.ttf", + "500": "https://fonts.gstatic.com/s/sansitaswashed/v18/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW4ZpbToVehmEa4Q.ttf", + "600": "https://fonts.gstatic.com/s/sansitaswashed/v18/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW2pubToVehmEa4Q.ttf", + "700": "https://fonts.gstatic.com/s/sansitaswashed/v18/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW1NubToVehmEa4Q.ttf", + "800": "https://fonts.gstatic.com/s/sansitaswashed/v18/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSWzRubToVehmEa4Q.ttf", + "900": "https://fonts.gstatic.com/s/sansitaswashed/v18/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSWx1ubToVehmEa4Q.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sansitaswashed/v18/BXR8vFfZifTZgFlDDLgNkBydPKTt3pVCeYWqJnZSW7RpXTsffg.ttf" + }, + { + "family": "Sarabun", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/sarabun/v15/DtVhJx26TKEr37c9YHZJmnYI5gnOpg.ttf", + "100italic": "https://fonts.gstatic.com/s/sarabun/v15/DtVnJx26TKEr37c9aBBx_nwMxAzephhN.ttf", + "200": "https://fonts.gstatic.com/s/sarabun/v15/DtVmJx26TKEr37c9YNpoulwm6gDXvwE.ttf", + "200italic": "https://fonts.gstatic.com/s/sarabun/v15/DtVkJx26TKEr37c9aBBxUl0s7iLSrwFUlw.ttf", + "300": "https://fonts.gstatic.com/s/sarabun/v15/DtVmJx26TKEr37c9YL5rulwm6gDXvwE.ttf", + "300italic": "https://fonts.gstatic.com/s/sarabun/v15/DtVkJx26TKEr37c9aBBxNl4s7iLSrwFUlw.ttf", + "regular": "https://fonts.gstatic.com/s/sarabun/v15/DtVjJx26TKEr37c9WBJDnlQN9gk.ttf", + "italic": "https://fonts.gstatic.com/s/sarabun/v15/DtVhJx26TKEr37c9aBBJmnYI5gnOpg.ttf", + "500": "https://fonts.gstatic.com/s/sarabun/v15/DtVmJx26TKEr37c9YOZqulwm6gDXvwE.ttf", + "500italic": "https://fonts.gstatic.com/s/sarabun/v15/DtVkJx26TKEr37c9aBBxbl8s7iLSrwFUlw.ttf", + "600": "https://fonts.gstatic.com/s/sarabun/v15/DtVmJx26TKEr37c9YMptulwm6gDXvwE.ttf", + "600italic": "https://fonts.gstatic.com/s/sarabun/v15/DtVkJx26TKEr37c9aBBxQlgs7iLSrwFUlw.ttf", + "700": "https://fonts.gstatic.com/s/sarabun/v15/DtVmJx26TKEr37c9YK5sulwm6gDXvwE.ttf", + "700italic": "https://fonts.gstatic.com/s/sarabun/v15/DtVkJx26TKEr37c9aBBxJlks7iLSrwFUlw.ttf", + "800": "https://fonts.gstatic.com/s/sarabun/v15/DtVmJx26TKEr37c9YLJvulwm6gDXvwE.ttf", + "800italic": "https://fonts.gstatic.com/s/sarabun/v15/DtVkJx26TKEr37c9aBBxOlos7iLSrwFUlw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sarabun/v15/DtVjJx26TKEr37c9aBNJmg.ttf" + }, + { + "family": "Sarala", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sarala/v12/uK_y4riEZv4o1w9RCh0TMv6EXw.ttf", + "700": "https://fonts.gstatic.com/s/sarala/v12/uK_x4riEZv4o1w9ptjI3OtWYVkMpXA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sarala/v12/uK_y4riEZv4o1w9hCxcX.ttf" + }, + { + "family": "Sarina", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sarina/v23/-F6wfjF3ITQwasLhLkDUriBQxw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sarina/v23/-F6wfjF3ITQwasLRL0rQ.ttf" + }, + { + "family": "Sarpanch", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sarpanch/v13/hESy6Xt4NCpRuk6Pzh2ARIrX_20n.ttf", + "500": "https://fonts.gstatic.com/s/sarpanch/v13/hES16Xt4NCpRuk6PziV0ba7f1HEuRHkM.ttf", + "600": "https://fonts.gstatic.com/s/sarpanch/v13/hES16Xt4NCpRuk6PziVYaq7f1HEuRHkM.ttf", + "700": "https://fonts.gstatic.com/s/sarpanch/v13/hES16Xt4NCpRuk6PziU8a67f1HEuRHkM.ttf", + "800": "https://fonts.gstatic.com/s/sarpanch/v13/hES16Xt4NCpRuk6PziUgaK7f1HEuRHkM.ttf", + "900": "https://fonts.gstatic.com/s/sarpanch/v13/hES16Xt4NCpRuk6PziUEaa7f1HEuRHkM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sarpanch/v13/hESy6Xt4NCpRuk6Pzi2BTo4.ttf" + }, + { + "family": "Sassy Frass", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sassyfrass/v7/LhWhMVrGOe0FLb97BjhsE99dGNWQg_am.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sassyfrass/v7/LhWhMVrGOe0FLb97BjhsE-9cEtE.ttf" + }, + { + "family": "Satisfy", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/satisfy/v21/rP2Hp2yn6lkG50LoOZSCHBeHFl0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/satisfy/v21/rP2Hp2yn6lkG50LoCZWIGA.ttf" + }, + { + "family": "Sawarabi Gothic", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sawarabigothic/v13/x3d4ckfVaqqa-BEj-I9mE65u3k3NBSk3E2YljQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sawarabigothic/v13/x3d4ckfVaqqa-BEj-I9mE65u3k39BCMz.ttf" + }, + { + "family": "Sawarabi Mincho", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sawarabimincho/v18/8QIRdiDaitzr7brc8ahpxt6GcIJTLahP46UDUw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sawarabimincho/v18/8QIRdiDaitzr7brc8ahpxt6GcIJjLKJL.ttf" + }, + { + "family": "Scada", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/scada/v15/RLpxK5Pv5qumeWJoxzUobkvv.ttf", + "italic": "https://fonts.gstatic.com/s/scada/v15/RLp_K5Pv5qumeVJqzTEKa1vvffg.ttf", + "700": "https://fonts.gstatic.com/s/scada/v15/RLp8K5Pv5qumeVrU6BEgRVfmZOE5.ttf", + "700italic": "https://fonts.gstatic.com/s/scada/v15/RLp6K5Pv5qumeVJq9Y0lT1PEYfE5p6g.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/scada/v15/RLpxK5Pv5qumeVJpzTE.ttf" + }, + { + "family": "Scheherazade New", + "variants": [ + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/scheherazadenew/v15/4UaZrFhTvxVnHDvUkUiHg8jprP4DCwNsOl4p5Is.ttf", + "500": "https://fonts.gstatic.com/s/scheherazadenew/v15/4UaerFhTvxVnHDvUkUiHg8jprP4DM_dFHlYC-IKnoSE.ttf", + "600": "https://fonts.gstatic.com/s/scheherazadenew/v15/4UaerFhTvxVnHDvUkUiHg8jprP4DM9tCHlYC-IKnoSE.ttf", + "700": "https://fonts.gstatic.com/s/scheherazadenew/v15/4UaerFhTvxVnHDvUkUiHg8jprP4DM79DHlYC-IKnoSE.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/scheherazadenew/v15/4UaZrFhTvxVnHDvUkUiHg8jprP4DOwJmPg.ttf" + }, + { + "family": "Schibsted Grotesk", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNIsEAT8JuXFGVOQ.ttf", + "500": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNEMEAT8JuXFGVOQ.ttf", + "600": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMN_MYAT8JuXFGVOQ.ttf", + "700": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNxcYAT8JuXFGVOQ.ttf", + "800": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNosYAT8JuXFGVOQ.ttf", + "900": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNi8YAT8JuXFGVOQ.ttf", + "italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oLoDMhqflSFOTXs.ttf", + "500italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oLaDMhqflSFOTXs.ttf", + "600italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oI2C8hqflSFOTXs.ttf", + "700italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oIPC8hqflSFOTXs.ttf", + "800italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oJoC8hqflSFOTXs.ttf", + "900italic": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzI5SSPQuCQF3t8uOwiUL-taUTtap9DcSQBg_nT9FQY6oJBC8hqflSFOTXs.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/schibstedgrotesk/v3/JqzK5SSPQuCQF3t8uOwiUL-taUTtarVKQ9vZ6pJJWlMNIsEwTshq.ttf" + }, + { + "family": "Schoolbell", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/schoolbell/v18/92zQtBZWOrcgoe-fgnJIVxIQ6mRqfiQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/schoolbell/v18/92zQtBZWOrcgoe-fgnJIZxMa7g.ttf" + }, + { + "family": "Scope One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/scopeone/v14/WBLnrEXKYFlGHrOKmGD1W0_MJMGxiQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/scopeone/v14/WBLnrEXKYFlGHrOKmGDFWkXI.ttf" + }, + { + "family": "Seaweed Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/seaweedscript/v15/bx6cNx6Tne2pxOATYE8C_Rsoe0WJ-KcGVbLW.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/seaweedscript/v15/bx6cNx6Tne2pxOATYE8C_Rsoe3WI8qM.ttf" + }, + { + "family": "Secular One", + "variants": [ + "regular" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/secularone/v12/8QINdiTajsj_87rMuMdKypDlMul7LJpK.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/secularone/v12/8QINdiTajsj_87rMuMdKyqDkOO0.ttf" + }, + { + "family": "Sedan", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sedan/v1/Yq6a-L-VVyD6-eOSiTpovf5b.ttf", + "italic": "https://fonts.gstatic.com/s/sedan/v1/Yq6U-L-VVyD6-dOQgz5KuO5bjxE.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sedan/v1/Yq6a-L-VVyD6-dOTgz4.ttf" + }, + { + "family": "Sedan SC", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sedansc/v2/yMJRMIlvYZ3Jn1Y30Dq8fSx5i814.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sedansc/v2/yMJRMIlvYZ3Jn1Y30Aq9dyg.ttf" + }, + { + "family": "Sedgwick Ave", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sedgwickave/v12/uK_04rKEYuguzAcSYRdWTJq8Xmg1Vcf5JA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sedgwickave/v12/uK_04rKEYuguzAcSYRdWTJqMX2Ix.ttf" + }, + { + "family": "Sedgwick Ave Display", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sedgwickavedisplay/v21/xfuu0XPgU3jZPUoUo3ScvmPi-NapQ8OxM2czd-YnOzUD.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sedgwickavedisplay/v21/xfuu0XPgU3jZPUoUo3ScvmPi-NapQ8OxM1cyfeI.ttf" + }, + { + "family": "Sen", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sen/v9/6xK0dSxYI9_dkN18-vZKK2EISCq5H47KlD9q78A.ttf", + "500": "https://fonts.gstatic.com/s/sen/v9/6xK0dSxYI9_dkN18-vZKK2EISBi5H47KlD9q78A.ttf", + "600": "https://fonts.gstatic.com/s/sen/v9/6xK0dSxYI9_dkN18-vZKK2EISPS-H47KlD9q78A.ttf", + "700": "https://fonts.gstatic.com/s/sen/v9/6xK0dSxYI9_dkN18-vZKK2EISM2-H47KlD9q78A.ttf", + "800": "https://fonts.gstatic.com/s/sen/v9/6xK0dSxYI9_dkN18-vZKK2EISKq-H47KlD9q78A.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sen/v9/6xK0dSxYI9_dkN18-vZKK2EISCq5L4_AkA.ttf" + }, + { + "family": "Send Flowers", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sendflowers/v5/If2PXTjtZS-0Xqy13uCQSULvxwjjouU1iw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sendflowers/v5/If2PXTjtZS-0Xqy13uCQSULfxgLn.ttf" + }, + { + "family": "Sevillana", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sevillana/v23/KFOlCnWFscmDt1Bfiy1vAx05IsDqlA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sevillana/v23/KFOlCnWFscmDt1Bfiy1fAhc9.ttf" + }, + { + "family": "Seymour One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/seymourone/v23/4iCp6Khla9xbjQpoWGGd0myIPYBvgpUI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/seymourone/v23/4iCp6Khla9xbjQpoWGGd0lyJN4Q.ttf" + }, + { + "family": "Shadows Into Light", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shadowsintolight/v19/UqyNK9UOIntux_czAvDQx_ZcHqZXBNQDcsr4xzSMYA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shadowsintolight/v19/UqyNK9UOIntux_czAvDQx_ZcHqZXBNQzc8D8.ttf" + }, + { + "family": "Shadows Into Light Two", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shadowsintolighttwo/v17/4iC86LVlZsRSjQhpWGedwyOoW-0A6_kpsyNmlAvNGLNnIF0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shadowsintolighttwo/v17/4iC86LVlZsRSjQhpWGedwyOoW-0A6_kpsyNmpArHHA.ttf" + }, + { + "family": "Shalimar", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shalimar/v7/uU9MCBoE6I6iNWFUvTPx8PCOg0uX.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shalimar/v7/uU9MCBoE6I6iNWFUvQPw-vQ.ttf" + }, + { + "family": "Shantell Sans", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "800", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/shantellsans/v10/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYQiS2i2yPwxjyRN.ttf", + "regular": "https://fonts.gstatic.com/s/shantellsans/v10/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYR8S2i2yPwxjyRN.ttf", + "500": "https://fonts.gstatic.com/s/shantellsans/v10/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYROS2i2yPwxjyRN.ttf", + "600": "https://fonts.gstatic.com/s/shantellsans/v10/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYSiTGi2yPwxjyRN.ttf", + "700": "https://fonts.gstatic.com/s/shantellsans/v10/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYSbTGi2yPwxjyRN.ttf", + "800": "https://fonts.gstatic.com/s/shantellsans/v10/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYT8TGi2yPwxjyRN.ttf", + "300italic": "https://fonts.gstatic.com/s/shantellsans/v10/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CN71wvgTijRNYgQ.ttf", + "italic": "https://fonts.gstatic.com/s/shantellsans/v10/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CID1wvgTijRNYgQ.ttf", + "500italic": "https://fonts.gstatic.com/s/shantellsans/v10/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CLL1wvgTijRNYgQ.ttf", + "600italic": "https://fonts.gstatic.com/s/shantellsans/v10/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CF7ywvgTijRNYgQ.ttf", + "700italic": "https://fonts.gstatic.com/s/shantellsans/v10/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CGfywvgTijRNYgQ.ttf", + "800italic": "https://fonts.gstatic.com/s/shantellsans/v10/FeUcS0pCoLIo-lcdY7kjvNoQg2xkycTqsuA6bi9pTt8YiT-NXidjb_ee-maigL6R8nKVh8BbE1mv4wwmM0WUkSqmTpG0CADywvgTijRNYgQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shantellsans/v10/FeUaS0pCoLIo-lcdY7kjvNoQqWVWB0qWpl29ajppTuUTu_kJKmHesPOL-maYi4xZeHCNQ09eBlmv2QcUzJ39-rAISYR8S1i3wvg.ttf" + }, + { + "family": "Shanti", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shanti/v25/t5thIREMM4uSDgzgU0ezpKfwzA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shanti/v25/t5thIREMM4uSDgzQUk23.ttf" + }, + { + "family": "Share", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/share/v18/i7dEIFliZjKNF5VNHLq2cV5d.ttf", + "italic": "https://fonts.gstatic.com/s/share/v18/i7dKIFliZjKNF6VPFr6UdE5dWFM.ttf", + "700": "https://fonts.gstatic.com/s/share/v18/i7dJIFliZjKNF63xM56-WkJUQUq7.ttf", + "700italic": "https://fonts.gstatic.com/s/share/v18/i7dPIFliZjKNF6VPLgK7UEZ2RFq7AwU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/share/v18/i7dEIFliZjKNF6VMFr4.ttf" + }, + { + "family": "Share Tech", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sharetech/v21/7cHtv4Uyi5K0OeZ7bohUwHoDmTcibrA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sharetech/v21/7cHtv4Uyi5K0OeZ7bohU8HsJnQ.ttf" + }, + { + "family": "Share Tech Mono", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sharetechmono/v15/J7aHnp1uDWRBEqV98dVQztYldFc7pAsEIc3Xew.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sharetechmono/v15/J7aHnp1uDWRBEqV98dVQztYldFcLpQEA.ttf" + }, + { + "family": "Shippori Antique", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shipporiantique/v9/-F6qfid3KC8pdMyzR0qRyFUht11v8ldPg-IUDNg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shipporiantique/v9/-F6qfid3KC8pdMyzR0qRyFUht11vwlZFhw.ttf" + }, + { + "family": "Shippori Antique B1", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shipporiantiqueb1/v9/2Eb7L_JwClR7Zl_UAKZ0mUHw3oMKd40grRFCj9-5Y8Y.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shipporiantiqueb1/v9/2Eb7L_JwClR7Zl_UAKZ0mUHw3oMKd40gnRBIiw.ttf" + }, + { + "family": "Shippori Mincho", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shipporimincho/v15/VdGGAZweH5EbgHY6YExcZfDoj0BA2_-C7LoS7g.ttf", + "500": "https://fonts.gstatic.com/s/shipporimincho/v15/VdGDAZweH5EbgHY6YExcZfDoj0B4L9am5JEO5--2zg.ttf", + "600": "https://fonts.gstatic.com/s/shipporimincho/v15/VdGDAZweH5EbgHY6YExcZfDoj0B4A9Gm5JEO5--2zg.ttf", + "700": "https://fonts.gstatic.com/s/shipporimincho/v15/VdGDAZweH5EbgHY6YExcZfDoj0B4Z9Cm5JEO5--2zg.ttf", + "800": "https://fonts.gstatic.com/s/shipporimincho/v15/VdGDAZweH5EbgHY6YExcZfDoj0B4e9Om5JEO5--2zg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shipporimincho/v15/VdGGAZweH5EbgHY6YExcZfDoj0Bw2vWG.ttf" + }, + { + "family": "Shippori Mincho B1", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shipporiminchob1/v22/wXK2E2wCr44tulPdnn-xbIpJ9RgT9-nyjqBr1lO97Q.ttf", + "500": "https://fonts.gstatic.com/s/shipporiminchob1/v22/wXK1E2wCr44tulPdnn-xbIpJ9RgT9-nKeolP3nih5H4Uug.ttf", + "600": "https://fonts.gstatic.com/s/shipporiminchob1/v22/wXK1E2wCr44tulPdnn-xbIpJ9RgT9-nKVo5P3nih5H4Uug.ttf", + "700": "https://fonts.gstatic.com/s/shipporiminchob1/v22/wXK1E2wCr44tulPdnn-xbIpJ9RgT9-nKMo9P3nih5H4Uug.ttf", + "800": "https://fonts.gstatic.com/s/shipporiminchob1/v22/wXK1E2wCr44tulPdnn-xbIpJ9RgT9-nKLoxP3nih5H4Uug.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shipporiminchob1/v22/wXK2E2wCr44tulPdnn-xbIpJ9RgT9-nCj6pv.ttf" + }, + { + "family": "Shizuru", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin" + ], + "version": "v11", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/shizuru/v11/O4ZSFGfvnxFiCA3i30IJlgUTj2A.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shizuru/v11/O4ZSFGfvnxFiCA3i70MDkg.ttf" + }, + { + "family": "Shojumaru", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shojumaru/v15/rax_HiWfutkLLnaKCtlMBBJek0vA8A.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shojumaru/v15/rax_HiWfutkLLnaKCtl8BRha.ttf" + }, + { + "family": "Short Stack", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shortstack/v15/bMrzmS2X6p0jZC6EcmPFX-SScX8D0nq6.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shortstack/v15/bMrzmS2X6p0jZC6EcmPFX9STe3s.ttf" + }, + { + "family": "Shrikhand", + "variants": [ + "regular" + ], + "subsets": [ + "gujarati", + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/shrikhand/v15/a8IbNovtLWfR7T7bMJwbBIiQ0zhMtA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/shrikhand/v15/a8IbNovtLWfR7T7bMJwrBYKU.ttf" + }, + { + "family": "Siemreap", + "variants": [ + "regular" + ], + "subsets": [ + "khmer" + ], + "version": "v28", + "lastModified": "2023-08-25", + "files": { + "regular": "https://fonts.gstatic.com/s/siemreap/v28/Gg82N5oFbgLvHAfNl2YbnA8DLXpe.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/siemreap/v28/Gg82N5oFbgLvHAfNl1Yalgs.ttf" + }, + { + "family": "Sigmar", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sigmar/v7/hv-XlzJgIE8a85pUbWY3MTFgVg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sigmar/v7/hv-XlzJgIE8a85pkbGwz.ttf" + }, + { + "family": "Sigmar One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sigmarone/v18/co3DmWZ8kjZuErj9Ta3dk6Pjp3Di8U0.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sigmarone/v18/co3DmWZ8kjZuErj9Ta3do6Lpow.ttf" + }, + { + "family": "Signika", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/signika/v25/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r93zuYzTMngt4xjw.ttf", + "regular": "https://fonts.gstatic.com/s/signika/v25/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9gTuYzTMngt4xjw.ttf", + "500": "https://fonts.gstatic.com/s/signika/v25/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9szuYzTMngt4xjw.ttf", + "600": "https://fonts.gstatic.com/s/signika/v25/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9XzyYzTMngt4xjw.ttf", + "700": "https://fonts.gstatic.com/s/signika/v25/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9ZjyYzTMngt4xjw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/signika/v25/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9gTuozDkj.ttf" + }, + { + "family": "Signika Negative", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/signikanegative/v21/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAr5S73st9hiuEq8.ttf", + "regular": "https://fonts.gstatic.com/s/signikanegative/v21/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAqnS73st9hiuEq8.ttf", + "500": "https://fonts.gstatic.com/s/signikanegative/v21/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAqVS73st9hiuEq8.ttf", + "600": "https://fonts.gstatic.com/s/signikanegative/v21/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAp5TL3st9hiuEq8.ttf", + "700": "https://fonts.gstatic.com/s/signikanegative/v21/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RApATL3st9hiuEq8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/signikanegative/v21/E21x_cfngu7HiRpPX3ZpNE4kY5zKSPmJXkF0VDD2RAqnS43tvdw.ttf" + }, + { + "family": "Silkscreen", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/silkscreen/v4/m8JXjfVPf62XiF7kO-i9ULRvamODxdI.ttf", + "700": "https://fonts.gstatic.com/s/silkscreen/v4/m8JUjfVPf62XiF7kO-i9aAhATmuo2dudFvc.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/silkscreen/v4/m8JXjfVPf62XiF7kO-i9YLVlbg.ttf" + }, + { + "family": "Simonetta", + "variants": [ + "regular", + "italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/simonetta/v27/x3dickHVYrCU5BU15c4BfPACvy_1BA.ttf", + "italic": "https://fonts.gstatic.com/s/simonetta/v27/x3dkckHVYrCU5BU15c4xfvoGnSrlBBsy.ttf", + "900": "https://fonts.gstatic.com/s/simonetta/v27/x3dnckHVYrCU5BU15c45-N0mtwTpDQIrGg.ttf", + "900italic": "https://fonts.gstatic.com/s/simonetta/v27/x3d5ckHVYrCU5BU15c4xfsKCsA7tLwc7Gn88.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/simonetta/v27/x3dickHVYrCU5BU15c4xffoG.ttf" + }, + { + "family": "Single Day", + "variants": [ + "regular" + ], + "subsets": [ + "korean" + ], + "version": "v17", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/singleday/v17/LYjHdGDjlEgoAcF95EI5jVoFUNfeQJU.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/singleday/v17/LYjHdGDjlEgoAcF95EI5vVsPVA.ttf" + }, + { + "family": "Sintony", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sintony/v15/XoHm2YDqR7-98cVUITQnu98ojjs.ttf", + "700": "https://fonts.gstatic.com/s/sintony/v15/XoHj2YDqR7-98cVUGYgIn9cDkjLp6C8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sintony/v15/XoHm2YDqR7-98cVUETUtvw.ttf" + }, + { + "family": "Sirin Stencil", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sirinstencil/v25/mem4YaWwznmLx-lzGfN7MdRydchGBq6al6o.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sirinstencil/v25/mem4YaWwznmLx-lzGfN7MdRyRclMAg.ttf" + }, + { + "family": "Six Caps", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sixcaps/v20/6ae_4KGrU7VR7bNmabcS9XXaPCop.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sixcaps/v20/6ae_4KGrU7VR7bNmaYcT_3E.ttf" + }, + { + "family": "Sixtyfour", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sixtyfour/v1/OD5vuMCT1numDm3nakXtp2h4jg463t9haG_3mBkVsV20uFT3BAE5f73YnyS5ZuOV.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sixtyfour/v1/OD5vuMCT1numDm3nakXtp2h4jg463t9haG_3mBkVsV20uFT3BAE5f43ZlSA.ttf" + }, + { + "family": "Sixtyfour Convergence", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/sixtyfourconvergence/v1/m8IQjepPf7mIglv5K__zM9srGA7wurbybZMfZsqG2Q6EWlJro5FJSJ4acT9PoOPwGgieaK7zkSpdXP-GrR9Yw9Tg7E4HGLbUKPlOh102hotkk3grz3g.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sixtyfourconvergence/v1/m8IQjepPf7mIglv5K__zM9srGA7wurbybZMfZsqG2Q6EWlJro5FJSJ4acT9PoOPwGgieaK7zkSpdXP-GrR9Yw9Tg7E4HGLbUKPlOh102topulw.ttf", + "colorCapabilities": [ + "COLRv1" + ] + }, + { + "family": "Skranji", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/skranji/v13/OZpDg_dtriVFNerMYzuuklTm3Ek.ttf", + "700": "https://fonts.gstatic.com/s/skranji/v13/OZpGg_dtriVFNerMW4eBtlzNwED-b4g.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/skranji/v13/OZpDg_dtriVFNerMUzqklg.ttf" + }, + { + "family": "Slabo 13px", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/slabo13px/v15/11hEGp_azEvXZUdSBzzRcKer2wkYnvI.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/slabo13px/v15/11hEGp_azEvXZUdSBzzRQKah3w.ttf" + }, + { + "family": "Slabo 27px", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/slabo27px/v14/mFT0WbgBwKPR_Z4hGN2qsxgJ1EJ7i90.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/slabo27px/v14/mFT0WbgBwKPR_Z4hGN2qgxkD0A.ttf" + }, + { + "family": "Slackey", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/slackey/v28/N0bV2SdQO-5yM0-dKlRaJdbWgdY.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/slackey/v28/N0bV2SdQO-5yM0-dGlVQIQ.ttf" + }, + { + "family": "Slackside One", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/slacksideone/v11/EJRQQgMrXdcGsiBuvnRxodTwVy7VocNB6Iw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/slacksideone/v11/EJRQQgMrXdcGsiBuvnRxodTwZy_fpQ.ttf" + }, + { + "family": "Smokum", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/smokum/v28/TK3iWkUbAhopmrdGHjUHte5fKg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/smokum/v28/TK3iWkUbAhopmrd2Hz8D.ttf" + }, + { + "family": "Smooch", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/smooch/v7/o-0LIps4xW8U1xUBjqp_6hVdYg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/smooch/v7/o-0LIps4xW8U1xUxj6B7.ttf" + }, + { + "family": "Smooch Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/smoochsans/v13/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiwUFodqIeNlzayg.ttf", + "200": "https://fonts.gstatic.com/s/smoochsans/v13/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiQUBodqIeNlzayg.ttf", + "300": "https://fonts.gstatic.com/s/smoochsans/v13/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oin0BodqIeNlzayg.ttf", + "regular": "https://fonts.gstatic.com/s/smoochsans/v13/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiwUBodqIeNlzayg.ttf", + "500": "https://fonts.gstatic.com/s/smoochsans/v13/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oi80BodqIeNlzayg.ttf", + "600": "https://fonts.gstatic.com/s/smoochsans/v13/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiH0dodqIeNlzayg.ttf", + "700": "https://fonts.gstatic.com/s/smoochsans/v13/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiJkdodqIeNlzayg.ttf", + "800": "https://fonts.gstatic.com/s/smoochsans/v13/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiQUdodqIeNlzayg.ttf", + "900": "https://fonts.gstatic.com/s/smoochsans/v13/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiaEdodqIeNlzayg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/smoochsans/v13/c4mz1n5uGsXss2LJh1QH6b129FZvxPj6I4oiwUBYd6ga.ttf" + }, + { + "family": "Smythe", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/smythe/v23/MwQ3bhT01--coT1BOLh_uGInjA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/smythe/v23/MwQ3bhT01--coT1xObJ7.ttf" + }, + { + "family": "Sniglet", + "variants": [ + "regular", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sniglet/v17/cIf9MaFLtkE3UjaJxCmrYGkHgIs.ttf", + "800": "https://fonts.gstatic.com/s/sniglet/v17/cIf4MaFLtkE3UjaJ_ImHRGEsnIJkWL4.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sniglet/v17/cIf9MaFLtkE3UjaJ9CihZA.ttf" + }, + { + "family": "Snippet", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/snippet/v21/bWt47f7XfQH9Gupu2v_Afcp9QWc.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/snippet/v21/bWt47f7XfQH9Gupu6v7KeQ.ttf" + }, + { + "family": "Snowburst One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/snowburstone/v20/MQpS-WezKdujBsXY3B7I-UT7eZ-UPyacPbo.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/snowburstone/v20/MQpS-WezKdujBsXY3B7I-UT7SZ6eOw.ttf" + }, + { + "family": "Sofadi One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sofadione/v21/JIA2UVBxdnVBuElZaMFGcDOIETkmYDU.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sofadione/v21/JIA2UVBxdnVBuElZaMFGQDKCFQ.ttf" + }, + { + "family": "Sofia", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sofia/v14/8QIHdirahM3j_vu-sowsrqjk.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sofia/v14/8QIHdirahM3j_su_uIg.ttf" + }, + { + "family": "Sofia Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69B6sa3trvKCXl8k.ttf", + "200": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69D6sK3trvKCXl8k.ttf", + "300": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69AksK3trvKCXl8k.ttf", + "regular": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69B6sK3trvKCXl8k.ttf", + "500": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69BIsK3trvKCXl8k.ttf", + "600": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69Ckt63trvKCXl8k.ttf", + "700": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69Cdt63trvKCXl8k.ttf", + "800": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69D6t63trvKCXl8k.ttf", + "900": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69DTt63trvKCXl8k.ttf", + "100italic": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy80WvpPagW08kdLY.ttf", + "200italic": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy88WupPagW08kdLY.ttf", + "300italic": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy8xuupPagW08kdLY.ttf", + "italic": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy80WupPagW08kdLY.ttf", + "500italic": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy83eupPagW08kdLY.ttf", + "600italic": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy85uppPagW08kdLY.ttf", + "700italic": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy86KppPagW08kdLY.ttf", + "800italic": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy88WppPagW08kdLY.ttf", + "900italic": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6G-LCVXSLy9uPBwlATrORgnBjYmSP97MWy8-yppPagW08kdLY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sofiasans/v16/Yq6E-LCVXSLy9uPBwlAThu1SY8Cx8rlT69B6sJ3spPY.ttf" + }, + { + "family": "Sofia Sans Condensed", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqh-Csl8QO3OfwQQ.ttf", + "200": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqB-Gsl8QO3OfwQQ.ttf", + "300": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUq2eGsl8QO3OfwQQ.ttf", + "regular": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqh-Gsl8QO3OfwQQ.ttf", + "500": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqteGsl8QO3OfwQQ.ttf", + "600": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqWeasl8QO3OfwQQ.ttf", + "700": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqYOasl8QO3OfwQQ.ttf", + "800": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqB-asl8QO3OfwQQ.ttf", + "900": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqLuasl8QO3OfwQQ.ttf", + "100italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6JE1c4K_uLgQZ_3.ttf", + "200italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6LE1M4K_uLgQZ_3.ttf", + "300italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Ia1M4K_uLgQZ_3.ttf", + "italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6JE1M4K_uLgQZ_3.ttf", + "500italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6J21M4K_uLgQZ_3.ttf", + "600italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Ka084K_uLgQZ_3.ttf", + "700italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Kj084K_uLgQZ_3.ttf", + "800italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6LE084K_uLgQZ_3.ttf", + "900italic": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r053GKVS5aVKd567NYXawnFKJaTtoAuLnIcNvN_Vj6TYyQI_T6Lt084K_uLgQZ_3.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sofiasanscondensed/v2/r05xGKVS5aVKd567NYXawnFKJaTtoAuLnK0EjiAN5s9CZwUqh-Gcls4K.ttf" + }, + { + "family": "Sofia Sans Extra Condensed", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLmmmEfzmM356GxA.ttf", + "200": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLGmiEfzmM356GxA.ttf", + "300": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLxGiEfzmM356GxA.ttf", + "regular": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLmmiEfzmM356GxA.ttf", + "500": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLqGiEfzmM356GxA.ttf", + "600": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLRG-EfzmM356GxA.ttf", + "700": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLfW-EfzmM356GxA.ttf", + "800": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLGm-EfzmM356GxA.ttf", + "900": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLM2-EfzmM356GxA.ttf", + "100italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitsPTOI_ZuWxFXe.ttf", + "200italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivsPDOI_ZuWxFXe.ttf", + "300italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUisyPDOI_ZuWxFXe.ttf", + "italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitsPDOI_ZuWxFXe.ttf", + "500italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUitePDOI_ZuWxFXe.ttf", + "600italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUiuyOzOI_ZuWxFXe.ttf", + "700italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUiuLOzOI_ZuWxFXe.ttf", + "800italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivsOzOI_ZuWxFXe.ttf", + "900italic": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxfHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0fSrPEBUZv84WtaeUivFOzOI_ZuWxFXe.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sofiasansextracondensed/v2/raxdHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0d6iDr-MD5Si9NGLmmi0fjOI.ttf" + }, + { + "family": "Sofia Sans Semi Condensed", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoobEO9TGahllIhN.ttf", + "200": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqbEe9TGahllIhN.ttf", + "300": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvopFEe9TGahllIhN.ttf", + "regular": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoobEe9TGahllIhN.ttf", + "500": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoopEe9TGahllIhN.ttf", + "600": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvorFFu9TGahllIhN.ttf", + "700": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvor8Fu9TGahllIhN.ttf", + "800": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqbFu9TGahllIhN.ttf", + "900": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoqyFu9TGahllIhN.ttf", + "100italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUgcRE6xHkZhNeas.ttf", + "200italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUocQE6xHkZhNeas.ttf", + "300italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUlkQE6xHkZhNeas.ttf", + "italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUgcQE6xHkZhNeas.ttf", + "500italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUjUQE6xHkZhNeas.ttf", + "600italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUtkXE6xHkZhNeas.ttf", + "700italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUuAXE6xHkZhNeas.ttf", + "800italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUocXE6xHkZhNeas.ttf", + "900italic": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kMlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURsWYu_G5idVi7uZ_TUq4XE6xHkZhNeas.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sofiasanssemicondensed/v4/46kOlaPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURm28cA7YLHsIVvoobEd9SE6w.ttf" + }, + { + "family": "Solitreo", + "variants": [ + "regular" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/solitreo/v2/r05YGLlS5a9KYsyNO8upyDYtStiJ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/solitreo/v2/r05YGLlS5a9KYsyNO_uowjI.ttf" + }, + { + "family": "Solway", + "variants": [ + "300", + "regular", + "500", + "700", + "800" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCuLlgZms0QW3mqyg.ttf", + "regular": "https://fonts.gstatic.com/s/solway/v18/AMOQz46Cs2uTAOCWgnA9kuYMUg.ttf", + "500": "https://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCudlkZms0QW3mqyg.ttf", + "700": "https://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCuPl8Zms0QW3mqyg.ttf", + "800": "https://fonts.gstatic.com/s/solway/v18/AMOTz46Cs2uTAOCuIlwZms0QW3mqyg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/solway/v18/AMOQz46Cs2uTAOCmg3o5.ttf" + }, + { + "family": "Sometype Mono", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sometypemono/v1/70lGu745KGk_R3uxyq0WrROhAJiJsJ_eTWllpTAMGE9agQBbs7uG.ttf", + "500": "https://fonts.gstatic.com/s/sometypemono/v1/70lGu745KGk_R3uxyq0WrROhAJiJsJ_eTWllpTA-GE9agQBbs7uG.ttf", + "600": "https://fonts.gstatic.com/s/sometypemono/v1/70lGu745KGk_R3uxyq0WrROhAJiJsJ_eTWllpTDSH09agQBbs7uG.ttf", + "700": "https://fonts.gstatic.com/s/sometypemono/v1/70lGu745KGk_R3uxyq0WrROhAJiJsJ_eTWllpTDrH09agQBbs7uG.ttf", + "italic": "https://fonts.gstatic.com/s/sometypemono/v1/70lEu745KGk_R3uxyq0WrROhKpG7T0e3JvPLoiXEW6cZiwR5tquGrxk.ttf", + "500italic": "https://fonts.gstatic.com/s/sometypemono/v1/70lEu745KGk_R3uxyq0WrROhKpG7T0e3JvPLoiXEW5UZiwR5tquGrxk.ttf", + "600italic": "https://fonts.gstatic.com/s/sometypemono/v1/70lEu745KGk_R3uxyq0WrROhKpG7T0e3JvPLoiXEW3keiwR5tquGrxk.ttf", + "700italic": "https://fonts.gstatic.com/s/sometypemono/v1/70lEu745KGk_R3uxyq0WrROhKpG7T0e3JvPLoiXEW0AeiwR5tquGrxk.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sometypemono/v1/70lGu745KGk_R3uxyq0WrROhAJiJsJ_eTWllpTAMGH9biwQ.ttf" + }, + { + "family": "Song Myung", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v20", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/songmyung/v20/1cX2aUDWAJH5-EIC7DIhr1GqhcitzeM.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/songmyung/v20/1cX2aUDWAJH5-EIC7DIhn1CggQ.ttf" + }, + { + "family": "Sono", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/sono/v6/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVNkWdEnR4qYeB4Q.ttf", + "300": "https://fonts.gstatic.com/s/sono/v6/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxV6EWdEnR4qYeB4Q.ttf", + "regular": "https://fonts.gstatic.com/s/sono/v6/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVtkWdEnR4qYeB4Q.ttf", + "500": "https://fonts.gstatic.com/s/sono/v6/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVhEWdEnR4qYeB4Q.ttf", + "600": "https://fonts.gstatic.com/s/sono/v6/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVaEKdEnR4qYeB4Q.ttf", + "700": "https://fonts.gstatic.com/s/sono/v6/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVUUKdEnR4qYeB4Q.ttf", + "800": "https://fonts.gstatic.com/s/sono/v6/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVNkKdEnR4qYeB4Q.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sono/v6/aFT97PNiY3U2Cqf_aYEN64CYaK18YWJEsV6u-QLiOsxVtkWtE358.ttf" + }, + { + "family": "Sonsie One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sonsieone/v21/PbymFmP_EAnPqbKaoc18YVu80lbp8JM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sonsieone/v21/PbymFmP_EAnPqbKaoc18UVq21g.ttf" + }, + { + "family": "Sora", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/sora/v12/xMQOuFFYT72X5wkB_18qmnndmSdSn3-KIwNhBti0.ttf", + "200": "https://fonts.gstatic.com/s/sora/v12/xMQOuFFYT72X5wkB_18qmnndmSfSnn-KIwNhBti0.ttf", + "300": "https://fonts.gstatic.com/s/sora/v12/xMQOuFFYT72X5wkB_18qmnndmScMnn-KIwNhBti0.ttf", + "regular": "https://fonts.gstatic.com/s/sora/v12/xMQOuFFYT72X5wkB_18qmnndmSdSnn-KIwNhBti0.ttf", + "500": "https://fonts.gstatic.com/s/sora/v12/xMQOuFFYT72X5wkB_18qmnndmSdgnn-KIwNhBti0.ttf", + "600": "https://fonts.gstatic.com/s/sora/v12/xMQOuFFYT72X5wkB_18qmnndmSeMmX-KIwNhBti0.ttf", + "700": "https://fonts.gstatic.com/s/sora/v12/xMQOuFFYT72X5wkB_18qmnndmSe1mX-KIwNhBti0.ttf", + "800": "https://fonts.gstatic.com/s/sora/v12/xMQOuFFYT72X5wkB_18qmnndmSfSmX-KIwNhBti0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sora/v12/xMQOuFFYT72X5wkB_18qmnndmSdSnk-LKQc.ttf" + }, + { + "family": "Sorts Mill Goudy", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sortsmillgoudy/v15/Qw3GZR9MED_6PSuS_50nEaVrfzgEXH0OjpM75PE.ttf", + "italic": "https://fonts.gstatic.com/s/sortsmillgoudy/v15/Qw3AZR9MED_6PSuS_50nEaVrfzgEbH8EirE-9PGLfQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sortsmillgoudy/v15/Qw3GZR9MED_6PSuS_50nEaVrfzgEbHwEig.ttf" + }, + { + "family": "Source Code Pro", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DEyQhM5hTXUcdJg.ttf", + "300": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DJKQhM5hTXUcdJg.ttf", + "regular": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQhM5hTXUcdJg.ttf", + "500": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DP6QhM5hTXUcdJg.ttf", + "600": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DBKXhM5hTXUcdJg.ttf", + "700": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DCuXhM5hTXUcdJg.ttf", + "800": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DEyXhM5hTXUcdJg.ttf", + "900": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DGWXhM5hTXUcdJg.ttf", + "200italic": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTT7I1rSVcZZJiGpw.ttf", + "300italic": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTMo1rSVcZZJiGpw.ttf", + "italic": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTbI1rSVcZZJiGpw.ttf", + "500italic": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTXo1rSVcZZJiGpw.ttf", + "600italic": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTsoprSVcZZJiGpw.ttf", + "700italic": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTi4prSVcZZJiGpw.ttf", + "800italic": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTT7IprSVcZZJiGpw.ttf", + "900italic": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_jiYsKILxRpg3hIP6sJ7fM7PqlOPHYvDP_W9O7GQTTxYprSVcZZJiGpw.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sourcecodepro/v23/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQtM9rSQ.ttf" + }, + { + "family": "Source Sans 3", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kw461EN_io6npfB.ttf", + "300": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kzm61EN_io6npfB.ttf", + "regular": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Ky461EN_io6npfB.ttf", + "500": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8KyK61EN_io6npfB.ttf", + "600": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kxm7FEN_io6npfB.ttf", + "700": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kxf7FEN_io6npfB.ttf", + "800": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Kw47FEN_io6npfB.ttf", + "900": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8KwR7FEN_io6npfB.ttf", + "200italic": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqDlO9C4Ym4fB3Ts.ttf", + "300italic": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqOdO9C4Ym4fB3Ts.ttf", + "italic": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqLlO9C4Ym4fB3Ts.ttf", + "500italic": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqItO9C4Ym4fB3Ts.ttf", + "600italic": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqGdJ9C4Ym4fB3Ts.ttf", + "700italic": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqF5J9C4Ym4fB3Ts.ttf", + "800italic": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqDlJ9C4Ym4fB3Ts.ttf", + "900italic": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpDtKy2OAdR1K-IwhWudF-R3woAa8opPOrG97lwqBBJ9C4Ym4fB3Ts.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sourcesans3/v15/nwpBtKy2OAdR1K-IwhWudF-R9QMylBJAV3Bo8Ky462EM9C4.ttf" + }, + { + "family": "Source Serif 4", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/sourceserif4/v8/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjipdqrhxXD-wGvjU.ttf", + "300": "https://fonts.gstatic.com/s/sourceserif4/v8/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjiklqrhxXD-wGvjU.ttf", + "regular": "https://fonts.gstatic.com/s/sourceserif4/v8/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjihdqrhxXD-wGvjU.ttf", + "500": "https://fonts.gstatic.com/s/sourceserif4/v8/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjiiVqrhxXD-wGvjU.ttf", + "600": "https://fonts.gstatic.com/s/sourceserif4/v8/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjisltrhxXD-wGvjU.ttf", + "700": "https://fonts.gstatic.com/s/sourceserif4/v8/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjivBtrhxXD-wGvjU.ttf", + "800": "https://fonts.gstatic.com/s/sourceserif4/v8/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjipdtrhxXD-wGvjU.ttf", + "900": "https://fonts.gstatic.com/s/sourceserif4/v8/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjir5trhxXD-wGvjU.ttf", + "200italic": "https://fonts.gstatic.com/s/sourceserif4/v8/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pxl9dC84DrjXEXw.ttf", + "300italic": "https://fonts.gstatic.com/s/sourceserif4/v8/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pGF9dC84DrjXEXw.ttf", + "italic": "https://fonts.gstatic.com/s/sourceserif4/v8/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pRl9dC84DrjXEXw.ttf", + "500italic": "https://fonts.gstatic.com/s/sourceserif4/v8/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pdF9dC84DrjXEXw.ttf", + "600italic": "https://fonts.gstatic.com/s/sourceserif4/v8/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pmFhdC84DrjXEXw.ttf", + "700italic": "https://fonts.gstatic.com/s/sourceserif4/v8/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98poVhdC84DrjXEXw.ttf", + "800italic": "https://fonts.gstatic.com/s/sourceserif4/v8/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98pxlhdC84DrjXEXw.ttf", + "900italic": "https://fonts.gstatic.com/s/sourceserif4/v8/vEF02_tTDB4M7-auWDN0ahZJW1ge6NmXpVAHV83Bfb_US2D2QYxoUKIkn98p71hdC84DrjXEXw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sourceserif4/v8/vEFy2_tTDB4M7-auWDN0ahZJW3IX2ih5nk3AucvUHf6OAVIJmeUDygwjihdqnh1dCw.ttf" + }, + { + "family": "Space Grotesk", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/spacegrotesk/v16/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj62UUsjNsFjTDJK.ttf", + "regular": "https://fonts.gstatic.com/s/spacegrotesk/v16/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj7oUUsjNsFjTDJK.ttf", + "500": "https://fonts.gstatic.com/s/spacegrotesk/v16/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj7aUUsjNsFjTDJK.ttf", + "600": "https://fonts.gstatic.com/s/spacegrotesk/v16/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj42VksjNsFjTDJK.ttf", + "700": "https://fonts.gstatic.com/s/spacegrotesk/v16/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj4PVksjNsFjTDJK.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/spacegrotesk/v16/V8mQoQDjQSkFtoMM3T6r8E7mF71Q-gOoraIAEj7oUXsiPMU.ttf" + }, + { + "family": "Space Mono", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/spacemono/v14/i7dPIFZifjKcF5UAWdDRUEZ2RFq7AwU.ttf", + "italic": "https://fonts.gstatic.com/s/spacemono/v14/i7dNIFZifjKcF5UAWdDRYER8QHi-EwWMbg.ttf", + "700": "https://fonts.gstatic.com/s/spacemono/v14/i7dMIFZifjKcF5UAWdDRaPpZYFKQHwyVd3U.ttf", + "700italic": "https://fonts.gstatic.com/s/spacemono/v14/i7dSIFZifjKcF5UAWdDRYERE_FeaGy6QZ3WfYg.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/spacemono/v14/i7dPIFZifjKcF5UAWdDRYEd8QA.ttf" + }, + { + "family": "Special Elite", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/specialelite/v18/XLYgIZbkc4JPUL5CVArUVL0nhncESXFtUsM.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/specialelite/v18/XLYgIZbkc4JPUL5CVArUVL0ntnYOTQ.ttf" + }, + { + "family": "Spectral", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9v2s13GY_etWWIJ.ttf", + "200italic": "https://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qrXHafOPXHIJErY.ttf", + "300": "https://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9uSsF3GY_etWWIJ.ttf", + "300italic": "https://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qtHEafOPXHIJErY.ttf", + "regular": "https://fonts.gstatic.com/s/spectral/v13/rnCr-xNNww_2s0amA-M-mHnOSOuk.ttf", + "italic": "https://fonts.gstatic.com/s/spectral/v13/rnCt-xNNww_2s0amA9M8kn3sTfukQHs.ttf", + "500": "https://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9vKsV3GY_etWWIJ.ttf", + "500italic": "https://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qonFafOPXHIJErY.ttf", + "600": "https://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9vmtl3GY_etWWIJ.ttf", + "600italic": "https://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qqXCafOPXHIJErY.ttf", + "700": "https://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9uCt13GY_etWWIJ.ttf", + "700italic": "https://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qsHDafOPXHIJErY.ttf", + "800": "https://fonts.gstatic.com/s/spectral/v13/rnCs-xNNww_2s0amA9uetF3GY_etWWIJ.ttf", + "800italic": "https://fonts.gstatic.com/s/spectral/v13/rnCu-xNNww_2s0amA9M8qt3AafOPXHIJErY.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/spectral/v13/rnCr-xNNww_2s0amA9M_kn0.ttf" + }, + { + "family": "Spectral SC", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs1qwkTXPYeVXJZB.ttf", + "200italic": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg26zWN4O3WYZB_sU.ttf", + "300": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs0OwUTXPYeVXJZB.ttf", + "300italic": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg28jVN4O3WYZB_sU.ttf", + "regular": "https://fonts.gstatic.com/s/spectralsc/v12/KtkpALCRZonmalTgyPmRfvWi6WDfFpuc.ttf", + "italic": "https://fonts.gstatic.com/s/spectralsc/v12/KtkrALCRZonmalTgyPmRfsWg42T9E4ucRY8.ttf", + "500": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs1WwETXPYeVXJZB.ttf", + "500italic": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg25DUN4O3WYZB_sU.ttf", + "600": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs16x0TXPYeVXJZB.ttf", + "600italic": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg27zTN4O3WYZB_sU.ttf", + "700": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs0exkTXPYeVXJZB.ttf", + "700italic": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg29jSN4O3WYZB_sU.ttf", + "800": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk0ALCRZonmalTgyPmRfs0CxUTXPYeVXJZB.ttf", + "800italic": "https://fonts.gstatic.com/s/spectralsc/v12/Ktk2ALCRZonmalTgyPmRfsWg28TRN4O3WYZB_sU.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/spectralsc/v12/KtkpALCRZonmalTgyPmRfsWj42Q.ttf" + }, + { + "family": "Spicy Rice", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/spicyrice/v25/uK_24rSEd-Uqwk4jY1RyGv-2WkowRcc.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/spicyrice/v25/uK_24rSEd-Uqwk4jY1RyKv68Xg.ttf" + }, + { + "family": "Spinnaker", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/spinnaker/v19/w8gYH2oyX-I0_rvR6Hmn3HwLqOqSBg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/spinnaker/v19/w8gYH2oyX-I0_rvR6HmX3XYP.ttf" + }, + { + "family": "Spirax", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/spirax/v21/buE3poKgYNLy0F3cXktt-Csn-Q.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/spirax/v21/buE3poKgYNLy0F3sX0Fp.ttf" + }, + { + "family": "Splash", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/splash/v6/KtksAL2RZoDkbU6hpPPGNdS6wg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/splash/v6/KtksAL2RZoDkbU6RpfnC.ttf" + }, + { + "family": "Spline Sans", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/splinesans/v10/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpZlnYEtvlUfE2kw.ttf", + "regular": "https://fonts.gstatic.com/s/splinesans/v10/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpOFnYEtvlUfE2kw.ttf", + "500": "https://fonts.gstatic.com/s/splinesans/v10/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpClnYEtvlUfE2kw.ttf", + "600": "https://fonts.gstatic.com/s/splinesans/v10/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRp5l7YEtvlUfE2kw.ttf", + "700": "https://fonts.gstatic.com/s/splinesans/v10/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRp317YEtvlUfE2kw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/splinesans/v10/_6_sED73Uf-2WfU2LzycEZousNzn1a1lKWRpOFnoE9Hh.ttf" + }, + { + "family": "Spline Sans Mono", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/splinesansmono/v10/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGA8MrtVy4d4dGb1.ttf", + "regular": "https://fonts.gstatic.com/s/splinesansmono/v10/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGBiMrtVy4d4dGb1.ttf", + "500": "https://fonts.gstatic.com/s/splinesansmono/v10/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGBQMrtVy4d4dGb1.ttf", + "600": "https://fonts.gstatic.com/s/splinesansmono/v10/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGC8NbtVy4d4dGb1.ttf", + "700": "https://fonts.gstatic.com/s/splinesansmono/v10/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGCFNbtVy4d4dGb1.ttf", + "300italic": "https://fonts.gstatic.com/s/splinesansmono/v10/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcQ0WwYNacXb12MM.ttf", + "italic": "https://fonts.gstatic.com/s/splinesansmono/v10/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcVMWwYNacXb12MM.ttf", + "500italic": "https://fonts.gstatic.com/s/splinesansmono/v10/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcWEWwYNacXb12MM.ttf", + "600italic": "https://fonts.gstatic.com/s/splinesansmono/v10/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcY0RwYNacXb12MM.ttf", + "700italic": "https://fonts.gstatic.com/s/splinesansmono/v10/R70yjzAei_CDNLfgZxrW6wrZOF2WX5eDlm1vIsHjv3WqcbQRwYNacXb12MM.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/splinesansmono/v10/R70MjzAei_CDNLfgZxrW6wrZOF2WdZ6xabUGSVtNuGBiMotUwYM.ttf" + }, + { + "family": "Squada One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/squadaone/v18/BCasqZ8XsOrx4mcOk6MtWaA8WDBkHgs.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/squadaone/v18/BCasqZ8XsOrx4mcOk6MtaaE2XA.ttf" + }, + { + "family": "Square Peg", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/squarepeg/v5/y83eW48Nzw6ZlUHc-phrBDHrHHfrFPE.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/squarepeg/v5/y83eW48Nzw6ZlUHc-phrNDDhGA.ttf" + }, + { + "family": "Sree Krushnadevaraya", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v21", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/sreekrushnadevaraya/v21/R70FjzQeifmPepmyQQjQ9kvwMkWYPfTA_EWb2FhQuXir.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sreekrushnadevaraya/v21/R70FjzQeifmPepmyQQjQ9kvwMkWYPfTA_HWa0lw.ttf" + }, + { + "family": "Sriracha", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sriracha/v14/0nkrC9D4IuYBgWcI9ObYRQDioeb0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sriracha/v14/0nkrC9D4IuYBgWcI9NbZTwQ.ttf" + }, + { + "family": "Srisakdi", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/srisakdi/v16/yMJRMIlvdpDbkB0A-jq8fSx5i814.ttf", + "700": "https://fonts.gstatic.com/s/srisakdi/v16/yMJWMIlvdpDbkB0A-gIAUghxoNFxW0Hz.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/srisakdi/v16/yMJRMIlvdpDbkB0A-gq9dyg.ttf" + }, + { + "family": "Staatliches", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/staatliches/v13/HI_OiY8KO6hCsQSoAPmtMbectJG9O9PS.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/staatliches/v13/HI_OiY8KO6hCsQSoAPmtMYedvpU.ttf" + }, + { + "family": "Stalemate", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/stalemate/v22/taiIGmZ_EJq97-UfkZRpuqSs8ZQpaQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/stalemate/v22/taiIGmZ_EJq97-UfkZRZu66o.ttf" + }, + { + "family": "Stalinist One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v56", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/stalinistone/v56/MQpS-WezM9W4Dd7D3B7I-UT7eZ-UPyacPbo.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/stalinistone/v56/MQpS-WezM9W4Dd7D3B7I-UT7SZ6eOw.ttf" + }, + { + "family": "Stardos Stencil", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/stardosstencil/v15/X7n94bcuGPC8hrvEOHXOgaKCc2TR71R3tiSx0g.ttf", + "700": "https://fonts.gstatic.com/s/stardosstencil/v15/X7n44bcuGPC8hrvEOHXOgaKCc2TpU3tTvg-t29HSHw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/stardosstencil/v15/X7n94bcuGPC8hrvEOHXOgaKCc2Th7l5z.ttf" + }, + { + "family": "Stick", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/stick/v18/Qw3TZQpMCyTtJSvfvPVDMPoF.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/stick/v18/Qw3TZQpMCyTtJRvetvE.ttf" + }, + { + "family": "Stick No Bills", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "sinhala" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/sticknobills/v15/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVP8Q7KriwKhcTKA.ttf", + "300": "https://fonts.gstatic.com/s/sticknobills/v15/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcV4cQ7KriwKhcTKA.ttf", + "regular": "https://fonts.gstatic.com/s/sticknobills/v15/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVv8Q7KriwKhcTKA.ttf", + "500": "https://fonts.gstatic.com/s/sticknobills/v15/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVjcQ7KriwKhcTKA.ttf", + "600": "https://fonts.gstatic.com/s/sticknobills/v15/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVYcM7KriwKhcTKA.ttf", + "700": "https://fonts.gstatic.com/s/sticknobills/v15/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVWMM7KriwKhcTKA.ttf", + "800": "https://fonts.gstatic.com/s/sticknobills/v15/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVP8M7KriwKhcTKA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sticknobills/v15/bWts7ffXZwHuAa9Uld-oEK4QKlxj9f9t_7uEmjcVv8QLK7K0.ttf" + }, + { + "family": "Stint Ultra Condensed", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/stintultracondensed/v23/-W_gXIrsVjjeyEnPC45qD2NoFPtBE0xCh2A-qhUO2cNvdg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/stintultracondensed/v23/-W_gXIrsVjjeyEnPC45qD2NoFPtBE0xCh2AOqx8K.ttf" + }, + { + "family": "Stint Ultra Expanded", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/stintultraexpanded/v22/CSRg4yNNh-GbW3o3JkwoDcdvMKMf0oBAd0qoATQkWwam.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/stintultraexpanded/v22/CSRg4yNNh-GbW3o3JkwoDcdvMKMf0oBAd3qpCzA.ttf" + }, + { + "family": "Stoke", + "variants": [ + "300", + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/stoke/v24/z7NXdRb7aTMfKNvFVgxC_pjcTeWU.ttf", + "regular": "https://fonts.gstatic.com/s/stoke/v24/z7NadRb7aTMfKONpfihK1YTV.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/stoke/v24/z7NadRb7aTMfKNNodCw.ttf" + }, + { + "family": "Strait", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/strait/v17/DtViJxy6WaEr1LZzeDhtkl0U7w.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/strait/v17/DtViJxy6WaEr1LZDeTJp.ttf" + }, + { + "family": "Style Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/stylescript/v11/vm8xdRX3SV7Z0aPa88xzW5npeFT76NZnMw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/stylescript/v11/vm8xdRX3SV7Z0aPa88xzW5nZeV7_.ttf" + }, + { + "family": "Stylish", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v22", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/stylish/v22/m8JSjfhPYriQkk7-fo35dLxEdmo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/stylish/v22/m8JSjfhPYriQkk7-TozzcA.ttf" + }, + { + "family": "Sue Ellen Francisco", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sueellenfrancisco/v20/wXK3E20CsoJ9j1DDkjHcQ5ZL8xRaxru9ropF2lqk9H4.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sueellenfrancisco/v20/wXK3E20CsoJ9j1DDkjHcQ5ZL8xRaxru9notP3g.ttf" + }, + { + "family": "Suez One", + "variants": [ + "regular" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/suezone/v13/taiJGmd_EZ6rqscQgNFJkIqg-I0w.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/suezone/v13/taiJGmd_EZ6rqscQgOFImo4.ttf" + }, + { + "family": "Sulphur Point", + "variants": [ + "300", + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/sulphurpoint/v15/RLpkK5vv8KaycDcazWFPBj2afVU6n6kFUHPIFaU.ttf", + "regular": "https://fonts.gstatic.com/s/sulphurpoint/v15/RLp5K5vv8KaycDcazWFPBj2aRfkSu6EuTHo.ttf", + "700": "https://fonts.gstatic.com/s/sulphurpoint/v15/RLpkK5vv8KaycDcazWFPBj2afUU9n6kFUHPIFaU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sulphurpoint/v15/RLp5K5vv8KaycDcazWFPBj2adfgYvw.ttf" + }, + { + "family": "Sumana", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sumana/v10/4UaDrE5TqRBjGj-G8Bji76zR4w.ttf", + "700": "https://fonts.gstatic.com/s/sumana/v10/4UaArE5TqRBjGj--TDfG54fN6ppsKg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sumana/v10/4UaDrE5TqRBjGj-28RLm.ttf" + }, + { + "family": "Sunflower", + "variants": [ + "300", + "500", + "700" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v16", + "lastModified": "2024-08-12", + "files": { + "300": "https://fonts.gstatic.com/s/sunflower/v16/RWmPoKeF8fUjqIj7Vc-06MfiqYsGBGBzCw.ttf", + "500": "https://fonts.gstatic.com/s/sunflower/v16/RWmPoKeF8fUjqIj7Vc-0sMbiqYsGBGBzCw.ttf", + "700": "https://fonts.gstatic.com/s/sunflower/v16/RWmPoKeF8fUjqIj7Vc-0-MDiqYsGBGBzCw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sunflower/v16/RWmPoKeF8fUjqIj7Vc-06MfSqIEC.ttf" + }, + { + "family": "Sunshiney", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sunshiney/v24/LDIwapGTLBwsS-wT4vcgE8moUePWkg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sunshiney/v24/LDIwapGTLBwsS-wT4vcQEsOs.ttf" + }, + { + "family": "Supermercado One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/supermercadoone/v26/OpNXnpQWg8jc_xps_Gi14kVVEXOn60b3MClBRTs.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/supermercadoone/v26/OpNXnpQWg8jc_xps_Gi14kVVEXOn20f9NA.ttf" + }, + { + "family": "Sura", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/sura/v19/SZc23FL5PbyzFf5UWzXtjUM.ttf", + "700": "https://fonts.gstatic.com/s/sura/v19/SZc53FL5PbyzLUJ7fz3GkUrS8DI.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/sura/v19/SZc23FL5PbyzJf9eXw.ttf" + }, + { + "family": "Suranna", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v13", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/suranna/v13/gokuH6ztGkFjWe58tBRZT2KmgP0.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/suranna/v13/gokuH6ztGkFjWe58hBVTSw.ttf" + }, + { + "family": "Suravaram", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v21", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/suravaram/v21/_gP61R_usiY7SCym4xIAi261Qv9roQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/suravaram/v21/_gP61R_usiY7SCym4xIwimSx.ttf" + }, + { + "family": "Suwannaphum", + "variants": [ + "100", + "300", + "regular", + "700", + "900" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v31", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/suwannaphum/v31/jAnAgHV7GtDvc8jbe8hXXL3B9cSWXx2VZmk.ttf", + "300": "https://fonts.gstatic.com/s/suwannaphum/v31/jAnfgHV7GtDvc8jbe8hXXL0J1-S8cRGcf3Ai.ttf", + "regular": "https://fonts.gstatic.com/s/suwannaphum/v31/jAnCgHV7GtDvc8jbe8hXXIWl_8C0Wg2V.ttf", + "700": "https://fonts.gstatic.com/s/suwannaphum/v31/jAnfgHV7GtDvc8jbe8hXXL0Z0OS8cRGcf3Ai.ttf", + "900": "https://fonts.gstatic.com/s/suwannaphum/v31/jAnfgHV7GtDvc8jbe8hXXL0h0uS8cRGcf3Ai.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/suwannaphum/v31/jAnCgHV7GtDvc8jbe8hXXLWk9cQ.ttf" + }, + { + "family": "Swanky and Moo Moo", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/swankyandmoomoo/v22/flUlRrKz24IuWVI_WJYTYcqbEsMUZ3kUtbPkR64SYQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/swankyandmoomoo/v22/flUlRrKz24IuWVI_WJYTYcqbEsMUZ3kktLng.ttf" + }, + { + "family": "Syncopate", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/syncopate/v21/pe0sMIuPIYBCpEV5eFdyAv2-C99ycg.ttf", + "700": "https://fonts.gstatic.com/s/syncopate/v21/pe0pMIuPIYBCpEV5eFdKvtKaA_Rue1UwVg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/syncopate/v21/pe0sMIuPIYBCpEV5eFdCA_e6.ttf" + }, + { + "family": "Syne", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "greek", + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/syne/v22/8vIS7w4qzmVxsWxjBZRjr0FKM_04uT6kR47NCV5Z.ttf", + "500": "https://fonts.gstatic.com/s/syne/v22/8vIS7w4qzmVxsWxjBZRjr0FKM_0KuT6kR47NCV5Z.ttf", + "600": "https://fonts.gstatic.com/s/syne/v22/8vIS7w4qzmVxsWxjBZRjr0FKM_3mvj6kR47NCV5Z.ttf", + "700": "https://fonts.gstatic.com/s/syne/v22/8vIS7w4qzmVxsWxjBZRjr0FKM_3fvj6kR47NCV5Z.ttf", + "800": "https://fonts.gstatic.com/s/syne/v22/8vIS7w4qzmVxsWxjBZRjr0FKM_24vj6kR47NCV5Z.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/syne/v22/8vIS7w4qzmVxsWxjBZRjr0FKM_04uQ6lTYo.ttf" + }, + { + "family": "Syne Mono", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/synemono/v15/K2FzfZNHj_FHBmRbFvHzIqCkDyvqZA.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/synemono/v15/K2FzfZNHj_FHBmRbFvHDI6qg.ttf" + }, + { + "family": "Syne Tactile", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/synetactile/v15/11hGGpna2UTQKjMCVzjAPMKh3ysdjvKU8Q.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/synetactile/v15/11hGGpna2UTQKjMCVzjAPMKR3iEZ.ttf" + }, + { + "family": "Tac One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tacone/v4/ahcZv8Cj3zw7qDr8fO4hU-FwnU0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tacone/v4/ahcZv8Cj3zw7qDr8TO8rVw.ttf" + }, + { + "family": "Tai Heritage Pro", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "tai-viet", + "vietnamese" + ], + "version": "v6", + "lastModified": "2023-05-31", + "files": { + "regular": "https://fonts.gstatic.com/s/taiheritagepro/v6/sZlfdQid-zgaNiNIYcUzJMU3IYyNoHxSENxuLuE.ttf", + "700": "https://fonts.gstatic.com/s/taiheritagepro/v6/sZlYdQid-zgaNiNIYcUzJMU3IYyNmMB9NNRFMuhjCXY.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/taiheritagepro/v6/sZlfdQid-zgaNiNIYcUzJMU3IYyNkH1YFA.ttf" + }, + { + "family": "Tajawal", + "variants": [ + "200", + "300", + "regular", + "500", + "700", + "800", + "900" + ], + "subsets": [ + "arabic", + "latin" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/tajawal/v10/Iurf6YBj_oCad4k1l_6gLrZjiLlJ-G0.ttf", + "300": "https://fonts.gstatic.com/s/tajawal/v10/Iurf6YBj_oCad4k1l5qjLrZjiLlJ-G0.ttf", + "regular": "https://fonts.gstatic.com/s/tajawal/v10/Iura6YBj_oCad4k1rzaLCr5IlLA.ttf", + "500": "https://fonts.gstatic.com/s/tajawal/v10/Iurf6YBj_oCad4k1l8KiLrZjiLlJ-G0.ttf", + "700": "https://fonts.gstatic.com/s/tajawal/v10/Iurf6YBj_oCad4k1l4qkLrZjiLlJ-G0.ttf", + "800": "https://fonts.gstatic.com/s/tajawal/v10/Iurf6YBj_oCad4k1l5anLrZjiLlJ-G0.ttf", + "900": "https://fonts.gstatic.com/s/tajawal/v10/Iurf6YBj_oCad4k1l7KmLrZjiLlJ-G0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tajawal/v10/Iura6YBj_oCad4k1nzeBDg.ttf" + }, + { + "family": "Tangerine", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tangerine/v17/IurY6Y5j_oScZZow4VOBDpxNhLBQ4Q.ttf", + "700": "https://fonts.gstatic.com/s/tangerine/v17/Iurd6Y5j_oScZZow4VO5srNpjJtM6G0t9w.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tangerine/v17/IurY6Y5j_oScZZow4VOxD5ZJ.ttf" + }, + { + "family": "Tapestry", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v4", + "lastModified": "2023-08-25", + "files": { + "regular": "https://fonts.gstatic.com/s/tapestry/v4/SlGTmQecrosEYXhaGBIkqnB6aSQU.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tapestry/v4/SlGTmQecrosEYXhaGCIloHQ.ttf" + }, + { + "family": "Taprom", + "variants": [ + "regular" + ], + "subsets": [ + "khmer", + "latin" + ], + "version": "v27", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/taprom/v27/UcCn3F82JHycULbFQyk3-0kvHg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/taprom/v27/UcCn3F82JHycULb1QiMz.ttf" + }, + { + "family": "Tauri", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tauri/v18/TwMA-IISS0AM3IpVWHU_TBqO.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tauri/v18/TwMA-IISS0AM3LpUUnE.ttf" + }, + { + "family": "Taviraj", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/taviraj/v13/ahcbv8Cj3ylylTXzRIorV8N1jU2gog.ttf", + "100italic": "https://fonts.gstatic.com/s/taviraj/v13/ahcdv8Cj3ylylTXzTOwTM8lxr0iwolLl.ttf", + "200": "https://fonts.gstatic.com/s/taviraj/v13/ahccv8Cj3ylylTXzRCYKd-lbgUS5u0s.ttf", + "200italic": "https://fonts.gstatic.com/s/taviraj/v13/ahcev8Cj3ylylTXzTOwTn-hRhWa8q0v8ag.ttf", + "300": "https://fonts.gstatic.com/s/taviraj/v13/ahccv8Cj3ylylTXzREIJd-lbgUS5u0s.ttf", + "300italic": "https://fonts.gstatic.com/s/taviraj/v13/ahcev8Cj3ylylTXzTOwT--tRhWa8q0v8ag.ttf", + "regular": "https://fonts.gstatic.com/s/taviraj/v13/ahcZv8Cj3ylylTXzfO4hU-FwnU0.ttf", + "italic": "https://fonts.gstatic.com/s/taviraj/v13/ahcbv8Cj3ylylTXzTOwrV8N1jU2gog.ttf", + "500": "https://fonts.gstatic.com/s/taviraj/v13/ahccv8Cj3ylylTXzRBoId-lbgUS5u0s.ttf", + "500italic": "https://fonts.gstatic.com/s/taviraj/v13/ahcev8Cj3ylylTXzTOwTo-pRhWa8q0v8ag.ttf", + "600": "https://fonts.gstatic.com/s/taviraj/v13/ahccv8Cj3ylylTXzRDYPd-lbgUS5u0s.ttf", + "600italic": "https://fonts.gstatic.com/s/taviraj/v13/ahcev8Cj3ylylTXzTOwTj-1RhWa8q0v8ag.ttf", + "700": "https://fonts.gstatic.com/s/taviraj/v13/ahccv8Cj3ylylTXzRFIOd-lbgUS5u0s.ttf", + "700italic": "https://fonts.gstatic.com/s/taviraj/v13/ahcev8Cj3ylylTXzTOwT6-xRhWa8q0v8ag.ttf", + "800": "https://fonts.gstatic.com/s/taviraj/v13/ahccv8Cj3ylylTXzRE4Nd-lbgUS5u0s.ttf", + "800italic": "https://fonts.gstatic.com/s/taviraj/v13/ahcev8Cj3ylylTXzTOwT9-9RhWa8q0v8ag.ttf", + "900": "https://fonts.gstatic.com/s/taviraj/v13/ahccv8Cj3ylylTXzRGoMd-lbgUS5u0s.ttf", + "900italic": "https://fonts.gstatic.com/s/taviraj/v13/ahcev8Cj3ylylTXzTOwT0-5RhWa8q0v8ag.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/taviraj/v13/ahcZv8Cj3ylylTXzTO8rVw.ttf" + }, + { + "family": "Teachers", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/teachers/v4/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBr3powY55O4AS32A.ttf", + "500": "https://fonts.gstatic.com/s/teachers/v4/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBr7JowY55O4AS32A.ttf", + "600": "https://fonts.gstatic.com/s/teachers/v4/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBrAJ0wY55O4AS32A.ttf", + "700": "https://fonts.gstatic.com/s/teachers/v4/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBrOZ0wY55O4AS32A.ttf", + "800": "https://fonts.gstatic.com/s/teachers/v4/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBrXp0wY55O4AS32A.ttf", + "italic": "https://fonts.gstatic.com/s/teachers/v4/H4c3BXKVncXVmUGsgRY40rCwdnYr0Dd-FtnYIJRKwgGn2JLo.ttf", + "500italic": "https://fonts.gstatic.com/s/teachers/v4/H4c3BXKVncXVmUGsgRY40rCwdnYr0Dd-FtnqIJRKwgGn2JLo.ttf", + "600italic": "https://fonts.gstatic.com/s/teachers/v4/H4c3BXKVncXVmUGsgRY40rCwdnYr0Dd-FtkGJ5RKwgGn2JLo.ttf", + "700italic": "https://fonts.gstatic.com/s/teachers/v4/H4c3BXKVncXVmUGsgRY40rCwdnYr0Dd-Ftk_J5RKwgGn2JLo.ttf", + "800italic": "https://fonts.gstatic.com/s/teachers/v4/H4c3BXKVncXVmUGsgRY40rCwdnYr0Dd-FtlYJ5RKwgGn2JLo.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/teachers/v4/H4c5BXKVncXVmUGsgTwx4E9oHx2xfjBr3poAYpRK.ttf" + }, + { + "family": "Teko", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/teko/v20/LYjYdG7kmE0gV69VVPPdFl06VN9JG7Sy3TKEvkCF.ttf", + "regular": "https://fonts.gstatic.com/s/teko/v20/LYjYdG7kmE0gV69VVPPdFl06VN8XG7Sy3TKEvkCF.ttf", + "500": "https://fonts.gstatic.com/s/teko/v20/LYjYdG7kmE0gV69VVPPdFl06VN8lG7Sy3TKEvkCF.ttf", + "600": "https://fonts.gstatic.com/s/teko/v20/LYjYdG7kmE0gV69VVPPdFl06VN_JHLSy3TKEvkCF.ttf", + "700": "https://fonts.gstatic.com/s/teko/v20/LYjYdG7kmE0gV69VVPPdFl06VN_wHLSy3TKEvkCF.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/teko/v20/LYjYdG7kmE0gV69VVPPdFl06VN8XG4Sz1zY.ttf" + }, + { + "family": "Tektur", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tektur/v3/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TrwuVYtOY8P7TWd0.ttf", + "500": "https://fonts.gstatic.com/s/tektur/v3/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TrwcVYtOY8P7TWd0.ttf", + "600": "https://fonts.gstatic.com/s/tektur/v3/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TrzwUotOY8P7TWd0.ttf", + "700": "https://fonts.gstatic.com/s/tektur/v3/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TrzJUotOY8P7TWd0.ttf", + "800": "https://fonts.gstatic.com/s/tektur/v3/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TryuUotOY8P7TWd0.ttf", + "900": "https://fonts.gstatic.com/s/tektur/v3/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TryHUotOY8P7TWd0.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tektur/v3/XoHN2YHtS7q969kXCjzlV0aSkS_o8OacmTe0TYlYFot8TrwuVbtPacc.ttf" + }, + { + "family": "Telex", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/telex/v17/ieVw2Y1fKWmIO9fTB1piKFIf.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/telex/v17/ieVw2Y1fKWmIO-fSDV4.ttf" + }, + { + "family": "Tenali Ramakrishna", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v12", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/tenaliramakrishna/v12/raxgHj6Yt9gAN3LLKs0BZVMo8jmwn1-8KJXqUFFvtA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tenaliramakrishna/v12/raxgHj6Yt9gAN3LLKs0BZVMo8jmwn1-MKZ_u.ttf" + }, + { + "family": "Tenor Sans", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tenorsans/v19/bx6ANxqUneKx06UkIXISr3JyC22IyqI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tenorsans/v19/bx6ANxqUneKx06UkIXISn3N4Dw.ttf" + }, + { + "family": "Text Me One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/textmeone/v24/i7dOIFdlayuLUvgoFvHQFWZcalayGhyV.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/textmeone/v24/i7dOIFdlayuLUvgoFvHQFVZdYFI.ttf" + }, + { + "family": "Texturina", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/texturina/v28/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eYG_Ug25riW1OD.ttf", + "200": "https://fonts.gstatic.com/s/texturina/v28/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cYGvUg25riW1OD.ttf", + "300": "https://fonts.gstatic.com/s/texturina/v28/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2fGGvUg25riW1OD.ttf", + "regular": "https://fonts.gstatic.com/s/texturina/v28/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eYGvUg25riW1OD.ttf", + "500": "https://fonts.gstatic.com/s/texturina/v28/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eqGvUg25riW1OD.ttf", + "600": "https://fonts.gstatic.com/s/texturina/v28/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2dGHfUg25riW1OD.ttf", + "700": "https://fonts.gstatic.com/s/texturina/v28/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2d_HfUg25riW1OD.ttf", + "800": "https://fonts.gstatic.com/s/texturina/v28/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cYHfUg25riW1OD.ttf", + "900": "https://fonts.gstatic.com/s/texturina/v28/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2cxHfUg25riW1OD.ttf", + "100italic": "https://fonts.gstatic.com/s/texturina/v28/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWR1i0Z7AXkODN94.ttf", + "200italic": "https://fonts.gstatic.com/s/texturina/v28/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWZ1j0Z7AXkODN94.ttf", + "300italic": "https://fonts.gstatic.com/s/texturina/v28/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWUNj0Z7AXkODN94.ttf", + "italic": "https://fonts.gstatic.com/s/texturina/v28/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWR1j0Z7AXkODN94.ttf", + "500italic": "https://fonts.gstatic.com/s/texturina/v28/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWS9j0Z7AXkODN94.ttf", + "600italic": "https://fonts.gstatic.com/s/texturina/v28/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWcNk0Z7AXkODN94.ttf", + "700italic": "https://fonts.gstatic.com/s/texturina/v28/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWfpk0Z7AXkODN94.ttf", + "800italic": "https://fonts.gstatic.com/s/texturina/v28/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWZ1k0Z7AXkODN94.ttf", + "900italic": "https://fonts.gstatic.com/s/texturina/v28/c4mO1nxpEtL3pXiAulR5mL129FhZmLj7I4oiSUJyfYDu7sB5zHJQWbRk0Z7AXkODN94.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/texturina/v28/c4mM1nxpEtL3pXiAulRTkY-HGmNEX1b9NspjMwhAgliHhVrXy2eYGsUh0Z4.ttf" + }, + { + "family": "Thasadith", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/thasadith/v11/mtG44_1TIqPYrd_f5R1YsEkU0CWuFw.ttf", + "italic": "https://fonts.gstatic.com/s/thasadith/v11/mtG-4_1TIqPYrd_f5R1oskMQ8iC-F1ZE.ttf", + "700": "https://fonts.gstatic.com/s/thasadith/v11/mtG94_1TIqPYrd_f5R1gDGYw2A6yHk9d8w.ttf", + "700italic": "https://fonts.gstatic.com/s/thasadith/v11/mtGj4_1TIqPYrd_f5R1osnus3QS2PEpN8zxA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/thasadith/v11/mtG44_1TIqPYrd_f5R1osUMQ.ttf" + }, + { + "family": "The Girl Next Door", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/thegirlnextdoor/v22/pe0zMJCIMIsBjFxqYBIcZ6_OI5oFHCYIV7t7w6bE2A.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/thegirlnextdoor/v22/pe0zMJCIMIsBjFxqYBIcZ6_OI5oFHCY4VrF_.ttf" + }, + { + "family": "The Nautigal", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/thenautigal/v6/VdGZAZ8ZH51Lvng9fQV2bfKr5wVk09Se5Q.ttf", + "700": "https://fonts.gstatic.com/s/thenautigal/v6/VdGGAZ8ZH51Lvng9fQV2bfKTWypA2_-C7LoS7g.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/thenautigal/v6/VdGZAZ8ZH51Lvng9fQV2bfKb5g9g.ttf" + }, + { + "family": "Tienne", + "variants": [ + "regular", + "700", + "900" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tienne/v20/AYCKpX7pe9YCRP0LkEPHSFNyxw.ttf", + "700": "https://fonts.gstatic.com/s/tienne/v20/AYCJpX7pe9YCRP0zLGzjQHhuzvef5Q.ttf", + "900": "https://fonts.gstatic.com/s/tienne/v20/AYCJpX7pe9YCRP0zFG7jQHhuzvef5Q.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tienne/v20/AYCKpX7pe9YCRP07kUnD.ttf" + }, + { + "family": "Tillana", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tillana/v13/VuJxdNvf35P4qJ1OeKbXOIFneRo.ttf", + "500": "https://fonts.gstatic.com/s/tillana/v13/VuJ0dNvf35P4qJ1OQFL-HIlMZRNcp0o.ttf", + "600": "https://fonts.gstatic.com/s/tillana/v13/VuJ0dNvf35P4qJ1OQH75HIlMZRNcp0o.ttf", + "700": "https://fonts.gstatic.com/s/tillana/v13/VuJ0dNvf35P4qJ1OQBr4HIlMZRNcp0o.ttf", + "800": "https://fonts.gstatic.com/s/tillana/v13/VuJ0dNvf35P4qJ1OQAb7HIlMZRNcp0o.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tillana/v13/VuJxdNvf35P4qJ1OSKfdPA.ttf" + }, + { + "family": "Tilt Neon", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tiltneon/v10/E21L_d7gguXdwD9LEFY2WCeElCNtd-eBqpHp1TzrkJSmwpj5ndxquXK9WualJ9DS.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tiltneon/v10/E21L_d7gguXdwD9LEFY2WCeElCNtd-eBqpHp1TzrkJSmwpj5ndxquUK8UOI.ttf" + }, + { + "family": "Tilt Prism", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tiltprism/v11/5h11iZgyPHoZ3YikNzWGfWey2dCAZXT-bH9V4VGn-FJ7tLI25oc_rIbwoTSrn86NKw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tiltprism/v11/5h11iZgyPHoZ3YikNzWGfWey2dCAZXT-bH9V4VGn-FJ7tLI25oc_rIbAoD6v.ttf" + }, + { + "family": "Tilt Warp", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tiltwarp/v12/AlZc_zVDs5XpmO7yn3w7flUoytXJp3z29uEwmEMLEJljLXvT8UJSZTBxAVfMGOPb.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tiltwarp/v12/AlZc_zVDs5XpmO7yn3w7flUoytXJp3z29uEwmEMLEJljLXvT8UJSZQBwC1M.ttf" + }, + { + "family": "Timmana", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "telugu" + ], + "version": "v12", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/timmana/v12/6xKvdShfL9yK-rvpCmvbKHwJUOM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/timmana/v12/6xKvdShfL9yK-rvpOmrRLA.ttf" + }, + { + "family": "Tinos", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "hebrew", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tinos/v24/buE4poGnedXvwgX8dGVh8TI-.ttf", + "italic": "https://fonts.gstatic.com/s/tinos/v24/buE2poGnedXvwjX-fmFD9CI-4NU.ttf", + "700": "https://fonts.gstatic.com/s/tinos/v24/buE1poGnedXvwj1AW0Fp2i43-cxL.ttf", + "700italic": "https://fonts.gstatic.com/s/tinos/v24/buEzpoGnedXvwjX-Rt1s0CoV_NxLeiw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tinos/v24/buE4poGnedXvwjX9fmE.ttf" + }, + { + "family": "Tiny5", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tiny5/v1/KFOpCnmCvdGT7hw-z0hHAi88.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tiny5/v1/KFOpCnmCvdGT7iw_xUw.ttf" + }, + { + "family": "Tiro Bangla", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "bengali", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tirobangla/v6/IFSgHe1Tm95E3O8b5i2V8MG9-UPeuz4i.ttf", + "italic": "https://fonts.gstatic.com/s/tirobangla/v6/IFSiHe1Tm95E3O8b5i2V8PG_80f8vi4imBM.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tirobangla/v6/IFSgHe1Tm95E3O8b5i2V8PG880c.ttf" + }, + { + "family": "Tiro Devanagari Hindi", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tirodevanagarihindi/v5/55xyezN7P8T4e0_CfIJrwdodg9HoYw0i-M9fSOkOfG0Y3A.ttf", + "italic": "https://fonts.gstatic.com/s/tirodevanagarihindi/v5/55x8ezN7P8T4e0_CfIJrwdodg9HoYw0i-M9vSuMKXmgI3F_o.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tirodevanagarihindi/v5/55xyezN7P8T4e0_CfIJrwdodg9HoYw0i-M9vSeMK.ttf" + }, + { + "family": "Tiro Devanagari Marathi", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1xPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkotDrDJYM2lAZ.ttf", + "italic": "https://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1zPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkouDpBpIu30AZbUY.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1xPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkouDqBpI.ttf" + }, + { + "family": "Tiro Devanagari Sanskrit", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoAzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59pEoEqgtOh0w.ttf", + "italic": "https://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoGzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59ZEIsuoNax06MM.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoAzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59ZE4su.ttf" + }, + { + "family": "Tiro Gurmukhi", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "gurmukhi", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tirogurmukhi/v6/x3dmckXSYq-Uqjc048JUF7Jvly7HAQsyA2Y.ttf", + "italic": "https://fonts.gstatic.com/s/tirogurmukhi/v6/x3d4ckXSYq-Uqjc048JUF7JvpyzNBSk3E2YljQ.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tirogurmukhi/v6/x3dmckXSYq-Uqjc048JUF7Jvpy_NBQ.ttf" + }, + { + "family": "Tiro Kannada", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "kannada", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tirokannada/v6/CSR44ztKmvqaDxEDJFY7CIYKSPl6tOU9Eg.ttf", + "italic": "https://fonts.gstatic.com/s/tirokannada/v6/CSRm4ztKmvqaDxEDJFY7CIY6SvN-luAtEnKp.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tirokannada/v6/CSR44ztKmvqaDxEDJFY7CIY6SfN-.ttf" + }, + { + "family": "Tiro Tamil", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext", + "tamil" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tirotamil/v10/m8JXjfVIf7OT22n3M-S_ULRvamODxdI.ttf", + "italic": "https://fonts.gstatic.com/s/tirotamil/v10/m8JVjfVIf7OT22n3M-S_YLZlbkGG1dKEDw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tirotamil/v10/m8JXjfVIf7OT22n3M-S_YLVlbg.ttf" + }, + { + "family": "Tiro Telugu", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext", + "telugu" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tirotelugu/v7/aFTQ7PxlZWk2EPiSymjXdKSNQqn0X0BO.ttf", + "italic": "https://fonts.gstatic.com/s/tirotelugu/v7/aFTS7PxlZWk2EPiSymjXdJSPSK3WWlBOoas.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tirotelugu/v7/aFTQ7PxlZWk2EPiSymjXdJSMSK0.ttf" + }, + { + "family": "Titan One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/titanone/v15/mFTzWbsGxbbS_J5cQcjykzIn2Etikg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/titanone/v15/mFTzWbsGxbbS_J5cQcjCkjgj.ttf" + }, + { + "family": "Titillium Web", + "variants": [ + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "600", + "600italic", + "700", + "700italic", + "900" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPDcZTIAOhVxoMyOr9n_E7ffAzHKIx5YrSYqWM.ttf", + "200italic": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPFcZTIAOhVxoMyOr9n_E7fdMbewI1zZpaduWMmxA.ttf", + "300": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPDcZTIAOhVxoMyOr9n_E7ffGjEKIx5YrSYqWM.ttf", + "300italic": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPFcZTIAOhVxoMyOr9n_E7fdMbepI5zZpaduWMmxA.ttf", + "regular": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPecZTIAOhVxoMyOr9n_E7fRMTsDIRSfr0.ttf", + "italic": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPAcZTIAOhVxoMyOr9n_E7fdMbmCKZXbr2BsA.ttf", + "600": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPDcZTIAOhVxoMyOr9n_E7ffBzCKIx5YrSYqWM.ttf", + "600italic": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPFcZTIAOhVxoMyOr9n_E7fdMbe0IhzZpaduWMmxA.ttf", + "700": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPDcZTIAOhVxoMyOr9n_E7ffHjDKIx5YrSYqWM.ttf", + "700italic": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPFcZTIAOhVxoMyOr9n_E7fdMbetIlzZpaduWMmxA.ttf", + "900": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPDcZTIAOhVxoMyOr9n_E7ffEDBKIx5YrSYqWM.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/titilliumweb/v17/NaPecZTIAOhVxoMyOr9n_E7fdMXmCA.ttf" + }, + { + "family": "Tomorrow", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/tomorrow/v17/WBLgrETNbFtZCeGqgR2xe2XiKMiokE4.ttf", + "100italic": "https://fonts.gstatic.com/s/tomorrow/v17/WBLirETNbFtZCeGqgRXXQwHoLOqtgE5h0A.ttf", + "200": "https://fonts.gstatic.com/s/tomorrow/v17/WBLhrETNbFtZCeGqgR0dWkXIBsShiVd4.ttf", + "200italic": "https://fonts.gstatic.com/s/tomorrow/v17/WBLjrETNbFtZCeGqgRXXQ63JDMCDjEd4yVY.ttf", + "300": "https://fonts.gstatic.com/s/tomorrow/v17/WBLhrETNbFtZCeGqgR15WUXIBsShiVd4.ttf", + "300italic": "https://fonts.gstatic.com/s/tomorrow/v17/WBLjrETNbFtZCeGqgRXXQ8nKDMCDjEd4yVY.ttf", + "regular": "https://fonts.gstatic.com/s/tomorrow/v17/WBLmrETNbFtZCeGqgSXVcWHALdio.ttf", + "italic": "https://fonts.gstatic.com/s/tomorrow/v17/WBLgrETNbFtZCeGqgRXXe2XiKMiokE4.ttf", + "500": "https://fonts.gstatic.com/s/tomorrow/v17/WBLhrETNbFtZCeGqgR0hWEXIBsShiVd4.ttf", + "500italic": "https://fonts.gstatic.com/s/tomorrow/v17/WBLjrETNbFtZCeGqgRXXQ5HLDMCDjEd4yVY.ttf", + "600": "https://fonts.gstatic.com/s/tomorrow/v17/WBLhrETNbFtZCeGqgR0NX0XIBsShiVd4.ttf", + "600italic": "https://fonts.gstatic.com/s/tomorrow/v17/WBLjrETNbFtZCeGqgRXXQ73MDMCDjEd4yVY.ttf", + "700": "https://fonts.gstatic.com/s/tomorrow/v17/WBLhrETNbFtZCeGqgR1pXkXIBsShiVd4.ttf", + "700italic": "https://fonts.gstatic.com/s/tomorrow/v17/WBLjrETNbFtZCeGqgRXXQ9nNDMCDjEd4yVY.ttf", + "800": "https://fonts.gstatic.com/s/tomorrow/v17/WBLhrETNbFtZCeGqgR11XUXIBsShiVd4.ttf", + "800italic": "https://fonts.gstatic.com/s/tomorrow/v17/WBLjrETNbFtZCeGqgRXXQ8XODMCDjEd4yVY.ttf", + "900": "https://fonts.gstatic.com/s/tomorrow/v17/WBLhrETNbFtZCeGqgR1RXEXIBsShiVd4.ttf", + "900italic": "https://fonts.gstatic.com/s/tomorrow/v17/WBLjrETNbFtZCeGqgRXXQ-HPDMCDjEd4yVY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tomorrow/v17/WBLmrETNbFtZCeGqgRXUe2U.ttf" + }, + { + "family": "Tourney", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/tourney/v13/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GOQByZTp1I1LcGA.ttf", + "200": "https://fonts.gstatic.com/s/tourney/v13/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GuQFyZTp1I1LcGA.ttf", + "300": "https://fonts.gstatic.com/s/tourney/v13/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GZwFyZTp1I1LcGA.ttf", + "regular": "https://fonts.gstatic.com/s/tourney/v13/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GOQFyZTp1I1LcGA.ttf", + "500": "https://fonts.gstatic.com/s/tourney/v13/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GCwFyZTp1I1LcGA.ttf", + "600": "https://fonts.gstatic.com/s/tourney/v13/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7G5wZyZTp1I1LcGA.ttf", + "700": "https://fonts.gstatic.com/s/tourney/v13/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7G3gZyZTp1I1LcGA.ttf", + "800": "https://fonts.gstatic.com/s/tourney/v13/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GuQZyZTp1I1LcGA.ttf", + "900": "https://fonts.gstatic.com/s/tourney/v13/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GkAZyZTp1I1LcGA.ttf", + "100italic": "https://fonts.gstatic.com/s/tourney/v13/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKaJzBxAVfMGOPb.ttf", + "200italic": "https://fonts.gstatic.com/s/tourney/v13/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIaJjBxAVfMGOPb.ttf", + "300italic": "https://fonts.gstatic.com/s/tourney/v13/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8ULEJjBxAVfMGOPb.ttf", + "italic": "https://fonts.gstatic.com/s/tourney/v13/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKaJjBxAVfMGOPb.ttf", + "500italic": "https://fonts.gstatic.com/s/tourney/v13/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UKoJjBxAVfMGOPb.ttf", + "600italic": "https://fonts.gstatic.com/s/tourney/v13/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UJEITBxAVfMGOPb.ttf", + "700italic": "https://fonts.gstatic.com/s/tourney/v13/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UJ9ITBxAVfMGOPb.ttf", + "800italic": "https://fonts.gstatic.com/s/tourney/v13/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIaITBxAVfMGOPb.ttf", + "900italic": "https://fonts.gstatic.com/s/tourney/v13/AlZc_ztDtYzv1tzq_Q47flUUvI2wpXz29ilymEMLMNc3XHnT8UIzITBxAVfMGOPb.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tourney/v13/AlZa_ztDtYzv1tzq1wcJnbVt7xseomk-tNs7qrzTWbyt8n7GOQFCZDBx.ttf" + }, + { + "family": "Trade Winds", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tradewinds/v17/AYCPpXPpYNIIT7h8-QenM3Jq7PKP5Z_G.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tradewinds/v17/AYCPpXPpYNIIT7h8-QenM0Jr5vY.ttf" + }, + { + "family": "Train One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/trainone/v14/gyB-hwkiNtc6KnxUVjWHOqbZRY7JVQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/trainone/v14/gyB-hwkiNtc6KnxUVjW3O6zd.ttf" + }, + { + "family": "Trirong", + "variants": [ + "100", + "100italic", + "200", + "200italic", + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic", + "900", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "thai", + "vietnamese" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/trirong/v15/7r3EqXNgp8wxdOdOl-go3YRl6ujngw.ttf", + "100italic": "https://fonts.gstatic.com/s/trirong/v15/7r3CqXNgp8wxdOdOn44QuY5hyO33g8IY.ttf", + "200": "https://fonts.gstatic.com/s/trirong/v15/7r3DqXNgp8wxdOdOl0QJ_a5L5uH-mts.ttf", + "200italic": "https://fonts.gstatic.com/s/trirong/v15/7r3BqXNgp8wxdOdOn44QFa9B4sP7itsB5g.ttf", + "300": "https://fonts.gstatic.com/s/trirong/v15/7r3DqXNgp8wxdOdOlyAK_a5L5uH-mts.ttf", + "300italic": "https://fonts.gstatic.com/s/trirong/v15/7r3BqXNgp8wxdOdOn44QcaxB4sP7itsB5g.ttf", + "regular": "https://fonts.gstatic.com/s/trirong/v15/7r3GqXNgp8wxdOdOr4wi2aZg-ug.ttf", + "italic": "https://fonts.gstatic.com/s/trirong/v15/7r3EqXNgp8wxdOdOn44o3YRl6ujngw.ttf", + "500": "https://fonts.gstatic.com/s/trirong/v15/7r3DqXNgp8wxdOdOl3gL_a5L5uH-mts.ttf", + "500italic": "https://fonts.gstatic.com/s/trirong/v15/7r3BqXNgp8wxdOdOn44QKa1B4sP7itsB5g.ttf", + "600": "https://fonts.gstatic.com/s/trirong/v15/7r3DqXNgp8wxdOdOl1QM_a5L5uH-mts.ttf", + "600italic": "https://fonts.gstatic.com/s/trirong/v15/7r3BqXNgp8wxdOdOn44QBapB4sP7itsB5g.ttf", + "700": "https://fonts.gstatic.com/s/trirong/v15/7r3DqXNgp8wxdOdOlzAN_a5L5uH-mts.ttf", + "700italic": "https://fonts.gstatic.com/s/trirong/v15/7r3BqXNgp8wxdOdOn44QYatB4sP7itsB5g.ttf", + "800": "https://fonts.gstatic.com/s/trirong/v15/7r3DqXNgp8wxdOdOlywO_a5L5uH-mts.ttf", + "800italic": "https://fonts.gstatic.com/s/trirong/v15/7r3BqXNgp8wxdOdOn44QfahB4sP7itsB5g.ttf", + "900": "https://fonts.gstatic.com/s/trirong/v15/7r3DqXNgp8wxdOdOlwgP_a5L5uH-mts.ttf", + "900italic": "https://fonts.gstatic.com/s/trirong/v15/7r3BqXNgp8wxdOdOn44QWalB4sP7itsB5g.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/trirong/v15/7r3GqXNgp8wxdOdOn40o3Q.ttf" + }, + { + "family": "Trispace", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v24", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/trispace/v24/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbH9qoQl0zHugpt0.ttf", + "200": "https://fonts.gstatic.com/s/trispace/v24/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbP9roQl0zHugpt0.ttf", + "300": "https://fonts.gstatic.com/s/trispace/v24/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbCFroQl0zHugpt0.ttf", + "regular": "https://fonts.gstatic.com/s/trispace/v24/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbH9roQl0zHugpt0.ttf", + "500": "https://fonts.gstatic.com/s/trispace/v24/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbE1roQl0zHugpt0.ttf", + "600": "https://fonts.gstatic.com/s/trispace/v24/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbKFsoQl0zHugpt0.ttf", + "700": "https://fonts.gstatic.com/s/trispace/v24/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbJhsoQl0zHugpt0.ttf", + "800": "https://fonts.gstatic.com/s/trispace/v24/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbP9soQl0zHugpt0.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/trispace/v24/Yq65-LKSQC3o56LxxgRrtA6yBqsrXL5GI5KI-IUZVGsxWFIlbH9rkQh-yA.ttf" + }, + { + "family": "Trocchi", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/trocchi/v17/qWcqB6WkuIDxDZLcDrtUvMeTYD0.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/trocchi/v17/qWcqB6WkuIDxDZLcPrpeuA.ttf" + }, + { + "family": "Trochut", + "variants": [ + "regular", + "italic", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/trochut/v22/CHyjV-fDDlP9bDIw5nSIfVIPLns.ttf", + "italic": "https://fonts.gstatic.com/s/trochut/v22/CHyhV-fDDlP9bDIw1naCeXAKPns8jw.ttf", + "700": "https://fonts.gstatic.com/s/trochut/v22/CHymV-fDDlP9bDIw3sinWVokMnIllmA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/trochut/v22/CHyjV-fDDlP9bDIw1nWCeQ.ttf" + }, + { + "family": "Truculenta", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMlAjswcFHnJMMhg.ttf", + "200": "https://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMtAiswcFHnJMMhg.ttf", + "300": "https://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMg4iswcFHnJMMhg.ttf", + "regular": "https://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMlAiswcFHnJMMhg.ttf", + "500": "https://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMmIiswcFHnJMMhg.ttf", + "600": "https://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMo4lswcFHnJMMhg.ttf", + "700": "https://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMrclswcFHnJMMhg.ttf", + "800": "https://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMtAlswcFHnJMMhg.ttf", + "900": "https://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMvklswcFHnJMMhg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/truculenta/v22/LhWfMVvBKusVIfNYGi1-WvRVyDdZeeiySNppcu32Mb2f06y6Oa21F6XHi0VYDX_PzOupMlAigwYPGg.ttf" + }, + { + "family": "Trykker", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/trykker/v21/KtktALyWZJXudUPzhNnoOd2j22U.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/trykker/v21/KtktALyWZJXudUPztNjiPQ.ttf" + }, + { + "family": "Tsukimi Rounded", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-08-07", + "files": { + "300": "https://fonts.gstatic.com/s/tsukimirounded/v11/sJoZ3LJNksWZO0LvnZwkF3HtoB7VkVsqN7MT3T9X8g.ttf", + "regular": "https://fonts.gstatic.com/s/tsukimirounded/v11/sJoc3LJNksWZO0LvnZwkF3HtoB7tPXMOP5gP1A.ttf", + "500": "https://fonts.gstatic.com/s/tsukimirounded/v11/sJoZ3LJNksWZO0LvnZwkF3HtoB7VyVoqN7MT3T9X8g.ttf", + "600": "https://fonts.gstatic.com/s/tsukimirounded/v11/sJoZ3LJNksWZO0LvnZwkF3HtoB7V5V0qN7MT3T9X8g.ttf", + "700": "https://fonts.gstatic.com/s/tsukimirounded/v11/sJoZ3LJNksWZO0LvnZwkF3HtoB7VgVwqN7MT3T9X8g.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tsukimirounded/v11/sJoc3LJNksWZO0LvnZwkF3HtoB7dPHkK.ttf" + }, + { + "family": "Tulpen One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v25", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/tulpenone/v25/dFa6ZfeC474skLgesc0CWj0w_HyIRlE.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/tulpenone/v25/dFa6ZfeC474skLgesc0Cajw6-A.ttf" + }, + { + "family": "Turret Road", + "variants": [ + "200", + "300", + "regular", + "500", + "700", + "800" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/turretroad/v9/pxidypMgpcBFjE84Zv-fE0ONEdeLYk1Mq3ap.ttf", + "300": "https://fonts.gstatic.com/s/turretroad/v9/pxidypMgpcBFjE84Zv-fE0PpEteLYk1Mq3ap.ttf", + "regular": "https://fonts.gstatic.com/s/turretroad/v9/pxiAypMgpcBFjE84Zv-fE3tFOvODSVFF.ttf", + "500": "https://fonts.gstatic.com/s/turretroad/v9/pxidypMgpcBFjE84Zv-fE0OxE9eLYk1Mq3ap.ttf", + "700": "https://fonts.gstatic.com/s/turretroad/v9/pxidypMgpcBFjE84Zv-fE0P5FdeLYk1Mq3ap.ttf", + "800": "https://fonts.gstatic.com/s/turretroad/v9/pxidypMgpcBFjE84Zv-fE0PlFteLYk1Mq3ap.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/turretroad/v9/pxiAypMgpcBFjE84Zv-fE0tEMPc.ttf" + }, + { + "family": "Twinkle Star", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/twinklestar/v6/pe0pMI6IL4dPoFl9LGEmY6WaA_Rue1UwVg.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/twinklestar/v6/pe0pMI6IL4dPoFl9LGEmY6WqAv5q.ttf" + }, + { + "family": "Ubuntu", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/ubuntu/v20/4iCv6KVjbNBYlgoC1CzTt2aMH4V_gg.ttf", + "300italic": "https://fonts.gstatic.com/s/ubuntu/v20/4iCp6KVjbNBYlgoKejZftWyIPYBvgpUI.ttf", + "regular": "https://fonts.gstatic.com/s/ubuntu/v20/4iCs6KVjbNBYlgo6eAT3v02QFg.ttf", + "italic": "https://fonts.gstatic.com/s/ubuntu/v20/4iCu6KVjbNBYlgoKeg7znUiAFpxm.ttf", + "500": "https://fonts.gstatic.com/s/ubuntu/v20/4iCv6KVjbNBYlgoCjC3Tt2aMH4V_gg.ttf", + "500italic": "https://fonts.gstatic.com/s/ubuntu/v20/4iCp6KVjbNBYlgoKejYHtGyIPYBvgpUI.ttf", + "700": "https://fonts.gstatic.com/s/ubuntu/v20/4iCv6KVjbNBYlgoCxCvTt2aMH4V_gg.ttf", + "700italic": "https://fonts.gstatic.com/s/ubuntu/v20/4iCp6KVjbNBYlgoKejZPsmyIPYBvgpUI.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ubuntu/v20/4iCs6KVjbNBYlgoKeQ7z.ttf" + }, + { + "family": "Ubuntu Condensed", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ubuntucondensed/v16/u-4k0rCzjgs5J7oXnJcM_0kACGMtf-fVqvHoJXw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ubuntucondensed/v16/u-4k0rCzjgs5J7oXnJcM_0kACGMtT-bfrg.ttf" + }, + { + "family": "Ubuntu Mono", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ubuntumono/v17/KFOjCneDtsqEr0keqCMhbBc9AMX6lJBP.ttf", + "italic": "https://fonts.gstatic.com/s/ubuntumono/v17/KFOhCneDtsqEr0keqCMhbCc_CsHYkYBPY3o.ttf", + "700": "https://fonts.gstatic.com/s/ubuntumono/v17/KFO-CneDtsqEr0keqCMhbC-BL-Hyv4xGemO1.ttf", + "700italic": "https://fonts.gstatic.com/s/ubuntumono/v17/KFO8CneDtsqEr0keqCMhbCc_Mn33tYhkf3O1GVg.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ubuntumono/v17/KFOjCneDtsqEr0keqCMhbCc8CsE.ttf" + }, + { + "family": "Ubuntu Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ubuntusans/v2/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbujzt7CfqLVLT9mgk.ttf", + "200": "https://fonts.gstatic.com/s/ubuntusans/v2/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbuj7t6CfqLVLT9mgk.ttf", + "300": "https://fonts.gstatic.com/s/ubuntusans/v2/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbuj2V6CfqLVLT9mgk.ttf", + "regular": "https://fonts.gstatic.com/s/ubuntusans/v2/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbujzt6CfqLVLT9mgk.ttf", + "500": "https://fonts.gstatic.com/s/ubuntusans/v2/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbujwl6CfqLVLT9mgk.ttf", + "600": "https://fonts.gstatic.com/s/ubuntusans/v2/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbuj-V9CfqLVLT9mgk.ttf", + "700": "https://fonts.gstatic.com/s/ubuntusans/v2/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbuj9x9CfqLVLT9mgk.ttf", + "800": "https://fonts.gstatic.com/s/ubuntusans/v2/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbuj7t9CfqLVLT9mgk.ttf", + "100italic": "https://fonts.gstatic.com/s/ubuntusans/v2/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM54biBUJb4iglIHg.ttf", + "200italic": "https://fonts.gstatic.com/s/ubuntusans/v2/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM5YbmBUJb4iglIHg.ttf", + "300italic": "https://fonts.gstatic.com/s/ubuntusans/v2/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM5v7mBUJb4iglIHg.ttf", + "italic": "https://fonts.gstatic.com/s/ubuntusans/v2/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM54bmBUJb4iglIHg.ttf", + "500italic": "https://fonts.gstatic.com/s/ubuntusans/v2/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM507mBUJb4iglIHg.ttf", + "600italic": "https://fonts.gstatic.com/s/ubuntusans/v2/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM5P76BUJb4iglIHg.ttf", + "700italic": "https://fonts.gstatic.com/s/ubuntusans/v2/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM5Br6BUJb4iglIHg.ttf", + "800italic": "https://fonts.gstatic.com/s/ubuntusans/v2/co3mmWd6mSRtB7_9UaLWwLPLmXPrAaRZFVxauS9FrCyI9sOpp8jpmvM5Yb6BUJb4iglIHg.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ubuntusans/v2/co3omWd6mSRtB7_9UaLWwJnCq5ALePfPu1tPcW235R53LqrCPWbujzt6OfuBUA.ttf" + }, + { + "family": "Ubuntu Sans Mono", + "variants": [ + "regular", + "500", + "600", + "700", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "greek-ext", + "latin", + "latin-ext" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ubuntusansmono/v1/jVyc7mzgBHrR5yE7ZyRg0QRJMKI4zAbgjc1t-pKe27Ev_kYRiqcZu3n0.ttf", + "500": "https://fonts.gstatic.com/s/ubuntusansmono/v1/jVyc7mzgBHrR5yE7ZyRg0QRJMKI4zAbgjc1t-pKe27Ed_kYRiqcZu3n0.ttf", + "600": "https://fonts.gstatic.com/s/ubuntusansmono/v1/jVyc7mzgBHrR5yE7ZyRg0QRJMKI4zAbgjc1t-pKe27Hx-UYRiqcZu3n0.ttf", + "700": "https://fonts.gstatic.com/s/ubuntusansmono/v1/jVyc7mzgBHrR5yE7ZyRg0QRJMKI4zAbgjc1t-pKe27HI-UYRiqcZu3n0.ttf", + "italic": "https://fonts.gstatic.com/s/ubuntusansmono/v1/jVyi7mzgBHrR5yE7ZyRg0QRJMKI45g_SchUEkQgw3KTnva5SgKM7vmn0BLE.ttf", + "500italic": "https://fonts.gstatic.com/s/ubuntusansmono/v1/jVyi7mzgBHrR5yE7ZyRg0QRJMKI45g_SchUEkQgw3KTnvZxSgKM7vmn0BLE.ttf", + "600italic": "https://fonts.gstatic.com/s/ubuntusansmono/v1/jVyi7mzgBHrR5yE7ZyRg0QRJMKI45g_SchUEkQgw3KTnvXBVgKM7vmn0BLE.ttf", + "700italic": "https://fonts.gstatic.com/s/ubuntusansmono/v1/jVyi7mzgBHrR5yE7ZyRg0QRJMKI45g_SchUEkQgw3KTnvUlVgKM7vmn0BLE.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ubuntusansmono/v1/jVyc7mzgBHrR5yE7ZyRg0QRJMKI4zAbgjc1t-pKe27Ev_nYQgKM.ttf" + }, + { + "family": "Uchen", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "tibetan" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/uchen/v9/nKKZ-GokGZ1baIaSEQGodLxA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/uchen/v9/nKKZ-GokGZ1baLaTGwU.ttf" + }, + { + "family": "Ultra", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/ultra/v23/zOLy4prXmrtY-tT6yLOD6NxF.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ultra/v23/zOLy4prXmrtY-uT7wrc.ttf" + }, + { + "family": "Unbounded", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v8", + "lastModified": "2024-09-30", + "files": { + "200": "https://fonts.gstatic.com/s/unbounded/v8/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG65jx043HgP6LR0Y.ttf", + "300": "https://fonts.gstatic.com/s/unbounded/v8/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG60bx043HgP6LR0Y.ttf", + "regular": "https://fonts.gstatic.com/s/unbounded/v8/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6xjx043HgP6LR0Y.ttf", + "500": "https://fonts.gstatic.com/s/unbounded/v8/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6yrx043HgP6LR0Y.ttf", + "600": "https://fonts.gstatic.com/s/unbounded/v8/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG68b2043HgP6LR0Y.ttf", + "700": "https://fonts.gstatic.com/s/unbounded/v8/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6__2043HgP6LR0Y.ttf", + "800": "https://fonts.gstatic.com/s/unbounded/v8/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG65j2043HgP6LR0Y.ttf", + "900": "https://fonts.gstatic.com/s/unbounded/v8/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG67H2043HgP6LR0Y.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/unbounded/v8/Yq6F-LOTXCb04q32xlpat-6uR42XTqtG6xjx44zNhA.ttf" + }, + { + "family": "Uncial Antiqua", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/uncialantiqua/v20/N0bM2S5WOex4OUbESzoESK-i-PfRS5VBBSSF.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/uncialantiqua/v20/N0bM2S5WOex4OUbESzoESK-i-MfQQZE.ttf" + }, + { + "family": "Underdog", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/underdog/v23/CHygV-jCElj7diMroVSiU14GN2Il.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/underdog/v23/CHygV-jCElj7diMroWSjWVo.ttf" + }, + { + "family": "Unica One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/unicaone/v18/DPEuYwWHyAYGVTSmalshdtffuEY7FA.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/unicaone/v18/DPEuYwWHyAYGVTSmalsRd93b.ttf" + }, + { + "family": "UnifrakturCook", + "variants": [ + "700" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "700": "https://fonts.gstatic.com/s/unifrakturcook/v23/IurA6Yli8YOdcoky-0PTTdkm56n05Uw13ILXs-h6.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/unifrakturcook/v23/IurA6Yli8YOdcoky-0PTTdkm56n05Xw01oY.ttf" + }, + { + "family": "UnifrakturMaguntia", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/unifrakturmaguntia/v20/WWXPlieVYwiGNomYU-ciRLRvEmK7oaVun2xNNgNa1A.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/unifrakturmaguntia/v20/WWXPlieVYwiGNomYU-ciRLRvEmK7oaVenmZJ.ttf" + }, + { + "family": "Unkempt", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/unkempt/v21/2EbnL-Z2DFZue0DSSYYf8z2Yt_c.ttf", + "700": "https://fonts.gstatic.com/s/unkempt/v21/2EbiL-Z2DFZue0DScTow1zWzq_5uT84.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/unkempt/v21/2EbnL-Z2DFZue0DSeYcV9w.ttf" + }, + { + "family": "Unlock", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v26", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/unlock/v26/7Au-p_8ykD-cDl7GKAjSwkUVOQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/unlock/v26/7Au-p_8ykD-cDl72KQLW.ttf" + }, + { + "family": "Unna", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/unna/v23/AYCEpXzofN0NCpgBlGHCWFM.ttf", + "italic": "https://fonts.gstatic.com/s/unna/v23/AYCKpXzofN0NOpoLkEPHSFNyxw.ttf", + "700": "https://fonts.gstatic.com/s/unna/v23/AYCLpXzofN0NMiQusGnpRFpr3vc.ttf", + "700italic": "https://fonts.gstatic.com/s/unna/v23/AYCJpXzofN0NOpozLGzjQHhuzvef5Q.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/unna/v23/AYCEpXzofN0NOpkLkA.ttf" + }, + { + "family": "Updock", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/updock/v5/nuF4D_3dVZ70UI9SjLK3602XBw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/updock/v5/nuF4D_3dVZ70UI9ijbiz.ttf" + }, + { + "family": "Urbanist", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v15", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/urbanist/v15/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDyx8fFpOrS8SlKw.ttf", + "200": "https://fonts.gstatic.com/s/urbanist/v15/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDSx4fFpOrS8SlKw.ttf", + "300": "https://fonts.gstatic.com/s/urbanist/v15/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDlR4fFpOrS8SlKw.ttf", + "regular": "https://fonts.gstatic.com/s/urbanist/v15/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDyx4fFpOrS8SlKw.ttf", + "500": "https://fonts.gstatic.com/s/urbanist/v15/L0xjDF02iFML4hGCyOCpRdycFsGxSrqD-R4fFpOrS8SlKw.ttf", + "600": "https://fonts.gstatic.com/s/urbanist/v15/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDFRkfFpOrS8SlKw.ttf", + "700": "https://fonts.gstatic.com/s/urbanist/v15/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDLBkfFpOrS8SlKw.ttf", + "800": "https://fonts.gstatic.com/s/urbanist/v15/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDSxkfFpOrS8SlKw.ttf", + "900": "https://fonts.gstatic.com/s/urbanist/v15/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDYhkfFpOrS8SlKw.ttf", + "100italic": "https://fonts.gstatic.com/s/urbanist/v15/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA133VJmvacG1K4S1.ttf", + "200italic": "https://fonts.gstatic.com/s/urbanist/v15/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA113VZmvacG1K4S1.ttf", + "300italic": "https://fonts.gstatic.com/s/urbanist/v15/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA12pVZmvacG1K4S1.ttf", + "italic": "https://fonts.gstatic.com/s/urbanist/v15/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA133VZmvacG1K4S1.ttf", + "500italic": "https://fonts.gstatic.com/s/urbanist/v15/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA13FVZmvacG1K4S1.ttf", + "600italic": "https://fonts.gstatic.com/s/urbanist/v15/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA10pUpmvacG1K4S1.ttf", + "700italic": "https://fonts.gstatic.com/s/urbanist/v15/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA10QUpmvacG1K4S1.ttf", + "800italic": "https://fonts.gstatic.com/s/urbanist/v15/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA113UpmvacG1K4S1.ttf", + "900italic": "https://fonts.gstatic.com/s/urbanist/v15/L0xtDF02iFML4hGCyMqgdyNEf6or5L2WA11eUpmvacG1K4S1.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/urbanist/v15/L0xjDF02iFML4hGCyOCpRdycFsGxSrqDyx4vF5mv.ttf" + }, + { + "family": "VT323", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/vt323/v17/pxiKyp0ihIEF2hsYHpT2dkNE.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vt323/v17/pxiKyp0ihIEF2isZFJA.ttf" + }, + { + "family": "Vampiro One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/vampiroone/v18/gokqH6DoDl5yXvJytFsdLkqnsvhIor3K.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vampiroone/v18/gokqH6DoDl5yXvJytFsdLnqmuPw.ttf" + }, + { + "family": "Varela", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/varela/v16/DPEtYwqExx0AWHXJBBQFfvzDsQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/varela/v16/DPEtYwqExx0AWHX5BR4B.ttf" + }, + { + "family": "Varela Round", + "variants": [ + "regular" + ], + "subsets": [ + "hebrew", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/varelaround/v20/w8gdH283Tvk__Lua32TysjIvoMGOD9gxZw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/varelaround/v20/w8gdH283Tvk__Lua32TysjIfocuK.ttf" + }, + { + "family": "Varta", + "variants": [ + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x96j4EirE-9PGLfQ.ttf", + "regular": "https://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9tD4EirE-9PGLfQ.ttf", + "500": "https://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9hj4EirE-9PGLfQ.ttf", + "600": "https://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9ajkEirE-9PGLfQ.ttf", + "700": "https://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9UzkEirE-9PGLfQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/varta/v21/Qw3AZQpJHj_6LzHUngWbrFkDH1x9tD40i7s6.ttf" + }, + { + "family": "Vast Shadow", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/vastshadow/v19/pe0qMImKOZ1V62ZwbVY9dfe6Kdpickwp.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vastshadow/v19/pe0qMImKOZ1V62ZwbVY9dce7I94.ttf" + }, + { + "family": "Vazirmatn", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "arabic", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklWgyOReZ72DF_QY.ttf", + "200": "https://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklegzOReZ72DF_QY.ttf", + "300": "https://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklTYzOReZ72DF_QY.ttf", + "regular": "https://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklWgzOReZ72DF_QY.ttf", + "500": "https://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklVozOReZ72DF_QY.ttf", + "600": "https://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklbY0OReZ72DF_QY.ttf", + "700": "https://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklY80OReZ72DF_QY.ttf", + "800": "https://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRkleg0OReZ72DF_QY.ttf", + "900": "https://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklcE0OReZ72DF_QY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vazirmatn/v13/Dxx78j6PP2D_kU2muijPEe1n2vVbfJRklWgzCRaT6w.ttf" + }, + { + "family": "Vesper Libre", + "variants": [ + "regular", + "500", + "700", + "900" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/vesperlibre/v19/bx6CNxyWnf-uxPdXDHUD_Rd4D0-N2qIWVQ.ttf", + "500": "https://fonts.gstatic.com/s/vesperlibre/v19/bx6dNxyWnf-uxPdXDHUD_RdA-2ap0okKXKvPlw.ttf", + "700": "https://fonts.gstatic.com/s/vesperlibre/v19/bx6dNxyWnf-uxPdXDHUD_RdAs2Cp0okKXKvPlw.ttf", + "900": "https://fonts.gstatic.com/s/vesperlibre/v19/bx6dNxyWnf-uxPdXDHUD_RdAi2Kp0okKXKvPlw.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vesperlibre/v19/bx6CNxyWnf-uxPdXDHUD_RdIDkWJ.ttf" + }, + { + "family": "Viaoda Libre", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/viaodalibre/v18/vEFW2_lWCgoR6OKuRz9kcRVJb2IY2tOHXg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/viaodalibre/v18/vEFW2_lWCgoR6OKuRz9kcRV5bmgc.ttf" + }, + { + "family": "Vibes", + "variants": [ + "regular" + ], + "subsets": [ + "arabic", + "latin" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/vibes/v14/QdVYSTsmIB6tmbd3HpbsuBlh.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vibes/v14/QdVYSTsmIB6tmYd2FJI.ttf" + }, + { + "family": "Vibur", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/vibur/v23/DPEiYwmEzw0QRjTpLjoJd-Xa.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vibur/v23/DPEiYwmEzw0QRgToJD4.ttf" + }, + { + "family": "Victor Mono", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v3", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/victormono/v3/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyO8_NhNyOV0Y9bQ.ttf", + "200": "https://fonts.gstatic.com/s/victormono/v3/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyu87NhNyOV0Y9bQ.ttf", + "300": "https://fonts.gstatic.com/s/victormono/v3/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyZc7NhNyOV0Y9bQ.ttf", + "regular": "https://fonts.gstatic.com/s/victormono/v3/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyO87NhNyOV0Y9bQ.ttf", + "500": "https://fonts.gstatic.com/s/victormono/v3/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyCc7NhNyOV0Y9bQ.ttf", + "600": "https://fonts.gstatic.com/s/victormono/v3/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCy5cnNhNyOV0Y9bQ.ttf", + "700": "https://fonts.gstatic.com/s/victormono/v3/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCy3MnNhNyOV0Y9bQ.ttf", + "100italic": "https://fonts.gstatic.com/s/victormono/v3/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen840lxtaKdUMtba8p.ttf", + "200italic": "https://fonts.gstatic.com/s/victormono/v3/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen842lx9aKdUMtba8p.ttf", + "300italic": "https://fonts.gstatic.com/s/victormono/v3/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen8417x9aKdUMtba8p.ttf", + "italic": "https://fonts.gstatic.com/s/victormono/v3/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen840lx9aKdUMtba8p.ttf", + "500italic": "https://fonts.gstatic.com/s/victormono/v3/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen840Xx9aKdUMtba8p.ttf", + "600italic": "https://fonts.gstatic.com/s/victormono/v3/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen8437wNaKdUMtba8p.ttf", + "700italic": "https://fonts.gstatic.com/s/victormono/v3/Yq6B-LGQWyfv-LGy7lEO0_ZYrRskvW7bUNen843CwNaKdUMtba8p.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/victormono/v3/Yq6H-LGQWyfv-LGy7lEO09xRn-T81AVB_tCyO879hdaK.ttf" + }, + { + "family": "Vidaloka", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/vidaloka/v18/7cHrv4c3ipenMKlEass8yn4hnCci.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vidaloka/v18/7cHrv4c3ipenMKlEavs9wHo.ttf" + }, + { + "family": "Viga", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/viga/v14/xMQbuFFdSaiX_QIjD4e2OX8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/viga/v14/xMQbuFFdSaiXzQMpCw.ttf" + }, + { + "family": "Vina Sans", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/vinasans/v6/m8JQjfZKf6-d2273MP7zcJ5BZmqa3A.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vinasans/v6/m8JQjfZKf6-d2273MP7DcZRF.ttf" + }, + { + "family": "Voces", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/voces/v22/-F6_fjJyLyU8d4PBBG7YpzlJ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/voces/v22/-F6_fjJyLyU8d7PADmo.ttf" + }, + { + "family": "Volkhov", + "variants": [ + "regular", + "italic", + "700", + "700italic" + ], + "subsets": [ + "latin" + ], + "version": "v17", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/volkhov/v17/SlGQmQieoJcKemNeQTIOhHxzcD0.ttf", + "italic": "https://fonts.gstatic.com/s/volkhov/v17/SlGSmQieoJcKemNecTAEgF52YD0NYw.ttf", + "700": "https://fonts.gstatic.com/s/volkhov/v17/SlGVmQieoJcKemNeeY4hoHRYbDQUego.ttf", + "700italic": "https://fonts.gstatic.com/s/volkhov/v17/SlGXmQieoJcKemNecTA8PHFSaBYRagrQrA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/volkhov/v17/SlGQmQieoJcKemNecTMEgA.ttf" + }, + { + "family": "Vollkorn", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v27", + "lastModified": "2024-09-30", + "files": { + "regular": "https://fonts.gstatic.com/s/vollkorn/v27/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2MHGuGWOdEbD63w.ttf", + "500": "https://fonts.gstatic.com/s/vollkorn/v27/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2AnGuGWOdEbD63w.ttf", + "600": "https://fonts.gstatic.com/s/vollkorn/v27/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df27nauGWOdEbD63w.ttf", + "700": "https://fonts.gstatic.com/s/vollkorn/v27/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df213auGWOdEbD63w.ttf", + "800": "https://fonts.gstatic.com/s/vollkorn/v27/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2sHauGWOdEbD63w.ttf", + "900": "https://fonts.gstatic.com/s/vollkorn/v27/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2mXauGWOdEbD63w.ttf", + "italic": "https://fonts.gstatic.com/s/vollkorn/v27/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DJGWmmZM7Xq34g9.ttf", + "500italic": "https://fonts.gstatic.com/s/vollkorn/v27/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DJ0WmmZM7Xq34g9.ttf", + "600italic": "https://fonts.gstatic.com/s/vollkorn/v27/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DKYXWmZM7Xq34g9.ttf", + "700italic": "https://fonts.gstatic.com/s/vollkorn/v27/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DKhXWmZM7Xq34g9.ttf", + "800italic": "https://fonts.gstatic.com/s/vollkorn/v27/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DLGXWmZM7Xq34g9.ttf", + "900italic": "https://fonts.gstatic.com/s/vollkorn/v27/0ybuGDoxxrvAnPhYGxksckM2WMCpRjDj-DLvXWmZM7Xq34g9.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vollkorn/v27/0ybgGDoxxrvAnPhYGzMlQLzuMasz6Df2MHGeGGmZ.ttf" + }, + { + "family": "Vollkorn SC", + "variants": [ + "regular", + "600", + "700", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/vollkornsc/v11/j8_v6-zQ3rXpceZj9cqnVhF5NH-iSq_E.ttf", + "600": "https://fonts.gstatic.com/s/vollkornsc/v11/j8_y6-zQ3rXpceZj9cqnVimhGluqYbPN5Yjn.ttf", + "700": "https://fonts.gstatic.com/s/vollkornsc/v11/j8_y6-zQ3rXpceZj9cqnVinFG1uqYbPN5Yjn.ttf", + "900": "https://fonts.gstatic.com/s/vollkornsc/v11/j8_y6-zQ3rXpceZj9cqnVin9GVuqYbPN5Yjn.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vollkornsc/v11/j8_v6-zQ3rXpceZj9cqnViF4Pns.ttf" + }, + { + "family": "Voltaire", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v21", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/voltaire/v21/1Pttg8PcRfSblAvGvQooYKVnBOif.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/voltaire/v21/1Pttg8PcRfSblAvGvTopaqE.ttf" + }, + { + "family": "Vujahday Script", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v8", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/vujahdayscript/v8/RWmQoKGA8fEkrIPtSZ3_J7er2dUiDEtvAlaMKw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/vujahdayscript/v8/RWmQoKGA8fEkrIPtSZ3_J7er2dUSDUFr.ttf" + }, + { + "family": "Waiting for the Sunrise", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/waitingforthesunrise/v20/WBL1rFvOYl9CEv2i1mO6KUW8RKWJ2zoXoz5JsYZQ9h_ZYk5J.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/waitingforthesunrise/v20/WBL1rFvOYl9CEv2i1mO6KUW8RKWJ2zoXoz5JsbZR_Bs.ttf" + }, + { + "family": "Wallpoet", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/wallpoet/v20/f0X10em2_8RnXVVdUNbu7cXP8L8G.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/wallpoet/v20/f0X10em2_8RnXVVdUObv58E.ttf" + }, + { + "family": "Walter Turncoat", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/walterturncoat/v23/snfys0Gs98ln43n0d-14ULoToe67YB2dQ5ZPqQ.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/walterturncoat/v23/snfys0Gs98ln43n0d-14ULoToe6LYReZ.ttf" + }, + { + "family": "Warnes", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v27", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/warnes/v27/pONn1hc0GsW6sW5OpiC2o6Lkqg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/warnes/v27/pONn1hc0GsW6sW5-pyqy.ttf" + }, + { + "family": "Water Brush", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v4", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/waterbrush/v4/AYCPpXPqc8cJWLhp4hywKHJq7PKP5Z_G.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/waterbrush/v4/AYCPpXPqc8cJWLhp4hywKEJr5vY.ttf" + }, + { + "family": "Waterfall", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/waterfall/v6/MCoRzAfo293fACdFKcwY2rH8D_EZwA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/waterfall/v6/MCoRzAfo293fACdFKcwo27v4.ttf" + }, + { + "family": "Wavefont", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "latin" + ], + "version": "v10", + "lastModified": "2024-08-12", + "files": { + "100": "https://fonts.gstatic.com/s/wavefont/v10/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI3V0rDHXKtOXOg4.ttf", + "200": "https://fonts.gstatic.com/s/wavefont/v10/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI1V07DHXKtOXOg4.ttf", + "300": "https://fonts.gstatic.com/s/wavefont/v10/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI2L07DHXKtOXOg4.ttf", + "regular": "https://fonts.gstatic.com/s/wavefont/v10/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI3V07DHXKtOXOg4.ttf", + "500": "https://fonts.gstatic.com/s/wavefont/v10/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI3n07DHXKtOXOg4.ttf", + "600": "https://fonts.gstatic.com/s/wavefont/v10/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI0L1LDHXKtOXOg4.ttf", + "700": "https://fonts.gstatic.com/s/wavefont/v10/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI0y1LDHXKtOXOg4.ttf", + "800": "https://fonts.gstatic.com/s/wavefont/v10/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI1V1LDHXKtOXOg4.ttf", + "900": "https://fonts.gstatic.com/s/wavefont/v10/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI181LDHXKtOXOg4.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/wavefont/v10/L0xFDF00m0cP6hefyOCpRezQNuizSrqDyx8FHbFu21B3L4m0SEzuQYwq-f_JJ8I1WI3V04DGVq8.ttf" + }, + { + "family": "Wellfleet", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v23", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/wellfleet/v23/nuF7D_LfQJb3VYgX6eyT42aLDhO2HA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/wellfleet/v23/nuF7D_LfQJb3VYgX6eyj4myP.ttf" + }, + { + "family": "Wendy One", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/wendyone/v18/2sDcZGJOipXfgfXV5wgDb2-4C7wFZQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/wendyone/v18/2sDcZGJOipXfgfXV5wgzbmW8.ttf" + }, + { + "family": "Whisper", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v5", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/whisper/v5/q5uHsoqtKftx74K9milCBxxdmYU.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/whisper/v5/q5uHsoqtKftx74K9qihIAw.ttf" + }, + { + "family": "WindSong", + "variants": [ + "regular", + "500" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/windsong/v11/KR1WBsyu-P-GFEW57r95HdG6vjH3.ttf", + "500": "https://fonts.gstatic.com/s/windsong/v11/KR1RBsyu-P-GFEW57oeNNPWylS3-jVXm.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/windsong/v11/KR1WBsyu-P-GFEW57o94F9U.ttf" + }, + { + "family": "Wire One", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v28", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/wireone/v28/qFdH35Wah5htUhV75WGiWdrCwwcJ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/wireone/v28/qFdH35Wah5htUhV75VGjU94.ttf" + }, + { + "family": "Wittgenstein", + "variants": [ + "regular", + "500", + "600", + "700", + "800", + "900", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/wittgenstein/v2/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61G4T_Bv7Z15J4ow.ttf", + "500": "https://fonts.gstatic.com/s/wittgenstein/v2/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61FwT_Bv7Z15J4ow.ttf", + "600": "https://fonts.gstatic.com/s/wittgenstein/v2/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61LAU_Bv7Z15J4ow.ttf", + "700": "https://fonts.gstatic.com/s/wittgenstein/v2/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61IkU_Bv7Z15J4ow.ttf", + "800": "https://fonts.gstatic.com/s/wittgenstein/v2/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61O4U_Bv7Z15J4ow.ttf", + "900": "https://fonts.gstatic.com/s/wittgenstein/v2/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61McU_Bv7Z15J4ow.ttf", + "italic": "https://fonts.gstatic.com/s/wittgenstein/v2/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQFFjxY3xM8ozHYA.ttf", + "500italic": "https://fonts.gstatic.com/s/wittgenstein/v2/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQJljxY3xM8ozHYA.ttf", + "600italic": "https://fonts.gstatic.com/s/wittgenstein/v2/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQyl_xY3xM8ozHYA.ttf", + "700italic": "https://fonts.gstatic.com/s/wittgenstein/v2/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQ81_xY3xM8ozHYA.ttf", + "800italic": "https://fonts.gstatic.com/s/wittgenstein/v2/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQlF_xY3xM8ozHYA.ttf", + "900italic": "https://fonts.gstatic.com/s/wittgenstein/v2/WBLxrEDOakJCHParhXGwMgvYLvqigLupTOw9waZQvV_xY3xM8ozHYA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/wittgenstein/v2/WBL3rEDOakJCHParhXGwMgvyJ8hdWNLC1kI61G4TzBrxYw.ttf" + }, + { + "family": "Wix Madefor Display", + "variants": [ + "regular", + "500", + "600", + "700", + "800" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v10", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/wixmadefordisplay/v10/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYFhYltkv_3HQKgh.ttf", + "500": "https://fonts.gstatic.com/s/wixmadefordisplay/v10/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYFTYltkv_3HQKgh.ttf", + "600": "https://fonts.gstatic.com/s/wixmadefordisplay/v10/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYG_ZVtkv_3HQKgh.ttf", + "700": "https://fonts.gstatic.com/s/wixmadefordisplay/v10/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYGGZVtkv_3HQKgh.ttf", + "800": "https://fonts.gstatic.com/s/wixmadefordisplay/v10/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYHhZVtkv_3HQKgh.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/wixmadefordisplay/v10/SZcS3EX9IbbyeJ8aOluD52KXgUA_7Ed1I13G853Cp9duUYFhYmtltfk.ttf" + }, + { + "family": "Wix Madefor Text", + "variants": [ + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic", + "800", + "800italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cK_NOeFgpRt9rN5.ttf", + "italic": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3dw_GiJBP86N53IY.ttf", + "500": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cKNNOeFgpRt9rN5.ttf", + "500italic": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3dz3GiJBP86N53IY.ttf", + "600": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cJhM-eFgpRt9rN5.ttf", + "600italic": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d9HBiJBP86N53IY.ttf", + "700": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cJYM-eFgpRt9rN5.ttf", + "700italic": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d-jBiJBP86N53IY.ttf", + "800": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cI_M-eFgpRt9rN5.ttf", + "800italic": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_WXI_oSymQ8Qj-Apx3HGN_Hu1RZiAL6QzqeqKx1td3d4_BiJBP86N53IY.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/wixmadefortext/v13/-W_oXI_oSymQ8Qj-Apx3HGN_Hu1RTCk5FtSDETgf0cK_NNeEiJA.ttf" + }, + { + "family": "Work Sans", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/worksans/v19/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nWNigDp6_cOyA.ttf", + "200": "https://fonts.gstatic.com/s/worksans/v19/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K8nXNigDp6_cOyA.ttf", + "300": "https://fonts.gstatic.com/s/worksans/v19/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32KxfXNigDp6_cOyA.ttf", + "regular": "https://fonts.gstatic.com/s/worksans/v19/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXNigDp6_cOyA.ttf", + "500": "https://fonts.gstatic.com/s/worksans/v19/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K3vXNigDp6_cOyA.ttf", + "600": "https://fonts.gstatic.com/s/worksans/v19/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K5fQNigDp6_cOyA.ttf", + "700": "https://fonts.gstatic.com/s/worksans/v19/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K67QNigDp6_cOyA.ttf", + "800": "https://fonts.gstatic.com/s/worksans/v19/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K8nQNigDp6_cOyA.ttf", + "900": "https://fonts.gstatic.com/s/worksans/v19/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K-DQNigDp6_cOyA.ttf", + "100italic": "https://fonts.gstatic.com/s/worksans/v19/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU3moJo43ZKyDSQQ.ttf", + "200italic": "https://fonts.gstatic.com/s/worksans/v19/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUXmsJo43ZKyDSQQ.ttf", + "300italic": "https://fonts.gstatic.com/s/worksans/v19/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUgGsJo43ZKyDSQQ.ttf", + "italic": "https://fonts.gstatic.com/s/worksans/v19/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU3msJo43ZKyDSQQ.ttf", + "500italic": "https://fonts.gstatic.com/s/worksans/v19/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGU7GsJo43ZKyDSQQ.ttf", + "600italic": "https://fonts.gstatic.com/s/worksans/v19/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUAGwJo43ZKyDSQQ.ttf", + "700italic": "https://fonts.gstatic.com/s/worksans/v19/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUOWwJo43ZKyDSQQ.ttf", + "800italic": "https://fonts.gstatic.com/s/worksans/v19/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUXmwJo43ZKyDSQQ.ttf", + "900italic": "https://fonts.gstatic.com/s/worksans/v19/QGY9z_wNahGAdqQ43Rh_ebrnlwyYfEPxPoGUd2wJo43ZKyDSQQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/worksans/v19/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXBikJow.ttf" + }, + { + "family": "Workbench", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "math", + "symbols" + ], + "version": "v1", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/workbench/v1/FeV8S05Gp6Et7FcfbPFK1rynGd_MxtkvNFmoUDFhgF2VKTGQk6vapdOL0GKqgZyb.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/workbench/v1/FeV8S05Gp6Et7FcfbPFK1rynGd_MxtkvNFmoUDFhgF2VKTGQk6vapeOK2mY.ttf" + }, + { + "family": "Xanh Mono", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/xanhmono/v18/R70YjykVmvKCep-vWhSYmACQXzLhTg.ttf", + "italic": "https://fonts.gstatic.com/s/xanhmono/v18/R70ejykVmvKCep-vWhSomgqUfTfxTo24.ttf" + }, + "category": "monospace", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/xanhmono/v18/R70YjykVmvKCep-vWhSomQqU.ttf" + }, + { + "family": "Yaldevi", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "latin", + "latin-ext", + "sinhala" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpfxJzvobxLCBJkS.ttf", + "300": "https://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpcvJzvobxLCBJkS.ttf", + "regular": "https://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpdxJzvobxLCBJkS.ttf", + "500": "https://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpdDJzvobxLCBJkS.ttf", + "600": "https://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpevIDvobxLCBJkS.ttf", + "700": "https://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpeWIDvobxLCBJkS.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yaldevi/v12/cY9afj6VW0NMrDWtDNzCOwlPMq9SLpdxJwvpZRY.ttf" + }, + { + "family": "Yanone Kaffeesatz", + "variants": [ + "200", + "300", + "regular", + "500", + "600", + "700" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v30", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/yanonekaffeesatz/v30/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftodtWpcGuLCnXkVA.ttf", + "300": "https://fonts.gstatic.com/s/yanonekaffeesatz/v30/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoqNWpcGuLCnXkVA.ttf", + "regular": "https://fonts.gstatic.com/s/yanonekaffeesatz/v30/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIfto9tWpcGuLCnXkVA.ttf", + "500": "https://fonts.gstatic.com/s/yanonekaffeesatz/v30/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoxNWpcGuLCnXkVA.ttf", + "600": "https://fonts.gstatic.com/s/yanonekaffeesatz/v30/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoKNKpcGuLCnXkVA.ttf", + "700": "https://fonts.gstatic.com/s/yanonekaffeesatz/v30/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIftoEdKpcGuLCnXkVA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yanonekaffeesatz/v30/3y9I6aknfjLm_3lMKjiMgmUUYBs04aUXNxt9gW2LIfto9tWZcWGP.ttf" + }, + { + "family": "Yantramanav", + "variants": [ + "100", + "300", + "regular", + "500", + "700", + "900" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/yantramanav/v13/flU-Rqu5zY00QEpyWJYWN5-QXeNzDB41rZg.ttf", + "300": "https://fonts.gstatic.com/s/yantramanav/v13/flUhRqu5zY00QEpyWJYWN59Yf8NZIhI8tIHh.ttf", + "regular": "https://fonts.gstatic.com/s/yantramanav/v13/flU8Rqu5zY00QEpyWJYWN6f0V-dRCQ41.ttf", + "500": "https://fonts.gstatic.com/s/yantramanav/v13/flUhRqu5zY00QEpyWJYWN58AfsNZIhI8tIHh.ttf", + "700": "https://fonts.gstatic.com/s/yantramanav/v13/flUhRqu5zY00QEpyWJYWN59IeMNZIhI8tIHh.ttf", + "900": "https://fonts.gstatic.com/s/yantramanav/v13/flUhRqu5zY00QEpyWJYWN59wesNZIhI8tIHh.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yantramanav/v13/flU8Rqu5zY00QEpyWJYWN5f1XeM.ttf" + }, + { + "family": "Yarndings 12", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "math", + "symbols" + ], + "version": "v2", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/yarndings12/v2/55xreyp2N8T5P2LJbZAlkY9c8ZLMI2VUnQ.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yarndings12/v2/55xreyp2N8T5P2LJbZAlkY9s8JjI.ttf" + }, + { + "family": "Yarndings 12 Charted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "math", + "symbols" + ], + "version": "v2", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/yarndings12charted/v2/eLGDP_DlKhO-DUfeqM4I_vDdJgmIh7hAvvbJ0t-dHaJH.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yarndings12charted/v2/eLGDP_DlKhO-DUfeqM4I_vDdJgmIh7hAvsbI2Ns.ttf" + }, + { + "family": "Yarndings 20", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "math", + "symbols" + ], + "version": "v2", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/yarndings20/v2/TuGWUVlkUohEQu8l7K8b-vNFB380PMTK1w.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yarndings20/v2/TuGWUVlkUohEQu8l7K8b-vN1BnUw.ttf" + }, + { + "family": "Yarndings 20 Charted", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "math", + "symbols" + ], + "version": "v2", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/yarndings20charted/v2/QldRNSdbpg0G8vh0W2qxe0l-hcUPtY2VaLQm4UTqz5V9.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yarndings20charted/v2/QldRNSdbpg0G8vh0W2qxe0l-hcUPtY2VaIQn60A.ttf" + }, + { + "family": "Yatra One", + "variants": [ + "regular" + ], + "subsets": [ + "devanagari", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/yatraone/v14/C8ch4copsHzj8p7NaF0xw1OBbRDvXw.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yatraone/v14/C8ch4copsHzj8p7NaF0BwlmF.ttf" + }, + { + "family": "Yellowtail", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/yellowtail/v22/OZpGg_pnoDtINPfRIlLotlzNwED-b4g.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yellowtail/v22/OZpGg_pnoDtINPfRIlLohl3HxA.ttf" + }, + { + "family": "Yeon Sung", + "variants": [ + "regular" + ], + "subsets": [ + "korean", + "latin" + ], + "version": "v21", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/yeonsung/v21/QldMNTpbohAGtsJvUn6xSVNazqx2xg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yeonsung/v21/QldMNTpbohAGtsJvUn6BSFle.ttf" + }, + { + "family": "Yeseva One", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v22", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/yesevaone/v22/OpNJno4ck8vc-xYpwWWxpipfWhXD00c.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yesevaone/v22/OpNJno4ck8vc-xYpwWWxlitVXg.ttf" + }, + { + "family": "Yesteryear", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v18", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/yesteryear/v18/dg4g_p78rroaKl8kRKo1r7wHTwonmyw.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yesteryear/v18/dg4g_p78rroaKl8kRKo1n70NSw.ttf" + }, + { + "family": "Yomogi", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v12", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/yomogi/v12/VuJwdNrS2ZL7rpoPWIz5NIh-YA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yomogi/v12/VuJwdNrS2ZL7rpo_WYb9.ttf" + }, + { + "family": "Young Serif", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/youngserif/v2/3qTpojO2nS2VtkB3KtkQZ2t61EcYaQ7F.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/youngserif/v2/3qTpojO2nS2VtkB3KtkQZ1t73kM.ttf" + }, + { + "family": "Yrsa", + "variants": [ + "300", + "regular", + "500", + "600", + "700", + "300italic", + "italic", + "500italic", + "600italic", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext", + "vietnamese" + ], + "version": "v20", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCjASNNV9rRPfrKu.ttf", + "regular": "https://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCieSNNV9rRPfrKu.ttf", + "500": "https://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCisSNNV9rRPfrKu.ttf", + "600": "https://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaChAT9NV9rRPfrKu.ttf", + "700": "https://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCh5T9NV9rRPfrKu.ttf", + "300italic": "https://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WC2UW_LBte6KuGEo.ttf", + "italic": "https://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WCzsW_LBte6KuGEo.ttf", + "500italic": "https://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WCwkW_LBte6KuGEo.ttf", + "600italic": "https://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WC-UR_LBte6KuGEo.ttf", + "700italic": "https://fonts.gstatic.com/s/yrsa/v20/wlptgwnQFlxs1QnF94zlCfv0bz1WC9wR_LBte6KuGEo.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yrsa/v20/wlprgwnQFlxs_wD3CFSMYmFaaCieSONU_LA.ttf" + }, + { + "family": "Ysabeau", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ysabeau/v2/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OWCTYwI8Gcw6Oi.ttf", + "200": "https://fonts.gstatic.com/s/ysabeau/v2/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7MWCDYwI8Gcw6Oi.ttf", + "300": "https://fonts.gstatic.com/s/ysabeau/v2/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7PICDYwI8Gcw6Oi.ttf", + "regular": "https://fonts.gstatic.com/s/ysabeau/v2/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OWCDYwI8Gcw6Oi.ttf", + "500": "https://fonts.gstatic.com/s/ysabeau/v2/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OkCDYwI8Gcw6Oi.ttf", + "600": "https://fonts.gstatic.com/s/ysabeau/v2/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7NIDzYwI8Gcw6Oi.ttf", + "700": "https://fonts.gstatic.com/s/ysabeau/v2/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7NxDzYwI8Gcw6Oi.ttf", + "800": "https://fonts.gstatic.com/s/ysabeau/v2/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7MWDzYwI8Gcw6Oi.ttf", + "900": "https://fonts.gstatic.com/s/ysabeau/v2/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7M_DzYwI8Gcw6Oi.ttf", + "100italic": "https://fonts.gstatic.com/s/ysabeau/v2/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS95yKcW-xrOiIUw.ttf", + "200italic": "https://fonts.gstatic.com/s/ysabeau/v2/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS15zKcW-xrOiIUw.ttf", + "300italic": "https://fonts.gstatic.com/s/ysabeau/v2/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS4BzKcW-xrOiIUw.ttf", + "italic": "https://fonts.gstatic.com/s/ysabeau/v2/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS95zKcW-xrOiIUw.ttf", + "500italic": "https://fonts.gstatic.com/s/ysabeau/v2/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS-xzKcW-xrOiIUw.ttf", + "600italic": "https://fonts.gstatic.com/s/ysabeau/v2/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeSwB0KcW-xrOiIUw.ttf", + "700italic": "https://fonts.gstatic.com/s/ysabeau/v2/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeSzl0KcW-xrOiIUw.ttf", + "800italic": "https://fonts.gstatic.com/s/ysabeau/v2/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS150KcW-xrOiIUw.ttf", + "900italic": "https://fonts.gstatic.com/s/ysabeau/v2/kmKsZqEiBAXLcnuMlD9_3CYscnjwsKZeS3d0KcW-xrOiIUw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ysabeau/v2/kmKiZqEiBAXLcnuMvjZNI_5FGeJet7OWCAYxKcU.ttf" + }, + { + "family": "Ysabeau Infant", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYFo4HK5ChLwKH6A.ttf", + "200": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYlo8HK5ChLwKH6A.ttf", + "300": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYSI8HK5ChLwKH6A.ttf", + "regular": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYFo8HK5ChLwKH6A.ttf", + "500": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYJI8HK5ChLwKH6A.ttf", + "600": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYyIgHK5ChLwKH6A.ttf", + "700": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQY8YgHK5ChLwKH6A.ttf", + "800": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYlogHK5ChLwKH6A.ttf", + "900": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYv4gHK5ChLwKH6A.ttf", + "100italic": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3szvaZqlDQeX6Dc5.ttf", + "200italic": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3sxvaJqlDQeX6Dc5.ttf", + "300italic": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3syxaJqlDQeX6Dc5.ttf", + "italic": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3szvaJqlDQeX6Dc5.ttf", + "500italic": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3szdaJqlDQeX6Dc5.ttf", + "600italic": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3swxb5qlDQeX6Dc5.ttf", + "700italic": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3swIb5qlDQeX6Dc5.ttf", + "800italic": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3sxvb5qlDQeX6Dc5.ttf", + "900italic": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-AlzpqOkkV94kBTQVdX1EWI_p9ZR4c8LTTNzMN3sxGb5qlDQeX6Dc5.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ysabeauinfant/v2/hv-ClzpqOkkV94kBTQVdX1EWI9B0V-HEmd9JmTQYFo83Kpql.ttf" + }, + { + "family": "Ysabeau Office", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900", + "100italic", + "200italic", + "300italic", + "italic", + "500italic", + "600italic", + "700italic", + "800italic", + "900italic" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbh6IfYSfpQj7IGQ.ttf", + "200": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbB6MfYSfpQj7IGQ.ttf", + "300": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPb2aMfYSfpQj7IGQ.ttf", + "regular": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbh6MfYSfpQj7IGQ.ttf", + "500": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbtaMfYSfpQj7IGQ.ttf", + "600": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbWaQfYSfpQj7IGQ.ttf", + "700": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbYKQfYSfpQj7IGQ.ttf", + "800": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbB6QfYSfpQj7IGQ.ttf", + "900": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbLqQfYSfpQj7IGQ.ttf", + "100italic": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-D3Iy3tYDvYGbGh.ttf", + "200italic": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-B3Ii3tYDvYGbGh.ttf", + "300italic": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-CpIi3tYDvYGbGh.ttf", + "italic": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-D3Ii3tYDvYGbGh.ttf", + "500italic": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-DFIi3tYDvYGbGh.ttf", + "600italic": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-ApJS3tYDvYGbGh.ttf", + "700italic": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-AQJS3tYDvYGbGh.ttf", + "800italic": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-B3JS3tYDvYGbGh.ttf", + "900italic": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDIkapaZKhM9RuQIp8FmdYrPPPLMqbE5B_kXOvTOT-BeJS3tYDvYGbGh.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ysabeauoffice/v2/LDImapaZKhM9RuQIp8FmdYrPPNjFm07hbpKNlPPbh6MvYC3t.ttf" + }, + { + "family": "Ysabeau SC", + "variants": [ + "100", + "200", + "300", + "regular", + "500", + "600", + "700", + "800", + "900" + ], + "subsets": [ + "cyrillic", + "cyrillic-ext", + "greek", + "latin", + "latin-ext", + "math", + "symbols", + "vietnamese" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "100": "https://fonts.gstatic.com/s/ysabeausc/v2/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw98U1qEZ4EOmsT5.ttf", + "200": "https://fonts.gstatic.com/s/ysabeausc/v2/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw_8UlqEZ4EOmsT5.ttf", + "300": "https://fonts.gstatic.com/s/ysabeausc/v2/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw8iUlqEZ4EOmsT5.ttf", + "regular": "https://fonts.gstatic.com/s/ysabeausc/v2/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw98UlqEZ4EOmsT5.ttf", + "500": "https://fonts.gstatic.com/s/ysabeausc/v2/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw9OUlqEZ4EOmsT5.ttf", + "600": "https://fonts.gstatic.com/s/ysabeausc/v2/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw-iVVqEZ4EOmsT5.ttf", + "700": "https://fonts.gstatic.com/s/ysabeausc/v2/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw-bVVqEZ4EOmsT5.ttf", + "800": "https://fonts.gstatic.com/s/ysabeausc/v2/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw_8VVqEZ4EOmsT5.ttf", + "900": "https://fonts.gstatic.com/s/ysabeausc/v2/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw_VVVqEZ4EOmsT5.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/ysabeausc/v2/Noai6Uro3JCIKAbW46nMorJZyP7kKRflbw98UmqFbYU.ttf" + }, + { + "family": "Yuji Boku", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/yujiboku/v6/P5sAzZybeNzXsA9xj1Fkjb2r2dgvJA.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yujiboku/v6/P5sAzZybeNzXsA9xj1FUjLev.ttf" + }, + { + "family": "Yuji Hentaigana Akari", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/yujihentaiganaakari/v12/cY9bfiyVT0VB6QuhWKOrpr6z58lnb_zYFnLIRTzODYALaA.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yujihentaiganaakari/v12/cY9bfiyVT0VB6QuhWKOrpr6z58lnb_zYFnL4RDbK.ttf" + }, + { + "family": "Yuji Hentaigana Akebono", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/yujihentaiganaakebono/v13/EJRGQhkhRNwM-RtitGUwh930GU_f5KAlkuL0wQy9NKXRzrrF.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yujihentaiganaakebono/v13/EJRGQhkhRNwM-RtitGUwh930GU_f5KAlkuL0wTy8PqE.ttf" + }, + { + "family": "Yuji Mai", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/yujimai/v6/ZgNQjPxdJ7DEHrS0gC38hmHmNpCO.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yujimai/v6/ZgNQjPxdJ7DEHrS0gB39jGU.ttf" + }, + { + "family": "Yuji Syuku", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v6", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/yujisyuku/v6/BngNUXdTV3vO6Lw5ApOPqPfgwqiA-Rk.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yujisyuku/v6/BngNUXdTV3vO6Lw5ApOPmPbqxg.ttf" + }, + { + "family": "Yusei Magic", + "variants": [ + "regular" + ], + "subsets": [ + "japanese", + "latin", + "latin-ext" + ], + "version": "v14", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/yuseimagic/v14/yYLt0hbAyuCmoo5wlhPkpjHR-tdfcIT_.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/yuseimagic/v14/yYLt0hbAyuCmoo5wlhPkpgHQ8NM.ttf" + }, + { + "family": "ZCOOL KuaiLe", + "variants": [ + "regular" + ], + "subsets": [ + "chinese-simplified", + "latin" + ], + "version": "v19", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/zcoolkuaile/v19/tssqApdaRQokwFjFJjvM6h2WpozzoXhC2g.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zcoolkuaile/v19/tssqApdaRQokwFjFJjvM6h2mp4b3.ttf" + }, + { + "family": "ZCOOL QingKe HuangYou", + "variants": [ + "regular" + ], + "subsets": [ + "chinese-simplified", + "latin" + ], + "version": "v15", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/zcoolqingkehuangyou/v15/2Eb5L_R5IXJEWhD3AOhSvFC554MOOahI4mRIi_28c8bHWA.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zcoolqingkehuangyou/v15/2Eb5L_R5IXJEWhD3AOhSvFC554MOOahI4mR4ive4.ttf" + }, + { + "family": "ZCOOL XiaoWei", + "variants": [ + "regular" + ], + "subsets": [ + "chinese-simplified", + "latin" + ], + "version": "v14", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/zcoolxiaowei/v14/i7dMIFFrTRywPpUVX9_RJyM1YFKQHwyVd3U.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zcoolxiaowei/v14/i7dMIFFrTRywPpUVX9_RJyM1UFOaGw.ttf" + }, + { + "family": "Zain", + "variants": [ + "200", + "300", + "regular", + "700", + "800", + "900" + ], + "subsets": [ + "arabic", + "latin" + ], + "version": "v2", + "lastModified": "2024-09-04", + "files": { + "200": "https://fonts.gstatic.com/s/zain/v2/sykz-y9lm7soOBrstSq9-trEvlQ.ttf", + "300": "https://fonts.gstatic.com/s/zain/v2/sykz-y9lm7soOH7vtSq9-trEvlQ.ttf", + "regular": "https://fonts.gstatic.com/s/zain/v2/syk8-y9lm7soANLHkSKW5tM.ttf", + "700": "https://fonts.gstatic.com/s/zain/v2/sykz-y9lm7soOG7otSq9-trEvlQ.ttf", + "800": "https://fonts.gstatic.com/s/zain/v2/sykz-y9lm7soOHLrtSq9-trEvlQ.ttf", + "900": "https://fonts.gstatic.com/s/zain/v2/sykz-y9lm7soOFbqtSq9-trEvlQ.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zain/v2/syk8-y9lm7soMNPNlQ.ttf" + }, + { + "family": "Zen Antique", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "greek", + "japanese", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/zenantique/v13/AYCPpXPnd91Ma_Zf-Ri2JXJq7PKP5Z_G.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zenantique/v13/AYCPpXPnd91Ma_Zf-Ri2JUJr5vY.ttf" + }, + { + "family": "Zen Antique Soft", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "greek", + "japanese", + "latin", + "latin-ext" + ], + "version": "v13", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/zenantiquesoft/v13/DtV4JwqzSL1q_KwnEWMc_3xfgW6ihwBmkui5HNg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zenantiquesoft/v13/DtV4JwqzSL1q_KwnEWMc_3xfgW6itwFslg.ttf" + }, + { + "family": "Zen Dots", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/zendots/v12/XRXX3ICfm00IGoesQeaETM_FcCIG.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zendots/v12/XRXX3ICfm00IGoesQdaFRss.ttf" + }, + { + "family": "Zen Kaku Gothic Antique", + "variants": [ + "300", + "regular", + "500", + "700", + "900" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-08-07", + "files": { + "300": "https://fonts.gstatic.com/s/zenkakugothicantique/v16/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22cM9TarWJtyZyGU.ttf", + "regular": "https://fonts.gstatic.com/s/zenkakugothicantique/v16/6qLQKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB21-g3RKjc4d7.ttf", + "500": "https://fonts.gstatic.com/s/zenkakugothicantique/v16/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22dU9DarWJtyZyGU.ttf", + "700": "https://fonts.gstatic.com/s/zenkakugothicantique/v16/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22cc8jarWJtyZyGU.ttf", + "900": "https://fonts.gstatic.com/s/zenkakugothicantique/v16/6qLVKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22ck8DarWJtyZyGU.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zenkakugothicantique/v16/6qLQKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB22-h1xY.ttf" + }, + { + "family": "Zen Kaku Gothic New", + "variants": [ + "300", + "regular", + "500", + "700", + "900" + ], + "subsets": [ + "cyrillic", + "japanese", + "latin", + "latin-ext" + ], + "version": "v16", + "lastModified": "2024-08-07", + "files": { + "300": "https://fonts.gstatic.com/s/zenkakugothicnew/v16/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqpdKaWTSTGlMyd8.ttf", + "regular": "https://fonts.gstatic.com/s/zenkakugothicnew/v16/gNMYW2drQpDw0GjzrVNFf_valaDBcznOkjtiTWz5UGA.ttf", + "500": "https://fonts.gstatic.com/s/zenkakugothicnew/v16/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqs9LaWTSTGlMyd8.ttf", + "700": "https://fonts.gstatic.com/s/zenkakugothicnew/v16/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqodNaWTSTGlMyd8.ttf", + "900": "https://fonts.gstatic.com/s/zenkakugothicnew/v16/gNMVW2drQpDw0GjzrVNFf_valaDBcznOqr9PaWTSTGlMyd8.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zenkakugothicnew/v16/gNMYW2drQpDw0GjzrVNFf_valaDBcznOojpoSQ.ttf" + }, + { + "family": "Zen Kurenaido", + "variants": [ + "regular" + ], + "subsets": [ + "cyrillic", + "greek", + "japanese", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/zenkurenaido/v17/3XFsEr0515BK2u6UUptu_gWJZfz22PRLd0U.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zenkurenaido/v17/3XFsEr0515BK2u6UUptu_gWJVf383A.ttf" + }, + { + "family": "Zen Loop", + "variants": [ + "regular", + "italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v9", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/zenloop/v9/h0GrssK16UsnJwHsEK9zqwzX5vOG.ttf", + "italic": "https://fonts.gstatic.com/s/zenloop/v9/h0GtssK16UsnJwHsEJ9xoQj14-OGJ0w.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zenloop/v9/h0GrssK16UsnJwHsEJ9yoQg.ttf" + }, + { + "family": "Zen Maru Gothic", + "variants": [ + "300", + "regular", + "500", + "700", + "900" + ], + "subsets": [ + "cyrillic", + "greek", + "japanese", + "latin", + "latin-ext" + ], + "version": "v17", + "lastModified": "2024-08-07", + "files": { + "300": "https://fonts.gstatic.com/s/zenmarugothic/v17/o-0XIpIxzW5b-RxT-6A8jWAtCp-cQWpCPJqa_ajlvw.ttf", + "regular": "https://fonts.gstatic.com/s/zenmarugothic/v17/o-0SIpIxzW5b-RxT-6A8jWAtCp-k7UJmNLGG9A.ttf", + "500": "https://fonts.gstatic.com/s/zenmarugothic/v17/o-0XIpIxzW5b-RxT-6A8jWAtCp-cGWtCPJqa_ajlvw.ttf", + "700": "https://fonts.gstatic.com/s/zenmarugothic/v17/o-0XIpIxzW5b-RxT-6A8jWAtCp-cUW1CPJqa_ajlvw.ttf", + "900": "https://fonts.gstatic.com/s/zenmarugothic/v17/o-0XIpIxzW5b-RxT-6A8jWAtCp-caW9CPJqa_ajlvw.ttf" + }, + "category": "sans-serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zenmarugothic/v17/o-0SIpIxzW5b-RxT-6A8jWAtCp-U7Ehi.ttf" + }, + { + "family": "Zen Old Mincho", + "variants": [ + "regular", + "500", + "600", + "700", + "900" + ], + "subsets": [ + "cyrillic", + "greek", + "japanese", + "latin", + "latin-ext" + ], + "version": "v12", + "lastModified": "2024-08-07", + "files": { + "regular": "https://fonts.gstatic.com/s/zenoldmincho/v12/tss0ApVaYytLwxTqcxfMyBveyYb3g31S2s8p.ttf", + "500": "https://fonts.gstatic.com/s/zenoldmincho/v12/tss3ApVaYytLwxTqcxfMyBveyb4Dqlla8dMgPgBu.ttf", + "600": "https://fonts.gstatic.com/s/zenoldmincho/v12/tss3ApVaYytLwxTqcxfMyBveyb4vrVla8dMgPgBu.ttf", + "700": "https://fonts.gstatic.com/s/zenoldmincho/v12/tss3ApVaYytLwxTqcxfMyBveyb5LrFla8dMgPgBu.ttf", + "900": "https://fonts.gstatic.com/s/zenoldmincho/v12/tss3ApVaYytLwxTqcxfMyBveyb5zrlla8dMgPgBu.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zenoldmincho/v12/tss0ApVaYytLwxTqcxfMyBveybb2iXk.ttf" + }, + { + "family": "Zen Tokyo Zoo", + "variants": [ + "regular" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v7", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/zentokyozoo/v7/NGSyv5ffC0J_BK6aFNtr6sRv8a1uRWe9amg.ttf" + }, + "category": "display", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zentokyozoo/v7/NGSyv5ffC0J_BK6aFNtr6sRvwaxkQQ.ttf" + }, + { + "family": "Zeyada", + "variants": [ + "regular" + ], + "subsets": [ + "latin" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/zeyada/v19/11hAGpPTxVPUbgZDNGatWKaZ3g.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zeyada/v19/11hAGpPTxVPUbgZzNWyp.ttf" + }, + { + "family": "Zhi Mang Xing", + "variants": [ + "regular" + ], + "subsets": [ + "chinese-simplified", + "latin" + ], + "version": "v17", + "lastModified": "2024-08-12", + "files": { + "regular": "https://fonts.gstatic.com/s/zhimangxing/v17/f0Xw0ey79sErYFtWQ9a2rq-g0actfektIJ0.ttf" + }, + "category": "handwriting", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zhimangxing/v17/f0Xw0ey79sErYFtWQ9a2rq-g4aYneQ.ttf" + }, + { + "family": "Zilla Slab", + "variants": [ + "300", + "300italic", + "regular", + "italic", + "500", + "500italic", + "600", + "600italic", + "700", + "700italic" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v11", + "lastModified": "2024-09-04", + "files": { + "300": "https://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYpEY2HSjWlhzbaw.ttf", + "300italic": "https://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CVHapXnp2fazkfg.ttf", + "regular": "https://fonts.gstatic.com/s/zillaslab/v11/dFa6ZfeM_74wlPZtksIFWj0w_HyIRlE.ttf", + "italic": "https://fonts.gstatic.com/s/zillaslab/v11/dFa4ZfeM_74wlPZtksIFaj86-F6NVlFqdA.ttf", + "500": "https://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYskZ2HSjWlhzbaw.ttf", + "500italic": "https://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CDHepXnp2fazkfg.ttf", + "600": "https://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYuUe2HSjWlhzbaw.ttf", + "600italic": "https://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CIHCpXnp2fazkfg.ttf", + "700": "https://fonts.gstatic.com/s/zillaslab/v11/dFa5ZfeM_74wlPZtksIFYoEf2HSjWlhzbaw.ttf", + "700italic": "https://fonts.gstatic.com/s/zillaslab/v11/dFanZfeM_74wlPZtksIFaj8CRHGpXnp2fazkfg.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zillaslab/v11/dFa6ZfeM_74wlPZtksIFajw6-A.ttf" + }, + { + "family": "Zilla Slab Highlight", + "variants": [ + "regular", + "700" + ], + "subsets": [ + "latin", + "latin-ext" + ], + "version": "v19", + "lastModified": "2024-09-04", + "files": { + "regular": "https://fonts.gstatic.com/s/zillaslabhighlight/v19/gNMbW2BrTpK8-inLtBJgMMfbm6uNVDvRxhtIY2DwSXlM.ttf", + "700": "https://fonts.gstatic.com/s/zillaslabhighlight/v19/gNMUW2BrTpK8-inLtBJgMMfbm6uNVDvRxiP0TET4YmVF0Mb6.ttf" + }, + "category": "serif", + "kind": "webfonts#webfont", + "menu": "https://fonts.gstatic.com/s/zillaslabhighlight/v19/gNMbW2BrTpK8-inLtBJgMMfbm6uNVDvRxitJaWQ.ttf" + } + ] } diff --git a/lawnchair/res/layout/all_apps_folder_application.xml b/lawnchair/res/layout/all_apps_folder_application.xml index b0d6b8e55d..8e02012883 100644 --- a/lawnchair/res/layout/all_apps_folder_application.xml +++ b/lawnchair/res/layout/all_apps_folder_application.xml @@ -19,8 +19,5 @@ xmlns:android="http://schemas.android.com/apk/res/android" xmlns:launcher="http://schemas.android.com/apk/res-auto" style="@style/BaseIcon" - android:textColor="?attr/folderTextColor" android:includeFontPadding="false" - android:hapticFeedbackEnabled="false" - launcher:iconDisplay="drawer_folder" - launcher:centerVertically="true" /> + launcher:iconDisplay="drawer_folder" /> diff --git a/lawnchair/res/layout/all_apps_folder_icon.xml b/lawnchair/res/layout/all_apps_folder_icon.xml index cad625c296..47fb1415af 100644 --- a/lawnchair/res/layout/all_apps_folder_icon.xml +++ b/lawnchair/res/layout/all_apps_folder_icon.xml @@ -25,8 +25,8 @@ android:paddingLeft="@dimen/dynamic_grid_cell_padding_x" android:paddingRight="@dimen/dynamic_grid_cell_padding_x" android:focusable="true" > - Muurpapier Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-am-rET/strings.xml b/lawnchair/res/values-am-rET/strings.xml index f262d8e674..67d9d49b05 100644 --- a/lawnchair/res/values-am-rET/strings.xml +++ b/lawnchair/res/values-am-rET/strings.xml @@ -21,8 +21,8 @@ Actions and Verbs --> - ቅድመ ዕይታ - ፍጠር + Preview + Create Backup Restore Delete @@ -91,7 +91,6 @@ Wallpaper Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-ar-rSA/strings.xml b/lawnchair/res/values-ar-rSA/strings.xml index 8e639c5a69..9426f932ba 100644 --- a/lawnchair/res/values-ar-rSA/strings.xml +++ b/lawnchair/res/values-ar-rSA/strings.xml @@ -42,25 +42,25 @@ إلغاء تحديد الكل الاختيار العكسي جارٍ التحميل… - تجاهل + Dismiss تنزيل التحديث تثبيت التحديث - اعرض التغييرات + View changes لقد تم التحديث! - التحديثات - فشل تطبيق التغييرات - لم يتم العثور على تحديثات - إصدار #%1$d → #%2$d - بواسطة %1$s • %2$s • %3$s + Updates + Failed to load changes + No changes found + Build #%1$d → #%2$d + by %1$s • %2$s • %3$s - الآن - منذ %dدقيقة - %dساعة - %dيوم - %dأسبوع - %dشهر - %dعام + just now + %dm + %dh + %dd + %dw + %dmo + %dy تتم الإدارة بواسطة Lawnchair التفضيلات @@ -87,11 +87,10 @@ شبكة التصميم أو التخطيط - عرض الخلفية + Show wallpaper الخلفية أسلوب شفافية الخلفية - خلفية منفصلة لشريط بحث تم النسخ إلى الحافظة النتائج نسخت إلي الحافظة @@ -115,7 +114,7 @@ إظهار التطبيقات الفريدة فقط مجلدي - للقيام بإجراءات معينة (مثل غلق الهاتف) عند تنفيذ إيماءة، يتطلب Lawnchair منح الاذن إلى إمكانية الوصول.\n\nلا يراقب Lawnchair أي إجراء للمستخدم، على الرغم من ذلك فان الاذن مطلوب لجميع خدمات إمكانية الوصول. يتجاهل Lawnchair أي حدث يرسله النظام.\n\nلغلق هاتفك أو فتح \"التطبيقات الأخيرة\"، يستخدم Lawnchair خدمة إمكانية الوصول performGlobalAction. + To perform certain actions (such as locking your phone) when performing a gesture, Lawnchair requires accessibility access.\n\nLawnchair doesn\'t watch any user action, though the privilege to do so is required for all accessibility services. Lawnchair discards any event sent by the system.\n\nIn order to lock your phone, or to open the Recents screen, Lawnchair uses the performGlobalAction Accessibility service. %1$s (%2$d) %1$d x %2$d %1$s & %2$s @@ -140,7 +139,7 @@ عدد الصفوف والأعمدة الإيماءات النقرات والسحب - قائمة التطبيقات الأخيرة + Recents screen زر \"مسح الكل\"، نصف قطر الزاوية حول التطبيق معلومات التطبيق @@ -155,10 +154,10 @@ زيادة الحجم الأقصى المسموح به لشبكة الشاشة الرئيسية من 10 x 10 إلى 20 x 20 إعادة تحميل الأيقونات دائماً تجنب استخدام الأيقونات المخزنة مؤقتًا من حزم الأيقونات - إيماءات السحب للأيقونة - تنفيذ الإجراءات عند السحب لليسار أو لليمين على الأيقونات بدلاً من نقل الشاشة الرئيسية - تخطيط المجموعة - إظهار خيار التخطيط لإخفاء صفحة التطبيقات وإضافة التطبيقات الجديدة تلقائياً إلى الشاشة الرئيسية + Icon swipe gestures + Perform actions when swiping left or right on icons instead of moving the home screen + Deck layout + Show a layout option to hide the app drawer and automatically add new apps to the home screen قفل/فتح منع إغلاق التطبيق المحدد عند الضغط على \"مسح الكل\" @@ -223,9 +222,9 @@ مربع دائري دمعة - أيقونة ذات أربع جوانب - أيقونة ذات سبع جوانب - قوس + Four-sided cookie + Seven-sided cookie + Arch شكل أيقونة مخصص إنشاء شكل أيقونة مخصص @@ -249,7 +248,7 @@ الأيقونات المخصصة معطل الشاشة الرئيسية - الشاشة الرئيسية و قائمة التطبيقات + Home screen and app drawer لا توجد حزم أيقونات مدعومة إضافة خطوط @@ -325,7 +324,7 @@ ماذا تعرض التقويم - التاريخ والوقت + Date and time التاريخ الوقت تنسيق الوقت @@ -363,19 +362,19 @@ ترجمة تبرع المنتج - تصميم و تطوير + Design and development التطوير صيانة QuickSwitch DevOps - الدعم والعلاقات العامة - المجتمع - تليجرام + Support and PR + Community + Telegram الأخبار - قانوني + Legal الشكر والتقدير - سياسة الخصوصية - مفعل - فشل التحقق من وجود تحديثات + Privacy policy + Active + Failed to check for updates - سيتم تجاهل هذه الإعدادات لأن Lawnchair لم يتم اختياره كمزود لقائمة التطبيقات الأخيرة + These settings will be ignored as Lawnchair isn\'t set as the Recents screen provider تكامل النظام غير متوافق تم تكوين جهازك ليحتوي على إيماءات النظام (المعروفة باسم Quickstep) المقدمة بواسطة %1$s، ولكن هذا الإصدار من %1$s غير متوافق مع إصدار Android الخاص بك. لمتابعة استخدام جهازك، يرجى إلغاء تثبيت تحديثات %1$s أو تعطيل %1$s كمزود لإيماءات النظام. خلفية شفافة @@ -569,7 +568,7 @@ إيقاف إجباري نصف قطر زوايا الشاشة تخصيص نصف قطر زوايا الشاشة - عند السحب لأعلى لفتح التطبيقات الأخيرة، يتبع التطبيق الحالي إصبعك، ويتغير إلى بطاقة صغيرة. استخدم شريط التمرير هذا لتعديل تحدب الزاوية في البطاقة عندما تكون ملء الشاشة تقريباً بحيث تطابق تحدب زوايا الشاشة. + When you swipe up to open the Recents screen, the current app follows your finger, shrinking into a card. Use this slider to adjust the corner radius of the card when it\'s nearly full screen so it matches the corners of your screen. شريط المهام إظهار شريط المهام (تجريبي) - البحث في التطبيقات، شبكة الإنترنت، والمزيد + Search apps, web, and more البحث عن التطبيقات لم يتم العثور على تطبيقات مطابقة لـ \"%1$s\" من الويب @@ -588,7 +587,7 @@ البحث عن المزيد من التطبيقات البحث على %1$s لا يوجد متجر تطبيقات أو متصفح مثبت - البحث في الإنترنت + Search on the web مسح سجل البحث مسح مربع البحث @@ -611,30 +610,30 @@ بحث التطبيقات البحث العالمي (على الجهاز) البحث العالمي (عبر ASI) - اسم محرك البحث - عنوان محرك البحث - رابط محرك البحث عن اقتراحات - %s سيتم استبداله بعبارة البحث - %s سيتم استبدالها بعبارة البحث. النتائج يجب أن تكون بتنسيق JSON Opensearch. + Search engine name + Search engine URL + Dearch suggestions URL + %s will be replaced with the search query + %s will be replaced with the search query. Results must be in JSON OpenSearch format. إظهار في نتائج البحث - التطبيقات والاختصارات + Apps and shortcuts اختصارات التطبيقات الأشخاص نصائح Pixel إعدادات Android ملفات - الصور ومقاطع الفيديو - الملفات الصوتية - كل الملفات + Photos and videos + Audio files + All files اقتراحات الويب سجل البحث آلة حاسبة - بدء البحث - البحث عن التطبيقات، وجهات الاتصال، والمزيد. ستظهر عمليات البحث الأخيرة هنا. - البحث عن التطبيقات، وجهات الاتصال، والمزيد. + Start searching + Find apps, contacts, and more. Your recent searches will appear here. + Find apps, contacts, and more. - البحث عن + Search on الوسائط، الملفات، والمزيد جهات الاتصال والمزيد عبر %1$s @@ -649,33 +648,33 @@ َلاحِيَة الوصول إلى الإشعارات مطلوبة لعرض نقاط الإشعارات، قم بتشغيل إشعارات التطبيقات لـ %1$s - مطلوب إذن الوصول إلى جهات الاتصال - للبحث عن جهات الاتصال، امنح صَلاحِيَة الوصول إلى جهات الاتصال والهاتف ل %1$s - مطلوب الوصول إلى الملفات الصوتية - للبحث عن الملفات الصوتية، يحتاج %1$s إلى إذن للوصول إلى مكتبة الوسائط الخاصة بك. + Contacts permission needed + To search for contacts, grant contacts and phone permissions to %1$s + Music and audio access needed + To search your music and other audio files, %1$s needs permission to access your media library. - مطلوب منح صَلاحِيَة الوصول إلى الصور والفيديو - للبحث عن الصور ومقاطع الفيديو، يحتاج %1$s إلى إذن للوصول إلى مكتبة الوسائط الخاصة بك. - هل تمنح صَلاحِيَة الوصول إلى كامل مكتبة الوسائط الخاصة بك؟ - للبحث عن كل صورك ومقاطع الفيديو، يحتاج %1$s إلى الوصول الكامل لمكتبة الوسائط الخاصة بك. - منح أذونات الوسائط كاملة - إدارة العناصر المحددة + Photos and videos access needed + To search your photos and videos, %1$s needs permission to access your media library. + Access your full media library? + To search all your photos and videos, %1$s needs full access to your media library. + Grant full media permissions + Manage selected items - مطلوب الوصول إلى وحدة التخزين الخارجية - للبحث عن ملفاتك، يحتاج %1$s إلى إذن للوصول إلى وحدة التخزين الخارجية للجهاز. - مطلوب الوصول إلى وحدة التخزين - لعرض ملفاتك في نتائج البحث، يتطلب %1$s الإذن لإدارة جميع الملفات على جهازك. يستخدم هذا الإذن فقط لعرض الملفات ولن يستخدم لقراءة أو تغيير محتوى الملفات الخاصة بك. - لعرض معاينة الخلفية وإدراجها في النسخ الاحتياطية، يتطلب %1$s الإذن %2$s. و ذلك بسبب تقييدات النظام المتعلقة بالوصول إلى بيانات خلفية الشاشة. - لقراءة جميع ملفات الجهاز - لإدارة جميع ملفات الجهاز - مطلوب العديد من الأذونات - لعرض معاينة الخلفية وإدراجها في النسخ الاحتياطية، يحتاج %1$s الأذونات التالية. وذلك بسبب القيود المفروضة من النظام للوصول إلى بيانات خلفية الشاشة. - إدارة جميع ملفات الجهاز - إذن الوصول إلى الصور ومقاطع الفيديو - لم يتم منح صَلاحِيَة الوصول إلى وحدة التخزين - بسبب سياسة جوجل بلاي ، لا يمكن أن يطلب %1$s الوصول الكامل لوحدة التخزين هنا. للوصول إلى كل الملفات، الرجاء تنزيل %1$s من GitHub. بدلاً من ذلك، يمكنك منح الوصول إلى الصور و الفيديو والملفات الصوتية بشكل فردي في الإعدادات. + External storage access needed + To search your files, %1$s needs permission to access your device\'s external storage. + Manage storage access needed + To display your files in search results, %1$s requires permission to manage all files on your device. This permission is used solely to list files and will not be used to read or change the content of your personal files. + To display wallpaper previews and include them in backups, %1$s requires permission %2$s. This is due to system limitations for accessing wallpaper data. + to read all files on your device + to manage all files on your device + Multiple permissions needed + To display wallpaper previews and include them in backups, %1$s requires the following permissions. This is due to system limitations for accessing wallpaper data. + Manage all files on device + Read photos and videos + Cannot enable manage storage access + Due to Play Store policy, %1$s cannot request full storage access here. To access all files, please download %1$s from GitHub. Alternatively, you can grant access to photos, videos, and audio files individually in settings. فتح الإعدادات منح الأذونات - الأذونات مطلوبة - اضغط لمنح الأذونات + Permissions needed + Tap to grant permissions diff --git a/lawnchair/res/values-az-rAZ/strings.xml b/lawnchair/res/values-az-rAZ/strings.xml index ca56394971..27c37b6ebe 100644 --- a/lawnchair/res/values-az-rAZ/strings.xml +++ b/lawnchair/res/values-az-rAZ/strings.xml @@ -91,7 +91,6 @@ Wallpaper Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-b+sr+Latn/strings.xml b/lawnchair/res/values-b+sr+Latn/strings.xml index fad0b386cc..46e4da7ff0 100644 --- a/lawnchair/res/values-b+sr+Latn/strings.xml +++ b/lawnchair/res/values-b+sr+Latn/strings.xml @@ -91,7 +91,6 @@ Pozadina Style Neprozirnost pozadine - Separated Search bar background Kopirano u privremenu memoriju Rezultat je kopiran u privremenu memoriju @@ -610,7 +609,7 @@ Globalna pretraga pomoću ASI-ja Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-bn-rBD/strings.xml b/lawnchair/res/values-bn-rBD/strings.xml index a0c7efe308..76cee92bc1 100644 --- a/lawnchair/res/values-bn-rBD/strings.xml +++ b/lawnchair/res/values-bn-rBD/strings.xml @@ -91,7 +91,6 @@ ওয়ালপেপার স্টাইল ব্যাকগ্রাউন্ডের অস্বচ্ছতা - Separated Search bar background ক্লিপবোর্ডের অস্বচ্ছতা ফলাফল ক্লিপবোর্ডে কপি করা হয়েছে @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-bs-rBA/strings.xml b/lawnchair/res/values-bs-rBA/strings.xml index 14046248fa..247acedbbd 100644 --- a/lawnchair/res/values-bs-rBA/strings.xml +++ b/lawnchair/res/values-bs-rBA/strings.xml @@ -91,7 +91,6 @@ Pozadinska slika Stil Providnost pozadine - Separated Search bar background Kopirano u međuspremnik Rezultat kopiran u međuspremnik @@ -610,7 +609,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-ca-rES/strings.xml b/lawnchair/res/values-ca-rES/strings.xml index b314b9a864..6e2c856db7 100644 --- a/lawnchair/res/values-ca-rES/strings.xml +++ b/lawnchair/res/values-ca-rES/strings.xml @@ -91,7 +91,6 @@ Fons de pantalla Estil Opacitat del fons - Separated Search bar background S\'ha copiat al porta-retalls Resultat copiat al porta-retalls @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-cs-rCZ/strings.xml b/lawnchair/res/values-cs-rCZ/strings.xml index 0254afcd14..ac0c52039f 100644 --- a/lawnchair/res/values-cs-rCZ/strings.xml +++ b/lawnchair/res/values-cs-rCZ/strings.xml @@ -91,7 +91,6 @@ Tapeta Styl Průhlednost Pozadí - Separated Search bar background Zkopírováno do schránky Výsledek zkopírován do schránky @@ -611,7 +610,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-da-rDK/strings.xml b/lawnchair/res/values-da-rDK/strings.xml index 17cc8572a8..5ecfb37a5a 100644 --- a/lawnchair/res/values-da-rDK/strings.xml +++ b/lawnchair/res/values-da-rDK/strings.xml @@ -91,7 +91,6 @@ Baggrund Style Baggrundsgennemsigtighed - Separated Search bar background Kopieret til udklipsholder Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-de-rDE/strings.xml b/lawnchair/res/values-de-rDE/strings.xml index edf9611cdf..9459706e25 100644 --- a/lawnchair/res/values-de-rDE/strings.xml +++ b/lawnchair/res/values-de-rDE/strings.xml @@ -91,7 +91,6 @@ Hintergrund Stil Hintergrundtransparenz - Abgegrenzter Suchleisten-Hintergrund In Zwischenablage kopiert Ergebnis in Zwischenablage kopiert @@ -609,7 +608,7 @@ Globale Suche (über ASI) Suchmaschinen-Name Suchmaschinen-URL - URL für Suchvorschläge + Benutzerdefinierte Suchvorschläge-URL %s wird durch den Suchbegriff ersetzt %s wird durch die Suchanfrage ersetzt. Ergebnisse müssen im JSON OpenSearch Format sein. diff --git a/lawnchair/res/values-el-rGR/strings.xml b/lawnchair/res/values-el-rGR/strings.xml index b48a0a145a..97317a7642 100644 --- a/lawnchair/res/values-el-rGR/strings.xml +++ b/lawnchair/res/values-el-rGR/strings.xml @@ -91,7 +91,6 @@ Ταπετσαρία Στυλ Αδιαφάνεια φόντου - Διαχωρισμένο φόντο μπάρας αναζήτησης Αντιγράφηκε στο πρόχειρο Το αποτέλεσμα αντιγράφηκε στο πρόχειρο diff --git a/lawnchair/res/values-en-rCA/strings.xml b/lawnchair/res/values-en-rCA/strings.xml index 80f6d971f8..534874a9fb 100644 --- a/lawnchair/res/values-en-rCA/strings.xml +++ b/lawnchair/res/values-en-rCA/strings.xml @@ -91,7 +91,6 @@ Wallpaper Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-es-rES/strings.xml b/lawnchair/res/values-es-rES/strings.xml index 1c94978214..e85288255f 100644 --- a/lawnchair/res/values-es-rES/strings.xml +++ b/lawnchair/res/values-es-rES/strings.xml @@ -91,7 +91,6 @@ Fondo de pantalla Estilo Opacidad del fondo - Separated Search bar background Copiado al portapapeles Resultado copiado al portapapeles @@ -466,7 +465,7 @@ Evita cambiar sin querer la disposición de la pantalla de inicio Mostrar paginación de puntos Usar puntos en vez de líneas para mostrar el número de página - Usar nuevo estilo de ventana emergente + Usar el nuevo estilo del menú emergente Usar el estilo de «Material You» animado y minimalista para los menús emergentes Menú emergente Elementos del menú emergente @@ -609,7 +608,7 @@ Búsqueda global (a través de ASI) Nombre del buscador URL del buscador - Search suggestions URL + URL de sugerencias de búsqueda %s se reemplazará con la consulta de búsqueda %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-et-rEE/strings.xml b/lawnchair/res/values-et-rEE/strings.xml index 06b669e289..e5e4a77d74 100644 --- a/lawnchair/res/values-et-rEE/strings.xml +++ b/lawnchair/res/values-et-rEE/strings.xml @@ -91,7 +91,6 @@ Taustapilt Stiil Tausta läbipaistmatus - Eraldatud otsinguriba taust Kopeeriti lõikelauale Tulemus kopeeriti lõikelauale diff --git a/lawnchair/res/values-fa-rIR/strings.xml b/lawnchair/res/values-fa-rIR/strings.xml index 11b4a9fac7..97da776478 100644 --- a/lawnchair/res/values-fa-rIR/strings.xml +++ b/lawnchair/res/values-fa-rIR/strings.xml @@ -91,7 +91,6 @@ کاغذ دیواری سبک شفافیت پس‌زمینه - پس‌زمینه نوار جستجو جدا شده در کلیپ‌بورد کپی شد نتیجه در کلیپ بورد کپی شد @@ -611,7 +610,7 @@ آدرس موتور جستجو آدرس اینترنتی پیشنهادات جستجو % با عبارت جستجو جایگزین خواهد شد - % با عبارت جستجو جایگزین می‌شوند. نتایج باید در قالب جستجو‌آزاد JSON باشند. + %s will be replaced with the search query. Results must be in JSON OpenSearch format. نشان‌دادن در نتایج جستجو برنامه‌ها و میانبرها @@ -646,30 +645,30 @@ دسترسی به اعلان‌ها نیاز است برای نمایش نشان اعلان، اعلان‌های برنامه را برای %1$s روشن کنید مجوز مخاطبین مورد نیاز است - برای جستجوی مخاطبین، مجوزهای مخاطبین و تلفن را به %1$s اعطا کنید - دسترسی به موسیقی و صدا لازم است - برای جستجوی موسیقی و سایر فایل‌های صوتی شما، %1$s به مجوز دسترسی به کتابخانه رسانه شما نیاز دارد. + To search for contacts, grant contacts and phone permissions to %1$s + Music and audio access needed + To search your music and other audio files, %1$s needs permission to access your media library. دسترسی به عکس‌ها و ویدیوها الزامی است - برای جستجوی عکس‌ها و ویدیوهای شما، %1$s به مجوز دسترسی به کتابخانه رسانه شما نیاز دارد. - به کتابخانه کامل رسانه خود دسترسی پیدا کنید؟ - برای جستجوی تمام عکس‌ها و ویدیوهای شما، %1$s نیاز به دسترسی کامل به کتابخانه رسانه‌های شما دارد. + To search your photos and videos, %1$s needs permission to access your media library. + Access your full media library? + To search all your photos and videos, %1$s needs full access to your media library. اعطای مجوز کامل رسانه - مدیریت موارد انتخابی + Manage selected items - دسترسی به حافظه خارجی مورد نیاز است - برای جستجوی فایل‌های شما، %1$s به مجوز دسترسی به حافظه خارجی دستگاه شما نیاز دارد. - دسترسی به حافظه مورد نیاز است - برای نمایش فایل‌های شما در نتایج جستجو، %1$s به مجوز مدیریت تمام فایل‌های دستگاه شما نیاز دارد. این مجوز صرفاً برای فهرست کردن فایل‌ها استفاده می‌شود و برای خواندن یا تغییر محتوای فایل‌های شخصی شما استفاده نخواهد شد. - برای نمایش پیش‌نمایش تصاویر پس‌زمینه و قرار دادن آنها در پشتیبان‌گیری‌ها، %1$s به مجوز %2$s نیاز دارد. این به دلیل محدودیت‌های سیستم برای دسترسی به داده‌های تصویر زمینه است. - برای خواندن تمام فایل‌های موجود در دستگاه شما - برای مدیریت تمام فایل‌های موجود در دستگاه شما - مجوزهای متعدد مورد نیاز است - برای نمایش پیش‌نمایش تصاویر پس‌زمینه و قرار دادن آنها در پشتیبان‌گیری‌ها، %1$s به مجوزهای زیر نیاز دارد. به دلیل محدودیت‌های سیستم برای دسترسی به داده‌های تصویر زمینه است. - مدیریت فایل‌های دستگاه + External storage access needed + To search your files, %1$s needs permission to access your device\'s external storage. + Manage storage access needed + To display your files in search results, %1$s requires permission to manage all files on your device. This permission is used solely to list files and will not be used to read or change the content of your personal files. + To display wallpaper previews and include them in backups, %1$s requires permission %2$s. This is due to system limitations for accessing wallpaper data. + to read all files on your device + to manage all files on your device + Multiple permissions needed + To display wallpaper previews and include them in backups, %1$s requires the following permissions. This is due to system limitations for accessing wallpaper data. + Manage all files on device خواندن عکسها و ویدیو ها نمیتوان دسترسی مدیریت حافظه را فعال کرد - به دلیل سیاست‌های فروشگاه Play، %1$s نمی‌تواند در اینجا درخواست دسترسی کامل به فضای ذخیره‌سازی را بدهد. برای دسترسی به همه فایل‌ها، لطفاً %1$s را از GitHub دانلود کنید. همچنین، می‌توانید در تنظیمات، دسترسی به عکس‌ها، ویدیوها و فایل‌های صوتی را به صورت جداگانه اعطا کنید. + Due to Play Store policy, %1$s cannot request full storage access here. To access all files, please download %1$s from GitHub. Alternatively, you can grant access to photos, videos, and audio files individually in settings. بازکردن تنظیمات اعطای مجوز مجوزهای مورد نیاز diff --git a/lawnchair/res/values-fi-rFI/strings.xml b/lawnchair/res/values-fi-rFI/strings.xml index d7f8a91e34..a1e155724f 100644 --- a/lawnchair/res/values-fi-rFI/strings.xml +++ b/lawnchair/res/values-fi-rFI/strings.xml @@ -91,7 +91,6 @@ Taustakuva Tyyli Taustan läpinäkymättömyys - Separated Search bar background Kopioitu leikepöydälle Tulos kopioitu leikepöydälle @@ -609,7 +608,7 @@ Globaali haku (ASI:n kautta) Hakukoneen nimi Hakukoneen URL - Search suggestions URL + Hakuehdotusten URL-osoite %s tullaan korvaamaan haun kyselyllä %s korvataan haun kyselyllä ja tulosten on oltava JSON OpenSearch -muodossa. diff --git a/lawnchair/res/values-fil-rPH/strings.xml b/lawnchair/res/values-fil-rPH/strings.xml index 78b3923acf..fe63d3f7c3 100644 --- a/lawnchair/res/values-fil-rPH/strings.xml +++ b/lawnchair/res/values-fil-rPH/strings.xml @@ -91,7 +91,6 @@ Wallpaper Istillo Kalabuan ng Background - Separated Search bar background Naisalin sa clipboard Nadikit ang resulta sa clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-fr-rFR/strings.xml b/lawnchair/res/values-fr-rFR/strings.xml index 7994771b90..69fea01ec8 100644 --- a/lawnchair/res/values-fr-rFR/strings.xml +++ b/lawnchair/res/values-fr-rFR/strings.xml @@ -91,7 +91,6 @@ Fond d\'écran Style Opacité de l\'arrière-plan - Arrière-plan séparé de la barre de recherche Copié dans le presse-papiers Résultat copié dans le presse-papiers diff --git a/lawnchair/res/values-gl-rES/strings.xml b/lawnchair/res/values-gl-rES/strings.xml index 9511901a80..712a7c8a4e 100644 --- a/lawnchair/res/values-gl-rES/strings.xml +++ b/lawnchair/res/values-gl-rES/strings.xml @@ -50,7 +50,7 @@ Actualizacións Failed to load changes - Non se atoparon cambios + No changes found Build #%1$d → #%2$d by %1$s • %2$s • %3$s @@ -91,7 +91,6 @@ Fondo de pantalla Estilo Opacidade do fondo - Separated Search bar background Copiado ao portapapeis Resultado copiado ao portapapeis @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-hi-rIN/strings.xml b/lawnchair/res/values-hi-rIN/strings.xml index f891c472be..a9a6055210 100644 --- a/lawnchair/res/values-hi-rIN/strings.xml +++ b/lawnchair/res/values-hi-rIN/strings.xml @@ -91,7 +91,6 @@ वॉलपेपर Style पृष्ठभूमि अपारदर्शिता - Separated Search bar background क्लिपबोर्ड पर कॉपी किया गया Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-hr-rHR/strings.xml b/lawnchair/res/values-hr-rHR/strings.xml index 43e9df0b00..5254c42311 100644 --- a/lawnchair/res/values-hr-rHR/strings.xml +++ b/lawnchair/res/values-hr-rHR/strings.xml @@ -91,7 +91,6 @@ Pozadina Stil Prozirnost pozadine - Separated Search bar background Kopirano u međuspremnik Odabir kopiran u međuspremnik @@ -610,7 +609,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-hu-rHU/strings.xml b/lawnchair/res/values-hu-rHU/strings.xml index 81ed61c8a4..55a38360cc 100644 --- a/lawnchair/res/values-hu-rHU/strings.xml +++ b/lawnchair/res/values-hu-rHU/strings.xml @@ -91,7 +91,6 @@ Háttérkép Stílus Háttér átlátszósága - Separated Search bar background Vágólapra másolva Az eredmény a vágólapra másolva @@ -609,7 +608,7 @@ Globális keresés (ASI-val) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-in-rID/strings.xml b/lawnchair/res/values-in-rID/strings.xml index fbcc42c8ac..f4d464a41d 100644 --- a/lawnchair/res/values-in-rID/strings.xml +++ b/lawnchair/res/values-in-rID/strings.xml @@ -91,7 +91,6 @@ Wallpaper Gaya Tingkat transparan latar belakang - Separated Search bar background Disalin ke papan klip Hasil disalin ke papan klip @@ -608,7 +607,7 @@ Pencarian global (melalui ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-it-rIT/strings.xml b/lawnchair/res/values-it-rIT/strings.xml index 43e34ac74b..eb0bb8cb6f 100644 --- a/lawnchair/res/values-it-rIT/strings.xml +++ b/lawnchair/res/values-it-rIT/strings.xml @@ -91,7 +91,6 @@ Sfondo Stile Opacità sfondo - Sfondo barra di ricerca separata Copiato negli appunti Risultato copiato negli appunti @@ -609,7 +608,7 @@ Ricerca globale (tramite ASI) Nome motore di ricerca URL motore di ricerca - Search suggestions URL + URL suggerimenti di ricerca %s sarà sostituito con la query di ricerca %s diventerà la query di ricerca. I risultati devono essere in formato JSON OpenSearch. diff --git a/lawnchair/res/values-iw-rIL/strings.xml b/lawnchair/res/values-iw-rIL/strings.xml index edafaa2474..3092c90fde 100644 --- a/lawnchair/res/values-iw-rIL/strings.xml +++ b/lawnchair/res/values-iw-rIL/strings.xml @@ -91,7 +91,6 @@ רקע Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -611,7 +610,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-ja-rJP/strings.xml b/lawnchair/res/values-ja-rJP/strings.xml index f9174fe1d5..df4bc802d0 100644 --- a/lawnchair/res/values-ja-rJP/strings.xml +++ b/lawnchair/res/values-ja-rJP/strings.xml @@ -40,7 +40,7 @@ 完了 すべて選択 すべて選択解除 - 選択を反転する + Inverse selection 読み込み中… 無視 アップデートをダウンロード @@ -55,12 +55,12 @@ by %1$s • %2$s • %3$s たった今 - %d分 - %d時間 - %d日 - %d週間 - %d月 - %d年 + %dm + %dh + %dd + %dw + %dmo + %dy Lawnchair に管理されています 設定 @@ -87,11 +87,10 @@ グリッド レイアウト - 壁紙を表示する + Show wallpaper 壁紙 スタイル 背景の透明度 - 検索バーの背景を区切る クリップボードにコピーしました 結果をクリップボードにコピーしました @@ -99,7 +98,7 @@ 表示する項目 壁紙 - Caddy(ベータ版) + Caddy (Beta) Caddy アプリドロワーのフォルダー ドロワーフォルダー @@ -115,7 +114,7 @@ 固有のアプリのみ表示 自分のフォルダー - ジェスチャー操作時に特定の操作(スマートフォンのロックなど)を実行するには、Lawnchair にユーザー補助機能へのアクセスが必要です。\n\nLawnchair はユーザーの操作を監視しませんが、すべてのユーザー補助サービスにはユーザー補助機能へのアクセス権限が必要です。Lawnchair はシステムから送信されたイベントをすべて破棄します。\n\nLawnchair はスマートフォンをロックしたり、「最近」画面を開いたりするために、performGlobalAction ユーザー補助機能サービスを使用します。 + To perform certain actions (such as locking your phone) when performing a gesture, Lawnchair requires accessibility access.\n\nLawnchair doesn\'t watch any user action, though the privilege to do so is required for all accessibility services. Lawnchair discards any event sent by the system.\n\nIn order to lock your phone, or to open the Recents screen, Lawnchair uses the performGlobalAction Accessibility service. %1$s (%2$d) %1$d × %2$d %1$s & %2$s @@ -140,7 +139,7 @@ 行と列の数 ジェスチャー タップとスワイプ - タスク管理画面 + Recents screen 「すべてクリア」ボタン、角の丸み このアプリについて アプリ情報 @@ -155,10 +154,10 @@ ホーム画面のグリッド数を 10 × 10 から 20 × 20 まで増やします 常にアイコンを再読み込みします アイコンパックからキャッシュされたアイコンを使用しないようにします - アイコンのスワイプジェスチャー - アイコンを左右にスワイプした時にホーム画面の移動の代わりにアクションを実行します - ドックのレイアウト - アプリドロワーを非表示にし、自動的に新しいアプリをホーム画面に追加するためのレイアウトオプションを表示します + Icon swipe gestures + Perform actions when swiping left or right on icons instead of moving the home screen + Deck layout + Show a layout option to hide the app drawer and automatically add new apps to the home screen ロック/ロック解除 「すべてクリア」を押したときに選択したアプリを閉じないようにします @@ -223,9 +222,9 @@ 丸みがかった正方形 水滴型 - 四面クッキー - 七面クッキー - アーチ + Four-sided cookie + Seven-sided cookie + Arch カスタムアイコン形状 カスタムアイコン形状を作成します @@ -244,12 +243,12 @@ アイコンパック テーマアイコンのソース - アクセントカラーで染色する + Tint with accent color システムアイコン テーマアイコン オフ ホーム画面 - ホーム画面とドロワー + Home screen and app drawer サポートされているアイコンパックがありません フォントを追加 @@ -342,7 +341,7 @@ Smartspacer の設定 タップでセットアップ - %1$sを使用するには、通知ドットをオンにします。 + To use %1$s, turn on Notification Dots. ホーム画面に表示します スナップショットは、Lawnchairウィジェットを配置することでホーム画面に手動で追加できます @@ -374,8 +373,8 @@ 法的事項 謝辞 プライバシーポリシー - アクティブ - アップデートの確認に失敗しました + Active + Failed to check for updates ドックを表示 - 検索バーの設定は、Dock が表示されているときに利用できます。Dock を表示するにはタップしてください。 + Search bar settings are available when the Dock is visible. Tap to show the Dock. 検索バー 検索バーの設定 検索バーウィジェット @@ -508,22 +507,22 @@ 背景色 背景の透明度 - 一時停止 - %1$s を一時停止しますか? - %1$s の通知は一時停止されます - アプリを一時停止中 - %1$s はランチャーから直接一時停止しました - アプリを一時停止 + Pause + Pause %1$s? + Notifications for %1$s will be paused + App paused + %1$s was directly paused from the launcher + Pause app ドックアイコン 下の余白 ページインジケーターの高さ アプリ検索 カスタム - %1$s と Lawnchair は収益分配契約を持っています。\n\n %1$s で検索するとLawnchair をサポートすることができます。 + %1$s and Lawnchair have a revenue share agreement.\n\nSearching with %1$s helps support Lawnchair. アプリ ウェブサイト - アプリが必要 + App required 検索 Google レンズ @@ -552,9 +551,9 @@ 最大のフォルダー列数 フォルダーの行の最大値 - Lawnchair がアプリ履歴画面のプロバイダーとして設定されていないため、これらの設定は無視されます - 互換性のないシステム統合 - お使いのデバイスは %1$s が提供するシステムジェスチャー ( Quickstep として知られています) が設定されていますが %1$s のこのバージョンはお使いの Android のバージョンと互換性がありません。デバイスを引き続き使用するには、%1$s の更新をアンインストールするか、システムジェスチャープロバイダとして %1$s を無効にしてください。 + These settings will be ignored as Lawnchair isn\'t set as the Recents screen provider + Incompatible system integration + Your device is configured to have system gestures (known as Quickstep) provided by %1$s, but this version of %1$s isn\'t compatible with your Android version. To continue using your device, please uninstall %1$s updates or disable %1$s as a system gesture provider. 半透明の背景 背景の透明度 クイックアクション @@ -563,8 +562,8 @@ すべてクリア 強制的に閉じる 画面の角の半径 - 画面の角の半径 - アプリ履歴画面を開くために上にスワイプすると、現在のアプリは指に従ってカードに縮小します。 このスライダーを使用して、画面の角に合うようにカードの角の半径を調節します。 + Custom screen corner radius + When you swipe up to open the Recents screen, the current app follows your finger, shrinking into a card. Use this slider to adjust the corner radius of the card when it\'s nearly full screen so it matches the corners of your screen. タスクバー タスクバーを表示(実験的な機能) - アプリ、ウェブ、その他を検索 + Search apps, web, and more アプリを検索 %1$s と一致するアプリがありません Web @@ -583,7 +582,7 @@ アプリストアで検索 %1$sで検索 アプリストアかブラウザがインストールされていません - Web検索 + Search on the web 検索履歴を消去 検索ボックスをクリア @@ -593,24 +592,24 @@ あいまい検索 アプリ検索でおおよその検索ができます サジェスト - ドロワーの上部に提案されたアプリを表示 + Show suggested apps at the top of the drawer デバイスを探す - 連絡先、ファイル、設定を検索 + Search your phone contacts, files, and settings 検索結果に非表示のアプリを表示する 完全一致で表示する - Web提案プロバイダー - 検索バーにウェブ提案プロバイダーのアイコンを表示する + Web suggestion provider + Show web suggestion provider icon in search bar ドック検索バーのアクションを一致させる ドック検索バーをクリックすると、アプリドロワーの検索UIを開きます 検索のアルゴリズム アプリ検索 グローバル検索 (デバイス上) グローバル検索 (ASI 経由) - 検索エンジン名 - 検索エンジンのURL - Search suggestions URL - %sは検索クエリに置き換えられます - %s は検索クエリに置き換えられます。結果は JSON OpenSearch 形式である必要があります。 + Search engine name + Search engine URL + Dearch suggestions URL + %s will be replaced with the search query + %s will be replaced with the search query. Results must be in JSON OpenSearch format. 検索結果を表示 アプリとショートカット @@ -619,17 +618,17 @@ Pixel のヒント Android 設定 ファイル - 画像と動画 - 音声ファイル - 全てのファイル + Photos and videos + Audio files + All files ウェブの提案 検索履歴 電卓 - 検索を開始 - アプリ、連絡先などを検索します。最近の検索はここに表示されます。 - アプリ、連絡先などを検索します。 + Start searching + Find apps, contacts, and more. Your recent searches will appear here. + Find apps, contacts, and more. - 検索するもの + Search on メディア、ファイル、その他 連絡先やその他 %1$sで検索 @@ -639,38 +638,38 @@ ファイルの表示件数 システム設定の表示件数 検索履歴の表示件数 - 候補の最大個数 - ウェブ提案の最大遅延 + Maximum number of suggestions + Maximum web suggestion delay 通知へのアクセス権が必要です 通知ドットを表示するには、 %1$s のアプリ通知をオンにします。 - 連絡先へのアクセス権限が必要です - 連絡先を検索するには、%1$s に連絡先と電話の権限を付与してください - 音楽とオーディオのアクセスが必要です - 音楽やその他のオーディオファイルを検索するには、 %1$s がメディアライブラリにアクセスする権限が必要です。 + Contacts permission needed + To search for contacts, grant contacts and phone permissions to %1$s + Music and audio access needed + To search your music and other audio files, %1$s needs permission to access your media library. - 写真とビデオへのアクセスが必要です - 音楽やその他のオーディオファイルを検索するには、 %1$s がメディアライブラリにアクセスする権限が必要です。 - 全メディアライブラリにアクセスしますか? - すべての写真とビデオを検索するには、 %1$s がメディアライブラリにフルアクセスする必要があります。 - メディアの全権限を付与する - 選択したアイテムを管理 + Photos and videos access needed + To search your photos and videos, %1$s needs permission to access your media library. + Access your full media library? + To search all your photos and videos, %1$s needs full access to your media library. + Grant full media permissions + Manage selected items - 外部ストレージへのアクセスが必要です - ファイルを検索するには、 %1$s がデバイスのストレージにアクセスする権限が必要です。 - ストレージへのアクセスが必要です - 検索結果にファイルを表示するには、 %1$s にデバイス上のすべてのファイルを管理する権限が必要です。 この権限はファイルを一覧表示するためにのみ使用され、個人ファイルの内容を読み取りまたは変更するために使用されません。 - 壁紙のプレビューを表示し、バックアップに含めるには、 %1$s 権限 %2$sが必要です。 これは壁紙データにアクセスするシステムの制限によるものです。 - デバイス上のすべてのファイルを読み込むために - デバイス上のすべてのファイルを管理する - 複数の権限が必要です - 壁紙のプレビューを表示し、バックアップに含めるには、 %1$s 権限 が必要です。 これは壁紙データにアクセスするシステムの制限によるものです。 - デバイス上のすべてのファイルを管理 - 写真や動画の読み取り - ストレージの管理権限を有効にできません - Playストアのポリシーにより、%1$s はここでストレージへのフルアクセスをリクエストできません。すべてのファイルにアクセスするには、GitHubから %1$s をダウンロードしてください。または、設定で写真、動画、音声ファイルへのアクセスを個別に許可することもできます。 + External storage access needed + To search your files, %1$s needs permission to access your device\'s external storage. + Manage storage access needed + To display your files in search results, %1$s requires permission to manage all files on your device. This permission is used solely to list files and will not be used to read or change the content of your personal files. + To display wallpaper previews and include them in backups, %1$s requires permission %2$s. This is due to system limitations for accessing wallpaper data. + to read all files on your device + to manage all files on your device + Multiple permissions needed + To display wallpaper previews and include them in backups, %1$s requires the following permissions. This is due to system limitations for accessing wallpaper data. + Manage all files on device + Read photos and videos + Cannot enable manage storage access + Due to Play Store policy, %1$s cannot request full storage access here. To access all files, please download %1$s from GitHub. Alternatively, you can grant access to photos, videos, and audio files individually in settings. 設定を開く 権限の許可 - 権限が必要です - タップして権限を付与 + Permissions needed + Tap to grant permissions diff --git a/lawnchair/res/values-ka-rGE/strings.xml b/lawnchair/res/values-ka-rGE/strings.xml index 4dea020836..1983e28d1a 100644 --- a/lawnchair/res/values-ka-rGE/strings.xml +++ b/lawnchair/res/values-ka-rGE/strings.xml @@ -91,7 +91,6 @@ ფონი Style ფონის გამჭვირვალობა - Separated Search bar background კოპირებულია Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-kmr-rTR/strings.xml b/lawnchair/res/values-kmr-rTR/strings.xml index 03f08d3969..7ef3f0fba1 100644 --- a/lawnchair/res/values-kmr-rTR/strings.xml +++ b/lawnchair/res/values-kmr-rTR/strings.xml @@ -91,7 +91,6 @@ Wallpaper Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-ko-rKR/strings.xml b/lawnchair/res/values-ko-rKR/strings.xml index 0f44cc7c19..ad1daf3c4f 100644 --- a/lawnchair/res/values-ko-rKR/strings.xml +++ b/lawnchair/res/values-ko-rKR/strings.xml @@ -42,25 +42,25 @@ 모두 선택 해제 선택 반전 불러오는 중... - 취소 + Dismiss 업데이트 다운로드 업데이트 설치 - 변경사항 보기 + View changes 최신 버전입니다! - 업데이트 - 변경 사항을 불러오는데 실패하였습니다. - 변경 사항이 없습니다 - 빌드 #%1$d → #%2$d - %1$s • %2$s • %3$s + Updates + Failed to load changes + No changes found + Build #%1$d → #%2$d + by %1$s • %2$s • %3$s - 방금 - %d분 - %d시간 - %d일 - %d주 - %d달 - %d년 + just now + %dm + %dh + %dd + %dw + %dmo + %dy Lawnchair에서 관리 설정 @@ -87,11 +87,10 @@ 그리드 레이아웃 - 배경화면 보기 + Show wallpaper 배경화면 스타일 배경 투명도 - 검색 창 배경 분리 클립보드에 복사했습니다 결과를 클립보드에 복사했습니다 @@ -115,10 +114,10 @@ 중복 앱 숨기기 내 폴더 - 특정 액션들(휴대전화 잠그기 같은 액션)을 제스처로 발동시키려면, Lawnchair가 접근성 기능에 접근해야 합니다. \n\nLawnchair는 접근성 기능을 필요로 하지만 사용자의 활동을 감시하지 않으며, 시스템에서 발송된 모든 이벤트는 삭제됩니다. \n\nLawnchair는 휴대전화를 잠그거나 최근 앱을 보기 위해서 GlobalActionAccessbility 서비스를 사용합니다. + 특정 액션들 (휴대전화 잠그기 같은 액션)을 제스처로 발동시키려면, Lawnchair 가 접근성 기능에 접근해야 합니다. \n\nLawnchair 는 접근성 기능을 필요로 하지만 사용자의 활동을 감시하지 않으며, 시스템에서 발송된 모든 이벤트는 삭제됩니다. \n\nLawnchair 는 휴대전화를 잠그거나 최근 앱을 보기 위해서 GlobalActionAccessbility 서비스를 사용합니다. %1$s (%2$d) %1$d x %2$d - %1$s & %2$s + %1$s 및 %2$s 고급 글꼴 사용자 정의 @@ -223,11 +222,11 @@ 둥근 사각형 물방울 - 사각형 쿠키 - 칠각형 쿠키 - 아치 + Four-sided cookie + Seven-sided cookie + Arch - 사용자 정의 아이콘 모양 + 아이콘 모양 사용자 정의 사용자 정의 아이콘 모양 만들기 사용자 정의 아이콘 모양 편집 모서리 모양 @@ -258,9 +257,9 @@ 폰트 (실험적 기능) 일반 제목 - 제목 (medium) + 제목(중간) 바디 - 바디 (medium) + 바디(미디엄) Italic Thin 매우 얇음 @@ -320,7 +319,7 @@ 충전 중 충전 됨 배터리 부족 - "%1$d%% — %2$s 후 충전 완료" + "%1$d%% — %2$s 후 충전완료" 한눈에 보기 표시할 항목 @@ -368,14 +367,14 @@ 퀵 스위치 점검 DevOps 지원 및 홍보 - 커뮤니티 - 텔레그램 + Community + Telegram 뉴스 Legal - 오픈소스 라이선스 - 개인정보 처리방침 - 작동 중 - 업데이트를 확인하는데 실패하였습니다 + 감사의 말 + Privacy policy + Active + Failed to check for updates - 앱, 웹 등을 검색 + Search apps, web, and more 앱 검색 \"%1$s\"(와)과 일치는 앱 없습니다. 웹으로부터 @@ -606,30 +605,30 @@ 앱 검색 글로벌 검색(기기 내) 글로벌 검색 (ASI를 통해) - 검색 엔진 이름 - 검색 엔진 URL - 검색 제안 URL + Search engine name + Search engine URL + Dearch suggestions URL %가 검색 쿼리로 대체됩니다 - %s는 검색어로 대체됩니다. 결과는 JSON OpenSearch 형식이어야 합니다. + %s will be replaced with the search query. Results must be in JSON OpenSearch format. 검색 결과에 보여주기 앱과 바로가기 앱 바로가기 - 사람 + 사람들 Pixel 도움말 Android 설정 파일 - 사진과 비디오 - 오디오 - 모든 파일 + Photos and videos + Audio files + All files 웹 제안 검색 기록 계산기 - 검색 시작 - 앱, 연락처 등을 찾아보세요. 최근 검색 결과가 여기에 표시됩니다. - 앱, 연락처 등을 검색 + Start searching + Find apps, contacts, and more. Your recent searches will appear here. + Find apps, contacts, and more. - 검색 + Search on 미디어, 파일 등 연락처 등 %1$s 제공 @@ -644,33 +643,33 @@ 알림 액세스가 필요합니다. 알림 점을 표시하려면 %1$s에 대한 앱 알림을 켜세요. - 연락처 권한이 필요합니다 - 연락처를 검색하려면 %1$s에 연락처 권한을 부여하세요 - 음악과 오디오 권한이 필요합니다 - 음악 및 기타 오디오 파일을 검색하려면 %1$s에 미디어 라이브러리에 대한 액세스 권한이 필요합니다. + Contacts permission needed + To search for contacts, grant contacts and phone permissions to %1$s + Music and audio access needed + To search your music and other audio files, %1$s needs permission to access your media library. - 사진과 비디오 권한이 필요합니다 - 사진 및 비디오 파일을 검색하려면 %1$s에 미디어 라이브러리에 대한 액세스 권한이 필요합니다. - 전체 미디어 라이브러리에 액세스 하시겠습니까? - 모든 사진과 동영상을 검색하려면 %1$s에서 미디어 라이브러리에 대한 전체 액세스 권한이 필요합니다. - 전체 미디어 권한 - 선택한 항목 관리 + Photos and videos access needed + To search your photos and videos, %1$s needs permission to access your media library. + Access your full media library? + To search all your photos and videos, %1$s needs full access to your media library. + Grant full media permissions + Manage selected items - 외부 스토리지 엑세스 권한이 필요합니다 - 파일을 검색하려면 %1$s에 기기의 외부 저장소에 대한 액세스 권한이 필요합니다. - 스토리지 관리 권한이 필요합니다 - 검색 결과에 파일을 표시하려면 %1$s에 기기의 모든 파일을 관리할 수 있는 권한이 필요합니다. 이 권한은 파일 목록을 표시하는 데만 사용되며 개인 파일의 내용을 읽거나 변경하는 데는 사용되지 않습니다. - 배경화면 미리보기를 표시하고 백업에 포함하려면 %1$s에 %2$s 권한이 필요합니다. 이는 배경화면 데이터 접근에 대한 시스템 제한으로 인해 발생합니다. - 기기의 모든 파일을 읽으려면 - 기기의 모든 파일을 관리하려면 - 여러 권한이 필요합니다 - 배경화면 미리보기를 표시하고 백업에 포함하려면 %1$s에 다음 권한이 필요합니다. 이는 배경화면 데이터 접근에 대한 시스템 제한으로 인해 발생합니다. - 기기의 모든 파일 관리 - 사진과 비디오 읽기 - 저장소 액세스 관리를 활성화할 수 없습니다 - Play 스토어 정책으로 인해 %1$s은(는) 여기에서 전체 저장 공간 접근 권한을 요청할 수 없습니다. 모든 파일에 접근하려면 GitHub에서 %1$s을(를) 다운로드하세요. 또는 설정에서 사진, 동영상, 오디오 파일에 대한 접근 권한을 개별적으로 부여할 수 있습니다. + External storage access needed + To search your files, %1$s needs permission to access your device\'s external storage. + Manage storage access needed + To display your files in search results, %1$s requires permission to manage all files on your device. This permission is used solely to list files and will not be used to read or change the content of your personal files. + To display wallpaper previews and include them in backups, %1$s requires permission %2$s. This is due to system limitations for accessing wallpaper data. + to read all files on your device + to manage all files on your device + Multiple permissions needed + To display wallpaper previews and include them in backups, %1$s requires the following permissions. This is due to system limitations for accessing wallpaper data. + Manage all files on device + Read photos and videos + Cannot enable manage storage access + Due to Play Store policy, %1$s cannot request full storage access here. To access all files, please download %1$s from GitHub. Alternatively, you can grant access to photos, videos, and audio files individually in settings. 설정 열기 권한 부여 - 권한이 필요합니다 + Permissions needed 여기를 눌러 권한 허용 diff --git a/lawnchair/res/values-lt-rLT/strings.xml b/lawnchair/res/values-lt-rLT/strings.xml index e926293ac8..9edefe6286 100644 --- a/lawnchair/res/values-lt-rLT/strings.xml +++ b/lawnchair/res/values-lt-rLT/strings.xml @@ -91,7 +91,6 @@ Ekrano Fonas Style Fono skaidrumas - Separated Search bar background Nukopijuota į iškarpinę Result copied to clipboard @@ -611,7 +610,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-ml-rIN/strings.xml b/lawnchair/res/values-ml-rIN/strings.xml index 9f3a2a1b45..a6ecc133aa 100644 --- a/lawnchair/res/values-ml-rIN/strings.xml +++ b/lawnchair/res/values-ml-rIN/strings.xml @@ -91,7 +91,6 @@ വാൾപേപ്പർ ശൈലി പശ്ചാത്തല അതാര്യത - Separated Search bar background ക്ലിപ്പ്ബോർഡിലേക്ക് പകർത്തി ഫലം ക്ലിപ്പ്ബോർഡിലേക്ക് പകർത്തി @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-mr-rIN/strings.xml b/lawnchair/res/values-mr-rIN/strings.xml index 7e916d94d6..8066ef37d6 100644 --- a/lawnchair/res/values-mr-rIN/strings.xml +++ b/lawnchair/res/values-mr-rIN/strings.xml @@ -91,7 +91,6 @@ Wallpaper Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-nl-rNL/strings.xml b/lawnchair/res/values-nl-rNL/strings.xml index 512b15dc28..058049559f 100644 --- a/lawnchair/res/values-nl-rNL/strings.xml +++ b/lawnchair/res/values-nl-rNL/strings.xml @@ -91,7 +91,6 @@ Achtergrond Stijl Achtergronddekking - Achtergrond afzonderlijke zoekbalk Gekopieerd naar klembord Resultaat gekopieerd naar klembord @@ -609,7 +608,7 @@ Algemeen zoeken (via ASI) Naam zoekmachine Zoekmachine URL - Zoeksuggesties URL + Zoeksuggestie URL %s zal worden vervangen door de zoekopdracht %s wordt vervangen door de zoekopdracht. Resultaten moeten in JSON OpenSearch formaat zijn. diff --git a/lawnchair/res/values-no-rNO/strings.xml b/lawnchair/res/values-no-rNO/strings.xml index f549e38e51..6cf2aa26e8 100644 --- a/lawnchair/res/values-no-rNO/strings.xml +++ b/lawnchair/res/values-no-rNO/strings.xml @@ -39,22 +39,22 @@ Lim inn Fullført Velg alle - Opphev all markering - Inverter valg + Deselect all + Inverse selection Laster… - Avvis - Last ned oppdatering - Installer oppdatering - Vis endringer - Du er oppdatert! + Dismiss + Download update + Install update + View changes + You\'re up-to-date! - Oppdateringer - Kunne ikke laste endringer - Ingen endringer funnet - Bygg #%1$d → #%2$d - av %1$s • %2$s • %3$s + Updates + Failed to load changes + No changes found + Build #%1$d → #%2$d + by %1$s • %2$s • %3$s - akkurat nå + just now %dm %dh %dd @@ -72,7 +72,7 @@ General "words" used throughout Lawnchair --> - Andre + Others Dynamisk Forhåndsinstillinger @@ -87,39 +87,38 @@ Rutenett Oppsett - Vis bakgrunnsbilde + Show wallpaper Bakgrunn - Stil + Style Bakgrunnens gjennomsiktighet - Separert bakgrunn i søkefeltet Kopiert til utklippstavle - Resultat kopiert til utklippstavlen + Result copied to clipboard Objekt fjernet Hva som skal vises - Bakgrunnsbilder + Wallpapers Caddy (Beta) Caddy - Applikasjonsskuffemapper - Skuffemappe - Opprett mappe - Rediger mappe - Legg til - Rediger + App drawer folders + Drawer folder + Create folder + Edit folder + Add + Edit Bruk Slett - Sveip til venstre for å redigere, dra til høyre for å slette, eller trykk for å oppdatere elementer - Skjul appene i mappen - Apper tilordnet mapper er ekskludert fra applister - Vis kun unike apper - Min mappe + Swipe left to edit, swipe right to delete, or tap to update items + Hide folder apps + Apps assigned to folders are excluded from app lists + Only show unique apps + My folder - For å utføre visse handlinger (som å låse telefonen din) når du utfører en gest, krever Lawnchair tilgang på tilgjengelighetstjenester.\n\nLawnchair ser ingen brukerhandlinger, men rettighetene til å gjøre dette er nødvendig for alle tilgjengelighetstjenester. Lawnchair forkaster enhver hendelse som systemet sender.\n\nFor å låse telefonen din, eller for å åpne nylig-skjermen, anvender Lawnchair tjenesten performGlobalAction Accessibility + To perform certain actions (such as locking your phone) when performing a gesture, Lawnchair requires accessibility access.\n\nLawnchair doesn\'t watch any user action, though the privilege to do so is required for all accessibility services. Lawnchair discards any event sent by the system.\n\nIn order to lock your phone, or to open the Recents screen, Lawnchair uses the performGlobalAction Accessibility service. %1$s (%2$d) %1$d x %2$d %1$s & %2$s - Avansert + Advanced - Falm inn - Sug inn - App lukkeanimasjon - Overlapp - Ingen + Fade In + Suck In + App closing animation + Overlay + None - Firesidet kjeks - Syvsidet kjeks - Bue + Four-sided cookie + Seven-sided cookie + Arch Tilpasset ikonform Lag tilpasset ikonform @@ -244,12 +243,12 @@ Ikonpakke Ikonkilde med tema - Fargelegge med aksentfarge + Tint with accent color Systemikoner Ikoner med tema Av Hjemmeskjerm - Hjemskjerm og appskuffe + Home screen and app drawer Ikke støttet ikonpakke Legg til skrifttype @@ -325,7 +324,7 @@ Hva som skal vises Kalender - Dato og klokkeslett + Date and time Dato Tid Tidsformat @@ -363,19 +362,19 @@ Oversett Doner Produkt - Design og utvikling + Design and development Utvikling QuickSwitch vedlikehold Utvikler - Brukerstøtte og PR - Fellesskap + Support and PR + Community Telegram Nyheter - Juridisk + Legal Anerkjennelser - Retningslinjer for personvern - Aktiv - Kunne ikke se etter oppdateringer + Privacy policy + Active + Failed to check for updates @@ -653,25 +652,25 @@ Photos and videos access needed To search your photos and videos, %1$s needs permission to access your media library. Access your full media library? - For å søke i alle bilder og videoer, trenger %1$s full tilgang til mediebiblioteket ditt. - Gi alle media-tillatelser - Administrer valgte elementer + To search all your photos and videos, %1$s needs full access to your media library. + Grant full media permissions + Manage selected items - Ekstern lagringstilgang er nødvendig - For å søke etter dine filer, trenger %1$s tilgang til din enhets eksterne lagring. - Tilgang til ekstern lagring er nødvendig - For å vise filer i søkeresultatene, %1$s kreves tillatelse til å administrere alle filene på enheten din. Denne tillatelsen brukes utelukkende til å liste filer og vil ikke bli brukt til å lese eller endre innholdet i dine personlige filer. - For å vise bakgrunnsforvisning og inkludere dem i sikkerhetskopier, %1$s kreves tillatelse %2$s. Dette skyldes systembegrensninger for tilgang til bakgrunnsdata. - for å lese alle filene på enheten din - for å administrere alle filer på enheten din - Flere tillatelser kreves - For å vise bakgrunnsforvisning og inkludere dem i sikkerhetskopier, %1$s kreves følgende tillatelser. Dette skyldes systembegrensninger for tilgang til bakgrunnsdata. - Administrere alle filer på enheten - Les bilder og videoer - Kan ikke aktivere \"administrere lagringstilgang\" - På grunn av Play Store-retningslinjer kan %1$s ikke be om full lagringstilgang her. Last ned %1$s fra GitHub, for å få tilgang til alle filer. Alternativt kan du gi tilgang til bilder, videoer og lydfiler individuelt i innstillinger. + External storage access needed + To search your files, %1$s needs permission to access your device\'s external storage. + Manage storage access needed + To display your files in search results, %1$s requires permission to manage all files on your device. This permission is used solely to list files and will not be used to read or change the content of your personal files. + To display wallpaper previews and include them in backups, %1$s requires permission %2$s. This is due to system limitations for accessing wallpaper data. + to read all files on your device + to manage all files on your device + Multiple permissions needed + To display wallpaper previews and include them in backups, %1$s requires the following permissions. This is due to system limitations for accessing wallpaper data. + Manage all files on device + Read photos and videos + Cannot enable manage storage access + Due to Play Store policy, %1$s cannot request full storage access here. To access all files, please download %1$s from GitHub. Alternatively, you can grant access to photos, videos, and audio files individually in settings. Åpne instillinger Gi tillatelser - Tillatelser nødvendig - Trykk for å gi tillatelser + Permissions needed + Tap to grant permissions diff --git a/lawnchair/res/values-pl-rPL/strings.xml b/lawnchair/res/values-pl-rPL/strings.xml index 3df71b5faf..e1f9133d4d 100644 --- a/lawnchair/res/values-pl-rPL/strings.xml +++ b/lawnchair/res/values-pl-rPL/strings.xml @@ -91,7 +91,6 @@ Tapeta Styl Zakrycie tła - Separated Search bar background Skopiowano do schowka Wynik został skopiowany do schowka @@ -611,7 +610,7 @@ Wyszukiwanie globalne (poprzez ASI) Nazwa wyszukiwarki Adres URL wyszukiwarki - Search suggestions URL + URL sugestii wyszukiwania %s zostanie zastąpiony zapytaniem wyszukiwania %s zostanie zastąpiony zapytaniem wyszukiwania. Wyniki muszą być w formacie JSON OpenSearch. diff --git a/lawnchair/res/values-pt-rBR/strings.xml b/lawnchair/res/values-pt-rBR/strings.xml index 2811491806..8681198657 100644 --- a/lawnchair/res/values-pt-rBR/strings.xml +++ b/lawnchair/res/values-pt-rBR/strings.xml @@ -91,7 +91,6 @@ Papel de Parede Estilo Opacidade do fundo - Separated Search bar background Copiado para a área de transferência Resultado copiado para a área de transferência @@ -609,7 +608,7 @@ Pesquisa global (via ASI) Nome do provedor de pesquisa URL do provedor de pesquisa - Search suggestions URL + URL das sugestões de pesquisa %s será trocada pelo termo de pesquisa %s será substituído pela consulta de pesquisa. Os resultados precisam estar em formato JSON OpenSearch. diff --git a/lawnchair/res/values-pt-rPT/strings.xml b/lawnchair/res/values-pt-rPT/strings.xml index 6619eade44..75c2d711ed 100644 --- a/lawnchair/res/values-pt-rPT/strings.xml +++ b/lawnchair/res/values-pt-rPT/strings.xml @@ -91,7 +91,6 @@ Papel de parede Style Opacidade do fundo - Separated Search bar background Copiado para a área de transferência Resultado copiado para a área de transferência @@ -610,7 +609,7 @@ Transparentes Pesquisa global (via ASI) Nome do motor de pesquisa Endereço do motor de pesquisa - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-ro-rRO/strings.xml b/lawnchair/res/values-ro-rRO/strings.xml index 3f9ba6e37f..51b94df132 100644 --- a/lawnchair/res/values-ro-rRO/strings.xml +++ b/lawnchair/res/values-ro-rRO/strings.xml @@ -91,7 +91,6 @@ Fundal Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -610,7 +609,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-ru-rRU/strings.xml b/lawnchair/res/values-ru-rRU/strings.xml index f5e74f46a2..93671c8beb 100644 --- a/lawnchair/res/values-ru-rRU/strings.xml +++ b/lawnchair/res/values-ru-rRU/strings.xml @@ -42,19 +42,19 @@ Снять все отметки Инвертировать выбор Загрузка… - Отменить + Dismiss Скачать обновление Установить обновление - Просмотр изменений + View changes Нет доступных обновлений! - Обновления - Не удалось загрузить изменения - Изменений не найдено - Сборка #%1$d → #%2$d - от %1$s • %2$s • %3$s + Updates + Failed to load changes + No changes found + Build #%1$d → #%2$d + by %1$s • %2$s • %3$s - только что + just now %dm %dh %dd @@ -87,11 +87,10 @@ Сетка Макет - Показать обои + Show wallpaper На основе обоев Стиль Прозрачность фона - Фон отдельной строки поиска Скопировано в буфер обмена Результат скопирован в буфер обмена @@ -157,8 +156,8 @@ Избегать использования кэшированных иконок из наборов иконок Свайп-жесты по иконкам Выполнять действия при смахивании влево или вправо по иконкам вместо прокрутки экрана - Стиль колоды - Показывать опцию для скрытия Меню приложений и автоматического добавления новых приложений на главный экран + Deck layout + Show a layout option to hide the app drawer and automatically add new apps to the home screen Блокировка/разблокировка Запретить закрытие выбранного приложения при нажатии кнопки \"Очистить всё\" @@ -223,9 +222,9 @@ Квадратный круг Капля - 4-сторонняя печенька - 7-сторонняя печенька - Арка + Four-sided cookie + Seven-sided cookie + Arch Польз. форма иконок Создать свою форму иконок @@ -368,14 +367,14 @@ Поддержка QuickSwitch DevOps-инженер Служба поддержки и PR - Сообщество + Community Telegram Новости - Юридич. информация + Legal Выражаем благодарность - Политика конфиденциальности - Активные участники - Ошибка проверки обновлений + Privacy policy + Active + Failed to check for updates - Поиск приложений, веб-приложений и другого контента + Search apps, web, and more Поиск приложений Не найдено приложений по запросу \"%1$s\" Из Интернета @@ -609,11 +608,11 @@ Поиск приложений Глобальный поиск (на устройстве) Глобальный поиск (с помощью ASI) - Имя поисковой системы - URL поисковой системы - Search suggestions URL + Search engine name + Search engine URL + Dearch suggestions URL % будет заменен на поисковый запрос - % будет заменен на поисковый запрос. Результаты должны быть в формате JSON OpenSearch. + %s will be replaced with the search query. Results must be in JSON OpenSearch format. Показывать в результатах поиска Приложения и Ярлыки @@ -622,17 +621,17 @@ Советы Pixel Настройки Android Файл - Фото и видео - Аудио-файлы - Все файлы + Photos and videos + Audio files + All files Веб-подсказки История поиска Калькулятор - Начать поиск - Запустите поиск приложений, контактов и другого контента. Ваши недавние поисковые запросы появятся здесь. - Запустить поиск приложений, контактов и другого контента. + Start searching + Find apps, contacts, and more. Your recent searches will appear here. + Find apps, contacts, and more. - Поиск по запросу: + Search on Медиа, файлы и другое Контакты и другое Источник: %1$s @@ -646,34 +645,34 @@ Макс. задержка веб-подсказок Необходимо разрешение доступа к уведомлениям - Для отображения Точек уведомлений включите уведомления для приложения %1$s - Требуется доступ к контактам - Для поиска контактов предоставьте доступ к контактам и телефону приложению %1$s - Необходим доступ к музыке и аудио-файлам - Для поиска музыки и аудио-файлов предоставьте доступ к библиотеке медиа-файлов приложению %1$s + Для отображения Точек уведомлений, включите уведомления для приложения %1$s + Contacts permission needed + To search for contacts, grant contacts and phone permissions to %1$s + Music and audio access needed + To search your music and other audio files, %1$s needs permission to access your media library. - Необходим доступ к фото- и видео-файлам - Для поиска фото- и видео-файлов предоставьте доступ к библиотеке медиа-файлов приложению %1$s - Разрешить полный доступ ко всей библиотеке медиа-файлов? - Для поиска фото- и видео-файлов предоставьте полный доступ ко всей библиотеке медиа-файлов приложению %1$s - Предоставить полный доступ к медиа-файлам - Разрешить управлять выбранными элементами + Photos and videos access needed + To search your photos and videos, %1$s needs permission to access your media library. + Access your full media library? + To search all your photos and videos, %1$s needs full access to your media library. + Grant full media permissions + Manage selected items - Необходим доступ к внешнему хранилищу - Для поиска файлов приложению %1$s требуется разрешение на доступ к внешнему хранилищу вашего устройства. - Необходим доступ на управление хранилищем - Для отображения файлов в результатах поиск приложению %1$s требуется разрешение на управление всеми файлами на устройстве. Это разрешение используется исключительно для составления списка файлов и не будет использоваться для чтения или изменения содержимого персональных файлов. - Для отображения предпросмотра обоев и включения их в резервные копии приложению %1$s требуется соответствующее разрешение. Это обусловлено системным ограничением доступа к данным обоев. - на чтение всех файлов устройства - на управление всеми файлами устройства - Требуется выдача нескольких разрешений - Для отображения предпросмотра обоев и включения их в резервные копии, приложению %1$s требуется соответствующее разрешение. Это обусловлено системным ограничением доступа к данным обоев. - Разрешить управлять всеми файлами на устройстве - Разрешить просмотр фото- и видео-файлов - Не удается включить управление доступом к хранилищу - В соответствии с политикой Play Store, приложение %1$s не может запросить полный доступ к хранилищу. Для полного доступа ко всем файлам загрузите %1$s с GitHub. Кроме того, вы можете индивидуально предоставить доступ к фотографиям, видео и аудио файлам в настройках. + External storage access needed + To search your files, %1$s needs permission to access your device\'s external storage. + Manage storage access needed + To display your files in search results, %1$s requires permission to manage all files on your device. This permission is used solely to list files and will not be used to read or change the content of your personal files. + To display wallpaper previews and include them in backups, %1$s requires permission %2$s. This is due to system limitations for accessing wallpaper data. + to read all files on your device + to manage all files on your device + Multiple permissions needed + To display wallpaper previews and include them in backups, %1$s requires the following permissions. This is due to system limitations for accessing wallpaper data. + Manage all files on device + Read photos and videos + Cannot enable manage storage access + Due to Play Store policy, %1$s cannot request full storage access here. To access all files, please download %1$s from GitHub. Alternatively, you can grant access to photos, videos, and audio files individually in settings. Открыть настройки Предоставить доступ - Требуется выдача разрешений - Нажмите, чтобы предоставить разрешения + Permissions needed + Tap to grant permissions diff --git a/lawnchair/res/values-sk-rSK/strings.xml b/lawnchair/res/values-sk-rSK/strings.xml index a6da126191..4bae9daa87 100644 --- a/lawnchair/res/values-sk-rSK/strings.xml +++ b/lawnchair/res/values-sk-rSK/strings.xml @@ -91,7 +91,6 @@ Tapeta Style Priehľadnosť pozadia - Separated Search bar background Kopírovať do schránky Result copied to clipboard @@ -611,7 +610,7 @@ Globálne vyhľadávanie (prostredníctvom ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-sl-rSI/strings.xml b/lawnchair/res/values-sl-rSI/strings.xml index b1b59a2d9f..b8fbb1324a 100644 --- a/lawnchair/res/values-sl-rSI/strings.xml +++ b/lawnchair/res/values-sl-rSI/strings.xml @@ -91,7 +91,6 @@ Ozadje Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -611,7 +610,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-sq-rAL/strings.xml b/lawnchair/res/values-sq-rAL/strings.xml index c4e89dfff4..e6bdb6adda 100644 --- a/lawnchair/res/values-sq-rAL/strings.xml +++ b/lawnchair/res/values-sq-rAL/strings.xml @@ -91,7 +91,6 @@ Sfondi Style Tejdukshmëria e sfondit - Separated Search bar background Kopjoni Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-sr/strings.xml b/lawnchair/res/values-sr/strings.xml index f5a96573b0..ae0ed8163b 100644 --- a/lawnchair/res/values-sr/strings.xml +++ b/lawnchair/res/values-sr/strings.xml @@ -91,7 +91,6 @@ Позадина Стил Непрозирност позадине - Separated Search bar background Копирано у привремену меморију Резултат је копиран у привремену меморију @@ -610,7 +609,7 @@ Глобална претрага помоћу ASI-ја Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s биће замењено упитом за претрагу %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-sv-rSE/strings.xml b/lawnchair/res/values-sv-rSE/strings.xml index f633ae2491..de11152f81 100644 --- a/lawnchair/res/values-sv-rSE/strings.xml +++ b/lawnchair/res/values-sv-rSE/strings.xml @@ -91,7 +91,6 @@ Bakgrundsbild Stil Bakgrundens opacitet - Separerad bakgrund för sökfältet Kopierad till urklipp Resultat kopierat till urklipp diff --git a/lawnchair/res/values-sw-rKE/strings.xml b/lawnchair/res/values-sw-rKE/strings.xml index aa358468de..91109208c2 100644 --- a/lawnchair/res/values-sw-rKE/strings.xml +++ b/lawnchair/res/values-sw-rKE/strings.xml @@ -91,7 +91,6 @@ Wallpaper Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-ta-rIN/strings.xml b/lawnchair/res/values-ta-rIN/strings.xml index 3c63e28ff6..c6327b6f73 100644 --- a/lawnchair/res/values-ta-rIN/strings.xml +++ b/lawnchair/res/values-ta-rIN/strings.xml @@ -91,7 +91,6 @@ சுவர்த்தாள் Style பின்னணி ஒளிபுகாநிலை - Separated Search bar background நகலகத்தில் நகலெடுக்கப்பட்டது Result copied to clipboard @@ -609,7 +608,7 @@ உலகளாவிய தேடல் (ASI வழியாக) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-te-rIN/strings.xml b/lawnchair/res/values-te-rIN/strings.xml index afe260183e..f5b2d4a03b 100644 --- a/lawnchair/res/values-te-rIN/strings.xml +++ b/lawnchair/res/values-te-rIN/strings.xml @@ -91,7 +91,6 @@ Wallpaper Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-th-rTH/strings.xml b/lawnchair/res/values-th-rTH/strings.xml index c1cedb4f38..a1ac0b4542 100644 --- a/lawnchair/res/values-th-rTH/strings.xml +++ b/lawnchair/res/values-th-rTH/strings.xml @@ -91,7 +91,6 @@ ภาพพื้นหลัง สไตล์ ความทึบของพื้นหลัง - Separated Search bar background คัดลอกไปยังคลิปบอร์ดแล้ว Result copied to clipboard @@ -608,7 +607,7 @@ การค้นหาทั้งหมด (ผ่าน ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-tr-rTR/strings.xml b/lawnchair/res/values-tr-rTR/strings.xml index 511f80727e..21b6667ba7 100644 --- a/lawnchair/res/values-tr-rTR/strings.xml +++ b/lawnchair/res/values-tr-rTR/strings.xml @@ -91,7 +91,6 @@ Duvar Kağıdı Stil Arka plan opaklığı - Separated Search bar background Panoya kaydedildi Sonuç panoya kopyalandı @@ -609,7 +608,7 @@ Genel arama (ASI aracılığıyla) Makine ismi aratın Makine URL\'si aratın - Search suggestions URL + Önerilen URL\'leri aratın % arama sorgusu ile değiştirilecek % arama sorgusu ile değiştirilecek. Sonuçlar JSON OpenSearch biçiminde olmalı. diff --git a/lawnchair/res/values-uk-rUA/strings.xml b/lawnchair/res/values-uk-rUA/strings.xml index aa20ac5f81..e69885f515 100644 --- a/lawnchair/res/values-uk-rUA/strings.xml +++ b/lawnchair/res/values-uk-rUA/strings.xml @@ -91,7 +91,6 @@ Шпалери Стиль Прозорість фону - Separated Search bar background Скопійовано до буфера обміну Результат скопійовано до буфера обміну @@ -611,7 +610,7 @@ Глобальний пошук (через ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-ur-rIN/strings.xml b/lawnchair/res/values-ur-rIN/strings.xml index 0e6b067f4d..b0335f4766 100644 --- a/lawnchair/res/values-ur-rIN/strings.xml +++ b/lawnchair/res/values-ur-rIN/strings.xml @@ -91,7 +91,6 @@ وال پیپر انداز پس منظر کی دھندلاپن - Separated Search bar background کلپ بورڈ پر کاپی ہو گیا۔ نتیجہ کلپ بورڈ پر کاپی ہو گیا۔ @@ -609,7 +608,7 @@ عالمی تلاش (بذریعہ ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-ur-rPK/strings.xml b/lawnchair/res/values-ur-rPK/strings.xml index 3cb59dc876..be550479ab 100644 --- a/lawnchair/res/values-ur-rPK/strings.xml +++ b/lawnchair/res/values-ur-rPK/strings.xml @@ -91,7 +91,6 @@ وال پیپر انداز پس منظر کی دھندلاپن - Separated Search bar background کلپ بورڈ پر کاپی ہو گیا۔ نتیجہ کلپ بورڈ پر کاپی ہو گیا۔ @@ -609,7 +608,7 @@ عالمی تلاش (بذریعہ ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-uz-rUZ/strings.xml b/lawnchair/res/values-uz-rUZ/strings.xml index 94eaf1a209..dd9dbd3f06 100644 --- a/lawnchair/res/values-uz-rUZ/strings.xml +++ b/lawnchair/res/values-uz-rUZ/strings.xml @@ -91,7 +91,6 @@ Wallpaper Style Background opacity - Separated Search bar background Copied to clipboard Result copied to clipboard @@ -609,7 +608,7 @@ Global search (via ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s will be replaced with the search query %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-vi-rVN/strings.xml b/lawnchair/res/values-vi-rVN/strings.xml index 6914fd7249..2829b51329 100644 --- a/lawnchair/res/values-vi-rVN/strings.xml +++ b/lawnchair/res/values-vi-rVN/strings.xml @@ -91,7 +91,6 @@ Hình nền Phong cách Độ mờ của nền - Nền thanh tìm kiếm tách biệt Đã sao chép Kết quả đã sao chép vào bảng nhớ tạm @@ -608,7 +607,7 @@ Tìm kiếm toàn thiết bị (thông qua ASI) Tên công cụ tìm kiếm URL công cụ tìm kiếm - URL gợi ý tìm kiếm + URL gợi ý thân mến % sẽ được thay thế bằng truy vấn tìm kiếm % sẽ được thay thế bằng truy vấn tìm kiếm. Kết quả phải ở định dạng JSON OpenSearch. diff --git a/lawnchair/res/values-zh-rCN/strings.xml b/lawnchair/res/values-zh-rCN/strings.xml index 58d95dbc35..70e951f58f 100644 --- a/lawnchair/res/values-zh-rCN/strings.xml +++ b/lawnchair/res/values-zh-rCN/strings.xml @@ -42,19 +42,19 @@ 取消全选 逆向全选 正在加载… - 撤销 + Dismiss 下载更新 安装更新 - 查看更新 + View changes 你已经是最新版! - 更新 + Updates Failed to load changes - 没有发现更改 + No changes found Build #%1$d → #%2$d by %1$s • %2$s • %3$s - 现在 + just now %dm %dh %dd @@ -87,11 +87,10 @@ 网格 布局 - 显示壁纸 + Show wallpaper 壁纸 样式 背景不透明度 - Separated Search bar background 已复制到剪贴板 内容已经复制到粘贴板 @@ -368,7 +367,7 @@ QuickSwitch 维护 运维 支持和PR - 社区 + Community Telegram 新闻 Legal @@ -608,7 +607,7 @@ 全局搜索 (通过 ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s 将被替换为搜索内容 %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values-zh-rTW/strings.xml b/lawnchair/res/values-zh-rTW/strings.xml index 42c039243f..34105b0140 100644 --- a/lawnchair/res/values-zh-rTW/strings.xml +++ b/lawnchair/res/values-zh-rTW/strings.xml @@ -91,7 +91,6 @@ 桌布 樣式 背景不透明度 - Separated Search bar background 已複製至剪貼簿 已將結果複製至剪貼簿 @@ -608,7 +607,7 @@ 全域搜尋 (透過 ASI) Search engine name Search engine URL - Search suggestions URL + Dearch suggestions URL %s 將會由搜尋字詞取代 %s will be replaced with the search query. Results must be in JSON OpenSearch format. diff --git a/lawnchair/res/values/config.xml b/lawnchair/res/values/config.xml index a5ab4bc714..ad744e4acb 100644 --- a/lawnchair/res/values/config.xml +++ b/lawnchair/res/values/config.xml @@ -119,7 +119,6 @@ true false false - true true true false diff --git a/lawnchair/res/values/strings.xml b/lawnchair/res/values/strings.xml index 2834a9c6e7..ec1e66c0aa 100644 --- a/lawnchair/res/values/strings.xml +++ b/lawnchair/res/values/strings.xml @@ -108,7 +108,6 @@ Wallpaper Style Background opacity - Separated Search bar background Copied to clipboard @@ -297,9 +296,7 @@ Square Squircle Teardrop - - Very sunny - Complex clover + Four-sided cookie Seven-sided cookie Arch @@ -539,7 +536,6 @@ Sleep Open Recents screen Open notification panel - Open Quick Settings Open app Open %1$s Open app drawer @@ -550,18 +546,15 @@ Pick app Admin permissions required - To put the device to sleep, set Lawnchair as a device admin app. Tap \"Open settings\", then tap \"Activate this device admin app.\" - Gestures to put the device to sleep will be turned off. + To use Double-Tap to Sleep, set Lawnchair as a device admin app. Tap \"Open settings\", then tap \"Activate this device admin app.\" + Double-Tap to Sleep will be turned off. + Turn on accessibility service + To use Double-Tap to Sleep, turn on the Lawnchair accessibility service. Tap \"Open settings\", select \"Lawnchair\" and turn on \"Use Lawnchair.\"\n\nLawnchair uses Accessibility\'s `performGlobalAction` method to perform this action. This is a sensitive permission that allows monitoring other apps. However, Lawnchair is not configured for that functionality and receives no events. + Open settings - put the device to sleep - open the notification panel - open the Quick Settings panel - open the Recents screen - - To %1$s, turn on the Lawnchair accessibility service. Tap \"Open settings\", select \"Lawnchair\" and turn on \"Use Lawnchair.\" - Lawnchair uses Accessibility\'s `performGlobalAction` method to perform this action. This is a sensitive permission that allows monitoring other apps. However, Lawnchair is not configured for that functionality and receives no events. + To use Open Recents screen, turn on the Lawnchair accessibility service. Tap \"Open settings\", select \"Lawnchair\" and turn on \"Use Lawnchair.\"\n\nLawnchair uses Accessibility\'s `performGlobalAction` method to perform this action. This is a sensitive permission that allows monitoring other apps. However, Lawnchair is not configured for that functionality and receives no events. dRU!pLPgp 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≤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

r?%{GFoZoJQQCM9g+}{7rPVIwMZQQk6hf+ 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 m6tN_?Z{?Ts|UvlAAbIhiX>0EST}d+ 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

#h!!|XJd@CQbJ@fM__ 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
W$~vuN4_B}jMC5eto<<**<^OCGGNBs8Hab4F4W zn}!h1w#=)OV~JM)6MXTucwDZX%3-M{cs4zWdg&M+o;=Jg)Dsy!6 z#k-oQKZQq*vV*OdvJi8aAU)ouHBBbVk5=3k>;}c(F?!Cr|Hki?fW_fo?q{L^RTufH zgp(**Sm#{HMx_ZD#1R;@oUI5{TB+hR&TcZNoK(bCRx6H@*)%*@7s|Oac9?Vp71ztG z6`mihC3L8*bfpdk0#;nnq@x4!C@l;tD@$V3QE`PPd2Wx)?)lasgchPCq78?!+$fu- zmo&JICj%)Yc)6cwIl391bNQkGl^|tYmAB`x)X9s34i}2O!3k;Zz1O_@h)DT6p;=x! z7_4}2mg^kuMFRXGWG4juENi2%My$DB4z-S)dH!`usoc`IrrC_$bn{-z@}5*V*rmmN z20V?95ax1P|2B&pjoGZ03@U$`CC;%cg7;R1L(;*!Uoy4Yu}!sN>a2eNRbnXby65DBr&}v{7Jt|LgSlN#}iNvC$qZ@IQBQy36GuC+P9hiTJV>Nw^iN> zlG$N4cEP)>O&Oxs_f1|zUtEcHYbOl-8xZW|CJ5*x>=QG=;mcdh)f-_PaOZq5NLlp#RQfi_ z{~e{R&y7ek0j5&dn=U3q+u>dCUq8fxrVWjmFx&B$y5mTt8V;xv2}KJ2$tPBT1kpBD4&xdivu92e_AgmmK{)2(Pz3qsb=zAyOn1pnLU+Y z*+}O2%OZYxJ!Vv&jg1o(AiLPP8uEwnq~NC(2dwfuHqwxAoh!J|lUL`c{t9?{Wgb|s z9sZj{Cald&F^~knZwXmPL!xM}9>|CW;})R@dS^_ySp;gMgA6fbM8+56^vkyj-RF+% zju1RObIXQ3 zL?SO_if#daZ1W&!mD$avFc!WW;-g!SLuO0}n=loE3Ia)k0tf79aKU5dG-yAbA#R~v z*B@pI{Q#brvcNiHY&>uzQZHv?nBOvXKM?l(@|$Ll;c^BLiJhRjK=N0QpC)?wci4?? zW%T)DTS^zJwoV(>Pe=V(s<{IFYitzgS553^p zcD1nko7%zW_OSED(r<0?$Kbgmv2HoKLmcWww#lx@geJG6brY<5 zkfQs=&uQs{#hPnJX}KlNKec1=7doNNcTvBSr-9_Us|`r~47x<(O#DUe0#5^Uxt9`W_=u)_$wAf5|aGl1ZCArygZd~qjj+F2nMLPQ)mEXd!oT_>PH!%!4&WVBO(xXSYVK7 z%NwNf%fq;W#8iI3Olq#Q<_r%rbF5P#j3sYA`qRd;4`*0=sc}V~??+8WxZJ zuwOX@%RhT>&<%Anhs=v1`rzf~GBsSG`k<3u)Qn+lqa1i*`&ffg)QH^)wUF-y#Mlz0 z4ylXb)aU8xOL!_MgjQ5IT2*6(Js9*WM)03>a?sCKvnU;SfxosL4W@PTsFik&rO~Ln^rf=O1ZaqZn(-Mtrsm`gi%k_X$ z9}nkVxeB`R!TBqW6>aH3s{+XGWd*=9u&8I?5%xOC4RHd+gKu;l>(Z!hcSP9JJE0S> zs6Ac0afk0znZoIi3M$wgL5@rLXu*Q+7IRd!4uPtb?5oH8!EK!8~hwTxX!lkL)qFB3V%MnV8Hd}JBUV$rr(G4OTRnP*Y&u<~@``Mad>*g^aq7u^I zDihqY#Go`50!Z-l#Yntavi)JH5|vzcO^hVj+OpMiQPF-`Jm0K|G+&uN!?yggFfw_D zovE;RZrXPeEz`Mx$O0sS6Jaz$&m&-ACM5qT#6iW}=irR7Xm7v-n98t!H;%N1wq zZii8-SF@62RQC(dm1O&gKcM0PH8YO(*W-tU@5%z+IK{u!>_;xooW4-?3vDUKVuV*z zxCoX=0qIJB@yF(-Q|$Wb?hd)`;pFqdoEJEJ?)izk*SeOy<1K&##j*VseAADXF{;hqLbV3s5ejIG7+7N@%M<05 zVL?+i-buKuU~I{JYP>Q0ov5J?4$~!7$}-nd3gS6-MpSM&s$o^AF_zw~!5xJ1 z*tLbtVNMN~bY*~28Qp;Hj|zqkTf5YCLrmn)SdE-A&9FOA^)%j&+Cv26vKA}7q_q1~#raP1OYD$7QxJ^OTF{hl z3fSVOZBjFtSQ5k5+*0^%DW0+@S5bV=3GCOSe+Uf$rApX{5FNyrI=+u#7@yPU!uvA!dl80 z<`%6ahceaNy9Xq`>%_t9L~gv;mpS%ogx?1_`lL!*4#|YgpMdW)+Y8H|>hdRM;r8~k z?#rb=xbGtS=1?!4)u>*Ms(f=u7m7Mfplu$PL>OR|C0$@Tw_0r2B3`@C-)zThr|s~; znmhDUWCnJ_6HC@sDIoyiwS~&+i$yw!d_-w}V1vA;?Vp_K71E0zBC;@9U@nLoNPgqj zj`dd`RzD8N&fXU|ySx@3QNJY*|K7xDr%1PyA0l_y>06*{hQk5C;cp!m(qEUVIiAKj z9(e#)G;$5iZUsY1NVX0M)Q_TV+zafoY$%phpiNIoiPi&DlG_w9{)d=xgaZP?fD6TYu>^#=M4>7TsguDy@ic<9bwm5ua30okfh1&DXhbkKoUKQI5Uk+;*s z-%0eo`o?a=1bZVLkzh_D#?snF(n)bpVNTx0Fy`f_9wtcVU}D-%S-r%D+i2K>c8LJr z1uUf{0mPr8gQxnWIPqIBY}i9!NBytUndZ4n(mIxJKDfaF%nNPo!2`F`MPjBZc)7_q z2#QNM9xIEeE}3|28PM<IEZ-cobC_GH-^)5w!u>OH-~_!|dCb4XyJT zG1z)m@4FUkEYTXqIN6~y)A5R&Sm_PkYg4prMWMV>Bo=S|>N_w&ONpcaXY~}Athl0i7wb9l+Yu3Z znRt9@cYZovzf)_-mE&XoS#m&+vL{?Vn(8UPLZ1l?#F^i0)E(PHUm%9~hck$3mH@x> z%rGthrD3!JBt>Ij;8)_O%k z%B{(jeZ*E!BMZD+j1}O!4zlGMCjX?*4f`h0GBZr5k?sboRmsUYQvz_xj%Czpinj2U zn48>9pCk-TdrR#bqd7#w?MriThZ(8a6O@TsGg(EQr*h_pcb`c1Lc1pusTs+wGLKi=vmwc$cx{_1iNf2Cj1X05mR+NSIaK~~m zJGm0-yBLB&L$jnZSOhS=2Zguuxu+X>l5P&5=QIMoUO2OF60#!I`awS@G>tdJ^=lJU zwULFCwkF;|gw-!(mh|liu|k=L&ng0!P%g;^+ccX3d-jNQdNCwtf*;OCs7{4O9(i=MI#_!HU85BCjnvSzGc$~*oRVG_n*g*)@;(VOz3oTj_l{Kx zjjvrDr4R*Y9Yh1>sGqyapNq!KGwa2QZbEjN?Qvqe& zjN)(oVQ$BF)X1sckgGk(TOa0b3cVTnry4%J@z1G}2?5b}wSZ%wx?{{-jl`xxJT9;@tYl`(O<;Nc|D&%z7in z^!VHfi}eZNJ#}V4X?;W6=$YB&9HJw4tOIj9R3}rtkktH-_C57EXLeKcl^Ek6q)f$v z48neTT!3U?QbqBSPLxjmwpb60woEg3ul)BX&6IcGCxFCkF0VLeVM6BMqQe!^>yR8I z-?Fb2@|pJ_;_q3(+&%N8AEC&%teT8oA0^*(>;6k!qSLCM#xv!j*i?fEF_~O#k4%}q zw*IZjSd%^OWIO;;-xBR8@RBlD=4}MzBTXORahJo;5Bj!csg1=fuZ0wa&{mgWFwF0v>zb#o4}gw&I;aQUh~BY?`Y9uSq)E9nGe?*dSyw`t{Bm-+~A~$QD3yn8PXtx z+aT)v)Wt7G^aY`^J=zCyz=vM71eP=7m$$L9I!A_;fHC}KK}GQQ+KBE#aBmPwqI3vA zp<6CK6Wn%XIVPdus|*t@1tZ7EFIZV3uX}Lo1Bc@q)MM4uj>ibvOwAl}@`0ok&_3Hz zp{SekGdsV{lS@e%=)x}EG;JnTrJ>_h=s;jeClHr6DXsv5i;5Spb8 z`V_Q@b*DglRFJ_hbszI8pAk{B@(Xe2H_%i|Y%FuE%S)bD`4}ybJrPL*cXRp+tv{#U8?{ z!vq3v#B~)Y;xIoi<=qStQ6N}262hUWn$vWNF98N4($V^L(+v#3b6O-p$QmP#`>6JQ z0Rf%+sOFyMNG;whXi6-Hotn;#Z?>2ZUobsf!f9CL@Q(Wz0Y@C~%fG(=D-zHi2Fhldg2$a^e#9+qXEM{1m)i*3RvTrlbjdvYfl9&bC zfya*pYbyCJuT{2OiIMjJ$CAH9uOulcF?~(}e|aVR!+E=TZ;qnr&>A zJ!IhuLsV94#_MT)kp-<)@5X4j3nc|SL73z)ZwQwBrJL5P4U066i}y3PIjORIT$z<3 z$CR#pw&tv5=LUUZTz+G@@1&EB`RCF zg523<5fM+GJZu@GSs4Jaj8Q92od5VFgi&sCzy6yIAwipx=cDrymjTn7c>ox^ReDFB zwQpRPRNG_BDU@$ccE2d+tBU_LzDrEQ?$npGF^d0srbkRe!oV?AeMoP<&>rttwewUy zzQsMnyM9K$>V_raB^$F%+MJUL*wpE!$E3+P&Hid`pyUn%zB7P8!2Tpp$jTe7(=jHk z&Qt=dXBsKb`as`x?ZJO)HszHhwO@8cV(zsVJnphfky9_OkvE8AT7$>-9cAe$JZGA{ z6^p7qZf@T@&FtFK-K@HM3P4$(=b^)Ip=jaKnN9fQzJrioFBJ5n+Hr&56z52A?B3Nu zd`AJ+&H^v-{#!c!+^&JOE563^wpd~JWApE4`}2o=Lt9Lf4n6 z=X5ikZELJljq<9j*)Fk1fWDU)2mt1tB(l3V#<8SzMja;rgCV9!yNzQ?p_EFKfmN`Y zBXu@L-eEK^j=)sZA?+iY7a|}CN>&tA*U%4W7&J&y?md34pG zLfwTJNqKT7GJPQCCV%JVliwdsdDVB-Rb}y&X8_WOrQg^5=}%t>mqYn@Z1m*ARLPm~ z8|l%*b%Pn%GV|7Dln#5VC$m(a+TcDJyZcv~V;#8?Ci@Mx zRUKO^)L1!!t|~)UR*Cuqqwzc{F}po$f zwT52tH!8qmzL*w7VuvP{P?MN?@kgVy%VV&j3fFFl0`Q4sij!$BHa_Djz@OX}l^hU` zFE&TGY!Kc0N_76AGDW7XV_ul~_S%zgY{;{901;jdV0}YStsETpvGDP(G*zA0Anhtz z8zhCtHquapXQ?h32Mb+B(}~D1b@A9Oqm88BXl5nlrHl+UcN5Wm-?lD3Cp6~ek>)7 zQjG{ud)04eu~F90$PSPnlc&{bIVBOdkZ9288bsZPR~goE3g(+pY^nPIln-nFm`Q(X{+kcfgulhI1Zsp zN$3v4Dl$-Fn$CxP4YsrSpI?BRFHOe-v66p}>-jR40LmIL(%Q~^jP`G@G}_-?`|sn$ zT*+6nP_nEoA9?^+sBmnG3vjeDni@i`3dIo^ws?sSbT6k`fv`VJ*M?z?`!mX%NNL5; zbtbBX&csEsAwSRUP8L?6B^wK?3-)Xdlcq&80CBl=wSZh*Y5KU-0!S~A*=ixtW(ZbJ z(gO=M8Y5}1hx4a6LFgzFtABDEPA#bUAXLgh87WU9;OS{q|@36R%+<{sRWE9jZva0EB?q1}}hWBZ+(x ze)k|xL}pm%HD8OM%7I<_CJrwOzjG&P6I$(rlQ#>$ z2aqq|SqTM_YeH=xkw$U^J&8%18WemoCutK|n`a6<>y2|yP;q8D1xMOpp!i9VTM?j+^qXz7jc&e~88`Bf>4a%^p5h7!%u zQW*iy-qI0ap0%MWo?b>7b+WL$Li)zuQWK$(wP84{t8hvE7gZrwZMZZmi{7-j%mcIG z5C^2iizqNS1728)Kyn@e++MmEjZz(d(DY|LLh%V8C{%+xMvgfwcH9(Xf9(gJ@7^v5 zr4xfg2qG4a7j`%j5>Gc#e-%Z*3y2^La}_$%a#5n{5Irtg%XHC#${0N^*5h;$%EI>| z03NQ%3Z0!b`U-&7bTZ4u7JcOn-*nO$mlMJ=q|`;Ux;X5$mo6Gh(B=T6F34690>-Fhyh22 zfFrO2e^Cbhsto*Pal4cD!-wE=rh|zUOA@CtyD!rWyyJ(0F&uEH3Dk5jD#Mr`xD?O@ z&E49r!eEZy)UtxC*dknkTTSM9%JY{J1V>-m=hupK@gT{VBjrt~y*w8TU z95if%P~Dj1mBSr1`g0kI?{jR(cnMJL)o{bsJ(Kgd#0j3A76%EUzgd;UQ@&XN%HlEK zr01pR{F@h~`25}G$MD~z^Fp5SDf2O{b#ynJTbotaaI8e~N)v-T4%U6aWe#*ea5JL$ z;f2BB6D&ckj7je3L4MGS=0O$&QH(c%u-Bt|V+KN{kCiOofzSS@SQRy5emH^t+t^7B$|0ha;4zh8 zG4sEN>9qM7wE4-j{S@n8x{Xzk>7#%nP11J<-f@s)6RJ)Lt6ol4^xQt055L@PdNvAZ zZHhNaII9?JMC~;;mpxjaD)svQVbk1 zGmX!eLURb2f^589Cfrf|P5AZY7U})VF5aj=dW+AfUv7(!Y5&`*+x@nTMzz{Kzw?@% zul)#icDG+Cdq;ZiX?tgS?g{+TeUCZ5TV5T%zkoi^BHfZ*%(Z(4#I1IC z1_T+oTz|mz9c{nL{s@TvIi`6rT$`ko0A^xax0*M?SB56YR8aY-uV&lf3JBk6`uYb7 zfS8Ze{eXo4Jl$Y*50GPjeHX!e{SV-y-M=PQh5!Q6p00vo@eT07X@y8f=7PpZpEqQM zZEGK56JQ6p;vGJY3Q4uKm{V|)aH<3{8Cl8uN1~7mleqk#BvFX6)2HK(XjU+?-C2u1 zG;sGcH`BeE7qwo(n+NMzglFi1+#r#`$@sUDsrXem%iP>Vr<2Cin1Zlm9T1__baQp}0_ppi-==?8w0tJK8`03uiir#7h(y|G%GPS8Cp zk))4D#1F{-MgOb3^)S7VaC3evzO3Og?L{^W1junXz(;>>(^Ab%Z&Nq zcdM}VkjCFR9!=S+e`HY!t3{=!~RJqY!i(sl^>@=@a~1beAm!7$cn@U!m`BkqtkZt{b7eLAB~LOrTtGaA*Bx z!`J(xE%x0}PlGNGna?a$R^+3c6KxH+7&BlQO1I(^N8=bEnwpGHwJ`#b4E0=|@z-@Q zj-v`z1G5uMg?j4gYKblgrZo^i9XMXjJpeA+tbZHI*II9zbv~*Gx;%l7q>5YwaNWRi zurn+f)q^Sz**m&p`@NOpQB~J&rU|?oL*y&N>~u}5p`wd!+7M9rJyM&are2D3s5@}I zF_R(W=sh^j`F>Hx(I{%P?w&@k=1XOu!D!pm`UQt2l-F9{oA{}v8(u%9-(^6R((y9` zu?e%SzK+0SP|aU<$8h|!^IUj9u| zfqUOv66rlj0sqz3%xT1wP+jk-lXdz!2h2<7{Srhjw$#UJbg-{hwLzgGlsipwikgf|FP_2pi16<9w z%y!6;?mhXJI&D>>$EK*zUv#WEnoar^3n9bXW>FgQxdAA)a5<(Jl&Ioa<(&f&akPw_n$@apQ z<`4(ho{*3|O-Sqc?E1|ufT-5sjC~M0bwlfFomP(1QYlUIXt_va%`5w4>(LJJ+{(XL z-CB+~ju|+y8rFugYh$!6)v>{#w8x#2@15k%$C|?qLF~TXKSzcH`#sa`ZKhaU^5a#6 zcor{HIWUU$9O-ZqHV^|mlo?5!GrK_TLBu*1_PwX6Vsh+}-@($I02-k}TLx;Sc9-bl zRHws>F!k^zdq=daKdrjUR5?&nS6iJ8+zG>PIL@Wryj0uW7$;UsLlfGX8HVwK8yD?M zoIgQ2$*!yZ4u;T%JL7c!yonl^Tk)^Z5!iG;s^QUtgvQ+a^JM_(kUtV!BUK&Cq)&X> zt>zs4R)Mix`!4P82I!;F7Nqu@X%U<+kK1hZKuS+Jww~K<8JH@9iK(` z4+pW3Zb?LSt&a#?>}@-R7Sh5=OfwJnSj~o1U75#ulZvkehsvac2jz~eApJSMjivsY0i(%f+@pP1%ErU$nYzPr%8SvSkx`DA&jd%R*V;+P_R ziP3UYR3fv;!<$#^_>iKFsPC|Bkm7DT${FQUq<;PS#xt@i;-`)T09Z5Ze?wzR>!7|A%v>QI`&5`0; z@^sPi*0dUVPqvHum#A@Rcg&wCk@F>TAjEIHMg~gg6U+aDUwsnqoc$G^c#>&|s_)n8 z&1!#k|BvC9AC9;0;#9sb-~d@S7Y0XX#)SzG$9v1guWu~i|EDp&@@`O=z7@ww`mGxV zXF4%5J5if4D7zOVAoJ97c?D+_usStPh?JoS<~0prI%qo8FKm_6DpmlsYTR9q{mo#* zU^Au1maCN%V{2B}bSr-Ez4pxxknz13wVykkIR2+1An>d^o;A~G-usZkbmv?1EI9Z3 zy?4(4TKenXoX|hWnA>A=0yi7C(i2LOHRsKC+k?q4gGqxw6TVR-HDZ#nd%x zP-UgL+!r(0ZJwR}W3@^i8*#y_Vw<_xTJYI zlnp!Bf-TkuG+ZpknBY+?5zygAZ{wys1ZYJyKLqIe7`ZaQ>cjH!=b4tftuYeR>h0-u zsUeK(bsg4p0By6LaxA?p)-0Jv2v3s@?s?92OTFhf>D>91O4jHIpiB4RB|EyU=(8Nq zwv%bXz-FDxosNMfSW}O459(3iL37%_v-@lqxjoMT{)naA^!^@|?iyHF22HBYXZn(= zCyVCSHdY8-rr+;GmGm&?npfxFxCd2Y&1hWku@IW&;tHC6`T)nmrONPZY3pvAcZJ_K zaFEV~_x}Ks&wX2`J4c&-)-uj@?ZsbLS0z$BD=3Tf#U7ClJ2l}|@@Cu< zh`cFG*1_=yADx;gr#Sxk)QKBNW- zfG*hPsrrd$_?rXLa#QkodDLTY$$KDmjktzOHj;-Bk8MqgV)}HAd6fauNsv?63oA`} zNlzTkei8M`)UG{Dz|U3*XZvqk82S|msx>L6YK4e&!TOpo!&^AS1@AGsg2-31d3Mw9 z(CjkbnRXpc$W!Zb;}l2iT8goMLS5b7fGW}qop9TwKGQp(!J~eQM1GyC=X)*6V|P%Q z8Cf%$n_YiGmYEqf%~+m6-9E$MawIpWW-`!>?DrHGr+klx+0Zg97pJV;@3<{wa=2P+ zuQKGNOGJw=qAx=4alM5rPJSR;&9%5Wvs-IMZ20^?V-`%L`YZJX%6b*-e~G62fbEOX z`{4skV_ZbE<9(ABZkb`f_E9r&`HWGv;SMk6AJ7q%Ueq;8NV%4qc7iHSwlh2{53RX8 zn7ZFA8Zhn4iH0&x_5%jvWzT(W;h7q4OnEV)xX^|95Hpiy&s}Zgn$7DWdmhuhg{s6y zqgeheFHcOu&kC!Kppo3q6DbLH!1Pytd{lT9Yto1?6Hp9qDV12wt{i26t)YZM8bgc~ zMcf|~7J@<=J(U~cy%>`GglQ#Ogc&z=Ho@gXsXCSx8Gi>^TAJ&h<(|(Em^gbywtx2_ zXF_k@gQmB~;c!Ae0ooM*unt?IuufDGwbjDE_F6j@A(f<#`eX=z>AznK0ap@U$sZpZ zLM@fgn|JbgIj+AP26E~r%Z$-z`6yS(*IZj{d{=-x);leIEe7MpRFFODD295t@B zyYyLXWtQka=EmXkZ0_1sIVM*arrg8~#S{#y@*`%aU~uwuQe?B6?Uw|!IB7AOif*BU zdT*7jK4hGn#Qp&pd4ka%0P{h+l>Q~BWT6ExZpKMvLhQW~S#DPPq%*VgUU}@`g$)u} z0)@Bsix)p)uM;e&*%_0Mgsr-TvxW*A6mSLDJ*0_GEaDI`MY=_xX^iy&c!lwd#ivqf z>t#d+7U6lPx<@PmOFh$!0?FEx#g@(HjXq_Tnf^Xyo|&IMlpWI|0D+~p=^LX!ML{_J zDb8Im1Np@%iB`4|Gx=nbF#lyHp4vNp*PMM^Mkhyi0reYUovPc^v>3ba z#-H+hsT9TQrSv#s4(1aulqnQuiL$hEqZRSA_0susHc-`VU@NNq zyhQc7py!u?kBa@e07PvpFik#V_mg`zS1b`kaFY8$qf@nu=SPa>J~mpfaI`nnO~3b& z-eJU@07;|2EIR>;MyBbGeOgAO`P9JLKF$Ti81GW(bR&|OjoVCLu?Tu#I&i>qZ$Jxxk? z@Rk{mreqShTcl%}z$n{3n$#2FsZmWsKeX|=dr(n3Of1jO>ddE7P@tflQ?#K~@rJ6X z6hB-S`_DK0&ky_0=MnzTH~G(ZvmqCgAkn#otR_Oz7DA~HU^Vs^F#c5Ue>)9)WCMVn z!u$3GQ4)IxB!XJ4r0gtd;kqOk7|U$lR81l$icinDK*_q_8?b z$URtAnqYF{RL({jwo*>V*H7kqfFgzC;C}%ropAsE0-iME<=G;dZrJMHdCsQLd zmHrylnSWU2r|@mBzJ}=n(j4y?TK>`R9P!zF>hw-MFTXYUnFSQB z7`Ox0 z2c85IFh}Igw(!35e>=ab*BlD5-_pg9Ivuo$h@j+{wS8K{A`&^mSl{FJOKuq-^U~5`~689iJ}N zoAP%|o}Tmb`vSqQ#MLXpAQ--Jg5{rX=v6-xN-dC&lef+m)`o-St5gX4JldYidGUTt zm}F_2qvk#WVg%97nB+|_zjp8wtlWNGKFt;L?Xb{X|z>#@ZkRnJUMteu(JKYRK( z#E0n>(eP(aac7ahBU;1G9gB50j*E^b-Lzx#dx|@-nWOTlC%f70v$4JW63}_*>SeOi z&+S@50}i5v zIMfwY(8)d=d=pZXwEFRoZpMdWvx;>ft=(?rKi`2&P`+PXw}ajGwvuWq@K&pcv8k>- zYyc`6`-M^qT34Y8I_M!)HjY#<$cp^>MCsnzj#xcA+CC6vDXQ5K=~ZoL>X4m>-8XM)A9r_-L3p#J->A_W{Ry1|vkIR4KSZ5(Lu3%Y@v{FvHYQmg9ks1Mh8-Ff;Ip1~IqcGiE5sQ`FxG%SmPBvDlXM~7 ziqA)4+RT?Ux{Xe96pX>?}<(tyU`h#{dQdvY+W+y5%oc>40l=g}bT(ruuX{uTySBnxLMq*iRf6TNKz0@S9KAPRaylAgEwWy3 zw`4G0X0C^fF(2YK74ccPttDMo<6Z#<(5TQZ_lZ^c!Zi7rNk^824I>Zr9|`k+M?eA6FAkGt7?alq*=R3f6{I zI4M#QL(@c2ST{%49=r@qXHJrYk;-j1SvQ$_Qdo_6iNh1T&~+Zlo&8>?o@GJbs>9=lOK3vT>Y+gU;QVOy~x7w6m|EW9)?Jp$;T9MInCfz zzUdI%4P#I8fcb|Ii3tBt@6t~IC-jcx+GxgUYmS(R3yf_$+-8JvH(8on{F~-9*~4Ip z>*CyyEbb=9ML)-|IsC(hgPwEdO1B^6r9mSN{GOc0s?A#HdBoWZsV&+nL*^T)x=g#m z5TU+Ob%ZDHt=A%_X-7Zt6IL0)L?9+it81k+CzsV)xQD5I_bShC+t^sZyOchPxoJ&q z+`c5kW&*w^(=Ig@N*qtQDHw&Hq5ed<+E9QSO4a_z64rt{O=H2qGwl!Pd9u5!*rNyS zMW)C>-}47|z^E{TRkAFh;6EC40;cq$?x$ zp6B3k$4rP{q>;Z);sA_**j6}%zY$TzxM5B)+C~Wlwmy47X%!e;_Cz{y+f{{4rRJHmi1wI?Al35Yp3}^fEIa#l_eRLKQBHw|7XDL_$P8H4D4>&LMKJ z!n_s2!bp=JbttMeI>@K~qbbeu^0lX4$Yc=}5jM;$vKPLkv?R*_7PjR4bI}^eC|r#F z;jqEXE^`wNjRX z>zhRK$$e-9KHAkb7s5ZcgPG-v_lnjTgX}6;*UY47X0^%9#qSJECNGK3LD*-xP9GWO zN}*(N=j8rVoIOqeOOLGJlwrfFJw=o5Gp~G>--&LQgzpIt=(l%|xL1SLd;6zc;Ra(| zWP`*~XevWW;lm{;WM0bseJVrQ5PtsMb5SGo*A3X$>{M+-j(>zwE6{V}QR@)M#L+*E4Aa6kc+hu<*akqm!QCAHQ0z}on ze_t)|RM#g|zc~bD_RZHzd8CWI8xIKuno*-h1VVgHI3)xk8HJy^`8gs?sJ~d;n*Z{J z4(`Pt`Fen;(yK0^B4@2>SpsuoE7%JGQ2kel{e$LT%$j>cHqpXKW&mc1T)TMP;cFQK zCNFm9i9!pYlvu_(4f-bF2N5!2(-z16?1A4UE&WqS7*%M;a>akmbr{e;LX@}AiY9zT zE8eVs%&U0PgQZ8D5WX1eQa;e@Y;1rsDZ`LVCB5tA1d6Ol#Swj6OkD zi1b<1GbIrHt8&lahCH8G)_am2P%Rhn(dxvhRfBD@l2cyXJkmbnpmQm5a$A`E`LaS$He-T}^R<798W@;JJmFUm| z`NilER+vX9_5;X4HCSCqRo7UH&=_0mnfNioZA~+U{c)RA5B%d&vb~-LeqV!b z?gke!996u2kQ^!hkD034Uz$mfqzm(EdeXfSLTd&xIR+=AHF8xuK9A3S8i~gefODxtx|eYkBakPa`K`*51-f|; z>h=wjwM>6qJ47+ugF!+$!)K^fFSW*=M>L&)W1Q<_H}UP%lXhPKc}C!U0Igfwu$5nd z%DU6=G&*edhv;H4l>vp1h%uRLq}`O~lN*VDZ60~ufh-uL)uW8b^MiXef)QXJhEW0f>#myNxT~ z%=%FJ#ed_b+(($|75@V96>R%X^^{ygJ7o?y^yO5CAx`dLjSv3Z1bP0)%cf82eqcQ@ z;SO<$ypzrb0kUDgLRs>4>$DlarT3wOMH%#I)iJ?+LZanY3iVj)&RBs%1_sPVEa%Bw z9l_H)S=nMH_lA;7k*~wPjKb|7Tr9Tc=na;KY=y7bOTGbSScea-6o})nVfGh%lZV0c zEA=xZ7}XOYLEHprelwVX7iKx*{xM;}y*{wTapZ&m)S`q`t5y*`PAfblvI^2rd}b4F zHE40dIZw7Nj;4*ZaqdK0U=ZJMh8n?&XW%zI;9TnZjP)HfspLUq-VU8lx45;nwT^#S z;gvCN6jPHYOgD2XnTu3(`%6NztfPr?6smwmE~WsFv>8o)ej49A-Rf2M=s#@PLKX9+ z)YFrk{!!F2)GB`AP9fO?X?Y~I{J=^4s;$gpJ~E+woJ%mG5jBc>AhswB!($=y0{nbl z#aw|xX`%$36#)+UnJE7YHwpL##vz$PS>`;~6mR`Uv94Ih`8Y}K1P;rR+LXqrYeH@N~Q{KaD8$uuy1^)v{F-=w+V6rN)6m zx)^6y0>EkX@psXf>peo`v(f{1>;xwzolML!H>%Mm5OXpRSP4=HhSWfJT>)S!C0m)s zX@egZA}c_Jy|Ko`-F=**N2x`)ms4hkBTt1Om^IXF1irfn%uQ{?s+vX<(De&kOE{-%NvbOsCp->+?{x2l+-SRQO69g#F6t=RAg}t_@F5 z(45C-%2x-@^Rn>}T~Jw0Spz^?`TbI4#tUG&G;Pl!KJtwSYBz8*<-YOu+@HA9H7?EnD&lB0@T7$Ovx=xrVB*em zc>)uJ-u8SgM)FxH)yRK}^v&=p0o{=_rSLv7oAmRgBO&(Wf(T#4jm5ovGV9;px18*< zOO8zCM5W~3S--@OQrNnQluf3%n@PsI08Fr}p791pE2{o_2b^Mn!=fpKk%+WVIZM*h zG#~&0>{Ev%>a#*hmGag_1~O0X=$qS;@)(^^I<~!M)@T%0cPNXwhKXiHWiT8As5_4( zNn+d=Yro7_u!j|*BsmnvKTk$C8Kvc}m z5KSwz_weFz9p8;s>q9<^cN>anA0e$HdI9l@7&NZg`F#6Nd}~8xoN6l~t2gycym~&H z@58}H^MQrOIZqqEdn6UZc#esog zMnG!vZNO2PXRwz28ac))4hzFN96pZ1q;4+}yMzk0xz5+P%_K^3bekS2*_>}r!J-B^ zJ#w1_X#&!Zlx5C>j0KuR)Ve2)oP4}(IwV2g&I=aT(pX&k%Gcp3Jl8T6xN#sq{|N0K z1!g78rCPGWVY!B^vdxCFbRc2tYBWnXA=&OVcYPqHm+mob#Cq~sB+-t%@ZOmnMWrzL zq`{sh#bqcyRhf!z-i$^*E*T;^VU=a#ky;RIQyf(V$R=JMj((O}w4|mIo#4o4Ufj~V z+0YJ56cdF6=0WIGlSC^510q5Bgy=Ma5$z#X3`5D<> zs>q|9%)Gx_G(lT#jNV~v0LGtR{9_2K&Pf_nNW)S0_?|1Kg@cun2lF$2M}pNFS%mgK zZQEfCZv7BD=gk0{!&capF(<s>0=gJ`%ZVsbl-yYgK ze}0CclHe@yas4~b6ssgYY z4&|vsh58!YQM~uwb{I7a=P5J$@ZKs9bXUt6IOd?`k|UI!-@U`uKNxe-R7(3Y=AyM4 z_a}g>ku`?DyCb)raUS>1{|$4_MmZS&*y*2o=CB{|KpOIJLfHulx;|)n{&_Ww2(o{N zirXLYgcIz01F85T2@b&d$2L4eWREbu`2E;AsyO`#%PE}D@HH%v zG`jYci~f`Q4S8LO#zJryBWY|+p%%V8^8*bioiwpF!xRI<{l*Op$j$sf8BwIR_=;MX zJ-qmG#F;qyCU(Gd??7X8)i3t$rQ{^whTN9)~zx^`Y<^xwv%dl=cWug0orJ4YO zkf`|3Q56eCTK=)FmdzO2!Soc&>_&cTjW30IYG!t={U8xbZo*#S9?z&d8BfqF3hjY0 zGM(Yt?~roO^x8Kl9H{ew+UcIdfrE*6(OE9og4yQpCsxBiVyu!I;l3p5P6Z$aFwLY> zJ@wB|)q1ohI#E=$N(*igIAc~?SSBDMm73NuADkM`jO6_vExw`|BXbOk2kh2YE#F_W z7B}r^0`7pEzO7d{9OY+RKS=ynxW6SgPcF|R`g!puAQ2dYHCM&ZPIL=#2K zntNQ7u~9v-Kvoj&oy9OL#MI~ z6ZeQ*103u_Ve1ESr4();uS%ypW7?5?UNlNsH1VE6r3iIJULB;3R+M^mFGBSo!}8vb z^SKELxLWA%EABv>J!gLXi3vwejf2ZY5LLzv)_~_9jRP(Fkua|qRbxMGC2aDm{)}Yn zB1qNX9t|Nc`FnJ5Ar_z>a^eL6hdPI>&z9tRYFlNxgmaT<)Ed+ zAQM%9Oh{99`cpXzD1OUJRiiDAxZxDx|kAh%G9l?m#p^srZ5}_NX zs}p{NJ6Z`Rbw6Bp_Xlvi4pL1fXg>T0N1m8fKXY1W32Rifkcd{u0#S1T@0~m5dh!xi z=no#ps(Q!~#YlZyrF17avw3CVJ!KtmMiL>aacz0i#o|2G;`D_g!aSEwGNzG@-*LZX zhL}bUvAh5N+wcu_AR-v9p0e;n1o35|U2kl38pS$npwDJ-7Cr+zI)eM&GE{suM04}* z=?EdenU@f8J@;eW-A~B2vlg}NxSQ`PAlVJ35ya@?=ai?ELaxMxZS^|o*+Gt2W6Y7- zxC1O>xDhLpR0O{5SQWsoJWp#>_ToB1k}>8o&3WPSW1hZN4O>3iMy*mCT|v*n-Nu&H zk#i94ZYgB9@V}w^`ongS^Q!5+@Kl4o~}Bm%#16 z3ny5;8+2#95{dsOk!p`x)d>bZb294AoEq}bc7X2=T@j(|eNdLfMmZq=78M3ffQxaU zfGPpk;UD&N6$VS=B*=k4(oD7+j%3o|PL^XD#LDe-HU#9D;#KNj$&0L!1iuzzz5YXT zYL$NX3MIWqWg)@^F;%Mi?M+OQVm@~<{##m_o|5$b?rYDJ6tVUFUr^wW?p-(q+&w8U zD$jN)dJ&Gl{3w5J?u@V2PgNTiHY4pxCH8j<_4G>rCrBqxcRfz3noXgKj|T4yX`ss1 z4?)9ekPX}ywA+r~PjTVhb_PXa$atX$%S$PrFYM0e5Lxu+P+1W3!4zpD!vjO#CG$q} zElawohido&caPC}ZkZN)51^7JofQikBo#ZvyDM#B4!g1rICIih6t(}*D)!ON_0D!$ zfb*W%HL0u>+W!4>q1sH9QRH%|+DwyCG{~D=`#t~tEE_@^M<^@(4o!RbGnz(IuIlgh zNr+}NKK#c|EX_F?P`r^;an$P9ZM*)HDnElt5?bAaoF*yD>PzWWDPOnZLb*D*f#b;A zEGM&x7Joco@*;P>1P_7sjePN$1S181mTUyu;(nhU>e|nY-?jsVfH{|HsePsV-*c zLs>L92`U)3iR<+72JoG_saisbc3j?Ke9I;HsRz>+TZ7-#XDzO^*P89>n2~eYsLKqn z568@FF)Rhq$yB(}CQuroFZf#yBQ&*B3coWLeVQZh|6X$^5LN=ISGLsDC8@TZ`6#uK zZ=+;4OaM$;`NlUmDuG@A(SA*jgM{Y&QN-X3$rV(|SR3tbiy`4${tAa`8;ysh>WZ&C zj^h8Uf>zRyZ-pB}qdOK%a`n&_sE3sQe!}HCGns;{e01kYGow$w;9?y6* zA^^LeY}*EnxWRqwfVVh2VgbW(h@KMLBweI>2oQqiT|i6(HbU- zH=;wyZ?*oe`s`}G+?|c|1u@G~eEiI|Y`fRC?Pw&R=$dP6?;g3DfgF<(VDI_&JS=u) z8V;u5$qmcy)rd@0-A@pvKltmEu=bKm6@y)XD4X&A}%Du3X$&#<#I#RCW56)w+Te*p%N3T95f675Mjb zUje~7hUt>>i7Tg1M^8Bq-`9HL#iQw>hILju80xrJG*0WJ!S!TZsyNv@nP7qzFGKG2 z8{EqALcUO?zR$+b{BuJpk*7%7;61`>l2 ziPbvAOA=GpJC@gE#L=0GeE(DCI7l}))7XEX42Tc`AdCdKq;VJikqxzs=f=U(A7#m@ z@)zABTGPmJMZ@6Hc!?r#-`&viG1Hh+i-rKg z(cud;eIiUAM5{VSwG{+8TipJY8%c(3#8%l5NLR*C{N|3(LL{u@;lGbh{q0v zx7zG?ch^GWSEyI*H`+gh>}Gy#v`KwYPm-g9{OYFpc=&pbI^fmNMJqCjz2u4 z=*SA%l)oH1^N_ypUOV7~yxX}${_tLxesqgPQj?=}0V#TWw5DQH%!0pL$2{8uZd-0< zAkTDGqt2f9sgb`?Z!2O!$fk%zCxIXYH0T?g6$E|UF~1t0q79m{T$N3n_OPS0pTJ#@)Yz*k4~d7!V?`F z`Eeb2nWb!Qv}5`pnL=Jr(>i|spk}vNbgzDOH8{S#t{BAZRCZwdN+T~qU)h6K_z{_| zpBY%cj5eM{1a0THBz-`b`scE2QK3{9WXBnf2XskltvwHo-M0}&gFOZw5rr3UsRqp% zn;NT{xBVgLu7D&|u0m^7Kjz6nf7#5P3RU#`dHB51_qTan>l2qp{V56m_nu-R=j0EUOo|a~!x%j7+)Yid zXtwU6XQa_O7&N3^i)k>~0=>)w{?W=c+YdiO^<5iO=`X8zI@=82JI?Ph!RC$M=5y&vYa$UxxZoF9D%RS-g{etmg}?)C>DrqmQ=Wg*E6z%)W@SL6642Bya)T##!z2lajF zkyU)@1630 zHKpD#eFHzMQ|b!Y^uI}EsA^avK!tS*GQAAN@eU%xSu!;YxJWFzSxmb0=4d15K2Mi= z?nYToAD%bmZ&>jdb|ooh>`E+QKlVFbY(s`nK@9%H_Qje@_Q}h)Vl>;u|LuH;vDc5_ zXpAYrWZpQk(s6*9U*~13w^fh#A}rx*sCo;&@hs%g`F4GE2^diFN{@fh9?P&2V%vBW zdUW0&bBx@83lWQ2=3-uWWacmX}&!>XfO~ zCy<{Re_iEUlEuXm;ON6=hu4;UiM10EB=jb~qraSeRuNlbP{d&#z#WyCi9!*$irHO; zx8&WnZF$w92V@&w7PSH2kR0+QDd z_nsT| zFr-yuM9QtKoIBMN1dT`|2Co%6C9S9jWcVUdQYO+fEXIBBY&e7G(_@-&8XQhQO^XKwA~e9!1(a}zC_-zHqA+>oOn=_yfdPmAb#5mBl} z03O#XFd&0%cM{8GppKbv>wo9SB0y&dcbliI6+aHjpDl%UczAvpr|`VzKz9d zH?|HX8~;55qvaa~g$&UkhS0tVRrlC5H*Envs=qs-n!IUXH`5mG$E#nX%0OYje)(-j zHo}CQN%KM0oajm<*vgLWyT<;(XRLq2P{1K@uWc!)LU#O4+rAJt@L~4Jt@f~tY0)UQ z*zp0lHc`i*%g3iWiV)Z)7HR@@CsmfT`PECtG!JUxC+=#O8nug(0sid#e8tvy2~NA!_u*VBbfiOYp7p<2+kew z59&KN3CokVX>5jXbkdbennGyr1F>T_#}_T;qo)O5O>*qrfN~9$Y!b_N1h4Wo?s7fK z_zVB`*1-ob#fMwOyo;g%($w^YEv9G6;D52n-+{0G>N#+1BVHYFe%gNdz?i%Vg$gA3{s=7=DrT_S~EdSlX; z;PX!mIc>8jRpb_RSsgl*Pbnr6#LTuW-Sv>Et?AFQ<1`29-%h&$2PPv=d(p2rcov+n zc6lrqx27J~{3pJGJ1$rD{vU5+GreF2$<$1W#8Bsb*kZWeKu~=Oq(m_jWQ-co7j-?FWJ&9jg0ZfWUU5= z%Iy_Z;*+(X^Rkt>J!{wB*enT`iI1wmRMmOxJtj#R zye6*UuVC1kaJnQ{_lgkFhpk|oOBBjrKi*UtG%hQr$ORFlw(9Nh5YX%0?j=iNCN-#d zNM|u5O^=#X1J_RSoMsWf1J||D;e*#K}~53n0T=wQm5XXAW<{6l6BlrXj~t;Nqj7>$Wu!_#UJ+nePhB z;v3cabJ~q{^w-h1JfR$zBSi&7{IQSZ?Km0ZjcI0T#d2*_wDXoQP-w5<>CB21#&UqH zzTKd?|Bi=rV)7dZzVk^=&jh*!ue0OV{LadtQPsmgXF@6eNJMdX=y}})gaq*ld*dn? zVYr7*U%Khv#VXo+*+>jYmxdI*+F$~B+s`{UM3ywRmSWQ{2zTyT(Yvu$eaE6t^l=&8 zbgdwy|D8?fulEmhOrF`6lc=V|oc~U+SbjA@4Xrt+(udC1EY*Vvhzz|w`8xu5mk2Je4#t(zO%9<{|_dSE7Bw{&Xq2D%Ml;WNDc zzrA=Lc5f0`udy$?2OOLb4KWr>O+>?z;0jx`KJB4qf{J#`25ac$gMbk-vwoE{J)@M_ z0f*QI|33BdUW5OBQ_|f9AH52#|A^|1@AY6O`=B~8>oF&iO-=O<=QG_|yhnW;FhM|< zf`DWRkioe7{q|y$F*?Ya04*>moC;nEN1^uuWh4;v-rC$t?I1A5K69czuCmbM_>TOw zvnAc5$c^bWZcv~ug-H8nNqhQbMEUcS(DQ&f1}x6=hEu3LrwQ^nPDuDGwJ^i_U0-;HmABJPNw z!n%2eEAg8wFjEYf$r3jSB9FwrN`x9o`X}`L=jAau-BxGDnkci!r|dLQtnT-`^vO8= z&-0wC0~#rp1;eG``s&UXamI+V=l$W3a+d@bT?U{9*qBtrn0{8;Q7guk6kd@Fl`enN z+I2UndX4bm?%CX2b}9`8;^RB~?zX3cKDzghXOoAuSnm+?Q8O>oRJA*LUQ+tD#h2qj1q5l^YywKPB}XJ*X*FUu||Q1!W5~TWcFO=-@?G;-Yhg z>Nq}UyDCN5RWtJZVIIzUzw93C3{oRmNgFZTb-Yc+bZi9~pWMxXfa<*|r+85ehc&!o zyS;Z@Z!|hRye3COBg(uX_$bo;P4%SE0H^D8qAKP6(kbRxShJ%y?|7JL5g(EvT=+aA zm%t~85+JR2>A_!Vx5{@B53>__xLdv!+y^zo&0VeTHR?-44bH8 z$6acZq-dt|@zQKyY=!TrBu0s?t~~6-m$sj$85U>fR2gZ=*#qp#|kesdu2T1 zsm`%A9BrXB1zQlFvx;x>4)6JKXFjdh(vKxj| z74PurAZ+1ff--ZfO4VcxHPbC?JFdM&wepo`$%zDDK_LYU;b(-?Tjg8}nd{I>tqLjc zSyPLdYd$0lkfHpCojgOo6QUt>xzcF+0x^fKQ0ksf_xO-Z#Q3m_V3s+48oZtk8lZv( zIH)Et`G``UHc^dnJ}aXYN#j)XQKfRNHepvEpZiZ8yIg3e)s*X&*wxv)1ZDJtPNu;d z@a?Qx^i+ZE)hcc^tAF#DR&qMu-0CGwW~D&sEL)0{G45z~X5iOLA+MCXS$je~T8?Bd z-WU57b86_JSwu_OhAq)^AnVd^*FQ!}2mjF4M#pBvaD^^(N{l((D|Tu41(Nf zCfqE$z_v2CE&T=MG?U>dtdffkwP>^blK>)*m7~wjxle&k>%hhQvT0f0=lFR=(ElBR zN=X_CSw^nKMq7Tu@Bd z+WG=*21uDY%`^aEbm1VhcIp-)wsUsBcs0`huqpN6J#zc8KPo|g^BwSpr#AbG_-hEx zWfB&IzEKyXX2j!BU;oG9pOpUS4M|ksTvg+*GO~ywWc_6{+5SnZw5CT^3l8}=LW8^BJJu-Wnrds+vpR-9n0uL(KVEjwzX zPHSH4k`;bc{Vkpgs=Wb~*YTVH2c!Bkjw<qn5*`xjlULd zYPo!Nysb8GB7^qOW$9b)mANNY>AK`QNXB;P|E#dve8r`z*?0%Iak>58&MmSdl3D-R zGyyd~90sUhPSZE;(ybSkrFFT)uOlC6Codl|d#}nP7h3$@Y71my4G{W|C z(w9NqYgj~_dNtMWhDesqk}rLK&woQNL);l~Fq+cD7IfakEX>RfMzEo5qQHFdA?|HT zk=SS;7bC%lt(ZShL)$dG{sO0X*nnD#dIjc!?H78+@b#bflK=XUCQSGYsH2Pq!a`|? z6#n;InA%5%vR{J?O*@~c>^bS8fD{wQ7Xkzyg;Uf$lG~*xqPQsvovsT;{$po^w6xoQ z^ddQlfzfTT*T=kt1vzRlc;qrYhDm(MmJt80y_){%mL(poxZC+t3({a$Lh7EQpBLE4 zd$BAgVo=xbLFaoH4XTld9)W~eYZQnM9eSCi1q}L2JjRelulwJJi(Q%;OK%r&(RGN^ z(dm3bujTlTr84>Z3>Jl9?Y$=d3kLbL%JUsBg%uLwCBna6CnPIqqUEgC7NKt=)>Qa1 zCF#O`**t8^ar7sg6K@rEa>xeAH6!nr34WL6|7VnB0q~axq#$>)*#PAfP?gX^b5vwX z=uNPNkwLJH)_sG}v>5S_%Iv8`Sj>8@9a(JweW%fFPxHZ9z_G!&!4Sb-LbFK#v-LjM z!rCOa#kSXU+sV|&=fOFrVVHanj0%BTj+M0t=XhA&xN#z-ljTh1!oUJqbd0(vt^l?E zZ&EvDH}}#hstDJ&WMK39WjURElT{5YyGQ0K$-gVPz;#>YlD)b6v_8y0RCZ;f^7?`s zL&tnl%EjhCbWVCk#V+j?Lk&-Kw5{9`!sov2mjpvoX(iYPh^pQB@&Av~+SXDQ7#8lx>(g0g* z?I!$NH4w&I>EDBHgN5-Hp{G6Le7VDB@*&7nL$Z5)V|K23W$8|#X%3VQO1&x+|#zB|^c#PkIAv*1&@k;K5QH-klLJ%N^+-Rng+`es=BiUw=ZYmR&qQ zdWs-xCj(C=glos>UvGw1AfZ+#k`a0W7>!s&^l>dFk6P*<5anY%q-|b_usBpIxr1+L ztzdjI{!&6kAk2A9&yc0om&mjf>U(P(1|n2l@M^O>-(EK<4d|xAir~)PuwK&u;HfL@ zG1nB|ADS)kdBuvl8N7F9Wnz;C=Me5`7n5J_bnpHo&t?MSdr@f0f)~U60+?TjK!zx6 z49h#_CRNXL@9D$ih$I}KF}{X4bqO+!C@Mmbg*+I;oKyiuYnp(=9#{$0q283YH{}+p zKuP$Np1=_+M!-3m);`9L@{oB1?se-Ri)`aK2W@5j@X#07|JI5OvRY(H^Z=VJ5N#xR zq(=c~alZ5?G1758vZkT*f0Ek}gmADZA|myYy(C(6m3Ed>Xay3iTkBVUg*t4m)3{nt zPkx=aqx@Ort~IKa+vjrH=i-RS8fZg35y*UtJ)q4w!`3504#;}3DDNouzwR>l*sfSX zFTdSe!m{L0U6Ju%x{3ghGg@T&~qKA<*fsR2^uVItySz zvDRk=pqK7Z1;?mJB67CN@3vuI9x+LDqLgxI^(zyf@l4q_3l@NpH?Azp;ro%0NC3nl z6iw=*kNVjZ7?G>J{0E~0fs_(z^VpuviLon}^I)ayWd-_7wmswEYMz z7B#qL@F_M%2B0VY9(zB3r$o2+L`B;oWf3*I{Y7h}Y?okoiWoL%phV9JMe;Rl!n&SU zxOt)+PCnZyPk0UiuyS@K84OIO_Juv$G9|fg*9dPWupcJsS`YChGOFsO$MA(kb1I=-%plre90B} zg6Rd*9R_`%1PP-77@UDYMy|^i@Bz(d9Y^wBF~;70tpBg9k{4@yv>yM+ZNnN^abn)` z{T~br&bUya&JtZoyD*PaEO!}&Rh5ZnYV!vCDf~s+G2pIz<*#QMwuRfc^r`vj#y74% z57|Z0+|26}$SxwzQb4D`TaYQ#kxzf0W;%LioNBOa#I3Fkw3yD1fI~MI^{JK?{Gv#; zLbp|x=8TrNsjz>S|KQP&RWM{SWEu50>N{K&VVlt=u(!YbWy$k9EV!uPzQuxt#?CCg z^Ik}uTX-U%@C?y*h5AS^I22>XrRxkyy@IZ&t7_SC>CGpZRRU#; zWp&LRl6$)c)C6Ks-h`&(@!FiOzN>H4eQb9I>zm&?>l4#W$I6ZFwKFx7RcAPtar=4j zjaRge?JiN&%!%muTq%l_onO?xE-rnnf32i<#;(8u*$+MlGq_EjIOO=lBZ&8vwnsDI z5YqAH6Kp-RJp&Vz{de0$dD1yEIzw7u78>-fgz8%c+%9?_C@%LaZR4ski7@^R)z#^I zKUlrxJ7OC1?@*_SuqC}S$^$leZE745l5gqi*LcI9Jk}~y-UH1bcOEp&xTB%@Jpo!& z*)}cUgu8Lc-e6PK0LAr@pU6@1CH;3t?r^uaS=*XhT-sc&*R$lqre8$A zIeZC8$n-))h*Hh>yLDl+`V`RqAw#v6>Eu%x9nXcyNEr|#$=#0+>5-0ilv;Zl@*f7q zF|3J^xd}z5APgBar`)_KAnU|sO%NNr-NF*M+d8J#ZkK7{Retmze)MwnC3vg}uho{z zrirr%BaNK4{OZy_`-1|Cr(5PcK0=p@%a^{gCyzXrIV?iXmtgsWQzLrBE~iQWw#{?l zScxZ*7@<8lr$U=&X4@LgiLijlP5jl91r$9alr=SFh`15fz>1QaU7kvL#rC=P5>GjB zCXKJZKqTTC!Bd)CReo`W?FJ%|@eILRA`caNFSl|*p7*Z+kI{-4p~E-bjpEYr;QXNf ztij&yz->#Ua7~Wd$h_Zu@o#`_+->{4Upcs2qI&Vht?h@dC-z*kYWvrfeq{`7kxmj}V;j$J zT8?)6-QU?uIg}GMhQpI6{?!XNm=uC=IsWKJEAPX*EfhTmPY2rU8`!RIs&vRe@A*71 z8wX9!(BRvP)sjS$2u9m+oyo+L6*Aoxhup8ptkv&Gb>PgKIa;TRzX^ibSyl>?P>Ku`8mcx&oU&YdvDw@MB@w3Ym zk)k^0AN+Ko=-dpO%rLl1F3RF=AO%Y;QNBjUf) z)PPC*1(l_ORW)sjH z*L?CmN6FkMv@T@MwjEK`_-Y9oqRveP6V%{k6g0A_lPwGgFP&VLDb2gmOjIughBW1!~#P5KZZkoJ3b!|OSN-zhi} z_TU0yuI3M{jpsV&RwQcApow3?a;Anoa{fDpK4^x2ZbpwwCZA!OtAf)epI%#pZJ^z% zuid7^;gYC3CfpXOL*8dspUi8<`!un{N4G_Kwl0LtdDC^nC65s+rD7m|2pI%!rZCqY zPqKxAez=S=j%W_V3?ECt#h5MSletG(Q*Zf8f5-@k)BTK3?eW527PTJ{!<3mwdS>)kYNb@ck3~{GNa;c<$B} zZ<9v8QYYoELhnI&)@$kCy4H=KmB-Y3!GV8{e@)Qr{}3|1o2y zV4t9)r^G|E;H31HvSFvtPqU!_ zkGDKhTxR&++Mc>Q-#`0Gey~Me`}85<$haouNAGg(=LMrfvy)8?K1$63ZK22kqsw|jcJ!UF_#jeHTV%6zp6ZIITM%;+(pk3SXXUyB6=&U zojnz+`zi{+c=CuXhj3V2E&=Q2m7Fa5rrDZdc4W4!V!1IW>s0t^C`p{l#uS&qO$%^i zXLCH(rVpi>k}b$AIv)2xEKvLco5YCbnkv3cvvJ*aEAnL|8EHmAu`OPSNvCaPB)e7@ zC^zljzvfpGP;Dr5@Os}7I|a({^rO`LV}F?RAKOG|VYpx^Wjh1;^9C zXkRQXpfW=D42@nVtQZ{XdjLCwU;2|tazr;%ii$N*xM75%GHuO22>>@aoGk%Q&&mku3n}1OdqOP z_9ZkK9F!q}375zXHN+)qF&E3oed;25bTueQ$9N&*RN+ea%!A}bynzu?bV1`~FB+DE z9Fk-KwiTSKTk%PvIQ742Qu%opghXUKJC;@mpglGsS*O%1MuN< z{@REKVk&mQO3S@E;jirT^fzjTx`kL=;Uy@)AW^}w{f<)j*ZPxFCSaVxBRynoQd^m= zAv8{1#ZP&p#F16lgT0g0SW-?T<{-2{f^T!yi1NEa&OWg5bB5@H*P|z_5~Ed1QMF;5 zMcnM5w3tazJUnYc+2F$Ri`R-wIPJ*+lYj-F(YiYsfxNlGivQ#Sd{}XDm)r=ZV~28N zE;eVw360@&V!c6jL};|eY)|Qd{H8b->bc^84vEAf3}r@vy0WwLXL#l$tJu#j$&r-W zFhx|}Ex>wL1YTjv$!~1VX32h;R}S2W&{`Z$scIv~MZTxgRzgH6v&n=qBbqt3eVTe; zlOa_&9)zdV$bhGq{K~&nki6AUn8J#B^reTz6fCvH@`&rj(7~V7aupput95Kn7vs;e zOzO}FjT=bU!dit;!Zu{Sy;><_|!r4#)7zw6bc(O-;u*!AInttZ_P(x=4AGcJ?@t^=4B>j01x^FTO zN|#gr=?Kz}1$IYM7pN632n_uhM}O|7JhtWlH&`W(Ihw?>m?k~giSX?<+ar;pU6DL&=6;Aw794ZD;BkdYoH7RbP_P5^%M#M}Uke~vY0zBI zpz{JFqkqhfrKiq_1BkcZiWKM>Yub{)Bnq#SFR=>3p6A6)Xid{3VDAsUm8w^hmX^8{ zv%TNP@2uEEx3f23YenVRk^1hF}Try2QGj--V5Sa%}D0= zS_@4UZC!^S$w-(<>sUG0l7??bpFKg0?>YlMJfEai0@OjWSLP{&*1$izPWl}fo=&N` z$ftvUQeMQD@jJFx&D*D$QIq2kGMXz5Ru+uc&1X48^#KDm`hWuEtZ}Ba-G=?@EUiQ) zUT>et!8Fiuu+?fYCV(Jo+>9|Uxhzuxo#(XP**81Sx&jc3SEPcjhRQZkMhZyhrqi%e zi4)3bWcE`nP^kj&0VT*MQ=9l3PWMCNhR;+b51_Kc55u%|wk9v+vN&1<6om!SbLYge zD5Pap;I2hx+hY!`UBc+!2uc<}Y$1v$8rT=9X$_$^NfHZCZZFBo1>S*z*A%7=$cX84 zr7&jN9>1mtv~K31Q&ojktU~2ktuXTFO52ffU@pv#AqpnzfpO;NY?Af)Y*_3uV(?gu z(g^JT*c8+iMhA#JW|VI&1LR@NTAXS1bijov&s|}%%9Yz;y{8Jd+DZ2dvx2Woob)B- zf%UAhujuN^%I|Fbi+qsHw8oEB^&;kt1I;MKDHzhm40(vwjjAPxb1eP0q%#_Tc5>_j zvh14;V|V^IpjFz-?s0YPk4+IHJ?2FMtA_v>>wNPVZCC4}qu`=1e6If1S}WQf)Ch@- zthKVe`LrRT4EW})RjY^fDv%?YJtU1KM3a?k=;5nO|N56-xvXdLf329u*4;&)4w{|- zS)~izq6KT7L?*TN|A(k|46o#Q!iMAI#5Oh?+t$V#TN~RpC)yYr+qSW>vm4vCv9X{0 z{x6;nXRbOuch_8VYNk(jb=6(7m3qn$MYX1EMf;^`tc23JffM;a6Ta*B1sC+>w-y?l zZGsOHc4m~F4;hK*#@cVtuG3!86APA*w&a=D-Mie|kF}OHVZmc(WRj@ih?mPB86ntI>_05aZ z9DQjfDkj41`l;cMJ4l8}U4n2-hOb*VD|u|x*BJM!Tw|LD5I#M!(OF$y5h*2cM3evU z$02T0Eg3y>>T5Mo=d4U$t=i&DLmJ0T`@&eMrMvG!;VWBE;nJ2~P0CJe>YPl{^imu?yTApuf?sV)gUYO6SvgRt|Ku?e5^dk@y&JCY~37V|?>30$DI7z`=GTHCxZj$dja1?A@<(=PoOJ_;F0u{}JMHtB?-Dii~C&qR- zybD6Jzse$vNbRzn(MV9U7b)E3%q$Xxr>o4Y(5n5jEQ_B+Ty~Q={ndBQla;NJ=3c|Q zK6Xe*-lR8oOd(Z%Qkb@}YK6EGcU~NPt(K(+6xZ;ybBRuRmmu4An!od({e%0+*FU+Xqq!@%`%t1ulmu_R_8k#;VPGrxiWMYO{YC;IJgt|doj)oG?$CXlr#$*`9>q3A{L8i z&xqy?R{p{xLOc#KTa!iSKaR+gG-9o&i#H2Giyg?E8(I!ihtx>tgCxcdW{Cm#F4&sW zRMy^@*i}&>6wv zJ=KvaMa*!M6blg_js7LY?HNWzD;7rh3!G_Vi#DsmlRfY2lI=i$aXzNu%UFJo=@IXm zDmI584w0$uZ}meK<)R_6cxg6ZWyc!*z|FnCl90H1){`)nYOXcE-B9kdSS>nhobJaW zdh$Ni?VrQ(ED5Jo+6PV}9)+!Ne1#cLRuT>BH~x{`)90And9w4XV7^v z&!~z=`OvJ3V8AJe;R9hR_*#NG(Ux<3s{9suk^lj!Y!Kr~a|q|hdnF?v<$ugO`Ku!5 zD3fk)aBZ|+niPq%*Q7%zRjW=`dUI_usu+GQzOpgzwpdNW7B?QYLDwIANH# z(7a5E9#IH~3e2O&B7$0nDkkw2Rkr7vE#*yvGD3Ueyg3Kii`<8TddOE_qf;>9ogz`v zDGG~tf$t~!uH!f#KK}0cSfjEF2kg;jxH24#6x3 z<&EvXc4Q`;h#L#?5|thetga(mo}N4{$JG05aHec2_G{b~6@jasNkbK`f(eV5PSxTD z6uXSBLYWRfz@vE}oWR4!K1u#tRSsQ$LcaFlxWI7;YyGh-7fy2mhJBhR2nv}PZ6oln zZHWa#6;B_Ba;XR$Nh8yG{FTai1 zo?BfdSLk0{r-XZ`!p`=7XhR2)Cy;s@eTLEPt}$2YBDUFrPzp1R>lMZr4aN@#c4X6} z>puKPnvo2I^E^XKM17 ztQjla^3=lTfIBAE)4vMxYOaoVo&;IW1S@BpkH44ey3T zk4cwTO+9-`+CTph!ezj}`)eHgG-dWyAPcH7GgJsw-!#>)7zc}_jhwo^2Uk|IisW&G z|8aArzHDAEy^(vBay_UF?A$LV%?b*7mRR03%Mu#TakT4dOcj<%6HkMf7%8f%MD}>X ze$O0gci8~OThKqpYvHS(v!5IGpuaW+%*NDHuSAe~UD2Pk6X(2}z53*Y8V<6)hw^wj z9z@PlCgkxa`4ZaDn}eT3Be4_u@rgWnVNxK9^|)U&Qcg7!4@D}%;_>@ve8;J1<~GW- zSCG6y)NF+_$qU7!{!rTh(w9*vH(7Q1ao5`7U2| z^WXPWu6_~Svbaeu_~WhTS50h_b01jW~jaLy7vHGkn;rLB{GC+1#P1UrgqP0xKU zrc7S1;3+*HGlF-uGZ`jxiI$1$*pyMj?YZ*frgmub{C?^$K54(&ilj}?8cTEWaBU`! z*3!CH`!{xPPCvD`rYTMvL$%-;Iya%QQ5*r6r>~Ijq`k)46S;XUf;vaa_(0`N#w!Ly z8Y?`F#6`UoZ#zb^b?Zu@;p1n-`=LJSNPqG9pUhhc&#|ys+^NTp&uMSk{<{_FO&P6w-U!lwl$-Wf*yxYan;f9< zVG`J-K6FY=NGYDZR36ku`S{5!EP;dm`(k5Ud9Z&WH-DGtJwul9L*C-OW>)IhZnNk? z;FYQGn&+v#LE&qOocZhwaYxB)24PJAC0Q22Q!V3{-J^fW3o#Q-=5`jg*Km{`q7zA} z-}!aqaU#%l6U!~yJ#DRx&8;IfEc$?ga3@`ldCKW8>T=0g9MRmun`en_Q5H4F`;tGa zBc)j)wxY>bs~nabeO)~V%54`US3S>$hTA8Kb6C6UM|$cq)=@qR*_#0~?ERiXm(qx0oQUt@ zhZZzLl_C>?uE`~m@U>l4j>UYBW=*E#bO%k_jmegd@C%ObyV4v|IGH{=@o{ctsx{8w zS_{6XlB7E*pF4F>M}P(_@38>L+fl^ZRwQ@dLhBNxgIVRzNhdOdtWVWm9!4gc9A<<@ z-`Tl9ij_U~At`S>l+(Wfo{~sB^5{e)xyyN!o$J0P9IlqV8poat-F%o)+3l$zb~oze z0(B%hdy&X+6yxfD$W@ypcMeWI*K};t$K0FgZgdu6?NMT4UF}H}ZteiNXCYJezjdlF z7QMG6wFUX2{QLR&y-0N{P_b!GKMLyY|Abce`oJ(dGnreJ=EjZPreThlgTrP-qX{{d zOCt*m5VbRWQ005En%C4&rXJ45fO_NXEGR<#NEI{2TB_8RGrW&Y8U<8YK(5meBy+@z z0y|vw!Mh@4R>XN`+Sx!XEWD4mhYNgJOmOJ=(Bkd>?b_QS=pgyQQ8 zNYOW~V9rB0@8D32_hXbkH%BtUGkcv8el3N=FdlK_$1$L>#n}LwreZtbeW`1I3&T;M z;fhwXQkP3S8lrvw_Zpo6vK09f=EY5iPO5V1_<G`TjCWv1)E@osup2ym7}h|`MhWB+{NEzKg(q}F%FHWj#>|D?~*q8h$J~Wq$Q(|5UT+JV-&?}1zook6-pVQKCl`%97Y+U z6222&Ckmudlk9s}dG98DOR}?D6xq)S@N-P$b0#P2D9I-{)O2~YyJq@tuWO5*qW2mz zG~I~sbYFqLm6MXzH@9CslA#JNa?<~~X?BL^{^tMc9XpBfo<$9gN~@kB<()(mG*(Di z%@@Mg$Dvk7?`e5YFAIsXGs;6tya8l`!jxiM+I6? z;=G&|E9btCOt2twbP#KPC&Eg$nii|wWZh0zr+5PpWZJZw9V|LIcYAURWn@&ccOPkK zcX4DHu87wuFP?;uQrpO$!bKu?#S z@fkD=qZB>R@;O@waiid@kX>DhN4BFgTDGq-shK3&tK1}&tM6K`Z@#;a>Y&SHQ%vtR zwsrxE2|dp$x2u$qdA~M~sogevtjV%VMw`sYqTj9wp%(r|>!L(P#U@@hH{)ZzbIhPb z###|#0&gXkME<>MlH@BYo*y}Hfoc&J13st=wC<;69a-3=I;*5+6e)T z(von7lP8)r`fcZ5qW{9-f1(tO_%5_g)?GMvcr9%G&?(8**tWXsAVDcT{Pa-@JnT5$ z$r|Q($@i-MO8sIO7GByr>me~e8K_@%DcGjp34pg$9GW{udR+`vmA~0?*mE2h3&Tv1 z&uz)C6+JUZd=nrDZOjqe^Hp1TF_{B$$xh$6=L{e@X}NKB(eGZ-@4vtME7HbDhNnV= zedI!6fbkyXw4?0dKu+x`6up)u3pM>KnE>FrkY1P_!G@nu3|C-21m{o;LN)=^h5&H( zM-;=nN&!!>$k)(XvE&rwEzx&Ti}?Ly@Wy8p!=LmyEdELFqM8h&)-VpqAE*GY>2GVW z)3*j#hZx`jjPuEt0ut`ocLO~5tt$fD=H|r;#^A}f3G(~%3)=mIu@e01Th~8uoxKM& zlr81%8W%8)XJ1pu)}c!RHviK%!A&r`e=oP-J}Z|Mggu9^T}qIT9h({){(P@pZQyI? z50;Rvizg(LG zLO<9bKYr6yxaz=PzPvaluRh~~krqREpxuDCAr!Tu>*++(>cp}%^FG712q4#f)j|4?m#OGwiZ+m%=>=DSy3`F_iw@`9L zB^Ja2a^_PFjcM5>c7Rtvb#Bd6)h)bloL&*+tsDzdE~_N%ASj<$u?S_0{}-(s4qHz- zJ4ObnswH-Fu2|A*D}GTqJHcX}Y|_CNxJ5ZTPHazsG}R7zVudnfb6Z%wpWfx|36lH|o9IDqm-IM7`AjAbjDv8rVq zoIxcmLoe}M*$nKUa+FFD$~JVAMv-YNp5Qc`0px&T8w3Ws2m5s4wtq;C}Wl;&q(2ZefI49?OMuYYa?i8yL#?^j#4`C zY2+NRz5FtMyngaJ22JCd$Y7*24v{)XUN}W-l+GH{8-Q;~=F% zH3&`&2$>ar=Pw`IP&F3->m(h7YnvTLD~Nj0q%u_Ep$x*TEMlZz4^Z3Llw2{!^C(CR zdjrFNL&dr+pl@xX%NA2pJ?}dS{`JN(60m=zFI%uzgRU;Argh~`$?=a*ls z+cO*Q5x}IW0H|4)LK^eZ4oW!2sLE%a&*;EAKtBr1S?#^x6bBs1#qh~u`X$oZHom^K z&TPi|eF*b{xWytrFFN?{$M5A2QKY$lIn3dVtVq^d#;0r0)J^g*Li+jDyUkAygq`wT zgX00LitMb!`97|$b#60uvWU8oV7^OP|1UTYfvO|=mK*F4R*BR#FCu=Rt7 zB%)lVk)2N?ol8wazWeFyDNGm8c&!QXiNm_l;c4m1C=?%!#y+W#>yC+2(0KLcr)7(Y0ixr+9E`gfJi@byVJTuM@ysy(mK(y z`;Wxa*xS|$loBL#@ond~AUFE|;;-{KUK>7c<825R@Nsxy6)JrgTKdA@8$>@JXYRDo zoR-B|cc%I!*TF7Iy?_~Hlcnvy9Dlg+Inn;q3$N_X@#{oLdO2=sXH)(cDlCxmWu3g{ z8%2vDW{WX@O+YN)R8N-Hf}LJ6AQ3BSNzq|$8UG#3l9g#{EAGg4{EJ(9q~=eu10dNb zyDmu2lH$?E!&7vD5X&->w%N4D2alrM_BYuApk`DRSXNh!_R?ZKaG$FeV(fj~`Qu>h z`L0tZ-sqAzQ87XisoE<&kwOrMHzyQdkmQbVAl$|X&0ZJ-c6wx8E0tjq`0=KbI7c!> zZoV$krh_&=5P?V|&8n6j#+JGO(~J(j+ADS2nt^o!RLMOi1|U@AVmUGemC zc-`CcOz*zv@ll|3!tbL;5ynoGNRlObH+2GAej6(NHx zeGTmIK(ygP6(6z%dyhab?kQZqcKXZ+MEtmUn3?bx>6jdFeYd3m~NFmV6Vs@pa*LW?8MZ4&$3AHWgYrOQ*U72TMj;Fqw!4Y9vA$eIVJp z&CSvz$Aoo3OEue1^iG}n>_)798u`YK8uZLJRh!uYvRnl2SaF~Fh)Oagu^>6 z?i7)+RAo@H=xuNihp&!0gvTflCe+cp8S8w1?Fnh~__8mwmT07cZC>J$;WKmQ*KGB> zg?!NW-y14m60|f-B6nT%uPM1k_IlW)Y$ajGS~ZV%aPco7A{Ak;$%H`jt{NfKo+AYK zUnZIuh!%QG>U9A)wAM6AqbTQxk_&u$1Xm^8`&(c2Q3@YHfKVVK?&0+;*&#_44oaW{Np^3;YrV_}V;auYC)F%QYL9{u zzR*wTS9SpZNvm@2aO&^mu8tqL_9MmFR?U{OAD+hbq5}p%)N*y&n$#Wr@+j$%4n&zh z$?*>h^-eySr=i~P$YM1gsr9|8ODu0V>698t@jPy}9z#Uy!`!?_F$+Mc+h~1Re2Z7+ zYI?t4{%7hI0X(yJH(AB_D3QPH`@P>i^E9Zut^&e5JW7=6uQC>|bRLhksyFs5AwX!| zD>CIxd+G?#!~TwOaFxT7^AV4Q!{ne;HN;-0dmF%vXFQ1f8M^kXI`FCkR(Dr>?o!*p zk@VbM>C$a{h}#l_a)Z<{hufbQ%l3DiVl(KCkN*`V@ur(4;v)#(kHpo7dlV*W^p|bs zBk+9)22RnFBQlZ|N}If5jeP6I`zh+6!<*#$pHli~aF#PE37x z_|u7HSeH6d7e4XHyyS6HR8nE$hmMw+qiKw+YC|h|(74fJhDLkywotV#E=1gW)=vdj zm>d~42ld|$Lr)L?URZ}1@xB#BphE47!2u)B(|l7$x<|LLbJHXZ-(pAoyXYak0uWYq zH|c_{j~kS{ty)LRKPeSk`-nCV;>%}*_$WqTjuu%Bh~wL~QTaU}c(cdybxcE?l6Iu8 zSy1_R%IO<}ttu*t#FqV(uDLgX@2a*}XBbVfH%r5+tqG2iVLg#m)My$No;7GB8bE`` zv9wEs_2AtOOyv+fyCDcWA|vycCO;ynAdMY%j#`oSz~KOc-SL9#F+$o54qH(>TaiH8 z%-aq&3)q(FW9^h&M@s7?<-_kj-)gs@uxUcDcV_@6d4gE@acBe~;PsH0! zu19{Q4nGZY1XD`V?9Uy`>oZmoT|-c;hh3Tizrtb!&gjVRP<>RUJRO}_`RgQB6ooCC zor+N(p9~MJ4u~9&q|NyASJv(?T>(x?6kRlWp$a;Y^4AQqs9f9@;r5Z2VVAuR|2OL( zffi34lkzhMAq5S`ohU`I4-@Y{4lRuTk}0uLa_-rofkoes_u#^5mM<(K!(br>#sn}^ zJKV{=eFms0QQXknOLCcp9C|P{W`8fFzZ^PnhCB0cI>s+t#1-56M z$=E&R42}EOs`=y*N6oNKu`qIZ_Fn4`sExuU^~G3Wy#>lyp=& zGkQ~JrMppOvKt;R1%DEV9H*X|W;L2q88;k;0L!J3E-rPXFYy-w@;;Q=F38z;nYU*g zXYqr)h;C9X&J*DZrYfdXDMv@9RNj+q8)7GCeya@_`|B^Rh_!U;!zu~p@pfwyZ8Y}e z9G;Z>JbDY=HwK|ayvcRQ)=$BbQkUZOdb zn8RRw=Y$wixAA)AlXI7I6WTaDsbbcBz`a#!*zEnRWKDNACWT0bg7$#9(iow=Z;aJR zvNI|HDeYLDXmv@AF21b6*ltJF?eHwueO}g)JUrb%O5m7l%8Gf;v$G|4fq&NJV-ejDl zW~tflj`nO$hf+hK$H}Q&PJ_Q8g&WTxXKZ>W*595#vZA^mSD&||a@@E(Xl}%pRVZMb zBg@Q%5!Zg~7jpTEdM&`zca*s{x_x`hV9TFZ}>kT>R6-s5zHc*99r$+03jnVS@~ zMR`X!Xfv#RQ8j&Pi*ib@rNSJnF=FYOG3#v(O==!BkisgXVe-P~55zj-Z&x>Z>66Y0 zVGGV6zsOAKU-HPMw)&3YCMKY#cVmQ6CbfDey*yz)ob4n&Klh7bZG&1KaMhY;mRmxP z7>=}tTk`Ono_B~rt+<04s-UY4d7(|kvF1;cCf8v?OxR3+(LFd?i(|P@U4;S6gRqAp5-@=bg}>?H7xh)~&WMNikot8i9#?rgbsy?jX9$HJJ=$`n>#-=pnvig01$Vy`g?kenrm#{t% zGO6jpayhY#u?@{P3EmDW#Hg-HAo4_nz_HULj)=H|zP8`G$nsXm2*rI%#Y3#W#MK8T zhay$!omcdznT_v!OOmuN+WJu-Gx9ev+e(U1P)+o^$As#Zw@c%el9iW*+^y@4`N8C? zezumkPXEKgbrmTt(!&l|8IiZ{=GYw;B{&Cx6(2+H}#&tG(E2 zEn-R3r-Dw#y}EVp)b|ED^K{f^{Wu4t=1EnnzzIxbU4K~|PASfe;v>KaYC?95xYr_& zla+x&r#OHEuZe)NzX|fs)U(QgEXfh8e|OzhOl?0>#+Oy>LTa^mIcVP-4O6EyV)&eg zhV87w{dkl|(@N`UjAc|=iul6^&P0&HPsZ7IBvgk}E3hmb_@zklBQ}14l!(Me0=@?> zG?Bz}({6}jDfeL|&R27R3(dKf#*o?bsK!}8BS`_ZZDykAl6{un=W3`kt`A(2bj|Ya z#jrHyGfHsc9(R@6YaajtAJ%F5bls8&OLOmV zvVGe9lXHIFZrtSwXG9?#ynOk=H2X>*uK5hz0U0*!V>A5g(qO3~mV*-|kUIx!cA=zc zjxL}!Mewh*oagH&vfbp{sh4UWDIOtKth7fcdSP&A<)hEJj^%3@m$5r_G})yRsD+Mn z(UXcY3FIn3YZ!|d6D&z#Q?AjSum6)sr46K2P?nxhE|K8Sg5K3OO&&!Xt@v`6^22PD zK(4QidT*ALsjJamymd7FGF{b9S7IOu3@F0v*eLANXDM5gAX}+o@6q|$9@k5*rVVN% z{i}{IEL~%YdK%G$7#5*Sw=MO@;>mo14w3ksSjrUDGeAAC>J3H;qO6*I)c^aDQ)fBm z)BPd*LxQgOc1@J(H#JiokdAJD(w21>jWT$=hCTFgc7Mrpam~aB_{D452bKB3FJRcV zWdhLP{m?y5a%_w^icb46D7@!WMQGt`O&40QXNN^f!C!ioLL0p^324wplkK{nF4n+w zU1f@DESqwE=vw;1R)!TB1Qx{ARHB3&*fWbVlbu5tDm~e;27hM$s4qc@te!Qq#Q_48 zhKO(oqnxFr^fmjiaHH1e>Y_{DK#>l(;k;O3a^!YQ7amMNt~yO~bdN@}*SC<4Ghs9f&+G7X*?%FRX-bQ$a5;sCLO|_F)`faOYpZ(A+rbR|B5W zmW)e(jDd`iV$qC{mQ-jLUHTS&dqRjP6#rNUaZwXM^!3$OMbVPD5s`cYGPvif2~X{rCAQ<0SWe&Zm`g>O3e>s*S1<^Q1o5U72H4-c)3&d zNvK6rxv1G}Vy3Ov@5mn^p52Qvmt$qsKL1Hfaiz*qvR@f*rAn9}<+D}b)uQTLzfsnj z5DTd_;tZG=w7Gs+3MexH;=?IE>;+5cT7t{#vHd!e6cU#|teRa@r&zMnrH8ZD88b$- ztu&*B-N=GXlQ8HqCP&IM2x3bnxL>j=1q{v44f{CMGzhcn6D|a*6OeW0S#7CG2>aSR ztemEDX12}}VPxQfF0;>5@z(6yiF>!~iD6|vKg;l$Un zPkAqLOLJCviGrlyDraX5sPPiHf{KEBZmU1^7LDn(Wl99O)2_j`=z$tCTaJ(`Q&4>< zy}<$UM_*py{3(6FVcHkCi{9$ zzP<3^whB)95d$!l-(H|`mryOb;UEbh&r=MxhQ7T(ARF=5T_JY(HI29;49n1uQP%Vm) z{8^s44X%CxD_83jLDRyPI(L;d1L3G{EE(dNzM%e=SVKYshwcO!DhBdi-d3OWo?J|_++=lacD4QWZc3YWruH_XZ40}9cN9!WHw6c zgg$E?>w=JAXz2E586~9N$~8@gCiKMXfq10`Lm35I3pMM2J@;V3-u6A}eKFkes~muJ zU~tk5MFDnTeBiit`&+S444_DQsRbi~9&ux~cUuv1{G(yxdZ<{!Lx1)5r}lcT#VTxr z^9RCSTk;1^ZYlX->qC?_4Ip(zkwAK=j+kQC(cA5yjc!8o8>Ov|ktH`U@Ea|!jF2Ul z;Kyo)G+&49oAJeJs=Hl2nWx!#2BuNV>6(X)9B z{Hq9+q;E+6M5{8zYI5FvVw8kpHDQoGTVld%z#chea{`#)V2E)L`AKm-l$oy*4Yn+M zd)NX4%%LGCK`_}kh#g;WJ(QTQ;tjR}4Yo{sd*}iKG@v0pd%x*1E21KHP~x^y;{vVZ zxE{L9S1_``-77a7)s-izHlGWX>=2Y~rQpz#pmn7q+xs^c`eV%n_YKpPsC@(p^;q} zq3rs99vLJ#P5)Y#W6dl1?XGtpGy%`Gli|yTf2|Ctv5(hp>cs7D+~)f%C&MK5|8Q@1 zVJrEOpRXmW_+uWghnco}5i(_(i?!cmpV1Y6Xf%En)jWR$y_%FsaQGsRdR**xg*9U= zP-N=6gANz<`<{?e95!ssLb2T}OktymR+jRzhEI%xNj$Km3`$_?csug z+(bou4Kdi_0zMl*b=dayTz=}nf%LO{6v(dczAQOI6EY3;7^&9o?zQ369#dCgTOD(2 z=s#n3bH+uVM0x3s&Uc*=Ybj!45hUvFno&`v660xMXJ+E|Me2 z>R_5xKPsdZs_CCa5|f0ePT-1%OXvRtUXMnRUYr6_Mq%DqyW2sFFqx^Z#J2bU35r~? z&HvN$XKR}Af880jrv?8f++82l{;zwWC+7f#MRH2JrwcxC2o3r9I_O~{c97$?em?kG z%vYcHtoGl-{tE{Y6AH2h1j7gq!w7=W`+PG<|DB;seNL_&XeN)Q_W8YKc_zDR>QR9P z`pK?vpqzUzR4emz(vC=&ZA7ues`b#3;hSu`-1t?<<*1W=!ZY>3B`W@ zYyJe}Tr+((L;yEh@9wXmlmCF7ZlC1t=#P7?cjWhy0oH)h0alLbK=jc$Sp;c%6@;c_ zP0Hw%Pl?YpQL|Y7-%S+uO#bIt@parUA#67J??PWi2_Zk)T6Uo>=y{+9zGb#zpK|zA z$Dd=Rn4&OropGdOv))aizc-{T>85K6e0u{!^8eF;AcyxOJEn2&>Fn?W=Kmu_XhGDna6|9U)E_IWkr zlco;O75Jkf9FOHZ@z<{b6xNMwH?!V1e(%rkkUelH?V4m~N!9XNbeFP8AzER|T$EKE z4n#98wmg{;E&O~jgcQ#Boek=*vr$zHtsO^S0aBZ+n?#jSUU`&AXBslYMazQ|8Efg7 zAb@Bf=^;I|{9}B1;pxfA14JEjKmB$>n9gbo~98Kez6i zIyUmMJqn+lPK>rKveOn!(;bOE&zp7Emm6D8S&O2In-X%1X4>zxL=t=tdK~2>>?*Vst58kQ z{MNGa)r8g6tg=HZK7EQmi1SceyVbj?g$!wHqoXBA7tFUY?QBcfeAoT|XVoh(EZ$E1 zOm@^v0WWsu{C|8)|JQgIwC*rKhnA-gfkxKHyUAZNZDScF+hIv$Do1o}`TRn;^g^py z>KKfQ>$o4)qB=cM`*r-$?7I_D@u?g8w28!-gSHl}Z4}K4Ke%*&PZ+By}U^};;q2JWN&es06C=01e zmV;)P859rEIex3W>~ZkUD23LHJ8A@eh8NEx2nX*QkM4-rZaHmKvrM`kJhC_iod2QX zPywNE-$G)1H2lBZ^6x=PwyLv(Hu4e3<@vwn^V^pd77dlg;R>X5rv|ab7t|;c(9}dM zo5lZ_zy!~cMk_8~^e_zphG>RCWTA=iM1Q~22&Z83tQfr*{L>vMfJh2%vw5xkVj3I} zWdVDPM})=!LBUN=Sy^upd16RIfen{4cFB^@!EdD`Svo-(nxtdK%u`8Nr(%lv!c9*> zpFUkAH}zRJR4;QCjfFGCLa9+gA*pT70xyVBH=;|OU@ zJ4gi@C)$$o{7T6Za3ex|kTug$h8sl|wwln_;LmbRGi+8g3r0kd8F#_D(dRKxY|^~x z%Bn0Yq*m#_u-*4VLc};01ToB{bd&a6D$7#JF!t-vGT<`*W=-wMx>x6h@Gx%I;c3H} zE(_%69;!MjNPM@h22?|qEa#A|6qiSg37Roz8(_t@6@3Gy@1AK++ol_WtaJSuF6 z)$*c}Sq{b&VcSl~8dpmJbfCMN@FW~xwT`!MuLku(%L}f#-BlF@P2EKm4JGXr0?V88 z%iZnm92;>R{(O=v5?qGI9lyo4#EfasvAKBTtWS`F9MotaT0VjTzq+4P=*nXG~PK}4B0#RC2`CUFM z&RMj;8L(*&_QBQbNSF_HM`J}mL7-Y~q^?gMjVO0MX&^pW=fCJ%hw3hjEH^0hPzyl7 zIPjzQ_r4}ZzTCeSOwQc?{RPTSbBcGcfH&w3EEZ))Fi-`e8 z%77UTpz52^;DaNvf4SV*ZqV>Ny)ELly=5bBAE;@OJAuSj2(hra4yDzBblVHT_s)# zY9c&xWQ<_1ctkt}M@q89EOeOxE^QAy`DbrpCT47KLkEZFFuXfH{;tueAEQwx z{3O9>272&YFZ_NzMrBUw^i6bSqB~y-?iKj`!bs4P%@S{Y$Pn9~z26=|hU4r>&o=V2 zr>5dHB&etRI+P80eqY*-cWhUi?Uy?|y=mT|h4!!5h=qo`v1MtWd=?OQb#oE`)jE|p zKIb$8r!fjVT_l zDD8>dQr4z&x?sas-Tdz(BR)yMSDawI(b_L1gS}uPP}yPp!EKGD?uP=ljmKuGQg~7% z99|P*G!T3He}{8ZipAFjP$9o#4BMr4Gb2;*Cn@`HEhhQcjCH|{htUlFpxrIY3=AHL ziockks)~N3zpG+ljbh~=vbi!3A|X@lRiPlmG{a-#wkYYFHsS)TB%TNW)VZUu_&DW) z>0{;wAyv$~fd}+HXK2#II@U>eo0?yL!-H2$6go;cgzE0x@0#6OhEeW^wY|_gtHi;= z6q7GfXRsP{PmRp& zl3{zz@tLg4g=wx|-weQSq0PTcqCko9H`~Kp0q7_xX-W`g%SAPePPnqUOgH(c_HYO6 zzosqC+lBp5C}ojaDOSs1nQYdK3#42CITJ!j`?+wT+(v?!^uAy%f8BF&A zZD5-!l0&UhXq}Cj!iqJ87I8*8Q&5 zRofD^ue{$^as7x@5xv@p=Z7M##@;5#EgD-d@?~wq0UH<~PfY)9JEmoQ+|dA)SI*2Q zDOt>>nu>DGL6aQZ>q(Wh7z{!n0!B_&-8;R~gW*g5W;+ZRzI+^xSf=XoX5RQ%w*NgX zt+EpvZ_X?#FC53Gu!dH%Npf{%XOvmyPZNlzx9s2fl9x_IoOGMU#>t0w{yE&uR({u{ zv}~BKM*$+Ca*|1u1xDcVWcg|FevW18h^CiLqStCN<3zG6<-AR36@+_b#Ak7?`3YmQ zC7Y#}wp$&Lq$|bu^3eS)o27%<<0iuJFbhwc-2d!n4}NiVYgNXnA1Qlv{It2!Sla#$ z8-9H3)vD>t2XYO2u4T0tjFZqzLaT=i5((n#1ww3tIoK30>bYzv=sCd=s7^y=Rm`+~!zh>IF&{rdN0$2m+j3Zwn`d>s|ca2z)Hr`1N56F zcK*wftkos>*vHjSpdh|6^}~$||=t48biy za(IkkqsOGN*Rk`&BM|J|i~dX=^oXgD!%3>Cn^B!6Od>Es?H59YB?SL`#B%Q%Uvlcm zt0@x8Hb>=wZ(dq~xh&8k7t?E$Zi1P;cMSK*aWOa6UTiH0E#n}lDXWk)b9iJK0|-ve zvfV=Wjo{Hs304xK7o1C2xP`Sbv#*!I*5B9IFKMNH_tb9!{WFl5!(YMLSF{`0UjB;| zN7GW<&p-O)m~oI@|0plbOGo4*k}TdtL1uw3WA@>4Z5bw}ZfuwCccUWoM0vBpEhUSvu~;ef(bP z2jMN>Gg*4Z1DzYj3DJsa3T79KV+lo?2Z1;DO#;$R1jBAfeJya*k`G%R9#?0CeTCj2g2c~MfFg(tj+{lfL#R8n z{otR%2&;&gPY1SQSX~2ULFF&5hdPL)C)Pf;iM@hkv>*y04l^kp=U5rRo+AvADiR7? zf@sd{Dud+Tj@tKvh*ka%E*U|TjOGu&CJg;ToDfozxtyhPQU}PoNc~{0*jzMhxzErGmM{ztr$HD9ywK25Gl6T+TH}crakA$^N?Im2I1G42m{ zvcl)?6HgE#hR;9{8#iL+P)3PE1?=P(UkE}-zUY?hMhIghX)yi>RKZC2Ofin^A$0zj zCJ%^=EB5Mv!|A{TPQdly$H_%eg(57gjxL0KDfLVrsqIKN3Ne3xqsqIrIl%*RhGV47 zkS{i=&)>n;^EvQ*`B4L#l2Pftx2r8!?0)-xNGAXDILAc!orxG%mDW(^kUwoS9XVHs zg6!chIlXlgcas77Tt8t!REjGde()sMTLYs^nXK7tX$ExLu)r1J>mx1pwr6F}Vjccw z4~!3nwgd9&m96L&T!&@=d|P^3wCs{yc$WYZ@9R=>Igf!KpuU#R17 z`_SRiv+}^nJci3-nc0YC*)p7hmm@O4@M{xu9s~8n9LWe(0=s@ zE%G?K*%O4k1^i%pg0J7Zi=7yWPdP9H!TBODb^Tu2bL=Z#J?=IfsZ>s|VH&48~5apiA{U9yi#Gqc7>p4bsX9twclPk)kc z9Q>`UWhR)9&St7fl&~I(B1qe!bORke4QcRMB@HZW_(KtB} z#?oJ}`Q1Pf^90nt9#&y^n9%h5!1?SU3L?nv%*oay!Qer!?6j+#s5wj#~p8fRW zAXMj9smnvW(5F326Qqs}MMzx+pm-lemx@ih;PJ(J(K3MoN=ZuObWPZxu_cG<^6bzt z;@VgofG&(Hug-+j^tg&lQ^9lpoN6(w^TuV{I*NWHuLLzty6xZTqFbhB2*}{9ALt&ejRp#h2Dxfl zOa@D5Oq(8bdQ*7pbi)a|qB1RttZLz3Ubcjy0QRtA9tC;~q6&6Dc!Hrr2hqMd~rp$fia;|7#p-7ey>s6#!$zKk)B*X zP7K>$BR>=D8>Z#dMLwu`rAJFlid!?)DQfIlBt{V(cSBO2J(izg`0E&3kx^v)?dj`w zK!urL1uk)4EFoWO8=J?(Q+~etS26c?9aX#nK~&Q!eCw1luV&dx_e81YN?yt0n%{qJ z!9;HV4_9XuRY%aZX&|@;cXxM}-~9`x@d=AW|i$>&+V8XK~YkU^_t8vla9%Q4l@GZ*d6}*6cROFvc{ePLJ+UB9+D$ z{>9+^uP}0dY@2*8JYY%TJ&qlrjl&D~)s=SmaP3cCn_ddu)z|CTP#2nngRyyzd7}3# ztJj;rCF1>Ke&T(tO~VaeB5L#Wr|XEi^by0LzN)W(t5l*ka?rc_Xp$IM2780^Ux6<_}f=(-H)3c@g(OI_5tgtGdQ zj$D3W8bqr>_%?w3h~U0iycm^@A3lE&Qax+KJy#|L1GWnCuHxBnVeLr};&!NvLdWB-Pb%|5`*hPWh=v>>_oUkiv$AorAwumSxm(sVNJ;Fv6BwSjgxiQmDE^fVgYhp3l zj@b>HKT?YyCZRKV9>yn~p7U~>;Re6vSVYJl%HLu?Gg!Z~{#V=mQUqZ=iU|P$X$ux( z(jo>2bd&sl;x2v@B|JBbHc-dMmuNxbJ=&nI4Ip1@JEZf(Jo4LMeA#J+%3v_694 zg+=!ju}hG%Ep2YR^5@h>3@~Fg(`ADHLGZx$V6{w3soaqjf#9e^nu`C7_EHnKk}#>s59A)z&h({R3|Yy4AQ~^CSn=A z5>P+Fu3&`}_<*x|8DwmV0Ck-#Q7v&#=omy#rby0T=`!8~xTKwYj~w_3F?uW64h+&Q-Z0 z@Y4#U4?=O=^z91QZgC8DU5tOmQGyUhO9z_l`1qYeBHEMcM)ue`W7Xu98ImM506$9u z7(sC9{J4~k>5mTaO4+QxF66*_GDMo8zShuWWbqadwgX)eI>MO@c%{^M@Ma{{0LHK}2JFaD zjQq|W<^M)ZsAu%~bw?4b;gPAwT^A6}`i6G@`O+$ALk%03Z^CYQ=FbRQ(P*Za7rK(T zh${u^Sh?q`h7JiC+cxvi&DpBoiHl7kPN8gRe=U17fi%Pz0B?`L7Zd1IKu)8Ae%1up zmjf|^z|KSJ9AJf?2*rfv5)v@%SviL211pzF(19~`nXW!ze$Rlf4ue`qk7;b3IEFIK z&2`8ra~e_x#BwJtk-S!^38Av^R5MGfk^)&|qg+A*s9b~Mu~&CO^BbbBu8->{W?|#% z7{ZNbKNrO=k4@_(9EcB3i{7I^FARtUs=%SW202!=txRKI&dz>Wzp$9KdpSN4y>F=A z{zFV6{XZFTdYiUZV0>jh>2?>TT>8bqi%>MVBSs4&;XTu>$t-0ITkl)m!Xl+GzG&p* zEEQotG0d3Nb3b)yO1t$E<22UNlCY0eN{3wse$Wb zpT4xr8Ik^Ek)*pnT_-a|8C4s;SkkTslj2+&tdshKE

iGntGeTF(l@S`(A?RJuIm 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 z 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 z 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 t=AwhLpZ2~RkdgLs- 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 G6tHaLdNcfmw zGX3Mw*I(wOo^`dg1-as9^vVMB%OQXiFb6A-DJW!q1(_yUwJXs0- zdQSRebV)FUapzfU!b38mHtVI3!D~#&IxD?@o}f<&^~15>Z*-}(KX%+yx9=ORS;Nri zE>NNOEd2+#IQsVYHaUCU3We3m74;21zK#IN^h5~$(X2*K`a~*zDXtMqpVDRAU*pS=G01!;T zSA@feW2V}bcl$AuuWw->w<%9iL**tbdrOh(S1fkZK@+6+}h?PHk2bw-dBXK{Y*CXqGPMH`->qLLrSxb$iH#ns`@-l7_s z6Mk=GlUA5zs+xa|Gq1Yb57yn!6}{dcZ~b*^<#1L8+*V6R=mRcXP&3DNwpVL1d=R zm4V1YcrZjfW`N7>gr11~Zvb36OL3gj(RUqXHR0re@ZHP`Jf%vLQJ_rWW=!SfM~ZCu zrRxiO<&}Lv!WaQ4akcOK548(gR3Tr^09PVf;^UbN{8Af$FJls`B{m~&7tfSkwTf`F zl~$_z*D2k*N-I|Mu7~#8vwF)p-6lB`49oeGCc!*aB72VfF4rU)Mv8Nl?3(G%(HQ08 zxR7bch5bXM4KA!oO!g^Yf; z@ZSQQSvmQd6Vi*7!fWNiYewIhn@(RCsmV`1c`M3g;0JfDSw#9!wJyK~`jJ(>4YW^E zw`BC&^XClXNstAEv#HCHA@oT>kQ+!KVg}xf$&xSd<_*)y3OAzl(Lw}?!Baw@*s+SQ zo+3#$wc!HsmL|J;{-{9o{f6X=hYxPR6DMG|aDgBwWs75kXuS6`7=+qRTn(6)Wk+bE z93+odfy|Lu9&4YUXkVWI$2IeIcy(vAYwSjR3i(F4n8*@XC zdOuIB&URYWO9uIZ;OTU`TF(ZN6DwxQKbrm&8V*h z$2YqFBJjX3b>P@W(azSwGb&-l0Sbb&gadlX!h>9Fu^=5G?Dgd!WI9jCxD85nxuZ4p z@2L3uOgQ$kGEMgUKO}+TFIG#T@~oAWQ)hZ_gm1WphKCk-&=$!3HYZ^!{HZJcz^%D~%9Jl^$bT{gm5}9M;gkWCx1G?9SmO znkBo~_^W)8rq|z29TR#8M`Niww3Kk0)*tXFJ6u$ z2hu(D)H{VvCu3E87bw~yK5SsWZ4UXZ-^w6`2e_=W8F+V_L-Z|aVkx#XPNp=n&Ffj2 zE|wrQu74%a*n!P^45fFUl7>?zHkW7wbL( zP1eX*wqt2gTNl{Z-FCJ!<-LRZn*EoC>-zofbofD}H$Z30djDhWP1q>PHvGyYi2T-v zxEB3jGs7JI%@gGS-ckQu21B5kc+B^qU7-uXQD6BA9`g>nf)>cRqsD#VH?$J>5!3CD z`|sy;k-#x&?P02(At#Ck# ze0w$aQ%-ks7G=os<=B z`MhJEP8`{Xn(@Fw1adSQG;yNp=nytovT)mh88uJgFuq;QrH1ID%D>MXyGP~ixd2Ld z^c)%ZJm^OxaxN%5*)Eup$VGIe&$UI&+&>d1HJp8jU(~z4dJ;WCib2;v909O;5W-zC zCio(}a)v~5#91c`Ne|gjO*+*vwOv0aSIVQBQG=WggN1i#MBT!9;A@^xwVrC*a z9XRs3&rEdgSp|jEan^UFybDLYx1hXv$pLMAig^vfE}9s+&(uwSYesQqc$K@z*0d8< zua)#I1b~<9OirhRs%+nti5&N*O&LxsBJannTJuLEm#0L>!;aR73((`Jcwlf8%3n%0 zIPSQduq-(5$D#Ef!|?n<=>l`I`BSc0P$}$R=aU{CI;?j!b7S~&ZCys00I7M5J{05x zst~F$`OqKWB;J3O*<&;A)^p&xQWq$MP!wEON))FC1-D2bf|8uEky?;p0G*Z>A3g4b>XsCF zzy=gT8%3pAJh-g^A2h>(4!*B`@V}A?S34Kz@0blD5C&duj%OCDP6<;L)#pY0$OH%=Jxw!LF&` zqD4zPVE+>hSFS$0-&=^|iEbjd}cH=1($${X(9)rS+_h{;Mv?$a=I7Oe-jjNL3hG$ZN`~Ts5vAjrdAk zTS0)mPxvAl#E%x_47GFezW(yLq`~%E#LV|`LKVT&iU%mcZ(NAjra%7LW80CRzH#4{ z2n0XXlT`8Cg0xTu+v-;O&kK4;9W72iT7VZs^fz%uM#*pDDEaS?iF3NGb9vQy7CU8K zWmmcJW(c)tGeH|t3j7VHO|KQXyk1ioeoZ0Yb>y|WTz1CN3A0L#JeCwqv)De0nv0DtFMt6ec7M8_d?xm*aRFMQ zp7y8PWn9GHcjOO0cr<~*G-r0k5$#$BpZclLV&N(8)1xj?lD7!}(Zbbos!-h&;!wY_ z@+b#Kwq)O+s9b|FsY1q(*_5*oYM_hGoSZIMBvl-5>7#?zoNFAfx}uiDuws^-$kkM8 z9vRC;`B=cIe5FaDI6vk?RgGT+uE3@%H+Jo;>`v0kZWWFSOJlaz*4B}>Lj%9&l8yxS zl?YSkc2Y5r{L29#S~Cc%U@La!(CpSD{2k-y#BlnUF4*bF14|69U2)ZjY!9Nexqz1G zHoN2d);gr{#Bg$U6YmaQPYfmz)BEIF2b^`sC)A;OYI9=F0F1XyD;z$l6e2-*Z|HM& zxbc4A|1x+=5h`pc;0IRqzYpwxGkBo@q87%lfQQeZo+}G@Ae1ev7Bc#BzDf2h6$%rF zzMyBS^gPce<7i7l%CJ-c5Q!FCr}XMz2cuY*@$8A>OG`25^t4s!++p{9{TuG{;vsmp zB6D1FV+xLB*~A~I_wO6--CJible+Hj&ljR^_&vx$8*%XMSRS-!Qt{ItIgT9FJ>%SG zJEQJ39pTH3KvRNqZi%JG0XNj$Bem)59(pSHn|96ljLa5h%36NQ;r+psg6f-Vy_gl> zY73j}Pg@LnzDCpMzADy8>D}E9m(?%3SHmq}K95)CbeVqXSjz_N+A7!eI!$NFL_-s| zlYQi|+nNQeQU0ANO@<1|$0eZCo2GkTx01J!)l0x_3I$UdKwgg~#Wv zxEE$JTCSFz@uSBrLDPA+((x6YVc%e(^$?#a$HcKen!cPwN1LW zJl9Pm1c?KGgF`!^DaG(=9qpVEAwH&!b#1*~zIigR_=^vAExnI$NSsd?8n#1erw zLf9TAaAh^o8cPu^^1g$i!>oPPp+pdo2EjY4Mc5fT(^RW-bQ|^Ios1q91aE$luFp2^ zsMO+6`GHVU7n#Trq+>Qsp9 z5ZSt@XEZ1e+kj@>=2XL@Lp;6B4~Nbt)ul-acti~tTfi{ysM==Oaq2H=*JRSds6sVs zW(Q(*O7R)5X=Dqo?ux|tp%3$7`oQ7$(Wg33WG9X(e*g04)rTh-CDS45NAgH>v3PK8 zYLQrS|NYt)$Dg5UR2{GIX6wHM-aqy;V{qQ=&EckQclBFKxBZ}a*#NSzjshqJdHn9z zz_VWI+k@8ikY?_Ftd6N(98vVn7o^h3SWNrG%a*Hc-;X?Jnsn@SnsK5I&aT#ojzYy7 zN#KWipRoo4D-!=Yrc6+}i+v|%iq>T?o5q;x$Cqka>#EFg=9L^5?&RNdA@LpQtUL_3?^yc}$VwQ&GG*Y_tIZF)s6jIO%ea2O!`-+Lv zSI~mPFOCZ9%k>p=(+L#d8D;$^4|3GWPatCCShh+S#S$RpT^R5gSB~yyWSG;$ysD2( zk!^=irC_u`TiDza>n16wfNoyR5fDUL_3^!n+<|SUIjZi+@f3}mJgHT#QKcJmgErsC zTR&Wb>FV1BbHHMk+G#CYNn`dpE)5=CPPI#|s4= zbg5PO3iVqV53zNQvU82U8Po6eM6AySDHN0EFYEi?KfCCy3pHzzIDeunoq@`JzZ|h( z4zuE{oUqF} zkxTD6Gb*ZbN7KHSJmr|yV7J<5N}x2=CCOKrR1vJ#gm%v&Uk|=RS=$|mIfZ-lOQmFf zNr@sEv2M!{h;%g-7-jymA6o@)#t|JxeNfE$*ODJb1Nn^3Vqe0vQ-#h?*aH zA@d`KbasBYtmPoDncC8JZ}$As!VbR5QnL=(a(YYL!+DJW+@fD_)4+%a$R9_rF2ozH zAtdA5Tux>X4YH;vMXeD_u3)8h*jQ_vGxTHrF1pGUBw4k*R5-OA`q%Uy5}-!O_l;SM zOqmjDw?sJwi%MCAKlsB@5IE=$F1P{fG9u@NN!d59q%W-sBIiGoUSM2ngGfVM&~=l4 zkOW1w4op=Fs=i0pVgTPmT|MDgeVZ%J^T92be^EXO`O9zg>Q239wTFGPHdga?nQZt~ zb8a%<@T)$mMKtYQs>^)VT5IvAdP}GF7)e0#S%QyUdsOIQ%Qval=tB9Lg0F5(pccSCaL$taNxlnfodmSq2l5d^ijnAF(sPabA#hydvNBMs&TNB2naxhKjjq z@Sk_U1vb)$uSvj;qrHQG^9@O~7! z%@?_WK+C9?fTxS3OLGYGqdpa}$MUee9ZXXpDNtCR;3IxS7#LLA0|Yl>{`c^oeV9rS z2?qgT0lG?10w1!=L?}R)xd3bs1Dy~e2#vR$u*K^KKn)8-Hp7Mw+U^8!f(Uy6D8SD2 zHMccMFf1zX`#`<99;W;(bcqt;pqI@;idzMMthfxBB|P$~2fLve$D2_9?{7B=lJEyQ z&S~gzHiH{gxi4LdEw`)wi424xLP2%a7GIgVXRrxiV( z?L#ZbaB`n4W^(gIAo$_eT0 zF8Vzx4HO#Ya`!#pryuw6^X@+hAGNpH0hw`=C(0jV%SI)2r|fZAb9AO1GC3oa4N)(n zBUZRmR-mXGvPiqWpW;nP^JiqtKJqspd~acN66ez=+S0DDY$aQl8?{T6+HC5?jj#)K zS8Irj^@2@jatU=$HI>T{#RIB-n2$JRmX`H7<--c|45tm`)M$mrcy2B9T~%D&E^T-j z!floNDIhgy{wmPp#>RUgLRAibP?Bi{=}^50N=aq-=ek_%h#bFN*)xnV$#a`lpxa>E znfkwayTB|S4kshr;cBPcG7FKI^T?%Bj!gKkIJskmPra9w_+YKNLj&zhDcPI)&W{j; zQq-CDG|7oKbsAmV^@DhAj`W9|F!uqlt}Axflj|pb1-2)jorgUXyGoXXrcgC)0%|F9 z2xopRT$29n5YVVW)Rbyvo4s<>ZW>pSh65NPQ5tsL+&ABQ?>M-aW%JJ92p=Wu92o^&I@0U%Ximr}UKc5o>Ta2h8^b zD7?r?X~u^-gKs^F3(Crc#u6fI`l`Z_yGJK z>N3up!ua}pt+UWJEC@}XO|jpQN>Uwo{K^)|Rz+502E(x9)yr@)&a|4YHvipmcz-{( zK=jXAHntV+U2K6f{;TT>!*xo~LPv*_yDO)*Rr86E8Eh`^;~qC;+pj*v8cSzP4DfMT z->7M^<0wA)n!>1hH@b{akPDPO|kx8YL|X*3m0vyx9Gnbh;zO65nV|% zhj*^z3rP(}PZgcaN*o)9qHPBO^*)!IXR?I&ooVIsC4B#jR;Ul+I3_C>tnF4Lvb909 z(ik^OWLp_oL@~_)Q!G!r7p97fhx3ji>0i5k@yvY(Rio+Q3Qh@zN0m>ux>(Qp!d_r3 zN}L%Hm9ewR^DA&Y&z5+yOdzFA#dKW<_9bX6*Jxgn@5nYRzo%O8SvzC_$E%lfdIbH< z$hmrPIK$1hg@jM&XV+1Al~UI!05x04h8tvs(x7Sz+W2Y$nqOM<&Mq%FYjmy>W(y2; z>bWbCt@lpS8_vj4F0`_88^+um;r$7^Eu_Ag#~qV`>Mfrh_CP&y&uj{<{CYXF&W|Jx zDU+CHu-Tj-OfNxUeTg<8@pYnxbu}eeg~zix<&j!MYK*Q^M-})O>%uxfFCer^=yBL2_ zDe*g!hRU>X;_B0me6qx9xh$Te5H2|rT+Bu>iRrwpYOo7SzFj!bSzqOgUgr)y`fuN< zr&YA6VjnQS0k+#LdTEa2UBi8lzBh|4u)(ZdI@5ZBxu2a!K46548PpbODG*-7oc0HC zk+OTpP|Jd43@x#R%t=FML=k@hJiyiEHfy`L+{`m%P}{6Sk(k z*me@O*8BBUEQQpJ6^HmJ?aQxoAMEglEDf#%?xD?69Iv&JHx}-bvsM6hUZ~}5!o|5e z^Iv`$FZkf&*Xo&KQ2rj>q+*Y(%2A;RsjA|R0sN*=UqTQ07#KFby8@3G{ES{pxkNQ~ zLNazCoL&L6;O7)vid=Cc=Jb_k;w;b28=%`Mr$GhFY0A|r3En%CjBl@S1FTN)h7fXY z8{3#%4X!t} zVo)Wj2;?GUA&*M%6MkoW%1bqc4o}}E#;^F@r`r6zA8LU?PuM*i=h(^OJW*dMluf^} zT}7X9jG6y54Qzgj7W_X9^Bmt?i$<&cMAk}4eqXCad&qJ z7Th60zDb_yq2h|y) z>6=7{3IpcJc073N^s|p5du{48<$B#Za=VTbzbQWJAq3ZTv^NxbCrgEHnDc6LxpeEG zAReb_aVtB{p0`g3#?j|ta1KkUFlyxp2$@T!1EJt?dz{hsSwG<>w>Qweu|*9M zly0ysN8iMdoO4*u!iuv?PUuw9a*$9qw?xJ#Nb06WD5{&=%@u8fxKkjj#7;wzM5 z(7k4HM-msT{H@nmMlt~+T(tYMIl53o4r2n1DG`YOvg?Vw5Mt&Tm4=WqK)?5D0q(b; zWR3h_Rb+?>&o#F&rFL~n!0&iD+?IS@c`g-DRe&YVDwVS605JT92Wl>B8-pWr^+&r)F}8uj&An5-@+}{!QU6_h34HHB!fe*N?De*qOUKlk^TMDw4K(!{l>P_18MX@@C zEq#LAvnH>ar?qj|86x7n3ZlI-go2d4Vx!r@9BjuV3uN=FiVJrL9u_E8eu8Tuer2Nc z+5undl?H17_fOVXI=@2>{HiS%l2)s_jaPYHCyB}$6HtceoW>2z#tlPOyAnTr`(FUq zuB{gZhtofm2Nt4^9TGOR^c>+j?mKZQT3QDY9pQZIkQ2>gfm*bpdraf^iPR};1Bt$w zRs}PAZ2AuNZ}^YRb_q$$08S%-*{lnvZlCd)YK#Sc1W5fv^mpx2B`dNkAp%MI;QGbv0~R=3=TnNH@ujB)>oKi( zZIds*i#V#$(!q=3O4CNDk~YY?Qk$jS*eqs7r`xMhwR@l_FU&e$HVc0CHRtiD`My?QI1n{V{$mM1MRDQM7gA z0QmOK@jvLaOUg9k^nTJ`VhNW!`0iCQ(=&R%;%OgOLUGN$bB524-=7=vs4#MHG77y? zrla!(o$mdC!fXtCcgR%!#AW>-YdVK7wQhhNk~)pi!0128z;u4<0#r-jX_Y`5k(8 z#{Q9uKXRd!rKHT29l3#JgHs*ILgI9}Ok9qtubzy3gJoOX`*WX7(`h43_1?^N85;nf z=c&7RQv{?i#|ikgAlu#3cdoZ1#6%ufzcE{XyW!ejL!ZUqY3|mFB6JbkhFK;|K=cFB zOUmGl`L3hK`PQntk7|bC zygK#pVKsIAe8t?*m}Fsz{QGw1)hy2=k^J(^vQZ^ruHfppm$KJZaW4X78L#Jy6V z4M@7}O5kt2!5W7eD25uDiJ@?N6?1}oFT$bjtti<7kj#@dfi*LvnpIs*k9T$`wYxI2Btn-R zZNA(w!L#UDbd=JK?Ig#hCQGgSr#AR;Q}{Mvwc#%RnA-f1Wl>>VX75yvFnWKdqeO&m zgZS|)H_u)zvDU$wsEfjt3&W;h(%{W4vdK>BFTqB|0kT_TdVYKAs|y<-ZO!-wZs9-^ zfKb(&I0avOxbgl*39d9vMUEWPn&*r=R5)py9w4!LT|QY8Uqu7!ur0!u%9A-x4!*@5f7AwXExsCi0=D=n$GkBd7QDI%&K(lO^Av2yz)_#&B>Le&XwyXpU=T z<&2XnxTJRSa`d+?<7v?wfZ_1i860{CI4-I79?S7?)Ge(@jGqouGTl&LmZ)+-2Gj{x zQerE}eVnP$Q~gcoei6AIEDrHGM_oI7$UcqUf7kJ)IUAXR1S{yXQ@-l9hCyTovFjFS5n*{xo_6wm&;N$c)LSd!tdO79UjVU zp6M~{kC+MTS+IO|ZUz|J$SMv zIPdA+O{oI8G1FmU2m%v8F}Pnz1vnLE9STlgpx(t@p*nem?0<7W0m^p@0X{ltKGCd; z>;v}{`}s+VT#RQG!m7>mj~^6LhJd0SG!D0`N!^l)-%f;8d(PvTg3Pb~;P4Rbq9|_6 z89=pNC-ZzBICH&MeXaeJ7&CC+jhs#2e%>{IAx<=!k$oxv_$qL$jcknG?$ri+GbKpr z-4NYz@(`J0VD~!>y?=MP1O(1KJy*muRTHOgOsrFsb)gI7?nuS>aAyr&_x(|Rcxn;l ztE0}2(8xY_11q*ej(-Z-Z)~}9th3iQmbmk-qxGopWc9NLy={PphBRlX`m=m@ky|*Q zE+P-SthtGy| zV^D70%z0;?d{Xaoh?$MCmGYUJ(x=UqVw`Hs5e_xXZ-wcc|nNM`;eQL3!*{f8|-L~%(q{2p_-P}5AY2>Clqfg6 zOSm(a(Fdth%U|e6zP%O^t248dQ+VNDnIwWL4=SaiiWa)i3~SQNhC8%ehMaYbOa?v9 zk`8-&En;*z4q^_bdo8k7yImyQ9E|FPPB&ZoT6tNu0ZA^kWPN{Q9R?htR`NCxR&6qz z!5Da#D5H8=JGaobiic*#Wb#voF0}NT`0DSacUu+F7^F|%aVw~FscQ!L$vstAttgL6 zJJCO<#4@BQ=&rRyeAPQjz4)W?q_&!YY-!hLL1?I^mObRZ-g!HoE3kkmn|H(0Farab zwfS|~4cGwwV&-W#W%HGTF=`SwIDR~>Y9IN6-Ab)wFHsZRYOakT@b(WPN$cS ze|t2tb}6)CRIMbZbZg5$6dxj`JrEVMy_xG4t48=J{rw}zh5kL_gx8Jn>&7!&)Ax5jRwShv(Ys-TtcBj1R# zdjWvWS=**!{njWm6Tj~0^w;b;XM6rkjrd+snXgu!F}!Ww80&K0jQX-Ti}lmIilCuc zdshO$bDgf3uJceOq-UvM&Rm2ZoXf0KUh?!5L7O7V>nxj-`C%)tq5-IUkh)6PqaIU8 z%YO9ruH93O;(_Ii;-HkvwLauYBChgBX?mr4P)`L%ys*IjCqC5; zf1YJI#Df$DMN!U(hjyL$?*O6*cnX>1r>7R;b{<2}4?RTwt)3sJ32#;A;mRUyNt?9m zl=}U~hoFXTr*H=m3Wf0}&5RK|B&S4FowpV}PrvFZL=%uM7Z|5Jh#SsJ_aR^?Ml7$uf0d5U5dage;OR zAFAW(6yR^cm(Wd9+fR;*7wU=41?eX1kyh(sd^Q}9J)WZf87qmPPYQ_gJ|foU;44S* zM~IaB3FNQ@!w$cLS5Q{fQ@j@%4o5+}XVNmDwGAL$Wr|d+LnLIvT7>4>Cz?;;lW zI~WC~Ndwz1hzZgjwUG|U6v48$PA|=V^a1o4f=nENR zlR*3Z(sw{I+JnfqSZ=F=S*d7ziH(=^85-tC1KOCggE#-}k%&0}?lMrN*s z3T7xR;2}NgG>hg^PK$G4tdtq_B#NdXjZ_o+s_7KL!unOA4}mt#p=4g)+3MNpDm(pU z^>P1Y z*-HI-#}9#cIxc@-deVwla^RH}U>XGjw916?A5hdz4KT6Pdd=~$)W=k)av<|hmFjP3 zqKG=AzvjWkYxq%@KuSGeMAbAuwoqQuo6$ie>fy^m!pZ2$(R<@0K2`IDu#3R7OKc<7r-8K8KhJ=QO$79#QrsiHSAT@{1}9$VF-6e z(}$5C8F5Zq04bG1{L40jp7ZzpnYx+6&}E>pUrsoBnxJ9)GJYa1F>VpyXHg zFbBVP^fJ`1jrWf`I~i%Qmo(PzL!WiNDO6V`cZ_Vhejk8+DWeb#Cgg8KdL4bQH!dy| z(T-R8D(0Rlku0c&tKs0ZgYFwEfBFHu-s^9gGoMKnKhaVzS8Bk{IcyJo_@(wk%L?wB~LqWSl@3^!q&G3%=~T3*>gA z>KehCkbbR;{x+j(R_TaZMz@AIB=7m&v=eFneiFLjh9$LE5!Z`Yo3NaV@BQW`Uy-e7 zCkK2xE|Ynv)cT?JV3iQ1e-YFAZDp!{rqHj{Ctu3!9l5Uru-(4*lHd6N{Le%9o(U?Y z;$k1$J=e&RhCZK0ST)5z7w+mvy+9oid%6%{#Y>}Up!58sN(UHJ=IAitTH_;2l(-}< zT9Ke^t~Y9nKP}m!o@zekX7SwUeOw$9OyY*msS%*|kEurgAl#=xtDY}KQ~rle>^%aV zbV-*L>RV`oJ|U#!_HF?(CsB)%q&0p96yo*w*1wZ5;9(;>`VjfYgujuyYzTh@2!jfj&Km`` zDvL323+;q7CpGd{h@ZN05?rJ!j?{KZ=#$h(>nciOed1zo-3?Nc3>qWH!FU*#ZuWAPi4b+jE=Fx7_@*tK5+|%l6gx`- zyEg5o#HWcJJ4p^3S}5G3;N_wVNT!lx#KFWkFAHm8;V99;4irx1d%L2lQ{)FDK$P$- z&}f6IKj2jwp|<{dT`{(=CWXfR$uYf;BK`+QD0*9^E%N?tT0!wFX{t>xB_^cSB6LnI`E>!g!AdH4OJ~llC z|C8n_23dh*(U78CNOe86uKd?1W2J4x?qA{4Y80u26*H*n*P=2E@fR|p^`zyeXwy0r zPIWn9pER?=XZ0!c1E8S^A*E4a*yIoAVTZgyNl_^u$np9_-x5Pwqk`1IZh;92Bto`6 zfPBacP0nJGG^q2#tPd=(#f)r=hvy?vOO!AZ18d8TwKKo1sKq3L6z`oLj+qQg z?>N;OM}Z{vjY>pDUX~)hAh-BhR5KkzBO118z9~#{f&t?vSs}%cEJ={_2u0F)d53j2kPg4bP3 zWQnL@fxw=$n(}W$wW-LL=w4cC$2Sk6Rsc@|83PK|z;XOo5`ktHi`2`0cy*{Mu<5CiGUC+^_jGiJDCG@p9dslwAP_fPba^2{x8xt4 z0*xffX+(`E8;qPM{|f&k&>zqL!WWkXYUd3L3nxn_91J!9-T%(eK*_+H9gzVp3Z>f* z3)ijt$MBDP7Q}k!ehGsg$Wd*EIgBg<@NeEj?HIFEbF&B_zgdCW!CM^P}^}y*h3)ElVd74D#E4bAwGu18-hL0)(hDKmP>(3oTqOLfj3w zH|9_~Z3de*fPptB;wmBTfFTJQZg!ymmH!tgm}&nn=rC;lU*KUJ{VzOl2jBJcv#_Az z>ihZA`+vcQIYo$KhWw~|vm?WDE@Y75@4x@9zk@{)KB|u8+`u3s&_5JvM*!E|(!d)9 zk&gg(-*6Ml|BE0ZSSb(3U~|s@;uRtvJ}!>ori=fDDS+$Fz|slz#vU>1o#E!ikNeNK z?lK16#E5)&xEm;Mc7NP!rNBaD~QpD=Rj|8e1v@a8}H8-ZIyW z-C(tka;(t1x7gYhZzeXj)C6cO?G?d)Hcn5ccdxLuE7`nhY-tDpueA|=-6S1E*4dsG zZ&oz6)CDy0!x<3pzx&}f^?H*WH#XLYO(5j(p34mUm${H)==)v`pWUzR4fFm&%VuC7 za3Bb+3A-n2gGTbPQqH$dI!bvkEkf3?vcc|q8YxY0*{ z!QT$EF>rM8rX5bOSLcFU_1w4}L$KTHLZzKpu;<-{lQ(YH59)InZ{#kB#<{gOLRUA+ zxy~bESC2jHhnO&`1aWo?g0aGj`Y@_EKn$ZK*l1Qf!Gc|`DDy+G>x}BM1P@`JrE^r# zjAfcI@XF#3q21J*Yh6Drd8SS55h(m7%}3$^M(l?Hr^voXxK*PmU$Q36jMy)cV)s(3 zMm0WcO`59N5Jv2Y?~ajTj+r_PAqqR#k?S)pecQK)b~R!A2|5hw6WiF4(=bh%fOpmy zBX;V(LuB927Ld!Gs7aF`Yl0Em9|shD2BE*0equ*9MK<@5ofz5G;Cdl7X*%nH^cu+^ z{j4cyaTest8v*I};q7V$TjF&X%ql@qQW+>RL1@wpvf0IsjJ9s>%gY08p)7!U5SLXW z*6L^-2H|Ks8k$p{Lt43dKL2cQUVMgq+Mo?7q7iIIV zN%MGFYT`}3-r~@UDc#8xuIL|rn5oyX!p;c;Bs>SKVRpB;qM>{+O3C2xm^CcM9Wl=i zoSijBB?Q3(AQ%oDP8*}HZL0nuFp@P|O61 zn+8ZCyb$x8hyrQ0Si|DMmtEGdaZo}8PIeok7J^tYusdXoY6=>!8Xy_=M9j+=Ao&Fv zy#ueI9qiuWioT5%{;!TA7}tTe$b?8 z^3>6CSIx+Q)5!*~WO~iZ@l{WJs$pQs6tVRdx-IID9z=gKf(#9oV+HM(XwJ=y^r!^{)WBUMDKEx6u1+Uf)v&$+v8htTWq7 z`M36#hpwSKbFX4JxAYD+Yi2yDsn*N{#ojLnfPegA?^m+&qW9cgQ-3gFEK&9|B`lh< zwaFSLmmKHSjeKxT9cN-+G^J`AHNpwhGpidRa7`Uyx>__9Xk#$INzlWt9U*ho8f99j z9s$r@wT78S7W<5ncaLiW^weud=v=kNm>7?zhncJwgV$n)P6tdlO)h!0Czwu-YyI^& zYDcJCmqwX%7ES5fY>bmZ;STNcJ@WE%&`a%}&9Txm`VIvVf=WrRz7fM{4*JV#fG}lN z0K;e@x`Hq^wqp2q5`@U&UX{3DO4V&zU@$=J?`(O&-&yUy^0(>Id~dZZ^8X4r{=w5r z{=#iR_#i}{?gG=q5GT_@cyLmQ~TeEkWL2)tG;(1OF@~{8P33tGb2w zSJffuuTpcmGyuLx{zLBnGxFi@Y+UYN0>{5fB3XZdxH*3XmH%*eN`LQQqUf)L=$|}G z;jh(i|17=x#}fLlpRD{BiK6nit@?)~`bYd(?k}EC`fm%g$NV+m9`&y!|7-o6>tBog z?`oy~wz;yD$FS|KEHE8|=99#~5j`i(CnJ4ep1w}xgnGkt^n$`ah@K@AImr)*zcI3f zQNU5lM2_GM-Zgx-aMd;5wYfkb(FNW$UA8cA%6>2>5cqkA{eamUh9CIFe$XHg_&jYs zc?43en@{RLAbO6PPrmntd1{!*;RLNEOyqQd%FW>D58`i~Y+-wFq@FFTaF6H->aBpt z%!!=ZiJXXuoF>q8=tRzUkotuE054nk477eH5V*d}ey|4G={BGAs_yY|@nA+dd^rel z272HQX)fbBUG>tr*E0;{KN#;(IMs6ZWmx^%`{2~d-IHNC&W7aF$UTr@Ji2u1Ak zw%oRQ?@rcr|A`J)mk%+$XfDz1shV7Q`-mdid)b>CCTMR#+I0du zLdSo2&RCs+|Hv3O=Pkc4e)^j1j?m&V{~yfAjuQCa?3ViSe=;_^-T#U9=l%XOmAKma zKVB<4{>^_zs}gl6|6}85BKpr%Q;ZJEf7hWiQ6cdkhwbKk{(rZ}@#Tp1KLwrUo96#` zZC5>~fqzy%lgP8dOo7{f{RZfyK*z)BftVKvdIU4jBMcg&x`4wTa2N)<5YV|vfc}CN zoLMzS%>=>J;E)lV{Wd_d-fD_Xf1wLAWebj@21r`hKxYQJt8vg3@q#ctPz?G)OwbSQ zgH8%!44_i-!zc}dM4*TtoDCQtkp`VwB-o7yT^Q)MKF11wyTKLZjuoEW2i@WYuBZpt zJ!1`nCknLqVT_6e@|uEI(`Sr|1e);zhd!XTZ>;b&gP{B~29*l0t%FQE%EOoVO2R9y z7VG=S-+uzW#6PF5?^gpE&%x_w)fvx;&trz%K7P+@hTKo@d?vw``YE}`@i*#I6W9{} zt_EBE-(g@&<1-2(GX%D(GX$iv9W~{%izc`jzE4c=6C};-A0i-+97bMKhVEXQ{*D0Q zbUuHHGdn?er_=@r-zYi*;b+r#Ap8zEdCt_NZYChgAA;wQhQzoQr1V;qr&j-DPLnkRC_d zB90Nm7Bh=F!X#^_`W6uFvFr^_LXA0VRx-|Fb2BVpTLTMR3=2sXG9YH;0|;-_)!C}n z)hVfP)U2$S*9Hw$EaQjnrd3pcNB*@? zx#0Tdh57#+QXa(5=u{wi^$Pu6a(8|L!GG}qe@`tmCBlndBPVCop~3@}=~SX&Z)pKh z3nf|Qp#ZFxIPD6dTx0tA*{DuOySfF3qdl-Vq2*!n1^Z?c{I4jU&g)Oy<93a<7VqOy zdo|j;CR!$(vi7q&?w+3}s=D4Ftd4yp%QU2zpfMIP{A5czpwf7_s=on-2jHf&&j($J zv}%@`<58!RChy~dh3bHz1LdbFAZTp5K?0{EwWY>P)X)N8B3rz0;y9 zA2Ry`y@p$}YQ|cpR_K-P)5ZP<2uP%`aLfun-gs=<<7vEuw3upqOy_af&QZ&%dtXMh z!$r-8dD%W1hH^j8pIv~E(bAGR%Q$1kgNmD+ zpw824sPU8Od+qzqW0 zR1U#2yv$MadQk!z&C=9^GldW;I%CF>bT7Tta9eiUw7F_*%Ad<;v=_S5wD0O!YK}R- zX=wO|cP4ayJ@>anXz2E+YfD!Ro>5>wwK=V|yS1+~Oi?aHFpd@~Q$+auqHlsrBztR! z!4VUK*z;;DR-iPrn}dM-$=p`%li}kLa5|kEHh8i?QVvFm*lcZWVLZjzN^ws(oxH{D zm&+`B$jr&bk*ohc`p79mr_=y>VCLcYz}R8ZB)d}X<=L$*sG56WtJCZ*DO|B-{|k$d zP9wOKF3OI!DnHn<$6gIxEKyG^@$^{Q_WRSW^4Mb0_fH$}$tc~GuHVc%Kk^*-XYqWS z2Y2xJNSNyu%&h24jDbON^;Z{Bispomw4zAA_K|J@P^RG zZm)(pF~sPHx3szk2hoopt;>~mO7O(&0>+O=ml)%Kz}|L#M=MxDlpl90@t*&ngbm+= zIG#>0Y|5VMzzzM{CdwE3x`F7x#zu(QnS;Xsr&XGx)szZm^z@U0#AFq*s_zc%0k=R9 z1T4cX|0<)md+Ktc-NV7L)BMuHNQbAyI4gF0e}Lf?wbT_Hq=KWV{Z|BVQ%n>y*-aSCsJC7%gwUi;DmwTENE>rn>BsBOrlbuhuox+1Osgm0 zt<4kVdGyZMJlq}<|FI}yFNX;67!u!Qbu<@{ZRm56#J^!!$_G(zlssZ zLl0!p0@l()ilf?x>(lI|JkUcUttGq~u-oMMk(LEv-KVs?7f4rGalV3PW5|5saDy-yCO;>h;un}7EMDplmn|>meqb)UFdJj#l z)}yTPT`qL_QQ^+kT5h3O&cRAt#p6`F?RVjTFrV6`r-Cp(=wn(US)>%!Z55wx6Ub!~wB@7{p z?M`w|OKkNXI;`(o^L5P5uNP{$dWyP=ratNwa>@>@!)85rV)xkWS$>xpzS7b)z}WC` zp#~b~6+hmzLIU9WSduVZT;lQTi|)~{cShV*Ad=Ymad7a4tr)%5v!q-{AF<$e zpgHecL(S%}));KpYNiR@ER5O^D0Io1F+MK2x7Lbc#99vTViM&6OA*S>>y) z?P0;`lcr#w|Dk_w-%!Zfr)>Y^z{o<_qyhX0*>hcyhb+L_y)`>bVI~<9DW<1v$4RQ# zksEHui*sZfY(ei7X2H0rd|P$K)}7G7&Y_N(ZdF(T4>ySW`3+uy17&1cv-qU_^o?cR z7EO_~R68HK2R-kqZg>XGk0H__5xrF;rp?VbRj5;>A=K^`(p0kM#&jX0n3JTFs}|r! zs8&NwvC71O5Cfg6uGyb9z-ZB_K-fXnQucDH!hB?f{4w|PixlV58`C38L403S zgE_BALX#r6XKr+Xvlm+vXC*L8^?Uvnd%V?t28;`)@TZ;XLqd)YX7L#v3dxDXk1Ai% zI4E;+=UlmK)p=#MrGte8U&$->vCIQeH1zE`nyqOTt&%tWk_uu{WV?f}M)Le<=J4S# z3sdk8QfVxRJK@*nsJ|M1jc_T$VsSTuOw)A#h_ah*8~csku%Ad7i2l=zL5&p~OUHcS zlo(??Vx6R!dVBIzP*)Z9a>erfgr3nO=hnNgcE7^vW)@QFbAl??g=rsk}QbePPQmCcVAyfXm zskS$KDFaTY2roZACy-JE6mEXC1CM?GJ{FxamRvmiq77SrH>HFzj8$`l;Y|~ScJv#% zRPokAPyZWw#Zg^dJFF=&6a3l);Q2whK)&%L2lvHVlKChEyJX-qhDeM7**E?PeX?+} zq+HZbNpM2>sdI~JwRepT+H=qf*uJ=LyQ-)sYdk363DF7@wxl;Y59 zKEf;CZsif3>~}Q_8yO79d^kQPQmf2Nl#8442{$LFMlLlA$Y0r*Aa$3i2O{8NY`pwK zH)Fzn=tU%Ny8jpvgkBH?cF{B70sXK|*R#@O1D12Od_~D`+mu{r*GcHzYlBH}OQZJ! zzH}GxF`I|o*dK(=#;um=GN+NG&&}>4I(m`Kpg*Cc7v(P;*0&UKUQ-6D%gs1)6$(4J zY6PaKRO~w^@kA7HNe6E}0+o0uX%V^1N3*wM`0F3bu87Y#OQdZ3a<$)@7NEX~6Gwg; z4A>;{!#yPreZ6t>=4afMo}eglVCNC{PsMY+3Gz_VjTmINeY9Y6N{Q1Ow0!DZN^&Ki;Q6aP9JvQkD4!;VcP1r=6DTtMjji!iAK}L^Ffubd<0rO&D{=g{EgZRXr z{~+hPhIJw`TqkF64-x}n&j-o*#Fy3X$Wf!VS4d=a9*OX>UV>Kxt|i)q&vBxLz@*tb zk&XxhtIZTm4y(~4jtCx{zB+cf2mShqI$S6HXTyvcE<05tj2TWl!;4g%548G-ZM0II zb6QNUoprbh$2f}B&;cJ*Eh-6PaRW8`*EhQebjGOP%JjuwgH1mwjYd}#dyeiC zTZnMWZ&Te@V#974c!o>lvwV;UiAjD4du;VDG{jiNJ6I~^Q@w^}(FtDkE&WPS52mTb z`#z(*MGaZ(LL-1qC^StWl+TUR{ln&OzKJ!$ovECoD?T^30EthP6IZKiQbb5?0uxSd ze_RHg+`7p4&S6pbAsG@Wcd!UVhEwExm$0$?gr7;G%bNFE|1=F={$lhFS>bi2DbhDG z`wnNT--lz6-@Tya7f40SY=Cs+o%z-~3aN7(N}${Ao(JL6JyYkvg4U0_i#MRmH;nkg z1^e9iF=)ZqKbK@9H731BMSAXUDlY!5I1M_0+UZ;l-~{bYrd#dE7gP zh~qk)<>;*K$mB=!nJ*qCHWp>xb&6(SK&`R!2#;tnCiNQIx?$bmGZNQcra z1v0FIXU(>TX3+WRj%=91edXw~aJg?ZeWY(4LhIexCb3h|RE66}l_hBoTUImgv8ETk54o?NBl6a} zfpNgz7o#Ue6I%y(T(VW1jHa{0_V>OAfv3xOIin`vjQ_m*>@{+29vv{WS~~_;#^}Sk zvYT5NAN0<*%!Nng_46RJ`#w3&c`ORl#yDD@(0N3m6GX9}j$g*=>5`X+*Q+_0`* zWxY;8itBr$yFn-FXQ`EstGm=HnH~MwsuX-@Uh(J|-mriF`FoXxc6;Irk7X8h^Vj>q|%h7AlHG#r=#vN+LfY6?YkZWLK za<|Ny#5(bWPoJfi+U6anT4p?IIb4F-MJJMGwutxY#Dcyz?EKo>0 zT!AC6fN_mDhqqULQFO9m6kNB1lGO-y(hJjeZX3{PPRhNQE~{?u>+^E^v_^p!ht0UAj3Y-7X!fgh+?vL(#XW@B@Ws-W(%#>`lY7tevK-{NXcO;)#%<)%FvFbmej=~ zMP3-^M~{@Y&{Q&WwXrV65rw%+=J}L0aY6a5dd{*!Ju`EDv;EtN&EG_3ZVn4&-}>S; zq%HBdtETzA!+)F;P_Z1UO$xDur`A53lbE*Whf3^|M=C&f#4_|z)ZRK+Pe2o20?oTP$^N=X!0Zx6i>KAbDK;{H7fe$ zz&Z0(2e=M)5dhvT33Y65819-BO@b}hw*XcFv8;&Iayg0R-!@ypRKM?Cr)=I>G8f#) zbT2-}=AlNf-S0F|&7Dj?A26mRH#i(IRzR+6I8?j&e#B}WCvwz*(JO&vkI$4!f74nw zO}8~t&AP|KLgxtblVeMD$|MoK=_9G0os9Zi8mk@<&X)wqQFafIQZkMZ-sSv$y@O=3 zjVryyC66i|m;*Zn?*=ze*RuWD{F+M~woZ>r(W;6%CLyRrG0N-NeWmIl)0A>5v<9>P zf+|=4GMe(RSr$Lz+`JJN{y7%v=KK-$izgF7-jP}!^%ofP9j;`EP6|l|;;)=flI-T) zk#=r?3(rx*m9?DY-0(?Z0>Wpt;hzXr>ADoFgD?{aF+YdDn83w8`|!p$2enUgNZsFd zOfpsgBQ%fzf{%FOq(nLD@~JhOKFD7$Spx!` zI1I9|!*0}Xn5?YcSs(p)tn|4;PBa-RU4hZZ{N?qfqGz;d=WSs&%WW}}p3;ttqaK%0 z!|;A#y>69qs6$ajQM_Trh3P3g*RRpD@21(ts#WS$_vCA!wDs;_os? zcON{3e=Uc@R=zGS!+G!5{b;S|dx^FEFjB>G{>G1H{dJr$;tyyeu2^WMO2Qi z534`g{5Y*9OTUsuZBqFeiasu?(sM+IG4Jumwa)nS(MEoT`{Djfxh+U4cTd>!03_p{ z59I4`-9ScET0J{jJQQRC-BuUk{bKOC+L_U=Fu^(r8#|BK@(Ola*VY-pRB4sJQ(uo| zv0OfJQ+wJpZZG3xjI^pvBbHZ}=~2c2&sm+og;oO5(N6*I1-Elb{{78pe9)cIbIe7^ zHQn2h=Mq_TI@PUsC-Zf#e$Kv@(erkz-Zb|06I1m3%&+Uifb`S!`X|u4+rd&o=z4eW zD&ZsLc9DDM21ooFR|NA;h=xbA-{%#IUl;i0%zt@Uu7CdA;rN$=H#Y{J@Lz_+CPg99 zWccLFEbsv?vsdc)Lw84kt>0&;+4X|Y(lX4=NOCIEMK1PVtSlmh64pw1Pdqu6Wv1In zE^zJ<+AkFgl3?OcC)&?r|CUnug7MxwUsN*ed&W)1!?;`L*|EufY?to?(vJ^B$YlN| z@cek!d9f^)-x%3v3~Q~{wY-Nb{3hL$B++Ei;#<4{(^pTpl7=jSAJ~FIlXTcq>-jYn zi@JWjYsZGa!qcw^0nd~uri=ts&FZG}nhiB%JtPgZ=sKKfCSfeEem+mR79-KsLi65D z8vf&%q~(89f!_Z}J-VmyfS$~e++Ds?dGE&WrnR_APQbKOuDzQ@Yx0ACh@h@UU6ta_ zgryu8Aga-Q&{X{tTSDhVr?JBsuXd_~XQFoMOC=_^U!oly_2JeKfPcq^+b0a^mN$hP zqCu`266fODs^nDE@rt%xrg=4S zYK-Qyn^mh?f$;T?1KP3E0#;Ko-5rTdoUV$+o#^F z>ur+to{vhFzzQ9UFJN0|L=NqXh9ppeg4yg8=<((^x9wsSU1<;v<~#6_AT4 z8a**&x)muFsvvU+)2fo~V4|X6I-7yQDNy5qe-hdglp!f$3UwIt+`*)=L5PK!=BgkY3KdF=%8-bY+6oVN` zA@J4#bBN|hm;K0_{Rk=^ZDxeTCGxdp)|KS1(BT<9oUV zR*W0|sMO+o2D7-u$&)#=dGoPyEs8w5Doc(9at^y*s){99*+$YYCBdTFGRTBT5^_Zi zKPxDvwJ*izAI#>1slvGtH;r*)B;qG35>m<&Xlztn_K?sy9oPeyx74A5_ik~xsr@v_ z;?-1=RX6y8TeIRnaE$Zo?;!P(kKB$L#sQ-84GuMQA zoCi0)n18v)lTyK|FW|mMmYky?%A8!Ch6oSLd`O;tR>{$Q9xkLCYBUkUr16&qk0wDX zXwk&Q`IiVF{y!P&+AN2t&pS3CZU^{^YoO7kZnC+FIF2NUl3%I4}?RR}&}=W}UVdum`x@(G)sZC$2xH%296 zb>s1JnLwQp?1V;#Alk@)s&(bL4F;AT)(RL>wbJ$=zL4QZ9sn3OO_edvwW?gM5K+79qEIe9MNP=-$9%0eT`IW= zrWgOh75;^Ql;C0|9<|aT)PW^)$i9IYr;ioVCzPJi__k4C0h^%j1&-Z6l9vd_^G5uF zX-k`=U(SAY$f$88fh)v;EnJ05PExY7mBuzyDi9<3`<4IZO4-O;=2fL7CSd+u@vvzC z>2I4&U4pZ%CmI3CZN%xIeBU)=4DnQ-wagRe*@yZSX=Z0qwf8Q|ygM5YbmVd!0|`N1 zmM^WoW^8>l%knK96ZXz-U2Kb+PTFGcKf#Bd=!+df&x67reH`sfnw)X zGgM=$R_P=}ZI4^6Ws<5eyB!BUgJy^()$jd`V|mf17wh1`5-{Q%_pRh(=TbL)KkG8zW7q8gVIW=`dXb_3OJ~2g`x0zz<|H!>>I{cGeew2A*QL;I{7xuXss!4 z-&(@Hp_4<$difp&K}4f^ou0@z5AIzzQ@P);tA_PZkz09edIp)cX@tmd;(#a&1jR57 zNDu{(LSumhJD^ZSyYT7@N$I|B%>KsyRzZU%)DFMv9n1)_oBsq`EL%%b36QNZ*5K}n zohJYdP5^hnMgcKr^k+31+XZ2bHbhkiv6y~rkHqsq197E?d^fGe>@B|tw*7QA)d+!}hyfKBodTeOZF3PdW{A{1@E8qyw44F?i#teOnG;TGu}{18U84s zv#M*W;k<7BPg?e%62DI2qIz!wnrXW5kCi&ZB{UIP(uu!H#Cv zL0txgp;S$HbC~z}1{D@$1bKuR`q>u!j?5qGm;QezU91~fy*Nznw+1`0d-xbjc!1;96Y z9>!B_vR`)26rZgQEN-!_9JuPA?%cOz&f+OQhx8J^SZ)36DA{3#pJWG?=XTsgayYG7 zS{V?oX*p#&2hdupVSBxVkNmht;b+~Jp+~pErViC#jp=3SdpIZcTm|wyfySHjjCoZePGfi@D90u4M zYW3C;y4;gSevAIi=etqt>ZA@a6*5w{CqRGrES*sg9id_8LKAn z3UUVty1K&#$b8a#+{8nF{@qA{32Xb&_ry^w5c1;g1(it3*@1Pb@%XZp@ zhDYv&^Lk`+Yxezd#E#j6b`OD>VWy`#1hEAfhHr;=9NN&PD!ZKjOtQS2L{6!ap zXGo4iBdIwMSEH;Ol~N$V?a)Yq7I^VfyTNyK*ICFnLFUrP{r7;QD%9RfAp@`C$-R?k zyV2VIZ>4oTg$95$$GnpEa6Q5O_f2E+dyR~_o&nlCG}gh|xUiO3c58h5%O7>s9quPI zLd&$*Yl(~tVBVwVsUC#wO)zgN(rU)6og-xK>7&!kGX+>w$b2HW5Qp(ldtm;k|;S(48?hT0bySj9S{{kb7VfG(9g>-<_ zr7T1u!}AX%irz;Bsc9fcV}kfr1xe7NB%{%|{pu5ult1#x+9)i;FEzQ1PpD=9~;h(^Ndl9s>G%zNVwiZ7T z2~xnNx~((X5&>^tv1Ml1KR%Ae*IVGPzlzavGJK<#Cl%A7G-V;0qH z``$We?OMQp5F?eNY1%{ofYGmRZI+?_*p*t&RK;YzT+&}-%JLsqr!BKSfKo~eR5VFU`<&AIF$a3V4uw^hX z2BRvEhX(*tXp0TLef zb=T#Ek$WVrX4w=xQa8q7qIWQcKF%grK`d&>7~|QU!!XYP-=rSY>e<8b5lE7oLobWKVrXiA>H4VH+Tg1w&n@EmfXvlPzFPkM=M zKUXGE5be?DJgy`1lmBM*fJ^%{ZNgbP#CsbeNiivt!sB9^BT{_qy4yWH-+%SA=%U2E z+sJ9GdznE2%xv##{aUOSc70%w+^2seGt4XJDYy$<@7#2m!v8d0SrnA(PO1GkyZLhR zfGZsTx>5Lm(jwdL$V4d(a(}qXVC>$@6-$RZhHXq^Y#m;Tb)ZZ4^0tTBdEEZvRrnxt zPBY$X=Ib&Q&p8tD;hr zr(`|w3T}w8rHMoVC<>M6A9*jYa2tU|KgioC29*|9}hWS|A_+G2=?c~5Jbju?0m`sdL$h%r%s z68A)_e;J-`6**?-=4uxd&fxG{s%Z8gRUEiWMaIn;=7{xZ<{Hb1vfw}1G#l8fO()iq zsR?b5^1j|7LkEc_iZ=ZRjkAIt21Yc zEwu+0a}Y+4*yMrsEhci*M)^6om;A-+pTd8iZ4_=3`!TIN?xtRY9gf%%OGk$h%New~ zMkDRZ8$!za6&Q=oYyjn?Jhaod3gvLsdN&E*ha*ENHy z_y-MjAygx_5-q^FN_953?GRkia!B{w)7Eh5B8AfMvfq! zJqwi^j$p%MoyVeSKd!vz?`IM8#a4x8@>qo%x}3!o?jG3=6a+advc(E=d$a}J{6-~A zpt?+eyxTwgTe7C615oF^9P%&JefC=^1LDE+S8gHd#{!Znq|UrRIBA5-Dm8;{(fQUm?p=W+ z_-23hdSY$_&_%p=yL`a@0}7oI>r?JVAd!ROIS}9SKu-XO;7o?`4V})Igy9$8O7D92 z?Au<&3=$`aCEvWjTMN)|yhcs!8u1&Jesf&`H@LD*PJ%DSG?21|w<&2S)XABPQhIPlOiB)KhjR$+e5c_!f$C?I zcfMW?FR~txq?@s;-*%RG1ca3$pGTQkVRe1Sl&j=|9!=vtiv%j0^#DqhDj!YB(HjPU zI~dKjB?bP1sjpub2#v#l>9MXpcMLSsXc^C69v7=gdfZAXK{&ZK`gbECx}|^nPD7Ok zdDAX{Zz)xkAg0!F-1gY1Dct!~94r_qK?D)UM6ex%Fd%BI!jj)7S4b}AdGDU}O~6V( z2#f&y1qS8;grgkDGd-A1SRe=F8Y^(W;|=zKNEAZvGJ1h#3nKl&7666HH~er=u@eEIfEk~F9~%5YgFoh`=X*8{A?G%{h{33H;Ko1S;*qCGaz zM?}#&3q0h-0q_cS(e~4Ezap-n{rUCXCC@rXoo|=RUvmnAi$~BtX9YlT+E-?4WaEQo zjFyG%9Wd})A&hGof}l!s)JNeN`8X)jDP7!1yG4DlT7Iw^f;7;o?$w45ZdC&`D|*(< zrw}}1l8%(Q_wZI-STF%c|Bo6f@FMolqv0oN41vh)xe&e@B@Kz>3>~_up0vfk;H`ka zkZnTm+V5kc4mM$P4<~@ALA^HUU8!epAabl4Dcc(;7ZKSV#Qt^1Ap;?iFoFo~LY#O3 z`<3>;pv!a*udV;FZ^#DdIBEYI`{&%|3H?_JYt%B zua>>FPP=J-#n#@Uv=(b?cFL8WrDJtdRRkV@Y&yKp(a)S;cblB-bAB)HWxZ|ttLs>D zDmJQBmOD-|bE>Y^Bxo9UPq z=uoBm$oO8qWOQTW-K;rvV`SDAq9o&-$s##p<`LvPaOa0_1FN~zjV8w4#gzlM@w(`w z^Lt`?IO(RZ7JeP>xCYQpsWbbSx5A&OFOi5Q1x3RnUl`xUrvTUdZ$?kNe;qL(=2jK+(RzLd8)E%PSS<*%sKw5e?xY=fe{ck{m( z;4Fkie`B8A3Z{qh=qL6rmeZ99RN6`X8hl%3HoKUQCO1u$D=4xG`~-K*Mb^3Me{s^&)ybkySH zwWw^pj?90hYMOVMwIF%8w^aFJSagl4hDH!+3}LgoqXkz9L|aE^O$wg8vkHfEE~6aS z=9|(B{LF^kPmlq&A!eEh4!CXvIjkl#6HuZZ z!8xR8BXuu^N+U$gw#BE;U|?#J2T=_gZ?g~OO+t1!v^-|^EPQNo&}IitqU#DAu2oJ; zYPfMcB^6D`sc)=N3xX~g-~pN%CyR?*WqM9unq|FixmAX_tsAr?oAA~X%p%m7EwA0`bZ-1=q^3?MFJVvv|C{@~z768%8T!4QH|2bV|qTXbCj7=en?u zf4DiPZGLx6=TM%ACnsE1cVLTk(31M>E9{BW-^e(7z+DTYTzi3>0&ga6J48Og3zVt?h z+Z@Cek#K)!!tHx)-zPymEzTA z&()VJ?=yl_$p;8bqRaGj>;IE|1oNAkxokf@m0j%-6PLf8BBJM`U-;T*c$#UlC1(Wf znIhpB?HTLxStFJc?>O(LpJ)G>aRvp%Kq2Gmu%s7J~nl1OOf)w&) z(bsgac?2NaX5{e-(P}wCBZ+sUydYMh#C#uWzOF`ZudeY~d?1;PJgAO!P?SN)ClV`@by@W0@23v=~HtHD~D3cYD3dEP^(w}DrDVG zEbytL@QTqb)xI`oSObG?9|-wlRNDdtq7IFGP#i$hQQwk)-Yw`+Q^2iGYdz!eFcE0W z? zPbIKuC(zVUsErYgGQ$e5@L&_PYWDNl35=H`Z-|2)*^91~)v_bk@Ce8C!_a{`pQcH9 zPZ@x^ngBY(=fy4-!JLl2I?)Heiooz1PeLv^SSZ2l$LD7d?kC>P2X{K+-uX?7^}h~)lV zPl7yd;U-u!XtXOTORyD(pc8g+{5Jj5SvbI_C;c1Cq~!rzkk!P@_Y%!PrdN%x)ib(udc#uL%7(9&JhICT_%@w{cqR&us(Bgufn(Z6 zwO|OVD1~5%m~vD@L$}oM`X7Vm!Ww_)hlq$v*r|j?2re3t-3n@~2j*xCxNjH-jYaGs zeJMZkJ~wN96>v~IY-eB z49TPQPGVzWe+Xn}pp6A7=_YaZWY7t|cV%Z4V6Jy&D_+Kd;x40R0u^=m($!<7BJ+vt@nXjh%hLs2MpzpF>u6nL#z-oB z7)ofC=&i|CA2*k6I_92BRMY5BttiHNy6biQJ_hC}&d^a<&1@kgE`j!lZ%U`4sKMGG zTn^u<9+qNm2t!o1Ug(upwb^^a&=*_}-X-=7wq8J$ICR+k!qFkmM zJY9n3LaI&$K=Z-4=HPY#)lWnc-}OQYW2*Pbt`4c+*jk)1y4YH*G2U5QyfG?EsjE1O zD|o9o3M=kZyQ?cARPo+f{IRk9e@lS1hs)^*;U%qxOs>YzC@_VPq>nJ^3^Ug5p_|=8 z)*jGp{^IeMqJu?m0D-Pb6}7wjaD|RCrzfY)ZIUy*vvGxqI;qeGXz&O})_d4_1rIl& zVqwmTgOU4tl9Ddl5?sW_xvq?Mo)~XEH~e_fK=P#>9L>CM_#-j4$q#1ut%)$#^8*GZ z;8jLD00>Ax{fbbug!MPWo6<305cuBIG=8yC766_pypdfBbdBv z&>@(-Z>Z#3E{tmlZm)h;PUtet==zb-)jYO!J0{tpe5KT-Dte`OfY5kfOwVoE4+&i* zzf3{5I!9F9lZa*6A1Y^vpWH10_tOQ=THp^c@C}k`v_Pz5^6Cw~Wqg8*+BnzQ(asxV z-rEMik2j6bIJOhxqtDCkFpd#N!N$Gk?`s{)gxo7_Zs+e=jrV-Hk( zeSvkrRcIY>6<`lsh1dgEK{vov*v(`(z@LD4n?DpKJ2~N;Fkr6a6XM1O!P*`_pp!Jf z$f=)yAa1yizh52{o-i~o;MN(dkMtKqha(gdR-eKZPl{3;KQInK&0r> z`X%Yu{%dceuh_}ame3-SDFSfOSyBDl=S`|vlwdPE)|klAa6sxtJ1IxrkaOaieQL-S zD;|54ki+rW!XIlEE5@GL;qG;V&k0*BPyit%4cAPyxAcd$nMWz#Z6ldASzOv9%)NjI zj;>CKNPw!j{yM|kd?xy73a@7A4T)iz*B$W0_nzG|%lF>K!Npo1$*_VqY()P#oCj@^jG&nA43#p{k2No3@>;G=T3qY6O}g<@h3tXUP~ z&~Tv9+(YMGp*Q<<<&RIv%%STlv6-QhT}e$VVW)rv9UrAb(T^K}LV?#o(NjE3Ye5Mr6 zRD+9!Xhc_#TbB_WtV1v!PqhYWe>?T4py@g4VcIesa0Q&CPA(|BU5?}m>hK5lvS@OB!h_Q@m&+ zvY^4?UbD4vhx~-ZWIHfdk1m4-^fR!Q(4PtzB47q?h5SZbQ?C*;e~}vctUHS~5Plde zKUEP^R#P4%amZl%iBwNyYipFzARg}6SxLmT>x(4~nkr44^9 zWK&3CoGtF~iUHcqhzR&ITR!JJ*f`mIC=7J~tJ#jI?r2J{(r&7`b(QWnWG2Z~C)NSk zourqYp$EY^=Eb+E%S*e}I!$nma{PkWN=OW=f0R&>ki`~fMZ1W%wBm-rJ_xrRTpLz7?@^kApO^ObL zU(HUGXjP!gxnm<8ToPi6IUsrtI4CAdEleH{C0zvfCc;A-qd_@eC0HTs^XzGi%F@Eo z*tI9Y5p!s2IAZZCYNX^UWepJj!09hCgv7oD--8J9h<0#Es&2~Fmf16Euh0|4&S>3= zgy-qX-vs>m3)6KU0B!Zvd^9ls(J13_ zAadfP=)jv{i_+5T#1JOAMx=u;|LoI33C4NDWeBLJG*^Mq{^KV4d4=LO13lYR(ngsF zeH=m}mGD03o5J9s#MRWe>qR_O`e>m^a#?e8oFunfGaC_@T?s)m9j{`~D<~n`#a4!V zmrHtCDIIe0L#q8`Q-C$`VFj3xr;`+L0r|N2sx|NwUXLvn7?}ese&kl+9-+dW16KnmspaJXnYCp<^DA?S;DukM;XHi4x+mEzLt|#+|ik)kfxh^DkkmAr&Ed6S=Wzo%D+gNWf ztxY9Q^BkiR>v_$&|H#xdqC0bSb;9$}l>uymQ0O?<9)EKa)vNdQuAnW$qnN_&_A7$v&8hF6FT(Tl7nbR||>c!9+QzezVjQHkJuX5*lPRWo^5A zR(Ec@`-8a`I)d7!8_4!i!+Qt!TAD1{&dIm8R@EeS-3T}csz(#Lce)2)+Fc)&MvJbZ z1^m?6G1j}eT_dzYv5T(1eB>9~SwfqR3=@sCb5*&?V9201MR^iu)V~opwBe7JlMdcC zhTMj>VCS&19NOHNZck9jX_G%;!zKPcQMf(o2_>LA=@DiAGX>?JN7RKYnNMM=YtTAs zKI|?4FT57i>MIooodZzYpooFh(EM(xyj+-WfIe&VaPn;kX=xdzACUZXPjfvlrR3TE zh+u%TNQ#YoZrV0xMiS7KqVeWxD>Hid{vb@?x*|t^s`i|j7e&e#b&;!_rHbk)Jp3Jr2GRun) z8c^$VEoe>E{`5A!IC`tT6%mD8uW^^U=+$}vE38)7QM)n;m(d>gte z*eE*Cd{TgjG=rgmLp)y*8(lEZ8L+;F|>qGGP7U+>&r|B5X%Yq&C+ z^Ip;(pzGBd-mPy0?&nPQ#QQZR24F`DkOh&s&BCfZNvxC|~%IUz^ ze6%)HR1whB?y>t3uc7B+tXvP)=xhCSCD!|7OUiMtOEs+>}<~!xIMCje~{$0A8-7Lzn8tndIg+aqjh{=33*`oO|Qi{hB2XxZOdA244jmcn38RBm@CZQWv-ZkN;&VfB@dM2kW2k2KNHO z2W2VST-`%l)mK~9->W~s z@yZy?W%}hOW5_>aSa~7nF{{zo9qWBbYD%eg-Z}Z zUy+RmOkWhA>7cO0qOBj|JH1~2bQwh!tTOBm!ibiU%S4IY=i7IXul%EN0wh!`LBvXzeIrcQxJaYCj#W;mpSbF3EqCi~{@A8$KUUHNrP-8&GtHezN%d z-6mj`@_ff}k$V9R@6i+de23*!~8587NBIrYt)g>U0 zvwT>H-xA~#i|vUM(Tkv~g3lJ@Q=RR}9`C^q^Nkbybkgc_hw~I2?z0f|fq!uo;53JW zC?yOzH(S;4cR!z^Bcu=?a*m~sYoO6ITLODC-d5n&RzR~Yj)1dlZNx^5wIakcLKv0*y!0jo) zzD(H@23!Fo%F}Q7o2QFq%r66`KDOMzxa+b7QeocW@-WVG_CJgA*b4TFi`pFsw~&0Q zJ`)DuCK!)DW8bEI41AaUy}Am2>|tKSTq3@7_Z#7>&KYM{*eluDmXQNcAxpOl%H5qx z{l1%984dkf>_UIAn^|o8QyTj{-7Bteds4A4sO*|8Un|lpyQnv&Ob%D!MtKoU2cBno zL|{K%5Pq|+9LXW-QCA050*_sznhGN4IDcna$Q&V`1(s{We>)8H@$2^R^tm+d;aPv= znZ2Qa5S0_2{5V1Ckktne_RgH6^1?ZDOkiNkXK!#%gZ?0h_$EyIpb9ys4Eu%*^@)N> zjgVi4!8$4k{8SpqIZp`QK|w%v$TECB63wY5;+r1kTQaDNpx~_IT%L*Z@&!V^Cxq@{ zKL51Vn;H12Cq&OLvb5)h7KQyQ$nm2Dh0q_WfAyoKmAv3z`an?sGy5~Oiid242m&(C zou)|4!As6hYP#vYIq}VPPvhj+(bM{>hV{;HfdFsA<_ha6SW;=y@ygL?b~JS>GVd)0ZXZ5tw`ajwHGB#t$S2dJWmvyE3GR_V$ce;Y-` zo;H9Vg&EyQAs(9KA&fr!Gu+du0h3K?^618f9NY0hiCk+U2lkgl$EqSK7B0fKY1dxT zy9I?mM6f%#-!d9)A(3A%+3!~|aF*pLayq2ih(felE#ps(@+TcZ4Z7Y)#TUb4^ zY>To|d2F+2XTR`CqT$IiMq8NWmaR`pEJ<1C$2lgZ#Je^B@=sr~A}On25*$kE-s zuv1;{R`8b8xL@uT)p$hbR|j}a@z{l?uy#=YcHg3N98ge{ z@axjjJlW=Ly#`JWovu%58s{qX6;1aV2)_h}(5qDU*w77}UZZNq6*9Y&d?vXFls;|G z`?@VA6yQ8Tpx4V-Fj8adJUvqdGR6_!AxGAyIZgZT$L5YMw9>9 zX!jOqd<1ATeLgHC81QE9+k1a9^ipU%3df^SCZA9oZX97_=kr=v#^tVSACh$i& z06>hT`@{w_J>rE$JI^wG@cMJqf?$jC`{TXEi=#p!8l#Fcg;aq=-}-5!gFjFoD$S8NIwFTN*q9RatT!5DINnehl6isO)a!JvpX=RmKK$C+i+ z+1MHRn|F>E=_|0~uGbW*(-F=V(RS-r3>ZXv2-D#=zU^&@i5Rz)k+C)2htTuZS|OTZ zt8%`2Pz- zNd6l*EEL|H+KtJk9G6)myeWcO#`Ht*79W}KG% z*R@Qd9C?ljb4IYhkG^<zy8%a zjq}ts1L3KrmMNxGosN40A#hmqa}b>lf|_K@JzF?l1MuLf6;iHme7!f>H$EpWb|0VP z<{)yr2oNZNB%#WSE?v7^fa-itbso7WvQo{N&fzIjJB`?e!Wf2&+Ho7_)Qj%J>Gm01 z8U^-HNLFeKrGoqnLO)6U-)z!tvR704WL6G=rA1R_AJ~GdDY^E7@HMb17`7G^>2E9D z-XktE72cxNN`X&Cr#*)#coXUZ$}<_ZUYOd8sZxu~kBO2kku*h2fFWe{`G{|V*`6#j zT(0KTiIxjOGpX}=_M)g;uwE*c0u24Vj1WznuC`kX4@;_aSbXrz@sg9PhfP zOw}~;RPUk*Z4Gnv#{!{`G%-fOCv8A;9m}Lr$!eo3uy_9aR{MaPDp5+1#85VBvfd~a z<(0pbuNsT^jGg-mHm(l8%vDdoT4VE6B7!J`aSOFUD|eD=b5#y!4#GmuR%MFf4E&+V znULYusiISS4g8nHbd`%|q{=I(6|~K5;;r3)BwJ09I;ql+r(>xz0zHA|l9>Qs?ymD- zO_^bf_C}@|5v|%RHn%MAU zgCmM9c3b?g}L~r!|7L@r6!k{e>4${o+5`YUw$DJW3|7Y^Ta4_r{n?hr7t0!X@ z6dh4zRPG(_6l{qP`@gQ2ddT*uwQ!OT5GF8GYwQyHkezpQkaszxKZMY?EC%%$Gv*yQ ziwt!JV8h`{A?9B+1|1=M3F{|dW*}h@&3@jEL3)YiW{uh8^EScQ7Kx4Qgfai9o@&=O z^8u90#3Mnwy?o2z>o;zR2S5|ul#5)aj=^zY5z0f2>GCzw&a?68Av}&ETd9*-m5J~M zCNvWEdMEN(bqP${?N?aU^N08((^ln*pt$9Gkr2a3?k=L3G^Y~sub>s*_gi^ZWA-yV zT6JiVw=1OVipYZPG_cP{>L>iN$Nn|#Wdf*MA<8Njc7v;V!H4+>0Ntz$02~1_u z$dg5W*!Zlom_PX(d-r;~_5KB(PxY7yvQ#Q=l6jFyM7eBs?ISOWofj-KlLw~GaFmC< z*LUKHXR;sE{NW)D%h!GDVJnSFTH)j02^3l zER8nxq%U!j%!y+|+5h(9n<^&h8t3^nuJrJl2GPHs*AM$gts_Ck27=~jvM|M2aIwX3 zt`dKU`f{SZ$|}w3Jf&1T_OCA{lzy?rV#3dBAA5cMc0jMzkDXYr5~_5I(^%9gTgZg< z*mpY9CsP`gz=2Y`$$BbTMh&DSv>;2g%UHlEMvxBHVO#RW*-R{JV_i108e?6NuB$=v z6~gpdIASxQaab?km#sF$c5bY!b`3<3A0~kA&)#=WS_tKhiB4DBoL@WP#HP3f&1#y0 zca=Ny1b`ffR0$@Ca34PhP!KAmDTf&Jm4Flz1U=VRmcqA?%d*3q?*fpZ-3R2m6b+-O zZT=g-iv4|l^y6b9!(1*QKe<1mJ5F5wS@ZN50bniSS?=<(_~ic@4c6mf_`U$87|{j2 zuql0htt^+zNi9IcNiLp(et)Pj@{aTGzi~)tze#arsx-P>F%v*>nzoC|(&s2YH_LeZ zxMVmHmJl&1G8qmS_~{PZI01|xYq|j`GF;>xV-pLf$#M2wHj6;>_KoUA4{nV_OXm8r znkA}2rP_v-_0?4cl5W+k?;Y@E($so|&)Lk$u@G9*dU^ZxYUk>`>vD&W;P3O5djS0x zYH7GYc)l1D86a>X=#7Xsb8%Ya;T#;wbP6Nc1-Eq14)dGV2Ba`8s!g0`MY-LG?PR!k z4%28#MKp@6R#=jl(NGLo&8kJSw@4dWXa=@}EBnF2#xfBJ{Z(pB=Y^EFjG}2ea)8pr zoKUj0O1*}|8BP^ua+#Smmd={@$i(r>T7eIbcu^!-AV9RjZqnrlMO|Sh>o>kK>F<~~ z@mzrzF*?^k2ViPtbu@lbtif=ah|QVEJ$$Y~&j>T_H!VcDI8GZFt&@Bv8TIwj-01T& zmuB zGIO>dujNpWv~3>OTCHOU7w4$Mhuu1PSP4#=8x`**v}1}GgKyw*;QZry`|zEV5~4fO)DQonWJ&IDuIQ2P^!C>8n+YUo8qNY4JtYbxN2?PaaSB-VO zjIs8}sYl#*RSoLsbI;CX&TaI9w`uaTZPQmYCFaBGncnul!2( z)AUNKa0TA71f{vPkNJBO)hSaQo6V6LwD198QQ(B87}SDNNpXW~zjRNH_@1m~I_%A> zXLl$LyHRJSxtY=>E)^$hHFqtlr1j>Z>WsRYXza$k1BUy>%6A79`8cWqVcf8kxk^AC zE7Kr0Aia#T&Nv2G*Sdk*6k;#v=$U4HP{a=PXmv zRqL)>11;^w0d8Jm2bvhc6R&~_VY8MzH)WRF815Yv1QM0olm`$oMdv>&BQz^qMp9VN z1aYViu=%0y5=SPjzU+9TB$M(WT~j&jFQZS*gxHJ?+*dFHD;b0_lHIjS56%Il+~pK3 zPAL4Si}VllJ}!G4e$&pEE)2Q$j5A#8kP!WLH1rTr-U!OqQ^kl9-fdF;16IQihxvBj z&jESZF5>XwbB@Q(J;KP5N4Yg6Pg5e4>}ChZi_w@r_8+^LOV6VO2bmB_P17v3YOncg zthzt&B5+G_iRORUpCMOg)BFb1ZFos_F65GQw=$Nu=SoO$dnt>_;|_*4=UC*~rQ-+I zKcj9QcqHvbHhIXkOnIq8V-Ej0(%{=YZD=cB*06iWDF{iz>Sk7_0@ZkLa$Z)y}Pj-3fgK-FchNm(^sHxjdvBn z(7{hc&UktV#sgg?F;@)AIgD!TyubjS0gx1)22c zYZFeLmWJQ?A?T;5k6ryBx35oV1wFdh%kK?xMzdIvZ{0>U1>^NW$e_sssPcKBp-acV zVB{Q7_g?)N1m(v^#z@x-M_vnw4E z@vsvoLnYa~#FMd%u+#hr#kpwF3$HCn?`A4&tO-?lRsMFH!HatNx zRj$aLErri@G44dPpSBI}1TwG0DHG+0H><~M?5pMd-IT50Q7SGeJO7YF?c`gjd;_mk zsdM0k?*vMmlk~|qzQB!48xQk1fQy_0n|xB7lX6308>N1h z+@Dn-Kenl06;8x={MWXDuOmJ362jWcOR|rZUdi;NIW~Tbp_ODkZV(%3xKq3|j_G&u zPmN0o*}yCh?66Ts&rtYT=kOxDJ<}17m@Lm6ZI2-BjQyW-j@&nnPy`NGc@FG=qaR-* zJs&~uFBH%B04k(gh98G4Klb5%U=H&TOL@wu+_je<{2!{`GOP`D>Ds1vaF^olR*Jj3 zySo;5PocpnRvTr0EI%$x(59{%zzt8{=t z^eA09`&~ZM53U25^PsR>^RV07r_=TJJjaqm{{T6@kBccByjsfO$%RRWuF+tE`T~u6 z!ZUmVJyQrumvp^BVouqDzW!_U+X$1NdsW2HYTD#Sy~o~j{R<=<3@t`r1iZL|S&W6w zcX6rb{Pr&&4TO&L$Y8%p7p&e}@|~sCyEcnB)=o9d6sMk7A}-|2b$KqFO=i0;Mc$#9 zOYNTUobrv3)tn3f74~8xqNcWR5><$c@U0t{Dl3L3-!u*-pC0rG$-L>~Vyh zcRw>t?A4c=M&cu4jc;0PYO@$lMYA2`tVE7LecxOGFRJhDQEl$=*ud>JnHd|21FZ5k zoOD-I309hn65Hn$X5Mit=&TOd132Ku{#`ppME`l9-5Sx)6p|>0O&H_ayoRUL2iW`* z(V~t+XHgwN=p!!u`-DO6C>s!nib1+;3<;|EF5R7&s|YG+^_?b}brx^XwA&Js33X_h ziNc)klpk%zBh{nB$d*gO#Ej2toWWU8ZYrn#^Fsoe2;rY3@h*yfr!EX0n@s;W52oW7}lc9w3~WDfgG5`hoq7LTfBD)*s-bvpOY3WM3>mioQa zk!go0CnbSaf2$GTCuKd%z|1uUQKg5izy6GRQyv)}o|DQqTNowuCs!c%SChZQ-@l)Y z+607ie+fxH`3gmVD0arJ8E~K1&uH^b;?NVM$#0FX(zZ-wsa=)mw_d8k+x>g0wbhk*AQ+2 za39ntGU+2>MI6C-C~9uhTO6)NZ;FX$V}Kt!@hG_9i-KZ0T_1{|dD`QTfVkMa`@Ezk z@f3_b_q?I9^m;q)Eb$(++ky(xviOCnRZB&kyC}y13D0=>n2f=SWfd?q7|wn1?hj6e z$YUhdk{M>nEoV`O(+yWe$DZ2#o#>ny@T|#JPSCH_9^f6hSH;)p%&8YJ-{8^*axzg~ z_bZ8)3r^?q=u=j$!+`3dY^s0O8>>}4eP0-~U|2i|*pdroIGG2#&4Ozb6oIRThH6~g zGqkzKF=jyD-a(F2?miXLTq&v`$+j5o%?2YR8icPXGcltt)19#CHot_m8}?0LgT!?W z7Y%$W*Y$p1G+cfWN;ll#H8FK)2!6JBeJsMmHe=NF^f@EeD=Iap>L)e4qyouSj5Rz8 zPi()U4FNJILS}^mguDjMS=WJ8A=M`7t&$%NUuqYm?QpPat5obMA-dq^9E{_4l!@}o z-!Zvj6CE_y!4it_XA&0hQq%$u$OJbMEfxg0w-eW=1UwcgdfOvg^D6@ydSc={)#tSL z#CGQK2KY?<2_La=2ly}89w_%s6cgQPgz6)=w~11@lEY39^pe0@7l(w5+#hp)GlolT z&xXKzZtGS9FzBK+ztG~nrbPEbp;we)Z)glsa^iM4z&iq*qnXx1;yl21ghm&9-W%A4 zSX}#~QsQRKheI+M^v2A~itvJq^G3>-)S+YkZw);D-5sst#|fjyrkyBP9Al>&H91bW zw=1f*S{}Ti2^u(WN31c1Rxpqi3xjS7&dr1O`xt|R&4S5fsWx24v~uTF zSl^g$use;RZACS>l+$PRR3VJ&=lGO9_a~Q8s^iOk3PC7gj)}^cW$}Zx(5pTki_m&) zPKFWC6V$ihOSZ^2xC4ho$E^7?k!IW`LGd5aTBa(S!oNYlQ7OJUK=)X_zr&Gld%7QbLnWFFQPCPj z*2Z8;4NJqa0)Xvcqs`C$T_m#`&S{H-Jh_b~!;%8xkwmSf)LUj#CY1?3!zUrac>D~6yj*96=O+2KQ0Wmk@9hQ@CU%ikk*q>G2O^Q^OJTAKx5 zsMGon9jf!|YFJCb^2sss3>VUOM)u}>rx{O3fMySVb|9rLcoyd<}e!g6zAA$Sp zlCHhLnOFRY&$2161N!2v*!v$m4by-HPyFoE^lz~~gTkp-L8nEf3XtIs`wZt>4g)q= zLBHYS0xI}U{XW-b5vuH=ONU)Yt8;U+1)_ecB<#mE37KBRZ87A!GV151V5D<}%-JN= zhs$6R&z8pdaDB0*^TT6 znDL^Lx(kC&gNHHQc%q5<5{l4iaNOt;(z@b4dJs#Z-X^Dl;a>ycSpos)1x(X`)KUqM z2h|U3)Ix+Gayx{Iq+*h~q#{3%b_U-B0pW3?kiSyl!YxdNAH~pocC(#ALDGRsI}8d* zaQZ=^7r3pM3R+3AMcsPykp=|pE(;Eu1yS+E)+q=hq(<{3kG99vk>%LizJMwRavc%_h@i5)vq_ZI5y2 zYLf#G9yP~(hsO05Qm%Y%srOivX<*v*Cs5)LU&8qfjmC)#cvmNB@EYid$2q=lh>lwQ z1_lhk@}J#`Rc*@K*j2Rw4eEDWY)LfWM3D;535N%X@9^#f z{@0ii?L>d}Lxc&{AFz}=3>*xr-h_)byZK ziC464OOx+l`dODZA0pw>OSGr2t+fV6(P6N=ewLg@-&^*y+RZzfL)8y3ow9g*6SCvr znd{vEz*)?OzT2wIUERyw^AG$hbhQnmw8I#mw3NlTGNQ4v$YT2pwgq*V_Cl)j)zNcI zEBc@{A(}{IYT!@r`#FM#WM$esDT#L=xn);F)p=2aS$5#4K^HFSsHXshmW58s)}N#K z)T5=YO*j4P$_BO%(g1_7?w>9@K_;L#>wX273i+Kh&MS1em9vK36Jjcg12BkZB_W&B zwGJtU^FHpf>-)?qv0Yy%n|oz*In`^wCf@7h#``tuTwtuSe9S^SZSKSlTi!Pnr39S8 zd9xkV`>_VINzAn5mDZ8!ojAt4pGJ`5aLT*5@*lPDCeZ?grM)VSc*Yx8zy8AhLFHn|DrTW%ev}_1sVbJEB(Olg6{JKX9 zcY%m{7KS#8OW2h1yZK z{g$OtIG0=3({;D%oyPv&xt(-1pg>c+%d?uS0w_ze7GHPM6nPnX-MW}(!(?X=mOk|% zIG08Jyhxa{0XM0?DJA9@)c%QXRY?Ah{qQb@obHL#O2@xT9W;BPYklM)uv>5WdQ)(c zY?HEJ6GaROAT~z*M8O;H7D*RFU3Efb_V=DJ^|R!meCl+FgBd(%}-DKA2@h$gDF4k zzIz~*dJvw$x6O)1nFL^SS29+aJN+QBhr^&F8Z7x!@AOmpT_d%a=tqon2D&#S99@!^ z4z_?^o3?X!1n9#U|Ad&p-uqhf##YO=_nrzeoGfYF#3PT$fPU&nwuc^Omo3OoeokN) zWM|JcbX-(GHJ@>r{ej2*y&X?X;1nl=aLZKUs@w8IkCYjPRxgIu46^SgTvtx#`R_rY zOua^3-e7B;lSLo0Gc4^OTI@WN#lBAa^UFN(@zXxGEw{`o1orTT_y>2z%u)C(e6h#^ zk8a-aADo@R(w$p0#ld$|Pn=tH2!zx_LvXCrE3atVTW=`g|81T8+c^PMA}d z-w3Lt8!(M2=8iwl_l?|&K!8EA10hn^Z{6kbKau)TX|Id*qaw) z_FqbrT33mdG}Xm7GVf=A7NKba5Su$;}N3(TS-f-ysnI7yVdDK zE0?JK-au(I_k5g5VrP~F>U3G*c#H;+kP4p~<541>?@TB(sA~zYq&k1;+r@CBi=7xx z<)M+DgkD+|x(4(8IG=ssNT3vnFUL*Vy5DR?nRm2DnX$uXWPeo}u~S9+oIHO!vGaWP z!Rs=es&?A8>yRY|y*(9WG!3CVONvKxA|Z;-ULZqF&7om&qzEqQasLZFV?*Z8H<0i; zE5HTvE$ZWCq;oIt4m}obqL@}b$F}#3cA|5jwAVtFPxh#AH~kuuX^iD8WY>tn6J&Y) z_ssfF#WYTX)!NxO&u3in@l6tOdRuy63$t00Qat|4ut94vhk?IFNB!A++KzNuIP$K# z5b$%-xhLLGqhPow)Y5Rr6e8$dTent$ufF&EPFx^zmcg{ZJn}rN^!feuWhTwaujrwZ zUA4lDpGuIdRl^i{+>+e~5R5*ex0Ky-tkd11j&Fa}S>=Q00QmAe?|Yj#+u*3U+f1(B zMsj#=ifFMr3PLeqmi>y|sHU-G$Ep=KiV|bCWAs>2TDZ&jg~FNlen&p#>p;8Qf!P)hP0So75yYyj>J4pZ@Ae)?~a#hn}xyT+4pp8qtHs5$13ymW!6qnL%dZ z3eGO@ZVmGStE$+3Q+bvSxLj0k0M#{gt<#q{)CKLz?OBE^W`9-8>NAHf9PDRs@*XMm zYjGGck&}@WhN^Z?{6mX7vde{_T2tr3I^m&n@K9bjo?IDqi-?ZN#^Hl__1k;VD5;0K zI1)~{yEi--Zx$W8kVtvmli$a=b35mTe7b;1l@>C0IO4}G5(waX@(?AEppF=M7mnoQ z<&OO7F7~$x-y-`?tvy_9MXvB`0PeQ;n%qj#1X*p$6KOD@ zckAoL+ajsQx{J44QjeebRJ$+v-apo@*KRkqv|qmYfQH^ies@kD%fC=d66jcE6=aV& zGr*_XD+kqEh;ErTviKkdOj1t1C1I747t+N!8vUy*aOf;>_|{sgWg#@1?9FF1$9Ll6 zs-E~UUf8mOt>j@J*cIPxnXI9wTyUJpj{6l&_|p)j{Jw?!xE%0}u_pUAdv;iiiDR)b zD%lfPEcwFdM#JCp^=vx43UIm3kWk=JVd2qKsv7%MH4orP=Kr+bNpJYK)Rz1fZUv?A zFW>NhK>*y-|6QwTkLig?gsE8v_#(K9{~y0b)H>HIzm5R5)W<;r-iOI68i(6azq1_0 zx!NKwjg)iz(5W^PgJXlrANzy9p}u~mt>2k_zRK^{DH_>rr&{mtq~5|(pi~gn`zEo{ z(uM95HLeGT>+6P62l>jIL-Z50-(UXzB);s-&e{uI-wRz^vbqKXpP?FXyBC$>vQu<4 z*|Hd(5q(TPU{+y1pz_H0IFqU`>Skkhp^!JC*cY9nZpE(#(iV87$@Bp-e4}W5aT(== zgfQ!7*#3>B<6d_`*(9+d=ddMJpkViYCeFz*(MinsTZN5rFrrO|NP{Dfv3Vgf2hUN4 z-Kn#jJ#OwKu~Yd^b~#>hds1BkXB#0(IUpW_D5%N#t=#xDP_^GrY_{aWh>Ia*vvFb} zgd?Ewc_u2AWOs&>fG=2~G#Dvb*d^fq3_S4y0Cm#ig9a;+Sxr(JpN1OtdrjM2_^OkLIetY2p6pSoU-nlX z_+Q#X6o|Zatl%p>XQNv^^dKR43w4soZlyjsmdStOn{-=w&9Vp@fF+K|;E;Gf=hOG* zC$0C4z)soo1v=r&UT<4xGYDqHC{$%S`Y0g!>XMUYY0{TU`u50Fn=Pc)oFTxqp;A2A zBYwlh#;9As$6bnzbhg|u!Lr!(#^Fem_+Dhv`zY|bcgx#bD8e6M)0b0JA@~*b{Y6}b zV0H~bCO*N62-Eg1=+lr@|B3vEmFe-i#KbgOpn}VKYa>P4h(Rx*wQpmx2#wFYkU|V+ zrkp%?@&ZPSF^l`VBdpa~QYlvV3SEoRjKP9cuA+$ydwkHhN~lLR9Z7lg+Oj8|J3PQ>MAhSAvVpL{6VzgALZL2g6CObDbr>WUy?qFWeP#@D+~WC zp#CKvbcw$X@vMpRpacQnhWG~kcQ_*UvQ(ZV3SLzP``?d-L(g*zIs=YUZLv z`uA(^t-@A4YV6bQmABzn$EE)$=2-Y-%$#`))>se*UlPVxdTl*5xirGo*cnIhZ`7Tht`3V>O)R7bS~`>1<<# za)(poXMYAsTiJ9MC_ju{j>ny7cLO065=eHd2@TB&4SJwsl;%jk7V4A~gThi(oe7Kk#RN_)098_+>SJY$ zHDz~OR2cgP22sl3GRY90`GBwL7BZ(5>Dilr+CyB6p~sJP6$u{k-nh6#4uuMaqOWCj z0lPd_7r9%I%_U{XW+3A^>JQ*sJkHbXXp?h~vw${#u@ztJ+x+O@_5M{!$j%uV^{^!& zs4*Hl1?LWXJ5(|H4j4#P3QSUpkf38bv#EQSBfYKU`t?ZSc`|w_{=4ScE|AKm<~h47 z$#Ws>8OJ?@y~`_O3o;XDSvN9|0PZu_bkRSG1%B1o&cCO_BfF&8EdgTlfQ5dpjM41= z)_TF+qVjy9p|C#1XAe8pYdEx#xhwO^>|-hWrc8<Z;@AecZl67J zktR|Osp&`9XG?fidJ9)Ux9NU6%2ONc)@`U;U|V+d4t^s^*{^JSHzG=+n0b&McRsyS#) zU>g$lZDMrrLciIq$5~+8t=I}CmkmO9=0MIqF6rxo+~5M)J9D?OfKE;ud=WQWsvll- zjrCjdyI(iuTjERIY$xmX>QME&=BlE9TS*FPLkq3gSj6cMfplDvG9o^WGC#d-r)4LA#T^z-Njd@@jY@3l#!fUL1TM5ML=^o&O9cS}AL)9<_Y z@;BLBt^Q2#nlw?ejQUkE*{^yDfqh#>R>@L1mb;96ZFQKT!|p_x#pJg_&=?0HjeD^L zBSN)PJoSa_s=3V?mhYQ2wk=C}m5zWSqlAN-q>dHuKQ#m0r%m}{*>dWW>H#axom~^@ zcnyS6KwA&;R~2j8czi)6LDFVCnzhY14^fM<8|!j<&ukB9Y>^Aig6gPeUJG7ouzj;g z)dvM77#6lgW!UTcrgj$R?O1WmCH)$;>IqsyHOMt6JfyK_TN(fW>6V|EXcX54tFPx2rVg3_14Lr|8v=*}A?0N~0U*y^vs(v&U|*Iq z0jF^SZ2?E`UV?9}srHWhc^335lL|wyE38wBo3vJcJv3oQQD@QC>8hSpLR}qI&yFlc z86Y7qQ=#gcGLTqv4`?N|9x=x+-Q^w7hm;V92TL9k8d-lwdu(0d$I}lDw;I|8G;3M)@FV%0~^}dKHAmP0@cSf@~B&)bZ*E;eavl45UGpTgITtXLW z+MOL**4l2ZR$?gE`c+^vEN5xcq;Hi&D^}0GHE@r>3@bOIQ++fKZRe~b)*Kj^Z=_*d zGn1hvT|b$-tf~l!qzDq;n}V$%fLYe6EYav*TC!H51zONT`3nU z^okJU)3p-;4~%b(@{=2Jqpcq6U0iMQd*xb>pKW(&TM}<#ir_8b0dPndeUfN$3Ex0A zZ84;9@=R0)Jm_~tiIif$m4VhTiXURO-hRA_LD2&DmmP2)qHTu%){uMR%bRDp@l8a6NtFV-k|cUmV%Fvo2EH2~#do{EJHZ%h(EIHv3#4w)jBN} z?p6C)ddJRe(SP#wiDE_0B}Cog)29Z;;Q|#B37d-6jr|OMh6sLNfuCY4w-R7Y6c02{ zQMhv<)X%lJSLcz@To(j5cTE2aaEIYnjbdP)B@j#_F9j1YR%cQ$cLr<&%SoH~E%;mx z_ur2cU|eY5Ti|~ZT^V;bTPGhUcQ<(}8y|PCKu#MMD{t>v0~7CMU7VMBzp6#w4+0#n zzrPC@Yg_z@Nlh&g^i|9)LCpQ$j^l`)hJUb8mR_7dU%CxE|4EkAMOXrc<5exV*TV3& zl~baN)!HJp4``?odpv1fKc&pOT3GLW1z4h4IHUk2wWV33DZc|Ehg{-+3G-%OZa&!5 z2!gIb_KxbGli4%o-|frEOY=w54dc!eHZt(aG^?tmpSUhVt6Lb4c6H1?xCzF&v1-_+ z^X06hlI_k!1qiuUxaLVzrGXyhngP!v$OifBnG@0`3l1EOJ4*KWQSp7#fV`3%#Cwh$MP1-^ z2FYfUtU^~PwleHMop@$WFS?z6Q%PTL%K%_B#f%5HG@wtZQV&qM8XkrD?W5Y9S~~tE z=J*Es$-Ho@{!+(&drwq3cj#xM?7OpWRUxu$HO(#AV=tRpJoRoRt6*>N;N&zusY(KO zWTy-UxV1@Mk?mjbHBK|8+^ISbaMO?L@*w6MG~l7aE(Qq>C`bPpgIwYRs;ZZiA%mWK z;F{qKH9tzf1hh@g0;LnZUcs@SxBfJf3sMR;;tg(sunr{!alL{V5{AOj@x#y6&cBdN z{TXGDJ_Oz;#)VRMTDNdSPC8rj_J$f#C?Kl9I1bAmO+*E}E$>ZC7Vgu4R+(5=>STKe zV+I7?Unaey%g3zrAjLo8iuq@n&)&P8n9MZ}T({h@cXakEI{1?qS#s3iaUxR-J4|)1 zY!G?388d9}Vtg|3&0FGc^`z)l{HQ4hAG+Cq2yul2%uX?JGQ7MheV5v#jzbhjo+1)> z2X}wTrrCZ8uYG@rPX3Gpl*H44dq{@oP9Ug}B$rAm1UbPG3%ixsAbS)DTMc|c&HOPk|2e+|t- zT`ui8;kB5LBJ*8~fA|rf?OUWTy}9~_nCplY<+fa>Ld1R1xySW)QtQWrwwSDm zC$^e2HZD(Bl(XK!MX7q{$B5nfm|$~gMjZyLYAjhf3iBt^r2I>j1S-(4vze};8PS~! zOSB921z8=94kjbf2Erx+M1D;kI_Y1Yr8!76K85tSY#?0Y~iP&R)-Z`8u zej=SY)>OF{SAts@!f1L9kAWiUq3s` z@3#m-$fS6eNuT*-S}{ut*Uf^e#w1BP?1l6_WE6>kaq*;4zZ`A7kLj4$v)pt9ay#~n zeOE1R5$0TsI!?r!s|S@W|J2;e){=dWy1cG6RB#GEQP-wy2XVw3!{lsC?=KG|>~lzBs}OYp0}|Rn z6dLFgFw)w$axZRBsxWh-y3jp6(=KzGJemZ5P#^yo6+O~g$$h)PTf?#CHgW-X8cTjoQ@Bvm-aGUWZBC7eaAiIB#y^< z)}jL%v#&+fQL+o9+nZ%9PAwiTlUHiHUw1MBitkp*3q?;bLF(61nP+?t^)1^Ixe~J2 zMnc}5AzyJU=l@-?H+^RzXtsay(>3R+%j0r<6_<0a6w2R5^6l}E>GLE=#)QJf?WgLv zv!MLcWg7RFw!aGx!?OpMWQ10hzpL4-fOB56A(idlyHEzT+fGp`YMd71qZ}e%xB9{@ zfdiM34>gZpU%!;nCiHMxg*MY|se7HBjR8HiNZyIrAu8W-1}dD!uF3!o`a@e!#wNPZ zBH+^~{hgOWNc*#2d&{XrZncqmzrNI6J=s|wXA{PzwTt$f_FAi3dj;lxWu*Z$k|Nueku8dGUO9CJ8aP6U=3ZV;#yUfUF@hgJ>^IGkZl zUCi72?HTcVIUL>h@GltL>QOqT2=dF*rhCY;8mi4@Bj%H#k3Pvyn$_% z-mlMtCJ>dirHxewEtgDh=4>w6_CH-AxorK20ycB4N($cX5+pAjO?^;ea$rk&=eXeV z04i7Cm#N}+z?<^t@QKsm~L#Nc&$MhC#REZE)ZsyYQ3( zA)_F5t53XKLalQz#hfpwtyz&zvH@y|EJ3D&eZRdqT|xuDAMNzD`61M2iiD6p>t`V( zrrJ|NYbM2rAkpqP1&^~IQKq%g>IQm!8orm;OTd`6yT3MCjTvJ zpqU+SVFQ%%nBa-*4l=OEj64QVZJ1bjv{e%ampL1846W=d%iQnFqRh)mtfDQdF;_1@ zd`_pYzs@#;;1-)_6sZq^rUUuwUpb+PH5X}BfN$Idfq=wLHM6ahKkbNZ#;3M=b>_y9BwaK$&Tnvxw=ty>^`Xi+92&y!#m6 ze&JP029jcZ5}7>rJ6-fqXye>C{8Ja_amZj5QD(`83v+LE?J90boWVmZ6Vy3hK=9b( z`wuPq$SkXF1qdiE!{s`QvNWFP?85?YEb1gZ2d06D7IgflqB{VH65oG?N0!bkLeAw8 z(Hhyf+?UK=Qt+u5y<&w0YHd23qROk>cJ!G@A}oi8Q~IFe8sWW5hCB zZ^>O2S=F<8IP(EgR{67xW4F%CKZD%>HaD7;hUn`sR2G}N{}~P|WNA;KywO#sljZNqMk%YOe%PF}*>x&@`;&W< zrcwneid&1?ar1S<(mAdB_yYPMV!c}HXUtU7YLufOxglUhp|u`iqT5K@w0@8O(2SME zd>I88@?DHFed40bRF7j7CvoAEJ_BLh?@<4AESH^1PGemomYpk-Yc%qw_eA2kfD=&R| zW#LV73DWi(D@k){$J*94<{VN8$;IncogYN&efJW0&k~*QajcaTgi`c7I%S21m_70( z{VEyHtZ83`B+y&Yi zZ-h3d^=}*6n~1zX*mB-~&d>^QDZg8XNkK0-MT?LBAE!eB{+|kPf<-St0AQz5jHWR= zf$VkxF5*XPk*UIiDX|l6jsXC(&NHt1iDY z@eTS#~}H z#)Ea^iH^)0w+@5R&4cwwhj?$@?$@$sW~JuLLcdlFI#o_xjHMc3rBiV_8&oe)EciyS zRp17_bkr>@gfCo>2`jcdK>Cce2YCwre)c*suWE>2J+99jYXq}Ee*nv5X;yz1*41iO zVODC^FEWvz`u;grEmL!R6s|kF9^M}2{^B5k0)iX@U6cj&%eo0#w7c@RsH54}hP^Wd zB3H?do%5Xl^Vwb^54)jO9Uh^{Ap|ws0r5pdLzm=xAa0S0SIJD>K5KFqk=T@G@NwQx zmHuZ`)xdO|f^ruHDe#a2>S5($Zd*#r5U&%cepTaP)#-=V5Gn(RZ$8<~-7nJhS{yU% zVloZ#ZBk5WOnEa2(1}#59o|H+daY9r?RNm@WoTIqElAsa&-FIBbL^o_;0RFTI4&2G zU*B&sXnJioj@{0w2*li3)9b;1)*u>!prpw3yNzL!(17FmfLYoyngf$hn%zq6q z$aK6jjx@e=YijrZzVl4Ck4kJ#zSLm>9l}*}>-LYlGm;@N^$%nqiVySR*(MsD8C@O)FA{6pB#b3%hpP&gcFx^7Ne};Yw&7 z9LK~ra|@{K0M^LN=@wR?4hh(;oH8%8pE&}lKZsHmL3Be*M^?AAdkX(_u;e-ioOsb% zx8Guonk`-mh&6pRHAuuwbYor2t2Ahy?m_cyq}>K5Ous}_Mo6OM(#W7eLqX;HUXkZC z$(y41itkmGJm1_!5U@}i1VyE(KS$gkDqi8%<-GUE1@fpT@6b~r@UFVBj!8XL#)si< zI{5E|^sb5GVY1TK`0>~y%@h~Zhwbn|HA)Ju9=z?Th7PorVg-vyz(>;ROgjxBkW#?K zhwod4FaGZ=GV;B*Ntvi_%l&yq5J;ve8sF-Wn6@JVrXxv0d8B%CzdG1l6H6A5eViD4 ziy`e`=kMlGHwN~>t(9Ly{rFgBQTp1+^A3@nV3b}xkN{97+g;T z)hvIJZZf`ChSde$0Y$@MYXmJ4bb8oN85>n>wMG9_0V)Q_LQFHw@a~>dP|cKna$I|b zUx^?kLXM>+2mM@Dqb_&TEvAQpb|XqxAL}2$Wu=fc+`nM?1qLXKj;Emhw%{3>gE_yb zbPpAkRryPUpuz)lGdw3R))`>WoPxu1+cvdR2cqlL&*pU}xhQt5Be8c+ICH7D0%+DG zbJ|;B6w0mz*u+cepo<(1E*OZM=uw2#=;J?@97@Rqw(2^jz8-8Ch6pI_KZ9GYfM>vi zZ0;)yM(l+kmt6%WC+~wD6NoI`EbBa^wTQPnUD-d$k|sCsWo-9d&Vi-0P{_ zdL)P4Wk1`Fvr75yBTBx9CB7SE>2v7WeX;J1M=6)l>JqCkw$DIIHLfE=KD{bu2o#f0KzM}LKLHD+V(=uKS#_ye z^TaLkP;YKt4Qfc|XrOae(Ji2V0wepK7Rt@p*@ZwiqM}yuFTefuEwf&&0t}4y)b`71 z$fYC-N+n`I9#M6E6{A9BsQaB5leZ1&`$;#@-`ReY-T`O}{bifbkjzN>cmlKy?@#aq zi7MQaWFF}2*kB#kay}TCLidZrZ#d;I<$0x$tshY0}rfW-Ru6Mhk( zzOsBPN1`Ypp=iIh^$R@}mp@qn-gDWARP`{q2hk|@RZ#uw35(xdh%WHy8 z&_ngr`KVch;jt4Ois~2Bk6oMgje<7IL~IUZV^W7#<0ATv-%+)`l>h#ie(4vNVG~(T z=yZ!(cj{Mkg;QVE<5u7Cs=Jil#oxRz6JTbERL#`7fiwyXQXl%)1gN`}wJmFL0Dmo5 zSZ_&Za0aV8n$VQ>N64sY+~6Qb=s z&Y~KTAn+GX>9A*Z(#KdgKE0A3FNfbOkROi|O-)Y(KGR2|S$CSryNvf-atZccWSEHSA)6|YxreuD7D@;d$!JyC4$dPeWiEJ2w{-s>!< zp5Q^DMq1ft{+or$bZzOrP<#*II#PT;_vR~=u)_zjeJKkj@Jh2b_QY~t_;dkFMuFD7 zXWn^y=y1`>24liFJu$?mJ10ocG;FZ_riSo=2)ncfv-rK6R^z0`9YH3&3Pq+&+cQH} z%zcc=3exG48G)&CuHEH2-2dMHoQCf50_^>J|L6VJ?ZI$Lu&yl`m^!%^Dbt33;t5n!*&V30E|Vp8A=m3~R7ci3-%&faLW zQnK*kJnXU$q3uTc6t-m*0t*u4`G??ypoItgKKc>{t6q0;_q3=WLhz( znSswd$>Y*3W+(JZlrH!lhZd@oY{;xd1@|<69MMLoQ(elgIw~BT=1DJvJ<^C985mXwEfmzU4?T3 z5Uh4uRf5!`xE!MrlIb?qm6z7)l%2QkP6S>AECBpfml2=5Y(m4DEp(gR#CKG+?R~~G zEnv}B+{%l{55UM%IdQ+$bs|O$EOFIBa=%PU=>q5S_im^~3KZmj1MK@NMC7Ng)9P|b zj#gMQ|6snizzsU>;A6nh<4~yPBQqI!ge*3sbDR3A^{>4bWeZ6}367u`CGJtD74qy> ze}J8<93K7o*y(zS@@w3Oe_=qaaPm40m$^^F?ZW%LP&QDKm7P+;n?D+I3uu{$@~$C0 zex8|xipB!(Cf^>2>Nzi;Z~-4MzJYE|3-rOOZ4d9=irhxr+SDdtM|$rlCUVD>h0^E} zfNMVRm4*7bVxz4sF3lT)Zk9hKc1O+d1XTSEsw;k!k;0O{pj(X2@_&-Qk@{^f6R-9g zzd)OH;H#Hizt>?4nyEtOVT76c+m>cmmRf|MzlOtL{d%=2EA6)5k!yb>!0APzbehd* z0{cvn=U5Pr01W9i!1v5TY=FO#b{D!Ry&T$bMm|mPLBVtw;_or|Pv66pf--6Q_1xaj zRXeY3@yq&iT;I}kw8-0I-HS^?R#9UYA*FSUK#K>!iNOn#=w3R4dFb1@sNB%$5SmSA z=#EVd2H~#t-0eSc-}=F8h0l)x2h*^ivd&1)ZUj0}v@lc(*8Y^h7`-rpLLhn3di*pm z?gP)1fXG)~Ex5d?Eas2=*YH{APlT{*zbM?A!j_jG1qygWXCJGv&flDR5MQE0vv{I} zr)*-@esh^hJX~51jdpu_92owhz5RBCH~K@+>6EVOPITkT`7YVd(h=4tivPW6$D7r` zas+Tess=UKQuKd+=L7rL*x(=89W4I@|NkN(f$s32@Ao=r&oWK}f28>U*@Rm0$Yu3u zEhNSqu!JwtTM-L7JI;CPR%R-+#pF5o!Qn8$c$ReNgGAcau|0y5W85Z&0h7?47;K?< zGH|kIZ?ZS+nSxp8S2A_hH!c+k1Q-mmxsu&P$oJ@FSH=tz6ppl&X{iKM+`S}oLRKmr zwiS}mFVkC%D$dQ`%g)|8yAOAJ|JklH$wg-!tD?o^8B$RmWEQMH5ULAcT39ijnTM^T zws)44JU4VVR*xh)mHlX&@S2GqJ1eX(djYg2_OM$xQeXrblsvUO)u{AN7^MyY_%qR^#lFCtyk{WDC z@RrJ4yGMxtRkn|K)2Q6fVGy^cZAP+x>0-v9cvsn`Zl-v`+F5?)4k&7$Q{RMovGl8$ zDtYpa63jqkxlVextDbfoZ>EykO+mNmcDYj^8I`N(sVt**=hD63+bd9a0W zc~94+kEqwB=zf6DjvP9Y0;>M&Wg_xNC%gvMmPtmG#uzopmJd%AXAo|<> z1p1JKUDnDSM?nHrsX(NV?axAriRF~vSK)c6CK013lt2ioK@g@0oC4$}iaN@yQ&WhW zTVq!(etLn3x1V+DTAY16*%KS#HpMD1K*?cPd*bEgUCpp7__NZ$PU;;{kTcyj#$g#j z&-TL=BvO!a-hR|Lf^zQvfB(;K9`#y_z?19rG+@b}#Q&|$|M!@&z@nG(G(aoZdnO(P zGQE-h{lpUaQrKke>h$0DJcU|}BvUzHe+DW3A1*_yWu9|NEZ*xx2kI zj{JLyz||q3+2c%TGBAHHKgav^;jvZXT#LTSm1Rf6Kxxg%)@B;_j}+-QA13yQV;Jf-QC^Yxt#ww_uO~A z`I0;@!a>NtUMZpDcJTU!^ZnQHfd zb`EmGQ%91|%F7bbK5=NW_atYSeQb$gv6Z&I<`gbG;2nd!pV{VIBfZs1I4wWUuXeT} zaMqDQ5qptURw5s7`TV&u8?2B`L5EL-H~{Qlyjc?zHzYFUAo(wVwiO(Z8o*x#$vpfQ zK)vRcSUZ+#T$dbI0mRZEGS``v;+9q~y&t885NfD}QDQ!;stwKd|3Ro6jv-mg_r7^{ zs&yp_Ceq79{4WAZTA^@lKq)BGOyRUlVS> zib#=oa%Oa6f7l*ANQNM#EqT)XB7Ft94(! zn`Ana-1CD@Y{S$J0*y@TtKHAl_jKSy=>#rOx8VQE9-p?Ohl@WO=xMN$67YX$^#9RBA-KQ!96wj@Vz*1b3uAOayGWs)Pusk+ z@rlRg5vb|OKY^qG+nSg28-a=1i}hB(+uI6J7s(tx^)$}&^?%`!Us-3^DM9CxdE=XQ zqkb%z`?;c)baS;t4ZhxnD%CMw`k==a#})_!zL z8WzMm*Xa&j!D6xM4zmuK8kU1ke_<>CQ*LW9@00!H%a>W~@&OZLM)rB6-}FJ@`|O5o zlf0EpnR$a2!EsF9vsPho?SuqJc-;<$Sikd{VA*gIvs?^e&@rP^I_&Bq>j33T4X{>HkE zv*w{MTL>IOCET}$Dz)MudoQe^kE#os=+*Ai8x2G(N}mOhsV(nlk?Y1EdZosLA8&wC zK)Nw;^4b}Eckj4xMG(T$>`(k>v;5p7n?&1&5ZRFH8RGu){j;>fUVWC< z^)b!}QD2C#+OdK1-}$#_DF&WGkMXet`m2VgQuu@g1fe3~jxCs<4snJNZ(SKc=mrTv z)!rv?Z>AB^6q>J1z+P~9tNtkMF*K7xY^f=Mz(b$Nj+pEX$;n#gXXk8lp6uG{9~qNN zi-8=sFD7|lscrv6k4b~&oJ$e#aT&qiH=iyNczSXBqP4L&oA;p49KGua8#}Eec`l#9 zI}hFM?@Z#UrkfPq6^xQltB9zYTcrO_?nmYWUQ7o^|2F*z&h8QU|5nydj4F#a!+&;t8TmM?!q}$^?#0v&u#$Fr)Aku&L#{(Vz z!LPD#YBgds!_wQ?!^Zo$+sFICgP=cosg`m+!gnWl7P3e_wUuF)1RYKd&P*#>^k7Vz z1w^bMmyW-ghRKma90M>;-K2mK>*W7}uO4gQ8u2Ws(3WRC%6K6Qn6#s{k<6}EWxY}E z#XD!=&{xJz@OF35(P+Ei@^^O`0b@B+$5Dfm^BVyJE$!{A-d0`Jx2hu@9!V?TEgyEF z+BLXtewR(4--*C zp9zi`-vHzRaHv9`0eIwdSHQI=Og`etfZdj99L@=x`Qb!kS9}tyZmh#C*WN-Mc|e;H z5FhT8#Mx}Zlwlk^(rv=H;?I;Dz3OHS}kg0+;zmb6Y{Tmi7MD5gF$!x5$mB!{-o9Y3*b<(^FbELb= zwyH2lMQvpcDHVip1}Ndcr;k+Um*GAcZp`}_+Whs{iwGQ;({NpXK%j=(VPv_mt6#$M zzK{Ww1-TjyUf09cBj2CL?6`1D1*#zMqN>gFgw33fXA9G9ay=UhAB<6nmP(kN8a)PzjbiJ~1TPQ}g z_45*X)vWBL0VPm6&kZ2V1oeb7Sa1upjzlm2nUz6Mi@I5qp)xc%aO!YT!UIW?c>o!e z05ZP`)<-NHJ%(ODBD}Wq_bX(6^Y?Tz1XV5I!Y3l6=8mbayo2;fzfGuH2wdsk6PJ2o_w+Sa!|5_C9)T-YH;C^3 zQqu%<-yS|?ZWI`bFpminoBxls5`AkD1A`SXxPF2s(_0|H4(iqz;7bdM@8Ftuab18D zngmu*XOhVf>Nm{&5AObuKc|vz0S?gqqQ8tFAt`G_n7ClLr!p-^0wwrMQ!q^rXeMGC zB{BSAv6@H4XeJV*?;>q_hxV@LZVk`s7xdd(4=w;%Z!n{za3+ukYkyV1%MrpGWdl0Z zN*S337gQ7AyMoC_>ke8F(Xm)-4Hcl?rmR>pDhI+d1fnMZ?j^f;6z1A&Et>WK5=;B# zw?zV#WA>jNhZvE7+LbFy&GPL(y_G;0V#?=@Av&T26g^Xhb3 zOIu8N0eLwc1cUSu+8oox`z^D!doZPQ^C$6bU+gs-KCV6>BnYA$bsfx*lmY--4J>bl z4ca(^!W$t?1=qh%wDtq?A)Akd&pP@dd1V)$2UdR#6)#1Q6v!#xWjkX&HS}0U zq-);Pb5^x`>nY&g!Ll{ztKt_XW8yay;vGqmy4xiCECt_cKK~WBEeOp%Rx}oO$aj`& z!8@ZmwY=yrbn>Q%ghZToRf?Efp6*A(g#Y#trKl zyH}J%{W^AglUJ~A#x3suI?k-I=^Jw6LyWzmR+^n1mxGF5))6({5V$E45;6a(l1b!V z;JEN(wb7|khLrxCG$gv>YELr-s}7doY$QP3RxHLkI1@Fp&Zi>DD?<%{u~xqfnO8BH z_%A%thxdYU|FjQXcU7TfSXV?*U)7BN)^0@7EkQ|%4m*5iK67~n0~KGFV|q<9VXdQZ zYdi|cxRtPE(}b9}EVI0Ay5+utnm(j`P>s`9hUdPJW_;NhJ#ux@4!OU>t_TVy7_4ez z7gUXsP!*IDCP&tKWTp$)pBzLsNE&op*T9lULnjCE5Bz+g;E^u1&negR=;?)td8YC!!k`1xAn6xyS=SVLAEgiM&|nSBzW>j! zoe3!S27!_moG*1VthEX_DQ^*BDFY_vSq{4}lzs&!<_g#{g7F-t98#Wfe1H3qk*I6_ zF+=oE$xac(Ft?Kej8m=IP;?bwM0X8SMN&Vy zZ{j4-yx~P`oYLtj9zBUKcIDTl>>SXP#usI#Cfo`PoU09v3&0tx_}Mh)iWn+1!A*&q zSdVVe-r3Z(MkVk*{*-k1iskTC(h^zs^4p^l^qJRQlcfqU5l)78z&!I| zl=qQ^sq%KdX_gNp3t@)`AvD2w^lQ`_GqGQ zpkL1|i-+MvVH9(Hib)(S;ia}b81**Pul#KG#OB<;;f44UHS15R^tb4k$-MMiJrEb^ znE*2A-Em%__t8A3B-guG%9OZh(Z{jswL4icixe zmd(lNUj6aS%kN0qvIP!UI#>e`jO@-2sHEVNq%b2}H1jGVSmT#G z8|dBS?6N>Sx^c0x2)K2bu}d3t@!_Y-Hnc@X@)G9ax8Y-lZ$0a3cynN9*A39>@8lO??s~-}W3EF0wBCc#twD1-jAL4Zv%! zNu*YPtVE}Jg$6j_Hzcfij;VbHE`UKFu%5QNJ4?MA{{IPfRR|%wJ zxcr%~5P$T5FQ(lY^rF(0^^n+D1N4ipm|!rXGtQCb~DN-21y zqmC)G&>8^$0Ak&5z?0dSkE)w*wXcuD1Y4v6Fb$zwd;`2^K{_< z53K;!|2Ef@gJ0Zr)t>qV?HO2yb`#)#DrQq}JQ-1?h+-3yZ2qd2(?R2r5>XBiMR(sn zB`e~09(Nee{QZkY`+~EL)}s?{yFhz7LI!a8V<9ex>R9`olVO3IHAS8^zMR9wPxAhB z-K{PyGAnEKHClFzMh-GIZQnaA+%d!x*S{jWMF+*E>b^D)Nc1 z&iK0v%-Nwg&5d2dSB4dY7=#4B1WY)~1p)vXoe~s`tH7>!B z)j>KslD0qna`Cn}B36cAG!l)_iZW{42o&H#v=78A5=ww@G=rW9g$LmsC&xysZP1ii z+w$kqELK;D=a`7PFpB@Qr_HiX`rC6H-dZ%Ok&N$5p9s&l*2x~U+9KKjlN(lXG0<|^ zYEp}?DDw53H8N$&9Y`KsMvO?X1mYp$P1ZLFpUg9IQ@HaQT z>^N#+!o&vHd63WXmT?`O`%o6V>H1TU<07KWFK*O>P8h^hLP{)+hzQ5{5x z>2Y+gPP&EnY+6`j_4_aa$`iJ?9f3z=NIIiTw72XdC@mR%N54X@geL0hvJt@<5vWfn z5!{3r({rMBs~cC13Bw3S3Bn$uMwt&Vyx=-+#R{C|^-kQm60JO0st%cceOJlz75sgUz_>4p^j(*Bltyeym z9y70ouS2eZVolgcDy_$hy^lpc&KPsRF{ljhGtUeVEG#UjrDWHXldchRGseI4M3%|a z+~-d}e?FUj22R-78?N_CjZnDwYI;oBvksNt_Nq zj4FlFfb)gwEM5h0V{lD9Xq!vi5~G|iA+Bv&=u0YC)t;`*&?u7Ix*)@9EEJ06VEC9? z>u9#+k2um|xZ?GgVp#BMT-%=MUor^_G7|-D_~}-OS92J`!EDqcN#qeUut+z3R7}F~ z%Ts4s)wR+Lw*BRu6gw-o@NUS5Kuc0niZ1D5pvr4EVlxK_AG&rgIf$3#I;!UmBrKEht^jNV{$?2|w8nTB8r4t;9QX)?eK7#!_Xs zo!F^pIH*~(6pD%FG>z97+cSbWa#*Trx_8-p^fyi~%B!;*Y)CnlVQjHW+X+iNEoSSm z2_mQ!$A|_flscX9!PnK5M755n6+r1Aa5y8bQ_JfAQ^pHBo1Htpn@kK`V*&C4DH*s? z8hSD_u#{{4$f=G+TzDpSNbPtW>D&Ju=+njwT~t zrqGz%Hy-3HAk-=u;AVUzni|B!CdMBq9`(Z!JL~~h7#*qmAsQY;2Q#l8Xy?uA@_x9E zAEVn5e4mLV>yV5E9w`PCo_*UIui8yd-8=(2SJ5ZBKi9jYY-e+6a0Q2BGL?547x0Fx zB1*+0X(!xVxil}|b`qV+VB3be^U6%y+yBw*&0E)wuw-ZTZzCRVm|h0uP_Gg{Lj!T)s;E{vlwS;NM<1 z^*ujWLchTG5q_=c4@V{>Dzrn=m!?Xd2;^^$w8CgKzlyq?ErA%BrT-Y_LQP1QiHz&6 zj(-!#JtCJ~HC?imF@rDRi3<7c_(x!Pw&x`P9#P{>cS`axo5o!TD7QmRH#=7w@#O%Z z!sSqEAxv?A&Ft-g=8OXpjw`&nZ0T?OIcR*C6gU-xT)m^G#25-h}+@KB@OJZN4Dh@hf@5UA_kirVBg3 z4t@x5>xK`~T2^d(#rVqm@cX-PcqdD*wTWkj(tE%D`tQh2);>XxWWc~b(^9MBe`B+O zX8Th1$<;5DAj-U$KlVI?{7&f_X*ustHlgMl%J+w-kn^@32#*zl1~ zrphLC8}z;ST$9(4HaIuFs_&+AoO4?gwPOg*G5XTTc8$^EV8sVa)LTJxh2}SI{|C=9 zI!Gc5wR6us%+7D3EPX5ZGl}|tl;Qo4FEvV^PJROPFJBa8zCogYf&N_R0_yvL0{-Ps z@ITG7Jfg%efVH9dP6&%xQoTo?cc1sl>8kVozWey=)5{IkA1HlM3uMd`YUBB4cADt5 zK2Pci8U}I={3?*fhHAe)PCM*yI6F~qM@g_MH>0)<5Yy0S`vM=U9O=po5I2gZkNehF z8h2(&p6PtwR;@FkA4hr;xC>mcpZVCOy@V~Xp8#I~+<@vvPCp}+3ru|(9*jD#JCM7{ z*m1CU8)!!B7q2DuprxKS)t!YK%j1#F+`p68=~0Piljn4@o2Ly?VnB@9<+URri62(> zJx%mKK`X!zoui~NX}{eN{456S*k6pj7L2JHKV8Us{xXisSd z#tzA*HwWg;Z-o*b zhNs1z#m3l)Z&%AR&y)<@`jINZc9;AMLN&VnwGT2pHe8zxdyX=!gO^-C$^K!NPx*=Q$n1?<|_Mz zba9oItO78t2udx_Cy33r?2Ux1{`+e>KUVhhqa%B5uaZ+jCGx~`tL37_Uv4MIvwx+P z8sb{PJp9o#)U`sb*Gi8`4o~@dqNdpAk}G{oWh$QQKQAi0L63czjaUF-R~W2iK|Fku zB7@3KAa*Z>xo^Ss6(l$E2;n4xD$8o4uoS+R zFJ=GeRYnj($xM{$kww^-I{W8TuILyX%sM4KN>5|V#m+ntUZP6 zfXmWdjf@*viUM>wyp|R(p1U$TmLE>v8$j0-yNCgU^AzefHq39j7;Z~5KIOnLP6`;$ zAokuFP7{@Co0uhK-fn?uP08pzPEJ`QSe;J~!3awcCn=P$)$Ch>^_mQX6LoEm(VU-M z7Z6I`*GGCrRz{is{hQZu{t6XDb;LP(*Ke2GQqoMiVD6F@CRuJ!*i3*+(iB=8HgNjF ziSzABPdvHU61TakSpztU7_0PytrvhyS<2C1cdp-l956mtwyeW=cy4*7wI-*!| z48c%+dzQ30OAox{Tk~D7XiKjtvv>&I??u?MWZ1~fX@?(ooz{e&nL++&DxYcXg>99J zM%9M*Q9_8;C?8uj(^EzD{sFRnQJ*|Eu}u|UH$wi?@#L9Sf+)xs^eRiUOAgqiE? zn~0?k$?517kwC)LFr?zg>|g+rA)``C?QXD8wRALU=Hq>(DqCtvvRq%}60_5%ZnGdrZm?n$F;e@?ju4`0Hnhr z3G$KYVSVJtxx+KFW}|7AMV+}OnV4S$Z?!&VhF@4ee)W@7#nKUNA}x%aEHIWG60vIB z4>a|_6jZ-LLlEqnxJH%ob}MTUQE(gDDa#5p{e-V#m!Qe|4rFHw{d-q=WH0j%a|M3gr7~*{rI@qf&2l33R=p7CyNs&N4P1VA3+va?ZG>FQ$i@13 z_WNFUTxO*AkVe(E3KTLW<^WXYk_{%#U!8bTTu zODbcS>O#v|y!dJs)y#x#MIlZ{;VT5sl8JBAdDW4)N`QE_(Xl}84sBz@rIvKT^`JSf#8wY9@?Dt1_68zal(&0$Q!RF9nxyi_Yk+_j;5HsvxR1 z$a?&z6(B9V=y`u#I^nO9VwQ|97xS^0{cU)SDoo-HWHrV1sxbw{5jta`-E(M5@aH3! z{>=$Vhs$6O0`%2!dU(}TeA^!sCONtq7dnU*WUa^-RzPXVr&X@9C(E|KPc15kC~!cF z`lJf_n#nOtU8J#h)H~bVTgQSC7Az*96`;%s0Hat1TC9Wi2pP6uLFSjTxuQh)Y(|Dg zep94fRLMeH*|h8pju=}Q+$^2`shr(15rt{ln*S{rhugC#2x5FkpoQ zm@upAr}y~`aKtlMSby-15Jwg6y9pI37>63>vS8q)v}1zeWf{ELA3kqayM;x@L+<$45qM^lDGwBP z)F?kk$*Lj2b#vP7FH=1J9%J^tBiN<@-5p{^3bQa350hUCr-Tg~-#rgZ>&_;P-^7!X z^{5Q}u5Bg~vhu~_sdH)AufNEtvV#u)?N-XL>C?E4EfR(W1*J(Cy^*p6X?mpm>D0x1 zFvb*guIhESYKzk_rDGTeNf~+0Oc897=6J|va&yA=czGaHsWnUNxcXo@J_BO`Eat#- z0&$ntWDeR7h$XA`Aj$m!^We}x zPK2F@C4l?Dw+wd#lP9xy%2{VDTz#i8uouxoMHOUFds?AXU1i&srXh>~Kmc4-tg7t> z0F>!6A5u#AFc}|n4+)sWeLP`SI%~%8ioS@N8pKY79!G7xM00;mqOPiy6b`=yQ_J%< z#Avg@vbT3`NJ9QsT^hU(jg|cFltmZV`+9YLJWEjkcjS*|2!-t91v}Buj-P=ZPbpF>@l@z7v0v00EGnj}}8Z|+JObegD~QY&(1 z4Cvv$Tihpr2PGCTueqp%!$0*Sn7rhwse< zW87(+A0GANugy2H3i4OXpx3mhO>VLA&UPS+ht&N=J**qDJpWV{S!wtwd0PrT{p}ns z3u&vU_B_lzit~W$+^^Bl<8Qu(?bU-Nm5$6x{M)(<44P&DphcZq)RkfV6}pkO%9VGS ze(sPkm+-xnE*nQ0Ddj zVpVs!9L|`zJp539l!uSG6%!ZBvBV0M)kUwqnPgOZqvx&;3gH?`ifG-v=BVW01)sRG zn%T;Gl9i9U8PMCKm-FiHSEQ#BP} zb_Sdlh)S6;n*}-q`XJFL4&XWP4?cWV^dPnJWVIg>*a+w8MgHNL=F>so+Qf3vj7ph} z@{4>wN9z4~iUjaYlL}Cjqy9cFEaJ97P~7`@s5nsQLH#1H8)*IWoj>en%*78yh->+3 z!i(;^>xCfHFZ!x^g}=w}sb0SbLSKt~QU3+-Cs}`fecAGmonD3OA~ml9!f9MFd{JR3 zdo=VDoo3jQfFcQH@q-WV^+J$OfH=G*_;bt)l+yA2q1Zu`2;m)mfqdLR*cJI!{7`>7 zU}I2WEx7-@e<4v@HQ!8h<6D31m%dx(dNE*RfLpYX^f;}VWPGG53*ms4ei(?wnfD#g znEkcUh`}z9sL}Z6c~^;tVA7U+dGC+v@7`1Xtz<6;X4oS&8$+#1aKlsl775+1*E<&e zB2njk!d!cYXchr7Q368>QUz|;0_hNHQRf4wO;2C`Xmg%^4F1^rK$5bC%+Y#24_1lG zI9mzX7ty3vt)l_Wb@(QGL!a~+A0W2?(06w;={%pQhOfwQFIlOhlfG8(Dm_{X*r0IX zl_nJKBYQO@arwS5tz6)D^Wt;;xgnze;){rzDZ!puyVOKcmXGTf9Q{Y}QA@z;pMA}% zY4}7|aHe?YZ(aD1zs_Vcj9s9OobR2DTM9$l3e}e~PuN6_mlJ^`V%8q`Q!SLtfaLzl zR>e22%0YqR@s}+ZKKL%fyjxV7OBS;&@-#2pN63e-t4Li?ru!)Ysys4Q)ncV|A@2@J zAE-~q?0DK*-w}4d3TV-JRnkOea&C5~<%v!pS0+xO{S)ID>MOPCv?sdHzdCQHx+!oB zWCW!Vj!5fJuU*@IT0AI~#6m#A0M{g8cBEk&aufGIYQ#u}tr*2$rEnc!q@(voWalVq zX#>GyL|O6IfXo^C%(Gun!r3*kzlb}#7`4+FYj25=b@>pmh%lIAQQqe%uigWj;3Rj9 ze>hgXn&M`8z&;43&h^Qn0O>-c8Kt$taLR>A%cgp9>3$c0e7fR#rp2iT0Yx6oeG-iL z%AT$rzQqqkSDTm{0_nRqM7=#-$bz(y@fY_&%WOt!P>IBJQ5dU+_0~N^LO|ztJMi6*`talS~NovG+ ze1Nod(5rH&b8J)MT6k6V^YycyzihnMt6Gi-y{;=C{ng+lS8?9_z6j6xc3A`EH$Gsg z`=vap_pYN~J*ZV2pi`QMXv|s{hZsJP-$m(M=XvO*CNM~;k0WIC>MPma zYwGeF$UvQEeXvhWNFU{|3VSD(ZBOX>2Bq_*A+4ql zRYg1P30kX1@&+;?LcHKMQchPGWL6(CzVcWKFwX!@r0N-9nrhCpPCEuNZJ1LW7ma5bTR!YMCSe!K6l-_>{x)qCk z5*1RnA*5R82is-Ye z+jpS@I*?dBN%yZQ>aH-$_bLvzZ4dX(xT4)RrPsr(pT4FU-J4+4hIH=R=i}aAHv0U# zoTPU9ntuXTh|yzuW3QG<21~vf<Gu^EVbCijw5>|?{)Qqs!Y5q`QF{INajJ^S)#XIkM12-Tj@6Svvvll8u^~Ch8lXN z&d`lEz}^eN8h!WH{I52=K$!-@%{v9+R06##u3SXN>8;jAzNlhWPM5u4eRcqENB2ns zNT&SCm?h9;gnGU!u)bKF*UXT>M>D$b@E0x5R2YLz-*>Jj1?s-eM|-XJ^hhIqbt6=R z5f}1dHm*macd)&7-Ul@zv$C#q*mjM0!BT7zL87@t;*t_*TiI-gVUgY*9`fir%`m<> zwYphm^?It{SG_@WG#R9q5#JNuIMZk*P8DwzZij{%azYu(pLZs<80q6H~qvoRlQB?Y~9qKs;F{f3~r}{IR?O z7+>JNT6zPU+zjgB!Ma|B3BOHq)-%%C+6&i1`o=~22LB0T`_=4Bm$)Y&O(;a~4>12t!7C;1=r9 z&S`cZKj4WYD`8=hD@~!)W%4U+YBnFH|7PeHjcjnyB=3=kY-zKcNhS@FqIVVcWv~XF zIeaSm+im=22^Y=x@ZABT(74_MXI?@&6YNoG)o)SP>DD2(D?a8%xgJmbKK)l5!8sSF zLm_UH)s_~+!C^W!ojEhk4?Luv8?XcuXBNwuzjK%_Ts{ymVIu775H)SJMhGnNpnV4j znkgp_%3=QTGi-9!=l77 zp7TKt%Dj?erKmb83GJX8T<>ug`!r%Xs}FJtuv1D5bo(};q2bPLJb~1Dw+_O5itfKe z;jt!}r^%s)J1+offC*5I^$X{>1b!(XV*H&AvXzZ{)dAAV=Wn3%`-LB8?_b@j<+6U* zB}aVO5*3*^Z*A0Bu>ap|3xk&_Tc{Tfo#rUA3|;F<)0(go;Ibtza4?hr7Aq^L@>7Hv z{nu?=Y(ddQzWNa{UY`RFj&cfP(XVmOtfnEx$|hBp8x0^sAl0&z8}3$iDZ0ar{`x7u zKLTeK{F*4>D?2pr`aNlaw-VHHqz|K}HLxalsAsLSC6K{8!^wWw=jXjRME$wwIf2;q zT0TAl9wt^-0KGEVzmNM$TZ*&O=(_ARRgs$qG5@cLbp8%4fs|br%c3!hthgrI4aZNM zMZ>BCj5z@FGFN_EhkrW-=_wk`H(t7cB1}#UEPJ-4Ds-OGUh03viWorsN;;Jc4+`$Y zamNk9JH*9d&kZtS^zFPrtF*rk6weq~KV;YY#)Mth-#W7e@^yV0hv=8Z_A~&V&da0U%u=O$6wZa2#MrL6?1{tf}GsWZ3)SJmpRGzw2#I92d#@v8J% zQ~i4h@`Q~5{Y&Ou)l3*ff)uj?CLm5Tw89@6-_27;P=Rn~{UtDNIa?EQ4zpp+FT zVTeFF#m7EfE{D8Ek|W&x`44~YD<->;1#kSHThE-@1)TXropW5ELYhx-NRT$UUMAi$ zXGj{KfhVo*GM5Y_niEHPRFk33k%dH@;5G^%P*C0Sy?D|~9udYDRI8m?Xs7ZLY6%KH zCVa0`{oQwKrF`D5V|utl5#k{%8M(NXjYczFDFAK_G4tVzR%GI`a*Cu3>Z{d6JMOP` z>+$2gtofmOh{Z7;aNJuMMK;jfyEzf`q{3IaYblS-XMF9MiJ=Z+Jn*^r6JPz-Fa`_A z^Pjvq`;MR*n2C((*6#ebtkd53;(VOmH&D+vu(k2-0lI!hSpFK{fXQQh7pjA5Ru;iv z$k5`+Fq>yU>)3p7Q>Ht$mbd7`jpoWF5Yhm%H2rs@0qQ!W0S2o4-<4tQcZ&e5pr_B5 z83_tf9sdk)Uh9WApOPHjwf!hCH3-H5c&hnUo9S$EtJHA~aP!+L>gbDm}EKZOB>td68z^bfP^i({Ai#3A@y zXYLI|2;TTjLEyY?N4#4=-AT~Vm5HU)37w^sx1X0&a9vRl`@ys$yDe63hJHWh{sT|t z8klI!_$6?dKBsa4uc2mzegmMiArr53CnIl>@j{LOc7bM3J9EeaFIhc(2GuS55#PQF zzFjLb_jVg0p$xr5DH>{ZKbdn=^&%zU;w+J2FI{Cy1OrV{R=SWyGnh{uhXF5{}V@Mi{1#QoTGt6CB-M~?eX~;K zocWH^@oW(y!cJWyFFg&Zn3(DM@YV@w-LDK9Llrww=iYP^DwrC;uQ%Qt*PR>p(72Hi_Vs4Bzbs$Z8%u*gVMmRH&GkZ$rD6{IswA2)Q2!ZIE_ki3Mk2b_ol26+3&^T@vm|n*NM}moge<8M(f-wm#*~0t^iu8eOowf0ifHw3ZPoyYvw18i zep{7JUD52R&>i-+JaB9AAX@Pd6j}XeC-AE)qb&rQq*{^hw3&9g;IY8lFnWEKs%BB zcBx3|z+$1!e~uznG`%rA@F^kK>0TxY_v=&3>9@*U!g)d^R=t}jI9p$ZnL>S(3}%m|4P?ix7HdgO<^ zTFSa}zbZ+tDNZnWV6&yN`@$jv=PQQQn&dFSF#P!Fl__7tN{wziuPk<_ z09rc+IcP^h>X+2GPi!ZT@ELrgu0Bchd@RPN3t;2U4*Zuk=je9WSn@cUeujEg3mUJH z0{krP;c8V~je^+lELj{%<>~{eBBPL{x$I*lgrqW5wZLZ!|A%wMI*sap#4c%u`K)+L zK~W5azmYv`jzD&F%>kv#ee8?PCd76;K%i-_t3!Coy3=9%Uiit}oLY`VX$y&0oocSA z<#zYB7J_UUgc-Rw3J^ASCY)M7bN;ei)FdTcLmC7Qvp%b*P~P#~DRCTV5|)5|rK*4Y56|p+?sx9Y6`Ycn5&w*-mMZwu$T?rzU!t%+ z?fj|X0z-{Kfi6Y4v6N4(u;-MC;o>qqo+TEtNJurM^`C}KxL0FuIt*VxWp}WYojnY-2Eo$fnR*?S(zP(PK$VtCw9f2+Vz!dH*tuz4 zA1onl7m~2LWAUFk?Xz#G<+1fs(k1aSyDZ8sq)yxz*OJmDoV{7gE5SY2x-mTJ~q)RJ+(OyBN&4 zrMkM7R~NF(DgJ~0QABA zs6m$$hGHz<7(0J2wB3HLu`i3FRq!|_!FZKS@ERYK<_goi6mAx>t3y`+{6RJL7%DID z7mwM@D8}3f!=qLi9Lqr#C7l*24HqyYH4#xo?DNq4oTqLFN!SFd<>|VVHuCyNw?0Fu z4=1i1mwLh~B^y+j1E5tHLp?Wf5jCdTU&=$ijpOt-@T-nC8+>PQwzWpw^(HSR%j(+X zxiUp*gj*C7w-S6ayf*0orrQ5Q)jLK<)^$;%-RY!bRcza~QL*iGY#WuNW7}58w#|-h z+g2yJd7p3G?~eO#k6ClAaYogyTI=jOYtCrqW^xZ%AyuxO0Xd8JSd9z2nM^b}LL7 z8Z^kH@EwSF)gjLxqsUo`2(XHvtx{W<@q`GmS*9V*e21LLciyk|2U>o5U-J)PD3x`^ z?~Z7OG)#dJL<>yrz5PHmrvSd)v`hZ}NetPAK(l!(a)KHg^59XXsDMcaT0`B9%i8xJ zRZg>G<;Dzj;Cv^hw?C?su^lS?7|aH&=j5YW)VK>+b8<@*XKT^27rER)We{`?s51JB zVI~;j6&;QS!bc$vLE__Q8L3EpqcTfzlwCE<%CzYa1*wdVTyuATt^~^V#b`>3pbQkY z7U=%F%uJJKQ+|iB+Zc+m?2}6cF0RTt4{>CP!`0D<+X7*4Wny(#-6B~@v&WL~R|j9= zJqj1!@SJQB%mqtCPBJ!-0xL{*&3dJ3LHJCl)dK+snjITyd$jq#$Z4kGrZk%NWRPhS z^e^54KvWJ&vMwK+*^?o*%ILrRvJ`zl)0TqaUrjFObr(6TJu#M&WZ8e=lhtM1x=M`i zKg2Hs6&XV!<4c=-b&oinW%Kxs(u3_5U9D7BkEo6UJ6*mR*SVa5Y!N)@_HClJ08RAk zS(HVV;#NBArMd82AAZVBcTVnm%|VallnBW-ThwVz0gsg3<>Z@J(B%maMoicTPeJB3 z^R^K;n4ppyAa_jpxF8!^asv0ZRugEs(fgo{J#RC-33~;UfA{BK8WNWU>Ui-VIG2gE z#do<{^F!2BXBH5sSKl&o?uF(5kRJ^6bPkd)tofL+PlRs{C z(6$g7pV0fT)aADHSahE`ueTXStQyX)A-2DB9;;KGRZiQcpkwu<&hJYktHJuC3-2d)jLrlvSFfS{<2In(cD_+z88fSCx z(b(8xgN8lZVr1(JZyQA>UI?wpCKrbK3=!wC+ade17a&TvI5OE}fBSIVJuRSi-yGEy z)bUCG*=^H6(m}H9MM3m1^OKdBbyg(Q?K=es8U>8qO`dpT&fMtcP*RJ&uE8t)z$l@j zW2EfTf_tcqLencw)NM+PdkT_!3%&v6`y-MmM&*6&&m2;(6BECuZ#3nr9t>B%w@==! zMW4SR2|efj;^ar=rQwyIMv^$c?CP1lgmqSva2@85cQ`|J(=qmX3fdNM2-78+tYyam z*=3tcRNpuL^!6XI|Q z#(SL@xud(qvtJ(dhxRGoZIk$km*g@{i-*SC)@l*zlgnUouCffyP~GwryW7JY(Z2oR zY&&##oani?WZXM|`E5m=8U85|)Jqi&QsY$JnVv=!a7Fh?4;k{Lcv%_0Io!0s$IsY5 z`tuyrPkpUw#*PGUDx!j|L1%aw3)L=aB$$7mf{7?0y)EGuo8IW1nWC__e{4-1eGAPW zhGdc`e`6u+@5G&_zQTZ=(<%&`^P>+65qbB{J1@DAc}Gw^L`s28vU`16d1ombgqwLd zQ!AVBZ}Nc9QrhAm4ttwSN>s}tiPJ$7-A{U2Fq8c9C_-qF$F$ewnyf1lJeGK*6FY{` zJE(e*utOLM9`hP-SZW4M>BhMaT%ps z!?5m8l=^cF2%9xCtZYf$$8=)>RNFEs{#Im%?DID|^!rQ~J-u$sR{>?Hvy@&Rr?K{#EP zM003iRXzuvDs~ zIoy{Ej5$n>9v0aw)+sn=-Y8EU>UeD}jd!kP{`(l7>i(8GBqh*>6h@RT$l(d~8*v4j zh2}4P#*#X|qcp&iJcw=|l_-9a7W9;d;lp%KfdmYwG3HWDSRq?NCY#fKBCTEw)I1>T zl^L%sI#c1T-&aYinNY1Aqv<;|jY~;uo8sg(3fjBmt=DW- z6({;k5mX|Ad@-_JD6F@+QvmC?bSkMjsw-Puj@g4!Vu~bX3@->&K_UrEf0s7~~)dP5>`30+IMcpsL!^H^`g-88)T1QRPr}*+1J1yy92TDNdy^aX#H@pkG|XfKurlHs#(J=LHnWME&1tO~DKA?( zYVBo1`vO#`i#^k~$a$q8_a5CS>T&yd0$+SwstL>(^9nnp-5;;;K&2*Vqi?544$<~3 zom(X6{UL!QJP8(EQg7&@E2edaj(s`?ehEbDSz{=dK~<=I-V228i{wuu;u}6}w4IYP zrAjm7a$zVx!}|`GEEmu&>FbhUC`cos2dT&ZqMfdOGE#S=;_p0un65t$r&8cb%lJ+59S@o%%dHRo z`;Ki3b6&8YJ$=cmo`_%zAY5bnw``-|em@pkl{jUJ-h947A{aruI(uvPyN|wR^{V)mf&g^)*+_6n2HT3Y)bsEx>7RVKOs4rFe+4O10QQfx7 z@Oy2iIl`;#diVCcPQ(<}|X5Wl9o3;hjvQ-}n4I01ATJ(Ih=U8nP7&@(4 z(v;JvluRA(&OZIX1a^5SWI(%3$t9awse|yMV;PseYZVcXdUfnunL|NJhFKqZ=CW$L zFKNaeyIb0R5r}s(7eklO+mA9nl;pcGz90s9+<@TPg9mAxb$hljpxHG5y1& zzmcCN*<-Qz=`Ey{CG9R3sfX)|R-;x^Rz0(wJ&%%qc!N*`76$YM=a-mZmCSHr)f^BN zeYOH?{g>rAWuDPKIoR!c^t(;14W{+GZLJMP^t)?=IC73XrSxN}9Mr5z@3OBO?+p>u zeTKV$F{T-w!J9lo=(8(yg~Ls;_*=rSRF3lLz6)muE}d;Fbaxf!r;49R>p74wk&^H3@; z%t`-nvBaqloGkMf*cy;$yTM5RYnzMs$9{FnvUc!1a_ani67H~xsXa{F_YVZ^YgTg2 zxm#P5JQ7ys5M}f$o=mK`3y#2UXI2s9>h8tko(&CB=WqFkt@h`yCw4@yTk+}p-rETg z_5Hqs{_hR&1P$*u?60A!;S~SDFWmv8Y-p^Mo~ky2W_~{)Ic|zys3{~U4^dD`LA0h) zVM*hKQj4E`2-<;I_;=KIEW-eyhSIgdkcHZgN6VD+D)ScqO>w*4EdSspmMl5YBmQf1 zH}@RRvGe3i9c^x-8}i(J$Y)PG_Yv>a8}F6Vq}0*X=gXY_H`-jjQ1Dk~iNjdo^jOf) zW2z-%eQDJd?_RpJ#MB9>_;M2Eb!dF;$MLY>&);0eaU>O1YSJdA{Z045r{_HMc8xBL zgE-vEY~#*0&Q0jTXk(Nu(xQLCK}Iu`s~+s9+M{; zj@CbBn;!3fHbY;{V^^%~H%>-&SY@Gg*jH?BtNc$W~?VC+WIfpzJ4*F zBU4}05FnUXrn>jE)*9vDyR!O2F>x;$TPdak_SBtP$mb*ivQ7zZbjN4JE_&0h_8F<; z_P^#_;1c5oUH)Yx$WD(X+Xb)^29&fDIEj7NT&s$gZ32CpgWyfpu%{Tse zh0=A*zhPp#wqn=>dYyKBplBP?*iQE5qMUY+*FQ}->UT5p-J_4)YW7nD}pQP_<_LhqQIu#U$(aDQ&)gPK%d?C?F-c{#hd@KdWR$<{ z982sDe>J#vfrOvA*_9$EBfxjibG(9>22PV&4qTq1{49rp+F~n3i!1S2TpY6eWH;-v zGZ|IpWIt*)R(BrJ*O)l-6zW+`ty#1&rZz()pGq&0*ojRd4W{-OoYDG{=3XA%Iy3L5 zu2I;s8I1Y|m`xC)BegYB@%DCgrX%=@zs^o>*@-GwK$)$X*D*D2*NE3QMOg#i%k|+$ z#Wc?O0aHhT!#4)MUNY?|;NDgFDb{0DHJ)qNLW7)yaw43nLRdEt*9W|a4x^X$+%aph zy=N|msHyIuB7Qjbc0I-yyzQV_Sah)LZhdZblhEfl{Ca%w;y)!13v-(Bnbl7JTu~eS zc?kxM0%GbA#ys&vlW19MSA}{XZVm~=sb+*EI?KFIWyBgr4vec(j|yBccLXwn6XCQJ zqw4?2H*jao*;bk% z`@20^()|hdTs#Bo6(wu!`*B!`kgr!qPnw=ln`DazLcP;X<6l`@mJ|-^mLOkJ!IltK zm=R*gKA&&Uw0VAcJ$KA7l;GLw3Oy3rt>Iu*5ZMH|eltCH)U$+z*I0m(@6Q;3k#Em} zFChFv8C>E58T?&%lT##*qEz028YLOL-Ebutg8XN%Z$2776odu*ut*(nemq0j?Ha)u zp^JG3;I#aHx}m}c(>TdB!qW$1KCMBC+fIs&Gnl6!=_R8g=_Mv3Q3PS*d^?PLWK8ys zG$Ak=94>jqMD&L1?I`FaK^n5hAVphF2nT&*JNT9+unP?A&M(B>hG+1V=MvnE5Kus1 zJRjT}`(EW)ocOW>S+!l+x2K z{-C{`C5oMi{iCVJO-fXNJVoPi5?dH4UZl=0XGr^kInF;69;5icg#V0L&L2_DBEmj6bHw3G)^NOYWz5-wS5A)Z1Jmc8$5;;}83fA2y zd5S-dz?Yc=Dg6JbI4Oc9ZP3j*`M_UEAa4tATwvOVa+^3%J055@EQt%r)3nw^9&H#9 zhc_JOO__YYTn9l8f~r*Xntdz*{=KJM6cEHD6#NAiND50k9zWNLLXqYGcV1V|F^+%k za~0p2(s`9&@}$mIq%>9H)n;W1_L9p`*<4(<)qHyLr5A!n_mExdRx$^(Sr!~Z3BIj&1>Bp>$&V%*l z@^hpx8nxMwSB`2pPPULGWpbE-B2jxy_En5Bpx(VS;AT@;;$ zG`(sQ9xK(5iha~;M;+RmkCWrJgR_2nq215){Y0!-$iz#z=!sn_Q@j{tT-^z^@g`6nL9`y z1ifu6l01f5W?v(gU+;(PxCBrfT`U<**qtMaGTTdIK-<;05c7qoBV_xcYLv?6%$1z4 z@(;1vEW7-TC`uSeG542D=3afIOe+usH3tq^{?~gPAO^((uC3cRLB{MbCk1>=E{;Ny zLpHB+Gqz?yuAR^%VQx(n7jDVgPM7kdhwy~@16}pBh$pR8D?@FfQ5!T;5;u);e-c=m zDkm&~q|=LUeqz8=$2vfa2_LW_6K~o!lF4O8Dl<-*&rt?iYwNLzHfWwA$(APnyA1XK z(=3WA9Bv>jcKno5ScGI90AIy1y^o5eJElPN7X=Pdlk#_X}y}1bkGntVhdlcOmhYZYw{t`k#vB%zZL#LF0pSTwM4Z^-^BU3OhnnVIL z`+wAKS;U|R5UDxC7?5PF%P6p5b|S!k9H0q%OHZ>~4AHTB1n^}C8LRurfchDGwW-ao zslo60JNtYVgcYsptI1QNA}gY}QSmIF5-UKupN(|YlJnCOb-^7{=&G&?YH40#1!dyp z&NRT@JWDwhwt}&T*wcq%`F8IyvQ958SG79Tc!&~_%yf`+sIJ|iwBP@?xY)zIVMX|ayx_}3HWiM1k;*Sq6EnDgDu+2{1T)h=QS%Pz3DA9eqp8`c zv&!T)cZeD1YZI)!#*Lg_pCJQ`LZH&YATHa+h3n0JXz`%3U7@-dvYu0E$=C}2Hbz3t zf{${?0)aZUj@Fn8a)w>yBFLng>@v{dF3`hrn`bMAZ4`xE6Bb}Csn$rL8n3$Fmtd?4 zPA=IIf>f|NPiG`ncUqP&+K6*=AW}zOMj}$Db~+NsE|1(W zpcHJ2Q@A5k&5)(WulK?^GVHR>?2NSk9nlKBecdad)+pet!}iH^82sw7trWCclu~CD zkeKM-R%7()NM$q+QoYRh4Ov*BvWm4%Q8enMZEwehuhK-}F5^q@d;aAPtS2S^cKLIY zoQ=T4RQei$3KsA;*`Pb|6eh!uLyF3A<9lYj5_0MaAhSx+A@=@+5uH-SJB?0=H#D1@ zQ9HnaO1ewix3R=&eNnDqZ_%lm0Y0F zmw0o$HW>P6;m*kSV6YpX{BOiv_7wCVKUG@Gqrl0@IfXz(^t$+4WDp@L%`FnxLP9L_-MU5ugTT{le2pjP_E#ml_o{$x%KxW<$ji9Qun{uwbj(2 zhXVMSwg9sBE9bX$)Q&EooUfx4SmV+;H90XS=G6WTa25f zauqe6?xY-D$VLY3`hWNjV^dXR)Igsz;n@B6;LjD81uBad9Q6&y?wqNm)U~tcL(&hs zf_>Uy6T6@ed$p*>h#eftrED2fB_^ZpG)Ab!w~lrA84ExKS8^@LTnexLaH4@Li}6uQ zZPwI+L>AiXWnMEYgVEYYy!pW};Lw9FjwyWj1pcN7j*i}>#QkY{U-)%kxzJ(|B{-|$ zn8vtuwE&CHFq=6lQRKlTNu|r}Cis4Ovq*h@S14G>Hho&Q+&x(@c7`LY84%zyPOi`U z``FJAi)w@2G`JRoS84vO7g0zI6Hh_#y8j#Y^_Mj5fw@2=V_)l>@`<@X45KU8Dg$98U-V-H)E+tT4XkhZ$h=Rs8K|5)tHflGSA&|RjIB=ho*A-U5lQw z`q2%$EIjC_R$JNYwnb6d>ke~fzKi$K$`XWcl+GPH+)|8i=pd@Rz#H8Oo{OCFO+(|y zwjAq@k9q&wOc-J=q?^znWG%X;bx%kQ1i_H2H~7+??fDRpDImrWj$jyh{WnSrM)NMN zvp1N-dWfbsz``2__L=pv@4W>lr*v4nYQrb^CtdwwD1DU$PlUcWe{Ig;}+Kfe(3Sjl-em48rvS0KRy zC~rx^>l(prWdEK5F#ln2uozhIY$T{m3@BbIBzGx7dp*MI2ElDC|DJj<|08g)DOhkl zB&ZHbq!vOX_pi`8!EH2uK{>)$3@Dwzv4SI@kUc>ETVAb*ZLm}vp}GZEU{@pxIK+C{ zK~4Dh)vV+3qT}(-#aaXIYiorSh^s^=+JZ}G(nMt3kS=9U3qjp!W!`bQ=YT~EAp_T_ z$=*Y4+%R-pk}l*z$G1AUKch8s(Xl0a9E&cb+2I9&E@VSTZ`!dXZrsh1E7JbuT?^r@ z)jK7*A2X$13*jpr(EY7n3t_m$`-#l^9IQWj$R74Cb82pxdI-5Sd|2)4&yZjOn#00i zhF|b^jpyn!o=WY3PTKT4>x)k=Yk^CPJ$*6V5!u}6t z$m0G%qUb)9HL)YVkRZ@O0L==a{~_x6J;KBhF8|?tFtns~%b{SfVYIBM8WP5}@DS(# zO`VAU0j|0K<5B*{2>TDn`yasfzrbDc|JaECW8;ecFKdW`0a4tb;s0O<)c;`M_utVf zg2>Mf{yp+g;JzRw!fRzP{~UCvf02UQW)NWd7*PK*1-Eg){HtNXeZM|>STKKmRH%RP zg4-Eit1n)-;I=vhST{M+vx|R^-B%7}!fS0X|E(cHd5G?QokzFUar`}c925F>lQZ^4 zNgFlo`PkL6rqT<`kg}5UdAUaE3pMp}!$#nR>f1cX*F_M|`KI2E`ycI?6hi9!V1#^P zQsz(chnrm#6S6;Hl2-0FVRi9yeT6O^&!U>67ACXedfxdJ`wc7>I1K!XYL2Mn7u$mr zV^VSy39h&Q1!YKj{TGB{I?Mkb_n!F#=|ApknsXvX4kZnjoIpffe0^vSs2|K9__gI> z!0}O_c% za4;@^K|Mly#pji)Jou;W&HS9Wf%qIg$_q0Ag-f&Qq%V9Ak#h_bYUhxszxNWE{||_J zATX3;pZJLi8d3y(IQ@eFzA)U_MBnP~RCA4ies>>Ge&TgaD1LbT`vH6*xRJ*_01b72 z@zFkq6hGYlK>}X{ZuD^vK8M^m$3A~wIVOIl zEcSdCrGPV6g~M;bI_ogjjAw(tCXZmvS)E3vroCM+mpO*{Q|aMhh#%iSB!^U3 z>a_tv*s}*Fj+3oVzEe+Lmt1Zi-j8ntJuo?FBe5uxY3G})^Saxy`!#%Zv0*oDDA~<3tnb(z6mKHw5$0-mb^>@(cnYPJ%HApg?yie)o94$w?w zblV>Qr6MMg)j`DFseHSZ@w6G_8B(Ks{W}CwU?{{glF1wv2{XFE1;{X<_Ud>IT zU^p`RJAQ)L1Cd<8L%U+!s)J`J%uzybIL3FoXnCcy93|;a#cerktOMII@(dXA#*|jj zC(M$jsY%PV-Tzg<&i*n-Nx_%@`qpUMeOW~fg4R-GcI6Tp-k;+C;YjrQUFeaMt&b%N zpOTWrYpartS+Uh3P73WgP5(_x>>%Vv29$t@LGphifXTz6aInA)j6Jfrs(;e5x?-t6 zj1d66;b|Bd1p`cC!sU~w3=6Cvg^WGJ7CH&}B(kuLxiL$!qXVkg=xZIYjX|%R(W(I6 z$%qTX4_0RCs%jWzTlqf^XodwW--l|3SXuDda-5#~4mBo6j)nFc*m?{2GPoDkW=;oP z0ck2nf2_n-$S+Wc3{Sh*SNV|Aqb8ZQy3`l~aKA)s!yXF=qh$n^ndKf-0qkz3sV0*~ zn@3<6L66{zD8-N-Rb5VfeV|c7E>SED+@wD2&%L@~w48Dsl&b6*if5mL?9zEtN%f+> zDDgW~v;5iZLb6Q5xKA&gC(T`WLyvPgh{DaeA0~lfMp++PZV_+3n~hQz}}VIXGPHQzP*`E0zf zB%BG^URLtktoOAT!IB0Wd1xm*oB0Imn)3Jya}Kq>!RQO|8@a?|UIFfkeODxW*_h26wD*eusI?i>u+_`0c}iuLRZzNmQf+)OE@o!4Ve0UHbzpT1e!;ypczF&Q_z%pctXdxIu&!_}Og#(Q$k1}qrt z!~No+ja74Rt9Y3o-{*m^d5rI(MVHbUhg~bo;$#<`Qp!o5yh!L%t^o>k9ox0!74p9@ zW18%*1X!ROkuk;-Q-2!!@_*LtacapPG$?H45h;0 z1Zxie)-r)dnSWXnE#CuEMBFz1mZ%9anX(h&5uGDtYgmW`PleV4TbVK0bCrm~vf>fc5{cJ+LVd$`VK*vq`S{6*y>c zFj@|hpOWkbf~>@fgn{2?kYd4+ItD}@V=Js(_b!7Y9#1P9^`TkdAaUI+%GW^R|+pZ;6-KN~_PIG{1TE zZ-l)ntZy3Hg>gQNcZP_o`qqhlQ-(V5sf4b+uUi&W>D{WB{Ua%(UXt>3P}~%(vg!a( zrKXFOvvPAKPYEgj<+)6f{g5L*IZUT=2q+VJY$WGy+xwy26j;DVZJ0a|Ms1iWWuIv? ze(o-!8Q1%@SNa+LZtbyb{ z9?Q`Kp2_ea(uCTQu_obPMPq8K%`wuG?PMpw@CzjVu#H6NI4|BMB=XR46+)PJFX*ioq8xZ_=CZ-Pb9m#XsZqXy0u zI9K<&7Mok`=w2(^sIV{V(LVRf1@C5G02tfC0aGTYS(3tpET1mz-WpeACtw(o%ge%; zTg`tjHy2UVm9@s@{&*2$MW94m&DFmPGUF;1wd-D1$eT?g2?G$C07LhcP5m?0D|2@o zZj2S6OWlX@tk6zr=qw=xFS5RtRK}+2QXZ^Le7Vb0iPf7z?0AX;$aMm&V`w1CgUGFw zIdT}kC|bkckrVrTA_yBjUvur*m(!5M>FZZAdLf;OB@sxTyjG1(23jU(Jjt-{))X?w zb25Jb87z?!8k*K@BCT$Wgt`lIVY)3U4poz&+I6|r@{5vrbKsH0X+!sh1trTAh`vLK(S0(yTVI5pXZWu<^h@_JMXe? zCe}8FtY5o-L+kY*DDUhgb-;E#-*gm2#9~bEkB)|U6Zf40D}v1H3^sYeWu5v4dcC+U zmuqo}1F4Y&Z$oZg(I$FrL+ifrusUyTT%REPVP(hMhf}$*>s!eXjQu*%jih(DK~TY( z(HgGs6jQq1TGL>BoPEQ`?uE~THe~)rcvILb+U8t`xWMIr88|;pEup+<+~ z872CcS&|@Uo+&Gw4*a$gAZM7*QlTnxplLa-!9+@fu@5)l+HnDqe*PGU)kS$jX7X1K z?-+4KayU!f=;q*ugPZ3?6G?R03x8PWb6q+|M{&hUy#4MP5Yx1Ow3ZClW#UBW8>_>U zbfLYU!s;IB(vT6K14SGmuDUWPBfHLR5!k1lb*a07{HKeqV?!~%btdNR#;=Dc4Dtr8 zZyxy;Ft#hFZ{40S*j`3Xa1E!`h=ckIQIa>Z8o9W=2sYgs1AQV4XjtD`!b^Mu@14N7 zAXeme;`C7~NZNg|mw!_-(0pwpoD?x6LH^r^)*h?Z)E?PWXBT>~kE|AS>_`z8Iqdp! zLyC{_d^tnY^jq}@+qdlaXMW$@pMvE5Wg4W;;0bAKW3NPmY;T_uyB546u~L-Bi$Mi^ z;031jYXdnFyb(D7~LuCV`Y^2w%x-v&Lk_#ArCRFg>2jz*DEpUz;PI_}zf# z#sRx)?Y{g1NU@S*hj=`YTn?UWaC?SMuegSma;6~dOZ}6ry(d+t zHX9Np?jXa3rf^g38GuErxt166SBF}{&uBU_m|wRV=E;=)nQ0DcR=)Pq(}MmNp^zkQ zl8Vu|nib^z%wZURF~OlrWY>2hRf6>g)oxqXznOHC9O;nYW?lUHfpZisE;Wl(=5LWR zkQqPvk+rHscZWh;Czfbb#pvoUF?1>jog`A8b2L)(6k0(5`WE`@NuobW!bWkb`w1w4 z05%TsbKO%9!@M0(LD;W9GbLA%Ycrx6u(Dq2)`Tl1*nHyofn)QSw8<8?F!Y0EPjecQ zd-MC+=uT9%#OQ8KJPr%DH}T{OWWCi8e&iU2Qm%5``}DVtZPB{!=gIX7?3N47%>D^m=jUW1byE=_ZG?2|mqI#ns& zBb!jUTfYxXpyh@9+7znN>0%TBS`4$k69_0Ct)qF{62Dw*$wpMtMCy0`)dD<~K=YX_ zws2=@k!hc@wt7$5rtH7-r+>Iu)u$!nPc86w5(_L44S#)Q_m_iOL=6L8{2Y{|kk%6X z({iV;Yz!I~%o&qUWzS5}dOODl7O}%v5=P>vMdYB*o&=yvS{AZECBP;oMgnB?GFJt0B+G0jh^bB*2X`kn7 zmpCP72`VVF_rW)aB10|k6-to^R}Nq_NoCbQcgQC)X+)}sK6Ig@y9l)C4-zNWF39<5 z-kyv1Rm|!8#*6|>Y1$oYxT;J^X?1Q~(hA+Cd2}sUMpiC`bu>wdfY+;D#8(?-pwTO; zhHD?=ZPbQwGF>5czz}Jsv6`6LqO#S+Pa$;_H4NoBO6LhY8ugjC1&!9=X|;6?s{E-A zf2YdAvt!S`#IAq`lttVKDJSvxTtsvNkvO!(iCPKT&6$m}d#;tzEqRXVsBmr$WW6$~ zmR+R^<^=US+OijtvFLn4RC&Q>&=o)JiRo5U_(1Z(Fdo@eup35wBNk@VJBn=9SdY+ts0p3cuNn z>S0FSP4M|d?lm%Zih9Bj(a_ZJUb{e>#C5i@62{TyOyX6zAh#WQ4yZy2`sa+{qc_WU z5221@ehCj0PGcv7O0cwCyJao@$}*iox*`39>>iUqsr zZc3=--9nj)>72-)=L?BAq)4vR#b(%qo0b9W)+F;X7s4k^z?OURskq{=1FF-?4z z6e4m99t_$@^NPG%DSkUBqKp0n`SqvJBk)`|s}`SPrJS2wAweYFlotH3+|J{Xi>6dxFQJBkYp6#gV-q`KrTjP znUPxtLprAj9&OiF*V zHf2TFGii*txXU6`ydtKsBR~RGT_%Edd?g0xw1Yq#+{I3Vm|P?s0U4I=+!S zZu{wX4AeEsH+2T^fhQzCF!v}uD|T;R;?z9FI;zY_OAQwD(pwE{D$Y7F?NM>SvHE;U^Bs+A!*ICapE4c%JaZZAD7uJw@ z6?O{f!pe#xG23vKsMZ*UqadiFK;5BDqGcX3FAOh^o%LTmQNl9_vWcgM8v5OM3otQy zvY2x-ZJsvT0sW-zY@_cUl%Hr2PVNd$ zii6SoT^i7tILk@#x`S2Zk+N_Osbw$s0)v7Jy;Zy(QSm$@zRR57Kn~|;cUpn^Ra^to$)y;ywplyz$I_Qm z$kv7*QAA@BRFXR*B>kro0j_>{sOP?;_<|5S&mH?N>O3gfEQRDKr(d0@b5Px@nmXr9 zQpTYfVqG=Vqv|OBFT^uSbc{=+x21*JxvFHMkG2N&K%Xo=;$;p}Q2jE8Q%UjInal3O zs6DBWhJw>TEmsB_G=9>#cG-KQcDyd~pK-Mz!6rIg+iQ;{L1%5&CX!XO#igg~+TbHqb!u6lF z@-pb^>h@owdK8;zpjkCP;R9eiU*)Z8aC`fDMQ1Jl@OZ2O?VZu6Z(p_x`~vHE;lsz6 zcg3nX?Z+$R)YDw)`BD6PzB!h!%FpaBu+^N!jYluIY<0^ z^82KT@L+?~z#@XaE>2giQVj;QOOQ2(-9#6a@e@V=8lD>`XuU@-{v7dMeo6gYOPpHF zYS#A=?5)5Ulux6}An3Xjo*@IfqEGrp^OnIQa?%rgkcN1zzS6yN#@C<7D{-V*T+^a?w|@qn$Vv>=O+^%@~XWU~s%!=1K|wt~8=GE&$}63fkvqGnVcT zI}9}%RtD9ZsSAo0LraD&WY4s-gk2qVsps&R;;qc@@Eow<+Z&6`KO zv~L^z@KEaC+-Q1d@Bf-JuR%$8C#gsEBFaB%V>&(w^5wyH6h0yRli*Y^-)=M`%3Osy z8!9&mzGvL!#yKhu!A$sq3ZcaCV~`lRT_7%)>Y23<(+((T#=CwM4+`ENE;CvGYa9Z7n}Pf>6`U`7Ri#sA^7rQElmgt~|F zdXu<|X~Qc5J80>bCph>c;Y)32e_+*~Tzz)uGETWIE?vD*@$8bf|Hn$+fpZ5TLsTOS zVsm5)>7UFf22EpSiQvt@f~f`O1rGHsuOx;fPzTk-)u}c#PfrG!e$~AHiiLT$()877 zo$gNITuOP{%gS%>AY;Uvq`>s_#XIq)U}jhYr{xSw+$^$}70cI$ht;snLyeJ}n}xuY zm!UUH*Tk9_lxcvZJz zgQ~6ZSYMT075Cs&ZPBp(Jj!E&_e*{WkLRo@YjeIW)*3yPgaKpaTw)%OJ4+y?p z@*R9zlR_dvRTm0#i^|$V~#R@x#U;yD+%M(RN8GvoKRMM*1PscX1~VP)}mTc z!XD#SOa4A3vC1w<%PJ+D`jlY0M)D8vYhA&YtC|-F+|RG)HwgYg$^SB|`diKhAUce!*mmYleCtFdG$pa{HM z@>}@F3DXiza-csAPv=|{&EoT!qWW`$JVP-pB(GvoJUR_?mGk1So|Kq z&u`>pX8q+EH6eb4hdn>bjzTSI6Fz0uqDHHE8?*}H${8Fifo4({I~HtCI5en z!YYsjr+58lVX9nvB)?1Lnv~7el3TBze~y1%@Ovcx0{OQD->!s@_Qw}kMDKkgwi6&tU0f>c7x#i2(ydq1V8^WPbuB=fSSn9 zD~4@qH~9Je{2IX@Aj~P8KO0w-;cj;d=GXIwB!4({=Gu`)rK-_X1BeXygk2DSz17@@OE_9W=CwMZH;+8)vkX~#Q(nJ zKj1&i*-Oz8zEp{!n%36V+6^Tn_|uX`WxV5JCe(=hk}!X2j+$fL1}N?dN~6x0 z=(uvo<_AnRlHalON^yn z_>OmqndcI{;J<&^F-og=%~&RlW;MrH%Ko-{gway`#5yz_U5UeRG?dk%}rkDk+KsQ&_@|=F#&T%Z+wvtifG6!h4q+ zY3TTk*~U52SZ8#&Ht9M?aae1}T}R8KnHtND_0rg2Y$Sh_xzU^1B7?kJ=@PY@RhdoF z*bF~m%s@2m^n?>hC*Bl^_>I}@H!Ar8X1kr!&a8AnoP6ix*8GP z(g+z2p|m^V*zvTKI&Q?lpxK%IMFH-WMwsmo|<#pEe!!Hd7f0)AtMu~Qhkq;aW| zl=;2Gqwd>s*ARU@PEy-n!g$A#fpVc_#+fkQb!0nchm>~%I7*E781EIv<0J}9ZL7xGhoy0|@exP$be2ZHajWqOVcaH-+l@PNc30)i?ON;0!-@Wgy=%3TjEB1ipCaX| zQ-gmqG?o~jGCnPgJEid%!?zBIHC9dV49Y@Y4;(UDCK)(MXAo4!3vQ7$|oU z-gu|+d5IF^9-tPs+ zubOetIP>5+FZ+#@aad97Q8nqT@cy;7rk^~c_uJBVOc`0#!;Gv|t;<`wHm+)E@9KYO zUblYPvex#MYH&Xxjqeyw5(0_bh;k)>(;M8B?ON32RaiUOtn}~iN#iM{eEV&!ldO$9 z+m*@v18MvaKXv_1>l}Tej7m}^o|eWlIVIYiok>;VC(?L!NC}<9Uo(Ctji0BF)mjnj z9!R*(z1NIiO5?e7f}XZ?0?LeENdtezuL%uD;b&;A-B5w?#&4zZJL3g{Wp{Tw{mEl? zE_qQvMo>)>ynnA7fKhGh!iqY=H4cY5a+n5~lX# z9J$ltMl+;&$Io8nZ>Y?FmB!yx=0I-d&REipq_Zka{vnNj8m}n*KN)xIK6ih1$ztMu zt?$r3jTM++{7V|I8UH32Nhgsk`YgU9qt)8DqfcIO8cU5gj5mexmNecrk>2Au95aH? zjzm`5Nkz)z^O7Zr>b9X z7pcma7FBklDx9neC#s^cWR-t=IFS>oO2(?}s!TwpFn#I$(^^?<*{QfzslBF9=2+A$ zm8LYu5crPdR>B!YElK8l>FkZiJhib^nB~P=izAJO>IK3aN0^rjDzmxrVmrF6K7Dj( zI2Jw2j&55Wi-wc2xZf-@$4iu$6OP%5O2d1nF`wbH!O!~5iPD^;1FL`12cWJR*y6{N zWYog5_i0Wg9HfkX$%o7M_ja-K-P7@i(+4Y$8ruCeSr{+v^mg>I~2{#q! zzZ}!r^QjGoSe+9pogaV7k&~dYc0&m}VAe>pR!vjW(!JuX`gTWR38%~3AgD6dNpp_p zej1cfG41wDPCsunPm*T65}ReNcH0+D$3(wMm#g%XrMZCJ<*MXfdIc)YQze^dHW1!* zj2JzSMOmCB*k~@4=IQA}uA1#=w-a##dLA&2p1n4DiqaXI+Xsu zGINtkxoe24i?HwbKP#NM^V?%t;NBN1j7-19srW24`ExA`7n zzE_%;tCoMAP(&Hm)1n`Rc_m?5e$!;Nos5Tf`pqjK{N@$r`=t4P_Dk0{)?p{T(>#Uw zfqX0cIRNzIif|;UWcxMdb*iJT*ZR^(rF4&faA-Jvnh*1zL|MxgWoL8k0|b*kjtOxu~~vL^JCK7ZQg%EDDP}+jc+0oV7-r3ULNtis$ zjp6O^FEwv9KOxN9qe=ja+Nac*_N&I+Db3HQ z#*EKxj3+{mQ$NU1JYS`-Huw~iz)D$@AeN>hENZjTl ztSEn~7Jo^a_nP^?j7QHAZ#Al z-~1o=G#dS6n+GJj#yohW=kpDPq(;sIgz90#E92&M^Qy;E^M3O|X?{g9iK$sp(c&R# zK5TxCFgd&Yqyv9)PBFUkzqkxlRO!)ISZaSal$ej0-w@_ErFqzVlu+uenXHe7lLTLD zdq-zedvgn6Oj}M$qaV+k-TiRDLYYpO}Bo z5+>WBP&zuVGv*#;pwDh442;^&0-Zc8`fcPm%)wE7!u;8Y;bt0cCIrmjt?5Bn1>(YEfDY<|CgksWA zC>-ta^ZR*94a&Er1&avN^zrJ$BOcq_6HHDSX?98q_E1QRZgdP zGPu9r-7vY(8Yis^eL1II3C@4jF7doIL0aYJ<0{)kX-%>wyAEJIHMyhfgi!^P-uiD% zk=9hDPnTyaPj9-krb}yvLb@y+@0zZ^%&L;s@zzXtWUq|dyL4x`$?kb$!z$0ODL1Nm zs--om*^-OS+f;kx-g*1D3Gn7a0kiH;yXjdM$6M5}{ISo^`6U8m!X@V?(aK zn#nxm)&x%soVB@jv(Gx6P~`!u+G>X*uBX$3P^HmPLdt5C=AU`oZ=Go^7SiNuPfTbY32eH*YR3`foIu=(Cy$^Og^4s?yer&bsgU$;dC+IgXvd)%Pn=&mXMq)k6 zd>?X4RH@ZYKNr>-!o)0;+^xPPD6`Iy);fBDFrjbgMUPGW{eFL|(^@aA4bs|Zol97l zmsCaEQbnkA_4Oe+2#bpIVh<8(-YLC`0-L3Eo}xgdM}ffyQ2DJ3tP6$JC9R7rJI5^% zOVqDVIB{14b;F3W?<-<)eJtUW+>qNrB^v!!w-pkWBdx7g&&Yf2M!8guFvcZJQ#91k z8{471W5c;LpKE_RKWZcSHHMz_=Vwh;SXvje@vf`RwO~uFh}9>osI+4EX`$OVioLo` zA8(-=7LN9mT9;UHVI`!MR19Ar@T2(a)m(p!$F=HvYshbHw{{3?r?hrimlA68R+0by zxEVY2=~M2hfC}R^+nso}-a$c3!_N*e=L#g$aOTNU6s+EG<^v(M#7_ZgWtN!x>{K8lh*sKYjT`MDsN`=t?Bpd z!;(IGo3qSLgu4kIPL2X^-A@@U@8+!v>&#U<>_kP1ATE>1( zTAx=kcAV?Z@#6B_<>Y?r3)1?c;`bRERCd6)>rWYrUuj+UO6xvrFJbx?HHYP9$X!_~ zyi79ctu4o98A=VwebU-*r3kfJ;T_bctLcnBZH;6Pbr$^O&p~ z{MLUB)a)H^D9hpbh!awj ze?$qxZxBKwQS;aku69GId4qLWT929^B9wWq=(bo?vAHtVF7Okx9+TGN))R!u*?}}T zEcK|)1lphm#FNtcuJt{_aV}^t#BGH#CkKCBnRE<7ee_8FzO;UzMzV;w_gxC>M>!Es zgW1PtJwr%WcvAX=oRi$JrLNU2%Uheen%A^h{ZKanW0o*icMSPz6_Iqi)l=E%As_JD`)gK9wqN+N&FT)Td@Xn@{gfTiC z%Jw#t5z3agb~G((Ygyja)V6k26QQId+!M8v1968iYY3Dx@aYZB2|GVO*wCBK*7&gQB2mNHhv;+>8@+pCeV zKKGL6;;vB~&Ae5u;SUzx7oS6qe7B2_FfomMfq4Fch4vif&t3Qe@S;dF>g}3EgDHGT zXyc%3xkrLG+HKp#;xf7;U=-R9xhA`~dh@TS7Ye~G(pV}`JfFRC>|$j`LwSExGprD^ zj_ws0X*3nOD!Fz8!D!Y>e|cLt>a-8^ZE@nAwm!t5qAk{KM>g2;uzL4C8p+;pqF^9@ z5e${<=OKvhbf|qr&gT8hwW3ndJ^Na24_!$v-!k;NfA>1G4MQ%|ADb9)`z1?XRdG6 zKaGT$gUjg6FHX{l4=Ox2KSJKnxMaYNgtvyBc%pu_9ga2@y!n54{;Yp1tC29KBWZVU zTW$BJ=P-Si*pM5CmmJ{%jza(_1wJh+cjjo__3Z{oGY<)VJ99ZLVVpDk zKH9;IJKAlu1XJH9OE@m;aTyY_C4jzR?@qGZG4_38-k^Bw(5VA3}TABt%ELo6K>%I zVM4wuatS5riZY_jWvlG%bObBzBnBc$C64lBIAeq^Zd}|b#PXcj)DiCR6=E^LpS>D| zaL&BvkO?v6#%8)OO6JvTdD zjcL1a4@2ghk^^xoPq}Bs6MSJ$8W5%ol|0#tya|36 zYxm4|E96~TRNxBX(R)67ax-CaEb2McbqK!`N_)u(6Y_ug&Xwf$&i~ctbj-_6Eye8< zB*^acX}=mmMR%U*!COAbJ(RFi-^AA(i){-#N@}Y&mm+4|xkQa_|JHESj_5t|gi`(D zZrdh|vE4Am^s$dwL7#~k@lJhI#-p1zdrDua_r+zFs^Mh^$H*u-GoS-V2gNfL9nPe8 z&TSd!Yl?p-3BDdLhLA94go=lq14!`eMHDZz(&u=`vZlX#<3oM-9xIZ=0-OjZjZkNv zfGC3L38qq4s(QU4-M4gi__8PGn>q-Hz``K{ZOOebI#1{tGt2e@oEIPEIPl_W z31bq2PgI)VLQZV#b)uP*sWYx-B^ARup34mh&zygFbhLP6npW16d&*FPuy&Z6_~>fz zTDrJV_2*EKBT!ovDDBHaAP7$!t1%G`_hoLhE&9Z|QKFL7?ADXzKGA3IbWhClyA0$C zODnE7uxGB>%-PhgAVdcG!qJ#}N5SzhkIB(nTeVb5@7`5!1r8-R(iJixK2s>H>x zYJIq~H}2TVlrt0Vww+l8me&XG2qIX0I-Y+p2Xg*BHUyr~=M=i*UiI&^h~2j(WLFPA zjlX*S>4TybawDb)w0-2V3r9{qO$QI;TglE}-3cD7f`=GX&u<`f9!CEtl56$+Q~x`NZ6Hj^p>Xc0Vb$|bA>1(Xj*XFM{~sPERG<&1ru%T{=A(b= z`3net`rp67q$n_>AK|4poe*Z^bl%W|=BwwQOxSR=Of%w1?HiP&Oz&_h3n#p)m$@qG z>BBtXMeZk1TIPHovT@nOq}_IPv_fS`oC-Uzy@sz zWGeNpoKwcPQia`lztnbP%{`MTr`3PCmv~mspGPRK8OlL{LfKCz{CwDO`v1ud8hJ*~ zu!~!(7ZT>?WEkx>+3M2>n~wfI*{tcxfw=@0c^~e|7lM} zMIukY>G&K{cm!(5`}Nd8$MF|)xpjdC8?pZ6u<<`Mtcy_Tp^)nZtv;oY*0Fz?Fe`To zDd35%UXWEi^0;=ZPbN$nl$@TgtLGD>mlAb$RL>*$&ghPWqv7OYg1O+MTzY@PLH+>V-Tcs4wTX&V4 zzDa(z(>GcA0`L>8t>I`m(OYi%ruykB-{f-BH(lkPA;q)er{$)vO1*y_FU3z-Te;~w zLA_N=@r?L!x#>Gmz0H>5N8;&n(^sqBf>JyxzEy7e=BT&1QhZY!E;oJk>TRABkBD!K zr9QQa1cZ5!wx`GlQ81>FlPk0vo4%0E)s+Tp3q zb|lgf)|Q2AjYge#bHq+0oP_Y5L)cV|kQ{MQxO#|&oW13KQh|RI;p-%9{Ld@)M8ME$ zEAxIAzKw+Q|MNwkQwk>v-)6!E|KYmA$hY1SrjL?txyz)&cOhZcFp*rnCfXK@ z_6#~Hg)lzPSK+e@T{W$bdn6c2_ZGfT&aEedZC)*Ly^SXXQ*S*HzMhKLcPqj49S%jL)Xu*-tUW+-=?hV2V*;m>_@auj;$?H%u`e8}e=pdY^3l z-RuDK;C#sX2LKCX{S!b1Ej6T8uag(Sge0{;})H-$;-do{k7J)aHyBU`u94zUblBU+o8*S9{1?? zFuPcnTj`ZQ%d2l4I`r=*YzD9rgc9pj7}mc4)(?LJ;{m)JJODGu_G3(t_G5gI@5dzd zXR7)$L;X2k{izNHAHZy2KkC#|y?R=po=#IwjVj9$^=Fy-)1v;Y3Le7Qn}P?hdOy|% z51~^%Z`hBG!Mgo8FF0pEx`K1}qdOQd_M;~lF!y6yFd+6L77SSXkq8ES`>`V!DA|w8 zf&qX3e!M#vDBX`Mf&sZ7?+XUT?8mjiK-qqLFc=uSA0G+^#_h*PgMsq>_;_$1V!;P+ zJCMSsgMo_uxI37_7w!YVt=9nDf)fFn1q0tg37$k5zKikr9wy@{OvleK6Fsc=`Cyl(@$?>E4X?Rz{N216CnyyKQV0AqyJ^W5r@!E1}=q9Kbd$JO7wq| zh0EdBPXbq?R6qIf0Z9E+f*UYKKlyPJ%JfqyZbP|#lK2S5>ZdWd1>^Kn8SX)aQ0dae zSQyqT@VVnsj1}Wt86heFp;|e=0wg8?AW^CRPQYmY2v5KdQjClbgXwBog8OjqVT@CK zpTa)%mcl{J3Hwl&!dJb=1u1;pdu)G9;jo+ivEV)=Qut1mLuM*E(Mkwfg-SXLRdhD$ zs0|IY8fQ{FmeU&DQ*Iku+@2CjesEAFNK6uw!8C^TAf3q!?!))))g${gmj(cxn*+sk zp`@j#2xxLl5mWO3N(=?GWduOeG|isIGak*Fz%&b$sMb$S;fMESfcaGdMd5#=mdwBU=V*dD^A*dyCQ1cB&P0tie8IvAr@AFWb7u<)R9mW{- zlfrY4!nkj0a37Ap1IB&9sY)vCLwE22{0_JuFEM0$ZieD@+KF+r3l(%3rqDYumEMIa zdN=Cny*aI#mub~Jahz(E?mvGMd>njW%BJ;@N_a@kR47!ZQK$~4@D~q_zYjxWiW+=$ zC46)hO6YwkqxYkNuEFv2!5kE3W>A2Gg5zo6g3iaQgng>8GL|d11YLg!#PFsO-j*e?(>=L?r+l~!+lu3 z$PDhKReNc*^%XjG6QA3$$p{!7o6LaOk)n=8R&XzE+)JDDr;551U9iX(JVf@UfbRfx z@29PGDY|%3NuXpeMN^clOVOo^`~kmydso0OQuN;7A-ZZ)pyYo5y>CB#Ab5yw*rZ6Q z@Cojtt-*ctfdlkE`{_f$L-f&20THkc(C+70p=$amEuf$2KJ9n=EzPWSikOWbfZ(T~s1dbVxjQ6+q7EFFW3QMa z>R{kn+%4vclVIX*Tr29uJXm-XePX_t2Z8UPN1QAcz=!A1DNYfmq6B}!3eg}=gCAGY zdfMO$Fq#jhr@)>=bjPLx^r=P0+(l-<{Az>68$_k3v_5}@GXiF%IC+s0apz4vNS}U~ z?o!>5qR;UZeeq%1J10f^0wn=oiVg-0mGI!kD+TR&`;kL**QNvXumTt`QuMWeso2`k zqz3NjUuP~E-je7bGme6mpf_{f~`V~6q_qc#wLWusL$+QkW)Z;j@P|QOKW@3&w zT`bZwdQX35ocD-EROlhnBhH|8dYt!&GsR+Xl;A?KL@b4Y3*Z+`Vjj%QOzoyEgQ17& z46wH`0X~5;5~5j%7D0Ci(Lx0L3rhycZxSoSN|%)UatJMd|9FtTsd!Ea?t}E$Zk#ZI zzI%wC+H`<^FrI#xqNnGi=;`tFY>J*v(a#RjbHRT(`{_4o;Qp*GMK87o>r(Xce)_Ze z{hLxx>r(W}e)@NCAH8)LW$I^cim_YZ3(nn7Z@HfX!9z@V{7!EjU?uyR+yh^b_A^0pl%@nKMgDJrj zo4bEVed!7Y%m>(f;C^-rL+~IwZMQCR#$k+8KPk3!wMjYISWpydm60A$HR`qAK z`m<*G?>A zcB3=6k0l>PP4E!gxoI!EROJco!`k3JY&?I!-m{-2gZt=1DpQJG;r_f&PapeOa??Tf zfsGHa{{bej58cmhHn4FI<|x_V0ZOsmZeIF;m-p73ysmy9OtIVdqvas`RCYdi35x*w z3po81e)=0q=^q$J|HOQH6%F(+G}3EWO8>?xdL3)&4V+7F;bM9lF~+c+aa_kt+{k}Q z@KNT+t*jJZV)gh6n}@?}KEBIN#`oC*{Ft4B-?N2yiJgwWvPJk8Yoro(234>#X%bsZ z)7TO^o-L&l*)p2Tn(0)wik7feTEW_AHEX9%wuUyawRAq~pe?ME!fZWV!Oo)_*oAa6 z>!RD(Mf5q=MPFti`Wow{$5@!2X1#y(GZv%gSwH=r#pz|1$PCECC=shfD@^WdhF&agJbISnmK+!}JX-q00HyH9}c^CCq=*`;>vW zlC5%QNPZFwrOwlQJp|Zi+UN2VyW4%a$D6g-mlm0GQtXUH*3{iNI~cGIV_LvUvAt?s z?PaMHJ9LnJEz99cg8Q)K7VoveXEX>mG#4;mGiQU&J8-SE%Rqb*&c z(w8ai6@AJp`oo427o}$^eY<~AGM@c(4-A=NKbu=AQtUYebCrVm>qVu3(yy@>cB3j# z`Y?N8kqk)1{VDeQ6ni;f1Z0Z+c@O*nBT$-Rf7Y!z48Q(e=r!6K8~l@t@sK11fFBJ z;bnF^{?6{eE9{ealYN>@b|*>pSt@6D(M0w+n$A8?C$M{H9(z%<;yoCL3ot=+VhRK{ zW0F{pDexf*E;gV7B?y1RCpL;|`0*UZi*v;$NIZo`u^AKf^gBPpvh&4xTFX~Yig_7) zR4dLG7l30TO%)f4E*LnDD#S&i4kl)i6t>s`3m?O74}foAeg zV*J}!1)=8{JTKVi1T7ToRl%CHeyCVIZ=z=RF-vK(wD?kbQz?J3OX+P?pfpczA`(_R zaE_o;6~qzpFhQrXH*mV(*IWNa8MDCH*{m&N1(;f;o*t}wfO9~Jac7JmfdMQ(cNruS@Z&x)eX*AV2W{pA(!@H#cAe z%m;Wq5PX22tk`?OJ%iEa96oMfEH@G07G`pRI_|?7E;QPUT{JRicVy5$TkB{HW6`X2 zG>!lk2}f*&fti>udc;s(*&1iEw^eTX5TO+HQYL@W`6ti&A{a>OGiOcNjq} zAow!tE3h_k)x3^PhH7EQCR24qM~b(s-UE|7;#hN1d{uVvHYn-GkB8th;o~Qwg3rbY zyauy*El%ZiID^kYGoOoM+r(ji<9SPr&&ZN}TUeVlAYb zsu{f$hHrmL@C~?3#?EIKxQ(Y4lxUC3Wpydu+F+#hBi=StKT_IbrE!qA2RH4*jLpVH z`!S=zn!X!8*JJ0JA}PL3OHlWDeS@!3G?Y~O8vI&msjDoh^jBI6(DVoRxt{uxrOnBZ z06!HLZ@^4`8fy9JXyA*mh&N&hUxKswQf%bQa2|heMi*a>OZg|Vx;rk*(BQK4e22@t z`A$8BF$EkJ2E@gv(A=;|Y@-)oq5&-;f(lqT8}m%{B(M?HW(*bZ;XG7{J}o@DFik{J z;Rz2v=q)TEAJBTli=SuQj#BmOy8~(%T(o*liidWid^``2 z=i7e{^1h99@0^1?aj!Dy&P(xKtLGesZ_Yvf&U@+JA;h^82LBAk@XulbzY76=H>&vO z5agf79R3B&=U>7ielHgD`_RnyYvKf9Ab`mtCi=m!2qoeY&-8D}5UfSSMZz=v$H18I z1||va{2Ru&L29;P{=|INYvtpxv`cSkux@{PrIF(A)r#qPd-+u<{{9rd?qPo8BI_Xk z&~A(m2F!ppXFUJNc>d88|Jc3h_gkfU8|<&(hv4TAVgmmPrtz<0CVvPg^RMfMta9ti zAidN@T0bSlfNs)K-FsX=#dI(G(IB>KFTpfaiydMoEN?{6n>bnU>jl4YurG+;!aslR zjSd5rwr$#VL&nZM$Uo6wRay;V56b5r)2$>={UgmXPd08Fa8)T{x~Fm0^|9U2=MRXIQ|rB`S-Da z{|Kk?r?80sM3Z1E{E!f0muA+n;NpK$&8$FshAi#6xul;|bD4fp1mgPXGUKz_Q`;`y zVSE-Q0yx!!cO2?nc$z>yu<>uAlnBg%MIJ@Q!_;2e3+kq&_(3HUl*9~}DSoKIQa@j9 z5Qq5JHdR^&`6HF$Ab;cl|CahNUA-Ib`$7KrLf<4`>CLymxUX*7BwwX<^~HbJPV!ZX zt1rGb#h=Pbgp<_B=D&d8zl7w^VGRE@Ch*^2D*r9!^WWhN{#!Kh7tqRI#QFU9nn>rn z2xbU!fq18QmnO&s;@zmw1i3)G$K#U=#CtWL2y76SYd)EPR@0RRQ?X2Qkw6osi7SlH z!ly}72KENV2!8!rXe3for!}bwP((^@8v&A@t@q!e@Rdl;Qjo! zgx#2>o?aq6%)gQ1e`+x2D#=-Crubj)=l^8bxaaL>hEJ?>4&%LZ@8|y_EV2TY2PvqY zG^E!S2{pb%ioecN{Hj#s9jZD6qzr3ONig6G zl*~yPa?jh3@4+K`jj=<4%pM9PU{(sRe)nO|+dryH8RHjObtyy57Ci@zDT{>Gy#wNY zql)k;G*|lOdXEbOR;BMCf8>7S1cru^;M_{z{lIgAyFXG@Vc2O;or~v>L~Y4`2#PXfiGr z*BT})nuP&zonb;y4dUW@J0W2f;9gZW8}vDD`s7((z@1pnQ?QTG<63!_2(SFiKlK#6`h zjisOFzJ*Gi`xSZ}Xa5Vc!0@+>+xRAMJ)&oOBc-iwuQ4~6GEPnzr|QRjsNM}B_rNGk z8H=)_MGblw)$kd!Fy1&3CmOSJ+~Tu6TKI6BZml~v&H{gX8#A@`FN_8-VKmU&di}ut zz|{u^W}HI*^zd8Zxsyv>L`;5@{nG!)p5W=WKiBX^9TrM5Fo>Ky5)ERTUx%U+< zuYiVN-JFzh=A6T68Nn!)i{~O;`@2Oc_YWYjaBQ z*Mu?K?R6q>mwJ@8wuU4dUNUL7Lb<8^eF3EZF{8{V_Xx8WmR@^YP?s{A9!2FLWBH~7 z#)?HoUBE~gEB8REgolmgN(cw*<^+tn4;W_wDPw>2kaZKI8NyhOu|^95#!AdI&ceyY znvCr+7A4|l@e$qP1sNJG$k1p(hDHnY0OFX5ac&7sj}oxJ8}R*qgnfH_6~+1YcV?cM z*>jR}a>(HTYZC4V>^Z?p<>K)M3Mfbrff@n`-avt>C<+!(X;HjeKSirSswhglpkj=Z zgouAXz@Lb=3bkIV)mH6WQS0Tk^-@vZ&(3Z(OR#?3I`pIIDA4IRlxBZnD4h{GjQ{_Y_vaF9X#y`e!P<08BY=K5 z9Y-U>sqBRcg0{jAOz?+3F<)(Hu0QB=4bAr_5w6pMf}sln*PSQ0u8l6QYosf?($#rG*W?Y|uqsP8 z&Oa+}=%&1(TY|g({XIjg4c%_&&L)4l$HGq3kU6J>F(#Vnp=Nqy)Be#lU57MXk1Dzu zdHNNOqF>`=T8$ZWeGC+c$CSZ5)0n95pbZujn2Wc<@lOghT!q(!lj@Q4nlNS!(w^aW zw`-jajc3zn6i?4p#5A1*cSkaCem=h-bT~&LXT|1P3pu9(9xZLK`1EeW=1+gf8`^YC z-q7R6wozkUGc^^-dh3ZSJ=p*%9U& zLJ<@7THk@UjH>`;##(r(SAfm3p^Ry21V;Mi=p338E>>NbNY3S%zxkM<`F4x>)PfG^ zD6kAWAn7?IX(!6)d32>0Vg@o7Nk=Y}4lXy!M}p1HeOJYg$+xzd{YI&|!Cl5nuQo;#={XcN(BG&akBC%8Fbfmo)TO&!vi7!nc*`M{VU;bOC5L67&a@ z)63{hf5Z@a1&7kB7)O7vp^o0fT>29(p|`M<-p1whXIxM3U=95RchP%zklx4t&#V(17=mBxyDjWF z4ombp3wze#Tx)|9xC?!Q-mJ7-g5*Ao4O45rrPYzK#YnanY36_b?aETU_Cm0Is0<;? z{hG2)mis?6+24BaZ|Kx6wL7#9i$gbVuxINn_@qYK>E$=m2S6)*$Z<+p^x3fi`MIIb zhLPvTc~)xo7g&Gk6{`GD?gy`sBTIBD5TP&O&_9u-f1wwBjS=(>M$)$!N8iP?!uV+9 z<0FLgc)Ru-Sq#_rSgp_td3~>SXh)#ju6UpoO2K_gVqR9tHmU2HWuiqUYuTnYnXdElnO-g8nPypD(;{>A=x0|#_R#Cl!)wBwWMoyF z>|0mxZ<=NQO@&UticBIYOHm=ysFGO>kU13O!5Ah7;utv?W2A@4vN~q*rbaWGYIFV! z1q{;T_4iQ4b9bx5EffsQICTxASMTrMT!ekj2Kgt4JZp9 zdxp0aWwjASR~r6RwUN~o_0XaLGUFI|Xtj}tRT%yk|LVE4Ssr22K-ESLw|TLgtAY;| zjkwmxV;WH2{^Z!;Nwtxqyv=enVC0F_6-J&^ZRCH+-e!4<^`1K9@mQ1rayUqiK!q$~ zpgbCf%HuFfj>I@Q3e)5`%#!1AmOL4k$QrDar{ESj6}QP++$&Fy@{m0s^ahKl0_!7Q zuGbAgDhKQJ10fo_UO%WGvOHgJ(+q@xSRVd%7RKm@bv}$74uPuJixRC*ovQiQ`@o=r zihzGpwKz)42CYv8*Zga?7eh7wIt?bLM`csL@SRitBmR!vfvkTKz8KXu%1K5}^~nk& zrv@^=b@LJhlAyO43R&J?Sw<3xgMf7Mm1Cf-n|>RoF2uhM}(Dv z$`eM;=u|i*FNBl}V~&vuzslvT=nFT6MN)sGViTfH6EbpUr}=nIxW;SpohSC0*Tnv9 z8R*I{_5*8U^rL*$SL9z(T zE>fGEQzt}aRkJ+Tcj}FtU%4KoK5>54eHauxIcHVsf)OfsXld=r?rQN3-Sy%dj9h={ zlK*OvOP#m)FF|r8l)M@lxe8VC8XO|8#ZmG)oG7oyRCyz2$eSVoJqoUVgf>9oM5Oei zw88GxS<&*%($hmoc~hq}E~lK4IH=ivudhB=8| z{^E#@c_WwB6f9XV@(Q)?0CgV-{(~U-5R`lbCGt^}$;Z$|HpUcYuZVNKY}o-r3A*Y= z{Y0oROF?Qcl3HF_;u|2ssb@^s_LkE992UZV^J0)=m0J-vK31h*RSZf)~pKK$NOO)FGE;W*E3&P6>9Dr85$bg9*8&vbJ>P6xgAyVnJA?P^o;uM z8TH*W>bqyyw@>*_TmT_V1?_)BGVu1Tv(*kqvG_BKNU?n={gH+^pdrt2-J)B=`7H^x z=Mb+6E2&l9!m-9$;ZDlrR<8-?Hp<(nRo*Gk31O4dkdk%iEvKVe&Wx?!kZ8_B^kzTc zX?M!1GhDYtgQyKXmGbx?v}fc!of$g`DS0Zo$SJW-;>D-?bu)1|n zM6%onWTPN|4%rO z72#}u;^mF_)R1}(1AHoob37a8bPXQ7y3UWW{ZOa#-VMgYP%1g9q`={l#aI#mQn1uj zdTYoM4XVtDku1aYHobp69L=<-=(k|Rr};uKq`Z+2J-+`2rH{brW2EV$*yQ89xBj7} z{4RYldq)3n*vnVGTM1yU&wLrK@C={#c_Y5tpZ|}x*L->OBu*;W#jr)Cc_SN*G}YT= zYduP%{~OOE#dkO}j3RpbXsciHEobbvHP#))ZB117wTXlzaq zX>pCa@ca~uIu?!+i&#HC_}fT=RFGdG@I%Qb#as0s*%`$g-K#&d1WM~Dbp9}?$n;|B z%6Buki=>6F15Cz{hE?H2p?qQ()Ra>)EWvz(CO8w$j7S;brJQI3Fyo1XC^M0nM6m4U zyOx;p(FL5F17M&?!WxeYJWu2jn@GK2_XX97G1PBZEMlR+T-kj35 z{;JV2IGBj=3H2uVzM8dcR(>H{2)B#A%=X*R{-ac12gHcyl}Q9xBhjmSDcChKEf^xu z!IXS>W_g}`?DSx)1= ze@ZiP`(`rgsz!RWk1F}O-AV&1!$rZWA4|$5aq+XDLHD!>{%c&}#h<*b23P1j!%TfP z8)VFf2e9z15Ue`zCzF+Sk1}rbQW(Hx?R9{w-bVA*Ujodm!_Ie!E3@l1<2t}u7%K_L zyKf)yxbakTSXDF`4q_#0h=%hoQz5W>P6d7I#x`XvkNx{*abJI8Aq9;4!wqH4f~Czu zBrx!TP0iSyw<{Wpft4qz7pqeX4mY4mk2Y2-3(yP797ukS(+X;T0M;TwMP6Q}d^5?f3Br;tbOs@gE~%KCLg6DM=cGZrP9M?6^N0Fh`{6 zpM-ts7G$h%%oDKf$*v5ZY=>~XcjkumC^`+n)-$KyE*%(4`NoF8GvnEO^}P zs`g^`0|fQz%4H{NA{SXojh2uRkR!YBOOBG%Yipex;5F;ECPe4m)}4k&9L6$$a$06P zjfmF-yo0}0r`K$y8U!S@kZLA)QgO`Z99;@pebv#82543HInb=9$E%R{30y*gH4H?! z9IGX0eTHtMzi*UsUxbug1yk{`A#N zvYY<{`F__;wCJs%b+{G&Fkk&vtvfGY9ra-}uZ@72di9&!iJU=xD7rSSU`z59;*ARcpx81Pnl^ zbhBlQ2LNTd+1lgyB;DKvFc~8OaB^;ib`9S#&JU_t2DZ##K6&YO9Bc3aNe|nO^_}ko zoPk|qh(}koWG`>u75k}K-Cu-3NICft0lHr}(aFT6mkU?I#$YLDo)0v{|3XV&nesC5 z2ug=%RB-OCbT`Kt4&Hu?TsFc|oLo8eDm|JsXpZ@3>W^61HgbLd7*PMw_B|LbfbD4V zQ3mX@I?jJ2TqTfPlbN^>2sv1Ty}>VCoiJaUBZZoGwbcZX58TBP_7%-kAX5`)cfGti1%#%tjb&8$?Ar~P3wnR5$O|}^4)v|)G3hjhFwOn? zgfb?S?ZaGfiYpAHm!78u~4t&yf@LE zP7okKO9P$pg6jWa|AUEc%<03}E#B=%C0={*xPAC_x718=MA)@%DHb6l=jniA zdqicVe+4`1B9Rp5S8V)V<#|0p$*re^6LQ6zJ&A@(H>TM=1Zr(Pru+ae8VpGNR3_@>*2>ly%APY_uSB(dr?ZXxQsVUAvo zO!NXby`iSuW|1GHd`CwLxfilyStx#GgFA;wA5;fc2sIy&Rk@;ueu{n>en?1v(EaV4 z**bLu&^P`BTy+=YA38;Z{fVWf`YQ`mE$&w}R~)2)+p;L|*dRU4{YC3aTj0?VZ0S=y z$91f5|FFdG|s+O&;5bIxP zSpTbSTL|+DdD;L3r070r2Ot0cYTN#Qu^7YlHXOjY?u+mI;zB?*mp4iij%FAL$=HzA zAR)92bQ*;bm@_j;PmkekqGKdK8Dvle3vOHw`Nk~go8+Q{HJ|;QzsziUzjj8ET-)C_ z*(d)Onh&(s`&Q4YfpIO|lX&lJPXG59?j>HIt8(8-?}RGsj?XD9L(m!mfTIM#DFyqm zl{f%RrKY0Hi<-YY;?VJT=3P+K>TC=I|$;jvKGw;Oggjjn+Xi^gu3~xzhz-;TJ zq7t^u1|_#6b!nk$8vz@=R5QawtU}IN0YHA$+)WwxD9$Fzl!h;>@i(8+X;ej0Q}IX1 znja3zX_J#Y8$DA*7%Qeq1cgp73njdz%kqq!6w{qHsVU7JPUD;oYo0mKctbYj4M=5* z^PoMbY1BWhbl=WpaN4Xl2z%PhUT`+#Va55do~d|hQ91{~s>wnH$(hTuYA`XY3OJC) z8fi)6)$ayAnrGcquo+od@E+{E3$bdd9VL&q8rILP#5(w>o&U~L-5QACU^CS+aI!VK zS5Ea{%PQl>NUBYlaFfrGH|OBvIk$?x6qqYyT~yn;E5-s$ySRTnH>5iq4XLx3s# z9U81lu|TA9lPlij9LrVRqBFPq3+No1aNE_QG(Kx{CoWhc^qiqGWqZ&&7;J0_*feV% zT^>xKFfWqgaMkj}?~^qz(qFA1;3K~u!|qlLE(}yLThCU7I)Mt*1CAS>D!8KS(8~GzDubRj?^20t7tnc7WUR zGZAvt)AWt@H>F}lh5CbcWdCfD!(CG`U`MT@TGlS``m>ZAY8-q)l1B;u(T~m0ui{5yN!asyOs7Fyc@Jd5+M zU&PD1Fu$DHsWNdE&X>Jb*-?{f1vWECM5vB$Lzge}@KII4+XXg?AIMVV=i-%P36p+l zbu~9gGecLw<^t?jSrGAHCRk<{f2E#Fb4xlEdKRW>Z^#s9ky+9essh5vV^J#Zn9ksr z@|Q1Jt!*UOW?2WFfw>d2O7J>3QuV03*1~SXQf9B=Ww7#F%5l59u6YSH&t7lQ(ck<4 zL4V+6t*`+sCvY2U6HpcY-W?IZrS?UCMnv5s!BpRcmV|OIe<)SN3i~cI zgsL-}g?+U-fBl_ZHNZztdo>0QH)>)J=(+zpCNuKV=yDBu8g~6_sdumw>VZK^w=FDH znc;<4SAX{r2s8HwS1DmsjbXFO5OkFPp2&yfv%Oex546dk)BWvNI}gcU&f^1-*kXvj zTp_0Z%^0mN_65kj>z6n}v1W1$Mwx->bt8iPr-a^O$P#ER%N3z zsEkp>j5=$29A$#@IPI&phsVSW`Y~K?#Odo{MyjU8uWH0u&~Oj$bM3Fqg)L@Bc@YGn zjb484r@kC|sm>Vc04(BFYyig_O&Mpoc5lS7dgBE0dJ({;593lLf9{!+S|xXSLk3+d zmm^B_?Vds%|;PwR_|96_>}K+UxVL|77yt=dh}Pz-$Cgp1ROdLXG$ zwT~6&H3?u50@~pVd<54iY)z<#G0(c}TuCZ4P_!8kj29LN@!ca3x#6nGO&z+Z z=uzqEm^3M}5fE%la_@AJVSjetB;*@9lgjLdq1XWgbHHL(Scj>IZrS z6I-)KeP4BFbtZ%dv_>_kpw_G{2*#po9?$!e3xJe5FIf*-LwGRE>7&Vs6q^I4Wg6b( zlmVPTu`P@^q{)8gmhxON_cFiLQ1Trsn`cOSw!!&w;Cek~rxmNucroDrwz-~ScAV1D zn>>YO(ceIWcGqa3N!f(TNwsjMDWUggrz)U17uWHjd1(cQNslqkV8ID6wro)KK6XPp22nm_oN?ey7iqOX}( z*e7h{-JlqDJ%J}SDl7*PV=^}DznjcXb5R2}gC_V{FhG{1ocBlwU-q(+_<51l>y09d42>a3l3DD(_CTOrUX$+1@w;B>NsPb9$_6nk$dJp&Yb zP{=)}zi&b!g&A;!LZN+R2a8d9R)630MH=~!Jfny^NsK(Jh}YDby#+vlqu9~m z2nA6hv+tsxUK8eCLe3k5g2?$3ieE4at1h84D_zj!s%hZDYUR?#0U+o#lZ$?!Yb3&Q z8){_0X_eA4KS`QfOqbJMKvbwD$NykdOP>6}Su*`INXd{d==qQ+2rsS^HiL8?fm96$Bs%_pEPfva^GqB|MMxNev?<)+Ou`;^Xq^A> zHV8hxI3_OTuU?qg9RT?z)b_%z{?5lUNOy&argF@o7(u-ijrTAG9@EnAGFD`CAA{#v>O*>Vp(Zo8tzOv!{LX53G3 zr5|31D3c$Esc%_~Pwje_p6%;b&aGQ#E?rXx0bOGsps8;mjDV*Iy~|?#OQiO7BIj12 zQy0Ma!Dq|Z2aLE^l|M2#SPMa@1ujWsjW2h>AxTGIIkdq5BS(VwdZ*4rLDJe%i8uZB zcc!#t-qUXFyj)(*o7(*tw|<-3+&UngJl{ERz~6E=h@4nqt4ZLR(>8B$Em zQVaZx&U~eZ&H$Wdq;hY&?MD=j1ci0MvcuZ2wL|oZ;uVIuKMp3%-gt6-CZkz9*2}?2 zJADJaWMAE)nCs7SR-H0g!5ab)z7y!@*)+?tU;^y3VrT-=_tWx74ENKrNcQ){bA9|i zR>cvBKF5C}Ues!GhDM4vMCs~yC$uo;XyZBewVeBBf&ln@L{i{9DMrrpqVW`3_;QJ+ zFqlKE`&z*RwLkuYEB*(@A{#=bk6#$B1&HE5gtm2|Ll?m4!KZWT8X%?8sDU~`jmFJf9&)7r2S$&e9@DurhBe66XpxoCU4_y~VO(dRkZ}~eDqXw0 zbzUO9yOFg#LQWs>2L?D^@t}8_FTcH--k2!&pEFf`6HBRYUF;hH;}f6$rDyBPv_oQiE{~j)pN2}1T3t;}>Gi~hS`})uv*mK0-zW>8W)qmKr zJ0hS=G^9V|c^0Z3z0mky8&JU&ISM2uOikYN9^l|C88M{?~?*y4l`F@EtXs_~H*_ z1<3t8vyyWeYg%8nCF{0rwYRo|_lol)mb2Bh#R2QxWv;M(Xc)4ex*y&UsDn7KYo{Oc zH;tdj8j(XcVrIamhm|<92zE#$I`twSc zqs8E3E`|y0c!(%NB}50t9l&}zBRm}-pEHeSy`e~f7)!v0kdSMfX|B787`%GvUZ7wl zo)l_LDW{HiBhc1yNDJ7e^uIb2Z&VkfYVaR$;=De8cNvEiQ zZ*XShqph-7{^;6atSZI zVbrQXpJ(a8jp^ueHVZ}RX&iKO*UetXyB0o7)4+cnD1YEarJZ+)iX&&eabTLX*LIdt zJx^oG17-$9Wo@%sxJ!yJ zwM3Lp`z8^o5I*$70botP9?6R#&GeXs5LP@+u`aS|k!6nT+X?tL7OYhrXlrLangckk zi$WfjMy9d-$!v*gRe7X}HO4%RLt+VaJP%|(TD-|qn-rD^n&Q(2|0Z&VV4$&b&PHcl zst8!8Tpfq8a?bIN>CFxE97djar)0T=XfUQY!&J_Cs5d9o172^LSexpm;wq9Ryi@Gs zu~%+zI*yZS<1|lPhUQYZMB7!3{XB=4Wo(;^>PxljSD8$){1+0(%?B+feBdB&s!=`0 zmP0zg$NE^aayiX?z~$PO5T*?B{82ySa$S8e>K;seqk?96e>2P1RGzakFr=|;$i&LG z@z|1^eMq+e0Y<*yyDsU*hj3cIC3p1Msh1fD<&RjAv?A@y$|5+ zqXFZY559IcVSRiq77Q{iK}Me1z>`8HD3@MVC5z*HfD(KtTyQ8Lfu+3=9EZ9Z4b_3P zrG~ZAc62yAw08Quh^}c|D|Q?m14brT!5qaUJ6W-%vyNQS0y-{~41DySN}H>;nVc0h z9@ULt%Ex+4FnRlQmlE=9>R)r+NZQM+WpYT4y#=7u#L-J|7wyH}d?)JjU;c5ZAE7{-D+Cpx z`k&=-@hIesUz7zBl>1^NK`=eYn5oA&71Z=9>Z4JzT1hwH6#HkgCbL}pKc!#8$t1`x zr$b?-{{btg35|I;<+xuLHP+_OlSB>K`1b+i^26LwYT!1@DI*kCOB*5rEd*rC>l2Sk z#i%I?Pl}fDsAs)OIO-1$MMnj?&@ZN*UL9dv0D$9Soa{4Fuz)3vZ>BSyLqX}i;omCT z9#$-R*Z&S|k;!%LOh;+pSP`;&fF|XK z)fp)#|FEk=3J3Ie<%eyQRW8H((OKykwfy6mJ6%a0YdO<9I~r9jYceqwyr^0IXm@7H zlt_BD^-OW+0rgDIM09&mz4@cejAV|Sd_$6GgB8@Wq@c8TkshST;GgX1(Jd_Ds}S$u z0d@7gR5Ral#SZ9&B-@(kUp3SLfQDW0@z^Hj?_3`I>H=zau$8|u)0}oIhX<|WX(xJ> z355zj%(-okPgFK)tyaEFvpnZrV5%xoM3=vUPRX=5>pMoAyC%Y8`j7z0>&k9!ySl~? z!-<02NXOJ@=wb2M<8_GKQx+!6hU1v|9ZZzJ(r%)Hqua8n12|HsR>K3g08ye+=~>hU ze#K}K@ind3xSV}^ht^K{9at`0D%Vyt>Bjc?*XDlq8`L5pJ85l}zcU7F42iHl-<#i$ z>OF1|?O1umR=;QLd*A23#t~x3_9|^6nJ4yLVEn4_G*~*c+r4}^uoh{mI31f0 zK6t}fCvwvmSq}qB+Acx_FvUoko6iUTLm#>;gJ6)qj@c$cq{a}M*CvAG->B&oGjw>^ zFEXTA0To=%GxQFIiU1%1WY2?W2iB@F@;Wg%Ap=D{;#4Y3Pbwb|*SACx9W9}(gihQQ zmPW5+hD2kFiXurUofQvRJ4S-4bxPy%NpH?_$naVWJ7g6Q@F;5k?s>_-uCDBc0I zsL{=ZFf`|B1C0szoik{jBAj+0vP*;HIKOeUQ7WH-=32~kfsDdeZ#x|~ z&B!HrO=30c2rP)f00I>;!xb-RUa=}%)brTjcqhW($CaOGdx4sd_`#F%-Z{j}KQF+O zSqOfl`yVOc^jvCfCu)k-RJ>ov1QU{!lW3{zI8gK~mVJZ^r~ASs8C~0XA@oGU{^Wvr z%x35#Ifie&!=Zwr<3sHE?cym8!&o-x2)$~dPmW-?z!Ddp3vfT|Pz#>Wz=jXn-%_B^ zQk_(R*0D5Drr;I|Px>BbswT{<>7-&yIx_p8s#a9^ex1hTiI7|hCyo>&d-);aG^3#- zoK)kZ=U-P48tv;qfIxdeLasM?rYpQ_vqb&vzi7&NxpwKA-7?^XHje9Xc8#7bz5U~w z$D(Qa6>3E`V9uU1=}kdN=`?#&N?9nc*p)KK!i=p$FmBTtx1+GySBi2YM2svYOE%MB zv1o)9?{O5E-4w4?gci7|jQP7V%z*PNB!w?~k?Kw9G+w)n9%nTKZSL9OigANG+og_& zPrGdu=P2{@=BB~CMup@!WA1I%K3ky3p0~}C@~s925LW`)^OX+J{RJ|=tw?PJ z_vb432ZeGc9&8Ha=#y~It?-KhwH6BX78FGJkAt_oTsq|d5Lia&KSZIyjX}3!%DE7u zNMa&Nx$n^EcJP0Q!h$D)ZcUY)WODs*VVfXF6U2I&gkNB&mvN|tU?AFm928H31pBN9 zsR76j%j^Y2u4P#fwScmM8Y$0+zKB=sAt?b)9~!?HGYDhHvkHxNt|p z;P=WLbBCc*CiYA?Im2y2Z!e$<{ey9Y)KVYC!kv*XHAb08)WMuNFEK@#i1ERkiM299 znSh9rV28ui7C-8Wl5jiB{BHaUlW=P?$DHvt=qKgvtEA6&T^l6jEx(}8ziUmCaHGTk zV9xNIck6=u3r5Tt$N~=N0|z#M0|LN-4&Z=4aNq+t00tZg0S<@(2l{{mWWa#};D9M` zzL}M zTL`!38_>!?^8mj>&A`(kG96I5k7q!xX19${rzG7rzfh+lolzVS(Jbuo;~rk)kHxne z3VCqI>SE=<5$^PF(Um7wN&}i!)LJ{_N8c;zWSB`x$Yf ziTfE*B36I;`~=NctAYfNS1oy>QS|jAmKS)#l)|bk3w^r6tRT$&6;{^iaDHD$VUcW# z+@QkYdT{m{eD9P%NKN7?)ah>8eeEB($D;q);C@-cSQ#grmCzzyUs<7*A)+t3&$DK5hO9?SHBDUPP8R z0h7C6zyT3}JnSj>XI%Fs z?lv8(xw19|tA9Dm8OkacRdp9Q8};=oXw3nK&nMmZw(`V1`J6%&9F)H}=yguz3J1aK z;w9+(O6SvrIcrMBQf1>{%*bLEUsX$4g6u3*5}1;4(WKKQGX4MS(Nt$u{vR;xfq8LX zsA~EH2WT1xv(FyW&K=Xv6XVMrTR za9|HOfCd~$0uHG8#TyEvDR$pL)ZL8ZZ{ga;f4MgG%TJ{3Vcq-|;w2gwdY|#eA$pQJ z!tm=Q%2L`@`#ko;&AE{}s(%Iw@#YL+ecLe%@1>69p6i5ot9R(W?HGo4Qb%Xc;X=Gy z{mt()FPxow36q{T0suFY&IF?8f;+MIVWKReJu2nZw^}G)xq@JD=riArNBmD;&YfgX zg~}(6#zms_oL$TFE}e$T# zw09ec`nQSYI?k4~Wo!Eu&k^6&3Pcp({b&jRQ4_rtOBRFzF#@kDjaHOhXJ3>)4k)uZ z(^YD{M43%R7`v`QmOT6x|7MP6f!M>5Cl;eV@lY_;9H@Y2CzG$a5JsddJBQCGr6F_*|J}I;N(AaZtkbov^Ve} z4M{RNVVSFHlAkbRrYo}0pX_@1!$bP5HML{mHj{}n9wk9#GhX9x?$mL)qChP)zWqmw zS)b#A!NS35imjq-O^Y?C`6fP?$lM9?3e{qdn>bdzRf?OXOWCecPo(E96p$|IPF|l< zT=@b|mqz6`TkBUf^slXb0RJN09{06sc{WNHf_CRI5Z0=|um{!HU6@@ZG@m{>_+Znx z3E}e}rA@JY1G-vI0t_92@oBa(EPBT!_xh}72P2w`^TZ`;QJQa-gc5o0i}%V4Uxsm16~LRHu|EeW zYW=f63XptlA{eky&R<_sYLx6`O3i^i#8CkwT7~xU>0aLvJ<&uX4)9gei)@DWJd9ZI zgS|wy(9ysY{1t1Dtr6qx9)ZT#AARFeVN!(-eZcq@Pe~p0`PcBikH%&x)9K#pIiA!7 z|91qV4F+N7@sb#l31-U~*v_D}J~8FeIV_btCPK_s`BGEMUF)^%Fs6N0dgeGwKld~9 ziNAddX)K}j=_Y#I5#Z*Baoft;Wqr44K0d(S?JPXN`?LV#HB1ngtmx0|$E2X(B8Rsj`FA>Pq+sv86VI68#b4(Q1#{6=Pjr1(5OvTe5@)#2H zYhlb#x-KyG6zY8Ixs;LlAoJj9@tvq$3iWLjH8=j=%wk003#b_vUw6EL7HS2g)d*yg-UoT%z(8z;tj zspwBV?0KZ!S`&}!5^CP(b(4ml6l`%>0P7fzh!<#0a9WKNGvf0tXYjsRJn< ze1EmIAW7)24&j}y_{*2J?hD3$@5~7nE$I0W@o*HM?^O!@!0v$zd}4vz79)2CHEoGB z)#`Ef1BBu;?yw6E`cfOAq~7oZMsyPS1t|#Y1Z?)A;!ypia3M%c8D^znNHmnyA+2v{ z5Lbi^_#utx-!LWGU=pbbJ98Okbw;xKfqVh_CooTn7}&$`Ya6O7j8uiF)K}SHn|;U8 zOKGDIFDUEh6Ens#+_wZ9)MI{I#7Vbc`6UU~G9aTZqWQ<$I_M;T${&_-Zgz@eBzbDA zAh4XpFDmEtp;w57@^0b_qQI~WN=uu+dvq35bCS@AA{8B=x~udGLbtV-bk(c+a_vd+ zPf42)je1OVpCzgeI7JpyN6wUxL@jrFn5@!@YQ$`MoGeiys6DWw^!EZs%a62Vt>kQ!h!xPU7BA1l?Kyzr| z&5k~1!8mp%mmU<;|J)jM1)0O{K@8MK4$y{deZ~ktc<1`x7u{cvdW%L#5RmCqk^^Ca zRN;Segei;CB+X76(xSWo1y?)?WPf|z+0jIT0TvQC5*QLtK0~-r5RsnTVUKr`l{$=8 z+JPR9RRX%C3X4A<%+JHgY(k-E>LM6aitprz=#6{Hb&C6D=DT1Tdgs|E*<97OTmKew z0AH_sfvim~*d*&s8bccP*5oNe&YUzJeChs$y;DDSZJyl%#3^em#J5a1;4nicwVjF}v$wdl zaK$?Vhx3%X!6{(?^hyK83D&zoOMVBD<}I5xjMy`Jw5IlXw=4;`4o7(|OY4ICE{#*ta|7ZBP*=k%2>U?bk};yMwdK3~70K96#&boxUK zYs9h3sUy$;ike~jw#LN+9Z(eqx6%)z7MGZJ;tla!O3zcB?0G&7x=?4~%6|7iaOg2> zN3X&RXeyv(9Wi~8Xh7jVXtV%TiqK^B?oxEAv^vA*-Oz=CO=jV!(28;j@ntXnnp#?z zLknuKnH}9;EQZw7LUmBM(BFbP>Kq<>K6bJcy$?MA{N3Kc>@7V9=oJs|T(c=7EFz}zILRZMX8wyK#%D>S-XZ1#09c)1@g(E zsF1mOp%G}jh~=x?74Ky+A#Qw_)~wBnj+9+tq<4%f2BQsO2*RXK#3y>gCu4$H%_ygv z)#|VJyM)ti$TqdcM*V~I|?8GGHy6DM~X$qzJ9)_2k*3&G_5W;v@43m zRO8)`{#P*UVN=YXEWx%Qdf3B1s6QcnydG8`@D9_`UmyyEPEOAW!r!J1iOQc~N^+Qe zo~l=QeOm749NmT-sxCA2l3s%0db0-o`|COuBCLd23>Em9_QMULn_BZ>q-;{MQ>71j zu@iJfOG^K1tD7>=85x(D-S`vjzXb|GSq=&sPM0O#8yo~=GBqzAmLQe*3?8RB5MM^0 z51@uOggW%aAPg7d*PR*?$AphF*5nZJ5azn86^{n$tW4T161pxX*&f1PlcC{Z8RqR& zsH#|YyDeL&`hxBaa|2d-D<&vRn?sYlnhd^-+H|fS2DQ9#a`O4`-k$mLF*Vc$I^4I2 zOtLRuY{6{Z8eapSKu2LVP%p7k;w;B(YE1GhFof5;ABEc7S{h1b>6Oe8x_5d!6c}y= zj|&M?fLGB2pE(j;tG>BiL@MqGLo;tLYRKAHCN@+Pt_3f3%_LfOG#rYCQN`OEVE{J- z509xehT2kPg^^OZ9ze8%BY|9e?yD3Y6*HCViU!w?~5z^S$$zEiC2LdmOt* zt<+l4*{!iq`%mSc9JZXtHvwhz?|6DmleB?#Y4md5%^@gU!Pp%#Kl!xvoNiH0pn?Os zm;_b}z~pRPJ-%H5yNbZ?ZEt(o!QLi+oXvV=T@IbVa<2NQP5w!Yv&wGiWsHGSOwiY{ z%+)<*#Y3hfH`Ek@rj^f@ZEBBj$4Y9#MvDvxxCEc+hL++RhbAKk$K1K!;ezYk{@gIJ zx)O>Er`<78qN+9yVZO0b6K$}L<*qxHx}Hm*lXemUH--%a{Q-(C{T1D52qJC-5(!CU z4fhkIKLfHQ+7<-TnP4t5G_y-0wM|zB55OWBn01aA*vUMK4GGeg!0jI;^9l>&6G-om zCK<;ium^Ys96Q2RZ%azEhW&I#L)jOd{Nzpy*JU_d675~{>X3NmASD^O2kk8_hDHNn zG$-77W*qdiqPm0rvKIU<7C?4>MU;6Zw0;F$Iv)DvT5$qMaK&{bMp`YH({bY^O;y*E z!4j(M4FNmKizp7friql^nagYmfrh-+Y;hHg<$@Ol4Q+<=f*No#29;yr*%BkVG{Nz_ zfeB=X6rR30DJ1a=pGqy$lfj1(KY89e{(f$%QfF9E2vV;fxo}dAmSnI~Qe>b~OUK%9 zn+5e{Y9IkCkM0Vb=@S+%t3c_wSv6`Nb_50r;U9%Es|`W-!m6se{j4il4&j%Rp;;?U zA}ZIhmMWp>i9fkQ zP!#BhASjY$xat{JR}Mt}jVBZHg`sIjq^j-;sA;L8uQV*u6} z8HnvYfeR%R%vWBD^HTt?ypl$VT194$e75XT-H~wHBD&dt+6yinslOY!t=om#n@EmIys2*Ee>oC9NdgX$zFE3NNuLl+lDM z(BM95du!Y7HkT+9+JJF5mG*cDL?t&q)=DzX%KA8ywy?k%cLZ&nL|l(j93Isb&qrzU zcxVm!BpRX@at%W-z8TF$yq@d3aNp+GTj#?IiiDwMJ%J8}0$3{&0FQD_CJ)%xC&BhW z4H&zl6AF(Kro7V#HL*O8B2vkB(P}JO*+dH2#xT(!gRR0O{%AVch3O7vAj>o2dPFv- zQF0}ijzxw?v$S9_#0+`FG(le)_9_nc+|e=dk4F*caPtZ(%^VD@T*b|+I3YORY;fLN zy=1UmLdH7E@Z3~wNDA95*aq{LVy(vPCyMn3BF{# z!^QPA_XBGApVnNliP_9+Z$mC9lj-o+FZ0&*Yx=476!!~)^N&3^=mDtiH%qqJe&{x4 zbC|De0+>bU}*9J{~Zo zxGFPFEudI^^^mFOMry_`7UKynvd)-$MJ4$~5$Gy{(w)^JHwX&h$*0YM7GCaesUD|Q zDX?p3Qe_bdzMbz>UI1`ftFbsi8L}M0@KYh*m@@_Y4%BfCu(;63l4w(;r!+wX{j_^J zM33-`vnB2Q$;%44=U}=}4ON`FjLPRL2?ZQhN_h{ZF$EuUgCoGjjICj8W$;8hPiiQMopyW1fWEED&Vco`U)92ftEX5 zYC~|MF+bw`clgCx^A{Q}Tc|twuCt%QAR25ZBkRO&h3HWgK2S@RHGBf&JvxiDKobW&&UEFQ;`!w8V4A+QeeBg78|dWWCh2e9Srkpv zQJVZ-&hpTWM@#lq&5vLGEE>iOCg zqB;t(jJ68LnBj8L!$_53#0U94)i`i>#-XC6IU&zm2Nmh2ly}!cdxwS&kLgi`yh(Bqv zzI01I(|_P9Fu$N5!pRM{HF9#ABtY);Rf4{1Qv=v?w=pnL^y`}>jv@mdM>m(H|9BZu zMv?q1p7Jo6>gjVG<-7mh3x$!3I;7`$+NZfL!>PO{4`W;+S4g3QkKWg^PHXCPb&Inp z2g}$HsK7;0$@8mF*P_6d{pZ4#Yu(;9?*$^KRdCII)G31Cn>B~&>Z(rQjtm>l1A7K8 zW)IMdNpJ6fK8eb#mC?IH&t?Q#$+V$)>i3u%GMRkukutGDlt92@xuCEN;c`B?QPHo( zR&w+bZsA(SSo&;{kY+x>P9eLSQanERUCGGgOFm;n2< z=~y&+46K`F07anh(f+S?)Fy^rfd)EME;LCk>QmKah6eS&Y2xKG7m`kabS;`9EWVK# z2vl)bb}6S9_W0;?OLXTLC}(IrB;%e@y@Dbo2&IzJF%HtpI!A;W%~U>!JJxs@4yYy3 zb0;=q$B~qGs=M#NC+0bn{(DjWJ^*N#uJ{`NPlT{gGQ{sZ0m2OybOoy>>(xF!c#cD6 zMA~&)Y+FjUaP=_{FEa#a&Dkr!~hXzMfm) z1l2R2PZ$oYsm?2(*jQ{4+GpbZhh|Xbe$*k(IiE`EN1gSBL9r!lc%9w|lpCGPT6(vx$MCm9Z(G zMPgYowJT|*7~h}Cmj{Kui8yocy6D6GzbeIJV6?Q2M?PX*UcRcPs@VX*pH@a1eTM zCtwF2P`KFi*$YxQb+LijZHs*A(G)!XQm4ex^qx1Dsks9x9GvKyXG)vDmU6`CpITfx zP|6HX(D&DufDd3?JsaX-#lHE&^Ep|`ZKQPW-kPV{;zr%_{QxnY1V&XQ{YUs_`Q?Ob z$9a0+4w_LB?Nsa46oQ{p>%3OUd4Jh+o?;GnK*RR_)wAayMKy=OUO5jEVmd~kZ(hU_ zU^+^n6FP0iM>m_oUTtTYFDqwE4MFVK!aljGSc7&EZYS|G-r>P^jX0vjP(G@0d1SUX zEDBm$#E{PDRcsO~|6RjCY1zlYj{SP>v^7)`Y|f0BHn?<^hi)0Wp@o z2Bo&O5e)rTR2ZSMJnsTsh!oWd4+hP<$3;q%BLb2mLF14QnLCm-loc!d-gV6Aye|+NCIg%~M4Mue zVQ)T&DZZDsl|!{`#*oj?I-A~?Y4C_R%n@&&&ckRTuWe&+Lf$Zac5~Wbxp&};l?%p8 zTIT19V(6)qv2&0y(M8P+`AJ^eDoYq5)MASNA_CBu77f-UwpumIFq|e$vJML_QYwM~ zxBr=eDQDt}dWh2BeAtL_&`4v)WZ^p^a&FJ0AO`T%#aSC$Asn|YH}Wl%>k7CGK#!6- zL9SA&4={qqV36@!Zq6A)+C{r4+_STj*_|^jQM&Wy3C_LSHUN6f!;um}<@c=}#S0rh-@B0QUQv zQr|aX#O)CpX0pbAFv##ThYQQ0LJjSh`g*I$p+>C!9{}1wCBI9WstT(7RdN!Kv=<8% z1^aPk)59n|h{uw6vOVZNKb^#P#gwD?z6)n_RsKHse}%FlXF20oCAMMy5&U2b#Z`r3 zFffLBV#qNxL&*jnv(e0 zIOa4}DJ`|7Rb{oswI#KcRTZ`6wZSBQA>t-a#0}@52f!^T!We3>4-0WC&cWxg8n>Yr zU%(Z(e;vcvkE?M9_TVmDivzd`U&4Oei-++QJdFqN3Le6r@m0z=z#<%G368KFkFXL) zS%YJoi$~dj$JmU=xeQ<9ay-G6c#;?4IM?A@+=8e0c0A26o@E^0-k=ka~W^q`}lqYxturh1L#2oSMrnm zAU}jkei-0~ud1^W!)I6M1I`oB$Pjor4o;CuEQuGE%{-KjG{76h&JyHj96x#qKk*u=e+wZw(+h>R z(j!!+>Nq*SmPO@Q2f1B2vWOK7G$z>T^ z>#kuLiU4jzF*l)vm!g*aXyX9R+eK>5tMT{!}Wt{*T0pY z_tyFW6gajKu3XxjZkW-MBQ{XP6OyV89)04B-%Nugj(&i+um?~&l#%{}L zL9(~o;^{7NBrKD7AV-n-Q_dpq&Q;{=Ig7jpC7#IhLB~A#O-ZU#1-_7Bzx=eod`FD1 z-*~Rbp3e;#e|-F+GxJOQvQvM^djYIM0iQq~@8ef^pZD}&`su6br)2u+5%1|yKE_A+ zl*kiM-~;)zj|lJ?e#cjcQIOBBuEodrT|T#@kRRvs{6Rq>UI+O@)Zz`0FQ68W^F{s` zwRnav@+H*L5Ar7na5Luf>xH zGY-3x&B(skodu)C+NxEnwYAzRv})h9mR6z3fY_>Sm5R0Yq17tdVtux1)mE+b`TyKI zvyUW8i1yFtLuTgQbIv{Y-1DB<2S40@H-KjTjs`}U5{N|_^k^`D5i^4g$=;-8L{er$ zYbmD!EZlG{k#iQKKPE%^^ncE;OU2wTLjOwmpp;h(#?U zYBjXT>jhR*TisfJ4P}J#G(arbuuP8z!$!h~a#Uy-BT$L4gwZ(=?Xg(gNDxMa3~PmM zM$^xgwRP=7z?yt0#dx`sD#F;>JOFiTi%^Y;8YT%$#uUOydG{NU(rE~)-8Cpttx8$( zl(kq-8tFZkM`=}O&X>V7JR~mYUcQVFcrtjP1O(<*0z5_I_}nw z6PSTo$^GI)Ob-V1q}8H_!yEO$Cc>Ny_Z!10!-~bMo`%KgyLKakQIke#@}U}jfti>^ z@P!P^J#0dC&iM@11j)zo0u7i=D2!xKs)j|FD{unl5z4ZRcN)>46#DG^GTE4hYZ!!~ z=*<^62`3YOsv=5Uom)*S&|^kJa?M06tWI;`NQIpTyGcVMVWb3xoO-+78%tR$^r#*( z66+FrJTA>-0TxO{IE8TLCs%|cirLYSQw2^#God6hfCs|dG~xvf2_w)O2pfqlrm?kQ zs~HR#RztfPHT1*)oF*SyutdXBfmWPOn0&szMQ=!dS!P(S9Y`e-a`~kf7=e@(OC$;7 zqQ=%vGa3pTj$Ngv2(`6!?ZaYsN^Sy%I@>mZPhmNsD3T>GWq5Rjw?begRuLvg+M%CIXo1?+zczlIn=|SC+ZgYcln`a1gpp#G-i?$>T-7*F{oy95X0GjI7`fw)J zYFH06 zgt;+g8A-y-{KQ<9bq#N|p3o!7CJoZ34}d;Bp>Hv*-Xd5?Y1ksLRSJ2=2q_Y@kVC+S zUR&xyf{b!jKOwysSQ_>90M61ya-Z!try9>VyF!1cI+Fe*9loMzRI_?R3* zUlX_yHxWvbZXAkQj;f8V&7*75+3mo8*EM`Y;O3**Nz#(+6K3SGlP*0FFp}wwby=nr zHhj1h-_-Cefp6nGgmFhOWJk+8UE-CsZLW_C>(NkyGpuy{djj9bPC{YQu+~WWGQQ@3 zw)E(UPGfV*hz1N-7(W!aO`eh_QF`M>5q9Cn8h#>hyWH%gVK!?938Kf)gGM5My_?|44!uTV3W4Y#^1Rj%XmIPwas1dNbf`*Kd z8vaa}BQ+oti-p2QMiC-1ewcc=VPnd&V$p^b?(<^xC|P+@;1Hf7jFD-7nex@L)c7OT?r$Z3R@bUA=C|4SMz;5j@mxpUY`<^m9A4xhl} z0xPaw6nIH;HOe*g?pVw+5^|w`2)ry$WRx4yTHTplcvaw^3daHNO2+kogY&w;8!`-z zia5}n?#wRyTi{KJGuH8cE)h4)=t>#^>CrX3os%-;$+jf*cLe^6cL~)_I-5>aIvo=2 zZk(SqSVwcos6D?g@PRrBM^(Dyfk^rv34)`8j%eG>q?KNM7coIxVtInGsG(5-p>ohd z85JT;P$3nmbRZVZXwJC7oMp9xiUkQpJ!!?HK~RaHQinvR6^o~TN$;Z3g36T}(Btv0 zWGs~k7|Nt2&KN;g#w$a~)C?KC34*F6UP-p@kXSyNM3Xg| zB50}%ce97ptURePp;E@XloeZH=*d*VSQ^zghK-;Phv^tW$5IWUENNJSkQUaCT!#nN z5KeYa#|fH2wX*JiY7Xjgm2WnFyh_5wlLbYSS0d#Zr;$FdZ+b zL5j3AX;{njWUG0B5$rTCG|B;*BWNz2K+s~*mar*H)^k639h4_L)vR*pO6@kHvVb8E zohWENokS>48rGnB!f|6%)|P{4j*l9tNuz~=PN7AAgvJpvp0_kDmsxE*-ma&j zfu1&%RS+iRDY~7xCLf(f%^EEh)Iv)LqqD`(s*UFx0V_!;abx((SafA799DbF<`@oG zQ{B*^axiL@2Xi_>AMtVIE15@hB6y2Vl$!i0LCa;aCd-Os#7rj5Xvjw^Xr)H01g)ks z24y)83*BLVJ(O%{m468n4P|tWW;hHPi4G%ZB+XD%W!W2wsFT)cbf%!S(m@6L@X5zb|s8pDqsY=5_-@~C4F=jt=DLSptI>5!kmoZ=<#?U7K!Ut z<}l?#&GC4P8cjQ~B%wHDSW7a?pEg_*E;AKM=LpAXc6o>4C6aK`lyOv+cCAHZ(nW$kEg34c()p6sK+8uYaxA}FlLLMFy-ObhxLs{xIU~W zLWV|H5~_wMjI2ny^?>1{E9eV?uBK}U-hkVGLz!JWv05=M{ zN!5^f>%(|lWfNVJnuOjV=<5>NKP>ddm}SKxT@gJIGNV4+Pu&{blFf(*pVSHkmwR4+ zMRYTLQ_#2MQo^C;0Lh7qf`ktKi_Nb$ji(IVH5B`T{^;{qA#IZ7r|47g-`Z1wG z4+d97I|I_iXT#>HA16N;jII&|AKfnK4%$u7f{y=J4tuQ(vOg8nNBx9?q@^b;!m|G* zDrKA9a@lIyD`=k#E@RAOwy&Iu$72b9%LvNAv|rF&GB8bzv?X(z=4mn=Mo8`>VFV?s zKNoa2-9tDg;ST3uxGl|Wf4;N!C{4_awvV)b@5pPf{PRmezoPpHHL2)Gc$ruG2^Tvc zNYHL6$p-`-l$oBEFuD^)vPaJTM$ki2y24C$IHM}8H`2p`ekXxtJj$6tHT^+<&>yjl zP!=+*Y(d^(B<19zg8oF0IbFcqYW?`EW51vw5K9<&qM3wrLT!^I^=Cm(NK$1^>eZR4 zAf(+K67&=a6PZiz*^%}^?#x|)RPM~K7&z?zEaZTgQ!?+E&@ z^2bNTAb3;eidfK)!gx>6`}Bd+m0N6D5j{TeMOH>I&SaC1K4Q=q3C0+I&#BS%c)Veq z9uCL#xRFqsOA>tDiC82}_2fK($t9XyE)SWeB2=>i!Mse9rRJ0Q45kuxj!!D>=y!W%wf|auhf=HWy zqff^Umr5!PRUU&?3O1I1jU$XvT9H}3-3aM{Uc%zqx{ zVbT9aj!=>2w9PUiZZBF2VzOXUq%Uw<)L9duMm9~bW7x5T>cQTnH4%%f)&raLkReO5 z5hn2Wv+05zClmOL-$~EPeCCi3)vQi1Kbx8B8`r3&^n}{FBQ=+QeXv=*V8>&p+gdg* zuq3J3g3XbnMrTN++pIoz0-L9?69t>kPReO>N*AS?xMy0XR71^7E{(*k-eFtY8#pdO zg=C^puqG)kY5dFYUjJgiNyPszX~In6YAs#&{WE7B6n;wyQQ zht-$ELvtkD8G?1lbtXukl-q&IE>(^K341@C=woZyI*pwr*m@a6Pafe$hctEwJ~O!_ zp@%{;#FQNqLqb!FuHQST{XbqWYOuTlY%C2+Hiq!_F6M zlQbHs!P#&kkt2ddS&UFJ&}R@9j{N+Gn0J$pZDt9LB?YtOMn9f>2e9D_8P@8A8POBH zKDLEz)z}4pg7r!v9dmU1c5Tm;(%sB16717yv9F4ziIRt1EZAoxMd2E%6K2_F_F2I` zCo!b%tx8#8Git1rm5oF1GQlpFvlWV7XDT79rSv==XBYd}mFy~weL=9R*)=%~4-B$$ zvzBhDPBB5-qK8w)s%}}sw;d^x=b|*prLGn1OYF;kj=$`*60uE&0vgbT7>0z5K994n z2zEVlOG9ZmQf?aiD&e>xl3p#7_{5S_cXzILW>xG)!EVavznmJJ@D#Bf?CTo)hF~|d zTL@E!AzdTW4T86`qou2DCE=K%9(@pSlaJlNz9}$@eM^Rbwxc7|t(98!9l@rs?+%F4 z8H}8N4Jzm=_I<&2rag_Cb!>Z!k>i@!X7)qDZcD3&s~j@I>1Nas)h@w)JU~=~vpwn6 zZWrthw%ak>+^+&E^EG&yeAvy-_u*mICs@DK=<)$gDK~wb#Lks}_6c^UTz`7E84b3} z!YdYuhYiaJ_bQheRvsqfx9~7KUvBGXg8e*y1akf%~9qgBa{Yo_q2h{l4*9)pL?dsOeu;a<@mqGP1DVkpkI;iR+c2KYfl>=13 zd6#)eF!fe(%5cj#6%_lOV8549p-K(rE7jzpe-!Kyx#+|m_4QhA2`JH86~~3_PlVBb zIlgU)`^m_y>~X>V%${(Pway+rVFXtvjBX<#19(y;zQZ+l(#AXlv#F3BB21Jc1FGs) zGm*5Mb0}s{v%hHUuYw(B&*aJd^Kc`*@Zwl3Z0J$-nZOX%Hq>n>WX}?2tnOIa+SS(C z)xNZAamT9WB`wXJYr0z7Iy%>MwKt!Cxw2(h<5Vk=GJNcL_JYP<6znDTcS2d32UW4R z$3g^hdZWRruW0O5!T!l!Bdi`_xXIVV$Ovqu3c=}*7%Q4v*0il!IbbJ* zj*&*l5wFx#4ljE{&|LN}LU_dOm|@=8q)*kEXp35gve`Uua2na0g1yDwCQJ%{4>s6= z(m0s!Ly?dBap6e!Hgeg0>^;}5mA3GXVE<+B5-V)j1! zKw}>Y_7O);EB$DQ1fM*xv`L+s*Q7oc8=MKwr9&#v(u-DFZzu zq4odAiK;4;7YXi@?sI%nX6t!>yk|KyE(9ONO9(uXiV{}+FN&TOTt_Mzb<4U^UMBcx zUQY1DV=}KASDO#8ZbK1v@G*i{%HS|=lhL~|rYC}3n~dHrCsN2w_;4#9C-`_?<@R>m zFL&FHT>eobuNHiwJdcuu5jOOs(P<=;Dv(yw?d2%s!iQ=;Rq$z2SVd-kva=_))r^M9 zQN%?#d|deWbbg%1X9!*^=^X#@PJ>V$2*;9!^9i~mt)yJiFZfJJuWWF%l#}&>A1^1z z#G(U=C}lSiV7B0MB*5rcG+T|SS&g4SXc^%-4%a`{_=$vx1Ju#^rmZI1Rpo1%PbZWQ zwHm^xmRK}t=}~K~%%ll_MJgn%Y+kXHFzu+}iBPa)>Ebg_=KzQ>X<75iB?Ez*+uD~d z=~}Y1y?H$ciuVz!J5o{0j2LavEl%Rp9F4{-)iz5KW@P)PdS<-AO|e>Ii8V&jayY;0 z$UVxBYlMq`&nm-8fj2$48F9D`Ap3{1?a~Jm3wUKO^Czz3glvlsGRNv#-gjhj~jz zDAwa~X)B%Pg$AL*eOjFJLW$swyNt{n>Ti$qeyU04@%k1c*rxP4V5q_^_sihyC)5P* zR`+|}%Jw`a)I?x^;W%OBpY{?)by|90(+WNA9=1228pDKRN6=^{l(}zTR+^z6%PHwb znaL%3Vw3vC&8jG&bnD>$tjAQHaid=fNQ&d%3N@-AEb*NmhGNGMFEHoBirjz5w| zCsYRV^>YYi&KF>vhUNBZ2%71WM(d(T@5Ys2&FPL$zg_25{oMDni0}icfb|Rs>EtN zm6Q`Dv1msuWf>XBidZ!Jy<%o`l>5dwoh42T>yeE?y(SNE&B^NY-RWH7H7DiHNp}})d`rp(h1KYHJqk<7=E1}F?-EFGYoIs#0Lx<-Q zMrStX{JN!PPM)#Z1fOHft)_G|6Y|Ev`O63Q0GVph^h=rXMJ#Dd8( z+*De?cgS??>w;geo^F;;w+Q|f_4G}dfPPExZ{sFHwUy{y6Kl`b0L}4u*bFHDTw1`t zD`CHXC;0az>{zE%$fWJ7byKEQr3L&4a)BQTew|w2NAhWx;9tT`W&E1b0)D$3xI^%( z`88#Em&JZ{tn>=!BU;jXy~^DHCOn`o+wkuZBkrc-HvSxnCI`m00GZUd_GJ_~D%P+7Un1 zB$N&rDNLsX8h?&(>=AOsfnTQ;xZll{4^1I8{t}^aiEBZ3mV4zOn$s^J6U zbNM_>!vsE`p9JD317Pe?OyCO!JvZh&KZyyv39Hi2d?6iLiE^$?y?*Z<;OHD5?Y>iK1N{ta}i@lt1;d6}lJ_bQ$k-Q`}FJ3P`1ss-S| zr?6b{J_GW(0fbS!8N?R@cmM?`0MOx|xd(hNiu`w>bp1Yz-ivYlnBcz)Q`h_V;+TF+ z_xo+s^`qWDs~>ax_5C=}e-{>itoQr-P`?*V{aEDRhsFI^=CAbhqkXrMZ3_TDd;lIt zAv!S@7vUH@2|o^@0Z(Bbp2iaV1%7RkH5jr(-rq-7UjBFm>04 zlfl*9r?3hh5IWH5?8;LG4~hVGqkraJtX3TE!xS9VO8Nc?dpEIwW@HO_v(K7 zwtM}KgsCdD>HAWDI(N~|_5Qu|Lz`}srookIyo*Huo%b1H- zumG=O5&nr5yoTj?9qaK1&cna48E@iqcnjC#ZG0F1K|kKX0sI$_<6S(D_wY8}Ck-Fa zczj58_=p+_w469~l84Tv0y4=~0x z^f*nRLsU)A(nNZjCeueWg%!{=Rzk(1{S5+Yzxg{7t>sJ111JIefNs+e z)?mGdmqBy~?RK5tLNMi4e11B*f&yBKB5GCK3J2O$Kkh zM=`*EZt(X}+YXF!xP5RtJiFzs$EM%9^_eMh~A~FmXG^`up%}Zqt+U zI?<-5cVbul0o+*cnC#(3Z(9k;HpbY$wL#&XpB9lkGcDDqV$o-igjC&jHL#yS2lOUOA_P!N%BZyv-&lzv2))&Y74h z_jte|BWG%MLS#rfOGvl7udL8!Go+hSH#@Oh4*G3YYqME?n>9!>``Fy=sLB8-7s*b4 zw%LN6kk0=e?vjw}$e_57+iZdI+^0LtEIgp>;P>2Sr}_Kv1h-kUyk>nqTMXE&WhW{n zoLoi$%9~~tG;FrSW~a+rkIk03L(6Tp(g`VSRXV;@`E9mZ?UAbd`&p-?yGF$%cIFN& zbnZ6H_f{6{Kuz@yOs({O9o3ayXX5{VzO6(yz0zy5^LE1Lj0Se1T=L4L#;F~3XH13` z$>fTKihv_OjM_<6J^hLaXN!JqS zOH@E#rZT#Y#?x15GF?a0=z8+g4OCBGrTO$VYN8wIblOg<>1J9-x6pZXD~0LXw3WU? z+vvM=Iem|=rSH?%=?C;3`XTM2+o+FzLi_1-zk4^6H0LrR`3n{Y-qR~E&Lo5q7c{PME-wRg(BRHnfzR)!G{i9!Mpf*@KPBj za9!Qa#{|BS2jHb`IEe?j0WVvFdftsfc%=u)M28!ANGAT6!cx2kg46JvwoO_?F3=?o(5PIjZE4d}1DD$D^8*Gh*~hN1 z*%t?l#nsq#J8|k=?1uFj*YmYKZ2MkzYrD(ZOq+e%Wx&1lW(i70>5KMZ13Nbo_6g`b?^cP%8 zPvaUoj2q|~e2bpNE_x1o>3Q5kFW`Q99uLqzN38IhYdtTqXLlj2wQj(~UxMOFvrZx7kl@wx?PN86Q^L?5Ej1PLP^MFT+c(pn_h- zWcnxS=rzot*E2kS0drl=oQyGivnoL)PX%BVZ3M;>8J3;}hX+tDb&<{Nh0b;FDb=^2 zWMZ`^c&i(J7Rlt;X8R}QGJaQvak&edrLuggVvPQcLV6Q|-a;9@jcN1_YU#h2Mekw( zy@wWh2d(tJ;@j`A;qqOGQ+ZPIElXo=DT|th<9G_I+`r1{ni>9btYmHs|<_jU-s%^vXces*`7a85eKilH%q zVm1n8tQ2E^SXmD7%7N)r8HityCmqctos*8T3KXz0C}NfQ(ox=

zUB%@qtJ;>dD5 zJgh2*KtYDUg(D*{5gs-vFM*3jMqnyDY+4=y9zHWeAm|EXnsb`J$vsV_*$?l4=C|1& z28+K2J~kcY>^MwhwV2BMISWl2DE_JN@K4hj?ux&EL4j&0oGlZt3ic?s*<@6KqZ@vNo)>guoG}9YeXw+!WnEK*0EEto}H@rp9+pvRPb&5 zV&zDG&UQs6u!?_%U*bBFLeTqIud%1$VGm|R+3FT2V{$pRxhJ27wV;$OK?PfyBegM^ zcBRaR=rD$mlf_B#DAs9M&vMsfeDIQy988v3@^hIbPjQ7;>K^3e>_O%laRMbQnM0~HL+a9h z45`yILbUmm?b2QyA@Up{ZiU7!Kry>;s1Vc2Pz>Ui9g)9d^7D5wO4w)e@^|?WNgbP? z)TJn4m*pk(`3$M~?p6yOFmZs5=ahiPy3|81{hC0kL#;?dQ zFgqJS2NdHD_N7CEXBp#H($J*`I0XlP`Qp4wUo|r1L|)`Cj0|~sUgWF!H8~2#9b{fN zSmYqwGKIsDfrsCq;J?bhreX}o0@{hG{6+wOaTN2r z!TC*mJHN@j`$p#O*38{^GIu*OcelBBKjuH-KUR0U`5wO8z3b21?aSQV#dq`j0X&In zc=!SS0ID!m@d|#B|Azn8TZ9Fu<`0A6Y<__M4pp%D@A)55gkJs#{}Zb4dHx803{}{{ z5AerPgP#cuwLw}?9V0sc2s@n`X{q(dg&Qr9>? zz@JAI-HeC%3n-$UE*~%AF#o%!h|i@)$q(DX|G{55t%|)&jr`Tqs`x+o>yj>epFPe0 zT@2({g;Z67880Crgb08mQ<1QY<1=^PZ7V515d zmtfaP8JBJyN)ETy3rcuuf1H)ucGE@_hQDnmQQ|m|x+M^3!5ms*=b*MgDRF?N=9D(! zP$%wM+)dJ#l*VPMWTzP%yjCo0V$e+C(HC=?l{C|vi# zj;l;73jLNFKZ~vIB);3xEnm4UUj<>?T}l@Z61$Pu#-?w*H67i`-mEMLBb|EK=_u2B zl;}hY(~CVD##Y%RUR9C1KfRU?bEL>oMuqXtKAJ!3 z!g9E-O|8-#sMSE1ZCDOeV!X9-*18;KCFL%`nes#Bt*f>!8`aTe zKQ8N3#+d>WR2-^BCYcgOccx3MAGnKQTM#W=?7{i%oyvm4jBu`}+VwEf4XYxX&g$@` zaOH!%BIK9nfA0#VxABFMdT3&+jBTnQwdb!ByK;M>vD#R-o<6s1?J!O~Ao;xvRI4VLga6CAHgRv14}2chV_ zaivdm4!jEEKPATc9o_U}e>Kqa#)MW`KQys$EIW@af7dtZSJhp}9yOsqP7hr;9<1-sl?nzUpY9knFw{jvr7aj5MtB)|b@Aw#0=-m_(kwbfmEkn;#8+! zGV(kt{w6C+Ur*7;G(*gA1edEowOhuwT!So{rG{kD97S?jbe&Q1+yDj;ZUVx0S)77j zC6`qURbSv#U-8i%Y$0oKi9s%BaK&!oHk>fefA`x>Vg|?qXC_~B{5ML~7mQ5iWlCQ0 z+3yUO&X+!a&BdReXVmu?UBh9PG3Gf8Rjc#$99Cv^|a$^p8?q;Lj z+vTT@2yt>xz}*7?0G9{=08mQ<1QY-W00;m8 zlaC+|mq1TQAD7T^N)xxfdP*1$e@|~4RTRa4*Ks_t>pCVWCX}WGVoIE(oreF^Y1+yZ z5y=UtDUnz{d!C%vj^9Kx&neyUZCJ6WR6s@0BD&)vu>dsV{HuXQ8@%zn$AN z#`ao~b#WAiI1-E08`ek9Y{o+K;5)%|XN@Y$_7OHpDp7KLwd;aI0JG$$H!m6>x ztqEfbjqM^8COxWUUSdkP^5UI^T7TW{4qR67iQY3^owTFwU16#{s-jt%pFWxll^ z!U;xiHnxR)D+;tQ*)~>h4*DG(-&UPar)!J4D%@7FNzeOWK252xe|Cbd^_8Yj-Oz3) z3cgUW>T9RtM3{-}u@O_dzT6Fz(}Cax!#oMq(NGArXLa7+J7#Vt-if1o!{)^;)3eGAVl7-Bjq>v;Nw-wLHL%X~ z^}5|NiRpy;(77Ade@0F@6WK(VZSRwQ?W;rF-;C_$APk#AX)7AUUHz#^CC>iWhAyRQ zg~^+?8%Bw-z2UNiiA|lj&!WT$<#lUy+zM5aqpq!~sk&6hIfEjXsF`xe9u@&_50VAn|!mr#sK9e>Sl8&wp=f7hAujGYYCJ_vZci_iw)g@3UQ^z?6mIU{Vw|J5jHpLNAVduaVqKQr#Q) zjh^;=)qn7O6-3>}eipRv`f2Cb54)`>OyejBbiA}K6w_lrS-L4~?wuW|S;nShQFfTd z5!S{q!|p^Ui64c-_EYpN6$D4Bb4Ms{`k|k03sbd~!x9x{EUFF{xG3B@`&>e)_lRWY z91171HmAA7^A@uXFJw|%&j3@XMB&h!V-BYig$|)nzX8qQe~X zg5A|=p3Gg`&0KuRVUcTs+iMNtScl_%+09g3cUa0K%#O(0Y1Hp)@1yuY4HE4M@72!X zSaao2Fj|qPg_%7+)VBw{BOQONjsh)Q+>1IYI8?Ep#iOK=-9=&h9IQ+0O`*E4)8oiH zP=B%N=~Tywa3Rx}Do>?jkA=nB-s2YMpyRT9e!Dk{g!%t1&Ru-$XeKnZf73kiBy&2q ze>x>BKUJq-hx+cQ#cijmb7x=mN1m43(ID>V5Bw~c|1aCtK2e`4VP+@n1X1FL-Jyem zeOo8#hf$IW&Tbg$xD}`*(TT;Tu>4fNxqo1fFFK19umP!7v)2ol0;XA}zztxV0tKL4 zUww$wf5AEd3cLao5imce2FwntSfLL2%FOpy0aM_!D#EM0hUBn2NZ#PqA0Q8Kf8{yh z5pp@(G{3+xzdVKRPS9P}XdnnTd3^-=WA+LI8>@d{89!mI{>;^_A^yVLeTf0xmu%g-8w<3Q?{C{g7{@

&y1Gc8Yjg4*yx3mE9n30qBhPy%$>U6c=0IdsjWcA zxb|NJtJ;fD=%_S%5T}{VZQ-leHzc^NC{l^}O7*>7dZok7HG~Dg+FaEC4A@-MZ49Nd z?o%L7k!5Zoybs(!(2q05`GMJ&%zXz49{|&4Z%mOZe8`l+uQO#~Yz+$wuvcy^J!kRR|1jBnq*EBC;uMrH@5iQOwdCl& znnbFSGm$Rje@6DLF_yQV8)JKClNG43Iw@;R%C7%}?9X4bp7YKLmYKYpGZXs-@15X0 z`-^7QxIbZr?d5{ob!z&<$9~AZMC*mYPA*p!2;4&tyZnAwzk^VT3>zJr>(6IMEQSa?%lh0H=CEXe?EM& zckj%cIdkUBdCi&GC*ObIy8s$I_iA7SzY%{4#-gEMU4JaPEfh3kbsc6R5sLK2H7JBx zsp38}7&7YCMh6mRTPQ9ntcjUDX3UIqn?87;Y4GaEgO5;rfw9e~3mcK%y49O6FuM~3 z&ncluD6y2lE34M$K}UgxLLEgYCM@ZW_SL1jiSLXj%)Wt;-Cr3Dh(*I;Ge#KKC(D}5ZJ};6-WKiNN+@Z|Mxb7FS)!v<^f#feHPSzj$Zn^h zj8G+84kSY1y6$MCdmt7wBZ<1@(f*yQBO79&gxL^_89N05d>9W+fSshnk8(mu--=jt zpx+IaP~4UVC|XHGrs$X|T9o!JH@bhfm_c_FQ9fNqg;kzLv^8P&2>=>q66OqnW$JOI z5#O@P==WiUh2m@-b1;`MzOUUhVw-nbeYHkn<)Ywt9rHy&Szl{hl0)FUJQ@xg{c$s>;RJueDIa{g zXU+Fv0ZtTbwuo?AW!nb_Rd2E3$vPHeiJ*)mwMCfaMmW6L5S-MU*@L|>!lBJ}C$f=T z6RV7f(QC$L;*p5<3xe)X*!mnfx!EgZzdeymbp6PW;`B>Ml3+C_6{Zj z#Bv=?XeN03L=AICg5Y=Hbc=si7B7h+*2P(t-^gUqZf!FA~9 z#5%Fe+oIh@xG_9nCZf^A76;(sAt!Zns%~A*rV{)H9cN)9p}4Q1I}v}{7E0{wNEoq% z06Z@@KlXVw?Q9+A;9LQ%J(>vhh?Qb?CqmH(;k?|?;t3-$5Z`RX>LQ{= zsM`?L>$;tm)_d3Y<BspJDD?F<``k4uq)=1f##d?hJEhud7%#-l`*v zK7oCUX(R?>W=q)UjT5SJ6Rt;;*14-nC{Z2#xKMDnV9U;!(Y@8;y4=*axuwokS%Qh{ zNML~A>FbPcH6w(;DA;zEtSj4Z*RcaT2{ZcEN5cbs<{BenhF5=tqnnLzN5V*$t&xNo zGrAMe7-4;G+_uSvb^W4cT`<~bgd%kzr&--daO-`z7?)`Hh>nlqV}yAliN2nw9E&q! zh21ezLX0PjNViG&MdgrkWw7iRLO^`rwK{t8SB)s-Ge=sl;p2q5;TuV$+^u}L6rT{9 z>yw0=hat=d9`An`2QhdCERFan9arE=Va^O10%86Ly$otnui?{##iP`Hs|OO&-butl z-EGlcNwur+89}vc2=m6mPS#+q({Vj+5F)}2lu$of%V97^^%_1qDw{Rc)MdP_iA8tp z^x;O_B!={P!jz$hWDVdJ9lNlb;O`p>9O0Bv3}&d-Qucp*QOB2XtLUUj*6xfMk$6bR z>V`j#%B_C7e8rz{=E483vZM z@*mRiFuo_`@Sr|MmcxUZ)aT<-d|$(3Ivy7;dSQR2TS`#7!=@1vvg!Nzcv4jTA)z3{ zFZAIlJgwo!I(~v@2=yOgwGyVr%-&EuVaD7ZX*}(DEv(EUQR`q}>-vL6BJE~Xt@q() z0DwS$zj#)|b2@&GUl1mwAPADzb(%X8>k^@GoS=o`&3*leorKAiF4eJoixKNEFB~u< z-DZ8&Ccz|s&+GUVULch8nu#p0icnQqH97}OGWUx*Uc$@5)*S?B?kK_d@G5?z;kP<| zhu;%skE#`+WFV5FcACH^WD|Hq=TXr2Rs2!MpYR%?xYtaq2^%{_k+dWUbBClyM#Xv` z{(`@1_?wQu;~#|MM$v}g?KKnjBd@G#6%_raj(_2Q4WZqaTX7G&oLU8<|IzWLpi*)6 z*hSN~b-aUWg4)#FxNe0P?-C|irr}`sTf=*ViP;uL<3K1J6zlycG%tZLsXbaDM^Mr2 zG_B}~#wvU`N=zqC3c+La_nVO*p|&!I%`)hf-ATOw;n7JWFTtCLT7`u1m4lnq`^ZQ6 z8tFQJ6;L6eI7MA+u}6Ce6clrn!vr6Uk)Sgb>okr^2zh-&Mn=XK&v01Ehf8U^jyI`{ zu)K1t#^tQ6IE!G=OKGA`lZ1%Niwi%yquYr1@Bo#IUM3S(j?~NOLONDgQ+51~%EZ%j zohn49-gqL~Z}s^U&D7~QAt|S)*I!O)C-9qpEkI57(Ojz3s7j}RP)$|CqiTD!me)ID zAa16Xj4<|FqA^>W*@Tb#@G8~l$fH_9%cxb;aE{aZe5#}4HJY!}0y=?k&i^uELC|~6 zL_;_%-^U4)Qrs^&+ZEc#rxR(BMkncXGA$;I&sB-w4GGUz8n+WNAhp`>>+`9ePSNOp zRGpSeLt$_gg0{tox0^c>qV6)C8mN(=L}XMgb9LH*XpNc(D?cEe+FkFPBZ=5fA1$XA zomS9Ff=39*%@M*Pml%$lF~Mq?5IbZ?jYiB3uii(e(-|7I>9mU42@A#!f>6|JCNkel zaUo;$_t#~0xrWZvXsu2ig20o8sz@k*4aFq`y59>9mnH z5j^IF1BTH0Ck(0UhqeLoXbqjC)46n>0JI|!Gvb6&cdVjuK*lM&bUtCc{eE7bYq4mw znNT^}MdhO)nHu%z)Jt0k;|BFaD3D`~b(>*fw-QboUX(8n8}WF34pz*k3uvo3k#-2f@sJNXU8K{+bP1tov(Uhf-z+A- zG8={vgCC`jX>_Sh9~Vks`F}xwH4;jr5lc_VEtD-rq}L1zbU&ffC+TuwN(6%q;jkcn zZZTN3N#J#bPFG5cKN^u*&4%QIhddfxO(;z_c5QCmNZ06eEnP>L&}$}ggbxTMm4nFX zqfgTfLdD!T3|i}bxQaff(@pew!uW8s*McqpcMNoQoAEed_K-a7rn>-tbc;^AXm>WC z79$iMh?znNXE$rDTJNJT(w8*4Rj1qN%Y^bwrp%0mPZXBF)T7Ni`pxcy8MJ04m$@rj zTEz{CL@cyK0R#=@?^bI7;3PW@! zOjx@=FMX3xnuzTb6?@G@h0)(%5$YD=_g>no(S17IPya`lID|bx7?+mK4pnEnXqRfx z-&dDet=>obDXGx`oet6=!i*7HSdLmle}CB45v|>VVkhS`wo}l5dSgcamQZ)RE*LYm z3zF0|*$?#^9VVPKVz;w|%xRA%TA~Aypo_}iAruNyRYanRiXKtuqX+3BjULwNd-Mol z(a50PgArz(W$m$O523#D^ifbTCj?2_@9Xp!JwBLbk)9}_Ki3NUfSu*UGOMP<=m$DI zNk1f%W@6N4Y&OGxgr$R}ehxTQLuvCodWxRb=*K$!M0kxea!To#8LwMAD{ebj)pCJ# zMWtNnvSfGHKxAtqx;@erHU=WyTe^(?{;r6yIp|*csZKwmX9;=IS+!u4Rkr5v(lq*c zMxuoETF~H^Iz3OnBKUjFM4RlQRgSeK8nbCls2P@_Q^c`<+DRwt*E+pOFA>TG&`@Nn z8Elo|O_$Cj%*e4QGu5h(UZGbt`i)M%rQZ=w`hYQE!c1$gD77V;uHuecxWbLwLgx0m z^&xZnP=UsDr-Napx}D_;rD*gASAZy!VqW@FIx1n=a`Ox+4Ci&OZD{XkXG2^&}f|gq59>;00ii_b$W-65WGe(XbYstg3E_!C(Mwe zI=v?pU_mex?+eA_7HbGo>zK~Kh)^K?_0;SUjKTDOvElu9I6#;WI^#N1nCi$t_ktso z=U5QVqI#8SI`gtTLcRW~704bIKKY#f`RvzhET%hM1_ zyfKvMGx`O*9E#g2tQQ!}*4Z33*NPRaHRI8Nn9ReGz;jYZ5@SIh{82I4+{HjmY5?0B8cXA1~Zhed->CT3i8AUvKm zp&e$pBXp5TP%2xiT77IGJ5ghcbaoOunJ{&z_>djv_IF1k+ss&Exx{C!L?=ba_EAKD zvI*QW4DHzxR1ADGb4r?u0ea^|n`-6>EFKZ)Amx4p4`8ilrR#gP$ ztBNHR0-<)DttPM4gU~o$b|#^urXmG@vLY0(hzx|o8tWiTccU!RN+L#BEC#zWCog|U ztibg;+rZAUR&)v{;ViX|3VA{KO*%W9ontQrXAEgrXO0xZbt0|KhoUVw1{XuHmK;1FTj79-veykH=nuu_)R#m(4SQ<&u4skM2L z&Mp>JCx+q;5j&hNwSA8nv+U@9HS8lg`zZUEr3pIvjBwamL^Fq7M52zAWgpksW$Y79 zQd3JT+Gn+IA8tNn^Rdk(tznnz>{BUB+l*MR|f87Qn9PT&z&6t(SP`^o-J$JBcbapMfjxeq#7VT@=88P~QLfxrkhu~0o zwb|W%h)w@`AHKzI5J=oe*gEPCH+}FPot^(n+2?e2li;4Ip?Ern-JRLqyhFyobau1O zZjoU?Batw=x2!cHy)tdu$9A(XXzYtR`;r9YMk>eN%uFlAz{1Ij`k66{Yh{wO3KJ9PFnb|*nK`uoE>E&DTFzh@v~ z?H#n(5B2%%>+CL#eM4t=vwKn-n}cB!xYWcaR}KqpXxx14TkKwq?bX?R?0&-JLG|pI zpyW9<5$!M&glV}3>r|Au@6*|SmLzEQ#t7l~%Hi7N+Js>TGm;yBI?O~qJHQfx{)ct; zZ6TVt5e$m&-__ZJbU7irBE7AVpef$3?rDq;M1pZAz$I45&vf>zl*C(%c&@0XsPl83 z{Xz=%P&~J)T5I-26SC^_I{TGSYtwS5HJ4KH;YRjroxR9jB9sisG!S=U2x0Ybbh5sW zUNdg8T*X&(x|qF6STG{&!Etfi$bPG{-w9b#C^KyuBEbfK8NbiRqqM`z{zzET9!F_s?=})r!f-cZRuByq~0VKQAZnUZDi$f-H&oSOq2xA} zBA-rVhx6$~9@lw72x^aI^@_qB8s9#OQ$d+0YfHfSPMu%GFDCHVK!os-4|QsPb1bxR zt%9`!k%$%O;UD22)%eGBekuR>FmX5`EaP>ZTVkdWOhtJ5qw&P*NTbocRWMy7Xq6I9 zugukx#o)csXm8l8>y`;^mI!v8*cDRU61Ob_iGi5#im&3I(D^6%<%BZJuC)yE=16c& zG!zlKW8+vDWDHfS)|WuxI|Z|UT&eS`EMX?y-dt2u#(+Hg*$b=M^x}z%h9US5{vd_)QX5d-_ZHp zVxdp&H4~|jSk_XH`*10X`0xP#md@`L?v^`t=Nhqqcc0Gh7x2ohov2)*LsZ+R^Zi2V zl^QZ~XGC3We^f}w!k8I0jkxIu#!LBQI)6MR7%fR`n>wkavl6KM z2SS8BN%-jhFX7diTYBLt{v(|~B^aXwrU_Di+`%~pNZn} znZ@fOeFF(ojNx+ysx}EP?jJgTU965g84rz{k%V~r zFP;0T(Z^cwSB?LNuxxnl9h{x-;%9j;1}oKO@qB+}QV}2M z?~le374iOma41pH7Y&*<6;@tRMZeK&R%{O?wp0X7v%ex7ifk3wX}aQ-xfgLWA;ZgF z#YZ?bHPqBCE_Oml=75_r#@yQ8+1%dQwQg;zfUE0D0X-{&F6&|;uTn&4{s2H%wys#& z*1BS4XVu2fhPW2aNhaB=&t z!IjLKRnN-o+YpKbquU7+T>xc*npIG*Da#3SbCjecW1F!vI*?dn#EibUPia!OaMo;HjPcrcXItIYU$0bY+#&o~<_rpCjqt5{;O3mO@(Bni@h$+)Q+AiEeLy ziN+ejVWAD=VVVru*klm~v2wbyMpw>M))FSBjxjY^Nn9x|5TwY}T(mw_>C}~V!bDTz zTcX>2(3K53@|3fP{c0>adI$}cl?*k^X{Axr9PuuNv0cKDnvkI`fXQ8Z^O$?7?RD6z0AYrfnF1n_vjMa$M_@yW)qv9%YEx%5grXzG}UuY#RNQ zPnKWmXe4W5@}Mi{=*qdudGh)SBNS=gVRjG5y~XJ+$JG^1NL8p8ZO_*gL$odJOGhkH z6@1D@rCTh*AmQ<$7vZMdLw2NYor7|R83_(KL!(m2^&<>vgkm9SHY%MyrB~U1qA4L= zxj@;Pou54Vb!?wmh(&us;q=jh#$nQFh60!gqu!_VDG^PH>Po+IVfKX#V+LoZb6c@` zXD;kIgws9%zHO!hr{1f?2{pZDnlpv{x}>75xkC0>;k-{Jig}d*5@yDBWrwEh)Rl|K zn|)8f*l@59_Qj&TF{7_F(i8Q6Dwhyy;$y%`VDnL3`566$P#Dhw_VKI%E{_IB1ojDC z`J{5WPiMo!25eXWx;BxDG zoS?4jZ0S0gP~JAEvR$d(N6#tOh$VY1VS44+jYHS0TJKe^&mz)@>R&F5_XLm7Qq)++;gXmP=5!_O7?=wAuf4*j+^T#{SMF5y z2sq0G)b?u@!A z;8pe!j(4w|REv>llhl<1%0a?xnIxAmU*Iy%bEIwNqyuYzQ6A8h!*rdMy=og3 zaZUM-D{tEstdluo3oKFcAfei>VjszfiPCvJ7La*sn^&#wZ0=gq*08a$Vfh(e)a-8d{n0gBv3B*kHBK`@kjHi92^=EihvJQG&33?7*{(dP zD?e0zB!foHGCCQ5lpFWMklfj`@+wagrgm;ID;!gzqTkY5&WuA>exfVS2!1TKj%IYo z40##%RkkZX)0JnH=Y&WX#OK)O?xIw;$fmv!Y8Q8|*`Gddo2 z-_qh$eoLrW=iE6lG=9I=l|LwdB>2-8R1Cs!;jnW$1Pa2=c}-XTto(&=Tn-zhAs!FK z6GkL$tgQTSvdjTk?^XUrXie`to58e|8j5VS-IXO3ne1nz+7DtxE#f+H^k)3I@CF8e764CSk#)SWyy7HFtwsn@KAsp^V z9W^;|RLeDclgz6eAuJp zsLU;g(v8w9{vT?duDqi923h3<0F-g!O5e^4}eDAt5l7aLYaDVqN)zI*xGa zXhm7hQTbSlTB@t#g)%G%#jSWjOK67~^x;x(H!`?yP4cP7sdIF7Zpt!n8)89GSf#50{KGy0n99EqQ&gj?wdy=V ziM4fUfwO2xs2j_!z0BmfR6Sl-=kpMuz~0h-NbQC{pq`+s3;FFb2Pm8_AfLKOS5Hz; zCip_}wrFp!bwp@FE?=W+lcp{iCPXmQuA9|Yif=Xb6hd7lHAlQjkH9+{RuBr7N9A3< zR&Eoad`-iO=C0+d+uNI$cgkI#^{vaBJG#zj-bg5GXlq-&p{=!}v#V*{+J?^7)$Lt> zt2zjDI-xjSwzj#UV|6W2S4B%S)@jQ9gL=Yg!{aeRj+($^kqg2qqyLm)P0>^yuW0DEhp;}! z0Lo;W9d)6|1!lKcaB|0(P@5aQpwZiZYsTs>95BM6o{$-f*R3)_k$S=jqphC~7}mS) z;m#nRow!<0P%LM^s4WyR+XwnKo3T!dt4kzrt~X*K@!fu@B({X&qr0+p$Vj0)`eENK zlHc#XlHNDqN;Xgv)|lCKPlejP9+gjD9&sn%Ya4 zJIYWyp`y*^A4~O`!MXq^$W@Rt%+%Tr)X4QeP)WG!w zRZjQdO902je{P$Az`8eU>V+A9*X+n_cZ=QiP{xmE6vWMh`@1jZ`l1LYl%Pj4EROJ&mB6kwk1K;q(u>lQif;xq5=H+kJJY`w}WkOAxeRDupgTB=-RA%Ty<1uK1n( zsa3x$JJW7#5?;`GN;Hy6P;;e}*q2!mJQhlW?(H8Ivc(W$ME=w;)AuKTIiQQ8k+tT9 z17y@4=ub{MJ z{(d{{E_L@t<#1U{uIpfb))QL(JGLi54`*EeF=;4cm!Qe$S!2wdEE0;X}3mSM&X zJJWOQwYhVHH1)O|H$-Gz(=*vcImym0x=Uj+7nL;itJ%?u4@f6#PiCcQ1kIS8=i=>i z!md-ZHh?W%lk$eGjWw%n$G~R0d4coJI%1tKZI9Gd5a}PM$-W7Hg5cR~SMmm(1NXBA z*UxdWmwK;@hlj3cg=#F>;J&hAOi9>dIuK4Mi<^nTznvt7t?S$PP>vs1k{ZW4RbU;o zkZtTZlRO}hDMVW%5{8xi>Q)A>1M^BqepC!YR(b4QQ@`!HY$kUl!Xzt{>YVL#U36cx zJ@c%3_HV#sA7z(+qiZr^TRW}xCEYoIj{0c1#nu^ZPZ|9wmB9zx3F9;2r7o`@w2eFl zsP-Xt!UWrLXfhH;hnYxa;}eSF8510r2~`D^PFmBL)+aX<@Av`g{xP%eQKE_y* zMHxwml0g;Y1U+aS3bF@N5(;)kT{W!VOzX)&QCPz9EzyB+upt<13B}@x4%5uCSO^8t z%)3O-9NJw>Ifr8!xFBl#$S&yUC6@sBoe_+;5pnu(w%>>BoG@Nq;hOnNdU3)8n{5Xb zjF*Q}IKU*EPM-vUULd@@T%Z|z2L*GR}nB&}Q;67o0w9<&%K?nOZo~03T{77V8BsB;^ zVM_Wr;x&Eb#%WMs-4^D2pWq^>D+7?QJZHh!xW-B(`Y?Pa)m1#_&^-f@0cp1^ln}>w zT#hio2nLtCqpzu4=ElK?#m35J@+S#C9EeSVRU1Yk--uv@Z4)+)^eI*QKwNzAku8E} zn;p`Bp6uM8ZJle%r2L{BSY?{-ndhLS4=GU54cAd4!lc0mj8d4C=Q>=JDr5tFZVxN- zluUxDE;kjyyVlc?E&xORoLzkCfmIJ6YrN$2@L=w%OVw zCd|n24ssnmAb5f{Vf;f?7PfCV?Mvs(#m)G=j1SH?V$zn5mZUimsn1F~v;qQoPM3pz zL~U#t3iVled=~hE%|m^+LjQB(W@2y(ofEN2`zE?&Y^Nl^>`~>+4fi9wqZpDa^e{eu zSK1lDYscN=gjs_mVs5`B6nAx%8qWAoJU!vou`V&_sTq}>8cxoX-%4Q0QH3xmo{0A6 zE-JTEl5!T#%(3&Hwc$?inod5sx7&F;f0SF~=_oj1R?e;dK^<0%l$1lrGtxOSEgxpu z)A>MzlZMfBLnnHOiJm*kEEjpRVPva+JD@r=V1myw-z+8GG8WuiBV22Co1tx17+fM- zH^zLK|5?JzCif3hkFu4_Bb4^x>V87?7&1o)OGepQj;szs?U>S3tTVD=7|9j^4m?p zxP6<=SX}d*O=ujYM$cs=waBf1+?|Bt#%MGVPsEJ=Rc2yKG#D@D-gX9rG$xaPTdm^6KB7Dn|uc7)O#Z#Bf!93O z5+>vfimlZ=*Jt zk83s0ZdU@?DBU#8^F`N*{vjF>iUu{i&81ZapPMG=?vvA+=PNFM)JAEpYMwg?b4J%l z^V~@|d31FL8yA}A>!U``Wt3^QO3*xa6K0P}glV2{5~dAbmEf@|V+M41z|_TRJ*rWz zo{CnGx)cDz5tQQ{R0AkiPfNd7iczjEQyZM`UqQLr=qmp*O0W{G07}q?Rr0e5&GK^% z&Xk{>SSLTv!bbUj`6b*cKhMFr0LG&T#qzUMeip-zaxitdfUh>G0+t7)w#c%nCAzQz|_+L z^$hvm81%kPo+=BV8kB(}FmKR1hL`ZNEPEK=%dSu3sALd-j4N>Epm*2fhCy)ug*W79 z7=7}y9~a8c9oQ*9@5Vi@Hml^jeb_(f-F!Ls#aN6bS$z~^85*+QT>wI!auyV|9bkWg zh7y440|%f64#TtY0Mz}+Pd|VC8b{GR<-8}MuU zu|DAU?#HHpKYu^Y3;6Z@*c|W|>_<<)U$`F^1pLMO5efK}{fGtpMfd>H)%$U6;4p67SbYGW+mD+A{=EJ8 zLcs6akJ|#G+ChAEKkl+0zqudx2a-tc!uY^pJYd1jKY(xV$Ak9);Oc4syD@3aK3t7`xxt*KVeRM$%8tyeqH43bZsXa$o`>#z!3KCQ<96#29PXF`=v zXJH*Y@@XSBLX%IMa4x*^>1^DJJo$7Ez5<_rd^#5f^5xTcFrmw*E`(4ZpUy`g3gwf5 zohXt|n{gqE@f0Fzw;IGaRfvJpK*wkaN;K#i-K)`a8h>6RL!*98>DAQf8r5m^iiW2& z`l6=Xs`0lpwMSF^8eO2_VnD8cu?DsPs*oqOLST`4LDt_P{;6A2O+>}8^EdrD_@APG z_NfstvCil^a6wA^B(M+p8&`cVun&_D;SoY$A8tygkB?*a{dj8^rk5N!jH4S5;Qf++V@V>>Ly{;->Osoe5UAcyMS*>|JdmVP@tLFv z))FWT?1Mn_q$K(81A_)XrU00N>GIQB4Ci4YfFscGE{bs!6Y(Bq;C%#e4D$(CObpA3 z;|x-;mQY388qP zr~~j>u&4n{vdk6MJQrrpvzV5DDb}=1lRVWnh^MLrPpztcq~^g4R-zec7L)T?nV!#C zfqfWfftn^kNf_;P5o4eZ0F zLo|k{}?A>$h zMcV5S`gAGJmq4R>6woP{N=tDXorV>(46CUDUDSvWEysn_jE~U@Tt=<9noh^{)QWrP z3_L(>_%^lUL0T<|y$~ucM4>JBSKwrIo4Oqwr(v18L){66dr+)@UWAt=_de{J6hE}7 zM^UIz{kvFu1nej#XjDJ*2pCAcm@cuTAl?C!b8x2QP}+X#l-=-&b+#Mh1Jy~|8Q4cf zhv*}OJ*bmh-TpmcNYuDldvf(5x{P5%?IU~OTcXrH;#VFNVyGG|(wJ?^l zS_dz!M=5Q1-TN=U_3NizYe`Yv_DQg9@ShaHg{|&r~lF<|({rRX>7i zF!iGjTb`+2qBhy$W*U^ED5c_Km<2_$;iHshMUQQ+ehj2us?M{e#Q;><+i}*gKP88E zZFQ2aI!vG5Xwm312k81FeKsvh%BA`>kw-l!q+a-G3#LP+jDchhVseshPQ#uc z&50QDD2_5pU<$=Cod#UOvBDWah59MHA@F3+I#RmX#=AJM59cN63y(ol_CVqHIE%v) z*cZDnFLp71tO{1Rj6ig!LyDh(Nz$EWgM1vyeQC*hbCPb)5UA(b)sl3_9u%~d94V!5 z2)%h9I7%=X(Oke~UOkA?Jg8#9X~FN2RhfqeQDO6Uss=}H_&S7APV1`FxaIFYW# zQo6>W$BD>OuTZa)<2cPVj>%B-kD(-6@~zS6>v@2GdKEj}9^EcmGaYZ+5xbz$UV-#I zQrYiAW0JmQSpfU?%F%pV6wqD}bR36S^ni{29BJWQ4nr$(Jlw|*~nL~P(LkEKi-A92BvS&=m9`^hP*bKZ$XhtZ@C*y8@sk@@iOlqeK$#u zuG#~CPdlxuc?|j0HA#A64+=!J`{_qXdgdW|uDw=ZJ{~h%m@kml=dJM3ZP4jzGA%Vm9r;T>1u1pnK3j-;|?R3J+$0t5>U^k>g=c=qAnkd>2(&&MIqhOkPeSWK^-YEQWrrJbUFBYko+#E!( zrsx-GB~U1h_50wX`=Qf57r#$-5u1Z_K>eJ0likNF;6jj~-LfHGXs>+?O@V#*LQRrh zUZNbP-)}6XKOUghmZ*NUHc5Zo;8#oO_39-3OFq4sq_;L$%l%zKz_0q1B)y;Zh2}|r zoBtrZbO<^ zRe>a9V$9{WgT_)@lQEK+(zkgGDm{*WJbD6!^aGU8lPISj;yC&ds_1EneZcC$!89Q8 zBjjO*91%kyrpOUlnC64tLzSj}MWf#X>K&}iMmBCQ)j5{oH&L4M%+ppacsEeOsWjKgE7wlJs=%YVA`{pIRlv+ie=Nml!*gY1O%+JkKIUg_rOB}Yox zX;RE3SwkA@MbZWR12p<0^5`{xjH5rJjQ)bD^jFNFzac<>$3prWPNvs!D!qZ_^l!A$ zo6cmP3{|~L{RTLuqC&k}{e~Rnna(Jexkl*&&pV0}G?rfou(R1Y_AtK;ZYiDWBx_z( z^EghDD9>>`vr=|OlBhb#Rwao_*&3IFwhxV^tTV~ht*XhMiX%|zUF6Y!Q54a8SilIU zGVU@DPII{QG}}B-u|&N`{U%syQjTJQrhdx@sC(7>Y-~@pIWsR%on#vivUB%l`bSK2 zO?RHtN1ojWsrTphl094 z2w8WM^;RcYZ<1YbY9Psf`VO&vf^rAOi!arOSe#*(ZEGwIB-yszD4enjzCe=g+y!mw zu0eK)oDf!ud^R41tP~}z3>9nw7O;sfvEdeQ7O_fjikcJ#Cl+9edH~h7*eHhQD2}IP zbQC4T`7#33gU+%!YFpU7S*jzKQ`0n*Q&XAk)J&{RvP+gIe&un0c=kZ|D+k%7d-ohW z&8V^g8C>6phVu!zmTQZ^Iq>^O9?S=h*C;~X{@n^_f17I22&i9+>|`T!Ix zLXGWn%)>(4=Ky*$4IbU{G~UNDjh1V)MpF;J4fTj*oaO%?DDlbBP+}f@tPVPxk9lkX z7O@kslr2O%I}x3KY!NoHlW-1OjLobbCOhSSKne9b>}s15{kABba+qDQv3kk@c2#?z z_8|Mre%uwPopO*}zaRIf7hs8~%a*~%8d1WUFqyTu_;iZHr&HALst?LlHAQ_$@~ICc z>ci^ygn&^WQ6J5*IPc1q7p*xL=l9jeax}g_yYZ@=!I;N?9fRJm&8TUCeW=+5zfk^@ z-A<+qRNt4WKiQek*jf~^4oqU5n9A0>dYP7~HK&4+)(2bL(+G9(~uFPlXJ;z{r* zYgyv)D}GOZlJy>9hlDiJYyF->>;Z-idyf6Iy7mzJ4#S4(gY2P$?6GQIdx-srW5XW! z>{kcbk9XmuK$87*7YYMO_T282JQLE3_CO0H*)NwU!s)3Nc>0y8N%q1XObXcETy>JY zEX3u_wMq7y8tH~>HIMkU2d!w}>vCV?4ZI~kEjRpsGE@L;BQ&-N8pKVt*6V6nBpgsu&hcH$Bp^&zC97XDn)XSjY5Ado_$$G%M&I)+f3Ju7BfLI+8n%d+* zdpgxpU17IOhYJ>?;27HAu_6VUcz9G}2Q;b&YL9@ugL2PAA>+NYTw^UqP&&RTE0Unl z#q3p!_mqpE$k_S&si4W=*RO!1Qa?e%~SX9>YOSe%~RkNgiJ0_a%9Lk{3P1T9T}HNxt8I z>(4*L$BSh!(eJUoO%!XW#ajTKB1FT_Cj>4a&*J3fd4yUo} zv69`04t5L9W4ED~eHs1iE4Yw-6&JHRa5cLVcd=4zl2k2z>ZE9lQp;q=?TF)M$v)T9PeD(9ko@P(euh}#7GW!|*i#+GT>K zG7s?+NLuUDQW4>4wbmkkwp5W)lZpsyI01{KqqjtUTD(6E8o*wJ#$JM#y^N{s70h9; zVm|u~PG!G!yriiZufAjp{iTl3U+NP2!Z(q%YyrR2CEzCsdM&cHpVGu~%Wua1%>Du{ zZHM1Nkdpva>dUBx2Mu^eeFbkoLld4>Uqv;%Sb-m^zd<$fa5|n)e=8)9XG5 zuc+7+si0_oQrQvcN1Uvn-^py0LXi458 z!po;4pHD*}pNjE(#s@~=DhGi}?5&8BK$5SuW8CR~-j%eU#%Dq0vysQ=U>vV>1$Z2W zM2XciR1~PMsn29=V3pW7IDyk~8hhKp2#p$*9 zF@XKTQQBShOiUF1L7Px8f$Ajh8647*F*?2yDsOcWbE1uiiW2p2LI&D_Pj(b#8f%e( zs=qs(_1H1y38~HstCReK!F^e5-VT+ohL5j78DH({bAr?7xa>a1r~3Q{U1xjfs*sg` z0A3Re)fPzdzEy#Jm}vV!)5NpAw=5oO(vK;}r`=J{wbh4sKf{LF8tYTS$#U5@x?T2K z8F5;o`8B)rWbtH|dZjz>_a<4dj57KCir;&PUnn{d4>9S0CgQF39)MwRyLvcK6SzmClRbMK9JFEVG zocjNPA}75P+IyI9*{1KKTB8%?|N8eZRcI-yuYX4xzvFD)e-lvO%C!$}(=sb0%@fGu z11`Ci+6PzE`8>7Fbb}quUtkNa>WBHZU1AwMz;^%#`6a9F3+%(Sg5|4|{4(+WQ}Vq_ zt60+OA{6qAQN}NUpI?e{{t3)~;g@4RztWKbevtaM`i|u`J2GH_6+KQxsLH|kjr_B= zw7SwpuRL>Se%0h%@CIs<{EC{rSt96ac==~g#IHdqzZR4D^)3}t?sQtN9+5HmBIHYD zlU6bEjk?12VWf(gq~TF}3f=|dUvgyWMYh(hu(j@|-CDO=+WV5R@5>B-t@F>p%Ri5N zeiI7$=P;h%jOqLqmyB>H5@ajkia|Vhgc~3xb*x@>RfHMVux9&z>U~-aQpAvPe0yUG9{AR%xUvRO7HNtzL@x3VE`%uRB zV=_;of*){=aHccDnKo;bp&*MjDdYuUJ z`!dzLUHX3M_BSW-ME0_N2pWHQFpSLfZGMNdUDRqT$#GVy4!>1@;8mUEU%4j>@T2hZ z@4MJ=oI{gwsf--H#{rw(S+l@>Ez4`>KX8E>yt4)#b(kZQV*Kmb6niSiXdRKr?;Z+H zcI=)%GYlMJX?*Ut*=(W3X89Jld-mEwNIV~)>)QhR@L-aEGsD`gPBWg|h3C&f<3C3c z{}m?k7chxP#rm}Wi*E-jGqT#D?d8_GI;mPLB?`W zwG`L)p8REirTn292J;96@wAwDB|G;AnF^4ceIV&BO(n{pydJ?nv!dVNlLeKnn|6Bh zjDY@OfSM}#)t`o_K5m85`1nS>tYiuOM!j$tv6b?GfRNoGra}_PfvZ0A>}WYyB%v>{ zDLk>VqUR>?rTFJPd!bPk-BV^h9`5v0mlqE@t+>~Z`l)6@Z@1*2#e{uF>Bq*Gc;8Qh z)wYTxts(LmGTndtAtuJTY94tO(aOPFeL(IaYY1~-J!;V!(6YLTkT$#YxAZ5sYm!u zFcfi@a%5{Ac4Gt-o-ktcx&eKsLl0t=actCO-4qe6W>$WU%t}j9`%9p}z^7712T$)9 zWJq7gn;0o2Nax)st1<#^HI*$@(JI6Fb@an9zEop{Q1gNgHp!+$7WF2{JGEfmINe3? zkb%}H*M&ks120#GkC1fKBr~5WuymfXA~Ui?CAOswhfEbj^q0O6QfaBJfC!xowb9EIA;Ox6rmv6Zl@#sAldRQS0!!cO^G0Yq7vOB<@k0%#w;;l>=af+G3vANso^?Xc#-kY&ii2l{cp^)_J7oMz17qy_bJ=hK>tgs|GcW8M=g50WCq4Z1C-ioRS0{Y zM?FBPqiFd5?!M(;I!kVt#`;hfmExD$_Bsm-W`7KgEWm54r(AEfK6+;#tk-*ataOgG zg5L}-1Dq};0OUrT#@Zw3%QEsZOi`IAG?wWlRL`sGZpra*Bf~$q0ED9+aRc8VQ&LRh zIN9ZSQuu+1hg8@!bHy@u>_?qfUA~vCo*AH1R)a~Wt;fgr?AXt@JbGKl*?mg{a%NSY zHNe{=$HTkniZ-*}E9TK~r8egF&d(g7Jwt9_o*m?&eqBWf$p}!YLU#I&+e^0D1}?eLZ;{AeL#;FT)K!oAAjXl9E_jJlM^_c%TuG2`7Dv8a1c*xQGPsk7 zEB5DJ^%h?B=Uc`Vl1U!hu-BaKF(j)qBi@yTfczhMWE&o3r?t3kB8`{k+no=DJs(NvyZtqvRn)6sopdU z3*>H(g9Rr``))@@5>ov~m{>>gQo(l3ar-e;5!%tcV$SBVVD+UMwW1cvnUP^JNe{o^mGIqnw z*g74%x7-nX-NDt}>AFp4V6yQ+)97kbQakokERi(4!?QuY<)I8|V|2oX1)zgBL#2-5 z3Pp0#-U)hVY@7;cdz3*>AZhPHlySrFcW5Lp#CksXU$Uf9SaO2iuSMcH65Zf&AC5CJ zvz^(XVJ}Q^Q)isq_(^bI{Y1MXg)p|M!V%Fp_3*s(LQvMMj&Rymlyf3UlY|C&eD+Or zN=?GQq)}geheAuooi;ns&Z)3;=@ZmoUY)k{Q8fiAwWnSp6)%FmJuLMrdv$bUhF$(_ zfkRvBJD~sDf<~y2pG7=9ph_7~xF&j~@uR=LymWR4m-kT)C~0sRH${-vZBBBt#vV4V zjiDISAMMnN_=T5p%pUvO=k`wlID6#ABZ43I36^Pi=`5obW<#SklmGs#s{96Mdgox< z{H1sWm!htu84n41(|_E-pMRUVoU{b^+iYK$zxqyGd&Acb8BLtUa zR)YYFxv|eRxw0nKmbRgf(^O+PrdL>7m%QEi7+Tg5pt*C?`1i@j>q`2qqVaeek4yY<*Snw@Y0P;Ab<@0s_>u@FxtbYG{D<`m|Sw88+RCM%&?`? zd$yRD-8}5&pFGb=mg$}pU|^gVS;!BSdJZpW?s?#u`8qNTWsb|;2tm1%1kWlro-KEl zlo>O?`bysju+HL)7wwzv?j|faMu$!oNPzS;emDWCz7z0bo50GxqtIOI%->p4y8Pk_ z8is!=x5;g&64G)hY^+^I4mDkcdzs*T({lZ;0M2O<J!H)Zy80t%5NojcW1wTk=v-8%Dxn;AH6W`^u{piFz$`%x8LJ45 zF}B380^t+As=GXHc@;O}bKFS9O9M5ICEC-jmk=)>ih#GF_`gw$&%UU*X9ZI)kW(>= z&4h^wLGdS}X9bD-lByVvnjdh|@_ejP-jg6zFH5!O&m;d-(J>c^hp+=02@2f|b6D;i z{Q3jR0nOw(JelW`iX`1Tt7JdDXoqCQVSAefoyB1rp|*`EVdnA!1&FC$)y|cjx-(}z zp2%o}w?}y|dAN}#jgh$Z=%_}*1r9o%si8PK%r$-o(s*AZ-6{%6{vA zX61rkJ@TYN&51c8&h~!^{*1B%lipyQ@Be0}GQ4cCM$)GdFjj>wJ77fSoTo+)>jvxB zNqxc0c-dE8LDuaej}18+4dBap*9)|HPFcPQjvD@M_D=fWN|S3yx@WD*5DXaSeqVZ4T{cZ5talmD7!^I_CBZ$r{kTRSR8Ojg=Xd7fl-% zmy3;+8qMVwI%Nx^22-4t1{{P2buU8(`1q~Aj|5q_j(k6zen7VOZge6D9rB`%Dhj>( zdrv`dj*@$$dyh?o_H|dvrI6-YXBCFt!5>o3#_ejyWewSIm7p3K!lLQbjAO^z-5ImK zh^B&2)v67V39z ztw6E4SW};LP{9WBY9En(|IJoyB~5*yHkQ(sl;O7P4+yfb_5?t$Zh(O(Xy+cJycSmq z<|Oq3He^md_TTyY8fr(kNomTpDS;wlC5VOoO>2Ah?3G>p0;vk2Zl1cS9*aa3oUKXs zfVtLw5jij$qx_yZ(q-W!B&`kYZCBHh;(ArCD;BZUCM$?@MLKM|IZxR=e6sH|zTVwe zpjzucla_Wz;nj>Adl}=yUeUB{HalTKp6Zg=R5;1a0yEor3e&W(rGaY4eqvm%WP*zF zCp4sWZ}5sV>P*^dWt-66+|IPUw;kwFqna8J+6W8k=KfkyA#!G8If!@oaqAHDn0kKL z*;j$M*8yUar&0w(WE|J(8!OcITfp0#`vQF;kR%=3bhUIqO?;@>S!OkwbW;;2wHs{z zoKUKGRuq9&1o(taXZ+V)YU3+=uwgNga-BGIC-oaKC2Wmd($ZjK*R=0|l93B=aj~=d zmxR8g^`&SH8$&QR#v#$GEG?Wonv+t=I_L498xWQ9vZ^5+TGk%gLenkN*3`mf9o#BW z6CsKsMDYocY|y_SBjmz#YN%-9%uAC}O94D?10IYJTQ&0bf2C;14s~*yraYRL-%_wW zcm1E&^!!+`Xy{59FqYC@BW5q3J=RyTZ~ruZ7N&l}F^eb>*vm~wi11Cx>+q&Vp@7}-bA8_cq%A?!SA*t zObN|Y;j$R79Q!Bcgpz8SHiO*a{HC~Iwyuz>>t_O9yp!>IQ@$=XaitfR1wJczC#gmpCB@sQ%sULQadm%7}DQYGA*&JTA2N3Romt@J zPzLpjw=ToUoKz;WQ#)5=b>5n6Y1j6ygKg=H3xfFwE5F#(*1a)jz?rfa z%Gm=#0?L|)@-H?S+bvA2S80IsYGFw=4Pi8n{|;SadbiM4XCH11<(;u?PUKks$1IJE+Jk# z=iESNRdEd|Ym5laa7hF$ih?gL<-}Fh1+}#ShRO3twlt3}X+Mf0V@9zeN`|H*7}5$s zRcYh##2y-O<{nyy!+K&YT;|y&mc9qCO`g$M`qxuY?&gW_~nVHRL z`DM;l7W$KIzjL;KXU-DU&+iF-H= zCQ##N1Ew)IvUb1hVr?KQQBKO>8%!`H5AXIAFDL{#hB zKV^E8nj3@Q7PH_*><-r?RN*GxLU=DROFWd$4yWVsyXm5TTwmSe7Sy1?*tBa)#3hBJ3X~$c1mU7;;vrER2?qPp}S@W-}27#Lr^t#a=Bs4bqJfSn%td zQtU{x$!ixdnRulTA{JKWqlgSo$Lw`fH+CpLGhu;Zk|al^yt-}VW0MXVEhK@}$&ebD zrB+ce>PulAA&f+nlHUcAwstk%des_aJEo@y zxRmQpZ2zEWTUr}cVg>W?kpEF8=dYjAlG>pHUSOV`!Izm|=*MDf+>XY>)5efDyqSnq z4NXDx)4wpxd3bJ@U3;6YgU4>ka*TBDgxj6Ye4Pi}P(w zss5{+y$u)eCt7eqUT}!kD=_1UoA(y!_dd4+-VPq3v({*fM3IxYg>yOAwYBz$r5Wn) zY;HL!Q>isWIOcu?J_cUO)amhG7yY)~VSq(|2EWol)w!Zhh#Dze=j)(BS3S zGeDM4ac*>OUWr^&xgYcwCAlu4@HNVk4$RH<*EQgK2+~Fr%Lse+LRwD6QHioQ#n2P= z)ZWq}@+&Q*#hCnSb@QtCAjXYy-sT|CvL7$fFvA z^t|C&RmBLy_OSxwP>Uwp&*&a&evg`v<@fbJ3!op>cO*zWA_=39lrkmM{?`(5R zU|8u$pZ-+%NXxsjM%}l-qiJBcmMNQ@erTeB!wUJ+VX!rZt1+p5Bhg znasMHKioIpD}6o=@7~+WCMPr+`sdB$7LB8Nl%d|+>+c^gp}uWV4y(@J_#fUv>v%;L zzOtb!*nY|U`u=N^p1}ppiH(%vh9bcKsI}fYsT)^EO!m)}hQL-ug=t^^xh=E0`)46} z5_+NDw@UMRbWX8*5Qzv-ooZW?->dw0zFn4o@GtOjZGPsRb1JM(LOBH_w?$ADD)Tev zVRdIEWuBs5>PN&S4VA*#TxXWqF=A&eNFYo-KXnAK-+_8|hv8zo(9JF>ydp%{bF?gsMS!&gs>c(>a-`UHj z+eBvbAvV-z&vpZnNlHYGieJO8-;4#p@>uhm%Ybn6@o8a%+VGH7*3-?kto!fH1lj0q zjWo{F*r($m{BRo;LDmI5-iyK!{(wUNm=JH7XM z=im#8FYc39)KDiwp~D-JG624a*`=b^(O*3`q(*x&m~ zYQC-pg;CgGGah6!v@tUlV)HMW!+sO-{0mTcMmEA~o9^b%$2U(1wFaZ^1#eWkgzX*m zXO1e7toY2yC)m~FSaL-~M zBx^Eedy&;z(J(kG3V=-hAP*GVYLAo4$n*y5tbq49Vy8*^N6{Fu^oL9XQO7*qgtxK`6_jc^LhCmAB0KX)*A_yGog>3Qe518oL-lvJd2G*OKag0N%5&7vFVsmVBqH&m z^1$^SeLtM6Tx?z!1%5KQ-IT?xooS|%=YrM>bdJ|9XT9b;m@X{8_3kJHP~CYu{0cDO z?NGOmPF*3hd`2t|PSVkysiMv#Efqx7Alcw-2r)c2QyY%TCbUUnlG9xRB49zvn%sfW06cQ-8|8idTK-#E*tX@L9n@NhjuY1wXWOI{K zGgT}hrZUPg89Yt)c$Gx_VvB76G99QrV`vc4Y}x$M-DRpgKKmsn)j0Bm>&mS4yLQV> z<^mF*h)wp!f<6hKsCWBm#N$P~HiKHohxoYCU>_)`Osa~O=a+`K`7N)|Ll<(MmW4?M0h#6WAn3wU25opUJj( z&RQ6+OyrL>w_a_KQhO2Nrk~`-mUCU~CSC$|c40_%w6IfWIYDp8?N;(8O7M4GN9@_SChzp+gj4z3=An}oTQcpJ zV{X;MZ0((zjc^;p#(El*Dc(p6dv4;D`gy=u>B{bAD@9L1U_nb0~CKTVo%9a+zV1Wy?uAnB^dU9%V;*e9U6xeQTYLl{@q-pL*j-w9Ng6>OZN@- zM7f}=&~KK4m_9}8pte2Orgoew)Ld6d_#ISMgb=$G_ePPOlCRT&)6W;#mf=){!R>C- z#+RPQ7u?<0fnuV(k!W~@s5wFWaeyD3T0PfZxaqzaLWEq#BVUmO zPbIVlH-C1bQ9*bUUHAp_;3zgt2mcccKZFf~hXwam25*w8Br3iLFaKgu?JFnO`8JQDVTV`HPiS-#B@188(mZ2iF zt?W;!`;x-f)XxMrHm_I389)bd0PxM5qlehdHA0w0b=TfOsbHKyy^6E{8#hf&Y82Pu z9)&KEyIj5nh|y4 za*8Iu%rnk31*2Nc0>$Uq&T5H8{{2j=Ze0m%5euf`9Z&!K!WD~|tcxFmC$JVH>{4Xh3NDGNpu=6uKnY>92m!%;%EhNtDLUc) z-6^a0J`T{pq2qciFf&%Y8K~!&)-p+iPJz9I_)KN9dtYLlI5SuMEZ@+%_?!f(lDR)e zx9x`G6e{Mw#l})yh%Ry1on({tu||rCA@SNywbPwGAP{0BdUc3mx4C?q%8jAgdo~Dx9WU`Uz`Z0{?o>9cqq|-w*1-ybtyr#81fUJrPUQj#h7ZqQ)CUwlGxk8D)EyO7p4PhVU& zfFYZN*y(qHale^(K_oB1Cl)wf40Z$Y*4`r;38y)x9iq)qH#)T%fz6o*uG(!y{qw=A zzgzVG_5Rebrd>qtvY`b$8$HyY>t0RFor8+a&#(% zss)AT8y%xJK%8=|Gg8`g7rdqYsK!>BrHMpa;caHTp#jXTNNaheN*Rkm2N)LIUu>_m<{^y8~P;dS(&!~Nu_CA49-pLL zM~?(?H5=SMrcaAvOzaObx@l;=>JCYU?p;4^Z}|@%hl4?$!qIsiO9tL%!pbO|rq;Vz z8;wA@Z#^`yMFhLHq29f8x_XDiRoBd%JsT`(pjdAR9^YX$lX^u0a?5&cmW1XN%0W6M zXdlc&2;`D_1}b3wVru-2mV7}w{+c`bvyGnhx)b(oOKZgX3ee? zfp5dUtd$z>QiKfq+70`P+E7RcXuntJ5ABXt&RnbN*4I8X|Ch1M{ip2J0U82qDndyH z{)@r?f7c}f7^10+2$&XAOt?GXe)8vgwef`pWz=VF$W!ZipH=>bu@vRt z--G`v#y7cQm(tO+fpOI_dYNtcF?HoFuyXs!XMKe=LPf_4|4P&^j+B^6Q9xF&Uz7pV zxYq@(#kTHX6;&b7ud4&NG8l*0qrFffa1x|3S%@^`E$d8l^YR2xhYlLsrfoGsGJHn1 z6RLG*%>gd|nzXBto}Cg2tIT;3Tw`=L6Ihx%rJC(+HPu?=ziCv|*d(vDDg8=F^YN|B z=^#@umTWbsLFum$=u3E`7`=?f;TXLvxD5xXKZQDZ02iGuZ%D^5k#g-bdN4Z(`)67nCdPyEtv>Z6+5a8A>boNq23Dx}-jin_#Qtb_TK?MvQ*=;MUE! zpNFwvadnPnhjL*8qUYpZhtA#^MvZ916`zqr`@oL$kUpD0qZoC;@EeVfWADo@^b3WF zA_HTVxeFtX``PV?dp%%Q14zk6m4{(E6>LH89GBgb zGuq*A-JNeo_t_`U2s9+8FC^sSXiuZ+WK%)T2)z7TWYif#86*8m3u~V345WX=hSM>! zroM1O?95{2&itoKOELaG4-{%U^>YqC0v zOfs8d`1OtW2c0mK6HX$8OX`o%Z+OlGa;XCxEKt)rS9@42(3|SNr1a?%!aWNK@}3BK z=*9iZZvz)(jocxXe>Xs=SklD}wZ@cK3RMe9RYYiC@S!yZ%*v1Ruz!sE%JeFDhaL&G z;0<@6;}7Bb?ZUsqBr?Z=MA+XN7ym>I&?qo*JMU6Y3L--}TI=657z9?o1Wp<)ppyrw zi~IDo6KVMqX;qT%hCQZ9)nCqO3CqvsYwHm~I5$F5oE#8rE<}-;&5k+KihthLY^ZD6 zFhuRX#=w$Xg?(H5Is5?7JNwxZDsTAC&*T3*Rl5T1jH(;BfFCHi0EQH2?+i6x|BGB1 zB$y#{;mP!X$GxFEFVkIe5zrc;yLn~54$1b5?((OSixc`IWKtmLlZX2s@H8EAYjGY7 z1VlX;5==-6#xVMiX~O_B6SiZ4+bAjto8>crS6nav;2mDG=rnK=5-}>A0TSX9BiaSd z4MF|f_ACIoz-$!l@L-iEWY9pOj zgxV_EFj8&pNk_$f294Qx8c6)&U!PGn*C24y{jS%_pl3^ht9G)ZS&rJxL+E7ysvf|7b_RCGq&BtZ6268(d)QM;Gh#Za9z9h0YuA(#)D23CeSBy3{Z$BgCWD+yck?T#T>7NnID z)8H$x;SvxJ^l_sm$Z`$J_0vjF+N`b3aP_3HUEh#;6llv2xjt3CDC&|M*AOa7#ZzeB z(h7T5kMoJgtn%uZielSD+RZ8`Fs!L59Jk;&y*`cCSPVHE%9cYKV_r_dlOztD8OwSI zjakGx0JIusFz9J2$F2MJ>fH!oTExn!r&S^rQeQNI?9Q?y)pP|&2l`UE!5h7J}<@Z5$ia z4&oyB>FKIg73SwXfBtz|{?5x8L1KK@WF5+bHg2($s-(48tJ_eEEqlAzwk%;&oDn7G zl@IL)(x&RSkIfj5Lc39qmpJwAdUy&AWqV$=H1fD;dLSTyW!A#SUGAcLb5F zw|^-aTi#e|nXU0?uU8dNYC6s9v0L1P(_34c`CwWp^yBq7b@KQgvSYLDCja+z@Ysr6 z&ADPv&@;sK%1lrm|O4|_U9JZ!`Gg|iTR# zoX$KUOI+o}ainP3rH}7A>T&i%Gu!o9e(*Q_-$?cVz8nxKMjS$! zQ#7kz%E63lKxzKWt($j~t8MjTJ@$tZ@o69FK?rtVK#KL6 zoVxNcAiV0iRxA+$A^g<{BL2fq6k~CPA_qDXBgsE2h-|pG{z{Ft^~ClpL3c~GhiAG7 zsyAHL2}qDxgB#U~YWLATPI?JwZ5#3rhVNUS|Wz zj0Xr(C!jIo*y-|& zP9i~l5XMW0i|IsS!B-`~a%TEB7XPom>!+&!G$~hH(417GJdUX#XLJrOW!l3d$c=6& z6q^T7!W!SBs|IK7je2n>{AnQeHyWe7Hh~{(fRS33)jj%c@~#~lmW+0Ng?XqrI(m4c z!JVA~n%Z%9Wj1!8nt76hN3g)Oz*!nwf`$QE>X=7vyzoagN+ zG!FUojvc*E2*UA4PW}`G1rx;a&mYI6m(a`EJl7DvASJc>T;|}7Vavlsy~3r!-_Zox zpdSdzne9-|!fPON$U^!ojD!$#ioNjOb(i7#PJ@{{jvqju-t<4d)ud>&;OcWa6oK72 z0phW-;mkC{h;M|@M>O|IFlw?WO9|7d=gS6O3$2zD~#@X+ZZYN{mq zA@jG`7Q7gU*nDvHQQ=Wk*;OTD^WYOYbpWVLns@ST32b>5YH|cv>%oV>t*(+b-WtAi z1Y2JLtWX;w#)jZh+uGDJIXZIS7zD$JS&rOSgR0}Rq+qNajKbh&2^nPo`2t&>(2Umn zIl5cKsX2KD1eq~trvw}0DiB#^W;&ZiRURolDUSX-joaZv6b(>ak*@aVH9$wOiW*A4 zGuKAwAU=`f$fmQ5!HGPI+$BeMph=*Ls%^geDkSp&m_kLZY!HI6wvF$=CK`WPos(i@_ zi7+@Pm{SFh%b0!`po`N4p0q;%DtOHpNac(ywS&ONZO1)Dc zUAbr+fUzoYtCnMmvz-%s;AqNU{9J?bU164iu)H=@33IC?4a%$DB-DqGkQO&i83N-j z7y3x{o1!G`;(_hrbKBqq%=ef_S5+fs%3N|o$2$4%tUTL(i1@?H;Vb}qWjcV&(qff- z`64FhRH|pMA5M=hpEv`N`m~Uq+QP~Gf~f(ux5?h`Mc3S}-{Yt4Tpf3C8A%O`YAg*! zugdw?@piV{OSv*~Ra9Q*AS`v0nK2mFbPsDERe;>M{OL?f-Xm`zibIvBg_}~&>U_Da zZ*q3(Y5zdULoPfyqA?+Z2POl@ZOy#GFAP19?}UD^L}h;|VdEen&GKUJ(IO*dhdOp*&c948_tP&)D0Ubok{DyK^{u zA_og>bImpG=ZvN5!!MXml1&xBd(r!wgHEG@^08YtK<<6+NJY7sn(W{%$HD3+)Zv5?QS)k5*%{uUx zu*&Spt(x5#!1vgr0{ya7d8d%?3_V+{d(b3)I({Le8~zoHg;y$ovRd*Huxy00G}_a5 z!lga9zN9B_8xU3DvGER@OUSmqX(dQS#p}EW0RcvcEXA2pxKAEdb5FhvYt@vncemss zoIDPiY1$7sDBqIySuYeH22+7K#ww{tX8T`Dl%H!WGM*CqbbHJXKfJMHHtmY=rJdXD+c3qZy-=I=_mr7n`%#( zWN$DFeyaSTG&iXP ziA1f+bF-!HAiau%nq)FmFJq8+7I$Eg!oW9KT-@DhRpE)85ZyJG;TK33k|6AE2lG|5 z58eC~L4>A3v1d-(ty;;X_6v1GnA0SJ8~)Ws!ig2kTHDxP)mLC&erDuvY`oa1gz9Om z_PqEcmX^4&sXTU#X7tz{Fjl|-{PVqZU|Ch@e6TePf3n(7sg$F$)vk9I^{Zc@YJejI zRgy|gIRkSKnKu6?<}V=dUjf4IAumF_)DFM=SQVnQ{bZnz)i_|#he{aA&$|W(uRV3CCLo72@I(!e0+zI z{9@2qo&8v`H573SooO{9L0BD;;hjmrCt`dC$=9r}8Qak%hao<0+`K-t_z_3-&Xxdf zX#CTe9Q5iPcf^n6Yq(9SOfE?+nUbmS!Nv8^_fNeNbF$3#bA%Y25~b> z6-`uA%W6DL&oU4q%f^lhMIVZo`km610yW;+i0R0C0iJxSB;KGzs>L3Aqgsh)@c}mp zllguwRs>a=?1-Ed$-w8rd%TIZw7?(je_-b+A+;yPNcM=027o<_UCT*u!lP{+?J;-f>-p5wVR zYdTIg3RI#&+Z>afni@f$KJN&li%Eo$Siaq4g2FA_)j zS=?w!Y&aS{Pd!7E#ZTLk21J0Jka3FFd$Z}m3=tZNf=Uh(NGvY16GI{?_c1q7M=ddc~M9a+* zeqT8NvDW0g6E&8EVHuV(c~e#Z1ScrOf$|2+yb=_*7Dnx5Iny`_Tcp*(Ov)0ZslgW< z>Yb{XePh0t$<}1|*s}RWWsD|gs!OXW_0K0YXF=v}eEQ@w$sGCvVP!;UfH)sq)6TZ3 z{hFoWI|m>1-YkqE9qvl|{(Q%(ilxyz;ZK970CUC{-`=QAp2^`iR9Y?>km?u$a(BxD zlI`1Yapt8nRxqz2jv*?h9A*_m@!SqAa+E)|6t z=7x@G`eZPmo1PcVczP~prsfg1I7a#8Lax>!nU3dMj*Us!LSYi_ zgmt~!?;7`|h;s@0WK?acMXb~00P8^)?Dfj^LqHzu$esD-;n?au1IETc@|8nhdPKRt zvOayj@3AcwY08Pg3%~J8NxR$6g2+7nJV|%(%-2F{eu_C|mP&Iz%Xk=&rZ_isTkN!k zAR4{~L!4)kw&dd+FV#yCaBJ6AqrGiooQ@YHwIb zpZwlpc}eF%MWSef$ZcGuxoZ<=>aA21c5DoYo+&Rh*+KO$tCH$(@^4IWB=!`I9lnEp z$vybtwVypJR`xwrdw(62#`qf=E9rPBcyL{tKVmtWStuRPRhc?tFHbh}AYba_2u zD->6|KXw z!6&dj@k$n{kq#D%{32WJg47Ahf<{DnU^AbzcXAK8q986x#zD#Z*(96Pbv$34W>2Rq z?+}CJV?&O&jCYWj7XM)Dc&arXz+9ZWay2^L!b57IGq{wmjus$d&?&j3GGav7sqm3} zjGDH&??-ynI~~pkW)B++7K+_%;I(3pA= zlI6G9r36ynU0>^`AkM!c$(#BxQJb)tkW(_)Ze{+r8X~C5O7Fhbg-6CD(Ojc|MfQUW|2` zk!~Vk^11coiDgb&IXOoGL?i$|pJ?nb1N|Fw5QN}@W9f`ziCxs_KupR;S1)15o;yEZ zG1!N}me^@=MZv|*9c|-_53Vy0ZquW)G_7e#s{9JHu^Hv-!mHOGkkOxzxgdz1Z>$hA zIT}3|T$K6d%7vV@G6~0FVxj*(JbiO?B~P?YNOl;c|+n(S~k{fGc+q$uB+tx%A zPckvS{NA_T`=|S?)2DlNRabSdK6Uoq5AAa?BXHPilp5O=p${(R{9oz5ahITK2=jBx zjbR?Nt89Qz8`nHa(S>@HtwQ~2WYsY=$L5%pyZruT%v4ppqZzJzwSiSuyO83{fgZXB z(xBU^(Yy~w>ECiGGXr>ozt!u4J_{7}m%yt?l1dcOTjo^dgf)}_DQ8sgeqYDvcM%6* z4v-j=xZo+_CPIP^$bGHKBVk595OzC$)Yhntp#gwjlu>e!WfDInFi~X_Zz-p)74aiF zx{Q*>Ksce@&)$kgjFukb#a;h;)kDE=-U(VivS$dQP?9lq&Fi^HP_#*Y-&L!dCjwvJ zY(P;6{{3=3R_a(-R!oTpV%MU%wj0_Oen$D$2@5@4zkfA0?u`ep$y` z#dq@#TSu&cdPHEZ#-Q<*#{Bc5*(I~gs~29cm7^~k>B;ybxpy|QS79=K6Gg%qy?E~Zz7OahXbTPvi>(0S$5uU<9yUl0 zh(NHxHA9^AeB-J&K+Xt4xrM{9I(poCxlxT0V=`RCo_#I$fVr*=?-XhI>fBzmT4m^v!c;;38j^_nX(vMVGQV!2=oeg z2hRFRE3kND%A3z<|LgKb<1Xl*;K9w2N>QgWGSRreOPs5w9ucU9kG@W$`IG!~QQ|YQ z%7cxR^zYjY-c?(KBO?679Vbeih1EhEGxW_f%J3N*f6|PXT^GD(t(KGxi3~tKi;R$e zmlnfcc!mmYrx^6G4!gCZ%0#eX{u(gzfW7`GU&cIWD_&INK^)mbQQ5(!;?$6*Wn~J{ z(gIq!SE}s4H2bAm2{*ci-Xda(pE~K)+>)bEj^iL#4zXgYq_x{%b+!&=3XI83P+NAtopIqhP~4(H$pTVTBPbHcOd>mJmK z2H88IbVzsGm3SIhCMLYJP*wVGnH85@4!{{*N6v{n2$^(bZ0NC?4ge1UQr6lVBMFIi zXAy#2R!wZOH(`yW63G|Xmr(Jha=X=vGfiWb1=WdI_Y6 zBe|Q{i{H9mJdFf|>VV_0VmJC-w>DoWF`HIQ$>;IPy$3UR1_*^KPa;z>)L?^oN|=HU z+1+dvyT2Kw)O@?az|?e%Yj{THBEH2`=tIaX71bTNS_7_TSvn)EsC5&s*N&l-uw^yV zc=!34!vJ`9=~$hPmsmu>j>1S;Mea}oI)hq*V*&0R^8k!)L%^cq;8IF)36(VT9~!?k z(EuB(+OZ4g3ymbKmTS9$Bgal%oJ0qb{og|lZ$ie{k zrpK#Sag@5z^hXgI8}gAUf>5OziwO|h5?Gfmm8u}lqU ze&u|?wD_PKhwns)FlU`Nu5}IxZv9z7(DlY(F;Z%wsK2|erLjSy$Pic3{*pq@1Jeh- zj3VT@us8I#Z%j^@v+e08_q!nslJy2lqX}rU3I)+8M{VLli+mKhd83yHzPMM%0k(*7 z(I;N7fM>t+$neXD_{AEtnAjD;4~xNN1Csr71d=6i$q&l%ds2z_l_DFy;3OFKNdQufL42QRgx4oKRLjddWV$C5B24`p0Lj|% zA89{-i0*}Gm}OU&85(1}*=4tG-bg8Ac@M4uppr!(EV`AXpIWBC;h`0k;=s8aZ-@jS z@sErvjx{liJtFWkTg>pxneI!e^Bs9dtZR06k8sHIBTO#j=~r)o1sdtUS>hq)512WE1H?cv|Mgw6R@D6}q!7Ft-X)}i^4?#i)aKWl?OS2NMBa!q3Zx5X&-ZIF%%8h`v6HHykLCg*vF&Y;)`x7` z`>uvRcg6Zi>kw7Q!bHVK^IWLo4uzjML4!$c=zxCaCq|S#dZMAlHcY^v&J7aEp&n7c z`x8p;sLBll$zZe(5$isy5B}^SsSorgVCdW@^rub+%pSbGscxbXLPTQRHklfS3vxPL z#uJobVe&xP9!`nK7EC>i{1Gs8Y(4 z4md0|phA{6TD#&$TiKX(?pyLg@S%D@ApD`?QedMNqTk1dXO;Dl3#Qs!r1=OdWbYmxY2;`O}UAXe3UJRb+~+kd!_q{f%b~m=LF%R&ph%NzczjFh;#eu z>ctqrh?e^EmOp=JmoI`ACEBzNfb}eSNqDoTRG;aIqiMyhHXssoNXDigB!Gx(1RwuX z;DEF*<%8?vg0zqMYj;fANBeFobWPe<_HO&OE&B7L5)4=sXX}7~rT|t9X zYX+?a`wpplM%tGaK6W{9ERnwD%i5xuv=x|4qq)drlf%y zV#*8ZTmC(W%onja4x9FU#7Pl)ELQz*ey}`SC>2)%YMClN#P7ih&A3Jzj8rv#ZFT6G zB6){G1cy>PLq+ZgRc{X4 zjdnc{?aD>I58WOd_)`fG{JPtwPhqld^#LhOZ%r@1kD-vzlp3tO;ZOt3ZD21}rfVf*yCI#@)+llw0w*{J+{dm5t$Z&#L(~zVFtm} z&kAV7tiNnIsIVU^)^B7MO0S`g=h09qXs57ssU^=lP2~%xOWkG{WaSiOxrccLSq05s z;wKD>ptb%^cZ^+>Idvc{oP7F9u1k1u?}Kl&ImLb7DZm7%;Kt<+d30b+7awAAWY3os zNydzyrROw`Sblfzqn$shEkcj^DzWClCJl{#Md=~q!9G9P&{WLHDmWnW4(W8w)NPZX z&1EXKV6~bPnJNu@I^z(FBz2nlsiS&uJVqSX)VK-6|6LNohoUXJEl2ji|KOX|F}!64 zapN-1z}5orz~1ukMA;Rdp(F7U1c3*w5qsDOmG2<(8VN#F3c9v_`v=YAEmRH)$r9m% zsFYY^Q4MhQFBd`L-R6U-WSxI?)SPsXdvIG^$Sr-uDeQzV@o+~Gs12E!?3wDJ$X*Qe zAD4b)OGleM+CnQmgN%+__y?=He%gba_=>g#8V(1{os#y2KCJ)}DX0xob)&NT+fqSKStB*j@O2XId7@eH5$Q4L%HD<MLoRUo`1!Fq*(cJ;Nkk{}_1C#~p%rrg8%6-<|8plR0yOG~8 zGF5KaIk01J8;lyb`Po>EU3eS(F8ltRn<=>c66b$Nj-E~)c~AdM+9&hXU2zh0jnO7d zTqLOdN~q=>!ofdY3J#lo(#N?d7qG6;m?IFn;A|lC=t0zrrMAeR{Dh}NHOcHGUS|cM zQ{31G>9>G6EDgo+nQm(v_}URXXQJ$te~P>yut}O&jwK4o0e5=Cv*L;}bEoD@2*S4r zypof$>YtatHwl>Et(zKr7(b%!ZA)eYv zG`-(wFRGvv6lVrzmgX_ICq$Ibi%+ zELHMmyF%av%NVJ5m;UF=Z0>^~HI**rlOnb9g0DAZn#D+CtyP-GFp z-#UuSewVMUbpF+fsV`)BaD2$w&tbo54xXWw5(K0fHwk*Lz363B;a=MQ0QHU6b7->h z%dj&N4_904nxncAoLatw$38$1Iy!=H^xoOeW5HkUs=hs@I)`y2G zeDq+tSGUZ+K3U!NoAI6Rnf|+Jpy%fcKvB-a^cNCGHDE#71;->Ys{w%dg`MUBJwLz= zc_nMnQ>T34V%-<+R|1!&F+IQS-az-L*=2&U4QBjCn9cco4a( z@s+Bf%j%QdyB74r8=3(Zu)!Rpsdc0cq(KERi0kp86ggq~511fX@qo%bU(7pd0kJJo zonQ9!^?4A#o|*z_QrmNt>hZm(wt?cEAjFno}jB0|` ztBEnPATy?=_!0A?re%Z;_JH}m#z0{PxZ{$%&Hf>*2gEI8oe_X$T1fpUkql2k-&3Ml z5W7JH{)NYsm380j3=t>WM+qjL=pUco=i%$a3vV7qmBX#0=~3M~?N4+sw}J=O>G=;u%|DjC z)_^*6|8*3GV;w*;Q*H+-$)iy$HnomcG7+%sH%R)d@|~`Nu3Z7HS*D|^-t0^Zf=;GI zB^0U7(WUD%duB~jW<%` zQH=UVBmm~mIQjQVi9SvH%@}n}y#?+5HO>n?zb1Fb(uvCtaIYTfop8i~ZUwiS2^8b? zkx2yzR{3@JnLz(i8}KfzY1@^5o(}v>H0NZ)B0g((X8E|;?!&m?58mXRBrA%9^+?v_ zeZ~zi*0ue^##W!-SvN~`au#~mCbN0`Nx13U69AK*QMgAetyNISaD6Y{sqcnXqSpn| zX_^O?!ajXk`UjTWK0`;$w+#w6>61DKmIgP)Rnrx1iJK$-dg!V z+(qkJ@MfDgF{c1@V;8LypY>rMIU(=;GSDB4+Nv(j1$8WOg9e8x3^7-o1`I(C z>PZUEd72Wwrj)iy;*iccgcS${NL_hNvq}CG9>+wU9%loQAEi59yjF=kO0`XL*F26% zBxe~rkNYjQSr5F8gXCWDOkj!cs-I8LFR1KyFrWQdk5=E1d+(=b{ZabF7PjJG09^7m ziSscy!MT3T{LCqf)ee7#rn-M@P}{6q>xTJZiXFxkBstnhWdXhLiGRU6$(~FnTUlOo zCCKsL#Z_fNQ(D@(OKZEwc763t#o@+Qx)tf7dt=8th*E!Jdh-ry`>gBe&&hV{`ZGUe z(I%90=9JBPwNn|=qR z)%KAFKcvYBU^#|TdZx?2L!dLUHq|g~3(Xi1#w{u;TC?dct^cUqB|oAK&{vx$8g(%g zAxYW@^>wbXw=h(&H%eMzUR`lpgnn&GUCF_0Y_ew7G59pF_`*@OW-p&KLQl^qc4k(^ zpL{XgoVYEIBaN%tZdaum3ldv>P6%4Y%uQ_GD{7N2E?7T*Ctj>pRBq)L?qXKw@S4ZD zJW;%kuT82C|7dI7JAJqWw4{m{Y|k557^+-5PvOltC}%xZ{ME+yvrQpqye24%LBaP@G5~a1B-xON!2C zuj+&f5DcTSr~NDkwxT03DZB7kGV^j9XLMlfD3e)zW*6isXibMKiREQ5?0W^Xo2-{F z`aEBxxFqh~Ot{!tl>)snh$0b>L?@~J8T&zSx{Es*toxgAUau_;o&uIROU3ahO@~fh z3IoC%TvKRBD?JAQiRS@DWm3_ivRMqSqb9^VC<(z}OD~&SoRknXc>Lh^9@L|@Oaqtl zw%KEM=^rAVRlSO`d`fHt)0F-t5(D_b1{7cx>zi|K6@xt;Zp^qi@Q)Zs+G<{f9P7}+ z?objRa_1m>T|HXQ(ZmDUIykSD+Q4%8pHx#ATSOd{qk~WYxnSbw?U>i|WT>?7S*%c6 zRZ9ib|ODZkl`x(3_k(!ENE0Xw||wRdMmt|4umm0=n9T&H_Bg(GZ_n;N!TDsK~c`sEjO$xg!4Xwe6CU*<9ia^4T(^ zXppymwM)B#dgu$1#XoF0g+|4zUD5i_1>F`ab!lKJMcYIsM!d@uvfwI1(A8B5ShqHYLlfbX zOJdi6M};ttQj~>-H~lvt{?Ds~AWmNel~^4B7;$%`rzgXegp9U#RG_uteZ&DNk1Tp! z(GSQ=JLjcw6LVrlv(VZ`)nWtf7)^5_tc$C)@9h4zjuF@v23P??EH4~7MRb_1Y7mO? zX3(`EkD)#kj@^t9gF>ltSzNIvoC0Ex#inO~QN-gIr(MwWZ;#+13z3>5WxE!!$+vK& zEBwI%#W*(Zw?JoZ`MP=n@4!^^R(~!ZR^3@mO0KA@a@Spp^3~}CPz!u&NKCVE6BM61B!&*9La}tU33KFL6D9SWd&(Z-< ztSi#)cCVTggLrxP%at7Bl6@ih{&56Ov65q?API`u)?n2zhsy!wWupD#kas5D9Kd>0 zZ3_dz1`oRH)%axWXEu#3WVM02LV$?gTiQn?2=-gS*>zq8)o9^*_8@I_M2VyVaMEK! zabA@6RGHfPP$7PxO?BJ1=ac(bSC0Z>>+{L^@DT<62A9sPNrJ`o`<0B|LqbXZg@`usBk26-aiZm%Pi)s08}w@%YyHz3gA`g z9a-me7O@tR^)O6J)OM}Q_6S#vyGE36d&vJL1a(`o;vlhGQsP3eo8nQZpT2m;m8)T6 zP5J6wC_ASaRErFhiYq$(4~b6ZgT1C12XuQZ;kt**y=uIAa_f*8bD^h(OHK`d9yv1^l;5C25E(mA!f1 zE2m5U0Wuz$6jIf^H&v@ z@gg?0?aR~4c;pXpQfO;{l8W+>`RFG(x3~d_bfdhe-?Rvq1!M~Mse6@Yz&INY` zx<7p9M4Vjt{dOt6A*tQ3A?27igL}~wI5c(!6}7t{B$xN|`^_cvB)4L~Kqe=VIZYX9 zQ*~F>E%k1yr3!b>%;1u$;jthQj~n`!q%~B_oK)UYHAMMuKlQuJ@EdC}U(#Bw)x-P#C8V z$)w^C@G8%yRCCt=deLAg9^Z+0iXbtSXLhQ(b&WtGc!z(BzL`#r7fjR|AzkX|$#3iOzqCj;Rpe1!X}PekRJ1A}jmzBdADMCd5(SD&fM zvn7?wltv&lGnvf@HP@bBP?$;~I3c)Dc@In>N*Z~E;N&SlQ)c2+Ev1y>hgL~@Ol;+X zdRQTYI=)W1ygj~wW=TyrPb~XOOkh7??BJd47M$;i?D&@4aERJp^k=P> z+X(6&EI5u9pETtJ2nI*Zn7bi@qcTz|Sz(%~kjc&z{V0BjVj^1`M{TC5KBA!{M=F_? zn5hscK~J)Mew<<=iUmha#G^5Sqaa)=8In*}ayJkVEOp=g*bvckD}pocy&X>qabtOZ zHzh*O;U{bHP&amgp0Hj-(Ksq;6(2p7ifwtRYUV*p!er^)xhuoY3Yxh0#-hutoUX|Go9g@EsU$uQw zN*?)Rr3H~rSnC0p@L2eIO7}%$V|HekQ8CptFlrVS-1YcU(%P5?|Cz4L|9M*g|3!#P zB_u2l!Tsm(D){dV)c;J7%zs|v|E_Z(@t+C)pBeLCzyaHT0dWNpBD24XGTtM`E@Y&v zs1x+`EFS0+*6k@8p%d22q^$DLGXk_N9?U7eM6xpilr0`GDH^|?R-n4Yg9b%o9!|!4 z3}EcSTFT1g8)=@u=;-PF9kxJ%vx@*VeomNo9G#MU<3gdVeAPl}6C-g{wFiTdeCtAy zgDQr6?ZU}mI5aA0qGC*cp_B4&D$GL|oPX|m${g%YX7gleM_&#c9LJ-EYzwokiNZ_6 z)Fj22O+BswOaAd8U8{K#mPt995hJDzz~q0Pws0xfHYVB(JX&3k^hvkG$oe$YujA1f z!c-i7x)u*#4OB~5|7ypml$A=vR4!JAFg1stzQse#*o9ugy8G8Sl(J%tm}2=FidY%l zUnhO_MAY6O?tIwmE!fFm54DIt9|vhqQ7WoQ^}%4;4Wj>2AbRhR%q1Z0mhsER?j4c2 zT)idqU+Rh3{ay56@Z>0BXVS0pT>g&IGa+;7ee3rXMQUGuXn+6)*Hbro^=J^O+E*633T5Mv~r2VC+; z&=b|J5vpsDF`Zcb(|7{uH}`H7Jxm*3X7Np(Kk+_X_a2IZIY?9XfCqni+?YH$6J(2r zgg6U4k#3~VDG0(f6bErNH@!Rm9}@gSS$Uum1q=*9%`7^}c0dhq9V#t-ibo4F3yjgrCY%a5Hbkk_z`CuyPoDTjcV4QdYZ$K#qAr$fn<=)J$coeVP*=T zi#S6Wwiv%l9p;}wY#*V-)?S_oMgS_L2!DYZ+d`L15yZRqUP0PB{%GYo!$d_fmUyjg zHov>y0SBQ?HAci|OqhlfH%8HuiU>LnE0+Sfm)AI{9#0g1vr5vGi1{|E&cZ>J;RDO+ zo`D7G8-@(EAkE`EM-~wfD5cUqYZ4HjCZ9EVxBMLc_3!;B)1}6ZV#q8G9;9z*E-x#% zuRpioTEjCnV#NgFWW47xNSNc*+DSL&ZSSyE+aumrq@>?(_^W9IJK&M#WdQvELh$In z0%DOV?62zW|_+ODo_lZG%vXJADIKcN#RwWpGJfg zRt&%sEW#n7wpz2xq>SQgGv(fB`h5QT4xHRa*GtissHv1*^z8aEu3-RbnNDah^=cfU z#b03#9E%6G_LK?)H#;{s5VuOLTbKVT%Sb?f&pl4bFxNjy{U5azzIg z6$rh`DYV}IE_B;w*78F~h}NJT@8>mQSv(iNE_AlvR~)|eXkK1h=+CSu{#EZhVokEb^)}oVA4FBE;kt&RFR3#$gp7I4fR@nH9uaGTbgzeayV~}8rtIf zUH>NF?{N&(s7k2p*43W2(6GJqgemJ9jQiZ9+7tpE0RtVo_Iy0aPlmmXMp@iz;qhO! z$7)_`@=Hktq_2i}EuKoBRncaWyE4zi<8-d63{GqRu>JTQUJ7`g$Sn(z(g`g<;e1nW z`(Uo7v*@(42*!GcBfux(%2WFWgO{%y<+vw8ul~*H_$6&@YIp1nT6Q1I7K&=t{d+Oy zFrs0EOu+3c%pC2_Gg)x>a{wBTFz3ecl1TA0n)u8DEhX&tMWZz?5hW=0U3vHw`Cx9L zJ7|uLW5MHV+!#PiOM6|se{AOJWsZ=7tiv`TaN6Jr{yn?9oB)){3QOSW}Dp*JD>x_NfENf!! zBFDgvS}UN)uT7+}PNYe{>?FaM$!*9e7B6h0-_#0lkdZA|gTH--ts@JW{*sPR50*vn zw`0oXWmtTo{k#p3bC(OwWu6U`vTB)LQInE_v4}HmALVbKO&8)*O}mwx2YaTH8MH7b zt_UDDua7eh{2CEDZv>~*sBbj6<9C~Fc*Lujq|+yFB029S|M&V&ryPcv{-WsFOq=IG zCrF8`FMmy$}!i)K*{BU?+ zd%`sTd{p2*MJL7#+nWN?uQ%1;ga)QA>Ic<+d2^(-N$%?2H(K5|<0&EOhb18CE z5ymZLfaOclF}xgB&~r1aORvlLUHHqdvZL~pzE^K+>qq5z{jc_u7pE?|nBUg+dZj+o z2MyEM#<(mf<_KOIqwkT6vKTq+J9|petqwa@`fct4qrlsi#g*N*K+3g>_5?EcXW}ex zWUqzlR4u@JMg@r^sD8M**V;YjG1Rbg1Hmi11$5Qs+Fc?cmTQqw@}1q;2kLD{LB z4gJiA3`A>K_c!iPh3-aPlMx!

wOFAP^e{d5HXJ59fMO=O+)p|y-#0=_K3P6jzrCEE3Tj^Y_EjfcH^~S zh6^{ZJO!GD$>klF8s4dkBtU{Jul`I1^Vp;AUr6ZZ+h3*aL8bf?)nwH)dg|ZWM9X_* zWEt9pId#@fjzzPkGRxnF%HRCqGV#B02H0daQ=K4^fY}oDm{CUZIY3|r^gM5ujtx$& z?f&m_1Kh9TI-963+6kegAhNG{ScLF352=;t)B3jhU;r0>zW$i2&7Y5k%#@Rqn?C(; zo8SAO3|iD=;lPog%y}?3(G>I3o2JQPkHBq#gg~#Uf+Gt0rIOd{H}!0AG7^H{x2!4 zLNNJBmw?nhxGM2mUDf%)@irV30?M$85p{i4ov`KzGdtISvP2|l%|S)#6dM;MzCw_? zc;{*)?4KV}s4~mNxXNu*ZI-e(XbfKTgYs;ZrwMx_Ih{+tggCaTRl;i3!EJfvDNj}kPL_t{k{Llip+PNPz{Cv$wOqQE!#~5n zDDaE$lXt(>l{6M9r8PJ4HNVKOaWF0j`kl5llPdd7yoUdYF)wfzpQ11SQq3E*rUPYF zIssrX>%Uu%EroHr7aNeq2xPKjX_Fr~IK?04kq3~Pr2 z8Q~aBa>g@peAscPvrllub=+sG3_ybz?OM`=8}J(DMz^|(^Mkx!P{@rE$s)m&Ij0a8 z$J>Dapv5q|lxZM(g|&WM)QL6>L^u)7 z3tBJ@x{*k|+tH1%V{Fs_XyETg z>%UpmzdaLUbimzlEQTjr_{1k_hM3xGTY1$MGNQ+6*w<+fe95WJE0q(E@&ThF>>i?P zUYCE@;i$vAXZekMuVJjjla^6XA)kX^2c^x2>=3PAY{N4PCs{NNM#rvE?Ze<_&8ygS zL)B6xGwi#JaKkH%M&?AncucMU)VCsPFj`z$j5Q*(aY0EDGRQ76$co=q> zteU!$+D^&f_<}B&VsYiiR?87(iR37fjhO~4aQVe{P>mV_e0AN*Bj>K11u;d7vUwe& zWIBfZ~A3*3;Jcxl=o zlIi-1RX~vh4Es@LfhI8pt(eD098I)1TwzN#Tw{xTyo7y>VyFE@Gj`A=@|8j*c1>^+o;1!$jM+OuQF=}Edpj!ui8e1bX|#ysa4qA}iz z^`r8aAL)MLGQBD$id9X}q};-i`_Np+*OKC3l+Vr}cenxIzf}PxI6jacF+tg?VPabQ zv~7FeH6!u*o8JK90X~WiO5;A_N|}`1`a|+Z5M{7kK4{_8{@NoFKIv@kZ!htL%Ve51 zVI{TAw>E2uC7))I&m2pv`)~y!X@s$PDjw7XTU*69lxZPU7yl0Eq^XN7i3VN82Z8=* z@|2b9HCcdzF=-cW@79achdo3n6BD5mBBp&c@k_kI$1FLe_-c9EdA3<>+Wo(K3cwc; zOCM{epRA5coJSLGBA1gKAH?yPTk^q!90kI>p1M`XC2?J`0#6t!H`KXI`Amr(f9ZvN zGTDmi*_L_#YIK%LHXAJ8xaGPjPd+g`GUr)&#CHP@UISyVUrB|GVQDsw&w*#LeoZz_ zNx1f@rv?Y9#xX}E{z-fGOHvT0QDq+P?YPuF#v`r1>w8>H23kGq-p^LMhgqH~)v=^w zPvjp-d+diR3gVu3p;W}iU%=kf8%%uGJt=Xi5oRFe;}9j(0^D7cZc#))2mjTZ;>c`! zX(^x-!*p1a8GdynsU@skw>SBg@r}2?*?{!c6#2|O|;Nfvw}Ll{Fr zOZ%D|kuYQASH6nESP8Ytj~B(bHtuFrIm7Tb4If3NV<|YRZ@DBztzrokCIRPP*LRp! z+aG*Aqa&rB^H0jgC@a#MoYzthHvF6?>6E9PcgLQ|>i8)Nn&gXEGg8}7?(oKK4HT8HP!=+IwO`_2>iby)0YKwvz{lachPg&?!r-ED&RzM}w zMOVUaAMK4Um zOo!C?Y*Fp9=}>kScx#c8xK&M1QSMp!PffLyvAz08njs;AR*91ERis0{w5px`JhtGA zOXF&StwUbU>yN33Yf9q%95*oZaA+hOo?CWx!7MU$tSMQ*?S{z-%6GaH1MoY?PIB>e z`B%z@eH3+O%@*2!m|6aRH*Gpx+cyjHf0Aud6pflP(XtJFPO@dn@GIM?Ng^e=h0XR0 znZe>~z!kjhE%isq>li9V4hBQPo|ONj+J>B3xiP!g`dR!54d2uHSI3N<*Q!>k^j43h zjm(Kpdb?otC(R~Wk=Jce5x}aixVfwv%TU*EB!)P6?ln3`#7L=n^eDiBf?&j`I zXDLI0Ua?X#ghR?EV$O^HNT`6RFf(Vq{C#bYu=xUycE<)+G13dO5)j>e;y+}u;QInP z0Ix=2s5o8Q&x7?5FEyZ(D{mQC4oq_#VaB61X1zeRtbA1Gpr@X%Q}nZ8EpT@u5fH;o z-fQupv`OOQ`kj8xk(k%*EknO8-zs+xli^gxi;-&hAg?Xj2nLCVO9hjEtqb6~r<6QJv-QrO!4GWoNrt0{hmT%yn$BiDBsd-!PJ#o~dvw9fU-n^EU? zr{xdS?ld+D_;B7oIbY!GFetF!d1LT8*uZ{mrR_y7@X+p$SIZYL*gkbaFn)aA&2Wns zHdxhG=sN#DG8P>gTf3oQOLI<$jeduw%X{Bm)IJ&#R0PQu#Q-8TcB+fq=CT${ohM{g zf!V#doTBuL+y12vBN_z-Gs*ZSHN#KIDz~_16J?ei@j5gO8JZpvhtUp^cl4hVCPWl% zS)HA*OlntYXW&16sp766p>&#Wf|PH8&BlmTLZJ?I>SNZHKO#tIG;sw)b-?!p;&Rfg zReOHYamC%Ny#a&@4*#xV%zJ2-s>x#(N7(6a)wEsQG^H0EdVC>m$2<~GDoWCNu}q_^ z9EgsaD?6-XWxY+E@-Rt$#Hi-(dgxu1Xxv*yei)UG`fjUHgNa4M@=|keZ>26NUX7~< z1ET+s{0LS}JTpVwD6{yHJvf2?L%MYFUMrY0JBr$;dljHz!F+Y-k=;YH_=QGjoYAMi zLt+ic=^>xzwS2)51y9A@+ClS2U%ps1i!9$L8`6yIQ9A9_Epi$lj4SOr$>2*q?F7aq zvGtW0Ld)IpTkZN4OxmlkAb$1 z?+VU?PSkvzLn#)%@ugJ(6>G}e?Zbawv>%2fsFGYKtjl z3#Nh!1oWxmM&D}&fc+}zrSX`Xz@xMg4{$EDN~AcjgSvIgoSNs#JDNy*DE?&c%iTbB z=V=M_U?L5!fNBYCLW1j^kB(?&e{@;$u^+~e`CCj~Q4Vv_(tZz5S_CuQB=|B?xKN@6 z+5r6PFrQ(m&`dOZxRiOsf!sO^w<;Vlqya8>qHlPsi!_n6zy)9`US~Rp1%?J{cV_Ec zLOet5#yqdVMJy|y!yg<94abnf4z2W9Vo;U>5*0DJF4Kh2B8vx}8GWmm+6VgQIgN_; z?}Ox3G?kCWu(r3KdBts?)#M+&D`>c}S%C3HEac43oTG?cks$|WH(&)i#x=6t3k$ae zOy{r+tf`mCG!1pdkfw&xF?xKG(|^P#G$F0U$>lud6>^koRW<_QI;LgD)TR;!zQ>i! zexurj@$X)aGgP2WI1O%db1nzr>DNmM-+pXH6&>^IM!}Vle-LZqU9KaN*tEk%0Ml1m zD~1A*)uC%Se1+82oiJT!RtZJ?ik|O^i99c@qh0_qz~*_8?)>11nEg z7)N#3<%f?}LLg&5`4u{j3Jh^n&KEK3Y1b%>soveUoy@d3p5IP%p`5%r8qwa6@Z6as zQKbWRfzgH@r%xQA;zkgVP=G6LKvH**r;*qVu+i~j!!`2@?#tR{ocnf#VNb1THzM7w zT9-Jd8~&oz=L_3kv)S93=B3Z95L^srqdx3;0^+{03*J=rX`sWw;B_J^Kjh6 z85~eyqq&8R*|ie5axrj{;*mL%3Bju5N?ko$`Os)S>f zX{f^>Uhz6XAXG`$SL|F)H6+#!?cpX5&@eSA=ljNkwQ6Q~5_LhwC7rT1Q@6l{0>k}< zsbfNvx)de4eTd%uUA@fb#iQ(kl|4&M)uaSB+vW7Mz3T5_rC7Nx zc6?S?h9*XLB|jD_A@)r&pi?&wSENPF%6?Aw%8J)#-D-uko|&UF!I653M5Cq@b=146 zpM?B-tsO(idWa&^<7Q)fD~Kndx#(XSx3q?eP>)~=-CxF}TR7iae_z%bX4+E6_8Z4E zjMxYJm7per)#YNF+RCt@7EDk(u&{~#OQ*BnY6fp+#^~Mj!_x|@d@%#e zqpAj-apn90(>#!8Ld!#RjeRnVp+0cOPmP{UImOBoKK=UklF^Hp&w;bqtU-TVD__9Q z10Y;NPJ4$MRj_;k+ClW+?;lIYe0kxGhwLDH(VzvETPsA2NKe?ClvnWwWy=>;XFcM7{8-ASXvHN}|)_Fa<< zYk~KAV?{%J&==_v+~~xaNs+l=-7)Hv)W2Y9$C`!gV)I1-z7Yfj(z`$y;6cc+N6*Tc z`w`S`o2`d#ze{I;Fe%n+CJ+^cx)vJ*P z?`i0i)C0xR?4F}L*o|F4r8Yk}9AsayT z`I(CZ;LG$%XTQfG=F7X)2HV`GgI74O&uky@Z3PXSoW$HviP~kkno6^p3hi#66^FBl z6vZ@XF{r4`+!s`I)czOYqvOLVD^F@>0+ZI&?UmiX{%<{(a&zfz%0$@$-*A9nto4FV z%ine`W$v4P-s%%Kf?fGTL0kV%z7KnY*gLQ`!1c#HShfrSO8$ENnATxK*>-eAHhTL= z$_VSi(?1bhVu8;_iO{6C4E|o>P|h0LH?=80Qzil)IKo|2T#|3lBtwcsBmP1_Cm|$g znL0#Nu~Eu4Y#CR=xP2wQxW_}Ns{z-oaG6`Uo`}&~y4-&Hg42J$ZnUR{5Z9n_QA}He z0T9a8DS*tBdN(vfpJ1);qIgyZVm#1>vv;?y+L7-r2q8;@cO3eW+6(;m^ZadROjdR7 z-#u^|zf~i|>V><)Ve&%9QK);PX3IQ%_sx%^oK!Q!F8_ouhEU#P8ce@m3^nS7K+XLI zpDT`^D~+vej?$BL$fKk;lcme;6{H$g0jP%QbZB+`Dc^T$=e9ZJkBovoq5vVIrjbTd z_e!>DKDvKM^{-_)hm3R(;kJ%kDFr$FRYYa6viyT@dhM7GDfs^pbrwKzMBBQ?1B1J} zySux)ySuwHFt|fPaCdjN;O_43ZUF)$JkGiAzE{^eqk6ehru_g$fZhck~URTYsoZH(2t{W zDass31IZto&RZ##O*l_kF_GYezLz6VpeFvwI}Flq#>j?%)Pu0iY^lD#Iqu=`-e*VZmaNF?&qZ~bt zs0L;exFHQ_dxP~JHvjH});T*)(TJd*aKa$(5>VEwj{7gpB8sK^a{(H;aT-B7@!$ld0ujRW6>D-f^B zEzk_U>>*gHii}r|++<5$TdW9L3~rHKF$H3;Azg~XXZ2fw3h)rClcz!AF2(>qTtqa- zG#8j5t0rD9KX)hJD}*IN5!{yzg^|7fwgaeeSoxfwQ?<0+-)m%T=3jZ0<@Q_2u3b%X z!}lK5^DQ zld@8Q|foyyKD+FNR|z1;@klO4**kLMD}Ca??o0 z&)ZxD7%kt!3ydW#sw7f1xdWWTzup>UBHets;# z;gK@@cG>QcwIHP??j646m3?phw(&Q2#r)}+qsLys-`@9Fv}><;+a)`AO_|WtHvVu(xM?RZv`p6 zZYUuRTPf@f1I3HWUNv@uh&Rw`y?xuNs3929SwHipz8beqe(|4}(oKZIOFl>_T^3-A=0ZNOyh{jZmnE>p*)sCYkFNoe;Xl=2yhH0@zer_UcGy)ndI5$}z9I zD17FdP8}p&`P*t}M_==7S{2i4Ls)tvbGXjYn^(#l-}4spo6d}|ap8$_G$!Iox1wSH zN0Q#+69sS~3CPPfzxYnzarS{cYT(DEyy^kt`SgvUP`EJmUzq2UwSh9TY4E?OtaE2w zY~wg9SFnQ^^~M27I(`!oNsQaZo4RTZon^k_gcb;T$}WJ{P8X9dL;6JX7)2_dug%`PRXOaoh&=Md`=&8BRK zPZ}>7byrQZ_Dlq;(|*@G9;EAoI?P<_S53(AUDA?d+ZqXP(B6=|8nd=2UkUsf{RKao zXLG&TH^&EV(ENzF*_I6lVAfGKp+7(2{@3`H>ZxQV1s@D-UN)^C(~k3h9`pep`{LzN!w=GgJ^^A`ipK=E$TXurp!@NkaiM5K2>My@|>zH0G4-nbF0rX0M%d zse#D)FJ7JVJ##Z6!Kn*9C5+qo@Y^pQf@Pl~o9=aWmhp`7#TnV+%9qARFM2ORowHwD zbYD-;lis@*>s-isOrWDA;RQ5Dl#K+s=&32t(?GFUll|u!zn{)30jM-S!j>ls?xIUO zu{j@?5kgP0S(IX}z>*zqSwT;iJfoi4L3;KmKCB`EpLUtG@ub|2^0~dnv63^1laM}3 z>2k${Dy`QvvXWQV9+WRWnVAr@wQg-W8ei;$n$4P`q5hSN!YM7%FU?d^*uE_LVS^2v z7qxb=(wolONO!t!Y8<7G@U-8Wd#cE7J`6xbyY`uRs`j$}@%ALqor4{vBg4S=S4f{Rd*oGBnn?$|z(ehc17&(Qb|KU$N9I&(K0k#; zJ=*TFFG$%<(ZWMHx4}zPo5xBk}+95PT~SPdU)kz z6#Z|F$;=>oez|BYCpd7%BamNT&oi5mUpI`cv~-ssUnZERS2RXCU^Rq$%Hnx3)hJ!H zXKX#0wZqxHx0qT8_AGH|Rq`a&R8TF~I#{-^?vteV<|1r0W;3Nq#6^oDZ=~ zQ=FiKYok8BdbJQPk8eKlLgt2{)#vRooJ4k;7t>lYI_swV){uk4Azi}&WlWYLI)eNr zm=~c8#FL^SkcX9agGuMrxJ~Y+ni0=V@*4k&V=i)HRJm13m0XtE7K5{^ zaV(@yoa2JAvU3jhsM0c$C*o=56wgNfJ2=WTG_5RSFy3VzI{H?TbtE!?lZt*%bORJV@L@6D3!N7;tAx;BRO*3 z?*Dso^YOl|D@e9S1)6SwcBFS2vbTZiNnP6I(Dpl#n>9H1<&>L+)qGf8yxyJuaznLe zl7!fisrM=MYR^;Gi-=FD;PaKIZl_T(V# zi($jTrWA>x(W(bFJ0qyl@x7V+W`{#%i|OTO@`KJP@_Dx#%%Tm&c!<~_5!Yy}Ov<1v z#5nG3r%~lh1re8HZb^fxCWfK_gjn!R!<`?#qik^g3d&{ZyyR(X)<CaT1_^~u|9v<9v)gi`BghOE z3rQsE67rcd@xD}$FS@J&1SRXZBv%RdTQ&p-ww3XliE6B68KFU8X#It&t#CssSkCL^ z8Vx~O|9(>oKIJUz7l`Onuq^E4@p>asmjI30^M(#I&_s9ZBjPYBl&t-SsrAog$;x9im5wqUhw94auA2S zGaf!-)yGxaSr%F8!>~1h-+qxC;N`p=8Xn`#;P5L@Kl^^(vWrURlTe>ws2oH{)X%!q zX;lx*kJlr(FzssQ(ZOuBDN`&^-t7w9rgRrpdrju*H4rq%%xxM)S2$gdTN59NtGprEv+-?`c;b;1%XfY2g)(mTr;FfNd6QK>l;BE*&0D705d#SBr}jN z)0n zhf4iAR4Wc9(7?5Xl&Aw%5t}o!J~{Hw3e&bK4^w4?b7aIambWfr*9*@0{U z+vXo5Ef;69Z(N)tBl;sLAftRyJy)D2kE<&gdObI@>(D5AhSDlpG> zXf!^7YkgADhi2!{u<+dH>!kXj#a>9XRKE>xv4Qp6XTzlWt;Jq^G%cTv7m)!v<#!_) z6@lw_l7iL6UShPFmuBMNFwfj)IGOgf#UK3JxS zltMm|Gt33Uk|{Wtv@by7oE9jmvXa80e9l;)o{TSdrgk)fhDGb94%bKqPnlgYHciQ( zew2zfqj|J~rbXwb54Rn|kUCd1_9%Cze)NpCLgyw8hfU{Z4R?v@8w8g|*QhZ-C3!=) z-$)I%bjS!MRgV%J0YfnlL3qs*##BsVjxcFrLWxxLO}ZY-wptn{%LHf!ri(xp*~1e9 zS?_|vrNJXZnusuBdWf?F*bA2p^18#~$YnLZjFlm|>Pysg254iCt#$m?bXMub7F&B7@U>4$ zy5wp-{4Lm>KqpVEKF|QGt&_pYU3crIv3=0ewQTZ$DQ$S0Dc0Wr>!p+7=4-=kqfeiu z>wx8b{^S8^+VCJ#th51EVqvWG0l#QHI(O(C4+UB$PL{eH>cAoni4Rez9O`5H-(5M> zoUNT2jQQc~9y!$5_P`Rgu&Ha)k|_3$KoMFq+_pNc7@o9E;3}PD_0h9vNtBb*XQG+} za+|YC%-LaUB}PN)W~SOu_}0o#vK9X;`Hmd5n6)8CaoPhmCt}{{sl%yn9M4%ew^=&X zN+ZX#L{*GF*gMmY8hv7|Hycehy;{7{MS|3>9@DY}*MiYSZje133-ahauulsL%#8n| znju@56af0!mZc&2ofoJ5c_PahnlE#?a^+^EF7pB@I;6L9-)Aml%RDiss(a#7I`===zy|3rC+|8v|*!GCre zrl|*8st5m1fa||+goOe8+GQ;QfDfL;!$K$mQ&D z3*DmO9tUkPw2jrcWid=V9(i?$-=v&QexJn?KG8J~hoeYe2KI}qnL_A}R)-tVVNxX_ zPU%gQdHS+KA~V09__o_p)7sPJv`Iqa{SXWB{u1hpzsA13mWD zEFsxuu2qu&Es`OV_%|gRh_Vmnrs}0T#6Z7IG&8k((}1 z;HuGQ$nw6tYecyKTKDJ`uP)u_5TCr}{&Uvg&}@{cCN%>8m+( z-{Q|3#cucRjbe7a4Zt%L@J`C+&{y zW#;Ant3kdKzsVuq$NXvzsROLzvG09*!}2=Gfe}bI9eLhP!%A0~42&|tEJ5)TKYX?o zwhb@lx20;k5D8AOUn$?;=|3`mSC2Z2-09>08oaG=MHw2Q{Q&PH25$!Kk^Bq$#nJM? z{=fHL81V>0l89hnt8)LiGGEoQUw z*t;dL_FuRDyhuKb&@va(JRgq%RF~av8yq^3-lY-h-xfn+VsZ+i8C?1SwK*xR-qTGM z_PWQva9*VwYVgK#`sbe^jWvz*^je~I9CU(rnmmNBp0ijM*>}Cvv9*oR=MDGPfgh3b zFlmbaCNcZ>kuadGBqd+6>rWeRc^bEIx1K-qWx zy!2RXysn~p&+Q!q_mI`;k<(ZNn%h_d)9tUYT7g&Flq?2Oy%ovgx8cR^{aI_Z;@gRz zP-^{&iO|ki#NW%9y(hz8JJ|sDw^?v`)~r)Mr{NavIR$^ayJeE?@|rCs{yRwA@k5g( z#iML^S&Oer&mSmen05ACOM_!%>)hilgsshzZu8fI6=dv1*SuVkIoSDC)5LEsZyI7- z)mYu7I`G?IH9D}LiodtnJOY$#wW(iIqrcmfgOzph{pq^e#F+GZ$*Ox}YOp2X3!b1V zr~=ykd=~Yb?S7Ab#{BS8QEN&_^)8<7_f*Z(eIt=G=ma)YzKG2{YOowmuxJ$Y)A!HM zI9q{sesj;KnB)6^oC1n32Z!^i+8ZuoK%x5f&j6=;;L|P;{y$k}rAOH`Xk z3~oNRQFotUp97Rjp6(tvi%2GOFu@(=9j3_{-y4;9Zb$K(=7MV@?>&-ub;B)rXbp)r zS4jHQBaj7r{`TRLgb@s0Kn^Tb<_Am!)sCx;TYRAV=`L&INJC=w2UM|qKL)PTun9FD zFI;-BUU4vqxNxGcSS4eK0v%~SEyF!W0gEIZ(=Ttg1ISOM`ATQ52m;$73dJRD<443o zbN;Np+_wxyFj)*sd|v&z+`fqOt&A?xpf{1pZMW@jNhb|FSYtP-X_E|L)e zWQ1NHsPLrZR>KLZi2{5E{)){KGlV*;eE~` zf{}j96gna28LNMQ|LyjIm&iRPzsO6$|AS)AU;l!-esz1aZ8!RgtYi=_E@`Aeip;>8 zoFU#VD%Z?r&&4i9zY^_CDlee36-CWl?Oa{+N080V)K}`L_wbYO_L_S)@EjAY=A#kB zMux?`s5&j9Q<@uP71`7(bNWnXxTR|!W$WcaR&{^%1k)@~Rg_Bk@sBY?pQIzIK*mQsm<1xXJh3V106CA{h z%)swq+F$%U_@yjKc!Jur=-)K3VQzabYT9C7p^=A0Ou@w1E2*{C>O|2r4*@KUP_0Y{ z{lP9j%_O-{r9aj$CW{-Eu=Hz-f)A9@8CsZe58SlM&?Bq0yq=e2mF?1ygiJ*ZX|`ZY zSeMwQP;;Ij)hQ@cMO!M~bWf#3(62mYOnOAcoc`i&gpZJAmN^&eU}}+9?wNhzauMe_ z9OVk-$r`U5iH)#MoNGCH)5JWu-CvU%%sr(}CQI5CaxoNK{-^ zYoMB;siz^?Leox$)~d5Uq(Z(PZD;ueyeu6LBIhxK<%&Z1Z3zQAW*_GeoAa>Uc7|@v zuqBLcPm}lL&CJT*$c?r(FXzoh-l)*m`l%E=Rec1v9`GSJ%A(>6{VL! zN%fPdu-CP*Um8BI_?Pr>PkUlHepy~||HpU|uI2m^Dg^M(7BjCOGHiANcPJPBQi%_+ zxOkIo%EMa-K;CZx5NX}R3Q04hvjNd!Tp~c}n>ukhn-GGf2d)C5ug}d+)7>8)kpyp8|pR9iEE@R#`OcQLB|Xga@!vOVwU z9Bi<9m{U&?_U~k@8|~WroFBb0tM@Rhs~j_=p1{=!nVY18U66C-YpQ@aRCqE@>@Zz` z{;>C*;XoNB8YS8&c*hMRCXi%RQ-{nE2`;1cSKYz4SJDEi@E(1O>1<5wFI&Rovla<1 zzE+CTJ!y%+0$vNpW&}pe?d>`1Oj=^*gGq~!Bz z$&Is9x__deQa0M`L_)ZAwNHUyAXO@sBJh&>4t5V4Y4hF^X%nb^f6Jy~ML`*qlPba` zCu(t*M;8?RNjC9?g~$yvKOcDCr3;GRO_K~$#DPRj%Skf{Q)C2(PfG|>R0mH?I|x(s zfyiS?GYD7Yhp_|*=Rdfm<%BD`LC{C1p++d)0{<=={?c|{JP4JQ$NGmOnv)b=G{EB6 z15CdwBZT^rh3N&<%TM~KR4kyGyLuLkwih;REQvy?ne!X`2KIup4qjJ$0+-JyttNN4 z7`gN}<{hNS5Ep2O1qePDy!T@d7AEod?^M#<(kwo!@9SKS?yKK9T^6B+w0##Ah+wI4c^X^XuQac?XHaVY-Ff8SW0LI^Vmn2@gi zQ7!j+T#&BPEnYQ19W{K4s9o4<(?=Ijxu@l$_Aaf_j+j4yKGbO2p|Q_CG*FR-hIwPg z0HX@-_6?LCIeHHj?0aQ_J>~>vxfP9qSFeyTec$sl2<7e(7G-B5pJ6S!c+xBh3yD~CZ*=w0N2T#59(`L+Nk4)69QgR z4{QEd-(DhxJn$k{=so4inG+>)(B$48aN@FuzK_W=1b|!Rh@B*FwmmQaBaUl{c|$KJ zQ0|ZK?@tMTK7*~ruY(~CCSIpU6PAw#Rrir-k%h}Ajqu^Defbw8_y1&Z#Y`|EW}q+` zlt2>48Tic;Vlp-;Ckcv$~R)d`~p66X2$@TGap1GlEKaw_4AIm2-)o0$IO}d zT8Nvq2O@F-1l7v@;8K1)5ZNUg|64kkiaz)YF>Us*zc=_!1FkB5(7(cFP3a#^*r-LGPN~T%QO*bqJ$@0{1)0(sy6;CW}1tBTg0YtvI(W zklj`cZ#&`_D7&`La4o@qKKi|$_~nr0MjQs2B=#F2xzwICcPh&`_^85jId@%H6e5Qy|^R5h9!@CrTppG9}d?}JG^12Wl8yHgn9uPTu+ z5q85sM!}rq%fV?Bi=}Dn#4A_|uiS-DB56-o(84E}ws| zO6~+uLZKwN!)gK0^!E%*BicDRgG?{1k}E!ANQLvB&{05s*EH&B{yYB5aD+SdS7|fx z5RT83Q8?U&T7m-L_@P7~_{mnr+bC+%;A!`o(f83`Zx_;c#J(RF9ktkZHi!*wVV3W& z1W{g3X2d(cldwfm`eI=ZFjmZ<@Lgf9eQ>+(IG^?`uLkMc@#@GD>Jn+aIV;c0u3zPS z>|k7zc#(j?MLh4E8|y`ThDqWA7j*Iiw>V7m27@sIkkh%joYko@e(CO*Q|u~(8QYxQ zG;V0u);i*G^|kL%bgS?7?d|^AUbaNkTF0&flz50kr=k+|M2rR;qN}R~dx#99+$jBR z^+da(@H<0P0r=OiOh^a*QHPAutMaM|ig$~%=1RZ>nYa#)ep91MFoyobJHC|hoL5x= z@Vp`*;lz$O{0E@CUTyz3;B~(DX-V_wPtYpg_kTXT%H1z3J{P)Y zGIzj0h7shsIASxx9VzOdFwyRK^4EKv%=00#pg3-kQVshll+?&;&$Yh9M=9p%sUH{4 zV&NLZ_Lw`xcT{RroAOpa$4h4yfz$y=QFa7@9la6SONsT4Vfye7LkQFYPSTh+eF$4d zN%VFjL*=dzv9NdOuzpk6{Qtn|#HY+pV|{>6zGYBxr_neQe`Kw*vPS7f8Nr-A!LCN_ zaij#rx~He9y5WU(X83*hg(3IADp4LPCn0sFBkAZ=Z+~XRXHU<*(X(Fl{DOJdkCE%1 zmVTwVxU&ujODsUTeQ*_umUB8f{ljtb3LTVeEVljm|M<1;=*c=e$Y5amlx+|3ic_e- z6h(D{W$Y24b!lWo0q#kjFmrzts1Vm^fP^F+MfJffoKB=l1k2U)yo1wST-m$wHXNhY z;8n1?abiJ7*G3am5*q;aD{{C0XG15hnZiEk>SX6#;EPV{JM;84#D10I9!eoY#|RmT zL^GMPDr|USaxV;VTs)8QZ40sd)*%FDmby_zzi8;~s(JyHOWHh&vnI}?p$jHk;&Rf_ zvAAc9O-dBF1%-}-jUWpAlnE>SiVv**F828Id5EogqT{#GVc7rZ64W?*set)Ngdh0$ z!w>j-tv|ApxHPX+IS`lwXtJhn+u%j#cKo~h`qKyo=Lr{pb5h9SPSmJkYu5(ElFYHE zk6WVpwZ?NyjQ4jhrBUsKlj%=45z7SrK%XuNsg2z#Z#B1D*2<&?4m{2&V*y^PNBgf5 zBk4S!}{ZFM{~Zeyex6>JU-#Heg9)&ArVQm?SHFH@)2xK<@-U7+AHzHm%qPTA#& zH#@r`2)`M5Y>)gTcPMb)tZ)IUZ_h5jGr$Xu+~CcY#*fGQf|4*GD9Xzp1JG zaeZXp9iExd-ke8GQ*_X|l}AuI+nPPS(JsSG1QR^{*wt3-CUKxUQA?BTINu4th~_2{ zpliXZFlfMzE6%CMmY83KA)&28n4n%0_*gtZW(hAOpPCc9ry<|_v^B$^At;#N5yQLJ z50=c2SOb4O08P#P+)vJdcCO?2Pg1{*7pC&Lfi)@MQgWkl1dk`HxdES7i3%dD*enuo zuOUK2Y%_@l`=sy!6VUOh7TLj)JF}{>gtmbOR?(JW$ib$7S)Ae{^}CJ>cTK2&78v_@ z^n?wMGD5a5(Q9qQJx6`YzJq&Ei?-wjK%uLJ*bj52&qEVl?`t@Ep;7ClyH^(J+6UF3 zN-*M6Zp;<8)}w&E+y7@b!TBpI0ryMgzVk!$fG`ck1Me#ffvt#?mY<>cHO*t~`UWii zsqe0?i7^VKcSO%5vT>L+Y*+}EMI9&s;Ynns$WSuM@LP_wesxK0^LE zKsZ1^4gwpUJ>of~5DOVw%S^K{UioZX`KSEv_44?(k1nxHmNnUQ!91q9egUD2(o&D> zNx#Gfg?IbKC0*flmje>jJIs$JZayoh~aklE17yb47L^FhA zc=(&}v8e{$b?Rv_bmCz)3YEhyEPl9n`ea>-{qUQ;bmIF+xfDv4(C|5ewE%GDp@8M3 z7Rs~{TS|#X7w4PG2k9Vh0h^ZkQOc!sL#`1uN2kWiCZV>f*CrkMpN5rkJUr_`k~uD? zv%*p8Z0rQ@%Sz`=LPz5DyLA)!O~GFk;rNF=`rAt*k|nN^#|*wq7VT&Ew9xw-A*f-) za}Jd~a=RUK67~}}wfJS`-$H?Q(iyEza6iKJT&V{e?~Xp($Ub34?dq^!?@62pt)7k# z5?FK*_4U$g-ld$MyAU1Q4$tA-f7e%l2rd8m2ySG@xl?QjKp)0ktY(B^9a|Usf>RxUh@yl*^x^Ss%OUVO|ccJ5cpb=W13L zt}KPW7D+$9G5*^j++PGNBt2xgRP7~-==y8qyZhyt9k|H!slWf6Uxw_>Qyc(vyx(4| z1b`TK&l~q@@QWNdRleLQOic}J*c<@Z|9)H|B!;=){-P_6Ow*+pMhzqTJ~{lU*GIuJ zNU0V8vqdTi7-KSi!_@s3KgBE(Gbw@xu6qPec6Nk53#-08J*$#*X3*QUz3WY zQ;h$A`6B<{2Pprss`%ozzr6TbQL$%q=zi7Ju5fMtprvdM7t6xhC}u1!hF6p=U~uDi z&obc4a(7;U(UlOjL&@FGcK$ck^RnfhdoA!T`1tzk_MIshvlakkPG=F15C7pRxW!d&&%eQS+29f&tvxlT zP{dBe{^MRoLf&tmildaeGFn1Eu_6;vDl*fcYGg@>wJ6NRf`-UZewHl)K|L1f%u(uB z=F-BfBQ@e#!L?v%YSP?t(s_6yOBom{*HOmyg-Sr*RzB5o`F2g-F#Pf2+{1v3?Wxg?=!e*q-vlJsgtsQz;CU$H1deqK~9 zMMha3R{@V2^>6%3M{s%+1(eoU&?`*9C`XmKD5`;>^7Q!vs+#zuN7$v~;U#418R#Gd z(Vrr$hW!Xr6dJM^f~9yHJ2m*FSm+-Nj8n?B5WJUs@5?%QsYZ;r=`|(^Ci!AA)1}sq z0@c3rZ~L&uXVS5fucm;LeHYQ!7;yF=5YdX#ine5PITkw{d<+UxyhI;ii_~|Ze;DYG zjz~J@^~(F(G!kbAZN&(Jp~?@-z^dgWTxBHGPUHxxdE!J{M{|fQTk#)I1QmNU3}ml` zW}wzZiY3po{m3DeDTgNGap+MRoj6J;U~|ze6em_flw*}w>QFqFfAe;1iLTXl9n~QJ zQt=AbO1y*wp`E_1p(Fmwp$-A?bl44=eoi#qAPh>(GSBK+rq{puD4%Enwn?v(-6)^E z5KqeA-n-X0X{b)49#9qTb!0}}?3MUq?wJmZn&xZ(Pb?Y_U<>zS?s1)3OPrmQ51;2}l1#${7lxvpm`W7)D1_{t-(p>O_urTK1z15iLfvBEUKB#NTi&_a?x zPhirdY7sK!m1V7Tinj?nmz?4h97NjY$G93wii)tk&0$O!{-zFumY|(NtoGq-OD5jqBmj$f4C<(=%Y|v?k zfPs{TA{x_UAUyE!CqO8&Dy#!TRw}OWgss+K#OCD?FJLE@nWi0U6?J38+D|tqzgC%D zJN%uaL3z|Zf;VX?+s9DjxdZI|h>deW3nw9E2oc~kq!>0nZ#EVK`*%(?P_}=1?I&gr zH|6r2SIEH~S>cL;dg5AhHL z;cz_HzBdP`QS)-qTu^TeP|FGJF*Cs*RJ7N&#(dzdt-$TcS(sN84%aNX_nHIREy~_o z1)7=Sr|LX@gRYAj@D}qZX;mbQN^jNj2$!@8QtZDpn=cN_W$=b7>5G5` zVFMoz1fhYW!m!teEFlNF^(Nfv(T;f9zaA#*o@)V7UG zriV}<{cEs@jf{2s<&r3W!Po_A4L)=9p)DGmX)8MY5gB*?Zdu9iIF;3fpB06c*t0>) zH=_+2g-K}vVbQ52`hk>XmB!0zK9<^E<^|>=Q2oy<4R7d2+BCtEWNFi)`z34xz(Uut z0_v2d<~0~WtVQ#{%Y)Kh$1!DqCJjxIoS3=1>eYf*gqePHD)236l~SwXVQPV!5ye(x zwMOof>G4<@+w%tDNJYM>R}U9ugL)%|A}!Bv74ZpQaI$c$xdAgHyMSfL0;X#;0EccO zJ=MZ}U#h|{QEA#{nXs6LVg#W(Go1SiN8z0kNN}HS*33l4bF0e+cS|5 zo8qEd63>EN4$S1GV@Ih4`Wm#DDShBTm-eLi**2vqsh(*hmtfqW5&~V6aw_6QtrE==W$hc@kP7YkaNKi!6Vzjl_4>UXhpH|}J`pgZh@$X+; z8>}M5_=hvyRLNo=C>XST&j|*?vSBx??D-8+bd_BSc>gvNxI_bO*BAc zi1O7voduI#nP1-_mh&e#>uq~V5(RJWUfQ<~lFas^exrO^|dfCumLD#`PI}F zBj#IoM3A%O1!rLNU7@grxlqu!WVOa3! zCzul#(unImo6u2puqeiu6_TrK=%3OB+aCP=)+04(VHaN_F?op)C2ty!vTAAZzj`)Z zmU1AwL1|;^rQ<{^%{1>tZp=>o>YR4P#PcsKN2bR>%6^eQTs*Xq1<4#sybo>39MOh6 zPi_85;xByXYyT06u5J%v(;d+*FD8!ur8dmBggNx#IOMQ5$%#g_#J4m5u*|Du0?`2D zf^X-f4I`?+Xhl~sS^2a%8e%~)o0%X@8Cj@oVwxxMFAoU9#2OZaZIW+gVwd zucWc{Jc~_6&+tYQKv24nLJK`QZr@?f%(No!25TI+&J4#GPGupgs6#HF8J_pAMQnBv z9!iqCvoQ0}dW+GpM*rgp|E(tNnf?jwZ>^10#%3tmpDd?~%y}=jw*(b?)~sU#ZR*4M z+VZ;{v&gn6u`47$-2!3QdCg&S{KHa>XT)(IGN*FX`!~&SqoP$wBokf(`-VB>`)9=P ze-h3>G`vIBNq9gO>vVCiXW!D5jzdQ|Q&qrgtQZgzNdUz#S;odrEk2xs^`=W{%dCF+xJZ{iZePO)-*uiTcDd3!M;kPTIHjM%8NlGM{Ug{8p#;7Jh z8KaIa4qUw4s51if)(#_=LX?^_`SeAHy?KgYYq|xnINc>$BGv3{=3?MGO69BInIZM2)pPVOBSIo>h zs5Fhibp#NTT4`8M>$Ir1QTGkPV;BKxo@xxZ6WaVYK~4?NG~w8AbvmRgwQOQ`Vm~GW z0uW54jACm#EH#YnGZNEK+C8K5(jM5DiL35heL`4N`NRZwT1hKLr>12My+pg=?lGeO z_&^sFcJT67=$#xYiT&hE*K}ieyr&xoJ2}~Mu**nHq*kzVVseqO%1G>jm2(F+6#Q3F4C_CSnw~k?{1qcmm%3D8jFVt#4StjpCT7D{TIG$8 zO#D-&tf9bWs8f?M_mEJ$xcY%Whq0@bg~4bgUOcOE(Gs5I58&cLO@_LPC;m6H z(wifCdNWpjV-{FWHBYbB^MFK5Kys@zasBl$*fqISCMUZw9 zyQTKB;;kuf-v=O@;eSZu!joGn@& zkNG$5fV;7iGQ{OMB!}!YM9LATK#p;4ur>z6hWs1aI<@IU>&dgN{d8gc(u2#6Zm4X> zKRX)JcLt%~pZcqxUYC3}ai6<(f${66oVQ~V`~@7@N-=PjXvaW3PSZ#=Ak8GgmY)K5 zjoI>>4R^(zH#f6!rc$wcB0owg=AY7JtU{92pL6J8wC2hbDd$o%-<%RnJ3`4K)sRaB z8Nv!@@`NeSy&!5xQzFRxY`TUebSa1~FQ){Q=i+~d4oox?di@o@+YlrW%Wz05@wW^M zo+l=b3gfnmpb7(4$koijB5JAT?Di)kV(eD~o`Nc&N%6mDnr5RU+9BP@hU2j|cCegn zQ7$N^(uuQo73!4&a9Ln$MUzD|VV5zp@Y=o;cWqq6*a`A`sPo`}tg|SKGQ8*(F!2fK zanC(Cq!KA%rpm3JM+YO03pP53=Ja?|m>>xz*rtoU#5#ZlU-ExO8r$=W3$#x4MsXzc z09kz6{wn+)I|*cTx#E~9Q9;Lhus+Z^|jU`p~9<$A` zVR2dKUw0VtPVu(}6&aO8ti`$Sn%{U#L79=`Bvbqp6RcUhChZ+29C!NAz|L|?2fRxc8zi-K|FS6Aj4}|qPc%;7Dj&V;Be7PaFj^;R4vhP^g zk6ie;{jh>XZ9zZ5a-z%DI>SK=LFZqvl>Y|+=_>-#SR4BE#MDJ&R))Eno*tTt}C!W~0ZCexDwrx%Ha`D|)UDZ|He@<7|-e>EqwHOX*Q1SQsI~(MqI-6YX z*JN3dPi9OqRND+0X(_ej(smBq>L){@K4=LAM?P3{l0RjSx#q16A_(ReB5x+o?qMZ? zOd~7Z4-A7lqQa6r{yK>gIv#DMnr5*S^&C#I6b35p+cxdMwr`3}ZI|H9%k0(Vfi=7Q zQIERG(F|8HJ&0uJ;HZS-*vY3}Iwt?+oumos@r-b+*Zq-NFUow8Q$5o2Btg8lUXPJ2 z&;n?OMtn{xp<-KjxWk4PfAYHr4#)knKL9-X*q!)HhKi5HFkmzk2O!>jPJ|;Grijk=&FsyHRqrW(K*bR9SB2UBpi$!cHn0L{ptkLx#a3c_`Q@*5_Eka zQKAsP#kU6usT`m!?OBU<#KwU^8};Af4lKTZ3f+I;x#Qy8fXfce$={G1KQr#S2eU#8 z-}bDv$Yt3`*z=>0I6*=$)`HMnO%95+>~FYcd~fau*N5i8g^>TYi`gTDK{Z=U39=jb z_NgH2UpUOwLjg8T?ar?wu|w0VugzqJMA}qd$ zUx(^51j$8i&+6;wgJ;7{O6{B?X%kc^iCv2lVX7tR`+_0(!ty`nf1}U+-YpE~8*Sl^ z<#Y`>-cPOmN39mK+5kd#=;oPZaStvdg8x^qwz0w~R8caVw+Kv8vP@uszNZI>k0L`S z&!3C0dk2_(337ZNKq@49(<>~1@7m5*xF8NH@|z867)3V59FYI z{uRQFQM3$(t-RiAe}krsCBgH+8_5ZK~zjDl}IJ5Gn zK1~_)HDYcAX8cHy=B*+6%Zw0TgCZrm;1D81RVh4t{)I0ODbGywQvFRCsa z{NBAj41nqnU39IsbMY^LvLn8aKcF89GDIP>uiL->*cy;Ps!ZIxW>!ef`DB z${}6oRpK2;2Ck%xf;*^hkLmQJKuf|A;q>*Joe5-O5so0Q^05TMOv5_A{x}LHG9o_? z?qCBd9=>z*_CTk*1-sPPktH- zeXwgvx_dH+ifb|z=hMc{8H#T<&`1bn{1oAd5CkM)?`BbHF_;Ri{i-Bk=aY6Vk@j@Q zomv|3byqSbyOek*tCK&?Jn-uaOvP>WbS&IB# z(hJC~4T4L&Y5Z$|tC8UWyZ#f|G6t$bd^1@0e7~%ZSO)*{9@X z-OVvy%miXS97dB3lyC#{Kj7!KMgFOOJhv`Bzr5^WsPADMMgzntdEvI>c(2k7qRFFP zL<>I7L5&+pJlyio(}>>A@Rlb==7o3DvPXMA+dzDri6-;qc43_vyJWKmNt~gxih!|e zWF5cc6UUBU*#m3Ng$aOsTfZCbOLwo@&BE*r|J0IxxAU&t^-(Q>Z7un}&;qEmBYiO# zMe)HssOI)#-k=Ql<1E_~aXsjtX zNSjv%sxL`+pVwf)HO}=MJ5r8aZjz#TjseRo)Zug%!mk}STo}N{O2CXRsQ5hJ4k?MX z%}vna{#=r~i{(P*_1IS}7x>qim1Q3wR&&m=+d52Ou z8B&+zcTi6cBO3{hd0+~OG(pF?z0@3OX=xW^xIAC^rMu1zG0r|~v{%0>F0OU4m$bm= z!BFml?&}E;`VZ~&Sd?Y<&O8sJCdJoDzPuCq)u#O25VYLnW7gegGFnXO6U7P#Uh-Y) zdhQA_M@?S5IzLud6hP?=9=IP0Q2hKgbhNJhHNA}TwN(PrZDzt@HSebaMcJz-$UZQz zW}+>2?fT>ZvEQ3wwC`|m_wd*!I=I4DCaLcEM$qASyBK$LME`J6?7(km@7oqkdURV% zDtYA!m?J6wEf7Z!v!q$_uwHiF@8-p&A>Vk1Zx<992j=A!0mJ*C=pK;U#XxQnUk}Uo zqIy``^Ff32*!@g>BKtpSM-tBXTb5@JJReMH1?Pu1Y9b9G1kA@C=OK`dB|Fu5(4=v2 z^v8NBvVWUFDV)ZNMm~G~k!(&huX#Dpsawv@f2XFbu)1F-rf&OJq$BSy^R;Q1h!*|P z4#QTJpE6151JE=mN0md~O5tCWUaZ(&lnTup3sG(;3I7G;&uuiRJ_k{;uoN9Xc~~&Z ziBPI>Ye7Hb8T)qiiyaTd%er7wGRn!L2TAYQROxuwJ5e#`PN3s=^{H zdKZ^!G!l2gV>CBzlTHkuL(KEtFWi&5+JO2NX|z$ zGDIoB+_~O(z)W~hSb1O{cyK0oAer6SG`}d*>=E&J5Xiqq5ut1LOjF6)w)JbGsfWsG zW4a$jz=R3?*2L5DM5z~P^6sUUd0o0vztHFY2Grx%JJc&b1e4?4&gJOYhFClS*aa0o z_iPm1swNkQ;C)|=^(U6ggSflO)%eXeB*|%BAv*{q+~FD?Jig!2{?Qn@3DLdax)D^i z;&}7}sJg)?-r7mNllIH$J2mV9SM@9Dy-(bLK|h#UY4x|iTSe?P|9;f$`#6IBQ`FAN zE!Bncr3RHWp`qM(7H@6NXd$l-eb|BZ~2-U$U-ulCv&d^h9Z{oMTr;OVh;2Ud=iDKIrVo6!*?}{)o$T^9O&nKS*}e$Q#o99hUhvGh_Ocql9IR5-L$3rv`Mh z{m_{)vCw_S9<^+ZTi(xOSqG!8Y^eTz&7>SDTvI7r!Q^YOr0nghy8yQNxn4yxDgUZ( z@>9Vf&1NqFeewjm<%Ku;)l~bO!sZXXyNrLuNXHMcjsEOywu)m!j6o7|@tL1gx3J zX1!z$wTSy{sr^oTJbR1wIwBP3{DO7N;n^al{qzI42bcp%dDGZRQo)~eG#YaY$Fu#S z=>@U$!a}{VPG20yx2YM!t4E1Vqeu=pRT-0-sJes;BzoFZC&o2-I)5KkV7_oP7}s=e+b*kN z3UqzZN@M$A>xmFGJQz83+U6GsUsSWUBTMVmc?ovZ$QS%4BCkW%)V}Kual%dU8MY9f zX@uUY0m{^AF}tnp5V8(#?z+B%dI9NI0>7^U`}D*~0k8*e_M)3k4a4k9K%Ox(+a9+V zlCDrX(7f=wvtSyMcm+j{?&hcKG3Bb2S;LCXfQE;Ts4pRG(1yx>@kO;G ze;n36*GKI;D4qG$e!SBh@WMrqnU^m5M|vii{B{?0BO`B3aXl-wMq4(gLzOm68oqZVDTC35l%F8! zFCh}QMlJpXLl?$5?71l%h4MwqW7DWI7IQUbpZ<%nJ{)A*#0Mpib*zM z@KL>AsNJr7ZF~sVu*kVMU)X0Q`CfX>@f#fb8#{OY&&@8cRK3P4-95Dzo0DDY?E|-G zJBq|DDTwPQd$`YhtpZe~3bTggB{Oq~&-wz?=3O}7?gCV~l{gS7dl*Td2OD^~Zc~R86Q%9{~yO zP|HuoUvp!pni}=%h2>}|zF~Zit=WW`evB5TTt275-9lfNfF4(-S0fGev?b|U=C5L3 zgUN%eSMH~`$*T;Vi>=T1qi&FvfUO6TAbhwJT+djd44+ZgloJL8fR%sEeUvskCbc%` zVvFoPBC^_KCZr>+fbE#w0)_z!2;EjwAS-F z$~a^6qvS1J0OyYpApDq{Z7b7h0Hs~?N%@$B{p3Lm-s8lj%3*+WsF5xI^~eb`=`{$? ztKX>WjMmZY^%;HkKnNbAa14zad!Hk|>IwR2XmE@ipjMx~X4{!nNc^dAh@nu& z8i6F1{!-O0z5Od&dUcvmLLFlm&VzjTQ9VJJ#FOSOPqQ6Gvo=kb;J z)w-V4?~-)guimjG=V9h8(~sA8E>*V`9nDBy`W$Eu?739GC3~4f#^^Mb`@gtEquBmU zax22yX_g91m5t7-3gPKmK6J+@jFlhT5E@XG&8zI@&=fKt{pTHWY;#8Ecj*Q@FN==M zz)YMc*xM;?-MM|B&wYmqp{x6bh_yZx)5D9SO#u=4FklSGw#J+7FTLueTTJIGF({MIgiSTV;~IbJY(( zsMl7*r0;cuI$*l{bdfiFYVG!EX@M;f5SMl78}4t5iJ%X~Yd5vyc#A@;s&=eEs>+DF zC_AvdL%Xbpxzh->zepH5ayeXEpS@46DG15$CJZ6~XV1eL%i#!PEe@gz-sYADC`2BP+&^A#yS5B@7^Pe81v{{;WGZ z6B&FCRy-t!ku=_RMQ$;I{p7S4f;_|hIHgAG;)9 zih5k8_7Kh2=(a}R>Ysn~^o!y0^c?-J!}gGpGR;s-8gCTWU>a+vGxqHqjY|bg5=fn9 zuMvBQ8$fLMM6{r0(1jZc5ifNAG~wnY=0g0a^tXqL7KkHw1Jww+cJEsbc?7FM{0M7~ z@X3Ha-z}((uJ1KmUmj}hNrHs&<25-KMzEe+9y;jpy+S1LuFjKWV?OHN-qSwG`F<+m_ex2dRQuG8}V&iz&8F zqM=&2!A___FT{K+*t{EhM*UBdpR_!>6sa~e@`qN8y)G#aBWGdpgDx*HN8H>fVH>F$ zP#65|hIN&?uwqBRJ2FX<+Uh5wUVda=>p|jv)HJ$K!vLZUrARwQ9&L#E0Rwv!P1Rn% zfMfU2Z_Dz&=x2_&^r{n|DTk*5?Jk8EpAC*&k#8ovf+`mn*Lc=0`ToeV(REpdN*g60 zkXol=5Kt{;creR@b}GT-5bh{@F2&h9;Yt5f?|2JaslHuD!@JA}!!Xd_XXeX!x*1x!;%HQ0fjV7OFM{CgFYHD7AT}Un{`l_|Z}AvBP)E0rIwH;xnKHet z4=7N0skrxKVvSXSBvaZ%b*<1&IGL5p9L=9nzMb$fap}@hzY617y4=Z<^xnzh#g)z4 z@AE8k%A~A58tSuGfpHjyUIdeM^~i+VnGACeGA-)7E@0;}mV!BJd{BT`l=Ja+R!Er9 zF`3hDZ|Szya~Q@hrdpDP&EKqZ7B@P*0zx`Qv_Q?;t?Nj&B~+3uFtE-V>#3rHo9;)+ z0MB{Z3{_p&CC~hU=fCeWyRX89zwgG@>`zL<7HwlK4Sb9%y4W)#8eb(NooKBi!bA>U zM^i2N`K@2Xi%>5sEp1(X8xcvE7QvcDPXr+HqzwpgJh<&34pOr;JnmZ^2-2pB*<7^Vui3Dh+N#^rr_ZW18CfQ_zRo2?$10DtDeK9mPj8>oUz6@W$borM z&ne}X?l(D&F5OfLYahXh-_mYj&3p1JfAy1F!-A|w=Ae+9d8KQ6 zE0vVacW(;sHe)p*hUx^IiWvb8Af!g&J?=NUvYu#QvmY-u%WwPZZ&>GV0@rxc+u!W{ z$!bKyot!zQM7PI(Ot4)Ebe5?@7{o_%9_ge#jM-oF_D(JkcwD?7nc;voSyhEI&r4}v zIhJ-Iw2q@;J1_6^VzZu+vz)bG(pUKKy7%JnJDA2kNlvU~?i{{9T1scbGl02%KrBtx zYO7f|R_f}Ir|oS)+J0#z&VBrjUd`nH_8)V8s^ZHj|9TQlo?*sgOO|JCXHBjFri$Z z4PDKLMoU>Q+Y-BwzLm@|tdjBUunv4Rr^I~6_ z)kTsJcO8vRE(qmI=ddgT`MVnsic;qXAG9-jxz>S2(qVlo8No2$b@`7A%4ZG6O@8d{mWF-yV1MFfZN3LxL8sff$J(7pxt_b3A7N)jAkpJ_&6EZb7k z7Ed>p1lUi)3gt2!co-o5v*gwJ0h8i`*O5uy&rODrdU|F|G)1iTqbjXqjMd=WA!PY7 zxVfnO!MGomOPPR*`YVx;$t~`DKY6;aX-rJuDyk8zz4Wk}@wCxWC%Lz2R#~HUuyE4h z-!Qanb-Vn#rBymq`cS%Tuu_g5V3VP^6MdybtjQArw z8rPh@*zh!jL@wgit^oS+jtW!8_sMu7u>G+iKxCBPU>$-f1C$Fu+J>F{24;a;eZ%!L zKg#$WE=PEK?we4glLYZAG^b4T>?s(1D!nCm{w?91RB$g#Rl;U&j$)vMA0KXUiZ`u z&WU^7Ew$JIq~nO)x=|D;*Y9e^)_%e*hH*TxXSN-zUjz6z5oD-w5p+L!7zY?qwZ13v z8~qB15FE(4J#G&;DHvoP|HkR*Cp98XpA3qUE1Sf5n3@mzBUZ*08)#EEm4}e#1C%fLUv+ZtCnR3tZ&`7G>3?XWD&pnra6~Z&f$F{GC@b9fI84J2RLign zAq-ErGLd+)NMp&8*sHyb-qgjcP*YQq(a;YuXL+a#vI4>b5KA@9i%Vwa zsjEz%&6mBYEni4J5{>*m$xO>|70W)|)1=V4R5voIzIen3CiYO3V$-TTz`?c1n`w#Y zP?t8&YejoYAYR0rvws@f28p=(t@|td;62ePT9stBCPWDqM=m+kEeD>hOa}(XD7kDv*+a=2$PQn~OAUNa7P#8l zMB>Umb3d;mIap8>zX+%~Ige$ZOgHaZSh+JU59rU^4DOasLrH#BzDm!l+dN3n5)FVk zd$Mk`?_GYuk~im>Cfal(f~gd?YTVK(L3A#;i@hHCgqK|IV45aC&nd4XAfK^S#u_jc0$8;p>1%zj&xdz^3_ zS?|BZELOY`I?9yk;P(wJ&@I-J_p{NDbvuFE1EEFI@0)0_#3rO9)HN7} zAM+Spnm5R$#YQFoRRQa*CjJbC;IKS}^yFB0M}3DT>*{`wy*m{mD&l>TLi++XV9@={>n zs31_u=S5H`|80$gcQV4jw*uloL}Y%L+>M_s(-dX%mkU|-%vTi=Jr_OfzJmrtlB^jX?O_Ck*#kMge!&-1cods_jYaT*d z3T%Iznd%8qH==%-Rl!hanqgS0P%vxeDVju-$+uTOCSXwFc)B$MS5{ll12}`&OX$Ja z6BEevP#DpckMZtP;9NJV_gOa&j@I2Q2B~TCe0`~fmPwMcQr5s#+BsCZABvqW zdHSiG2B-U)st?XV9#sj~W!e+}+V9WR#7YqU`8j%a)@LOGCtL^4p>Ba^#q3X2KI@wY zcqYPl&eEq16D)S@Swl9qwlMu;4mm-gQMH~%(`$<(W|rKuLY*kDRIAFNBfI_k_G~hJ zt4<|+_0!0fXR8-~dwCN}vRt`-1u@^m4+g!69a)$WHLIKuq(`n4Z&63MW!}0iseDd5 z7UCcv>s6-$G%0*5V~OWnFev4V(Yy1@*F8z{o71K3D8;fRzJ`^uNhFCySV{-a*Rt8O z)^tia5%zGU3v~dAJjkGX@)vPux=>c>_~iTV@ehfUcJB!<0VGgg10)WhChX}2DMq`J}7~@YI&InW0 zZ;`xqWaj=jpitucM>6=5XyKbbaz%3s$^LSOsr#ze!N%SaI{iJEk_H{?F#oGDus-T^ z*Q1z~YQ|a3kYHsjm+7F2d4RoFfiC|4`TS=rx|DIh9K-yp(*0jo0D%HY<|Bqj{BLj2 zW&Z*;S0rjFp)R2h0alnrCguiF;t&Vg9O9Em46B#}KmEn3m>d@bBSfegPgbxrJ==b{ zAq;DEiQPhY%Z|n{A$Ula-MZXn6}V0@7@8=CV&JDVs#SM>e12+rRlm>CZ}}id*BHbi zk!{qRmgL|D>8^x6?TM&aWucVlROcbn|6o%A_LZG8=7|runGeFUlrJAI=5vpfaf&=F*qi*^->|SHPgMCIzJ^GA$eOm#03))uLy8F zMO%doAIN=>{h0Cy7fdG#4!Q%7|Vp!BT28mgx?wOl4o#QVK4chNd4Hkds zrg$9QH8X4zT*8qI3QSIRY0*yl8|YWWU^*K!>m=`$Q7nqIrEmzf3A6!TO<^na0e)=L5I2)j zPEdIIcgcSyJt<0~PwaETu3p!G&5xK|Rw8b+q{ivaZ3xd&)s6X?veo-WdqX1U#O@;E zsS2FQ3M~D;b1eY^Ogt2raIO`YF={GBmCR!bbguaP=984x(zzX7LR@;%(G6W?Za6v* zHHfOmGlv&N^>A(8vs8MYN+kMJP)g@1@G62L6iNt;DB2T_RMmWOGf{&!h>fb+L1>ixk%#b*A zq76e$BxvJh)InDv_~;4O2j18%fTBn?LTq2LSLP2@3Z5h7V8{oPt>_F^)pVC0U@$U~ zbuqFS6&rNr=#4%=V;&E{=<2ZqB-y-r4uX%QJWm(R-;V;SvH108r|qOp^!7N0Y1>TV zn3)DRQxEe{v0}N`V?+;4LQOPGMbRloU~n9xr}ll7E;(=4_u?qODG0kmALsh~?Xn{3 z{$?0UVnj3>U9(ElLvB19`3@(@&r;aPTBrf3?JM{ccoM<$lm5)$ewgHg7Kak8J?jX{ zkF5ZbQBDlZI)CQx=9b?>p+3Dpo3xrpY_g1JfpM(x;eQt;Z2u`r^yKCxzlxHpkE=S! zN17x1s679+WB<^HuoQiX{ZHb&5vr&9ivlh4;-WdyoylrrV#b@k|LU$4K@5n{N$04| znPq)!nr$}UJ**wk_c)>BNhX{rYbuvQsg*RrYQF`ROWc&bSgC)^G_7WgR@uNe9#P4g)ajYcLw zudDS7UziA8XqfkX#quX~1YEMzvN_uuc07ZNQ|Q1@cYDLFV69k~3c_}m52P$z$tV;( zaa#idW2(80@PoFnyxiNUz>7^67SkJn5}<;-3%%%3DF12bM!wi?o?%wVjQ&R1IcJsu z;K!hT(GRS&D%sT0MOvkIVUv7YqEe}ybhZpi{rdxEJ6bq80lI-+*{l7X$6@YcR&og8 zqFo~M-be7CkW);AlAK+T$Lh)$HUA_4VqiJvu3#vPk`aW6{km$(9Xb)Hx`mlp1&EJo z+MMyAqJNlc3LQOpFv^8~?_-&@Jz|HT07ZF|3dPb-RLo^b#?K^{$}RyYcs@Z{!HxfZ z_Kc^7HQwIn}8{#j5! zzwki&S$JCB{qeCUr=OneB3YqK$*xgId>(wlBTqIu%K>xlws_)!4=JWI$b7InFRg+; z-r(X<6sJ$0c7lhdi;D{CQzD&kT=6Pd(o(lTg&I`7S0$)7EN=iB~wWx zq(bP)PPrThjvm#9ZY0&ro@KL{&s5D?+@{fQwYGoD%>+;=i^W~1N-Xk7rfxjr*?D^7 zMQu~eQrRy5o}Npru}lfsl=C3-wX6JIm>e)Q1>3UED7_Xk+sKuSD}|vC4A}I^(Ee1W zK$w$&y#O4n?|){?xwxLwLY?igD36qm8g_TXC%sQVzdrSB`ZQ8HcTHc?M0P2rrdbs; zQ}akfKJoAuSe+)^~jS;PmAty3th-nG4H?mwTjp&HXi^aGGt14AT=_Xud^zb(4QBin&$ zC4@;BUGJ(HUvn>Hho=n*K!CRHLSLIJ3@Bv@-ZX3OXM>f0<99*aJj}FOMhQgA;eCd9 ziIj&7H+k1PPm&vZQa*sxyfx~rtu@zhY*^XWsrF;Ly5S>j6WD-7;sY7=RtNDFsa|gU z?Tci=2(nl`@p45(|6HK>`G5WXz4ie`okTrZN5Bb34Ql|1{wWpJ5rsD3fYQz;OGVz4 zu1brDERU1MAxm5nkIW4Z{!QD;Za=b6r?$P$iXukwpO`@~eMiAK149pkz{_;1p*jC` zB33YeX}|O3rDhUJbG*eaR&=A+mD8lhq|;^N$Lr_QCtSu(F{fgm;K6Fw(eeSScy)5Q zEl`e^HD@I&b44U97gZq|rMsg&VU^VU_#H>EB;BU?yo|NDN@&O_IZ?0bjL`bEOd+fB z>|aG$rS2cy; zOP~KmuqdCeltXT))D0EdFVeQ|c>oI8Hnm1dc zox*o&cn$7q)U)AMPl)V6SASpa&I7=zFP5D3QGI82IVYjsCyqHLsnr%_?ocu*D=D^g z)w<}oO@&*%v`D9Z9663_W*qrnFZ;|xd7W{cbG`N*8@q6$y6M3s@(3;LN_lfe%?i=* zIp(GnF=S0Sg^qD%H9y0s1^TS*m9^zYaX49(%`7I{rGZ>Zh}4nXel1BQ1qdxJ$=J!j zLbiz$WZ#B4@b#B|qFm4iNl)go>Kt`=+Cw^bsxBUMmWH|^r$uE!S=~hUtnJw!OPP-a6o=7;kcFI6S~ks8 zI&0`cTMlQ5(Nx;&<|lGZm`c9h7xSIv%w;p`_Cm}m<)>|{*%l>)49x={I;MdfiI$pgIe%I-o@f< zoZP@0|9!z0z}Gc0u)BUWZ1N#Z_U;-|EAf4wUj0@L=9WF|_UVre&-YUnPY#RuT@V>< z#aMs7SpxZSqD3b~iBu~hgW;~KX39UKEm&wQ&Q7%fn?ZU$ks7v^r<{`YUpDOzflN*62%xGnv2_g*O2=60&217;rFmV_oRM=rk~Q_ zK=iM*_eZtq(>1o;HCYJXkN>2c#=1CYb6=gGwd5HlB)p`fA6UtVobBAr1dy`4pvi<& z)c-x_r2~H1+PgT**x6b*+c_$lIN7;48kziWcABK+gd+Y`57Sz)#9`K`VtRGDcj_+E z#Qpda1aU>Ij}aa&YD~DC!tqpF6#HF@IX*Qu(y4kBV^|nDuI#7Eh;UXs6-ikRm7T}0 z1Li_S=D6BOlPcevmiDO^J=t=(r|RylPb`3AZ0Hy9eTfJws-gcpt&hUgl1q77HxnSG z>MeMlV3GQPB`8P6olYn#L|R%4CS#v($bQ>q($ZwH-)S}1H#?A6Lb*_{$%b6MnLM7hT4-6fix&_1V(FP2 z61=qRKAd$e(RE=VQ!|F8gU(_mLFxtWEQlp$VVIF@+M2rJ?nTt%#b1tjqmo}q26m-* zbJI|!nMT9T?&>%#uI}Vz7AEs@KW5P2)~48Cm{lY8&~W=cSvvWYXY%!t67X_}FK2`4 z^?OMkREXl`VZiwYp4=2oGvXjy5@Gd5Zmto(20@SayWv`3`3vi4O1jP|Llz+lNP{B|h%>EiJVB=(vC`QqAU<6@=H<}W za~8%F{3T6HW*L=+b`1e70y4W#(~^LG*7xZSl!#MRd*gQXlt?F0hS^H3Xyb?lT_3KP z2S@$mG<^!CRZSoR%WoKltoh(?QeC~j`3ze@PP4VeMWKTb$!|T|)@LKK1s$ib}K9D}yQ<3plgMRpfuLCxS_a0hdy@)-imvZ_$iH ziR=?=e#J7s{FfEY*q@vs5Pud6+hC06eDi8==fo|5*-b7yl3UH9mylU*x_YU)Y>;uM zwCw$`wN|zgFN?{%P-#gtjtR<{ra!*j3%8m~IrkaTJZ5gKD-n6bvl#6!iX0yF- zFXblENVN^LU3$!-+`GIYmD1P>hihHDP&H@oU^Rlu#B4@18#p#bmvzuDe=6e?-sb8* z-{ktMbEhEfiu}f(?Y%>hfV6A4_DV1kNPvP_3T1%x_7_560J7RchT%3uCwTRbwA_7Psa!Jw%rkEYKnDopPE?#BE(p}KkKgec?*-$b`MCwtb9FxdbaofCn+a%vVq5iXf zx?#W)Uw@5orv7{XOcwYF_dgqEatCKSJWvt0p*W|F8k{YPGn;gK_YmOA@6BIQVk7Se z$}kQR#_*k|Bp_tcww>Hs0!2pA^xC!q#N`cC9H9e*e$=6^GKwVQM9`GfYV*BoN>_t` zzw;BMqW+wT%=$jguX@)vEu||v)3_D?M0ox_)DgTB3b$9n~04<_rMh| z4ebWt8!}1=;gGik2n-qc5)R8oVl%t=<`X3_--)bwuVqy-iz}r_JP>j&YLQJi8Z<4y zpF(Zx-;|S|A+-kQtxur>YH!9IwU7cD5V+hg4HXVQhj&gYo$kv-fr`)6 zeu#2i$VaknH0o1Fi}lCQzVB9>TC1ppYLsP?_VOG`o&1VLsy?>`;v-smU^y z#yN_|Ij_3L%zekq>xNax0<9hk#^n#&f~;qn7K}zzcY;NcU)KvBIsaomi`t=;Sjm$x zvUY%*xAp)UJ3KHoPFudP9H(MkzMLfZ-GWq0KL8ZARjWyWY0$B^C?)YxQnMp+BN6sz zZV^O9wD2dfPQPH$E?cXvW~X<!!bVH`eCT(%`5!^ui3tw0u8m3MB5l30nLP6r1$PT=M_ zcflPSsts)m?VRg4dWVso0gUW0jDsSv0*sPSL1rH8?l|8z<=y&!;hAY)s*rt&(S2O)SMkk8Dn=w%CLsanOAQ}agg91e2Y&KI@}baybvf~!=1OKc?1u;; zn(wtOXmxpk7L_ac^HtcmRo?lbzaWd}<~CCP+#rt$gTsrm=KeHC*b)Oe>d7PZrEEP# zDrKorqgfj~y@WG)Rh>0hIxL*p(GuTOG80q$UJW22pRjDDYaOc5u5+T~QNIoVM^@TJ zdvPxnGxGDXAFj}(mo?`M;hZ)x#bkQg$MB9udg82*fJgmx7Baamn65MDFcjVMr8aFo zlgi&n+5IEI($RZWp9lBYpo0kS^3q-|Ub1e!OVPLAn@3_ffPFsNsSwnR!^|L-=N!>f z%Mm4yYyB{|J60*df!*xws?i7JR=x(#o9D$cuxV6rpGMw4a~r{p^?k^%M{2k-*FzlY z(+PrO{426hH?j8D9n_smFe*H$qX3KEJn4s|4csqq*3sVvGcFv z+zvqP1q&r5;+PDe`=J;QjBYDl1;1<_|H7#-?`h}62@F;3Yrz$0Lwf;a8yq-(>0`-~ zMZj}4UU&;>R6Uv`_2ua32UVz|Ynu-&4)w=2)l7~06G~MgtJ6v)LaGJlsnXy-xDC?k zsWPHiF&)q2JV9a~iso-lT&S)`Dp}*op>W`tNpMXd1adEF@tL9BXlXc)mQ~d7DD{NH z3!O}dkq2_`A6I_i!#{xOqToq;mh~@luTbxY-ho$HA=l59BHqG(65IQbZ$_s3vH%VI zDC$Kb`S8#zZDUpK>2tB>ji85bpy1G#+kMxAF{9(Z4BOKz`DqYiRc`&mh4>O}i6u)^ ztin#M%sA#(a3UqE9tZmc0keLdhZF*MNE*B0$oh*xF9)PSzK4?|nSrb&kKA&=vk!F3-<$)z-Wyz#TFP5vo4W3A$##bTVaJT1 zz+ncxz2EooGmg9o6I@zK90_nHpT_(;wHIdHDGm@|I_m@X0 zLO?@c>BM;J1G`p%j3*7Go9c4u?7M>pYz|#?*KpdRm^jK`<4lhI=#c!eO7#}@RZ1)x z6#aDeS@T`&zEDWPim%1cn%f*$s}ilAT)-=f26Wx+5L=MgM?6|-EMML-kj?{Ub4w)9+wBj<8kVM-OSZ5~-RJ0PGQX8b2l&-p)=d z5+`&X9E~_*9J_i$YD!8~BGwzUqG~4nRN!ZLhA=UBQm7@?5?bbu*w_tLkS2@>stANV z65cNber3aRR@nvNXvm5V)|pKF`rwSuF>X9-kI!=g&*KFtgjdF_sMB70fQ}kQFSX)w zos2ceN=kn?ThZzaHhSscpn0qtFWPASPT*Di-d-zGwqcsg$E7B8k2mVu=#5$pep$}8 zB$EbQj;d-jUl(`-ZxUQVX$xALvR3S*I_YFJy73m?Ht|P+KjEDWglD9i56~;xItj^weI7*n5TMI}QP!Rqp@GpEU@txo8j0>S8MV@f1AvtYi>Hi4) z7oSM&IfFB#y0PDEq`-V8@HzHMeJ+>HMwoHnhMt5=B#050ayuV6jBg$K?a#> zxmJGy)Zr~c{m241tF(fYC&*3tQnOAAXQ^B(e?&N-=-jkF;%vC;s+CcKMpFTyLNUNH zZ^#OyOEh~se)eb1t<`_XmR4mo_Reoz@mJLRz%61|QDWM>g3K~n} zB$cyVFoeqN+F7}(W|^RJs*s$Mm6zh234?!p7(*dU5Hyh{$rUzJco3%SkBm_eCJQ=* z4waK&nLlz;ME1%Xkdr1o+mflO{1icl$?_$cHdeBPEKnn;mOO-lV6!(6^M|@qNKGA? z>#~ch#_9!4rD=qkV1~e5(Uta~EpsgSXYIqrHn}!V;<)x6PMnT6@lP$+Htc1xmwK-i4sUnSTnnQC+%uP6P&3ZIqyWf-LGHlxH$(b2yq&mau3jW8?t0FV=QZ51~pbdF$-yXszpT zTny{HDVK|j&LZeuW%AM-3J8A+Qiw3B+lsgNtWaEuncThJpOo4b7exqTb1RK5iV}`o z8m@{uSXXsPrKhSZ9IbM2o|?qDDvh(7;?!%>20p_JZ$oW#)8+Iv zldceSC4Kz>4UgeK6UKXezDzHg<#T9Exaz>H%%Q{7_(kdu*L^9?uOb|?Pcc+22Y6{X z-fSBI(qi_9LoT|8P}_g(^#?3pRXkkf_4$(Xq-vOXa;=;s*Ab52ui221vZ5y%-stTJ zSdGdSq8kL=C~cv!ZSzi9*Lu>@#p{+WU)0{dZbeJmqLWsxaMKprYSPVuZjq+e#E}(8 zLUFehZw-gKmqo2uY=u8)g?r;}`ZnEa(rtonr#q4k9feGrH{O3k;6Z*MW?eREPr%!+Q13&Fi~pGo%%+D6|a9Q}pt zI)b~~ilhA~zIM&B3oAU#Cj(cTbY?SXOa$i5Lp!R5W7kQz-l-AzA`5~h!E zN=+_wMob%QV&{KqLV5HkA!s`d5Dp3Mlh%Yet^dx{x_!Y=n(h;Vo}}H< zYRGUsr9C$#xu_`XJtb%lo*`5Q=l90r;ZSop+G+V#`D1_njzFruEcjzVKao>mbWrlb zYQHbu(`t3aW!BFGJtMOU(pk%;`tPP+&@WB;m7r(o*M!FXV7TFp-%_a5nG;Nzgm= z=j2w08eeCphG1^+270ZNq)4qkgJdpY^^F8$S{_XM7%_X!mvcqgTnp8>&+YiO)p zC3Tw*1pS@`KVNBx~K!laDhv0dR=1sZ=%`iM|DjP2p`2dxk%o%v)l9}D_7 z{U_;43(6soa$c)xscp`qPv}#VJ`?mg?Il!<&?Le1so~p9pk|X%hHa8_-`d4E!IflK zlj(z4IfZbiDlS>O*WX}=L#*^?LTV0pyJIe963Vl+=5Rb74zBC5)U07(d4joFKEc&( z#hZTvVQ-vJvtP?=b8WN9MrAl66#-Ukj#$1`k{R4gumZsf*%-oTZzK}foI%M$YFe5{ z9IV>rJP<1utV9yIBsgE;om>+X_S(F;fGjmmu<^FMXlq@h=#c%<6qC5RR-1 z_6FkqNWgDJwK;PEH*H}P1e+*VdO363JH3Aa%eNxj+u73|2uEZCRf0{HXt;x^WXUQ) znO7~?6q#41+#2m0{Sm9xAF{mB)P5x=9bIk^s}Zc0d2D+`(ZZqkq5BdIEjBgk1)D0H zDhw_ShwMgd@0SGLAlMOd!I)q#7!sLzA%9TK{S+#(B5?YCKAXXgGTG6B&1A@{R!5Z1|HZv(EAWW=jX&r_`8rQ0-Y_?>I*$ILkl$0qNio2V& zvNn?~73?Glqde!bp{5d{!SZ!m9YcQP9q$7!0u;4zSozrvC=w>HueQ# zm1=v;8Jnrjz+hW(n5Cx(SCS!HnP?B~*Vzt!{~T zH0L(XvYP$zvF6;z$)#Z0IQj)Ui>{`LDW7lW+n!>RL*@8t79agtL)NX%u+J}J7kv14pj#-wcQiCUJef-d!LkO00d*sT)4 zXn$<6WBN%DvhMAI-C@W4w1m>ulFXGIxJ$6_NYc8kkk3I>R=P*9@5)ML!IqdEv)0}d z-WXaD^@d`8D-;iGcC&x`*!?EkCfN6+u%DPo_KnKWY3P!oJ}L00SZcboNp-vjrr_R_LzUk9vAEh_GA_-w|OH3 z!=7u(^*>ZwADU#c9}!mn?}Vt%6-DJ{yV)MWo|cSZ%E1c9EQ$Y51p6ub8Np?R;?d1& z3XaK=aqU*TQO?<)3-$~4OM=TEx1wGp498{_Y;n>X^VzfP*CzXoV82y*$Iv1Kv&S1- zYHfM;w%DJFOnGNvzOTKq*C>w1oeBtoT+;B>SUae@af7ObGr^cXFiwu|Es;7fIFcw#0D^tR1~ulh57^&L_78u-K9nuzc315S3L!5XT4=@M z(eP$B`zQOC$vzhB-;$Lxg7xeHh^eLH>|TG=S{e>5?F|Hq;9~!k^Y;_N%9{Vtp_6mw z=CjY(=O)`LI5-V=)F9_BKB2^(dvPquh=<4*yjwlg6>a4N`U|$CHQDwK$vV3 zcEs58*=haYz=O|gR}~=-d)&N;7n{69@KQcDONgYm?eqLy%c54y3dIRkHLW9fOr+ky z$MZ6imkVCOD>J+jIf4xcHEDW|e3XJPy=G9{!aje_UbNJ%GWkS8d4_JW+zN){R?6{j z@+!h18S70TV0C)~^P=6oK`RtbZxHZ92vgG=1ZkwJ?B%*DXm_Zp(@~3JCa)%Va%zkV zBwGdowxCEh;pT^8Og=xH*Odn+0FYmk@ZQH%>SXX2r83)Q3B*xUWIT4pCR$Mjn3?JkEOwMK%#LPi7M8GBzOgag0-{xO}7FoA_oM zl7xR}pLuX& z6u(@G-mei{H7)X=?ADe1>n8t(;8)2eCXdjqm=nTP6!LCZ*Wrz3;E;z={2IZ($*(08 zc{@9;Sj^wy5BTGoSNP)rb-pe`(Ditu?bg}7R!D{Ij^ft~euHeh&|WlB4)vJKyh-pa zGE+pN{te!^rQ8M_RVXz1Erfq@gV)OWz5amDin{sD7~|$Q^IHYKjo(f%ypf0%@)4%y zj6fR(Orr#Grvz~qp)yxkTxP+$1;2+*A-LjUJ5!SUUcv9<_Y+((EACLEqGmX9Nd6zi zzbE(uxXu=K&HlK3GH1o+h!vB$4+{Q}Qf(x_Xm2cT`J97;a_;;<@IHUuPZ$*rWt_q$ zOc=!M8JUW^xAOs$?+|>aB=)2c*q|dE4iLuKdt>W*W0`AmTdQR3M+E;N+hPYYI6IRr z{urUGH)gHN+9?VK)+ukaRFIw!{D=I>{oNN^s~lkbM}j|PJM&k@l52*W?&VJl{$u5o z^~an&W;@72*7>R6KeK-wUrvRVSZmnp^M|@!{O1IZN~?-T{kBRI2zz~18+-f#tI8XY zFgB|sf2ez!o8tVJg8zy(5y)4B0{Xse;5UN*mOn?R+E)zjft~`}2e?Kze}TVf@|OgE zS$6(_4!7+SRWoV@EN{$`J^Y>Eui`3#5nL7S^mgR)*ZAuue?x!pH`$AX(z9~K6BBs1 z6?gHs2$OO$!Mb>I15KOL)zu|C^C!XIq1Op6e@v-BmW%&|P`khz3WekL$f&AS9ag8e zH)d7&<5m7x=DIpMw93e@w_rfmC6y`>dO3MYMS%jYTNr{}J>c|1V+tK~a?t2*$pc zZ4kE2Io&TV{wblxo>5)?kU!RA`I6J8s-rhKS|Q8wS-xqKwLTYoFYV2kovCfrJj~Ka zXiN$y+GNay{m;!`&_e7>u{EdW(D$43K$?GBX!-U&b6e|jE7lu`$F#@J z2PFK_LMu@4H_MV^gjQr9=4rLMY%wg8ON3S`lkrdB4ja;+l6FdwQ| z5XPk=U!0s|Aj8CAbQ@>8-mOj0CYstLp;c*$V3_Z%7Y*!0dU2$3Z7@-|2i}H9lBEM$| ztxZvllrbhil!? zwZ%eP!sZaPZYzF@OgKSkCngitNPcP)+ETe7xq{ANL)p$kH%L2KXv-zEN}qjlBLnExCn@@%mc4q9<( zwUmGQV^Vb3naiwb&>vTau}4%MWH0fy?8vD?J54)Xos7v0(JvaheCM-AwRJ)}Q(Ekz z+lrqQU1)WAdjoMd+o5#`tyA)#%OA4i8zd<#p>=89gvs5u<>82?^r`CD0&m>vwv8`2 zAhj(n%}U&r6kmP%zpnZzzSG^>dM$roYC)lev~boCpPcb0TAPQ7o?9!+-!9dlC*^#&Q)qYDmnO8t zP7292M9wblaj1wY?H-}2&D4ruODwtPskU&N{h@9vs-m3S+NIikLc3qvM$k7#{c(#h z**4zPzviJM*&>YyU3)-i-vjw6 zM^bo?_QzKH<30XR>KX=ZkI;Xfb}IX03UYHen!1+6jkC3%2>vF$F3bK*XwPUrPaSG? zw$14TH}bV#3hh_gvr2Af$iyT}xeA@Iwsx%!fGJf8q&+9J=cRF0?vJhV2K>Gpo9(jL zi$Z%zvPW?ec@>kFymW@NSA_OEnP2920%TPzeRDLNy38Y=eW3kbXs>_CQ5hYRwKoKtue~WzY;Kke`=Iug(B9VmNHCS598?~V6J*w{+B;J8{aNbZ8Cs{hgCU0` zb7}7qZgKh|Wq#GEQ(~vrdjlJrrp&LeiqGhZsTZjRs288r)tY>lmdQM)q|YDg2>8_N z*|CMrM@M~CM_|2gUZ;OuKH`rg%SM`}#OkXy2AZb$>Z|&fC{|03fEVKgN&8vfU$VS|b>(GBb6WZt6Uc%^LmS7}g z`y*58gd|f#R?)_MopfgETITN)%RX68Y(O4ea zt>+2dt>>qNixZ__Pvv3v!*j@htcs0peUxsP`sm?g;=Tan>xKFlQ!f&Fv7BIaBf3Ke zpY#>}m`t+NG;@DL*Gq*yR*G+RE>lHca1>U#WmcKc%VpN+lw@xS`K(Pct5WC__=Pr$ ztO$n#Qdc+iNf|frIWahL3>0(8VVf-UL-a!lA{>(G_R1>t+U92EBg71SiqH?!4<{6F zOdeLqJeo5(wKRJpk%rYni!{3RTHRynbwaO~s88BQdAolH$@`fkJ4_RL11(M+)yO3` zUHXxPQA@)aqRgewAe7snt2*tyuUS>0(8G4h@XX{eq_xZcJ_V*NT3!ke*_6&W#&=<(+ZoBJJ$Vzf9 z5_+>VkEDN`X!CBeEhIPQ=}Uy(B8jZqu4c^BPZWBqOfj5@bj;G13N~Lq$uU$`<+Bg; zlZC!qZ?}bY*5zmwIbwtD+tF%Qx#`>bNg=3EDy&w?oTu%_ak$8Vf^)_{H#x-L~4?NM@Y+p2~cV;-i zlUWOTyispw+={k&BX0dn-4ZC)y9lFdPBU%!A*mCLnY%c{kJ zaECWwdoglf!Z2wt(FR?^kk7~K7YY5VQZuNDS#dj%aFstA@AU>wv^FpCM&ka?X3O%) z<-$?DT>2%1Bhx$0K3f1(r8U*64sW!oLn(hFRXqwsY*v+=jF$=i9$n|szeX6B+cP%H ztzW5s-PFG!^sA%+WCw})!wt)#{!o0iRJ)_fyW|hW10k1w4PjJORXPq)$&qWN9J!8A znSC~Au-LePFk0132A?;%^qUCdRoeU^$AX$%`c^`v%FP`<*5uM}NtVbRliB3bzfFHQ zq^fEk7soZZ^xFu9RaIG+yfwM>J8YcOKK3S;ewU4NEr~6udsdq^hcsZfIB zaoVHU#e0%Y~DK{TKQ#3EEjRA_LV22D z2VG^?o~Zs{~ygva*F-x_m0wq1kz9%-3JjUpMtPg#M=fhvYuxP}l?>^hVMF zE5kq=9yhoCw*E&`|C7+)(f@y(b>z<}=frP>qcMUhhevsgCg$pHs;I*LU7`O~e~(~x z+Q};NafCWK7AlwiH=C<+gr_&T^uMR4M>-&&NiI+y3jHJfpHgG$4MyZL+?qooH`cCl z=^qoyloZKv>0^^i{||xk+-$f0iG=tm!87dk;t=3&{d0YwhP&zXmsdHS-7lU5Ast6^<1Yt}xCJ`z-dt>o%(0`8A zu1>bk_eSSMB9=F52PR+l|23IXSS?868CCR|EQ~{pLkVN0X)=GbjEcoQFsLeK$(SOH z!?>4F5)RpNY@t8anOt&Yff`}d8Xm%!WPyy!Zri_L@YL{^EXctsHR|Pbn@YIk;EYBl zj8uHS((uzm?_4gObMBc&1L2t5axis0LZl}gvKoe7HRV25#F^(~gHI3thG0SKq%-u)l_jxyj9mlpjOC*i0$%W0TB8*c< zV~yFum}AT(l!il&&e$6E`kI~Xc*2Loae{H8X|xKX%~(1pgf%rao!x)YVAy9hWa#pQ8n4giBn*yV zws|A#d_xWeEET)DFG;j2-&kgxY#Pgj(ay&Xx&a}DXv80BSmuvN``YIl@orfOZly3* zNmz#_k4ubDUXu6}VXVP*glfC|ypV5U#$lqtXSr~qajIbRjnkyDkZVufo;zz@#u+L` zQIRh;O@)8%#GTuBj57_dX>B_csttTyBylCONWy=>WY+10P<)o$U9DtiJZcvHE zi`rMLT)wECP`Yr@{FRH>wY9Xjw=7+p%#hVUD9eADxlSRG*Y58Qc_oPm(?{Z@<1;#+ zytZR@BjKowO3BkH$LC&&94=DT7VdwwVP=T})1|-+iP;+FcPqZ2V2}+hKcI&8y(%c6 z$7bJsko@g{m>EoN zkPiI?prIGG60~@aKQ`>oB^;12Zd9Hx=TfqgK+a2F+_8-NRz^j#j}I604!+s1s3U*J zE$w+7>5JF%do!={7#|u&PB_<14R_u5m<>ZOPaL%|I|j96W6rG`;m^9yB|nmR!*#K5 z=>64%(OrYKvJdYVSr14DgqH_~y;PboIkc}SsxEyQG~o#OXJsB@D{;7L(B;Hqv**(0 zNOC@nQl~)Myb<+n8s8xl4P6jS;{t!umj1u>@&B!l2Wx%Yr>ejIb%xjT55jtTuq}cE zYGuF7fqhl|zjx&?TizRzmbG(n|q7}EIS#ZjSh0`dP@BNb)shO1&9gV~OW{1<-*}dL?8v2;3Y_EZhX)k~5ko!$t zovGLAm=(`;m+7DyM~~>h$!&H^suy&G#$7lN=>}!+$4|_poOOyv)y3`U< zj=<6kOfqeXJb$vFX}pp(+^JFoBjVg6P@F@lCd@maF6B@<8VRGVL01-(`g7eYOej}7 zl9BefH`bGKRVU9r86AJliwI<$W8eSt@G8VJGgPc{_)sw^8=18sQ{W6PLeMQ6PI-2j z%(EE;SIFAv*hsEOO25xb9rq;Y8|-6}qq_VdZy;?0xYf6FhVs(?e{NIkuScy}Eg3$) zeF0N*G_0Z*2(Cal`CA;^8;MA>$Wrd$*ec7mONw)x!!eD25yXGStRr$2xkl4D6-O}q zPO%(6I+`jp$`Q&*#xbMzF-IweRWN^>KeSv5GbPLHz#6qJFsWP^F0K5hUXi6Ye;2sAML}LvMs?Ov%Y?G2TdEk&UU$L18e2i~fHvko|=GXlBsM)b!BoJ8Y$q zQ0UxOl5y;ye!s&YY&9|I%}IN1Ms;LEoRE`WdIJHq6Rd7F*bnR7ZmrFV_k?{Z^({u2 zw|}*V^+`yuS#i(lfN%Dz4|D^VS~%&Qva)Gq`78@!Bc-dU8!;^Gh}V7K62!p_*Ke+%(XUW z0y#q6KC0pb2(IHh1OAXdKAW&Zu!+C%!RnF zKsV2lU+aarKz#+}S4bEysFD#k-EE#N%&59)IeqhDfo{fS!Cqm`H|G?Za|(2GlPtSg znCHl{u4KtVc1%GYn_i%sUy&8g6XtAH`T~FXb)hgD&EpHr;|p~2VwrG>Fpp6kyi9&w zF3gztJui5v-!;T0oG_M`>18PaNAV=W>-Mn5l zdV?@$m`4>FGGU8M*ec8h^N2!2_UKzO;oHLWm~{oZd7J#YU6|8U-ktL6E@4iWRds*8 zz%cJ|o8L9>HO>2kdB3?W>*`B?XhV3t)zGRYNt+e-b|o1iKbZOTOeXeDC7V%fPKs5x zhQsT7BP0I`R#ru+7k{x#yUCI3)(*{G;0*-Y{c$N*g%WGZ^0B1Rm}v=`=7YoCc6Z=E zQ6N>vT1ocHOQj+8UaCkbP7>RQX~;|~5%w`o2_n0+9kb?C3$ z5lV9X93eq>ehsiR=T0v{ckah4$))QPbY)+d=Ff-wr4Y6GOwjC$$TW4t)qH>U08Z^@ z9sMU14L$sCn!n8mXUkz?5DEqv8K(IH;i&zzD6#^p2_o~;G+!o6*)Kt4n!h7V9JwgL zunS`{2!$ZSLMO_NZtZlC(F1@{80B;$x&V|Lesm?%jk8d0tk3!$Zv=2|>N|)sBb0`t z9|49+Oir~i@rinVj=l0pjJU$(N!qQRd+-d%2&;A? zC?bPQRnATM>N%PU)U$|+)pIP3Q_pg$P|t}pNj(ptLsM|hMiCvB@f}4G)sjcyaV(Bg z&pDW@p6@Dp6ybgRO+EjGkJa-Z_)tBYu~vU;v?o~!LAO{ITnsrF(hq9ZfD z<0zt|=x9~`bexe&?*)Sw9jgAZbey8cPZU0kp0S^-g!ZcEWal}>c}^vpp5L*{!Lpy) z(>PZ>m#SwG0tl*SL_HZcV554TW0%8MoaY73^Q%t%yPW3}_LHr0o_})SUW&_7{n!A; z?r`#Nah?x4&+pn#`h$N1FZumD2hKNeRSM2VF!mmMUzPh@Q~lJ6oPL!$&u6rs%P0RW ze@;DL&8WW#j6Y?==Rb4WA8*&=du_UDr)j6FXTJT78*!6*-t0WT?K~gA_tmo>2}S4a zG@zc3(qjtmNAN@S+>IZp=g+eF7{AK+-i#tVj~7(ASMhrQO8|cq8|OeX&IOG3VB!#f zz3kbJ0?#g#uJLTgxPFv-c44A?uje6t_dXMSwS{J6!l3%9N*y8U6?xgGcRW1D9e9$d2>5BK8-o?X~3yS}3z zJ3YJbsC<9CA5VBZJMk3IkDti5pUbyjcy{4gng5%9{MLW73opv|m;3RGr>-BbdFm4Q zLqGoPDbxG$S5KMIj}JU$WCY@pr5KdWrh7z?I|16PltQTiu$R}Q&!wh4W6>newywn z8{1DaJ$-+W|G$=?SqYk*poMkCbV7no9H5hCjVl|s2RE0EOVG+$%T{H-5}v zNYJ_jb7(hp=*w%$CU2+n9;OQublF!Y z(LH;Abq~hODp!!NE-N3PZ?5({OxF+4O#}3;e!A1Mi|$_I>BChl?m#8(M-6u3D7=C>coiq$ zEv$dU+c*<{#CrS*8}JS;!27rof5SBd+(0I7Cl|I+9=20H9wC7zXcYF)X#9*y@H|bx z8#Ep7(+qq_e~PuOhw zl$}VQvlX_n1yPu6_53w<9Co6wq zzhtHCH*73>iH$S94A6X3v0jWfzGCEKG7Djnah`TMs@Mw5G0rzGKqd3QZ(L|xgmQKq z)*4?$7b@6I5VX;_80D-O*BF;*r(--T!xhG*#$_mzlFGQ;_!^+zuE3ih^>!upf~mK! z69-ps-yjp3dbs@L)Z0xo38U597CICK>TN3>ibC~vGkGvZz1>37P^8|zMbl8M-o8zbp+vpi zN=Ktqz1>E~VJtK88{>8(ALEQW0C=2UY%$JGwqQh^7H*L%z75xiqu96;pfZ0Ld)bMo zG(jfbGTA96JHuq3nRKtoW|+oZCfjV%FHGKP(iT%2XY%nT>oj?h{7)}5`D^k&;~0}J zH~A`)mYLeQCY^5590K;D1XTwguxZ?F8g~-`^?RYC{NT0#%s1&9|G_9{QM||aE&u~$ z+zS}@0caWvGVVw69~s-!-|v5={*L^Qj0e~;Ai1JqHki5!%kb3o)8h}R2EU}PS&{r% z4xLrV*@3ZksU$bUFuqT_K_KHnJ{C;DT9ygxM-mp#fHe_1n=~9Or2|Or5psse6eE(- z3LXL(591vN;|AF(0Nv9^Pj5>hY^bSqh-$zFqB{+c@q?U|e>%AGVYz=Q(=L?QmFW{` zat@Nq(?_lZ{X9XlT0NdV>aR=CZ~E!!1Kvvm%dH%u0Xd`xX6ctfx=@Pd~j2`Le~Irjwp_lAi8oV-={fVpbtx88Wpn z!748qXPni~CVA?L*&zw~S3f({Bi|28u*3UVohQMjdHV2yXD2%n*ukbVq(}G+j02bl z`K%7(SUnD9Q&GdFVJd6D3^pAL*bFRZN27xsi*9xtdRZebWV3(qbv7Sc*#dlzEyUxj z1;1b?;#Jm)ci2*V#FpXT>|`?8ay2eXY}z~Hl8?`fKI0+~YVf+zk8{D$joXccu^k+} zxYih;z0hzWE-`kHoTb0OEMq6_g(0O58ldmR9B?^xrKlhiO3zItFcUz6@$u1_=Y-h(Vt*e}>CD?IO6Rhch6jO~>f_)`iY!wRFYSjskT`$G@ zB~B;gn_N&BToA@C;}LK}s?B*!G4P}6?_+F%!^ZQRnU?42!;-oLn>%>oo(dN`En~9f zrCQ809>-!3nDIoCu@QB^9pXu_g~uypq>moogOUoFa4Ua={M^A7Q^t^wRZG-5=n6YOSHV;b0a4l;g}YU-chaz#bdqxG{Do<4l)>BHm% zTkYv1c=~_v#13{kgQt%wJ$-n^(}#}|tV4b#SWjzRTm7T6`An@;n{Wrp>r1t1Gj&<4 zRNuh@3}4mgp1ptcB-q)WKK$F$huJZ|5}cnVL4sZA>BGf4*d>I_uI*q~*b=~IyF-*t zav^kf5enH?F@ar-8g>beWS8P-b{Xcg%QMDkK}t0L6xTUu-2^5l4C;#6HwM_%o{9l> zLqC7pDxcr#XSb=g6SQN1-FXl4+6LI2^^ZLSf`N(3v0{_fqtu|QV6ba2ntc;v*|jKV z*I^>N0h8H{sAe~yhTRAcyD5WH>r%6$&iI*f??_^rU_R4$Mh6+c&>kJKURLz8y9ZCZ zo1wE?hFRl&DW?F)_*JUMUT{^aa)8~t1>=7`ee8iP7$bScQ?Zjh1SD8rnrm!vau-Ii z@1TO+m(faPs+CIP*%bO5Q~@%6ooa5a(_E=)F4fNVob5aegZ%&{tUsfj(o{R8+3l2o z8EaDQM4f>w_w?b)iUBsTgZ+@wgaVXC(76(DRu|SQw@KX z+YMq2@{HdYzXelGyQC~BGudu1_LmfY-zudWpv=ZAcd#E5cCcp%t#v!tuLxUERkwpZ zM|hmQw1d4OpSu(6sk$BPRl+@cUzNBi!wcm~^?nQ*dmIJq35;h?qMq%>(d?-VqRez~ zEWqLH7shiLYK)!oyhEluuuoB7vS)v%fU#H#+2ftbI9d(IPWD=AG&1?>#~8(ak}-cq zJB>2qg(M`t1coFgJypzJm-ENd$8Osy?NzpQi&QY=9Db9K(m~kUo<6o>i)@*_y~RmA zzCv>0Z7>JeoexPCf54Mq?|AyyyL%+Zuy=Q`zY#pt&)$^aM!4lz9VeU>DoH#v|Xi^Z7gYB97Ib1aDD< zC}tn<9lTY8)U{@M`e=HBFZ1l=D`XohWmgjXR9mtw9bk7(ee59^_#Pg`6MTa6oJ4JO z26_1e=Q#<$B9e+h3k|5JJ)?e#=>YpV4E9Tuv0tHZRM1lyOa43*dQH#*N1u~=ovq82%%x8uXu`)>V;V2#SLA(+pnUlR&3ln&7bHjC z*BTyYelBr@nc=BR@G}O@OI{6~PstEinezU3?0v_Uk#;`=8HayyuLHHo5mCD2kikG} zp>a=!gwaz#bq6TpC#D2QwRV)RFv`t zl<^}lksq1S=p?7nQn-y*jo+(A&rIQer$d#Q#XKlwO`RgO+We77c&d%Qin62A_$1ehkL*V=;vvhg#l1yo7|Eo3;|qeuw~8;kkY^ZWUY^}G1Z zYqs-m6;n9DzpX&x4+(xpf`2E$zgy1}d|Q2jf4~006wXSkjKLb5{9RmE!j9C+M`sG5G@~;sN!xG~U##@p=#@ogpogQ{MTvuH8 z1oW-Y9;$mBdYh*{!53uC7yL@k@VD&M!kHzZ{42uc3}#fvNmT9K*kXMt&9M z@vG6sufZ~YE!z2YSjDeLkl(0!KHKhr)ALdA8h_=_fl!VW#(T6^?cXjp-p5toXh((d zH~t(ntipKX16&1NDSKm+rHoDBcAl{bx}x4Fu+MRf$zNb5dvrXQF~^wecoCiiQ{I1o znMvN@iWB(mtr%Ok2c{&KBGxB1qtr z75olN;dkON{vFiuyKw}+2S@YoX80j81*qL^`6fGSi&seip5d08sk+FLrgeqeanSu8 zOzYCR9k%!qT+$fCeUf=+X=U0TxF&zF+n}>;6_so#S! z`b@*gtMJX#T|Y$O8m>K(zlJ-h7cXmHqp5^aUB2t~yCL5V^*%wqn(DRk;$`i#OvyQB zLeu-TJWrpNSFDNaw@NJJho_H!cKyvmR)Cop1@QY}@NFpM-$N092-W;y9L|4#fT_G6 zNALt1`3{`VpTHITN!-A9<0fv~16^>#18)37ndpbZFg`?=Vz2vBbiPkx%8rq51xldF z+>g+u+!A-GQP9wcumj}?oZ~<_A0FeM#=l@H>W_!{DGE*g0+oM;QAD5OG}HLFU@n1a zKhhRC0`o@bO6tw2yu_yBs7rr5eXOYK`kSHiZ57Ic>gm%8&+NGil@$)5m21?~rxl;s zgpW3t4X#gJseDXo^5fEd*n+ve$`k{#MuLPD!-s~^w~Noa>J_4HwBLYpetYHELXa_{@z`_a|=)H>a(*XmN&IlZ@!H19C;+nJ%vazx8AMbi;o<{6syBxWPOpLV6) z9Ya-i{G5VJjT|d`+=qS(WZ^kf)01k0eudp|(bsyG#U-_jM~AtCv7p)s>ZgN=v-h3G zQ~nPDKEE|>N(P@xgxJy5*x;iaE7g*fQ}^gvR|#>JBt_?>>nBsd#k{;7(xNV-MrNIz zzYPqJw@gIeYD--8p-18?+Z_DT<^lH1DEZr&m5dQn{$oq6lXR0U3X6phFI7R#^{I)6gK&@J`KVX% z5y!Y+A|HH9z62JKcX29OriuP{O}xA{O3f%PVUF>5y@#63lo2O0q zWNnY84Vq#T;@Y4tRM~9IBT84GP@UY-bc?Y(VOgjyjBN>|xQ1{9*8HYic+|$+EF+Nd zuv&Jl<)EPGe{+ny#qHP`sI+7f7;PU*`basDTr>X|e}RXA+N|bE5}vb*WaUOGl#TA@ z!v2;?Z3}iRB1zRu{c3KA*H4~(E>+j4{DzA}kys&K{^kQyE|~PH`-b2qrc0?%-2Omh zH8CA1Yu5;z7X1_EbZRcovH3=nH8MJ}G&#fBaA)sQ5lNI&iH^(w}2ghPZ^UX0=)fv-%c+Ze8Jh* z@qaI;j-oTFQX%tVe(KC*`xs)_Y?nVjSa~=EmT!a0kpHs?6FUN+KPY28LVih*+ zGf89tA@ysw=>_aYfgE_UP3@Wm(}U$}zEz7@hLtT4>rGg;e-!!xIIugL&{Wu z#zi+TUk>~boSK?Yw5abMo1H+%^(t|{+9{C$%q(QrYrcg-hsV`fiX-7Z_(h5Y zXFUIvJ=RjJpwmo{qxkCUN;|-`?SF7^;GJ^^?UB>{^zX9ykAGG3v-W)J@%@kLI+nh) z%mSYZ%*VBr&DdIwF!f<~ewq8o+nDBCpqgY-)~%G1`t*ujm~(SD2xR+$%V*tC9v*=O z^Q~0d%!M`CW0aD5{?UICBIK==H6G69>y9I1q=HM8yfIXl=RX}y3`El5PTZum-gQ%m@|s zpd(04%)C8+k0p;B(a-7F$ai{r%z({Oi>s{7@L5xL)8(sV9xckHQc^UCV9`A8N~rzv|d>^xHU@JGb}yEX81>!if)8Q z)M1aQ-nO#E6 zQ7To?mU42a3Y>K{ijrj*zWkEiMQcid!kRvdWf8ur)IInLLIYLKJ=ErJaTSO!iQXUv z>g%^@6}SeJpN^azD z&C43su9|d@v5jv<{*$k}ZYMYhT=0VslY`?9?btT1_R+95R^TMFeQf*0DUr8(_{pFi zzvprlB+o=7>aBdfS!S5{D7T1SrEMS6BZ!TRNF!v;_V=!T0MNvs@cTW&PL;OS-eqnqVdfw&xpnG{SQ2I$Ep`j4!a22i==)gOe%~$$N zy+%O3!e-qY@x(HI>77d>-g|q3H#;ANWcmg%l#lJv1FIUu2aRcex@>x|cLLUUAmk__ z=jLEBniKG-P@_44Y^jtO>dvRL7!tU)3(dwSO?CK%)};;ASB3Kf%CQkjoZI4QN#V;zq_g0$S9U~>IlfIX zffik0*nsEDFV{UGKX=d#tTZ5&tFQLv94X9agB~p^F7gG-IlY0X7=$YWQga|D;wkaJ z0#Og$icHD#qdRdqd$BQ`e)w!8gn2U}ZEFzz1iSyOzOE2ODIos{|MtW{ry)}@)I>@G zJT0b}lqFBGvg#4cd4RJxB^KGjoP>%t6eOz(abBN(qbQ{HQw-8)gQ&2ijxI4`N)46R zim)D}sbLT6U{dvPVUWO?=D)#InuCAy0d~=dQI@1wbNc8u(Q2epnvF=+wnC+O(;(kU ztN7$A)y#V^^&rH^h{GgAP-B9ezo9DwTH@4lkk76Is*YA|TNvTa@f&p6BRU&rw05QJ zwDRZVO+p1;d8Lp3ymr|Z;BHQ1Dwukd4*0}+U{0AZUTlPSR$vcB(!1IdVY*IqX&EiW z2`{)mt4!1q;DZDTXR8rjB(r2n72c#fsPc(kcA>UxTdI9o@)-ixmP4AS8;;BYBYsQG zy*MpR`IcoLElp&t-&gcic`J*eo!eS%ybK=lSicn!WeH{myr=4JhUu&HurZCpgf!1Kl$aScuX=H3n(4kX zoFCFxHKi~mggiExQ8d=&HaD&UWbo(QyfhZz-U3OFL3VEXSieyx&r(Akf8@K9pB}2x z+1ixu2d*V(?Kanms64?r1Y;7;=j}d4f z<+R9HS4n*|;*xz@8ETO~w+6JN37g4H4Nxbk*+$#n)qTr+KPD z-GpT?vUclM-*3>VfR=q42nG?f$LVfKBOVgWM$xPh|ISO7~`&M#Tq@Vrp$IHEq>%+i~$hj)5K=yN`fe)Jqs5~(A2=1$xJzSo2md7^M4f8JO6$P~=cH{68E zSo%HyirJ4t2$BbU6IH|3ZsVyLaw%A6=n0W(W58opM{-ruWPU)$pdsr75ri>q>M&Nn;2^eyt*0n7eLMb^%`n3|D;Tr}j zml8!dNeZ1BklyQ{&=&Mjj~swIvm=9L#Ph9m&XLTz4k`el_s(N@7p2_=%AWg8i~RA5 z&mx>1RC~x0EEEWBQc{Eiq69B|X`lutr4!HuH`YB8SDmEDtsx|aM${e!e+Esj&Kr!{ zAXG)}Lbir$k|wk5AJ}g*8qS(HMf{4xI>|D};eEzf+d9Jdepa%p3=XoQIo$nS0(H3f z6aMdSIOE+H|B)}9x5%CNmM1jlZ%VZv#XDWUI2 z^+4M?~9cL?U!4{v@XIluujFqisLZuttg#97Pez`KjCN^*M)3$QTw-d&9$u8 z6x@VkQp0u)eC@%K!H1q;u=nvye)WOHD8CWJ$!!4mNA7dtE?n9dJ}l26vEvVM^QWPd*I%#PK-d zQqSZ8d6jmMM$NW=PQ5~3f68?2nECmvPn;Dy;KsN4F|(6FsYZ&;F*(Qwuh4hyi1H-L zt}5biGSdjUgMKpJDSV5cJ9&@Ko`;QV&HQ~A7>=z#E)R|Gpe;%bTWTh8>n=RHk@ts(G@zx!tIy0K2+fwVpD!F^^=HEFzsv$uI(_Wt6(wKvhy(E$BA`jKBixEJT9xerxOxCUhWVFgA+jkG3~QaM8Q<6qc8G?^TN(CZnN$Iq@kE*6QuFf)KP$4E@vz z+zI9GxqnB3-t^G+&&qq+yXkoMm#8`VsgJL);^38IyK~&tX00^&8jp>=_~IpiP`u~v z9~dW8-X^;-C^?!I`96&154*Rg;-4EQT+W9OWB^68oeKS$rmxF>=cHG|aqG0He|fzB zL7Qw0bOivA#hw8M`<%pA%%9M`kWT+7*kJ{BhrO_1Hox~y_wFYty#fEHiv;5$plhQJ z0zx^LrcBDm{vYLWhO|1KFM{O@9V<_~Q7`{6Y)|@H3K}bh)dt)0#8grcwHAyJ9%(&Q znkZ(9_8K%gSwqO0V7-NR_^t<2o6v}<^=j+BXDE=_eTnK>1pt4C@O27-x zV%kYW6|>V}^76WgD{?_FKqE{#BB8Qft#}n6R$E5p>xn><2Q5ZK<1SVe6xq+>zyf{)GgCOyo0M%feC5SIItW9Lbp9k3;!e)ja&K{*Q`qL) zU1ctyX{fkUI#9$JETVf+sg#^C!s1yqZj~oTE$H~P2K!jr82|#M>&LbXPR(8a^kH=@ z|8~o|^Cd~2J-A%Rd1o}dQ`i>ATo)R!6=->Tf9(6d$zjoCBqx&1alu(-yLCJN5QFx_WMdk0u}c3J zjp4EyP#VzJ?gg03k85}`=-ERIIz6OU6xXXetBPGhQ|@rBH3vY~Oz)S_;Aiy+u%+o{Wr~FI)>;XA?3=^`t%g}qpNMAk0Hb{jOum?ynlL>yysu$Ab1Gmx0Wwy z5T4XA&4@0$b9G}z_nr-TvKRB9PTY~Z5(V3Nak3XIFfU~nN^F-L)}Uv!iw6SsQr=jj zV(0pMS)k`zzX`-33F)>d=s&#vcUXl`r9RPPsp2nzhHl;i}b_G+uKEj{X`$bNy*9tHH<|edlHO zrh$a`Q3TcK6JKTNpu|7U#*7hRqaoeQ`IF9y2$o0ZA)t0PUOP9Q zYS(y#wGUkZ2_IdI`Bq$U@XOrMtqg%T&rN2JW(rMJ_VoD;kse+QT_;-qt|9pBg!`M* zjez;0x~4KX@9rOY7+F!oK-I{+i~;@@4O`i#j9VMQA13U6XmVc^B2uNGMElr$$w>l} zX4weO*;tUMD+K+O1)Mw74z^x}Z!MQF_O0rT>VsvjBtda#(N))BPOU5DZM5r?xBV-qkudGB;oINC(LAAAqWwSs8nc!Fm1{_L^a_z64 zQD@pH<(eC?Qe%?h7Z-Y>!*HQYfL;*ZiUT@XEnqX^yy(qCF!^nDB{+dVU`VwG0N7PK zMlF}JOh!{P^7Tt@^vtz$!hNszQ%%J0cb(`{IQ0;>XSIXaznkniv}V8%%Ov0RW?o)>6aG zW3@uy8r$~t_BngLoS$mZ-6UX$)4_CKUG7jX<|rnWbDc2YM1t9W42v$}Ekd7q;?5>y zRy~Z?ucV~0{dHn4s72-zZ6hwCd@zo<(mB(>cdi$EzG076KRns#SMsBK{^uk5c+bto zrCMoHjsBChd6lA0lhkt?hiO)Z3uR_yJC|V_!4n8> z)(A;h!KzWm5G0Rk?z1A>DmKWA@p|unC$;5cGM9^WCoh{nDPb7w2eM~t{&E(y?A6)i ztV!s+JBZvYSYSR>f7Ly)l-U;-sEY)xoogb%#@+zUgd)A$ZrnlqZse3fPsKVe5bL6p zWI;0x>#h);Vt_M>@N+|@JH-2$oB)LLVG3W+G&>ryFkbI3$+_z^8yFtG=LZ-lNHm0g zC^}+E6nq5Hus)3aE#ZgWTS+D?39m9X(K#I_jrg4{ZQRiO#tUoW{u1kmko@gyN|OFf zwMDqVgKiC}ItEo1l9QVajv{me+}kkNH{Tk3G}jaZCV(6VE%F#*-9}eX_d~X>_^4VW zC?O?GIcO^~Djb3;m>L5|7?!7oK14XEOml_Ylh~I>U*KU+Gwe~75*r%NSvg=t!y?nBb{P3H7iDPqO|5q>KTr_IDsSrGGT47W>Kx)( z!+=_%95{vL5Xf%DA6y!(!X>kiD}F3YO>tUD=kAcx?itIGGi`Xo-JDO%EJQ@#Fqq%t z_hOhnT3xL0l8`-i3-bF~47eFdU>ix4tNqGN$2jci#L338FVuL_#o>K>*^B4??PgRj zSy#Nbj#aajv&69Z8=qe~4b~*Jcs)AXn=$B<7~rC3!4yyqCEm-#>70**0s)Vo2Ze>$ zhRX-d3y!u|e5EuU%e_O7XWpR^gvG_q>(6AX>h#eXB$2LwrOE=g|}q+f)-N%5CSB8c>_l42m?YWP3J=CJ8rn%3`K>J zvUUye?r??>+)c3F9TB0K!<2nNOkRj*_C&ejkoQRiz!3i=3?QbzP&>ci9NjqSj#Awa zfb_Hk;BH4;gQYk1G1Dr$vol59RU}9!E6dCM(zP~6GgF37q6SFieoa}Kp&iQM0ZG(4 zYZ+o*3;pC1C=t@hcsX*vs!oj24n;YWsL{RC#kl7t$$8#cl1{pwnImRA1(Qy6k#|%; zdZIzGSE;xgvhY{Y@mG`ZS5@#=7x7nF@mCx1S6%Q|@9|gR@mCpQFT`UnC}JejOU}nchh&pVXqspXh3s*HNyeot`==)BUwpb}$uO!2- z(G;p>(l_1LF6|*64Sz8P5vN1RWm1mzJMrf5>6#CL=J0pj*F^0h4vpVSr0#9bA`HfJ zDQ?Z-Wpt%qc4tEY)@^{~*71bKGU-+|mXi|0UikZrY7~y!VYK!TtcE|}OW4kt!Cbc3 zR7cY@K6d%-XVN=?@An>L2)h^mkAU;1_xjxVL0`P;xQhF9g6z?Y8m}p&X%ls;UvcJd zmIZMzeoYIKcz#WblF)uq5A)JQdJpsRMEno)vP3L?5A%|reCF3XgAUF_1}__m^|N|A z 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

R#6V$G_9}jGS#~(syC}4Bue?@fLNm@gK4<;9p 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±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%0D_@X|=_TwB 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�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�GUkG9AGKpJuG`=%4{m6y;%8jcnR4;!CHOgwBE9*MmM6>*G!L9mFel7-Qa-04 zF`by_M;JkPZTKYinUu=o@dk!;^(mQW^lxnAOk(XpE2(4i1|keS?9$M~xytO!1N!&q z0eu{o=$-*Kzm-6|D~Fl=7=0Wj@K%8~>`E)h)|J^pmknR)*rWaR?NL>b0;f9Wv3;?< zO6u-)AqWXS)qO&Qh{?lU&V%cygPjqhO8Dy^oorwCk;WSBVBM#n9ci=@4tLh)&Bd#j3HO%p2PF^UlGPJ9pq{^p(UNmCm3(t|qRhJ*w5h5B#jbkZtmmEFk1S&>l4v zhH5TRRI;iaiAj2|_&3;PcfFs@))i&meM(==^ba0OET>yB_>L81WXGH~?8UOhKkEWd zM0hgY=}jLk=j>AY{a`*@c8|pEA)Sp7Ue?gg9@S~#p%b4!jOmjFZ%X0|mpP0*>)}qa zdVpFXUacUKZe+7NfhQQ|E3gYyGf)ls)Vf2w8HRo_DD%Km@kc1i;D`-1EO2u)R^8YWK0dp=AwX^hwb3%8XymGXx9F(-~JKOhTKa z`C_^};AdQUOb%ex0Z_5qj^1#1SJY2njHvDJzrfABkteI_A1s{~3g5Z?GmD0uH^

  • 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

    u+qv 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¬-(Wk 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%0Am= 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

    6HS%wmcz%D#N?U4ljP-!N360UOqYq{1iwI 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

    G@&6T(Vjp5*o}f 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

    Tn22L7SJKjMe2^~jd!W4FDKc@@y1k{%q^-2 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

    &le&xqAYhyap#;#2RxxJ_}AER&;1jS+_e7^QTp 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
    Cs@hXAuR*GRO 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ȎOBYQCH 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 z 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%0DKo{V$mb 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%0DCb{f{!ogr7DE*;s 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 ag*9o;P2R|2sryp*lw}r`zCPUzJO2k4m!4bz delta 5220402 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%0AP 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%0D-|KG<~sd%3E74-2XkN)2|ba1#4buf_Y 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%0DhTb~(o&cDZPFQgHQj$iuUrikgmG`fiL|IqwQlZP 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%0DPzH|? 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%0A>M}W_<V@^Cj(N2T8%vxy{=t2lMDrkSEoHK*x|U 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%0D8xhkoi)R@~JLk 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%0A4e!;f<WeF&c(Y3p3uX`UdiFLDP&ktDO@Bv); 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%0DTp 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%0A$yW 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%0AKnOG7v2D+0M-zxjq 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 M<Iv!<FG~>mKWI$oF#rGn diff --git a/prebuilts/libs/SystemUI-statsd-16.jar b/prebuilts/libs/SystemUI-statsd-16.jar index 9cd41821a7646959c2b7319ccadbcc9d820f3001..fdc2cb2d0c6af6bc4751f5c5481069bc456a4078 100644 GIT binary patch delta 11583 zcmb7ocQhUS_bv${MCa%P5xw^oAxaPg(R=S*bZ7K_h!(vCQKR>E^xjJl<q$o(Bl>Y} z^1k2u{oT9nUw5s&pS}09pU=!%GqdJ1d$KLpOskhrfq<v}RPrfT&{p3UN;Ja}FZ4Nb z6O(kJk8~2v^&2<)B=|T=zvcA0zpYhH8)|f5bG0xXt?4Cyei&{}7s?Q{jZIhW8ff?y zq!ntei@ET{qGgP8p^5zy`e&|Df=6hdUw0a7F3io%#me!;L1DYA#%0D=epPFJzt_sI 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 literal 12957 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 O_h5yGgEQcI_Wlp>TR^M; diff --git a/prebuilts/libs/WindowManager-Shell-16.jar b/prebuilts/libs/WindowManager-Shell-16.jar index 6e90a87b280e8b2532ecae3e6c08101b70eaabb7..b116aeaed89446d031526b4f079a7eb2e3eacc43 100644 GIT binary patch delta 1839681 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%0DQ`^--N9Bc;_KKl*x)zsV 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%0A_^;dKjyM9LjopTM3^eETK?rWkn;1R< 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%0A0~5j8LDFDS<n#ie@MS8h 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%0D-`$9bcGo4uX9G6tBZw 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%0Ax9ALgdp*fToa&HhXn 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%0DJ;EpO@~P!y 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%0Aq5&i<Bik;Yoc! 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 Q<8b4YWR-#XtUtc~2eFBD@Bjb+ delta 2005461 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%0AG5U5<hNd-F`Qz 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%0AYb#<neH3RdwpGM`u)Nw{5yQ%A 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%0A25;dCv05;#g}0<Jp>UN7JFjIrrnx9H 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%0A+zF2nM4IIoG#y1%=|z$cJRrM9)3 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%0D|{m7=g+Gi5ilS7gq;U<XRRA=mXn?PVYsYs}`R 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%0D+X(tg1arC89zQbX#A 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%0DN76ON`G`@O_ofG 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%0DTPU#2m_c>Lr{v!Ug7_n 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%0APbIV$vD}~dp6In%7NaubAUYx^RJe#AW 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%0A2g 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%0A#-jIe@F*s#<+_Y` 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 diff --git a/prebuilts/libs/framework-16.jar b/prebuilts/libs/framework-16.jar index 4b73c3a034a5d6f1c5a85adae211792582129c4f..dd643c37aa489c94e57475537bc5c5ba544c71fd 100644 GIT binary patch delta 3180258 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%0DnTU0TGwK+ZDwEu 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%0D5HTeIp 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%0DrG{dI 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%0Dt>shJ>Q!-f&6|0zU=;{u&YRH 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%0ArV6NENycKCJE; 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%0D#CD-j>K12JlNDMc8_ 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%0Dhx}-wgZ~4ZjWe?HYb3 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 z%0D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 delta 3618115 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%0A0~7>V+^6d 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%0A?{@osPcT;xFF;;Ln8xWE_(ZSK8Ps~M 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%0ACuRHP+wX9AkuUF)nKWd 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%0D|P!DWt53`PL; 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%0A8SjZ9$<2O!09_=*H>u6IQEj;GO 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%0ACv#)ne*-nHb6B6bw6JZm-P~?Q@^E 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%0DXZF|Wj6^8H6K=Vpm6+?V_kFPD|hE#Pp}X4B;g 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%0AmxQA*D`-v<NaSNqx!*{~C6r97su;hI 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%0D&rKtl^?E`54R<$dfOmy5tAy*tXYPJ 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 AI{*Lx diff --git a/protos/launcher_atom.proto b/protos/launcher_atom.proto index 2fc37ca341..ce99348bb8 100644 --- a/protos/launcher_atom.proto +++ b/protos/launcher_atom.proto @@ -153,7 +153,7 @@ message TaskBarContainer { } } -// Next value 55 +// Next value 54 enum Attribute { option allow_alias = true; @@ -229,7 +229,6 @@ enum Attribute { WEB_SEARCH_RESULT_CALCULATOR = 37; WEB_SEARCH_RESULT_URL = 38; WEB_SEARCH_RESULT_RICH_ANSWER = 40; - WEB_SEARCH_RESULT_AI_MODE = 54; WIDGETS_BOTTOM_TRAY = 28; WIDGETS_TRAY_PREDICTION = 29; diff --git a/quickstep/Android.bp b/quickstep/Android.bp index 66ec780bcf..2ef9f82a71 100644 --- a/quickstep/Android.bp +++ b/quickstep/Android.bp @@ -57,51 +57,6 @@ filegroup { ], } -filegroup { - name: "launcher3-quickstep-e2e-tests-only", - path: "tests", - srcs: [ - "tests/src/com/android/quickstep/TaplTestsPersistentTaskbar.java", - "tests/src/com/android/quickstep/TaplOverviewIconTest.java", - "tests/src/com/android/quickstep/TaplTestsLockedTaskbar.java", - "tests/src/com/android/quickstep/util/TaplTestsPredictionRow.java", - "tests/src/com/android/quickstep/TaplTestsTrackpad.java", - "tests/src/com/android/quickstep/TaplTestsTransientTaskbar.java", - "tests/src/com/android/quickstep/TaplStartLauncherViaGestureTests.java", - "tests/src/com/android/quickstep/TaplTestsKeyboardQuickSwitch.java", - "tests/src/com/android/quickstep/TaplPrivateSpaceTest.java", - "tests/src/com/android/quickstep/TaplTestsQuickstep.java", - "tests/src/com/android/quickstep/TaplTestsTaskbar.java", - "tests/src/com/android/quickstep/TaplTestsOverviewDesktop.kt", - "tests/src/com/android/quickstep/TaplTestsSplitscreen.java", - "tests/src/com/android/quickstep/TaplTestTaskbarIconDrag.kt", - ], -} - -// TODO(b/324261526) when switching to libraries, this library depends on launcher-e2e-tests-utils -filegroup { - name: "launcher3-quickstep-e2e-tests-utils", - path: "tests", - srcs: [ - "tests/src/com/android/quickstep/TaskbarModeSwitchRule.java", - "tests/src/com/android/quickstep/NavigationModeSwitchRule.java", - "tests/src/com/android/quickstep/AbstractQuickStepTest.java", - "tests/src/com/android/quickstep/util/SplitScreenTestUtils.kt", - "tests/src/com/android/quickstep/AbstractTaplTestsTaskbar.java", - // TODO Remove launcher3 folder from quickstep - "tests/src/com/android/launcher3/testcomponent/ExcludeFromRecentsTestActivity.java", - ], -} - -filegroup { - name: "launcher3-quickstep-e2e", - path: "tests", - srcs: [ - ":launcher3-quickstep-e2e-tests-only", - ":launcher3-quickstep-e2e-tests-utils", - ], -} - filegroup { name: "launcher3-quickstep-screenshot-tests-src", path: "tests/multivalentScreenshotTests", @@ -109,3 +64,11 @@ filegroup { "tests/multivalentScreenshotTests/src/**/*.kt", ], } + +filegroup { + name: "launcher3-quickstep-testing", + path: "testing", + srcs: [ + "testing/**/*.kt", + ], +} diff --git a/quickstep/AndroidManifest.xml b/quickstep/AndroidManifest.xml index f1596380da..8fd6d29702 100644 --- a/quickstep/AndroidManifest.xml +++ b/quickstep/AndroidManifest.xml @@ -49,9 +49,6 @@ <uses-permission android:name="android.permission.ACCESS_HIDDEN_PROFILES_FULL" /> <uses-permission android:name="android.permission.ACCESS_HIDDEN_PROFILES" /> - <!-- Permission required to listen to recent, all app key gestures. --> - <uses-permission android:name="android.permission.MANAGE_KEY_GESTURES" /> - <!-- Permission required to start a WidgetPickerActivity. --> <permission android:name="${applicationId}.permission.START_WIDGET_PICKER_ACTIVITY" android:protectionLevel="signature|privileged" /> @@ -141,7 +138,6 @@ android:excludeFromRecents="true" android:permission="android.permission.REBOOT" android:theme="@style/AllSetTheme" - android:enableOnBackInvokedCallback="false" android:label="@string/allset_title" android:exported="true"> <intent-filter> @@ -150,13 +146,13 @@ </intent-filter> </activity> - <activity android:name="com.android.launcher3.QuickstepWidgetPickerActivity" + <activity android:name="com.android.launcher3.WidgetPickerActivity" android:theme="@style/WidgetPickerActivityTheme" android:excludeFromRecents="true" android:autoRemoveFromRecents="true" + android:showOnLockScreen="true" android:launchMode="singleTop" android:exported="true" - android:configChanges="orientation|screenSize|screenLayout|smallestScreenSize" android:permission="${applicationId}.permission.START_WIDGET_PICKER_ACTIVITY"> <intent-filter> <action android:name="android.intent.action.PICK" /> diff --git a/quickstep/compose/facade/core/QuickstepComposeFeatures.kt b/quickstep/compose/facade/core/QuickstepComposeFeatures.kt index 9714991c66..ca9e5c9265 100644 --- a/quickstep/compose/facade/core/QuickstepComposeFeatures.kt +++ b/quickstep/compose/facade/core/QuickstepComposeFeatures.kt @@ -16,16 +16,4 @@ package com.android.quickstep.compose.core -import android.view.View -import com.android.quickstep.recents.ui.viewmodel.TaskViewModel -import com.android.quickstep.views.TaskViewIcon - -interface QuickstepComposeFeatures { - fun startIconAppChip( - composeView: TaskViewIcon, - viewModel: TaskViewModel, - taskId: Int, - onClick: () -> Unit = {}, - onLongClick: () -> Unit = {}, - ): View -} +interface QuickstepComposeFeatures diff --git a/quickstep/compose/facade/disabled/QuickstepComposeFacade.kt b/quickstep/compose/facade/disabled/QuickstepComposeFacade.kt index 26b5953d4a..0a4345a839 100644 --- a/quickstep/compose/facade/disabled/QuickstepComposeFacade.kt +++ b/quickstep/compose/facade/disabled/QuickstepComposeFacade.kt @@ -17,29 +17,13 @@ package com.android.quickstep.compose import android.content.Context -import android.view.View import com.android.launcher3.compose.ComposeFacade import com.android.launcher3.compose.core.BaseComposeFacade import com.android.quickstep.compose.core.QuickstepComposeFeatures -import com.android.quickstep.recents.ui.viewmodel.TaskViewModel -import com.android.quickstep.views.TaskViewIcon object QuickstepComposeFacade : BaseComposeFacade, QuickstepComposeFeatures { override fun isComposeAvailable() = ComposeFacade.isComposeAvailable() override fun initComposeView(appContext: Context) = ComposeFacade.initComposeView(appContext) - - override fun startIconAppChip( - composeView: TaskViewIcon, - viewModel: TaskViewModel, - taskId: Int, - onClick: () -> Unit, - onLongClick: () -> Unit, - ): View { - error( - "Compose is not available. Make sure to check isComposeAvailable() before calling any" + - " other function on ComposeFacade." - ) - } } diff --git a/quickstep/compose/facade/enabled/QuickstepComposeFacade.kt b/quickstep/compose/facade/enabled/QuickstepComposeFacade.kt index 75c2055f2e..97cd3002ee 100644 --- a/quickstep/compose/facade/enabled/QuickstepComposeFacade.kt +++ b/quickstep/compose/facade/enabled/QuickstepComposeFacade.kt @@ -17,29 +17,12 @@ package com.android.quickstep.compose import android.content.Context -import android.view.View -import androidx.compose.material3.MaterialTheme -import androidx.compose.ui.platform.ComposeView import com.android.launcher3.compose.ComposeFacade import com.android.launcher3.compose.core.BaseComposeFacade import com.android.quickstep.compose.core.QuickstepComposeFeatures -import com.android.quickstep.recents.ui.composable.TaskAppChip -import com.android.quickstep.recents.ui.viewmodel.TaskViewModel -import com.android.quickstep.views.TaskViewIcon object QuickstepComposeFacade : BaseComposeFacade, QuickstepComposeFeatures { override fun isComposeAvailable() = ComposeFacade.isComposeAvailable() override fun initComposeView(appContext: Context) = ComposeFacade.initComposeView(appContext) - - override fun startIconAppChip( - composeView: TaskViewIcon, - viewModel: TaskViewModel, - taskId: Int, - onClick: () -> Unit, - onLongClick: () -> Unit, - ): View = - (composeView.asView() as ComposeView).apply { - setContent { MaterialTheme { TaskAppChip(viewModel, taskId, onClick, onLongClick) } } - } } diff --git a/quickstep/res/color/app_chip_state_color_fg.xml b/quickstep/res/color/app_chip_state_color_fg.xml index dabdfbd2c7..58dfee0cf6 100644 --- a/quickstep/res/color/app_chip_state_color_fg.xml +++ b/quickstep/res/color/app_chip_state_color_fg.xml @@ -16,6 +16,5 @@ <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:alpha="0.15" android:color="@color/materialColorOnSurface" android:state_enabled="true" android:state_pressed="true" /> <item android:alpha="0.11" android:color="@color/materialColorOnSurface" android:state_enabled="true" android:state_hovered="true" /> - <item android:color="@android:color/transparent" android:state_enabled="true" android:state_focused="true" /> <item android:color="@android:color/transparent" /> </selector> \ No newline at end of file diff --git a/quickstep/res/drawable/app_chip_menu_item_bg.xml b/quickstep/res/drawable/app_chip_menu_item_bg.xml index 90a8c0e2f2..39e88d2eed 100644 --- a/quickstep/res/drawable/app_chip_menu_item_bg.xml +++ b/quickstep/res/drawable/app_chip_menu_item_bg.xml @@ -1,4 +1,5 @@ -<?xml version="1.0" encoding="utf-8"?><!-- +<?xml version="1.0" encoding="utf-8"?> +<!-- ~ Copyright (C) 2025 The Android Open Source Project ~ ~ Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,51 +14,6 @@ ~ See the License for the specific language governing permissions and ~ limitations under the License. --> -<selector xmlns:android="http://schemas.android.com/apk/res/android"> - <item android:state_enabled="true" android:state_focused="true" android:state_hovered="true"> - <layer-list> - <item android:end=".5dp" android:start=".5dp"> - <shape android:shape="rectangle"> - <corners android:radius="@dimen/app_chip_round_corner_radius" /> - <solid android:color="@color/app_chip_menu_item_color_fg" /> - <stroke android:width="@dimen/app_chip_keyboard_border_width" android:color="@color/materialColorSecondary" /> - </shape> - </item> - </layer-list> - </item> - <item android:state_enabled="true" android:state_focused="true"> - <layer-list> - <item android:end=".5dp" android:start=".5dp"> - <shape android:shape="rectangle"> - <corners android:radius="@dimen/task_menu_corner_radius" /> - <stroke android:width="@dimen/app_chip_keyboard_border_width" android:color="@color/materialColorSecondary" /> - </shape> - </item> - </layer-list> - </item> - <item android:state_enabled="true" android:state_hovered="true"> - <layer-list> - <item android:end=".5dp" android:start=".5dp"> - <shape android:shape="rectangle"> - <corners android:radius="@dimen/app_chip_round_corner_radius" /> - <solid android:color="@color/app_chip_menu_item_color_fg" /> - </shape> - </item> - </layer-list> - </item> - <item android:state_enabled="true" android:state_pressed="true"> - <layer-list> - <item android:end=".5dp" android:start=".5dp"> - <shape android:shape="rectangle"> - <corners android:radius="@dimen/app_chip_round_corner_radius" /> - <solid android:color="@color/app_chip_menu_item_color_fg" /> - </shape> - </item> - </layer-list> - </item> - <item> - <shape> - <solid android:color="@color/materialColorSurfaceBright" /> - </shape> - </item> -</selector> +<shape xmlns:android="http://schemas.android.com/apk/res/android"> + <solid android:color="@color/materialColorSurfaceBright" /> +</shape> diff --git a/quickstep/res/drawable/keyboard_quick_switch_view_background.xml b/quickstep/res/drawable/keyboard_quick_switch_view_background.xml index d9684cecde..19aaed46b0 100644 --- a/quickstep/res/drawable/keyboard_quick_switch_view_background.xml +++ b/quickstep/res/drawable/keyboard_quick_switch_view_background.xml @@ -16,6 +16,6 @@ <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> - <solid android:color="@android:color/transparent" /> + <solid android:color="?attr/overviewScrimColor" /> <corners android:radius="@dimen/keyboard_quick_switch_view_radius" /> </shape> diff --git a/quickstep/res/drawable/task_thumbnail_header_bg.xml b/quickstep/res/drawable/task_thumbnail_header_bg.xml index 77ba3e76b5..52ac1ae3cc 100644 --- a/quickstep/res/drawable/task_thumbnail_header_bg.xml +++ b/quickstep/res/drawable/task_thumbnail_header_bg.xml @@ -16,7 +16,7 @@ --> <shape xmlns:android="http://schemas.android.com/apk/res/android"> - <solid android:color="@color/materialColorSecondaryContainer" /> + <solid android:color="@color/materialColorSurfaceBright" /> <corners android:topLeftRadius="@dimen/task_thumbnail_header_round_corner_radius" android:topRightRadius="@dimen/task_thumbnail_header_round_corner_radius"/> </shape> diff --git a/quickstep/res/layout-sw600dp-land/gesture_tutorial_step_menu.xml b/quickstep/res/layout-sw600dp-land/gesture_tutorial_step_menu.xml index 374f17c2e4..0767aa566c 100644 --- a/quickstep/res/layout-sw600dp-land/gesture_tutorial_step_menu.xml +++ b/quickstep/res/layout-sw600dp-land/gesture_tutorial_step_menu.xml @@ -158,9 +158,8 @@ <Button style="@style/TextAppearance.GestureTutorial.ButtonLabel" android:id="@+id/gesture_tutorial_menu_done_button" - android:layout_width="@dimen/gesture_tutorial_done_button_width" - android:layout_height="wrap_content" - android:padding="@dimen/gesture_tutorial_done_button_padding" + android:layout_width="wrap_content" + android:layout_height="48dp" android:layout_marginVertical="16dp" android:text="@string/gesture_tutorial_action_button_label" android:background="@drawable/gesture_tutorial_action_button_background" diff --git a/quickstep/res/layout/gesture_tutorial_fragment.xml b/quickstep/res/layout/gesture_tutorial_fragment.xml index 8f93d5096f..6e7ff86cff 100644 --- a/quickstep/res/layout/gesture_tutorial_fragment.xml +++ b/quickstep/res/layout/gesture_tutorial_fragment.xml @@ -172,6 +172,20 @@ app:layout_constraintTop_toBottomOf="@id/gesture_tutorial_fragment_feedback_subtitle" app:layout_constraintEnd_toEndOf="parent"/> + <Button + style="@style/TextAppearance.GestureTutorial.Feedback.Subtext" + android:id="@+id/gesture_tutorial_fragment_close_button" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="32dp" + android:paddingTop="16dp" + android:paddingBottom="16dp" + android:text="@string/gesture_tutorial_action_button_label_skip" + android:background="?android:attr/selectableItemBackgroundBorderless" + + app:layout_constraintTop_toBottomOf="@id/gesture_tutorial_fragment_feedback_subtitle" + app:layout_constraintStart_toStartOf="parent"/> + </androidx.constraintlayout.widget.ConstraintLayout> <ImageView diff --git a/quickstep/res/layout/gesture_tutorial_step_menu.xml b/quickstep/res/layout/gesture_tutorial_step_menu.xml index 6c1bf63bf0..b4493c2bb5 100644 --- a/quickstep/res/layout/gesture_tutorial_step_menu.xml +++ b/quickstep/res/layout/gesture_tutorial_step_menu.xml @@ -156,10 +156,9 @@ <Button style="@style/TextAppearance.GestureTutorial.ButtonLabel" android:id="@+id/gesture_tutorial_menu_done_button" - android:layout_width="@dimen/gesture_tutorial_done_button_width" - android:layout_height="wrap_content" + android:layout_width="wrap_content" + android:layout_height="48dp" android:layout_marginVertical="16dp" - android:padding="@dimen/gesture_tutorial_done_button_padding" android:text="@string/gesture_tutorial_action_button_label" android:background="@drawable/gesture_tutorial_action_button_background" android:backgroundTint="@color/materialColorPrimary" diff --git a/quickstep/res/layout/icon_app_chip_view.xml b/quickstep/res/layout/icon_app_chip_view.xml index 76f4cc9979..09fb5094fe 100644 --- a/quickstep/res/layout/icon_app_chip_view.xml +++ b/quickstep/res/layout/icon_app_chip_view.xml @@ -18,7 +18,6 @@ xmlns:android="http://schemas.android.com/apk/res/android" xmlns:androidprv="http://schemas.android.com/apk/prv/res/android" xmlns:tools="http://schemas.android.com/tools" - xmlns:launcher="http://schemas.android.com/apk/res-auto" android:id="@+id/icon" android:layout_width="@dimen/task_thumbnail_icon_menu_expanded_width" android:layout_height="@dimen/task_thumbnail_icon_menu_expanded_height" @@ -29,8 +28,7 @@ android:autoMirrored="true" android:elevation="@dimen/task_thumbnail_icon_menu_elevation" android:foreground="@drawable/app_chip_fg" - android:background="@color/materialColorSurfaceBright" - launcher:focusBorderColor="@color/materialColorSecondary"> + android:background="@color/materialColorSurfaceBright"> <!-- ignoring warning because the user of the anchor is a Rect where RTL is not needed --> <!-- This anchor's bounds is in the expected location after rotations and translations are @@ -53,19 +51,25 @@ android:importantForAccessibility="no" /> <TextView - android:id="@+id/icon_title" - android:layout_width="wrap_content" + android:id="@+id/icon_text_collapsed" + android:layout_width="@dimen/task_thumbnail_icon_menu_text_collapsed_max_width" android:layout_height="wrap_content" android:gravity="start|center_vertical" android:maxLines="1" - android:singleLine="true" - android:ellipsize="none" + android:ellipsize="end" + android:textAlignment="viewStart" + android:importantForAccessibility="no" + style="@style/IconAppChipMenuTextStyle" /> + + <TextView + android:id="@+id/icon_text_expanded" + android:layout_width="@dimen/task_thumbnail_icon_menu_text_expanded_max_width" + android:layout_height="wrap_content" + android:gravity="start|center_vertical" + android:maxLines="1" + android:ellipsize="end" android:textAlignment="viewStart" android:importantForAccessibility="no" - android:requiresFadingEdge="horizontal" - android:fadingEdgeLength="@dimen/task_thumbnail_icon_menu_text_fading_size" - android:marqueeRepeatLimit="1" - android:scrollHorizontally="true" style="@style/IconAppChipMenuTextStyle" /> <ImageView diff --git a/quickstep/res/layout/keyboard_quick_switch_view.xml b/quickstep/res/layout/keyboard_quick_switch_view.xml index 39f4d3ee6d..2dea79c8a2 100644 --- a/quickstep/res/layout/keyboard_quick_switch_view.xml +++ b/quickstep/res/layout/keyboard_quick_switch_view.xml @@ -26,6 +26,7 @@ android:layout_marginHorizontal="@dimen/keyboard_quick_switch_margin_ends" android:layout_gravity="center_horizontal" android:background="@drawable/keyboard_quick_switch_view_background" + android:clipToOutline="true" android:alpha="0" android:visibility="invisible" android:focusableInTouchMode="true" diff --git a/quickstep/res/layout/overview_actions_container.xml b/quickstep/res/layout/overview_actions_container.xml index ce54028256..fcd2e5495a 100644 --- a/quickstep/res/layout/overview_actions_container.xml +++ b/quickstep/res/layout/overview_actions_container.xml @@ -14,14 +14,10 @@ See the License for the specific language governing permissions and limitations under the License. --> -<com.android.quickstep.views.OverviewActionsView - xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:tools="http://schemas.android.com/tools" +<com.android.quickstep.views.OverviewActionsView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_gravity="center_horizontal|bottom" - android:theme="?attr/overviewActionsContainerStyle" - tools:ignore="ButtonStyle"> + android:layout_gravity="center_horizontal|bottom"> <LinearLayout android:id="@+id/action_buttons" @@ -32,17 +28,21 @@ <Button android:id="@+id/action_screenshot" + style="@style/OverviewActionButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:drawableStart="@drawable/ic_screenshot" - android:text="@string/action_screenshot" /> + android:text="@string/action_screenshot" + android:theme="@style/ThemeControlHighlightWorkspaceColor" /> <Button android:id="@+id/action_split" + style="@style/OverviewActionButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="@dimen/overview_actions_button_spacing" android:text="@string/action_split" + android:theme="@style/ThemeControlHighlightWorkspaceColor" android:visibility="gone" /> </LinearLayout> @@ -51,9 +51,11 @@ a new LinearLayout may be needed to contain them, but beware of increased memory usage. --> <Button android:id="@+id/action_save_app_pair" + style="@style/OverviewActionButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/action_save_app_pair" + android:theme="@style/ThemeControlHighlightWorkspaceColor" android:layout_gravity="bottom|center_horizontal" android:visibility="gone" /> diff --git a/quickstep/res/layout/overview_add_desktop_button.xml b/quickstep/res/layout/overview_add_desktop_button.xml index 0def2ff232..a1c64f32ee 100644 --- a/quickstep/res/layout/overview_add_desktop_button.xml +++ b/quickstep/res/layout/overview_add_desktop_button.xml @@ -21,8 +21,6 @@ android:layout_width="@dimen/add_desktop_button_size" android:layout_height="@dimen/add_desktop_button_size" android:src="@drawable/ic_desktop_add" - android:background="?attr/addDesktopButtonBackgroundDrawable" + android:background="@drawable/bg_overview_add_desktop_button" launcher:focusBorderColor="@color/materialColorOutline" - android:tint="@color/materialColorOnSurface" - android:contentDescription="@string/add_desk_button_content_description" android:padding="10dp" /> diff --git a/quickstep/res/layout/overview_clear_all_button.xml b/quickstep/res/layout/overview_clear_all_button.xml index 5f31de8229..034c3c2ec1 100644 --- a/quickstep/res/layout/overview_clear_all_button.xml +++ b/quickstep/res/layout/overview_clear_all_button.xml @@ -17,11 +17,11 @@ <com.android.quickstep.views.ClearAllButton xmlns:android="http://schemas.android.com/apk/res/android" xmlns:launcher="http://schemas.android.com/apk/res-auto" - android:theme="?attr/overviewActionButtonStyle" + style="@style/OverviewClearAllButton" android:id="@+id/clear_all" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:textAlignment="center" android:text="@string/recents_clear_all" + android:textColor="@color/materialColorOnSurface" launcher:focusBorderColor="@color/materialColorOutline" android:textSize="14sp" /> diff --git a/quickstep/res/layout/redesigned_gesture_tutorial_fragment.xml b/quickstep/res/layout/redesigned_gesture_tutorial_fragment.xml index 4707a80d91..55fe2b8489 100644 --- a/quickstep/res/layout/redesigned_gesture_tutorial_fragment.xml +++ b/quickstep/res/layout/redesigned_gesture_tutorial_fragment.xml @@ -165,6 +165,21 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/gesture_tutorial_fragment_feedback_title" /> + <Button + android:id="@+id/gesture_tutorial_fragment_close_button" + style="@style/TextAppearance.GestureTutorial.Feedback.Subtext" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="32dp" + android:background="?android:attr/selectableItemBackgroundBorderless" + android:paddingBottom="16dp" + android:paddingTop="16dp" + android:text="@string/gesture_tutorial_action_button_label_skip" + android:visibility="gone" + + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@id/gesture_tutorial_fragment_feedback_subtitle" /> + <com.airbnb.lottie.LottieAnimationView android:id="@+id/checkmark_animation" android:layout_width="wrap_content" @@ -193,9 +208,8 @@ <Button android:id="@+id/gesture_tutorial_fragment_action_button" - android:layout_width="@dimen/gesture_tutorial_done_button_width" + android:layout_width="wrap_content" android:layout_height="wrap_content" - android:padding="@dimen/gesture_tutorial_done_button_padding" android:layout_marginEnd="@dimen/gesture_tutorial_done_button_end_margin" android:layout_marginBottom="@dimen/gesture_tutorial_done_button_bottom_margin" android:layout_alignParentBottom="true" diff --git a/quickstep/res/layout/task.xml b/quickstep/res/layout/task.xml index bac7b26c32..3aac1b63f9 100644 --- a/quickstep/res/layout/task.xml +++ b/quickstep/res/layout/task.xml @@ -29,7 +29,8 @@ launcher:hoverBorderColor="@color/materialColorPrimary"> <ViewStub - android:id="@+id/task_content_view" + android:id="@+id/snapshot" + android:inflatedId="@id/snapshot" android:layout_width="match_parent" android:layout_height="match_parent" /> @@ -51,9 +52,6 @@ android:layout_height="wrap_content" android:layout_width="wrap_content" /> - <ViewStub - android:id="@+id/digital_wellbeing_toast" - android:inflatedId="@id/digital_wellbeing_toast" - android:layout_width="match_parent" - android:layout_height="@dimen/digital_wellbeing_toast_height" /> + <include layout="@layout/digital_wellbeing_toast" + android:id="@+id/digital_wellbeing_toast"/> </com.android.quickstep.views.TaskView> \ No newline at end of file diff --git a/quickstep/res/layout/task_grouped.xml b/quickstep/res/layout/task_grouped.xml index 41f892f7fc..3e6f5eda69 100644 --- a/quickstep/res/layout/task_grouped.xml +++ b/quickstep/res/layout/task_grouped.xml @@ -34,12 +34,14 @@ launcher:hoverBorderColor="@color/materialColorPrimary"> <ViewStub - android:id="@+id/task_content_view" + android:id="@+id/snapshot" + android:inflatedId="@id/snapshot" android:layout_width="match_parent" android:layout_height="match_parent" /> <ViewStub - android:id="@+id/bottomright_task_content_view" + android:id="@+id/bottomright_snapshot" + android:inflatedId="@id/bottomright_snapshot" android:layout_width="match_parent" android:layout_height="match_parent" /> @@ -79,15 +81,9 @@ android:layout_height="wrap_content" android:layout_width="wrap_content" /> - <ViewStub - android:id="@+id/digital_wellbeing_toast" - android:inflatedId="@id/digital_wellbeing_toast" - android:layout_width="match_parent" - android:layout_height="@dimen/digital_wellbeing_toast_height" /> + <include layout="@layout/digital_wellbeing_toast" + android:id="@+id/digital_wellbeing_toast"/> - <ViewStub - android:id="@+id/bottomRight_digital_wellbeing_toast" - android:inflatedId="@id/bottomRight_digital_wellbeing_toast" - android:layout_width="match_parent" - android:layout_height="@dimen/digital_wellbeing_toast_height" /> + <include layout="@layout/digital_wellbeing_toast" + android:id="@+id/bottomRight_digital_wellbeing_toast"/> </com.android.quickstep.views.GroupedTaskView> \ No newline at end of file diff --git a/quickstep/res/layout/task_thumbnail.xml b/quickstep/res/layout/task_thumbnail.xml index 6e2b70b305..3b966159d1 100644 --- a/quickstep/res/layout/task_thumbnail.xml +++ b/quickstep/res/layout/task_thumbnail.xml @@ -17,8 +17,7 @@ xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/snapshot" android:layout_width="match_parent" - android:layout_height="0dp" - android:layout_weight="1" > + android:layout_height="match_parent" > <com.android.quickstep.views.FixedSizeImageView android:id="@+id/task_thumbnail" @@ -45,6 +44,7 @@ android:id="@+id/splash_background" android:layout_width="match_parent" android:layout_height="match_parent" + android:background="@android:color/black" android:alpha="0" android:importantForAccessibility="no" /> diff --git a/quickstep/res/layout/task_view_menu_option.xml b/quickstep/res/layout/task_view_menu_option.xml index 8e17e1db01..91051f0c2b 100644 --- a/quickstep/res/layout/task_view_menu_option.xml +++ b/quickstep/res/layout/task_view_menu_option.xml @@ -30,7 +30,7 @@ android:layout_width="@dimen/system_shortcut_icon_size" android:layout_height="@dimen/system_shortcut_icon_size" android:layout_marginStart="@dimen/task_menu_option_start_margin" - android:layout_gravity="center" + android:layout_gravity="center_horizontal" android:backgroundTint="@color/materialColorOnSurface"/> <TextView @@ -42,7 +42,7 @@ android:textSize="14sp" android:textColor="@color/materialColorOnSurface" android:focusable="false" - android:gravity="start|center_vertical" + android:gravity="start" android:ellipsize="end" /> </LinearLayout> diff --git a/quickstep/res/layout/taskbar.xml b/quickstep/res/layout/taskbar.xml index 7fb2945413..54f9ae87df 100644 --- a/quickstep/res/layout/taskbar.xml +++ b/quickstep/res/layout/taskbar.xml @@ -83,17 +83,6 @@ android:layout_gravity="end"/> </com.android.launcher3.taskbar.navbutton.NearestTouchFrame> - <com.android.launcher3.taskbar.NudgeView - android:id="@+id/nudge_icon" - android:layout_width="@dimen/taskbar_nudge_pill_width" - android:layout_height="@dimen/taskbar_nudge_pill_height" - android:background="@drawable/bg_nudge_view" - android:clickable="false" - android:clipToOutline="false" - android:src="@drawable/ic_translate" - android:visibility="gone" - android:layout_gravity="bottom|center_horizontal"/> - <com.android.launcher3.taskbar.StashedHandleView android:id="@+id/stashed_handle" tools:comment1="The actual size and shape will be set as a ViewOutlineProvider at runtime" diff --git a/quickstep/res/layout/taskbar_divider_popup_menu.xml b/quickstep/res/layout/taskbar_divider_popup_menu.xml index 493215234f..7a23898b74 100644 --- a/quickstep/res/layout/taskbar_divider_popup_menu.xml +++ b/quickstep/res/layout/taskbar_divider_popup_menu.xml @@ -57,7 +57,7 @@ android:paddingStart="12dp" android:switchPadding="12dp" android:layout_weight="1" - android:fontFamily="*@android:string/config_bodyFontFamilyMedium" + android:fontFamily="@*android:string/config_bodyFontFamilyMedium" android:lines="1" android:textSize="14sp" android:textColor="?android:attr/textColorPrimary" diff --git a/quickstep/res/layout/taskbar_nav_button.xml b/quickstep/res/layout/taskbar_nav_button.xml index dafb672c5f..8f1c90499c 100644 --- a/quickstep/res/layout/taskbar_nav_button.xml +++ b/quickstep/res/layout/taskbar_nav_button.xml @@ -21,6 +21,5 @@ android:background="@drawable/taskbar_icon_click_feedback_roundrect" android:focusable="false" android:scaleType="center" - android:hapticFeedbackEnabled="false" android:tint="@color/taskbar_nav_icon_light_color" tools:ignore="UseAppTint" /> \ No newline at end of file diff --git a/quickstep/res/values-af/strings.xml b/quickstep/res/values-af/strings.xml index 5c60d7ff7f..58c554f318 100644 --- a/quickstep/res/values-af/strings.xml +++ b/quickstep/res/values-af/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Vormvry"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Rekenaar"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Skuif na eksterne skerm"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Vee uit"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Maak toe"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Werkskerm"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Geen onlangse items nie"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Programgebruikinstellings"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Vee alles uit"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Voeg nuwe lessenaar by"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Onlangse programme"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minuut"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Swiep op om na die tuisskerm toe te gaan"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Tik op die tuisknoppie om na jou tuisskerm toe te gaan"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Jy is gereed om jou <xliff:g id="DEVICE">%1$s</xliff:g> te begin gebruik"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Jy is gereed om jou toestel te begin gebruik"</string> + <string name="default_device_name" msgid="6660656727127422487">"toestel"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Stelselnavigasie-instellings"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Jou <xliff:g id="DEVICE">%1$s</xliff:g> is \ngereed!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Jou toestel is \ngereed!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Geniet jou nuwe <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Kies hoe om te navigeer"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Swiep op"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Tik op die tuisknoppie"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"foon"</string> <string name="action_share" msgid="2648470652637092375">"Deel"</string> <string name="action_screenshot" msgid="8171125848358142917">"Skermskoot"</string> <string name="action_split" msgid="2098009717623550676">"Verdeel"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Kies nog ’n app as jy verdeelde skerm wil gebruik"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Jou organisasie laat nie hierdie app toe nie"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Legstukke word nie tans ondersteun nie; kies asseblief ’n ander app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Slaan navigasietutoriaal oor?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Jy kan dit later in die <xliff:g id="NAME">%1$s</xliff:g>-app kry"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Kanselleer"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Slaan oor"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Draai skerm"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animasie wat wys hoe die taakbalk vanaf die onderkant van die skerm sigbaar word en outomaties versteek as dit nie gebruik word nie"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animasie wat wys hoe om jou taakbalk met ’n wisselfunksie vas te speld sodat die taakbalk permanent onderaan die skerm sigbaar bly"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animasie wat wys hoe om ’n verdeelde skerm te skep deur ’n app vanaf die taakbalk bo ’n oop app te sleep en los"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animasie wat wys hoe om toegang tot voorgestelde apps op jou toestel te kry"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animasie wat wys hoe om ’n item op die skerm te soek deur die handelingsleutel te raak en hou en die area waarin die item is, te kies"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Taakbalkopvoeding"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Sleep ’n app na die kant toe om 2 apps tegelyk te gebruik"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Stadigswiep op om die Taakbalk te wys"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Wys altyd Taakbalk"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Verander navigasiemodus"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Taakbalkverdeler"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Ander onlangse apps"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Taakbalkoorloop"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Skuif na links bo"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Skuif na regs onder"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Maak app as ’n borrel oop"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Maak Toe-knoppie"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Speld aan taakbalk vas"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Ontspeld van taakbalk"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Por"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Maak toe"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Porprent"</string> </resources> diff --git a/quickstep/res/values-am/strings.xml b/quickstep/res/values-am/strings.xml index 286e3c20c3..0790da0336 100644 --- a/quickstep/res/values-am/strings.xml +++ b/quickstep/res/values-am/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"ነፃ ቅጽ"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ዴስክቶፕ"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"ወደ ውጫዊ ማሳያ አንቀሳቅስ"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"አጽዳ"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"ዝጋ"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ዴስክቶፕ"</string> <string name="recents_empty_message" msgid="7040467240571714191">"ምንም የቅርብ ጊዜ ንጥሎች የሉም"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"የመተግበሪያ አጠቃቀም ቅንብሮች"</string> <string name="recents_clear_all" msgid="5328176793634888831">"ሁሉንም አጽዳ"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"አዲስ ዴስክ ያክሉ"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"የቅርብ ጊዜ መተግበሪያዎች"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>፣ <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 ደቂቃ"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"ወደ መነሻ ለመሄድ በጣት ወደ ላይ ይጥረጉ"</string> <string name="allset_button_hint" msgid="2395219947744706291">"ወደ መነሻ ማያ ገጽዎ ለመሄድ የመነሻ አዝራሩን መታ ያድርጉ"</string> <string name="allset_description_generic" msgid="5385500062202019855">"የእርስዎን <xliff:g id="DEVICE">%1$s</xliff:g> መጠቀም ለመጀመር ዝግጁ ነዎት"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"የእርስዎን መሣሪያ መጠቀም ለመጀመር ዝግጁ ነዎት"</string> + <string name="default_device_name" msgid="6660656727127422487">"መሣሪያ"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"የስርዓት አሰሳ ቅንብሮች"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"የእርስዎ <xliff:g id="DEVICE">%1$s</xliff:g> \nዝግጁ ነው!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"የእርስዎ መሣሪያ \nዝግጁ ነው!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"በእርስዎ አዲስ <xliff:g id="DEVICE">%1$s</xliff:g> ይደሰቱ!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"እንዴት እንደሚያስሱ ይምረጡ"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ወደ ላይ ያንሸራትቱ"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"የመነሻ አዝራር ላይ መታ ያድርጉ"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ጡባዊ"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ስልክ"</string> <string name="action_share" msgid="2648470652637092375">"አጋራ"</string> <string name="action_screenshot" msgid="8171125848358142917">"ቅጽበታዊ ገፅ ዕይታ"</string> <string name="action_split" msgid="2098009717623550676">"ክፈል"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"የተከፈለ ማያ ገጽን ለመቀበል ሌላ መተግበሪያ ይምረጡ"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ይህ ድርጊት በመተግበሪያው ወይም በእርስዎ ድርጅት አይፈቀድም"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"መግብሮች በአሁኑ ጊዜ አይደገፉም፣ እባክዎ ሌላ መተግበሪያ ይምረጡ"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"የአሰሳ አጋዥ ሥልጠናን ይዝለሉ?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"ይህን በኋላ በ<xliff:g id="NAME">%1$s</xliff:g> መተግበሪያው ውስጥ ማግኘት ይችላሉ"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"ይቅር"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"ዝለል"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"ማያ ገጹን አዙር"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"የተግባር አሞሌው እንዴት ከማያ ገፅ ግርጌ ላይ እንደሚታይ እና ጥቅም ላይ በማይውልበት ጊዜ በራስ-ሰር እንደሚደበቅ የሚያሳይ እነማ"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"ቀያይርን ተጠቅመው እንዴት የተግባር አሞሌዎን ፒን ማድረግ እንደሚችሉ የሚያሳይ እነማ፣ ስለዚህ የተግባር አሞሌው በማያ ገፁ የታችኛው ክፍል ላይ በቋሚነት ይታያል።"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"ክፍት ከሆነ መተግበሪያ በላይ ካለ የተግባር አሞሌ ላይ አንድ መተግበሪያን ጎትቶ በማኖር የተከፈለ ማያ ገፅ እንዴት መፍጠር እንደሚቻል የሚያሳይ እነማ"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"በመሣሪያዎ ላይ የተጠቆሙ መተግበሪያዎችን እንዴት መድረስ እንደሚቻል የሚያሳይ እነማ"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"የድርጊት ቁልፉን በመንካት እና በመያዝ እንዲሁም ንጥሉ ያለበትን ቦታ በመምረጥ አንድን ንጥል በማያ ገፁ ላይ እንዴት መፈለግ እንደሚቻል የሚያሳይ እነማ"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"የተግባር አሞሌ ትምህርት"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"በአንድ ጊዜ 2 መተግበሪያዎችን ለመጠቀም አንድ መተግበሪያን ወደ ጎን ይጎትቱ"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"የተግባር አሞሌውን ለማሳየት ቀስ ብለው ወደ ላይ ያንሸራትቱ"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"ሁልጊዜ የተግባር አሞሌ ያሳዩ"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"የአሰሳ ሁነታን ይለውጡ"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"የተግባር አሞሌ አካፋይ"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"ሌሎች የቅርብ ጊዜ መተግበሪያዎች"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"የተግባር አሞሌ ትርፍ ፍሰት"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ወደ ላይ/ግራ ይውሰዱ"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"ወደ ታች/ቀኝ ይውሰዱ"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"መተግበሪያን እንደ ዓረፋ ይክፈቱ"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"የዝጋ አዝራር"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ተግባር አሞሌ ላይ ፒን አድርግ"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ከተግባር አሞሌ ንቀል"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"ገፋ አድርግ"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"ዝጋ"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ምስልን ገፋ ማድረግ"</string> </resources> diff --git a/quickstep/res/values-ar/strings.xml b/quickstep/res/values-ar/strings.xml index a6ab0e5b51..7c4e10fbf5 100644 --- a/quickstep/res/values-ar/strings.xml +++ b/quickstep/res/values-ar/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"شكل مجاني"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"الكمبيوتر المكتبي"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"نقل التطبيق إلى شاشة خارجية"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"محو"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"إغلاق"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"كمبيوتر مكتبي"</string> <string name="recents_empty_message" msgid="7040467240571714191">"ما مِن عناصر تم استخدامها مؤخرًا"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"إعدادات استخدام التطبيق"</string> <string name="recents_clear_all" msgid="5328176793634888831">"محو الكل"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"إضافة سطح مكتب جديد"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"التطبيقات المستخدمة مؤخرًا"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>، <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"أقل من دقيقة"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"مرّر سريعًا للأعلى للانتقال إلى الشاشة الرئيسية"</string> <string name="allset_button_hint" msgid="2395219947744706291">"انقر على زر الشاشة الرئيسية للانتقال إلى الشاشة الرئيسية."</string> <string name="allset_description_generic" msgid="5385500062202019855">"يمكنك الآن بدء استخدام <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"يمكنك الآن بدء استخدام جهازك"</string> + <string name="default_device_name" msgid="6660656727127422487">"الجهاز"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"إعدادات التنقّل داخل النظام"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"أصبح <xliff:g id="DEVICE">%1$s</xliff:g> \nجاهزًا"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"أصبح الجهاز \nجاهزًا"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"أصبح <xliff:g id="DEVICE">%1$s</xliff:g> جاهزًا ويمكنك استخدامه"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"اختيار طريقة التنقّل"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"يمكنك التمرير سريعًا للأعلى"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"يمكنك النقر على زر الشاشة الرئيسية"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"جهاز لوحي"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"هاتف"</string> <string name="action_share" msgid="2648470652637092375">"مشاركة"</string> <string name="action_screenshot" msgid="8171125848358142917">"لقطة شاشة"</string> <string name="action_split" msgid="2098009717623550676">"تقسيم"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"اختَر تطبيقًا آخر لاستخدام \"وضع تقسيم الشاشة\""</string> <string name="blocked_by_policy" msgid="2071401072261365546">"لا يسمح التطبيق أو لا تسمح مؤسستك بهذا الإجراء."</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"التطبيقات المصغّرة غير متوفّرة حاليًا، يرجى اختيار تطبيق آخر."</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"هل تريد تخطي الدليل التوجيهي للتنقّل؟"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"يمكنك العثور على هذا الدليل التوجيهي لاحقًا في التطبيق \"<xliff:g id="NAME">%1$s</xliff:g>\""</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"إلغاء"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"التخطي"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"تدوير الشاشة"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"صورة متحركة توضّح كيفية إظهار شريط التطبيقات من أسفل الشاشة وإخفائه تلقائيًا عند عدم استخدامه"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"صورة متحركة توضّح كيفية تثبيت شريط التطبيقات باستخدام زر تبديل، بحيث يظل الشريط ظاهرًا بشكل دائم في أسفل الشاشة"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"صورة متحركة توضّح كيفية إنشاء شاشة مقسَّمة عن طريق سحب تطبيق وإفلاته من شريط التطبيقات فوق تطبيق مفتوح"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"صورة متحركة توضّح كيفية الوصول إلى التطبيقات المقترَحة على جهازك"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"صورة متحركة توضّح كيفية البحث عن عنصر على الشاشة من خلال النقر على مفتاح الإجراء مع الاستمرار وتحديد المنطقة التي يظهر فيها العنصر"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"التعريف بشريط التطبيقات"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"اسحب تطبيقًا إلى جانب الشاشة لاستخدام تطبيقََين في آنٍ واحد"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"مرِّر ببطء للأعلى لإظهار شريط التطبيقات"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"إظهار شريط التطبيقات دائمًا"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"تغيير وضع التنقل"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"مقسِّم شريط التطبيقات"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"التطبيقات الأخرى المستخدَمة مؤخرًا"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"القائمة الكاملة لشريط التطبيقات"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"الانتقال إلى يمين الشاشة أو أعلاها"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"الانتقال إلى يسار الشاشة أو أسفلها"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"فتح التطبيق كفقاعة"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"زر الإغلاق"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"التثبيت على شريط التطبيقات"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"إزالة التثبيت من شريط التطبيقات"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"تذكير تلقائي"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"إغلاق"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"صورة تذكير تلقائي"</string> </resources> diff --git a/quickstep/res/values-as/strings.xml b/quickstep/res/values-as/strings.xml index d32381f8a3..0a5241b731 100644 --- a/quickstep/res/values-as/strings.xml +++ b/quickstep/res/values-as/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Freeform"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ডেস্কটপ"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"বাহ্যিক ডিছপ্লে’লৈ নিয়ক"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"মচক"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"বন্ধ কৰক"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ডেস্কটপ"</string> <string name="recents_empty_message" msgid="7040467240571714191">"কোনো শেহতীয়া বস্তু নাই"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"এপে ব্যৱহাৰ কৰা ডেটাৰ ছেটিং"</string> <string name="recents_clear_all" msgid="5328176793634888831">"আটাইবোৰ মচক"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"নতুন ডেস্ক যোগ দিয়ক"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"শেহতীয়া এপ্‌সমূহ"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; ১ মিনিট"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"গৃহ স্ক্ৰীনলৈ যাবলৈ ওপৰলৈ ছোৱাইপ কৰক"</string> <string name="allset_button_hint" msgid="2395219947744706291">"আপোনাৰ গৃহ স্ক্ৰীনলৈ যাবলৈ গৃহপৃষ্ঠা বুটামটো টিপক"</string> <string name="allset_description_generic" msgid="5385500062202019855">"আপুনি আপোনাৰ <xliff:g id="DEVICE">%1$s</xliff:g>টো ব্যৱহাৰ কৰিবলৈ সাজু"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"আপুনি আপোনাৰ ডিভাইচটো ব্যৱহাৰ কৰিবলৈ সাজু"</string> + <string name="default_device_name" msgid="6660656727127422487">"ডিভাইচ"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"ছিষ্টেম নেভিগেশ্বনৰ ছেটিং"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"আপোনাৰ <xliff:g id="DEVICE">%1$s</xliff:g>টো \nসাজু হৈছে!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"আপোনাৰ ডিভাইচটো \nসাজু হৈছে!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"আপোনাৰ নতুন <xliff:g id="DEVICE">%1$s</xliff:g>টো উপভোগ কৰক!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"নেভিগে’ট কেনেকৈ কৰিব লাগে বাছনি কৰক"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ওপৰলৈ ছোৱাইপ কৰক"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"বুটামটোত টিপক"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"টেবলেট"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ফ’ন"</string> <string name="action_share" msgid="2648470652637092375">"শ্বেয়াৰ কৰক"</string> <string name="action_screenshot" msgid="8171125848358142917">"স্ক্ৰীনশ্বট"</string> <string name="action_split" msgid="2098009717623550676">"বিভাজন কৰক"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"বিভাজিত স্ক্ৰীন ব্যৱহাৰ কৰিবলৈ অন্য এটা এপ্ বাছক"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"এপ্‌টোৱে অথবা আপোনাৰ প্ৰতিষ্ঠানে এই কাৰ্যটোৰ অনুমতি নিদিয়ে"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"বৰ্তমান ৱিজেট সমৰ্থিত নহয়, অনুগ্ৰহ কৰি আন এটা এপ্‌ বাছনি কৰক"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"নেভিগেশ্বনৰ টিউট’ৰিয়েল এৰিব বিচাৰে নেকি?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"আপুনি এয়া পাছত <xliff:g id="NAME">%1$s</xliff:g> এপ্‌টোত বিচাৰিব পাৰিব"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"বাতিল কৰক"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"এৰি যাওক"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"স্ক্ৰীনখন ঘূৰাওক"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"স্ক্ৰীনখনৰ একেবাৰে তলৰ পৰা টাস্কবাৰ কেনেকৈ দেখা পোৱা যায় আৰু ব্যৱহাৰ হৈ নথকা অৱস্থাত কেনেকৈ স্বয়ংক্ৰিয়ভাৱে লুকাই থাকে সেয়া দেখুওৱা এনিমেশ্বন"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"স্ক্ৰীনখনৰ একেবাৰে তলত টাস্কবাৰডাল স্থায়ীভাৱে দৃশ্যমান হৈ থাকিবৰ বাবে এটা ট’গল ব্যৱহাৰ কৰি আপোনাৰ টাস্কবাৰ কেনেকৈ পিন কৰিব সেয়া দেখুওৱা এনিমেশ্বন"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"এটা খুলি থোৱা এপৰ ওপৰত টাস্কবাৰৰ পৰা এটা এপ্‌ টানি আনি এৰি দি এখন বিভাজিত স্ক্ৰীন কেনেকৈ সৃষ্টি কৰিব পাৰি সেয়া দেখুওৱা এনিমেশ্বন"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"আপোনাৰ ডিভাইচত পৰামৰ্শিত এপ্‌ কেনেকৈ এক্সেছ কৰিব পাৰি সেয়া দেখুওৱা এনিমেশ্বন"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"কাৰ্য কী স্পৰ্শ কৰি আৰু ধৰি ৰাখি আৰু কোনো এটা বস্তু থকা ঠাইখিনি বাছনি কৰি স্ক্ৰীনত বস্তুটো কেনেকৈ সন্ধান কৰিব পাৰি সেয়া দেখুওৱা এনিমেশ্বন"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"টাস্কবাৰৰ শিক্ষা"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"এবাৰতে ২ টা এপ্‌ ব্যৱহাৰ কৰিবলৈ কোনো এপ্‌ কাষলৈ টানি আনি এৰক"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"টাস্কবাৰ দেখুৱাবলৈ লাহেকৈ ওপৰলৈ ছোৱাইপ কৰক"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"টাস্কবাৰ সদায় দেখুৱাওক"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"নেভিগেশ্বন ম’ড সলনি কৰক"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"টাস্কবাৰ বিভাজক"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"অন্য শেহতীয়া এপ্‌"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"টাস্কবাৰ অ’ভাৰফ্ল"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ওপৰৰ বাঁওফাললৈ নিয়ক"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"তলৰ সোঁফাললৈ নিয়ক"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"বাবল হিচাপে এপ্‌টো খোলক"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"বন্ধ কৰা বুটাম"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"টাস্কবাৰত পিন কৰক"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"টাস্কবাৰৰ পৰা আনপিন কৰক"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"লৰচৰ কৰক"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"বন্ধ কৰক"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"প্ৰতিচ্ছবি লৰচৰ কৰক"</string> </resources> diff --git a/quickstep/res/values-az/strings.xml b/quickstep/res/values-az/strings.xml index 958a6df885..ea9e4096d2 100644 --- a/quickstep/res/values-az/strings.xml +++ b/quickstep/res/values-az/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Sərbəst rejim"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Masaüstü"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Xarici displeyə köçürün"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Silin"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Bağlayın"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Masaüstü"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Son elementlər yoxdur"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Tətbiq istifadə ayarları"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Hamısını silin"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Yeni masa əlavə edin"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Son tətbiqlər"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 dəq"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Əsas səhifəyə keçmək üçün yuxarı çəkin"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Əsas ekranınıza keçmək üçün əsas düyməyə toxunun"</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> cihazından istifadəyə başlamağa hazırsınız"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Cihazdan istifadə edə bilərsiniz"</string> + <string name="default_device_name" msgid="6660656727127422487">"cihaz"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Sistem naviqasiya ayarları"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> cihazınız \nhazırdır!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Cihazınız \nhazırdır!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Yeni <xliff:g id="DEVICE">%1$s</xliff:g> cihazınızdan zövq alın!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Necə naviqasiya edəcəyinizi seçin"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Yuxarı sürüşdürün"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Əsas düyməyə basın"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"planşet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Paylaşın"</string> <string name="action_screenshot" msgid="8171125848358142917">"Skrinşot"</string> <string name="action_split" msgid="2098009717623550676">"Ayırın"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Bölünmüş ekrandan istifadə üçün başqa tətbiq seçin"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Bu əməliyyata tətbiq və ya təşkilatınız tərəfindən icazə verilmir"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Vidcetlər dəstəklənmir, başqa tətbiq seçin"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Naviqasiya dərsliyi ötürülsün?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Bunu sonra <xliff:g id="NAME">%1$s</xliff:g> tətbiqində tapa bilərsiniz"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Ləğv edin"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Ötürün"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Ekranı fırladın"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Tapşırıqlar panelinin ekranın aşağı hissəsindən necə göründüyünü və istifadə edilmədikdə avtomatik olaraq necə gizləndiyini göstərən animasiya"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Tapşırıq panelinin ekranın aşağı hissəsində daimi olaraq görünməsi üçün keçirici vasitəsilə tapşırıq panelini bərkitməyi göstərən animasiya"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Tətbiqi tapşırıqlar panelindən açıq tətbiqin üzərinə sürükləyib buraxmaqla bölünmüş ekran yaratmağı göstərən animasiya"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Cihazda təklif olunan tətbiqlərə daxil olmağı göstərən animasiya"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Fəaliyyət düyməsini basıb saxlamaqla və elementin yerləşdiyi sahəni seçməklə ekranda müəyyən elementi axtarmağı göstərən animasiya"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Tapşırıq panelində təhsil"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Eyni anda 2 tətbiqi istifadə etmək üçün bir tətbiqi yan tərəfə çəkin"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Tapşırıq panelini göstərmək üçün astaca yuxarı sürüşdürün"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"İşləmə paneli həmişə görünsün"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Naviqasiya rejimini dəyişin"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"İşləmə paneli ayırıcısı"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Digər son tətbiqlər"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Tapşırıqlar Paneli üzrə əlavə menyu"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Yuxarı/sola köçürün"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Aşağı/sağa köçürün"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Tətbiqi yumrucuq kimi açın"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Qapatma düyməsi"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"İşləmə panelinə bərkidin"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"İşləmə panelindən çıxarın"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Xatırlatma bildirişi"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Bağlayın"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Xatırlatma bildirişi şəkli"</string> </resources> diff --git a/quickstep/res/values-b+sr+Latn/strings.xml b/quickstep/res/values-b+sr+Latn/strings.xml index 00599fba81..fb86deba26 100644 --- a/quickstep/res/values-b+sr+Latn/strings.xml +++ b/quickstep/res/values-b+sr+Latn/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Slobodni oblik"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Računar"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Premestite na spoljni ekran"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Obriši"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Zatvori"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Računari"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Nema nedavnih stavki"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Podešavanja korišćenja aplikacije"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Obriši sve"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Dodaj novu radnu površinu"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Nedavne aplikacije"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Prevucite nagore da biste otvorili početni ekran"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Dodirnite dugme Početak da biste otišli na početni ekran"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Spremni ste da počnete da koristite <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Spremni ste da počnete da koristite uređaj"</string> + <string name="default_device_name" msgid="6660656727127422487">"uređaj"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Podešavanja kretanja kroz sistem"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> je \nspreman!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Uređaj je \nspreman!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Uživajte uz novi <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Izaberite podešavanja navigacije"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Prevucite nagore"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Dodirnite dugme Početak"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Deli"</string> <string name="action_screenshot" msgid="8171125848358142917">"Snimak ekrana"</string> <string name="action_split" msgid="2098009717623550676">"Podeli"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Odaberite drugu aplikaciju za podeljeni ekran"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Aplikacija ili organizacija ne dozvoljavaju ovu radnju"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Vidžeti trenutno nisu podržani. Izaberite drugu aplikaciju"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Želite da preskočite vodič za kretanje?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Možete da pronađete ovo kasnije u aplikaciji <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Otkaži"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Preskoči"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rotirajte ekran"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animacija koja pokazuje kako se traka zadataka prikazuje pri dnu ekrana i automatski skriva kada se ne koristi"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animacija koja pokazuje kako da pomoću prekidača zakačite traku zadataka tako da uvek bude vidljiva u dnu ekrana"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animacija koja pokazuje kako da napravite podeljeni ekran prevlačenjem i otpuštanjem aplikacije sa trake zadataka iznad otvorene aplikacije"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animacija koja pokazuje kako da pristupate predloženim aplikacijama na uređaju"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animacija koja pokazuje kako da potražite stavku na ekranu tako što ćete dodirnuti i zadržati taster radnji i izabrati oblast u kojoj se nalazi ova stavka"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Uputstva na traci zadataka"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Prevucite na stranu da biste koristili 2 aplikacije odjednom"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Sporo prevucite nagore da biste videli traku zadataka"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Uvek prikazuj traku zadataka"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Promeni režim navigacije"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Razdelnik trake zadataka"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Druge nedavne aplikacije"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Preklopna traka zadataka"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Premesti gore levo"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Premesti dole desno"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Otvori aplikaciju kao oblačić"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Dugme Zatvori"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Zakači za traku zad."</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Otkači sa trake zad."</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Automatski podsetnik"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Zatvorite"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Slika automatskog podsetnika"</string> </resources> diff --git a/quickstep/res/values-be/strings.xml b/quickstep/res/values-be/strings.xml index f579e4a891..c1e9b29836 100644 --- a/quickstep/res/values-be/strings.xml +++ b/quickstep/res/values-be/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Адвольная форма"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Працоўны стол"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Перамясціць на знешні дысплэй"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Ачысціць"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Закрыць"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Працоўны стол"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Няма новых элементаў"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Налады выкарыстання праграмы"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Ачысціць усё"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Дадаць новы працоўны стол"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Нядаўнія праграмы"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 хв"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Каб перайсці на галоўны экран, правядзіце пальцам уверх"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Каб перайсці на галоўны экран, націсніце кнопку галоўнага экрана"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Вы можаце пачаць карыстацца <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Вы можаце пачаць карыстанне прыладай"</string> + <string name="default_device_name" msgid="6660656727127422487">"прыладай"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Налады навігацыі ў сістэме"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Ваша прылада <xliff:g id="DEVICE">%1$s</xliff:g> \nналаджана!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Ваша прылада \nналаджана!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Прыемнага карыстання новай прыладай <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Выберыце спосаб навігацыі"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Правесці пальцам уверх"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Націсніце кнопку галоўнага экрана"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"планшэт"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"тэлефон"</string> <string name="action_share" msgid="2648470652637092375">"Абагуліць"</string> <string name="action_screenshot" msgid="8171125848358142917">"Здымак экрана"</string> <string name="action_split" msgid="2098009717623550676">"Падзелены экран"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Каб падзяліць экран, выберыце іншую праграму"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Гэта дзеянне не дазволена праграмай ці вашай арганізацыяй"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Віджэты зараз не падтрымліваюцца. Выберыце іншую праграму."</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Прапусціць дапаможнік па навігацыі?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Знайсці дапаможнік можна ў праграме \"<xliff:g id="NAME">%1$s</xliff:g>\""</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Скасаваць"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Прапусціць"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Павярнуць экран"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Анімацыя, якая паказвае, як панэль задач становіцца бачнай у ніжняй частцы экрана і аўтаматычна хаваецца, калі не выкарыстоўваецца"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Анімацыя, якая паказвае, як замацаваць панэль задач з дапамогай пераключальніка, каб яна заставалася бачнай у ніжняй частцы экрана"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Анімацыя, якая паказвае, як стварыць падзелены экран перацягваннем праграмы з панэлі задач паверх адкрытай праграмы"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Анімацыя, якая паказвае, як перайсці да прапанаваных праграм на прыладзе"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Анімацыя, якая паказвае, як знайсці элемент на экране, націснуўшы і ўтрымліваючы клавішу дзеяння і вылучыўшы вобласць, у якой знаходзіцца элемент"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Інфармацыя пра панэль задач"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Каб карыстацца 2 праграмамі, перацягніце адну з іх убок"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Каб паказаць панэль задач, павольна правядзіце пальцам уверх"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Заўсёды паказваць панэль задач"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Змяніць рэжым навігацыі"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Раздзяляльнік панэлі задач"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Іншыя нядаўнія праграмы"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Меню з пашырэннем панэлі задач"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Перамясціць уверх/улева"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Перамясціць уніз/управа"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Адкрыць праграму ва ўсплывальным акне"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Кнопка \"Закрыць\""</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Замацаваць на панэлі"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Адмацаваць ад панэлі"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Напамін"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Закрыць"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Відарыс напаміну"</string> </resources> diff --git a/quickstep/res/values-bg/strings.xml b/quickstep/res/values-bg/strings.xml index 5b60e26736..958a0292c0 100644 --- a/quickstep/res/values-bg/strings.xml +++ b/quickstep/res/values-bg/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Свободна форма"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"За компютър"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Преместване към външния екран"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Изчистване"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Затваряне"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Настолен компютър"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Няма скорошни елементи"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Настройки за използването на приложенията"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Изчистване на всички"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Добавяне на нов работен кът"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Скорошни приложения"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 мин"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Плъзнете с пръст нагоре, за да отворите началния екран"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Докоснете бутона „Начало“, за да преминете към началния екран"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Можете да започнете да използвате <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Можете да започнете да използвате устройството си"</string> + <string name="default_device_name" msgid="6660656727127422487">"устройството"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Настройки за навигиране в системата"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Вашият <xliff:g id="DEVICE">%1$s</xliff:g> е \nнастроен!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Устройството ви е \nнастроено!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Насладете се на новия си <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Избор на начин на придвижване"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Прекарайте пръст нагоре"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Докоснете бутона „Начало“"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"таблет"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"телефон"</string> <string name="action_share" msgid="2648470652637092375">"Споделяне"</string> <string name="action_screenshot" msgid="8171125848358142917">"Екранна снимка"</string> <string name="action_split" msgid="2098009717623550676">"Разделяне на екрана"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"За разделен екран изберете още едно приложение"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Това действие не е разрешено от приложението или организацията ви"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Понастоящем приспособленията не се поддържат. Моля, изберете друго приложение"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Пропускане на урока за навигиране?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Урокът е налице в приложението <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Отказ"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Пропускане"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Завъртане на екрана"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Анимация, показваща как лентата на задачите се показва от долната част на екрана и автоматично се скрива, когато не се използва"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Анимация, показваща как да фиксирате лентата на задачите с помощта на превключвател, така че да остане постоянно видима в долната част на екрана"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Анимация, показваща как да създадете разделен екран, като хванете и преместите приложение от лентата на задачите над отворено приложение"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Анимация, показваща как да осъществите достъп до предложените приложения на устройството"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Анимация, показваща как да търсите елемент на екрана, като докоснете и задържите клавиша за действия и изберете областта, в която се намира елементът"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Урок за лентата на задачите"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Плъзнете приложение встрани, за да използвате едновременно 2"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Плъзнете бавно нагоре, за да видите лентата на задачите"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Лентата на задачите винаги да се показва"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Промяна на режима на навигация"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Разделител на лентата на задачите"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Други скорошни приложения"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Меню при препълване на лентата на задачите"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Преместване горе/вляво"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Преместване долу/вдясно"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Отваряне на приложението като балонче"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Бутон за затваряне"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Лент. на зад.: фикс."</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Лент. на зад.: осв."</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Подсещане"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Затваряне"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Изображение за подсещане"</string> </resources> diff --git a/quickstep/res/values-bn/strings.xml b/quickstep/res/values-bn/strings.xml index 56528098d7..cbe54e8742 100644 --- a/quickstep/res/values-bn/strings.xml +++ b/quickstep/res/values-bn/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"ফ্রি-ফর্ম"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ডেস্কটপ"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"এক্সটার্নাল ডিসপ্লেতে সরিয়ে নিয়ে যান"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"মুছুন"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"বন্ধ করুন"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ডেস্কটপ"</string> <string name="recents_empty_message" msgid="7040467240571714191">"কোনও সাম্প্রতিক আইটেম নেই"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"অ্যাপ ব্যবহারের সেটিংস"</string> - <string name="recents_clear_all" msgid="5328176793634888831">"সব মুছে দিন"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"নতুন ডেস্ক যোগ করুন"</string> + <string name="recents_clear_all" msgid="5328176793634888831">"সবকিছু খালি করুন"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"সম্প্রতি ব্যবহৃত অ্যাপ"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; ১ মি."</string> @@ -83,7 +82,7 @@ <string name="overview_gesture_tutorial_subtitle" msgid="5253549754058973071">"স্ক্রিনের নিচের থেকে উপরের দিকে সোয়াইপ করে ধরে থাকুন, তারপরে ছেড়ে দিন"</string> <string name="overview_gesture_tutorial_success" msgid="1910267697807973076">"শাবাশ!"</string> <string name="gesture_tutorial_confirm_title" msgid="6201516182040074092">"সব প্রস্তুত"</string> - <string name="gesture_tutorial_action_button_label" msgid="6249846312991332122">"হয়ে গেছে"</string> + <string name="gesture_tutorial_action_button_label" msgid="6249846312991332122">"সম্পূর্ণ হয়েছে"</string> <string name="gesture_tutorial_action_button_label_settings" msgid="2923621047916486604">"সেটিংস"</string> <string name="gesture_tutorial_try_again" msgid="65962545858556697">"আবার চেষ্টা করুন"</string> <string name="gesture_tutorial_nice" msgid="2936275692616928280">"সাবাস!"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"হোম স্ক্রিনে যেতে উপরের দিকে সোয়াইপ করুন"</string> <string name="allset_button_hint" msgid="2395219947744706291">"আপনার হোম স্ক্রিনে যাওয়ার জন্য হোম বোতামে ট্যাপ করুন"</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> ব্যবহার শুরু করার জন্য আপনি রেডি"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"নিজের ডিভাইস ব্যবহার শুরু করার জন্য আপনি রেডি"</string> + <string name="default_device_name" msgid="6660656727127422487">"ডিভাইস"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"সিস্টেম নেভিগেশন সেটিংস"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"আপনার <xliff:g id="DEVICE">%1$s</xliff:g> \nপ্রস্তুত!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"আপনার ডিভাইস \nপ্রস্তুত!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"আপনার নতুন <xliff:g id="DEVICE">%1$s</xliff:g> ব্যবহার করুন!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"কীভাবে নেভিগেট করবেন তা বেছে নিন"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"উপরের দিকে সোয়াইপ করুন"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"হোম বোতামে ট্যাপ করুন"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ট্যাবলেট"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ফোন"</string> <string name="action_share" msgid="2648470652637092375">"শেয়ার করুন"</string> <string name="action_screenshot" msgid="8171125848358142917">"স্ক্রিনশট নিন"</string> <string name="action_split" msgid="2098009717623550676">"স্প্লিট"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"স্প্লিট স্ক্রিন ব্যবহার করতে অন্য অ্যাপ বেছে নিন"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"এই অ্যাপ বা আপনার প্রতিষ্ঠান এই অ্যাকশনটি পারফর্ম করার অনুমতি দেয়নি"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"উইজেট বর্তমানে ব্যবহার করা যাচ্ছে না, অন্য একটি অ্যাপ বেছে নিন"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"নেভিগেশন টিউটোরিয়াল এড়িয়ে যেতে চান?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"আপনি <xliff:g id="NAME">%1$s</xliff:g> অ্যাপে পরে এটি খুঁজে পাবেন"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"বাতিল করুন"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"এড়িয়ে যান"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"স্ক্রিন ঘোরান"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"অ্যানিমেশন যেখানে দেখানো হচ্ছে, কীভাবে টাস্কবারটি স্ক্রিনের নিচ থেকে দেখা যায় এবং ব্যবহার করা না হলে অটোমেটিক লুকানো হয়"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"অ্যানিমেশন যেখানে দেখানো হচ্ছে, টগল ব্যবহার করে কীভাবে আপনার টাস্কবার পিন করতে হয়, যাতে স্ক্রিনের নিচে টাস্কবার স্থায়ীভাবে দেখা যায়"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"অ্যানিমেশন যেখানে দেখানো হচ্ছে, টাস্কবার থেকে একটি অ্যাপকে, খোলা আছে এমন অ্যাপের উপরে টেনে এনে রেখে কীভাবে \'স্প্লিট স্ক্রিন\' তৈরি করতে হয়"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"অ্যানিমেশন যেখানে দেখানো হচ্ছে, আপনার ডিভাইসে সাজেস্ট করা অ্যাপ কীভাবে অ্যাক্সেস করবেন"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"অ্যানিমেশন যেখানে দেখানো হচ্ছে, অ্যাকশন \'কী\' টাচ করে ধরে রেখে এবং আইটেমটি যেখানে রয়েছে তা বেছে নিয়ে কীভাবে স্ক্রিনে কোনও আইটেম সার্চ করতে হয়"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"টাস্কবার এডুকেশন"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"একসাথে ২টি অ্যাপ ব্যবহার করতে একটি অ্যাপ পাশে টেনে আনুন"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"\'টাস্কবার\' দেখার জন্য উপরের দিকে ধীরে সোয়াইপ করুন"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"সবসময় টাস্কবার দেখুন"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"\'নেভিগেশন\' মোড পরিবর্তন করুন"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"টাস্কবার ডিভাইডার"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"অন্যান্য সাম্প্রতিক অ্যাপ"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"টাস্কবার ওভারফ্লো"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"উপরে/বাঁদিকে সরান"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"নিচে/ডানদিকে সরান"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"বাবল হিসেবে অ্যাপ খুলুন"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"বন্ধ করার বোতাম"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"টাস্কবারে পিন করুন"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"টাস্কবার থেকে আনপিন করুন"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"নাজ"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"বন্ধ করুন"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ছবিটি নাজ করুন"</string> </resources> diff --git a/quickstep/res/values-bs/strings.xml b/quickstep/res/values-bs/strings.xml index 561495fd2d..b7a2b37aef 100644 --- a/quickstep/res/values-bs/strings.xml +++ b/quickstep/res/values-bs/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Slobodan oblik"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Radna površina"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Premještanje na vanjski ekran"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Brisanje"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Zatvaranje"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Radna površina"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Nema nedavnih stavki"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Postavke korištenja aplikacije"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Obriši sve"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Dodavanje nove radne površine"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Nedavne aplikacije"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Prevucite prema gore da odete na početni ekran"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Dodirnite dugme za početni ekran da odete na početni ekran"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Spremni ste da počnete koristiti <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Sve je spremno da počnete koristiti uređaj"</string> + <string name="default_device_name" msgid="6660656727127422487">"uređaj"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Postavke navigacije sistemom"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Vaš <xliff:g id="DEVICE">%1$s</xliff:g> je \nspreman!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Vaš uređaj je \nspreman!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Uživajte uz svoj novi <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Odaberite način kretanja"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Prevucite nagore"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Dodirnite dugme za početni ekran"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Dijeli"</string> <string name="action_screenshot" msgid="8171125848358142917">"Snimak ekrana"</string> <string name="action_split" msgid="2098009717623550676">"Podijeli"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Odaberite drugu apl. da koristite podijeljeni ekran"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Ovu radnju ne dozvoljava aplikacija ili vaša organizacija"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Vidžeti trenutno nisu podržani. Odaberite drugu aplikaciju"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Preskočiti vodič za navigiranje?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Možete ga pronaći kasnije u aplikaciji <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Otkaži"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Preskoči"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rotiranje ekrana"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animacija koja prikazuje kako se traka zadataka prikazuje u donjem dijelu ekrana i automatski sakriva kada se ne koristi"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animacija koja prikazuje kako zakačiti traku zadataka pomoću prekidača da traka zadataka trajno ostane vidljiva u donjem dijelu ekrana"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animacija koja prikazuje kako kreirati podijeljeni ekran prevlačenjem i ispuštanjem aplikacije s trake zadataka iznad otvorene aplikacije"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animacija koja prikazuje kako pristupiti predloženim aplikacijama na uređaju"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animacija koja prikazuje kako pretražiti stavku na ekranu dodirom i zadržavanjem tipke radnji i odabirom područja u kojem se stavka nalazi"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Edukacija o traci zadataka"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Prevucite aplikaciju ustranu da odjednom koristite 2 aplikacije"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Sporo prevucite nagore da vidite traku zadataka"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Uvijek prikaži traku zadataka"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Promijeni način navigacije"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Razdjelnik trake zadataka"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Druge nedavne aplikacije"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Preklopni meni trake zadataka"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Premjesti gore lijevo"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Premjesti dolje desno"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Otvori aplikaciju kao oblačić"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Dugme za zatvaranje"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Zakači na traku zadataka"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Otkači s trake zadataka"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Podsjećanje"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Zatvaranje"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Slika podsjećanja"</string> </resources> diff --git a/quickstep/res/values-ca/strings.xml b/quickstep/res/values-ca/strings.xml index 35fd954eec..4161ac0a37 100644 --- a/quickstep/res/values-ca/strings.xml +++ b/quickstep/res/values-ca/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Format lliure"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Escriptori"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Mou a la pantalla externa"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Esborra"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Tanca"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Escriptori"</string> <string name="recents_empty_message" msgid="7040467240571714191">"No hi ha cap element recent"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Configuració d\'ús d\'aplicacions"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Esborra-ho tot"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Afegeix un escriptori nou"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Aplicacions recents"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>; <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minut"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Llisca cap amunt per anar a la pàgina d\'inici"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Toca el botó d\'inici per anar a la pantalla d\'inici"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Ja pots començar a utilitzar el <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Ja pots començar a utilitzar el dispositiu"</string> + <string name="default_device_name" msgid="6660656727127422487">"dispositiu"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Configuració de navegació del sistema"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"El teu <xliff:g id="DEVICE">%1$s</xliff:g> està \na punt"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"El teu dispositiu està \na punt"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Gaudeix del teu nou <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Tria com vols navegar"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Llisca cap amunt"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Toca el botó d\'inici"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tauleta"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telèfon"</string> <string name="action_share" msgid="2648470652637092375">"Comparteix"</string> <string name="action_screenshot" msgid="8171125848358142917">"Captura de pantalla"</string> <string name="action_split" msgid="2098009717623550676">"Divideix"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Tria una altra app per utilitzar pantalla dividida"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"L\'aplicació o la teva organització no permeten aquesta acció"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Actualment els widgets no s\'admeten; selecciona una altra aplicació"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Vols ometre el tutorial de navegació?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Pots trobar-lo més tard a l\'aplicació <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Cancel·la"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Omet"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Gira la pantalla"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animació que mostra com apareix la barra de tasques des de la part inferior de la pantalla i com s\'amaga automàticament quan no s\'utilitza"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animació que mostra com es pot fixar la barra de tasques mitjançant un commutador perquè es mantingui visible permanentment a la part inferior de la pantalla"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animació que mostra com es pot crear una pantalla dividida arrossegant i deixant anar una aplicació des de la barra de tasques sobre una aplicació oberta"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animació que mostra com es pot accedir a les aplicacions suggerides al dispositiu"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animació que mostra com es pot cercar un element a la pantalla mantenint premuda la tecla d\'acció i seleccionant l\'àrea on es troba l\'element"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Informació sobre Barra de tasques"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Arrossega una aplicació al costat per utilitzar-ne dues alhora"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Llisca lentament cap amunt per mostrar la Barra de tasques"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Barra de tasques sempre visible"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Canvia el mode de navegació"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Separador de la Barra de tasques"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Altres aplicacions recents"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Menú addicional de la barra de tasques"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Mou a la part superior o a l\'esquerra"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Mou a la part inferior o a la dreta"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Obre l\'aplicació com a bombolla"</string> @@ -171,9 +161,6 @@ <string name="header_app_icon_description" msgid="2184625881433608027">"Icona de l\'aplicació"</string> <string name="header_default_app_title" msgid="8308052350689531566">"Títol de l\'aplicació"</string> <string name="header_close_icon_description" msgid="5400033616675911319">"Botó Tanca"</string> - <string name="pin_to_taskbar" msgid="6607778046321626950">"Fixa a la barra de tasques"</string> + <string name="pin_to_taskbar" msgid="6607778046321626950">"Fixa a barra tasques"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Deixa de fixar"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Desplaça"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Tanca"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Desplaça la imatge"</string> </resources> diff --git a/quickstep/res/values-cs/strings.xml b/quickstep/res/values-cs/strings.xml index 0170895037..95242cccdb 100644 --- a/quickstep/res/values-cs/strings.xml +++ b/quickstep/res/values-cs/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Neomezený režim"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Počítač"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Přesunout na externí displej"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Vymazat"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Zavřít"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Počítač"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Žádné položky z nedávné doby"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Nastavení využití aplikací"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Vymazat vše"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Přidat novou plochu"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Poslední aplikace"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minuta"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Přejetím nahoru se vrátíte na plochu"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Klepnutím na tlačítko plochy se vrátíte na plochu"</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> můžete začít používat"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Zařízení je připraveno k používání"</string> + <string name="default_device_name" msgid="6660656727127422487">"Zařízení"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Nastavení navigace v systému"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Zařízení <xliff:g id="DEVICE">%1$s</xliff:g>\nje připraveno!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Zařízení \nje připraveno!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Užijte si nové zařízení <xliff:g id="DEVICE">%1$s</xliff:g>."</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Vyberte, jak navigovat"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Přejetí prstem nahoru"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Klepněte na tlačítko plochy"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Sdílet"</string> <string name="action_screenshot" msgid="8171125848358142917">"Snímek obrazovky"</string> <string name="action_split" msgid="2098009717623550676">"Rozdělit"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Vyberte podporovanou aplikaci"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Aplikace nebo organizace zakazuje tuto akci"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgety momentálně nejsou podporovány, vyberte jinou aplikaci"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Přeskočit výukový program k navigaci?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Program později najdete v aplikaci <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Zrušit"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Přeskočit"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Otočit obrazovku"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animace ukazující, jak se z dolní části obrazovky zobrazuje panel aplikací a jak se automaticky skrývá, když se nepoužívá"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animace ukazující, jak pomocí přepínače připnout panel aplikací, aby byl trvale viditelný v dolní části obrazovky"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animace ukazující, jak přetažením aplikace z panelu aplikací nad otevřenou aplikaci vytvořit rozdělenou obrazovku"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animace ukazující, jak na zařízení získat přístup k navrhovaným aplikacím"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animace ukazující, jak vyhledat položku na obrazovce podržením akční klávesy a výběrem oblasti, ve které se daná položka nachází"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Informace o panelu aplikací"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Přetáhněte aplikaci na stranu a používejte tak dvě najednou"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Panel aplikací zobrazíte pomalým přejetím prstem nahoru"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Vždy zobrazovat panel aplikací"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Změnit navigační režim"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Rozdělovač panelu aplikací"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Další nedávné aplikace"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Přetečení panelu aplikací"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Přesunout doleva nahoru"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Přesunout doprava dolů"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Otevřít aplikaci jako bublinu"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Tlačítko Zavřít"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Připnout na panel"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Odepnout z panelu"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Připomenutí"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Zavřít"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Obrázek připomenutí"</string> </resources> diff --git a/quickstep/res/values-da/strings.xml b/quickstep/res/values-da/strings.xml index 6cd5951d29..0449516978 100644 --- a/quickstep/res/values-da/strings.xml +++ b/quickstep/res/values-da/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Frit format"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Computertilstand"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Flyt til ekstern skærm"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Ryd"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Luk"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Computertilstand"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Ingen nye elementer"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Indstillinger for appforbrug"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Ryd alt"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Tilføj nyt skrivebord"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Seneste apps"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Stryg opad for at gå til startsiden"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Tryk på knappen Hjem for at gå til din startskærm"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Du er klar til at bruge din <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Du er klar til at bruge din enhed"</string> + <string name="default_device_name" msgid="6660656727127422487">"enhed"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Indstillinger for systemnavigation"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Så er din <xliff:g id="DEVICE">%1$s</xliff:g> \nklar!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Så er din enhed \nklar!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"God fornøjelse med din nye <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Vælg, hvordan du vil navigere"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Stryg opad"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Tryk på knappen Hjem"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Del"</string> <string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string> <string name="action_split" msgid="2098009717623550676">"Opdel"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Vælg en anden app for at bruge opdelt skærm"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Appen eller din organisation tillader ikke denne handling"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgets understøttes ikke i øjeblikket. Vælg en anden app."</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Vil du springe vejledningen for navigation over?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Du kan finde dette senere i appen <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Annuller"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Spring over"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Roter skærm"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animation, der viser, hvordan proceslinjen kommer frem nederst på skærmen og automatisk forsvinder, når den ikke bruges"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animation, der viser, hvordan du fastgør proceslinjen ved hjælp af en kontakt, så proceslinjen altid er synlig nederst på skærmen"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animation, der viser, hvordan du opretter en opdelt skærm ved at trække og slippe en app fra proceslinjen over på en åben app"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animation, der viser, hvordan du får adgang til foreslåede apps på din enhed"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animation, der viser, hvordan du søger efter et element på skærmen ved at holde fingeren på handlingstasten og vælge det område, hvor elementet befinder sig"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Oplysninger om proceslinjen"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Træk en app til siden for at bruge 2 apps på én gang"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Stryg langsomt opad for at se proceslinjen"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Vis altid proceslinjen"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Skift navigationstilstand"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Opdeling af proceslinjen"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Andre seneste apps"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Prikmenu på proceslinjen"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Flyt til toppen eller venstre side"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Flyt til bunden eller højre side"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Åbn appen som en boble"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Knappen Luk"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Fastgør til proceslinje"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Frigør fra proceslinje"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Skub"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Luk"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Skub billedet"</string> </resources> diff --git a/quickstep/res/values-de/strings.xml b/quickstep/res/values-de/strings.xml index 7b709abe0c..7c24e6d23e 100644 --- a/quickstep/res/values-de/strings.xml +++ b/quickstep/res/values-de/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Freeform-Modus"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktopmodus"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Auf externes Display verschieben"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Entfernen"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Schließen"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktopmodus"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Keine kürzlich verwendeten Elemente"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Einstellungen zur App-Nutzung"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Alle Apps schließen"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Neuen Desktop hinzufügen"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Kürzlich geöffnete Apps"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 Min."</string> @@ -54,8 +53,8 @@ <string name="back_gesture_feedback_swipe_too_far_from_edge" msgid="4175100312909721217">"Wische vom äußersten rechten oder linken Displayrand"</string> <string name="back_gesture_feedback_cancelled" msgid="762621530959111290">"Wische vom rechten oder linken Displayrand zur Displaymitte und lass los"</string> <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Du hast jetzt gelernt, vom rechten Displayrand aus zu wischen, um zurückzugehen. Gleich erfährst du, wie man zwischen Apps wechselt."</string> - <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"Du hast die „Zurück“-Touchgeste abgeschlossen. Gleich lernst du, wie man zwischen Apps wechselt."</string> - <string name="back_gesture_feedback_complete_without_follow_up" msgid="197189945858268342">"Du hast das Tutorial für die Touchgeste „Zurück“ abgeschlossen"</string> + <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"Du hast die „Zurück“-Touch-Geste abgeschlossen. Gleich lernst du, wie man zwischen Apps wechselt."</string> + <string name="back_gesture_feedback_complete_without_follow_up" msgid="197189945858268342">"Du hast das Tutorial für die Touch-Geste „Zurück“ abgeschlossen"</string> <string name="back_gesture_feedback_swipe_in_nav_bar" msgid="9157480023651452969">"Wische nicht zu nah an den unteren Displayrand"</string> <string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Du kannst die Empfindlichkeit von „Zurück“ in den Einstellungen ändern"</string> <string name="back_gesture_intro_title" msgid="19551256430224428">"Zum Zurückgehen wischen"</string> @@ -66,7 +65,7 @@ <string name="home_gesture_feedback_overview_detected" msgid="5177627157303895077">"Achte darauf, nicht innezuhalten, bevor du loslässt"</string> <string name="home_gesture_feedback_wrong_swipe_direction" msgid="8328465201424027148">"Wische gerade nach oben"</string> <string name="home_gesture_feedback_complete_with_follow_up" msgid="8766981412895888417">"Du hast den Schritt für die Geste „Zum Startbildschirm“ abgeschlossen. Jetzt lernst du, wie du zurückgehst."</string> - <string name="home_gesture_feedback_complete_without_follow_up" msgid="2978063221383413443">"Du hast den Schritt für die „Startbildschirm“-Touchgeste abgeschlossen"</string> + <string name="home_gesture_feedback_complete_without_follow_up" msgid="2978063221383413443">"Du hast den Schritt für die „Startbildschirm“-Touch-Geste abgeschlossen"</string> <string name="home_gesture_intro_title" msgid="836590312858441830">"Den Startbildschirm aufrufen"</string> <string name="home_gesture_intro_subtitle" msgid="2632238748497975326">"Wenn du zum Startbildschirm gehen möchtest, wische einfach vom unteren Displayrand nach oben."</string> <string name="home_gesture_tutorial_title" msgid="3126834347496917376">"Zum Start­bildschirm"</string> @@ -76,7 +75,7 @@ <string name="overview_gesture_feedback_home_detected" msgid="663432226180397138">"Halte das Fenster länger gedrückt, bevor du es loslässt"</string> <string name="overview_gesture_feedback_wrong_swipe_direction" msgid="1191055451018584958">"Wische gerade nach oben und halte dann inne"</string> <string name="overview_gesture_feedback_complete_with_follow_up" msgid="3544611727467765026">"Nun weißt du, wie Touch-Gesten funktionieren. Du kannst sie in den Einstellungen deaktivieren."</string> - <string name="overview_gesture_feedback_complete_without_follow_up" msgid="2903050864432331629">"Du hast das Tutorial für die Touchgeste „Apps wechseln“ abgeschlossen"</string> + <string name="overview_gesture_feedback_complete_without_follow_up" msgid="2903050864432331629">"Du hast das Tutorial für die Touch-Geste „Apps wechseln“ abgeschlossen"</string> <string name="overview_gesture_intro_title" msgid="2902054412868489378">"Zwischen Apps wechseln"</string> <string name="overview_gesture_intro_subtitle" msgid="4968091015637850859">"Wische auf dem Display von unten nach oben, halte den Finger gedrückt und lass dann los, um zwischen Apps zu wechseln."</string> <string name="overview_gesture_tutorial_title" msgid="4125835002668708720">"Apps wechseln"</string> @@ -90,18 +89,10 @@ <string name="gesture_tutorial_step" msgid="1279786122817620968">"Anleitung <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string> <string name="allset_title" msgid="5021126669778966707">"Fertig!"</string> <string name="allset_hint" msgid="459504134589971527">"Nach oben wischen, um den Startbildschirm aufzurufen"</string> - <string name="allset_button_hint" msgid="2395219947744706291">"Home-Button drücken, um zum Startbildschirm zu gehen"</string> + <string name="allset_button_hint" msgid="2395219947744706291">"Startbildschirmtaste drücken, um zum Startbildschirm zu gehen"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Du kannst dein <xliff:g id="DEVICE">%1$s</xliff:g> jetzt verwenden"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Du kannst dein Gerät jetzt verwenden"</string> + <string name="default_device_name" msgid="6660656727127422487">"Gerät"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Einstellungen für die Systemnavigation"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Dein <xliff:g id="DEVICE">%1$s</xliff:g> ist \nbereit."</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Dein Gerät ist \nbereit."</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Viel Spaß mit deinem neuen <xliff:g id="DEVICE">%1$s</xliff:g>."</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Navigationsmethode auswählen"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Nach oben wischen"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Auf den Home-Button tippen"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"Tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"Smartphone"</string> <string name="action_share" msgid="2648470652637092375">"Teilen"</string> <string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string> <string name="action_split" msgid="2098009717623550676">"Splitscreen"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Für Splitscreen andere App auswählen"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Die App oder deine Organisation lässt diese Aktion nicht zu"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgets werden momentan nicht unterstützt, bitte wähle eine andere App aus"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Tutorial zur Bedienung überspringen?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Du findest es später auch in der <xliff:g id="NAME">%1$s</xliff:g> App"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Abbrechen"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Über­springen"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Bildschirm drehen"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animation, die zeigt, wie die Taskleiste vom unteren Bildschirmrand aus eingeblendet und dann automatisch wieder ausgeblendet wird, wenn sie nicht verwendet wird"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animation, die zeigt, wie du die Taskleiste mit einem Schalter anpinnst, damit sie immer unten auf dem Bildschirm sichtbar ist"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animation, die zeigt, wie du einen Splitscreen erstellst, indem du eine App per Drag-and-drop aus der Taskleiste ziehst und auf einer geöffneten App ablegst"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animation, die zeigt, wie du auf deinem Gerät auf vorgeschlagene Apps zugreifst"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animation, die zeigt, wie du auf dem Bildschirm nach einem Element suchst, indem du die Aktionstaste gedrückt hältst und den Bereich auswählst, in dem sich das Element befindet"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Informationen zur Taskleiste"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"App zur Seite ziehen, um zwei Apps gleichzeitig zu nutzen"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Langsam nach oben wischen, um die Taskleiste zu sehen"</string> @@ -127,7 +117,7 @@ <string name="taskbar_edu_features" msgid="3320337287472848162">"Mehr Möglichkeiten mit der Taskleiste"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"Taskleiste immer anzeigen"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"Damit die Taskleiste immer unten angezeigt wird, halte den Teiler gedrückt"</string> - <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Aktionstaste gedrückt halten, um nach Inhalten auf deinem Display zu suchen"</string> + <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Aktionstaste gedrückt halten, um auf dem Bildschirm zu suchen"</string> <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"Dieses Produkt sucht dann anhand des ausgewählten Teils deines Displays nach weiteren Informationen. Es gelten die <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>Datenschutzerklärung<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> und die <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>Nutzungsbedingungen<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g> von Google."</string> <string name="taskbar_edu_close" msgid="887022990168191073">"Schließen"</string> <string name="taskbar_edu_done" msgid="6880178093977704569">"Fertig"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Taskleiste immer anzeigen"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Navigationsmodus ändern"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Taskleisten-Teiler"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Andere kürzlich verwendete Apps"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Dreipunkt-Menü der Taskleiste"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Nach oben / Nach links verschieben"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Nach unten / Nach rechts verschieben"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"App als Bubble öffnen"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Schaltfläche „Schließen“"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"An Taskleiste pinnen"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Von Taskleiste lösen"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Erinnerung"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Schließen"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Bild für Erinnerung"</string> </resources> diff --git a/quickstep/res/values-el/strings.xml b/quickstep/res/values-el/strings.xml index fde278e641..f5009c86c1 100644 --- a/quickstep/res/values-el/strings.xml +++ b/quickstep/res/values-el/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Ελεύθερη μορφή"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Υπολογιστής"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Μετακίνηση σε εξωτερική οθόνη"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Διαγραφή"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Κλείσιμο"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Υπολογιστής"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Δεν υπάρχουν πρόσφατα στοιχεία"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Ρυθμίσεις χρήσης εφαρμογής"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Διαγραφή όλων"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Προσθήκη νέου γραφείου"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Πρόσφατες εφαρμογές"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 λ."</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Σύρετε προς τα επάνω για να μεταβείτε στην αρχική σελίδα"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Πατήστε το κουμπί αρχικής οθόνης για να μεταβείτε στην αρχική οθόνη"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Είστε έτοιμοι να ξεκινήσετε να χρησιμοποιείτε τη <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Είστε έτοιμοι να ξεκινήσετε να χρησιμοποιείτε τη συσκευή σας"</string> + <string name="default_device_name" msgid="6660656727127422487">"συσκευή"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Ρυθμίσεις πλοήγησης συστήματος"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Η συσκευή σας <xliff:g id="DEVICE">%1$s</xliff:g> είναι \nέτοιμη!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Η συσκευή σας είναι \nέτοιμη!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Απολαύστε το νέο σας <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Επιλέξτε τον τρόπο πλοήγησης"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Σύρετε προς τα επάνω"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Πατήστε το κουμπί αρχικής οθόνης"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"τηλέφωνο"</string> <string name="action_share" msgid="2648470652637092375">"Κοινοποίηση"</string> <string name="action_screenshot" msgid="8171125848358142917">"Στιγμιότυπο οθόνης"</string> <string name="action_split" msgid="2098009717623550676">"Διαχωρισμός"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Επιλέξτε άλλη εφαρμογή για διαχωρισμό οθόνης"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Αυτή η ενέργεια δεν επιτρέπεται από την εφαρμογή ή τον οργανισμό σας."</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Προς το παρόν, τα γραφικά στοιχεία δεν υποστηρίζονται. Επιλέξτε άλλη εφαρμογή"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Παράβλεψη οδηγού πλοήγησης;"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Βρείτε τον αργότερα στην εφαρμογή <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Ακύρωση"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Παράβλεψη"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Περιστροφή οθόνης"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Κινούμενη εικόνα που δείχνει πώς η γραμμή εργαλείων εμφανίζεται από το κάτω μέρος της οθόνης και κρύβεται αυτόματα όταν δεν χρησιμοποιείται"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Κινούμενη εικόνα που δείχνει πώς να καρφιτσώσετε τη γραμμή εργαλείων χρησιμοποιώντας έναν διακόπτη, ώστε η γραμμή εργαλείων να παραμένει μόνιμα ορατή στο κάτω μέρος της οθόνης"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Κινούμενη εικόνα που δείχνει πώς να δημιουργήσετε μια διαχωρισμένη οθόνη, μεταφέροντας και αποθέτοντας μια εφαρμογή από τη γραμμή εργαλείων πάνω από μια ανοιχτή εφαρμογή"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Κινούμενη εικόνα που δείχνει πώς μπορείτε να αποκτήσετε πρόσβαση στις προτεινόμενες εφαρμογές στη συσκευή σας"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Κινούμενη εικόνα που δείχνει τον τρόπο αναζήτησης ενός στοιχείου στην οθόνη, αγγίζοντας παρατεταμένα το πλήκτρο ενέργειας και επιλέγοντας την περιοχή στην οποία βρίσκεται το στοιχείο"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Πληροφορίες χρήσης της Γραμμής εργαλείων"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Σύρετε μια εφαρμ. στην άκρη για χρήση δύο εφαρμ. ταυτόχρονα"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Σύρετε αργά προς τα πάνω για εμφάνιση της Γραμμής εργαλείων"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Εμφάνιση Γραμμής εργαλείων"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Αλλαγή τρόπου πλοήγησης"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Διαχωριστικό Γραμμής εργαλείων"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Άλλες πρόσφατες εφαρμογές"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Υπερχείλιση γραμμής εργαλείων"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Μετακίνηση επάνω/αριστερά"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Μετακίνηση κάτω/δεξιά"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Άνοιγμα εφαρμογής σε συννεφάκι"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Κουμπί κλεισίματος"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Καρφ. σε γρ. εργαλ."</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Ξεκαρφ. από γρ. εργαλ."</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Υπενθύμιση"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Κλείσιμο"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Εικόνα υπενθύμισης"</string> </resources> diff --git a/quickstep/res/values-en-rAU/strings.xml b/quickstep/res/values-en-rAU/strings.xml index b74ac3cfa0..87a65e813b 100644 --- a/quickstep/res/values-en-rAU/strings.xml +++ b/quickstep/res/values-en-rAU/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Freeform"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Move to external display"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Clear"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Close"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktop"</string> <string name="recents_empty_message" msgid="7040467240571714191">"No recent items"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"App usage settings"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Clear all"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Add new desk"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Recent apps"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minute"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Swipe up to go home"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Tap the home button to go to your home screen"</string> <string name="allset_description_generic" msgid="5385500062202019855">"You’re ready to start using your <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"You\'re ready to start using your device"</string> + <string name="default_device_name" msgid="6660656727127422487">"device"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"System navigation settings"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Your <xliff:g id="DEVICE">%1$s</xliff:g> is \nready!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Your device is \nready!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Enjoy your new <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Choose how to navigate"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Swipe up"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Tap the Home button"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"phone"</string> <string name="action_share" msgid="2648470652637092375">"Share"</string> <string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string> <string name="action_split" msgid="2098009717623550676">"Split"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Choose another app to use split screen"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"This action isn\'t allowed by the app or your organisation"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgets not currently supported; please select another app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Skip navigation tutorial?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"You can find this later in the <xliff:g id="NAME">%1$s</xliff:g> app"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Cancel"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Skip"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rotate screen"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animation showing how the taskbar comes into view from the bottom of the screen, and automatically hides when not in use"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animation showing how to pin your taskbar using a toggle, so that the taskbar remains permanently visible at the bottom of the screen"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animation showing how to create a split screen, by dragging and dropping an app from the taskbar above an open app"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animation showing how to access suggested apps on your device"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animation showing how to search for an item on screen, by touching and holding the action key and selecting the area the item is in"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Taskbar education"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Drag an app to the side to use two apps at once"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Slow-swipe up to show the Taskbar"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Always show Taskbar"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Change navigation mode"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Taskbar divider"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Other recent apps"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Taskbar overflow"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Move to top/left"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Move to bottom/right"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Open app as a bubble"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Close button"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Pin to taskbar"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Unpin from taskbar"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Nudge"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Close"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Nudge image"</string> </resources> diff --git a/quickstep/res/values-en-rCA/strings.xml b/quickstep/res/values-en-rCA/strings.xml index 65f9254844..fcd7c66490 100644 --- a/quickstep/res/values-en-rCA/strings.xml +++ b/quickstep/res/values-en-rCA/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Freeform"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Move to external display"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Clear"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Close"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktop"</string> <string name="recents_empty_message" msgid="7040467240571714191">"No recent items"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"App usage settings"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Clear all"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Add new desk"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Recent apps"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minute"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Swipe up to go home"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Tap the home button to go to your home screen"</string> <string name="allset_description_generic" msgid="5385500062202019855">"You\'re ready to start using your <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"You’re ready to start using your device"</string> + <string name="default_device_name" msgid="6660656727127422487">"device"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"System navigation settings"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Your <xliff:g id="DEVICE">%1$s</xliff:g> is \nready!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Your device is \nready!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Enjoy your new <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Choose how to navigate"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Swipe up"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Tap the home button"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"phone"</string> <string name="action_share" msgid="2648470652637092375">"Share"</string> <string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string> <string name="action_split" msgid="2098009717623550676">"Split"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Choose another app to use split screen"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"This action isn\'t allowed by the app or your organization"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgets not currently supported, please select another app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Skip navigation tutorial?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"You can find this later in the <xliff:g id="NAME">%1$s</xliff:g> app"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Cancel"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Skip"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rotate screen"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animation showing how the taskbar comes into view from the bottom of the screen, and automatically hides when not in use"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animation showing how to pin your taskbar using a toggle, so the taskbar remains permanently visible at the bottom of the screen"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animation showing how to create a split screen, by dragging and dropping an app from the taskbar above an open app"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animation showing how to access suggested apps on your device"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animation showing how to search for an item on screen, by touching and holding the action key and selecting the area the item is in"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Taskbar education"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Drag an app to the side to use 2 apps at once"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Slow-swipe up to show the Taskbar"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Always show Taskbar"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Change navigation mode"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Taskbar Divider"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Other recent apps"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Taskbar Overflow"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Move to top/left"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Move to bottom/right"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Open app as a bubble"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Close button"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Pin to taskbar"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Unpin from taskbar"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Nudge"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Close"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Nudge image"</string> </resources> diff --git a/quickstep/res/values-en-rGB/strings.xml b/quickstep/res/values-en-rGB/strings.xml index b74ac3cfa0..87a65e813b 100644 --- a/quickstep/res/values-en-rGB/strings.xml +++ b/quickstep/res/values-en-rGB/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Freeform"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Move to external display"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Clear"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Close"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktop"</string> <string name="recents_empty_message" msgid="7040467240571714191">"No recent items"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"App usage settings"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Clear all"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Add new desk"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Recent apps"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minute"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Swipe up to go home"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Tap the home button to go to your home screen"</string> <string name="allset_description_generic" msgid="5385500062202019855">"You’re ready to start using your <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"You\'re ready to start using your device"</string> + <string name="default_device_name" msgid="6660656727127422487">"device"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"System navigation settings"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Your <xliff:g id="DEVICE">%1$s</xliff:g> is \nready!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Your device is \nready!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Enjoy your new <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Choose how to navigate"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Swipe up"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Tap the Home button"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"phone"</string> <string name="action_share" msgid="2648470652637092375">"Share"</string> <string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string> <string name="action_split" msgid="2098009717623550676">"Split"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Choose another app to use split screen"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"This action isn\'t allowed by the app or your organisation"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgets not currently supported; please select another app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Skip navigation tutorial?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"You can find this later in the <xliff:g id="NAME">%1$s</xliff:g> app"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Cancel"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Skip"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rotate screen"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animation showing how the taskbar comes into view from the bottom of the screen, and automatically hides when not in use"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animation showing how to pin your taskbar using a toggle, so that the taskbar remains permanently visible at the bottom of the screen"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animation showing how to create a split screen, by dragging and dropping an app from the taskbar above an open app"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animation showing how to access suggested apps on your device"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animation showing how to search for an item on screen, by touching and holding the action key and selecting the area the item is in"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Taskbar education"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Drag an app to the side to use two apps at once"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Slow-swipe up to show the Taskbar"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Always show Taskbar"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Change navigation mode"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Taskbar divider"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Other recent apps"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Taskbar overflow"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Move to top/left"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Move to bottom/right"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Open app as a bubble"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Close button"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Pin to taskbar"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Unpin from taskbar"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Nudge"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Close"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Nudge image"</string> </resources> diff --git a/quickstep/res/values-en-rIN/strings.xml b/quickstep/res/values-en-rIN/strings.xml index b74ac3cfa0..87a65e813b 100644 --- a/quickstep/res/values-en-rIN/strings.xml +++ b/quickstep/res/values-en-rIN/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Freeform"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Move to external display"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Clear"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Close"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktop"</string> <string name="recents_empty_message" msgid="7040467240571714191">"No recent items"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"App usage settings"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Clear all"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Add new desk"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Recent apps"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minute"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Swipe up to go home"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Tap the home button to go to your home screen"</string> <string name="allset_description_generic" msgid="5385500062202019855">"You’re ready to start using your <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"You\'re ready to start using your device"</string> + <string name="default_device_name" msgid="6660656727127422487">"device"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"System navigation settings"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Your <xliff:g id="DEVICE">%1$s</xliff:g> is \nready!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Your device is \nready!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Enjoy your new <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Choose how to navigate"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Swipe up"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Tap the Home button"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"phone"</string> <string name="action_share" msgid="2648470652637092375">"Share"</string> <string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string> <string name="action_split" msgid="2098009717623550676">"Split"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Choose another app to use split screen"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"This action isn\'t allowed by the app or your organisation"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgets not currently supported; please select another app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Skip navigation tutorial?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"You can find this later in the <xliff:g id="NAME">%1$s</xliff:g> app"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Cancel"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Skip"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rotate screen"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animation showing how the taskbar comes into view from the bottom of the screen, and automatically hides when not in use"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animation showing how to pin your taskbar using a toggle, so that the taskbar remains permanently visible at the bottom of the screen"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animation showing how to create a split screen, by dragging and dropping an app from the taskbar above an open app"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animation showing how to access suggested apps on your device"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animation showing how to search for an item on screen, by touching and holding the action key and selecting the area the item is in"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Taskbar education"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Drag an app to the side to use two apps at once"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Slow-swipe up to show the Taskbar"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Always show Taskbar"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Change navigation mode"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Taskbar divider"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Other recent apps"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Taskbar overflow"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Move to top/left"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Move to bottom/right"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Open app as a bubble"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Close button"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Pin to taskbar"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Unpin from taskbar"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Nudge"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Close"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Nudge image"</string> </resources> diff --git a/quickstep/res/values-es-rUS/strings.xml b/quickstep/res/values-es-rUS/strings.xml index 90b3652179..e48be38846 100644 --- a/quickstep/res/values-es-rUS/strings.xml +++ b/quickstep/res/values-es-rUS/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Formato libre"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Escritorio"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Mover a pantalla externa"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Borrar"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Cerrar"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Computadoras"</string> <string name="recents_empty_message" msgid="7040467240571714191">"No hay elementos recientes"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Configuración de uso de la app"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Cerrar todo"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Agregar escritorio nuevo"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Apps recientes"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g> (<xliff:g id="REMAINING_TIME">%2$s</xliff:g>)"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minuto"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Desliza el dedo hacia arriba para ir a la página principal"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Presiona el botón de inicio para ir a la pantalla principal"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Ya puedes comenzar a usar tu <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Ya puedes empezar a usar tu dispositivo"</string> + <string name="default_device_name" msgid="6660656727127422487">"dispositivo"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Configuración de navegación del sistema"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Tu <xliff:g id="DEVICE">%1$s</xliff:g>\nestá listo"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"El dispositivo\nestá listo"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Disfruta tu nuevo <xliff:g id="DEVICE">%1$s</xliff:g>."</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Elige cómo navegar"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Deslizar el dedo hacia arriba"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Presionar el botón de inicio"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"teléfono"</string> <string name="action_share" msgid="2648470652637092375">"Compartir"</string> <string name="action_screenshot" msgid="8171125848358142917">"Captura de pantalla"</string> <string name="action_split" msgid="2098009717623550676">"Pantalla dividida"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Elige otra app para usar la pantalla dividida"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"La app o tu organización no permiten realizar esta acción"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"En este momento, los widgets no son compatibles; selecciona otra app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"¿Omitir el instructivo de navegación?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Puedes encontrarlo en la app de <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Cancelar"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Omitir"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Girar pantalla"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animación que muestra cómo aparece la barra de tareas desde la parte inferior de la pantalla y se oculta automáticamente cuando no está en uso"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animación en la que se muestra cómo fijar la barra de tareas con un botón de activación para que permanezca visible de forma permanente en la parte inferior de la pantalla"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animación que muestra cómo crear una pantalla dividida arrastrando y soltando una app de la barra de tareas sobre una app abierta"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animación que muestra cómo acceder a las apps sugeridas en tu dispositivo"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animación que muestra cómo buscar un elemento en la pantalla, manteniendo presionada la tecla de acción y seleccionando el área en la que se encuentra el elemento"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Información sobre la barra de tareas"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Arrastra una app hacia un lado para usar 2 apps a la vez"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Desliza lento hacia arriba para ver la Barra de tareas"</string> @@ -127,7 +117,7 @@ <string name="taskbar_edu_features" msgid="3320337287472848162">"Aprovecha mejor la Barra de tareas"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"Mostrar siempre la Barra de tareas"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"Mantén presionado el divisor para mostrar siempre la Barra de tareas en la parte inferior de la pantalla"</string> - <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Mantén presionada la tecla de acción para buscar lo que ves en la pantalla"</string> + <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Mantén presionada la tecla de acción para buscar qué hay en la pantalla"</string> <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"Este producto usa la parte seleccionada de la pantalla para hacer búsquedas. Se aplican la <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>Política de Privacidad<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> y las <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>Condiciones del Servicio<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g> de Google."</string> <string name="taskbar_edu_close" msgid="887022990168191073">"Cerrar"</string> <string name="taskbar_edu_done" msgid="6880178093977704569">"Listo"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Barra de tareas visible"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Cambiar el modo de navegación"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Divisor de la Barra de tareas"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Otras apps recientes"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Barra de tareas ampliada"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Mover a la parte superior o izquierda"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Mover a la parte inferior o derecha"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Abrir app como burbuja"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Botón de cerrar"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Fijar a la barra"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"No fijar a la barra"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Aviso"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Cerrar"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Imagen de aviso"</string> </resources> diff --git a/quickstep/res/values-es/strings.xml b/quickstep/res/values-es/strings.xml index 67855a6fa3..cd919e2056 100644 --- a/quickstep/res/values-es/strings.xml +++ b/quickstep/res/values-es/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Formato libre"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Escritorio"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Mover a pantalla externa"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Borrar"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Cerrar"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Ordenador"</string> <string name="recents_empty_message" msgid="7040467240571714191">"No hay nada reciente"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Ajustes de uso de la aplicación"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Borrar todo"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Añadir nuevo escritorio"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Aplicaciones recientes"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g> (<xliff:g id="REMAINING_TIME">%2$s</xliff:g>)"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt;1 minuto"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Desliza hacia arriba para ir a la pantalla de inicio"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Toca el botón de inicio para ir a la pantalla de inicio"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Ya puedes empezar a usar tu <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Ya puedes empezar a usar tu dispositivo"</string> + <string name="default_device_name" msgid="6660656727127422487">"dispositivo"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Opciones de navegación"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"¡Todo listo para \ntu <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"¡Tu dispositivo está \nlisto!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"¡Disfruta de tu <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Elige cómo navegar"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Deslizar hacia arriba"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Toca el botón de inicio"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"teléfono"</string> <string name="action_share" msgid="2648470652637092375">"Compartir"</string> <string name="action_screenshot" msgid="8171125848358142917">"Hacer captura"</string> <string name="action_split" msgid="2098009717623550676">"Dividir"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Elige otra app para usar la pantalla dividida."</string> <string name="blocked_by_policy" msgid="2071401072261365546">"No puedes hacerlo porque la aplicación o tu organización no lo permiten"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Actualmente no se admiten widgets; selecciona otra aplicación"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"¿Saltar tutorial de navegación?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Puedes consultarlo en otro momento en la aplicación <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Cancelar"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Saltar"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Girar la pantalla"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animación que muestra cómo aparece la barra de tareas desde la parte inferior de la pantalla y se oculta automáticamente cuando no se usa"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animación que muestra cómo fijar la barra de tareas con un interruptor para que se muestre siempre en la parte inferior de la pantalla"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animación que muestra cómo dividir la pantalla arrastrando y soltando una aplicación de la barra de tareas sobre otra aplicación abierta"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animación que muestra cómo acceder a las aplicaciones sugeridas en tu dispositivo"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animación que muestra cómo buscar un elemento en la pantalla manteniendo pulsada la tecla de acción y seleccionando la zona en la que se encuentra el elemento"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Información sobre la barra de tareas"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Arrastra una aplicación hacia un lado para usar 2 a la vez"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Desliza hacia arriba lentamente para ver la barra de tareas"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Barra de tareas visible"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Cambiar el modo de navegación"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Divisor de Barra de Tareas"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Otras aplicaciones recientes"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Barra de tareas ampliada"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Mover arriba/a la izquierda"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Mover abajo/a la derecha"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Abrir aplicación como burbuja"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Botón de cerrar"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Fijar a la barra"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Desfijar de la barra"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Aviso"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Cerrar"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Imagen de aviso"</string> </resources> diff --git a/quickstep/res/values-et/strings.xml b/quickstep/res/values-et/strings.xml index 68ecf15f7b..297592bc14 100644 --- a/quickstep/res/values-et/strings.xml +++ b/quickstep/res/values-et/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Vabavorm"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Lauaarvuti režiim"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Liikuge välisele ekraanile"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Eemaldamine"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Sule"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Töölaud"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Hiljutisi üksusi pole"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Rakenduse kasutuse seaded"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Sule kõik"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Uue töölaua lisamine"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Hiljutised rakendused"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g> <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minut"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Avalehele liikumiseks pühkige üles"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Avakuvale liikumiseks puudutage avakuva nuppu"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Teie <xliff:g id="DEVICE">%1$s</xliff:g> on nüüd kasutamiseks valmis."</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Seade on nüüd kasutamiseks valmis."</string> + <string name="default_device_name" msgid="6660656727127422487">"seade"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Süsteemi navigeerimisseaded"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Teie <xliff:g id="DEVICE">%1$s</xliff:g> on \nvalmis!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Teie seade on \nvalmis!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Nautige oma uut <xliff:g id="DEVICE">%1$s</xliff:g> seadet!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Valige, kuidas navigeerida"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Pühkige üles"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Puudutage avakuva nuppu"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tahvelarvuti"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Jaga"</string> <string name="action_screenshot" msgid="8171125848358142917">"Ekraanipilt"</string> <string name="action_split" msgid="2098009717623550676">"Jaga pooleks"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Valige jagatud ekraanikuva jaoks muu rakendus."</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Rakendus või teie organisatsioon on selle toimingu keelanud"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Vidinaid praegu ei toetata, valige mõni muu rakendus"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Kas jätta navigeerimise õpetused vahele?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Leiate selle hiljem rakendusest <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Tühista"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Jäta vahele"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Pöörake ekraani"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animatsioon, mis näitab, kuidas tegumiriba ekraanikuva allosast nähtavale tuleb ja automaatselt peidetakse, kui seda ei kasutata"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animatsioon, mis näitab, kuidas tegumiriba lüliti abil kinnitada, et tegumiriba jääks ekraanikuva allosas pidevalt nähtavale"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animatsioon, mis näitab, kuidas luua jagatud ekraanikuva, pukseerides rakenduse tegumiribalt avatud rakenduse peale"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animatsioon, mis näitab, kuidas oma seadmes soovitatud rakendustele juurde pääseda"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animatsioon, mis näitab, kuidas ekraanikuval üksust otsida, puudutades pikalt toiminguklahvi ja valides ala, milles üksus asub"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Tegumiriba tutvustus"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"2 rakenduse korraga kasutamiseks lohistage rakendus kõrvale"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Tegumiriba kuvamiseks pühkige aeglaselt üles"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Kuva tegumiriba alati"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Navigeerimisrežiimi muutmine"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Tegumiriba jagaja"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Muud hiljutised rakendused"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Tegumiriba ületäide"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Teisalda üles/vasakule"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Teisalda alla/paremale"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Rakenduse avamine mullina"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Sulgemisnupp"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Tegumiribale kinnitamine"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Tegumiribalt vabastamine"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Müksamine"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Sulgemine"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Müksamise pilt"</string> </resources> diff --git a/quickstep/res/values-eu/strings.xml b/quickstep/res/values-eu/strings.xml index 320146dcca..fca061ead7 100644 --- a/quickstep/res/values-eu/strings.xml +++ b/quickstep/res/values-eu/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Modu librea"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Ordenagailua"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Eraman kanpoko pantailara"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Garbitu"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Itxi"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Mahaigaina"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Ez dago azkenaldi honetako ezer"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Aplikazioen erabileraren ezarpenak"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Garbitu guztiak"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Gehitu beste lan-eremu bat"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Azkenaldiko aplikazioak"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g> (<xliff:g id="REMAINING_TIME">%2$s</xliff:g>)"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Pasatu hatza gora orri nagusira joateko"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Orri nagusira joateko, sakatu Hasiera botoia"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Prest zaude <xliff:g id="DEVICE">%1$s</xliff:g> erabiltzen hasteko"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Prest zaude gailua erabiltzen hasteko"</string> + <string name="default_device_name" msgid="6660656727127422487">"gailua"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Sisteman nabigatzeko ezarpenak"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> \nprest duzu!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Gailua \nprest duzu!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Gozatu <xliff:g id="DEVICE">%1$s</xliff:g> berriaz!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Aukeratu nabigatzeko modua"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Pasatu hatza gora"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Sakatu Hasiera botoia"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tableta"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefonoa"</string> <string name="action_share" msgid="2648470652637092375">"Partekatu"</string> <string name="action_screenshot" msgid="8171125848358142917">"Atera pantaila-argazki bat"</string> <string name="action_split" msgid="2098009717623550676">"Zatitu"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Pantaila zatitzeko, aukeratu beste aplikazio bat"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Aplikazioak edo erakundeak ez du eman ekintza hori gauzatzeko baimena"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Une honetan ez dira onartzen widgetak. Hautatu beste aplikazio bat."</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Nabigazio-tutoriala saltatu nahi duzu?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"<xliff:g id="NAME">%1$s</xliff:g> aplikazioan dago eskuragarri tutoriala"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Utzi"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Saltatu"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Biratu pantaila"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animazioa: zereginen barra pantailaren behealdetik agertzen da, eta automatikoki ezkutatzen da erabiltzen ez denean"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animazioa: etengailuaren bidez zereginen barra ainguratzea, zereginen barra beti ikusgai egon dadin pantailaren behealdean"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animazioa: pantaila zatitua sortzea, irekitako aplikazio baten gaineko zereginen barratik aplikazio bat arrastatuz eta jareginez"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animazioa: iradokitako aplikazioak gailuan atzitzea"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animazioa: pantailan elementu bat bilatzea, ekintza-tekla sakatuta edukita eta elementua daukan eremua haututa"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Zereginen barra erabiltzeko argibideak"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Bi aplikazio batera erabiltzeko, arrastatu bat albo batera"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Zereginen barra ikusteko, pasatu hatza gora mantso"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Erakutsi beti zereginen barra"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Aldatu nabigazio modua"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Zereginen barraren zatitzailea"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Azkenaldiko beste aplikazio batzuk"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Zereginen barraren luzapena"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Eraman gora, ezkerretara"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Eraman behera, eskuinetara"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Ireki aplikazioa burbuila gisa"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Ixteko botoia"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Ainguratu zereginen barran"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Kendu aingura zereginen barratik"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Abisua"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Itxi"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Bultzatu irudia"</string> </resources> diff --git a/quickstep/res/values-fa/strings.xml b/quickstep/res/values-fa/strings.xml index 83b7b83be9..8b2537883b 100644 --- a/quickstep/res/values-fa/strings.xml +++ b/quickstep/res/values-fa/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Freeform"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"حالت رایانه"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"انتقال به نمایشگر خارجی"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"پاک کردن"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"بستن"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"رایانه"</string> <string name="recents_empty_message" msgid="7040467240571714191">"چیز جدیدی اینجا نیست"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"تنظیمات استفاده از برنامه"</string> <string name="recents_clear_all" msgid="5328176793634888831">"پاک کردن همه"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"افزودن میزکار جدید"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"برنامه‌های اخیر"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>، <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; ۱ دقیقه"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"برای رفتن به صفحه اصلی، تند به‌بالا بکشید"</string> <string name="allset_button_hint" msgid="2395219947744706291">"برای رفتن به صفحه اصلی، روی دکمه صفحه اصلی تک‌ضرب بزنید"</string> <string name="allset_description_generic" msgid="5385500062202019855">"آماده‌اید از <xliff:g id="DEVICE">%1$s</xliff:g> خود استفاده کنید"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"آماده‌اید از دستگاهتان استفاده کنید"</string> + <string name="default_device_name" msgid="6660656727127422487">"دستگاه"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"تنظیمات پیمایش سیستم"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"‫<xliff:g id="DEVICE">%1$s</xliff:g> شما \nآماده است!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"دستگاهتان \nآماده است!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"از <xliff:g id="DEVICE">%1$s</xliff:g> جدیدتان لذت ببرید!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"انتخاب نحوه پیمایش"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"تند کشیدن به بالا"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"تک‌ضرب زدن روی دکمه صفحه اصلی"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"رایانه لوحی"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"تلفن"</string> <string name="action_share" msgid="2648470652637092375">"هم‌رسانی"</string> <string name="action_screenshot" msgid="8171125848358142917">"نماگرفت"</string> <string name="action_split" msgid="2098009717623550676">"دونیمه"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"انتخاب برنامه‌ای دیگر برای استفاده از صفحه دونیمه"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"برنامه یا سازمان شما اجازه نمی‌دهد این کنش انجام شود."</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"درحال‌حاضر از ابزاره‌ها پشتیبانی نمی‌شود، لطفاً برنامه دیگری را انتخاب کنید"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"آموزش گام‌به‌گام پیمایش رد شود؟"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"می‌توانید آن را بعداً در برنامه <xliff:g id="NAME">%1$s</xliff:g> پیدا کنید"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"لغو"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"رد شدن"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"چرخاندن صفحه"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"پویانمایی‌ای که نحوه نمایان شدن نوار وظیفه از پایین صفحه و پنهان شدن خودکار آن را وقتی استفاده نمی‌شود نشان می‌دهد"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"پویانمایی‌ای که نحوه سنجاق کردن نوار وظیفه را بااستفاده از کلید نشان می‌دهد تا نوار وظیفه همیشه در پایین صفحه نمایان باشد"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"پویانمایی‌ای که نحوه ایجاد صفحه دونیمه را ازطریق کشیدن و رها کردن برنامه از نوار وظیفه بالای یک برنامه باز نشان می‌دهد"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"پویانمایی‌ای که نحوه دسترسی به برنامه‌های پیشنهادی در دستگاه را نشان می‌دهد"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"پویانمایی‌ای که نحوه جستجو کردن یک مورد در صفحه را بااستفاده از لمس کردن و نگه داشتن دکمه کنش و انتخاب کردن ناحیه‌ای که مورد در آن است نشان می‌دهد"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"آموزش نوار وظیفه"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"برای استفاده هم‌زمان از ۲ برنامه، یک برنامه را به‌کنار بکشید"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"برای نمایش «نوار وظیفه»، انگشتتان را آهسته به‌بالا بکشید"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"نوار وظیفه همیشه نشان داده شود"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"تغییر حالت پیمایش"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"جداکننده نوار وظیفه"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"سایر برنامه‌های اخیر"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"سرریز نوار وظیفه"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"انتقال به بالا/ چپ"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"انتقال به پایین/ راست"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"باز کردن برنامه به‌صورت حبابک"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"دکمه بستن"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"سنجاق به نوار وظیفه"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"برداشتن از نواروظیفه"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"یادآوری خودکار"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"بستن"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"تصویر یادآوری خودکار"</string> </resources> diff --git a/quickstep/res/values-fi/strings.xml b/quickstep/res/values-fi/strings.xml index bdfd0aafbb..2168653bfd 100644 --- a/quickstep/res/values-fi/strings.xml +++ b/quickstep/res/values-fi/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Vapaamuotoinen"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Tietokone"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Siirrä ulkoiselle näytölle"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Tyhjennä"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Sulje"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Tietokone"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Ei viimeaikaisia kohteita"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Sovelluksen käyttöasetukset"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Poista kaikki"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Lisää uusi työpöytä"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Viimeisimmät sovellukset"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Siirry aloitusnäytölle pyyhkäisemällä ylös"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Siirry aloitusnäytölle napauttamalla aloitusnäyttöpainiketta"</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> on nyt valmis käytettäväksi"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Laite on nyt valmis käytettäväksi"</string> + <string name="default_device_name" msgid="6660656727127422487">"Laite"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Järjestelmän navigointiasetukset"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> on\nvalmis!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Laite on\nvalmis"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Nauti uudesta laitteesta (<xliff:g id="DEVICE">%1$s</xliff:g>)!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Valitse siirtymistapa"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Pyyhkäise ylös"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Napauta aloitusnäyttöpainiketta"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tabletti"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"puhelin"</string> <string name="action_share" msgid="2648470652637092375">"Jaa"</string> <string name="action_screenshot" msgid="8171125848358142917">"Kuvakaappaus"</string> <string name="action_split" msgid="2098009717623550676">"Jaettu näyttö"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Käytä jaettua näyttöä valitsemalla toinen sovellus"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Sovellus tai organisaatio ei salli tätä toimintoa"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgetejä ei tällä hetkellä tueta, valitse toinen sovellus"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Ohitetaanko navigointiohje?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Löydät tämän myöhemmin sovelluksesta: <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Peru"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Ohita"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Käännä näyttö"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animaatio, jossa näytetään, miten tehtäväpalkki tulee esiin näytön alareunasta ja piilotetaan automaattisesti, kun se ei ole käytössä"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animaatio, jossa näytetään, miten tehtäväpalkki kiinnitetään valitsimella, jotta se näkyy aina näytön alareunassa"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animaatio, jossa näytetään, miten jaettu näyttö luodaan vetämällä ja pudottamalla sovellus tehtäväpalkista avoimen sovelluksen päälle"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animaatio, jossa näytetään, miten ehdotettuihin sovelluksiin pääsee laitteella"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animaatio, jossa näytetään, miten näytöllä olevaa kohdetta haetaan koskettamalla toimintonäppäintä pitkään ja valitsemalla alue, jolla kohde on"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Tehtäväpalkin ohje"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Vedä sovellus sivuun ja käytä kahta sovellusta"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Näytä tehtäväpalkki pyyhkäisemällä ylös hitaasti"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Näytä tehtäväpalkki aina"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Vaihda navigointitilaa"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Tehtäväpalkin jakaja"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Muut viimeaikaiset sovellukset"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Tehtäväpalkin ylivuotu"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Siirrä ylös tai vasemmalle"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Siirrä alas tai oikealle"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Avaa sovellus kuplana"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Sulje-painike"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Kiinnitä palkkiin"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Poista palkista"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Tökkäys"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Sulje"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Tökkää kuvaa"</string> </resources> diff --git a/quickstep/res/values-fr-rCA/strings.xml b/quickstep/res/values-fr-rCA/strings.xml index 11651d6a88..51c9c7a3a0 100644 --- a/quickstep/res/values-fr-rCA/strings.xml +++ b/quickstep/res/values-fr-rCA/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Forme libre"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Bureau"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Passer à un écran externe"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Effacer"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Fermer"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Bureau"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Aucun élément récent"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Paramètres d\'utilisation de l\'appli"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Tout effacer"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Ajouter un nouveau bureau"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Applis récentes"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g> : <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -80,7 +79,7 @@ <string name="overview_gesture_intro_title" msgid="2902054412868489378">"Balayez pour basculer entre les applis"</string> <string name="overview_gesture_intro_subtitle" msgid="4968091015637850859">"Pour changer d\'appli, balayez l\'écran de bas en haut, maintenez le doigt dessus, puis relâchez-le."</string> <string name="overview_gesture_tutorial_title" msgid="4125835002668708720">"Changer d\'appli"</string> - <string name="overview_gesture_tutorial_subtitle" msgid="5253549754058973071">"Balayez l\'écran de bas en haut, maintenez le doigt en place, puis relâchez-le."</string> + <string name="overview_gesture_tutorial_subtitle" msgid="5253549754058973071">"Balayez l\'écran de bas en haut, maintenez le doigt en place, puis relâchez-le"</string> <string name="overview_gesture_tutorial_success" msgid="1910267697807973076">"Bien joué!"</string> <string name="gesture_tutorial_confirm_title" msgid="6201516182040074092">"Terminé"</string> <string name="gesture_tutorial_action_button_label" msgid="6249846312991332122">"OK"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Balayez l\'écran vers le haut pour accéder à l\'écran d\'accueil"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Toucher le bouton d\'accueil pour passer sur votre écran d\'accueil"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Vous êtes maintenant prêt à utiliser votre <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Vous êtes maintenant prêt à utiliser votre appareil."</string> + <string name="default_device_name" msgid="6660656727127422487">"appareil"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Paramètres de navigation du système"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Votre appareil <xliff:g id="DEVICE">%1$s</xliff:g> est \nprêt!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Votre appareil est \nprêt!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Profitez de votre nouvel appareil <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Choisir un mode de navigation"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Balayez l\'écran vers le haut"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Touchez la touche d\'accueil"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablette"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"téléphone"</string> <string name="action_share" msgid="2648470652637092375">"Partager"</string> <string name="action_screenshot" msgid="8171125848358142917">"Capture d\'écran"</string> <string name="action_split" msgid="2098009717623550676">"Diviser"</string> @@ -113,17 +104,16 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Choisir une autre appli pour utiliser l\'écran partagé"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"L\'appli ou votre organisation n\'autorise pas cette action"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Les widgets ne sont actuellement pas pris en charge. Veuillez sélectionner une autre appli"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Ignorer le tutoriel sur la navigation?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Vous trouverez le tutoriel dans l\'appli <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Annuler"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Ignorer"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Faire pivoter l\'écran"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animation montrant comment la Barre des tâches s\'affiche dans la partie inférieure de l\'écran et se masque automatiquement lorsqu\'elle n\'est pas utilisée"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animation montrant comment épingler la Barre des tâches à l\'aide d\'un commutateur, de sorte qu\'elle reste visible en permanence dans la partie inférieure de l\'écran"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animation montrant comment créer un Écran divisé, en glissant-déposant une appli de la Barre des tâches au-dessus d\'une appli ouverte"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animation montrant comment accéder aux applis suggérées sur votre appareil"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animation montrant comment rechercher un élément à l\'écran, en touchant et en maintenant le doigt sur la touche d\'action et en sélectionnant la zone dans laquelle se trouve l\'élément"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Informations sur la barre des tâches"</string> - <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Faites glisser une appli sur le côté pour en utiliser deux à la fois."</string> + <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Faites glisser une appli sur le côté pour en utiliser deux à la fois"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Balayez lentement vers le haut pour voir la barre des tâches"</string> - <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"Obtenez des suggestions d\'applis en fonction de vos routines."</string> - <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Maintenez le doigt sur le séparateur pour épingler la barre des tâches."</string> + <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"Obtenez des suggestions d\'applis en fonction de vos routines"</string> + <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Maintenez le doigt sur le séparateur pour épingler la barre des tâches"</string> <string name="taskbar_edu_features" msgid="3320337287472848162">"Faites-en plus avec la barre des tâches"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"Toujours afficher la Barre des tâches"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"Pour toujours afficher la Barre des tâches en bas de l\'écran, maintenez le doigt sur le séparateur"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Tjrs afficher barre des tâches"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Changer de mode de navigation"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Séparateur de la barre des tâches"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Autres applis récentes"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Barre des tâches à développer"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Déplacer vers le coin supérieur gauche de l\'écran"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Déplacer vers le coin inférieur droit de l\'écran"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Ouvrir l\'appli sous forme de bulle"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Bouton Fermer"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Éping. (barre tâche)"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Détacher (bar. tâc.)"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Coup de coude"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Fermer"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Coup de coude sur l\'image"</string> </resources> diff --git a/quickstep/res/values-fr/strings.xml b/quickstep/res/values-fr/strings.xml index 4fe87d7f5c..20c028b14f 100644 --- a/quickstep/res/values-fr/strings.xml +++ b/quickstep/res/values-fr/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Format libre"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Mode ordinateur"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Déplacer vers l\'écran externe"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Effacer"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Fermer"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Mode ordinateur"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Aucun élément récent"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Paramètres de consommation de l\'application"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Tout effacer"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Ajouter un bureau"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Applications récentes"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -68,9 +67,9 @@ <string name="home_gesture_feedback_complete_with_follow_up" msgid="8766981412895888417">"Vous avez appris le geste pour revenir à l\'écran d\'accueil. Apprenez ensuite à revenir en arrière."</string> <string name="home_gesture_feedback_complete_without_follow_up" msgid="2978063221383413443">"Vous connaissez maintenant le geste pour revenir à l\'écran d\'accueil"</string> <string name="home_gesture_intro_title" msgid="836590312858441830">"Balayez pour revenir à l\'écran d\'accueil"</string> - <string name="home_gesture_intro_subtitle" msgid="2632238748497975326">"Balayez vers le haut depuis le bas de l\'écran. Ce geste vous ramènera toujours à l\'écran d\'accueil."</string> + <string name="home_gesture_intro_subtitle" msgid="2632238748497975326">"Balayez l\'écran de bas en haut. Ce geste vous ramènera toujours à l\'écran d\'accueil."</string> <string name="home_gesture_tutorial_title" msgid="3126834347496917376">"Retour à l\'accueil"</string> - <string name="home_gesture_tutorial_subtitle" msgid="7245995490408668778">"Balayez vers le haut depuis le bas de l\'écran"</string> + <string name="home_gesture_tutorial_subtitle" msgid="7245995490408668778">"Balayez l\'écran de bas en haut"</string> <string name="home_gesture_tutorial_success" msgid="1736295017642244751">"Bravo !"</string> <string name="overview_gesture_feedback_swipe_too_far_from_edge" msgid="6402349235265407385">"Veillez à balayer vers le haut depuis le bord inférieur de l\'écran"</string> <string name="overview_gesture_feedback_home_detected" msgid="663432226180397138">"Essayez d\'appuyer plus longtemps sur la fenêtre avant de relever le doigt"</string> @@ -78,9 +77,9 @@ <string name="overview_gesture_feedback_complete_with_follow_up" msgid="3544611727467765026">"Vous avez appris à utiliser les gestes. Pour les désactiver, accédez aux paramètres."</string> <string name="overview_gesture_feedback_complete_without_follow_up" msgid="2903050864432331629">"Vous connaissez maintenant le geste pour passer d\'une appli à l\'autre"</string> <string name="overview_gesture_intro_title" msgid="2902054412868489378">"Balayez pour passer d\'une appli à l\'autre"</string> - <string name="overview_gesture_intro_subtitle" msgid="4968091015637850859">"Pour changer d\'appli, balayez vers le haut depuis le bas de l\'écran, maintenez l\'appui et relâchez."</string> + <string name="overview_gesture_intro_subtitle" msgid="4968091015637850859">"Pour changer d\'appli, balayez l\'écran de bas en haut, appuyez de manière prolongée et relâchez."</string> <string name="overview_gesture_tutorial_title" msgid="4125835002668708720">"Changer d\'appli"</string> - <string name="overview_gesture_tutorial_subtitle" msgid="5253549754058973071">"Balayez vers le haut depuis le bas de l\'écran, maintenez l\'appui et relâchez"</string> + <string name="overview_gesture_tutorial_subtitle" msgid="5253549754058973071">"Balayez l\'écran de bas en haut, appuyez de manière prolongée, puis relâchez"</string> <string name="overview_gesture_tutorial_success" msgid="1910267697807973076">"Bravo !"</string> <string name="gesture_tutorial_confirm_title" msgid="6201516182040074092">"Vous avez terminé"</string> <string name="gesture_tutorial_action_button_label" msgid="6249846312991332122">"OK"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Balayez vers le haut pour revenir à l\'accueil"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Appuyez sur le bouton d\'accueil pour accéder à votre écran d\'accueil"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Vous pouvez maintenant utiliser votre <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Vous pouvez maintenant utiliser votre appareil"</string> + <string name="default_device_name" msgid="6660656727127422487">"appareil"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Paramètres de navigation système"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Votre <xliff:g id="DEVICE">%1$s</xliff:g> est \nprêt !"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Votre appareil est \nprêt !"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Profitez de votre nouveau <xliff:g id="DEVICE">%1$s</xliff:g> !"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Choisissez un mode de navigation"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Balayer l\'écran vers le haut"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Appuyer sur le bouton d\'accueil"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablette"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"téléphone"</string> <string name="action_share" msgid="2648470652637092375">"Partager"</string> <string name="action_screenshot" msgid="8171125848358142917">"Capture d\'écran"</string> <string name="action_split" msgid="2098009717623550676">"Partager"</string> @@ -113,22 +104,21 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Sélect. autre appli pour utiliser l\'écran partagé"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Cette action n\'est pas autorisée par l\'application ou par votre organisation"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Les widgets ne sont actuellement pas pris en charge, veuillez sélectionner une autre appli"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Ignorer le tutoriel de navigation ?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Vous le retrouverez dans l\'appli <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Annuler"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Passer"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Faire pivoter l\'écran"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animation montrant comment la barre des tâches apparaît en bas de l\'écran et se cache automatiquement lorsqu\'elle n\'est pas utilisée"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animation montrant comment épingler la barre des tâches à l\'aide d\'un bouton d\'activation pour qu\'elle reste visible en permanence en bas de l\'écran"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animation montrant comment créer un écran partagé en faisant glisser-déposer une appli de la barre des tâches au-dessus d\'une appli ouverte"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animation montrant comment accéder aux applis suggérées sur votre appareil"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animation montrant comment rechercher un élément à l\'écran en appuyant de manière prolongée sur la touche d\'action et en sélectionnant la zone où se trouve l\'élément"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Fonctionnement de la barre des tâches"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Faites glisser une appli sur le côté pour en utiliser 2 à la fois"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Balayez lentement vers le haut pour voir la barre des tâches"</string> <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"Obtenez des suggestions d\'applis basées sur vos habitudes"</string> - <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Appuyez de manière prolongée sur le séparateur pour épingler la barre des tâches"</string> + <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Appui prolongé sur le séparateur pour épingler la barre des tâches"</string> <string name="taskbar_edu_features" msgid="3320337287472848162">"Faites-en plus avec la barre des tâches"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"Toujours afficher la barre des tâches"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"Pour toujours afficher la barre des tâches en bas de votre écran, appuyez sur le séparateur de manière prolongée."</string> - <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Appuyez de manière prolongée sur la touche d\'action pour lancer une recherche sur ce que vous voyez à l\'écran"</string> - <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"Ce produit utilise la zone sélectionnée de l\'écran pour effectuer une recherche. Les <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>Règles de confidentialité<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> et les <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>Conditions d\'utilisation<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g> de Google s\'appliquent."</string> + <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Appuyez de manière prolongée sur la touche d\'action pour rechercher ce qui se trouve à l\'écran"</string> + <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"Ce produit utilise la zone sélectionnée de l\'écran pour rechercher. Les <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>Règles de confidentialité<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> et les <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>Conditions d\'utilisation<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g> de Google s\'appliquent."</string> <string name="taskbar_edu_close" msgid="887022990168191073">"Fermer"</string> <string name="taskbar_edu_done" msgid="6880178093977704569">"OK"</string> <string name="taskbar_button_home" msgid="2151398979630664652">"Accueil"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Barre des tâches tjs visible"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Modifier le mode de navigation"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Séparateur de barre des tâches"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Autres applis récentes"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Développement de la barre des tâches"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Déplacer en haut ou à gauche"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Déplacer en bas ou à droite"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Ouvrir l\'appli sous forme de bulle"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Bouton \"Fermer\""</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Épingler à la barre"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Désépingler de la barre"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Rappel automatique"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Fermer"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Image de rappel automatique"</string> </resources> diff --git a/quickstep/res/values-gl/strings.xml b/quickstep/res/values-gl/strings.xml index 1a9ed8b1b2..b1b78df039 100644 --- a/quickstep/res/values-gl/strings.xml +++ b/quickstep/res/values-gl/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Forma libre"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Escritorio"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Mover á pantalla externa"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Borrar"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Pechar"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Ordenador"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Non hai elementos recentes"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Configuración do uso de aplicacións"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Borrar todo"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Engadir un novo escritorio"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Apps recentes"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g> (<xliff:g id="REMAINING_TIME">%2$s</xliff:g>)"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt;1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Pasa o dedo cara arriba para ir á pantalla de inicio"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Toca o botón de inicio para ir á pantalla de inicio"</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> dispoñible para comezar a utilizar"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Xa está todo listo para que empeces a usar o teu dispositivo"</string> + <string name="default_device_name" msgid="6660656727127422487">"Dispositivo"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Configuración da navegación do sistema"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Xa está todo listo \nno teu dispositivo (<xliff:g id="DEVICE">%1$s</xliff:g>)!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Xa está todo listo \nno teu dispositivo!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Desfruta do teu novo dispositivo (<xliff:g id="DEVICE">%1$s</xliff:g>)!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Escolle como navegar"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Pasa o dedo cara arriba"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Toca o botón de inicio"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tableta"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"teléfono"</string> <string name="action_share" msgid="2648470652637092375">"Compartir"</string> <string name="action_screenshot" msgid="8171125848358142917">"Facer captura"</string> <string name="action_split" msgid="2098009717623550676">"Dividir"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Escolle outra app para usar a pantalla dividida"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"A aplicación ou a túa organización non permite realizar esta acción"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Actualmente os widgets non se admiten. Selecciona outra aplicación"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Queres omitir o titorial de navegación?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Podes atopalo máis tarde na aplicación <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Cancelar"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Omitir"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Xira a pantalla"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animación que mostra como aparece a barra de tarefas desde a parte inferior da pantalla e como se oculta automaticamente cando non se utiliza"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animación que mostra como fixar a barra de tarefas mediante un interruptor para que a barra estea sempre visible na parte inferior da pantalla"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animación que mostra como crear unha pantalla dividida arrastrando e soltando unha aplicación desde a barra de tarefas sobre unha aplicación aberta"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animación que mostra como acceder ás aplicacións suxeridas no teu dispositivo"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animación que mostra como buscar un elemento na pantalla mantendo premida a tecla de acción e seleccionando a área na que está o elemento"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Información sobre a función Barra de tarefas"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Arrastra unha aplicación cara a un lado para usar dúas á vez"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Pasa o dedo amodo cara arriba para ver a barra de tarefas"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Ver sempre a barra de tarefas"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Cambiar modo de navegación"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Divisor da Barra de tarefas"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Outras aplicacións recentes"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Menú adicional da barra de tarefas"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Mover á parte superior ou á esquerda"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Mover á parte inferior ou á dereita"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Abrir aplicación como unha burbulla"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Botón Pechar"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Fixar na barra"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Soltar da barra"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Aviso"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Pechar"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Imaxe de aviso"</string> </resources> diff --git a/quickstep/res/values-gu/strings.xml b/quickstep/res/values-gu/strings.xml index f230473bc1..e92d4ab60d 100644 --- a/quickstep/res/values-gu/strings.xml +++ b/quickstep/res/values-gu/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"ફ્રિફોર્મ"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ડેસ્કટૉપ"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"બાહ્ય ડિસ્પ્લે પર ખસેડો"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"સાફ"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"બંધ કરો"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ડેસ્કટૉપ"</string> <string name="recents_empty_message" msgid="7040467240571714191">"તાજેતરની કોઈ આઇટમ નથી"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"ઍપ વપરાશનું સેટિંગ"</string> <string name="recents_clear_all" msgid="5328176793634888831">"બધું સાફ કરો"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"નવી ડેસ્ક ઉમેરો"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"તાજેતરની ઍપ"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 મિનિટ"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"હોમ પર જવા માટે ઉપરની તરફ સ્વાઇપ કરો"</string> <string name="allset_button_hint" msgid="2395219947744706291">"તમારી હોમ સ્ક્રીન પર જવા માટે હોમ બટન ટૅપ કરો"</string> <string name="allset_description_generic" msgid="5385500062202019855">"તમે તમારા <xliff:g id="DEVICE">%1$s</xliff:g>નો ઉપયોગ કરવાનું શરૂ કરવા માટે તૈયાર છો"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"તમે તમારા ડિવાઇસનો ઉપયોગ કરવાનું શરૂ કરવા માટે તૈયાર છો"</string> + <string name="default_device_name" msgid="6660656727127422487">"ડિવાઇસ"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"સિસ્ટમના નૅવિગેશન સેટિંગ"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"તમારો <xliff:g id="DEVICE">%1$s</xliff:g> \nતૈયાર છે!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"તમારું ડિવાઇસ \nતૈયાર છે!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"તમારા નવા <xliff:g id="DEVICE">%1$s</xliff:g>નો અનુભવ માણો!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"નૅવિગેટ કરવાની રીત પસંદ કરો"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ઉપરની તરફ સ્વાઇપ કરો"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"હોમ બટન પર ટૅપ કરો"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ટૅબ્લેટ"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ફોન"</string> <string name="action_share" msgid="2648470652637092375">"શેર કરો"</string> <string name="action_screenshot" msgid="8171125848358142917">"સ્ક્રીનશૉટ"</string> <string name="action_split" msgid="2098009717623550676">"વિભાજિત કરો"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"સ્ક્રીન વિભાજનનો ઉપયોગ કરવા કોઈ અન્ય ઍપ પસંદ કરો"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ઍપ કે તમારી સંસ્થા દ્વારા આ ક્રિયા કરવાની મંજૂરી નથી"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"વિજેટ હાલમાં સપોર્ટેડ નથી, કૃપા કરીને કોઈ બીજી ઍપ પસંદ કરો"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"નૅવિગેશન ટ્યૂટૉરિઅલ છોડી દઈએ?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"તમે આને પછીથી <xliff:g id="NAME">%1$s</xliff:g> ઍપમાં જોઈ શકો છો"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"રદ કરો"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"છોડો"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"સ્ક્રીન ફેરવો"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"ઍનિમેશન બતાવે છે કે કેવી રીતે ટાસ્કબાર સ્ક્રીનના તળિયેથી દૃશ્યમાં આવે છે અને ઉપયોગમાં ન હોય ત્યારે ઑટોમૅટિક રીતે છુપાઇ જાય છે"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"ઍનિમેશન બતાવે છે કે કેવી રીતે ટૉગલ કરો બટનનો ઉપયોગ કરીને તમારા ટાસ્કબારને પિન કરવું, જેથી કરીને સ્ક્રીનના તળિયે ટાસ્કબાર કાયમી રીતે દેખાતું રહે"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"ઍનિમેશન બતાવે છે કે કેવી રીતે કોઈ ખુલ્લી ઍપની ઉપર ટાસ્કબારમાંથી ઍપને ખેંચી અને છોડીને વિભાજીત સ્ક્રીન બનાવવી"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"ઍનિમેશન બતાવે છે કે તમારા ડિવાઇસ પર સૂચવેલી ઍપને કેવી રીતે ઍક્સેસ કરવી"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ઍનિમેશન બતાવે છે કે ઍક્શન કીને ટચ કરીને થોડીવાર દબાવી રાખીને અને આઇટમ જે ક્ષેત્રમાં છે તેને પસંદ કરીને, સ્ક્રીન પરની કોઈ આઇટમ માટે કેવી રીતે શોધ કરવી"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"ટાસ્કબાર વિશે શિક્ષણ"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"એક સાથે 2 ઍપનો ઉપયોગ કરવા માટે, ઍપને ખેંચીને બાજુ પર લઈ જાઓ"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"ટાસ્કબાર બતાવવા માટે ઉપરની તરફ ધીમેથી સ્વાઇપ કરો"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"હંમેશાં ટાસ્કબાર બતાવો"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"નૅવિગેશન મોડ બદલો"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"ટાસ્કબાર વિભાજક"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"તાજેતરની અન્ય ઍપ"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"ટાસ્કબાર ઓવરફ્લો"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"સૌથી ઉપર ડાબી બાજુએ ખસેડો"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"સૌથી નીચે જમણી બાજુએ ખસેડો"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"બબલ તરીકે ઍપ ખોલો"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"\'બંધ કરો\' બટન"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ટાસ્કબારમાં પિન કરો"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ટાસ્કબારમાંથી અનપિન કરો"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"નજ"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"બંધ કરો"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"છબી નજ કરો"</string> </resources> diff --git a/quickstep/res/values-hi/strings.xml b/quickstep/res/values-hi/strings.xml index 227a674436..6663df1463 100644 --- a/quickstep/res/values-hi/strings.xml +++ b/quickstep/res/values-hi/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"फ़्रीफ़ॉर्म"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"डेस्कटॉप"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"बाहरी डिसप्ले पर जाएं"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"मिटाएं"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"बंद करें"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"डेस्कटॉप"</string> - <string name="recents_empty_message" msgid="7040467240571714191">"हाल ही में कोई ऐप्लिकेशन खोला नहीं गया"</string> + <string name="recents_empty_message" msgid="7040467240571714191">"हाल ही का कोई आइटम नहीं है"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"ऐप्लिकेशन इस्तेमाल की सेटिंग"</string> <string name="recents_clear_all" msgid="5328176793634888831">"सभी हटाएं"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"नया डेस्क जोड़ें"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"हाल ही में इस्तेमाल किए गए ऐप्लिकेशन"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt;1 मिनट"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"होम पेज पर जाने के लिए, ऊपर की ओर स्वाइप करें"</string> <string name="allset_button_hint" msgid="2395219947744706291">"होम स्क्रीन पर जाने के लिए, होम बटन पर टैप करें"</string> <string name="allset_description_generic" msgid="5385500062202019855">"अब <xliff:g id="DEVICE">%1$s</xliff:g> इस्तेमाल के लिए तैयार है"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"आपका डिवाइस इस्तेमाल के लिए तैयार है"</string> + <string name="default_device_name" msgid="6660656727127422487">"डिवाइस"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"सिस्टम नेविगेशन से जुड़ी सेटिंग"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"आपका <xliff:g id="DEVICE">%1$s</xliff:g> \nतैयार है!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"आपका डिवाइस \nतैयार है!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"अपने नए <xliff:g id="DEVICE">%1$s</xliff:g> का आनंद लें!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"नेविगेट करने का तरीका चुनें"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ऊपर की ओर स्वाइप करें"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"होम बटन पर टैप करें"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"टैबलेट"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"फ़ोन"</string> <string name="action_share" msgid="2648470652637092375">"शेयर करें"</string> <string name="action_screenshot" msgid="8171125848358142917">"स्क्रीनशॉट लें"</string> <string name="action_split" msgid="2098009717623550676">"स्प्लिट स्क्रीन मोड"</string> @@ -113,22 +104,21 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"स्प्लिट स्क्रीन के लिए, दूसरा ऐप्लिकेशन चुनें"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ऐप्लिकेशन या आपका संगठन इस कार्रवाई की अनुमति नहीं देता"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"फ़िलहाल, विजेट काम नहीं कर रहें हैं. कृपया कोई दूसरा ऐप्लिकेशन चुनें"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"क्या आपको अभी नेविगेशन ट्यूटोरियल नहीं देखना है?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"इसे बाद में <xliff:g id="NAME">%1$s</xliff:g> ऐप्लिकेशन पर देखा जा सकता है"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"रद्द करें"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"अभी नहीं"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"स्क्रीन घुमाएं"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"ऐनिमेशन में दिखाया गया है कि स्क्रीन के सबसे नीचे से टास्कबार कैसे दिखता है और इस्तेमाल में न होने पर अपने-आप छिप जाता है"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"ऐनिमेशन में दिखाया जा रहा है कि टॉगल के ज़रिए टास्कबार को कैसे पिन करें, ताकि टास्कबार हमेशा स्क्रीन के सबसे नीचे दिखता रहे"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"ऐनिमेशन में दिखाया जा रहा है कि टास्कबार से किसी ऐप्लिकेशन को खींचकर, किसी खुले हुए ऐप्लिकेशन के ऊपर छोड़कर स्प्लिट स्क्रीन कैसे बनाई जाती है"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"ऐनिमेशन में दिखाया गया है कि डिवाइस पर सुझाए गए ऐप्लिकेशन कैसे ऐक्सेस किए जाते हैं"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ऐनिमेशन में दिखाया गया है कि स्क्रीन पर ऐक्शन बटन को दबाकर रखने से और आइटम वाली जगह को चुनने से, आइटम को कैसे खोजा जा सकता है"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"टास्कबार का ट्यूटोरियल"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"किसी ऐप को किनारे की ओर ड्रैग करके 2 ऐप एक साथ इस्तेमाल करें"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"टास्कबार देखने के लिए, ऊपर की ओर धीरे से स्वाइप करें"</string> <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"इस्तेमाल के आधार पर ऐप्लिकेशन के सुझाव पाएं"</string> <string name="taskbar_edu_pinning" msgid="6708550858580071558">"टास्कबार को पिन करने के लिए डिवाइडर को दबाकर रखें"</string> - <string name="taskbar_edu_features" msgid="3320337287472848162">"टास्कबार की मदद से कई काम करें"</string> + <string name="taskbar_edu_features" msgid="3320337287472848162">"टास्कबार के साथ कई और काम करें"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"टास्कबार को हमेशा दिखाएं"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"टास्कबार को हमेशा अपनी स्क्रीन के नीचे दिखाने के लिए, डिवाइडर दबाकर रखें"</string> <string name="taskbar_search_edu_title" msgid="5569194922234364530">"स्क्रीन पर दिख रहे कॉन्टेंट को खोजने के लिए, ऐक्शन बटन को दबाकर रखें"</string> - <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"यह प्रॉडक्ट, स्क्रीन पर दिख रहे कॉन्टेंट के चुने गए हिस्से को खोजता है. Google की <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>निजता नीति<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> और <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>सेवा की शर्तें<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g> लागू."</string> + <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"यह प्रॉडक्ट, स्क्रीन के चुनिंदा हिस्से पर कॉन्टेंट खोजता है. Google की <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>निजता नीति<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> और <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>सेवा की शर्तें<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g> लागू."</string> <string name="taskbar_edu_close" msgid="887022990168191073">"बंद करें"</string> <string name="taskbar_edu_done" msgid="6880178093977704569">"हो गया"</string> <string name="taskbar_button_home" msgid="2151398979630664652">"होम"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"टास्कबार हमेशा दिखाएं"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"नेविगेशन का मोड बदलें"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"टास्कबार डिवाइडर"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"हाल ही में इस्तेमाल किए गए अन्य ऐप्लिकेशन"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"टास्कबार ओवरफ़्लो आइकॉन"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ऊपर/बाईं तरफ़ ले जाएं"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"नीचे/दाईं तरफ़ ले जाएं"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"ऐप्लिकेशन को बबल के तौर पर खोलें"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"\'बंद करें\' बटन"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"टास्कबार में पिन करें"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"टास्कबार से अनपिन करें"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"नज"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"बंद करें"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"नज इमेज"</string> </resources> diff --git a/quickstep/res/values-hr/strings.xml b/quickstep/res/values-hr/strings.xml index d008ba95e6..701b5679c7 100644 --- a/quickstep/res/values-hr/strings.xml +++ b/quickstep/res/values-hr/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Slobodni oblik"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Računalo"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Premještanje na vanjski zaslon"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Izbriši"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Zatvori"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Radna površina"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Nema nedavnih stavki"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Postavke upotrebe aplikacija"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Izbriši sve"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Dodaj novu radnu površinu"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Nedavne aplikacije"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Prijeđite prstom prema gore da biste otvorili početni zaslon"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Dodirnite gumb početnog zaslona da biste prešli na početni zaslon"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Možete početi upotrebljavati <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Možete početi upotrebljavati uređaj"</string> + <string name="default_device_name" msgid="6660656727127422487">"Uređaj"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Postavke navigacije sustavom"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Vaš je uređaj <xliff:g id="DEVICE">%1$s</xliff:g> \nspreman!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Vaš je uređaj \nspreman!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Uživajte u novom uređaju <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Odaberite način kretanja"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Prelazak prstom prema gore"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Dodirnite gumb početnog zaslona"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Podijeli"</string> <string name="action_screenshot" msgid="8171125848358142917">"Snimka zaslona"</string> <string name="action_split" msgid="2098009717623550676">"Podjela"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Odaberite drugu aplikaciju za upotrebu podijeljenog zaslona"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Aplikacija ili vaša organizacija ne dopuštaju ovu radnju"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgeti trenutačno nisu podržani, odaberite drugu aplikaciju"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Želite li preskočiti vodič za kretanje?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Kasnije ga možete pronaći u aplikaciji <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Odustani"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Preskoči"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Zakretanje zaslona"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animacija koja prikazuje kako alatna traka dolazi u vidno polje s dna zaslona i automatski se skriva kad se ne upotrebljava"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animacija koja prikazuje kako prikvačiti traku sa zadacima pomoću prekidača kako bi traka sa zadacima bila trajno vidljiva pri dnu zaslona"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animacija koja prikazuje kako podijeliti prikaz zaslona povlačenjem i ispuštanjem aplikacije s trake sa zadacima iznad otvorene aplikacije"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animacija koja prikazuje kako pristupiti predloženim aplikacijama na uređaju"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animacija koja prikazuje kako pretražiti stavku na zaslonu tako da dodirnete tipku za radnju i zadržite pritisak te odaberete područje u kojem se nalazi stavka"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Upute za traku sa zadacima"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Povucite aplikaciju u stranu radi istodobne upotrebe dviju aplikacija"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Polako prijeđite prstom prema gore za prikaz trake sa zadacima"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Uvijek prikaži traku zadataka"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Promijeni način navigacije"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Razdjelnik trake sa zadacima"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Druge nedavne aplikacije"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Dodatni izbornik trake sa zadacima"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Premjesti gore/lijevo"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Premjesti dolje/desno"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Otvori aplikaciju kao oblačić"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Gumb Zatvori"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Prikvači na traku"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Otkvači s trake"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Pomakni"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Zatvori"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Pomakni sliku"</string> </resources> diff --git a/quickstep/res/values-hu/strings.xml b/quickstep/res/values-hu/strings.xml index 38a608fb7d..cbe69db28c 100644 --- a/quickstep/res/values-hu/strings.xml +++ b/quickstep/res/values-hu/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Szabad forma"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Asztali"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Áthelyezés külső kijelzőre"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Törlés"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Bezárás"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Asztali"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Nincsenek mostanában használt elemek"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Alkalmazáshasználati beállítások"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Összes törlése"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Új asztal hozzáadása"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Legutóbbi alkalmazások"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 perc"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Felfelé csúsztatva megjelenik a kezdőképernyő"</string> <string name="allset_button_hint" msgid="2395219947744706291">"A kezdőképernyőre való lépéshez koppintson a kezdőképernyő gombra"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Készen áll az <xliff:g id="DEVICE">%1$s</xliff:g> használatára"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Készen áll az eszköz használatára"</string> + <string name="default_device_name" msgid="6660656727127422487">"eszköz"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Rendszer-navigációs beállítások"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> eszköze \nkészen áll!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Eszköze \nkészen áll!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Élvezze új <xliff:g id="DEVICE">%1$s</xliff:g> eszközét!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Válassza ki a navigálás módját"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Csúsztatás gyorsan felfelé"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Koppintson a Kezdőképernyő gombra"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"táblagép"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Megosztás"</string> <string name="action_screenshot" msgid="8171125848358142917">"Képernyőkép"</string> <string name="action_split" msgid="2098009717623550676">"Felosztás"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Válasszon másik appot a képernyő felosztásához"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Az alkalmazás vagy az Ön szervezete nem engedélyezi ezt a műveletet"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"A modulok jelenleg nem támogatottak; válasszon másik alkalmazást"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Kihagyja a navigáció bemutatóját?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Ezt később megtalálhatja a(z) <xliff:g id="NAME">%1$s</xliff:g> alkalmazásban"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Mégse"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Kihagyás"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Képernyő elforgatása"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animáció, amely bemutatja, hogy a feladatsáv hogyan jelenik meg a képernyő alján, majd tűnik el automatikusan, amikor éppen nincs használatban."</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animáció, amely bemutatja, hogyan lehet kitűzni a feladatsávot egy kapcsolóval, hogy állandóan látható legyen a képernyő alján."</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animáció, amely bemutatja, hogyan lehet létrehozni osztott képernyőt úgy, hogy egy alkalmazást a feladatsávról egy megnyitott alkalmazás fölé húz."</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animáció, amely bemutatja, hogyan lehet hozzáférni a javasolt alkalmazásokhoz az eszközön."</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animáció, amely bemutatja, hogyan lehet megkeresni egy elemet a képernyőn úgy, hogy lenyomva tartja a műveletbillentyűt, majd kiválasztja az elemet tartalmazó területet."</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Tálca használatának ismertetése"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Húzzon egy appot oldalra, ha kettőt használna egyidejűleg"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Lassan csúsztassa fel az ujját a Feladatsáv megjelenítéséhez"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Mindig megjelenő Feladatsáv"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Navigációs mód módosítása"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Feladatsáv-elválasztó"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"További legutóbbi alkalmazások"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Feladatsáv túlcsordulása"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Mozgatás felülre vagy a bal oldalra"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Mozgatás alulra vagy a jobb oldalra"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Alkalmazás megnyitása buborékként"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Bezárás gomb"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Kitűzés a feladatsávon"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Kitűzés feloldása"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Bökés"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Bezárás"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Kép megbökése"</string> </resources> diff --git a/quickstep/res/values-hy/strings.xml b/quickstep/res/values-hy/strings.xml index 87c85f4c27..572c452270 100644 --- a/quickstep/res/values-hy/strings.xml +++ b/quickstep/res/values-hy/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Կամայական ձև"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Համակարգիչ"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Տեղափոխել արտաքին էկրան"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Մաքրել"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Փակել"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Համակարգիչ"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Այստեղ դեռ ոչինչ չկա"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Հավելվածի օգտագործման կարգավորումներ"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Փակել բոլորը"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Ավելացնել նոր աշխատասեղան"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Վերջին հավելվածներ"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 ր"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Մատը սահեցրեք վերև՝ հիմնական էկրան անցնելու համար"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Հիմնական էկրան վերադառնալու համար սեղմեք գլխավոր էկրանի կոճակը"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Դուք արդեն կարող եք օգտագործել ձեր <xliff:g id="DEVICE">%1$s</xliff:g>ը"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Դուք արդեն կարող եք օգտագործել ձեր սարքը"</string> + <string name="default_device_name" msgid="6660656727127422487">"սարք"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Նավիգացիայի համակարգային կարգավորումներ"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Ձեր <xliff:g id="DEVICE">%1$s</xliff:g> սարքը \nպատրաստ է"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Ձեր սարքը \nպատրաստ է"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Վայելեք ձեր նոր <xliff:g id="DEVICE">%1$s</xliff:g> սարքը։"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Ընտրեք տեղաշարժման տեսակը"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Թերթեք վերև"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Հպեք գլխավոր էկրանի կոճակին"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"պլանշետ"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"հեռախոս"</string> <string name="action_share" msgid="2648470652637092375">"Կիսվել"</string> <string name="action_screenshot" msgid="8171125848358142917">"Սքրինշոթ անել"</string> <string name="action_split" msgid="2098009717623550676">"Տրոհել"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Ընտրեք այլ հավելված՝ տրոհված էկրանից օգտվելու համար"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Այս գործողությունն արգելված է հավելվածի կամ ձեր կազմակերպության կողմից"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Վիջեթները ներկայումս չեն աջակցվում. ընտրեք այլ հավելված"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Բաց թողնե՞լ նավիգացիայի ուղեցույցը"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Հետագայում սա կարող եք գտնել «<xliff:g id="NAME">%1$s</xliff:g>» հավելվածում"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Չեղարկել"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Բաց թողնել"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Պտտել էկրանը"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Շարժանկար, որը ցույց է տալիս, թե ինչպես է հավելվածների վահանակը էկրանի ներքևից բացվում և ավտոմատ փակվում, երբ այն չի օգտագործվում"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Շարժանկար, որը ցույց է տալիս, թե ինչպես փոխանջատիչի միջոցով ամրացնել ձեր հավելվածների վահանակը, որպեսզի այն միշտ տեսանելի մնա էկրանի ներքևում"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Շարժանկար, որը ցույց է տալիս, թե ինչպես ստեղծել տրոհված էկրան՝ հավելվածների վահանակից քաշելով և թողնելով հավելվածը բացված հավելվածի վրա"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Շարժանկար, որը ցույց է տալիս, թե ինչպես բացել առաջարկվող հավելվածները ձեր սարքում"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Շարժանկար, որը ցույց է տալիս, թե ինչպես որոնել որևէ բան ձեր էկրանին՝ հպելով ու պահելով գործողության ստեղնը և ընտրելով տարրի ընդգրկույթը"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Խնդրագոտու «Կրթություն» պատուհան"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Միաժամանակ օգտագործեք երկու հավելված՝ մեկը մի կողմ քաշելով"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Հավելվածների վահանակը բացելու համար մատը դանդաղ սահեցրեք վեր"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Միշտ ցույց տալ վահանակը"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Փոխել նավիգացիայի ռեժիմը"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Հավելվածների վահանակի բաժանիչ"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Այլ վերջերս օգտագործած հավելվածներ"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Հավելվածների վահանակի լրացուցիչ ընտրացանկ"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Տեղափոխել վերևի ձախ անկյուն"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Տեղափոխել ներքևի աջ անկյուն"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Բացել հավելվածը պղպջակի ձևով"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"«Փակել» կոճակ"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Ամրացնել վահանակում"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Ապամրացնել վահանակից"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Տեղաշարժում"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Փակել"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Տեղաշարժել պատկերը"</string> </resources> diff --git a/quickstep/res/values-in/strings.xml b/quickstep/res/values-in/strings.xml index bf547dff78..6fb1bc6452 100644 --- a/quickstep/res/values-in/strings.xml +++ b/quickstep/res/values-in/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Format bebas"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Pindahkan ke layar eksternal"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Hapus"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Tutup"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktop"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Tidak ada item yang baru dibuka"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Setelan penggunaan aplikasi"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Hapus semua"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Tambahkan desktop virtual baru"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Aplikasi terbaru"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 menit"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Geser ke atas untuk membuka Layar utama"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Ketuk tombol layar utama untuk membuka layar utama"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Anda sudah siap untuk mulai menggunakan <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Anda sudah siap untuk mulai menggunakan perangkat"</string> + <string name="default_device_name" msgid="6660656727127422487">"perangkat"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Setelan navigasi sistem"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> Anda sudah \nsiap."</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Perangkat Anda sudah \nsiap."</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Selamat menikmati <xliff:g id="DEVICE">%1$s</xliff:g> baru Anda."</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Pilih cara menavigasi"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Geser ke atas"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Ketuk tombol layar utama"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ponsel"</string> <string name="action_share" msgid="2648470652637092375">"Bagikan"</string> <string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string> <string name="action_split" msgid="2098009717623550676">"Pisahkan"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Pilih aplikasi lain untuk dibuka di layar terpisah"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Tindakan ini tidak diizinkan oleh aplikasi atau organisasi Anda"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widget saat ini tidak didukung, pilih aplikasi lain"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Lewati tutorial gestur?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Anda dapat menemukan tutorial ini di lain waktu di aplikasi <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Batal"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Lewati"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Putar layar"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animasi yang menunjukkan cara taskbar muncul dari bagian bawah layar, dan otomatis disembunyikan saat tidak digunakan"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animasi yang menunjukkan cara menyematkan taskbar menggunakan tombol, sehingga taskbar tetap terlihat secara permanen di bagian bawah layar"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animasi yang menunjukkan cara membuat layar terpisah, dengan menarik lalu melepaskan aplikasi dari taskbar di atas aplikasi yang terbuka"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animasi yang menunjukkan cara mengakses aplikasi yang disarankan di perangkat Anda"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animasi yang menunjukkan cara menelusuri item di layar, dengan menyentuh lama tombol tindakan dan memilih area tempat item berada"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Pengantar Taskbar"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Tarik aplikasi ke samping untuk menggunakan 2 aplikasi sekaligus"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Geser perlahan ke atas untuk menampilkan Taskbar"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Selalu tampilkan Taskbar"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Ubah mode navigasi"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Pemisah Taskbar"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Aplikasi terbaru lainnya"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Tambahan Taskbar"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Pindahkan ke atas/kiri"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Pindahkan ke bawah/kanan"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Buka aplikasi sebagai balon"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Tombol tutup"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Sematkan ke taskbar"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Lepaskan dari taskbar"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Saran tindak lanjut"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Tutup"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Gambar saran tindak lanjut"</string> </resources> diff --git a/quickstep/res/values-is/strings.xml b/quickstep/res/values-is/strings.xml index 707490fb5c..ac4192fd37 100644 --- a/quickstep/res/values-is/strings.xml +++ b/quickstep/res/values-is/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Frjálst snið"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Tölva"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Færa í annað tæki"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Hreinsa"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Loka"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Tölva"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Engin nýleg atriði"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Notkunarstillingar forrits"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Hreinsa allt"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Bæta nýju skrifborði við"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Nýleg forrit"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 mín."</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Strjúktu upp til að fara á heimaskjáinn"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Ýttu á heimahnappinn til að fara á heimaskjáinn"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Þú getur byrjað að nota <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Þú getur byrjað að nota tækið"</string> + <string name="default_device_name" msgid="6660656727127422487">"tækið"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Stillingar kerfisstjórnunar"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> er \nklár!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Tækið þitt er \nklárt!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Njóttu nýja/nýju <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Veldu hvernig þú vilt fletta"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Strjúka upp"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Ýta á heimahnappinn"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"spjaldtölvunnar"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"símans"</string> <string name="action_share" msgid="2648470652637092375">"Deila"</string> <string name="action_screenshot" msgid="8171125848358142917">"Skjámynd"</string> <string name="action_split" msgid="2098009717623550676">"Skipta"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Veldu annað forrit til að nota skjáskiptingu"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Forritið eða fyrirtækið leyfir ekki þessa aðgerð"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Græjur ekki studdar eins og er, veldu annað forrit"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Sleppa flettileiðsögn?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Þú getur fundið þetta síðar í forritinu <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Hætta við"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Sleppa"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Snúa skjánum"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Hreyfimynd sem sýnir hvernig forritastikan birtist neðst á skjánum og hverfur þegar hún er ekki í notkun"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Hreyfimynd sem sýnir hvernig hægt er að nota rofa til að festa forritastikuna og gera hana þannig varanlega sýnilega neðst á skjánum"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Hreyfimynd sem sýnir hvernig hægt er að skipta skjánum með því að draga forrit af forritastikunni og sleppa því yfir opnu forriti"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Hreyfimynd sem sýnir hvernig hægt er að nálgast tillögð forrit í tæki"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Hreyfimynd sem sýnir hvernig hægt er að leita að atriði á skjánum með því að halda aðgerðalyklinum inni og velja svæðið sem atriðið er á"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Leiðsögn verkefnastiku"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Dragðu forrit til hliðar til að nota 2 forrit í einu"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Strjúktu hægt upp til að birta forritastikuna"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Alltaf sýna forritastiku"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Breyta leiðsagnarstillingu"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Skipting forritastiku"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Önnur nýleg forrit"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Yfirflæði á forritastiku"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Færa efst/til vinstri"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Færa neðst/til hægri"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Opna forrit sem blöðru"</string> @@ -167,13 +157,10 @@ <string name="bubble_bar_action_dismiss_all" msgid="3290722022983403060">"Hunsa allt"</string> <string name="bubble_bar_accessibility_announce_expand" msgid="1503192695527477102">"stækka <xliff:g id="BUBBLE_DESCRIPTION">%1$s</xliff:g>"</string> <string name="bubble_bar_accessibility_announce_collapse" msgid="928284600086798791">"minnka <xliff:g id="BUBBLE_DESCRIPTION">%1$s</xliff:g>"</string> - <string name="search_gesture_feature_title" msgid="1294044108313175306">"Draga hring til að leita"</string> + <string name="search_gesture_feature_title" msgid="1294044108313175306">"Circle to Search"</string> <string name="header_app_icon_description" msgid="2184625881433608027">"Forritstákn"</string> <string name="header_default_app_title" msgid="8308052350689531566">"Titil forrits"</string> <string name="header_close_icon_description" msgid="5400033616675911319">"Hnappur til að loka"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Festa á forritastiku"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Losa af forritastiku"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Hnippa"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Loka"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Færa myndina ögn"</string> </resources> diff --git a/quickstep/res/values-it/strings.xml b/quickstep/res/values-it/strings.xml index 6a12086561..8a08dcfbd8 100644 --- a/quickstep/res/values-it/strings.xml +++ b/quickstep/res/values-it/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Forma libera"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Sposta sul display esterno"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Cancella"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Chiudi"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktop"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Nessun elemento recente"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Impostazioni di utilizzo delle app"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Cancella tutto"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Aggiungi nuova scrivania"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"App recenti"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Scorri verso l\'alto per andare alla schermata Home"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Tocca il pulsante Home per andare alla schermata Home"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Puoi iniziare a usare il tuo <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Puoi iniziare a usare il tuo dispositivo"</string> + <string name="default_device_name" msgid="6660656727127422487">"dispositivo"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Impostazioni di navigazione del sistema"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Il tuo <xliff:g id="DEVICE">%1$s</xliff:g> è \npronto."</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Il dispositivo è \npronto."</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Buon divertimento con il tuo nuovo <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Scegli la modalità di navigazione"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Scorri verso l\'alto"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Tocca il pulsante Home"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"smartphone"</string> <string name="action_share" msgid="2648470652637092375">"Condividi"</string> <string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string> <string name="action_split" msgid="2098009717623550676">"Dividi"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Scegli un\'altra app per usare lo schermo diviso"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Questa azione non è consentita dall\'app o dall\'organizzazione"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Attualmente i widget non sono supportati, seleziona un\'altra app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Saltare il tutorial di navigazione?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Puoi trovarlo in un secondo momento nell\'app <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Annulla"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Salta"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Ruota lo schermo"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animazione che mostra come la barra delle app appaia dalla parte inferiore dello schermo e si nasconda automaticamente quando non in uso"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animazione che mostra come fissare la barra delle app utilizzando un\'opzione di attivazione/disattivazione, in modo che rimanga visibile in modo permanente nella parte inferiore dello schermo"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animazione che mostra come creare uno schermo diviso trascinando un\'app dalla barra delle app sopra un\'app aperta"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animazione che mostra come accedere alle app suggerite sul dispositivo"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animazione che mostra come cercare un elemento sullo schermo toccando e tenendo premuto il tasto azione e selezionando l\'area in cui si trova l\'elemento"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Informazioni sulla barra delle applicazioni"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Trascina un\'app di lato per usare due app contemporaneamente"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Scorri lentamente in su per mostrare la barra delle app"</string> @@ -127,7 +117,7 @@ <string name="taskbar_edu_features" msgid="3320337287472848162">"Fai di più con la barra delle app"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"Mostra sempre la barra delle app"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"Per mostrare sempre la barra delle app in basso, tocca e tieni premuto il divisore"</string> - <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Tocca e tieni premuto il tasto azione per cercare ciò che vedi sullo schermo"</string> + <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Tocca e tieni premuto il tasto azione per cercare gli elementi sullo schermo"</string> <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"Il prodotto usa la parte selezionata dello schermo per cercare. Si applicano le <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>Norme sulla privacy<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> e i <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>Termini di servizio<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g> di Google."</string> <string name="taskbar_edu_close" msgid="887022990168191073">"Chiudi"</string> <string name="taskbar_edu_done" msgid="6880178093977704569">"Fine"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Mostra sempre barra app"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Cambia modalità di navigazione"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Divisore barra delle app"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Altre app recenti"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Overflow barra delle app"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Sposta in alto/a sinistra"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Sposta in basso/a destra"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Apri l\'app come fumetto"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Pulsante Chiudi"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Fissa alla barra app"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Sblocca da barra app"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Nudge"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Chiudi"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Immagine Nudge"</string> </resources> diff --git a/quickstep/res/values-iw/strings.xml b/quickstep/res/values-iw/strings.xml index b673be8992..29ca71bac5 100644 --- a/quickstep/res/values-iw/strings.xml +++ b/quickstep/res/values-iw/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"מצב חופשי"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"במחשב"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"העברה למסך חיצוני"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"ניקוי"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"סגירה"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"מחשב"</string> <string name="recents_empty_message" msgid="7040467240571714191">"אין פריטים אחרונים"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"הגדרות שימוש באפליקציה"</string> <string name="recents_clear_all" msgid="5328176793634888831">"ניקוי הכול"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"הוספה של שולחן עבודה וירטואלי חדש"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"אפליקציות אחרונות"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"‏&lt; דקה"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"כדי לחזור לדף הבית, צריך להחליק למעלה"</string> <string name="allset_button_hint" msgid="2395219947744706291">"כדי לעבור אל מסך הבית צריך ללחוץ על הכפתור הראשי"</string> <string name="allset_description_generic" msgid="5385500062202019855">"הכול מוכן ואפשר להתחיל להשתמש ב<xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"הכול מוכן ואפשר להתחיל להשתמש במכשיר"</string> + <string name="default_device_name" msgid="6660656727127422487">"מכשיר"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"הגדרות הניווט במערכת"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"ה-<xliff:g id="DEVICE">%1$s</xliff:g> שלך \nמוכן!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"המכשיר שלך \nמוכן!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"מקווים שיהיה לך כיף עם ה<xliff:g id="DEVICE">%1$s</xliff:g> החדש שלך!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"בחירת אופן הניווט"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"אפשר להחליק למעלה"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"אפשר ללחוץ על הכפתור הראשי"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"טאבלט"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"טלפון"</string> <string name="action_share" msgid="2648470652637092375">"שיתוף"</string> <string name="action_screenshot" msgid="8171125848358142917">"צילום מסך"</string> <string name="action_split" msgid="2098009717623550676">"פיצול"</string> @@ -113,21 +104,20 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"כדי להשתמש במסך מפוצל צריך לבחור אפליקציה אחרת"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"האפליקציה או הארגון שלך אינם מתירים את הפעולה הזאת"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"הווידג\'טים לא נתמכים כרגע, צריך לבחור אפליקציה אחרת"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"לדלג על המדריך לניווט?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"ניתן למצוא את המדריך מאוחר יותר באפליקציה <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"ביטול"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"דילוג"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"סיבוב המסך"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"אנימציה שמראה איך סרגל האפליקציות מוצג מתחתית המסך, ומוסתר באופן אוטומטי כשלא משתמשים בו"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"אנימציה שמראה איך להצמיד את סרגל האפליקציות באמצעות מתג, כדי שהסרגל יוצג באופן קבוע בתחתית המסך"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"אנימציה שמראה איך ליצור מסך מפוצל על ידי גרירה ושחרור של אפליקציה מסרגל האפליקציות מעל אפליקציה פתוחה"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"אנימציה שמראה איך לגשת לאפליקציות המוצעות במכשיר"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"אנימציה שמראה איך לחפש פריט במסך על ידי לחיצה ארוכה על מקש הפעולה ובחירת האזור שבו הפריט נמצא"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"הסבר על סרגל האפליקציות"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"כדי להשתמש בשתי אפליקציות בו-זמנית, צריך לגרור אפליקציה לצד"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"צריך להחליק לאט למעלה כדי להציג את סרגל האפליקציות"</string> - <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"אפשר לקבל הצעות לאפליקציות על סמך השימוש השגרתי"</string> + <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"אפשר לקבל הצעות לאפליקציות על סמך השימוש השגרתי שלך"</string> <string name="taskbar_edu_pinning" msgid="6708550858580071558">"כדי להצמיד את סרגל האפליקציות, לוחצים לחיצה ארוכה על המחיצה"</string> <string name="taskbar_edu_features" msgid="3320337287472848162">"פעולות נוספות שאפשר לעשות עם סרגל האפליקציות"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"תמיד להציג את סרגל האפליקציות"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"כדי להציג תמיד את סרגל האפליקציות בתחתית המסך, יש ללחוץ לחיצה ארוכה על המחיצה"</string> - <string name="taskbar_search_edu_title" msgid="5569194922234364530">"כדי לחפש את מה שרואים במסך, צריך ללחוץ לחיצה ארוכה על מקש הפעולה"</string> + <string name="taskbar_search_edu_title" msgid="5569194922234364530">"כדי לחפש במסך, צריך ללחוץ לחיצה ארוכה על מקש הפעולה"</string> <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"‏המוצר הזה משתמש בחלק שבחרת במסך לצורך חיפוש, בכפוף ל<xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>מדיניות הפרטיות<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> ו<xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>לתנאים ולהגבלות<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g> של Google."</string> <string name="taskbar_edu_close" msgid="887022990168191073">"סגירה"</string> <string name="taskbar_edu_done" msgid="6880178093977704569">"סיום"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"סרגל האפליקציות מוצג תמיד"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"שינוי מצב הניווט"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"המחיצה בסרגל האפליקציות"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"אפליקציות אחרות שהיו בשימוש לאחרונה"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"אפשרויות נוספות בסרגל האפליקציות"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"העברה לפינה השמאלית/העליונה"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"העברה לפינה הימנית/התחתונה"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"פתיחת האפליקציה בבועה"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"כפתור הסגירה"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"הצמדה לסרגל האפליקציות"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ביטול ההצמדה לסרגל"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"נדנוד"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"סגירה"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"תמונה של תכונת הנדנוד"</string> </resources> diff --git a/quickstep/res/values-ja/strings.xml b/quickstep/res/values-ja/strings.xml index 799dfed7a8..8f44ee75b9 100644 --- a/quickstep/res/values-ja/strings.xml +++ b/quickstep/res/values-ja/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"フリーフォーム"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"デスクトップ"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"外部ディスプレイに移動する"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"消去"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"閉じる"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"デスクトップ"</string> <string name="recents_empty_message" msgid="7040467240571714191">"最近のアイテムはありません"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"アプリの使用状況の設定"</string> <string name="recents_clear_all" msgid="5328176793634888831">"すべてクリア"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"新しいデスクを追加"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"最近使ったアプリ"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>、<xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"1 分未満"</string> @@ -92,20 +91,12 @@ <string name="allset_hint" msgid="459504134589971527">"ホームに移動するには上にスワイプします"</string> <string name="allset_button_hint" msgid="2395219947744706291">"ホームボタンをタップすると、ホーム画面に移動します"</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> を使用する準備ができました"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"デバイスを使用する準備ができました"</string> + <string name="default_device_name" msgid="6660656727127422487">"デバイス"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"システム ナビゲーションの設定"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> の準備が\n完了しました"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"デバイスの準備が\n完了しました"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"新しい <xliff:g id="DEVICE">%1$s</xliff:g> をご利用いただけます"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"ナビゲーション方法を選択"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"上にスワイプ"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"ホームボタンをタップ"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"タブレット"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"スマートフォン"</string> <string name="action_share" msgid="2648470652637092375">"共有"</string> <string name="action_screenshot" msgid="8171125848358142917">"スクリーンショット"</string> <string name="action_split" msgid="2098009717623550676">"分割"</string> - <string name="action_save_app_pair" msgid="5974823919237645229">"アプリの組み合わせを保存"</string> + <string name="action_save_app_pair" msgid="5974823919237645229">"アプリのペア設定保存"</string> <string name="toast_split_select_app" msgid="8464310533320556058">"分割画面を使用するには、他のアプリをタップします"</string> <string name="toast_contextual_split_select_app" msgid="433510957123687090">"分割画面を使用するには別のアプリを選択してください"</string> <string name="toast_split_select_app_cancel" msgid="1939025102486630426">"キャンセル"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"分割画面にするには、別のアプリを選択してください"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"この操作はアプリまたは組織で許可されていません"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"ウィジェットは現在サポートされていません。他のアプリを選択してください。"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"操作チュートリアルをスキップしますか?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"チュートリアルは後から <xliff:g id="NAME">%1$s</xliff:g> アプリで確認できます"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"キャンセル"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"スキップ"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"画面を回転"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"タスクバーが画面下部に表示され、使用していないときは自動的に非表示になる様子を紹介するアニメーション"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"切り替えを使用してタスクバーを固定し、画面下部に表示したままにする方法を紹介するアニメーション"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"タスクバーにあるアプリをドラッグし、開いているアプリの上にドロップして分割画面を作成する方法を紹介するアニメーション"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"デバイスでおすすめのアプリにアクセスする方法を紹介するアニメーション"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"アクションキーを長押しして、アイテムがある領域を選択し、画面上のアイテムを検索する方法を紹介するアニメーション"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"タスクバーの説明"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"アプリを横にドラッグすると 2 個のアプリを同時に使用できます"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"タスクバーを表示するには、上にゆっくりとスワイプします"</string> @@ -127,8 +117,8 @@ <string name="taskbar_edu_features" msgid="3320337287472848162">"タスクバーの各種機能"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"タスクバーを常に表示"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"タスクバーを画面下部に常に表示するには分割線を長押しします"</string> - <string name="taskbar_search_edu_title" msgid="5569194922234364530">"画面上の内容を検索するには、アクションキーを長押しします"</string> - <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"このサービスは、画面上で選択された箇所を使用して検索します。Google の<xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>プライバシー ポリシー<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g>と<xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>利用規約<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g>が適用されます。"</string> + <string name="taskbar_search_edu_title" msgid="5569194922234364530">"画面上の内容を検索するには、アクションキーを長押ししてください"</string> + <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"このサービスは、検索する際に画面上で選択された箇所を使用します。Google の<xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>プライバシー ポリシー<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g>と<xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>利用規約<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g>が適用されます。"</string> <string name="taskbar_edu_close" msgid="887022990168191073">"閉じる"</string> <string name="taskbar_edu_done" msgid="6880178093977704569">"完了"</string> <string name="taskbar_button_home" msgid="2151398979630664652">"ホーム"</string> @@ -146,13 +136,13 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"常にタスクバーを表示する"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"ナビゲーション モードを変更"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"タスクバーの区切り"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"その他の最近使ったアプリ"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"タスクバーのオーバフロー"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"上 / 左に移動"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"下 / 右に移動"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"アプリをバブルとして開く"</string> <string name="quick_switch_pane_title" msgid="4677158207760585812">"最近使ったアプリ"</string> <string name="quick_switch_content_description" msgid="2851244536728720005">"最近使ったアプリの一覧"</string> - <string name="quick_switch_overflow" msgid="3679780650881041632">"{count,plural, =1{個の他のアプリ}other{個の他のアプリ}}"</string> + <string name="quick_switch_overflow" msgid="3679780650881041632">"{count,plural, =1{個のその他のアプリ}other{個のその他のアプリ}}"</string> <string name="quick_switch_desktop" msgid="8393802056024499749">"デスクトップ"</string> <string name="quick_switch_split_task" msgid="5598194724255333896">"<xliff:g id="APP_NAME_1">%1$s</xliff:g> と <xliff:g id="APP_NAME_2">%2$s</xliff:g>"</string> <string name="quick_switch_task_with_position_in_parent" msgid="4968670948331508951">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>、アイテム <xliff:g id="INDEX_IN_PARENT">%2$d</xliff:g>/<xliff:g id="TOTAL_TASKS">%3$d</xliff:g>"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"閉じるボタン"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"タスクバーに固定"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"タスクバーの固定解除"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"ナッジ"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"閉じる"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ナッジの画像"</string> </resources> diff --git a/quickstep/res/values-ka/strings.xml b/quickstep/res/values-ka/strings.xml index 11f0ababf5..6294cbdac7 100644 --- a/quickstep/res/values-ka/strings.xml +++ b/quickstep/res/values-ka/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"თავისუფალი ფორმა"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"დესკტოპი"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"გარე ეკრანზე გადასვლა"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"გასუფთავება"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"დახურვა"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"დესკტოპი"</string> <string name="recents_empty_message" msgid="7040467240571714191">"ბოლოს გამოყენებული ერთეულები არ არის"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"აპების გამოყენების პარამეტრები"</string> <string name="recents_clear_all" msgid="5328176793634888831">"ყველას გასუფთავება"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"ახალი სამუშაო მაგიდის დამატება"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"ბოლოდროინდელი აპები"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 წუთი"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"მთავარ გვერდზე გადასასვლელად გადაფურცლეთ ზევით"</string> <string name="allset_button_hint" msgid="2395219947744706291">"შეეხეთ მთავარი ეკრანის ღილაკს მთავარ ეკრანზე გადასასვლელად"</string> <string name="allset_description_generic" msgid="5385500062202019855">"მზად ხართ, გამოიყენოთ <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"თქვენ მზად ხართ მოწყობილობის გამოსაყენებლად"</string> + <string name="default_device_name" msgid="6660656727127422487">"მოწყობილობა"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"სისტემის ნავიგაციის პარამეტრები"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"თქვენი <xliff:g id="DEVICE">%1$s</xliff:g> \nმზადაა!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"თქვენი მოწყობილობა \nმზადაა"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"ისიამოვნეთ თქვენი ახალი <xliff:g id="DEVICE">%1$s</xliff:g>-ით!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"აირჩიეთ ნავიგაციის ხერხი"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ზემოთ გადაფურცვლა"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"შეეხეთ მთავარ ეკრანზე გადასვლის ღილაკს"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ტაბლეტი"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ტელეფონი"</string> <string name="action_share" msgid="2648470652637092375">"გაზიარება"</string> <string name="action_screenshot" msgid="8171125848358142917">"ეკრანის ანაბეჭდი"</string> <string name="action_split" msgid="2098009717623550676">"გაყოფა"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"აირჩიეთ სხვა აპი ეკრანის გასაყოფად"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ეს მოქმედება არ არის დაშვებული აპის ან თქვენი ორგანიზაციის მიერ"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"ვიჯეტები ამჟამად არ არის მხარდაჭერილი. გთხოვთ, აირჩიოთ სხვა აპი"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"გსურთ, გამოტოვოთ ნავიგაციის სახელმძღვანელო?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"ამის მოგვიანებით პოვნა <xliff:g id="NAME">%1$s</xliff:g> აპში შეგიძლიათ"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"გაუქმება"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"გამოტოვება"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"ეკრანის შეტრიალება"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"ანიმაცია, რომელიც აჩვენებს, როგორ ჩნდება ამოცანათა ზოლი ეკრანის ქვედა ნაწილში და ავტომატურად ქრება, როდესაც არ იყენებთ"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"ანიმაცია, რომელიც აჩვენებს, როგორ ჩაამაგროთ თქვენი ამოცანათა ზოლი გადართვის გამოყენებით, რომ ამოცანათა ზოლი მუდმივად ხილული დარჩეს ეკრანის ქვედა ნაწილში"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"ანიმაცია, რომელიც აჩვენებს, როგორ შექმნათ გაყოფილი ეკრანი ამოცანათა ზოლიდან აპის ჩავლებით გადატანითა და გადათრევით გახსნილი აპის ზემოთ"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"ანიმაცია, რომელიც აჩვენებს, როგორ მიიღოთ წვდომა შემოთავაზებულ აპებზე თქვენს მოწყობილობაზე"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ანიმაცია, რომელიც აჩვენებს, როგორ მოიძიოთ ერთეული ეკრანზე მოქმედების კლავიშზე ხანგრძლივად შეხებით და იმ ადგილის არჩევით, რომელშიც არის ერთეული"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"ამოცანათა ზოლი: განათლება"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"2 აპის ერთდროულად გამოსაყენებლად გადაათრიეთ აპი კიდეზე"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"მოკლედ გადაფურცლეთ ზემოთ, რომ ამოცანათა ზოლი გამოაჩინოთ"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"ამოცანათა ზოლის მუდამ ჩვენება"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"შეცვალეთ ნავიგაციის რეჟიმი"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"ამოცანათა ზოლის გამყოფი"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"სხვა ბოლოდროინდელი აპები"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"ამოცანათა ზოლის გადავსება"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ზემოთ/მარცხნივ გადატანა"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"ქვემოთ/მარჯვნივ გადატანა"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"აპის გახსნა ბუშტის სახით"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"დახურვის ღილაკი"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ამოც. ზოლში ჩანიშვნა"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ამოც. ზოლიდან მოხსნა"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"ბიძგი"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"დახურვა"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ბიძგების სურათი"</string> </resources> diff --git a/quickstep/res/values-kk/strings.xml b/quickstep/res/values-kk/strings.xml index ff6d8537ca..429fe5c330 100644 --- a/quickstep/res/values-kk/strings.xml +++ b/quickstep/res/values-kk/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Еркін форма"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Компьютер"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Сыртқы дисплейге ауыстыру"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Өшіру"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Жабу"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Жұмыс үстелі"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Соңғы элементтер жоқ"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Қолданбаны пайдалану параметрлері"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Барлығын өшіру"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Жаңа жұмыс үстелін қосу"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Соңғы қолданбалар"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 мин"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Негізгі экранға өту үшін жоғары қарай сырғытыңыз."</string> <string name="allset_button_hint" msgid="2395219947744706291">"Негізгі экранға өту үшін негізгі экран түймесін түртіңіз."</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> пайдалануға дайын."</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Құрылғы пайдалануға дайын."</string> + <string name="default_device_name" msgid="6660656727127422487">"Құрылғы"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Навигацияның жүйелік параметрлері"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> \nдайын!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Құрылғыңыз \nдайын!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Жаңа <xliff:g id="DEVICE">%1$s</xliff:g> дайын!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Өту жолын таңдау"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Жоғары сырғыту"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Негізгі экран түймесін түртіңіз"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"планшет"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"телефон"</string> <string name="action_share" msgid="2648470652637092375">"Бөлісу"</string> <string name="action_screenshot" msgid="8171125848358142917">"Скриншот"</string> <string name="action_split" msgid="2098009717623550676">"Бөлу"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Экранды бөлу үшін басқа қолданбаны таңдаңыз."</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Бұл әрекетке қолданба не ұйым рұқсат етпейді."</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Виджеттерге қазір қолдау көрсетілмейді. Басқа қолданба таңдаңыз."</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Қимылдар оқулығын өткізіп жіберу керек пе?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Мұны кейін <xliff:g id="NAME">%1$s</xliff:g> қолданбасынан таба аласыз."</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Бас тарту"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Өткізіп жіберу"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Экранды бұру"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Тапсырмалар жолағының экранның төменгі жағынан қалай көрініп, қолданылмаған кезде автоматты түрде жасырылатыны көрсетілген анимация"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Тапсырмалар жолағы экранның төменгі жағында үнемі көрініп тұруы үшін, оны ауыстырғышпен бекіту жолы көрсетілген анимация"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Қолданбаны тапсырмалар жолағынан ашық қолданба үстіне сүйреп қою арқылы бөлінген экран жасау жолы көрсетілген анимация"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Құрылғыдағы ұсынылған қолданбаларға кіру жолы көрсетілген анимация"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Әрекет пернесін басып тұрып, элемент кіретін аймақты таңдау арқылы экрандағы элементті іздеу жолы көрсетілген анимация"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Тапсырмалар жолағы: үйрену"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"2 қолданбаны бір мезгілде пайдалану үшін қолданбаны шетке сүйреңіз."</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Тапсырмалар жолағын көрсету үшін жоғары қарай ақырын сырғытыңыз."</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Тапсырма жолағын үнемі көрсету"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Навигация режимін өзгерту"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Тапсырмалар жолағын бөлгіш"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Басқа соңғы қолданбалар"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"\"Тапсырмалар жолағы\" қосымша мәзірі"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Жоғары/солға жылжыту"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Төмен/оңға жылжыту"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Қолданбаны қалқыма терезе түрінде ашу"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"\"Жабу\" түймесі"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Тапсырмалар жолағына бекіту"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Тапсырмалар жолағынан босату"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Еске салғыш"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Жабу"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Еске салғыш суреті"</string> </resources> diff --git a/quickstep/res/values-km/strings.xml b/quickstep/res/values-km/strings.xml index 784aa8401b..f1772afe46 100644 --- a/quickstep/res/values-km/strings.xml +++ b/quickstep/res/values-km/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"មុខងារទម្រង់សេរី"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ដែសថប"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"ផ្លាស់ទីទៅផ្ទាំងអេក្រង់ខាងក្រៅ"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"សម្អាត"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"បិទ"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"អេក្រង់ដើម"</string> <string name="recents_empty_message" msgid="7040467240571714191">"មិនមានធាតុថ្មីៗទេ"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"ការកំណត់​ការប្រើប្រាស់​កម្មវិធី"</string> <string name="recents_clear_all" msgid="5328176793634888831">"សម្អាត​ទាំងអស់"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"បញ្ចូល​តុថ្មី"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"កម្មវិធី​ថ្មីៗ"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 នាទី"</string> @@ -92,18 +91,10 @@ <string name="allset_hint" msgid="459504134589971527">"អូស​ឡើង​លើ ​ដើម្បី​ចូលទៅកាន់អេក្រង់ដើម"</string> <string name="allset_button_hint" msgid="2395219947744706291">"ចុចប៊ូតុងដើម ដើម្បីចូលទៅកាន់អេក្រង់ដើមរបស់អ្នក"</string> <string name="allset_description_generic" msgid="5385500062202019855">"អ្នកអាចចាប់ផ្ដើមប្រើ<xliff:g id="DEVICE">%1$s</xliff:g>របស់អ្នកបានហើយ"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"អ្នកអាចចាប់ផ្ដើមប្រើឧបករណ៍របស់អ្នកបានហើយ"</string> + <string name="default_device_name" msgid="6660656727127422487">"ឧបករណ៍"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"ការកំណត់​ការរុករក​ប្រព័ន្ធ"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"អាចប្រើ <xliff:g id="DEVICE">%1$s</xliff:g> របស់អ្នក\nបានហើយ!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"អាចប្រើឧបករណ៍​របស់អ្នក\nបានហើយ!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"រីករាយជាមួយ <xliff:g id="DEVICE">%1$s</xliff:g> ថ្មីរបស់អ្នក!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"ជ្រើសរើសរបៀបរុករក"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"អូស​ឡើងលើ"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"ចុចប៊ូតុងដើម"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ថេប្លេត"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ទូរសព្ទ"</string> <string name="action_share" msgid="2648470652637092375">"ចែករំលែក"</string> - <string name="action_screenshot" msgid="8171125848358142917">"ថតរូបអេក្រង់"</string> + <string name="action_screenshot" msgid="8171125848358142917">"រូបថតអេក្រង់"</string> <string name="action_split" msgid="2098009717623550676">"បំបែក"</string> <string name="action_save_app_pair" msgid="5974823919237645229">"រក្សាទុកគូកម្មវិធី"</string> <string name="toast_split_select_app" msgid="8464310533320556058">"ចុចកម្មវិធី​ផ្សេងទៀត ដើម្បីប្រើ​មុខងារបំបែកអេក្រង់"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"ជ្រើសរើសកម្មវិធីផ្សេងទៀត ដើម្បីប្រើមុខងារ​បំបែកអេក្រង់"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"សកម្មភាពនេះ​មិនត្រូវបានអនុញ្ញាតដោយកម្មវិធី​ ឬ​ស្ថាប័ន​របស់អ្នកទេ"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"បច្ចុប្បន្ន ធាតុ​ក្រាហ្វិកមិនអាចប្រើបានទេ សូមជ្រើសរើសកម្មវិធីផ្សេងទៀត"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"រំលង​មេរៀន​អំពី​ការរុករក​ឬ?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"អ្នកអាចស្វែងរកមេរៀននេះនៅពេលក្រោយក្នុងកម្មវិធី <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"បោះបង់"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"រំលង"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"បង្វិលអេក្រង់"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"រូបមានចលនាដែលបង្ហាញអំពីរបៀបដែលរបារកិច្ចការចូលទៅក្នុងទិដ្ឋភាពពីផ្នែកខាងក្រោមនៃអេក្រង់ និងលាក់ដោយស្វ័យប្រវត្តិ នៅពេលមិនកំពុងប្រើ"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"រូបមានចលនាដែលបង្ហាញអំពីរបៀបខ្ទាស់របារកិច្ចការរបស់អ្នកដោយប្រើប៊ូតុងបិទ/បើក ដូច្នេះរបារកិច្ចការនៅតែអាចមើលឃើញជាអចិន្ត្រៃយ៍នៅផ្នែកខាងក្រោមនៃអេក្រង់"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"រូបមានចលនាដែលមានបង្ហាញអំពីរបៀបបង្កើតអេក្រង់បំបែក ដោយអូស​ហើយ​ទម្លាក់កម្មវិធីពីរបារកិច្ចការនៅខាងលើកម្មវិធីដែលកំពុងបើក"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"រូបមានចលនាដែលបង្ហាញអំពីរបៀបចូលប្រើកម្មវិធីដែលបានណែនាំនៅលើឧបករណ៍របស់អ្នក"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"រូបមានចលនាដែលបង្ហាញអំពីរបៀបស្វែងរកធាតុនៅលើអេក្រង់ ដោយចុចគ្រាប់ចុចសកម្មភាពឱ្យជាប់ និងជ្រើសរើសតំបន់ដែលធាតុនោះស្ថិតនៅ"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"ការអប់រំលើរបារកិច្ចការ"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"អូសកម្មវិធីទៅចំហៀង ដើម្បីប្រើកម្មវិធី 2 ក្នុងពេលតែមួយ"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"អូសឡើងលើយឺតៗ ដើម្បីបង្ហាញរបារកិច្ចការ"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"បង្ហាញរបារកិច្ចការជានិច្ច"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"ប្ដូរ​មុខងាររុករក"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"បន្ទាត់​ខណ្ឌចែករបារកិច្ចការ"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"កម្មវិធីថ្មីៗផ្សេងទៀត"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"ម៉ឺនុយបន្ថែមរបារកិច្ចការ"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ផ្លាស់ទីទៅខាងលើ/ឆ្វេង"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"ផ្លាស់ទីទៅខាងក្រោម/ស្ដាំ"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"បើកកម្មវិធីជាផ្ទាំងសារ"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"ប៊ូតុងបិទ"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ខ្ទាស់ទៅរបារកិច្ចការ"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ដកខ្ទាស់ពីរបារកិច្ចការ"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"ជំរុញ"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"បិទ"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"រូបភាពជំរុញ"</string> </resources> diff --git a/quickstep/res/values-kn/strings.xml b/quickstep/res/values-kn/strings.xml index 1fd2b711ff..5f6734b58d 100644 --- a/quickstep/res/values-kn/strings.xml +++ b/quickstep/res/values-kn/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"ಮುಕ್ತಸ್ವರೂಪ"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ಡೆಸ್ಕ್‌ಟಾಪ್"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"ಬಾಹ್ಯ ಡಿಸ್‌ಪ್ಲೇಗೆ ಸರಿಸಿ"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"ತೆರವುಗೊಳಿಸಿ"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"ಮುಚ್ಚಿರಿ"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ಡೆಸ್ಕ್‌ಟಾಪ್"</string> <string name="recents_empty_message" msgid="7040467240571714191">"ಯಾವುದೇ ಇತ್ತೀಚಿನ ಐಟಂಗಳಿಲ್ಲ"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"ಆ್ಯಪ್‌ ಬಳಕೆಯ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string> <string name="recents_clear_all" msgid="5328176793634888831">"ಎಲ್ಲವನ್ನೂ ತೆರವುಗೊಳಿಸಿ"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"ಹೊಸ ಡೆಸ್ಕ್ ಅನ್ನು ಸೇರಿಸಿ"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"ಇತ್ತೀಚಿನ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 ನಿ"</string> @@ -48,7 +47,7 @@ <string name="hotsaet_tip_prediction_enabled" msgid="2233554377501347650">"ಆ್ಯಪ್ ಸಲಹೆಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string> <string name="hotsaet_tip_prediction_disabled" msgid="1506426298884658491">"ಆ್ಯಪ್ ಸಲಹೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string> <string name="hotseat_prediction_content_description" msgid="4582028296938078419">"ಶಿಫಾರಸು ಮಾಡಿದ ಆ್ಯಪ್: <xliff:g id="TITLE">%1$s</xliff:g>"</string> - <string name="gesture_tutorial_title" msgid="2750751261768388354">"ಜೆಸ್ಚರ್ ನ್ಯಾವಿಗೇಶನ್ ಟುಟೋರಿಯಲ್"</string> + <string name="gesture_tutorial_title" msgid="2750751261768388354">"ಗೆಸ್ಚರ್ ನ್ಯಾವಿಗೇಶನ್ ಟುಟೋರಿಯಲ್"</string> <string name="gesture_tutorial_rotation_prompt_title" msgid="7537946781362766964">"ನಿಮ್ಮ ಸಾಧನವನ್ನು ತಿರುಗಿಸಿ"</string> <string name="gesture_tutorial_rotation_prompt" msgid="1664493449851960691">"ಗೆಸ್ಚರ್ ನ್ಯಾವಿಗೇಶನ್ ಟುಟೋರಿಯಲ್ ಅನ್ನು ಪೂರ್ಣಗೊಳಿಸಲು, ನಿಮ್ಮ ಸಾಧನವನ್ನು ತಿರುಗಿಸಿ"</string> <string name="back_gesture_feedback_swipe_too_far_from_edge" msgid="4175100312909721217">"ನೀವು ಬಲಕೊನೆಯ ಅಂಚಿನಿಂದ ಅಥವಾ ಎಡಕೊನೆಯ ಅಂಚಿನಿಂದ ಸ್ವೈಪ್ ಮಾಡುತ್ತಿದ್ದೀರಿ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"ಮುಖಪುಟಕ್ಕೆ ಹೋಗಲು ಮೇಲೆ ಸ್ವೈಪ್ ಮಾಡಿ"</string> <string name="allset_button_hint" msgid="2395219947744706291">"ನಿಮ್ಮ ಹೋಮ್ ಸ್ಕ್ರೀನ್‌ಗೆ ಹೋಗಲು ಹೋಮ್ ಬಟನ್ ಅನ್ನು ಟ್ಯಾಪ್ ಮಾಡಿ"</string> <string name="allset_description_generic" msgid="5385500062202019855">"ನಿಮ್ಮ <xliff:g id="DEVICE">%1$s</xliff:g> ಬಳಸುವುದನ್ನು ಪ್ರಾರಂಭಿಸಲು ನೀವು ಸಿದ್ಧರಾಗಿರುವಿರಿ"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"ನಿಮ್ಮ ಸಾಧನವನ್ನು ಬಳಸಲು ನೀವು ಸಿದ್ಧರಾಗಿದ್ದೀರಿ"</string> + <string name="default_device_name" msgid="6660656727127422487">"ಸಾಧನ"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"ಸಿಸ್ಟಂ ನ್ಯಾವಿಗೇಶನ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"ನಿಮ್ಮ <xliff:g id="DEVICE">%1$s</xliff:g> \nಸಿದ್ದವಾಗಿದೆ!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"ನಿಮ್ಮ ಸಾಧನವು \nಸಿದ್ದವಾಗಿದೆ!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"ನಿಮ್ಮ ಹೊಸ <xliff:g id="DEVICE">%1$s</xliff:g> ಅನ್ನು ಆನಂದಿಸಿ!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"ನ್ಯಾವಿಗೇಟ್ ಮಾಡುವುದು ಹೇಗೆ ಎಂಬುದನ್ನು ಆಯ್ಕೆಮಾಡಿ"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ಮೇಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"ಮುಖಪುಟ ಬಟನ್ ಟ್ಯಾಪ್ ಮಾಡಿ"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ಟ್ಯಾಬ್ಲೆಟ್"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ಫೋನ್"</string> <string name="action_share" msgid="2648470652637092375">"ಹಂಚಿಕೊಳ್ಳಿ"</string> <string name="action_screenshot" msgid="8171125848358142917">"ಸ್ಕ್ರೀನ್‌ಶಾಟ್"</string> <string name="action_split" msgid="2098009717623550676">"ವಿಭಜಿಸಿ"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"\"ಸ್ಕ್ರೀನ್ ಬೇರ್ಪಡಿಸಿ\" ಬಳಸಲು ಬೇರೆ ಆ್ಯಪ್ ಅನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ಆ್ಯಪ್ ಅಥವಾ ನಿಮ್ಮ ಸಂಸ್ಥೆಯು ಈ ಕ್ರಿಯೆಯನ್ನು ಅನುಮತಿಸುವುದಿಲ್ಲ"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"ವಿಜೆಟ್‌ಗಳು ಪ್ರಸ್ತುತ ಬೆಂಬಲಿತವಾಗಿಲ್ಲ, ಮತ್ತೊಂದು ಆ್ಯಪ್ ಅನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"ನ್ಯಾವಿಗೇಶನ್ ಟ್ಯುಟೋರಿಯಲ್ ಸ್ಕಿಪ್ ಮಾಡಬೇಕೇ?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"<xliff:g id="NAME">%1$s</xliff:g> ಆ್ಯಪ್‌ನಲ್ಲಿ ಇದನ್ನು ನಂತರ ಕಾಣಬಹುದು"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"ರದ್ದುಮಾಡಿ"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"ಸ್ಕಿಪ್ ಮಾಡಿ"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"ಸ್ಕ್ರೀನ್ ತಿರುಗಿಸಿ"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"ಸ್ಕ್ರೀನ್ ಕೆಳಗಿನಿಂದ ಟಾಸ್ಕ್ ಬಾರ್ ಹೇಗೆ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಬಳಕೆಯಲ್ಲಿಲ್ಲದಿದ್ದಾಗ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಹೇಗೆ ಮರೆಮಾಡುತ್ತದೆ ಎಂಬುದನ್ನು ತೋರಿಸುವ ಆ್ಯನಿಮೇಶನ್"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"ಟಾಗಲ್ ಬಳಸಿ ನಿಮ್ಮ ಟಾಸ್ಕ್ ಬಾರ್ ಅನ್ನು ಹೇಗೆ ಪಿನ್ ಮಾಡುವುದು ಎಂಬುದನ್ನು ತೋರಿಸುವ ಆ್ಯನಿಮೇಶನ್, ಇದರಿಂದ ಟಾಸ್ಕ್ ಬಾರ್ ಸ್ಕ್ರೀನ್‌ನ ಕೆಳಭಾಗದಲ್ಲಿ ಶಾಶ್ವತವಾಗಿ ಗೋಚರಿಸುತ್ತದೆ"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"ತೆರೆದಿರುವ ಆ್ಯಪ್‌ನ ಮೇಲಿರುವ ಟಾಸ್ಕ್ ಬಾರ್‌ನಿಂದ ಆ್ಯಪ್ ಅನ್ನು ಡ್ರ್ಯಾಗ್ ಅಂಡ್ ಡ್ರಾಪ್ ಮಾಡುವ ಮೂಲಕ ಸ್ಪ್ಲಿಟ್ ಸ್ಕ್ರೀನ್ ಅನ್ನು ಹೇಗೆ ರಚಿಸುವುದು ಎಂಬುದನ್ನು ತೋರಿಸುವ ಆ್ಯನಿಮೇಶನ್"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"ನಿಮ್ಮ ಸಾಧನದಲ್ಲಿ ಸೂಚಿಸಲಾದ ಆ್ಯಪ್‌ಗಳನ್ನು ಹೇಗೆ ಆ್ಯಕ್ಸೆಸ್ ಮಾಡುವುದು ಎಂಬುದನ್ನು ತೋರಿಸುವ ಆ್ಯನಿಮೇಶನ್"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ಸ್ಕ್ರೀನ್ ಮೇಲೆ ಐಟಂ ಅನ್ನು ಹೇಗೆ ಹುಡುಕುವುದು ಎಂಬುದನ್ನು ತೋರಿಸುವ ಆ್ಯನಿಮೇಶನ್, ಆಕ್ಷನ್ ಕೀಯನ್ನು ಸ್ಪರ್ಶಿಸಿ ಮತ್ತು ಒತ್ತಿ ಹಿಡಿಯುವ ಮೂಲಕ ಮತ್ತು ಐಟಂ ಇರುವ ಪ್ರದೇಶವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"ಟಾಸ್ಕ್‌ಬಾರ್ ಶಿಕ್ಷಣ"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"ಒಂದೇ ಬಾರಿಗೆ 2 ಆ್ಯಪ್‌ಗಳನ್ನು ಬಳಸಲು ಆ್ಯಪ್ ಅನ್ನು ಬದಿಗೆ ಎಳೆಯಿರಿ"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"ಟಾಸ್ಕ್‌ಬಾರ್ ಕಾಣುವಂತೆ ಮಾಡಲು ನಿಧಾನವಾಗಿ ಮೇಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"ಯಾವಾಗಲೂ ಟಾಸ್ಕ್‌ಬಾರ್ ತೋರಿಸಿ"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"ನ್ಯಾವಿಗೇಶನ್ ಮೋಡ್ ಬದಲಾಯಿಸಿ"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"ಟಾಸ್ಕ್‌ಬಾರ್ ಡಿವೈಡರ್"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"ಇತರ ಇತ್ತೀಚಿನ ಆ್ಯಪ್‌ಗಳು"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"ಟಾಸ್ಕ್ ಬಾರ್ ಓವರ್‌ಫ್ಲೋ"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ಮೇಲಿನ/ಎಡಭಾಗಕ್ಕೆ ಸರಿಸಿ"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"ಕೆಳಗಿನ/ಬಲಭಾಗಕ್ಕೆ ಸರಿಸಿ"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"ಆ್ಯಪ್ ಅನ್ನು ಬಬಲ್ ಆಗಿ ತೆರೆಯಿರಿ"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"ಮುಚ್ಚುವ ಬಟನ್"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ಟಾಸ್ಕ್‌ಬಾರ್‌ಗೆ ಪಿನ್ ಮಾಡಿ"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ಟಾಸ್ಕ್‌ಬಾರ್‌ನಿಂದ ಅನ್‌ಪಿನ್"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"ನಡ್ಜ್"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"ಮುಚ್ಚಿರಿ"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ಚಿತ್ರವನ್ನು ನಡ್ಜ್ ಮಾಡಿ"</string> </resources> diff --git a/quickstep/res/values-ko/strings.xml b/quickstep/res/values-ko/strings.xml index f4d749b93f..cb8b6c42b3 100644 --- a/quickstep/res/values-ko/strings.xml +++ b/quickstep/res/values-ko/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"자유 형식"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"데스크톱"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"외부 디스플레이로 이동"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"삭제"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"닫기"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"데스크톱"</string> <string name="recents_empty_message" msgid="7040467240571714191">"최근 항목이 없습니다."</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"앱 사용 설정"</string> <string name="recents_clear_all" msgid="5328176793634888831">"모두 삭제"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"새 데스크 추가"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"최근 앱"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1분"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"위로 스와이프하여 홈으로 이동"</string> <string name="allset_button_hint" msgid="2395219947744706291">"홈 화면으로 이동하려면 홈 버튼을 탭하세요."</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> 사용 준비가 완료되었습니다."</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"기기를 사용할 준비가 되었습니다."</string> + <string name="default_device_name" msgid="6660656727127422487">"기기"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"시스템 탐색 설정"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> 기기가 \n준비되었습니다"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"기기가 \n준비되었습니다"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"새로운 <xliff:g id="DEVICE">%1$s</xliff:g> 기기를 즐겨 보세요"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"탐색 방법 선택"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"위로 스와이프"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"홈 버튼을 탭하세요."</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"태블릿"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"휴대전화"</string> <string name="action_share" msgid="2648470652637092375">"공유"</string> <string name="action_screenshot" msgid="8171125848358142917">"스크린샷"</string> <string name="action_split" msgid="2098009717623550676">"분할"</string> @@ -113,21 +104,20 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"화면 분할을 사용하려면 다른 앱을 선택하세요."</string> <string name="blocked_by_policy" msgid="2071401072261365546">"이 작업은 앱 또는 조직에서 허용되지 않습니다."</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"위젯이 현재 지원되지 않습니다. 다른 앱을 선택하세요."</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"이동 방법 튜토리얼을 건너뛰시겠습니까?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"이 튜토리얼은 <xliff:g id="NAME">%1$s</xliff:g> 앱에서 다시 볼 수 있습니다."</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"취소"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"건너뛰기"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"화면 회전"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"화면 하단에서 태스크 바가 표시되고 사용하지 않을 때 자동으로 숨겨지는 과정을 보여 주는 애니메이션"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"화면 하단에 태스크 바가 영구적으로 표시되도록 전환을 사용하여 태스크 바를 고정하는 방법을 보여 주는 애니메이션"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"태스크 바에서 열린 앱 위로 앱을 드래그 앤 드롭하여 화면 분할을 만드는 방법을 보여 주는 애니메이션"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"기기에서 추천 앱에 액세스하는 방법을 보여 주는 애니메이션"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"작업 키를 길게 터치하여 항목이 있는 영역을 선택하여 화면에서 항목을 검색하는 방법을 보여 주는 애니메이션"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"태스크 바 정보"</string> - <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"앱 2개를 동시에 사용하려면 앱을 옆으로 드래그합니다."</string> - <string name="taskbar_edu_stashing" msgid="5645461372669217294">"위로 천천히 스와이프하면 태스크 바가 표시됩니다"</string> + <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"앱을 옆으로 드래그하여 앱 2개를 동시에 사용합니다."</string> + <string name="taskbar_edu_stashing" msgid="5645461372669217294">"위로 천천히 스와이프하면 태스크 바가 표시됩니다."</string> <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"사용 습관에 따라 앱 제안을 받습니다."</string> <string name="taskbar_edu_pinning" msgid="6708550858580071558">"구분선을 길게 눌러 태스크 바를 고정합니다."</string> - <string name="taskbar_edu_features" msgid="3320337287472848162">"태스크 바를 최대한 활용하세요"</string> + <string name="taskbar_edu_features" msgid="3320337287472848162">"태스크 바 최대한 활용하기"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"태스크 바 항상 표시"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"화면 하단에 태스크 바를 항상 표시하려면 구분선을 길게 터치하세요."</string> - <string name="taskbar_search_edu_title" msgid="5569194922234364530">"작업 키를 길게 터치하여 화면의 내용을 검색하세요"</string> + <string name="taskbar_search_edu_title" msgid="5569194922234364530">"화면 내용을 검색하려면 작업 키 길게 터치"</string> <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"이 제품은 사용자가 화면에서 선택한 부분을 사용하여 검색하며, Google <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>개인정보처리방침<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> 및 <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>서비스 약관<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g>이 적용됩니다."</string> <string name="taskbar_edu_close" msgid="887022990168191073">"닫기"</string> <string name="taskbar_edu_done" msgid="6880178093977704569">"완료"</string> @@ -146,13 +136,13 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"태스크 바 항상 표시"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"탐색 모드 변경"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"태스크 바 분할"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"기타 최근 앱"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"태스크 바 오버플로"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"상단/왼쪽으로 이동"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"하단/오른쪽으로 이동"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"앱을 대화창으로 열기"</string> <string name="quick_switch_pane_title" msgid="4677158207760585812">"최근 앱"</string> <string name="quick_switch_content_description" msgid="2851244536728720005">"최근 앱 목록"</string> - <string name="quick_switch_overflow" msgid="3679780650881041632">"{count,plural, =1{개의 추가 앱}other{개의 추가 앱}}"</string> + <string name="quick_switch_overflow" msgid="3679780650881041632">"{count,plural, =1{추가 앱}other{추가 앱}}"</string> <string name="quick_switch_desktop" msgid="8393802056024499749">"데스크톱"</string> <string name="quick_switch_split_task" msgid="5598194724255333896">"<xliff:g id="APP_NAME_1">%1$s</xliff:g> 및 <xliff:g id="APP_NAME_2">%2$s</xliff:g>"</string> <string name="quick_switch_task_with_position_in_parent" msgid="4968670948331508951">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="TOTAL_TASKS">%3$d</xliff:g>개 중 <xliff:g id="INDEX_IN_PARENT">%2$d</xliff:g>번째 항목"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"닫기 버튼"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"태스크 바에 고정"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"태스크 바에서 고정 해제"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"조금씩 이동"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"닫기"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"이미지를 조금씩 이동"</string> </resources> diff --git a/quickstep/res/values-ky/strings.xml b/quickstep/res/values-ky/strings.xml index 4c10853a5a..167df7357d 100644 --- a/quickstep/res/values-ky/strings.xml +++ b/quickstep/res/values-ky/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Эркин форма режими"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Компьютер"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Тышкы экранга жылдыруу"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Тазалоо"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Жабуу"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Компьютер"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Акыркы колдонмолор жок"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Колдонмону пайдалануу параметрлери"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Баарын тазалоо"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Жаңы иш такта кошуу"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Акыркы колдонмолор"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 мүнөт"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Башкы бетке өтүү үчүн экранды өйдө сүрүңүз"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Башкы экранга өтүү үчүн башкы бет баскычын таптап коюңуз"</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> колдоно берсеңиз болот"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Түзмөгүңүздү колдоно берсеңиз болот"</string> + <string name="default_device_name" msgid="6660656727127422487">"Түзмөктү"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Өтүү аракетинин системалык параметрлери"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> \nдаяр!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Түзмөгүңүз \nдаяр!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Жаңы <xliff:g id="DEVICE">%1$s</xliff:g> кут болсун!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Өтүү жолун тандаңыз"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Өйдө сүрүү"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Башкы бет баскычын таптап коюңуз"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"планшет"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"телефон"</string> <string name="action_share" msgid="2648470652637092375">"Бөлүшүү"</string> <string name="action_screenshot" msgid="8171125848358142917">"Скриншот"</string> <string name="action_split" msgid="2098009717623550676">"Бөлүү"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Экранды бөлүү үчүн башка колдонмону тандаңыз"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Бул аракетти аткарууга колдонмо же ишканаңыз тыюу салган"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Виджеттер учурда колдоого алынбайт, башка колдонмону тандаңыз"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Жаңсоолор үйрөткүчүн өткөрүп жибересизби?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Аны кийин <xliff:g id="NAME">%1$s</xliff:g> колдонмосунан табасыз"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Жокко чыгаруу"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Өткрп жиберүү"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Экранды буруу"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Тапшырмалар панели экрандын ылдый жагында пайда болуп, колдонулбаганда автоматтык түрдө жашырылганын көрсөткөн анимация"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Которгучтун жардамы менен тапшырмалар панелин экрандын ылдый жагына кадап коюуну көрсөткөн анимация"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Тапшырмалар панелиндеги колдонмону ачылып турган колдонмонун үстүнө сүйрөп барып, экранды бөлүүнү көрсөткөн анимация"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Түзмөктөгү сунушталган колдонмолорго кантип кирүүнү көрсөткөн анимация"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Аракет баскычын басып туруп, нерсе турган аймакты тандоо менен экрандагы нерсени издөөнү көрсөткөн анимация"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Тапшырмалар тактасы жөнүндө маалымат"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"2 колдонмону бир убакта пайдалануу үчүн капталга сүйрөйсүз"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Тапшырмалар тактасын көрүү үчүн экранды жай өйдө сүрүңүз"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Такта ар дайым көрүнсүн"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Өтүү режимин өзгөртүү"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Тапшырмалар панелин бөлгүч"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Акыркы жолу ачылган башка колдонмолор"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"\"Тапшырмалар панели\" кошумча менюсу"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Жогорку/сол бурчка жылдыруу"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Төмөнкү/оң бурчка жылдыруу"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Колдонмону көбүкчө катары ачуу"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Жабуу баскычы"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Тапшырмалар панелине кадоо"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Тапшырмалар панелинен алуу"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Түртүү"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Жабуу"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Түртүү сүрөтү"</string> </resources> diff --git a/quickstep/res/values-land/dimens.xml b/quickstep/res/values-land/dimens.xml index efdc7de433..e862b9ea6d 100644 --- a/quickstep/res/values-land/dimens.xml +++ b/quickstep/res/values-land/dimens.xml @@ -81,9 +81,9 @@ <dimen name="taskbar_contextual_button_suw_margin">48dp</dimen> <dimen name="taskbar_contextual_button_suw_height">48dp</dimen> <dimen name="taskbar_suw_frame">96dp</dimen> - <dimen name="taskbar_suw_insets">48dp</dimen> + <dimen name="taskbar_suw_insets">24dp</dimen> - <!-- Keyboard Quick Switch --> - <dimen name="keyboard_quick_switch_taskview_width">217.6dp</dimen> + <dimen name="keyboard_quick_switch_taskview_width">205dp</dimen> + <dimen name="keyboard_quick_switch_taskview_height">119dp</dimen> </resources> diff --git a/quickstep/res/values-lo/strings.xml b/quickstep/res/values-lo/strings.xml index 93b3c2429c..0539e1ff52 100644 --- a/quickstep/res/values-lo/strings.xml +++ b/quickstep/res/values-lo/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"ຮູບແບບອິດສະຫລະ"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ເດັສທັອບ"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"ຍ້າຍໄປຫາຈໍສະແດງຜົນພາຍນອກ"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"ລຶບລ້າງ"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"ປິດ"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ເດັສທັອບ"</string> <string name="recents_empty_message" msgid="7040467240571714191">"ບໍ່ມີລາຍການຫຼ້າສຸດ"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"ການຕັ້ງຄ່າການນຳໃຊ້ແອັບ"</string> <string name="recents_clear_all" msgid="5328176793634888831">"ລຶບລ້າງທັງໝົດ"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"ເພີ່ມໂຕະໃໝ່"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"ແອັບຫຼ້າສຸດ"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 ນາທີ"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"ປັດຂຶ້ນເພື່ອໄປຫາໜ້າຫຼັກ"</string> <string name="allset_button_hint" msgid="2395219947744706291">"ແຕະປຸ່ມໜ້າທຳອິດເພື່ອໄປຫາໂຮມສະກຣີນຂອງທ່ານ"</string> <string name="allset_description_generic" msgid="5385500062202019855">"ທ່ານເລີ່ມໃຊ້<xliff:g id="DEVICE">%1$s</xliff:g>ຂອງທ່ານໄດ້ແລ້ວ"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"ທ່ານເລີ່ມໃຊ້ອຸປະກອນຂອງທ່ານແລ້ວ"</string> + <string name="default_device_name" msgid="6660656727127422487">"ອຸປະກອນ"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"ການຕັ້ງຄ່າການນຳທາງລະບົບ"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> ຂອງທ່ານ\nພ້ອມແລ້ວ!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"ອຸປະກອນຂອງທ່ານ\nພ້ອມແລ້ວ!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"ເພີດເພີນໄປກັບ <xliff:g id="DEVICE">%1$s</xliff:g> ເຄື່ອງໃໝ່ຂອງທ່ານ!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"ເລືອກວິທີນຳທາງໄປຫາພາກສ່ວນຕ່າງໆ"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ປັດຂຶ້ນ"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"ແຕະປຸ່ມໜ້າທຳອິດ"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ແທັບເລັດ"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ໂທລະສັບ"</string> <string name="action_share" msgid="2648470652637092375">"ແບ່ງປັນ"</string> <string name="action_screenshot" msgid="8171125848358142917">"ຮູບໜ້າຈໍ"</string> <string name="action_split" msgid="2098009717623550676">"ແບ່ງ"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"ເລືອກແອັບອື່ນເພື່ອໃຊ້ການແບ່ງໜ້າຈໍ"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ແອັບ ຫຼື ອົງການຂອງທ່ານບໍ່ອະນຸຍາດໃຫ້ໃຊ້ຄຳສັ່ງນີ້"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"ຍັງບໍ່ຮອງຮັບວິດເຈັດໃນຕອນນີ້, ກະລຸນາເລືອກແອັບອື່ນ"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"ຂ້າມການສອນການນຳໃຊ້ການນຳທາງບໍ?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"ທ່ານສາມາດຊອກສ່ວນນີ້ພາຍຫຼັງໄດ້ໃນແອັບ <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"ຍົກເລີກ"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"ຂ້າມ"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"ໝຸນໜ້າຈໍ"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"ພາບເຄື່ອນໄຫວສະແດງວິທີເຮັດໃຫ້ແຖບໜ້າວຽກປາກົດຂຶ້ນຈາກລຸ່ມສຸດຂອງໜ້າຈໍ ແລະ ເຊື່ອງໂດຍອັດຕະໂນມັດເມື່ອບໍ່ໄດ້ນຳໃຊ້"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"ພາບເຄື່ອນໄຫວສະແດງວິທີປັກໝຸດແຖບໜ້າວຽກຂອງທ່ານໂດຍໃຊ້ປຸ່ມເປີດ/ປິດ, ເພື່ອໃຫ້ແຖບໜ້າວຽກຍັງຄົງປາກົດຢູ່ລຸ່ມສຸດຂອງໜ້າຈໍຕະຫຼອດເວລາ"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"ພາບເຄື່ອນໄຫວສະແດງວິທີສ້າງໂໝດແບ່ງໜ້າຈໍ, ໂດຍການລາກ ແລະ ວາງແອັບຈາກແຖບໜ້າວຽກໄວ້ເທິງແອັບທີ່ເປີດຢູ່"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"ພາບເຄື່ອນໄຫວສະແດງວິທີເຂົ້າເຖິງແອັບທີ່ແນະນຳໃນອຸປະກອນຂອງທ່ານ"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ພາບເຄື່ອນໄຫວສະແດງວິທີຊອກຫາລາຍການຢູ່ໜ້າຈໍ, ໂດຍການແຕະປຸ່ມຄຳສັ່ງຄ້າງໄວ້ແລ້ວເລືອກພື້ນທີ່ທີ່ລາຍການນັ້ນຢູ່"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"ແຖບໜ້າວຽກ Education"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"ລາກແອັບໄປດ້ານຂ້າງເພື່ອໃຊ້ 2 ແອັບໃນເວລາດຽວກັນ"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"ປັດຂຶ້ນຊ້າໆເພື່ອສະແດງແຖບໜ້າວຽກ"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"ສະແດງແຖບໜ້າວຽກສະເໝີ"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"ປ່ຽນໂໝດການນຳທາງ"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"ເສັ້ນແບ່ງແຖບໜ້າວຽກ"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"ແອັບຫຼ້າສຸດອື່ນໆ"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"ສ່ວນເພີ່ມເຕີມຂອງແຖບໜ້າວຽກ"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ຍ້າຍໄປຊ້າຍ/ເທິງ"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"ຍ້າຍໄປຂວາ/ລຸ່ມ"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"ເປີດແອັບເປັນຟອງ"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"ປຸ່ມປິດ"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ປັກໝຸດໄປໃສ່ແຖບໜ້າວຽກ"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ຖອດປັກໝຸດຈາກແຖບໜ້າວຽກ"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"ສະກິດ"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"ປິດ"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ຮູບສະກິດ"</string> </resources> diff --git a/quickstep/res/values-lt/strings.xml b/quickstep/res/values-lt/strings.xml index 74e0802d10..dbc5649e29 100644 --- a/quickstep/res/values-lt/strings.xml +++ b/quickstep/res/values-lt/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Laisva forma"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Stalinis kompiuteris"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Perkelkite į išorinį ekraną"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Išvalyti"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Uždaryti"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Stalinis kompiuteris"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Nėra jokių naujausių elementų"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Programos naudojimo nustatymai"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Išvalyti viską"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Pridėti naują darbalaukį"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Naujausios programos"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min."</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Perbraukite aukštyn, kad grįžtumėte į pagrindinį ekraną"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Norėdami eiti į pagrindinį ekraną, palieskite pagrindinio ekrano mygtuką"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Jau parengta naudoti: <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Esate pasirengę pradėti naudoti įrenginį"</string> + <string name="default_device_name" msgid="6660656727127422487">"įrenginys"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Sistemos naršymo nustatymai"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"„<xliff:g id="DEVICE">%1$s</xliff:g>“ \nparuoštas!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Įrenginys \nparuoštas!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Mėgaukitės naujuoju „<xliff:g id="DEVICE">%1$s</xliff:g>“!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Pasirinkite naršymo būdą"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Perbraukti aukštyn"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Palieskite pagrindinio ekrano mygtuką"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"planšetinis kompiuteris"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefonas"</string> <string name="action_share" msgid="2648470652637092375">"Bendrinti"</string> <string name="action_screenshot" msgid="8171125848358142917">"Ekrano kopija"</string> <string name="action_split" msgid="2098009717623550676">"Išskaidymo režimas"</string> @@ -113,15 +104,14 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Išskaidyto ekrano režimą naudokite kita programa"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Jūsų organizacijoje arba naudojant šią programą neleidžiama atlikti šio veiksmo"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Valdikliai šiuo metu nepalaikomi, pasirinkite kitą programą"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Praleisti naršymo mokymo programą?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Tai galėsite rasti vėliau programoje „<xliff:g id="NAME">%1$s</xliff:g>“"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Atšaukti"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Praleisti"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Pasukti ekraną"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animacija, kaip užduočių juosta pasirodo iš ekrano apačios ir automatiškai paslepiama, kai ji nenaudojama"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animacija, kaip prisegti užduočių juostą naudojant jungiklį, kad užduočių juosta visada būtų matoma ekrano apačioje"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animacija, kaip išskaidyti ekraną nuvelkant programą iš užduočių juostos virš atidarytos programos"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animacija, kaip pasiekti siūlomas programas įrenginyje"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animacija, kaip ieškoti elemento ekrane, paliečiant ir palaikant veiksmų klavišą ir pasirenkant sritį, kurioje yra elementas"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Užduočių juostos mokomoji informacija"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Nuvilkę programą į šoną vienu metu naudokite dvi programas"</string> - <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Lėtai braukite, kad būtų rodoma Užduočių juosta"</string> + <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Trumpai perbraukite, kad būtų rodoma Užduočių juosta"</string> <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"Gaukite programų pasiūlymų pagal savo veiklą"</string> <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Ilgai paspauskite daliklį, kad prisegtumėte užduočių juostą"</string> <string name="taskbar_edu_features" msgid="3320337287472848162">"Atlikite daugiau naudodami Užduočių juostą"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Visada rodyti užduočių juostą"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Keisti naršymo režimą"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Užduočių juostos daliklis"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Kitos naujausios programos"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Užduočių juostos perpildymas"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Perkelti aukštyn, kairėn"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Perkelti žemyn, dešinėn"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Atidaryti programą kaip burbulą"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Mygtukas „Uždaryti“"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Priseg. prie užd. j."</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Atsegti nuo užd. j."</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Priminimas"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Uždaryti"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Pastumti vaizdą"</string> </resources> diff --git a/quickstep/res/values-lv/strings.xml b/quickstep/res/values-lv/strings.xml index ef973db56d..4423261eca 100644 --- a/quickstep/res/values-lv/strings.xml +++ b/quickstep/res/values-lv/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Brīva forma"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Dators"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Pārvietošana uz ārējo displeju"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Notīrīt"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Aizvērt"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Darbvirsma"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Nav nesenu vienumu."</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Lietotņu izmantošanas iestatījumi"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Notīrīt visu"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Pievienot jaunu darbvietu"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Pēdējās izmantotās lietotnes"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt;1 minūte"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Velciet augšup, lai pārietu uz sākuma ekrānu"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Pieskarieties pogai Sākums, lai dotos uz sākuma ekrānu"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Jūsu <xliff:g id="DEVICE">%1$s</xliff:g> ir gatava lietošanai"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Varat sākt izmantot savu ierīci"</string> + <string name="default_device_name" msgid="6660656727127422487">"ierīce"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Sistēmas navigācijas iestatījumi"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Jūsu <xliff:g id="DEVICE">%1$s</xliff:g> ir \ngatavs!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Jūsu ierīce ir \ngatava!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Izbaudiet savu jauno ierīci (<xliff:g id="DEVICE">%1$s</xliff:g>)!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Izvēlieties navigācijas veidu"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Velciet augšup"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Pieskarieties pogai Sākums"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"planšetdators"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"tālrunis"</string> <string name="action_share" msgid="2648470652637092375">"Kopīgot"</string> <string name="action_screenshot" msgid="8171125848358142917">"Veikt ekrānuzņēmumu"</string> <string name="action_split" msgid="2098009717623550676">"Sadalīt"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Izvēlieties citu lietotni, lai sadalītu ekrānu"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Lietotne vai jūsu organizācija neatļauj veikt šo darbību."</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Logrīki pašlaik netiek atbalstīti. Lūdzu, atlasiet citu lietotni."</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Vai izlaist navigācijas mācības?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Varēsiet to vēlāk atrast lietotnē <xliff:g id="NAME">%1$s</xliff:g>."</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Atcelt"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Izlaist"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Pagriezt ekrānu"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animācija, kurā redzams, kā uzdevumu josla tiek parādīta ekrāna apakšdaļā un automātiski tiek paslēpta, kad netiek izmantota"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animācija, kurā redzams, kā, izmantojot slēdzi, piespraust uzdevumu joslu, lai tā vienmēr tiktu rādīta ekrāna apakšdaļā"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animācija, kurā redzams, kā izveidot sadalītu ekrānu, velkot un nometot kādu lietotni no uzdevumu joslas virs atvērtas lietotnes"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animācija, kurā redzams, kā piekļūt ieteiktajām lietotnēm savā ierīcē"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animācija, kurā redzams, kā meklēt ekrānā redzamo vienumu, pieskaroties darbību taustiņam un turot to, kā arī atlasot apgabalu, kurā atrodas vienums"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Informācija par uzdevumu joslu"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Velciet lietotni sānis, lai izmantotu 2 lietotnes vienlaikus"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Lai skatītu uzdevumu joslu, lēni velciet augšup"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Vienmēr rādīt uzdevumu joslu"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Mainīt navigācijas režīmu"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Uzdevumu joslas atdalītājs"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Citas nesen izmantotās lietotnes"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Uzdevumu joslas pārpilde"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Pārvietot uz augšējo/kreiso stūri"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Pārvietot uz apakšējo/labo stūri"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Atvērt lietotni kā burbuli"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Poga Aizvērt"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Piespraust uzdevumu joslai"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Atspraust no uzdevumu joslas"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Pavirzīšana"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Aizvērt"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Pavirzīt attēlu"</string> </resources> diff --git a/quickstep/res/values-mk/strings.xml b/quickstep/res/values-mk/strings.xml index 3ed429e30e..e2fac661fc 100644 --- a/quickstep/res/values-mk/strings.xml +++ b/quickstep/res/values-mk/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Freeform"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Работна површина"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Префрлете се на надворешниот екран"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Избришете"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Затвори"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"За компјутер"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Нема неодамнешни ставки"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Поставки за користење на апликациите"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Избриши ги сите"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Додајте нова работна површина"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Неодамнешни апликации"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 минута"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Повлечете нагоре за да го отворите почетниот екран"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Допрете го копчето за почетен екран за да одите на почетниот екран"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Подготвени сте да почнете да го користите вашиот <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Подготвени сте да започнете да го користите вашиот уред"</string> + <string name="default_device_name" msgid="6660656727127422487">"уред"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Поставки за системска навигација"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Вашиот <xliff:g id="DEVICE">%1$s</xliff:g> е \nподготвен!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Вашиот уред е \nподготвен!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Уживајте во новиот <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Изберете поставки за навигација"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Повлечете нагоре"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Допрете го копчето за почетен екран"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"таблет"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"телефон"</string> <string name="action_share" msgid="2648470652637092375">"Сподели"</string> <string name="action_screenshot" msgid="8171125848358142917">"Слика од екранот"</string> <string name="action_split" msgid="2098009717623550676">"Раздели"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Изберете друга апликација за да користите поделен екран"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Апликацијата или вашата организација не го дозволува дејствово"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Виџетите не се поддржани во моментов, изберете друга апликација"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Да се прескокне упатството за навигација?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Ова може да го најдете подоцна во апликацијата <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Откажи"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Прескокни"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Ротирајте го екранот"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Анимација што прикажува како „Лентата со задачи“ се појавува од дното на екранот и автоматски се крие кога не се користи"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Анимација што прикажува како да ја закачите „Лентата со задачи“ со прекинувач за да може „Лентата со задачи“ да остане трајно видлива на дното на екранот"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Анимација што прикажува како да создадете поделен екран, со влечење и спуштање апликација од „Лентата со задачи“ над отворена апликација"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Анимација што прикажува како да пристапите до предложените апликации на вашиот уред"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Анимација што прикажува како да пребарате ставка на екранот, со допирање и задржување на копчето за дејство и избирање на областа во која се наоѓа ставката"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Обука за лентата со задачи"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Повлечете апликација настрана за да користите 2 апликации одеднаш"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Полека повлечете нагоре за да се прикаже „Лентата со задачи“"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Секогаш прикажувај „Лента“"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Променете режим на навигација"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Разделник на „Лента со задачи“"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Други неодамнешни апликации"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Проширено балонче на „Лента со задачи“"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Премести горе лево"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Премести долу десно"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Отвори апликација како балонче"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Копче за затворање"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Закачи на лентата"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Откачи од лентата"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Потсетување"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Затвори"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Слика на потсетување"</string> </resources> diff --git a/quickstep/res/values-ml/strings.xml b/quickstep/res/values-ml/strings.xml index 75c4ca8b35..73c795b420 100644 --- a/quickstep/res/values-ml/strings.xml +++ b/quickstep/res/values-ml/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"ഫ്രീഫോം"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ഡെസ്‌ക്ടോപ്പ്"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"ബാഹ്യ ഡിസ്‌പ്ലേയിലേക്ക് നീക്കുക"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"മായ്ക്കുക"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"അടയ്‌ക്കുക"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ഡെസ്‌ക്ടോപ്പ്"</string> <string name="recents_empty_message" msgid="7040467240571714191">"സമീപകാല ഇനങ്ങൾ ഒന്നുമില്ല"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"ആപ്പ് ഉപയോഗ ക്രമീകരണം"</string> <string name="recents_clear_all" msgid="5328176793634888831">"എല്ലാം മായ്‌ക്കുക"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"പുതിയ ഡെസ്‌ക് ചേർക്കുക"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"സമീപകാല ആപ്പുകൾ"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 മിനിറ്റ്"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"ഹോമിലേക്ക് പോകാൻ മുകളിലേക്ക് സ്വൈപ്പ് ചെയ്യുക"</string> <string name="allset_button_hint" msgid="2395219947744706291">"നിങ്ങളുടെ ഹോം സ്ക്രീനിലേക്ക് പോകാൻ ഹോം ബട്ടൺ ടാപ്പ് ചെയ്യുക"</string> <string name="allset_description_generic" msgid="5385500062202019855">"നിങ്ങൾക്ക് <xliff:g id="DEVICE">%1$s</xliff:g> ഉപയോഗിച്ചു തുടങ്ങാം"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"നിങ്ങളുടെ ഉപകരണം ഉപയോഗിച്ച് തുടങ്ങാൻ നിങ്ങൾ തയ്യാറാണ്"</string> + <string name="default_device_name" msgid="6660656727127422487">"ഉപകരണം"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"സിസ്‌റ്റം നാവിഗേഷൻ ക്രമീകരണം"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"നിങ്ങളുടെ <xliff:g id="DEVICE">%1$s</xliff:g> \nതയ്യാറാണ്!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"നിങ്ങളുടെ ഉപകരണം \nതയ്യാറാണ്!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"നിങ്ങളുടെ പുതിയ <xliff:g id="DEVICE">%1$s</xliff:g> ആസ്വദിക്കുക!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"നാവിഗേറ്റ് ചെയ്യുന്നത് എങ്ങനെയെന്ന് അറിയുക"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"മുകളിലേക്ക് സ്വൈപ്പ് ചെയ്യുക"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"ഹോം ബട്ടൺ ടാപ്പ് ചെയ്യുക"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ടാബ്‌ലെറ്റ്"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ഫോൺ"</string> <string name="action_share" msgid="2648470652637092375">"പങ്കിടുക"</string> <string name="action_screenshot" msgid="8171125848358142917">"സ്ക്രീൻഷോട്ട്"</string> <string name="action_split" msgid="2098009717623550676">"വിഭജിക്കുക"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"സ്ക്രീൻ വിഭജന മോഡിന് മറ്റൊരു ആപ്പ് തിരഞ്ഞെടുക്കൂ"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ഈ നടപടി എടുക്കുന്നത് ആപ്പോ നിങ്ങളുടെ സ്ഥാപനമോ അനുവദിക്കുന്നില്ല"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"വിജറ്റുകൾക്ക് നിലവിൽ പിന്തുണയില്ല, മറ്റൊരു ആപ്പ് തിരഞ്ഞെടുക്കുക"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"നാവിഗേഷൻ ട്യൂട്ടോറിയൽ ഒഴിവാക്കണോ?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"<xliff:g id="NAME">%1$s</xliff:g> ആപ്പിൽ നിങ്ങൾക്ക് ഇത് പിന്നീട് കാണാനാകും"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"റദ്ദാക്കുക"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"ഒഴിവാക്കുക"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"സ്‌ക്രീൻ റൊട്ടേറ്റ് ചെയ്യുക"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"സ്‌ക്രീനിന്റെ അടിയിൽ നിന്ന് ടാസ്‌ക്ബാർ എങ്ങനെയാണ് ദൃശ്യമാകുന്നതെന്നും, ഉപയോഗത്തിലില്ലാത്തപ്പോൾ എങ്ങനെയാണ് സ്വയമേവ മറയുന്നതെന്നും കാണിക്കുന്ന ആനിമേഷൻ"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"ടാസ്‌ക്ബാർ ശാശ്വതമായി സ്‌ക്രീനിന്റെ താഴെ ദൃശ്യമാകുന്ന തരത്തിൽ, ടോഗിൾ ഉപയോഗിച്ച് ടാസ്‌ക്‌ബാർ എങ്ങനെ പിൻ ചെയ്യാമെന്ന് കാണിക്കുന്ന ആനിമേഷൻ"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"തുറന്ന ആപ്പിന് മുകളിലുള്ള ടാസ്‌ക്‌ബാറിൽ നിന്ന് ഒരു ആപ്പ് വലിച്ചിടുന്നതിലൂടെ സ്‌പ്ലിറ്റ് സ്‌ക്രീൻ എങ്ങനെ സൃഷ്‌ടിക്കാമെന്ന് കാണിക്കുന്ന ആനിമേഷൻ"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"നിർദ്ദേശിച്ചിരിക്കുന്ന ആപ്പുകൾ നിങ്ങളുടെ ഉപകരണത്തിൽ എങ്ങനെ ആക്സസ് ചെയ്യാമെന്ന് കാണിക്കുന്ന ആനിമേഷൻ"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ഇനം സ്ഥിതി ചെയ്യുന്ന ഏരിയ തിരഞ്ഞെടുത്ത് ആക്ഷൻ കീ സ്‌പർശിച്ചുപിടിക്കുന്നതിലൂടെ, സ്ക്രീനിൽ ഇനം എങ്ങനെ തിരയാമെന്ന് കാണിക്കുന്ന ആനിമേഷൻ"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"ടാസ്‌ക്ബാർ മാർഗ്ഗനിർദ്ദേശ വിൻഡോ"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"ഒരേ സമയം 2 ആപ്പുകൾ ഉപയോഗിക്കാൻ ഒരു ആപ്പ് വശത്തേക്ക് വലിച്ചിടൂ"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"ടാസ്‌ക്ബാർ ദൃശ്യമാക്കാൻ മുകളിലേക്ക് പതുക്കെ സ്വൈപ്പ് ചെയ്യൂ"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"ടാസ്‌ക്ബാർ എപ്പോഴും കാണിക്കൂ"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"നാവിഗേഷൻ മോഡ് മാറ്റുക"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"ടാസ്‌ക്ബാർ ഡിവൈഡർ"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"അടുത്തിടെ ഉപയോഗിച്ച മറ്റ് ആപ്പുകൾ"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"ടാസ്‌ക്ബാർ ഓവർഫ്ലോ"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"മുകളിലേക്കോ ഇടത്തേക്കോ നീക്കുക"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"താഴേക്കോ വലത്തേക്കോ നീക്കുക"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"ആപ്പ് ഒരു ബബിളായി തുറക്കുക"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"അടയ്ക്കുക ബട്ടൺ"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ടാസ്ക്ബാറിൽ ചേർക്കൂ"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ടാസ്ക്ബാറിൽ നിന്ന് മാറ്റൂ"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"നഡ്‌ജ്"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"അടയ്‌ക്കുക"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ചിത്രം നഡ്‌ജ് ചെയ്യുക"</string> </resources> diff --git a/quickstep/res/values-mn/strings.xml b/quickstep/res/values-mn/strings.xml index 4c5805c14f..186e4dc3f0 100644 --- a/quickstep/res/values-mn/strings.xml +++ b/quickstep/res/values-mn/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Чөлөөтэй хувьсах"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Компьютер"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Гадаад дэлгэц рүү зөөх"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Арилгах"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Хаах"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Дэлгэц"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Сүүлийн үеийн зүйл алга"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Апп ашиглалтын тохиргоо"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Бүгдийг арилгах"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Шинэ дэлгэц нэмэх"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Саяхны аппууд"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 минут"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Нүүр хуудас руу очихын тулд дээш шударна уу"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Үндсэн нүүр лүүгээ очихын тулд нүүр хуудасны товчлуурыг товшино уу"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Та <xliff:g id="DEVICE">%1$s</xliff:g>-г ашиглаж эхлэхэд бэлэн боллоо"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Та төхөөрөмжөө ашиглаж эхлэхэд бэлэн байна"</string> + <string name="default_device_name" msgid="6660656727127422487">"төхөөрөмж"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Системийн навигацын тохиргоо"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Таны <xliff:g id="DEVICE">%1$s</xliff:g>\nбэлэн байна!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Таны төхөөрөмж \nбэлэн байна!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Өөрийн шинэ <xliff:g id="DEVICE">%1$s</xliff:g>-г таалан ашиглаарай!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Хэрхэн шилжихийг сонгох"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Дээш шудрах"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Нүүр хуудасны товчин дээр товшино уу"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"таблет"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"утас"</string> <string name="action_share" msgid="2648470652637092375">"Хуваалцах"</string> <string name="action_screenshot" msgid="8171125848358142917">"Дэлгэцийн агшин дарах"</string> <string name="action_split" msgid="2098009717623550676">"Хуваах"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Дэлгэцийг хуваах горим ашиглах өөр апп сонгоно уу"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Энэ үйлдлийг апп эсвэл танай байгууллага зөвшөөрдөггүй"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Виджетүүдийг одоогоор дэмждэггүй. Өөр апп сонгоно уу"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Навигацын практик хичээлийг алгасах уу?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Та үүнийг дараа нь <xliff:g id="NAME">%1$s</xliff:g> аппаас олох боломжтой"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Цуцлах"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Алгасах"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Дэлгэцийг эргүүлэх"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Ажлын хэсэг дэлгэцийн доод талаас хэрхэн гарч ирж, ашиглаагүй үед автоматаар нуугдахыг харуулах хөдөлгөөнт зураг"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Ажлын хэсгийг дэлгэцийн доод талд байнга харуулахын тулд асаах/унтраах тохиргоог ашиглан ажлын хэсгээ хэрхэн бэхлэхийг харуулах хөдөлгөөнт зураг"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Нээлттэй аппын дээрх ажлын хэсгээс аппыг зөөж хийж хуваагдсан дэлгэц хэрхэн үүсгэхийг харуулах хөдөлгөөнт зураг"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Төхөөрөмж дээр тань санал болгосон аппад хэрхэн хандахыг харуулах хөдөлгөөнт зураг"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Тусгай товчинд хүрээд удаан дарж, юм байгаа хэсгийг сонгож дэлгэц дээрээс хэрхэн юм хайхыг харуулах хөдөлгөөнт зураг"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Ажлын хэсгийн боловсрол"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"2 аппыг зэрэг ашиглахын тулд аппыг хажуу тийш чирнэ үү"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Ажлын хэсгийг харуулахын тулд аажмаар дээш шударна уу"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Ажлын хэсгийг үргэлж харуулах"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Навигацын горимыг өөрчлөх"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Ажлын хэсгийг хуваагч"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Саяхан ашигласан бусад апп"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Ажлын хэсгийн урт цэс"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Зүүн дээд хэсэг рүү зөөх"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Баруун доод хэсэг рүү зөөх"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Аппыг бөмбөлөг байдлаар нээх"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Хаах товч"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Ажлын хэсэгт бэхлэх"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Бэхэлснийг болиулах"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Нудрах"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Хаах"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Зургийг нудрах"</string> </resources> diff --git a/quickstep/res/values-mr/strings.xml b/quickstep/res/values-mr/strings.xml index 0f745a0bec..ef44bb2b12 100644 --- a/quickstep/res/values-mr/strings.xml +++ b/quickstep/res/values-mr/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"फ्रीफॉर्म"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"डेस्कटॉप"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"बाह्य डिस्प्लेवर हलवा"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"साफ करा"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"बंद करा"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"डेस्कटॉप"</string> <string name="recents_empty_message" msgid="7040467240571714191">"कोणतेही अलीकडील आयटम नाहीत"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"अ‍ॅप वापर सेटिंग्ज"</string> <string name="recents_clear_all" msgid="5328176793634888831">"सर्व साफ करा"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"नवीन डेस्क जोडा"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"अलीकडील अ‍ॅप्स"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"१मिहून कमी"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"होमवर जाण्यासाठी वरती स्वाइप करा"</string> <string name="allset_button_hint" msgid="2395219947744706291">"तुमच्या होम स्क्रीनवर जाण्यासाठी होम बटणावर टॅप करा"</string> <string name="allset_description_generic" msgid="5385500062202019855">"तुम्ही तुमचे <xliff:g id="DEVICE">%1$s</xliff:g> वापरण्यास सुरुवात करू शकता"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"तुम्ही तुमचे डिव्हाइस वापरण्यास सुरुवात करण्यासाठी तयार आहात"</string> + <string name="default_device_name" msgid="6660656727127422487">"डिव्हाइस"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"सिस्टीम नेव्हिगेशन सेटिंग्ज"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"तुमचा <xliff:g id="DEVICE">%1$s</xliff:g> \nतयार आहे!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"तुमचे डिव्हाइस \nतयार आहे!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"तुमच्या नवीन <xliff:g id="DEVICE">%1$s</xliff:g> चा आनंद घ्या!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"कसे नेव्हिगेट करायचे हे निवडा"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"वर स्वाइप करा"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"होम बटणावर टॅप करा"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"टॅबलेट"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"फोन"</string> <string name="action_share" msgid="2648470652637092375">"शेअर करा"</string> <string name="action_screenshot" msgid="8171125848358142917">"स्क्रीनशॉट"</string> <string name="action_split" msgid="2098009717623550676">"स्प्लिट करा"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"स्प्लिट स्क्रीन वापरण्यासाठी दुसरे ॲप निवडा"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"अ‍ॅप किंवा तुमच्या संस्थेद्वारे ही क्रिया करण्याची अनुमती नाही"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"विजेटना सध्या सपोर्ट नाही, कृपया दुसरे अ‍ॅप निवडा"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"नेव्हिगेशन ट्यूटोरियल वगळायचे आहे का?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"तुम्हाला हे नंतर <xliff:g id="NAME">%1$s</xliff:g> ॲपमध्ये मिळेल"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"रद्द करा"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"वगळा"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"स्क्रीन फिरवा"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"टास्कबार स्क्रीनच्या तळापासून कसा दिसू लागतो आणि वापरात नसताना आपोआप कसा लपवला जातो हे दाखवणारे ॲनिमेशन"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"टॉगल वापरून तुमचा टास्कबार कसा पिन करायचा, जेणेकरून टास्कबार तुमच्या स्क्रीनच्या तळाशी कायमचा दृश्यमान राहतो हे दाखवणारे ॲनिमेशन"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"उघडलेल्या अ‍ॅपच्या वर असलेल्या टास्कबारमधून अ‍ॅप ड्रॅग करून ड्रॉप करून स्प्लिट स्क्रीन कशी तयार करावी हे दाखवणारे ॲनिमेशन"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"तुमच्या डिव्हाइसवर सुचवलेली अ‍ॅप्स अ‍ॅक्सेस कशी करावी हे दाखवणारे अ‍ॅनिमेशन"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"अ‍ॅक्शन कीला स्‍पर्श करून धरून ठेवून आयटम असलेला भाग निवडून स्क्रीनवर आयटम कसा शोधावा हे दाखवणारे अ‍ॅनिमेशन"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"टास्कबारशी संबंधित माहिती"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"दोन ॲप्स एकत्र वापरण्यासाठी एक अ‍ॅप बाजूला ड्रॅग करा"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"टास्कबार दाखवण्यासाठी थोडे हळू वरती स्वाइप करा"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"नेहमी टास्कबार दाखवा"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"नेव्हिगेशन मोड बदला"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"टास्कबार विभाजक"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"अलीकडील इतर अ‍ॅप्स"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"टास्कबार ओव्हरफ्लो"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"सर्वात वरती/डावीकडे हलवा"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"तळाशी/उजवीकडे हलवा"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"बबल म्हणून अ‍ॅप उघडा"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"बंद करा बटण"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"टास्कबारवर पिन करा"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"टास्कबारवरून अनपिन करा"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"नज"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"बंद करा"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"नज इमेज"</string> </resources> diff --git a/quickstep/res/values-ms/strings.xml b/quickstep/res/values-ms/strings.xml index db7379c4e0..cb37a04f8a 100644 --- a/quickstep/res/values-ms/strings.xml +++ b/quickstep/res/values-ms/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Bentuk bebas"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Alihkan kepada paparan luaran"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Kosongkan"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Tutup"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktop"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Tiada item terbaharu"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Tetapan penggunaan apl"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Kosongkan semua"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Tambahkan meja baharu"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Apl terbaharu"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minit"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Leret ke atas untuk ke skrin utama"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Ketik butang skrin utama untuk pergi ke skrin utama anda"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Anda sudah sedia untuk mula menggunakan <xliff:g id="DEVICE">%1$s</xliff:g> anda"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Anda bersedia untuk menggunakan peranti anda"</string> + <string name="default_device_name" msgid="6660656727127422487">"peranti"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Tetapan navigasi sistem"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> anda sudah \nsedia!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Peranti anda sudah \nsedia!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Nikmati <xliff:g id="DEVICE">%1$s</xliff:g> baharu anda!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Pilih cara menavigasi"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Leret ke atas"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Ketik butang skrin utama"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Kongsi"</string> <string name="action_screenshot" msgid="8171125848358142917">"Tangkapan skrin"</string> <string name="action_split" msgid="2098009717623550676">"Pisah"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Pilih apl lain untuk menggunakan skrin pisah"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Tindakan ini tidak dibenarkan oleh apl atau organisasi anda"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widget tidak disokong pada masa ini, sila pilih apl lain"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Langkau tutorial navigasi?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Anda boleh mendapatkan tutorial ini kemudian dalam apl <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Batal"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Langkau"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Putar skrin"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animasi menunjukkan cara bar tugas dipaparkan daripada bahagian bawah skrin dan disembunyikan secara automatik apabila tidak digunakan"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animasi menunjukkan cara menyemat bar tugas anda menggunakan togol maka bar tugas kekal kelihatan pada bahagian bawah skrin"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animasi menunjukkan cara membuat skrin pisah dengan menyeret dan melepaskan apl daripada bar tugas di atas apl terbuka"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animasi menunjukkan cara mengakses apl yang dicadangkan pada peranti anda"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animasi menunjukkan cara mencari item pada skrin dengan menyentuh dan menahan kekunci tindakan dan memilih kawasan lokasi item"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Pendidikan bar tugas"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Seret apl ke tepi untuk menggunakan 2 apl serentak"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Leret perlahan ke atas untuk menunjukkan Bar Tugas"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Papar Bar Tugas selalu"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Tukar mod navigasi"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Pembahagi Bar Tugas"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Apl terbaharu yang lain"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Limpahan Bar Tugas"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Alihkan ke atas/kiri"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Alihkan ke bawah/kanan"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Buka apl sebagai gelembung"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Butang tutup"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Semat pada bar tugas"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Nyahsemat drpd bar tugas"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Sigung"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Tutup"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Imej sigung"</string> </resources> diff --git a/quickstep/res/values-my/strings.xml b/quickstep/res/values-my/strings.xml index 4706bf72fa..7be94b5df8 100644 --- a/quickstep/res/values-my/strings.xml +++ b/quickstep/res/values-my/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"အလွတ်ပုံစံ"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ဒက်စ်တော့"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"ပြင်ပဖန်သားပြင်သို့ ရွှေ့ရန်"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"ရှင်းထုတ်ရန်"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"ပိတ်ရန်"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ဒက်စ်တော့"</string> <string name="recents_empty_message" msgid="7040467240571714191">"မကြာမီကဖွင့်ထားသည်များ မရှိပါ"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"အက်ပ်အသုံးပြုမှု ဆက်တင်များ"</string> <string name="recents_clear_all" msgid="5328176793634888831">"အားလုံးရှင်းရန်"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"မျက်နှာပြင်အသစ် ထည့်ရန်"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"မကြာသေးမီက အက်ပ်များ"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>၊ <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; ၁ မိနစ်"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"ပင်မစာမျက်နှာသို့သွားရန် အပေါ်သို့ ပွတ်ဆွဲပါ"</string> <string name="allset_button_hint" msgid="2395219947744706291">"ပင်မစာမျက်နှာသို့ သွားရန် ပင်မခလုတ်ကို တို့ပါ"</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> စသုံးရန် အသင့်ဖြစ်ပါပြီ"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"သင့်စက်ကို စသုံးရန် အသင့်ဖြစ်ပါပြီ"</string> + <string name="default_device_name" msgid="6660656727127422487">"စက်"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"စနစ် လမ်းညွှန် ဆက်တင်များ"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"သင်၏ <xliff:g id="DEVICE">%1$s</xliff:g> \nအသင့်ဖြစ်ပါပြီ။"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"သင်၏စက် \nအသင့်ဖြစ်ပါပြီ။"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"သင်၏ <xliff:g id="DEVICE">%1$s</xliff:g> အသစ်ကို အသုံးပြုလိုက်ပါ။"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"ရွှေ့ကြည့်နည်း ရွေးရန်"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"အပေါ်သို့ ပွတ်ဆွဲရန်"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"ပင်မခလုတ်ကို တို့ရန်"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"တက်ဘလက်"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ဖုန်း"</string> <string name="action_share" msgid="2648470652637092375">"မျှဝေရန်"</string> <string name="action_screenshot" msgid="8171125848358142917">"ဖန်သားပြင်ဓာတ်ပုံ"</string> <string name="action_split" msgid="2098009717623550676">"ခွဲရန်"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"မျက်နှာပြင်ခွဲ၍ပြသခြင်းသုံးရန် နောက်အက်ပ်တစ်ခုရွေးပါ"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ဤလုပ်ဆောင်ချက်ကို အက်ပ် သို့မဟုတ် သင်၏အဖွဲ့အစည်းက ခွင့်မပြုပါ"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"ဝိဂျက်များကို လောလောဆယ် ပံ့ပိုးမထားပါ။ အခြားအက်ပ်ရွေးပါ"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"လမ်းညွှန်ခြင်း ရှင်းလင်းပို့ချချက်ကို ကျော်မလား။"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"၎င်းကို နောက်မှ <xliff:g id="NAME">%1$s</xliff:g> အက်ပ်တွင် ရှာနိုင်သည်"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"မလုပ်တော့"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"ကျော်ရန်"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"ဖန်သားပြင်လှည့်ရန်"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Taskbar သည် စခရင်အောက်ခြေမှ ပေါ်လာပုံနှင့် အသုံးမပြုချိန်တွင် အလိုအလျောက်ပျောက်သွားပုံကို ပြသော လှုပ်ရှားသက်ဝင်ပုံ"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"စခရင်အောက်ခြေတွင် Taskbar အမြဲမြင်ရရန်အတွက် ခလုတ်ဖြင့် သင့် Taskbar ပင်ထိုးနည်းကို ပြသော လှုပ်ရှားသက်ဝင်ပုံ"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"အက်ပ်တစ်ခုကို Taskbar မှ ဖွင့်ထားသည့် အက်ပ်ပေါ်သို့ ဆွဲထည့်ခြင်းဖြင့် မျက်နှာပြင် ခွဲ၍ပြသခြင်း ပြုလုပ်နည်းကို ပြသော လှုပ်ရှားသက်ဝင်ပုံ"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"သင့်စက်တွင် အကြံပြုထားသော အက်ပ်များသုံးနည်းကို ပြသော လှုပ်ရှားသက်ဝင်ပုံ"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"လုပ်ဆောင်ချက်ကီးကို ထိပြီးဖိထားကာ ဖိုင်ရှိသောနေရာကို ရွေးခြင်းဖြင့် စခရင်ပေါ်ရှိဖိုင်ရှာနည်းကို ပြသော လှုပ်ရှားသက်ဝင်ပုံ"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"လုပ်ဆောင်စရာဘား ပညာပေး"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"အက်ပ် ၂ ခု တစ်ပြိုင်တည်းသုံးရန် အက်ပ်တစ်ခုကို ဘေးသို့ဖိဆွဲပါ"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Taskbar ပြရန် အပေါ်သို့ ဖြည်းဖြည်းပွတ်ဆွဲပါ"</string> @@ -126,7 +116,7 @@ <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Taskbar ပင်ထိုးရန် ခွဲခြားမျဉ်းကို နှိပ်ထားပါ"</string> <string name="taskbar_edu_features" msgid="3320337287472848162">"Taskbar ဖြင့် ပိုမိုလုပ်ဆောင်နိုင်ခြင်း"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"Taskbar ကို အမြဲပြပါ"</string> - <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"Taskbar ကို စခရင်အောက်ခြေတွင် အမြဲပြရန် ခွဲခြားမျဉ်းကို ထိထားပါ"</string> + <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"Taskbar ကို စခရင်အောက်ခြေတွင် အမြဲပြရန် ခွဲခြားမျဉ်းကို တို့ထိ၍ ဖိထားပါ"</string> <string name="taskbar_search_edu_title" msgid="5569194922234364530">"သင့်စခရင်ပေါ်ရှိအရာကို ရှာရန် လုပ်ဆောင်ချက်ကီးကို ထိ၍ဖိထားပါ"</string> <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"ဤကုန်ပစ္စည်းသည် သင့်စခရင်၌ ရွေးထားသောအပိုင်းကိုသုံး၍ ရှာဖွေသည်။ Google ၏ <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>ကိုယ်ရေးအချက်အလက်လုံခြုံမှုဆိုင်ရာ မူဝါဒ<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> နှင့် <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>ဝန်ဆောင်မှုစည်းမျဉ်းများ<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g> အကျုံးဝင်သည်။"</string> <string name="taskbar_edu_close" msgid="887022990168191073">"ပိတ်ရန်"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Taskbar အမြဲပြရန်"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"ရွှေ့ကြည့်သည့်မုဒ် ပြောင်းရန်"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"လုပ်ဆောင်စရာဘား ပိုင်းခြားစနစ်"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"လတ်တလော အခြားအက်ပ်များ"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Taskbar မီနူးအပို"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"အပေါ်/ဘယ်ဘက်သို့ ရွှေ့ရန်"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"အောက်ခြေ/ညာဘက်သို့ ရွှေ့ရန်"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"အက်ပ်ကို ပူဖောင်းကွက်အဖြစ် ဖွင့်ရန်"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"အပိတ် ခလုတ်"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Taskbar ၌ ပင်ထိုးရန်"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Taskbar မှ ဖြုတ်ရန်"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"အနည်းငယ်ရွှေ့ရန်"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"ပိတ်ရန်"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ပုံကို အနည်းငယ်ရွှေ့ရန်"</string> </resources> diff --git a/quickstep/res/values-nb/strings.xml b/quickstep/res/values-nb/strings.xml index 17a34df28e..f07877ed37 100644 --- a/quickstep/res/values-nb/strings.xml +++ b/quickstep/res/values-nb/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Fritt format"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Skrivebord"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Flytt til ekstern skjerm"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Tøm"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Lukk"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Skrivebord"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Ingen nylige elementer"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Innstillinger for appbruk"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Fjern alt"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Legg til nytt skrivebord"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Nylige apper"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minutt"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Sveip opp for å gå til startskjermen"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Trykk på hjemknappen for å gå til startskjermen"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Nå kan du bruke <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Nå kan du bruke enheten"</string> + <string name="default_device_name" msgid="6660656727127422487">"enheten"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Innstillinger for systemnavigasjon"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> er \nklar!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Enheten er \nklar!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Kos deg med den nye <xliff:g id="DEVICE">%1$s</xliff:g>-enheten din!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Velg hvordan du vil navigere"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Sveip opp"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Trykk på hjemknappen"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"nettbrett"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Del"</string> <string name="action_screenshot" msgid="8171125848358142917">"Skjermbilde"</string> <string name="action_split" msgid="2098009717623550676">"Del opp"</string> @@ -113,16 +104,15 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Velg en annen app for å bruke delt skjerm"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Appen eller organisasjonen din tillater ikke denne handlingen"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Moduler støttes ikke for øyeblikket – velg en annen app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Vil du hoppe over navigeringsveiledningen?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Du kan finne dette i <xliff:g id="NAME">%1$s</xliff:g>-appen senere"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Avbryt"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Hopp over"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rotér skjermen"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animasjon som viser hvordan oppgavelinjen kommer til syne fra bunnen av skjermen og skjules automatisk når den ikke er i bruk"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animasjon som viser hvordan du fester oppgavelinjen med en bryter, slik at oppgavelinjen alltid er synlig nederst på skjermen"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animasjon som viser hvordan du aktiverer delt skjerm, ved å dra og slippe en app fra oppgavelinjen over en åpen app"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animasjon som viser hvordan du åpner foreslåtte apper på enheten"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animasjon som viser hvordan du søker etter et element på skjermen, ved å trykke og holde på handlingstasten og velge området der elementet er"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Veiledning for oppgavelinjen"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Dra en app til siden for å bruke 2 apper samtidig"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Sveip langsomt opp for å vise oppgavelinjen"</string> - <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"Få appforslag basert på rutinene dine"</string> + <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"Få appforslag som er basert på rutinene dine"</string> <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Trykk lenge på skillelinjen for å feste oppgavelinjen"</string> <string name="taskbar_edu_features" msgid="3320337287472848162">"Gjør mer med oppgavelinjen"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"Vis alltid oppgavelinjen"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Vis alltid oppgavelinjen"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Endre navigasjonsmodus"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Skille for oppgavelinjen"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Andre nylige apper"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Overflyt for oppgavelinjen"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Flytt til øverst/venstre"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Flytt til nederst/høyre"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Åpne appen som en boble"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Lukkeknapp"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Fest i oppgavelinjen"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Løsne i oppgavelinje"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Dytt"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Lukk"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Dytt bildet"</string> </resources> diff --git a/quickstep/res/values-ne/strings.xml b/quickstep/res/values-ne/strings.xml index 95fe2c3405..fece2a8875 100644 --- a/quickstep/res/values-ne/strings.xml +++ b/quickstep/res/values-ne/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"फ्रिफर्म"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"डेस्कटप"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"सारेर बाह्य डिस्प्लेमा लैजानुहोस्"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"हटाउनुहोस्"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"बन्द गर्नुहोस्"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"डेस्कटप"</string> <string name="recents_empty_message" msgid="7040467240571714191">"हालसालैको कुनै पनि सामग्री छैन"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"एपको उपयोगका सेटिङहरू"</string> <string name="recents_clear_all" msgid="5328176793634888831">"सबै मेटाउनुहोस्"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"नयाँ डेस्क हाल्नुहोस्"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"हालसालैका एपहरू"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; १ मिनेट"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"होममा जान माथितिर स्वाइप गर्नुहोस्"</string> <string name="allset_button_hint" msgid="2395219947744706291">"आफ्नो होम स्क्रिनमा जान होम बटनमा ट्याप गर्नुहोस्"</string> <string name="allset_description_generic" msgid="5385500062202019855">"तपाईं अब आफ्नो <xliff:g id="DEVICE">%1$s</xliff:g> चलाउन थाल्न सक्नुहुन्छ"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"तपाईं अब आफ्नो डिभाइस प्रयोग गर्न थाल्न सक्नुहुन्छ"</string> + <string name="default_device_name" msgid="6660656727127422487">"डिभाइस"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"सिस्टम नेभिगेसनसम्बन्धी सेटिङ"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"तपाईंको <xliff:g id="DEVICE">%1$s</xliff:g> \nअब प्रयोग गर्न मिल्छ!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"तपाईंको डिभाइस \nअब प्रयोग गर्न मिल्छ!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"आफ्नो नयाँ <xliff:g id="DEVICE">%1$s</xliff:g> को मजा लिनुहोस्!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"नेभिगेट गर्ने तरिका छनौट गर्नुहोस्"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"माथितिर स्वाइप गर्नुहोस्"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"होम बटनमा ट्याप गर्नुहोस्"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ट्याब्लेट"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"फोन"</string> <string name="action_share" msgid="2648470652637092375">"सेयर गर्नुहोस्"</string> <string name="action_screenshot" msgid="8171125848358142917">"स्क्रिनसट"</string> <string name="action_split" msgid="2098009717623550676">"स्प्लिट गर्नुहोस्"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"स्प्लिट स्क्रिन प्रयोग गर्न अर्को एप रोज्नुहोस्"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"यो एप वा तपाईंको सङ्गठनले यो कारबाही गर्ने अनुमति दिँदैन"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"हाल विजेटहरू प्रयोग गर्न मिल्दैनन् कृपया अर्को एप चयन गर्नुहोस्"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"नेभिगेसन ट्युटोरियल स्किप गर्ने हो?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"तपाईं पछि <xliff:g id="NAME">%1$s</xliff:g> नामक एपमा गई यो ट्युटोरियल भेट्टाउन सक्नुहुन्छ"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"रद्द गर्नुहोस्"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"स्किप गर्नुहोस्"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"स्क्रिन घुमाउनुहोस्"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"टास्कबार कसरी स्क्रिनको फेदबाट माथितिर निस्कन्छ र प्रयोग नगरिएका बेलामा कसरी स्वतः लुक्छ भन्ने कुरा देखाइएको एनिमेसन"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"टास्कबार स्क्रिनको फेदमा स्थायी रूपमा देखियोस् भन्नाका लागि टगल प्रयोग गरी आफ्नो टास्कबार पिन गर्ने तरिका देखाइएको एनिमेसन"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"टास्कबारमा भएको कुनै एप खुला रहेको अर्को एपमाथि ड्र्याग एन्ड ड्रप गरेर स्प्लिट स्क्रिन बनाउने तरिका देखाइएको एनिमेसन"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"आफ्नो डिभाइसमा सिफारिस गरिएका एपहरू एक्सेस गर्ने तरिका देखाइएको एनिमेसन"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"एक्सन की टच गरिराखेर र सामग्री रहेको क्षेत्र चयन गरेर स्क्रिनमा भएको कुनै सामग्री खोज्ने तरिका देखाइएको एनिमेसन"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"टास्कबार एजुकेसन"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"एपलाई छेउतिर ड्र्याग गरेर एकै पटक २ वटा एप चलाउनुहोस्"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"टास्कबार देखाउन माथितिर बिस्तारै स्वाइप गर्नुहोस्"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"टास्कबार सधैँ देखाउनुहोस्"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"नेभिगेसन मोड बदल्नुहोस्"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"टास्कबार डिभाइडर"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"हालसालै खोलिएका अन्य एपहरू"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"टास्कबार ओभरफ्लो"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"सिरान/बायाँतिर सार्नुहोस्"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"फेद/दायाँतिर सार्नुहोस्"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"एपलाई बबलका रूपमा खोल्नुहोस्"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"\"बन्द गर्नुहोस्\" बटन"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"टास्कबारमा पिन गर्नुहोस्"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"टास्कबारबाट पिन गर्नुहोस्"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"हल्का सार्नुहोस्"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"बन्द गर्नुहोस्"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"फोटो हल्का सार्नुहोस्"</string> </resources> diff --git a/quickstep/res/values-night/colors.xml b/quickstep/res/values-night/colors.xml index 293c00c877..7cb85bcc8e 100644 --- a/quickstep/res/values-night/colors.xml +++ b/quickstep/res/values-night/colors.xml @@ -16,6 +16,7 @@ <resources xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"> <color name="gesture_tutorial_back_arrow_color">#99000000</color> + <color name="gesture_tutorial_fake_wallpaper_color">#000000</color> <!-- Black --> <color name="mock_webpage_url_bar">#202124</color> diff --git a/quickstep/res/values-nl/strings.xml b/quickstep/res/values-nl/strings.xml index 505bba9b43..ea6f39c1e1 100644 --- a/quickstep/res/values-nl/strings.xml +++ b/quickstep/res/values-nl/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Vrije vorm"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Verplaatsen naar extern scherm"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Wissen"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Sluiten"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktop"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Geen recente items"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Instellingen voor app-gebruik"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Alles wissen"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Nieuw bureau toevoegen"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Recente apps"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minuut"</string> @@ -79,7 +78,7 @@ <string name="overview_gesture_feedback_complete_without_follow_up" msgid="2903050864432331629">"Je weet nu hoe je het gebaar Schakelen tussen apps maakt"</string> <string name="overview_gesture_intro_title" msgid="2902054412868489378">"Swipe om tussen apps te schakelen"</string> <string name="overview_gesture_intro_subtitle" msgid="4968091015637850859">"Swipe omhoog vanaf de onderkant van het scherm, houd vast en laat los om tussen apps te schakelen."</string> - <string name="overview_gesture_tutorial_title" msgid="4125835002668708720">"Wisselen van app"</string> + <string name="overview_gesture_tutorial_title" msgid="4125835002668708720">"Schakelen tussen apps"</string> <string name="overview_gesture_tutorial_subtitle" msgid="5253549754058973071">"Swipe omhoog vanaf de onderkant van het scherm, houd je vinger op het scherm en laat dan los"</string> <string name="overview_gesture_tutorial_success" msgid="1910267697807973076">"Goed bezig"</string> <string name="gesture_tutorial_confirm_title" msgid="6201516182040074092">"Klaar"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Swipe omhoog om naar het startscherm te gaan"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Tik op de startknop om naar je startscherm te gaan"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Je bent klaar om je <xliff:g id="DEVICE">%1$s</xliff:g> te gebruiken"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Je bent klaar om je apparaat te gebruiken"</string> + <string name="default_device_name" msgid="6660656727127422487">"apparaat"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Navigatie-instellingen van systeem"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Je <xliff:g id="DEVICE">%1$s</xliff:g> is \ngereed."</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Het apparaat is \ngereed."</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Veel plezier met je nieuwe <xliff:g id="DEVICE">%1$s</xliff:g>."</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Kiezen hoe je wilt navigeren"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Omhoog swipen"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Tik op de startknop"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefoon"</string> <string name="action_share" msgid="2648470652637092375">"Delen"</string> <string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string> <string name="action_split" msgid="2098009717623550676">"Splitsen"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Kies andere app om gesplitst scherm te gebruiken"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Deze actie wordt niet toegestaan door de app of je organisatie"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgets worden op dit moment niet ondersteund, selecteer een andere app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Navigatietutorial overslaan?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Je vindt dit later terug in de app <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Annuleren"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Overslaan"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Scherm draaien"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animatie die toont hoe de taakbalk onderaan het scherm verschijnt en automatisch wordt verborgen als deze niet wordt gebruikt"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animatie die toont hoe je de taakbalk vastzet met een schakelaar, zodat de taakbalk altijd zichtbaar blijft onderaan het scherm"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animatie die toont hoe je een gesplitst scherm maakt door een app van de taakbalk naar een geopende app te slepen"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animatie die toont hoe je toegang krijgt tot voorgestelde apps op je apparaat"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animatie die toont hoe je een item op het scherm kunt zoeken door de actietoets ingedrukt te houden en het gebied te selecteren waarin het item zich bevindt"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Taakbalk Onderwijs"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Sleep een app naar de zijkant om 2 apps tegelijk te gebruiken"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Swipe langzaam omhoog om de taakbalk te tonen"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Taakbalk altijd tonen"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Navigatiemodus wijzigen"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Scheiding voor Taakbalk"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Andere recente apps"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Taakbalkoverloop"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Naar boven/links verplaatsen"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Naar beneden/rechts verplaatsen"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"App openen als ballon"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Knop Sluiten"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Vastzetten op taakbalk"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Losmaken van taakbalk"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Verschuiven"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Sluiten"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Afbeelding verschuiven"</string> </resources> diff --git a/quickstep/res/values-or/strings.xml b/quickstep/res/values-or/strings.xml index 85a51ed369..e3664bc00f 100644 --- a/quickstep/res/values-or/strings.xml +++ b/quickstep/res/values-or/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"ଫ୍ରିଫର୍ମ"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ଡେସ୍କଟପ"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"ଏକ୍ସଟର୍ନଲ ଡିସପ୍ଲେକୁ ମୁଭ କରନ୍ତୁ"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"ଖାଲି କରନ୍ତୁ"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"ବନ୍ଦ କରନ୍ତୁ"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ଡେସ୍କଟପ"</string> <string name="recents_empty_message" msgid="7040467240571714191">"ବର୍ତ୍ତମାନର କୌଣସି ଆଇଟମ ନାହିଁ"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"ଆପ ବ୍ୟବହାର ସେଟିଂସ"</string> <string name="recents_clear_all" msgid="5328176793634888831">"ସବୁ ଖାଲି କରନ୍ତୁ"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"ନୂଆ ଡେସ୍କ ଯୋଗ କରନ୍ତୁ"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"ବର୍ତ୍ତମାନର ଆପ୍‌"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g> <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 ମିନିଟ୍"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"ହୋମକୁ ଯିବା ପାଇଁ ଉପରକୁ ସ୍ୱାଇପ କରନ୍ତୁ"</string> <string name="allset_button_hint" msgid="2395219947744706291">"ଆପଣଙ୍କ ହୋମ ସ୍କ୍ରିନକୁ ଯିବା ପାଇଁ ହୋମ ବଟନରେ ଟାପ କରନ୍ତୁ"</string> <string name="allset_description_generic" msgid="5385500062202019855">"ଆପଣ ଆପଣଙ୍କ <xliff:g id="DEVICE">%1$s</xliff:g> ବ୍ୟବହାର କରିବା ଆରମ୍ଭ କରିବାକୁ ପ୍ରସ୍ତୁତ ଅଛନ୍ତି"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"ଆପଣ ଆପଣଙ୍କ ଡିଭାଇସ ବ୍ୟବହାର କରିବା ଆରମ୍ଭ କରିବାକୁ ପ୍ରସ୍ତୁତ ଅଛନ୍ତି"</string> + <string name="default_device_name" msgid="6660656727127422487">"ଡିଭାଇସ"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"ସିଷ୍ଟମ ନାଭିଗେସନ ସେଟିଂସ"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"ଆପଣଙ୍କ <xliff:g id="DEVICE">%1$s</xliff:g> \nପ୍ରସ୍ତୁତ ଅଛି!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"ଆପଣଙ୍କ ଡିଭାଇସ \nପ୍ରସ୍ତୁତ ଅଛି!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"ଆପଣଙ୍କ ନୂଆ <xliff:g id="DEVICE">%1$s</xliff:g>ର ମଜା ନିଅନ୍ତୁ!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"କିପରି ନାଭିଗେଟ କରିବେ ତାହା ବାଛନ୍ତୁ"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ଉପରକୁ ସ୍ୱାଇପ କରନ୍ତୁ"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"ହୋମ ବଟନରେ ଟାପ କରନ୍ତୁ"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ଟାବଲେଟ"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ଫୋନ"</string> <string name="action_share" msgid="2648470652637092375">"ସେୟାର୍ କରନ୍ତୁ"</string> <string name="action_screenshot" msgid="8171125848358142917">"ସ୍କ୍ରିନସଟ୍"</string> <string name="action_split" msgid="2098009717623550676">"ସ୍ପ୍ଲିଟ୍"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନ ବ୍ୟବହାର କରିବାକୁ ଅନ୍ୟ ଏକ ଆପ ବାଛନ୍ତୁ"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ଆପ୍ କିମ୍ବା ଆପଣଙ୍କ ସଂସ୍ଥା ଦ୍ୱାରା ଏହି କାର୍ଯ୍ୟକୁ ଅନୁମତି ଦିଆଯାଇ ନାହିଁ"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"ୱିଜେଟଗୁଡ଼ିକ ବର୍ତ୍ତମାନ ସମର୍ଥିତ ନୁହେଁ, ଦୟାକରି ଅନ୍ୟ ଏକ ଆପ ଚୟନ କରନ୍ତୁ"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"ନାଭିଗେସନ୍ ଟ୍ୟୁଟୋରିଆଲକୁ ବାଦ୍ ଦେବେ?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"ଆପଣ ପରେ ଏହାକୁ <xliff:g id="NAME">%1$s</xliff:g> ଆପରେ ପାଇପାରିବେ"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"ବାତିଲ କରନ୍ତୁ"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"ବାଦ୍ ଦିଅନ୍ତୁ"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"ସ୍କ୍ରିନ ଘୂରାନ୍ତୁ"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"ସ୍କ୍ରିନର ନିମ୍ନରୁ ଟାସ୍କବାର କିପରି ଦେଖାଯାଏ ଏବଂ ବ୍ୟବହାରରେ ନଥିବା ସମୟରେ ସ୍ୱତଃ ଲୁଚିଯାଏ ତାହା ଦେଖାଉଥିବା ଆନିମେସନ"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"ଏକ ଟୋଗଲ ବ୍ୟବହାର କରି ଆପଣଙ୍କର ଟାସ୍କବାରକୁ କିପରି ପିନ କରିବେ ତାହା ଦେଖାଉଥିବା ଆନିମେସନ, ଫଳରେ ଟାସ୍କବାର ସ୍କ୍ରିନର ନିମ୍ନରେ ସ୍ଥାୟୀ ଭାବରେ ଦେଖାଯିବ"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"ଏକ ଖୋଲା ଥିବା ଆପ ଉପରେ ଟାସ୍କବାରରୁ ଏକ ଆପ ଡ୍ରାଗ ଏବଂ ଡ୍ରପ କରି ଏକ ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନ କିପରି ତିଆରି କରିବେ ତାହା ଦେଖାଉଥିବା ଆନିମେସନ"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"ଆପଣଙ୍କ ଡିଭାଇସରେ ପ୍ରସ୍ତାବିତ ଆପ୍ସକୁ କିପରି ଆକ୍ସେସ କରିବେ ତାହା ଦେଖାଉଥିବା ଆନିମେସନ"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ଆକ୍ସନ କୀ\'କୁ ସ୍ପର୍ଶ କରି ଧରି ରଖି ଏବଂ ଆଇଟମ କେଉଁ ଏରିଆରେ ଅଛି ତାହା ଚୟନ କରି ସ୍କ୍ରିନରେ ଏକ ଆଇଟମ କିପରି ସର୍ଚ୍ଚ କରିବେ ତାହା ଦେଖାଉଥିବା ଆନିମେସନ"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"ଟାସ୍କବାର ଶିକ୍ଷା"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"ଥରକେ 2ଟି ଆପ୍ସ ବ୍ୟବହାର କରିବା ପାଇଁ ଏକ ଆପକୁ ପାର୍ଶ୍ୱକୁ ଡ୍ରାଗ କର"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"ଟାସ୍କବାର ଦେଖାଇବା ପାଇଁ ଉପରକୁ ଧୀରେ-ସ୍ୱାଇପ କରନ୍ତୁ"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"ସର୍ବଦା ଟାସ୍କବାର ଦେଖାନ୍ତୁ"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"ନାଭିଗେସନ ମୋଡ ପରିବର୍ତ୍ତନ କରନ୍ତୁ"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"ଟାସ୍କବାର ଡିଭାଇଡର"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"ଅନ୍ୟ ବର୍ତ୍ତମାନର ଆପ୍ସ"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"ଟାସ୍କବାର ଓଭରଫ୍ଲୋ"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ଶୀର୍ଷ/ବାମକୁ ମୁଭ କରନ୍ତୁ"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"ନିମ୍ନ/ଡାହାଣକୁ ମୁଭ କରନ୍ତୁ"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"ଏକ ବବଲ ଭାବେ ଆପ ଖୋଲନ୍ତୁ"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"\"ବନ୍ଦ କରନ୍ତୁ\" ବଟନ"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ଟାସ୍କବାରରେ ପିନ କର"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ଟାସ୍କବାରରୁ ଅନପିନ କର"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"ନଜ"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"ବନ୍ଦ କରନ୍ତୁ"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ନଜ ଇମେଜ"</string> </resources> diff --git a/quickstep/res/values-pa/strings.xml b/quickstep/res/values-pa/strings.xml index 56abc74b0d..bcf1683d77 100644 --- a/quickstep/res/values-pa/strings.xml +++ b/quickstep/res/values-pa/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"ਫ੍ਰੀਫਾਰਮ"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ਡੈਸਕਟਾਪ"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"ਬਾਹਰੀ ਡਿਸਪਲੇ \'ਤੇ ਜਾਓ"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"ਕਲੀਅਰ ਕਰੋ"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"ਬੰਦ ਕਰੋ"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ਡੈਸਕਟਾਪ"</string> <string name="recents_empty_message" msgid="7040467240571714191">"ਕੋਈ ਹਾਲੀਆ ਆਈਟਮ ਨਹੀਂ"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"ਐਪ ਵਰਤੋਂ ਦੀਆਂ ਸੈਟਿੰਗਾਂ"</string> <string name="recents_clear_all" msgid="5328176793634888831">"ਸਭ ਕਲੀਅਰ ਕਰੋ"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"ਨਵਾਂ ਡੈਸਕ ਸ਼ਾਮਲ ਕਰੋ"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"ਹਾਲੀਆ ਐਪਾਂ"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 ਮਿੰਟ"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"ਹੋਮ \'ਤੇ ਜਾਣ ਲਈ ਉੱਪਰ ਵੱਲ ਸਵਾਈਪ ਕਰੋ"</string> <string name="allset_button_hint" msgid="2395219947744706291">"ਆਪਣੀ ਹੋਮ ਸਕ੍ਰੀਨ \'ਤੇ ਜਾਣ ਲਈ ਹੋਮ ਬਟਨ \'ਤੇ ਟੈਪ ਕਰੋ"</string> <string name="allset_description_generic" msgid="5385500062202019855">"ਹੁਣ ਤੁਹਾਡਾ <xliff:g id="DEVICE">%1$s</xliff:g> ਵਰਤੋਂ ਲਈ ਤਿਆਰ ਹੈ"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"ਤੁਸੀਂ ਆਪਣਾ ਡੀਵਾਈਸ ਵਰਤਣ ਲਈ ਤਿਆਰ ਹੋ"</string> + <string name="default_device_name" msgid="6660656727127422487">"ਡੀਵਾਈਸ"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"ਸਿਸਟਮ ਨੈਵੀਗੇਸ਼ਨ ਸੈਟਿੰਗਾਂ"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"ਤੁਹਾਡਾ <xliff:g id="DEVICE">%1$s</xliff:g> \nਤਿਆਰ ਹੈ!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"ਤੁਹਾਡਾ ਡੀਵਾਈਸ \nਤਿਆਰ ਹੈ!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"ਆਪਣੇ ਨਵੇਂ <xliff:g id="DEVICE">%1$s</xliff:g> ਦਾ ਅਨੰਦ ਮਾਣੋ!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"ਨੈਵੀਗੇਟ ਕਰਨ ਦਾ ਤਰੀਕਾ ਚੁਣੋ"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ਉੱਪਰ ਵੱਲ ਸਵਾਈਪ ਕਰੋ"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"ਹੋਮ ਬਟਨ \'ਤੇ ਟੈਪ ਕਰੋ"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ਟੈਬਲੈੱਟ"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ਫ਼ੋਨ"</string> <string name="action_share" msgid="2648470652637092375">"ਸਾਂਝਾ ਕਰੋ"</string> <string name="action_screenshot" msgid="8171125848358142917">"ਸਕ੍ਰੀਨਸ਼ਾਟ"</string> <string name="action_split" msgid="2098009717623550676">"ਸਪਲਿਟ"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"ਸਪਲਿਟ ਸਕ੍ਰੀਨ ਵਰਤਣ ਲਈ ਕਿਸੇ ਹੋਰ ਐਪ ਨੂੰ ਚੁਣੋ"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ਐਪ ਜਾਂ ਤੁਹਾਡੀ ਸੰਸਥਾ ਵੱਲੋਂ ਇਸ ਕਾਰਵਾਈ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"ਫ਼ਿਲਹਾਲ ਵਿਜੇਟ ਸਮਰਥਿਤ ਨਹੀਂ ਹਨ, ਕਿਰਪਾ ਕਰਕੇ ਕੋਈ ਹੋਰ ਐਪ ਚੁਣੋ"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"ਕੀ ਨੈਵੀਗੇਸ਼ਨ ਟਿਊਟੋਰੀਅਲ ਨੂੰ ਛੱਡਣਾ ਹੈ?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"ਤੁਸੀਂ ਇਸਨੂੰ ਬਾਅਦ ਵਿੱਚ <xliff:g id="NAME">%1$s</xliff:g> ਐਪ ਵਿੱਚ ਲੱਭ ਸਕਦੇ ਹੋ"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"ਰੱਦ ਕਰੋ"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"ਛੱਡੋ"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"ਸਕ੍ਰੀਨ ਘੁਮਾਓ"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"ਟਾਸਕਬਾਰ ਦੇ ਸਕ੍ਰੀਨ ਦੇ ਹੇਠਾਂ ਤੋਂ ਦ੍ਰਿਸ਼ ਵਿੱਚ ਆਉਣ ਅਤੇ ਵਰਤੋਂ ਵਿੱਚ ਨਾ ਹੋਣ \'ਤੇ ਆਪਣੇ ਆਪ ਲੁਕ ਜਾਣ ਦਾ ਤਰੀਕਾ ਦਿਖਾਉਣ ਵਾਲਾ ਐਨੀਮੇਸ਼ਨ"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"ਟੌਗਲ ਦੀ ਵਰਤੋਂ ਕਰ ਕੇ ਤੁਹਾਡੇ ਟਾਸਕਬਾਰ ਨੂੰ ਪਿੰਨ ਕਰਨ ਦਾ ਤਰੀਕਾ ਦਿਖਾਉਣ ਵਾਲਾ ਐਨੀਮੇਸ਼ਨ, ਤਾਂ ਜੋ ਟਾਸਕਬਾਰ ਪੱਕੇ ਤੌਰ \'ਤੇ ਸਕ੍ਰੀਨ ਦੇ ਹੇਠਾਂ ਦਿਖਣਯੋਗ ਰਹੇ"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"ਕਿਸੇ ਖੁੱਲ੍ਹੀ ਐਪ ਉੱਪਰ ਟਾਸਕਬਾਰ ਤੋਂ ਘਸੀਟ ਅਤੇ ਛੱਡ ਕੇ, ਸਪਲਿਟ ਸਕ੍ਰੀਨ ਬਣਾਉਣ ਦਾ ਤਰੀਕਾ ਦਿਖਾਉਣ ਵਾਲਾ ਐਨੀਮੇਸ਼ਨ"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"ਤੁਹਾਡੇ ਡੀਵਾਈਸ \'ਤੇ ਸੁਝਾਈਆਂ ਗਈਆਂ ਐਪਾਂ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਦਾ ਤਰੀਕਾ ਦਿਖਾਉਣ ਵਾਲਾ ਐਨੀਮੇਸ਼ਨ"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ਕਾਰਵਾਈ ਕੁੰਜੀ ਨੂੰ ਸਪਰਸ਼ ਕਰ ਕੇ ਰੱਖਦੇ ਹੋਏ ਅਤੇ ਆਈਟਮ ਜਿਸ ਖੇਤਰ ਵਿੱਚ ਹੈ ਉਸਨੂੰ ਚੁਣਦੇ ਹੋਏ, ਸਕ੍ਰੀਨ \'ਤੇ ਦਿੱਤੀ ਆਈਟਮ ਨੂੰ ਖੋਜਣ ਦਾ ਤਰੀਕਾ ਦਿਖਾਉਣ ਵਾਲਾ ਐਨੀਮੇਸ਼ਨ"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"ਟਾਸਕਬਾਰ ਸਿੱਖਿਆ"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"ਇੱਕੋ ਵੇਲੇ 2 ਐਪਾਂ ਵਰਤਣ ਲਈ, ਕਿਸੇ ਐਪ ਨੂੰ ਸਾਈਡ \'ਤੇ ਘਸੀਟੋ"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"ਟਾਸਕਬਾਰ ਦਿਖਾਉਣ ਲਈ ਹੌਲੀ ਜਿਹੀ ਉੱਤੇ ਵੱਲ ਸਵਾਈਪ ਕਰੋ"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"ਹਮੇਸ਼ਾਂ ਟਾਸਕਬਾਰ ਦਿਖਾਓ"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"ਨੈਵੀਗੇਸ਼ਨ ਮੋਡ ਬਦਲੋ"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"ਟਾਸਕਬਾਰ ਵਿਭਾਜਕ"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"ਹੋਰ ਹਾਲੀਆ ਐਪਾਂ"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"ਟਾਸਕਬਾਰ ਓਵਰਫ਼ਲੋ"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ਸਿਖਰਲੇ/ਖੱਬੇ ਪਾਸੇ ਲੈ ਕੇ ਜਾਓ"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"ਹੇਠਾਂ/ਸੱਜੇ ਪਾਸੇ ਲੈ ਕੇ ਜਾਓ"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"ਐਪ ਨੂੰ ਬਬਲ ਵਜੋਂ ਖੋਲ੍ਹੋ"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"\'ਬੰਦ ਕਰੋ\' ਬਟਨ"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ਟਾਸਕਬਾਰ \'ਤੇ ਪਿੰਨ ਕਰੋ"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ਟਾਸਕਬਾਰ ਤੋਂ ਅਣਪਿੰਨ ਕਰੋ"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"ਰਿਮਾਈਂਡਰ"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"ਬੰਦ ਕਰੋ"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ਰਿਮਾਈਂਡਰ ਦਾ ਚਿੱਤਰ"</string> </resources> diff --git a/quickstep/res/values-pl/strings.xml b/quickstep/res/values-pl/strings.xml index 6d80a3feca..14b60c49d7 100644 --- a/quickstep/res/values-pl/strings.xml +++ b/quickstep/res/values-pl/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Tryb dowolny"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Pulpit"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Przenieś na wyświetlacz zewnętrzny"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Wyczyść"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Zamknij"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Pulpit"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Brak ostatnich elementów"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Ustawienia użycia aplikacji"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Wyczyść wszystko"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Dodaj nowe biurko"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Ostatnie aplikacje"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&gt; 1 min"</string> @@ -89,19 +88,11 @@ <string name="gesture_tutorial_nice" msgid="2936275692616928280">"Super!"</string> <string name="gesture_tutorial_step" msgid="1279786122817620968">"Samouczek <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string> <string name="allset_title" msgid="5021126669778966707">"Wszystko gotowe"</string> - <string name="allset_hint" msgid="459504134589971527">"Aby przejść na ekran główny, przesuń w górę"</string> + <string name="allset_hint" msgid="459504134589971527">"Aby przejść na stronę główną, przesuń w górę"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Kliknij przycisk ekranu głównego, aby otworzyć ekran główny"</string> <string name="allset_description_generic" msgid="5385500062202019855">"<xliff:g id="DEVICE">%1$s</xliff:g> jest gotowe – możesz zacząć z niego korzystać"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Wszystko gotowe – możesz zacząć korzystać z urządzenia"</string> + <string name="default_device_name" msgid="6660656727127422487">"Urządzenie"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Ustawienia nawigacji w systemie"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Twój <xliff:g id="DEVICE">%1$s</xliff:g> jest \ngotowy."</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Urządzenie jest \ngotowe."</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Nowy <xliff:g id="DEVICE">%1$s</xliff:g> jest już gotowy do użycia."</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Wybierz sposób poruszania się po urządzeniu"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Przesuń palcem w górę"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Kliknij przycisk ekranu głównego"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Udostępnij"</string> <string name="action_screenshot" msgid="8171125848358142917">"Zrzut ekranu"</string> <string name="action_split" msgid="2098009717623550676">"Podziel"</string> @@ -113,15 +104,14 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Wybierz drugą aplikację, aby podzielić ekran"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Nie możesz wykonać tego działania, bo nie zezwala na to aplikacja lub Twoja organizacja"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widżety nie są obecnie obsługiwane, wybierz inną aplikację"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Pominąć samouczek nawigacji?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Znajdziesz to później w aplikacji <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Anuluj"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Pomiń"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Obróć ekran"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animacja pokazująca, jak pasek aplikacji pojawia się u dołu ekranu i automatycznie znika, gdy nie jest używany"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animacja pokazująca, jak za pomocą przełącznika przypiąć pasek aplikacji, aby był on stale widoczny u dołu ekranu"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animacja pokazująca, jak utworzyć podzielony ekran, przeciągając i upuszczając aplikację z paska aplikacji nad aktualnie otwartą"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animacja pokazująca, jak uzyskać dostęp do sugerowanych aplikacji na urządzeniu"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animacja pokazująca, jak wyszukać element na ekranie, naciskając i przytrzymując klawisz działania oraz wybierając obszar, w którym jest dany element"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Informacje o pasku aplikacji"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Przeciągnij aplikację na bok, aby używać 2 aplikacji naraz"</string> - <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Aby wyświetlić pasek aplikacji, wolno przesuń palcem w górę"</string> + <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Aby wyświetlić pasek aplikacji, powoli przesuń palcem w górę"</string> <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"Otrzymuj sugestie aplikacji na podstawie typowych działań"</string> <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Przytrzymaj separator, aby przypiąć pasek aplikacji"</string> <string name="taskbar_edu_features" msgid="3320337287472848162">"Wykorzystaj potencjał paska aplikacji"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Zawsze pokazuj pasek aplikacji"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Zmień tryb nawigacji"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Linia dzielenia paska aplikacji"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Inne ostatnio używane aplikacje"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Rozwijany pasek aplikacji"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Przesuń w górny lewy róg"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Przesuń w dolny prawy róg"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Otwórz aplikację jako dymek"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Przycisk Zamknij"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Przypnij do paska"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Odepnij od paska"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Ponaglenie"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Zamknij"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Obraz ponaglenia"</string> </resources> diff --git a/quickstep/res/values-pt-rPT/strings.xml b/quickstep/res/values-pt-rPT/strings.xml index 00213b04d9..2225496c18 100644 --- a/quickstep/res/values-pt-rPT/strings.xml +++ b/quickstep/res/values-pt-rPT/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Forma livre"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Computador"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Mover para o ecrã externo"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Limpar"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Fechar"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Computador"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Nenhum item recente"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Definições de utilização de aplicações"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Limpar tudo"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Adicionar novo espaço de trabalho"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Apps recentes"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minuto"</string> @@ -92,18 +91,10 @@ <string name="allset_hint" msgid="459504134589971527">"Deslize rapidamente para cima para aceder ao ecrã principal"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Toque no botão do ecrã principal para aceder ao ecrã principal"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Já pode começar a usar o seu <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Já pode começar a usar o seu dispositivo"</string> + <string name="default_device_name" msgid="6660656727127422487">"dispositivo"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Definições de navegação do sistema"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"O seu <xliff:g id="DEVICE">%1$s</xliff:g> está \npronto!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"O seu dispositivo está \npronto!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Desfrute do seu novo <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Escolha como navegar"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Deslize rapidamente para cima"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Toque no botão do ecrã principal"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telemóvel"</string> <string name="action_share" msgid="2648470652637092375">"Partilhar"</string> - <string name="action_screenshot" msgid="8171125848358142917">"Captura de ecrã"</string> + <string name="action_screenshot" msgid="8171125848358142917">"Fazer captura de ecrã"</string> <string name="action_split" msgid="2098009717623550676">"Dividir"</string> <string name="action_save_app_pair" msgid="5974823919237645229">"Guardar par de apps"</string> <string name="toast_split_select_app" msgid="8464310533320556058">"Toque noutra app para usar o ecrã dividido"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Escolher outra app para usar o ecrã dividido"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Esta ação não é permitida pela app ou a sua entidade."</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Os widgets não são atualmente suportados. Selecione outra app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Ignorar o tutorial de navegação?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Pode encontrar isto mais tarde na app <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Cancelar"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Ignorar"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rodar ecrã"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animação que mostra como a Barra de tarefas aparece na parte inferior do ecrã e é ocultada automaticamente quando não está em utilização"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animação que mostra como afixar a Barra de tarefas através de um botão, para que a Barra de tarefas fique permanentemente visível na parte inferior do ecrã"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animação que mostra como criar um ecrã dividido arrastando e largando uma app da Barra de tarefas sobre uma app aberta"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animação que mostra como aceder às apps sugeridas no seu dispositivo"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animação que mostra como pesquisar um item no ecrã tocando sem soltar na tecla de ação e selecionando a área onde o item se encontra"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Educação da Barra de tarefas"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Arraste uma app para o lado para usar 2 apps em simultâneo"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Deslize lentamente para cima para ver a Barra de tarefas"</string> @@ -134,7 +124,7 @@ <string name="taskbar_button_home" msgid="2151398979630664652">"Início"</string> <string name="taskbar_button_a11y" msgid="5241161324875094465">"Acessibilidade"</string> <string name="taskbar_button_back" msgid="8558862226461164514">"Voltar"</string> - <string name="taskbar_button_ime_switcher" msgid="1730244360907588541">"Switcher IME"</string> + <string name="taskbar_button_ime_switcher" msgid="1730244360907588541">"Comutador IME"</string> <string name="taskbar_button_recents" msgid="7273376136216613134">"Recentes"</string> <string name="taskbar_button_notifications" msgid="7471740351507357318">"Notificações"</string> <string name="taskbar_button_quick_settings" msgid="227662894293189391">"Definiç. rápidas"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Ver sempre Barra de tarefas"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Alterar modo de navegação"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Divisor da Barra de tarefas"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Outras apps recentes"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Menu adicional da Barra de tarefas"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Mover para a parte superior esquerda"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Mover para a part superior direita"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Abrir app como um balão"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Botão Fechar"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Afixar na barra tar."</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Desaf. da barra tar."</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Chamada de atenção"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Fechar"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Imagem de chamada de atenção"</string> </resources> diff --git a/quickstep/res/values-pt/strings.xml b/quickstep/res/values-pt/strings.xml index 90b6785293..e4c3cf1996 100644 --- a/quickstep/res/values-pt/strings.xml +++ b/quickstep/res/values-pt/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Forma livre"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Modo área de trabalho"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Mover para a tela externa"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Limpar"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Fechar"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Computador"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Nenhum item recente"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Configurações de uso do app"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Remover tudo"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Adicionar novo espaço de trabalho"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Apps recentes"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Deslize para cima para acessar a tela inicial"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Toque no botão home para acessar a tela inicial"</string> <string name="allset_description_generic" msgid="5385500062202019855">"O <xliff:g id="DEVICE">%1$s</xliff:g> já pode ser usado"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Você já pode começar a usar o dispositivo"</string> + <string name="default_device_name" msgid="6660656727127422487">"dispositivo"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Configurações de navegação do sistema"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"O <xliff:g id="DEVICE">%1$s</xliff:g> está \npronto."</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"O dispositivo está \npronto."</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Aproveite seu novo dispositivo <xliff:g id="DEVICE">%1$s</xliff:g>."</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Escolha como navegar"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Deslize para cima"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Toque no botão home"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"smartphone"</string> <string name="action_share" msgid="2648470652637092375">"Compartilhar"</string> <string name="action_screenshot" msgid="8171125848358142917">"Capturar tela"</string> <string name="action_split" msgid="2098009717623550676">"Dividir"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Escolha outro app para usar na tela dividida"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Essa ação não é permitida pelo app ou pela organização"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Atualmente, não há suporte para widgets. Selecione outro app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Pular o tutorial de navegação?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Veja o tutorial mais tarde no app <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Cancelar"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Pular"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Girar a tela"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animação mostrando como a barra de tarefas aparece na parte de baixo da tela e é ocultada automaticamente quando não está em uso"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animação mostrando como fixar a barra de tarefas usando um botão de ativar/desativar para que ela fique sempre visível na parte de baixo da tela"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animação mostrando como criar uma tela dividida arrastando e soltando um app da barra de tarefas sobre outro aberto"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animação mostrando como acessar os apps sugeridos no dispositivo"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animação mostrando como pesquisar um item na tela tocando na tecla de ação, pressionando e selecionando a área em que o item está"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Informações sobre a barra de tarefas"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Arraste um app para o lado e use dois apps ao mesmo tempo"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Deslize para cima devagar para mostrar a Barra de tarefas"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Sempre mostrar a Barra de tarefas"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Mudar o modo de navegação"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Separador da Barra de tarefas"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Outros apps recentes"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Barra de tarefas flutuante"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Mover para cima/para a esquerda"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Mover para baixo/para a direita"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Abrir o app como um balão"</string> @@ -167,13 +157,10 @@ <string name="bubble_bar_action_dismiss_all" msgid="3290722022983403060">"Dispensar todos"</string> <string name="bubble_bar_accessibility_announce_expand" msgid="1503192695527477102">"abrir <xliff:g id="BUBBLE_DESCRIPTION">%1$s</xliff:g>"</string> <string name="bubble_bar_accessibility_announce_collapse" msgid="928284600086798791">"fechar <xliff:g id="BUBBLE_DESCRIPTION">%1$s</xliff:g>"</string> - <string name="search_gesture_feature_title" msgid="1294044108313175306">"Circule para Pesquisar"</string> + <string name="search_gesture_feature_title" msgid="1294044108313175306">"Circule para pesquisar"</string> <string name="header_app_icon_description" msgid="2184625881433608027">"Ícone do app"</string> <string name="header_default_app_title" msgid="8308052350689531566">"Título do app"</string> <string name="header_close_icon_description" msgid="5400033616675911319">"Botão \"Fechar\""</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Fixar na barra de tarefas"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Liberar da barra de tarefas"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Alerta"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Fechar"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Imagem de alerta"</string> </resources> diff --git a/quickstep/res/values-ro/strings.xml b/quickstep/res/values-ro/strings.xml index a8ab473352..27f80fbb5c 100644 --- a/quickstep/res/values-ro/strings.xml +++ b/quickstep/res/values-ro/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Formă liberă"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Mută pe ecranul extern"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Șterge"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Închide"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Computer"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Niciun element recent"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Setări de utilizare a aplicației"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Șterge tot"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Adaugă un nou desktop"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Aplicații recente"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minut"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Glisează în sus pentru a accesa ecranul principal"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Atinge butonul ecran de pornire ca să accesezi ecranul de pornire"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Ești gata să folosești <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Ești gata să folosești dispozitivul"</string> + <string name="default_device_name" msgid="6660656727127422487">"dispozitivul"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Setările de navigare ale sistemului"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> este \ngata!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Dispozitivul este \ngata!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Bucură-te de noul <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Alege cum să navighezi"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Glisează în sus"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Atinge butonul ecran de pornire"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tabletă"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Distribuie"</string> <string name="action_screenshot" msgid="8171125848358142917">"Captură de ecran"</string> <string name="action_split" msgid="2098009717623550676">"Împărțit"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Alege altă aplicație pentru ecranul împărțit"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Această acțiune nu este permisă de aplicație sau de organizația ta"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Nu se acceptă widgeturile. Selectează altă aplicație."</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Omiți tutorialul de navigare?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Îl poți găsi mai târziu în aplicația <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Anulează"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Omite"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rotește ecranul"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animație care arată cum bara de activități apare din partea de jos a ecranului și se ascunde automat când nu este folosită"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animație care arată cum să fixezi bara de activități folosind un comutator, astfel încât bara de activități să rămână permanent vizibilă în partea de jos a ecranului"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animație care arată cum să creezi un ecran împărțit, trăgând și plasând o aplicație din bara de activități deasupra unei aplicații deschise"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animație care arată cum să accesezi aplicațiile sugerate pe dispozitiv"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animație care arată cum să cauți un element pe ecran, atingând lung tasta de acțiuni și selectând zona în care se află elementul"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Informații despre bara de activități"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Trage în lateral o aplicație ca să folosești 2 aplicații deodată"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Glisează lent în sus pentru a afișa bara de activități"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Afișează mereu bara"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Schimbă modul de navigare"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Separator pentru bara de activități"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Alte aplicații recente"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Meniu suplimentar pentru bara de activități"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Mută în stânga sus"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Mută în dreapta jos"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Deschide aplicația ca balon"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Buton de închidere"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Fixează pe bara de activități"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Anulează fixarea din bara de activități"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Reafișează"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Închide"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Reafișează imaginea"</string> </resources> diff --git a/quickstep/res/values-ru/strings.xml b/quickstep/res/values-ru/strings.xml index 09104f1499..605c5654ef 100644 --- a/quickstep/res/values-ru/strings.xml +++ b/quickstep/res/values-ru/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Произвольная форма"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Мультиоконный режим"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Перенести на внешний дисплей"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Очистить"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Закрыть"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Мультиоконный режим"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Здесь пока ничего нет."</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Настройки использования приложения"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Очистить все"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Добавить рабочий стол"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Недавние приложения"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>: <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 мин."</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Чтобы перейти на главный экран, проведите вверх."</string> <string name="allset_button_hint" msgid="2395219947744706291">"Нажмите кнопку главного экрана, чтобы открыть его."</string> <string name="allset_description_generic" msgid="5385500062202019855">"Теперь вы можете использовать <xliff:g id="DEVICE">%1$s</xliff:g>."</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Теперь устройство можно использовать."</string> + <string name="default_device_name" msgid="6660656727127422487">"устройство"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Настройки навигации в системе"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Устройство (<xliff:g id="DEVICE">%1$s</xliff:g>)\nготово!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Устройство\nготово!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Начните использовать <xliff:g id="DEVICE">%1$s</xliff:g>."</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Выбрать способ навигации"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Проведите по экрану вверх"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Нажмите кнопку главного экрана"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"планшет"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"телефон"</string> <string name="action_share" msgid="2648470652637092375">"Поделиться"</string> <string name="action_screenshot" msgid="8171125848358142917">"Скриншот"</string> <string name="action_split" msgid="2098009717623550676">"Разделить"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Выберите другое приложение для разделения экрана."</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Это действие заблокировано приложением или организацией."</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Виджеты не поддерживаются. Выберите другое приложение."</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Пропустить руководство по жестам?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Его можно найти в приложении \"<xliff:g id="NAME">%1$s</xliff:g>\"."</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Отмена"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Пропустить"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Повернуть экран"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Анимация: панель задач появляется в нижней части экрана и автоматически скрывается, если не используется"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Анимация: как с помощью переключателя закрепить панель задач в нижней части экрана"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Анимация: как разделить экран, перетащив приложение с панели задач на открытое приложение"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Анимация: как перейти к рекомендуемым приложениям на устройстве"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Анимация: как найти информацию об объекте на экране. Удерживая клавишу действия, нужно выбрать область, в которой находится объект."</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Обучение по работе с панелью задач"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Используйте два приложения сразу, перетащив одно в сторону."</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Чтобы открыть панель задач, медленно проведите снизу вверх."</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Всегда показывать панель задач"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Изменить режим навигации"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Разделитель панели задач"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Другие недавние приложения"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Дополнительное меню панели задач"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Переместить вверх или влево"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Переместить вниз или вправо"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Открыть приложение во всплывающем окне"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Кнопка \"Закрыть\""</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Закрепить на панели"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Открепить от панели"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Напоминание"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Закрыть"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Изображение напоминания"</string> </resources> diff --git a/quickstep/res/values-si/strings.xml b/quickstep/res/values-si/strings.xml index b9bc3d381c..2030252b29 100644 --- a/quickstep/res/values-si/strings.xml +++ b/quickstep/res/values-si/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Freeform"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ඩෙස්ක්ටොපය"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"බාහිර සංදර්ශකය වෙත ගෙන යන්න"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"පැහැදිලි"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"වසන්න"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ඩෙස්ක්ටොපය"</string> <string name="recents_empty_message" msgid="7040467240571714191">"මෑත අයිතම නැත"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"යෙදුම් භාවිත සැකසීම්"</string> <string name="recents_clear_all" msgid="5328176793634888831">"සියල්ල හිස් කරන්න"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"නව මේසයක් එක් කරන්න"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"මෑත යෙදුම්"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 විනාඩියක්"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"මුල් පිටුවට යාමට ඉහළට ස්වයිප් කරන්න"</string> <string name="allset_button_hint" msgid="2395219947744706291">"ඔබේ මුල් තිරය වෙත යාමට මුල් පිටුව බොත්තම තට්ටු කරන්න"</string> <string name="allset_description_generic" msgid="5385500062202019855">"ඔබ ඔබේ <xliff:g id="DEVICE">%1$s</xliff:g> භාවිත කිරීම පටන් ගැනීමට සූදානම්"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"ඔබ ඔබේ උපාංගය භාවිත කිරීම පටන් ගැනීමට සූදානම්"</string> + <string name="default_device_name" msgid="6660656727127422487">"උපාංගය"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"පද්ධති සංචාලන සැකසීම්"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"ඔබේ <xliff:g id="DEVICE">%1$s</xliff:g> \nසූදානම්!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"ඔබේ \n සූදානම්!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"ඔබේ අලුත් <xliff:g id="DEVICE">%1$s</xliff:g> රසවිඳින්න!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"සංචාලනය කරන ආකාරය තෝරන්න"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ඉහළට ස්වයිප් කරන්න"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"මුල් බොත්තම තට්ටු කරන්න"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ටැබ්ලටය"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"දුරකථනය"</string> <string name="action_share" msgid="2648470652637092375">"බෙදා ගන්න"</string> <string name="action_screenshot" msgid="8171125848358142917">"තිර රුව"</string> <string name="action_split" msgid="2098009717623550676">"බෙදන්න"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"බෙදීම් තිරය භාවිතා කිරීමට වෙනත් යෙදුමක් තෝරා ගන්න"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"මෙම ක්‍රියාව යෙදුම හෝ ඔබේ සංවිධානය මගින් ඉඩ නොදේ"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"විජට් දැනට සහාය නොදක්වයි, වෙනත් යෙදුමක් තෝරන්න"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"නිබන්ධනය සංචාලනය මඟ හරින්නද?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"ඔබට මෙය පසුව <xliff:g id="NAME">%1$s</xliff:g> යෙදුම තුළ සොයා ගත හැකිය"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"අවලංගු කරන්න"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"මඟ හරින්න"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"තිරය කරකවන්න"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"තිරයේ පහළ සිට කාර්ය තීරුව දර්ශනය වන ආකාරය සහ භාවිතයේ නොමැති විට ස්වයංක්‍රීයව සැඟවෙන ආකාරය පෙන්වන සජීවීකරණය"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"තිරයේ පහළින් කාර්ය තීරුව ස්ථිරවම දෘශ්‍යමානව පවතින පරිදි, ටොගලයක් භාවිතයෙන් ඔබේ කාර්ය තීරුව ඇමිණෙන ආකාරය පෙන්වන සජීවීකරණය"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"විවෘත යෙදුමකට ඉහළින් ඇති කාර්ය තීරුවෙන් යෙදුමක් ඇදගෙන යාමෙන්, බෙදීම් තිරයක් නිර්මාණය කරන ආකාරය පෙන්වන සජීවීකරණය"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"ඔබේ උපාංගයේ යෝජිත යෙදුම් වෙත ප්‍රවේශ වන ආකාරය පෙන්වන සජීවීකරණය"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ක්‍රියා යතුර ස්පර්ශ කරගෙන අයිතමය ඇති ප්‍රදේශය තේරීමෙන් තිරය මත අයිතමයක් සොයන ආකාරය පෙන්වන සජීවීකරණය"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"කාර්ය තීරු අධ්‍යාපනය"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"එකවර යෙදුම් 2ක් භාවිතා කිරීමට යෙදුමක් පැත්තට අදින්න"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"කාර්ය තීරුව පෙන්වීමට ඉහළට සෙමින් ස්වයිප් කරන්න"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"සෑම විටම කාර්ය තීරුව පෙන්වන්න"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"සංචාලන ප්‍රකාරය වෙනස් කරන්න"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"කාර්ය තීරු බෙදනය"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"අනෙකුත් මෑත යෙදුම්"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"කාර්ය තීරුව පිටාර යාම"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ඉහළ/වම වෙත ගෙන යන්න"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"පහළ/දකුණ වෙත ගෙන යන්න"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"යෙදුම බුබුලක් ලෙස විවෘත කරන්න"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"වැසීමේ බොත්තම"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"කාර්ය තීරුවට අමුණන්න"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"කාර්ය තීරුවෙන් ඉවත් කරන්න"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"සෙමින් පෙළඹවීම"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"වසන්න"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"රූපය සෙමින් පෙළඹවීම"</string> </resources> diff --git a/quickstep/res/values-sk/strings.xml b/quickstep/res/values-sk/strings.xml index e5c99a54ec..7e071167a3 100644 --- a/quickstep/res/values-sk/strings.xml +++ b/quickstep/res/values-sk/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Voľný režim"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Počítač"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Presunúť na externú obrazovku"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Vymazať"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Zavrieť"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Počítač"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Žiadne nedávne položky"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Nastavenia využívania aplikácie"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Vymazať všetko"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Pridať novú plochu"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Nedávne aplikácie"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"Menej ako 1 minúta"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Potiahnutím nahor prejdete na plochu"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Na plochu prejdete klepnutím na tlačidlo plochy"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Môžete <xliff:g id="DEVICE">%1$s</xliff:g> začať používať"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Zariadenie môžete začať používať"</string> + <string name="default_device_name" msgid="6660656727127422487">"zariadenie"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Nastavenia navigácie systémom"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Vaše zariadenie <xliff:g id="DEVICE">%1$s</xliff:g> je \npripravené."</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Vaše zariadenie je \npripravené."</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Užite si svoj nový <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Vyberte spôsob prechádzania"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Potiahnite nahor"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Klepnite na tlačidlo plochy"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefón"</string> <string name="action_share" msgid="2648470652637092375">"Zdieľať"</string> <string name="action_screenshot" msgid="8171125848358142917">"Snímka obrazovky"</string> <string name="action_split" msgid="2098009717623550676">"Rozdeliť"</string> @@ -113,21 +104,20 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Na použitie rozd. obrazovky vyberte inú aplikáciu"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Aplikácia alebo vaša organizácia túto akciu nepovoľuje"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Miniaplikácie nie sú momentálne podporované, vyberte inú aplikáciu"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Chcete preskočiť návod na navigáciu?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Tento návod nájdete v aplikácii <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Zrušiť"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Preskočiť"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Otočiť obrazovku"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animácia zobrazujúca, ako sa panel aplikácií zobrazí z dolnej časti obrazovky a automaticky skryje, keď ho nepoužívate"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animácia znázorňujúca, ako pripnúť panel aplikácií pomocou prepínača, aby bol stále viditeľný v dolnej časti obrazovky"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animácia znázorňujúca, ako vytvoriť rozdelenú obrazovku presunutím aplikácie z panela aplikácií nad otvorenú aplikáciu"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animácia znázorňujúca, ako získať prístup k navrhovaným aplikáciám v zariadení"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animácia znázorňujúca, ako vyhľadať určitú položku na obrazovke pridržaním akčného klávesa a výberom oblasti, v ktorej sa daná položka nachádza"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Panel vzdelávacích aplikácií"</string> - <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Ak chcete používať dve aplikácie naraz, presuňte aplikáciu nabok"</string> + <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Ak chcete použiť dve aplikácie naraz, presuňte aplikáciu nabok"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Panel aplikácií zobrazíte pomalým potiahnutím nahor"</string> <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"Získavajte návrhy aplikácií na základe svojich zvykov"</string> - <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Dlhým stlačením rozdeľovača panel aplikácií pripnete"</string> + <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Dlhým stlačením rozdeľovača pripnete panel aplikácií"</string> <string name="taskbar_edu_features" msgid="3320337287472848162">"Panel aplikácií vám ponúka ďalšie možnosti"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"Vždy zobrazovať panel aplikácií"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"Ak chcete, aby sa panel aplikácií vždy zobrazoval v dolnej časti obrazovky, pridržte rozdeľovač"</string> - <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Pridržaním akčného klávesu môžete vyhľadávať, čo je na obrazovke"</string> + <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Ak chcete vyhľadávať, čo je na obrazovke, pridržte akčný kláves"</string> <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"Táto služba používa na účely vyhľadávania vybranú časť obrazovky. Uplatňujú sa <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>pravidlá ochrany súkromia<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> a <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>zmluvné podmienky<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g> spoločnosti Google."</string> <string name="taskbar_edu_close" msgid="887022990168191073">"Zavrieť"</string> <string name="taskbar_edu_done" msgid="6880178093977704569">"Hotovo"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Zobrazovať panel aplikácií"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Zmeniť režim navigácie"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Rozdeľovač panela aplikácií"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Iné nedávne aplikácie"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Rozšírená ponuka panela aplikácií"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Presunúť hore alebo doľava"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Presunúť dole alebo doprava"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Otvoriť aplikáciu ako bublinu"</string> @@ -167,13 +157,10 @@ <string name="bubble_bar_action_dismiss_all" msgid="3290722022983403060">"Zavrieť všetko"</string> <string name="bubble_bar_accessibility_announce_expand" msgid="1503192695527477102">"rozbaliť <xliff:g id="BUBBLE_DESCRIPTION">%1$s</xliff:g>"</string> <string name="bubble_bar_accessibility_announce_collapse" msgid="928284600086798791">"zbaliť <xliff:g id="BUBBLE_DESCRIPTION">%1$s</xliff:g>"</string> - <string name="search_gesture_feature_title" msgid="1294044108313175306">"Hľadanie krúžkovaním"</string> + <string name="search_gesture_feature_title" msgid="1294044108313175306">"Vyhľadávanie krúžením"</string> <string name="header_app_icon_description" msgid="2184625881433608027">"Ikona aplikácie"</string> <string name="header_default_app_title" msgid="8308052350689531566">"Názov aplikácie"</string> <string name="header_close_icon_description" msgid="5400033616675911319">"Tlačidlo Zavrieť"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Pripnúť na panel"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Odopnúť z panela"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Posunúť"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Zavrieť"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Posunúť obrázok"</string> </resources> diff --git a/quickstep/res/values-sl/strings.xml b/quickstep/res/values-sl/strings.xml index 440def5794..fd7dc69d44 100644 --- a/quickstep/res/values-sl/strings.xml +++ b/quickstep/res/values-sl/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Prosta oblika"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Namizni računalnik"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Premik v zunanji zaslon"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Počisti"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Zapri"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Namizni način"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Ni nedavnih elementov"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Nastavitve uporabe aplikacij"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Počisti vse"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Dodajanje novega namizja"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Nedavne aplikacije"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Povlecite navzgor za začetni zaslon"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Za pomik na začetni zaslon se dotaknite gumba za začetni zaslon."</string> <string name="allset_description_generic" msgid="5385500062202019855">"Pripravljeni ste, da začnete uporabljati <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Pripravljeni ste, da začnete uporabljati napravo"</string> + <string name="default_device_name" msgid="6660656727127422487">"napravo"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Nastavitve krmarjenja po sistemu"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Naprava <xliff:g id="DEVICE">%1$s</xliff:g> je \npripravljena"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Naprava je \npripravljena"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Uživajte v novi napravi <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Izbira načina pomikanja"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Povlecite navzgor"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Dotaknite se gumba za začetni zaslon"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablični računalnik"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Deli"</string> <string name="action_screenshot" msgid="8171125848358142917">"Posnetek zaslona"</string> <string name="action_split" msgid="2098009717623550676">"Razdeli"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Izberite drugo aplikacijo za uporabo razdeljenega zaslona."</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Aplikacija ali vaša organizacija ne dovoljuje tega dejanja"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Pripomočki trenutno niso podprti, izberite drugo aplikacijo"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Želite preskočiti vadnico za krmarjenje?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"To lahko pozneje najdete v aplikaciji <xliff:g id="NAME">%1$s</xliff:g>."</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Prekliči"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Preskoči"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Sukanje zaslona"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animacija, ki prikazuje, kako se opravilna vrstica prikaže na dnu zaslona in se samodejno skrije, ko je ne uporabljate"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animacija, ki prikazuje, kako s preklopnikom pripnete opravilno vrstico, da bo vedno vidna na dnu zaslona"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animacija, ki prikazuje, kako ustvarite razdeljen zaslon tako, da aplikacijo iz opravilne vrstice povlečete in spustite na odprto aplikacijo"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animacija, ki prikazuje, kako dostopate do predlaganih aplikacij v napravi"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animacija, ki prikazuje, kako na zaslonu poiščete element tako, da se dotaknete in pridržite tipko za dejanja ter izberete območje, kjer je element"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Poučni nasveti o opravilni vrstici"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Povlecite aplikacijo na stran za uporabo 2 aplikacij hkrati."</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Počasi povlecite navzgor za prikaz opravilne vrstice"</string> @@ -127,7 +117,7 @@ <string name="taskbar_edu_features" msgid="3320337287472848162">"Naredite več z opravilno vrstico"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"Stalni prikaz opravilne vrstice"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"Če želite, da je opravilna vrstica vedno prikazana na dnu zaslona, pridržite razdelilno črto."</string> - <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Za iskanje vsebine zaslona pridržite tipko za dejanja"</string> + <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Za iskanje po zaslonu se dotaknite in pridržite tipko za dejanja"</string> <string name="taskbar_edu_search_disclosure" msgid="8734536088447779686">"Ta izdelek za iskanje uporablja izbrani del zaslona. Veljajo Googlov <xliff:g id="BEGIN_PRIVACY_LINK">&lt;a href="%1$s"&gt;</xliff:g>pravilnik o zasebnosti<xliff:g id="END_PRIVACY_LINK">&lt;/a&gt;</xliff:g> in <xliff:g id="BEGIN_TOS_LINK">&lt;a href="%2$s"&gt;</xliff:g>pogoji storitve<xliff:g id="END_TOS_LINK">&lt;/a&gt;</xliff:g>."</string> <string name="taskbar_edu_close" msgid="887022990168191073">"Zapri"</string> <string name="taskbar_edu_done" msgid="6880178093977704569">"Končano"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Stalen prikaz oprav. vrstice"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Spreminjanje načina navigacije"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Razdelilnik opravilne vrstice"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Druge nedavne aplikacije"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Oblaček opravilne vrstice z dodatnimi elementi"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Premakni na vrh/levo"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Premakni na dno/desno"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Odpri aplikacijo kot oblaček"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Gumb za zapiranje"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Pripni v opravilno vrstico"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Odpni iz opravilne vrstice"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Dreganje"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Zapri"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Dregni sliko"</string> </resources> diff --git a/quickstep/res/values-sq/strings.xml b/quickstep/res/values-sq/strings.xml index 58961bc221..3ebff3a74d 100644 --- a/quickstep/res/values-sq/strings.xml +++ b/quickstep/res/values-sq/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Formë e lirë"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktopi"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Zhvendose tek ekrani i jashtëm"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Pastro"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Mbyll"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktopi"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Nuk ka asnjë artikull të fundit"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Cilësimet e përdorimit të aplikacionit"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Pastroji të gjitha"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Shto një tavolinë të re pune"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Aplikacionet e fundit"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 minutë"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Rrëshqit shpejt lart për të shkuar në ekranin bazë"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Trokit te butoni \"kreu\" për të shkuar tek ekrani bazë"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Je gati që të fillosh ta përdorësh këtë <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Je gati që të fillosh të përdorësh pajisjen tënde"</string> + <string name="default_device_name" msgid="6660656727127422487">"pajisje"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Cilësimet e navigimit të sistemit"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Pajisja jote <xliff:g id="DEVICE">%1$s</xliff:g> është \ngati!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Pajisja jote është \ngati!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Shijoje <xliff:g id="DEVICE">%1$s</xliff:g> tënd të ri!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Zgjidh se si do të navigosh"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Rrëshqit shpejt lart"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Trokit te butoni \"kreu\""</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tabletin"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefonin"</string> <string name="action_share" msgid="2648470652637092375">"Ndaj"</string> <string name="action_screenshot" msgid="8171125848358142917">"Pamja e ekranit"</string> <string name="action_split" msgid="2098009717623550676">"Ndaj"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Zgjidh një aplikacion tjetër për të përdorur ekranin e ndarë"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Ky veprim nuk lejohet nga aplikacioni ose organizata jote"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Miniaplikacionet nuk mbështeten për momentin. Zgjidh një aplikacion tjetër"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Të kapërcehet udhëzuesi i navigimit?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Këtë mund ta gjesh më vonë tek aplikacioni \"<xliff:g id="NAME">%1$s</xliff:g>\""</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Anulo"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Kapërce"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rrotullo ekranin"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animacioni që tregon se si shfaqet shiriti i detyrave nga fundi i ekranit dhe si fshihet automatikisht kur nuk është në përdorim"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animacioni që tregon se si të gozhdosh shiritin e detyrave duke përdorur një çelës, në mënyrë që shiriti i detyrave të qëndrojë përgjithmonë i dukshëm në fund të ekranit"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animacioni që tregon si të krijosh një ekran të ndarë duke zvarritur dhe lëshuar një aplikacion nga shiriti i detyrave mbi një aplikacion të hapur"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animacioni që tregon se si të qasesh në aplikacionet e sugjeruara në pajisjen tënde"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animacioni që tregon se si të kërkosh për një artikull në ekran, duke prekur dhe mbajtur shtypur tastin e veprimit dhe duke zgjedhur zonën ku është artikulli"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Edukimi për shiritin e detyrave"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Zvarrit një aplikacion në anë për të përdorur 2 aplikacione njëherësh"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Rrëshqit lart ngadalë për të shfaqur \"Shiritin e detyrave\""</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Shfaq gjithmonë shiritin e detyrave"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Ndrysho modalitetin e navigimit"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Ndarësi i shiritit të detyrave"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Aplikacionet e tjera së fundi"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Tejkalimi i shiritit të detyrave"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Lëviz në krye/majtas"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Lëviz në fund/djathtas"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Hap aplikacionin si një flluskë"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Butoni i mbylljes"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Gozhdo te shiriti"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Zhgozhdo nga shiriti"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Shtytje"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Mbyll"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Shtyj imazhin"</string> </resources> diff --git a/quickstep/res/values-sr/strings.xml b/quickstep/res/values-sr/strings.xml index baf6032dc6..6742da9967 100644 --- a/quickstep/res/values-sr/strings.xml +++ b/quickstep/res/values-sr/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Слободни облик"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Рачунар"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Преместите на спољни екран"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Обриши"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Затвори"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Рачунари"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Нема недавних ставки"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Подешавања коришћења апликације"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Обриши све"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Додај нову радну површину"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Недавне апликације"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 мин"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Превуците нагоре да бисте отворили почетни екран"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Додирните дугме Почетак да бисте отишли на почетни екран"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Спремни сте да почнете да користите <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Спремни сте да почнете да користите уређај"</string> + <string name="default_device_name" msgid="6660656727127422487">"уређај"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Подешавања кретања кроз систем"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> је \nспреман!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Уређај је \nспреман!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Уживајте уз нови <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Изаберите подешавања навигације"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Превуците нагоре"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Додирните дугме Почетак"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"таблет"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"телефон"</string> <string name="action_share" msgid="2648470652637092375">"Дели"</string> <string name="action_screenshot" msgid="8171125848358142917">"Снимак екрана"</string> <string name="action_split" msgid="2098009717623550676">"Подели"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Одаберите другу апликацију за подељени екран"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Апликација или организација не дозвољавају ову радњу"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Виџети тренутно нису подржани. Изаберите другу апликацију"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Желите да прескочите водич за кретање?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Можете да пронађете ово касније у апликацији <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Откажи"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Прескочи"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Ротирајте екран"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Анимација која показује како се трака задатака приказује при дну екрана и аутоматски скрива када се не користи"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Анимација која показује како да помоћу прекидача закачите траку задатака тако да увек буде видљива у дну екрана"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Анимација која показује како да направите подељени екран превлачењем и отпуштањем апликације са траке задатака изнад отворене апликације"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Анимација која показује како да приступате предложеним апликацијама на уређају"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Анимација која показује како да потражите ставку на екрану тако што ћете додирнути и задржати тастер радњи и изабрати област у којој се налази ова ставка"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Упутства на траци задатака"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Превуците на страну да бисте користили 2 апликације одједном"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Споро превуците нагоре да бисте видели траку задатака"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Увек приказуј траку задатака"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Промени режим навигације"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Разделник траке задатака"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Друге недавне апликације"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Преклопна трака задатака"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Премести горе лево"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Премести доле десно"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Отвори апликацију као облачић"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Дугме Затвори"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Закачи за траку зад."</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Откачи са траке зад."</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Аутоматски подсетник"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Затворите"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Слика аутоматског подсетника"</string> </resources> diff --git a/quickstep/res/values-sv/strings.xml b/quickstep/res/values-sv/strings.xml index 303d2f04fd..c995fd0521 100644 --- a/quickstep/res/values-sv/strings.xml +++ b/quickstep/res/values-sv/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Fritt format"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Skrivbordsläge"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Flytta till extern skärm"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Rensa"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Stäng"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Skrivbordsläge"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Listan är tom"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Inställningar för appanvändning"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Rensa alla"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Lägg till nytt skrivbord"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Senaste apparna"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Svep uppåt för att öppna startskärmen"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Tryck på hemknappen för att öppna startskärmen"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Nu kan du börja använda din <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Nu kan du börja använda din enhet"</string> + <string name="default_device_name" msgid="6660656727127422487">"enhet"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Systemnavigeringsinställningar"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Din <xliff:g id="DEVICE">%1$s</xliff:g> är \nklar!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Din enhet är \nklar!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Ha kul med din nya <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Välj hur du vill navigera"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Svep uppåt"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Tryck på hemknappen"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"surfplatta"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Dela"</string> <string name="action_screenshot" msgid="8171125848358142917">"Skärmbild"</string> <string name="action_split" msgid="2098009717623550676">"Delad skärm"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Välj en annan app för att använda delad skärm"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Appen eller organisationen tillåter inte den här åtgärden"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widgetar stöds för närvarande inte. Välj en annan app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Vill du hoppa över självstudierna?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Du hittar det här igen i <xliff:g id="NAME">%1$s</xliff:g>-appen"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Avbryt"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Hoppa över"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Rotera skärmen"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animation som visar hur aktivitetsfältet dyker upp längst ned på skärmen och automatiskt döljs när det inte används"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animation som visar hur du fäster aktivitetsfältet med ett reglage så att det alltid är synligt längst ned på skärmen"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animation som visar hur du skapar en delad skärm genom att dra och släppa en app från aktivitetsfältet ovanför en öppen app"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animation som visar hur du kommer åt föreslagna appar på enheten"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animation som visar hur du söker efter ett objekt på skärmen genom att trycka länge på åtgärdstangenten och välja området där objektet finns"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Aktivitetsfältsutbildning"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Dra en app till sidan om du vill använda två appar samtidigt"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Svep långsamt uppåt för att visa aktivitetsfältet"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Visa alltid aktivitetsfältet"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Ändra navigeringsläge"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Avdelare för aktivitetsfältet"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Andra appar som använts nyligen"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Fler alternativ för aktivitetsfältet"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Flytta högst upp/till vänster"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Flytta längst ned/till höger"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Öppna appen som en bubbla"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Knappen Stäng"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Fäst i aktivitetsfält"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Lossa från aktivitetsfält"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Hint"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Stäng"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Bild i hint"</string> </resources> diff --git a/quickstep/res/values-sw/strings.xml b/quickstep/res/values-sw/strings.xml index 115e10d988..046e37a01f 100644 --- a/quickstep/res/values-sw/strings.xml +++ b/quickstep/res/values-sw/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Muundo huru"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Kompyuta ya mezani"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Hamishia programu kwenye skrini ya nje"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Futa"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Funga"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Kompyuta ya Mezani"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Hakuna vipengee vya hivi karibuni"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Mipangilio ya matumizi ya programu"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Ondoa zote"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Weka eneokazi jipya"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Programu za hivi karibuni"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; dak 1"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Telezesha kidole juu ili uende kwenye skrini ya kwanza"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Gusa kitufe cha ukurasa wa mwanzo ili uende kwenye skrini ya kwanza"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Uko tayari kuanza kutumia <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Uko tayari kuanza kutumia kifaa chako"</string> + <string name="default_device_name" msgid="6660656727127422487">"kifaa"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Mipangilio ya usogezaji kwenye mfumo"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> yako iko \ntayari!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Kifaa chako kiko \ntayari!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Furahia <xliff:g id="DEVICE">%1$s</xliff:g> yako mpya!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Chagua jinsi ya kusogeza"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Telezesha kidole juu"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Gusa kitufe cha ukurasa wa mwanzo"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"kishikwambi"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"simu"</string> <string name="action_share" msgid="2648470652637092375">"Shiriki"</string> <string name="action_screenshot" msgid="8171125848358142917">"Picha ya skrini"</string> <string name="action_split" msgid="2098009717623550676">"Iliyogawanywa"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Chagua programu nyingine ili utumie hali ya kugawa skrini"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Kitendo hiki hakiruhusiwi na programu au shirika lako"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Wijeti hazitumiwi kwa sasa, tafadhali chagua programu nyingine"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Ungependa kuruka mafunzo ya usogezaji?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Utapata mafunzo haya baadaye katika programu ya <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Ghairi"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Ruka"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Zungusha skrini"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Uhuishaji unaoonyesha jinsi upauzana huonekana kutokea sehemu ya chini ya skrini na kufichwa kiotomatiki wakati hautumiki"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Uhuishaji unaoonyesha jinsi ya kubandika upauzana wako kwa kutumia kipengele cha kuwasha/kuzima, ili upauzana uendelee kuonekana sehemu ya chini kabisa ya skrini"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Uhuishaji unaoonyesha jinsi ya kuweka skrini iliyogawanywa, kwa kuburuta na kudondosha programu kutoka kwenye upauzana ulio juu ya programu iliyofunguliwa"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Uhuishaji unaoonyesha jinsi ya kufikia programu zinazopendekezwa kwenye kifaa chako"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Uhuishaji unaoonyesha jinsi ya kutafuta bidhaa kwenye skrini, kwa kugusa na kushikilia kitufe cha vitendo kisha kuchagua eneo liliko bidhaa"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Elimu ya Upauzana"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Buruta programu pembeni ili utumie programu 2 kwa wakati mmoja"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Telezesha kidole juu taratibu ili ufungue Upauzana"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Onyesha Zana kila wakati"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Badilisha hali ya usogezaji"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Kitenganishi cha Upauzana"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Programu nyingine za hivi majuzi"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Upauzana wa Vipengele vya Ziada"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Sogeza juu/kushoto"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Sogeza chini/kulia"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Fungua programu kama kiputo"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Kitufe cha kufunga"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Bandika kwa upauzana"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Bandua kwa upauzana"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Dokezo"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Funga"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Picha ya dokezo"</string> </resources> diff --git a/quickstep/res/values-sw600dp/config.xml b/quickstep/res/values-sw600dp/config.xml index 34d16955dc..b22cfc5118 100644 --- a/quickstep/res/values-sw600dp/config.xml +++ b/quickstep/res/values-sw600dp/config.xml @@ -17,8 +17,4 @@ <!-- The number of thumbnails and icons to keep in the cache. The thumbnail cache size also determines how many thumbnails will be fetched in the background. --> <integer name="recentsThumbnailCacheSize">8</integer> - - <!-- Expressive Dismiss --> - <item name="expressive_dismiss_task_trans_x_damping_ratio" type="dimen" format="float">0.775</item> - <item name="expressive_dismiss_task_trans_x_stiffness" type="dimen" format="float">2400</item> </resources> diff --git a/quickstep/res/values-sw600dp/dimens.xml b/quickstep/res/values-sw600dp/dimens.xml index 253c9643f6..3e726519ac 100644 --- a/quickstep/res/values-sw600dp/dimens.xml +++ b/quickstep/res/values-sw600dp/dimens.xml @@ -40,5 +40,4 @@ <dimen name="allset_page_padding_horizontal">120dp</dimen> <dimen name="allset_page_allset_text_size">38sp</dimen> <dimen name="allset_page_swipe_up_text_size">15sp</dimen> - <dimen name="allset_page_swipe_up_text_size_expressive">16sp</dimen> </resources> diff --git a/quickstep/res/values-sw720dp/dimens.xml b/quickstep/res/values-sw720dp/dimens.xml index dbe82f277b..1caffb8a72 100644 --- a/quickstep/res/values-sw720dp/dimens.xml +++ b/quickstep/res/values-sw720dp/dimens.xml @@ -37,7 +37,6 @@ <!-- All Set page--> <dimen name="allset_page_allset_text_size">42sp</dimen> <dimen name="allset_page_swipe_up_text_size">16sp</dimen> - <dimen name="allset_page_swipe_up_text_size_expressive">16sp</dimen> <!-- Taskbar swipe up thresholds --> <dimen name="taskbar_from_nav_threshold">30dp</dimen> diff --git a/quickstep/res/values-ta/strings.xml b/quickstep/res/values-ta/strings.xml index 9a752ed23c..9074f6c9c3 100644 --- a/quickstep/res/values-ta/strings.xml +++ b/quickstep/res/values-ta/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"குறிப்பிட்ட வடிவமில்லாத பயன்முறை"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"டெஸ்க்டாப்"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"வெளிப்புற டிஸ்ப்ளேவிற்கு நகர்த்துதல்"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"அழிக்கும்"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"மூடு"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"டெஸ்க்டாப்"</string> <string name="recents_empty_message" msgid="7040467240571714191">"சமீபத்தியவை எதுவுமில்லை"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"ஆப்ஸ் உபயோக அமைப்புகள்"</string> <string name="recents_clear_all" msgid="5328176793634888831">"எல்லாம் அழி"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"புதிய டெஸ்க்கைச் சேர்க்கும்"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"சமீபத்திய ஆப்ஸ்"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 நி"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"முகப்புக்குச் செல்ல மேல்நோக்கி ஸ்வைப் செய்யுங்கள்"</string> <string name="allset_button_hint" msgid="2395219947744706291">"முகப்புத் திரைக்குச் செல்வதற்கு முகப்பு பட்டனைத் தட்டவும்"</string> <string name="allset_description_generic" msgid="5385500062202019855">"உங்கள் <xliff:g id="DEVICE">%1$s</xliff:g> உங்களுக்காகத் தயாராக இருக்கிறது"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"உங்கள் சாதனத்தைப் பயன்படுத்தத் தயாராகிவிட்டீர்கள்"</string> + <string name="default_device_name" msgid="6660656727127422487">"சாதனம்"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"சிஸ்டம் வழிசெலுத்தல் அமைப்புகள்"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"உங்கள் <xliff:g id="DEVICE">%1$s</xliff:g> \nதயார்!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"உங்கள் சாதனம் \nதயார்!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"உங்கள் புதிய <xliff:g id="DEVICE">%1$s</xliff:g> சாதனத்தைப் பயன்படுத்தி மகிழுங்கள்!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"வழிசெலுத்துவதற்கான வழிமுறையைத் தேர்வுசெய்யுங்கள்"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"மேல்நோக்கி ஸ்வைப் செய்யுங்கள்"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"முகப்பு பட்டனைத் தட்டுங்கள்"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"டேப்லெட்"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"மொபைல்"</string> <string name="action_share" msgid="2648470652637092375">"பகிர்"</string> <string name="action_screenshot" msgid="8171125848358142917">"ஸ்கிரீன்ஷாட்"</string> <string name="action_split" msgid="2098009717623550676">"பிரி"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"திரைப் பிரிப்பை பயன்படுத்த வேறு ஆப்ஸை தேர்வுசெய்க"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ஆப்ஸோ உங்கள் நிறுவனமோ இந்த செயலை அனுமதிப்பதில்லை"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"விட்ஜெட்கள் தற்போது ஆதரிக்கப்படவில்லை, வேறு ஆப்ஸைத் தேர்ந்தெடுக்கவும்"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"வழிகாட்டுதல் பயிற்சியைத் தவிர்க்கவா?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"<xliff:g id="NAME">%1$s</xliff:g> ஆப்ஸில் பிறகு இதைக் கண்டறியலாம்"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"ரத்துசெய்"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"தவிர்"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"திரையைச் சுழற்றும்"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"திரையின் அடிப்பகுதியில் இருந்து செயல் பட்டி எப்படிக் காட்டப்படுகிறது, பயன்பாட்டில் இல்லாதபோது தானாகவே மறைகிறது என்பதைக் காட்டும் அனிமேஷன்"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"நிலைமாற்றியைப் பயன்படுத்தி உங்கள் செயல் பட்டியை எப்படி பின் செய்வது என்பதைக் காட்டும் அனிமேஷன், இதனால் திரையின் அடிப்பகுதியில் செயல் பட்டி நிரந்தரமாகக் காட்டப்படும்"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"திறந்திருக்கும் ஆப்ஸின் மேலேயுள்ள செயல் பட்டியிலிருந்து ஒரு ஆப்ஸை இழுத்து விடுவதன் மூலம், திரைப் பிரிப்பை எப்படி உருவாக்குவது என்பதைக் காட்டும் அனிமேஷன்"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"உங்கள் சாதனத்தில் பரிந்துரைக்கப்பட்ட ஆப்ஸை அணுகுவது எப்படி என்பதைக் காட்டும் அனிமேஷன்"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ஆக்‌ஷன் பட்டனைத் தொட்டுப் பிடித்து, ஆவணம் இருக்கும் பகுதியைத் தேர்ந்தெடுப்பதன் மூலம் திரையில் ஒன்றைத் தேடுவது எப்படி என்பதைக் காட்டும் அனிமேஷன்"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"செயல் பட்டியைப் பயன்படுத்தும் விதம்"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"ஆப்ஸை பக்கவாட்டில் இழுத்து ஒரே நேரத்தில் 2 ஆப்ஸைப் பயன்படுத்தலாம்"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"செயல் பட்டியைக் காட்ட மேல்நோக்கி மெதுவாக ஸ்வைப் செய்யவும்"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"செயல் பட்டியை எப்போதும் காட்டு"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"வழிசெலுத்தல் பயன்முறையை மாற்று"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"செயல் பட்டிப் பிரிப்பான்"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"பிற சமீபத்திய ஆப்ஸ்"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"செயல் பட்டிக்கான கூடுதல் விருப்பங்கள்"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"மேலே/இடதுபுறம் நகர்த்தும்"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"கீழே/வலதுபுறம் நகர்த்தும்"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"ஆப்ஸைக் குமிழாகத் திற"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"மூடுவதற்கான பட்டன்"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"செயல்பட்டியில் பின் செய்"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"செயல்பட்டியிலிருந்து அகற்று"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"நினைவூட்டல்"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"மூடும்"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"படம் குறித்து நினைவூட்டும்"</string> </resources> diff --git a/quickstep/res/values-te/strings.xml b/quickstep/res/values-te/strings.xml index e27a7272d5..28852236c9 100644 --- a/quickstep/res/values-te/strings.xml +++ b/quickstep/res/values-te/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"సంప్రదాయేతర"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"డెస్క్‌టాప్"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"ఎక్స్‌టర్నల్ డిస్‌ప్లేకు తరలించండి"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"క్లియర్ చేయండి"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"మూసివేయండి"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"డెస్క్‌టాప్"</string> <string name="recents_empty_message" msgid="7040467240571714191">"ఇటీవలి ఐటెమ్‌లు ఏవీ లేవు"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"యాప్ వినియోగ సెట్టింగ్‌లు"</string> - <string name="recents_clear_all" msgid="5328176793634888831">"అన్నీ క్లియర్ చేయండి"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"కొత్త డెస్క్‌ను జోడించండి"</string> + <string name="recents_clear_all" msgid="5328176793634888831">"అన్నీ తీసివేయండి"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"ఇటీవలి యాప్‌లు"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 నిమిషం"</string> @@ -69,7 +68,7 @@ <string name="home_gesture_feedback_complete_without_follow_up" msgid="2978063221383413443">"మీరు మొదటి స్క్రీన్‌కు వెళ్లే సంజ్ఞను పూర్తి చేశారు"</string> <string name="home_gesture_intro_title" msgid="836590312858441830">"మొదటి స్క్రీన్‌కు వెళ్లడానికి స్వైప్ చేయండి"</string> <string name="home_gesture_intro_subtitle" msgid="2632238748497975326">"స్క్రీన్ కింది నుండి పైకి స్వైప్ చేయండి. ఈ సంజ్ఞ ఎప్పుడూ మిమ్మల్ని మొదటి స్క్రీన్‌కు తీసుకెళ్తుంది."</string> - <string name="home_gesture_tutorial_title" msgid="3126834347496917376">"హోం స్క్రీన్‌కు వెళ్లండి"</string> + <string name="home_gesture_tutorial_title" msgid="3126834347496917376">"మొదటి ట్యాబ్‌కు వెళ్లండి"</string> <string name="home_gesture_tutorial_subtitle" msgid="7245995490408668778">"స్క్రీన్ కింది భాగం నుండి పైకి స్వైప్ చేయండి"</string> <string name="home_gesture_tutorial_success" msgid="1736295017642244751">"బాగా చేశారు!"</string> <string name="overview_gesture_feedback_swipe_too_far_from_edge" msgid="6402349235265407385">"మీరు స్క్రీన్ దిగువ అంచు నుండి పైకి స్వైప్ చేశారని నిర్ధారించుకోండి"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"వర్చువల్ హోమ్‌కు వెళ్లడానికి పైకి స్వైప్ చేయండి"</string> <string name="allset_button_hint" msgid="2395219947744706291">"మీ మొదటి స్క్రీన్‌కు వెళ్లడానికి హోమ్ బటన్‌ను ట్యాప్ చేయండి"</string> <string name="allset_description_generic" msgid="5385500062202019855">"మీరు ఇప్పుడు మీ <xliff:g id="DEVICE">%1$s</xliff:g>‌ను ఉపయోగించడం ప్రారంభించవచ్చు"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"మీరు ఇప్పుడు మీ డివైజ్‌ను ఉపయోగించడానికి సిద్ధంగా ఉన్నారు"</string> + <string name="default_device_name" msgid="6660656727127422487">"పరికరం"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"సిస్టమ్ నావిగేషన్ సెట్టింగ్‌లు"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"మీ <xliff:g id="DEVICE">%1$s</xliff:g> సిద్ధంగా \nఉంది!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"మీ డివైజ్ సిద్ధంగా \nఉంది!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"మీ కొత్త <xliff:g id="DEVICE">%1$s</xliff:g>‌ను ఉపయోగిస్తూ ఎంజాయ్ చేయండి!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"ఎలా నావిగేట్ చేయాలో ఎంచుకోండి"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"పైకి స్వైప్ చేయండి"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"హోమ్ బటన్‌ను ట్యాప్ చేయండి"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"టాబ్లెట్"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ఫోన్"</string> <string name="action_share" msgid="2648470652637092375">"షేర్ చేయండి"</string> <string name="action_screenshot" msgid="8171125848358142917">"స్క్రీన్‌షాట్"</string> <string name="action_split" msgid="2098009717623550676">"స్ప్లిట్ చేయండి"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"స్ప్లిట్ స్క్రీన్ ఉపయోగానికి మరొక యాప్ ఎంచుకోండి"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ఈ చర్యను యాప్ గానీ, మీ సంస్థ గానీ అనుమతించవు"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"విడ్జెట్‌లకు ప్రస్తుతం సపోర్ట్ లేదు, దయచేసి మరొక యాప్‌ను ఎంచుకోండి"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"నావిగేషన్ ట్యుటోరియల్‌ను స్కిప్ చేయాలా?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"<xliff:g id="NAME">%1$s</xliff:g> యాప్‌లో మీరు తర్వాత కనుగొనవచ్చు"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"రద్దు చేయండి"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"స్కిప్ చేయండి"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"స్క్రీన్‌ను తిప్పండి"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"టాస్క్‌బార్ స్క్రీన్ దిగువ నుండి ఎలా కనిపిస్తుందో, ఉపయోగంలో లేనప్పుడు ఆటోమేటిక్‌గా ఎలా దాచబడుతుందో చూపించే యానిమేషన్"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"టోగుల్ ఉపయోగించి మీ టాస్క్‌బార్‌ను ఎలా పిన్ చేయాలో చూపించే యానిమేషన్, తద్వారా టాస్క్‌బార్ స్క్రీన్ దిగువున శాశ్వతంగా కనిపిస్తుంది"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"తెరిచి ఉన్న యాప్ పైన టాస్క్‌బార్ నుండి యాప్‌ను లాగి, వదలడం ద్వారా స్ప్లిట్ స్క్రీన్‌ను ఎలా క్రియేట్ చేయాలో చూపించే యానిమేషన్"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"మీ పరికరంలో సూచించబడిన యాప్‌లను ఎలా యాక్సెస్ చేయాలో చూపించే యానిమేషన్"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"యాక్షన్ కీని నొక్కి పట్టుకుని, ఆ ఐటెమ్ ఉన్న ప్రాంతాన్ని ఎంచుకోవడం ద్వారా స్క్రీన్‌పై ఐటెమ్ కోసం ఎలా సెర్చ్ చేయాలో చూపించే యానిమేషన్"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"టాస్క్‌బార్ ఎడ్యుకేషన్"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"ఒకేసారి 2 యాప్‌లను ఉపయోగించడానికి యాప్‌ను పక్కకు లాగండి"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"టాస్క్‌బార్‌ను చూపడానికి నెమ్మదిగా పైకి స్వైప్ చేయండి"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"టాస్క్‌బార్‌ను నిరంతరం చూపండి"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"నావిగేషన్ మోడ్‌ను మార్చండి"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"టాస్క్‌బార్ డివైడర్"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"ఇతర ఇటీవలి యాప్‌లు"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"టాస్క్‌బార్ ఓవర్‌ఫ్లో"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ఎగువ/ఎడమ వైపునకు తరలించండి"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"దిగువ/కుడి వైపునకు తరలించండి"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"యాప్‌ను బబుల్‌లాగా తెరవండి"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"\'మూసివేయండి\' బటన్"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"టాస్క్‌బార్‌కు పిన్"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"టాస్క్‌బార్ అన్‌పిన్"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"ఆటోమేటిక్ రిమైండర్"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"మూసివేయండి"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"ఆటోమేటిక్ రిమైండర్ ఇమేజ్"</string> </resources> diff --git a/quickstep/res/values-th/strings.xml b/quickstep/res/values-th/strings.xml index 4d41065b54..09d0df14a8 100644 --- a/quickstep/res/values-th/strings.xml +++ b/quickstep/res/values-th/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"รูปแบบอิสระ"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"เดสก์ท็อป"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"ย้ายไปยังจอแสดงผลภายนอก"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"ล้าง"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"ปิด"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"เดสก์ท็อป"</string> <string name="recents_empty_message" msgid="7040467240571714191">"ไม่มีรายการล่าสุด"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"การตั้งค่าการใช้แอป"</string> <string name="recents_clear_all" msgid="5328176793634888831">"ล้างทั้งหมด"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"เพิ่มเดสก์ใหม่"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"แอปล่าสุด"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g> <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt;1 นาที"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"ปัดขึ้นเพื่อไปที่หน้าแรก"</string> <string name="allset_button_hint" msgid="2395219947744706291">"แตะปุ่มหน้าแรกเพื่อไปที่หน้าจอหลัก"</string> <string name="allset_description_generic" msgid="5385500062202019855">"คุณเริ่มใช้<xliff:g id="DEVICE">%1$s</xliff:g>ได้แล้ว"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"คุณเริ่มใช้อุปกรณ์ได้แล้ว"</string> + <string name="default_device_name" msgid="6660656727127422487">"อุปกรณ์"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"การตั้งค่าการไปยังส่วนต่างๆ ของระบบ"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> ของคุณ\nพร้อมแล้ว"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"อุปกรณ์ของคุณ\nพร้อมแล้ว"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"สนุกกับ <xliff:g id="DEVICE">%1$s</xliff:g> ใหม่ของคุณ"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"เลือกวิธีไปยังส่วนต่างๆ"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"ปัดขึ้น"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"แตะปุ่มหน้าแรก"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"แท็บเล็ต"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"โทรศัพท์"</string> <string name="action_share" msgid="2648470652637092375">"แชร์"</string> <string name="action_screenshot" msgid="8171125848358142917">"ภาพหน้าจอ"</string> <string name="action_split" msgid="2098009717623550676">"แยก"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"เลือกแอปอื่นเพื่อใช้การแยกหน้าจอ"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"แอปหรือองค์กรของคุณไม่อนุญาตการดำเนินการนี้"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"ยังไม่รองรับวิดเจ็ตในขณะนี้ โปรดเลือกแอปอื่น"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"ข้ามบทแนะนำการนำทางไหม"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"คุณดูบทแนะนำนี้ได้ภายหลังในแอป \"<xliff:g id="NAME">%1$s</xliff:g>\""</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"ยกเลิก"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"ข้าม"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"หมุนหน้าจอ"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"ภาพเคลื่อนไหวแสดงวิธีทำให้แถบงานปรากฏจากด้านล่างของหน้าจอและซ่อนโดยอัตโนมัติเมื่อไม่ได้ใช้งาน"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"ภาพเคลื่อนไหวแสดงวิธีปักหมุดแถบงานโดยใช้ปุ่มเปิด/ปิด เพื่อให้แถบงานยังคงปรากฏอยู่ด้านล่างของหน้าจอตลอดเวลา"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"ภาพเคลื่อนไหวแสดงวิธีสร้างโหมดแยกหน้าจอด้วยการลากและวางแอปจากแถบงานไว้เหนือแอปที่เปิดอยู่"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"ภาพเคลื่อนไหวแสดงวิธีเข้าถึงแอปที่แนะนำในอุปกรณ์"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"ภาพเคลื่อนไหวแสดงวิธีค้นหารายการบนหน้าจอโดยการแตะปุ่มดำเนินการค้างไว้และเลือกพื้นที่ที่รายการนั้นอยู่"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"แถบงาน Education"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"ลากแอปไปด้านข้างเพื่อใช้ 2 แอปพร้อมกัน"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"ปัดขึ้นช้าๆ เพื่อแสดงแถบงาน"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"แสดงแถบงานเสมอ"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"เปลี่ยนโหมดการนําทาง"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"ตัวแบ่งแถบงาน"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"แอปล่าสุดอื่นๆ"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"การดำเนินการเพิ่มเติมของแถบงาน"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"ย้ายไปที่ด้านบนหรือด้านซ้าย"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"ย้ายไปที่ด้านล่างหรือด้านขวา"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"เปิดแอปเป็นบับเบิล"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"ปุ่มปิด"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ปักหมุดไปยังแถบงาน"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"เลิกปักหมุดจากแถบงาน"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"กระตุ้นเตือน"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"ปิด"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"กระตุ้นเตือนเกี่ยวกับรูปภาพ"</string> </resources> diff --git a/quickstep/res/values-tl/strings.xml b/quickstep/res/values-tl/strings.xml index bfe5d9a2c8..35515789cb 100644 --- a/quickstep/res/values-tl/strings.xml +++ b/quickstep/res/values-tl/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Freeform"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Ilipat sa external na display"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"I-clear"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Isara"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktop"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Walang kamakailang item"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Mga setting ng paggamit ng app"</string> <string name="recents_clear_all" msgid="5328176793634888831">"I-clear lahat"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Magdagdag ng bagong desk"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Mga kamakailang app"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 min"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Mag-swipe pataas para pumunta sa home"</string> <string name="allset_button_hint" msgid="2395219947744706291">"I-tap ang button ng home para pumunta sa iyong home screen"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Handa mo nang simulan ang paggamit sa iyong <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Handa ka nang simulang gamitin ang iyong device"</string> + <string name="default_device_name" msgid="6660656727127422487">"device"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Mga setting ng navigation ng system"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Handa na \nang iyong <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Handa na \nang iyong device!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"I-enjoy ang iyong bagong <xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Piliin kung paano mag-navigate"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Mag-swipe pataas"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"I-tap ang button ng home"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telepono"</string> <string name="action_share" msgid="2648470652637092375">"Ibahagi"</string> <string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string> <string name="action_split" msgid="2098009717623550676">"Split"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Pumili ng ibang app para gamitin ang split screen"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Hindi pinapayagan ng app o ng iyong organisasyon ang pagkilos na ito"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Kasalukuyang hindi sinusuportahan ang mga widget, pumili ng ibang app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Laktawan ang tutorial sa pag-navigate?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Makikita mo ito sa <xliff:g id="NAME">%1$s</xliff:g> app sa ibang pagkakataon"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Kanselahin"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Laktawan"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"I-rotate ang screen"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Animation na nagpapakita kung paano nakikita ang taskbar mula sa ibaba ng screen, at awtomatikong nakatago kapag hindi ginagamit"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Animation na nagpapakita kung paano i-pin ang iyong taskbar gamit ang isang toggle, para mananatiling permanenteng nakikita sa ibaba ng screen ang taskbar"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Animation na nagpapakita kung paano gumawa ng split screen, sa pamamagitan ng pag-drag at pag-drop ng app mula sa taskbar sa itaas ng nakabukas na app"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Animation na nagpapakita kung paano i-access ang mga iminumungkahing app sa iyong device"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Animation na nagpapakita kung paano maghanap ng isang item sa screen, sa pamamagitan ng pagpindot nang matagal sa action key at pagpili sa lugar kung saan naroroon ang item."</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Impormasyon sa taskbar"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Mag-drag ng app sa gilid para makagamit ng 2 app nang sabay"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Mag-swipe nang mabagal pataas para ipakita ang Taskbar"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Ipakita lagi ang Taskbar"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Magpalit ng navigation mode"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Divider ng Taskbar"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Iba pang kamakailang app"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Taskbar Overflow"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Ilipat sa itaas/kaliwa"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Ilipat sa ibaba/kanan"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Buksan ang app bilang bubble"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Button na isara"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"I-pin sa taskbar"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"I-unpin sa taskbar"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Pag-nudge"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Isara"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"I-nudge ang larawan"</string> </resources> diff --git a/quickstep/res/values-tr/strings.xml b/quickstep/res/values-tr/strings.xml index e3d501d852..5c5fba656d 100644 --- a/quickstep/res/values-tr/strings.xml +++ b/quickstep/res/values-tr/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Serbest çalışma"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Masaüstü"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Harici ekrana taşı"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Temizle"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Kapat"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Masaüstü"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Yeni öğe yok"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Uygulama kullanım ayarları"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Tümünü temizle"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Yeni masa ekle"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Son uygulamalar"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 dk."</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Ana ekrana gitmek için yukarı kaydırın"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Ana ekranınıza gitmek için ana sayfa düğmesine dokunun"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Artık <xliff:g id="DEVICE">%1$s</xliff:g> kullanılmak için hazır"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Cihazınız kullanıma hazır"</string> + <string name="default_device_name" msgid="6660656727127422487">"cihaz"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Sistem gezinme ayarları"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> cihazınız \nhazır."</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Cihazınız \nhazır."</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Yeni <xliff:g id="DEVICE">%1$s</xliff:g> cihazınızın tadını çıkarın."</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Nasıl gezineceğinizi seçin"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Yukarı kaydırın"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Ana sayfa düğmesine dokunun"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"tablet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Paylaş"</string> <string name="action_screenshot" msgid="8171125848358142917">"Ekran görüntüsü"</string> <string name="action_split" msgid="2098009717623550676">"Böl"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Bölünmüş ekran kullanmak için başka bir uygulama seçin"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Uygulamanız veya kuruluşunuz bu işleme izin vermiyor"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Widget\'lar şu anda desteklenmiyor. Lütfen başka bir uygulama seçin"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Gezinme eğitimi atlansın mı?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Bunu daha sonra <xliff:g id="NAME">%1$s</xliff:g> uygulamasında bulabilirsiniz"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"İptal"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Atla"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Ekranı döndür"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Görev çubuğunun ekranın altından nasıl göründüğünü ve kullanılmadığında otomatik olarak nasıl gizlendiğini gösteren animasyon"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Görev çubuğunun, ekranın alt kısmında sürekli görünür olması için açma/kapatma düğmesini kullanarak görev çubuğunuzu nasıl sabitleyeceğinizi gösteren animasyon"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Görev çubuğundaki bir uygulamayı, açık bir uygulamanın üzerine sürükleyip bırakarak nasıl bölünmüş ekran oluşturacağınızı gösteren animasyon"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Cihazınızda önerilen uygulamalara nasıl erişeceğinizi gösteren animasyon"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Eylem tuşuna dokunup basılı tutarak ve öğenin bulunduğu alanı seçerek ekranda nasıl öğe aranacağını gösteren animasyon"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Görev çubuğu eğitimi"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Aynı anda iki uygulama kullanmak için birini yana sürükleyin"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Görev çubuğunun görünmesi için yukarı doğru yavaşça kaydırın"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Görev çubuğunu daima göster"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Gezinme modunu değiştir"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Görev Çubuğu Ayırıcısı"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Diğer son uygulamalar"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Görev Çubuğu Taşması"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Sol üste taşı"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Sağ alta taşı"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Uygulamayı balon olarak aç"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Kapat düğmesi"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Çubuğa sabitle"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Çubuktan kaldır"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Otomatik hatırlatma"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Kapat"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Resmi otomatik hatırlat"</string> </resources> diff --git a/quickstep/res/values-uk/strings.xml b/quickstep/res/values-uk/strings.xml index 06d5e29560..1d1f040acc 100644 --- a/quickstep/res/values-uk/strings.xml +++ b/quickstep/res/values-uk/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Довільна форма"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Робочий стіл"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Перемістити на зовнішній екран"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Очистити"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Закрити"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Комп’ютер"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Немає нещодавніх додатків"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Налаштування використання додатка"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Очистити все"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Додати новий робочий стіл"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Нещодавні додатки"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 хв"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Щоб перейти на головний екран, проведіть пальцем угору"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Натисніть кнопку головного екрана, щоб відкрити його"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Тепер ви можете використовувати <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Тепер ви можете користуватися пристроєм"</string> + <string name="default_device_name" msgid="6660656727127422487">"пристрій"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Налаштування навігації в системі"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"Ваш <xliff:g id="DEVICE">%1$s</xliff:g> \nготовий до використання!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Ваш пристрій \nготовий до використання!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Насолоджуйтеся своїм новим <xliff:g id="DEVICE">%1$s</xliff:g>ом!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Виберіть спосіб навігації"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Проведіть пальцем угору"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Натисніть кнопку головного екрана"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"планшет"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"телефон"</string> <string name="action_share" msgid="2648470652637092375">"Поділитися"</string> <string name="action_screenshot" msgid="8171125848358142917">"Знімок екрана"</string> <string name="action_split" msgid="2098009717623550676">"Розділити"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Щоб розділити екран, виберіть ще один додаток."</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Ця дія заборонена додатком або адміністратором організації"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Віджети наразі не підтримуються. Виберіть інший додаток."</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Пропустити посібник із навігації?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Ви знайдете його пізніше в додатку <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Скасувати"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Пропустити"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Обернути екран"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Анімація, що показує, як панель завдань з’являється внизу екрана й автоматично приховується, якщо ви її не використовуєте"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Анімація, що показує, як за допомогою перемикача закріпити панель завдань, щоб вона завжди відображалася внизу екрана"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Анімація, що показує, як розділити екран, перетягнувши додаток із панелі завдань на відкритий додаток"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Анімація, що показує, як отримати доступ до рекомендованих додатків на пристрої"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Анімація, що показує, як шукати об’єкт на екрані, натиснувши й утримуючи клавішу дії, а потім вибравши область, де він розташований"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Панель завдань Education"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Перетягніть убік, щоб використовувати 2 додатки одночасно"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Щоб відкрити панель завдань, повільно проведіть угору"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Завжди показув. панель завдань"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Змінити режим навігації"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Розділювач панелі завдань"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Інші нещодавні додатки"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Додаткове меню панелі завдань"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Перемістити вгору або вліво"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Перемістити вниз або вправо"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Відкрити додаток у спливаючому вікні"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Кнопка \"Закрити\""</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"На панель завдань"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"З панелі завдань"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Змістити"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Закрити"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Змістити зображення"</string> </resources> diff --git a/quickstep/res/values-ur/strings.xml b/quickstep/res/values-ur/strings.xml index d1ac26b303..8c44ef71a4 100644 --- a/quickstep/res/values-ur/strings.xml +++ b/quickstep/res/values-ur/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"فری فارم"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"ڈیسک ٹاپ"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"بیرونی ڈسپلے پر متقل کریں"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"صاف کریں"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"بند کریں"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"ڈیسک ٹاپ"</string> <string name="recents_empty_message" msgid="7040467240571714191">"کوئی حالیہ آئٹم نہیں"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"ایپ کے استعمال کی ترتیبات"</string> <string name="recents_clear_all" msgid="5328176793634888831">"سبھی کو صاف کریں"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"نیا ڈیسک شامل کریں"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"حالیہ ایپس"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>،<xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"‏&lt; 1 منٹ"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"ہوم پر جانے کے لیے اوپر سوائپ کریں"</string> <string name="allset_button_hint" msgid="2395219947744706291">"اپنی ہوم اسکرین پر جانے کے لیے ہوم بٹن پر تھپتھپائیں"</string> <string name="allset_description_generic" msgid="5385500062202019855">"آپ اپنے <xliff:g id="DEVICE">%1$s</xliff:g> کا استعمال شروع کرنے کے لیے تیار ہیں"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"آپ اپنے آلے کا استعمال شروع کرنے کے لیے تیار ہیں"</string> + <string name="default_device_name" msgid="6660656727127422487">"آلہ"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"سسٹم نیویگیشن کی ترتیبات"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"آپ کا <xliff:g id="DEVICE">%1$s</xliff:g> \nتیار ہے!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"آپ کا آلہ \nتیار ہے!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"اپنے نئے <xliff:g id="DEVICE">%1$s</xliff:g> کا لطف اٹھائیں!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356">"‫"<annotation id="link">"نیویگیٹ کرنے کا طریقہ منتخب کریں"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"اوپر کی طرف سوائپ کریں"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"ہوم بٹن پر تھپتھپائیں"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ٹیبلیٹ"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"فون"</string> <string name="action_share" msgid="2648470652637092375">"اشتراک کریں"</string> <string name="action_screenshot" msgid="8171125848358142917">"اسکرین شاٹ"</string> <string name="action_split" msgid="2098009717623550676">"اسپلٹ"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"اسپلٹ اسکرین کے استعمال کیلئے دوسری ایپ منتخب کریں"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"ایپ یا آپ کی تنظیم کی جانب سے اس کارروائی کی اجازت نہیں ہے"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"وجیٹس فی الحال تعاون یافتہ نہیں ہیں، براہ کرم کوئی اور ایپ منتخب کریں"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"نیویگیشن کا ٹیوٹوریل نظر انداز کریں؟"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"آپ اسے بعد میں <xliff:g id="NAME">%1$s</xliff:g> ایپ میں تلاش کر سکتے ہیں"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"منسوخ کریں"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"نظر انداز کریں"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"اسکرین کو گھمائیں"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"اینیمیشن دکھاتی ہے کہ کس طرح ٹاسک بار اسکرین کے نیچے سے نظر آتا ہے اور استعمال میں نہ ہونے پر خود بخود چھپ جاتا ہے"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"اینیمیشن یہ دکھاتی ہے کہ ٹوگل کا استعمال کرتے ہوئے آپ کے ٹاسک بار کو کیسے پن کرنا ہے، تاکہ ٹاسک بار اسکرین کے نیچے مستقل طور پر نظر آئے"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"ایک کھلی ایپ کے اوپر ٹاسک بار سے کسی ایپ کو کھینچ کر ڈال کر، ایک اسپلٹ اسکرین بنانے کا طریقہ دکھانے والی اینیمیشن"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"اینیمیشن دکھاتی ہے کہ آپ کے آلے پر تجویز کردہ ایپس تک کیسے رسائی حاصل کی جائے"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"اینیمیشن دکھاتی ہے کہ ایکشن کلید کو ٹچ کر کے اور دبائے رکھ کر اور آئٹم جس ایریا میں ہے اسے منتخب کر کے اسکرین پر کسی آئٹم کو کس طرح تلاش کرنا ہے"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"ٹاسک بار کی تعلیم"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"ایک وقت میں 2 ایپس استعمال کرنے کیلئے ایپ سائیڈ پر گھسیٹیں"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"ٹاسک بار دکھانے کے لیے آہستہ سے اوپر سوائپ کریں"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"ہمیشہ ٹاسک بار دکھائیں"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"نیویگیشن موڈ تبدیل کریں"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"ٹاسک بار ڈیوائیڈر"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"دیگر حالیہ ایپس"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"ٹاسک بار اوورفلو"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"اوپر/بائیں طرف منتقل کریں"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"نیچے/دائیں طرف منتقل کریں"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"ایپ کو بطور ببل کھولیں"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"\'بند کریں\' بٹن"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"ٹاسک بار میں پن کریں"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"ٹاسک بار سے پن ہٹائیں"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"کھسکائیں"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"بند کریں"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"تصویر کو کھسکائیں"</string> </resources> diff --git a/quickstep/res/values-uz/strings.xml b/quickstep/res/values-uz/strings.xml index dcd3ad614a..86fdd5614c 100644 --- a/quickstep/res/values-uz/strings.xml +++ b/quickstep/res/values-uz/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Erkin shakl"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Desktop"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Tashqi displeyga olish"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Tozalash"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Yopish"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Desktop"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Yaqinda ishlatilgan ilovalar yo‘q"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Ilovadan foydalanish sozlamalari"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Hammasini tozalash"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Yangi ish stoli qoʻshish"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Oxirgi ilovalar"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 daqiqa"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Boshiga qaytish uchun tepaga suring"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Bosh ekranga oʻtish uchun bosh ekran tugmasini bosing"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Sizning <xliff:g id="DEVICE">%1$s</xliff:g> xizmatga tayyor"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Qurilmangiz xizmatga tayyor"</string> + <string name="default_device_name" msgid="6660656727127422487">"qurilma"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Tizim navigatsiya sozlamalari"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> qurilmangiz \ntayyor!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Qurilmangiz \ntayyor!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Yangi <xliff:g id="DEVICE">%1$s</xliff:g> qurilmangizdan bahra oling!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Qanday navigatsiya qilishni tanlang"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Tepaga suring"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Asosiy tugmani bosing"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"planshet"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"telefon"</string> <string name="action_share" msgid="2648470652637092375">"Ulashish"</string> <string name="action_screenshot" msgid="8171125848358142917">"Skrinshot"</string> <string name="action_split" msgid="2098009717623550676">"Ajratish"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Ekranni ikkiga ajratish uchun boshqa ilovani tanlang"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Bu amal ilova yoki tashkilotingiz tomonidan taqiqlangan"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Vidjetlar ishlamaydi. Boshqa ilovani tanlang"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Navigatsiya darsi yopilsinmi?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Bu darslar <xliff:g id="NAME">%1$s</xliff:g> ilovasida chiqadi"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Bekor qilish"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Tashlab ketish"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Ekranni burish"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Vazifalar paneli ekranning pastki qismidan qanday koʻrinishini va ishlatilmayotganda avtomatik berkitilishi aks etgan animatsiya"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Vazifalar panelini almashinuv tugmasi yordamida qanday qadashni koʻrsatuvchi animatsiya, shu bois vazifalar paneli ekranning pastki qismida doimiy chiqib turadi"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Ochiq ilova tepasidagi vazifalar panelidan ilovani tortib tashlash orqali qanday ajratilgan ekran yaratish mumkinligi aks etgan animatsiya"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Qurilmangizda tavsiya etilgan ilovalarga qanday kirishni aks ettiruvchi animatsiya"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Amal tugmasini bosib turish va obyekt turgan sohani tanlash orqali ekranda obyektni qanday qidirish aks etgan animatsiya"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Vazifalar paneli qoʻllanmasi"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Bitta ilovani yon tomonga sudrab, bir vaqtda 2 ta ilovadan foydalaning."</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Vazifalar panelini ochish uchun tepaga asta suring"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Vazifalar paneli doim chiqarilsin"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Navigatsiya rejimini oʻzgartirish"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Vazifalar panelini ajratkich"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Boshqa oxirgi ilovalar"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Vazifalar panelini kengaytirish"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Yuqoriga yoki chapga oʻtkazish"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Pastga yoki oʻngga oʻtkazish"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Ilovani qalqib chiquvchi oynada ochish"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Yopish tugmasi"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Panelga qadash"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Vazifalar panelidan yechib olish"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Eslatma"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Yopish"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Eslatma rasmi"</string> </resources> diff --git a/quickstep/res/values-vi/strings.xml b/quickstep/res/values-vi/strings.xml index 6c96ea54f9..26b37702ea 100644 --- a/quickstep/res/values-vi/strings.xml +++ b/quickstep/res/values-vi/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"Dạng tự do"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Máy tính"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Chuyển sang màn hình ngoài"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Xoá"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Đóng"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Máy tính"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Không có mục gần đây nào"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Cài đặt mức sử dụng ứng dụng"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Xóa tất cả"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Thêm không gian làm việc mới"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Ứng dụng gần đây"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 phút"</string> @@ -48,9 +47,9 @@ <string name="hotsaet_tip_prediction_enabled" msgid="2233554377501347650">"Đã bật tính năng Ứng dụng đề xuất"</string> <string name="hotsaet_tip_prediction_disabled" msgid="1506426298884658491">"Tính năng Ứng dụng đề xuất bị tắt"</string> <string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Ứng dụng dự đoán: <xliff:g id="TITLE">%1$s</xliff:g>"</string> - <string name="gesture_tutorial_title" msgid="2750751261768388354">"Hướng dẫn thực hiện điều hướng bằng cử chỉ"</string> + <string name="gesture_tutorial_title" msgid="2750751261768388354">"Hướng dẫn thực hiện thao tác bằng cử chỉ"</string> <string name="gesture_tutorial_rotation_prompt_title" msgid="7537946781362766964">"Xoay thiết bị của bạn"</string> - <string name="gesture_tutorial_rotation_prompt" msgid="1664493449851960691">"Vui lòng xoay thiết bị của bạn để hoàn tất hướng dẫn điều hướng bằng cử chỉ"</string> + <string name="gesture_tutorial_rotation_prompt" msgid="1664493449851960691">"Vui lòng xoay thiết bị của bạn để hoàn tất hướng dẫn thao tác bằng cử chỉ"</string> <string name="back_gesture_feedback_swipe_too_far_from_edge" msgid="4175100312909721217">"Hãy vuốt từ mép ngoài cùng bên phải hoặc ngoài cùng bên trái"</string> <string name="back_gesture_feedback_cancelled" msgid="762621530959111290">"Hãy vuốt từ mép phải hoặc mép trái tới giữa màn hình rồi nhấc ngón tay ra"</string> <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Bạn đã học được cách vuốt từ mép phải để quay lại. Tiếp theo, hãy tìm hiểu cách chuyển đổi ứng dụng."</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Vuốt lên để chuyển đến màn hình chính"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Nhấn vào nút màn hình chính để chuyển đến màn hình chính"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Bạn có thể bắt đầu sử dụng <xliff:g id="DEVICE">%1$s</xliff:g>"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Bạn có thể bắt đầu sử dụng thiết bị của mình"</string> - <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Cài đặt cách điều hướng trên hệ thống"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"<xliff:g id="DEVICE">%1$s</xliff:g> của bạn đã \nsẵn sàng!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Thiết bị của bạn đã \nsẵn sàng!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Hãy trải nghiệm <xliff:g id="DEVICE">%1$s</xliff:g> mới của bạn!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Chọn cách thao tác"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Vuốt lên"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Nhấn vào nút màn hình chính"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"máy tính bảng"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"điện thoại"</string> + <string name="default_device_name" msgid="6660656727127422487">"thiết bị"</string> + <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Cài đặt cách thao tác trên hệ thống"</annotation></string> <string name="action_share" msgid="2648470652637092375">"Chia sẻ"</string> <string name="action_screenshot" msgid="8171125848358142917">"Chụp ảnh màn hình"</string> <string name="action_split" msgid="2098009717623550676">"Chia đôi màn hình"</string> @@ -113,18 +104,17 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Chọn một ứng dụng khác để dùng chế độ chia đôi màn hình"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Ứng dụng hoặc tổ chức của bạn không cho phép thực hiện hành động này"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Các tiện ích hiện không được hỗ trợ, vui lòng chọn một ứng dụng khác"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Bỏ qua phần hướng dẫn thao tác?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Bạn có thể tìm lại phần hướng dẫn này trong ứng dụng <xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Hủy"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Bỏ qua"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Xoay màn hình"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Ảnh động minh hoạ cách thanh tác vụ xuất hiện từ cuối màn hình và tự động ẩn khi người dùng không sử dụng"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Ảnh động minh hoạ cách ghim thanh tác vụ bằng nút bật/tắt để thanh tác vụ luôn hiển thị ở cuối màn hình"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Ảnh động minh hoạ cách tạo chế độ chia đôi màn hình bằng cách kéo và thả một ứng dụng từ thanh tác vụ lên trên một ứng dụng đang mở"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Ảnh động minh hoạ cách truy cập vào các ứng dụng được đề xuất trên thiết bị của bạn"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Ảnh động minh hoạ cách tìm một mục trên màn hình bằng cách chạm và giữ phím hành động rồi chọn khu vực có mục đó"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Cách sử dụng thanh tác vụ"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Kéo một ứng dụng sang bên để dùng 2 ứng dụng cùng lúc"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Từ từ vuốt lên để Thanh tác vụ xuất hiện"</string> <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"Nhận ứng dụng đề xuất dựa trên thói quen của bạn"</string> <string name="taskbar_edu_pinning" msgid="6708550858580071558">"Nhấn và giữ trên đường phân chia để ghim Thanh tác vụ"</string> - <string name="taskbar_edu_features" msgid="3320337287472848162">"Tăng năng suất qua Thanh tác vụ"</string> + <string name="taskbar_edu_features" msgid="3320337287472848162">"Làm nhiều việc hơn qua Thanh tác vụ"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"Luôn hiện Taskbar"</string> <string name="taskbar_edu_pinning_standalone" msgid="2636919474366410467">"Để luôn hiện Taskbar ở cuối màn hình, hãy nhấn và giữ đường phân chia"</string> <string name="taskbar_search_edu_title" msgid="5569194922234364530">"Chạm và giữ phím hành động để tìm nội dung trên màn hình của bạn"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Luôn hiện Thanh tác vụ"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Thay đổi chế độ điều hướng"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Đường phân chia Taskbar"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Các ứng dụng khác gần đây"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Trình đơn mục bổ sung trên thanh tác vụ"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Chuyển lên trên cùng/sang bên trái"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Chuyển xuống dưới cùng/sang bên phải"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Mở ứng dụng dưới dạng bong bóng"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Nút đóng"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Ghim vào thanh tác vụ"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Bỏ ghim khỏi thanh tác vụ"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Dịch chuyển"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Đóng"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Dịch chuyển hình ảnh"</string> </resources> diff --git a/quickstep/res/values-zh-rCN/strings.xml b/quickstep/res/values-zh-rCN/strings.xml index d8f5247402..21c212f88c 100644 --- a/quickstep/res/values-zh-rCN/strings.xml +++ b/quickstep/res/values-zh-rCN/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"自由窗口"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"桌面"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"移至外接显示屏"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"清除"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"关闭"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"桌面设备"</string> <string name="recents_empty_message" msgid="7040467240571714191">"近期没有任何内容"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"应用使用设置"</string> <string name="recents_clear_all" msgid="5328176793634888831">"全部清除"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"添加新桌面"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"最近用过的应用"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>(<xliff:g id="REMAINING_TIME">%2$s</xliff:g>)"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"不到 1 分钟"</string> @@ -92,20 +91,12 @@ <string name="allset_hint" msgid="459504134589971527">"向上滑动可前往主屏幕"</string> <string name="allset_button_hint" msgid="2395219947744706291">"点按主屏幕按钮即可前往主屏幕"</string> <string name="allset_description_generic" msgid="5385500062202019855">"您可以开始使用<xliff:g id="DEVICE">%1$s</xliff:g>了"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"您可以开始使用自己的设备了"</string> + <string name="default_device_name" msgid="6660656727127422487">"设备"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"系统导航设置"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"您的 <xliff:g id="DEVICE">%1$s</xliff:g>\n已设置完毕!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"您的设备\n已设置完毕!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"尽情享用新的<xliff:g id="DEVICE">%1$s</xliff:g>吧!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"选择导航方式"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"向上滑动"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"点按主屏幕按钮"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"平板电脑"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"手机"</string> <string name="action_share" msgid="2648470652637092375">"分享"</string> <string name="action_screenshot" msgid="8171125848358142917">"屏幕截图"</string> <string name="action_split" msgid="2098009717623550676">"分屏"</string> - <string name="action_save_app_pair" msgid="5974823919237645229">"保存应用对"</string> + <string name="action_save_app_pair" msgid="5974823919237645229">"保存应用组合"</string> <string name="toast_split_select_app" msgid="8464310533320556058">"点按另一个应用即可使用分屏"</string> <string name="toast_contextual_split_select_app" msgid="433510957123687090">"另外选择一个应用才可使用分屏模式"</string> <string name="toast_split_select_app_cancel" msgid="1939025102486630426">"取消"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"另外选择一个应用才可使用分屏模式"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"该应用或您所在的单位不允许执行此操作"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"目前不支持微件,请选择其他应用"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"要跳过导航教程吗?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"您之后可以在“<xliff:g id="NAME">%1$s</xliff:g>”应用中找到此教程"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"取消"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"跳过"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"旋转屏幕"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"该动画展示了任务栏如何显示在屏幕底部,以及如何在不使用时自动隐藏"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"该动画展示了如何使用切换开关固定任务栏,让任务栏始终显示在屏幕底部"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"该动画展示了如何通过将应用从任务栏拖放到打开的应用的上方,来创建分屏"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"该动画展示了如何在设备上访问推荐的应用"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"该动画展示了如何通过轻触并按住快捷操作按键并选择相应内容所在的区域,在界面中搜索相应内容"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"任务栏教程"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"将一个应用拖到一侧,即可同时使用两个应用"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"缓慢上滑即可显示任务栏"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"始终显示任务栏"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"更改导航模式"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"任务栏分隔线"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"最近用过的其他应用"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"任务栏溢出图标"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"移到顶部/左侧"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"移到底部/右侧"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"以气泡的形式打开应用"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"“关闭”按钮"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"固定到任务栏"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"从任务栏取消固定"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"智能推送"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"关闭"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"智能推送图片"</string> </resources> diff --git a/quickstep/res/values-zh-rHK/strings.xml b/quickstep/res/values-zh-rHK/strings.xml index dae18618d6..34f8aacb49 100644 --- a/quickstep/res/values-zh-rHK/strings.xml +++ b/quickstep/res/values-zh-rHK/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"自由形式"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"桌面"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"移至外部顯示屏"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"清除"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"關閉"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"桌面"</string> <string name="recents_empty_message" msgid="7040467240571714191">"最近沒有任何項目"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"應用程式使用情況設定"</string> <string name="recents_clear_all" msgid="5328176793634888831">"全部清除"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"新增桌面"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"最近使用的應用程式"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>,<xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"少於 1 分鐘"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"向上滑動即可前往主畫面"</string> <string name="allset_button_hint" msgid="2395219947744706291">"輕按主按鈕即可前往主畫面"</string> <string name="allset_description_generic" msgid="5385500062202019855">"你可以開始使用<xliff:g id="DEVICE">%1$s</xliff:g>了"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"你現在可以開始使用裝置"</string> + <string name="default_device_name" msgid="6660656727127422487">"裝置"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"系統導覽設定"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"你的<xliff:g id="DEVICE">%1$s</xliff:g>\n已準備就緒!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"你的裝置\n已準備就緒!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"盡情享用新<xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"選擇導覽方式"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"向上滑動"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"輕按主按鈕"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"平板電腦"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"手機"</string> <string name="action_share" msgid="2648470652637092375">"分享"</string> <string name="action_screenshot" msgid="8171125848358142917">"螢幕截圖"</string> <string name="action_split" msgid="2098009717623550676">"分割"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"選擇其他應用程式才能使用分割螢幕"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"應用程式或你的機構不允許此操作"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"目前不支援小工具,請選取其他應用程式"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"要略過手勢操作教學課程嗎?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"你之後可以在「<xliff:g id="NAME">%1$s</xliff:g>」應用程式找到這些說明"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"取消"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"略過"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"旋轉螢幕"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"動畫顯示如何讓螢幕底部顯示工作列,並在閒置時自動隱藏"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"動畫顯示如何使用切換按鈕固定工作列,讓工作列在螢幕底部永久顯示"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"動畫顯示如何建立分割畫面,方法是從工作列拖曳應用程式,並放在已開啟應用程式的上方"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"動畫顯示如何在裝置上存取建議的應用程式"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"動畫顯示如何在畫面上搜尋項目,方法是按住快捷操作鍵,並選取項目所在區域"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"工作列教學"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"將應用程式拖曳到一邊,同時使用兩個應用程式"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"慢慢向上掃即可顯示工作列"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"一律顯示工作列"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"變更導覽模式"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"工作列分隔線"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"其他最近使用的應用程式"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"工作列溢位"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"移至上方/左側"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"移至底部/右側"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"在小視窗開啟應用程式"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"關閉按鈕"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"固定至工作列"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"取消固定至工作列"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"提醒"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"閂"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"提醒圖片"</string> </resources> diff --git a/quickstep/res/values-zh-rTW/strings.xml b/quickstep/res/values-zh-rTW/strings.xml index 4123edf30f..5244b05d48 100644 --- a/quickstep/res/values-zh-rTW/strings.xml +++ b/quickstep/res/values-zh-rTW/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"自由形式"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"電腦模式"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"移至外接螢幕"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"清除"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"關閉"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"電腦模式"</string> <string name="recents_empty_message" msgid="7040467240571714191">"最近沒有任何項目"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"應用程式使用情況設定"</string> <string name="recents_clear_all" msgid="5328176793634888831">"全部清除"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"新增桌面"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"最近使用的應用程式"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g> (<xliff:g id="REMAINING_TIME">%2$s</xliff:g>)"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 分鐘"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"向上滑動即可前往主畫面"</string> <string name="allset_button_hint" msgid="2395219947744706291">"輕觸主畫面按鈕即可前往主畫面"</string> <string name="allset_description_generic" msgid="5385500062202019855">"你可以開始使用「<xliff:g id="DEVICE">%1$s</xliff:g>」了"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"你可以開始使用裝置了"</string> + <string name="default_device_name" msgid="6660656727127422487">"裝置"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"系統操作機制設定"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"你的 <xliff:g id="DEVICE">%1$s</xliff:g>\n已準備就緒!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"你的裝置\n已準備就緒!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"盡情享受全新<xliff:g id="DEVICE">%1$s</xliff:g>!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"選擇瀏覽方式"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"向上滑動"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"輕觸主畫面按鈕"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"平板電腦"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"手機"</string> <string name="action_share" msgid="2648470652637092375">"分享"</string> <string name="action_screenshot" msgid="8171125848358142917">"螢幕截圖"</string> <string name="action_split" msgid="2098009717623550676">"分割"</string> @@ -113,16 +104,15 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"必須選擇另一個應用程式才能使用分割畫面"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"這個應用程式或貴機構不允許執行這個動作"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"目前不支援小工具,請選取其他應用程式"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"要略過手勢操作教學課程嗎?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"你之後可以在「<xliff:g id="NAME">%1$s</xliff:g>」應用程式找到這些說明"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"取消"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"略過"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"旋轉螢幕"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"這個動畫說明如何讓螢幕底部顯示工作列,並在閒置時自動隱藏"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"這個動畫說明如何使用切換鈕固定工作列,讓工作列永久顯示在螢幕底部"</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"這個動畫說明如何建立分割畫面,方法是從工作列拖曳應用程式,並放在已開啟應用程式的上方"</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"這個動畫說明如何在裝置上存取建議的應用程式"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"這個動畫說明如何在畫面上搜尋項目,方法是按住快捷操作鍵,並選取項目所在區域"</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"工作列教學課程"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"將應用程式拖曳到一邊即可同時使用 2 個應用程式"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"緩慢向上滑動讓工作列顯示在畫面上"</string> - <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"系統會根據你的日常安排,提供建議的應用程式。"</string> + <string name="taskbar_edu_suggestions" msgid="8215044496435527982">"根據你的日常安排建議應用程式"</string> <string name="taskbar_edu_pinning" msgid="6708550858580071558">"長按分隔線即可固定工作列"</string> <string name="taskbar_edu_features" msgid="3320337287472848162">"充分發揮工作列的功用"</string> <string name="taskbar_edu_pinning_title" msgid="210102174154211712">"一律顯示工作列"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"一律顯示工作列"</string> <string name="change_navigation_mode" msgid="9088393078736808968">"變更操作模式"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"工作列分隔線"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"最近曾使用的其他應用程式"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"工作列溢位"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"移到上方/左側"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"移到底部/右側"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"以泡泡形式開啟應用程式"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"關閉按鈕"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"固定到工作列"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"從工作列中取消固定"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"提醒"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"關閉"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"提醒圖片"</string> </resources> diff --git a/quickstep/res/values-zu/strings.xml b/quickstep/res/values-zu/strings.xml index 910a2b3430..a81fe25676 100644 --- a/quickstep/res/values-zu/strings.xml +++ b/quickstep/res/values-zu/strings.xml @@ -23,12 +23,11 @@ <string name="recent_task_option_freeform" msgid="48863056265284071">"I-Freeform"</string> <string name="recent_task_option_desktop" msgid="8280879717125435668">"Ideskithophu"</string> <string name="recent_task_option_external_display" msgid="4533840664313389484">"Hambisa esibonisini sangaphandle"</string> - <string name="recent_task_option_remove_task" msgid="803559928027541555">"Sula"</string> + <string name="recent_task_option_close" msgid="942942499021777264">"Vala"</string> <string name="recent_task_desktop" msgid="8081113562549637334">"Ideskithophu"</string> <string name="recents_empty_message" msgid="7040467240571714191">"Azikho izinto zakamuva"</string> <string name="accessibility_app_usage_settings" msgid="6312864233673544149">"Izilungiselelo zokusetshenziswa kohlelo lokusebenza"</string> <string name="recents_clear_all" msgid="5328176793634888831">"Sula konke"</string> - <string name="add_desk_button_content_description" msgid="5866025518368823735">"Faka ideski elisha"</string> <string name="accessibility_recent_apps" msgid="4058661986695117371">"Izinhlelo zokusebenza zakamuva"</string> <string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>, <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string> <string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"&lt; 1 iminithi"</string> @@ -92,16 +91,8 @@ <string name="allset_hint" msgid="459504134589971527">"Swayiphela phezulu ukuze uye ekhaya"</string> <string name="allset_button_hint" msgid="2395219947744706291">"Thepha inkinobho yasekhaya ukuze uye kusikrini sasekhaya"</string> <string name="allset_description_generic" msgid="5385500062202019855">"Usulungele ukuqala ukusebenzisa i-<xliff:g id="DEVICE">%1$s</xliff:g> yakho"</string> - <string name="allset_description_fallback" msgid="2488751930355201578">"Usulungele ukuqala ukusebenzisa idivayisi yakho"</string> + <string name="default_device_name" msgid="6660656727127422487">"idivayisi"</string> <string name="allset_navigation_settings" msgid="4713404605961476027"><annotation id="link">"Amasethingi wokuzulazula isistimu"</annotation></string> - <string name="allset_title_expressive" msgid="474399969304146994">"I-<xliff:g id="DEVICE">%1$s</xliff:g> yakho \nisilungile!"</string> - <string name="allset_title_expressive_fallback" msgid="2829102990606405239">"Idivayisi yakho \nisilungile!"</string> - <string name="allset_subtitle_expressive" msgid="419688197551192358">"Jabulela i-<xliff:g id="DEVICE">%1$s</xliff:g> yakho entsha!"</string> - <string name="allset_navigation_settings_expressive" msgid="3745595273748356"><annotation id="link">"Khetha ukuthi uzofuna kanjani"</annotation></string> - <string name="allset_hint_expressive" msgid="756856423510976261">"Swayiphela phezulu"</string> - <string name="allset_button_hint_expressive" msgid="667643693410494225">"Thepha inkinobho yasekhaya"</string> - <string name="allset_device_type_tablet" msgid="2173392009787325894">"ithebhulethi"</string> - <string name="allset_device_type_phone" msgid="6842334562074507337">"ifoni"</string> <string name="action_share" msgid="2648470652637092375">"Yabelana"</string> <string name="action_screenshot" msgid="8171125848358142917">"Isithombe-skrini"</string> <string name="action_split" msgid="2098009717623550676">"Hlukanisa"</string> @@ -113,12 +104,11 @@ <string name="toast_split_app_unsupported" msgid="2360229567007828914">"Khetha enye i-app ukuze usebenzise ukuhlukanisa isikrini"</string> <string name="blocked_by_policy" msgid="2071401072261365546">"Lesi senzo asivunyelwanga uhlelo lokusebenza noma inhlangano yakho"</string> <string name="split_widgets_not_supported" msgid="1355743038053053866">"Amawijethi awasekelwe okwamanje, sicela ukhethe enye i-app"</string> + <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Yeqa isifundo sokuzulazula?"</string> + <string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Lokhu ungakuthola kamuva ku-app ye-<xliff:g id="NAME">%1$s</xliff:g>"</string> + <string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"Khansela"</string> + <string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Yeqa"</string> <string name="accessibility_rotate_button" msgid="4771825231336502943">"Zungezisa isikrini"</string> - <string name="taskbar_edu_swipe_animation_description" msgid="1690727240826006218">"Upopayi obonisa ukuthi i-taskbar ivela kanjani phansi esikrinini, iphinde izifihle ngokuzenzakalelayo lapho ingasetshenziswa"</string> - <string name="taskbar_edu_pinning_animation_description" msgid="8148601093590683880">"Upopayi obonisa indlela yokuphina i-taskbar yakho usebenzisa ukuguqula, ukuze i-taskbar ihlale ibonakala unomphela phansi esikrinini."</string> - <string name="taskbar_edu_split_screen_animation_description" msgid="371796444988899166">"Upopayi obonisa ukuthi ungasakha kanjani isikrini esihlukanisayo, ngokuhudula nokudedela i-app ku-taskbar phezu kwe-app evuliwe."</string> - <string name="taskbar_edu_suggested_app_animation_description" msgid="3443453246478079085">"Upopayi obonisa indlela yokufinyelela ama-app aphakanyisiwe kudivayisi yakho"</string> - <string name="taskbar_edu_suggested_search_animation_description" msgid="1874284242557104818">"Upopayi obonisa indlela yokusesha into esikrinini, ngokuthinta uphinde ubambe inkinobho yokufinyelela nokukhetha indawo into ekuyo."</string> <string name="taskbar_edu_a11y_title" msgid="5417986057866415355">"Imfundo ye-taskbar"</string> <string name="taskbar_edu_splitscreen" msgid="5605512479258053350">"Hudula i-app ukusebenzisa ama-app ama-2 ngesikhathi esisodwa"</string> <string name="taskbar_edu_stashing" msgid="5645461372669217294">"Swayiphela phezulu kancane ukuze ubonise i-Taskbar"</string> @@ -146,7 +136,7 @@ <string name="always_show_taskbar" msgid="3608801276107751229">"Bonisa i-Taskbar njalo."</string> <string name="change_navigation_mode" msgid="9088393078736808968">"Shintsha imodi yokufuna"</string> <string name="taskbar_divider_a11y_title" msgid="6608690309720242080">"Isihlukanisi se-Taskbar"</string> - <string name="taskbar_overflow_a11y_title" msgid="8114045167370723746">"Amanye ama-app akamuva"</string> + <string name="taskbar_overflow_a11y_title" msgid="7960342079198820179">"Ukuphuphuma Kwetaskbar"</string> <string name="move_drop_target_top_or_left" msgid="2988702185049595807">"Hamba phezulu/kwesokunxele"</string> <string name="move_drop_target_bottom_or_right" msgid="5431393418797620162">"Hamba phansi/kwesokudla"</string> <string name="open_app_as_a_bubble" msgid="6642626287247807473">"Vula i-app njengebhamuza"</string> @@ -173,7 +163,4 @@ <string name="header_close_icon_description" msgid="5400033616675911319">"Inkinobho yokuvala"</string> <string name="pin_to_taskbar" msgid="6607778046321626950">"Phina kutaskbar"</string> <string name="unpin_from_taskbar" msgid="2178811773165572676">"Susa ukuphina i-taskbar"</string> - <string name="nudge_a11y_title" msgid="2126529303123687912">"Isikhumbuzo"</string> - <string name="nudge_a11y_close" msgid="4513937143817625570">"Vala"</string> - <string name="nudge_a11y_image" msgid="117910310515857252">"Gudluza isithombe"</string> </resources> diff --git a/quickstep/res/values/attrs.xml b/quickstep/res/values/attrs.xml index 46def35349..28c0d5c9e8 100644 --- a/quickstep/res/values/attrs.xml +++ b/quickstep/res/values/attrs.xml @@ -31,15 +31,6 @@ <attr name="focusBorderRadius" format="dimension" /> </declare-styleable> - <declare-styleable name="TaskContentView"> - <!-- - Border color for a focused or hovered TaskContentView. This is used when the - TaskContentView is used for a desktop task. - --> - <attr name="focusBorderColor"/> - <attr name="hoverBorderColor"/> - </declare-styleable> - <declare-styleable name="ClearAllButton"> <!-- focus border color for overview clear all button views --> <attr name="focusBorderColor" /> @@ -50,11 +41,6 @@ <attr name="focusBorderColor" /> </declare-styleable> - <declare-styleable name="IconAppChip"> - <!-- focus border color for overview app chip --> - <attr name="focusBorderColor" /> - </declare-styleable> - <!-- Gesture nav edu specific attributes. These attributes are used to customize Gesture nav edu view lottie animation colors in XML files. diff --git a/quickstep/res/values/colors.xml b/quickstep/res/values/colors.xml index 91d585acbc..42c0478b9f 100644 --- a/quickstep/res/values/colors.xml +++ b/quickstep/res/values/colors.xml @@ -13,7 +13,7 @@ See the License for the specific language governing permissions and limitations under the License. --> -<resources xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"> +<resources> <color name="chip_hint_foreground_color">#fff</color> <color name="chip_scrim_start_color">#39000000</color> @@ -94,9 +94,4 @@ <!-- Turn on work apps button --> <color name="work_turn_on_stroke">@color/materialColorPrimary</color> - - <color name="nudge_pill_color1">#4285F4</color> - <color name="nudge_pill_color2">#7430E2</color> - <color name="nudge_pill_color3">#2A7EC8</color> - <color name="nudge_pill_color4">#2DB8BD</color> -</resources> +</resources> \ No newline at end of file diff --git a/quickstep/res/values/config.xml b/quickstep/res/values/config.xml index f20d15c786..49cee0fa86 100644 --- a/quickstep/res/values/config.xml +++ b/quickstep/res/values/config.xml @@ -21,10 +21,17 @@ <item>com.android.launcher3/com.android.quickstep.interaction.GestureSandboxActivity</item> </string-array> + <string name="stats_log_manager_class" translatable="false">com.android.quickstep.logging.StatsLogCompatManager</string> <string name="test_information_handler_class" translatable="false">com.android.quickstep.QuickstepTestInformationHandler</string> + <string name="instant_app_resolver_class" translatable="false">com.android.quickstep.InstantAppResolverImpl</string> + <string name="app_launch_tracker_class" translatable="false">com.android.launcher3.appprediction.PredictionAppTracker</string> <string name="main_process_initializer_class" translatable="false">com.android.quickstep.QuickstepProcessInitializer</string> - <string name="secondary_display_quickstep_delegate_class" translatable="false">com.android.launcher3.secondarydisplay.SecondaryDisplayQuickstepDelegateImpl</string> + <string name="secondary_display_predictions_class" translatable="false">com.android.launcher3.secondarydisplay.SecondaryDisplayPredictionsImpl</string> + <string name="taskbar_model_callbacks_factory_class" translatable="false">com.android.launcher3.taskbar.TaskbarModelCallbacksFactory</string> + <string name="taskbar_view_callbacks_factory_class" translatable="false">com.android.launcher3.taskbar.TaskbarViewCallbacksFactory</string> + <string name="launcher_restore_event_logger_class" translatable="false">com.android.quickstep.LauncherRestoreEventLoggerImpl</string> <string name="taskbar_edu_tooltip_controller_class" translatable="false">com.android.launcher3.taskbar.TaskbarEduTooltipController</string> + <string name="nav_handle_long_press_handler_class" translatable="false"></string> <!-- The number of thumbnails and icons to keep in the cache. The thumbnail cache size also determines how many thumbnails will be fetched in the background. --> @@ -39,7 +46,7 @@ <string name="wellbeing_provider_pkg" translatable="false"/> <integer name="max_depth_blur_radius">23</integer> - <dimen name="max_depth_blur_radius_enhanced">30dp</dimen> + <dimen name="max_depth_blur_radius_enhanced">34dp</dimen> <!-- If predicted widgets from prediction service are less than this number, additional eligible widgets may be added locally by launcher. When set to 0, no widgets will be added @@ -60,12 +67,4 @@ <!-- This is a float because it is converted to dp later in DeviceProfile --> <item name="taskbar_icon_size" type="dimen" format="float">44</item> - - <!-- Expressive Dismiss --> - <item name="expressive_dismiss_task_trans_y_damping_ratio" type="dimen" format="float">0.65</item> - <item name="expressive_dismiss_task_trans_y_stiffness" type="dimen" format="float">850</item> - <item name="expressive_dismiss_task_trans_x_damping_ratio" type="dimen" format="float">0.8</item> - <item name="expressive_dismiss_task_trans_x_stiffness" type="dimen" format="float">2800</item> - <item name="expressive_dismiss_effects_damping_ratio" type="dimen" format="float">1</item> - <item name="expressive_dismiss_effects_stiffness" type="dimen" format="float">1600</item> </resources> diff --git a/quickstep/res/values/dimens.xml b/quickstep/res/values/dimens.xml index 317e5b5e13..86d44c978a 100644 --- a/quickstep/res/values/dimens.xml +++ b/quickstep/res/values/dimens.xml @@ -21,7 +21,7 @@ <dimen name="task_corner_radius_override">-1dp</dimen> <!-- Task Menu View --> - <dimen name="task_menu_corner_radius">26dp</dimen> + <dimen name="task_menu_corner_radius">22dp</dimen> <dimen name="task_menu_item_corner_radius">4dp</dimen> <dimen name="task_menu_spacing">2dp</dimen> <dimen name="task_menu_width_grid">216dp</dimen> @@ -66,8 +66,6 @@ <dimen name="task_thumbnail_icon_menu_background_margin_top_start">8dp</dimen> <!-- The margin between the app name + app icon and app name + arrow icon when collapsed --> <dimen name="task_thumbnail_icon_menu_app_name_margin_horizontal_collapsed">8dp</dimen> - <!-- The margin between the app name + app icon and app name + arrow icon when expanded --> - <dimen name="task_thumbnail_icon_menu_app_name_margin_horizontal_expanded">12dp</dimen> <!-- The gap at the top of the task icon menu when expanded --> <dimen name="task_thumbnail_icon_menu_expanded_gap">2dp</dimen> <!-- The margin at the start of the task icon view in the icon menu --> @@ -83,32 +81,15 @@ <!-- The size of the icon menu's icon touch target --> <dimen name="task_thumbnail_icon_menu_drawable_touch_size">44dp</dimen> <dimen name="task_thumbnail_icon_menu_elevation">4dp</dimen> - <dimen name="app_chip_round_corner_radius">28dp</dimen> - <!-- The size of the text fading horizontally --> - <dimen name="task_thumbnail_icon_menu_text_fading_size">20dp</dimen> <!-- The size of the task thumbnail header --> - <dimen name="task_thumbnail_header_padding_top_bottom">6dp</dimen> - <dimen name="task_thumbnail_header_padding_start_end">12dp</dimen> - <dimen name="task_thumbnail_header_margin_between_views">8dp</dimen> + <dimen name="task_thumbnail_header_height">30dp</dimen> + <dimen name="task_thumbnail_header_margin_edge">18dp</dimen> + <dimen name="task_thumbnail_header_margin_between_views">9dp</dimen> <dimen name="task_thumbnail_header_icon_size">18dp</dimen> - <dimen name="task_header_close_button_size">20dp</dimen> - <dimen name="task_thumbnail_header_close_button_hit_rect_size">32dp</dimen> <dimen name="task_thumbnail_header_round_corner_radius">16dp</dimen> - <!-- The size for non-overlapping layout in desktop tile --> - <dimen name="desktop_vertical_padding_between_tasks">24dp</dimen> - <dimen name="desktop_horizontal_padding_between_tasks">24dp</dimen> - <dimen name="desktop_top_bottom_margin_one_row">72dp</dimen> - <dimen name="desktop_left_right_margin_one_row">72dp</dimen> - <dimen name="desktop_top_margin_multi_rows">72dp</dimen> - <dimen name="desktop_bottom_margin_multi_rows">24dp</dimen> - <dimen name="desktop_left_right_margin_multi_rows">24dp</dimen> - <!-- The length of the fading edge (gradient) of the task header title --> - <dimen name="task_header_title_fading_edge_length">28dp</dimen> <!-- How much a task being dragged for dismissal can undershoot the origin when dragged back to its start position. --> <dimen name="task_dismiss_max_undershoot">25dp</dimen> - <!-- How much a task should be dragged from the origin before it detaches (or reattaches). --> - <dimen name="task_dismiss_detach_threshold">72dp</dimen> <dimen name="task_icon_cache_default_icon_size">72dp</dimen> <item name="overview_modal_max_scale" format="float" type="dimen">1.1</item> @@ -116,10 +97,7 @@ <!-- Overrideable in overlay that provides the Overview Actions. --> <dimen name="overview_actions_top_margin">24dp</dimen> <dimen name="overview_actions_height">48dp</dimen> - <dimen name="overview_actions_button_spacing">16dp</dimen> - <dimen name="overview_actions_button_radius">28dp</dimen> - <dimen name="overview_actions_button_vertical_padding">10dp</dimen> - <dimen name="overview_actions_button_horizontal_padding">16dp</dimen> + <dimen name="overview_actions_button_spacing">36dp</dimen> <!-- These speeds are in dp/s --> <dimen name="max_task_dismiss_drag_velocity">2.25dp</dimen> @@ -135,9 +113,6 @@ <dimen name="add_desktop_button_size">56dp</dimen> <dimen name="add_desktop_button_outline_padding">2dp</dimen> - <!-- Recents App Chip --> - <dimen name="app_chip_keyboard_border_width">3dp</dimen> - <!-- The speed in dp/s at which the user needs to be scrolling in recents such that we start loading full resolution screenshots. --> <dimen name="recents_fast_fling_velocity">600dp</dimen> @@ -157,7 +132,7 @@ <dimen name="quick_switch_scaling_scroll_threshold">100dp</dimen> - <dimen name="recents_empty_message_text_size">14sp</dimen> + <dimen name="recents_empty_message_text_size">16sp</dimen> <dimen name="recents_empty_message_text_padding">16dp</dimen> <dimen name="max_shadow_radius">0dp</dimen> @@ -218,8 +193,6 @@ <dimen name="gesture_tutorial_menu_done_button_spacing">72dp</dimen> <dimen name="gesture_tutorial_done_button_bottom_margin">40dp</dimen> <dimen name="gesture_tutorial_done_button_end_margin">24dp</dimen> - <dimen name="gesture_tutorial_done_button_width">142dp</dimen> - <dimen name="gesture_tutorial_done_button_padding">16dp</dimen> <!-- Gesture Tutorial mock conversations --> <dimen name="gesture_tutorial_message_icon_size">44dp</dimen> @@ -307,7 +280,6 @@ <dimen name="allset_page_padding_horizontal">40dp</dimen> <dimen name="allset_page_allset_text_size">36sp</dimen> <dimen name="allset_page_swipe_up_text_size">14sp</dimen> - <dimen name="allset_page_swipe_up_text_size_expressive">16sp</dimen> <dimen name="allset_title_margin_top">24dp</dimen> <dimen name="allset_title_icon_margin_top">32dp</dimen> @@ -381,9 +353,6 @@ <dimen name="taskbar_stashed_small_screen">108dp</dimen> <dimen name="taskbar_unstash_input_area">316dp</dimen> <dimen name="taskbar_stashed_handle_height">4dp</dimen> - <dimen name="taskbar_nudge_pill_height">24dp</dimen> - <dimen name="taskbar_nudge_pill_width">108dp</dimen> - <dimen name="taskbar_nudge_glow_radius_percent">200%</dimen> <dimen name="taskbar_stashed_screen_edge_hover_deadzone_height">10dp</dimen> <dimen name="taskbar_stashed_below_hover_deadzone_height">1dp</dimen> <dimen name="taskbar_edu_horizontal_margin">112dp</dimen> @@ -394,7 +363,7 @@ <dimen name="taskbar_home_button_left_margin_kids">48dp</dimen> <dimen name="taskbar_icon_size_kids">32dp</dimen> <dimen name="taskbar_all_apps_search_button_translation_x_offset">6dp</dimen> - <dimen name="taskbar_all_apps_search_button_translation_x_offset_for_expressive_theme">0dp</dimen> + <dimen name="taskbar_all_apps_search_button_translation_x_offset_for_expressive_theme">5.5dp</dimen> <dimen name="taskbar_contextual_button_suw_margin">64dp</dimen> <dimen name="taskbar_contextual_button_suw_height">64dp</dimen> <dimen name="taskbar_back_button_suw_start_margin">48dp</dimen> @@ -403,9 +372,6 @@ <dimen name="taskbar_running_app_indicator_height">2dp</dimen> <dimen name="taskbar_running_app_indicator_width">12dp</dimen> <dimen name="taskbar_running_app_indicator_top_margin">4dp</dimen> - <dimen name="taskbar_minimized_app_indicator_width">6dp</dimen> - <dimen name="taskbar_line_indicator_width_spring">20dp</dimen> - <dimen name="taskbar_app_translate_y_spring">4dp</dimen> <!-- Transient taskbar --> <dimen name="transient_taskbar_padding">12dp</dimen> @@ -416,8 +382,8 @@ <dimen name="transient_taskbar_key_shadow_distance">10dp</dimen> <dimen name="transient_taskbar_stashed_height">32dp</dimen> <dimen name="transient_taskbar_all_apps_button_translation_x_offset">8dp</dimen> + <dimen name="transient_taskbar_all_apps_button_translation_x_offset_for_expressive_theme">8dp</dimen> <dimen name="transient_taskbar_stash_spring_velocity_dp_per_s">400dp</dimen> - <dimen name="transient_taskbar_action_corner_padding">48dp</dimen> <dimen name="taskbar_tooltip_vertical_padding">8dp</dimen> <dimen name="taskbar_tooltip_horizontal_padding">16dp</dimen> <dimen name="taskbar_tooltip_y_offset">4dp</dimen> @@ -517,7 +483,7 @@ <dimen name="bubblebar_dismiss_target_size">@dimen/floating_dismiss_background_size</dimen> <dimen name="bubblebar_dismiss_target_small_size">60dp</dimen> <dimen name="bubblebar_dismiss_target_icon_size">@dimen/floating_dismiss_icon_size</dimen> - <dimen name="bubblebar_dismiss_target_bottom_margin">60dp</dimen> + <dimen name="bubblebar_dismiss_target_bottom_margin">50dp</dimen> <dimen name="bubblebar_dismiss_floating_gradient_height">548dp</dimen> <dimen name="bubblebar_dismiss_zone_width">192dp</dimen> <dimen name="bubblebar_dismiss_zone_height">242dp</dimen> @@ -549,7 +515,6 @@ <!-- Keyboard Quick Switch --> <dimen name="keyboard_quick_switch_border_width">5dp</dimen> <dimen name="keyboard_quick_switch_border_stroke">3dp</dimen> - <dimen name="keyboard_quick_switch_border_padding">2dp</dimen> <dimen name="keyboard_quick_switch_taskview_width">104dp</dimen> <dimen name="keyboard_quick_switch_taskview_height">136dp</dimen> <dimen name="keyboard_quick_switch_taskview_icon_size">52dp</dimen> @@ -576,29 +541,4 @@ <!-- Digital Wellbeing --> <dimen name="digital_wellbeing_toast_height">48dp</dimen> - - <!-- Nudge --> - <dimen name="nudge_elevation">14dp</dimen> - <dimen name="nudge_horizontal_margin">32dp</dimen> - <dimen name="nudge_vertical_margin">24dp</dimen> - - <dimen name="nudge_width">428dp</dimen> - <dimen name="nudge_paddingBottom">16dp</dimen> - <dimen name="nudge_content_elements_spacing">8dp</dimen> - <dimen name="nudge_buttons_margin_top">36dp</dimen> - <dimen name="nudge_buttons_spacing">8dp</dimen> - <dimen name="nudge_button_horizontal_padding">6dp</dimen> - <dimen name="nudge_button_vertical_padding">12dp</dimen> - <dimen name="nudge_enter_y_delta">20dp</dimen> - <dimen name="nudge_exit_y_delta">-10dp</dimen> - - <dimen name="nudge_default_position_side_spacing">16dp</dimen> - - <!-- Add Desktop Button --> - <integer name="add_desktop_button_fade_duration">50</integer> - <integer name="add_desktop_button_fade_delay">33</integer> - <dimen name="newly_created_desktop_offscreen_position">40dp</dimen> - <item name="newly_created_desktop_spring_damping_ratio" format="float" type="dimen">0.8</item> - <item name="newly_created_desktop_spring_stiffness" format="float" type="dimen">380</item> - </resources> diff --git a/quickstep/res/values/ids.xml b/quickstep/res/values/ids.xml index 4cc69ade5a..c71bb762db 100644 --- a/quickstep/res/values/ids.xml +++ b/quickstep/res/values/ids.xml @@ -21,6 +21,4 @@ <item type="id" name="action_dismiss_all" /> <item type="id" name="bubble_bar_flyout_view" /> - <!-- TODO(b/409248525): Delete with enableRefactorTaskContentView --> - <item type="id" name="bottomright_snapshot" /> </resources> \ No newline at end of file diff --git a/quickstep/res/values/strings.xml b/quickstep/res/values/strings.xml index 6e8bbb8de7..77a6bf9b89 100644 --- a/quickstep/res/values/strings.xml +++ b/quickstep/res/values/strings.xml @@ -27,8 +27,8 @@ <string name="recent_task_option_desktop">Desktop</string> <!-- Title and content description for an option to move app to external display. --> <string name="recent_task_option_external_display">Move to external display</string> - <!-- Title and content description for an option to remove the task [CHAR LIMIT=30] --> - <string name="recent_task_option_remove_task">Clear</string> + <!-- Title and content description for an option to close the app [CHAR LIMIT=30] --> + <string name="recent_task_option_close">Close</string> <!-- Title and content description for Desktop tile in Recents screen that contains apps opened inside desktop windowing mode [CHAR LIMIT=NONE] --> <string name="recent_task_desktop">Desktop</string> @@ -45,9 +45,6 @@ <!-- Recents: Title of a button that goes back from displaying tasks filtered by package name to displaying all tasks [CHAR LIMIT=30] --> <string name="recents_back" translatable="false">Back</string> - <!-- Content description for the add desk button inside recents [CHAR_LIMIT=none] --> - <string name="add_desk_button_content_description">Add new desk</string> - <!-- Accessibility title for the list of recent apps [CHAR_LIMIT=none] --> <string name="accessibility_recent_apps">Recent apps</string> @@ -219,28 +216,12 @@ <string name="allset_hint">Swipe up to go home</string> <!-- Hint string at the bottom of "All Set" page for button navigation [CHAR LIMIT=NONE] --> <string name="allset_button_hint">Tap the home button to go to your home screen</string> - <!-- Description of "All Set" page on the user's device when their device name is provided [CHAR LIMIT=NONE] --> + <!-- Description of "All Set" page on the user's device [CHAR LIMIT=NONE] --> <string name="allset_description_generic">You\u2019re ready to start using your <xliff:g id="device" example="Pixel 6">%1$s</xliff:g></string> - <!-- Description of "All Set" page on the user's device when no device name is provided [CHAR LIMIT=NONE] --> - <string name="allset_description_fallback">You\u2019re ready to start using your device</string> + <!-- A default device name to use in the description of the "All Set" page [CHAR LIMIT=NONE] --> + <string name="default_device_name">device</string> <!-- String linking to navigation settings on "All Set" page [CHAR LIMIT=NONE] --> <string name="allset_navigation_settings"><annotation id="link">System navigation settings</annotation></string> - <!-- New Title of "All Set" page [CHAR LIMIT=NONE] --> - <string name="allset_title_expressive">Your <xliff:g id="device" example="Pixel 9">%1$s</xliff:g> is \nready!</string> - <!-- Description of "All Set" page on the user's device when no device name is provided [CHAR LIMIT=NONE] --> - <string name="allset_title_expressive_fallback">Your device is \nready!</string> - <!-- New subtitle of "All Set" page [CHAR LIMIT=NONE] --> - <string name="allset_subtitle_expressive">Enjoy your new <xliff:g id="device" example="phone">%1$s</xliff:g>!</string> - <!-- String linking to navigation settings on "All Set" page [CHAR LIMIT=NONE] --> - <string name="allset_navigation_settings_expressive"><annotation id="link">Choose how to navigate</annotation></string> - <!-- Hint string at the bottom of "All Set" page [CHAR LIMIT=NONE] --> - <string name="allset_hint_expressive">Swipe up</string> - <!-- Hint string at the bottom of "All Set" page for button navigation [CHAR LIMIT=NONE] --> - <string name="allset_button_hint_expressive">Tap the home button</string> - <!-- String representing device type of a Tablet [CHAR LIMIT=30] --> - <string name="allset_device_type_tablet">tablet</string> - <!-- String representing device type of a Phone [CHAR LIMIT=30] --> - <string name="allset_device_type_phone">phone</string> <!-- ******* Overview ******* --> <!-- Label for a button that causes the current overview app to be shared. [CHAR_LIMIT=40] --> @@ -262,21 +243,20 @@ <string name="blocked_by_policy">This action isn\'t allowed by the app or your organization</string> <string name="split_widgets_not_supported">Widgets not currently supported, please select another app</string> + <!-- ******* Skip tutorial dialog ******* --> + <!-- Title for the dialog that allows the user to skip the gesture navigation tutorial. [CHAR_LIMIT=40] --> + <string name="skip_tutorial_dialog_title">Skip navigation tutorial?</string> + <!-- Subtitle for the dialog that allows the user to skip the gesture navigation tutorial. This directs the user to where they can find the gesture tutorial again. [CHAR_LIMIT=100] --> + <string name="skip_tutorial_dialog_subtitle">You can find this later in the <xliff:g id="name">%1$s</xliff:g> app</string> + <!-- Button text shown on a button on the tutorial skip dialog to return to the tutorial. [CHAR LIMIT=14] --> + <string name="gesture_tutorial_action_button_label_cancel">Cancel</string> + <!-- Button text shown on a button on the tutorial skip dialog to exit the tutorial. [CHAR LIMIT=14] --> + <string name="gesture_tutorial_action_button_label_skip">Skip</string> <!-- Accessibility label for the rotation suggestion button --> <string name="accessibility_rotate_button">Rotate screen</string> <!-- ******* Taskbar Edu ******* --> - <!-- Text description to describe Taskbar education animation for Taskbar autohide functionality. [CHAR_LIMIT=NONE] --> - <string name="taskbar_edu_swipe_animation_description">Animation showing how the taskbar comes into view from the bottom of the screen, and automatically hides when not in use</string> - <!-- Text description to describe Taskbar education animation for Taskbar pinning functionality. [CHAR_LIMIT=NONE] --> - <string name="taskbar_edu_pinning_animation_description">Animation showing how to pin your taskbar using a toggle, so the taskbar remains permanently visible at the bottom of the screen</string> - <!-- Text description to describe Taskbar education animation for split screen functionality. [CHAR_LIMIT=NONE] --> - <string name="taskbar_edu_split_screen_animation_description">Animation showing how to create a split screen, by dragging and dropping an app from the taskbar above an open app</string> - <!-- Text description to describe Taskbar education animation for app suggestion functionality. [CHAR_LIMIT=NONE] --> - <string name="taskbar_edu_suggested_app_animation_description">Animation showing how to access suggested apps on your device</string> - <!-- Text description to describe Taskbar education animation for app suggestion functionality. [CHAR_LIMIT=NONE] --> - <string name="taskbar_edu_suggested_search_animation_description">Animation showing how to search for an item on screen, by touching and holding the action key and selecting the area the item is in</string> <!-- Accessibility title for the Taskbar education window. [CHAR_LIMIT=NONE] --> <string name="taskbar_edu_a11y_title">Taskbar education</string> <!-- Text in dialog that lets a user know how they can use the Taskbar to use multiple apps at once on their device. [CHAR_LIMIT=60] --> @@ -332,7 +312,7 @@ <!-- Accessibility title for the Taskbar vertical divider icon. [CHAR_LIMIT=NONE] --> <string name="taskbar_divider_a11y_title">Taskbar Divider</string> <!-- Accessibility title for the Taskbar Overflow icon. [CHAR_LIMIT=NONE] --> - <string name="taskbar_overflow_a11y_title">Other recent apps</string> + <string name="taskbar_overflow_a11y_title">Taskbar Overflow</string> <!-- Label for moving drop target to the top or left side of the screen, depending on orientation (from the Taskbar only). --> @@ -403,11 +383,4 @@ <string name="pin_to_taskbar">Pin to taskbar</string> <!-- Label for unpinning an item from the taskbar. [CHAR_LIMIT=20] --> <string name="unpin_from_taskbar">Unpin from taskbar</string> - - <!-- ******* Growth Framework Nudge ******* --> - <!-- Accessibility title for the nudge window. [CHAR_LIMIT=NONE] --> - <string name="nudge_a11y_title">Nudge</string> - <!-- Accessibility announcement for closing the nudge window. [CHAR_LIMIT=16] --> - <string name="nudge_a11y_close">Close</string> - <string name="nudge_a11y_image">Nudge image</string> </resources> diff --git a/quickstep/res/values/styles.xml b/quickstep/res/values/styles.xml index fcdc005493..f8ca8d9adf 100644 --- a/quickstep/res/values/styles.xml +++ b/quickstep/res/values/styles.xml @@ -214,11 +214,6 @@ <item name="android:windowShowWallpaper">false</item> </style> - <style name="AllSetTheme.Expressive" parent="AllSetTheme"> - <item name="android:windowShowWallpaper">true</item> - <item name="android:windowIsTranslucent">true</item> - </style> - <!-- Can be applied to views to color things like ripples and list highlights the workspace text color. @@ -227,40 +222,24 @@ <item name="android:colorControlHighlight">?attr/workspaceTextColor</item> </style> - <style name="OverviewActionsContainer"> - <item name="buttonStyle">@style/OverviewActionButton</item> - <item name="android:buttonStyle">@style/OverviewActionButton</item> - </style> - - <style name="OverviewActionsContainerBlur"> - <item name="buttonStyle">@style/OverviewActionButton.Blur</item> - <item name="android:buttonStyle">@style/OverviewActionButton.Blur</item> - </style> - - <style name="OverviewActionButton" parent="@android:style/Widget.DeviceDefault.Button.Borderless"> - <item name="android:maxHeight">@dimen/overview_actions_height</item> - <item name="android:paddingVertical">4dp</item> - <item name="android:paddingHorizontal">@dimen/overview_actions_button_horizontal_padding - </item> - <item name="android:textSize">14sp</item> + <style name="OverviewActionButton" + parent="@android:style/Widget.DeviceDefault.Button.Borderless"> + <item name="android:paddingTop">4dp</item> + <item name="android:paddingBottom">4dp</item> <item name="android:textColor">@color/overview_button</item> <item name="android:drawableTint">@color/overview_button</item> <item name="android:tint">?android:attr/textColorPrimary</item> <item name="android:drawablePadding">8dp</item> <item name="android:textAllCaps">false</item> - <item name="android:textFontWeight">600</item> - <item name="android:gravity">center</item> - <item name="android:layout_gravity">center</item> - <item name="android:includeFontPadding">false</item> - <item name="android:colorControlHighlight">?attr/workspaceTextColor</item> - <item name="android:maxLines">1</item> - <item name="android:singleLine">true</item> - <item name="android:ellipsize">end</item> - <item name="android:background">@drawable/overview_action_button_background</item> </style> - <style name="OverviewActionButton.Blur"> - <item name="android:background">@drawable/overview_action_button_background_blur</item> + <style name="OverviewClearAllButton" parent="@android:style/Widget.DeviceDefault.Button"> + <item name="android:background">@drawable/bg_overview_clear_all_button</item> + <item name="android:minWidth">96dp</item> + <item name="android:minHeight">48dp</item> + <item name="android:paddingStart">12dp</item> + <item name="android:paddingEnd">12dp</item> + <item name="android:stateListAnimator">@null</item> </style> <!-- Icon displayed on the taskbar --> @@ -347,67 +326,15 @@ <item name="android:lineHeight">20sp</item> </style> - <style name="TextAppearance.Nudge.Title" parent="@android:style/TextAppearance.DeviceDefault.DialogWindowTitle"> - <item name="android:gravity">center_horizontal</item> - <item name="android:fontFamily">google-sans</item> - <item name="android:textSize">24sp</item> + <style name="WidgetPickerActivityTheme" parent="@android:style/Theme.DeviceDefault.DayNight"> + <item name="android:windowBackground">@android:color/transparent</item> + <item name="android:windowNoTitle">true</item> + <item name="android:windowContentOverlay">@null</item> + <item name="android:colorBackgroundCacheHint">@null</item> + <item name="android:windowIsTranslucent">true</item> + <item name="android:windowAnimationStyle">@android:style/Animation</item> + + <item name="widgetsTheme">@style/WidgetContainerTheme</item> + <item name="pageIndicatorDotColor">@color/page_indicator_dot_color_light</item> </style> - - <style name="TextAppearance.Nudge.Subtext" parent="android:TextAppearance.Material.Body1"> - <item name="android:layout_marginTop">16dp</item> - <item name="android:fontFamily">google-sans-text</item> - <item name="android:textSize">14sp</item> - </style> - - <style name="Nudge.Button.Primary" parent="@android:style/Widget.Material.Button"> - <item name="android:background">@drawable/button_nudge_colored</item> - <item name="android:stateListAnimator">@null</item> - <item name="android:textSize">16sp</item> - <item name="android:minHeight">36dp</item> - </style> - - <style name="Nudge.Button.Secondary" parent="@android:style/Widget.Material.Button"> - <item name="android:background">@drawable/button_nudge_colored</item> - <item name="android:stateListAnimator">@null</item> - <item name="android:textSize">16sp</item> - <item name="android:minHeight">36dp</item> - </style> - - <style name="AllAppsBlurStyle"> - <item name="allAppsScrimColor">@color/shade_panel_scrim_color</item> - <item name="groupHighlight">@color/surface_effect_1</item> - <item name="focusHighlight">@color/surface_effect_2</item> - <item name="allAppsSurfaceLow">@color/surface_effect_0</item> - <item name="allAppsSurfaceHighest">@color/surface_effect_2</item> - <item name="allAppsUnselectedTab">@color/surface_effect_2</item> - <item name="allappsHeaderProtectionColor">@color/surface_effect_1</item> - <item name="privateSpaceSettingsColor">@color/surface_effect_2</item> - <item name="privateSpaceDividerColor">@color/surface_effect_3</item> - <item name="bottomSheetDragHandleColor">@color/materialColorOnSurface</item> - </style> - - <!-- Currently All Apps fallback should only change the panel background color, but not - other surface effects. The background color is handled in ActivityAllAppsContainerView. --> - <style name="AllAppsBlurFallbackStyle" parent="AllAppsBlurStyle" /> - - <style name="OverviewBlurStyle"> - <item name="overviewScrimColor">?attr/overviewScrimColorBlur</item> - <item name="overviewActionsContainerStyle">@style/OverviewActionsContainerBlur</item> - <item name="overviewActionButtonStyle">@style/OverviewActionButton.Blur</item> - <item name="overviewScrimForegroundPrimary">?attr/overviewScrimForegroundPrimaryBlur</item> - <item name="overviewScrimForegroundSecondary">?attr/overviewScrimForegroundSecondaryBlur - </item> - <item name="addDesktopButtonBackgroundDrawable">@drawable/overview_action_button_background_blur</item> - - </style> - - <style name="OverviewBlurFallbackStyle"> - <item name="overviewScrimColor">?attr/overviewScrimColorFallback</item> - <item name="overviewActionsContainerStyle">@style/OverviewActionsContainer</item> - <item name="overviewActionButtonStyle">@style/OverviewActionButton</item> - <item name="overviewScrimForegroundPrimary">@android:color/transparent</item> - <item name="overviewScrimForegroundSecondary">@android:color/transparent</item> - <item name="addDesktopButtonBackgroundDrawable">@drawable/overview_action_button_background</item> - </style> - </resources> diff --git a/quickstep/res/xml/indexable_launcher_prefs.xml b/quickstep/res/xml/indexable_launcher_prefs.xml index cb31494b2e..b4740e5b51 100644 --- a/quickstep/res/xml/indexable_launcher_prefs.xml +++ b/quickstep/res/xml/indexable_launcher_prefs.xml @@ -29,11 +29,4 @@ android:defaultValue="false" android:persistent="true" /> - <SwitchPreference - android:key="pref_fixed_landscape_mode" - android:title="@string/landscape_mode_title" - android:summary="@string/landscape_mode_desc" - android:defaultValue="false" - android:persistent="true" /> - </PreferenceScreen> diff --git a/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java b/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java index 1a106a41e6..2b3690799e 100644 --- a/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java +++ b/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java @@ -40,7 +40,6 @@ import static com.android.app.animation.Interpolators.DECELERATE_1_5; import static com.android.app.animation.Interpolators.DECELERATE_1_7; import static com.android.app.animation.Interpolators.EXAGGERATED_EASE; import static com.android.app.animation.Interpolators.LINEAR; -import static com.android.internal.util.LatencyTracker.ACTION_DESKTOP_MODE_EXIT_MODE_ON_LAST_WINDOW_CLOSE; import static com.android.launcher3.BaseActivity.EVENT_DESTROYED; import static com.android.launcher3.BaseActivity.INVISIBLE_ALL; import static com.android.launcher3.BaseActivity.INVISIBLE_BY_APP_TRANSITIONS; @@ -80,6 +79,7 @@ import android.app.ActivityOptions; import android.app.WindowConfiguration; import android.app.role.RoleManager; import android.content.ComponentName; +import android.content.Context; import android.content.res.Resources; import android.graphics.Color; import android.graphics.Matrix; @@ -98,6 +98,7 @@ import android.provider.Settings; import android.util.Log; import android.util.Pair; import android.util.Size; +import android.view.CrossWindowBlurListeners; import android.view.IRemoteAnimationFinishedCallback; import android.view.RemoteAnimationAdapter; import android.view.RemoteAnimationDefinition; @@ -120,9 +121,7 @@ import androidx.annotation.Nullable; import androidx.core.graphics.ColorUtils; import com.android.app.animation.Animations; -import com.android.app.animation.Interpolators; import com.android.internal.jank.Cuj; -import com.android.internal.util.LatencyTracker; import com.android.launcher3.DeviceProfile.OnDeviceProfileChangeListener; import com.android.launcher3.LauncherAnimationRunner.RemoteAnimationFactory; import com.android.launcher3.anim.AnimationSuccessListener; @@ -132,6 +131,7 @@ import com.android.launcher3.dragndrop.DragLayer; import com.android.launcher3.icons.FastBitmapDrawable; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.shortcuts.DeepShortcutView; +import com.android.launcher3.statehandlers.DepthController; import com.android.launcher3.taskbar.LauncherTaskbarUIController; import com.android.launcher3.testing.shared.ResourceUtils; import com.android.launcher3.touch.PagedOrientationHandler; @@ -235,7 +235,7 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener private static final int MAX_NUM_TASKS = 5; - // Cross-fade duration between App Widget and App when launching from widget. + // Cross-fade duration between App Widget and App private static final int WIDGET_CROSSFADE_DURATION_MILLIS = 125; protected final QuickstepLauncher mLauncher; @@ -266,7 +266,6 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener private RemoteTransition mLauncherOpenTransition; private final RemoteAnimationCoordinateTransfer mCoordinateTransfer; - private final LatencyTracker mLatencyTracker; private LauncherBackAnimationController mBackAnimationController; private final AnimatorListenerAdapter mForceInvisibleListener = new AnimatorListenerAdapter() { @@ -290,8 +289,8 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener private final SystemUiProxy mSystemUiProxy; - public QuickstepTransitionManager(QuickstepLauncher launcher) { - mLauncher = launcher; + public QuickstepTransitionManager(Context context) { + mLauncher = Launcher.cast(Launcher.getLauncher(context)); mDragLayer = mLauncher.getDragLayer(); mHandler = new Handler(Looper.getMainLooper()); mDeviceProfile = mLauncher.getDeviceProfile(); @@ -317,12 +316,10 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener mSystemUiProxy.setStartingWindowListener(mStartingWindowListener); } - mOpeningXInterpolator = AnimationUtils.loadInterpolator( - launcher, R.interpolator.app_open_x); - mOpeningInterpolator = AnimationUtils.loadInterpolator( - launcher, R.interpolator.emphasized_interpolator); + mOpeningXInterpolator = AnimationUtils.loadInterpolator(context, R.interpolator.app_open_x); + mOpeningInterpolator = AnimationUtils.loadInterpolator(context, + R.interpolator.emphasized_interpolator); mCoordinateTransfer = new RemoteAnimationCoordinateTransfer(mLauncher); - mLatencyTracker = LatencyTracker.getInstance(launcher); } @Override @@ -377,7 +374,6 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener LauncherTaskbarUIController taskbarController = mLauncher.getTaskbarUIController(); if (syncAppLaunchWithTaskbarStash() && enableScalingRevealHomeAnimation() - && mLauncher.getStateManager().getState() == NORMAL && taskbarController != null) { taskbarController.setIgnoreInAppFlagForSync(true); mLauncher.addEventCallback(EVENT_DESTROYED, onEndCallback::executeAllAndDestroy); @@ -517,9 +513,7 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener target = t; break; } - final int widthPx = mDeviceProfile.getDeviceProperties().getWidthPx(); - final int heightPx = mDeviceProfile.getDeviceProperties().getHeightPx(); - if (target == null) return new Rect(0, 0, widthPx, heightPx); + if (target == null) return new Rect(0, 0, mDeviceProfile.widthPx, mDeviceProfile.heightPx); final Rect bounds = new Rect(target.screenSpaceBounds); if (target.localBounds != null) { bounds.set(target.localBounds); @@ -529,10 +523,10 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener if (rotationChange != 0) { if ((rotationChange % 2) == 1) { // undoing rotation, so our "original" parent size is actually flipped - Utilities.rotateBounds(bounds, heightPx, widthPx, + Utilities.rotateBounds(bounds, mDeviceProfile.heightPx, mDeviceProfile.widthPx, 4 - rotationChange); } else { - Utilities.rotateBounds(bounds, widthPx, heightPx, + Utilities.rotateBounds(bounds, mDeviceProfile.widthPx, mDeviceProfile.heightPx, 4 - rotationChange); } } @@ -571,8 +565,7 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener final View appsView = mLauncher.getAppsView(); final float startAlpha = appsView.getAlpha(); final float startScale = SCALE_PROPERTY.get(appsView); - if (mDeviceProfile.getDeviceProperties().isTablet()) { - + if (mDeviceProfile.isTablet) { // AllApps should not fade at all in tablets. alphas = new float[]{1, 1}; } @@ -609,7 +602,13 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener endListener = composeViewContentAnimator(launcherAnimator, alphas, scales); } else { List<View> viewsToAnimate = new ArrayList<>(); - viewsToAnimate.add(mLauncher.getWorkspace()); + Workspace<?> workspace = mLauncher.getWorkspace(); + if (Flags.coordinateWorkspaceScale()) { + viewsToAnimate.add(workspace); + } else { + workspace.forEachVisiblePage( + view -> viewsToAnimate.add(((CellLayout) view).getShortcutsAndWidgets())); + } Hotseat hotseat = mLauncher.getHotseat(); // Do not scale hotseat as a whole when taskbar is present, and scale QSB only if it's @@ -625,19 +624,22 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener viewsToAnimate.forEach(view -> { view.setLayerType(View.LAYER_TYPE_HARDWARE, null); - // Start the animation from the current value, instead of assuming the views are - // in their resting state, so interrupted animations merge seamlessly. - // TODO(b/367591368): ideally these animations would be refactored to be - // controlled centrally so each instances doesn't need to care about this - // coordination. - float[] scale = new float[]{view.getScaleX(), scales[1]}; + float[] scale = scales; + if (Flags.coordinateWorkspaceScale()) { + // Start the animation from the current value, instead of assuming the views are + // in their resting state, so interrupted animations merge seamlessly. + // TODO(b/367591368): ideally these animations would be refactored to be + // controlled centrally so each instances doesn't need to care about this + // coordination. + scale = new float[]{view.getScaleX(), scales[1]}; - // Cancel any ongoing animations. This is necessary to avoid a conflict between - // e.g. the unfinished animation triggered when closing an app back to Home and - // this animation caused by a launch. - Animations.Companion.cancelOngoingAnimation(view); - // Make sure to cache the current animation, so it can be properly interrupted. - Animations.Companion.setOngoingAnimation(view, launcherAnimator); + // Cancel any ongoing animations. This is necessary to avoid a conflict between + // e.g. the unfinished animation triggered when closing an app back to Home and + // this animation caused by a launch. + Animations.Companion.cancelOngoingAnimation(view); + // Make sure to cache the current animation, so it can be properly interrupted. + Animations.Companion.setOngoingAnimation(view, launcherAnimator); + } ObjectAnimator scaleAnim = ObjectAnimator.ofFloat(view, SCALE_PROPERTY, scale) .setDuration(CONTENT_SCALE_DURATION); @@ -650,8 +652,10 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener SCALE_PROPERTY.set(view, 1f); view.setLayerType(View.LAYER_TYPE_NONE, null); - // Reset the cached animation. - Animations.Companion.setOngoingAnimation(view, null /* animation */); + if (Flags.coordinateWorkspaceScale()) { + // Reset the cached animation. + Animations.Companion.setOngoingAnimation(view, null /* animation */); + } }); mLauncher.resumeExpensiveViewUpdates(); }; @@ -694,7 +698,6 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener private boolean shouldCropToInset(RemoteAnimationTarget target) { return enableDynamicInsetsForAppLaunch() - && mDeviceProfile.isTaskbarPresent && mDeviceProfile.isTaskbarPresentInApps && target != null && !target.willShowImeOnTarget && !isTransientTaskbar(mLauncher); @@ -801,7 +804,7 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener final float initialWindowRadius = supportsRoundedCornersOnWindows(mLauncher.getResources()) ? Math.max(crop.width(), crop.height()) / 2f : 0f; - final float finalWindowRadius = mDeviceProfile.getDeviceProperties().isMultiWindowMode() + final float finalWindowRadius = mDeviceProfile.isMultiWindowMode ? 0 : getWindowCornerRadius(mLauncher); final float finalShadowRadius = appTargetsAreTranslucent ? 0 : mMaxShadowRadius; @@ -884,8 +887,8 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener final int windowCropWidth = crop.width(); final int windowCropHeight = crop.height(); if (rotationChange != 0) { - Utilities.rotateBounds(crop, mDeviceProfile.getDeviceProperties().getWidthPx(), - mDeviceProfile.getDeviceProperties().getHeightPx(), rotationChange); + Utilities.rotateBounds(crop, mDeviceProfile.widthPx, + mDeviceProfile.heightPx, rotationChange); } // Scale the size of the icon to match the size of the window crop. @@ -932,14 +935,14 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener matrix.setScale(scale, scale); if (rotationChange == 1) { matrix.postTranslate(windowTransY0, - mDeviceProfile.getDeviceProperties().getWidthPx() - (windowTransX0 + scaledCropWidth)); + mDeviceProfile.widthPx - (windowTransX0 + scaledCropWidth)); } else if (rotationChange == 2) { matrix.postTranslate( - mDeviceProfile.getDeviceProperties().getWidthPx() - (windowTransX0 + scaledCropWidth), - mDeviceProfile.getDeviceProperties().getHeightPx() - (windowTransY0 + scaledCropHeight)); + mDeviceProfile.widthPx - (windowTransX0 + scaledCropWidth), + mDeviceProfile.heightPx - (windowTransY0 + scaledCropHeight)); } else if (rotationChange == 3) { matrix.postTranslate( - mDeviceProfile.getDeviceProperties().getHeightPx() - (windowTransY0 + scaledCropHeight), + mDeviceProfile.heightPx - (windowTransY0 + scaledCropHeight), windowTransX0); } else { matrix.postTranslate(windowTransX0, windowTransY0); @@ -1031,7 +1034,7 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener FloatingWidgetView.getDefaultBackgroundColor(mLauncher, openingTarget); } - final float finalWindowRadius = mDeviceProfile.getDeviceProperties().isMultiWindowMode() + final float finalWindowRadius = mDeviceProfile.isMultiWindowMode ? 0 : getWindowCornerRadius(mLauncher); final FloatingWidgetView floatingView = FloatingWidgetView.getFloatingWidgetView(mLauncher, v, widgetBackgroundBounds, @@ -1146,24 +1149,19 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener return animatorSet; } - /** Returns animator that controls depth/blur of the background during app/widget opening. */ - private Animator getBackgroundAnimator() { - if (Flags.allAppsBlur()) { - // Don't animate/blur the background for this launch, regardless of the launcher state. - // We have too many performance issues with the blur. - return new AnimatorSet(); - } - + /** + * Returns animator that controls depth/blur of the background. + */ + private ObjectAnimator getBackgroundAnimator() { // When launching an app from overview that doesn't map to a task, we still want to just // blur the wallpaper instead of the launcher surface as well - LauncherState launcherState = mLauncher.getStateManager().getState(); - boolean allowBlurringLauncher = - launcherState != OVERVIEW && BlurUtils.supportsBlursOnWindows(); + boolean allowBlurringLauncher = mLauncher.getStateManager().getState() != OVERVIEW + && BlurUtils.supportsBlursOnWindows(); - ObjectAnimator backgroundRadiusAnim = ObjectAnimator.ofFloat( - mLauncher.getDepthController().stateDepth, MULTI_PROPERTY_VALUE, - BACKGROUND_APP.getDepth(mLauncher)) - .setDuration(APP_LAUNCH_DURATION); + LaunchDepthController depthController = new LaunchDepthController(mLauncher); + ObjectAnimator backgroundRadiusAnim = ObjectAnimator.ofFloat(depthController.stateDepth, + MULTI_PROPERTY_VALUE, BACKGROUND_APP.getDepth(mLauncher)) + .setDuration(APP_LAUNCH_DURATION); if (allowBlurringLauncher) { // Create a temporary effect layer, that lives on top of launcher, so we can apply @@ -1184,14 +1182,18 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener .setEffectLayer() .build(); - backgroundRadiusAnim.addListener(AnimatorListeners.forEndCallback(() -> { - // Use try-with-resources to ensure the transaction gets closed. - try (SurfaceControl.Transaction transaction = new SurfaceControl.Transaction()) { - transaction.remove(dimLayer).apply(); - } - })); + backgroundRadiusAnim.addListener(AnimatorListeners.forEndCallback(() -> + new SurfaceControl.Transaction().remove(dimLayer).apply())); } + backgroundRadiusAnim.addListener( + AnimatorListeners.forEndCallback(() -> { + // reset the depth to match the main depth controller's depth + depthController.stateDepth + .setValue(mLauncher.getDepthController().stateDepth.getValue()); + depthController.dispose(); + })); + return backgroundRadiusAnim; } @@ -1429,9 +1431,9 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener DeviceProfile dp = mLauncher.getDeviceProfile(); final int halfIconSize = dp.iconSizePx / 2; float primaryDimension = orientationHandler - .getPrimaryValue(dp.getDeviceProperties().getAvailableWidthPx(), dp.getDeviceProperties().getAvailableHeightPx()); + .getPrimaryValue(dp.availableWidthPx, dp.availableHeightPx); float secondaryDimension = orientationHandler - .getSecondaryValue(dp.getDeviceProperties().getAvailableWidthPx(), dp.getDeviceProperties().getAvailableHeightPx()); + .getSecondaryValue(dp.availableWidthPx, dp.availableHeightPx); final float targetX = primaryDimension / 2f; final float targetY = secondaryDimension - dp.hotseatBarSizePx; return new RectF(targetX - halfIconSize, targetY - halfIconSize, @@ -1461,13 +1463,13 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener // Get floating view and target rect. boolean isInHotseat = false; if (launcherView instanceof LauncherAppWidgetHostView) { - Size windowSize = new Size(mDeviceProfile.getDeviceProperties().getAvailableWidthPx(), - mDeviceProfile.getDeviceProperties().getAvailableHeightPx()); + Size windowSize = new Size(mDeviceProfile.availableWidthPx, + mDeviceProfile.availableHeightPx); int fallbackBackgroundColor = FloatingWidgetView.getDefaultBackgroundColor(mLauncher, runningTaskTarget); floatingWidget = FloatingWidgetView.getFloatingWidgetView(mLauncher, (LauncherAppWidgetHostView) launcherView, targetRect, windowSize, - mDeviceProfile.getDeviceProperties().isMultiWindowMode() ? 0 : getWindowCornerRadius(mLauncher), + mDeviceProfile.isMultiWindowMode ? 0 : getWindowCornerRadius(mLauncher), isTransluscent, fallbackBackgroundColor); } else if (launcherView != null && !RemoveAnimationSettingsTracker.INSTANCE.get( mLauncher).isRemoveAnimationEnabled()) { @@ -1498,7 +1500,7 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener Rect closingWindowStartRect = new Rect(); closingWindowStartRectF.round(closingWindowStartRect); Rect closingWindowOriginalRect = - new Rect(0, 0, mDeviceProfile.getDeviceProperties().getWidthPx(), mDeviceProfile.getDeviceProperties().getHeightPx()); + new Rect(0, 0, mDeviceProfile.widthPx, mDeviceProfile.heightPx); if (floatingIconView != null) { anim.addAnimatorListener(floatingIconView); floatingIconView.setOnTargetChangeListener(anim::onTargetPositionChanged); @@ -1506,20 +1508,15 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener FloatingIconView finalFloatingIconView = floatingIconView; // We want the window alpha to be 0 once this threshold is met, so that the - // FloatingIconView can be seen morphing into the icon shape. + // FolderIconView can be seen morphing into the icon shape. final float windowAlphaThreshold = 1f - SHAPE_PROGRESS_DURATION; RectFSpringAnim.OnUpdateListener runner = new SpringAnimRunner(targets, targetRect, closingWindowStartRect, closingWindowOriginalRect, startWindowCornerRadius) { @Override public void onUpdate(RectF currentRectF, float progress) { - // We want the icon alpha to be 1 once this threshold is met, so that it can be - // seen morphing into the icon shape. But before the threshold, we want to limit - // the alpha to reduce the blur effect behind the window. - float iconAlpha = - Interpolators.clampToProgress(progress, 0f, windowAlphaThreshold); - finalFloatingIconView.update(iconAlpha, currentRectF, progress, - windowAlphaThreshold, getCornerRadius(progress), false); + finalFloatingIconView.update(1f, currentRectF, progress, windowAlphaThreshold, + getCornerRadius(progress), false); super.onUpdate(currentRectF, progress); } @@ -1576,7 +1573,7 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener Rect tmpRect = new Rect(); ValueAnimator closingAnimator = ValueAnimator.ofFloat(0, 1); int duration = CLOSING_TRANSITION_DURATION_MS; - float windowCornerRadius = mDeviceProfile.getDeviceProperties().isMultiWindowMode() + float windowCornerRadius = mDeviceProfile.isMultiWindowMode ? 0 : getWindowCornerRadius(mLauncher); float startShadowRadius = areAllTargetsTranslucent(appTargets) ? 0 : mMaxShadowRadius; closingAnimator.setDuration(duration); @@ -1646,20 +1643,14 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener } private void addCujInstrumentation(Animator anim, int cuj) { - anim.addListener(getCujAnimationSuccessListener(cuj, /* cujPreStartCallback= */null)); - } - - private void addCujInstrumentation(Animator anim, int cuj, Runnable cujPreStartCallback) { - anim.addListener(getCujAnimationSuccessListener(cuj, cujPreStartCallback)); + anim.addListener(getCujAnimationSuccessListener(cuj)); } private void addCujInstrumentation(RectFSpringAnim anim, int cuj) { - anim.addAnimatorListener( - getCujAnimationSuccessListener(cuj, /* cujPreStartCallback= */null)); + anim.addAnimatorListener(getCujAnimationSuccessListener(cuj)); } - private AnimationSuccessListener getCujAnimationSuccessListener( - int cuj, Runnable cujPreStartCallback) { + private AnimationSuccessListener getCujAnimationSuccessListener(int cuj) { return new AnimationSuccessListener() { @Override public void onAnimationStart(Animator animation) { @@ -1673,9 +1664,7 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener return; } mHandled = true; - if (cujPreStartCallback != null) { - cujPreStartCallback.run(); - } + InteractionJankMonitorWrapper.begin(mDragLayer, cuj); mDragLayer.post(() -> @@ -1783,6 +1772,12 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener true /* animateOverviewScrim */, launcherView).getAnimators()); } + if (!areAllTargetsTranslucent(appTargets)) { + anim.play(ObjectAnimator.ofFloat(mLauncher.getDepthController().stateDepth, + MULTI_PROPERTY_VALUE, + BACKGROUND_APP.getDepth(mLauncher), NORMAL.getDepth(mLauncher))); + } + // We play StaggeredWorkspaceAnim as a part of the closing window animation. playWorkspaceReveal = false; } @@ -1821,13 +1816,8 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener addCujInstrumentation(rectFSpringAnim, Cuj.CUJ_LAUNCHER_APP_CLOSE_TO_HOME); } else { if (isFreeformAnimation(appTargets)) { - addCujInstrumentation( - anim, - Cuj.CUJ_DESKTOP_MODE_EXIT_MODE_ON_LAST_WINDOW_CLOSE, - /* cujPreStartCallback= */ () -> { - mLatencyTracker.onActionEnd( - ACTION_DESKTOP_MODE_EXIT_MODE_ON_LAST_WINDOW_CLOSE); - }); + addCujInstrumentation(anim, + Cuj.CUJ_DESKTOP_MODE_EXIT_MODE_ON_LAST_WINDOW_CLOSE); } addCujInstrumentation(anim, playFallBackAnimation ? Cuj.CUJ_LAUNCHER_APP_CLOSE_TO_HOME_FALLBACK @@ -1864,7 +1854,7 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener } }); } else if (playWorkspaceReveal) { - anim.play(new WorkspaceRevealAnim(mLauncher, false).getAnimators()); + anim.play(new WorkspaceRevealAnim(mLauncher, false).getAnimators()); } } @@ -2266,20 +2256,17 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener boolean toLauncher, RectF resultRect) { final int taskRotation = target.windowConfiguration.getRotation(); final DeviceProfile profile = mLauncher.getDeviceProfile(); - final int rotation = profile.getDeviceProperties().getRotationHint(); - final int widthPx = profile.getDeviceProperties().getWidthPx(); - final int heightPx = profile.getDeviceProperties().getWidthPx(); final int rotationDelta = toLauncher - ? android.util.RotationUtils.deltaRotation(taskRotation, rotation) - : android.util.RotationUtils.deltaRotation(rotation, taskRotation); + ? android.util.RotationUtils.deltaRotation(taskRotation, profile.rotationHint) + : android.util.RotationUtils.deltaRotation(profile.rotationHint, taskRotation); if (rotationDelta != ROTATION_0) { // Get original display size when task is on top but with different rotation - if (rotationDelta % 2 != 0 && toLauncher && (rotation == ROTATION_0 - || rotation == ROTATION_180)) { - mDisplayRect.set(0, 0, heightPx, widthPx); + if (rotationDelta % 2 != 0 && toLauncher && (profile.rotationHint == ROTATION_0 + || profile.rotationHint == ROTATION_180)) { + mDisplayRect.set(0, 0, profile.heightPx, profile.widthPx); } else { - mDisplayRect.set(0, 0, widthPx, heightPx); + mDisplayRect.set(0, 0, profile.widthPx, profile.heightPx); } currentRect.round(mTmpResult); android.util.RotationUtils.rotateBounds(mTmpResult, mDisplayRect, rotationDelta); @@ -2418,4 +2405,19 @@ public class QuickstepTransitionManager implements OnDeviceProfileChangeListener return Utilities.mapToRange(progress, start, end, 1, 0, ACCELERATE_1_5); } } + + public static class LaunchDepthController extends DepthController { + public LaunchDepthController(QuickstepLauncher launcher) { + super(launcher); + try { + setCrossWindowBlursEnabled( + CrossWindowBlurListeners.getInstance().isCrossWindowBlurEnabled()); + } catch (Throwable t) { + // LC-Ignored + } + // Make sure that the starting value matches the current depth set by the main + // controller. + stateDepth.setValue(launcher.getDepthController().stateDepth.getValue()); + } + } } diff --git a/quickstep/src/com/android/launcher3/appprediction/AppsDividerView.java b/quickstep/src/com/android/launcher3/appprediction/AppsDividerView.java index 4404428f85..e1e3eec790 100644 --- a/quickstep/src/com/android/launcher3/appprediction/AppsDividerView.java +++ b/quickstep/src/com/android/launcher3/appprediction/AppsDividerView.java @@ -33,12 +33,10 @@ import android.view.accessibility.AccessibilityManager; import androidx.annotation.ColorInt; import androidx.annotation.VisibleForTesting; -import com.android.launcher3.Flags; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.allapps.FloatingHeaderRow; import com.android.launcher3.allapps.FloatingHeaderView; -import com.android.launcher3.util.Themes; /** * A view which shows a horizontal divider @@ -86,10 +84,9 @@ public class AppsDividerView extends View implements FloatingHeaderRow { getResources().getDimensionPixelSize(R.dimen.all_apps_divider_height) }; - mStrokeColor = Flags.allAppsBlur() - ? Themes.getAttrColor(context, R.attr.bottomSheetDragHandleColor) - : context.getColor(R.color.materialColorOutlineVariant); - mAllAppsLabelTextColor = context.getColor(R.color.materialColorOnSurface); + mStrokeColor = context.getColor(R.color.materialColorOutlineVariant); + + mAllAppsLabelTextColor = context.getColor(R.color.materialColorOnSurfaceVariant); mAccessibilityManager = AccessibilityManager.getInstance(context); setShowAllAppsLabel(!ALL_APPS_VISITED_COUNT.hasReachedMax(context)); @@ -214,8 +211,7 @@ public class AppsDividerView extends View implements FloatingHeaderRow { private Layout getAllAppsLabelLayout() { if (mAllAppsLabelLayout == null) { mPaint.setAntiAlias(true); - mPaint.setTypeface(Typeface.create(Flags.gsfRes() ? "variable-title-small" - : "google-sans", Typeface.NORMAL)); + mPaint.setTypeface(Typeface.create("google-sans", Typeface.NORMAL)); mPaint.setTextSize( getResources().getDimensionPixelSize(R.dimen.all_apps_label_text_size)); diff --git a/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java b/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java index b6d3146ffe..b329156cf3 100644 --- a/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java +++ b/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java @@ -143,10 +143,9 @@ public class PredictionRowView<T extends Context & ActivityContext> @Override public int getExpectedHeight() { DeviceProfile deviceProfile = mActivityContext.getDeviceProfile(); - int iconHeight = deviceProfile.getAllAppsProfile().getIconSizePx(); - int iconPadding = deviceProfile.getAllAppsProfile().getIconDrawablePaddingPx(); - int textHeight = Utilities.calculateTextHeight( - deviceProfile.getAllAppsProfile().getIconTextSizePx()); + int iconHeight = deviceProfile.allAppsIconSizePx; + int iconPadding = deviceProfile.allAppsIconDrawablePaddingPx; + int textHeight = Utilities.calculateTextHeight(deviceProfile.allAppsIconTextSizePx); int totalHeight = iconHeight + iconPadding + textHeight + mVerticalPadding * 2; // Prediction row height will be 4dp bigger than the regular apps in A-Z list when two line // is not enabled. Otherwise, the extra height will increase by just the textHeight. @@ -236,11 +235,7 @@ public class PredictionRowView<T extends Context & ActivityContext> lp.height = ViewGroup.LayoutParams.MATCH_PARENT; } else { // Ensure the all apps icon height matches the workspace icons in portrait mode. - lp.height = - mActivityContext - .getDeviceProfile() - .getAllAppsProfile() - .getCellHeightPx(); + lp.height = mActivityContext.getDeviceProfile().allAppsCellHeightPx; } lp.width = 0; lp.weight = 1; diff --git a/quickstep/src/com/android/launcher3/dagger/Modules.kt b/quickstep/src/com/android/launcher3/dagger/Modules.kt index 479c3eb82a..9723b42c62 100644 --- a/quickstep/src/com/android/launcher3/dagger/Modules.kt +++ b/quickstep/src/com/android/launcher3/dagger/Modules.kt @@ -16,64 +16,38 @@ package com.android.launcher3.dagger -import com.android.launcher3.backuprestore.LauncherRestoreEventLogger -import com.android.launcher3.icons.LauncherIconProvider -import com.android.launcher3.icons.LauncherIconProviderImpl -import com.android.launcher3.logging.StatsLogManager.StatsLogManagerFactory import com.android.launcher3.uioverrides.QuickstepWidgetHolder.QuickstepWidgetHolderFactory import com.android.launcher3.uioverrides.SystemApiWrapper import com.android.launcher3.uioverrides.plugins.PluginManagerWrapperImpl import com.android.launcher3.util.ApiWrapper -import com.android.launcher3.util.InstantAppResolver import com.android.launcher3.util.PluginManagerWrapper import com.android.launcher3.util.window.RefreshRateTracker import com.android.launcher3.util.window.WindowManagerProxy import com.android.launcher3.widget.LauncherWidgetHolder.WidgetHolderFactory -import com.android.quickstep.InstantAppResolverImpl -import com.android.quickstep.LauncherRestoreEventLoggerImpl -import com.android.quickstep.logging.StatsLogCompatManager.StatsLogCompatManagerFactory import com.android.quickstep.util.ChoreographerFrameRateTracker import com.android.quickstep.util.GestureExclusionManager -import com.android.systemui.shared.system.ActivityManagerWrapper +import com.android.quickstep.util.SystemWindowManagerProxy import dagger.Binds import dagger.Module import dagger.Provides -import app.lawnchair.factory.LawnchairWidgetHolder -import app.lawnchair.util.LawnchairWindowManagerProxy - private object Modules {} @Module abstract class WindowManagerProxyModule { - @Binds abstract fun bindWindowManagerProxy(proxy: LawnchairWindowManagerProxy): WindowManagerProxy + @Binds abstract fun bindWindowManagerProxy(proxy: SystemWindowManagerProxy): WindowManagerProxy } @Module abstract class ApiWrapperModule { - @Binds - abstract fun bindStatsLogManagerFactory( - impl: StatsLogCompatManagerFactory - ): StatsLogManagerFactory - @Binds abstract fun bindApiWrapper(systemApiWrapper: SystemApiWrapper): ApiWrapper - - @Binds - abstract fun bindIconProvider(iconProviderImpl: LauncherIconProviderImpl): LauncherIconProvider - - @Binds abstract fun bindInstantAppResolver(impl: InstantAppResolverImpl): InstantAppResolver - - @Binds - abstract fun bindRestoreEventLogger( - impl: LauncherRestoreEventLoggerImpl - ): LauncherRestoreEventLogger } @Module abstract class WidgetModule { @Binds - abstract fun bindWidgetHolderFactory(factor: LawnchairWidgetHolder.Factory): WidgetHolderFactory + abstract fun bindWidgetHolderFactory(factor: QuickstepWidgetHolderFactory): WidgetHolderFactory } @Module @@ -92,9 +66,4 @@ object StaticObjectModule { @Provides @JvmStatic fun provideRefreshRateTracker(): RefreshRateTracker = ChoreographerFrameRateTracker - - @Provides - @JvmStatic - fun provideActivityManagerWrapper(): ActivityManagerWrapper = - ActivityManagerWrapper.getInstance() } diff --git a/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransition.kt b/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransition.kt index 281d84677a..5a8934b9f5 100644 --- a/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransition.kt +++ b/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransition.kt @@ -81,13 +81,11 @@ constructor( val animators = mutableListOf<Animator>() val animatorFinishedCallback: (Animator) -> Unit = { animator -> animators -= animator - if (animators.isEmpty()) { - RemoteRunnable.executeSafely(finishedCallback) - } + if (animators.isEmpty()) finishedCallback.run() } animators += animatorHelper.createAnimators(info, animatorFinishedCallback) if (animators.isEmpty()) { - RemoteRunnable.executeSafely(finishedCallback) + finishedCallback.run() return } animators.forEach { it.start() } diff --git a/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManager.kt b/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManager.kt index 1434168687..a72b5c43c5 100644 --- a/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManager.kt +++ b/quickstep/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManager.kt @@ -19,7 +19,6 @@ package com.android.launcher3.desktop import android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM import android.content.Context -import android.window.DesktopExperienceFlags import android.window.DesktopModeFlags import android.window.RemoteTransition import android.window.TransitionFilter @@ -85,9 +84,7 @@ class DesktopAppLaunchTransitionManager( mWindowingMode = WINDOWING_MODE_FREEFORM mModes = DesktopAppLaunchTransition.LAUNCH_CHANGE_MODES mMustBeTask = true - if (!DesktopExperienceFlags.ENABLE_DESKTOP_APP_LAUNCH_BUGFIX.isTrue) { - mOrder = CONTAINER_ORDER_TOP - } + mOrder = CONTAINER_ORDER_TOP } return TransitionFilter().apply { mTypeSet = DesktopAppLaunchTransition.LAUNCH_CHANGE_MODES diff --git a/quickstep/src/com/android/launcher3/desktop/DesktopRecentsTransitionController.kt b/quickstep/src/com/android/launcher3/desktop/DesktopRecentsTransitionController.kt index 32cf6d5d2d..a01846dda9 100644 --- a/quickstep/src/com/android/launcher3/desktop/DesktopRecentsTransitionController.kt +++ b/quickstep/src/com/android/launcher3/desktop/DesktopRecentsTransitionController.kt @@ -34,7 +34,7 @@ import com.android.quickstep.util.DesksUtils.Companion.areMultiDesksFlagsEnabled import com.android.quickstep.views.DesktopTaskView import com.android.quickstep.views.TaskContainer import com.android.quickstep.views.TaskView -import com.android.window.flags2.Flags +import com.android.window.flags.Flags import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource import java.util.function.Consumer @@ -46,14 +46,10 @@ class DesktopRecentsTransitionController( private val depthController: DepthController?, ) { - /** - * Launch desktop tasks from recents view and activate the new freeform task with id - * [taskIdToReorderToFront] if it's provided and already on the given desk. - */ + /** Launch desktop tasks from recents view */ fun launchDesktopFromRecents( desktopTaskView: DesktopTaskView, animated: Boolean, - taskIdToReorderToFront: Int? = null, callback: Consumer<Boolean>? = null, ) { val animRunner = @@ -66,13 +62,9 @@ class DesktopRecentsTransitionController( ) val transition = RemoteTransition(animRunner, appThread, "RecentsToDesktop") if (areMultiDesksFlagsEnabled()) { - systemUiProxy.activateDesk(desktopTaskView.deskId, transition, taskIdToReorderToFront) + systemUiProxy.activateDesk(desktopTaskView.deskId, transition) } else { - systemUiProxy.showDesktopApps( - desktopTaskView.displayId, - transition, - taskIdToReorderToFront, - ) + systemUiProxy.showDesktopApps(desktopTaskView.displayId, transition) } } diff --git a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduController.java b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduController.java index 7c53360ea4..b77c43fc2f 100644 --- a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduController.java +++ b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduController.java @@ -33,6 +33,7 @@ import com.android.launcher3.Utilities; import com.android.launcher3.Workspace; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; +import com.android.launcher3.util.IntArray; import com.android.launcher3.views.ArrowTipView; import com.android.launcher3.views.Snackbar; @@ -56,6 +57,7 @@ public class HotseatEduController { private HotseatEduDialog mActiveDialog; private ArrayList<ItemInfo> mNewItems = new ArrayList<>(); + private IntArray mNewScreens = null; HotseatEduController(Launcher launcher) { mLauncher = launcher; @@ -94,6 +96,7 @@ public class HotseatEduController { } if (pageId == -1) { pageId = mLauncher.getModel().getModelDbController().getNewScreenId(); + mNewScreens = IntArray.wrap(pageId); } boolean isPortrait = !mLauncher.getDeviceProfile().isVerticalBarLayout(); int hotseatItemsNum = mLauncher.getDeviceProfile().numShownHotseatIcons; @@ -114,7 +117,18 @@ public class HotseatEduController { void moveHotseatItems() { mHotseat.removeAllViewsInLayout(); if (!mNewItems.isEmpty()) { - mLauncher.bindItemsAdded(mNewItems); + int lastPage = mNewItems.get(mNewItems.size() - 1).screenId; + ArrayList<ItemInfo> animated = new ArrayList<>(); + ArrayList<ItemInfo> nonAnimated = new ArrayList<>(); + + for (ItemInfo info : mNewItems) { + if (info.screenId == lastPage) { + animated.add(info); + } else { + nonAnimated.add(info); + } + } + mLauncher.bindAppsAdded(mNewScreens, nonAnimated, animated); } } diff --git a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java index 891397fe84..db225be4a9 100644 --- a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java +++ b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java @@ -38,6 +38,7 @@ import com.android.launcher3.Launcher; import com.android.launcher3.R; import com.android.launcher3.celllayout.CellLayoutLayoutParams; import com.android.launcher3.model.data.WorkspaceItemInfo; +import com.android.launcher3.uioverrides.PredictedAppIcon; import com.android.launcher3.views.AbstractSlideInView; import java.util.List; @@ -88,11 +89,11 @@ public class HotseatEduDialog extends AbstractSlideInView<Launcher> implements I mSampleHotseat = findViewById(R.id.sample_prediction); Context context = getContext(); - DeviceProfile dp = mActivityContext.getDeviceProfile(); - Rect padding = dp.getHotseatLayoutPadding(context); + DeviceProfile grid = mActivityContext.getDeviceProfile(); + Rect padding = grid.getHotseatLayoutPadding(context); - mSampleHotseat.getLayoutParams().height = dp.cellHeightPx; - mSampleHotseat.setGridSize(dp.numShownHotseatIcons, 1); + mSampleHotseat.getLayoutParams().height = grid.cellHeightPx; + mSampleHotseat.setGridSize(grid.numShownHotseatIcons, 1); mSampleHotseat.setPadding(padding.left, 0, padding.right, 0); Button turnOnBtn = findViewById(R.id.turn_predictions_on); @@ -102,8 +103,7 @@ public class HotseatEduDialog extends AbstractSlideInView<Launcher> implements I mDismissBtn.setOnClickListener(this::onDismiss); LinearLayout buttonContainer = findViewById(R.id.button_container); - int adjustedMarginEnd = - dp.getHotseatProfile().getBarEndOffset() - buttonContainer.getPaddingEnd(); + int adjustedMarginEnd = grid.hotseatBarEndOffset - buttonContainer.getPaddingEnd(); if (InvariantDeviceProfile.INSTANCE.get(context) .getDeviceProfile(context).isTaskbarPresent && adjustedMarginEnd > 0) { ((LinearLayout.LayoutParams) buttonContainer.getLayoutParams()).setMarginEnd( @@ -184,9 +184,10 @@ public class HotseatEduDialog extends AbstractSlideInView<Launcher> implements I private void populatePreview(List<WorkspaceItemInfo> predictions) { for (int i = 0; i < mActivityContext.getDeviceProfile().numShownHotseatIcons; i++) { WorkspaceItemInfo info = predictions.get(i); - View icon = mActivityContext.getItemInflater().inflateItem(info, mSampleHotseat); + PredictedAppIcon icon = PredictedAppIcon.createIcon(mSampleHotseat, info); icon.setEnabled(false); icon.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_NO); + icon.verifyHighRes(); CellLayoutLayoutParams lp = new CellLayoutLayoutParams(i, 0, 1, 1); mSampleHotseat.addViewToCellLayout(icon, i, info.getViewId(), lp, true); } diff --git a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java index af68545cc8..c2cabd0557 100644 --- a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java +++ b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java @@ -29,6 +29,7 @@ import android.animation.Animator; import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.content.ComponentName; +import android.util.Log; import android.view.HapticFeedbackConstants; import android.view.View; import android.view.ViewGroup; @@ -46,15 +47,14 @@ import com.android.launcher3.LauncherPrefs; import com.android.launcher3.LauncherSettings; import com.android.launcher3.R; import com.android.launcher3.anim.AnimationSuccessListener; -import com.android.launcher3.celllayout.CellLayoutLayoutParams; import com.android.launcher3.dragndrop.DragController; import com.android.launcher3.dragndrop.DragOptions; import com.android.launcher3.graphics.DragPreviewProvider; import com.android.launcher3.logger.LauncherAtom.ContainerInfo; import com.android.launcher3.logger.LauncherAtom.PredictedHotseatContainer; import com.android.launcher3.logging.InstanceId; +import com.android.launcher3.model.BgDataModel.FixedContainerItems; import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.model.data.PredictedContainerInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.pm.UserCache; import com.android.launcher3.popup.SystemShortcut; @@ -81,9 +81,11 @@ public class HotseatPredictionController implements DragController.DragListener, SystemShortcut.Factory<QuickstepLauncher>, DeviceProfile.OnDeviceProfileChangeListener, DragSource, ViewGroup.OnHierarchyChangeListener { - private static final int FLAG_DRAG_IN_PROGRESS = 1 << 0; - private static final int FLAG_FILL_IN_PROGRESS = 1 << 1; - private static final int FLAG_REMOVING_PREDICTED_ICON = 1 << 2; + private static final String TAG = "HotseatPredictionController"; + private static final int FLAG_UPDATE_PAUSED = 1 << 0; + private static final int FLAG_DRAG_IN_PROGRESS = 1 << 1; + private static final int FLAG_FILL_IN_PROGRESS = 1 << 2; + private static final int FLAG_REMOVING_PREDICTED_ICON = 1 << 3; private int mHotSeatItemsCount; @@ -230,7 +232,7 @@ public class HotseatPredictionController implements DragController.DragListener, if (icon.applyFromWorkspaceItemWithAnimation(predictedItem, numViewsAnimated)) { numViewsAnimated++; } - finishBinding(icon); + icon.finishBinding(mPredictionLongClickListener); } else { newItems.add(predictedItem); } @@ -244,9 +246,9 @@ public class HotseatPredictionController implements DragController.DragListener, private void bindItems(List<WorkspaceItemInfo> itemsToAdd, boolean animate) { AnimatorSet animationSet = new AnimatorSet(); for (WorkspaceItemInfo item : itemsToAdd) { - View icon = mLauncher.getItemInflater().inflateItem(item, mHotseat); + PredictedAppIcon icon = PredictedAppIcon.createIcon(mHotseat, item); mLauncher.getWorkspace().addInScreenFromBind(icon, item); - finishBinding(icon); + icon.finishBinding(mPredictionLongClickListener); if (animate) { animationSet.play(ObjectAnimator.ofFloat(icon, SCALE_PROPERTY, 0.2f, 1)); } @@ -260,11 +262,6 @@ public class HotseatPredictionController implements DragController.DragListener, } } - private void finishBinding(View view) { - view.setOnLongClickListener(mPredictionLongClickListener); - ((CellLayoutLayoutParams) view.getLayoutParams()).canReorder = false; - } - private void removeOutlineDrawings() { if (mOutlineDrawings.isEmpty()) return; for (PredictedAppIcon.PredictedIconOutlineDrawing outlineDrawing : mOutlineDrawings) { @@ -282,11 +279,33 @@ public class HotseatPredictionController implements DragController.DragListener, mLauncher.removeOnDeviceProfileChangeListener(this); } + /** + * start and pauses predicted apps update on the hotseat + */ + public void setPauseUIUpdate(boolean paused) { + mPauseFlags = paused + ? (mPauseFlags | FLAG_UPDATE_PAUSED) + : (mPauseFlags & ~FLAG_UPDATE_PAUSED); + if (!paused) { + fillGapsWithPrediction(); + } + } + + /** + * Ensures that if the flag FLAG_UPDATE_PAUSED is active we set it to false. + */ + public void verifyUIUpdateNotPaused() { + if ((mPauseFlags & FLAG_UPDATE_PAUSED) != 0) { + setPauseUIUpdate(false); + Log.e(TAG, "FLAG_UPDATE_PAUSED should not be set to true (see b/339700174)"); + } + } + /** * Sets or updates the predicted items */ - public void setPredictedItems(PredictedContainerInfo items) { - mPredictedItems = items.getContents(); + public void setPredictedItems(FixedContainerItems items) { + mPredictedItems = new ArrayList(items.items); if (mPredictedItems.isEmpty()) { HotseatRestoreHelper.restoreBackup(mLauncher); } @@ -484,18 +503,10 @@ public class HotseatPredictionController implements DragController.DragListener, private class PinPrediction extends SystemShortcut<QuickstepLauncher> { private PinPrediction(QuickstepLauncher target, ItemInfo itemInfo, View originalView) { - super(getDrawableId(), R.string.pin_prediction, target, + super(R.drawable.ic_pin, R.string.pin_prediction, target, itemInfo, originalView); } - public static int getDrawableId() { - if (Flags.enableLauncherVisualRefresh()) { - return R.drawable.keep_24px; - } else { - return R.drawable.ic_pin; - } - } - @Override public void onClick(View view) { dismissTaskMenuView(); @@ -511,6 +522,7 @@ public class HotseatPredictionController implements DragController.DragListener, private static String getStateString(int flags) { StringJoiner str = new StringJoiner("|"); + appendFlag(str, flags, FLAG_UPDATE_PAUSED, "FLAG_UPDATE_PAUSED"); appendFlag(str, flags, FLAG_DRAG_IN_PROGRESS, "FLAG_DRAG_IN_PROGRESS"); appendFlag(str, flags, FLAG_FILL_IN_PROGRESS, "FLAG_FILL_IN_PROGRESS"); appendFlag(str, flags, FLAG_REMOVING_PREDICTED_ICON, diff --git a/quickstep/src/com/android/launcher3/model/AppEventProducer.java b/quickstep/src/com/android/launcher3/model/AppEventProducer.java index 880f1fd969..8ca1cd9e3d 100644 --- a/quickstep/src/com/android/launcher3/model/AppEventProducer.java +++ b/quickstep/src/com/android/launcher3/model/AppEventProducer.java @@ -22,8 +22,9 @@ import static android.app.prediction.AppTargetEvent.ACTION_UNDISMISS; import static android.app.prediction.AppTargetEvent.ACTION_UNPIN; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT_PREDICTION; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APPS_PREDICTION; +import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_PREDICTION; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_WIDGETS_PREDICTION; +import static com.android.launcher3.logger.LauncherAtomExtensions.ExtendedContainers.ContainerCase.DEVICE_SEARCH_RESULT_CONTAINER; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_APP_LAUNCH_DRAGDROP; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_APP_LAUNCH_TAP; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_DISMISS_PREDICTION_UNDO; @@ -41,7 +42,6 @@ import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCH import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TASK_LAUNCH_SWIPE_DOWN; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TASK_LAUNCH_TAP; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WIDGET_ADD_BUTTON_TAP; -import static com.android.launcher3.model.PredictionHelper.getLocationString; import static com.android.launcher3.model.PredictionHelper.isTrackedForHotseatPrediction; import static com.android.launcher3.model.PredictionHelper.isTrackedForWidgetPrediction; import static com.android.launcher3.util.Executors.MODEL_EXECUTOR; @@ -65,6 +65,10 @@ import androidx.annotation.WorkerThread; import com.android.launcher3.Utilities; import com.android.launcher3.logger.LauncherAtom; +import com.android.launcher3.logger.LauncherAtom.ContainerInfo; +import com.android.launcher3.logger.LauncherAtom.FolderContainer; +import com.android.launcher3.logger.LauncherAtom.HotseatContainer; +import com.android.launcher3.logger.LauncherAtom.WorkspaceContainer; import com.android.launcher3.logging.StatsLogManager.EventEnum; import com.android.launcher3.pm.UserCache; import com.android.launcher3.shortcuts.ShortcutRequest; @@ -72,6 +76,7 @@ import com.android.launcher3.util.UserIconInfo; import com.android.quickstep.logging.StatsLogCompatManager.StatsLogConsumer; import com.android.systemui.shared.system.SysUiStatsLog; +import java.util.Locale; import java.util.Optional; import java.util.function.ObjIntConsumer; @@ -116,10 +121,7 @@ public class AppEventProducer implements StatsLogConsumer { // TODO: remove the running test check when b/231648228 is fixed. if (target != null && !Utilities.isRunningInTestHarness()) { AppTargetEvent event = new AppTargetEvent.Builder(target, eventId) - .setLaunchLocation(getLocationString( - locationInfo.getContainerInfo(), - locationInfo.getWidget().getSpanX(), - locationInfo.getWidget().getSpanY())) + .setLaunchLocation(getContainer(locationInfo)) .build(); mMessageHandler.obtainMessage(MSG_LAUNCH, targetPredictor, 0, event).sendToTarget(); } @@ -133,10 +135,10 @@ public class AppEventProducer implements StatsLogConsumer { || event == LAUNCHER_QUICKSWITCH_RIGHT || event == LAUNCHER_QUICKSWITCH_LEFT || event == LAUNCHER_APP_LAUNCH_DRAGDROP) { - sendEvent(atomInfo, ACTION_LAUNCH, CONTAINER_ALL_APPS_PREDICTION); + sendEvent(atomInfo, ACTION_LAUNCH, CONTAINER_PREDICTION); } else if (event == LAUNCHER_ITEM_DROPPED_ON_DONT_SUGGEST || event == LAUNCHER_SYSTEM_SHORTCUT_DONT_SUGGEST_APP_TAP) { - sendEvent(atomInfo, ACTION_DISMISS, CONTAINER_ALL_APPS_PREDICTION); + sendEvent(atomInfo, ACTION_DISMISS, CONTAINER_PREDICTION); } else if (event == LAUNCHER_ITEM_DRAG_STARTED) { mLastDragItem = atomInfo; } else if (event == LAUNCHER_ITEM_DROP_COMPLETED) { @@ -181,9 +183,9 @@ public class AppEventProducer implements StatsLogConsumer { AppTarget target = new AppTarget.Builder(new AppTargetId("launcher:launcher"), mContext.getPackageName(), Process.myUserHandle()) .build(); - sendEvent(target, atomInfo, ACTION_LAUNCH, CONTAINER_ALL_APPS_PREDICTION); + sendEvent(target, atomInfo, ACTION_LAUNCH, CONTAINER_PREDICTION); } else { - sendEvent(atomInfo, ACTION_LAUNCH, CONTAINER_ALL_APPS_PREDICTION); + sendEvent(atomInfo, ACTION_LAUNCH, CONTAINER_PREDICTION); } } else if (event == LAUNCHER_DISMISS_PREDICTION_UNDO) { sendEvent(atomInfo, ACTION_UNDISMISS, CONTAINER_HOTSEAT_PREDICTION); @@ -275,6 +277,68 @@ public class AppEventProducer implements StatsLogConsumer { } } + private String getContainer(LauncherAtom.ItemInfo info) { + ContainerInfo ci = info.getContainerInfo(); + switch (ci.getContainerCase()) { + case WORKSPACE: { + // In case the item type is not widgets, the spaceX and spanY default to 1. + int spanX = info.getWidget().getSpanX(); + int spanY = info.getWidget().getSpanY(); + return getWorkspaceContainerString(ci.getWorkspace(), spanX, spanY); + } + case HOTSEAT: { + return getHotseatContainerString(ci.getHotseat()); + } + case TASK_SWITCHER_CONTAINER: { + return "task-switcher"; + } + case ALL_APPS_CONTAINER: { + return "all-apps"; + } + case PREDICTED_HOTSEAT_CONTAINER: { + return "predictions/hotseat"; + } + case PREDICTION_CONTAINER: { + return "predictions"; + } + case SHORTCUTS_CONTAINER: { + return "deep-shortcuts"; + } + case TASK_BAR_CONTAINER: { + return "taskbar"; + } + case FOLDER: { + FolderContainer fc = ci.getFolder(); + switch (fc.getParentContainerCase()) { + case WORKSPACE: + return "folder/" + getWorkspaceContainerString(fc.getWorkspace(), 1, 1); + case HOTSEAT: + return "folder/" + getHotseatContainerString(fc.getHotseat()); + } + return "folder"; + } + case SEARCH_RESULT_CONTAINER: + return "search-results"; + case EXTENDED_CONTAINERS: { + if (ci.getExtendedContainers().getContainerCase() + == DEVICE_SEARCH_RESULT_CONTAINER) { + return "search-results"; + } + } + default: // fall out + } + return ""; + } + + private static String getWorkspaceContainerString(WorkspaceContainer wc, int spanX, int spanY) { + return String.format(Locale.ENGLISH, "workspace/%d/[%d,%d]/[%d,%d]", + wc.getPageIndex(), wc.getGridX(), wc.getGridY(), spanX, spanY); + } + + private static String getHotseatContainerString(HotseatContainer hc) { + return String.format(Locale.ENGLISH, "hotseat/%1$d/[%1$d,0]/[1,1]", hc.getIndex()); + } + private static ComponentName parseNullable(String componentNameString) { return TextUtils.isEmpty(componentNameString) ? null : ComponentName.unflattenFromString(componentNameString); diff --git a/quickstep/src/com/android/launcher3/model/PredictionUpdateTask.java b/quickstep/src/com/android/launcher3/model/PredictionUpdateTask.java index 1b6050d000..3544844bd2 100644 --- a/quickstep/src/com/android/launcher3/model/PredictionUpdateTask.java +++ b/quickstep/src/com/android/launcher3/model/PredictionUpdateTask.java @@ -18,6 +18,7 @@ package com.android.launcher3.model; import static com.android.launcher3.EncryptionType.ENCRYPTED; import static com.android.launcher3.LauncherPrefs.nonRestorableItem; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; +import static com.android.launcher3.icons.cache.CacheLookupFlag.DEFAULT_LOOKUP_FLAG; import static com.android.quickstep.InstantAppResolverImpl.COMPONENT_CLASS_MARKER; import android.app.prediction.AppTarget; @@ -34,13 +35,13 @@ import com.android.launcher3.ConstantItem; import com.android.launcher3.LauncherModel.ModelUpdateTask; import com.android.launcher3.LauncherPrefs; import com.android.launcher3.icons.IconCache; +import com.android.launcher3.model.BgDataModel.FixedContainerItems; +import com.android.launcher3.model.QuickstepModelDelegate.PredictorState; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.model.data.PredictedContainerInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; import java.util.ArrayList; -import java.util.Collections; import java.util.List; import java.util.Set; import java.util.stream.Collectors; @@ -71,9 +72,8 @@ public class PredictionUpdateTask implements ModelUpdateTask { LauncherPrefs.get(context).put(LAST_PREDICTION_ENABLED, !mTargets.isEmpty()); Set<UserHandle> usersForChangedShortcuts = - dataModel.itemsIdMap.getPredictedContents(mPredictorState.containerId).stream() - .filter(info -> info != null && - info.itemType == ITEM_TYPE_DEEP_SHORTCUT) + dataModel.extraItems.get(mPredictorState.containerId).items.stream() + .filter(info -> info.itemType == ITEM_TYPE_DEEP_SHORTCUT) .map(info -> info.user) .collect(Collectors.toSet()); @@ -107,7 +107,7 @@ public class PredictionUpdateTask implements ModelUpdateTask { return null; } AppInfo ai = new AppInfo(context, lai, user); - iconCache.getTitleAndIcon(ai, lai, mPredictorState.lookupFlag); + iconCache.getTitleAndIcon(ai, lai, DEFAULT_LOOKUP_FLAG); return ai.makeWorkspaceItem(context); }); @@ -120,12 +120,12 @@ public class PredictionUpdateTask implements ModelUpdateTask { items.add(itemInfo); } - PredictedContainerInfo pci = new PredictedContainerInfo(mPredictorState.containerId, items); - dataModel.updateAndDispatchItem(pci /* item */, null /* owner */); - taskController.bindUpdatedWorkspaceItems(Collections.singleton(pci)); + FixedContainerItems fci = new FixedContainerItems(mPredictorState.containerId, items); + dataModel.extraItems.put(fci.containerId, fci); + taskController.bindExtraContainerItems(fci); usersForChangedShortcuts.forEach(u -> dataModel.updateShortcutPinnedState(context, u)); // Save to disk - mPredictorState.storage.write(context, pci.getContents()); + mPredictorState.storage.write(context, fci.items); } } diff --git a/quickstep/src/com/android/launcher3/model/QuickstepModelDelegate.java b/quickstep/src/com/android/launcher3/model/QuickstepModelDelegate.java index 3a481a1a27..05ae150544 100644 --- a/quickstep/src/com/android/launcher3/model/QuickstepModelDelegate.java +++ b/quickstep/src/com/android/launcher3/model/QuickstepModelDelegate.java @@ -15,19 +15,21 @@ */ package com.android.launcher3.model; -import static android.Manifest.permission.PACKAGE_USAGE_STATS; import static android.text.format.DateUtils.DAY_IN_MILLIS; import static android.text.format.DateUtils.formatElapsedTime; import static com.android.launcher3.EncryptionType.ENCRYPTED; import static com.android.launcher3.LauncherPrefs.nonRestorableItem; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APPS_PREDICTION; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT_PREDICTION; +import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_PREDICTION; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_WIDGETS_PREDICTION; import static com.android.launcher3.LauncherSettings.Favorites.DESKTOP_ICON_FLAG; +import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APPLICATION; +import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; +import static com.android.launcher3.hybridhotseat.HotseatPredictionModel.convertDataModelToAppTargetBundle; import static com.android.launcher3.icons.cache.CacheLookupFlag.DEFAULT_LOOKUP_FLAG; -import static com.android.launcher3.model.PredictionHelper.getBundleForHotseatPredictions; -import static com.android.launcher3.model.PredictionHelper.getBundleForWidgetPredictions; +import static com.android.launcher3.model.PredictionHelper.getAppTargetFromItemInfo; +import static com.android.launcher3.model.PredictionHelper.wrapAppTargetWithItemLocation; import static com.android.launcher3.util.Executors.MODEL_EXECUTOR; import android.Manifest; @@ -36,6 +38,8 @@ import static java.util.stream.Collectors.toCollection; import android.app.StatsManager; import android.app.prediction.AppPredictionContext; import android.app.prediction.AppPredictionManager; +import android.app.prediction.AppPredictor; +import android.app.prediction.AppTarget; import android.app.prediction.AppTargetEvent; import android.content.Context; import android.content.Intent; @@ -49,6 +53,8 @@ import android.text.TextUtils; import android.util.Log; import android.util.StatsEvent; +import androidx.annotation.AnyThread; +import androidx.annotation.CallSuper; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; @@ -60,21 +66,33 @@ import com.android.launcher3.LauncherAppState; import com.android.launcher3.Utilities; import com.android.launcher3.LauncherPrefs; import com.android.launcher3.dagger.ApplicationContext; +import com.android.launcher3.icons.cache.CacheLookupFlag; import com.android.launcher3.logger.LauncherAtom; import com.android.launcher3.logging.InstanceId; import com.android.launcher3.logging.InstanceIdSequence; +import com.android.launcher3.model.BgDataModel.FixedContainerItems; +import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.CollectionInfo; import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.model.data.PredictedContainerInfo; -import com.android.launcher3.model.data.WorkspaceData; +import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.pm.UserCache; +import com.android.launcher3.shortcuts.ShortcutKey; +import com.android.launcher3.util.ApiWrapper; +import com.android.launcher3.util.Executors; import com.android.launcher3.util.IntSparseArrayMap; +import com.android.launcher3.util.PackageManagerHelper; +import com.android.launcher3.util.PersistedItemArray; import com.android.quickstep.logging.SettingsChangeLogger; import com.android.quickstep.logging.StatsLogCompatManager; import com.android.quickstep.util.ContextualSearchStateManager; import com.android.systemui.shared.system.SysUiStatsLog; import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.stream.IntStream; import javax.inject.Inject; import javax.inject.Named; @@ -87,6 +105,7 @@ import app.lawnchair.compat.LawnchairQuickstepCompat; */ public class QuickstepModelDelegate extends ModelDelegate { + private static final String BUNDLE_KEY_ADDED_APP_WIDGETS = "added_app_widgets"; private static final int NUM_OF_RECOMMENDED_WIDGETS_PREDICATION = 20; private static final boolean IS_DEBUG = false; @@ -96,18 +115,17 @@ public class QuickstepModelDelegate extends ModelDelegate { nonRestorableItem("LAST_SNAPSHOT_TIME_MILLIS", 0L, ENCRYPTED); @VisibleForTesting - final PredictorState mAllPredictionAppsState = new PredictorState( - CONTAINER_ALL_APPS_PREDICTION, "all_apps_predictions", DEFAULT_LOOKUP_FLAG); + final PredictorState mAllAppsState = new PredictorState( + CONTAINER_PREDICTION, "all_apps_predictions", DEFAULT_LOOKUP_FLAG); @VisibleForTesting - final PredictorState mHotseatPredictionState = new PredictorState( + final PredictorState mHotseatState = new PredictorState( CONTAINER_HOTSEAT_PREDICTION, "hotseat_predictions", DESKTOP_ICON_FLAG); @VisibleForTesting final PredictorState mWidgetsRecommendationState = new PredictorState( CONTAINER_WIDGETS_PREDICTION, "widgets_prediction", DESKTOP_ICON_FLAG); private final InvariantDeviceProfile mIDP; - private final UserCache mUserCache; - private final PredictedItemFactory.Factory mItemParserFactory; + private final PackageManagerHelper mPmHelper; private final AppEventProducer mAppEventProducer; private final StatsManager mStatsManager; @@ -117,15 +135,11 @@ public class QuickstepModelDelegate extends ModelDelegate { @Inject public QuickstepModelDelegate(@ApplicationContext Context context, InvariantDeviceProfile idp, - UserCache userCache, - PredictedItemFactory.Factory itemParserFactory, + PackageManagerHelper pmHelper, @Nullable @Named("ICONS_DB") String dbFileName) { super(context); - - mIDP = idp; - mUserCache = userCache; - mItemParserFactory = itemParserFactory; + mPmHelper = pmHelper; mAppEventProducer = new AppEventProducer(context, this::onAppTargetEvent); StatsLogCompatManager.LOGS_CONSUMER.add(mAppEventProducer); @@ -136,26 +150,76 @@ public class QuickstepModelDelegate extends ModelDelegate { ? null : context.getSystemService(StatsManager.class); } + @CallSuper @Override - public void loadAndAddExtraModelItems(@NonNull IntSparseArrayMap<ItemInfo> outLoadedItems) { - loadAndBindPredictedItems( - mIDP.numDatabaseHotseatIcons, mHotseatPredictionState, outLoadedItems); - loadAndBindPredictedItems(mIDP.numDatabaseAllAppsColumns, mAllPredictionAppsState, - outLoadedItems); + public void loadAndBindWorkspaceItems(@NonNull UserManagerState ums, + @NonNull BgDataModel.Callbacks[] callbacks, + @NonNull Map<ShortcutKey, ShortcutInfo> pinnedShortcuts) { + loadAndBindItems(ums, pinnedShortcuts, callbacks, mIDP.numDatabaseHotseatIcons, + mHotseatState); + } - // Widgets prediction isn't used frequently. And thus, it is not persisted on disk. - PredictedContainerInfo widgetPredictionFCI = new PredictedContainerInfo( - mWidgetsRecommendationState.containerId, new ArrayList<>()); - outLoadedItems.put(mWidgetsRecommendationState.containerId, widgetPredictionFCI); + @CallSuper + @Override + public void loadAndBindAllAppsItems(@NonNull UserManagerState ums, + @NonNull BgDataModel.Callbacks[] callbacks, + @NonNull Map<ShortcutKey, ShortcutInfo> pinnedShortcuts) { + loadAndBindItems(ums, pinnedShortcuts, callbacks, mIDP.numDatabaseAllAppsColumns, + mAllAppsState); } @WorkerThread - private void loadAndBindPredictedItems(int numColumns, - @NonNull PredictorState state, @NonNull IntSparseArrayMap<ItemInfo> outLoadedItems) { - PredictedItemFactory parser = mItemParserFactory.newParser(numColumns, state); - PredictedContainerInfo fci = new PredictedContainerInfo(state.containerId, - state.storage.read(mContext, parser, mUserCache::getUserForSerialNumber)); - outLoadedItems.put(state.containerId, fci); + private void loadAndBindItems(@NonNull UserManagerState ums, + @NonNull Map<ShortcutKey, ShortcutInfo> pinnedShortcuts, + @NonNull BgDataModel.Callbacks[] callbacks, + int numColumns, @NonNull PredictorState state) { + // TODO: Implement caching and preloading + + WorkspaceItemFactory factory = + new WorkspaceItemFactory(mContext, ums, mPmHelper, pinnedShortcuts, numColumns, + state.containerId, state.lookupFlag); + FixedContainerItems fci = new FixedContainerItems(state.containerId, + state.storage.read(mContext, factory, ums.allUsers::get)); + mDataModel.extraItems.put(state.containerId, fci); + } + + @CallSuper + @Override + public void loadAndBindOtherItems(@NonNull BgDataModel.Callbacks[] callbacks) { + FixedContainerItems widgetPredictionFCI = new FixedContainerItems( + mWidgetsRecommendationState.containerId, new ArrayList<>()); + + // Widgets prediction isn't used frequently. And thus, it is not persisted on disk. + mDataModel.extraItems.put(mWidgetsRecommendationState.containerId, widgetPredictionFCI); + + bindPredictionItems(callbacks, widgetPredictionFCI); + loadStringCache(mDataModel.stringCache); + } + + @AnyThread + private void bindPredictionItems(@NonNull BgDataModel.Callbacks[] callbacks, + @NonNull FixedContainerItems fci) { + Executors.MAIN_EXECUTOR.execute(() -> { + for (BgDataModel.Callbacks c : callbacks) { + c.bindExtraContainerItems(fci); + } + }); + } + + @Override + @WorkerThread + public void bindAllModelExtras(@NonNull BgDataModel.Callbacks[] callbacks) { + Iterable<FixedContainerItems> containerItems; + synchronized (mDataModel.extraItems) { + containerItems = mDataModel.extraItems.clone(); + } + Executors.MAIN_EXECUTOR.execute(() -> { + for (BgDataModel.Callbacks c : callbacks) { + for (FixedContainerItems fci : containerItems) { + c.bindExtraContainerItems(fci); + } + } + }); } public void markActive() { @@ -190,9 +254,9 @@ public class QuickstepModelDelegate extends ModelDelegate { elapsedTime)); } } else { - WorkspaceData itemsIdMap; + IntSparseArrayMap<ItemInfo> itemsIdMap; synchronized (mDataModel) { - itemsIdMap = mDataModel.itemsIdMap.copy(); + itemsIdMap = mDataModel.itemsIdMap.clone(); } InstanceId instanceId = new InstanceIdSequence().newInstanceId(); for (ItemInfo info : itemsIdMap) { @@ -223,9 +287,9 @@ public class QuickstepModelDelegate extends ModelDelegate { MODEL_EXECUTOR, (i, eventList) -> { InstanceId instanceId = new InstanceIdSequence().newInstanceId(); - WorkspaceData itemsIdMap; + IntSparseArrayMap<ItemInfo> itemsIdMap; synchronized (mDataModel) { - itemsIdMap = mDataModel.itemsIdMap.copy(); + itemsIdMap = mDataModel.itemsIdMap.clone(); } for (ItemInfo info : itemsIdMap) { @@ -239,7 +303,7 @@ public class QuickstepModelDelegate extends ModelDelegate { Log.d(TAG, String.format( "Successfully logged %d workspace items with instanceId=%d", - eventList.size(), instanceId.getId())); + itemsIdMap.size(), instanceId.getId())); additionalSnapshotEvents(instanceId); SettingsChangeLogger.INSTANCE.get(mContext).logSnapshot(instanceId); return StatsManager.PULL_SUCCESS; @@ -253,7 +317,7 @@ public class QuickstepModelDelegate extends ModelDelegate { } private static CollectionInfo getContainer( - ItemInfo info, WorkspaceData itemsIdMap) { + ItemInfo info, IntSparseArrayMap<ItemInfo> itemsIdMap) { if (info.container > 0) { ItemInfo containerInfo = itemsIdMap.get(info.container); @@ -272,8 +336,12 @@ public class QuickstepModelDelegate extends ModelDelegate { @Override public void validateData() { super.validateData(); - mAllPredictionAppsState.requestPredictionUpdate(); - mWidgetsRecommendationState.requestPredictionUpdate(); + if (mAllAppsState.predictor != null) { + mAllAppsState.predictor.requestPredictionUpdate(); + } + if (mWidgetsRecommendationState.predictor != null) { + mWidgetsRecommendationState.predictor.requestPredictionUpdate(); + } } @WorkerThread @@ -293,8 +361,8 @@ public class QuickstepModelDelegate extends ModelDelegate { } private void destroyPredictors() { - mAllPredictionAppsState.destroyPredictor(); - mHotseatPredictionState.destroyPredictor(); + mAllAppsState.destroyPredictor(); + mHotseatState.destroyPredictor(); mWidgetsRecommendationState.destroyPredictor(); } @@ -309,82 +377,251 @@ public class QuickstepModelDelegate extends ModelDelegate { return; } - int usagePerm = mContext.checkCallingOrSelfPermission(PACKAGE_USAGE_STATS); + int usagePerm = mContext.checkCallingOrSelfPermission(Manifest.permission.PACKAGE_USAGE_STATS); if (usagePerm != PackageManager.PERMISSION_GRANTED) return; - mAllPredictionAppsState.registerPredictor(mContext, + registerPredictor(mAllAppsState, apm.createAppPredictionSession( new AppPredictionContext.Builder(mContext) - .setUiSurface("home") - .setPredictedTargetCount(mIDP.numDatabaseAllAppsColumns) - .build(), - mModel, - PredictionUpdateTask::new); - + .setUiSurface("home") + .setPredictedTargetCount(mIDP.numDatabaseAllAppsColumns) + .build())); // TODO: get bundle - registerHotseatPredictor(mContext); + registerHotseatPredictor(apm, mContext); - mWidgetsRecommendationState.registerPredictor(mContext, + registerWidgetsPredictor(apm.createAppPredictionSession( new AppPredictionContext.Builder(mContext) - .setUiSurface("widgets") - .setExtras(getBundleForWidgetPredictions(mContext, mDataModel)) - .setPredictedTargetCount(NUM_OF_RECOMMENDED_WIDGETS_PREDICATION) - .build(), - mModel, - WidgetsPredictionUpdateTask::new); + .setUiSurface("widgets") + .setExtras(getBundleForWidgetsOnWorkspace(mContext, mDataModel)) + .setPredictedTargetCount(NUM_OF_RECOMMENDED_WIDGETS_PREDICATION) + .build())); } @WorkerThread private void recreateHotseatPredictor() { - mHotseatPredictionState.destroyPredictor(); - - AppPredictionManager apm = mContext.getSystemService(AppPredictionManager.class); - if (apm == null) return; - - int usagePerm = mContext.checkCallingOrSelfPermission(PACKAGE_USAGE_STATS); - if (usagePerm != PackageManager.PERMISSION_GRANTED) return; - - if (mActive) { - registerHotseatPredictor(mContext); + mHotseatState.destroyPredictor(); + if (!mActive) { + return; } + AppPredictionManager apm = mContext.getSystemService(AppPredictionManager.class); + if (apm == null) { + return; + } + registerHotseatPredictor(apm, mContext); } - private void registerHotseatPredictor(Context context) { - mHotseatPredictionState.registerPredictor(context, + private void registerHotseatPredictor(AppPredictionManager apm, Context context) { + registerPredictor(mHotseatState, apm.createAppPredictionSession( new AppPredictionContext.Builder(context) - .setUiSurface("hotseat") - .setPredictedTargetCount(mIDP.numDatabaseHotseatIcons) - .setExtras(getBundleForHotseatPredictions(context, mDataModel)) - .build(), - mModel, PredictionUpdateTask::new); + .setUiSurface("hotseat") + .setPredictedTargetCount(mIDP.numDatabaseHotseatIcons) + .setExtras(convertDataModelToAppTargetBundle(context, mDataModel)) + .build())); + } + + private void registerPredictor(PredictorState state, AppPredictor predictor) { + state.setTargets(Collections.emptyList()); + state.predictor = predictor; + state.predictor.registerPredictionUpdates( + MODEL_EXECUTOR, t -> handleUpdate(state, t)); + state.predictor.requestPredictionUpdate(); + } + + private void handleUpdate(PredictorState state, List<AppTarget> targets) { + if (state.setTargets(targets)) { + // No diff, skip + return; + } + mModel.enqueueModelUpdateTask(new PredictionUpdateTask(state, targets)); + } + + private void registerWidgetsPredictor(AppPredictor predictor) { + mWidgetsRecommendationState.predictor = predictor; + mWidgetsRecommendationState.predictor.registerPredictionUpdates( + MODEL_EXECUTOR, targets -> { + if (mWidgetsRecommendationState.setTargets(targets)) { + // No diff, skip + return; + } + mModel.enqueueModelUpdateTask( + new WidgetsPredictionUpdateTask(mWidgetsRecommendationState, targets)); + }); + mWidgetsRecommendationState.predictor.requestPredictionUpdate(); } @VisibleForTesting void onAppTargetEvent(AppTargetEvent event, int client) { PredictorState state; switch(client) { - case CONTAINER_ALL_APPS_PREDICTION: - state = mAllPredictionAppsState; + case CONTAINER_PREDICTION: + state = mAllAppsState; break; case CONTAINER_WIDGETS_PREDICTION: state = mWidgetsRecommendationState; break; case CONTAINER_HOTSEAT_PREDICTION: default: - state = mHotseatPredictionState; + state = mHotseatState; break; } + if (state.predictor != null) { + state.predictor.notifyAppTargetEvent(event); + Log.d(TAG, "notifyAppTargetEvent action=" + event.getAction() + + " launchLocation=" + event.getLaunchLocation()); + if (state == mHotseatState + && (event.getAction() == AppTargetEvent.ACTION_PIN + || event.getAction() == AppTargetEvent.ACTION_UNPIN)) { + // Recreate hot seat predictor when we need to query for hot seat due to pin or + // unpin app icons. + recreateHotseatPredictor(); + } + } + } - state.notifyAppTargetEvent(event); - Log.d(TAG, "notifyAppTargetEvent action=" + event.getAction() - + " launchLocation=" + event.getLaunchLocation()); - if (state == mHotseatPredictionState - && (event.getAction() == AppTargetEvent.ACTION_PIN - || event.getAction() == AppTargetEvent.ACTION_UNPIN)) { - // Recreate hot seat predictor when we need to query for hot seat due to pin or - // unpin app icons. - recreateHotseatPredictor(); + private Bundle getBundleForWidgetsOnWorkspace(Context context, BgDataModel dataModel) { + Bundle bundle = new Bundle(); + ArrayList<AppTargetEvent> widgetEvents = + dataModel.itemsIdMap.stream() + .filter(PredictionHelper::isTrackedForWidgetPrediction) + .map(item -> { + AppTarget target = getAppTargetFromItemInfo(context, item); + if (target == null) return null; + return wrapAppTargetWithItemLocation( + target, AppTargetEvent.ACTION_PIN, item); + }) + .filter(Objects::nonNull) + .collect(toCollection(ArrayList::new)); + bundle.putParcelableArrayList(BUNDLE_KEY_ADDED_APP_WIDGETS, widgetEvents); + return bundle; + } + + static class PredictorState { + + public final int containerId; + public final PersistedItemArray<ItemInfo> storage; + public AppPredictor predictor; + public CacheLookupFlag lookupFlag; + + private List<AppTarget> mLastTargets; + + PredictorState(int containerId, String storageName, CacheLookupFlag lookupFlag) { + this.containerId = containerId; + storage = new PersistedItemArray<>(storageName); + mLastTargets = Collections.emptyList(); + this.lookupFlag = lookupFlag; + } + + public void destroyPredictor() { + if (predictor != null) { + predictor.destroy(); + predictor = null; + } + } + + /** + * Sets the new targets and returns true if it was the same as before. + */ + boolean setTargets(List<AppTarget> newTargets) { + List<AppTarget> oldTargets = mLastTargets; + mLastTargets = newTargets; + + int size = oldTargets.size(); + return size == newTargets.size() && IntStream.range(0, size) + .allMatch(i -> areAppTargetsSame(oldTargets.get(i), newTargets.get(i))); + } + } + + /** + * Compares two targets for the properties which we care about + */ + private static boolean areAppTargetsSame(AppTarget t1, AppTarget t2) { + if (!Objects.equals(t1.getPackageName(), t2.getPackageName()) + || !Objects.equals(t1.getUser(), t2.getUser()) + || !Objects.equals(t1.getClassName(), t2.getClassName())) { + return false; + } + + ShortcutInfo s1 = t1.getShortcutInfo(); + ShortcutInfo s2 = t2.getShortcutInfo(); + if (s1 != null) { + if (s2 == null || !Objects.equals(s1.getId(), s2.getId())) { + return false; + } + } else if (s2 != null) { + return false; + } + return true; + } + + private static class WorkspaceItemFactory implements PersistedItemArray.ItemFactory<ItemInfo> { + + private final Context mContext; + private final UserManagerState mUMS; + private final PackageManagerHelper mPmHelper; + private final Map<ShortcutKey, ShortcutInfo> mPinnedShortcuts; + private final int mMaxCount; + private final int mContainer; + private final CacheLookupFlag mLookupFlag; + + private int mReadCount = 0; + + protected WorkspaceItemFactory( + Context context, UserManagerState ums, + PackageManagerHelper pmHelper, Map<ShortcutKey, ShortcutInfo> pinnedShortcuts, + int maxCount, int container, CacheLookupFlag lookupFlag) { + mContext = context; + mUMS = ums; + mPmHelper = pmHelper; + mPinnedShortcuts = pinnedShortcuts; + mMaxCount = maxCount; + mContainer = container; + mLookupFlag = lookupFlag; + } + + @Nullable + @Override + public ItemInfo createInfo(int itemType, UserHandle user, Intent intent) { + if (mReadCount >= mMaxCount) { + return null; + } + switch (itemType) { + case ITEM_TYPE_APPLICATION: { + LauncherActivityInfo lai = mContext + .getSystemService(LauncherApps.class) + .resolveActivity(intent, user); + if (lai == null) { + return null; + } + AppInfo info = new AppInfo( + lai, + UserCache.INSTANCE.get(mContext).getUserInfo(user), + ApiWrapper.INSTANCE.get(mContext), + mPmHelper, + mUMS.isUserQuiet(user)); + info.container = mContainer; + LauncherAppState.getInstance(mContext).getIconCache() + .getTitleAndIcon(info, lai, mLookupFlag); + mReadCount++; + return info.makeWorkspaceItem(mContext); + } + case ITEM_TYPE_DEEP_SHORTCUT: { + ShortcutKey key = ShortcutKey.fromIntent(intent, user); + if (key == null) { + return null; + } + ShortcutInfo si = mPinnedShortcuts.get(key); + if (si == null) { + return null; + } + WorkspaceItemInfo wii = new WorkspaceItemInfo(si, mContext); + wii.container = mContainer; + LauncherAppState.getInstance(mContext).getIconCache().getShortcutIcon(wii, si); + mReadCount++; + return wii; + } + } + return null; } } } diff --git a/quickstep/src/com/android/launcher3/model/WellbeingModel.java b/quickstep/src/com/android/launcher3/model/WellbeingModel.java index c1d8c01230..09433c51a3 100644 --- a/quickstep/src/com/android/launcher3/model/WellbeingModel.java +++ b/quickstep/src/com/android/launcher3/model/WellbeingModel.java @@ -71,7 +71,7 @@ import javax.inject.Inject; public final class WellbeingModel implements SafeCloseable { private static final String TAG = "WellbeingModel"; private static final int[] RETRY_TIMES_MS = {5000, 15000, 30000}; - private static final boolean DEBUG = true; + private static final boolean DEBUG = false; // Welbeing contract private static final String PATH_ACTIONS = "actions"; @@ -181,7 +181,7 @@ public final class WellbeingModel implements SafeCloseable { // Work profile apps are not recognized by digital wellbeing. if (userId != UserHandle.myUserId()) { if (DEBUG || mIsInTest) { - Log.w(TAG, "getShortcutForApp [" + packageName + "]: not current user"); + Log.d(TAG, "getShortcutForApp [" + packageName + "]: not current user"); } return null; } @@ -191,12 +191,12 @@ public final class WellbeingModel implements SafeCloseable { final RemoteAction action = actionId != null ? mActionIdMap.get(actionId) : null; if (action == null) { if (DEBUG || mIsInTest) { - Log.w(TAG, "getShortcutForApp [" + packageName + "]: no action"); + Log.d(TAG, "getShortcutForApp [" + packageName + "]: no action"); } return null; } if (DEBUG || mIsInTest) { - Log.w(TAG, + Log.d(TAG, "getShortcutForApp [" + packageName + "]: action: '" + action.getTitle() + "'"); } diff --git a/quickstep/src/com/android/launcher3/model/WidgetsPredictionUpdateTask.java b/quickstep/src/com/android/launcher3/model/WidgetsPredictionUpdateTask.java index e234a1cb60..da55b40b19 100644 --- a/quickstep/src/com/android/launcher3/model/WidgetsPredictionUpdateTask.java +++ b/quickstep/src/com/android/launcher3/model/WidgetsPredictionUpdateTask.java @@ -31,8 +31,9 @@ import androidx.annotation.NonNull; import com.android.launcher3.LauncherModel.ModelUpdateTask; import com.android.launcher3.R; +import com.android.launcher3.model.BgDataModel.FixedContainerItems; +import com.android.launcher3.model.QuickstepModelDelegate.PredictorState; import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.model.data.PredictedContainerInfo; import com.android.launcher3.util.ComponentKey; import com.android.launcher3.widget.PendingAddWidgetInfo; import com.android.launcher3.widget.picker.WidgetRecommendationCategoryProvider; @@ -133,11 +134,11 @@ public final class WidgetsPredictionUpdateTask implements ModelUpdateTask { .map(it -> new PendingAddWidgetInfo(it.widgetInfo, CONTAINER_WIDGETS_PREDICTION, categoryProvider.getWidgetRecommendationCategory(context, it))) .collect(Collectors.toList()); - PredictedContainerInfo pci = - new PredictedContainerInfo(mPredictorState.containerId, items); + FixedContainerItems fixedContainerItems = + new FixedContainerItems(mPredictorState.containerId, items); - dataModel.updateAndDispatchItem(pci /* item */, null /* owner */); - taskController.bindUpdatedWorkspaceItems(Collections.singleton(pci)); + dataModel.extraItems.put(mPredictorState.containerId, fixedContainerItems); + taskController.bindExtraContainerItems(fixedContainerItems); // Don't store widgets prediction to disk because it is not used frequently. } diff --git a/quickstep/src/com/android/launcher3/statehandlers/DepthController.java b/quickstep/src/com/android/launcher3/statehandlers/DepthController.java index dea771bc83..356cb771b8 100644 --- a/quickstep/src/com/android/launcher3/statehandlers/DepthController.java +++ b/quickstep/src/com/android/launcher3/statehandlers/DepthController.java @@ -33,12 +33,12 @@ import android.view.ViewTreeObserver; import androidx.annotation.VisibleForTesting; import com.android.launcher3.BaseActivity; +import com.android.launcher3.Launcher; import com.android.launcher3.LauncherState; import com.android.launcher3.Utilities; import com.android.launcher3.anim.PendingAnimation; import com.android.launcher3.statemanager.StateManager.StateHandler; import com.android.launcher3.states.StateAnimationConfig; -import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.quickstep.util.BaseDepthController; import java.io.PrintWriter; @@ -68,13 +68,12 @@ public class DepthController extends BaseDepthController implements StateHandler // Ensure {@link mOnDrawListener} is added only once to avoid spamming DragLayer's mRunQueue // via {@link View#post(Runnable)} private boolean mIsOnDrawListenerAdded = false; - private boolean mRemoveOnDrawListenerCancelled = false; private final boolean mEnableDepth; - public DepthController(QuickstepLauncher launcher) { - super(launcher); - var pref = PreferenceManager2.getInstance(launcher).getWallpaperDepthEffect(); + public DepthController(Launcher l) { + super(l); + var pref = PreferenceManager2.getInstance(l).getWallpaperDepthEffect(); mEnableDepth = PreferenceExtensionsKt.firstBlocking(pref); } @@ -88,12 +87,7 @@ public class DepthController extends BaseDepthController implements StateHandler } catch (Throwable t) { // LC-Ignored } - mRemoveOnDrawListenerCancelled = false; - view.post(() -> { - if (!mRemoveOnDrawListenerCancelled) { - removeOnDrawListener(); - } - }); + view.post(this::removeOnDrawListener); } private void ensureDependencies() { @@ -165,7 +159,6 @@ public class DepthController extends BaseDepthController implements StateHandler } else { removeOnDrawListener(); setBaseSurface(null); - setEarlyWakeup(false); } } @@ -213,7 +206,6 @@ public class DepthController extends BaseDepthController implements StateHandler } private void addOnDrawListener() { - mRemoveOnDrawListenerCancelled = true; if (mIsOnDrawListenerAdded) { return; } @@ -222,7 +214,6 @@ public class DepthController extends BaseDepthController implements StateHandler } private void removeOnDrawListener() { - mRemoveOnDrawListenerCancelled = true; if (!mIsOnDrawListenerAdded) { return; } diff --git a/quickstep/src/com/android/launcher3/statehandlers/DesktopVisibilityController.kt b/quickstep/src/com/android/launcher3/statehandlers/DesktopVisibilityController.kt index a654c603db..1ac2d7c13e 100644 --- a/quickstep/src/com/android/launcher3/statehandlers/DesktopVisibilityController.kt +++ b/quickstep/src/com/android/launcher3/statehandlers/DesktopVisibilityController.kt @@ -23,9 +23,7 @@ import android.util.SparseArray import android.view.Display.DEFAULT_DISPLAY import android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY import androidx.core.util.forEach -import com.android.internal.util.LatencyTracker import com.android.launcher3.LauncherState -//import com.android.launcher3.R import com.android.launcher3.dagger.ApplicationContext import com.android.launcher3.dagger.LauncherAppComponent import com.android.launcher3.dagger.LauncherAppSingleton @@ -48,8 +46,6 @@ import java.io.PrintWriter import java.lang.ref.WeakReference import javax.inject.Inject -import com.android.wm.shell.R as SharedR - /** * Controls the visibility of the workspace and the resumed / paused state when desktop mode is * enabled. @@ -179,7 +175,7 @@ constructor( private var desktopTaskListener: DesktopTaskListenerImpl? init { - desktopTaskListener = DesktopTaskListenerImpl(this, context) + desktopTaskListener = DesktopTaskListenerImpl(this, context, context.displayId) systemUiProxy.setDesktopTaskListener(desktopTaskListener) lifecycleTracker.addCloseable { @@ -547,16 +543,9 @@ constructor( return } - // Add the config for the desk if there is nothing yet, as the display can start without any - // desks. - if (getDisplayDeskConfig(displayId) == null) { - displaysDesksConfigsMap[displayId] = - DisplayDeskConfig(displayId, INACTIVE_DESK_ID, mutableSetOf(deskId)) - } else { - getDisplayDeskConfig(displayId)!!.also { - check(it.deskIds.add(deskId)) { - "Found a duplicate desk Id: $deskId on display: $displayId" - } + getDisplayDeskConfig(displayId)?.also { + check(it.deskIds.add(deskId)) { + "Found a duplicate desk Id: $deskId on display: $displayId" } } @@ -585,6 +574,8 @@ constructor( return } + val wasInDesktopMode = isInDesktopModeAndNotInOverview(displayId) + getDisplayDeskConfig(displayId)?.also { check(oldActiveDesk == it.activeDeskId) { "Mismatch between the Shell's oldActiveDesk: $oldActiveDesk, and Launcher's: ${it.activeDeskId}" @@ -599,20 +590,8 @@ constructor( notifyOnActiveDeskChanged(displayId, newActiveDesk, oldActiveDesk) } - if ( - (newActiveDesk == INACTIVE_DESK_ID || oldActiveDesk == INACTIVE_DESK_ID) && - !launcherAnimationRunning - ) { - val duration = context.resources.getInteger(SharedR.integer.to_desktop_animation_duration_ms) - if (oldActiveDesk == INACTIVE_DESK_ID && newActiveDesk != INACTIVE_DESK_ID) { - notifyTaskbarDesktopModeListenersForEntry(duration) - } else if (newActiveDesk == INACTIVE_DESK_ID && oldActiveDesk != INACTIVE_DESK_ID) { - notifyTaskbarDesktopModeListenersForExit(duration) - } else { - // do nothing because user switch between two desktop. - } - } else { - isNotifyingDesktopVisibilityPending = true + if (wasInDesktopMode != isInDesktopModeAndNotInOverview(displayId)) { + notifyIsInDesktopModeChanged(displayId, !wasInDesktopMode) } } @@ -666,9 +645,9 @@ constructor( private class DesktopTaskListenerImpl( controller: DesktopVisibilityController, @ApplicationContext private val context: Context, + private val displayId: Int, ) : Stub() { private val controller = WeakReference(controller) - private val displayId = context.displayId override fun onListenerConnected( displayDeskStates: Array<DisplayDeskState>, @@ -679,9 +658,7 @@ constructor( } } - @Deprecated("Not needed by multi-desks") override fun onTasksVisibilityChanged(displayId: Int, visibleTasksCount: Int) { - if (enableMultipleDesktops(context)) return if (displayId != this.displayId) return MAIN_EXECUTOR.execute { controller.get()?.apply { @@ -711,9 +688,9 @@ constructor( } } - @Deprecated("Not needed by multi-desks") + // TODO: b/402496827 - The multi-desks backend needs to be updated to call this API only + // once, not between desk switches. override fun onEnterDesktopModeTransitionStarted(transitionDuration: Int) { - if (enableMultipleDesktops(context)) return val controller = controller.get() ?: return MAIN_EXECUTOR.execute { Log.d( @@ -722,19 +699,18 @@ constructor( "duration= " + transitionDuration), ) - if (!controller.isInDesktopModeDeprecated) { + if (enableMultipleDesktops(context)) { + controller.notifyTaskbarDesktopModeListenersForEntry(transitionDuration) + } else if (!controller.isInDesktopModeDeprecated) { controller.isInDesktopModeDeprecated = true controller.notifyTaskbarDesktopModeListenersForEntry(transitionDuration) } } } - @Deprecated("Not needed by multi-desks") - override fun onExitDesktopModeTransitionStarted( - transitionDuration: Int, - shouldEndUpAtHome: Boolean, - ) { - if (enableMultipleDesktops(context)) return + // TODO: b/402496827 - The multi-desks backend needs to be updated to call this API only + // once, not between desk switches. + override fun onExitDesktopModeTransitionStarted(transitionDuration: Int) { val controller = controller.get() ?: return MAIN_EXECUTOR.execute { Log.d( @@ -743,17 +719,9 @@ constructor( "duration= " + transitionDuration), ) - // If shouldEndUpAtHome is true, desktop mode is ending from the user - // closing/minimizing the last open window. If it's false, the display is - // probably transitioning to an app's full screen mode instead so this metric - // should not be logged. - if (shouldEndUpAtHome) { - LatencyTracker.getInstance(context) - .onActionStart( - LatencyTracker.ACTION_DESKTOP_MODE_EXIT_MODE_ON_LAST_WINDOW_CLOSE - ) - } - if (controller.isInDesktopModeDeprecated) { + if (enableMultipleDesktops(context)) { + controller.notifyTaskbarDesktopModeListenersForExit(transitionDuration) + } else if (controller.isInDesktopModeDeprecated) { controller.isInDesktopModeDeprecated = false controller.notifyTaskbarDesktopModeListenersForExit(transitionDuration) } diff --git a/quickstep/src/com/android/launcher3/taskbar/BaseTaskbarContext.java b/quickstep/src/com/android/launcher3/taskbar/BaseTaskbarContext.java index a60efcaf3a..b82e6edd7c 100644 --- a/quickstep/src/com/android/launcher3/taskbar/BaseTaskbarContext.java +++ b/quickstep/src/com/android/launcher3/taskbar/BaseTaskbarContext.java @@ -18,7 +18,6 @@ package com.android.launcher3.taskbar; import android.content.Context; import android.content.Intent; import android.content.pm.ShortcutInfo; -import android.graphics.Point; import android.os.UserHandle; import android.view.LayoutInflater; @@ -33,29 +32,13 @@ import com.android.quickstep.SystemUiProxy; public abstract class BaseTaskbarContext extends BaseContext implements SystemShortcut.BubbleActivityStarter { - private final int mDisplayId; - private final boolean mIsPrimaryDisplay; protected final LayoutInflater mLayoutInflater; - public BaseTaskbarContext(Context windowContext, int displayId, boolean isPrimaryDisplay) { + public BaseTaskbarContext(Context windowContext, boolean isPrimaryDisplay) { super(windowContext, Themes.getActivityThemeRes(windowContext)); - mDisplayId = displayId; - mIsPrimaryDisplay = isPrimaryDisplay; mLayoutInflater = LayoutInflater.from(this).cloneInContext(this); } - @Override - public int getDisplayId() { - return mDisplayId; - } - - /** - * Returns whether the taskbar is displayed on primary or external display. - */ - public final boolean isPrimaryDisplay() { - return mIsPrimaryDisplay; - } - /** * Returns whether taskbar is transient or persistent. External displays will be persistent. * @@ -74,17 +57,10 @@ public abstract class BaseTaskbarContext extends BaseContext public abstract NavigationMode getNavigationMode(); /** - * Returns whether the taskbar is in desktop mode. Implies that some desktop tasks are currently - * visible. + * Returns whether the taskbar is in desktop mode. */ public abstract boolean isInDesktopMode(); - /** - * Returns whether the taskbar is showing desktop tasks, which may happen even outside desktop - * mode on freeform displays. - */ - public abstract boolean isTaskbarShowingDesktopTasks(); - /** * Returns whether the taskbar is forced to be pinned when home is visible. */ @@ -97,20 +73,9 @@ public abstract class BaseTaskbarContext extends BaseContext public abstract boolean showDesktopTaskbarForFreeformDisplay(); /** - * Returns screen size. + * Returns whether the taskbar is displayed on primary or external display. */ - public abstract Point getScreenSize(); - - /** - * Returns display height. - */ - public abstract int getDisplayHeight(); - - /** - * Notifies the context that the configuration has changed. - */ - public abstract void notifyConfigChanged(); - + public abstract boolean isPrimaryDisplay(); @Override public final LayoutInflater getLayoutInflater() { diff --git a/quickstep/src/com/android/launcher3/taskbar/FallbackTaskbarUIController.java b/quickstep/src/com/android/launcher3/taskbar/FallbackTaskbarUIController.java index 2a73d61cd5..5b1e8593a1 100644 --- a/quickstep/src/com/android/launcher3/taskbar/FallbackTaskbarUIController.java +++ b/quickstep/src/com/android/launcher3/taskbar/FallbackTaskbarUIController.java @@ -88,6 +88,10 @@ public class FallbackTaskbarUIController @Override protected void onDestroy() { super.onDestroy(); + RecentsView recentsView = getRecentsView(); + if (recentsView != null) { + recentsView.setTaskLaunchListener(null); + } mRecentsContainer.setTaskbarUIController(null); mRecentsContainer.getStateManager().removeStateListener(mStateListener); } diff --git a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchController.java b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchController.java index 7174af30bc..16980502cd 100644 --- a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchController.java +++ b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchController.java @@ -15,10 +15,7 @@ */ package com.android.launcher3.taskbar; -import static android.window.DesktopModeFlags.ENABLE_TASKBAR_OVERFLOW; - -import static com.android.launcher3.taskbar.TaskbarDesktopExperienceFlags.enableAltTabKqsFlatenning; -import static com.android.launcher3.taskbar.TaskbarDesktopExperienceFlags.enableAltTabKqsOnConnectedDisplays; +import static com.android.launcher3.Flags.enableAltTabKqsOnConnectedDisplays; import android.app.ActivityManager; import android.content.ComponentName; @@ -29,6 +26,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; +import com.android.launcher3.Flags; import com.android.launcher3.R; import com.android.launcher3.taskbar.overlay.TaskbarOverlayContext; import com.android.launcher3.taskbar.overlay.TaskbarOverlayDragLayer; @@ -42,17 +40,14 @@ import com.android.quickstep.util.SingleTask; import com.android.systemui.shared.recents.model.Task; import com.android.systemui.shared.recents.model.ThumbnailData; import com.android.systemui.shared.system.ActivityManagerWrapper; -import com.android.wm.shell.shared.desktopmode.DesktopState; import java.io.PrintWriter; import java.util.ArrayList; import java.util.Collections; -import java.util.Comparator; import java.util.List; import java.util.Set; import java.util.function.Consumer; import java.util.stream.Collectors; -import java.util.stream.Stream; /** * Handles initialization of the {@link KeyboardQuickSwitchViewController}. @@ -67,6 +62,9 @@ public final class KeyboardQuickSwitchController implements // Callback used to notify when the KQS view is closed. @Nullable private Runnable mOnClosed; + // Initialized on init + @Nullable private RecentsModel mModel; + // Used to keep track of the last requested task list id, so that we do not request to load the // tasks again if we have already requested it and the task list has not changed private int mTaskListChangeId = -1; @@ -81,8 +79,6 @@ public final class KeyboardQuickSwitchController implements // Initialized in init private TaskbarControllers mControllers; - @Nullable private RecentsModel mModel; - private boolean mIsProjectedMode; @Nullable private KeyboardQuickSwitchViewController mQuickSwitchViewController; @Nullable private TaskbarOverlayContext mOverlayContext; @@ -94,8 +90,6 @@ public final class KeyboardQuickSwitchController implements public void init(@NonNull TaskbarControllers controllers) { mControllers = controllers; mModel = RecentsModel.INSTANCE.get(controllers.taskbarActivityContext); - mIsProjectedMode = DesktopState.fromContext( - mControllers.taskbarActivityContext).isProjectedMode(); } void onConfigurationChanged(@ActivityInfo.Config int configChanges) { @@ -167,18 +161,16 @@ public final class KeyboardQuickSwitchController implements final boolean shouldShowDesktopTasks = mControllers.taskbarDesktopModeController .shouldShowDesktopTasksInTaskbar(); mExcludedTaskIds = taskIdsToExclude; - mTaskListChangeId = mModel.getTasks( - shouldShowDesktopTasks ? RecentsFilterState.EMPTY_FILTER - : RecentsFilterState.getDesktopTaskFilter(), - (tasks) -> { - processLoadedTasks(wasOpenedFromTaskbar, tasks, taskIdsToExclude); - mQuickSwitchViewController.updateQuickSwitchView( - mTasks, - wasOpenedFromTaskbar ? 0 : mNumHiddenTasks, - currentFocusIndexOverride, - mHasDesktopTask, - mWasDesktopTaskFilteredOut); - }); + mTaskListChangeId = mModel.getTasks((tasks) -> { + processLoadedTasks(tasks, taskIdsToExclude); + mQuickSwitchViewController.updateQuickSwitchView( + mTasks, + wasOpenedFromTaskbar ? 0 : mNumHiddenTasks, + currentFocusIndexOverride, + mHasDesktopTask, + mWasDesktopTaskFilteredOut); + }, shouldShowDesktopTasks ? RecentsFilterState.EMPTY_FILTER + : RecentsFilterState.getDesktopTaskFilter()); } mQuickSwitchViewController.updateLayoutForSurface(wasOpenedFromTaskbar, @@ -192,7 +184,7 @@ public final class KeyboardQuickSwitchController implements } mOverlayContext = mControllers.taskbarOverlayController.requestWindow(); - if (ENABLE_TASKBAR_OVERFLOW.isTrue()) { + if (Flags.taskbarOverflow()) { mOverlayContext.getDragLayer().addTouchController(this); } KeyboardQuickSwitchView keyboardQuickSwitchView = @@ -225,104 +217,46 @@ public final class KeyboardQuickSwitchController implements } mExcludedTaskIds = taskIdsToExclude; - mTaskListChangeId = mModel.getTasks( - shouldShowDesktopTasks ? RecentsFilterState.EMPTY_FILTER - : RecentsFilterState.getDesktopTaskFilter(), - (tasks) -> { - processLoadedTasks(wasOpenedFromTaskbar, tasks, taskIdsToExclude); - // Check if the first task is running after the recents model has updated so - // that we use the correct index. - mQuickSwitchViewController.openQuickSwitchView( - mTasks, - wasOpenedFromTaskbar ? 0 : mNumHiddenTasks, - /* updateTasks= */ true, - currentFocusedIndex == -1 && !mControllerCallbacks.isFirstTaskRunning() - ? 0 : currentFocusedIndex, - shouldShowDesktopTasks, - mHasDesktopTask, - mWasDesktopTaskFilteredOut, - wasOpenedFromTaskbar); - }); + mTaskListChangeId = mModel.getTasks((tasks) -> { + processLoadedTasks(tasks, taskIdsToExclude); + // Check if the first task is running after the recents model has updated so that we use + // the correct index. + mQuickSwitchViewController.openQuickSwitchView( + mTasks, + wasOpenedFromTaskbar ? 0 : mNumHiddenTasks, + /* updateTasks= */ true, + currentFocusedIndex == -1 && !mControllerCallbacks.isFirstTaskRunning() + ? 0 : currentFocusedIndex, + shouldShowDesktopTasks, + mHasDesktopTask, + mWasDesktopTaskFilteredOut, + wasOpenedFromTaskbar); + }, shouldShowDesktopTasks ? RecentsFilterState.EMPTY_FILTER + : RecentsFilterState.getDesktopTaskFilter()); } - private boolean shouldIncludeTask(GroupTask task, Set<Integer> taskIdsToExclude) { - return !ENABLE_TASKBAR_OVERFLOW.isTrue() - || task.getTasks().stream().noneMatch(t -> taskIdsToExclude.contains(t.key.id)); + private boolean shouldExcludeTask(GroupTask task, Set<Integer> taskIdsToExclude) { + return Flags.taskbarOverflow() && task.getTasks().stream().anyMatch( + t -> taskIdsToExclude.contains(t.key.id)); } - private void processLoadedTasks(boolean openedFromTaskbar, List<GroupTask> tasks, - Set<Integer> taskIdsToExclude) { + private void processLoadedTasks(List<GroupTask> tasks, Set<Integer> taskIdsToExclude) { mHasDesktopTask = false; mWasDesktopTaskFilteredOut = false; - - if (enableAltTabKqsFlatenning.isTrue() && !openedFromTaskbar) { - processLoadedTasksCombined(tasks, taskIdsToExclude); - } else if (mControllers.taskbarDesktopModeController.shouldShowDesktopTasksInTaskbar()) { + if (mControllers.taskbarDesktopModeController.shouldShowDesktopTasksInTaskbar()) { processLoadedTasksOnDesktop(tasks, taskIdsToExclude); } else { processLoadedTasksOutsideDesktop(tasks, taskIdsToExclude); } } - private void processLoadedTasksCombined(List<GroupTask> tasks, Set<Integer> taskIdsToExclude) { - List<GroupTask> allTasks = tasks.stream() - .flatMap(task -> { - // In case of DesktopTasks, convert each contained task into a new DesktopTask - // this way the view controller will be able to show a thumbnail in KQS view. - if (task instanceof DesktopTask desktopTask) { - return desktopTask.getTasks().stream() - .map(singleTask -> new DesktopTask(desktopTask.getDeskId(), - desktopTask.getDisplayId(), List.of(singleTask))); - } - - return Stream.of(task); - }) - .filter(task -> shouldIncludeTask(task, taskIdsToExclude)) - .filter(this::shouldIncludeTaskBasedOnProjectedMode) - .toList(); - - mTasks = allTasks.stream() - .sorted(combinedTasksComparator()) - .limit(MAX_TASKS) - .toList(); - mNumHiddenTasks = Math.max(0, allTasks.size() - MAX_TASKS); - } - - private boolean shouldIncludeTaskBasedOnProjectedMode(GroupTask task) { - // When not in projected mode, include tasks from all displays - if (!mIsProjectedMode) { - return true; - } - - int primaryDisplayId = mControllers.taskbarActivityContext.getPrimaryDisplayId(); - - // When on primary device in projected mode, only show tasks from the primary device. - if (mControllers.taskbarActivityContext.isPrimaryDisplay()) { - return task.getDisplayId() == primaryDisplayId; - } - - // When on connected display with primary device in projected mode, only include tasks that - // are not on primary device. - return task.getDisplayId() != primaryDisplayId; - } - - private static Comparator<GroupTask> combinedTasksComparator() { - return Comparator.comparingLong((GroupTask groupTask) -> - groupTask.getTasks().stream() - .map(task -> task.key.lastActiveTime) - .max(Comparator.naturalOrder()) - // Empty tasks list shouldn't be possible so return -1 in that case. - .orElse(-1L)) - .reversed(); - } - private void processLoadedTasksOutsideDesktop(List<GroupTask> tasks, Set<Integer> taskIdsToExclude) { // Only store MAX_TASK tasks, from most to least recent Collections.reverse(tasks); mTasks = tasks.stream() .filter(task -> !(task instanceof DesktopTask) - && shouldIncludeTask(task, taskIdsToExclude)) + && !shouldExcludeTask(task, taskIdsToExclude)) .limit(MAX_TASKS) .collect(Collectors.toList()); @@ -351,18 +285,18 @@ public final class KeyboardQuickSwitchController implements // multiple desktops flag disabled. So, until multiple desktops is implemented the following // should help with team-fooding Alt+tab on connected displays. Post multiple desktop, // further changes maybe required to support launching selected desktops. - if (enableAltTabKqsOnConnectedDisplays.isTrue()) { + if (enableAltTabKqsOnConnectedDisplays()) { mTasks = desktopTasks.stream() .flatMap(t -> t.getTasks().stream()) .map(SingleTask::new) - .filter(task -> shouldIncludeTask(task, taskIdsToExclude)) + .filter(task -> !shouldExcludeTask(task, taskIdsToExclude)) .collect(Collectors.toList()); mNumHiddenTasks = Math.max(0, tasks.size() - desktopTasks.size()); } else if (!desktopTasks.isEmpty()) { mTasks = desktopTasks.get(0).getTasks().stream() .map(SingleTask::new) - .filter(task -> shouldIncludeTask(task, taskIdsToExclude)) + .filter(task -> !shouldExcludeTask(task, taskIdsToExclude)) .collect(Collectors.toList()); // All other tasks, apart from the grouped desktop task, are hidden mNumHiddenTasks = Math.max(0, tasks.size() - 1); @@ -403,7 +337,7 @@ public final class KeyboardQuickSwitchController implements public boolean onControllerInterceptTouchEvent(MotionEvent ev) { if (mQuickSwitchViewController == null || mOverlayContext == null - || !ENABLE_TASKBAR_OVERFLOW.isTrue()) { + || !Flags.taskbarOverflow()) { return false; } @@ -499,7 +433,7 @@ public final class KeyboardQuickSwitchController implements } void onCloseComplete() { - if (ENABLE_TASKBAR_OVERFLOW.isTrue() && mOverlayContext != null) { + if (Flags.taskbarOverflow() && mOverlayContext != null) { mOverlayContext.getDragLayer() .removeTouchController(KeyboardQuickSwitchController.this); } @@ -527,7 +461,7 @@ public final class KeyboardQuickSwitchController implements boolean isAspectRatioSquare() { return mControllers != null && LayoutUtils.isAspectRatioSquare( - mControllers.taskbarActivityContext.getDeviceProfile().getDeviceProperties().getAspectRatio()); + mControllers.taskbarActivityContext.getDeviceProfile().aspectRatio); } } } diff --git a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java index bcaca16278..c49029daf9 100644 --- a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java +++ b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java @@ -36,12 +36,12 @@ import androidx.constraintlayout.widget.ConstraintLayout; import com.android.launcher3.R; import com.android.launcher3.util.Preconditions; +import com.android.launcher3.util.SplitConfigurationOptions.SplitBounds; import com.android.quickstep.util.BorderAnimator; import com.android.systemui.shared.recents.model.Task; import com.android.systemui.shared.recents.model.ThumbnailData; import com.android.wm.shell.shared.TypefaceUtils; import com.android.wm.shell.shared.TypefaceUtils.FontFamily; -import com.android.wm.shell.shared.split.SplitBounds; import kotlin.Unit; diff --git a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchView.java b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchView.java index 7a17d6d2b9..515cfe2af0 100644 --- a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchView.java +++ b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchView.java @@ -17,21 +17,14 @@ package com.android.launcher3.taskbar; import static androidx.constraintlayout.widget.ConstraintLayout.LayoutParams.PARENT_ID; -import static com.android.launcher3.taskbar.TaskbarDesktopExperienceFlags.enableAltTabKqsFlatenning; -import static com.android.launcher3.taskbar.TaskbarDesktopExperienceFlags.enableAltTabKqsOnConnectedDisplays; - import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.content.Context; import android.content.res.Resources; -import android.graphics.Canvas; -import android.graphics.Color; import android.graphics.Outline; -import android.graphics.Paint; import android.graphics.Rect; -import android.graphics.RectF; import android.icu.text.MessageFormat; import android.util.AttributeSet; import android.view.KeyEvent; @@ -57,12 +50,8 @@ import com.android.internal.jank.Cuj; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.anim.AnimatedFloat; -import com.android.launcher3.icons.GraphicsUtils; import com.android.launcher3.testing.TestLogging; import com.android.launcher3.testing.shared.TestProtocol; -import com.android.launcher3.util.Themes; -import com.android.quickstep.SystemUiProxy; -import com.android.quickstep.util.DesktopTask; import com.android.quickstep.util.GroupTask; import com.android.quickstep.util.SingleTask; import com.android.quickstep.util.SplitTask; @@ -109,11 +98,6 @@ public class KeyboardQuickSwitchView extends ConstraintLayout { private static final long CONTENT_ALPHA_ANIMATION_DURATION_MS = 83; private static final long CONTENT_ALPHA_ANIMATION_START_DELAY_MS = 83; - private static final int DARK_THEME_STROKE_ALPHA = 51; - private static final int LIGHT_THEME_STROKE_ALPHA = 41; - private static final int DARK_THEME_SHADOW_ALPHA = 51; - private static final int LIGHT_THEME_SHADOW_ALPHA = 25; - private final AnimatedFloat mOutlineAnimationProgress = new AnimatedFloat( this::invalidateOutline); @@ -133,14 +117,6 @@ public class KeyboardQuickSwitchView extends ConstraintLayout { private int mOutlineRadius; private boolean mIsRtl; - // Used to paint a background with a shadow. - private final Paint mBackgroundPaint = new Paint(); - private float mBackgroundShadowBlur; - private float mBackgroundShadowDistance; - private final Paint mStrokePaint = new Paint(); - private final RectF mLastBackgroundRect = new RectF(); - - private int mOverviewTaskIndex = -1; private int mDesktopTaskIndex = -1; @@ -203,47 +179,11 @@ public class KeyboardQuickSwitchView extends ConstraintLayout { mIsRtl = Utilities.isRtl(resources); - mBackgroundPaint.setFlags(Paint.ANTI_ALIAS_FLAG); - mBackgroundPaint.setStyle(Paint.Style.FILL); - mBackgroundPaint.setColor( - Themes.getAttrColor(getContext(), R.attr.overviewScrimColorFallback)); - mBackgroundShadowBlur = resources.getDimension(R.dimen.transient_taskbar_shadow_blur); - mBackgroundShadowDistance = resources.getDimension( - R.dimen.transient_taskbar_key_shadow_distance); - - - mStrokePaint.setFlags(Paint.ANTI_ALIAS_FLAG); - mStrokePaint.setStyle(Paint.Style.STROKE); - mStrokePaint.setStrokeWidth( - getResources().getDimension(R.dimen.transient_taskbar_stroke_width)); - mStrokePaint.setColor( - getResources().getColor(R.color.taskbar_stroke, getContext().getTheme())); - TypefaceUtils.setTypeface( mNoRecentItemsPane.findViewById(R.id.no_recent_items_text), FontFamily.GSF_LABEL_LARGE); } - @Override - protected void onDraw(Canvas canvas) { - super.onDraw(canvas); - - boolean isDarkTheme = Utilities.isDarkTheme(getContext()); - mStrokePaint.setAlpha(isDarkTheme ? DARK_THEME_STROKE_ALPHA : LIGHT_THEME_STROKE_ALPHA); - - // Draw shadow. - mBackgroundPaint.setShadowLayer( - mBackgroundShadowBlur, - 0, - mBackgroundShadowDistance, - GraphicsUtils.setColorAlphaBound(Color.BLACK, - isDarkTheme ? DARK_THEME_SHADOW_ALPHA : LIGHT_THEME_SHADOW_ALPHA)); - mLastBackgroundRect.set(0, 0, getWidth(), getHeight()); - - canvas.drawRoundRect(mLastBackgroundRect, mOutlineRadius, mOutlineRadius, mBackgroundPaint); - canvas.drawRoundRect(mLastBackgroundRect, mOutlineRadius, mOutlineRadius, mStrokePaint); - } - private void registerOnBackInvokedCallback() { OnBackInvokedDispatcher dispatcher = findOnBackInvokedDispatcher(); @@ -345,10 +285,6 @@ public class KeyboardQuickSwitchView extends ConstraintLayout { } else if (groupTask instanceof SingleTask singleTask) { task1 = singleTask.getTask(); task2 = null; - } else if (enableAltTabKqsFlatenning.isTrue() - && groupTask instanceof DesktopTask desktopTask) { - task1 = desktopTask.getTasks().get(0); - task2 = null; } else { continue; } @@ -507,9 +443,6 @@ public class KeyboardQuickSwitchView extends ConstraintLayout { // Unregister the back invoked callback after the view is closed and before the // mViewCallbacks is reset. unregisterOnBackInvokedCallback(); - if (enableAltTabKqsOnConnectedDisplays.isTrue()) { - SystemUiProxy.INSTANCE.get(getContext()).getFocusState().removeListener(mViewCallbacks); - } mViewCallbacks = null; } @@ -676,10 +609,6 @@ public class KeyboardQuickSwitchView extends ConstraintLayout { displayedContent.setVisibility(VISIBLE); setVisibility(VISIBLE); requestFocus(); - if (enableAltTabKqsOnConnectedDisplays.isTrue()) { - SystemUiProxy.INSTANCE.get(getContext()).getFocusState().addListener( - mViewCallbacks); - } } @Override diff --git a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchViewController.java b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchViewController.java index 5dc4fd142a..a312d5f70b 100644 --- a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchViewController.java +++ b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchViewController.java @@ -15,10 +15,7 @@ */ package com.android.launcher3.taskbar; -import static android.window.DesktopModeFlags.ENABLE_TASKBAR_OVERFLOW; - import static com.android.launcher3.desktop.DesktopAppLaunchTransition.AppLaunchType.UNMINIMIZE; -import static com.android.launcher3.taskbar.TaskbarDesktopExperienceFlags.enableAltTabKqsFlatenning; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; @@ -37,6 +34,7 @@ import androidx.annotation.Nullable; import com.android.internal.jank.Cuj; import com.android.launcher3.DeviceProfile; +import com.android.launcher3.Flags; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.anim.AnimatorListeners; @@ -44,9 +42,7 @@ import com.android.launcher3.desktop.DesktopAppLaunchTransition; import com.android.launcher3.taskbar.overlay.TaskbarOverlayContext; import com.android.launcher3.taskbar.overlay.TaskbarOverlayDragLayer; import com.android.launcher3.views.BaseDragLayer; -import com.android.quickstep.FocusState; import com.android.quickstep.SystemUiProxy; -import com.android.quickstep.util.DesktopTask; import com.android.quickstep.util.GroupTask; import com.android.quickstep.util.SingleTask; import com.android.quickstep.util.SlideInRemoteTransition; @@ -54,7 +50,6 @@ import com.android.systemui.shared.recents.model.Task; import com.android.systemui.shared.recents.model.ThumbnailData; import com.android.systemui.shared.system.InteractionJankMonitorWrapper; import com.android.systemui.shared.system.QuickStepContract; -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource; import com.android.wm.shell.shared.desktopmode.DesktopTaskToFrontReason; import java.io.PrintWriter; @@ -125,7 +120,7 @@ public class KeyboardQuickSwitchViewController { mWasDesktopTaskFilteredOut = wasDesktopTaskFilteredOut; mWasOpenedFromTaskbar = wasOpenedFromTaskbar; - if (ENABLE_TASKBAR_OVERFLOW.isTrue() && wasOpenedFromTaskbar) { + if (Flags.taskbarOverflow() && wasOpenedFromTaskbar) { mKeyboardQuickSwitchView.enableScrollArrowSupport(); } @@ -172,9 +167,8 @@ public class KeyboardQuickSwitchViewController { // Calculate the additional margin space that the KQS should move up for the transient // taskbar. The value of spaceForTaskbar is the distance between the bottom of the KQS // view with 0 bottom margin to the top of the transient taskbar view. - final int spaceForTaskbar = isTransientTaskbar ? dp.getTaskbarProfile().getHeight() - + dp.getTaskbarProfile().getBottomMargin() - - dp.getTaskbarProfile().getStashedTaskbarHeight() : 0; + final int spaceForTaskbar = isTransientTaskbar ? dp.taskbarHeight + dp.taskbarBottomMargin + - dp.stashedTaskbarHeight : 0; final int marginBottom = spaceForTaskbar + resources.getDimensionPixelSize( R.dimen.keyboard_quick_switch_margin_bottom); @@ -258,19 +252,23 @@ public class KeyboardQuickSwitchViewController { // first hidden non-desktop task view in recents view return mOnDesktop ? 1 : (mWasDesktopTaskFilteredOut ? index + 1 : index); } + Runnable onStartCallback = () -> InteractionJankMonitorWrapper.begin( + mKeyboardQuickSwitchView, Cuj.CUJ_LAUNCHER_KEYBOARD_QUICK_SWITCH_APP_LAUNCH); + Runnable onFinishCallback = () -> InteractionJankMonitorWrapper.end( + Cuj.CUJ_LAUNCHER_KEYBOARD_QUICK_SWITCH_APP_LAUNCH); TaskbarActivityContext context = mControllers.taskbarActivityContext; final RemoteTransition slideInTransition = new RemoteTransition(new SlideInRemoteTransition( Utilities.isRtl(mControllers.taskbarActivityContext.getResources()), - context.getDeviceProfile().getOverviewProfile().getPageSpacing(), + context.getDeviceProfile().overviewPageSpacing, QuickStepContract.getWindowCornerRadius(context), AnimationUtils.loadInterpolator( - context, android.R.interpolator.fast_out_extra_slow_in)), + context, android.R.interpolator.fast_out_extra_slow_in), + onStartCallback, + onFinishCallback), "SlideInTransition"); - SystemUiProxy systemUiProxy = SystemUiProxy.INSTANCE.get( - mKeyboardQuickSwitchView.getContext()); if (index == mKeyboardQuickSwitchView.getDesktopTaskIndex()) { UI_HELPER_EXECUTOR.execute(() -> - systemUiProxy + SystemUiProxy.INSTANCE.get(mKeyboardQuickSwitchView.getContext()) .showDesktopApps( mKeyboardQuickSwitchView.getDisplay().getDisplayId(), slideInTransition)); @@ -282,77 +280,35 @@ public class KeyboardQuickSwitchViewController { if (task == null) { return mOnDesktop ? 1 : Math.max(0, index); } - - if (enableAltTabKqsFlatenning.isTrue() - && tryLaunchingCombinedTask(task, slideInTransition, systemUiProxy)) { - return -1; - } - - // TODO b/414410702: move this check to before tryLaunchingCombinedTask() call. if (mControllerCallbacks.isTaskRunning(task)) { // Ignore attempts to run the selected task if it is already running. return -1; } - RemoteTransition remoteTransition = slideInTransition; boolean canUnminimizeDesktopTask = task instanceof SingleTask singleTask && mControllers.taskbarActivityContext.canUnminimizeDesktopTask( singleTask.getTask().key.id); if (mOnDesktop && canUnminimizeDesktopTask) { // This app is being unminimized - use our own transition runner. - remoteTransition = getUnminimizeTransition(); + remoteTransition = new RemoteTransition( + new DesktopAppLaunchTransition( + context, + UNMINIMIZE, + Cuj.CUJ_DESKTOP_MODE_KEYBOARD_QUICK_SWITCH_APP_LAUNCH, + MAIN_EXECUTOR + ), + "DesktopKeyboardQuickSwitchUnminimize"); } mControllers.taskbarActivityContext.handleGroupTaskLaunch( task, remoteTransition, mOnDesktop, - DesktopTaskToFrontReason.ALT_TAB); + DesktopTaskToFrontReason.ALT_TAB, + onStartCallback, + onFinishCallback); return -1; } - private boolean tryLaunchingCombinedTask(GroupTask task, RemoteTransition slideInTransition, - SystemUiProxy systemUiProxy) { - TaskbarActivityContext context = mControllers.taskbarActivityContext; - int taskId = task.getTasks().getFirst().key.id; - - // All DesktopTasks, irrespective of whether desktop mode is active, are launched here as - // the class DesktopTask is used in a special way by KQS view for showing thumbnails of - // freeform tasks. - if (task instanceof DesktopTask desktopTask) { - boolean canUnminimizeDesktopTask = context.canUnminimizeDesktopTask(taskId); - UI_HELPER_EXECUTOR.execute(() -> { - if (!mOnDesktop) { - systemUiProxy.activateDesk(desktopTask.getDeskId(), slideInTransition); - } - - systemUiProxy.showDesktopApp(taskId, - canUnminimizeDesktopTask ? getUnminimizeTransition() : null, - DesktopTaskToFrontReason.ALT_TAB); - }); - return true; - } else if (mOnDesktop && task instanceof SingleTask) { - // Use the special API if user wants to switch to a fullscreen app while in desktop. - UI_HELPER_EXECUTOR.execute( - () -> systemUiProxy.moveToFullscreen(taskId, - DesktopModeTransitionSource.KEYBOARD_SHORTCUT, slideInTransition)); - return true; - } - - // For all other cases, let TaskbarActivityContext handle launching the task. - return false; - } - - private RemoteTransition getUnminimizeTransition() { - return new RemoteTransition( - new DesktopAppLaunchTransition( - mControllers.taskbarActivityContext, - UNMINIMIZE, - Cuj.CUJ_DESKTOP_MODE_KEYBOARD_QUICK_SWITCH_APP_LAUNCH, - MAIN_EXECUTOR - ), - "DesktopKeyboardQuickSwitchUnminimize"); - } - private void onCloseComplete() { mCloseAnimation = null; // Reset the view callbacks to prevent `onDetachedFromWindow` getting called in response to @@ -387,7 +343,7 @@ public class KeyboardQuickSwitchViewController { return dl.isEventOverView(mKeyboardQuickSwitchView, ev); } - class ViewCallbacks implements FocusState.FocusChangeListener { + class ViewCallbacks { public final OnBackInvokedCallback onBackInvokedCallback = () -> closeQuickSwitchView(true); boolean onKeyUp(int keyCode, KeyEvent event, boolean isRTL, boolean allowTraversal) { @@ -458,12 +414,5 @@ public class KeyboardQuickSwitchViewController { closeQuickSwitchView(false); mDetachingFromWindow = false; } - - @Override - public void onFocusedDisplayChanged(int displayId) { - if (mControllers.taskbarActivityContext.getDisplayId() != displayId) { - closeQuickSwitchView(/* animate= */ true); - } - } } } diff --git a/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java b/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java index e294f4ab9a..3d5e214391 100644 --- a/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java +++ b/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java @@ -48,19 +48,19 @@ import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.MultiPropertyFactory; import com.android.launcher3.util.OnboardingPrefs; -import com.android.quickstep.BaseContainerInterface; import com.android.quickstep.GestureState; import com.android.quickstep.HomeVisibilityState; import com.android.quickstep.LauncherActivityInterface; -import com.android.quickstep.OverviewComponentObserver; import com.android.quickstep.RecentsAnimationCallbacks; import com.android.quickstep.SystemUiProxy; -import com.android.quickstep.fallback.window.RecentsWindowManager; +import com.android.quickstep.fallback.window.RecentsDisplayModel; +import com.android.quickstep.fallback.window.RecentsWindowFlags; import com.android.quickstep.util.SplitTask; import com.android.quickstep.views.RecentsView; import com.android.quickstep.views.RecentsViewContainer; import com.android.systemui.shared.system.QuickStepContract.SystemUiStateFlags; import com.android.wm.shell.shared.bubbles.BubbleBarLocation; +import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; import java.io.PrintWriter; import java.util.Arrays; @@ -120,21 +120,23 @@ public class LauncherTaskbarUIController extends TaskbarUIController { mTaskbarLauncherStateController.init(mControllers, mLauncher, mControllers.getSharedState().sysuiStateFlags); final TaskbarActivityContext taskbarContext = mControllers.taskbarActivityContext; - int displayId = taskbarContext.getDisplayId(); - BaseContainerInterface<?, ?> containerInterface = OverviewComponentObserver.INSTANCE.get( - taskbarContext).getContainerInterface(displayId); - if (containerInterface != null - && containerInterface.getCreatedContainer() - instanceof RecentsWindowManager recentsWindowManager) { - mRecentsViewContainer = recentsWindowManager; - mRecentsViewContainer.setTaskbarUIController(this); - } else { + if (RecentsWindowFlags.getEnableOverviewInWindow()) { + mRecentsViewContainer = RecentsDisplayModel.getINSTANCE() + .get(taskbarContext).getRecentsWindowManager(taskbarContext.getDisplayId()); + } + if (mRecentsViewContainer == null) { mRecentsViewContainer = mLauncher; } mLauncher.setTaskbarUIController(this); + if (mRecentsViewContainer != mLauncher) { + mRecentsViewContainer.setTaskbarUIController(this); + } mHomeState.addListener(mVisibilityChangeListener); - onLauncherVisibilityChanged(mHomeState.isHomeVisible(), true /* fromInit */); + onLauncherVisibilityChanged( + Flags.useActivityOverlay() + ? mHomeState.isHomeVisible() : mLauncher.hasBeenResumed(), + true /* fromInit */); onStashedInAppChanged(mLauncher.getDeviceProfile()); mLauncher.addOnDeviceProfileChangeListener(mOnDeviceProfileChangeListener); @@ -222,10 +224,8 @@ public class LauncherTaskbarUIController extends TaskbarUIController { */ @Override public void onLauncherVisibilityChanged(boolean isVisible) { - final TaskbarActivityContext taskbarContext = mControllers.taskbarActivityContext; - if (taskbarContext.showLockedTaskbarOnHome() - && !taskbarContext.showDesktopTaskbarForFreeformDisplay() - && taskbarContext.isPrimaryDisplay()) { + if (DesktopModeStatus.enterDesktopByDefaultOnFreeformDisplay(mLauncher) + && mControllers.taskbarActivityContext.isPrimaryDisplay()) { DisplayController.INSTANCE.get(mLauncher).notifyConfigChange(); } @@ -273,8 +273,8 @@ public class LauncherTaskbarUIController extends TaskbarUIController { } if (!ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY.isTrue() - && mControllers.taskbarDesktopModeController.isInDesktopModeAndNotInOverview( - mControllers.taskbarActivityContext.getDisplayId())) { + && mControllers.taskbarDesktopModeController + .isInDesktopModeAndNotInOverview(mLauncher.getDisplayId())) { // TODO: b/333533253 - Remove after flag rollout isVisible = false; } @@ -293,7 +293,8 @@ public class LauncherTaskbarUIController extends TaskbarUIController { @Override public void refreshResumedState() { - onLauncherVisibilityChanged(mHomeState.isHomeVisible()); + onLauncherVisibilityChanged(Flags.useActivityOverlay() + ? mHomeState.isHomeVisible() : mLauncher.hasBeenResumed()); } @Override @@ -350,9 +351,7 @@ public class LauncherTaskbarUIController extends TaskbarUIController { * app launch animation. */ public void setIgnoreInAppFlagForSync(boolean enabled) { - if (syncAppLaunchWithTaskbarStash() - && mControllers != null - && mControllers.taskbarStashController != null) { + if (syncAppLaunchWithTaskbarStash()) { mControllers.taskbarStashController.updateStateForFlag(FLAG_IGNORE_IN_APP, enabled); } } @@ -362,6 +361,15 @@ public class LauncherTaskbarUIController extends TaskbarUIController { mTaskbarLauncherStateController.applyState(); } + public boolean isDraggingItem() { + boolean bubblesDragging = false; + if (mControllers.bubbleControllers.isPresent()) { + bubblesDragging = + mControllers.bubbleControllers.get().bubbleDragController.isDragging(); + } + return mControllers.taskbarDragController.isDragging() || bubblesDragging; + } + @Override protected void onStashedInAppChanged() { onStashedInAppChanged(mLauncher.getDeviceProfile()); diff --git a/quickstep/src/com/android/launcher3/taskbar/ManageWindowsTaskbarShortcut.kt b/quickstep/src/com/android/launcher3/taskbar/ManageWindowsTaskbarShortcut.kt index 2d6f1ee5be..bfd93dda31 100644 --- a/quickstep/src/com/android/launcher3/taskbar/ManageWindowsTaskbarShortcut.kt +++ b/quickstep/src/com/android/launcher3/taskbar/ManageWindowsTaskbarShortcut.kt @@ -225,7 +225,7 @@ class ManageWindowsTaskbarShortcut<T>( // Calculate the Y position to place the carousel above the taskbar menuView.rootView.y = - deviceProfile.deviceProperties.availableHeightPx - + deviceProfile.availableHeightPx - menuView.menuHeight - controllers.taskbarStashController.touchableHeight - margin @@ -234,12 +234,9 @@ class ManageWindowsTaskbarShortcut<T>( // but avoid clashing with the screen edge menuView.rootView.translationX = if (Utilities.isRtl(context.resources)) { - -(deviceProfile.deviceProperties.availableWidthPx - menuView.menuWidth) / 2f + -(deviceProfile.availableWidthPx - menuView.menuWidth) / 2f } else { - val maxX = - deviceProfile.deviceProperties.availableWidthPx - - menuView.menuWidth - - margin + val maxX = deviceProfile.availableWidthPx - menuView.menuWidth - margin minOf(originalView.x, maxX) } } diff --git a/quickstep/src/com/android/launcher3/taskbar/NavbarButtonsViewController.java b/quickstep/src/com/android/launcher3/taskbar/NavbarButtonsViewController.java index 323372be9d..4806ed8495 100644 --- a/quickstep/src/com/android/launcher3/taskbar/NavbarButtonsViewController.java +++ b/quickstep/src/com/android/launcher3/taskbar/NavbarButtonsViewController.java @@ -40,7 +40,6 @@ import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_A import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_A11Y_BUTTON_LONG_CLICKABLE; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_BACK_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_BACK_DISMISS_IME; -import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_DISABLE_GESTURE_SPLIT_INVOCATION; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_HOME_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_IME_SWITCHER_BUTTON_VISIBLE; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_IME_VISIBLE; @@ -51,7 +50,7 @@ import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_Q import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_PINNING; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SHORTCUT_HELPER_SHOWING; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_VOICE_INTERACTION_WINDOW_SHOWING; -import static com.android.window.flags2.Flags.predictiveBackThreeButtonNav; +import static com.android.window.flags.Flags.predictiveBackThreeButtonNav; import android.animation.Animator; import android.animation.ArgbEvaluator; @@ -73,6 +72,7 @@ import android.graphics.Region.Op; import android.graphics.drawable.Drawable; import android.graphics.drawable.PaintDrawable; import android.graphics.drawable.RotateDrawable; +import android.inputmethodservice.InputMethodService; import android.os.Bundle; import android.os.Handler; import android.os.SystemProperties; @@ -167,9 +167,6 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT FLAG_NOTIFICATION_SHADE_EXPANDED | FLAG_VOICE_INTERACTION_WINDOW_SHOWING; private static final String NAV_BUTTONS_SEPARATE_WINDOW_TITLE = "Taskbar Nav Buttons"; - private static final String SUW_THEME_SYSTEM_PROPERTY = "setupwizard.theme"; - private static final String GLIF_EXPRESSIVE_THEME = "glif_expressive"; - private static final String GLIF_EXPRESSIVE_LIGHT_THEME = "glif_expressive_light"; private static final double SQUARE_ASPECT_RATIO_BOTTOM_BOUND = 0.95; private static final double SQUARE_ASPECT_RATIO_UPPER_BOUND = 1.05; @@ -281,9 +278,9 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT if (mContext.isPhoneMode()) { mTaskbarTransitions = new TaskbarTransitions(mContext, mNavButtonsView); } - String SUWTheme = SystemProperties.get(SUW_THEME_SYSTEM_PROPERTY, ""); - mIsExpressiveThemeEnabled = SUWTheme.equals(GLIF_EXPRESSIVE_THEME) - || SUWTheme.equals(GLIF_EXPRESSIVE_LIGHT_THEME); + String SUWTheme = SystemProperties.get("setupwizard.theme", ""); + mIsExpressiveThemeEnabled = SUWTheme.equals("glif_expressive") + || SUWTheme.equals("glif_expressive_light"); } /** @@ -313,7 +310,13 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT } mNavButtonsView.setLayoutParams(navButtonsViewLayoutParams); - mIsImeRenderingNavButtons = mContext.imeDrawsImeNavBar(); + try { + mIsImeRenderingNavButtons = + InputMethodService.canImeRenderGesturalNavButtons() && mContext.imeDrawsImeNavBar(); + } catch (NoSuchMethodError e) { + // LC-Ignored: what? + mIsImeRenderingNavButtons = false; + } if (!mIsImeRenderingNavButtons) { // IME switcher final int switcherResId = Flags.imeSwitcherRevamp() @@ -347,10 +350,8 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT // Start at 1 because relevant flags are unset at init. mOnBackgroundNavButtonColorOverrideMultiplier.value = 1; - // Potentially force the back button to be visible during setup wizard. The back button - // won't show up if the expressive theme is enabled and simple view is disabled - boolean shouldShowInSetup = !mContext.isUserSetupComplete() - && (!mIsExpressiveThemeEnabled || mContext.isSimpleViewEnabled()); + // Potentially force the back button to be visible during setup wizard. + boolean shouldShowInSetup = !mContext.isUserSetupComplete() && !mIsExpressiveThemeEnabled; boolean isInKidsMode = mContext.isNavBarKidsModeActive(); boolean alwaysShowButtons = isThreeButtonNav || shouldShowInSetup; @@ -366,7 +367,7 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT flags -> (flags & flagsToRemoveTranslation) != 0, AnimatedFloat.VALUE, 1, 0)); // Center nav buttons in new height for IME. - float transForIme = (mContext.getDeviceProfile().getTaskbarProfile().getHeight() + float transForIme = (mContext.getDeviceProfile().taskbarHeight - mControllers.taskbarInsetsController.getTaskbarHeightForIme()) / 2f; // For gesture nav, nav buttons only show for IME anyway so keep them translated down. float defaultButtonTransY = alwaysShowButtons ? 0 : transForIme; @@ -394,6 +395,13 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT mControllers.taskbarDragLayerController.getNavbarBackgroundAlpha(), flags -> (flags & FLAG_ONLY_BACK_FOR_BOUNCER_VISIBLE) != 0)); } + } else if (!mIsImeRenderingNavButtons) { + View imeDownButton = addButton(R.drawable.ic_sysbar_back, BUTTON_BACK, + mStartContextualContainer, mControllers.navButtonController, R.id.back); + imeDownButton.setRotation(Utilities.isRtl(resources) ? 90 : -90); + // Only show when IME is visible. + mPropertyHolders.add(new StatePropertyHolder(imeDownButton, + flags -> (flags & FLAG_IME_VISIBLE) != 0)); } mFloatingRotationButton = new FloatingRotationButton( ENABLE_TASKBAR_NAVBAR_UNIFICATION ? mNavigationBarPanelContext : mContext, @@ -420,7 +428,6 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT mSeparateWindowParent = new BaseDragLayer<>(mContext, null, 0) { @Override public void recreateControllers() { - super.recreateControllers(); mControllers = new TouchController[0]; } @@ -505,13 +512,6 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT navButtonController.onButtonClick(BUTTON_RECENTS, v); mHitboxExtender.onRecentsButtonClicked(); }); - mRecentsButton.addOnLayoutChangeListener( - (v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> { - int[] location = v.getLocationOnScreen(); - Rect bounds = new Rect(location[0], location[1], location[0] + v.getWidth(), - location[1] + v.getHeight()); - navButtonController.onRecentsButtonLayoutChanged(bounds); - }); mPropertyHolders.add(new StatePropertyHolder(mRecentsButton, flags -> (flags & FLAG_KEYGUARD_VISIBLE) == 0 && (flags & FLAG_DISABLE_RECENTS) == 0 && !mContext.isNavBarKidsModeActive() && !mContext.isGestureNav())); @@ -529,20 +529,6 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT navButtonController.onButtonLongClick(BUTTON_SPACE, view)); } - /** - * Method to determine whether the Navigation Bar is viewable in Setup Wizard - * - * @return {@code true} if the device is in Setup Wizard, the expressive theme is enabled, - * and Simple View is NOT enabled - */ - boolean isNavbarHiddenInSUW() { - if (mContext == null) { - return false; - } - return !mContext.isUserSetupComplete() && mIsExpressiveThemeEnabled - && !mContext.isSimpleViewEnabled(); - } - /** * Method to determine whether to show the home button in lockscreen * @@ -566,9 +552,7 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT boolean isBackDismissIme = (sysUiStateFlags & SYSUI_STATE_BACK_DISMISS_IME) != 0; boolean a11yVisible = (sysUiStateFlags & SYSUI_STATE_A11Y_BUTTON_CLICKABLE) != 0; boolean isHomeDisabled = (sysUiStateFlags & SYSUI_STATE_HOME_DISABLED) != 0; - // TODO: b/409075366 - ensure this signal is correctly set for external displays. - boolean isRecentsDisabled = mContext.isPrimaryDisplay() - && (sysUiStateFlags & SYSUI_STATE_OVERVIEW_DISABLED) != 0; + boolean isRecentsDisabled = (sysUiStateFlags & SYSUI_STATE_OVERVIEW_DISABLED) != 0; boolean isBackDisabled = (sysUiStateFlags & SYSUI_STATE_BACK_DISABLED) != 0; long shadeExpandedFlags = SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED | SYSUI_STATE_QUICK_SETTINGS_EXPANDED; @@ -578,8 +562,7 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT (sysUiStateFlags & SYSUI_STATE_VOICE_INTERACTION_WINDOW_SHOWING) != 0; boolean isKeyboardShortcutHelperShowing = (sysUiStateFlags & SYSUI_STATE_SHORTCUT_HELPER_SHOWING) != 0; - boolean splitAnimationRunning = - (sysUiStateFlags & SYSUI_STATE_DISABLE_GESTURE_SPLIT_INVOCATION) != 0; + updateStateForFlag(FLAG_IME_SWITCHER_BUTTON_VISIBLE, isImeSwitcherButtonVisible); updateStateForFlag(FLAG_IME_VISIBLE, isImeVisible); updateStateForFlag(FLAG_BACK_DISMISS_IME, isBackDismissIme); @@ -599,12 +582,6 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT mA11yButton.setLongClickable(a11yLongClickable); updateButtonLayoutSpacing(); } - - if (mNavButtonContainer.getChildCount() > 0) { - for (int i = 0; i < mNavButtonContainer.getChildCount(); i++) { - mNavButtonContainer.getChildAt(i).setEnabled(!splitAnimationRunning); - } - } } public void updateStateForSysuiFlags(@SystemUiStateFlags long systemUiStateFlags, @@ -672,8 +649,7 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT * Returns true if the recents (overview) button is disabled */ public boolean isRecentsDisabled() { - // TODO: b/409075366 - ensure this signal is correctly set for external displays. - return (mState & FLAG_DISABLE_RECENTS) != 0 && mContext.isPrimaryDisplay(); + return (mState & FLAG_DISABLE_RECENTS) != 0; } /** @@ -949,8 +925,7 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT navButtonController.onButtonLongClick(buttonType, view)); buttonView.setOnTouchListener((v, event) -> { if (event.getAction() == MotionEvent.ACTION_DOWN) { - buttonView.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY, - HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING); + buttonView.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY); } return false; }); @@ -994,8 +969,7 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT hasSentDownEvent.set(false); mHandler.postDelayed(longPressTimeout, PREDICTIVE_BACK_TIMEOUT_MS); rect.set(0, 0, v.getWidth(), v.getHeight()); - buttonView.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY, - HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING); + buttonView.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY); } boolean isCancelled = motionEventAction == MotionEvent.ACTION_CANCEL || (!rect.contains(event.getX(), event.getY()) @@ -1043,15 +1017,15 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT if (mFloatingRotationButton != null) { mFloatingRotationButton.onConfigurationChanged(configChanges); } - if (!mContext.isUserSetupComplete() && !ENABLE_TASKBAR_NAVBAR_UNIFICATION) { + if (!mContext.isUserSetupComplete()) { handleSetupUi(); } updateButtonLayoutSpacing(); } private void handleSetupUi() { - // Setup wizard handles the UI when the expressive theme is enabled and Simple View isn't. - if (mIsExpressiveThemeEnabled && !mContext.isSimpleViewEnabled()) { + // Setup wizard handles the UI when the expressive theme is enabled. + if (mIsExpressiveThemeEnabled) { return; } // Since setup wizard only has back button enabled, it looks strange to be @@ -1070,9 +1044,9 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT // If SUW is on a large screen device that is landscape (or has a square aspect // ratio) the back button has to be placed accordingly - if ((deviceProfile.getDeviceProperties().isTablet() && deviceProfile.getDeviceProperties().isLandscape()) - || (deviceProfile.getDeviceProperties().getAspectRatio() > SQUARE_ASPECT_RATIO_BOTTOM_BOUND - && deviceProfile.getDeviceProperties().getAspectRatio() < SQUARE_ASPECT_RATIO_UPPER_BOUND)) { + if ((deviceProfile.isTablet && deviceProfile.isLandscape) + || (deviceProfile.aspectRatio > SQUARE_ASPECT_RATIO_BOTTOM_BOUND + && deviceProfile.aspectRatio < SQUARE_ASPECT_RATIO_UPPER_BOUND)) { navButtonsLayoutParams.setMarginStart( resources.getDimensionPixelSize(R.dimen.taskbar_back_button_suw_start_margin)); navButtonsViewLayoutParams.bottomMargin = resources.getDimensionPixelSize( @@ -1083,7 +1057,7 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT int phoneOrPortraitSetupMargin = resources.getDimensionPixelSize( R.dimen.taskbar_contextual_button_suw_margin); navButtonsLayoutParams.setMarginStart(phoneOrPortraitSetupMargin); - navButtonsLayoutParams.bottomMargin = !deviceProfile.getDeviceProperties().isLandscape() + navButtonsLayoutParams.bottomMargin = !deviceProfile.isLandscape ? 0 : phoneOrPortraitSetupMargin - (resources.getDimensionPixelSize( R.dimen.taskbar_nav_buttons_size) / 2); @@ -1254,9 +1228,9 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT public void onDestroy() { mPropertyHolders.clear(); + mControllers.rotationButtonController.unregisterListeners(); if (mFloatingRotationButton != null) { mFloatingRotationButton.hide(); - mFloatingRotationButton = null; } moveNavButtonsBackToTaskbarWindow(); @@ -1445,11 +1419,11 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT // Skip additional translations on the nav bar container while in SUW layout return 0; } else if (mContext.shouldStartAlignTaskbar()) { - int navBarSpacing = dp.getHotseatProfile().getInlineNavButtonsEndSpacingPx(); + int navBarSpacing = dp.inlineNavButtonsEndSpacingPx; // If the taskbar is start aligned the navigation bar is aligned to the start or end of // the container, depending on the bubble bar location if (isNavbarOnRight) { - navBarTargetStartX = dp.getDeviceProperties().getWidthPx() - navBarSpacing - mNavButtonContainer.getWidth(); + navBarTargetStartX = dp.widthPx - navBarSpacing - mNavButtonContainer.getWidth(); } else { navBarTargetStartX = navBarSpacing; } @@ -1462,7 +1436,7 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT if (isNavbarOnRight) { if (mNavButtonsView.isLayoutRtl()) { float taskBarEnd = taskbarBounds.right; - navBarTargetStartX = (dp.getDeviceProperties().getWidthPx() + taskBarEnd - navbarWidth) / 2; + navBarTargetStartX = (dp.widthPx + taskBarEnd - navbarWidth) / 2; } else { navBarTargetStartX = mNavButtonContainer.getLeft(); } @@ -1480,7 +1454,7 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT // screen. Rect transientTaskbarIconLayoutBoundsInParent = mControllers.taskbarViewController .getTransientTaskbarIconLayoutBoundsInParent(); - if (mContext.getDeviceProfile().getDeviceProperties().isPhone() + if (mContext.getDeviceProfile().isPhone || transientTaskbarIconLayoutBoundsInParent.isEmpty() || mNavButtonsView.getWidth() == 0) { return; diff --git a/quickstep/src/com/android/launcher3/taskbar/PinToTaskbarShortcut.kt b/quickstep/src/com/android/launcher3/taskbar/PinToTaskbarShortcut.kt index 0dce63a838..da6932fc16 100644 --- a/quickstep/src/com/android/launcher3/taskbar/PinToTaskbarShortcut.kt +++ b/quickstep/src/com/android/launcher3/taskbar/PinToTaskbarShortcut.kt @@ -19,11 +19,8 @@ package com.android.launcher3.taskbar import android.content.Context import android.util.SparseArray import android.view.View -import android.window.DesktopExperienceFlags -import androidx.annotation.VisibleForTesting import com.android.launcher3.DeviceProfile import com.android.launcher3.LauncherAppState -import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APPS import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT import com.android.launcher3.R import com.android.launcher3.model.BgDataModel @@ -40,7 +37,7 @@ class PinToTaskbarShortcut<T>( target: T, itemInfo: ItemInfo?, originalView: View, - @get:VisibleForTesting val mIsPin: Boolean, + private val mIsPin: Boolean, private val mPinnedInfoList: SparseArray<ItemInfo?>, ) : SystemShortcut<T>( @@ -63,18 +60,7 @@ class PinToTaskbarShortcut<T>( .getWriter(true, mTarget!!.cellPosMapper, callbacks) if (!mIsPin) { - var infoToUnpin = mItemInfo - if (mItemInfo.container == CONTAINER_ALL_APPS) { - for (i in 0..<mPinnedInfoList.size()) { - if ( - mPinnedInfoList.valueAt(i)?.getComponentKey() == mItemInfo.getComponentKey() - ) { - infoToUnpin = mPinnedInfoList.valueAt(i) - break - } - } - } - writer.deleteItemFromDatabase(infoToUnpin, "item unpinned through long-press menu") + writer.deleteItemFromDatabase(mItemInfo, "item unpinned through long-press menu") return } @@ -102,10 +88,4 @@ class PinToTaskbarShortcut<T>( writer.addItemToDatabase(newInfo, CONTAINER_HOTSEAT, mItemInfo.screenId, cellX, cellY) } - - companion object { - fun isPinningAppWithContextMenuEnabled(context: TaskbarActivityContext): Boolean = - DesktopExperienceFlags.ENABLE_PINNING_APP_WITH_CONTEXT_MENU.isTrue && - context.isTaskbarShowingDesktopTasks - } } diff --git a/quickstep/src/com/android/launcher3/taskbar/StashedHandleViewController.java b/quickstep/src/com/android/launcher3/taskbar/StashedHandleViewController.java index c19d883e96..6bd3d855e2 100644 --- a/quickstep/src/com/android/launcher3/taskbar/StashedHandleViewController.java +++ b/quickstep/src/com/android/launcher3/taskbar/StashedHandleViewController.java @@ -17,30 +17,27 @@ package com.android.launcher3.taskbar; import static android.view.Display.DEFAULT_DISPLAY; -import static com.android.launcher3.EncryptionType.ENCRYPTED; -import static com.android.launcher3.LauncherPrefs.nonRestorableItem; -import static com.android.launcher3.taskbar.Utilities.getShapedTaskbarRadius; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NAV_BAR_HIDDEN; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.ValueAnimator; import android.content.Context; +import android.content.SharedPreferences; import android.content.res.Resources; import android.graphics.Outline; import android.graphics.Rect; import android.view.View; import android.view.ViewOutlineProvider; -import com.android.launcher3.ConstantItem; import com.android.launcher3.DeviceProfile; -import com.android.launcher3.Flags; import com.android.launcher3.LauncherPrefs; import com.android.launcher3.R; import com.android.launcher3.anim.AnimatedFloat; import com.android.launcher3.anim.RevealOutlineAnimation; import com.android.launcher3.anim.RoundedRectRevealOutlineProvider; import com.android.launcher3.util.Executors; +import com.android.launcher3.util.MultiPropertyFactory; import com.android.launcher3.util.MultiValueAlpha; import com.android.quickstep.NavHandle; import com.android.systemui.shared.system.QuickStepContract.SystemUiStateFlags; @@ -58,8 +55,7 @@ public class StashedHandleViewController implements TaskbarControllers.LoggableT public static final int ALPHA_INDEX_HOME_DISABLED = 1; public static final int ALPHA_INDEX_ASSISTANT_INVOKED = 2; public static final int ALPHA_INDEX_HIDDEN_WHILE_DREAMING = 3; - public static final int ALPHA_INDEX_NUDGED = 4; - private static final int NUM_ALPHA_CHANNELS = 5; + private static final int NUM_ALPHA_CHANNELS = 4; // Values for long press animations, picked to most closely match navbar spec. private static final float SCALE_TOUCH_ANIMATION_SHRINK = 0.85f; @@ -71,11 +67,8 @@ public class StashedHandleViewController implements TaskbarControllers.LoggableT private static final String SHARED_PREFS_STASHED_HANDLE_REGION_DARK_KEY = "stashed_handle_region_is_dark"; - private static final ConstantItem<Boolean> STASHED_HANDLE_REGION_IS_DARK = - nonRestorableItem(SHARED_PREFS_STASHED_HANDLE_REGION_DARK_KEY, false, ENCRYPTED); - private final TaskbarActivityContext mActivity; - private final LauncherPrefs mPrefs; + private final SharedPreferences mPrefs; private final StashedHandleView mStashedHandleView; private int mStashedHandleWidth; private final int mStashedHandleHeight; @@ -109,12 +102,13 @@ public class StashedHandleViewController implements TaskbarControllers.LoggableT public StashedHandleViewController(TaskbarActivityContext activity, StashedHandleView stashedHandleView) { mActivity = activity; - mPrefs = LauncherPrefs.get(mActivity); + mPrefs = LauncherPrefs.getPrefs(mActivity); mStashedHandleView = stashedHandleView; mTaskbarStashedHandleAlpha = new MultiValueAlpha(mStashedHandleView, NUM_ALPHA_CHANNELS); mTaskbarStashedHandleAlpha.setUpdateVisibility(true); mStashedHandleView.updateHandleColor( - mPrefs.get(STASHED_HANDLE_REGION_IS_DARK), false /* animate */); + mPrefs.getBoolean(SHARED_PREFS_STASHED_HANDLE_REGION_DARK_KEY, false), + false /* animate */); final Resources resources = mActivity.getResources(); mStashedHandleHeight = resources.getDimensionPixelSize( R.dimen.taskbar_stashed_handle_height); @@ -130,11 +124,11 @@ public class StashedHandleViewController implements TaskbarControllers.LoggableT mStashedHandleWidth = resources.getDimensionPixelSize(R.dimen.taskbar_stashed_small_screen); } else { - mTaskbarSize = deviceProfile.getTaskbarProfile().getHeight(); + mTaskbarSize = deviceProfile.taskbarHeight; mStashedHandleWidth = resources .getDimensionPixelSize(R.dimen.taskbar_stashed_handle_width); } - int taskbarBottomMargin = deviceProfile.getTaskbarProfile().getBottomMargin(); + int taskbarBottomMargin = deviceProfile.taskbarBottomMargin; mStashedHandleView.getLayoutParams().height = mTaskbarSize + taskbarBottomMargin; mTaskbarStashedHandleAlpha.get(ALPHA_INDEX_STASHED).setValue( @@ -153,9 +147,7 @@ public class StashedHandleViewController implements TaskbarControllers.LoggableT stashedCenterX + mStashedHandleWidth / 2, stashedCenterY + mStashedHandleHeight / 2); mStashedHandleView.updateSampledRegion(mStashedHandleBounds); - mStashedHandleRadius = Flags.enableLauncherIconShapes() - ? getShapedTaskbarRadius(mActivity) - : view.getHeight() / 2f; + mStashedHandleRadius = view.getHeight() / 2f; outline.setRoundRect(mStashedHandleBounds, mStashedHandleRadius); } }); @@ -175,7 +167,6 @@ public class StashedHandleViewController implements TaskbarControllers.LoggableT /** * Returns the stashed handle bounds. - * * @param out The destination rect. */ public void getStashedHandleBounds(Rect out) { @@ -188,7 +179,8 @@ public class StashedHandleViewController implements TaskbarControllers.LoggableT @Override public void onRegionDarknessChanged(boolean isRegionDark) { mStashedHandleView.updateHandleColor(isRegionDark, true /* animate */); - mPrefs.put(STASHED_HANDLE_REGION_IS_DARK, isRegionDark); + mPrefs.edit().putBoolean(SHARED_PREFS_STASHED_HANDLE_REGION_DARK_KEY, + isRegionDark).apply(); } @Override @@ -206,7 +198,7 @@ public class StashedHandleViewController implements TaskbarControllers.LoggableT mRegionSamplingHelper = null; } - public MultiValueAlpha getStashedHandleAlpha() { + public MultiPropertyFactory<View> getStashedHandleAlpha() { return mTaskbarStashedHandleAlpha; } @@ -229,9 +221,8 @@ public class StashedHandleViewController implements TaskbarControllers.LoggableT int heightDiff = (mTaskbarSize - visualBounds.height()) / 2; visualBounds.top -= heightDiff; visualBounds.bottom += heightDiff; - startRadius = Flags.enableLauncherIconShapes() - ? getShapedTaskbarRadius(mActivity) - : visualBounds.height() / 2f; + + startRadius = visualBounds.height() / 2f; } final RevealOutlineAnimation handleRevealProvider = new RoundedRectRevealOutlineProvider( diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java index f7e760d44e..fc93d4a0ab 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java @@ -16,6 +16,7 @@ package com.android.launcher3.taskbar; import static android.os.Trace.TRACE_TAG_APP; +import static android.view.Display.DEFAULT_DISPLAY; import static android.view.ViewGroup.LayoutParams.MATCH_PARENT; import static android.view.WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM; import static android.view.WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE; @@ -32,6 +33,7 @@ import static com.android.launcher3.AbstractFloatingView.TYPE_ON_BOARD_POPUP; import static com.android.launcher3.AbstractFloatingView.TYPE_REBIND_SAFE; import static com.android.launcher3.AbstractFloatingView.TYPE_TASKBAR_OVERLAY_PROXY; import static com.android.launcher3.Flags.enableCursorHoverStates; +import static com.android.launcher3.Flags.removeExcludeFromScreenMagnificationFlagUsage; import static com.android.launcher3.Utilities.calculateTextHeight; import static com.android.launcher3.Utilities.isRunningInTestHarness; import static com.android.launcher3.config.FeatureFlags.ENABLE_TASKBAR_NAVBAR_UNIFICATION; @@ -44,7 +46,6 @@ import static com.android.launcher3.taskbar.TaskbarStashController.SHOULD_BUBBLE import static com.android.launcher3.testing.shared.ResourceUtils.getBoolByName; import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; import static com.android.quickstep.util.AnimUtils.completeRunnableListCallback; -import static com.android.quickstep.util.ExternalDisplaysKt.isExternalDisplay; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NOTIFICATION_PANEL_VISIBLE; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_VOICE_INTERACTION_WINDOW_SHOWING; import static com.android.wm.shell.Flags.enableBubbleBar; @@ -63,7 +64,6 @@ import android.content.pm.ActivityInfo.Config; import android.content.pm.LauncherApps; import android.content.res.Resources; import android.graphics.PixelFormat; -import android.graphics.Point; import android.graphics.Rect; import android.graphics.drawable.Drawable; import android.hardware.display.DisplayManager; @@ -113,7 +113,6 @@ import com.android.launcher3.icons.BitmapRenderer; import com.android.launcher3.icons.FastBitmapDrawable; import com.android.launcher3.logger.LauncherAtom; import com.android.launcher3.logging.StatsLogManager; -import com.android.launcher3.model.ModelWriter; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.AppPairInfo; import com.android.launcher3.model.data.FolderInfo; @@ -137,7 +136,6 @@ import com.android.launcher3.taskbar.bubbles.BubbleDismissController; import com.android.launcher3.taskbar.bubbles.BubbleDragController; import com.android.launcher3.taskbar.bubbles.BubblePinController; import com.android.launcher3.taskbar.bubbles.BubbleStashedHandleViewController; -import com.android.launcher3.taskbar.bubbles.DragToBubbleController; import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController; import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController.TaskbarHotseatDimensionsProvider; import com.android.launcher3.taskbar.bubbles.stashing.DeviceProfileDimensionsProviderAdapter; @@ -208,8 +206,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { private static final String WINDOW_TITLE = "Taskbar"; - public static final String SIMPLE_VIEW_SETTINGS_KEY = "matcha_enable"; - protected static final DesktopModeFlag ENABLE_TASKBAR_BEHIND_SHADE = new DesktopModeFlag( Flags::enableTaskbarBehindShade, false); @@ -219,6 +215,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext { private final TaskbarControllers mControllers; private final WindowManager mWindowManager; + private final boolean mIsPrimaryDisplay; private DeviceProfile mDeviceProfile; private WindowManager.LayoutParams mWindowLayoutParams; private WindowManager.LayoutParams mLastUpdatedLayoutParams; @@ -237,11 +234,13 @@ public class TaskbarActivityContext extends BaseTaskbarContext { private boolean mImeDrawsImeNavBar; private final boolean mIsSafeModeEnabled; - private boolean mIsUserSetupComplete; - private boolean mIsNavBarForceVisible; - private boolean mIsNavBarKidsMode; + private final boolean mIsUserSetupComplete; + private final boolean mIsNavBarForceVisible; + private final boolean mIsNavBarKidsMode; private boolean mIsDestroyed = false; + // The flag to know if the window is excluded from magnification region computation. + private boolean mIsExcludeFromMagnificationRegion = false; private boolean mAddedWindow = false; // The bounds of the taskbar items relative to TaskbarDragLayer @@ -254,7 +253,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { private DeviceProfile mPersistentTaskbarDeviceProfile; private final LauncherPrefs mLauncherPrefs; - private final int mPrimaryDisplayId; private final SystemUiProxy mSysUiProxy; private TaskbarFeatureEvaluator mTaskbarFeatureEvaluator; @@ -265,15 +263,15 @@ public class TaskbarActivityContext extends BaseTaskbarContext { private @Nullable View mTaskbarSnapshotView; private @Nullable TaskbarOverlayContext mTaskbarSnapshotOverlay; - public TaskbarActivityContext(int displayId, Context windowContext, + public TaskbarActivityContext(Context windowContext, @Nullable Context navigationBarPanelContext, DeviceProfile launcherDp, TaskbarNavButtonController buttonController, ScopedUnfoldTransitionProgressProvider unfoldTransitionProgressProvider, - boolean isPrimaryDisplay, int primaryDisplayId, SystemUiProxy sysUiProxy) { - super(windowContext, displayId, isPrimaryDisplay); + boolean isPrimaryDisplay, SystemUiProxy sysUiProxy) { + super(windowContext, isPrimaryDisplay); + mIsPrimaryDisplay = isPrimaryDisplay; mNavigationBarPanelContext = navigationBarPanelContext; mSysUiProxy = sysUiProxy; - mPrimaryDisplayId = primaryDisplayId; applyDeviceProfile(launcherDp); final Resources resources = getResources(); mTaskbarFeatureEvaluator = TaskbarFeatureEvaluator.getInstance(this); @@ -287,6 +285,15 @@ public class TaskbarActivityContext extends BaseTaskbarContext { mIsSafeModeEnabled = TraceHelper.allowIpcs("isSafeMode", () -> getPackageManager().isSafeMode()); + // TODO(b/244231596) For shared Taskbar window, update this value in applyDeviceProfile() + // instead so to get correct value when recreating the taskbar + SettingsCache settingsCache = SettingsCache.INSTANCE.get(this); + mIsUserSetupComplete = settingsCache.getValue( + Settings.Secure.getUriFor(Settings.Secure.USER_SETUP_COMPLETE), 0); + mIsNavBarKidsMode = settingsCache.getValue( + Settings.Secure.getUriFor(Settings.Secure.NAV_BAR_KIDS_MODE), 0); + mIsNavBarForceVisible = mIsNavBarKidsMode; + // Get display and corners first, as views might use them in constructor. Context c = getApplicationContext(); mWindowManager = c.getSystemService(WindowManager.class); @@ -299,7 +306,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { TaskbarScrimView taskbarScrimView = mDragLayer.findViewById(R.id.taskbar_scrim); NearestTouchFrame navButtonsView = mDragLayer.findViewById(R.id.navbuttons_view); StashedHandleView stashedHandleView = mDragLayer.findViewById(R.id.stashed_handle); - NudgeView nudgeView = mDragLayer.findViewById(R.id.nudge_icon); BubbleBarView bubbleBarView = mDragLayer.findViewById(R.id.taskbar_bubbles); FrameLayout bubbleBarContainer = mDragLayer.findViewById(R.id.taskbar_bubbles_container); StashedHandleView bubbleHandleView = mDragLayer.findViewById(R.id.stashed_bubble_handle); @@ -310,9 +316,12 @@ public class TaskbarActivityContext extends BaseTaskbarContext { Optional<BubbleControllers> bubbleControllersOptional = Optional.empty(); BubbleBarController.onTaskbarRecreated(); final boolean deviceBubbleBarEnabled = enableBubbleBarOnPhones() - || (!mDeviceProfile.getDeviceProperties().isPhone() && !mDeviceProfile.isVerticalBarLayout()); - if (BubbleBarController.isBubbleBarEnabled() && deviceBubbleBarEnabled - && bubbleBarView != null && isPrimaryDisplay) { + || (!mDeviceProfile.isPhone && !mDeviceProfile.isVerticalBarLayout()); + if (BubbleBarController.isBubbleBarEnabled() + && deviceBubbleBarEnabled + && bubbleBarView != null + && isPrimaryDisplay + ) { Optional<BubbleStashedHandleViewController> bubbleHandleController = Optional.empty(); Optional<BubbleBarSwipeController> bubbleBarSwipeController = Optional.empty(); if (isTransientTaskbar) { @@ -334,10 +343,11 @@ public class TaskbarActivityContext extends BaseTaskbarContext { bubbleHandleController, new BubbleDragController(this, mDragLayer), new BubbleDismissController(this, mDragLayer), - new BubbleBarPinController(this, bubbleBarContainer, this::getScreenSize), - new BubblePinController(this, bubbleBarContainer, this::getScreenSize), + new BubbleBarPinController(this, bubbleBarContainer, + () -> DisplayController.INSTANCE.get(this).getInfo().currentSize), + new BubblePinController(this, bubbleBarContainer, + () -> DisplayController.INSTANCE.get(this).getInfo().currentSize), bubbleBarSwipeController, - new DragToBubbleController(this, bubbleBarContainer), new BubbleCreator(this) )); } @@ -385,14 +395,13 @@ public class TaskbarActivityContext extends BaseTaskbarContext { bubbleControllersOptional, new TaskbarDesktopModeController(this, DesktopVisibilityController.INSTANCE.get(this)), - new NudgeController(this), - new NudgeViewController(this, nudgeView)); + new NudgeController(this)); mLauncherPrefs = LauncherPrefs.get(this); onViewCreated(); } - /** Updates {@link deviceprofile} instances for any Taskbar windows. */ + /** Updates {@link DeviceProfile} instances for any Taskbar windows. */ public void updateDeviceProfile(DeviceProfile launcherDp) { applyDeviceProfile(launcherDp); mControllers.taskbarOverlayController.updateLauncherDeviceProfile(launcherDp); @@ -408,13 +417,9 @@ public class TaskbarActivityContext extends BaseTaskbarContext { dispatchDeviceProfileChanged(); } - public final int getPrimaryDisplayId() { - return mPrimaryDisplayId; - } - @Override public boolean isTransientTaskbar() { - return DisplayController.isTransientTaskbar(this) && isPrimaryDisplay() && !isPhoneMode(); + return DisplayController.isTransientTaskbar(this) && mIsPrimaryDisplay && !isPhoneMode(); } @Override @@ -434,13 +439,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { && mControllers.taskbarDesktopModeController.isInDesktopMode(getDisplayId()); } - @Override - public boolean isTaskbarShowingDesktopTasks() { - return mControllers != null - && mControllers.taskbarDesktopModeController.shouldShowDesktopTasksInTaskbar( - getDisplayId()); - } - @Override public boolean showLockedTaskbarOnHome() { return DisplayController.showLockedTaskbarOnHome(this); @@ -452,18 +450,8 @@ public class TaskbarActivityContext extends BaseTaskbarContext { } @Override - public Point getScreenSize() { - return DisplayController.INSTANCE.get(this).getInfo().currentSize; - } - - @Override - public int getDisplayHeight() { - return DisplayController.INSTANCE.get(this).getInfo().currentSize.y; - } - - @Override - public void notifyConfigChanged() { - DisplayController.INSTANCE.get(this).notifyConfigChange(); + public boolean isPrimaryDisplay() { + return mIsPrimaryDisplay; } /** @@ -478,7 +466,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext { deviceProfile.hotseatQsbWidth = originDeviceProfile.hotseatQsbWidth; // Update icon size - deviceProfile.iconSizePx = deviceProfile.getTaskbarProfile().getIconSize(); + deviceProfile.iconSizePx = deviceProfile.taskbarIconSize; deviceProfile.updateIconSize(1f, this); }; mDeviceProfile = originDeviceProfile.toBuilder(this) @@ -500,13 +488,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { .build(); } mNavMode = getNavigationMode(); - - SettingsCache settingsCache = SettingsCache.INSTANCE.get(this); - mIsUserSetupComplete = settingsCache.getValue( - Settings.Secure.getUriFor(Settings.Secure.USER_SETUP_COMPLETE), 0); - mIsNavBarKidsMode = settingsCache.getValue( - Settings.Secure.getUriFor(Settings.Secure.NAV_BAR_KIDS_MODE), 0); - mIsNavBarForceVisible = mIsNavBarKidsMode; } /** Called when the visibility of the bubble bar changed. */ @@ -596,14 +577,10 @@ public class TaskbarActivityContext extends BaseTaskbarContext { */ public boolean isPhoneMode() { return ENABLE_TASKBAR_NAVBAR_UNIFICATION - && mDeviceProfile.getDeviceProperties().isPhone() + && mDeviceProfile.isPhone && !mDeviceProfile.isTaskbarPresent; } - public boolean isTaskbarInMinimalState() { - return mControllers.taskbarViewController.isTaskbarInMinimalState(); - } - /** * @return {@code true} if {@link #isPhoneMode()} is true and we're using 3 button-nav */ @@ -618,18 +595,13 @@ public class TaskbarActivityContext extends BaseTaskbarContext { return isPhoneMode() && !isThreeButtonNav(); } - /** Returns whether Taskbar draws its own background, vs being translucent for apps to draw. */ - public boolean drawsTaskbarBackground() { - return !isPhoneMode(); - } - /** Returns {@code true} iff a tiny version of taskbar is shown on phone. */ public boolean isTinyTaskbar() { - return enableTinyTaskbar() && mDeviceProfile.getDeviceProperties().isPhone() && mDeviceProfile.isTaskbarPresent; + return enableTinyTaskbar() && mDeviceProfile.isPhone && mDeviceProfile.isTaskbarPresent; } public boolean isBubbleBarOnPhone() { - return enableBubbleBarOnPhones() && enableBubbleBar() && mDeviceProfile.getDeviceProperties().isPhone(); + return enableBubbleBarOnPhones() && enableBubbleBar() && mDeviceProfile.isPhone; } /** @@ -757,7 +729,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext { */ private WindowManager.LayoutParams createAllWindowParams() { final int windowType = - (ENABLE_TASKBAR_NAVBAR_UNIFICATION && isPrimaryDisplay()) ? TYPE_NAVIGATION_BAR + (ENABLE_TASKBAR_NAVBAR_UNIFICATION && mIsPrimaryDisplay) ? TYPE_NAVIGATION_BAR : TYPE_NAVIGATION_BAR_PANEL; WindowManager.LayoutParams windowLayoutParams = createDefaultWindowLayoutParams(windowType, TaskbarActivityContext.WINDOW_TITLE); @@ -822,7 +794,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext { /** Returns whether taskbar should start align. */ public boolean shouldStartAlignTaskbar() { - return isThreeButtonNav() && mDeviceProfile.getTaskbarProfile().isStartAlignTaskbar(); + return isThreeButtonNav() && mDeviceProfile.startAlignTaskbar; } public boolean isGestureNav() { @@ -857,11 +829,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { return mControllers.taskbarDragController; } - @Override - public ModelWriter getModelWriter() { - return mControllers.taskbarViewController.getModelWriter(); - } - @Nullable public BubbleControllers getBubbleControllers() { return mControllers.bubbleControllers.orElse(null); @@ -1062,7 +1029,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { */ public void onDestroy() { onViewDestroyed(); - removeTaskbarSnapshot(); mIsDestroyed = true; mTaskbarFeatureEvaluator.onDestroy(); setUIController(TaskbarUIController.DEFAULT); @@ -1071,6 +1037,8 @@ public class TaskbarActivityContext extends BaseTaskbarContext { mWindowManager.removeViewImmediate(mDragLayer); mAddedWindow = false; } + mTaskbarSnapshotView = null; + mTaskbarSnapshotOverlay = null; } public boolean isDestroyed() { @@ -1147,8 +1115,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext { } private void updateTaskbarSnapshot(AnimatorSet anim, boolean isExpanded) { - if (!ENABLE_TASKBAR_BEHIND_SHADE.isTrue() - || isPhoneMode()) { + if (!ENABLE_TASKBAR_BEHIND_SHADE.isTrue()) { return; } if (mTaskbarSnapshotView == null) { @@ -1158,7 +1125,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { if (!mTaskbarSnapshotView.isAttachedToWindow() && mDragLayer.isAttachedToWindow() && mDragLayer.isLaidOut() - && mDragLayer.isVisibleToUser() && mTaskbarSnapshotView.getParent() == null) { NearestTouchFrame navButtonsView = mDragLayer.findViewById(R.id.navbuttons_view); int oldNavButtonsVisibility = navButtonsView.getVisibility(); @@ -1198,29 +1164,28 @@ public class TaskbarActivityContext extends BaseTaskbarContext { mTaskbarSnapshotOverlay.getDragLayer().addView(mTaskbarSnapshotView, layoutParams); } } else { + Runnable removeSnapshotView = () -> { + if (mTaskbarSnapshotOverlay != null) { + mTaskbarSnapshotOverlay.getDragLayer().removeView(mTaskbarSnapshotView); + mTaskbarSnapshotView = null; + mTaskbarSnapshotOverlay = null; + } + }; if (mTaskbarSnapshotView.isAttachedToWindow()) { mTaskbarSnapshotView.setAlpha(0f); anim.end(); if (Utilities.isRunningInTestHarness()) { - removeTaskbarSnapshot(); + removeSnapshotView.run(); } else { ViewRootSync.synchronizeNextDraw(mDragLayer, mTaskbarSnapshotView, - this::removeTaskbarSnapshot); + removeSnapshotView); } } else { - removeTaskbarSnapshot(); + removeSnapshotView.run(); } } } - private void removeTaskbarSnapshot() { - if (mTaskbarSnapshotOverlay != null) { - mTaskbarSnapshotOverlay.getDragLayer().removeView(mTaskbarSnapshotView); - } - mTaskbarSnapshotView = null; - mTaskbarSnapshotOverlay = null; - } - public void onRotationProposal(int rotation, boolean isValid) { mControllers.rotationButtonController.onRotationProposal(rotation, isValid); } @@ -1296,10 +1261,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext { && !AbstractFloatingView.hasOpenView( this, TYPE_ALL & ~TYPE_TASKBAR_OVERLAY_PROXY)) { // Reverts Taskbar window to its original size - Runnable resetTaskbarFullscreen = () -> setTaskbarWindowFullscreen(false); - mControllers.bubbleControllers.ifPresentOrElse( - bc -> bc.dragToBubbleController.runAfterDropTargetsHidden( - resetTaskbarFullscreen), resetTaskbarFullscreen); + setTaskbarWindowFullscreen(false); } setAutohideSuspendFlag(FLAG_AUTOHIDE_SUSPEND_DRAGGING, isDragInProgress); @@ -1315,13 +1277,13 @@ public class TaskbarActivityContext extends BaseTaskbarContext { public void setTaskbarWindowSize(int size) { // In landscape phone button nav mode, we should set the task bar width instead of height // because this is the only case in which the nav bar is not on the display bottom. - boolean landscapePhoneButtonNav = isPhoneButtonNavMode() && mDeviceProfile.getDeviceProperties().isLandscape(); + boolean landscapePhoneButtonNav = isPhoneButtonNavMode() && mDeviceProfile.isLandscape; if ((landscapePhoneButtonNav ? mWindowLayoutParams.width : mWindowLayoutParams.height) == size || mIsDestroyed) { return; } if (size == MATCH_PARENT) { - size = mDeviceProfile.getDeviceProperties().getHeightPx(); + size = mDeviceProfile.heightPx; } else { mLastRequestedNonFullscreenSize = size; if (mIsFullscreen || mIsTaskbarSizeFrozenForAnimatingBubble) { @@ -1373,8 +1335,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext { ).orElse(0); int taskbarWindowSize; boolean shouldTreatAsTransient = - isTransientTaskbar() || (enableTaskbarPinning() - && mTaskbarFeatureEvaluator.getSupportsTransitionToTransientTaskbar()); + isTransientTaskbar() || (enableTaskbarPinning() && !isThreeButtonNav()); int extraHeightForTaskbarTooltips = enableCursorHoverStates() ? resources.getDimensionPixelSize(R.dimen.arrow_toast_arrow_height) @@ -1389,15 +1350,15 @@ public class TaskbarActivityContext extends BaseTaskbarContext { DeviceProfile transientTaskbarDp = mDeviceProfile.toBuilder(this) .setIsTransientTaskbar(true).build(); - taskbarWindowSize = transientTaskbarDp.getTaskbarProfile().getHeight() - + (2 * transientTaskbarDp.getTaskbarProfile().getBottomMargin()) + taskbarWindowSize = transientTaskbarDp.taskbarHeight + + (2 * transientTaskbarDp.taskbarBottomMargin) + Math.max(extraHeightForTaskbarTooltips, resources.getDimensionPixelSize( R.dimen.transient_taskbar_shadow_blur)); return Math.max(taskbarWindowSize, bubbleBarTop); } - taskbarWindowSize = mDeviceProfile.getTaskbarProfile().getHeight() + taskbarWindowSize = mDeviceProfile.taskbarHeight + getCornerRadius() + extraHeightForTaskbarTooltips; return Math.max(taskbarWindowSize, bubbleBarTop); @@ -1494,28 +1455,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { mControllers.uiController.startSplitSelection(splitSelectSource); } - // If in overview, and a desktop task is available, launches the overview desktop task and - // schedules the provided runnable. - // Returns whether the runnable has been posted. - private boolean runAfterLaunchingDesktopTaskIfInOverview( - RecentsView recents, - Runnable runnableToRun) { - if (recents == null || !isTaskbarShowingDesktopTasks() - || !mControllers.uiController.isInOverviewUi()) { - return false; - } - - RunnableList runnableList = recents.launchRunningDesktopTaskView(); - // Wrapping it in runnable so we post after DW is ready for the app - // launch. - if (runnableList == null) { - return false; - } - - runnableList.add(() -> UI_HELPER_EXECUTOR.execute(runnableToRun)); - return true; - } - protected void onTaskbarIconClicked(View view) { TaskbarUIController taskbarUIController = mControllers.uiController; RecentsView recents = taskbarUIController.getRecentsView(); @@ -1527,17 +1466,25 @@ public class TaskbarActivityContext extends BaseTaskbarContext { // TODO: b/316004172, b/343289567: Handle `DesktopTask` and `SplitTask`. if (tag instanceof SingleTask singleTask) { RemoteTransition remoteTransition = - (isTaskbarShowingDesktopTasks() && canUnminimizeDesktopTask( + (isInDesktopMode() && canUnminimizeDesktopTask( singleTask.getTask().key.id)) ? createDesktopAppLaunchRemoteTransition(AppLaunchType.UNMINIMIZE, Cuj.CUJ_DESKTOP_MODE_APP_LAUNCH_FROM_ICON) : null; - Runnable launchTask = () -> handleGroupTaskLaunch(singleTask, remoteTransition, - isTaskbarShowingDesktopTasks(), DesktopTaskToFrontReason.TASKBAR_TAP); - if (!runAfterLaunchingDesktopTaskIfInOverview(recents, launchTask)) { - launchTask.run(); + if (isInDesktopMode() && mControllers.uiController.isInOverviewUi()) { + RunnableList runnableList = recents.launchRunningDesktopTaskView(); + // Wrapping it in runnable so we post after DW is ready for the app + // launch. + if (runnableList != null) { + runnableList.add(() -> UI_HELPER_EXECUTOR.execute( + () -> handleGroupTaskLaunch(singleTask, remoteTransition, + isInDesktopMode(), + DesktopTaskToFrontReason.TASKBAR_TAP))); + } + } else { + handleGroupTaskLaunch(singleTask, remoteTransition, isInDesktopMode(), + DesktopTaskToFrontReason.TASKBAR_TAP); } - mControllers.taskbarStashController.updateAndAnimateTransientTaskbar(true); } else if (tag instanceof FolderInfo) { // Tapping an expandable folder icon on Taskbar @@ -1560,12 +1507,24 @@ public class TaskbarActivityContext extends BaseTaskbarContext { AppLaunchType.UNMINIMIZE, Cuj.CUJ_DESKTOP_MODE_APP_LAUNCH_FROM_ICON) : null; - Runnable launchTask = () -> - SystemUiProxy.INSTANCE.get(this).showDesktopApp( - info.getTaskId(), remoteTransition, - DesktopTaskToFrontReason.TASKBAR_TAP); - if (!runAfterLaunchingDesktopTaskIfInOverview(recents, launchTask)) { - UI_HELPER_EXECUTOR.execute(launchTask); + + if (isInDesktopMode() && mControllers.uiController.isInOverviewUi()) { + RunnableList runnableList = recents.launchRunningDesktopTaskView(); + if (runnableList != null) { + runnableList.add(() -> + // wrapped it in runnable here since we need the post for DW to be + // ready. if we don't other DW will be gone and only the launched + // task will show. + UI_HELPER_EXECUTOR.execute(() -> + SystemUiProxy.INSTANCE.get(this).showDesktopApp( + info.getTaskId(), remoteTransition, + DesktopTaskToFrontReason.TASKBAR_TAP))); + } + } else { + UI_HELPER_EXECUTOR.execute(() -> + SystemUiProxy.INSTANCE.get(this).showDesktopApp( + info.getTaskId(), remoteTransition, + DesktopTaskToFrontReason.TASKBAR_TAP)); } mControllers.taskbarStashController.updateAndAnimateTransientTaskbar( @@ -1654,6 +1613,15 @@ public class TaskbarActivityContext extends BaseTaskbarContext { } } + public void handleGroupTaskLaunch( + GroupTask task, + @Nullable RemoteTransition remoteTransition, + boolean onDesktop, + DesktopTaskToFrontReason toFrontReason) { + handleGroupTaskLaunch(task, remoteTransition, onDesktop, toFrontReason, + /* onStartCallback= */ null, /* onFinishCallback= */ null); + } + /** * Launches the given GroupTask with the following behavior: * - If the GroupTask is a DesktopTask, launch the tasks in that Desktop. @@ -1669,18 +1637,26 @@ public class TaskbarActivityContext extends BaseTaskbarContext { GroupTask task, @Nullable RemoteTransition remoteTransition, boolean onDesktop, - DesktopTaskToFrontReason toFrontReason) { + DesktopTaskToFrontReason toFrontReason, + @Nullable Runnable onStartCallback, + @Nullable Runnable onFinishCallback) { if (task instanceof DesktopTask) { - UI_HELPER_EXECUTOR.execute( - () -> SystemUiProxy.INSTANCE.get(this).showDesktopApps(getDisplayId(), + UI_HELPER_EXECUTOR.execute(() -> + SystemUiProxy.INSTANCE.get(this).showDesktopApps(getDisplay().getDisplayId(), remoteTransition)); return; } if (onDesktop && task instanceof SingleTask singleTask) { boolean useRemoteTransition = canUnminimizeDesktopTask(singleTask.getTask().key.id); UI_HELPER_EXECUTOR.execute(() -> { + if (onStartCallback != null) { + onStartCallback.run(); + } SystemUiProxy.INSTANCE.get(this).showDesktopApp(singleTask.getTask().key.id, useRemoteTransition ? remoteTransition : null, toFrontReason); + if (onFinishCallback != null) { + onFinishCallback.run(); + } }); return; } @@ -1740,7 +1716,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext { @Nullable View launchingIconView, List<? extends ItemInfo> itemInfos) { boolean launchedFromExternalDisplay = DesktopExperienceFlags.ENABLE_TASKBAR_CONNECTED_DISPLAYS.isTrue() - && !isPrimaryDisplay(); + && !mIsPrimaryDisplay; if (recents == null && !launchedFromExternalDisplay) { return; } @@ -1805,10 +1781,17 @@ public class TaskbarActivityContext extends BaseTaskbarContext { .launchAppPair((AppPairIcon) launchingIconView, -1 /*cuj*/))); } else { - Runnable launchTask = - () -> startItemInfoActivity(itemInfos.get(0), foundTask); - if (!runAfterLaunchingDesktopTaskIfInOverview(recents, launchTask)) { - launchTask.run(); + if (isInDesktopMode() + && mControllers.uiController.isInOverviewUi()) { + RunnableList runnableList = recents.launchRunningDesktopTaskView(); + // Wrapping it in runnable so we post after DW is ready for the app + // launch. + if (runnableList != null) { + runnableList.add(() -> UI_HELPER_EXECUTOR.execute( + () -> startItemInfoActivity(itemInfos.get(0), foundTask))); + } + } else { + startItemInfoActivity(itemInfos.get(0), foundTask); } } } @@ -1831,7 +1814,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext { intent.getComponent(), info.user, intent.getSourceBounds(), null); return; } - int displayId = getDisplayId(); + int displayId = getDisplay() == null ? DEFAULT_DISPLAY : getDisplay().getDisplayId(); // TODO(b/216683257): Use startActivityForResult for search results that require it. if (taskInRecents != null) { // Re launch instance from recents @@ -1844,7 +1827,8 @@ public class TaskbarActivityContext extends BaseTaskbarContext { return; } } - if (shouldLaunchInDesktop(displayId, info)) { + if (isInDesktopMode() + && DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX.isTrue()) { launchDesktopApp(intent, info, displayId); } else { startActivity(intent, null); @@ -1856,21 +1840,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { } } - private boolean shouldLaunchInDesktop(int displayId, ItemInfo info) { - if (!DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX.isTrue()) { - return false; - } - if (DesktopExperienceFlags.ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX.isTrue() - && DisplayController.isInDesktopFirstMode(this) - && mControllers.taskbarRecentAppsController.hasSingleTask(info)) { - // Keep the fullscreen mode in desktop-first mode. - return false; - } - // Always launch in freeform if in external display. - return (DesktopExperienceFlags.ENABLE_FREEFORM_DISPLAY_LAUNCH_PARAMS.isTrue() - && isExternalDisplay(displayId)) || isTaskbarShowingDesktopTasks(); - } - private void launchDesktopApp(Intent intent, ItemInfo info, int displayId) { TaskbarRecentAppsController.TaskState taskState = mControllers.taskbarRecentAppsController.getDesktopItemState(info); @@ -1953,12 +1922,8 @@ public class TaskbarActivityContext extends BaseTaskbarContext { mControllers.uiController.onSwipeToUnstashTaskbar(); boolean wasStashed = mControllers.taskbarStashController.isStashed(); - if (isTransientTaskbar()) { - mControllers.taskbarStashController.updateAndAnimateTransientTaskbar(/* stash= */ false, - SHOULD_BUBBLES_FOLLOW_DEFAULT_VALUE, delayTaskbarBackground); - } else if (shouldAllowTaskbarToAutoStash()) { - mControllers.taskbarStashController.updateAndAnimatePinnedTaskbar(false); - } + mControllers.taskbarStashController.updateAndAnimateTransientTaskbar(/* stash= */ false, + SHOULD_BUBBLES_FOLLOW_DEFAULT_VALUE, delayTaskbarBackground); boolean isStashed = mControllers.taskbarStashController.isStashed(); if (isStashed != wasStashed) { VibratorWrapper.INSTANCE.get(this).vibrateForTaskbarUnstash(); @@ -2013,13 +1978,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { mControllers.taskbarStashController.startUnstashHint(animateForward); } - /** - * @return if we should allow taskbar to auto stash - */ - public boolean shouldAllowTaskbarToAutoStash() { - return mControllers.taskbarStashController.shouldAllowTaskbarToAutoStash(); - } - /** * Enables the auto timeout for taskbar stashing. This method should only be used for taskbar * testing. @@ -2053,18 +2011,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext { return mIsUserSetupComplete; } - /** - * Checks if the simple view mode is enabled. - * - * Since Simple View puts the device in 3 button nav mode, we use that as a precursor to - * checking the actual value in Settings to avoid extra calls to Settings. - */ - public boolean isSimpleViewEnabled() { - return isThreeButtonNav() - && Settings.Secure.getInt(getContentResolver(), SIMPLE_VIEW_SETTINGS_KEY, 0) - > 0; - } - public boolean isNavBarKidsModeActive() { return mIsNavBarKidsMode && isThreeButtonNav(); } @@ -2117,6 +2063,31 @@ public class TaskbarActivityContext extends BaseTaskbarContext { return AnimatorPlaybackController.wrap(fullAnimation, duration); } + /** + * Called when we determine the touchable region. + * + * @param exclude {@code true} then the magnification region computation will omit the window. + */ + public void excludeFromMagnificationRegion(boolean exclude) { + if (mIsExcludeFromMagnificationRegion == exclude || isPhoneMode()) { + return; + } + + if (removeExcludeFromScreenMagnificationFlagUsage()) { + return; + } + + mIsExcludeFromMagnificationRegion = exclude; + if (exclude) { + mWindowLayoutParams.privateFlags |= + WindowManager.LayoutParams.PRIVATE_FLAG_EXCLUDE_FROM_SCREEN_MAGNIFICATION; + } else { + mWindowLayoutParams.privateFlags &= + ~WindowManager.LayoutParams.PRIVATE_FLAG_EXCLUDE_FROM_SCREEN_MAGNIFICATION; + } + notifyUpdateLayoutParams(); + } + void notifyUpdateLayoutParams() { if (mDragLayer.isAttachedToWindow()) { // Copy the current windowLayoutParams to mLastUpdatedLayoutParams and compare the diff. diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarAutohideSuspendController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarAutohideSuspendController.java index 03eef098dc..22796087e4 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarAutohideSuspendController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarAutohideSuspendController.java @@ -53,8 +53,6 @@ public class TaskbarAutohideSuspendController implements public static final int FLAG_AUTOHIDE_SUSPEND_MULTI_INSTANCE_MENU_OPEN = 1 << 7; // User has taskbar overflow open. public static final int FLAG_AUTOHIDE_SUSPEND_TASKBAR_OVERFLOW = 1 << 8; - // Growth Framework nudge overlay is open above the Taskbar. - public static final int FLAG_AUTOHIDE_SUSPEND_GROWTH_NUDGE_OPEN = 1 << 9; @IntDef(flag = true, value = { FLAG_AUTOHIDE_SUSPEND_FULLSCREEN, @@ -66,7 +64,6 @@ public class TaskbarAutohideSuspendController implements FLAG_AUTOHIDE_SUSPEND_HOVERING_ICONS, FLAG_AUTOHIDE_SUSPEND_MULTI_INSTANCE_MENU_OPEN, FLAG_AUTOHIDE_SUSPEND_TASKBAR_OVERFLOW, - FLAG_AUTOHIDE_SUSPEND_GROWTH_NUDGE_OPEN, }) @Retention(RetentionPolicy.SOURCE) public @interface AutohideSuspendFlag { @@ -151,8 +148,6 @@ public class TaskbarAutohideSuspendController implements "FLAG_AUTOHIDE_SUSPEND_MULTI_INSTANCE_MENU_OPEN"); appendFlag(str, flags, FLAG_AUTOHIDE_SUSPEND_TASKBAR_OVERFLOW, "FLAG_AUTOHIDE_SUSPEND_TASKBAR_OVERFLOW"); - appendFlag(str, flags, FLAG_AUTOHIDE_SUSPEND_GROWTH_NUDGE_OPEN, - "FLAG_AUTOHIDE_SUSPEND_GROWTH_NUDGE_OPEN"); return str.toString(); } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarBackgroundRenderer.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarBackgroundRenderer.kt index bd33177bfa..5e02d81035 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarBackgroundRenderer.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarBackgroundRenderer.kt @@ -23,7 +23,6 @@ import android.graphics.Paint import android.graphics.Path import android.graphics.RectF import com.android.app.animation.Interpolators -import com.android.launcher3.Flags import com.android.launcher3.R import com.android.launcher3.Utilities import com.android.launcher3.Utilities.mapRange @@ -31,7 +30,6 @@ import com.android.launcher3.Utilities.mapToRange import com.android.launcher3.icons.GraphicsUtils.setColorAlphaBound import com.android.launcher3.taskbar.TaskbarPinningController.Companion.PINNING_PERSISTENT import com.android.launcher3.taskbar.TaskbarPinningController.Companion.PINNING_TRANSIENT -import com.android.launcher3.taskbar.Utilities.getShapedTaskbarRadius import kotlin.math.min /** Helps draw the taskbar background, made up of a rectangle plus two inverted rounded corners. */ @@ -40,9 +38,9 @@ class TaskbarBackgroundRenderer(private val context: TaskbarActivityContext) { private val isInSetup: Boolean = !context.isUserSetupComplete private val maxTransientTaskbarHeight = - context.transientTaskbarDeviceProfile.taskbarProfile.height.toFloat() + context.transientTaskbarDeviceProfile.taskbarHeight.toFloat() private val maxPersistentTaskbarHeight = - context.persistentTaskbarDeviceProfile.taskbarProfile.height.toFloat() + context.persistentTaskbarDeviceProfile.taskbarHeight.toFloat() var backgroundProgress = if (context.isTransientTaskbar) { PINNING_TRANSIENT @@ -57,7 +55,7 @@ class TaskbarBackgroundRenderer(private val context: TaskbarActivityContext) { val paint = Paint() private val strokePaint = Paint() val lastDrawnTransientRect = RectF() - var backgroundHeight = context.deviceProfile.taskbarProfile.height.toFloat() + var backgroundHeight = context.deviceProfile.taskbarHeight.toFloat() var translationYForSwipe = 0f var translationYForStash = 0f var translationXForBubbleBar = 0f @@ -224,12 +222,7 @@ class TaskbarBackgroundRenderer(private val context: TaskbarActivityContext) { val newWidth = mapRange(progress, backgroundWidthWhileAnimating, fullWidth.toFloat()) val halfWidthDelta = (fullWidth - newWidth) / 2f - val radius = - if (Flags.enableLauncherIconShapes()) { - getShapedTaskbarRadius(context) - } else { - newBackgroundHeight / 2f - } + val radius = newBackgroundHeight / 2f val bottomMarginProgress = bottomMargin * ((1f - progress) / 2f) // Aligns the bottom with the bottom of the stashed handle. diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarControllers.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarControllers.java index f24bd28330..9e15a60ed1 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarControllers.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarControllers.java @@ -69,7 +69,6 @@ public class TaskbarControllers { public final Optional<BubbleControllers> bubbleControllers; public final TaskbarDesktopModeController taskbarDesktopModeController; public final NudgeController nudgeController; - public final NudgeViewController nudgeViewController; @Nullable private LoggableTaskbarController[] mControllersToLog = null; @Nullable private BackgroundRendererController[] mBackgroundRendererControllers = null; @@ -119,8 +118,7 @@ public class TaskbarControllers { TaskbarPinningController taskbarPinningController, Optional<BubbleControllers> bubbleControllers, TaskbarDesktopModeController taskbarDesktopModeController, - NudgeController nudgeController, - NudgeViewController nudgeViewController) { + NudgeController nudgeController) { this.taskbarActivityContext = taskbarActivityContext; this.taskbarDragController = taskbarDragController; this.navButtonController = navButtonController; @@ -149,7 +147,6 @@ public class TaskbarControllers { this.bubbleControllers = bubbleControllers; this.taskbarDesktopModeController = taskbarDesktopModeController; this.nudgeController = nudgeController; - this.nudgeViewController = nudgeViewController; } /** @@ -177,11 +174,10 @@ public class TaskbarControllers { taskbarOverlayController.init(this); taskbarAllAppsController.init(this, sharedState.allAppsVisible); navButtonController.init(this); - bubbleControllers.ifPresentOrElse(controllers -> controllers.init(sharedState, this), - sharedState::clearBubbleData); + bubbleControllers.ifPresent(controllers -> controllers.init(sharedState, this)); taskbarInsetsController.init(this); voiceInteractionWindowController.init(this); - taskbarRecentAppsController.init(this, sharedState.recentTasksBeforeTaskbarRecreate); + taskbarRecentAppsController.init(this); taskbarTranslationController.init(this); taskbarEduTooltipController.init(this); keyboardQuickSwitchController.init(this); @@ -249,7 +245,6 @@ public class TaskbarControllers { }, () -> uiController.onBubbleBarLocationUpdated(null)); // Notify that the ui controller has changed navbarButtonsViewController.onUiControllerChanged(); - taskbarViewController.onUiControllerChanged(); } @Nullable @@ -269,6 +264,7 @@ public class TaskbarControllers { */ public void onDestroy() { mAreAllControllersInitialized = false; + mSharedState = null; taskbarDragController.onDestroy(); navbarButtonsViewController.onDestroy(); @@ -278,7 +274,6 @@ public class TaskbarControllers { taskbarUnfoldAnimationController.onDestroy(); taskbarViewController.onDestroy(); stashedHandleViewController.onDestroy(); - nudgeViewController.onDestroy(); taskbarAutohideSuspendController.onDestroy(); taskbarPopupController.onDestroy(); taskbarForceVisibleImmersiveController.onDestroy(); @@ -294,7 +289,6 @@ public class TaskbarControllers { taskbarDesktopModeController.onDestroy(); mControllersToLog = null; mBackgroundRendererControllers = null; - mSharedState = null; } /** diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarDesktopModeController.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarDesktopModeController.kt index ab502451ac..e96e67dfbc 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarDesktopModeController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarDesktopModeController.kt @@ -16,21 +16,19 @@ package com.android.launcher3.taskbar +import android.content.Context import com.android.launcher3.statehandlers.DesktopVisibilityController import com.android.launcher3.statehandlers.DesktopVisibilityController.TaskbarDesktopModeListener import com.android.launcher3.taskbar.TaskbarBackgroundRenderer.Companion.MAX_ROUNDNESS /** Handles Taskbar in Desktop Windowing mode. */ class TaskbarDesktopModeController( - private val taskbarActivityContext: TaskbarActivityContext, + private val context: Context, private val desktopVisibilityController: DesktopVisibilityController, ) : TaskbarDesktopModeListener { private lateinit var taskbarControllers: TaskbarControllers private lateinit var taskbarSharedState: TaskbarSharedState - val isLauncherAnimationRunning: Boolean - get() = desktopVisibilityController.launcherAnimationRunning - fun init(controllers: TaskbarControllers, sharedState: TaskbarSharedState) { taskbarControllers = controllers taskbarSharedState = sharedState @@ -50,13 +48,10 @@ class TaskbarDesktopModeController( } fun shouldShowDesktopTasksInTaskbar(): Boolean { - return shouldShowDesktopTasksInTaskbar(taskbarActivityContext.displayId) - } - - fun shouldShowDesktopTasksInTaskbar(displayId: Int): Boolean { - return isInDesktopMode(displayId) || - taskbarActivityContext.showDesktopTaskbarForFreeformDisplay() || - (taskbarActivityContext.showLockedTaskbarOnHome() && + val activityContext = taskbarControllers.taskbarActivityContext + return isInDesktopMode(context.displayId) || + activityContext.showDesktopTaskbarForFreeformDisplay() || + (activityContext.showLockedTaskbarOnHome() && taskbarControllers.taskbarStashController.isOnHome) } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarDividerPopupView.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarDividerPopupView.kt index 3ae06abea4..b66344413f 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarDividerPopupView.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarDividerPopupView.kt @@ -29,17 +29,14 @@ import android.view.MotionEvent import android.view.View import android.widget.LinearLayout import android.widget.Switch -import androidx.core.content.res.ResourcesCompat import androidx.core.view.postDelayed import com.android.app.animation.Interpolators.EMPHASIZED_ACCELERATE import com.android.launcher3.Flags -import com.android.launcher3.LauncherPrefs import com.android.launcher3.R import com.android.launcher3.popup.ArrowPopup import com.android.launcher3.popup.RoundedArrowDrawable import com.android.launcher3.util.Themes import com.android.launcher3.views.ActivityContext -import com.android.wm.shell.Flags.enableGsf import kotlin.math.max import kotlin.math.min @@ -82,13 +79,8 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 private val minPaddingFromScreenEdge = resources.getDimension(R.dimen.taskbar_pinning_popup_menu_min_padding_from_screen_edge) - private var alwaysShowTaskbarOn = - if (taskbarActivityContext.isTaskbarShowingDesktopTasks) { - LauncherPrefs.TASKBAR_PINNING_IN_DESKTOP_MODE.get(context) - } else { - !taskbarActivityContext.isTransientTaskbar - } - + // TODO: add test for isTransientTaskbar & long presses divider and ensures the popup shows up. + private var alwaysShowTaskbarOn = !taskbarActivityContext.isTransientTaskbar private var didPreferenceChange = false private var verticalOffsetForPopupView = resources.getDimensionPixelSize(R.dimen.taskbar_pinning_popup_menu_vertical_margin) @@ -117,15 +109,6 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 val alwaysShowTaskbarSwitch = requireViewById<Switch>(R.id.taskbar_pinning_switch) val taskbarVisibilityIcon = requireViewById<View>(R.id.taskbar_pinning_visibility_icon) - if (enableGsf()) { - taskbarVisibilityIcon.background = - ResourcesCompat.getDrawable( - context.resources, - R.drawable.ic_visibility_filled, - context.theme, - ) - } - alwaysShowTaskbarSwitch.isChecked = alwaysShowTaskbarOn alwaysShowTaskbarSwitch.setOnTouchListener { view, event -> (view.parent as View).onTouchEvent(event) @@ -267,8 +250,8 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 } override fun getExtraVerticalOffset(): Int { - return (mActivityContext.deviceProfile.taskbarProfile.height - - mActivityContext.deviceProfile.taskbarProfile.iconSize) / 2 + verticalOffsetForPopupView + return (mActivityContext.deviceProfile.taskbarHeight - + mActivityContext.deviceProfile.taskbarIconSize) / 2 + verticalOffsetForPopupView } override fun onCreateCloseAnimation(anim: AnimatorSet?) { diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarDragController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarDragController.java index eac264736e..4b977e0d23 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarDragController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarDragController.java @@ -18,7 +18,7 @@ package com.android.launcher3.taskbar; import static com.android.app.animation.Interpolators.FAST_OUT_SLOW_IN; import static com.android.launcher3.AbstractFloatingView.TYPE_TASKBAR_ALL_APPS; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APPS; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APPS_PREDICTION; +import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_PREDICTION; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_SEARCH_ACTION; import static com.android.launcher3.logger.LauncherAtom.ContainerInfo.ContainerCase.EXTENDED_CONTAINERS; @@ -131,14 +131,14 @@ public class TaskbarDragController extends DragController<BaseTaskbarContext> im public void init(TaskbarControllers controllers) { mControllers = controllers; - mControllers.runAfterInit(() -> mControllers.bubbleControllers.ifPresent( - c -> c.dragToBubbleController.addBubbleBarDropTargets(this))); + mControllers.bubbleControllers.ifPresent( + c -> c.bubbleBarViewController.addBubbleBarDropTargets(this)); } /** Called when the controller is destroyed. */ public void onDestroy() { mControllers.bubbleControllers.ifPresent( - c -> c.dragToBubbleController.removeBubbleBarDropTargets(this)); + c -> c.bubbleBarViewController.removeBubbleBarDropTargets(this)); } public void setDisallowGlobalDrag(boolean disallowGlobalDrag) { @@ -685,7 +685,7 @@ public class TaskbarDragController extends DragController<BaseTaskbarContext> im if (tag instanceof ItemInfo) { ItemInfo item = (ItemInfo) tag; if (item.container == CONTAINER_ALL_APPS - || item.container == CONTAINER_ALL_APPS_PREDICTION + || item.container == CONTAINER_PREDICTION || isInSearchResultContainer(item)) { if (mDisallowGlobalDrag) { // We're dragging in taskbarAllApps, we don't have folders or shortcuts diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarDragLayer.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarDragLayer.java index 5fedee6a8d..f32569b32c 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarDragLayer.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarDragLayer.java @@ -127,7 +127,6 @@ public class TaskbarDragLayer extends BaseDragLayer<TaskbarActivityContext> { @Override public void recreateControllers() { - super.recreateControllers(); mControllers = mControllerCallbacks.getTouchControllers(); } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarDragLayerController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarDragLayerController.java index 8bd685b3d6..1e193f6817 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarDragLayerController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarDragLayerController.java @@ -163,14 +163,9 @@ public class TaskbarDragLayerController implements TaskbarControllers.LoggableTa * @return Bounds (in TaskbarDragLayer coordinates) where an opened Folder can display. */ public Rect getFolderBoundingBox() { - Rect boundingBox = new Rect( - 0, - 0, - mTaskbarDragLayer.getWidth(), - mTaskbarDragLayer.getHeight() - - mActivity.getDeviceProfile().getTaskbarProfile().getHeight() - - mActivity.getDeviceProfile().getTaskbarProfile().getBottomMargin() - ); + Rect boundingBox = new Rect(0, 0, mTaskbarDragLayer.getWidth(), + mTaskbarDragLayer.getHeight() - mActivity.getDeviceProfile().taskbarHeight + - mActivity.getDeviceProfile().taskbarBottomMargin); boundingBox.inset(mFolderMargin, mFolderMargin); return boundingBox; } @@ -220,7 +215,7 @@ public class TaskbarDragLayerController implements TaskbarControllers.LoggableTa } private void updateBackgroundAlpha() { - if (!mActivity.drawsTaskbarBackground() || mActivity.isDestroyed()) { + if (mActivity.isPhoneMode() || mActivity.isDestroyed()) { return; } @@ -357,7 +352,7 @@ public class TaskbarDragLayerController implements TaskbarControllers.LoggableTa deviceProfile.getDisplayInfo().currentSize.y : taskbarDimensions.y; } else { - return deviceProfile.getTaskbarProfile().getHeight(); + return deviceProfile.taskbarHeight; } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarEduTooltip.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarEduTooltip.kt index eb2d1d98d1..4cfa0ea492 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarEduTooltip.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarEduTooltip.kt @@ -87,8 +87,8 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 // constraint to reduce the number of lines of text and hopefully free up some height. activityContext.dragLayer.measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED) if ( - measuredHeight + activityContext.deviceProfile.taskbarProfile.height >= - activityContext.deviceProfile.deviceProperties.availableHeightPx + measuredHeight + activityContext.deviceProfile.taskbarHeight >= + activityContext.deviceProfile.availableHeightPx ) { updateLayoutParams { width = MATCH_PARENT } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarEduTooltipController.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarEduTooltipController.kt index 9a120f5611..038e374a64 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarEduTooltipController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarEduTooltipController.kt @@ -168,8 +168,6 @@ open class TaskbarEduTooltipController(context: Context) : FontFamily.GSF_HEADLINE_SMALL_EMPHASIZED, ) val swipeAnimation = requireViewById<LottieAnimationView>(R.id.swipe_animation) - swipeAnimation.contentDescription = - context.getString(R.string.taskbar_edu_swipe_animation_description) swipeAnimation.supportLightTheme() handleEduAnimations(listOf(swipeAnimation)) show() @@ -194,14 +192,8 @@ open class TaskbarEduTooltipController(context: Context) : tooltip?.run { allowTouchDismissal = false val splitscreenAnim = requireViewById<LottieAnimationView>(R.id.splitscreen_animation) - splitscreenAnim.contentDescription = - context.getString(R.string.taskbar_edu_split_screen_animation_description) val suggestionsAnim = requireViewById<LottieAnimationView>(R.id.suggestions_animation) - suggestionsAnim.contentDescription = - context.getString(R.string.taskbar_edu_suggested_app_animation_description) val pinningAnim = requireViewById<LottieAnimationView>(R.id.pinning_animation) - pinningAnim.contentDescription = - context.getString(R.string.taskbar_edu_pinning_animation_description) val pinningEdu = requireViewById<View>(R.id.pinning_edu) splitscreenAnim.supportLightTheme() suggestionsAnim.supportLightTheme() @@ -245,7 +237,7 @@ open class TaskbarEduTooltipController(context: Context) : else R.dimen.taskbar_edu_features_tooltip_width_with_two_features ) - bottomMargin += activityContext.deviceProfile.taskbarProfile.height + bottomMargin += activityContext.deviceProfile.taskbarHeight } else { width = resources.getDimensionPixelSize( @@ -293,13 +285,11 @@ open class TaskbarEduTooltipController(context: Context) : val pinningAnim = requireViewById<LottieAnimationView>(R.id.standalone_pinning_animation) - pinningAnim.contentDescription = - context.getString(R.string.taskbar_edu_pinning_animation_description) pinningAnim.supportLightTheme() handleEduAnimations(listOf(pinningAnim)) updateLayoutParams<BaseDragLayer.LayoutParams> { if (activityContext.isTransientTaskbar) { - bottomMargin += activityContext.deviceProfile.taskbarProfile.height + bottomMargin += activityContext.deviceProfile.taskbarHeight } // Unlike other tooltips, we want to align with taskbar divider rather than center. gravity = Gravity.BOTTOM @@ -341,8 +331,6 @@ open class TaskbarEduTooltipController(context: Context) : tooltip?.run { allowTouchDismissal = true val searchEdu = requireViewById<LottieAnimationView>(R.id.search_edu_animation) - searchEdu.contentDescription = - context.getString(R.string.taskbar_edu_suggested_search_animation_description) searchEdu.supportLightTheme() handleEduAnimations(listOf(searchEdu)) val eduSubtitle: TextView = requireViewById(R.id.search_edu_text) @@ -356,7 +344,7 @@ open class TaskbarEduTooltipController(context: Context) : showDisclosureText(eduSubtitle) updateLayoutParams<BaseDragLayer.LayoutParams> { if (activityContext.isTransientTaskbar) { - bottomMargin += activityContext.deviceProfile.taskbarProfile.height + bottomMargin += activityContext.deviceProfile.taskbarHeight } // Unlike other tooltips, we want to align with the all apps button rather than // center. diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarHoverToolTipController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarHoverToolTipController.java index 42ad5b2aa1..76489e0fa1 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarHoverToolTipController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarHoverToolTipController.java @@ -26,7 +26,6 @@ import static com.android.launcher3.taskbar.TaskbarAutohideSuspendController.FLA import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.graphics.Rect; -import android.text.TextUtils; import android.view.ContextThemeWrapper; import android.view.MotionEvent; import android.view.View; @@ -51,6 +50,7 @@ public class TaskbarHoverToolTipController implements View.OnHoverListener { private final TaskbarView mTaskbarView; private final View mHoverView; private final ArrowTipView mHoverToolTipView; + private final String mToolTipText; private final int mYOffset; public TaskbarHoverToolTipController(TaskbarActivityContext activity, TaskbarView taskbarView, @@ -59,6 +59,17 @@ public class TaskbarHoverToolTipController implements View.OnHoverListener { mTaskbarView = taskbarView; mHoverView = hoverView; + if (mHoverView instanceof BubbleTextView) { + mToolTipText = ((BubbleTextView) mHoverView).getText().toString(); + } else if (mHoverView instanceof FolderIcon + && ((FolderIcon) mHoverView).mInfo.title != null) { + mToolTipText = ((FolderIcon) mHoverView).mInfo.title.toString(); + } else if (mHoverView instanceof AppPairIcon) { + mToolTipText = ((AppPairIcon) mHoverView).getTitleTextView().getText().toString(); + } else { + mToolTipText = null; + } + ContextThemeWrapper arrowContextWrapper = new ContextThemeWrapper(mActivity, R.style.ArrowTipTaskbarStyle); mHoverToolTipView = new ArrowTipView(arrowContextWrapper, /* isPointingUp = */ false, @@ -100,15 +111,9 @@ public class TaskbarHoverToolTipController implements View.OnHoverListener { } private void maybeRevealHoverToolTip() { - if (mHoverView == null) { + if (mHoverView == null || mToolTipText == null) { return; } - - final String toolTipText = getToolTipText(); - if (TextUtils.isEmpty(toolTipText)) { - return; - } - // Do not show tooltip if taskbar icons are transitioning to hotseat. if (mActivity.isIconAlignedWithHotseat()) { return; @@ -123,21 +128,7 @@ public class TaskbarHoverToolTipController implements View.OnHoverListener { } Rect iconViewBounds = Utilities.getViewBounds(mHoverView); - mHoverToolTipView.showAtLocation(toolTipText, iconViewBounds.centerX(), + mHoverToolTipView.showAtLocation(mToolTipText, iconViewBounds.centerX(), mTaskbarView.getTop() - mYOffset, /* shouldAutoClose= */ false); } - - private String getToolTipText() { - if (mHoverView instanceof BubbleTextView btv) { - return btv.getText().toString(); - } else if (mHoverView instanceof FolderIcon icon && icon.mInfo.title != null) { - return icon.mInfo.title.toString(); - } else if (mHoverView instanceof AppPairIcon icon) { - return icon.getTitleTextView().getText().toString(); - } else if (mHoverView instanceof TaskbarOverflowView icon) { - return icon.getTextForTooltipPopup(); - } else { - return null; - } - } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarInsetsController.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarInsetsController.kt index c07ae1d5b3..cc6cc645f5 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarInsetsController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarInsetsController.kt @@ -32,10 +32,8 @@ import android.view.InsetsSource.FLAG_INSETS_ROUNDED_CORNER import android.view.InsetsSource.FLAG_SUPPRESS_SCRIM import android.view.Surface import android.view.ViewTreeObserver -import android.view.ViewTreeObserver.InternalInsetsInfo.TOUCHABLE_INSETS_CONTENT import android.view.ViewTreeObserver.InternalInsetsInfo.TOUCHABLE_INSETS_FRAME import android.view.ViewTreeObserver.InternalInsetsInfo.TOUCHABLE_INSETS_REGION -import android.view.ViewTreeObserver.InternalInsetsInfo.TOUCHABLE_INSETS_VISIBLE import android.view.WindowInsets import android.view.WindowInsets.Type.mandatorySystemGestures import android.view.WindowInsets.Type.navigationBars @@ -44,9 +42,7 @@ import android.view.WindowInsets.Type.tappableElement import android.view.WindowManager import android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD import android.view.WindowManager.LayoutParams.TYPE_VOICE_INTERACTION -import androidx.annotation.VisibleForTesting import androidx.core.graphics.toRegion - import com.android.internal.policy.GestureNavigationSettingsObserver import com.android.launcher3.DeviceProfile import com.android.launcher3.R @@ -54,14 +50,6 @@ import com.android.launcher3.anim.AlphaUpdateListener import com.android.launcher3.config.FeatureFlags.ENABLE_TASKBAR_NAVBAR_UNIFICATION import com.android.launcher3.config.FeatureFlags.enableTaskbarNoRecreate import com.android.launcher3.taskbar.TaskbarControllers.LoggableTaskbarController -import com.android.launcher3.taskbar.TaskbarInsetsController.DebugTouchableRegion.Companion.DEFAULT_TOUCH_REGION -import com.android.launcher3.taskbar.TaskbarInsetsController.DebugTouchableRegion.Companion.DRAG_LAYER_INVISIBLE -import com.android.launcher3.taskbar.TaskbarInsetsController.DebugTouchableRegion.Companion.FULLSCREEN_TASKBAR_WINDOW -import com.android.launcher3.taskbar.TaskbarInsetsController.DebugTouchableRegion.Companion.ICONS_INVISIBLE -import com.android.launcher3.taskbar.TaskbarInsetsController.DebugTouchableRegion.Companion.PHONE_MODE -import com.android.launcher3.taskbar.TaskbarInsetsController.DebugTouchableRegion.Companion.SYSTEM_DRAG_IN_PROGRESS -import com.android.launcher3.taskbar.TaskbarInsetsController.DebugTouchableRegion.Companion.TRANSIENT_IN_OVERVIEW -import com.android.launcher3.taskbar.TaskbarInsetsController.DebugTouchableRegion.Companion.UI_CONTROLLER_UNTOUCHABLE import com.android.launcher3.testing.shared.ResourceUtils import com.android.launcher3.util.Executors import java.io.PrintWriter @@ -73,7 +61,6 @@ class TaskbarInsetsController(val context: TaskbarActivityContext) : LoggableTas companion object { private const val INDEX_LEFT = 0 private const val INDEX_RIGHT = 1 - private const val TAG = "TaskbarInsetsController" private fun Region.addBoundsToRegion(bounds: Rect?) { bounds?.let { op(it, Region.Op.UNION) } @@ -95,7 +82,7 @@ class TaskbarInsetsController(val context: TaskbarActivityContext) : LoggableTas context, this::onTaskbarOrBubblebarWindowHeightOrInsetsChanged, ) - @VisibleForTesting val debugTouchableRegion = DebugTouchableRegion() + private val debugTouchableRegion = DebugTouchableRegion() // Initialized in init. private lateinit var controllers: TaskbarControllers @@ -116,81 +103,76 @@ class TaskbarInsetsController(val context: TaskbarActivityContext) : LoggableTas } fun onTaskbarOrBubblebarWindowHeightOrInsetsChanged() { - val taskbarStashController = controllers.taskbarStashController - val tappableHeight = taskbarStashController.tappableHeightToReportToApps - // We only report tappableElement height for unstashed, persistent taskbar, - // which is also when we draw the rounded corners above taskbar on tablets. - val insetsRoundedCornerFlag = - if (tappableHeight > 0 && context.drawsTaskbarBackground()) { - FLAG_INSETS_ROUNDED_CORNER - } else { - 0 - } - - windowLayoutParams.providedInsets = - if (enableTaskbarNoRecreate() && controllers.sharedState != null) { - getProvidedInsets( - controllers.sharedState!!.insetsFrameProviders, - insetsRoundedCornerFlag, - ) - } else { - getProvidedInsets(insetsRoundedCornerFlag) - } - - if (windowLayoutParams.paramsForRotation != null) { - for (layoutParams in windowLayoutParams.paramsForRotation) { - layoutParams.providedInsets = getProvidedInsets(insetsRoundedCornerFlag) - } + val taskbarStashController = controllers.taskbarStashController + val tappableHeight = taskbarStashController.tappableHeightToReportToApps + // We only report tappableElement height for unstashed, persistent taskbar, + // which is also when we draw the rounded corners above taskbar. + val insetsRoundedCornerFlag = + if (tappableHeight > 0) { + FLAG_INSETS_ROUNDED_CORNER + } else { + 0 } - val bubbleControllers = controllers.bubbleControllers.getOrNull() - val taskbarTouchableHeight = taskbarStashController.touchableHeight - val bubblesTouchableHeight = - bubbleControllers?.bubbleStashController?.getTouchableHeight() ?: 0 - // reset touch bounds - defaultTouchableRegion.setEmpty() - if (bubbleControllers != null) { - val bubbleBarViewController = bubbleControllers.bubbleBarViewController - val isBubbleBarVisible = - bubbleControllers.bubbleStashController.isBubbleBarVisible() - val isAnimatingNewBubble = bubbleBarViewController.isAnimatingNewBubble - // if bubble bar is visible or animating new bubble, add bar bounds to the touch - // region - if (isBubbleBarVisible || isAnimatingNewBubble) { - defaultTouchableRegion.addBoundsToRegion( - bubbleBarViewController.bubbleBarBounds - ) - defaultTouchableRegion.addBoundsToRegion(bubbleBarViewController.flyoutBounds) - } - } - if ( - taskbarStashController.isInApp || - controllers.uiController.isInOverviewUi || - context.showLockedTaskbarOnHome() - ) { - // only add the taskbar touch region if not on home - val bottom = windowLayoutParams.height - val top = bottom - taskbarTouchableHeight - val right = context.deviceProfile.deviceProperties.widthPx - defaultTouchableRegion.addBoundsToRegion(Rect(/* left= */ 0, top, right, bottom)) + windowLayoutParams.providedInsets = + if (enableTaskbarNoRecreate() && controllers.sharedState != null) { + getProvidedInsets( + controllers.sharedState!!.insetsFrameProviders, + insetsRoundedCornerFlag, + ) + } else { + getProvidedInsets(insetsRoundedCornerFlag) } - // Pre-calculate insets for different providers across different rotations for this - // gravity - for (rotation in Surface.ROTATION_0..Surface.ROTATION_270) { - // Add insets for navbar rotated params - val layoutParams = windowLayoutParams.paramsForRotation[rotation] - for (provider in layoutParams.providedInsets) { - setProviderInsets(provider, layoutParams.gravity, rotation) - } + if (windowLayoutParams.paramsForRotation != null) { + for (layoutParams in windowLayoutParams.paramsForRotation) { + layoutParams.providedInsets = getProvidedInsets(insetsRoundedCornerFlag) } - // Also set the parent providers (i.e. not in paramsForRotation). - for (provider in windowLayoutParams.providedInsets) { - setProviderInsets(provider, windowLayoutParams.gravity, context.display.rotation) - } - context.notifyUpdateLayoutParams() } + val bubbleControllers = controllers.bubbleControllers.getOrNull() + val taskbarTouchableHeight = taskbarStashController.touchableHeight + val bubblesTouchableHeight = + bubbleControllers?.bubbleStashController?.getTouchableHeight() ?: 0 + // reset touch bounds + defaultTouchableRegion.setEmpty() + if (bubbleControllers != null) { + val bubbleBarViewController = bubbleControllers.bubbleBarViewController + val isBubbleBarVisible = bubbleControllers.bubbleStashController.isBubbleBarVisible() + val isAnimatingNewBubble = bubbleBarViewController.isAnimatingNewBubble + // if bubble bar is visible or animating new bubble, add bar bounds to the touch region + if (isBubbleBarVisible || isAnimatingNewBubble) { + defaultTouchableRegion.addBoundsToRegion(bubbleBarViewController.bubbleBarBounds) + defaultTouchableRegion.addBoundsToRegion(bubbleBarViewController.flyoutBounds) + } + } + if ( + taskbarStashController.isInApp || + controllers.uiController.isInOverviewUi || + context.showLockedTaskbarOnHome() + ) { + // only add the taskbar touch region if not on home + val bottom = windowLayoutParams.height + val top = bottom - taskbarTouchableHeight + val right = context.deviceProfile.widthPx + defaultTouchableRegion.addBoundsToRegion(Rect(/* left= */ 0, top, right, bottom)) + } + + // Pre-calculate insets for different providers across different rotations for this gravity + for (rotation in Surface.ROTATION_0..Surface.ROTATION_270) { + // Add insets for navbar rotated params + val layoutParams = windowLayoutParams.paramsForRotation[rotation] + for (provider in layoutParams.providedInsets) { + setProviderInsets(provider, layoutParams.gravity, rotation) + } + } + // Also set the parent providers (i.e. not in paramsForRotation). + for (provider in windowLayoutParams.providedInsets) { + setProviderInsets(provider, windowLayoutParams.gravity, context.display.rotation) + } + context.notifyUpdateLayoutParams() + } + /** * This is for when ENABLE_TASKBAR_NO_RECREATION is enabled. We generate one instance of * providedInsets and use it across the entire lifecycle of TaskbarManager. The only thing we @@ -305,7 +287,7 @@ class TaskbarInsetsController(val context: TaskbarActivityContext) : LoggableTas ) if ( (context.isGestureNav || ENABLE_TASKBAR_NAVBAR_UNIFICATION) && - provider.type == tappableElement() + provider.type == tappableElement() ) { provider.insetsSizeOverrides = insetsSizeOverrideForTappableElement } else if (provider.type != systemGestures()) { @@ -362,10 +344,10 @@ class TaskbarInsetsController(val context: TaskbarActivityContext) : LoggableTas */ fun updateInsetsTouchability(insetsInfo: ViewTreeObserver.InternalInsetsInfo) { insetsInfo.touchableRegion.setEmpty() - val touchableInsets: Int val bubbleBarVisible = controllers.bubbleControllers.isPresent && controllers.bubbleControllers.get().bubbleBarViewController.isBubbleBarVisible() + var insetsIsTouchableRegion = true // Prevents the taskbar from taking touches and conflicting with setup wizard if ( context.isPhoneButtonNavMode && @@ -373,24 +355,34 @@ class TaskbarInsetsController(val context: TaskbarActivityContext) : LoggableTas (!controllers.navbarButtonsViewController.isImeVisible || !controllers.navbarButtonsViewController.isImeRenderingNavButtons) ) { - touchableInsets = TOUCHABLE_INSETS_FRAME - debugTouchableRegion.lastSetTouchableReason = PHONE_MODE + insetsInfo.setTouchableInsets(TOUCHABLE_INSETS_FRAME) + insetsIsTouchableRegion = false + debugTouchableRegion.lastSetTouchableReason = + "Phone button nav mode: Fullscreen touchable, IME not affecting nav buttons" } else if (context.dragLayer.alpha < AlphaUpdateListener.ALPHA_CUTOFF_THRESHOLD) { // Let touches pass through us. - touchableInsets = TOUCHABLE_INSETS_REGION - debugTouchableRegion.lastSetTouchableReason = DRAG_LAYER_INVISIBLE + insetsInfo.setTouchableInsets(TOUCHABLE_INSETS_REGION) + debugTouchableRegion.lastSetTouchableReason = "Taskbar is invisible" + } else if ( + controllers.navbarButtonsViewController.isImeVisible && + controllers.taskbarStashController.isStashed + ) { + // Let touches pass through us. + insetsInfo.setTouchableInsets(TOUCHABLE_INSETS_REGION) + debugTouchableRegion.lastSetTouchableReason = "Stashed over IME" } else if (!controllers.uiController.isTaskbarTouchable) { // Let touches pass through us. - touchableInsets = TOUCHABLE_INSETS_REGION - debugTouchableRegion.lastSetTouchableReason = UI_CONTROLLER_UNTOUCHABLE + insetsInfo.setTouchableInsets(TOUCHABLE_INSETS_REGION) + debugTouchableRegion.lastSetTouchableReason = "Taskbar is not touchable" } else if (controllers.taskbarDragController.isSystemDragInProgress) { // Let touches pass through us. - touchableInsets = TOUCHABLE_INSETS_REGION - debugTouchableRegion.lastSetTouchableReason = SYSTEM_DRAG_IN_PROGRESS + insetsInfo.setTouchableInsets(TOUCHABLE_INSETS_REGION) + debugTouchableRegion.lastSetTouchableReason = "System drag is in progress" } else if (context.isTaskbarWindowFullscreen) { // Intercept entire fullscreen window. - touchableInsets = TOUCHABLE_INSETS_FRAME - debugTouchableRegion.lastSetTouchableReason = FULLSCREEN_TASKBAR_WINDOW + insetsInfo.setTouchableInsets(TOUCHABLE_INSETS_FRAME) + insetsIsTouchableRegion = false + debugTouchableRegion.lastSetTouchableReason = "Taskbar is fullscreen" context.dragLayer.getBoundsInWindow(debugTouchableRegion.lastSetTouchableBounds, false) } else if ( controllers.taskbarViewController.areIconsVisible() || @@ -417,27 +409,27 @@ class TaskbarInsetsController(val context: TaskbarActivityContext) : LoggableTas region.addBoundsToRegion(bubbleBarBounds) } insetsInfo.touchableRegion.set(region) - debugTouchableRegion.lastSetTouchableReason = TRANSIENT_IN_OVERVIEW + debugTouchableRegion.lastSetTouchableReason = "Transient Taskbar is in Overview" debugTouchableRegion.lastSetTouchableBounds.set(region.bounds) } else { insetsInfo.touchableRegion.set(defaultTouchableRegion) - debugTouchableRegion.lastSetTouchableReason = DEFAULT_TOUCH_REGION + debugTouchableRegion.lastSetTouchableReason = "Using default touchable region" debugTouchableRegion.lastSetTouchableBounds.set(defaultTouchableRegion.bounds) } - touchableInsets = TOUCHABLE_INSETS_REGION + insetsInfo.setTouchableInsets(TOUCHABLE_INSETS_REGION) + insetsIsTouchableRegion = false } else { - touchableInsets = TOUCHABLE_INSETS_REGION - debugTouchableRegion.lastSetTouchableReason = ICONS_INVISIBLE + insetsInfo.setTouchableInsets(TOUCHABLE_INSETS_REGION) + debugTouchableRegion.lastSetTouchableReason = + "Icons are not visible, but other components such as 3 buttons might be" } // Always have nav buttons be touchable controllers.navbarButtonsViewController.addVisibleButtonsRegion( context.dragLayer, insetsInfo.touchableRegion, ) - - insetsInfo.setTouchableInsets(touchableInsets) - debugTouchableRegion.lastSetTouchableInsets = touchableInsets debugTouchableRegion.lastSetTouchableBounds.set(insetsInfo.touchableRegion.bounds) + context.excludeFromMagnificationRegion(insetsIsTouchableRegion) } /** Draws the last set touchableRegion as a red rectangle onto the given Canvas. */ @@ -468,42 +460,12 @@ class TaskbarInsetsController(val context: TaskbarActivityContext) : LoggableTas } pw.println() } - pw.println("$prefix\tdebugTouchableRegion=$debugTouchableRegion") + pw.println("$prefix\tlastSetTouchableBounds=${debugTouchableRegion.lastSetTouchableBounds}") + pw.println("$prefix\tlastSetTouchableReason=${debugTouchableRegion.lastSetTouchableReason}") } class DebugTouchableRegion { - - companion object { - const val PHONE_MODE = - "Phone button nav mode: Fullscreen touchable, IME not affecting nav buttons" - const val DRAG_LAYER_INVISIBLE = "Taskbar is invisible" - const val UI_CONTROLLER_UNTOUCHABLE = "Taskbar is not touchable" - const val SYSTEM_DRAG_IN_PROGRESS = "System drag is in progress" - const val FULLSCREEN_TASKBAR_WINDOW = "Taskbar is fullscreen" - const val TRANSIENT_IN_OVERVIEW = "Transient Taskbar is in Overview" - const val DEFAULT_TOUCH_REGION = "Using default touchable region" - const val ICONS_INVISIBLE = - "Icons are not visible, but other components such as 3 buttons might be" - } - val lastSetTouchableBounds = Rect() var lastSetTouchableReason = "" - var lastSetTouchableInsets = TOUCHABLE_INSETS_FRAME - - override fun toString(): String { - return "{lastSetTouchableBounds=$lastSetTouchableBounds" + - ", lastSetTouchableReason=\"$lastSetTouchableReason\"" + - ", lastSetTouchableInsets=${touchableInsetsToString()}" - } - - private fun touchableInsetsToString(): String { - return when (lastSetTouchableInsets) { - TOUCHABLE_INSETS_FRAME -> "TOUCHABLE_INSETS_FRAME" - TOUCHABLE_INSETS_CONTENT -> "TOUCHABLE_INSETS_CONTENT" - TOUCHABLE_INSETS_VISIBLE -> "TOUCHABLE_INSETS_VISIBLE" - TOUCHABLE_INSETS_REGION -> "TOUCHABLE_INSETS_REGION" - else -> "Unknown" - } - } } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarLauncherStateController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarLauncherStateController.java index bf87d3e0df..77c3e0a41c 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarLauncherStateController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarLauncherStateController.java @@ -62,11 +62,11 @@ import com.android.launcher3.statemanager.StateManager; import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController.BubbleLauncherState; import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.launcher3.util.MultiPropertyFactory.MultiProperty; -import com.android.quickstep.BaseContainerInterface; -import com.android.quickstep.OverviewComponentObserver; import com.android.quickstep.RecentsAnimationCallbacks; import com.android.quickstep.RecentsAnimationController; import com.android.quickstep.fallback.RecentsState; +import com.android.quickstep.fallback.window.RecentsDisplayModel; +import com.android.quickstep.fallback.window.RecentsWindowFlags; import com.android.quickstep.fallback.window.RecentsWindowManager; import com.android.quickstep.util.ScalingWorkspaceRevealAnim; import com.android.quickstep.util.SystemUiFlagUtils; @@ -80,7 +80,6 @@ import java.io.PrintWriter; import java.util.HashMap; import java.util.StringJoiner; import java.util.function.Consumer; -import java.util.function.Function; /** * Track LauncherState, RecentsAnimation, resumed state for task bar in one place here and animate @@ -361,16 +360,16 @@ public class TaskbarLauncherStateController { if (mTaskBarRecentsAnimationListener != null) { mTaskBarRecentsAnimationListener.endGestureStateOverride( - !isStateManagerInState(LauncherState.OVERVIEW), /* canceled= */ false); + !mLauncher.isInState(LauncherState.OVERVIEW), false /*canceled*/); } mTaskBarRecentsAnimationListener = new TaskBarRecentsAnimationListener(callbacks); callbacks.addListener(mTaskBarRecentsAnimationListener); RecentsView recentsView = mControllers.uiController.getRecentsView(); if (recentsView != null) { recentsView.setTaskLaunchListener(() -> mTaskBarRecentsAnimationListener - .endGestureStateOverride(/* finishedToApp= */ true, /* canceled= */ false)); + .endGestureStateOverride(true, false /*canceled*/)); recentsView.setTaskLaunchCancelledRunnable(() -> { - updateStateForUserFinishedToApp(/* finishedToApp= */ false); + updateStateForUserFinishedToApp(false /* finishedToApp */); }); } @@ -507,10 +506,6 @@ public class TaskbarLauncherStateController { + ", toAlignment: " + toAlignment); } mControllers.bubbleControllers.ifPresent(controllers -> { - // Ignore state changes when taskbar is destroyed - if (mControllers.taskbarActivityContext.isDestroyed()) { - return; - } // Show the bubble bar when on launcher home (hotseat icons visible) or in overview boolean onOverview = isInLauncher && mLauncherState == LauncherState.OVERVIEW; boolean hotseatIconsVisible = isInLauncher && mLauncherState.areElementsVisible( @@ -527,22 +522,11 @@ public class TaskbarLauncherStateController { stashController.updateStateForFlag(FLAG_IN_OVERVIEW, mLauncherState == LauncherState.OVERVIEW); - // Update taskbar stash flag here since we are skipping the playStateTransitionAnim below - if (isPinnedTaskbar) { - stashController.updateStateForFlag(FLAG_IN_STASHED_LAUNCHER_STATE, - mLauncherState.isTaskbarStashed(mLauncher)); - } - AnimatorSet animatorSet = new AnimatorSet(); if (hasAnyFlag(changedFlags, FLAG_LAUNCHER_IN_STATE_TRANSITION)) { boolean launcherTransitionCompleted = !hasAnyFlag(FLAG_LAUNCHER_IN_STATE_TRANSITION); - - // We are skipping the taskbar stash animation for pinned taskbar, as we handle that now - // in setupPinnedTaskbarAnimation. - if (!isPinnedTaskbar) { - playStateTransitionAnim(animatorSet, duration, launcherTransitionCompleted); - } + playStateTransitionAnim(animatorSet, duration, launcherTransitionCompleted); if (launcherTransitionCompleted && mLauncherState == LauncherState.QUICK_SWITCH_FROM_HOME) { @@ -566,8 +550,6 @@ public class TaskbarLauncherStateController { @Override public void onAnimationStart(Animator animation) { mIsAnimatingToLauncher = isInLauncher; - // updateOverviewDragState uses mIsAnimatingToLauncher as well, so poke it. - updateOverviewDragState(mLauncherState); if (DEBUG) { Log.d(TAG, "onAnimationStart - FLAG_IN_APP: " + !isInLauncher); @@ -579,8 +561,6 @@ public class TaskbarLauncherStateController { @Override public void onAnimationEnd(Animator animation) { mIsAnimatingToLauncher = false; - // updateOverviewDragState uses mIsAnimatingToLauncher as well, so poke it. - updateOverviewDragState(mLauncherState); } }); @@ -634,7 +614,7 @@ public class TaskbarLauncherStateController { AnimatedFloat taskbarBgOffset = mControllers.taskbarDragLayerController.getTaskbarBackgroundOffset(); boolean showTaskbar = shouldShowTaskbar(mControllers.taskbarActivityContext, isInLauncher, - isInOverview) && !mControllers.taskbarStashController.isStashed(); + isInOverview); float taskbarBgOffsetEnd = showTaskbar ? 0f : 1f; float taskbarBgOffsetStart = showTaskbar ? 1f : 0f; @@ -783,7 +763,6 @@ public class TaskbarLauncherStateController { return !isInLauncher || isInOverview; } - // Used to stash/unstash pinned taskbar between home, overview, in app states. private void setupPinnedTaskbarAnimation(AnimatorSet animatorSet, boolean showTaskbar, AnimatedFloat taskbarBgOffset, float taskbarBgOffsetStart, float taskbarBgOffsetEnd, long duration, Animator taskbarBackgroundAlpha) { @@ -794,26 +773,19 @@ public class TaskbarLauncherStateController { ALPHA_CHANNEL_TASKBAR_ALIGNMENT); } - float targetTaskbarIconAlpha = showTaskbar ? 1f : 0f; - if (mTaskbarAlphaForHome.getValue() != targetTaskbarIconAlpha) { - animatorSet.play(mTaskbarAlphaForHome - .animateToValue(targetTaskbarIconAlpha) - .setDuration(duration)); - } if ((taskbarBgOffset.value != taskbarBgOffsetEnd && !taskbarBgOffset.isAnimating()) || taskbarBgOffset.isAnimatingToValue(taskbarBgOffsetStart)) { taskbarBgOffset.cancelAnimation(); + Animator taskbarIconAlpha = mTaskbarAlphaForHome.animateToValue( + showTaskbar ? 1f : 0f); AnimatedFloat taskbarIconTranslationYForHome = mControllers.taskbarViewController.mTaskbarIconTranslationYForHome; ObjectAnimator taskbarBackgroundOffset = taskbarBgOffset.animateToValue( taskbarBgOffsetStart, taskbarBgOffsetEnd); ObjectAnimator taskbarIconsYTranslation = null; - float taskbarHeight = mControllers - .taskbarActivityContext - .getDeviceProfile() - .getTaskbarProfile() - .getHeight(); + float taskbarHeight = + mControllers.taskbarActivityContext.getDeviceProfile().taskbarHeight; if (showTaskbar) { taskbarIconsYTranslation = taskbarIconTranslationYForHome.animateToValue( taskbarHeight, 0); @@ -822,9 +794,11 @@ public class TaskbarLauncherStateController { taskbarHeight); } + taskbarIconAlpha.setDuration(duration); taskbarIconsYTranslation.setDuration(duration); taskbarBackgroundOffset.setDuration(duration); + animatorSet.play(taskbarIconAlpha); animatorSet.play(taskbarIconsYTranslation); animatorSet.play(taskbarBackgroundOffset); } @@ -1082,12 +1056,6 @@ public class TaskbarLauncherStateController { translationXAnimation.start(); } - private boolean isStateManagerInState(@NonNull LauncherState state) { - return mLauncher.isInState(state) || state == getFromRecentsWindowManager( - recentsWindowManager -> - toLauncherState(recentsWindowManager.getStateManager().getState())); - } - private final class TaskBarRecentsAnimationListener implements RecentsAnimationCallbacks.RecentsAnimationListener { private final RecentsAnimationCallbacks mCallbacks; @@ -1098,13 +1066,18 @@ public class TaskbarLauncherStateController { @Override public void onRecentsAnimationCanceled(HashMap<Integer, ThumbnailData> thumbnailDatas) { - boolean isInOverview = isStateManagerInState(LauncherState.OVERVIEW); - endGestureStateOverride(!isInOverview, /* canceled= */ true); + boolean isInOverview = mLauncher.isInState(LauncherState.OVERVIEW); + endGestureStateOverride(!isInOverview, true /*canceled*/); } @Override public void onRecentsAnimationFinished(RecentsAnimationController controller) { - endGestureStateOverride(!controller.getFinishTargetIsLauncher(), /* canceled= */ false); + endGestureStateOverride(!controller.getFinishTargetIsLauncher(), + controller.getLauncherIsVisibleAtFinish(), false /*canceled*/); + } + + private void endGestureStateOverride(boolean finishedToApp, boolean canceled) { + endGestureStateOverride(finishedToApp, finishedToApp, canceled); } /** @@ -1114,35 +1087,45 @@ public class TaskbarLauncherStateController { * * @param finishedToApp {@code true} if the recents animation finished to showing an app and * not workspace or overview + * @param launcherIsVisible {code true} if launcher is visible at finish * @param canceled {@code true} if the recents animation was canceled instead of * finishing * to completion */ - private void endGestureStateOverride(boolean finishedToApp, boolean canceled) { + private void endGestureStateOverride(boolean finishedToApp, boolean launcherIsVisible, + boolean canceled) { mCallbacks.removeListener(this); mTaskBarRecentsAnimationListener = null; RecentsView recentsView = mControllers.uiController.getRecentsView(); if (recentsView != null) { recentsView.setTaskLaunchListener(null); - recentsView.setTaskLaunchCancelledRunnable(null); } if (mSkipNextRecentsAnimEnd && !canceled) { mSkipNextRecentsAnimEnd = false; return; } - updateStateForUserFinishedToApp(finishedToApp); + updateStateForUserFinishedToApp(finishedToApp, launcherIsVisible); } } + /** + * @see #updateStateForUserFinishedToApp(boolean, boolean) + */ + private void updateStateForUserFinishedToApp(boolean finishedToApp) { + updateStateForUserFinishedToApp(finishedToApp, !finishedToApp); + } + /** * Updates the visible state immediately to ensure a seamless handoff. * * @param finishedToApp True iff user is in an app. + * @param launcherIsVisible True iff launcher is still visible (ie. transparent app) */ - private void updateStateForUserFinishedToApp(boolean finishedToApp) { + private void updateStateForUserFinishedToApp(boolean finishedToApp, + boolean launcherIsVisible) { // Update the visible state immediately to ensure a seamless handoff - boolean launcherVisible = !finishedToApp; + boolean launcherVisible = !finishedToApp || launcherIsVisible; updateStateForFlag(FLAG_TRANSITION_TO_VISIBLE, false); updateStateForFlag(FLAG_VISIBLE, launcherVisible); applyState(); @@ -1151,7 +1134,7 @@ public class TaskbarLauncherStateController { if (DEBUG) { Log.d(TAG, "endGestureStateOverride - FLAG_IN_APP: " + finishedToApp); } - controller.updateStateForFlag(FLAG_IN_APP, finishedToApp); + controller.updateStateForFlag(FLAG_IN_APP, finishedToApp && !launcherIsVisible); controller.applyState(); } @@ -1159,24 +1142,14 @@ public class TaskbarLauncherStateController { * Helper function to run a callback on the RecentsWindowManager (if it exists). */ private void runForRecentsWindowManager(Consumer<RecentsWindowManager> callback) { - getFromRecentsWindowManager(recentsWindowManager -> { - callback.accept(recentsWindowManager); - return null; - }); - } - - private <T> @Nullable T getFromRecentsWindowManager( - Function<RecentsWindowManager, T> function) { - final TaskbarActivityContext taskbarContext = mControllers.taskbarActivityContext; - int displayId = taskbarContext.getDisplayId(); - BaseContainerInterface<?, ?> containerInterface = OverviewComponentObserver.INSTANCE.get( - taskbarContext).getContainerInterface(displayId); - if (containerInterface == null - || !(containerInterface.getCreatedContainer() instanceof RecentsWindowManager - recentsWindowManager)) { - return null; + if (RecentsWindowFlags.getEnableOverviewInWindow()) { + final TaskbarActivityContext taskbarContext = mControllers.taskbarActivityContext; + RecentsWindowManager recentsWindowManager = RecentsDisplayModel.getINSTANCE() + .get(taskbarContext).getRecentsWindowManager(taskbarContext.getDisplayId()); + if (recentsWindowManager != null) { + callback.accept(recentsWindowManager); + } } - return function.apply(recentsWindowManager); } private static String getStateString(int flags) { diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarModelCallbacks.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarModelCallbacks.java index 15807ae547..15c7a8d59d 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarModelCallbacks.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarModelCallbacks.java @@ -15,26 +15,20 @@ */ package com.android.launcher3.taskbar; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APPS_PREDICTION; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT_PREDICTION; - import android.util.SparseArray; import android.view.View; import androidx.annotation.NonNull; -import androidx.annotation.Nullable; import androidx.annotation.UiThread; import com.android.launcher3.LauncherSettings.Favorites; -import com.android.launcher3.celllayout.CellInfo; import com.android.launcher3.model.BgDataModel; +import com.android.launcher3.model.BgDataModel.FixedContainerItems; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.model.data.PredictedContainerInfo; -import com.android.launcher3.model.data.WorkspaceData; -import com.android.launcher3.taskbar.TaskbarView.TaskbarLayoutParams; import com.android.launcher3.util.ComponentKey; +import com.android.launcher3.util.IntArray; +import com.android.launcher3.util.IntSet; import com.android.launcher3.util.ItemInfoMatcher; import com.android.launcher3.util.LauncherBindableItemsContainer; import com.android.launcher3.util.PackageUserKey; @@ -42,6 +36,7 @@ import com.android.launcher3.util.Preconditions; import com.android.quickstep.util.GroupTask; import java.io.PrintWriter; +import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; @@ -67,6 +62,7 @@ public class TaskbarModelCallbacks implements // Used to defer any UI updates during the SUW unstash animation. private boolean mDeferUpdatesForSUW; private Runnable mDeferredUpdates; + private boolean mBindingItems = false; public TaskbarModelCallbacks( TaskbarActivityContext context, TaskbarView container) { @@ -79,25 +75,36 @@ public class TaskbarModelCallbacks implements } @Override - public void bindCompleteModel(WorkspaceData itemIdMap, boolean isBindingSync) { + public void startBinding() { + mBindingItems = true; mHotseatItems.clear(); - mPredictedItems = itemIdMap.getPredictedContents(CONTAINER_HOTSEAT_PREDICTION); - handleItemsAdded(itemIdMap); + mPredictedItems = Collections.emptyList(); + } - if (itemIdMap.get(CONTAINER_ALL_APPS_PREDICTION) instanceof PredictedContainerInfo pci) { - mControllers.taskbarAllAppsController.setPredictedApps(pci.getContents()); - } + @Override + public void finishBindingItems(IntSet pagesBoundFirst) { + mBindingItems = false; commitItemsToUI(); } @Override - public void bindItemsAdded(List<ItemInfo> items) { - if (handleItemsAdded(items)) { + public void bindAppsAdded(IntArray newScreens, ArrayList<ItemInfo> addNotAnimated, + ArrayList<ItemInfo> addAnimated) { + boolean add1 = handleItemsAdded(addNotAnimated); + boolean add2 = handleItemsAdded(addAnimated); + if (add1 || add2) { commitItemsToUI(); } } - private boolean handleItemsAdded(Iterable<ItemInfo> items) { + @Override + public void bindItems(List<ItemInfo> shortcuts, boolean forceAnimateIcons) { + if (handleItemsAdded(shortcuts)) { + commitItemsToUI(); + } + } + + private boolean handleItemsAdded(List<ItemInfo> items) { boolean modified = false; for (ItemInfo item : items) { if (item.container == Favorites.CONTAINER_HOTSEAT) { @@ -109,36 +116,8 @@ public class TaskbarModelCallbacks implements } @Override - public void bindItemsUpdated(@NonNull Set<ItemInfo> updates) { - Set<ItemInfo> itemsToRebind = updateContainerItems(updates, mContext); - boolean removed = handleItemsRemoved(ItemInfoMatcher.ofItems(itemsToRebind)); - boolean added = handleItemsAdded(itemsToRebind); - - boolean predictionsUpdated = false; - for (ItemInfo update: updates) { - if (update instanceof PredictedContainerInfo pci) { - if (pci.id == Favorites.CONTAINER_HOTSEAT_PREDICTION) { - mPredictedItems = pci.getContents(); - predictionsUpdated = true; - } else if (pci.id == CONTAINER_ALL_APPS_PREDICTION) { - mControllers.taskbarAllAppsController.setPredictedApps(pci.getContents()); - } - } - } - if (removed || added || predictionsUpdated) { - commitItemsToUI(); - } - } - - @Nullable - @Override - public CellInfo getCellInfoForView(@NonNull View view) { - return view.getLayoutParams() instanceof TaskbarLayoutParams tlp ? tlp.bindInfo : null; - } - - @Override - public boolean isContainerSupported(int container) { - return container == CONTAINER_HOTSEAT || container == CONTAINER_HOTSEAT_PREDICTION; + public void bindItemsUpdated(Set<ItemInfo> updates) { + updateContainerItems(updates, mContext); } @Override @@ -171,7 +150,30 @@ public class TaskbarModelCallbacks implements return modified; } + @Override + public void bindItemsModified(List<ItemInfo> items) { + boolean removed = handleItemsRemoved(ItemInfoMatcher.ofItems(items)); + boolean added = handleItemsAdded(items); + if (removed || added) { + commitItemsToUI(); + } + } + + @Override + public void bindExtraContainerItems(FixedContainerItems item) { + if (item.containerId == Favorites.CONTAINER_HOTSEAT_PREDICTION) { + mPredictedItems = item.items; + commitItemsToUI(); + } else if (item.containerId == Favorites.CONTAINER_PREDICTION) { + mControllers.taskbarAllAppsController.setPredictedApps(item.items); + } + } + private void commitItemsToUI() { + if (mBindingItems) { + return; + } + ItemInfo[] hotseatItemInfos = new ItemInfo[mContext.getDeviceProfile().numShownHotseatIcons]; int predictionSize = mPredictedItems.size(); diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarModelCallbacksFactory.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarModelCallbacksFactory.kt index fbf8266e69..eb03b4abc5 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarModelCallbacksFactory.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarModelCallbacksFactory.kt @@ -17,11 +17,12 @@ package com.android.launcher3.taskbar import android.content.Context -import com.android.launcher3.dagger.LauncherComponentProvider -import javax.inject.Inject +import com.android.launcher3.R +import com.android.launcher3.util.ResourceBasedOverride +import com.android.launcher3.util.ResourceBasedOverride.Overrides /** Creates [TaskbarModelCallbacks] instances. */ -open class TaskbarModelCallbacksFactory @Inject constructor() { +open class TaskbarModelCallbacksFactory : ResourceBasedOverride { open fun create( activityContext: TaskbarActivityContext, @@ -31,7 +32,11 @@ open class TaskbarModelCallbacksFactory @Inject constructor() { companion object { @JvmStatic fun newInstance(context: Context): TaskbarModelCallbacksFactory { - return LauncherComponentProvider.get(context).getTaskbarModelCallbacksFactory() + return Overrides.getObject( + TaskbarModelCallbacksFactory::class.java, + context, + R.string.taskbar_model_callbacks_factory_class, + ) } } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarNavButtonController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarNavButtonController.java index b19a19076f..e3452a2945 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarNavButtonController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarNavButtonController.java @@ -34,10 +34,9 @@ import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCH import static com.android.systemui.shared.system.ActivityManagerWrapper.CLOSE_SYSTEM_WINDOWS_REASON_HOME_KEY; import static com.android.systemui.shared.system.ActivityManagerWrapper.CLOSE_SYSTEM_WINDOWS_REASON_RECENTS; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_PINNING; -import static com.android.window.flags2.Flags.predictiveBackThreeButtonNav; +import static com.android.window.flags.Flags.predictiveBackThreeButtonNav; import android.content.Context; -import android.graphics.Rect; import android.os.Bundle; import android.os.Handler; import android.os.SystemClock; @@ -122,7 +121,6 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa private final SystemUiProxy mSystemUiProxy; private final Handler mHandler; private final ContextualSearchInvoker mContextualSearchInvoker; - private TaskbarControllers mControllers; @Nullable private StatsLogManager mStatsLogManager; private final Runnable mResetLongPress = this::resetScreenUnpin; @@ -155,8 +153,6 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa // prevent interactions with other buttons while back button is pressed return; } - // Provide the same haptic feedback that the system offers for virtual keys. - view.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY); switch (buttonType) { case BUTTON_BACK: executeBack(/* keyEvent */ null); @@ -190,9 +186,6 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa } } - /** - * Handles long clicks and plays haptics for user visible actions. - */ public boolean onButtonLongClick(@TaskbarButton int buttonType, View view) { if (buttonType == BUTTON_SPACE) { return false; @@ -211,39 +204,34 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa return false; } + // Provide the same haptic feedback that the system offers for long press. + // The haptic feedback from long pressing on the home button is handled by circle to search. + // There are no haptics for long pressing the back button if predictive back is enabled + if (buttonType != BUTTON_HOME + && (!predictiveBackThreeButtonNav || buttonType != BUTTON_BACK)) { + view.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS); + } switch (buttonType) { case BUTTON_HOME: logEvent(LAUNCHER_TASKBAR_HOME_BUTTON_LONGPRESS); onLongPressHome(); - view.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS, - HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING); return true; case BUTTON_A11Y: logEvent(LAUNCHER_TASKBAR_A11Y_BUTTON_LONGPRESS); notifyA11yClick(true /* longClick */); - view.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS, - HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING); return true; case BUTTON_BACK: logEvent(LAUNCHER_TASKBAR_BACK_BUTTON_LONGPRESS); - if (backRecentsLongpress(buttonType)) { - view.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS, - HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING); - } + backRecentsLongpress(buttonType); return true; case BUTTON_RECENTS: logEvent(LAUNCHER_TASKBAR_OVERVIEW_BUTTON_LONGPRESS); - if (backRecentsLongpress(buttonType)) { - view.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS, - HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING); - } + backRecentsLongpress(buttonType); return true; case BUTTON_IME_SWITCH: if (Flags.imeSwitcherRevamp()) { logEvent(LAUNCHER_TASKBAR_IME_SWITCHER_BUTTON_LONGPRESS); onImeSwitcherLongPress(); - view.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS, - HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING); return true; } return false; @@ -273,13 +261,6 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa } } - /** - * Notifies SystemUI of the new bounds of the recents button in screen coordinates. - */ - public void onRecentsButtonLayoutChanged(Rect bounds) { - mSystemUiProxy.notifyRecentsButtonPositionChanged(bounds); - } - private boolean backRecentsLongpress(@TaskbarButton int buttonType) { mLongPressedButtons |= buttonType; return determineScreenUnpin(); @@ -336,8 +317,7 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa } public void init(TaskbarControllers taskbarControllers) { - mControllers = taskbarControllers; - mStatsLogManager = mControllers.getTaskbarActivityContext().getStatsLogManager(); + mStatsLogManager = taskbarControllers.getTaskbarActivityContext().getStatsLogManager(); } public void onDestroy() { @@ -358,7 +338,7 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa private void navigateHome() { TaskUtils.closeSystemWindowsAsync(CLOSE_SYSTEM_WINDOWS_REASON_HOME_KEY); - mCallbacks.onNavigateHome(mContext.getDisplayId()); + mCallbacks.onNavigateHome(); } private void navigateToOverview() { @@ -367,11 +347,11 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa } TestLogging.recordEvent(TestProtocol.SEQUENCE_MAIN, "onOverviewToggle"); TaskUtils.closeSystemWindowsAsync(CLOSE_SYSTEM_WINDOWS_REASON_RECENTS); - mCallbacks.onToggleOverview(mContext.getDisplayId()); + mCallbacks.onToggleOverview(); } public void hideOverview() { - mCallbacks.onHideOverview(mContext.getDisplayId()); + mCallbacks.onHideOverview(); } void sendBackKeyEvent(int action, boolean cancelled) { @@ -381,7 +361,6 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa } long time = SystemClock.uptimeMillis(); KeyEvent keyEvent = new KeyEvent(time, time, action, KeyEvent.KEYCODE_BACK, 0); - keyEvent.setDisplayId(mControllers.getTaskbarActivityContext().getDisplayId()); if (cancelled) { keyEvent.cancel(); } @@ -438,12 +417,12 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa /** Callbacks for navigation buttons on Taskbar. */ public interface TaskbarNavButtonCallbacks { /** Callback invoked when the home button is pressed. */ - default void onNavigateHome(int displayId) {} + default void onNavigateHome() {} /** Callback invoked when the overview button is pressed. */ - default void onToggleOverview(int displayId) {} + default void onToggleOverview() {} /** Callback invoken when a visible overview needs to be hidden. */ - default void onHideOverview(int displayId) { } + default void onHideOverview() { } } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarOverflowView.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarOverflowView.java index 34787641c2..d909d19fb8 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarOverflowView.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarOverflowView.java @@ -39,7 +39,6 @@ import androidx.annotation.VisibleForTesting; import androidx.core.graphics.ColorUtils; import com.android.app.animation.Interpolators; -import com.android.launcher3.R; import com.android.launcher3.Reorderable; import com.android.launcher3.Utilities; import com.android.launcher3.icons.IconNormalizer; @@ -340,17 +339,6 @@ public class TaskbarOverflowView extends FrameLayout implements Reorderable { } } - /** - * @return Tooltip to be used for the taskbar overflow view - returns null if the view should - * not have a tooltip. - */ - public String getTextForTooltipPopup() { - if (mIsActive) { - return null; - } - return getResources().getString(R.string.taskbar_overflow_a11y_title); - } - /** * Returns the view's state (whether it shows a set of app icons or a leave-behind circle). */ diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarPinningController.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarPinningController.kt index 8d75eef314..7141bb8185 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarPinningController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarPinningController.kt @@ -24,8 +24,6 @@ import com.android.app.animation.Interpolators import com.android.launcher3.LauncherPrefs import com.android.launcher3.LauncherPrefs.Companion.TASKBAR_PINNING import com.android.launcher3.LauncherPrefs.Companion.TASKBAR_PINNING_IN_DESKTOP_MODE -import com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_DESKTOP_MODE_TASKBAR_PINNED -import com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_DESKTOP_MODE_TASKBAR_UNPINNED import com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TASKBAR_DIVIDER_MENU_CLOSE import com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TASKBAR_DIVIDER_MENU_OPEN import com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TASKBAR_PINNED @@ -58,26 +56,16 @@ class TaskbarPinningController(private val context: TaskbarActivityContext) : if (!didPreferenceChange) { return } - - if ( - controllers.taskbarDesktopModeController.shouldShowDesktopTasksInTaskbar( - context.displayId - ) - ) { - val shouldPinDesktopTaskbar = + val shouldPinTaskbar = + if ( + controllers.taskbarDesktopModeController.isInDesktopModeAndNotInOverview( + context.displayId + ) + ) { !launcherPrefs.get(TASKBAR_PINNING_IN_DESKTOP_MODE) - val logEvent = - if (shouldPinDesktopTaskbar) { - LAUNCHER_DESKTOP_MODE_TASKBAR_PINNED - } else { - LAUNCHER_DESKTOP_MODE_TASKBAR_UNPINNED - } - statsLogManager.logger().log(logEvent) - launcherPrefs.put(TASKBAR_PINNING_IN_DESKTOP_MODE, shouldPinDesktopTaskbar) - return - } - - val shouldPinTaskbar = !launcherPrefs.get(TASKBAR_PINNING) + } else { + !launcherPrefs.get(TASKBAR_PINNING) + } val animateToValue = if (shouldPinTaskbar) { diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarPopupController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarPopupController.java index 44832b52db..7f240bd781 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarPopupController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarPopupController.java @@ -23,7 +23,6 @@ import static com.android.launcher3.util.SplitConfigurationOptions.getLogEventFo import android.content.Intent; import android.content.pm.LauncherApps; import android.graphics.Point; -import android.os.UserHandle; import android.util.Pair; import android.util.SparseArray; import android.view.MotionEvent; @@ -31,7 +30,6 @@ import android.view.View; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.annotation.VisibleForTesting; import com.android.internal.logging.InstanceId; import com.android.launcher3.AbstractFloatingView; @@ -55,7 +53,6 @@ import com.android.launcher3.views.ActivityContext; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.util.LogUtils; import com.android.quickstep.util.SingleTask; -import com.android.systemui.shared.recents.model.Task; import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; @@ -145,35 +142,25 @@ public class TaskbarPopupController implements TaskbarControllers.LoggableTaskba return null; } - ItemInfo itemInfo = null; + ItemInfo itemInfo; if (icon.getTag() instanceof ItemInfo item && ShortcutUtil.supportsShortcuts(item)) { itemInfo = item; - } else if (PinToTaskbarShortcut.Companion.isPinningAppWithContextMenuEnabled(mContext) - && icon.getTag() instanceof SingleTask task) { - Task.TaskKey key = task.getTask().getKey(); - AppInfo appInfo = getApp( - new ComponentKey(key.getComponent(), UserHandle.of(key.userId))); - if (appInfo != null) { - WorkspaceItemInfo wif = appInfo.makeWorkspaceItem(icon.getContext()); - itemInfo = SingleTask.Companion.createTaskItemInfo(task, wif); - } - } - - if (itemInfo == null) { + } else if (icon.getTag() instanceof SingleTask task) { + itemInfo = SingleTask.Companion.createTaskItemInfo(task); + } else { return null; } PopupContainerWithArrow<BaseTaskbarContext> container; int deepShortcutCount = mPopupDataProvider.getShortcutCountForItem(itemInfo); // TODO(b/198438631): add support for INSTALL shortcut factory - final ItemInfo finalInfo = itemInfo; List<SystemShortcut> systemShortcuts = getSystemShortcuts() - .map(s -> s.getShortcut(context, finalInfo, icon)) + .map(s -> s.getShortcut(context, itemInfo, icon)) .filter(Objects::nonNull) .collect(Collectors.toList()); // TODO(b/375648361): Revisit to see if this can be implemented within getSystemShortcuts(). - if (PinToTaskbarShortcut.Companion.isPinningAppWithContextMenuEnabled(mContext)) { + if (Flags.enablePinningAppWithContextMenu()) { SystemShortcut shortcut = createPinShortcut(context, itemInfo, icon); if (shortcut != null) { systemShortcuts.add(0, shortcut); @@ -181,7 +168,7 @@ public class TaskbarPopupController implements TaskbarControllers.LoggableTaskba } container = (PopupContainerWithArrow) context.getLayoutInflater().inflate( - R.layout.popup_container, context.getDragLayer(), false); + R.layout.popup_container, context.getDragLayer(), false); container.populateAndShowRows(icon, itemInfo, deepShortcutCount, systemShortcuts); // TODO (b/198438631): configure for taskbar/context @@ -222,8 +209,7 @@ public class TaskbarPopupController implements TaskbarControllers.LoggableTaskba } @Nullable - @VisibleForTesting - SystemShortcut createPinShortcut(BaseTaskbarContext target, ItemInfo itemInfo, + private SystemShortcut createPinShortcut(BaseTaskbarContext target, ItemInfo itemInfo, BubbleTextView originalView) { // Predicted items use {@code HotseatPredictionController.PinPrediction} shortcut to pin. if (itemInfo.isPredictedItem()) { @@ -233,18 +219,6 @@ public class TaskbarPopupController implements TaskbarControllers.LoggableTaskba return new PinToTaskbarShortcut<>(target, itemInfo, originalView, false, mHotseatInfosList); } - - if (itemInfo.container == CONTAINER_ALL_APPS) { - // If the target ItemInfo is already pinned on taskbar. Show the unpin option instead. - for (int i = 0; i < mHotseatInfosList.size(); i++) { - if (Objects.equals(mHotseatInfosList.valueAt(i).getComponentKey(), - itemInfo.getComponentKey())) { - return new PinToTaskbarShortcut<>(target, itemInfo, originalView, false, - mHotseatInfosList); - } - } - } - if (mHotseatInfosList.size() < mContext.getTaskbarSpecsEvaluator().getNumShownHotseatIcons()) { return new PinToTaskbarShortcut<>(target, itemInfo, originalView, true, @@ -292,10 +266,7 @@ public class TaskbarPopupController implements TaskbarControllers.LoggableTaskba // Move the icon to align with the center-top of the touch point Point iconShift = new Point(); iconShift.x = mIconLastTouchPos.x - sv.getIconCenter().x; - iconShift.y = mIconLastTouchPos.y - - mContext.getDeviceProfile() - .getTaskbarProfile() - .getIconSize(); + iconShift.y = mIconLastTouchPos.y - mContext.getDeviceProfile().taskbarIconSize; ((TaskbarDragController) ActivityContext.lookupContext( v.getContext()).getDragController()).startDragOnLongClick(sv, iconShift); diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentAppsController.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentAppsController.kt index f4d0f15501..417ef7edef 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentAppsController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarRecentAppsController.kt @@ -16,8 +16,6 @@ package com.android.launcher3.taskbar import android.content.Context -import android.util.Log -import android.window.DesktopExperienceFlags import android.window.DesktopModeFlags import androidx.annotation.VisibleForTesting import com.android.launcher3.BubbleTextView.RunningAppState @@ -26,7 +24,6 @@ import com.android.launcher3.Flags.enableRecentsInTaskbar import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.model.data.TaskItemInfo import com.android.launcher3.model.data.WorkspaceItemInfo -import com.android.launcher3.taskbar.PinToTaskbarShortcut.Companion.isPinningAppWithContextMenuEnabled import com.android.launcher3.taskbar.TaskbarControllers.LoggableTaskbarController import com.android.launcher3.util.CancellableTask import com.android.quickstep.RecentsFilterState @@ -34,7 +31,6 @@ import com.android.quickstep.RecentsModel import com.android.quickstep.util.DesktopTask import com.android.quickstep.util.GroupTask import com.android.quickstep.util.SingleTask -import com.android.systemui.shared.recents.model.Task import com.android.wm.shell.shared.desktopmode.DesktopModeStatus import java.io.PrintWriter @@ -43,10 +39,8 @@ import java.io.PrintWriter * - When in Fullscreen mode: show the N most recent Tasks * - When in Desktop Mode: show the currently running (open) Tasks */ -class TaskbarRecentAppsController( - private val context: Context, - private val recentsModel: RecentsModel, -) : LoggableTaskbarController { +class TaskbarRecentAppsController(context: Context, private val recentsModel: RecentsModel) : + LoggableTaskbarController { var canShowRunningApps = DesktopModeStatus.canEnterDesktopMode(context) && @@ -55,20 +49,17 @@ class TaskbarRecentAppsController( set(isEnabledFromTest) { field = isEnabledFromTest if (!field && !canShowRecentApps) { - recentsModel.unregisterRecentTasksChangedListener(recentTasksChangedListener) + recentsModel.unregisterRecentTasksChangedListener() } } - val enableRecentTasksThrottle = - DesktopExperienceFlags.ENABLE_TASKBAR_RECENT_TASKS_THROTTLE_BUGFIX.isTrue - // TODO(b/343532825): Add a setting to disable Recents even when the flag is on. var canShowRecentApps = enableRecentsInTaskbar() @VisibleForTesting set(isEnabledFromTest) { field = isEnabledFromTest if (!field && !canShowRunningApps) { - recentsModel.unregisterRecentTasksChangedListener(recentTasksChangedListener) + recentsModel.unregisterRecentTasksChangedListener() } } @@ -79,7 +70,7 @@ class TaskbarRecentAppsController( private set private var allRecentTasks: List<GroupTask> = emptyList() - private var desktopTasks: List<Task> = emptyList() + private var desktopTask: DesktopTask? = null // Keeps track of the order in which running tasks appear. private var orderedRunningTaskIds = emptyList<Int>() var shownTasks: List<GroupTask> = emptyList() @@ -110,11 +101,9 @@ class TaskbarRecentAppsController( } private fun getDesktopTaskState(packageName: String, userId: Int): TaskState { - if (desktopTasks.isEmpty()) { - return TaskState(RunningAppState.NOT_RUNNING) - } + val tasks = desktopTask?.tasks ?: return TaskState(RunningAppState.NOT_RUNNING) val appTasks = - desktopTasks.filter { task -> + tasks.filter { task -> packageName == task.key.packageName && task.key.userId == userId } val runningTask = appTasks.find { getRunningAppState(it.key.id) == RunningAppState.RUNNING } @@ -138,19 +127,6 @@ class TaskbarRecentAppsController( } } - /** - * Returns `true` if recents has the single task (i.e., fullscreen) represented by the given - * [itemInfo]. - */ - fun hasSingleTask(itemInfo: ItemInfo?): Boolean { - val packageName = itemInfo?.targetPackage ?: return false - return allRecentTasks.any { task -> - task is SingleTask && - packageName == task.task.key.packageName && - task.task.key.userId == itemInfo.user.identifier - } - } - @VisibleForTesting val runningTaskIds: Set<Int> /** @@ -164,7 +140,8 @@ class TaskbarRecentAppsController( ) { return emptySet() } - return desktopTasks.map { it.key.id }.toSet() + val tasks = desktopTask?.tasks ?: return emptySet() + return tasks.map { task -> task.key.id }.toSet() } @VisibleForTesting @@ -179,6 +156,7 @@ class TaskbarRecentAppsController( ) { return emptySet() } + val desktopTasks = desktopTask?.tasks ?: return emptySet() return desktopTasks.filter { !it.isVisible }.map { task -> task.key.id }.toSet() } @@ -193,19 +171,8 @@ class TaskbarRecentAppsController( // tasks again if we have already requested it and the task list has not changed private var taskListChangeId = -1 - // Whether we're currently loading recents tasks - private var loadingRecentsTasks = false - // Whether we need to reload recents tasks when the current loading operation is finished - private var needsRecentsTasksReload = false - // Whether we've loaded recents tasks at least once - private var recentTasksLoaded = false - - fun init(taskbarControllers: TaskbarControllers, previousShownTasks: List<GroupTask>) { + fun init(taskbarControllers: TaskbarControllers) { controllers = taskbarControllers - if (previousShownTasks.isNotEmpty()) { - shownTasks = previousShownTasks - fetchIcons() - } if (canShowRunningApps || canShowRecentApps) { recentsModel.registerRecentTasksChangedListener(recentTasksChangedListener) controllers.runAfterInit { reloadRecentTasksIfNeeded() } @@ -213,11 +180,7 @@ class TaskbarRecentAppsController( } fun onDestroy() { - controllers.sharedState?.recentTasksBeforeTaskbarRecreate?.clear() - if (shownTasks.isNotEmpty()) { - controllers.sharedState?.recentTasksBeforeTaskbarRecreate?.addAll(shownTasks) - } - recentsModel.unregisterRecentTasksChangedListener(recentTasksChangedListener) + recentsModel.unregisterRecentTasksChangedListener() iconLoadRequests.forEach { it.cancel() } iconLoadRequests.clear() } @@ -248,53 +211,41 @@ class TaskbarRecentAppsController( ) } - if (recentTasksLoaded) { - onRecentsOrHotseatChanged() - } + onRecentsOrHotseatChanged() return shownHotseatItems.toTypedArray() } private fun getOrderedAndWrappedDesktopTasks(): List<SingleTask> { + val tasks = desktopTask?.tasks ?: emptyList() // We wrap each task in the Desktop as a `SingleTask`. val orderFromId = orderedRunningTaskIds.withIndex().associate { (index, id) -> id to index } - val sortedTasks = desktopTasks.sortedWith(compareBy(nullsLast()) { orderFromId[it.key.id] }) + val sortedTasks = tasks.sortedWith(compareBy(nullsLast()) { orderFromId[it.key.id] }) return sortedTasks.map { SingleTask(it) } } private fun reloadRecentTasksIfNeeded() { - if (recentsModel.isTaskListValid(taskListChangeId)) return - if (enableRecentTasksThrottle && loadingRecentsTasks) { - Log.v(TAG, "reloadRecentTasksIfNeeded: tried to reload while loading recents tasks") - needsRecentsTasksReload = true - return + if (!recentsModel.isTaskListValid(taskListChangeId)) { + taskListChangeId = + recentsModel.getTasks( + { tasks -> + allRecentTasks = tasks + val oldRunningTaskdIds = runningTaskIds + val oldMinimizedTaskIds = minimizedTaskIds + desktopTask = allRecentTasks.filterIsInstance<DesktopTask>().firstOrNull() + val runningTasksChanged = oldRunningTaskdIds != runningTaskIds + val minimizedTasksChanged = oldMinimizedTaskIds != minimizedTaskIds + if ( + onRecentsOrHotseatChanged() || + runningTasksChanged || + minimizedTasksChanged + ) { + controllers.taskbarViewController.commitRunningAppsToUI() + } + }, + RecentsFilterState.EMPTY_FILTER, + ) } - Log.v(TAG, "reloadRecentTasksIfNeeded: load recents tasks") - // Only indicate that recents tasks are loading if the enableRecentTasksThrottle flag is on - loadingRecentsTasks = enableRecentTasksThrottle - taskListChangeId = - recentsModel.getTasks(RecentsFilterState.EMPTY_FILTER) { tasks -> - loadingRecentsTasks = false - recentTasksLoaded = true - allRecentTasks = tasks - val oldRunningTaskdIds = runningTaskIds - val oldMinimizedTaskIds = minimizedTaskIds - desktopTasks = allRecentTasks.filterIsInstance<DesktopTask>().flatMap { it.tasks } - val runningTasksChanged = oldRunningTaskdIds != runningTaskIds - val minimizedTasksChanged = oldMinimizedTaskIds != minimizedTaskIds - - if ( - (onRecentsOrHotseatChanged() || runningTasksChanged || minimizedTasksChanged) && - !controllers.taskbarDesktopModeController.isLauncherAnimationRunning - ) { - controllers.taskbarViewController.commitRunningAppsToUI() - } - if (needsRecentsTasksReload) { - Log.v(TAG, "reloadRecentTasksIfNeeded: reload recents tasks") - needsRecentsTasksReload = false - reloadRecentTasksIfNeeded() - } - } } /** @@ -315,11 +266,7 @@ class TaskbarRecentAppsController( if (!shownTasksChanged) { return shownTasksChanged } - fetchIcons() - return shownTasksChanged - } - private fun fetchIcons() { for (groupTask in shownTasks) { for (task in groupTask.tasks) { val cancellableTask = @@ -337,6 +284,7 @@ class TaskbarRecentAppsController( } } } + return shownTasksChanged } private fun updateOrderedRunningTaskIds(): MutableList<Int> { @@ -366,19 +314,11 @@ class TaskbarRecentAppsController( if (Flags.enableMultiInstanceMenuTaskbar()) { val deduplicatedDesktopTasks = desktopTasks.distinctBy { Pair(it.task.key.packageName, it.task.key.userId) } - val activityContext = controllers.taskbarActivityContext shownTasks .filter { it is SingleTask && - it.task.key.id in deduplicatedDesktopTasks.map { it.task.key.id } && - (!isPinningAppWithContextMenuEnabled(activityContext) || - shownHotseatItems.none { hotseatItem -> - it.containsPackage( - hotseatItem.targetPackage, - hotseatItem.user.identifier, - ) - }) + it.task.key.id in deduplicatedDesktopTasks.map { it.task.key.id } } .toMutableList() .apply { @@ -489,7 +429,7 @@ class TaskbarRecentAppsController( pw.println("$prefix\tcanShowRecentApps=$canShowRecentApps") pw.println("$prefix\tshownHotseatItems=${shownHotseatItems.map{item->item.targetPackage}}") pw.println("$prefix\tallRecentTasks=${allRecentTasks.map { it.packageNames }}") - pw.println("$prefix\tdesktopTask=${desktopTasks.map { it.key.packageName }}") + pw.println("$prefix\tdesktopTask=${desktopTask?.packageNames}") pw.println("$prefix\tshownTasks=${shownTasks.map { it.packageNames }}") pw.println("$prefix\trunningTaskIds=$runningTaskIds") pw.println("$prefix\tminimizedTaskIds=$minimizedTaskIds") @@ -499,8 +439,6 @@ class TaskbarRecentAppsController( get() = tasks.map { task -> task.key.packageName } private companion object { - private val TAG = "TaskbarRecentAppsController" - const val MAX_RECENT_TASKS = 2 } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarSharedState.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarSharedState.java index 89016c8f45..f4a7d686c0 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarSharedState.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarSharedState.java @@ -29,12 +29,10 @@ import android.os.Binder; import android.os.IBinder; import android.view.InsetsFrameProvider; -import com.android.quickstep.util.GroupTask; import com.android.systemui.shared.system.QuickStepContract.SystemUiStateFlags; import com.android.wm.shell.shared.bubbles.BubbleBarLocation; import com.android.wm.shell.shared.bubbles.BubbleInfo; -import java.util.ArrayList; import java.util.List; /** @@ -49,8 +47,6 @@ public class TaskbarSharedState { // TaskbarManager#onSystemUiFlagsChanged @SystemUiStateFlags public long sysuiStateFlags; - // TaskBarStashController#init() - public boolean isTaskbarOnOverview; // TaskbarManager#disableNavBarElements() public int disableNavBarDisplayId; @@ -77,12 +73,6 @@ public class TaskbarSharedState { public boolean allAppsVisible = false; - public boolean bubbleBarExpanded = false; - - public boolean bubbleBarStashed = false; - - public String selectedBubbleKey; - public BubbleBarLocation bubbleBarLocation; public List<BubbleInfo> bubbleInfoItems; @@ -94,16 +84,6 @@ public class TaskbarSharedState { return bubbleInfoItems != null && !bubbleInfoItems.isEmpty(); } - /** Clears stored bubble bar data. */ - public void clearBubbleData() { - bubbleInfoItems = null; - selectedBubbleKey = null; - bubbleBarLocation = null; - bubbleBarExpanded = false; - bubbleBarStashed = false; - suppressedBubbleInfoItems = null; - } - // LauncherTaskbarUIController#mTaskbarInAppDisplayProgressMultiProp public float[] inAppDisplayProgressMultiPropValues = new float[DISPLAY_PROGRESS_COUNT]; @@ -141,6 +121,4 @@ public class TaskbarSharedState { // should show corner radius on persistent taskbar when in desktop mode. public boolean showCornerRadiusInDesktopMode = false; - - public List<GroupTask> recentTasksBeforeTaskbarRecreate = new ArrayList<>(); } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java index 6fa55799c3..f0f46771d9 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java @@ -62,7 +62,6 @@ import androidx.annotation.VisibleForTesting; import com.android.internal.jank.InteractionJankMonitor; import com.android.launcher3.Alarm; import com.android.launcher3.DeviceProfile; -import com.android.launcher3.LauncherPrefs; import com.android.launcher3.R; import com.android.launcher3.anim.AnimatedFloat; import com.android.launcher3.anim.AnimationSuccessListener; @@ -74,7 +73,6 @@ import com.android.quickstep.util.SystemUiFlagUtils; import java.io.PrintWriter; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; -import java.util.Objects; import java.util.StringJoiner; import java.util.function.LongPredicate; @@ -296,10 +294,6 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba private boolean mIsTaskbarSystemActionRegistered = false; private TaskbarSharedState mTaskbarSharedState; - // Used to mark whether we are in test mode to mark whether the nav bar shows in SUW - @VisibleForTesting - Boolean mNavbarHiddenOverrideForTest = null; - public TaskbarStashController(TaskbarActivityContext activity) { mActivity = activity; mSystemUiProxy = SystemUiProxy.INSTANCE.get(activity); @@ -323,11 +317,8 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba mStashedHeight = mActivity.getResources().getDimensionPixelSize( R.dimen.taskbar_stashed_size); } else { - mUnstashedHeight = mActivity.getDeviceProfile().getTaskbarProfile().getHeight(); - mStashedHeight = mActivity - .getDeviceProfile() - .getTaskbarProfile() - .getStashedTaskbarHeight(); + mUnstashedHeight = mActivity.getDeviceProfile().taskbarHeight; + mStashedHeight = mActivity.getDeviceProfile().stashedTaskbarHeight; } } @@ -373,7 +364,6 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba // For now, assume we're in an app, since LauncherTaskbarUIController won't be able to tell // us that we're paused until a bit later. This avoids flickering upon recreating taskbar. updateStateForFlag(FLAG_IN_APP, true); - updateStateForFlag(FLAG_IN_OVERVIEW, mTaskbarSharedState.isTaskbarOnOverview); updateStateForFlag(FLAG_STASHED_BUBBLE_BAR_ON_PHONE, mActivity.isBubbleBarOnPhone()); applyState(/* duration = */ 0); @@ -384,14 +374,11 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba mTaskbarBackgroundAlphaForStash.setValue(shouldHideTaskbarBackground ? 0 : 1); + if (mTaskbarSharedState.getTaskbarWasPinned() + || !mTaskbarSharedState.taskbarWasStashedAuto) { + tryStartTaskbarTimeout(); + } notifyStashChange(/* visible */ false, /* stashed */ isStashedInApp()); - - mControllers.runAfterInit(() -> { - // if taskbar should auto stash attempt to start timeout. - if (shouldAllowTaskbarToAutoStash()) { - tryStartTaskbarTimeout(); - } - }); } /** @@ -516,11 +503,7 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba public int getTouchableHeight() { return mIsStashed ? mStashedHeight - : (mUnstashedHeight - + mActivity.getDeviceProfile() - .getTaskbarProfile() - .getBottomMargin() - ); + : (mUnstashedHeight + mActivity.getDeviceProfile().taskbarBottomMargin); } /** @@ -537,14 +520,11 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba if (supportsVisualStashing() && hasAnyFlag(FLAGS_REPORT_STASHED_INSETS_TO_APP)) { DeviceProfile dp = mActivity.getDeviceProfile(); - // If the navigation bar is hidden in SUW, we can draw the SUW content lower so we avoid - // reporting a higher inset - if (hasAnyFlag(FLAG_STASHED_IN_APP_SETUP) - && (dp.isTaskbarPresent || mActivity.isPhoneGestureNavMode()) - && !isNavbarHiddeninSUW()) { - // When we show the back button in SUW, the SUW layout may not be wide enough to - // support overlapping the nav bar with its content in portrait. So we send - // different res values in portrait vs landscape + if (hasAnyFlag(FLAG_STASHED_IN_APP_SETUP) && (dp.isTaskbarPresent + || mActivity.isPhoneGestureNavMode())) { + // We always show the back button in SUW but in portrait the SUW layout may not + // be wide enough to support overlapping the nav bar with its content. + // We're sending different res values in portrait vs landscape return mActivity.getResources().getDimensionPixelSize(R.dimen.taskbar_suw_insets); } boolean isAnimating = mAnimator != null && mAnimator.isStarted(); @@ -562,17 +542,6 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba return mUnstashedHeight; } - /** - * Returns whether the navigation bar is visible during the Setup Wizard. - * - * {@link #mNavbarHiddenOverrideForTest} is only used by tests - */ - private boolean isNavbarHiddeninSUW() { - // Check if a test override is active - return Objects.requireNonNullElseGet(mNavbarHiddenOverrideForTest, - () -> mControllers.navbarButtonsViewController.isNavbarHiddenInSUW()); - } - /** * Returns the height that taskbar will inset when inside apps. * @@ -678,50 +647,10 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba /* shouldBubblesFollow= */ !bubbleBarExpanded); } - /** - * @return if we should allow taskbar to auto stash - */ - public boolean shouldAllowTaskbarToAutoStash() { - if (mActivity.isTransientTaskbar()) { - return true; - } - - boolean isTaskbarPinningOnInDesktopMode = LauncherPrefs.TASKBAR_PINNING_IN_DESKTOP_MODE.get( - mActivity); - return !isTaskbarPinningOnInDesktopMode && mActivity.isTaskbarShowingDesktopTasks(); - } - - /** - * Stashes pinned taskbar after it has timed out. - */ - public void updateAndAnimatePinnedTaskbarForTimeout() { - updateAndAnimatePinnedTaskbar(true); - } - - /** - * Handles stashing/un-stashing taskbar in desktop mode. - */ - public void updateAndAnimatePinnedTaskbar(boolean isStashed) { - boolean shouldApplyState = false; - if (hasAnyFlag(FLAG_STASHED_IN_APP_AUTO) != isStashed) { - updateStateForFlag(FLAG_STASHED_IN_APP_AUTO, isStashed); - shouldApplyState = true; - } - if (shouldApplyState) { - applyState(); - } - } - /** Toggles the Taskbar's stash state. */ public void toggleTaskbarStash() { - if (!shouldAllowTaskbarToAutoStash() || !hasAnyFlag(FLAGS_IN_APP)) { - return; - } - if (mActivity.isTransientTaskbar()) { - updateAndAnimateTransientTaskbar(!hasAnyFlag(FLAG_STASHED_IN_APP_AUTO)); - } else if (mActivity.isTaskbarShowingDesktopTasks()) { - updateAndAnimatePinnedTaskbar(!hasAnyFlag(FLAG_STASHED_IN_APP_AUTO)); - } + if (!mActivity.isTransientTaskbar() || !hasAnyFlag(FLAGS_IN_APP)) return; + updateAndAnimateTransientTaskbar(!hasAnyFlag(FLAG_STASHED_IN_APP_AUTO)); } /** @@ -798,8 +727,6 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba if (mActivity.isTransientTaskbar()) { createTransientAnimToIsStashed(mAnimator, isStashed, duration, shouldDelayBackground, animationType); - } else if (shouldAllowTaskbarToAutoStash()) { - createAnimToIsStashedPinnedTaskbar(mAnimator, isStashed, duration); } else { createAnimToIsStashed(mAnimator, isStashed, duration, stashTranslation, animationType); } @@ -829,16 +756,6 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba }); } - private void createAnimToIsStashedPinnedTaskbar(AnimatorSet as, boolean isStashed, - long duration) { - int stashTranslation = !isStashed ? 0 : mUnstashedHeight; - as.play(mIconTranslationYForStash.animateToValue(stashTranslation)); - as.play(mTaskbarBackgroundOffset.animateToValue(isStashed ? 1 : 0)); - as.play(mIconAlphaForStash.animateToValue(isStashed ? 0 : 1)); - as.play(mIconScaleForStash.animateToValue(1)); - as.setDuration(duration); - } - private void createAnimToIsStashed(AnimatorSet as, boolean isStashed, long duration, float stashTranslation, @StashAnimation int animationType) { AnimatorSet fullLengthAnimatorSet = new AnimatorSet(); @@ -1235,7 +1152,6 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba && mActivity.isTransientTaskbar(); updateStateForFlag(FLAG_STASHED_SYSUI, hasAnyFlag(systemUiStateFlags, SYSUI_STATE_SCREEN_PINNING) || stashForBubbles); - updateStateForFlag(FLAG_STASHED_DEVICE_LOCKED, SystemUiFlagUtils.isLocked(systemUiStateFlags)); @@ -1268,7 +1184,7 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba } // Do not stash if in small screen, with 3 button nav, and in landscape. if (mActivity.isPhoneMode() && mActivity.isThreeButtonNav() - && mActivity.getDeviceProfile().getDeviceProperties().isLandscape()) { + && mActivity.getDeviceProfile().isLandscape) { return false; } @@ -1390,7 +1306,6 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba mAnimator.cancel(); mAnimator = null; } - mTaskbarSharedState.isTaskbarOnOverview = hasAnyFlag(FLAG_IN_OVERVIEW); UI_HELPER_EXECUTOR.execute( () -> mAccessibilityManager.unregisterSystemAction(SYSTEM_ACTION_ID_TASKBAR)); } @@ -1411,7 +1326,7 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba * If false, attempts to re/start the timeout */ public void updateTaskbarTimeout(boolean isAutohideSuspended) { - if (!shouldAllowTaskbarToAutoStash()) { + if (!mActivity.isTransientTaskbar()) { return; } if (isAutohideSuspended) { @@ -1425,7 +1340,7 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba * Attempts to start timer to auto hide the taskbar based on time. */ private void tryStartTaskbarTimeout() { - if (!shouldAllowTaskbarToAutoStash() || mIsStashed || mEnableBlockingTimeoutDuringTests) { + if (!mActivity.isTransientTaskbar() || mIsStashed || mEnableBlockingTimeoutDuringTests) { return; } @@ -1447,11 +1362,7 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba if (mControllers.taskbarAutohideSuspendController.isTransientTaskbarStashingSuspended()) { return; } - if (mActivity.isTransientTaskbar()) { - updateAndAnimateTransientTaskbarForTimeout(); - } else if (shouldAllowTaskbarToAutoStash()) { - updateAndAnimatePinnedTaskbarForTimeout(); - } + updateAndAnimateTransientTaskbarForTimeout(); } @VisibleForTesting diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashViaTouchController.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashViaTouchController.kt index fd259223d2..df10d24d2a 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashViaTouchController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashViaTouchController.kt @@ -47,8 +47,7 @@ class TaskbarStashViaTouchController(val controllers: TaskbarControllers) : Touc private val maxVisualDisplacement = activity.resources.getDimensionPixelSize(R.dimen.transient_taskbar_bottom_margin).toFloat() /** How far the swipe could go, if user swiped from the very top of TaskbarView. */ - private val maxTouchDisplacement = - maxVisualDisplacement + activity.deviceProfile.taskbarProfile.height + private val maxTouchDisplacement = maxVisualDisplacement + activity.deviceProfile.taskbarHeight private val touchDisplacementToStash = activity.resources.getDimensionPixelSize(R.dimen.taskbar_to_nav_threshold).toFloat() @@ -69,8 +68,7 @@ class TaskbarStashViaTouchController(val controllers: TaskbarControllers) : Touc ResourceUtils.NAVBAR_BOTTOM_GESTURE_SIZE, activity.resources, ) - gestureHeightYThreshold = - (activity.deviceProfile.deviceProperties.heightPx - gestureHeight).toFloat() + gestureHeightYThreshold = (activity.deviceProfile.heightPx - gestureHeight).toFloat() } private fun createSwipeListener() = @@ -128,14 +126,6 @@ class TaskbarStashViaTouchController(val controllers: TaskbarControllers) : Touc if (ev.action == MotionEvent.ACTION_OUTSIDE) { controllers.taskbarStashController.updateAndAnimateTransientTaskbar(true) } else if (controllers.taskbarViewController.isEventOverAnyItem(screenCoordinatesEv)) { - // TODO (b/411155437) remove this once BubbleDragController implements TouchController - val bubbleBarDragInProgress = - controllers.bubbleControllers - .map { it.bubbleDragController.isDragging } - .orElse(false) - if (bubbleBarDragInProgress) { - return false - } swipeDownDetector.onTouchEvent(ev) if (swipeDownDetector.isDraggingState) { return true diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarThresholdUtils.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarThresholdUtils.java index d3d7f5e143..17516f3616 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarThresholdUtils.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarThresholdUtils.java @@ -38,7 +38,7 @@ public class TaskbarThresholdUtils { private static int getThreshold(Resources r, DeviceProfile dp, int thresholdDimen, int multiplierDimen) { - float landscapeScreenHeight = dp.getDeviceProperties().isLandscape() ? dp.getDeviceProperties().getHeightPx() : dp.getDeviceProperties().getWidthPx(); + float landscapeScreenHeight = dp.isLandscape ? dp.heightPx : dp.widthPx; float screenPart = (landscapeScreenHeight * SCREEN_UNITS); float defaultDp = dpiFromPx(screenPart, DisplayMetrics.DENSITY_DEVICE_STABLE); float thisDp = dpToPx(defaultDp); diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarUIController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarUIController.java index 06057038f0..b567871b92 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarUIController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarUIController.java @@ -72,11 +72,6 @@ public class TaskbarUIController implements BubbleBarController.BubbleBarLocatio @CallSuper protected void onDestroy() { mControllers = null; - RecentsView recentsView = getRecentsView(); - if (recentsView != null) { - recentsView.setTaskLaunchListener(null); - recentsView.setTaskLaunchCancelledRunnable(null); - } } protected boolean isTaskbarTouchable() { @@ -167,13 +162,6 @@ public class TaskbarUIController implements BubbleBarController.BubbleBarLocatio mControllers.taskbarActivityContext.startTranslationSpring(); } - /** - * @return if we should allow taskbar to auto stash - */ - public boolean shouldAllowTaskbarToAutoStash() { - return mControllers.taskbarActivityContext.shouldAllowTaskbarToAutoStash(); - } - /** * @param ev MotionEvent in screen coordinates. * @return Whether any Taskbar item could handle the given MotionEvent if given the chance. @@ -234,15 +222,6 @@ public class TaskbarUIController implements BubbleBarController.BubbleBarLocatio } } - public boolean isDraggingItem() { - boolean bubblesDragging = false; - if (mControllers.bubbleControllers.isPresent()) { - bubblesDragging = - mControllers.bubbleControllers.get().bubbleDragController.isDragging(); - } - return mControllers.taskbarDragController.isDragging() || bubblesDragging; - } - @CallSuper protected void dumpLogs(String prefix, PrintWriter pw) { pw.println(String.format( diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarView.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarView.java index b55bf4a1ee..e196ab3ad2 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarView.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarView.java @@ -16,7 +16,6 @@ package com.android.launcher3.taskbar; import static android.view.accessibility.AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED; -import static android.window.DesktopModeFlags.ENABLE_TASKBAR_OVERFLOW; import static android.window.DesktopModeFlags.ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION; import static com.android.launcher3.BubbleTextView.DISPLAY_TASKBAR; @@ -39,7 +38,6 @@ import android.view.InputDevice; import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; -import android.view.ViewGroup; import android.widget.FrameLayout; import androidx.annotation.LayoutRes; @@ -53,7 +51,6 @@ import com.android.launcher3.Insettable; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.apppairs.AppPairIcon; -import com.android.launcher3.celllayout.CellInfo; import com.android.launcher3.folder.FolderIcon; import com.android.launcher3.folder.PreviewBackground; import com.android.launcher3.model.data.AppPairInfo; @@ -120,14 +117,6 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar private int mNextViewIndex; - public int getIgnoreTaskbarIconCount() { - return mIgnoreTaskbarIconCount; - } - - // TODO: clean it up in follow up cl with removal of taskbar icon alignment. - // Only used for edge of 3 button navigation mode, where we need to hide icons which go - // beyond the bounds. - private int mIgnoreTaskbarIconCount = 0; /** * Whether the divider is between Hotseat icons and Recents, * instead of between All Apps button and Hotseat. @@ -177,11 +166,10 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar onDeviceProfileChanged(mActivityContext.getDeviceProfile()); int actualMargin = resources.getDimensionPixelSize(R.dimen.taskbar_icon_spacing); - int actualIconSize = - mActivityContext.getDeviceProfile().getTaskbarProfile().getIconSize(); - if (enableTaskbarPinning() && canTransitionToTransientTaskbar()) { + int actualIconSize = mActivityContext.getDeviceProfile().taskbarIconSize; + if (enableTaskbarPinning() && !mActivityContext.isThreeButtonNav()) { DeviceProfile deviceProfile = mActivityContext.getTransientTaskbarDeviceProfile(); - actualIconSize = deviceProfile.getTaskbarProfile().getIconSize(); + actualIconSize = deviceProfile.taskbarIconSize; } int visualIconSize = (int) (actualIconSize * ICON_VISIBLE_AREA_FACTOR); @@ -194,10 +182,7 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar // We always layout taskbar as a transient taskbar when we have taskbar pinning feature on, // then we scale and translate the icons to match persistent taskbar designs, so we use // taskbar icon size from current device profile to calculate correct item padding. - mItemPadding = (mIconTouchSize - mActivityContext - .getDeviceProfile() - .getTaskbarProfile() - .getIconSize()) / 2; + mItemPadding = (mIconTouchSize - mActivityContext.getDeviceProfile().taskbarIconSize) / 2; mFolderLeaveBehindColor = Themes.getAttrColor(mActivityContext, android.R.attr.textColorTertiary); @@ -213,7 +198,7 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar mTaskbarDividerContainer = new TaskbarDividerContainer(context); } - if (ENABLE_TASKBAR_OVERFLOW.isTrue()) { + if (Flags.taskbarOverflow()) { mTaskbarOverflowView = TaskbarOverflowView.inflateIcon( R.layout.taskbar_overflow_view, this, mIconTouchSize, mItemPadding); @@ -232,7 +217,7 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar */ private int calculateMaxNumIcons() { DeviceProfile deviceProfile = mActivityContext.getDeviceProfile(); - int availableWidth = deviceProfile.getDeviceProperties().getWidthPx(); + int availableWidth = deviceProfile.widthPx; int defaultEdgeMargin = (int) getResources().getDimension(deviceProfile.inv.inlineNavButtonsEndSpacing); int spaceForBubbleBar = @@ -240,12 +225,11 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar // Reserve space required for edge margins, or for navbar if shown. If task bar needs to be // center aligned with nav bar shown, reserve space on both sides. - availableWidth -= Math.max( - defaultEdgeMargin + spaceForBubbleBar, - deviceProfile.getHotseatProfile().getBarEndOffset()); + availableWidth -= + Math.max(defaultEdgeMargin + spaceForBubbleBar, deviceProfile.hotseatBarEndOffset); availableWidth -= Math.max( defaultEdgeMargin + (mShouldTryStartAlign ? 0 : spaceForBubbleBar), - mShouldTryStartAlign ? 0 : deviceProfile.getHotseatProfile().getBarEndOffset()); + mShouldTryStartAlign ? 0 : deviceProfile.hotseatBarEndOffset); // The space taken by an item icon used during layout. int iconSize = 2 * mItemMarginLeftRight + mIconTouchSize; @@ -262,7 +246,7 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar // All apps icon takes less space compared to normal icon size, reserve space for the icon // separately. boolean forceTransientTaskbarSize = - enableTaskbarPinning() && canTransitionToTransientTaskbar(); + enableTaskbarPinning() && !mActivityContext.isThreeButtonNav(); availableWidth -= iconSize - (int) getResources().getDimension( mAllAppsButtonContainer.getAllAppsButtonTranslationXOffset( forceTransientTaskbarSize || mActivityContext.isTransientTaskbar())); @@ -271,22 +255,13 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar return Math.floorDiv(availableWidth, iconSize) + additionalIcons; } - /** - * Whether the taskbar in the state context supports transition to a transient taskbar (e.g. - * using a popup menu). - */ - boolean canTransitionToTransientTaskbar() { - return mActivityContext.getTaskbarFeatureEvaluator() - .getSupportsTransitionToTransientTaskbar(); - } - /** * Recalculates the max number of icons the taskbar view can show without entering overflow. * Returns whether the max number of icons changed and the change affects the number of icons * that should be shown in the taskbar. */ boolean updateMaxNumIcons() { - if (!ENABLE_TASKBAR_OVERFLOW.isTrue()) { + if (!Flags.taskbarOverflow()) { return false; } int oldMaxNumIcons = mMaxNumIcons; @@ -379,35 +354,26 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar mIconLongClickListener = mControllerCallbacks.getIconOnLongClickListener(); mAllAppsButtonContainer.setUpCallbacks(callbacks); + if (mTaskbarDividerContainer != null + && mActivityContext.getTaskbarFeatureEvaluator().getSupportsPinningPopup()) { + mTaskbarDividerContainer.setUpCallbacks(callbacks); + } if (mTaskbarOverflowView != null) { mTaskbarOverflowView.setOnClickListener( mControllerCallbacks.getOverflowOnClickListener()); mTaskbarOverflowView.setOnLongClickListener( mControllerCallbacks.getOverflowOnLongClickListener()); - if (enableCursorHoverStates()) { - setHoverListenerForIcon(mTaskbarOverflowView); - } + } + if (Flags.showTaskbarPinningPopupFromAnywhere() + && mActivityContext.getTaskbarFeatureEvaluator().getSupportsPinningPopup()) { + setOnTouchListener(mControllerCallbacks.getTaskbarTouchListener()); } - if (ENABLE_TASKBAR_OVERFLOW.isTrue()) { + if (Flags.taskbarOverflow()) { mMaxNumIcons = calculateMaxNumIcons(); } } - void updatePinningPopupEventHandlers() { - boolean supportsPinningPopup = - mActivityContext.getTaskbarFeatureEvaluator().getSupportsPinningPopup(); - if (mTaskbarDividerContainer != null) { - mTaskbarDividerContainer.setUpCallbacks( - supportsPinningPopup ? mControllerCallbacks : null); - } - - if (Flags.showTaskbarPinningPopupFromAnywhere()) { - setOnTouchListener( - supportsPinningPopup ? mControllerCallbacks.getTaskbarTouchListener() : null); - } - } - private void removeAndRecycle(View view) { removeView(view); view.setOnClickListener(null); @@ -433,11 +399,6 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar } else { updateItemsWithoutLayoutTransition(hotseatItemInfos, recentTasks); } - mAllAppsButtonContainer.updateTaskbarMinimalState(isTaskbarInMinimalState()); - } - - public boolean isTaskbarInMinimalState() { - return getIconViews().length <= 1; } private void updateItemsWithoutLayoutTransition( @@ -456,9 +417,6 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar } removeView(mQsb); - mIgnoreTaskbarIconCount = getIgnoreCountForTaskbarIcons(recentTasks.size(), - hotseatItemInfos.length); - updateHotseatItems(hotseatItemInfos); if (mTaskbarDividerContainer != null && !recentTasks.isEmpty()) { @@ -496,9 +454,6 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar mNextViewIndex++; } - mIgnoreTaskbarIconCount = getIgnoreCountForTaskbarIcons(recentTasks.size(), - hotseatItemInfos.length); - // Update left section. if (mIsRtl) { updateRecents(recentTasks.reversed(), hotseatItemInfos.length); @@ -520,14 +475,8 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar } // Recents divider takes priority. - if (!mAddedDividerForRecents) { - boolean allAppsDividerAllowed = !mActivityContext.isTaskbarShowingDesktopTasks(); - if (allAppsDividerAllowed) { - updateAllAppsDivider(); - } else if (getChildAt(getExpectedAllAppsDividerIndex()) == mTaskbarDividerContainer) { - removeView(mTaskbarDividerContainer); - } - + if (!mAddedDividerForRecents && !mActivityContext.isInDesktopMode()) { + updateAllAppsDivider(); } } @@ -550,7 +499,8 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar private void updateAllAppsDivider() { // Index where All Apps divider would be if it is already in Taskbar. - final int expectedAllAppsDividerIndex = getExpectedAllAppsDividerIndex(); + final int expectedAllAppsDividerIndex = + mIsRtl ? getChildCount() - mNumStaticViews - 1 : mNumStaticViews; if (getChildAt(expectedAllAppsDividerIndex) == mTaskbarDividerContainer && getChildCount() == mNumStaticViews + 1) { // Only static views with divider so remove divider. @@ -565,57 +515,6 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar } } - private int getExpectedAllAppsDividerIndex() { - return mIsRtl ? getChildCount() - mNumStaticViews - 1 : mNumStaticViews; - } - - /** - * Calculate how many icon we need to not show in Taskbar that are present in hotseat. - */ - private int getIgnoreCountForTaskbarIcons(int recentsIcons, int hotseatIcons) { - - if (!mActivityContext.isThreeButtonNav() - || mActivityContext.getTaskbarFeatureEvaluator().isRecentsEnabled()) { - return 0; - } - - DeviceProfile deviceProfile = mActivityContext.getDeviceProfile(); - - // Add icon for all apps. - int icons = 1; - - // Only include divider line in count if will be added to Taskbar view which is in - // conditions below. - if (mActivityContext.isInDesktopMode() && recentsIcons > 0) { - icons += 1; - } else if (recentsIcons + hotseatIcons != 0) { - icons += 1; - } - int spaceNeeded = getIconLayoutWidth(icons + recentsIcons + hotseatIcons); - - boolean areBubblesVisible = - mControllerCallbacks.isBubbleBarEnabled() && mBubbleBarLocation != null; - int screenWidth = this.getResources().getDisplayMetrics().widthPixels; - int navSpaceNeeded = deviceProfile.getHotseatProfile().getBarEndOffset(); - - int ignoreCount = 0; - //Screen Width - nav space - int amountOfSpaceTaskbarIconsCanHave = screenWidth - navSpaceNeeded; - if (areBubblesVisible) { - // size of bubbles Icon and margin on the side. - int bubbleBarMargin = getResources().getDimensionPixelSize( - R.dimen.transient_taskbar_bottom_margin); - amountOfSpaceTaskbarIconsCanHave -= (mIconTouchSize + bubbleBarMargin); - } - int taskbarIconSpaceNeeded = spaceNeeded; - while (amountOfSpaceTaskbarIconsCanHave < taskbarIconSpaceNeeded) { - ignoreCount++; - int iconSpace = mIconTouchSize + (2 * mItemMarginLeftRight); - taskbarIconSpaceNeeded -= iconSpace; - } - return ignoreCount; - } - private void updateHotseatItems(ItemInfo[] hotseatItemInfos) { int numViewsAnimated = 0; @@ -675,7 +574,7 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar } else { hotseatView = inflate(expectedLayoutResId); } - LayoutParams lp = new TaskbarLayoutParams(mIconTouchSize, mIconTouchSize); + LayoutParams lp = new LayoutParams(mIconTouchSize, mIconTouchSize); hotseatView.setPadding(mItemPadding, mItemPadding, mItemPadding, mItemPadding); addView(hotseatView, mNextViewIndex, lp); } else if (hotseatView instanceof FolderIcon fi) { @@ -683,13 +582,6 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar fi.getFolder().reapplyItemInfo(); } - if (hotseatView.getLayoutParams() instanceof TaskbarLayoutParams tlp) { - tlp.bindInfo = new CellInfo(hotseatView, - hotseatItemInfo.screenId, hotseatItemInfo.container, - hotseatItemInfo.cellX, hotseatItemInfo.cellY, - hotseatItemInfo.spanX, hotseatItemInfo.spanY); - } - // Apply the Hotseat ItemInfos, or hide the view if there is none for a given index. if (hotseatView instanceof BubbleTextView btv && hotseatItemInfo instanceof WorkspaceItemInfo workspaceInfo) { @@ -714,7 +606,7 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar } private void updateRecents(List<GroupTask> recentTasks, int hotseatSize) { - boolean supportsOverflow = ENABLE_TASKBAR_OVERFLOW.isTrue() && recentTasks.size() > 1; + boolean supportsOverflow = Flags.taskbarOverflow() && recentTasks.size() > 1; int overflowSize = 0; boolean hasOverflow = false; if (supportsOverflow && mTaskbarOverflowView != null) { @@ -808,7 +700,7 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar if (recentIcon == null) { // TODO(b/343289567 and b/316004172): support app pairs and desktop mode. recentIcon = inflate(expectedLayoutResId); - LayoutParams lp = new TaskbarLayoutParams(mIconTouchSize, mIconTouchSize); + LayoutParams lp = new LayoutParams(mIconTouchSize, mIconTouchSize); recentIcon.setPadding(mItemPadding, mItemPadding, mItemPadding, mItemPadding); addView(recentIcon, mNextViewIndex, lp); } @@ -857,7 +749,7 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar if (taskIcon != null) { taskIcon = taskIcon.getConstantState().newDrawable().mutate(); } - btv.applyIconAndLabel(taskIcon, task.title, task.titleDescription); + btv.applyIconAndLabel(taskIcon, task.titleDescription); btv.setTag(singleTask); } @@ -906,15 +798,7 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar return 0; } Rect iconsBounds = getTransientTaskbarIconLayoutBoundsInParent(); - - int translateXFromIgnoredIcons = - mIgnoreTaskbarIconCount * (mIconTouchSize + mItemMarginLeftRight); - // If bubble bar or right translate in opposite direction. - if (!location.isOnLeft(isLayoutRtl())) { - translateXFromIgnoredIcons *= -1; - } - return getTaskBarIconsEndForBubbleBarLocation(location) - iconsBounds.right - + translateXFromIgnoredIcons; + return getTaskBarIconsEndForBubbleBarLocation(location) - iconsBounds.right; } @Override @@ -922,12 +806,11 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar int spaceNeeded = getIconLayoutWidth(); boolean layoutRtl = isLayoutRtl(); DeviceProfile deviceProfile = mActivityContext.getDeviceProfile(); - int navSpaceNeeded = deviceProfile.getHotseatProfile().getBarEndOffset(); + int navSpaceNeeded = deviceProfile.hotseatBarEndOffset; int centerAlignIconEnd = (right + left + spaceNeeded) / 2; int iconEnd = centerAlignIconEnd; if (mShouldTryStartAlign) { - int startSpacingPx = - deviceProfile.getHotseatProfile().getInlineNavButtonsEndSpacingPx(); + int startSpacingPx = deviceProfile.inlineNavButtonsEndSpacingPx; if (mControllerCallbacks.isBubbleBarEnabled() && mBubbleBarLocation != null && mActivityContext.shouldStartAlignTaskbar()) { @@ -989,16 +872,6 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar iconEnd += mAllAppsButtonTranslationOffset; } - if (mActivityContext.isThreeButtonNav()) { - boolean navbarOnLeft = mBubbleBarLocation != null && !mBubbleBarLocation.isOnLeft( - layoutRtl); - if (navbarOnLeft && layoutRtl) { - iconEnd -= (mIconTouchSize + mItemMarginLeftRight) * mIgnoreTaskbarIconCount; - } else if (!navbarOnLeft && !layoutRtl) { - iconEnd += (mIconTouchSize + mItemMarginLeftRight) * mIgnoreTaskbarIconCount; - } - } - mControllerCallbacks.onPreLayoutChildren(); int count = getChildCount(); @@ -1014,8 +887,8 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar qsbEnd = iconEnd - mItemMarginLeftRight; qsbStart = qsbEnd - deviceProfile.hotseatQsbWidth; } - int qsbTop = (bottom - top - deviceProfile.getHotseatProfile().getQsbHeight()) / 2; - int qsbBottom = qsbTop + deviceProfile.getHotseatProfile().getQsbHeight(); + int qsbTop = (bottom - top - deviceProfile.hotseatQsbHeight) / 2; + int qsbBottom = qsbTop + deviceProfile.hotseatQsbHeight; child.layout(qsbStart, qsbTop, qsbEnd, qsbBottom); } else if (child == mTaskbarDividerContainer) { iconEnd += mItemMarginLeftRight; @@ -1101,17 +974,10 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar } /** - * Returns the space used by the icons. + * Returns the space used by the icons */ private int getIconLayoutWidth() { - return getIconLayoutWidth(getChildCount()); - } - - /** - * Return the space needed based on the number of taskbar icons supplied vs existing children. - */ - private int getIconLayoutWidth(int expectedNumberOfTaskbarIcons) { - int countExcludingQsb = expectedNumberOfTaskbarIcons; + int countExcludingQsb = getChildCount(); DeviceProfile deviceProfile = mActivityContext.getDeviceProfile(); if (deviceProfile.isQsbInline) { countExcludingQsb--; @@ -1226,12 +1092,6 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar } } - @Override - protected void dispatchDraw(Canvas canvas) { - if (mActivityContext.isDestroyed()) return; - super.dispatchDraw(canvas); - } - private View inflate(@LayoutRes int layoutResId) { return mActivityContext.getViewCache().getView(layoutResId, mActivityContext, this); } @@ -1261,43 +1121,11 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar private float getTaskBarIconsEndForBubbleBarLocation(BubbleBarLocation location) { DeviceProfile deviceProfile = mActivityContext.getDeviceProfile(); boolean navbarOnRight = location.isOnLeft(isLayoutRtl()); - int navSpaceNeeded = deviceProfile.getHotseatProfile().getBarEndOffset(); + int navSpaceNeeded = deviceProfile.hotseatBarEndOffset; if (navbarOnRight) { return getWidth() - navSpaceNeeded; } else { return navSpaceNeeded + getIconLayoutWidth(); } } - - @Override - protected ViewGroup.LayoutParams generateLayoutParams(ViewGroup.LayoutParams lp) { - return new TaskbarLayoutParams(lp); - } - - @Override - public LayoutParams generateLayoutParams(AttributeSet attrs) { - return new TaskbarLayoutParams(getContext(), attrs); - } - - @Override - protected boolean checkLayoutParams(ViewGroup.LayoutParams p) { - return p instanceof TaskbarLayoutParams; - } - - public static class TaskbarLayoutParams extends FrameLayout.LayoutParams { - - @Nullable public CellInfo bindInfo; - - public TaskbarLayoutParams(Context context, AttributeSet attrs) { - super(context, attrs); - } - - public TaskbarLayoutParams(ViewGroup.LayoutParams source) { - super(source); - } - - public TaskbarLayoutParams(int width, int height) { - super(width, height); - } - } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarViewCallbacks.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarViewCallbacks.java index 59707f50d8..d0886e0ca1 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarViewCallbacks.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarViewCallbacks.java @@ -132,7 +132,7 @@ public class TaskbarViewCallbacks { * Notifies launcher to update icon alignment. */ public void notifyIconLayoutBoundsChanged() { - mControllers.taskbarViewController.notifyIconLayoutBoundsChanged(); + mControllers.uiController.onIconLayoutBoundsChanged(); } /** @@ -203,7 +203,7 @@ public class TaskbarViewCallbacks { mTaskbarView.getTaskbarOverflowView().getIsActive()); } mControllers.keyboardQuickSwitchController.toggleQuickSwitchViewForTaskbar( - mControllers.taskbarViewController.getShownTaskIds(), + mControllers.taskbarViewController.getTaskIdsForPinnedApps(), this::onKeyboardQuickSwitchViewClosed); } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarViewCallbacksFactory.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarViewCallbacksFactory.kt index bca51e7e82..6e948894c2 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarViewCallbacksFactory.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarViewCallbacksFactory.kt @@ -18,14 +18,15 @@ package com.android.launcher3.taskbar import android.app.contextualsearch.ContextualSearchManager.ENTRYPOINT_LONG_PRESS_META import android.content.Context -import com.android.launcher3.dagger.LauncherComponentProvider +import com.android.launcher3.R import com.android.launcher3.logging.StatsLogManager +import com.android.launcher3.util.ResourceBasedOverride +import com.android.launcher3.util.ResourceBasedOverride.Overrides import com.android.quickstep.TopTaskTracker import com.android.quickstep.util.ContextualSearchInvoker -import javax.inject.Inject /** Creates [TaskbarViewCallbacks] instances. */ -open class TaskbarViewCallbacksFactory @Inject constructor() { +open class TaskbarViewCallbacksFactory : ResourceBasedOverride { open fun create( activity: TaskbarActivityContext, @@ -42,7 +43,7 @@ open class TaskbarViewCallbacksFactory @Inject constructor() { val runningPackage = TopTaskTracker.INSTANCE[activity].getCachedTopTask( /* filterOnlyVisibleRecents */ true, - activity.displayId, + activity.display.displayId, ) .getPackageName() activity.statsLogManager @@ -64,7 +65,11 @@ open class TaskbarViewCallbacksFactory @Inject constructor() { companion object { @JvmStatic fun newInstance(context: Context): TaskbarViewCallbacksFactory { - return LauncherComponentProvider.get(context).getTaskbarViewCallbacksFactory() + return Overrides.getObject( + TaskbarViewCallbacksFactory::class.java, + context, + R.string.taskbar_view_callbacks_factory_class, + ) } } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java index afcbc852c3..ce38e666f6 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java @@ -20,13 +20,14 @@ import static android.animation.LayoutTransition.CHANGE_APPEARING; import static android.animation.LayoutTransition.CHANGE_DISAPPEARING; import static android.animation.LayoutTransition.DISAPPEARING; import static android.view.Display.DEFAULT_DISPLAY; -import static android.window.DesktopModeFlags.ENABLE_TASKBAR_OVERFLOW; import static android.window.DesktopModeFlags.ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION; import static com.android.app.animation.Interpolators.EMPHASIZED; import static com.android.app.animation.Interpolators.FINAL_FRAME; import static com.android.app.animation.Interpolators.LINEAR; +import static com.android.launcher3.BubbleTextView.LINE_INDICATOR_ANIM_DURATION; import static com.android.launcher3.Flags.enableScalingRevealHomeAnimation; +import static com.android.launcher3.Flags.taskbarOverflow; import static com.android.launcher3.LauncherAnimUtils.SCALE_PROPERTY; import static com.android.launcher3.LauncherAnimUtils.VIEW_ALPHA; import static com.android.launcher3.LauncherAnimUtils.VIEW_TRANSLATE_X; @@ -80,7 +81,6 @@ import com.android.launcher3.anim.PendingAnimation; import com.android.launcher3.anim.RevealOutlineAnimation; import com.android.launcher3.anim.RoundedRectRevealOutlineProvider; import com.android.launcher3.config.FeatureFlags; -import com.android.launcher3.model.ModelWriter; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.TaskItemInfo; import com.android.launcher3.taskbar.bubbles.BubbleBarController; @@ -94,7 +94,6 @@ import com.android.launcher3.util.MultiPropertyFactory.MultiProperty; import com.android.launcher3.util.MultiTranslateDelegate; import com.android.launcher3.util.MultiValueAlpha; import com.android.launcher3.util.SandboxContext; -import com.android.launcher3.views.IconButtonView; import com.android.quickstep.util.GroupTask; import com.android.quickstep.util.SingleTask; import com.android.systemui.shared.recents.model.Task; @@ -137,9 +136,11 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar private static final float ERROR_POSITION_IN_HOTSEAT_NOT_FOUND = -100; private static final int TRANSITION_DELAY = 50; - static final int TRANSITION_DEFAULT_DURATION = 500; + private static final int TRANSITION_DEFAULT_DURATION = 500; private static final int TRANSITION_FADE_IN_DURATION = 167; private static final int TRANSITION_FADE_OUT_DURATION = 83; + private static final int APPEARING_LINE_INDICATOR_ANIM_DELAY = + TRANSITION_DEFAULT_DURATION - LINE_INDICATOR_ANIM_DURATION; private final TaskbarActivityContext mActivity; private @Nullable TaskbarDragLayerController mDragLayerController; @@ -163,9 +164,6 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar private final AnimatedFloat mTranslationXForBubbleBar = new AnimatedFloat( this::updateTranslationXForBubbleBar); - private final TransitionEndBoundsChangedNotifier mTransitionEndBoundsChangedNotifier = - new TransitionEndBoundsChangedNotifier(); - @Nullable private Animator mTaskbarShiftXAnim; @Nullable @@ -226,27 +224,24 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar private final float mTaskbarLeftRightMargin; - private final TaskbarRunningAppStateAnimationController mRunningStateController; - public TaskbarViewController(TaskbarActivityContext activity, TaskbarView taskbarView) { mActivity = activity; mTransientTaskbarDp = mActivity.getTransientTaskbarDeviceProfile(); mPersistentTaskbarDp = mActivity.getPersistentTaskbarDeviceProfile(); - mTransientIconSize = mTransientTaskbarDp.getTaskbarProfile().getIconSize(); - mPersistentIconSize = mPersistentTaskbarDp.getTaskbarProfile().getIconSize(); + mTransientIconSize = mTransientTaskbarDp.taskbarIconSize; + mPersistentIconSize = mPersistentTaskbarDp.taskbarIconSize; mTaskbarView = taskbarView; mTaskbarIconAlpha = new MultiValueAlpha(mTaskbarView, NUM_ALPHA_CHANNELS); mTaskbarIconAlpha.setUpdateVisibility(true); mModelCallbacks = TaskbarModelCallbacksFactory.newInstance(mActivity) .create(mActivity, mTaskbarView); - mTaskbarBottomMargin = activity.getDeviceProfile().getTaskbarProfile().getBottomMargin(); + mTaskbarBottomMargin = activity.getDeviceProfile().taskbarBottomMargin; mStashedHandleHeight = activity.getResources() .getDimensionPixelSize(R.dimen.taskbar_stashed_handle_height); mIsRtl = Utilities.isRtl(mTaskbarView.getResources()); mTaskbarLeftRightMargin = mActivity.getResources().getDimensionPixelSize( R.dimen.transient_taskbar_padding); - mRunningStateController = new TaskbarRunningAppStateAnimationController(mActivity); } /** @@ -267,12 +262,9 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar mTaskbarView.init(TaskbarViewCallbacksFactory.newInstance(mActivity).create( mActivity, mControllers, mTaskbarView)); - // Pinning popup feature availability depends on taskbar controllers, wait for the - // controllers state initialization before evaluating the feature. - mControllers.runAfterInit(mTaskbarView::updatePinningPopupEventHandlers); mTaskbarView.getLayoutParams().height = mActivity.isPhoneMode() ? mActivity.getResources().getDimensionPixelSize(R.dimen.taskbar_phone_size) - : mActivity.getDeviceProfile().getTaskbarProfile().getHeight(); + : mActivity.getDeviceProfile().taskbarHeight; mTaskbarIconScaleForStash.updateValue(1f); float pinningValue = @@ -306,14 +298,6 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar } } - /** - * Called whenever a new ui controller is set. - */ - public void onUiControllerChanged() { - // Pinning availability may depend on UI state when home has "locked" pinned taskbar. - mTaskbarView.updatePinningPopupEventHandlers(); - } - /** Adjusts start aligned taskbar layout accordingly to the bubble bar position. */ @Override public void onBubbleBarLocationUpdated(BubbleBarLocation location) { @@ -411,7 +395,6 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar } LauncherAppState.getInstance(mActivity).getModel().removeCallbacks(mModelCallbacks); mActivity.removeOnDeviceProfileChangeListener(mDeviceProfileChangeListener); - mRunningStateController.onDestroy(); } /** @@ -429,12 +412,6 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar return mTaskbarIconAlpha; } - /** Creates a ModelWriter for updating model properties */ - public ModelWriter getModelWriter() { - return LauncherAppState.getInstance(mActivity).getModel() - .getWriter(false, mActivity.getCellPosMapper(), mModelCallbacks); - } - /** * Should be called when the recents button is disabled, so we can hide Taskbar icons as well. */ @@ -586,7 +563,7 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar sizeDiffTranslationRange *= -1; } - if (!mTaskbarView.canTransitionToTransientTaskbar()) { + if (mActivity.isThreeButtonNav()) { mTaskbarView.getAllAppsButtonContainer() .setTranslationXForTaskbarAllAppsIcon(allAppIconTranslateRange); return; @@ -688,19 +665,17 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar // finally placing the icon in the middle of new taskbar background height. if (mControllers.getSharedState().startTaskbarVariantIsTransient) { float transY = - mTransientTaskbarDp.getTaskbarProfile().getBottomMargin() + ( - mTransientTaskbarDp.getTaskbarProfile().getHeight() + mTransientTaskbarDp.taskbarBottomMargin + (mTransientTaskbarDp.taskbarHeight - mTaskbarView.getTransientTaskbarIconLayoutBounds().bottom) - - (mPersistentTaskbarDp.getTaskbarProfile().getHeight() - - mTransientTaskbarDp.getTaskbarProfile().getIconSize()) / 2f; + - (mPersistentTaskbarDp.taskbarHeight + - mTransientTaskbarDp.taskbarIconSize) / 2f; taskbarIconTranslationYForPinningValue = mapRange(scale, 0f, transY); } else { float transY = - -mTransientTaskbarDp.getTaskbarProfile().getBottomMargin() + ( - mPersistentTaskbarDp.getTaskbarProfile().getHeight() + -mTransientTaskbarDp.taskbarBottomMargin + (mPersistentTaskbarDp.taskbarHeight - mTaskbarView.getTransientTaskbarIconLayoutBounds().bottom) - - (mTransientTaskbarDp.getTaskbarProfile().getHeight() - - mTransientTaskbarDp.getTaskbarProfile().getIconSize()) / 2f; + - (mTransientTaskbarDp.taskbarHeight + - mTransientTaskbarDp.taskbarIconSize) / 2f; taskbarIconTranslationYForPinningValue = mapRange(scale, transY, 0f); } return taskbarIconTranslationYForPinningValue; @@ -773,41 +748,33 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar } private boolean shouldUpdateIconContentDescription(BubbleTextView btv) { - boolean isInDesktopMode = - mControllers.taskbarDesktopModeController.shouldShowDesktopTasksInTaskbar( - DEFAULT_DISPLAY); + boolean isInDesktopMode = mControllers.taskbarDesktopModeController.isInDesktopMode( + DEFAULT_DISPLAY); boolean isAllAppsButton = btv instanceof TaskbarAllAppsButtonContainer; boolean isDividerButton = btv instanceof TaskbarDividerContainer; return isInDesktopMode && !isAllAppsButton && !isDividerButton; } /** - * @return A set of Task ids shown in the taskbar - includes task ID for running tasks of pinned - * apps, and standalone running tasks. + * @return A set of Task ids of running apps that are pinned in the taskbar. */ - protected Set<Integer> getShownTaskIds() { - if (!ENABLE_TASKBAR_OVERFLOW.isTrue()) { + protected Set<Integer> getTaskIdsForPinnedApps() { + if (!taskbarOverflow()) { return Collections.emptySet(); } - Set<Integer> shownTasks = new HashSet<>(); + Set<Integer> pinnedAppsWithTasks = new HashSet<>(); for (View iconView : getIconViews()) { - if (iconView instanceof BubbleTextView btv) { - if (btv.getTag() instanceof TaskItemInfo itemInfo) { - shownTasks.add(itemInfo.getTaskId()); - } else if (btv.getTag() instanceof SingleTask task) { - shownTasks.add(task.getTask().getKey().id); - } + if (iconView instanceof BubbleTextView btv + && btv.getTag() instanceof TaskItemInfo itemInfo) { + pinnedAppsWithTasks.add(itemInfo.getTaskId()); } } - return shownTasks; + return pinnedAppsWithTasks; } private void updateRunningState(BubbleTextView btv) { - mRunningStateController.updateRunningState( - btv, - getRunningAppState(btv), - /* animate = */ mTaskbarView.getLayoutTransition() != null); + btv.updateRunningState(getRunningAppState(btv), mTaskbarView.getLayoutTransition() != null); } private BubbleTextView.RunningAppState getRunningAppState(BubbleTextView btv) { @@ -908,16 +875,6 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar as.play(reveal); } - void notifyIconLayoutBoundsChanged() { - final LayoutTransition layoutTransition = mTaskbarView.getLayoutTransition(); - if (layoutTransition != null && layoutTransition.isRunning()) { - // Defers notify until after transitions finish. - mTransitionEndBoundsChangedNotifier.mIsCanceled = false; - } else { - mControllers.uiController.onIconLayoutBoundsChanged(); - } - } - /** * Sets the Taskbar icon alignment relative to Launcher hotseat icons * @param alignmentRatio [0, 1] @@ -941,12 +898,6 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar mIsHotseatIconOnTopWhenAligned = isHotseatIconOnTopWhenAligned; mIsIconAlignedWithHotseat = isIconAlignedWithHotseat; mIsStashed = isStashed; - - final LayoutTransition layoutTransition = mTaskbarView.getLayoutTransition(); - if (layoutTransition != null && layoutTransition.isRunning()) { - mTransitionEndBoundsChangedNotifier.mIsCanceled = true; - layoutTransition.cancel(); - } mIconAlignControllerLazy = createIconAlignmentController(launcherDp); } mIconAlignControllerLazy.setPlayFraction(alignmentRatio); @@ -989,16 +940,12 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar Rect hotseatPadding = launcherDp.getHotseatLayoutPadding(mActivity); boolean isTransientTaskbar = mActivity.isTransientTaskbar(); - float scaleUp = ((float) launcherDp.iconSizePx) - / taskbarDp.getTaskbarProfile().getIconSize(); + float scaleUp = ((float) launcherDp.iconSizePx) / taskbarDp.taskbarIconSize; int borderSpacing = launcherDp.hotseatBorderSpace; int hotseatCellSize = DeviceProfile.calculateCellWidth( - launcherDp.getDeviceProperties().getAvailableWidthPx() - - hotseatPadding.left - - hotseatPadding.right, + launcherDp.availableWidthPx - hotseatPadding.left - hotseatPadding.right, borderSpacing, - launcherDp.numShownHotseatIcons - ); + launcherDp.numShownHotseatIcons); boolean isToHome = mControllers.uiController.isIconAlignedWithHotseat(); boolean isDeviceLocked = mControllers.taskbarStashController.isDeviceLocked(); @@ -1023,14 +970,13 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar } } int collapsedHeight = mActivity.getDefaultTaskbarWindowSize(); - int expandedHeight = Math.max(collapsedHeight, - taskbarDp.getTaskbarProfile().getHeight() + offsetY); + int expandedHeight = Math.max(collapsedHeight, taskbarDp.taskbarHeight + offsetY); setter.addOnFrameListener(anim -> mActivity.setTaskbarWindowSize( anim.getAnimatedFraction() > 0 ? expandedHeight : collapsedHeight)); mTaskbarBottomMargin = isTransientTaskbar - ? mTransientTaskbarDp.getTaskbarProfile().getBottomMargin() - : mPersistentTaskbarDp.getTaskbarProfile().getBottomMargin(); + ? mTransientTaskbarDp.taskbarBottomMargin + : mPersistentTaskbarDp.taskbarBottomMargin; int firstRecentTaskIndex = -1; int hotseatNavBarTranslationX = 0; @@ -1040,17 +986,12 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar hotseatNavBarTranslationX = taskbarDp .getHotseatTranslationXForNavBar(mActivity, isBubblesOnLeft); } - - int ignoreCount = mTaskbarView.getIgnoreTaskbarIconCount(); - for (int i = 0; i < mTaskbarView.getChildCount(); i++) { View child = mTaskbarView.getChildAt(i); boolean isAllAppsButton = child == mTaskbarView.getAllAppsButtonContainer(); boolean isTaskbarDividerView = child == mTaskbarView.getTaskbarDividerViewContainer(); boolean isTaskbarOverflowView = child == mTaskbarView.getTaskbarOverflowView(); boolean isRecentTask = child.getTag() instanceof GroupTask; - boolean isRtl = Utilities.isRtl(child.getResources()); - // TODO(b/343522351): show recents on the home screen. final boolean isRecentsInHotseat = false; if (!mIsHotseatIconOnTopWhenAligned) { @@ -1079,21 +1020,11 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar ? Interpolators.clampToProgress(LINEAR, 0f, 0.17f) : Interpolators.clampToProgress(LINEAR, 0.72f, 0.84f)); } - } else if (((!isRtl && mTaskbarView.getChildCount() - i <= ignoreCount) - || (isRtl && i < ignoreCount)) - && mIsHotseatIconOnTopWhenAligned - && !(child instanceof IconButtonView)) { - setter.addFloat(child, VIEW_ALPHA, 0f, 1f, - isToHome - ? Interpolators.clampToProgress(LINEAR, 0f, 0.35f) - : mActivity.getDeviceProfile().isQsbInline - ? Interpolators.clampToProgress(LINEAR, 0f, 1f) - : Interpolators.clampToProgress(LINEAR, 0.84f, 1f)); - setter.addOnFrameListener(animator -> AlphaUpdateListener.updateVisibility(child)); } if (child == mTaskbarView.getQsb()) { + boolean isRtl = Utilities.isRtl(child.getResources()); float hotseatIconCenter = isRtl - ? launcherDp.getDeviceProperties().getWidthPx() - hotseatPadding.right + borderSpacing + ? launcherDp.widthPx - hotseatPadding.right + borderSpacing + launcherDp.hotseatQsbWidth / 2f : hotseatPadding.left - borderSpacing - launcherDp.hotseatQsbWidth / 2f; if (taskbarDp.isQsbInline) { @@ -1105,10 +1036,9 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar INDEX_TASKBAR_PINNING_ANIM).getValue(); } float halfQsbIconWidthDiff = - (launcherDp.hotseatQsbWidth - taskbarDp.getTaskbarProfile().getIconSize()) - / 2f; - float scale = ((float) taskbarDp.getTaskbarProfile().getIconSize()) - / launcherDp.getHotseatProfile().getQsbVisualHeight(); + (launcherDp.hotseatQsbWidth - taskbarDp.taskbarIconSize) / 2f; + float scale = ((float) taskbarDp.taskbarIconSize) + / launcherDp.hotseatQsbVisualHeight; setter.addFloat(child, SCALE_PROPERTY, scale, 1f, interpolator); float fromX = isRtl ? -halfQsbIconWidthDiff : halfQsbIconWidthDiff; @@ -1255,12 +1185,7 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar ? R.dimen.taskbar_phone_size : R.dimen.taskbar_stashed_size); } else { - taskbarWindowSize = mActivity.getDefaultTaskbarWindowSize(); - } - if (mBubbleControllers != null) { - int bubbleBarMaxHeight = mBubbleControllers.bubbleBarViewController - .getBubbleBarWithFlyoutMaximumHeight(); - taskbarWindowSize = Math.max(taskbarWindowSize, bubbleBarMaxHeight); + taskbarWindowSize = deviceProfile.taskbarHeight + deviceProfile.getTaskbarOffsetY(); } mActivity.setTaskbarWindowSize(taskbarWindowSize); mTaskbarNavButtonTranslationY.updateValue(-deviceProfile.getTaskbarOffsetY()); @@ -1312,6 +1237,10 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar view.setAlpha(0f); view.setScaleX(0f); view.setScaleY(0f); + if (view instanceof BubbleTextView btv) { + // Defer so that app is mostly scaled in before showing indicator. + btv.setLineIndicatorAnimStartDelay(APPEARING_LINE_INDICATOR_ANIM_DELAY); + } } else if (type == DISAPPEARING && view instanceof BubbleTextView btv) { // Running state updates happen after removing this view, so update it here. updateRunningState(btv); @@ -1321,10 +1250,11 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar @Override public void endTransition( LayoutTransition transition, ViewGroup container, View view, int type) { - // Do nothing. + if (type == APPEARING && view instanceof BubbleTextView btv) { + btv.setLineIndicatorAnimStartDelay(0); + } } }); - layoutTransition.addTransitionListener(mTransitionEndBoundsChangedNotifier); // Appearing. AnimatorSet appearingSet = new AnimatorSet(); @@ -1383,10 +1313,6 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar return layoutTransition; } - public boolean isTaskbarInMinimalState() { - return mTaskbarView.isTaskbarInMinimalState(); - } - /** * To be called when the given Task is updated, so that we can tell TaskbarView to also update. * @param task The Task whose e.g. icon changed. @@ -1408,7 +1334,7 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar @Override public void dumpLogs(String prefix, PrintWriter pw) { pw.println(prefix + "TaskbarViewController:"); - pw.println(prefix + "\tignoreTaskbarIconCount=" + mTaskbarView.getIgnoreTaskbarIconCount()); + mTaskbarIconAlpha.dump( prefix + "\t", pw, @@ -1431,22 +1357,4 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar animator.setInterpolator(EMPHASIZED); return animator; } - - private class TransitionEndBoundsChangedNotifier implements TransitionListener { - private boolean mIsCanceled; - - @Override - public void startTransition( - LayoutTransition transition, ViewGroup container, View view, int type) { - // Do nothing. - } - - @Override - public void endTransition( - LayoutTransition transition, ViewGroup container, View view, int type) { - if (!transition.isRunning() && !mIsCanceled) { - mControllers.uiController.onIconLayoutBoundsChanged(); - } - } - } } diff --git a/quickstep/src/com/android/launcher3/taskbar/Utilities.java b/quickstep/src/com/android/launcher3/taskbar/Utilities.java index 9182e03175..47d6684727 100644 --- a/quickstep/src/com/android/launcher3/taskbar/Utilities.java +++ b/quickstep/src/com/android/launcher3/taskbar/Utilities.java @@ -16,18 +16,12 @@ package com.android.launcher3.taskbar; -import static com.android.launcher3.Utilities.dpToPx; - -import com.android.launcher3.graphics.ThemeManager; -import com.android.launcher3.taskbar.customization.TaskbarIconSpecs; - /** * Various utilities shared amongst the Taskbar's classes. */ public final class Utilities { - private Utilities() { - } + private Utilities() {} /** * Sets drag, long-click, and split selection behavior on 1P and 3P launchers with Taskbar @@ -42,22 +36,4 @@ public final class Utilities { controllers.taskbarPopupController.setAllowInitialSplitSelection( allowInitialSplitSelection); } - - /** - * Gives radius for Transient Taskbar based on selected Launcher Icon Shape. - * Transient Taskbar radius = (icon shape radius * icon size ratio) + padding. - * - * @return The radius for Transient Taskbar. - */ - static float getShapedTaskbarRadius(TaskbarActivityContext activityContext) { - float taskbarIconSize = - activityContext.getTaskbarSpecsEvaluator().getTaskbarIconSize().getSize(); - float maxIconSize = TaskbarIconSpecs.INSTANCE.getIconSize52dp().getSize(); - float iconShapeRadius = - ThemeManager.INSTANCE.get(activityContext).getIconState().getShapeRadius(); - float iconSizeRatio = taskbarIconSize / maxIconSize; - return dpToPx((iconShapeRadius * iconSizeRatio) - + TaskbarIconSpecs.INSTANCE.getDefaultTransientIconMargin().getSize(), - activityContext); - } } diff --git a/quickstep/src/com/android/launcher3/taskbar/VoiceInteractionWindowController.kt b/quickstep/src/com/android/launcher3/taskbar/VoiceInteractionWindowController.kt index c065d35528..c7d42b1b90 100644 --- a/quickstep/src/com/android/launcher3/taskbar/VoiceInteractionWindowController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/VoiceInteractionWindowController.kt @@ -67,7 +67,6 @@ class VoiceInteractionWindowController(val context: TaskbarActivityContext) : separateWindowForTaskbarBackground = object : BaseDragLayer<TaskbarActivityContext>(context, null, 0) { override fun recreateControllers() { - super.recreateControllers() mControllers = emptyArray() } diff --git a/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsController.java b/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsController.java index 7ada818860..6c55b28845 100644 --- a/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsController.java +++ b/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsController.java @@ -133,7 +133,6 @@ public final class TaskbarAllAppsController { if (isOpen()) { mSlideInView.close(true); } else { - mControllers.taskbarEduTooltipController.hide(); mControllers.taskbarPopupController.maybeCloseMultiInstanceMenu(); show(true, showKeyboard); } diff --git a/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsSlideInView.java b/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsSlideInView.java index 4a0aeabe6f..d947784860 100644 --- a/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsSlideInView.java +++ b/quickstep/src/com/android/launcher3/taskbar/allapps/TaskbarAllAppsSlideInView.java @@ -15,14 +15,11 @@ */ package com.android.launcher3.taskbar.allapps; -import static android.os.Trace.TRACE_TAG_APP; - import static com.android.app.animation.Interpolators.DECELERATED_EASE; import static com.android.app.animation.Interpolators.EMPHASIZED; import static com.android.app.animation.Interpolators.LINEAR; import static com.android.launcher3.touch.AllAppsSwipeController.ALL_APPS_FADE_MANUAL; import static com.android.launcher3.touch.AllAppsSwipeController.SCRIM_FADE_MANUAL; -import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import android.animation.Animator; import android.content.Context; @@ -30,13 +27,9 @@ import android.graphics.Canvas; import android.graphics.Rect; import android.os.Handler; import android.os.Looper; -import android.os.Trace; import android.util.AttributeSet; -import android.util.Log; -import android.view.CrossWindowBlurListeners; import android.view.MotionEvent; import android.view.View; -import android.view.ViewRootImpl; import android.view.animation.Interpolator; import android.window.OnBackInvokedDispatcher; @@ -55,16 +48,11 @@ import com.android.launcher3.taskbar.overlay.TaskbarOverlayContext; import com.android.launcher3.util.Themes; import com.android.launcher3.views.AbstractSlideInView; -import java.util.function.Consumer; - /** Wrapper for taskbar all apps with slide-in behavior. */ public class TaskbarAllAppsSlideInView extends AbstractSlideInView<TaskbarOverlayContext> implements Insettable, DeviceProfile.OnDeviceProfileChangeListener { - private static final String TAG = "TaskbarAllAppsSlideInView"; - private final Handler mHandler; private final int mMaxBlurRadius; - private final Consumer<Boolean> mWindowBlurListener = blursEnabled -> invalidate(); private TaskbarAllAppsContainerView mAppsView; private float mShiftRange; @@ -115,16 +103,6 @@ public class TaskbarAllAppsSlideInView extends AbstractSlideInView<TaskbarOverla } private void showOnFullyAttachedToWindow(boolean animate) { - if (mActivityContext.isAllAppsBackgroundBlurEnabled()) { - ViewRootImpl overlayVri = mActivityContext.getRootView().getViewRootImpl(); - if (overlayVri == null) { - Log.w(TAG, "overlayVRI is null, cannot notifyRendererOfExpensiveFrame()"); - } else { - Trace.instantForTrack(TRACE_TAG_APP, TAG, "notifyRendererForGpuLoadUp"); - overlayVri.notifyRendererForGpuLoadUp("opening taskbar all apps"); - overlayVri.notifyRendererOfExpensiveFrame(); - } - } mAllAppsCallbacks.onAllAppsTransitionStart(true); if (!animate) { mAllAppsCallbacks.onAllAppsTransitionEnd(true); @@ -148,7 +126,7 @@ public class TaskbarAllAppsSlideInView extends AbstractSlideInView<TaskbarOverla protected void onOpenCloseAnimationPending(PendingAnimation animation) { final boolean isOpening = mToTranslationShift == TRANSLATION_SHIFT_OPENED; - if (mActivityContext.getDeviceProfile().getDeviceProperties().isPhone()) { + if (mActivityContext.getDeviceProfile().isPhone) { final Interpolator allAppsFadeInterpolator = isOpening ? ALL_APPS_FADE_MANUAL : Interpolators.reverse(ALL_APPS_FADE_MANUAL); animation.setViewAlpha(mAppsView, 1 - mToTranslationShift, allAppsFadeInterpolator); @@ -169,7 +147,7 @@ public class TaskbarAllAppsSlideInView extends AbstractSlideInView<TaskbarOverla @Override protected Interpolator getScrimInterpolator() { - if (mActivityContext.getDeviceProfile().getDeviceProperties().isTablet()) { + if (mActivityContext.getDeviceProfile().isTablet) { return super.getScrimInterpolator(); } return mToTranslationShift == TRANSLATION_SHIFT_OPENED @@ -214,7 +192,7 @@ public class TaskbarAllAppsSlideInView extends AbstractSlideInView<TaskbarOverla protected void onFinishInflate() { super.onFinishInflate(); mAppsView = findViewById(R.id.apps_view); - if (mActivityContext.getDeviceProfile().getDeviceProperties().isPhone()) { + if (mActivityContext.getDeviceProfile().isPhone) { mAppsView.setAlpha(0); } mContent = mAppsView; @@ -238,7 +216,6 @@ public class TaskbarAllAppsSlideInView extends AbstractSlideInView<TaskbarOverla dispatcher.registerOnBackInvokedCallback( OnBackInvokedDispatcher.PRIORITY_DEFAULT, this); } - CrossWindowBlurListeners.getInstance().addListener(MAIN_EXECUTOR, mWindowBlurListener); } @Override @@ -252,7 +229,6 @@ public class TaskbarAllAppsSlideInView extends AbstractSlideInView<TaskbarOverla if (dispatcher != null) { dispatcher.unregisterOnBackInvokedCallback(this); } - CrossWindowBlurListeners.getInstance().removeListener(mWindowBlurListener); } @Override @@ -277,13 +253,12 @@ public class TaskbarAllAppsSlideInView extends AbstractSlideInView<TaskbarOverla @Override protected int getScrimColor(Context context) { if (!mActivityContext.getDeviceProfile().shouldShowAllAppsOnSheet()) { - // Always use an opaque scrim if there's no sheet. - return context.getResources().getColor(R.color.materialColorSurfaceDim); - } else if (!Flags.allAppsBlur()) { - // If there's a sheet but no blur, use the old scrim color. - return context.getResources().getColor(R.color.widgets_picker_scrim); + return Themes.getAttrColor(context, R.attr.allAppsScrimColor); } - return Themes.getAttrColor(context, R.attr.allAppsScrimColor); + if (Flags.allAppsBlur()) { + return Themes.getAttrColor(context, R.attr.allAppsScrimColorOverBlur); + } + return context.getResources().getColor(R.color.widgets_picker_scrim); } @Override diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarController.java b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarController.java index 380b646419..8b60ddb23c 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarController.java +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarController.java @@ -35,12 +35,12 @@ import android.os.Bundle; import android.os.SystemProperties; import android.util.ArrayMap; import android.util.Log; -import android.view.View; + +import androidx.annotation.NonNull; import com.android.launcher3.taskbar.TaskbarSharedState; import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController; import com.android.launcher3.util.Executors.SimpleThreadFactory; -import com.android.launcher3.util.MultiPropertyFactory; import com.android.quickstep.SystemUiProxy; import com.android.systemui.shared.system.QuickStepContract.SystemUiStateFlags; import com.android.wm.shell.Flags; @@ -100,8 +100,7 @@ public class BubbleBarController extends IBubblesListener.Stub { private static final long MASK_HIDE_HANDLE_VIEW = SYSUI_STATE_BOUNCER_SHOWING | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING - | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED - | SYSUI_STATE_IME_VISIBLE; + | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED; private static final long MASK_SYSUI_LOCKED = SYSUI_STATE_BOUNCER_SHOWING | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING @@ -126,7 +125,8 @@ public class BubbleBarController extends IBubblesListener.Stub { private BubbleCreator mBubbleCreator; private BubbleBarLocationListener mBubbleBarLocationListener; - private int mLastSentBubbleBarTopToScreenBottom; + // Cache last sent top coordinate to avoid sending duplicate updates to shell + private int mLastSentBubbleBarTop; private boolean mIsImeVisible = false; @@ -181,9 +181,6 @@ public class BubbleBarController extends IBubblesListener.Stub { public void onDestroy() { mSystemUiProxy.setBubblesListener(null); // Saves bubble bar state - mSharedState.bubbleBarExpanded = mBubbleBarViewController.isExpanded(); - mSharedState.bubbleBarStashed = mBubbleStashController.isStashed(); - mSharedState.selectedBubbleKey = mSelectedBubble != null ? mSelectedBubble.getKey() : null; BubbleInfo[] bubbleInfoItems = new BubbleInfo[mBubbles.size()]; mBubbles.values().forEach(bubbleBarBubble -> { int index = mBubbleBarViewController.bubbleViewIndex(bubbleBarBubble.getView()); @@ -226,7 +223,6 @@ public class BubbleBarController extends IBubblesListener.Stub { mBubbleBarViewController.getBubbleBarLocation()); if (sBubbleBarEnabled) { mSystemUiProxy.setBubblesListener(this); - mSystemUiProxy.setHasBubbleBar(true); } }); } @@ -239,19 +235,8 @@ public class BubbleBarController extends IBubblesListener.Stub { mBubbleBarViewController.setHiddenForSysui(hideBubbleBar); boolean hideHandleView = (flags & MASK_HIDE_HANDLE_VIEW) != 0; - mBubbleStashedHandleViewController.ifPresent(controller -> { - controller.setHiddenForSysui(hideHandleView); - MultiPropertyFactory<View>.MultiProperty handleViewAlpha = - mBubbleStashController.getHandleViewAlpha(); - boolean shouldShowHandleView = handleViewAlpha != null - && !hideHandleView - && mBubbleStashController.isStashed() - && mBubbleBarViewController.hasBubbles(); - if (shouldShowHandleView) { - // TODO: (b/273592694) animate it? - handleViewAlpha.setValue(1f); - } - }); + mBubbleStashedHandleViewController.ifPresent( + controller -> controller.setHiddenForSysui(hideHandleView)); boolean sysuiLocked = (flags & MASK_SYSUI_LOCKED) != 0; mBubbleStashController.setSysuiLocked(sysuiLocked); @@ -312,29 +297,12 @@ public class BubbleBarController extends IBubblesListener.Stub { if (sharedState.bubbleBarLocation != null) { updateBubbleBarLocationInternal(sharedState.bubbleBarLocation); } - List<BubbleInfo> savedBubbles = sharedState.bubbleInfoItems; - boolean hasSavedBubbles = savedBubbles != null && !savedBubbles.isEmpty(); - if (hasSavedBubbles) { - restoreSavedBubbles(savedBubbles); - } + restoreSavedBubbles(sharedState.bubbleInfoItems); restoreSuppressed(sharedState.suppressedBubbleInfoItems); - if (hasSavedBubbles) { - setSelectedBubbleInternal(mBubbles.get(sharedState.selectedBubbleKey)); - if (sharedState.bubbleBarExpanded) { - // We don't want state restore to have side effects which update the Shell state. - // Use the method for setting expanded state from sysui as that won't trigger an - // update back to Shell. - mBubbleBarViewController.setExpandedFromSysui(/* isExpanded= */ true, - /* animate= */ false); - } else if (sharedState.bubbleBarStashed) { - mBubbleStashController.stashBubbleBarImmediate(); - } else { - mBubbleStashController.showBubbleBarImmediate(); - } - } } private void restoreSavedBubbles(List<BubbleInfo> bubbleInfos) { + if (bubbleInfos == null || bubbleInfos.isEmpty()) return; // Iterate in reverse because new bubbles are added in front and the list is in order. for (int i = bubbleInfos.size() - 1; i >= 0; i--) { BubbleBarBubble bubble = mBubbleCreator.populateBubble(mContext, @@ -343,8 +311,7 @@ public class BubbleBarController extends IBubblesListener.Stub { Log.e(TAG, "Could not instantiate BubbleBarBubble for " + bubbleInfos.get(i)); continue; } - mBubbles.put(bubble.getKey(), bubble); - mBubbleBarViewController.restoreBubble(bubble); + addBubbleInternally(bubble, /* isExpanding= */ false, /* suppressAnimation= */ true); } } @@ -361,11 +328,6 @@ public class BubbleBarController extends IBubblesListener.Stub { } private void applyViewChanges(BubbleBarViewUpdate update) { - if (update.initialState) { - // it is possible that we tried to notify shell too early with the bubble bar bounds, - // so force update shell about the bubble bar bounds in the initial handshake. - onBubbleBarBoundsChanged(/* forceUpdate= */ true); - } final boolean isCollapsed = (update.expandedChanged && !update.expanded) || (!update.expandedChanged && !mBubbleBarViewController.isExpanded()); final boolean isExpanding = update.expandedChanged && update.expanded; @@ -392,6 +354,9 @@ public class BubbleBarController extends IBubblesListener.Stub { BubbleBarBubble newlySelected = mBubbles.get(update.selectedBubbleKey); if (newlySelected != null) { bubbleToSelect = newlySelected; + } else { + Log.w(TAG, "trying to select bubble that doesn't exist:" + + update.selectedBubbleKey); } } } @@ -460,9 +425,6 @@ public class BubbleBarController extends IBubblesListener.Stub { for (int i = update.currentBubbles.size() - 1; i >= 0; i--) { BubbleBarBubble bubble = update.currentBubbles.get(i); if (bubble != null) { - if (bubble.getKey().equals(update.selectedBubbleKey)) { - bubbleToSelect = bubble; - } addBubbleInternally(bubble, isExpanding, suppressAnimation); if (isCollapsed && bubbleToSelect == null) { // If we're collapsed, the most recently added bubble will be selected. @@ -533,19 +495,13 @@ public class BubbleBarController extends IBubblesListener.Stub { } if (bubbleToSelect != null) { setSelectedBubbleInternal(bubbleToSelect); - } else if (update.initialState && BubbleBarOverflow.KEY.equals(update.selectedBubbleKey)) { - // this is the initial update with the overflow selected which could happen after - // unfolding with the overflow expanded - setSelectedBubbleInternal(mBubbleBarViewController.getOverflowBubble()); } if (update.shouldShowEducation) { mBubbleBarViewController.prepareToShowEducation(); } if (update.expandedChanged) { if (update.expanded != mBubbleBarViewController.isExpanded()) { - // If we start as expanded, show bar immediately without waiting for animation. - boolean animate = !update.initialState; - mBubbleBarViewController.setExpandedFromSysui(update.expanded, animate); + mBubbleBarViewController.setExpandedFromSysui(update.expanded); } else { Log.w(TAG, "expansion was changed but is the same"); } @@ -571,8 +527,8 @@ public class BubbleBarController extends IBubblesListener.Stub { /** Tells WMShell to show the currently selected bubble. */ public void showSelectedBubble() { if (getSelectedBubbleKey() != null) { - mLastSentBubbleBarTopToScreenBottom = mBarView.getTopToScreenBottom(); - mSystemUiProxy.showBubble(getSelectedBubbleKey(), mLastSentBubbleBarTopToScreenBottom); + mLastSentBubbleBarTop = mBarView.getRestingTopPositionOnScreen(); + mSystemUiProxy.showBubble(getSelectedBubbleKey(), mLastSentBubbleBarTop); } else { Log.w(TAG, "Trying to show the selected bubble but it's null"); } @@ -636,9 +592,23 @@ public class BubbleBarController extends IBubblesListener.Stub { } @Override - public void showBubbleBarPillowAt(@Nullable BubbleBarLocation location) { + public void onDragItemOverBubbleBarDragZone(@NonNull BubbleBarLocation bubbleBarLocation) { MAIN_EXECUTOR.execute(() -> { - //TODO(b/411505605) add logic to show pillow and update taskbar + mBubbleBarViewController.onDragItemOverBubbleBarDragZone(bubbleBarLocation); + if (mBubbleBarViewController.isLocationUpdatedForDropTarget()) { + mBubbleBarLocationListener.onBubbleBarLocationAnimated(bubbleBarLocation); + } + }); + } + + @Override + public void onItemDraggedOutsideBubbleBarDropZone() { + MAIN_EXECUTOR.execute(() -> { + if (mBubbleBarViewController.isLocationUpdatedForDropTarget()) { + BubbleBarLocation original = mBubbleBarViewController.getBubbleBarLocation(); + mBubbleBarLocationListener.onBubbleBarLocationAnimated(original); + } + mBubbleBarViewController.onItemDraggedOutsideBubbleBarDropZone(); }); } @@ -652,14 +622,10 @@ public class BubbleBarController extends IBubblesListener.Stub { // private void onBubbleBarBoundsChanged() { - onBubbleBarBoundsChanged(/* forceUpdate= */ false); - } - - private void onBubbleBarBoundsChanged(boolean forceUpdate) { - int bubbleBarTopToScreenBottom = mBarView.getTopToScreenBottom(); - if (bubbleBarTopToScreenBottom != mLastSentBubbleBarTopToScreenBottom || forceUpdate) { - mLastSentBubbleBarTopToScreenBottom = bubbleBarTopToScreenBottom; - mSystemUiProxy.updateBubbleBarTopToScreenBottom(bubbleBarTopToScreenBottom); + int newTop = mBarView.getRestingTopPositionOnScreen(); + if (newTop != mLastSentBubbleBarTop) { + mLastSentBubbleBarTop = newTop; + mSystemUiProxy.updateBubbleBarTopOnScreen(newTop); } } diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarLocationDropTarget.kt b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarLocationDropTarget.kt index 5f80fd56fd..24e7d99187 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarLocationDropTarget.kt +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarLocationDropTarget.kt @@ -21,57 +21,72 @@ import android.view.View import com.android.launcher3.DropTarget import com.android.launcher3.dragndrop.DragOptions import com.android.launcher3.model.data.ItemInfo -import com.android.wm.shell.shared.bubbles.DragZoneFactory -import com.android.wm.shell.shared.bubbles.DropTargetManager +import com.android.wm.shell.shared.bubbles.BubbleBarLocation /** * Implementation of the {@link DropTarget} that handles drag and drop events over the bubble bar * locations. */ class BubbleBarLocationDropTarget( - private val bubbleBarDropTargetController: BubbleBarDropTargetController, - dragZoneFactory: DragZoneFactory, - private val dropTargetManager: DropTargetManager, - private val isLeftDropTarget: Boolean, + private val bubbleBarLocation: BubbleBarLocation, + private val bubbleBarDragListener: BubbleBarDragListener, ) : DropTarget { - interface BubbleBarDropTargetController { + /** Controller that takes care of the bubble bar drag events inside launcher process. */ + interface BubbleBarDragListener { - /** Return whether the item info can be dropped on the bubble bar drop target. */ - fun acceptDrop(itemInfo: ItemInfo): Boolean + /** Called when the drag event is over the bubble bar drop zone. */ + fun onLauncherItemDraggedOverBubbleBarDragZone(location: BubbleBarLocation) - /** Called after dragged item info drop on the bubble bar drop target. */ - fun onDrop(itemInfo: ItemInfo, isLeftDropTarget: Boolean) + /** Called when the drag event leaves the bubble bar drop zone. */ + fun onLauncherItemDraggedOutsideBubbleBarDropZone() + + /** Called when the drop event happens over the bubble bar drop zone. */ + fun onLauncherItemDroppedOverBubbleBarDragZone( + location: BubbleBarLocation, + itemInfo: ItemInfo, + ) + + /** Gets the hit [rect][android.graphics.Rect] of the bubble bar location. */ + fun getBubbleBarLocationHitRect(bubbleBarLocation: BubbleBarLocation, outRect: Rect) + + /** Provides the view that will accept the drop. */ + fun getDropView(): View } - private val dropRect = dragZoneFactory.getBubbleBarDropRect(isLeftDropTarget) + private var isShowingDropTarget = false override fun isDropEnabled(): Boolean = true override fun onDrop(dragObject: DropTarget.DragObject, options: DragOptions) { - bubbleBarDropTargetController.onDrop(dragObject.dragInfo, isLeftDropTarget) + val itemInfo = dragObject.dragInfo ?: return + bubbleBarDragListener.onLauncherItemDroppedOverBubbleBarDragZone( + bubbleBarLocation, + itemInfo, + ) } - override fun onDragEnter(dragObject: DropTarget.DragObject) { - dropTargetManager.onDragUpdated(dragObject.x, dragObject.y) - } + override fun onDragEnter(dragObject: DropTarget.DragObject) {} override fun onDragOver(dragObject: DropTarget.DragObject) { - dropTargetManager.onDragUpdated(dragObject.x, dragObject.y) + if (isShowingDropTarget) return + isShowingDropTarget = true + bubbleBarDragListener.onLauncherItemDraggedOverBubbleBarDragZone(bubbleBarLocation) } override fun onDragExit(dragObject: DropTarget.DragObject) { - dropTargetManager.onDragUpdated(dragObject.x, dragObject.y) + if (!isShowingDropTarget) return + isShowingDropTarget = false + bubbleBarDragListener.onLauncherItemDraggedOutsideBubbleBarDropZone() } - override fun acceptDrop(dragObject: DropTarget.DragObject): Boolean = - bubbleBarDropTargetController.acceptDrop(dragObject.dragInfo) + override fun acceptDrop(dragObject: DropTarget.DragObject): Boolean = true override fun prepareAccessibilityDrop() {} override fun getHitRectRelativeToDragLayer(outRect: Rect) { - outRect.set(dropRect) + bubbleBarDragListener.getBubbleBarLocationHitRect(bubbleBarLocation, outRect) } - override fun getDropView(): View? = null + override fun getDropView(): View = bubbleBarDragListener.getDropView() } diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarSwipeController.kt b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarSwipeController.kt index cdf90dd7c2..4b8924cde6 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarSwipeController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarSwipeController.kt @@ -210,8 +210,7 @@ class BubbleBarSwipeController { resources, taskbarActivityContext.deviceProfile, ) - maxOverscroll = - taskbarActivityContext.deviceProfile.deviceProperties.heightPx - unstashThreshold + maxOverscroll = taskbarActivityContext.deviceProfile.heightPx - unstashThreshold } } } diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarView.java b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarView.java index adfe59a93f..6380c2371b 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarView.java +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarView.java @@ -44,6 +44,7 @@ import com.android.launcher3.R; import com.android.launcher3.anim.AnimatorListeners; import com.android.launcher3.taskbar.BarsLocationAnimatorHelper; import com.android.launcher3.taskbar.bubbles.animation.BubbleAnimator; +import com.android.launcher3.util.DisplayController; import com.android.wm.shell.shared.bubbles.BubbleBarLocation; import java.io.PrintWriter; @@ -145,8 +146,7 @@ public class BubbleBarView extends FrameLayout { // An animator that represents the expansion state of the bubble bar, where 0 corresponds to the // collapsed state and 1 to the fully expanded state. - @Nullable - private ValueAnimator mWidthAnimator; + private ValueAnimator mWidthAnimator = createExpansionAnimator(/* expanding = */ false); @Nullable private ValueAnimator mDismissAnimator = null; @@ -652,15 +652,13 @@ public class BubbleBarView extends FrameLayout { } } - /** Get the distance between the bubble bar top coordinate and the bottom of the screen */ - public int getTopToScreenBottom() { - // the bottom of the bubble bar is aligned with the bottom of the screen. the distance - // between the top of the bubble bar and the bottom of the screen is the height of the - // bubble bar minus the y translation. since the bubble bar is always above the bottom of - // the screen, the translation is negative and the overall result is a positive value that - // represents the distance + /** + * Get bubble bar top coordinate on screen when bar is resting + */ + public int getRestingTopPositionOnScreen() { + int displayHeight = DisplayController.INSTANCE.get(getContext()).getInfo().currentSize.y; int bubbleBarHeight = getBubbleBarBounds().height(); - return bubbleBarHeight - (int) mController.getBubbleBarTranslationY(); + return displayHeight - bubbleBarHeight + (int) mController.getBubbleBarTranslationY(); } /** Returns the bounds with translation that may have been applied. */ @@ -717,8 +715,8 @@ public class BubbleBarView extends FrameLayout { } /** Add a new bubble to the bubble bar without updating the selected bubble. */ - public void addBubble(BubbleView bubble, boolean suppressAnimation) { - addBubble(bubble, /* bubbleToSelect = */ null, suppressAnimation); + public void addBubble(BubbleView bubble) { + addBubble(bubble, /* bubbleToSelect = */ null); } /** @@ -727,13 +725,12 @@ public class BubbleBarView extends FrameLayout { * @param bubble bubble to add * @param bubbleToSelect if {@code null}, then selected bubble does not change */ - public void addBubble(BubbleView bubble, @Nullable BubbleView bubbleToSelect, - boolean suppressAnimation) { + public void addBubble(BubbleView bubble, @Nullable BubbleView bubbleToSelect) { FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams((int) mIconSize, (int) mIconSize, Gravity.LEFT); final int index = bubble.isOverflow() ? getChildCount() : 0; - if (isExpanded() && !suppressAnimation) { + if (isExpanded()) { // if we're expanded scale the new bubble in bubble.setScaleX(0f); bubble.setScaleY(0f); @@ -1011,12 +1008,7 @@ public class BubbleBarView extends FrameLayout { * on the expanded state. */ private void updateBubblesLayoutProperties(BubbleBarLocation bubbleBarLocation) { - final float widthState; - if (mWidthAnimator == null) { - widthState = mIsBarExpanded ? 1f : 0f; - } else { - widthState = (float) mWidthAnimator.getAnimatedValue(); - } + final float widthState = (float) mWidthAnimator.getAnimatedValue(); final float currentWidth = getWidth(); final float expandedWidth = expandedWidth(); final float collapsedWidth = collapsedWidth(); @@ -1053,7 +1045,7 @@ public class BubbleBarView extends FrameLayout { bv.setZ(fullElevationForChild * elevationState); // only update the dot and badge scale if we're expanding or collapsing - if (mWidthAnimator != null && mWidthAnimator.isRunning()) { + if (mWidthAnimator.isRunning()) { // The dot for the selected bubble scales in the opposite direction of the expansion // animation. bv.showDotIfNeeded(bv == mSelectedBubbleView ? 1 - widthState : widthState); @@ -1169,7 +1161,7 @@ public class BubbleBarView extends FrameLayout { * Reorders the views to match the provided list. */ public void reorder(List<BubbleView> viewOrder) { - if (isExpanded() || (mWidthAnimator != null && mWidthAnimator.isRunning())) { + if (isExpanded() || mWidthAnimator.isRunning()) { mReorderRunnable = () -> doReorder(viewOrder); } else { doReorder(viewOrder); @@ -1200,7 +1192,7 @@ public class BubbleBarView extends FrameLayout { mUpdateSelectedBubbleAfterCollapse = updateSelectedBubbleAfterCollapse; } - public void setController(Controller controller) { + void setController(Controller controller) { mController = controller; } @@ -1318,38 +1310,20 @@ public class BubbleBarView extends FrameLayout { } /** - * Update bubble bar expanded state. + * Sets whether the bubble bar is expanded or collapsed. */ public void setExpanded(boolean isBarExpanded) { - setExpandedInternal(isBarExpanded, false); - } - - /** - * Update bubble bar expanded state with animation. - * <p> - * Also triggers a talkback announcement for accessibility. - */ - public void animateExpanded(boolean isBarExpanded) { - setExpandedInternal(isBarExpanded, true); - } - - private void setExpandedInternal(boolean isBarExpanded, boolean animate) { - if (mIsBarExpanded == isBarExpanded) return; - mIsBarExpanded = isBarExpanded; - updateArrowForSelected(/* shouldAnimate= */ false); - setOrUnsetClickListener(); - if (animate) { + if (mIsBarExpanded != isBarExpanded) { + mIsBarExpanded = isBarExpanded; + updateArrowForSelected(/* shouldAnimate= */ false); + setOrUnsetClickListener(); mWidthAnimator = createExpansionAnimator(isBarExpanded); mWidthAnimator.start(); + updateBubbleAccessibilityStates(); announceExpandedStateChange(); - } else { - onExpandedChanged(); } - updateBubbleAccessibilityStates(); - mController.onBubbleBarExpandedStateChanged(mIsBarExpanded); } - /** * Returns whether the bubble bar is expanded. */ @@ -1361,7 +1335,7 @@ public class BubbleBarView extends FrameLayout { * Returns whether the bubble bar is expanding. */ public boolean isExpanding() { - return mWidthAnimator != null && mWidthAnimator.isRunning() && mIsBarExpanded; + return mWidthAnimator.isRunning() && mIsBarExpanded; } /** @@ -1610,7 +1584,26 @@ public class BubbleBarView extends FrameLayout { animator.setInterpolator(Interpolators.EMPHASIZED); addAnimationCallBacks(animator, /* onStart= */ () -> mBubbleBarBackground.showArrow(true), - /* onEnd= */ this::onExpandedChanged, + /* onEnd= */ () -> { + mBubbleBarBackground.showArrow(mIsBarExpanded); + if (!mIsBarExpanded && mReorderRunnable != null) { + mReorderRunnable.run(); + mReorderRunnable = null; + } + // If the bar was just collapsed and the overflow was the last bubble that was + // selected, set the first bubble as selected. + if (!mIsBarExpanded && mUpdateSelectedBubbleAfterCollapse != null + && mSelectedBubbleView != null + && mSelectedBubbleView.getBubble() instanceof BubbleBarOverflow) { + BubbleView firstBubble = (BubbleView) getChildAt(0); + mUpdateSelectedBubbleAfterCollapse.accept(firstBubble.getBubble().getKey()); + } + // If the bar was just expanded, remove the dot from the selected bubble. + if (mIsBarExpanded && mSelectedBubbleView != null) { + mSelectedBubbleView.markSeen(); + } + updateLayoutParams(); + }, /* onUpdate= */ anim -> { updateBubblesLayoutProperties(mBubbleBarLocation); invalidate(); @@ -1618,27 +1611,6 @@ public class BubbleBarView extends FrameLayout { return animator; } - private void onExpandedChanged() { - mBubbleBarBackground.showArrow(mIsBarExpanded); - if (!mIsBarExpanded && mReorderRunnable != null) { - mReorderRunnable.run(); - mReorderRunnable = null; - } - // If the bar was just collapsed and the overflow was the last bubble that was - // selected, set the first bubble as selected. - if (!mIsBarExpanded && mUpdateSelectedBubbleAfterCollapse != null - && mSelectedBubbleView != null - && mSelectedBubbleView.getBubble() instanceof BubbleBarOverflow) { - BubbleView firstBubble = (BubbleView) getChildAt(0); - mUpdateSelectedBubbleAfterCollapse.accept(firstBubble.getBubble().getKey()); - } - // If the bar was just expanded, remove the dot from the selected bubble. - if (mIsBarExpanded && mSelectedBubbleView != null) { - mSelectedBubbleView.markSeen(); - } - updateLayoutParams(); - } - /** * Returns the distance between the top left corner of the bubble bar to the center of the dot * of the selected bubble. @@ -1672,7 +1644,7 @@ public class BubbleBarView extends FrameLayout { } /** Interface for BubbleBarView to communicate with its controller. */ - public interface Controller { + interface Controller { /** Returns the translation Y that the bubble bar should have. */ float getBubbleBarTranslationY(); @@ -1692,8 +1664,5 @@ public class BubbleBarView extends FrameLayout { /** Notifies the controller that bubble bar is being dragged */ void setIsDragging(boolean dragging); - - /** Notifies the controller that bubble bar expanded state changed */ - void onBubbleBarExpandedStateChanged(boolean expanded); } } diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarViewController.java b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarViewController.java index 648ad9f2a2..2ed72d7824 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarViewController.java +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleBarViewController.java @@ -43,25 +43,33 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.app.animation.Interpolators; +import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.DeviceProfile; + import com.android.launcher3.R; import com.android.launcher3.anim.AnimatedFloat; import com.android.launcher3.anim.RoundedRectRevealOutlineProvider; +import com.android.launcher3.dragndrop.DragController; +import com.android.launcher3.model.data.ItemInfo; +import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.taskbar.TaskbarActivityContext; import com.android.launcher3.taskbar.TaskbarControllers; import com.android.launcher3.taskbar.TaskbarInsetsController; import com.android.launcher3.taskbar.TaskbarSharedState; import com.android.launcher3.taskbar.TaskbarStashController; +import com.android.launcher3.taskbar.bubbles.BubbleBarLocationDropTarget.BubbleBarDragListener; import com.android.launcher3.taskbar.bubbles.animation.BubbleBarViewAnimator; import com.android.launcher3.taskbar.bubbles.flyout.BubbleBarFlyoutController; import com.android.launcher3.taskbar.bubbles.flyout.BubbleBarFlyoutPositioner; import com.android.launcher3.taskbar.bubbles.flyout.FlyoutCallbacks; import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController; +import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.MultiPropertyFactory; import com.android.launcher3.util.MultiValueAlpha; import com.android.quickstep.SystemUiProxy; import com.android.wm.shell.Flags; import com.android.wm.shell.shared.bubbles.BubbleBarLocation; +import com.android.wm.shell.shared.bubbles.DeviceConfig; import java.io.PrintWriter; import java.util.List; @@ -120,6 +128,60 @@ public class BubbleBarViewController { updateTranslationY(); setBubbleBarScaleAndPadding(pinningProgress); }); + private final BubbleBarDragListener mDragListener = new BubbleBarDragListener() { + + @Override + public void getBubbleBarLocationHitRect(@NonNull BubbleBarLocation bubbleBarLocation, + Rect outRect) { + Point screenSize = DisplayController.INSTANCE.get(mActivity).getInfo().currentSize; + outRect.top = screenSize.y - mBubbleBarDropTargetSize; + outRect.bottom = screenSize.y; + if (bubbleBarLocation.isOnLeft(mBarView.isLayoutRtl())) { + outRect.left = 0; + outRect.right = mBubbleBarDropTargetSize; + } else { + outRect.left = screenSize.x - mBubbleBarDropTargetSize; + outRect.right = screenSize.x; + } + } + + @Override + public void onLauncherItemDroppedOverBubbleBarDragZone(@NonNull BubbleBarLocation location, + @NonNull ItemInfo itemInfo) { + AbstractFloatingView.closeAllOpenViews(mActivity); + if (itemInfo instanceof WorkspaceItemInfo) { + ShortcutInfo shortcutInfo = ((WorkspaceItemInfo) itemInfo).getDeepShortcutInfo(); + if (shortcutInfo != null) { + mSystemUiProxy.showShortcutBubble(shortcutInfo, location); + return; + } + } + Intent itemIntent = itemInfo.getIntent(); + if (itemIntent != null && itemIntent.getComponent() != null) { + itemIntent.setPackage(itemIntent.getComponent().getPackageName()); + mSystemUiProxy.showAppBubble(itemIntent, itemInfo.user, location); + } + } + + @Override + public void onLauncherItemDraggedOutsideBubbleBarDropZone() { + onItemDraggedOutsideBubbleBarDropZone(); + mSystemUiProxy.showBubbleDropTarget(/* show = */ false); + } + + @Override + public void onLauncherItemDraggedOverBubbleBarDragZone( + @NonNull BubbleBarLocation location) { + onDragItemOverBubbleBarDragZone(location); + mSystemUiProxy.showBubbleDropTarget(/* show = */ true, location); + } + + @NonNull + @Override + public View getDropView() { + return mBarView; + } + }; // Modified when swipe up is happening on the bubble bar or task bar. private float mBubbleBarSwipeUpTranslationY; @@ -145,8 +207,11 @@ public class BubbleBarViewController { private BubbleBarFlyoutController mBubbleBarFlyoutController; private BubbleBarPinController mBubbleBarPinController; private TaskbarSharedState mTaskbarSharedState; + private final BubbleBarLocationDropTarget mBubbleBarLeftDropTarget; + private final BubbleBarLocationDropTarget mBubbleBarRightDropTarget; private final TimeSource mTimeSource = System::currentTimeMillis; private final int mTaskbarTranslationDelta; + private final int mBubbleBarDropTargetSize; @Nullable private BubbleBarBoundsChangeListener mBoundsChangeListener; @@ -164,6 +229,15 @@ public class BubbleBarViewController { R.dimen.bubblebar_transient_taskbar_min_distance); mDragElevation = res.getDimensionPixelSize(R.dimen.dragged_bubble_elevation); mTaskbarTranslationDelta = getBubbleBarTranslationDeltaForTaskbar(activity); + if (DeviceConfig.isSmallTablet(mActivity)) { + mBubbleBarDropTargetSize = res.getDimensionPixelSize(com.android.wm.shell.R.dimen.drag_zone_bubble_fold); + } else { + mBubbleBarDropTargetSize = res.getDimensionPixelSize(com.android.wm.shell.R.dimen.drag_zone_bubble_tablet); + } + mBubbleBarLeftDropTarget = new BubbleBarLocationDropTarget(BubbleBarLocation.LEFT, + mDragListener); + mBubbleBarRightDropTarget = new BubbleBarLocationDropTarget(BubbleBarLocation.RIGHT, + mDragListener); } /** Initializes controller. */ @@ -196,7 +270,7 @@ public class BubbleBarViewController { if (!mBubbleStashController.isTransientTaskBar()) { // TODO(b/380274085) for transient taskbar mode, the click is also handled by the input // consumer. This check can be removed once b/380274085 is fixed. - mBarView.setOnClickListener(v -> animateExpanded(!mBarView.isExpanded())); + mBarView.setOnClickListener(v -> setExpanded(!mBarView.isExpanded())); } mBarView.addOnLayoutChangeListener( (v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> { @@ -212,7 +286,7 @@ public class BubbleBarViewController { mBarView.setController(new BubbleBarView.Controller() { @Override public float getBubbleBarTranslationY() { - return mBubbleStashController.getTargetTranslationYForState(); + return mBubbleStashController.getBubbleBarTranslationY(); } @Override @@ -224,7 +298,7 @@ public class BubbleBarViewController { @Override public void expandBubbleBar() { - BubbleBarViewController.this.animateExpanded( + BubbleBarViewController.this.setExpanded( /* isExpanded= */ true, /* maybeShowEdu*/ true); } @@ -243,14 +317,6 @@ public class BubbleBarViewController { public void setIsDragging(boolean dragging) { mBubbleBarContainer.setElevation(dragging ? mDragElevation : 0); } - - @Override - public void onBubbleBarExpandedStateChanged(boolean expanded) { - if (expanded && !mTaskbarStashController.isStashed()) { - mTaskbarStashController.updateAndAnimateTransientTaskbar(true /* stash */, - false /* shouldBubblesFollow */); - } - } }); mBubbleViewController = new BubbleView.Controller() { @@ -280,6 +346,18 @@ public class BubbleBarViewController { }; } + /** Adds bubble bar locations drop zones to the drag controller. */ + public void addBubbleBarDropTargets(DragController<?> dragController) { + dragController.addDropTarget(mBubbleBarLeftDropTarget); + dragController.addDropTarget(mBubbleBarRightDropTarget); + } + + /** Removes bubble bar locations drop zones to the drag controller. */ + public void removeBubbleBarDropTargets(DragController<?> dragController) { + dragController.removeDropTarget(mBubbleBarLeftDropTarget); + dragController.removeDropTarget(mBubbleBarRightDropTarget); + } + /** Returns animated float property responsible for pinning transition animation. */ public AnimatedFloat getBubbleBarPinning() { return mBubbleBarPinning; @@ -346,7 +424,7 @@ public class BubbleBarViewController { @Override public void flyoutClicked() { interruptAnimationForTouch(); - animateExpanded(/* isExpanded= */ true, /* maybeShowEdu*/ true); + setExpanded(/* isExpanded= */ true, /* maybeShowEdu*/ true); } }; } @@ -360,11 +438,6 @@ public class BubbleBarViewController { }; } - /** Returns the overflow bubble. */ - public BubbleBarOverflow getOverflowBubble() { - return mOverflowBubble; - } - private void onBubbleClicked(BubbleView bubbleView) { if (mBubbleBarPinning.isAnimating()) return; bubbleView.markSeen(); @@ -389,7 +462,7 @@ public class BubbleBarViewController { } private void collapseBubbleBar() { - animateExpanded(false); + setExpanded(false); mBubbleStashController.stashBubbleBar(); } @@ -564,12 +637,6 @@ public class BubbleBarViewController { return mBarView.isShowingDropTarget(); } - /** Tells bubble bar view if it should show the drop target. */ - public void setShowingDropTarget(boolean showingDropTarget) { - mBarView.showDropTarget(showingDropTarget); - } - - //TODO(b/411505605) remove unused IPC calls and code /** * Notifies the controller that a drag event is over the Bubble Bar drop zone. The controller * will display the appropriate drop target and enter drop target mode. The controller will also @@ -665,8 +732,7 @@ public class BubbleBarViewController { public boolean isEventOverBubbleBar(MotionEvent event) { if (!isBubbleBarVisible()) return false; final Rect bounds = getBubbleBarBounds(); - final int bubbleBarTopOnScreen = - mActivity.getScreenSize().y - mBarView.getTopToScreenBottom(); + final int bubbleBarTopOnScreen = mBarView.getRestingTopPositionOnScreen(); final float x = event.getX(); return event.getRawY() >= bubbleBarTopOnScreen && x >= bounds.left && x <= bounds.right; } @@ -741,7 +807,7 @@ public class BubbleBarViewController { if (hidden) { mBarView.dismiss(() -> { updateVisibilityForStateChange(); - mBarView.animateExpanded(false); + mBarView.setExpanded(false); adjustTaskbarAndHotseatToBubbleBarState(/* isBubbleBarExpanded= */ false); mActivity.bubbleBarVisibilityChanged(/* isVisible= */ false); }); @@ -864,7 +930,7 @@ public class BubbleBarViewController { float mediumIconSize = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, APP_ICON_MEDIUM_DP, dm); float smallMediumThreshold = (smallIconSize + mediumIconSize) / 2f; - int taskbarIconSize = deviceProfile.getTaskbarProfile().getIconSize(); + int taskbarIconSize = deviceProfile.taskbarIconSize; return taskbarIconSize <= smallMediumThreshold ? res.getDimensionPixelSize(R.dimen.bubblebar_icon_size_small) : res.getDimensionPixelSize(R.dimen.bubblebar_icon_size); @@ -882,7 +948,7 @@ public class BubbleBarViewController { float largeIconSize = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, APP_ICON_LARGE_DP, dm); float mediumLargeThreshold = (mediumIconSize + largeIconSize) / 2f; - return deviceProfile.getTaskbarProfile().getIconSize() >= mediumLargeThreshold + return deviceProfile.taskbarIconSize >= mediumLargeThreshold ? res.getDimensionPixelSize(R.dimen.bubblebar_icon_spacing_large) : res.getDimensionPixelSize(R.dimen.bubblebar_icon_spacing); } @@ -959,11 +1025,9 @@ public class BubbleBarViewController { int persistentSpacingSize = res .getDimensionPixelSize(R.dimen.bubblebar_icon_spacing_persistent_taskbar); int persistentBubbleBarSize = persistentBubbleSize + persistentSpacingSize * 2; - int persistentTaskbarHeight = - activity.getPersistentTaskbarDeviceProfile().getTaskbarProfile().getHeight(); + int persistentTaskbarHeight = activity.getPersistentTaskbarDeviceProfile().taskbarHeight; int persistentBubbleBarY = (persistentTaskbarHeight - persistentBubbleBarSize) / 2; - int transientBubbleBarY = - activity.getTransientTaskbarDeviceProfile().getTaskbarProfile().getBottomMargin(); + int transientBubbleBarY = activity.getTransientTaskbarDeviceProfile().taskbarBottomMargin; return transientBubbleBarY - persistentBubbleBarY; } @@ -1037,7 +1101,7 @@ public class BubbleBarViewController { if (mOverflowAdded == showOverflow) return; mOverflowAdded = showOverflow; if (mOverflowAdded) { - mBarView.addBubble(mOverflowBubble.getView(), /* suppressAnimation= */ true); + mBarView.addBubble(mOverflowBubble.getView()); mOverflowBubble.getView().setOnClickListener(mBubbleClickListener); mOverflowBubble.getView().setController(mBubbleViewController); } else { @@ -1084,7 +1148,10 @@ public class BubbleBarViewController { if (b != null) { BubbleView bubbleToSelectView = bubbleToSelect == null ? null : bubbleToSelect.getView(); - addBubbleView(b.getView(), suppressAnimation, bubbleToSelectView); + mBarView.addBubble(b.getView(), bubbleToSelectView); + b.getView().setOnClickListener(mBubbleClickListener); + mBubbleDragController.setupBubbleView(b.getView()); + b.getView().setController(mBubbleViewController); if (suppressAnimation || !(b instanceof BubbleBarBubble bubble)) { // the bubble bar and handle are initialized as part of the first bubble animation. @@ -1092,8 +1159,7 @@ public class BubbleBarViewController { // ensure they've been initialized. if (mTaskbarStashController.isInApp() && mBubbleStashController.isTransientTaskBar() - && mTaskbarStashController.isStashed() - && !isExpanded()) { + && mTaskbarStashController.isStashed()) { mBubbleStashController.stashBubbleBarImmediate(); } else { mBubbleStashController.showBubbleBarImmediate(); @@ -1106,21 +1172,6 @@ public class BubbleBarViewController { } } - private void addBubbleView(BubbleView bubbleView, boolean suppressAnimation, - BubbleView selectedBubbleView) { - mBarView.addBubble(bubbleView, selectedBubbleView, suppressAnimation); - bubbleView.setOnClickListener(mBubbleClickListener); - mBubbleDragController.setupBubbleView(bubbleView); - bubbleView.setController(mBubbleViewController); - } - - /** - * Restore a previous bubble that is stored in {@link TaskbarSharedState}. - */ - public void restoreBubble(BubbleBarItem b) { - addBubbleView(b.getView(), /* suppressAnimation= */ true, /* bubbleToSelectView= */ null); - } - /** Animates the bubble bar to notify the user about a bubble change. */ public void animateBubbleNotification(BubbleBarBubble bubble, boolean isExpanding, boolean isUpdate) { @@ -1174,32 +1225,34 @@ public class BubbleBarViewController { mBarView.setSelectedBubble(newlySelected.getView()); } - /** @see #animateExpanded(boolean, boolean) */ - public void animateExpanded(boolean isExpanded) { - animateExpanded(isExpanded, /* maybeShowEdu= */ false); + /** @see #setExpanded(boolean, boolean) */ + public void setExpanded(boolean isExpanded) { + setExpanded(isExpanded, /* maybeShowEdu= */ false); } /** - * Sets whether the bubble bar should be animated to expanded state (not unstashed, but have - * the contents within it expanded). This method notifies SystemUI that the bubble bar is - * expanded and showing a selected bubble. This method should ONLY be called from UI events - * originating from Launcher. + * Sets whether the bubble bar should be expanded (not unstashed, but have the contents + * within it expanded). This method notifies SystemUI that the bubble bar is expanded and + * showing a selected bubble. This method should ONLY be called from UI events originating + * from Launcher. * * @param isExpanded whether the bar should be expanded * @param maybeShowEdu whether we should show the edu view before expanding */ - public void animateExpanded(boolean isExpanded, boolean maybeShowEdu) { + public void setExpanded(boolean isExpanded, boolean maybeShowEdu) { // if we're trying to expand try showing the edu view instead if (maybeShowEdu && isExpanded && !mBarView.isExpanded() && maybeShowEduView()) { return; } if (!mBubbleBarPinning.isAnimating() && isExpanded != mBarView.isExpanded()) { - mBarView.animateExpanded(isExpanded); + mBarView.setExpanded(isExpanded); adjustTaskbarAndHotseatToBubbleBarState(isExpanded); if (!isExpanded) { mSystemUiProxy.collapseBubbles(); } else { mBubbleBarController.showSelectedBubble(); + mTaskbarStashController.updateAndAnimateTransientTaskbar(true /* stash */, + false /* shouldBubblesFollow */); } } } @@ -1238,25 +1291,15 @@ public class BubbleBarViewController { * Sets whether the bubble bar should be expanded. This method is used in response to UI events * from SystemUI. */ - public void setExpandedFromSysui(boolean isExpanded, boolean animate) { + public void setExpandedFromSysui(boolean isExpanded) { if (isNewBubbleAnimationRunningOrPending() && isExpanded) { mBubbleBarViewAnimator.expandedWhileAnimating(); return; } - if (animate) { - if (!isExpanded) { - mBubbleStashController.stashBubbleBar(); - } else { - mBubbleStashController.showBubbleBar(true /* expand the bubbles */); - } + if (!isExpanded) { + mBubbleStashController.stashBubbleBar(); } else { - if (!isExpanded) { - mBubbleStashController.stashBubbleBarImmediate(); - } else { - mBubbleStashController.showBubbleBarImmediate(); - mBarView.setExpanded(true); - adjustTaskbarAndHotseatToBubbleBarState(true); - } + mBubbleStashController.showBubbleBar(true /* expand the bubbles */); } } @@ -1286,7 +1329,7 @@ public class BubbleBarViewController { * Notifies SystemUI to expand the selected bubble when the bubble is released. */ public void onBubbleDragRelease(BubbleBarLocation location) { - mSystemUiProxy.stopBubbleDrag(location, mBarView.getTopToScreenBottom()); + mSystemUiProxy.stopBubbleDrag(location, mBarView.getRestingTopPositionOnScreen()); } /** Handle given bubble being dismissed */ diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleControllers.java b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleControllers.java index 083829bd57..c2118404e4 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleControllers.java +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleControllers.java @@ -27,8 +27,6 @@ import com.android.launcher3.taskbar.bubbles.stashing.BubbleBarLocationOnDemandL import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController; import com.android.launcher3.util.MultiPropertyFactory; import com.android.launcher3.util.RunnableList; -import com.android.quickstep.SystemUiProxy; -import com.android.wm.shell.shared.bubbles.DragZoneFactory; import java.io.PrintWriter; import java.util.Optional; @@ -46,7 +44,6 @@ public class BubbleControllers { public final BubblePinController bubblePinController; public final Optional<BubbleBarSwipeController> bubbleBarSwipeController; public final BubbleCreator bubbleCreator; - public final DragToBubbleController dragToBubbleController; private final RunnableList mPostInitRunnables = new RunnableList(); @@ -65,7 +62,6 @@ public class BubbleControllers { BubbleBarPinController bubbleBarPinController, BubblePinController bubblePinController, Optional<BubbleBarSwipeController> bubbleBarSwipeController, - DragToBubbleController dragToBubbleController, BubbleCreator bubbleCreator) { this.bubbleBarController = bubbleBarController; this.bubbleBarViewController = bubbleBarViewController; @@ -77,7 +73,6 @@ public class BubbleControllers { this.bubblePinController = bubblePinController; this.bubbleBarSwipeController = bubbleBarSwipeController; this.bubbleCreator = bubbleCreator; - this.dragToBubbleController = dragToBubbleController; } /** @@ -120,30 +115,12 @@ public class BubbleControllers { .get(ALPHA_INDEX_BUBBLE_BAR); } }); - bubbleDragController.init(/* bubbleControllers = */ this, bubbleBarLocationListeners); + bubbleDragController.init(/* bubbleControllers = */ this); bubbleDismissController.init(/* bubbleControllers = */ this); bubbleBarPinController.init(this, bubbleBarLocationListeners); bubblePinController.init(this); bubbleBarSwipeController.ifPresent(c -> c.init(this)); - dragToBubbleController.init(bubbleBarViewController, - new DragZoneFactory.BubbleBarPropertiesProvider() { - @Override - public int getHeight() { - return (int) bubbleBarViewController.getBubbleBarCollapsedHeight(); - } - @Override - public int getWidth() { - return (int) bubbleBarViewController.getBubbleBarCollapsedWidth(); - } - - @Override - public int getBottomPadding() { - return -(int) bubbleStashController.getBubbleBarTranslationY(); - } - }, - bubbleBarLocationListeners, - SystemUiProxy.INSTANCE.get(taskbarControllers.taskbarActivityContext)); mPostInitRunnables.executeAllAndDestroy(); } diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleDismissViewExt.kt b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleDismissViewExt.kt index 27b30a1f3d..fdc9fb0b40 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleDismissViewExt.kt +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleDismissViewExt.kt @@ -18,7 +18,7 @@ package com.android.launcher3.taskbar.bubbles import com.android.launcher3.R -import com.android.wm.shell.R as SharedR // WM and WMShared are "shared" or linked together. +import com.android.wm.shell.R as SharedR import com.android.wm.shell.shared.bubbles.DismissView /** @@ -39,7 +39,6 @@ fun DismissView.setup() { floatingGradientColorResId = android.R.color.system_neutral1_900, backgroundResId = SharedR.drawable.floating_dismiss_background, iconResId = SharedR.drawable.floating_dismiss_ic_close, - applyMarginOverNavBarInset = false, ) ) } diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleDragController.java b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleDragController.java index 7535d366cc..3df10c0ce0 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleDragController.java +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleDragController.java @@ -30,14 +30,12 @@ import androidx.annotation.Nullable; import androidx.dynamicanimation.animation.FloatPropertyCompat; import com.android.launcher3.taskbar.TaskbarActivityContext; -import com.android.launcher3.taskbar.bubbles.BubbleBarController.BubbleBarLocationListener; import com.android.wm.shell.shared.bubbles.BaseBubblePinController.LocationChangeListener; import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; import com.android.wm.shell.shared.bubbles.BubbleBarLocation; import com.android.wm.shell.shared.bubbles.DeviceConfig; import com.android.wm.shell.shared.bubbles.DragZone; import com.android.wm.shell.shared.bubbles.DragZoneFactory; -import com.android.wm.shell.shared.bubbles.DragZoneFactory.BubbleBarPropertiesProvider; import com.android.wm.shell.shared.bubbles.DragZoneFactory.DesktopWindowModeChecker; import com.android.wm.shell.shared.bubbles.DragZoneFactory.SplitScreenModeChecker; import com.android.wm.shell.shared.bubbles.DraggedObject; @@ -90,7 +88,6 @@ public class BubbleDragController { private BubbleDismissController mBubbleDismissController; private BubbleBarPinController mBubbleBarPinController; private BubblePinController mBubblePinController; - private BubbleBarLocationListener mBubbleBarLocationListener; private final DropTargetManager mDropTargetManager; private final DragZoneFactory mDragZoneFactory; private final BubbleDragZoneChangedListener mBubbleDragZoneChangedListener; @@ -116,25 +113,8 @@ public class BubbleDragController { return false; } }; - BubbleBarPropertiesProvider bubbleBarPropertiesProvider = - new BubbleBarPropertiesProvider() { - @Override - public int getHeight() { - return (int) mBubbleBarViewController.getBubbleBarCollapsedHeight(); - } - - @Override - public int getWidth() { - return (int) mBubbleBarViewController.getBubbleBarCollapsedWidth(); - } - - @Override - public int getBottomPadding() { - return (int) -mBubbleBarViewController.getBubbleBarTranslationY().value; - } - }; mDragZoneFactory = new DragZoneFactory(mActivity.getApplicationContext(), deviceConfig, - splitScreenModeChecker, desktopWindowModeChecker, bubbleBarPropertiesProvider); + splitScreenModeChecker, desktopWindowModeChecker); mBubbleDragZoneChangedListener = new BubbleDragZoneChangedListener(); mDropTargetManager = new DropTargetManager(mActivity.getApplicationContext(), dropTargetParent, mBubbleDragZoneChangedListener); @@ -145,14 +125,12 @@ public class BubbleDragController { * Should be careful to only access things that were created in constructors for now, as some * controllers may still be waiting for init(). */ - public void init(@NonNull BubbleControllers bubbleControllers, - BubbleBarLocationListener bubbleBarLocationListener) { + public void init(@NonNull BubbleControllers bubbleControllers) { mBubbleBarController = bubbleControllers.bubbleBarController; mBubbleBarViewController = bubbleControllers.bubbleBarViewController; mBubbleDismissController = bubbleControllers.bubbleDismissController; mBubbleBarPinController = bubbleControllers.bubbleBarPinController; mBubblePinController = bubbleControllers.bubblePinController; - mBubbleBarLocationListener = bubbleBarLocationListener; mBubbleDismissController.setListener( stuck -> { if (stuck) { @@ -216,7 +194,9 @@ public class BubbleDragController { protected void onDragUpdate(float x, float y, float newTx, float newTy) { bubbleView.setDragTranslationX(newTx); bubbleView.setTranslationY(newTy); - if (!BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { + if (BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { + mDropTargetManager.onDragUpdated((int) x, (int) y); + } else { mBubblePinController.onDragUpdate(x, y); } } @@ -325,7 +305,9 @@ public class BubbleDragController { protected void onDragUpdate(float x, float y, float newTx, float newTy) { bubbleBarView.setTranslationX(newTx); bubbleBarView.setTranslationY(newTy); - if (!BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { + if (BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { + mDropTargetManager.onDragUpdated((int) x, (int) y); + } else { mBubbleBarPinController.onDragUpdate(x, y); } } @@ -588,17 +570,7 @@ public class BubbleDragController { private void drag(@NonNull View view, @NonNull MotionEvent event, float dx, float dy, float x, float y) { - if (BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { - // notify drop target manager about the new drag location regardless of whether we - // are in the dismiss zone so that it can keep track of the current zone and update - // the drop target view - mDropTargetManager.onDragUpdated((int) x, (int) y); - } - if (mBubbleDismissController.handleTouchEvent(event)) { - // if we're dragging within the dismiss target, return immediately; the dragged - // object is manipulated by the dismiss target - return; - } + if (mBubbleDismissController.handleTouchEvent(event)) return; final float newTx = mViewInitialPosition.x + dx; final float newTy = mViewInitialPosition.y + dy; onDragUpdate(x, y, newTx, newTy); @@ -626,7 +598,7 @@ public class BubbleDragController { } } else { mAnimator.animateToRestingState(getRestingPosition(), getCurrentVelocity(), - onComplete); + onComplete); } } mBubbleDismissController.hideDismissView(); @@ -678,7 +650,7 @@ public class BubbleDragController { } @Override - public void onInitialDragZoneSet(@Nullable DragZone dragZone) { + public void onInitialDragZoneSet(@NonNull DragZone dragZone) { mDragZone = dragZone; if (dragZone instanceof DragZone.Bubble.Left) { mBubbleBarLocation = BubbleBarLocation.LEFT; @@ -688,31 +660,25 @@ public class BubbleDragController { } @Override - public void onDragZoneChanged(@NonNull DraggedObject draggedObject, @Nullable DragZone from, - @Nullable DragZone to) { + public void onDragZoneChanged(@NonNull DraggedObject draggedObject, @NonNull DragZone from, + @NonNull DragZone to) { mDragZone = to; if (to instanceof DragZone.Bubble.Left && mBubbleBarLocation != BubbleBarLocation.LEFT) { if (draggedObject instanceof DraggedObject.Bubble) { - // listener will be notified by BubbleBarController mBubbleBarController.animateBubbleBarLocation(BubbleBarLocation.LEFT); - } else { - // otherwise notify listener manually - mBubbleBarLocationListener.onBubbleBarLocationAnimated(BubbleBarLocation.LEFT); } mBubbleBarLocation = BubbleBarLocation.LEFT; } else if (to instanceof DragZone.Bubble.Right && mBubbleBarLocation != BubbleBarLocation.RIGHT) { if (draggedObject instanceof DraggedObject.Bubble) { mBubbleBarController.animateBubbleBarLocation(BubbleBarLocation.RIGHT); - } else { - mBubbleBarLocationListener.onBubbleBarLocationAnimated(BubbleBarLocation.RIGHT); } mBubbleBarLocation = BubbleBarLocation.RIGHT; } } @Override - public void onDragEnded(@Nullable DragZone zone) {} + public void onDragEnded(@NonNull DragZone zone) {} } } diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleStashedHandleViewController.java b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleStashedHandleViewController.java index 7e2b139f2b..ec540e0088 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleStashedHandleViewController.java +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/BubbleStashedHandleViewController.java @@ -85,6 +85,7 @@ public class BubbleStashedHandleViewController { mActivity = activity; mStashedHandleView = stashedHandleView; mStashedHandleAlpha = new MultiValueAlpha(mStashedHandleView, 1); + mStashedHandleAlpha.setUpdateVisibility(true); } /** Initialize controller. */ @@ -104,7 +105,7 @@ public class BubbleStashedHandleViewController { // Use values directly from device profile to avoid referencing other bubble controllers // during init flow. int maxTy = Math.max(deviceProfile.hotseatBarBottomSpacePx, - deviceProfile.getTaskbarProfile().getBottomMargin()); + deviceProfile.taskbarBottomMargin); // Adjust handle view size to accommodate the handle morphing into the bubble bar mStashedHandleView.getLayoutParams().height = barSize + maxTy; @@ -348,7 +349,7 @@ public class BubbleStashedHandleViewController { // the bounds of the handle only include the visible part, so we check that the Y coordinate // is anywhere within the stashed height of bubble bar (same as taskbar stashed height). - final int top = mActivity.getDeviceProfile().getDeviceProperties().getHeightPx() - mStashedBubbleBarHeight; + final int top = mActivity.getDeviceProfile().heightPx - mStashedBubbleBarHeight; final float x = ev.getRawX(); return ev.getRawY() >= top && x >= mStashedHandleBounds.left && x <= mStashedHandleBounds.right; diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/animation/BubbleBarViewAnimator.kt b/quickstep/src/com/android/launcher3/taskbar/bubbles/animation/BubbleBarViewAnimator.kt index 15fe35b3cc..622fea2928 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/animation/BubbleBarViewAnimator.kt +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/animation/BubbleBarViewAnimator.kt @@ -728,7 +728,7 @@ constructor( } private fun expandBubbleBar() { - bubbleBarView.animateExpanded(true) + bubbleBarView.isExpanded = true onExpanded.run() } diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/flyout/BubbleBarFlyoutController.kt b/quickstep/src/com/android/launcher3/taskbar/bubbles/flyout/BubbleBarFlyoutController.kt index 4a2f029fd5..fea40f9211 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/flyout/BubbleBarFlyoutController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/flyout/BubbleBarFlyoutController.kt @@ -64,7 +64,6 @@ constructor( } fun setUpAndShowFlyout(message: BubbleBarFlyoutMessage, onInit: () -> Unit, onEnd: () -> Unit) { - animator?.cancel() flyout?.let(container::removeView) val flyout = BubbleBarFlyoutView(container.context, positioner, flyoutScheduler) diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/flyout/BubbleBarFlyoutView.kt b/quickstep/src/com/android/launcher3/taskbar/bubbles/flyout/BubbleBarFlyoutView.kt index ac87b5ee00..b85403546e 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/flyout/BubbleBarFlyoutView.kt +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/flyout/BubbleBarFlyoutView.kt @@ -33,7 +33,7 @@ import android.view.ViewOutlineProvider import android.widget.ImageView import android.widget.TextView import androidx.constraintlayout.widget.ConstraintLayout -import androidx.core.animation.ArgbEvaluator +import androidx.core.animation.ArgbEvaluator // Lawnchair-TODO: Use android.animation.ArgbEvaluator ? import com.android.launcher3.R import com.android.launcher3.popup.RoundedArrowDrawable import com.android.wm.shell.shared.TypefaceUtils diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/BubbleStashController.kt b/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/BubbleStashController.kt index 56622020e8..ec272ac873 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/BubbleStashController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/BubbleStashController.kt @@ -186,14 +186,12 @@ interface BubbleStashController { fun getHandleViewAlpha(): MultiPropertyFactory<View>.MultiProperty? = null /** - * Default implementation only analyse [isBubblesShowingOnHome] and return value is equal to - * [targetTranslationYForState]. + * Returns bubble bar Y position according to [isBubblesShowingOnHome] and + * [isBubblesShowingOnOverview] values. Default implementation only analyse + * [isBubblesShowingOnHome] and return translationY to align with the hotseat vertical center. + * For Other cases align bubbles with the taskbar. */ val bubbleBarTranslationY: Float - get() = targetTranslationYForState - - /** Returns bubble bar Y target position according to [isBubblesShowingOnHome] value. */ - val targetTranslationYForState: Float get() = if (isBubblesShowingOnHome) { bubbleBarTranslationYForHotseat diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/DeviceProfileDimensionsProviderAdapter.kt b/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/DeviceProfileDimensionsProviderAdapter.kt index 2408274c9f..886b9f02c2 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/DeviceProfileDimensionsProviderAdapter.kt +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/DeviceProfileDimensionsProviderAdapter.kt @@ -27,9 +27,9 @@ import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController.Task class DeviceProfileDimensionsProviderAdapter( private val taskbarActivityContext: TaskbarActivityContext ) : TaskbarHotseatDimensionsProvider { - override fun getTaskbarBottomSpace(): Int = taskbarDp().taskbarProfile.bottomMargin + override fun getTaskbarBottomSpace(): Int = taskbarDp().taskbarBottomMargin - override fun getTaskbarHeight(): Int = taskbarDp().taskbarProfile.height + override fun getTaskbarHeight(): Int = taskbarDp().taskbarHeight private fun taskbarDp(): DeviceProfile = taskbarActivityContext.deviceProfile } diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/PersistentBubbleStashController.kt b/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/PersistentBubbleStashController.kt index 5c8746cb8b..9d8c0ed970 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/PersistentBubbleStashController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/PersistentBubbleStashController.kt @@ -60,10 +60,6 @@ class PersistentBubbleStashController( // if there are no bubbles, there's nothing to show, so just return. return } - if (transitionFromHome && inAppDisplayOverrideProgress != 0f) { - // was on -1 page and leaving it, - reset the inAppDisplayOverrideProgress - inAppDisplayOverrideProgress = 0f - } // If we're transitioning anywhere, bubble bar should be collapsed updateExpandedState(expand = false) if (transitionFromHome || field == BubbleLauncherState.HOME) { @@ -104,10 +100,6 @@ class PersistentBubbleStashController( return -bubbleBarVerticalCenterForHome + bubbleBarHeight / 2 } - /** - * Returns bubble bar Y target position according to [isBubblesShowingOnHome] value. Value could - * be adjusted to the display override progress. - */ override val bubbleBarTranslationY: Float get() = if (inAppDisplayOverrideProgress > 0f && launcherState == BubbleLauncherState.HOME) { @@ -120,7 +112,7 @@ class PersistentBubbleStashController( Interpolators.LINEAR, ) } else { - targetTranslationYForState + super.bubbleBarTranslationY } override var inAppDisplayOverrideProgress: Float = 0f @@ -246,7 +238,7 @@ class PersistentBubbleStashController( } if (bubbleBarViewController.isExpanded != expand) { val maybeShowEdu = expand && bubbleBarGesture - bubbleBarViewController.animateExpanded(expand, maybeShowEdu) + bubbleBarViewController.setExpanded(expand, maybeShowEdu) } } diff --git a/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/TransientBubbleStashController.kt b/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/TransientBubbleStashController.kt index 00e79029e2..82bb071bc3 100644 --- a/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/TransientBubbleStashController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/bubbles/stashing/TransientBubbleStashController.kt @@ -115,16 +115,7 @@ class TransientBubbleStashController( } // Only stash if we're in an app, otherwise we're in home or overview where we should // be un-stashed - val stash = field == BubbleLauncherState.IN_APP - val expand = - if (stash) { - // Always collapse when we are stashing - false - } else { - // If unstashing, keep the current state - bubbleBarViewController.isExpanded - } - updateStashedAndExpandedState(stash, expand) + updateStashedAndExpandedState(field == BubbleLauncherState.IN_APP, expand = false) } override var isSysuiLocked: Boolean = false @@ -477,7 +468,7 @@ class TransientBubbleStashController( // reset stash translation translationYDuringStash.updateValue(0f) bubbleBarBubbleTranslationY.updateValue(0f) - bubbleBarViewController.animateExpanded(false) + bubbleBarViewController.isExpanded = false } taskbarInsetsController.onTaskbarOrBubblebarWindowHeightOrInsetsChanged() } @@ -565,7 +556,6 @@ class TransientBubbleStashController( ) { if (bubbleBarViewController.isHiddenForNoBubbles) { // If there are no bubbles the bar and handle are invisible, nothing to do here. - cancelAnimation() return } val isStashed = stash && !isBubblesShowingOnHome && !isBubblesShowingOnOverview @@ -587,7 +577,7 @@ class TransientBubbleStashController( } if (bubbleBarViewController.isExpanded != expand) { val maybeShowEdu = expand && bubbleBarGesture - bubbleBarViewController.animateExpanded(expand, maybeShowEdu) + bubbleBarViewController.setExpanded(expand, maybeShowEdu) } } diff --git a/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarAllAppsButtonContainer.kt b/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarAllAppsButtonContainer.kt index 2807668107..a1df21fa04 100644 --- a/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarAllAppsButtonContainer.kt +++ b/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarAllAppsButtonContainer.kt @@ -49,15 +49,11 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 private var allAppsTouchTriggered = false private var allAppsTouchRunnable: Runnable? = null private var allAppsButtonTouchDelayMs: Long = ViewConfiguration.getLongPressTimeout().toLong() - private var isTaskbarInMinimalState = false private lateinit var taskbarViewCallbacks: TaskbarViewCallbacks override val spaceNeeded: Int get() { - return dpToPx( - activityContext.taskbarSpecsEvaluator.taskbarIconSize.size.toFloat(), - activityContext, - ) + return dpToPx(activityContext.taskbarSpecsEvaluator.taskbarIconSize.size.toFloat()) } init { @@ -74,12 +70,7 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 backgroundTintList = ColorStateList.valueOf(TRANSPARENT) setIconDrawable(drawable) if (!activityContext.isTransientTaskbar) { - setPadding( - dpToPx( - (activityContext.taskbarSpecsEvaluator.taskbarIconPadding).toFloat(), - activityContext, - ) - ) + setPadding(dpToPx(activityContext.taskbarSpecsEvaluator.taskbarIconPadding.toFloat())) } setForegroundTint(activityContext.getColor(R.color.all_apps_button_color)) } @@ -111,26 +102,29 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 return getAllAppsButtonForExpressiveTheme() } val shouldSelectTransientIcon = - isTransientTaskbar || - (enableTaskbarPinning() && - activityContext.taskbarFeatureEvaluator.supportsTransitionToTransientTaskbar) + isTransientTaskbar || (enableTaskbarPinning() && !activityContext.isThreeButtonNav) return if (shouldSelectTransientIcon) R.drawable.ic_transient_taskbar_all_apps_search_button else R.drawable.ic_taskbar_all_apps_search_button } @DrawableRes private fun getAllAppsButtonForExpressiveTheme(): Int { - return if (isTaskbarInMinimalState) { - R.drawable.ic_taskbar_minimal_state_all_apps_search_button_expressive_theme + return R.drawable.ic_taskbar_all_apps_search_button_expressive_theme + } + + @DimenRes + fun getAllAppsButtonTranslationXOffsetForExpressiveTheme(isTransientTaskbar: Boolean): Int { + return if (isTransientTaskbar) { + R.dimen.transient_taskbar_all_apps_button_translation_x_offset_for_expressive_theme } else { - R.drawable.ic_taskbar_all_apps_search_button_expressive_theme + R.dimen.taskbar_all_apps_search_button_translation_x_offset_for_expressive_theme } } @DimenRes fun getAllAppsButtonTranslationXOffset(isTransientTaskbar: Boolean): Int { if (Flags.enableGsf()) { - return R.dimen.taskbar_all_apps_search_button_translation_x_offset_for_expressive_theme + return getAllAppsButtonTranslationXOffsetForExpressiveTheme(isTransientTaskbar) } return if (isTransientTaskbar) { R.dimen.transient_taskbar_all_apps_button_translation_x_offset @@ -139,14 +133,6 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 } } - /** Taskbar minimal state is that taskbar does not host anything other than all apps button. */ - fun updateTaskbarMinimalState(isInMinimalState: Boolean) { - if (isTaskbarInMinimalState != isInMinimalState) { - isTaskbarInMinimalState = isInMinimalState - setUpIcon() - } - } - private fun onAllAppsButtonTouch(view: View, ev: MotionEvent): Boolean { when (ev.action) { MotionEvent.ACTION_DOWN -> { diff --git a/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarDividerContainer.kt b/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarDividerContainer.kt index 96dc5c8447..08a1b48acf 100644 --- a/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarDividerContainer.kt +++ b/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarDividerContainer.kt @@ -40,10 +40,7 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 override val spaceNeeded: Int get() { - return dpToPx( - activityContext.taskbarSpecsEvaluator.taskbarIconSize.size.toFloat(), - activityContext, - ) + return dpToPx(activityContext.taskbarSpecsEvaluator.taskbarIconSize.size.toFloat()) } init { @@ -56,12 +53,7 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 val drawable = getTaskbarDividerIcon() setIconDrawable(drawable) if (!activityContext.isTransientTaskbar) { - setPadding( - dpToPx( - activityContext.taskbarSpecsEvaluator.taskbarIconPadding.toFloat(), - activityContext, - ) - ) + setPadding(dpToPx(activityContext.taskbarSpecsEvaluator.taskbarIconPadding.toFloat())) } } @@ -75,8 +67,8 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 } @SuppressLint("ClickableViewAccessibility") - fun setUpCallbacks(callbacks: TaskbarViewCallbacks?) { - setOnLongClickListener(callbacks?.taskbarDividerLongClickListener) - setOnTouchListener(callbacks?.taskbarDividerRightClickListener) + fun setUpCallbacks(callbacks: TaskbarViewCallbacks) { + setOnLongClickListener(callbacks.taskbarDividerLongClickListener) + setOnTouchListener(callbacks.taskbarDividerRightClickListener) } } diff --git a/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarFeatureEvaluator.kt b/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarFeatureEvaluator.kt index 2de143e979..a14c5a47e6 100644 --- a/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarFeatureEvaluator.kt +++ b/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarFeatureEvaluator.kt @@ -38,17 +38,11 @@ private constructor(private val taskbarActivityContext: TaskbarActivityContext) get() = taskbarActivityContext.isTransientTaskbar val isLandscape: Boolean - get() = taskbarActivityContext.deviceProfile.deviceProperties.isLandscape - - val isTnMinimalState: Boolean - get() = taskbarActivityContext.isTaskbarInMinimalState + get() = taskbarActivityContext.deviceProfile.isLandscape val supportsPinningPopup: Boolean get() = !hasNavButtons - val supportsTransitionToTransientTaskbar: Boolean - get() = !hasNavButtons && !taskbarActivityContext.showDesktopTaskbarForFreeformDisplay() - fun onDestroy() { taskbarFeatureEvaluator = null } diff --git a/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarSpecsEvaluator.kt b/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarSpecsEvaluator.kt index 13c878ee6f..f1ed6c5ea0 100644 --- a/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarSpecsEvaluator.kt +++ b/quickstep/src/com/android/launcher3/taskbar/customization/TaskbarSpecsEvaluator.kt @@ -35,7 +35,7 @@ class TaskbarSpecsEvaluator( val taskbarIconPadding: Int = if ( TaskbarIconSpecs.transientOrPinnedTaskbarIconPaddingSize.size > taskbarIconSize.size && - taskbarFeatureEvaluator.supportsTransitionToTransientTaskbar + !taskbarFeatureEvaluator.hasNavButtons ) { (TaskbarIconSpecs.iconSize52dp.size - taskbarIconSize.size) / 2 } else { diff --git a/quickstep/src/com/android/launcher3/taskbar/growth/NudgeController.kt b/quickstep/src/com/android/launcher3/taskbar/growth/NudgeController.kt index 5c5990eb24..04e41bc3bd 100644 --- a/quickstep/src/com/android/launcher3/taskbar/growth/NudgeController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/growth/NudgeController.kt @@ -16,34 +16,15 @@ package com.android.launcher3.taskbar.growth import android.content.Context -import android.os.Bundle -import android.view.View -import android.view.View.GONE -import android.view.ViewGroup.LayoutParams.MATCH_PARENT -import android.view.ViewGroup.MarginLayoutParams -import android.view.accessibility.AccessibilityEvent -import android.view.accessibility.AccessibilityNodeInfo -import android.widget.Button -import android.widget.ImageView -import android.widget.TextView -import androidx.annotation.LayoutRes -import androidx.core.view.updateLayoutParams -import com.airbnb.lottie.LottieAnimationView -import com.android.launcher3.R import com.android.launcher3.Utilities import com.android.launcher3.taskbar.TaskbarActivityContext -import com.android.launcher3.taskbar.TaskbarAutohideSuspendController.FLAG_AUTOHIDE_SUSPEND_GROWTH_NUDGE_OPEN import com.android.launcher3.taskbar.TaskbarControllers import com.android.launcher3.taskbar.TaskbarControllers.LoggableTaskbarController +import com.android.launcher3.util.DisplayController import com.android.launcher3.views.ActivityContext -import com.android.quickstep.util.LottieAnimationColorUtils import java.io.PrintWriter -/** - * Controls nudge lifecycles. - * - * TODO: b/413718172 - Refactor to reduce code duplication with [TaskbarEduTooltipController]. - */ +/** Controls nudge lifecycles. */ class NudgeController(context: Context) : LoggableTaskbarController { protected val activityContext: TaskbarActivityContext = ActivityContext.lookupContext(context) @@ -55,184 +36,26 @@ class NudgeController(context: Context) : LoggableTaskbarController { !activityContext.isTinyTaskbar } - val isNudgeOpen: Boolean - get() = nudgeView?.isOpen == true - private lateinit var controllers: TaskbarControllers - private var nudgeView: NudgeView? = null - fun init(controllers: TaskbarControllers) { this.controllers = controllers } - fun maybeShow(model: NudgePayload) { - if (!isNudgeEnabled || !activityContext.isTransientTaskbar) { + fun maybeShow(payload: NudgePayload) { + if (!isNudgeEnabled || !DisplayController.isTransientTaskbar(activityContext)) { return } - - inflateNudgeContent(R.layout.growth_nudge) - nudgeView?.run { - allowTouchDismissal = false - - fun updateButton(button: Button, buttonPayload: ButtonPayload?) { - if (buttonPayload != null) { - button.apply { - text = buttonPayload.label - setOnClickListener { - ActionPerformers.performActions( - /*actions=*/ buttonPayload.actions, - /*context=*/ activityContext, - /*dismissCallback=*/ ::hide, - ) - } - } - } else { - button.visibility = GONE - } - } - - fun updateImage(image: Image?) { - val imageView = requireViewById<ImageView>(R.id.image_view) - when (image) { - is Image.ResourceId -> { - imageView.setImageDrawable(context.getDrawable(image.resId)) - } - null -> imageView.visibility = GONE - } - } - - fun updateContent() { - // Update content. - val title = requireViewById<TextView>(R.id.title) - title.text = model.titleText - val body = requireViewById<TextView>(R.id.body) - body.text = model.bodyText - updateButton(requireViewById(R.id.primary_button), model.primaryButton) - updateButton(requireViewById(R.id.secondary_button), model.secondaryButton) - updateImage(model.image) - } - - fun updateLayout() { - content.updateLayoutParams { width = MATCH_PARENT } - val sideSpacing = - resources.getDimensionPixelSize(R.dimen.nudge_default_position_side_spacing) - updateLayoutParams<MarginLayoutParams> { - if (Utilities.isRtl(context.getResources())) { - rightMargin = sideSpacing - } else { - leftMargin = sideSpacing - } - width = resources.getDimensionPixelSize(R.dimen.nudge_width) - } - } - - updateContent() - updateLayout() - show() - } + // TODO: b/398033012 - create and show nudge view based on the payload. } /** Closes the current [nudgeView]. */ fun hide() { - nudgeView?.close(true) + // TODO: b/398033012 - hide the nudge view. } - /** Initializes [nudgeView] with content from [contentResId]. */ - private fun inflateNudgeContent(@LayoutRes contentResId: Int) { - val overlayContext = controllers.taskbarOverlayController.requestWindow() - val nudgeView = - overlayContext.layoutInflater.inflate( - R.layout.taskbar_nudge_container, - overlayContext.dragLayer, - false, - ) as NudgeView - - controllers.taskbarAutohideSuspendController.updateFlag( - FLAG_AUTOHIDE_SUSPEND_GROWTH_NUDGE_OPEN, - true, - ) - - nudgeView.onCloseCallback = { - this.nudgeView = null - controllers.taskbarAutohideSuspendController.updateFlag( - FLAG_AUTOHIDE_SUSPEND_GROWTH_NUDGE_OPEN, - false, - ) - controllers.taskbarStashController.updateAndAnimateTransientTaskbar(true) - } - nudgeView.accessibilityDelegate = createAccessibilityDelegate() - - overlayContext.layoutInflater.inflate(contentResId, nudgeView.content, true) - this.nudgeView = nudgeView - } - - private fun createAccessibilityDelegate() = - object : View.AccessibilityDelegate() { - override fun performAccessibilityAction( - host: View, - action: Int, - args: Bundle?, - ): Boolean { - if (action == R.id.close) { - hide() - return true - } - return super.performAccessibilityAction(host, action, args) - } - - override fun onPopulateAccessibilityEvent(host: View, event: AccessibilityEvent) { - super.onPopulateAccessibilityEvent(host, event) - if (event.eventType == AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED) { - event.text.add(host.context?.getText(R.string.nudge_a11y_title)) - } - } - - override fun onInitializeAccessibilityNodeInfo( - host: View, - info: AccessibilityNodeInfo, - ) { - super.onInitializeAccessibilityNodeInfo(host, info) - info.addAction( - AccessibilityNodeInfo.AccessibilityAction( - R.id.close, - host.context?.getText(R.string.nudge_a11y_close), - ) - ) - } - } - override fun dumpLogs(prefix: String?, pw: PrintWriter?) { pw?.println(prefix + "NudgeController:") pw?.println("$prefix\tisNudgeEnabled=$isNudgeEnabled") - pw?.println("$prefix\tisOpen=$isNudgeOpen") } } - -/** - * Maps colors in the dark-themed Lottie assets to their light-themed equivalents. - * - * For instance, `".blue100" to R.color.lottie_blue400` means objects that are material blue100 in - * dark theme should be changed to material blue400 in light theme. - */ -private val DARK_TO_LIGHT_COLORS = - mapOf( - ".blue100" to R.color.lottie_blue400, - ".blue400" to R.color.lottie_blue600, - ".green100" to R.color.lottie_green400, - ".green400" to R.color.lottie_green600, - ".grey300" to R.color.lottie_grey600, - ".grey400" to R.color.lottie_grey700, - ".grey800" to R.color.lottie_grey200, - ".red400" to R.color.lottie_red600, - ".yellow100" to R.color.lottie_yellow400, - ".yellow400" to R.color.lottie_yellow600, - ) - -private fun LottieAnimationView.supportLightTheme() { - if (Utilities.isDarkTheme(context)) { - return - } - - LottieAnimationColorUtils.updateToColorResources(this, DARK_TO_LIGHT_COLORS, context.theme) -} diff --git a/quickstep/src/com/android/launcher3/taskbar/growth/NudgePayload.kt b/quickstep/src/com/android/launcher3/taskbar/growth/NudgePayload.kt index 7c167b959d..7498cbc9b0 100644 --- a/quickstep/src/com/android/launcher3/taskbar/growth/NudgePayload.kt +++ b/quickstep/src/com/android/launcher3/taskbar/growth/NudgePayload.kt @@ -26,6 +26,8 @@ sealed interface Action { sealed class Image { data class ResourceId(val resId: Int) : Image() + + data class Url(val url: String) : Image() } data class ButtonPayload(val label: String, val actions: List<Action>) diff --git a/quickstep/src/com/android/launcher3/taskbar/navbutton/AbstractNavButtonLayoutter.kt b/quickstep/src/com/android/launcher3/taskbar/navbutton/AbstractNavButtonLayoutter.kt index 918d5cf71e..3712a76eab 100644 --- a/quickstep/src/com/android/launcher3/taskbar/navbutton/AbstractNavButtonLayoutter.kt +++ b/quickstep/src/com/android/launcher3/taskbar/navbutton/AbstractNavButtonLayoutter.kt @@ -90,7 +90,7 @@ abstract class AbstractNavButtonLayoutter( resources.getDimensionPixelSize(R.dimen.taskbar_contextual_button_suw_margin) nearestTouchFrameLayoutParams.marginStart = phoneOrPortraitSetupMargin nearestTouchFrameLayoutParams.bottomMargin = - if (!deviceProfile.deviceProperties.isLandscape) 0 + if (!deviceProfile.isLandscape) 0 else phoneOrPortraitSetupMargin - resources.getDimensionPixelSize(R.dimen.taskbar_nav_buttons_size) / 2 diff --git a/quickstep/src/com/android/launcher3/taskbar/navbutton/NavButtonLayoutFactory.kt b/quickstep/src/com/android/launcher3/taskbar/navbutton/NavButtonLayoutFactory.kt index 17e63e8bd3..a199dba0bd 100644 --- a/quickstep/src/com/android/launcher3/taskbar/navbutton/NavButtonLayoutFactory.kt +++ b/quickstep/src/com/android/launcher3/taskbar/navbutton/NavButtonLayoutFactory.kt @@ -90,7 +90,7 @@ class NavButtonLayoutFactory { ) } isPhoneNavMode -> { - if (!deviceProfile.deviceProperties.isLandscape) { + if (!deviceProfile.isLandscape) { navButtonsView.setIsVertical(false) PhonePortraitNavLayoutter( resources, diff --git a/quickstep/src/com/android/launcher3/taskbar/navbutton/PhoneLandscapeNavLayoutter.kt b/quickstep/src/com/android/launcher3/taskbar/navbutton/PhoneLandscapeNavLayoutter.kt index 00ba40c7f9..9f7f07e773 100644 --- a/quickstep/src/com/android/launcher3/taskbar/navbutton/PhoneLandscapeNavLayoutter.kt +++ b/quickstep/src/com/android/launcher3/taskbar/navbutton/PhoneLandscapeNavLayoutter.kt @@ -25,7 +25,6 @@ import android.widget.ImageView import android.widget.LinearLayout import android.widget.Space import com.android.launcher3.R -import com.android.launcher3.Utilities import com.android.launcher3.taskbar.TaskbarActivityContext open class PhoneLandscapeNavLayoutter( @@ -35,7 +34,7 @@ open class PhoneLandscapeNavLayoutter( startContextualContainer: ViewGroup, imeSwitcher: ImageView?, a11yButton: ImageView?, - space: Space?, + space: Space? ) : AbstractNavButtonLayoutter( resources, @@ -44,11 +43,11 @@ open class PhoneLandscapeNavLayoutter( startContextualContainer, imeSwitcher, a11yButton, - space, + space ) { override fun layoutButtons(context: TaskbarActivityContext, isA11yButtonPersistent: Boolean) { - val totalHeight = context.deviceProfile.deviceProperties.heightPx + val totalHeight = context.deviceProfile.heightPx val homeButtonHeight = resources.getDimensionPixelSize(R.dimen.taskbar_phone_home_button_size) val roundedCornerContentMargin = @@ -113,15 +112,9 @@ open class PhoneLandscapeNavLayoutter( open fun addThreeButtons() { // Swap recents and back button - if (Utilities.isRtl(resources)) { - navButtonContainer.addView(backButton) - navButtonContainer.addView(homeButton) - navButtonContainer.addView(recentsButton) - } else { - navButtonContainer.addView(recentsButton) - navButtonContainer.addView(homeButton) - navButtonContainer.addView(backButton) - } + navButtonContainer.addView(recentsButton) + navButtonContainer.addView(homeButton) + navButtonContainer.addView(backButton) } open fun repositionContextualButtons(buttonSize: Int) { @@ -136,14 +129,14 @@ open class PhoneLandscapeNavLayoutter( buttonSize, roundedCornerContentMargin + contentPadding, 0, - Gravity.TOP, + Gravity.TOP ) repositionContextualContainer( endContextualContainer, buttonSize, 0, roundedCornerContentMargin + contentPadding, - Gravity.BOTTOM, + Gravity.BOTTOM ) if (imeSwitcher != null) { @@ -162,7 +155,7 @@ open class PhoneLandscapeNavLayoutter( buttonSize: Int, barAxisMarginTop: Int, barAxisMarginBottom: Int, - gravity: Int, + gravity: Int ) { val contextualContainerParams = FrameLayout.LayoutParams(MATCH_PARENT, buttonSize) contextualContainerParams.apply { diff --git a/quickstep/src/com/android/launcher3/taskbar/navbutton/PhonePortraitNavLayoutter.kt b/quickstep/src/com/android/launcher3/taskbar/navbutton/PhonePortraitNavLayoutter.kt index 833a309e83..5b24ebfe1d 100644 --- a/quickstep/src/com/android/launcher3/taskbar/navbutton/PhonePortraitNavLayoutter.kt +++ b/quickstep/src/com/android/launcher3/taskbar/navbutton/PhonePortraitNavLayoutter.kt @@ -34,7 +34,7 @@ class PhonePortraitNavLayoutter( startContextualContainer: ViewGroup, imeSwitcher: ImageView?, a11yButton: ImageView?, - space: Space?, + space: Space? ) : AbstractNavButtonLayoutter( resources, @@ -43,11 +43,11 @@ class PhonePortraitNavLayoutter( startContextualContainer, imeSwitcher, a11yButton, - space, + space ) { override fun layoutButtons(context: TaskbarActivityContext, isA11yButtonPersistent: Boolean) { - val totalWidth = context.deviceProfile.deviceProperties.widthPx + val totalWidth = context.deviceProfile.widthPx val homeButtonWidth = resources.getDimensionPixelSize(R.dimen.taskbar_phone_home_button_size) val roundedCornerContentMargin = @@ -63,7 +63,7 @@ class PhonePortraitNavLayoutter( val navContainerParams = FrameLayout.LayoutParams( navButtonContainerWidth.toInt(), - ViewGroup.LayoutParams.MATCH_PARENT, + ViewGroup.LayoutParams.MATCH_PARENT ) navContainerParams.apply { topMargin = 0 @@ -120,14 +120,14 @@ class PhonePortraitNavLayoutter( contextualButtonWidth.toInt(), roundedCornerContentMargin + contentPadding, 0, - Gravity.START, + Gravity.START ) repositionContextualContainer( endContextualContainer, contextualButtonWidth.toInt(), 0, roundedCornerContentMargin + contentPadding, - Gravity.END, + Gravity.END ) startContextualContainer.addView(space, MATCH_PARENT, MATCH_PARENT) diff --git a/quickstep/src/com/android/launcher3/taskbar/navbutton/PhoneSeascapeNavLayoutter.kt b/quickstep/src/com/android/launcher3/taskbar/navbutton/PhoneSeascapeNavLayoutter.kt index cf6f89857a..f0b47f4caa 100644 --- a/quickstep/src/com/android/launcher3/taskbar/navbutton/PhoneSeascapeNavLayoutter.kt +++ b/quickstep/src/com/android/launcher3/taskbar/navbutton/PhoneSeascapeNavLayoutter.kt @@ -24,7 +24,6 @@ import android.widget.ImageView import android.widget.LinearLayout import android.widget.Space import com.android.launcher3.R -import com.android.launcher3.Utilities class PhoneSeascapeNavLayoutter( resources: Resources, @@ -33,7 +32,7 @@ class PhoneSeascapeNavLayoutter( startContextualContainer: ViewGroup, imeSwitcher: ImageView?, a11yButton: ImageView?, - space: Space?, + space: Space? ) : PhoneLandscapeNavLayoutter( resources, @@ -42,20 +41,14 @@ class PhoneSeascapeNavLayoutter( startContextualContainer, imeSwitcher, a11yButton, - space, + space ) { override fun addThreeButtons() { // Flip ordering of back and recents buttons - if (Utilities.isRtl(resources)) { - navButtonContainer.addView(recentsButton) - navButtonContainer.addView(homeButton) - navButtonContainer.addView(backButton) - } else { - navButtonContainer.addView(backButton) - navButtonContainer.addView(homeButton) - navButtonContainer.addView(recentsButton) - } + navButtonContainer.addView(backButton) + navButtonContainer.addView(homeButton) + navButtonContainer.addView(recentsButton) } override fun repositionContextualButtons(buttonSize: Int) { @@ -70,14 +63,14 @@ class PhoneSeascapeNavLayoutter( buttonSize, roundedCornerContentMargin + contentPadding, 0, - Gravity.TOP, + Gravity.TOP ) repositionContextualContainer( endContextualContainer, buttonSize, 0, roundedCornerContentMargin + contentPadding, - Gravity.BOTTOM, + Gravity.BOTTOM ) startContextualContainer.addView(space, MATCH_PARENT, MATCH_PARENT) diff --git a/quickstep/src/com/android/launcher3/taskbar/navbutton/SetupNavLayoutter.kt b/quickstep/src/com/android/launcher3/taskbar/navbutton/SetupNavLayoutter.kt index 24998d4178..eb3fdeb99e 100644 --- a/quickstep/src/com/android/launcher3/taskbar/navbutton/SetupNavLayoutter.kt +++ b/quickstep/src/com/android/launcher3/taskbar/navbutton/SetupNavLayoutter.kt @@ -59,9 +59,7 @@ class SetupNavLayoutter( override fun layoutButtons(context: TaskbarActivityContext, isA11yButtonPersistent: Boolean) { val SUWTheme = SystemProperties.get(SUW_THEME_SYSTEM_PROPERTY, "") - val expressiveThemeEnabled = - SUWTheme == GLIF_EXPRESSIVE_THEME || SUWTheme == GLIF_EXPRESSIVE_LIGHT_THEME - if (expressiveThemeEnabled && !context.isSimpleViewEnabled) { + if (SUWTheme == GLIF_EXPRESSIVE_THEME || SUWTheme == GLIF_EXPRESSIVE_LIGHT_THEME) { return } // Since setup wizard only has back button enabled, it looks strange to be @@ -72,15 +70,15 @@ class SetupNavLayoutter( val deviceProfile: DeviceProfile = context.deviceProfile navButtonsLayoutParams.marginEnd = 0 - navButtonsLayoutParams.gravity = Gravity.START or Gravity.CENTER_VERTICAL + navButtonsLayoutParams.gravity = Gravity.START context.setTaskbarWindowSize(context.setupWindowSize) // If SUW is on a large screen device that is landscape (or has a square aspect // ratio) the back button has to be placed accordingly if ( - deviceProfile.deviceProperties.isTablet && deviceProfile.deviceProperties.isLandscape || - (deviceProfile.deviceProperties.aspectRatio > SQUARE_ASPECT_RATIO_BOTTOM_BOUND && - deviceProfile.deviceProperties.aspectRatio < SQUARE_ASPECT_RATIO_UPPER_BOUND) + deviceProfile.isTablet && deviceProfile.isLandscape || + (deviceProfile.aspectRatio > SQUARE_ASPECT_RATIO_BOTTOM_BOUND && + deviceProfile.aspectRatio < SQUARE_ASPECT_RATIO_UPPER_BOUND) ) { navButtonsLayoutParams.marginStart = resources.getDimensionPixelSize(R.dimen.taskbar_back_button_suw_start_margin) diff --git a/quickstep/src/com/android/launcher3/taskbar/navbutton/TaskbarNavLayoutter.kt b/quickstep/src/com/android/launcher3/taskbar/navbutton/TaskbarNavLayoutter.kt index bef432e668..a59e8a847b 100644 --- a/quickstep/src/com/android/launcher3/taskbar/navbutton/TaskbarNavLayoutter.kt +++ b/quickstep/src/com/android/launcher3/taskbar/navbutton/TaskbarNavLayoutter.kt @@ -35,7 +35,7 @@ class TaskbarNavLayoutter( startContextualContainer: ViewGroup, imeSwitcher: ImageView?, a11yButton: ImageView?, - space: Space?, + space: Space? ) : AbstractNavButtonLayoutter( resources, @@ -44,7 +44,7 @@ class TaskbarNavLayoutter( startContextualContainer, imeSwitcher, a11yButton, - space, + space ) { override fun layoutButtons(context: TaskbarActivityContext, isA11yButtonPersistent: Boolean) { @@ -69,7 +69,7 @@ class TaskbarNavLayoutter( val navButtonParams = FrameLayout.LayoutParams( FrameLayout.LayoutParams.WRAP_CONTENT, - ViewGroup.LayoutParams.MATCH_PARENT, + ViewGroup.LayoutParams.MATCH_PARENT ) navButtonParams.apply { gravity = Gravity.END or Gravity.CENTER_VERTICAL @@ -101,7 +101,7 @@ class TaskbarNavLayoutter( endContextualContainer.removeAllViews() startContextualContainer.removeAllViews() - if (!context.deviceProfile.deviceProperties.isGestureMode) { + if (!context.deviceProfile.isGestureMode) { val contextualMargin = resources.getDimensionPixelSize(R.dimen.taskbar_contextual_button_padding) repositionContextualContainer(endContextualContainer, WRAP_CONTENT, 0, 0, Gravity.END) @@ -110,7 +110,7 @@ class TaskbarNavLayoutter( WRAP_CONTENT, contextualMargin, contextualMargin, - Gravity.START, + Gravity.START ) if (imeSwitcher != null) { @@ -122,7 +122,7 @@ class TaskbarNavLayoutter( val imeSwitcherButtonParams = FrameLayout.LayoutParams( FrameLayout.LayoutParams.MATCH_PARENT, - ViewGroup.LayoutParams.MATCH_PARENT, + ViewGroup.LayoutParams.MATCH_PARENT ) imeSwitcherButtonParams.apply { marginStart = imeStartMargin diff --git a/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayContext.java b/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayContext.java index c964474912..6db300bf59 100644 --- a/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayContext.java +++ b/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayContext.java @@ -16,14 +16,12 @@ package com.android.launcher3.taskbar.overlay; import android.content.Context; -import android.graphics.Point; import android.view.View; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.launcher3.DeviceProfile; -import com.android.launcher3.Flags; import com.android.launcher3.R; import com.android.launcher3.popup.PopupDataProvider; import com.android.launcher3.taskbar.BaseTaskbarContext; @@ -59,14 +57,13 @@ public class TaskbarOverlayContext extends BaseTaskbarContext { Context windowContext, TaskbarActivityContext taskbarContext, TaskbarControllers controllers) { - super(windowContext, taskbarContext.getDisplayId(), taskbarContext.isPrimaryDisplay()); + super(windowContext, taskbarContext.isPrimaryDisplay()); mTaskbarContext = taskbarContext; mOverlayController = controllers.taskbarOverlayController; mDragController = new TaskbarDragController(this); mDragController.init(controllers); mDragLayer = new TaskbarOverlayDragLayer(this); mStashedTaskbarHeight = controllers.taskbarStashController.getStashedHeight(); - updateBlurStyle(); mUiController = controllers.uiController; onViewCreated(); @@ -128,20 +125,6 @@ public class TaskbarOverlayContext extends BaseTaskbarContext { return mDragLayer.findViewById(R.id.apps_view); } - @Override - public boolean isAllAppsBackgroundBlurEnabled() { - return Flags.allAppsBlur() && mOverlayController != null - && mOverlayController.isBackgroundBlurEnabled(); - } - - /** Apply the blur or blur fallback style to the current theme. */ - private void updateBlurStyle() { - if (!Flags.allAppsBlur()) { - return; - } - getTheme().applyStyle(getAllAppsBlurStyleResId(), true); - } - @Override public View.OnClickListener getItemOnClickListener() { return mTaskbarContext.getItemOnClickListener(); @@ -183,11 +166,6 @@ public class TaskbarOverlayContext extends BaseTaskbarContext { return mTaskbarContext.isInDesktopMode(); } - @Override - public boolean isTaskbarShowingDesktopTasks() { - return mTaskbarContext.isTaskbarShowingDesktopTasks(); - } - @Override public boolean showLockedTaskbarOnHome() { return mTaskbarContext.showLockedTaskbarOnHome(); @@ -199,18 +177,8 @@ public class TaskbarOverlayContext extends BaseTaskbarContext { } @Override - public Point getScreenSize() { - return mTaskbarContext.getScreenSize(); - } - - @Override - public int getDisplayHeight() { - return mTaskbarContext.getDisplayHeight(); - } - - @Override - public void notifyConfigChanged() { - mTaskbarContext.notifyConfigChanged(); + public boolean isPrimaryDisplay() { + return mTaskbarContext.isPrimaryDisplay(); } @Override diff --git a/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayController.java b/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayController.java index 4905287356..178fe9d6b6 100644 --- a/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayController.java +++ b/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayController.java @@ -15,11 +15,9 @@ */ package com.android.launcher3.taskbar.overlay; -import static android.os.Trace.TRACE_TAG_APP; import static android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS; import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_CONSUME_IME_INSETS; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY; -import static android.window.DesktopModeFlags.ENABLE_TASKBAR_OVERFLOW; import static com.android.launcher3.AbstractFloatingView.TYPE_ALL; import static com.android.launcher3.AbstractFloatingView.TYPE_REBIND_SAFE; @@ -28,12 +26,8 @@ import static com.android.launcher3.LauncherState.ALL_APPS; import android.annotation.SuppressLint; import android.content.Context; import android.graphics.PixelFormat; -import android.gui.EarlyWakeupInfo; -import android.os.Binder; -import android.os.Trace; import android.util.Log; import android.view.AttachedSurfaceControl; -import android.view.CrossWindowBlurListeners; import android.view.Gravity; import android.view.MotionEvent; import android.view.SurfaceControl; @@ -104,10 +98,6 @@ public final class TaskbarOverlayController { private TaskbarControllers mControllers; // Initialized in init. // True if we have alerted surface flinger of an expensive call for blur. private boolean mInEarlyWakeUp; - /** - * Token for early wakeup requests to SurfaceFlinger. - */ - private EarlyWakeupInfo mEarlyWakeupInfo = new EarlyWakeupInfo(); public TaskbarOverlayController( TaskbarActivityContext taskbarContext, DeviceProfile launcherDeviceProfile) { @@ -118,8 +108,6 @@ public final class TaskbarOverlayController { mLauncherDeviceProfile = launcherDeviceProfile; mMaxBlurRadius = mTaskbarContext.getResources().getDimensionPixelSize( R.dimen.max_depth_blur_radius_enhanced); - mEarlyWakeupInfo.token = new Binder(); - mEarlyWakeupInfo.trace = TaskbarOverlayController.class.getName(); } /** Initialize the controller. */ @@ -133,7 +121,7 @@ public final class TaskbarOverlayController { */ public TaskbarOverlayContext requestWindow() { if (mOverlayContext == null) { - mOverlayContext = TaskbarOverlayContextFactory.newInstance(mWindowContext).create( + mOverlayContext = new TaskbarOverlayContext( mWindowContext, mTaskbarContext, mControllers); } @@ -189,7 +177,7 @@ public final class TaskbarOverlayController { return mLauncherDeviceProfile; } - /** Updates {@link deviceprofile} instance for Taskbar's overlay window. */ + /** Updates {@link DeviceProfile} instance for Taskbar's overlay window. */ public void updateLauncherDeviceProfile(DeviceProfile dp) { mLauncherDeviceProfile = dp; Optional.ofNullable(mOverlayContext).ifPresent(c -> { @@ -239,11 +227,6 @@ public final class TaskbarOverlayController { radius = 0; // intentionally falling through in case a non-0 blur was previously set. } - if (!CrossWindowBlurListeners.getInstance().isCrossWindowBlurEnabled()) { - Log.d(TAG, "setBackgroundBlurRadius: disabled, setting to 0"); - radius = 0; - // intentionally falling through in case a non-0 blur was previously set. - } if (mOverlayContext == null) { Log.w(TAG, "setBackgroundBlurRadius: no overlay context"); return; @@ -269,42 +252,31 @@ public final class TaskbarOverlayController { return; } Log.v(TAG, "setBackgroundBlurRadius: " + radius); - final SurfaceControl.Transaction transaction = + SurfaceControl.Transaction transaction = new SurfaceControl.Transaction().setBackgroundBlurRadius(surfaceControl, radius); - try (transaction) { - // Set early wake-up flags when we know we're executing an expensive operation, this way - // SurfaceFlinger will adjust its internal offsets to avoid jank. - boolean wantsEarlyWakeUp = radius > 0 && radius < mMaxBlurRadius; - if (wantsEarlyWakeUp && !mInEarlyWakeUp) { - Log.d(TAG, "setBackgroundBlurRadius: setting early wakeup with token " - + mEarlyWakeupInfo); - Trace.instantForTrack(TRACE_TAG_APP, TAG, "notifyRendererForGpuLoadUp"); - dragLayerViewRoot.notifyRendererForGpuLoadUp("setBackgroundBlurRadius"); - try { - transaction.setEarlyWakeupStart(mEarlyWakeupInfo); - } catch (NoSuchMethodError e) { - // LC-Ignored: wtf? - } - mInEarlyWakeUp = true; - } else if (!wantsEarlyWakeUp && mInEarlyWakeUp) { - Log.d(TAG, "setBackgroundBlurRadius: clearing early wakeup with token " - + mEarlyWakeupInfo); - try { - transaction.setEarlyWakeupEnd(mEarlyWakeupInfo); - } catch (NoSuchMethodError e) { - // LC-Ignored: wtf? - } - mInEarlyWakeUp = false; + // Set early wake-up flags when we know we're executing an expensive operation, this way + // SurfaceFlinger will adjust its internal offsets to avoid jank. + boolean wantsEarlyWakeUp = radius > 0 && radius < mMaxBlurRadius; + if (wantsEarlyWakeUp && !mInEarlyWakeUp) { + Log.d(TAG, "setBackgroundBlurRadius: setting early wakeup"); + try { + transaction.setEarlyWakeupStart(); + } catch (NoSuchMethodError e) { + // LC-Ignored: wtf? } - - rootSurfaceControl.applyTransactionOnDraw(transaction); + mInEarlyWakeUp = true; + } else if (!wantsEarlyWakeUp && mInEarlyWakeUp) { + Log.d(TAG, "setBackgroundBlurRadius: clearing early wakeup"); + try { + transaction.setEarlyWakeupEnd(); + } catch (NoSuchMethodError e) { + // LC-Ignored: wtf? + } + mInEarlyWakeUp = false; } - } - boolean isBackgroundBlurEnabled() { - return BlurUtils.supportsBlursOnWindows() - && CrossWindowBlurListeners.getInstance().isCrossWindowBlurEnabled(); + rootSurfaceControl.applyTransactionOnDraw(transaction); } /** @@ -328,7 +300,7 @@ public final class TaskbarOverlayController { @Override protected void handleClose(boolean animate) { if (!mIsOpen) return; - if (ENABLE_TASKBAR_OVERFLOW.isTrue()) { + if (Flags.taskbarOverflow()) { // Mark the view closed before attempting to remove it, so the drag layer does not // schedule another call to close. Needed for taskbar overflow in case the KQS // view shown for taskbar overflow needs to be reshown - delayed close call would diff --git a/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayDragLayer.java b/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayDragLayer.java index 9ecffdc6b3..41694ecee5 100644 --- a/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayDragLayer.java +++ b/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayDragLayer.java @@ -71,7 +71,6 @@ public class TaskbarOverlayDragLayer extends @Override public void recreateControllers() { - super.recreateControllers(); List<TouchController> controllers = new ArrayList<>(); controllers.add(mContainer.getDragController()); controllers.addAll(mTouchControllers); diff --git a/quickstep/src/com/android/launcher3/uioverrides/PredictedAppIcon.java b/quickstep/src/com/android/launcher3/uioverrides/PredictedAppIcon.java index eec0009437..966ae8bff6 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/PredictedAppIcon.java +++ b/quickstep/src/com/android/launcher3/uioverrides/PredictedAppIcon.java @@ -39,11 +39,14 @@ import android.util.AttributeSet; import android.util.FloatProperty; import android.util.Log; import android.util.Property; +import android.view.LayoutInflater; +import android.view.ViewGroup; import androidx.core.graphics.ColorUtils; import com.android.launcher3.DeviceProfile; import com.android.launcher3.Flags; +import com.android.launcher3.Launcher; import com.android.launcher3.R; import com.android.launcher3.anim.AnimatedFloat; import com.android.launcher3.anim.AnimatorListeners; @@ -91,7 +94,7 @@ public class PredictedAppIcon extends DoubleShadowBubbleTextView { private final Paint mIconRingPaint = new Paint(Paint.ANTI_ALIAS_FLAG); private final Path mRingPath = new Path(); private final int mNormalizedIconSize; - private Path mShapePath; + private final Path mShapePath; private final Matrix mTmpMatrix = new Matrix(); private final BlurMaskFilter mShadowFilter; @@ -278,6 +281,16 @@ public class PredictedAppIcon extends DoubleShadowBubbleTextView { invalidate(); } + /** + * prepares prediction icon for usage after bind + */ + public void finishBinding(OnLongClickListener longClickListener) { + setOnLongClickListener(longClickListener); + ((CellLayoutLayoutParams) getLayoutParams()).canReorder = false; + setTextVisibility(false); + verifyHighRes(); + } + @Override public void getIconBounds(Rect outBounds) { super.getIconBounds(outBounds); @@ -326,9 +339,6 @@ public class PredictedAppIcon extends DoubleShadowBubbleTextView { } private void updateRingPath() { - mShapePath = ThemeManager.INSTANCE.get(mContext) - .getIconShape() - .getPath(mNormalizedIconSize); mRingPath.reset(); mTmpMatrix.reset(); mTmpMatrix.setTranslate(getOutlineOffsetX(), getOutlineOffsetY()); @@ -447,6 +457,19 @@ public class PredictedAppIcon extends DoubleShadowBubbleTextView { }; } + /** + * Creates and returns a new instance of PredictedAppIcon from WorkspaceItemInfo + */ + public static PredictedAppIcon createIcon(ViewGroup parent, WorkspaceItemInfo info) { + PredictedAppIcon icon = (PredictedAppIcon) LayoutInflater.from(parent.getContext()) + .inflate(R.layout.predicted_app_icon, parent, false); + icon.applyFromWorkspaceItem(info); + Launcher launcher = Launcher.getLauncher(parent.getContext()); + icon.setOnClickListener(launcher.getItemOnClickListener()); + icon.setOnFocusChangeListener(launcher.getFocusHandler()); + return icon; + } + private class AnimColorHolder { public final AnimatedFloat progress = new AnimatedFloat(this::onUpdate, 1); diff --git a/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java b/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java index 2b67c232be..8b96a252a9 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java +++ b/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java @@ -16,7 +16,6 @@ package com.android.launcher3.uioverrides; import static android.app.ActivityTaskManager.INVALID_TASK_ID; -import static android.view.Display.DEFAULT_DISPLAY; import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_OPTIMIZE_MEASURE; import static android.view.accessibility.AccessibilityEvent.TYPE_VIEW_FOCUSED; import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY; @@ -24,25 +23,21 @@ import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_WALLPAPER import static com.android.app.animation.Interpolators.EMPHASIZED; import static com.android.internal.jank.Cuj.CUJ_LAUNCHER_LAUNCH_APP_PAIR_FROM_WORKSPACE; import static com.android.launcher3.Flags.enableExpressiveDismissTaskMotion; -import static com.android.launcher3.Flags.enableOverviewBackgroundWallpaperBlur; import static com.android.launcher3.Flags.enableUnfoldStateAnimation; import static com.android.launcher3.LauncherConstants.SavedInstanceKeys.PENDING_SPLIT_SELECT_INFO; import static com.android.launcher3.LauncherConstants.SavedInstanceKeys.RUNTIME_STATE; import static com.android.launcher3.LauncherSettings.Animation.DEFAULT_NO_ICON; import static com.android.launcher3.LauncherSettings.Animation.VIEW_BACKGROUND; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APPLICATION; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; import static com.android.launcher3.LauncherState.ALL_APPS; -import static com.android.launcher3.LauncherState.FLAG_SKIP_STATE_ANNOUNCEMENT; import static com.android.launcher3.LauncherState.NORMAL; import static com.android.launcher3.LauncherState.NO_OFFSET; import static com.android.launcher3.LauncherState.OVERVIEW; import static com.android.launcher3.LauncherState.OVERVIEW_MODAL_TASK; import static com.android.launcher3.LauncherState.OVERVIEW_SPLIT_SELECT; import static com.android.launcher3.Utilities.ATLEAST_BAKLAVA; -import static com.android.launcher3.Utilities.ATLEAST_S_V2; import static com.android.launcher3.Utilities.ATLEAST_T; import static com.android.launcher3.Utilities.isRtl; import static com.android.launcher3.compat.AccessibilityManagerCompat.sendCustomAccessibilityEvent; @@ -55,7 +50,6 @@ import static com.android.launcher3.popup.SystemShortcut.BUBBLE_SHORTCUT; import static com.android.launcher3.popup.SystemShortcut.DONT_SUGGEST_APP; import static com.android.launcher3.popup.SystemShortcut.INSTALL; import static com.android.launcher3.popup.SystemShortcut.PRIVATE_PROFILE_INSTALL; -import static com.android.launcher3.popup.SystemShortcut.REMOVE; import static com.android.launcher3.popup.SystemShortcut.UNINSTALL_APP; import static com.android.launcher3.popup.SystemShortcut.WIDGETS; import static com.android.launcher3.taskbar.LauncherTaskbarUIController.ALL_APPS_PAGE_PROGRESS_INDEX; @@ -71,7 +65,6 @@ import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; import static com.android.quickstep.util.AnimUtils.completeRunnableListCallback; import static com.android.quickstep.util.SplitAnimationTimings.TABLET_HOME_TO_SPLIT; import static com.android.systemui.shared.system.ActivityManagerWrapper.CLOSE_SYSTEM_WINDOWS_REASON_HOME_KEY; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; @@ -87,12 +80,15 @@ import android.graphics.RectF; import android.hardware.display.DisplayManager; import android.media.permission.SafeCloseable; import android.os.Build; +import android.os.Build.VERSION; +import android.os.Build.VERSION_CODES; import android.os.Bundle; import android.os.IRemoteCallback; import android.os.SystemProperties; import android.os.UserHandle; import android.text.TextUtils; import android.util.AttributeSet; +import android.view.Display; import android.view.HapticFeedbackConstants; import android.view.KeyEvent; import android.view.View; @@ -113,7 +109,6 @@ import com.android.app.viewcapture.ViewCaptureFactory; import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.DeviceProfile; import com.android.launcher3.Flags; -import com.android.launcher3.GestureNavContract; import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherSettings.Favorites; @@ -135,9 +130,9 @@ import com.android.launcher3.hybridhotseat.HotseatPredictionController; import com.android.launcher3.logging.InstanceId; import com.android.launcher3.logging.StatsLogManager; import com.android.launcher3.logging.StatsLogManager.StatsLogger; +import com.android.launcher3.model.BgDataModel.FixedContainerItems; import com.android.launcher3.model.WellbeingModel; import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.model.data.PredictedContainerInfo; import com.android.launcher3.popup.SystemShortcut; import com.android.launcher3.proxy.ProxyActivityStarter; import com.android.launcher3.statehandlers.DepthController; @@ -167,7 +162,6 @@ import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.IntSet; import com.android.launcher3.util.NavigationMode; import com.android.launcher3.util.ObjectWrapper; -import com.android.launcher3.util.OverviewCommandHelperProtoLogProxy; import com.android.launcher3.util.PendingRequestArgs; import com.android.launcher3.util.PendingSplitSelectInfo; import com.android.launcher3.util.RunnableList; @@ -178,7 +172,6 @@ import com.android.launcher3.util.StableViewInfo; import com.android.launcher3.util.StartActivityParams; import com.android.launcher3.util.TouchController; import com.android.launcher3.views.FloatingIconView; -import com.android.quickstep.LauncherActivityInterface; import com.android.quickstep.OverviewCommandHelper; import com.android.quickstep.OverviewComponentObserver; import com.android.quickstep.OverviewComponentObserver.OverviewChangeListener; @@ -186,8 +179,6 @@ import com.android.quickstep.RecentsModel; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.TaskUtils; import com.android.quickstep.TouchInteractionService.TISBinder; -import com.android.quickstep.fallback.window.RecentsWindowFlags; -import com.android.quickstep.fallback.window.RecentsWindowManager; import com.android.quickstep.util.ActiveGestureProtoLogProxy; import com.android.quickstep.util.AsyncClockEventDelegate; import com.android.quickstep.util.LauncherUnfoldAnimationController; @@ -206,7 +197,6 @@ import com.android.quickstep.views.RecentsViewContainer; import com.android.quickstep.views.TaskView; import com.android.systemui.animation.back.FlingOnBackAnimationCallback; import com.android.systemui.shared.recents.model.Task; -import com.android.systemui.shared.system.ActivityManagerWrapper; import com.android.systemui.unfold.RemoteUnfoldSharedComponent; import com.android.systemui.unfold.UnfoldTransitionFactory; import com.android.systemui.unfold.UnfoldTransitionProgressProvider; @@ -218,7 +208,6 @@ import com.android.systemui.unfold.updates.RotationChangeProvider; import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; import com.android.wm.shell.shared.bubbles.BubbleBarLocation; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; -import com.android.wm.shell.shared.desktopmode.DesktopState; import kotlin.Unit; @@ -246,7 +235,7 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, protected static final String RING_APPEAR_ANIMATION_PREFIX = "RingAppearAnimation\t"; - private PredictedContainerInfo mAllAppsPredictions; + private FixedContainerItems mAllAppsPredictions; private HotseatPredictionController mHotseatPredictionController; private DepthController mDepthController; private QuickstepTransitionManager mAppTransitionManager; @@ -284,8 +273,6 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, private final OverviewChangeListener mOverviewChangeListener = this::onOverviewTargetChanged; - private boolean mOverviewBlurEnabled; - private final TaskViewRecentsTouchContext mTaskViewRecentsTouchContext = new TaskViewRecentsTouchContext() { @Override @@ -305,16 +292,17 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, } }; + public static QuickstepLauncher getLauncher(Context context) { + return fromContext(context); + } + @Override protected void setupViews() { getAppWidgetHolder().setOnViewCreationCallback(new QuickstepInteractionHandler(this)); - mDepthController = new DepthController(this); - mOverviewBlurEnabled = isOverviewBackgroundBlurEnabled(); - getTheme().applyStyle(getOverviewBlurStyleResId(), true); super.setupViews(); mActionsView = findViewById(R.id.overview_actions_view); - RecentsView<?, LauncherState> overviewPanel = getOverviewPanel(); + RecentsView<?,?> overviewPanel = getOverviewPanel(); SystemUiProxy systemUiProxy = SystemUiProxy.INSTANCE.get(this); mSplitSelectStateController = new SplitSelectStateController(this, getStateManager(), @@ -342,7 +330,7 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, } mTISBindHelper = new TISBindHelper(this, this::onTISConnected); - + mDepthController = new DepthController(this); if (DesktopModeStatus.canEnterDesktopModeOrShowAppHandle(this)) { mSplitSelectStateController.initSplitFromDesktopController(this); } @@ -371,16 +359,16 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, if (mAllAppsPredictions != null && (info.itemType == ITEM_TYPE_APPLICATION || info.itemType == ITEM_TYPE_DEEP_SHORTCUT)) { - List<ItemInfo> items = mAllAppsPredictions.getContents(); - int count = items.size(); + int count = mAllAppsPredictions.items.size(); for (int i = 0; i < count; i++) { - ItemInfo targetInfo = items.get(i); + ItemInfo targetInfo = mAllAppsPredictions.items.get(i); if (targetInfo.itemType == info.itemType && targetInfo.user.equals(info.user) && Objects.equals(targetInfo.getIntent(), info.getIntent())) { logger.withRank(i); break; } + } } logger.log(LAUNCHER_APP_LAUNCH_TAP); @@ -430,19 +418,31 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, @Override public RunnableList startActivitySafely(View v, Intent intent, ItemInfo item) { + // Only pause is taskbar controller is not present until the transition (if it exists) ends + mHotseatPredictionController.setPauseUIUpdate(getTaskbarUIController() == null); PredictionRowView<?> predictionRowView = getAppsView().getFloatingHeaderView().findFixedRowByType(PredictionRowView.class); // Pause the prediction row updates until the transition (if it exists) ends. predictionRowView.setPredictionUiUpdatePaused(true); RunnableList result = super.startActivitySafely(v, intent, item); if (result == null) { + mHotseatPredictionController.setPauseUIUpdate(false); predictionRowView.setPredictionUiUpdatePaused(false); } else { - result.add(() -> predictionRowView.setPredictionUiUpdatePaused(false)); + result.add(() -> { + mHotseatPredictionController.setPauseUIUpdate(false); + predictionRowView.setPredictionUiUpdatePaused(false); + }); } return result; } + @Override + public void startBinding() { + super.startBinding(); + mHotseatPredictionController.verifyUIUpdateNotPaused(); + } + @Override protected void onActivityFlagsChanged(int changeBits) { if ((changeBits & ACTIVITY_STATE_STARTED) != 0) { @@ -468,31 +468,6 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, super.showAllAppsFromIntent(alreadyOnHome); } - @Override - public boolean isAllAppsBackgroundBlurEnabled() { - return mDepthController != null && mDepthController.isCrossWindowBlursEnabled() - && Flags.allAppsBlur(); - } - - @Override - public boolean isOverviewBackgroundBlurEnabled() { - return mDepthController != null && mDepthController.isCrossWindowBlursEnabled() - && enableOverviewBackgroundWallpaperBlur(); - } - - /** Apply the blur or blur fallback style to the current theme. */ - public void updateBlurStyle() { - if (enableOverviewBackgroundWallpaperBlur()) { - if (isOverviewBackgroundBlurEnabled() != mOverviewBlurEnabled) { - mWallpaperThemeManager.recreateToUpdateTheme(); - } - } else if (Flags.allAppsBlur()) { - // For all apps, we only need to update the scrim, which draws the panel. But if the - // activity was recreated above, this is unnecessary. - getAppsView().invalidateHeader(); - } - } - protected void onItemClicked(View view) { if (!mSplitToWorkspaceController.handleSecondAppSelectionForSplit(view)) { super.getItemOnClickListener().onClick(view); @@ -505,7 +480,7 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, } @Override - public Stream<SystemShortcut.Factory> getSupportedShortcuts(int container) { + public Stream<SystemShortcut.Factory> getSupportedShortcuts() { // Order matters as it affects order of appearance in popup container List<SystemShortcut.Factory> shortcuts = new ArrayList(Arrays.asList( APP_INFO, WellbeingModel.SHORTCUT_FACTORY, mHotseatPredictionController)); @@ -513,15 +488,12 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, shortcuts.addAll(getSplitShortcuts()); shortcuts.add(WIDGETS); shortcuts.add(INSTALL); - if (Flags.enableLongPressRemoveShortcut() - && (container == CONTAINER_HOTSEAT || container == CONTAINER_DESKTOP - || /* Folder */ container > 0)) { - shortcuts.add(REMOVE); - } - shortcuts.add(DONT_SUGGEST_APP); if (Flags.enablePrivateSpaceInstallShortcut()) { shortcuts.add(PRIVATE_PROFILE_INSTALL); } + if (Flags.enableShortcutDontSuggestApp()) { + shortcuts.add(DONT_SUGGEST_APP); + } if (Flags.enablePrivateSpace()) { shortcuts.add(UNINSTALL_APP); } @@ -532,7 +504,7 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, } private List<SystemShortcut.Factory<QuickstepLauncher>> getSplitShortcuts() { - if (!mDeviceProfile.getDeviceProperties().isTablet() || mSplitSelectStateController.isSplitSelectActive()) { + if (!mDeviceProfile.isTablet || mSplitSelectStateController.isSplitSelectActive()) { return Collections.emptyList(); } RecentsView recentsView = getOverviewPanel(); @@ -574,20 +546,17 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, } @Override - public void bindPredictedContainerInfo(PredictedContainerInfo info) { - super.bindPredictedContainerInfo(info); - switch (info.id) { - case Favorites.CONTAINER_ALL_APPS_PREDICTION: - mAllAppsPredictions = info; - getAppsView().getFloatingHeaderView().findFixedRowByType( - PredictionRowView.class).setPredictedApps(info.getContents()); - break; - case Favorites.CONTAINER_HOTSEAT_PREDICTION: - mHotseatPredictionController.setPredictedItems(info); - break; - case Favorites.CONTAINER_WIDGETS_PREDICTION: - getWidgetPickerDataProvider().setWidgetRecommendations(info.getContents()); - break; + public void bindExtraContainerItems(FixedContainerItems item) { + if (item.containerId == Favorites.CONTAINER_PREDICTION) { + mAllAppsPredictions = item; + PredictionRowView<?> predictionRowView = + getAppsView().getFloatingHeaderView().findFixedRowByType( + PredictionRowView.class); + predictionRowView.setPredictedApps(item.items); + } else if (item.containerId == Favorites.CONTAINER_HOTSEAT_PREDICTION) { + mHotseatPredictionController.setPredictedItems(item); + } else if (item.containerId == Favorites.CONTAINER_WIDGETS_PREDICTION) { + getWidgetPickerDataProvider().setWidgetRecommendations(item.items); } } @@ -689,15 +658,6 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, } } - @Override - protected void setTitle(@NonNull LauncherState state) { - if (state.hasFlag(FLAG_SKIP_STATE_ANNOUNCEMENT)) { - // Prevent accessibility title update announcement - getWindow().getAttributes().accessibilityTitle = getString(state.getTitle()); - } - super.setTitle(state); - } - @Override public TouchController[] createTouchControllers() { NavigationMode mode = DisplayController.getNavigationMode(this); @@ -732,9 +692,8 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, break; } - if (!getDeviceProfile().getDeviceProperties().isMultiWindowMode()) { - list.add(new StatusBarTouchController( - this, () -> this.isInState(LauncherState.NORMAL))); + if (!getDeviceProfile().isMultiWindowMode) { + list.add(new StatusBarTouchController(this)); } if (enableExpressiveDismissTaskMotion()) { @@ -778,10 +737,8 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, } catch (Throwable t) { mDeviceProfile.isPredictiveBackSwipe = false; } - if (ATLEAST_S_V2) { - if (ret) { - SystemUiProxy.INSTANCE.get(this).setLauncherAppIconSize(mDeviceProfile.iconSizePx); - } + if (ret) { + SystemUiProxy.INSTANCE.get(this).setLauncherAppIconSize(mDeviceProfile.iconSizePx); } return ret; } @@ -914,26 +871,11 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, @Override protected void onNewIntent(Intent intent) { - boolean intentHasGnc = GestureNavContract.canBuildFromIntent(intent); super.onNewIntent(intent); OverviewCommandHelper overviewCommandHelper = mTISBindHelper.getOverviewCommandHelper(); if (overviewCommandHelper != null) { overviewCommandHelper.clearPendingCommands(); } - if (RecentsWindowFlags.getEnableOverviewInWindow() && !intentHasGnc) { - RecentsWindowManager defaultRecentsWindowManager = - RecentsWindowManager.REPOSITORY_INSTANCE.get(this).get(DEFAULT_DISPLAY); - if (defaultRecentsWindowManager != null) { - defaultRecentsWindowManager.cleanupRecentsWindow(); - } - } - } - - @Override - protected void logOnNewIntent(boolean alreadyOnHome, boolean shouldMoveToDefaultScreen, - String action, boolean internalStateHandled) { - OverviewCommandHelperProtoLogProxy.logOnNewIntent(alreadyOnHome, shouldMoveToDefaultScreen, - action, internalStateHandled); } public QuickstepTransitionManager getAppTransitionManager() { @@ -952,9 +894,7 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, @Override protected void handleGestureContract(Intent intent) { - if (GestureNavContract.isContractEnabled(intent) - && (FeatureFlags.SEPARATE_RECENTS_ACTIVITY.get() - || RecentsWindowFlags.getEnableOverviewInWindow())) { + if (FeatureFlags.SEPARATE_RECENTS_ACTIVITY.get()) { super.handleGestureContract(intent); } } @@ -984,8 +924,7 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, onTaskbarInAppDisplayProgressUpdate(progress, WIDGETS_PAGE_PROGRESS_INDEX); if (mEnableWidgetDepth) { getDepthController().widgetDepth.setValue(Utilities.mapToRange( - progress, 0f, 1f, 0f, - getDeviceProfile().getBottomSheetProfile().getBottomSheetDepth(), EMPHASIZED)); + progress, 0f, 1f, 0f, getDeviceProfile().bottomSheetDepth, EMPHASIZED)); } } @@ -1013,59 +952,57 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, @Override protected void registerBackDispatcher() { - if (Utilities.ATLEAST_U) { - getOnBackInvokedDispatcher().registerOnBackInvokedCallback( - OnBackInvokedDispatcher.PRIORITY_DEFAULT, - new FlingOnBackAnimationCallback() { + getOnBackInvokedDispatcher().registerOnBackInvokedCallback( + OnBackInvokedDispatcher.PRIORITY_DEFAULT, + new FlingOnBackAnimationCallback() { - @Nullable OnBackAnimationCallback mActiveOnBackAnimationCallback; - - @Override - public void onBackStartedCompat(@NonNull BackEvent backEvent) { - if (mActiveOnBackAnimationCallback != null) { - mActiveOnBackAnimationCallback.onBackCancelled(); - } - mActiveOnBackAnimationCallback = getOnBackAnimationCallback(); - mActiveOnBackAnimationCallback.onBackStarted(backEvent); - } + @Nullable OnBackAnimationCallback mActiveOnBackAnimationCallback; - @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE) - @Override - public void onBackInvokedCompat() { - // Recreate mActiveOnBackAnimationCallback if necessary to avoid NPE - // because: - // 1. b/260636433: In 3-button-navigation mode, onBackStarted() is not - // called on ACTION_DOWN before onBackInvoked() is called in ACTION_UP. - // 2. Launcher#onBackPressed() will call onBackInvoked() without calling - // onBackInvoked() beforehand. - if (mActiveOnBackAnimationCallback == null) { - mActiveOnBackAnimationCallback = getOnBackAnimationCallback(); - } - mActiveOnBackAnimationCallback.onBackInvoked(); - mActiveOnBackAnimationCallback = null; - TestLogging.recordEvent(TestProtocol.SEQUENCE_MAIN, "onBackInvoked"); - } - - @Override - public void onBackProgressedCompat(@NonNull BackEvent backEvent) { - if (!FeatureFlags.IS_STUDIO_BUILD - && mActiveOnBackAnimationCallback == null) { - return; - } - mActiveOnBackAnimationCallback.onBackProgressed(backEvent); - } - - @Override - public void onBackCancelledCompat() { - if (!FeatureFlags.IS_STUDIO_BUILD - && mActiveOnBackAnimationCallback == null) { - return; - } + @Override + public void onBackStartedCompat(@NonNull BackEvent backEvent) { + if (mActiveOnBackAnimationCallback != null) { mActiveOnBackAnimationCallback.onBackCancelled(); - mActiveOnBackAnimationCallback = null; } - }); - } + mActiveOnBackAnimationCallback = getOnBackAnimationCallback(); + mActiveOnBackAnimationCallback.onBackStarted(backEvent); + } + + @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE) + @Override + public void onBackInvokedCompat() { + // Recreate mActiveOnBackAnimationCallback if necessary to avoid NPE + // because: + // 1. b/260636433: In 3-button-navigation mode, onBackStarted() is not + // called on ACTION_DOWN before onBackInvoked() is called in ACTION_UP. + // 2. Launcher#onBackPressed() will call onBackInvoked() without calling + // onBackInvoked() beforehand. + if (mActiveOnBackAnimationCallback == null) { + mActiveOnBackAnimationCallback = getOnBackAnimationCallback(); + } + mActiveOnBackAnimationCallback.onBackInvoked(); + mActiveOnBackAnimationCallback = null; + TestLogging.recordEvent(TestProtocol.SEQUENCE_MAIN, "onBackInvoked"); + } + + @Override + public void onBackProgressedCompat(@NonNull BackEvent backEvent) { + if (!FeatureFlags.IS_STUDIO_BUILD + && mActiveOnBackAnimationCallback == null) { + return; + } + mActiveOnBackAnimationCallback.onBackProgressed(backEvent); + } + + @Override + public void onBackCancelledCompat() { + if (!FeatureFlags.IS_STUDIO_BUILD + && mActiveOnBackAnimationCallback == null) { + return; + } + mActiveOnBackAnimationCallback.onBackCancelled(); + mActiveOnBackAnimationCallback = null; + } + }); } private void onTaskbarInAppDisplayProgressUpdate(float progress, int flag) { @@ -1332,7 +1269,7 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, } activityOptions.options.setLaunchDisplayId( (v != null && v.getDisplay() != null) ? v.getDisplay().getDisplayId() - : DEFAULT_DISPLAY); + : Display.DEFAULT_DISPLAY); Utilities.allowBGLaunch(activityOptions.options); return activityOptions; } @@ -1353,8 +1290,8 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, @Override @BinderThread - public void enterStageSplitFromRunningApp(boolean leftOrTop, int displayId) { - mSplitWithKeyboardShortcutController.enterStageSplit(leftOrTop, displayId); + public void enterStageSplitFromRunningApp(boolean leftOrTop) { + mSplitWithKeyboardShortcutController.enterStageSplit(leftOrTop); } @Override @@ -1443,11 +1380,6 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, .isInDesktopModeAndNotInOverview(getDisplayId()); } - @Override - public boolean shouldShowHomeBehindDesktop() { - return DesktopState.fromContext(this).getShouldShowHomeBehindDesktop(); - } - @Override public void dispatchDeviceProfileChanged() { super.dispatchDeviceProfileChanged(); @@ -1470,9 +1402,7 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT, /* callback= */ success -> mSplitSelectStateController.resetState(), /* freezeTaskList= */ false, - splitTask.getSplitBounds() == null - ? SNAP_TO_2_50_50 - : splitTask.getSplitBounds().snapPosition, + splitTask.getSplitBounds().snapPosition, remoteTransition); } @@ -1629,20 +1559,4 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer, public void returnToHomescreen() { getStateManager().goToState(LauncherState.NORMAL); } - - @Override - public int getOverviewBlurStyleResId() { - return isOverviewBackgroundBlurEnabled() ? R.style.OverviewBlurStyle - : R.style.OverviewBlurFallbackStyle; - } - - @Override - public LauncherActivityInterface getContainerInterface() { - return LauncherActivityInterface.INSTANCE; - } - - @Override - public SplitSelectStateController getSplitSelectStateController() { - return mSplitSelectStateController; - } } diff --git a/quickstep/src/com/android/launcher3/uioverrides/QuickstepWidgetHolder.java b/quickstep/src/com/android/launcher3/uioverrides/QuickstepWidgetHolder.java index 846c850a18..0d5ff2b67e 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/QuickstepWidgetHolder.java +++ b/quickstep/src/com/android/launcher3/uioverrides/QuickstepWidgetHolder.java @@ -20,7 +20,6 @@ import static com.android.launcher3.uioverrides.QuickstepAppWidgetHostProvider.g import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.widget.ListenableAppWidgetHost.getWidgetHolderExecutor; -import android.appwidget.AppWidgetEvent; import android.appwidget.AppWidgetHost; import android.appwidget.AppWidgetHostView; import android.appwidget.AppWidgetProviderInfo; @@ -45,8 +44,6 @@ import dagger.assisted.AssistedInject; import java.util.Collections; import java.util.Set; import java.util.WeakHashMap; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.ExecutionException; import java.util.function.BiConsumer; /** @@ -60,10 +57,6 @@ public final class QuickstepWidgetHolder extends LauncherWidgetHolder { AppWidgetHostView::updateAppWidget; private static final UpdateKey<Integer> KEY_VIEW_DATA_CHANGED = AppWidgetHostView::onViewDataChanged; - private static final UpdateKey<AppWidgetEvent.Builder> KEY_COLLECT_WIDGET_EVENT = - (view, event) -> { - event.merge(view.collectWidgetEvent()); - }; private static final SparseArray<QuickstepWidgetHolderListener> sListeners = new SparseArray<>(); @@ -273,25 +266,6 @@ public final class QuickstepWidgetHolder extends LauncherWidgetHolder { executeOnMainExecutor(KEY_VIEW_DATA_CHANGED, viewId); } - @Nullable - @Override - public AppWidgetEvent collectWidgetEvent() { - if (!android.appwidget.flags.Flags.engagementMetrics()) return null; - - CompletableFuture<AppWidgetEvent> future = new CompletableFuture<>(); - MAIN_EXECUTOR.execute(() -> { - AppWidgetEvent.Builder event = new AppWidgetEvent.Builder(); - mListeningHolders.forEach(holder -> - holder.onWidgetUpdate(mWidgetId, KEY_COLLECT_WIDGET_EVENT, event)); - future.complete(event.isEmpty() ? null : event.build()); - }); - try { - return future.get(); - } catch (InterruptedException | ExecutionException e) { - return null; - } - } - private <T> void executeOnMainExecutor(UpdateKey<T> key, T data) { MAIN_EXECUTOR.execute(() -> mListeningHolders.forEach(holder -> holder.onWidgetUpdate(mWidgetId, key, data))); diff --git a/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.kt b/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.kt index 927d94c2f6..c9f791c6ee 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.kt +++ b/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.kt @@ -21,6 +21,7 @@ import com.android.app.animation.Interpolators.FINAL_FRAME import com.android.app.animation.Interpolators.INSTANT import com.android.app.animation.Interpolators.LINEAR import com.android.launcher3.Flags.enableDesktopExplodedView +import com.android.launcher3.Flags.enableGridOnlyOverview import com.android.launcher3.Flags.enableLargeDesktopWindowingTile import com.android.launcher3.LauncherState import com.android.launcher3.anim.AnimatedFloat @@ -36,7 +37,6 @@ import com.android.launcher3.states.StateAnimationConfig.ANIM_OVERVIEW_SCALE import com.android.launcher3.states.StateAnimationConfig.ANIM_OVERVIEW_TRANSLATE_X import com.android.launcher3.states.StateAnimationConfig.ANIM_OVERVIEW_TRANSLATE_Y import com.android.launcher3.states.StateAnimationConfig.SKIP_OVERVIEW -import com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview import com.android.quickstep.util.AnimUtils import com.android.quickstep.views.AddDesktopButton import com.android.quickstep.views.ClearAllButton @@ -246,10 +246,7 @@ class RecentsViewStateController(private val launcher: QuickstepLauncher) : launcher.deviceProfile, ) - val timings = - AnimUtils.getDeviceOverviewToSplitTimings( - launcher.deviceProfile.getDeviceProperties().isTablet - ) + val timings = AnimUtils.getDeviceOverviewToSplitTimings(launcher.deviceProfile.isTablet) if (!goingToOverviewFromWorkspaceContextual) { // This animation is already done for the contextual case, don't redo it recentsView.createSplitSelectInitAnimation( diff --git a/quickstep/src/com/android/launcher3/uioverrides/SystemApiWrapper.kt b/quickstep/src/com/android/launcher3/uioverrides/SystemApiWrapper.kt index abe0e23432..f8e873a851 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/SystemApiWrapper.kt +++ b/quickstep/src/com/android/launcher3/uioverrides/SystemApiWrapper.kt @@ -23,11 +23,10 @@ import android.content.IIntentReceiver import android.content.IIntentSender import android.content.Intent import android.content.pm.ActivityInfo +import android.content.pm.ApplicationInfo import android.content.pm.LauncherActivityInfo import android.content.pm.LauncherApps import android.content.pm.ShortcutInfo -import android.graphics.Bitmap -import android.graphics.Rect import android.os.Build import android.os.Bundle import android.os.Flags.allowPrivateProfile @@ -35,26 +34,23 @@ import android.os.IBinder import android.os.UserHandle import android.os.UserManager import android.util.ArrayMap -import android.view.SurfaceControlViewHost import android.widget.Toast import android.window.RemoteTransition -import android.window.ScreenCapture -import com.android.launcher3.BaseActivity import androidx.annotation.RequiresApi import com.android.launcher3.Flags.enablePrivateSpace +import com.android.launcher3.Flags.enablePrivateSpaceInstallShortcut +import com.android.launcher3.Flags.privateSpaceAppInstallerButton import com.android.launcher3.Flags.privateSpaceSysAppsSeparation import com.android.launcher3.R import com.android.launcher3.Utilities import com.android.launcher3.dagger.ApplicationContext import com.android.launcher3.dagger.LauncherAppSingleton import com.android.launcher3.proxy.ProxyActivityStarter -import com.android.launcher3.uioverrides.touchcontrollers.StatusBarTouchController import com.android.launcher3.util.ApiWrapper import com.android.launcher3.util.Executors import com.android.launcher3.util.StartActivityParams import com.android.launcher3.util.UserIconInfo import com.android.quickstep.util.FadeOutRemoteTransition -import java.util.function.Supplier import javax.inject.Inject import app.lawnchair.LawnchairApp @@ -127,7 +123,10 @@ open class SystemApiWrapper @Inject constructor(@ApplicationContext context: Con override fun getAppMarketActivityIntent(packageName: String, user: UserHandle): Intent { return try { - if (allowPrivateProfile() && enablePrivateSpace()) + if ( + enablePrivateSpace() && + (privateSpaceAppInstallerButton() || enablePrivateSpaceInstallShortcut()) + ) ProxyActivityStarter.getLaunchIntent( mContext, StartActivityParams(null as PendingIntent?, 0).apply { @@ -153,7 +152,7 @@ open class SystemApiWrapper @Inject constructor(@ApplicationContext context: Con /** Returns an intent which can be used to open Private Space Settings. */ override fun getPrivateSpaceSettingsIntent(): Intent? { return try { - if (allowPrivateProfile() && enablePrivateSpace()) + if (enablePrivateSpace()) ProxyActivityStarter.getLaunchIntent( mContext, StartActivityParams(null as PendingIntent?, 0).apply { @@ -242,24 +241,11 @@ open class SystemApiWrapper @Inject constructor(@ApplicationContext context: Con } } - override fun createStatusBarTouchController( - launcher: BaseActivity, - isEnabledCheck: Supplier<Boolean>, - ): StatusBarTouchController? { - return StatusBarTouchController(launcher, isEnabledCheck) - } + override fun getApplicationInfoHash(appInfo: ApplicationInfo): String = + (appInfo.sourceDir?.hashCode() ?: 0).toString() + " " + appInfo.longVersionCode + + override fun getRoundIconRes(appInfo: ApplicationInfo) = appInfo.roundIconRes override fun isFileDrawable(shortcutInfo: ShortcutInfo) = shortcutInfo.hasIconFile() || shortcutInfo.hasIconUri() - - override fun captureSnapshot(host: SurfaceControlViewHost, width: Int, height: Int): Bitmap = - ScreenCapture.captureLayers( - ScreenCapture.LayerCaptureArgs.Builder(host.surfacePackage!!.surfaceControl) - .setSourceCrop(Rect(0, 0, width, height)) - .setAllowProtected(true) - .setHintForSeamlessTransition(true) - .build() - ) - .asBitmap() - .copy(Bitmap.Config.ARGB_8888, true) } diff --git a/quickstep/src/com/android/launcher3/uioverrides/states/AllAppsState.java b/quickstep/src/com/android/launcher3/uioverrides/states/AllAppsState.java index e2a624d4ca..8a44f76c70 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/states/AllAppsState.java +++ b/quickstep/src/com/android/launcher3/uioverrides/states/AllAppsState.java @@ -20,7 +20,6 @@ import static com.android.launcher3.Flags.enableScalingRevealHomeAnimation; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_ALLAPPS; import android.content.Context; -import android.graphics.Color; import com.android.internal.jank.Cuj; import com.android.launcher3.DeviceProfile; @@ -30,7 +29,6 @@ import com.android.launcher3.LauncherState; import com.android.launcher3.R; import com.android.launcher3.util.Themes; import com.android.launcher3.views.ActivityContext; -import com.android.launcher3.views.ScrimColors; import com.android.quickstep.util.BaseDepthController; import com.android.systemui.shared.system.InteractionJankMonitorWrapper; @@ -139,7 +137,7 @@ public class AllAppsState extends LauncherState { protected <DEVICE_PROFILE_CONTEXT extends Context & ActivityContext> float getDepthUnchecked(DEVICE_PROFILE_CONTEXT context) { if (context.getDeviceProfile().shouldShowAllAppsOnSheet()) { - return context.getDeviceProfile().getBottomSheetProfile().getBottomSheetDepth(); + return context.getDeviceProfile().bottomSheetDepth; } else { // The scrim fades in at approximately 50% of the swipe gesture. if (enableScalingRevealHomeAnimation()) { @@ -153,11 +151,6 @@ public class AllAppsState extends LauncherState { } } - @Override - public boolean shouldBlurWorkspace(LauncherState targetState) { - return targetState == ALL_APPS || targetState == NORMAL; - } - @Override public PageAlphaProvider getWorkspacePageAlphaProvider(Launcher launcher) { PageAlphaProvider superPageAlphaProvider = super.getWorkspacePageAlphaProvider(launcher); @@ -181,7 +174,8 @@ public class AllAppsState extends LauncherState { } private static boolean isWorkspaceVisible(DeviceProfile deviceProfile) { - return deviceProfile.getDeviceProperties().isTablet() || (Flags.allAppsSheetForHandheld() && Flags.allAppsBlur()); + // Currently we hide the workspace with the all apps blur flag for simplicity. + return deviceProfile.isTablet && !Flags.allAppsBlur(); } @Override @@ -204,24 +198,26 @@ public class AllAppsState extends LauncherState { @Override public boolean shouldFloatingSearchBarUsePillWhenUnfocused(Launcher launcher) { DeviceProfile dp = launcher.getDeviceProfile(); - return dp.getDeviceProperties().isPhone() && !dp.getDeviceProperties().isLandscape(); + return dp.isPhone && !dp.isLandscape; } @Override - public ScrimColors getWorkspaceScrimColor(Launcher launcher) { - int backgroundColor; + public LauncherState getHistoryForState(LauncherState previousState) { + return previousState == BACKGROUND_APP ? QUICK_SWITCH_FROM_HOME + : previousState == OVERVIEW ? OVERVIEW : NORMAL; + } + + @Override + public int getWorkspaceScrimColor(Launcher launcher) { if (!launcher.getDeviceProfile().shouldShowAllAppsOnSheet()) { - // Lawnchair-TODO-Colour: LawnchairUtilsKt.getAllAppsScrimColor(launcher) + materialColorSurfaceDim - // Always use an opaque scrim if there's no sheet. - backgroundColor = launcher.getResources().getColor(R.color.materialColorSurfaceDim); - } else if (!Flags.allAppsBlur()) { - // Lawnchair-TODO-Colour: LawnchairUtilsKt.getAllAppsScrimColor(launcher) + widgets_picker_scrim - // If there's a sheet but no blur, use the old scrim color. - backgroundColor = launcher.getResources().getColor(R.color.widgets_picker_scrim); - } else { // Lawnchair-TODO-Colour: LawnchairUtilsKt.getAllAppsScrimColor(launcher) + allAppsScrimColor - backgroundColor = Themes.getAttrColor(launcher, R.attr.allAppsScrimColor); + return Themes.getAttrColor(launcher, R.attr.allAppsScrimColor); } - return new ScrimColors(backgroundColor, /* foregroundColor */ Color.TRANSPARENT); + if (Flags.allAppsBlur()) { + // Lawnchair-TODO-Colour: LawnchairUtilsKt.getAllAppsScrimColor(launcher) + allAppsScrimColorOverBlur + return Themes.getAttrColor(launcher, R.attr.allAppsScrimColorOverBlur); + } + // Lawnchair-TODO-Colour: LawnchairUtilsKt.getAllAppsScrimColor(launcher) + widgets_picker_scrim + return launcher.getResources().getColor(R.color.widgets_picker_scrim); } } diff --git a/quickstep/src/com/android/launcher3/uioverrides/states/BackgroundAppState.java b/quickstep/src/com/android/launcher3/uioverrides/states/BackgroundAppState.java index 508643afd7..a5b1ee7b53 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/states/BackgroundAppState.java +++ b/quickstep/src/com/android/launcher3/uioverrides/states/BackgroundAppState.java @@ -15,6 +15,7 @@ */ package com.android.launcher3.uioverrides.states; +import static com.android.launcher3.Flags.enableDesktopWindowingCarouselDetach; import static com.android.launcher3.Flags.enableScalingRevealHomeAnimation; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_BACKGROUND; @@ -24,7 +25,6 @@ import android.graphics.Color; import com.android.launcher3.DeviceProfile; import com.android.launcher3.Launcher; import com.android.launcher3.allapps.AllAppsTransitionController; -import com.android.launcher3.views.ScrimColors; import com.android.quickstep.util.BaseDepthController; import com.android.quickstep.util.LayoutUtils; import com.android.quickstep.views.RecentsView; @@ -35,8 +35,7 @@ import com.android.quickstep.views.RecentsView; public class BackgroundAppState extends OverviewState { private static final int STATE_FLAGS = FLAG_DISABLE_RESTORE | FLAG_RECENTS_VIEW_VISIBLE - | FLAG_WORKSPACE_INACCESSIBLE | FLAG_NON_INTERACTIVE | FLAG_CLOSE_POPUPS - | FLAG_SKIP_STATE_ANNOUNCEMENT; + | FLAG_WORKSPACE_INACCESSIBLE | FLAG_NON_INTERACTIVE | FLAG_CLOSE_POPUPS; public BackgroundAppState(int id) { this(id, LAUNCHER_STATE_BACKGROUND); @@ -56,7 +55,7 @@ public class BackgroundAppState extends OverviewState { launcher, launcher.getDeviceProfile(), recentsView.getPagedOrientationHandler(), - recentsView.getContainerInterface()); + recentsView.getSizeStrategy()); AllAppsTransitionController controller = launcher.getAllAppsController(); float scrollRange = Math.max(controller.getShiftRange(), 1); float progressDelta = (transitionLength / scrollRange); @@ -92,6 +91,11 @@ public class BackgroundAppState extends OverviewState { return true; } + @Override + public boolean detachDesktopCarousel() { + return enableDesktopWindowingCarouselDetach(); + } + @Override public boolean showExplodedDesktopView() { return false; @@ -110,10 +114,8 @@ public class BackgroundAppState extends OverviewState { } @Override - public ScrimColors getWorkspaceScrimColor(Launcher launcher) { - return new ScrimColors( - /* backgroundColor= */ Color.TRANSPARENT, - /* foregroundColor= */ Color.TRANSPARENT); + public int getWorkspaceScrimColor(Launcher launcher) { + return Color.TRANSPARENT; } @Override diff --git a/quickstep/src/com/android/launcher3/uioverrides/states/OverviewModalTaskState.java b/quickstep/src/com/android/launcher3/uioverrides/states/OverviewModalTaskState.java index 7348fb2eda..ae82f82c01 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/states/OverviewModalTaskState.java +++ b/quickstep/src/com/android/launcher3/uioverrides/states/OverviewModalTaskState.java @@ -15,7 +15,7 @@ */ package com.android.launcher3.uioverrides.states; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_OVERVIEW; import android.graphics.Rect; diff --git a/quickstep/src/com/android/launcher3/uioverrides/states/OverviewState.java b/quickstep/src/com/android/launcher3/uioverrides/states/OverviewState.java index 3cc9431cef..fe8ab36fe2 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/states/OverviewState.java +++ b/quickstep/src/com/android/launcher3/uioverrides/states/OverviewState.java @@ -17,6 +17,7 @@ package com.android.launcher3.uioverrides.states; import static com.android.app.animation.Interpolators.DECELERATE_2; import static com.android.launcher3.Flags.enableDesktopExplodedView; +import static com.android.launcher3.Flags.enableOverviewBackgroundWallpaperBlur; import static com.android.launcher3.Flags.enableScalingRevealHomeAnimation; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_OVERVIEW; @@ -24,8 +25,6 @@ import android.content.Context; import android.graphics.Rect; import android.os.SystemProperties; -import androidx.core.graphics.ColorUtils; - import com.android.launcher3.DeviceProfile; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherState; @@ -33,11 +32,11 @@ import com.android.launcher3.R; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.Themes; import com.android.launcher3.views.ActivityContext; -import com.android.launcher3.views.ScrimColors; import com.android.quickstep.util.BaseDepthController; import com.android.quickstep.util.LayoutUtils; import com.android.quickstep.views.RecentsView; import com.android.quickstep.views.TaskView; +import com.android.systemui.shared.system.BlurUtils; import app.lawnchair.preferences.PreferenceManager; import app.lawnchair.theme.color.tokens.ColorTokens; @@ -88,7 +87,7 @@ public class OverviewState extends LauncherState { recentsView.getTaskSize(sTempRect); float scale; DeviceProfile deviceProfile = launcher.getDeviceProfile(); - if (deviceProfile.getDeviceProperties().isTwoPanels()) { + if (deviceProfile.isTwoPanels) { // In two panel layout, width does not include both panels or space between them, so // use height instead. We do not use height for handheld, as cell layout can be // shorter than a task and we want the workspace to scale down to task size. @@ -123,9 +122,9 @@ public class OverviewState extends LauncherState { int elements = CLEAR_ALL_BUTTON | OVERVIEW_ACTIONS | ADD_DESK_BUTTON; DeviceProfile dp = launcher.getDeviceProfile(); boolean showFloatingSearch; - if (dp.getDeviceProperties().isPhone()) { + if (dp.isPhone) { // Only show search in phone overview in portrait mode. - showFloatingSearch = !dp.getDeviceProperties().isLandscape(); + showFloatingSearch = !dp.isLandscape; } else { // Only show search in tablet overview if taskbar is not visible. showFloatingSearch = !dp.isTaskbarPresent || isTaskbarStashed(launcher); @@ -157,7 +156,7 @@ public class OverviewState extends LauncherState { @Override public boolean shouldFloatingSearchBarUsePillWhenUnfocused(Launcher launcher) { DeviceProfile dp = launcher.getDeviceProfile(); - return dp.getDeviceProperties().isPhone() && !dp.getDeviceProperties().isLandscape(); + return dp.isPhone && !dp.isLandscape; } @Override @@ -166,19 +165,22 @@ public class OverviewState extends LauncherState { } @Override - public ScrimColors getWorkspaceScrimColor(Launcher launcher) { + public int getWorkspaceScrimColor(Launcher launcher) { // Lawnchair-TODO-Colour: LawnchairUtilsKt.getAllAppsScrimColor(launcher) + allAppsScrimColorOverBlur // Lawnchair-TODO-Colour: LawnchairUtilsKt.getAllAppsScrimColor(launcher) + allAppsScrimColor - return new ScrimColors( - /* backgroundColor */ Themes.getAttrColor(launcher, R.attr.overviewScrimColor), - /* foregroundColor */ ColorUtils.compositeColors( - Themes.getAttrColor(launcher, R.attr.overviewScrimForegroundPrimary), - Themes.getAttrColor(launcher, R.attr.overviewScrimForegroundSecondary))); + return enableOverviewBackgroundWallpaperBlur() && BlurUtils.supportsBlursOnWindows() + ? Themes.getAttrColor(launcher, R.attr.overviewScrimColorOverBlur) + : Themes.getAttrColor(launcher, R.attr.overviewScrimColor); } @Override public boolean displayOverviewTasksAsGrid(DeviceProfile deviceProfile) { - return deviceProfile.getDeviceProperties().isTablet(); + return deviceProfile.isTablet; + } + + @Override + public boolean detachDesktopCarousel() { + return false; } @Override @@ -228,7 +230,7 @@ public class OverviewState extends LauncherState { public void onBackInvoked(Launcher launcher) { RecentsView recentsView = launcher.getOverviewPanel(); TaskView taskView = recentsView.getRunningTaskView(); - if (taskView != null && !taskView.isBeingDismissed()) { + if (taskView != null) { if (recentsView.isTaskViewFullyVisible(taskView)) { taskView.launchWithAnimation(); } else { diff --git a/quickstep/src/com/android/launcher3/uioverrides/states/QuickSwitchState.java b/quickstep/src/com/android/launcher3/uioverrides/states/QuickSwitchState.java index 4058b55637..dfad4096bc 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/states/QuickSwitchState.java +++ b/quickstep/src/com/android/launcher3/uioverrides/states/QuickSwitchState.java @@ -17,7 +17,12 @@ package com.android.launcher3.uioverrides.states; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_BACKGROUND; +import android.graphics.Color; + +import com.android.launcher3.DeviceProfile; import com.android.launcher3.Launcher; +import com.android.launcher3.R; +import com.android.launcher3.util.Themes; /** * State to indicate we are about to launch a recent task. Note that this state is only used when @@ -38,6 +43,19 @@ public class QuickSwitchState extends BackgroundAppState { return new ScaleAndTranslation(0.9f, 0, translationY); } + @Override + public int getWorkspaceScrimColor(Launcher launcher) { + if (launcher.areDesktopTasksVisible()) { + // No scrim while desktop tasks are visible + return Color.TRANSPARENT; + } + DeviceProfile dp = launcher.getDeviceProfile(); + if (dp.isTaskbarPresentInApps) { + return launcher.getColor(R.color.taskbar_background); + } + return Themes.getAttrColor(launcher, R.attr.overviewScrimColor); + } + @Override public float getVerticalProgress(Launcher launcher) { // Don't move all apps shelf while quick-switching (just let it fade). @@ -58,9 +76,4 @@ public class QuickSwitchState extends BackgroundAppState { public boolean isTaskbarAlignedWithHotseat(Launcher launcher) { return false; } - - @Override - public boolean detachDesktopCarousel() { - return true; - } } diff --git a/quickstep/src/com/android/launcher3/uioverrides/states/QuickstepAtomicAnimationFactory.java b/quickstep/src/com/android/launcher3/uioverrides/states/QuickstepAtomicAnimationFactory.java index 3a6de197ac..44f8bf1e07 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/states/QuickstepAtomicAnimationFactory.java +++ b/quickstep/src/com/android/launcher3/uioverrides/states/QuickstepAtomicAnimationFactory.java @@ -220,7 +220,7 @@ public class QuickstepAtomicAnimationFactory extends } else if (fromState == NORMAL && toState == ALL_APPS) { AllAppsSwipeController.applyNormalToAllAppsAnimConfig(mContainer, config); } else if (fromState == OVERVIEW && toState == OVERVIEW_SPLIT_SELECT) { - SplitAnimationTimings timings = mContainer.getDeviceProfile().getDeviceProperties().isTablet() + SplitAnimationTimings timings = mContainer.getDeviceProfile().isTablet ? SplitAnimationTimings.TABLET_OVERVIEW_TO_SPLIT : SplitAnimationTimings.PHONE_OVERVIEW_TO_SPLIT; config.setInterpolator(ANIM_OVERVIEW_ACTIONS_FADE, clampToProgress(LINEAR, diff --git a/quickstep/src/com/android/launcher3/uioverrides/states/SplitScreenSelectState.java b/quickstep/src/com/android/launcher3/uioverrides/states/SplitScreenSelectState.java index c2ec17ab3f..2631fbf0b6 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/states/SplitScreenSelectState.java +++ b/quickstep/src/com/android/launcher3/uioverrides/states/SplitScreenSelectState.java @@ -43,7 +43,7 @@ public class SplitScreenSelectState extends OverviewState { @Override public int getTransitionDuration(ActivityContext context, boolean isToState) { - if (isToState && context.getDeviceProfile().getDeviceProperties().isTablet()) { + if (isToState && context.getDeviceProfile().isTablet) { return SplitAnimationTimings.TABLET_ENTER_DURATION; } else if (isToState) { return SplitAnimationTimings.PHONE_ENTER_DURATION; diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java index dce158f63f..a4f8b8135c 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java @@ -28,7 +28,6 @@ import static com.android.launcher3.allapps.AllAppsTransitionController.ALL_APPS import static com.android.launcher3.anim.AnimatorListeners.forSuccessCallback; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_HOME_GESTURE; import static com.android.launcher3.util.NavigationMode.THREE_BUTTONS; -import static com.android.launcher3.util.ScrollableLayoutManager.PREDICTIVE_BACK_MIN_SCALE; import static com.android.systemui.shared.system.ActivityManagerWrapper.CLOSE_SYSTEM_WINDOWS_REASON_RECENTS; import android.animation.AnimatorSet; @@ -45,6 +44,7 @@ import com.android.launcher3.allapps.AllAppsTransitionController; import com.android.launcher3.anim.AnimatorPlaybackController; import com.android.launcher3.anim.PendingAnimation; import com.android.launcher3.compat.AccessibilityManagerCompat; +import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.statemanager.StateManager; import com.android.launcher3.touch.SingleAxisSwipeDetector; import com.android.launcher3.util.DisplayController; @@ -136,7 +136,7 @@ public class NavBarToHomeTouchController implements TouchController, } private float getShiftRange() { - return mLauncher.getDeviceProfile().getDeviceProperties().getHeightPx(); + return mLauncher.getDeviceProfile().heightPx; } @Override @@ -157,16 +157,10 @@ public class NavBarToHomeTouchController implements TouchController, AbstractFloatingView.closeOpenContainer(mLauncher, AbstractFloatingView.TYPE_TASK_MENU); } else if (mStartState == ALL_APPS) { AllAppsTransitionController allAppsController = mLauncher.getAllAppsController(); - if (mLauncher.getDeviceProfile().shouldShowAllAppsOnSheet()) { - allAppsController.setShouldScaleHeader(true); - builder.addAnimatedFloat(allAppsController.getAllAppScale(), 1f, - PREDICTIVE_BACK_MIN_SCALE, PULLBACK_INTERPOLATOR); - } else { - builder.setFloat(allAppsController, ALL_APPS_PULL_BACK_TRANSLATION, - -mPullbackDistance, PULLBACK_INTERPOLATOR); - builder.setFloat(allAppsController, ALL_APPS_PULL_BACK_ALPHA, - 0.5f, PULLBACK_INTERPOLATOR); - } + builder.setFloat(allAppsController, ALL_APPS_PULL_BACK_TRANSLATION, + -mPullbackDistance, PULLBACK_INTERPOLATOR); + builder.setFloat(allAppsController, ALL_APPS_PULL_BACK_ALPHA, + 0.5f, PULLBACK_INTERPOLATOR); } AbstractFloatingView topView = AbstractFloatingView.getTopOpenView(mLauncher); if (topView != null) { diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java index 8d907f4183..ff726e65d4 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java @@ -17,7 +17,7 @@ package com.android.launcher3.uioverrides.touchcontrollers; import static com.android.app.animation.Interpolators.ACCELERATE_DECELERATE; -import static com.android.launcher3.LauncherAnimUtils.SCRIM_COLORS; +import static com.android.launcher3.LauncherAnimUtils.VIEW_BACKGROUND_COLOR; import static com.android.launcher3.LauncherAnimUtils.newSingleUseCancelListener; import static com.android.launcher3.LauncherState.ALL_APPS; import static com.android.launcher3.LauncherState.HINT_STATE; @@ -47,7 +47,6 @@ import com.android.launcher3.taskbar.LauncherTaskbarUIController; import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.VibratorWrapper; -import com.android.launcher3.views.ScrimColorsEvaluator; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.util.AnimatorControllerWithResistance; import com.android.quickstep.util.MotionPauseDetector; @@ -63,8 +62,6 @@ import java.util.function.BiConsumer; * first home screen instead of to Overview. */ public class NoButtonNavbarToOverviewTouchController extends PortraitStatesTouchController { - - public static final String TAG = "NoButtonNavbarToOverviewTouchController"; private static final float ONE_HANDED_ACTIVATED_SLOP_MULTIPLIER = 2.5f; // How much of the movement to use for translating overview after swipe and hold. @@ -87,7 +84,7 @@ public class NoButtonNavbarToOverviewTouchController extends PortraitStatesTouch private AnimatorPlaybackController mOverviewResistYAnim; // Normal to Hint animation has flag SKIP_OVERVIEW, so we update this scrim with this animator. - private ValueAnimator mNormalToHintOverviewScrimAnimator; + private ObjectAnimator mNormalToHintOverviewScrimAnimator; private final QuickstepLauncher mLauncher; private boolean mIsTrackpadSwipe; @@ -137,7 +134,7 @@ public class NoButtonNavbarToOverviewTouchController extends PortraitStatesTouch float progressMultiplier = super.initCurrentAnimation(); if (mToState == HINT_STATE) { // Track the drag across the entire height of the screen. - progressMultiplier = -1f / mLauncher.getDeviceProfile().getDeviceProperties().getHeightPx(); + progressMultiplier = -1f / mLauncher.getDeviceProfile().heightPx; } return progressMultiplier; } @@ -164,10 +161,9 @@ public class NoButtonNavbarToOverviewTouchController extends PortraitStatesTouch } if (mFromState == NORMAL && mToState == HINT_STATE) { - mNormalToHintOverviewScrimAnimator = ObjectAnimator.ofObject( + mNormalToHintOverviewScrimAnimator = ObjectAnimator.ofArgb( mLauncher.getScrimView(), - SCRIM_COLORS, - ScrimColorsEvaluator.INSTANCE, + VIEW_BACKGROUND_COLOR, mFromState.getWorkspaceScrimColor(mLauncher), mToState.getWorkspaceScrimColor(mLauncher)); } @@ -176,11 +172,6 @@ public class NoButtonNavbarToOverviewTouchController extends PortraitStatesTouch mOverviewResistYAnim = null; } - @Override - public String dump() { - return TAG; - } - @Override protected void updateProgress(float fraction) { super.updateProgress(fraction); diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java index 416c8ab4fd..58b274a47c 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java @@ -51,7 +51,6 @@ import static com.android.launcher3.util.VibratorWrapper.OVERVIEW_HAPTIC; import static com.android.launcher3.util.window.RefreshRateTracker.getSingleFrameMs; import static com.android.quickstep.views.RecentsView.ADJACENT_PAGE_HORIZONTAL_OFFSET; import static com.android.quickstep.views.RecentsView.CONTENT_ALPHA; -import static com.android.quickstep.views.RecentsView.DESKTOP_CAROUSEL_DETACH_PROGRESS; import static com.android.quickstep.views.RecentsView.FULLSCREEN_PROGRESS; import static com.android.quickstep.views.RecentsView.RECENTS_SCALE_PROPERTY; import static com.android.quickstep.views.RecentsView.TASK_SECONDARY_TRANSLATION; @@ -130,13 +129,13 @@ public class NoButtonQuickSwitchTouchController implements TouchController, mLauncher = launcher; mSwipeDetector = new BothAxesSwipeDetector(mLauncher, this); mRecentsView = mLauncher.getOverviewPanel(); - mXRange = mLauncher.getDeviceProfile().getDeviceProperties().getWidthPx() / 2f; + mXRange = mLauncher.getDeviceProfile().widthPx / 2f; mYRange = LayoutUtils.getShelfTrackingDistance( mLauncher, mLauncher.getDeviceProfile(), mRecentsView.getPagedOrientationHandler(), - mRecentsView.getContainerInterface()); - mMaxYProgress = mLauncher.getDeviceProfile().getDeviceProperties().getHeightPx() / mYRange; + mRecentsView.getSizeStrategy()); + mMaxYProgress = mLauncher.getDeviceProfile().heightPx / mYRange; mMotionPauseDetector = new MotionPauseDetector(mLauncher); mMotionPauseMinDisplacement = mLauncher.getResources().getDimension( R.dimen.motion_pause_detector_min_displacement_from_app); @@ -261,8 +260,6 @@ public class NoButtonQuickSwitchTouchController implements TouchController, RECENTS_SCALE_PROPERTY.set(mRecentsView, fromState.getOverviewScaleAndOffset(mLauncher)[0]); ADJACENT_PAGE_HORIZONTAL_OFFSET.set(mRecentsView, 1f); TASK_THUMBNAIL_SPLASH_ALPHA.set(mRecentsView, fromState.showTaskThumbnailSplash() ? 1f : 0); - DESKTOP_CAROUSEL_DETACH_PROGRESS.set(mRecentsView, - fromState.detachDesktopCarousel() ? 1f : 0); mRecentsView.setContentAlpha(1); mRecentsView.setFullscreenProgress(fromState.getOverviewFullscreenProgress()); mLauncher.getActionsView().getVisibilityAlpha().updateValue( @@ -278,9 +275,8 @@ public class NoButtonQuickSwitchTouchController implements TouchController, xAnim.setFloat(mRecentsView, ADJACENT_PAGE_HORIZONTAL_OFFSET, scaleAndOffset[1], LINEAR); // Use QuickSwitchState instead of OverviewState to determine scrim color, // since we need to take potential taskbar into account. - xAnim.setScrimColors(mLauncher.getScrimView(), - QUICK_SWITCH_FROM_HOME.getWorkspaceScrimColor(mLauncher), - LINEAR); + xAnim.setViewBackgroundColor(mLauncher.getScrimView(), + QUICK_SWITCH_FROM_HOME.getWorkspaceScrimColor(mLauncher), LINEAR); if (!mRecentsView.hasTaskViews()) { xAnim.addFloat(mRecentsView, CONTENT_ALPHA, 0f, 1f, LINEAR); } diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/PortraitStatesTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/PortraitStatesTouchController.java index 22055821fa..a74b350a64 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/PortraitStatesTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/PortraitStatesTouchController.java @@ -26,7 +26,6 @@ import android.view.MotionEvent; import com.android.app.animation.Interpolators; import com.android.internal.jank.Cuj; import com.android.launcher3.DeviceProfile; -import com.android.launcher3.Flags; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherState; import com.android.launcher3.allapps.AllAppsTransitionController; @@ -34,7 +33,6 @@ import com.android.launcher3.states.StateAnimationConfig; import com.android.launcher3.touch.AbstractStateChangeTouchController; import com.android.launcher3.touch.AllAppsSwipeController; import com.android.launcher3.touch.SingleAxisSwipeDetector; -import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.launcher3.uioverrides.states.OverviewState; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.util.LayoutUtils; @@ -149,7 +147,7 @@ public class PortraitStatesTouchController extends AbstractStateChangeTouchContr mLauncher, mLauncher.getDeviceProfile(), recentsView.getPagedOrientationHandler(), - recentsView.getContainerInterface()); + recentsView.getSizeStrategy()); } else { mCurrentAnimation = mLauncher.getStateManager() .createAnimationToNewWorkspace(mToState, config); @@ -218,11 +216,6 @@ public class PortraitStatesTouchController extends AbstractStateChangeTouchContr @Override protected void onReinitToState(LauncherState newToState) { super.onReinitToState(newToState); - if (Flags.allAppsBlur() && mLauncher.isAllAppsBackgroundBlurEnabled() - && newToState == ALL_APPS) { - // About to start blurring during swipe to All Apps; prepare the renderer. - ((QuickstepLauncher) mLauncher).getDepthController().setEarlyWakeup(true); - } if (newToState != ALL_APPS) { InteractionJankMonitorWrapper.cancel(Cuj.CUJ_LAUNCHER_OPEN_ALL_APPS); } diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/QuickSwitchTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/QuickSwitchTouchController.java index 14896e53c7..f582324f23 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/QuickSwitchTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/QuickSwitchTouchController.java @@ -161,6 +161,6 @@ public class QuickSwitchTouchController extends AbstractStateChangeTouchControll @Override protected float getShiftRange() { - return mLauncher.getDeviceProfile().getDeviceProperties().getWidthPx() / 2f; + return mLauncher.getDeviceProfile().widthPx / 2f; } } diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/StatusBarTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/StatusBarTouchController.java index 9d501ed116..16647a90b7 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/StatusBarTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/StatusBarTouchController.java @@ -24,25 +24,24 @@ import static android.view.MotionEvent.ACTION_UP; import static android.view.WindowManager.LayoutParams.FLAG_SLIPPERY; import static com.android.launcher3.MotionEventsUtils.isTrackpadScroll; -import static com.android.launcher3.Utilities.shouldEnableMouseInteractionChanges; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_SWIPE_DOWN_WORKSPACE_NOTISHADE_OPEN; import android.graphics.PointF; import android.util.SparseArray; -import android.view.InputDevice; import android.view.MotionEvent; import android.view.ViewConfiguration; import android.view.Window; import android.view.WindowManager; import com.android.launcher3.AbstractFloatingView; -import com.android.launcher3.BaseActivity; import com.android.launcher3.DeviceProfile; +import com.android.launcher3.Launcher; +import com.android.launcher3.LauncherState; import com.android.launcher3.Utilities; import com.android.launcher3.util.TouchController; import com.android.quickstep.SystemUiProxy; -import java.util.function.Supplier; +import java.io.PrintWriter; import java.lang.reflect.InvocationTargetException; import app.lawnchair.LawnchairAppKt; @@ -57,30 +56,29 @@ public class StatusBarTouchController implements TouchController { private static final String TAG = "StatusBarController"; - private final BaseActivity mLauncher; + private final Launcher mLauncher; private final SystemUiProxy mSystemUiProxy; private final float mTouchSlop; private int mLastAction; private final SparseArray<PointF> mDownEvents; - private final Supplier<Boolean> mIsEnabledCheck; /* If {@code false}, this controller should not handle the input {@link MotionEvent}.*/ private boolean mCanIntercept; - public StatusBarTouchController(BaseActivity l, Supplier<Boolean> isEnabledCheck) { + public StatusBarTouchController(Launcher l) { mLauncher = l; mSystemUiProxy = SystemUiProxy.INSTANCE.get(mLauncher); // Guard against TAPs by increasing the touch slop. mTouchSlop = 2 * ViewConfiguration.get(l).getScaledTouchSlop(); mDownEvents = new SparseArray<>(); - mIsEnabledCheck = isEnabledCheck; } @Override - public String dump() { - return "mCanIntercept:" + mCanIntercept - + " , mLastAction:" + MotionEvent.actionToString(mLastAction) - + " , mSysUiProxy available:" + SystemUiProxy.INSTANCE.get(mLauncher).isActive(); + public void dump(String prefix, PrintWriter writer) { + writer.println(prefix + "mCanIntercept:" + mCanIntercept); + writer.println(prefix + "mLastAction:" + MotionEvent.actionToString(mLastAction)); + writer.println(prefix + "mSysUiProxy available:" + + SystemUiProxy.INSTANCE.get(mLauncher).isActive()); } private void dispatchTouchEvent(MotionEvent ev) { @@ -167,11 +165,9 @@ public class StatusBarTouchController implements TouchController { } private boolean canInterceptTouch(MotionEvent ev) { - if (isTrackpadScroll(ev) || !mIsEnabledCheck.get() + if (isTrackpadScroll(ev) || !mLauncher.isInState(LauncherState.NORMAL) || AbstractFloatingView.getTopOpenViewWithType(mLauncher, - AbstractFloatingView.TYPE_STATUS_BAR_SWIPE_DOWN_DISALLOW) != null || ( - shouldEnableMouseInteractionChanges(mLauncher.asContext()) - && ev.getSource() == InputDevice.SOURCE_MOUSE)) { + AbstractFloatingView.TYPE_STATUS_BAR_SWIPE_DOWN_DISALLOW) != null) { return false; } else { // For NORMAL state, only listen if the event originated above the navbar height diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewDismissTouchController.kt b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewDismissTouchController.kt index a85f706f69..06e6734a37 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewDismissTouchController.kt +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewDismissTouchController.kt @@ -28,41 +28,23 @@ import com.android.launcher3.Utilities.boundToRange import com.android.launcher3.Utilities.debugLog import com.android.launcher3.Utilities.isRtl import com.android.launcher3.Utilities.mapToRange -import com.android.launcher3.statemanager.BaseState -import com.android.launcher3.statemanager.StateManager.StateListener -import com.android.launcher3.statemanager.StatefulContainer import com.android.launcher3.touch.SingleAxisSwipeDetector import com.android.launcher3.util.MSDLPlayerWrapper import com.android.launcher3.util.TouchController -import com.android.mechanics.spec.Breakpoint -import com.android.mechanics.spec.Breakpoint.Companion.maxLimit -import com.android.mechanics.spec.Breakpoint.Companion.minLimit -import com.android.mechanics.spec.BreakpointKey -import com.android.mechanics.spec.DirectionalMotionSpec -import com.android.mechanics.spec.Guarantee -import com.android.mechanics.spec.InputDirection -import com.android.mechanics.spec.Mapping -import com.android.mechanics.spec.MotionSpec -import com.android.mechanics.spring.SpringParameters -import com.android.mechanics.view.DistanceGestureContext -import com.android.mechanics.view.ViewMotionValue -import com.android.quickstep.views.RecentsDismissUtils import com.android.quickstep.views.RecentsView import com.android.quickstep.views.RecentsView.RECENTS_SCALE_PROPERTY import com.android.quickstep.views.RecentsViewContainer import com.android.quickstep.views.TaskView import com.google.android.msdl.data.model.MSDLToken import kotlin.math.abs -import kotlin.math.ceil /** Touch controller for handling task view card dismiss swipes */ -class TaskViewDismissTouchController<CONTAINER, T : BaseState<T>>( +class TaskViewDismissTouchController<CONTAINER>( private val container: CONTAINER, private val taskViewRecentsTouchContext: TaskViewRecentsTouchContext, ) : TouchController, SingleAxisSwipeDetector.Listener where CONTAINER : Context, -CONTAINER : RecentsViewContainer, -CONTAINER : StatefulContainer<T> { +CONTAINER : RecentsViewContainer { private val recentsView: RecentsView<*, *> = container.getOverviewPanel() private val detector: SingleAxisSwipeDetector = SingleAxisSwipeDetector( @@ -72,37 +54,17 @@ CONTAINER : StatefulContainer<T> { ) private val isRtl = isRtl(container.resources) private val upDirection: Int = recentsView.pagedOrientationHandler.getUpDirection(isRtl) - private val maxUndershoot = - container.resources.getDimension(R.dimen.task_dismiss_max_undershoot) - private val detachThreshold = - container.resources.getDimension(R.dimen.task_dismiss_detach_threshold) - private val stateListener = - object : StateListener<T> { - override fun onStateTransitionStart(toState: T) { - springAnimation?.cancel() - clearState() - } - } + private val tempTaskThumbnailBounds = Rect() private var taskBeingDragged: TaskView? = null - private var taskDragDisplacementValue: ViewMotionValue? = null - private var springAnimation: RecentsDismissUtils.SpringSet? = null + private var springAnimation: SpringAnimation? = null private var dismissLength: Int = 0 private var verticalFactor: Int = 0 private var hasDismissThresholdHapticRun = false private var initialDisplacement: Float = 0f private var recentsScaleAnimation: SpringAnimation? = null - private var canInterceptTouch = false - private var isDismissing = false - - init { - container.getStateManager().addStateListener(stateListener) - } - - override fun onTouchControllerDestroyed() { - container.getStateManager().removeStateListener(stateListener) - } + private var isBlockedDuringDismissal = false private fun canInterceptTouch(ev: MotionEvent): Boolean = when { @@ -128,12 +90,6 @@ CONTAINER : StatefulContainer<T> { false } - // Do not allow dismiss while recents is scrolling. - !recentsView.scroller.isFinished -> { - debugLog(TAG, "Not intercepting touch, recents scrolling.") - false - } - else -> taskViewRecentsTouchContext.isRecentsInteractive.also { isRecentsInteractive -> if (!isRecentsInteractive) { @@ -143,22 +99,15 @@ CONTAINER : StatefulContainer<T> { } override fun onControllerInterceptTouchEvent(ev: MotionEvent): Boolean { - // On consecutive events, end animation early so user can dismiss next task. - springAnimation?.speedUpSpringsToEnd() - if ((ev.action == MotionEvent.ACTION_UP || ev.action == MotionEvent.ACTION_CANCEL)) { clearState() } if (ev.action == MotionEvent.ACTION_DOWN) { - canInterceptTouch = onActionDown(ev) - if (!canInterceptTouch) { + if (!onActionDown(ev)) { return false } } - // Ignore other actions if touch intercepting has not been enabled in an ACTION_DOWN event. - if (!canInterceptTouch) { - return false - } + onControllerTouchEvent(ev) val upDirectionIsPositive = upDirection == SingleAxisSwipeDetector.DIRECTION_POSITIVE val wasInitialTouchUp = @@ -170,87 +119,42 @@ CONTAINER : StatefulContainer<T> { override fun onControllerTouchEvent(ev: MotionEvent?): Boolean = detector.onTouchEvent(ev) private fun onActionDown(ev: MotionEvent): Boolean { + springAnimation?.cancel() + recentsScaleAnimation?.cancel() if (!canInterceptTouch(ev)) { return false } taskBeingDragged = - recentsView.taskViews.firstOrNull { - recentsView.isTaskViewVisible(it) && container.dragLayer.isEventOverView(it, ev) - } - // If event is not over a taskView, check if it would have been either over the - // currently dismissing task being dragged, or over where the next task will be. - ?: recentsView.taskViews.firstOrNull { taskView -> - if (!recentsView.isTaskViewVisible(taskView)) return@firstOrNull false - container.dragLayer.getDescendantRectRelativeToSelf( - taskView, - tempTaskThumbnailBounds, - ) - if (taskView == taskBeingDragged && !isDismissing) { - val secondaryTranslation = - -taskView.secondaryDismissTranslationProperty.get(taskView).toInt() - recentsView.pagedOrientationHandler.extendRectForSecondaryTranslation( - tempTaskThumbnailBounds, - secondaryTranslation, - ) - } else { - val primaryTranslation = - recentsView.taskViewsDismissPrimaryTranslations[taskView] ?: 0 - recentsView.pagedOrientationHandler.extendRectForPrimaryTranslation( - tempTaskThumbnailBounds, - primaryTranslation, - ) - } - tempTaskThumbnailBounds.contains(ev.x.toInt(), ev.y.toInt()) + recentsView.taskViews + .firstOrNull { + recentsView.isTaskViewVisible(it) && container.dragLayer.isEventOverView(it, ev) + } + ?.also { + val secondaryLayerDimension = + recentsView.pagedOrientationHandler.getSecondaryDimension( + container.dragLayer + ) + // Dismiss length as bottom of task so it is fully off screen when dismissed. + it.getThumbnailBounds(tempTaskThumbnailBounds, relativeToDragLayer = true) + dismissLength = + recentsView.pagedOrientationHandler.getTaskDismissLength( + secondaryLayerDimension, + tempTaskThumbnailBounds, + ) + verticalFactor = + recentsView.pagedOrientationHandler.getTaskDismissVerticalDirection() } - - if (taskBeingDragged == null) { - debugLog(TAG, "Not intercepting touch, null dragged task.") - return false - } - val secondaryLayerDimension = - recentsView.pagedOrientationHandler.getSecondaryDimension(container.dragLayer) - // Dismiss length as bottom of task so it is fully off screen when dismissed. - // Take into account the recents scale when fully zoomed out on dismiss. - taskBeingDragged?.getThumbnailBounds(tempTaskThumbnailBounds, relativeToDragLayer = true) - dismissLength = - ceil( - recentsView.pagedOrientationHandler.getTaskDismissLength( - secondaryLayerDimension, - tempTaskThumbnailBounds, - ) / RECENTS_SCALE_ON_DISMISS_SUCCESS - ) - .toInt() - verticalFactor = recentsView.pagedOrientationHandler.getTaskDismissVerticalDirection() - taskBeingDragged?.isBeingDraggedForDismissal = true - detector.setDetectableScrollConditions(upDirection, /* ignoreSlop= */ false) return true } override fun onDragStart(start: Boolean, startDisplacement: Float) { + if (isBlockedDuringDismissal) return val taskBeingDragged = taskBeingDragged ?: return debugLog(TAG, "Handling touch event.") initialDisplacement = taskBeingDragged.secondaryDismissTranslationProperty.get(taskBeingDragged) - taskDragDisplacementValue = - generateMotionValue( - initialDisplacement, - detachThreshold * verticalFactor, - container.asContext(), - ) { currentDisplacement -> - taskBeingDragged.secondaryDismissTranslationProperty.setValue( - taskBeingDragged, - currentDisplacement, - ) - if (taskBeingDragged.isRunningTask && recentsView.enableDrawingLiveTile) { - recentsView.runActionOnRemoteHandles { remoteTargetHandle -> - remoteTargetHandle.taskViewSimulator.taskSecondaryTranslation.value = - currentDisplacement - } - recentsView.redrawLiveTile() - } - } // Add a tiny bit of translation Z, so that it draws on top of other views. This is relevant // (e.g.) when we dismiss a task by sliding it upward: if there is a row of icons above, we @@ -259,26 +163,36 @@ CONTAINER : StatefulContainer<T> { } override fun onDrag(displacement: Float): Boolean { - taskBeingDragged ?: return false + if (isBlockedDuringDismissal) return true + val taskBeingDragged = taskBeingDragged ?: return false val currentDisplacement = displacement + initialDisplacement val boundedDisplacement = boundToRange(abs(currentDisplacement), 0f, dismissLength.toFloat()) // When swiping below origin, allow slight undershoot to simulate resisting the movement. - val isAboveOrigin = - recentsView.pagedOrientationHandler.isGoingUp(currentDisplacement, isRtl) val totalDisplacement = - if (isAboveOrigin) boundedDisplacement * verticalFactor + if (recentsView.pagedOrientationHandler.isGoingUp(currentDisplacement, isRtl)) + boundedDisplacement * verticalFactor else mapToRange( boundedDisplacement, 0f, dismissLength.toFloat(), 0f, - maxUndershoot, + container.resources.getDimension(R.dimen.task_dismiss_max_undershoot), DECELERATE, ) * -verticalFactor + taskBeingDragged.secondaryDismissTranslationProperty.setValue( + taskBeingDragged, + totalDisplacement, + ) + if (taskBeingDragged.isRunningTask && recentsView.enableDrawingLiveTile) { + recentsView.runActionOnRemoteHandles { remoteTargetHandle -> + remoteTargetHandle.taskViewSimulator.taskSecondaryTranslation.value = + totalDisplacement + } + recentsView.redrawLiveTile() + } val dismissFraction = displacement / (dismissLength * verticalFactor).toFloat() - taskDragDisplacementValue?.input = totalDisplacement RECENTS_SCALE_PROPERTY.setValue(recentsView, getRecentsScale(dismissFraction)) playDismissThresholdHaptic(displacement) return true @@ -305,9 +219,8 @@ CONTAINER : StatefulContainer<T> { } override fun onDragEnd(velocity: Float) { + if (isBlockedDuringDismissal) return val taskBeingDragged = taskBeingDragged ?: return - taskDragDisplacementValue?.dispose() - taskBeingDragged.isBeingDraggedForDismissal = false val currentDisplacement = taskBeingDragged.secondaryDismissTranslationProperty.get(taskBeingDragged) @@ -316,23 +229,23 @@ CONTAINER : StatefulContainer<T> { val velocityIsGoingUp = recentsView.pagedOrientationHandler.isGoingUp(velocity, isRtl) val isFlingingTowardsDismiss = detector.isFling(velocity) && velocityIsGoingUp val isFlingingTowardsRestState = detector.isFling(velocity) && !velocityIsGoingUp - isDismissing = + val isDismissing = isFlingingTowardsDismiss || (isBeyondDismissThreshold && !isFlingingTowardsRestState) - val dismissThreshold = (DISMISS_THRESHOLD_FRACTION * dismissLength * verticalFactor).toInt() - val finalPosition = if (isDismissing) (dismissLength * verticalFactor).toFloat() else 0f springAnimation = - recentsView.runTaskDismissSettlingSpringAnimation( - taskBeingDragged, - isDismissing, - RecentsDismissUtils.DismissedTaskData( - startVelocity = velocity, - dismissLength = dismissLength, - finalPosition = finalPosition, - dismissThreshold = dismissThreshold, - ), - /* shouldRemoveTaskView= */ isDismissing, - /* isSplitSelection= */ false, - ) + recentsView + .createTaskDismissSettlingSpringAnimation( + taskBeingDragged, + velocity, + isDismissing, + dismissLength, + this::clearState, + ) + .apply { + animateToFinalPosition( + if (isDismissing) (dismissLength * verticalFactor).toFloat() else 0f + ) + } + isBlockedDuringDismissal = true recentsScaleAnimation = recentsView.animateRecentsScale(RECENTS_SCALE_DEFAULT).addEndListener { _, _, _, _ -> recentsScaleAnimation = null @@ -342,11 +255,10 @@ CONTAINER : StatefulContainer<T> { private fun clearState() { detector.finishedScrolling() detector.setDetectableScrollConditions(0, false) - taskBeingDragged?.resetViewTransforms() + taskBeingDragged?.translationZ = 0f taskBeingDragged = null springAnimation = null - taskDragDisplacementValue = null - isDismissing = false + isBlockedDuringDismissal = false } private fun getRecentsScale(dismissFraction: Float): Float { @@ -388,43 +300,6 @@ CONTAINER : StatefulContainer<T> { } } - private fun generateMotionValue( - initialDisplacement: Float, - detachThreshold: Float, - context: Context, - updateCallback: (Float) -> Unit, - ): ViewMotionValue { - val direction = if (initialDisplacement < 0) InputDirection.Max else InputDirection.Min - val distanceGestureContext = - DistanceGestureContext.create(context, initialDisplacement, direction) - val viewMotionValue = - ViewMotionValue( - initialDisplacement, - distanceGestureContext, - generateMotionSpec(detachThreshold), - label = "taskDismiss::displacement", - ) - - viewMotionValue.addUpdateCallback { motionValue -> updateCallback(motionValue.output) } - return viewMotionValue - } - - /** Motion spec for an initial magnetic detach. Track linearly otherwise. No reattach. */ - private fun generateMotionSpec(detachThreshold: Float): MotionSpec { - val spring = SpringParameters(stiffness = 800f, dampingRatio = 0.95f) - val detachKey = BreakpointKey("TaskDismiss::Detach") - val breakpoints = mutableListOf<Breakpoint>() - val mappings = mutableListOf<Mapping>() - - breakpoints.add(minLimit) - mappings.add(Mapping.Identity) - breakpoints.add(Breakpoint(detachKey, detachThreshold, spring, Guarantee.None)) - mappings.add(Mapping.Linear(MAGNETIC_DETACH_INTERPOLATION_FRACTION)) - breakpoints.add(maxLimit) - - return MotionSpec(DirectionalMotionSpec(breakpoints, mappings)) - } - companion object { private const val TAG = "TaskViewDismissTouchController" @@ -437,7 +312,5 @@ CONTAINER : StatefulContainer<T> { private const val RECENTS_SCALE_FIRST_THRESHOLD_FRACTION = 0.2f private const val RECENTS_SCALE_DISMISS_THRESHOLD_FRACTION = 0.5f private const val RECENTS_SCALE_SECOND_THRESHOLD_FRACTION = 0.575f - - private const val MAGNETIC_DETACH_INTERPOLATION_FRACTION = 0.35f } } diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewLaunchTouchController.kt b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewLaunchTouchController.kt index 6225c47835..fe9cae55f9 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewLaunchTouchController.kt +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewLaunchTouchController.kt @@ -60,7 +60,6 @@ CONTAINER : RecentsViewContainer { private var launchEndDisplacement: Float = 0f private var playbackController: AnimatorPlaybackController? = null private var verticalFactor: Int = 0 - private var canInterceptTouch = false private fun canTaskLaunchTaskView(taskView: TaskView?) = taskView != null && @@ -93,12 +92,6 @@ CONTAINER : RecentsViewContainer { false } - // Do not allow launch while recents is scrolling. - !recentsView.scroller.isFinished -> { - debugLog(TAG, "Not intercepting touch, recents scrolling.") - false - } - else -> taskViewRecentsTouchContext.isRecentsInteractive.also { isRecentsInteractive -> if (!isRecentsInteractive) { @@ -115,16 +108,11 @@ CONTAINER : RecentsViewContainer { clearState() } if (ev.action == MotionEvent.ACTION_DOWN) { - canInterceptTouch = onActionDown(ev) - if (!canInterceptTouch) { + if (!onActionDown(ev)) { clearState() return false } } - // Ignore other actions if touch intercepting has not been enabled in an ACTION_DOWN event. - if (!canInterceptTouch) { - return false - } onControllerTouchEvent(ev) val downDirectionIsNegative = downDirection == SingleAxisSwipeDetector.DIRECTION_NEGATIVE val wasInitialTouchDown = diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchControllerDeprecated.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchControllerDeprecated.java index d9b0366a40..c9d68a5e37 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchControllerDeprecated.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchControllerDeprecated.java @@ -246,7 +246,7 @@ public class TaskViewTouchControllerDeprecated< pa = new PendingAnimation(maxDuration); mRecentsView.createTaskDismissAnimation(pa, mTaskBeingDragged, true /* animateTaskView */, true /* removeTask */, maxDuration, - false /* dismissingForSplitSelection*/, null /* gridEndData */); + false /* dismissingForSplitSelection*/, false /* isExpressiveDismiss */); mEndDisplacement = -secondaryTaskDimension; } else { diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TransposedQuickSwitchTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TransposedQuickSwitchTouchController.java index e7d2cd23c6..b70cabe76d 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TransposedQuickSwitchTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TransposedQuickSwitchTouchController.java @@ -39,6 +39,6 @@ public class TransposedQuickSwitchTouchController extends QuickSwitchTouchContro @Override protected float getShiftRange() { - return mLauncher.getDeviceProfile().getDeviceProperties().getHeightPx() / 2f; + return mLauncher.getDeviceProfile().heightPx / 2f; } } diff --git a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java index aa81afb759..d9b90f5c73 100644 --- a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java +++ b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java @@ -16,7 +16,6 @@ package com.android.quickstep; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; -import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.view.Surface.ROTATION_0; import static android.view.Surface.ROTATION_270; import static android.view.Surface.ROTATION_90; @@ -31,6 +30,7 @@ import static com.android.launcher3.BaseActivity.EVENT_DESTROYED; import static com.android.launcher3.BaseActivity.EVENT_STARTED; import static com.android.launcher3.BaseActivity.INVISIBLE_BY_STATE_HANDLER; import static com.android.launcher3.BaseActivity.STATE_HANDLER_INVISIBILITY_FLAGS; +import static com.android.launcher3.Flags.enableAdditionalHomeAnimations; import static com.android.launcher3.Flags.enableGestureNavHorizontalTouchSlop; import static com.android.launcher3.Flags.enableScalingRevealHomeAnimation; import static com.android.launcher3.Flags.msdlFeedback; @@ -98,7 +98,6 @@ import android.view.ViewTreeObserver.OnScrollChangedListener; import android.view.WindowInsets; import android.view.animation.Interpolator; import android.widget.Toast; -import android.window.DesktopExperienceFlags; import android.window.DesktopModeFlags; import android.window.PictureInPictureSurfaceTransaction; import android.window.TransitionInfo; @@ -137,7 +136,7 @@ import com.android.launcher3.util.VibratorWrapper; import com.android.launcher3.util.WindowBounds; import com.android.quickstep.GestureState.GestureEndTarget; import com.android.quickstep.RemoteTargetGluer.RemoteTargetHandle; -import com.android.quickstep.fallback.window.RecentsWindowManager; +import com.android.quickstep.fallback.window.RecentsWindowFlags; import com.android.quickstep.util.ActiveGestureErrorDetector; import com.android.quickstep.util.ActiveGestureLog; import com.android.quickstep.util.ActiveGestureProtoLogProxy; @@ -169,10 +168,10 @@ import com.android.systemui.shared.system.InteractionJankMonitorWrapper; import com.android.systemui.shared.system.SysUiStatsLog; import com.android.systemui.shared.system.TaskStackChangeListener; import com.android.systemui.shared.system.TaskStackChangeListeners; +import com.android.wm.shell.Flags; import com.android.wm.shell.shared.GroupedTaskInfo; import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; -import com.android.wm.shell.shared.pip.PipFlags; import com.android.wm.shell.shared.startingsurface.SplashScreenExitAnimationUtils; import com.google.android.msdl.data.model.MSDLToken; @@ -216,7 +215,6 @@ public abstract class AbsSwipeUpHandler< protected @Nullable RECENTS_CONTAINER mContainer; protected @Nullable RECENTS_VIEW mRecentsView; protected Runnable mGestureEndCallback; - protected Runnable mGestureAnimationEndCallback; protected MultiStateCallback mStateCallback; protected boolean mCanceled; private boolean mRecentsViewScrollLinked = false; @@ -349,7 +347,15 @@ public abstract class AbsSwipeUpHandler< private final SwipePipToHomeAnimator[] mSwipePipToHomeAnimators = new SwipePipToHomeAnimator[2]; - private final Runnable mLauncherOnDestroyCallback; + private final Runnable mLauncherOnDestroyCallback = () -> { + ActiveGestureProtoLogProxy.logLauncherDestroyed(); + mRecentsView.removeOnScrollChangedListener(mOnRecentsScrollListener); + mRecentsView = null; + mContainer = null; + mStateCallback.clearState(STATE_LAUNCHER_PRESENT); + mRecentsAnimationStartCallbacks.clear(); + mTaskAnimationManager.onLauncherDestroyed(); + }; // Interpolate RecentsView scale from start of quick switch scroll until this scroll threshold private final float mQuickSwitchScaleScrollThreshold; @@ -374,30 +380,16 @@ public abstract class AbsSwipeUpHandler< private final MSDLPlayerWrapper mMSDLPlayerWrapper; - private final RotationTouchHelper mRotationTouchHelper; - public AbsSwipeUpHandler(Context context, - TaskAnimationManager taskAnimationManager, RecentsAnimationDeviceState deviceState, - RotationTouchHelper rotationTouchHelper, GestureState gestureState, + TaskAnimationManager taskAnimationManager, GestureState gestureState, long touchTimeMs, boolean continuingLastGesture, InputConsumerController inputConsumer, MSDLPlayerWrapper msdlPlayerWrapper) { - super(context, gestureState, rotationTouchHelper); + super(context, gestureState); + mDeviceState = RecentsAnimationDeviceState.INSTANCE.get(mContext); mContainerInterface = gestureState.getContainerInterface(); mContextInitListener = mContainerInterface.createActivityInitListener(this::onActivityInit); - mLauncherOnDestroyCallback = () -> { - ActiveGestureProtoLogProxy.logLauncherDestroyed(); - mContextInitListener.unregister("AbsSwipeUpHandler.mLauncherOnDestroyCallback"); - if (mRecentsView != null) { - mRecentsView.removeOnScrollChangedListener(mOnRecentsScrollListener); - mRecentsView = null; - } - mContainer = null; - mStateCallback.clearState(STATE_LAUNCHER_PRESENT); - mRecentsAnimationStartCallbacks.clear(); - mTaskAnimationManager.onLauncherDestroyed(); - }; mInputConsumerProxy = new InputConsumerProxy(context, /* rotationSupplier = */ () -> { if (mRecentsView == null) { @@ -409,10 +401,8 @@ public abstract class AbsSwipeUpHandler< endLauncherTransitionController(); }, new InputProxyHandlerFactory(mContainerInterface, mGestureState)); mTaskAnimationManager = taskAnimationManager; - mDeviceState = deviceState; mTouchTimeMs = touchTimeMs; mContinuingLastGesture = continuingLastGesture; - mRotationTouchHelper = rotationTouchHelper; Resources res = context.getResources(); mQuickSwitchScaleScrollThreshold = res @@ -598,7 +588,7 @@ public abstract class AbsSwipeUpHandler< private void onLauncherStart() { final RECENTS_CONTAINER container = mContainerInterface.getCreatedContainer(); - if (container == null || mContainer != container || mRecentsView == null) { + if (container == null || mContainer != container) { return; } if (mStateCallback.hasStates(STATE_HANDLER_INVALIDATED)) { @@ -680,9 +670,9 @@ public abstract class AbsSwipeUpHandler< mGestureState.getContainerInterface().setOnDeferredActivityLaunchCallback( mOnDeferredActivityLaunch); - mGestureState.runOnceAtState(STATE_END_TARGET_SET, - () -> mRotationTouchHelper.onEndTargetCalculated(mGestureState.getEndTarget(), - mContainerInterface)); + mGestureState.runOnceAtState(STATE_END_TARGET_SET, () -> + RotationTouchHelper.INSTANCE.get(mContext) + .onEndTargetCalculated(mGestureState.getEndTarget(), mContainerInterface)); notifyGestureStarted(); } @@ -912,8 +902,7 @@ public abstract class AbsSwipeUpHandler< public Intent getLaunchIntent() { // todo differentiate intent based on if we are on home or in app for overview in window - boolean useHomeIntentForWindow = - mContainerInterface.getCreatedContainer() instanceof RecentsWindowManager; + boolean useHomeIntentForWindow = RecentsWindowFlags.getEnableOverviewInWindow(); return useHomeIntentForWindow ? getHomeIntent() : mGestureState.getOverviewIntent(); } /** @@ -973,21 +962,7 @@ public abstract class AbsSwipeUpHandler< public void onRecentsAnimationStart(RecentsAnimationController controller, RecentsAnimationTargets targets, @Nullable TransitionInfo transitionInfo) { super.onRecentsAnimationStart(controller, targets, transitionInfo); - boolean forDesktop; - if (DesktopModeStatus.enableMultipleDesktops(mContext)) { - GroupedTaskInfo groupedTaskInfo; - if (mGestureState.getRunningTask() != null - && (groupedTaskInfo = - mGestureState.getRunningTask().getPlaceholderGroupedTaskInfo( - /* splitTaskIds = */ null)) != null) { - forDesktop = groupedTaskInfo.isBaseType(GroupedTaskInfo.TYPE_DESK); - } else { - forDesktop = false; - } - } else { - forDesktop = targets.hasDesktopTasks(mContext); - } - if (forDesktop) { + if (targets.hasDesktopTasks(mContext)) { mRemoteTargetHandles = mTargetGluer.assignTargetsForDesktop(targets, transitionInfo); } else { int untrimmedAppCount = mRemoteTargetHandles.length; @@ -1018,11 +993,9 @@ public abstract class AbsSwipeUpHandler< .getOrientationState(); DeviceProfile dp = orientationState.getLauncherDeviceProfile( mGestureState.getDisplayId()); - Rect overviewStackBounds = mContainerInterface.getOverviewWindowBounds( - targets.minimizedHomeBounds, primaryTaskTarget); - if (overviewStackBounds != null - && !overviewStackBounds.isEmpty() - && primaryTaskTarget != null) { + if (targets.minimizedHomeBounds != null && primaryTaskTarget != null) { + Rect overviewStackBounds = mContainerInterface + .getOverviewWindowBounds(targets.minimizedHomeBounds, primaryTaskTarget); dp = dp.getMultiWindowProfile(mContext, new WindowBounds(overviewStackBounds, targets.homeContentInsets)); } else { @@ -1031,7 +1004,7 @@ public abstract class AbsSwipeUpHandler< } dp.updateInsets(targets.homeContentInsets); initTransitionEndpoints(dp); - orientationState.setMultiWindowMode(dp.getDeviceProperties().isMultiWindowMode()); + orientationState.setMultiWindowMode(dp.isMultiWindowMode); } // Notify when the animation starts @@ -1073,10 +1046,12 @@ public abstract class AbsSwipeUpHandler< } mHandled = true; - InteractionJankMonitorWrapper.begin( - rv, Cuj.CUJ_LAUNCHER_QUICK_SWITCH, /* timeoutMs= */ 2000); - InteractionJankMonitorWrapper.begin(rv, Cuj.CUJ_LAUNCHER_APP_CLOSE_TO_HOME); - InteractionJankMonitorWrapper.begin(rv, Cuj.CUJ_LAUNCHER_APP_SWIPE_TO_RECENTS); + InteractionJankMonitorWrapper.begin(mRecentsView, Cuj.CUJ_LAUNCHER_QUICK_SWITCH, + 2000 /* ms timeout */); + InteractionJankMonitorWrapper.begin(mRecentsView, + Cuj.CUJ_LAUNCHER_APP_CLOSE_TO_HOME); + InteractionJankMonitorWrapper.begin(mRecentsView, + Cuj.CUJ_LAUNCHER_APP_SWIPE_TO_RECENTS); rv.post(() -> rv.getViewTreeObserver().removeOnDrawListener(this)); } @@ -1544,7 +1519,7 @@ public abstract class AbsSwipeUpHandler< } private void doLogGesture(GestureEndTarget endTarget, @Nullable TaskView targetTaskView) { - if (mDp == null || !mDp.getDeviceProperties().isGestureMode()) { + if (mDp == null || !mDp.isGestureMode) { // We probably never received an animation controller, skip logging. return; } @@ -1687,26 +1662,21 @@ public abstract class AbsSwipeUpHandler< boolean hasValidLeash = runningTaskTarget != null && runningTaskTarget.leash != null && runningTaskTarget.leash.isValid(); - final boolean swipeUpInDesktopWindowing = - DesktopExperienceFlags.ENABLE_DESKTOP_WINDOWING_PIP.isTrue() - && runningTaskTarget != null - && runningTaskTarget.taskInfo.getWindowingMode() - == WINDOWING_MODE_FREEFORM; boolean appCanEnterPip = !mDeviceState.isPipActive() && hasValidLeash && runningTaskTarget.allowEnterPip && runningTaskTarget.taskInfo.pictureInPictureParams != null - && runningTaskTarget.taskInfo.pictureInPictureParams.isAutoEnterEnabled() - && !swipeUpInDesktopWindowing; + && runningTaskTarget.taskInfo.pictureInPictureParams.isAutoEnterEnabled(); HomeAnimationFactory homeAnimFactory = createHomeAnimationFactory( cookies, duration, isTranslucent, appCanEnterPip, runningTaskTarget, - mRecentsView == null + !enableAdditionalHomeAnimations() + || mRecentsView == null || mRecentsView.getCurrentPage() == mRecentsView.getRunningTaskIndex() - ? null : mRecentsView.getCurrentPageTaskView()); + ? null : mRecentsView.getCurrentPageTaskView()); SwipePipToHomeAnimator swipePipToHomeAnimator = !mIsSwipeForSplit && appCanEnterPip ? createWindowAnimationToPip(homeAnimFactory, runningTaskTarget, start) : null; @@ -1783,10 +1753,8 @@ public abstract class AbsSwipeUpHandler< mLauncherTransitionController = null; if (mRecentsView != null) { - AnimatorSet animatorSet = new AnimatorSet(); - mRecentsView.onPrepareGestureEndAnimation(animatorSet, mGestureState.getEndTarget(), - mRemoteTargetHandles, /* isHandlingAtomicEvent= */ true); - animatorSet.setDuration(0).start(); + mRecentsView.onPrepareGestureEndAnimation(null, mGestureState.getEndTarget(), + mRemoteTargetHandles); } } else { AnimatorSet animatorSet = new AnimatorSet(); @@ -1828,10 +1796,9 @@ public abstract class AbsSwipeUpHandler< animatorSet.play(windowAnim); if (mRecentsView != null) { mRecentsView.onPrepareGestureEndAnimation( - animatorSet, + mGestureState.isHandlingAtomicEvent() ? null : animatorSet, mGestureState.getEndTarget(), - mRemoteTargetHandles, - mGestureState.isHandlingAtomicEvent()); + mRemoteTargetHandles); } animatorSet.setDuration(duration).setInterpolator(interpolator); animatorSet.start(); @@ -1983,26 +1950,24 @@ public abstract class AbsSwipeUpHandler< private Rect getKeepClearAreaForHotseat() { Rect keepClearArea; - final int heightPx = mDp.getDeviceProperties().getHeightPx(); - final int widthPx = mDp.getDeviceProperties().getWidthPx(); // the keep clear area in global screen coordinates, in pixels - if (mDp.getDeviceProperties().isPhone()) { + if (mDp.isPhone) { if (mDp.isSeascape()) { // in seascape the Hotseat is on the left edge of the screen - keepClearArea = new Rect(0, 0, mDp.hotseatBarSizePx, heightPx); - } else if (mDp.getDeviceProperties().isLandscape()) { + keepClearArea = new Rect(0, 0, mDp.hotseatBarSizePx, mDp.heightPx); + } else if (mDp.isLandscape) { // in landscape the Hotseat is on the right edge of the screen - keepClearArea = new Rect(widthPx - mDp.hotseatBarSizePx, 0, - widthPx, heightPx); + keepClearArea = new Rect(mDp.widthPx - mDp.hotseatBarSizePx, 0, + mDp.widthPx, mDp.heightPx); } else { // in portrait mode the Hotseat is at the bottom of the screen - keepClearArea = new Rect(0, heightPx - mDp.hotseatBarSizePx, - widthPx, heightPx); + keepClearArea = new Rect(0, mDp.heightPx - mDp.hotseatBarSizePx, + mDp.widthPx, mDp.heightPx); } } else { // large screens have Hotseat always at the bottom of the screen - keepClearArea = new Rect(0, heightPx - mDp.hotseatBarSizePx, - widthPx, heightPx); + keepClearArea = new Rect(0, mDp.heightPx - mDp.hotseatBarSizePx, + mDp.widthPx, mDp.heightPx); } return keepClearArea; } @@ -2180,9 +2145,6 @@ public abstract class AbsSwipeUpHandler< if (mRecentsView != null) { mRecentsView.onGestureAnimationEnd(); } - if (mGestureAnimationEndCallback != null) { - mGestureAnimationEndCallback.run(); - } resetLauncherListeners(); } @@ -2343,7 +2305,7 @@ public abstract class AbsSwipeUpHandler< mSwipePipToHomeAnimator.getFinishTransaction(), mSwipePipToHomeAnimator.getContentOverlay()); mIsSwipingPipToHome = false; - } else if (mIsSwipeForSplit && !PipFlags.isPip2ExperimentEnabled()) { + } else if (mIsSwipeForSplit && !Flags.enablePip2()) { // Transaction to hide the task to avoid flicker for entering PiP from split-screen. // Note: PiP2 handles entering differently, so skip if enable_pip2=true PictureInPictureSurfaceTransaction tx = @@ -2403,10 +2365,6 @@ public abstract class AbsSwipeUpHandler< mGestureEndCallback = gestureEndCallback; } - public void setGestureAnimationEndCallback(Runnable gestureAnimationEndCallback) { - mGestureAnimationEndCallback = gestureAnimationEndCallback; - } - protected void linkRecentsViewScroll() { if (mRecentsView == null) { return; @@ -2722,8 +2680,7 @@ public abstract class AbsSwipeUpHandler< transaction.setAlpha(app.leash, 1f - fadeProgress); transaction.setPosition(app.leash, /* x= */ app.startBounds.left - + ( - mContainer.getDeviceProfile().getOverviewProfile().getPageSpacing() + + (mContainer.getDeviceProfile().overviewPageSpacing * (mRecentsView.isRtl() ? fadeProgress : -fadeProgress)), /* y= */ 0f); transaction.setScale(app.leash, 1f, 1f); @@ -2774,7 +2731,7 @@ public abstract class AbsSwipeUpHandler< // Scaling of RecentsView during quick switch based on amount of recents scroll private float getScaleProgressDueToScroll() { - if (mContainer == null || !mContainer.getDeviceProfile().getDeviceProperties().isTablet() || mRecentsView == null + if (mContainer == null || !mContainer.getDeviceProfile().isTablet || mRecentsView == null || !shouldLinkRecentsViewScroll()) { return 0; } @@ -2809,11 +2766,7 @@ public abstract class AbsSwipeUpHandler< */ @Override protected float overrideDisplacementForTransientTaskbar(float displacement) { - boolean shouldReturnDisplacement = mContainerInterface.getTaskbarController() == null - ? !mIsTransientTaskbar - : !mContainerInterface.getTaskbarController().shouldAllowTaskbarToAutoStash(); - - if (shouldReturnDisplacement) { + if (!mIsTransientTaskbar) { return displacement; } @@ -2844,7 +2797,6 @@ public abstract class AbsSwipeUpHandler< } public interface Factory { - @Nullable - AbsSwipeUpHandler<?, ?, ?> newHandler(GestureState gestureState, long touchTimeMs); + AbsSwipeUpHandler newHandler(GestureState gestureState, long touchTimeMs); } } diff --git a/quickstep/src/com/android/quickstep/AllAppsActionManager.kt b/quickstep/src/com/android/quickstep/AllAppsActionManager.kt index 51a68d16da..b807a4bfe3 100644 --- a/quickstep/src/com/android/quickstep/AllAppsActionManager.kt +++ b/quickstep/src/com/android/quickstep/AllAppsActionManager.kt @@ -27,7 +27,6 @@ import android.view.accessibility.AccessibilityManager import com.android.launcher3.R import com.android.launcher3.util.SettingsCache import com.android.launcher3.util.SettingsCache.OnChangeListener -import com.android.quickstep.input.QuickstepKeyGestureEventsManager import java.util.concurrent.Executor private val USER_SETUP_COMPLETE_URI = Settings.Secure.getUriFor(USER_SETUP_COMPLETE) @@ -42,7 +41,6 @@ private val USER_SETUP_COMPLETE_URI = Settings.Secure.getUriFor(USER_SETUP_COMPL class AllAppsActionManager( private val context: Context, private val bgExecutor: Executor, - private val quickstepKeyGestureEventsManager: QuickstepKeyGestureEventsManager, private val createAllAppsPendingIntent: () -> PendingIntent, ) { @@ -94,22 +92,17 @@ class AllAppsActionManager( val accessibilityManager = context.getSystemService(AccessibilityManager::class.java) ?: return@execute if (shouldRegisterAction) { - val allAppsPendingIntent = createAllAppsPendingIntent() accessibilityManager.registerSystemAction( RemoteAction( Icon.createWithResource(context, R.drawable.ic_apps), context.getString(R.string.all_apps_label), context.getString(R.string.all_apps_label), - allAppsPendingIntent, + createAllAppsPendingIntent(), ), GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS, ) - quickstepKeyGestureEventsManager.registerAllAppsKeyGestureEvent( - allAppsPendingIntent - ) } else { accessibilityManager.unregisterSystemAction(GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS) - quickstepKeyGestureEventsManager.unregisterAllAppsKeyGestureEvent() } } } @@ -119,7 +112,6 @@ class AllAppsActionManager( context .getSystemService(AccessibilityManager::class.java) ?.unregisterSystemAction(GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS) - quickstepKeyGestureEventsManager.unregisterAllAppsKeyGestureEvent() SettingsCache.INSTANCE[context].unregister( USER_SETUP_COMPLETE_URI, onSettingsChangeListener, diff --git a/quickstep/src/com/android/quickstep/AspectRatioSystemShortcut.kt b/quickstep/src/com/android/quickstep/AspectRatioSystemShortcut.kt index 9013ff082b..68860ac91b 100644 --- a/quickstep/src/com/android/quickstep/AspectRatioSystemShortcut.kt +++ b/quickstep/src/com/android/quickstep/AspectRatioSystemShortcut.kt @@ -26,7 +26,7 @@ import com.android.launcher3.logging.StatsLogManager.LauncherEvent import com.android.launcher3.popup.SystemShortcut import com.android.quickstep.views.RecentsViewContainer import com.android.quickstep.views.TaskContainer -import com.android.window.flags2.Flags.universalResizableByDefault +import com.android.window.flags.Flags.universalResizableByDefault /** * System shortcut to change the application's aspect ratio compatibility mode. @@ -58,7 +58,8 @@ class AspectRatioSystemShortcut( } mTarget.startActivitySafely(view, intent, mItemInfo) - mTarget.statsLogManager + mTarget + .statsLogManager .logger() .withItemInfo(mItemInfo) .log(LauncherEvent.LAUNCHER_ASPECT_RATIO_SETTINGS_SYSTEM_SHORTCUT_TAP) @@ -80,7 +81,7 @@ class AspectRatioSystemShortcut( !universalResizableByDefault() -> null // The option is only shown on sw600dp+ screens (checked by isTablet) - !viewContainer.deviceProfile.deviceProperties.isTablet -> null + !viewContainer.deviceProfile.isTablet -> null else -> { listOf( diff --git a/quickstep/src/com/android/quickstep/BaseActivityInterface.java b/quickstep/src/com/android/quickstep/BaseActivityInterface.java index c387856245..549c2f8e34 100644 --- a/quickstep/src/com/android/quickstep/BaseActivityInterface.java +++ b/quickstep/src/com/android/quickstep/BaseActivityInterface.java @@ -18,7 +18,9 @@ package com.android.quickstep; import static com.android.app.animation.Interpolators.ACCELERATE_2; import static com.android.app.animation.Interpolators.INSTANT; import static com.android.app.animation.Interpolators.LINEAR; +import static com.android.launcher3.MotionEventsUtils.isTrackpadMultiFingerSwipe; import static com.android.quickstep.AbsSwipeUpHandler.RECENTS_ATTACH_DURATION; +import static com.android.quickstep.GestureState.GestureEndTarget.LAST_TASK; import static com.android.quickstep.util.RecentsAtomicAnimationFactory.INDEX_RECENTS_ATTACHED_ALPHA_ANIM; import static com.android.quickstep.util.RecentsAtomicAnimationFactory.INDEX_RECENTS_FADE_ANIM; import static com.android.quickstep.util.RecentsAtomicAnimationFactory.INDEX_RECENTS_TRANSLATE_X_ANIM; @@ -31,12 +33,14 @@ import static com.android.quickstep.views.RecentsView.TASK_SECONDARY_TRANSLATION import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; +import android.view.MotionEvent; import androidx.annotation.Nullable; import com.android.launcher3.anim.AnimatorPlaybackController; import com.android.launcher3.anim.PendingAnimation; import com.android.launcher3.statehandlers.DepthController; +import com.android.launcher3.statehandlers.DesktopVisibilityController; import com.android.launcher3.statemanager.BaseState; import com.android.launcher3.statemanager.StatefulActivity; import com.android.launcher3.taskbar.TaskbarUIController; @@ -67,6 +71,37 @@ public abstract class BaseActivityInterface<STATE_TYPE extends BaseState<STATE_T mTargetState = overviewState; } + /** + * Called when the current gesture transition is cancelled. + * @param activityVisible Whether the user can see the changes we make here, so try to animate. + * @param endTarget If the gesture ended before we got cancelled, where we were headed. + */ + public void onTransitionCancelled(boolean activityVisible, + @Nullable GestureState.GestureEndTarget endTarget) { + ACTIVITY_TYPE activity = getCreatedContainer(); + if (activity == null) { + return; + } + STATE_TYPE startState = activity.getStateManager().getRestState(); + if (endTarget != null) { + // We were on our way to this state when we got canceled, end there instead. + startState = stateFromGestureEndTarget(endTarget); + if (DesktopVisibilityController.INSTANCE.get(activity) + .isInDesktopModeAndNotInOverview(activity.getDisplayId()) + && endTarget == LAST_TASK) { + // When we are cancelling the transition and going back to last task, move to + // rest state instead when desktop tasks are visible. + // If a fullscreen task is visible, launcher goes to normal state when the + // activity is stopped. This does not happen when desktop tasks are visible + // on top of launcher. Force the launcher state to rest state here. + startState = activity.getStateManager().getRestState(); + // Do not animate the transition + activityVisible = false; + } + } + activity.getStateManager().goToState(startState, activityVisible); + } + @Nullable public abstract ACTIVITY_TYPE getCreatedContainer(); @@ -85,6 +120,14 @@ public abstract class BaseActivityInterface<STATE_TYPE extends BaseState<STATE_T return activity != null && activity.isStarted(); } + public boolean deferStartingActivity(RecentsAnimationDeviceState deviceState, MotionEvent ev) { + TaskbarUIController controller = getTaskbarController(); + boolean isEventOverBubbleBarStashHandle = + controller != null && controller.isEventOverBubbleBarViews(ev); + return deviceState.isInDeferredGestureRegion(ev) || deviceState.isImeRenderingNavButtons() + || isTrackpadMultiFingerSwipe(ev) || isEventOverBubbleBarStashHandle; + } + /** * Closes any overlays. */ diff --git a/quickstep/src/com/android/quickstep/BaseContainerInterface.java b/quickstep/src/com/android/quickstep/BaseContainerInterface.java index 0c7fbcc40e..9fb77e7187 100644 --- a/quickstep/src/com/android/quickstep/BaseContainerInterface.java +++ b/quickstep/src/com/android/quickstep/BaseContainerInterface.java @@ -17,9 +17,7 @@ package com.android.quickstep; import static com.android.app.animation.Interpolators.INSTANT; import static com.android.app.animation.Interpolators.LINEAR; -import static com.android.launcher3.LauncherAnimUtils.SCRIM_COLORS; -import static com.android.launcher3.MotionEventsUtils.isTrackpadMultiFingerSwipe; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; +import static com.android.launcher3.LauncherAnimUtils.VIEW_BACKGROUND_COLOR; import static com.android.quickstep.GestureState.GestureEndTarget.LAST_TASK; import static com.android.quickstep.GestureState.GestureEndTarget.RECENTS; @@ -35,11 +33,11 @@ import android.view.MotionEvent; import android.view.RemoteAnimationTarget; import android.view.View; -import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.UiThread; import com.android.launcher3.DeviceProfile; +import com.android.launcher3.Flags; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.statehandlers.DesktopVisibilityController; @@ -48,9 +46,7 @@ import com.android.launcher3.statemanager.StatefulContainer; import com.android.launcher3.taskbar.TaskbarUIController; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.WindowBounds; -import com.android.launcher3.views.ScrimColors; import com.android.launcher3.views.ScrimView; -import com.android.launcher3.views.ScrimColorsEvaluator; import com.android.quickstep.orientation.RecentsPagedOrientationHandler; import com.android.quickstep.util.AnimatorControllerWithResistance; import com.android.quickstep.util.ContextInitListener; @@ -93,25 +89,14 @@ public abstract class BaseContainerInterface<STATE_TYPE extends BaseState<STATE_ public abstract boolean isResumed(); public abstract boolean isStarted(); - public boolean deferStartingActivity( - @NonNull RecentsAnimationDeviceState deviceState, MotionEvent ev) { - TaskbarUIController controller = getTaskbarController(); - boolean isEventOverBubbleBarStashHandle = - controller != null && controller.isEventOverBubbleBarViews(ev); - boolean isEventOverAnyTaskbarItem = - controller != null && controller.isEventOverAnyTaskbarItem(ev); - return deviceState.isInDeferredGestureRegion(ev) - || deviceState.isImeRenderingNavButtons() - || isTrackpadMultiFingerSwipe(ev) - || isEventOverBubbleBarStashHandle - || isEventOverAnyTaskbarItem; - } + public abstract boolean deferStartingActivity(RecentsAnimationDeviceState deviceState, + MotionEvent ev); /** * Returns the color of the scrim behind overview when at rest in this state. * Return {@link Color#TRANSPARENT} for no scrim. */ - protected abstract ScrimColors getOverviewScrimColorForState(CONTAINER_TYPE container, + protected abstract int getOverviewScrimColorForState(CONTAINER_TYPE container, STATE_TYPE state); public abstract int getSwipeUpDestinationAndLength( @@ -169,13 +154,6 @@ public abstract class BaseContainerInterface<STATE_TYPE extends BaseState<STATE_ public abstract void onExitOverview(Runnable exitRunnable); - /** - * @return {@code true} iff the launcher's -1 page is showing - */ - public boolean isLauncherOverlayShowing() { - return false; - } - /** Called when the animation to home has fully settled. */ public void onSwipeUpToHomeComplete() {} @@ -187,8 +165,7 @@ public abstract class BaseContainerInterface<STATE_TYPE extends BaseState<STATE_ * @return Whether the gesture in progress should be cancelled. */ public boolean shouldCancelCurrentGesture() { - TaskbarUIController uiController = getTaskbarController(); - return uiController != null && uiController.isDraggingItem(); + return false; } public void runOnInitBackgroundStateUI(Runnable callback) { @@ -217,14 +194,12 @@ public abstract class BaseContainerInterface<STATE_TYPE extends BaseState<STATE_ RecentsView recentsView = container.getOverviewPanel(); STATE_TYPE state = stateFromGestureEndTarget(endTarget); ScrimView scrimView = container.getScrimView(); - ObjectAnimator animScrim = ObjectAnimator.ofObject(scrimView, SCRIM_COLORS, - ScrimColorsEvaluator.INSTANCE, getOverviewScrimColorForState(container, state)); - animScrim.setDuration(duration); - animScrim.setInterpolator( - recentsView == null || !recentsView.isKeyboardTaskFocusPending() - ? LINEAR : INSTANT); - - return animScrim; + ObjectAnimator anim = ObjectAnimator.ofArgb(scrimView, VIEW_BACKGROUND_COLOR, + getOverviewScrimColorForState(container, state)); + anim.setDuration(duration); + anim.setInterpolator(recentsView == null || !recentsView.isKeyboardTaskFocusPending() + ? LINEAR : INSTANT); + return anim; } return null; } @@ -250,42 +225,47 @@ public abstract class BaseContainerInterface<STATE_TYPE extends BaseState<STATE_ */ public void onTransitionCancelled(boolean activityVisible, @Nullable GestureState.GestureEndTarget endTarget) { - CONTAINER_TYPE container = getCreatedContainer(); + RecentsViewContainer container = getCreatedContainer(); if (container == null) { return; } - STATE_TYPE startState = container.getStateManager().getRestState(); - final var context = container.asContext(); - if (DesktopVisibilityController.INSTANCE.get(context).isInDesktopModeAndNotInOverview( - context.getDisplayId()) && endTarget == null) { - // When tapping on the Taskbar in Desktop mode, reset to BackgroundApp to avoid the - // home screen icons flickering. Technically we could probably be do this for - // non-desktop as well, but limiting to this use case to reduce risk. - endTarget = LAST_TASK; - } + RecentsView recentsView = container.getOverviewPanel(); + BaseState startState = recentsView.getStateManager().getRestState(); if (endTarget != null) { // We were on our way to this state when we got canceled, end there instead. startState = stateFromGestureEndTarget(endTarget); + final var context = recentsView.getContext(); + if (DesktopVisibilityController.INSTANCE.get(context) + .isInDesktopModeAndNotInOverview(context.getDisplayId()) + && endTarget == LAST_TASK) { + // When we are cancelling the transition and going back to last task, move to + // rest state instead when desktop tasks are visible. + // If a fullscreen task is visible, launcher goes to normal state when the + // activity is stopped. This does not happen when desktop tasks are visible + // on top of launcher. Force the launcher state to rest state here. + startState = recentsView.getStateManager().getRestState(); + // Do not animate the transition + activityVisible = false; + } } - container.getStateManager().goToState(startState, activityVisible); + recentsView.getStateManager().goToState(startState, activityVisible); } public final void calculateTaskSize(Context context, DeviceProfile dp, Rect outRect, RecentsPagedOrientationHandler orientationHandler) { - if (dp.getDeviceProperties().isTablet()) { + if (dp.isTablet) { calculateLargeTileSize(context, dp, outRect); } else { Resources res = context.getResources(); float maxScale = res.getFloat(R.dimen.overview_max_scale); - int taskMargin = dp.getOverviewProfile().getTaskMarginPx(); + int taskMargin = dp.overviewTaskMarginPx; // In fake orientation, OverviewActions is hidden and we only leave a margin there. int overviewActionsClaimedSpace = orientationHandler.isLayoutNaturalToLauncher() - ? dp.getOverviewActionsClaimedSpace() - : dp.getOverviewProfile().getActionsTopMarginPx(); + ? dp.getOverviewActionsClaimedSpace() : dp.overviewActionsTopMarginPx; calculateTaskSizeInternal( context, dp, - dp.getOverviewProfile().getTaskThumbnailTopMarginPx(), + dp.overviewTaskThumbnailTopMarginPx, overviewActionsClaimedSpace, res.getDimensionPixelSize(R.dimen.overview_minimum_next_prev_size) + taskMargin, maxScale, @@ -306,7 +286,7 @@ public abstract class BaseContainerInterface<STATE_TYPE extends BaseState<STATE_ private void calculateTaskSizeInternal(Context context, DeviceProfile dp, int claimedSpaceAbove, int claimedSpaceBelow, int minimumHorizontalPadding, float maxScale, int gravity, Rect outRect, RecentsPagedOrientationHandler orientationHandler) { - Rect potentialTaskRect = new Rect(0, 0, dp.getDeviceProperties().getWidthPx(), dp.getDeviceProperties().getHeightPx()); + Rect potentialTaskRect = new Rect(0, 0, dp.widthPx, dp.heightPx); Rect insets; if (orientationHandler.isLayoutNaturalToLauncher()) { @@ -369,10 +349,10 @@ public abstract class BaseContainerInterface<STATE_TYPE extends BaseState<STATE_ * Gets the dimension of the task in the current system state. */ public static void getTaskDimension(Context context, DeviceProfile dp, PointF out) { - out.x = dp.getDeviceProperties().getWidthPx(); - out.y = dp.getDeviceProperties().getHeightPx(); - if (dp.getDeviceProperties().isTablet() && !DisplayController.isTransientTaskbar(context)) { - out.y -= dp.getTaskbarProfile().getHeight(); + out.x = dp.widthPx; + out.y = dp.heightPx; + if (dp.isTablet && !DisplayController.isTransientTaskbar(context)) { + out.y -= dp.taskbarHeight; } } @@ -381,11 +361,11 @@ public abstract class BaseContainerInterface<STATE_TYPE extends BaseState<STATE_ */ public final void calculateGridSize(DeviceProfile dp, Context context, Rect outRect) { Rect insets = dp.getInsets(); - int topMargin = dp.getOverviewProfile().getTaskThumbnailTopMarginPx(); + int topMargin = dp.overviewTaskThumbnailTopMarginPx; int bottomMargin = dp.getOverviewActionsClaimedSpace(); - int sideMargin = dp.getOverviewProfile().getGridSideMargin(); + int sideMargin = dp.overviewGridSideMargin; - outRect.set(0, 0, dp.getDeviceProperties().getWidthPx(), dp.getDeviceProperties().getHeightPx()); + outRect.set(0, 0, dp.widthPx, dp.heightPx); if (Utilities.ATLEAST_S) { outRect.inset(Math.max(insets.left, sideMargin), insets.top + topMargin, Math.max(insets.right, sideMargin), Math.max(insets.bottom, bottomMargin)); @@ -408,13 +388,11 @@ public abstract class BaseContainerInterface<STATE_TYPE extends BaseState<STATE_ Rect potentialTaskRect = new Rect(); calculateLargeTileSize(context, dp, potentialTaskRect); - float rowHeight = (potentialTaskRect.height() - + dp.getOverviewProfile().getTaskThumbnailTopMarginPx() - - dp.getOverviewProfile().getRowSpacing()) / 2f; + float rowHeight = (potentialTaskRect.height() + dp.overviewTaskThumbnailTopMarginPx + - dp.overviewRowSpacing) / 2f; PointF taskDimension = getTaskDimension(context, dp); - float scale = (rowHeight - dp.getOverviewProfile().getTaskThumbnailTopMarginPx()) - / taskDimension.y; + float scale = (rowHeight - dp.overviewTaskThumbnailTopMarginPx) / taskDimension.y; int outWidth = Math.round(scale * taskDimension.x); int outHeight = Math.round(scale * taskDimension.y); @@ -429,22 +407,20 @@ public abstract class BaseContainerInterface<STATE_TYPE extends BaseState<STATE_ public final void calculateModalTaskSize(Context context, DeviceProfile dp, Rect outRect, RecentsPagedOrientationHandler orientationHandler) { calculateTaskSize(context, dp, outRect, orientationHandler); - boolean isGridOnlyOverview = dp.getDeviceProperties().isTablet() && enableGridOnlyOverview(); + boolean isGridOnlyOverview = dp.isTablet && Flags.enableGridOnlyOverview(); int claimedSpaceBelow = isGridOnlyOverview - ? dp.getOverviewProfile().getActionsTopMarginPx() - + dp.getOverviewProfile().getActionsHeight() - + dp.getTaskbarProfile().getStashedTaskbarHeight() - : (dp.getDeviceProperties().getHeightPx() - outRect.bottom - dp.getInsets().bottom); + ? dp.overviewActionsTopMarginPx + dp.overviewActionsHeight + dp.stashedTaskbarHeight + : (dp.heightPx - outRect.bottom - dp.getInsets().bottom); int minimumHorizontalPadding = 0; if (!isGridOnlyOverview) { float maxScale = context.getResources().getFloat(R.dimen.overview_modal_max_scale); minimumHorizontalPadding = - Math.round((dp.getDeviceProperties().getAvailableWidthPx() - outRect.width() * maxScale) / 2); + Math.round((dp.availableWidthPx - outRect.width() * maxScale) / 2); } calculateTaskSizeInternal( context, dp, - dp.getOverviewProfile().getTaskMarginPx(), + dp.overviewTaskMarginPx, claimedSpaceBelow, minimumHorizontalPadding, 1f /*maxScale*/, diff --git a/quickstep/src/com/android/quickstep/BaseWindowInterface.java b/quickstep/src/com/android/quickstep/BaseWindowInterface.java index bb31602de3..9d6e61d7d4 100644 --- a/quickstep/src/com/android/quickstep/BaseWindowInterface.java +++ b/quickstep/src/com/android/quickstep/BaseWindowInterface.java @@ -18,6 +18,7 @@ package com.android.quickstep; import static com.android.app.animation.Interpolators.ACCELERATE_2; import static com.android.app.animation.Interpolators.INSTANT; import static com.android.app.animation.Interpolators.LINEAR; +import static com.android.launcher3.MotionEventsUtils.isTrackpadMultiFingerSwipe; import static com.android.quickstep.AbsSwipeUpHandler.RECENTS_ATTACH_DURATION; import static com.android.quickstep.util.RecentsAtomicAnimationFactory.INDEX_RECENTS_FADE_ANIM; import static com.android.quickstep.util.RecentsAtomicAnimationFactory.INDEX_RECENTS_TRANSLATE_X_ANIM; @@ -29,10 +30,11 @@ import static com.android.quickstep.views.RecentsView.TASK_SECONDARY_TRANSLATION import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; +import android.util.Log; +import android.view.MotionEvent; import androidx.annotation.Nullable; -import com.android.launcher3.Launcher; import com.android.launcher3.anim.AnimatorPlaybackController; import com.android.launcher3.anim.PendingAnimation; import com.android.launcher3.statehandlers.DepthController; @@ -40,7 +42,6 @@ import com.android.launcher3.taskbar.TaskbarUIController; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.NavigationMode; import com.android.quickstep.fallback.RecentsState; -import com.android.quickstep.fallback.window.RecentsWindowFlags; import com.android.quickstep.fallback.window.RecentsWindowManager; import com.android.quickstep.util.AnimatorControllerWithResistance; import com.android.quickstep.views.RecentsView; @@ -83,6 +84,14 @@ public abstract class BaseWindowInterface extends return windowManager != null && windowManager.isStarted(); } + public boolean deferStartingActivity(RecentsAnimationDeviceState deviceState, MotionEvent ev) { + TaskbarUIController controller = getTaskbarController(); + boolean isEventOverBubbleBarStashHandle = + controller != null && controller.isEventOverBubbleBarViews(ev); + return deviceState.isInDeferredGestureRegion(ev) || deviceState.isImeRenderingNavButtons() + || isTrackpadMultiFingerSwipe(ev) || isEventOverBubbleBarStashHandle; + } + /** * Closes any overlays. */ @@ -107,16 +116,6 @@ public abstract class BaseWindowInterface extends recentsView.switchToScreenshot(thumbnailDatas, runnable); } - @Override - public boolean isLauncherOverlayShowing() { - if (!RecentsWindowFlags.enableLauncherOverviewInWindow) { - return false; - } - Launcher launcher = Launcher.ACTIVITY_TRACKER.getCreatedContext(); - - return launcher != null && launcher.getWorkspace().isOverlayShown(); - } - /** * todo: Create an abstract animation factory to handle both activity and window implementations * todo: move new factory into BaseContainerInterface and cleanup. @@ -257,4 +256,4 @@ public abstract class BaseWindowInterface extends }); } } -} +} \ No newline at end of file diff --git a/quickstep/src/com/android/quickstep/DesktopFullscreenDrawParams.kt b/quickstep/src/com/android/quickstep/DesktopFullscreenDrawParams.kt index 48d3f9f9b4..43299a4f3e 100644 --- a/quickstep/src/com/android/quickstep/DesktopFullscreenDrawParams.kt +++ b/quickstep/src/com/android/quickstep/DesktopFullscreenDrawParams.kt @@ -27,7 +27,7 @@ constructor(context: Context, cornerRadiusProvider: (Context) -> Float = ::compu companion object { // computeCornerRadius is used as cornerRadiusProvider, so // QuickStepContract::getWindowCornerRadius can be mocked properly. - fun computeCornerRadius(context: Context): Float = + private fun computeCornerRadius(context: Context): Float = context.resources.getDimension(R.dimen.desktop_windowing_freeform_rounded_corner_radius) } } diff --git a/quickstep/src/com/android/quickstep/DesktopSystemShortcut.kt b/quickstep/src/com/android/quickstep/DesktopSystemShortcut.kt index 4fe3944258..4280baf21d 100644 --- a/quickstep/src/com/android/quickstep/DesktopSystemShortcut.kt +++ b/quickstep/src/com/android/quickstep/DesktopSystemShortcut.kt @@ -16,14 +16,12 @@ package com.android.quickstep -import android.view.Display import android.view.View import com.android.internal.jank.Cuj import com.android.launcher3.AbstractFloatingViewHelper import com.android.launcher3.R import com.android.launcher3.logging.StatsLogManager.LauncherEvent import com.android.launcher3.popup.SystemShortcut -import com.android.quickstep.fallback.window.RecentsWindowFlags.enableDesktopMenuOnSecondaryDisplay import com.android.quickstep.views.RecentsView import com.android.quickstep.views.RecentsViewContainer import com.android.quickstep.views.TaskContainer @@ -67,9 +65,8 @@ class DesktopSystemShortcut( @JvmOverloads fun createFactory( abstractFloatingViewHelper: AbstractFloatingViewHelper = AbstractFloatingViewHelper() - ): TaskShortcutFactory = - object : TaskShortcutFactory { - + ): TaskShortcutFactory { + return object : TaskShortcutFactory { override fun getShortcuts( container: RecentsViewContainer, taskContainer: TaskContainer, @@ -77,28 +74,20 @@ class DesktopSystemShortcut( val context = container.asContext() val taskKey = taskContainer.task.key val desktopModeCompatPolicy = DesktopModeCompatPolicy(context) - val isShortcutSupported = - enableDesktopMenuOnSecondaryDisplay || - context.displayId == Display.DEFAULT_DISPLAY - return when { - !isShortcutSupported -> null + !DesktopModeStatus.canEnterDesktopMode(context) -> null - !DesktopModeStatus.isDesktopModeSupportedOnDisplay( - context, - context.display, - ) -> null - - desktopModeCompatPolicy.shouldDisableDesktopEntryPoints( + desktopModeCompatPolicy.isTopActivityExemptFromDesktopWindowing( taskKey.baseActivity?.packageName, taskKey.numActivities, taskKey.isTopActivityNoDisplay, taskKey.isActivityStackTransparent, + taskKey.userId, ) -> null !taskContainer.task.isDockable -> null - else -> + else -> { listOf( DesktopSystemShortcut( container, @@ -106,10 +95,12 @@ class DesktopSystemShortcut( abstractFloatingViewHelper, ) ) + } } } override fun showForGroupedTask() = true } + } } } diff --git a/quickstep/src/com/android/quickstep/DisplayModel.kt b/quickstep/src/com/android/quickstep/DisplayModel.kt index af2a43898a..0b8af4045b 100644 --- a/quickstep/src/com/android/quickstep/DisplayModel.kt +++ b/quickstep/src/com/android/quickstep/DisplayModel.kt @@ -21,21 +21,15 @@ import android.hardware.display.DisplayManager import android.util.Log import android.util.SparseArray import android.view.Display -import android.window.DesktopExperienceFlags import androidx.core.util.valueIterator -import com.android.app.displaylib.DisplayDecorationListener -import com.android.app.displaylib.DisplaysWithDecorationsRepositoryCompat import com.android.quickstep.DisplayModel.DisplayResource +import com.android.quickstep.SystemDecorationChangeObserver.Companion.INSTANCE +import com.android.quickstep.SystemDecorationChangeObserver.DisplayDecorationListener import java.io.PrintWriter -import kotlinx.coroutines.CoroutineDispatcher /** data model for managing resources with lifecycles that match that of the connected display */ -abstract class DisplayModel<RESOURCE_TYPE : DisplayResource>( - val context: Context, - private val systemDecorationChangeObserver: SystemDecorationChangeObserver, - private val displaysWithDecorationsRepositoryCompat: DisplaysWithDecorationsRepositoryCompat, - private val dispatcher: CoroutineDispatcher, -) : DisplayDecorationListener { +abstract class DisplayModel<RESOURCE_TYPE : DisplayResource>(val context: Context) : + DisplayDecorationListener { companion object { private const val TAG = "DisplayModel" @@ -43,10 +37,8 @@ abstract class DisplayModel<RESOURCE_TYPE : DisplayResource>( } private val displayManager = context.getSystemService(Context.DISPLAY_SERVICE) as DisplayManager - private val displayResourceArray = SparseArray<RESOURCE_TYPE>() - private val useDisplayDecorationListener: Boolean = - DesktopExperienceFlags.ENABLE_SYS_DECORS_CALLBACKS_VIA_WM.isTrue() && - DesktopExperienceFlags.ENABLE_DISPLAY_CONTENT_MODE_MANAGEMENT.isTrue() + private var systemDecorationChangeObserver: SystemDecorationChangeObserver? = null + protected val displayResourceArray = SparseArray<RESOURCE_TYPE>() override fun onDisplayAddSystemDecorations(displayId: Int) { if (DEBUG) Log.d(TAG, "onDisplayAdded: displayId=$displayId") @@ -66,25 +58,16 @@ abstract class DisplayModel<RESOURCE_TYPE : DisplayResource>( protected abstract fun createDisplayResource(display: Display): RESOURCE_TYPE protected fun initializeDisplays() { - if (useDisplayDecorationListener) { - displaysWithDecorationsRepositoryCompat.registerDisplayDecorationListener( - this, - dispatcher, - ) - } else { - systemDecorationChangeObserver.registerDisplayDecorationListener(this) - } + systemDecorationChangeObserver = INSTANCE[context] + systemDecorationChangeObserver?.registerDisplayDecorationListener(this) displayManager.displays .filter { getDisplayResource(it.displayId) == null } .forEach { storeDisplayResource(it.displayId) } } fun destroy() { - if (useDisplayDecorationListener) { - displaysWithDecorationsRepositoryCompat.unregisterDisplayDecorationListener(this) - } else { - systemDecorationChangeObserver.unregisterDisplayDecorationListener(this) - } + systemDecorationChangeObserver?.unregisterDisplayDecorationListener(this) + systemDecorationChangeObserver = null displayResourceArray.valueIterator().forEach { displayResource -> displayResource.cleanup() } diff --git a/quickstep/src/com/android/quickstep/ExternalDisplaySystemShortcut.kt b/quickstep/src/com/android/quickstep/ExternalDisplaySystemShortcut.kt index 3b20ae18b1..3b823f5e60 100644 --- a/quickstep/src/com/android/quickstep/ExternalDisplaySystemShortcut.kt +++ b/quickstep/src/com/android/quickstep/ExternalDisplaySystemShortcut.kt @@ -24,7 +24,7 @@ import com.android.launcher3.popup.SystemShortcut import com.android.quickstep.views.RecentsView import com.android.quickstep.views.RecentsViewContainer import com.android.quickstep.views.TaskContainer -import com.android.window.flags2.Flags +import com.android.window.flags.Flags import com.android.wm.shell.shared.desktopmode.DesktopModeCompatPolicy import com.android.wm.shell.shared.desktopmode.DesktopModeStatus @@ -75,11 +75,12 @@ class ExternalDisplaySystemShortcut( !Flags.moveToExternalDisplayShortcut() -> null - desktopModeCompatPolicy.shouldDisableDesktopEntryPoints( + desktopModeCompatPolicy.isTopActivityExemptFromDesktopWindowing( taskKey.baseActivity?.packageName, taskKey.numActivities, taskKey.isTopActivityNoDisplay, taskKey.isActivityStackTransparent, + taskKey.userId, ) -> null else -> { diff --git a/quickstep/src/com/android/quickstep/FallbackActivityInterface.java b/quickstep/src/com/android/quickstep/FallbackActivityInterface.java index 740e2d6647..7654471555 100644 --- a/quickstep/src/com/android/quickstep/FallbackActivityInterface.java +++ b/quickstep/src/com/android/quickstep/FallbackActivityInterface.java @@ -27,14 +27,12 @@ import android.graphics.Rect; import android.view.MotionEvent; import android.view.RemoteAnimationTarget; -import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.launcher3.DeviceProfile; import com.android.launcher3.statemanager.StateManager; import com.android.launcher3.taskbar.FallbackTaskbarUIController; import com.android.launcher3.util.DisplayController; -import com.android.launcher3.views.ScrimColors; import com.android.quickstep.GestureState.GestureEndTarget; import com.android.quickstep.fallback.RecentsState; import com.android.quickstep.orientation.RecentsPagedOrientationHandler; @@ -65,9 +63,9 @@ public final class FallbackActivityInterface extends RecentsPagedOrientationHandler orientationHandler) { calculateTaskSize(context, dp, outRect, orientationHandler); if (dp.isVerticalBarLayout() && DisplayController.getNavigationMode(context) != NO_BUTTON) { - return dp.isSeascape() ? outRect.left : (dp.getDeviceProperties().getWidthPx() - outRect.right); + return dp.isSeascape() ? outRect.left : (dp.widthPx - outRect.right); } else { - return dp.getDeviceProperties().getHeightPx() - outRect.bottom; + return dp.heightPx - outRect.bottom; } } @@ -135,8 +133,7 @@ public final class FallbackActivityInterface extends } @Override - public boolean deferStartingActivity( - @NonNull RecentsAnimationDeviceState deviceState, MotionEvent ev) { + public boolean deferStartingActivity(RecentsAnimationDeviceState deviceState, MotionEvent ev) { // In non-gesture mode, user might be clicking on the home button which would directly // start the home activity instead of going through recents. In that case, defer starting // recents until we are sure it is a gesture. @@ -228,8 +225,7 @@ public final class FallbackActivityInterface extends } @Override - protected ScrimColors getOverviewScrimColorForState(RecentsActivity activity, - RecentsState state) { + protected int getOverviewScrimColorForState(RecentsActivity activity, RecentsState state) { return state.getScrimColor(activity); } } diff --git a/quickstep/src/com/android/quickstep/FallbackSwipeHandler.java b/quickstep/src/com/android/quickstep/FallbackSwipeHandler.java index d29a556155..fc37091f86 100644 --- a/quickstep/src/com/android/quickstep/FallbackSwipeHandler.java +++ b/quickstep/src/com/android/quickstep/FallbackSwipeHandler.java @@ -20,7 +20,6 @@ import static android.content.Intent.EXTRA_COMPONENT_NAME; import static android.content.Intent.EXTRA_USER; import static com.android.app.animation.Interpolators.ACCELERATE; -import static com.android.launcher3.GestureNavContract.EXTRA_ENABLE_GESTURE_CONTRACT; import static com.android.launcher3.GestureNavContract.EXTRA_GESTURE_CONTRACT; import static com.android.launcher3.GestureNavContract.EXTRA_ICON_POSITION; import static com.android.launcher3.GestureNavContract.EXTRA_ICON_SURFACE; @@ -108,13 +107,12 @@ public class FallbackSwipeHandler extends private boolean mAppCanEnterPip; - public FallbackSwipeHandler(Context context, TaskAnimationManager taskAnimationManager, - RecentsAnimationDeviceState deviceState, RotationTouchHelper rotationTouchHelper, - GestureState gestureState, long touchTimeMs, + public FallbackSwipeHandler(Context context, + TaskAnimationManager taskAnimationManager, GestureState gestureState, long touchTimeMs, boolean continuingLastGesture, InputConsumerController inputConsumer, MSDLPlayerWrapper msdlPlayerWrapper) { - super(context, taskAnimationManager, deviceState, rotationTouchHelper, gestureState, - touchTimeMs, continuingLastGesture, inputConsumer, msdlPlayerWrapper); + super(context, taskAnimationManager, gestureState, touchTimeMs, + continuingLastGesture, inputConsumer, msdlPlayerWrapper); mRunningOverHome = mGestureState.getRunningTask() != null && mGestureState.getRunningTask().isHomeTask(); @@ -205,9 +203,7 @@ public class FallbackSwipeHandler extends } else { recentsCallback = callback; } - if (mRecentsView != null) { - mRecentsView.cleanupRemoteTargets(); - } + mRecentsView.cleanupRemoteTargets(); mRecentsAnimationController.finish( mAppCanEnterPip /* toRecents */, recentsCallback, true /* sendUserLeaveHint */); } @@ -240,7 +236,7 @@ public class FallbackSwipeHandler extends @Override public AnimatorPlaybackController createActivityAnimationToHome() { // copied from {@link LauncherSwipeHandlerV2.LauncherHomeAnimationFactory} - long accuracy = 2 * Math.max(mDp.getDeviceProperties().getWidthPx(), mDp.getDeviceProperties().getHeightPx()); + long accuracy = 2 * Math.max(mDp.widthPx, mDp.heightPx); return mContainer.getStateManager().createAnimationToNewWorkspace( RecentsState.HOME, accuracy, StateAnimationConfig.SKIP_ALL_ANIMATIONS); } @@ -349,7 +345,7 @@ public class FallbackSwipeHandler extends .setStartValue(mVerticalShiftForScale.value) .setEndValue(0) .setStartVelocity(-velocity / mTransitionDragLength) - .setMinimumVisibleChange(1f / mDp.getDeviceProperties().getHeightPx()) + .setMinimumVisibleChange(1f / mDp.heightPx) .setDampingRatio(0.6f) .setStiffness(800) .build(mVerticalShiftForScale, AnimatedFloat.VALUE) @@ -423,7 +419,6 @@ public class FallbackSwipeHandler extends } Bundle gestureNavContract = new Bundle(); - gestureNavContract.putBoolean(EXTRA_ENABLE_GESTURE_CONTRACT, !mIsSwipeForSplit); gestureNavContract.putParcelable(EXTRA_COMPONENT_NAME, key.getComponent()); gestureNavContract.putParcelable(EXTRA_USER, UserHandle.of(key.userId)); gestureNavContract.putParcelable( diff --git a/quickstep/src/com/android/quickstep/FallbackWindowInterface.java b/quickstep/src/com/android/quickstep/FallbackWindowInterface.java index 330f7f1730..143da34ae8 100644 --- a/quickstep/src/com/android/quickstep/FallbackWindowInterface.java +++ b/quickstep/src/com/android/quickstep/FallbackWindowInterface.java @@ -24,19 +24,16 @@ import android.animation.Animator; import android.animation.AnimatorSet; import android.content.Context; import android.graphics.Rect; +import android.view.MotionEvent; import android.view.RemoteAnimationTarget; import androidx.annotation.Nullable; -import com.android.app.displaylib.PerDisplayRepository; import com.android.launcher3.DeviceProfile; import com.android.launcher3.statemanager.StateManager; import com.android.launcher3.taskbar.TaskbarUIController; -import com.android.launcher3.util.DaggerSingletonObject; import com.android.launcher3.util.DisplayController; -import com.android.launcher3.views.ScrimColors; import com.android.quickstep.GestureState.GestureEndTarget; -import com.android.quickstep.dagger.QuickstepBaseAppComponent; import com.android.quickstep.fallback.RecentsState; import com.android.quickstep.fallback.window.RecentsWindowManager; import com.android.quickstep.orientation.RecentsPagedOrientationHandler; @@ -44,31 +41,20 @@ import com.android.quickstep.util.AnimatorControllerWithResistance; import com.android.quickstep.util.ContextInitListener; import com.android.quickstep.views.RecentsView; -import dagger.assisted.AssistedInject; - import java.util.function.Consumer; import java.util.function.Predicate; - /** * {@link BaseWindowInterface} for recents when the default launcher is different than the * currently running one and apps should interact with the {@link RecentsWindowManager} as opposed * to the in-launcher one. */ -public final class FallbackWindowInterface extends BaseWindowInterface { +public final class FallbackWindowInterface extends BaseWindowInterface{ - public static final DaggerSingletonObject<PerDisplayRepository<FallbackWindowInterface>> - REPOSITORY_INSTANCE = new DaggerSingletonObject<>( - QuickstepBaseAppComponent::getFallbackWindowInterfaceRepository); + private final RecentsWindowManager mRecentsWindowManager; - @Nullable private RecentsWindowManager mRecentsWindowManager = null; - - @AssistedInject - public FallbackWindowInterface() { + public FallbackWindowInterface(RecentsWindowManager recentsWindowManager) { super(DEFAULT, BACKGROUND_APP); - } - - public void setRecentsWindowManager(@Nullable RecentsWindowManager recentsWindowManager) { mRecentsWindowManager = recentsWindowManager; } @@ -78,9 +64,9 @@ public final class FallbackWindowInterface extends BaseWindowInterface { RecentsPagedOrientationHandler orientationHandler) { calculateTaskSize(context, dp, outRect, orientationHandler); if (dp.isVerticalBarLayout() && DisplayController.getNavigationMode(context) != NO_BUTTON) { - return dp.isSeascape() ? outRect.left : (dp.getDeviceProperties().getWidthPx() - outRect.right); + return dp.isSeascape() ? outRect.left : (dp.widthPx - outRect.right); } else { - return dp.getDeviceProperties().getHeightPx() - outRect.bottom; + return dp.heightPx - outRect.bottom; } } @@ -133,8 +119,8 @@ public final class FallbackWindowInterface extends BaseWindowInterface { @Override public <T extends RecentsView<?, ?>> T getVisibleRecentsView() { RecentsWindowManager manager = getCreatedContainer(); - if (manager != null && (manager.isStarted() || isInLiveTileMode())) { - return manager.getOverviewPanel(); + if(manager.isStarted() || isInLiveTileMode()){ + return getCreatedContainer().getOverviewPanel(); } return null; } @@ -145,17 +131,26 @@ public final class FallbackWindowInterface extends BaseWindowInterface { } @Override - protected ScrimColors getOverviewScrimColorForState(RecentsWindowManager container, - RecentsState state) { + protected int getOverviewScrimColorForState(RecentsWindowManager container, + RecentsState state) { return state.getScrimColor(container.asContext()); } + @Override + public boolean deferStartingActivity(RecentsAnimationDeviceState deviceState, MotionEvent ev) { + // In non-gesture mode, user might be clicking on the home button which would directly + // start the home activity instead of going through recents. In that case, defer starting + // recents until we are sure it is a gesture. + return false; +// return !deviceState.isFullyGesturalNavMode(); +// || super.deferStartingActivity(deviceState, ev); + } + @Override public void onExitOverview(Runnable exitRunnable) { - RecentsWindowManager windowManager = getCreatedContainer(); final StateManager<RecentsState, RecentsWindowManager> stateManager = - windowManager != null ? windowManager.getStateManager() : null; - if (stateManager == null || stateManager.getState() == HOME) { + getCreatedContainer().getStateManager(); + if (stateManager.getState() == HOME) { exitRunnable.run(); notifyRecentsOfOrientation(); return; @@ -208,11 +203,8 @@ public final class FallbackWindowInterface extends BaseWindowInterface { } private void notifyRecentsOfOrientation() { - RecentsWindowManager recentsWindowManager = getCreatedContainer(); - if (recentsWindowManager != null) { - // reset layout on swipe to home - ((RecentsView) recentsWindowManager.getOverviewPanel()).reapplyActiveRotation(); - } + // reset layout on swipe to home + ((RecentsView) getCreatedContainer().getOverviewPanel()).reapplyActiveRotation(); } @Override diff --git a/quickstep/src/com/android/quickstep/GestureState.java b/quickstep/src/com/android/quickstep/GestureState.java index 2492ac3aa8..c4ba2d52bb 100644 --- a/quickstep/src/com/android/quickstep/GestureState.java +++ b/quickstep/src/com/android/quickstep/GestureState.java @@ -41,7 +41,7 @@ import androidx.annotation.Nullable; import com.android.launcher3.statemanager.BaseState; import com.android.launcher3.statemanager.StatefulContainer; import com.android.quickstep.TopTaskTracker.CachedTaskInfo; -import com.android.quickstep.fallback.window.RecentsWindowManager; +import com.android.quickstep.fallback.window.RecentsWindowFlags; import com.android.quickstep.util.ActiveGestureErrorDetector; import com.android.quickstep.util.ActiveGestureLog; import com.android.quickstep.util.ActiveGestureProtoLogProxy; @@ -194,7 +194,7 @@ public class GestureState implements RecentsAnimationCallbacks.RecentsAnimationL public GestureState(OverviewComponentObserver componentObserver, int displayId, int gestureId) { mDisplayId = displayId; - mHomeIntent = componentObserver.getHomeIntent(displayId); + mHomeIntent = componentObserver.getHomeIntent(); mOverviewIntent = componentObserver.getOverviewIntent(); mContainerInterface = componentObserver.getContainerInterface(displayId); mStateCallback = new MultiStateCallback( @@ -323,7 +323,7 @@ public class GestureState implements RecentsAnimationCallbacks.RecentsAnimationL */ public boolean useSyntheticRecentsTransition() { return mRunningTask.isHomeTask() - && mContainerInterface.getCreatedContainer() instanceof RecentsWindowManager; + && RecentsWindowFlags.Companion.getEnableOverviewInWindow(); } /** @@ -361,8 +361,7 @@ public class GestureState implements RecentsAnimationCallbacks.RecentsAnimationL * @return the single top-most running taskId for this gesture */ public int getTopRunningTaskId() { - var taskIds = getRunningTaskIds(/* getMultipleTasks = */ false); - return taskIds.length != 0 ? taskIds[0] : INVALID_TASK_ID; + return getRunningTaskIds(false /*getMultipleTasks*/)[0]; } /** diff --git a/quickstep/src/com/android/quickstep/HighResLoadingState.kt b/quickstep/src/com/android/quickstep/HighResLoadingState.kt index aabaecfdfe..8a21c4f613 100644 --- a/quickstep/src/com/android/quickstep/HighResLoadingState.kt +++ b/quickstep/src/com/android/quickstep/HighResLoadingState.kt @@ -18,7 +18,6 @@ package com.android.quickstep import android.content.res.Resources import com.android.quickstep.recents.data.HighResLoadingStateNotifier -import java.util.concurrent.CopyOnWriteArrayList /** Determines when high res or low res thumbnails should be loaded. */ class HighResLoadingState : HighResLoadingStateNotifier { @@ -39,7 +38,7 @@ class HighResLoadingState : HighResLoadingStateNotifier { var isEnabled: Boolean = false private set - private val callbacks = CopyOnWriteArrayList<HighResLoadingStateChangedCallback>() + private val callbacks = ArrayList<HighResLoadingStateChangedCallback>() interface HighResLoadingStateChangedCallback { fun onHighResLoadingStateChanged(enabled: Boolean) @@ -57,7 +56,7 @@ class HighResLoadingState : HighResLoadingStateNotifier { val prevState = isEnabled isEnabled = forceHighResThumbnails || (visible && !flingingFast) if (prevState != isEnabled) { - for (callback in callbacks) { + for (callback in callbacks.asReversed()) { callback.onHighResLoadingStateChanged(isEnabled) } } diff --git a/quickstep/src/com/android/quickstep/HomeVisibilityState.kt b/quickstep/src/com/android/quickstep/HomeVisibilityState.kt index 253b434cb9..020b9e2fab 100644 --- a/quickstep/src/com/android/quickstep/HomeVisibilityState.kt +++ b/quickstep/src/com/android/quickstep/HomeVisibilityState.kt @@ -20,6 +20,7 @@ import android.os.RemoteException import android.util.Log import android.view.InsetsState import android.view.WindowInsets + import com.android.launcher3.Utilities import com.android.launcher3.config.FeatureFlags import com.android.launcher3.util.Executors @@ -46,25 +47,18 @@ class HomeVisibilityState { transitions?.setHomeTransitionListener( object : Stub() { override fun onHomeVisibilityChanged(isVisible: Boolean) { - Utilities.postAsyncCallback(Executors.MAIN_EXECUTOR.handler) { - isHomeVisible = isVisible - val copiedListeners = listeners.toSet() - copiedListeners.forEach { it.onHomeVisibilityChanged(isVisible) } - } + Utilities.postAsyncCallback( + Executors.MAIN_EXECUTOR.handler, + { + isHomeVisible = isVisible + listeners.forEach { it.onHomeVisibilityChanged(isVisible) } + }, + ) } - override fun onDisplayInsetsChanged(insetsState: InsetsState) { - val displayFrame = insetsState.displayFrame - val bottomInset = - insetsState - .calculateInsets( - displayFrame, - displayFrame, - WindowInsets.Type.navigationBars(), - false, - ) - .bottom - navbarInsetPosition = displayFrame.bottom - bottomInset + val bottomInset = insetsState.calculateInsets(insetsState.displayFrame, + WindowInsets.Type.navigationBars(), false).bottom + navbarInsetPosition = insetsState.displayFrame.bottom - bottomInset } } ) diff --git a/quickstep/src/com/android/quickstep/InputConsumerUtils.kt b/quickstep/src/com/android/quickstep/InputConsumerUtils.kt index 549fffdfa5..89b5b291c6 100644 --- a/quickstep/src/com/android/quickstep/InputConsumerUtils.kt +++ b/quickstep/src/com/android/quickstep/InputConsumerUtils.kt @@ -23,7 +23,6 @@ import com.android.launcher3.statemanager.BaseState import com.android.launcher3.statemanager.StatefulContainer import com.android.launcher3.taskbar.TaskbarManager import com.android.launcher3.util.LockedUserState.Companion.get -import com.android.quickstep.fallback.window.RecentsWindowManager import com.android.quickstep.inputconsumers.AccessibilityInputConsumer import com.android.quickstep.inputconsumers.AssistantInputConsumer import com.android.quickstep.inputconsumers.BubbleBarInputConsumer @@ -47,7 +46,6 @@ import com.android.quickstep.views.RecentsViewContainer import com.android.systemui.shared.system.InputChannelCompat import com.android.systemui.shared.system.InputMonitorCompat import com.android.wm.shell.Flags -import com.android.wm.shell.shared.desktopmode.DesktopState import java.util.function.Consumer import java.util.function.Function @@ -73,9 +71,8 @@ object InputConsumerUtils { swipeUpProxyProvider: Function<GestureState?, AnimatedFloat?>, overviewCommandHelper: OverviewCommandHelper, event: MotionEvent, - rotationTouchHelper: RotationTouchHelper, ): InputConsumer where T : RecentsViewContainer, T : StatefulContainer<S> { - val tac = taskbarManager.getCurrentActivityContext() + val tac = taskbarManager.currentActivityContext val bubbleControllers = tac?.bubbleControllers if (bubbleControllers != null && BubbleBarInputConsumer.isEventOnBubbles(tac, event)) { val consumer: InputConsumer = @@ -132,7 +129,6 @@ object InputConsumerUtils { taskAnimationManager, inputMonitorCompat, reasonString.append("%scan start system gesture", SUBSTRING_PREFIX), - rotationTouchHelper, ) } else { getDefaultInputConsumer( @@ -174,7 +170,6 @@ object InputConsumerUtils { inputEventReceiver, event, reasonString, - rotationTouchHelper, ) } else { reasonString = @@ -394,7 +389,6 @@ object InputConsumerUtils { deviceState, base, inputMonitorCompat, - rotationTouchHelper, ) } } else { @@ -502,7 +496,6 @@ object InputConsumerUtils { inputEventReceiver: InputChannelCompat.InputEventReceiver, event: MotionEvent, reasonString: CompoundString, - rotationTouchHelper: RotationTouchHelper, ): InputConsumer where T : RecentsViewContainer, T : StatefulContainer<S> { if (deviceState.isKeyguardShowingOccluded) { // This handles apps showing over the lockscreen (e.g. camera) @@ -519,17 +512,15 @@ object InputConsumerUtils { "trying to use device locked input consumer", SUBSTRING_PREFIX, ), - rotationTouchHelper, ) } reasonString.append("%skeyguard is not showing occluded", SUBSTRING_PREFIX) val runningTask = gestureState.runningTask - val containerInterface = gestureState.getContainerInterface<S, T>() // Use overview input consumer for sharesheets on top of home. val forceOverviewInputConsumer = - containerInterface.isStarted() && + gestureState.getContainerInterface<S, T>().isStarted() && runningTask != null && runningTask.isRootChooseActivity @@ -551,21 +542,19 @@ object InputConsumerUtils { deviceState.isPredictiveBackToHomeInProgress) // with shell-transitions, home is resumed during recents animation, so // explicitly check against recents animation too. - // Home is always running and isn't resumed when home shows behind desktop. val launcherResumedThroughShellTransition = - containerInterface.isResumed() && - !previousGestureState.isRecentsAnimationRunning && - !DesktopState.fromContext(context).shouldShowHomeBehindDesktop - + (gestureState.getContainerInterface<S, T>().isResumed() && + !previousGestureState.isRecentsAnimationRunning) // If a task fragment within Launcher is resumed val launcherChildActivityResumed = - runningTask != null && + (com.android.launcher3.Flags.useActivityOverlay() && + runningTask != null && runningTask.isHomeTask && - !previousGestureState.isRecentsAnimationRunning && - overviewComponentObserver.isHomeAndOverviewSame && - containerInterface.isLauncherOverlayShowing + overviewComponentObserver.isHomeAndOverviewSameActivity && + !launcherResumedThroughShellTransition && + !previousGestureState.isRecentsAnimationRunning) - return if (containerInterface.isInLiveTileMode()) { + return if (gestureState.getContainerInterface<S, T>().isInLiveTileMode()) { createOverviewInputConsumer<S, T>( userUnlocked, taskAnimationManager, @@ -602,18 +591,19 @@ object InputConsumerUtils { previousGestureState, gestureState, event, - reasonString - .append( - if (previousGestureAnimatedToLauncher) - (if (previousGestureState.isRunningAnimationToLauncher) - "%sprevious gesture is still animating to launcher" - else "%spredictive back animation is still in progress") - else if (launcherResumedThroughShellTransition) - "%slauncher resumed through a shell transition" - else "%sforceOverviewInputConsumer == true", - SUBSTRING_PREFIX, - ) - .append(", trying to use overview input consumer"), + reasonString.append( + if (previousGestureAnimatedToLauncher) + ("%sprevious gesture animated to launcher, " + + "trying to use overview input consumer") + else + (if (launcherResumedThroughShellTransition) + ("%slauncher resumed through a shell transition, " + + "trying to use overview input consumer") + else + ("%sforceOverviewInputConsumer == true, " + + "trying to use overview input consumer")), + SUBSTRING_PREFIX, + ), ) } else if (deviceState.isGestureBlockedTask(runningTask) || launcherChildActivityResumed) { getDefaultInputConsumer( @@ -641,8 +631,6 @@ object InputConsumerUtils { inputEventReceiver, gestureState, event, - runningTask.isHomeTask, - rotationTouchHelper, ) } } @@ -656,7 +644,6 @@ object InputConsumerUtils { taskAnimationManager: TaskAnimationManager, inputMonitorCompat: InputMonitorCompat, reasonString: CompoundString, - rotationTouchHelper: RotationTouchHelper, ): InputConsumer { return if ( (deviceState.isFullyGesturalNavMode || gestureState.isTrackpadGesture) && @@ -673,7 +660,6 @@ object InputConsumerUtils { taskAnimationManager, gestureState, inputMonitorCompat, - rotationTouchHelper, ) } else { getDefaultInputConsumer( @@ -704,9 +690,8 @@ object InputConsumerUtils { event: MotionEvent, reasonString: CompoundString, ): InputConsumer where T : RecentsViewContainer, T : StatefulContainer<S> { - val containerInterface = gestureState.getContainerInterface<S, T>()!! val container: T = - containerInterface.getCreatedContainer() + gestureState.getContainerInterface<S, T>().getCreatedContainer() ?: return getDefaultInputConsumer( gestureState.displayId, userUnlocked, @@ -723,16 +708,16 @@ object InputConsumerUtils { val isPreviousGestureAnimatingToLauncher = (previousGestureState.isRunningAnimationToLauncher || deviceState.isPredictiveBackToHomeInProgress) - val isInLiveTileMode: Boolean = containerInterface.isInLiveTileMode() + val isInLiveTileMode: Boolean = + gestureState.getContainerInterface<S, T>().isInLiveTileMode() reasonString.append( if (hasWindowFocus) "%sactivity has window focus" - else if (isPreviousGestureAnimatingToLauncher) - (if (previousGestureState.isRunningAnimationToLauncher) + else + (if (isPreviousGestureAnimatingToLauncher) "%sprevious gesture is still animating to launcher" - else "%spredictive back animation is still in progress") - else if (isInLiveTileMode) "%sdevice is in live mode" - else "%sall overview focus conditions failed", + else if (isInLiveTileMode) "%sdevice is in live mode" + else "%sall overview focus conditions failed"), SUBSTRING_PREFIX, ) return if (hasWindowFocus || isPreviousGestureAnimatingToLauncher || isInLiveTileMode) { @@ -805,16 +790,13 @@ object InputConsumerUtils { inputEventReceiver: InputChannelCompat.InputEventReceiver, gestureState: GestureState, event: MotionEvent, - isHomeTask: Boolean, - rotationTouchHelper: RotationTouchHelper, ): InputConsumer where T : RecentsViewContainer, T : StatefulContainer<S> { - val containerInterface = gestureState.getContainerInterface<S, T>() val shouldDefer = (!overviewComponentObserver.isHomeAndOverviewSame || - containerInterface.deferStartingActivity(deviceState, event)) - val disableHorizontalSwipe = - deviceState.isInExclusionRegion(event) && - (containerInterface.getCreatedContainer() !is RecentsWindowManager || !isHomeTask) + gestureState + .getContainerInterface<S, T>() + .deferStartingActivity(deviceState, event)) + val disableHorizontalSwipe = deviceState.isInExclusionRegion(event) return OtherActivityInputConsumer( /* base= */ context, deviceState, @@ -826,7 +808,6 @@ object InputConsumerUtils { inputEventReceiver, disableHorizontalSwipe, swipeUpHandlerFactory, - rotationTouchHelper, ) } diff --git a/quickstep/src/com/android/quickstep/InstantAppResolverImpl.java b/quickstep/src/com/android/quickstep/InstantAppResolverImpl.java index bb208c49c7..33a2366157 100644 --- a/quickstep/src/com/android/quickstep/InstantAppResolverImpl.java +++ b/quickstep/src/com/android/quickstep/InstantAppResolverImpl.java @@ -24,12 +24,9 @@ import android.os.Process; import android.os.UserHandle; import android.util.Log; -import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.util.InstantAppResolver; -import javax.inject.Inject; - /** * Implementation of InstantAppResolver using platform APIs */ @@ -41,9 +38,7 @@ public class InstantAppResolverImpl extends InstantAppResolver { private final PackageManager mPM; - @Inject - public InstantAppResolverImpl(@ApplicationContext Context context) { - super(); + public InstantAppResolverImpl(Context context) { mPM = context.getPackageManager(); } diff --git a/quickstep/src/com/android/quickstep/LauncherActivityInterface.java b/quickstep/src/com/android/quickstep/LauncherActivityInterface.java index 4badf1007c..fa8e4846b3 100644 --- a/quickstep/src/com/android/quickstep/LauncherActivityInterface.java +++ b/quickstep/src/com/android/quickstep/LauncherActivityInterface.java @@ -27,6 +27,7 @@ import android.animation.Animator; import android.animation.AnimatorSet; import android.content.Context; import android.graphics.Rect; +import android.view.MotionEvent; import android.view.RemoteAnimationTarget; import androidx.annotation.Nullable; @@ -44,14 +45,12 @@ import com.android.launcher3.taskbar.LauncherTaskbarUIController; import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.NavigationMode; -import com.android.launcher3.views.ScrimColors; import com.android.quickstep.GestureState.GestureEndTarget; import com.android.quickstep.orientation.RecentsPagedOrientationHandler; import com.android.quickstep.util.AnimatorControllerWithResistance; import com.android.quickstep.util.LayoutUtils; import com.android.quickstep.views.RecentsView; import com.android.systemui.plugins.shared.LauncherOverlayManager; -import com.android.wm.shell.shared.desktopmode.DesktopState; import java.util.function.Consumer; import java.util.function.Predicate; @@ -74,7 +73,7 @@ public final class LauncherActivityInterface extends calculateTaskSize(context, dp, outRect, orientationHandler); if (dp.isVerticalBarLayout() && DisplayController.getNavigationMode(context) != NavigationMode.NO_BUTTON) { - return dp.isSeascape() ? outRect.left : (dp.getDeviceProperties().getWidthPx() - outRect.right); + return dp.isSeascape() ? outRect.left : (dp.widthPx - outRect.right); } else { return LayoutUtils.getShelfTrackingDistance(context, dp, orientationHandler, this); } @@ -212,12 +211,6 @@ public final class LauncherActivityInterface extends if (launcher == null) { return false; } - if (DesktopState.fromContext(launcher.asContext()).getShouldShowHomeBehindDesktop() - && !launcher.hasWindowFocus()) { - // Home is always shown behind desktop, but it is currently not the top task, so treat - // it as if it is not visible. - return false; - } if (isInLiveTileMode()) { RecentsView recentsView = getVisibleRecentsView(); if (recentsView == null) { @@ -327,11 +320,29 @@ public final class LauncherActivityInterface extends } @Override - protected ScrimColors getOverviewScrimColorForState(QuickstepLauncher activity, - LauncherState state) { + protected int getOverviewScrimColorForState(QuickstepLauncher activity, LauncherState state) { return state.getWorkspaceScrimColor(activity); } + @Override + public boolean deferStartingActivity(RecentsAnimationDeviceState deviceState, MotionEvent ev) { + LauncherTaskbarUIController uiController = getTaskbarController(); + if (uiController == null) { + return super.deferStartingActivity(deviceState, ev); + } + return uiController.isEventOverAnyTaskbarItem(ev) + || super.deferStartingActivity(deviceState, ev); + } + + @Override + public boolean shouldCancelCurrentGesture() { + LauncherTaskbarUIController uiController = getTaskbarController(); + if (uiController == null) { + return super.shouldCancelCurrentGesture(); + } + return uiController.isDraggingItem(); + } + @Override public LauncherState stateFromGestureEndTarget(GestureEndTarget endTarget) { switch (endTarget) { @@ -347,11 +358,4 @@ public final class LauncherActivityInterface extends return NORMAL; } } - - @Override - public boolean isLauncherOverlayShowing() { - Launcher launcher = Launcher.ACTIVITY_TRACKER.getCreatedContext(); - - return launcher != null && launcher.getWorkspace().isOverlayShown(); - } } diff --git a/quickstep/src/com/android/quickstep/LauncherBackAnimationController.java b/quickstep/src/com/android/quickstep/LauncherBackAnimationController.java index d545c47361..261ad9fb7c 100644 --- a/quickstep/src/com/android/quickstep/LauncherBackAnimationController.java +++ b/quickstep/src/com/android/quickstep/LauncherBackAnimationController.java @@ -25,9 +25,8 @@ import static com.android.launcher3.AbstractFloatingView.TYPE_REBIND_SAFE; import static com.android.launcher3.BaseActivity.INVISIBLE_ALL; import static com.android.launcher3.BaseActivity.INVISIBLE_BY_PENDING_FLAGS; import static com.android.launcher3.BaseActivity.PENDING_INVISIBLE_BY_WALLPAPER_ANIMATION; -import static com.android.launcher3.Flags.enableOverviewBackgroundWallpaperBlur; -import static com.android.window.flags2.Flags.predictiveBackThreeButtonNav; -import static com.android.window.flags2.Flags.removeDepartTargetFromMotion; +import static com.android.window.flags.Flags.predictiveBackThreeButtonNav; +import static com.android.window.flags.Flags.removeDepartTargetFromMotion; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; @@ -99,6 +98,7 @@ public class LauncherBackAnimationController { Flags.predictiveBackToHomePolish() ? 0.75f : 0.85f; private static final float MAX_SCRIM_ALPHA_DARK = 0.8f; private static final float MAX_SCRIM_ALPHA_LIGHT = 0.2f; + private static final int MAX_BLUR_RADIUS = 20; private static final int MIN_BLUR_RADIUS_PRE_COMMIT = 10; private final QuickstepTransitionManager mQuickstepTransitionManager; @@ -130,7 +130,6 @@ public class LauncherBackAnimationController { private ValueAnimator mScrimAlphaAnimator; private float mScrimAlpha; private boolean mOverridingStatusBarFlags; - private int mMaxBlurRadius; private int mLastBlurRadius = 0; private final ComponentCallbacks mComponentCallbacks = new ComponentCallbacks() { @@ -424,7 +423,7 @@ public class LauncherBackAnimationController { final float[] colorComponents = new float[] { 0f, 0f, 0f }; mScrimAlpha = (isDarkTheme) ? MAX_SCRIM_ALPHA_DARK : MAX_SCRIM_ALPHA_LIGHT; - setBlur(mMaxBlurRadius); + setBlur(MAX_BLUR_RADIUS); mTransaction .setColor(mScrimLayer, colorComponents) .setAlpha(mScrimLayer, mScrimAlpha) @@ -452,7 +451,7 @@ public class LauncherBackAnimationController { // Scrim hasn't been attached yet. Let's attach it. addScrimLayer(); } else { - mLastBlurRadius = (int) lerp(mMaxBlurRadius, MIN_BLUR_RADIUS_PRE_COMMIT, progress); + mLastBlurRadius = (int) lerp(MAX_BLUR_RADIUS, MIN_BLUR_RADIUS_PRE_COMMIT, progress); setBlur(mLastBlurRadius); } float screenWidth = mStartRect.width(); @@ -612,7 +611,7 @@ public class LauncherBackAnimationController { // Scrim hasn't been attached yet. Let's attach it. addScrimLayer(); } - mScrimAlphaAnimator = ValueAnimator.ofFloat(1, 0); + mScrimAlphaAnimator = new ValueAnimator().ofFloat(1, 0); mScrimAlphaAnimator.addUpdateListener(animation -> { float value = (Float) animation.getAnimatedValue(); if (mScrimLayer != null && mScrimLayer.isValid()) { @@ -628,7 +627,7 @@ public class LauncherBackAnimationController { } }); mScrimAlphaAnimator.setDuration(SCRIM_FADE_DURATION).start(); - backAnim.start(mLauncher.getStateManager()); + backAnim.start(); } private void loadResources() { @@ -638,14 +637,8 @@ public class LauncherBackAnimationController { R.dimen.swipe_back_window_corner_radius) : 0; mWindowScaleStartCornerRadius = QuickStepContract.getWindowCornerRadius(mLauncher); - // pE-TODO(QPR1): mStatusBarHeight is 24 - mStatusBarHeight = SystemBarUtils.getStatusBarHeight(mLauncher); - if (Flags.allAppsBlur() || enableOverviewBackgroundWallpaperBlur()) { - mMaxBlurRadius = mLauncher.getResources().getDimensionPixelSize( - R.dimen.max_depth_blur_radius_enhanced); - } else { - mMaxBlurRadius = mLauncher.getResources().getInteger(R.integer.max_depth_blur_radius); - } +// mStatusBarHeight = SystemBarUtils.getStatusBarHeight(mLauncher); + mStatusBarHeight = 24; } /** diff --git a/quickstep/src/com/android/quickstep/LauncherRestoreEventLoggerImpl.kt b/quickstep/src/com/android/quickstep/LauncherRestoreEventLoggerImpl.kt index 8bb6e17b4b..e61f3792b0 100644 --- a/quickstep/src/com/android/quickstep/LauncherRestoreEventLoggerImpl.kt +++ b/quickstep/src/com/android/quickstep/LauncherRestoreEventLoggerImpl.kt @@ -10,17 +10,13 @@ import com.android.launcher3.Flags.enableLauncherBrMetricsFixed import com.android.launcher3.LauncherSettings.Favorites import com.android.launcher3.Utilities import com.android.launcher3.backuprestore.LauncherRestoreEventLogger -import com.android.launcher3.dagger.ApplicationContext -import javax.inject.Inject /** * Concrete implementation for wrapper to log Restore event metrics for both success and failure to * restore Launcher workspace from a backup. This implementation accesses SystemApis so is only * available to QuickStep/NexusLauncher. */ -class LauncherRestoreEventLoggerImpl -@Inject -constructor(@ApplicationContext private val context: Context) : LauncherRestoreEventLogger() { +class LauncherRestoreEventLoggerImpl(val context: Context) : LauncherRestoreEventLogger() { companion object { const val TAG = "LauncherRestoreEventLoggerImpl" @@ -51,7 +47,7 @@ constructor(@ApplicationContext private val context: Context) : LauncherRestoreE override fun logLauncherItemsRestoreFailed( @BackupRestoreDataType dataType: String, count: Int, - @BackupRestoreError error: String?, + @BackupRestoreError error: String? ) { if (enableLauncherBrMetricsFixed()) { restoreEventLogger?.logItemsRestoreFailed(dataType, count, error) @@ -101,7 +97,7 @@ constructor(@ApplicationContext private val context: Context) : LauncherRestoreE */ override fun logSingleFavoritesItemRestoreFailed( favoritesId: Int, - @BackupRestoreError error: String?, + @BackupRestoreError error: String? ) { if (enableLauncherBrMetricsFixed()) { restoreEventLogger?.logItemsRestoreFailed(favoritesIdToDataType(favoritesId), 1, error) @@ -118,13 +114,13 @@ constructor(@ApplicationContext private val context: Context) : LauncherRestoreE override fun logFavoritesItemsRestoreFailed( favoritesId: Int, count: Int, - @BackupRestoreError error: String?, + @BackupRestoreError error: String? ) { if (enableLauncherBrMetricsFixed()) { restoreEventLogger?.logItemsRestoreFailed( favoritesIdToDataType(favoritesId), count, - error, + error ) } } diff --git a/quickstep/src/com/android/quickstep/LauncherSwipeHandlerV2.java b/quickstep/src/com/android/quickstep/LauncherSwipeHandlerV2.java index 85a677f18b..4c56f35d90 100644 --- a/quickstep/src/com/android/quickstep/LauncherSwipeHandlerV2.java +++ b/quickstep/src/com/android/quickstep/LauncherSwipeHandlerV2.java @@ -36,7 +36,6 @@ import android.view.View; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.android.app.animation.Interpolators; import com.android.launcher3.LauncherState; import com.android.launcher3.anim.AnimatorPlaybackController; import com.android.launcher3.model.data.ItemInfo; @@ -70,11 +69,10 @@ public class LauncherSwipeHandlerV2 extends AbsSwipeUpHandler< QuickstepLauncher, RecentsView<QuickstepLauncher, LauncherState>, LauncherState> { public LauncherSwipeHandlerV2(Context context, TaskAnimationManager taskAnimationManager, - RecentsAnimationDeviceState deviceState, RotationTouchHelper rotationTouchHelper, GestureState gestureState, long touchTimeMs, boolean continuingLastGesture, InputConsumerController inputConsumer, MSDLPlayerWrapper msdlPlayerWrapper) { - super(context, taskAnimationManager, deviceState, rotationTouchHelper, gestureState, - touchTimeMs, continuingLastGesture, inputConsumer, msdlPlayerWrapper); + super(context, taskAnimationManager, gestureState, touchTimeMs, + continuingLastGesture, inputConsumer, msdlPlayerWrapper); } @@ -87,13 +85,8 @@ public class LauncherSwipeHandlerV2 extends AbsSwipeUpHandler< RemoteAnimationTarget runningTaskTarget, @Nullable TaskView targetTaskView) { if (mContainer == null) { - mStateCallback.addChangeListener( - STATE_LAUNCHER_PRESENT | STATE_HANDLER_INVALIDATED, - isPresent -> { - if (mRecentsView != null) { - mRecentsView.startHome(); - } - }); + mStateCallback.addChangeListener(STATE_LAUNCHER_PRESENT | STATE_HANDLER_INVALIDATED, + isPresent -> mRecentsView.startHome()); return new HomeAnimationFactory() { @Override public AnimatorPlaybackController createActivityAnimationToHome() { @@ -147,7 +140,7 @@ public class LauncherSwipeHandlerV2 extends AbsSwipeUpHandler< true /* hideOriginal */, iconLocation, false /* isOpening */); // We want the window alpha to be 0 once this threshold is met, so that the - // FloatingIconView can be seen morphing into the icon shape. + // FolderIconView can be seen morphing into the icon shape. float windowAlphaThreshold = 1f - SHAPE_PROGRESS_DURATION; return new FloatingViewHomeAnimationFactory(floatingIconView) { @@ -195,11 +188,7 @@ public class LauncherSwipeHandlerV2 extends AbsSwipeUpHandler< float progress, float radius, int overlayAlpha) { - // We want the icon alpha to be 1 once this threshold is met, so that it can be - // seen morphing into the icon shape. But before the threshold, we want to limit - // the alpha to reduce the blur effect behind the window. - float iconAlpha = Interpolators.clampToProgress(progress, 0f, windowAlphaThreshold); - floatingIconView.update(iconAlpha, currentRect, progress, windowAlphaThreshold, + floatingIconView.update(1f /* alpha */, currentRect, progress, windowAlphaThreshold, radius, false, overlayAlpha); } @@ -327,9 +316,7 @@ public class LauncherSwipeHandlerV2 extends AbsSwipeUpHandler< @Override protected void finishRecentsControllerToHome(Runnable callback) { - if (mRecentsView != null) { - mRecentsView.cleanupRemoteTargets(); - } + mRecentsView.cleanupRemoteTargets(); mRecentsAnimationController.finish( true /* toRecents */, callback, true /* sendUserLeaveHint */); } @@ -373,7 +360,7 @@ public class LauncherSwipeHandlerV2 extends AbsSwipeUpHandler< public AnimatorPlaybackController createActivityAnimationToHome() { // Return an empty APC here since we have an non-user controlled animation // to home. - long accuracy = 2 * Math.max(mDp.getDeviceProperties().getWidthPx(), mDp.getDeviceProperties().getHeightPx()); + long accuracy = 2 * Math.max(mDp.widthPx, mDp.heightPx); return mContainer.getStateManager().createAnimationToNewWorkspace( NORMAL, accuracy, StateAnimationConfig.SKIP_ALL_ANIMATIONS); } diff --git a/quickstep/src/com/android/quickstep/OWNERS b/quickstep/src/com/android/quickstep/OWNERS index f0d0b2b442..868e0abf56 100644 --- a/quickstep/src/com/android/quickstep/OWNERS +++ b/quickstep/src/com/android/quickstep/OWNERS @@ -4,5 +4,6 @@ jonmiranda@google.com jagrutdesai@google.com randypfohl@google.com saumyaprakash@google.com +sukeshram@google.com twickham@google.com victortulias@google.com diff --git a/quickstep/src/com/android/quickstep/OverviewCommandHelper.kt b/quickstep/src/com/android/quickstep/OverviewCommandHelper.kt index a010057324..b828903045 100644 --- a/quickstep/src/com/android/quickstep/OverviewCommandHelper.kt +++ b/quickstep/src/com/android/quickstep/OverviewCommandHelper.kt @@ -20,6 +20,7 @@ import android.animation.AnimatorListenerAdapter import android.content.Intent import android.graphics.PointF import android.os.SystemClock +import android.os.Trace import android.util.Log import android.view.Display.DEFAULT_DISPLAY import android.view.View @@ -27,10 +28,10 @@ import android.window.TransitionInfo import androidx.annotation.BinderThread import androidx.annotation.UiThread import androidx.annotation.VisibleForTesting -import com.android.app.displaylib.DisplayRepository -import com.android.app.displaylib.PerDisplayRepository import com.android.internal.jank.Cuj -import com.android.launcher3.DeviceProfile +import com.android.launcher3.Flags.enableAltTabKqsOnConnectedDisplays +import com.android.launcher3.Flags.enableLargeDesktopWindowingTile +import com.android.launcher3.Flags.enableOverviewCommandHelperTimeout import com.android.launcher3.PagedView import com.android.launcher3.logger.LauncherAtom import com.android.launcher3.logging.StatsLogManager @@ -39,29 +40,24 @@ import com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_OVER import com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_OVERVIEW_SHOW_OVERVIEW_FROM_KEYBOARD_SHORTCUT import com.android.launcher3.taskbar.TaskbarManager import com.android.launcher3.taskbar.TaskbarUIController -import com.android.launcher3.util.OverviewCommandHelperProtoLogProxy -import com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview +import com.android.launcher3.util.Executors import com.android.launcher3.util.RunnableList import com.android.launcher3.util.coroutines.DispatcherProvider import com.android.launcher3.util.coroutines.ProductionDispatchers import com.android.quickstep.OverviewCommandHelper.CommandInfo.CommandStatus -import com.android.quickstep.OverviewCommandHelper.CommandType.HIDE_ALT_TAB +import com.android.quickstep.OverviewCommandHelper.CommandType.HIDE import com.android.quickstep.OverviewCommandHelper.CommandType.HOME -import com.android.quickstep.OverviewCommandHelper.CommandType.SHOW_ALT_TAB -import com.android.quickstep.OverviewCommandHelper.CommandType.SHOW_WITH_FOCUS +import com.android.quickstep.OverviewCommandHelper.CommandType.KEYBOARD_INPUT +import com.android.quickstep.OverviewCommandHelper.CommandType.SHOW import com.android.quickstep.OverviewCommandHelper.CommandType.TOGGLE -import com.android.quickstep.OverviewCommandHelper.CommandType.TOGGLE_OVERVIEW_PREVIOUS -import com.android.quickstep.fallback.window.RecentsWindowManager -import com.android.quickstep.util.ActiveGestureLog -import com.android.quickstep.util.ActiveGestureProtoLogProxy +import com.android.quickstep.fallback.window.RecentsDisplayModel +import com.android.quickstep.fallback.window.RecentsWindowFlags.Companion.enableOverviewInWindow import com.android.quickstep.views.RecentsView import com.android.quickstep.views.TaskView import com.android.systemui.shared.recents.model.ThumbnailData import com.android.systemui.shared.system.InteractionJankMonitorWrapper -import com.android.wm.shell.Flags.enableShellTopTaskTracking import java.io.PrintWriter import java.util.concurrent.ConcurrentLinkedDeque -import java.util.concurrent.TimeUnit import kotlin.coroutines.resume import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.SupervisorJob @@ -77,13 +73,11 @@ constructor( private val touchInteractionService: TouchInteractionService, private val overviewComponentObserver: OverviewComponentObserver, private val dispatcherProvider: DispatcherProvider = ProductionDispatchers, - private val displayRepository: DisplayRepository, + private val recentsDisplayModel: RecentsDisplayModel, + private val focusState: FocusState, private val taskbarManager: TaskbarManager, - private val taskAnimationManagerRepository: PerDisplayRepository<TaskAnimationManager>, - private val elapsedRealtime: () -> Long = SystemClock::elapsedRealtime, ) { - private val coroutineScope = - CoroutineScope(SupervisorJob() + dispatcherProvider.lightweightBackground) + private val coroutineScope = CoroutineScope(SupervisorJob() + dispatcherProvider.background) private val commandQueue = ConcurrentLinkedDeque<CommandInfo>() @@ -94,13 +88,11 @@ constructor( */ private var keyboardTaskFocusIndex = -1 - private val lastToggleInfo = mutableMapOf<Int, ToggleInfo>() - private fun getContainerInterface(displayId: Int) = overviewComponentObserver.getContainerInterface(displayId) private fun getVisibleRecentsView(displayId: Int) = - getContainerInterface(displayId)?.getVisibleRecentsView<RecentsView<*, *>>() + getContainerInterface(displayId).getVisibleRecentsView<RecentsView<*, *>>() /** * Adds a command to be executed next, after all pending tasks are completed. Max commands that @@ -118,25 +110,23 @@ constructor( isLastOfBatch: Boolean = true, ): CommandInfo? { if (commandQueue.size >= MAX_QUEUE_SIZE) { - OverviewCommandHelperProtoLogProxy.logCommandQueueFull(type, commandQueue) + Log.d(TAG, "command not added: $type - queue is full ($commandQueue).") return null } - val command = - CommandInfo( - type, - displayId = displayId, - createTime = elapsedRealtime(), - isLastOfBatch = isLastOfBatch, - ) + val command = CommandInfo(type, displayId = displayId, isLastOfBatch = isLastOfBatch) commandQueue.add(command) - OverviewCommandHelperProtoLogProxy.logCommandAdded(command) + Log.d(TAG, "command added: $command") if (commandQueue.size == 1) { - OverviewCommandHelperProtoLogProxy.logCommandExecuted(command, commandQueue.size) - coroutineScope.launch(dispatcherProvider.main) { processNextCommand() } + Log.d(TAG, "execute: $command - queue size: ${commandQueue.size}") + if (enableOverviewCommandHelperTimeout()) { + coroutineScope.launch(dispatcherProvider.main) { processNextCommand() } + } else { + Executors.MAIN_EXECUTOR.execute { processNextCommand() } + } } else { - OverviewCommandHelperProtoLogProxy.logCommandNotExecuted(command, commandQueue.size) + Log.d(TAG, "not executed: $command - queue size: ${commandQueue.size}") } return command @@ -154,25 +144,28 @@ constructor( @BinderThread fun addCommandsForAllDisplays(type: CommandType) = - addCommandsForDisplays(type, displayRepository.displayIds.value.toIntArray()) + addCommandsForDisplays( + type, + recentsDisplayModel.activeDisplayResources + .map { resource -> resource.displayId } + .toIntArray(), + ) @BinderThread fun addCommandsForDisplaysExcept(type: CommandType, excludedDisplayId: Int) = addCommandsForDisplays( type, - displayRepository.displayIds.value + recentsDisplayModel.activeDisplayResources + .map { resource -> resource.displayId } .filter { displayId -> displayId != excludedDisplayId } .toIntArray(), ) - fun canStartHomeSafely(): Boolean = - commandQueue.isEmpty() || - commandQueue.first().type == HOME || - commandQueue.first().type == TOGGLE_OVERVIEW_PREVIOUS + fun canStartHomeSafely(): Boolean = commandQueue.isEmpty() || commandQueue.first().type == HOME /** Clear pending or completed commands from the queue */ fun clearPendingCommands() { - OverviewCommandHelperProtoLogProxy.logClearPendingCommands(commandQueue) + Log.d(TAG, "clearing pending commands: $commandQueue") commandQueue.removeAll { it.status != CommandStatus.PROCESSING } } @@ -185,19 +178,30 @@ constructor( private fun processNextCommand() { val command: CommandInfo? = commandQueue.firstOrNull() if (command == null) { - OverviewCommandHelperProtoLogProxy.logNoPendingCommands() + Log.d(TAG, "no pending commands to be executed.") return } command.status = CommandStatus.PROCESSING - OverviewCommandHelperProtoLogProxy.logExecutingCommand(command) + Log.d(TAG, "executing command: $command") - coroutineScope.launch(dispatcherProvider.main) { + if (enableOverviewCommandHelperTimeout()) { + coroutineScope.launch(dispatcherProvider.main) { withTimeout(QUEUE_WAIT_DURATION_IN_MS) { executeCommandSuspended(command) ensureActive() onCommandFinished(command) } + } + } else { + val result = + executeCommand(command, onCallbackResult = { onCommandFinished(command) }) + Log.d(TAG, "command executed: $command with result: $result") + if (result) { + onCommandFinished(command) + } else { + Log.d(TAG, "waiting for command callback: $command") + } } } @@ -208,7 +212,7 @@ constructor( @VisibleForTesting fun executeCommand(command: CommandInfo, onCallbackResult: () -> Unit): Boolean { val recentsView = getVisibleRecentsView(command.displayId) - OverviewCommandHelperProtoLogProxy.logExecutingCommand(command, recentsView) + Log.d(TAG, "executeCommand: $command - visibleRecentsView: $recentsView") return if (recentsView != null) { executeWhenRecentsIsVisible(command, recentsView, onCallbackResult) } else { @@ -223,14 +227,11 @@ constructor( private suspend fun executeCommandSuspended(command: CommandInfo) = suspendCancellableCoroutine { continuation -> fun processResult(isCompleted: Boolean) { - OverviewCommandHelperProtoLogProxy.logExecutedCommandWithResult( - command, - isCompleted, - ) + Log.d(TAG, "command executed: $command with result: $isCompleted") if (isCompleted) { continuation.resume(Unit) } else { - OverviewCommandHelperProtoLogProxy.logWaitingForCommandCallback(command) + Log.d(TAG, "waiting for command callback: $command") } } @@ -246,9 +247,9 @@ constructor( onCallbackResult: () -> Unit, ): Boolean = when (command.type) { - SHOW_WITH_FOCUS -> true // already visible - SHOW_ALT_TAB, - HIDE_ALT_TAB -> { + SHOW -> true // already visible + KEYBOARD_INPUT, + HIDE -> { if (recentsView.isHandlingTouch) { true } else { @@ -260,55 +261,38 @@ constructor( } TOGGLE -> { - val runningTaskId = recentsView.runningTaskView?.taskIdSet launchTask( recentsView, - getNextToggledTaskView(recentsView, command.displayId), + getNextToggledTaskView(recentsView), command, - ) { - if (enableGridOnlyOverview() && runningTaskId != null) { - lastToggleInfo[command.displayId] = - ToggleInfo(command.createTime, runningTaskId) - } - onCallbackResult() - } - } - TOGGLE_OVERVIEW_PREVIOUS -> { - val taskView = recentsView.runningTaskView - if (taskView == null) { - recentsView.startHome() - } else { - taskView.launchWithAnimation() - } - true + onCallbackResult, + ) } + HOME -> { recentsView.startHome() true } } - private fun getNextToggledTaskView(recentsView: RecentsView<*, *>, displayId: Int): TaskView? { - val lastToggleInfo = lastToggleInfo[displayId] - val lastToggleTaskView = + private fun getNextToggledTaskView(recentsView: RecentsView<*, *>): TaskView? { + // When running task view is null we return last large taskView - typically focusView when + // grid only is not enabled else last desktop task view. + return if (recentsView.runningTaskView == null) { + recentsView.lastLargeTaskView ?: recentsView.getFirstTaskView() + } else { if ( - enableGridOnlyOverview() && - lastToggleInfo != null && - elapsedRealtime() - lastToggleInfo.createTime < TOGGLE_PREVIOUS_TIMEOUT_MS + enableLargeDesktopWindowingTile() && + recentsView.getTaskViewCount() == recentsView.largeTilesCount && + recentsView.runningTaskView === recentsView.lastLargeTaskView ) { - recentsView.getTaskViewByTaskIds(lastToggleInfo.taskIds.toIntArray()) - } else null - val runningTaskView = recentsView.runningTaskView - return when { - runningTaskView == null && !enableGridOnlyOverview() -> - // When running task view is null we return last large taskView - typically - // focusView or last desktop task view. - recentsView.lastLargeTaskView ?: recentsView.firstTaskView - runningTaskView == null -> - recentsView.firstNonDesktopTaskView ?: recentsView.lastDesktopTaskView - lastToggleTaskView != null && lastToggleTaskView != runningTaskView -> - lastToggleTaskView - else -> recentsView.nextTaskView ?: recentsView.previousTaskView ?: runningTaskView + // Enables the toggle when only large tiles are in recents view. + // We return previous because unlike small tiles, large tiles are always + // on the right hand side. + recentsView.previousTaskView ?: recentsView.runningTaskView + } else { + recentsView.nextTaskView ?: recentsView.runningTaskView + } } } @@ -326,10 +310,10 @@ constructor( if (callbackList != null) { callbackList.add { - OverviewCommandHelperProtoLogProxy.logLaunchingTaskCallback(command) + Log.d(TAG, "launching task callback: $command") onCallbackResult() } - OverviewCommandHelperProtoLogProxy.logLaunchingTaskWaitingForCallback(command) + Log.d(TAG, "launching task - waiting for callback: $command") return false } else { recents.startHome() @@ -337,80 +321,85 @@ constructor( } } - // Returns false if callbacks should be awaited, true otherwise. private fun executeWhenRecentsIsNotVisible( command: CommandInfo, onCallbackResult: () -> Unit, ): Boolean { - val containerInterface = getContainerInterface(command.displayId) ?: return true + val containerInterface = getContainerInterface(command.displayId) val recentsViewContainer = containerInterface.getCreatedContainer() val recentsView: RecentsView<*, *>? = recentsViewContainer?.getOverviewPanel() val deviceProfile = recentsViewContainer?.getDeviceProfile() - val taskbarUIController: TaskbarUIController? = - if ( - command.displayId != DEFAULT_DISPLAY && - recentsViewContainer !is RecentsWindowManager - ) { - // When recentsViewContainer is not RecentsWindowManager, get TaskbarUiController - // from TaskbarManager as a workaround. - taskbarManager.getUIControllerForDisplay(command.displayId) - } else { - containerInterface.getTaskbarController() - } + val uiController = containerInterface.getTaskbarController() - val taskAnimationManager = taskAnimationManagerRepository[command.displayId] - if (taskAnimationManager == null) { - Log.e(TAG, "No TaskAnimationManager found for display ${command.displayId}") - ActiveGestureProtoLogProxy.logOnTaskAnimationManagerNotAvailable(command.displayId) - return false - } + val focusedDisplayId = focusState.focusedDisplayId + val focusedDisplayUIController: TaskbarUIController? = + if (enableOverviewInWindow) { + Log.d( + TAG, + "Querying RecentsDisplayModel for TaskbarUIController for display: $focusedDisplayId", + ) + recentsDisplayModel.getRecentsWindowManager(focusedDisplayId)?.taskbarUIController + } else { + Log.d( + TAG, + "Querying TaskbarManager for TaskbarUIController for display: $focusedDisplayId", + ) + // TODO(b/395061396): Remove this path when overview in widow is enabled. + taskbarManager.getUIControllerForDisplay(focusedDisplayId) + } + Log.d( + TAG, + "TaskbarUIController for display $focusedDisplayId was" + + "${if (focusedDisplayUIController == null) " not" else ""} found", + ) when (command.type) { - HIDE_ALT_TAB -> { - if ( - taskbarUIController == null || - !shouldShowAltTabKqs(deviceProfile, command.displayId) - ) { - return true - } - keyboardTaskFocusIndex = taskbarUIController.launchFocusedTask() + HIDE -> { + if (uiController == null || deviceProfile?.isTablet == false) return true + keyboardTaskFocusIndex = + if ( + enableAltTabKqsOnConnectedDisplays() && focusedDisplayUIController != null + ) { + focusedDisplayUIController.launchFocusedTask() + } else { + uiController.launchFocusedTask() + } if (keyboardTaskFocusIndex == -1) return true } - SHOW_ALT_TAB -> - if ( - taskbarUIController != null && - shouldShowAltTabKqs(deviceProfile, command.displayId) - ) { - taskbarUIController.openQuickSwitchView() + KEYBOARD_INPUT -> + if (uiController != null && deviceProfile?.isTablet == true) { + if ( + enableAltTabKqsOnConnectedDisplays() && focusedDisplayUIController != null + ) { + focusedDisplayUIController.openQuickSwitchView() + } else { + uiController.openQuickSwitchView() + } return true } else { keyboardTaskFocusIndex = 0 } HOME -> { - taskAnimationManager.maybeStartHomeAction { - // Although IActivityTaskManager$Stub$Proxy.startActivity is a slow binder call, - // we should still call it on main thread because launcher is waiting for - // ActivityTaskManager to resume it. Also calling startActivity() on bg thread - // could potentially delay resuming launcher. See b/348668521 for more details. - touchInteractionService.startActivity( - overviewComponentObserver.getHomeIntent(command.displayId) - ) - } + //ActiveGestureProtoLogProxy.logExecuteHomeCommand() + // Although IActivityTaskManager$Stub$Proxy.startActivity is a slow binder call, + // we should still call it on main thread because launcher is waiting for + // ActivityTaskManager to resume it. Also calling startActivity() on bg thread + // could potentially delay resuming launcher. See b/348668521 for more details. + touchInteractionService.startActivity(overviewComponentObserver.homeIntent) return true } - SHOW_WITH_FOCUS -> + SHOW -> // When Recents is not currently visible, the command's type is SHOW // when overview is triggered via the keyboard overview button or Action+Tab // keys (Not Alt+Tab which is KQS). The overview button on-screen in 3-button // nav is TYPE_TOGGLE. keyboardTaskFocusIndex = 0 - TOGGLE, - TOGGLE_OVERVIEW_PREVIOUS -> {} + TOGGLE -> {} } recentsView?.setKeyboardTaskFocusIndex( @@ -422,68 +411,44 @@ constructor( val animatorListener: Animator.AnimatorListener = object : AnimatorListenerAdapter() { override fun onAnimationStart(animation: Animator) { - OverviewCommandHelperProtoLogProxy.logSwitchingToOverviewStateStart(command) + Log.d(TAG, "switching to Overview state - onAnimationStart: $command") super.onAnimationStart(animation) updateRecentsViewFocus(command) logShowOverviewFrom(command) } override fun onAnimationEnd(animation: Animator) { - OverviewCommandHelperProtoLogProxy.logSwitchingToOverviewStateEnd(command) + Log.d(TAG, "switching to Overview state - onAnimationEnd: $command") super.onAnimationEnd(animation) onRecentsViewFocusUpdated(command) onCallbackResult() } } if (containerInterface.switchToRecentsIfVisible(animatorListener)) { - OverviewCommandHelperProtoLogProxy.logSwitchingToOverviewStateWaiting(command) + Log.d(TAG, "switching to Overview state - waiting: $command") // If successfully switched, wait until animation finishes return false } - // If we get here then launcher is not the top visible task, so we should animate - // that task. - - if (recentsViewContainer !is RecentsWindowManager) { - recentsViewContainer?.rootView?.let { view -> + if (!enableOverviewInWindow) { + containerInterface.getCreatedContainer()?.rootView?.let { view -> InteractionJankMonitorWrapper.begin(view, Cuj.CUJ_LAUNCHER_QUICK_SWITCH) } } val gestureState = - touchInteractionService - .createGestureState( - command.displayId, - GestureState.DEFAULT_STATE, - GestureState.TrackpadGestureType.NONE, - ) - .apply { - isHandlingAtomicEvent = true - if (!enableShellTopTaskTracking()) { - val runningTask = runningTask - // In the case where we are in an excluded, translucent overlay, ignore it - // and treat the running activity as the task behind the overlay. - val otherVisibleTask = runningTask?.visibleNonExcludedTask - if (otherVisibleTask != null) { - ActiveGestureProtoLogProxy.logUpdateGestureStateRunningTask( - otherVisibleTask.packageName ?: "MISSING", - runningTask.packageName ?: "MISSING", - ) - updateRunningTask(otherVisibleTask) - } - } - } + touchInteractionService.createGestureState( + command.displayId, + GestureState.DEFAULT_STATE, + GestureState.TrackpadGestureType.NONE, + ) + gestureState.isHandlingAtomicEvent = true val interactionHandler = touchInteractionService - .getSwipeUpHandlerFactory(command.displayId) + // TODO(b/404757863): use command.displayId instead of focusedDisplayId. + .getSwipeUpHandlerFactory(focusedDisplayId) .newHandler(gestureState, command.createTime) - if (interactionHandler == null) { - // Can happen e.g. when a display is disconnected, so try to handle gracefully. - Log.d(TAG, "AbsSwipeUpHandler not available for displayId=${command.displayId})") - ActiveGestureProtoLogProxy.logOnAbsSwipeUpHandlerNotAvailable(command.displayId) - return true - } - interactionHandler.setGestureAnimationEndCallback { + interactionHandler.setGestureEndCallback { onTransitionComplete(command, interactionHandler, onCallbackResult) } interactionHandler.initWhenReady("OverviewCommandHelper: command.type=${command.type}") @@ -495,9 +460,9 @@ constructor( targets: RecentsAnimationTargets, transitionInfo: TransitionInfo?, ) { - OverviewCommandHelperProtoLogProxy.logRecentsAnimStarted(command) - if (recentsViewContainer is RecentsWindowManager) { - recentsViewContainer.rootView?.let { view -> + Log.d(TAG, "recents animation started: $command") + if (enableOverviewInWindow) { + containerInterface.getCreatedContainer()?.rootView?.let { view -> InteractionJankMonitorWrapper.begin(view, Cuj.CUJ_LAUNCHER_QUICK_SWITCH) } } @@ -505,7 +470,7 @@ constructor( updateRecentsViewFocus(command) logShowOverviewFrom(command) containerInterface.runOnInitBackgroundStateUI { - OverviewCommandHelperProtoLogProxy.logOnInitBackgroundStateUI(command) + Log.d(TAG, "recents animation started - onInitBackgroundStateUI: $command") interactionHandler.onGestureEnded( 0f, PointF(), @@ -518,7 +483,7 @@ constructor( override fun onRecentsAnimationCanceled( thumbnailDatas: HashMap<Int, ThumbnailData> ) { - OverviewCommandHelperProtoLogProxy.logRecentsAnimCanceled(command) + Log.d(TAG, "recents animation canceled: $command") interactionHandler.onGestureCancelled() command.removeListener(this) @@ -527,6 +492,15 @@ constructor( } } + val taskAnimationManager = + recentsDisplayModel.getTaskAnimationManager(command.displayId) + ?: run { + Log.e(TAG, "No TaskAnimationManager found for display ${command.displayId}") + //ActiveGestureProtoLogProxy.logOnTaskAnimationManagerNotAvailable( + // command.displayId + //) + return false + } if (taskAnimationManager.isRecentsAnimationRunning) { command.setAnimationCallbacks( taskAnimationManager.continueRecentsAnimation(gestureState) @@ -538,32 +512,29 @@ constructor( command.addListener(recentAnimListener) taskAnimationManager.notifyRecentsAnimationState(recentAnimListener) } else { + // Lawnchair-TODO: What name to put in intent here? val intent = Intent(interactionHandler.getLaunchIntent()) - .putExtra(ActiveGestureLog.INTENT_EXTRA_LOG_TRACE_ID, gestureState.gestureId) + .putExtra("Something", gestureState.gestureId) command.setAnimationCallbacks( taskAnimationManager.startRecentsAnimation(gestureState, intent, interactionHandler) ) interactionHandler.onGestureStarted(false /*isLikelyToStartNewTask*/) command.addListener(recentAnimListener) } - OverviewCommandHelperProtoLogProxy.logSwitchingViaRecentsAnim(command) + //Trace.beginAsyncSection(TRANSITION_NAME, 0) + Log.d(TAG, "switching via recents animation - onGestureStarted: $command") return false } - private fun shouldShowAltTabKqs(deviceProfile: DeviceProfile?, displayId: Int): Boolean = - // Alt+Tab KQS is always shown on tablets (large screen devices). - deviceProfile?.deviceProperties?.isTablet == true || - // For small screen devices, it's only shown on connected displays. - displayId != DEFAULT_DISPLAY - private fun onTransitionComplete( command: CommandInfo, handler: AbsSwipeUpHandler<*, *, *>, onCommandResult: () -> Unit, ) { - OverviewCommandHelperProtoLogProxy.logSwitchingViaRecentsAnimComplete(command) + Log.d(TAG, "switching via recents animation - onTransitionComplete: $command") command.removeListener(handler) + Trace.endAsyncSection(TRANSITION_NAME, 0) onRecentsViewFocusUpdated(command) onCommandResult() } @@ -572,54 +543,42 @@ constructor( private fun onCommandFinished(command: CommandInfo) { command.status = CommandStatus.COMPLETED if (commandQueue.firstOrNull() !== command) { - OverviewCommandHelperProtoLogProxy.logCommandFinishedButNotScheduled( - commandQueue.firstOrNull(), - command, + Log.d( + TAG, + "next task not scheduled. First pending command type " + + "is ${commandQueue.firstOrNull()} - command type is: $command", ) return } - OverviewCommandHelperProtoLogProxy.logCommandFinishedSuccessfully(command) + Log.d(TAG, "command executed successfully! $command") commandQueue.remove(command) processNextCommand() } private fun cancelCommand(command: CommandInfo, throwable: Throwable?) { command.status = CommandStatus.CANCELED - OverviewCommandHelperProtoLogProxy.logCommandCanceled(command, throwable) + Log.e(TAG, "command cancelled: $command - $throwable") commandQueue.remove(command) processNextCommand() } private fun updateRecentsViewFocus(command: CommandInfo) { val recentsView: RecentsView<*, *> = getVisibleRecentsView(command.displayId) ?: return - if ( - command.type != SHOW_ALT_TAB && - command.type != HIDE_ALT_TAB && - command.type != SHOW_WITH_FOCUS - ) { + if (command.type != KEYBOARD_INPUT && command.type != HIDE && command.type != SHOW) { return } + // When the overview is launched via alt tab (command type is TYPE_KEYBOARD_INPUT), // the touch mode somehow is not change to false by the Android framework. // The subsequent tab to go through tasks in overview can only be dispatched to // focuses views, while focus can only be requested in // {@link View#requestFocusNoSearch(int, Rect)} when touch mode is false. To note, // here we launch overview with live tile. - if (recentsView.isAttachedToWindow) { - recentsView.viewRootImpl.touchModeChanged(false) - } else { - recentsView.post { recentsView.viewRootImpl.touchModeChanged(false) } - } + recentsView.viewRootImpl.touchModeChanged(false) // Ensure that recents view has focus so that it receives the followup key inputs // Stops requesting focused after first view gets focused. - recentsView - .getTaskViewAt( - recentsView.indexOfChild( - recentsView.taskViews.elementAtOrNull(keyboardTaskFocusIndex) - ) - ) - .requestFocus() || + recentsView.getTaskViewAt(keyboardTaskFocusIndex).requestFocus() || recentsView.nextTaskView.requestFocus() || recentsView.firstTaskView.requestFocus() || recentsView.requestFocus() @@ -627,12 +586,11 @@ constructor( private fun onRecentsViewFocusUpdated(command: CommandInfo) { val recentsView: RecentsView<*, *> = getVisibleRecentsView(command.displayId) ?: return - if (command.type != HIDE_ALT_TAB || keyboardTaskFocusIndex == PagedView.INVALID_PAGE) { + if (command.type != HIDE || keyboardTaskFocusIndex == PagedView.INVALID_PAGE) { return } recentsView.setKeyboardTaskFocusIndex(PagedView.INVALID_PAGE) - recentsView.currentPage = - recentsView.indexOfChild(recentsView.taskViews.elementAtOrNull(keyboardTaskFocusIndex)) + recentsView.currentPage = keyboardTaskFocusIndex keyboardTaskFocusIndex = PagedView.INVALID_PAGE } @@ -646,12 +604,12 @@ constructor( } private fun logShowOverviewFrom(command: CommandInfo) { - val containerInterface = getContainerInterface(command.displayId) ?: return + val containerInterface = getContainerInterface(command.displayId) val container = containerInterface.getCreatedContainer() ?: return val event = when (command.type) { - SHOW_WITH_FOCUS -> LAUNCHER_OVERVIEW_SHOW_OVERVIEW_FROM_KEYBOARD_SHORTCUT - HIDE_ALT_TAB -> LAUNCHER_OVERVIEW_SHOW_OVERVIEW_FROM_KEYBOARD_QUICK_SWITCH + SHOW -> LAUNCHER_OVERVIEW_SHOW_OVERVIEW_FROM_KEYBOARD_SHORTCUT + HIDE -> LAUNCHER_OVERVIEW_SHOW_OVERVIEW_FROM_KEYBOARD_QUICK_SWITCH TOGGLE -> LAUNCHER_OVERVIEW_SHOW_OVERVIEW_FROM_3_BUTTON else -> return } @@ -680,7 +638,7 @@ constructor( data class CommandInfo( val type: CommandType, var status: CommandStatus = CommandStatus.IDLE, - val createTime: Long, + val createTime: Long = SystemClock.elapsedRealtime(), private var animationCallbacks: RecentsAnimationCallbacks? = null, val displayId: Int = DEFAULT_DISPLAY, val isLastOfBatch: Boolean = true, @@ -706,21 +664,13 @@ constructor( } enum class CommandType { - SHOW_WITH_FOCUS, - SHOW_ALT_TAB, - HIDE_ALT_TAB, - /** Toggle between overview and the next task */ + SHOW, + KEYBOARD_INPUT, + HIDE, TOGGLE, // Navigate to Overview HOME, // Navigate to Home - /** - * Toggle between Overview and the previous screen before launching Overview, which can - * either be a task or the home screen. - */ - TOGGLE_OVERVIEW_PREVIOUS, } - data class ToggleInfo(val createTime: Long, val taskIds: Set<Int>) - companion object { private const val TAG = "OverviewCommandHelper" private const val TRANSITION_NAME = "Transition:toOverview" @@ -731,6 +681,5 @@ constructor( */ private const val MAX_QUEUE_SIZE = 3 private const val QUEUE_WAIT_DURATION_IN_MS = 5000L - @VisibleForTesting val TOGGLE_PREVIOUS_TIMEOUT_MS = TimeUnit.SECONDS.toMillis(5) } } diff --git a/quickstep/src/com/android/quickstep/OverviewComponentObserver.java b/quickstep/src/com/android/quickstep/OverviewComponentObserver.java index 2ae6a19164..1c2b1f01c7 100644 --- a/quickstep/src/com/android/quickstep/OverviewComponentObserver.java +++ b/quickstep/src/com/android/quickstep/OverviewComponentObserver.java @@ -21,11 +21,11 @@ import static android.content.Intent.ACTION_PACKAGE_CHANGED; import static android.content.Intent.ACTION_PACKAGE_REMOVED; import static android.view.Display.DEFAULT_DISPLAY; +import static com.android.launcher3.Flags.enableOverviewOnConnectedDisplays; import static com.android.launcher3.config.FeatureFlags.SEPARATE_RECENTS_ACTIVITY; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.quickstep.fallback.window.RecentsWindowFlags.enableFallbackOverviewInWindow; import static com.android.quickstep.fallback.window.RecentsWindowFlags.enableLauncherOverviewInWindow; -import static com.android.quickstep.fallback.window.RecentsWindowFlags.enableOverviewOnConnectedDisplays; import static com.android.systemui.shared.system.PackageManagerWrapper.ACTION_PREFERRED_ACTIVITY_CHANGED; import android.content.ActivityNotFoundException; @@ -43,7 +43,6 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.UiThread; -import com.android.app.displaylib.PerDisplayRepository; import com.android.launcher3.R; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppComponent; @@ -51,7 +50,7 @@ import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.util.DaggerSingletonObject; import com.android.launcher3.util.DaggerSingletonTracker; import com.android.launcher3.util.SimpleBroadcastReceiver; -import com.android.quickstep.fallback.window.RecentsWindowManager; +import com.android.quickstep.fallback.window.RecentsDisplayModel; import com.android.quickstep.util.ActiveGestureProtoLogProxy; import com.android.systemui.shared.system.PackageManagerWrapper; @@ -78,11 +77,10 @@ public final class OverviewComponentObserver { private final SimpleBroadcastReceiver mUserPreferenceChangeReceiver; private final SimpleBroadcastReceiver mOtherHomeAppUpdateReceiver; - private final PerDisplayRepository<RecentsWindowManager> mRecentsWindowManagerRepository; + private final RecentsDisplayModel mRecentsDisplayModel; - private final Intent mCurrentPrimaryHomeIntent; - private final Intent mSecondaryHomeIntent; - private final Intent mMyPrimaryHomeIntent; + private final Intent mCurrentHomeIntent; + private final Intent mMyHomeIntent; private final Intent mFallbackIntent; private final SparseIntArray mConfigChangesMap = new SparseIntArray(); private final String mSetupWizardPkg; @@ -100,32 +98,19 @@ public final class OverviewComponentObserver { @Inject public OverviewComponentObserver( @ApplicationContext Context context, - PerDisplayRepository<RecentsWindowManager> recentsWindowManagerRepository, + RecentsDisplayModel recentsDisplayModel, DaggerSingletonTracker lifecycleTracker) { mUserPreferenceChangeReceiver = new SimpleBroadcastReceiver(context, MAIN_EXECUTOR, this::updateOverviewTargets); mOtherHomeAppUpdateReceiver = new SimpleBroadcastReceiver(context, MAIN_EXECUTOR, this::updateOverviewTargets); - mRecentsWindowManagerRepository = recentsWindowManagerRepository; - // Set up primary intents - mCurrentPrimaryHomeIntent = createHomeIntent(); - mMyPrimaryHomeIntent = new Intent(mCurrentPrimaryHomeIntent).setPackage( - context.getPackageName()); - ResolveInfo info = context.getPackageManager().resolveActivity(mMyPrimaryHomeIntent, 0); + mRecentsDisplayModel = recentsDisplayModel; + mCurrentHomeIntent = createHomeIntent(); + mMyHomeIntent = new Intent(mCurrentHomeIntent).setPackage(context.getPackageName()); + ResolveInfo info = context.getPackageManager().resolveActivity(mMyHomeIntent, 0); ComponentName myHomeComponent = new ComponentName(context.getPackageName(), info.activityInfo.name); - mMyPrimaryHomeIntent.setComponent(myHomeComponent); - // Set up secondary home intent - mSecondaryHomeIntent = createSecondaryHomeIntent().setPackage( - context.getPackageName()); - ResolveInfo secondaryInfo = context.getPackageManager().resolveActivity( - mSecondaryHomeIntent, 0); - if (secondaryInfo != null) { - ComponentName secondaryComponent = new ComponentName(context, - secondaryInfo.activityInfo.name); - mSecondaryHomeIntent.setComponent(secondaryComponent); - } - + mMyHomeIntent.setComponent(myHomeComponent); mConfigChangesMap.append(myHomeComponent.hashCode(), info.activityInfo.configChanges); mSetupWizardPkg = context.getString(R.string.setup_wizard_pkg); @@ -187,7 +172,7 @@ public final class OverviewComponentObserver { defaultHome = null; } - mIsDefaultHome = Objects.equals(mMyPrimaryHomeIntent.getComponent(), defaultHome); + mIsDefaultHome = Objects.equals(mMyHomeIntent.getComponent(), defaultHome); // Set assistant visibility to 0 from launcher's perspective, ensures any elements that // launcher made invisible become visible again before the new activity control helper @@ -199,7 +184,7 @@ public final class OverviewComponentObserver { if (SEPARATE_RECENTS_ACTIVITY.get()) { mIsDefaultHome = false; if (defaultHome == null) { - defaultHome = mMyPrimaryHomeIntent.getComponent(); + defaultHome = mMyHomeIntent.getComponent(); } } @@ -211,34 +196,28 @@ public final class OverviewComponentObserver { if (!mIsHomeDisabled && (defaultHome == null || mIsDefaultHome)) { // User default home is same as our home app. Use Overview integrated in Launcher. if (enableLauncherOverviewInWindow) { - RecentsWindowManager recentsWindowManager = mRecentsWindowManagerRepository.get( - DEFAULT_DISPLAY); mDefaultDisplayContainerInterface = - recentsWindowManager != null ? recentsWindowManager.getContainerInterface() - : null; + mRecentsDisplayModel.getFallbackWindowInterface(DEFAULT_DISPLAY); } else { mDefaultDisplayContainerInterface = LauncherActivityInterface.INSTANCE; } mIsHomeAndOverviewSame = true; - mOverviewIntent = mMyPrimaryHomeIntent; - mCurrentPrimaryHomeIntent.setComponent(mMyPrimaryHomeIntent.getComponent()); + mOverviewIntent = mMyHomeIntent; + mCurrentHomeIntent.setComponent(mMyHomeIntent.getComponent()); // Remove any update listener as we don't care about other packages. unregisterOtherHomeAppUpdateReceiver(); } else { // The default home app is a different launcher. Use the fallback Overview instead. if (enableFallbackOverviewInWindow) { - RecentsWindowManager recentsWindowManager = mRecentsWindowManagerRepository.get( - DEFAULT_DISPLAY); mDefaultDisplayContainerInterface = - recentsWindowManager != null ? recentsWindowManager.getContainerInterface() - : null; + mRecentsDisplayModel.getFallbackWindowInterface(DEFAULT_DISPLAY); } else { mDefaultDisplayContainerInterface = FallbackActivityInterface.INSTANCE; } mIsHomeAndOverviewSame = false; mOverviewIntent = mFallbackIntent; - mCurrentPrimaryHomeIntent.setComponent(defaultHome); + mCurrentHomeIntent.setComponent(defaultHome); // User's default home app can change as a result of package updates of this app (such // as uninstalling the app or removing the "Launcher" feature in an update). @@ -296,7 +275,7 @@ public final class OverviewComponentObserver { * @return the overview intent */ public Intent getOverviewIntentIgnoreSysUiState() { - return mIsDefaultHome ? mMyPrimaryHomeIntent : mOverviewIntent; + return mIsDefaultHome ? mMyHomeIntent : mOverviewIntent; } /** @@ -311,12 +290,8 @@ public final class OverviewComponentObserver { /** * Get the current intent for going to the home activity. */ - public Intent getHomeIntent(int displayId) { - if (displayId == DEFAULT_DISPLAY) { - return mCurrentPrimaryHomeIntent; - } else { - return mSecondaryHomeIntent; - } + public Intent getHomeIntent() { + return mCurrentHomeIntent; } /** @@ -326,6 +301,10 @@ public final class OverviewComponentObserver { return mIsHomeAndOverviewSame; } + public boolean isHomeAndOverviewSameActivity() { + return isHomeAndOverviewSame() && !enableLauncherOverviewInWindow; + } + /** * Get the current control helper for managing interactions to the overview container for * the given displayId. @@ -333,16 +312,10 @@ public final class OverviewComponentObserver { * @param displayId The display id * @return the control helper for the given display */ - @Nullable public BaseContainerInterface<?, ?> getContainerInterface(int displayId) { - if (enableOverviewOnConnectedDisplays() && displayId != DEFAULT_DISPLAY) { - RecentsWindowManager recentsWindowManager = mRecentsWindowManagerRepository.get( - displayId); - return recentsWindowManager != null ? recentsWindowManager.getContainerInterface() - : null; - } else { - return mDefaultDisplayContainerInterface; - } + return (enableOverviewOnConnectedDisplays() && displayId != DEFAULT_DISPLAY) + ? mRecentsDisplayModel.getFallbackWindowInterface(displayId) + : mDefaultDisplayContainerInterface; } public void dump(PrintWriter pw) { @@ -351,16 +324,15 @@ public final class OverviewComponentObserver { pw.println(" isHomeDisabled=" + mIsHomeDisabled); pw.println(" homeAndOverviewSame=" + mIsHomeAndOverviewSame); pw.println(" overviewIntent=" + mOverviewIntent); - pw.println(" homeIntent=" + mCurrentPrimaryHomeIntent); - pw.println(" secondaryHomeIntent=" + mSecondaryHomeIntent); + pw.println(" homeIntent=" + mCurrentHomeIntent); } /** * Starts the intent for the current home activity. */ public static void startHomeIntentSafely(@NonNull Context context, @Nullable Bundle options, - @NonNull String reason, int displayId) { - Intent intent = OverviewComponentObserver.INSTANCE.get(context).getHomeIntent(displayId); + @NonNull String reason) { + Intent intent = OverviewComponentObserver.INSTANCE.get(context).getHomeIntent(); startHomeIntentSafely(context, intent, options, reason); } @@ -396,9 +368,4 @@ public final class OverviewComponentObserver { .addCategory(Intent.CATEGORY_HOME) .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); } - private static Intent createSecondaryHomeIntent() { - return new Intent(Intent.ACTION_MAIN) - .addCategory(Intent.CATEGORY_SECONDARY_HOME) - .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - } } diff --git a/quickstep/src/com/android/quickstep/QuickstepTestInformationHandler.java b/quickstep/src/com/android/quickstep/QuickstepTestInformationHandler.java index 0330d53452..e9f70242cd 100644 --- a/quickstep/src/com/android/quickstep/QuickstepTestInformationHandler.java +++ b/quickstep/src/com/android/quickstep/QuickstepTestInformationHandler.java @@ -1 +1,268 @@ -// LC: No-op +package com.android.quickstep; + +import static android.view.Display.DEFAULT_DISPLAY; + +import static com.android.launcher3.taskbar.TaskbarThresholdUtils.getFromNavThreshold; +import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; + +import android.content.Context; +import android.content.res.Resources; +import android.os.Bundle; +import android.view.WindowInsets; + +import androidx.annotation.Nullable; + +import com.android.launcher3.taskbar.TaskbarActivityContext; +import com.android.launcher3.testing.TestInformationHandler; +import com.android.launcher3.testing.shared.TestProtocol; +import com.android.launcher3.util.DisplayController; +import com.android.quickstep.util.GroupTask; +import com.android.quickstep.util.LayoutUtils; +import com.android.quickstep.util.TISBindHelper; +import com.android.quickstep.views.RecentsView; +import com.android.quickstep.views.RecentsViewContainer; +import com.android.systemui.shared.recents.model.Task; + +import java.util.ArrayList; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.TimeUnit; +import java.util.function.Consumer; +import java.util.function.Function; + +public class QuickstepTestInformationHandler extends TestInformationHandler { + + protected final Context mContext; + + public QuickstepTestInformationHandler(Context context) { + mContext = context; + } + + @Override + public Bundle call(String method, String arg, @Nullable Bundle extras) { + final Bundle response = new Bundle(); + switch (method) { + case TestProtocol.REQUEST_RECENT_TASKS_LIST: { + ArrayList<String> taskBaseIntentComponents = new ArrayList<>(); + CountDownLatch latch = new CountDownLatch(1); + RecentsModel.INSTANCE.get(mContext).getTasks((taskGroups) -> { + for (GroupTask group : taskGroups) { + for (Task t : group.getTasks()) { + taskBaseIntentComponents.add( + t.key.baseIntent.getComponent().flattenToString()); + } + } + latch.countDown(); + }); + try { + latch.await(2, TimeUnit.SECONDS); + } catch (InterruptedException e) { + throw new RuntimeException(e); + } + response.putStringArrayList(TestProtocol.TEST_INFO_RESPONSE_FIELD, + taskBaseIntentComponents); + return response; + } + + case TestProtocol.REQUEST_HOME_TO_OVERVIEW_SWIPE_HEIGHT: { + final float swipeHeight = + LayoutUtils.getDefaultSwipeHeight(mContext, mDeviceProfile); + response.putInt(TestProtocol.TEST_INFO_RESPONSE_FIELD, (int) swipeHeight); + return response; + } + + case TestProtocol.REQUEST_BACKGROUND_TO_OVERVIEW_SWIPE_HEIGHT: { + final float swipeHeight = mDeviceProfile.heightPx / 2f; + response.putInt(TestProtocol.TEST_INFO_RESPONSE_FIELD, (int) swipeHeight); + return response; + } + + case TestProtocol.REQUEST_GET_OVERVIEW_TASK_SIZE: { + return getUIProperty(Bundle::putParcelable, + recentsViewContainer -> + recentsViewContainer.<RecentsView<?, ?>>getOverviewPanel() + .getLastComputedTaskSize(), + this::getRecentsViewContainer); + } + + case TestProtocol.REQUEST_GET_OVERVIEW_GRID_TASK_SIZE: { + return getUIProperty(Bundle::putParcelable, + recentsViewContainer -> + recentsViewContainer.<RecentsView<?, ?>>getOverviewPanel() + .getLastComputedGridTaskSize(), + this::getRecentsViewContainer); + } + + case TestProtocol.REQUEST_GET_OVERVIEW_PAGE_SPACING: { + response.putInt(TestProtocol.TEST_INFO_RESPONSE_FIELD, + mDeviceProfile.overviewPageSpacing); + return response; + } + + case TestProtocol.REQUEST_GET_OVERVIEW_CURRENT_PAGE_INDEX: { + return getLauncherUIProperty(Bundle::putInt, + launcher -> launcher.<RecentsView>getOverviewPanel().getCurrentPage()); + } + + case TestProtocol.REQUEST_HAS_TIS: { + response.putBoolean(TestProtocol.TEST_INFO_RESPONSE_FIELD, true); + return response; + } + + case TestProtocol.REQUEST_UNSTASH_TASKBAR_IF_STASHED: + runOnTISBinder(tisBinder -> { + // Allow null-pointer to catch illegal states. + tisBinder.getTaskbarManager().getCurrentActivityContext() + .unstashTaskbarIfStashed(); + }); + return response; + + case TestProtocol.REQUEST_TASKBAR_FROM_NAV_THRESHOLD: { + final Resources resources = mContext.getResources(); + response.putInt(TestProtocol.TEST_INFO_RESPONSE_FIELD, + getFromNavThreshold(resources, mDeviceProfile)); + return response; + } + + case TestProtocol.REQUEST_STASHED_TASKBAR_SCALE: { + runOnTISBinder(tisBinder -> { + response.putFloat(TestProtocol.TEST_INFO_RESPONSE_FIELD, + tisBinder.getTaskbarManager() + .getCurrentActivityContext() + .getStashedTaskbarScale()); + }); + return response; + } + + case TestProtocol.REQUEST_TASKBAR_ALL_APPS_TOP_PADDING: { + return getTISBinderUIProperty(Bundle::putInt, tisBinder -> + tisBinder.getTaskbarManager() + .getCurrentActivityContext() + .getTaskbarAllAppsTopPadding()); + } + + case TestProtocol.REQUEST_TASKBAR_APPS_LIST_SCROLL_Y: { + return getTISBinderUIProperty(Bundle::putInt, tisBinder -> + tisBinder.getTaskbarManager() + .getCurrentActivityContext() + .getTaskbarAllAppsScroll()); + } + + case TestProtocol.REQUEST_ENABLE_BLOCK_TIMEOUT: + runOnTISBinder(tisBinder -> { + enableBlockingTimeout(tisBinder, true); + }); + return response; + + case TestProtocol.REQUEST_DISABLE_BLOCK_TIMEOUT: + runOnTISBinder(tisBinder -> { + enableBlockingTimeout(tisBinder, false); + }); + return response; + + case TestProtocol.REQUEST_ENABLE_TRANSIENT_TASKBAR: + enableTransientTaskbar(true); + return response; + + case TestProtocol.REQUEST_DISABLE_TRANSIENT_TASKBAR: + enableTransientTaskbar(false); + return response; + + case TestProtocol.REQUEST_SHELL_DRAG_READY: + response.putBoolean(TestProtocol.TEST_INFO_RESPONSE_FIELD, + SystemUiProxy.INSTANCE.get(mContext).isDragAndDropReady()); + return response; + + case TestProtocol.REQUEST_REFRESH_OVERVIEW_TARGET: + runOnTISBinder(TouchInteractionService.TISBinder::refreshOverviewTarget); + return response; + + case TestProtocol.REQUEST_RECREATE_TASKBAR: + // Allow null-pointer to catch illegal states. + runOnTISBinder(tisBinder -> tisBinder.getTaskbarManager().recreateTaskbars()); + return response; + case TestProtocol.REQUEST_TASKBAR_IME_DOCKED: + return getTISBinderUIProperty(Bundle::putBoolean, tisBinder -> + tisBinder.getTaskbarManager() + .getCurrentActivityContext().isImeDocked()); + case TestProtocol.REQUEST_UNSTASH_BUBBLE_BAR_IF_STASHED: + runOnTISBinder(tisBinder -> { + // Allow null-pointer to catch illegal states. + tisBinder.getTaskbarManager().getCurrentActivityContext() + .unstashBubbleBarIfStashed(); + }); + return response; + case TestProtocol.REQUEST_INJECT_FAKE_TRACKPAD: + runOnTISBinder(tisBinder -> tisBinder.injectFakeTrackpadForTesting()); + return response; + case TestProtocol.REQUEST_EJECT_FAKE_TRACKPAD: + runOnTISBinder(tisBinder -> tisBinder.ejectFakeTrackpadForTesting()); + return response; + } + + return super.call(method, arg, extras); + } + + @Override + protected WindowInsets getWindowInsets() { + RecentsViewContainer container = getRecentsViewContainer(); + WindowInsets insets = container == null + ? null : container.getRootView().getRootWindowInsets(); + return insets == null ? super.getWindowInsets() : insets; + } + + private RecentsViewContainer getRecentsViewContainer() { + // TODO (b/400647896): support per-display container in e2e tests + return OverviewComponentObserver.INSTANCE.get(mContext) + .getContainerInterface(DEFAULT_DISPLAY).getCreatedContainer(); + } + + @Override + protected boolean isLauncherInitialized() { + return super.isLauncherInitialized() && SystemUiProxy.INSTANCE.get(mContext).isActive(); + } + + private void enableBlockingTimeout( + TouchInteractionService.TISBinder tisBinder, boolean enable) { + TaskbarActivityContext context = tisBinder.getTaskbarManager().getCurrentActivityContext(); + if (context == null) { + return; + } + context.enableBlockingTimeoutDuringTests(enable); + } + + private void enableTransientTaskbar(boolean enable) { + DisplayController.INSTANCE.get(mContext).enableTransientTaskbarForTests(enable); + } + + /** + * Runs the given command on the UI thread, after ensuring we are connected to + * TouchInteractionService. + */ + protected void runOnTISBinder(Consumer<TouchInteractionService.TISBinder> connectionCallback) { + try { + CountDownLatch countDownLatch = new CountDownLatch(1); + TISBindHelper helper = MAIN_EXECUTOR.submit(() -> + new TISBindHelper(mContext, tisBinder -> { + connectionCallback.accept(tisBinder); + countDownLatch.countDown(); + })).get(); + countDownLatch.await(); + MAIN_EXECUTOR.execute(helper::onDestroy); + } catch (ExecutionException | InterruptedException e) { + throw new RuntimeException(e); + } + } + + private <T> Bundle getTISBinderUIProperty( + BundleSetter<T> bundleSetter, Function<TouchInteractionService.TISBinder, T> provider) { + Bundle response = new Bundle(); + + runOnTISBinder(tisBinder -> bundleSetter.set( + response, + TestProtocol.TEST_INFO_RESPONSE_FIELD, + provider.apply(tisBinder))); + + return response; + } +} diff --git a/quickstep/src/com/android/quickstep/RecentTasksList.java b/quickstep/src/com/android/quickstep/RecentTasksList.java index 50e929a221..bbe2de0de1 100644 --- a/quickstep/src/com/android/quickstep/RecentTasksList.java +++ b/quickstep/src/com/android/quickstep/RecentTasksList.java @@ -18,7 +18,9 @@ package com.android.quickstep; import static android.content.Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS; +import static com.android.launcher3.Flags.enableSeparateExternalDisplayTasks; import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; +import static com.android.quickstep.util.SplitScreenUtils.convertShellSplitBoundsToLauncher; import static com.android.wm.shell.shared.GroupedTaskInfo.TYPE_DESK; import static com.android.wm.shell.shared.GroupedTaskInfo.TYPE_SPLIT; @@ -40,6 +42,8 @@ import com.android.launcher3.statehandlers.DesktopVisibilityController; import com.android.launcher3.util.DaggerSingletonTracker; import com.android.launcher3.Utilities; import com.android.launcher3.util.LooperExecutor; +import com.android.launcher3.util.SplitConfigurationOptions; +import com.android.launcher3.util.window.WindowManagerProxy; import com.android.quickstep.util.DesktopTask; import com.android.quickstep.util.ExternalDisplaysKt; import com.android.quickstep.util.GroupTask; @@ -63,7 +67,6 @@ import java.util.List; import java.util.Map; import java.util.Objects; import java.util.Set; -import java.util.function.BiConsumer; import java.util.function.Consumer; import java.util.function.Predicate; import java.util.stream.Collectors; @@ -74,7 +77,10 @@ import app.lawnchair.compat.LawnchairQuickstepCompat; /** * Manages the recent task list from the system, caching it as necessary. */ -public class RecentTasksList { +// TODO: b/401602554 - Consider letting [DesktopTasksController] notify [RecentTasksController] of +// desk changes to trigger [IRecentTasksListener.onRecentTasksChanged()], instead of implementing +// [DesktopVisibilityListener]. +public class RecentTasksList implements WindowManagerProxy.DesktopVisibilityListener { private static final TaskLoadResult INVALID_RESULT = new TaskLoadResult(-1, false, 0); @@ -82,6 +88,7 @@ public class RecentTasksList { private final KeyguardManager mKeyguardManager; private final LooperExecutor mMainThreadExecutor; private final SystemUiProxy mSysUiProxy; + private final DesktopVisibilityController mDesktopVisibilityController; // The list change id, increments as the task list changes in the system private int mChangeId; @@ -100,12 +107,14 @@ public class RecentTasksList { public RecentTasksList(Context context, LooperExecutor mainThreadExecutor, KeyguardManager keyguardManager, SystemUiProxy sysUiProxy, TopTaskTracker topTaskTracker, + DesktopVisibilityController desktopVisibilityController, DaggerSingletonTracker tracker) { mContext = context; mMainThreadExecutor = mainThreadExecutor; mKeyguardManager = keyguardManager; mChangeId = 1; mSysUiProxy = sysUiProxy; + mDesktopVisibilityController = desktopVisibilityController; if (LawnchairApp.isRecentsEnabled()) { final IRecentTasksListener recentTasksListener = new IRecentTasksListener.Stub() { @Override @@ -158,6 +167,13 @@ public class RecentTasksList { mSysUiProxy.registerRecentTasksListener(recentTasksListener); tracker.addCloseable( () -> mSysUiProxy.unregisterRecentTasksListener(recentTasksListener)); + + if (DesktopModeStatus.enableMultipleDesktops(mContext)) { + mDesktopVisibilityController.registerDesktopVisibilityListener( + this); + tracker.addCloseable( + () -> mDesktopVisibilityController.unregisterDesktopVisibilityListener(this)); + } } // We may receive onRunningTaskAppeared events later for tasks which have already been @@ -191,27 +207,8 @@ public class RecentTasksList { * @param callback The callback to receive the list of recent tasks * @return The change id of the current task list */ - public synchronized int getTasks( - boolean loadKeysOnly, - @Nullable Consumer<List<GroupTask>> callback, - Predicate<GroupTask> filter) { - return getTasks( - loadKeysOnly, - callback == null ? null : (tasks, requestId) -> callback.accept(tasks), - filter); - } - - /** - * Asynchronously fetches the list of recent tasks, reusing cached list if available. - * - * @param loadKeysOnly Whether to load other associated task data, or just the key - * @param callback The callback to receive the list of recent tasks - * @return The change id of the current task list - */ - public synchronized int getTasks( - boolean loadKeysOnly, - @Nullable BiConsumer<List<GroupTask>, Integer> callback, - Predicate<GroupTask> filter) { + public synchronized int getTasks(boolean loadKeysOnly, + @Nullable Consumer<List<GroupTask>> callback, Predicate<GroupTask> filter) { final int requestLoadId = mChangeId; if (mResultsUi.isValidForRequest(requestLoadId, loadKeysOnly)) { // The list is up to date, send the callback on the next frame, @@ -224,7 +221,7 @@ public class RecentTasksList { .collect(Collectors.toCollection(ArrayList<GroupTask>::new)); mMainThreadExecutor.post(() -> { - callback.accept(result, requestLoadId); + callback.accept(result); }); } @@ -247,7 +244,7 @@ public class RecentTasksList { .map(GroupTask::copy) .collect(Collectors.toCollection(ArrayList<GroupTask>::new)); - callback.accept(result, requestLoadId); + callback.accept(result); } }); }); @@ -317,6 +314,27 @@ public class RecentTasksList { return mRunningTasks; } + @Override + public void onDeskAdded(int displayId, int deskId) { + onRecentTasksChanged(); + } + + @Override + public void onDeskRemoved(int displayId, int deskId) { + onRecentTasksChanged(); + } + + @Override + public void onActiveDeskChanged(int displayId, int newActiveDesk, int oldActiveDesk) { + // Should desk activation changes lead to the invalidation of the loaded tasks? The cases + // are: + // - Switching from one active desk to another. + // - Switching from out of a desk session into an active desk. + // - Switching from an active desk to a non-desk session. + // These changes don't affect the list of desks, nor their contents, so let's ignore them + // for now. + } + private void onRunningTaskAppeared(RunningTaskInfo taskInfo) { // Make sure this task is not already in the list for (RunningTaskInfo existingTask : mRunningTasks) { @@ -406,7 +424,6 @@ public class RecentTasksList { continue; } - // [getTaskInfo1] will not be null for types below beside [TYPE_DESK]. if (Flags.enableShellTopTaskTracking()) { final TaskInfo taskInfo1 = rawTask.getBaseGroupedTask().getTaskInfo1(); final Task.TaskKey task1Key = new Task.TaskKey(taskInfo1); @@ -418,8 +435,10 @@ public class RecentTasksList { final Task.TaskKey task2Key = new Task.TaskKey(taskInfo2); final Task task2 = Task.from(task2Key, taskInfo2, tmpLockedUsers.get(task2Key.userId) /* isLocked */); - allTasks.add(new SplitTask(task1, task2, - rawTask.getBaseGroupedTask().getSplitBounds())); + final SplitConfigurationOptions.SplitBounds launcherSplitBounds = + convertShellSplitBoundsToLauncher( + rawTask.getBaseGroupedTask().getSplitBounds()); + allTasks.add(new SplitTask(task1, task2, launcherSplitBounds)); } else { allTasks.add(new SingleTask(task1)); } @@ -456,7 +475,9 @@ public class RecentTasksList { } if (task2 != null) { Objects.requireNonNull(rawTask.getSplitBounds()); - allTasks.add(new SplitTask(task1, task2, rawTask.getSplitBounds())); + final SplitConfigurationOptions.SplitBounds launcherSplitBounds = + convertShellSplitBoundsToLauncher(rawTask.getSplitBounds()); + allTasks.add(new SplitTask(task1, task2, launcherSplitBounds)); } else { allTasks.add(new SingleTask(task1)); } @@ -481,7 +502,8 @@ public class RecentTasksList { Set<Integer> minimizedTaskIds = minimizedTaskIdArray != null ? CollectionsKt.toSet(ArraysKt.asIterable(minimizedTaskIdArray)) : Collections.emptySet(); - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue()) { + if (enableSeparateExternalDisplayTasks() + && !DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue()) { // This code is not needed when the multiple desktop feature is enabled, since Shell // will send a single `GroupedTaskInfo` for each desk with a unique `deskId` across // all displays. diff --git a/quickstep/src/com/android/quickstep/RecentsActivity.java b/quickstep/src/com/android/quickstep/RecentsActivity.java index 269d3e8ce3..e1a5d7038e 100644 --- a/quickstep/src/com/android/quickstep/RecentsActivity.java +++ b/quickstep/src/com/android/quickstep/RecentsActivity.java @@ -104,7 +104,7 @@ import app.lawnchair.compat.LawnchairQuickstepCompat; * See {@link com.android.quickstep.views.RecentsView}. */ public final class RecentsActivity extends StatefulActivity<RecentsState> implements - RecentsViewContainer, InvariantDeviceProfile.OnIDPChangeListener { + RecentsViewContainer { private static final String TAG = "RecentsActivity"; public static final ContextTracker.ActivityTracker<RecentsActivity> ACTIVITY_TRACKER = @@ -136,7 +136,6 @@ public final class RecentsActivity extends StatefulActivity<RecentsState> implem * Init drag layer and overview panel views. */ protected void setupViews() { - getTheme().applyStyle(getOverviewBlurStyleResId(), true); SystemUiProxy systemUiProxy = SystemUiProxy.INSTANCE.get(this); // SplitSelectStateController needs to be created before setContentView() mSplitSelectStateController = @@ -239,16 +238,6 @@ public final class RecentsActivity extends StatefulActivity<RecentsState> implem return mScrimView; } - @Override - public FallbackActivityInterface getContainerInterface() { - return FallbackActivityInterface.INSTANCE; - } - - @Override - public SplitSelectStateController getSplitSelectStateController() { - return mSplitSelectStateController; - } - @Override public FallbackRecentsView getOverviewPanel() { return mFallbackRecentsView; @@ -390,10 +379,10 @@ public final class RecentsActivity extends StatefulActivity<RecentsState> implem protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setWallpaperDependentTheme(this); + mStateManager = new StateManager<>(this, RecentsState.BG_LAUNCHER); initDeviceProfile(); - InvariantDeviceProfile.INSTANCE.get(this).addOnChangeListener(this); setupViews(); getSystemUiController().updateUiState(SystemUiController.UI_STATE_BASE_WINDOW, @@ -479,7 +468,6 @@ public final class RecentsActivity extends StatefulActivity<RecentsState> implem mActivityLaunchAnimationRunner = null; mSplitSelectStateController.onDestroy(); mTISBindHelper.onDestroy(); - InvariantDeviceProfile.INSTANCE.get(this).removeOnChangeListener(this); } @Override @@ -503,7 +491,7 @@ public final class RecentsActivity extends StatefulActivity<RecentsState> implem this.getIApplicationThread(), "StartHomeFromRecents"), "Lawnchair"); - startHomeIntentSafely(this, options.toBundle(), TAG, getDisplayId()); + startHomeIntentSafely(this, options.toBundle(), TAG); } private final RemoteAnimationFactory mAnimationToHomeFactory = @@ -572,14 +560,4 @@ public final class RecentsActivity extends StatefulActivity<RecentsState> implem public boolean isRecentsViewVisible() { return getStateManager().getState().isRecentsViewVisible(); } - - @Override - public void onIdpChanged(boolean modelPropertiesChanged) { - onHandleConfigurationChanged(); - } - - @Override - public int getOverviewBlurStyleResId() { - return R.style.OverviewBlurFallbackStyle; - } } diff --git a/quickstep/src/com/android/quickstep/RecentsAnimationCallbacks.java b/quickstep/src/com/android/quickstep/RecentsAnimationCallbacks.java index cddfd29f5e..2cf7f15898 100644 --- a/quickstep/src/com/android/quickstep/RecentsAnimationCallbacks.java +++ b/quickstep/src/com/android/quickstep/RecentsAnimationCallbacks.java @@ -37,9 +37,8 @@ import androidx.annotation.UiThread; import com.android.launcher3.Utilities; import com.android.launcher3.util.Preconditions; -import com.android.quickstep.fallback.window.RecentsWindowManager; +import com.android.quickstep.fallback.window.RecentsWindowFlags; import com.android.quickstep.util.ActiveGestureProtoLogProxy; -import com.android.quickstep.views.RecentsViewContainer; import com.android.systemui.shared.recents.model.ThumbnailData; import com.android.systemui.shared.system.RecentsAnimationControllerCompat; @@ -59,15 +58,15 @@ public class RecentsAnimationCallbacks implements com.android.systemui.shared.system.RecentsAnimationListener { private final Set<RecentsAnimationListener> mListeners = new ArraySet<>(); - private final RecentsViewContainer mContainer; + private final SystemUiProxy mSystemUiProxy; // TODO(141886704): Remove these references when they are no longer needed private RecentsAnimationController mController; private boolean mCancelled; - public RecentsAnimationCallbacks(RecentsViewContainer container) { - mContainer = container; + public RecentsAnimationCallbacks(SystemUiProxy systemUiProxy) { + mSystemUiProxy = systemUiProxy; } @UiThread @@ -129,7 +128,7 @@ public class RecentsAnimationCallbacks implements boolean isOpeningHome = Arrays.stream(appTargets).filter(app -> app.mode == MODE_OPENING && app.windowConfiguration.getActivityType() == ACTIVITY_TYPE_HOME) .count() > 0; - if (appCount == 0 && (!(mContainer instanceof RecentsWindowManager) + if (appCount == 0 && (!RecentsWindowFlags.Companion.getEnableOverviewInWindow() || isOpeningHome)) { ActiveGestureProtoLogProxy.logOnRecentsAnimationStartCancelled(); // Edge case, if there are no closing app targets, then Launcher has nothing to handle diff --git a/quickstep/src/com/android/quickstep/RecentsAnimationController.java b/quickstep/src/com/android/quickstep/RecentsAnimationController.java index 17c4405151..865cc47091 100644 --- a/quickstep/src/com/android/quickstep/RecentsAnimationController.java +++ b/quickstep/src/com/android/quickstep/RecentsAnimationController.java @@ -57,6 +57,8 @@ public class RecentsAnimationController { private boolean mFinishRequested = false; // Only valid when mFinishRequested == true. private boolean mFinishTargetIsLauncher; + // Only valid when mFinishRequested == true + private boolean mLauncherIsVisibleAtFinish; private RunnableList mPendingFinishCallbacks = new RunnableList(); public RecentsAnimationController(RecentsAnimationControllerCompat controller, @@ -130,14 +132,28 @@ public class RecentsAnimationController { finishController(toRecents, onFinishComplete, sendUserLeaveHint); } + @UiThread + public void finish(boolean toRecents, boolean launcherIsVisibleAtFinish, + Runnable onFinishComplete, boolean sendUserLeaveHint) { + Preconditions.assertUIThread(); + finishController(toRecents, launcherIsVisibleAtFinish, onFinishComplete, sendUserLeaveHint, + false); + } + @UiThread public void finishController(boolean toRecents, Runnable callback, boolean sendUserLeaveHint) { - finishController(toRecents, callback, sendUserLeaveHint, false /* forceFinish */); + finishController(toRecents, false, callback, sendUserLeaveHint, false /* forceFinish */); } @UiThread public void finishController(boolean toRecents, Runnable callback, boolean sendUserLeaveHint, boolean forceFinish) { + finishController(toRecents, toRecents, callback, sendUserLeaveHint, forceFinish); + } + + @UiThread + public void finishController(boolean toRecents, boolean launcherIsVisibleAtFinish, + Runnable callback, boolean sendUserLeaveHint, boolean forceFinish) { mPendingFinishCallbacks.add(callback); if (!forceFinish && mFinishRequested) { // If finish has already been requested, then add the callback to the pending list. @@ -149,6 +165,7 @@ public class RecentsAnimationController { // Finish not yet requested mFinishRequested = true; mFinishTargetIsLauncher = toRecents; + mLauncherIsVisibleAtFinish = launcherIsVisibleAtFinish; mOnFinishedListener.accept(this); Runnable finishCb = () -> { mController.finish(toRecents, sendUserLeaveHint, new IResultReceiver.Stub() { @@ -225,6 +242,14 @@ public class RecentsAnimationController { return mFinishTargetIsLauncher; } + /** + * RecentsAnimationListeners can check this in onRecentsAnimationFinished() to determine whether + * the animation was finished to launcher vs an app. + */ + public boolean getLauncherIsVisibleAtFinish() { + return mLauncherIsVisibleAtFinish; + } + public void dump(String prefix, PrintWriter pw) { pw.println(prefix + "RecentsAnimationController:"); diff --git a/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java b/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java index a8ddbb4ed7..ebb6268f32 100644 --- a/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java +++ b/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java @@ -15,9 +15,10 @@ */ package com.android.quickstep; -import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.app.WindowConfiguration.ACTIVITY_TYPE_UNDEFINED; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; +import static android.view.Display.DEFAULT_DISPLAY; +import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static com.android.launcher3.MotionEventsUtils.isTrackpadScroll; import static com.android.launcher3.util.DisplayController.CHANGE_ALL; @@ -52,6 +53,7 @@ import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_T import android.app.ActivityTaskManager; import android.content.Context; import android.graphics.Region; +import android.inputmethodservice.InputMethodService; import android.net.Uri; import android.os.RemoteException; import android.os.SystemProperties; @@ -61,10 +63,12 @@ import android.view.ViewConfiguration; import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import androidx.annotation.VisibleForTesting; import com.android.launcher3.Utilities; -import com.android.app.displaylib.PerDisplayRepository; import com.android.launcher3.dagger.ApplicationContext; +import com.android.launcher3.dagger.LauncherAppComponent; +import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.util.DaggerSingletonObject; import com.android.launcher3.util.DaggerSingletonTracker; import com.android.launcher3.util.DisplayController; @@ -73,7 +77,6 @@ import com.android.launcher3.util.DisplayController.Info; import com.android.launcher3.util.NavigationMode; import com.android.launcher3.util.SettingsCache; import com.android.quickstep.TopTaskTracker.CachedTaskInfo; -import com.android.quickstep.dagger.QuickstepBaseAppComponent; import com.android.quickstep.util.ActiveGestureLog; import com.android.quickstep.util.ContextualSearchStateManager; import com.android.quickstep.util.GestureExclusionManager; @@ -86,17 +89,19 @@ import com.android.systemui.shared.system.QuickStepContract.SystemUiStateFlags; import com.android.systemui.shared.system.TaskStackChangeListener; import com.android.systemui.shared.system.TaskStackChangeListeners; -import dagger.assisted.Assisted; -import dagger.assisted.AssistedFactory; -import dagger.assisted.AssistedInject; - import java.io.PrintWriter; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; + +import javax.inject.Inject; import app.lawnchair.LawnchairApp; /** * Manages the state of the system during a swipe up gesture. */ +@LauncherAppSingleton public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, ExclusionListener { static final String SUPPORT_ONE_HANDED_MODE = "ro.support_one_handed_mode"; @@ -105,19 +110,8 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E private static final float QUICKSTEP_TOUCH_SLOP_RATIO_TWO_BUTTON = 3f; private static final float QUICKSTEP_TOUCH_SLOP_RATIO_GESTURAL = 1.414f; - public static final DaggerSingletonObject<PerDisplayRepository<RecentsAnimationDeviceState>> - REPOSITORY_INSTANCE = new DaggerSingletonObject<>( - QuickstepBaseAppComponent::getRecentsAnimationDeviceStateRepository); - - /** The SysUI state ignores trackpad, touch gestures, and keyboard shortcuts. */ - private static final long GESTURE_OR_KB_SHORTCUT_DISABLING_STATES = - SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED - | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING - | SYSUI_STATE_QUICK_SETTINGS_EXPANDED - | SYSUI_STATE_MAGNIFICATION_OVERLAP - | SYSUI_STATE_DEVICE_DREAMING - | SYSUI_STATE_DISABLE_GESTURE_SPLIT_INVOCATION - | SYSUI_STATE_DISABLE_GESTURE_PIP_ANIMATING; + public static DaggerSingletonObject<RecentsAnimationDeviceState> INSTANCE = + new DaggerSingletonObject<>(LauncherAppComponent::getRecentsAnimationDeviceState); private final Context mContext; private final DisplayController mDisplayController; @@ -127,8 +121,11 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E private final RotationTouchHelper mRotationTouchHelper; private final TaskStackChangeListener mPipListener; + // Cache for better performance since it doesn't change at runtime. + private final boolean mCanImeRenderGesturalNavButtons = isImeRenderingNavButtons(); private @SystemUiStateFlags long mSystemUiStateFlags = QuickStepContract.SYSUI_STATE_AWAKE; + private final Map<Integer, Long> mSysUIStateFlagsPerDisplay = new ConcurrentHashMap<>(); private NavigationMode mMode = THREE_BUTTONS; private NavBarPosition mNavBarPosition; @@ -145,20 +142,18 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E private int mGestureBlockingTaskId = -1; private @NonNull Region mExclusionRegion = GestureExclusionManager.EMPTY_REGION; private boolean mExclusionListenerRegistered; - private final int mDisplayId; - @AssistedInject + @VisibleForTesting + @Inject RecentsAnimationDeviceState( @ApplicationContext Context context, - @Assisted int displayId, - @Assisted RotationTouchHelper rotationTouchHelper, GestureExclusionManager exclusionManager, DisplayController displayController, ContextualSearchStateManager contextualSearchStateManager, + RotationTouchHelper rotationTouchHelper, SettingsCache settingsCache, DaggerSingletonTracker lifeCycle) { mContext = context; - mDisplayId = displayId; mDisplayController = displayController; mExclusionManager = exclusionManager; mContextualSearchStateManager = contextualSearchStateManager; @@ -171,10 +166,10 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E // Register for exclusion updates lifeCycle.addCloseable(this::unregisterExclusionListener); } - + // Register for display changes changes mDisplayController.addChangeListener(this); - onDisplayInfoChanged(context, mDisplayController.getInfoForDisplay(mDisplayId), CHANGE_ALL); + onDisplayInfoChanged(context, mDisplayController.getInfo(), CHANGE_ALL); lifeCycle.addCloseable(() -> mDisplayController.removeChangeListener(this)); if (mIsOneHandedModeSupported) { @@ -231,16 +226,16 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E } /** - * Adds a listener for the change flag, guaranteed to be called after the device state's + * Adds a listener for the nav mode change, guaranteed to be called after the device state's * mode has changed. * * @return Added {@link DisplayInfoChangeListener} so that caller is * responsible for removing the listener from {@link DisplayController} to avoid memory leak. */ - public DisplayController.DisplayInfoChangeListener addDisplayInfoChangeCallback( - int changeFlag, Runnable callback) { + public DisplayController.DisplayInfoChangeListener addNavigationModeChangedCallback( + Runnable callback) { DisplayController.DisplayInfoChangeListener listener = (context, info, flags) -> { - if ((flags & changeFlag) != 0) { + if ((flags & CHANGE_NAVIGATION_MODE) != 0) { callback.run(); } }; @@ -251,7 +246,7 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E /** * Remove the {DisplayController.DisplayInfoChangeListener} added from - * {@link #addDisplayInfoChangeCallback} when {@link TouchInteractionService} is destroyed. + * {@link #addNavigationModeChangedCallback} when {@link TouchInteractionService} is destroyed. */ public void removeDisplayInfoChangeListener( DisplayController.DisplayInfoChangeListener listener) { @@ -370,28 +365,47 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E * Updates the system ui state flags from SystemUI for a specific display. * * @param stateFlags the current {@link SystemUiStateFlags} for the display. + * @param displayId the display's ID. */ - public void setSysUIStateFlags(@SystemUiStateFlags long stateFlags) { - mSystemUiStateFlags = stateFlags; + public void setSysUIStateFlagsForDisplay(@SystemUiStateFlags long stateFlags, + int displayId) { + mSysUIStateFlagsPerDisplay.put(displayId, stateFlags); } /** * Clears the system ui state flags for a specific display. This is called when the display is * destroyed. * + * @param displayId the display's ID. */ - public void clearSysUIStateFlags() { - mSystemUiStateFlags = QuickStepContract.SYSUI_STATE_AWAKE; + public void clearSysUIStateFlagsForDisplay(int displayId) { + mSysUIStateFlagsPerDisplay.remove(displayId); } /** - * @return the system ui state flags for this display. + * @return the system ui state flags for the default display. */ + // TODO(141886704): See if we can remove this @SystemUiStateFlags - public long getSysuiStateFlags() { - return mSystemUiStateFlags; + public long getSysuiStateFlag() { + return getSystemUiStateFlags(DEFAULT_DISPLAY); } + /** + * @return the system ui state flags for a given display ID. + */ + @SystemUiStateFlags + public long getSystemUiStateFlags(int displayId) { + return mSysUIStateFlagsPerDisplay.getOrDefault(displayId, + QuickStepContract.SYSUI_STATE_AWAKE); + } + + /** + * @return the display ids that have sysui state. + */ + public Set<Integer> getDisplaysWithSysUIState() { + return mSysUIStateFlagsPerDisplay.keySet(); + } /** * Sets the flag that indicates whether a predictive back-to-home animation is in progress */ @@ -410,8 +424,8 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E * @return whether SystemUI is in a state where we can start a system gesture. */ public boolean canStartSystemGesture() { - boolean canStartWithNavHidden = (getSysuiStateFlags() & SYSUI_STATE_NAV_BAR_HIDDEN) == 0 - || (getSysuiStateFlags() & SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY) != 0 + boolean canStartWithNavHidden = (getSysuiStateFlag() & SYSUI_STATE_NAV_BAR_HIDDEN) == 0 + || (getSysuiStateFlag() & SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY) != 0 || mRotationTouchHelper.isTaskListFrozen(); return canStartWithNavHidden && canStartAnyGesture(); } @@ -423,27 +437,24 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E */ public boolean canStartTrackpadGesture() { boolean trackpadGesturesEnabled = - (getSysuiStateFlags() & SYSUI_STATE_TOUCHPAD_GESTURES_DISABLED) == 0; + (getSysuiStateFlag() & SYSUI_STATE_TOUCHPAD_GESTURES_DISABLED) == 0; return trackpadGesturesEnabled && canStartAnyGesture(); } - /** - * @return whether SystemUI is in a state that allows the overview command from being started. - */ - public boolean canStartOverviewCommand() { - final long sysUiStateFlags = getSysuiStateFlags(); - final boolean overviewEnabled = !isOverviewDisabled(); - return overviewEnabled && (sysUiStateFlags & GESTURE_OR_KB_SHORTCUT_DISABLING_STATES) == 0; - } - /** * Common logic to determine if either trackpad or finger gesture can be started */ private boolean canStartAnyGesture() { - boolean homeOrOverviewEnabled = (getSysuiStateFlags() & SYSUI_STATE_HOME_DISABLED) == 0 - || (getSysuiStateFlags() & SYSUI_STATE_OVERVIEW_DISABLED) == 0; - return (GESTURE_OR_KB_SHORTCUT_DISABLING_STATES & getSysuiStateFlags()) == 0 - && homeOrOverviewEnabled; + boolean homeOrOverviewEnabled = (getSysuiStateFlag() & SYSUI_STATE_HOME_DISABLED) == 0 + || (getSysuiStateFlag() & SYSUI_STATE_OVERVIEW_DISABLED) == 0; + long gestureDisablingStates = SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED + | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING + | SYSUI_STATE_QUICK_SETTINGS_EXPANDED + | SYSUI_STATE_MAGNIFICATION_OVERLAP + | SYSUI_STATE_DEVICE_DREAMING + | SYSUI_STATE_DISABLE_GESTURE_SPLIT_INVOCATION + | SYSUI_STATE_DISABLE_GESTURE_PIP_ANIMATING; + return (gestureDisablingStates & getSysuiStateFlag()) == 0 && homeOrOverviewEnabled; } /** @@ -451,35 +462,35 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E * (like camera or maps) */ public boolean isKeyguardShowingOccluded() { - return (getSysuiStateFlags() & SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED) != 0; + return (getSysuiStateFlag() & SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED) != 0; } /** * @return whether screen pinning is enabled and active */ public boolean isScreenPinningActive() { - return (getSysuiStateFlags() & SYSUI_STATE_SCREEN_PINNING) != 0; + return (getSysuiStateFlag() & SYSUI_STATE_SCREEN_PINNING) != 0; } /** * @return whether assistant gesture is constraint */ public boolean isAssistantGestureIsConstrained() { - return (getSysuiStateFlags() & SYSUI_STATE_ASSIST_GESTURE_CONSTRAINED) != 0; + return (getSysuiStateFlag() & SYSUI_STATE_ASSIST_GESTURE_CONSTRAINED) != 0; } /** * @return whether the bubble stack is expanded */ public boolean isBubblesExpanded() { - return (getSysuiStateFlags() & SYSUI_STATE_BUBBLES_EXPANDED) != 0; + return (getSysuiStateFlag() & SYSUI_STATE_BUBBLES_EXPANDED) != 0; } /** * @return whether the global actions dialog is showing */ public boolean isSystemUiDialogShowing() { - return (getSysuiStateFlags() & SYSUI_STATE_DIALOG_SHOWING) != 0; + return (getSysuiStateFlag() & SYSUI_STATE_DIALOG_SHOWING) != 0; } /** @@ -493,35 +504,35 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E * @return whether the accessibility menu is available. */ public boolean isAccessibilityMenuAvailable() { - return (getSysuiStateFlags() & SYSUI_STATE_A11Y_BUTTON_CLICKABLE) != 0; + return (getSysuiStateFlag() & SYSUI_STATE_A11Y_BUTTON_CLICKABLE) != 0; } /** * @return whether the accessibility menu shortcut is available. */ public boolean isAccessibilityMenuShortcutAvailable() { - return (getSysuiStateFlags() & SYSUI_STATE_A11Y_BUTTON_LONG_CLICKABLE) != 0; + return (getSysuiStateFlag() & SYSUI_STATE_A11Y_BUTTON_LONG_CLICKABLE) != 0; } /** * @return whether home is disabled (either by SUW/SysUI/device policy) */ public boolean isHomeDisabled() { - return (getSysuiStateFlags() & SYSUI_STATE_HOME_DISABLED) != 0; + return (getSysuiStateFlag() & SYSUI_STATE_HOME_DISABLED) != 0; } /** * @return whether overview is disabled (either by SUW/SysUI/device policy) */ public boolean isOverviewDisabled() { - return (getSysuiStateFlags() & SYSUI_STATE_OVERVIEW_DISABLED) != 0; + return (getSysuiStateFlag() & SYSUI_STATE_OVERVIEW_DISABLED) != 0; } /** * @return whether one-handed mode is enabled and active */ public boolean isOneHandedModeActive() { - return (getSysuiStateFlags() & SYSUI_STATE_ONE_HANDED_ACTIVE) != 0; + return (getSysuiStateFlag() & SYSUI_STATE_ONE_HANDED_ACTIVE) != 0; } /** @@ -584,7 +595,7 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E */ public boolean canTriggerAssistantAction(MotionEvent ev) { return mAssistantAvailable - && !QuickStepContract.isAssistantGestureDisabled(getSysuiStateFlags()) + && !QuickStepContract.isAssistantGestureDisabled(getSysuiStateFlag()) && mRotationTouchHelper.touchInAssistantRegion(ev) && !isTrackpadScroll(ev) && !isLockToAppActive(); @@ -602,7 +613,7 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E } if (mIsOneHandedModeEnabled) { - final Info displayInfo = mDisplayController.getInfoForDisplay(mDisplayId); + final Info displayInfo = mDisplayController.getInfo(); return (mRotationTouchHelper.touchInOneHandedModeRegion(ev) && (displayInfo.currentSize.x < displayInfo.currentSize.y)); } @@ -623,7 +634,8 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E /** Returns whether IME is rendering nav buttons, and IME is currently showing. */ public boolean isImeRenderingNavButtons() { - return mMode == NO_BUTTON && ((getSysuiStateFlags() & SYSUI_STATE_IME_VISIBLE) != 0); + return mCanImeRenderGesturalNavButtons && mMode == NO_BUTTON + && ((getSysuiStateFlag() & SYSUI_STATE_IME_VISIBLE) != 0); } /** @@ -657,7 +669,7 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E /** Returns a string representation of the system ui state flags for the default display. */ public String getSystemUiStateString() { - return getSystemUiStateString(getSysuiStateFlags()); + return getSystemUiStateString(getSysuiStateFlag()); } /** Returns a string representation of the system ui state flags. */ @@ -668,30 +680,24 @@ public class RecentsAnimationDeviceState implements DisplayInfoChangeListener, E public void dump(PrintWriter pw) { pw.println("DeviceState:"); pw.println(" canStartSystemGesture=" + canStartSystemGesture()); - pw.println(" systemUiFlagsForDefaultDisplay=" + getSysuiStateFlags()); + pw.println(" systemUiFlagsForDefaultDisplay=" + getSysuiStateFlag()); pw.println(" systemUiFlagsDesc=" + getSystemUiStateString()); pw.println(" assistantAvailable=" + mAssistantAvailable); pw.println(" assistantDisabled=" - + QuickStepContract.isAssistantGestureDisabled(getSysuiStateFlags())); + + QuickStepContract.isAssistantGestureDisabled(getSysuiStateFlag())); pw.println(" isOneHandedModeEnabled=" + mIsOneHandedModeEnabled); pw.println(" isSwipeToNotificationEnabled=" + mIsSwipeToNotificationEnabled); pw.println(" deferredGestureRegion=" + mDeferredGestureRegion.getBounds()); pw.println(" exclusionRegion=" + mExclusionRegion.getBounds()); pw.println(" pipIsActive=" + mPipIsActive); pw.println(" predictiveBackToHomeInProgress=" + mIsPredictiveBackToHomeInProgress); + for (int displayId : mSysUIStateFlagsPerDisplay.keySet()) { + pw.println(" systemUiFlagsForDisplay" + displayId + "=" + getSystemUiStateFlags( + displayId)); + pw.println(" systemUiFlagsForDisplay" + displayId + "Desc=" + getSystemUiStateString( + getSystemUiStateFlags(displayId))); + } pw.println(" RotationTouchHelper:"); mRotationTouchHelper.dump(pw); } - - public int getDisplayId() { - return mDisplayId; - } - - @AssistedFactory - public interface Factory { - /** Creates a new instance of [RecentsAnimationDeviceState] for a given [displayId] and - * [rotationTouchHelper]. */ - RecentsAnimationDeviceState create(int displayId, RotationTouchHelper rotationTouchHelper); - } - } diff --git a/quickstep/src/com/android/quickstep/RecentsAnimationTargets.java b/quickstep/src/com/android/quickstep/RecentsAnimationTargets.java index 60b5337893..0deb1ca953 100644 --- a/quickstep/src/com/android/quickstep/RecentsAnimationTargets.java +++ b/quickstep/src/com/android/quickstep/RecentsAnimationTargets.java @@ -55,11 +55,14 @@ public class RecentsAnimationTargets extends RemoteAnimationTargets { * * @return {@code true} if at least one target app is a desktop task */ - // TODO: b/362720309 - Remove this function once multi-desks is fully launched. public boolean hasDesktopTasks(Context context) { if (!DesktopModeStatus.canEnterDesktopMode(context)) { return false; } + // TODO: b/400866688 - Check if we need to update this such that for an empty desk, we + // receive a list of apps that contain only the Launcher and the `DesktopWallpaperActivity` + // and both are fullscreen windowing mode. A desk can also have transparent modals and + // immersive apps which may not have a "freeform" windowing mode. for (RemoteAnimationTarget target : apps) { if (target.windowConfiguration.getWindowingMode() == WINDOWING_MODE_FREEFORM) { return true; diff --git a/quickstep/src/com/android/quickstep/RecentsFilterState.java b/quickstep/src/com/android/quickstep/RecentsFilterState.java index fa12d52032..1808a9769f 100644 --- a/quickstep/src/com/android/quickstep/RecentsFilterState.java +++ b/quickstep/src/com/android/quickstep/RecentsFilterState.java @@ -16,8 +16,6 @@ package com.android.quickstep; -import static com.android.quickstep.fallback.window.RecentsWindowFlags.enableOverviewOnConnectedDisplays; - import androidx.annotation.Nullable; import com.android.quickstep.util.DesksUtils; @@ -122,17 +120,14 @@ public class RecentsFilterState { * @param packageName package name to filter GroupTasks by * if null, Predicate filters out desktop tasks with no non-minimized tasks, * unless the multiple desks feature is enabled, which allows empty desks. - * @param displayId filter out tasks not on this display */ - public static Predicate<GroupTask> getFilter(@Nullable String packageName, int displayId) { - Predicate<GroupTask> filter = getDesktopTaskFilter(); - if (packageName != null) { - filter = filter.and(groupTask -> groupTask.containsPackage(packageName)); + public static Predicate<GroupTask> getFilter(@Nullable String packageName) { + if (packageName == null) { + return getDesktopTaskFilter(); } - if (enableOverviewOnConnectedDisplays()) { - filter = filter.and(groupTask -> groupTask.matchesDisplayId(displayId)); - } - return filter; + + return (groupTask) -> (groupTask.containsPackage(packageName) + && shouldKeepGroupTask(groupTask)); } /** @@ -140,7 +135,7 @@ public class RecentsFilterState { * unless the multiple desks feature is enabled, which allows empty desks. */ public static Predicate<GroupTask> getDesktopTaskFilter() { - return RecentsFilterState::shouldKeepGroupTask; + return (groupTask -> shouldKeepGroupTask(groupTask)); } /** diff --git a/quickstep/src/com/android/quickstep/RecentsModel.java b/quickstep/src/com/android/quickstep/RecentsModel.java index 96689e2866..eb032ffc7e 100644 --- a/quickstep/src/com/android/quickstep/RecentsModel.java +++ b/quickstep/src/com/android/quickstep/RecentsModel.java @@ -17,7 +17,7 @@ package com.android.quickstep; import static android.os.Process.THREAD_PRIORITY_BACKGROUND; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.launcher3.Flags.enableRefactorTaskThumbnail; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.quickstep.TaskUtils.checkCurrentOrManagedUserId; @@ -43,6 +43,7 @@ import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.graphics.ThemeManager; import com.android.launcher3.graphics.ThemeManager.ThemeChangeListener; import com.android.launcher3.icons.IconProvider; +import com.android.launcher3.statehandlers.DesktopVisibilityController; import com.android.launcher3.util.DaggerSingletonObject; import com.android.launcher3.util.DaggerSingletonTracker; import com.android.launcher3.util.DisplayController; @@ -69,7 +70,6 @@ import java.util.List; import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.Executor; import java.util.concurrent.Executors; -import java.util.function.BiConsumer; import java.util.function.Consumer; import java.util.function.Predicate; @@ -96,17 +96,6 @@ public class RecentsModel implements RecentTasksDataSource, TaskStackChangeListe private final ConcurrentLinkedQueue<TaskVisualsChangeListener> mThumbnailChangeListeners = new ConcurrentLinkedQueue<>(); - private final ConcurrentLinkedQueue<RecentTasksChangedListener> mRecentTasksChangedListeners = - new ConcurrentLinkedQueue<>(); - private final RecentTasksChangedListener mRecentTasksListObserver = - new RecentTasksChangedListener() { - @Override - public void onRecentTasksChanged() { - mRecentTasksChangedListeners.forEach( - RecentTasksChangedListener::onRecentTasksChanged); - } - }; - private final Context mContext; private final RecentTasksList mTaskList; private final TaskIconCache mIconCache; @@ -119,12 +108,14 @@ public class RecentsModel implements RecentTasksDataSource, TaskStackChangeListe DisplayController displayController, LockedUserState lockedUserState, Lazy<ThemeManager> themeManagerLazy, + DesktopVisibilityController desktopVisibilityController, DaggerSingletonTracker tracker ) { // Lazily inject the ThemeManager and access themeManager once the device is // unlocked. See b/393248495 for details. this(context, new IconProvider(context), systemUiProxy, topTaskTracker, - displayController, lockedUserState, themeManagerLazy, tracker); + displayController, lockedUserState, themeManagerLazy, desktopVisibilityController, + tracker); } @SuppressLint("VisibleForTests") @@ -135,6 +126,7 @@ public class RecentsModel implements RecentTasksDataSource, TaskStackChangeListe DisplayController displayController, LockedUserState lockedUserState, Lazy<ThemeManager> themeManagerLazy, + DesktopVisibilityController desktopVisibilityController, DaggerSingletonTracker tracker) { this(context, new RecentTasksList( @@ -142,7 +134,7 @@ public class RecentsModel implements RecentTasksDataSource, TaskStackChangeListe MAIN_EXECUTOR, context.getSystemService(KeyguardManager.class), systemUiProxy, - topTaskTracker, tracker), + topTaskTracker, desktopVisibilityController, tracker), new TaskIconCache(context, RECENTS_MODEL_EXECUTOR, iconProvider, displayController), new TaskThumbnailCache(context, RECENTS_MODEL_EXECUTOR), iconProvider, @@ -164,7 +156,6 @@ public class RecentsModel implements RecentTasksDataSource, TaskStackChangeListe DaggerSingletonTracker tracker) { mContext = context; mTaskList = taskList; - mTaskList.registerRecentTasksChangedListener(mRecentTasksListObserver); mIconCache = iconCache; mIconCache.registerTaskVisualsChangeListener(this); mThumbnailCache = thumbnailCache; @@ -192,10 +183,10 @@ public class RecentsModel implements RecentTasksDataSource, TaskStackChangeListe Runnable unlockCallback = () -> themeManagerLazy.get().addChangeListener(this); lockedUserState.runOnUserUnlocked(unlockCallback); + // Lawnchair-TODO-Merge-High: taskStackChangeListeners run when isRecentsEnabled tracker.addCloseable(() -> { if (LawnchairApp.isRecentsEnabled()) { TaskStackChangeListeners.getInstance().unregisterTaskStackListener(this); - mTaskList.unregisterRecentTasksChangedListener(); } iconChangeCloseable.close(); mIconCache.removeTaskVisualsChangeListener(); @@ -232,28 +223,14 @@ public class RecentsModel implements RecentTasksDataSource, TaskStackChangeListe /** * Fetches the list of recent tasks, based on a filter * - * @param filter Returns true if a GroupTask should be included into the list passed into - * callback. * @param callback The callback to receive the task plan once its complete or null. This is - * always called on the UI thread. - * @return the request id associated with this call. - */ - public int getTasks(Predicate<GroupTask> filter, @Nullable Consumer<List<GroupTask>> callback) { - return mTaskList.getTasks(false /* loadKeysOnly */, callback, filter); - } - - /** - * Fetches the list of recent tasks, based on a filter - * - * @param callback The callback to receive the task plan and request ID once its complete or - * null. This is always called on the UI thread. + * always called on the UI thread. * @param filter Returns true if a GroupTask should be included into the list passed into * callback. * @return the request id associated with this call. */ - public int getTasks( - @Nullable BiConsumer<List<GroupTask>, Integer> callback, Predicate<GroupTask> filter) { - return mTaskList.getTasks(/* loadKeysOnly= */ false, callback, filter); + public int getTasks(@Nullable Consumer<List<GroupTask>> callback, Predicate<GroupTask> filter) { + return mTaskList.getTasks(false /* loadKeysOnly */, callback, filter); } /** @@ -413,14 +390,14 @@ public class RecentsModel implements RecentTasksDataSource, TaskStackChangeListe * Registers a listener for recent tasks */ public void registerRecentTasksChangedListener(RecentTasksChangedListener listener) { - mRecentTasksChangedListeners.add(listener); + mTaskList.registerRecentTasksChangedListener(listener); } /** * Removes the previously registered running tasks listener */ - public void unregisterRecentTasksChangedListener(RecentTasksChangedListener listener) { - mRecentTasksChangedListeners.remove(listener); + public void unregisterRecentTasksChangedListener() { + mTaskList.unregisterRecentTasksChangedListener(); } /** diff --git a/quickstep/src/com/android/quickstep/RemoteAnimationTargets.java b/quickstep/src/com/android/quickstep/RemoteAnimationTargets.java index 60b1ff3e4d..0bb825f317 100644 --- a/quickstep/src/com/android/quickstep/RemoteAnimationTargets.java +++ b/quickstep/src/com/android/quickstep/RemoteAnimationTargets.java @@ -20,12 +20,10 @@ import static android.app.WindowConfiguration.ACTIVITY_TYPE_RECENTS; import static android.view.WindowManager.LayoutParams.TYPE_NAVIGATION_BAR; import android.os.Bundle; -import android.util.Log; import android.view.RemoteAnimationTarget; import java.io.PrintWriter; import java.util.ArrayList; -import java.util.Arrays; import java.util.concurrent.CopyOnWriteArrayList; /** @@ -33,8 +31,6 @@ import java.util.concurrent.CopyOnWriteArrayList; */ public class RemoteAnimationTargets { - private static final String TAG = "RemoteAnimationTargets"; - private final CopyOnWriteArrayList<ReleaseCheck> mReleaseChecks = new CopyOnWriteArrayList<>(); public final RemoteAnimationTarget[] unfilteredApps; @@ -83,8 +79,6 @@ public class RemoteAnimationTargets { return target; } } - Log.e(TAG, "taskId: " + taskId + " not found. apps contains: " - + Arrays.stream(apps).map(target -> target.taskId).toList()); return null; } diff --git a/quickstep/src/com/android/quickstep/RemoteTargetGluer.java b/quickstep/src/com/android/quickstep/RemoteTargetGluer.java index e6e39e0a52..e38b89aec6 100644 --- a/quickstep/src/com/android/quickstep/RemoteTargetGluer.java +++ b/quickstep/src/com/android/quickstep/RemoteTargetGluer.java @@ -16,7 +16,7 @@ package com.android.quickstep; -import static com.android.wm.shell.shared.desktopmode.DesktopModeStatus.enableMultipleDesktops; +import static com.android.quickstep.util.SplitScreenUtils.convertShellSplitBoundsToLauncher; import static com.android.wm.shell.shared.split.SplitBounds.KEY_EXTRA_SPLIT_BOUNDS; import static java.util.stream.Collectors.toList; @@ -32,14 +32,12 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.launcher3.statehandlers.DesktopVisibilityController; +import com.android.launcher3.util.SplitConfigurationOptions; import com.android.quickstep.util.AnimatorControllerWithResistance; import com.android.quickstep.util.TaskViewSimulator; import com.android.quickstep.util.TransformParams; -import com.android.wm.shell.shared.GroupedTaskInfo; import com.android.wm.shell.shared.split.SplitBounds; -import kotlin.collections.CollectionsKt; - import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; @@ -54,68 +52,56 @@ public class RemoteTargetGluer { // This is the default number of handles to create when we don't know how many tasks are running // (e.g. if we're in split screen). Allocate extra for potential tasks overlaid, like volume. - private static final int DEFAULT_NUM_HANDLES = 10; + private static final int DEFAULT_NUM_HANDLES = 4; + private RemoteTargetHandle[] mRemoteTargetHandles; - private SplitBounds mSplitBounds; + private SplitConfigurationOptions.SplitBounds mSplitBounds; /** * Use this constructor if remote targets are split-screen independent */ public RemoteTargetGluer(Context context, BaseContainerInterface sizingStrategy, RemoteAnimationTargets targets, boolean forDesktop) { - mRemoteTargetHandles = createHandles(context, sizingStrategy, forDesktop, - targets.apps.length); + init(context, sizingStrategy, targets.apps.length, forDesktop); } /** * Use this constructor if you want the number of handles created to match the number of active * running tasks */ - public RemoteTargetGluer(Context context, BaseContainerInterface sizingStrategy, - @Nullable GroupedTaskInfo groupedTaskInfo) { - if (enableMultipleDesktops(context)) { - if (groupedTaskInfo != null && groupedTaskInfo.isBaseType(GroupedTaskInfo.TYPE_DESK)) { - // Allocate +1 to account for the DesktopWallpaperActivity added to the desk. - int numHandles = groupedTaskInfo.getTaskInfoList().size() + 1; - mRemoteTargetHandles = createHandles(context, sizingStrategy, - /* forDesktop = */ true, numHandles); - return; - } - } else { - int visibleTasksCount = DesktopVisibilityController.INSTANCE.get(context) - .getVisibleDesktopTasksCountDeprecated(); - if (visibleTasksCount > 0) { - // Allocate +1 to account for the DesktopWallpaperActivity added to the desk. - int numHandles = visibleTasksCount + 1; - mRemoteTargetHandles = createHandles(context, sizingStrategy, - /* forDesktop = */ true, numHandles); - return; - } + public RemoteTargetGluer(Context context, BaseContainerInterface sizingStrategy) { + // TODO: b/403344864 Make sure init with correct number of RemoteTargetHandle with + // multi-desks feature enabled as well. + int visibleTasksCount = DesktopVisibilityController.INSTANCE.get(context) + .getVisibleDesktopTasksCountDeprecated(); + if (visibleTasksCount > 0) { + // Allocate +1 to account for a new task added to the desktop mode + int numHandles = visibleTasksCount + 1; + init(context, sizingStrategy, numHandles, true /* forDesktop */); + return; } // Assume 2 handles needed for split, scale down as needed later on when we actually // get remote targets - mRemoteTargetHandles = createHandles(context, sizingStrategy, /* forDesktop = */ false, - DEFAULT_NUM_HANDLES); + init(context, sizingStrategy, DEFAULT_NUM_HANDLES, false /* forDesktop */); + } + + private void init(Context context, BaseContainerInterface sizingStrategy, int numHandles, + boolean forDesktop) { + mRemoteTargetHandles = createHandles(context, sizingStrategy, numHandles, forDesktop); } private RemoteTargetHandle[] createHandles(Context context, - BaseContainerInterface sizingStrategy, boolean forDesktop, int numHandles) { + BaseContainerInterface sizingStrategy, int numHandles, boolean forDesktop) { RemoteTargetHandle[] handles = new RemoteTargetHandle[numHandles]; for (int i = 0; i < numHandles; i++) { - handles[i] = createHandle(context, sizingStrategy, forDesktop, i); + TaskViewSimulator tvs = new TaskViewSimulator(context, sizingStrategy, forDesktop , i); + TransformParams transformParams = new TransformParams(); + handles[i] = new RemoteTargetHandle(tvs, transformParams); } return handles; } - private RemoteTargetHandle createHandle(Context context, - BaseContainerInterface sizingStrategy, boolean forDesktop, int taskIndex) { - TaskViewSimulator tvs = new TaskViewSimulator( - context, sizingStrategy, forDesktop , taskIndex); - TransformParams transformParams = new TransformParams(); - return new RemoteTargetHandle(tvs, transformParams); - } - /** * Pairs together {@link TaskViewSimulator}s and {@link TransformParams} into a * {@link RemoteTargetHandle} @@ -140,7 +126,7 @@ public class RemoteTargetGluer { * information specified. */ public RemoteTargetHandle[] assignTargetsForSplitScreen(RemoteAnimationTargets targets, - SplitBounds splitBounds) { + SplitConfigurationOptions.SplitBounds splitBounds) { mSplitBounds = splitBounds; return assignTargetsForSplitScreen(targets); } @@ -151,13 +137,19 @@ public class RemoteTargetGluer { * the left/top task, index 1 right/bottom. */ public RemoteTargetHandle[] assignTargetsForSplitScreen(RemoteAnimationTargets targets) { + resizeRemoteTargetHandles(targets); + // If we are in a true split screen case (2 apps running on screen), either: // a) mSplitBounds was already set (from the clicked GroupedTaskView) // b) A SplitBounds was passed up from shell (via AbsSwipeUpHandler) // If both of these are null, we are in a 1-app or 1-app-plus-assistant case. if (mSplitBounds == null && targets.extras != null && targets.extras.containsKey(KEY_EXTRA_SPLIT_BOUNDS)) { - mSplitBounds = targets.extras.getParcelable(KEY_EXTRA_SPLIT_BOUNDS, SplitBounds.class); + SplitBounds shellSplitBounds = targets.extras.getParcelable(KEY_EXTRA_SPLIT_BOUNDS, + SplitBounds.class); + if (shellSplitBounds != null) { + mSplitBounds = convertShellSplitBoundsToLauncher(shellSplitBounds); + } } boolean containsSplitTargets = mSplitBounds != null; @@ -165,78 +157,66 @@ public class RemoteTargetGluer { mRemoteTargetHandles.length + " appsLength: " + targets.apps.length); if (mRemoteTargetHandles.length == 1) { - resizeRemoteTargetHandles(targets); // Single fullscreen app // If we're not in split screen, the splitIds count doesn't really matter since we // should always hit this case. - setRemoteTargetHandle(targets, - targets.apps.length > 0 ? targets.apps[0] : null, - /* targetsToExclude = */ null, /* transitionInfo = */ null, - /* splitBounds = */ null, /* taskIndex = */ 0); + mRemoteTargetHandles[0].mTransformParams.setTargetSet(targets); + if (targets.apps.length > 0) { + // Unclear why/when target.apps length == 0, but it sure does happen :( + mRemoteTargetHandles[0].mTaskViewSimulator.setPreview(targets.apps[0], null); + } } else if (!containsSplitTargets) { - resizeRemoteTargetHandles(targets); // Single App + Assistant for (int i = 0; i < mRemoteTargetHandles.length; i++) { - setRemoteTargetHandle(targets, targets.apps[i], /* targetsToExclude = */ null, - /* transitionInfo = */ null, /* splitBounds = */ null, /* taskIndex = */ i); + mRemoteTargetHandles[i].mTransformParams.setTargetSet(targets); + mRemoteTargetHandles[i].mTaskViewSimulator.setPreview(targets.apps[i], null); + } + } else { + // Split apps (+ maybe assistant) + RemoteAnimationTarget topLeftTarget = targets.findTask(mSplitBounds.leftTopTaskId); + RemoteAnimationTarget bottomRightTarget = targets.findTask( + mSplitBounds.rightBottomTaskId); + List<RemoteAnimationTarget> overlayTargets = Arrays.stream(targets.apps).filter( + target -> target.windowConfiguration.getWindowingMode() + != WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW).collect(toList()); + + // remoteTargetHandle[0] denotes topLeft task, so we pass in the bottomRight to exclude, + // vice versa + mRemoteTargetHandles[0].mTransformParams.setTargetSet( + createRemoteAnimationTargetsForTarget(targets, + Collections.singletonList(bottomRightTarget))); + mRemoteTargetHandles[0].mTaskViewSimulator.setPreview(topLeftTarget, mSplitBounds); + + mRemoteTargetHandles[1].mTransformParams.setTargetSet( + createRemoteAnimationTargetsForTarget(targets, + Collections.singletonList(topLeftTarget))); + mRemoteTargetHandles[1].mTaskViewSimulator.setPreview(bottomRightTarget, mSplitBounds); + + // Set the remaining overlay tasks to be their own TaskViewSimulator as fullscreen tasks + if (!overlayTargets.isEmpty()) { + ArrayList<RemoteAnimationTarget> targetsToExclude = new ArrayList<>(); + targetsToExclude.add(topLeftTarget); + targetsToExclude.add(bottomRightTarget); + // Start i at 2 to account for top/left and bottom/right split handles already made + for (int i = 2; i < targets.apps.length; i++) { + if (i >= mRemoteTargetHandles.length) { + Log.e(TAG, String.format("Attempting to animate an untracked target" + + " (%d handles allocated, but %d want to animate)", + mRemoteTargetHandles.length, targets.apps.length)); + break; + } + mRemoteTargetHandles[i].mTransformParams.setTargetSet( + createRemoteAnimationTargetsForTarget(targets, targetsToExclude)); + mRemoteTargetHandles[i].mTaskViewSimulator.setPreview( + overlayTargets.get(i - 2)); + } + } - } else if (mSplitBounds != null) { - setSplitRemoteTargetHandles(targets); } return mRemoteTargetHandles; } - private void setSplitRemoteTargetHandles(RemoteAnimationTargets targets) { - // Split apps (+ maybe assistant) - final List<Integer> leftTopTargetIds = mSplitBounds.leftTopTaskIds; - final List<Integer> rightBottomTargetIds = mSplitBounds.rightBottomTaskIds; - if (leftTopTargetIds.isEmpty() || rightBottomTargetIds.isEmpty()) { - throw new IllegalStateException("The target ids is invalid: mSplitBounds = " - + mSplitBounds); - } - final List<RemoteAnimationTarget> leftTopTargets = - CollectionsKt.mapNotNull(leftTopTargetIds, targets::findTask); - final List<RemoteAnimationTarget> rightBottomTargets = - CollectionsKt.mapNotNull(rightBottomTargetIds, targets::findTask); - - final List<RemoteAnimationTarget> overlayTargets = Arrays.stream(targets.apps).filter( - target -> isOverlayTarget(target, leftTopTargets, - rightBottomTargets)).toList(); - final int handleCount = leftTopTargets.size() + rightBottomTargets.size() - + overlayTargets.size(); - if (handleCount > targets.apps.length) { - throw new IllegalStateException("Attempting to animate app count:" + handleCount - + "but the total app count: " + targets.apps.length); - } - if (handleCount > mRemoteTargetHandles.length) { - throw new IllegalStateException("Attempting to animate app count:" + handleCount - + "but the max handle count: " + mRemoteTargetHandles.length); - } - if (handleCount < mRemoteTargetHandles.length) { - reduceRemoteTargetHandles(handleCount); - } - - int taskIndex = 0; - for (final RemoteAnimationTarget target : leftTopTargets) { - setRemoteTargetHandle(targets, target, rightBottomTargets, /* transitionInfo = */ null, - mSplitBounds, taskIndex++); - } - for (final RemoteAnimationTarget target : rightBottomTargets) { - setRemoteTargetHandle(targets, target, leftTopTargets, /* transitionInfo = */ null, - mSplitBounds, taskIndex++); - } - // Set the remaining overlay tasks to be their own TaskViewSimulator as fullscreen tasks - if (!overlayTargets.isEmpty()) { - List<RemoteAnimationTarget> targetsToExclude = new ArrayList<>(leftTopTargets); - targetsToExclude.addAll(rightBottomTargets); - for (final RemoteAnimationTarget target : overlayTargets) { - setRemoteTargetHandle(targets, target, targetsToExclude, - /* transitionInfo = */ null, /* splitBounds = */ null, taskIndex++); - } - } - } - /** * Similar to {@link #assignTargets(RemoteAnimationTargets)}, except this creates distinct * transform params per app in {@code targets.apps} list. @@ -249,67 +229,28 @@ public class RemoteTargetGluer { RemoteAnimationTarget primaryTaskTarget = targets.apps[i]; List<RemoteAnimationTarget> excludeTargets = Arrays.stream(targets.apps) .filter(target -> target.taskId != primaryTaskTarget.taskId).collect(toList()); - setRemoteTargetHandle(targets, primaryTaskTarget, excludeTargets, transitionInfo, - /* splitBounds = */ null, i); + mRemoteTargetHandles[i].mTransformParams.setTargetSet( + createRemoteAnimationTargetsForTarget(targets, excludeTargets)); + mRemoteTargetHandles[i].mTransformParams.setTransitionInfo(transitionInfo); + mRemoteTargetHandles[i].mTaskViewSimulator.setPreview(primaryTaskTarget, null); } return mRemoteTargetHandles; } - private boolean isOverlayTarget(@NonNull RemoteAnimationTarget target, - @NonNull List<RemoteAnimationTarget> leftTopTargets, - @NonNull List<RemoteAnimationTarget> rightBottomTargets) { - return target.windowConfiguration.getWindowingMode() - != WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW - && !leftTopTargets.contains(target) - && !rightBottomTargets.contains(target); - } - /** * Resize the `mRemoteTargetHandles` array since we assumed initial size, but * `targets.apps` is the ultimate source of truth here */ private void resizeRemoteTargetHandles(RemoteAnimationTargets targets) { - int handleCount = (int) Arrays.stream(targets.apps) + long appCount = Arrays.stream(targets.apps) .filter(app -> app.mode == targets.targetMode) .count(); - Log.d(TAG, "appCount: " + handleCount + " handleLength: " + mRemoteTargetHandles.length); - if (handleCount < mRemoteTargetHandles.length) { - reduceRemoteTargetHandles(handleCount); - } - } - - /** - * Reduces the number of remote target handles to a specified count. - * The caller is responsible for ensuring that the target {@code handleCount} - * is always less than the current number of remote target handles - * ({@link #mRemoteTargetHandles}'s current size). - * - * @param handleCount The desired number of remote target handles after reduction. - * This value should be non-negative and less than the current size of the handle list. - */ - private void reduceRemoteTargetHandles(int handleCount) { - Log.d(TAG, "Reduce handles, count: " + handleCount); - RemoteTargetHandle[] newHandles = new RemoteTargetHandle[(int) handleCount]; - System.arraycopy(mRemoteTargetHandles, 0/*src*/, newHandles, 0/*dst*/, (int) handleCount); - mRemoteTargetHandles = newHandles; - } - - private void setRemoteTargetHandle(@NonNull RemoteAnimationTargets targets, - @Nullable RemoteAnimationTarget target, - @Nullable List<RemoteAnimationTarget> targetsToExclude, - @Nullable TransitionInfo transitionInfo, - @Nullable SplitBounds splitBounds, int taskIndex) { - if (targetsToExclude != null) { - mRemoteTargetHandles[taskIndex].mTransformParams.setTargetSet( - createRemoteAnimationTargetsForTarget(targets, targetsToExclude)); - } else { - mRemoteTargetHandles[taskIndex].mTransformParams.setTargetSet(targets); - } - if (transitionInfo != null) { - mRemoteTargetHandles[taskIndex].mTransformParams.setTransitionInfo(transitionInfo); - } - if (target != null) { - mRemoteTargetHandles[taskIndex].mTaskViewSimulator.setPreview(target, splitBounds); + Log.d(TAG, "appCount: " + appCount + " handleLength: " + mRemoteTargetHandles.length); + if (appCount < mRemoteTargetHandles.length) { + Log.d(TAG, "resizing handles"); + RemoteTargetHandle[] newHandles = new RemoteTargetHandle[(int) appCount]; + System.arraycopy(mRemoteTargetHandles, 0/*src*/, newHandles, 0/*dst*/, (int) appCount); + mRemoteTargetHandles = newHandles; } } @@ -368,7 +309,7 @@ public class RemoteTargetGluer { return mRemoteTargetHandles; } - public SplitBounds getSplitBounds() { + public SplitConfigurationOptions.SplitBounds getSplitBounds() { return mSplitBounds; } diff --git a/quickstep/src/com/android/quickstep/RotationTouchHelper.java b/quickstep/src/com/android/quickstep/RotationTouchHelper.java index 62ad26a1b6..0c3655f4ef 100644 --- a/quickstep/src/com/android/quickstep/RotationTouchHelper.java +++ b/quickstep/src/com/android/quickstep/RotationTouchHelper.java @@ -15,6 +15,7 @@ */ package com.android.quickstep; +import static android.view.Display.DEFAULT_DISPLAY; import static android.view.Surface.ROTATION_0; import static com.android.launcher3.MotionEventsUtils.isTrackpadMultiFingerSwipe; @@ -32,8 +33,9 @@ import android.content.res.Resources; import android.view.MotionEvent; import android.view.OrientationEventListener; -import com.android.app.displaylib.PerDisplayRepository; -import com.android.launcher3.dagger.WindowContext; +import com.android.launcher3.dagger.ApplicationContext; +import com.android.launcher3.dagger.LauncherAppComponent; +import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.testing.shared.TestProtocol; import com.android.launcher3.util.DaggerSingletonObject; import com.android.launcher3.util.DaggerSingletonTracker; @@ -41,17 +43,12 @@ import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.DisplayController.DisplayInfoChangeListener; import com.android.launcher3.util.DisplayController.Info; import com.android.launcher3.util.NavigationMode; -import com.android.quickstep.dagger.QuickstepBaseAppComponent; import com.android.quickstep.util.RecentsOrientedState; import com.android.systemui.shared.Flags; import com.android.systemui.shared.system.QuickStepContract; import com.android.systemui.shared.system.TaskStackChangeListener; import com.android.systemui.shared.system.TaskStackChangeListeners; -import dagger.assisted.Assisted; -import dagger.assisted.AssistedFactory; -import dagger.assisted.AssistedInject; - import java.io.PrintWriter; import javax.inject.Inject; @@ -61,11 +58,11 @@ import app.lawnchair.util.LawnchairUtilsKt; /** * Helper class for transforming touch events */ +@LauncherAppSingleton public class RotationTouchHelper implements DisplayInfoChangeListener { - public static final DaggerSingletonObject<PerDisplayRepository<RotationTouchHelper>> - REPOSITORY_INSTANCE = new DaggerSingletonObject<>( - QuickstepBaseAppComponent::getRotationTouchHelperRepository); + public static final DaggerSingletonObject<RotationTouchHelper> INSTANCE = + new DaggerSingletonObject<>(LauncherAppComponent::getRotationTouchHelper); private final OrientationTouchTransformer mOrientationTouchTransformer; private final DisplayController mDisplayController; @@ -137,29 +134,30 @@ public class RotationTouchHelper implements DisplayInfoChangeListener { */ private boolean mInOverview; private boolean mTaskListFrozen; - private final Context mWindowContext; + private final Context mContext; - @AssistedInject - RotationTouchHelper( - @Assisted Context windowContext, + @Inject + RotationTouchHelper(@ApplicationContext Context context, DisplayController displayController, SystemUiProxy systemUiProxy, DaggerSingletonTracker lifeCycle) { - mWindowContext = windowContext; - mDisplayId = windowContext.getDisplayId(); + mContext = context; mDisplayController = displayController; mSystemUiProxy = systemUiProxy; + // TODO (b/398195845): this needs updating so non-default displays do not rotate with the + // default display. + mDisplayId = DEFAULT_DISPLAY; - Resources resources = mWindowContext.getResources(); + Resources resources = mContext.getResources(); mOrientationTouchTransformer = new OrientationTouchTransformer(resources, mMode, - () -> LawnchairUtilsKt.getWindowCornerRadius(mWindowContext)); + () -> LawnchairUtilsKt.getWindowCornerRadius(mContext)); // Register for navigation mode and rotation changes mDisplayController.addChangeListenerForDisplay(this, mDisplayId); DisplayController.Info info = mDisplayController.getInfoForDisplay(mDisplayId); - onDisplayInfoChanged(mWindowContext, info, CHANGE_ALL); + onDisplayInfoChanged(context, info, CHANGE_ALL); - mOrientationListener = new OrientationEventListener(mWindowContext) { + mOrientationListener = new OrientationEventListener(mContext) { @Override public void onOrientationChanged(int degrees) { int newRotation = RecentsOrientedState.getRotationForUserDegreesRotated(degrees, @@ -267,7 +265,7 @@ public class RotationTouchHelper implements DisplayInfoChangeListener { NavigationMode newMode = info.getNavigationMode(); mOrientationTouchTransformer.setNavigationMode(newMode, mDisplayController.getInfoForDisplay(mDisplayId), - mWindowContext.getResources()); + mContext.getResources()); TaskStackChangeListeners.getInstance() .unregisterTaskStackListener(mFrozenTaskListener); @@ -289,7 +287,7 @@ public class RotationTouchHelper implements DisplayInfoChangeListener { void setGesturalHeight(int newGesturalHeight) { mOrientationTouchTransformer.setGesturalHeight( newGesturalHeight, mDisplayController.getInfoForDisplay(mDisplayId), - mWindowContext.getResources()); + mContext.getResources()); } /** @@ -396,10 +394,4 @@ public class RotationTouchHelper implements DisplayInfoChangeListener { private boolean hasGestures(NavigationMode mode) { return mode.hasGestures || (mode == THREE_BUTTONS && Flags.threeButtonCornerSwipe()); } - - @AssistedFactory - public interface Factory { - /** Creates a new instance of [RotationTouchHelper] for a given [context]. */ - RotationTouchHelper create(@WindowContext Context context); - } } diff --git a/quickstep/src/com/android/quickstep/SwipeUpAnimationLogic.java b/quickstep/src/com/android/quickstep/SwipeUpAnimationLogic.java index 39ba465714..233f0a9e4f 100644 --- a/quickstep/src/com/android/quickstep/SwipeUpAnimationLogic.java +++ b/quickstep/src/com/android/quickstep/SwipeUpAnimationLogic.java @@ -17,6 +17,7 @@ package com.android.quickstep; import static com.android.app.animation.Interpolators.ACCELERATE_1_5; import static com.android.app.animation.Interpolators.LINEAR; +import static com.android.launcher3.Flags.enableAdditionalHomeAnimations; import static com.android.launcher3.PagedView.INVALID_PAGE; import android.animation.Animator; @@ -52,7 +53,6 @@ import com.android.quickstep.util.TransformParams; import com.android.quickstep.util.TransformParams.BuilderProxy; import com.android.quickstep.views.RecentsView; import com.android.quickstep.views.TaskView; -import com.android.wm.shell.shared.GroupedTaskInfo; import java.util.Arrays; import java.util.function.Consumer; @@ -84,22 +84,15 @@ public abstract class SwipeUpAnimationLogic implements protected boolean mIsSwipeForSplit; - public SwipeUpAnimationLogic(Context context, GestureState gestureState, - RotationTouchHelper rotationTouchHelper) { + public SwipeUpAnimationLogic(Context context, GestureState gestureState) { mContext = context; mGestureState = gestureState; updateIsGestureForSplit(TopTaskTracker.INSTANCE.get(context) .getRunningSplitTaskIds().length); - GroupedTaskInfo groupedTaskInfo = null; - if (mGestureState.getRunningTask() != null) { - groupedTaskInfo = - mGestureState.getRunningTask().getPlaceholderGroupedTaskInfo( - /* splitTaskIds = */ null); - } - mTargetGluer = new RemoteTargetGluer(mContext, mGestureState.getContainerInterface(), - groupedTaskInfo); + mTargetGluer = new RemoteTargetGluer(mContext, mGestureState.getContainerInterface()); mRemoteTargetHandles = mTargetGluer.getRemoteTargetHandles(); + RotationTouchHelper rotationTouchHelper = RotationTouchHelper.INSTANCE.get(context); runActionOnRemoteHandles(remoteTargetHandle -> remoteTargetHandle.getTaskViewSimulator().getOrientationState().update( rotationTouchHelper.getCurrentActiveRotation(), @@ -113,14 +106,13 @@ public abstract class SwipeUpAnimationLogic implements .getSwipeUpDestinationAndLength(dp, mContext, TEMP_RECT, mRemoteTargetHandles[0].getTaskViewSimulator().getOrientationState() .getOrientationHandler()); - mDragLengthFactor = (float) dp.getDeviceProperties().getHeightPx() / mTransitionDragLength; + mDragLengthFactor = (float) dp.heightPx / mTransitionDragLength; for (RemoteTargetHandle remoteHandle : mRemoteTargetHandles) { PendingAnimation pendingAnimation = new PendingAnimation(mTransitionDragLength * 2); TaskViewSimulator taskViewSimulator = remoteHandle.getTaskViewSimulator(); taskViewSimulator.setDp(dp); - taskViewSimulator.addAppToCarouselAnim(pendingAnimation, LINEAR, - mGestureState.isHandlingAtomicEvent()); + taskViewSimulator.addAppToCarouselAnim(pendingAnimation, LINEAR); AnimatorPlaybackController playbackController = pendingAnimation.createPlaybackController(); @@ -186,14 +178,10 @@ public abstract class SwipeUpAnimationLogic implements PagedOrientationHandler orientationHandler = getOrientationHandler(); DeviceProfile dp = mDp; final int halfIconSize = dp.iconSizePx / 2; - float primaryDimension = orientationHandler.getPrimaryValue( - dp.getDeviceProperties().getAvailableWidthPx(), - dp.getDeviceProperties().getAvailableHeightPx() - ); - float secondaryDimension = orientationHandler.getSecondaryValue( - dp.getDeviceProperties().getAvailableWidthPx(), - dp.getDeviceProperties().getAvailableHeightPx() - ); + float primaryDimension = orientationHandler + .getPrimaryValue(dp.availableWidthPx, dp.availableHeightPx); + float secondaryDimension = orientationHandler + .getSecondaryValue(dp.availableWidthPx, dp.availableHeightPx); final float targetX = primaryDimension / 2f; final float targetY = secondaryDimension - dp.hotseatBarSizePx; // Fallback to animate to center of screen. @@ -264,7 +252,7 @@ public abstract class SwipeUpAnimationLogic implements } public boolean isPortrait() { - return !mDp.getDeviceProperties().isLandscape() && !mDp.isSeascape(); + return !mDp.isLandscape && !mDp.isSeascape(); } } @@ -454,7 +442,7 @@ public abstract class SwipeUpAnimationLogic implements // to end up offscreen. mRunningTaskViewScrollOffset = factory.isRtl() ? (Math.min(0, -invariantStartRect.right)) - : (Math.max(0, mDp.getDeviceProperties().getWidthPx() - invariantStartRect.left)); + : (Math.max(0, mDp.widthPx - invariantStartRect.left)); } @Override @@ -463,7 +451,7 @@ public abstract class SwipeUpAnimationLogic implements float alpha = mAnimationFactory.getWindowAlpha(progress); mHomeAnim.setPlayFraction(progress); - if (mTargetTaskView == null) { + if (!enableAdditionalHomeAnimations() || mTargetTaskView == null) { mHomeToWindowPositionMap.mapRect(mWindowCurrentRect, currentRect); mMatrix.setRectToRect(mCropRectF, mWindowCurrentRect, ScaleToFit.FILL); mLocalTransformParams @@ -483,9 +471,10 @@ public abstract class SwipeUpAnimationLogic implements currentRect, progress, mMatrix.mapRadius(cornerRadius), - mTargetTaskView == null ? 0 : (int) (alpha * 255)); + !enableAdditionalHomeAnimations() || mTargetTaskView == null + ? 0 : (int) (alpha * 255)); - if (mTargetTaskView == null) { + if (!enableAdditionalHomeAnimations() || mTargetTaskView == null) { return; } if (mAnimationFactory.isAnimatingIntoIcon() && mAnimationFactory.isAnimationReady()) { @@ -545,7 +534,7 @@ public abstract class SwipeUpAnimationLogic implements public void onAnimationStart(Animator animation) { setUp(); mHomeAnim.dispatchOnStart(); - if (mTargetTaskView == null) { + if (!enableAdditionalHomeAnimations() || mTargetTaskView == null) { return; } Rect thumbnailBounds = new Rect(); @@ -560,7 +549,7 @@ public abstract class SwipeUpAnimationLogic implements } private void setUp() { - if (mTargetTaskView == null) { + if (!enableAdditionalHomeAnimations() || mTargetTaskView == null) { return; } RecentsView recentsView = mTargetTaskView.getRecentsView(); @@ -581,7 +570,7 @@ public abstract class SwipeUpAnimationLogic implements } private void cleanUp() { - if (mTargetTaskView == null) { + if (!enableAdditionalHomeAnimations() || mTargetTaskView == null) { return; } RecentsView recentsView = mTargetTaskView.getRecentsView(); diff --git a/quickstep/src/com/android/quickstep/SystemDecorationChangeObserver.kt b/quickstep/src/com/android/quickstep/SystemDecorationChangeObserver.kt index d93f5f5e5d..45594786aa 100644 --- a/quickstep/src/com/android/quickstep/SystemDecorationChangeObserver.kt +++ b/quickstep/src/com/android/quickstep/SystemDecorationChangeObserver.kt @@ -18,7 +18,6 @@ package com.android.quickstep import android.content.Context import android.util.Log -import com.android.app.displaylib.DisplayDecorationListener import com.android.launcher3.dagger.ApplicationContext import com.android.launcher3.dagger.LauncherAppSingleton import com.android.launcher3.util.DaggerSingletonObject @@ -39,6 +38,14 @@ class SystemDecorationChangeObserver @Inject constructor(@ApplicationContext con ) } + interface DisplayDecorationListener { + fun onDisplayAddSystemDecorations(displayId: Int) + + fun onDisplayRemoved(displayId: Int) + + fun onDisplayRemoveSystemDecorations(displayId: Int) + } + fun notifyAddSystemDecorations(displayId: Int) { if (DEBUG) Log.d(TAG, "SystemDecorationAdded: $displayId") for (listener in mDisplayDecorationListeners) { diff --git a/quickstep/src/com/android/quickstep/SystemUiProxy.kt b/quickstep/src/com/android/quickstep/SystemUiProxy.kt index 6d8c50389e..1598cd4d7c 100644 --- a/quickstep/src/com/android/quickstep/SystemUiProxy.kt +++ b/quickstep/src/com/android/quickstep/SystemUiProxy.kt @@ -18,7 +18,6 @@ package com.android.quickstep import android.app.ActivityManager import android.app.ActivityManager.RunningTaskInfo import android.app.ActivityOptions -import android.app.ActivityTaskManager.INVALID_TASK_ID import android.app.PendingIntent import android.content.ComponentName import android.content.Context @@ -31,9 +30,6 @@ import android.os.Handler import android.os.IBinder import android.os.Message import android.os.RemoteException -import android.os.Trace -import android.os.Trace.traceBegin -import android.os.Trace.traceEnd import android.os.UserHandle import android.util.Log import android.view.IRemoteAnimationRunner @@ -48,7 +44,6 @@ import android.window.RemoteTransition import android.window.TaskSnapshot import android.window.TransitionFilter import android.window.TransitionInfo -import android.window.WindowContainerTransaction import androidx.annotation.MainThread import androidx.annotation.VisibleForTesting import androidx.annotation.WorkerThread @@ -148,10 +143,6 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: private var desktopTaskListener: IDesktopTaskListener? = null private val remoteTransitions = LinkedHashMap<RemoteTransition, TransitionFilter>() - // Save bubble bar state in case service is not bound yet when it is updated. SysUI relies on - // this to suppress the floating bubbles UI. - private var hasBubbleBar = false - private val stateChangeCallbacks: MutableList<Runnable> = ArrayList() private var originalTransactionToken: IBinder? = null @@ -176,11 +167,11 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: @SystemUiStateFlags var lastSystemUiStateFlags: Long = 0 /** - * This returns a pending intent that is used to start recents via Shell (which is a different - * process). It is bare-bones, so it's expected that the component and options will be provided - * via fill-in intent. + * This is a singleton pending intent that is used to start recents via Shell (which is a + * different process). It is bare-bones, so it's expected that the component and options will be + * provided via fill-in intent. */ - private fun getRecentsPendingIntent(displayId: Int) = + private val recentsPendingIntent by lazy { PendingIntent.getActivity( context, 0, @@ -192,9 +183,9 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: .setPendingIntentCreatorBackgroundActivityStartMode( ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED ) - .setLaunchDisplayId(displayId) .toBundle(), ) + } val unfoldTransitionProvider: ProxyUnfoldTransitionProvider? = if ((Flags.enableUnfoldStateAnimation() && ResourceUnfoldTransitionConfig().isEnabled)) @@ -273,7 +264,6 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: this.unfoldAnimation = if (Flags.enableUnfoldStateAnimation()) null else unfoldAnimation this.dragAndDrop = dragAndDrop linkToDeath() - setHasBubbleBar(hasBubbleBar) // re-attach the listeners once missing due to setProxy has not been initialized yet. setPipAnimationListener(pipAnimationListener) setBubblesListener(bubblesListener) @@ -427,14 +417,6 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: //systemUiProxy?.notifyTaskbarAutohideSuspend(suspend) } - fun notifyRecentsButtonPositionChanged(bounds: Rect) { - executeWithErrorLog({ - "Failed call notifyRecentsButtonPositionChanged with arg: $bounds" - }) { - systemUiProxy?.notifyRecentsButtonPositionChanged(bounds) - } - } - fun takeScreenshot(request: ScreenshotRequest) = executeWithErrorLog({ "Failed call takeScreenshot" }) { // LC-Ignored @@ -582,14 +564,6 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: // // Bubbles // - /** Tells SysUI whether bubble bar is used or not. */ - fun setHasBubbleBar(hasBubbleBar: Boolean) { - executeWithErrorLog({ "Failed call setHasBubbleBar" }) { - bubbles?.setHasBubbleBar(hasBubbleBar) - } - this.hasBubbleBar = hasBubbleBar - } - /** Sets the listener to be notified of bubble state changes. */ fun setBubblesListener(listener: IBubblesListener?) { executeWithErrorLog({ "Failed call registerBubblesListener" }) { @@ -605,13 +579,10 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: * Tells SysUI to show the bubble with the provided key. * * @param key the key of the bubble to show. - * @param bubbleBarTopToScreenBottom distance between the top coordinate of bubble bar and the - * bottom of the screen + * @param top top coordinate of bubble bar on screen */ - fun showBubble(key: String?, bubbleBarTopToScreenBottom: Int) = - executeWithErrorLog({ "Failed call showBubble" }) { - bubbles?.showBubble(key, bubbleBarTopToScreenBottom) - } + fun showBubble(key: String?, top: Int) = + executeWithErrorLog({ "Failed call showBubble" }) { bubbles?.showBubble(key, top) } /** Tells SysUI to remove all bubbles. */ fun removeAllBubbles() = @@ -637,12 +608,11 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: * expanded. * * @param location location of the bubble bar - * @param bubbleBarTopToScreenBottom distance between the new top coordinate for bubble bar and - * the bottom of the screen + * @param top new top coordinate for bubble bar on screen */ - fun stopBubbleDrag(location: BubbleBarLocation?, bubbleBarTopToScreenBottom: Int) = + fun stopBubbleDrag(location: BubbleBarLocation?, top: Int) = executeWithErrorLog({ "Failed call stopBubbleDrag" }) { - bubbles?.stopBubbleDrag(location, bubbleBarTopToScreenBottom) + bubbles?.stopBubbleDrag(location, top) } /** @@ -678,12 +648,13 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: } /** - * Tells SysUI the distance between the top coordinate of the bubble bar and the bottom of the - * screen + * Tells SysUI the top coordinate of bubble bar on screen + * + * @param topOnScreen top coordinate for bubble bar on screen */ - fun updateBubbleBarTopToScreenBottom(bubbleBarTopToScreenBottom: Int) = - executeWithErrorLog({ "Failed call updateBubbleBarTopToScreenBottom" }) { - bubbles?.updateBubbleBarTopToScreenBottom(bubbleBarTopToScreenBottom) + fun updateBubbleBarTopOnScreen(topOnScreen: Int) = + executeWithErrorLog({ "Failed call updateBubbleBarTopOnScreen" }) { + bubbles?.updateBubbleBarTopOnScreen(topOnScreen) } /** @@ -718,9 +689,16 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: fun showExpandedView() = executeWithErrorLog({ "Failed call showExpandedView" }) { bubbles?.showExpandedView() } + /** Tells SysUI to show the bubble drop target. */ + @JvmOverloads + fun showBubbleDropTarget(show: Boolean, bubbleBarLocation: BubbleBarLocation? = null) = + executeWithErrorLog({ "Failed call showDropTarget" }) { + bubbles?.showDropTarget(show, bubbleBarLocation) + } + /** Tells SysUI to move the dragged bubble to full screen. */ fun moveDraggedBubbleToFullscreen(key: String, dropLocation: Point) { - executeWithErrorLog({ "Failed to call moveDraggedBubbleToFullscreen" }) { + executeWithErrorLog({ "Failed to call moveDraggedBubbleToFullscreen"}) { bubbles?.moveDraggedBubbleToFullscreen(key, dropLocation) } } @@ -1080,7 +1058,6 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: throw GetRecentTasksException("null mRecentTasks") } try { - traceBegin(Trace.TRACE_TAG_APP, "getRecentTasks") val rawTasks = recentTasks?.getRecentTasks( numTasks, @@ -1091,8 +1068,6 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: } catch (e: RemoteException) { Log.e(TAG, "Failed call getRecentTasks", e) throw GetRecentTasksException("Failed call getRecentTasks", e) - } finally { - traceEnd(Trace.TRACE_TAG_APP) } } @@ -1134,18 +1109,11 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: /** * Calls shell to activate the desk whose ID is `deskId` on whatever display it exists on. This - * will show all tasks on this desk and bring [taskIdToReorderToFront] to the front if it's - * provided and already on the given desk. If the provided [taskIdToReorderToFront]'s value is - * null, do not change the windows' activation on the desk. + * will bring all tasks on this desk to the front. */ - @JvmOverloads - fun activateDesk( - deskId: Int, - transition: RemoteTransition?, - taskIdToReorderToFront: Int? = null, - ) = + fun activateDesk(deskId: Int, transition: RemoteTransition?) = executeWithErrorLog({ "Failed call activateDesk" }) { - desktopMode?.activateDesk(deskId, transition, taskIdToReorderToFront ?: INVALID_TASK_ID) + desktopMode?.activateDesk(deskId, transition) } /** Calls shell to remove the desk whose ID is `deskId`. */ @@ -1156,23 +1124,10 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: fun removeAllDesks() = executeWithErrorLog({ "Failed call removeAllDesks" }) { desktopMode?.removeAllDesks() } - /** - * Call shell to show all apps active on the desktop and bring [taskIdToReorderToFront] to front - * if it's valid on the default desk on the given display. If the provided - * [taskIdToReorderToFront]'s value is null, do not change the windows' activation on the desk. - */ - @JvmOverloads - fun showDesktopApps( - displayId: Int, - transition: RemoteTransition? = null, - taskIdToReorderToFront: Int? = null, - ) = + /** Call shell to show all apps active on the desktop */ + fun showDesktopApps(displayId: Int, transition: RemoteTransition?) = executeWithErrorLog({ "Failed call showDesktopApps" }) { - desktopMode?.showDesktopApps( - displayId, - transition, - taskIdToReorderToFront ?: INVALID_TASK_ID, - ) + desktopMode?.showDesktopApps(displayId, transition) } /** If task with the given id is on the desktop, bring it to front */ @@ -1185,17 +1140,6 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: desktopMode?.showDesktopApp(taskId, transition, toFrontReason) } - /** Call shell to move to an existing fullscreen task (given by [taskId]) from desktop. */ - @JvmOverloads - fun moveToFullscreen( - taskId: Int, - desktopModeTransitionSource: DesktopModeTransitionSource, - remoteTransition: RemoteTransition? = null, - ) = - executeWithErrorLog({ "Failed call moveToFullscreen" }) { - desktopMode?.moveToFullscreen(taskId, desktopModeTransitionSource, remoteTransition) - } - /** Set a listener on shell to get updates about desktop task state */ fun setDesktopTaskListener(listener: IDesktopTaskListener?) { desktopTaskListener = listener @@ -1262,19 +1206,16 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: options: ActivityOptions, listener: RecentsAnimationListener, useSyntheticRecentsTransition: Boolean, - wct: WindowContainerTransaction? = null, - displayId: Int, ): Boolean { executeWithErrorLog({ "Error starting recents via shell" }) { recentTasks?.startRecentsTransition( - getRecentsPendingIntent(displayId), + recentsPendingIntent, intent, options.toBundle().apply { if (useSyntheticRecentsTransition) { putBoolean("is_synthetic_recents_transition", true) } }, - wct, context.iApplicationThread, RecentsAnimationListenerStub(listener), ) @@ -1313,9 +1254,8 @@ class SystemUiProxy @Inject constructor(@ApplicationContext private val context: transitionInfo, ) - override fun onAnimationCanceled(taskIds: IntArray?, taskSnapshots: Array<TaskSnapshot?>?) { + override fun onAnimationCanceled(taskIds: IntArray?, taskSnapshots: Array<TaskSnapshot>?) = listener.onAnimationCanceled(wrap(taskIds, taskSnapshots)) - } override fun onTasksAppeared( apps: Array<RemoteAnimationTarget>?, diff --git a/quickstep/src/com/android/quickstep/TaskAnimationManager.java b/quickstep/src/com/android/quickstep/TaskAnimationManager.java index 93c06cf60a..e552cd978b 100644 --- a/quickstep/src/com/android/quickstep/TaskAnimationManager.java +++ b/quickstep/src/com/android/quickstep/TaskAnimationManager.java @@ -16,8 +16,8 @@ package com.android.quickstep; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; -import static android.view.Display.DEFAULT_DISPLAY; +import static com.android.launcher3.Flags.enableHandleDelayedGestureCallbacks; import static com.android.launcher3.Flags.enableScalingRevealHomeAnimation; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.NavigationMode.NO_BUTTON; @@ -35,23 +35,19 @@ import android.content.Intent; import android.os.SystemProperties; import android.util.Log; import android.view.RemoteAnimationTarget; -import android.window.DesktopExperienceFlags; import android.window.TransitionInfo; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.UiThread; -import androidx.annotation.VisibleForTesting; -import com.android.app.displaylib.PerDisplayRepository; import com.android.internal.util.ArrayUtils; import com.android.launcher3.Utilities; import com.android.launcher3.config.FeatureFlags; -import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.taskbar.TaskbarUIController; -import com.android.launcher3.util.DaggerSingletonObject; import com.android.launcher3.util.DisplayController; -import com.android.quickstep.dagger.QuickstepBaseAppComponent; +import com.android.quickstep.fallback.window.RecentsDisplayModel; +import com.android.quickstep.fallback.window.RecentsWindowFlags; import com.android.quickstep.fallback.window.RecentsWindowManager; import com.android.quickstep.util.ActiveGestureProtoLogProxy; import com.android.quickstep.util.SystemUiFlagUtils; @@ -61,20 +57,11 @@ import com.android.systemui.shared.system.QuickStepContract; import com.android.systemui.shared.system.TaskStackChangeListener; import com.android.systemui.shared.system.TaskStackChangeListeners; -import dagger.assisted.Assisted; -import dagger.assisted.AssistedFactory; -import dagger.assisted.AssistedInject; - import java.io.PrintWriter; import java.util.HashMap; import java.util.Locale; public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAnimationListener { - - private static final String TAG = "TaskAnimationManager"; - - @VisibleForTesting - public static final long RECENTS_ANIMATION_START_TIMEOUT_MS = 5000L; public static final boolean SHELL_TRANSITIONS_ROTATION = SystemProperties.getBoolean("persist.wm.debug.shell_transit_rotate", false); private final Context mCtx; @@ -82,6 +69,7 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn private RecentsAnimationCallbacks mCallbacks; private RecentsAnimationTargets mTargets; private TransitionInfo mTransitionInfo; + private RecentsAnimationDeviceState mDeviceState; // Temporary until we can hook into gesture state events private GestureState mLastGestureState; @@ -92,12 +80,6 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn private boolean mShouldIgnoreMotionEvents = false; private final int mDisplayId; - private boolean mLauncherDestroyCallbackSet = false; - - public static final DaggerSingletonObject<PerDisplayRepository<TaskAnimationManager>> - REPOSITORY_INSTANCE = new DaggerSingletonObject<>( - QuickstepBaseAppComponent::getTaskAnimationManagerRepository); - private final TaskStackChangeListener mLiveTileRestartListener = new TaskStackChangeListener() { @Override public void onActivityRestartAttempt(ActivityManager.RunningTaskInfo task, @@ -121,11 +103,10 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn } }; - @AssistedInject - public TaskAnimationManager( - @ApplicationContext Context ctx, - @Assisted int displayId) { + public TaskAnimationManager(Context ctx, RecentsAnimationDeviceState deviceState, + int displayId) { mCtx = ctx; + mDeviceState = deviceState; mDisplayId = displayId; } @@ -160,7 +141,7 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn if (FeatureFlags.IS_STUDIO_BUILD) { throw new IllegalArgumentException(msg); } else { - Log.e(TAG, msg, new Exception()); + Log.e("TaskAnimationManager", msg, new Exception()); } } // Notify if recents animation is still running @@ -169,7 +150,7 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn if (FeatureFlags.IS_STUDIO_BUILD) { throw new IllegalArgumentException(msg); } else { - Log.e(TAG, msg, new Exception()); + Log.e("TaskAnimationManager", msg, new Exception()); } } // But force-finish it anyways @@ -185,28 +166,16 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn final BaseContainerInterface containerInterface = gestureState.getContainerInterface(); mLastGestureState = gestureState; - RecentsAnimationCallbacks newCallbacks = new RecentsAnimationCallbacks( - containerInterface.getCreatedContainer()); + RecentsAnimationCallbacks newCallbacks = new RecentsAnimationCallbacks(getSystemUiProxy()); mCallbacks = newCallbacks; - mLauncherDestroyCallbackSet = false; - final Runnable recentsAnimationStartTimeoutCallback = () -> { - if (!mRecentsAnimationStartPending) return; - mRecentsAnimationStartPending = false; - Log.wtf(TAG, "Recents animation start has been pending for over " - + RECENTS_ANIMATION_START_TIMEOUT_MS + "ms"); - ActiveGestureProtoLogProxy.logRecentsAnimationStartTimedOut(); - cleanUpRecentsAnimation(newCallbacks); - }; mCallbacks.addListener(new RecentsAnimationCallbacks.RecentsAnimationListener() { @Override public void onRecentsAnimationStart(RecentsAnimationController controller, RecentsAnimationTargets targets, @Nullable TransitionInfo transitionInfo) { - if (mRecentsAnimationStartPending) { + if (enableHandleDelayedGestureCallbacks() && mRecentsAnimationStartPending) { ActiveGestureProtoLogProxy.logStartRecentsAnimationCallback( "onRecentsAnimationStart"); mRecentsAnimationStartPending = false; - MAIN_EXECUTOR.getHandler().removeCallbacks( - recentsAnimationStartTimeoutCallback); } if (mCallbacks == null) { // It's possible for the recents animation to have finished and be cleaned up @@ -248,24 +217,20 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn @Override public void onRecentsAnimationCanceled(HashMap<Integer, ThumbnailData> thumbnailDatas) { - if (mRecentsAnimationStartPending) { + if (enableHandleDelayedGestureCallbacks() && mRecentsAnimationStartPending) { ActiveGestureProtoLogProxy.logStartRecentsAnimationCallback( "onRecentsAnimationCanceled"); mRecentsAnimationStartPending = false; - MAIN_EXECUTOR.getHandler().removeCallbacks( - recentsAnimationStartTimeoutCallback); } cleanUpRecentsAnimation(newCallbacks); } @Override public void onRecentsAnimationFinished(RecentsAnimationController controller) { - if (mRecentsAnimationStartPending) { + if (enableHandleDelayedGestureCallbacks() && mRecentsAnimationStartPending) { ActiveGestureProtoLogProxy.logStartRecentsAnimationCallback( "onRecentsAnimationFinished"); mRecentsAnimationStartPending = false; - MAIN_EXECUTOR.getHandler().removeCallbacks( - recentsAnimationStartTimeoutCallback); } cleanUpRecentsAnimation(newCallbacks); } @@ -340,7 +305,6 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS); options.setTransientLaunch(); options.setSourceInfo(ActivityOptions.SourceInfo.TYPE_RECENTS_ANIMATION, eventTime); - options.setLaunchDisplayId(mDisplayId); // Notify taskbar that we should skip reacting to launcher visibility change to // avoid a jumping taskbar. @@ -363,47 +327,26 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn }); } - if (containerInterface.getCreatedContainer() - instanceof RecentsWindowManager recentsWindowManager) { + if(containerInterface.getCreatedContainer() instanceof RecentsWindowManager + && RecentsWindowFlags.Companion.getEnableOverviewInWindow()) { mRecentsAnimationStartPending = getSystemUiProxy().startRecentsActivity(intent, options, - mCallbacks, gestureState.useSyntheticRecentsTransition(), null, mDisplayId); - recentsWindowManager.startRecentsWindow(mCallbacks); + mCallbacks, gestureState.useSyntheticRecentsTransition()); + RecentsDisplayModel.getINSTANCE().get(mCtx) + .getRecentsWindowManager(gestureState.getDisplayId()) + .startRecentsWindow(mCallbacks); } else { mRecentsAnimationStartPending = getSystemUiProxy().startRecentsActivity(intent, - options, mCallbacks, false /* useSyntheticRecentsTransition */, null, - mDisplayId); + options, mCallbacks, false /* useSyntheticRecentsTransition */); } - if (mRecentsAnimationStartPending) { - MAIN_EXECUTOR.getHandler().postDelayed( - recentsAnimationStartTimeoutCallback, RECENTS_ANIMATION_START_TIMEOUT_MS); + + if (enableHandleDelayedGestureCallbacks()) { + ActiveGestureProtoLogProxy.logSettingRecentsAnimationStartPending( + mRecentsAnimationStartPending); } - ActiveGestureProtoLogProxy.logSettingRecentsAnimationStartPending( - mRecentsAnimationStartPending); gestureState.setState(STATE_RECENTS_ANIMATION_INITIALIZED); return mCallbacks; } - /** - * Executes the provided {@code homeAction} lambda if this TaskAnimationManager is associated - * with the default display. This prevents navigating to a home activity that is pinned to a - * different display. - * - * @param homeAction The lambda to execute for the standard home action on the default display. - */ - public void maybeStartHomeAction(Runnable homeAction) { - if (!DesktopExperienceFlags.ENABLE_REJECT_HOME_TRANSITION.isTrue()) { - homeAction.run(); - return; - } - - if (mDisplayId == DEFAULT_DISPLAY) { - homeAction.run(); - } else { - // TODO: b/378443899 - Implement the reject home transition. - // For now, simply suppress the transition. - } - } - /** * Continues the existing running recents animation for a new gesture. */ @@ -536,11 +479,7 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn if (mCallbacks == null) { return; } - if (mLauncherDestroyCallbackSet) { - return; - } ActiveGestureProtoLogProxy.logQueuingForceFinishRecentsAnimation(); - mLauncherDestroyCallbackSet = true; mCallbacks.addListener(new RecentsAnimationCallbacks.RecentsAnimationListener() { @Override public void onRecentsAnimationStart( @@ -552,7 +491,6 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn /* forceFinish= */ true, /* forceFinishCb= */ null, controller); - mLauncherDestroyCallbackSet = false; } }); } @@ -584,7 +522,6 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn mController = null; mCallbacks = null; - mLauncherDestroyCallbackSet = false; mTargets = null; mTransitionInfo = null; mLastGestureState = null; @@ -600,8 +537,10 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn pw.println(prefix + "TaskAnimationManager:"); pw.println(prefix + "\tmDisplayId=" + mDisplayId); - pw.println(prefix + "\tmRecentsAnimationStartPending=" + mRecentsAnimationStartPending); - pw.println(prefix + "\tmShouldIgnoreUpcomingGestures=" + mShouldIgnoreMotionEvents); + if (enableHandleDelayedGestureCallbacks()) { + pw.println(prefix + "\tmRecentsAnimationStartPending=" + mRecentsAnimationStartPending); + pw.println(prefix + "\tmShouldIgnoreUpcomingGestures=" + mShouldIgnoreMotionEvents); + } if (mController != null) { mController.dump(prefix + '\t', pw); } @@ -615,11 +554,4 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn mLastGestureState.dump(prefix + '\t', pw); } } - - @AssistedFactory - public interface Factory { - /** Creates a new instance of [TaskAnimationManager] for a given [displayId]. */ - TaskAnimationManager create(int displayId); - } - } diff --git a/quickstep/src/com/android/quickstep/TaskIconCache.kt b/quickstep/src/com/android/quickstep/TaskIconCache.kt index a03100e467..f0b9b7be5c 100644 --- a/quickstep/src/com/android/quickstep/TaskIconCache.kt +++ b/quickstep/src/com/android/quickstep/TaskIconCache.kt @@ -24,6 +24,7 @@ import android.graphics.drawable.Drawable import android.os.UserHandle import android.util.SparseArray import androidx.annotation.WorkerThread +import com.android.launcher3.Flags.enableOverviewIconMenu import com.android.launcher3.Flags.enableRefactorTaskThumbnail import com.android.launcher3.R import com.android.launcher3.Utilities @@ -37,11 +38,7 @@ import com.android.launcher3.util.DisplayController import com.android.launcher3.util.DisplayController.DisplayInfoChangeListener import com.android.launcher3.util.Executors import com.android.launcher3.util.FlagOp -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu import com.android.launcher3.util.Preconditions -import com.android.launcher3.util.coroutines.DispatcherProvider -import com.android.quickstep.recents.di.RecentsDependencies -import com.android.quickstep.recents.di.inject import com.android.quickstep.task.thumbnail.data.TaskIconDataSource import com.android.quickstep.util.IconLabelUtil.getBadgedContentDescription import com.android.quickstep.util.TaskKeyLruCache @@ -50,7 +47,6 @@ import com.android.systemui.shared.recents.model.Task import com.android.systemui.shared.recents.model.Task.TaskKey import com.android.systemui.shared.system.PackageManagerWrapper import java.util.concurrent.Executor -import kotlinx.coroutines.withContext /** Manages the caching of task icons and related data. */ class TaskIconCache( @@ -74,7 +70,6 @@ class TaskIconCache( else _iconFactory ?: createIconFactory().also { _iconFactory = it } var taskVisualsChangeListener: TaskVisualsChangeListener? = null - val dispatcherProvider: DispatcherProvider by RecentsDependencies.inject() init { // TODO (b/397205964): this will need to be updated when we support caches for different @@ -90,25 +85,18 @@ class TaskIconCache( // TODO(b/387496731): Add ensureActive() calls if they show performance benefit override suspend fun getIcon(task: Task): TaskCacheEntry { - task.icon?.let { icon -> + task.icon?.let { // Nothing to load, the icon is already loaded - return TaskCacheEntry(icon, task.titleDescription ?: "", task.title ?: "") + return TaskCacheEntry(it, task.titleDescription ?: "", task.title) } - // Return from cache if present - iconCache.getAndInvalidateIfModified(task.key)?.let { - return it - } + val entry = getCacheEntry(task) + task.icon = entry.icon + task.titleDescription = entry.contentDescription + task.title = entry.title - return withContext(dispatcherProvider.ioBackground) { - val entry = getCacheEntry(task) - task.icon = entry.icon - task.titleDescription = entry.contentDescription - task.title = entry.title - - dispatchIconUpdate(task.key.id) - return@withContext entry - } + dispatchIconUpdate(task.key.id) + return entry } /** @@ -125,14 +113,6 @@ class TaskIconCache( callback.onTaskIconReceived(it, task.titleDescription ?: "", task.title ?: "") return null } - iconCache.getAndInvalidateIfModified(task.key)?.let { - task.icon = it.icon - task.titleDescription = it.contentDescription - task.title = it.title - - callback.onTaskIconReceived(it.icon, it.contentDescription, it.title) - return null - } val request = CancellableTask( { getCacheEntry(task) }, @@ -181,6 +161,10 @@ class TaskIconCache( @WorkerThread private fun getCacheEntry(task: Task): TaskCacheEntry { + iconCache.getAndInvalidateIfModified(task.key)?.let { + return it + } + val desc = task.taskDescription val key = task.key var activityInfo: ActivityInfo? = null diff --git a/quickstep/src/com/android/quickstep/TaskOverlayFactory.java b/quickstep/src/com/android/quickstep/TaskOverlayFactory.java index c5191d72c9..5bf4451fad 100644 --- a/quickstep/src/com/android/quickstep/TaskOverlayFactory.java +++ b/quickstep/src/com/android/quickstep/TaskOverlayFactory.java @@ -19,7 +19,6 @@ package com.android.quickstep; import static com.android.launcher3.Flags.enableRefactorTaskThumbnail; import static com.android.quickstep.views.OverviewActionsView.DISABLED_NO_THUMBNAIL; import static com.android.quickstep.views.OverviewActionsView.DISABLED_ROTATED; -import static com.android.quickstep.views.RecentsViewContainer.containerFromContext; import android.annotation.SuppressLint; import android.content.Context; @@ -35,6 +34,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.RequiresApi; +import com.android.launcher3.BaseActivity; import com.android.launcher3.R; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; @@ -65,7 +65,8 @@ public class TaskOverlayFactory implements ResourceBasedOverride { public static List<SystemShortcut> getEnabledShortcuts(TaskView taskView, TaskContainer taskContainer) { final ArrayList<SystemShortcut> shortcuts = new ArrayList<>(); - final RecentsViewContainer container = containerFromContext(taskView.getContext()); + final RecentsViewContainer container = + RecentsViewContainer.containerFromContext(taskView.getContext()); for (TaskShortcutFactory menuOption : MENU_OPTIONS) { if (taskView instanceof GroupedTaskView && !menuOption.showForGroupedTask()) { continue; @@ -122,7 +123,7 @@ public class TaskOverlayFactory implements ResourceBasedOverride { TaskShortcutFactory.SAVE_APP_PAIR, TaskShortcutFactory.SCREENSHOT, TaskShortcutFactory.MODAL, - TaskShortcutFactory.REMOVE_TASK, + TaskShortcutFactory.CLOSE, }; /** @@ -183,16 +184,12 @@ public class TaskOverlayFactory implements ResourceBasedOverride { protected T getActionsView() { if (mActionsView == null) { - mActionsView = (T) containerFromContext( + mActionsView = (T) RecentsViewContainer.containerFromContext( mTaskContainer.getTaskView().getContext()).getActionsView(); } return mActionsView; } - public TaskContainer getTaskContainer() { - return mTaskContainer; - } - public TaskView getTaskView() { return mTaskContainer.getTaskView(); } @@ -263,7 +260,6 @@ public class TaskOverlayFactory implements ResourceBasedOverride { * Called when the overlay is no longer used. */ public void reset() { - setThumbnailState(null); } /** @@ -272,11 +268,6 @@ public class TaskOverlayFactory implements ResourceBasedOverride { public void resetModalVisuals() { } - /** - * Called when Recents wants to reset the share UI in Overview. - */ - public void resetShareUI() {} - /** * Gets the modal state system shortcut. */ @@ -352,9 +343,9 @@ public class TaskOverlayFactory implements ResourceBasedOverride { RectF boundsInBitmapSpace = new RectF(); boundsToBitmapSpace.mapRect(boundsInBitmapSpace, viewRect); - RecentsViewContainer container = containerFromContext( + RecentsViewContainer container = RecentsViewContainer.containerFromContext( getTaskView().getContext()); - int bottomInset = container.getDeviceProfile().getDeviceProperties().isTablet() + int bottomInset = container.getDeviceProfile().isTablet ? Math.round(bitmapRect.bottom - boundsInBitmapSpace.bottom) : 0; return Insets.of(0, 0, 0, bottomInset); } @@ -373,7 +364,7 @@ public class TaskOverlayFactory implements ResourceBasedOverride { : mTaskContainer.getTaskView().getContext().getString( R.string.blocked_by_policy); - Snackbar.show(containerFromContext( + Snackbar.show(BaseActivity.fromContext( mTaskContainer.getTaskView().getContext()), message, null); } diff --git a/quickstep/src/com/android/quickstep/TaskShortcutFactory.java b/quickstep/src/com/android/quickstep/TaskShortcutFactory.java index 7de270d31c..bc46ace741 100644 --- a/quickstep/src/com/android/quickstep/TaskShortcutFactory.java +++ b/quickstep/src/com/android/quickstep/TaskShortcutFactory.java @@ -18,9 +18,11 @@ package com.android.quickstep; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.content.Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS; +import static android.view.Surface.ROTATION_0; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.launcher3.Flags.enableRefactorTaskThumbnail; +import static com.android.launcher3.Flags.enableShowEnabledShortcutsInAccessibilityMenu; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_SYSTEM_SHORTCUT_CLOSE_APP_TAP; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_SYSTEM_SHORTCUT_FREE_FORM_TAP; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT; @@ -52,6 +54,7 @@ import com.android.launcher3.util.SplitConfigurationOptions; import com.android.launcher3.util.SplitConfigurationOptions.SplitPositionOption; import com.android.launcher3.views.ActivityContext; import com.android.quickstep.orientation.RecentsPagedOrientationHandler; +import com.android.quickstep.util.RecentsOrientedState; import com.android.quickstep.views.GroupedTaskView; import com.android.quickstep.views.RecentsView; import com.android.quickstep.views.RecentsViewContainer; @@ -294,11 +297,11 @@ public interface TaskShortcutFactory { } } - class RemoveTaskSystemShortcut extends SystemShortcut { + class CloseSystemShortcut extends SystemShortcut { private final TaskContainer mTaskContainer; - public RemoveTaskSystemShortcut(int iconResId, int textResId, - RecentsViewContainer container, TaskContainer taskContainer) { + public CloseSystemShortcut(int iconResId, int textResId, RecentsViewContainer container, + TaskContainer taskContainer) { super(iconResId, textResId, container, taskContainer.getTaskView().getFirstItemInfo(), taskContainer.getTaskView()); mTaskContainer = taskContainer; @@ -342,12 +345,21 @@ public interface TaskShortcutFactory { !deviceProfile.isTaskbarPresent && recentsView.getTaskViewCount() < 2; boolean isTaskSplitNotSupported = !task.isDockable || (intentFlags & FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS) != 0; - boolean hideForExistingMultiWindow = container.getDeviceProfile().getDeviceProperties().isMultiWindowMode(); + boolean hideForExistingMultiWindow = container.getDeviceProfile().isMultiWindowMode; if (notEnoughTasksToSplit || isTaskSplitNotSupported || hideForExistingMultiWindow) { return null; } + if (!enableShowEnabledShortcutsInAccessibilityMenu()) { + boolean isLargeTile = deviceProfile.isTablet && taskView.isLargeTile(); + boolean isTaskInExpectedScrollPosition = + recentsView.isTaskInExpectedScrollPosition(taskView); + if (isLargeTile && isTaskInExpectedScrollPosition) { + return null; + } + } + return orientationHandler.getSplitPositionOptions(deviceProfile) .stream() .map((Function<SplitPositionOption, SystemShortcut>) option -> @@ -365,7 +377,7 @@ public interface TaskShortcutFactory { DeviceProfile deviceProfile = container.getDeviceProfile(); final TaskView taskView = taskContainer.getTaskView(); final RecentsView recentsView = taskView.getRecentsView(); - boolean isLargeTile = deviceProfile.getDeviceProperties().isTablet() && taskView.isLargeTile(); + boolean isLargeTile = deviceProfile.isTablet && taskView.isLargeTile(); boolean isInExpectedScrollPosition = recentsView.isTaskInExpectedScrollPosition(taskView); boolean shouldShowActionsButtonInstead = @@ -375,8 +387,7 @@ public interface TaskShortcutFactory { // - we are in 3p launcher // - the Overview Actions Button should be visible // - the task view is not a valid save-able split pair - if (!OverviewComponentObserver.INSTANCE.get(container.asContext()) - .isHomeAndOverviewSame() + if (!recentsView.supportsAppPairs() || shouldShowActionsButtonInstead || !recentsView.getSplitSelectController().getAppPairsController() .canSaveAppPair(taskView)) { @@ -495,8 +506,23 @@ public interface TaskShortcutFactory { @Override public List<SystemShortcut> getShortcuts(RecentsViewContainer container, TaskContainer taskContainer) { - if (!taskContainer.getOverlay().isRealSnapshot()) { - return null; + if (enableShowEnabledShortcutsInAccessibilityMenu()) { + if (!taskContainer.getOverlay().isRealSnapshot()) { + return null; + } + } else { + boolean isTablet = container.getDeviceProfile().isTablet; + boolean isGridOnlyOverview = isTablet && enableGridOnlyOverview(); + // Extra conditions if it's not grid-only overview + if (!isGridOnlyOverview) { + RecentsOrientedState orientedState = taskContainer.getTaskView() + .getOrientedState(); + boolean isFakeLandscape = !orientedState.isRecentsActivityRotationAllowed() + && orientedState.getTouchRotation() != ROTATION_0; + if (!isFakeLandscape) { + return null; + } + } } SystemShortcut screenshotShortcut = taskContainer.getOverlay().getScreenshotShortcut( @@ -514,31 +540,39 @@ public interface TaskShortcutFactory { @Override public List<SystemShortcut> getShortcuts(RecentsViewContainer container, TaskContainer taskContainer) { - if (!taskContainer.getOverlay().isRealSnapshot()) { - return null; - } + if (enableShowEnabledShortcutsInAccessibilityMenu()) { + if (!taskContainer.getOverlay().isRealSnapshot()) { + return null; + } - // Modal only works with grid size tiles with enableGridOnlyOverview enabled on - // tablets / foldables. With enableGridOnlyOverview off, for large tiles it works, - // but the tile needs to be in the center of Recents / Overview. - boolean isTablet = container.getDeviceProfile().getDeviceProperties().isTablet(); - RecentsView recentsView = container.getOverviewPanel(); - boolean isLargeTileInCenterOfOverview = taskContainer.getTaskView().isLargeTile() - && recentsView.isFocusedTaskInExpectedScrollPosition(); - if (isTablet - && !isLargeTileInCenterOfOverview - && !enableGridOnlyOverview()) { - return null; - } + // Modal only works with grid size tiles with enableGridOnlyOverview enabled on + // tablets / foldables. With enableGridOnlyOverview off, for large tiles it works, + // but the tile needs to be in the center of Recents / Overview. + boolean isTablet = container.getDeviceProfile().isTablet; + RecentsView recentsView = container.getOverviewPanel(); + boolean isLargeTileInCenterOfOverview = taskContainer.getTaskView().isLargeTile() + && recentsView.isFocusedTaskInExpectedScrollPosition(); + if (isTablet + && !isLargeTileInCenterOfOverview + && !enableGridOnlyOverview()) { + return null; + } - boolean isFakeLandscape = !taskContainer.getTaskView().getPagedOrientationHandler() - .isLayoutNaturalToLauncher(); - if (isFakeLandscape) { - return null; - } + boolean isFakeLandscape = !taskContainer.getTaskView().getPagedOrientationHandler() + .isLayoutNaturalToLauncher(); + if (isFakeLandscape) { + return null; + } - if (taskContainer.getOverlay().isThumbnailRotationDifferentFromTask()) { - return null; + if (taskContainer.getOverlay().isThumbnailRotationDifferentFromTask()) { + return null; + } + } else { + boolean isTablet = container.getDeviceProfile().isTablet; + boolean isGridOnlyOverview = isTablet && enableGridOnlyOverview(); + if (!isGridOnlyOverview) { + return null; + } } SystemShortcut modalStateSystemShortcut = @@ -548,13 +582,13 @@ public interface TaskShortcutFactory { } }; - TaskShortcutFactory REMOVE_TASK = new TaskShortcutFactory() { + TaskShortcutFactory CLOSE = new TaskShortcutFactory() { @Override public List<SystemShortcut> getShortcuts(RecentsViewContainer container, TaskContainer taskContainer) { - return Collections.singletonList(new RemoveTaskSystemShortcut( - R.drawable.ic_remove_task_option, - R.string.recent_task_option_remove_task, container, taskContainer)); + return Collections.singletonList(new CloseSystemShortcut( + R.drawable.ic_close_option, + R.string.recent_task_option_close, container, taskContainer)); } @Override diff --git a/quickstep/src/com/android/quickstep/TaskThumbnailCache.kt b/quickstep/src/com/android/quickstep/TaskThumbnailCache.kt index 4a94baab3c..1d880ab6a9 100644 --- a/quickstep/src/com/android/quickstep/TaskThumbnailCache.kt +++ b/quickstep/src/com/android/quickstep/TaskThumbnailCache.kt @@ -18,15 +18,11 @@ package com.android.quickstep import android.content.Context import androidx.annotation.VisibleForTesting import androidx.annotation.WorkerThread -import com.android.launcher3.Flags.enableCoroutineThreadingImprovements +import com.android.launcher3.Flags.enableGridOnlyOverview import com.android.launcher3.R import com.android.launcher3.util.CancellableTask import com.android.launcher3.util.Executors -import com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview import com.android.launcher3.util.Preconditions -import com.android.launcher3.util.coroutines.DispatcherProvider -import com.android.quickstep.recents.di.RecentsDependencies -import com.android.quickstep.recents.di.inject import com.android.quickstep.task.thumbnail.data.TaskThumbnailDataSource import com.android.quickstep.util.TaskKeyByLastActiveTimeCache import com.android.quickstep.util.TaskKeyCache @@ -37,7 +33,6 @@ import com.android.systemui.shared.recents.model.ThumbnailData import com.android.systemui.shared.system.ActivityManagerWrapper import java.util.concurrent.Executor import java.util.function.Consumer -import kotlinx.coroutines.withContext class TaskThumbnailCache @VisibleForTesting @@ -49,7 +44,6 @@ internal constructor( val highResLoadingState = HighResLoadingState() private val enableTaskSnapshotPreloading = context.resources.getBoolean(R.bool.config_enableTaskSnapshotPreloading) - val dispatcherProvider: DispatcherProvider by RecentsDependencies.inject() @JvmOverloads constructor( @@ -110,31 +104,27 @@ internal constructor( return cachedThumbnail } - return withContext(dispatcherProvider.ioBackground) { - // Get thumbnail from system - var thumbnailData = - ActivityManagerWrapper.getInstance().getTaskThumbnail(task.key.id, lowResolution) - if (thumbnailData.thumbnail == null && !enableCoroutineThreadingImprovements()) { - thumbnailData = ActivityManagerWrapper.getInstance().takeTaskThumbnail(task.key.id) - } - - // Avoid an async timing issue that a low res entry replaces an existing high - // res entry in high res enabled state, so we check before putting it to cache - if ( - enableGridOnlyOverview() && - thumbnailData.reducedResolution && - highResLoadingState.isEnabled - ) { - val newCachedThumbnail = cache.getAndInvalidateIfModified(task.key) - if ( - newCachedThumbnail?.thumbnail != null && !newCachedThumbnail.reducedResolution - ) { - return@withContext newCachedThumbnail - } - } - cache.put(task.key, thumbnailData) - return@withContext thumbnailData + // Get thumbnail from system + var thumbnailData = + ActivityManagerWrapper.getInstance().getTaskThumbnail(task.key.id, lowResolution) + if (thumbnailData.thumbnail == null) { + thumbnailData = ActivityManagerWrapper.getInstance().takeTaskThumbnail(task.key.id) } + + // Avoid an async timing issue that a low res entry replaces an existing high + // res entry in high res enabled state, so we check before putting it to cache + if ( + enableGridOnlyOverview() && + thumbnailData.reducedResolution && + highResLoadingState.isEnabled + ) { + val newCachedThumbnail = cache.getAndInvalidateIfModified(task.key) + if (newCachedThumbnail?.thumbnail != null && !newCachedThumbnail.reducedResolution) { + return newCachedThumbnail + } + } + cache.put(task.key, thumbnailData) + return thumbnailData } /** diff --git a/quickstep/src/com/android/quickstep/TaskViewUtils.java b/quickstep/src/com/android/quickstep/TaskViewUtils.java index cbfe61bc2d..d161d452b9 100644 --- a/quickstep/src/com/android/quickstep/TaskViewUtils.java +++ b/quickstep/src/com/android/quickstep/TaskViewUtils.java @@ -23,7 +23,7 @@ import static com.android.app.animation.Interpolators.LINEAR; import static com.android.app.animation.Interpolators.TOUCH_RESPONSE; import static com.android.app.animation.Interpolators.clampToProgress; import static com.android.launcher3.Flags.enableDesktopExplodedView; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.launcher3.LauncherAnimUtils.VIEW_ALPHA; import static com.android.launcher3.LauncherAnimUtils.VIEW_TRANSLATE_X; import static com.android.launcher3.LauncherAnimUtils.VIEW_TRANSLATE_Y; @@ -199,7 +199,7 @@ public final class TaskViewUtils { } else { boolean forDesktop = taskView instanceof DesktopTaskView; RemoteTargetGluer gluer = new RemoteTargetGluer(taskView.getContext(), - recentsView.getContainerInterface(), targets, forDesktop); + recentsView.getSizeStrategy(), targets, forDesktop); if (forDesktop) { remoteTargetHandles = gluer.assignTargetsForDesktop(targets, transitionInfo); if (enableDesktopExplodedView()) { @@ -226,11 +226,11 @@ public final class TaskViewUtils { T container = RecentsViewContainer.containerFromContext(context); DeviceProfile dp = container.getDeviceProfile(); - boolean showAsGrid = dp.getDeviceProperties().isTablet(); + boolean showAsGrid = dp.isTablet; boolean parallaxCenterAndAdjacentTask = !showAsGrid && taskIndex != recentsView.getCurrentPage(); - int scrollOffset = recentsView.getScrollOffset(taskIndex); - int gridTranslationY = showAsGrid ? (int) taskView.getGridTranslationY() : 0; + int taskRectTranslationPrimary = recentsView.getScrollOffset(taskIndex); + int taskRectTranslationSecondary = showAsGrid ? (int) taskView.getGridTranslationY() : 0; RemoteTargetHandle[] topMostSimulators = null; @@ -244,15 +244,15 @@ public final class TaskViewUtils { // be stale. Use the display value instead. int displayRotation = DisplayController.INSTANCE.get(context).getInfo().rotation; tvsLocal.getOrientationState().update(displayRotation, displayRotation); - tvsLocal.calculateTaskSize(); tvsLocal.fullScreenProgress.value = 0; tvsLocal.recentsViewScale.value = 1; if (!enableGridOnlyOverview()) { tvsLocal.setIsGridTask(taskView.isGridTask()); } - tvsLocal.recentsViewScroll.value = scrollOffset; - tvsLocal.taskSecondaryTranslation.value = gridTranslationY; + tvsLocal.getOrientationState().getOrientationHandler().set(tvsLocal, + TaskViewSimulator::setTaskRectTranslation, taskRectTranslationPrimary, + taskRectTranslationSecondary); if (taskView instanceof DesktopTaskView) { targetHandle.getTransformParams().setTargetAlpha(1f); @@ -433,7 +433,7 @@ public final class TaskViewUtils { out.addListener(new AnimationSuccessListener() { @Override public void onAnimationStart(Animator animation) { - recentsView.setDrawAboveRecents(remoteTargetHandles); + recentsView.setDrawBelowRecents(false, remoteTargetHandles); } @Override @@ -686,11 +686,9 @@ public final class TaskViewUtils { // We may have notified launcher is not visible so that taskbar can // stash immediately. Now that the animation is over, we can update // that launcher is still visible. - TaskbarUIController controller = recentsView.getContainerInterface() + TaskbarUIController controller = recentsView.getSizeStrategy() .getTaskbarController(); - // If we're launching the desktop tile in Overview, no need to change - // the launcher visibility and taskbar visibility below. - if (controller != null && !(v instanceof DesktopTaskView)) { + if (controller != null) { boolean launcherVisible = true; for (RemoteAnimationTarget target : appTargets) { launcherVisible &= target.isTranslucent; diff --git a/quickstep/src/com/android/quickstep/TopTaskTracker.java b/quickstep/src/com/android/quickstep/TopTaskTracker.java index dc9388891c..586d740fbe 100644 --- a/quickstep/src/com/android/quickstep/TopTaskTracker.java +++ b/quickstep/src/com/android/quickstep/TopTaskTracker.java @@ -18,23 +18,21 @@ package com.android.quickstep; import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; import static android.app.WindowConfiguration.ACTIVITY_TYPE_RECENTS; -import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.content.Intent.ACTION_CHOOSER; import static android.content.Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS; import static android.view.Display.DEFAULT_DISPLAY; import static android.view.Display.INVALID_DISPLAY; import static com.android.launcher3.BuildConfig.DEBUG; -import static com.android.quickstep.fallback.window.RecentsWindowFlags.enableOverviewOnConnectedDisplays; +import static com.android.launcher3.Flags.enableOverviewOnConnectedDisplays; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_TYPE_A; +import static com.android.quickstep.fallback.window.RecentsWindowFlags.enableOverviewOnConnectedDisplays; import static com.android.wm.shell.Flags.enableShellTopTaskTracking; import static com.android.wm.shell.Flags.enableFlexibleSplit; -import static com.android.wm.shell.shared.GroupedTaskInfo.TYPE_DESK; import static com.android.wm.shell.shared.GroupedTaskInfo.TYPE_SPLIT; import static com.android.launcher3.statehandlers.DesktopVisibilityController.INACTIVE_DESK_ID; import static com.android.wm.shell.shared.desktopmode.DesktopModeStatus.canEnterDesktopMode; -import static com.android.wm.shell.shared.desktopmode.DesktopModeStatus.enableMultipleDesktops; import android.app.ActivityManager.RunningTaskInfo; import android.app.TaskInfo; @@ -49,7 +47,6 @@ import androidx.annotation.UiThread; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppSingleton; -import com.android.launcher3.statehandlers.DesktopVisibilityController; import com.android.launcher3.util.DaggerSingletonObject; import com.android.launcher3.util.DaggerSingletonTracker; import com.android.launcher3.util.SplitConfigurationOptions; @@ -67,12 +64,12 @@ import com.android.wm.shell.shared.GroupedTaskInfo; import com.android.wm.shell.splitscreen.ISplitScreenListener; import java.io.PrintWriter; +import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.Iterator; import java.util.LinkedList; import java.util.List; -import java.util.stream.Stream; import java.util.stream.Collectors; import javax.inject.Inject; @@ -103,12 +100,11 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta // most. private ArrayMap<Integer, GroupedTaskInfo> mVisibleTasks = new ArrayMap<>(); - private final Context mContext; - private final DesktopVisibilityController mDesktopVisibilityController; + private final boolean mCanEnterDesktopMode; @Inject public TopTaskTracker(@ApplicationContext Context context, DaggerSingletonTracker tracker, - SystemUiProxy systemUiProxy, DesktopVisibilityController desktopVisibilityController) { + SystemUiProxy systemUiProxy) { if (!enableShellTopTaskTracking()) { mMainStagePosition.stageType = SplitConfigurationOptions.STAGE_TYPE_MAIN; mSideStagePosition.stageType = SplitConfigurationOptions.STAGE_TYPE_SIDE; @@ -126,8 +122,7 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta systemUiProxy.unregisterSplitScreenListener(this); }); - mContext = context; - mDesktopVisibilityController = desktopVisibilityController; + mCanEnterDesktopMode = canEnterDesktopMode(context); } @Override @@ -137,6 +132,9 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta } mOrderedTaskList.removeIf(rto -> rto.taskId == taskId); + if (DEBUG) { + Log.i(TAG, "onTaskRemoved: taskId=" + taskId); + } } @Override @@ -152,11 +150,9 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta mOrderedTaskList.removeIf(rto -> rto.taskId == taskInfo.taskId); mOrderedTaskList.addFirst(taskInfo); - // Workaround for b/372067617, b/390564114, if the home task or any fullscreen occluding - // task is brought to front, then mark other tasks behind as not-visible - if (taskInfo.getActivityType() == ACTIVITY_TYPE_HOME - || (taskInfo.getWindowingMode() == WINDOWING_MODE_FULLSCREEN - && !taskInfo.isActivityStackTransparent)) { + // Workaround for b/372067617, if the home task is being brought to front, then it will + // occlude all other tasks, so mark them as not-visible + if (taskInfo.getActivityType() == ACTIVITY_TYPE_HOME) { // We've moved the task to the front of the list above, so only iterate the tasks after for (int i = 1; i < mOrderedTaskList.size(); i++) { final TaskInfo info = mOrderedTaskList.get(i); @@ -212,13 +208,7 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta Log.d(TAG, "onVisibleTasksChanged:"); for (GroupedTaskInfo groupedTask : visibleTasks) { Log.d(TAG, "\t" + groupedTask); - GroupedTaskInfo baseGroupedTask = groupedTask.getBaseGroupedTask(); - int displayId; - if (enableMultipleDesktops(mContext) && baseGroupedTask.isBaseType(TYPE_DESK)) { - displayId = baseGroupedTask.getDeskDisplayId(); - } else { - displayId = baseGroupedTask.getTaskInfo1().getDisplayId(); - } + final int displayId = groupedTask.getBaseGroupedTask().getTaskInfo1().getDisplayId(); mVisibleTasks.put(displayId, groupedTask); } } @@ -352,7 +342,6 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta // explicit) return new CachedTaskInfo(mVisibleTasks.get(displayId)); } else { - int activeDeskId = mDesktopVisibilityController.getActiveDeskId(displayId); if (filterOnlyVisibleRecents) { // Since we only know about the top most task, any filtering may not be applied on // the cache. The second to top task may change while the top task is still the @@ -362,10 +351,10 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta if (enableOverviewOnConnectedDisplays()) { return new CachedTaskInfo(Arrays.stream(tasks).filter( info -> ExternalDisplaysKt.getSafeDisplayId(info) - == displayId).toList(), mContext, displayId, activeDeskId); + == displayId).toList(), mCanEnterDesktopMode, displayId); } else { - return new CachedTaskInfo(Arrays.asList(tasks), mContext, - displayId, activeDeskId); + return new CachedTaskInfo(Arrays.asList(tasks), mCanEnterDesktopMode, + displayId); } } @@ -376,22 +365,17 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta Collections.addAll(mOrderedTaskList, tasks); } - Stream<TaskInfo> taskStream = mOrderedTaskList.stream() - // Strip the pinned task and recents task. - .filter(t -> t.taskId != mPinnedTaskId && !isRecentsTask(t)); + ArrayList<TaskInfo> tasks = new ArrayList<>(mOrderedTaskList); + // Strip the pinned task and recents task + tasks.removeIf(t -> t.taskId == mPinnedTaskId || isRecentsTask(t) + || DesksUtils.isDesktopWallpaperTask(t)); if (enableOverviewOnConnectedDisplays()) { - taskStream = taskStream.filter( - info -> ExternalDisplaysKt.getSafeDisplayId(info) == displayId); - } - if (enableMultipleDesktops(mContext)) { - taskStream = taskStream.takeWhile( - taskInfo -> !DesksUtils.isDesktopWallpaperTask(taskInfo)); + return new CachedTaskInfo(tasks.stream().filter( + info -> ExternalDisplaysKt.getSafeDisplayId(info) == displayId).toList(), + mCanEnterDesktopMode, displayId); } else { - taskStream = taskStream.filter( - taskInfo -> !DesksUtils.isDesktopWallpaperTask(taskInfo)); + return new CachedTaskInfo(tasks, mCanEnterDesktopMode, displayId); } - - return new CachedTaskInfo(taskStream.toList(), mContext, displayId, activeDeskId); } } @@ -422,26 +406,23 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta @Nullable private final GroupedTaskInfo mVisibleTasks; - private Context mContext; - private final int mActiveDeskId; + private boolean mCanEnterDesktopMode = false; // Only used when enableShellTopTaskTracking() is enabled CachedTaskInfo(@Nullable GroupedTaskInfo visibleTasks) { mAllCachedTasks = null; mTopTask = null; mVisibleTasks = visibleTasks; - mActiveDeskId = INACTIVE_DESK_ID; } // Only used when enableShellTopTaskTracking() is disabled - CachedTaskInfo(@NonNull List<TaskInfo> allCachedTasks, Context context, - int displayId, int activeDeskId) { - mDisplayId = displayId; + CachedTaskInfo(@NonNull List<TaskInfo> allCachedTasks, boolean canEnterDesktopMode, + int displayId) { mVisibleTasks = null; mAllCachedTasks = allCachedTasks; mTopTask = allCachedTasks.isEmpty() ? null : allCachedTasks.get(0); - mContext = context; - mActiveDeskId = activeDeskId; + mCanEnterDesktopMode = canEnterDesktopMode; + mDisplayId = displayId; } /** @@ -551,8 +532,7 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta && t.getActivityType() != ACTIVITY_TYPE_RECENTS) .toList(); return visibleNonExcludedTasks.isEmpty() ? null - : new CachedTaskInfo(visibleNonExcludedTasks, mContext, mDisplayId, - mActiveDeskId); + : new CachedTaskInfo(visibleNonExcludedTasks, mCanEnterDesktopMode, mDisplayId); } /** @@ -577,8 +557,8 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta return result; } - private boolean isDesktopTask(@Nullable TaskInfo taskInfo) { - return taskInfo != null && canEnterDesktopMode(mContext) + private boolean isDesktopTask(TaskInfo taskInfo) { + return mCanEnterDesktopMode && taskInfo.configuration.windowConfiguration.getWindowingMode() == WindowConfiguration.WINDOWING_MODE_FREEFORM; } @@ -592,14 +572,17 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta * @param splitTaskIds provide if it is for split, which represents the task ids of the * paired tasks. Otherwise, provide null. */ - public @Nullable GroupedTaskInfo getPlaceholderGroupedTaskInfo( - @Nullable int[] splitTaskIds) { + public GroupedTaskInfo getPlaceholderGroupedTaskInfo(@Nullable int[] splitTaskIds) { if (enableShellTopTaskTracking()) { if (mVisibleTasks == null) { return null; } return mVisibleTasks.getBaseGroupedTask(); } else { + final TaskInfo baseTaskInfo = getLegacyBaseTask(); + if (baseTaskInfo == null) { + return null; + } if (splitTaskIds != null && splitTaskIds.length >= 2) { TaskInfo[] splitTasksInfo = getSplitPlaceholderTasksInfo(splitTaskIds); if (splitTasksInfo[0] == null || splitTasksInfo[1] == null) { @@ -607,23 +590,13 @@ public class TopTaskTracker extends ISplitScreenListener.Stub implements TaskSta } return GroupedTaskInfo.forSplitTasks(splitTasksInfo[0], splitTasksInfo[1], /* splitBounds = */ null); + } else if (isDesktopTask(baseTaskInfo)) { + return GroupedTaskInfo.forDeskTasks(INACTIVE_DESK_ID, mDisplayId, + Collections.singletonList( + baseTaskInfo), /* minimizedFreeformTaskIds = */ + Collections.emptySet()); } else { - final TaskInfo baseTaskInfo = getLegacyBaseTask(); - if (enableMultipleDesktops(mContext)) { - if (mActiveDeskId != INACTIVE_DESK_ID) { - return GroupedTaskInfo.forDeskTasks( - mActiveDeskId, mDisplayId, mAllCachedTasks, - /* minimizedFreeformTaskIds = */ Collections.emptySet()); - } - } else if (isDesktopTask(baseTaskInfo)) { - return GroupedTaskInfo.forDeskTasks(INACTIVE_DESK_ID, mDisplayId, - Collections.singletonList( - baseTaskInfo), /* minimizedFreeformTaskIds = */ - Collections.emptySet()); - } - return baseTaskInfo == null - ? null - : GroupedTaskInfo.forFullscreenTasks(baseTaskInfo); + return GroupedTaskInfo.forFullscreenTasks(baseTaskInfo); } } } diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java index b3ce9414cd..30936ad9d4 100644 --- a/quickstep/src/com/android/quickstep/TouchInteractionService.java +++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java @@ -15,7 +15,6 @@ */ package com.android.quickstep; -import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; import static android.view.Display.DEFAULT_DISPLAY; import static android.view.MotionEvent.ACTION_CANCEL; import static android.view.MotionEvent.ACTION_DOWN; @@ -25,12 +24,10 @@ import static android.view.MotionEvent.ACTION_POINTER_UP; import static android.view.MotionEvent.ACTION_UP; import static com.android.launcher3.Flags.enableCursorHoverStates; +import static com.android.launcher3.Flags.enableHandleDelayedGestureCallbacks; import static com.android.launcher3.LauncherPrefs.backedUpItem; import static com.android.launcher3.MotionEventsUtils.isTrackpadMotionEvent; import static com.android.launcher3.MotionEventsUtils.isTrackpadMultiFingerSwipe; -import static com.android.launcher3.taskbar.TaskbarDesktopExperienceFlags.enableAltTabKqsOnConnectedDisplays; -import static com.android.launcher3.util.DisplayController.CHANGE_NAVIGATION_MODE; -import static com.android.launcher3.util.DisplayController.CHANGE_NIGHT_MODE; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; import static com.android.launcher3.util.OnboardingPrefs.HOME_BOUNCE_SEEN; @@ -41,12 +38,13 @@ import static com.android.quickstep.InputConsumer.TYPE_CURSOR_HOVER; import static com.android.quickstep.InputConsumer.createNoOpInputConsumer; import static com.android.quickstep.InputConsumerUtils.newConsumer; import static com.android.quickstep.InputConsumerUtils.tryCreateAssistantInputConsumer; -import static com.android.quickstep.fallback.window.RecentsWindowFlags.enableOverviewOnConnectedDisplays; import static com.android.systemui.shared.system.ActivityManagerWrapper.CLOSE_SYSTEM_WINDOWS_REASON_RECENTS; -import android.app.ActivityManager; +import android.app.PendingIntent; import android.app.Service; import android.content.Context; +import android.content.IIntentReceiver; +import android.content.IIntentSender; import android.content.Intent; import android.content.res.Configuration; import android.graphics.Region; @@ -57,13 +55,12 @@ import android.os.Looper; import android.os.RemoteException; import android.os.SystemClock; import android.util.Log; -import android.util.SparseArray; import android.view.Choreographer; import android.view.Display; import android.view.InputDevice; import android.view.InputEvent; import android.view.MotionEvent; -import android.window.DesktopExperienceFlags.DesktopExperienceFlag; +import android.window.DesktopModeFlags; import androidx.annotation.BinderThread; import androidx.annotation.NonNull; @@ -71,23 +68,16 @@ import androidx.annotation.Nullable; import androidx.annotation.UiThread; import androidx.annotation.VisibleForTesting; -import com.android.app.displaylib.DisplayRepository; -import com.android.app.displaylib.DisplaysWithDecorationsRepositoryCompat; -import com.android.app.displaylib.PerDisplayRepository; import com.android.launcher3.ConstantItem; import com.android.launcher3.EncryptionType; import com.android.launcher3.Flags; -import com.android.launcher3.Launcher; import com.android.launcher3.LauncherPrefs; import com.android.launcher3.anim.AnimatedFloat; -import com.android.launcher3.dagger.LauncherComponentProvider; import com.android.launcher3.desktop.DesktopAppLaunchTransitionManager; import com.android.launcher3.statehandlers.DesktopVisibilityController; import com.android.launcher3.statemanager.StatefulActivity; import com.android.launcher3.taskbar.TaskbarActivityContext; import com.android.launcher3.taskbar.TaskbarManager; -import com.android.launcher3.taskbar.TaskbarManagerImpl; -import com.android.launcher3.taskbar.TaskbarManagerImplWrapper; import com.android.launcher3.taskbar.TaskbarNavButtonController.TaskbarNavButtonCallbacks; import com.android.launcher3.taskbar.bubbles.BubbleControllers; import com.android.launcher3.testing.TestLogging; @@ -101,16 +91,11 @@ import com.android.launcher3.util.PluginManagerWrapper; import com.android.launcher3.util.SafeCloseable; import com.android.launcher3.util.ScreenOnTracker; import com.android.launcher3.util.TraceHelper; -import com.android.launcher3.util.coroutines.ProductionDispatchers; import com.android.quickstep.OverviewCommandHelper.CommandType; import com.android.quickstep.OverviewComponentObserver.OverviewChangeListener; -import com.android.quickstep.actioncorner.ActionCornerHandler; -import com.android.quickstep.fallback.RecentsState; -import com.android.quickstep.fallback.window.RecentsWindowFlags; -import com.android.quickstep.fallback.window.RecentsWindowManager; +import com.android.quickstep.fallback.window.RecentsDisplayModel; +import com.android.quickstep.fallback.window.RecentsDisplayModel.RecentsDisplayResource; import com.android.quickstep.fallback.window.RecentsWindowSwipeHandler; -import com.android.quickstep.input.QuickstepKeyGestureEventsManager; -import com.android.quickstep.input.QuickstepKeyGestureEventsManager.OverviewGestureHandler; import com.android.quickstep.inputconsumers.BubbleBarInputConsumer; import com.android.quickstep.inputconsumers.OneHandedModeInputConsumer; import com.android.quickstep.util.ActiveGestureLog; @@ -128,8 +113,6 @@ import com.android.systemui.shared.system.InputChannelCompat.InputEventReceiver; import com.android.systemui.shared.system.InputConsumerController; import com.android.systemui.shared.system.InputMonitorCompat; import com.android.systemui.shared.system.QuickStepContract.SystemUiStateFlags; -import com.android.systemui.shared.system.TaskStackChangeListener; -import com.android.systemui.shared.system.TaskStackChangeListeners; import com.android.systemui.shared.system.smartspace.ISysuiUnlockAnimationController; import com.android.systemui.unfold.progress.IUnfoldAnimation; import com.android.wm.shell.back.IBackAnimation; @@ -143,8 +126,6 @@ import com.android.wm.shell.shared.IShellTransitions; import com.android.wm.shell.splitscreen.ISplitScreen; import com.android.wm.shell.startingsurface.IStartingWindow; -import kotlinx.coroutines.CoroutineDispatcher; - import java.io.FileDescriptor; import java.io.PrintWriter; import java.lang.ref.WeakReference; @@ -164,9 +145,8 @@ public class TouchInteractionService extends Service { private static final ConstantItem<Boolean> HAS_ENABLED_QUICKSTEP_ONCE = backedUpItem( "launcher.has_enabled_quickstep_once", false, EncryptionType.ENCRYPTED); - private static final DesktopExperienceFlag ENABLE_GESTURE_NAV_ON_CONNECTED_DISPLAYS = - new DesktopExperienceFlag(Flags::enableGestureNavOnConnectedDisplays, true, - Flags.FLAG_ENABLE_GESTURE_NAV_ON_CONNECTED_DISPLAYS); + private static final DesktopModeFlags.DesktopModeFlag ENABLE_GESTURE_NAV_ON_CONNECTED_DISPLAYS = + new DesktopModeFlags.DesktopModeFlag(Flags::enableGestureNavOnConnectedDisplays, false); private final TISBinder mTISBinder = new TISBinder(this); @@ -235,21 +215,12 @@ public class TouchInteractionService extends Service { public void onOverviewToggle() { TestLogging.recordEvent(TestProtocol.SEQUENCE_MAIN, "onOverviewToggle"); executeForTouchInteractionService(tis -> { - int displayId = tis.focusedDisplayIdForOverviewOnConnectedDisplays(); - RecentsAnimationDeviceState deviceState = tis.mDeviceStateRepository.get( - displayId); - if (deviceState != null) { - if (deviceState.isScreenPinningActive()) { - return; - } - if (!deviceState.canStartOverviewCommand()) { - Log.d(TAG, "onOverviewShown ignored for display " + displayId - + " because the command is blocked"); - return; - } + // If currently screen pinning, do not enter overview + if (tis.mDeviceState.isScreenPinningActive()) { + return; } TaskUtils.closeSystemWindowsAsync(CLOSE_SYSTEM_WINDOWS_REASON_RECENTS); - tis.mOverviewCommandHelper.addCommand(CommandType.TOGGLE, displayId); + tis.mOverviewCommandHelper.addCommand(CommandType.TOGGLE); }); } @@ -257,23 +228,11 @@ public class TouchInteractionService extends Service { @Override public void onOverviewShown(boolean triggeredFromAltTab) { executeForTouchInteractionService(tis -> { - final int displayId = - triggeredFromAltTab - ? tis.focusedDisplayIdForAltTabKqsOnConnectedDisplays() - : tis.focusedDisplayIdForOverviewOnConnectedDisplays(); - RecentsAnimationDeviceState deviceState = tis.mDeviceStateRepository.get( - displayId); - if (deviceState != null && !deviceState.canStartOverviewCommand()) { - Log.d(TAG, "onOverviewShown ignored for display " + displayId - + " because the command is blocked"); - return; - } - if (triggeredFromAltTab) { TaskUtils.closeSystemWindowsAsync(CLOSE_SYSTEM_WINDOWS_REASON_RECENTS); - tis.mOverviewCommandHelper.addCommand(CommandType.SHOW_ALT_TAB, displayId); + tis.mOverviewCommandHelper.addCommand(CommandType.KEYBOARD_INPUT); } else { - tis.mOverviewCommandHelper.addCommand(CommandType.SHOW_WITH_FOCUS, displayId); + tis.mOverviewCommandHelper.addCommand(CommandType.SHOW); } }); } @@ -284,15 +243,7 @@ public class TouchInteractionService extends Service { executeForTouchInteractionService(tis -> { if (triggeredFromAltTab && !triggeredFromHomeKey) { // onOverviewShownFromAltTab hides the overview and ends at the target app - int displayId = tis.focusedDisplayIdForAltTabKqsOnConnectedDisplays(); - RecentsAnimationDeviceState deviceState = tis.mDeviceStateRepository.get( - displayId); - if (deviceState != null && !deviceState.canStartOverviewCommand()) { - Log.d(TAG, "onOverviewHidden ignored for display " + displayId - + " because the command is blocked"); - return; - } - tis.mOverviewCommandHelper.addCommand(CommandType.HIDE_ALT_TAB, displayId); + tis.mOverviewCommandHelper.addCommand(CommandType.HIDE); } }); } @@ -301,9 +252,7 @@ public class TouchInteractionService extends Service { @Override public void onAssistantAvailable(boolean available, boolean longPressHomeEnabled) { MAIN_EXECUTOR.execute(() -> executeForTouchInteractionService(tis -> { - tis.mDeviceStateRepository.forEach(/* createIfAbsent= */ true, deviceState -> - deviceState.setAssistantAvailable(available) - ); + tis.mDeviceState.setAssistantAvailable(available); tis.onAssistantVisibilityChanged(); executeForTaskbarManager(taskbarManager -> taskbarManager .onLongPressHomeEnabled(longPressHomeEnabled)); @@ -314,9 +263,7 @@ public class TouchInteractionService extends Service { @Override public void onAssistantVisibilityChanged(float visibility) { MAIN_EXECUTOR.execute(() -> executeForTouchInteractionService(tis -> { - tis.mDeviceStateRepository.forEach(/* createIfAbsent= */ true, deviceState -> - deviceState.setAssistantVisibility( - visibility)); + tis.mDeviceState.setAssistantVisibility(visibility); tis.onAssistantVisibilityChanged(); })); } @@ -339,36 +286,27 @@ public class TouchInteractionService extends Service { public void onSystemUiStateChanged(@SystemUiStateFlags long stateFlags, int displayId) { MAIN_EXECUTOR.execute(() -> executeForTouchInteractionService(tis -> { // Last flags is only used for the default display case. - RecentsAnimationDeviceState deviceState = tis.mDeviceStateRepository.get(displayId); - if (deviceState != null) { - long lastFlags = deviceState.getSysuiStateFlags(); - deviceState.setSysUIStateFlags(stateFlags); - tis.onSystemUiFlagsChanged(lastFlags, displayId); - } + long lastFlags = tis.mDeviceState.getSysuiStateFlag(); + tis.mDeviceState.setSysUIStateFlagsForDisplay(stateFlags, displayId); + tis.onSystemUiFlagsChanged(lastFlags, displayId); })); } @BinderThread public void onActiveNavBarRegionChanges(Region region) { MAIN_EXECUTOR.execute(() -> executeForTouchInteractionService( - tis -> - tis.mDeviceStateRepository.forEach(/* createIfAbsent= */ true, - deviceState -> - deviceState.setDeferredGestureRegion(region)) - )); + tis -> tis.mDeviceState.setDeferredGestureRegion(region))); } @BinderThread @Override - public void enterStageSplitFromRunningApp(int displayId, boolean leftOrTop) { + public void enterStageSplitFromRunningApp(boolean leftOrTop) { executeForTouchInteractionService(tis -> { - BaseContainerInterface<?, ?> containerInterface = tis.mOverviewComponentObserver - .getContainerInterface(displayId); - if (containerInterface != null) { - RecentsViewContainer container = containerInterface.getCreatedContainer(); - if (container != null) { - container.enterStageSplitFromRunningApp(leftOrTop, displayId); - } + // TODO (b/397942185): support external displays + RecentsViewContainer container = tis.mOverviewComponentObserver + .getContainerInterface(DEFAULT_DISPLAY).getCreatedContainer(); + if (container != null) { + container.enterStageSplitFromRunningApp(leftOrTop); } }); } @@ -385,6 +323,7 @@ public class TouchInteractionService extends Service { public void onDisplayRemoved(int displayId) { executeForTouchInteractionService(tis -> { tis.mSystemDecorationChangeObserver.notifyOnDisplayRemoved(displayId); + tis.mDeviceState.clearSysUIStateFlagsForDisplay(displayId); }); } @@ -489,17 +428,6 @@ public class TouchInteractionService extends Service { }); } - @Override - public void onActionCornerActivated(int action, int displayId) { - MAIN_EXECUTOR.execute(() -> executeForTouchInteractionService(tis -> { - ActionCornerHandler actionCornerHandler = tis.mActionCornerHandler; - if (actionCornerHandler == null) { - return; - } - actionCornerHandler.handleAction(action, displayId); - })); - } - private void executeForTouchInteractionService( @NonNull Consumer<TouchInteractionService> tisConsumer) { TouchInteractionService tis = mTis.get(); @@ -552,8 +480,7 @@ public class TouchInteractionService extends Service { */ public void setPredictiveBackToHomeInProgress(boolean isInProgress) { executeForTouchInteractionService(tis -> - tis.mDeviceStateRepository.forEach(/* createIfAbsent= */ true, deviceState -> - deviceState.setPredictiveBackToHomeInProgress(isInProgress))); + tis.mDeviceState.setPredictiveBackToHomeInProgress(isInProgress)); } /** @@ -581,30 +508,19 @@ public class TouchInteractionService extends Service { */ public void setGestureBlockedTaskId(int taskId) { executeForTouchInteractionService( - tis -> - tis.mDeviceStateRepository.forEach(/* createIfAbsent= */ true, - deviceState -> - deviceState.setGestureBlockingTaskId(taskId)) - ); + tis -> tis.mDeviceState.setGestureBlockingTaskId(taskId)); } /** Refreshes the current overview target. */ - @VisibleForTesting - public void refreshOverviewTargetForTest() { + public void refreshOverviewTarget() { executeForTouchInteractionService(tis -> { tis.mAllAppsActionManager.onDestroy(); tis.onOverviewTargetChanged(tis.mOverviewComponentObserver.isHomeAndOverviewSame()); - if (RecentsWindowFlags.getEnableOverviewInWindow()) { - Launcher launcher = Launcher.ACTIVITY_TRACKER.getCreatedContext(); - if (launcher != null) { - tis.mTaskbarManager.setActivity(launcher); - } - } }); } } - private PerDisplayRepository<RotationTouchHelper> mRotationTouchHelperRepository; + private RotationTouchHelper mRotationTouchHelper; private final AbsSwipeUpHandler.Factory mLauncherSwipeHandlerFactory = this::createLauncherSwipeHandler; @@ -621,85 +537,27 @@ public class TouchInteractionService extends Service { private final TaskbarNavButtonCallbacks mNavCallbacks = new TaskbarNavButtonCallbacks() { @Override - public void onNavigateHome(int displayId) { - if (enableOverviewOnConnectedDisplays()) { - mOverviewCommandHelper.addCommand(CommandType.HOME, displayId); - } else { - mOverviewCommandHelper.addCommand(CommandType.HOME, DEFAULT_DISPLAY); - } + public void onNavigateHome() { + mOverviewCommandHelper.addCommand(CommandType.HOME); } @Override - public void onToggleOverview(int displayId) { - if (enableOverviewOnConnectedDisplays()) { - mOverviewCommandHelper.addCommand(CommandType.TOGGLE, displayId); - } else { - mOverviewCommandHelper.addCommand(CommandType.TOGGLE, DEFAULT_DISPLAY); - } + public void onToggleOverview() { + mOverviewCommandHelper.addCommand(CommandType.TOGGLE); } @Override - public void onHideOverview(int displayId) { - if (enableOverviewOnConnectedDisplays()) { - mOverviewCommandHelper.addCommand(CommandType.HIDE_ALT_TAB, displayId); - } else { - mOverviewCommandHelper.addCommand(CommandType.HIDE_ALT_TAB, DEFAULT_DISPLAY); - } + public void onHideOverview() { + mOverviewCommandHelper.addCommand(CommandType.HIDE); } }; - // We should clean up the recents window on the primary display on home intent start, however we - // have no other way of listening to this event in the 3P launcher case. - private final TaskStackChangeListener mHomeIntentStartedListener = - new TaskStackChangeListener() { - @Override - public void onActivityRestartAttempt(ActivityManager.RunningTaskInfo task, - boolean homeTaskVisible, boolean clearedTask, boolean wasVisible) { - TaskStackChangeListener.super.onActivityRestartAttempt(task, homeTaskVisible, - clearedTask, wasVisible); - if (task.configuration.windowConfiguration.getActivityType() - != ACTIVITY_TYPE_HOME - || task.displayId != DEFAULT_DISPLAY) { - // We only want to handle home intent starts, and only on the primary - // display. - return; - } - if (mGestureState != DEFAULT_STATE) { - // If there's an ongoing gesture, we shouldn't clean up the recents window - // since gestures will clean up the recents window when needed. - return; - } - RecentsWindowManager recentsWindowManager = - mRecentsWindowManagerRepository.get(DEFAULT_DISPLAY); - TaskAnimationManager taskAnimationManager = - mTaskAnimationManagerRepository.get(DEFAULT_DISPLAY); - if (recentsWindowManager == null || taskAnimationManager == null) { - return; - } - if (taskAnimationManager.isRecentsAnimationRunning()) { - RecentsState recentsState = - recentsWindowManager.getStateManager().getState(); - if (!recentsState.isRecentsViewVisible()) { - // If we're in a state where the recents view is visible, we can ignore - // the recents animation running check, otherwise we should wait for - // the recents animation to end. - return; - } - } - if (recentsWindowManager.isStarted()) { - recentsWindowManager.getStateManager().goToState(RecentsState.HOME, true); - } - } - }; - private OverviewCommandHelper mOverviewCommandHelper; private OverviewComponentObserver mOverviewComponentObserver; private InputConsumerController mInputConsumer; - private PerDisplayRepository<RecentsAnimationDeviceState> mDeviceStateRepository; - private PerDisplayRepository<TaskAnimationManager> mTaskAnimationManagerRepository; + private RecentsAnimationDeviceState mDeviceState; private @NonNull InputConsumer mUncheckedConsumer = InputConsumer.DEFAULT_NO_OP; - private @NonNull InputConsumer mConsumer = InputConsumer.DEFAULT_NO_OP; private Choreographer mMainChoreographer; private boolean mUserUnlocked = false; @@ -710,28 +568,20 @@ public class TouchInteractionService extends Service { private InputEventReceiver mInputEventReceiver; private TaskbarManager mTaskbarManager; - private ActionCornerHandler mActionCornerHandler; private Function<GestureState, AnimatedFloat> mSwipeUpProxyProvider = i -> null; private AllAppsActionManager mAllAppsActionManager; private ActiveTrackpadList mTrackpadsConnected; - private final SparseArray<NavigationMode> mGestureStartNavMode = new SparseArray<>(); + private NavigationMode mGestureStartNavMode = null; private DesktopAppLaunchTransitionManager mDesktopAppLaunchTransitionManager; - private DisplayController.DisplayInfoChangeListener mNavigationModeChangeListener; - private DisplayController.DisplayInfoChangeListener mNightModeChangeListener; + private DisplayController.DisplayInfoChangeListener mDisplayInfoChangeListener; - PerDisplayRepository<RecentsWindowManager> mRecentsWindowManagerRepository; + private RecentsDisplayModel mRecentsDisplayModel; private SystemDecorationChangeObserver mSystemDecorationChangeObserver; - private DisplayRepository mDisplayRepository; - - private QuickstepKeyGestureEventsManager mQuickstepKeyGestureEventsHandler; - private DisplaysWithDecorationsRepositoryCompat mDisplaysWithDecorationsRepositoryCompat; - private CoroutineDispatcher mCoroutineDispatcher; - @Override public void onCreate() { super.onCreate(); @@ -739,20 +589,13 @@ public class TouchInteractionService extends Service { + " instance=" + System.identityHashCode(this)); // Initialize anything here that is needed in direct boot mode. // Everything else should be initialized in onUserUnlocked() below. - mDisplayRepository = LauncherDisplayRepository.getINSTANCE().get(this); - mDeviceStateRepository = RecentsAnimationDeviceState.REPOSITORY_INSTANCE.get(this); - mTaskAnimationManagerRepository = TaskAnimationManager.REPOSITORY_INSTANCE.get(this); mMainChoreographer = Choreographer.getInstance(); - mRotationTouchHelperRepository = RotationTouchHelper.REPOSITORY_INSTANCE.get(this); - mRecentsWindowManagerRepository = RecentsWindowManager.REPOSITORY_INSTANCE.get(this); + mDeviceState = RecentsAnimationDeviceState.INSTANCE.get(this); + mRotationTouchHelper = RotationTouchHelper.INSTANCE.get(this); + mRecentsDisplayModel = RecentsDisplayModel.getINSTANCE().get(this); mSystemDecorationChangeObserver = SystemDecorationChangeObserver.getINSTANCE().get(this); - mQuickstepKeyGestureEventsHandler = new QuickstepKeyGestureEventsManager(this); - mCoroutineDispatcher = ProductionDispatchers.INSTANCE.getMain(); - mDisplaysWithDecorationsRepositoryCompat = - LauncherDisplaysWithDecorationsRepositoryCompat.getINSTANCE().get(this); - mAllAppsActionManager = new AllAppsActionManager(this, UI_HELPER_EXECUTOR, - mQuickstepKeyGestureEventsHandler, - () -> mTaskbarManager.createAllAppsPendingIntent()); + mAllAppsActionManager = new AllAppsActionManager( + this, UI_HELPER_EXECUTOR, this::createAllAppsPendingIntent); mTrackpadsConnected = new ActiveTrackpadList(this, () -> { if (mInputMonitorCompat != null && !mTrackpadsConnected.isEmpty()) { // Don't destroy and reinitialize input monitor due to trackpad @@ -762,10 +605,8 @@ public class TouchInteractionService extends Service { initInputMonitor("onTrackpadConnected()"); }); - mTaskbarManager = new TaskbarManagerImplWrapper( - new TaskbarManagerImpl(this, mAllAppsActionManager, mNavCallbacks, - mRecentsWindowManagerRepository, mDisplaysWithDecorationsRepositoryCompat, - mCoroutineDispatcher)); + mTaskbarManager = new TaskbarManager(this, mAllAppsActionManager, mNavCallbacks, + mRecentsDisplayModel); mDesktopAppLaunchTransitionManager = new DesktopAppLaunchTransitionManager(this, SystemUiProxy.INSTANCE.get(this)); mDesktopAppLaunchTransitionManager.registerTransitions(); @@ -773,14 +614,8 @@ public class TouchInteractionService extends Service { // Call runOnUserUnlocked() before any other callbacks to ensure everything is initialized. LockedUserState.get(this).runOnUserUnlocked(mUserUnlockedRunnable); - // Assume that the navigation mode changes for all displays at once. - mNavigationModeChangeListener = - mDeviceStateRepository.get(DEFAULT_DISPLAY).addDisplayInfoChangeCallback( - CHANGE_NAVIGATION_MODE, this::onNavigationModeChanged); - // Assume that the night mode changes for all displays at once. - mNightModeChangeListener = - mDeviceStateRepository.get(DEFAULT_DISPLAY).addDisplayInfoChangeCallback( - CHANGE_NIGHT_MODE, this::onNightModeChanged); + mDisplayInfoChangeListener = + mDeviceState.addNavigationModeChangedCallback(this::onNavigationModeChanged); ScreenOnTracker.INSTANCE.get(this).addListener(mScreenOnListener); } @@ -824,22 +659,21 @@ public class TouchInteractionService extends Service { private void initInputMonitor(String reason) { disposeEventHandlers("Initializing input monitor due to: " + reason); - RecentsAnimationDeviceState deviceState = mDeviceStateRepository.get(DEFAULT_DISPLAY); - if (deviceState.isButtonNavMode() - && !deviceState.supportsAssistantGestureInButtonNav() + + if (mDeviceState.isButtonNavMode() + && !mDeviceState.supportsAssistantGestureInButtonNav() && (mTrackpadsConnected.isEmpty())) { return; } if (ENABLE_GESTURE_NAV_ON_CONNECTED_DISPLAYS.isTrue()) { - mInputMonitorDisplayModel = new InputMonitorDisplayModel( - this, mSystemDecorationChangeObserver); + mInputMonitorDisplayModel = new InputMonitorDisplayModel(this); } else { mInputMonitorCompat = new InputMonitorCompat("swipe-up", DEFAULT_DISPLAY); mInputEventReceiver = mInputMonitorCompat.getInputReceiver(Looper.getMainLooper(), mMainChoreographer, this::onInputEvent); } - mRotationTouchHelperRepository.get(DEFAULT_DISPLAY).updateGestureTouchRegions(); + mRotationTouchHelper.updateGestureTouchRegions(); } /** @@ -849,9 +683,6 @@ public class TouchInteractionService extends Service { initInputMonitor("onNavigationModeChanged()"); resetHomeBounceSeenOnQuickstepEnabledFirstTime(); } - private void onNightModeChanged() { - ActivityPreloadUtil.preloadOverviewForTIS(this, false /* fromInit */); - } @UiThread public void onUserUnlocked() { @@ -859,15 +690,13 @@ public class TouchInteractionService extends Service { + " instance=" + System.identityHashCode(this)); mOverviewComponentObserver = OverviewComponentObserver.INSTANCE.get(this); mOverviewCommandHelper = new OverviewCommandHelper(this, - mOverviewComponentObserver, mDisplayRepository, mTaskbarManager, - mTaskAnimationManagerRepository); - mActionCornerHandler = LauncherComponentProvider.get( - this).getActionCornerHandlerFactory().create(mOverviewCommandHelper); + mOverviewComponentObserver, mRecentsDisplayModel, + SystemUiProxy.INSTANCE.get(this).getFocusState(), mTaskbarManager); mUserUnlocked = true; mInputConsumer.registerInputConsumer(); - mDeviceStateRepository.forEach(/* createIfAbsent= */ true, deviceState -> - onSystemUiFlagsChanged(deviceState.getSysuiStateFlags(), - deviceState.getDisplayId())); + for (int displayId : mDeviceState.getDisplaysWithSysUIState()) { + onSystemUiFlagsChanged(mDeviceState.getSystemUiStateFlags(displayId), displayId); + } onAssistantVisibilityChanged(); // Initialize the task tracker @@ -881,8 +710,6 @@ public class TouchInteractionService extends Service { onOverviewTargetChanged(mOverviewComponentObserver.isHomeAndOverviewSame()); mTaskbarManager.onUserUnlocked(); - mQuickstepKeyGestureEventsHandler.registerOverviewKeyGestureEvent( - createOverviewGestureHandler()); } public OverviewCommandHelper getOverviewCommandHelper() { @@ -890,8 +717,7 @@ public class TouchInteractionService extends Service { } private void resetHomeBounceSeenOnQuickstepEnabledFirstTime() { - if (!LockedUserState.get(this).isUserUnlocked() || mDeviceStateRepository.get( - DEFAULT_DISPLAY).isButtonNavMode()) { + if (!LockedUserState.get(this).isUserUnlocked() || mDeviceState.isButtonNavMode()) { // Skip if not yet unlocked (can't read user shared prefs) or if the current navigation // mode doesn't have gestures return; @@ -908,6 +734,8 @@ public class TouchInteractionService extends Service { private void onOverviewTargetChanged(boolean isHomeAndOverviewSame) { mAllAppsActionManager.setHomeAndOverviewSame(isHomeAndOverviewSame); + // TODO (b/399089118): how will this work with per-display Taskbars? Is using the + // default-display container ok? RecentsViewContainer newOverviewContainer = mOverviewComponentObserver.getContainerInterface( DEFAULT_DISPLAY).getCreatedContainer(); @@ -919,34 +747,34 @@ public class TouchInteractionService extends Service { mTaskbarManager.setRecentsViewContainer(newOverviewContainer); } } - if (RecentsWindowFlags.getEnableOverviewInWindow()) { - mRecentsWindowManagerRepository.forEach( - /* createIfAbsent= */ false, RecentsWindowManager::cleanupRecentsWindow); - if (isHomeAndOverviewSame) { - TaskStackChangeListeners.getInstance().unregisterTaskStackListener( - mHomeIntentStartedListener); - } else { - TaskStackChangeListeners.getInstance().registerTaskStackListener( - mHomeIntentStartedListener); + } + + private PendingIntent createAllAppsPendingIntent() { + return new PendingIntent(new IIntentSender.Stub() { + @Override + public void send(int code, Intent intent, String resolvedType, + IBinder allowlistToken, IIntentReceiver finishedReceiver, + String requiredPermission, Bundle options) { + MAIN_EXECUTOR.execute(() -> mTaskbarManager.toggleAllAppsSearch()); } - } + }); } @UiThread private void onSystemUiFlagsChanged(@SystemUiStateFlags long lastSysUIFlags, int displayId) { if (LockedUserState.get(this).isUserUnlocked()) { - RecentsAnimationDeviceState deviceState = mDeviceStateRepository.get(displayId); - TaskAnimationManager taskAnimationManager = mTaskAnimationManagerRepository.get( - displayId); - if (deviceState != null && taskAnimationManager != null) { - long systemUiStateFlags = deviceState.getSysuiStateFlags(); - mTaskbarManager.onSystemUiFlagsChanged(systemUiStateFlags, displayId); - if (displayId == DEFAULT_DISPLAY) { - // The following don't care about non-default displays, at least for now. If - // they - // ever will, they should be taken care of. - SystemUiProxy.INSTANCE.get(this).setLastSystemUiStateFlags(systemUiStateFlags); - mOverviewComponentObserver.setHomeDisabled(deviceState.isHomeDisabled()); + long systemUiStateFlags = mDeviceState.getSystemUiStateFlags(displayId); + mTaskbarManager.onSystemUiFlagsChanged(systemUiStateFlags, displayId); + if (displayId == DEFAULT_DISPLAY) { + // The following don't care about non-default displays, at least for now. If they + // ever will, they should be taken care of. + SystemUiProxy.INSTANCE.get(this).setLastSystemUiStateFlags(systemUiStateFlags); + mOverviewComponentObserver.setHomeDisabled(mDeviceState.isHomeDisabled()); + // TODO b/399371607 - Propagate to taskAnimationManager once overview is multi + // display. + TaskAnimationManager taskAnimationManager = + mRecentsDisplayModel.getTaskAnimationManager(displayId); + if (taskAnimationManager != null) { taskAnimationManager.onSystemUiFlagsChanged(lastSysUIFlags, systemUiStateFlags); } } @@ -958,7 +786,7 @@ public class TouchInteractionService extends Service { if (LockedUserState.get(this).isUserUnlocked()) { mOverviewComponentObserver.getContainerInterface( DEFAULT_DISPLAY).onAssistantVisibilityChanged( - mDeviceStateRepository.get(DEFAULT_DISPLAY).getAssistantVisibility()); + mDeviceState.getAssistantVisibility()); } } @@ -968,7 +796,6 @@ public class TouchInteractionService extends Service { + " instance=" + System.identityHashCode(this)); if (LockedUserState.get(this).isUserUnlocked()) { mInputConsumer.unregisterInputConsumer(); - mQuickstepKeyGestureEventsHandler.onDestroy(); mOverviewComponentObserver.setHomeDisabled(false); mOverviewComponentObserver.removeOverviewChangeListener(mOverviewChangeListener); } @@ -983,16 +810,9 @@ public class TouchInteractionService extends Service { mDesktopAppLaunchTransitionManager.unregisterTransitions(); } mDesktopAppLaunchTransitionManager = null; - mDeviceStateRepository.get(DEFAULT_DISPLAY).removeDisplayInfoChangeListener( - mNavigationModeChangeListener); - mDeviceStateRepository.get(DEFAULT_DISPLAY).removeDisplayInfoChangeListener( - mNightModeChangeListener); + mDeviceState.removeDisplayInfoChangeListener(mDisplayInfoChangeListener); LockedUserState.get(this).removeOnUserUnlockedRunnable(mUserUnlockedRunnable); ScreenOnTracker.INSTANCE.get(this).removeListener(mScreenOnListener); - if (RecentsWindowFlags.getEnableOverviewInWindow()) { - TaskStackChangeListeners.getInstance().unregisterTaskStackListener( - mHomeIntentStartedListener); - } super.onDestroy(); } @@ -1030,26 +850,13 @@ public class TouchInteractionService extends Service { return; } - RecentsAnimationDeviceState deviceState = mDeviceStateRepository.get(displayId); - if (deviceState == null) { - Log.d(TAG, "RecentsAnimationDeviceState not available for displayId " + displayId); - return; - } - - RotationTouchHelper rotationTouchHelper = mRotationTouchHelperRepository.get(displayId); - if (rotationTouchHelper == null) { - Log.d(TAG, "RotationTouchHelper not available for displayId " + displayId); - return; - } - - NavigationMode currentNavMode = deviceState.getMode(); - NavigationMode gestureStartNavMode = mGestureStartNavMode.get(displayId); - if (gestureStartNavMode != null && gestureStartNavMode != currentNavMode) { + NavigationMode currentNavMode = mDeviceState.getMode(); + if (mGestureStartNavMode != null && mGestureStartNavMode != currentNavMode) { ActiveGestureProtoLogProxy.logOnInputEventNavModeSwitched( - displayId, gestureStartNavMode.name(), currentNavMode.name()); + displayId, mGestureStartNavMode.name(), currentNavMode.name()); event.setAction(ACTION_CANCEL); - } else if (deviceState.isButtonNavMode() - && !deviceState.supportsAssistantGestureInButtonNav() + } else if (mDeviceState.isButtonNavMode() + && !mDeviceState.supportsAssistantGestureInButtonNav() && !isTrackpadMotionEvent(event)) { ActiveGestureProtoLogProxy.logOnInputEventThreeButtonNav(displayId); return; @@ -1061,29 +868,32 @@ public class TouchInteractionService extends Service { boolean isHoverActionWithoutConsumer = enableCursorHoverStates() && isHoverActionWithoutConsumer(event); - TaskAnimationManager taskAnimationManager = mTaskAnimationManagerRepository.get(displayId); + TaskAnimationManager taskAnimationManager = mRecentsDisplayModel.getTaskAnimationManager( + displayId); if (taskAnimationManager == null) { Log.e(TAG, "TaskAnimationManager not available for displayId " + displayId); ActiveGestureProtoLogProxy.logOnTaskAnimationManagerNotAvailable(displayId); return; } - if (action == ACTION_DOWN || isHoverActionWithoutConsumer) { - taskAnimationManager.notifyNewGestureStart(); - } - if (taskAnimationManager.shouldIgnoreMotionEvents()) { + if (enableHandleDelayedGestureCallbacks()) { if (action == ACTION_DOWN || isHoverActionWithoutConsumer) { - ActiveGestureProtoLogProxy.logOnInputIgnoringFollowingEvents(displayId); + taskAnimationManager.notifyNewGestureStart(); + } + if (taskAnimationManager.shouldIgnoreMotionEvents()) { + if (action == ACTION_DOWN || isHoverActionWithoutConsumer) { + ActiveGestureProtoLogProxy.logOnInputIgnoringFollowingEvents(displayId); + } + return; } - return; } InputMonitorCompat inputMonitorCompat = getInputMonitorCompat(displayId); InputEventReceiver inputEventReceiver = getInputEventReceiver(displayId); if (action == ACTION_DOWN || isHoverActionWithoutConsumer) { - mGestureStartNavMode.set(displayId, currentNavMode); + mGestureStartNavMode = currentNavMode; } else if (action == ACTION_UP || action == ACTION_CANCEL) { - mGestureStartNavMode.delete(displayId); + mGestureStartNavMode = null; } SafeCloseable traceToken = TraceHelper.INSTANCE.allowIpcs("TIS.onInputEvent"); @@ -1091,26 +901,26 @@ public class TouchInteractionService extends Service { CompoundString reasonString = action == ACTION_DOWN ? CompoundString.newEmptyString() : CompoundString.NO_OP; if (action == ACTION_DOWN || isHoverActionWithoutConsumer) { - rotationTouchHelper.setOrientationTransformIfNeeded(event); + mRotationTouchHelper.setOrientationTransformIfNeeded(event); - boolean isOneHandedModeActive = deviceState.isOneHandedModeActive(); - boolean isInSwipeUpTouchRegion = rotationTouchHelper.isInSwipeUpTouchRegion(event); + boolean isOneHandedModeActive = mDeviceState.isOneHandedModeActive(); + boolean isInSwipeUpTouchRegion = mRotationTouchHelper.isInSwipeUpTouchRegion(event); TaskbarActivityContext tac = mTaskbarManager.getCurrentActivityContext(); BubbleControllers bubbleControllers = tac != null ? tac.getBubbleControllers() : null; boolean isOnBubbles = bubbleControllers != null && BubbleBarInputConsumer.isEventOnBubbles(tac, event); - if (deviceState.isButtonNavMode() - && deviceState.supportsAssistantGestureInButtonNav()) { + if (mDeviceState.isButtonNavMode() + && mDeviceState.supportsAssistantGestureInButtonNav()) { reasonString.append("in three button mode which supports Assistant gesture"); // Consume gesture event for Assistant (all other gestures should do nothing). - if (deviceState.canTriggerAssistantAction(event)) { + if (mDeviceState.canTriggerAssistantAction(event)) { reasonString.append(" and event can trigger assistant action, " + "consuming gesture for assistant action"); mGestureState = createGestureState( displayId, mGestureState, getTrackpadGestureType(event)); mUncheckedConsumer = tryCreateAssistantInputConsumer( this, - deviceState, + mDeviceState, inputMonitorCompat, mGestureState, event); @@ -1136,7 +946,7 @@ public class TouchInteractionService extends Service { this, mUserUnlocked, mOverviewComponentObserver, - deviceState, + mDeviceState, prevGestureState, mGestureState, taskAnimationManager, @@ -1147,12 +957,11 @@ public class TouchInteractionService extends Service { mTaskbarManager, mSwipeUpProxyProvider, mOverviewCommandHelper, - event, - rotationTouchHelper); + event); mUncheckedConsumer = mConsumer; - } else if ((deviceState.isFullyGesturalNavMode() || isTrackpadMultiFingerSwipe(event)) - && deviceState.canTriggerAssistantAction(event)) { - reasonString.append(deviceState.isFullyGesturalNavMode() + } else if ((mDeviceState.isFullyGesturalNavMode() || isTrackpadMultiFingerSwipe(event)) + && mDeviceState.canTriggerAssistantAction(event)) { + reasonString.append(mDeviceState.isFullyGesturalNavMode() ? "using fully gestural nav and event can trigger assistant action, " + "consuming gesture for assistant action" : "event is a trackpad multi-finger swipe and event can trigger assistant " @@ -1163,15 +972,15 @@ public class TouchInteractionService extends Service { // should not interrupt it. QuickSwitch assumes that interruption can only // happen if the next gesture is also quick switch. mUncheckedConsumer = tryCreateAssistantInputConsumer( - this, deviceState, inputMonitorCompat, mGestureState, event); - } else if (deviceState.canTriggerOneHandedAction(event)) { + this, mDeviceState, inputMonitorCompat, mGestureState, event); + } else if (mDeviceState.canTriggerOneHandedAction(event)) { reasonString.append("event can trigger one-handed action, " + "consuming gesture for one-handed action"); // Consume gesture event for triggering one handed feature. mUncheckedConsumer = new OneHandedModeInputConsumer( this, displayId, - deviceState, + mDeviceState, InputConsumer.createNoOpInputConsumer(displayId), inputMonitorCompat); } else { mUncheckedConsumer = InputConsumer.createNoOpInputConsumer(displayId); @@ -1180,7 +989,7 @@ public class TouchInteractionService extends Service { // Other events if (mUncheckedConsumer.getType() != InputConsumer.TYPE_NO_OP) { // Only transform the event if we are handling it in a proper consumer - rotationTouchHelper.setOrientationTransformIfNeeded(event); + mRotationTouchHelper.setOrientationTransformIfNeeded(event); } } @@ -1258,7 +1067,8 @@ public class TouchInteractionService extends Service { GestureState.TrackpadGestureType trackpadGestureType) { final GestureState gestureState; TopTaskTracker.CachedTaskInfo taskInfo; - TaskAnimationManager taskAnimationManager = mTaskAnimationManagerRepository.get(displayId); + TaskAnimationManager taskAnimationManager = mRecentsDisplayModel.getTaskAnimationManager( + displayId); if (taskAnimationManager != null && taskAnimationManager.isRecentsAnimationRunning()) { gestureState = new GestureState( mOverviewComponentObserver, displayId, ActiveGestureLog.INSTANCE.getLogId()); @@ -1283,10 +1093,7 @@ public class TouchInteractionService extends Service { // Log initial state for the gesture. ActiveGestureProtoLogProxy.logRunningTaskPackage(taskInfo.getPackageName()); - RecentsAnimationDeviceState deviceState = mDeviceStateRepository.get(displayId); - if (deviceState != null) { - ActiveGestureProtoLogProxy.logSysuiStateFlags(deviceState.getSystemUiStateString()); - } + ActiveGestureProtoLogProxy.logSysuiStateFlags(mDeviceState.getSystemUiStateString()); return gestureState; } @@ -1321,7 +1128,7 @@ public class TouchInteractionService extends Service { mConsumer = mUncheckedConsumer = InputConsumerUtils.getDefaultInputConsumer( displayId, mUserUnlocked, - mTaskAnimationManagerRepository.get(displayId), + mRecentsDisplayModel.getTaskAnimationManager(displayId), mTaskbarManager, CompoundString.NO_OP); mGestureState = DEFAULT_STATE; @@ -1358,8 +1165,7 @@ public class TouchInteractionService extends Service { int newGesturalHeight = ResourceUtils.getNavbarSize( ResourceUtils.NAVBAR_BOTTOM_GESTURE_SIZE, getApplicationContext().getResources()); - mDeviceStateRepository.forEach(/* createIfAbsent= */ true, deviceState -> - deviceState.onOneHandedModeChanged(newGesturalHeight)); + mDeviceState.onOneHandedModeChanged(newGesturalHeight); return; } @@ -1376,6 +1182,7 @@ public class TouchInteractionService extends Service { if (LockedUserState.get(this).isUserUnlocked()) { PluginManagerWrapper.INSTANCE.get(getBaseContext()).dump(pw); } + mDeviceState.dump(pw); if (mOverviewComponentObserver != null) { mOverviewComponentObserver.dump(pw); } @@ -1394,30 +1201,22 @@ public class TouchInteractionService extends Service { mInputMonitorDisplayModel.dump("\t", pw); } DisplayController.INSTANCE.get(this).dump(pw); - mDisplayRepository.getDisplayIds().getValue().forEach(displayId -> { + for (RecentsDisplayResource resource : mRecentsDisplayModel.getActiveDisplayResources()) { + int displayId = resource.getDisplayId(); pw.println(String.format(Locale.ENGLISH, "TouchState (displayId %d):", displayId)); - RecentsAnimationDeviceState deviceState = mDeviceStateRepository.get(displayId); - if (deviceState != null) { - deviceState.dump(pw); - } - BaseContainerInterface<?, ?> containerInterface = + RecentsViewContainer createdOverviewContainer = mOverviewComponentObserver == null ? null : mOverviewComponentObserver.getContainerInterface( - displayId); - RecentsViewContainer createdOverviewContainer = containerInterface == null ? null : - containerInterface.getCreatedContainer(); - boolean resumed = containerInterface != null && containerInterface.isResumed(); + displayId).getCreatedContainer(); + boolean resumed = mOverviewComponentObserver != null + && mOverviewComponentObserver.getContainerInterface(displayId).isResumed(); pw.println("\tcreatedOverviewActivity=" + createdOverviewContainer); pw.println("\tresumed=" + resumed); if (createdOverviewContainer != null) { createdOverviewContainer.getDeviceProfile().dump(this, "", pw); } - TaskAnimationManager taskAnimationManager = mTaskAnimationManagerRepository.get( - displayId); - if (taskAnimationManager != null) { - taskAnimationManager.dump("\t", pw); - } - }); + resource.getTaskAnimationManager().dump("\t", pw); + } pw.println("\tmConsumer=" + mConsumer.getName()); ActiveGestureLog.INSTANCE.dump("", pw); RecentsModel.INSTANCE.get(this).dump("", pw); @@ -1430,95 +1229,40 @@ public class TouchInteractionService extends Service { TopTaskTracker.INSTANCE.get(this).dump(pw); } - private @Nullable AbsSwipeUpHandler<?, ?, ?> createLauncherSwipeHandler( + private AbsSwipeUpHandler createLauncherSwipeHandler( GestureState gestureState, long touchTimeMs) { - int displayId = gestureState.getDisplayId(); - TaskAnimationManager taskAnimationManager = mTaskAnimationManagerRepository.get(displayId); - RecentsAnimationDeviceState deviceState = mDeviceStateRepository.get(displayId); - RotationTouchHelper rotationTouchHelper = mRotationTouchHelperRepository.get(displayId); - if (taskAnimationManager == null || deviceState == null || rotationTouchHelper == null) { - Log.d(TAG, "displayId " + displayId + " not valid"); - return null; - } - return new LauncherSwipeHandlerV2(this, taskAnimationManager, deviceState, - rotationTouchHelper, gestureState, touchTimeMs, - taskAnimationManager.isRecentsAnimationRunning(), + TaskAnimationManager taskAnimationManager = mRecentsDisplayModel.getTaskAnimationManager( + gestureState.getDisplayId()); + return new LauncherSwipeHandlerV2(this, taskAnimationManager, + gestureState, touchTimeMs, taskAnimationManager.isRecentsAnimationRunning(), mInputConsumer, MSDLPlayerWrapper.INSTANCE.get(this)); } - private @Nullable AbsSwipeUpHandler<?, ?, ?> createFallbackSwipeHandler( + private AbsSwipeUpHandler createFallbackSwipeHandler( GestureState gestureState, long touchTimeMs) { - int displayId = gestureState.getDisplayId(); - TaskAnimationManager taskAnimationManager = mTaskAnimationManagerRepository.get(displayId); - RecentsAnimationDeviceState deviceState = mDeviceStateRepository.get(displayId); - RotationTouchHelper rotationTouchHelper = mRotationTouchHelperRepository.get(displayId); - if (taskAnimationManager == null || deviceState == null || rotationTouchHelper == null) { - Log.d(TAG, "displayId " + displayId + " not valid"); - return null; - } - return new FallbackSwipeHandler(this, taskAnimationManager, deviceState, - rotationTouchHelper, gestureState, touchTimeMs, - taskAnimationManager.isRecentsAnimationRunning(), + TaskAnimationManager taskAnimationManager = mRecentsDisplayModel.getTaskAnimationManager( + gestureState.getDisplayId()); + return new FallbackSwipeHandler(this, taskAnimationManager, + gestureState, touchTimeMs, taskAnimationManager.isRecentsAnimationRunning(), mInputConsumer, MSDLPlayerWrapper.INSTANCE.get(this)); } - private @Nullable AbsSwipeUpHandler<?, ?, ?> createRecentsWindowSwipeHandler( + private AbsSwipeUpHandler createRecentsWindowSwipeHandler( GestureState gestureState, long touchTimeMs) { - int displayId = gestureState.getDisplayId(); - TaskAnimationManager taskAnimationManager = mTaskAnimationManagerRepository.get(displayId); - RecentsAnimationDeviceState deviceState = mDeviceStateRepository.get(displayId); - RotationTouchHelper rotationTouchHelper = mRotationTouchHelperRepository.get(displayId); - RecentsWindowManager recentsWindowManager = mRecentsWindowManagerRepository.get(displayId); - if (taskAnimationManager == null || deviceState == null || rotationTouchHelper == null - || recentsWindowManager == null) { - Log.d(TAG, "displayId " + displayId + " not valid"); - return null; - } - return new RecentsWindowSwipeHandler(recentsWindowManager, - taskAnimationManager, deviceState, - rotationTouchHelper, recentsWindowManager, gestureState, touchTimeMs, - taskAnimationManager.isRecentsAnimationRunning(), + TaskAnimationManager taskAnimationManager = mRecentsDisplayModel.getTaskAnimationManager( + gestureState.getDisplayId()); + return new RecentsWindowSwipeHandler(this, taskAnimationManager, + gestureState, touchTimeMs, taskAnimationManager.isRecentsAnimationRunning(), mInputConsumer, MSDLPlayerWrapper.INSTANCE.get(this)); } - private int focusedDisplayIdForOverviewOnConnectedDisplays() { - return enableOverviewOnConnectedDisplays() - ? SystemUiProxy.INSTANCE.get(this).getFocusState().getFocusedDisplayId() - : DEFAULT_DISPLAY; - } - - private int focusedDisplayIdForAltTabKqsOnConnectedDisplays() { - return enableAltTabKqsOnConnectedDisplays.isTrue() - ? SystemUiProxy.INSTANCE.get(this).getFocusState().getFocusedDisplayId() - : DEFAULT_DISPLAY; - } - - - private OverviewGestureHandler createOverviewGestureHandler() { - return new OverviewGestureHandler() { - @Override - public void showOverview(@NonNull OverviewType type) { - mTISBinder.onOverviewShown(/* triggeredFromAltTab= */ type == OverviewType.ALT_TAB); - } - - @Override - public void hideOverview(@NonNull OverviewType type) { - mTISBinder.onOverviewHidden( - /* triggeredFromAltTab= */ type == OverviewType.ALT_TAB, - /* triggeredFromHomeKey= */ type == OverviewType.HOME); - } - }; - } - /** * Helper class that keeps track of external displays and prepares input monitors for each. */ private class InputMonitorDisplayModel extends DisplayModel<InputMonitorResource> { - private InputMonitorDisplayModel( - Context context, SystemDecorationChangeObserver systemDecorationChangeObserver) { - super(context, systemDecorationChangeObserver, mDisplaysWithDecorationsRepositoryCompat, - mCoroutineDispatcher); + private InputMonitorDisplayModel(Context context) { + super(context); initializeDisplays(); } diff --git a/quickstep/src/com/android/quickstep/dagger/QuickstepBaseAppComponent.java b/quickstep/src/com/android/quickstep/dagger/QuickstepBaseAppComponent.java index 4ffcef5075..23b8a82b2a 100644 --- a/quickstep/src/com/android/quickstep/dagger/QuickstepBaseAppComponent.java +++ b/quickstep/src/com/android/quickstep/dagger/QuickstepBaseAppComponent.java @@ -16,17 +16,10 @@ package com.android.quickstep.dagger; -import com.android.app.displaylib.DisplayRepository; -import com.android.app.displaylib.DisplaysWithDecorationsRepositoryCompat; -import com.android.app.displaylib.PerDisplayRepository; import com.android.launcher3.dagger.LauncherAppComponent; import com.android.launcher3.dagger.LauncherBaseAppComponent; import com.android.launcher3.model.WellbeingModel; import com.android.launcher3.statehandlers.DesktopVisibilityController; -import com.android.launcher3.taskbar.TaskbarModelCallbacksFactory; -import com.android.launcher3.taskbar.TaskbarViewCallbacksFactory; -import com.android.launcher3.taskbar.overlay.TaskbarOverlayContextFactory; -import com.android.quickstep.FallbackWindowInterface; import com.android.quickstep.OverviewComponentObserver; import com.android.quickstep.RecentsAnimationDeviceState; import com.android.quickstep.RecentsModel; @@ -34,16 +27,12 @@ import com.android.quickstep.RotationTouchHelper; import com.android.quickstep.SimpleOrientationTouchTransformer; import com.android.quickstep.SystemDecorationChangeObserver; import com.android.quickstep.SystemUiProxy; -import com.android.quickstep.TaskAnimationManager; import com.android.quickstep.TopTaskTracker; -import com.android.quickstep.actioncorner.ActionCornerHandler; -import com.android.quickstep.fallback.window.RecentsWindowManager; -import com.android.quickstep.inputconsumers.NavHandleLongPressHandler; +import com.android.quickstep.fallback.window.RecentsDisplayModel; import com.android.quickstep.logging.SettingsChangeLogger; import com.android.quickstep.util.AsyncClockEventDelegate; import com.android.quickstep.util.ContextualSearchHapticManager; import com.android.quickstep.util.ContextualSearchStateManager; -import com.android.quickstep.views.RecentsDismissUtils; /** * Launcher Quickstep base component for Dagger injection. @@ -61,47 +50,27 @@ public interface QuickstepBaseAppComponent extends LauncherBaseAppComponent { SystemUiProxy getSystemUiProxy(); + RecentsDisplayModel getRecentsDisplayModel(); + OverviewComponentObserver getOverviewComponentObserver(); DesktopVisibilityController getDesktopVisibilityController(); TopTaskTracker getTopTaskTracker(); + RotationTouchHelper getRotationTouchHelper(); + ContextualSearchHapticManager getContextualSearchHapticManager(); ContextualSearchStateManager getContextualSearchStateManager(); - PerDisplayRepository<RecentsAnimationDeviceState> getRecentsAnimationDeviceStateRepository(); - - PerDisplayRepository<TaskAnimationManager> getTaskAnimationManagerRepository(); - - PerDisplayRepository<RotationTouchHelper> getRotationTouchHelperRepository(); - - PerDisplayRepository<RecentsWindowManager> getRecentsWindowManagerRepository(); - - PerDisplayRepository<FallbackWindowInterface> getFallbackWindowInterfaceRepository(); + RecentsAnimationDeviceState getRecentsAnimationDeviceState(); RecentsModel getRecentsModel(); - RecentsDismissUtils.Factory getRecentsDismissUtilsFactory(); - SettingsChangeLogger getSettingsChangeLogger(); SimpleOrientationTouchTransformer getSimpleOrientationTouchTransformer(); SystemDecorationChangeObserver getSystemDecorationChangeObserver(); - - DisplayRepository getDisplayRepository(); - NavHandleLongPressHandler getNavHandleLongPressHandler(); - - /** Gets the factory to create a new ActionCornerHandlerFactory */ - ActionCornerHandler.Factory getActionCornerHandlerFactory(); - - DisplaysWithDecorationsRepositoryCompat getDisplaysWithDecorationsRepositoryCompat(); - - TaskbarModelCallbacksFactory getTaskbarModelCallbacksFactory(); - - TaskbarViewCallbacksFactory getTaskbarViewCallbacksFactory(); - - TaskbarOverlayContextFactory getTaskbarOverlayContextFactory(); } diff --git a/quickstep/src/com/android/quickstep/fallback/FallbackRecentsStateController.java b/quickstep/src/com/android/quickstep/fallback/FallbackRecentsStateController.java index ed03b36988..7db1813a90 100644 --- a/quickstep/src/com/android/quickstep/fallback/FallbackRecentsStateController.java +++ b/quickstep/src/com/android/quickstep/fallback/FallbackRecentsStateController.java @@ -19,7 +19,7 @@ import static com.android.app.animation.Interpolators.FINAL_FRAME; import static com.android.app.animation.Interpolators.INSTANT; import static com.android.app.animation.Interpolators.LINEAR; import static com.android.launcher3.Flags.enableDesktopExplodedView; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.launcher3.Flags.enableLargeDesktopWindowingTile; import static com.android.launcher3.states.StateAnimationConfig.ANIM_OVERVIEW_MODAL; import static com.android.launcher3.states.StateAnimationConfig.ANIM_OVERVIEW_SCALE; @@ -140,7 +140,7 @@ public class FallbackRecentsStateController implements StateHandler<RecentsState getOverviewInterpolator(state)); } - setter.setScrimColors(mRecentsViewContainer.getScrimView(), + setter.setViewBackgroundColor(mRecentsViewContainer.getScrimView(), state.getScrimColor(mRecentsViewContainer.asContext()), config.getInterpolator(ANIM_SCRIM_FADE, LINEAR)); if (isSplitSelectionState(state)) { diff --git a/quickstep/src/com/android/quickstep/fallback/FallbackRecentsView.java b/quickstep/src/com/android/quickstep/fallback/FallbackRecentsView.java index 7704684741..dc1cdde4bc 100644 --- a/quickstep/src/com/android/quickstep/fallback/FallbackRecentsView.java +++ b/quickstep/src/com/android/quickstep/fallback/FallbackRecentsView.java @@ -17,7 +17,7 @@ package com.android.quickstep.fallback; import static android.app.ActivityTaskManager.INVALID_TASK_ID; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.quickstep.GestureState.GestureEndTarget.RECENTS; import static com.android.quickstep.fallback.RecentsState.DEFAULT; import static com.android.quickstep.fallback.RecentsState.MODAL_TASK; @@ -41,9 +41,12 @@ import com.android.launcher3.statemanager.StateManager.StateListener; import com.android.launcher3.statemanager.StatefulContainer; import com.android.launcher3.util.SplitConfigurationOptions; import com.android.launcher3.util.SplitConfigurationOptions.SplitSelectSource; +import com.android.quickstep.BaseContainerInterface; +import com.android.quickstep.FallbackActivityInterface; import com.android.quickstep.GestureState; import com.android.quickstep.RemoteTargetGluer.RemoteTargetHandle; -import com.android.quickstep.fallback.window.RecentsWindowManager; +import com.android.quickstep.fallback.window.RecentsDisplayModel; +import com.android.quickstep.fallback.window.RecentsWindowFlags; import com.android.quickstep.util.GroupTask; import com.android.quickstep.util.SingleTask; import com.android.quickstep.util.SplitSelectStateController; @@ -77,14 +80,18 @@ public class FallbackRecentsView<CONTAINER_TYPE extends Context & RecentsViewCon mContainer.getStateManager().addStateListener(this); } + @Override + public BaseContainerInterface<RecentsState, ?> getContainerInterface(int displayId) { + return RecentsWindowFlags.Companion.getEnableOverviewInWindow() + ? RecentsDisplayModel.getINSTANCE().get(mContext) + .getFallbackWindowInterface(displayId) + : FallbackActivityInterface.INSTANCE; + } + @Override public void init(OverviewActionsView actionsView, SplitSelectStateController splitController, @Nullable DesktopRecentsTransitionController desktopRecentsTransitionController) { super.init(actionsView, splitController, desktopRecentsTransitionController); - if (mContainer instanceof RecentsWindowManager) { - // These will be set during the state transition to DEFAULT - return; - } setOverviewStateEnabled(true); setOverlayEnabled(true); } @@ -126,19 +133,18 @@ public class FallbackRecentsView<CONTAINER_TYPE extends Context & RecentsViewCon */ @Override public void onPrepareGestureEndAnimation( - AnimatorSet animatorSet, GestureState.GestureEndTarget endTarget, - RemoteTargetHandle[] remoteTargetHandles, boolean isHandlingAtomicEvent) { - super.onPrepareGestureEndAnimation(animatorSet, endTarget, remoteTargetHandles, - isHandlingAtomicEvent); - if (mHomeTask != null && endTarget == RECENTS) { - TaskView homeTaskView = getTaskViewByTaskId(mHomeTask.key.id); - if (homeTaskView != null) { - PendingAnimation pendingAnimation = new PendingAnimation(TASK_DISMISS_DURATION); - createTaskDismissAnimation(pendingAnimation, homeTaskView, true, false, + @Nullable AnimatorSet animatorSet, GestureState.GestureEndTarget endTarget, + RemoteTargetHandle[] remoteTargetHandles) { + super.onPrepareGestureEndAnimation(animatorSet, endTarget, remoteTargetHandles); + if (mHomeTask != null && endTarget == RECENTS && animatorSet != null) { + TaskView tv = getTaskViewByTaskId(mHomeTask.key.id); + if (tv != null) { + PendingAnimation pa = new PendingAnimation(TASK_DISMISS_DURATION); + createTaskDismissAnimation(pa, tv, true, false, TASK_DISMISS_DURATION, false /* dismissingForSplitSelection*/, - null /* gridEndData */); - pendingAnimation.addEndListener(e -> setCurrentTask(-1)); - AnimatorPlaybackController controller = pendingAnimation.createPlaybackController(); + false /* isExpressiveDismiss */); + pa.addEndListener(e -> setCurrentTask(-1)); + AnimatorPlaybackController controller = pa.createPlaybackController(); controller.dispatchOnStart(); animatorSet.play(controller.getAnimationPlayer()); } @@ -172,24 +178,26 @@ public class FallbackRecentsView<CONTAINER_TYPE extends Context & RecentsViewCon } @Override - protected boolean shouldAvoidAddingStubTaskView(GroupedTaskInfo groupedTaskInfo) { + protected boolean shouldAddStubTaskView(GroupedTaskInfo groupedTaskInfo) { if (!groupedTaskInfo.isBaseType(GroupedTaskInfo.TYPE_FULLSCREEN)) { // can't be in split screen w/ home task - return super.shouldAvoidAddingStubTaskView(groupedTaskInfo); + return super.shouldAddStubTaskView(groupedTaskInfo); } - if (mHomeTask != null && groupedTaskInfo.containsTask(mHomeTask.key.id) && !hasTaskViews() - && mLoadPlanEverApplied) { + Task runningTask = Task.from(groupedTaskInfo.getTaskInfo1()); + if (mHomeTask != null && runningTask != null + && mHomeTask.key.id == runningTask.key.id + && !hasTaskViews() && mLoadPlanEverApplied) { // Do not add a stub task if we are running over home with empty recents, so that we // show the empty recents message instead of showing a stub task and later removing it. - // Ignore empty task signal if [applyLoadPlan] has never run. - return true; + // Ignore empty task signal if applyLoadPlan has never run. + return false; } - return super.shouldAvoidAddingStubTaskView(groupedTaskInfo); + return super.shouldAddStubTaskView(groupedTaskInfo); } @Override - protected void applyLoadPlan(List<GroupTask> taskGroups, int taskListChangeId) { + protected void applyLoadPlan(List<GroupTask> taskGroups) { // When quick-switching on 3p-launcher, we add a "stub" tile corresponding to Launcher // as well. This tile is never shown as we have setCurrentTaskHidden, but allows use to // track the index of the next task appropriately, as if we are switching on any other app. @@ -213,7 +221,7 @@ public class FallbackRecentsView<CONTAINER_TYPE extends Context & RecentsViewCon taskGroups = newList; } } - super.applyLoadPlan(taskGroups, taskListChangeId); + super.applyLoadPlan(taskGroups); } @Override @@ -263,8 +271,6 @@ public class FallbackRecentsView<CONTAINER_TYPE extends Context & RecentsViewCon resetModalVisuals(); } - resetShareUIState(); - // Set border after select mode changes to avoid showing border during state transition if (!toState.isRecentsViewVisible() || toState == MODAL_TASK) { setTaskBorderEnabled(false); @@ -301,7 +307,7 @@ public class FallbackRecentsView<CONTAINER_TYPE extends Context & RecentsViewCon } // disabling this so app icons aren't drawn on top of recent tasks. - if (isOverlayEnabled && !(mContainer instanceof RecentsWindowManager)) { + if (isOverlayEnabled && !RecentsWindowFlags.Companion.getEnableOverviewInWindow()) { mBlurUtils.setDrawLiveTileBelowRecents(true); } } @@ -333,4 +339,10 @@ public class FallbackRecentsView<CONTAINER_TYPE extends Context & RecentsViewCon public boolean canLaunchFullscreenTask() { return !mContainer.isInState(OVERVIEW_SPLIT_SELECT); } + + /** Returns if app pairs are supported in this launcher. */ + @Override + public boolean supportsAppPairs() { + return false; + } } diff --git a/quickstep/src/com/android/quickstep/fallback/RecentsDragLayer.java b/quickstep/src/com/android/quickstep/fallback/RecentsDragLayer.java index 4239d57c84..5d4f1db1a9 100644 --- a/quickstep/src/com/android/quickstep/fallback/RecentsDragLayer.java +++ b/quickstep/src/com/android/quickstep/fallback/RecentsDragLayer.java @@ -16,7 +16,6 @@ package com.android.quickstep.fallback; import static com.android.launcher3.Flags.enableExpressiveDismissTaskMotion; -import static com.android.quickstep.fallback.RecentsState.MODAL_TASK; import android.content.Context; import android.util.AttributeSet; @@ -46,7 +45,7 @@ public class RecentsDragLayer<T extends Context & RecentsViewContainer @Override public boolean isRecentsModal() { - return mContainer.isInState(MODAL_TASK); + return false; } }; @@ -56,7 +55,6 @@ public class RecentsDragLayer<T extends Context & RecentsViewContainer @Override public void recreateControllers() { - super.recreateControllers(); mControllers = enableExpressiveDismissTaskMotion() ? new TouchController[]{ new TaskViewLaunchTouchController<>(mContainer, diff --git a/quickstep/src/com/android/quickstep/fallback/RecentsState.java b/quickstep/src/com/android/quickstep/fallback/RecentsState.java index 29fbc53d27..bbaf7182d0 100644 --- a/quickstep/src/com/android/quickstep/fallback/RecentsState.java +++ b/quickstep/src/com/android/quickstep/fallback/RecentsState.java @@ -16,10 +16,11 @@ package com.android.quickstep.fallback; import static com.android.launcher3.Flags.enableDesktopExplodedView; +import static com.android.launcher3.Flags.enableDesktopWindowingCarouselDetach; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.launcher3.LauncherState.FLAG_CLOSE_POPUPS; import static com.android.launcher3.uioverrides.states.BackgroundAppState.getOverviewScaleAndOffsetForBackgroundState; import static com.android.launcher3.uioverrides.states.OverviewModalTaskState.getOverviewScaleAndOffsetForModalState; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; import android.content.Context; import android.graphics.Color; @@ -30,7 +31,6 @@ import com.android.launcher3.statemanager.BaseState; import com.android.quickstep.RecentsActivity; import com.android.launcher3.util.Themes; import com.android.launcher3.views.ActivityContext; -import com.android.launcher3.views.ScrimColors; import com.android.quickstep.views.RecentsViewContainer; import app.lawnchair.theme.color.tokens.ColorTokens; @@ -49,8 +49,9 @@ public class RecentsState implements BaseState<RecentsState> { private static final int FLAG_LIVE_TILE = BaseState.getFlag(6); private static final int FLAG_RECENTS_VIEW_VISIBLE = BaseState.getFlag(7); private static final int FLAG_TASK_THUMBNAIL_SPLASH = BaseState.getFlag(8); - private static final int FLAG_ADD_DESK_BUTTON = BaseState.getFlag(9); - private static final int FLAG_SHOW_EXPLODED_DESKTOP_VIEW = BaseState.getFlag(10); + private static final int FLAG_DETACH_DESKTOP_CAROUSEL = BaseState.getFlag(9); + private static final int FLAG_ADD_DESK_BUTTON = BaseState.getFlag(10); + private static final int FLAG_SHOW_EXPLODED_DESKTOP_VIEW = BaseState.getFlag(11); public static final int DEFAULT_STATE_ORDINAL = 0; public static final int MODAL_TASK_ORDINAL = 1; @@ -71,7 +72,8 @@ public class RecentsState implements BaseState<RecentsState> { | FLAG_SHOW_EXPLODED_DESKTOP_VIEW); public static final RecentsState BACKGROUND_APP = new BackgroundAppState(BACKGROUND_APP_ORDINAL, FLAG_DISABLE_RESTORE | FLAG_NON_INTERACTIVE | FLAG_FULL_SCREEN - | FLAG_RECENTS_VIEW_VISIBLE | FLAG_TASK_THUMBNAIL_SPLASH); + | FLAG_RECENTS_VIEW_VISIBLE | FLAG_TASK_THUMBNAIL_SPLASH + | FLAG_DETACH_DESKTOP_CAROUSEL); public static final RecentsState HOME = new RecentsState(HOME_STATE_ORDINAL, 0); public static final RecentsState BG_LAUNCHER = new LauncherState(BG_LAUNCHER_ORDINAL, 0); public static final RecentsState OVERVIEW_SPLIT_SELECT = new RecentsState( @@ -96,17 +98,16 @@ public class RecentsState implements BaseState<RecentsState> { sAllStates[id] = this; } - @Override public String toString() { return switch (ordinal) { - case DEFAULT_STATE_ORDINAL -> "RECENTS_DEFAULT"; - case MODAL_TASK_ORDINAL -> "RECENTS_MODAL_TASK"; - case BACKGROUND_APP_ORDINAL -> "RECENTS_BACKGROUND_APP"; - case HOME_STATE_ORDINAL -> "RECENTS_HOME"; - case BG_LAUNCHER_ORDINAL -> "RECENTS_BG_LAUNCHER"; - case OVERVIEW_SPLIT_SELECT_ORDINAL -> "RECENTS_SPLIT_SELECT"; - default -> "RECENTS Unknown Ordinal-" + ordinal; + case DEFAULT_STATE_ORDINAL -> "DEFAULT"; + case MODAL_TASK_ORDINAL -> "MODAL_TASK"; + case BACKGROUND_APP_ORDINAL -> "BACKGROUND_APP"; + case HOME_STATE_ORDINAL -> "HOME"; + case BG_LAUNCHER_ORDINAL -> "BG_LAUNCHER"; + case OVERVIEW_SPLIT_SELECT_ORDINAL -> "SPLIT_SELECT"; + default -> "Unknown Ordinal-" + ordinal; }; } @@ -126,7 +127,8 @@ public class RecentsState implements BaseState<RecentsState> { } /** - * For this state, how modal should over view been shown. 0 modalness means all tasks drawn, + * For this state, how modal should over view been shown. 0 modalness means all + * tasks drawn, * 1 modalness means the current task is show on its own. */ public float getOverviewModalness() { @@ -168,12 +170,10 @@ public class RecentsState implements BaseState<RecentsState> { /** * For this state, what color scrim should be drawn behind overview. */ - public ScrimColors getScrimColor(Context context) { - return new ScrimColors( - /* backgroundColor */ hasFlag(FLAG_SCRIM) - ? Themes.getAttrColor(context, R.attr.overviewScrimColor) - : Color.TRANSPARENT, - /* foregroundColor */ Color.TRANSPARENT); + public int getScrimColor(Context context) { + return hasFlag(FLAG_SCRIM) + ? Themes.getAttrColor(context, R.attr.overviewScrimColor) + : Color.TRANSPARENT; } public float[] getOverviewScaleAndOffset(RecentsViewContainer container) { @@ -184,7 +184,7 @@ public class RecentsState implements BaseState<RecentsState> { * For this state, whether tasks should layout as a grid rather than a list. */ public boolean displayOverviewTasksAsGrid(DeviceProfile deviceProfile) { - return hasFlag(FLAG_SHOW_AS_GRID) && deviceProfile.getDeviceProperties().isTablet(); + return hasFlag(FLAG_SHOW_AS_GRID) && deviceProfile.isTablet; } @Override @@ -192,6 +192,11 @@ public class RecentsState implements BaseState<RecentsState> { return hasFlag(FLAG_TASK_THUMBNAIL_SPLASH); } + @Override + public boolean detachDesktopCarousel() { + return hasFlag(FLAG_DETACH_DESKTOP_CAROUSEL) && enableDesktopWindowingCarouselDetach(); + } + @Override public boolean showExplodedDesktopView() { return hasFlag(FLAG_SHOW_EXPLODED_DESKTOP_VIEW) && enableDesktopExplodedView(); diff --git a/quickstep/src/com/android/quickstep/fallback/RecentsStateUtils.kt b/quickstep/src/com/android/quickstep/fallback/RecentsStateUtils.kt index 259ff17bbd..fec8a809b9 100644 --- a/quickstep/src/com/android/quickstep/fallback/RecentsStateUtils.kt +++ b/quickstep/src/com/android/quickstep/fallback/RecentsStateUtils.kt @@ -30,15 +30,4 @@ fun RecentsState.toLauncherState(): LauncherState { } } -fun LauncherState.hasEquivalentRecentsState(): Boolean { - return when (this) { - LauncherState.OVERVIEW, - LauncherState.OVERVIEW_MODAL_TASK, - LauncherState.BACKGROUND_APP, - LauncherState.NORMAL, - LauncherState.OVERVIEW_SPLIT_SELECT -> true - else -> false - } -} - fun RecentsState.toLauncherStateOrdinal(): Int = toLauncherState().ordinal diff --git a/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowFlags.kt b/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowFlags.kt index a3fd23ea79..331ea32920 100644 --- a/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowFlags.kt +++ b/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowFlags.kt @@ -16,34 +16,22 @@ package com.android.quickstep.fallback.window -//import android.window.DesktopExperienceFlags.DesktopExperienceFlag -import com.android.launcher3.Flags - -// Lawnchair-TODO-Flags: @JvmField -// val enableLauncherOverviewInWindow: DesktopExperienceFlag = -// DesktopExperienceFlag( -// Flags::enableLauncherOverviewInWindow, -// false, -// Flags.FLAG_ENABLE_LAUNCHER_OVERVIEW_IN_WINDOW, -// ) +// Lawnchair-TODO-Flags: DesktopModeFlag = +// DesktopModeFlag(Flags::enableLauncherOverwineInWindow, false) // Impl: var.isTrue() -object RecentsWindowFlags { - @JvmField - val enableLauncherOverviewInWindow = false +class RecentsWindowFlags { + companion object { + @JvmField + val enableLauncherOverviewInWindow = false - @JvmField - val enableFallbackOverviewInWindow = false + @JvmField + val enableFallbackOverviewInWindow = false - @JvmField - val enableOverviewOnConnectedDisplays = false + @JvmField + val enableOverviewOnConnectedDisplays = false - @JvmStatic - val enableOverviewInWindow - get() = false - - @JvmStatic - val enableDesktopMenuOnSecondaryDisplay: Boolean - get() = false - - @JvmStatic fun enableOverviewOnConnectedDisplays() = enableOverviewOnConnectedDisplays + @JvmStatic + val enableOverviewInWindow + get() = false + } } diff --git a/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowManager.kt b/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowManager.kt index 2d7035f191..bc08af2da6 100644 --- a/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowManager.kt +++ b/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowManager.kt @@ -23,7 +23,6 @@ import android.content.Context import android.content.LocusId import android.content.res.Configuration import android.os.Bundle -import android.view.Display.DEFAULT_DISPLAY import android.view.KeyEvent import android.view.LayoutInflater import android.view.MotionEvent @@ -32,18 +31,14 @@ import android.view.RemoteAnimationTarget import android.view.SurfaceControl import android.view.View import android.view.WindowManager +import android.view.WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY import android.window.RemoteTransition -import com.android.app.displaylib.PerDisplayInstanceProviderWithTeardown -import com.android.app.displaylib.PerDisplayRepository import com.android.launcher3.AbstractFloatingView import com.android.launcher3.BaseActivity import com.android.launcher3.LauncherAnimationRunner import com.android.launcher3.LauncherAnimationRunner.RemoteAnimationFactory import com.android.launcher3.R import com.android.launcher3.compat.AccessibilityManagerCompat -import com.android.launcher3.dagger.LauncherAppSingleton -import com.android.launcher3.dagger.WindowContext -import com.android.launcher3.desktop.DesktopRecentsTransitionController import com.android.launcher3.statemanager.StateManager import com.android.launcher3.statemanager.StateManager.AtomicAnimationFactory import com.android.launcher3.statemanager.StatefulContainer @@ -51,19 +46,12 @@ import com.android.launcher3.taskbar.TaskbarUIController import com.android.launcher3.testing.TestLogging import com.android.launcher3.testing.shared.TestProtocol.SEQUENCE_MAIN import com.android.launcher3.util.ContextTracker -import com.android.launcher3.util.DaggerSingletonObject import com.android.launcher3.util.DisplayController import com.android.launcher3.util.Executors import com.android.launcher3.util.RunnableList -import com.android.launcher3.util.ScreenOnTracker -import com.android.launcher3.util.ScreenOnTracker.ScreenOnListener import com.android.launcher3.util.SystemUiController -import com.android.launcher3.util.WallpaperColorHints import com.android.launcher3.views.BaseDragLayer import com.android.launcher3.views.ScrimView -import com.android.quickstep.BaseContainerInterface -import com.android.quickstep.FallbackWindowInterface -import com.android.quickstep.HomeVisibilityState import com.android.quickstep.OverviewComponentObserver import com.android.quickstep.RecentsAnimationCallbacks import com.android.quickstep.RecentsAnimationCallbacks.RecentsAnimationListener @@ -71,7 +59,6 @@ import com.android.quickstep.RecentsAnimationController import com.android.quickstep.RecentsModel import com.android.quickstep.RemoteAnimationTargets import com.android.quickstep.SystemUiProxy -import com.android.quickstep.dagger.QuickstepBaseAppComponent import com.android.quickstep.fallback.FallbackRecentsStateController import com.android.quickstep.fallback.FallbackRecentsView import com.android.quickstep.fallback.RecentsDragLayer @@ -80,8 +67,6 @@ import com.android.quickstep.fallback.RecentsState.BACKGROUND_APP import com.android.quickstep.fallback.RecentsState.BG_LAUNCHER import com.android.quickstep.fallback.RecentsState.DEFAULT import com.android.quickstep.fallback.RecentsState.HOME -import com.android.quickstep.fallback.RecentsState.MODAL_TASK -import com.android.quickstep.fallback.RecentsState.OVERVIEW_SPLIT_SELECT import com.android.quickstep.fallback.toLauncherStateOrdinal import com.android.quickstep.util.RecentsAtomicAnimationFactory import com.android.quickstep.util.RecentsWindowProtoLogProxy @@ -91,10 +76,8 @@ import com.android.quickstep.views.OverviewActionsView import com.android.quickstep.views.RecentsView import com.android.quickstep.views.RecentsViewContainer import com.android.systemui.shared.recents.model.ThumbnailData -import dagger.assisted.Assisted -import dagger.assisted.AssistedFactory -import dagger.assisted.AssistedInject -import javax.inject.Inject +import com.android.systemui.shared.system.TaskStackChangeListener +import com.android.systemui.shared.system.TaskStackChangeListeners /** * Class that will manage RecentsView lifecycle within a window and interface correctly where @@ -105,17 +88,8 @@ import javax.inject.Inject * To add new protologs, see [RecentsWindowProtoLogProxy]. To enable logging to logcat, see * [QuickstepProtoLogGroup.Constants.DEBUG_RECENTS_WINDOW] */ -class RecentsWindowManager -@AssistedInject -constructor( - @Assisted windowContext: Context, - @Assisted private val fallbackWindowInterface: FallbackWindowInterface, - wallpaperColorHints: WallpaperColorHints, - private val systemUiProxy: SystemUiProxy, - private val recentsModel: RecentsModel, - private val screenOnTracker: ScreenOnTracker, -) : - RecentsWindowContext(windowContext, wallpaperColorHints.hints), +class RecentsWindowManager(context: Context, wallpaperColorHints: Int) : + RecentsWindowContext(context, wallpaperColorHints), RecentsViewContainer, StatefulContainer<RecentsState> { @@ -123,17 +97,11 @@ constructor( private const val HOME_APPEAR_DURATION: Long = 250 private const val TAG = "RecentsWindowManager" - @JvmField - val REPOSITORY_INSTANCE = - DaggerSingletonObject<PerDisplayRepository<RecentsWindowManager>>( - QuickstepBaseAppComponent::getRecentsWindowManagerRepository - ) - class RecentsWindowTracker : ContextTracker<RecentsWindowManager?>() { override fun isHomeStarted(context: RecentsWindowManager?): Boolean { // if we need to change this block to use context in some way, we will need to // refactor RecentsWindowTracker to be an instance (instead of a singleton) managed - // by PerDisplayRepository. Otherwise bad things will occur. + // by RecentsDisplayModel. Otherwise bad things will occur. return true } } @@ -142,7 +110,9 @@ constructor( } protected var recentsView: FallbackRecentsView<RecentsWindowManager>? = null - private val windowManager: WindowManager = getSystemService(WindowManager::class.java)!! + private val windowContext: Context = createWindowContext(TYPE_APPLICATION_OVERLAY, null) + private val windowManager: WindowManager = + windowContext.getSystemService(WindowManager::class.java)!! private var layoutInflater: LayoutInflater = LayoutInflater.from(this).cloneInContext(this) private var stateManager: StateManager<RecentsState, RecentsWindowManager> = StateManager<RecentsState, RecentsWindowManager>(this, RecentsState.BG_LAUNCHER) @@ -156,17 +126,7 @@ constructor( private var callbacks: RecentsAnimationCallbacks? = null private var taskbarUIController: TaskbarUIController? = null - private val tisBindHelper: TISBindHelper = TISBindHelper(this) {} - private val splitSelectStateController: SplitSelectStateController = - SplitSelectStateController( - /* container= */ this, - stateManager, - /* depthController= */ null, - statsLogManager, - systemUiProxy, - recentsModel, - /* activityBackCallback= */ null, - ) + private var tisBindHelper: TISBindHelper = TISBindHelper(this) {} // Callback array that corresponds to events defined in @ActivityEvent private val eventCallbacks = @@ -212,11 +172,10 @@ constructor( TestLogging.recordEvent(SEQUENCE_MAIN, "onBackInvoked") } - private val homeVisibilityState = SystemUiProxy.INSTANCE.get(this).homeVisibilityState - private val homeVisibilityListener = - object : HomeVisibilityState.VisibilityChangeListener { - override fun onHomeVisibilityChanged(isVisible: Boolean) { - if (isShowing() && !isVisible && isInState(DEFAULT)) { + private val taskStackChangeListener = + object : TaskStackChangeListener { + override fun onTaskMovedToFront(taskId: Int) { + if ((isShowing() && isInState(DEFAULT))) { // handling state where we end recents animation by swiping livetile away // TODO: animate this switch. cleanupRecentsWindow() @@ -235,15 +194,8 @@ constructor( } } - private val screenChangedListener = ScreenOnListener { isOn -> - if (!isOn) { - cleanupRecentsWindow() - } - } - init { - fallbackWindowInterface.setRecentsWindowManager(this) - homeVisibilityState.addListener(homeVisibilityListener) + TaskStackChangeListeners.getInstance().registerTaskStackListener(taskStackChangeListener) } override fun handleConfigurationChanged(configuration: Configuration?) { @@ -258,16 +210,12 @@ constructor( override fun destroy() { super.destroy() - fallbackWindowInterface.setRecentsWindowManager(null) - tisBindHelper.onDestroy() - Executors.MAIN_EXECUTOR.execute { - onViewDestroyed() - cleanupRecentsWindow() - callbacks?.removeListener(recentsAnimationListener) - homeVisibilityState.removeListener(homeVisibilityListener) - recentsWindowTracker.onContextDestroyed(this) - recentsView?.destroy() - } + Executors.MAIN_EXECUTOR.execute { onViewDestroyed() } + cleanupRecentsWindow() + TaskStackChangeListeners.getInstance().unregisterTaskStackListener(taskStackChangeListener) + callbacks?.removeListener(recentsAnimationListener) + recentsWindowTracker.onContextDestroyed(this) + recentsView?.destroy() } fun startRecentsWindow(callbacks: RecentsAnimationCallbacks? = null) { @@ -275,51 +223,45 @@ constructor( if (isShowing()) { return } - theme.applyStyle(overviewBlurStyleResId, true) if (windowView == null) { windowView = layoutInflater.inflate(R.layout.fallback_recents_activity, null) } - windowManager.addView(windowView, windowLayoutParams) - windowView?.let { - actionsView = it.findViewById(R.id.overview_actions_view) - recentsView = - it.findViewById<FallbackRecentsView<RecentsWindowManager>?>(R.id.overview_panel) - ?.apply { - init( - actionsView, - splitSelectStateController, - DesktopRecentsTransitionController( - stateManager, - systemUiProxy, - iApplicationThread, - /* depthController= */ null, - ), - ) - } - actionsView?.apply { - updateDimension(getDeviceProfile(), recentsView?.lastComputedTaskSize) - updateVerticalMargin(DisplayController.getNavigationMode(this@RecentsWindowManager)) - } - scrimView = it.findViewById(R.id.scrim_view) - dragLayer = it.findViewById(R.id.drag_layer) + windowView + ?.findOnBackInvokedDispatcher() + ?.registerSystemOnBackInvokedCallback(onBackInvokedCallback) - it.findOnBackInvokedDispatcher() - ?.registerSystemOnBackInvokedCallback(onBackInvokedCallback) + windowView?.systemUiVisibility = + (View.SYSTEM_UI_FLAG_LAYOUT_STABLE or + View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or + View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION) - it.systemUiVisibility = - (View.SYSTEM_UI_FLAG_LAYOUT_STABLE or - View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or - View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION) - } + recentsView = windowView?.findViewById(R.id.overview_panel) + actionsView = windowView?.findViewById(R.id.overview_actions_view) + scrimView = windowView?.findViewById(R.id.scrim_view) + val systemUiProxy = SystemUiProxy.INSTANCE[this] + val splitSelectStateController = + SplitSelectStateController( + this, + getStateManager(), + null, /* depthController */ + statsLogManager, + systemUiProxy, + RecentsModel.INSTANCE[this], + null, /*activityBackCallback*/ + ) + recentsView?.init(actionsView, splitSelectStateController, null) + dragLayer = windowView?.findViewById(R.id.drag_layer) + + actionsView?.updateDimension(getDeviceProfile(), recentsView?.lastComputedTaskSize) + actionsView?.updateVerticalMargin(DisplayController.getNavigationMode(this)) systemUiController = SystemUiController(windowView) recentsWindowTracker.handleCreate(this) this.callbacks = callbacks callbacks?.addListener(recentsAnimationListener) - screenOnTracker.addListener(screenChangedListener) onViewCreated() } @@ -330,12 +272,6 @@ constructor( fun startHome(finishRecentsAnimation: Boolean) { val recentsView: RecentsView<*, *> = getOverviewPanel() - // Don't go to home on connected displays - if (displayId != DEFAULT_DISPLAY) { - recentsView.runningTaskView?.launchWithAnimation() - return - } - if (!finishRecentsAnimation) { recentsView.switchToScreenshot /* onFinishRunnable= */ {} startHomeInternal() @@ -347,7 +283,6 @@ constructor( } private fun startHomeInternal() { - val displayId = displayId val runner = LauncherAnimationRunner(mainThreadHandler, animationToHomeFactory, true) val options = ActivityOptions.makeRemoteAnimation( @@ -358,21 +293,17 @@ constructor( "StartHomeFromRecents", ), ) - options.launchDisplayId = displayId - OverviewComponentObserver.startHomeIntentSafely(this, options.toBundle(), TAG, displayId) + OverviewComponentObserver.startHomeIntentSafely(this, options.toBundle(), TAG) stateManager.moveToRestState() } - fun cleanupRecentsWindow() { + private fun cleanupRecentsWindow() { RecentsWindowProtoLogProxy.logCleanup(isShowing()) if (isShowing()) { - AbstractFloatingView.closeAllOpenViews(this, /* animate= */ false) windowManager.removeViewImmediate(windowView) } stateManager.moveToRestState() callbacks?.removeListener(recentsAnimationListener) - callbacks = null - screenOnTracker.removeListener(screenChangedListener) } private fun isShowing(): Boolean { @@ -391,9 +322,7 @@ constructor( override fun canStartHomeSafely(): Boolean { val overviewCommandHelper = tisBindHelper.overviewCommandHelper - return overviewCommandHelper == null || - overviewCommandHelper.canStartHomeSafely() || - displayId != DEFAULT_DISPLAY + return overviewCommandHelper == null || overviewCommandHelper.canStartHomeSafely() } override fun setTaskbarUIController(taskbarUIController: TaskbarUIController?) { @@ -413,7 +342,7 @@ constructor( } override fun shouldAnimateStateChange(): Boolean { - return false + return true } override fun isInState(state: RecentsState?): Boolean { @@ -428,20 +357,12 @@ constructor( override fun onStateSetEnd(state: RecentsState) { super.onStateSetEnd(state) RecentsWindowProtoLogProxy.logOnStateSetEnd(state.toString()) - if (!state.isRecentsViewVisible) { + if (state == HOME || state == BG_LAUNCHER) { cleanupRecentsWindow() } AccessibilityManagerCompat.sendStateEventToTest(baseContext, state.toLauncherStateOrdinal()) } - override fun onRepeatStateSetAborted(state: RecentsState) { - super.onRepeatStateSetAborted(state) - RecentsWindowProtoLogProxy.logOnRepeatStateSetAborted(state.toString()) - if (!state.isRecentsViewVisible) { - cleanupRecentsWindow() - } - } - override fun getSystemUiController(): SystemUiController? { if (systemUiController == null) { systemUiController = SystemUiController(rootView) @@ -453,18 +374,10 @@ constructor( return scrimView } - override fun <T : BaseContainerInterface<*, *>?> getContainerInterface(): T { - return fallbackWindowInterface as T - } - override fun <T : View?> getOverviewPanel(): T { return recentsView as T } - override fun getSplitSelectStateController(): SplitSelectStateController { - return splitSelectStateController - } - override fun getRootView(): View? { return windowView } @@ -474,28 +387,13 @@ constructor( } override fun dispatchGenericMotionEvent(ev: MotionEvent?): Boolean { - return windowView?.dispatchGenericMotionEvent(ev) ?: false + // TODO(b/368610710) + return false } override fun dispatchKeyEvent(ev: KeyEvent?): Boolean { - return windowView?.dispatchKeyEvent(ev) ?: false - } - - override fun onRootViewDispatchKeyEvent(event: KeyEvent?): Boolean { - TestLogging.recordKeyEvent(SEQUENCE_MAIN, "Key event", event) - return if ( - event?.action != KeyEvent.ACTION_DOWN || event.keyCode != KeyEvent.KEYCODE_ESCAPE - ) { - super<RecentsWindowContext>.onRootViewDispatchKeyEvent(event) - } else if (isInState(OVERVIEW_SPLIT_SELECT) || isInState(MODAL_TASK)) { - stateManager.goToState(DEFAULT, true) - true - } else if (isInState(DEFAULT)) { - stateManager.goToState(HOME, true) - true - } else { - super<RecentsWindowContext>.onRootViewDispatchKeyEvent(event) - } + // TODO(b/368610710) + return false } override fun getActionsView(): OverviewActionsView<*>? { @@ -511,7 +409,7 @@ constructor( } override fun isStarted(): Boolean { - return isShowing() && stateManager.state.isRecentsViewVisible + return isShowing() && isInState(DEFAULT) } /** Adds a callback for the provided activity event */ @@ -549,37 +447,4 @@ constructor( override fun createAtomicAnimationFactory(): AtomicAnimationFactory<RecentsState?>? { return RecentsAtomicAnimationFactory<RecentsWindowManager, RecentsState>(this) } - - override fun getOverviewBlurStyleResId(): Int { - return R.style.OverviewBlurFallbackStyle - } - - @AssistedFactory - interface Factory { - /** Creates a new instance of [RecentsWindowManager] for a given [context]. */ - fun create( - @WindowContext context: Context, - fallbackWindowInterface: FallbackWindowInterface, - ): RecentsWindowManager - } -} - -@LauncherAppSingleton -class RecentsWindowManagerInstanceProvider -@Inject -constructor( - private val factory: RecentsWindowManager.Factory, - @WindowContext private val windowContextRepository: PerDisplayRepository<Context>, - private val fallbackWindowInterfaceRepository: PerDisplayRepository<FallbackWindowInterface>, -) : PerDisplayInstanceProviderWithTeardown<RecentsWindowManager> { - override fun createInstance(displayId: Int) = - windowContextRepository[displayId]?.let { windowContext -> - fallbackWindowInterfaceRepository[displayId]?.let { fallbackWindowInterface -> - factory.create(windowContext, fallbackWindowInterface) - } - } - - override fun destroyInstance(instance: RecentsWindowManager) { - instance.destroy() - } } diff --git a/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowSwipeHandler.java b/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowSwipeHandler.java index 2fd744f648..0d139b4e9f 100644 --- a/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowSwipeHandler.java +++ b/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowSwipeHandler.java @@ -20,18 +20,14 @@ import static android.content.Intent.EXTRA_COMPONENT_NAME; import static android.content.Intent.EXTRA_USER; import static com.android.app.animation.Interpolators.ACCELERATE; -import static com.android.launcher3.GestureNavContract.EXTRA_ENABLE_GESTURE_CONTRACT; import static com.android.launcher3.GestureNavContract.EXTRA_GESTURE_CONTRACT; import static com.android.launcher3.GestureNavContract.EXTRA_ICON_POSITION; import static com.android.launcher3.GestureNavContract.EXTRA_ICON_SURFACE; import static com.android.launcher3.GestureNavContract.EXTRA_ON_FINISH_CALLBACK; import static com.android.launcher3.GestureNavContract.EXTRA_REMOTE_CALLBACK; import static com.android.launcher3.anim.AnimatorListeners.forEndCallback; -import static com.android.quickstep.OverviewComponentObserver.startHomeIntentSafely; -import android.animation.Animator; import android.app.ActivityManager.RunningTaskInfo; -import android.app.ActivityOptions; import android.content.Context; import android.content.Intent; import android.graphics.Matrix; @@ -62,7 +58,6 @@ import androidx.annotation.UiThread; import com.android.launcher3.DeviceProfile; import com.android.launcher3.Utilities; import com.android.launcher3.anim.AnimatedFloat; -import com.android.launcher3.anim.AnimationSuccessListener; import com.android.launcher3.anim.AnimatorPlaybackController; import com.android.launcher3.anim.PendingAnimation; import com.android.launcher3.anim.SpringAnimationBuilder; @@ -72,9 +67,7 @@ import com.android.launcher3.util.MSDLPlayerWrapper; import com.android.quickstep.AbsSwipeUpHandler; import com.android.quickstep.GestureState; import com.android.quickstep.RecentsAnimationController; -import com.android.quickstep.RecentsAnimationDeviceState; import com.android.quickstep.RecentsAnimationTargets; -import com.android.quickstep.RotationTouchHelper; import com.android.quickstep.TaskAnimationManager; import com.android.quickstep.fallback.FallbackRecentsView; import com.android.quickstep.fallback.RecentsState; @@ -108,7 +101,7 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa private static StaticMessageReceiver sMessageReceiver = null; private FallbackHomeAnimationFactory mActiveAnimationFactory; - private final RecentsWindowManager mRecentsWindowManager; + private final RecentsDisplayModel mRecentsDisplayModel; private final boolean mRunningOverHome; @@ -118,14 +111,12 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa private boolean mAppCanEnterPip; public RecentsWindowSwipeHandler(Context context, TaskAnimationManager taskAnimationManager, - RecentsAnimationDeviceState deviceState, RotationTouchHelper rotationTouchHelper, - RecentsWindowManager recentsWindowManager, GestureState gestureState, long touchTimeMs, - boolean continuingLastGesture, InputConsumerController inputConsumer, - MSDLPlayerWrapper msdlPlayerWrapper) { - super(context, taskAnimationManager, deviceState, rotationTouchHelper, gestureState, - touchTimeMs, continuingLastGesture, inputConsumer, msdlPlayerWrapper); + GestureState gestureState, long touchTimeMs, boolean continuingLastGesture, + InputConsumerController inputConsumer, MSDLPlayerWrapper msdlPlayerWrapper) { + super(context, taskAnimationManager, gestureState, touchTimeMs, + continuingLastGesture, inputConsumer, msdlPlayerWrapper); - mRecentsWindowManager = recentsWindowManager; + mRecentsDisplayModel = RecentsDisplayModel.getINSTANCE().get(context); mRunningOverHome = mGestureState.getRunningTask() != null && mGestureState.getRunningTask().isHomeTask(); @@ -171,7 +162,11 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa boolean fromHomeToHome = mRunningOverHome && endTarget == GestureState.GestureEndTarget.HOME; if (fromHomeToHome) { - mRecentsWindowManager.startHome(/* finishRecentsAnimation= */ false); + RecentsWindowManager manager = + mRecentsDisplayModel.getRecentsWindowManager(mGestureState.getDisplayId()); + if (manager != null) { + manager.startHome(/* finishRecentsAnimation= */ false); + } } super.animateGestureEnd( startShift, @@ -187,11 +182,8 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa if (mActiveAnimationFactory != null) { return; } - setHomeScaleAndAlpha( - builder, - app, - mCurrentShift.value, - mRunningOverHome ? Utilities.boundToRange(1 - mCurrentShift.value, 0, 1) : 0f); + setHomeScaleAndAlpha(builder, app, mCurrentShift.value, + Utilities.boundToRange(1 - mCurrentShift.value, 0, 1)); } private void setHomeScaleAndAlpha(SurfaceProperties builder, @@ -219,21 +211,12 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa return new FallbackPipToHomeAnimationFactory(); } mActiveAnimationFactory = new FallbackHomeAnimationFactory(duration); - startHomeIntent( - mActiveAnimationFactory, runningTaskTarget, "RecentsWindowSwipeHandler-home"); - return mActiveAnimationFactory; - } - - private void startHomeIntent( - @Nullable FallbackHomeAnimationFactory gestureContractAnimationFactory, - @Nullable RemoteAnimationTarget runningTaskTarget, - @NonNull String reason) { - ActivityOptions options = ActivityOptions.makeCustomAnimation(mContext, 0, 0); + //todo: b/368410893 follow up on this as its intent focused and seems to cut immediately Intent intent = new Intent(mGestureState.getHomeIntent()); - if (gestureContractAnimationFactory != null && runningTaskTarget != null) { - gestureContractAnimationFactory.addGestureContract(intent, runningTaskTarget.taskInfo); + if (runningTaskTarget != null) { + mActiveAnimationFactory.addGestureContract(intent, runningTaskTarget.taskInfo); } - startHomeIntentSafely(mContext, intent, options.toBundle(), reason); + return mActiveAnimationFactory; } @Override @@ -245,14 +228,16 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa // the PiP task appearing. recentsCallback = () -> { callback.run(); - mRecentsWindowManager.startHome(); + RecentsWindowManager manager = + mRecentsDisplayModel.getRecentsWindowManager(mGestureState.getDisplayId()); + if (manager != null) { + manager.startHome(); + } }; } else { recentsCallback = callback; } - if (mRecentsView != null) { - mRecentsView.cleanupRemoteTargets(); - } + mRecentsView.cleanupRemoteTargets(); mRecentsAnimationController.finish( true /* toRecents */, recentsCallback, true /* sendUserLeaveHint */); } @@ -270,7 +255,7 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa @Override protected void notifyGestureAnimationStartToRecents() { if (mRunningOverHome) { - if (DisplayController.getNavigationMode(mContext).hasGestures && mRecentsView != null) { + if (DisplayController.getNavigationMode(mContext).hasGestures) { mRecentsView.onGestureAnimationStartOnHome( mGestureState.getRunningTask().getPlaceholderGroupedTaskInfo( /* splitTaskIds = */ null)); @@ -285,11 +270,9 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa @Override public AnimatorPlaybackController createActivityAnimationToHome() { // copied from {@link LauncherSwipeHandlerV2.LauncherHomeAnimationFactory} - long accuracy = 2 * Math.max(mDp.getDeviceProperties().getWidthPx(), mDp.getDeviceProperties().getHeightPx()); - return mRecentsWindowManager - .getStateManager() - .createAnimationToNewWorkspace( - RecentsState.HOME, accuracy, StateAnimationConfig.SKIP_ALL_ANIMATIONS); + long accuracy = 2 * Math.max(mDp.widthPx, mDp.heightPx); + return mContainer.getStateManager().createAnimationToNewWorkspace( + RecentsState.HOME, accuracy, StateAnimationConfig.SKIP_ALL_ANIMATIONS); } } @@ -336,18 +319,9 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa @NonNull @Override public AnimatorPlaybackController createActivityAnimationToHome() { - // TODO(b/377678992): Implement a new AtomicAnimationFactory for RecentsWindowManager PendingAnimation pa = new PendingAnimation(mDuration); pa.setFloat(mRecentsAlpha, AnimatedFloat.VALUE, 0, ACCELERATE); pa.setFloat(mHomeAlpha, AnimatedFloat.VALUE, 1, ACCELERATE); - pa.addListener(new AnimationSuccessListener() { - @Override - public void onAnimationSuccess(Animator animator) { - mRecentsWindowManager - .getStateManager() - .goToState(RecentsState.HOME, false); - } - }); return pa.createPlaybackController(); } @@ -361,7 +335,7 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa .setStartValue(mVerticalShiftForScale.value) .setEndValue(0) .setStartVelocity(-velocity / mTransitionDragLength) - .setMinimumVisibleChange(1f / mDp.getDeviceProperties().getHeightPx()) + .setMinimumVisibleChange(1f / mDp.heightPx) .setDampingRatio(0.6f) .setStiffness(800) .build(mVerticalShiftForScale, AnimatedFloat.VALUE) @@ -380,8 +354,6 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa FallbackHomeAnimationFactory.this ::updateHomeActivityTransformDuringHomeAnim)); - mTransformParams.setHomeBuilderProxy(FallbackHomeAnimationFactory.this - ::updateHomeActivityTransformDuringHomeAnim); mTransformParams.setTargetSet(mRecentsAnimationTargets); } @@ -464,7 +436,6 @@ public class RecentsWindowSwipeHandler extends AbsSwipeUpHandler<RecentsWindowMa } Bundle gestureNavContract = new Bundle(); - gestureNavContract.putBoolean(EXTRA_ENABLE_GESTURE_CONTRACT, !mIsSwipeForSplit); gestureNavContract.putParcelable(EXTRA_COMPONENT_NAME, key.getComponent()); gestureNavContract.putParcelable(EXTRA_USER, UserHandle.of(key.userId)); gestureNavContract.putParcelable( diff --git a/quickstep/src/com/android/quickstep/inputconsumers/AccessibilityInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/AccessibilityInputConsumer.java index 91435d92fd..365c80c5cd 100644 --- a/quickstep/src/com/android/quickstep/inputconsumers/AccessibilityInputConsumer.java +++ b/quickstep/src/com/android/quickstep/inputconsumers/AccessibilityInputConsumer.java @@ -61,8 +61,7 @@ public class AccessibilityInputConsumer extends DelegateInputConsumer { int displayId, RecentsAnimationDeviceState deviceState, InputConsumer delegate, - InputMonitorCompat inputMonitor, - RotationTouchHelper rotationTouchHelper) { + InputMonitorCompat inputMonitor) { super(displayId, delegate, inputMonitor); mContext = context; mVelocityTracker = VelocityTracker.obtain(); @@ -70,7 +69,7 @@ public class AccessibilityInputConsumer extends DelegateInputConsumer { .getDimension(R.dimen.accessibility_gesture_min_swipe_distance); mMinFlingVelocity = ViewConfiguration.get(context).getScaledMinimumFlingVelocity(); mDeviceState = deviceState; - mRotationHelper = rotationTouchHelper; + mRotationHelper = RotationTouchHelper.INSTANCE.get(context); mMotionPauseDetector = new MotionPauseDetector(context); } diff --git a/quickstep/src/com/android/quickstep/inputconsumers/DeviceLockedInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/DeviceLockedInputConsumer.java index 0489ef9856..e192702ba5 100644 --- a/quickstep/src/com/android/quickstep/inputconsumers/DeviceLockedInputConsumer.java +++ b/quickstep/src/com/android/quickstep/inputconsumers/DeviceLockedInputConsumer.java @@ -84,7 +84,7 @@ public class DeviceLockedInputConsumer implements InputConsumer, getFlagForIndex(1, "STATE_HANDLER_INVALIDATED"); private final Context mContext; - private final RotationTouchHelper mRotationTouchHelper; + private final RotationTouchHelper mRotationTouchHelper; private final TaskAnimationManager mTaskAnimationManager; private final GestureState mGestureState; private final float mTouchSlopSquared; @@ -113,8 +113,7 @@ public class DeviceLockedInputConsumer implements InputConsumer, RecentsAnimationDeviceState deviceState, TaskAnimationManager taskAnimationManager, GestureState gestureState, - InputMonitorCompat inputMonitorCompat, - RotationTouchHelper rotationTouchHelper) { + InputMonitorCompat inputMonitorCompat) { mContext = context; mTaskAnimationManager = taskAnimationManager; mGestureState = gestureState; @@ -123,7 +122,7 @@ public class DeviceLockedInputConsumer implements InputConsumer, mInputMonitorCompat = inputMonitorCompat; mMaxTranslationY = context.getResources().getDimensionPixelSize( R.dimen.device_locked_y_offset); - mRotationTouchHelper = rotationTouchHelper; + mRotationTouchHelper = RotationTouchHelper.INSTANCE.get(mContext); // Do not use DeviceProfile as the user data might be locked mDisplaySize = DisplayController.INSTANCE.get(context).getInfo().currentSize; diff --git a/quickstep/src/com/android/quickstep/inputconsumers/NavHandleLongPressHandler.java b/quickstep/src/com/android/quickstep/inputconsumers/NavHandleLongPressHandler.java index 5249b879c6..571a5468d1 100644 --- a/quickstep/src/com/android/quickstep/inputconsumers/NavHandleLongPressHandler.java +++ b/quickstep/src/com/android/quickstep/inputconsumers/NavHandleLongPressHandler.java @@ -30,11 +30,11 @@ import android.view.ViewConfiguration; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; -import com.android.launcher3.dagger.ApplicationContext; -import com.android.launcher3.dagger.LauncherComponentProvider; +import com.android.launcher3.R; import com.android.launcher3.logging.InstanceId; import com.android.launcher3.logging.InstanceIdSequence; import com.android.launcher3.logging.StatsLogManager; +import com.android.launcher3.util.ResourceBasedOverride; import com.android.launcher3.util.VibratorWrapper; import com.android.quickstep.DeviceConfigWrapper; import com.android.quickstep.NavHandle; @@ -43,41 +43,32 @@ import com.android.quickstep.util.ContextualSearchHapticManager; import com.android.quickstep.util.ContextualSearchInvoker; import com.android.quickstep.util.ContextualSearchStateManager; -import javax.inject.Inject; - /** * Class for extending nav handle long press behavior */ -public class NavHandleLongPressHandler { +public class NavHandleLongPressHandler implements ResourceBasedOverride { private static final String TAG = "NavHandleLongPressHandler"; + + protected final Context mContext; protected final VibratorWrapper mVibratorWrapper; protected final ContextualSearchHapticManager mContextualSearchHapticManager; protected final ContextualSearchInvoker mContextualSearchInvoker; protected final StatsLogManager mStatsLogManager; private boolean mPendingInvocation; - protected final TopTaskTracker mTopTaskTracker; - private final ContextualSearchStateManager mContextualSearchStateManager; - @Inject - public NavHandleLongPressHandler(@ApplicationContext Context context, - VibratorWrapper vibratorWrapper, - ContextualSearchHapticManager hapticManager, - TopTaskTracker topTaskTracker, - StatsLogManager.StatsLogManagerFactory logManagerFactory, - ContextualSearchStateManager contextualSearchStateManager, - ContextualSearchInvoker contextualSearchInvoker) { - mStatsLogManager = logManagerFactory.create(context); - mVibratorWrapper = vibratorWrapper; - mContextualSearchHapticManager = hapticManager; - mContextualSearchInvoker = contextualSearchInvoker; - mTopTaskTracker = topTaskTracker; - mContextualSearchStateManager = contextualSearchStateManager; + public NavHandleLongPressHandler(Context context) { + mContext = context; + mStatsLogManager = StatsLogManager.newInstance(context); + mVibratorWrapper = VibratorWrapper.INSTANCE.get(mContext); + mContextualSearchHapticManager = ContextualSearchHapticManager.INSTANCE.get(context); + mContextualSearchInvoker = new ContextualSearchInvoker(mContext); } /** Creates NavHandleLongPressHandler as specified by overrides */ public static NavHandleLongPressHandler newInstance(Context context) { - return LauncherComponentProvider.get(context).getNavHandleLongPressHandler(); + return Overrides.getObject(NavHandleLongPressHandler.class, context, + R.string.nav_handle_long_press_handler_class); } protected boolean isContextualSearchEntrypointEnabled(NavHandle navHandle) { @@ -124,7 +115,7 @@ public class NavHandleLongPressHandler { ENTRYPOINT_LONG_PRESS_NAV_HANDLE)) { Log.i(TAG, "Contextual Search invocation successful"); - String runningPackage = mTopTaskTracker.getCachedTopTask( + String runningPackage = TopTaskTracker.INSTANCE.get(mContext).getCachedTopTask( /* filterOnlyVisibleRecents */ true, displayId).getPackageName(); mStatsLogManager.logger().withPackageName(runningPackage) .log(LAUNCHER_LAUNCH_ASSISTANT_SUCCESSFUL_NAV_HANDLE); @@ -190,9 +181,11 @@ public class NavHandleLongPressHandler { /*isTouchDown*/ true, /*shrink*/true, /*durationMs*/200); } else { long longPressTimeout; - if (mContextualSearchStateManager.getLPNHDurationMillis().isPresent()) { + ContextualSearchStateManager contextualSearchStateManager = + ContextualSearchStateManager.INSTANCE.get(mContext); + if (contextualSearchStateManager.getLPNHDurationMillis().isPresent()) { longPressTimeout = - mContextualSearchStateManager.getLPNHDurationMillis().get().intValue(); + contextualSearchStateManager.getLPNHDurationMillis().get().intValue(); } else { longPressTimeout = ViewConfiguration.getLongPressTimeout(); } diff --git a/quickstep/src/com/android/quickstep/inputconsumers/OtherActivityInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/OtherActivityInputConsumer.java index 8de604e53b..5a1e5b5330 100644 --- a/quickstep/src/com/android/quickstep/inputconsumers/OtherActivityInputConsumer.java +++ b/quickstep/src/com/android/quickstep/inputconsumers/OtherActivityInputConsumer.java @@ -136,8 +136,7 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC InputMonitorCompat inputMonitorCompat, InputEventReceiver inputEventReceiver, boolean disableHorizontalSwipe, - Factory handlerFactory, - RotationTouchHelper rotationTouchHelper) { + Factory handlerFactory) { super(base); mDeviceState = deviceState; mNavBarPosition = mDeviceState.getNavBarPosition(); @@ -164,7 +163,7 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC mPassedPilferInputSlop = mPassedWindowMoveSlop = continuingPreviousGesture; mStartDisplacement = continuingPreviousGesture ? 0 : -mTouchSlop; mDisableHorizontalSwipe = !mPassedPilferInputSlop && disableHorizontalSwipe; - mRotationTouchHelper = rotationTouchHelper; + mRotationTouchHelper = RotationTouchHelper.INSTANCE.get(this); } @Override @@ -421,13 +420,6 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC private void startTouchTrackingForWindowAnimation(long touchTimeMs) { mInteractionHandler = mHandlerFactory.newHandler(mGestureState, touchTimeMs); - if (mInteractionHandler == null) { - // Can happen e.g. when a display is disconnected, so try to handle gracefully. - Log.d(TAG, "AbsSwipeUpHandler not available for displayId=$focusedDisplayId"); - ActiveGestureProtoLogProxy.logOnAbsSwipeUpHandlerNotAvailable( - mGestureState.getDisplayId()); - return; - } mInteractionHandler.setGestureEndCallback(this::onInteractionGestureFinished); mMotionPauseDetector.setOnMotionPauseListener(mInteractionHandler.getMotionPauseListener()); mMotionPauseDetector.setIsTrackpadGesture(mGestureState.isTrackpadGesture()); diff --git a/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java index 34ac98361b..4658cb0485 100644 --- a/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java +++ b/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java @@ -57,6 +57,7 @@ public class OverviewInputConsumer<S extends BaseState<S>, private final boolean mStartingInActivityBounds; private boolean mTargetHandledTouch; + private boolean mHasSetTouchModeForFirstDPadEvent; private boolean mIsWaitingForAttachToWindow; public OverviewInputConsumer( @@ -114,6 +115,9 @@ public class OverviewInputConsumer<S extends BaseState<S>, mInputMonitor.pilferPointers(); } } + if (mHasSetTouchModeForFirstDPadEvent) { + mContainer.getRootView().clearFocus(); + } } @Override @@ -134,14 +138,11 @@ public class OverviewInputConsumer<S extends BaseState<S>, break; case KeyEvent.KEYCODE_DPAD_LEFT: case KeyEvent.KEYCODE_DPAD_RIGHT: - case KeyEvent.KEYCODE_DPAD_UP: - case KeyEvent.KEYCODE_DPAD_DOWN: - case KeyEvent.KEYCODE_TAB: + if (mHasSetTouchModeForFirstDPadEvent) { + break; + } View viewRoot = mContainer.getRootView(); if (viewRoot.isAttachedToWindow()) { - if (!viewRoot.getViewRootImpl().getView().isInTouchMode()) { - break; - } setTouchModeChanged(viewRoot); break; } @@ -176,6 +177,7 @@ public class OverviewInputConsumer<S extends BaseState<S>, // to focused views, while focus can only be requested in // {@link View#requestFocusNoSearch(int, Rect)} when touch mode is false. To // note, here we launch overview with live tile. + mHasSetTouchModeForFirstDPadEvent = true; viewRoot.getViewRootImpl().touchModeChanged(false); } } diff --git a/quickstep/src/com/android/quickstep/inputconsumers/ProgressDelegateInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/ProgressDelegateInputConsumer.java index 182841278e..52aaa03aaa 100644 --- a/quickstep/src/com/android/quickstep/inputconsumers/ProgressDelegateInputConsumer.java +++ b/quickstep/src/com/android/quickstep/inputconsumers/ProgressDelegateInputConsumer.java @@ -175,7 +175,7 @@ public class ProgressDelegateInputConsumer implements InputConsumer, mRecentsAnimationController.finishController(endToRecents /* toRecents */, null /* callback */, false /* sendUserLeaveHint */); } else if (endToRecents) { - startHomeIntentSafely(mContext, null, TAG, getDisplayId()); + startHomeIntentSafely(mContext, null, TAG); } } diff --git a/quickstep/src/com/android/quickstep/inputconsumers/TaskbarUnstashInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/TaskbarUnstashInputConsumer.java index 5504239741..dbe6e14ec0 100644 --- a/quickstep/src/com/android/quickstep/inputconsumers/TaskbarUnstashInputConsumer.java +++ b/quickstep/src/com/android/quickstep/inputconsumers/TaskbarUnstashInputConsumer.java @@ -17,26 +17,20 @@ package com.android.quickstep.inputconsumers; import static android.view.MotionEvent.ACTION_MOVE; import static android.view.MotionEvent.INVALID_POINTER_ID; -import static android.view.RoundedCorner.POSITION_BOTTOM_LEFT; -import static android.view.RoundedCorner.POSITION_BOTTOM_RIGHT; import static com.android.launcher3.Flags.enableCursorHoverStates; import static com.android.launcher3.Flags.enableScalingRevealHomeAnimation; import static com.android.launcher3.MotionEventsUtils.isTrackpadMotionEvent; import static com.android.launcher3.taskbar.TaskbarAutohideSuspendController.FLAG_AUTOHIDE_SUSPEND_TOUCHING; -import static com.android.systemui.shared.Flags.cursorHotCorner; import android.content.Context; import android.content.res.Resources; import android.graphics.PointF; import android.graphics.Rect; -import android.hardware.display.DisplayManager; import android.os.Handler; import android.os.Looper; -import android.view.Display; import android.view.InputDevice; import android.view.MotionEvent; -import android.view.RoundedCorner; import android.view.VelocityTracker; import android.view.ViewConfiguration; @@ -68,9 +62,7 @@ public class TaskbarUnstashInputConsumer extends DelegateInputConsumer { private final TaskbarActivityContext mTaskbarActivityContext; private final OverviewCommandHelper mOverviewCommandHelper; - private final DisplayManager mDisplayManager; private final float mUnstashArea; - private final int mActionCornerPadding; private final int mTaskbarNavThreshold; private final int mTaskbarNavThresholdY; private final boolean mIsTaskbarAllAppsOpen; @@ -106,27 +98,18 @@ public class TaskbarUnstashInputConsumer extends DelegateInputConsumer { GestureState gestureState) { super(gestureState.getDisplayId(), delegate, inputMonitor); mTaskbarActivityContext = taskbarActivityContext; - mIsTransientTaskbar = DisplayController.isTransientTaskbar(context); mOverviewCommandHelper = overviewCommandHelper; - mDisplayManager = context.getSystemService(DisplayManager.class); mTouchSlop = ViewConfiguration.get(context).getScaledTouchSlop(); Resources res = context.getResources(); mUnstashArea = res.getDimensionPixelSize(R.dimen.taskbar_unstash_input_area); - mActionCornerPadding = res.getDimensionPixelSize( - R.dimen.transient_taskbar_action_corner_padding); - - boolean pinnedTaskbarWithAutoStashing = - mTaskbarActivityContext.shouldAllowTaskbarToAutoStash() && !mIsTransientTaskbar; - - mTaskbarNavThreshold = - pinnedTaskbarWithAutoStashing ? 0 : TaskbarThresholdUtils.getFromNavThreshold(res, - taskbarActivityContext.getDeviceProfile()); - - mTaskbarNavThresholdY = taskbarActivityContext.getDeviceProfile().getDeviceProperties().getHeightPx() + mTaskbarNavThreshold = TaskbarThresholdUtils.getFromNavThreshold(res, + taskbarActivityContext.getDeviceProfile()); + mTaskbarNavThresholdY = taskbarActivityContext.getDeviceProfile().heightPx - mTaskbarNavThreshold; mIsTaskbarAllAppsOpen = mTaskbarActivityContext.isTaskbarAllAppsOpen(); + mIsTransientTaskbar = DisplayController.isTransientTaskbar(context); mTaskbarSlowVelocityYThreshold = res.getDimensionPixelSize(R.dimen.taskbar_slow_velocity_y_threshold); @@ -198,16 +181,16 @@ public class TaskbarUnstashInputConsumer extends DelegateInputConsumer { float dX = mLastPos.x - mDownPos.x; float dY = mLastPos.y - mDownPos.y; - if (mTaskbarActivityContext.shouldAllowTaskbarToAutoStash()) { + if (mIsTransientTaskbar) { boolean passedTaskbarNavThreshold = dY < 0 && Math.abs(dY) >= mTaskbarNavThreshold; - // we only care about nav thresholds when we are transient taskbar if (!mHasPassedTaskbarNavThreshold && passedTaskbarNavThreshold && !mGestureState.isInExtendedSlopRegion()) { mHasPassedTaskbarNavThreshold = true; mTaskbarActivityContext.onSwipeToUnstashTaskbar(true); } + if (dY < 0) { dY = -OverScroll.dampedScroll(-dY, mTaskbarNavThresholdY); if (mTransitionCallback != null && !mIsTaskbarAllAppsOpen) { @@ -295,17 +278,17 @@ public class TaskbarUnstashInputConsumer extends DelegateInputConsumer { if (mIsStashedTaskbarHovered) { updateHoveredTaskbarState((int) ev.getX(), (int) ev.getY()); } else { - updateUnhoveredTaskbarState((int) ev.getX(), (int) ev.getY(), ev.getDisplayId()); + updateUnhoveredTaskbarState((int) ev.getX(), (int) ev.getY()); } } private void updateHoveredTaskbarState(int x, int y) { DeviceProfile dp = mTaskbarActivityContext.getDeviceProfile(); mBottomEdgeBounds.set( - (dp.getDeviceProperties().getWidthPx() - (int) mUnstashArea) / 2, - dp.getDeviceProperties().getHeightPx() - mStashedTaskbarBottomEdge, - (int) (((dp.getDeviceProperties().getWidthPx() - mUnstashArea) / 2) + mUnstashArea), - dp.getDeviceProperties().getHeightPx()); + (dp.widthPx - (int) mUnstashArea) / 2, + dp.heightPx - mStashedTaskbarBottomEdge, + (int) (((dp.widthPx - mUnstashArea) / 2) + mUnstashArea), + dp.heightPx); if (mBottomEdgeBounds.contains(x, y)) { // start a single unstash timeout if hovering bottom edge under the hinted taskbar. @@ -324,30 +307,15 @@ public class TaskbarUnstashInputConsumer extends DelegateInputConsumer { } } - private void updateUnhoveredTaskbarState(int x, int y, int displayId) { + private void updateUnhoveredTaskbarState(int x, int y) { sUnstashHandler.removeCallbacksAndMessages(null); DeviceProfile dp = mTaskbarActivityContext.getDeviceProfile(); mBottomEdgeBounds.set( 0, - dp.getDeviceProperties().getHeightPx() - mBottomScreenEdge, - dp.getDeviceProperties().getWidthPx(), - dp.getDeviceProperties().getHeightPx()); - - if (cursorHotCorner() && mDisplayManager != null) { - Display display = mDisplayManager.getDisplay(displayId); - if (display != null) { - RoundedCorner leftBottomCorner = display.getRoundedCorner(POSITION_BOTTOM_LEFT); - int leftCornerRadius = - leftBottomCorner == null ? 0 : leftBottomCorner.getRadius(); - RoundedCorner rightBottomCorner = display.getRoundedCorner( - POSITION_BOTTOM_RIGHT); - int rightCornerRadius = - rightBottomCorner == null ? 0 : rightBottomCorner.getRadius(); - mBottomEdgeBounds.inset(leftCornerRadius + mActionCornerPadding, 0, - rightCornerRadius + mActionCornerPadding, 0); - } - } + dp.heightPx - mBottomScreenEdge, + dp.widthPx, + dp.heightPx); if (isStashedTaskbarHovered(x, y)) { // If enter hovering stashed taskbar, start hint. @@ -371,11 +339,10 @@ public class TaskbarUnstashInputConsumer extends DelegateInputConsumer { } DeviceProfile dp = mTaskbarActivityContext.getDeviceProfile(); mStashedTaskbarHandleBounds.set( - (dp.getDeviceProperties().getWidthPx() - (int) mUnstashArea) / 2, - dp.getDeviceProperties().getHeightPx() - - dp.getTaskbarProfile().getStashedTaskbarHeight(), - (int) (((dp.getDeviceProperties().getWidthPx() - mUnstashArea) / 2) + mUnstashArea), - dp.getDeviceProperties().getHeightPx()); + (dp.widthPx - (int) mUnstashArea) / 2, + dp.heightPx - dp.stashedTaskbarHeight, + (int) (((dp.widthPx - mUnstashArea) / 2) + mUnstashArea), + dp.heightPx); return mStashedTaskbarHandleBounds.contains(x, y); } diff --git a/quickstep/src/com/android/quickstep/interaction/AllSetActivity.java b/quickstep/src/com/android/quickstep/interaction/AllSetActivity.java index 6794e8b312..c1bb2501b6 100644 --- a/quickstep/src/com/android/quickstep/interaction/AllSetActivity.java +++ b/quickstep/src/com/android/quickstep/interaction/AllSetActivity.java @@ -18,7 +18,6 @@ package com.android.quickstep.interaction; import static android.view.WindowInsetsController.APPEARANCE_LIGHT_NAVIGATION_BARS; import static android.view.WindowInsetsController.APPEARANCE_LIGHT_STATUS_BARS; -import static com.android.app.animation.Interpolators.ACCELERATE; import static com.android.app.animation.Interpolators.FAST_OUT_SLOW_IN; import static com.android.app.animation.Interpolators.LINEAR; import static com.android.launcher3.Utilities.mapBoundToRange; @@ -30,6 +29,7 @@ import android.app.Activity; import android.content.Context; import android.content.Intent; import android.content.res.Configuration; +import android.content.res.Resources; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.ColorFilter; @@ -42,10 +42,8 @@ import android.graphics.PointF; import android.graphics.RadialGradient; import android.graphics.Rect; import android.graphics.Shader.TileMode; -import android.graphics.Typeface; import android.graphics.drawable.Drawable; import android.os.Bundle; -import android.os.SystemProperties; import android.os.VibrationEffect; import android.os.Vibrator; import android.text.TextUtils; @@ -79,7 +77,6 @@ import com.android.quickstep.TouchInteractionService.TISBinder; import com.android.quickstep.util.ActivityPreloadUtil; import com.android.quickstep.util.LottieAnimationColorUtils; import com.android.quickstep.util.TISBindHelper; -import com.android.wm.shell.shared.TypefaceUtils.FontFamily; import com.airbnb.lottie.LottieAnimationView; @@ -105,18 +102,10 @@ public class AllSetActivity extends Activity { private static final String LOTTIE_PRIMARY_COLOR_TOKEN = ".primary"; private static final String LOTTIE_TERTIARY_COLOR_TOKEN = ".tertiary"; - private static final String SUW_THEME_SYSTEM_PROPERTY = "setupwizard.theme"; - private static final String GLIF_EXPRESSIVE_THEME = "glif_expressive"; - private static final String GLIF_EXPRESSIVE_LIGHT_THEME = "glif_expressive_light"; - - private boolean mIsExpressiveThemeEnabledInSUW = false; - private static final float HINT_BOTTOM_FACTOR = 1 - .94f; private static final int MAX_SWIPE_DURATION = 350; - private static final int WALLPAPER_BLUR_RADIUS = 30; - private static final float ANIMATION_PAUSE_ALPHA_THRESHOLD = 0.1f; private static final String KEY_BACKGROUND_ANIMATION_TOGGLED_ON = @@ -148,96 +137,68 @@ public class AllSetActivity extends Activity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { - String SUWTheme = SystemProperties.get(SUW_THEME_SYSTEM_PROPERTY, ""); - mIsExpressiveThemeEnabledInSUW = SUWTheme.equals(GLIF_EXPRESSIVE_THEME) || SUWTheme.equals( - GLIF_EXPRESSIVE_LIGHT_THEME); - if (mIsExpressiveThemeEnabledInSUW) setTheme(R.style.AllSetTheme_Expressive); - super.onCreate(savedInstanceState); - boolean isDarkTheme = - (getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK) - == Configuration.UI_MODE_NIGHT_YES; - String suwDeviceName = getIntent().getStringExtra(EXTRA_DEVICE_NAME); - if (mIsExpressiveThemeEnabledInSUW) { - setupExpressiveTheme(suwDeviceName); - } else { - setupDefaultTheme(savedInstanceState, isDarkTheme, suwDeviceName); - } - initializeCommonViewsAndListeners(); - configureSystemUI(isDarkTheme); + setContentView(R.layout.activity_allset); + mRootView = findViewById(R.id.root_view); + mRootView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN + | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION + | View.SYSTEM_UI_FLAG_LAYOUT_STABLE); - mTISBindHelper = new TISBindHelper(this, this::onTISConnected); - mVibrator = getSystemService(Vibrator.class); - getIDP().addOnChangeListener(mOnIDPChangeListener); - OverviewComponentObserver.INSTANCE.get(this) - .addOverviewChangeListener(mOverviewChangeListener); - ActivityPreloadUtil.preloadOverviewForSUWAllSet(this); - } + Resources resources = getResources(); + int mode = resources.getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK; + boolean isDarkTheme = mode == Configuration.UI_MODE_NIGHT_YES; - private void configureSystemUI(boolean isDarkTheme) { int systemBarsMask = APPEARANCE_LIGHT_STATUS_BARS | APPEARANCE_LIGHT_NAVIGATION_BARS; int systemBarsAppearance = isDarkTheme ? 0 : systemBarsMask; Window window = getWindow(); WindowInsetsController insetsController = window == null ? null : window.getInsetsController(); - if (insetsController != null) { insetsController.setSystemBarsAppearance(systemBarsAppearance, systemBarsMask); } - if (mIsExpressiveThemeEnabledInSUW && window != null) { - window.setBackgroundBlurRadius(WALLPAPER_BLUR_RADIUS); - } - mRootView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN - | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION - | View.SYSTEM_UI_FLAG_LAYOUT_STABLE); - } - private void initializeCommonViewsAndListeners() { - mHintView = findViewById(R.id.hint); - mHintView.setAccessibilityDelegate(new SkipButtonAccessibilityDelegate()); - updateHint(); + Intent intent = getIntent(); + int accentColor = intent.getIntExtra( + isDarkTheme ? EXTRA_ACCENT_COLOR_DARK_MODE : EXTRA_ACCENT_COLOR_LIGHT_MODE, + isDarkTheme ? Color.WHITE : Color.BLACK); - mSwipeUpShift = getResources().getDimension(R.dimen.allset_swipe_up_shift); + ((ImageView) findViewById(R.id.icon)).getDrawable().mutate().setTint(accentColor); - View navigationSettings = findViewById(R.id.navigation_settings); - navigationSettings.setOnClickListener(v -> { + mBackground = new BgDrawable(this); + mRootView.setBackground(mBackground); + mSwipeUpShift = resources.getDimension(R.dimen.allset_swipe_up_shift); + + TextView subtitle = findViewById(R.id.subtitle); + String suwDeviceName = intent.getStringExtra(EXTRA_DEVICE_NAME); + subtitle.setText(getString( + R.string.allset_description_generic, + !TextUtils.isEmpty(suwDeviceName) + ? suwDeviceName : getString(R.string.default_device_name))); + + TextView settings = findViewById(R.id.navigation_settings); + settings.setTextColor(accentColor); + settings.setOnClickListener(v -> { try { - // This is the action that starts the system navigation settings page startActivityForResult( Intent.parseUri(URI_SYSTEM_NAVIGATION_SETTING, 0), 0); } catch (URISyntaxException e) { Log.e(LOG_TAG, "Failed to parse system nav settings intent", e); } }); - } - private void setupDefaultTheme(@Nullable Bundle savedInstanceState, boolean isDarkTheme, - String suwDeviceName) { - setContentView(R.layout.activity_allset); - mRootView = findViewById(R.id.root_view); + mHintView = findViewById(R.id.hint); + mHintView.setAccessibilityDelegate(new SkipButtonAccessibilityDelegate()); + updateHint(); - mBackground = new BgDrawable(this); - mRootView.setBackground(mBackground); - - int accentColor = getIntent().getIntExtra( - isDarkTheme ? EXTRA_ACCENT_COLOR_DARK_MODE : EXTRA_ACCENT_COLOR_LIGHT_MODE, - isDarkTheme ? Color.WHITE : Color.BLACK); - - ((ImageView) findViewById(R.id.icon)).getDrawable().mutate().setTint(accentColor); - TextView navigationSettings = findViewById(R.id.navigation_settings); - navigationSettings.setTextColor(accentColor); - - TextView subtitle = findViewById(R.id.subtitle); - subtitle.setText(TextUtils.isEmpty(suwDeviceName) - ? getString(R.string.allset_description_fallback) - : getString(R.string.allset_description_generic, suwDeviceName)); + mTISBindHelper = new TISBindHelper(this, this::onTISConnected); + mVibrator = getSystemService(Vibrator.class); mAnimatedBackground = findViewById(R.id.animated_background); // There's a bug in the currently used external Lottie library (v5.2.0), and it doesn't load // the correct animation from the raw resources when configuration changes, so we need to // manually load the resource and pass it to Lottie. - mAnimatedBackground.setAnimation(getResources().openRawResource(R.raw.all_set_page_bg), + mAnimatedBackground.setAnimation(resources.openRawResource(R.raw.all_set_page_bg), null); LottieAnimationColorUtils.updateToColorResources( @@ -254,44 +215,19 @@ public class AllSetActivity extends Activity { mBackgroundAnimationToggledOn = !mBackgroundAnimationToggledOn; maybeResumeOrPauseBackgroundAnimation(); }); - setUpBackgroundAnimation(getDP().getDeviceProperties().isTablet()); - } - private void setupExpressiveTheme(String suwDeviceName) { - setContentView(R.layout.activity_allset_expressive); - mRootView = findViewById(R.id.root_view); + setUpBackgroundAnimation(getDP().isTablet); + getIDP().addOnChangeListener(mOnIDPChangeListener); - TextView title = findViewById(R.id.title); - TextView subtitle = findViewById(R.id.subtitle); - mHintView = findViewById(R.id.hint); - TextView navigationSettings = findViewById(R.id.navigation_settings); - title.setText(TextUtils.isEmpty(suwDeviceName) - ? getString(R.string.allset_title_expressive_fallback) - : getString(R.string.allset_title_expressive, suwDeviceName)); - String deviceType = getDP().getDeviceProperties().isTablet() - ? getString(R.string.allset_device_type_tablet) - : getString(R.string.allset_device_type_phone); - subtitle.setText(getString(R.string.allset_subtitle_expressive, deviceType)); - - title.setTypeface( - Typeface.create(FontFamily.GSF_HEADLINE_LARGE_EMPHASIZED.getValue(), - Typeface.NORMAL)); - subtitle.setTypeface( - Typeface.create(FontFamily.GSF_BODY_MEDIUM.getValue(), Typeface.NORMAL)); - mHintView.setTypeface( - Typeface.create(FontFamily.GSF_HEADLINE_SMALL_EMPHASIZED.getValue(), - Typeface.NORMAL)); - navigationSettings.setTypeface( - Typeface.create(FontFamily.GSF_HEADLINE_SMALL_EMPHASIZED.getValue(), - Typeface.NORMAL)); + OverviewComponentObserver.INSTANCE.get(this) + .addOverviewChangeListener(mOverviewChangeListener); + ActivityPreloadUtil.preloadOverviewForSUWAllSet(this); } @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); - if (!mIsExpressiveThemeEnabledInSUW) { - outState.putBoolean(KEY_BACKGROUND_ANIMATION_TOGGLED_ON, mBackgroundAnimationToggledOn); - } + outState.putBoolean(KEY_BACKGROUND_ANIMATION_TOGGLED_ON, mBackgroundAnimationToggledOn); } private InvariantDeviceProfile getIDP() { @@ -303,17 +239,8 @@ public class AllSetActivity extends Activity { } private void updateHint() { - if (mIsExpressiveThemeEnabledInSUW) { - mHintView.setText( - getDP().getDeviceProperties().isGestureMode() - ? R.string.allset_hint_expressive - : R.string.allset_button_hint_expressive); - } else { - mHintView.setText( - getDP().getDeviceProperties().isGestureMode() - ? R.string.allset_hint - : R.string.allset_button_hint); - } + mHintView.setText( + getDP().isGestureMode ? R.string.allset_hint : R.string.allset_button_hint); } private void runOnUiHelperThread(Runnable runnable) { @@ -325,7 +252,7 @@ public class AllSetActivity extends Activity { } private void setUpBackgroundAnimation(boolean forTablet) { - if (mVibrator == null || mIsExpressiveThemeEnabledInSUW) { + if (mVibrator == null) { return; } boolean supportsThud = mVibrator.areAllPrimitivesSupported( @@ -385,9 +312,6 @@ public class AllSetActivity extends Activity { setSetupUIVisible(true); binder.setSwipeUpProxy(this::createSwipeUpProxy); } - if (mIsExpressiveThemeEnabledInSUW) { - getWindow().setBackgroundBlurRadius(WALLPAPER_BLUR_RADIUS); - } } private void onTISConnected(TISBinder binder) { @@ -465,9 +389,6 @@ public class AllSetActivity extends Activity { } private void maybeResumeOrPauseBackgroundAnimation() { - if (mIsExpressiveThemeEnabledInSUW) { - return; - } boolean shouldPlayAnimation = !RemoveAnimationSettingsTracker.INSTANCE.get(this).isRemoveAnimationEnabled() && getContentViewAlphaForSwipeProgress() > ANIMATION_PAUSE_ALPHA_THRESHOLD @@ -481,13 +402,7 @@ public class AllSetActivity extends Activity { } private void onSwipeProgressUpdate() { - if (!mIsExpressiveThemeEnabledInSUW) { - mBackground.setProgress(mSwipeProgress.value); - } else { - getWindow().setBackgroundBlurRadius((int) mapBoundToRange( - mSwipeProgress.value, 0, HINT_BOTTOM_FACTOR, WALLPAPER_BLUR_RADIUS, 0, - ACCELERATE)); - } + mBackground.setProgress(mSwipeProgress.value); float alpha = getContentViewAlphaForSwipeProgress(); mRootView.setAlpha(alpha); mRootView.setTranslationY((alpha - 1) * mSwipeUpShift); @@ -516,7 +431,7 @@ public class AllSetActivity extends Activity { @Override public boolean performAccessibilityAction(View host, int action, Bundle args) { if (action == AccessibilityAction.ACTION_CLICK.getId()) { - startHomeIntentSafely(AllSetActivity.this, null, TAG, getDisplayId()); + startHomeIntentSafely(AllSetActivity.this, null, TAG); finish(); return true; } diff --git a/quickstep/src/com/android/quickstep/interaction/EdgeBackGestureHandler.java b/quickstep/src/com/android/quickstep/interaction/EdgeBackGestureHandler.java index dda80285cd..72bff7f5e8 100644 --- a/quickstep/src/com/android/quickstep/interaction/EdgeBackGestureHandler.java +++ b/quickstep/src/com/android/quickstep/interaction/EdgeBackGestureHandler.java @@ -118,7 +118,7 @@ public class EdgeBackGestureHandler implements OnTouchListener { // Add a nav bar panel window. mEdgeBackPanel = new EdgeBackGesturePanel(mContext, parent, createLayoutParams()); mEdgeBackPanel.setBackCallback(mBackCallback); - mDisplaySize.set(mDeviceProfile.getDeviceProperties().getWidthPx(), mDeviceProfile.getDeviceProperties().getHeightPx()); + mDisplaySize.set(mDeviceProfile.widthPx, mDeviceProfile.heightPx); mEdgeBackPanel.setDisplaySize(mDisplaySize); } } diff --git a/quickstep/src/com/android/quickstep/interaction/GestureSandboxActivity.java b/quickstep/src/com/android/quickstep/interaction/GestureSandboxActivity.java index e6206d01b2..0365f899db 100644 --- a/quickstep/src/com/android/quickstep/interaction/GestureSandboxActivity.java +++ b/quickstep/src/com/android/quickstep/interaction/GestureSandboxActivity.java @@ -151,9 +151,9 @@ public class GestureSandboxActivity extends FragmentActivity { private void correctUserOrientation() { DeviceProfile deviceProfile = InvariantDeviceProfile.INSTANCE.get( getApplicationContext()).getDeviceProfile(this); - if (deviceProfile.getDeviceProperties().isTablet()) { + if (deviceProfile.isTablet) { // The tutorial will work in either orientation if the height and width are similar - boolean showRotationPrompt = !LayoutUtils.isAspectRatioSquare(deviceProfile.getDeviceProperties().getAspectRatio()) + boolean showRotationPrompt = !LayoutUtils.isAspectRatioSquare(deviceProfile.aspectRatio) && getResources().getConfiguration().orientation == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT; diff --git a/quickstep/src/com/android/quickstep/interaction/MenuFragment.java b/quickstep/src/com/android/quickstep/interaction/MenuFragment.java index 2d7a36f127..8ead3dd8bd 100644 --- a/quickstep/src/com/android/quickstep/interaction/MenuFragment.java +++ b/quickstep/src/com/android/quickstep/interaction/MenuFragment.java @@ -28,7 +28,6 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.launcher3.R; -import com.android.wm.shell.shared.TypefaceUtils; /** Displays the gesture nav tutorial menu. */ public final class MenuFragment extends GestureSandboxFragment { @@ -59,19 +58,6 @@ public final class MenuFragment extends GestureSandboxFragment { root.findViewById(R.id.gesture_tutorial_menu_done_button).setOnClickListener( v -> close()); - TypefaceUtils.setTypeface( - root.findViewById(R.id.gesture_tutorial_menu_home_button_text), - TypefaceUtils.FontFamily.GSF_DISPLAY_SMALL_EMPHASIZED); - TypefaceUtils.setTypeface( - root.findViewById(R.id.gesture_tutorial_menu_back_button_text), - TypefaceUtils.FontFamily.GSF_DISPLAY_SMALL_EMPHASIZED); - TypefaceUtils.setTypeface( - root.findViewById(R.id.gesture_tutorial_menu_overview_button_text), - TypefaceUtils.FontFamily.GSF_DISPLAY_SMALL_EMPHASIZED); - TypefaceUtils.setTypeface( - root.findViewById(R.id.gesture_tutorial_menu_done_button), - TypefaceUtils.FontFamily.GSF_LABEL_LARGE); - return root; } diff --git a/quickstep/src/com/android/quickstep/interaction/NavBarGestureHandler.java b/quickstep/src/com/android/quickstep/interaction/NavBarGestureHandler.java index 33230b08b5..6e618f19ff 100644 --- a/quickstep/src/com/android/quickstep/interaction/NavBarGestureHandler.java +++ b/quickstep/src/com/android/quickstep/interaction/NavBarGestureHandler.java @@ -61,7 +61,7 @@ public class NavBarGestureHandler implements OnTouchListener, NavBarGestureHandler(Context context, DeviceProfile deviceProfile) { mContext = context; - mDisplaySize.set(deviceProfile.getDeviceProperties().getWidthPx(), deviceProfile.getDeviceProperties().getHeightPx()); + mDisplaySize.set(deviceProfile.widthPx, deviceProfile.heightPx); mSwipeUpTouchTracker = new TriggerSwipeUpTouchTracker( context, /* disableHorizontalSwipe= */ true, diff --git a/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java b/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java index 3379f1f5c8..c63cddf2c8 100644 --- a/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java +++ b/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java @@ -52,7 +52,6 @@ import com.android.launcher3.anim.PendingAnimation; import com.android.quickstep.GestureState; import com.android.quickstep.OverviewComponentObserver; import com.android.quickstep.RemoteTargetGluer; -import com.android.quickstep.RotationTouchHelper; import com.android.quickstep.SwipeUpAnimationLogic; import com.android.quickstep.SwipeUpAnimationLogic.RunningWindowAnim; import com.android.quickstep.util.RecordingSurfaceTransaction; @@ -87,8 +86,7 @@ abstract class SwipeUpGestureTutorialController extends TutorialController { SwipeUpGestureTutorialController(TutorialFragment tutorialFragment, TutorialType tutorialType) { super(tutorialFragment, tutorialType); mTaskViewSwipeUpAnimation = new ViewSwipeUpAnimation(mContext, new GestureState( - OverviewComponentObserver.INSTANCE.get(mContext), Display.DEFAULT_DISPLAY, -1), - RotationTouchHelper.REPOSITORY_INSTANCE.get(mContext).get(Display.DEFAULT_DISPLAY)); + OverviewComponentObserver.INSTANCE.get(mContext), Display.DEFAULT_DISPLAY, -1)); DeviceProfile dp = InvariantDeviceProfile.INSTANCE.get(mContext) .getDeviceProfile(mContext) @@ -311,9 +309,8 @@ abstract class SwipeUpGestureTutorialController extends TutorialController { class ViewSwipeUpAnimation extends SwipeUpAnimationLogic { - ViewSwipeUpAnimation(Context context, GestureState gestureState, - RotationTouchHelper rotationTouchHelper) { - super(context, gestureState, rotationTouchHelper); + ViewSwipeUpAnimation(Context context, GestureState gestureState) { + super(context, gestureState); mRemoteTargetHandles[0] = new RemoteTargetGluer.RemoteTargetHandle( mRemoteTargetHandles[0].getTaskViewSimulator(), new FakeTransformParams()); @@ -330,7 +327,7 @@ abstract class SwipeUpGestureTutorialController extends TutorialController { void initDp(DeviceProfile dp) { initTransitionEndpoints(dp); mRemoteTargetHandles[0].getTaskViewSimulator().setPreviewBounds( - new Rect(0, 0, dp.getDeviceProperties().getWidthPx(), dp.getDeviceProperties().getHeightPx()), dp.getInsets()); + new Rect(0, 0, dp.widthPx, dp.heightPx), dp.getInsets()); } @Override diff --git a/quickstep/src/com/android/quickstep/interaction/TutorialController.java b/quickstep/src/com/android/quickstep/interaction/TutorialController.java index 875010ad23..00073ea75b 100644 --- a/quickstep/src/com/android/quickstep/interaction/TutorialController.java +++ b/quickstep/src/com/android/quickstep/interaction/TutorialController.java @@ -25,11 +25,13 @@ import android.animation.ObjectAnimator; import android.animation.ValueAnimator; import android.annotation.RawRes; import android.content.Context; +import android.content.pm.PackageManager; import android.graphics.Color; import android.graphics.Matrix; import android.graphics.Outline; import android.graphics.Rect; import android.graphics.Typeface; +import android.graphics.drawable.ColorDrawable; import android.graphics.drawable.RippleDrawable; import android.os.SystemProperties; import android.provider.Settings; @@ -51,9 +53,11 @@ import androidx.annotation.LayoutRes; import androidx.annotation.Nullable; import androidx.annotation.StringRes; import androidx.annotation.StyleRes; +import androidx.appcompat.app.AlertDialog; import com.android.launcher3.DeviceProfile; import com.android.launcher3.R; +import com.android.launcher3.Utilities; import com.android.launcher3.anim.AnimatorListeners; import com.android.launcher3.util.SettingsCache; import com.android.launcher3.views.ClipIconView; @@ -77,6 +81,9 @@ abstract class TutorialController implements BackGestureAttemptCallback, private static final float FINGER_DOT_SMALL_SCALE = 0.7f; private static final int FINGER_DOT_ANIMATION_DURATION_MILLIS = 500; + private static final String PIXEL_TIPS_APP_PACKAGE_NAME = "com.google.android.apps.tips"; + private static final CharSequence DEFAULT_PIXEL_TIPS_APP_NAME = "Pixel Tips"; + private static final String SUW_THEME_SYSTEM_PROPERTY = "setupwizard.theme"; private static final String GLIF_EXPRESSIVE_THEME = "glif_expressive"; private static final String GLIF_EXPRESSIVE_LIGHT_THEME = "glif_expressive_light"; @@ -96,6 +103,7 @@ abstract class TutorialController implements BackGestureAttemptCallback, TutorialType mTutorialType; final Context mContext; + final TextView mSkipButton; final Button mDoneButton; final ViewGroup mFeedbackView; final TextView mFeedbackTitleView; @@ -114,6 +122,7 @@ abstract class TutorialController implements BackGestureAttemptCallback, private final Rect mExitingAppRect = new Rect(); protected View mExitingAppView; protected int mExitingAppRadius; + private final AlertDialog mSkipTutorialDialog; private final boolean mIsExpressiveThemeEnabledInSUW; private boolean mGestureCompleted = false; @@ -134,6 +143,8 @@ abstract class TutorialController implements BackGestureAttemptCallback, mContext = mTutorialFragment.getContext(); RootSandboxLayout rootView = tutorialFragment.getRootView(); + mSkipButton = rootView.findViewById(R.id.gesture_tutorial_fragment_close_button); + mSkipButton.setOnClickListener(button -> showSkipTutorialDialog()); mFeedbackView = rootView.findViewById(R.id.gesture_tutorial_fragment_feedback_view); mFeedbackTitleView = mFeedbackView.findViewById( R.id.gesture_tutorial_fragment_feedback_title); @@ -151,14 +162,15 @@ abstract class TutorialController implements BackGestureAttemptCallback, mRippleDrawable = (RippleDrawable) mRippleView.getBackground(); mDoneButton = rootView.findViewById(R.id.gesture_tutorial_fragment_action_button); mFingerDotView = rootView.findViewById(R.id.gesture_tutorial_finger_dot); + mSkipTutorialDialog = createSkipTutorialDialog(); mFullGestureDemonstration = rootView.findViewById(R.id.full_gesture_demonstration); mCheckmarkAnimation = rootView.findViewById(R.id.checkmark_animation); mAnimatedGestureDemonstration = rootView.findViewById( R.id.gesture_demonstration_animations); mExitingAppView = rootView.findViewById(R.id.exiting_app_back); - mScreenWidth = mTutorialFragment.getDeviceProfile().getDeviceProperties().getWidthPx(); - mScreenHeight = mTutorialFragment.getDeviceProfile().getDeviceProperties().getHeightPx(); + mScreenWidth = mTutorialFragment.getDeviceProfile().widthPx; + mScreenHeight = mTutorialFragment.getDeviceProfile().heightPx; mExitingAppMargin = mContext.getResources().getDimensionPixelSize( R.dimen.gesture_tutorial_back_gesture_exiting_app_margin); mExitingAppStartingCornerRadius = QuickStepContract.getWindowCornerRadius(mContext); @@ -227,6 +239,12 @@ abstract class TutorialController implements BackGestureAttemptCallback, mAnimatedGestureDemonstration.setImageMatrix(scaleMatrix); } + private void showSkipTutorialDialog() { + if (mSkipTutorialDialog != null) { + mSkipTutorialDialog.show(); + } + } + public int getHotseatIconTop() { return mHotseatIconView == null ? 0 : mFakeHotseatView.getTop() + mHotseatIconView.getTop(); @@ -489,6 +507,7 @@ abstract class TutorialController implements BackGestureAttemptCallback, @CallSuper void transitToController() { + updateCloseButton(); updateDrawables(); updateLayout(); @@ -549,7 +568,14 @@ abstract class TutorialController implements BackGestureAttemptCallback, mAnimatedGestureDemonstration.playAnimation(); } + void updateCloseButton() { + mSkipButton.setTextAppearance(Utilities.isDarkTheme(mContext) + ? R.style.TextAppearance_GestureTutorial_Feedback_Subtext + : R.style.TextAppearance_GestureTutorial_Feedback_Subtext_Dark); + } + void showActionButton() { + mSkipButton.setVisibility(GONE); mDoneButton.setVisibility(View.VISIBLE); mDoneButton.setOnClickListener(this::onActionButtonClicked); } @@ -655,7 +681,7 @@ abstract class TutorialController implements BackGestureAttemptCallback, if (!mTutorialFragment.isLargeScreen()) { DeviceProfile dp = mTutorialFragment.getDeviceProfile(); - hotseatLayoutParams.addRule(dp.getDeviceProperties().isLandscape() + hotseatLayoutParams.addRule(dp.isLandscape ? (dp.isSeascape() ? RelativeLayout.ALIGN_PARENT_START : RelativeLayout.ALIGN_PARENT_END) @@ -670,6 +696,68 @@ abstract class TutorialController implements BackGestureAttemptCallback, mFakeHotseatView.setLayoutParams(hotseatLayoutParams); } + private AlertDialog createSkipTutorialDialog() { + if (!(mContext instanceof GestureSandboxActivity)) { + return null; + } + GestureSandboxActivity sandboxActivity = (GestureSandboxActivity) mContext; + View contentView = View.inflate( + sandboxActivity, R.layout.gesture_tutorial_dialog, null); + AlertDialog tutorialDialog = new AlertDialog + .Builder(sandboxActivity, androidx.appcompat.R.style.Theme_AppCompat_Dialog_Alert) + .setView(contentView) + .create(); + + PackageManager packageManager = mContext.getPackageManager(); + CharSequence tipsAppName = DEFAULT_PIXEL_TIPS_APP_NAME; + + try { + tipsAppName = packageManager.getApplicationLabel( + packageManager.getApplicationInfo( + PIXEL_TIPS_APP_PACKAGE_NAME, PackageManager.GET_META_DATA)); + } catch (PackageManager.NameNotFoundException e) { + Log.e(LOG_TAG, + "Could not find app label for package name: " + + PIXEL_TIPS_APP_PACKAGE_NAME + + ". Defaulting to 'Pixel Tips.'", + e); + } + + TextView subtitleTextView = (TextView) contentView.findViewById( + R.id.gesture_tutorial_dialog_subtitle); + if (subtitleTextView != null) { + subtitleTextView.setText( + mContext.getString(R.string.skip_tutorial_dialog_subtitle, tipsAppName)); + } else { + Log.w(LOG_TAG, "No subtitle view in the skip tutorial dialog to update."); + } + + Button cancelButton = (Button) contentView.findViewById( + R.id.gesture_tutorial_dialog_cancel_button); + if (cancelButton != null) { + cancelButton.setOnClickListener( + v -> tutorialDialog.dismiss()); + } else { + Log.w(LOG_TAG, "No cancel button in the skip tutorial dialog to update."); + } + + Button confirmButton = contentView.findViewById( + R.id.gesture_tutorial_dialog_confirm_button); + if (confirmButton != null) { + confirmButton.setOnClickListener(v -> { + mTutorialFragment.closeTutorialStep(true); + tutorialDialog.dismiss(); + }); + } else { + Log.w(LOG_TAG, "No confirm button in the skip tutorial dialog to update."); + } + + tutorialDialog.getWindow().setBackgroundDrawable( + new ColorDrawable(sandboxActivity.getColor(android.R.color.transparent))); + + return tutorialDialog; + } + protected AnimatorSet createFingerDotAppearanceAnimatorSet() { ObjectAnimator alphaAnimator = ObjectAnimator.ofFloat( mFingerDotView, View.ALPHA, 0f, FINGER_DOT_VISIBLE_ALPHA); diff --git a/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java b/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java index a6c46ddd64..46153f6196 100644 --- a/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java +++ b/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java @@ -183,8 +183,8 @@ abstract class TutorialFragment extends GestureSandboxFragment implements OnTouc mDeviceProfile = InvariantDeviceProfile.INSTANCE.get(getContext()) .getDeviceProfile(getContext()); - mIsLargeScreen = mDeviceProfile.getDeviceProperties().isTablet(); - mIsFoldable = mDeviceProfile.getDeviceProperties().isTwoPanels(); + mIsLargeScreen = mDeviceProfile.isTablet; + mIsFoldable = mDeviceProfile.isTwoPanels; if (mOnAttachedToWindowPendingCreate) { mOnAttachedToWindowPendingCreate = false; diff --git a/quickstep/src/com/android/quickstep/logging/SettingsChangeLogger.java b/quickstep/src/com/android/quickstep/logging/SettingsChangeLogger.java index c9d1207a07..0cc349db38 100644 --- a/quickstep/src/com/android/quickstep/logging/SettingsChangeLogger.java +++ b/quickstep/src/com/android/quickstep/logging/SettingsChangeLogger.java @@ -18,25 +18,16 @@ package com.android.quickstep.logging; import static com.android.launcher3.LauncherPrefs.getDevicePrefs; import static com.android.launcher3.LauncherPrefs.getPrefs; -import static com.android.launcher3.graphics.ThemeManager.PREF_ICON_SHAPE; +import static com.android.launcher3.graphics.ThemeManager.KEY_THEMED_ICONS; import static com.android.launcher3.graphics.ThemeManager.THEMED_ICONS; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_HOME_SCREEN_SUGGESTIONS_DISABLED; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_HOME_SCREEN_SUGGESTIONS_ENABLED; -import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ICON_SHAPE_ARCH; -import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ICON_SHAPE_CIRCLE; -import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ICON_SHAPE_FOUR_SIDED_COOKIE; -import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ICON_SHAPE_SEVEN_SIDED_COOKIE; -import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ICON_SHAPE_SQUARE; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_NOTIFICATION_DOT_DISABLED; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_NOTIFICATION_DOT_ENABLED; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_THEMED_ICON_DISABLED; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_THEMED_ICON_ENABLED; +import static com.android.launcher3.model.DeviceGridState.KEY_WORKSPACE_SIZE; import static com.android.launcher3.model.PredictionUpdateTask.LAST_PREDICTION_ENABLED; -import static com.android.launcher3.shapes.ShapesProvider.ARCH_KEY; -import static com.android.launcher3.shapes.ShapesProvider.CIRCLE_KEY; -import static com.android.launcher3.shapes.ShapesProvider.FOUR_SIDED_COOKIE_KEY; -import static com.android.launcher3.shapes.ShapesProvider.SEVEN_SIDED_COOKIE_KEY; -import static com.android.launcher3.shapes.ShapesProvider.SQUARE_KEY; import static com.android.launcher3.util.DisplayController.CHANGE_NAVIGATION_MODE; import static com.android.launcher3.util.SettingsCache.NOTIFICATION_BADGING_URI; @@ -48,17 +39,14 @@ import android.util.ArrayMap; import android.util.Log; import android.util.Xml; -import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; -import com.android.launcher3.Flags; import com.android.launcher3.LauncherPrefs; import com.android.launcher3.R; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.logging.InstanceId; import com.android.launcher3.logging.StatsLogManager; -import com.android.launcher3.logging.StatsLogManager.LauncherEvent; import com.android.launcher3.logging.StatsLogManager.StatsLogger; import com.android.launcher3.model.DeviceGridState; import com.android.launcher3.util.DaggerSingletonObject; @@ -97,9 +85,9 @@ public class SettingsChangeLogger implements private final ArrayMap<String, LoggablePref> mLoggablePrefs; private final StatsLogManager mStatsLogManager; - @NonNull private NavigationMode mNavMode; - private LauncherEvent mNotificationDotsEvent; + private StatsLogManager.LauncherEvent mNotificationDotsEvent; + private StatsLogManager.LauncherEvent mHomeScreenSuggestionEvent; private final SettingsCache.OnChangeListener mListener = this::onNotificationDotsChanged; @@ -107,10 +95,19 @@ public class SettingsChangeLogger implements SettingsChangeLogger(@ApplicationContext Context context, DaggerSingletonTracker tracker, DisplayController displayController, - SettingsCache settingsCache, - StatsLogManager.StatsLogManagerFactory factory) { + SettingsCache settingsCache) { + this(context, StatsLogManager.newInstance(context), tracker, displayController, + settingsCache); + } + + @VisibleForTesting + SettingsChangeLogger(@ApplicationContext Context context, + StatsLogManager statsLogManager, + DaggerSingletonTracker tracker, + DisplayController displayController, + SettingsCache settingsCache) { mContext = context; - mStatsLogManager = factory.create(context); + mStatsLogManager = statsLogManager; mLoggablePrefs = loadPrefKeys(context); displayController.addChangeListener(this); @@ -171,7 +168,7 @@ public class SettingsChangeLogger implements } private void onNotificationDotsChanged(boolean isDotsEnabled) { - LauncherEvent mEvent = + StatsLogManager.LauncherEvent mEvent = isDotsEnabled ? LAUNCHER_NOTIFICATION_DOT_ENABLED : LAUNCHER_NOTIFICATION_DOT_DISABLED; @@ -192,20 +189,17 @@ public class SettingsChangeLogger implements @Override public void onSharedPreferenceChanged(SharedPreferences prefs, String key) { - LoggablePref loggablePref; - if (LAST_PREDICTION_ENABLED.getSharedPrefKey().equals(key)) { - logHomeScreenSuggestionEvent(mStatsLogManager.logger()); - } else if ((loggablePref = mLoggablePrefs.get(key)) != null) { - int eventId = prefs.getBoolean(key, loggablePref.defaultValue) - ? loggablePref.eventIdOn : loggablePref.eventIdOff; - mStatsLogManager.logger().log(() -> eventId); - } - } + if (LAST_PREDICTION_ENABLED.getSharedPrefKey().equals(key) + || KEY_WORKSPACE_SIZE.equals(key) + || KEY_THEMED_ICONS.equals(key) + || mLoggablePrefs.containsKey(key)) { - private void logHomeScreenSuggestionEvent(StatsLogger logger) { - logger.log(LauncherPrefs.get(mContext).get(LAST_PREDICTION_ENABLED) - ? LAUNCHER_HOME_SCREEN_SUGGESTIONS_ENABLED - : LAUNCHER_HOME_SCREEN_SUGGESTIONS_DISABLED); + mHomeScreenSuggestionEvent = LauncherPrefs.get(mContext).get(LAST_PREDICTION_ENABLED) + ? LAUNCHER_HOME_SCREEN_SUGGESTIONS_ENABLED + : LAUNCHER_HOME_SCREEN_SUGGESTIONS_DISABLED; + + mStatsLogManager.logger().log(mHomeScreenSuggestionEvent); + } } /** @@ -215,8 +209,8 @@ public class SettingsChangeLogger implements StatsLogger logger = mStatsLogManager.logger().withInstanceId(snapshotInstanceId); Optional.ofNullable(mNotificationDotsEvent).ifPresent(logger::log); - logger.log(mNavMode.launcherEvent); - logHomeScreenSuggestionEvent(logger); + Optional.ofNullable(mNavMode).map(mode -> mode.launcherEvent).ifPresent(logger::log); + Optional.ofNullable(mHomeScreenSuggestionEvent).ifPresent(logger::log); Optional.ofNullable(new DeviceGridState(mContext).getWorkspaceSizeEvent()).ifPresent( logger::log); @@ -225,19 +219,6 @@ public class SettingsChangeLogger implements ? LAUNCHER_THEMED_ICON_ENABLED : LAUNCHER_THEMED_ICON_DISABLED); - if (Flags.enableLauncherIconShapes()) { - Optional.ofNullable( - switch (LauncherPrefs.get(mContext).get(PREF_ICON_SHAPE)) { - case CIRCLE_KEY -> LAUNCHER_ICON_SHAPE_CIRCLE; - case SQUARE_KEY -> LAUNCHER_ICON_SHAPE_SQUARE; - case FOUR_SIDED_COOKIE_KEY -> LAUNCHER_ICON_SHAPE_FOUR_SIDED_COOKIE; - case SEVEN_SIDED_COOKIE_KEY -> LAUNCHER_ICON_SHAPE_SEVEN_SIDED_COOKIE; - case ARCH_KEY -> LAUNCHER_ICON_SHAPE_ARCH; - default -> null; - } - ).ifPresent(logger::log); - } - mLoggablePrefs.forEach((key, lp) -> logger.log(() -> prefs.getBoolean(key, lp.defaultValue) ? lp.eventIdOn : lp.eventIdOff)); } diff --git a/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java b/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java index e69de29bb2..3656d98128 100644 --- a/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java +++ b/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java @@ -0,0 +1,931 @@ +/* + * Copyright (C) 2018 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.quickstep.logging; + +import static android.view.Surface.ROTATION_180; +import static android.view.Surface.ROTATION_270; +import static android.view.Surface.ROTATION_90; + +import static androidx.core.util.Preconditions.checkNotNull; +import static androidx.core.util.Preconditions.checkState; + +import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_NON_ACTIONABLE; +import static com.android.launcher3.logger.LauncherAtom.ContainerInfo.ContainerCase.ALL_APPS_CONTAINER; +import static com.android.launcher3.logger.LauncherAtom.ContainerInfo.ContainerCase.EXTENDED_CONTAINERS; +import static com.android.launcher3.logger.LauncherAtom.ContainerInfo.ContainerCase.FOLDER; +import static com.android.launcher3.logger.LauncherAtom.ContainerInfo.ContainerCase.SEARCH_RESULT_CONTAINER; +import static com.android.launcher3.logger.LauncherAtomExtensions.ExtendedContainers.ContainerCase.DEVICE_SEARCH_RESULT_CONTAINER; +import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WORKSPACE_SNAPSHOT; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__DISPLAY_ROTATION__ROTATION_0; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__DISPLAY_ROTATION__ROTATION_180; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__DISPLAY_ROTATION__ROTATION_270; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__DISPLAY_ROTATION__ROTATION_90; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__DST_STATE__ALLAPPS; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__DST_STATE__BACKGROUND; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__DST_STATE__HOME; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__DST_STATE__OVERVIEW; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__RECENTS_ORIENTATION_HANDLER__LANDSCAPE; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__RECENTS_ORIENTATION_HANDLER__PORTRAIT; +import static com.android.systemui.shared.system.SysUiStatsLog.LAUNCHER_UICHANGED__RECENTS_ORIENTATION_HANDLER__SEASCAPE; + +import android.content.Context; +import android.text.TextUtils; +import android.util.Log; +import android.util.StatsEvent; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.annotation.WorkerThread; +import androidx.slice.SliceItem; + +import com.android.internal.jank.Cuj; +import com.android.launcher3.LauncherAppState; +import com.android.launcher3.Utilities; +import com.android.launcher3.logger.LauncherAtom; +import com.android.launcher3.logger.LauncherAtom.Attribute; +import com.android.launcher3.logger.LauncherAtom.ContainerInfo; +import com.android.launcher3.logger.LauncherAtom.FolderContainer.ParentContainerCase; +import com.android.launcher3.logger.LauncherAtom.FolderIcon; +import com.android.launcher3.logger.LauncherAtom.FromState; +import com.android.launcher3.logger.LauncherAtom.LauncherAttributes; +import com.android.launcher3.logger.LauncherAtom.ToState; +import com.android.launcher3.logger.LauncherAtomExtensions.DeviceSearchResultContainer; +import com.android.launcher3.logger.LauncherAtomExtensions.DeviceSearchResultContainer.SearchAttributes; +import com.android.launcher3.logger.LauncherAtomExtensions.ExtendedContainers; +import com.android.launcher3.logging.InstanceId; +import com.android.launcher3.logging.StatsLogManager; +import com.android.launcher3.model.data.CollectionInfo; +import com.android.launcher3.model.data.ItemInfo; +import com.android.launcher3.util.DisplayController; +import com.android.launcher3.util.Executors; +import com.android.launcher3.util.LogConfig; +import com.android.launcher3.views.ActivityContext; +import com.android.systemui.shared.system.InteractionJankMonitorWrapper; +import com.android.systemui.shared.system.SysUiStatsLog; + +import java.util.Optional; +import java.util.OptionalInt; +import java.util.concurrent.CopyOnWriteArrayList; + +/** + * This class calls StatsLog compile time generated methods. + * + * To see if the logs are properly sent to statsd, execute following command. + * <ul> + * $ wwdebug (to turn on the logcat printout) + * $ wwlogcat (see logcat with grep filter on) + * $ statsd_testdrive (see how ww is writing the proto to statsd buffer) + * </ul> + */ +public class StatsLogCompatManager extends StatsLogManager { + + private static final String TAG = "StatsLog"; + private static final String LATENCY_TAG = "StatsLatencyLog"; + private static final String IMPRESSION_TAG = "StatsImpressionLog"; + private static final boolean IS_VERBOSE = Utilities.isPropertyEnabled(LogConfig.STATSLOG); + private static final boolean DEBUG = !Utilities.isRunningInTestHarness(); + private static final InstanceId DEFAULT_INSTANCE_ID = InstanceId.fakeInstanceId(0); + // LauncherAtom.ItemInfo.getDefaultInstance() should be used but until launcher proto migrates + // from nano to lite, bake constant to prevent robo test failure. + private static final int DEFAULT_PAGE_INDEX = -2; + private static final int FOLDER_HIERARCHY_OFFSET = 100; + private static final int SEARCH_RESULT_HIERARCHY_OFFSET = 200; + private static final int EXTENDED_CONTAINERS_HIERARCHY_OFFSET = 300; + private static final int ALL_APPS_HIERARCHY_OFFSET = 400; + + /** + * Flags for converting SearchAttribute to integer value. + */ + private static final int SEARCH_ATTRIBUTES_CORRECTED_QUERY = 1 << 0; + private static final int SEARCH_ATTRIBUTES_DIRECT_MATCH = 1 << 1; + private static final int SEARCH_ATTRIBUTES_ENTRY_STATE_ALL_APPS = 1 << 2; + private static final int SEARCH_ATTRIBUTES_ENTRY_STATE_QSB = 1 << 3; + private static final int SEARCH_ATTRIBUTES_ENTRY_STATE_OVERVIEW = 1 << 4; + private static final int SEARCH_ATTRIBUTES_ENTRY_STATE_TASKBAR = 1 << 5; + + public static final CopyOnWriteArrayList<StatsLogConsumer> LOGS_CONSUMER = + new CopyOnWriteArrayList<>(); + + public StatsLogCompatManager(Context context) { + super(context); + } + + @Override + protected StatsLogger createLogger() { + return new StatsCompatLogger(mContext, mActivityContext); + } + + @Override + protected StatsLatencyLogger createLatencyLogger() { + return new StatsCompatLatencyLogger(); + } + + @Override + protected StatsImpressionLogger createImpressionLogger() { + return new StatsCompatImpressionLogger(); + } + + /** + * Synchronously writes an itemInfo to stats log + */ + @WorkerThread + public static void writeSnapshot(LauncherAtom.ItemInfo info, InstanceId instanceId) { + if (IS_VERBOSE) { + Log.d(TAG, String.format("\nwriteSnapshot(%d):\n%s", instanceId.getId(), info)); + } + if (Utilities.isRunningInTestHarness() || !Utilities.ATLEAST_R) { + return; + } + SysUiStatsLog.write(SysUiStatsLog.LAUNCHER_SNAPSHOT, + LAUNCHER_WORKSPACE_SNAPSHOT.getId() /* event_id */, + info.getItemCase().getNumber() /* target_id */, + instanceId.getId() /* instance_id */, + 0 /* uid */, + getPackageName(info) /* package_name */, + getComponentName(info) /* component_name */, + getGridX(info, false) /* grid_x */, + getGridY(info, false) /* grid_y */, + getPageId(info) /* page_id */, + getGridX(info, true) /* grid_x_parent */, + getGridY(info, true) /* grid_y_parent */, + getParentPageId(info) /* page_id_parent */, + getHierarchy(info) /* hierarchy */, + info.getIsWork() /* is_work_profile */, + 0 /* origin */, + getCardinality(info) /* cardinality */, + info.getWidget().getSpanX(), + info.getWidget().getSpanY(), + getFeatures(info), + getAttributes(info) /* attributes */ + ); + } + + private static byte[] getAttributes(LauncherAtom.ItemInfo itemInfo) { + LauncherAttributes.Builder responseBuilder = LauncherAttributes.newBuilder(); + itemInfo.getItemAttributesList().stream().map(Attribute::getNumber).forEach( + responseBuilder::addItemAttributes); + return responseBuilder.build().toByteArray(); + } + + /** + * Builds {@link StatsEvent} from {@link LauncherAtom.ItemInfo}. Used for pulled atom callback + * implementation. + */ + public static StatsEvent buildStatsEvent(LauncherAtom.ItemInfo info, + @Nullable InstanceId instanceId) { + return SysUiStatsLog.buildStatsEvent( + SysUiStatsLog.LAUNCHER_LAYOUT_SNAPSHOT, // atom ID, + LAUNCHER_WORKSPACE_SNAPSHOT.getId(), // event_id = 1; + info.getItemCase().getNumber(), // item_id = 2; + instanceId == null ? 0 : instanceId.getId(), //instance_id = 3; + 0, //uid = 4 [(is_uid) = true]; + getPackageName(info), // package_name = 5; + getComponentName(info), // component_name = 6; + getGridX(info, false), //grid_x = 7 [default = -1]; + getGridY(info, false), //grid_y = 8 [default = -1]; + getPageId(info), // page_id = 9 [default = -2]; + getGridX(info, true), //grid_x_parent = 10 [default = -1]; + getGridY(info, true), //grid_y_parent = 11 [default = -1]; + getParentPageId(info), //page_id_parent = 12 [default = -2]; + getHierarchy(info), // container_id = 13; + info.getIsWork(), // is_work_profile = 14; + 0, // attribute_id = 15; + getCardinality(info), // cardinality = 16; + info.getWidget().getSpanX(), // span_x = 17 [default = 1]; + info.getWidget().getSpanY(), // span_y = 18 [default = 1]; + getAttributes(info) /* attributes = 19 [(log_mode) = MODE_BYTES] */, + info.getIsKidsMode() /* is_kids_mode = 20 */ + ); + } + + /** + * Helps to construct and write statsd compatible log message. + */ + private static class StatsCompatLogger implements StatsLogger { + + private static final ItemInfo DEFAULT_ITEM_INFO = new ItemInfo(); + static { + DEFAULT_ITEM_INFO.itemType = ITEM_TYPE_NON_ACTIONABLE; + } + private final Context mContext; + private final Optional<ActivityContext> mActivityContext; + private ItemInfo mItemInfo = DEFAULT_ITEM_INFO; + private InstanceId mInstanceId = DEFAULT_INSTANCE_ID; + private OptionalInt mRank = OptionalInt.empty(); + private Optional<ContainerInfo> mContainerInfo = Optional.empty(); + private int mSrcState = LAUNCHER_STATE_UNSPECIFIED; + private int mDstState = LAUNCHER_STATE_UNSPECIFIED; + private Optional<FromState> mFromState = Optional.empty(); + private Optional<ToState> mToState = Optional.empty(); + private Optional<String> mEditText = Optional.empty(); + private SliceItem mSliceItem; + private LauncherAtom.Slice mSlice; + private Optional<Integer> mCardinality = Optional.empty(); + private int mInputType = SysUiStatsLog.LAUNCHER_UICHANGED__INPUT_TYPE__UNKNOWN; + private Optional<Integer> mFeatures = Optional.empty(); + private Optional<String> mPackageName = Optional.empty(); + /** + * Indicates the current rotation of the display. Uses {@link android.view.Surface values.} + */ + private final int mDisplayRotation; + + StatsCompatLogger(Context context, ActivityContext activityContext) { + mContext = context; + mActivityContext = Optional.ofNullable(activityContext); + mDisplayRotation = DisplayController.INSTANCE.get(mContext).getInfo().rotation; + } + + @Override + public StatsLogger withItemInfo(ItemInfo itemInfo) { + if (mContainerInfo.isPresent()) { + throw new IllegalArgumentException( + "ItemInfo and ContainerInfo are mutual exclusive; cannot log both."); + } + this.mItemInfo = itemInfo; + return this; + } + + @Override + public StatsLogger withInstanceId(InstanceId instanceId) { + this.mInstanceId = instanceId; + return this; + } + + @Override + public StatsLogger withRank(int rank) { + this.mRank = OptionalInt.of(rank); + return this; + } + + @Override + public StatsLogger withSrcState(int srcState) { + this.mSrcState = srcState; + return this; + } + + @Override + public StatsLogger withDstState(int dstState) { + this.mDstState = dstState; + return this; + } + + @Override + public StatsLogger withContainerInfo(ContainerInfo containerInfo) { + checkState(mItemInfo == DEFAULT_ITEM_INFO, + "ItemInfo and ContainerInfo are mutual exclusive; cannot log both."); + this.mContainerInfo = Optional.of(containerInfo); + return this; + } + + @Override + public StatsLogger withFromState(FromState fromState) { + this.mFromState = Optional.of(fromState); + return this; + } + + @Override + public StatsLogger withToState(ToState toState) { + this.mToState = Optional.of(toState); + return this; + } + + @Override + public StatsLogger withEditText(String editText) { + this.mEditText = Optional.of(editText); + return this; + } + + @Override + public StatsLogger withSliceItem(@NonNull SliceItem sliceItem) { + checkState(mItemInfo == DEFAULT_ITEM_INFO && mSlice == null, + "ItemInfo, Slice and SliceItem are mutual exclusive; cannot set more than one" + + " of them."); + this.mSliceItem = checkNotNull(sliceItem, "expected valid sliceItem but received null"); + return this; + } + + @Override + public StatsLogger withSlice(LauncherAtom.Slice slice) { + checkState(mItemInfo == DEFAULT_ITEM_INFO && mSliceItem == null, + "ItemInfo, Slice and SliceItem are mutual exclusive; cannot set more than one" + + " of them."); + checkNotNull(slice, "expected valid slice but received null"); + checkNotNull(slice.getUri(), "expected valid slice uri but received null"); + this.mSlice = slice; + return this; + } + + @Override + public StatsLogger withCardinality(int cardinality) { + this.mCardinality = Optional.of(cardinality); + return this; + } + + @Override + public StatsLogger withInputType(int inputType) { + this.mInputType = inputType; + return this; + } + + @Override + public StatsLogger withFeatures(int feature) { + this.mFeatures = Optional.of(feature); + return this; + } + + @Override + public StatsLogger withPackageName(@Nullable String packageName) { + mPackageName = Optional.ofNullable(packageName); + return this; + } + + @Override + public void log(EventEnum event) { + if (DEBUG) { + String name = (event instanceof Enum) ? ((Enum) event).name() : + event.getId() + ""; + Log.d(TAG, name); + } + + if (mSlice == null && mSliceItem != null) { + mSlice = LauncherAtom.Slice.newBuilder().setUri( + mSliceItem.getSlice().getUri().toString()).build(); + } + + if (mSlice != null) { + Executors.MODEL_EXECUTOR.execute( + () -> { + LauncherAtom.ItemInfo.Builder itemInfoBuilder = + LauncherAtom.ItemInfo.newBuilder().setSlice(mSlice); + mContainerInfo.ifPresent(itemInfoBuilder::setContainerInfo); + write(event, applyOverwrites(itemInfoBuilder.build())); + }); + return; + } + + if (mItemInfo == null) { + return; + } + + // Item is inside a collection, fetch collection info in a BG thread + // and then write to StatsLog. + if (mItemInfo.container < 0) { + LauncherAppState.INSTANCE.get(mContext).getModel().enqueueModelUpdateTask( + (taskController, dataModel, apps) -> write(event, applyOverwrites( + mItemInfo.buildProto( + (CollectionInfo) dataModel.itemsIdMap + .get(mItemInfo.container), + mContext)))); + } + } + + @Override + public void sendToInteractionJankMonitor(EventEnum event, View view) { + if (!(event instanceof LauncherEvent)) { + return; + } + switch ((LauncherEvent) event) { + case LAUNCHER_ALLAPPS_VERTICAL_SWIPE_BEGIN: + InteractionJankMonitorWrapper.begin( + view, + Cuj.CUJ_LAUNCHER_ALL_APPS_SCROLL); + break; + case LAUNCHER_ALLAPPS_VERTICAL_SWIPE_END: + InteractionJankMonitorWrapper.end(Cuj.CUJ_LAUNCHER_ALL_APPS_SCROLL); + break; + case LAUNCHER_PRIVATE_SPACE_LOCK_ANIMATION_BEGIN: + InteractionJankMonitorWrapper.begin(view, Cuj.CUJ_LAUNCHER_PRIVATE_SPACE_LOCK); + break; + case LAUNCHER_PRIVATE_SPACE_LOCK_ANIMATION_END: + InteractionJankMonitorWrapper.end(Cuj.CUJ_LAUNCHER_PRIVATE_SPACE_LOCK); + break; + case LAUNCHER_PRIVATE_SPACE_UNLOCK_ANIMATION_BEGIN: + InteractionJankMonitorWrapper.begin( + view, + Cuj.CUJ_LAUNCHER_PRIVATE_SPACE_UNLOCK); + break; + case LAUNCHER_PRIVATE_SPACE_UNLOCK_ANIMATION_END: + InteractionJankMonitorWrapper.end(Cuj.CUJ_LAUNCHER_PRIVATE_SPACE_UNLOCK); + break; + case LAUNCHER_WORK_UTILITY_VIEW_EXPAND_ANIMATION_BEGIN: + InteractionJankMonitorWrapper.begin( + view, + Cuj.CUJ_LAUNCHER_WORK_UTILITY_VIEW_EXPAND); + break; + case LAUNCHER_WORK_UTILITY_VIEW_EXPAND_ANIMATION_END: + InteractionJankMonitorWrapper.end(Cuj.CUJ_LAUNCHER_WORK_UTILITY_VIEW_EXPAND); + break; + case LAUNCHER_WORK_UTILITY_VIEW_SHRINK_ANIMATION_BEGIN: + InteractionJankMonitorWrapper.begin( + view, + Cuj.CUJ_LAUNCHER_WORK_UTILITY_VIEW_SHRINK); + break; + case LAUNCHER_WORK_UTILITY_VIEW_SHRINK_ANIMATION_END: + InteractionJankMonitorWrapper.end(Cuj.CUJ_LAUNCHER_WORK_UTILITY_VIEW_SHRINK); + break; + default: + break; + } + } + + private LauncherAtom.ItemInfo applyOverwrites(LauncherAtom.ItemInfo atomInfo) { + LauncherAtom.ItemInfo.Builder itemInfoBuilder = atomInfo.toBuilder(); + + mRank.ifPresent(itemInfoBuilder::setRank); + mContainerInfo.ifPresent(itemInfoBuilder::setContainerInfo); + + mActivityContext.ifPresent(activityContext -> + activityContext.applyOverwritesToLogItem(itemInfoBuilder)); + + if (mFromState.isPresent() || mToState.isPresent() || mEditText.isPresent()) { + FolderIcon.Builder folderIconBuilder = itemInfoBuilder + .getFolderIcon() + .toBuilder(); + mFromState.ifPresent(folderIconBuilder::setFromLabelState); + mToState.ifPresent(folderIconBuilder::setToLabelState); + mEditText.ifPresent(folderIconBuilder::setLabelInfo); + itemInfoBuilder.setFolderIcon(folderIconBuilder); + } + return itemInfoBuilder.build(); + } + + @WorkerThread + private void write(EventEnum event, LauncherAtom.ItemInfo atomInfo) { + InstanceId instanceId = mInstanceId; + int srcState = mSrcState; + int dstState = mDstState; + int inputType = mInputType; + String packageName = mPackageName.orElseGet(() -> getPackageName(atomInfo)); + if (IS_VERBOSE) { + String name = (event instanceof Enum) ? ((Enum) event).name() : + event.getId() + ""; + StringBuilder logStringBuilder = new StringBuilder("\n"); + if (instanceId != DEFAULT_INSTANCE_ID) { + logStringBuilder.append(String.format("InstanceId:%s ", instanceId)); + } + logStringBuilder.append(name); + if (srcState != LAUNCHER_STATE_UNSPECIFIED + || dstState != LAUNCHER_STATE_UNSPECIFIED) { + logStringBuilder.append( + String.format("(State:%s->%s)", getStateString(srcState), + getStateString(dstState))); + } + if (atomInfo.hasContainerInfo()) { + logStringBuilder.append("\n").append(atomInfo); + } + if (!TextUtils.isEmpty(packageName)) { + logStringBuilder.append(String.format("\nPackage name: %s", packageName)); + } + Log.d(TAG, logStringBuilder.toString()); + } + + for (StatsLogConsumer consumer : LOGS_CONSUMER) { + consumer.consume(event, atomInfo); + } + + // TODO: remove this when b/231648228 is fixed. + if (Utilities.isRunningInTestHarness() || !Utilities.ATLEAST_R) { + return; + } + int cardinality = mCardinality.orElseGet(() -> getCardinality(atomInfo)); + int features = mFeatures.orElseGet(() -> getFeatures(atomInfo)); + SysUiStatsLog.write( + SysUiStatsLog.LAUNCHER_EVENT, + SysUiStatsLog.LAUNCHER_UICHANGED__ACTION__DEFAULT_ACTION /* deprecated */, + srcState, + dstState, + null /* launcher extensions, deprecated */, + false /* quickstep_enabled, deprecated */, + event.getId() /* event_id */, + atomInfo.getItemCase().getNumber() /* target_id */, + instanceId.getId() /* instance_id TODO */, + 0 /* uid TODO */, + packageName /* package_name */, + getComponentName(atomInfo) /* component_name */, + getGridX(atomInfo, false) /* grid_x */, + getGridY(atomInfo, false) /* grid_y */, + getPageId(atomInfo) /* page_id */, + getGridX(atomInfo, true) /* grid_x_parent */, + getGridY(atomInfo, true) /* grid_y_parent */, + getParentPageId(atomInfo) /* page_id_parent */, + getHierarchy(atomInfo) /* hierarchy */, + false /* is_work_profile, deprecated */, + atomInfo.getRank() /* rank */, + atomInfo.getFolderIcon().getFromLabelState().getNumber() /* fromState */, + atomInfo.getFolderIcon().getToLabelState().getNumber() /* toState */, + atomInfo.getFolderIcon().getLabelInfo() /* edittext */, + cardinality /* cardinality */, + features /* features */, + getSearchAttributes(atomInfo) /* searchAttributes */, + getAttributes(atomInfo) /* attributes */, + inputType /* input_type */, + atomInfo.getUserType() /* user_type */, + getDisplayRotation() /* display_rotation */, + getRecentsOrientationHandler(atomInfo) /* recents_orientation_handler */); + } + + private int getDisplayRotation() { + return switch (mDisplayRotation) { + case ROTATION_90 -> LAUNCHER_UICHANGED__DISPLAY_ROTATION__ROTATION_90; + case ROTATION_180 -> LAUNCHER_UICHANGED__DISPLAY_ROTATION__ROTATION_180; + case ROTATION_270 -> LAUNCHER_UICHANGED__DISPLAY_ROTATION__ROTATION_270; + default -> LAUNCHER_UICHANGED__DISPLAY_ROTATION__ROTATION_0; + }; + } + + private int getRecentsOrientationHandler(LauncherAtom.ItemInfo itemInfo) { + var orientationHandler = + itemInfo.getContainerInfo().getTaskSwitcherContainer().getOrientationHandler(); + return switch (orientationHandler) { + case PORTRAIT -> LAUNCHER_UICHANGED__RECENTS_ORIENTATION_HANDLER__PORTRAIT; + case LANDSCAPE -> LAUNCHER_UICHANGED__RECENTS_ORIENTATION_HANDLER__LANDSCAPE; + case SEASCAPE -> LAUNCHER_UICHANGED__RECENTS_ORIENTATION_HANDLER__SEASCAPE; + }; + } + } + + /** + * Helps to construct and log statsd compatible latency events. + */ + private static class StatsCompatLatencyLogger implements StatsLatencyLogger { + private InstanceId mInstanceId = DEFAULT_INSTANCE_ID; + private LatencyType mType = LatencyType.UNKNOWN; + private int mPackageId = 0; + private long mLatencyInMillis; + private int mQueryLength = -1; + private int mSubEventType = 0; + private int mCardinality = -1; + + @Override + public StatsLatencyLogger withInstanceId(InstanceId instanceId) { + this.mInstanceId = instanceId; + return this; + } + + @Override + public StatsLatencyLogger withType(LatencyType type) { + this.mType = type; + return this; + } + + @Override + public StatsLatencyLogger withPackageId(int packageId) { + this.mPackageId = packageId; + return this; + } + + @Override + public StatsLatencyLogger withLatency(long latencyInMillis) { + this.mLatencyInMillis = latencyInMillis; + return this; + } + + @Override + public StatsLatencyLogger withQueryLength(int queryLength) { + this.mQueryLength = queryLength; + return this; + } + + @Override + public StatsLatencyLogger withSubEventType(int type) { + this.mSubEventType = type; + return this; + } + + @Override + public StatsLatencyLogger withCardinality(int cardinality) { + this.mCardinality = cardinality; + return this; + } + + @Override + public void log(EventEnum event) { + if (IS_VERBOSE) { + String name = (event instanceof Enum) ? ((Enum) event).name() : + event.getId() + ""; + StringBuilder logStringBuilder = new StringBuilder("\n"); + logStringBuilder.append(String.format("InstanceId:%s ", mInstanceId)); + logStringBuilder.append(String.format("%s=%sms", name, mLatencyInMillis)); + Log.d(LATENCY_TAG, logStringBuilder.toString()); + } + + SysUiStatsLog.write(SysUiStatsLog.LAUNCHER_LATENCY, + event.getId(), // event_id + mInstanceId.getId(), // instance_id + mPackageId, // package_id + mLatencyInMillis, // latency_in_millis + mType.getId(), //type + mQueryLength, // query_length + mSubEventType, // sub_event_type + mCardinality // cardinality + ); + } + } + + /** + * Helps to construct and log statsd compatible impression events. + */ + private static class StatsCompatImpressionLogger implements StatsImpressionLogger { + private InstanceId mInstanceId = DEFAULT_INSTANCE_ID; + private State mLauncherState = State.UNKNOWN; + private int mQueryLength = -1; + + // Fields used for Impression Logging V2. + private int mResultType; + private boolean mAboveKeyboard = false; + private int mUid; + private int mResultSource; + + @Override + public StatsImpressionLogger withInstanceId(InstanceId instanceId) { + this.mInstanceId = instanceId; + return this; + } + + @Override + public StatsImpressionLogger withState(State state) { + this.mLauncherState = state; + return this; + } + + @Override + public StatsImpressionLogger withQueryLength(int queryLength) { + this.mQueryLength = queryLength; + return this; + } + + @Override + public StatsImpressionLogger withResultType(int resultType) { + mResultType = resultType; + return this; + } + + + @Override + public StatsImpressionLogger withAboveKeyboard(boolean aboveKeyboard) { + mAboveKeyboard = aboveKeyboard; + return this; + } + + @Override + public StatsImpressionLogger withUid(int uid) { + mUid = uid; + return this; + } + + @Override + public StatsImpressionLogger withResultSource(int resultSource) { + mResultSource = resultSource; + return this; + } + + @Override + public void log(EventEnum event) { + if (IS_VERBOSE) { + String name = (event instanceof Enum) ? ((Enum) event).name() : + event.getId() + ""; + StringBuilder logStringBuilder = new StringBuilder("\n"); + logStringBuilder.append(String.format("InstanceId:%s ", mInstanceId)); + logStringBuilder.append(String.format("ImpressionEvent:%s ", name)); + logStringBuilder.append(String.format("\n\tLauncherState = %s ", mLauncherState)); + logStringBuilder.append(String.format("\tQueryLength = %s ", mQueryLength)); + logStringBuilder.append(String.format( + "\n\t ResultType = %s is_above_keyboard = %s" + + " uid = %s result_source = %s", + mResultType, + mAboveKeyboard, mUid, mResultSource)); + + Log.d(IMPRESSION_TAG, logStringBuilder.toString()); + } + + + SysUiStatsLog.write(SysUiStatsLog.LAUNCHER_IMPRESSION_EVENT_V2, + event.getId(), // event_id + mInstanceId.getId(), // instance_id + mLauncherState.getLauncherState(), // state + mQueryLength, // query_length + mResultType, //result type + mAboveKeyboard, // above keyboard + mUid, // uid + mResultSource // result source + + ); + } + } + + private static int getCardinality(LauncherAtom.ItemInfo info) { + if (Utilities.isRunningInTestHarness()) { + return 0; + } + switch (info.getContainerInfo().getContainerCase()) { + case PREDICTED_HOTSEAT_CONTAINER: + return info.getContainerInfo().getPredictedHotseatContainer().getCardinality(); + case TASK_BAR_CONTAINER: + return info.getContainerInfo().getTaskBarContainer().getCardinality(); + case SEARCH_RESULT_CONTAINER: + return info.getContainerInfo().getSearchResultContainer().getQueryLength(); + case EXTENDED_CONTAINERS: + ExtendedContainers extendedCont = info.getContainerInfo().getExtendedContainers(); + if (extendedCont.getContainerCase() == DEVICE_SEARCH_RESULT_CONTAINER) { + DeviceSearchResultContainer deviceSearchResultCont = extendedCont + .getDeviceSearchResultContainer(); + return deviceSearchResultCont.hasQueryLength() ? deviceSearchResultCont + .getQueryLength() : -1; + } + default: + return switch (info.getItemCase()) { + case FOLDER_ICON -> info.getFolderIcon().getCardinality(); + case TASK_VIEW -> info.getTaskView().getCardinality(); + default -> 0; + }; + } + } + + private static String getPackageName(LauncherAtom.ItemInfo info) { + return switch (info.getItemCase()) { + case APPLICATION -> info.getApplication().getPackageName(); + case SHORTCUT -> info.getShortcut().getShortcutName(); + case WIDGET -> info.getWidget().getPackageName(); + case TASK -> info.getTask().getPackageName(); + case SEARCH_ACTION_ITEM -> info.getSearchActionItem().getPackageName(); + default -> null; + }; + } + + private static String getComponentName(LauncherAtom.ItemInfo info) { + return switch (info.getItemCase()) { + case APPLICATION -> info.getApplication().getComponentName(); + case SHORTCUT -> info.getShortcut().getShortcutName(); + case WIDGET -> info.getWidget().getComponentName(); + case TASK -> info.getTask().getComponentName(); + case TASK_VIEW -> info.getTaskView().getComponentName(); + case SEARCH_ACTION_ITEM -> info.getSearchActionItem().getTitle(); + case SLICE -> info.getSlice().getUri(); + default -> null; + }; + } + + private static int getGridX(LauncherAtom.ItemInfo info, boolean parent) { + ContainerInfo containerInfo = info.getContainerInfo(); + if (containerInfo.getContainerCase() == FOLDER) { + if (parent) { + return containerInfo.getFolder().getWorkspace().getGridX(); + } else { + return containerInfo.getFolder().getGridX(); + } + } else if (containerInfo.getContainerCase() == EXTENDED_CONTAINERS) { + return containerInfo.getExtendedContainers() + .getDeviceSearchResultContainer().getGridX(); + } else { + return containerInfo.getWorkspace().getGridX(); + } + } + + private static int getGridY(LauncherAtom.ItemInfo info, boolean parent) { + if (info.getContainerInfo().getContainerCase() == FOLDER) { + if (parent) { + return info.getContainerInfo().getFolder().getWorkspace().getGridY(); + } else { + return info.getContainerInfo().getFolder().getGridY(); + } + } else { + return info.getContainerInfo().getWorkspace().getGridY(); + } + } + + private static int getPageId(LauncherAtom.ItemInfo info) { + return switch (info.getItemCase()) { + case TASK -> info.getTask().getIndex(); + case TASK_VIEW -> info.getTaskView().getIndex(); + default -> getPageIdFromContainerInfo(info.getContainerInfo()); + }; + } + + private static int getPageIdFromContainerInfo(LauncherAtom.ContainerInfo containerInfo) { + return switch (containerInfo.getContainerCase()) { + case FOLDER -> containerInfo.getFolder().getPageIndex(); + case HOTSEAT -> containerInfo.getHotseat().getIndex(); + case PREDICTED_HOTSEAT_CONTAINER -> + containerInfo.getPredictedHotseatContainer().getIndex(); + case TASK_BAR_CONTAINER -> containerInfo.getTaskBarContainer().getIndex(); + default -> containerInfo.getWorkspace().getPageIndex(); + }; + } + + private static int getParentPageId(LauncherAtom.ItemInfo info) { + return switch (info.getContainerInfo().getContainerCase()) { + case FOLDER -> { + if (info.getContainerInfo().getFolder().getParentContainerCase() + == ParentContainerCase.HOTSEAT) { + yield info.getContainerInfo().getFolder().getHotseat().getIndex(); + } + yield info.getContainerInfo().getFolder().getWorkspace().getPageIndex(); + } + case SEARCH_RESULT_CONTAINER -> + info.getContainerInfo().getSearchResultContainer().getWorkspace() + .getPageIndex(); + default -> info.getContainerInfo().getWorkspace().getPageIndex(); + }; + } + + private static int getHierarchy(LauncherAtom.ItemInfo info) { + if (Utilities.isRunningInTestHarness()) { + return 0; + } + if (info.getContainerInfo().getContainerCase() == FOLDER) { + return info.getContainerInfo().getFolder().getParentContainerCase().getNumber() + + FOLDER_HIERARCHY_OFFSET; + } else if (info.getContainerInfo().getContainerCase() == SEARCH_RESULT_CONTAINER) { + return info.getContainerInfo().getSearchResultContainer().getParentContainerCase() + .getNumber() + SEARCH_RESULT_HIERARCHY_OFFSET; + } else if (info.getContainerInfo().getContainerCase() == EXTENDED_CONTAINERS) { + return info.getContainerInfo().getExtendedContainers().getContainerCase().getNumber() + + EXTENDED_CONTAINERS_HIERARCHY_OFFSET; + } else if (info.getContainerInfo().getContainerCase() == ALL_APPS_CONTAINER) { + return info.getContainerInfo().getAllAppsContainer().getParentContainerCase() + .getNumber() + ALL_APPS_HIERARCHY_OFFSET; + } else { + return info.getContainerInfo().getContainerCase().getNumber(); + } + } + + private static String getStateString(int state) { + return switch (state) { + case LAUNCHER_UICHANGED__DST_STATE__BACKGROUND -> "BACKGROUND"; + case LAUNCHER_UICHANGED__DST_STATE__HOME -> "HOME"; + case LAUNCHER_UICHANGED__DST_STATE__OVERVIEW -> "OVERVIEW"; + case LAUNCHER_UICHANGED__DST_STATE__ALLAPPS -> "ALLAPPS"; + default -> "INVALID"; + }; + } + + private static int getFeatures(LauncherAtom.ItemInfo info) { + return switch (info.getItemCase()) { + case WIDGET -> info.getWidget().getWidgetFeatures(); + case TASK_VIEW -> info.getTaskView().getType(); + default -> 0; + }; + } + + private static int getSearchAttributes(LauncherAtom.ItemInfo info) { + if (Utilities.isRunningInTestHarness()) { + return 0; + } + ContainerInfo containerInfo = info.getContainerInfo(); + if (containerInfo.getContainerCase() == EXTENDED_CONTAINERS + && containerInfo.getExtendedContainers().getContainerCase() + == DEVICE_SEARCH_RESULT_CONTAINER + && containerInfo.getExtendedContainers() + .getDeviceSearchResultContainer().hasSearchAttributes() + ) { + return searchAttributesToInt(containerInfo.getExtendedContainers() + .getDeviceSearchResultContainer().getSearchAttributes()); + } + return 0; + } + + private static int searchAttributesToInt(SearchAttributes searchAttributes) { + int response = 0; + if (searchAttributes.getCorrectedQuery()) { + response = response | SEARCH_ATTRIBUTES_CORRECTED_QUERY; + } + if (searchAttributes.getDirectMatch()) { + response = response | SEARCH_ATTRIBUTES_DIRECT_MATCH; + } + if (searchAttributes.getEntryState() == SearchAttributes.EntryState.ALL_APPS) { + response = response | SEARCH_ATTRIBUTES_ENTRY_STATE_ALL_APPS; + } else if (searchAttributes.getEntryState() == SearchAttributes.EntryState.QSB) { + response = response | SEARCH_ATTRIBUTES_ENTRY_STATE_QSB; + } else if (searchAttributes.getEntryState() == SearchAttributes.EntryState.OVERVIEW) { + response = response | SEARCH_ATTRIBUTES_ENTRY_STATE_OVERVIEW; + } else if (searchAttributes.getEntryState() == SearchAttributes.EntryState.TASKBAR) { + response = response | SEARCH_ATTRIBUTES_ENTRY_STATE_TASKBAR; + } + + return response; + } + + /** + * Interface to get stats log while it is dispatched to the system + */ + public interface StatsLogConsumer { + + @WorkerThread + void consume(EventEnum event, LauncherAtom.ItemInfo atomInfo); + } +} diff --git a/quickstep/src/com/android/quickstep/orientation/LandscapePagedViewHandler.kt b/quickstep/src/com/android/quickstep/orientation/LandscapePagedViewHandler.kt index f9452f781e..4b9eb9e77f 100644 --- a/quickstep/src/com/android/quickstep/orientation/LandscapePagedViewHandler.kt +++ b/quickstep/src/com/android/quickstep/orientation/LandscapePagedViewHandler.kt @@ -37,9 +37,9 @@ import android.widget.LinearLayout import androidx.annotation.VisibleForTesting import androidx.core.util.component1 import androidx.core.util.component2 -import androidx.core.view.marginStart import androidx.core.view.updateLayoutParams import com.android.launcher3.DeviceProfile +import com.android.launcher3.Flags import com.android.launcher3.LauncherAnimUtils import com.android.launcher3.R import com.android.launcher3.Utilities @@ -48,16 +48,15 @@ import com.android.launcher3.touch.PagedOrientationHandler.ChildBounds import com.android.launcher3.touch.PagedOrientationHandler.Float2DAction import com.android.launcher3.touch.PagedOrientationHandler.Int2DAction import com.android.launcher3.touch.SingleAxisSwipeDetector -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_UNDEFINED import com.android.launcher3.util.SplitConfigurationOptions.STAGE_TYPE_MAIN +import com.android.launcher3.util.SplitConfigurationOptions.SplitBounds import com.android.launcher3.util.SplitConfigurationOptions.SplitPositionOption import com.android.launcher3.util.SplitConfigurationOptions.StagePosition import com.android.launcher3.views.BaseDragLayer import com.android.quickstep.views.IconAppChipView -import com.android.wm.shell.shared.split.SplitBounds import kotlin.math.max open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { @@ -84,9 +83,9 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { override fun fixBoundsForHomeAnimStartRect(outStartRect: RectF, deviceProfile: DeviceProfile) { // We don't need to check the "top" value here because the startRect is in the orientation // of the app, not of the fixed portrait launcher. - if (outStartRect.left > deviceProfile.deviceProperties.heightPx) { + if (outStartRect.left > deviceProfile.heightPx) { outStartRect.offsetTo(0f, outStartRect.top) - } else if (outStartRect.left < -deviceProfile.deviceProperties.heightPx) { + } else if (outStartRect.left < -deviceProfile.heightPx) { outStartRect.offsetTo(0f, outStartRect.top) } } @@ -119,8 +118,6 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { override fun getPrimarySize(rect: RectF): Float = rect.height() - override fun getSecondarySize(rect: RectF): Float = rect.width() - override fun getStart(rect: RectF): Float = rect.top override fun getEnd(rect: RectF): Float = rect.bottom @@ -183,12 +180,7 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { deviceProfile: DeviceProfile, taskInsetMargin: Float, taskViewIcon: View, - ): Float = - if (enableOverviewIconMenu()) { - x + (taskViewIcon as IconAppChipView).menuToCollapsedChipGap - } else { - thumbnailView.measuredWidth + x - taskInsetMargin - } + ): Float = thumbnailView.measuredWidth + x - taskInsetMargin override fun getTaskMenuY( y: Float, @@ -198,11 +190,6 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { taskInsetMargin: Float, taskViewIcon: View, ): Float { - if (enableOverviewIconMenu()) { - val marginStart = (taskViewIcon as IconAppChipView).backgroundMarginTopStart - return if (taskMenuView.isLayoutRtl) y - marginStart else y + marginStart - } - val layoutParams = taskMenuView.layoutParams as BaseDragLayer.LayoutParams var taskMenuY = y + taskInsetMargin @@ -213,19 +200,13 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { return taskMenuY } - override fun getAppChipMenuMarginX(appChipView: IconAppChipView, isRtl: Boolean): Int = - appChipView.menuToCollapsedChipGap - - override fun getAppChipMenuMarginY(appChipView: IconAppChipView, isRtl: Boolean): Int = - if (isRtl) appChipView.backgroundMarginTopStart else -appChipView.backgroundMarginTopStart - override fun getTaskMenuWidth( thumbnailView: View, deviceProfile: DeviceProfile, @StagePosition stagePosition: Int, ): Int = when { - enableOverviewIconMenu() -> + Flags.enableOverviewIconMenu() -> thumbnailView.resources.getDimensionPixelSize( R.dimen.task_thumbnail_icon_menu_expanded_width ) @@ -280,7 +261,7 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { if (isGroupedTaskView) { snapshotViewHeight } else { - taskViewHeight - deviceProfile.overviewProfile.taskThumbnailTopMarginPx + taskViewHeight - deviceProfile.overviewTaskThumbnailTopMarginPx } } } @@ -294,7 +275,7 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { desiredTaskId: Int, banner: View, ): Pair<Float, Float> { - val snapshotParams = thumbnailViews[0].layoutParams as ViewGroup.MarginLayoutParams + val snapshotParams = thumbnailViews[0].layoutParams as FrameLayout.LayoutParams val translationX = banner.height.toFloat() val translationY: Float if (splitBounds == null) { @@ -338,22 +319,6 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { override fun getTaskLaunchLength(secondaryDimension: Int, taskThumbnailBounds: Rect): Int = taskThumbnailBounds.left - override fun extendRectForPrimaryTranslation(rect: Rect, translation: Int) { - if (translation < 0) { - rect.top += translation - } else { - rect.bottom += translation - } - } - - override fun extendRectForSecondaryTranslation(rect: Rect, translation: Int) { - if (translation < 0) { - rect.left += translation - } else { - rect.right += translation - } - } - /* -------------------- */ override fun getChildBounds( @@ -394,15 +359,15 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { ) { // In fake land/seascape, the placeholder always needs to go to the "top" of the device, // which is the same bounds as 0 rotation. - val width = dp.deviceProperties.widthPx + val width = dp.widthPx val insetSizeAdjustment = getPlaceholderSizeAdjustment(dp) out.set(0, 0, width, placeholderHeight + insetSizeAdjustment) out.inset(placeholderInset, 0) // Adjust the top to account for content off screen. This will help to animate the view in // with rounded corners. - val screenWidth = dp.deviceProperties.widthPx - val screenHeight = dp.deviceProperties.heightPx + val screenWidth = dp.widthPx + val screenHeight = dp.heightPx val totalHeight = (1.0f * screenHeight / 2 * (screenWidth - 2 * placeholderInset) / screenWidth).toInt() out.top -= totalHeight - placeholderHeight @@ -467,8 +432,8 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { out2: Rect, ) { // In fake land/seascape, the window bounds are always top and bottom half - val screenHeight = dp.deviceProperties.heightPx - val screenWidth = dp.deviceProperties.widthPx + val screenHeight = dp.heightPx + val screenWidth = dp.widthPx out1.set(0, 0, screenWidth, screenHeight / 2 - splitDividerSize) out2.set(0, screenHeight / 2 + splitDividerSize, screenWidth, screenHeight) } @@ -507,12 +472,12 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { val secondaryParams = secondarySnapshot.layoutParams as FrameLayout.LayoutParams // Swap the margins that are set in TaskView#setRecentsOrientedState() - secondaryParams.topMargin = dp.overviewProfile.taskThumbnailTopMarginPx + secondaryParams.topMargin = dp.overviewTaskThumbnailTopMarginPx primaryParams.topMargin = 0 // Measure and layout the thumbnails bottom up, since the primary is on the visual left // (portrait bottom) and secondary is on the right (portrait top) - val spaceAboveSnapshot = dp.overviewProfile.taskThumbnailTopMarginPx + val spaceAboveSnapshot = dp.overviewTaskThumbnailTopMarginPx val totalThumbnailHeight = parentHeight - spaceAboveSnapshot val dividerBar = getDividerBarSize(totalThumbnailHeight, splitBoundsConfig) @@ -538,7 +503,7 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { parentWidth: Int, parentHeight: Int, ): Pair<Point, Point> { - val spaceAboveSnapshot = dp.overviewProfile.taskThumbnailTopMarginPx + val spaceAboveSnapshot = dp.overviewTaskThumbnailTopMarginPx val totalThumbnailHeight = parentHeight - spaceAboveSnapshot val dividerBar = getDividerBarSize(totalThumbnailHeight, splitBoundsConfig) @@ -623,7 +588,7 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { inSplitSelection: Boolean, oneIconHiddenDueToSmallWidth: Boolean, ) { - val spaceAboveSnapshot = deviceProfile.overviewProfile.taskThumbnailTopMarginPx + val spaceAboveSnapshot = deviceProfile.overviewTaskThumbnailTopMarginPx val totalThumbnailHeight = groupedTaskViewHeight - spaceAboveSnapshot val dividerBar: Int = getDividerBarSize(totalThumbnailHeight, splitConfig) @@ -633,7 +598,7 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { primarySnapshotHeight, totalThumbnailHeight, isRtl, - deviceProfile.overviewProfile.taskMarginPx, + deviceProfile.overviewTaskMarginPx, dividerBar, oneIconHiddenDueToSmallWidth, ) @@ -694,7 +659,7 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { dividerSize: Int, oneIconHiddenDueToSmallWidth: Boolean, ): SplitIconPositions { - return if (enableOverviewIconMenu()) { + return if (Flags.enableOverviewIconMenu()) { if (isRtl) { SplitIconPositions(-(totalThumbnailHeight - primarySnapshotHeight), 0) } else { @@ -730,7 +695,7 @@ open class LandscapePagedViewHandler : RecentsPagedOrientationHandler { open fun updateSplitIconsPosition(iconView: View, translationY: Int, isRtl: Boolean) { val layoutParams = iconView.layoutParams as FrameLayout.LayoutParams - if (enableOverviewIconMenu()) { + if (Flags.enableOverviewIconMenu()) { val appChipView = iconView as IconAppChipView layoutParams.gravity = if (isRtl) Gravity.BOTTOM or Gravity.START else Gravity.TOP or Gravity.END diff --git a/quickstep/src/com/android/quickstep/orientation/PortraitPagedViewHandler.kt b/quickstep/src/com/android/quickstep/orientation/PortraitPagedViewHandler.kt index a51beead06..74ae688bd7 100644 --- a/quickstep/src/com/android/quickstep/orientation/PortraitPagedViewHandler.kt +++ b/quickstep/src/com/android/quickstep/orientation/PortraitPagedViewHandler.kt @@ -31,6 +31,7 @@ import android.widget.FrameLayout import android.widget.LinearLayout import androidx.core.view.updateLayoutParams import com.android.launcher3.DeviceProfile +import com.android.launcher3.Flags.enableOverviewIconMenu import com.android.launcher3.LauncherAnimUtils import com.android.launcher3.R import com.android.launcher3.Utilities @@ -39,12 +40,10 @@ import com.android.launcher3.touch.DefaultPagedViewHandler import com.android.launcher3.touch.PagedOrientationHandler.Float2DAction import com.android.launcher3.touch.PagedOrientationHandler.Int2DAction import com.android.launcher3.touch.SingleAxisSwipeDetector -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu import com.android.launcher3.util.SplitConfigurationOptions import com.android.launcher3.util.SplitConfigurationOptions.SplitPositionOption import com.android.launcher3.util.SplitConfigurationOptions.StagePosition import com.android.quickstep.views.IconAppChipView -import com.android.wm.shell.shared.split.SplitBounds import kotlin.math.max import kotlin.math.min @@ -63,9 +62,9 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat } override fun fixBoundsForHomeAnimStartRect(outStartRect: RectF, deviceProfile: DeviceProfile) { - if (outStartRect.left > deviceProfile.deviceProperties.widthPx) { + if (outStartRect.left > deviceProfile.widthPx) { outStartRect.offsetTo(0f, outStartRect.top) - } else if (outStartRect.left < -deviceProfile.deviceProperties.widthPx) { + } else if (outStartRect.left < -deviceProfile.widthPx) { outStartRect.offsetTo(0f, outStartRect.top) } } @@ -84,8 +83,6 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat override fun getPrimarySize(rect: RectF): Float = rect.width() - override fun getSecondarySize(rect: RectF): Float = rect.height() - override fun getStart(rect: RectF): Float = rect.left override fun getEnd(rect: RectF): Float = rect.right @@ -136,16 +133,12 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat taskInsetMargin: Float, taskViewIcon: View, ): Float = - if (enableOverviewIconMenu()) { - x + if (deviceProfile.isLandscape) { + (x + + taskInsetMargin + + (thumbnailView.measuredWidth - thumbnailView.measuredHeight) / 2f) } else { - if (deviceProfile.deviceProperties.isLandscape) { - (x + - taskInsetMargin + - (thumbnailView.measuredWidth - thumbnailView.measuredHeight) / 2f) - } else { - x + taskInsetMargin - } + x + taskInsetMargin } override fun getTaskMenuY( @@ -155,19 +148,7 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat taskMenuView: View, taskInsetMargin: Float, taskViewIcon: View, - ): Float = - if (enableOverviewIconMenu()) { - taskViewIcon as IconAppChipView - y - taskViewIcon.menuToCollapsedChipGap - } else { - y + taskInsetMargin - } - - override fun getAppChipMenuMarginX(appChipView: IconAppChipView, isRtl: Boolean): Int = - if (isRtl) -appChipView.backgroundMarginTopStart else appChipView.backgroundMarginTopStart - - override fun getAppChipMenuMarginY(appChipView: IconAppChipView, isRtl: Boolean): Int = - appChipView.menuToCollapsedChipGap + ): Float = y + taskInsetMargin override fun getTaskMenuWidth( thumbnailView: View, @@ -181,8 +162,7 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat ) } - (deviceProfile.deviceProperties.isLandscape && - !deviceProfile.deviceProperties.isTablet) -> { + (deviceProfile.isLandscape && !deviceProfile.isTablet) -> { val padding = thumbnailView.resources.getDimensionPixelSize(R.dimen.task_menu_edge_padding) thumbnailView.measuredHeight - (2 * padding) @@ -201,7 +181,7 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat taskMenuX: Float, taskMenuY: Float, ): Int = - deviceProfile.deviceProperties.heightPx - + deviceProfile.heightPx - deviceProfile.insets.top - taskMenuY.toInt() - deviceProfile.overviewActionsClaimedSpaceBelow @@ -256,7 +236,7 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat override fun getDwbBannerTranslations( taskViewWidth: Int, taskViewHeight: Int, - splitBounds: SplitBounds?, + splitBounds: SplitConfigurationOptions.SplitBounds?, deviceProfile: DeviceProfile, thumbnailViews: Array<View>, desiredTaskId: Int, @@ -275,8 +255,7 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat } } else { if (desiredTaskId == splitBounds.leftTopTaskId) { - val snapshotParams = - thumbnailViews[0].layoutParams as ViewGroup.MarginLayoutParams + val snapshotParams = thumbnailViews[0].layoutParams as FrameLayout.LayoutParams val bottomRightTaskPlusDividerPercent = (splitBounds.rightBottomTaskPercent + splitBounds.dividerPercent) translationY = @@ -313,30 +292,14 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat override fun getTaskLaunchLength(secondaryDimension: Int, taskThumbnailBounds: Rect): Int = secondaryDimension - taskThumbnailBounds.bottom - override fun extendRectForPrimaryTranslation(rect: Rect, translation: Int) { - if (translation < 0) { - rect.left += translation - } else { - rect.right += translation - } - } - - override fun extendRectForSecondaryTranslation(rect: Rect, translation: Int) { - if (translation < 0) { - rect.top += translation - } else { - rect.bottom += translation - } - } - /* -------------------- */ override fun getDistanceToBottomOfRect(dp: DeviceProfile, rect: Rect): Int = - dp.deviceProperties.heightPx - rect.bottom + dp.heightPx - rect.bottom override fun getSplitPositionOptions(dp: DeviceProfile): List<SplitPositionOption> = when { - dp.deviceProperties.isTablet -> { + dp.isTablet -> { Utilities.getSplitPositionOptions(dp) } @@ -382,8 +345,8 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat @StagePosition stagePosition: Int, out: Rect, ) { - val screenWidth = dp.deviceProperties.widthPx - val screenHeight = dp.deviceProperties.heightPx + val screenWidth = dp.widthPx + val screenHeight = dp.heightPx val pinToRight = stagePosition == SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT val insetSizeAdjustment = getPlaceholderSizeAdjustment(dp, pinToRight) @@ -467,7 +430,7 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat */ private fun getPlaceholderSizeAdjustment(dp: DeviceProfile, pinToRight: Boolean): Int { val insetThickness = - if (!dp.deviceProperties.isLandscape) { + if (!dp.isLandscape) { dp.insets.top } else { if (pinToRight) dp.insets.right else dp.insets.left @@ -485,8 +448,8 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat out.pivotY = splitInstructionsHeight.toFloat() out.rotation = degreesRotated val distanceToEdge = - if (dp.deviceProperties.isPhone) { - if (dp.deviceProperties.isLandscape) { + if (dp.isPhone) { + if (dp.isLandscape) { out.resources.getDimensionPixelSize( R.dimen.split_instructions_bottom_margin_phone_landscape ) @@ -517,8 +480,8 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat out1: Rect, out2: Rect, ) { - val screenHeight = dp.deviceProperties.heightPx - val screenWidth = dp.deviceProperties.widthPx + val screenHeight = dp.heightPx + val screenWidth = dp.widthPx out1.set(0, 0, screenWidth, screenHeight / 2 - splitDividerSize) out2.set(0, screenHeight / 2 + splitDividerSize, screenWidth, screenHeight) if (!dp.isLeftRightSplit) { @@ -550,19 +513,17 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat override fun setSplitTaskSwipeRect( dp: DeviceProfile, outRect: Rect, - splitInfo: SplitBounds, + splitInfo: SplitConfigurationOptions.SplitBounds, desiredStagePosition: Int, ) { val topLeftTaskPercent = splitInfo.leftTopTaskPercent val dividerBarPercent = splitInfo.dividerPercent - val taskbarHeight = - if (dp.taskbarProfile.isTransientTaskbar) 0 else dp.taskbarProfile.height - val scale = - outRect.height().toFloat() / (dp.deviceProperties.availableHeightPx - taskbarHeight) - val topTaskHeight = dp.deviceProperties.availableHeightPx * topLeftTaskPercent + val taskbarHeight = if (dp.isTransientTaskbar) 0 else dp.taskbarHeight + val scale = outRect.height().toFloat() / (dp.availableHeightPx - taskbarHeight) + val topTaskHeight = dp.availableHeightPx * topLeftTaskPercent val scaledTopTaskHeight = topTaskHeight * scale - val dividerHeight = dp.deviceProperties.availableHeightPx * dividerBarPercent + val dividerHeight = dp.availableHeightPx * dividerBarPercent val scaledDividerHeight = dividerHeight * scale if (desiredStagePosition == SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT) { @@ -591,12 +552,12 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat secondarySnapshot: View, parentWidth: Int, parentHeight: Int, - splitBoundsConfig: SplitBounds, + splitBoundsConfig: SplitConfigurationOptions.SplitBounds, dp: DeviceProfile, isRtl: Boolean, inSplitSelection: Boolean, ) { - val spaceAboveSnapshot = dp.overviewProfile.taskThumbnailTopMarginPx + val spaceAboveSnapshot = dp.overviewTaskThumbnailTopMarginPx val primaryParams = primarySnapshot.layoutParams as FrameLayout.LayoutParams val secondaryParams = secondarySnapshot.layoutParams as FrameLayout.LayoutParams @@ -650,11 +611,11 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat override fun getGroupedTaskViewSizes( dp: DeviceProfile, - splitBoundsConfig: SplitBounds, + splitBoundsConfig: SplitConfigurationOptions.SplitBounds, parentWidth: Int, parentHeight: Int, ): Pair<Point, Point> { - val spaceAboveSnapshot = dp.overviewProfile.taskThumbnailTopMarginPx + val spaceAboveSnapshot = dp.overviewTaskThumbnailTopMarginPx val totalThumbnailHeight = parentHeight - spaceAboveSnapshot val dividerScale = splitBoundsConfig.dividerPercent val taskPercent = splitBoundsConfig.leftTopTaskPercent @@ -670,12 +631,9 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat secondTaskViewSize.x = parentWidth - firstTaskViewSize.x - scaledDividerBar secondTaskViewSize.y = totalThumbnailHeight } else { - val taskbarHeight = - if (dp.taskbarProfile.isTransientTaskbar) 0 else dp.taskbarProfile.height - val scale = - totalThumbnailHeight.toFloat() / - (dp.deviceProperties.availableHeightPx - taskbarHeight) - val topTaskHeight = dp.deviceProperties.availableHeightPx * taskPercent + val taskbarHeight = if (dp.isTransientTaskbar) 0 else dp.taskbarHeight + val scale = totalThumbnailHeight.toFloat() / (dp.availableHeightPx - taskbarHeight) + val topTaskHeight = dp.availableHeightPx * taskPercent val finalDividerHeight = Math.round(totalThumbnailHeight * dividerScale).toFloat() val scaledTopTaskHeight = topTaskHeight * scale firstTaskViewSize.x = parentWidth @@ -746,7 +704,7 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat groupedTaskViewWidth: Int, isRtl: Boolean, deviceProfile: DeviceProfile, - splitConfig: SplitBounds, + splitConfig: SplitConfigurationOptions.SplitBounds, inSplitSelection: Boolean, oneIconHiddenDueToSmallWidth: Boolean, ) { @@ -785,8 +743,7 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat .toInt() secondaryAppChipView.setSplitTranslationY( (primarySnapshotHeight + - (if (deviceProfile.deviceProperties.isTablet) 0 - else dividerThickness)) + (if (deviceProfile.isTablet) 0 else dividerThickness)) .toFloat() ) } @@ -799,11 +756,9 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat if (deviceProfile.isSeascape) deviceProfile.insets.right else deviceProfile.insets.left val fullscreenMidpointFromBottom = - ((deviceProfile.deviceProperties.widthPx - fullscreenInsetThickness) / 2) - val midpointFromEndPct = - fullscreenMidpointFromBottom.toFloat() / deviceProfile.deviceProperties.widthPx - val insetPct = - fullscreenInsetThickness.toFloat() / deviceProfile.deviceProperties.widthPx + ((deviceProfile.widthPx - fullscreenInsetThickness) / 2) + val midpointFromEndPct = fullscreenMidpointFromBottom.toFloat() / deviceProfile.widthPx + val insetPct = fullscreenInsetThickness.toFloat() / deviceProfile.widthPx val spaceAboveSnapshots = 0 val overviewThumbnailAreaThickness = groupedTaskViewWidth - spaceAboveSnapshots val bottomToMidpointOffset = @@ -904,9 +859,7 @@ class PortraitPagedViewHandler : DefaultPagedViewHandler(), RecentsPagedOrientat } override fun getDefaultSplitPosition(deviceProfile: DeviceProfile): Int { - check(deviceProfile.deviceProperties.isTablet) { - "Default position available only for large screens" - } + check(deviceProfile.isTablet) { "Default position available only for large screens" } return if (deviceProfile.isLeftRightSplit) { SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT } else { diff --git a/quickstep/src/com/android/quickstep/orientation/RecentsPagedOrientationHandler.kt b/quickstep/src/com/android/quickstep/orientation/RecentsPagedOrientationHandler.kt index 7313eebe8f..a7bc93b3d4 100644 --- a/quickstep/src/com/android/quickstep/orientation/RecentsPagedOrientationHandler.kt +++ b/quickstep/src/com/android/quickstep/orientation/RecentsPagedOrientationHandler.kt @@ -31,10 +31,10 @@ import com.android.launcher3.touch.PagedOrientationHandler import com.android.launcher3.touch.PagedOrientationHandler.Float2DAction import com.android.launcher3.touch.PagedOrientationHandler.Int2DAction import com.android.launcher3.touch.SingleAxisSwipeDetector +import com.android.launcher3.util.SplitConfigurationOptions import com.android.launcher3.util.SplitConfigurationOptions.SplitPositionOption import com.android.launcher3.util.SplitConfigurationOptions.StagePosition import com.android.quickstep.views.IconAppChipView -import com.android.wm.shell.shared.split.SplitBounds /** * Abstraction layer to separate horizontal and vertical specific implementations for @@ -50,8 +50,6 @@ interface RecentsPagedOrientationHandler : PagedOrientationHandler { fun getPrimarySize(rect: RectF): Float - fun getSecondarySize(rect: RectF): Float - val secondaryTranslationDirectionFactor: Int val degreesRotated: Float @@ -175,7 +173,7 @@ interface RecentsPagedOrientationHandler : PagedOrientationHandler { fun setSplitTaskSwipeRect( dp: DeviceProfile, outRect: Rect, - splitInfo: SplitBounds, + splitInfo: SplitConfigurationOptions.SplitBounds, @StagePosition desiredStagePosition: Int, ) @@ -184,7 +182,7 @@ interface RecentsPagedOrientationHandler : PagedOrientationHandler { secondarySnapshot: View, parentWidth: Int, parentHeight: Int, - splitBoundsConfig: SplitBounds, + splitBoundsConfig: SplitConfigurationOptions.SplitBounds, dp: DeviceProfile, isRtl: Boolean, inSplitSelection: Boolean, @@ -198,7 +196,7 @@ interface RecentsPagedOrientationHandler : PagedOrientationHandler { */ fun getGroupedTaskViewSizes( dp: DeviceProfile, - splitBoundsConfig: SplitBounds, + splitBoundsConfig: SplitConfigurationOptions.SplitBounds, parentWidth: Int, parentHeight: Int, ): Pair<Point, Point> @@ -238,7 +236,7 @@ interface RecentsPagedOrientationHandler : PagedOrientationHandler { groupedTaskViewWidth: Int, isRtl: Boolean, deviceProfile: DeviceProfile, - splitConfig: SplitBounds, + splitConfig: SplitConfigurationOptions.SplitBounds, inSplitSelection: Boolean, oneIconHiddenDueToSmallWidth: Boolean, ) @@ -266,10 +264,6 @@ interface RecentsPagedOrientationHandler : PagedOrientationHandler { taskViewIcon: View, ): Float - fun getAppChipMenuMarginX(appChipView: IconAppChipView, isRtl: Boolean): Int - - fun getAppChipMenuMarginY(appChipView: IconAppChipView, isRtl: Boolean): Int - fun getTaskMenuWidth( thumbnailView: View, deviceProfile: DeviceProfile, @@ -324,7 +318,7 @@ interface RecentsPagedOrientationHandler : PagedOrientationHandler { fun getDwbBannerTranslations( taskViewWidth: Int, taskViewHeight: Int, - splitBounds: SplitBounds?, + splitBounds: SplitConfigurationOptions.SplitBounds?, deviceProfile: DeviceProfile, thumbnailViews: Array<View>, desiredTaskId: Int, @@ -357,12 +351,6 @@ interface RecentsPagedOrientationHandler : PagedOrientationHandler { /** @return the length to drag a task to full screen for launch. */ fun getTaskLaunchLength(secondaryDimension: Int, taskThumbnailBounds: Rect): Int - /** Extends the provided rect to account for task dismiss primary translation. */ - fun extendRectForPrimaryTranslation(rect: Rect, translation: Int) - - /** Extends the provided rect to account for task dismiss secondary translation. */ - fun extendRectForSecondaryTranslation(rect: Rect, translation: Int) - /** * Maps the velocity from the coordinate plane of the foreground app to that of Launcher's * (which now will always be portrait) diff --git a/quickstep/src/com/android/quickstep/orientation/SeascapePagedViewHandler.kt b/quickstep/src/com/android/quickstep/orientation/SeascapePagedViewHandler.kt index 386ea5c22c..456115fdca 100644 --- a/quickstep/src/com/android/quickstep/orientation/SeascapePagedViewHandler.kt +++ b/quickstep/src/com/android/quickstep/orientation/SeascapePagedViewHandler.kt @@ -25,26 +25,24 @@ import android.view.Gravity import android.view.Surface import android.view.View import android.view.View.MeasureSpec -import android.view.ViewGroup import android.widget.FrameLayout import androidx.core.util.component1 import androidx.core.util.component2 -import androidx.core.view.marginStart import androidx.core.view.updateLayoutParams import com.android.launcher3.DeviceProfile +import com.android.launcher3.Flags import com.android.launcher3.R import com.android.launcher3.Utilities import com.android.launcher3.logger.LauncherAtom import com.android.launcher3.touch.SingleAxisSwipeDetector -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_UNDEFINED import com.android.launcher3.util.SplitConfigurationOptions.STAGE_TYPE_MAIN +import com.android.launcher3.util.SplitConfigurationOptions.SplitBounds import com.android.launcher3.util.SplitConfigurationOptions.SplitPositionOption import com.android.launcher3.views.BaseDragLayer import com.android.quickstep.views.IconAppChipView -import com.android.wm.shell.shared.split.SplitBounds class SeascapePagedViewHandler : LandscapePagedViewHandler() { override fun rotateInsets(insets: Rect, outInsets: Rect) { @@ -73,13 +71,7 @@ class SeascapePagedViewHandler : LandscapePagedViewHandler() { deviceProfile: DeviceProfile, taskInsetMargin: Float, taskViewIcon: View, - ): Float = - if (enableOverviewIconMenu()) { - taskViewIcon as IconAppChipView - x - taskViewIcon.menuToCollapsedChipGap - } else { - x + taskInsetMargin - } + ): Float = x + taskInsetMargin override fun getTaskMenuY( y: Float, @@ -89,9 +81,8 @@ class SeascapePagedViewHandler : LandscapePagedViewHandler() { taskInsetMargin: Float, taskViewIcon: View, ): Float { - if (enableOverviewIconMenu()) { - val marginStart = (taskViewIcon as IconAppChipView).backgroundMarginTopStart - return if (taskMenuView.isLayoutRtl) y + marginStart else y - marginStart + if (Flags.enableOverviewIconMenu()) { + return y } val lp = taskMenuView.layoutParams as BaseDragLayer.LayoutParams val taskMenuWidth = lp.width @@ -102,18 +93,12 @@ class SeascapePagedViewHandler : LandscapePagedViewHandler() { } } - override fun getAppChipMenuMarginX(appChipView: IconAppChipView, isRtl: Boolean): Int = - -appChipView.menuToCollapsedChipGap - - override fun getAppChipMenuMarginY(appChipView: IconAppChipView, isRtl: Boolean): Int = - if (isRtl) -appChipView.backgroundMarginTopStart else appChipView.backgroundMarginTopStart - override fun getTaskMenuHeight( taskInsetMargin: Float, deviceProfile: DeviceProfile, taskMenuX: Float, taskMenuY: Float, - ): Int = (deviceProfile.deviceProperties.availableWidthPx - taskInsetMargin - taskMenuX).toInt() + ): Int = (deviceProfile.availableWidthPx - taskInsetMargin - taskMenuX).toInt() override fun setSplitTaskSwipeRect( dp: DeviceProfile, @@ -152,7 +137,7 @@ class SeascapePagedViewHandler : LandscapePagedViewHandler() { if (isGroupedTaskView) { snapshotViewHeight } else { - taskViewHeight - deviceProfile.overviewProfile.taskThumbnailTopMarginPx + taskViewHeight - deviceProfile.overviewTaskThumbnailTopMarginPx } } } @@ -166,7 +151,7 @@ class SeascapePagedViewHandler : LandscapePagedViewHandler() { desiredTaskId: Int, banner: View, ): Pair<Float, Float> { - val snapshotParams = thumbnailViews[0].layoutParams as ViewGroup.MarginLayoutParams + val snapshotParams = thumbnailViews[0].layoutParams as FrameLayout.LayoutParams val translationX: Float = (taskViewWidth - banner.height).toFloat() val translationY: Float if (splitBounds == null) { @@ -187,7 +172,7 @@ class SeascapePagedViewHandler : LandscapePagedViewHandler() { } override fun getDistanceToBottomOfRect(dp: DeviceProfile, rect: Rect): Int = - dp.deviceProperties.widthPx - rect.right + dp.widthPx - rect.right override fun getSplitPositionOptions(dp: DeviceProfile): List<SplitPositionOption> = // Add "right" option which is actually the top @@ -299,12 +284,12 @@ class SeascapePagedViewHandler : LandscapePagedViewHandler() { val secondaryParams = secondarySnapshot.layoutParams as FrameLayout.LayoutParams // Swap the margins that are set in TaskView#setRecentsOrientedState() - secondaryParams.topMargin = dp.overviewProfile.taskThumbnailTopMarginPx + secondaryParams.topMargin = dp.overviewTaskThumbnailTopMarginPx primaryParams.topMargin = 0 // Measure and layout the thumbnails bottom up, since the primary is on the visual left // (portrait bottom) and secondary is on the right (portrait top) - val spaceAboveSnapshot = dp.overviewProfile.taskThumbnailTopMarginPx + val spaceAboveSnapshot = dp.overviewTaskThumbnailTopMarginPx val totalThumbnailHeight = parentHeight - spaceAboveSnapshot val dividerBar = getDividerBarSize(totalThumbnailHeight, splitBoundsConfig) @@ -331,7 +316,7 @@ class SeascapePagedViewHandler : LandscapePagedViewHandler() { ): Pair<Point, Point> { // Measure and layout the thumbnails bottom up, since the primary is on the visual left // (portrait bottom) and secondary is on the right (portrait top) - val spaceAboveSnapshot = dp.overviewProfile.taskThumbnailTopMarginPx + val spaceAboveSnapshot = dp.overviewTaskThumbnailTopMarginPx val totalThumbnailHeight = parentHeight - spaceAboveSnapshot val dividerBar = getDividerBarSize(totalThumbnailHeight, splitBoundsConfig) @@ -378,7 +363,7 @@ class SeascapePagedViewHandler : LandscapePagedViewHandler() { dividerSize: Int, oneIconHiddenDueToSmallWidth: Boolean, ): SplitIconPositions { - return if (enableOverviewIconMenu()) { + return if (Flags.enableOverviewIconMenu()) { if (isRtl) { SplitIconPositions( topLeftY = totalThumbnailHeight - primarySnapshotHeight, @@ -420,7 +405,7 @@ class SeascapePagedViewHandler : LandscapePagedViewHandler() { override fun updateSplitIconsPosition(iconView: View, translationY: Int, isRtl: Boolean) { val layoutParams = iconView.layoutParams as FrameLayout.LayoutParams - if (enableOverviewIconMenu()) { + if (Flags.enableOverviewIconMenu()) { val appChipView = iconView as IconAppChipView layoutParams.gravity = if (isRtl) Gravity.TOP or Gravity.START else Gravity.BOTTOM or Gravity.END diff --git a/quickstep/src/com/android/quickstep/recents/data/RecentTasksRepository.kt b/quickstep/src/com/android/quickstep/recents/data/RecentTasksRepository.kt index f7b1674443..53969c5219 100644 --- a/quickstep/src/com/android/quickstep/recents/data/RecentTasksRepository.kt +++ b/quickstep/src/com/android/quickstep/recents/data/RecentTasksRepository.kt @@ -22,7 +22,7 @@ import kotlinx.coroutines.flow.Flow interface RecentTasksRepository { /** Gets all the recent tasks, refreshing from data sources if [forceRefresh] is true. */ - fun getAllTaskData(displayId: Int, forceRefresh: Boolean = false): Flow<List<Task>> + fun getAllTaskData(forceRefresh: Boolean = false): Flow<List<Task>> /** * Gets the data associated with a task that has id [taskId]. Flow will settle on null if the @@ -46,5 +46,5 @@ interface RecentTasksRepository { * Sets the tasks that are visible, indicating that properties relating to visuals need to be * populated e.g. icons/thumbnails etc. */ - fun setVisibleTasks(displayId: Int, visibleTaskIdList: Set<Int>) + fun setVisibleTasks(visibleTaskIdList: Set<Int>) } diff --git a/quickstep/src/com/android/quickstep/recents/data/RecentsDeviceProfileRepositoryImpl.kt b/quickstep/src/com/android/quickstep/recents/data/RecentsDeviceProfileRepositoryImpl.kt index 5397638ce1..8450f09cea 100644 --- a/quickstep/src/com/android/quickstep/recents/data/RecentsDeviceProfileRepositoryImpl.kt +++ b/quickstep/src/com/android/quickstep/recents/data/RecentsDeviceProfileRepositoryImpl.kt @@ -29,7 +29,7 @@ class RecentsDeviceProfileRepositoryImpl(private val container: RecentsViewConta override fun getRecentsDeviceProfile() = with(container.deviceProfile) { RecentsDeviceProfile( - isLargeScreen = deviceProperties.isTablet, + isLargeScreen = isTablet, canEnterDesktopMode = DesktopModeStatus.canEnterDesktopMode(container.asContext()), ) } diff --git a/quickstep/src/com/android/quickstep/recents/data/TasksRepository.kt b/quickstep/src/com/android/quickstep/recents/data/TasksRepository.kt index 74aaeff09b..5274ef3266 100644 --- a/quickstep/src/com/android/quickstep/recents/data/TasksRepository.kt +++ b/quickstep/src/com/android/quickstep/recents/data/TasksRepository.kt @@ -18,8 +18,6 @@ package com.android.quickstep.recents.data import android.graphics.drawable.Drawable import android.util.Log -import android.util.SparseArray -import androidx.core.util.valueIterator import com.android.launcher3.util.coroutines.DispatcherProvider import com.android.quickstep.recents.data.TaskVisualsChangedDelegate.TaskIconChangedCallback import com.android.quickstep.recents.data.TaskVisualsChangedDelegate.TaskThumbnailChangedCallback @@ -48,36 +46,33 @@ class TasksRepository( private val dispatcherProvider: DispatcherProvider, ) : RecentTasksRepository { private val tasks = MutableStateFlow(MapForStateFlow<Int, Task>(emptyMap())) - private var visibleTaskIdsPerDisplay = SparseArray<Set<Int>>() private val taskRequests = HashMap<Int, Pair<Task.TaskKey, Job>>() - override fun getAllTaskData(displayId: Int, forceRefresh: Boolean): Flow<List<Task>> { - if (!visibleTaskIdsPerDisplay.contains(displayId)) { - visibleTaskIdsPerDisplay.put(displayId, emptySet()) - } + override fun getAllTaskData(forceRefresh: Boolean): Flow<List<Task>> { if (forceRefresh) { recentsModel.getTasks { newTaskList -> val recentTasks = - newTaskList.flatMap { groupTask -> groupTask.tasks }.associateBy { it.key.id } + newTaskList + .flatMap { groupTask -> groupTask.tasks } + .associateBy { it.key.id } + .also { newTaskMap -> + // Clean tasks that are not in the latest group tasks list. + val tasksNoLongerVisible = tasks.value.keys.subtract(newTaskMap.keys) + removeTasks(tasksNoLongerVisible) + } Log.d( TAG, "getAllTaskData: oldTasks ${tasks.value.keys}, newTasks: ${recentTasks.keys}", ) - tasks.update { oldTaskList -> - // Copy retrieved visuals to new Task objects - recentTasks.forEach { (taskId, task) -> - task.thumbnail = oldTaskList[taskId]?.thumbnail - task.icon = oldTaskList[taskId]?.icon - task.title = oldTaskList[taskId]?.title - task.titleDescription = oldTaskList[taskId]?.titleDescription - } - MapForStateFlow(recentTasks) - } + tasks.value = MapForStateFlow(recentTasks) - updateTaskRequests() + // Request data for tasks to prevent stale data. + // This will prevent thumbnail and icon from being replaced and null due to + // race condition. The new request will hit the cache and return immediately. + taskRequests.keys.forEach(::requestTaskData) } } - return tasks.map { it.values.filter { it.key.displayId == displayId }.toList() } + return tasks.map { it.values.toList() } } override fun getTaskDataById(taskId: Int) = tasks.map { it[taskId] } @@ -87,45 +82,30 @@ class TasksRepository( override fun getCurrentThumbnailById(taskId: Int) = tasks.value[taskId]?.thumbnail - override fun setVisibleTasks(displayId: Int, visibleTaskIdList: Set<Int>) { - if (visibleTaskIdList.isEmpty()) { - visibleTaskIdsPerDisplay.remove(displayId) - } else { - visibleTaskIdsPerDisplay.put(displayId, visibleTaskIdList) - } - updateTaskRequests() - } - - @Synchronized - private fun updateTaskRequests() { - val allVisibleTaskIds = - visibleTaskIdsPerDisplay.valueIterator().asSequence().flatMap { it }.toSet() - val requestsNeeded = allVisibleTaskIds.intersect(tasks.value.keys) - - val taskRequestIds = taskRequests.keys - val requestsNoLongerNeeded = taskRequestIds.subtract(requestsNeeded) - val newlyRequestedTasks = requestsNeeded.subtract(taskRequestIds) - if (requestsNoLongerNeeded.isNotEmpty() || newlyRequestedTasks.isNotEmpty()) { + override fun setVisibleTasks(visibleTaskIdList: Set<Int>) { + val tasksNoLongerVisible = taskRequests.keys.subtract(visibleTaskIdList) + val newlyVisibleTasks = visibleTaskIdList.subtract(taskRequests.keys) + if (tasksNoLongerVisible.isNotEmpty() || newlyVisibleTasks.isNotEmpty()) { Log.d( TAG, - "updateTaskRequests to: $requestsNeeded, " + - "removed: $requestsNoLongerNeeded, added: $newlyRequestedTasks", + "setVisibleTasks to: $visibleTaskIdList, " + + "removed: $tasksNoLongerVisible, added: $newlyVisibleTasks", ) } // Remove tasks are no longer visible - removeTasks(requestsNoLongerNeeded) + removeTasks(tasksNoLongerVisible) // Add new tasks to be requested - newlyRequestedTasks.forEach { taskId -> requestTaskData(taskId) } + newlyVisibleTasks.forEach { taskId -> requestTaskData(taskId) } } private fun requestTaskData(taskId: Int) { val task = tasks.value[taskId] ?: return - Log.i(TAG, "requestTaskData: $taskId") taskRequests[taskId] = Pair( task.key, - recentsCoroutineScope.launch(dispatcherProvider.lightweightBackground) { + recentsCoroutineScope.launch(dispatcherProvider.background) { + Log.i(TAG, "requestTaskData: $taskId") val thumbnailFetchDeferred = async { fetchThumbnail(task) } val iconFetchDeferred = async { fetchIcon(task) } awaitAll(thumbnailFetchDeferred, iconFetchDeferred) @@ -137,35 +117,33 @@ class TasksRepository( if (tasksToRemove.isEmpty()) return Log.i(TAG, "removeTasks: $tasksToRemove") - tasks.update { currentTasks -> - tasksToRemove.forEach { taskId -> - val request = taskRequests.remove(taskId) ?: return@forEach - val (taskKey, job) = request - job.cancel() + tasksToRemove.forEach { taskId -> + val request = taskRequests.remove(taskId) ?: return + val (taskKey, job) = request + job.cancel() - // un-registering callbacks - taskVisualsChangedDelegate.unregisterTaskIconChangedCallback(taskKey) - taskVisualsChangedDelegate.unregisterTaskThumbnailChangedCallback(taskKey) + // un-registering callbacks + taskVisualsChangedDelegate.unregisterTaskIconChangedCallback(taskKey) + taskVisualsChangedDelegate.unregisterTaskThumbnailChangedCallback(taskKey) - // Clearing Task to reduce memory footprint - currentTasks[taskId]?.apply { - thumbnail = null - icon = null - title = null - titleDescription = null - } + // Clearing Task to reduce memory footprint + tasks.value[taskId]?.apply { + thumbnail = null + icon = null + title = null + titleDescription = null } - MapForStateFlow(currentTasks) } + tasks.update { oldValue -> MapForStateFlow(oldValue) } } private suspend fun fetchIcon(task: Task) { - updateIcon(task.key.id, getIconFromDataSource(task)) + updateIcon(task.key.id, getIconFromDataSource(task)) // Fetch icon from cache taskVisualsChangedDelegate.registerTaskIconChangedCallback( task.key, object : TaskIconChangedCallback { override fun onTaskIconChanged() { - recentsCoroutineScope.launch(dispatcherProvider.lightweightBackground) { + recentsCoroutineScope.launch(dispatcherProvider.background) { updateIcon(task.key.id, getIconFromDataSource(task)) } } @@ -193,7 +171,7 @@ class TasksRepository( (isCurrentThumbnailLowRes && highResEnabled) if (!isRequestedResHigherThanCurrent) return - recentsCoroutineScope.launch(dispatcherProvider.lightweightBackground) { + recentsCoroutineScope.launch(dispatcherProvider.background) { updateThumbnail(task.key.id, getThumbnailFromDataSource(task)) } } @@ -202,30 +180,24 @@ class TasksRepository( } private fun updateIcon(taskId: Int, iconData: IconData) { - tasks.update { currentTasks -> - currentTasks[taskId]?.apply { - icon = iconData.icon - titleDescription = iconData.contentDescription - title = iconData.title - } - MapForStateFlow(currentTasks) - } + val task = tasks.value[taskId] ?: return + task.icon = iconData.icon + task.titleDescription = iconData.contentDescription + task.title = iconData.title + tasks.update { oldValue -> MapForStateFlow(oldValue + (taskId to task)) } } private fun updateThumbnail(taskId: Int, thumbnail: ThumbnailData?) { - tasks.update { currentTasks -> - currentTasks[taskId]?.thumbnail = thumbnail - MapForStateFlow(currentTasks) - } + val task = tasks.value[taskId] ?: return + task.thumbnail = thumbnail + tasks.update { oldValue -> MapForStateFlow(oldValue + (taskId to task)) } } private suspend fun getThumbnailFromDataSource(task: Task) = - withContext(dispatcherProvider.lightweightBackground) { - taskThumbnailDataSource.getThumbnail(task) - } + withContext(dispatcherProvider.background) { taskThumbnailDataSource.getThumbnail(task) } private suspend fun getIconFromDataSource(task: Task) = - withContext(dispatcherProvider.lightweightBackground) { + withContext(dispatcherProvider.background) { val iconCacheEntry = taskIconDataSource.getIcon(task) IconData(iconCacheEntry.icon, iconCacheEntry.contentDescription, iconCacheEntry.title) } diff --git a/quickstep/src/com/android/quickstep/recents/di/RecentsDependencies.kt b/quickstep/src/com/android/quickstep/recents/di/RecentsDependencies.kt index da235eef51..00ef13bf0d 100644 --- a/quickstep/src/com/android/quickstep/recents/di/RecentsDependencies.kt +++ b/quickstep/src/com/android/quickstep/recents/di/RecentsDependencies.kt @@ -19,12 +19,12 @@ package com.android.quickstep.recents.di import android.content.Context import android.util.Log import com.android.launcher3.util.coroutines.DispatcherProvider +import com.android.launcher3.util.coroutines.ProductionDispatchers import com.android.quickstep.RecentsModel import com.android.quickstep.recents.data.RecentTasksRepository import com.android.quickstep.recents.data.TaskVisualsChangedDelegate import com.android.quickstep.recents.data.TaskVisualsChangedDelegateImpl import com.android.quickstep.recents.data.TasksRepository -import com.android.quickstep.recents.domain.usecase.GetRemainingAppTimerDurationUseCase import com.android.quickstep.recents.domain.usecase.GetSysUiStatusNavFlagsUseCase import com.android.quickstep.recents.domain.usecase.GetTaskUseCase import com.android.quickstep.recents.domain.usecase.GetThumbnailPositionUseCase @@ -38,14 +38,11 @@ import kotlinx.coroutines.SupervisorJob internal typealias RecentsScopeId = String -fun Any.toScopeId(): String = this as? RecentsScopeId ?: this.hashCode().toString() - -class RecentsDependencies -private constructor(appContext: Context, dispatcherProvider: DispatcherProvider) { +class RecentsDependencies private constructor(appContext: Context) { private val scopes = mutableMapOf<RecentsScopeId, RecentsDependenciesScope>() init { - startDefaultScope(appContext, dispatcherProvider) + startDefaultScope(appContext) } /** @@ -53,10 +50,11 @@ private constructor(appContext: Context, dispatcherProvider: DispatcherProvider) * are global while others are per-RecentsView. The scope is used to differentiate between * RecentsViews. */ - private fun startDefaultScope(appContext: Context, dispatcherProvider: DispatcherProvider) { + private fun startDefaultScope(appContext: Context) { Log.d(TAG, "startDefaultScope") createScope(DEFAULT_SCOPE_ID).apply { set(RecentsViewData::class.java.simpleName, RecentsViewData()) + val dispatcherProvider: DispatcherProvider = ProductionDispatchers val recentsCoroutineScope = CoroutineScope( SupervisorJob() + dispatcherProvider.unconfined + CoroutineName("RecentsView") @@ -80,7 +78,7 @@ private constructor(appContext: Context, dispatcherProvider: DispatcherProvider) iconCache, taskVisualsChangedDelegate, recentsCoroutineScope, - dispatcherProvider, + ProductionDispatchers, ) } set(RecentTasksRepository::class.java.simpleName, recentTasksRepository) @@ -94,7 +92,7 @@ private constructor(appContext: Context, dispatcherProvider: DispatcherProvider) * @return the scope id associated with the new RecentsDependenciesScope. */ fun createRecentsViewScope(viewContext: Context): String { - val scopeId = viewContext.toScopeId() + val scopeId = viewContext.hashCode().toString() Log.d(TAG, "createRecentsViewScope $scopeId") val scope = createScope(scopeId).apply { @@ -170,13 +168,16 @@ private constructor(appContext: Context, dispatcherProvider: DispatcherProvider) return instance } - fun getScope(scope: Any) = getScope(scope.toScopeId()) + fun getScope(scope: Any): RecentsDependenciesScope { + val scopeId: RecentsScopeId = scope as? RecentsScopeId ?: scope.hashCode().toString() + return getScope(scopeId) + } fun getScope(scopeId: RecentsScopeId): RecentsDependenciesScope = scopes[scopeId] ?: createScope(scopeId) fun removeScope(scope: Any) { - val scopeId = scope.toScopeId() + val scopeId: RecentsScopeId = scope as? RecentsScopeId ?: scope.hashCode().toString() scopes[scopeId]?.close() scopes.remove(scopeId) log("Scope $scopeId removed") @@ -196,13 +197,7 @@ private constructor(appContext: Context, dispatcherProvider: DispatcherProvider) when (modelClass) { IsThumbnailValidUseCase::class.java -> IsThumbnailValidUseCase(rotationStateRepository = inject(scopeId)) - GetRemainingAppTimerDurationUseCase::class.java -> - GetRemainingAppTimerDurationUseCase(appTimersRepository = inject(scopeId)) - GetTaskUseCase::class.java -> - GetTaskUseCase( - tasksRepository = inject(scopeId), - getRemainingAppTimerDurationUseCase = inject(scopeId), - ) + GetTaskUseCase::class.java -> GetTaskUseCase(repository = inject(scopeId)) GetSysUiStatusNavFlagsUseCase::class.java -> GetSysUiStatusNavFlagsUseCase() GetThumbnailPositionUseCase::class.java -> GetThumbnailPositionUseCase( @@ -247,25 +242,17 @@ private constructor(appContext: Context, dispatcherProvider: DispatcherProvider) @Volatile private var instance: RecentsDependencies? = null - private fun initialize( - context: Context, - dispatcherProvider: DispatcherProvider, - ): RecentsDependencies { + private fun initialize(context: Context): RecentsDependencies { Log.d(TAG, "initializing") synchronized(this) { - val newInstance = - RecentsDependencies(context.applicationContext, dispatcherProvider) + val newInstance = RecentsDependencies(context.applicationContext) instance = newInstance return newInstance } } - @JvmStatic - fun maybeInitialize( - context: Context, - dispatcherProvider: DispatcherProvider, - ): RecentsDependencies { - return instance ?: initialize(context, dispatcherProvider) + fun maybeInitialize(context: Context): RecentsDependencies { + return instance ?: initialize(context) } fun getInstance(): RecentsDependencies { @@ -280,7 +267,7 @@ private constructor(appContext: Context, dispatcherProvider: DispatcherProvider) fun destroy(viewContext: Context) { synchronized(this) { val localInstance = instance ?: return - val scopeId = viewContext.toScopeId() + val scopeId = viewContext.hashCode().toString() val scope = localInstance.scopes[scopeId] if (scope == null) { Log.e( @@ -303,12 +290,6 @@ private constructor(appContext: Context, dispatcherProvider: DispatcherProvider) } } } - - fun hasScope(scope: Any) = - synchronized(this) { - val localInstance = instance ?: return false - localInstance.scopes.containsKey(scope.toScopeId()) - } } } @@ -323,7 +304,8 @@ inline fun <reified T> RecentsDependencies.Companion.get( extras: RecentsDependenciesExtras = RecentsDependenciesExtras(), noinline factory: ((extras: RecentsDependenciesExtras) -> T)? = null, ): T { - return getInstance().inject(scope.toScopeId(), extras, factory) + val scopeId: RecentsScopeId = scope as? RecentsScopeId ?: scope.hashCode().toString() + return getInstance().inject(scopeId, extras, factory) } inline fun <reified T> RecentsDependencies.Companion.get( diff --git a/quickstep/src/com/android/quickstep/recents/domain/model/TaskModel.kt b/quickstep/src/com/android/quickstep/recents/domain/model/TaskModel.kt index 05959e1138..bf29b1d692 100644 --- a/quickstep/src/com/android/quickstep/recents/domain/model/TaskModel.kt +++ b/quickstep/src/com/android/quickstep/recents/domain/model/TaskModel.kt @@ -18,7 +18,6 @@ package com.android.quickstep.recents.domain.model import android.graphics.drawable.Drawable import com.android.systemui.shared.recents.model.ThumbnailData -import java.time.Duration /** * Data class representing a task in the application. @@ -27,7 +26,6 @@ import java.time.Duration * title, associated icon, optional thumbnail data, and background color. * * @property id The unique identifier for this task. Must be an integer. - * @property packageName top activity package for the task's app * @property title The display title of the task. * @property titleDescription A content description of the task. * @property icon An optional drawable resource representing an icon for the task. Can be null if no @@ -37,20 +35,15 @@ import java.time.Duration * @property backgroundColor The background color of the task, represented as an integer color * value. * @property isLocked Indicates whether the [Task] is locked. - * @property isMinimized Indicates whether the [Task] is minimized. - * @property remainingAppDuration time remaining on the app timer for the application. */ data class TaskModel( val id: TaskId, - val packageName: String, val title: String?, val titleDescription: String?, val icon: Drawable?, val thumbnail: ThumbnailData?, val backgroundColor: Int, val isLocked: Boolean, - val isMinimized: Boolean, - val remainingAppDuration: Duration?, ) typealias TaskId = Int diff --git a/quickstep/src/com/android/quickstep/recents/domain/usecase/GetTaskUseCase.kt b/quickstep/src/com/android/quickstep/recents/domain/usecase/GetTaskUseCase.kt index 72d4ca65ab..a60144ba38 100644 --- a/quickstep/src/com/android/quickstep/recents/domain/usecase/GetTaskUseCase.kt +++ b/quickstep/src/com/android/quickstep/recents/domain/usecase/GetTaskUseCase.kt @@ -16,46 +16,26 @@ package com.android.quickstep.recents.domain.usecase -import android.os.UserHandle -import com.android.launcher3.Flags.enableRefactorDigitalWellbeingToast import com.android.quickstep.recents.data.RecentTasksRepository import com.android.quickstep.recents.domain.model.TaskModel import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.map -class GetTaskUseCase( - private val tasksRepository: RecentTasksRepository, - private val getRemainingAppTimerDurationUseCase: GetRemainingAppTimerDurationUseCase, -) { +class GetTaskUseCase(private val repository: RecentTasksRepository) { operator fun invoke(taskId: Int): Flow<TaskModel?> = - tasksRepository.getTaskDataById(taskId).map { task -> - if (task == null) return@map null - - val packageName = task.topComponent.packageName - - // TODO(b/405359794): If getTask for a single task ends up being called multiple - // times by the UI, explore alternatives of loading the timer info only once. - val remainingDuration = - if (enableRefactorDigitalWellbeingToast()) { - getRemainingAppTimerDurationUseCase( - packageName = packageName, - userHandle = UserHandle(task.key.userId), - ) - } else { - null - } - - TaskModel( - id = task.key.id, - packageName = packageName, - title = task.title, - titleDescription = task.titleDescription, - icon = task.icon, - thumbnail = task.thumbnail, - backgroundColor = task.colorBackground, - isLocked = task.isLocked, - isMinimized = task.isMinimized, - remainingAppDuration = remainingDuration, - ) + repository.getTaskDataById(taskId).map { task -> + if (task != null) { + TaskModel( + id = task.key.id, + title = task.title, + titleDescription = task.titleDescription, + icon = task.icon, + thumbnail = task.thumbnail, + backgroundColor = task.colorBackground, + isLocked = task.isLocked, + ) + } else { + null + } } } diff --git a/quickstep/src/com/android/quickstep/recents/domain/usecase/OrganizeDesktopTasksUseCase.kt b/quickstep/src/com/android/quickstep/recents/domain/usecase/OrganizeDesktopTasksUseCase.kt index 869677149f..4ea39d816e 100644 --- a/quickstep/src/com/android/quickstep/recents/domain/usecase/OrganizeDesktopTasksUseCase.kt +++ b/quickstep/src/com/android/quickstep/recents/domain/usecase/OrganizeDesktopTasksUseCase.kt @@ -19,7 +19,6 @@ package com.android.quickstep.recents.domain.usecase import android.graphics.Rect import android.graphics.RectF import androidx.core.graphics.toRect -import com.android.quickstep.recents.domain.model.DesktopLayoutConfig import com.android.quickstep.recents.domain.model.DesktopTaskBoundsData /** This usecase is responsible for organizing desktop windows in a non-overlapping way. */ @@ -34,10 +33,9 @@ class OrganizeDesktopTasksUseCase { * row height which is equivalent assuming fixed height), balanced rows and minimal wasted * space. */ - operator fun invoke( + fun run( desktopBounds: Rect, taskBounds: List<DesktopTaskBoundsData>, - layoutConfig: DesktopLayoutConfig, ): List<DesktopTaskBoundsData> { if (desktopBounds.isEmpty || taskBounds.isEmpty()) { return emptyList() @@ -50,43 +48,13 @@ class OrganizeDesktopTasksUseCase { return emptyList() } - // Assuming we can place all windows in one row, do one pass first to check whether all - // windows can fit. - var availableLayoutBounds = - desktopBounds.getLayoutEffectiveBounds( - singleRow = true, - taskNumber = taskBounds.size, - layoutConfig, - ) - var resultRects = - findOptimalHeightAndBalancedWidth( - availableLayoutBounds, - validTaskBounds, - layoutConfig, - singleRow = true, - ) - - if (!canFitInOneRow(resultRects)) { - availableLayoutBounds = - desktopBounds.getLayoutEffectiveBounds( - singleRow = true, - taskNumber = taskBounds.size, - layoutConfig, - ) - resultRects = - findOptimalHeightAndBalancedWidth( - availableLayoutBounds, - validTaskBounds, - layoutConfig, - singleRow = true, - ) - } + val availableLayoutBounds = desktopBounds.getLayoutEffectiveBounds() + val resultRects = findOptimalHeightAndBalancedWidth(availableLayoutBounds, validTaskBounds) centerTaskWindows( availableLayoutBounds, resultRects.maxOf { it.bottom }.toInt(), resultRects, - layoutConfig, ) val result = mutableListOf<DesktopTaskBoundsData>() @@ -97,39 +65,8 @@ class OrganizeDesktopTasksUseCase { } /** Calculates the effective bounds for layout by applying insets to the raw desktop bounds. */ - private fun Rect.getLayoutEffectiveBounds( - singleRow: Boolean, - taskNumber: Int, - layoutConfig: DesktopLayoutConfig, - ) = - Rect(this).apply { - val topInset = - if (singleRow) layoutConfig.topBottomMarginOneRow - else layoutConfig.topMarginMultiRows - val bottomInset = - if (singleRow) layoutConfig.topBottomMarginOneRow - else layoutConfig.bottomMarginMultiRows - val leftInset = - if (singleRow && taskNumber <= 1) layoutConfig.leftRightMarginOneRow - else layoutConfig.leftRightMarginMultiRows - val rightInset = - if (singleRow && taskNumber <= 1) leftInset - else (leftInset - layoutConfig.horizontalPaddingBetweenTasks) - - inset(leftInset, topInset, rightInset, bottomInset) - } - - /** Calculates the maximum height for a task window in the desktop tile in Overview. */ - private fun getMaxTaskHeight( - effectiveLayoutBounds: Rect, - layoutConfig: DesktopLayoutConfig, - singleRow: Boolean, - ) = - if (singleRow) { - effectiveLayoutBounds.height() - } else { - effectiveLayoutBounds.height() - 2 * layoutConfig.verticalPaddingBetweenTasks - } + private fun Rect.getLayoutEffectiveBounds() = + Rect(this).apply { inset(OVERVIEW_INSET_TOP_BOTTOM, OVERVIEW_INSET_LEFT_RIGHT) } /** * Determines the optimal height for task windows and balances the row widths to minimize wasted @@ -138,8 +75,6 @@ class OrganizeDesktopTasksUseCase { private fun findOptimalHeightAndBalancedWidth( availableLayoutBounds: Rect, validTaskBounds: List<DesktopTaskBoundsData>, - layoutConfig: DesktopLayoutConfig, - singleRow: Boolean, ): List<RectF> { // Right bound of the narrowest row. var minRight: Int @@ -157,7 +92,7 @@ class OrganizeDesktopTasksUseCase { // Determine the optimal height bisecting between [lowHeight] and [highHeight]. Once this // optimal height is known, [heightFixed] is set to `true` and the rows are balanced by // repeatedly squeezing the widest row to cause windows to overflow to the subsequent rows. - var lowHeight = layoutConfig.verticalPaddingBetweenTasks + var lowHeight = VERTICAL_SPACE_BETWEEN_TASKS var highHeight = maxOf(lowHeight, availableLayoutBounds.height() + 1) var optimalHeight = 0.5f * (lowHeight + highHeight) var heightFixed = false @@ -178,11 +113,7 @@ class OrganizeDesktopTasksUseCase { fitWindowRectsInBounds( Rect(availableLayoutBounds).apply { right = rightBound }, validTaskBounds, - minOf( - getMaxTaskHeight(availableLayoutBounds, layoutConfig, singleRow), - optimalHeight.toInt(), - ), - layoutConfig, + minOf(MAXIMUM_TASK_HEIGHT, optimalHeight.toInt()), ) val allWindowsFit = fitWindowResult.allWindowsFit resultRects = fitWindowResult.calculatedBounds @@ -237,11 +168,7 @@ class OrganizeDesktopTasksUseCase { fitWindowRectsInBounds( Rect(availableLayoutBounds).apply { right = rightBound }, validTaskBounds, - minOf( - getMaxTaskHeight(availableLayoutBounds, layoutConfig, singleRow), - optimalHeight.toInt(), - ), - layoutConfig, + minOf(MAXIMUM_TASK_HEIGHT, optimalHeight.toInt()), ) resultRects = fitWindowResult.calculatedBounds } @@ -272,14 +199,10 @@ class OrganizeDesktopTasksUseCase { layoutBounds: Rect, taskBounds: List<DesktopTaskBoundsData>, optimalWindowHeight: Int, - layoutConfig: DesktopLayoutConfig, ): FitWindowResult { val numTasks = taskBounds.size val outRects = mutableListOf<RectF>() - val verticalPadding = layoutConfig.verticalPaddingBetweenTasks - val horizontalPadding = layoutConfig.horizontalPaddingBetweenTasks - // Start in the top-left corner of [layoutBounds]. var left = layoutBounds.left var top = layoutBounds.top @@ -296,9 +219,9 @@ class OrganizeDesktopTasksUseCase { // Use the height to calculate the width val scale = optimalWindowHeight / taskBounds.height().toFloat() val width = (taskBounds.width() * scale).toInt() - val optimalRowHeight = optimalWindowHeight + verticalPadding + val optimalRowHeight = optimalWindowHeight + VERTICAL_SPACE_BETWEEN_TASKS - if (left + width + horizontalPadding > layoutBounds.right) { + if ((left + width + HORIZONTAL_SPACE_BETWEEN_TASKS) > layoutBounds.right) { // Move to the next row if possible. minRight = minOf(minRight, left) maxRight = maxOf(maxRight, left) @@ -308,7 +231,8 @@ class OrganizeDesktopTasksUseCase { // row does not fit within the available width. if ( (top + optimalRowHeight) > layoutBounds.bottom || - layoutBounds.left + width + horizontalPadding > layoutBounds.right + layoutBounds.left + width + HORIZONTAL_SPACE_BETWEEN_TASKS > + layoutBounds.right ) { allWindowsFit = false break @@ -327,7 +251,7 @@ class OrganizeDesktopTasksUseCase { ) // Increment horizontal position. - left += (width + horizontalPadding) + left += (width + HORIZONTAL_SPACE_BETWEEN_TASKS) } // Update the narrowest and widest row width for the last row. @@ -338,12 +262,7 @@ class OrganizeDesktopTasksUseCase { } /** Centers task windows in the center of Overview. */ - private fun centerTaskWindows( - layoutBounds: Rect, - maxBottom: Int, - outWindowRects: List<RectF>, - layoutConfig: DesktopLayoutConfig, - ) { + private fun centerTaskWindows(layoutBounds: Rect, maxBottom: Int, outWindowRects: List<RectF>) { if (outWindowRects.isEmpty()) { return } @@ -352,14 +271,11 @@ class OrganizeDesktopTasksUseCase { var currentRowY = outWindowRects[0].top var currentRowFirstItemIndex = 0 val offsetY = (layoutBounds.bottom - maxBottom) / 2f - val horizontal_padding = - if (outWindowRects.size == 1) 0 else layoutConfig.horizontalPaddingBetweenTasks // Batch process to center overview desktop task windows within the same row. fun batchCenterDesktopTaskWindows(endIndex: Int) { // Calculate the shift amount required to center the desktop task items. - val rangeCenterX = - (currentRowUnionRange.left + currentRowUnionRange.right + horizontal_padding) / 2f + val rangeCenterX = (currentRowUnionRange.left + currentRowUnionRange.right) / 2f val currentDiffX = (layoutBounds.centerX() - rangeCenterX).coerceAtLeast(0f) for (j in currentRowFirstItemIndex until endIndex) { outWindowRects[j].offset(currentDiffX, offsetY) @@ -385,13 +301,11 @@ class OrganizeDesktopTasksUseCase { batchCenterDesktopTaskWindows(outWindowRects.size) } - /** Returns true if all task windows can fit in one row. */ - private fun canFitInOneRow(resultRect: List<RectF>): Boolean { - if (resultRect.isEmpty()) { - return true - } - - val firstTop = resultRect.first().top - return resultRect.all { it.top == firstTop } + private companion object { + const val VERTICAL_SPACE_BETWEEN_TASKS = 24 + const val HORIZONTAL_SPACE_BETWEEN_TASKS = 24 + const val OVERVIEW_INSET_TOP_BOTTOM = 16 + const val OVERVIEW_INSET_LEFT_RIGHT = 16 + const val MAXIMUM_TASK_HEIGHT = 800 } } diff --git a/quickstep/src/com/android/quickstep/recents/ui/mapper/TaskUiStateMapper.kt b/quickstep/src/com/android/quickstep/recents/ui/mapper/TaskUiStateMapper.kt index e035015070..619075ff83 100644 --- a/quickstep/src/com/android/quickstep/recents/ui/mapper/TaskUiStateMapper.kt +++ b/quickstep/src/com/android/quickstep/recents/ui/mapper/TaskUiStateMapper.kt @@ -17,53 +17,17 @@ package com.android.quickstep.recents.ui.mapper import android.view.View.OnClickListener -import com.android.launcher3.Flags.enableDesktopExplodedView -import com.android.launcher3.R -import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT import com.android.quickstep.recents.ui.viewmodel.TaskData -import com.android.quickstep.task.apptimer.TaskAppTimerUiState -import com.android.quickstep.task.thumbnail.TaskHeaderUiState import com.android.quickstep.task.thumbnail.TaskThumbnailUiState import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.BackgroundOnly import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.LiveTile import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.Snapshot import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.SnapshotSplash +import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.ThumbnailHeader import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.Uninitialized object TaskUiStateMapper { - /** - * Converts a [TaskData] object into a [TaskHeaderUiState] for display in the UI. - * - * This function handles different types of [TaskData] and determines the appropriate UI state - * based on the data and provided flags. - * - * @param taskData The [TaskData] to convert. Can be null or a specific subclass. - * @param hasHeader A flag indicating whether the UI should display a header. - * @param clickCloseListener A callback when the close button in the UI is clicked. - * @return A [TaskHeaderUiState] representing the UI state for the given task data. - */ - fun toTaskHeaderState( - taskData: TaskData?, - hasHeader: Boolean, - clickCloseListener: OnClickListener?, - ): TaskHeaderUiState = - when { - taskData !is TaskData.Data -> TaskHeaderUiState.HideHeader - canHeaderBeCreated(taskData, hasHeader, clickCloseListener) -> { - TaskHeaderUiState.ShowHeader( - TaskHeaderUiState.ThumbnailHeader( - // TODO(http://b/353965691): figure out what to do when `icon` or - // `titleDescription` is null. - taskData.icon!!, - taskData.titleDescription!!, - clickCloseListener!!, - ) - ) - } - else -> TaskHeaderUiState.HideHeader - } - /** * Converts a [TaskData] object into a [TaskThumbnailUiState] for display in the UI. * @@ -72,26 +36,48 @@ object TaskUiStateMapper { * * @param taskData The [TaskData] to convert. Can be null or a specific subclass. * @param isLiveTile A flag indicating whether the task data represents live tile. + * @param hasHeader A flag indicating whether the UI should display a header. + * @param clickCloseListener A callback when the close button in the UI is clicked. * @return A [TaskThumbnailUiState] representing the UI state for the given task data. */ - fun toTaskThumbnailUiState(taskData: TaskData?): TaskThumbnailUiState = + fun toTaskThumbnailUiState( + taskData: TaskData?, + isLiveTile: Boolean, + hasHeader: Boolean, + clickCloseListener: OnClickListener?, + ): TaskThumbnailUiState = when { taskData !is TaskData.Data -> Uninitialized - taskData.isLiveTile -> LiveTile + isLiveTile -> createLiveTileState(taskData, hasHeader, clickCloseListener) isBackgroundOnly(taskData) -> BackgroundOnly(taskData.backgroundColor) isSnapshotSplash(taskData) -> SnapshotSplash( - Snapshot( - taskData.thumbnailData?.thumbnail!!, - taskData.thumbnailData.rotation, - taskData.backgroundColor, - ), + createSnapshotState(taskData, hasHeader, clickCloseListener), taskData.icon, ) - else -> Uninitialized } + private fun createSnapshotState( + taskData: TaskData.Data, + hasHeader: Boolean, + clickCloseListener: OnClickListener?, + ): Snapshot = + if (canHeaderBeCreated(taskData, hasHeader, clickCloseListener)) { + Snapshot.WithHeader( + taskData.thumbnailData?.thumbnail!!, + taskData.thumbnailData.rotation, + taskData.backgroundColor, + ThumbnailHeader(taskData.icon!!, taskData.titleDescription!!, clickCloseListener!!), + ) + } else { + Snapshot.WithoutHeader( + taskData.thumbnailData?.thumbnail!!, + taskData.thumbnailData.rotation, + taskData.backgroundColor, + ) + } + private fun isBackgroundOnly(taskData: TaskData.Data) = taskData.isLocked || taskData.thumbnailData == null @@ -103,42 +89,21 @@ object TaskUiStateMapper { hasHeader: Boolean, clickCloseListener: OnClickListener?, ) = - enableDesktopExplodedView() && - hasHeader && + hasHeader && taskData.icon != null && taskData.titleDescription != null && clickCloseListener != null - /** - * Converts a [TaskData] object into a [TaskAppTimerUiState] for displaying an app timer toast - * - * @property taskData The [TaskData] to convert. Can be null or a specific sub-class. - * @property stagePosition the position of this task when shown as a group - * @return a [TaskAppTimerUiState] representing state for the information displayed in the app - * timer toast. - */ - fun toTaskAppTimerUiState( - canShowAppTimer: Boolean, - stagePosition: Int, - taskData: TaskData?, - ): TaskAppTimerUiState = - when { - taskData !is TaskData.Data -> TaskAppTimerUiState.Uninitialized - - !canShowAppTimer || taskData.remainingAppTimerDuration == null -> - TaskAppTimerUiState.NoTimer(taskDescription = taskData.titleDescription) - - else -> - TaskAppTimerUiState.Timer( - taskDescription = taskData.titleDescription, - timeRemaining = taskData.remainingAppTimerDuration, - taskPackageName = taskData.packageName, - accessibilityActionId = - if (stagePosition == STAGE_POSITION_BOTTOM_OR_RIGHT) { - R.id.action_digital_wellbeing_bottom_right - } else { - R.id.action_digital_wellbeing_top_left - }, - ) - } + private fun createLiveTileState( + taskData: TaskData.Data, + hasHeader: Boolean, + clickCloseListener: OnClickListener?, + ) = + if (canHeaderBeCreated(taskData, hasHeader, clickCloseListener)) { + // TODO(http://b/353965691): figure out what to do when `icon` or `titleDescription` is + // null. + LiveTile.WithHeader( + ThumbnailHeader(taskData.icon!!, taskData.titleDescription!!, clickCloseListener!!) + ) + } else LiveTile.WithoutHeader } diff --git a/quickstep/src/com/android/quickstep/recents/ui/viewmodel/DesktopTaskViewModel.kt b/quickstep/src/com/android/quickstep/recents/ui/viewmodel/DesktopTaskViewModel.kt index 4e0e9609d0..4de0b90045 100644 --- a/quickstep/src/com/android/quickstep/recents/ui/viewmodel/DesktopTaskViewModel.kt +++ b/quickstep/src/com/android/quickstep/recents/ui/viewmodel/DesktopTaskViewModel.kt @@ -18,7 +18,6 @@ package com.android.quickstep.recents.ui.viewmodel import android.graphics.Rect import android.util.Size -import com.android.quickstep.recents.domain.model.DesktopLayoutConfig import com.android.quickstep.recents.domain.model.DesktopTaskBoundsData import com.android.quickstep.recents.domain.usecase.OrganizeDesktopTasksUseCase @@ -35,18 +34,12 @@ class DesktopTaskViewModel(private val organizeDesktopTasksUseCase: OrganizeDesk * * @param desktopSize the size available for organizing the tasks. * @param defaultPositions the tasks and their bounds as they appear on a desktop. - * @param layoutConfig the pre-scaled dimension configuration for the desktop layout. */ - fun organizeDesktopTasks( - desktopSize: Size, - defaultPositions: List<DesktopTaskBoundsData>, - layoutConfig: DesktopLayoutConfig, - ) { + fun organizeDesktopTasks(desktopSize: Size, defaultPositions: List<DesktopTaskBoundsData>) { organizedDesktopTaskPositions = - organizeDesktopTasksUseCase( + organizeDesktopTasksUseCase.run( desktopBounds = Rect(0, 0, desktopSize.width, desktopSize.height), taskBounds = defaultPositions, - layoutConfig = layoutConfig, ) } } diff --git a/quickstep/src/com/android/quickstep/recents/ui/viewmodel/TaskTileUiState.kt b/quickstep/src/com/android/quickstep/recents/ui/viewmodel/TaskTileUiState.kt index ad6024a1cf..863d30b2e4 100644 --- a/quickstep/src/com/android/quickstep/recents/ui/viewmodel/TaskTileUiState.kt +++ b/quickstep/src/com/android/quickstep/recents/ui/viewmodel/TaskTileUiState.kt @@ -18,7 +18,6 @@ package com.android.quickstep.recents.ui.viewmodel import android.graphics.drawable.Drawable import com.android.systemui.shared.recents.model.ThumbnailData -import java.time.Duration /** * This class represents the UI state to be consumed by TaskView, GroupTaskView and DesktopTaskView. @@ -34,6 +33,7 @@ import java.time.Duration */ data class TaskTileUiState( val tasks: List<TaskData>, + val isLiveTile: Boolean, val hasHeader: Boolean, val sysUiStatusNavFlags: Int, val taskOverlayEnabled: Boolean, @@ -50,26 +50,20 @@ sealed class TaskData { * This class provides UI information related to a Task (App) to be displayed within a TaskView. * * @property taskId Identifier of the task - * @property packageName package name for the task * @property title App title * @property titleDescription App content description * @property icon App icon * @property thumbnailData Information related to the last snapshot retrieved from the app * @property backgroundColor The background color of the task. * @property isLocked Indicates whether the task is locked or not. - * @property isLiveTile Indicates whether the task is shown with a live tile or not. - * @property remainingAppTimerDuration time remaining on the app timer for the application. */ data class Data( override val taskId: Int, - val packageName: String, val title: String?, val titleDescription: String?, val icon: Drawable?, val thumbnailData: ThumbnailData?, val backgroundColor: Int, val isLocked: Boolean, - val isLiveTile: Boolean, - val remainingAppTimerDuration: Duration?, ) : TaskData() } diff --git a/quickstep/src/com/android/quickstep/recents/ui/viewmodel/TaskViewModel.kt b/quickstep/src/com/android/quickstep/recents/ui/viewmodel/TaskViewModel.kt index 8e67c10e6c..fac0c0a0bb 100644 --- a/quickstep/src/com/android/quickstep/recents/ui/viewmodel/TaskViewModel.kt +++ b/quickstep/src/com/android/quickstep/recents/ui/viewmodel/TaskViewModel.kt @@ -19,7 +19,6 @@ package com.android.quickstep.recents.ui.viewmodel import android.annotation.ColorInt import android.util.Log import androidx.core.graphics.ColorUtils -import com.android.launcher3.Flags.enableCoroutineThreadingImprovements import com.android.launcher3.util.coroutines.DispatcherProvider import com.android.quickstep.recents.domain.model.TaskId import com.android.quickstep.recents.domain.model.TaskModel @@ -35,10 +34,8 @@ import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.combine -import kotlinx.coroutines.flow.debounce import kotlinx.coroutines.flow.distinctUntilChanged import kotlinx.coroutines.flow.flatMapLatest -import kotlinx.coroutines.flow.flowOf import kotlinx.coroutines.flow.flowOn import kotlinx.coroutines.flow.map @@ -56,7 +53,7 @@ class TaskViewModel( private val getThumbnailPositionUseCase: GetThumbnailPositionUseCase, dispatcherProvider: DispatcherProvider, ) { - private val taskIds = MutableStateFlow(emptySet<Int>()) + private var taskIds = MutableStateFlow(emptySet<Int>()) private val isLiveTile = combine( @@ -77,86 +74,24 @@ class TaskViewModel( private val taskData = taskIds.flatMapLatest { ids -> // Combine Tasks requests - val taskFlows = - ids.map { id -> getTaskUseCase(id).map { taskModel -> id to taskModel } } - val combinedTaskFlows = combine(taskFlows) { taskArray -> taskArray } - combine(combinedTaskFlows, isLiveTile, ::mapToTaskData) - } - - private val taskModels = - taskIds.flatMapLatest { ids -> - // Combine Tasks requests - val taskFlows = - ids.map { id -> - getTaskUseCase(id).distinctUntilChanged().map { taskModel -> id to taskModel } - } - combine(taskFlows) { taskArray -> taskArray } + combine( + ids.map { id -> getTaskUseCase(id).map { taskModel -> id to taskModel } }, + ::mapToTaskData, + ) } private val overlayEnabled = - when (taskViewType) { - TaskViewType.SINGLE -> - combine( - recentsViewData.overlayEnabled, - recentsViewData.settledFullyVisibleTaskIds, - ) { isOverlayEnabled, settledFullyVisibleTaskIds -> - isOverlayEnabled && settledFullyVisibleTaskIds.any { it in taskIds.value } - } - .distinctUntilChanged() - else -> flowOf(false) - } - - private val preThreadingImprovedState: Flow<TaskTileUiState> = - combine(taskData, overlayEnabled, isCentralTask, ::mapToTaskTile) - - private val threadingImprovedState: Flow<TaskTileUiState> = - com.android.launcher3.util.coroutines.combine( - taskModels, - recentsViewData.runningTaskIds, - recentsViewData.runningTaskShowScreenshot, - recentsViewData.overlayEnabled, - recentsViewData.settledFullyVisibleTaskIds, - recentsViewData.centralTaskIds, - ) { - taskModels: Array<Pair<Int, TaskModel?>>, - runningTaskIds: Set<Int>, - runningTaskShowScreenshot: Boolean, - isOverlayEnabled: Boolean, - settledFullyVisibleTaskIds: Set<Int>, - centralTaskIds: Set<Int> -> - val taskIds = taskModels.map { it.first }.toSet() - val isCentralTask = taskIds == centralTaskIds - val overlayEnabled = - when (taskViewType) { - TaskViewType.SINGLE -> { - isOverlayEnabled && settledFullyVisibleTaskIds.any { it in taskIds } - } - else -> false - } - val isLiveTile = runningTaskIds == taskIds && !runningTaskShowScreenshot - val taskData = mapToTaskData(taskModels, isLiveTile) - - mapToTaskTile(taskData, overlayEnabled, isCentralTask) - } - - private val taskTileUiStateFlow = - if (enableCoroutineThreadingImprovements()) threadingImprovedState - else preThreadingImprovedState + combine(recentsViewData.overlayEnabled, recentsViewData.settledFullyVisibleTaskIds) { + isOverlayEnabled, + settledFullyVisibleTaskIds -> + isOverlayEnabled && settledFullyVisibleTaskIds.any { it in taskIds.value } + } + .distinctUntilChanged() val state: Flow<TaskTileUiState> = - taskTileUiStateFlow + combine(taskData, isLiveTile, overlayEnabled, isCentralTask, ::mapToTaskTile) .distinctUntilChanged() - .debounce { state -> - // Debouncing only when thumbnails are not present gives the best results. - // This is because thumbnail loading is a decent predictor of there being no more - // emissions to come as they are typically the last emission for a TaskView. - if (state.tasks.any { (it as? TaskData.Data)?.thumbnailData?.thumbnail == null }) { - DEBOUNCE_DELAY_MS - } else { - 0 - } - } - .flowOn(dispatcherProvider.lightweightBackground) + .flowOn(dispatcherProvider.background) fun bind(vararg taskId: TaskId) { taskIds.value = taskId.toSet().also { Log.d(TAG, "bind: $it") } @@ -180,12 +115,14 @@ class TaskViewModel( private fun mapToTaskTile( tasks: List<TaskData>, + isLiveTile: Boolean, overlayEnabled: Boolean, isCentralTask: Boolean, ): TaskTileUiState { val firstThumbnailData = (tasks.firstOrNull() as? TaskData.Data)?.thumbnailData return TaskTileUiState( tasks = tasks, + isLiveTile = isLiveTile, hasHeader = taskViewType == TaskViewType.DESKTOP, sysUiStatusNavFlags = getSysUiStatusNavFlagsUseCase(firstThumbnailData), taskOverlayEnabled = overlayEnabled, @@ -193,24 +130,19 @@ class TaskViewModel( ) } - private fun mapToTaskData( - result: Array<Pair<TaskId, TaskModel?>>, - isLiveTile: Boolean, - ): List<TaskData> = result.map { mapToTaskData(it.first, it.second, isLiveTile) } + private fun mapToTaskData(result: Array<Pair<TaskId, TaskModel?>>): List<TaskData> = + result.map { mapToTaskData(it.first, it.second) } - private fun mapToTaskData(taskId: TaskId, result: TaskModel?, isLiveTile: Boolean): TaskData = + private fun mapToTaskData(taskId: TaskId, result: TaskModel?): TaskData = result?.let { TaskData.Data( taskId = taskId, - packageName = result.packageName, title = result.title, titleDescription = result.titleDescription, icon = result.icon, thumbnailData = result.thumbnail, backgroundColor = result.backgroundColor.removeAlpha(), isLocked = result.isLocked, - isLiveTile = isLiveTile && !result.isMinimized, - remainingAppTimerDuration = result.remainingAppDuration, ) } ?: TaskData.NoData(taskId) @@ -218,6 +150,5 @@ class TaskViewModel( private companion object { const val TAG = "TaskViewModel" - const val DEBOUNCE_DELAY_MS = 16L } } diff --git a/quickstep/src/com/android/quickstep/recents/viewmodel/RecentsViewModel.kt b/quickstep/src/com/android/quickstep/recents/viewmodel/RecentsViewModel.kt index ec8736a6ef..4d168c7476 100644 --- a/quickstep/src/com/android/quickstep/recents/viewmodel/RecentsViewModel.kt +++ b/quickstep/src/com/android/quickstep/recents/viewmodel/RecentsViewModel.kt @@ -25,17 +25,13 @@ import kotlinx.coroutines.flow.first class RecentsViewModel( private val recentsTasksRepository: RecentTasksRepository, private val recentsViewData: RecentsViewData, - private val displayId: Int, ) { - private var visibleTaskIds = emptySet<Int>() - fun refreshAllTaskData() { - recentsTasksRepository.getAllTaskData(displayId, true) + recentsTasksRepository.getAllTaskData(true) } fun updateVisibleTasks(visibleTaskIdList: List<Int>) { - visibleTaskIds = visibleTaskIdList.toSet() - recentsTasksRepository.setVisibleTasks(displayId, visibleTaskIds) + recentsTasksRepository.setVisibleTasks(visibleTaskIdList.toSet()) } fun updateTasksFullyVisible(taskIds: Set<Int>) { @@ -51,10 +47,9 @@ class RecentsViewModel( } suspend fun waitForThumbnailsToUpdate(updatedThumbnails: Map<Int, ThumbnailData>?) { - val visibleThumbnails = updatedThumbnails?.filterKeys { it in visibleTaskIds } - if (visibleThumbnails.isNullOrEmpty()) return + if (updatedThumbnails.isNullOrEmpty()) return combine( - visibleThumbnails.map { + updatedThumbnails.map { recentsTasksRepository.getThumbnailById(it.key).filter { thumbnailData -> thumbnailData?.snapshotId == it.value.snapshotId } diff --git a/quickstep/src/com/android/quickstep/task/thumbnail/TaskThumbnailUiState.kt b/quickstep/src/com/android/quickstep/task/thumbnail/TaskThumbnailUiState.kt index a5c9ac032f..db593d34d3 100644 --- a/quickstep/src/com/android/quickstep/task/thumbnail/TaskThumbnailUiState.kt +++ b/quickstep/src/com/android/quickstep/task/thumbnail/TaskThumbnailUiState.kt @@ -19,6 +19,7 @@ package com.android.quickstep.task.thumbnail import android.graphics.Bitmap import android.graphics.drawable.Drawable import android.view.Surface +import android.view.View.OnClickListener import androidx.annotation.ColorInt sealed class TaskThumbnailUiState { @@ -26,14 +27,37 @@ sealed class TaskThumbnailUiState { data class BackgroundOnly(@ColorInt val backgroundColor: Int) : TaskThumbnailUiState() - data object LiveTile : TaskThumbnailUiState() - data class SnapshotSplash(val snapshot: Snapshot, val splash: Drawable?) : TaskThumbnailUiState() - data class Snapshot( - val bitmap: Bitmap, - @Surface.Rotation val thumbnailRotation: Int, - @ColorInt val backgroundColor: Int, + sealed class LiveTile : TaskThumbnailUiState() { + data class WithHeader(val header: ThumbnailHeader) : LiveTile() + + data object WithoutHeader : LiveTile() + } + + sealed class Snapshot { + abstract val bitmap: Bitmap + abstract val thumbnailRotation: Int + abstract val backgroundColor: Int + + data class WithHeader( + override val bitmap: Bitmap, + @Surface.Rotation override val thumbnailRotation: Int, + @ColorInt override val backgroundColor: Int, + val header: ThumbnailHeader, + ) : Snapshot() + + data class WithoutHeader( + override val bitmap: Bitmap, + @Surface.Rotation override val thumbnailRotation: Int, + @ColorInt override val backgroundColor: Int, + ) : Snapshot() + } + + data class ThumbnailHeader( + val icon: Drawable, + val title: String, + val clickCloseListener: OnClickListener, ) } diff --git a/quickstep/src/com/android/quickstep/task/thumbnail/TaskThumbnailView.kt b/quickstep/src/com/android/quickstep/task/thumbnail/TaskThumbnailView.kt index b6928ae67b..0edbacc710 100644 --- a/quickstep/src/com/android/quickstep/task/thumbnail/TaskThumbnailView.kt +++ b/quickstep/src/com/android/quickstep/task/thumbnail/TaskThumbnailView.kt @@ -25,12 +25,13 @@ import android.graphics.Rect import android.graphics.drawable.ShapeDrawable import android.util.AttributeSet import android.util.Log +import android.view.LayoutInflater import android.view.View import android.view.ViewOutlineProvider import android.widget.FrameLayout import androidx.annotation.ColorInt import androidx.core.view.isInvisible -import com.android.launcher3.Flags.enableRefactorTaskContentView +import com.android.launcher3.Flags.enableDesktopExplodedView import com.android.launcher3.LauncherAnimUtils.VIEW_ALPHA import com.android.launcher3.R import com.android.launcher3.util.MultiPropertyFactory @@ -41,6 +42,7 @@ import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.Snapshot import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.SnapshotSplash import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.Uninitialized import com.android.quickstep.views.FixedSizeImageView +import com.android.quickstep.views.TaskThumbnailViewHeader class TaskThumbnailView : FrameLayout, ViewPool.Reusable { private val scrimView: View by lazy { findViewById(R.id.task_thumbnail_scrim) } @@ -54,6 +56,8 @@ class TaskThumbnailView : FrameLayout, ViewPool.Reusable { private val outlinePath = Path() private var onSizeChanged: ((width: Int, height: Int) -> Unit)? = null + private var taskThumbnailViewHeader: TaskThumbnailViewHeader? = null + private var uiState: TaskThumbnailUiState = Uninitialized /** @@ -83,11 +87,13 @@ class TaskThumbnailView : FrameLayout, ViewPool.Reusable { defStyleAttr: Int, ) : super(context, attrs, defStyleAttr) + override fun onFinishInflate() { + super.onFinishInflate() + maybeCreateHeader() + } + override fun onAttachedToWindow() { super.onAttachedToWindow() - if (enableRefactorTaskContentView()) { - return - } clipToOutline = true outlineProvider = object : ViewOutlineProvider() { @@ -112,10 +118,8 @@ class TaskThumbnailView : FrameLayout, ViewPool.Reusable { override fun onRecycle() { uiState = Uninitialized - if (!enableRefactorTaskContentView()) { - onSizeChanged = null - outlineBounds = null - } + onSizeChanged = null + outlineBounds = null resetViews() } @@ -126,7 +130,7 @@ class TaskThumbnailView : FrameLayout, ViewPool.Reusable { resetViews() when (state) { is Uninitialized -> {} - is LiveTile -> drawLiveWindow() + is LiveTile -> drawLiveWindow(state) is SnapshotSplash -> drawSnapshotSplash(state) is BackgroundOnly -> drawBackground(state.backgroundColor) } @@ -152,16 +156,10 @@ class TaskThumbnailView : FrameLayout, ViewPool.Reusable { } fun doOnSizeChange(action: (width: Int, height: Int) -> Unit) { - if (enableRefactorTaskContentView()) { - return - } onSizeChanged = action } override fun onSizeChanged(w: Int, h: Int, oldw: Int, oldh: Int) { - if (enableRefactorTaskContentView()) { - return - } super.onSizeChanged(w, h, oldw, oldh) onSizeChanged?.invoke(width, height) bounds.set(0, 0, w, h) @@ -169,52 +167,40 @@ class TaskThumbnailView : FrameLayout, ViewPool.Reusable { } override fun setScaleX(scaleX: Float) { - if (enableRefactorTaskContentView()) { - return - } super.setScaleX(scaleX) // Splash icon should ignore scale on TTV splashIcon.scaleX = 1 / scaleX } override fun setScaleY(scaleY: Float) { - if (enableRefactorTaskContentView()) { - return - } super.setScaleY(scaleY) // Splash icon should ignore scale on TTV splashIcon.scaleY = 1 / scaleY } - fun parentScaleXUpdated(scaleX: Float) { - // Splash icon should ignore scale on TTV - splashIcon.scaleX = 1 / scaleX - } - - fun parentScaleYUpdated(scaleY: Float) { - // Splash icon should ignore scale on TTV - splashIcon.scaleY = 1 / scaleY - } - private fun resetViews() { liveTileView.isInvisible = true thumbnailView.isInvisible = true thumbnailView.setImageBitmap(null) splashBackground.alpha = 0f - splashBackground.setBackgroundColor(Color.TRANSPARENT) splashIcon.alpha = 0f splashIcon.setImageDrawable(null) scrimView.alpha = 0f - alpha = 1.0f - setBackgroundColor(Color.TRANSPARENT) + setBackgroundColor(Color.BLACK) + taskThumbnailViewHeader?.isInvisible = true } private fun drawBackground(@ColorInt background: Int) { setBackgroundColor(background) } - private fun drawLiveWindow() { + private fun drawLiveWindow(liveTile: LiveTile) { liveTileView.isInvisible = false + + if (liveTile is LiveTile.WithHeader) { + taskThumbnailViewHeader?.isInvisible = false + taskThumbnailViewHeader?.setHeader(liveTile.header) + } } private fun drawSnapshotSplash(snapshotSplash: SnapshotSplash) { @@ -226,8 +212,11 @@ class TaskThumbnailView : FrameLayout, ViewPool.Reusable { } private fun drawSnapshot(snapshot: Snapshot) { - // Always draw the background since the snapshots might be translucent or partially empty - // E.g. reparented tasks from drag-to-dismiss split screen. + if (snapshot is Snapshot.WithHeader) { + taskThumbnailViewHeader?.isInvisible = false + taskThumbnailViewHeader?.setHeader(snapshot.header) + } + drawBackground(snapshot.backgroundColor) thumbnailView.setImageBitmap(snapshot.bitmap) thumbnailView.isInvisible = false @@ -243,6 +232,16 @@ class TaskThumbnailView : FrameLayout, ViewPool.Reusable { Log.d(TAG, "[TaskThumbnailView@${Integer.toHexString(hashCode())}] $message") } + private fun maybeCreateHeader() { + if (enableDesktopExplodedView() && taskThumbnailViewHeader == null) { + taskThumbnailViewHeader = + LayoutInflater.from(context) + .inflate(R.layout.task_thumbnail_view_header, this, false) + as TaskThumbnailViewHeader + addView(taskThumbnailViewHeader) + } + } + private companion object { const val TAG = "TaskThumbnailView" private const val MAX_SCRIM_ALPHA = 0.4f diff --git a/quickstep/src/com/android/quickstep/util/ActivityPreloadUtil.kt b/quickstep/src/com/android/quickstep/util/ActivityPreloadUtil.kt index 239230c123..cf0f281a24 100644 --- a/quickstep/src/com/android/quickstep/util/ActivityPreloadUtil.kt +++ b/quickstep/src/com/android/quickstep/util/ActivityPreloadUtil.kt @@ -46,8 +46,7 @@ object ActivityPreloadUtil { try { if (!LockedUserState.get(ctx).isUserUnlocked) return - val deviceState = - RecentsAnimationDeviceState.REPOSITORY_INSTANCE.get(ctx)[ctx.displayId] ?: return + val deviceState = RecentsAnimationDeviceState.INSTANCE[ctx] val overviewCompObserver = OverviewComponentObserver.INSTANCE[ctx] // Prevent the overview from being started before the real home on first boot @@ -63,7 +62,7 @@ object ActivityPreloadUtil { // have the latest state. if ( fromInit && - overviewCompObserver.getContainerInterface(DEFAULT_DISPLAY)?.createdContainer != + overviewCompObserver.getContainerInterface(DEFAULT_DISPLAY).createdContainer != null ) return diff --git a/quickstep/src/com/android/quickstep/util/AnimatorControllerWithResistance.java b/quickstep/src/com/android/quickstep/util/AnimatorControllerWithResistance.java index a2e0628da8..37d7030832 100644 --- a/quickstep/src/com/android/quickstep/util/AnimatorControllerWithResistance.java +++ b/quickstep/src/com/android/quickstep/util/AnimatorControllerWithResistance.java @@ -183,7 +183,7 @@ public class AnimatorControllerWithResistance { params.startTranslation, endTranslation, RECENTS_TRANSLATE_RESIST_INTERPOLATOR); float prevScaleRate = (fullscreenScale - params.startScale) - / (params.dp.getDeviceProperties().getHeightPx() - startRect.bottom); + / (params.dp.heightPx - startRect.bottom); // This is what the scale would be at the end of the drag if we didn't apply resistance. float endScale = params.startScale - prevScaleRate * distanceToCover; // Create an interpolator that resists the scale so the scale doesn't get smaller than @@ -256,7 +256,7 @@ public class AnimatorControllerWithResistance { this.scaleProperty = scaleProperty; this.translationTarget = translationTarget; this.translationProperty = translationProperty; - if (dp.getDeviceProperties().isTablet()) { + if (dp.isTablet) { resistanceParams = RecentsResistanceParams.FROM_APP_TABLET; } else { resistanceParams = RecentsResistanceParams.FROM_APP; diff --git a/quickstep/src/com/android/quickstep/util/AppPairsController.java b/quickstep/src/com/android/quickstep/util/AppPairsController.java index 3015ad8315..281be7dfa9 100644 --- a/quickstep/src/com/android/quickstep/util/AppPairsController.java +++ b/quickstep/src/com/android/quickstep/util/AppPairsController.java @@ -44,9 +44,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; -import com.android.app.displaylib.PerDisplayRepository; import com.android.internal.jank.Cuj; -import com.android.launcher3.Launcher; import com.android.launcher3.LauncherAppState; import com.android.launcher3.accessibility.LauncherAccessibilityDelegate; import com.android.launcher3.allapps.AllAppsStore; @@ -61,16 +59,14 @@ import com.android.launcher3.model.data.ItemInfoWithIcon; import com.android.launcher3.model.data.TaskViewItemInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.taskbar.TaskbarActivityContext; +import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.launcher3.util.ComponentKey; import com.android.launcher3.util.PackageManagerHelper; import com.android.launcher3.util.SplitConfigurationOptions.StagePosition; import com.android.launcher3.views.ActivityContext; -import com.android.quickstep.OverviewComponentObserver; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.TaskUtils; import com.android.quickstep.TopTaskTracker; -import com.android.quickstep.fallback.window.RecentsWindowFlags; -import com.android.quickstep.fallback.window.RecentsWindowManager; import com.android.quickstep.views.GroupedTaskView; import com.android.quickstep.views.TaskContainer; import com.android.quickstep.views.TaskView; @@ -114,12 +110,6 @@ public class AppPairsController { mContext = null; } - private Launcher getLauncher() { - return mContext == null || !OverviewComponentObserver.INSTANCE.get(mContext.asContext()) - .isHomeAndOverviewSame() - ? null : Launcher.ACTIVITY_TRACKER.getCreatedContext(); - } - /** * Returns whether the specified GroupedTaskView can be saved as an app pair. */ @@ -228,27 +218,19 @@ public class AppPairsController { iconCache.getTitleAndIcon(member, member.getMatchingLookupFlag()); }); MAIN_EXECUTOR.execute(() -> { - Launcher launcher = getLauncher(); - LauncherAccessibilityDelegate delegate = launcher == null - ? null : launcher.getAccessibilityDelegate(); - if (delegate == null) { - return; + LauncherAccessibilityDelegate delegate = QuickstepLauncher.getLauncher( + mContext.asContext()).getAccessibilityDelegate(); + if (delegate != null) { + delegate.addToWorkspace(newAppPair, true, (success) -> { + if (success) { + InteractionJankMonitorWrapper.end(Cuj.CUJ_LAUNCHER_SAVE_APP_PAIR); + } else { + InteractionJankMonitorWrapper.cancel(Cuj.CUJ_LAUNCHER_SAVE_APP_PAIR); + } + }); + mStatsLogManager.logger().withItemInfo(newAppPair) + .log(StatsLogManager.LauncherEvent.LAUNCHER_APP_PAIR_SAVE); } - if (RecentsWindowFlags.enableLauncherOverviewInWindow) { - PerDisplayRepository<RecentsWindowManager> recentsWindowManagerRepository = - RecentsWindowManager.REPOSITORY_INSTANCE.get(mContext.asContext()); - recentsWindowManagerRepository.get(gtv.getDisplayId()) - .getStateManager().moveToRestState(); - } - delegate.addToWorkspace(newAppPair, true, (success) -> { - if (success) { - InteractionJankMonitorWrapper.end(Cuj.CUJ_LAUNCHER_SAVE_APP_PAIR); - } else { - InteractionJankMonitorWrapper.cancel(Cuj.CUJ_LAUNCHER_SAVE_APP_PAIR); - } - }); - mStatsLogManager.logger().withItemInfo(newAppPair) - .log(StatsLogManager.LauncherEvent.LAUNCHER_APP_PAIR_SAVE); }); }); } @@ -320,11 +302,8 @@ public class AppPairsController { */ @Nullable private AppInfo resolveAppInfoByComponent(@NonNull ComponentKey key) { - Launcher launcher = getLauncher(); - if (launcher == null) { - return null; - } - AllAppsStore appsStore = launcher.getAppsView().getAppsStore(); + AllAppsStore appsStore = ActivityContext.lookupContext(mContext.asContext()) + .getAppsView().getAppsStore(); // First look up the app info in order of: // - The exact activity for the recent task diff --git a/quickstep/src/com/android/quickstep/util/BackAnimState.kt b/quickstep/src/com/android/quickstep/util/BackAnimState.kt index 18cc98cd68..4c1e1ffacc 100644 --- a/quickstep/src/com/android/quickstep/util/BackAnimState.kt +++ b/quickstep/src/com/android/quickstep/util/BackAnimState.kt @@ -19,11 +19,8 @@ package com.android.quickstep.util import android.animation.AnimatorSet import android.content.Context import com.android.launcher3.Flags -import com.android.launcher3.Launcher import com.android.launcher3.LauncherAnimationRunner.AnimationResult -import com.android.launcher3.LauncherState import com.android.launcher3.anim.AnimatorListeners.forEndCallback -import com.android.launcher3.statemanager.StateManager import com.android.launcher3.util.RunnableList /** Interface to represent animation for back to Launcher transition */ @@ -33,7 +30,7 @@ interface BackAnimState { fun applyToAnimationResult(result: AnimationResult, c: Context) - fun start(stateManager: StateManager<LauncherState, Launcher>) + fun start() } class AnimatorBackState(private val springAnim: RectFSpringAnim?, private val anim: AnimatorSet?) : @@ -61,10 +58,7 @@ class AnimatorBackState(private val springAnim: RectFSpringAnim?, private val an result.setAnimation(anim, c) } - override fun start(stateManager: StateManager<LauncherState, Launcher>) { - if (anim != null) { - stateManager.setCurrentAnimation(anim) - } + override fun start() { anim?.start() } } @@ -79,5 +73,5 @@ class AlreadyStartedBackAnimState(private val onEndCallback: RunnableList) : Bac addOnAnimCompleteCallback(result::onAnimationFinished) } - override fun start(stateManager: StateManager<LauncherState, Launcher>) {} + override fun start() {} } diff --git a/quickstep/src/com/android/quickstep/util/BaseDepthController.java b/quickstep/src/com/android/quickstep/util/BaseDepthController.java index 0ea360115e..df7b148f7c 100644 --- a/quickstep/src/com/android/quickstep/util/BaseDepthController.java +++ b/quickstep/src/com/android/quickstep/util/BaseDepthController.java @@ -15,36 +15,22 @@ */ package com.android.quickstep.util; -import static android.os.Trace.TRACE_TAG_APP; - import static com.android.launcher3.Flags.enableOverviewBackgroundWallpaperBlur; import static com.android.launcher3.Flags.enableScalingRevealHomeAnimation; import android.app.WallpaperManager; -import android.graphics.RenderEffect; -import android.graphics.Shader; -import android.gui.EarlyWakeupInfo; -import android.os.Binder; import android.os.IBinder; -import android.os.Trace; import android.util.FloatProperty; import android.util.Log; import android.view.AttachedSurfaceControl; -import android.view.CrossWindowBlurListeners; import android.view.SurfaceControl; -import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.annotation.VisibleForTesting; -import com.android.app.animation.Interpolators; import com.android.launcher3.Flags; import com.android.launcher3.Launcher; -import com.android.launcher3.LauncherState; import com.android.launcher3.R; import com.android.launcher3.Utilities; -import com.android.launcher3.statemanager.StateManager; -import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.launcher3.util.MultiPropertyFactory; import com.android.launcher3.util.MultiPropertyFactory.MultiProperty; import com.android.systemui.shared.system.BlurUtils; @@ -77,7 +63,7 @@ public class BaseDepthController { // b/291401432 private static final String TAG = "BaseDepthController"; - protected final QuickstepLauncher mLauncher; + protected final Launcher mLauncher; /** Property to set the depth for state transition. */ public final MultiProperty stateDepth; /** Property to set the depth for widget picker. */ @@ -110,6 +96,7 @@ public class BaseDepthController { /** * Last blur value, in pixels, that was applied. + * For debugging purposes. */ protected int mCurrentBlur; /** @@ -120,16 +107,10 @@ public class BaseDepthController { protected boolean mWaitingOnSurfaceValidity; private SurfaceControl mBlurSurface = null; - /** - * Info for early wakeup requests to SurfaceFlinger. - */ -// private EarlyWakeupInfo mEarlyWakeupInfo = new EarlyWakeupInfo(); - public BaseDepthController(QuickstepLauncher activity) { + public BaseDepthController(Launcher activity) { mLauncher = activity; - if (Flags.allAppsBlur() || enableOverviewBackgroundWallpaperBlur()) { - mCrossWindowBlursEnabled = - CrossWindowBlurListeners.getInstance().isCrossWindowBlurEnabled(); + if (Flags.allAppsBlur()) { mMaxBlurRadius = activity.getResources().getDimensionPixelSize( R.dimen.max_depth_blur_radius_enhanced); } else { @@ -141,24 +122,17 @@ public class BaseDepthController { new MultiPropertyFactory<>(this, DEPTH, DEPTH_INDEX_COUNT, Float::max); stateDepth = depthProperty.get(DEPTH_INDEX_STATE_TRANSITION); widgetDepth = depthProperty.get(DEPTH_INDEX_WIDGET); -// mEarlyWakeupInfo.token = new Binder(); -// mEarlyWakeupInfo.trace = BaseDepthController.class.getName(); - } + if (enableOverviewBackgroundWallpaperBlur()) { + mBlurSurface = new SurfaceControl.Builder() + .setName("Overview Blur") + .setHidden(false) + .build(); + } - /** - * Returns if cross window blurs are enabled. In other words, whether launcher should use blurs - * style UI or fallback style UI. - */ - public boolean isCrossWindowBlursEnabled() { - return mCrossWindowBlursEnabled; } protected void setCrossWindowBlursEnabled(boolean isEnabled) { - if (mCrossWindowBlursEnabled == isEnabled) { - return; - } mCrossWindowBlursEnabled = isEnabled; - mLauncher.updateBlurStyle(); applyDepthAndBlur(); } @@ -167,42 +141,22 @@ public class BaseDepthController { } public void pauseBlursOnWindows(boolean pause) { - if (mPauseBlurs == pause) { - return; + if (pause != mPauseBlurs) { + mPauseBlurs = pause; + applyDepthAndBlur(); } - mPauseBlurs = pause; - applyDepthAndBlur(); } protected void onInvalidSurface() { } protected void applyDepthAndBlur() { - applyDepthAndBlur(null, /* applyImmediately */ false, /* skipSimilarBlur */ true); - } - - /** - * Applies depth and blur to the launcher. - * - * @param transaction optional Surface to apply to the blur to. - * @param applyImmediately whether to apply the blur immediately or defer to the next frame. - */ - protected void applyDepthAndBlur(SurfaceControl.Transaction transaction, - boolean applyImmediately, boolean skipSimilarBlur) { - try (transaction) { - applyDepthAndBlurInternal(transaction, applyImmediately, skipSimilarBlur); - } - } - - private void applyDepthAndBlurInternal(SurfaceControl.Transaction transaction, - boolean applyImmediately, boolean skipSimilarBlur) { float depth = mDepth; IBinder windowToken = mLauncher.getRootView().getWindowToken(); if (windowToken != null) { if (enableScalingRevealHomeAnimation()) { mWallpaperManager.setWallpaperZoomOut(windowToken, depth); } else { - // The API's full zoom-out is three times larger than the zoom-out we apply - // to the + // The API's full zoom-out is three times larger than the zoom-out we apply to the // icons. To keep the two consistent throughout the animation while keeping // Launcher's concept of full depth unchanged, we divide the depth by 3 here. mWallpaperManager.setWallpaperZoomOut(windowToken, depth / 3); @@ -232,130 +186,55 @@ public class BaseDepthController { } else { blurAmount = depth; } - SurfaceControl blurSurface = - enableOverviewBackgroundWallpaperBlur() && mBlurSurface != null ? mBlurSurface - : mBaseSurface; + mCurrentBlur = !mCrossWindowBlursEnabled || hasOpaqueBg || mPauseBlurs + ? 0 : (int) (blurAmount * mMaxBlurRadius); - int previousBlur = mCurrentBlur; - int newBlur = mCrossWindowBlursEnabled && !hasOpaqueBg && !mPauseBlurs ? (int) (blurAmount - * mMaxBlurRadius) : 0; - int delta = Math.abs(newBlur - previousBlur); - if (skipSimilarBlur && delta < Utilities.dpToPx(1) && newBlur != 0 && previousBlur != 0 - && blurAmount != 1f) { - Log.d(TAG, "Skipping small blur delta. newBlur: " + newBlur + " previousBlur: " - + previousBlur + " delta: " + delta + " surface: " + blurSurface); - return; - } - mCurrentBlur = newBlur; - Log.v(TAG, "Applying blur: " + mCurrentBlur + " to " + blurSurface); - - final SurfaceControl.Transaction finalTransaction = - transaction == null ? createTransaction() : transaction; - try (finalTransaction) { - finalTransaction.setBackgroundBlurRadius(blurSurface, mCurrentBlur) - .setOpaque(blurSurface, isSurfaceOpaque); - // Set early wake-up flags when we know we're executing an expensive operation, this way - // SurfaceFlinger will adjust its internal offsets to avoid jank. - boolean wantsEarlyWakeUp = blurAmount > 0 && blurAmount < 1; - if (wantsEarlyWakeUp && !mInEarlyWakeUp) { - try { - setEarlyWakeup(finalTransaction, true); - } catch (NoSuchMethodError e) { - // LC-Ignored: wtf? - } - } else if (!wantsEarlyWakeUp && mInEarlyWakeUp) { - try { - setEarlyWakeup(finalTransaction, false); - } catch (NoSuchMethodError e) { - // LC-Ignored: wtf? - } - } - - if (applyImmediately) { - finalTransaction.apply(); + SurfaceControl.Transaction transaction = new SurfaceControl.Transaction(); + if (enableOverviewBackgroundWallpaperBlur() && mBlurSurface != null) { + // Reparent to launcher for full screen blur. + transaction.setBackgroundBlurRadius(mBlurSurface, mCurrentBlur) + .reparent(mBlurSurface, mBaseSurface); + // Set mBlurSurface to be 1 layer behind mBaseSurface or mBaseSurfaceOverride. + if (mBaseSurfaceOverride != null && mBaseSurfaceOverride.isValid()) { + transaction.setRelativeLayer(mBlurSurface, mBaseSurfaceOverride, -1); } else { - AttachedSurfaceControl rootSurfaceControl = - mLauncher.getRootView().getRootSurfaceControl(); - if (rootSurfaceControl != null) { - rootSurfaceControl.applyTransactionOnDraw(finalTransaction); - } + transaction.setRelativeLayer(mBlurSurface, mBaseSurface, -1); } - } - - blurWorkspaceDepthTargets(); - } - - /** - * Sets the early wakeup state. - * - * @param inEarlyWakeUp whether SurfaceFlinger's early wakeup timing should be active. - */ - public void setEarlyWakeup(boolean inEarlyWakeUp) { - if (mInEarlyWakeUp == inEarlyWakeUp) { - return; - } - try (SurfaceControl.Transaction transaction = createTransaction()) { - setEarlyWakeup(transaction, inEarlyWakeUp); - transaction.apply(); - } - } - - /** - * Sets the early wakeup state. - * - * @param transaction transaction to apply to. - * @param start whether to start or end the early wakeup. - */ - protected void setEarlyWakeup(@NonNull SurfaceControl.Transaction transaction, boolean start) { - if (mInEarlyWakeUp == start) { - return; - } - Log.d(TAG, "setEarlyWakeup: " + start); - if (start) { -// Trace.instantForTrack(TRACE_TAG_APP, TAG, "notifyRendererForGpuLoadUp"); -// mLauncher.getRootView().getViewRootImpl().notifyRendererForGpuLoadUp("applyBlur"); -// transaction.setEarlyWakeupStart(); } else { -// transaction.setEarlyWakeupEnd(); + transaction.setBackgroundBlurRadius(mBaseSurface, mCurrentBlur); } - mInEarlyWakeUp = start; - } - - /** @return {@code true} if the workspace should be blurred. */ - @VisibleForTesting - public boolean blurWorkspaceDepthTargets() { - if (!Flags.allAppsBlur()) { - return false; + transaction.setOpaque(mBaseSurface, isSurfaceOpaque); + // Set early wake-up flags when we know we're executing an expensive operation, this way + // SurfaceFlinger will adjust its internal offsets to avoid jank. + boolean wantsEarlyWakeUp = depth > 0 && depth < 1; + if (wantsEarlyWakeUp && !mInEarlyWakeUp) { + try { + transaction.setEarlyWakeupStart(); + } catch (NoSuchMethodError e) { + // LC-Ignored: wtf? + } + mInEarlyWakeUp = true; + } else if (!wantsEarlyWakeUp && mInEarlyWakeUp) { + try { + transaction.setEarlyWakeupEnd(); + } catch (NoSuchMethodError e) { + // LC-Ignored: wtf? + } + mInEarlyWakeUp = false; } - StateManager<LauncherState, Launcher> stateManager = mLauncher.getStateManager(); - LauncherState targetState = stateManager.getTargetState() != null - ? stateManager.getTargetState() : stateManager.getState(); - // Only blur workspace if the current state wants to blur based on the target state. - boolean shouldBlurWorkspace = - stateManager.getCurrentStableState().shouldBlurWorkspace(targetState); - RenderEffect blurEffect = shouldBlurWorkspace && mCurrentBlur > 0 - ? RenderEffect.createBlurEffect(mCurrentBlur, mCurrentBlur, Shader.TileMode.DECAL) - // If blur is not desired, clear the blur effect from the depth targets. - : null; - mLauncher.getDepthBlurTargets().forEach(target -> target.setRenderEffect(blurEffect)); - return shouldBlurWorkspace; + AttachedSurfaceControl rootSurfaceControl = + mLauncher.getRootView().getRootSurfaceControl(); + if (rootSurfaceControl != null) { + rootSurfaceControl.applyTransactionOnDraw(transaction); + } } private void setDepth(float depth) { depth = Utilities.boundToRange(depth, 0, 1); - // Depth of the Launcher state we are in or transitioning to. - float targetStateDepth = mLauncher.getStateManager().getState().getDepth(mLauncher); - - float depthF; - if (depth == targetStateDepth) { - // Always apply the target state depth. - depthF = depth; - } else { - // Round out the depth to dedupe frequent, non-perceptable updates - int depthI = (int) (depth * 256); - depthF = depthI / 256f; - } + // Round out the depth to dedupe frequent, non-perceptable updates + int depthI = (int) (depth * 256); + float depthF = depthI / 256f; if (Float.compare(mDepth, depthF) == 0) { return; } @@ -367,45 +246,13 @@ public class BaseDepthController { * Sets the lowest surface that should not be blurred. * <p> * Blur is applied to below {@link #mBaseSurfaceOverride}. When set to {@code null}, blur is - * applied to below {@link #mBaseSurface}. + * applied + * to below {@link #mBaseSurface}. * </p> */ - public void setBaseSurfaceOverride(@Nullable SurfaceControl baseSurfaceOverride, - boolean applyOnDraw) { - if (mBaseSurfaceOverride != baseSurfaceOverride) { - boolean applyImmediately = mBaseSurfaceOverride != null && baseSurfaceOverride == null - && !applyOnDraw; - mBaseSurfaceOverride = baseSurfaceOverride; - Log.d(TAG, "setBaseSurfaceOverride: applying blur behind leash " + baseSurfaceOverride); - SurfaceControl.Transaction transaction = setupBlurSurface(); - applyDepthAndBlur(transaction, applyImmediately, /* skipSimilarBlur */ false); - } - } - - private @Nullable SurfaceControl.Transaction setupBlurSurface() { - SurfaceControl.Transaction transaction = null; - if (mBaseSurface != null && mBaseSurfaceOverride != null) { - transaction = createTransaction().setBackgroundBlurRadius(mBaseSurface, 0) - .setOpaque(mBaseSurface, false); - if (mBlurSurface == null) { - mBlurSurface = new SurfaceControl.Builder() - .setName("Overview Blur") - .setHidden(false) - .build(); - Log.d(TAG, - "setupBlurSurface: creating Overview Blur surface " + mBlurSurface); - transaction.reparent(mBlurSurface, mBaseSurface); - Log.d(TAG, - "setupBlurSurface: reparenting " + mBlurSurface + " to " + mBaseSurface); - } - transaction.setRelativeLayer(mBlurSurface, mBaseSurfaceOverride, -1); - Log.d(TAG, "setupBlurSurface: relayering to leash " + mBaseSurfaceOverride); - } else if (mBlurSurface != null) { - Log.d(TAG, "setupBlurSurface: removing blur surface " + mBlurSurface); - transaction = createTransaction().remove(mBlurSurface); - mBlurSurface = null; - } - return transaction; + public void setBaseSurfaceOverride(@Nullable SurfaceControl baseSurfaceOverride) { + this.mBaseSurfaceOverride = baseSurfaceOverride; + applyDepthAndBlur(); } /** @@ -416,12 +263,7 @@ public class BaseDepthController { mBaseSurface = baseSurface; Log.d(TAG, "setSurface:\n\tmWaitingOnSurfaceValidity: " + mWaitingOnSurfaceValidity + "\n\tmBaseSurface: " + mBaseSurface); - SurfaceControl.Transaction transaction = null; - if (enableOverviewBackgroundWallpaperBlur()) { - transaction = setupBlurSurface(); - } - applyDepthAndBlur(transaction, /* applyImmediately */ false, - /* skipSimilarBlur */ false); + applyDepthAndBlur(); } } @@ -430,10 +272,6 @@ public class BaseDepthController { * The blur percentage grows linearly with depth, and maxes out at 30% depth. */ private static float mapDepthToBlur(float depth) { - return Interpolators.clampToProgress(depth, 0, 0.3f); - } - - private SurfaceControl.Transaction createTransaction() { - return new SurfaceControl.Transaction(); + return Math.min(3 * depth, 1f); } } diff --git a/quickstep/src/com/android/quickstep/util/BorderAnimator.kt b/quickstep/src/com/android/quickstep/util/BorderAnimator.kt index ac6e1ccc27..d1d47b9fa5 100644 --- a/quickstep/src/com/android/quickstep/util/BorderAnimator.kt +++ b/quickstep/src/com/android/quickstep/util/BorderAnimator.kt @@ -63,7 +63,7 @@ private constructor( const val DEFAULT_BORDER_COLOR = Color.WHITE private const val DEFAULT_APPEARANCE_ANIMATION_DURATION_MS = 300L private const val DEFAULT_DISAPPEARANCE_ANIMATION_DURATION_MS = 133L - val DEFAULT_INTERPOLATOR = Interpolators.EMPHASIZED_DECELERATE + private val DEFAULT_INTERPOLATOR = Interpolators.EMPHASIZED_DECELERATE /** * Creates a BorderAnimator that simply draws the border outside the bound of the target diff --git a/quickstep/src/com/android/quickstep/util/ContextualSearchInvoker.kt b/quickstep/src/com/android/quickstep/util/ContextualSearchInvoker.kt index aabea65917..e574cc7cdd 100644 --- a/quickstep/src/com/android/quickstep/util/ContextualSearchInvoker.kt +++ b/quickstep/src/com/android/quickstep/util/ContextualSearchInvoker.kt @@ -24,7 +24,6 @@ import android.util.Log import android.view.Display.DEFAULT_DISPLAY import androidx.annotation.VisibleForTesting import com.android.internal.app.AssistUtils -import com.android.launcher3.dagger.ApplicationContext import com.android.launcher3.logging.StatsLogManager import com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_LAUNCH_ASSISTANT_FAILED_SERVICE_ERROR import com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_LAUNCH_OMNI_ATTEMPTED_OVER_KEYGUARD @@ -40,7 +39,6 @@ import com.android.quickstep.SystemUiProxy import com.android.quickstep.TopTaskTracker import com.android.quickstep.views.RecentsView import com.android.systemui.shared.system.QuickStepContract -import javax.inject.Inject /** Handles invocations and checks for Contextual Search. */ class ContextualSearchInvoker @@ -65,24 +63,6 @@ internal constructor( context.getSystemService(ContextualSearchManager::class.java), ) - @Inject - constructor( - @ApplicationContext context: Context, - contextualSearchStateManager: ContextualSearchStateManager, - topTaskTracker: TopTaskTracker, - systemUiProxy: SystemUiProxy, - logManagerFactory: StatsLogManager.StatsLogManagerFactory, - hapticManager: ContextualSearchHapticManager, - ) : this( - context, - contextualSearchStateManager, - topTaskTracker, - systemUiProxy, - logManagerFactory.create(context), - hapticManager, - context.getSystemService(ContextualSearchManager::class.java), - ) - /** @return Array of AssistUtils.INVOCATION_TYPE_* that we want to handle instead of SysUI. */ fun getSysUiAssistOverrideInvocationTypes(): IntArray { val overrideInvocationTypes = com.android.launcher3.util.IntArray() @@ -183,7 +163,11 @@ internal constructor( statsLogManager.logger().log(LAUNCHER_LAUNCH_OMNI_FAILED_NOT_AVAILABLE) return false } - + if (isFakeLandscape()) { + // TODO (b/383421642): Fake landscape is to be removed in 25Q3 and this entire block + // can be removed when that happens. + return false + } return true } @@ -219,6 +203,13 @@ internal constructor( return true } + private fun isFakeLandscape(): Boolean = + getRecentsContainerInterface() + ?.getCreatedContainer() + ?.getOverviewPanel<RecentsView<*, *>>() + ?.getPagedOrientationHandler() + ?.isLayoutNaturalToLauncher == false + private fun isInSplitscreen(): Boolean { return topTaskTracker.getRunningSplitTaskIds().isNotEmpty() } diff --git a/quickstep/src/com/android/quickstep/util/DesktopTask.kt b/quickstep/src/com/android/quickstep/util/DesktopTask.kt index e29c869c16..7c2729346c 100644 --- a/quickstep/src/com/android/quickstep/util/DesktopTask.kt +++ b/quickstep/src/com/android/quickstep/util/DesktopTask.kt @@ -24,8 +24,8 @@ import java.util.Objects * tasks list. Note that desktops can be empty with no tasks in them. The [deskId], [displayId] * makes sense only when the multiple desks feature is enabled. */ -class DesktopTask(val deskId: Int, desktopDisplayId: Int, tasks: List<Task>) : - GroupTask(tasks, desktopDisplayId, TaskViewType.DESKTOP) { +class DesktopTask(val deskId: Int, val displayId: Int, tasks: List<Task>) : + GroupTask(tasks, TaskViewType.DESKTOP) { override fun copy() = DesktopTask(deskId, displayId, tasks) diff --git a/quickstep/src/com/android/quickstep/util/ExternalDisplays.kt b/quickstep/src/com/android/quickstep/util/ExternalDisplays.kt index e60e9f3959..0aaca31f8b 100644 --- a/quickstep/src/com/android/quickstep/util/ExternalDisplays.kt +++ b/quickstep/src/com/android/quickstep/util/ExternalDisplays.kt @@ -23,11 +23,7 @@ import com.android.systemui.shared.recents.model.Task /** Whether this displayId belongs to an external display */ val Int.isExternalDisplay - get() = !isDefaultDisplay - -/** Whether this displayId belongs to the default display */ -val Int.isDefaultDisplay - get() = this == DEFAULT_DISPLAY + get() = this != DEFAULT_DISPLAY val Int?.safeDisplayId get() = diff --git a/quickstep/src/com/android/quickstep/util/GroupTask.kt b/quickstep/src/com/android/quickstep/util/GroupTask.kt index 9ba20673a1..2b754e2e0d 100644 --- a/quickstep/src/com/android/quickstep/util/GroupTask.kt +++ b/quickstep/src/com/android/quickstep/util/GroupTask.kt @@ -15,24 +15,19 @@ */ package com.android.quickstep.util +import com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_TASK import com.android.launcher3.model.data.TaskItemInfo import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.util.SplitConfigurationOptions import com.android.quickstep.views.TaskViewType import com.android.systemui.shared.recents.model.Task -import com.android.wm.shell.shared.split.SplitBounds import java.util.Objects /** * An abstract class for creating [Task] containers that can be [SingleTask]s, [SplitTask]s, or * [DesktopTask]s in the recent tasks list. */ -abstract class GroupTask( - val tasks: List<Task>, - val displayId: Int, - @JvmField val taskViewType: TaskViewType, -) { - +abstract class GroupTask(val tasks: List<Task>, @JvmField val taskViewType: TaskViewType) { fun containsTask(taskId: Int) = tasks.any { it.key.id == taskId } /** @@ -40,9 +35,6 @@ abstract class GroupTask( */ fun containsPackage(packageName: String?) = tasks.any { it.key.packageName == packageName } - /** Returns true if a task in this group has the given displayId. */ - fun matchesDisplayId(displayId: Int) = displayId == this.displayId.safeDisplayId - /** * Returns true if a task in this group has a package name that matches the given `packageName`, * and its user ID matches the given `userId`. @@ -65,7 +57,7 @@ abstract class GroupTask( } /** A [Task] container that must contain exactly one task in the recent tasks list. */ -class SingleTask(task: Task) : GroupTask(listOf(task), task.key.displayId, TaskViewType.SINGLE) { +class SingleTask(task: Task) : GroupTask(listOf(task), TaskViewType.SINGLE) { val task: Task get() = tasks[0] @@ -82,9 +74,16 @@ class SingleTask(task: Task) : GroupTask(listOf(task), task.key.displayId, TaskV companion object { /** Creates a [TaskItemInfo] using the information of the SingleTask */ - fun createTaskItemInfo(task: SingleTask, wif: WorkspaceItemInfo): TaskItemInfo { + fun createTaskItemInfo(task: SingleTask): TaskItemInfo { // TODO: b/344657629 - Support GroupTask in addition to SingleTask. - return TaskItemInfo(task.task.key.id, wif) + val wii = + WorkspaceItemInfo().apply { + title = task.task.title + intent = task.task.key.baseIntent + itemType = ITEM_TYPE_TASK + contentDescription = task.task.titleDescription + } + return TaskItemInfo(task.task.key.id, wii) } } @@ -95,16 +94,11 @@ class SingleTask(task: Task) : GroupTask(listOf(task), task.key.displayId, TaskV * A [Task] container that must contain exactly two tasks and split bounds to represent an app-pair * in the recent tasks list. */ -class SplitTask(task1: Task, task2: Task, val splitBounds: SplitBounds?) : - GroupTask(listOf(task1, task2), task1.key.displayId, TaskViewType.GROUPED) { +class SplitTask(task1: Task, task2: Task, val splitBounds: SplitConfigurationOptions.SplitBounds) : + GroupTask(listOf(task1, task2), TaskViewType.GROUPED) { val topLeftTask: Task - get() = - when { - splitBounds == null -> tasks[0] - splitBounds.leftTopTaskId == tasks[0].key.id -> tasks[0] - else -> tasks[1] - } + get() = if (splitBounds.leftTopTaskId == tasks[0].key.id) tasks[0] else tasks[1] val bottomRightTask: Task get() = if (topLeftTask == tasks[0]) tasks[1] else tasks[0] diff --git a/quickstep/src/com/android/quickstep/util/LauncherUnfoldAnimationController.java b/quickstep/src/com/android/quickstep/util/LauncherUnfoldAnimationController.java index e197a93093..32c1e89e79 100644 --- a/quickstep/src/com/android/quickstep/util/LauncherUnfoldAnimationController.java +++ b/quickstep/src/com/android/quickstep/util/LauncherUnfoldAnimationController.java @@ -163,7 +163,7 @@ public class LauncherUnfoldAnimationController implements OnDeviceProfileChangeL @Override public void onDeviceProfileChanged(DeviceProfile dp) { - if (mIsTablet != null && dp.getDeviceProperties().isTablet() != mIsTablet) { + if (mIsTablet != null && dp.isTablet != mIsTablet) { // We should preemptively start the animation only if: // - We changed to the unfolded screen // - SystemUI IPC connection is alive, so we won't end up in a situation that we won't @@ -173,7 +173,7 @@ public class LauncherUnfoldAnimationController implements OnDeviceProfileChangeL // if Launcher was not open during unfold, in this case we receive the configuration // change only after we went back to home screen and we don't want to start the // animation in this case. - if (dp.getDeviceProperties().isTablet() + if (dp.isTablet && SystemUiProxy.INSTANCE.get(mLauncher).isActive() && !mExternalTransitionStatusProvider.hasRun()) { // Preemptively start the unfold animation to make sure that we have drawn @@ -181,12 +181,12 @@ public class LauncherUnfoldAnimationController implements OnDeviceProfileChangeL preemptivelyStartAnimationOnNextFrame(); } - if (!dp.getDeviceProperties().isTablet()) { + if (!dp.isTablet) { mExternalTransitionStatusProvider.onFolded(); } } - mIsTablet = dp.getDeviceProperties().isTablet(); + mIsTablet = dp.isTablet; } private class QsbAnimationListener implements TransitionProgressListener { diff --git a/quickstep/src/com/android/quickstep/util/LayoutUtils.java b/quickstep/src/com/android/quickstep/util/LayoutUtils.java index 70cbd26122..a8460c9d7c 100644 --- a/quickstep/src/com/android/quickstep/util/LayoutUtils.java +++ b/quickstep/src/com/android/quickstep/util/LayoutUtils.java @@ -34,8 +34,7 @@ public class LayoutUtils { * The height for the swipe up motion */ public static float getDefaultSwipeHeight(Context context, DeviceProfile dp) { - float swipeHeight = dp.getAllAppsProfile().getCellHeightPx() - - dp.getAllAppsProfile().getIconTextSizePx(); + float swipeHeight = dp.allAppsCellHeightPx - dp.allAppsIconTextSizePx; if (DisplayController.getNavigationMode(context) == NavigationMode.NO_BUTTON) { swipeHeight -= dp.getInsets().bottom; } diff --git a/quickstep/src/com/android/quickstep/util/QuickstepOnboardingPrefs.java b/quickstep/src/com/android/quickstep/util/QuickstepOnboardingPrefs.java index a6da2e9e02..70ef47cc77 100644 --- a/quickstep/src/com/android/quickstep/util/QuickstepOnboardingPrefs.java +++ b/quickstep/src/com/android/quickstep/util/QuickstepOnboardingPrefs.java @@ -82,7 +82,7 @@ public class QuickstepOnboardingPrefs { public void onStateTransitionComplete(LauncherState finalState) { HotseatPredictionController client = launcher.getHotseatPredictionController(); if (mFromAllApps && finalState == NORMAL && client.hasPredictions()) { - if (!launcher.getDeviceProfile().getDeviceProperties().isTablet() + if (!launcher.getDeviceProfile().isTablet && HOTSEAT_DISCOVERY_TIP_COUNT.increment(launcher)) { client.showEdu(); stateManager.removeStateListener(this); diff --git a/quickstep/src/com/android/quickstep/util/RecentsOrientedState.java b/quickstep/src/com/android/quickstep/util/RecentsOrientedState.java index 33fe83e1d0..9cdde01ef9 100644 --- a/quickstep/src/com/android/quickstep/util/RecentsOrientedState.java +++ b/quickstep/src/com/android/quickstep/util/RecentsOrientedState.java @@ -16,13 +16,13 @@ package com.android.quickstep.util; -import static android.view.Display.DEFAULT_DISPLAY; import static android.view.OrientationEventListener.ORIENTATION_UNKNOWN; import static android.view.Surface.ROTATION_0; import static android.view.Surface.ROTATION_180; import static android.view.Surface.ROTATION_270; import static android.view.Surface.ROTATION_90; +import static com.android.launcher3.Flags.enableOverviewOnConnectedDisplays; import static com.android.launcher3.LauncherPrefs.ALLOW_ROTATION; import static com.android.launcher3.LauncherPrefs.FIXED_LANDSCAPE_MODE; import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; @@ -56,6 +56,7 @@ import com.android.launcher3.util.SettingsCache; import com.android.quickstep.BaseContainerInterface; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.TaskAnimationManager; +import com.android.quickstep.fallback.window.RecentsDisplayModel; import com.android.quickstep.orientation.RecentsPagedOrientationHandler; import java.lang.annotation.Retention; @@ -147,7 +148,7 @@ public class RecentsOrientedState implements LauncherPrefChangeListener { IntConsumer rotationChangeListener) { mContext = context; mContainerInterface = containerInterface; - mOrientationListener = new OrientationEventListener(mContext) { + mOrientationListener = new OrientationEventListener(context) { @Override public void onOrientationChanged(int degrees) { int newRotation = getRotationForUserDegreesRotated(degrees, mPreviousRotation); @@ -175,7 +176,7 @@ public class RecentsOrientedState implements LauncherPrefChangeListener { */ public void setDeviceProfile(DeviceProfile deviceProfile) { boolean oldMultipleOrientationsSupported = isMultipleOrientationSupportedByDevice(); - setFlag(FLAG_MULTIPLE_ORIENTATION_SUPPORTED_BY_DENSITY, !deviceProfile.getDeviceProperties().isTablet()); + setFlag(FLAG_MULTIPLE_ORIENTATION_SUPPORTED_BY_DENSITY, !deviceProfile.isTablet); if (mListenersInitialized) { boolean newMultipleOrientationsSupported = isMultipleOrientationSupportedByDevice(); // If isMultipleOrientationSupportedByDevice is changed, init or destroy listeners @@ -419,20 +420,6 @@ public class RecentsOrientedState implements LauncherPrefChangeListener { | FLAG_HOME_ROTATION_FORCE_ENABLED_FOR_TESTING)) != 0; } - /** - * Returns if we should show the action buttons on the recent view based on the orientation - * state. - */ - public boolean shouldHideActionButtons() { - // In fixed landscape always show the action buttons - return !isLauncherFixedLandscape() - // When not in fixed landscape, do not show actions buttons when using - // fake landscape which happens when the rotation is not ROTATION_0 unless - // rotation is allowed - && (getTouchRotation() != ROTATION_0 || getRecentsActivityRotation() != ROTATION_0) - && !isRecentsActivityRotationAllowed(); - } - /** * Enables or disables the rotation watcher for listening to rotation callbacks */ @@ -613,8 +600,9 @@ public class RecentsOrientedState implements LauncherPrefChangeListener { * Returns the device profile based on expected launcher rotation */ public DeviceProfile getLauncherDeviceProfile(int displayId) { - if (displayId != DEFAULT_DISPLAY) { - return mContainerInterface.getCreatedContainer().getDeviceProfile(); + if (enableOverviewOnConnectedDisplays()) { + return RecentsDisplayModel.getINSTANCE().get(mContext).getRecentsWindowManager( + displayId).getDeviceProfile(); } else { InvariantDeviceProfile idp = InvariantDeviceProfile.INSTANCE.get(mContext); Point currentSize = DisplayController.INSTANCE.get(mContext).getInfo().currentSize; diff --git a/quickstep/src/com/android/quickstep/util/RectFSpringAnim.java b/quickstep/src/com/android/quickstep/util/RectFSpringAnim.java index f56c7a27d5..00b40116f7 100644 --- a/quickstep/src/com/android/quickstep/util/RectFSpringAnim.java +++ b/quickstep/src/com/android/quickstep/util/RectFSpringAnim.java @@ -346,7 +346,7 @@ public class RectFSpringAnim extends ReleaseCheck { // Increase the stiffness for devices where we want the window size to transform // quicker. boolean shouldUseHigherStiffness = profile != null - && (profile.getDeviceProperties().isLandscape() || profile.getDeviceProperties().isTablet()); + && (profile.isLandscape || profile.isTablet); float stiffness = shouldUseHigherStiffness ? rp.getFloat(R.dimen.swipe_up_rect_scale_higher_stiffness) : rp.getFloat(R.dimen.swipe_up_rect_scale_stiffness); @@ -549,7 +549,7 @@ public class RectFSpringAnim extends ReleaseCheck { // Increase the stiffness for devices where we want the window size to transform // quicker. boolean shouldUseHigherStiffness = deviceProfile != null - && (deviceProfile.getDeviceProperties().isLandscape() || deviceProfile.getDeviceProperties().isTablet()); + && (deviceProfile.isLandscape || deviceProfile.isTablet); rectStiffness = shouldUseHigherStiffness ? rp.getFloat(R.dimen.swipe_up_rect_scale_higher_stiffness) : rp.getFloat(R.dimen.swipe_up_rect_scale_stiffness); @@ -562,11 +562,11 @@ public class RectFSpringAnim extends ReleaseCheck { ? TRACKING_BOTTOM : TRACKING_TOP; } else { - int heightPx = deviceProfile.getDeviceProperties().getHeightPx(); + int heightPx = deviceProfile.heightPx; Rect padding = deviceProfile.workspacePadding; final float topThreshold = heightPx / 3f; - final float bottomThreshold = deviceProfile.getDeviceProperties().getHeightPx() - padding.bottom; + final float bottomThreshold = deviceProfile.heightPx - padding.bottom; if (targetRect.bottom > bottomThreshold) { if (enableScalingRevealHomeAnimation()) { diff --git a/quickstep/src/com/android/quickstep/util/ScalingWorkspaceRevealAnim.kt b/quickstep/src/com/android/quickstep/util/ScalingWorkspaceRevealAnim.kt index 9928b35acb..63eae921b0 100644 --- a/quickstep/src/com/android/quickstep/util/ScalingWorkspaceRevealAnim.kt +++ b/quickstep/src/com/android/quickstep/util/ScalingWorkspaceRevealAnim.kt @@ -19,27 +19,21 @@ package com.android.quickstep.util import android.animation.Animator import android.animation.AnimatorListenerAdapter import android.animation.AnimatorSet -import android.animation.ValueAnimator import android.graphics.Matrix import android.graphics.Path import android.graphics.RectF import android.util.Log -import android.view.SurfaceControl import android.view.View import android.view.animation.PathInterpolator import androidx.core.graphics.transform -import androidx.core.view.isVisible import com.android.app.animation.Animations import com.android.app.animation.Interpolators -import com.android.app.animation.Interpolators.EMPHASIZED import com.android.app.animation.Interpolators.LINEAR import com.android.launcher3.Flags import com.android.launcher3.LauncherAnimUtils.HOTSEAT_SCALE_PROPERTY_FACTORY import com.android.launcher3.LauncherAnimUtils.SCALE_INDEX_WORKSPACE_STATE -import com.android.launcher3.LauncherAnimUtils.VIEW_ALPHA import com.android.launcher3.LauncherAnimUtils.WORKSPACE_SCALE_PROPERTY_FACTORY import com.android.launcher3.LauncherState -import com.android.launcher3.R import com.android.launcher3.anim.AnimatorListeners import com.android.launcher3.anim.PendingAnimation import com.android.launcher3.anim.PropertySetter @@ -83,14 +77,9 @@ class ScalingWorkspaceRevealAnim( cubicTo(0.235f, 0.6855f, 0.235f, 1f, 1f, 1f) } ) - - val BLUR_INTERPOLATOR = Interpolators.clampToProgress(EMPHASIZED, 0f, 0.666f) } private val animation = PendingAnimation(SCALE_DURATION_MS) - private var blurLayer: SurfaceControl? = null - private var surfaceTransactionApplier: SurfaceTransactionApplier = - SurfaceTransactionApplier(launcher.dragLayer) init { // Make sure the starting state is right for the animation. @@ -108,18 +97,21 @@ class ScalingWorkspaceRevealAnim( LauncherState.BACKGROUND_APP, setupConfig, ) - addBlurLayer() val workspace = launcher.workspace val hotseat = launcher.hotseat - // Interrupt the current animation, if any. - Animations.cancelOngoingAnimation(workspace) - Animations.cancelOngoingAnimation(hotseat) + var fromSize = + if (Flags.coordinateWorkspaceScale()) { + // Interrupt the current animation, if any. + Animations.cancelOngoingAnimation(workspace) + Animations.cancelOngoingAnimation(hotseat) - val fromSize = - if (workspace.scaleX != MAX_SIZE) { - workspace.scaleX + if (workspace.scaleX != MAX_SIZE) { + workspace.scaleX + } else { + MIN_SIZE + } } else { MIN_SIZE } @@ -146,17 +138,12 @@ class ScalingWorkspaceRevealAnim( // it's popping into existence out of nowhere. val fadeClamp = FADE_DURATION_MS.toFloat() / SCALE_DURATION_MS workspace.alpha = MIN_ALPHA - animation.setFloat( + animation.setViewAlpha( workspace, - VIEW_ALPHA, MAX_ALPHA, Interpolators.clampToProgress(LINEAR, 0f, fadeClamp), ) hotseat.alpha = MIN_ALPHA - // This needs to use setViewAlpha instead of setFloat (like workspace). - // This is because hotseat visibility can also be changed based off of alpha in - // WorkspaceRevealAnim which also calls setViewAlpha. - // b/428257480 Ideally we should be settings MultiValueAlpha with 2 channels instead. animation.setViewAlpha( hotseat, MAX_ALPHA, @@ -165,33 +152,14 @@ class ScalingWorkspaceRevealAnim( } val transitionConfig = StateAnimationConfig() - transitionConfig.duration = SCALE_DURATION_MS - // Match the Wallpaper depth to the rest of the content. + // Match the Wallpaper animation to the rest of the content. val depthController = (launcher as? QuickstepLauncher)?.depthController transitionConfig.setInterpolator(StateAnimationConfig.ANIM_DEPTH, SCALE_INTERPOLATOR) - depthController?.pauseBlursOnWindows(true) // Blurring is handled by the scrim layer. - depthController?.stateDepth?.value = LauncherState.BACKGROUND_APP.getDepth(launcher) depthController?.setStateWithAnimation(LauncherState.NORMAL, transitionConfig, animation) - // Add a blur animation to the scrim layer. - var maxBlurRadius = - launcher.resources.getDimensionPixelSize( - if (Flags.allAppsBlur() || Flags.enableOverviewBackgroundWallpaperBlur()) { - R.dimen.max_depth_blur_radius_enhanced - } else { - R.integer.max_depth_blur_radius - } - ) - val blurAnimator = ValueAnimator.ofFloat(1f, 0f) - blurAnimator.setInterpolator(BLUR_INTERPOLATOR) - blurAnimator.addUpdateListener { - applyBlur(maxBlurRadius * blurAnimator.animatedValue as Float) - } - animation.add(blurAnimator) - - // Make sure that the contrast scrim animates correctly (alongside the blur) if needed. - transitionConfig.setInterpolator(StateAnimationConfig.ANIM_SCRIM_FADE, BLUR_INTERPOLATOR) + // Make sure that the contrast scrim animates correctly if needed. + transitionConfig.setInterpolator(StateAnimationConfig.ANIM_SCRIM_FADE, SCALE_INTERPOLATOR) launcher.workspace.stateTransitionAnimation.setScrim( animation, LauncherState.NORMAL, @@ -249,36 +217,24 @@ class ScalingWorkspaceRevealAnim( } } ) - animation.addListener( AnimatorListeners.forEndCallback( Runnable { - Log.d(TAG, "onAnimationEnd, workspace and hotseat are visible") - // Ensure that the workspace and the hotseat are visible at the end - // of the animation regardless of what happens with this animation - // itself. - workspace.alpha = MAX_ALPHA - hotseat.alpha = MAX_ALPHA - if (!hotseat.isVisible || !workspace.isVisible) { - Log.e( - TAG, - "Unexpected invisibility after animation end:" + - " workspace.isVisible=${workspace.isVisible}" + - ", workspace.alpha=${workspace.alpha}" + - ", hotseat.isVisible=${hotseat.isVisible}" + - ", hotseat.alpha=${hotseat.alpha}", - Exception(), - ) - } + // The workspace might stay at a transparent state when the animation is + // cancelled, and the alpha will not be recovered (this doesn't apply to scales + // somehow). Resetting the alpha for the workspace here. + workspace.alpha = 1.0F workspace.setLayerType(View.LAYER_TYPE_NONE, null) hotseat.setLayerType(View.LAYER_TYPE_NONE, null) - // Reset the cached animations. - Animations.setOngoingAnimation(workspace, animation = null) - Animations.setOngoingAnimation(hotseat, animation = null) - removeBlurLayer() - depthController?.pauseBlursOnWindows(false) + if (Flags.coordinateWorkspaceScale()) { + // Reset the cached animations. + Animations.setOngoingAnimation(workspace, animation = null) + Animations.setOngoingAnimation(hotseat, animation = null) + } + + Log.d(TAG, "alpha of workspace at the end of animation: ${workspace.alpha}") } ) ) @@ -290,58 +246,13 @@ class ScalingWorkspaceRevealAnim( fun start() { val animators = getAnimators() - // Make sure to cache the current animation, so it can be properly interrupted. - // TODO(b/367591368): ideally these animations would be refactored to be controlled - // centrally so each instances doesn't need to care about this coordination. - Animations.setOngoingAnimation(launcher.workspace, animators) - Animations.setOngoingAnimation(launcher.hotseat, animators) - launcher.stateManager.setCurrentAnimation(animators, LauncherState.NORMAL) + if (Flags.coordinateWorkspaceScale()) { + // Make sure to cache the current animation, so it can be properly interrupted. + // TODO(b/367591368): ideally these animations would be refactored to be controlled + // centrally so each instances doesn't need to care about this coordination. + Animations.setOngoingAnimation(launcher.workspace, animators) + Animations.setOngoingAnimation(launcher.hotseat, animators) + } animators.start() } - - private fun addBlurLayer() { - val parent = launcher.dragLayer.viewRootImpl?.surfaceControl ?: return - if (!parent.isValid) { - Log.e(TAG, "Parent surface is not ready at the moment. Can't apply blur.") - return - } - val blurLayer = - SurfaceControl.Builder() - .setName("Home to launcher blur layer") - .setCallsite("ScalingWorkspaceRevealAnim") - .setParent(parent) - .setOpaque(false) - .setHidden(false) - .build() - - // Schedule the initial setup of the blur layer. - val setupTransaction = SurfaceTransaction() - setupTransaction.forSurface(blurLayer).setAlpha(0f).setShow() - surfaceTransactionApplier.scheduleApply(setupTransaction) - - this.blurLayer = blurLayer - } - - private fun removeBlurLayer() { - blurLayer?.let { - if (it.isValid) { - // Schedule the removal of the blur layer. - val removalTransaction = SurfaceTransaction() - removalTransaction.forSurface(it).setRemove() - surfaceTransactionApplier.scheduleApply(removalTransaction) - } - } - blurLayer = null - } - - private fun applyBlur(blurRadius: Float) { - blurLayer?.let { - if (it.isValid) { - // Schedule the blur update. - val blurUpdateTransaction = SurfaceTransaction() - blurUpdateTransaction.forSurface(it).setBackgroundBlurRadius(blurRadius.toInt()) - surfaceTransactionApplier.scheduleApply(blurUpdateTransaction) - } - } - } } diff --git a/quickstep/src/com/android/quickstep/util/SlideInRemoteTransition.kt b/quickstep/src/com/android/quickstep/util/SlideInRemoteTransition.kt index 15f59e425f..ece958395f 100644 --- a/quickstep/src/com/android/quickstep/util/SlideInRemoteTransition.kt +++ b/quickstep/src/com/android/quickstep/util/SlideInRemoteTransition.kt @@ -36,6 +36,8 @@ class SlideInRemoteTransition( private val pageSpacing: Int, private val cornerRadius: Float, private val interpolator: TimeInterpolator, + private val onStartCallback: Runnable, + private val onFinishCallback: Runnable, ) : RemoteTransitionStub() { private val animationDurationMs = 500L @@ -43,7 +45,7 @@ class SlideInRemoteTransition( transition: IBinder, info: TransitionInfo, startT: Transaction, - finishCB: IRemoteTransitionFinishedCallback, + finishCB: IRemoteTransitionFinishedCallback ) { val anim = ValueAnimator.ofFloat(0f, 1f) anim.interpolator = interpolator @@ -68,6 +70,7 @@ class SlideInRemoteTransition( startT.setCrop(leash, chg.endAbsBounds).setCornerRadius(leash, cornerRadius) } } + onStartCallback.run() startT.apply() anim.addUpdateListener { @@ -97,6 +100,7 @@ class SlideInRemoteTransition( val t = Transaction() try { finishCB.onTransitionFinished(null, t) + onFinishCallback.run() } catch (e: RemoteException) { // Ignore } diff --git a/quickstep/src/com/android/quickstep/util/SplitAnimationController.kt b/quickstep/src/com/android/quickstep/util/SplitAnimationController.kt index 55644bd3f3..8601350b8f 100644 --- a/quickstep/src/com/android/quickstep/util/SplitAnimationController.kt +++ b/quickstep/src/com/android/quickstep/util/SplitAnimationController.kt @@ -36,7 +36,6 @@ import android.view.RemoteAnimationTarget import android.view.SurfaceControl import android.view.SurfaceControl.Transaction import android.view.View -import android.view.WindowManager.TRANSIT_CHANGE import android.view.WindowManager.TRANSIT_OPEN import android.view.WindowManager.TRANSIT_TO_FRONT import android.window.TransitionInfo @@ -47,6 +46,7 @@ import androidx.core.util.component1 import androidx.core.util.component2 import com.android.app.animation.Interpolators import com.android.launcher3.DeviceProfile +import com.android.launcher3.Flags.enableOverviewIconMenu import com.android.launcher3.Flags.enableRefactorTaskThumbnail import com.android.launcher3.InsettableFrameLayout import com.android.launcher3.QuickstepTransitionManager @@ -60,13 +60,11 @@ import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.statehandlers.DepthController import com.android.launcher3.statemanager.StateManager import com.android.launcher3.taskbar.TaskbarActivityContext +import com.android.launcher3.uioverrides.QuickstepLauncher import com.android.launcher3.util.MultiPropertyFactory.MULTI_PROPERTY_VALUE -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu import com.android.launcher3.util.SplitConfigurationOptions.SplitSelectSource -import com.android.launcher3.views.ActivityContext import com.android.launcher3.views.BaseDragLayer import com.android.quickstep.TaskViewUtils -import com.android.quickstep.util.SplitScreenUtils.Companion.extractTopParentAndChildren import com.android.quickstep.views.FloatingAppPairView import com.android.quickstep.views.FloatingTaskView import com.android.quickstep.views.GroupedTaskView @@ -193,7 +191,7 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC taskViewHeight: Int, isPrimaryTaskSplitting: Boolean, ) { - val taskContentView = taskContainer.taskContentView + val snapshot = taskContainer.snapshotView val iconView: View = taskContainer.iconView.asView() if (enableRefactorTaskThumbnail()) { builder.add( @@ -242,11 +240,7 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC val centerThumbnailTranslationX: Float = (taskViewWidth - snapshotViewSize.x) / 2f val finalScaleX: Float = taskViewWidth.toFloat() / snapshotViewSize.x builder.add( - ObjectAnimator.ofFloat( - taskContentView, - View.TRANSLATION_X, - centerThumbnailTranslationX, - ) + ObjectAnimator.ofFloat(snapshot, View.TRANSLATION_X, centerThumbnailTranslationX) ) if (!enableOverviewIconMenu()) { // icons are anchored from Gravity.END, so need to use negative translation @@ -255,20 +249,17 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC ObjectAnimator.ofFloat(iconView, View.TRANSLATION_X, -centerIconTranslationX) ) } - builder.add(ObjectAnimator.ofFloat(taskContentView, View.SCALE_X, finalScaleX)) + builder.add(ObjectAnimator.ofFloat(snapshot, View.SCALE_X, finalScaleX)) // Reset other dimensions // TODO(b/271468547), can't set Y translate to 0, need to account for top space - taskContentView.scaleY = 1f + snapshot.scaleY = 1f val translateYResetVal: Float = if (!isPrimaryTaskSplitting) 0f - else deviceProfile.overviewProfile.taskThumbnailTopMarginPx.toFloat() - builder.add( - ObjectAnimator.ofFloat(taskContentView, View.TRANSLATION_Y, translateYResetVal) - ) + else deviceProfile.overviewTaskThumbnailTopMarginPx.toFloat() + builder.add(ObjectAnimator.ofFloat(snapshot, View.TRANSLATION_Y, translateYResetVal)) } else { - val thumbnailSize = - taskViewHeight - deviceProfile.overviewProfile.taskThumbnailTopMarginPx + val thumbnailSize = taskViewHeight - deviceProfile.overviewTaskThumbnailTopMarginPx // Center view first so scaling happens uniformly, alternatively we can move pivotY to 0 // primary thumbnail has layout margin above it, so secondary thumbnail needs to take // that into account. We should migrate to only using translations otherwise this @@ -283,28 +274,24 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC if (isPrimaryTaskSplitting) { centerThumbnailTranslationY = (thumbnailSize - snapshotViewSize.y) / 2f centerThumbnailTranslationY += - deviceProfile.overviewProfile.taskThumbnailTopMarginPx.toFloat() + deviceProfile.overviewTaskThumbnailTopMarginPx.toFloat() } else { centerThumbnailTranslationY = (thumbnailSize - snapshotViewSize.y) / 2f } val finalScaleY: Float = thumbnailSize.toFloat() / snapshotViewSize.y builder.add( - ObjectAnimator.ofFloat( - taskContentView, - View.TRANSLATION_Y, - centerThumbnailTranslationY, - ) + ObjectAnimator.ofFloat(snapshot, View.TRANSLATION_Y, centerThumbnailTranslationY) ) if (!enableOverviewIconMenu()) { // icons are anchored from Gravity.END, so need to use negative translation builder.add(ObjectAnimator.ofFloat(iconView, View.TRANSLATION_X, 0f)) } - builder.add(ObjectAnimator.ofFloat(taskContentView, View.SCALE_Y, finalScaleY)) + builder.add(ObjectAnimator.ofFloat(snapshot, View.SCALE_Y, finalScaleY)) // Reset other dimensions - taskContentView.scaleX = 1f - builder.add(ObjectAnimator.ofFloat(taskContentView, View.TRANSLATION_X, 0f)) + snapshot.scaleX = 1f + builder.add(ObjectAnimator.ofFloat(snapshot, View.TRANSLATION_X, 0f)) } } @@ -329,16 +316,14 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC // Make the scrim fullscreen val lp = scrim.layoutParams as InsettableFrameLayout.LayoutParams lp.topMargin = 0 - lp.height = dp.deviceProperties.heightPx - lp.width = dp.deviceProperties.widthPx + lp.height = dp.heightPx + lp.width = dp.widthPx scrim.alpha = 0f scrim.setBackgroundColor( container.asContext().resources.getColor(R.color.taskbar_background_dark) ) - val timings = - AnimUtils.getDeviceSplitToConfirmTimings(dp.deviceProperties.isTablet) - as SplitToConfirmTimings + val timings = AnimUtils.getDeviceSplitToConfirmTimings(dp.isTablet) as SplitToConfirmTimings pendingAnimation.setViewAlpha( scrim, 1f, @@ -431,10 +416,7 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC safeRemoveViewFromDragLayer(container, splitSelectStateController.splitInstructionsView) val splitInstructionsView = SplitInstructionsView.getSplitInstructionsView(container) splitSelectStateController.splitInstructionsView = splitInstructionsView - val timings = - AnimUtils.getDeviceOverviewToSplitTimings( - container.deviceProfile.deviceProperties.isTablet - ) + val timings = AnimUtils.getDeviceOverviewToSplitTimings(container.deviceProfile.isTablet) val anim = PendingAnimation(100 /*duration */) splitInstructionsView.alpha = 0f anim.setViewAlpha( @@ -477,7 +459,7 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC ) { val stagedTaskView = view as FloatingTaskView - val isTablet: Boolean = container.deviceProfile.deviceProperties.isTablet + val isTablet: Boolean = container.deviceProfile.isTablet val duration = if (isTablet) SplitAnimationTimings.TABLET_CONFIRM_DURATION else SplitAnimationTimings.PHONE_CONFIRM_DURATION @@ -741,13 +723,14 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC } // Else we are in Launcher and can launch with the full icon stretch-and-split animation. - val launcher: ActivityContext = ActivityContext.lookupContext(launchingIconView.context) + val launcher = QuickstepLauncher.getLauncher(launchingIconView.context) val dp = launcher.deviceProfile // Create an AnimatorSet that will run both shell and launcher transitions together val launchAnimation = AnimatorSet() - val splitRoots: Pair<Change, List<Change>>? = extractTopParentAndChildren(transitionInfo) + val splitRoots: Pair<Change, List<Change>>? = + SplitScreenUtils.extractTopParentAndChildren(transitionInfo) check(splitRoots != null) { "Could not find split roots" } // Will point to change (0) in diagram above @@ -833,7 +816,7 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC } // Else we are in Launcher and can launch with the full icon stretch-and-split animation. - val launcher: ActivityContext = ActivityContext.lookupContext(launchingIconView.context) + val launcher = QuickstepLauncher.getLauncher(launchingIconView.context) val dp = launcher.deviceProfile // Create an AnimatorSet that will run both shell and launcher transitions together @@ -890,14 +873,14 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC private fun getIconLaunchValueAnimator( t: Transaction, - dp: DeviceProfile, + dp: com.android.launcher3.DeviceProfile, finishCallback: Runnable, - launcher: ActivityContext, + launcher: QuickstepLauncher, floatingView: FloatingAppPairView, rootCandidate: Change, ): ValueAnimator { val progressUpdater = ValueAnimator.ofFloat(0f, 1f) - val timings = AnimUtils.getDeviceAppPairLaunchTimings(dp.deviceProperties.isTablet) + val timings = AnimUtils.getDeviceAppPairLaunchTimings(dp.isTablet) progressUpdater.setDuration(timings.getDuration().toLong()) progressUpdater.interpolator = Interpolators.LINEAR @@ -921,8 +904,7 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC var mDx = FloatProp( floatingView.startingPosition.left, - dp.deviceProperties.widthPx / 2f - - floatingView.startingPosition.width() / 2f, + dp.widthPx / 2f - floatingView.startingPosition.width() / 2f, Interpolators.clampToProgress( timings.getStagedRectXInterpolator(), timings.stagedRectSlideStartOffset, @@ -932,8 +914,7 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC var mDy = FloatProp( floatingView.startingPosition.top, - dp.deviceProperties.heightPx / 2f - - floatingView.startingPosition.height() / 2f, + dp.heightPx / 2f - floatingView.startingPosition.height() / 2f, Interpolators.clampToProgress( Interpolators.EMPHASIZED, timings.stagedRectSlideStartOffset, @@ -943,7 +924,7 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC var mScaleX = FloatProp( 1f /* start */, - dp.deviceProperties.widthPx / floatingView.startingPosition.width(), + dp.widthPx / floatingView.startingPosition.width(), Interpolators.clampToProgress( Interpolators.EMPHASIZED, timings.stagedRectSlideStartOffset, @@ -953,7 +934,7 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC var mScaleY = FloatProp( 1f /* start */, - dp.deviceProperties.heightPx / floatingView.startingPosition.height(), + dp.heightPx / floatingView.startingPosition.height(), Interpolators.clampToProgress( Interpolators.EMPHASIZED, timings.stagedRectSlideStartOffset, @@ -1000,18 +981,35 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC progressUpdater.setDuration(QuickstepTransitionManager.APP_LAUNCH_DURATION) progressUpdater.interpolator = Interpolators.EMPHASIZED - val splitTree: Pair<Change, List<Change>>? = extractTopParentAndChildren(transitionInfo) - check(splitTree != null) { "Could not find a split root candidate" } - val rootCandidate = splitTree.first - val stageRootTaskIds: Set<Int> = splitTree.second.map { it.taskInfo!!.taskId }.toSet() - val leafTasks: List<Change> = - transitionInfo.changes - .filter { - (TransitionUtil.isOpeningMode(it.mode) || it.mode == TRANSIT_CHANGE) && - it.taskInfo != null && - it.taskInfo!!.parentTaskId in stageRootTaskIds - } - .toList() + var rootCandidate: Change? = null + + for (change in transitionInfo.changes) { + val taskInfo: RunningTaskInfo = change.taskInfo ?: continue + + // TODO (b/316490565): Replace this logic when SplitBounds is available to + // startAnimation() and we can know the precise taskIds of launching tasks. + if ( + taskInfo.windowingMode == windowingMode && + (change.mode == TRANSIT_OPEN || change.mode == TRANSIT_TO_FRONT) + ) { + // Found one! + rootCandidate = change + break + } + } + + // If we could not find a proper root candidate, something went wrong. + check(rootCandidate != null) { "Could not find a split root candidate" } + + // Recurse up the tree until parent is null, then we've found our root. + var parentToken: WindowContainerToken? = rootCandidate.parent + while (parentToken != null) { + rootCandidate = transitionInfo.getChange(parentToken) ?: break + parentToken = rootCandidate.parent + } + + // Make sure nothing weird happened, like getChange() returning null. + check(rootCandidate != null) { "Failed to find a root leash" } // Starting position is a 34% size tile centered in the middle of the screen. // Ending position is the full device screen. @@ -1045,42 +1043,6 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC override fun onAnimationEnd(animation: Animator) { finishCallback.run() } - - override fun onAnimationStart(animation: Animator) { - // Reset leaf and stage root tasks, animation can begin from freeform windows - for (leaf in leafTasks) { - val endAbsBounds = leaf.endAbsBounds - - t.setAlpha(leaf.leash, 1f) - t.setCrop( - leaf.leash, - 0f, - 0f, - endAbsBounds.width().toFloat(), - endAbsBounds.height().toFloat(), - ) - t.setPosition(leaf.leash, 0f, 0f) - } - - for (stageRoot in splitTree.second) { - val endAbsBounds = stageRoot.endAbsBounds - - t.setAlpha(stageRoot.leash, 1f) - t.setCrop( - stageRoot.leash, - 0f, - 0f, - endAbsBounds.width().toFloat(), - endAbsBounds.height().toFloat(), - ) - t.setPosition( - stageRoot.leash, - endAbsBounds.left.toFloat(), - endAbsBounds.top.toFloat(), - ) - } - t.apply() - } } ) @@ -1192,7 +1154,7 @@ class SplitAnimationController(val splitSelectStateController: SplitSelectStateC animator.start() } - private fun safeRemoveViewFromDragLayer(container: ActivityContext, view: View?) { + private fun safeRemoveViewFromDragLayer(container: RecentsViewContainer, view: View?) { if (view != null) { container.dragLayer.removeView(view) } diff --git a/quickstep/src/com/android/quickstep/util/SplitScreenUtils.kt b/quickstep/src/com/android/quickstep/util/SplitScreenUtils.kt index 2eb848216d..4005c5a813 100644 --- a/quickstep/src/com/android/quickstep/util/SplitScreenUtils.kt +++ b/quickstep/src/com/android/quickstep/util/SplitScreenUtils.kt @@ -17,18 +17,31 @@ package com.android.quickstep.util import android.util.Log -import android.view.WindowManager.TRANSIT_CHANGE +import android.view.WindowManager.TRANSIT_OPEN +import android.view.WindowManager.TRANSIT_TO_FRONT import android.window.TransitionInfo import android.window.TransitionInfo.Change import android.window.TransitionInfo.FLAG_FIRST_CUSTOM import com.android.launcher3.util.SplitConfigurationOptions -import com.android.wm.shell.shared.TransitionUtil import com.android.wm.shell.shared.split.SplitBounds +import java.lang.IllegalStateException class SplitScreenUtils { companion object { private const val TAG = "SplitScreenUtils" + // TODO(b/254378592): Remove these methods when the two classes are reunited + /** Converts the shell version of SplitBounds to the launcher version */ + @JvmStatic + fun convertShellSplitBoundsToLauncher(shellSplitBounds: SplitBounds) = + SplitConfigurationOptions.SplitBounds( + shellSplitBounds.leftTopBounds, + shellSplitBounds.rightBottomBounds, + shellSplitBounds.leftTopTaskId, + shellSplitBounds.rightBottomTaskId, + shellSplitBounds.snapPosition, + ) + /** * Given a TransitionInfo, generates the tree structure for those changes and extracts out * the top most root and it's two immediate children. Changes can be provided in any order. @@ -41,7 +54,14 @@ class SplitScreenUtils { ): Pair<Change, List<Change>>? { val parentToChildren = mutableMapOf<Change, MutableList<Change>>() val hasParent = mutableSetOf<Change>() - val taskChanges: List<Change> = getNonClosingChanges(transitionInfo) + // filter out anything that isn't opening and the divider + val taskChanges: List<Change> = + transitionInfo.changes + .filter { change -> + (change.mode == TRANSIT_OPEN || change.mode == TRANSIT_TO_FRONT) && + change.flags < FLAG_FIRST_CUSTOM + } + .toList() // 1. Build Parent-Child Relationships for (change in taskChanges) { @@ -70,16 +90,5 @@ class SplitScreenUtils { null } } - - - /** @return includes only opening + [TRANSIT_CHANGE] changes and the divider */ - private fun getNonClosingChanges(transitionInfo: TransitionInfo): List<Change> { - return transitionInfo.changes - .filter { change -> - (TransitionUtil.isOpeningMode(change.mode) || change.mode == TRANSIT_CHANGE) - && change.flags < FLAG_FIRST_CUSTOM - } - .toList() - } } } diff --git a/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java b/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java index fd30e2037c..08f2552157 100644 --- a/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java +++ b/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java @@ -63,7 +63,6 @@ import android.window.IRemoteTransitionFinishedCallback; import android.window.RemoteTransition; import android.window.RemoteTransitionStub; import android.window.TransitionInfo; -import android.window.WindowContainerTransaction; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; @@ -303,10 +302,6 @@ public class SplitSelectStateController { if (task == null || task.key.id == mSplitSelectDataHolder.getInitialTaskId()) { return false; } - if (task.key.baseIntent.getComponent() == null) { - Log.w(TAG, "Task has null component."); - return false; - } return task.key.baseIntent.getComponent().equals(componentKey.componentName) && task.key.userId == componentKey.user.getIdentifier(); @@ -883,8 +878,7 @@ public class SplitSelectStateController { * @param taskBounds the bounds of the task, used for {@link FloatingTaskView} animation */ public void enterSplitSelect(ActivityManager.RunningTaskInfo taskInfo, - int splitPosition, Rect taskBounds, boolean startRecents, - @Nullable WindowContainerTransaction withRecentsWct) { + int splitPosition, Rect taskBounds) { mTaskInfo = taskInfo; String packageName = mTaskInfo.realActivity.getPackageName(); PackageManager pm = mLauncher.getApplicationContext().getPackageManager(); @@ -895,72 +889,53 @@ public class SplitSelectStateController { } catch (PackageManager.NameNotFoundException e) { Log.w(TAG, "Package not found: " + packageName, e); } + RecentsAnimationCallbacks callbacks = new RecentsAnimationCallbacks( + SystemUiProxy.INSTANCE.get(mLauncher.getApplicationContext())); - final DesktopSplitRecentsAnimation animation = new DesktopSplitRecentsAnimation( - splitPosition, taskBounds); - final Runnable updateTaskbarRunnable = () -> { - final LauncherTaskbarUIController c = mLauncher.getTaskbarUIController(); - if (c != null) { - c.updateTaskbarLauncherStateGoingHome(); - } - }; - if (startRecents) { - RecentsAnimationCallbacks callbacks = new RecentsAnimationCallbacks(mContainer); - callbacks.addListener(new RecentsAnimationCallbacks.RecentsAnimationListener() { - @Override - public void onRecentsAnimationStart(RecentsAnimationController controller, - RecentsAnimationTargets targets, - @Nullable TransitionInfo transitionInfo) { - animation.start(() -> { - controller.finish( - true /* toRecents */, - updateTaskbarRunnable, - false /* sendUserLeaveHint */); - }); - } - }); - UI_HELPER_EXECUTOR.execute(() -> { - // Transition from app to enter stage split in launcher with recents animation - final ActivityOptions options = ActivityOptions.makeBasic(); - options.setPendingIntentBackgroundActivityStartMode( - ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS); - options.setTransientLaunch(); - SystemUiProxy.INSTANCE.get(mLauncher.getApplicationContext()) - .startRecentsActivity( - mOverviewComponentObserver.getOverviewIntent(), options, - callbacks, false /* useSyntheticRecentsTransition */, - withRecentsWct, - ExternalDisplaysKt.getSafeDisplayId(taskInfo)); - }); - } else { - animation.start(updateTaskbarRunnable); - } + DesktopSplitRecentsAnimationListener listener = + new DesktopSplitRecentsAnimationListener(splitPosition, taskBounds); + + callbacks.addListener(listener); + UI_HELPER_EXECUTOR.execute(() -> { + // Transition from app to enter stage split in launcher with recents animation + final ActivityOptions options = ActivityOptions.makeBasic(); + options.setPendingIntentBackgroundActivityStartMode( + ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS); + options.setTransientLaunch(); + SystemUiProxy.INSTANCE.get(mLauncher.getApplicationContext()) + .startRecentsActivity( + mOverviewComponentObserver.getOverviewIntent(), options, + callbacks, false /* useSyntheticRecentsTransition */); + }); } - private class DesktopSplitRecentsAnimation { + private class DesktopSplitRecentsAnimationListener implements + RecentsAnimationCallbacks.RecentsAnimationListener { private final Rect mTempRect = new Rect(); private final RectF mTaskBounds = new RectF(); private final int mSplitPosition; - DesktopSplitRecentsAnimation(int splitPosition, Rect taskBounds) { + DesktopSplitRecentsAnimationListener(int splitPosition, Rect taskBounds) { mSplitPosition = splitPosition; mTaskBounds.set(taskBounds); } - void start(@NonNull Runnable onAnimationStart) { - final StatsLogManager.LauncherEvent launcherDesktopSplitEvent = + @Override + public void onRecentsAnimationStart(RecentsAnimationController controller, + RecentsAnimationTargets targets, TransitionInfo transitionInfo) { + StatsLogManager.LauncherEvent launcherDesktopSplitEvent = mSplitPosition == STAGE_POSITION_BOTTOM_OR_RIGHT ? - LAUNCHER_DESKTOP_MODE_SPLIT_RIGHT_BOTTOM : - LAUNCHER_DESKTOP_MODE_SPLIT_LEFT_TOP; + LAUNCHER_DESKTOP_MODE_SPLIT_RIGHT_BOTTOM : + LAUNCHER_DESKTOP_MODE_SPLIT_LEFT_TOP; setInitialTaskSelect(mTaskInfo, mSplitPosition, null, launcherDesktopSplitEvent); - final RecentsView recentsView = mLauncher.getOverviewPanel(); + RecentsView recentsView = mLauncher.getOverviewPanel(); recentsView.getPagedOrientationHandler().getInitialSplitPlaceholderBounds( mSplitPlaceholderSize, mSplitPlaceholderInset, mLauncher.getDeviceProfile(), getActiveSplitStagePosition(), mTempRect); - final PendingAnimation anim = new PendingAnimation( + PendingAnimation anim = new PendingAnimation( SplitAnimationTimings.TABLET_HOME_TO_SPLIT.getDuration()); final FloatingTaskView floatingTaskView = FloatingTaskView.getFloatingTaskView( mLauncher, mLauncher.getDragLayer(), @@ -978,7 +953,17 @@ public class SplitSelectStateController { anim.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationStart(Animator animation) { - onAnimationStart.run(); + controller.finish( + true /* toRecents */, + () -> { + LauncherTaskbarUIController controller = + mLauncher.getTaskbarUIController(); + if (controller != null) { + controller.updateTaskbarLauncherStateGoingHome(); + } + + }, + false /* sendUserLeaveHint */); } @Override public void onAnimationEnd(Animator animation) { @@ -1021,12 +1006,10 @@ public class SplitSelectStateController { @Override public boolean onRequestSplitSelect(ActivityManager.RunningTaskInfo taskInfo, - int splitPosition, Rect taskBounds, boolean startRecents, - @Nullable WindowContainerTransaction withRecentsWct) { + int splitPosition, Rect taskBounds) { MAIN_EXECUTOR.execute(() -> { if (mController != null) { - mController.enterSplitSelect(taskInfo, splitPosition, taskBounds, - startRecents, withRecentsWct); + mController.enterSplitSelect(taskInfo, splitPosition, taskBounds); } }); return true; diff --git a/quickstep/src/com/android/quickstep/util/SplitToWorkspaceController.java b/quickstep/src/com/android/quickstep/util/SplitToWorkspaceController.java index abd24588d4..d3390b4ed9 100644 --- a/quickstep/src/com/android/quickstep/util/SplitToWorkspaceController.java +++ b/quickstep/src/com/android/quickstep/util/SplitToWorkspaceController.java @@ -157,7 +157,7 @@ public class SplitToWorkspaceController { private void startWorkspaceAnimation(@NonNull View view, @Nullable Bitmap bitmap, @Nullable Drawable icon) { DeviceProfile dp = mLauncher.getDeviceProfile(); - boolean isTablet = dp.getDeviceProperties().isTablet(); + boolean isTablet = dp.isTablet; SplitAnimationTimings timings = AnimUtils.getDeviceSplitToConfirmTimings(isTablet); PendingAnimation pendingAnimation = new PendingAnimation(timings.getDuration()); diff --git a/quickstep/src/com/android/quickstep/util/SplitWithKeyboardShortcutController.java b/quickstep/src/com/android/quickstep/util/SplitWithKeyboardShortcutController.java index e3fc56178e..0e2713981d 100644 --- a/quickstep/src/com/android/quickstep/util/SplitWithKeyboardShortcutController.java +++ b/quickstep/src/com/android/quickstep/util/SplitWithKeyboardShortcutController.java @@ -37,7 +37,6 @@ import com.android.launcher3.R; import com.android.launcher3.anim.PendingAnimation; import com.android.launcher3.taskbar.LauncherTaskbarUIController; import com.android.launcher3.uioverrides.QuickstepLauncher; -import com.android.quickstep.BaseContainerInterface; import com.android.quickstep.OverviewComponentObserver; import com.android.quickstep.RecentsAnimationCallbacks; import com.android.quickstep.RecentsAnimationController; @@ -73,18 +72,13 @@ public class SplitWithKeyboardShortcutController { } @BinderThread - public void enterStageSplit(boolean leftOrTop, int displayId) { + public void enterStageSplit(boolean leftOrTop) { if (TopTaskTracker.INSTANCE.get(mLauncher).getRunningSplitTaskIds().length == 2) { // Do not enter stage split from keyboard shortcuts if the user is already in split return; } - BaseContainerInterface<?, ?> containerInterface = - mOverviewComponentObserver.getContainerInterface(displayId); - if (containerInterface == null) { - return; - } RecentsAnimationCallbacks callbacks = new RecentsAnimationCallbacks( - containerInterface.getCreatedContainer()); + SystemUiProxy.INSTANCE.get(mLauncher.getApplicationContext())); SplitWithKeyboardShortcutRecentsAnimationListener listener = new SplitWithKeyboardShortcutRecentsAnimationListener(leftOrTop); @@ -100,7 +94,7 @@ public class SplitWithKeyboardShortcutController { SystemUiProxy.INSTANCE.get(mLauncher.getApplicationContext()) .startRecentsActivity(mOverviewComponentObserver.getOverviewIntent(), ActivityOptions.makeBasic(), callbacks, - false /* useSyntheticRecentsTransition */, null, displayId); + false /* useSyntheticRecentsTransition */); }); }); } diff --git a/quickstep/src/com/android/quickstep/util/SurfaceTransaction.java b/quickstep/src/com/android/quickstep/util/SurfaceTransaction.java index f29df91e28..8006a97936 100644 --- a/quickstep/src/com/android/quickstep/util/SurfaceTransaction.java +++ b/quickstep/src/com/android/quickstep/util/SurfaceTransaction.java @@ -111,15 +111,6 @@ public class SurfaceTransaction { return this; } - /** - * @param radius The radius for the background blur to apply to the surface. - * @return this Builder - */ - public SurfaceProperties setBackgroundBlurRadius(int radius) { - mTransaction.setBackgroundBlurRadius(mSurface, radius); - return this; - } - /** * Requests to show the given surface. * @return this Builder @@ -128,15 +119,6 @@ public class SurfaceTransaction { mTransaction.show(mSurface); return this; } - - /** - * Requests to remove the given surface. - * @return this Builder - */ - public SurfaceProperties setRemove() { - mTransaction.remove(mSurface); - return this; - } } /** @@ -149,7 +131,6 @@ public class SurfaceTransaction { public Rect windowCrop = null; public float cornerRadius = 0; public float shadowRadius = 0; - public int backgroundBlurRadius = 0; protected MockProperties() { super(null); @@ -190,20 +171,9 @@ public class SurfaceTransaction { return this; } - @Override - public SurfaceProperties setBackgroundBlurRadius(int radius) { - this.backgroundBlurRadius = radius; - return this; - } - @Override public SurfaceProperties setShow() { return this; } - - @Override - public SurfaceProperties setRemove() { - return this; - } } } diff --git a/quickstep/src/com/android/quickstep/util/SystemWindowManagerProxy.java b/quickstep/src/com/android/quickstep/util/SystemWindowManagerProxy.java index 6e2c6daa6b..01ddd0f7d7 100644 --- a/quickstep/src/com/android/quickstep/util/SystemWindowManagerProxy.java +++ b/quickstep/src/com/android/quickstep/util/SystemWindowManagerProxy.java @@ -25,7 +25,6 @@ import android.view.DisplayCutout; import android.view.Surface; import android.view.WindowManager; import android.view.WindowMetrics; -import android.window.DesktopExperienceFlags; import com.android.internal.policy.SystemBarUtils; import com.android.launcher3.dagger.LauncherAppSingleton; @@ -35,9 +34,8 @@ import com.android.launcher3.util.WindowBounds; import com.android.launcher3.util.window.CachedDisplayInfo; import com.android.launcher3.util.window.WindowManagerProxy; import com.android.quickstep.SystemUiProxy; -import com.android.quickstep.fallback.window.RecentsWindowFlags; +import com.android.window.flags.Flags; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; -import com.android.wm.shell.shared.desktopmode.DesktopState; import java.util.Collections; import java.util.List; @@ -50,18 +48,14 @@ import javax.inject.Inject; */ @LauncherAppSingleton public class SystemWindowManagerProxy extends WindowManagerProxy { - // LC-Note: This is pretty much unused by Launcher3, see [LawnchairWindowManagerProxy] private final DesktopVisibilityController mDesktopVisibilityController; - private final SystemUiProxy mSystemUiProxy; + @Inject - public SystemWindowManagerProxy( - DesktopVisibilityController desktopVisibilityController, - SystemUiProxy systemUiProxy) { + public SystemWindowManagerProxy(DesktopVisibilityController desktopVisibilityController) { super(true); mDesktopVisibilityController = desktopVisibilityController; - mSystemUiProxy = systemUiProxy; } @Override @@ -85,15 +79,6 @@ public class SystemWindowManagerProxy extends WindowManagerProxy { return mDesktopVisibilityController.isInDesktopMode(displayId); } - @Override - public boolean isDisplayDesktopFirst(Context displayInfoContext) { - if (!DesktopState.fromContext(displayInfoContext).canEnterDesktopMode()) { - return false; - } - return displayInfoContext.getResources().getConfiguration() - .windowConfiguration.getWindowingMode() == WINDOWING_MODE_FREEFORM; - } - @Override public boolean showLockedTaskbarOnHome(Context displayInfoContext) { if (!DesktopModeStatus.canEnterDesktopMode(displayInfoContext)) { @@ -102,8 +87,9 @@ public class SystemWindowManagerProxy extends WindowManagerProxy { if (!DesktopModeStatus.enterDesktopByDefaultOnFreeformDisplay(displayInfoContext)) { return false; } - - return isDisplayDesktopFirst(displayInfoContext); + final boolean isFreeformDisplay = displayInfoContext.getResources().getConfiguration() + .windowConfiguration.getWindowingMode() == WINDOWING_MODE_FREEFORM; + return isFreeformDisplay; } @Override @@ -116,16 +102,18 @@ public class SystemWindowManagerProxy extends WindowManagerProxy { return false; } - if (!DesktopExperienceFlags.ENABLE_DESKTOP_TASKBAR_ON_FREEFORM_DISPLAYS.isTrue()) { + if (!Flags.enableDesktopTaskbarOnFreeformDisplays()) { return false; } - return isDisplayDesktopFirst(displayInfoContext); + final boolean isFreeformDisplay = displayInfoContext.getResources().getConfiguration() + .windowConfiguration.getWindowingMode() == WINDOWING_MODE_FREEFORM; + return isFreeformDisplay; } @Override - public boolean isHomeVisible() { - return mSystemUiProxy.getHomeVisibilityState().isHomeVisible(); + public boolean isHomeVisible(Context context) { + return SystemUiProxy.INSTANCE.get(context).getHomeVisibilityState().isHomeVisible(); } @Override @@ -165,11 +153,12 @@ public class SystemWindowManagerProxy extends WindowManagerProxy { @Override protected DisplayCutout rotateCutout(DisplayCutout original, int startWidth, int startHeight, int fromRotation, int toRotation) { - return original.getRotated(startWidth, startHeight, fromRotation, toRotation); - } - - @Override - public boolean enableOverviewOnConnectedDisplays() { - return RecentsWindowFlags.enableOverviewOnConnectedDisplays(); + try { + return original.getRotated(startWidth, startHeight, fromRotation, toRotation); + } catch (Throwable t) { + // Lawnchair-TODO: This don't required in LC15??? Reason: Fail A12.1 + // pE-TODO(CllOXHJv): This don't required in LC15??? Reason: Fail A12.1 + return original; + } } } diff --git a/quickstep/src/com/android/quickstep/util/TaskGridNavHelper.kt b/quickstep/src/com/android/quickstep/util/TaskGridNavHelper.kt index bf60b87b89..0e788015cd 100644 --- a/quickstep/src/com/android/quickstep/util/TaskGridNavHelper.kt +++ b/quickstep/src/com/android/quickstep/util/TaskGridNavHelper.kt @@ -59,10 +59,6 @@ class TaskGridNavHelper( cycle: Boolean, ): Int { val inTop = topRowIds.contains(currentPageTaskViewId) - val inBottom = bottomRowIds.contains(currentPageTaskViewId) - if (!inTop && !inBottom) { - return currentPageTaskViewId - } val index = if (inTop) topRowIds.indexOf(currentPageTaskViewId) else bottomRowIds.indexOf(currentPageTaskViewId) diff --git a/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java b/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java index bb140676fd..58d8b78962 100644 --- a/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java +++ b/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java @@ -17,15 +17,15 @@ package com.android.quickstep.util; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.launcher3.states.RotationHelper.deltaRotation; import static com.android.launcher3.touch.PagedOrientationHandler.MATRIX_POST_TRANSLATE; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; +import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT; +import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT; +import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_UNDEFINED; +import static com.android.launcher3.util.SplitConfigurationOptions.StagePosition; import static com.android.quickstep.util.RecentsOrientedState.postDisplayRotation; import static com.android.quickstep.util.RecentsOrientedState.preDisplayRotation; -import static com.android.wm.shell.Flags.enableFlexibleTwoAppSplit; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; import android.animation.TimeInterpolator; import android.content.Context; @@ -45,6 +45,7 @@ import com.android.launcher3.DeviceProfile; import com.android.launcher3.Utilities; import com.android.launcher3.anim.AnimatedFloat; import com.android.launcher3.anim.PendingAnimation; +import com.android.launcher3.util.SplitConfigurationOptions.SplitBounds; import com.android.launcher3.util.TraceHelper; import com.android.quickstep.BaseActivityInterface; import com.android.quickstep.BaseContainerInterface; @@ -54,8 +55,6 @@ import com.android.quickstep.TaskAnimationManager; import com.android.quickstep.util.SurfaceTransaction.SurfaceProperties; import com.android.systemui.shared.recents.model.ThumbnailData; import com.android.systemui.shared.recents.utilities.PreviewPositionHelper; -import com.android.wm.shell.shared.split.SplitBounds; -import com.android.wm.shell.shared.split.SplitScreenConstants; /** * A utility class which emulates the layout behavior of TaskView and RecentsView @@ -82,8 +81,8 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { private PointF mPivotOverride = null; private final PointF mPivot = new PointF(); private DeviceProfile mDp; - @SplitScreenConstants.SplitPosition - private int mSplitPosition = SPLIT_POSITION_UNDEFINED; + @StagePosition + private int mStagePosition = STAGE_POSITION_UNDEFINED; private final Matrix mMatrix = new Matrix(); private final Matrix mMatrixTmp = new Matrix(); @@ -116,11 +115,12 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { private int mOrientationStateId; private SplitBounds mSplitBounds; private Boolean mDrawsBelowRecents = null; - private Boolean mDrawAboveOtherApps = null; private boolean mIsGridTask; private final boolean mIsDesktopTask; private boolean mIsAnimatingToCarousel = false; - private final int mDesktopTaskIndex; + private int mTaskRectTranslationX; + private int mTaskRectTranslationY; + private int mDesktopTaskIndex = 0; @Nullable private Matrix mTaskRectTransform = null; @@ -152,15 +152,12 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { mLayoutValid = false; mOrientationState.setDeviceProfile(dp); if (enableGridOnlyOverview()) { - mIsGridTask = dp.getDeviceProperties().isTablet() && !mIsDesktopTask; + mIsGridTask = dp.isTablet && !mIsDesktopTask; } calculateTaskSize(); } - /** - * Updates the task size. - */ - public void calculateTaskSize() { + private void calculateTaskSize() { if (mDp == null) { return; } @@ -186,7 +183,7 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { // sized task space bounds mTaskRect.set(mFullTaskSize); mOrientationState.getOrientationHandler() - .setSplitTaskSwipeRect(mDp, mTaskRect, mSplitBounds, mSplitPosition); + .setSplitTaskSwipeRect(mDp, mTaskRect, mSplitBounds, mStagePosition); } else if (mIsDesktopTask) { // For desktop, tasks can take up only part of the screen size. // Full task size represents the whole screen size, but scaled down to fit in recents. @@ -212,6 +209,7 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { } else { mTaskRect.set(mFullTaskSize); } + mTaskRect.offset(mTaskRectTranslationX, mTaskRectTranslationY); } /** @@ -229,8 +227,11 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { if (mDp == null) { return 1; } - float scale = mOrientationState.getFullScreenScaleAndPivot( - mIsAnimatingToCarousel ? mCarouselTaskSize : mFullTaskSize, mDp, mPivot); + // Copy mFullTaskSize instead of updating it directly so it could be reused next time + // without recalculating + Rect scaleRect = new Rect(mIsAnimatingToCarousel ? mCarouselTaskSize : mFullTaskSize); + scaleRect.offset(mTaskRectTranslationX, mTaskRectTranslationY); + float scale = mOrientationState.getFullScreenScaleAndPivot(scaleRect, mDp, mPivot); if (mPivotOverride != null) { mPivot.set(mPivotOverride); } @@ -258,13 +259,10 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { setPreview(runningTarget); mSplitBounds = splitInfo; if (mSplitBounds == null) { - mSplitPosition = SPLIT_POSITION_UNDEFINED; + mStagePosition = STAGE_POSITION_UNDEFINED; } else { - mSplitPosition = runningTarget.taskId == splitInfo.leftTopTaskId - ? SPLIT_POSITION_TOP_OR_LEFT : SPLIT_POSITION_BOTTOM_OR_RIGHT; - if (enableFlexibleTwoAppSplit()) { - mPositionHelper.setSplitBounds(mSplitBounds, mSplitPosition); - } + mStagePosition = runningTarget.taskId == splitInfo.leftTopTaskId + ? STAGE_POSITION_TOP_OR_LEFT : STAGE_POSITION_BOTTOM_OR_RIGHT; } calculateTaskSize(); } @@ -292,10 +290,6 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { mDrawsBelowRecents = drawsBelowRecents; } - public boolean getDrawsBelowRecents() { - return mDrawsBelowRecents != null ? mDrawsBelowRecents : false; - } - /** * Sets whether the task is part of overview grid and not being focused. */ @@ -304,12 +298,13 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { } /** - * Sets whether drawing this app above other apps during animation. It's currently used when - * activating an app window from the exploded desktop view which will launch the desktop tile - * and exit Overview. + * Apply translations on TaskRect's starting location. */ - public void setDrawsAboveOtherApps(boolean drawsAboveOtherApps) { - mDrawAboveOtherApps = drawsAboveOtherApps; + public void setTaskRectTranslation(int taskRectTranslationX, int taskRectTranslationY) { + mTaskRectTranslationX = taskRectTranslationX; + mTaskRectTranslationY = taskRectTranslationY; + // Re-calculate task size after changing translation + calculateTaskSize(); } /** @@ -323,10 +318,9 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { /** * Adds animation for all the components corresponding to transition from an app to carousel. */ - public void addAppToCarouselAnim(PendingAnimation pa, Interpolator interpolator, - boolean isHandlingAtomicEvent) { + public void addAppToCarouselAnim(PendingAnimation pa, Interpolator interpolator) { pa.addFloat(fullScreenProgress, AnimatedFloat.VALUE, 1, 0, interpolator); - if (enableGridOnlyOverview() && mDp.getDeviceProperties().isTablet() && !isHandlingAtomicEvent) { + if (enableGridOnlyOverview() && mDp.isTablet && mDp.isGestureMode) { mIsAnimatingToCarousel = true; carouselScale.value = mCarouselTaskSize.width() / (float) mFullTaskSize.width(); } @@ -358,7 +352,7 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { public RectF getCurrentRect() { RectF result = getCurrentCropRect(); mMatrixTmp.set(mMatrix); - preDisplayRotation(mOrientationState.getDisplayRotation(), mDp.getDeviceProperties().getWidthPx(), mDp.getDeviceProperties().getHeightPx(), + preDisplayRotation(mOrientationState.getDisplayRotation(), mDp.widthPx, mDp.heightPx, mMatrixTmp); mMatrixTmp.mapRect(result); return result; @@ -412,11 +406,11 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { * window coordinate space. */ public void applyWindowToHomeRotation(Matrix matrix) { - matrix.postTranslate(mDp.getDeviceProperties().getWindowX(), mDp.getDeviceProperties().getWindowY()); + matrix.postTranslate(mDp.windowX, mDp.windowY); postDisplayRotation(deltaRotation( mOrientationState.getRecentsActivityRotation(), mOrientationState.getDisplayRotation()), - mDp.getDeviceProperties().getWidthPx(), mDp.getDeviceProperties().getHeightPx(), matrix); + mDp.widthPx, mDp.heightPx, matrix); } /** @@ -451,7 +445,7 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { boolean isRtlEnabled = !mIsRecentsRtl; mPositionHelper.updateThumbnailMatrix( mThumbnailPosition, mThumbnailData, mTaskRect.width(), mTaskRect.height(), - mDp.getDeviceProperties().isTablet(), mOrientationState.getRecentsActivityRotation(), isRtlEnabled); + mDp.isTablet, mOrientationState.getRecentsActivityRotation(), isRtlEnabled); mPositionHelper.getMatrix().invert(mInversePositionMatrix); if (DEBUG) { Log.d(TAG, " taskRect: " + mTaskRect); @@ -542,22 +536,15 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy { .setWindowCrop(mTmpCropRect) .setCornerRadius(getCurrentCornerRadius()); - if (mDrawsBelowRecents == null && mDrawAboveOtherApps == null) { - // No reordering will be enforced. - return; - } - - // In shell transitions, the animation leashes are reparented to an animation container - // so we can bump layers as needed. - int baseLayer = app.prefixOrderIndex - mDesktopTaskIndex; - // 1000/2000 are arbitrary numbers to give room for multiple layers. + // If mDrawsBelowRecents is unset, no reordering will be enforced. if (mDrawsBelowRecents != null) { - baseLayer += mDrawsBelowRecents ? Integer.MIN_VALUE + 2000 : Integer.MAX_VALUE - 2000; + // In shell transitions, the animation leashes are reparented to an animation container + // so we can bump layers as needed. + builder.setLayer(mDrawsBelowRecents + // 1000 is an arbitrary number to give room for multiple layers. + ? Integer.MIN_VALUE + 1000 + app.prefixOrderIndex - mDesktopTaskIndex + : Integer.MAX_VALUE - 1000 + app.prefixOrderIndex - mDesktopTaskIndex); } - if (mDrawAboveOtherApps != null && mDrawAboveOtherApps) { - baseLayer += 1000; - } - builder.setLayer(baseLayer); } /** diff --git a/quickstep/src/com/android/quickstep/util/TransformParams.java b/quickstep/src/com/android/quickstep/util/TransformParams.java index c70061f635..cb591ed035 100644 --- a/quickstep/src/com/android/quickstep/util/TransformParams.java +++ b/quickstep/src/com/android/quickstep/util/TransformParams.java @@ -26,7 +26,7 @@ import androidx.annotation.VisibleForTesting; import com.android.quickstep.RemoteAnimationTargets; import com.android.quickstep.util.SurfaceTransaction.SurfaceProperties; -import com.android.window.flags2.Flags; +import com.android.window.flags.Flags; import java.util.function.Supplier; @@ -257,4 +257,4 @@ public class TransformParams { void onBuildTargetParams(SurfaceProperties builder, RemoteAnimationTarget app, TransformParams params); } -} +} \ No newline at end of file diff --git a/quickstep/src/com/android/quickstep/util/unfold/LauncherUnfoldTransitionController.kt b/quickstep/src/com/android/quickstep/util/unfold/LauncherUnfoldTransitionController.kt index 6fc450a01b..915c9e5305 100644 --- a/quickstep/src/com/android/quickstep/util/unfold/LauncherUnfoldTransitionController.kt +++ b/quickstep/src/com/android/quickstep/util/unfold/LauncherUnfoldTransitionController.kt @@ -56,7 +56,7 @@ class LauncherUnfoldTransitionController( } override fun onDeviceProfileChanged(dp: DeviceProfile) { - if (isTablet != null && dp.getDeviceProperties().isTablet != isTablet) { + if (isTablet != null && dp.isTablet != isTablet) { // We should preemptively start the animation only if: // - We changed to the unfolded screen // - SystemUI IPC connection is alive, so we won't end up in a situation that we won't @@ -66,24 +66,20 @@ class LauncherUnfoldTransitionController( // if Launcher was not open during unfold, in this case we receive the configuration // change only after we went back to home screen and we don't want to start the // animation in this case. - if ( - dp.getDeviceProperties().isTablet && - progressProvider.isActive && - !hasUnfoldTransitionStarted - ) { + if (dp.isTablet && progressProvider.isActive && !hasUnfoldTransitionStarted) { // Preemptively start the unfold animation to make sure that we have drawn // the first frame of the animation before the screen gets unblocked onTransitionStarted() Trace.beginAsyncSection("$TAG#startedPreemptively", 0) timeoutAlarm.setAlarm(PREEMPTIVE_UNFOLD_TIMEOUT_MS) } - if (!dp.getDeviceProperties().isTablet) { + if (!dp.isTablet) { // Reset unfold transition status when folded hasUnfoldTransitionStarted = false } } - isTablet = dp.getDeviceProperties().isTablet + isTablet = dp.isTablet } override fun onTransitionStarted() { diff --git a/quickstep/src/com/android/quickstep/views/AddDesktopButton.kt b/quickstep/src/com/android/quickstep/views/AddDesktopButton.kt index ff20378b8b..37359a1b35 100644 --- a/quickstep/src/com/android/quickstep/views/AddDesktopButton.kt +++ b/quickstep/src/com/android/quickstep/views/AddDesktopButton.kt @@ -16,18 +16,12 @@ package com.android.quickstep.views -import android.animation.AnimatorSet -import android.animation.ObjectAnimator import android.content.Context import android.graphics.Canvas import android.graphics.Rect -import android.graphics.drawable.Drawable import android.util.AttributeSet import android.util.FloatProperty import android.widget.ImageButton -import androidx.core.animation.addListener -import com.android.app.animation.Interpolators.LINEAR -import com.android.launcher3.LauncherAnimUtils.DRAWABLE_ALPHA import com.android.launcher3.LauncherAnimUtils.VIEW_TRANSLATE_X import com.android.launcher3.R import com.android.launcher3.util.KFloatProperty @@ -47,7 +41,6 @@ class AddDesktopButton @JvmOverloads constructor(context: Context, attrs: Attrib private val addDeskButtonAlpha = MultiValueAlpha(this, Alpha.entries.size) var contentAlpha by MultiPropertyDelegate(addDeskButtonAlpha, Alpha.CONTENT) var visibilityAlpha by MultiPropertyDelegate(addDeskButtonAlpha, Alpha.VISIBILITY) - var clickAlpha by MultiPropertyDelegate(addDeskButtonAlpha, Alpha.CLICK) private val multiTranslationX = MultiPropertyFactory(this, VIEW_TRANSLATE_X, TranslationX.entries.size) { a: Float, b: Float @@ -80,37 +73,6 @@ class AddDesktopButton @JvmOverloads constructor(context: Context, attrs: Attrib focusBorderAnimator.setBorderVisibility(visible = field && isFocused, animated = true) } - @JvmOverloads - fun animateVisibility(toVisible: Boolean, onAnimationEndAction: Runnable? = null) { - val targetButtonAlpha = if (toVisible) 1f else 0f - val targetDrawableAlpha = if (toVisible) 255 else 0 - - val iconDrawable: Drawable = this.drawable.mutate() - val fadeDuration = - context.resources.getInteger(R.integer.add_desktop_button_fade_duration).toLong() - val fadeDelay = - context.resources.getInteger(R.integer.add_desktop_button_fade_delay).toLong() - - val buttonFadeAnimator = - ObjectAnimator.ofFloat(this, CLICK_ALPHA, targetButtonAlpha).apply { - duration = fadeDuration - startDelay = fadeDelay - interpolator = LINEAR - } - - val iconFadeAnimator = - ObjectAnimator.ofInt(iconDrawable, DRAWABLE_ALPHA, targetDrawableAlpha).apply { - duration = fadeDuration - interpolator = LINEAR - } - - AnimatorSet().apply { - playTogether(buttonFadeAnimator, iconFadeAnimator) - addListener(onEnd = { onAnimationEndAction?.run() }) - start() - } - } - public override fun onFocusChanged( gainFocus: Boolean, direction: Int, @@ -138,7 +100,6 @@ class AddDesktopButton @JvmOverloads constructor(context: Context, attrs: Attrib private enum class Alpha { CONTENT, VISIBILITY, - CLICK, } private enum class TranslationX { @@ -149,8 +110,5 @@ class AddDesktopButton @JvmOverloads constructor(context: Context, attrs: Attrib @JvmField val VISIBILITY_ALPHA: FloatProperty<AddDesktopButton> = KFloatProperty(AddDesktopButton::visibilityAlpha) - - private val CLICK_ALPHA: FloatProperty<AddDesktopButton> = - KFloatProperty(AddDesktopButton::clickAlpha) } } diff --git a/quickstep/src/com/android/quickstep/views/AllAppsEduView.java b/quickstep/src/com/android/quickstep/views/AllAppsEduView.java index 166ed7916c..121d8ede11 100644 --- a/quickstep/src/com/android/quickstep/views/AllAppsEduView.java +++ b/quickstep/src/com/android/quickstep/views/AllAppsEduView.java @@ -267,8 +267,8 @@ public class AllAppsEduView extends AbstractFloatingView { DeviceProfile grid = launcher.getDeviceProfile(); DragLayer.LayoutParams lp = new DragLayer.LayoutParams(mWidthPx, mMaxHeightPx); lp.ignoreInsets = true; - lp.leftMargin = (grid.getDeviceProperties().getWidthPx() - mWidthPx) / 2; - lp.topMargin = grid.getDeviceProperties().getHeightPx() - grid.hotseatBarSizePx - mMaxHeightPx; + lp.leftMargin = (grid.widthPx - mWidthPx) / 2; + lp.topMargin = grid.heightPx - grid.hotseatBarSizePx - mMaxHeightPx; setLayoutParams(lp); } diff --git a/quickstep/src/com/android/quickstep/views/BlurUtils.kt b/quickstep/src/com/android/quickstep/views/BlurUtils.kt index 318a0437f3..d6b2a055b7 100644 --- a/quickstep/src/com/android/quickstep/views/BlurUtils.kt +++ b/quickstep/src/com/android/quickstep/views/BlurUtils.kt @@ -22,48 +22,42 @@ import com.android.quickstep.RemoteTargetGluer.RemoteTargetHandle /** Applies blur either behind launcher surface or live tile app. */ class BlurUtils(private val recentsView: RecentsView<*, *>) { - private fun getLiveTileRemoteTargetHandles() = - if ( - recentsView.remoteTargetHandles != null && - recentsView.recentsAnimationController != null - ) - recentsView.remoteTargetHandles - else null - - private fun Array<RemoteTargetHandle>.setDrawBelowRecents(drawBelowRecents: Boolean) { - forEach { it.taskViewSimulator.drawsBelowRecents = drawBelowRecents } - } - - /** - * Controls if live tile should be above or below Recents layer, and update the base layer to - * apply blur to in BaseDepthController. - */ fun setDrawLiveTileBelowRecents(drawBelowRecents: Boolean) { - getLiveTileRemoteTargetHandles()?.setDrawBelowRecents(drawBelowRecents) - updateBlurLayer() + val liveTileRemoteTargetHandles = + if ( + recentsView.remoteTargetHandles != null && + recentsView.recentsAnimationController != null + ) + recentsView.remoteTargetHandles + else null + setDrawBelowRecents(drawBelowRecents, liveTileRemoteTargetHandles) } /** - * Set surface in [remoteTargetHandles] to be above Recents layer, and update the base layer to - * apply blur to in BaseDepthController. + * Set surface in [remoteTargetHandles] to be above or below Recents layer, and update the base + * layer to apply blur to in BaseDepthController. */ - fun setDrawAboveRecents(remoteTargetHandles: Array<RemoteTargetHandle>) { - remoteTargetHandles.setDrawBelowRecents(false) - updateBlurLayer(drawingAboveRecents = true) - } - - private fun updateBlurLayer(drawingAboveRecents: Boolean = false) { - if (!enableOverviewBackgroundWallpaperBlur()) return - // Blurs behind lowest live tile surface that's below recents or Launcher if there - // are none. - recentsView.depthController?.setBaseSurfaceOverride( - getLiveTileRemoteTargetHandles() - ?.asSequence() - ?.filter { it.taskViewSimulator.drawsBelowRecents } - ?.flatMap { it.transformParams.targetSet.apps.asIterable() } - ?.map { it.leash } - ?.maxByOrNull { it.layerId }, - /* applyOnDraw= */ drawingAboveRecents, - ) + fun setDrawBelowRecents( + drawBelowRecents: Boolean, + remoteTargetHandles: Array<RemoteTargetHandle>? = null, + ) { + remoteTargetHandles?.forEach { it.taskViewSimulator.setDrawsBelowRecents(drawBelowRecents) } + if (enableOverviewBackgroundWallpaperBlur()) { + recentsView.depthController?.setBaseSurfaceOverride( + // Blurs behind launcher layer. + if (!drawBelowRecents || remoteTargetHandles == null) { + null + } else { + // Blurs behind live tile. blur will be applied behind window + // which farthest from user in case of desktop and split apps. + remoteTargetHandles + .maxByOrNull { it.transformParams.targetSet.firstAppTarget.leash.layerId } + ?.transformParams + ?.targetSet + ?.firstAppTarget + ?.leash + } + ) + } } } diff --git a/quickstep/src/com/android/quickstep/views/ClearAllButton.kt b/quickstep/src/com/android/quickstep/views/ClearAllButton.kt index 48aa999b3e..69c85eeaeb 100644 --- a/quickstep/src/com/android/quickstep/views/ClearAllButton.kt +++ b/quickstep/src/com/android/quickstep/views/ClearAllButton.kt @@ -31,14 +31,8 @@ import com.android.quickstep.util.BorderAnimator.Companion.createSimpleBorderAni import kotlin.math.abs import kotlin.math.min -class ClearAllButton -@JvmOverloads -constructor( - context: Context, - attrs: AttributeSet? = null, - defStyleAttr: Int = 0, - defStyleRes: Int = 0, -) : Button(context, attrs, defStyleAttr, defStyleRes) { +class ClearAllButton @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null) : + Button(context, attrs) { private val clearAllButtonAlpha = object : MultiValueAlpha(this, Alpha.entries.size) { diff --git a/quickstep/src/com/android/quickstep/views/DesktopTaskContentView.kt b/quickstep/src/com/android/quickstep/views/DesktopTaskContentView.kt index 4d179f5446..ef044f4fda 100644 --- a/quickstep/src/com/android/quickstep/views/DesktopTaskContentView.kt +++ b/quickstep/src/com/android/quickstep/views/DesktopTaskContentView.kt @@ -37,7 +37,6 @@ constructor(context: Context, attrs: AttributeSet? = null) : FrameLayout(context init { clipToOutline = true - clipChildren = false outlineProvider = object : ViewOutlineProvider() { override fun getOutline(view: View, outline: Outline) { diff --git a/quickstep/src/com/android/quickstep/views/DesktopTaskView.kt b/quickstep/src/com/android/quickstep/views/DesktopTaskView.kt index a6b9d9adec..bbd06be365 100644 --- a/quickstep/src/com/android/quickstep/views/DesktopTaskView.kt +++ b/quickstep/src/com/android/quickstep/views/DesktopTaskView.kt @@ -15,9 +15,6 @@ */ package com.android.quickstep.views -import android.animation.Animator -import android.animation.AnimatorListenerAdapter -import android.animation.ObjectAnimator import android.annotation.SuppressLint import android.content.Context import android.graphics.Matrix @@ -26,7 +23,6 @@ import android.graphics.Rect import android.graphics.Rect.intersects import android.graphics.RectF import android.util.AttributeSet -import android.util.FloatProperty import android.util.Log import android.util.Size import android.view.Display.INVALID_DISPLAY @@ -37,14 +33,12 @@ import androidx.core.content.res.ResourcesCompat import androidx.core.view.updateLayoutParams import com.android.internal.hidden_from_bootclasspath.com.android.window.flags.Flags.enableDesktopRecentsTransitionsCornersBugfix import com.android.launcher3.Flags.enableDesktopExplodedView -import com.android.launcher3.Flags.enableRefactorTaskContentView +import com.android.launcher3.Flags.enableOverviewIconMenu import com.android.launcher3.Flags.enableRefactorTaskThumbnail import com.android.launcher3.R import com.android.launcher3.statehandlers.DesktopVisibilityController import com.android.launcher3.testing.TestLogging import com.android.launcher3.testing.shared.TestProtocol -import com.android.launcher3.util.KFloatProperty -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu import com.android.launcher3.Utilities import com.android.launcher3.util.RunnableList import com.android.launcher3.util.SplitConfigurationOptions @@ -60,11 +54,9 @@ import com.android.quickstep.TaskOverlayFactory import com.android.quickstep.ViewUtils import com.android.quickstep.recents.di.RecentsDependencies import com.android.quickstep.recents.di.get -import com.android.quickstep.recents.domain.model.DesktopLayoutConfig import com.android.quickstep.recents.domain.model.DesktopTaskBoundsData import com.android.quickstep.recents.ui.viewmodel.DesktopTaskViewModel import com.android.quickstep.recents.ui.viewmodel.TaskData -import com.android.quickstep.task.thumbnail.TaskContentView import com.android.quickstep.task.thumbnail.TaskThumbnailView import com.android.quickstep.util.DesktopTask import com.android.quickstep.util.RecentsOrientedState @@ -81,12 +73,11 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu type = TaskViewType.DESKTOP, thumbnailFullscreenParams = DesktopFullscreenDrawParams(context), ) { - private val desktopTask: DesktopTask? - get() = groupTask as? DesktopTask - val deskId get() = desktopTask?.deskId ?: DesktopVisibilityController.INACTIVE_DESK_ID + private var desktopTask: DesktopTask? = null + private val contentViewFullscreenParams = FullscreenDrawParams(context) private val taskThumbnailViewDeprecatedPool = @@ -111,17 +102,6 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu ) } else null - private val taskContentViewPool = - if (enableRefactorTaskContentView()) { - ViewPool<TaskContentView>( - context, - this, - R.layout.task_content_view, - VIEW_POOL_MAX_SIZE, - VIEW_POOL_INITIAL_SIZE, - ) - } else null - private val tempPointF = PointF() private val lastComputedTaskSize = Rect() private lateinit var iconView: TaskViewIcon @@ -136,12 +116,6 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu */ private var fullscreenTaskPositions: List<DesktopTaskBoundsData> = emptyList() - /** - * Holds the previous organized task positions. This is used to animate between two sets of - * organized task positions when a task is being dismissed. - */ - private var previousOrganizedDesktopTaskPositions: List<DesktopTaskBoundsData>? = null - /** * When enableDesktopExplodedView is enabled, this controls the gradual transition from the * default positions to the organized non-overlapping positions. @@ -152,24 +126,10 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu positionTaskWindows() } - /** - * When enableDesktopExplodedView is enabled, and a task is removed, this controls the gradual - * transition from the previous organized task positions to the new. - */ - private var taskRemoveProgress = 0.0f - set(value) { - field = value - positionTaskWindows() - } - - private var taskRemoveAnimator: ObjectAnimator? = null - var remoteTargetHandles: Array<RemoteTargetHandle>? = null set(value) { field = value - if (value != null) { - positionTaskWindows() - } + positionTaskWindows() } override val displayId: Int @@ -187,10 +147,22 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu override fun onFinishInflate() { super.onFinishInflate() + iconView = + (findViewById<View>(R.id.icon) as TaskViewIcon).apply { + setIcon( + this, + ResourcesCompat.getDrawable( + context.resources, + R.drawable.ic_desktop_with_bg, + context.theme, + ), + ) + setText(resources.getText(R.string.recent_task_desktop)) + } contentView = findViewById<DesktopTaskContentView>(R.id.desktop_content).apply { updateLayoutParams<LayoutParams> { - topMargin = container.deviceProfile.overviewProfile.taskThumbnailTopMarginPx + topMargin = container.deviceProfile.overviewTaskThumbnailTopMarginPx } cornerRadius = contentViewFullscreenParams.currentCornerRadius backgroundView = findViewById(R.id.background) @@ -210,55 +182,52 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu ?.inflate() } - private fun positionTaskWindows(updateLayout: Boolean = false) { + private fun positionTaskWindows() { if (taskContainers.isEmpty()) { return } - val (widthScale, heightScale) = getScreenScaleFactors() - taskContainers.forEach { taskContainer -> - val taskId = taskContainer.task.key.id - val fullscreenTaskBounds = - fullscreenTaskPositions.firstOrNull { it.taskId == taskId }?.bounds ?: return - val overviewTaskBounds = + val thumbnailTopMarginPx = container.deviceProfile.overviewTaskThumbnailTopMarginPx + + val taskViewWidth = layoutParams.width + val taskViewHeight = layoutParams.height - thumbnailTopMarginPx + + BaseContainerInterface.getTaskDimension(mContext, container.deviceProfile, tempPointF) + + val screenWidth = tempPointF.x.toInt() + val screenHeight = tempPointF.y.toInt() + val screenRect = Rect(0, 0, screenWidth, screenHeight) + val scaleWidth = taskViewWidth / screenWidth.toFloat() + val scaleHeight = taskViewHeight / screenHeight.toFloat() + + taskContainers.forEach { + val taskId = it.task.key.id + val fullscreenTaskPosition = + fullscreenTaskPositions.firstOrNull { it.taskId == taskId } ?: return + val overviewTaskPosition = if (enableDesktopExplodedView()) { viewModel!! .organizedDesktopTaskPositions .firstOrNull { it.taskId == taskId } - ?.bounds ?: fullscreenTaskBounds + ?.let { organizedPosition -> + TEMP_OVERVIEW_TASK_POSITION.apply { + lerpRect( + fullscreenTaskPosition.bounds, + organizedPosition.bounds, + explodeProgress, + ) + } + } ?: fullscreenTaskPosition.bounds } else { - fullscreenTaskBounds - } - val currentTaskBounds = - if (enableDesktopExplodedView()) { - TEMP_OVERVIEW_TASK_POSITION.apply { - // When removing a task, interpolate between its old organized bounds and - // [overviewTaskBounds]. - val previousOrganizedTaskBounds = - previousOrganizedDesktopTaskPositions - ?.firstOrNull { it.taskId == taskId } - ?.bounds - if (previousOrganizedTaskBounds != null) { - lerpRect( - previousOrganizedTaskBounds, - overviewTaskBounds, - taskRemoveProgress, - ) - } else { - set(overviewTaskBounds) - } - lerpRect(fullscreenTaskBounds, this, explodeProgress) - } - } else { - fullscreenTaskBounds + fullscreenTaskPosition.bounds } if (enableDesktopExplodedView()) { getRemoteTargetHandle(taskId)?.let { remoteTargetHandle -> val fromRect = TEMP_FROM_RECTF.apply { - set(fullscreenTaskBounds) - scale(widthScale) + set(fullscreenTaskPosition.bounds) + scale(scaleWidth) offset( lastComputedTaskSize.left.toFloat(), lastComputedTaskSize.top.toFloat(), @@ -266,8 +235,8 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu } val toRect = TEMP_TO_RECTF.apply { - set(currentTaskBounds) - scale(widthScale) + set(overviewTaskPosition) + scale(scaleWidth) offset( lastComputedTaskSize.left.toFloat(), lastComputedTaskSize.top.toFloat(), @@ -278,76 +247,61 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu remoteTargetHandle.taskViewSimulator.setTaskRectTransform(transform) remoteTargetHandle.taskViewSimulator.apply(remoteTargetHandle.transformParams) } - - (taskContainer.taskContentView as? TaskContentView)?.setTaskHeaderAlpha( - explodeProgress - ) } - val overviewTaskLeft = overviewTaskBounds.left * widthScale - val overviewTaskTop = overviewTaskBounds.top * heightScale - val overviewTaskWidth = overviewTaskBounds.width() * widthScale - val overviewTaskHeight = overviewTaskBounds.height() * heightScale + val taskLeft = overviewTaskPosition.left * scaleWidth + val taskTop = overviewTaskPosition.top * scaleHeight + val taskWidth = overviewTaskPosition.width() * scaleWidth + val taskHeight = overviewTaskPosition.height() * scaleHeight + // TODO(b/394660950): Revisit the choice to update the layout when explodeProgress == 1. + // To run the explode animation in reverse, it may be simpler to use translation/scale + // for all cases where the progress is non-zero. + if (explodeProgress == 0.0f || explodeProgress == 1.0f) { + // Reset scaling and translation that may have been applied during animation. + it.snapshotView.apply { + scaleX = 1.0f + scaleY = 1.0f + translationX = 0.0f + translationY = 0.0f + } - if (updateLayout) { // Position the task to the same position as it would be on the desktop - taskContainer.taskContentView.updateLayoutParams<LayoutParams> { + it.snapshotView.updateLayoutParams<LayoutParams> { gravity = Gravity.LEFT or Gravity.TOP - width = overviewTaskWidth.toInt() - height = overviewTaskHeight.toInt() - leftMargin = overviewTaskLeft.toInt() - topMargin = overviewTaskTop.toInt() + width = taskWidth.toInt() + height = taskHeight.toInt() + leftMargin = taskLeft.toInt() + topMargin = taskTop.toInt() } - } - if (enableDesktopRecentsTransitionsCornersBugfix() && enableRefactorTaskThumbnail()) { - // When exploded view is disabled, these scale factors will be 1.0. This secondary - // scale factor is needed because a scale transform is applied to the thumbnail. - val thumbnailScaleWidth = - overviewTaskBounds.width().toFloat() / currentTaskBounds.width() - val thumbnailScaleHeight = - overviewTaskBounds.height().toFloat() / currentTaskBounds.height() - val screenRect = getScreenRect() - val contentOutlineBounds = - if (intersects(currentTaskBounds, screenRect)) - Rect(currentTaskBounds).apply { - intersectUnchecked(screenRect) - // Offset to 0,0 to transform into TaskThumbnailView's coordinate - // system. - offset(-currentTaskBounds.left, -currentTaskBounds.top) - left = (left * widthScale * thumbnailScaleWidth).roundToInt() - top = (top * heightScale * thumbnailScaleHeight).roundToInt() - right = (right * widthScale * thumbnailScaleWidth).roundToInt() - bottom = (bottom * heightScale * thumbnailScaleHeight).roundToInt() - } - else null - - if (enableRefactorTaskContentView()) { - (taskContainer.taskContentView as TaskContentView).outlineBounds = - contentOutlineBounds - } else { - taskContainer.thumbnailView.outlineBounds = contentOutlineBounds + if ( + enableDesktopRecentsTransitionsCornersBugfix() && enableRefactorTaskThumbnail() + ) { + it.thumbnailView.outlineBounds = + if (intersects(overviewTaskPosition, screenRect)) + Rect(overviewTaskPosition).apply { + intersectUnchecked(screenRect) + // Offset to 0,0 to transform into TaskThumbnailView's coordinate + // system. + offset(-overviewTaskPosition.left, -overviewTaskPosition.top) + left = (left * scaleWidth).roundToInt() + top = (top * scaleHeight).roundToInt() + right = (right * scaleWidth).roundToInt() + bottom = (bottom * scaleHeight).roundToInt() + } + else null + } + } else { + // During the animation, apply translation and scale such that the view is + // transformed to where we want, without triggering layout. + it.snapshotView.apply { + pivotX = 0.0f + pivotY = 0.0f + translationX = taskLeft - left + translationY = taskTop - top + scaleX = taskWidth / width.toFloat() + scaleY = taskHeight / height.toFloat() } - } - - val currentTaskLeft = currentTaskBounds.left * widthScale - val currentTaskTop = currentTaskBounds.top * heightScale - val currentTaskWidth = currentTaskBounds.width() * widthScale - val currentTaskHeight = currentTaskBounds.height() * heightScale - // During the animation, apply translation and scale such that the view is transformed - // to where we want, without triggering layout. - taskContainer.taskContentView.apply { - pivotX = 0.0f - pivotY = 0.0f - translationX = currentTaskLeft - overviewTaskLeft - translationY = currentTaskTop - overviewTaskTop - scaleX = if (overviewTaskWidth != 0f) currentTaskWidth / overviewTaskWidth else 1f - scaleY = - if (overviewTaskHeight != 0f) currentTaskHeight / overviewTaskHeight else 1f - } - - if (taskContainer.task.isMinimized) { - taskContainer.taskContentView.alpha = explodeProgress } } } @@ -358,14 +312,11 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu orientedState: RecentsOrientedState, taskOverlayFactory: TaskOverlayFactory, ) { - this.groupTask = desktopTask - // Minimized tasks are shown in Overview when exploded view is enabled. - val tasks = - if (enableDesktopExplodedView()) { - desktopTask.tasks - } else { - desktopTask.tasks.filterNot { it.isMinimized } - } + this.desktopTask = desktopTask + // TODO(b/370495260): Minimized tasks should not be filtered with desktop exploded view + // support. + // Minimized tasks should not be shown in Overview. + val tasks = desktopTask.tasks.filterNot { it.isMinimized } if (DEBUG) { val sb = StringBuilder() sb.append("bind tasks=").append(tasks.size).append("\n") @@ -373,50 +324,21 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu Log.d(TAG, sb.toString()) } - iconView = - (findViewById<View>(R.id.icon) as TaskViewIcon).apply { - setIcon( - this, - ResourcesCompat.getDrawable( - context.resources, - R.drawable.ic_desktop_with_bg, - context.theme, - ), - ) - setText(resources.getText(R.string.recent_task_desktop)) - } - cancelPendingLoadTasks() val backgroundViewIndex = contentView.indexOfChild(backgroundView) taskContainers = tasks.map { task -> - val taskContentView = - when { - enableRefactorTaskContentView() -> taskContentViewPool!!.view - enableRefactorTaskThumbnail() -> taskThumbnailViewPool!!.view - else -> taskThumbnailViewDeprecatedPool!!.view - } - contentView.addView(taskContentView, backgroundViewIndex + 1) val snapshotView = - if (enableRefactorTaskContentView()) { - taskContentView.findViewById<TaskThumbnailView>(R.id.snapshot) + if (enableRefactorTaskThumbnail()) { + taskThumbnailViewPool!!.view } else { - taskContentView + taskThumbnailViewDeprecatedPool!!.view } - if (enableDesktopExplodedView()) { - taskContentView.setOnClickListener { - launchTaskWithDesktopController(animated = true, task.key.id) - } - if (taskContentView is TaskContentView) { - taskContentView.isFocusable = true - taskContentView.isHoverable = true - } - } + contentView.addView(snapshotView, backgroundViewIndex + 1) TaskContainer( this, task, - taskContentView, snapshotView, iconView, TransformingTouchDelegate(iconView.asView()), @@ -440,16 +362,11 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu override fun onRecycle() { super.onRecycle() + desktopTask = null explodeProgress = 0.0f - taskRemoveProgress = 0.0f - previousOrganizedDesktopTaskPositions = null viewModel = null visibility = VISIBLE taskContainers.forEach { removeAndRecycleThumbnailView(it) } - if (enableOverviewIconMenu()) { - (iconView as IconAppChipView).reset() - } - remoteTargetHandles = null } override fun setOrientationState(orientationState: RecentsOrientedState) { @@ -495,15 +412,7 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu } } - /** - * Launches the desktop task and activate the task with [taskIdToReorderToFront] if it's - * provided and already on the desktop. It will exit Overview to desktop and activate the - * according new task afterwards if applicable. - */ - private fun launchTaskWithDesktopController( - animated: Boolean, - taskIdToReorderToFront: Int? = null, - ): RunnableList? { + private fun launchTaskWithDesktopController(animated: Boolean): RunnableList? { val recentsView = recentsView ?: return null TestLogging.recordEvent( TestProtocol.SEQUENCE_MAIN, @@ -513,31 +422,8 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu val endCallback = RunnableList() val desktopController = recentsView.desktopRecentsController checkNotNull(desktopController) { "recentsController is null" } - - if (taskIdToReorderToFront != null) { - // The to-be-activated window should animate on top of other apps during shell - // transition. - val remoteTargetHandle = getRemoteTargetHandle(taskIdToReorderToFront) - // The layer swapping is only applied after [createRecentsWindowAnimator] starts, which - // will bring the [remoteTargetHandles] above Recents, therefore this call won't affect - // the base surface in [DepthController]. - remoteTargetHandle?.taskViewSimulator?.setDrawsAboveOtherApps(true) - } - val launchDesktopFromRecents = { - desktopController.launchDesktopFromRecents(this, animated, taskIdToReorderToFront) { - endCallback.executeAllAndDestroy() - } - } - if (enableMultipleDesktops(context) && desktopTask?.tasks?.isEmpty() == true) { - recentsView.switchToScreenshot { - recentsView.finishRecentsAnimation( - /* toRecents= */ true, - /* shouldPip= */ false, - launchDesktopFromRecents, - ) - } - } else { - launchDesktopFromRecents() + desktopController.launchDesktopFromRecents(this, animated) { + endCallback.executeAllAndDestroy() } Log.d( TAG, @@ -566,7 +452,6 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu override fun onFullscreenProgressChanged(fullscreenProgress: Float) { backgroundView.alpha = 1 - fullscreenProgress - updateSettledProgressFullscreen(fullscreenProgress) } override fun updateFullscreenParams() { @@ -599,43 +484,18 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu if (taskContainers.isEmpty()) { recentsView?.dismissTaskView(this, animate, /* removeTask= */ true) } else { - // If this task has a live window, then hide it. - // TODO(b/413120214) The dismissed view should fade out. - getRemoteTargetHandle(taskId)?.let { - it.taskViewSimulator.setTaskRectTransform(Matrix().apply { postScale(0.0f, 0.0f) }) - it.taskViewSimulator.apply(it.transformParams) - } - - // TODO(b/413130378) Nicer handling of multiple quick task dismissals. - taskRemoveAnimator?.cancel() - taskRemoveAnimator = - ObjectAnimator.ofFloat(this, TASK_REMOVE_PROGRESS, 0f, 1f).apply { - addListener( - object : AnimatorListenerAdapter() { - override fun onAnimationEnd(animator: Animator) { - previousOrganizedDesktopTaskPositions = null - taskRemoveAnimator = null - } - } - ) - start() - } - - // Store the current organized positions before computing new ones. This allows us to - // animate from the current layout to the new. - previousOrganizedDesktopTaskPositions = viewModel!!.organizedDesktopTaskPositions + // Otherwise, re-position the remaining task windows. + // TODO(b/353949276): Implement the re-layout animations. updateTaskPositions() } } private fun removeAndRecycleThumbnailView(taskContainer: TaskContainer) { - contentView.removeView(taskContainer.taskContentView) - when { - enableRefactorTaskContentView() -> - taskContentViewPool!!.recycle(taskContainer.taskContentView as TaskContentView) - enableRefactorTaskThumbnail() -> - taskThumbnailViewPool!!.recycle(taskContainer.taskContentView as TaskThumbnailView) - else -> taskThumbnailViewDeprecatedPool!!.recycle(taskContainer.thumbnailViewDeprecated) + contentView.removeView(taskContainer.snapshotView) + if (enableRefactorTaskThumbnail()) { + taskThumbnailViewPool!!.recycle(taskContainer.thumbnailView) + } else { + taskThumbnailViewDeprecatedPool!!.recycle(taskContainer.thumbnailViewDeprecated) } } @@ -650,70 +510,9 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu } if (enableDesktopExplodedView()) { - val (widthScale, heightScale) = getScreenScaleFactors() - val res = context.resources - val layoutConfig = - DesktopLayoutConfig( - topBottomMarginOneRow = - (res.getDimensionPixelSize(R.dimen.desktop_top_bottom_margin_one_row) / - heightScale) - .toInt(), - topMarginMultiRows = - (res.getDimensionPixelSize(R.dimen.desktop_top_margin_multi_rows) / - heightScale) - .toInt(), - bottomMarginMultiRows = - (res.getDimensionPixelSize(R.dimen.desktop_bottom_margin_multi_rows) / - heightScale) - .toInt(), - leftRightMarginOneRow = - (res.getDimensionPixelSize(R.dimen.desktop_left_right_margin_one_row) / - widthScale) - .toInt(), - leftRightMarginMultiRows = - (res.getDimensionPixelSize(R.dimen.desktop_left_right_margin_multi_rows) / - widthScale) - .toInt(), - horizontalPaddingBetweenTasks = - (res.getDimensionPixelSize( - R.dimen.desktop_horizontal_padding_between_tasks - ) / widthScale) - .toInt(), - verticalPaddingBetweenTasks = - (res.getDimensionPixelSize(R.dimen.desktop_vertical_padding_between_tasks) / - heightScale) - .toInt(), - ) - - viewModel?.organizeDesktopTasks(desktopSize, fullscreenTaskPositions, layoutConfig) + viewModel?.organizeDesktopTasks(desktopSize, fullscreenTaskPositions) } - positionTaskWindows(updateLayout = true) - } - - /** - * Calculates the scale factors for the desktop task view's width and height. This is determined - * by comparing the available task view dimensions (after accounting for margins like - * [thumbnailTopMarginPx]) against the total screen dimensions. - * - * @return A [Pair] where the first value is the scale factor for width and the second is for - * height. - */ - private fun getScreenScaleFactors(): Pair<Float, Float> { - val thumbnailTopMarginPx = container.deviceProfile.overviewProfile.taskThumbnailTopMarginPx - val taskViewWidth = layoutParams.width - val taskViewHeight = layoutParams.height - thumbnailTopMarginPx - - val screenRect = getScreenRect() - val widthScale = taskViewWidth / screenRect.width().toFloat() - val heightScale = taskViewHeight / screenRect.height().toFloat() - - return Pair(widthScale, heightScale) - } - - /** Returns the dimensions of the screen. */ - private fun getScreenRect(): Rect { - BaseContainerInterface.getTaskDimension(mContext, container.deviceProfile, tempPointF) - return Rect(0, 0, tempPointF.x.toInt(), tempPointF.y.toInt()) + positionTaskWindows() } companion object { @@ -728,7 +527,5 @@ class DesktopTaskView @JvmOverloads constructor(context: Context, attrs: Attribu private val TEMP_OVERVIEW_TASK_POSITION = Rect() private val TEMP_FROM_RECTF = RectF() private val TEMP_TO_RECTF = RectF() - private val TASK_REMOVE_PROGRESS: FloatProperty<DesktopTaskView> = - KFloatProperty(DesktopTaskView::taskRemoveProgress) } } diff --git a/quickstep/src/com/android/quickstep/views/DigitalWellBeingToast.kt b/quickstep/src/com/android/quickstep/views/DigitalWellBeingToast.kt index 8c7f4830db..5c4a35da63 100644 --- a/quickstep/src/com/android/quickstep/views/DigitalWellBeingToast.kt +++ b/quickstep/src/com/android/quickstep/views/DigitalWellBeingToast.kt @@ -24,6 +24,9 @@ import android.content.pm.LauncherApps import android.content.pm.LauncherApps.AppUsageLimit import android.graphics.Outline import android.graphics.Paint +import android.icu.text.MeasureFormat +import android.icu.util.Measure +import android.icu.util.MeasureUnit import android.os.UserHandle import android.provider.Settings import android.util.AttributeSet @@ -32,6 +35,7 @@ import android.view.View import android.view.ViewOutlineProvider import android.view.accessibility.AccessibilityNodeInfo import android.widget.TextView +import androidx.annotation.StringRes import androidx.annotation.VisibleForTesting import androidx.core.util.component1 import androidx.core.util.component2 @@ -39,14 +43,14 @@ import androidx.core.view.isVisible import com.android.launcher3.R import com.android.launcher3.Utilities import com.android.launcher3.util.Executors +import com.android.launcher3.util.SplitConfigurationOptions import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_UNDEFINED import com.android.launcher3.util.SplitConfigurationOptions.StagePosition import com.android.quickstep.TaskUtils -import com.android.quickstep.task.apptimer.DurationFormatter import com.android.systemui.shared.recents.model.Task -import com.android.wm.shell.shared.split.SplitBounds import java.time.Duration +import java.util.Locale @SuppressLint("AppCompatCustomView") class DigitalWellBeingToast @@ -79,11 +83,10 @@ constructor( } } - var isDestroyed = false - private set + private var isDestroyed = false var hasLimit = false - var splitBounds: SplitBounds? = null + var splitBounds: SplitConfigurationOptions.SplitBounds? = null var bannerOffsetPercentage = 0f set(value) { if (field != value) { @@ -178,7 +181,7 @@ constructor( val splitBounds = splitBounds return when { splitBounds == null || - !recentsViewContainer.deviceProfile.deviceProperties.isTablet || + !recentsViewContainer.deviceProfile.isTablet || taskView.isLargeTile -> SplitBannerConfig.SPLIT_BANNER_FULLSCREEN // For portrait grid only height of task changes, not width. So we keep the text the // same @@ -196,6 +199,37 @@ constructor( } } + private fun getReadableDuration( + duration: Duration, + @StringRes durationLessThanOneMinuteStringId: Int, + ): String { + val hours = Math.toIntExact(duration.toHours()) + val minutes = Math.toIntExact(duration.minusHours(hours.toLong()).toMinutes()) + return when { + // Apply FormatWidth.WIDE if both the hour part and the minute part are non-zero. + hours > 0 && minutes > 0 -> + MeasureFormat.getInstance(Locale.getDefault(), MeasureFormat.FormatWidth.NARROW) + .formatMeasures( + Measure(hours, MeasureUnit.HOUR), + Measure(minutes, MeasureUnit.MINUTE), + ) + // Apply FormatWidth.WIDE if only the hour part is non-zero (unless forced). + hours > 0 -> + MeasureFormat.getInstance(Locale.getDefault(), MeasureFormat.FormatWidth.WIDE) + .formatMeasures(Measure(hours, MeasureUnit.HOUR)) + // Apply FormatWidth.WIDE if only the minute part is non-zero (unless forced). + minutes > 0 -> + MeasureFormat.getInstance(Locale.getDefault(), MeasureFormat.FormatWidth.WIDE) + .formatMeasures(Measure(minutes, MeasureUnit.MINUTE)) + // Use a specific string for usage less than one minute but non-zero. + duration > Duration.ZERO -> context.getString(durationLessThanOneMinuteStringId) + // Otherwise, return 0-minute string. + else -> + MeasureFormat.getInstance(Locale.getDefault(), MeasureFormat.FormatWidth.WIDE) + .formatMeasures(Measure(0, MeasureUnit.MINUTE)) + } + } + /** * Returns text to show for the banner depending on [.getSplitBannerConfig] If {@param * forContentDesc} is `true`, this will always return the full string corresponding to @@ -214,8 +248,7 @@ constructor( else remainingTime ) val readableDuration = - DurationFormatter.format( - context, + getReadableDuration( duration, R.string.shorter_duration_less_than_one_minute, /* forceFormatWidth */ ) @@ -270,7 +303,7 @@ constructor( snapshotWidth = taskView.layoutParams.width snapshotHeight = taskView.layoutParams.height - - recentsViewContainer.deviceProfile.overviewProfile.taskThumbnailTopMarginPx + recentsViewContainer.deviceProfile.overviewTaskThumbnailTopMarginPx } else { val groupedTaskSize = taskView.pagedOrientationHandler.getGroupedTaskViewSizes( @@ -305,7 +338,7 @@ constructor( taskView.layoutParams.height, splitBounds, recentsViewContainer.deviceProfile, - taskView.taskContentViews, + taskView.snapshotViews, task.key.id, this, ) diff --git a/quickstep/src/com/android/quickstep/views/FloatingAppPairBackground.kt b/quickstep/src/com/android/quickstep/views/FloatingAppPairBackground.kt index 4361a33aa5..6bbd6b2c15 100644 --- a/quickstep/src/com/android/quickstep/views/FloatingAppPairBackground.kt +++ b/quickstep/src/com/android/quickstep/views/FloatingAppPairBackground.kt @@ -37,12 +37,12 @@ import com.android.systemui.shared.system.QuickStepContract * increase in size during the animation. */ open class FloatingAppPairBackground( - context: Context, - // the view that we will draw this background on - protected val floatingView: FloatingAppPairView, - private val appIcon1: Drawable, - private val appIcon2: Drawable?, - dividerPos: Int, + context: Context, + // the view that we will draw this background on + protected val floatingView: FloatingAppPairView, + private val appIcon1: Drawable, + private val appIcon2: Drawable?, + dividerPos: Int ) : Drawable() { companion object { // Design specs -- app icons start small and expand during the animation @@ -79,44 +79,41 @@ open class FloatingAppPairBackground( backgroundPaint.color = ta.getColor(R.styleable.FolderIconPreview_folderPreviewColor, 0) ta.recycle() // Set up timings and interpolators - val timings = - AnimUtils.getDeviceAppPairLaunchTimings( - container.deviceProfile.deviceProperties.isTablet - ) + val timings = AnimUtils.getDeviceAppPairLaunchTimings(container.deviceProfile.isTablet) expandXInterpolator = Interpolators.clampToProgress( timings.getStagedRectScaleXInterpolator(), timings.stagedRectSlideStartOffset, - timings.stagedRectSlideEndOffset, + timings.stagedRectSlideEndOffset ) expandYInterpolator = Interpolators.clampToProgress( timings.getStagedRectScaleYInterpolator(), timings.stagedRectSlideStartOffset, - timings.stagedRectSlideEndOffset, + timings.stagedRectSlideEndOffset ) cellSplitInterpolator = Interpolators.clampToProgress( timings.cellSplitInterpolator, timings.cellSplitStartOffset, - timings.cellSplitEndOffset, + timings.cellSplitEndOffset ) iconFadeInterpolator = Interpolators.clampToProgress( timings.iconFadeInterpolator, timings.iconFadeStartOffset, - timings.iconFadeEndOffset, + timings.iconFadeEndOffset ) // Find device-specific measurements val resources = context.resources deviceCornerRadius = QuickStepContract.getWindowCornerRadius(context) deviceHalfDividerSize = - resources.getDimensionPixelSize(R.dimen.multi_window_task_divider_size) / 2f + resources.getDimensionPixelSize(R.dimen.multi_window_task_divider_size) / 2f val dividerCenterPos = dividerPos + deviceHalfDividerSize desiredSplitRatio = - if (dp.isLeftRightSplit) dividerCenterPos / dp.deviceProperties.widthPx - else dividerCenterPos / dp.deviceProperties.heightPx + if (dp.isLeftRightSplit) dividerCenterPos / dp.widthPx + else dividerCenterPos / dp.heightPx dividerPaint.color = resources.getColor(R.color.taskbar_background_dark, null /*theme*/) } @@ -160,13 +157,8 @@ open class FloatingAppPairBackground( // The right half of the background image val rightSide = RectF(dividerCenterPos + changingDividerSize, 0f, width, height) // Middle part is for divider background - val middleRect = - RectF( - leftSide.right - deviceHalfDividerSize, - 0f, - rightSide.left + deviceHalfDividerSize, - height, - ) + val middleRect = RectF(leftSide.right - deviceHalfDividerSize, 0f, + rightSide.left + deviceHalfDividerSize, height) // Draw background canvas.drawRect(middleRect, dividerPaint) @@ -182,7 +174,7 @@ open class FloatingAppPairBackground( changingInnerRadiusY, cornerRadiusX, cornerRadiusY, - ), + ) ) drawCustomRoundedRect( canvas, @@ -196,7 +188,7 @@ open class FloatingAppPairBackground( cornerRadiusY, changingInnerRadiusX, changingInnerRadiusY, - ), + ) ) // Calculate changing measurements for icons. @@ -267,13 +259,8 @@ open class FloatingAppPairBackground( // The bottom half of the background image val bottomSide = RectF(0f, dividerCenterPos + changingDividerSize, width, height) // Middle part is for divider background - val middleRect = - RectF( - 0f, - topSide.bottom - deviceHalfDividerSize, - width, - bottomSide.top + deviceHalfDividerSize, - ) + val middleRect = RectF(0f, topSide.bottom - deviceHalfDividerSize, + width, bottomSide.top + deviceHalfDividerSize) // Draw background canvas.drawRect(middleRect, dividerPaint) @@ -288,8 +275,8 @@ open class FloatingAppPairBackground( changingInnerRadiusX, changingInnerRadiusY, changingInnerRadiusX, - changingInnerRadiusY, - ), + changingInnerRadiusY + ) ) drawCustomRoundedRect( canvas, @@ -302,8 +289,8 @@ open class FloatingAppPairBackground( cornerRadiusX, cornerRadiusY, cornerRadiusX, - cornerRadiusY, - ), + cornerRadiusY + ) ) // Calculate changing measurements for icons. diff --git a/quickstep/src/com/android/quickstep/views/FloatingAppPairView.kt b/quickstep/src/com/android/quickstep/views/FloatingAppPairView.kt index 668413817a..e8d1cc1e36 100644 --- a/quickstep/src/com/android/quickstep/views/FloatingAppPairView.kt +++ b/quickstep/src/com/android/quickstep/views/FloatingAppPairView.kt @@ -27,7 +27,7 @@ import android.view.ViewGroup import android.widget.FrameLayout import com.android.launcher3.R import com.android.launcher3.Utilities -import com.android.launcher3.views.ActivityContext +import com.android.launcher3.statemanager.StatefulActivity import com.android.launcher3.views.BaseDragLayer /** @@ -38,11 +38,11 @@ class FloatingAppPairView @JvmOverloads constructor(context: Context, attrs: Att FrameLayout(context, attrs) { companion object { fun getFloatingAppPairView( - launcher: ActivityContext, + launcher: StatefulActivity<*>, originalView: View, appIcon1: Drawable?, appIcon2: Drawable?, - dividerPos: Int, + dividerPos: Int ): FloatingAppPairView { val dragLayer: ViewGroup = launcher.getDragLayer() val floatingView = @@ -62,11 +62,11 @@ class FloatingAppPairView @JvmOverloads constructor(context: Context, attrs: Att /** Initializes the view, copying the bounds and location of the original icon view. */ fun init( - launcher: ActivityContext, + launcher: StatefulActivity<*>, originalView: View, appIcon1: Drawable?, appIcon2: Drawable?, - dividerPos: Int, + dividerPos: Int ) { val viewBounds = Rect(0, 0, originalView.width, originalView.height) Utilities.getBoundsForViewInDragLayer( @@ -75,12 +75,12 @@ class FloatingAppPairView @JvmOverloads constructor(context: Context, attrs: Att viewBounds, false /* ignoreTransform */, null /* recycle */, - startingPosition, + startingPosition ) val lp = BaseDragLayer.LayoutParams( Math.round(startingPosition.width()), - Math.round(startingPosition.height()), + Math.round(startingPosition.height()) ) lp.ignoreInsets = true @@ -92,14 +92,14 @@ class FloatingAppPairView @JvmOverloads constructor(context: Context, attrs: Att layoutParams = lp // Prepare to draw app pair icon background - background = - if (appIcon1 == null || appIcon2 == null) { - val iconToAnimate = appIcon1 ?: appIcon2 - checkNotNull(iconToAnimate) - FloatingFullscreenAppPairBackground(context, this, iconToAnimate, dividerPos) - } else { - FloatingAppPairBackground(context, this, appIcon1, appIcon2, dividerPos) - } + background = if (appIcon1 == null || appIcon2 == null) { + val iconToAnimate = appIcon1 ?: appIcon2 + checkNotNull(iconToAnimate) + FloatingFullscreenAppPairBackground(context, this, iconToAnimate, + dividerPos) + } else { + FloatingAppPairBackground(context, this, appIcon1, appIcon2, dividerPos) + } background.setBounds(0, 0, lp.width, lp.height) } diff --git a/quickstep/src/com/android/quickstep/views/FloatingTaskView.java b/quickstep/src/com/android/quickstep/views/FloatingTaskView.java index 72a823efe1..acbb2eccbb 100644 --- a/quickstep/src/com/android/quickstep/views/FloatingTaskView.java +++ b/quickstep/src/com/android/quickstep/views/FloatingTaskView.java @@ -239,7 +239,7 @@ public class FloatingTaskView extends FrameLayout { // Position the floating view exactly on top of the original lp.topMargin = Math.round(pos.top); if (mIsRtl) { - lp.setMarginStart(mContainer.getDeviceProfile().getDeviceProperties().getWidthPx() - Math.round(pos.right)); + lp.setMarginStart(mContainer.getDeviceProfile().widthPx - Math.round(pos.right)); } else { lp.setMarginStart(Math.round(pos.left)); } @@ -256,7 +256,7 @@ public class FloatingTaskView extends FrameLayout { */ public void addStagingAnimation(PendingAnimation animation, RectF startingBounds, Rect endBounds, boolean fadeWithThumbnail, boolean isStagedTask) { - boolean isTablet = mContainer.getDeviceProfile().getDeviceProperties().isTablet(); + boolean isTablet = mContainer.getDeviceProfile().isTablet; boolean splittingFromOverview = fadeWithThumbnail; SplitAnimationTimings timings; @@ -280,7 +280,7 @@ public class FloatingTaskView extends FrameLayout { public void addConfirmAnimation(PendingAnimation animation, RectF startingBounds, Rect endBounds, boolean fadeWithThumbnail, boolean isStagedTask) { SplitAnimationTimings timings = - AnimUtils.getDeviceSplitToConfirmTimings(mContainer.getDeviceProfile().getDeviceProperties().isTablet()); + AnimUtils.getDeviceSplitToConfirmTimings(mContainer.getDeviceProfile().isTablet); addAnimation(animation, startingBounds, endBounds, fadeWithThumbnail, isStagedTask, timings); diff --git a/quickstep/src/com/android/quickstep/views/FloatingWidgetView.java b/quickstep/src/com/android/quickstep/views/FloatingWidgetView.java index 7bddc23231..b719ee5b73 100644 --- a/quickstep/src/com/android/quickstep/views/FloatingWidgetView.java +++ b/quickstep/src/com/android/quickstep/views/FloatingWidgetView.java @@ -50,6 +50,7 @@ public class FloatingWidgetView extends FrameLayout implements AnimatorListener, OnGlobalLayoutListener, FloatingView { private static final Matrix sTmpMatrix = new Matrix(); + private final QuickstepLauncher mLauncher; private final ListenerView mListenerView; private final FloatingWidgetBackgroundView mBackgroundView; private final RectF mBackgroundOffset = new RectF(); @@ -80,6 +81,7 @@ public class FloatingWidgetView extends FrameLayout implements AnimatorListener, public FloatingWidgetView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); + mLauncher = QuickstepLauncher.getLauncher(context); mListenerView = new ListenerView(context, attrs); mBackgroundView = new FloatingWidgetBackgroundView(context, attrs, defStyleAttr); addView(mBackgroundView); @@ -153,8 +155,7 @@ public class FloatingWidgetView extends FrameLayout implements AnimatorListener, } } - private void init(QuickstepLauncher launcher, DragLayer dragLayer, - LauncherAppWidgetHostView originalView, + private void init(DragLayer dragLayer, LauncherAppWidgetHostView originalView, RectF widgetBackgroundPosition, Size windowSize, float windowCornerRadius, boolean appTargetIsTranslucent, int fallbackBackgroundColor) { mAppWidgetView = originalView; @@ -162,7 +163,7 @@ public class FloatingWidgetView extends FrameLayout implements AnimatorListener, mAppWidgetView.beginDeferringUpdates(); mBackgroundPosition = widgetBackgroundPosition; mAppTargetIsTranslucent = appTargetIsTranslucent; - mEndRunnable = () -> finish(launcher, dragLayer); + mEndRunnable = () -> finish(dragLayer); mAppWidgetBackgroundView = RoundedCornerEnforcement.findBackground(mAppWidgetView); if (mAppWidgetBackgroundView == null) { @@ -270,7 +271,7 @@ public class FloatingWidgetView extends FrameLayout implements AnimatorListener, return positionsChanged; } - private void finish(QuickstepLauncher launcher, DragLayer dragLayer) { + private void finish(DragLayer dragLayer) { mAppWidgetView.setAlpha(1f); GhostView.removeGhost(mAppWidgetView); ((ViewGroup) dragLayer.getParent()).removeView(this); @@ -279,7 +280,7 @@ public class FloatingWidgetView extends FrameLayout implements AnimatorListener, // Removing GhostView must occur before ending deferrals. See b/190818220 mAppWidgetView.endDeferringUpdates(); recycle(); - launcher.getViewCache().recycleView(R.layout.floating_widget_view, this); + mLauncher.getViewCache().recycleView(R.layout.floating_widget_view, this); } public float getInitialCornerRadius() { @@ -322,7 +323,7 @@ public class FloatingWidgetView extends FrameLayout implements AnimatorListener, launcher.getViewCache().getView(R.layout.floating_widget_view, launcher, parent); floatingView.recycle(); - floatingView.init(launcher, dragLayer, originalView, widgetBackgroundPosition, windowSize, + floatingView.init(dragLayer, originalView, widgetBackgroundPosition, windowSize, windowCornerRadius, appTargetsAreTranslucent, fallbackBackgroundColor); parent.addView(floatingView); return floatingView; diff --git a/quickstep/src/com/android/quickstep/views/GroupedTaskView.kt b/quickstep/src/com/android/quickstep/views/GroupedTaskView.kt index 7a8a6c59fd..faa9e2893b 100644 --- a/quickstep/src/com/android/quickstep/views/GroupedTaskView.kt +++ b/quickstep/src/com/android/quickstep/views/GroupedTaskView.kt @@ -23,23 +23,21 @@ import android.util.Log import android.view.View import android.view.ViewStub import com.android.internal.jank.Cuj -import com.android.launcher3.Flags.enableRefactorDigitalWellbeingToast -import com.android.launcher3.Flags.enableRefactorTaskContentView +import com.android.launcher3.Flags.enableOverviewIconMenu import com.android.launcher3.Flags.enableRefactorTaskThumbnail import com.android.launcher3.R import com.android.launcher3.Utilities -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu import com.android.launcher3.util.RunnableList +import com.android.launcher3.util.SplitConfigurationOptions import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_UNDEFINED import com.android.quickstep.TaskOverlayFactory import com.android.quickstep.util.RecentsOrientedState import com.android.quickstep.util.SplitSelectStateController -import com.android.quickstep.util.SplitTask +import com.android.systemui.shared.recents.model.Task import com.android.systemui.shared.system.InteractionJankMonitorWrapper import com.android.wm.shell.Flags.enableFlexibleTwoAppSplit -import com.android.wm.shell.shared.split.SplitBounds import com.android.wm.shell.shared.split.SplitScreenConstants.PersistentSnapPosition /** @@ -55,7 +53,7 @@ import com.android.wm.shell.shared.split.SplitScreenConstants.PersistentSnapPosi class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null) : TaskView(context, attrs, type = TaskViewType.GROUPED) { - private val MINIMUM_RATIO_TO_SHOW_ICON = 0.25f + private val MINIMUM_RATIO_TO_SHOW_ICON = 0.2f val leftTopTaskContainer: TaskContainer get() = taskContainers[0] @@ -64,7 +62,7 @@ class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: Attribu get() = taskContainers[1] // TODO(b/336612373): Support new TTV for GroupedTaskView - var splitBoundsConfig: SplitBounds? = null + var splitBoundsConfig: SplitConfigurationOptions.SplitBounds? = null private set @get:PersistentSnapPosition @@ -80,8 +78,8 @@ class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: Attribu val splitBoundsConfig = splitBoundsConfig ?: return val inSplitSelection = getThisTaskCurrentlyInSplitSelection() != INVALID_TASK_ID pagedOrientationHandler.measureGroupedTaskViewThumbnailBounds( - leftTopTaskContainer.taskContentView, - rightBottomTaskContainer.taskContentView, + leftTopTaskContainer.snapshotView, + rightBottomTaskContainer.snapshotView, widthSize, heightSize, splitBoundsConfig, @@ -97,17 +95,11 @@ class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: Attribu override fun inflateViewStubs() { super.inflateViewStubs() - findViewById<ViewStub>(R.id.bottomright_task_content_view) + findViewById<ViewStub>(R.id.bottomright_snapshot) ?.apply { - inflatedId = - if (enableRefactorTaskContentView()) R.id.bottomright_task_content_view - else R.id.bottomright_snapshot layoutResource = - when { - enableRefactorTaskContentView() -> R.layout.task_content_view - enableRefactorTaskThumbnail() -> R.layout.task_thumbnail - else -> R.layout.task_thumbnail_deprecated - } + if (enableRefactorTaskThumbnail()) R.layout.task_thumbnail + else R.layout.task_thumbnail_deprecated } ?.inflate() findViewById<ViewStub>(R.id.bottomRight_icon) @@ -117,11 +109,6 @@ class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: Attribu else R.layout.icon_view } ?.inflate() - if (!enableRefactorDigitalWellbeingToast()) { - findViewById<ViewStub>(R.id.bottomRight_digital_wellbeing_toast) - ?.apply { layoutResource = R.layout.digital_wellbeing_toast } - ?.inflate() - } } override fun onRecycle() { @@ -130,17 +117,17 @@ class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: Attribu } fun bind( - splitTask: SplitTask, + primaryTask: Task, + secondaryTask: Task, orientedState: RecentsOrientedState, taskOverlayFactory: TaskOverlayFactory, + splitBoundsConfig: SplitConfigurationOptions.SplitBounds?, ) { - this.groupTask = splitTask cancelPendingLoadTasks() taskContainers = listOf( createTaskContainer( - splitTask.topLeftTask, - R.id.task_content_view, + primaryTask, R.id.snapshot, R.id.icon, R.id.show_windows, @@ -149,10 +136,8 @@ class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: Attribu taskOverlayFactory, ), createTaskContainer( - splitTask.bottomRightTask, - R.id.bottomright_task_content_view, - if (enableRefactorTaskContentView()) R.id.snapshot - else R.id.bottomright_snapshot, + secondaryTask, + R.id.bottomright_snapshot, R.id.bottomRight_icon, R.id.show_windows_right, R.id.bottomRight_digital_wellbeing_toast, @@ -160,7 +145,7 @@ class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: Attribu taskOverlayFactory, ), ) - this.splitBoundsConfig = splitTask.splitBounds + this.splitBoundsConfig = splitBoundsConfig taskContainers.forEach { it.digitalWellBeingToast?.splitBounds = splitBoundsConfig } onBind(orientedState) } @@ -199,7 +184,7 @@ class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: Attribu private fun updateIconPlacement() { val splitBoundsConfig = splitBoundsConfig ?: return val deviceProfile = container.deviceProfile - val taskIconHeight = deviceProfile.overviewProfile.taskIconSizePx + val taskIconHeight = deviceProfile.overviewTaskIconSizePx val inSplitSelection = getThisTaskCurrentlyInSplitSelection() != INVALID_TASK_ID var oneIconHiddenDueToSmallWidth = false @@ -255,8 +240,8 @@ class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: Attribu leftTopTaskContainer.iconView.asView(), rightBottomTaskContainer.iconView.asView(), taskIconHeight, - leftTopTaskContainer.taskContentView.measuredWidth, - leftTopTaskContainer.taskContentView.measuredHeight, + leftTopTaskContainer.snapshotView.measuredWidth, + leftTopTaskContainer.snapshotView.measuredHeight, measuredHeight, measuredWidth, isLayoutRtl, @@ -268,7 +253,7 @@ class GroupedTaskView @JvmOverloads constructor(context: Context, attrs: Attribu } } - fun updateSplitBoundsConfig(splitBounds: SplitBounds?) { + fun updateSplitBoundsConfig(splitBounds: SplitConfigurationOptions.SplitBounds?) { splitBoundsConfig = splitBounds taskContainers.forEach { it.digitalWellBeingToast?.splitBounds = splitBoundsConfig diff --git a/quickstep/src/com/android/quickstep/views/IconAppChipView.kt b/quickstep/src/com/android/quickstep/views/IconAppChipView.kt index e14e6effe2..f4fd12792a 100644 --- a/quickstep/src/com/android/quickstep/views/IconAppChipView.kt +++ b/quickstep/src/com/android/quickstep/views/IconAppChipView.kt @@ -20,22 +20,16 @@ import android.animation.ObjectAnimator import android.animation.RectEvaluator import android.animation.ValueAnimator import android.content.Context -import android.graphics.Canvas import android.graphics.Outline import android.graphics.Rect import android.graphics.drawable.Drawable -import android.text.TextUtils.TruncateAt import android.util.AttributeSet -import android.view.Gravity -import android.view.KeyEvent import android.view.View import android.view.ViewAnimationUtils import android.view.ViewOutlineProvider import android.widget.FrameLayout import android.widget.ImageView import android.widget.TextView -import androidx.core.animation.addListener -import androidx.core.view.updateLayoutParams import com.android.app.animation.Interpolators import com.android.launcher3.LauncherAnimUtils.SCALE_PROPERTY import com.android.launcher3.LauncherAnimUtils.VIEW_TRANSLATE_X @@ -45,8 +39,6 @@ import com.android.launcher3.Utilities import com.android.launcher3.util.MultiPropertyFactory import com.android.launcher3.util.MultiPropertyFactory.FloatBiFunction import com.android.launcher3.util.MultiValueAlpha -import com.android.quickstep.util.BorderAnimator -import com.android.quickstep.util.BorderAnimator.Companion.createSimpleBorderAnimator import com.android.quickstep.util.RecentsOrientedState import kotlin.math.max import kotlin.math.min @@ -64,10 +56,9 @@ constructor( private var iconView: IconView? = null private var iconArrowView: ImageView? = null private var menuAnchorView: View? = null - // Two textview so we can ellipsize the collapsed view and crossfade on expand to the full name. - private var appTitle: TextView? = null - private var isLayoutNaturalToLauncher = true + private var iconTextCollapsedView: TextView? = null + private var iconTextExpandedView: TextView? = null private val backgroundRelativeLtrLocation = Rect() private val backgroundAnimationRectEvaluator = RectEvaluator(backgroundRelativeLtrLocation) @@ -87,35 +78,26 @@ constructor( resources.getDimensionPixelSize(R.dimen.task_thumbnail_icon_menu_expanded_gap) // Background dimensions - val backgroundMarginTopStart: Int = + private val backgroundMarginTopStart: Int = resources.getDimensionPixelSize( R.dimen.task_thumbnail_icon_menu_background_margin_top_start ) // Contents dimensions - private val appNameHorizontalMarginCollapsed = + private val appNameHorizontalMargin = resources.getDimensionPixelSize( R.dimen.task_thumbnail_icon_menu_app_name_margin_horizontal_collapsed ) - private val appNameHorizontalMarginExpanded = - resources.getDimensionPixelSize( - R.dimen.task_thumbnail_icon_menu_app_name_margin_horizontal_expanded - ) private val arrowMarginEnd = resources.getDimensionPixelSize(R.dimen.task_thumbnail_icon_menu_arrow_margin) private val iconViewMarginStart = resources.getDimensionPixelSize(R.dimen.task_thumbnail_icon_view_start_margin) private val appIconSize = resources.getDimensionPixelSize(R.dimen.task_thumbnail_icon_menu_app_icon_collapsed_size) - private val iconMenuElevation = - resources.getDimension(R.dimen.task_thumbnail_icon_menu_elevation) private val arrowSize = resources.getDimensionPixelSize(R.dimen.task_thumbnail_icon_menu_arrow_size) private val iconViewDrawableExpandedSize = resources.getDimensionPixelSize(R.dimen.task_thumbnail_icon_menu_app_icon_expanded_size) - private val focusBorderWidth = - resources.getDimensionPixelSize(R.dimen.app_chip_keyboard_border_width) - private val cornerRadius = resources.getDimensionPixelSize(R.dimen.app_chip_round_corner_radius) private var animator: AnimatorSet? = null @@ -128,10 +110,7 @@ constructor( private val viewTranslationY: MultiPropertyFactory<View> = MultiPropertyFactory(this, VIEW_TRANSLATE_Y, INDEX_COUNT_TRANSLATION, SUM_AGGREGATOR) - // Width showing only the app icon and arrow. Max width should not be set to less than - // this. - private val minWidthAllowed = iconViewMarginStart + appIconSize + arrowSize + arrowMarginEnd - var maxWidth = Integer.MAX_VALUE + var maxWidth = Int.MAX_VALUE /** * Sets the maximum width of this Icon Menu. This is usually used when space is limited for * split screen. @@ -139,137 +118,47 @@ constructor( set(value) { // Width showing only the app icon and arrow. Max width should not be set to less than // this. - field = max(value, minWidthAllowed) + val minMaxWidth = iconViewMarginStart + appIconSize + arrowSize + arrowMarginEnd + field = max(value, minMaxWidth) } var status: AppChipStatus = AppChipStatus.Collapsed private set - val menuToCollapsedChipGap: Int = - getExpandedBackgroundLtrBounds().bottom - - getCollapsedBackgroundLtrBounds().bottom - - menuToChipGap - - private val focusBorderAnimator: BorderAnimator = - createSimpleBorderAnimator( - borderRadiusPx = cornerRadius, - borderWidthPx = focusBorderWidth, - boundsBuilder = { bounds -> - bounds.set(backgroundRelativeLtrLocation) - if (status == AppChipStatus.Expanded) { - // Draws the border inside the chip to avoid overlap with the task menu. - var inset = focusBorderWidth - 1 - bounds.inset(inset, inset) - } - }, - targetView = this, - borderColor = - context - .obtainStyledAttributes(attrs, R.styleable.IconAppChip) - .getColor( - R.styleable.IconAppChip_focusBorderColor, - BorderAnimator.DEFAULT_BORDER_COLOR, - ), - ) - - private var focusAnimator: AnimatorSet? = null - - private fun animateFocusBorder(isAppearing: Boolean) { - focusAnimator?.cancel() - focusAnimator = null - val borderAnimator = focusBorderAnimator.buildAnimator(isAppearing) - - val initialBackground = Rect(backgroundRelativeLtrLocation) - val targetBackground: Rect = - when { - // Background animator to increase the clipping size to show the focus border. - isAppearing -> - Rect(backgroundRelativeLtrLocation).apply { - if (status == AppChipStatus.Collapsed) - inset(-focusBorderWidth + 1, -focusBorderWidth + 1) - } - // Background animator to restore the outline size to hide the focus border - status == AppChipStatus.Expanded -> getExpandedBackgroundLtrBounds() - else -> getCollapsedBackgroundLtrBounds() - } - val backgroundAnimator = - ValueAnimator.ofObject( - backgroundAnimationRectEvaluator, - initialBackground, - targetBackground, - ) - .apply { addUpdateListener { invalidateOutline() } } - - focusAnimator = - AnimatorSet().apply { - playTogether(borderAnimator, backgroundAnimator) - duration = borderAnimator.duration - interpolator = borderAnimator.interpolator - start() - } - } - - public override fun onFocusChanged( - gainFocus: Boolean, - direction: Int, - previouslyFocusedRect: Rect?, - ) { - super.onFocusChanged(gainFocus, direction, previouslyFocusedRect) - animateFocusBorder(isAppearing = gainFocus) - } - - override fun draw(canvas: Canvas) { - super.draw(canvas) - focusBorderAnimator.drawBorder(canvas) - } - override fun onFinishInflate() { super.onFinishInflate() iconView = findViewById(R.id.icon_view) - appTitle = findViewById(R.id.icon_title) + iconTextCollapsedView = findViewById(R.id.icon_text_collapsed) + iconTextExpandedView = findViewById(R.id.icon_text_expanded) iconArrowView = findViewById(R.id.icon_arrow) menuAnchorView = findViewById(R.id.icon_view_menu_anchor) } override fun setText(text: CharSequence?) { - if (text == appTitle?.text) return - appTitle?.text = text + iconTextCollapsedView?.text = text + iconTextExpandedView?.text = text } override fun getDrawable(): Drawable? = iconView?.drawable - private var currentIconDrawableHash: Int = 0 - override fun setDrawable(icon: Drawable?) { - if (icon.hashCode() == currentIconDrawableHash) return iconView?.drawable = icon - currentIconDrawableHash = icon.hashCode() } override fun setDrawableSize(iconWidth: Int, iconHeight: Int) { iconView?.setDrawableSize(iconWidth, iconHeight) } - override fun getMinimumWidth(): Int = min(maxWidth, collapsedMenuDefaultWidth) - override fun setIconOrientation(orientationState: RecentsOrientedState, isGridTask: Boolean) { val orientationHandler = orientationState.orientationHandler - isLayoutNaturalToLauncher = orientationHandler.isLayoutNaturalToLauncher // Layout params for anchor view val anchorLayoutParams = menuAnchorView!!.layoutParams as LayoutParams - if (orientationHandler.isLayoutNaturalToLauncher) { - anchorLayoutParams.gravity = Gravity.START - anchorLayoutParams.marginStart = backgroundMarginTopStart - } else { - anchorLayoutParams.gravity = Gravity.LEFT - anchorLayoutParams.marginStart = 0 - } anchorLayoutParams.topMargin = expandedMenuDefaultHeight + menuToChipGap menuAnchorView!!.layoutParams = anchorLayoutParams // Layout Params for the Menu View (this) val iconMenuParams = layoutParams as LayoutParams - iconMenuParams.width = getChipWidth() + iconMenuParams.width = expandedMenuDefaultWidth iconMenuParams.height = expandedMenuDefaultHeight orientationHandler.setIconAppChipMenuParams( this, @@ -295,7 +184,7 @@ constructor( } outline.setRoundRect( mRtlAppliedOutlineBounds, - resources.getDimension(R.dimen.app_chip_round_corner_radius), + mRtlAppliedOutlineBounds.height() / 2f, ) } } @@ -310,12 +199,31 @@ constructor( // Layout Params for the collapsed Icon Text View val textMarginStart = - iconMarginStartRelativeToParent + appIconSize + appNameHorizontalMarginCollapsed - val iconTextCollapsedParams = appTitle!!.layoutParams as LayoutParams + iconMarginStartRelativeToParent + appIconSize + appNameHorizontalMargin + val iconTextCollapsedParams = iconTextCollapsedView!!.layoutParams as LayoutParams orientationHandler.setIconAppChipChildrenParams(iconTextCollapsedParams, textMarginStart) - iconTextCollapsedParams.width = - calculateCollapsedTextWidth(collapsedBackgroundBounds.width()) - appTitle?.layoutParams = iconTextCollapsedParams + val collapsedTextWidth = + (collapsedBackgroundBounds.width() - + iconViewMarginStart - + appIconSize - + arrowSize - + appNameHorizontalMargin - + arrowMarginEnd) + iconTextCollapsedParams.width = collapsedTextWidth + iconTextCollapsedView!!.layoutParams = iconTextCollapsedParams + iconTextCollapsedView!!.alpha = 1f + + // Layout Params for the expanded Icon Text View + val iconTextExpandedParams = iconTextExpandedView!!.layoutParams as LayoutParams + orientationHandler.setIconAppChipChildrenParams(iconTextExpandedParams, textMarginStart) + iconTextExpandedView!!.layoutParams = iconTextExpandedParams + iconTextExpandedView!!.alpha = 0f + iconTextExpandedView!!.setRevealClip( + true, + 0f, + appIconSize / 2f, + collapsedTextWidth.toFloat(), + ) // Layout Params for the Icon Arrow View val iconArrowParams = iconArrowView!!.layoutParams as LayoutParams @@ -335,46 +243,6 @@ constructor( ) } - private fun enableMarquee(isEnabled: Boolean) { - // Marquee should not be enabled when is running test harness. - val isMarqueeEnabled = isEnabled && !Utilities.isRunningInTestHarness() - appTitle?.let { - it.ellipsize = if (isMarqueeEnabled) TruncateAt.MARQUEE else null - it.isSelected = isMarqueeEnabled - } - } - - /** - * Calculates the width available for the collapsed text (app name) within the view. - * - * This function determines the maximum width that the app name can occupy when the view is in - * its collapsed state. It considers various factors such as the maximum allowed width, the - * bounds of the collapsed background, the size of the app icon, the arrow, and the margins - * around these elements. - * - * @return The calculated width available for the collapsed text (app name). - */ - private fun calculateCollapsedTextWidth(width: Int): Int { - val collapsedTextWidth = - (width - - iconViewMarginStart - - appIconSize - - arrowSize - - appNameHorizontalMarginCollapsed - - arrowMarginEnd) - - val spaceLeftForText = maxWidth - minWidthAllowed - return minOf(collapsedTextWidth, spaceLeftForText).coerceAtLeast(0) - } - - private fun calculateExpandedTextWidth(width: Int): Int = - width - - iconViewMarginStart - - iconViewDrawableExpandedSize - - arrowSize - - appNameHorizontalMarginExpanded - - arrowMarginEnd - override fun setIconColorTint(color: Int, amount: Float) { // RecentsView's COLOR_TINT animates between 0 and 0.5f, we want to hide the app chip menu. val colorTintAlpha = Utilities.mapToRange(amount, 0f, 0.5f, 1f, 0f, Interpolators.LINEAR) @@ -431,16 +299,25 @@ constructor( fun getMenuTranslationY(): MultiPropertyFactory<View>.MultiProperty = viewTranslationY[INDEX_MENU_TRANSLATION] - internal fun revealAnim(isRevealing: Boolean, animated: Boolean = true): AnimatorSet { + internal fun revealAnim(isRevealing: Boolean, animated: Boolean = true) { cancelInProgressAnimations() val collapsedBackgroundBounds = getCollapsedBackgroundLtrBounds() val expandedBackgroundBounds = getExpandedBackgroundLtrBounds() val initialBackground = Rect(backgroundRelativeLtrLocation) animator = AnimatorSet() - val isRtl = isLayoutRtl if (isRevealing) { + val isRtl = isLayoutRtl bringToFront() + // Clip expanded text with reveal animation so it doesn't go beyond the edge of the menu + val expandedTextRevealAnim = + ViewAnimationUtils.createCircularReveal( + iconTextExpandedView, + 0, + iconTextExpandedView!!.height / 2, + iconTextCollapsedView!!.width.toFloat(), + iconTextExpandedView!!.width.toFloat(), + ) // Animate background clipping val backgroundAnimator = ValueAnimator.ofObject( @@ -453,19 +330,31 @@ constructor( val iconViewScaling = iconViewDrawableExpandedSize / appIconSize.toFloat() val arrowTranslationX = (expandedBackgroundBounds.right - collapsedBackgroundBounds.right).toFloat() - val iconCenterToTextCollapsed = appIconSize / 2f + appNameHorizontalMarginCollapsed + val iconCenterToTextCollapsed = appIconSize / 2f + appNameHorizontalMargin val iconCenterToTextExpanded = - iconViewDrawableExpandedSize / 2f + appNameHorizontalMarginCollapsed + iconViewDrawableExpandedSize / 2f + appNameHorizontalMargin val textTranslationX = iconCenterToTextExpanded - iconCenterToTextCollapsed val textTranslationXWithRtl = if (isRtl) -textTranslationX else textTranslationX val arrowTranslationWithRtl = if (isRtl) -arrowTranslationX else arrowTranslationX animator!!.playTogether( + expandedTextRevealAnim, backgroundAnimator, ObjectAnimator.ofFloat(iconView, SCALE_X, iconViewScaling), ObjectAnimator.ofFloat(iconView, SCALE_Y, iconViewScaling), - ObjectAnimator.ofFloat(appTitle, TRANSLATION_X, textTranslationXWithRtl), + ObjectAnimator.ofFloat( + iconTextCollapsedView, + TRANSLATION_X, + textTranslationXWithRtl, + ), + ObjectAnimator.ofFloat( + iconTextExpandedView, + TRANSLATION_X, + textTranslationXWithRtl, + ), + ObjectAnimator.ofFloat(iconTextCollapsedView, ALPHA, 0f), + ObjectAnimator.ofFloat(iconTextExpandedView, ALPHA, 1f), ObjectAnimator.ofFloat(iconArrowView, TRANSLATION_X, arrowTranslationWithRtl), ObjectAnimator.ofFloat(iconArrowView, SCALE_Y, -1f), ) @@ -475,11 +364,11 @@ constructor( // Clip expanded text with reveal animation so it doesn't go beyond the edge of the menu val expandedTextClipAnim = ViewAnimationUtils.createCircularReveal( - appTitle, - if (isRtl) appTitle!!.width else 0, - appTitle!!.height / 2, - appTitle!!.width.toFloat(), - calculateCollapsedTextWidth(collapsedBackgroundBounds.width()).toFloat(), + iconTextExpandedView, + 0, + iconTextExpandedView!!.height / 2, + iconTextExpandedView!!.width.toFloat(), + iconTextCollapsedView!!.width.toFloat(), ) // Animate background clipping @@ -497,75 +386,25 @@ constructor( expandedTextClipAnim, backgroundAnimator, ObjectAnimator.ofFloat(iconView, SCALE_PROPERTY, 1f), - ObjectAnimator.ofFloat(appTitle, TRANSLATION_X, 0f), + ObjectAnimator.ofFloat(iconTextCollapsedView, TRANSLATION_X, 0f), + ObjectAnimator.ofFloat(iconTextExpandedView, TRANSLATION_X, 0f), + ObjectAnimator.ofFloat(iconTextCollapsedView, ALPHA, 1f), + ObjectAnimator.ofFloat(iconTextExpandedView, ALPHA, 0f), ObjectAnimator.ofFloat(iconArrowView, TRANSLATION_X, 0f), ObjectAnimator.ofFloat(iconArrowView, SCALE_Y, 1f), ) animator!!.duration = MENU_BACKGROUND_HIDE_DURATION.toLong() status = AppChipStatus.Collapsed - sendToBack() } if (!animated) animator!!.duration = 0 animator!!.interpolator = Interpolators.EMPHASIZED - - // Increase the chip and appTitle size before the animation starts when it's expanding. - // And decrease the size after the animation when is collapsing. - animator!!.addListener( - onStart = { - // Hide focused border during expanding/collapsing animation - if (isFocused) { - focusBorderAnimator.setBorderVisibility(visible = false, animated = false) - } - when (status) { - AppChipStatus.Expanded -> updateChipSize() - // Disable marquee before chip is collapsed - AppChipStatus.Collapsed -> enableMarquee(false) - } - }, - onEnd = { - if (isFocused) animateFocusBorder(isAppearing = true) - when (status) { - AppChipStatus.Collapsed -> updateChipSize() - // Enable marquee after chip is fully expanded - AppChipStatus.Expanded -> enableMarquee(true) - } - }, - ) - return animator!! - } - - /** - * Updates the width of the app title based on the current [AppChipStatus]. - * - * This function dynamically adjusts the width of the `appTitle` TextView depending on whether - * the app chip is in an expanded or collapsed state. - * - When the chip is [AppChipStatus.Expanded], the title width is set to - * [expandedMaxTextWidth], allowing the title to potentially take up more space. - * - When the chip is [AppChipStatus.Collapsed], the title width is calculated based on the - * width of the collapsed background. This ensures the title fits within the smaller, - * collapsed chip boundaries. The width is then determined by calling - * [calculateCollapsedTextWidth]. - */ - private fun updateChipSize() { - val chipWidth = getChipWidth() - when (status) { - AppChipStatus.Expanded -> { - updateLayoutParams { width = chipWidth } - appTitle!!.updateLayoutParams { width = calculateExpandedTextWidth(chipWidth) } - } - AppChipStatus.Collapsed -> { - appTitle!!.updateLayoutParams { - val collapsedBackgroundWidth = getCollapsedBackgroundLtrBounds().width() - width = calculateCollapsedTextWidth(collapsedBackgroundWidth) - } - updateLayoutParams { width = chipWidth } - } - } + animator!!.start() } private fun getCollapsedBackgroundLtrBounds(): Rect { - val bounds = Rect(0, 0, minimumWidth, collapsedMenuDefaultHeight) + val bounds = + Rect(0, 0, min(maxWidth, collapsedMenuDefaultWidth), collapsedMenuDefaultHeight) bounds.offset(backgroundMarginTopStart, backgroundMarginTopStart) return bounds } @@ -573,18 +412,6 @@ constructor( private fun getExpandedBackgroundLtrBounds() = Rect(0, 0, expandedMenuDefaultWidth, expandedMenuDefaultHeight) - private fun getCollapsedBackgroundWidth() = getCollapsedBackgroundLtrBounds().right - - private fun getChipWidth(): Int { - // TODO(b/292269949): When in fake orientation, the width of the chip remains expanded - // to prevent wrong translation due to chip rotation and anchor. - if (!isLayoutNaturalToLauncher) return expandedMenuDefaultWidth - return when (status) { - AppChipStatus.Expanded -> expandedMenuDefaultWidth - AppChipStatus.Collapsed -> getCollapsedBackgroundWidth() - } - } - private fun cancelInProgressAnimations() { // We null the `AnimatorSet` because it holds references to the `Animators` which aren't // expecting to be mutable and will cause a crash if they are re-used. @@ -594,62 +421,20 @@ constructor( } } - override fun bringToFront() { - super.bringToFront() - z = iconMenuElevation + Z_INDEX_FRONT - updateParentZIndex(Z_INDEX_FRONT) - } - - private fun sendToBack() { - z = iconMenuElevation - updateParentZIndex(0f) - } - - private fun updateParentZIndex(zIndex: Float) { - val parentView = parent as? TaskView - if (parentView?.isOnGridBottomRow == true) { - parentView.z = zIndex - } - } - override fun focusSearch(direction: Int): View? { if (mParent == null) return null return when (direction) { FOCUS_RIGHT, - FOCUS_DOWN -> mParent.focusSearch(this, FOCUS_FORWARD) + FOCUS_DOWN -> mParent.focusSearch(this, View.FOCUS_FORWARD) FOCUS_UP, - FOCUS_LEFT -> mParent.focusSearch(this, FOCUS_BACKWARD) + FOCUS_LEFT -> mParent.focusSearch(this, View.FOCUS_BACKWARD) else -> super.focusSearch(direction) } } - /** - * We need to over-ride here due to liveTile mode, the [OverviewInputConsumer] is added, which - * consumes all [InputEvent]'s and focus isn't moved correctly. - */ - override fun dispatchKeyEvent(event: KeyEvent): Boolean { - if (event.action != KeyEvent.ACTION_DOWN) return super.dispatchKeyEvent(event) - - val currentFocus = findFocus() ?: return super.dispatchKeyEvent(event) - - val nextFocus = - when (event.keyCode) { - KeyEvent.KEYCODE_DPAD_UP -> focusSearch(currentFocus, FOCUS_BACKWARD) - KeyEvent.KEYCODE_DPAD_DOWN -> focusSearch(currentFocus, FOCUS_FORWARD) - KeyEvent.KEYCODE_TAB -> - focusSearch( - currentFocus, - if (event.isShiftPressed) FOCUS_BACKWARD else FOCUS_FORWARD, - ) - else -> null - } - - return nextFocus?.requestFocus() ?: super.dispatchKeyEvent(event) - } - fun reset() { setText(null) - drawable = null + setDrawable(null) } override fun asView(): View = this @@ -665,8 +450,6 @@ constructor( private const val MENU_BACKGROUND_REVEAL_DURATION = 417 private const val MENU_BACKGROUND_HIDE_DURATION = 333 - private const val Z_INDEX_FRONT = 10f - private const val NUM_ALPHA_CHANNELS = 4 private const val INDEX_CONTENT_ALPHA = 0 private const val INDEX_COLOR_FILTER_ALPHA = 1 diff --git a/quickstep/src/com/android/quickstep/views/IconView.kt b/quickstep/src/com/android/quickstep/views/IconView.kt index 04f9537617..cb69b22de0 100644 --- a/quickstep/src/com/android/quickstep/views/IconView.kt +++ b/quickstep/src/com/android/quickstep/views/IconView.kt @@ -157,20 +157,20 @@ class IconView : View, TaskViewIcon { val deviceProfile: DeviceProfile = (ActivityContext.lookupContext(context) as ActivityContext).getDeviceProfile() orientationHandler.setTaskIconParams( - iconParams = layoutParams as FrameLayout.LayoutParams, - taskIconMargin = deviceProfile.overviewProfile.taskMarginPx, - taskIconHeight = deviceProfile.overviewProfile.taskIconSizePx, - thumbnailTopMargin = deviceProfile.overviewProfile.taskThumbnailTopMarginPx, + iconParams = getLayoutParams() as FrameLayout.LayoutParams, + taskIconMargin = deviceProfile.overviewTaskMarginPx, + taskIconHeight = deviceProfile.overviewTaskIconSizePx, + thumbnailTopMargin = deviceProfile.overviewTaskThumbnailTopMarginPx, isRtl = layoutDirection == LAYOUT_DIRECTION_RTL, ) updateLayoutParams<FrameLayout.LayoutParams> { - height = deviceProfile.overviewProfile.taskIconSizePx + height = deviceProfile.overviewTaskIconSizePx width = height } setRotation(orientationHandler.degreesRotated) val iconDrawableSize = - if (isGridTask) deviceProfile.overviewProfile.taskIconDrawableSizeGridPx - else deviceProfile.overviewProfile.taskIconDrawableSizePx + if (isGridTask) deviceProfile.overviewTaskIconDrawableSizeGridPx + else deviceProfile.overviewTaskIconDrawableSizePx setDrawableSize(iconDrawableSize, iconDrawableSize) } diff --git a/quickstep/src/com/android/quickstep/views/LauncherRecentsView.java b/quickstep/src/com/android/quickstep/views/LauncherRecentsView.java index e8753b9702..a6be3f789a 100644 --- a/quickstep/src/com/android/quickstep/views/LauncherRecentsView.java +++ b/quickstep/src/com/android/quickstep/views/LauncherRecentsView.java @@ -18,14 +18,14 @@ package com.android.quickstep.views; import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY; -import static com.android.launcher3.LauncherState.ADD_DESK_BUTTON; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.launcher3.LauncherState.CLEAR_ALL_BUTTON; +import static com.android.launcher3.LauncherState.ADD_DESK_BUTTON; import static com.android.launcher3.LauncherState.NORMAL; import static com.android.launcher3.LauncherState.OVERVIEW; import static com.android.launcher3.LauncherState.OVERVIEW_MODAL_TASK; import static com.android.launcher3.LauncherState.OVERVIEW_SPLIT_SELECT; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_SPLIT_SELECTION_EXIT_HOME; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; import android.annotation.TargetApi; import android.content.Context; @@ -49,7 +49,9 @@ import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.launcher3.util.PendingSplitSelectInfo; import com.android.launcher3.util.SplitConfigurationOptions; import com.android.launcher3.util.SplitConfigurationOptions.SplitSelectSource; +import com.android.quickstep.BaseContainerInterface; import com.android.quickstep.GestureState; +import com.android.quickstep.LauncherActivityInterface; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.util.AnimUtils; import com.android.quickstep.util.SplitSelectStateController; @@ -166,8 +168,6 @@ public class LauncherRecentsView extends RecentsView<QuickstepLauncher, Launcher resetModalVisuals(); } - resetShareUIState(); - // Set border after select mode changes to avoid showing border during state transition if (!toState.isRecentsViewVisible || toState == OVERVIEW_MODAL_TASK) { setTaskBorderEnabled(false); @@ -240,6 +240,11 @@ public class LauncherRecentsView extends RecentsView<QuickstepLauncher, Launcher } } + @Override + protected BaseContainerInterface<LauncherState, ?> getContainerInterface(int displayId) { + return LauncherActivityInterface.INSTANCE; + } + @Override protected void onDismissAnimationEnds() { super.onDismissAnimationEnds(); @@ -298,7 +303,8 @@ public class LauncherRecentsView extends RecentsView<QuickstepLauncher, Launcher desktopVisibilityController.setRecentsGestureEnd(endTarget); } if (showDesktopApps && Utilities.ATLEAST_R) { - SystemUiProxy.INSTANCE.get(mContainer).showDesktopApps(mContainer.getDisplay().getDisplayId()); + SystemUiProxy.INSTANCE.get(mContainer).showDesktopApps(mContainer.getDisplay().getDisplayId(), + null /* transition */); } } } diff --git a/quickstep/src/com/android/quickstep/views/OverviewActionsView.java b/quickstep/src/com/android/quickstep/views/OverviewActionsView.java index 7ce6a9bba5..226e827986 100644 --- a/quickstep/src/com/android/quickstep/views/OverviewActionsView.java +++ b/quickstep/src/com/android/quickstep/views/OverviewActionsView.java @@ -16,14 +16,11 @@ package com.android.quickstep.views; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; - import android.content.Context; import android.content.res.Configuration; import android.graphics.Rect; import android.util.AttributeSet; import android.util.Log; -import android.view.KeyEvent; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; @@ -34,6 +31,7 @@ import androidx.annotation.IntDef; import androidx.annotation.Nullable; import com.android.launcher3.DeviceProfile; +import com.android.launcher3.Flags; import com.android.launcher3.Insettable; import com.android.launcher3.R; import com.android.launcher3.anim.AnimatedFloat; @@ -59,34 +57,6 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo public static final String TAG = "OverviewActionsView"; private final Rect mInsets = new Rect(); - /** - * We need to over-ride here due to liveTile mode, the [OverviewInputConsumer] is added, which - * consumes all [InputEvent]'s and focus isn't moved correctly. - */ - @Override - public boolean dispatchKeyEvent(KeyEvent event) { - if (event.getAction() != KeyEvent.ACTION_DOWN) return super.dispatchKeyEvent(event); - - View currentFocus = findFocus(); - if (currentFocus == null) return super.dispatchKeyEvent(event); - - View nextFocus = null; - switch (event.getKeyCode()) { - case KeyEvent.KEYCODE_DPAD_LEFT -> nextFocus = focusSearch(currentFocus, - FOCUS_BACKWARD); - case KeyEvent.KEYCODE_DPAD_RIGHT -> nextFocus = focusSearch(currentFocus, - FOCUS_FORWARD); - case KeyEvent.KEYCODE_TAB -> nextFocus = focusSearch(currentFocus, - event.isShiftPressed() ? FOCUS_BACKWARD : FOCUS_FORWARD); - } - - if (nextFocus != null) { - return nextFocus.requestFocus(); - } - - return super.dispatchKeyEvent(event); - } - @IntDef(flag = true, value = { HIDDEN_NON_ZERO_ROTATION, HIDDEN_NO_TASKS, @@ -191,6 +161,7 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo // Currently, the only grouped task action is "save app pairs". mActionButtons = findViewById(R.id.action_buttons); mSaveAppPairButton = findViewById(R.id.action_save_app_pair); + // Lawnchair-TODO-High: This uses Google Sans Flex TypefaceUtils.setTypeface(mSaveAppPairButton, FontFamily.GSF_LABEL_LARGE); // Initialize a list to hold alphas for mActionButtons and any group action buttons. mMultiValueAlphas[ACTIONS_ALPHAS] = new MultiValueAlpha(mActionButtons, NUM_ALPHAS); @@ -304,7 +275,7 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo private void updateForIsTablet() { assert mDp != null; // Update flags to see if split button should be hidden. - updateSplitButtonHiddenFlags(FLAG_SMALL_SCREEN_HIDE_SPLIT, !mDp.getDeviceProperties().isTablet()); + updateSplitButtonHiddenFlags(FLAG_SMALL_SCREEN_HIDE_SPLIT, !mDp.isTablet); updateActionButtonsVisibility(); } @@ -313,7 +284,7 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo return; } boolean showSingleTaskActions = !mIsGroupedTask; - boolean showGroupActions = mIsGroupedTask && mDp.getDeviceProperties().isTablet() && mCanSaveAppPair; + boolean showGroupActions = mIsGroupedTask && mDp.isTablet && mCanSaveAppPair; Log.d(TAG, "updateActionButtonsVisibility() called: showSingleTaskActions = [" + showSingleTaskActions + "], showGroupActions = [" + showGroupActions + "]"); getActionsAlphas().get(INDEX_GROUPED_ALPHA).setValue(showSingleTaskActions ? 1 : 0); @@ -406,7 +377,7 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo LayoutParams actionParams = (LayoutParams) actionBar.getLayoutParams(); actionParams.setMargins( - actionParams.leftMargin, mDp.getOverviewProfile().getActionsTopMarginPx(), + actionParams.leftMargin, mDp.overviewActionsTopMarginPx, actionParams.rightMargin, getBottomMargin()); } @@ -415,15 +386,13 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo return 0; } - if (mDp.getDeviceProperties().isTablet() && enableGridOnlyOverview()) { - return mDp.getTaskbarProfile().getStashedTaskbarHeight(); + if (mDp.isTablet && Flags.enableGridOnlyOverview()) { + return mDp.stashedTaskbarHeight; } // Align to bottom of task Rect. - return mDp.getDeviceProperties().getHeightPx() - - mTaskSize.bottom - - mDp.getOverviewProfile().getActionsTopMarginPx() - - mDp.getOverviewProfile().getActionsHeight(); + return mDp.heightPx - mTaskSize.bottom - mDp.overviewActionsTopMarginPx + - mDp.overviewActionsHeight; } /** diff --git a/quickstep/src/com/android/quickstep/views/RecentsDismissUtils.kt b/quickstep/src/com/android/quickstep/views/RecentsDismissUtils.kt index 972f187680..6acaeae8db 100644 --- a/quickstep/src/com/android/quickstep/views/RecentsDismissUtils.kt +++ b/quickstep/src/com/android/quickstep/views/RecentsDismissUtils.kt @@ -16,42 +16,21 @@ package com.android.quickstep.views -import android.app.ActivityTaskManager.INVALID_TASK_ID -import android.view.View -import androidx.core.graphics.toRectF -import androidx.core.view.children -import androidx.core.view.contains +import android.os.VibrationAttributes import androidx.dynamicanimation.animation.FloatPropertyCompat import androidx.dynamicanimation.animation.FloatValueHolder import androidx.dynamicanimation.animation.SpringAnimation import androidx.dynamicanimation.animation.SpringForce -import com.android.internal.jank.Cuj -import com.android.launcher3.PagedView +import com.android.launcher3.Flags.enableGridOnlyOverview import com.android.launcher3.R -import com.android.launcher3.concurrent.annotations.LightweightBackground -import com.android.launcher3.concurrent.annotations.LightweightBackgroundPriority -import com.android.launcher3.logging.StatsLogManager.LauncherEvent +import com.android.launcher3.Utilities.boundToRange import com.android.launcher3.util.DynamicResource import com.android.launcher3.util.MSDLPlayerWrapper -import com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview -import com.android.launcher3.views.ActivityContext -import com.android.quickstep.SystemUiProxy -import com.android.quickstep.util.DesksUtils.Companion.areMultiDesksFlagsEnabled import com.android.quickstep.util.TaskGridNavHelper -import com.android.quickstep.util.isDefaultDisplay -import com.android.quickstep.util.isExternalDisplay import com.android.quickstep.views.RecentsView.RECENTS_SCALE_PROPERTY -import com.android.quickstep.views.RecentsViewUtils.OnDeskAddedListener -import com.android.quickstep.views.TaskView.Companion.GRID_END_TRANSLATION_X -import com.android.systemui.shared.system.ActivityManagerWrapper -import com.android.systemui.shared.system.InteractionJankMonitorWrapper import com.google.android.msdl.data.model.MSDLToken -import com.google.common.util.concurrent.ListeningExecutorService -import dagger.assisted.Assisted -import dagger.assisted.AssistedFactory -import dagger.assisted.AssistedInject +import com.google.android.msdl.domain.InteractionProperties import kotlin.math.abs -import kotlin.math.max import kotlin.math.roundToInt import kotlin.math.sign @@ -59,349 +38,179 @@ import kotlin.math.sign * Helper class for [RecentsView]. This util class contains refactored and extracted functions from * RecentsView related to TaskView dismissal. */ -class RecentsDismissUtils -@AssistedInject -constructor( - @Assisted private val recentsView: RecentsView<*, *>, - private val systemUiProxy: SystemUiProxy, - @LightweightBackground(LightweightBackgroundPriority.UI) - private val uiHelperExecutor: ListeningExecutorService, - private val activityManagerWrapper: ActivityManagerWrapper, - private val msdlPlayerWrapper: MSDLPlayerWrapper, -) { - @AssistedFactory - interface Factory { - fun create(recentsView: RecentsView<*, *>): RecentsDismissUtils - } +class RecentsDismissUtils(private val recentsView: RecentsView<*, *>) { /** - * [OnDeskAddedListener] which launches the new desk right after it is created. - * - * This is mainly used for clearing all desks via the clear all button in the recent view or the - * removal of the last task in a desk. - */ - private val launchNewDeskListener = - object : OnDeskAddedListener { - override fun onDeskAdded(desktopTaskView: DesktopTaskView) { - desktopTaskView.launchWithAnimation() - recentsView.mUtils.removeOnDeskAddedListener(this) - } - } - - /** - * Runs the default spring animation when a dismissed task view in overview is released. + * Creates the spring animations which run when a dragged task view in overview is released. * * <p>When a task dismiss is cancelled, the task will return to its original position via a * spring animation. As it passes the threshold of its settling state, its neighbors will spring * in response to the perceived impact of the settling task. */ - fun createTaskDismissSpringAnimation( - dismissedTaskView: TaskView?, - shouldRemoveTaskView: Boolean, - isSplitSelection: Boolean, - ): SpringSet? { - if (dismissedTaskView == null || isSplitSelection) { - return createTaskDismissSpringAnimation( - dismissedTaskView, - isDismissing = true, - DismissedTaskData( - startVelocity = 0f, - dismissLength = 0, - dismissThreshold = 0, - finalPosition = 0f, - ), - shouldRemoveTaskView, - isSplitSelection, - ) - } - return createTaskDismissSpringAnimation( - dismissedTaskView, - isDismissing = true, - getDefaultDismissedTaskData(dismissedTaskView), - shouldRemoveTaskView, - isSplitSelection, - ) - } - - /** - * Runs the spring animations when a dismissed task view in overview is released. - * - * <p>When a task dismiss is cancelled, the task will return to its original position via a - * spring animation. As it passes the threshold of its settling state, its neighbors will spring - * in response to the perceived impact of the settling task. - */ - fun createTaskDismissSpringAnimation( - dismissedTaskView: TaskView?, + fun createTaskDismissSettlingSpringAnimation( + draggedTaskView: TaskView?, + velocity: Float, isDismissing: Boolean, - dismissedTaskData: DismissedTaskData, - shouldRemoveTaskView: Boolean, - isSplitSelection: Boolean, - ): SpringSet? { - val gridEndData = getGridEndData(dismissedTaskView) - val dismissedTaskSecondaryDimension = - if (dismissedTaskView == null) - recentsView.pagedOrientationHandler.getSecondarySize( - recentsView.mLastComputedTaskSize.toRectF() - ) - else { - recentsView.pagedOrientationHandler - .getSecondaryDimension(dismissedTaskView) - .toFloat() - } - val verticalFactor = - recentsView.pagedOrientationHandler.getTaskDismissVerticalDirection().toFloat() - val startVelocity = - abs(dismissedTaskData.startVelocity).coerceAtLeast(dismissedTaskSecondaryDimension) * - dismissedTaskData.startVelocity.sign - - // Spring that animates the dismissed task. - val dismissedTaskViewSpring = - if (isSplitSelection || dismissedTaskView == null) null - else { - createDismissedTaskViewSpringAnimation( - dismissedTaskView, - isDismissing, - DismissedTaskData( - startVelocity = startVelocity, - dismissLength = dismissedTaskData.dismissLength, - finalPosition = dismissedTaskData.finalPosition, - dismissThreshold = dismissedTaskData.dismissThreshold, - ), - ) - } - - // SpringSet tracking all dismiss springs before running end-snapping and relayout. - var springSet = - dismissedTaskViewSpring?.let { SpringSet(it, dismissedTaskData.finalPosition) } - - if (isDismissing) { - // The spring set that will reflow the tasks to fill the gap left by the dismissed task. - val reflowSpringSet = - createTaskGridReflowSpringSet( - dismissedTaskView, - getDismissedTaskGapForReflow(dismissedTaskView, isSplitSelection), - gridEndData, - isSplitSelection, - ) - if (springSet == null) { - // Only reflow, as there is no dismissed task to animate. - springSet = reflowSpringSet - } else if (reflowSpringSet != null) { - springSet.playAfterThreshold( - driverThreshold = dismissedTaskSecondaryDimension * verticalFactor, - triggeredSpringSet = reflowSpringSet, - ) - } - } else if (springSet != null && dismissedTaskView != null) { - // Neighbor settling spring animations. - val neighborSettlingSpringSet = - createNeighborSettlingSpringSet(dismissedTaskView, isSpringDirectionVertical = true) - springSet.playAfterThreshold( - driverThreshold = dismissedTaskData.finalPosition, - triggeredSpringSet = neighborSettlingSpringSet, - minVelocity = startVelocity, - ) - springSet.addEndListener { - InteractionJankMonitorWrapper.cancel(Cuj.CUJ_LAUNCHER_OVERVIEW_TASK_DISMISS) - } - } - - if (!isSplitSelection) { - springSet?.addStartListener { - InteractionJankMonitorWrapper.begin( - recentsView, - Cuj.CUJ_LAUNCHER_OVERVIEW_TASK_DISMISS, - ) - } - } - val endRunnable = { - if (isDismissing) { - onEndSnappingAndRelayout( - dismissedTaskView, - shouldRemoveTaskView, - isSplitSelection, - gridEndData, - ) - } else { - recentsView.onDismissAnimationEnds() - } - } - if (springSet == null) { - endRunnable() - return null - } - return springSet.addEndListener(endRunnable).start() - } - - /** Default dismissed task view spring animation. */ - private fun createDismissedTaskViewSpringAnimation( - dismissedTaskView: TaskView - ): SpringAnimation? { - return createDismissedTaskViewSpringAnimation( - dismissedTaskView, - isDismissing = true, - getDefaultDismissedTaskData(dismissedTaskView), - ) - } - - /** Dismissed task view spring animation. */ - private fun createDismissedTaskViewSpringAnimation( - dismissedTaskView: TaskView, - isDismissing: Boolean, - dismissedTaskData: DismissedTaskData, + dismissLength: Int, + onEndRunnable: () -> Unit, ): SpringAnimation? { + draggedTaskView ?: return null val taskDismissFloatProperty = FloatPropertyCompat.createFloatPropertyCompat( - dismissedTaskView.secondaryDismissTranslationProperty + draggedTaskView.secondaryDismissTranslationProperty ) - var previousDisplacement = taskDismissFloatProperty.getValue(dismissedTaskView) - // Animate dismissed task towards dismissal or rest state. - val dismissedTaskViewSpringAnimation = - SpringAnimation(dismissedTaskView, taskDismissFloatProperty) - .setSpring( - createExpressiveDismissSpringForce() - .setFinalPosition(dismissedTaskData.finalPosition) - ) - .setStartVelocity(dismissedTaskData.startVelocity) - .addUpdateListener { animation, currentDisplacement, _ -> - // Play haptic as task crosses dismiss threshold from above or below. - val previousBeyondThreshold = - abs(previousDisplacement) >= abs(dismissedTaskData.dismissThreshold) - val currentBeyondThreshold = - abs(currentDisplacement) >= abs(dismissedTaskData.dismissThreshold) - if (previousBeyondThreshold != currentBeyondThreshold) { - msdlPlayerWrapper.playToken(MSDLToken.SWIPE_THRESHOLD_INDICATOR) - } - previousDisplacement = currentDisplacement - - if (dismissedTaskView.isRunningTask && recentsView.enableDrawingLiveTile) { + val minVelocity = + recentsView.pagedOrientationHandler.getSecondaryDimension(draggedTaskView).toFloat() + val startVelocity = abs(velocity).coerceAtLeast(minVelocity) * velocity.sign + // Animate dragged task towards dismissal or rest state. + val draggedTaskViewSpringAnimation = + SpringAnimation(draggedTaskView, taskDismissFloatProperty) + .setSpring(createExpressiveDismissSpringForce()) + .setStartVelocity(startVelocity) + .addUpdateListener { animation, value, _ -> + if (isDismissing && abs(value) >= abs(dismissLength)) { + animation.cancel() + } else if (draggedTaskView.isRunningTask && recentsView.enableDrawingLiveTile) { recentsView.runActionOnRemoteHandles { remoteTargetHandle -> remoteTargetHandle.taskViewSimulator.taskSecondaryTranslation.value = - taskDismissFloatProperty.getValue(dismissedTaskView) + taskDismissFloatProperty.getValue(draggedTaskView) } recentsView.redrawLiveTile() } - // End dismissed task animation once beyond the screen so next animations play. - if ( - isDismissing && - abs(currentDisplacement) >= abs(dismissedTaskData.dismissLength) - ) { - (animation as SpringAnimation).skipToEnd() + } + .addEndListener { _, _, _, _ -> + if (isDismissing) { + if (!recentsView.showAsGrid() || enableGridOnlyOverview()) { + runTaskGridReflowSpringAnimation( + draggedTaskView, + getDismissedTaskGapForReflow(draggedTaskView), + onEndRunnable, + ) + } else { + recentsView.dismissTaskView( + draggedTaskView, + /* animateTaskView = */ false, + /* removeTask = */ true, + ) + onEndRunnable() + } + } else { + recentsView.onDismissAnimationEnds() + onEndRunnable() } } - return dismissedTaskViewSpringAnimation + if (!isDismissing) { + addNeighborSettlingSpringAnimations( + draggedTaskView, + draggedTaskViewSpringAnimation, + driverProgressThreshold = 0f, + isSpringDirectionVertical = true, + minVelocity = startVelocity, + ) + } + return draggedTaskViewSpringAnimation } - private fun getDefaultDismissedTaskData(dismissedTaskView: TaskView): DismissedTaskData { - with(recentsView) { - dismissedTaskView.getThumbnailBounds(mTempRect, /* relativeToDragLayer= */ true) - val secondaryLayerDimension = - pagedOrientationHandler.getSecondaryDimension( - (mContainer as ActivityContext).getDragLayer() - ) - val verticalFactor = pagedOrientationHandler.getTaskDismissVerticalDirection().toFloat() - val dismissLength = - (pagedOrientationHandler.getTaskDismissLength(secondaryLayerDimension, mTempRect) * - verticalFactor) - .toInt() - val dismissThreshold = (dismissLength * DEFAULT_DISMISS_THRESHOLD_FRACTION).toInt() - val startVelocity = mTempRect.height().toFloat() - val finalPosition = dismissLength.toFloat() - return DismissedTaskData( - startVelocity = startVelocity, - dismissLength = dismissLength, - finalPosition = finalPosition, - dismissThreshold = dismissThreshold, + private fun addNeighborSettlingSpringAnimations( + draggedTaskView: TaskView, + springAnimationDriver: SpringAnimation, + tasksToExclude: List<TaskView> = emptyList(), + driverProgressThreshold: Float, + isSpringDirectionVertical: Boolean, + minVelocity: Float, + ) { + // Empty spring animation exists for conditional start, and to drive neighboring springs. + val neighborsToSettle = + SpringAnimation(FloatValueHolder()).setSpring(createExpressiveDismissSpringForce()) + + // Add tasks before dragged index, fanning out from the dragged task. + // The order they are added matters, as each spring drives the next. + var previousNeighbor = neighborsToSettle + getTasksOffsetPairAdjacentToDraggedTask(draggedTaskView, towardsStart = true) + .filter { (taskView, _) -> !tasksToExclude.contains(taskView) } + .forEach { (taskView, offset) -> + previousNeighbor = + createNeighboringTaskViewSpringAnimation( + taskView, + offset * ADDITIONAL_DISMISS_DAMPING_RATIO, + previousNeighbor, + isSpringDirectionVertical, + ) + } + // Add tasks after dragged index, fanning out from the dragged task. + // The order they are added matters, as each spring drives the next. + previousNeighbor = neighborsToSettle + getTasksOffsetPairAdjacentToDraggedTask(draggedTaskView, towardsStart = false) + .filter { (taskView, _) -> !tasksToExclude.contains(taskView) } + .forEach { (taskView, offset) -> + previousNeighbor = + createNeighboringTaskViewSpringAnimation( + taskView, + offset * ADDITIONAL_DISMISS_DAMPING_RATIO, + previousNeighbor, + isSpringDirectionVertical, + ) + } + + val isCurrentDisplacementAboveOrigin = + recentsView.pagedOrientationHandler.isGoingUp( + draggedTaskView.secondaryDismissTranslationProperty.get(draggedTaskView), + recentsView.isRtl, ) + addThresholdSpringAnimationTrigger( + springAnimationDriver, + progressThreshold = driverProgressThreshold, + neighborsToSettle, + isCurrentDisplacementAboveOrigin, + minVelocity, + ) + } + + /** As spring passes threshold for the first time, run conditional spring with velocity. */ + private fun addThresholdSpringAnimationTrigger( + springAnimationDriver: SpringAnimation, + progressThreshold: Float, + conditionalSpring: SpringAnimation, + isCurrentDisplacementAboveOrigin: Boolean, + minVelocity: Float, + ) { + val runSettlingAtVelocity = { velocity: Float -> + conditionalSpring.setStartVelocity(velocity).animateToFinalPosition(0f) + playDismissSettlingHaptic(velocity) + } + if (isCurrentDisplacementAboveOrigin) { + var lastPosition = 0f + var startSettling = false + springAnimationDriver.addUpdateListener { _, value, velocity -> + // We do not compare to the threshold directly, as the update listener + // does not necessarily hit every value. Do not check again once it has started + // settling, as a spring can bounce past the end value multiple times. + if (startSettling) return@addUpdateListener + if ( + lastPosition < progressThreshold && value >= progressThreshold || + lastPosition > progressThreshold && value <= progressThreshold + ) { + startSettling = true + } + lastPosition = value + if (startSettling) { + runSettlingAtVelocity(velocity) + } + } + } else { + // Run settling animations immediately when displacement is already below settled state. + runSettlingAtVelocity(minVelocity) } } - /** Dismisses all */ - fun dismissAllTasks() { - val allDismissSprings = - recentsView.mUtils.taskViews - .reversed() - .filter { taskView -> recentsView.isTaskViewVisible(taskView) } - .mapNotNull { createDismissedTaskViewSpringAnimation(it) } - SpringSet(SpringAnimation(FloatValueHolder()).setSpring(SpringForce(1f))) - .playTogether(allDismissSprings) - .addEndListener { - with(recentsView) { - // Remove desktops first, since desks can be empty (so they have no recent - // tasks), and closing all tasks on a desk doesn't always necessarily mean that - // the desk will be removed. So, there are no guarantees that the below call to - // `ActivityManagerWrapper::removeAllRecentTasks()` will be enough. - if (areMultiDesksFlagsEnabled() && context.displayId.isExternalDisplay) { - mUtils.addOnDeskAddedListener(launchNewDeskListener) - } - systemUiProxy.removeAllDesks() - - // Remove all the task views now - finishRecentsAnimation(/* toRecents */ true, /* shouldPip */ false) { - uiHelperExecutor.execute { activityManagerWrapper.removeAllRecentTasks() } - removeAllTaskViews() - if (context.displayId.isDefaultDisplay || !areMultiDesksFlagsEnabled()) { - startHome() - } - } - } - } - .start() - } - - /** Bounce neighboring tasks due to a canceled dismiss or the reflow of tasks after dismiss. */ - private fun createNeighborSettlingSpringSet( - dismissedTaskView: TaskView, - tasksToExclude: List<TaskView> = emptyList(), - isSpringDirectionVertical: Boolean, - ): SpringSet { - // Empty spring animation exists for conditional start, and to drive neighboring springs. - val neighborsToSettle = - SpringAnimation(FloatValueHolder()) - .setSpring(createExpressiveDismissSpringForce().setFinalPosition(0f)) - val neighborSettlingSpringSet = SpringSet(neighborsToSettle) - - // Add tasks before dismissed index, fanning out from the dismissed task. - // The order they are added matters, as each spring drives the next. - var previousNeighbor = neighborsToSettle - getTasksOffsetPairAdjacentToDismissedTask(dismissedTaskView, towardsStart = true) - .filter { (taskView, _) -> !tasksToExclude.contains(taskView) } - .forEach { (taskView, offset) -> - previousNeighbor = - createNeighboringTaskViewSpringAnimation( - taskView, - offset * ADDITIONAL_DISMISS_DAMPING_RATIO, - previousNeighbor, - isSpringDirectionVertical, - neighborSettlingSpringSet, - ) - } - // Add tasks after dismissed index, fanning out from the dismissed task. - // The order they are added matters, as each spring drives the next. - previousNeighbor = neighborsToSettle - getTasksOffsetPairAdjacentToDismissedTask(dismissedTaskView, towardsStart = false) - .filter { (taskView, _) -> !tasksToExclude.contains(taskView) } - .forEach { (taskView, offset) -> - previousNeighbor = - createNeighboringTaskViewSpringAnimation( - taskView, - offset * ADDITIONAL_DISMISS_DAMPING_RATIO, - previousNeighbor, - isSpringDirectionVertical, - neighborSettlingSpringSet, - ) - } - return neighborSettlingSpringSet - } - /** - * Gets pairs of (TaskView, offset) adjacent the dismissed task in visual order. + * Gets pairs of (TaskView, offset) adjacent the dragged task in visual order. * - * <p>Gets tasks either before or after the dismissed task along with their offset from it. The + * <p>Gets tasks either before or after the dragged task along with their offset from it. The * offset is the distance between indices for carousels, or distance between columns for grids. */ - private fun getTasksOffsetPairAdjacentToDismissedTask( - dismissedTaskView: TaskView, + private fun getTasksOffsetPairAdjacentToDraggedTask( + draggedTaskView: TaskView, towardsStart: Boolean, ): Sequence<Pair<TaskView, Int>> { if (recentsView.showAsGrid()) { @@ -414,7 +223,7 @@ constructor( ) return taskGridNavHelper .gridTaskViewIdOffsetPairInTabOrderSequence( - dismissedTaskView.taskViewId, + draggedTaskView.taskViewId, towardsStart, ) .mapNotNull { (taskViewId, columnOffset) -> @@ -424,18 +233,17 @@ constructor( } } else { val taskViewList = recentsView.mUtils.taskViews.toList() - val dismissedTaskViewIndex = taskViewList.indexOf(dismissedTaskView) - if (taskViewList.isEmpty() || dismissedTaskViewIndex == -1) return emptySequence() + val draggedTaskViewIndex = taskViewList.indexOf(draggedTaskView) return if (towardsStart) { taskViewList - .take(dismissedTaskViewIndex) + .take(draggedTaskViewIndex) .reversed() .mapIndexed { index, taskView -> Pair(taskView, index + 1) } .asSequence() } else { taskViewList - .takeLast(taskViewList.size - dismissedTaskViewIndex - 1) + .takeLast(taskViewList.size - draggedTaskViewIndex - 1) .mapIndexed { index, taskView -> Pair(taskView, index + 1) } .asSequence() } @@ -448,7 +256,6 @@ constructor( dampingOffsetRatio: Float, previousNeighborSpringAnimation: SpringAnimation, springingDirectionVertical: Boolean, - neighborSettlingSpringSet: SpringSet, ): SpringAnimation { val springProperty = if (springingDirectionVertical) taskView.secondaryDismissTranslationProperty @@ -471,7 +278,6 @@ constructor( recentsView.redrawLiveTile() } } - neighborSettlingSpringSet.trackSpring(neighboringTaskViewSpringAnimation) // Drive current neighbor's spring with the previous neighbor's. previousNeighborSpringAnimation.addUpdateListener { _, value, _ -> neighboringTaskViewSpringAnimation.animateToFinalPosition(value) @@ -479,679 +285,50 @@ constructor( return neighboringTaskViewSpringAnimation } - /** Animates with springs the TaskViews beyond the dismissed task to fill the gap it left. */ - private fun createTaskGridReflowSpringSet( - dismissedTaskView: TaskView?, - dismissedTaskGap: Float, - gridEndData: GridEndData, - isSplitSelection: Boolean, - ): SpringSet? { - val towardsStart = if (recentsView.isRtl) dismissedTaskGap < 0 else dismissedTaskGap > 0 - // Grid end translation to run after all reflow animations have completed. - val gridEndSpringSet = createGridEndTranslationSpringSet(gridEndData) - val tasksWithOffsetsToReflow = getTasksToReflow(dismissedTaskView, towardsStart) - if (tasksWithOffsetsToReflow.isEmpty()) { - return gridEndSpringSet - } else { - // Empty spring exists for conditional start, and to drive neighboring springs. - val reflowSpringAnimationDriver = - SpringAnimation(FloatValueHolder()) - .setSpring( - createExpressiveGridReflowSpringForce(finalPosition = dismissedTaskGap) - ) - recentsView.mTaskViewsDismissPrimaryTranslations.clear() - // Separate spring end manager for reflow to coordinate start of grid end springs. - val reflowSpringSet = SpringSet(reflowSpringAnimationDriver, dismissedTaskGap) - buildDismissReflowSpringAnimationChain( - tasksWithOffsetsToReflow, - dismissedTaskGap, - previousSpring = reflowSpringAnimationDriver, - reflowSpringSet, - isSplitSelection, + private fun createExpressiveDismissSpringForce(dampingRatioOffset: Float = 0f): SpringForce { + val resourceProvider = DynamicResource.provider(recentsView.mContainer) + return SpringForce() + .setDampingRatio( + resourceProvider.getFloat(R.dimen.expressive_dismiss_task_trans_y_damping_ratio) + + dampingRatioOffset + ) + .setStiffness( + resourceProvider.getFloat(R.dimen.expressive_dismiss_task_trans_y_stiffness) ) - - // Animate the settling of the neighbors as reflow tasks settle into place. - if (dismissedTaskView != null) { - val neighborSettlingSpringSet = - createNeighborSettlingSpringSet( - dismissedTaskView, - tasksToExclude = tasksWithOffsetsToReflow.map { (taskView, _) -> taskView }, - isSpringDirectionVertical = false, - ) - reflowSpringSet.playAfterThreshold( - driverThreshold = dismissedTaskGap, - triggeredSpringSet = neighborSettlingSpringSet, - ) - } - if (gridEndSpringSet != null) { - reflowSpringSet.playAfterThreshold( - driverThreshold = dismissedTaskGap, - triggeredSpringSet = gridEndSpringSet, - ) - } - return reflowSpringSet - } } - private fun getDismissedTaskGapForReflow( - dismissedTaskView: TaskView?, - isSplitSelection: Boolean, - ): Float { - with(recentsView) { - val dismissedTaskGap = - if (dismissedTaskView == null) { - 0f - } else { - // If current page beyond last TaskView's index, use last TaskView to calculate - // offset. - val lastTaskViewIndex = indexOfChild(mUtils.getLastTaskView()) - val currentPage = currentPage.coerceAtMost(lastTaskViewIndex) - val dismissHorizontalFactor = - when { - dismissedTaskView.isGridTask -> 1f - currentPage == lastTaskViewIndex -> -1f - indexOfChild(dismissedTaskView) < currentPage -> -1f - else -> 1f - } * (if (isRtl) 1f else -1f) - (pagedOrientationHandler.getPrimarySize(dismissedTaskView) + pageSpacing) * - dismissHorizontalFactor - } - // Sliding translation for splitting tasks with large tiles present. - val slidingTranslation = - if (isSplitSelection && currentPageTaskView is DesktopTaskView) { - val nextSnappedPage = indexOfChild(mUtils.getFirstNonDesktopTaskView()) - val newClearAllShortTotalWidthTranslation = - getGridEndData(dismissedTaskView = null) - .newClearAllShortTotalWidthTranslation - pagedOrientationHandler.getPrimaryScroll(this) - - getScrollForPage(nextSnappedPage) + - if (isRtl) newClearAllShortTotalWidthTranslation - else -newClearAllShortTotalWidthTranslation - } else { - 0f - } - return dismissedTaskGap + if (isRtl) slidingTranslation else -slidingTranslation - } - } - - private fun getTasksToReflow( - dismissedTaskView: TaskView?, - towardsStart: Boolean, - ): List<Pair<TaskView, Int>> { - // Null if splitting tasks while Desktop tasks are visible. Reflow all remaining grid tasks. - if (dismissedTaskView == null) { - return (recentsView.mUtils.getTopRowTaskViews().mapIndexed { index, taskView -> - taskView to index - } + - recentsView.mUtils.getBottomRowTaskViews().mapIndexed { index, taskView -> - taskView to index - }) - .sortedBy { it.second } - } - val isDismissedTaskViewOnTopRow = recentsView.isOnGridTopRow(dismissedTaskView) - val isDismissedTaskViewOnBottomRow = recentsView.isOnGridBottomRow(dismissedTaskView) - return getTasksOffsetPairAdjacentToDismissedTask(dismissedTaskView, towardsStart) - .filter { (taskView, _) -> - when { - isDismissedTaskViewOnBottomRow -> recentsView.isOnGridBottomRow(taskView) - isDismissedTaskViewOnTopRow -> recentsView.isOnGridTopRow(taskView) - else -> true - } - } - .toList() - } - - private fun willTaskBeVisibleAfterDismiss(taskView: TaskView, taskTranslation: Int): Boolean { - val screenStart = recentsView.pagedOrientationHandler.getPrimaryScroll(recentsView) - val screenEnd = - screenStart + recentsView.pagedOrientationHandler.getMeasuredSize(recentsView) - return recentsView.isTaskViewWithinBounds( - taskView, - screenStart, - screenEnd, - /* taskViewTranslation = */ taskTranslation, - ) - } - - /** Builds a chain of spring animations for task reflow after dismissal */ - private fun buildDismissReflowSpringAnimationChain( - taskViewOffsetPairs: List<Pair<TaskView, Int>>, - dismissedTaskGap: Float, - previousSpring: SpringAnimation, - reflowSpringSet: SpringSet, - isSplitSelection: Boolean, - ): SpringAnimation { - if (taskViewOffsetPairs.isEmpty()) return previousSpring - var lastTaskViewSpring = previousSpring - var previousColumnDriverSpring = previousSpring - var lastColumnOffset = taskViewOffsetPairs.first().second - taskViewOffsetPairs - .filter { (taskView, _) -> - willTaskBeVisibleAfterDismiss(taskView, dismissedTaskGap.roundToInt()) - } - .forEach { (taskView, column) -> - val startValue = - if ( - isSplitSelection && - taskView !is DesktopTaskView && - recentsView.currentPageTaskView is DesktopTaskView && - !recentsView.isTaskViewVisible(taskView) - ) { - dismissedTaskGap + - (if (recentsView.isRtl) -recentsView.mLastComputedTaskSize.right - else recentsView.mLastComputedTaskSize.right) - } else 0f - val taskViewSpringAnimation = - SpringAnimation( - taskView, - FloatPropertyCompat.createFloatPropertyCompat( - taskView.primaryDismissTranslationProperty - ), - ) - .setSpring(createExpressiveGridReflowSpringForce(dismissedTaskGap)) - .setStartValue(startValue) - // Update live tile on spring animation. - if (taskView.isRunningTask && recentsView.enableDrawingLiveTile) { - taskViewSpringAnimation.addUpdateListener { _, _, _ -> - recentsView.runActionOnRemoteHandles { remoteTargetHandle -> - remoteTargetHandle.taskViewSimulator.taskPrimaryTranslation.value = - taskView.primaryDismissTranslationProperty.get(taskView) - } - recentsView.redrawLiveTile() - } - } - // For grid overview, if we are animating tasks in the same column offset, they - // should both be pulled by the previous spring at the same time. - if (column != lastColumnOffset) { - previousColumnDriverSpring = lastTaskViewSpring - lastColumnOffset = column - } - previousColumnDriverSpring.addUpdateListener { _, value, _ -> - taskViewSpringAnimation.animateToFinalPosition(value) - } - lastTaskViewSpring = taskViewSpringAnimation - reflowSpringSet.trackSpring(taskViewSpringAnimation, dismissedTaskGap) - recentsView.mTaskViewsDismissPrimaryTranslations[taskView] = - dismissedTaskGap.toInt() - } - return lastTaskViewSpring - } - - /** Animates the grid to compensate the clear all gap after dismissal. */ - private fun createGridEndTranslationSpringSet(gridEndData: GridEndData): SpringSet? { - val gridEndOffset = gridEndData.gridEndOffset - if (gridEndOffset == 0f) { - return null - } - - // Create spring animation to drive all task view grid translations simultaneously. - val gridEndSpring = - SpringAnimation(FloatValueHolder()) - .setSpring(createExpressiveGridReflowSpringForce(finalPosition = gridEndOffset)) - val gridEndSpringSet = SpringSet(gridEndSpring, gridEndOffset) - recentsView.mUtils.taskViews.forEach { taskView -> - val taskViewGridEndSpringAnimation = - SpringAnimation( - taskView, - FloatPropertyCompat.createFloatPropertyCompat(GRID_END_TRANSLATION_X), - ) - .setSpring(createExpressiveGridReflowSpringForce(gridEndOffset)) - // Update live tile on spring animation. - if (taskView.isRunningTask && recentsView.enableDrawingLiveTile) { - taskViewGridEndSpringAnimation.addUpdateListener { _, _, _ -> - recentsView.runActionOnRemoteHandles { remoteTargetHandle -> - remoteTargetHandle.taskViewSimulator.taskPrimaryTranslation.value = - GRID_END_TRANSLATION_X.get(taskView) - } - recentsView.redrawLiveTile() - } - } - gridEndSpringSet.trackSpring(taskViewGridEndSpringAnimation, gridEndOffset) - gridEndSpring.addUpdateListener { _, value, _ -> - taskViewGridEndSpringAnimation.animateToFinalPosition(value) - } - } - // Animate alpha of clear all if translating grid to hide it. - if (recentsView.isClearAllHidden) { - SpringAnimation( - recentsView.clearAllButton, - FloatPropertyCompat.createFloatPropertyCompat(ClearAllButton.DISMISS_ALPHA), - ) - .setSpring(createExpressiveDismissAlphaSpringForce()) - .addEndListener { _, _, _, _ -> recentsView.clearAllButton.dismissAlpha = 1f } - .animateToFinalPosition(0f) - } - return gridEndSpringSet - } - - /** Returns the distance between the end of the grid and clear all button after dismissal. */ - fun getGridEndData( - dismissedTaskView: TaskView?, - isExpressiveDismiss: Boolean = true, - isFocusedTaskDismissed: Boolean = false, - nextFocusedTaskView: TaskView? = null, - isStagingFocusedTask: Boolean = false, - nextFocusedTaskFromTop: Boolean = false, - nextFocusedTaskWidth: Float = 0f, - ): GridEndData { - var gridEndOffset = 0f - var snapToLastTask = false - var newClearAllShortTotalWidthTranslation: Float - var currentPageSnapsToEndOfGrid: Boolean - with(recentsView) { - val lastGridTaskView = if (showAsGrid()) lastGridTaskView else null - val currentPageScroll = getScrollForPage(currentPage) - val lastGridTaskScroll = getScrollForPage(indexOfChild(lastGridTaskView)) - currentPageSnapsToEndOfGrid = currentPageScroll == lastGridTaskScroll - var topGridRowCount = mTopRowIdSet.size() - var bottomGridRowCount = - taskViewCount - mTopRowIdSet.size() - mUtils.getLargeTileCount() - val topRowLonger = topGridRowCount > bottomGridRowCount - val bottomRowLonger = bottomGridRowCount > topGridRowCount - val dismissedFromTop = - dismissedTaskView != null && mTopRowIdSet.contains(dismissedTaskView.taskViewId) - val dismissedFromBottom = - dismissedTaskView != null && !dismissedFromTop && !dismissedTaskView.isLargeTile - if (dismissedFromTop || (isFocusedTaskDismissed && nextFocusedTaskFromTop)) { - topGridRowCount-- - } - if (dismissedFromBottom || (isFocusedTaskDismissed && !nextFocusedTaskFromTop)) { - bottomGridRowCount-- - } - newClearAllShortTotalWidthTranslation = - getNewClearAllShortTotalWidthTranslation( - topGridRowCount, - bottomGridRowCount, - isStagingFocusedTask, - ) - val isLastGridTaskViewVisibleForDismiss = - when { - lastGridTaskView == null -> false - isExpressiveDismiss -> - isTaskViewVisible(lastGridTaskView) || lastGridTaskView == dismissedTaskView - else -> lastGridTaskView.isVisibleToUser - } - if (!isLastGridTaskViewVisibleForDismiss) { - return GridEndData( - gridEndOffset, - snapToLastTask, - newClearAllShortTotalWidthTranslation, - currentPageSnapsToEndOfGrid, - ) - } - val dismissedTaskWidth = - if (dismissedTaskView == null) 0f - else (dismissedTaskView.layoutParams.width + pageSpacing).toFloat() - val gapWidth = - when { - (topRowLonger && dismissedFromTop) || - (bottomRowLonger && dismissedFromBottom) -> dismissedTaskWidth - nextFocusedTaskView != null && - ((topRowLonger && nextFocusedTaskFromTop) || - (bottomRowLonger && !nextFocusedTaskFromTop)) -> nextFocusedTaskWidth - else -> 0f - } - if (gapWidth > 0) { - if (clearAllShortTotalWidthTranslation == 0) { - val gapCompensation = gapWidth - newClearAllShortTotalWidthTranslation - gridEndOffset += if (isRtl) -gapCompensation else gapCompensation - } - if (isClearAllHidden) { - // If ClearAllButton isn't fully shown, snap to the last task. - snapToLastTask = true - } - } - val isLeftRightSplit = - (mContainer as ActivityContext).getDeviceProfile().isLeftRightSplit && - isSplitSelectionActive - if (isLeftRightSplit && !isStagingFocusedTask) { - // LastTask's scroll is the minimum scroll in split select, if current scroll is - // beyond that, we'll need to snap to last task instead. - getLastGridTaskView()?.let { lastTask -> - val primaryScroll = pagedOrientationHandler.getPrimaryScroll(this) - val lastTaskScroll = getScrollForPage(indexOfChild(lastTask)) - if ( - (isRtl && primaryScroll < lastTaskScroll) || - (!isRtl && primaryScroll > lastTaskScroll) - ) { - snapToLastTask = true - } - } - } - if (snapToLastTask) { - gridEndOffset += snapToLastTaskScrollDiff.toFloat() - } else if (isLeftRightSplit && currentPageSnapsToEndOfGrid) { - // Use last task as reference point for scroll diff and snapping calculation as it's - // the only invariant point in landscape split screen. - snapToLastTask = true - } - - // Handle large tile scroll when dismissing the last small task. - if (mUtils.getGridTaskCount() == 1 && dismissedTaskView?.isGridTask == true) { - mUtils.getLastLargeTaskView()?.let { lastLargeTile -> - val primaryScroll = pagedOrientationHandler.getPrimaryScroll(this) - val lastLargeTileScroll = getScrollForPage(indexOfChild(lastLargeTile)) - gridEndOffset = (primaryScroll - lastLargeTileScroll).toFloat() - - if (!isClearAllHidden) { - // If ClearAllButton is visible, reduce the distance by scroll difference - // between ClearAllButton and the last task. - gridEndOffset += - getLastTaskScroll( - /*clearAllScroll=*/ 0, - pagedOrientationHandler.getPrimarySize(clearAllButton), - ) - .toFloat() - } - } - } - } - return GridEndData( - gridEndOffset, - snapToLastTask, - newClearAllShortTotalWidthTranslation, - currentPageSnapsToEndOfGrid, - ) - } - - private fun getNewClearAllShortTotalWidthTranslation( - topGridRowCount: Int, - bottomGridRowCount: Int, - isStagingFocusedTask: Boolean, - ): Float { - with(recentsView) { - if (clearAllShortTotalWidthTranslation != 0) { - return 0f - } - // If first task is not in the expected position (mLastComputedTaskSize) and too - // close to ClearAllButton, then apply extra translation to ClearAllButton. - var longRowWidth = - max(topGridRowCount, bottomGridRowCount) * - (mLastComputedGridTaskSize.width() + pageSpacing) - if (!enableGridOnlyOverview() && !isStagingFocusedTask) { - longRowWidth += mLastComputedTaskSize.width() + pageSpacing - } - val firstTaskStart = mLastComputedGridSize.left + longRowWidth - val expectedFirstTaskStart = mLastComputedTaskSize.right - // Compensate the removed gap if we don't already have shortTotalCompensation, - // and adjust accordingly to the new shortTotalCompensation after dismiss. - return if (firstTaskStart < expectedFirstTaskStart) { - (expectedFirstTaskStart - firstTaskStart).toFloat() - } else { - 0f - } - } - } - - private fun onEndSnappingAndRelayout( - dismissedTaskView: TaskView?, - shouldRemoveTask: Boolean, - dismissingForSplitSelection: Boolean, - gridEndData: GridEndData, - ) { - with(recentsView) { - if (pageCount == 0) { - return@with - } - updateCurveProperties() - loadVisibleTaskData(TaskView.FLAG_UPDATE_ALL) - - // Page snapping and relayout to run after all animations have completed. - val onFinishComplete = { - // Reset task translations as they may have updated via the dismiss animations. - resetTaskVisuals() - - // Denote if any task has been dismissed for grid rebalancing. - mAnyTaskHasBeenDismissed = true - // Cache group task before removing. - handleGroupTaskRemoval(dismissedTaskView, shouldRemoveTask) - - // Get page to snap to before removing dismissed task. - val dismissedTaskViewId = dismissedTaskView?.taskViewId ?: INVALID_TASK_ID - val pageToSnapTo = - when { - (dismissedTaskView != null && - (!showAsGrid() || dismissedTaskView.isLargeTile)) -> { - getPageToSnapTo(dismissedTaskView) - } - showAsGrid() -> { - getPageToSnapToForGrid(gridEndData, dismissedTaskViewId) - } - else -> { - currentPage - } - } - - // Remove dismissed task. - removeViewInLayout(dismissedTaskView) - mTopRowIdSet.remove(dismissedTaskViewId) - - // Update the UI after removal and snap to page. - updateUiAfterTaskRemoval(dismissedTaskView, pageToSnapTo) - - if (!dismissingForSplitSelection) { - InteractionJankMonitorWrapper.end(Cuj.CUJ_LAUNCHER_OVERVIEW_TASK_DISMISS) - } - } - - // Run the final page snapping and relayout - if (enableDrawingLiveTile && dismissedTaskView?.isRunningTask == true) { - finishRecentsAnimation( - /* toRecents */ true, - /* shouldPip */ false, - onFinishComplete, - ) - } else { - onFinishComplete() - } - } + private fun createExpressiveGridReflowSpringForce( + finalPosition: Float = Float.MAX_VALUE + ): SpringForce { + val resourceProvider = DynamicResource.provider(recentsView.mContainer) + return SpringForce(finalPosition) + .setDampingRatio( + resourceProvider.getFloat(R.dimen.expressive_dismiss_task_trans_x_damping_ratio) + ) + .setStiffness( + resourceProvider.getFloat(R.dimen.expressive_dismiss_task_trans_x_stiffness) + ) } /** - * Caches the groupTask before removing it. As the deskId might become invalid by - * removeViewInLayout called on the dismissed task. It might happen before - * removeGroupTaskInternal which runs on a helper thread. + * Plays a haptic as the dragged task view settles back into its rest state. + * + * <p>Haptic intensity is proportional to velocity. */ - private fun handleGroupTaskRemoval(dismissedTaskView: TaskView?, shouldRemoveTask: Boolean) { - with(recentsView) { - if (shouldRemoveTask && dismissedTaskView != null) { - val groupTask = dismissedTaskView.groupTask - if (groupTask != null) { - // For the multi desk case, the launcher should switch to the new desk once the - // last task of the previous desk is removed. - if ( - areMultiDesksFlagsEnabled() && - context.displayId.isExternalDisplay && - taskViewCount == 1 && - contains(dismissedTaskView) - ) { - mUtils.addOnDeskAddedListener(launchNewDeskListener) - } - if (dismissedTaskView.isRunningTask) { - finishRecentsAnimation(/* toRecents */ true, /* shouldPip */ false) { - removeGroupTaskInternal(groupTask) - } - } else { - removeGroupTaskInternal(groupTask) - } - (mContainer as ActivityContext) - .statsLogManager - .logger() - .withItemInfo(dismissedTaskView.itemInfo) - .log(LauncherEvent.LAUNCHER_TASK_DISMISS_SWIPE_UP) - } - } - } - } - - private fun getPageToSnapTo(dismissedTaskView: TaskView?): Int { - with(recentsView) { - var pageToSnapTo = currentPage - if ( - indexOfChild(dismissedTaskView) < pageToSnapTo || - pageToSnapTo == indexOfChild(mUtils.getLastTaskView()) - ) { - pageToSnapTo-- - } - return pageToSnapTo - } - } - - private fun getPageToSnapToForGrid(gridEndData: GridEndData, dismissedTaskViewId: Int): Int { - with(recentsView) { - var pageToSnapTo = currentPage - var taskViewIdToSnapTo = -1 - currentPageScrollDiff = 0 - - if (gridEndData.gridEndOffset != 0f) { - if (gridEndData.snapToLastTask) { - // Last task will be determined after removing dismissed task. - pageToSnapTo = -1 - } else if (taskViewCount > 2) { - pageToSnapTo = indexOfChild(clearAllButton) - } else if (isClearAllHidden) { - // Snap to focused task if clear all is hidden. - pageToSnapTo = firstTaskViewIndex - } - } else { - val snappedTaskView = currentPageTaskView - if (snappedTaskView != null && !gridEndData.snapToLastTask) { - val snappedTaskViewId = snappedTaskView.taskViewId - val isSnappedTaskInTopRow = mTopRowIdSet.contains(snappedTaskViewId) - val taskViewIdArray = - if (isSnappedTaskInTopRow) { - mUtils.getTopRowIdArray() - } else { - mUtils.getBottomRowIdArray() - } - val snappedIndex = taskViewIdArray.indexOf(snappedTaskViewId) - taskViewIdArray.removeValue(dismissedTaskViewId) - if (snappedIndex >= 0 && snappedIndex < taskViewIdArray.size()) { - taskViewIdToSnapTo = taskViewIdArray[snappedIndex] - } else if (snappedIndex == taskViewIdArray.size()) { - val inverseRowTaskViewIdArray = - if (isSnappedTaskInTopRow) { - mUtils.getBottomRowIdArray() - } else { - mUtils.getTopRowIdArray() - } - if (snappedIndex < inverseRowTaskViewIdArray.size()) { - taskViewIdToSnapTo = inverseRowTaskViewIdArray[snappedIndex] - } - } - } - val primaryScroll = pagedOrientationHandler.getPrimaryScroll(this) - val currentPageScroll = getScrollForPage(currentPage) - currentPageScrollDiff = primaryScroll - currentPageScroll - } - - // Calculate page to snap to as if the dismissed task view is removed from the grid. - val topRowIdArray = mUtils.getTopRowIdArray() - val bottomRowIdArray = mUtils.getBottomRowIdArray() - topRowIdArray.removeValue(dismissedTaskViewId) - bottomRowIdArray.removeValue(dismissedTaskViewId) - val children = - children.filter { child -> child != getTaskViewFromTaskViewId(dismissedTaskViewId) } - if (gridEndData.snapToLastTask) { - val lastGridTaskView = getLastGridTaskView(topRowIdArray, bottomRowIdArray) - pageToSnapTo = - if (lastGridTaskView == null) PagedView.INVALID_PAGE - else children.indexOf(lastGridTaskView as View) - if (pageToSnapTo == PagedView.INVALID_PAGE) { - val lastLargeTaskView = mUtils.getLastLargeTaskView() - pageToSnapTo = - if (lastLargeTaskView == null) PagedView.INVALID_PAGE - else children.indexOf(lastLargeTaskView as View) - } - } else if (taskViewIdToSnapTo != -1) { - // If snapping to another page due to indices rearranging, find - // the new index after dismissal & rearrange using the TaskView ID. - pageToSnapTo = - children.indexOf(getTaskViewFromTaskViewId(taskViewIdToSnapTo) as View) - if (!gridEndData.currentPageSnapsToEndOfGrid) { - val dismissedTaskViewIndex = - indexOfChild(getTaskViewFromTaskViewId(dismissedTaskViewId)) - currentPageScrollDiff += - getOffsetFromScrollPosition( - pageToSnapTo, - topRowIdArray, - bottomRowIdArray, - dismissedTaskViewIndex, - ) - } - } - return pageToSnapTo - } - } - - private fun updateUiAfterTaskRemoval(dismissedTaskView: TaskView?, pageToSnapTo: Int) { - with(recentsView) { - if (taskViewCount == 0) { - if (!isSplitSelectionActive) { - removeViewInLayout(clearAllButton) - removeViewInLayout(addDeskButton) - if (dismissedTaskView === homeTaskView) { - updateEmptyMessage() - } else { - if (!areMultiDesksFlagsEnabled() || context.displayId.isDefaultDisplay) { - startHome() - } - } - } - } else { - updateTaskSize() - mUtils.updateChildTaskOrientations() - updateScrollSynchronously() - - val highestVisibleTaskView = getHighestVisibleTaskView() - if (showAsGrid() && highestVisibleTaskView != null) { - rebalanceTasksInGrid(highestVisibleTaskView) - } - pageBeginTransition() - currentPage = pageToSnapTo - dispatchScrollChanged() - updateActionsViewFocusedScroll() - if ( - isClearAllHidden && - !(mContainer as ActivityContext) - .getDeviceProfile() - .deviceProperties - .isTablet - ) { - actionsView.updateDisabledFlags(OverviewActionsView.DISABLED_SCROLLING, false) - } - } - updateCurrentTaskActionsVisibility() - onDismissAnimationEnds() - mTaskViewsDismissPrimaryTranslations.clear() - } - } - - private fun rebalanceTasksInGrid(highestVisibleTaskView: TaskView) { - with(recentsView) { - val screenStart = pagedOrientationHandler.getPrimaryScroll(this) - val taskStart = - (pagedOrientationHandler.getChildStart(highestVisibleTaskView) + - highestVisibleTaskView.getOffsetAdjustment(true).toInt()) - - val shouldRebalance = - if (isRtl) { - taskStart <= screenStart + pageSpacing - } else { - val screenEnd = (screenStart + pagedOrientationHandler.getMeasuredSize(this)) - val taskSize = - (pagedOrientationHandler.getMeasuredSize(highestVisibleTaskView) * - highestVisibleTaskView.getSizeAdjustment(false)) - .toInt() - val taskEnd = taskStart + taskSize - taskEnd >= screenEnd - pageSpacing - } - - if (shouldRebalance) { - updateGridProperties(highestVisibleTaskView) - updateScrollSynchronously() - } - } + private fun playDismissSettlingHaptic(velocity: Float) { + val maxDismissSettlingVelocity = + recentsView.pagedOrientationHandler.getSecondaryDimension(recentsView) + MSDLPlayerWrapper.INSTANCE.get(recentsView.context) + ?.playToken( + MSDLToken.CANCEL, + InteractionProperties.DynamicVibrationScale( + boundToRange(abs(velocity) / maxDismissSettlingVelocity, 0f, 1f), + VibrationAttributes.Builder() + .setUsage(VibrationAttributes.USAGE_TOUCH) + .setFlags(VibrationAttributes.FLAG_PIPELINED_EFFECT) + .build(), + ), + ) } /** Animates RecentsView's scale to the provided value, using spring animations. */ @@ -1182,206 +359,228 @@ constructor( .apply { animateToFinalPosition(RECENTS_SCALE_SPRING_MULTIPLIER * scale) } } - private fun createExpressiveDismissSpringForce(dampingRatioOffset: Float = 0f): SpringForce { - val resourceProvider = DynamicResource.provider(recentsView.mContainer) - return SpringForce() - .setDampingRatio( - resourceProvider.getFloat(R.dimen.expressive_dismiss_task_trans_y_damping_ratio) + - dampingRatioOffset - ) - .setStiffness( - resourceProvider.getFloat(R.dimen.expressive_dismiss_task_trans_y_stiffness) + /** Animates with springs the TaskViews beyond the dismissed task to fill the gap it left. */ + private fun runTaskGridReflowSpringAnimation( + dismissedTaskView: TaskView, + dismissedTaskGap: Float, + onEndRunnable: () -> Unit, + ) { + // Empty spring animation exists for conditional start, and to drive neighboring springs. + val springAnimationDriver = + SpringAnimation(FloatValueHolder()) + .setSpring(createExpressiveGridReflowSpringForce(finalPosition = dismissedTaskGap)) + val towardsStart = if (recentsView.isRtl) dismissedTaskGap < 0 else dismissedTaskGap > 0 + + var tasksToReflow: List<TaskView> + // Build the chains of Spring Animations + when { + !recentsView.showAsGrid() -> { + tasksToReflow = + getTasksToReflow( + recentsView.mUtils.taskViews.toList(), + dismissedTaskView, + towardsStart, + ) + buildDismissReflowSpringAnimationChain( + tasksToReflow, + dismissedTaskGap, + previousSpring = springAnimationDriver, + ) + } + dismissedTaskView.isLargeTile -> { + tasksToReflow = + getTasksToReflow( + recentsView.mUtils.getLargeTaskViews(), + dismissedTaskView, + towardsStart, + ) + val lastSpringAnimation = + buildDismissReflowSpringAnimationChain( + tasksToReflow, + dismissedTaskGap, + previousSpring = springAnimationDriver, + ) + // Add all top and bottom grid tasks when animating towards the end of the grid. + if (!towardsStart) { + tasksToReflow += recentsView.mUtils.getTopRowTaskViews() + tasksToReflow += recentsView.mUtils.getBottomRowTaskViews() + buildDismissReflowSpringAnimationChain( + recentsView.mUtils.getTopRowTaskViews(), + dismissedTaskGap, + previousSpring = lastSpringAnimation, + ) + buildDismissReflowSpringAnimationChain( + recentsView.mUtils.getBottomRowTaskViews(), + dismissedTaskGap, + previousSpring = lastSpringAnimation, + ) + } + } + recentsView.isOnGridBottomRow(dismissedTaskView) -> { + tasksToReflow = + getTasksToReflow( + recentsView.mUtils.getBottomRowTaskViews(), + dismissedTaskView, + towardsStart, + ) + buildDismissReflowSpringAnimationChain( + tasksToReflow, + dismissedTaskGap, + previousSpring = springAnimationDriver, + ) + } + else -> { + tasksToReflow = + getTasksToReflow( + recentsView.mUtils.getTopRowTaskViews(), + dismissedTaskView, + towardsStart, + ) + buildDismissReflowSpringAnimationChain( + tasksToReflow, + dismissedTaskGap, + previousSpring = springAnimationDriver, + ) + } + } + + if (tasksToReflow.isNotEmpty()) { + addNeighborSettlingSpringAnimations( + dismissedTaskView, + springAnimationDriver, + tasksToExclude = tasksToReflow, + driverProgressThreshold = dismissedTaskGap, + isSpringDirectionVertical = false, + minVelocity = 0f, ) + } else { + springAnimationDriver.addEndListener { _, _, _, _ -> + // Play the same haptic as when neighbors spring into place. + MSDLPlayerWrapper.INSTANCE.get(recentsView.context)?.playToken(MSDLToken.CANCEL) + } + } + + // Start animations and remove the dismissed task at the end, dismiss immediately if no + // neighboring tasks exist. + val runGridEndAnimationAndRelayout = { + recentsView.expressiveDismissTaskView(dismissedTaskView, onEndRunnable) + } + springAnimationDriver?.apply { + addEndListener { _, _, _, _ -> runGridEndAnimationAndRelayout() } + animateToFinalPosition(dismissedTaskGap) + } ?: runGridEndAnimationAndRelayout() } - private fun createExpressiveGridReflowSpringForce( - finalPosition: Float = Float.MAX_VALUE - ): SpringForce { - val resourceProvider = DynamicResource.provider(recentsView.mContainer) - return SpringForce(finalPosition) - .setDampingRatio( - resourceProvider.getFloat(R.dimen.expressive_dismiss_task_trans_x_damping_ratio) - ) - .setStiffness( - resourceProvider.getFloat(R.dimen.expressive_dismiss_task_trans_x_stiffness) - ) + private fun getDismissedTaskGapForReflow(dismissedTaskView: TaskView): Float { + val screenStart = recentsView.pagedOrientationHandler.getPrimaryScroll(recentsView) + val screenEnd = + screenStart + recentsView.pagedOrientationHandler.getMeasuredSize(recentsView) + val taskStart = + recentsView.pagedOrientationHandler.getChildStart(dismissedTaskView) + + dismissedTaskView.getOffsetAdjustment(recentsView.showAsGrid()) + val taskSize = + recentsView.pagedOrientationHandler.getMeasuredSize(dismissedTaskView) * + dismissedTaskView.getSizeAdjustment(recentsView.showAsFullscreen()) + val taskEnd = taskStart + taskSize + + val isDismissedTaskBeyondEndOfScreen = + if (recentsView.isRtl) taskEnd > screenEnd else taskStart < screenStart + if ( + dismissedTaskView.isLargeTile && + isDismissedTaskBeyondEndOfScreen && + recentsView.mUtils.getLargeTileCount() == 1 + ) { + return with(recentsView) { + pagedOrientationHandler.getPrimaryScroll(this) - + getScrollForPage(indexOfChild(mUtils.getFirstNonDesktopTaskView())) + } + .toFloat() + } + + // If current page is beyond last TaskView's index, use last TaskView to calculate offset. + val lastTaskViewIndex = recentsView.indexOfChild(recentsView.mUtils.getLastTaskView()) + val currentPage = recentsView.currentPage.coerceAtMost(lastTaskViewIndex) + val dismissHorizontalFactor = + when { + dismissedTaskView.isGridTask -> 1f + currentPage == lastTaskViewIndex -> -1f + recentsView.indexOfChild(dismissedTaskView) < currentPage -> -1f + else -> 1f + } * (if (recentsView.isRtl) 1f else -1f) + + return (recentsView.pagedOrientationHandler.getPrimarySize(dismissedTaskView) + + recentsView.pageSpacing) * dismissHorizontalFactor } - private fun createExpressiveDismissAlphaSpringForce(): SpringForce { - val resourceProvider = DynamicResource.provider(recentsView.mContainer) - return SpringForce() - .setDampingRatio( - resourceProvider.getFloat(R.dimen.expressive_dismiss_effects_damping_ratio) - ) - .setStiffness(resourceProvider.getFloat(R.dimen.expressive_dismiss_effects_stiffness)) - } - - /** - * Plays a set of {@link SpringAnimation} objects in the specified order. - * - * <p>Animations can play together, in sequence, or after a specified threshold is passed. - */ - class SpringSet(private val driverSpring: SpringAnimation, driverSpringThreshold: Float = 0f) { - private val trackedSprings = mutableSetOf<SpringAnimation>() - private val trackedSpringSets = mutableSetOf<SpringSet>() - private var runningSpringCount = 0 - private val startListenerSet = mutableSetOf<() -> Unit>() - private val endListenerSet = mutableSetOf<() -> Unit>() - private var hasStarted = false - private var hasEnded = false - - init { - trackSpring(driverSpring, driverSpringThreshold) + private fun getTasksToReflow( + taskViews: List<TaskView>, + dismissedTaskView: TaskView, + towardsStart: Boolean, + ): List<TaskView> { + val dismissedTaskViewIndex = taskViews.indexOf(dismissedTaskView) + if (dismissedTaskViewIndex == -1) { + return emptyList() } - - fun start(): SpringSet { - if (hasStarted) { - return this - } - hasStarted = true - if (trackedSprings.isEmpty()) { - onEnd() - return this - } - driverSpring.start() - startListenerSet.forEach { it() } - return this - } - - private fun onEnd() { - if (hasEnded) { - return - } - hasEnded = true - endListenerSet.forEach { it() } - } - - fun cancel(): SpringSet { - driverSpring.cancel() - trackedSprings.forEach { it.cancel() } - trackedSpringSets.forEach { it.cancel() } - onEnd() - return this - } - - /** - * Increase spring constants to force animations to end quickly. - * - * <p>A high stiffness applies more force to the object to bring it to its end value. A - * damping ratio of 1f is critically damped, and the object will return to equilibrium - * within the shortest amount of time. - */ - fun speedUpSpringsToEnd(): SpringSet { - trackedSprings.forEach { - it.spring.setStiffness(SPEED_UP_STIFFNESS).setDampingRatio(1f) - } - trackedSpringSets.forEach { it.speedUpSpringsToEnd() } - return this - } - - fun addStartListener(startListener: () -> Unit): SpringSet { - startListenerSet.add(startListener) - return this - } - - fun addEndListener(endRunnable: () -> Unit): SpringSet { - endListenerSet.add(endRunnable) - return this - } - - fun trackSpring(spring: SpringAnimation, minimumDistance: Float = 0f): SpringSet { - if (trackedSprings.contains(spring)) { - throw IllegalArgumentException("SpringSet already contains this spring.") - } - trackedSprings.add(spring) - runningSpringCount++ - var canSpringEnd = false - spring.addUpdateListener { _, value, _ -> - // Do not allow end listener to fire until we have passed the minimum distance. - if (!canSpringEnd && abs(value - minimumDistance) < spring.minimumVisibleChange) { - canSpringEnd = true - } - } - spring.addEndListener { _, _, _, _ -> - if (!canSpringEnd || runningSpringCount == 0) { - return@addEndListener - } - if (--runningSpringCount == 0) { - onEnd() - } - } - return this - } - - private fun trackSpringSet(springSet: SpringSet): SpringSet { - runningSpringCount++ - trackedSpringSets.add(springSet) - springSet.addEndListener { - if (--runningSpringCount == 0) { - onEnd() - } - } - return this - } - - fun playAfterThreshold( - driverThreshold: Float, - triggeredSpringSet: SpringSet, - minVelocity: Float = 0f, - ): SpringSet { - trackSpringSet(triggeredSpringSet) - var lastPosition = 0f - var isTriggered = false - driverSpring.addUpdateListener { _, value, velocity -> - // We do not compare to the threshold directly, as the update listener - // does not necessarily hit every value. Do not check again once it has started - // settling, as a spring can bounce past the end value multiple times. - if (isTriggered) return@addUpdateListener - if ( - lastPosition < driverThreshold && value >= driverThreshold || - lastPosition > driverThreshold && value <= driverThreshold - ) { - isTriggered = true - } - lastPosition = value - if (isTriggered) { - val startVelocity = - abs(velocity).coerceAtLeast(abs(minVelocity)) * velocity.sign - triggeredSpringSet.driverSpring.setStartVelocity(startVelocity) - triggeredSpringSet.start() - } - } - return this - } - - fun playTogether(springs: List<SpringAnimation>): SpringSet { - springs.forEach { - trackSpring(it) - addStartListener { it.start() } - } - return this + return if (towardsStart) { + taskViews.take(dismissedTaskViewIndex).reversed() + } else { + taskViews.takeLast(taskViews.size - dismissedTaskViewIndex - 1) } } - data class GridEndData( - val gridEndOffset: Float, - val snapToLastTask: Boolean, - val newClearAllShortTotalWidthTranslation: Float, - val currentPageSnapsToEndOfGrid: Boolean, - ) + private fun willTaskBeVisibleAfterDismiss(taskView: TaskView, taskTranslation: Int): Boolean { + val screenStart = recentsView.pagedOrientationHandler.getPrimaryScroll(recentsView) + val screenEnd = + screenStart + recentsView.pagedOrientationHandler.getMeasuredSize(recentsView) + return recentsView.isTaskViewWithinBounds( + taskView, + screenStart, + screenEnd, + /* taskViewTranslation = */ taskTranslation, + ) + } - data class DismissedTaskData( - val startVelocity: Float, - val dismissLength: Int, - val finalPosition: Float, - val dismissThreshold: Int, - ) + /** Builds a chain of spring animations for task reflow after dismissal */ + private fun buildDismissReflowSpringAnimationChain( + taskViews: Iterable<TaskView>, + dismissedTaskGap: Float, + previousSpring: SpringAnimation, + ): SpringAnimation { + var lastTaskViewSpring = previousSpring + taskViews + .filter { taskView -> + willTaskBeVisibleAfterDismiss(taskView, dismissedTaskGap.roundToInt()) + } + .forEach { taskView -> + val taskViewSpringAnimation = + SpringAnimation( + taskView, + FloatPropertyCompat.createFloatPropertyCompat( + taskView.primaryDismissTranslationProperty + ), + ) + .setSpring(createExpressiveGridReflowSpringForce(dismissedTaskGap)) + // Update live tile on spring animation. + if (taskView.isRunningTask && recentsView.enableDrawingLiveTile) { + taskViewSpringAnimation.addUpdateListener { _, _, _ -> + recentsView.runActionOnRemoteHandles { remoteTargetHandle -> + remoteTargetHandle.taskViewSimulator.taskPrimaryTranslation.value = + taskView.primaryDismissTranslationProperty.get(taskView) + } + recentsView.redrawLiveTile() + } + } + lastTaskViewSpring.addUpdateListener { _, value, _ -> + taskViewSpringAnimation.animateToFinalPosition(value) + } + lastTaskViewSpring = taskViewSpringAnimation + } + return lastTaskViewSpring + } private companion object { // The additional damping to apply to tasks further from the dismissed task. private const val ADDITIONAL_DISMISS_DAMPING_RATIO = 0.15f private const val RECENTS_SCALE_SPRING_MULTIPLIER = 1000f - private const val DEFAULT_DISMISS_THRESHOLD_FRACTION = 0.5f - private const val SPEED_UP_STIFFNESS = 100_000f } } diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java index 4c3b0ae953..63bb799c97 100644 --- a/quickstep/src/com/android/quickstep/views/RecentsView.java +++ b/quickstep/src/com/android/quickstep/views/RecentsView.java @@ -19,6 +19,7 @@ package com.android.quickstep.views; import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.os.Trace.traceBegin; import static android.os.Trace.traceEnd; +import static android.view.Surface.ROTATION_0; import static android.view.View.MeasureSpec.EXACTLY; import static android.view.View.MeasureSpec.makeMeasureSpec; @@ -34,12 +35,14 @@ import static com.android.app.animation.Interpolators.LINEAR; import static com.android.app.animation.Interpolators.clampToProgress; import static com.android.launcher3.AbstractFloatingView.TYPE_REBIND_SAFE; import static com.android.launcher3.BaseActivity.STATE_HANDLER_INVISIBILITY_FLAGS; -import static com.android.launcher3.Flags.enableCoroutineThreadingImprovements; +import static com.android.launcher3.Flags.enableAdditionalHomeAnimations; import static com.android.launcher3.Flags.enableDesktopExplodedView; -import static com.android.launcher3.Flags.enableExpressiveDismissTaskMotion; +import static com.android.launcher3.Flags.enableDesktopTaskAlphaAnimation; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.launcher3.Flags.enableLargeDesktopWindowingTile; import static com.android.launcher3.Flags.enableOverviewBackgroundWallpaperBlur; import static com.android.launcher3.Flags.enableRefactorTaskThumbnail; +import static com.android.launcher3.Flags.enableSeparateExternalDisplayTasks; import static com.android.launcher3.LauncherAnimUtils.SUCCESS_TRANSITION_PROGRESS; import static com.android.launcher3.LauncherAnimUtils.VIEW_ALPHA; import static com.android.launcher3.LauncherAnimUtils.VIEW_BACKGROUND_COLOR; @@ -60,7 +63,6 @@ import static com.android.launcher3.touch.PagedOrientationHandler.CANVAS_TRANSLA import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; import static com.android.launcher3.util.MultiPropertyFactory.MULTI_PROPERTY_VALUE; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; import static com.android.launcher3.util.SystemUiController.UI_STATE_FULLSCREEN_TASK; import static com.android.quickstep.BaseContainerInterface.getTaskDimension; import static com.android.quickstep.TaskUtils.checkCurrentOrManagedUserId; @@ -79,6 +81,8 @@ import static com.android.quickstep.views.TaskView.SPLIT_ALPHA; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; +import android.animation.LayoutTransition; +import android.animation.LayoutTransition.TransitionListener; import android.animation.ObjectAnimator; import android.animation.PropertyValuesHolder; import android.animation.ValueAnimator; @@ -87,7 +91,6 @@ import android.app.WindowConfiguration; import android.content.Context; import android.content.Intent; import android.content.LocusId; -import android.content.pm.LauncherApps; import android.content.res.Configuration; import android.graphics.Bitmap; import android.graphics.BlendMode; @@ -99,6 +102,7 @@ import android.graphics.PointF; import android.graphics.PorterDuff; import android.graphics.Rect; import android.graphics.RectF; +import android.graphics.Typeface; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.os.SystemClock; @@ -108,7 +112,6 @@ import android.os.VibrationEffect; import android.text.Layout; import android.text.StaticLayout; import android.text.TextPaint; -import android.util.ArraySet; import android.util.AttributeSet; import android.util.FloatProperty; import android.util.Log; @@ -121,6 +124,7 @@ import android.view.MotionEvent; import android.view.RemoteAnimationTarget; import android.view.View; import android.view.ViewDebug; +import android.view.ViewGroup; import android.view.ViewTreeObserver.OnScrollChangedListener; import android.view.accessibility.AccessibilityEvent; import android.view.accessibility.AccessibilityNodeInfo; @@ -141,9 +145,8 @@ import androidx.dynamicanimation.animation.SpringAnimation; import com.android.internal.jank.Cuj; import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.BaseActivity.MultiWindowModeChangedListener; -import com.android.launcher3.BuildConfig; -import com.android.launcher3.BuildConfigs; import com.android.launcher3.DeviceProfile; +import com.android.launcher3.Flags; import com.android.launcher3.Insettable; import com.android.launcher3.PagedView; import com.android.launcher3.R; @@ -155,9 +158,7 @@ import com.android.launcher3.anim.PendingAnimation; import com.android.launcher3.anim.SpringProperty; import com.android.launcher3.compat.AccessibilityManagerCompat; import com.android.launcher3.config.FeatureFlags; -import com.android.launcher3.dagger.LauncherComponentProvider; import com.android.launcher3.desktop.DesktopRecentsTransitionController; -import com.android.launcher3.deviceprofile.OverviewProfile; import com.android.launcher3.logger.LauncherAtom; import com.android.launcher3.logging.StatsLogManager; import com.android.launcher3.model.data.ItemInfo; @@ -175,19 +176,20 @@ import com.android.launcher3.util.IntArray; import com.android.launcher3.util.IntSet; import com.android.launcher3.util.ResourceBasedOverride.Overrides; import com.android.launcher3.util.RunnableList; +import com.android.launcher3.util.SplitConfigurationOptions.SplitBounds; import com.android.launcher3.util.SplitConfigurationOptions.SplitSelectSource; import com.android.launcher3.util.SplitConfigurationOptions.StagePosition; +import com.android.launcher3.util.Themes; import com.android.launcher3.util.TraceHelper; import com.android.launcher3.util.TranslateEdgeEffect; import com.android.launcher3.util.VibratorWrapper; import com.android.launcher3.util.ViewPool; import com.android.launcher3.util.coroutines.DispatcherProvider; -import com.android.launcher3.util.coroutines.ProductionDispatchers; +import com.android.launcher3.util.window.WindowManagerProxy.DesktopVisibilityListener; import com.android.quickstep.BaseContainerInterface; import com.android.quickstep.GestureState; import com.android.quickstep.HighResLoadingState; import com.android.quickstep.OverviewCommandHelper; -import com.android.quickstep.OverviewComponentObserver; import com.android.quickstep.RecentsAnimationController; import com.android.quickstep.RecentsAnimationTargets; import com.android.quickstep.RecentsFilterState; @@ -202,10 +204,8 @@ import com.android.quickstep.TaskOverlayFactory; import com.android.quickstep.TaskViewUtils; import com.android.quickstep.TopTaskTracker; import com.android.quickstep.ViewUtils; -import com.android.quickstep.fallback.window.RecentsWindowManager; +import com.android.quickstep.fallback.window.RecentsWindowFlags; import com.android.quickstep.orientation.RecentsPagedOrientationHandler; -import com.android.quickstep.recents.data.AppTimersRepository; -import com.android.quickstep.recents.data.AppTimersRepositoryImpl; import com.android.quickstep.recents.data.RecentTasksRepository; import com.android.quickstep.recents.data.RecentsDeviceProfileRepository; import com.android.quickstep.recents.data.RecentsDeviceProfileRepositoryImpl; @@ -217,7 +217,6 @@ import com.android.quickstep.recents.viewmodel.RecentsViewModel; import com.android.quickstep.util.ActiveGestureProtoLogProxy; import com.android.quickstep.util.AnimUtils; import com.android.quickstep.util.DesktopTask; -import com.android.quickstep.util.FontUtils; import com.android.quickstep.util.GroupTask; import com.android.quickstep.util.LayoutUtils; import com.android.quickstep.util.RecentsAtomicAnimationFactory; @@ -247,11 +246,10 @@ import com.android.wm.shell.common.pip.IPipAnimationListener; import com.android.wm.shell.shared.GroupedTaskInfo; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource; -import com.android.wm.shell.shared.pip.PipFlags; -import com.android.wm.shell.shared.split.SplitBounds; import kotlin.Unit; import kotlin.collections.CollectionsKt; +import kotlin.jvm.functions.Function0; import kotlinx.coroutines.CoroutineScope; @@ -262,12 +260,11 @@ import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Optional; import java.util.Set; -import java.util.concurrent.atomic.AtomicBoolean; import java.util.function.Consumer; import java.util.stream.Collectors; - /** * A list of recent tasks. * @@ -278,7 +275,7 @@ public abstract class RecentsView< CONTAINER_TYPE extends Context & RecentsViewContainer & StatefulContainer<STATE_TYPE>, STATE_TYPE extends BaseState<STATE_TYPE>> extends PagedView implements Insettable, HighResLoadingState.HighResLoadingStateChangedCallback, - TaskVisualsChangeListener { + TaskVisualsChangeListener, DesktopVisibilityListener { protected static final String TAG = "RecentsView"; private static final boolean DEBUG = false; @@ -520,7 +517,7 @@ public abstract class RecentsView< private static final float FOREGROUND_SCRIM_TINT = 0.32f; protected final RecentsOrientedState mOrientationState; - protected final BaseContainerInterface<STATE_TYPE, ?> mContainerInterface; + protected final BaseContainerInterface<STATE_TYPE, ?> mSizeStrategy; @Nullable protected RecentsAnimationController mRecentsAnimationController; @Nullable @@ -550,7 +547,7 @@ public abstract class RecentsView< private final PointF mTempPointF = new PointF(); private final Matrix mTempMatrix = new Matrix(); private final float[] mTempFloat = new float[1]; - private final ArraySet<OnScrollChangedListener> mScrollListeners = new ArraySet<>(); + private final List<OnScrollChangedListener> mScrollListeners = new ArrayList<>(); // The threshold at which we update the SystemUI flags when animating from the task into the app public static final float UPDATE_SYSUI_FLAGS_THRESHOLD = 0.85f; @@ -630,7 +627,8 @@ public abstract class RecentsView< private int mKeyboardTaskFocusSnapAnimationDuration; private int mKeyboardTaskFocusIndex = INVALID_PAGE; - protected Map<TaskView, Integer> mTaskViewsDismissPrimaryTranslations = new HashMap<>(); + private Map<TaskView, Integer> mTaskViewsDismissPrimaryTranslations = + new HashMap<TaskView, Integer>(); /** * TODO: Call reloadIdNeeded in onTaskStackChanged. @@ -659,9 +657,8 @@ public abstract class RecentsView< return; } - // Only invalidate task list but don't trigger the reload, so that the list is only - // updated the next time user enters Overview - invalidateTaskList(); + reloadIfNeeded(); + enableLayoutTransitions(); } @Override @@ -690,8 +687,7 @@ public abstract class RecentsView< if (taskRemoved) { dismissTask(taskId, /*animate=*/true, /*removeTask=*/false); } - }, RecentsFilterState.getFilter(mFilterState.getPackageNameToFilter(), - mContainer.getDisplayId())); + }, RecentsFilterState.getFilter(mFilterState.getPackageNameToFilter())); } })); } @@ -704,7 +700,7 @@ public abstract class RecentsView< // Used to keep track of the last requested task list id, so that we do not request to load the // tasks again if we have already requested it and the task list has not changed - private int mAppliedTaskListChangeId = -1; + private int mTaskListChangeId = -1; // Only valid until the launcher state changes to NORMAL /** @@ -730,6 +726,8 @@ public abstract class RecentsView< @Nullable private PendingAnimation mPendingAnimation; + @Nullable + private LayoutTransition mLayoutTransition; @ViewDebug.ExportedProperty(category = "launcher") protected float mContentAlpha = 1; @@ -761,7 +759,6 @@ public abstract class RecentsView< /** * Placeholder view indicating where the first split screen selected app will be placed */ - @Nullable protected SplitSelectStateController mSplitSelectStateController; /** @@ -829,8 +826,6 @@ public abstract class RecentsView< @Nullable private DesktopRecentsTransitionController mDesktopRecentsTransitionController; - private boolean mIs3PLauncher = false; - private MultiWindowModeChangedListener mMultiWindowModeChangedListener = new MultiWindowModeChangedListener() { @Override @@ -864,13 +859,12 @@ public abstract class RecentsView< * RecentsView being open and displayed to the user. It is reset in the {@link #reset()} method * i.e. when RecentsView closes. */ - protected boolean mAnyTaskHasBeenDismissed; + private boolean mAnyTaskHasBeenDismissed; protected final RecentsViewModel mRecentsViewModel; private final RecentsViewModelHelper mHelper; protected final RecentsViewUtils mUtils = new RecentsViewUtils(this); - protected final RecentsDismissUtils mDismissUtils = LauncherComponentProvider.get( - getContext()).getRecentsDismissUtilsFactory().create(this); + protected final RecentsDismissUtils mDismissUtils = new RecentsDismissUtils(this); private final Matrix mTmpMatrix = new Matrix(); @@ -883,31 +877,27 @@ public abstract class RecentsView< return mUtils.getFirstTaskView(); } - public int getFirstTaskViewIndex() { - return indexOfChild(getFirstTaskView()); - } - public RecentsView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); setEnableFreeScroll(true); mContainer = RecentsViewContainer.containerFromContext(context); - mContainerInterface = mContainer.getContainerInterface(); + mSizeStrategy = getContainerInterface(mContainer.getDisplayId()); + mOrientationState = new RecentsOrientedState( - context, mContainerInterface, this::animateRecentsRotationInPlace); + context, mSizeStrategy, this::animateRecentsRotationInPlace); final int rotation; rotation = Utilities.ATLEAST_R ? mContainer.getDisplay().getRotation() : WindowConfiguration.ROTATION_UNDEFINED; mOrientationState.setRecentsRotation(rotation); // Start Recents Dependency graph if (enableRefactorTaskThumbnail()) { - RecentsDependencies recentsDependencies = - RecentsDependencies.maybeInitialize(context, ProductionDispatchers.INSTANCE); + RecentsDependencies recentsDependencies = RecentsDependencies.Companion.maybeInitialize( + context); String scopeId = recentsDependencies.createRecentsViewScope(context); mRecentsViewModel = new RecentsViewModel( recentsDependencies.inject(RecentTasksRepository.class, scopeId), - recentsDependencies.inject(RecentsViewData.class, scopeId), - mContainer.getDisplayId() + recentsDependencies.inject(RecentsViewData.class, scopeId) ); mHelper = new RecentsViewModelHelper( mRecentsViewModel, @@ -920,12 +910,6 @@ public abstract class RecentsView< recentsDependencies.provide(RecentsDeviceProfileRepository.class, scopeId, () -> new RecentsDeviceProfileRepositoryImpl(mContainer)); - - recentsDependencies.provide(AppTimersRepository.class, scopeId, - () -> new AppTimersRepositoryImpl( - context.getApplicationContext().getSystemService(LauncherApps.class), - recentsDependencies.inject(DispatcherProvider.class, scopeId) - )); } else { mRecentsViewModel = null; mHelper = null; @@ -941,22 +925,12 @@ public abstract class RecentsView< .inflate(R.layout.overview_clear_all_button, this, false); mClearAllButton.setOnClickListener(this::dismissAllTasks); - if (DesktopModeStatus.isMultipleDesktopFrontendEnabledOnDisplay(mContext, - mContainer.getDisplay())) { + if (DesktopModeStatus.enableMultipleDesktops(context)) { mAddDesktopButton = (AddDesktopButton) LayoutInflater.from(context).inflate( R.layout.overview_add_desktop_button, this, false); - mAddDesktopButton.setOnClickListener(view -> { - AddDesktopButton button = (AddDesktopButton) view; - button.animateVisibility(/* toVisible = */ false, () -> { - createDesk(view); - button.animateVisibility(/* toVisible = */ true); - }); - }); + mAddDesktopButton.setOnClickListener(this::createDesk); - mDesktopVisibilityController = DesktopVisibilityController.INSTANCE.get(mContext); - // Update its visibility based on whether we can create a desk or not. - mUtils.onCanCreateDesksChanged( - mDesktopVisibilityController.getCanCreateDesks()); + mDesktopVisibilityController = DesktopVisibilityController.INSTANCE.get(context); } mTaskViewPool = new ViewPool<>(context, this, R.layout.task, 20 /* max size */, @@ -964,7 +938,7 @@ public abstract class RecentsView< int groupedViewPoolInitialSize = enableRefactorTaskThumbnail() ? 2 : 10; mGroupedTaskViewPool = new ViewPool<>(context, this, R.layout.task_grouped, 20 /* max size */, groupedViewPoolInitialSize); - int desktopViewPoolInitialSize = DesktopModeStatus.canEnterDesktopMode(mContext) ? 1 : 0; + int desktopViewPoolInitialSize = DesktopModeStatus.canEnterDesktopMode(context) ? 1 : 0; mDesktopTaskViewPool = new ViewPool<>(context, this, R.layout.task_desktop, 5 /* max size */, desktopViewPoolInitialSize); @@ -979,16 +953,18 @@ public abstract class RecentsView< mClampedScrollOffsetBound = getResources().getDimensionPixelSize( R.dimen.transient_taskbar_clamped_offset_bound); - mEmptyIcon = context.getDrawable(R.drawable.ic_view_carousel); + mEmptyIcon = context.getDrawable(R.drawable.ic_empty_recents); mEmptyIcon.setCallback(this); mEmptyMessage = context.getText(R.string.recents_empty_message); mEmptyMessagePaint = new TextPaint(); - mEmptyMessagePaint.setColor( - getResources().getColor(R.color.materialColorOnSurface, context.getTheme())); - + mEmptyMessagePaint.setColor(Themes.getAttrColor(context, android.R.attr.textColorPrimary)); mEmptyMessagePaint.setTextSize(getResources() .getDimension(R.dimen.recents_empty_message_text_size)); - mEmptyMessagePaint.setTypeface(FontUtils.getTypeFace(getResources())); + Typeface typeface = Typeface.create( + Typeface.create(Themes.getDefaultBodyFont(context), Typeface.NORMAL), + getFontWeight(), + false); + mEmptyMessagePaint.setTypeface(typeface); mEmptyMessagePaint.setAntiAlias(true); mEmptyMessagePadding = getResources() .getDimensionPixelSize(R.dimen.recents_empty_message_text_padding); @@ -1071,7 +1047,7 @@ public abstract class RecentsView< * Invalidates the list of tasks so that an update occurs to the list of tasks if requested. */ private void invalidateTaskList() { - mAppliedTaskListChangeId = -1; + mTaskListChangeId = -1; } public OverScroller getScroller() { @@ -1234,11 +1210,10 @@ public abstract class RecentsView< public void init(OverviewActionsView actionsView, SplitSelectStateController splitController, @Nullable DesktopRecentsTransitionController desktopRecentsTransitionController) { - mIs3PLauncher = !OverviewComponentObserver.INSTANCE.get(mContext).isHomeAndOverviewSame(); mActionsView = actionsView; mActionsView.updateHiddenFlags(HIDDEN_NO_TASKS, !hasTaskViews()); // Update flags for 1p/3p launchers - mActionsView.updateFor3pLauncher(mIs3PLauncher); + mActionsView.updateFor3pLauncher(!supportsAppPairs()); mSplitSelectStateController = splitController; mDesktopRecentsTransitionController = desktopRecentsTransitionController; mActionsView.setClearAllClickListener(this::dismissAllTasks); @@ -1249,8 +1224,7 @@ public abstract class RecentsView< } public boolean isSplitSelectionActive() { - return mSplitSelectStateController != null - && mSplitSelectStateController.isSplitSelectActive(); + return mSplitSelectStateController.isSplitSelectActive(); } /** @@ -1280,7 +1254,7 @@ public abstract class RecentsView< mTaskOverlayFactory.initListeners(); mSplitSelectStateController.registerSplitListener(mSplitSelectionListener); if (mDesktopVisibilityController != null) { - mDesktopVisibilityController.registerDesktopVisibilityListener(mUtils); + mDesktopVisibilityController.registerDesktopVisibilityListener(this); } } @@ -1303,10 +1277,8 @@ public abstract class RecentsView< mTaskOverlayFactory.removeListeners(); mSplitSelectStateController.unregisterSplitListener(mSplitSelectionListener); if (mDesktopVisibilityController != null) { - mDesktopVisibilityController.unregisterDesktopVisibilityListener(mUtils); + mDesktopVisibilityController.unregisterDesktopVisibilityListener(this); } - mTaskLaunchListener = null; - mOnTaskLaunchCancelledRunnable = null; reset(); } @@ -1366,13 +1338,7 @@ public abstract class RecentsView< if (child instanceof TaskView) { mTaskViewCount++; } - if (mAddDesktopButton != null && child instanceof AddDesktopButton) { - mAddDesktopButton.setContentAlpha(mContentAlpha); - } else if (child instanceof ClearAllButton) { - mClearAllButton.setContentAlpha(mContentAlpha); - } else { - child.setAlpha(mContentAlpha); - } + child.setAlpha(mContentAlpha); // RecentsView is set to RTL in the constructor when system is using LTR. Here we set the // child direction back to match system settings. child.setLayoutDirection(mIsRtl ? View.LAYOUT_DIRECTION_LTR : View.LAYOUT_DIRECTION_RTL); @@ -1480,9 +1446,9 @@ public abstract class RecentsView< for (int i = apps.length - 1; i >= 0; --i) { RemoteAnimationTarget app = apps[i]; - float dx = mContainer.getDeviceProfile().getDeviceProperties().getWidthPx() * (1 - percent) / 2 + float dx = mContainer.getDeviceProfile().widthPx * (1 - percent) / 2 + app.screenSpaceBounds.left * percent; - float dy = mContainer.getDeviceProfile().getDeviceProperties().getHeightPx() * (1 - percent) / 2 + float dy = mContainer.getDeviceProfile().heightPx * (1 - percent) / 2 + app.screenSpaceBounds.top * percent; matrix.setScale(percent, percent); matrix.postTranslate(dx, dy); @@ -1509,7 +1475,8 @@ public abstract class RecentsView< anim.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { - finishRecentsAnimation(false /* toRecents */, true /*shouldPip*/, null); + finishRecentsAnimation(false /* toRecents */, true /*shouldPip*/, + allAppsAreTranslucent(apps), null); } }); } else { @@ -1520,6 +1487,18 @@ public abstract class RecentsView< anim.start(); } + private boolean allAppsAreTranslucent(RemoteAnimationTarget[] apps) { + if (apps == null) { + return false; + } + for (int i = apps.length - 1; i >= 0; --i) { + if (!apps[i].isTranslucent) { + return false; + } + } + return true; + } + public boolean isTaskViewVisible(TaskView tv) { if (showAsGrid()) { int screenStart = getPagedOrientationHandler().getPrimaryScroll(this); @@ -1543,12 +1522,12 @@ public abstract class RecentsView< } @Nullable - protected TaskView getLastGridTaskView() { + private TaskView getLastGridTaskView() { return getLastGridTaskView(mUtils.getTopRowIdArray(), mUtils.getBottomRowIdArray()); } @Nullable - protected TaskView getLastGridTaskView(IntArray topRowIdArray, IntArray bottomRowIdArray) { + private TaskView getLastGridTaskView(IntArray topRowIdArray, IntArray bottomRowIdArray) { if (topRowIdArray.isEmpty() && bottomRowIdArray.isEmpty()) { return null; } @@ -1557,7 +1536,7 @@ public abstract class RecentsView< return getTaskViewFromTaskViewId(lastTaskViewId); } - protected int getSnapToLastTaskScrollDiff() { + private int getSnapToLastTaskScrollDiff() { // Snap to a position where ClearAll is just invisible. int screenStart = getPagedOrientationHandler().getPrimaryScroll(this); int clearAllScroll = getScrollForPage(indexOfChild(mClearAllButton)); @@ -1566,7 +1545,7 @@ public abstract class RecentsView< return screenStart - lastTaskScroll; } - protected int getLastTaskScroll(int clearAllScroll, int clearAllWidth) { + private int getLastTaskScroll(int clearAllScroll, int clearAllWidth) { int distance = clearAllWidth + getClearAllExtraPageSpacing(); return clearAllScroll + (mIsRtl ? distance : -distance); } @@ -1719,7 +1698,7 @@ public abstract class RecentsView< @Override protected void onPageBeginTransition() { super.onPageBeginTransition(); - if (!mContainer.getDeviceProfile().getDeviceProperties().isTablet()) { + if (!mContainer.getDeviceProfile().isTablet) { mActionsView.updateDisabledFlags(OverviewActionsView.DISABLED_SCROLLING, true); } if (mOverviewStateEnabled) { // only when in overview @@ -1731,7 +1710,7 @@ public abstract class RecentsView< protected void onPageEndTransition() { super.onPageEndTransition(); ActiveGestureProtoLogProxy.logOnPageEndTransition(getNextPage()); - if (!mContainer.getDeviceProfile().getDeviceProperties().isTablet()) { + if (isClearAllHidden() && !mContainer.getDeviceProfile().isTablet) { mActionsView.updateDisabledFlags(OverviewActionsView.DISABLED_SCROLLING, false); } if (getNextPage() > 0) { @@ -1743,12 +1722,21 @@ public abstract class RecentsView< @Override protected boolean isSignificantMove(float absoluteDelta, int pageOrientedSize) { DeviceProfile deviceProfile = mContainer.getDeviceProfile(); - if (!deviceProfile.getDeviceProperties().isTablet()) { + if (!deviceProfile.isTablet) { return super.isSignificantMove(absoluteDelta, pageOrientedSize); } return absoluteDelta - > deviceProfile.getDeviceProperties().getAvailableWidthPx() * SIGNIFICANT_MOVE_SCREEN_WIDTH_PERCENTAGE; + > deviceProfile.availableWidthPx * SIGNIFICANT_MOVE_SCREEN_WIDTH_PERCENTAGE; + } + + @Override + public boolean onInterceptTouchEvent(MotionEvent ev) { + boolean intercept = super.onInterceptTouchEvent(ev); + if (ev.getActionMasked() == MotionEvent.ACTION_DOWN) { + Log.d("b/318590728", "onInterceptTouchEvent: " + ev); + } + return intercept; } @Override @@ -1841,19 +1829,11 @@ public abstract class RecentsView< return; } TaskView taskView = getTaskViewAt(mNextPage); - boolean shouldSnapToLargeTask = taskView != null && taskView.isLargeTile(); - boolean shouldSnapToSmallTask = enableGridOnlyOverview() && taskView != null - && taskView == mUtils.getFirstSmallTaskView(); + boolean shouldSnapToLargeTask = taskView != null && taskView.isLargeTile() + && !mUtils.isAnySmallTaskFullyVisible(); boolean shouldSnapToClearAll = mNextPage == indexOfChild(mClearAllButton); - boolean shouldSnapToLastTask = - enableGridOnlyOverview() && taskView != null && getScrollForPage( - indexOfChild(taskView)) == getScrollForPage(indexOfChild( - getLastGridTaskView(mUtils.getTopRowIdArray(), - mUtils.getBottomRowIdArray()))); - boolean shouldSnap = - shouldSnapToLargeTask || shouldSnapToClearAll || shouldSnapToSmallTask - || shouldSnapToLastTask; - if (!shouldSnap) { + // Snap to large tile when grid tasks aren't fully visible or the clear all button. + if (!shouldSnapToLargeTask && !shouldSnapToClearAll) { return; } } @@ -1935,19 +1915,10 @@ public abstract class RecentsView< return super.isPageScrollsInitialized() && mLoadPlanEverApplied; } - protected void applyLoadPlan(List<GroupTask> taskGroups, int taskListChangeId) { - if (enableRefactorTaskThumbnail() && !(isAttachedToWindow() - && RecentsDependencies.Companion.hasScope(mContext))) { - // This can happen if a TaskView callback is triggered after the view is destroyed - // (b/404920951). Prevent crashes by returning immediately. - Log.d(TAG, "applyLoadPlan - view invalid, isAttachedToWindow: " + isAttachedToWindow() - + ", hasScope: " + RecentsDependencies.Companion.hasScope(mContext)); - return; - } + protected void applyLoadPlan(List<GroupTask> taskGroups) { if (mPendingAnimation != null) { final List<GroupTask> finalTaskGroups = taskGroups; - mPendingAnimation.addEndListener( - success -> applyLoadPlan(finalTaskGroups, taskListChangeId)); + mPendingAnimation.addEndListener(success -> applyLoadPlan(finalTaskGroups)); return; } @@ -2039,7 +2010,9 @@ public abstract class RecentsView< if (enableLargeDesktopWindowingTile()) { taskGroups = mUtils.sortDesktopTasksToFront(taskGroups); } - taskGroups = mUtils.sortExternalDisplayTasksToFront(taskGroups); + if (enableSeparateExternalDisplayTasks()) { + taskGroups = mUtils.sortExternalDisplayTasksToFront(taskGroups); + } if (mAddDesktopButton != null) { // Add `mAddDesktopButton` as the first child. @@ -2071,7 +2044,10 @@ public abstract class RecentsView< traceEnd(Trace.TRACE_TAG_APP); traceBegin(Trace.TRACE_TAG_APP, "RecentsView.applyLoadPlan.forLoop.bind"); if (taskView instanceof GroupedTaskView groupedTaskView) { - groupedTaskView.bind((SplitTask) groupTask, mOrientationState, mTaskOverlayFactory); + var splitTask = (SplitTask) groupTask; + groupedTaskView.bind(splitTask.getTopLeftTask(), + splitTask.getBottomRightTask(), mOrientationState, + mTaskOverlayFactory, splitTask.getSplitBounds()); } else if (taskView instanceof DesktopTaskView desktopTaskView) { desktopTaskView.bind((DesktopTask) groupTask, mOrientationState, mTaskOverlayFactory); @@ -2079,9 +2055,10 @@ public abstract class RecentsView< Task task = splitTask.getTopLeftTask().key.id == stagedTaskIdToBeRemoved ? splitTask.getBottomRightTask() : splitTask.getTopLeftTask(); - taskView.bind(new SingleTask(task), mOrientationState, mTaskOverlayFactory); + taskView.bind(task, mOrientationState, mTaskOverlayFactory); } else { - taskView.bind((SingleTask) groupTask, mOrientationState, mTaskOverlayFactory); + taskView.bind(((SingleTask) groupTask).getTask(), mOrientationState, + mTaskOverlayFactory); } traceEnd(Trace.TRACE_TAG_APP); traceBegin(Trace.TRACE_TAG_APP, "RecentsView.applyLoadPlan.forLoop.addTaskView"); @@ -2159,7 +2136,17 @@ public abstract class RecentsView< } if (targetPage != -1 && mCurrentPage != targetPage) { int finalTargetPage = targetPage; - runOnPageScrollsInitialized(() -> setCurrentPage(finalTargetPage)); + runOnPageScrollsInitialized(() -> { + // TODO(b/246283207): Remove logging once root cause of flake detected. + if (Utilities.isRunningInTestHarness()) { + Log.d("b/246283207", "RecentsView#applyLoadPlan() -> " + + "previousCurrentPage: " + previousCurrentPage + + ", targetPage: " + finalTargetPage + + ", getScrollForPage(targetPage): " + + getScrollForPage(finalTargetPage)); + } + setCurrentPage(finalTargetPage); + }); } traceBegin(Trace.TRACE_TAG_APP, "RecentsView.applyLoadPlan.cleanupStates"); @@ -2171,7 +2158,6 @@ public abstract class RecentsView< mIgnoreResetTaskId = INVALID_TASK_ID; } - mAppliedTaskListChangeId = taskListChangeId; resetTaskVisuals(); onTaskStackUpdated(); updateEnabledOverlays(); @@ -2192,7 +2178,7 @@ public abstract class RecentsView< return mModel.isLoadingTasksInBackground(); } - protected void removeAllTaskViews() { + private void removeAllTaskViews() { // This handles an edge case where applyLoadPlan happens during a gesture when the only // Task is one with excludeFromRecents, in which case we should not remove it. CollectionsKt @@ -2305,9 +2291,9 @@ public abstract class RecentsView< setOverviewGridEnabled( getStateManager().getState().displayOverviewTasksAsGrid(dp)); if (enableGridOnlyOverview()) { - mActionsView.updateHiddenFlags(HIDDEN_ACTIONS_IN_MENU, dp.getDeviceProperties().isTablet()); + mActionsView.updateHiddenFlags(HIDDEN_ACTIONS_IN_MENU, dp.isTablet); } - setPageSpacing(dp.getOverviewProfile().getPageSpacing()); + setPageSpacing(dp.overviewPageSpacing); // Propagate DeviceProfile change event. runActionOnRemoteHandles( @@ -2350,10 +2336,10 @@ public abstract class RecentsView< } } - mActionsView.updateHiddenFlags( - HIDDEN_NON_ZERO_ROTATION, - mOrientationState.shouldHideActionButtons() - ); + boolean isInLandscape = mOrientationState.getTouchRotation() != ROTATION_0 + || mOrientationState.getRecentsActivityRotation() != ROTATION_0; + mActionsView.updateHiddenFlags(HIDDEN_NON_ZERO_ROTATION, + !mOrientationState.isRecentsActivityRotationAllowed() && isInLandscape); // Recalculate DeviceProfile dependent layout. updateSizeAndPadding(); @@ -2382,19 +2368,18 @@ public abstract class RecentsView< mTaskWidth = mLastComputedTaskSize.width(); mTaskHeight = mLastComputedTaskSize.height(); setPadding(mLastComputedTaskSize.left - mInsets.left, - mLastComputedTaskSize.top - dp.getOverviewProfile().getTaskThumbnailTopMarginPx() - - mInsets.top, - dp.getDeviceProperties().getWidthPx() - mInsets.right - mLastComputedTaskSize.right, - dp.getDeviceProperties().getHeightPx() - mInsets.bottom - mLastComputedTaskSize.bottom); + mLastComputedTaskSize.top - dp.overviewTaskThumbnailTopMarginPx - mInsets.top, + dp.widthPx - mInsets.right - mLastComputedTaskSize.right, + dp.heightPx - mInsets.bottom - mLastComputedTaskSize.bottom); - mContainerInterface.calculateGridSize(dp, mContainer, mLastComputedGridSize); - mContainerInterface.calculateGridTaskSize(mContainer, dp, mLastComputedGridTaskSize, + mSizeStrategy.calculateGridSize(dp, mContainer, mLastComputedGridSize); + mSizeStrategy.calculateGridTaskSize(mContainer, dp, mLastComputedGridTaskSize, getPagedOrientationHandler()); mTaskGridVerticalDiff = mLastComputedGridTaskSize.top - mLastComputedTaskSize.top; - mTopBottomRowHeightDiff = mLastComputedGridTaskSize.height() - + dp.getOverviewProfile().getTaskThumbnailTopMarginPx() - + dp.getOverviewProfile().getRowSpacing(); + mTopBottomRowHeightDiff = + mLastComputedGridTaskSize.height() + dp.overviewTaskThumbnailTopMarginPx + + dp.overviewRowSpacing; // Force TaskView to update size from thumbnail updateTaskSize(); @@ -2404,7 +2389,7 @@ public abstract class RecentsView< /** * Updates TaskView scaling and translation required to support variable width. */ - protected void updateTaskSize() { + private void updateTaskSize() { if (!hasTaskViews()) { return; } @@ -2431,7 +2416,7 @@ public abstract class RecentsView< } public void getTaskSize(Rect outRect) { - mContainerInterface.calculateTaskSize(mContainer, mContainer.getDeviceProfile(), outRect, + mSizeStrategy.calculateTaskSize(mContainer, mContainer.getDeviceProfile(), outRect, getPagedOrientationHandler()); } @@ -2467,10 +2452,10 @@ public abstract class RecentsView< */ private float getTaskAlignmentTranslationY() { DeviceProfile deviceProfile = mContainer.getDeviceProfile(); - if (deviceProfile.getDeviceProperties().isTablet()) { - return deviceProfile.getOverviewProfile().getRowSpacing(); + if (deviceProfile.isTablet) { + return deviceProfile.overviewRowSpacing; } - return deviceProfile.getOverviewProfile().getTaskThumbnailTopMarginPx() / 2.0f; + return deviceProfile.overviewTaskThumbnailTopMarginPx / 2.0f; } protected Rect getTaskBounds(TaskView taskView) { @@ -2498,8 +2483,8 @@ public abstract class RecentsView< /** Gets the task size for modal state. */ public void getModalTaskSize(Rect outRect) { - mContainerInterface.calculateModalTaskSize(mContainer, mContainer.getDeviceProfile(), - outRect, getPagedOrientationHandler()); + mSizeStrategy.calculateModalTaskSize(mContainer, mContainer.getDeviceProfile(), outRect, + getPagedOrientationHandler()); } @Override @@ -2525,7 +2510,7 @@ public abstract class RecentsView< return scrolling; } - protected void updateActionsViewFocusedScroll() { + private void updateActionsViewFocusedScroll() { if (showAsGrid()) { float actionsViewAlphaValue = isFocusedTaskInExpectedScrollPosition() ? 1 : 0; // If animation is already in progress towards the same end value, do not restart. @@ -2538,10 +2523,6 @@ public abstract class RecentsView< } } - protected OverviewActionsView getActionsView() { - return mActionsView; - } - private void animateActionsViewAlpha(float alphaValue, long duration) { mActionsViewAlphaAnimator = ObjectAnimator.ofFloat(mActionsView.getVisibilityAlpha(), AnimatedFloat.VALUE, alphaValue); @@ -2568,7 +2549,7 @@ public abstract class RecentsView< @Override protected int getDestinationPage(int scaledScroll) { - if (!mContainer.getDeviceProfile().getDeviceProperties().isTablet()) { + if (!mContainer.getDeviceProfile().isTablet) { return super.getDestinationPage(scaledScroll); } if (!isPageScrollsInitialized()) { @@ -2603,7 +2584,7 @@ public abstract class RecentsView< */ public void loadVisibleTaskData(@TaskView.TaskDataChanges int dataChanges) { boolean hasLeftOverview = !mOverviewStateEnabled && mScroller.isFinished(); - if (hasLeftOverview || mAppliedTaskListChangeId == -1) { + if (hasLeftOverview || mTaskListChangeId == -1) { // Skip loading visible task data if we've already left the overview state, or if the // task list hasn't been loaded yet (the task views will not reflect the task list) return; @@ -2615,9 +2596,9 @@ public abstract class RecentsView< int pageOrientedSize = getPagedOrientationHandler().getMeasuredSize(this); // For GRID_ONLY_OVERVIEW, use +/- 1 task column as visible area for preloading // adjacent thumbnails, otherwise use +/-50% screen width - int extraWidth = enableGridOnlyOverview() - ? getLastComputedGridTaskSize().width() + getPageSpacing() - : pageOrientedSize / 2; + int extraWidth = + enableGridOnlyOverview() ? getLastComputedTaskSize().width() + getPageSpacing() + : pageOrientedSize / 2; lowerIndex = upperIndex = 0; visibleStart = screenStart - extraWidth; visibleEnd = screenStart + pageOrientedSize + extraWidth; @@ -2756,10 +2737,9 @@ public abstract class RecentsView< setCurrentTask(-1); mCurrentPageScrollDiff = 0; mIgnoreResetTaskId = -1; - mAppliedTaskListChangeId = -1; + mTaskListChangeId = -1; setFocusedTaskViewId(INVALID_TASK_ID); mAnyTaskHasBeenDismissed = false; - setTaskIconVisible(true); if (enableRefactorTaskThumbnail()) { // TODO(b/353917593): RecentsView is never destroyed, so its dependencies need to @@ -2781,19 +2761,9 @@ public abstract class RecentsView< setEnableDrawingLiveTile(false); } mBlurUtils.setDrawLiveTileBelowRecents(false); - - if (enableCoroutineThreadingImprovements()) { - // TODO(b/391842220): This should not need to be explicitly called from here. When TVs - // are added and removed with the RecentsView lifecycle, this can be removed. - // This is was added because without it cancelling jobs was happening after work was - // scheduled for those jobs resulting in delays. - mUtils.getTaskViews().forEach(TaskView::cancelJobs); - } // These are relatively expensive and don't need to be done this frame (RecentsView isn't // visible anyway), so defer by a frame to get off the critical path, e.g. app to home. - // Defer onto the main thread rather than the view message queue since this will not always - // be called in the Recents In Window case. - MAIN_EXECUTOR.getHandler().post(this::onReset); + post(this::onReset); } private void onReset() { @@ -2894,29 +2864,27 @@ public abstract class RecentsView< return tv == null ? -1 : indexOfChild(tv); } - protected int getClearAllShortTotalWidthTranslation() { - return mClearAllShortTotalWidthTranslation; - } - /** * Reloads the view if anything in recents changed. */ public void reloadIfNeeded() { - if (!mModel.isTaskListValid(mAppliedTaskListChangeId)) { - mModel.getTasks(this::applyLoadPlan, RecentsFilterState - .getFilter(mFilterState.getPackageNameToFilter(), mContainer.getDisplayId())); - Log.d(TAG, "reloadIfNeeded - getTasks: " + mAppliedTaskListChangeId); + if (!mModel.isTaskListValid(mTaskListChangeId)) { + mTaskListChangeId = mModel.getTasks(this::applyLoadPlan, RecentsFilterState + .getFilter(mFilterState.getPackageNameToFilter())); + Log.d(TAG, "reloadIfNeeded - getTasks: " + mTaskListChangeId); if (enableRefactorTaskThumbnail()) { mRecentsViewModel.refreshAllTaskData(); } } else { - Log.d(TAG, "reloadIfNeeded - task list still valid: " + mAppliedTaskListChangeId); + Log.d(TAG, "reloadIfNeeded - task list still valid: " + mTaskListChangeId); } } /** * Called when a gesture from an app is starting. */ + // TODO: b/401582344 - Implement a way to exclude the `DesktopWallpaperActivity` from being + // considered in Overview. public void onGestureAnimationStart(GroupedTaskInfo groupedTaskInfo) { Log.d(TAG, "onGestureAnimationStart - groupedTaskInfo: " + groupedTaskInfo); mActiveGestureGroupedTaskInfo = groupedTaskInfo; @@ -2940,7 +2908,7 @@ public abstract class RecentsView< * Returns whether the running task's attach alpha should be updated during the attach animation */ public boolean shouldUpdateRunningTaskAlpha() { - return getRunningTaskView() instanceof DesktopTaskView; + return enableDesktopTaskAlphaAnimation() && getRunningTaskView() instanceof DesktopTaskView; } private boolean isGestureActive() { @@ -2957,8 +2925,7 @@ public abstract class RecentsView< } private void animateRecentsRotationInPlace(int newRotation) { - if (mOrientationState.isRecentsActivityRotationAllowed() - || mOrientationState.isLauncherFixedLandscape()) { + if (mOrientationState.isRecentsActivityRotationAllowed()) { // Let system take care of the rotation return; } @@ -2996,10 +2963,87 @@ public abstract class RecentsView< * Called when a gesture from an app has finished, and an end target has been determined. */ public void onPrepareGestureEndAnimation( - AnimatorSet animatorSet, GestureState.GestureEndTarget endTarget, - RemoteTargetHandle[] remoteTargetHandles, boolean isHandlingAtomicEvent) { - mUtils.onPrepareGestureEndAnimation(animatorSet, endTarget, remoteTargetHandles, - isHandlingAtomicEvent); + @Nullable AnimatorSet animatorSet, GestureState.GestureEndTarget endTarget, + RemoteTargetHandle[] remoteTargetHandles) { + Log.d(TAG, "onPrepareGestureEndAnimation - endTarget: " + endTarget); + mCurrentGestureEndTarget = endTarget; + boolean isOverviewEndTarget = endTarget == GestureState.GestureEndTarget.RECENTS; + if (isOverviewEndTarget) { + updateGridProperties(); + } + + BaseState<?> endState = mSizeStrategy.stateFromGestureEndTarget(endTarget); + // Starting the desk exploded animation when the gesture from an app is released. + if (enableDesktopExplodedView()) { + if (animatorSet == null) { + mUtils.setDeskExplodeProgress(endState.showExplodedDesktopView() ? 1f : 0f); + } else { + animatorSet.play( + ObjectAnimator.ofFloat(this, DESK_EXPLODE_PROGRESS, + endState.showExplodedDesktopView() ? 1f : 0f)); + } + + for (TaskView taskView : getTaskViews()) { + if (taskView instanceof DesktopTaskView desktopTaskView) { + desktopTaskView.setRemoteTargetHandles(remoteTargetHandles); + } + } + } + + if (endState.displayOverviewTasksAsGrid(mContainer.getDeviceProfile())) { + TaskView runningTaskView = getRunningTaskView(); + float runningTaskGridTranslationX = 0; + float runningTaskGridTranslationY = 0; + if (runningTaskView != null) { + // Apply the grid translation to running task unless it's being snapped to + // and removes the current translation applied to the running task. + runningTaskGridTranslationX = runningTaskView.getGridTranslationX() + - runningTaskView.getNonGridTranslationX(); + runningTaskGridTranslationY = runningTaskView.getGridTranslationY(); + } + for (RemoteTargetHandle remoteTargetHandle : remoteTargetHandles) { + TaskViewSimulator tvs = remoteTargetHandle.getTaskViewSimulator(); + if (animatorSet == null) { + setGridProgress(1); + if (enableGridOnlyOverview()) { + tvs.taskGridTranslationX.value = runningTaskGridTranslationX; + tvs.taskGridTranslationY.value = runningTaskGridTranslationY; + } else { + tvs.taskPrimaryTranslation.value = runningTaskGridTranslationX; + tvs.taskSecondaryTranslation.value = runningTaskGridTranslationY; + } + } else { + animatorSet.play(ObjectAnimator.ofFloat(this, RECENTS_GRID_PROGRESS, 1)); + if (enableGridOnlyOverview()) { + animatorSet.play(tvs.carouselScale.animateToValue(1)); + animatorSet.play(tvs.taskGridTranslationX.animateToValue( + runningTaskGridTranslationX)); + animatorSet.play(tvs.taskGridTranslationY.animateToValue( + runningTaskGridTranslationY)); + } else { + animatorSet.play(tvs.taskPrimaryTranslation.animateToValue( + runningTaskGridTranslationX)); + animatorSet.play(tvs.taskSecondaryTranslation.animateToValue( + runningTaskGridTranslationY)); + } + } + } + } + int splashAlpha = endState.showTaskThumbnailSplash() ? 1 : 0; + if (animatorSet == null) { + setTaskThumbnailSplashAlpha(splashAlpha); + } else { + animatorSet.play( + ObjectAnimator.ofFloat(this, TASK_THUMBNAIL_SPLASH_ALPHA, splashAlpha)); + } + if (enableLargeDesktopWindowingTile()) { + if (animatorSet != null) { + animatorSet.play( + ObjectAnimator.ofFloat(this, DESKTOP_CAROUSEL_DETACH_PROGRESS, 0f)); + } else { + DESKTOP_CAROUSEL_DETACH_PROGRESS.set(this, 0f); + } + } } /** @@ -3016,7 +3060,6 @@ public abstract class RecentsView< Log.d(TAG, "onGestureAnimationEnd - mEnableDrawingLiveTile: " + mEnableDrawingLiveTile); setRunningTaskHidden(false); startIconFadeInOnGestureComplete(); - setTaskIconVisible(true); animateActionsViewIn(); if (mEnableDrawingLiveTile) { @@ -3044,11 +3087,29 @@ public abstract class RecentsView< } /** - * Returns true to avoid adding a stub task even when [getRunningTaskViewFromGroupedTaskInfo] - * cannot find a [runningTaskView]. + * Returns true if we should add a stub taskView for the running task id */ - protected boolean shouldAvoidAddingStubTaskView(GroupedTaskInfo groupedTaskInfo) { - return false; + protected boolean shouldAddStubTaskView(GroupedTaskInfo groupedTaskInfo) { + int[] runningTaskIds; + if (groupedTaskInfo != null) { + runningTaskIds = groupedTaskInfo.getTaskInfoList().stream().mapToInt( + taskInfo -> taskInfo.taskId).toArray(); + } else { + runningTaskIds = new int[0]; + } + TaskView matchingTaskView = null; + if (groupedTaskInfo != null && groupedTaskInfo.isBaseType(GroupedTaskInfo.TYPE_DESK) + && runningTaskIds.length == 1) { + // TODO(b/342635213): Unsure if it's expected, desktop runningTasks only have a single + // taskId, therefore we match any DesktopTaskView that contains the runningTaskId. + TaskView taskview = getTaskViewByTaskId(runningTaskIds[0]); + if (taskview instanceof DesktopTaskView) { + matchingTaskView = taskview; + } + } else { + matchingTaskView = getTaskViewByTaskIds(runningTaskIds); + } + return matchingTaskView == null; } /** @@ -3063,11 +3124,8 @@ public abstract class RecentsView< return; } - final int runningTaskViewId; - TaskView runningTaskView = mUtils.getRunningTaskViewFromGroupTaskInfo(groupedTaskInfo); - if (runningTaskView != null) { - runningTaskViewId = runningTaskView.getTaskViewId(); - } else if (!shouldAvoidAddingStubTaskView(groupedTaskInfo)) { + int runningTaskViewId = -1; + if (shouldAddStubTaskView(groupedTaskInfo)) { boolean wasEmpty = getChildCount() == 0; // Add an empty view for now until the task plan is loaded and applied final TaskView taskView; @@ -3078,14 +3136,13 @@ public abstract class RecentsView< // When we create a placeholder task view mSplitBoundsConfig will be null, but with // the actual app running we won't need to show the thumbnail until all the tasks // load later anyways - ((GroupedTaskView) taskView).bind( - new SplitTask(Task.from(groupedTaskInfo.getTaskInfo1()), - Task.from(groupedTaskInfo.getTaskInfo2()), mSplitBoundsConfig), - mOrientationState, mTaskOverlayFactory); + ((GroupedTaskView) taskView).bind(Task.from(groupedTaskInfo.getTaskInfo1()), + Task.from(groupedTaskInfo.getTaskInfo2()), mOrientationState, + mTaskOverlayFactory, mSplitBoundsConfig); } else { taskView = getTaskViewFromPool(TaskViewType.SINGLE); - taskView.bind(new SingleTask(Task.from(groupedTaskInfo.getTaskInfo1())), - mOrientationState, mTaskOverlayFactory); + taskView.bind(Task.from(groupedTaskInfo.getTaskInfo1()), mOrientationState, + mTaskOverlayFactory); } if (mAddDesktopButton != null && wasEmpty) { addView(mAddDesktopButton); @@ -3102,7 +3159,10 @@ public abstract class RecentsView< makeMeasureSpec(getMeasuredHeight(), EXACTLY)); layout(getLeft(), getTop(), getRight(), getBottom()); } else { - runningTaskViewId = -1; + var runningTaskView = getTaskViewByTaskId(groupedTaskInfo.getTaskInfo1().taskId); + if (runningTaskView != null) { + runningTaskViewId = runningTaskView.getTaskViewId(); + } } boolean runningTaskTileHidden = mRunningTaskTileHidden; @@ -3245,7 +3305,7 @@ public abstract class RecentsView< * * Skips rebalance. */ - protected void updateGridProperties() { + private void updateGridProperties() { updateGridProperties(null); } @@ -3259,13 +3319,13 @@ public abstract class RecentsView< * @param lastVisibleTaskViewDuringDismiss which TaskView to start rebalancing from. Use * `null` to skip rebalance. */ - protected void updateGridProperties(TaskView lastVisibleTaskViewDuringDismiss) { + private void updateGridProperties(TaskView lastVisibleTaskViewDuringDismiss) { if (!hasTaskViews()) { return; } DeviceProfile deviceProfile = mContainer.getDeviceProfile(); - int taskTopMargin = deviceProfile.getOverviewProfile().getTaskThumbnailTopMarginPx(); + int taskTopMargin = deviceProfile.overviewTaskThumbnailTopMarginPx; int topRowWidth = 0; int bottomRowWidth = 0; @@ -3284,9 +3344,7 @@ public abstract class RecentsView< int snappedPage = isKeyboardTaskFocusPending() ? mKeyboardTaskFocusIndex : getNextPage(); TaskView snappedTaskView = getTaskViewAt(snappedPage); TaskView homeTaskView = getHomeTaskView(); - // Determine the currentTaskView when going from Home to Overview, and ensure it can be - // snapped to its expected position. - TaskView expectedCurrentTaskView = mUtils.getExpectedCurrentTask(/* runningTaskView= */null, + TaskView expectedCurrentTaskView = mUtils.getExpectedCurrentTask(getRunningTaskView(), getFocusedTaskView()); TaskView nextFocusedTaskView = null; @@ -3497,8 +3555,8 @@ public abstract class RecentsView< int minimumDistance = (mIsRtl ? mLastComputedTaskSize.left - : deviceProfile.getDeviceProperties().getWidthPx() - mLastComputedTaskSize.right) - - deviceProfile.getOverviewProfile().getGridSideMargin() - mPageSpacing + : deviceProfile.widthPx - mLastComputedTaskSize.right) + - deviceProfile.overviewGridSideMargin - mPageSpacing + (mTaskWidth - snappedTaskView.getLayoutParams().width) - mClearAllShortTotalWidthTranslation; if (distanceFromClearAll < minimumDistance) { @@ -3569,6 +3627,34 @@ public abstract class RecentsView< } } + private void enableLayoutTransitions() { + if (mLayoutTransition == null) { + mLayoutTransition = new LayoutTransition(); + mLayoutTransition.enableTransitionType(LayoutTransition.APPEARING); + mLayoutTransition.setDuration(ADDITION_TASK_DURATION); + mLayoutTransition.setStartDelay(LayoutTransition.APPEARING, 0); + + mLayoutTransition.addTransitionListener(new TransitionListener() { + @Override + public void startTransition(LayoutTransition transition, ViewGroup viewGroup, + View view, int i) { + } + + @Override + public void endTransition(LayoutTransition transition, ViewGroup viewGroup, + View view, int i) { + // When the unpinned task is added, snap to first page and disable transitions + if (view instanceof TaskView) { + snapToPage(0); + setLayoutTransition(null); + } + + } + }); + } + setLayoutTransition(mLayoutTransition); + } + public void setSwipeDownShouldLaunchApp(boolean swipeDownShouldLaunchApp) { mSwipeDownShouldLaunchApp = swipeDownShouldLaunchApp; } @@ -3626,7 +3712,7 @@ public abstract class RecentsView< mSplitPlaceholderInset, mContainer.getDeviceProfile(), mSplitSelectStateController.getActiveSplitStagePosition(), mTempRect); SplitAnimationTimings timings = - AnimUtils.getDeviceOverviewToSplitTimings(mContainer.getDeviceProfile().getDeviceProperties().isTablet()); + AnimUtils.getDeviceOverviewToSplitTimings(mContainer.getDeviceProfile().isTablet); RectF startingTaskRect = new RectF(); safeRemoveDragLayerView(mSplitSelectStateController.getFirstFloatingTaskView()); @@ -3655,7 +3741,7 @@ public abstract class RecentsView< firstFloatingTaskView.setOnClickListener(view -> mSplitSelectStateController.getSplitAnimationController(). playAnimPlaceholderToFullscreen(mContainer, view, - Optional.of(() -> mSplitSelectStateController.resetState()))); + Optional.of(() -> resetFromSplitSelectionState()))); firstFloatingTaskView.setContentDescription(splitAnimInitProps.getContentDescription()); // SplitInstructionsView: animate in @@ -3677,9 +3763,14 @@ public abstract class RecentsView< anim.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationStart(Animator animation) { - switchToScreenshot( - () -> finishRecentsAnimation(true /* toRecents */, - false /* shouldPip */, null /* onFinishComplete */)); + if (mSplitHiddenTaskView == getRunningTaskView()) { + finishRecentsAnimation(true /* toRecents */, false /* shouldPip */, + null /* onFinishComplete */); + } else { + switchToScreenshot( + () -> finishRecentsAnimation(true /* toRecents */, + false /* shouldPip */, null /* onFinishComplete */)); + } } }); anim.addEndListener(success -> { @@ -3706,14 +3797,13 @@ public abstract class RecentsView< * @param duration duration of the animation * @param dismissingForSplitSelection task dismiss animation is used for entering split * selection state from app icon - * @param gridEndData used to compute any gap left between the end of the - * grid and the clear all button. + * @param isExpressiveDismiss runs expressive animations controlled via + * {@link RecentsDismissUtils} */ public void createTaskDismissAnimation(PendingAnimation anim, @Nullable TaskView dismissedTaskView, boolean animateTaskView, boolean shouldRemoveTask, long duration, - boolean dismissingForSplitSelection, - @Nullable RecentsDismissUtils.GridEndData gridEndData) { + boolean dismissingForSplitSelection, boolean isExpressiveDismiss) { if (mPendingAnimation != null) { mPendingAnimation.createPlaybackController().dispatchOnCancel().dispatchOnEnd(); } @@ -3732,7 +3822,7 @@ public abstract class RecentsView< // Grid specific properties. boolean isFocusedTaskDismissed = false; boolean isStagingFocusedTask = false; - boolean isSlidingTasks; + boolean isSlidingTasks = false; TaskView nextFocusedTaskView = null; boolean nextFocusedTaskFromTop = false; float dismissedTaskWidth = 0; @@ -3792,73 +3882,160 @@ public abstract class RecentsView< float dismissTranslationInterpolationEnd = 1; boolean closeGapBetweenClearAll = false; boolean isClearAllHidden = isClearAllHidden(); + boolean snapToLastTask = false; + boolean isLeftRightSplit = + mContainer.getDeviceProfile().isLeftRightSplit && isSplitSelectionActive(); + TaskView lastGridTaskView = showAsGrid ? getLastGridTaskView() : null; + int currentPageScroll = getScrollForPage(mCurrentPage); + int lastGridTaskScroll = getScrollForPage(indexOfChild(lastGridTaskView)); + boolean currentPageSnapsToEndOfGrid = currentPageScroll == lastGridTaskScroll; - if (gridEndData == null) { - gridEndData = mDismissUtils.getGridEndData(dismissedTaskView, - false /* isExpressiveDismiss */, isFocusedTaskDismissed, nextFocusedTaskView, - isStagingFocusedTask, nextFocusedTaskFromTop, nextFocusedTaskWidth); + int topGridRowSize = mTopRowIdSet.size(); + int numLargeTiles = mUtils.getLargeTileCount(); + int bottomGridRowSize = taskCount - mTopRowIdSet.size() - numLargeTiles; + boolean topRowLonger = topGridRowSize > bottomGridRowSize; + boolean bottomRowLonger = bottomGridRowSize > topGridRowSize; + boolean dismissedTaskFromTop = mTopRowIdSet.contains(dismissedTaskViewId); + boolean dismissedTaskFromBottom = !dismissedTaskFromTop && !isFocusedTaskDismissed; + if (dismissedTaskFromTop || (isFocusedTaskDismissed && nextFocusedTaskFromTop)) { + topGridRowSize--; } - float longGridRowWidthDiff = gridEndData.getGridEndOffset(); - boolean snapToLastTask = gridEndData.getSnapToLastTask(); - float newClearAllShortTotalWidthTranslation = - gridEndData.getNewClearAllShortTotalWidthTranslation(); - boolean currentPageSnapsToEndOfGrid = gridEndData.getCurrentPageSnapsToEndOfGrid(); - if (longGridRowWidthDiff != 0f) { - closeGapBetweenClearAll = true; + if (dismissedTaskFromBottom || (isFocusedTaskDismissed && !nextFocusedTaskFromTop)) { + bottomGridRowSize--; } + int longRowWidth = Math.max(topGridRowSize, bottomGridRowSize) + * (mLastComputedGridTaskSize.width() + mPageSpacing); + if (!enableGridOnlyOverview() && !isStagingFocusedTask) { + longRowWidth += mLastComputedTaskSize.width() + mPageSpacing; + } + // Compensate the removed gap if we don't already have shortTotalCompensation, + // and adjust accordingly to the new shortTotalCompensation after dismiss. + int newClearAllShortTotalWidthTranslation = 0; + if (mClearAllShortTotalWidthTranslation == 0) { + // If first task is not in the expected position (mLastComputedTaskSize) and being too + // close to ClearAllButton, then apply extra translation to ClearAllButton. + int firstTaskStart = mLastComputedGridSize.left + longRowWidth; + int expectedFirstTaskStart = mLastComputedTaskSize.right; + if (firstTaskStart < expectedFirstTaskStart) { + newClearAllShortTotalWidthTranslation = expectedFirstTaskStart - firstTaskStart; + } + } + if (lastGridTaskView != null && ( + (!isExpressiveDismiss && lastGridTaskView.isVisibleToUser()) || (isExpressiveDismiss + && (isTaskViewVisible(lastGridTaskView) + || lastGridTaskView == dismissedTaskView)))) { + // After dismissal, animate translation of the remaining tasks to fill any gap left + // between the end of the grid and the clear all button. Only animate if the clear + // all button is visible or would become visible after dismissal. + float longGridRowWidthDiff = 0; - // After dismissal, animate translation of the remaining tasks to fill any gap left - // between the end of the grid and the clear all button. Only animate if the clear - // all button is visible or would become visible after dismissal. - if (longGridRowWidthDiff != 0) { - // If we need to animate the grid to compensate the clear all gap, we split the - // second half of the dismiss pending animation (in which the non-dismissed tasks - // slide into place) in half again, making the first quarter the existing - // non-dismissal sliding and the second quarter this new animation of gap filling. - // This is due to the fact that PendingAnimation is a single animation, not a - // sequence of animations, so we fake it using interpolation. Stagger the offsets of - // each additional task for a delayed animation. We use half here as this animation is - // half of half of an animation (1/4th). - float halfAdditionalDismissTranslationOffset = - (0.5f * ADDITIONAL_DISMISS_TRANSLATION_INTERPOLATION_OFFSET); - dismissTranslationInterpolationEnd = Utilities.boundToRange( - END_DISMISS_TRANSLATION_INTERPOLATION_OFFSET - + (taskCount - 1) * halfAdditionalDismissTranslationOffset, - END_DISMISS_TRANSLATION_INTERPOLATION_OFFSET, 1); - for (TaskView taskView : getTaskViews()) { - anim.setFloat(taskView, TaskView.GRID_END_TRANSLATION_X, - longGridRowWidthDiff, - clampToProgress(LINEAR, dismissTranslationInterpolationEnd, 1)); - dismissTranslationInterpolationEnd = Utilities.boundToRange( - dismissTranslationInterpolationEnd - - halfAdditionalDismissTranslationOffset, - END_DISMISS_TRANSLATION_INTERPOLATION_OFFSET, 1); - if (mEnableDrawingLiveTile && taskView.isRunningTask()) { - anim.addOnFrameCallback(() -> { - runActionOnRemoteHandles(remoteTargetHandle -> - remoteTargetHandle.getTaskViewSimulator() - .taskPrimaryTranslation.value = - TaskView.GRID_END_TRANSLATION_X.get(taskView)); - redrawLiveTile(); - }); + float gapWidth = 0; + if ((topRowLonger && dismissedTaskFromTop) + || (bottomRowLonger && dismissedTaskFromBottom)) { + gapWidth = dismissedTaskWidth; + } else if (nextFocusedTaskView != null + && ((topRowLonger && nextFocusedTaskFromTop) + || (bottomRowLonger && !nextFocusedTaskFromTop))) { + gapWidth = nextFocusedTaskWidth; + } + if (gapWidth > 0) { + if (mClearAllShortTotalWidthTranslation == 0) { + float gapCompensation = gapWidth - newClearAllShortTotalWidthTranslation; + longGridRowWidthDiff += mIsRtl ? -gapCompensation : gapCompensation; + } + if (isClearAllHidden) { + // If ClearAllButton isn't fully shown, snap to the last task. + snapToLastTask = true; + } + } + if (isLeftRightSplit && !isStagingFocusedTask) { + // LastTask's scroll is the minimum scroll in split select, if current scroll is + // beyond that, we'll need to snap to last task instead. + TaskView lastTask = getLastGridTaskView(); + if (lastTask != null) { + int primaryScroll = getPagedOrientationHandler().getPrimaryScroll(this); + int lastTaskScroll = getScrollForPage(indexOfChild(lastTask)); + if ((mIsRtl && primaryScroll < lastTaskScroll) + || (!mIsRtl && primaryScroll > lastTaskScroll)) { + snapToLastTask = true; + } + } + } + if (snapToLastTask) { + longGridRowWidthDiff += getSnapToLastTaskScrollDiff(); + } else if (isLeftRightSplit && currentPageSnapsToEndOfGrid) { + // Use last task as reference point for scroll diff and snapping calculation as it's + // the only invariant point in landscape split screen. + snapToLastTask = true; + } + if (mUtils.getGridTaskCount() == 1 && dismissedTaskView.isGridTask()) { + TaskView lastLargeTile = mUtils.getLastLargeTaskView(); + if (lastLargeTile != null) { + // Calculate the distance to put last large tile back to middle of the screen. + int primaryScroll = getPagedOrientationHandler().getPrimaryScroll(this); + int lastLargeTileScroll = getScrollForPage(indexOfChild(lastLargeTile)); + longGridRowWidthDiff = primaryScroll - lastLargeTileScroll; + + if (!isClearAllHidden) { + // If ClearAllButton is visible, reduce the distance by scroll difference + // between ClearAllButton and the last task. + longGridRowWidthDiff += getLastTaskScroll(/*clearAllScroll=*/0, + getPagedOrientationHandler().getPrimarySize(mClearAllButton)); + } } } - // Change alpha of clear all if translating grid to hide it - if (isClearAllHidden) { - anim.setFloat(mClearAllButton, DISMISS_ALPHA, 0, LINEAR); - anim.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - super.onAnimationEnd(animation); - mClearAllButton.setDismissAlpha(1); + // If we need to animate the grid to compensate the clear all gap, we split the second + // half of the dismiss pending animation (in which the non-dismissed tasks slide into + // place) in half again, making the first quarter the existing non-dismissal sliding + // and the second quarter this new animation of gap filling. This is due to the fact + // that PendingAnimation is a single animation, not a sequence of animations, so we + // fake it using interpolation. + if (longGridRowWidthDiff != 0) { + closeGapBetweenClearAll = true; + // Stagger the offsets of each additional task for a delayed animation. We use + // half here as this animation is half of half of an animation (1/4th). + float halfAdditionalDismissTranslationOffset = + (0.5f * ADDITIONAL_DISMISS_TRANSLATION_INTERPOLATION_OFFSET); + dismissTranslationInterpolationEnd = Utilities.boundToRange( + END_DISMISS_TRANSLATION_INTERPOLATION_OFFSET + + (taskCount - 1) * halfAdditionalDismissTranslationOffset, + END_DISMISS_TRANSLATION_INTERPOLATION_OFFSET, 1); + for (TaskView taskView : getTaskViews()) { + anim.setFloat(taskView, TaskView.GRID_END_TRANSLATION_X, longGridRowWidthDiff, + clampToProgress(LINEAR, dismissTranslationInterpolationEnd, 1)); + dismissTranslationInterpolationEnd = Utilities.boundToRange( + dismissTranslationInterpolationEnd + - halfAdditionalDismissTranslationOffset, + END_DISMISS_TRANSLATION_INTERPOLATION_OFFSET, 1); + if (mEnableDrawingLiveTile && taskView.isRunningTask()) { + anim.addOnFrameCallback(() -> { + runActionOnRemoteHandles( + remoteTargetHandle -> + remoteTargetHandle.getTaskViewSimulator() + .taskPrimaryTranslation.value = + TaskView.GRID_END_TRANSLATION_X.get(taskView)); + redrawLiveTile(); + }); } - }); + } + + // Change alpha of clear all if translating grid to hide it + if (isClearAllHidden) { + anim.setFloat(mClearAllButton, DISMISS_ALPHA, 0, LINEAR); + anim.addListener(new AnimatorListenerAdapter() { + @Override + public void onAnimationEnd(Animator animation) { + super.onAnimationEnd(animation); + mClearAllButton.setDismissAlpha(1); + } + }); + } } } SplitAnimationTimings splitTimings = - AnimUtils.getDeviceOverviewToSplitTimings(mContainer.getDeviceProfile().getDeviceProperties().isTablet()); + AnimUtils.getDeviceOverviewToSplitTimings(mContainer.getDeviceProfile().isTablet); int distanceFromDismissedTask = 1; int slidingTranslation = 0; @@ -3886,12 +4063,14 @@ public abstract class RecentsView< lastTaskViewIndex); int scrollDiff = newScroll[i] - oldScroll[i] + offset; if (scrollDiff != 0) { - translateTaskWhenDismissed( - child, - Math.abs(i - dismissedIndex), - scrollDiff, - anim, - splitTimings); + if (!isExpressiveDismiss) { + translateTaskWhenDismissed( + child, + Math.abs(i - dismissedIndex), + scrollDiff, + anim, + splitTimings); + } if (child instanceof TaskView taskView) { mTaskViewsDismissPrimaryTranslations.put(taskView, scrollDiffPerPage); } @@ -3979,13 +4158,16 @@ public abstract class RecentsView< : finalTranslation + (mIsRtl ? -mLastComputedTaskSize.right : mLastComputedTaskSize.right); } - Animator dismissAnimator = ObjectAnimator.ofFloat(taskView, - taskView.getPrimaryDismissTranslationProperty(), - startTranslation, finalTranslation); - dismissAnimator.setInterpolator( - clampToProgress(dismissInterpolator, animationStartProgress, - animationEndProgress)); - anim.add(dismissAnimator); + // Expressive dismiss will animate the translations of taskViews itself. + if (!isExpressiveDismiss) { + Animator dismissAnimator = ObjectAnimator.ofFloat(taskView, + taskView.getPrimaryDismissTranslationProperty(), + startTranslation, finalTranslation); + dismissAnimator.setInterpolator( + clampToProgress(dismissInterpolator, animationStartProgress, + animationEndProgress)); + anim.add(dismissAnimator); + } mTaskViewsDismissPrimaryTranslations.put(taskView, (int) finalTranslation); distanceFromDismissedTask++; } @@ -4035,17 +4217,12 @@ public abstract class RecentsView< if (success) { mAnyTaskHasBeenDismissed = true; - // Caches the [groupTask] before removing it. As the [deskId] might become - // invalid by [removeViewInLayout] on the [dismissedTaskView] below. It might - // happen before [removeGroupTaskInternal] that runs on a helper thread. - final GroupTask groupTask; - if (shouldRemoveTask && dismissedTaskView != null - && (groupTask = dismissedTaskView.getGroupTask()) != null) { + if (shouldRemoveTask && dismissedTaskView != null) { if (dismissedTaskView.isRunningTask()) { finishRecentsAnimation(true /* toRecents */, false /* shouldPip */, - () -> removeGroupTaskInternal(groupTask)); + () -> removeTaskInternal(dismissedTaskView)); } else { - removeGroupTaskInternal(groupTask); + removeTaskInternal(dismissedTaskView); } mContainer.getStatsLogManager().logger() .withItemInfo(dismissedTaskView.getItemInfo()) @@ -4064,7 +4241,7 @@ public abstract class RecentsView< pageToSnapTo = indexOfChild(mClearAllButton); } else if (isClearAllHidden) { // Snap to focused task if clear all is hidden. - pageToSnapTo = getFirstTaskViewIndex(); + pageToSnapTo = indexOfChild(getFirstTaskView()); } } else { // Get the id of the task view we will snap to based on the current @@ -4082,7 +4259,7 @@ public abstract class RecentsView< } else { // Won't focus next task in split select, so snap to the // first task. - pageToSnapTo = getFirstTaskViewIndex(); + pageToSnapTo = indexOfChild(getFirstTaskView()); calculateScrollDiff = false; } } else { @@ -4131,14 +4308,12 @@ public abstract class RecentsView< mTopRowIdSet.remove(dismissedTaskViewId); if (taskCount == 1) { - if (!isSplitSelectionActive()) { - removeViewInLayout(mClearAllButton); - removeViewInLayout(mAddDesktopButton); - if (isHomeTaskDismissed) { - updateEmptyMessage(); - } else { - startHome(); - } + removeViewInLayout(mClearAllButton); + removeViewInLayout(mAddDesktopButton); + if (isHomeTaskDismissed) { + updateEmptyMessage(); + } else if (!mSplitSelectStateController.isSplitSelectActive()) { + startHome(); } } else { // Update focus task and its size. @@ -4223,7 +4398,7 @@ public abstract class RecentsView< // Update various scroll-dependent UI. dispatchScrollChanged(); updateActionsViewFocusedScroll(); - if (!mContainer.getDeviceProfile().getDeviceProperties().isTablet()) { + if (isClearAllHidden() && !mContainer.getDeviceProfile().isTablet) { mActionsView.updateDisabledFlags(OverviewActionsView.DISABLED_SCROLLING, false); } @@ -4337,7 +4512,7 @@ public abstract class RecentsView< * * Focused view is a single app * * Device is large screen */ - protected void updateCurrentTaskActionsVisibility() { + private void updateCurrentTaskActionsVisibility() { TaskView taskView = getCurrentPageTaskView(); boolean isCurrentSplit = taskView instanceof GroupedTaskView; GroupedTaskView groupedTaskView = isCurrentSplit ? (GroupedTaskView) taskView : null; @@ -4345,23 +4520,26 @@ public abstract class RecentsView< mActionsView.updateHiddenFlags(HIDDEN_SPLIT_SELECT_ACTIVE, isSplitSelectionActive()); // Update flags to see if actions bar should show buttons for a single task or a pair of // tasks. - boolean canSaveAppPair = isCurrentSplit - && !mIs3PLauncher - && getSplitSelectController().getAppPairsController().canSaveAppPair( - groupedTaskView); + boolean canSaveAppPair = isCurrentSplit && supportsAppPairs() && + getSplitSelectController().getAppPairsController().canSaveAppPair(groupedTaskView); mActionsView.updateForGroupedTask(isCurrentSplit, canSaveAppPair); boolean isCurrentDesktop = taskView instanceof DesktopTaskView; mActionsView.updateHiddenFlags(HIDDEN_DESKTOP, isCurrentDesktop); } + /** Returns if app pairs are supported in this launcher. Overridden in subclasses. */ + public boolean supportsAppPairs() { + return true; + } + /** * Iterate the grid by columns instead of by TaskView index, starting after the focused task and * up to the last balanced column. * * @return the highest visible TaskView between both rows */ - protected TaskView getHighestVisibleTaskView() { + private TaskView getHighestVisibleTaskView() { if (mTopRowIdSet.isEmpty()) return null; // return earlier TaskView lastVisibleTaskView = null; @@ -4384,31 +4562,34 @@ public abstract class RecentsView< return lastVisibleTaskView; } - protected void removeGroupTaskInternal(@NonNull GroupTask groupTask) { + private void removeTaskInternal(@NonNull TaskView dismissedTaskView) { UI_HELPER_EXECUTOR .getHandler() .post( () -> { - if (groupTask instanceof DesktopTask desktopTask) { - if (areMultiDesksFlagsEnabled()) { - SystemUiProxy.INSTANCE - .get(getContext()) - .removeDesk(desktopTask.getDeskId()); - } else if (DesktopModeFlags - .ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION.isTrue()) { - SystemUiProxy.INSTANCE - .get(getContext()) - .removeDefaultDeskInDisplay( - mContainer.getDisplay().getDisplayId()); - } + if (dismissedTaskView instanceof DesktopTaskView desktopTaskView) { + removeDesktopTaskView(desktopTaskView); } else { - for (Task task : groupTask.getTasks()) { - ActivityManagerWrapper.getInstance().removeTask(task.key.id); + for (int taskId : dismissedTaskView.getTaskIds()) { + ActivityManagerWrapper.getInstance().removeTask(taskId); } } }); } + private void removeDesktopTaskView(DesktopTaskView desktopTaskView) { + if (areMultiDesksFlagsEnabled()) { + SystemUiProxy.INSTANCE + .get(getContext()) + .removeDesk(desktopTaskView.getDeskId()); + } else if (DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION.isTrue()) { + SystemUiProxy.INSTANCE + .get(getContext()) + .removeDefaultDeskInDisplay( + mContainer.getDisplay().getDisplayId()); + } + } + protected void onDismissAnimationEnds() { AccessibilityManagerCompat.sendTestProtocolEventToTest(getContext(), DISMISS_ANIMATION_ENDS_MESSAGE); @@ -4532,25 +4713,24 @@ public abstract class RecentsView< /** Dismisses the entire [taskView]. */ public void dismissTaskView(TaskView taskView, boolean animateTaskView, boolean removeTask) { - if (enableExpressiveDismissTaskMotion() && (!showAsGrid() || enableGridOnlyOverview())) { - mDismissUtils.createTaskDismissSpringAnimation(taskView, removeTask, - false /* isSplitSelection */); - } else { - PendingAnimation pa = new PendingAnimation(DISMISS_TASK_DURATION); - createTaskDismissAnimation(pa, taskView, animateTaskView, removeTask, - DISMISS_TASK_DURATION, false /* dismissingForSplitSelection*/, - null /* gridEndData */); - runDismissAnimation(pa); - } + PendingAnimation pa = new PendingAnimation(DISMISS_TASK_DURATION); + createTaskDismissAnimation(pa, taskView, animateTaskView, removeTask, DISMISS_TASK_DURATION, + false /* dismissingForSplitSelection*/, false /* isExpressiveDismiss */); + runDismissAnimation(pa); + } + + protected void expressiveDismissTaskView(TaskView taskView, Function0<Unit> onEndRunnable) { + PendingAnimation pa = new PendingAnimation(DISMISS_TASK_DURATION); + createTaskDismissAnimation(pa, taskView, false /* animateTaskView */, true /* removeTask */, + DISMISS_TASK_DURATION, false /* dismissingForSplitSelection*/, + true /* isExpressiveDismiss */); + pa.addEndListener((success) -> onEndRunnable.invoke()); + runDismissAnimation(pa); } @SuppressWarnings("unused") private void dismissAllTasks(View view) { - if (enableExpressiveDismissTaskMotion()) { - mDismissUtils.dismissAllTasks(); - } else { - runDismissAnimation(createAllTasksDismissAnimation(DISMISS_TASK_DURATION)); - } + runDismissAnimation(createAllTasksDismissAnimation(DISMISS_TASK_DURATION)); mContainer.getStatsLogManager().logger().log(LAUNCHER_TASK_CLEAR_ALL); } @@ -4573,21 +4753,14 @@ public abstract class RecentsView< return super.dispatchKeyEvent(event); } - if (mUtils.taskMenuIsOpen()) { + if (mUtils.shouldInterceptKeyEvent(event)) { return super.dispatchKeyEvent(event); } switch (event.getKeyCode()) { - case KeyEvent.KEYCODE_TAB: { - View currentFocus = findFocus(); - if (currentFocus == null) return super.dispatchKeyEvent(event); - - View nextFocus = focusSearch(currentFocus, - event.isShiftPressed() ? FOCUS_BACKWARD : FOCUS_FORWARD); - if (nextFocus != null) { - return nextFocus.requestFocus(); - } - } + case KeyEvent.KEYCODE_TAB: + return snapToPageRelative(event.isShiftPressed() ? -1 : 1, true /* cycle */, + TaskGridNavHelper.TaskNavDirection.TAB); case KeyEvent.KEYCODE_DPAD_RIGHT: return snapToPageRelative(mIsRtl ? -1 : 1, true /* cycle */, TaskGridNavHelper.TaskNavDirection.RIGHT); @@ -4640,8 +4813,6 @@ public abstract class RecentsView< if (alpha == mContentAlpha) { return; } - - traceBegin(Trace.TRACE_TAG_APP, "RecentsView.setContentAlpha"); alpha = Utilities.boundToRange(alpha, 0, 1); mContentAlpha = alpha; @@ -4663,7 +4834,6 @@ public abstract class RecentsView< } else if (!mFreezeViewVisibility) { setVisibility(INVISIBLE); } - traceEnd(Trace.TRACE_TAG_APP); } /** @@ -4710,12 +4880,9 @@ public abstract class RecentsView< } public void reapplyActiveRotation() { - RotationTouchHelper rotationTouchHelper = RotationTouchHelper.REPOSITORY_INSTANCE.get( - getContext()).get(mContainer.getDisplayId()); - if (rotationTouchHelper != null) { - setLayoutRotation(rotationTouchHelper.getCurrentActiveRotation(), - rotationTouchHelper.getDisplayRotation()); - } + RotationTouchHelper rotationTouchHelper = RotationTouchHelper.INSTANCE.get(getContext()); + setLayoutRotation(rotationTouchHelper.getCurrentActiveRotation(), + rotationTouchHelper.getDisplayRotation()); } public void setLayoutRotation(int touchRotation, int displayRotation) { @@ -4742,21 +4909,15 @@ public abstract class RecentsView< return getTaskViewAt(getRunningTaskIndex() - 1); } - @Nullable - public TaskView getFirstNonDesktopTaskView() { - return mUtils.getFirstNonDesktopTaskView(); - } - - @Nullable - public TaskView getLastDesktopTaskView() { - return mUtils.getLastDesktopTaskView(); - } - @Nullable public TaskView getLastLargeTaskView() { return mUtils.getLastLargeTaskView(); } + public int getLargeTilesCount() { + return mUtils.getLargeTileCount(); + } + @Nullable public TaskView getCurrentPageTaskView() { return getTaskViewAt(getCurrentPage()); @@ -4767,14 +4928,6 @@ public abstract class RecentsView< return getTaskViewAt(getNextPage()); } - protected int getCurrentPageScrollDiff() { - return mCurrentPageScrollDiff; - } - - protected void setCurrentPageScrollDiff(int currentPageScrollDiff) { - mCurrentPageScrollDiff = currentPageScrollDiff; - } - @Nullable public TaskView getTaskViewNearestToCenterOfScreen() { return getTaskViewAt(getPageNearestToCenterOfScreen()); @@ -4801,7 +4954,7 @@ public abstract class RecentsView< } public void updateEmptyMessage() { - boolean isEmpty = !hasTaskViews() && !isSplitSelectionActive(); + boolean isEmpty = !hasTaskViews(); boolean hasSizeChanged = mLastMeasureSize.x != getWidth() || mLastMeasureSize.y != getHeight(); if (isEmpty == mShowEmptyMessage && !hasSizeChanged) { @@ -4864,6 +5017,9 @@ public abstract class RecentsView< * than the running task, when updating page offsets. */ public void setOffsetMidpointIndexOverride(int offsetMidpointIndexOverride) { + if (!enableAdditionalHomeAnimations()) { + return; + } mOffsetMidpointIndexOverride = offsetMidpointIndexOverride; updatePageOffsets(); } @@ -4895,14 +5051,8 @@ public abstract class RecentsView< float leftOffsetSize = midpoint - 1 >= 0 ? getHorizontalOffsetSize(midpoint - 1, midpoint, offset) : 0; - int rightOffsetReferenceIndex; - if (areMultiDesksFlagsEnabled() && midpoint == INVALID_PAGE) { - rightOffsetReferenceIndex = getFirstViewIndex(); - } else { - rightOffsetReferenceIndex = midpoint + 1; - } - float rightOffsetSize = rightOffsetReferenceIndex >= 0 && rightOffsetReferenceIndex < count - ? getHorizontalOffsetSize(rightOffsetReferenceIndex, midpoint, offset) + float rightOffsetSize = midpoint + 1 < count + ? getHorizontalOffsetSize(midpoint + 1, midpoint, offset) : 0; float modalMidpointOffsetSize = 0; @@ -4958,10 +5108,11 @@ public abstract class RecentsView< float modalTranslation = i == modalMidpoint ? modalMidpointOffsetSize : showAsGrid - ? mIsRtl ? gridOffsetSize : -gridOffsetSize + ? gridOffsetSize : i < modalMidpoint ? modalLeftOffsetSize : modalRightOffsetSize; - boolean skipTranslationOffset = - i == getRunningTaskIndex() && child instanceof DesktopTaskView; + boolean skipTranslationOffset = enableDesktopTaskAlphaAnimation() + && i == getRunningTaskIndex() + && child instanceof DesktopTaskView; float totalTranslationX = (skipTranslationOffset ? 0f : translation) + modalTranslation + carouselHiddenOffsetSize; if (child instanceof TaskView taskView) { @@ -5000,10 +5151,7 @@ public abstract class RecentsView< TaskView taskView = (TaskView) child; outRect.offset(taskView.getPersistentTranslationX(), taskView.getPersistentTranslationY()); - outRect.top += mContainer - .getDeviceProfile() - .getOverviewProfile() - .getTaskThumbnailTopMarginPx(); + outRect.top += mContainer.getDeviceProfile().overviewTaskThumbnailTopMarginPx; mTempMatrix.reset(); float persistentScale = taskView.getPersistentScale(); @@ -5021,8 +5169,7 @@ public abstract class RecentsView< * * @param offsetProgress From 0 to 1 where 0 means no offset and 1 means offset offscreen. */ - protected float getHorizontalOffsetSize(int childIndex, int midpointIndex, - float offsetProgress) { + private float getHorizontalOffsetSize(int childIndex, int midpointIndex, float offsetProgress) { if (offsetProgress == 0) { // Don't bother calculating everything below if we won't offset anyway. return 0; @@ -5124,7 +5271,7 @@ public abstract class RecentsView< if (isTopShift) { distanceToOffscreen = -taskPosition.bottom; } else if (isBottomShift) { - distanceToOffscreen = mContainer.getDeviceProfile().getDeviceProperties().getHeightPx() - taskPosition.top; + distanceToOffscreen = mContainer.getDeviceProfile().heightPx - taskPosition.top; } return distanceToOffscreen * offsetProgress; } @@ -5173,10 +5320,6 @@ public abstract class RecentsView< } } - protected void resetShareUIState() { - mUtils.resetShareUIState(); - } - /** * Primarily used by overview actions to initiate split from focused task, logs the source * of split invocation as such. @@ -5229,7 +5372,7 @@ public abstract class RecentsView< public void handleDesktopTaskInSplitSelectState(PendingAnimation builder, Interpolator deskTopFadeInterPolator) { SplitAnimationTimings timings = AnimUtils.getDeviceOverviewToSplitTimings( - mContainer.getDeviceProfile().getDeviceProperties().isTablet()); + mContainer.getDeviceProfile().isTablet); if (enableLargeDesktopWindowingTile()) { getTaskViews().forEachWithIndexInParent((index, taskView) -> { if (taskView instanceof DesktopTaskView) { @@ -5307,51 +5450,26 @@ public abstract class RecentsView< mSplitHiddenTaskView.updateFullscreenParams(); }); } else if (isInitiatingSplitFromTaskView) { - mSplitHiddenTaskView.setBorderEnabled(false); - // Splitting from Overview for fullscreen task - if (enableExpressiveDismissTaskMotion() - && (!showAsGrid() || enableGridOnlyOverview())) { - runExpressiveSplit(builder, mSplitHiddenTaskView); - } else { - createTaskDismissAnimation(builder, mSplitHiddenTaskView, true, false, duration, - true /* dismissingForSplitSelection*/, null /* gridEndData */); + if (Flags.enableHoverOfChildElementsInTaskview()) { + mSplitHiddenTaskView.setBorderEnabled(false); } + // Splitting from Overview for fullscreen task + createTaskDismissAnimation(builder, mSplitHiddenTaskView, true, false, duration, + true /* dismissingForSplitSelection*/, false /* isExpressiveDismiss */); } else { // Splitting from Home TaskView currentPageTaskView = getTaskViewAt(mCurrentPage); // When current page is a Desktop task it needs special handling to // display correct animation in split mode if (currentPageTaskView instanceof DesktopTaskView) { - if (enableExpressiveDismissTaskMotion() - && (!showAsGrid() || enableGridOnlyOverview())) { - runExpressiveSplit(builder, /* taskView= */ null); - } else { - createTaskDismissAnimation(builder, null, true, false, duration, - true /* dismissingForSplitSelection*/, null /* gridEndData */); - } + createTaskDismissAnimation(builder, null, true, false, duration, + true /* dismissingForSplitSelection*/, false /* isExpressiveDismiss */); } else { createInitialSplitSelectAnimation(builder); } } } - private void runExpressiveSplit(PendingAnimation builder, @Nullable TaskView taskView) { - createInitialSplitSelectAnimation(builder); - AtomicBoolean hasRunDismiss = new AtomicBoolean(false); - builder.addOnFrameListener((animator) -> { - SplitAnimationTimings splitTimings = - AnimUtils.getDeviceOverviewToSplitTimings( - mContainer.getDeviceProfile().getDeviceProperties().isTablet()); - if (animator.getAnimatedFraction() > splitTimings.getGridSlideStartOffset() - && !hasRunDismiss.get()) { - mDismissUtils.createTaskDismissSpringAnimation( - taskView, false /* shouldRemoveTaskView */, - true /* isSplitSelection */); - hasRunDismiss.set(true); - } - }); - } - /** * Confirms the selection of the next split task. The extra data is passed through because the * user may be selecting a subtask in a group. @@ -5407,7 +5525,7 @@ public abstract class RecentsView< Rect firstTaskStartingBounds = new Rect(); Rect firstTaskEndingBounds = mTempRect; - boolean isTablet = mContainer.getDeviceProfile().getDeviceProperties().isTablet(); + boolean isTablet = mContainer.getDeviceProfile().isTablet; SplitAnimationTimings timings = AnimUtils.getDeviceSplitToConfirmTimings(isTablet); PendingAnimation pendingAnimation = new PendingAnimation(timings.getDuration()); @@ -5464,7 +5582,7 @@ public abstract class RecentsView< } @SuppressLint("WrongCall") - private void resetFromSplitSelectionState() { + protected void resetFromSplitSelectionState() { safeRemoveDragLayerView(mSplitSelectStateController.getFirstFloatingTaskView()); safeRemoveDragLayerView(mSecondFloatingTaskView); safeRemoveDragLayerView(mSplitSelectStateController.getSplitInstructionsView()); @@ -5487,7 +5605,7 @@ public abstract class RecentsView< if (mSplitHiddenTaskViewIndex == -1) { return; } - if (!mContainer.getDeviceProfile().getDeviceProperties().isTablet()) { + if (!mContainer.getDeviceProfile().isTablet) { int pageToSnapTo = mCurrentPage; if (mSplitHiddenTaskViewIndex <= pageToSnapTo) { pageToSnapTo += 1; @@ -5511,11 +5629,6 @@ public abstract class RecentsView< } mSplitHiddenTaskView = null; } - - // Recents doesn't receive activity callback, so we cleanup manually - if (mContainer instanceof RecentsWindowManager manager) { - manager.cleanupRecentsWindow(); - } } private void safeRemoveDragLayerView(@Nullable View viewToRemove) { @@ -5537,11 +5650,11 @@ public abstract class RecentsView< int direction = orientationHandler.getSplitTranslationDirectionFactor( splitPosition, deviceProfile); - if (deviceProfile.getDeviceProperties().isTablet() && deviceProfile.isLeftRightSplit) { + if (deviceProfile.isTablet && deviceProfile.isLeftRightSplit) { // Only shift TaskViews if there is not enough space on the side of // mLastComputedTaskSize to minimize motion. int sideSpace = mIsRtl - ? deviceProfile.getDeviceProperties().getWidthPx() - mLastComputedTaskSize.right + ? deviceProfile.widthPx - mLastComputedTaskSize.right : mLastComputedTaskSize.left; int extraSpace = splitPlaceholderSize + mPageSpacing - sideSpace; if (extraSpace <= 0f) { @@ -5828,8 +5941,7 @@ public abstract class RecentsView< finishRecentsAnimation(false /* toRecents */, null); onTaskLaunchAnimationEnd(true /* success */); } else { - finishRecentsAnimation(true /* toRecents */, - () -> taskView.launchWithoutAnimation(this::onTaskLaunchAnimationEnd)); + taskView.launchWithoutAnimation(this::onTaskLaunchAnimationEnd); } mContainer.getStatsLogManager().logger().withItemInfo(taskView.getItemInfo()) .log(LAUNCHER_TASK_LAUNCH_SWIPE_DOWN); @@ -5865,11 +5977,6 @@ public abstract class RecentsView< } } - @Override - protected void pageBeginTransition() { - super.pageBeginTransition(); - } - @Override protected String getCurrentPageDescription() { return ""; @@ -5877,19 +5984,36 @@ public abstract class RecentsView< @Override public void addChildrenForAccessibility(ArrayList<View> outChildren) { - outChildren.addAll(mUtils.getAccessibilityChildren()); + outChildren.addAll(getAccessibilityChildren()); + } + + public List<View> getAccessibilityChildren() { + return mUtils.getAccessibilityChildren(); } @Override public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info) { super.onInitializeAccessibilityNodeInfo(info); - // We only care about TaskView's for the `CollectionInfo` that Talkback uses to read out. final AccessibilityNodeInfo.CollectionInfo collectionInfo = new AccessibilityNodeInfo.CollectionInfo( - 1, getTaskViewCount(), false); + 1, getAccessibilityChildren().size(), false); info.setCollectionInfo(collectionInfo); } + @Override + public void onInitializeAccessibilityEvent(AccessibilityEvent event) { + super.onInitializeAccessibilityEvent(event); + event.setScrollable(hasTaskViews()); + + if (event.getEventType() == AccessibilityEvent.TYPE_VIEW_SCROLLED) { + final List<View> accessibilityChildren = getAccessibilityChildren(); + final int[] visibleTasks = getVisibleChildrenRange(); + event.setFromIndex(accessibilityChildren.indexOf(getChildAt(visibleTasks[1]))); + event.setToIndex(accessibilityChildren.indexOf(getChildAt(visibleTasks[0]))); + event.setItemCount(accessibilityChildren.size()); + } + } + @Override public CharSequence getAccessibilityClassName() { // To hear position-in-list related feedback from Talkback. @@ -5923,6 +6047,7 @@ public abstract class RecentsView< return mRemoteTargetHandles; } + // TODO: To be removed in a follow up CL public void setRecentsAnimationTargets(RecentsAnimationController recentsAnimationController, RecentsAnimationTargets recentsAnimationTargets) { Log.d(TAG, "setRecentsAnimationTargets " @@ -5934,19 +6059,15 @@ public abstract class RecentsView< return; } - boolean forDesktop; - if (DesktopModeStatus.enableMultipleDesktops(getContext())) { - forDesktop = mActiveGestureGroupedTaskInfo != null - && mActiveGestureGroupedTaskInfo.isBaseType(GroupedTaskInfo.TYPE_DESK); - } else { - forDesktop = recentsAnimationTargets.hasDesktopTasks(mContext); - } - RemoteTargetGluer gluer = new RemoteTargetGluer(getContext(), getContainerInterface(), - recentsAnimationTargets, forDesktop); - if (forDesktop) { + RemoteTargetGluer gluer; + if (recentsAnimationTargets.hasDesktopTasks(mContext)) { + gluer = new RemoteTargetGluer(getContext(), getSizeStrategy(), recentsAnimationTargets, + true /* forDesktop */); mRemoteTargetHandles = gluer.assignTargetsForDesktop( - recentsAnimationTargets, /* transitionInfo = */ null); + recentsAnimationTargets, /* transitionInfo= */ null); } else { + gluer = new RemoteTargetGluer(getContext(), getSizeStrategy(), recentsAnimationTargets, + false); mRemoteTargetHandles = gluer.assignTargetsForSplitScreen(recentsAnimationTargets); } mSplitBoundsConfig = gluer.getSplitBounds(); @@ -5956,7 +6077,7 @@ public abstract class RecentsView< // mSyncTransactionApplier doesn't get transferred over runActionOnRemoteHandles(remoteTargetHandle -> { final TransformParams params = remoteTargetHandle.getTransformParams(); - if (mContainer instanceof RecentsWindowManager manager) { + if (RecentsWindowFlags.Companion.getEnableOverviewInWindow()) { params.setHomeBuilderProxy((builder, app, transformParams) -> { mTmpMatrix.setScale( 1f, 1f, app.localBounds.exactCenterX(), app.localBounds.exactCenterY()); @@ -6003,12 +6124,19 @@ public abstract class RecentsView< finishRecentsAnimation(toRecents, true /* shouldPip */, onFinishComplete); } + /** + * Finish recents animation. + */ + public void finishRecentsAnimation(boolean toRecents, boolean shouldPip, + @Nullable Runnable onFinishComplete) { + finishRecentsAnimation(toRecents, shouldPip, false, onFinishComplete); + } /** * NOTE: Whatever value gets passed through to the toRecents param may need to also be set on * {@link #mRecentsAnimationController#setWillFinishToHome}. */ public void finishRecentsAnimation(boolean toRecents, boolean shouldPip, - @Nullable Runnable onFinishComplete) { + boolean allAppTargetsAreTranslucent, @Nullable Runnable onFinishComplete) { Log.d(TAG, "finishRecentsAnimation - mRecentsAnimationController: " + mRecentsAnimationController); // TODO(b/197232424#comment#10) Move this back into onRecentsAnimationComplete(). Maybe? @@ -6022,7 +6150,7 @@ public abstract class RecentsView< } final boolean sendUserLeaveHint = toRecents && shouldPip; - if (sendUserLeaveHint && !PipFlags.isPip2ExperimentEnabled()) { + if (sendUserLeaveHint && !com.android.wm.shell.Flags.enablePip2()) { // Notify the SysUI to use fade-in animation when entering PiP from live tile. // Note: PiP2 handles entering differently, so skip if enable_pip2=true. final SystemUiProxy systemUiProxy = SystemUiProxy.INSTANCE.get(getContext()); @@ -6041,10 +6169,7 @@ public abstract class RecentsView< tx, null /* overlay */); } } - if (enableOverviewBackgroundWallpaperBlur()) { - mBlurUtils.setDrawLiveTileBelowRecents(false); - } - mRecentsAnimationController.finish(toRecents, () -> { + mRecentsAnimationController.finish(toRecents, allAppTargetsAreTranslucent, () -> { if (onFinishComplete != null) { onFinishComplete.run(); } @@ -6115,9 +6240,9 @@ public abstract class RecentsView< } protected int getClearAllExtraPageSpacing() { - OverviewProfile overviewProfile = mContainer.getDeviceProfile().getOverviewProfile(); return showAsGrid() - ? Math.max(overviewProfile.getGridSideMargin() - mPageSpacing, 0) : 0; + ? Math.max(mContainer.getDeviceProfile().overviewGridSideMargin - mPageSpacing, 0) + : 0; } @Override @@ -6368,12 +6493,6 @@ public abstract class RecentsView< private int getOffsetFromScrollPosition( int pageIndex, IntArray topRowIdArray, IntArray bottomRowIdArray) { - return getOffsetFromScrollPosition(pageIndex, topRowIdArray, bottomRowIdArray, - /* removedPageIndex= */ INVALID_PAGE); - } - - protected int getOffsetFromScrollPosition(int pageIndex, IntArray topRowIdArray, - IntArray bottomRowIdArray, int removedPageIndex) { if (!showAsGrid()) { return 0; } @@ -6388,12 +6507,7 @@ public abstract class RecentsView< return 0; } - int lastGridTaskViewIndex = indexOfChild(lastGridTaskView); - // When computing offset, account for a removed page if provided. - if (removedPageIndex != INVALID_PAGE && removedPageIndex < lastGridTaskViewIndex) { - lastGridTaskViewIndex--; - } - if (getScrollForPage(pageIndex) != getScrollForPage(lastGridTaskViewIndex)) { + if (getScrollForPage(pageIndex) != getScrollForPage(indexOfChild(lastGridTaskView))) { return 0; } @@ -6432,13 +6546,6 @@ public abstract class RecentsView< && !taskView.isLargeTile(); } - /** - * @return true if the task in on the top of the grid - */ - public boolean isOnGridTopRow(TaskView taskView) { - return showAsGrid() && mTopRowIdSet.contains(taskView.getTaskViewId()); - } - public Consumer<MotionEvent> getEventDispatcher(float navbarRotation) { float degreesRotated; if (navbarRotation == 0) { @@ -6604,10 +6711,9 @@ public abstract class RecentsView< getCurrentPageTaskView().setModalness(modalness); } // Only show actions view when it's modal for in-place landscape mode. - mActionsView.updateHiddenFlags( - HIDDEN_NON_ZERO_ROTATION, modalness < 1 - && mOrientationState.shouldHideActionButtons() - ); + boolean inPlaceLandscape = !mOrientationState.isRecentsActivityRotationAllowed() + && mOrientationState.getTouchRotation() != ROTATION_0; + mActionsView.updateHiddenFlags(HIDDEN_NON_ZERO_ROTATION, modalness < 1 && inPlaceLandscape); } @Nullable @@ -6627,10 +6733,16 @@ public abstract class RecentsView< return mTaskOverlayFactory; } - public BaseContainerInterface<STATE_TYPE, ?> getContainerInterface() { - return mContainerInterface; + public BaseContainerInterface getSizeStrategy() { + return mSizeStrategy; } + + /** + * Returns the container interface + */ + protected abstract BaseContainerInterface<STATE_TYPE, ?> getContainerInterface(int displayId); + /** * Set all the task views to color tint scrim mode, dimming or tinting them all. Allows the * tasks to be dimmed while other elements in the recents view are left alone. @@ -6681,7 +6793,7 @@ public abstract class RecentsView< /** Returns {@code true} if the overview tasks are displayed as a grid. */ public boolean showAsGrid() { return mOverviewGridEnabled || (mCurrentGestureEndTarget != null - && mContainerInterface.stateFromGestureEndTarget(mCurrentGestureEndTarget) + && mSizeStrategy.stateFromGestureEndTarget(mCurrentGestureEndTarget) .displayOverviewTasksAsGrid(mContainer.getDeviceProfile())); } @@ -6711,14 +6823,6 @@ public abstract class RecentsView< * Adds a listener for scroll changes */ public void addOnScrollChangedListener(OnScrollChangedListener listener) { - if (mScrollListeners.contains(listener)) { - if (BuildConfigs.IS_STUDIO_BUILD) { - throw new IllegalStateException( - "Should not add duplicated OnScrollChangedListener"); - } else { - mScrollListeners.remove(listener); - } - } mScrollListeners.add(listener); } @@ -6849,11 +6953,11 @@ public abstract class RecentsView< super.requestChildFocus(child, focused); } - protected void dispatchScrollChanged() { + private void dispatchScrollChanged() { runActionOnRemoteHandles(remoteTargetHandle -> remoteTargetHandle.getTaskViewSimulator().setScroll(getScrollOffset())); for (int i = mScrollListeners.size() - 1; i >= 0; i--) { - mScrollListeners.valueAt(i).onScrollChanged(); + mScrollListeners.get(i).onScrollChanged(); } } @@ -6893,16 +6997,78 @@ public abstract class RecentsView< public void onExpandPip() { MAIN_EXECUTOR.execute(() -> { if (mRecentsView == null - || mRecentsView.mContainerInterface.getTaskbarController() == null) { + || mRecentsView.mSizeStrategy.getTaskbarController() == null) { return; } // Hide the task bar when leaving PiP to prevent it from flickering once // the app settles in full-screen mode. - mRecentsView.mContainerInterface.getTaskbarController().onExpandPip(); + mRecentsView.mSizeStrategy.getTaskbarController().onExpandPip(); }); } } + @Override + public void onCanCreateDesksChanged(boolean canCreateDesks) { + // TODO: b/389209338 - update the AddDesktopButton's visibility on this. + } + + @Override + public void onDeskAdded(int displayId, int deskId) { + // Ignore desk changes that don't belong to this display. + if (displayId != mContainer.getDisplay().getDisplayId()) { + return; + } + + if (mUtils.getDesktopTaskViewForDeskId(deskId) != null) { + Log.e(TAG, "A task view for this desk has already been added."); + return; + } + + TaskView currentTaskView = getTaskViewAt(mCurrentPage); + + // We assume that a newly added desk is always empty and gets added to the left of the + // `AddNewDesktopButton`. + DesktopTaskView desktopTaskView = + (DesktopTaskView) getTaskViewFromPool(TaskViewType.DESKTOP); + desktopTaskView.bind(new DesktopTask(deskId, displayId, new ArrayList<>()), + mOrientationState, mTaskOverlayFactory); + + Objects.requireNonNull(mAddDesktopButton); + final int insertionIndex = 1 + indexOfChild(mAddDesktopButton); + addView(desktopTaskView, insertionIndex); + + updateTaskSize(); + mUtils.updateChildTaskOrientations(); + updateScrollSynchronously(); + + // Set Current Page based on the stored TaskView. + if (currentTaskView != null) { + setCurrentPage(indexOfChild(currentTaskView)); + } + } + + @Override + public void onDeskRemoved(int displayId, int deskId) { + // Ignore desk changes that don't belong to this display. + if (displayId != mContainer.getDisplay().getDisplayId()) { + return; + } + + // We need to distinguish between desk removals that are triggered from outside of overview + // vs. the ones that were initiated from overview by dismissing the corresponding desktop + // task view. + var taskView = mUtils.getDesktopTaskViewForDeskId(deskId); + if (taskView != null) { + dismissTaskView(taskView, true, true); + } + } + + @Override + public void onActiveDeskChanged(int displayId, int newActiveDesk, int oldActiveDesk) { + // TODO: b/400870600 - We may need to add code here to special case when an empty desk gets + // activated, since `RemoteDesktopLaunchTransitionRunner` doesn't always get triggered. + } + /** Get the color used for foreground scrimming the RecentsView for sharing. */ public static int getForegroundScrimDimColor(Context context) { return context.getColor(R.color.overview_foreground_scrim_color); @@ -6941,7 +7107,7 @@ public abstract class RecentsView< public void moveTaskToDesktop(TaskContainer taskContainer, DesktopModeTransitionSource transitionSource, Runnable successCallback) { - if (!DesktopModeStatus.canEnterDesktopMode(mContext)) { + if (!DesktopModeStatus.canEnterDesktopMode(getContext())) { return; } switchToScreenshot(() -> finishRecentsAnimation(/* toRecents= */true, /* shouldPip= */false, @@ -6974,7 +7140,6 @@ public abstract class RecentsView< return; } mDesktopRecentsTransitionController.moveToExternalDisplay(taskContainer.getTask().key.id); - dismissTaskView(taskContainer.getTaskView(), /*animate*/true, /*removeTask*/false); successCallback.run(); } @@ -6997,19 +7162,26 @@ public abstract class RecentsView< } } + private int getFontWeight() { + int fontWeightAdjustment = getResources().getConfiguration().fontWeightAdjustment; + if (fontWeightAdjustment != Configuration.FONT_WEIGHT_ADJUSTMENT_UNDEFINED) { + return Typeface.Builder.NORMAL_WEIGHT + fontWeightAdjustment; + } + return Typeface.Builder.NORMAL_WEIGHT; + } + /** - * Runs the spring animations as a task dismisses or settles back into its place in overview. + * Creates the spring animations which run as a task settles back into its place in overview. * * <p>When a task dismiss is cancelled, the task will return to its original position via a * spring animation. As it passes the threshold of its settling state, its neighbors will * spring in response to the perceived impact of the settling task. */ - public RecentsDismissUtils.SpringSet runTaskDismissSettlingSpringAnimation( - TaskView draggedTaskView, boolean isDismissing, - RecentsDismissUtils.DismissedTaskData dismissedTaskData, boolean shouldRemoveTaskView, - boolean isSplitSelection) { - return mDismissUtils.createTaskDismissSpringAnimation(draggedTaskView, isDismissing, - dismissedTaskData, shouldRemoveTaskView, isSplitSelection); + public SpringAnimation createTaskDismissSettlingSpringAnimation(TaskView draggedTaskView, + float velocity, boolean isDismissing, int dismissLength, + Function0<Unit> onEndRunnable) { + return mDismissUtils.createTaskDismissSettlingSpringAnimation(draggedTaskView, velocity, + isDismissing, dismissLength, onEndRunnable); } /** @@ -7024,15 +7196,13 @@ public abstract class RecentsView< } /** - * Draws the remote animation targets above the recents view. + * Sets whether the remote animation targets should draw below the recents view. * + * @param drawBelowRecents whether the surface should draw below Recents. * @param remoteTargetHandles collection of remoteTargetHandles in Recents. */ - public void setDrawAboveRecents(RemoteTargetHandle[] remoteTargetHandles) { - mBlurUtils.setDrawAboveRecents(remoteTargetHandles); - } - - public Map<TaskView, Integer> getTaskViewsDismissPrimaryTranslations() { - return mTaskViewsDismissPrimaryTranslations; + public void setDrawBelowRecents(boolean drawBelowRecents, + RemoteTargetHandle[] remoteTargetHandles) { + mBlurUtils.setDrawBelowRecents(drawBelowRecents, remoteTargetHandles); } } diff --git a/quickstep/src/com/android/quickstep/views/RecentsViewContainer.java b/quickstep/src/com/android/quickstep/views/RecentsViewContainer.java index 031158d886..e61d402698 100644 --- a/quickstep/src/com/android/quickstep/views/RecentsViewContainer.java +++ b/quickstep/src/com/android/quickstep/views/RecentsViewContainer.java @@ -32,8 +32,6 @@ import com.android.launcher3.logger.LauncherAtom; import com.android.launcher3.taskbar.TaskbarUIController; import com.android.launcher3.views.ActivityContext; import com.android.launcher3.views.ScrimView; -import com.android.quickstep.BaseContainerInterface; -import com.android.quickstep.util.SplitSelectStateController; /** * Interface to be implemented by the parent view of RecentsView @@ -59,11 +57,6 @@ public interface RecentsViewContainer extends ActivityContext { */ ScrimView getScrimView(); - /** - * Returns the BaseContainerInterface to interact with RecentsViewContainer. - */ - <T extends BaseContainerInterface<?, ?>> T getContainerInterface(); - /** * Returns the Overview Panel as a View */ @@ -174,7 +167,7 @@ public interface RecentsViewContainer extends ActivityContext { * Enter staged split directly from the current running app. * @param leftOrTop if the staged split will be positioned left or top. */ - default void enterStageSplitFromRunningApp(boolean leftOrTop, int displayId) {} + default void enterStageSplitFromRunningApp(boolean leftOrTop){} /** * Overwrites any logged item in Launcher that doesn't have a container with the @@ -205,9 +198,4 @@ public interface RecentsViewContainer extends ActivityContext { void setTaskbarUIController(@Nullable TaskbarUIController taskbarUIController); @Nullable TaskbarUIController getTaskbarUIController(); - - /** - * Returns the Split Select State Controller - */ - SplitSelectStateController getSplitSelectStateController(); } diff --git a/quickstep/src/com/android/quickstep/views/RecentsViewModelHelper.kt b/quickstep/src/com/android/quickstep/views/RecentsViewModelHelper.kt index d420bc056e..ff711da70f 100644 --- a/quickstep/src/com/android/quickstep/views/RecentsViewModelHelper.kt +++ b/quickstep/src/com/android/quickstep/views/RecentsViewModelHelper.kt @@ -21,6 +21,7 @@ import com.android.quickstep.ViewUtils import com.android.quickstep.recents.viewmodel.RecentsViewModel import com.android.systemui.shared.recents.model.ThumbnailData import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.cancel import kotlinx.coroutines.launch import kotlinx.coroutines.withContext @@ -43,10 +44,10 @@ class RecentsViewModelHelper( // Update recentsViewModel and apply the thumbnailOverride ASAP, before waiting inside // viewAttachedScope. recentsViewModel.setRunningTaskShowScreenshot(true) - recentsCoroutineScope.launch(dispatcherProvider.lightweightBackground) { + recentsCoroutineScope.launch(dispatcherProvider.background) { recentsViewModel.waitForRunningTaskShowScreenshotToUpdate() recentsViewModel.waitForThumbnailsToUpdate(updatedThumbnails) - withContext(dispatcherProvider.main) { + withContext(Dispatchers.Main.immediate) { ViewUtils.postFrameDrawn(taskView, onFinishRunnable) } } diff --git a/quickstep/src/com/android/quickstep/views/RecentsViewUtils.kt b/quickstep/src/com/android/quickstep/views/RecentsViewUtils.kt index abd9787e5b..b265b13393 100644 --- a/quickstep/src/com/android/quickstep/views/RecentsViewUtils.kt +++ b/quickstep/src/com/android/quickstep/views/RecentsViewUtils.kt @@ -16,53 +16,32 @@ package com.android.quickstep.views -import android.animation.AnimatorSet -import android.animation.ObjectAnimator import android.graphics.PointF import android.graphics.Rect import android.util.FloatProperty -import android.util.Log -import android.util.Property +import android.view.KeyEvent import android.view.View import android.view.View.LAYOUT_DIRECTION_LTR import android.view.View.LAYOUT_DIRECTION_RTL import androidx.core.view.children -import androidx.core.view.isInvisible -import androidx.dynamicanimation.animation.FloatPropertyCompat -import androidx.dynamicanimation.animation.SpringAnimation -import androidx.dynamicanimation.animation.SpringForce import com.android.launcher3.AbstractFloatingView.TYPE_TASK_MENU import com.android.launcher3.AbstractFloatingView.getTopOpenViewWithType -import com.android.launcher3.Flags.enableDesktopExplodedView +import com.android.launcher3.Flags.enableGridOnlyOverview import com.android.launcher3.Flags.enableLargeDesktopWindowingTile -import com.android.launcher3.Flags.enableOverviewOnConnectedDisplays -import com.android.launcher3.PagedView.INVALID_PAGE -import com.android.launcher3.R +import com.android.launcher3.Flags.enableOverviewIconMenu +import com.android.launcher3.Flags.enableSeparateExternalDisplayTasks import com.android.launcher3.Utilities.getPivotsForScalingRectToRect import com.android.launcher3.statehandlers.DesktopVisibilityController import com.android.launcher3.statehandlers.DesktopVisibilityController.Companion.INACTIVE_DESK_ID -import com.android.launcher3.statemanager.BaseState import com.android.launcher3.util.IntArray -import com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu -import com.android.launcher3.util.window.WindowManagerProxy.DesktopVisibilityListener -import com.android.quickstep.GestureState -import com.android.quickstep.RemoteTargetGluer.RemoteTargetHandle import com.android.quickstep.util.DesksUtils.Companion.areMultiDesksFlagsEnabled import com.android.quickstep.util.DesktopTask import com.android.quickstep.util.GroupTask import com.android.quickstep.util.isExternalDisplay -import com.android.quickstep.views.RecentsView.DESKTOP_CAROUSEL_DETACH_PROGRESS -import com.android.quickstep.views.RecentsView.RECENTS_GRID_PROGRESS import com.android.quickstep.views.RecentsView.RUNNING_TASK_ATTACH_ALPHA -import com.android.quickstep.views.RecentsView.TAG -import com.android.quickstep.views.RecentsView.TASK_THUMBNAIL_SPLASH_ALPHA -import com.android.quickstep.views.TaskView.Companion.FLAG_UPDATE_ALL import com.android.systemui.shared.recents.model.Task import com.android.systemui.shared.recents.model.ThumbnailData import com.android.wm.shell.shared.GroupedTaskInfo -import com.android.wm.shell.shared.desktopmode.DesktopModeStatus.enableMultipleDesktops -import java.util.concurrent.CopyOnWriteArrayList import java.util.function.BiConsumer import kotlin.math.min import kotlin.reflect.KMutableProperty1 @@ -71,21 +50,9 @@ import kotlin.reflect.KMutableProperty1 * Helper class for [RecentsView]. This util class contains refactored and extracted functions from * RecentsView to facilitate the implementation of unit tests. */ -class RecentsViewUtils(private val recentsView: RecentsView<*, *>) : DesktopVisibilityListener { +class RecentsViewUtils(private val recentsView: RecentsView<*, *>) { val taskViews = TaskViewsIterable(recentsView) - /** Callback to be invoked when a new desk is added. */ - interface OnDeskAddedListener { - /** - * Called when a new desk is added. - * - * @param desktopTaskView The [DesktopTaskView] of the new desk. - */ - fun onDeskAdded(desktopTaskView: DesktopTaskView) - } - - private val onDeskAddedListeners = CopyOnWriteArrayList<OnDeskAddedListener>() - /** Takes a screenshot of all [taskView] and return map of taskId to the screenshot */ fun screenshotTasks(taskView: TaskView): Map<Int, ThumbnailData> { val recentsAnimationController = recentsView.recentsAnimationController ?: return emptyMap() @@ -140,27 +107,21 @@ class RecentsViewUtils(private val recentsView: RecentsView<*, *>) : DesktopVisi /** Returns a list of all large TaskViews [TaskView]s */ fun getLargeTaskViews(): List<TaskView> = taskViews.filter { it.isLargeTile } - /** Returns a list of all non-large TaskViews [TaskView]s */ - fun getSmallTaskViews(): List<TaskView> = taskViews.filter { !it.isLargeTile } - /** Returns all the TaskViews in the top row, without the focused task */ fun getTopRowTaskViews(): List<TaskView> = taskViews.filter { recentsView.mTopRowIdSet.contains(it.taskViewId) } /** Returns all the task Ids in the top row, without the focused task */ - fun getTopRowIdArray(): IntArray = - getTopRowTaskViews().map { it.taskViewId }.toLauncher3IntArray() + fun getTopRowIdArray(): IntArray = getTopRowTaskViews().map { it.taskViewId }.toIntArray() /** Returns all the TaskViews in the bottom row, without the focused task */ fun getBottomRowTaskViews(): List<TaskView> = taskViews.filter { !recentsView.mTopRowIdSet.contains(it.taskViewId) && !it.isLargeTile } /** Returns all the task Ids in the bottom row, without the focused task */ - fun getBottomRowIdArray(): IntArray = - getBottomRowTaskViews().map { it.taskViewId }.toLauncher3IntArray() + fun getBottomRowIdArray(): IntArray = getBottomRowTaskViews().map { it.taskViewId }.toIntArray() - private fun List<Int>.toLauncher3IntArray() = - IntArray(size).apply { this@toLauncher3IntArray.forEach(::add) } + private fun List<Int>.toIntArray() = IntArray(size).apply { this@toIntArray.forEach(::add) } /** Counts [TaskView]s that are large tiles. */ fun getLargeTileCount(): Int = taskViews.count { it.isLargeTile } @@ -195,8 +156,6 @@ class RecentsViewUtils(private val recentsView: RecentsView<*, *>) : DesktopVisi if (enableLargeDesktopWindowingTile()) taskViews.firstOrNull { it !is DesktopTaskView } else taskViews.firstOrNull() - fun getLastDesktopTaskView(): TaskView? = taskViews.lastOrNull { it is DesktopTaskView } - /** * Returns the [TaskView] that should be the current page during task binding, in the following * priorities: @@ -211,7 +170,7 @@ class RecentsViewUtils(private val recentsView: RecentsView<*, *>) : DesktopVisi ?: focusedTaskView ?: taskViews.firstOrNull { it !is DesktopTaskView && - (enableOverviewOnConnectedDisplays() || !it.isExternalDisplay) + !(enableSeparateExternalDisplayTasks() && it.isExternalDisplay) } ?: taskViews.lastOrNull() @@ -230,18 +189,22 @@ class RecentsViewUtils(private val recentsView: RecentsView<*, *>) : DesktopVisi if (desktopTaskView != null) return recentsView.indexOfChild(desktopTaskView) } val firstTaskViewIndex = recentsView.indexOfChild(getFirstTaskView()) - return if (getDeviceProfile().deviceProperties.isTablet) { + return if (getDeviceProfile().isTablet) { var index = firstTaskViewIndex if (enableLargeDesktopWindowingTile() && runningTaskView !is DesktopTaskView) { // For fullsreen tasks, skip over Desktop tasks in its section index += - if (runningTaskView.isExternalDisplay) { - taskViews.count { it is DesktopTaskView && it.isExternalDisplay } + if (enableSeparateExternalDisplayTasks()) { + if (runningTaskView.isExternalDisplay) { + taskViews.count { it is DesktopTaskView && it.isExternalDisplay } + } else { + taskViews.count { it is DesktopTaskView && !it.isExternalDisplay } + } } else { - taskViews.count { it is DesktopTaskView && !it.isExternalDisplay } + getDesktopTaskViewCount() } } - if (!runningTaskView.isExternalDisplay) { + if (enableSeparateExternalDisplayTasks() && !runningTaskView.isExternalDisplay) { // For main display section, skip over external display tasks index += taskViews.count { it.isExternalDisplay } } @@ -269,102 +232,6 @@ class RecentsViewUtils(private val recentsView: RecentsView<*, *>) : DesktopVisi /** Returns the last TaskView that should be displayed as a large tile. */ fun getLastLargeTaskView(): TaskView? = taskViews.lastOrNull { it.isLargeTile } - override fun onCanCreateDesksChanged(canCreateDesks: Boolean) { - recentsView.addDeskButton?.isInvisible = !canCreateDesks - } - - private fun animateDesktopTaskViewSpringIn(desktopTaskView: DesktopTaskView) { - val taskDismissFloatProperty = - FloatPropertyCompat.createFloatPropertyCompat( - desktopTaskView.primaryDismissTranslationProperty - ) - - with(recentsView) { - // Calculate initial translation to bring it offscreen. - val desktopTaskViewIndex = indexOfChild(desktopTaskView) - val midpointIndex = - if (getTaskViewAt(desktopTaskViewIndex + 1) != null) desktopTaskViewIndex + 1 - else INVALID_PAGE - var offscreenTranslationX = - getHorizontalOffsetSize(desktopTaskViewIndex, midpointIndex, 1f) - - // Add 40dp to the offscreen translation. - val additionalOffsetPx = - context.resources.getDimensionPixelSize( - R.dimen.newly_created_desktop_offscreen_position - ) - offscreenTranslationX += if (isRtl) additionalOffsetPx else -additionalOffsetPx - desktopTaskView.primaryDismissTranslationProperty.set( - desktopTaskView, - offscreenTranslationX, - ) - desktopTaskView.isInvisible = false - - val dampingRatio = - context.resources.getFloat(R.dimen.newly_created_desktop_spring_damping_ratio) - val stiffness = - context.resources.getFloat(R.dimen.newly_created_desktop_spring_stiffness) - - SpringAnimation(desktopTaskView, taskDismissFloatProperty) - .setSpring(SpringForce(0f).setDampingRatio(dampingRatio).setStiffness(stiffness)) - .start() - } - } - - override fun onDeskAdded(displayId: Int, deskId: Int) { - with(recentsView) { - // Ignore desk changes that don't belong to this display. - if (displayId != mContainer.displayId) { - return - } - - if (getDesktopTaskViewForDeskId(deskId) != null) { - Log.e(TAG, "A task view for this desk has already been added.") - return - } - - val currentTaskView = currentPageTaskView - - // We assume that a newly added desk is always empty and gets added to the left of the - // `AddNewDesktopButton`. - val desktopTaskView = getTaskViewFromPool(TaskViewType.DESKTOP) as DesktopTaskView - desktopTaskView.bind( - DesktopTask(deskId, displayId, emptyList()), - pagedViewOrientedState, - taskOverlayFactory, - ) - desktopTaskView.isInvisible = true - - val insertionIndex = 1 + indexOfChild(addDeskButton!!) - addView(desktopTaskView, insertionIndex) - updateTaskSize() - updateChildTaskOrientations() - updateScrollSynchronously() - animateDesktopTaskViewSpringIn(desktopTaskView) - - // Set Current Page based on the stored TaskView. - currentTaskView?.let { setCurrentPage(indexOfChild(it)) } - - onDeskAddedListeners.forEach { it.onDeskAdded(desktopTaskView) } - } - } - - override fun onDeskRemoved(displayId: Int, deskId: Int) { - with(recentsView) { - // Ignore desk changes that don't belong to this display. - if (displayId != mContainer.displayId) { - return - } - - // We need to distinguish between desk removals that are triggered from outside of - // overview vs. the ones that were initiated from overview by dismissing the - // corresponding desktop task view. - getDesktopTaskViewForDeskId(deskId)?.let { - dismissTaskView(it, /* animateTaskView= */ true, /* removeTask= */ true) - } - } - } - /** * Gets the list of accessibility children. Currently all the children of RecentsViews are * added, and in the reverse order to the list. @@ -461,7 +328,7 @@ class RecentsViewUtils(private val recentsView: RecentsView<*, *>) : DesktopVisi outTopRowRect: Rect, outBottomRowRect: Rect, ) { - if (!getDeviceProfile().deviceProperties.isTablet) { + if (!getDeviceProfile().isTablet) { getRowRect(getFirstTaskView(), getLastTaskView(), outTaskViewRowRect) return } @@ -502,9 +369,9 @@ class RecentsViewUtils(private val recentsView: RecentsView<*, *>) : DesktopVisi private fun getTaskMenu(): TaskMenuView? = getTopOpenViewWithType(recentsView.mContainer, TYPE_TASK_MENU) as? TaskMenuView - fun taskMenuIsOpen(): Boolean { + fun shouldInterceptKeyEvent(event: KeyEvent): Boolean { if (enableOverviewIconMenu()) { - return getTaskMenu()?.isOpen == true + return getTaskMenu()?.isOpen == true || event.keyCode == KeyEvent.KEYCODE_TAB } return false } @@ -527,7 +394,7 @@ class RecentsViewUtils(private val recentsView: RecentsView<*, *>) : DesktopVisi } fun updateCentralTask() { - val isTablet: Boolean = getDeviceProfile().deviceProperties.isTablet + val isTablet: Boolean = getDeviceProfile().isTablet val actionsViewCanRelateToTaskView = !(isTablet && enableGridOnlyOverview()) val focusedTaskView = recentsView.focusedTaskView val currentPageTaskView = recentsView.currentPageTaskView @@ -610,154 +477,6 @@ class RecentsViewUtils(private val recentsView: RecentsView<*, *>) : DesktopVisi return desktopTaskView } - fun getRunningTaskViewFromGroupTaskInfo(groupedTaskInfo: GroupedTaskInfo) = - if (enableMultipleDesktops(recentsView.context)) { - if (groupedTaskInfo.isBaseType(GroupedTaskInfo.TYPE_DESK)) { - getDesktopTaskViewForDeskId(groupedTaskInfo.deskId) - } else { - val runningTaskIds = groupedTaskInfo.taskInfoList.map { it.taskId }.toIntArray() - val taskView = recentsView.getTaskViewByTaskIds(runningTaskIds) - if (taskView?.type == groupedTaskInfo.getTaskViewType()) taskView else null - } - } else { - if ( - groupedTaskInfo.isBaseType(GroupedTaskInfo.TYPE_DESK) && - groupedTaskInfo.taskInfoList.size == 1 - ) { - recentsView.getTaskViewByTaskId(groupedTaskInfo.taskInfo1!!.taskId) - as? DesktopTaskView - } else { - val runningTaskIds = groupedTaskInfo.taskInfoList.map { it.taskId }.toIntArray() - recentsView.getTaskViewByTaskIds(runningTaskIds) - } - } - - private fun GroupedTaskInfo.getTaskViewType() = - when { - isBaseType(GroupedTaskInfo.TYPE_FULLSCREEN) -> TaskViewType.SINGLE - isBaseType(GroupedTaskInfo.TYPE_SPLIT) -> TaskViewType.GROUPED - isBaseType(GroupedTaskInfo.TYPE_DESK) -> TaskViewType.DESKTOP - else -> null - } - - fun onPrepareGestureEndAnimation( - animatorSet: AnimatorSet, - endTarget: GestureState.GestureEndTarget, - remoteTargetHandles: Array<RemoteTargetHandle>, - isHandlingAtomicEvent: Boolean, - ) { - // Create ObjectAnimator that immediately settles on [endStateValue] when - // [isHandlingAtomicEvent] is true. - fun <T> immediateObjectAnimator( - target: T, - property: Property<T, Float>, - endStateValue: Float, - ) = - if (isHandlingAtomicEvent) - ObjectAnimator.ofFloat(target, property, endStateValue, endStateValue) - else ObjectAnimator.ofFloat(target, property, endStateValue) - - with(recentsView) { - Log.d(TAG, "onPrepareGestureEndAnimation - endTarget: $endTarget") - mCurrentGestureEndTarget = endTarget - val endState: BaseState<*> = mContainerInterface.stateFromGestureEndTarget(endTarget) - - // Starting the desk exploded animation when the gesture from an app is released. - if (enableDesktopExplodedView()) { - animatorSet.play( - ObjectAnimator.ofFloat( - this, - DESK_EXPLODE_PROGRESS, - if (endState.showExplodedDesktopView()) 1f else 0f, - ) - ) - taskViews.filterIsInstance<DesktopTaskView>().forEach { - it.remoteTargetHandles = remoteTargetHandles - } - } - - if (endState.displayOverviewTasksAsGrid(getDeviceProfile())) { - updateGridProperties() - animatorSet.play(immediateObjectAnimator(this, RECENTS_GRID_PROGRESS, 1f)) - - val runningTaskView = runningTaskView - var runningTaskGridTranslationX = 0f - var runningTaskGridTranslationY = 0f - if (runningTaskView != null) { - // Apply the grid translation to running task unless it's being snapped to - // and removes the current translation applied to the running task. - runningTaskGridTranslationX = - (runningTaskView.gridTranslationX - runningTaskView.nonGridTranslationX) - runningTaskGridTranslationY = runningTaskView.gridTranslationY - } - remoteTargetHandles.forEach { remoteTargetHandle -> - val taskViewSimulator = remoteTargetHandle.taskViewSimulator - if (enableGridOnlyOverview()) { - animatorSet.play(taskViewSimulator.carouselScale.animateToValue(1f)) - animatorSet.play( - taskViewSimulator.taskGridTranslationX.animateToValue( - runningTaskGridTranslationX - ) - ) - animatorSet.play( - taskViewSimulator.taskGridTranslationY.animateToValue( - runningTaskGridTranslationY - ) - ) - } else { - animatorSet.play( - taskViewSimulator.taskPrimaryTranslation.animateToValue( - runningTaskGridTranslationX - ) - ) - animatorSet.play( - taskViewSimulator.taskSecondaryTranslation.animateToValue( - runningTaskGridTranslationY - ) - ) - } - } - } - animatorSet.play( - immediateObjectAnimator( - this, - TASK_THUMBNAIL_SPLASH_ALPHA, - if (endState.showTaskThumbnailSplash()) 1f else 0f, - ) - ) - if (enableLargeDesktopWindowingTile()) { - animatorSet.play(ObjectAnimator.ofFloat(this, DESKTOP_CAROUSEL_DETACH_PROGRESS, 0f)) - } - - if (enableGridOnlyOverview()) { - // Reload visible tasks according to new [mCurrentGestureEndTarget] value. - loadVisibleTaskData(FLAG_UPDATE_ALL) - } - } - } - - fun resetShareUIState() { - taskViews.flatMap { it.taskContainers }.forEach { it.overlay.resetShareUI() } - } - - /** - * Adds a listener to be notified when a new desk is added. - * - * @param onDeskAddedListener The listener to add. - */ - fun addOnDeskAddedListener(onDeskAddedListener: OnDeskAddedListener) { - onDeskAddedListeners += onDeskAddedListener - } - - /** - * Removes a listener that was previously added to be notified when a new desk is added. - * - * @param onDeskAddedListener The listener to remove. - */ - fun removeOnDeskAddedListener(onDeskAddedListener: OnDeskAddedListener) { - onDeskAddedListeners -= onDeskAddedListener - } - companion object { class RecentsViewFloatProperty( private val utilsProperty: KMutableProperty1<RecentsViewUtils, Float> diff --git a/quickstep/src/com/android/quickstep/views/TaskContainer.kt b/quickstep/src/com/android/quickstep/views/TaskContainer.kt index 80f3913b91..086ac774f1 100644 --- a/quickstep/src/com/android/quickstep/views/TaskContainer.kt +++ b/quickstep/src/com/android/quickstep/views/TaskContainer.kt @@ -18,12 +18,12 @@ package com.android.quickstep.views import android.graphics.Bitmap import android.graphics.Matrix +import android.util.Log import android.view.View import android.view.View.OnClickListener -import com.android.launcher3.Flags.enableRefactorTaskContentView +import com.android.launcher3.Flags.enableOverviewIconMenu import com.android.launcher3.Flags.enableRefactorTaskThumbnail import com.android.launcher3.model.data.TaskViewItemInfo -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu import com.android.launcher3.util.SplitConfigurationOptions import com.android.launcher3.util.TransformingTouchDelegate import com.android.quickstep.TaskOverlayFactory @@ -31,7 +31,6 @@ import com.android.quickstep.ViewUtils.addAccessibleChildToList import com.android.quickstep.recents.domain.usecase.ThumbnailPosition import com.android.quickstep.recents.ui.mapper.TaskUiStateMapper import com.android.quickstep.recents.ui.viewmodel.TaskData -import com.android.quickstep.task.thumbnail.TaskContentView import com.android.quickstep.task.thumbnail.TaskThumbnailView import com.android.systemui.shared.recents.model.Task import com.android.systemui.shared.recents.model.ThumbnailData @@ -40,8 +39,6 @@ import com.android.systemui.shared.recents.model.ThumbnailData class TaskContainer( val taskView: TaskView, val task: Task, - // TODO(b/409248525): Upon flag cleanup, use the `TaskContentView` type - val taskContentView: View, val snapshotView: View, val iconView: TaskViewIcon, /** @@ -62,19 +59,10 @@ class TaskContainer( private var overlayEnabledStatus = false init { - when { - enableRefactorTaskContentView() -> { - require(taskContentView is TaskContentView) - require(snapshotView is TaskThumbnailView) - } - enableRefactorTaskThumbnail() -> { - require(taskContentView is TaskThumbnailView) - require(snapshotView is TaskThumbnailView) - } - else -> { - require(taskContentView is TaskThumbnailViewDeprecated) - require(snapshotView is TaskThumbnailViewDeprecated) - } + if (enableRefactorTaskThumbnail()) { + require(snapshotView is TaskThumbnailView) + } else { + require(snapshotView is TaskThumbnailViewDeprecated) } } @@ -120,8 +108,8 @@ class TaskContainer( fun destroy() = { digitalWellBeingToast?.destroy() - taskContentView.scaleX = 1f - taskContentView.scaleY = 1f + snapshotView.scaleX = 1f + snapshotView.scaleY = 1f overlay.reset() if (enableRefactorTaskThumbnail()) { isThumbnailValid = false @@ -131,7 +119,7 @@ class TaskContainer( thumbnailViewDeprecated.setShowSplashForSplitSelection(false) } - if (enableOverviewIconMenu() && taskView.type != TaskViewType.DESKTOP) { + if (enableOverviewIconMenu()) { (iconView as IconAppChipView).reset() } } @@ -142,7 +130,7 @@ class TaskContainer( } } - fun setOverlayEnabled(enabled: Boolean, thumbnailPosition: ThumbnailPosition) { + fun setOverlayEnabled(enabled: Boolean, thumbnailPosition: ThumbnailPosition?) { if (enableRefactorTaskThumbnail()) { if (overlayEnabledStatus != enabled || this.thumbnailPosition != thumbnailPosition) { overlayEnabledStatus = enabled @@ -152,26 +140,27 @@ class TaskContainer( } } - fun refreshOverlay(thumbnailPosition: ThumbnailPosition) = { + fun refreshOverlay(thumbnailPosition: ThumbnailPosition?) = { this.thumbnailPosition = thumbnailPosition - if (overlayEnabledStatus) { - overlay.initOverlay( - task, - thumbnailData?.thumbnail, - thumbnailPosition.matrix, - thumbnailPosition.isRotated, - ) - } else { - overlay.reset() + when { + !overlayEnabledStatus -> overlay.reset() + thumbnailPosition == null -> { + Log.e(TAG, "Thumbnail position was null during overlay refresh", Exception()) + overlay.reset() + } + else -> + overlay.initOverlay( + task, + thumbnailData?.thumbnail, + thumbnailPosition.matrix, + thumbnailPosition.isRotated, + ) } } fun addChildForAccessibility(outChildren: ArrayList<View>) { addAccessibleChildToList(iconView.asView(), outChildren) - addAccessibleChildToList( - if (enableRefactorTaskContentView()) taskContentView else snapshotView, - outChildren, - ) + addAccessibleChildToList(snapshotView, outChildren) showWindowsView?.let { addAccessibleChildToList(it, outChildren) } digitalWellBeingToast?.let { addAccessibleChildToList(it, outChildren) } overlay.addChildForAccessibility(outChildren) @@ -179,23 +168,19 @@ class TaskContainer( fun setState( state: TaskData?, + liveTile: Boolean, hasHeader: Boolean, - canShowAppTimer: Boolean, clickCloseListener: OnClickListener?, ) = { - if (enableRefactorTaskContentView()) { - (taskContentView as TaskContentView).setState( - TaskUiStateMapper.toTaskHeaderState(state, hasHeader, clickCloseListener), - TaskUiStateMapper.toTaskThumbnailUiState(state), - TaskUiStateMapper.toTaskAppTimerUiState(canShowAppTimer, stagePosition, state), - state?.taskId, - ) - } else { - thumbnailView.setState( - TaskUiStateMapper.toTaskThumbnailUiState(state), - state?.taskId, - ) - } + thumbnailView.setState( + TaskUiStateMapper.toTaskThumbnailUiState( + state, + liveTile, + hasHeader, + clickCloseListener, + ), + state?.taskId, + ) thumbnailData = if (state is TaskData.Data) state.thumbnailData else null overlay.setThumbnailState(thumbnailData) } diff --git a/quickstep/src/com/android/quickstep/views/TaskMenuView.kt b/quickstep/src/com/android/quickstep/views/TaskMenuView.kt index 24924c13a4..f7cb7bef78 100644 --- a/quickstep/src/com/android/quickstep/views/TaskMenuView.kt +++ b/quickstep/src/com/android/quickstep/views/TaskMenuView.kt @@ -18,7 +18,6 @@ package com.android.quickstep.views import android.animation.Animator import android.animation.AnimatorSet import android.animation.ObjectAnimator -import android.animation.TimeInterpolator import android.animation.ValueAnimator import android.content.Context import android.graphics.Outline @@ -35,24 +34,21 @@ import android.widget.LinearLayout import android.widget.TextView import androidx.core.content.res.ResourcesCompat import com.android.app.animation.Interpolators -import com.android.app.animation.Interpolators.clampToProgress import com.android.launcher3.AbstractFloatingView +import com.android.launcher3.Flags.enableOverviewIconMenu import com.android.launcher3.Flags.enableRefactorTaskThumbnail import com.android.launcher3.R import com.android.launcher3.anim.AnimationSuccessListener import com.android.launcher3.anim.RoundedRectRevealOutlineProvider import com.android.launcher3.popup.SystemShortcut import com.android.launcher3.util.MultiPropertyFactory -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu import com.android.launcher3.util.SplitConfigurationOptions import com.android.launcher3.views.BaseDragLayer import com.android.quickstep.TaskOverlayFactory import com.android.quickstep.TaskUtils -import com.android.quickstep.orientation.RecentsPagedOrientationHandler import com.android.quickstep.util.TaskCornerRadius import java.util.function.Consumer import kotlin.math.max -import kotlin.math.roundToInt /** Contains options for a recent task when long-pressing its icon. */ class TaskMenuView @@ -67,7 +63,6 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : private var openCloseAnimator: AnimatorSet? = null private var revealAnimator: ValueAnimator? = null private var onClosingStartCallback: Runnable? = null - private lateinit var orientationHandler: RecentsPagedOrientationHandler private lateinit var taskView: TaskView private lateinit var taskContainer: TaskContainer private var menuTranslationXBeforeOpen = 0f @@ -75,11 +70,14 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : // Spaced claimed below Overview (taskbar and insets) private val taskbarTop by lazy { - recentsViewContainer.deviceProfile.deviceProperties.heightPx - + recentsViewContainer.deviceProfile.heightPx - recentsViewContainer.deviceProfile.overviewActionsClaimedSpaceBelow } - private val minMenuTop by lazy { taskContainer.iconView.asView().height.toFloat() } - private val maxMenuBottom by lazy { taskbarTop - recentsViewContainer.dragLayer.insets.top } + private val minMenuTop by lazy { taskContainer.iconView.height.toFloat() } + // TODO(b/401476868): Replace overviewRowSpacing with correct margin to the taskbarTop. + private val maxMenuBottom by lazy { + (taskbarTop - recentsViewContainer.deviceProfile.overviewRowSpacing).toFloat() + } init { clipToOutline = true @@ -97,7 +95,7 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : } override fun handleClose(animate: Boolean) { - animateOpenOrClosed(closing = true, animated = false) + animateOpenOrClosed(true, animated = false) } override fun isOfType(type: Int): Boolean = (type and TYPE_TASK_MENU) != 0 @@ -173,6 +171,12 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : R.drawable.app_chip_menu_item_bg, context.theme, ) + menuOptionView.foreground = + ResourcesCompat.getDrawable( + resources, + R.drawable.app_chip_menu_item_fg, + context.theme, + ) } menuOption.setIconAndLabelFor( menuOptionView.findViewById(R.id.icon), @@ -192,7 +196,7 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : private fun orientAroundTaskView(taskContainer: TaskContainer) { val recentsView = recentsViewContainer.getOverviewPanel<RecentsView<*, *>>() - orientationHandler = recentsView.pagedOrientationHandler + val orientationHandler = recentsView.pagedOrientationHandler measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED) // Get Position @@ -202,7 +206,7 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : else taskContainer.snapshotView, tempRect, ) - val insets = recentsViewContainer.dragLayer.insets + val insets = recentsViewContainer.dragLayer.getInsets() val params = layoutParams as BaseDragLayer.LayoutParams params.width = orientationHandler.getTaskMenuWidth( @@ -211,10 +215,7 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : taskContainer.stagePosition, ) // Gravity set to Left instead of Start as sTempRect.left measures Left distance not Start - params.gravity = - if (enableOverviewIconMenu() && orientationHandler.isLayoutNaturalToLauncher) - Gravity.START - else Gravity.LEFT + params.gravity = Gravity.LEFT layoutParams = params scaleX = taskView.scaleX scaleY = taskView.scaleY @@ -232,10 +233,6 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : } else { null } - if (enableOverviewIconMenu()) { - background = - ResourcesCompat.getDrawable(resources, R.drawable.app_chip_menu_bg, context.theme) - } orientationHandler.setTaskOptionsMenuLayoutOrientation( deviceProfile, @@ -243,15 +240,7 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : dividerSpacing, divider, ) - - val thumbnailAlignedX = - if ( - enableOverviewIconMenu() && - orientationHandler.isLayoutNaturalToLauncher && - isLayoutRtl - ) - -(recentsViewContainer.dragLayer.width - tempRect.right - insets.right).toFloat() - else (tempRect.left - insets.left).toFloat() + val thumbnailAlignedX = (tempRect.left - insets.left).toFloat() val thumbnailAlignedY = (tempRect.top - insets.top).toFloat() // Changing pivot to make computations easier @@ -261,35 +250,37 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : pivotY = 0f rotation = orientationHandler.degreesRotated - var taskInsetMargin = resources.getDimension(R.dimen.task_card_margin) if (enableOverviewIconMenu()) { elevation = resources.getDimension(R.dimen.task_thumbnail_icon_menu_elevation) - taskInsetMargin = 0f + translationX = thumbnailAlignedX + translationY = thumbnailAlignedY + } else { + // Margin that insets the menuView inside the taskView + val taskInsetMargin = resources.getDimension(R.dimen.task_card_margin) + translationX = + orientationHandler.getTaskMenuX( + thumbnailAlignedX, + this.taskContainer.snapshotView, + deviceProfile, + taskInsetMargin, + iconView, + ) + translationY = + orientationHandler.getTaskMenuY( + thumbnailAlignedY, + this.taskContainer.snapshotView, + this.taskContainer.stagePosition, + this, + taskInsetMargin, + iconView, + ) } - - translationX = - orientationHandler.getTaskMenuX( - thumbnailAlignedX, - this.taskContainer.snapshotView, - deviceProfile, - taskInsetMargin, - iconView, - ) - translationY = - orientationHandler.getTaskMenuY( - thumbnailAlignedY, - this.taskContainer.snapshotView, - this.taskContainer.stagePosition, - this, - taskInsetMargin, - iconView, - ) } private fun animateOpen() { menuTranslationYBeforeOpen = translationY menuTranslationXBeforeOpen = translationX - animateOpenOrClosed(closing = false) + animateOpenOrClosed(false) mIsOpen = true } @@ -298,73 +289,60 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : private fun animateOpenOrClosed(closing: Boolean, animated: Boolean = true) { openCloseAnimator?.let { if (it.isRunning) it.cancel() } - // If we're opening, we just start from the beginning as a new `TaskMenuView` is - // created - // each time we do the open animation so there will never be a partial value - // here. + openCloseAnimator = AnimatorSet() + // If we're opening, we just start from the beginning as a new `TaskMenuView` is created + // each time we do the open animation so there will never be a partial value here. var revealAnimationStartProgress = 0f - if (closing) revealAnimator?.let { revealAnimationStartProgress = 1f - it.animatedFraction } + if (closing && revealAnimator != null) { + revealAnimationStartProgress = 1f - revealAnimator!!.animatedFraction + } revealAnimator = createOpenCloseOutlineProvider() .createRevealAnimator(this, closing, revealAnimationStartProgress) - .apply { - interpolator = - if (enableOverviewIconMenu()) Interpolators.EMPHASIZED - else Interpolators.DECELERATE - - if (enableRefactorTaskThumbnail()) { - addUpdateListener { animation: ValueAnimator -> - val animatedFraction = animation.animatedFraction - val openProgress = - if (closing) (1 - animatedFraction) else animatedFraction - taskContainer.updateMenuOpenProgress(openProgress) - } - } + revealAnimator!!.interpolator = + if (enableOverviewIconMenu()) Interpolators.EMPHASIZED else Interpolators.DECELERATE + val openCloseAnimatorBuilder = openCloseAnimator!!.play(revealAnimator) + if (enableOverviewIconMenu()) { + animateOpenOrCloseAppChip(closing, openCloseAnimatorBuilder) + } + openCloseAnimatorBuilder.with( + ObjectAnimator.ofFloat(this, ALPHA, (if (closing) 0 else 1).toFloat()) + ) + if (enableRefactorTaskThumbnail()) { + revealAnimator?.addUpdateListener { animation: ValueAnimator -> + val animatedFraction = animation.animatedFraction + val openProgress = if (closing) (1 - animatedFraction) else animatedFraction + taskContainer.updateMenuOpenProgress(openProgress) + } + } else { + openCloseAnimatorBuilder.with( + ObjectAnimator.ofFloat( + taskContainer.thumbnailViewDeprecated, + TaskThumbnailViewDeprecated.DIM_ALPHA, + if (closing) 0f else TaskView.MAX_PAGE_SCRIM_ALPHA, + ) + ) + } + openCloseAnimator!!.addListener( + object : AnimationSuccessListener() { + override fun onAnimationStart(animation: Animator) { + visibility = VISIBLE + if (closing) onClosingStartCallback?.run() } - openCloseAnimator = - AnimatorSet() - .apply { - duration = - when { - animated && closing -> REVEAL_CLOSE_DURATION - animated && !closing -> REVEAL_OPEN_DURATION - else -> 0L - } - addListener( - object : AnimationSuccessListener() { - override fun onAnimationStart(animation: Animator) { - visibility = VISIBLE - if (closing) onClosingStartCallback?.run() - } - override fun onAnimationSuccess(animator: Animator) { - if (closing) closeComplete() - } - } - ) - } - .also { animator -> - val animatorBuilder = animator.play(revealAnimator) - if (enableOverviewIconMenu()) { - animateOpenOrCloseAppChip(closing, animatorBuilder) - } else { - animatorBuilder.with( - ObjectAnimator.ofFloat(this, ALPHA, (if (closing) 0 else 1).toFloat()) - ) - } - - if (!enableRefactorTaskThumbnail()) { - animatorBuilder.with( - ObjectAnimator.ofFloat( - taskContainer.thumbnailViewDeprecated, - TaskThumbnailViewDeprecated.DIM_ALPHA, - if (closing) 0f else TaskView.MAX_PAGE_SCRIM_ALPHA, - ) - ) - } - - animator.start() + override fun onAnimationSuccess(animator: Animator) { + if (closing) closeComplete() } + } + ) + val animationDuration = + when { + animated && closing -> REVEAL_CLOSE_DURATION + animated && !closing -> REVEAL_OPEN_DURATION + else -> 0L + } + openCloseAnimator!!.setDuration(animationDuration) + openCloseAnimator!!.start() } private fun TaskView.isOnGridBottomRow(): Boolean = @@ -378,19 +356,13 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : private fun createOpenCloseOutlineProvider(): RoundedRectRevealOutlineProvider { val radius = TaskCornerRadius.get(mContext) - val fromRect = - if (enableOverviewIconMenu()) { - Rect( - /* left = */ if (isLayoutRtl) width - iconView.minimumWidth else 0, - /* top = */ 0, - /* right = */ if (isLayoutRtl) width else iconView.minimumWidth, - /* bottom = */ (height * CONTAINER_SCALE_PERCENTAGE).roundToInt(), - ) - } else { - Rect(0, 0, width, 0) - } - + Rect( + if (enableOverviewIconMenu() && isLayoutRtl) width else 0, + 0, + if (enableOverviewIconMenu() && !isLayoutRtl) 0 else width, + 0, + ) val toRect = Rect(0, 0, width, height) return RoundedRectRevealOutlineProvider(radius, radius, fromRect, toRect) } @@ -417,35 +389,22 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : } private fun animateOpenOrCloseAppChip(closing: Boolean, animatorBuilder: AnimatorSet.Builder) { - if (!closing) { - alpha = 0f - optionLayout.apply { - pivotX = if (isLayoutRtl) optionLayout.width.toFloat() else 0f - pivotY = 0f - scaleX = CONTAINER_SCALE_PERCENTAGE - scaleY = CONTAINER_SCALE_PERCENTAGE - alpha = 0f - } - } - val iconAppChip = taskContainer.iconView.asView() as IconAppChipView // Animate menu up for enough room to display full menu when task on bottom row. var additionalTranslationY = 0f - val translationYMargin = orientationHandler.getAppChipMenuMarginY(iconAppChip, isLayoutRtl) if (taskView.isOnGridBottomRow()) { - val expandedMenuPosition = menuTranslationYBeforeOpen + translationYMargin - val currentMenuBottom: Float = expandedMenuPosition + height + val currentMenuBottom: Float = menuTranslationYBeforeOpen + height additionalTranslationY = if (currentMenuBottom < maxMenuBottom) 0f // Translate menu up for enough room to display full menu when task on bottom row. else maxMenuBottom - currentMenuBottom - val currentMenuTop = expandedMenuPosition + additionalTranslationY + val currentMenuTop = menuTranslationYBeforeOpen + additionalTranslationY // If it translate above the min accepted, it translates to the top of the screen if (currentMenuTop < minMenuTop) { // It subtracts the menuTranslation to make it 0 (top of the screen) + chip size. - additionalTranslationY = -expandedMenuPosition + minMenuTop + additionalTranslationY = -menuTranslationYBeforeOpen + minMenuTop } } @@ -454,7 +413,7 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : this, TRANSLATION_Y, if (closing) menuTranslationYBeforeOpen - else menuTranslationYBeforeOpen + translationYMargin + additionalTranslationY, + else menuTranslationYBeforeOpen + additionalTranslationY, ) translationYAnim.interpolator = Interpolators.EMPHASIZED animatorBuilder.with(translationYAnim) @@ -470,15 +429,13 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : var additionalTranslationX = 0f if ( - taskView.pagedOrientationHandler.isLayoutNaturalToLauncher && - taskContainer.stagePosition == - SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT + taskContainer.stagePosition == SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT ) { // Animate menu and icon when split task would display off the side of the screen. additionalTranslationX = max( (translationX + width - - (recentsViewContainer.deviceProfile.deviceProperties.widthPx - + (recentsViewContainer.deviceProfile.widthPx - resources.getDimensionPixelSize( R.dimen.task_menu_edge_padding ) * 2)) @@ -488,13 +445,12 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : .toFloat() } - val translationXMargin = orientationHandler.getAppChipMenuMarginX(iconAppChip, isLayoutRtl) val translationXAnim = ObjectAnimator.ofFloat( this, TRANSLATION_X, if (closing) menuTranslationXBeforeOpen - else menuTranslationXBeforeOpen - translationXMargin - additionalTranslationX, + else menuTranslationXBeforeOpen - additionalTranslationX, ) translationXAnim.interpolator = Interpolators.EMPHASIZED animatorBuilder.with(translationXAnim) @@ -507,38 +463,6 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : ) menuTranslationXAnim.interpolator = Interpolators.EMPHASIZED animatorBuilder.with(menuTranslationXAnim) - - // Scaling the container inside the menu - val toScaleX = if (closing) CONTAINER_SCALE_PERCENTAGE else 1f - val animatorScaleX = ObjectAnimator.ofFloat(optionLayout, SCALE_X, toScaleX) - animatorScaleX.interpolator = Interpolators.EMPHASIZED - animatorBuilder.with(animatorScaleX) - - val toScaleY = if (closing) CONTAINER_SCALE_PERCENTAGE else 1f - val animatorScaleY = ObjectAnimator.ofFloat(optionLayout, SCALE_Y, toScaleY) - animatorScaleY.interpolator = Interpolators.EMPHASIZED - animatorBuilder.with(animatorScaleY) - - val alphaValue = if (closing) 0f else 1f - val optionLayoutAlphaAnimator = - ObjectAnimator.ofFloat(optionLayout, ALPHA, alphaValue).apply { - interpolator = TimeInterpolator { - clampToProgress(Interpolators.EMPHASIZED.getInterpolation(it), .75f, 1f) - } - } - animatorBuilder.with(optionLayoutAlphaAnimator) - - val menuAlphaAnimator = - ObjectAnimator.ofFloat(this, ALPHA, alphaValue).apply { - interpolator = TimeInterpolator { - clampToProgress(Interpolators.EMPHASIZED.getInterpolation(it), .48f, .74f) - } - } - animatorBuilder.with(menuAlphaAnimator) - - val recentsView = recentsViewContainer.getOverviewPanel<RecentsView<*, *>>() - val isAnimated = !recentsView.isSplitSelectionActive - animatorBuilder.with(iconAppChip.revealAnim(isRevealing = !closing, isAnimated)) } override fun dispatchKeyEvent(event: KeyEvent): Boolean { @@ -554,22 +478,6 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : ) { iconView.requestFocus() return true - } else { - val currentFocus = findFocus() ?: return super.dispatchKeyEvent(event) - - val nextFocus = - when (event.keyCode) { - KeyEvent.KEYCODE_DPAD_UP -> focusSearch(currentFocus, FOCUS_BACKWARD) - KeyEvent.KEYCODE_DPAD_DOWN -> focusSearch(currentFocus, FOCUS_FORWARD) - KeyEvent.KEYCODE_TAB -> - focusSearch( - currentFocus, - if (event.isShiftPressed) FOCUS_BACKWARD else FOCUS_FORWARD, - ) - else -> null - } - - return nextFocus?.requestFocus() ?: super.dispatchKeyEvent(event) } } return super.dispatchKeyEvent(event) @@ -578,7 +486,6 @@ constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int = 0) : companion object { private val REVEAL_OPEN_DURATION = if (enableOverviewIconMenu()) 417L else 150L private val REVEAL_CLOSE_DURATION = if (enableOverviewIconMenu()) 333L else 100L - private const val CONTAINER_SCALE_PERCENTAGE = .8f /** Show a task menu for the given taskContainer. */ /** Show a task menu for the given taskContainer. */ diff --git a/quickstep/src/com/android/quickstep/views/TaskMenuViewWithArrow.kt b/quickstep/src/com/android/quickstep/views/TaskMenuViewWithArrow.kt index 78730ec3c7..833683b59e 100644 --- a/quickstep/src/com/android/quickstep/views/TaskMenuViewWithArrow.kt +++ b/quickstep/src/com/android/quickstep/views/TaskMenuViewWithArrow.kt @@ -276,8 +276,8 @@ class TaskMenuViewWithArrow<T> : ArrowPopup<T> where T : RecentsViewContainer, T IconView(context).apply { layoutParams = FrameLayout.LayoutParams( - taskContainer.iconView.asView().width, - taskContainer.iconView.asView().height + taskContainer.iconView.width, + taskContainer.iconView.height ) x = mTempRect.left.toFloat() - insets.left y = mTempRect.top.toFloat() - insets.top diff --git a/quickstep/src/com/android/quickstep/views/TaskThumbnailViewDeprecated.java b/quickstep/src/com/android/quickstep/views/TaskThumbnailViewDeprecated.java index 859feb2ec5..74d76e6432 100644 --- a/quickstep/src/com/android/quickstep/views/TaskThumbnailViewDeprecated.java +++ b/quickstep/src/com/android/quickstep/views/TaskThumbnailViewDeprecated.java @@ -469,7 +469,7 @@ public class TaskThumbnailViewDeprecated extends View implements ViewPool.Reusab int currentRotation = mTaskView.getOrientedState().getRecentsActivityRotation(); boolean isRtl = getLayoutDirection() == LAYOUT_DIRECTION_RTL; mPreviewPositionHelper.updateThumbnailMatrix(mPreviewRect, mThumbnailData, - getMeasuredWidth(), getMeasuredHeight(), dp.getDeviceProperties().isTablet(), currentRotation, isRtl); + getMeasuredWidth(), getMeasuredHeight(), dp.isTablet, currentRotation, isRtl); mBitmapShader.setLocalMatrix(mPreviewPositionHelper.getMatrix()); mPaint.setShader(mBitmapShader); diff --git a/quickstep/src/com/android/quickstep/views/TaskView.kt b/quickstep/src/com/android/quickstep/views/TaskView.kt index 1364821676..97bbe87d45 100644 --- a/quickstep/src/com/android/quickstep/views/TaskView.kt +++ b/quickstep/src/com/android/quickstep/views/TaskView.kt @@ -46,13 +46,14 @@ import androidx.annotation.VisibleForTesting import androidx.core.view.updateLayoutParams import com.android.app.animation.Interpolators import com.android.launcher3.AbstractFloatingView -import com.android.launcher3.Flags.enableCoroutineThreadingImprovements import com.android.launcher3.Flags.enableCursorHoverStates import com.android.launcher3.Flags.enableDesktopExplodedView +import com.android.launcher3.Flags.enableGridOnlyOverview +import com.android.launcher3.Flags.enableHoverOfChildElementsInTaskview import com.android.launcher3.Flags.enableLargeDesktopWindowingTile -import com.android.launcher3.Flags.enableRefactorDigitalWellbeingToast -import com.android.launcher3.Flags.enableRefactorTaskContentView +import com.android.launcher3.Flags.enableOverviewIconMenu import com.android.launcher3.Flags.enableRefactorTaskThumbnail +import com.android.launcher3.Flags.enableSeparateExternalDisplayTasks import com.android.launcher3.R import com.android.launcher3.Utilities import com.android.launcher3.anim.AnimatedFloat @@ -67,8 +68,6 @@ import com.android.launcher3.util.KFloatProperty import com.android.launcher3.util.MultiPropertyDelegate import com.android.launcher3.util.MultiPropertyFactory import com.android.launcher3.util.MultiValueAlpha -import com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview -import com.android.launcher3.util.OverviewReleaseFlags.enableOverviewIconMenu import com.android.launcher3.util.RunnableList import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_UNDEFINED import com.android.launcher3.util.SplitConfigurationOptions.StagePosition @@ -83,7 +82,6 @@ import com.android.quickstep.RemoteAnimationTargets import com.android.quickstep.RemoteTargetGluer.RemoteTargetHandle import com.android.quickstep.TaskOverlayFactory import com.android.quickstep.TaskViewUtils -import com.android.quickstep.fallback.window.RecentsWindowFlags.enableOverviewOnConnectedDisplays import com.android.quickstep.orientation.RecentsPagedOrientationHandler import com.android.quickstep.recents.di.RecentsDependencies import com.android.quickstep.recents.di.get @@ -92,14 +90,11 @@ import com.android.quickstep.recents.domain.usecase.ThumbnailPosition import com.android.quickstep.recents.ui.viewmodel.TaskData import com.android.quickstep.recents.ui.viewmodel.TaskTileUiState import com.android.quickstep.recents.ui.viewmodel.TaskViewModel -import com.android.quickstep.task.thumbnail.TaskContentView import com.android.quickstep.util.ActiveGestureErrorDetector import com.android.quickstep.util.ActiveGestureLog import com.android.quickstep.util.BorderAnimator import com.android.quickstep.util.BorderAnimator.Companion.createSimpleBorderAnimator -import com.android.quickstep.util.GroupTask import com.android.quickstep.util.RecentsOrientedState -import com.android.quickstep.util.SingleTask import com.android.quickstep.util.TaskCornerRadius import com.android.quickstep.util.TaskRemovedDuringLaunchListener import com.android.quickstep.util.isExternalDisplay @@ -138,8 +133,6 @@ constructor( @IntDef(FLAG_UPDATE_ALL, FLAG_UPDATE_ICON, FLAG_UPDATE_THUMBNAIL, FLAG_UPDATE_CORNER_RADIUS) annotation class TaskDataChanges - var groupTask: GroupTask? = null - val taskIds: IntArray /** Returns a copy of integer array containing taskIds of all tasks in the TaskView. */ get() = taskContainers.map { it.task.key.id }.toIntArray() @@ -151,12 +144,9 @@ constructor( val snapshotViews: Array<View> get() = taskContainers.map { it.snapshotView }.toTypedArray() - val taskContentViews: Array<View> - get() = taskContainers.map { it.taskContentView }.toTypedArray() - val isGridTask: Boolean /** Returns whether the task is part of overview grid and not being focused. */ - get() = container.deviceProfile.getDeviceProperties().isTablet && !isLargeTile + get() = container.deviceProfile.isTablet && !isLargeTile val isRunningTask: Boolean get() = this === recentsView?.runningTaskView @@ -174,7 +164,7 @@ constructor( get() = this == recentsView?.focusedTaskView || (enableLargeDesktopWindowingTile() && type == TaskViewType.DESKTOP) || - (isExternalDisplay && !enableOverviewOnConnectedDisplays()) + (enableSeparateExternalDisplayTasks() && isExternalDisplay) val recentsView: RecentsView<*, *>? get() = parent as? RecentsView<*, *> @@ -192,9 +182,6 @@ constructor( val firstItemInfo: ItemInfo? get() = firstTaskContainer?.itemInfo - val isOnGridBottomRow: Boolean - get() = recentsView?.isOnGridBottomRow(this) == true - /** * A [TaskViewItemInfo] of this TaskView. The [firstTaskContainer] will be used to get some * specific information like user, title etc of the Task. However, these task specific @@ -322,10 +309,6 @@ constructor( var taskViewId = UNBOUND_TASK_VIEW_ID var isEndQuickSwitchCuj = false - var isBeingDraggedForDismissal = false - val isBeingDismissed - get() = secondaryDismissTranslationProperty.get(this) != 0f - var sysUiStatusNavFlags: Int = 0 get() = if (enableRefactorTaskThumbnail()) field @@ -441,7 +424,7 @@ constructor( } // The following grid translations scales with mGridProgress. - var gridTranslationX = 0f + protected var gridTranslationX = 0f set(value) { field = value applyTranslationX() @@ -462,7 +445,7 @@ constructor( // Applied as a complement to gridTranslation, for adjusting the carousel overview and quick // switch. - var nonGridTranslationX = 0f + protected var nonGridTranslationX = 0f set(value) { field = value applyTranslationX() @@ -551,18 +534,7 @@ constructor( private var settledProgressDismiss by MultiPropertyDelegate(settledProgressPropertyFactory, SettledProgress.Dismiss) - private val viewModel = - if (enableRefactorTaskThumbnail()) { - TaskViewModel( - taskViewType = type, - recentsViewData = RecentsDependencies.get(context), - getTaskUseCase = RecentsDependencies.get(context), - getSysUiStatusNavFlagsUseCase = RecentsDependencies.get(context), - isThumbnailValidUseCase = RecentsDependencies.get(context), - getThumbnailPositionUseCase = RecentsDependencies.get(context), - dispatcherProvider = RecentsDependencies.get(context), - ) - } else null + private var viewModel: TaskViewModel? = null private val dispatcherProvider: DispatcherProvider by RecentsDependencies.inject() private val coroutineScope: CoroutineScope by RecentsDependencies.inject() private val coroutineJobs = mutableListOf<Job>() @@ -616,11 +588,17 @@ constructor( if (borderEnabled) { when (event.action) { MotionEvent.ACTION_HOVER_ENTER -> { - getThumbnailBounds(thumbnailBounds) - hoverBorderVisible = event.isWithinThumbnailBounds() + hoverBorderVisible = + if (enableHoverOfChildElementsInTaskview()) { + getThumbnailBounds(thumbnailBounds) + event.isWithinThumbnailBounds() + } else { + true + } } MotionEvent.ACTION_HOVER_MOVE -> - hoverBorderVisible = event.isWithinThumbnailBounds() + if (enableHoverOfChildElementsInTaskview()) + hoverBorderVisible = event.isWithinThumbnailBounds() MotionEvent.ACTION_HOVER_EXIT -> hoverBorderVisible = false else -> {} } @@ -628,6 +606,10 @@ constructor( return super.onHoverEvent(event) } + override fun onInterceptHoverEvent(event: MotionEvent): Boolean = + if (enableHoverOfChildElementsInTaskview()) super.onInterceptHoverEvent(event) + else if (enableCursorHoverStates()) true else super.onInterceptHoverEvent(event) + override fun dispatchTouchEvent(ev: MotionEvent): Boolean { val recentsView = recentsView ?: return false val splitSelectStateController = recentsView.splitSelectController @@ -673,7 +655,9 @@ constructor( it.right = width it.bottom = height } - getThumbnailBounds(thumbnailBounds) + if (enableHoverOfChildElementsInTaskview()) { + getThumbnailBounds(thumbnailBounds) + } } private fun updatePivots() { @@ -682,9 +666,8 @@ constructor( pivotX = modalPivot.x pivotY = modalPivot.y } else { - val thumbnailTopMargin = - container.deviceProfile.overviewProfile.taskThumbnailTopMarginPx - if (container.deviceProfile.getDeviceProperties().isTablet) { + val thumbnailTopMargin = container.deviceProfile.overviewTaskThumbnailTopMarginPx + if (container.deviceProfile.isTablet) { pivotX = (if (layoutDirection == LAYOUT_DIRECTION_RTL) 0 else right - left).toFloat() pivotY = thumbnailTopMargin.toFloat() @@ -696,12 +679,9 @@ constructor( } override fun onRecycle() { - isBeingDraggedForDismissal = false resetPersistentViewTransforms() - groupTask = null - // Bind ViewModel to no taskIds - viewModel?.bind() + viewModel = null attachAlpha = 1f splitAlpha = 1f splitSplashAlpha = 0f @@ -747,14 +727,7 @@ constructor( // Add DWB accessibility action at the end of the list taskContainers.forEach { - if ( - enableRefactorDigitalWellbeingToast() && - it.taskContentView is TaskContentView - ) { - it.taskContentView.getSupportedAccessibilityActions().forEach(::addAction) - } else { - it.digitalWellBeingToast?.getDWBAccessibilityAction()?.let(::addAction) - } + it.digitalWellBeingToast?.getDWBAccessibilityAction()?.let(::addAction) } } @@ -763,9 +736,7 @@ constructor( AccessibilityNodeInfo.CollectionItemInfo( 0, 1, - // We only care about TaskView's for the `CollectionInfo` that Talkback uses - // to read out. - it.taskViews.reversed().indexOf(this@TaskView), + it.getAccessibilityChildren().indexOf(this@TaskView), 1, false, ) @@ -776,14 +747,8 @@ constructor( override fun performAccessibilityAction(action: Int, arguments: Bundle?): Boolean { // TODO(b/343708271): Add support for multiple tasks per action. taskContainers.forEach { - if (enableRefactorDigitalWellbeingToast() && it.taskContentView is TaskContentView) { - if (it.taskContentView.handleAccessibilityAction(action)) { - return true - } - } else { - if (it.digitalWellBeingToast?.handleAccessibilityAction(action) == true) { - return true - } + if (it.digitalWellBeingToast?.handleAccessibilityAction(action) == true) { + return true } TaskOverlayFactory.getEnabledShortcuts(this, it).forEach { shortcut -> @@ -803,19 +768,13 @@ constructor( } protected open fun inflateViewStubs() { - findViewById<ViewStub>(R.id.task_content_view) + findViewById<ViewStub>(R.id.snapshot) ?.apply { - inflatedId = - if (enableRefactorTaskContentView()) R.id.task_content_view else R.id.snapshot layoutResource = - when { - enableRefactorTaskContentView() -> R.layout.task_content_view - enableRefactorTaskThumbnail() -> R.layout.task_thumbnail - else -> R.layout.task_thumbnail_deprecated - } + if (enableRefactorTaskThumbnail()) R.layout.task_thumbnail + else R.layout.task_thumbnail_deprecated } ?.inflate() - findViewById<ViewStub>(R.id.icon) ?.apply { layoutResource = @@ -823,20 +782,14 @@ constructor( else R.layout.icon_view } ?.inflate() - - if (!enableRefactorDigitalWellbeingToast()) { - findViewById<ViewStub>(R.id.digital_wellbeing_toast) - ?.apply { layoutResource = R.layout.digital_wellbeing_toast } - ?.inflate() - } } override fun onAttachedToWindow() { super.onAttachedToWindow() if (enableRefactorTaskThumbnail()) { - // TaskView binds the ViewModel during onBind, and unbinds it in onRecycle. So it - // should start listening here. - // TV Lifecycle: onBind -> onAttachedToWindow -> onDetachFromWindow -> onRecycle + // The TaskView lifecycle is starts the ViewModel during onBind, and cleans it in + // onRecycle. So it should be initialized at this point. TaskView Lifecycle: + // `bind` -> `onBind` -> onAttachedToWindow() -> onDetachFromWindow -> onRecycle coroutineJobs += coroutineScope.launch(dispatcherProvider.main) { viewModel!!.state.collectLatest(::updateTaskViewState) @@ -853,12 +806,10 @@ constructor( val taskId = container.task.key.id val containerState = mapOfTasks[taskId] val shouldHaveHeader = (type == TaskViewType.DESKTOP) && enableDesktopExplodedView() - val shouldShowAppTimer = - (type == TaskViewType.SINGLE || type == TaskViewType.GROUPED) container.setState( state = containerState, + liveTile = state.isLiveTile, hasHeader = shouldHaveHeader, - canShowAppTimer = shouldShowAppTimer, clickCloseListener = if (shouldHaveHeader) { { @@ -884,7 +835,10 @@ constructor( container.setOverlayEnabled(state.taskOverlayEnabled, thumbnailPosition) if (state.isCentralTask) { this.container.actionsView.let { - it.updateDisabledFlags(DISABLED_ROTATED, thumbnailPosition.isRotated) + it.updateDisabledFlags( + DISABLED_ROTATED, + thumbnailPosition?.isRotated ?: false, + ) it.updateDisabledFlags( DISABLED_NO_THUMBNAIL, state.tasks.any { taskData -> @@ -896,24 +850,17 @@ constructor( if (enableOverviewIconMenu()) { setIconState(container, containerState) - if ( - containerState is TaskData && - container.digitalWellBeingToast?.isDestroyed == false && - container.task.titleDescription != null - ) { - container.digitalWellBeingToast.initialize() - } } } } private fun updateThumbnailValidity(container: TaskContainer) { container.isThumbnailValid = - viewModel!!.isThumbnailValid( + viewModel?.isThumbnailValid( thumbnail = container.thumbnailData, width = container.thumbnailView.width, height = container.thumbnailView.height, - ) + ) ?: return applyThumbnailSplashAlpha() } @@ -932,52 +879,23 @@ constructor( container: TaskContainer, width: Int, height: Int, - ): ThumbnailPosition { + ): ThumbnailPosition? { val thumbnailPosition = - viewModel!!.getThumbnailPosition( - container.thumbnailData, - width, - height, - isLayoutRtl, - ) + viewModel?.getThumbnailPosition(container.thumbnailData, width, height, isLayoutRtl) + ?: return null container.updateThumbnailMatrix(thumbnailPosition.matrix) return thumbnailPosition } override fun onDetachedFromWindow() { super.onDetachedFromWindow() - cancelJobs() - } - - fun cancelJobs() { - if (enableRefactorTaskThumbnail()) { - // The jobs are being cancelled in the background thread. So we make a copy of the - // list to prevent cleaning a new job that might be added to this list during - // onAttach or another moment in the lifecycle. - val coroutineJobsToCancel = coroutineJobs.toList() - coroutineJobs.clear() - if (coroutineJobsToCancel.isEmpty()) return - - if (enableCoroutineThreadingImprovements()) { - // TODO(b/391842220): This should ideally be handled in the completion block of the - // jobs above to be cancelled. - taskContainers.forEach { - it.setState( - state = null, - hasHeader = false, - canShowAppTimer = false, - clickCloseListener = null, - ) - // Do not set icon to null if we are actively in split selection. The task - // appears to have been offloaded as we remove it during split, but we still - // need the icon to show over the split task. - if (enableOverviewIconMenu() && recentsView?.isSplitSelectionActive == false) { - setIconState(it, null) - } - } - } - - coroutineScope.launch(dispatcherProvider.lightweightBackground) { + if (enableRefactorTaskThumbnail()) { + // The jobs are being cancelled in the background thread. So we make a copy of the + // list to prevent cleaning a new job that might be added to this list during + // onAttach or another moment in the lifecycle. + val coroutineJobsToCancel = coroutineJobs.toList() + coroutineJobs.clear() + coroutineScope.launch(dispatcherProvider.background) { coroutineJobsToCancel.forEach { it.cancel("TaskView detaching from window") } @@ -987,18 +905,16 @@ constructor( /** Updates this task view to the given {@param task}. */ open fun bind( - singleTask: SingleTask, + task: Task, orientedState: RecentsOrientedState, taskOverlayFactory: TaskOverlayFactory, ) { - this.groupTask = singleTask cancelPendingLoadTasks() this.orientedState = orientedState // Needed for dependencies taskContainers = listOf( createTaskContainer( - singleTask.task, - R.id.task_content_view, + task, R.id.snapshot, R.id.icon, R.id.show_windows, @@ -1012,21 +928,24 @@ constructor( protected open fun onBind(orientedState: RecentsOrientedState) { if (enableRefactorTaskThumbnail()) { - Log.d(TAG, "onBind $context ${orientedState.containerInterface}") - viewModel!!.bind(*taskIds) + val scopeId = context + Log.d(TAG, "onBind $scopeId ${orientedState.containerInterface}") + viewModel = + TaskViewModel( + taskViewType = type, + recentsViewData = RecentsDependencies.get(scopeId), + getTaskUseCase = RecentsDependencies.get(scopeId), + getSysUiStatusNavFlagsUseCase = RecentsDependencies.get(scopeId), + isThumbnailValidUseCase = RecentsDependencies.get(scopeId), + getThumbnailPositionUseCase = RecentsDependencies.get(scopeId), + dispatcherProvider = RecentsDependencies.get(scopeId), + ) + .apply { bind(*taskIds) } } taskContainers.forEach { container -> container.bind() - if (enableRefactorTaskContentView()) { - (container.taskContentView as TaskContentView).cornerRadius = - thumbnailFullscreenParams.currentCornerRadius - container.taskContentView.doOnSizeChange { width, height -> - updateThumbnailValidity(container) - val thumbnailPosition = updateThumbnailMatrix(container, width, height) - container.refreshOverlay(thumbnailPosition) - } - } else if (enableRefactorTaskThumbnail()) { + if (enableRefactorTaskThumbnail()) { container.thumbnailView.cornerRadius = thumbnailFullscreenParams.currentCornerRadius container.thumbnailView.doOnSizeChange { width, height -> @@ -1056,7 +975,6 @@ constructor( protected fun createTaskContainer( task: Task, - @IdRes taskContentViewId: Int, @IdRes thumbnailViewId: Int, @IdRes iconViewId: Int, @IdRes showWindowViewId: Int, @@ -1065,28 +983,14 @@ constructor( taskOverlayFactory: TaskOverlayFactory, ): TaskContainer { val iconView = findViewById<View>(iconViewId) as TaskViewIcon - val taskContentView = - if (enableRefactorTaskContentView()) findViewById<View>(taskContentViewId) - else findViewById(thumbnailViewId) - val snapshotView = - if (enableRefactorTaskContentView()) taskContentView.findViewById(thumbnailViewId) - else taskContentView - - val digitalWellBeingToast: DigitalWellBeingToast? = - if (enableRefactorDigitalWellbeingToast()) { - null - } else { - findViewById(digitalWellbeingBannerId)!! - } return TaskContainer( this, task, - taskContentView, - snapshotView, + findViewById(thumbnailViewId), iconView, TransformingTouchDelegate(iconView.asView()), stagePosition, - digitalWellBeingToast, + findViewById(digitalWellbeingBannerId)!!, findViewById(showWindowViewId)!!, taskOverlayFactory, ) @@ -1121,14 +1025,14 @@ constructor( * ensuring TaskView fits into screen in fullscreen. */ open fun updateTaskSize(lastComputedTaskSize: Rect, lastComputedGridTaskSize: Rect) { - val thumbnailPadding = container.deviceProfile.overviewProfile.taskThumbnailTopMarginPx + val thumbnailPadding = container.deviceProfile.overviewTaskThumbnailTopMarginPx val taskWidth = lastComputedTaskSize.width() val taskHeight = lastComputedTaskSize.height() val nonGridScale: Float val boxTranslationY: Float val expectedWidth: Int val expectedHeight: Int - if (container.deviceProfile.getDeviceProperties().isTablet) { + if (container.deviceProfile.isTablet) { val boxWidth: Int val boxHeight: Int @@ -1170,8 +1074,8 @@ constructor( protected open fun updateThumbnailSize() { // TODO(b/271468547), we should default to setting translations only on the snapshot instead // of a hybrid of both margins and translations - firstTaskContainer?.taskContentView?.updateLayoutParams<LayoutParams> { - topMargin = container.deviceProfile.overviewProfile.taskThumbnailTopMarginPx + firstTaskContainer?.snapshotView?.updateLayoutParams<LayoutParams> { + topMargin = container.deviceProfile.overviewTaskThumbnailTopMarginPx } taskContainers.forEach { it.digitalWellBeingToast?.setupLayout() } } @@ -1184,11 +1088,11 @@ constructor( val thumbnailBounds = Rect() if (relativeToDragLayer) { container.dragLayer.getDescendantRectRelativeToSelf( - it.taskContentView, + it.snapshotView, thumbnailBounds, ) } else { - thumbnailBounds.set(it.taskContentView) + thumbnailBounds.set(it.snapshotView) } bounds.union(thumbnailBounds) } @@ -1230,10 +1134,7 @@ constructor( } } } - if ( - needsUpdate(changes, FLAG_UPDATE_ICON) && - !(enableOverviewIconMenu() && enableRefactorTaskThumbnail()) - ) { + if (needsUpdate(changes, FLAG_UPDATE_ICON) && !enableOverviewIconMenu()) { taskContainers.forEach { if (visible) { recentsModel.iconCache @@ -1269,6 +1170,7 @@ constructor( if (state is TaskData.Data) { setIcon(container.iconView, state.icon) container.iconView.setText(state.title) + container.digitalWellBeingToast?.initialize() } else { setIcon(container.iconView, null) container.iconView.setText(null) @@ -1295,19 +1197,19 @@ constructor( with(iconView) { if (icon != null) { setDrawable(icon) - asView().setOnClickListener { + setOnClickListener { if (!confirmSecondSplitSelectApp()) { showTaskMenu(this) } } - asView().setOnLongClickListener { + setOnLongClickListener { requestDisallowInterceptTouchEvent(true) showTaskMenu(this) } } else { setDrawable(null) - asView().setOnClickListener(null) - asView().setOnLongClickListener(null) + setOnClickListener(null) + setOnLongClickListener(null) } } } @@ -1508,10 +1410,6 @@ constructor( isQuickSwitch: Boolean = false, callback: (launched: Boolean) -> Unit, ) { - val callbackWithLogging = { launchSuccess: Boolean -> - Log.d(TAG, "launchWithoutAnimation - callback: launchSuccess: $launchSuccess") - callback(launchSuccess) - } val firstTaskContainer = firstTaskContainer ?: return TestLogging.recordEvent( TestProtocol.SEQUENCE_MAIN, @@ -1535,7 +1433,7 @@ constructor( // checking whether to handle resume, but that can come in before // startHome() changes the state, so force-refresh here to ensure the // taskbar is updated - it.mContainerInterface.taskbarController?.refreshResumedState() + it.mSizeStrategy.taskbarController?.refreshResumedState() } } } @@ -1546,9 +1444,8 @@ constructor( 0, 0, Executors.MAIN_EXECUTOR.handler, - { callbackWithLogging(true) }, + { callback(true) }, ) { - Log.d(TAG, "launchWithoutAnimation: launch animation finished") failureListener.onTransitionFinished() } .apply { @@ -1560,24 +1457,22 @@ constructor( disableStartingWindow = firstTaskContainer.shouldShowSplashView } Executors.UI_HELPER_EXECUTOR.execute { - Log.d( - TAG, - "launchWithoutAnimation(isQuickSwitch: $isQuickSwitch) - " + - "startActivityFromRecents: ${taskIds.contentToString()}", - ) if ( !ActivityManagerWrapper.getInstance() .startActivityFromRecents(firstTaskContainer.task.key, if (Utilities.ATLEAST_Q) opts else null) ) { - Log.d(TAG, "launchWithoutAnimation - task launch failed") // If the call to start activity failed, then post the result immediately, // otherwise, wait for the animation start callback from the activity options // above Executors.MAIN_EXECUTOR.post { notifyTaskLaunchFailed("launchTask") - callbackWithLogging(false) + callback(false) } } + Log.d( + TAG, + "launchWithoutAnimation - startActivityFromRecents: ${taskIds.contentToString()}", + ) } } @@ -1627,9 +1522,7 @@ constructor( // Don't show menu when selecting second split screen app return true } - if ( - !container.deviceProfile.getDeviceProperties().isTablet && !recentsView.isClearAllHidden - ) { + if (!container.deviceProfile.isTablet && !recentsView.isClearAllHidden) { recentsView.snapToPage(recentsView.indexOfChild(this)) return false } @@ -1657,19 +1550,28 @@ constructor( private fun showTaskMenuWithContainer(menuContainer: TaskContainer): Boolean { val recentsView = recentsView ?: return false - // Disable hover on all TaskView's whilst menu is showing. - recentsView.setTaskBorderEnabled(false) + if (enableHoverOfChildElementsInTaskview()) { + // Disable hover on all TaskView's whilst menu is showing. + recentsView.setTaskBorderEnabled(false) + } return if (enableOverviewIconMenu() && menuContainer.iconView is IconAppChipView) { if (menuContainer.iconView.status == AppChipStatus.Expanded) { closeTaskMenu() } else { - TaskMenuView.showForTask(menuContainer) { recentsView.setTaskBorderEnabled(true) } + menuContainer.iconView.revealAnim(/* isRevealing= */ true) + TaskMenuView.showForTask(menuContainer) { + val isAnimated = !recentsView.isSplitSelectionActive + menuContainer.iconView.revealAnim(/* isRevealing= */ false, isAnimated) + if (enableHoverOfChildElementsInTaskview()) { + recentsView.setTaskBorderEnabled(true) + } + } } - } else if (container.deviceProfile.getDeviceProperties().isTablet) { + } else if (container.deviceProfile.isTablet) { val alignedOptionIndex = if ( recentsView.isOnGridBottomRow(menuContainer.taskView) && - container.deviceProfile.deviceProperties.isLandscape + container.deviceProfile.isLandscape ) { if (enableGridOnlyOverview()) { // With no focused task, there is less available space below the tasks, so @@ -1684,10 +1586,16 @@ constructor( 0 } TaskMenuViewWithArrow.showForTask(menuContainer, alignedOptionIndex) { - recentsView.setTaskBorderEnabled(true) + if (enableHoverOfChildElementsInTaskview()) { + recentsView.setTaskBorderEnabled(true) + } } } else { - TaskMenuView.showForTask(menuContainer) { recentsView.setTaskBorderEnabled(true) } + TaskMenuView.showForTask(menuContainer) { + if (enableHoverOfChildElementsInTaskview()) { + recentsView.setTaskBorderEnabled(true) + } + } } } @@ -1712,8 +1620,8 @@ constructor( tempCenterCoordinates: FloatArray, transformingTouchDelegate: TransformingTouchDelegate, ) { - val viewHalfWidth = view.asView().width / 2f - val viewHalfHeight = view.asView().height / 2f + val viewHalfWidth = view.width / 2f + val viewHalfHeight = view.height / 2f Utilities.getDescendantCoordRelativeToAncestor( view.asView(), container.dragLayer, @@ -1773,11 +1681,7 @@ constructor( private fun onSettledProgressUpdated(settledProgress: Float) { taskContainers.forEach { it.iconView.setContentAlpha(settledProgress) - if (enableRefactorDigitalWellbeingToast() && it.taskContentView is TaskContentView) { - it.taskContentView.onParentAnimationProgress(settledProgress) - } else { - it.digitalWellBeingToast?.bannerOffsetPercentage = 1f - settledProgress - } + it.digitalWellBeingToast?.bannerOffsetPercentage = 1f - settledProgress } } @@ -1825,7 +1729,7 @@ constructor( open fun setThumbnailVisibility(visibility: Int, taskId: Int) { taskContainers.forEach { if (visibility == VISIBLE || it.task.key.id == taskId) { - it.taskContentView.visibility = visibility + it.snapshotView.visibility = visibility it.digitalWellBeingToast?.visibility = visibility it.showWindowsView?.visibility = visibility it.overlay.setVisibility(visibility) @@ -1887,26 +1791,19 @@ constructor( protected open fun onFullscreenProgressChanged(fullscreenProgress: Float) { taskContainers.forEach { if (!enableOverviewIconMenu()) { - it.iconView.asView().visibility = if (fullscreenProgress < 1) VISIBLE else INVISIBLE + it.iconView.setVisibility(if (fullscreenProgress < 1) VISIBLE else INVISIBLE) } it.overlay.setFullscreenProgress(fullscreenProgress) } - updateSettledProgressFullscreen(fullscreenProgress) - updateFullscreenParams() - } - - protected fun updateSettledProgressFullscreen(fullscreenProgress: Float) { settledProgressFullscreen = SETTLED_PROGRESS_FAST_OUT_INTERPOLATOR.getInterpolation(1 - fullscreenProgress) + updateFullscreenParams() } protected open fun updateFullscreenParams() { updateFullscreenParams(thumbnailFullscreenParams) taskContainers.forEach { - if (enableRefactorTaskContentView()) { - (it.taskContentView as TaskContentView).cornerRadius = - thumbnailFullscreenParams.currentCornerRadius - } else if (enableRefactorTaskThumbnail()) { + if (enableRefactorTaskThumbnail()) { it.thumbnailView.cornerRadius = thumbnailFullscreenParams.currentCornerRadius } else { it.thumbnailViewDeprecated.setFullscreenParams(thumbnailFullscreenParams) @@ -1923,11 +1820,7 @@ constructor( isClickable = modalness == 0f taskContainers.forEach { it.iconView.setModalAlpha(1f - modalness) - if (enableRefactorDigitalWellbeingToast() && it.taskContentView is TaskContentView) { - it.taskContentView.onParentAnimationProgress(1f - modalness) - } else { - it.digitalWellBeingToast?.bannerOffsetPercentage = modalness - } + it.digitalWellBeingToast?.bannerOffsetPercentage = modalness } if (enableGridOnlyOverview()) { modalAlpha = if (isSelectedTask) 1f else (1f - modalness) @@ -1948,18 +1841,14 @@ constructor( } fun resetViewTransforms() { - // Dismiss translation shouldn't reset if actively being dragged - if (!isBeingDraggedForDismissal) { - secondaryDismissTranslationProperty.setValue(this, 0f) - } - primaryDismissTranslationProperty.setValue(this, 0f) - // fullscreenTranslation and accumulatedTranslation should not be reset, as // resetViewTransforms is called during QuickSwitch scrolling. + dismissTranslationX = 0f taskOffsetTranslationX = 0f taskResistanceTranslationX = 0f splitSelectTranslationX = 0f gridEndTranslationX = 0f + dismissTranslationY = 0f taskOffsetTranslationY = 0f taskResistanceTranslationY = 0f if (recentsView?.isSplitSelectionActive != true) { diff --git a/quickstep/src/com/android/quickstep/views/TaskViewIcon.java b/quickstep/src/com/android/quickstep/views/TaskViewIcon.java index 04776e067d..80e3a2b932 100644 --- a/quickstep/src/com/android/quickstep/views/TaskViewIcon.java +++ b/quickstep/src/com/android/quickstep/views/TaskViewIcon.java @@ -27,6 +27,16 @@ import com.android.quickstep.util.RecentsOrientedState; */ public interface TaskViewIcon { + /** + * Returns the width of this icon view. + */ + int getWidth(); + + /** + * Returns the height of this icon view. + */ + int getHeight(); + /** * Sets the opacity of the view. */ @@ -52,6 +62,26 @@ public interface TaskViewIcon { */ void setDrawable(@Nullable Drawable icon); + /** + * Register a callback to be invoked when this view is clicked. + */ + void setOnClickListener(@Nullable View.OnClickListener l); + + /** + * Register a callback to be invoked when this view is clicked and held. + */ + void setOnLongClickListener(@Nullable View.OnLongClickListener l); + + /** + * Returns the LayoutParams associated with this view. + */ + ViewGroup.LayoutParams getLayoutParams(); + + /** + * Sets the layout parameters associated with this view. + */ + void setLayoutParams(ViewGroup.LayoutParams params); + /** * Sets the degrees that the view is rotated around the pivot point. */ @@ -67,6 +97,11 @@ public interface TaskViewIcon { */ void setIconOrientation(RecentsOrientedState orientationState, boolean isGridTask); + /** + * Sets the visibility state of this view. + */ + void setVisibility(int visibility); + /** * Sets the tint color of the icon, useful for scrimming or dimming. * @@ -75,6 +110,11 @@ public interface TaskViewIcon { */ void setIconColorTint(int color, float amount); + /** + * Gets the opacity of the view. + */ + float getAlpha(); + /** * Returns the width of this icon view's drawable. */ @@ -85,6 +125,16 @@ public interface TaskViewIcon { */ int getDrawableHeight(); + /** + * Directly calls any attached OnClickListener. + */ + boolean callOnClick(); + + /** + * Calls this view's OnLongClickListener. + */ + boolean performLongClick(); + /** * Sets the text for this icon view if any text view is associated. */ diff --git a/quickstep/src_protolog/com/android/launcher3/util/StateManagerProtoLogProxy.java b/quickstep/src_protolog/com/android/launcher3/util/StateManagerProtoLogProxy.java index 8221629aeb..cb7254f1fe 100644 --- a/quickstep/src_protolog/com/android/launcher3/util/StateManagerProtoLogProxy.java +++ b/quickstep/src_protolog/com/android/launcher3/util/StateManagerProtoLogProxy.java @@ -62,12 +62,6 @@ public class StateManagerProtoLogProxy { ProtoLog.d(LAUNCHER_STATE_MANAGER, "StateManager.onStateTransitionEnd: state: %s", state); } - public static void logOnRepeatStateSetAborted(@NonNull Object state) { - if (!ENABLE_STATE_MANAGER_PROTO_LOG.isTrue() || !isProtoLogInitialized()) return; - ProtoLog.d(LAUNCHER_STATE_MANAGER, - "StateManager.onRepeatStateSetAborted: state: %s", state); - } - public static void logCancelAnimation(boolean animationOngoing, @NonNull String trace) { if (!ENABLE_STATE_MANAGER_PROTO_LOG.isTrue() || !isProtoLogInitialized()) return; ProtoLog.d(LAUNCHER_STATE_MANAGER, diff --git a/quickstep/src_protolog/com/android/quickstep/util/ActiveGestureErrorDetector.java b/quickstep/src_protolog/com/android/quickstep/util/ActiveGestureErrorDetector.java index 799ba77a36..ab10979927 100644 --- a/quickstep/src_protolog/com/android/quickstep/util/ActiveGestureErrorDetector.java +++ b/quickstep/src_protolog/com/android/quickstep/util/ActiveGestureErrorDetector.java @@ -36,12 +36,11 @@ public class ActiveGestureErrorDetector { SET_END_TARGET_NEW_TASK, SET_END_TARGET_ALL_APPS, ON_SETTLED_ON_END_TARGET, ON_START_RECENTS_ANIMATION, ON_FINISH_RECENTS_ANIMATION, ON_CANCEL_RECENTS_ANIMATION, START_RECENTS_ANIMATION, FINISH_RECENTS_ANIMATION, CANCEL_RECENTS_ANIMATION, - SET_ON_PAGE_TRANSITION_END_CALLBACK, CANCEL_CURRENT_ANIMATION, + SET_ON_PAGE_TRANSITION_END_CALLBACK, CANCEL_CURRENT_ANIMATION, CLEANUP_SCREENSHOT, SCROLLER_ANIMATION_ABORTED, TASK_APPEARED, EXPECTING_TASK_APPEARED, FLAG_USING_OTHER_ACTIVITY_INPUT_CONSUMER, LAUNCHER_DESTROYED, RECENT_TASKS_MISSING, INVALID_VELOCITY_ON_SWIPE_UP, RECENTS_ANIMATION_START_PENDING, QUICK_SWITCH_FROM_HOME_FALLBACK, QUICK_SWITCH_FROM_HOME_FAILED, NAVIGATION_MODE_SWITCHED, - RECENTS_ANIMATION_START_TIMEOUT, /** * These GestureEvents are specifically associated to state flags that get set in @@ -127,6 +126,15 @@ public class ActiveGestureErrorDetector { + "before/without startRecentsAnimation.", writer); break; + case CLEANUP_SCREENSHOT: + errorDetected |= printErrorIfTrue( + !encounteredEvents.contains(GestureEvent.STATE_SCREENSHOT_CAPTURED), + prefix, + /* errorMessage= */ "recents activity screenshot was " + + "cleaned up before/without STATE_SCREENSHOT_CAPTURED " + + "being set.", + writer); + break; case SCROLLER_ANIMATION_ABORTED: errorDetected |= printErrorIfTrue( encounteredEvents.contains(GestureEvent.SET_END_TARGET_HOME) @@ -298,13 +306,6 @@ public class ActiveGestureErrorDetector { /* errorMessage= */ "Navigation mode switched mid-gesture.", writer); break; - case RECENTS_ANIMATION_START_TIMEOUT: - errorDetected |= printErrorIfTrue( - true, - prefix, - /* errorMessage= */ "Recents animation start timed out.", - writer); - break; case EXPECTING_TASK_APPEARED: case MOTION_DOWN: case SET_END_TARGET: @@ -419,6 +420,15 @@ public class ActiveGestureErrorDetector { + "wasn't called and STATE_HANDLER_INVALIDATED wasn't set.", writer); + errorDetected |= printErrorIfTrue( + /* condition= */ encounteredEvents.contains( + GestureEvent.STATE_RECENTS_ANIMATION_CANCELED) + && !encounteredEvents.contains(GestureEvent.CLEANUP_SCREENSHOT), + prefix, + /* errorMessage= */ "STATE_RECENTS_ANIMATION_CANCELED was set but " + + "the task screenshot wasn't cleaned up.", + writer); + errorDetected |= printErrorIfTrue( /* condition= */ encounteredEvents.contains( GestureEvent.EXPECTING_TASK_APPEARED) diff --git a/quickstep/src_protolog/com/android/quickstep/util/ActiveGestureProtoLogProxy.java b/quickstep/src_protolog/com/android/quickstep/util/ActiveGestureProtoLogProxy.java index 1990c348b5..1c8656c54b 100644 --- a/quickstep/src_protolog/com/android/quickstep/util/ActiveGestureProtoLogProxy.java +++ b/quickstep/src_protolog/com/android/quickstep/util/ActiveGestureProtoLogProxy.java @@ -17,6 +17,7 @@ package com.android.quickstep.util; import static android.view.MotionEvent.ACTION_DOWN; +import static com.android.launcher3.Flags.enableActiveGestureProtoLog; import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.CANCEL_RECENTS_ANIMATION; import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.FINISH_RECENTS_ANIMATION; import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.INVALID_VELOCITY_ON_SWIPE_UP; @@ -32,7 +33,6 @@ import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.QUICK_SWITCH_FROM_HOME_FAILED; import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.QUICK_SWITCH_FROM_HOME_FALLBACK; import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.RECENTS_ANIMATION_START_PENDING; -import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.RECENTS_ANIMATION_START_TIMEOUT; import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.RECENT_TASKS_MISSING; import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.SET_END_TARGET; import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.START_RECENTS_ANIMATION; @@ -71,7 +71,7 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog( /* event= */ "AbsSwipeUpHandler.onRecentsAnimationCanceled", /* gestureEvent= */ CANCEL_RECENTS_ANIMATION); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "AbsSwipeUpHandler.onRecentsAnimationCanceled"); } @@ -79,7 +79,7 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog( /* event= */ "RecentsAnimationCallbacks.onAnimationFinished", ON_FINISH_RECENTS_ANIMATION); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "AbsSwipeUpHandler.onAnimationFinished"); } @@ -87,27 +87,27 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog( "AbsSwipeUpHandler.cancelCurrentAnimation", ActiveGestureErrorDetector.GestureEvent.CANCEL_CURRENT_ANIMATION); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "AbsSwipeUpHandler.cancelCurrentAnimation"); } public static void logAbsSwipeUpHandlerOnTasksAppeared() { ActiveGestureLog.INSTANCE.addLog("AbsSwipeUpHandler.onTasksAppeared: " + "force finish recents animation complete; clearing state callback."); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "AbsSwipeUpHandler.onTasksAppeared: " + "force finish recents animation complete; clearing state callback."); } public static void logHandOffAnimation() { ActiveGestureLog.INSTANCE.addLog("AbsSwipeUpHandler.handOffAnimation"); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "AbsSwipeUpHandler.handOffAnimation"); } public static void logFinishRecentsAnimationOnTasksAppeared() { ActiveGestureLog.INSTANCE.addLog("finishRecentsAnimationOnTasksAppeared"); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "finishRecentsAnimationOnTasksAppeared"); } @@ -115,14 +115,14 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog( /* event= */ "RecentsAnimationCallbacks.onAnimationCanceled", /* gestureEvent= */ ON_CANCEL_RECENTS_ANIMATION); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "RecentsAnimationCallbacks.onAnimationCanceled"); } public static void logRecentsAnimationCallbacksOnTasksAppeared() { ActiveGestureLog.INSTANCE.addLog("RecentsAnimationCallbacks.onTasksAppeared", ActiveGestureErrorDetector.GestureEvent.TASK_APPEARED); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "RecentsAnimationCallbacks.onTasksAppeared"); } @@ -130,32 +130,32 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog( /* event= */ "TaskAnimationManager.startRecentsAnimation", /* gestureEvent= */ START_RECENTS_ANIMATION); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TaskAnimationManager.startRecentsAnimation"); } public static void logLaunchingSideTaskFailed() { ActiveGestureLog.INSTANCE.addLog("Unable to launch side task (no recents)"); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Unable to launch side task (no recents)"); } public static void logContinueRecentsAnimation() { ActiveGestureLog.INSTANCE.addLog(/* event= */ "continueRecentsAnimation"); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "continueRecentsAnimation"); } public static void logCleanUpRecentsAnimationSkipped() { ActiveGestureLog.INSTANCE.addLog( /* event= */ "cleanUpRecentsAnimation skipped due to wrong callbacks"); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "cleanUpRecentsAnimation skipped due to wrong callbacks"); } public static void logCleanUpRecentsAnimation() { ActiveGestureLog.INSTANCE.addLog(/* event= */ "cleanUpRecentsAnimation"); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "cleanUpRecentsAnimation"); } @@ -163,7 +163,7 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "TIS.onInputEvent(displayId=%d): Cannot process input event: user is locked", displayId)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TIS.onInputEvent(displayId=%d): Cannot process input event: user is locked", displayId); @@ -175,7 +175,7 @@ public class ActiveGestureProtoLogProxy { + "but a previously-requested recents animation hasn't started. " + "Ignoring all following motion events.", displayId), RECENTS_ANIMATION_START_PENDING); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TIS.onMotionEvent(displayId=%d): A new gesture has been started, " + "but a previously-requested recents animation hasn't started. " @@ -186,7 +186,7 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "TIS.onInputEvent(displayId=%d): Cannot process input event: " + "using 3-button nav and event is not a trackpad event", displayId)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TIS.onInputEvent(displayId=%d): Cannot process input event: " + "using 3-button nav and event is not a trackpad event", displayId); @@ -194,40 +194,46 @@ public class ActiveGestureProtoLogProxy { public static void logPreloadRecentsAnimation() { ActiveGestureLog.INSTANCE.addLog("preloadRecentsAnimation"); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "preloadRecentsAnimation"); } public static void logRecentTasksMissing() { ActiveGestureLog.INSTANCE.addLog("Null mRecentTasks", RECENT_TASKS_MISSING); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Null mRecentTasks"); } + public static void logExecuteHomeCommand() { + ActiveGestureLog.INSTANCE.addLog("OverviewCommandHelper.executeCommand(HOME)"); + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; + ProtoLog.d(ACTIVE_GESTURE_LOG, "OverviewCommandHelper.executeCommand(HOME)"); + } + public static void logFinishRecentsAnimationCallback() { ActiveGestureLog.INSTANCE.addLog("finishRecentsAnimation-callback"); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "finishRecentsAnimation-callback"); } public static void logOnScrollerAnimationAborted() { ActiveGestureLog.INSTANCE.addLog("scroller animation aborted", ActiveGestureErrorDetector.GestureEvent.SCROLLER_ANIMATION_ABORTED); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "scroller animation aborted"); } public static void logInputConsumerBecameActive(@NonNull String consumerName) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "%s became active", consumerName)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "%s became active", consumerName); } public static void logTaskLaunchFailed(int launchedTaskId) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "Launch failed, task (id=%d) finished mid transition", launchedTaskId)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Launch failed, task (id=%d) finished mid transition", launchedTaskId); } @@ -235,7 +241,7 @@ public class ActiveGestureProtoLogProxy { public static void logOnPageEndTransition(int nextPageIndex) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "onPageEndTransition: current page index updated: %d", nextPageIndex)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "onPageEndTransition: current page index updated: %d", nextPageIndex); } @@ -245,7 +251,7 @@ public class ActiveGestureProtoLogProxy { "Quick switch from home fallback case: The TaskView at index %d is missing.", taskIndex), QUICK_SWITCH_FROM_HOME_FALLBACK); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Quick switch from home fallback case: The TaskView at index %d is missing.", taskIndex); @@ -256,7 +262,7 @@ public class ActiveGestureProtoLogProxy { "Quick switch from home failed: TaskViews at indices %d and 0 are missing.", taskIndex), QUICK_SWITCH_FROM_HOME_FAILED); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Quick switch from home failed: TaskViews at indices %d and 0 are missing.", taskIndex); @@ -266,42 +272,42 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "finishRecentsAnimation: %b", toRecents), /* gestureEvent= */ FINISH_RECENTS_ANIMATION); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "finishRecentsAnimation: %b", toRecents); } public static void logSetEndTarget(@NonNull String target) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "setEndTarget %s", target), /* gestureEvent= */ SET_END_TARGET); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "setEndTarget %s", target); } public static void logStartHomeIntent(@NonNull String reason) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "OverviewComponentObserver.startHomeIntent: %s", reason)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "OverviewComponentObserver.startHomeIntent: %s", reason); } public static void logRunningTaskPackage(@NonNull String packageName) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "Current running task package name=%s", packageName)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Current running task package name=%s", packageName); } public static void logSysuiStateFlags(@NonNull String stateFlags) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "Current SystemUi state flags=%s", stateFlags)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Current SystemUi state flags=%s", stateFlags); } public static void logSetInputConsumer(@NonNull String consumerName, @NonNull String reason) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "setInputConsumer: %s. reason(s):%s", consumerName, reason)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "setInputConsumer: %s. reason(s):%s", consumerName, reason); } @@ -313,7 +319,7 @@ public class ActiveGestureProtoLogProxy { + "one (%s) was excluded from recents", otherTaskPackage, runningTaskPackage)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Changing active task to %s because the previous task running on top of this " + "one (%s) was excluded from recents", @@ -334,7 +340,7 @@ public class ActiveGestureProtoLogProxy { /* gestureEvent= */ action == ACTION_DOWN ? MOTION_DOWN : MOTION_UP); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "onMotionEvent(%d, %d): %s, %s, displayId=%d", x, @@ -356,7 +362,7 @@ public class ActiveGestureProtoLogProxy { pointerCount, displayId), MOTION_MOVE); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "onMotionEvent: %s, %s, pointerCount: %d, displayId=%d", action, @@ -369,7 +375,7 @@ public class ActiveGestureProtoLogProxy { @NonNull String action, @NonNull String classification, int displayId) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "onMotionEvent: %s, %s, displayId=%d", action, classification, displayId)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "onMotionEvent: %s, %s, displayId=%d", action, classification, displayId); } @@ -383,7 +389,7 @@ public class ActiveGestureProtoLogProxy { startNavMode, currentNavMode), NAVIGATION_MODE_SWITCHED); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TIS.onInputEvent(displayId=%d): Navigation mode switched mid-gesture (%s -> %s); " + "cancelling gesture.", @@ -396,7 +402,7 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "TIS.onInputEvent(displayId=%d): Cannot process input event: " + "received unknown event %s", displayId, event)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TIS.onInputEvent(displayId=%d): Cannot process input event: " + "received unknown event %s", displayId, event); @@ -405,14 +411,14 @@ public class ActiveGestureProtoLogProxy { public static void logFinishRunningRecentsAnimation(boolean toHome) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "finishRunningRecentsAnimation: %b", toHome)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "finishRunningRecentsAnimation: %b", toHome); } public static void logOnRecentsAnimationStartCancelled() { ActiveGestureLog.INSTANCE.addLog("RecentsAnimationCallbacks.onAnimationStart (canceled): 0", /* gestureEvent= */ ON_START_RECENTS_ANIMATION); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "RecentsAnimationCallbacks.onAnimationStart (canceled): 0"); } @@ -420,7 +426,7 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "RecentsAnimationCallbacks.onAnimationStart: %d", appCount), /* gestureEvent= */ ON_START_RECENTS_ANIMATION); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "RecentsAnimationCallbacks.onAnimationStart: %d", appCount); } @@ -430,7 +436,7 @@ public class ActiveGestureProtoLogProxy { "TaskAnimationManager.startRecentsAnimation(%s): " + "Setting mRecentsAnimationStartPending = false", callback)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TaskAnimationManager.startRecentsAnimation(%s): " + "Setting mRecentsAnimationStartPending = false", @@ -442,7 +448,7 @@ public class ActiveGestureProtoLogProxy { "TaskAnimationManager.startRecentsAnimation: " + "Setting mRecentsAnimationStartPending = %b", value)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TaskAnimationManager.startRecentsAnimation: " + "Setting mRecentsAnimationStartPending = %b", @@ -452,7 +458,7 @@ public class ActiveGestureProtoLogProxy { public static void logLaunchingSideTask(int taskId) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "Launching side task id=%d", taskId)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Launching side task id=%d", taskId); } @@ -460,7 +466,7 @@ public class ActiveGestureProtoLogProxy { int displayId, @NonNull ActiveGestureLog.CompoundString reason) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "TIS.onMotionEvent(displayId=%d): ", displayId).append(reason)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TIS.onMotionEvent(displayId=%d): %s", displayId, reason.toString()); } @@ -468,14 +474,14 @@ public class ActiveGestureProtoLogProxy { public static void logStartNewTask(@NonNull ActiveGestureLog.CompoundString tasks) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "Launching task: ").append(tasks)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TIS.onMotionEvent: %s", tasks.toString()); } public static void logMotionPauseDetectorEvent(@NonNull ActiveGestureLog.CompoundString event) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "MotionPauseDetector: ").append(event)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "MotionPauseDetector: %s", event.toString()); } @@ -483,7 +489,7 @@ public class ActiveGestureProtoLogProxy { @NonNull ActiveGestureLog.CompoundString reason) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "handleTaskAppeared check failed: ").append(reason)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "handleTaskAppeared check failed: %s", reason.toString()); } @@ -495,7 +501,7 @@ public class ActiveGestureProtoLogProxy { @NonNull String string, @Nullable ActiveGestureErrorDetector.GestureEvent gestureEvent) { ActiveGestureLog.INSTANCE.addLog(string, gestureEvent); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "%s", string); } @@ -503,7 +509,7 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "onSettledOnEndTarget %s", endTarget), /* gestureEvent= */ ON_SETTLED_ON_END_TARGET); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "onSettledOnEndTarget %s", endTarget); } @@ -514,7 +520,7 @@ public class ActiveGestureProtoLogProxy { velocityY, angle), velocityX == 0 && velocityY == 0 ? INVALID_VELOCITY_ON_SWIPE_UP : null); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "calculateEndTarget: velocities=(x=%fdp/ms, y=%fdp/ms), angle=%f", velocityX, @@ -527,7 +533,7 @@ public class ActiveGestureProtoLogProxy { "Forcefully finishing recents animation: Unexpected task appeared id=%d, pkg=%s", taskId, packageName)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Forcefully finishing recents animation: Unexpected task appeared id=%d, pkg=%s", taskId, @@ -537,7 +543,7 @@ public class ActiveGestureProtoLogProxy { public static void logCreateTouchRegionForDisplay(int displayRotation, @NonNull Point displaySize, @NonNull RectF swipeRegion, @NonNull RectF ohmRegion, int gesturalHeight, int largerGesturalHeight, @NonNull String reason) { - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "OrientationTouchTransformer.createRegionForDisplay: " + "dispRot=%d, dispSize=%s, swipeRegion=%s, ohmRegion=%s, " @@ -550,25 +556,16 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "TaskAnimationManager not available for displayId=%d", displayId)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "TaskAnimationManager not available for displayId=%d", displayId); } - public static void logOnAbsSwipeUpHandlerNotAvailable(int displayId) { - ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( - "AbsSwipeUpHandler not available for displayId=%d", - displayId)); - if (!isProtoLogInitialized()) return; - ProtoLog.d(ACTIVE_GESTURE_LOG, "AbsSwipeUpHandler not available for displayId=%d", - displayId); - } - public static void logGestureStartSwipeHandler(@NonNull String interactionHandler) { ActiveGestureLog.INSTANCE.addLog(new ActiveGestureLog.CompoundString( "OtherActivityInputConsumer.startTouchTrackingForWindowAnimation: " + "interactionHandler=%s", interactionHandler)); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "OtherActivityInputConsumer.startTouchTrackingForWindowAnimation: " + "interactionHandler=%s", interactionHandler); @@ -578,17 +575,8 @@ public class ActiveGestureProtoLogProxy { ActiveGestureLog.INSTANCE.addLog("Launcher destroyed while mRecentsAnimationStartPending ==" + " true, queuing a callback to clean the pending animation up on start", /* gestureEvent= */ ON_START_RECENTS_ANIMATION); - if (!isProtoLogInitialized()) return; + if (!enableActiveGestureProtoLog() || !isProtoLogInitialized()) return; ProtoLog.d(ACTIVE_GESTURE_LOG, "Launcher destroyed while mRecentsAnimationStartPending ==" + " true, queuing a callback to clean the pending animation up on start"); } - - public static void logRecentsAnimationStartTimedOut() { - ActiveGestureLog.INSTANCE.addLog("Recents animation start has timed out; forcefully " - + "cleaning up the recents animation.", - /* gestureEvent= */ RECENTS_ANIMATION_START_TIMEOUT); - if (!isProtoLogInitialized()) return; - ProtoLog.d(ACTIVE_GESTURE_LOG, "Recents animation start has timed out; forcefully " - + "cleaning up the recents animation."); - } } diff --git a/quickstep/src_protolog/com/android/quickstep/util/QuickstepProtoLogGroup.java b/quickstep/src_protolog/com/android/quickstep/util/QuickstepProtoLogGroup.java index 7696a70a07..2327cfcf1d 100644 --- a/quickstep/src_protolog/com/android/quickstep/util/QuickstepProtoLogGroup.java +++ b/quickstep/src_protolog/com/android/quickstep/util/QuickstepProtoLogGroup.java @@ -30,9 +30,7 @@ public enum QuickstepProtoLogGroup implements IProtoLogGroup { ACTIVE_GESTURE_LOG(true, true, Constants.DEBUG_ACTIVE_GESTURE, "ActiveGestureLog"), RECENTS_WINDOW(true, true, Constants.DEBUG_RECENTS_WINDOW, "RecentsWindow"), - LAUNCHER_STATE_MANAGER(true, true, Constants.DEBUG_STATE_MANAGER, "LauncherStateManager"), - OVERVIEW_COMMAND_HELPER(true, true, Constants.DEBUG_OVERVIEW_COMMAND_HELPER, - "OverviewCommandHelper"); + LAUNCHER_STATE_MANAGER(true, true, Constants.DEBUG_STATE_MANAGER, "LauncherStateManager"); private final boolean mEnabled; private volatile boolean mLogToProto; @@ -127,7 +125,6 @@ public enum QuickstepProtoLogGroup implements IProtoLogGroup { private static final boolean DEBUG_ACTIVE_GESTURE = false; private static final boolean DEBUG_RECENTS_WINDOW = false; private static final boolean DEBUG_STATE_MANAGER = true; // b/279059025, b/325463989 - private static final boolean DEBUG_OVERVIEW_COMMAND_HELPER = true; private static final int LOG_START_ID = (int) (UUID.nameUUIDFromBytes(QuickstepProtoLogGroup.class.getName().getBytes()) diff --git a/quickstep/src_protolog/com/android/quickstep/util/RecentsWindowProtoLogProxy.java b/quickstep/src_protolog/com/android/quickstep/util/RecentsWindowProtoLogProxy.java index 41e9cefbc1..99888fb2a3 100644 --- a/quickstep/src_protolog/com/android/quickstep/util/RecentsWindowProtoLogProxy.java +++ b/quickstep/src_protolog/com/android/quickstep/util/RecentsWindowProtoLogProxy.java @@ -19,7 +19,7 @@ package com.android.quickstep.util; import static com.android.quickstep.util.QuickstepProtoLogGroup.RECENTS_WINDOW; import static com.android.quickstep.util.QuickstepProtoLogGroup.isProtoLogInitialized; -import android.window.DesktopExperienceFlags; +import android.window.DesktopModeFlags; import androidx.annotation.NonNull; @@ -37,13 +37,8 @@ import com.android.launcher3.Flags; * method. Or, if an existing entry needs to be modified, simply update it here. */ public class RecentsWindowProtoLogProxy { - private static final DesktopExperienceFlags.DesktopExperienceFlag - ENABLE_RECENTS_WINDOW_PROTO_LOG = - new DesktopExperienceFlags.DesktopExperienceFlag( - Flags::enableRecentsWindowProtoLog, - false, - Flags.FLAG_ENABLE_RECENTS_WINDOW_PROTO_LOG); - + private static final DesktopModeFlags.DesktopModeFlag ENABLE_RECENTS_WINDOW_PROTO_LOG = + new DesktopModeFlags.DesktopModeFlag(Flags::enableRecentsWindowProtoLog, true); public static void logOnStateSetStart(@NonNull String stateName) { if (!ENABLE_RECENTS_WINDOW_PROTO_LOG.isTrue() || !isProtoLogInitialized()) return; ProtoLog.d(RECENTS_WINDOW, "onStateSetStart: %s", stateName); @@ -54,11 +49,6 @@ public class RecentsWindowProtoLogProxy { ProtoLog.d(RECENTS_WINDOW, "onStateSetEnd: %s", stateName); } - public static void logOnRepeatStateSetAborted(@NonNull String stateName) { - if (!ENABLE_RECENTS_WINDOW_PROTO_LOG.isTrue() || !isProtoLogInitialized()) return; - ProtoLog.d(RECENTS_WINDOW, "onRepeatStateSetAborted: %s", stateName); - } - public static void logStartRecentsWindow(boolean isShown, boolean windowViewIsNull) { if (!ENABLE_RECENTS_WINDOW_PROTO_LOG.isTrue() || !isProtoLogInitialized()) return; ProtoLog.d(RECENTS_WINDOW, diff --git a/quickstep/tests/multivalentScreenshotTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarViewScreenshotTest.kt b/quickstep/tests/multivalentScreenshotTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarViewScreenshotTest.kt index 3d83740163..b5a418b04d 100644 --- a/quickstep/tests/multivalentScreenshotTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarViewScreenshotTest.kt +++ b/quickstep/tests/multivalentScreenshotTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarViewScreenshotTest.kt @@ -26,7 +26,7 @@ import android.widget.FrameLayout.LayoutParams.WRAP_CONTENT import androidx.activity.ComponentActivity import androidx.test.core.app.ApplicationProvider import com.android.launcher3.R -import com.android.wm.shell.shared.bubbles.BubbleBarLocation +import com.android.launcher3.taskbar.bubbles.testing.FakeBubbleViewFactory import com.google.android.apps.nexuslauncher.imagecomparison.goldenpathmanager.ViewScreenshotGoldenPathManager import org.junit.Rule import org.junit.Test @@ -69,7 +69,7 @@ class BubbleBarViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { screenshotRule.screenshotTest("bubbleBarView_collapsed_oneBubble") { activity -> activity.actionBar?.hide() setupBubbleBarView() - bubbleBarView.addBubble(createBubble("key1", Color.GREEN), false) + bubbleBarView.addBubble(createBubble("key1", Color.GREEN)) val container = FrameLayout(context) val lp = FrameLayout.LayoutParams(MATCH_PARENT, MATCH_PARENT) container.layoutParams = lp @@ -83,8 +83,8 @@ class BubbleBarViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { screenshotRule.screenshotTest("bubbleBarView_collapsed_twoBubbles") { activity -> activity.actionBar?.hide() setupBubbleBarView() - bubbleBarView.addBubble(createBubble("key1", Color.GREEN), true) - bubbleBarView.addBubble(createBubble("key2", Color.CYAN), true) + bubbleBarView.addBubble(createBubble("key1", Color.GREEN)) + bubbleBarView.addBubble(createBubble("key2", Color.CYAN)) val container = FrameLayout(context) val lp = FrameLayout.LayoutParams(MATCH_PARENT, MATCH_PARENT) container.layoutParams = lp @@ -105,14 +105,14 @@ class BubbleBarViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { ) { activity -> activity.actionBar?.hide() setupBubbleBarView() - bubbleBarView.addBubble(createBubble("key1", Color.GREEN), false) - bubbleBarView.addBubble(createBubble("key2", Color.CYAN), false) - bubbleBarView.addBubble(createBubble("key3", Color.MAGENTA), false) + bubbleBarView.addBubble(createBubble("key1", Color.GREEN)) + bubbleBarView.addBubble(createBubble("key2", Color.CYAN)) + bubbleBarView.addBubble(createBubble("key3", Color.MAGENTA)) val container = FrameLayout(context) val lp = FrameLayout.LayoutParams(MATCH_PARENT, MATCH_PARENT) container.layoutParams = lp container.addView(bubbleBarView) - bubbleBarView.animateExpanded(true) + bubbleBarView.isExpanded = true container } } @@ -124,23 +124,6 @@ class BubbleBarViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { val paddingTop = context.resources.getDimensionPixelSize(R.dimen.bubblebar_pointer_visible_size) bubbleBarView.setPadding(0, paddingTop, 0, 0) - bubbleBarView.setController( - object : BubbleBarView.Controller { - override fun getBubbleBarTranslationY(): Float = 0f - - override fun onBubbleBarTouched() {} - - override fun expandBubbleBar() {} - - override fun dismissBubbleBar() {} - - override fun updateBubbleBarLocation(location: BubbleBarLocation?, source: Int) {} - - override fun setIsDragging(dragging: Boolean) {} - - override fun onBubbleBarExpandedStateChanged(expanded: Boolean) {} - } - ) bubbleBarView.visibility = View.VISIBLE bubbleBarView.alpha = 1f } diff --git a/quickstep/tests/multivalentScreenshotTests/src/com/android/launcher3/taskbar/bubbles/BubbleViewScreenshotTest.kt b/quickstep/tests/multivalentScreenshotTests/src/com/android/launcher3/taskbar/bubbles/BubbleViewScreenshotTest.kt index 0661a99dbd..47f393ffc1 100644 --- a/quickstep/tests/multivalentScreenshotTests/src/com/android/launcher3/taskbar/bubbles/BubbleViewScreenshotTest.kt +++ b/quickstep/tests/multivalentScreenshotTests/src/com/android/launcher3/taskbar/bubbles/BubbleViewScreenshotTest.kt @@ -18,6 +18,7 @@ package com.android.launcher3.taskbar.bubbles import android.content.Context import android.graphics.Color import androidx.test.core.app.ApplicationProvider +import com.android.launcher3.taskbar.bubbles.testing.FakeBubbleViewFactory import com.google.android.apps.nexuslauncher.imagecomparison.goldenpathmanager.ViewScreenshotGoldenPathManager import org.junit.Rule import org.junit.Test diff --git a/quickstep/tests/multivalentScreenshotTests/src/com/android/quickstep/task/thumbnail/TaskThumbnailViewScreenshotTest.kt b/quickstep/tests/multivalentScreenshotTests/src/com/android/quickstep/task/thumbnail/TaskThumbnailViewScreenshotTest.kt index 86bfdcb22a..80b2c16e10 100644 --- a/quickstep/tests/multivalentScreenshotTests/src/com/android/quickstep/task/thumbnail/TaskThumbnailViewScreenshotTest.kt +++ b/quickstep/tests/multivalentScreenshotTests/src/com/android/quickstep/task/thumbnail/TaskThumbnailViewScreenshotTest.kt @@ -16,23 +16,21 @@ package com.android.quickstep.task.thumbnail import android.content.Context +import android.graphics.Bitmap +import android.graphics.Canvas import android.graphics.Color import android.graphics.Matrix +import android.graphics.Paint import android.graphics.drawable.BitmapDrawable -import android.platform.test.flag.junit.SetFlagsRule import android.view.LayoutInflater import android.view.Surface.ROTATION_0 -import com.android.launcher3.Flags +import androidx.core.graphics.set import com.android.launcher3.R -import com.android.launcher3.util.rule.setFlags -import com.android.quickstep.task.thumbnail.SplashHelper.createBitmap -import com.android.quickstep.task.thumbnail.SplashHelper.createSplash import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.BackgroundOnly import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.Snapshot import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.SnapshotSplash import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.Uninitialized import com.google.android.apps.nexuslauncher.imagecomparison.goldenpathmanager.ViewScreenshotGoldenPathManager -import org.junit.Before import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith @@ -47,20 +45,13 @@ import platform.test.screenshot.getEmulatedDevicePathConfig @RunWith(ParameterizedAndroidJunit4::class) class TaskThumbnailViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { - @get:Rule(order = 0) val setFlagsRule = SetFlagsRule() - - @get:Rule(order = 1) + @get:Rule val screenshotRule = ViewScreenshotTestRule( emulationSpec, ViewScreenshotGoldenPathManager(getEmulatedDevicePathConfig(emulationSpec)), ) - @Before - fun setUp() { - setFlagsRule.setFlags(false, Flags.FLAG_ENABLE_REFACTOR_TASK_CONTENT_VIEW) - } - @Test fun taskThumbnailView_uninitializedByDefault() { screenshotRule.screenshotTest("taskThumbnailView_uninitialized") { activity -> @@ -74,7 +65,6 @@ class TaskThumbnailViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { screenshotRule.screenshotTest("taskThumbnailView_uninitialized") { activity -> activity.actionBar?.hide() val taskThumbnailView = createTaskThumbnailView(activity) - taskThumbnailView.setState(BackgroundOnly(Color.YELLOW)) taskThumbnailView.setState(Uninitialized) taskThumbnailView } @@ -100,25 +90,23 @@ class TaskThumbnailViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { } @Test - fun taskThumbnailView_liveTile() { + fun taskThumbnailView_liveTile_withoutHeader() { screenshotRule.screenshotTest("taskThumbnailView_liveTile") { activity -> activity.actionBar?.hide() - createTaskThumbnailView(activity).apply { setState(TaskThumbnailUiState.LiveTile) } + createTaskThumbnailView(activity).apply { + setState(TaskThumbnailUiState.LiveTile.WithoutHeader) + } } } @Test - fun taskThumbnailView_image() { + fun taskThumbnailView_image_withoutHeader() { screenshotRule.screenshotTest("taskThumbnailView_image") { activity -> activity.actionBar?.hide() createTaskThumbnailView(activity).apply { setState( SnapshotSplash( - Snapshot( - createBitmap(VIEW_ENV_WIDTH, VIEW_ENV_HEIGHT), - ROTATION_0, - Color.DKGRAY, - ), + Snapshot.WithoutHeader(createBitmap(), ROTATION_0, Color.DKGRAY), null, ) ) @@ -127,14 +115,14 @@ class TaskThumbnailViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { } @Test - fun taskThumbnailView_image_withImageMatrix() { + fun taskThumbnailView_image_withoutHeader_withImageMatrix() { screenshotRule.screenshotTest("taskThumbnailView_image_withMatrix") { activity -> activity.actionBar?.hide() createTaskThumbnailView(activity).apply { val lessThanHeightMatchingAspectRatio = (VIEW_ENV_HEIGHT / 2) - 200 setState( SnapshotSplash( - Snapshot( + Snapshot.WithoutHeader( createBitmap( width = VIEW_ENV_WIDTH / 2, height = lessThanHeightMatchingAspectRatio, @@ -151,17 +139,13 @@ class TaskThumbnailViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { } @Test - fun taskThumbnailView_splash() { + fun taskThumbnailView_splash_withoutHeader() { screenshotRule.screenshotTest("taskThumbnailView_partial_splash") { activity -> activity.actionBar?.hide() createTaskThumbnailView(activity).apply { setState( SnapshotSplash( - Snapshot( - createBitmap(VIEW_ENV_WIDTH, VIEW_ENV_HEIGHT), - ROTATION_0, - Color.DKGRAY, - ), + Snapshot.WithoutHeader(createBitmap(), ROTATION_0, Color.DKGRAY), BitmapDrawable(activity.resources, createSplash()), ) ) @@ -171,14 +155,14 @@ class TaskThumbnailViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { } @Test - fun taskThumbnailView_splash_withImageMatrix() { + fun taskThumbnailView_splash_withoutHeader_withImageMatrix() { screenshotRule.screenshotTest("taskThumbnailView_partial_splash_withMatrix") { activity -> activity.actionBar?.hide() createTaskThumbnailView(activity).apply { val lessThanHeightMatchingAspectRatio = (VIEW_ENV_HEIGHT / 2) - 200 setState( SnapshotSplash( - Snapshot( + Snapshot.WithoutHeader( createBitmap( width = VIEW_ENV_WIDTH / 2, height = lessThanHeightMatchingAspectRatio, @@ -249,6 +233,27 @@ class TaskThumbnailViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { return taskThumbnailView } + private fun createSplash() = createBitmap(width = 20, height = 20, rectColorRotation = 1) + + private fun createBitmap( + width: Int = VIEW_ENV_WIDTH, + height: Int = VIEW_ENV_HEIGHT, + rectColorRotation: Int = 0, + ) = + Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888).apply { + Canvas(this).apply { + val paint = Paint() + paint.color = BITMAP_RECT_COLORS[rectColorRotation % 4] + drawRect(0f, 0f, width / 2f, height / 2f, paint) + paint.color = BITMAP_RECT_COLORS[(1 + rectColorRotation) % 4] + drawRect(width / 2f, 0f, width.toFloat(), height / 2f, paint) + paint.color = BITMAP_RECT_COLORS[(2 + rectColorRotation) % 4] + drawRect(0f, height / 2f, width / 2f, height.toFloat(), paint) + paint.color = BITMAP_RECT_COLORS[(3 + rectColorRotation) % 4] + drawRect(width / 2f, height / 2f, width.toFloat(), height.toFloat(), paint) + } + } + companion object { @Parameters(name = "{0}") @JvmStatic @@ -260,6 +265,7 @@ class TaskThumbnailViewScreenshotTest(emulationSpec: DeviceEmulationSpec) { ) const val CORNER_RADIUS = 56f + val BITMAP_RECT_COLORS = listOf(Color.GREEN, Color.RED, Color.BLUE, Color.CYAN) const val VIEW_ENV_WIDTH = 1440 const val VIEW_ENV_HEIGHT = 3120 } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManagerTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManagerTest.kt index ee5b841ed2..7ebef45d27 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManagerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/desktop/DesktopAppLaunchTransitionManagerTest.kt @@ -25,13 +25,10 @@ import android.platform.test.flag.junit.SetFlagsRule import android.view.WindowManager.TRANSIT_OPEN import android.view.WindowManager.TRANSIT_TO_FRONT import android.window.TransitionFilter -import android.window.TransitionFilter.CONTAINER_ORDER_ANY -import android.window.TransitionFilter.CONTAINER_ORDER_TOP import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.quickstep.SystemUiProxy -import com.android.window.flags2.Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_BUGFIX -import com.android.window.flags2.Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX +import com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX import com.android.wm.shell.shared.desktopmode.DesktopModeStatus import com.google.common.truth.Truth.assertThat import org.junit.Before @@ -80,8 +77,7 @@ class DesktopAppLaunchTransitionManagerTest { @Test @EnableFlags(FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX) - @DisableFlags(FLAG_ENABLE_DESKTOP_APP_LAUNCH_BUGFIX) - fun registerTransitions_usesCorrectFilter_flagDisabled() { + fun registerTransitions_usesCorrectFilter() { transitionManager.registerTransitions() val filterArgumentCaptor = argumentCaptor<TransitionFilter>() @@ -96,29 +92,5 @@ class DesktopAppLaunchTransitionManagerTest { assertThat(launchRequirement.mModes).isEqualTo(intArrayOf(TRANSIT_OPEN, TRANSIT_TO_FRONT)) assertThat(launchRequirement.mActivityType).isEqualTo(ACTIVITY_TYPE_STANDARD) assertThat(launchRequirement.mWindowingMode).isEqualTo(WINDOWING_MODE_FREEFORM) - assertThat(launchRequirement.mOrder).isEqualTo(CONTAINER_ORDER_TOP) - } - - @Test - @EnableFlags( - FLAG_ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX, - FLAG_ENABLE_DESKTOP_APP_LAUNCH_BUGFIX, - ) - fun registerTransitions_usesCorrectFilter_flagEnabled() { - transitionManager.registerTransitions() - val filterArgumentCaptor = argumentCaptor<TransitionFilter>() - - verify(systemUiProxy, times(1)) - .registerRemoteTransition(any(), filterArgumentCaptor.capture()) - - assertThat(filterArgumentCaptor.lastValue).isNotNull() - assertThat(filterArgumentCaptor.lastValue.mTypeSet) - .isEqualTo(intArrayOf(TRANSIT_OPEN, TRANSIT_TO_FRONT)) - assertThat(filterArgumentCaptor.lastValue.mRequirements).hasLength(1) - val launchRequirement = filterArgumentCaptor.lastValue.mRequirements!![0] - assertThat(launchRequirement.mModes).isEqualTo(intArrayOf(TRANSIT_OPEN, TRANSIT_TO_FRONT)) - assertThat(launchRequirement.mActivityType).isEqualTo(ACTIVITY_TYPE_STANDARD) - assertThat(launchRequirement.mWindowingMode).isEqualTo(WINDOWING_MODE_FREEFORM) - assertThat(launchRequirement.mOrder).isEqualTo(CONTAINER_ORDER_ANY) } } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/model/QuickstepModelDelegateTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/model/QuickstepModelDelegateTest.kt index a2b0338ab4..1c7af14667 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/model/QuickstepModelDelegateTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/model/QuickstepModelDelegateTest.kt @@ -19,16 +19,15 @@ import android.app.prediction.AppPredictor import android.app.prediction.AppTarget import android.app.prediction.AppTargetEvent import androidx.test.ext.junit.runners.AndroidJUnit4 -import com.android.launcher3.LauncherAppState -import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APPS_PREDICTION import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT_PREDICTION +import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_PREDICTION import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_WALLPAPERS import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_WIDGETS_PREDICTION -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.LauncherModelHelper +import org.junit.After import org.junit.Assert.assertNotSame import org.junit.Assert.assertSame import org.junit.Before -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.mockito.Mock @@ -36,50 +35,46 @@ import org.mockito.Mockito.never import org.mockito.Mockito.verify import org.mockito.Mockito.verifyNoMoreInteractions import org.mockito.MockitoAnnotations -import org.mockito.kotlin.mock /** Unit tests for [QuickstepModelDelegate]. */ @RunWith(AndroidJUnit4::class) class QuickstepModelDelegateTest { - @get:Rule val context = SandboxApplication().withModelDependency() - private lateinit var underTest: QuickstepModelDelegate + private lateinit var modelHelper: LauncherModelHelper @Mock private lateinit var target: AppTarget @Mock private lateinit var mockedAppTargetEvent: AppTargetEvent @Mock private lateinit var allAppsPredictor: AppPredictor @Mock private lateinit var hotseatPredictor: AppPredictor @Mock private lateinit var widgetRecommendationPredictor: AppPredictor - @Mock private lateinit var itemParserFactory: PredictedItemFactory.Factory @Before fun setUp() { MockitoAnnotations.initMocks(this) + modelHelper = LauncherModelHelper() underTest = QuickstepModelDelegate( - context, - context.appComponent.idp, - context.appComponent.userCache, - itemParserFactory, + modelHelper.sandboxContext, + modelHelper.sandboxContext.appComponent.idp, + modelHelper.sandboxContext.appComponent.packageManagerHelper, "", /* dbFileName */ ) - underTest.mAllPredictionAppsState.predictor = allAppsPredictor - underTest.mHotseatPredictionState.predictor = hotseatPredictor + underTest.mAllAppsState.predictor = allAppsPredictor + underTest.mHotseatState.predictor = hotseatPredictor underTest.mWidgetsRecommendationState.predictor = widgetRecommendationPredictor - underTest.mModel = LauncherAppState.getInstance(context).model - underTest.mDataModel = - BgDataModel( - WidgetsModel(context), - /* homeDataProvider */ { null }, - /* dumpManager */ mock(), - /* DaggerSingletonTracker */ mock(), - ) + underTest.mModel = modelHelper.model + underTest.mDataModel = BgDataModel(WidgetsModel(modelHelper.sandboxContext)) + } + + @After + fun tearDown() { + modelHelper.destroy() } @Test fun onAppTargetEvent_notifyTarget() { - underTest.onAppTargetEvent(mockedAppTargetEvent, CONTAINER_ALL_APPS_PREDICTION) + underTest.onAppTargetEvent(mockedAppTargetEvent, CONTAINER_PREDICTION) verify(allAppsPredictor).notifyAppTargetEvent(mockedAppTargetEvent) verifyNoMoreInteractions(hotseatPredictor) @@ -115,38 +110,38 @@ class QuickstepModelDelegateTest { @Test fun hotseatActionPin_recreateHotSeat() { - assertSame(underTest.mHotseatPredictionState.predictor, hotseatPredictor) + assertSame(underTest.mHotseatState.predictor, hotseatPredictor) val appTargetEvent = AppTargetEvent.Builder(target, AppTargetEvent.ACTION_PIN).build() underTest.markActive() underTest.onAppTargetEvent(appTargetEvent, CONTAINER_HOTSEAT_PREDICTION) verify(hotseatPredictor).destroy() - assertNotSame(underTest.mHotseatPredictionState.predictor, hotseatPredictor) + assertNotSame(underTest.mHotseatState.predictor, hotseatPredictor) } @Test fun hotseatActionUnpin_recreateHotSeat() { - assertSame(underTest.mHotseatPredictionState.predictor, hotseatPredictor) + assertSame(underTest.mHotseatState.predictor, hotseatPredictor) underTest.markActive() val appTargetEvent = AppTargetEvent.Builder(target, AppTargetEvent.ACTION_UNPIN).build() underTest.onAppTargetEvent(appTargetEvent, CONTAINER_HOTSEAT_PREDICTION) verify(hotseatPredictor).destroy() - assertNotSame(underTest.mHotseatPredictionState.predictor, hotseatPredictor) + assertNotSame(underTest.mHotseatState.predictor, hotseatPredictor) } @Test fun container_actionPin_notRecreateHotSeat() { - assertSame(underTest.mHotseatPredictionState.predictor, hotseatPredictor) + assertSame(underTest.mHotseatState.predictor, hotseatPredictor) val appTargetEvent = AppTargetEvent.Builder(target, AppTargetEvent.ACTION_UNPIN).build() underTest.markActive() - underTest.onAppTargetEvent(appTargetEvent, CONTAINER_ALL_APPS_PREDICTION) + underTest.onAppTargetEvent(appTargetEvent, CONTAINER_PREDICTION) verify(allAppsPredictor, never()).destroy() verify(hotseatPredictor, never()).destroy() - assertSame(underTest.mHotseatPredictionState.predictor, hotseatPredictor) + assertSame(underTest.mHotseatState.predictor, hotseatPredictor) } } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/model/data/TaskViewItemInfoTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/model/data/TaskViewItemInfoTest.kt index 61c0a1b54b..42adfec82c 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/model/data/TaskViewItemInfoTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/model/data/TaskViewItemInfoTest.kt @@ -30,13 +30,11 @@ import com.android.launcher3.pm.UserCache import com.android.launcher3.util.AllModulesForTest import com.android.launcher3.util.SandboxContext import com.android.launcher3.util.SplitConfigurationOptions -import com.android.launcher3.util.TestDispatcherProvider import com.android.launcher3.util.TransformingTouchDelegate import com.android.launcher3.util.UserIconInfo import com.android.quickstep.TaskOverlayFactory import com.android.quickstep.TaskOverlayFactory.TaskOverlay import com.android.quickstep.recents.di.RecentsDependencies -import com.android.quickstep.task.thumbnail.TaskContentView import com.android.quickstep.task.thumbnail.TaskThumbnailView import com.android.quickstep.views.RecentsView import com.android.quickstep.views.TaskContainer @@ -49,7 +47,6 @@ import com.android.systemui.shared.recents.model.Task.TaskKey import com.google.common.truth.Truth.assertThat import dagger.BindsInstance import dagger.Component -import kotlinx.coroutines.test.StandardTestDispatcher import org.junit.After import org.junit.Before import org.junit.Test @@ -67,7 +64,6 @@ class TaskViewItemInfoTest { private val overlayFactory = mock<TaskOverlayFactory>() private val userCache = mock<UserCache>() private val userInfo = mock<UserIconInfo>() - private val dispatcher = StandardTestDispatcher() @Before fun setUp() { @@ -80,7 +76,7 @@ class TaskViewItemInfoTest { context.initDaggerComponent( DaggerTaskViewItemInfoTest_TestComponent.builder().bindUserCache(userCache) ) - RecentsDependencies.maybeInitialize(context, TestDispatcherProvider(dispatcher)) + RecentsDependencies.maybeInitialize(context) } @After @@ -202,7 +198,6 @@ class TaskViewItemInfoTest { return TaskContainer( taskView, task, - mock<TaskContentView>(), if (enableRefactorTaskThumbnail()) mock<TaskThumbnailView>() else mock<TaskThumbnailViewDeprecated>(), mock<TaskViewIcon>(), diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarBaseTestCase.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarBaseTestCase.kt index bfd5d76923..52d288a723 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarBaseTestCase.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarBaseTestCase.kt @@ -60,7 +60,6 @@ abstract class TaskbarBaseTestCase { @Mock lateinit var optionalBubbleControllers: Optional<BubbleControllers> @Mock lateinit var taskbarDesktopModeController: TaskbarDesktopModeController @Mock lateinit var nudgeController: NudgeController - @Mock lateinit var nudgeViewController: NudgeViewController lateinit var taskbarControllers: TaskbarControllers @@ -104,7 +103,6 @@ abstract class TaskbarBaseTestCase { optionalBubbleControllers, taskbarDesktopModeController, nudgeController, - nudgeViewController ) } } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarHoverToolTipControllerTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarHoverToolTipControllerTest.kt index 529174a253..d2b9fcf2c5 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarHoverToolTipControllerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarHoverToolTipControllerTest.kt @@ -147,15 +147,6 @@ class TaskbarHoverToolTipControllerTest { assertThat(isHoverToolTipOpen).isFalse() } - @Test - fun onHover_emptyTitle_noTooltip() { - runOnMainSync { - iconView.text = "" - iconView.dispatchGenericMotionEvent(HOVER_ENTER) - } - assertThat(isHoverToolTipOpen).isFalse() - } - companion object { private val HOVER_EXIT = MotionEvent.obtain(0, 0, ACTION_HOVER_EXIT, 0f, 0f, 0) private val HOVER_ENTER = MotionEvent.obtain(0, 0, ACTION_HOVER_ENTER, 0f, 0f, 0) diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarNavButtonControllerTest.java b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarNavButtonControllerTest.java index d53f2b8519..a8f3500a72 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarNavButtonControllerTest.java +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarNavButtonControllerTest.java @@ -15,7 +15,7 @@ import static com.android.launcher3.taskbar.TaskbarNavButtonController.BUTTON_IM import static com.android.launcher3.taskbar.TaskbarNavButtonController.BUTTON_RECENTS; import static com.android.launcher3.taskbar.TaskbarNavButtonController.SCREEN_PIN_LONG_PRESS_THRESHOLD; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_PINNING; -import static com.android.window.flags2.Flags.FLAG_PREDICTIVE_BACK_THREE_BUTTON_NAV; +import static com.android.window.flags.Flags.FLAG_PREDICTIVE_BACK_THREE_BUTTON_NAV; import static com.google.common.truth.Truth.assertThat; @@ -29,7 +29,6 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; -import android.graphics.Rect; import android.os.Handler; import android.platform.test.annotations.RequiresFlagsEnabled; import android.platform.test.flag.junit.CheckFlagsRule; @@ -88,12 +87,12 @@ public class TaskbarNavButtonControllerTest { private int mOverviewToggleCount; private final TaskbarNavButtonCallbacks mCallbacks = new TaskbarNavButtonCallbacks() { @Override - public void onNavigateHome(int displayId) { + public void onNavigateHome() { mHomePressCount++; } @Override - public void onToggleOverview(int displayId) { + public void onToggleOverview() { mOverviewToggleCount++; } }; @@ -111,7 +110,6 @@ public class TaskbarNavButtonControllerTest { when(mockTaskbarControllers.getTaskbarActivityContext()) .thenReturn(mockTaskbarActivityContext); doReturn(mockStatsLogManager).when(mockTaskbarActivityContext).getStatsLogManager(); - when(mockTaskbarActivityContext.getDisplayId()).thenReturn(DISPLAY_ID); mNavButtonController = new TaskbarNavButtonController( mockService, mCallbacks, @@ -345,7 +343,6 @@ public class TaskbarNavButtonControllerTest { @Test @RequiresFlagsEnabled(FLAG_PREDICTIVE_BACK_THREE_BUTTON_NAV) public void testPredictiveBackInvoked() { - mNavButtonController.init(mockTaskbarControllers); ArgumentCaptor<KeyEvent> keyEventCaptor = ArgumentCaptor.forClass(KeyEvent.class); mNavButtonController.sendBackKeyEvent(KeyEvent.ACTION_DOWN, false); mNavButtonController.sendBackKeyEvent(KeyEvent.ACTION_UP, false); @@ -357,7 +354,6 @@ public class TaskbarNavButtonControllerTest { @Test @RequiresFlagsEnabled(FLAG_PREDICTIVE_BACK_THREE_BUTTON_NAV) public void testPredictiveBackCancelled() { - mNavButtonController.init(mockTaskbarControllers); ArgumentCaptor<KeyEvent> keyEventCaptor = ArgumentCaptor.forClass(KeyEvent.class); mNavButtonController.sendBackKeyEvent(KeyEvent.ACTION_DOWN, false); mNavButtonController.sendBackKeyEvent(KeyEvent.ACTION_UP, true); @@ -369,7 +365,6 @@ public class TaskbarNavButtonControllerTest { @Test @RequiresFlagsEnabled(FLAG_PREDICTIVE_BACK_THREE_BUTTON_NAV) public void testButtonsDisabledWhileBackPressed() { - mNavButtonController.init(mockTaskbarControllers); mNavButtonController.sendBackKeyEvent(KeyEvent.ACTION_DOWN, false); mNavButtonController.onButtonClick(BUTTON_HOME, mockView); mNavButtonController.onButtonClick(BUTTON_RECENTS, mockView); @@ -382,14 +377,6 @@ public class TaskbarNavButtonControllerTest { verify(mockSystemUiProxy, never()).onImeSwitcherPressed(); } - @Test - public void testOnRecentsButtonLayoutChanged() { - Rect rect = new Rect(10, 20, 30, 40); - mNavButtonController.init(mockTaskbarControllers); - mNavButtonController.onRecentsButtonLayoutChanged(rect); - verify(mockSystemUiProxy).notifyRecentsButtonPositionChanged(eq(rect)); - } - private void verifyKeyEvent(KeyEvent keyEvent, int action, boolean isCancelled) { assertEquals(isCancelled, keyEvent.isCanceled()); assertEquals(action, KeyEvent.ACTION_DOWN, keyEvent.getAction()); diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarOverflowTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarOverflowTest.kt index a56da92225..c589415196 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarOverflowTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarOverflowTest.kt @@ -17,31 +17,24 @@ package com.android.launcher3.taskbar import android.animation.AnimatorTestRule -import android.app.WindowConfiguration import android.content.ComponentName import android.content.Intent import android.os.Process import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.SetFlagsRule +import android.view.Display.DEFAULT_DISPLAY import androidx.test.core.app.ApplicationProvider -import com.android.launcher3.BubbleTextView import com.android.launcher3.Flags.FLAG_ENABLE_MULTI_INSTANCE_MENU_TASKBAR +import com.android.launcher3.Flags.FLAG_TASKBAR_OVERFLOW import com.android.launcher3.R import com.android.launcher3.dagger.LauncherAppSingleton -import com.android.launcher3.dagger.LauncherComponentProvider.appComponent -import com.android.launcher3.model.BgDataModel import com.android.launcher3.model.data.ItemInfo -import com.android.launcher3.model.data.TaskItemInfo -import com.android.launcher3.model.data.WorkspaceData -import com.android.launcher3.model.data.WorkspaceItemInfo -import com.android.launcher3.popup.SystemShortcut -import com.android.launcher3.statehandlers.DesktopVisibilityController import com.android.launcher3.taskbar.TaskbarControllerTestUtil.runOnMainSync import com.android.launcher3.taskbar.TaskbarViewTestUtil.createHotseatItems import com.android.launcher3.taskbar.bubbles.BubbleBarViewController import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController -import com.android.launcher3.taskbar.rules.AllTaskbarSandboxModules +import com.android.launcher3.taskbar.rules.DisplayControllerModule import com.android.launcher3.taskbar.rules.MockedRecentsModelHelper import com.android.launcher3.taskbar.rules.MockedRecentsModelTestRule import com.android.launcher3.taskbar.rules.SandboxParams @@ -53,27 +46,22 @@ import com.android.launcher3.taskbar.rules.TaskbarSandboxComponent import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule.InjectController import com.android.launcher3.taskbar.rules.TaskbarWindowSandboxContext +import com.android.launcher3.util.AllModulesForTest +import com.android.launcher3.util.FakePrefsModule import com.android.launcher3.util.LauncherMultivalentJUnit import com.android.launcher3.util.LauncherMultivalentJUnit.EmulatedDevices -import com.android.launcher3.util.Preconditions.assertNotNull import com.android.launcher3.util.TestUtil.getOnUiThread import com.android.quickstep.RecentsModel import com.android.quickstep.SystemUiProxy import com.android.quickstep.util.DesktopTask -import com.android.quickstep.util.GroupTask -import com.android.quickstep.util.SingleTask -import com.android.quickstep.util.SingleTask.Companion.createTaskItemInfo import com.android.systemui.shared.recents.model.Task -import com.android.window.flags2.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE -import com.android.window.flags2.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_TASKBAR_RUNNING_APPS -import com.android.window.flags2.Flags.FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU -import com.android.window.flags2.Flags.FLAG_ENABLE_TASKBAR_OVERFLOW +import com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE +import com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_TASKBAR_RUNNING_APPS import com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_BAR import com.android.wm.shell.desktopmode.IDesktopTaskListener import com.google.common.truth.Truth.assertThat import dagger.BindsInstance import dagger.Component -import java.util.function.Predicate import org.junit.Before import org.junit.Rule import org.junit.Test @@ -86,10 +74,10 @@ import org.mockito.kotlin.whenever @RunWith(LauncherMultivalentJUnit::class) @EmulatedDevices(["pixelTablet2023"]) @EnableFlags( + FLAG_TASKBAR_OVERFLOW, FLAG_ENABLE_DESKTOP_WINDOWING_TASKBAR_RUNNING_APPS, FLAG_ENABLE_DESKTOP_WINDOWING_MODE, FLAG_ENABLE_BUBBLE_BAR, - FLAG_ENABLE_TASKBAR_OVERFLOW, ) @DisableFlags(FLAG_ENABLE_MULTI_INSTANCE_MENU_TASKBAR) class TaskbarOverflowTest { @@ -128,14 +116,7 @@ class TaskbarOverflowTest { @InjectController lateinit var bubbleStashController: BubbleStashController @InjectController lateinit var keyboardQuickSwitchController: KeyboardQuickSwitchController - private val desktopVisibilityController: DesktopVisibilityController - get() = DesktopVisibilityController.INSTANCE[context] - private var desktopTaskListener: IDesktopTaskListener? = null - private val modelCallback = ModelCallbacks() - - private val taskbarContext: TaskbarActivityContext - get() = taskbarUnitTestRule.activityContext private var currentControllerInitCallback: () -> Unit = {} set(value) { @@ -148,10 +129,7 @@ class TaskbarOverflowTest { if (!recentAppsController.canShowRunningApps) { recentAppsController.onDestroy() recentAppsController.canShowRunningApps = true - recentAppsController.init( - taskbarUnitTestRule.activityContext.controllers, - emptyList(), - ) + recentAppsController.init(taskbarUnitTestRule.activityContext.controllers) } currentControllerInitCallback.invoke() @@ -160,7 +138,6 @@ class TaskbarOverflowTest { @Before fun ensureRunningAppsShowing() { - whenever(desktopVisibilityController.isInDesktopMode(context.displayId)).thenReturn(true) runOnMainSync { recentsModel.resolvePendingTaskRequests() } } @@ -369,8 +346,6 @@ class TaskbarOverflowTest { createDesktopTask(createdTasks) assertThat(taskbarOverflowIconIndex).isEqualTo(initialIconCount) - assertThat(getOverflowIconTooltipText()).isEqualTo("Other recent apps") - tapOverflowIcon() // Keyboard quick switch view is shown only after list of recent task is asynchronously // retrieved from the recents model. @@ -378,12 +353,10 @@ class TaskbarOverflowTest { assertThat(getOnUiThread { keyboardQuickSwitchController.isShownFromTaskbar }).isTrue() assertThat(getOnUiThread { keyboardQuickSwitchController.shownTaskIds() }) - .containsExactlyElementsIn(0..targetOverflowSize) - assertThat(getOverflowIconTooltipText()).isNull() + .containsExactlyElementsIn(0..<createdTasks) tapOverflowIcon() assertThat(keyboardQuickSwitchController.isShown).isFalse() - assertThat(getOverflowIconTooltipText()).isEqualTo("Other recent apps") } @Test @@ -452,167 +425,7 @@ class TaskbarOverflowTest { assertThat(getOnUiThread { keyboardQuickSwitchController.isShownFromTaskbar }).isTrue() assertThat(getOnUiThread { keyboardQuickSwitchController.shownTaskIds() }) - .containsExactlyElementsIn(listOf(0) + (2..targetOverflowSize + 1).toList()) - } - - @Test - @TaskbarMode(PINNED) - fun testFullscreenTasksNotShownInKQS() { - val maxNumIconViews = maxNumberOfTaskbarIcons - // Assume there are at least all apps and divider icon, as they would appear once running - // apps are added, even if not present initially. - val initialIconCount = currentNumberOfTaskbarIcons.coerceAtLeast(2) - val hotseatItems = createHotseatItems(1) - - val targetOverflowSize = 5 - val createdTasks = maxNumIconViews - initialIconCount + targetOverflowSize - createFullscreenAndDesktopTasksFromPackages( - listOf("fakeFullscreen"), - listOf("fake") + - listOf(hotseatItems[0]?.targetPackage ?: "") + - List(createdTasks - 2) { "fake" }, - ) - - runOnMainSync { - val taskbarView: TaskbarView = - taskbarUnitTestRule.activityContext.dragLayer.findViewById(R.id.taskbar_view) - taskbarView.updateItems( - recentAppsController.updateHotseatItemInfos(hotseatItems as Array<ItemInfo?>), - recentAppsController.shownTasks, - ) - } - - tapOverflowIcon() - // Keyboard quick switch view is shown only after list of recent task is asynchronously - // retrieved from the recents model. - runOnMainSync { recentsModel.resolvePendingTaskRequests() } - - assertThat(getOnUiThread { keyboardQuickSwitchController.isShownFromTaskbar }).isTrue() - // Taskbar is in overflow by `targetOverflowSize`, so overflow UI should have - // `targetOverflowSize + 1` items, to account for a spot in taskbar taken by the overflow - // icon. Task IDs for running desktop apps start at 1 - 0 is used for fullscreen task. - assertThat(getOnUiThread { keyboardQuickSwitchController.shownTaskIds() }) - .containsExactlyElementsIn(listOf(1) + (3..targetOverflowSize + 2).toList()) - } - - @Test - @TaskbarMode(PINNED) - @EnableFlags(FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU) - fun pinToTaskbarShortcut_unpinPinnedItem() { - // Create two tasks and two pinned items. - createDesktopTask(2) - val hotseatItems = createHotseatItems(2) - var shortcut: SystemShortcut<*>? = null - var hotseatIcon: BubbleTextView? = null - runOnMainSync { - val taskbarView = setUpTaskbarAndModelCallback(hotseatItems) - hotseatIcon = - taskbarView.iconViews.filterIsInstance<BubbleTextView>().first { - it.tag is WorkspaceItemInfo - } - shortcut = - taskbarContext.controllers.taskbarPopupController.createPinShortcut( - taskbarContext, - hotseatIcon!!.tag as ItemInfo, - hotseatIcon, - ) as SystemShortcut<*> - } - assertNotNull(shortcut) - runOnMainSync { shortcut?.onClick(hotseatIcon) } - // After unpinning the first item, only the second app is left. - assertThat(modelCallback.hotseatItems.map { info -> info.title }) - .isEqualTo(listOf("Test App 1")) - // The unpinned app doesn't have a task so the shown tasks won't change. - assertThat(recentAppsController.shownTasks.map { it.tasks[0].key.id }) - .isEqualTo(listOf(0, 1)) - } - - @Test - @TaskbarMode(PINNED) - @EnableFlags(FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU) - fun pinToTaskbarShortcut_unpinPinnedItemWithTask() { - // Create two hotseat items with a task for both of them respectively. - var hotseatItems = - createHotseatItems(2).mapIndexed { idx, item -> TaskItemInfo(idx, item) }.toTypedArray() - createDesktopTaskWithTasksFromPackages(hotseatItems.mapNotNull { it.targetPackage }) - var shortcut: SystemShortcut<*>? = null - var hotseatIcon: BubbleTextView? = null - runOnMainSync { - val taskbarView = setUpTaskbarAndModelCallback(hotseatItems.map { it }.toTypedArray()) - hotseatIcon = - taskbarView.iconViews.filterIsInstance<BubbleTextView>().first { - it.tag is WorkspaceItemInfo - } - shortcut = - taskbarContext.controllers.taskbarPopupController.createPinShortcut( - taskbarContext, - hotseatIcon!!.tag as ItemInfo, - hotseatIcon, - ) as SystemShortcut<*> - } - // Before unpinning the app, both of the apps should be pinned and no shown task available. - assertThat(modelCallback.hotseatItems.map { info -> info.title }) - .isEqualTo(listOf("Test App 0", "Test App 1")) - assertThat(recentAppsController.shownTasks.map { it.tasks[0].key.id }) - .isEqualTo(emptyList<Int>()) - assertNotNull(shortcut) - runOnMainSync { shortcut?.onClick(hotseatIcon) } - // After unpinning the app, app 0 is removed and its task is shown as a recent task. - assertThat(modelCallback.hotseatItems.map { info -> info.title }) - .isEqualTo(listOf("Test App 1")) - assertThat(recentAppsController.shownTasks.map { it.tasks[0].key.id }).isEqualTo(listOf(0)) - } - - @Test - @TaskbarMode(PINNED) - @EnableFlags(FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU) - fun pinToTaskbarShortcut_pinRecentTask() { - // Create two tasks and two pinned items. - createDesktopTask(2) - val hotseatItems = createHotseatItems(2) - - var shortcut: SystemShortcut<*>? = null - var recentTaskIcon: BubbleTextView? = null - runOnMainSync { - val taskbarView = setUpTaskbarAndModelCallback(hotseatItems) - // Get the first recent task icon - recentTaskIcon = - taskbarView.iconViews.filterIsInstance<BubbleTextView>().first { - it.tag is GroupTask - } - val recentTaskInfo = - createTaskItemInfo( - recentTaskIcon!!.tag as SingleTask, - WorkspaceItemInfo().apply { - title = "Test App 2" - intent = Intent().apply { `package` = "fake" } - }, - ) - shortcut = - taskbarContext.controllers.taskbarPopupController.createPinShortcut( - taskbarContext, - recentTaskInfo, - recentTaskIcon, - ) as SystemShortcut<*> - } - assertNotNull(shortcut) - runOnMainSync { shortcut?.onClick(recentTaskIcon) } - - // After pinning the recent task, it should be included in the hotseat items. - assertThat(modelCallback.hotseatItems.map { info -> info.title }) - .isEqualTo(listOf("Test App 0", "Test App 1", "Test App 2")) - // As the task is pinned, the shown tasks should remove it from the list - assertThat(recentAppsController.shownTasks.map { it.tasks[0].key.id }).isEqualTo(listOf(1)) - } - - private fun setUpTaskbarAndModelCallback(hotseatItems: Array<WorkspaceItemInfo>): TaskbarView { - val taskbarView: TaskbarView = - taskbarUnitTestRule.activityContext.dragLayer.findViewById(R.id.taskbar_view) - taskbarView.updateItems(hotseatItems, recentAppsController.shownTasks) - modelCallback.recentAppsController = recentAppsController - context.baseContext.appComponent.launcherAppState.model.addCallbacks(modelCallback) - modelCallback.bindItemsAdded(hotseatItems.toList()) - return taskbarView + .containsExactlyElementsIn(listOf(0) + (2..<createdTasks).toList()) } private fun createDesktopTask(tasksToAdd: Int) { @@ -620,36 +433,12 @@ class TaskbarOverflowTest { } private fun createDesktopTaskWithTasksFromPackages(packages: List<String>) { - createFullscreenAndDesktopTasksFromPackages(emptyList(), packages) - } - - private fun createFullscreenAndDesktopTasksFromPackages( - fullscreenPackages: List<String>, - desktopPackages: List<String>, - ) { - val defaultDisplayId = context.displayId - val tasks: List<GroupTask> = - fullscreenPackages.mapIndexed({ index, p -> - SingleTask( - Task( - Task.TaskKey( - index, - WindowConfiguration.WINDOWING_MODE_FULLSCREEN, - Intent().apply { `package` = p }, - ComponentName(p, ""), - Process.myUserHandle().identifier, - 2000, - ) - ) - ) - }) - - val desktopTasks = - desktopPackages.mapIndexed({ index, p -> + val tasks = + packages.mapIndexed({ index, p -> Task( Task.TaskKey( - index + fullscreenPackages.size, - WindowConfiguration.WINDOWING_MODE_FREEFORM, + index, + 0, Intent().apply { `package` = p }, ComponentName(p, ""), Process.myUserHandle().identifier, @@ -658,11 +447,12 @@ class TaskbarOverflowTest { ) }) - recentsModel.updateRecentTasks( - tasks + listOf(DesktopTask(deskId = 0, defaultDisplayId, desktopTasks)) - ) - for (task in 1..desktopTasks.size) { - desktopTaskListener?.onTasksVisibilityChanged(defaultDisplayId, task) + recentsModel.updateRecentTasks(listOf(DesktopTask(deskId = 0, DEFAULT_DISPLAY, tasks))) + for (task in 1..tasks.size) { + desktopTaskListener?.onTasksVisibilityChanged( + context.virtualDisplay.display.displayId, + task, + ) } runOnMainSync { recentsModel.resolvePendingTaskRequests() } } @@ -692,8 +482,7 @@ class TaskbarOverflowTest { return getOnUiThread { val iconLayoutBounds = taskbarViewController.transientTaskbarIconLayoutBoundsInParent - val availableWidth = - taskbarUnitTestRule.activityContext.deviceProfile.deviceProperties.widthPx + val availableWidth = taskbarUnitTestRule.activityContext.deviceProfile.widthPx iconLayoutBounds.left - (availableWidth - iconLayoutBounds.right) < 2 } } @@ -701,7 +490,7 @@ class TaskbarOverflowTest { private val taskbarEndMargin: Int get() { return getOnUiThread { - taskbarUnitTestRule.activityContext.deviceProfile.deviceProperties.widthPx - + taskbarUnitTestRule.activityContext.deviceProfile.widthPx - taskbarViewController.transientTaskbarIconLayoutBoundsInParent.right } } @@ -728,14 +517,6 @@ class TaskbarOverflowTest { } } - private fun getOverflowIconTooltipText(): String? { - return getOnUiThread { - val overflowIcon = - taskbarViewController.iconViews.firstOrNull { it is TaskbarOverflowView } - (overflowIcon as? TaskbarOverflowView)?.getTextForTooltipPopup() - } - } - /** * Adds enough running apps for taskbar to enter overflow of `targetOverflowSize`, and verifies * * max number of icons in the taskbar remains unchanged @@ -763,42 +544,13 @@ class TaskbarOverflowTest { } return maxNumIconViews } - - private class ModelCallbacks : BgDataModel.Callbacks { - var hotseatItems = mutableListOf<WorkspaceItemInfo>() - var recentAppsController: TaskbarRecentAppsController? = null - - override fun bindCompleteModel(itemIdMap: WorkspaceData, isBindingSync: Boolean) = - bindItemsAdded(itemIdMap.toList()) - - override fun bindItemsAdded(items: List<ItemInfo>) { - runOnMainSync { - items - .filter { item -> - item is WorkspaceItemInfo && - !hotseatItems.any { it.targetPackage == item.targetPackage } - } - .forEach { item -> hotseatItems.add(item as WorkspaceItemInfo) } - recentAppsController?.updateHotseatItemInfos(hotseatItems.toTypedArray()) - } - } - - override fun bindWorkspaceComponentsRemoved(matcher: Predicate<ItemInfo?>) { - runOnMainSync { - for (i in hotseatItems.size - 1 downTo 0) { - if (matcher.test(hotseatItems[i])) { - hotseatItems.removeAt(i) - } - } - recentAppsController?.updateHotseatItemInfos(hotseatItems.toTypedArray()) - } - } - } } /** TaskbarOverflowComponent used to bind the RecentsModel. */ @LauncherAppSingleton -@Component(modules = [AllTaskbarSandboxModules::class]) +@Component( + modules = [AllModulesForTest::class, FakePrefsModule::class, DisplayControllerModule::class] +) interface TaskbarOverflowComponent : TaskbarSandboxComponent { @Component.Builder diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarPopupControllerTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarPopupControllerTest.kt index 6809f7f2f8..6bb3205007 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarPopupControllerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarPopupControllerTest.kt @@ -16,44 +16,32 @@ package com.android.launcher3.taskbar -import android.content.ComponentName -import android.content.Intent import android.platform.test.annotations.DisableFlags -import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.SetFlagsRule -import android.util.SparseArray import com.android.launcher3.AbstractFloatingView import com.android.launcher3.BubbleTextView import com.android.launcher3.Flags.FLAG_ENABLE_MULTI_INSTANCE_MENU_TASKBAR -import com.android.launcher3.LauncherSettings +import com.android.launcher3.Flags.FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU import com.android.launcher3.R -import com.android.launcher3.model.data.AppInfo -import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.model.data.WorkspaceItemInfo -import com.android.launcher3.statehandlers.DesktopVisibilityController import com.android.launcher3.taskbar.TaskbarControllerTestUtil.runOnMainSync import com.android.launcher3.taskbar.TaskbarViewTestUtil.createHotseatWorkspaceItem import com.android.launcher3.taskbar.TaskbarViewTestUtil.createRecents -import com.android.launcher3.taskbar.TaskbarViewTestUtil.createTestWorkspaceItem import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule.InjectController import com.android.launcher3.taskbar.rules.TaskbarWindowSandboxContext import com.android.launcher3.util.LauncherMultivalentJUnit import com.android.launcher3.util.LauncherMultivalentJUnit.EmulatedDevices import com.android.quickstep.util.GroupTask -import com.android.window.flags2.Flags.FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU import com.google.common.truth.Truth.assertThat -import org.junit.Assert import org.junit.Before import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.Mockito -import org.mockito.kotlin.whenever @RunWith(LauncherMultivalentJUnit::class) @EmulatedDevices(["pixelFoldable2023", "pixelTablet2023"]) -@DisableFlags(FLAG_ENABLE_MULTI_INSTANCE_MENU_TASKBAR) +@DisableFlags(FLAG_ENABLE_MULTI_INSTANCE_MENU_TASKBAR, FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU) class TaskbarPopupControllerTest { @get:Rule(order = 0) val setFlagsRule = SetFlagsRule() @@ -66,9 +54,6 @@ class TaskbarPopupControllerTest { private val taskbarContext: TaskbarActivityContext get() = taskbarUnitTestRule.activityContext - private val desktopVisibilityController: DesktopVisibilityController - get() = DesktopVisibilityController.INSTANCE[context] - private lateinit var taskbarView: TaskbarView private lateinit var hotseatIcon: BubbleTextView private lateinit var recentTaskIcon: BubbleTextView @@ -79,12 +64,6 @@ class TaskbarPopupControllerTest { runOnMainSync { taskbarView = taskbarContext.dragLayer.findViewById(R.id.taskbar_view) } val hotseatItems = arrayOf(createHotseatWorkspaceItem()) - popupController.setApps( - hotseatItems - .map { item -> AppInfo(item.targetComponent, item.title, item.user, item.intent) } - .toTypedArray() - ) - popupController.setHotseatInfosList(SparseArray()) val recentItems = createRecents(2) runOnMainSync { taskbarView.updateItems(hotseatItems, recentItems) @@ -107,52 +86,12 @@ class TaskbarPopupControllerTest { } @Test - @EnableFlags(FLAG_ENABLE_PINNING_APP_WITH_CONTEXT_MENU) fun showForIcon_recentTask() { - whenever(desktopVisibilityController.isInDesktopMode(context.displayId)).thenReturn(true) assertThat(hasPopupMenu()).isFalse() runOnMainSync { popupController.showForIcon(recentTaskIcon) } assertThat(hasPopupMenu()).isTrue() } - @Test - fun createPinShortcut_itemAlreadyPinned_returnsUnpinShortcut() { - val hotseatItems = SparseArray<ItemInfo>() - val appUser = android.os.Process.myUserHandle() - val appAIntent = Intent().setComponent(ComponentName("com.example.app", "AppAActivity")) - - val itemFromAllApps = - createTestWorkspaceItem( - 0, - "AppA", - appAIntent, - appUser, - LauncherSettings.Favorites.CONTAINER_ALL_APPS, - ) - - val pinnedItemInHotseat = - createTestWorkspaceItem( - 1, - "AppA", - appAIntent, - appUser, - LauncherSettings.Favorites.CONTAINER_HOTSEAT, - ) - - hotseatItems.put(0, pinnedItemInHotseat) - popupController.setHotseatInfosList(hotseatItems) - val allAppsAppIcon = Mockito.mock(BubbleTextView::class.java) - - val shortcut = - popupController.createPinShortcut(taskbarContext, itemFromAllApps, allAppsAppIcon) - Assert.assertNotNull("Shortcut should not be null", shortcut) - Assert.assertTrue( - "Shortcut should be PinToTaskbarShortcut", - shortcut is PinToTaskbarShortcut<*>, - ) - Assert.assertFalse((shortcut as PinToTaskbarShortcut<*>).mIsPin) - } - private fun hasPopupMenu(): Boolean { return AbstractFloatingView.hasOpenView( taskbarContext, diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarRecentAppsControllerTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarRecentAppsControllerTest.kt index 505c415213..334d8ab061 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarRecentAppsControllerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarRecentAppsControllerTest.kt @@ -24,9 +24,7 @@ import android.content.res.Resources import android.graphics.Rect import android.os.Process import android.os.UserHandle -import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags -import android.platform.test.flag.junit.SetFlagsRule import android.view.Display.DEFAULT_DISPLAY import androidx.test.annotation.UiThreadTest import com.android.internal.R @@ -40,6 +38,7 @@ import com.android.launcher3.model.data.TaskItemInfo import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.taskbar.TaskbarRecentAppsController.TaskState import com.android.launcher3.util.LauncherMultivalentJUnit +import com.android.launcher3.util.SplitConfigurationOptions import com.android.quickstep.RecentsModel import com.android.quickstep.RecentsModel.RecentTasksChangedListener import com.android.quickstep.TaskIconCache @@ -48,7 +47,6 @@ import com.android.quickstep.util.GroupTask import com.android.quickstep.util.SingleTask import com.android.quickstep.util.SplitTask import com.android.systemui.shared.recents.model.Task -import com.android.wm.shell.shared.split.SplitBounds import com.android.wm.shell.shared.split.SplitScreenConstants import com.google.common.truth.Truth.assertThat import java.util.function.Consumer @@ -62,7 +60,6 @@ import org.mockito.ArgumentCaptor import org.mockito.Mock import org.mockito.junit.MockitoJUnit import org.mockito.kotlin.any -import org.mockito.kotlin.argumentCaptor import org.mockito.kotlin.doAnswer import org.mockito.kotlin.never import org.mockito.kotlin.times @@ -75,7 +72,6 @@ import org.mockito.kotlin.whenever class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { @get:Rule val mockitoRule = MockitoJUnit.rule() - @get:Rule val setFlagsRule = SetFlagsRule() @get:Rule val disableControllerForCertainTestsWatcher = object : TestWatcher() { @@ -115,25 +111,14 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { whenever(mockResources.getBoolean(R.bool.config_isDesktopModeSupported)).thenReturn(true) whenever(mockRecentsModel.iconCache).thenReturn(mockIconCache) - whenever(mockRecentsModel.unregisterRecentTasksChangedListener(any())).then { + whenever(mockRecentsModel.unregisterRecentTasksChangedListener()).then { recentTasksChangedListener = null it } - whenever(taskbarDesktopModeController.isLauncherAnimationRunning).thenReturn(false) recentAppsController = TaskbarRecentAppsController(mockContext, mockRecentsModel) recentAppsController.canShowRunningApps = canShowRunningAndRecentAppsAtInit recentAppsController.canShowRecentApps = canShowRunningAndRecentAppsAtInit - - // To ensure the initial getTasks() call is not seen as "loading" for the rest of the test, - // execute its callback. - doAnswer { - val callback: Consumer<ArrayList<GroupTask>> = it.getArgument(1) - callback.accept(arrayListOf()) - taskListChangeId - } - .whenever(mockRecentsModel) - .getTasks(any(), any<Consumer<List<GroupTask>>>()) - recentAppsController.init(taskbarControllers, emptyList()) + recentAppsController.init(taskbarControllers) taskbarControllers.onPostInit() recentTasksChangedListener = @@ -163,13 +148,13 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { runningTasks = listOf(createTask(1, RUNNING_APP_PACKAGE_1)), recentTaskPackages = listOf(RECENT_PACKAGE_1, RECENT_PACKAGE_2), ) - verify(mockRecentsModel, never()).getTasks(any(), any<Consumer<List<GroupTask>>>()) + verify(mockRecentsModel, never()).getTasks(any<Consumer<List<GroupTask>>>()) } @Test fun canShowRunningAndRecentAppsIsFalseAfterInit_getTasksOnlyCalledInInit() { // getTasks() should have been called once from init(). - verify(mockRecentsModel, times(1)).getTasks(any(), any<Consumer<List<GroupTask>>>()) + verify(mockRecentsModel, times(1)).getTasks(any<Consumer<List<GroupTask>>>(), any()) recentAppsController.canShowRunningApps = false recentAppsController.canShowRecentApps = false prepareHotseatAndRunningAndRecentApps( @@ -178,83 +163,7 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { recentTaskPackages = listOf(RECENT_PACKAGE_1, RECENT_PACKAGE_2), ) // Verify that getTasks() was not called again after the init(). - verify(mockRecentsModel, times(1)).getTasks(any(), any<Consumer<List<GroupTask>>>()) - } - - @Test - @EnableFlags(com.android.window.flags2.Flags.FLAG_ENABLE_TASKBAR_RECENT_TASKS_THROTTLE_BUGFIX) - fun recentTasksChanged_duringGetTasksLoading_dontCallGetTasks() { - // getTasks() should have been called once from init(). - verify(mockRecentsModel, times(1)).getTasks(any(), any<Consumer<List<GroupTask>>>()) - // Override the mock answer for getTasks() so it doesn't call the callback immediately. - doAnswer { taskListChangeId } - .whenever(mockRecentsModel) - .getTasks(any(), any<Consumer<List<GroupTask>>>()) - recentTasksChangedListener?.onRecentTasksChanged() - // By not invoking the callback passed to getTasks() we here emulate getTasks() loading. - - recentTasksChangedListener?.onRecentTasksChanged() - - // getTasks() is only called two times overall (init + once more). - verify(mockRecentsModel, times(2)).getTasks(any(), any<Consumer<List<GroupTask>>>()) - } - - @Test - @EnableFlags(com.android.window.flags2.Flags.FLAG_ENABLE_TASKBAR_RECENT_TASKS_THROTTLE_BUGFIX) - fun recentTasksChanged_duringGetTasksLoading_getTasksCalledWhenLoadingDone() { - val callbackCaptor = argumentCaptor<Consumer<List<GroupTask>>>() - // getTasks() should have been called once from init(). - verify(mockRecentsModel, times(1)).getTasks(any(), callbackCaptor.capture()) - // Override the mock answer for getTasks() so it doesn't call the callback immediately. - doAnswer { taskListChangeId } - .whenever(mockRecentsModel) - .getTasks(any(), any<Consumer<List<GroupTask>>>()) - recentTasksChangedListener?.onRecentTasksChanged() - // By not invoking the callback passed to getTasks() we here emulate getTasks() loading. - - recentTasksChangedListener?.onRecentTasksChanged() - callbackCaptor.lastValue.accept(emptyList()) - - // getTasks() is called again now that the first getTasks() call finished. - verify(mockRecentsModel, times(3)).getTasks(any(), any<Consumer<List<GroupTask>>>()) - } - - @Test - @DisableFlags(com.android.window.flags2.Flags.FLAG_ENABLE_TASKBAR_RECENT_TASKS_THROTTLE_BUGFIX) - fun recentTasksChanged_duringGetTasksLoading_flagDisabled_callGetTasks() { - // getTasks() should have been called once from init(). - verify(mockRecentsModel, times(1)).getTasks(any(), any<Consumer<List<GroupTask>>>()) - // Override the mock answer for getTasks() so it doesn't call the callback immediately. - doAnswer { taskListChangeId } - .whenever(mockRecentsModel) - .getTasks(any(), any<Consumer<List<GroupTask>>>()) - recentTasksChangedListener?.onRecentTasksChanged() - // By not invoking the callback passed to getTasks() we here emulate getTasks() loading. - - recentTasksChangedListener?.onRecentTasksChanged() - - // getTasks() is called once per onRecentTasksChanged() invocation (and once at init) - verify(mockRecentsModel, times(3)).getTasks(any(), any<Consumer<List<GroupTask>>>()) - } - - @Test - @DisableFlags(com.android.window.flags2.Flags.FLAG_ENABLE_TASKBAR_RECENT_TASKS_THROTTLE_BUGFIX) - fun recentTasksChanged_duringGetTasksLoading_flagDisabled_getTasksNotCalledWhenLoadingDone() { - val callbackCaptor = argumentCaptor<Consumer<List<GroupTask>>>() - // getTasks() should have been called once from init(). - verify(mockRecentsModel, times(1)).getTasks(any(), callbackCaptor.capture()) - // Override the mock answer for getTasks() so it doesn't call the callback immediately. - doAnswer { taskListChangeId } - .whenever(mockRecentsModel) - .getTasks(any(), any<Consumer<List<GroupTask>>>()) - recentTasksChangedListener?.onRecentTasksChanged() - recentTasksChangedListener?.onRecentTasksChanged() - verify(mockRecentsModel, times(3)).getTasks(any(), any<Consumer<List<GroupTask>>>()) - - callbackCaptor.lastValue.accept(emptyList()) - - // getTasks() is called once per onRecentTasksChanged() invocation (and once at init) - verify(mockRecentsModel, times(3)).getTasks(any(), any<Consumer<List<GroupTask>>>()) + verify(mockRecentsModel, times(1)).getTasks(any<Consumer<List<GroupTask>>>(), any()) } @Test @@ -281,11 +190,7 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { @Test fun getDesktopItemState_matchingVisibleTask_returnsVisible() { setInDesktopMode(true) - val visibleTask = - PerDisplayRunningApps( - listOf(createTask(id = 1, "visiblePackage", isVisible = true)), - DEFAULT_DISPLAY, - ) + val visibleTask = createTask(id = 1, "visiblePackage", isVisible = true) updateRecentTasks(runningTasks = listOf(visibleTask), recentTaskPackages = emptyList()) val taskState = recentAppsController.getDesktopItemState(createItemInfo("visiblePackage")) @@ -293,37 +198,10 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { assertThat(taskState).isEqualTo(TaskState(RunningAppState.RUNNING, taskId = 1)) } - @Test - fun getDesktopItemState_matchingVisibleTaskOnSecondaryDisplay_returnsVisible() { - setInDesktopMode(true) - val visibleTask1 = - PerDisplayRunningApps( - listOf(createTask(id = 1, "visiblePackage1", isVisible = false)), - DEFAULT_DISPLAY, - ) - val visibleTask2 = - PerDisplayRunningApps( - listOf(createTask(id = 2, "visiblePackage2", isVisible = true)), - DEFAULT_DISPLAY + 1, - ) - updateRecentTasks( - runningTasks = listOf(visibleTask1, visibleTask2), - recentTaskPackages = emptyList(), - ) - - val taskState = recentAppsController.getDesktopItemState(createItemInfo("visiblePackage2")) - - assertThat(taskState).isEqualTo(TaskState(RunningAppState.RUNNING, taskId = 2)) - } - @Test fun getDesktopItemState_matchingMinimizedTask_returnsMinimized() { setInDesktopMode(true) - val minimizedTask = - PerDisplayRunningApps( - listOf(createTask(id = 1, "minimizedPackage", isVisible = false)), - DEFAULT_DISPLAY, - ) + val minimizedTask = createTask(id = 1, "minimizedPackage", isVisible = false) updateRecentTasks(runningTasks = listOf(minimizedTask), recentTaskPackages = emptyList()) val taskState = recentAppsController.getDesktopItemState(createItemInfo("minimizedPackage")) @@ -331,42 +209,14 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { assertThat(taskState).isEqualTo(TaskState(RunningAppState.MINIMIZED, taskId = 1)) } - @Test - fun getDesktopItemState_matchingMinimizedTaskOnSecondaryDisplay_returnsVisible() { - setInDesktopMode(true) - val visibleTask1 = - PerDisplayRunningApps( - listOf(createTask(id = 1, "visiblePackage1", isVisible = false)), - DEFAULT_DISPLAY, - ) - val visibleTask2 = - PerDisplayRunningApps( - listOf(createTask(id = 2, "visiblePackage2", isVisible = false)), - DEFAULT_DISPLAY + 1, - ) - updateRecentTasks( - runningTasks = listOf(visibleTask1, visibleTask2), - recentTaskPackages = emptyList(), - ) - - val taskState = recentAppsController.getDesktopItemState(createItemInfo("visiblePackage2")) - - assertThat(taskState).isEqualTo(TaskState(RunningAppState.MINIMIZED, taskId = 2)) - } - @Test fun getDesktopItemState_matchingMinimizedAndRunningTask_returnsVisible() { setInDesktopMode(true) updateRecentTasks( runningTasks = listOf( - PerDisplayRunningApps( - listOf( - createTask(id = 1, "package", isVisible = false), - createTask(id = 2, "package", isVisible = true), - ), - DEFAULT_DISPLAY, - ) + createTask(id = 1, "package", isVisible = false), + createTask(id = 2, "package", isVisible = true), ), recentTaskPackages = emptyList(), ) @@ -382,13 +232,8 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { updateRecentTasks( runningTasks = listOf( - PerDisplayRunningApps( - listOf( - createTask(id = 1, "package", isVisible = false, USER_HANDLE_1), - createTask(id = 2, "package", isVisible = true, USER_HANDLE_1), - ), - DEFAULT_DISPLAY, - ) + createTask(id = 1, "package", isVisible = false, USER_HANDLE_1), + createTask(id = 2, "package", isVisible = true, USER_HANDLE_1), ), recentTaskPackages = emptyList(), ) @@ -413,50 +258,20 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { setInDesktopMode(true) val task1 = createTask(id = 1, packageName = RUNNING_APP_PACKAGE_1, isVisible = false) val task2 = createTask(id = 2, packageName = RUNNING_APP_PACKAGE_1, isVisible = true) - updateRecentTasks( - runningTasks = listOf(PerDisplayRunningApps(listOf(task1, task2), DEFAULT_DISPLAY)), - recentTaskPackages = emptyList(), - ) + updateRecentTasks(runningTasks = listOf(task1, task2), recentTaskPackages = emptyList()) assertThat(recentAppsController.getRunningAppState(taskId = 1)) .isEqualTo(RunningAppState.MINIMIZED) } @Test - fun getRunningAppState_taskNotVisible_returnsMinimizedForSecondaryDisplay() { + fun getRunningAppState_taskVisible_returnsRunning() { setInDesktopMode(true) val task1 = createTask(id = 1, packageName = RUNNING_APP_PACKAGE_1, isVisible = false) val task2 = createTask(id = 2, packageName = RUNNING_APP_PACKAGE_1, isVisible = true) - val task3 = createTask(id = 3, packageName = RUNNING_APP_PACKAGE_3, isVisible = false) - updateRecentTasks( - runningTasks = - listOf( - PerDisplayRunningApps(listOf(task1, task2), DEFAULT_DISPLAY), - PerDisplayRunningApps(listOf(task3), DEFAULT_DISPLAY + 1), - ), - recentTaskPackages = emptyList(), - ) + updateRecentTasks(runningTasks = listOf(task1, task2), recentTaskPackages = emptyList()) - assertThat(recentAppsController.getRunningAppState(taskId = 3)) - .isEqualTo(RunningAppState.MINIMIZED) - } - - @Test - fun getRunningAppState_taskVisible_returnsRunningForSecondaryDisplay() { - setInDesktopMode(true) - val task1 = createTask(id = 1, packageName = RUNNING_APP_PACKAGE_1, isVisible = false) - val task2 = createTask(id = 2, packageName = RUNNING_APP_PACKAGE_1, isVisible = true) - val task3 = createTask(id = 3, packageName = RUNNING_APP_PACKAGE_3, isVisible = true) - updateRecentTasks( - runningTasks = - listOf( - PerDisplayRunningApps(listOf(task1, task2), DEFAULT_DISPLAY), - PerDisplayRunningApps(listOf(task3), DEFAULT_DISPLAY + 1), - ), - recentTaskPackages = emptyList(), - ) - - assertThat(recentAppsController.getRunningAppState(taskId = 3)) + assertThat(recentAppsController.getRunningAppState(taskId = 2)) .isEqualTo(RunningAppState.RUNNING) } @@ -1024,7 +839,7 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { val hotseatPackageUser = PackageUser(HOTSEAT_PACKAGE_1, USER_HANDLE_2) val hotseatPackageUsers = listOf(hotseatPackageUser) val runningTask = createTask(id = 1, HOTSEAT_PACKAGE_1, localUserHandle = USER_HANDLE_1) - val runningTasks = listOf(PerDisplayRunningApps(listOf(runningTask), DEFAULT_DISPLAY)) + val runningTasks = listOf(runningTask) prepareHotseatAndRunningAndRecentAppsInternal( hotseatPackageUsers = hotseatPackageUsers, runningTasks = runningTasks, @@ -1034,145 +849,6 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { assertThat(recentAppsController.runningTaskIds).containsExactlyElementsIn(listOf(1)) } - @Test - fun onRecentTasksChanged_inDesktopMode_multipleDesktops() { - setInDesktopMode(true) - val hotseatPackageUsers = listOf(PackageUser(HOTSEAT_PACKAGE_1, USER_HANDLE_1)) - val defaultDisplayRunningTask = - createTask(id = 1, HOTSEAT_PACKAGE_1, localUserHandle = USER_HANDLE_1) - val secondaryDisplayRunningTask = - createTask(id = 2, RUNNING_APP_PACKAGE_1, localUserHandle = USER_HANDLE_1) - val runningTasks = - listOf( - PerDisplayRunningApps(listOf(defaultDisplayRunningTask), DEFAULT_DISPLAY), - PerDisplayRunningApps(listOf(secondaryDisplayRunningTask), DEFAULT_DISPLAY + 1), - ) - prepareHotseatAndRunningAndRecentAppsInternal( - hotseatPackageUsers = hotseatPackageUsers, - runningTasks = runningTasks, - recentTaskPackages = emptyList(), - ) - assertThat(recentShownTasks).containsExactly(secondaryDisplayRunningTask) - assertThat(recentAppsController.runningTaskIds).containsExactlyElementsIn(listOf(1, 2)) - } - - @Test - fun onRecentTasksChanged_inDesktopMode_multipleDesktops_appsNotInHotseat() { - setInDesktopMode(true) - val hotseatPackageUsers = listOf(PackageUser(HOTSEAT_PACKAGE_1, USER_HANDLE_1)) - val defaultDisplayRunningTask = - createTask(id = 1, RUNNING_APP_PACKAGE_1, localUserHandle = USER_HANDLE_1) - val secondaryDisplayRunningTask = - createTask(id = 2, RUNNING_APP_PACKAGE_2, localUserHandle = USER_HANDLE_1) - val runningTasks = - listOf( - PerDisplayRunningApps(listOf(defaultDisplayRunningTask), DEFAULT_DISPLAY), - PerDisplayRunningApps(listOf(secondaryDisplayRunningTask), DEFAULT_DISPLAY + 1), - ) - prepareHotseatAndRunningAndRecentAppsInternal( - hotseatPackageUsers = hotseatPackageUsers, - runningTasks = runningTasks, - recentTaskPackages = emptyList(), - ) - assertThat(recentShownTasks) - .containsExactly(defaultDisplayRunningTask, secondaryDisplayRunningTask) - assertThat(recentAppsController.runningTaskIds).containsExactlyElementsIn(listOf(1, 2)) - } - - @Test - fun onRecentTasksChanged_inDesktopMode_multipleDesktops_multipleAppInstances() { - setInDesktopMode(true) - val hotseatPackageUsers = listOf(PackageUser(HOTSEAT_PACKAGE_1, USER_HANDLE_1)) - val defaultDisplayRunningTask1 = - createTask(id = 1, HOTSEAT_PACKAGE_1, localUserHandle = USER_HANDLE_1) - val defaultDisplayRunningTask2 = - createTask(id = 2, RUNNING_APP_PACKAGE_1, localUserHandle = USER_HANDLE_1) - - val secondaryDisplayRunningTask1 = - createTask(id = 3, RUNNING_APP_PACKAGE_1, localUserHandle = USER_HANDLE_1) - val secondaryDisplayRunningTask2 = - createTask(id = 4, HOTSEAT_PACKAGE_1, localUserHandle = USER_HANDLE_1) - - val runningTasks = - listOf( - PerDisplayRunningApps( - listOf(defaultDisplayRunningTask1, defaultDisplayRunningTask2), - DEFAULT_DISPLAY, - ), - PerDisplayRunningApps( - listOf(secondaryDisplayRunningTask1, secondaryDisplayRunningTask2), - DEFAULT_DISPLAY + 1, - ), - ) - prepareHotseatAndRunningAndRecentAppsInternal( - hotseatPackageUsers = hotseatPackageUsers, - runningTasks = runningTasks, - recentTaskPackages = emptyList(), - ) - - assertThat(recentShownTasks).hasSize(1) - assertThat(recentShownTasks) - .containsAnyOf(defaultDisplayRunningTask2, secondaryDisplayRunningTask1) - - assertThat(recentAppsController.runningTaskIds) - .containsExactlyElementsIn(listOf(1, 2, 3, 4)) - } - - @Test - fun hasSingleTask_noTargetPackage_returnsFalse() { - prepareHotseatAndRunningAndRecentApps( - hotseatPackages = emptyList(), - runningTasks = emptyList(), - recentTaskPackages = listOf(RECENT_PACKAGE_1), - ) - assertThat(recentAppsController.hasSingleTask(ItemInfo())).isFalse() - } - - @Test - fun hasSingleTask_noRecentTasks_returnsFalse() { - prepareHotseatAndRunningAndRecentApps( - hotseatPackages = emptyList(), - runningTasks = emptyList(), - recentTaskPackages = emptyList(), - ) - val itemInfo = createItemInfo(RECENT_PACKAGE_1) - assertThat(recentAppsController.hasSingleTask(itemInfo)).isFalse() - } - - @Test - fun hasSingleTask_noMatchingSingleTask_returnsFalse() { - prepareHotseatAndRunningAndRecentApps( - hotseatPackages = emptyList(), - runningTasks = emptyList(), - recentTaskPackages = listOf(RECENT_PACKAGE_1), - ) - val itemInfo = createItemInfo(RECENT_PACKAGE_2) - assertThat(recentAppsController.hasSingleTask(itemInfo)).isFalse() - } - - @Test - fun hasSingleTask_matchingSingleTask_returnsTrue() { - prepareHotseatAndRunningAndRecentApps( - hotseatPackages = emptyList(), - runningTasks = emptyList(), - recentTaskPackages = listOf(RECENT_PACKAGE_1, RECENT_PACKAGE_2), - ) - val itemInfo = createItemInfo(RECENT_PACKAGE_1) - assertThat(recentAppsController.hasSingleTask(itemInfo)).isTrue() - } - - @Test - fun hasSingleTask_matchingSingleTaskDifferentUser_returnsFalse() { - prepareHotseatAndRunningAndRecentApps( - hotseatPackages = emptyList(), - runningTasks = emptyList(), - recentTaskPackages = listOf(RECENT_PACKAGE_1), - ) - // RECENT_PACKAGE_1 is created with myUserHandle in createRecentTasksFromPackageNames - val itemInfo = createItemInfo(RECENT_PACKAGE_1, USER_HANDLE_1) - assertThat(recentAppsController.hasSingleTask(itemInfo)).isFalse() - } - private fun prepareHotseatAndRunningAndRecentApps( hotseatPackages: List<String>, runningTasks: List<Task>, @@ -1181,14 +857,14 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { val hotseatPackageUsers = hotseatPackages.map { PackageUser(it, myUserHandle) } return prepareHotseatAndRunningAndRecentAppsInternal( hotseatPackageUsers, - listOf(PerDisplayRunningApps(runningTasks, DEFAULT_DISPLAY)), + runningTasks, recentTaskPackages, ) } private fun prepareHotseatAndRunningAndRecentAppsInternal( hotseatPackageUsers: List<PackageUser>, - runningTasks: List<PerDisplayRunningApps>, + runningTasks: List<Task>, recentTaskPackages: List<String>, ): Array<ItemInfo?> { val hotseatItems = createHotseatItemsFromPackageUsers(hotseatPackageUsers) @@ -1197,25 +873,22 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { return recentAppsController.shownHotseatItems.toTypedArray() } - private fun updateRecentTasks( - runningTasks: List<PerDisplayRunningApps>, - recentTaskPackages: List<String>, - ) { + private fun updateRecentTasks(runningTasks: List<Task>, recentTaskPackages: List<String>) { val recentTasks = createRecentTasksFromPackageNames(recentTaskPackages) val allTasks = ArrayList<GroupTask>().apply { - runningTasks.forEach { - add(DesktopTask(deskId = 0, it.displayId, ArrayList(it.tasks))) + if (!runningTasks.isEmpty()) { + add(DesktopTask(deskId = 0, DEFAULT_DISPLAY, ArrayList(runningTasks))) } addAll(recentTasks) } doAnswer { - val callback: Consumer<ArrayList<GroupTask>> = it.getArgument(1) + val callback: Consumer<ArrayList<GroupTask>> = it.getArgument(0) callback.accept(allTasks) taskListChangeId } .whenever(mockRecentsModel) - .getTasks(any(), any<Consumer<List<GroupTask>>>()) + .getTasks(any<Consumer<List<GroupTask>>>(), any()) recentTasksChangedListener?.onRecentTasksChanged() } @@ -1249,11 +922,11 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { SplitTask( createTask(100, splitPackages[0]), createTask(101, splitPackages[1]), - SplitBounds( + SplitConfigurationOptions.SplitBounds( /* leftTopBounds = */ Rect(), /* rightBottomBounds = */ Rect(), - /* leftTopTaskId = */ 1, - /* rightBottomTaskId = */ 2, + /* leftTopTaskId = */ -1, + /* rightBottomTaskId = */ -1, /* snapPosition = */ SplitScreenConstants.SNAP_TO_2_50_50, ), ) @@ -1318,6 +991,4 @@ class TaskbarRecentAppsControllerTest : TaskbarBaseTestCase() { } data class PackageUser(val packageName: String, val userHandle: UserHandle) - - data class PerDisplayRunningApps(val tasks: List<Task>, val displayId: Int) } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarStashControllerTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarStashControllerTest.kt index 1575e23cac..021e1e417c 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarStashControllerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarStashControllerTest.kt @@ -17,17 +17,12 @@ package com.android.launcher3.taskbar import android.animation.AnimatorTestRule -import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.SetFlagsRule import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation -import com.android.launcher3.Flags -import com.android.launcher3.LauncherPrefs import com.android.launcher3.LauncherPrefs.Companion.TASKBAR_PINNING -import com.android.launcher3.LauncherPrefs.Companion.TASKBAR_PINNING_IN_DESKTOP_MODE import com.android.launcher3.QuickstepTransitionManager.PINNED_TASKBAR_TRANSITION_DURATION import com.android.launcher3.R -import com.android.launcher3.statehandlers.DesktopVisibilityController import com.android.launcher3.taskbar.StashedHandleViewController.ALPHA_INDEX_STASHED import com.android.launcher3.taskbar.TaskbarAutohideSuspendController.FLAG_AUTOHIDE_SUSPEND_EDU_OPEN import com.android.launcher3.taskbar.TaskbarControllerTestUtil.asProperty @@ -55,7 +50,6 @@ import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule.InjectController import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule.UserSetupMode import com.android.launcher3.taskbar.rules.TaskbarWindowSandboxContext -import com.android.launcher3.taskbar.rules.displayControllerSpy import com.android.launcher3.util.LauncherMultivalentJUnit import com.android.launcher3.util.LauncherMultivalentJUnit.EmulatedDevices import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_BUBBLES_EXPANDED @@ -67,9 +61,6 @@ import org.junit.After import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.kotlin.doReturn -import org.mockito.kotlin.spy -import org.mockito.kotlin.whenever @RunWith(LauncherMultivalentJUnit::class) @EnableFlags(FLAG_ENABLE_BUBBLE_BAR) @@ -89,9 +80,6 @@ class TaskbarStashControllerTest { @InjectController lateinit var bubbleBarViewController: BubbleBarViewController @InjectController lateinit var bubbleStashController: BubbleStashController - private val desktopVisibilityController: DesktopVisibilityController - get() = DesktopVisibilityController.INSTANCE[context] - private val activityContext by taskbarUnitTestRule::activityContext @After fun cancelTimeoutIfExists() = stashController.cancelTimeoutIfExists() @@ -130,27 +118,7 @@ class TaskbarStashControllerTest { } @Test - @DisableFlags(Flags.FLAG_ENABLE_OVERVIEW_ON_CONNECTED_DISPLAYS) - fun testRecreateAsTransient_withoutOverviewOnConnectedDisplays_timeoutStarted() { - context.displayControllerSpy?.setupTaskbarPinningPrefListener(context.displayId) - - testRecreateAsTransient_timeoutStarted() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_OVERVIEW_ON_CONNECTED_DISPLAYS) - fun testRecreateAsTransient_withOverviewOnConnectedDisplay_timeoutStarted() { - context.displayControllerSpy?.let { controller -> - controller.setupTaskbarPinningPrefListener(context.displayId) - controller.infoModifierForDisplay = { - spy(it) { on { it?.isTransientTaskbar } doReturn true } - } - } - - testRecreateAsTransient_timeoutStarted() - } - - private fun testRecreateAsTransient_timeoutStarted() { + fun testRecreateAsTransient_timeoutStarted() { var isPinned by TASKBAR_PINNING.asProperty(context) isPinned = true activityContext.controllers.sharedState?.taskbarWasPinned = true @@ -325,7 +293,7 @@ class TaskbarStashControllerTest { } val expectedHeight = - activityContext.deviceProfile.taskbarProfile.run { height + bottomMargin } + activityContext.deviceProfile.run { taskbarHeight + taskbarBottomMargin } assertThat(stashController.touchableHeight).isEqualTo(expectedHeight) } @@ -333,7 +301,7 @@ class TaskbarStashControllerTest { @TaskbarMode(PINNED) fun testGetTouchableHeight_pinnedMode_taskbarHeight() { assertThat(stashController.touchableHeight) - .isEqualTo(activityContext.deviceProfile.taskbarProfile.height) + .isEqualTo(activityContext.deviceProfile.taskbarHeight) } @Test @@ -347,33 +315,22 @@ class TaskbarStashControllerTest { @TaskbarMode(THREE_BUTTONS) fun testGetContentHeightToReportToApps_threeButtonsMode_taskbarHeight() { assertThat(stashController.contentHeightToReportToApps) - .isEqualTo(activityContext.deviceProfile.taskbarProfile.height) + .isEqualTo(activityContext.deviceProfile.taskbarHeight) } @Test @TaskbarMode(PINNED) fun testGetContentHeightToReportToApps_pinnedMode_taskbarHeight() { assertThat(stashController.contentHeightToReportToApps) - .isEqualTo(activityContext.deviceProfile.taskbarProfile.height) + .isEqualTo(activityContext.deviceProfile.taskbarHeight) } @Test @TaskbarMode(PINNED) @UserSetupMode fun testGetContentHeightToReportToApps_pinnedInSetupMode_setupWizardInsets() { - stashController.mNavbarHiddenOverrideForTest = false assertThat(stashController.contentHeightToReportToApps) .isEqualTo(context.resources.getDimensionPixelSize(R.dimen.taskbar_suw_insets)) - stashController.mNavbarHiddenOverrideForTest = null - } - - @Test - @UserSetupMode - fun testGetContentHeightToReportToApps_inExpressiveTheme_setupWizardInsets() { - stashController.mNavbarHiddenOverrideForTest = true - assertThat(stashController.contentHeightToReportToApps) - .isEqualTo(stashController.stashedHeight) - stashController.mNavbarHiddenOverrideForTest = null } @Test @@ -408,7 +365,7 @@ class TaskbarStashControllerTest { @TaskbarMode(PINNED) fun testGetTappableHeightToReportToApps_pinnedMode_taskbarHeight() { assertThat(stashController.tappableHeightToReportToApps) - .isEqualTo(activityContext.deviceProfile.taskbarProfile.height) + .isEqualTo(activityContext.deviceProfile.taskbarHeight) } @Test @@ -430,41 +387,6 @@ class TaskbarStashControllerTest { assertThat(stashController.timeoutAlarm.alarmPending()).isTrue() } - @Test - @TaskbarMode(PINNED) - fun testUpdateTaskbarTimeout_unPinnedTaskbarInDesktopMode_startsTaskbarTimeout() { - LauncherPrefs.get(context).put(TASKBAR_PINNING_IN_DESKTOP_MODE, false) - whenever(desktopVisibilityController.isInDesktopMode(context.displayId)).thenReturn(true) - stashController.updateTaskbarTimeout(false) - assertThat(stashController.timeoutAlarm.alarmPending()).isTrue() - } - - @Test - @TaskbarMode(PINNED) - fun testUpdateTaskbarTimeout_pinnedTaskbarInDesktopMode_shouldNotStartsTaskbarTimeout() { - LauncherPrefs.get(context).put(TASKBAR_PINNING_IN_DESKTOP_MODE, true) - whenever(desktopVisibilityController.isInDesktopMode(context.displayId)).thenReturn(true) - stashController.updateTaskbarTimeout(false) - assertThat(stashController.timeoutAlarm.alarmPending()).isFalse() - } - - @Test - @TaskbarMode(TRANSIENT) - fun shouldAllowTaskbarToAutoStash_transientTaskbar() { - assertThat(stashController.shouldAllowTaskbarToAutoStash()).isTrue() - } - - @Test - @TaskbarMode(PINNED) - fun toggleTaskbarStash_autoStashedDesktopModeTaskbar() { - LauncherPrefs.get(context).put(TASKBAR_PINNING_IN_DESKTOP_MODE, false) - whenever(desktopVisibilityController.isInDesktopMode(context.displayId)).thenReturn(true) - - getInstrumentation().runOnMainSync { stashController.toggleTaskbarStash() } - - assertThat(stashController.isStashed).isTrue() - } - @Test @TaskbarMode(TRANSIENT) fun testUpdateAndAnimateTransientTaskbar_finishTaskbarTimeout_taskbarStashes() { @@ -546,7 +468,7 @@ class TaskbarStashControllerTest { fun testUpdateAndAnimateTransientTaskbar_bubbleBarExpandedBeforeTimeout_expandedAfterwards() { getInstrumentation().runOnMainSync { bubbleBarViewController.setHiddenForBubbles(false) - bubbleBarViewController.animateExpanded(true) + bubbleBarViewController.isExpanded = true stashController.updateAndAnimateTransientTaskbar(false) animatorTestRule.advanceTimeBy(stashController.stashDuration) } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewTest.kt index fb32179f20..24ed81f4fa 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewTest.kt @@ -33,7 +33,7 @@ import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule.ForceRtl import com.android.launcher3.taskbar.rules.TaskbarWindowSandboxContext import com.android.launcher3.util.LauncherMultivalentJUnit.Companion.isRunningInRobolectric -import com.android.window.flags2.Flags.FLAG_ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION +import com.android.window.flags.Flags.FLAG_ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION import org.junit.Before import org.junit.Rule import org.junit.Test diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewTestUtil.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewTestUtil.kt index 9cd09dc76d..92abbbaa0a 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewTestUtil.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewTestUtil.kt @@ -21,8 +21,8 @@ import android.content.Intent import android.graphics.Bitmap import android.graphics.Bitmap.createBitmap import android.os.Process -import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT import com.android.launcher3.icons.BitmapInfo +import com.android.launcher3.model.data.AppInfo import com.android.launcher3.model.data.AppPairInfo import com.android.launcher3.model.data.FolderInfo import com.android.launcher3.model.data.ItemInfo @@ -50,37 +50,19 @@ object TaskbarViewTestUtil { } /** Creates an array of fake hotseat items. */ - fun createHotseatItems(size: Int): Array<WorkspaceItemInfo> { + fun createHotseatItems(size: Int): Array<ItemInfo> { return Array(size) { createHotseatWorkspaceItem(it) } } fun createHotseatWorkspaceItem(id: Int = 0): WorkspaceItemInfo { - return createTestWorkspaceItem( - id, - "Test App $id", - testIntent(id), - Process.myUserHandle(), - CONTAINER_HOTSEAT, - ) - } - - // Helper to create a test WorkspaceItemInfo - fun createTestWorkspaceItem( - id: Int, - title: String, - intent: Intent, - user: android.os.UserHandle, - container: Int, - ): WorkspaceItemInfo { - val item = WorkspaceItemInfo() - item.id = id - item.title = title - item.intent = intent - item.user = user - item.container = container - // Create a placeholder icon so that the test doesn't try to load a high-res icon. - item.bitmap = BitmapInfo.fromBitmap(createBitmap(1, 1, Bitmap.Config.ALPHA_8)) - return item + return WorkspaceItemInfo( + AppInfo(TEST_COMPONENT, "Test App $id", Process.myUserHandle(), Intent()) + ) + .apply { + this.id = id + // Create a placeholder icon so that the test doesn't try to load a high-res icon. + this.bitmap = BitmapInfo.fromBitmap(createBitmap(1, 1, Bitmap.Config.ALPHA_8)) + } } fun createHotseatAppPairsItem(): AppPairInfo { @@ -101,23 +83,21 @@ object TaskbarViewTestUtil { /** Creates a list of fake recent tasks. */ fun createRecents(size: Int): List<GroupTask> { - return List(size) { createRecentTask(it) } - } - - fun createRecentTask(id: Int = 0): GroupTask { - return SingleTask( - Task().apply { - key = - TaskKey( - id, - 5, - testIntent(id), - testComponent(id), - Process.myUserHandle().identifier, - System.currentTimeMillis(), - ) - } - ) + return List(size) { + SingleTask( + Task().apply { + key = + TaskKey( + it, + 5, + TEST_INTENT, + TEST_COMPONENT, + Process.myUserHandle().identifier, + System.currentTimeMillis(), + ) + } + ) + } } } @@ -167,10 +147,5 @@ enum class TaskbarIconType { } private const val TEST_PACKAGE = "com.android.launcher3.taskbar" -private val testComponent = { i: Int -> ComponentName(TEST_PACKAGE, "Activity $i") } -private val testIntent = { i: Int -> - Intent().apply { - `package` = TEST_PACKAGE - component = testComponent(i) - } -} +private val TEST_COMPONENT = ComponentName(TEST_PACKAGE, "Activity") +private val TEST_INTENT = Intent().apply { `package` = TEST_PACKAGE } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewWithLayoutTransitionTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewWithLayoutTransitionTest.kt index 3ad302cf9e..2df4fab457 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewWithLayoutTransitionTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/TaskbarViewWithLayoutTransitionTest.kt @@ -19,6 +19,7 @@ package com.android.launcher3.taskbar import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.SetFlagsRule import android.view.View +import com.android.launcher3.Flags.FLAG_TASKBAR_OVERFLOW import com.android.launcher3.R import com.android.launcher3.statehandlers.DesktopVisibilityController import com.android.launcher3.taskbar.TaskbarControllerTestUtil.runOnMainSync @@ -35,8 +36,7 @@ import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule.ForceRtl import com.android.launcher3.taskbar.rules.TaskbarWindowSandboxContext import com.android.launcher3.util.LauncherMultivalentJUnit import com.android.launcher3.util.LauncherMultivalentJUnit.EmulatedDevices -import com.android.window.flags2.Flags.FLAG_ENABLE_TASKBAR_OVERFLOW -import com.android.window.flags2.Flags.FLAG_ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION +import com.android.window.flags.Flags.FLAG_ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION import com.google.common.truth.Truth.assertThat import org.junit.Before import org.junit.Rule @@ -46,7 +46,7 @@ import org.mockito.kotlin.whenever @RunWith(LauncherMultivalentJUnit::class) @EmulatedDevices(["pixelFoldable2023", "pixelTablet2023"]) -@EnableFlags(FLAG_ENABLE_TASKBAR_OVERFLOW, FLAG_ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION) +@EnableFlags(FLAG_ENABLE_TASKBAR_RECENTS_LAYOUT_TRANSITION, FLAG_TASKBAR_OVERFLOW) class TaskbarViewWithLayoutTransitionTest { @get:Rule(order = 0) val setFlagsRule = SetFlagsRule() @@ -243,17 +243,6 @@ class TaskbarViewWithLayoutTransitionTest { assertThat(taskbarView).hasIconTypes(ALL_APPS, HOTSEAT) } - @Test - fun testUpdateItems_desktopMode_hotseatItem_noDividerAfterDesktopModeChange() { - whenever(desktopVisibilityController.isInDesktopMode(context.displayId)).thenReturn(false) - runOnMainSync { taskbarView.updateItems(createHotseatItems(1), emptyList()) } - - whenever(desktopVisibilityController.isInDesktopMode(context.displayId)).thenReturn(true) - runOnMainSync { taskbarView.updateItems(createHotseatItems(2), emptyList()) } - - assertThat(taskbarView).hasIconTypes(ALL_APPS, HOTSEAT, HOTSEAT) - } - @Test @ForceRtl fun testUpdateItems_rtlAndDesktopMode_hotseatItem_noDivider() { diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarInputConsumerTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarInputConsumerTest.kt index d5a8baf368..c8f50f70d5 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarInputConsumerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarInputConsumerTest.kt @@ -50,7 +50,6 @@ class BubbleBarInputConsumerTest { @Mock private lateinit var bubbleBarPinController: BubbleBarPinController @Mock private lateinit var bubblePinController: BubblePinController @Mock private lateinit var bubbleBarSwipeController: BubbleBarSwipeController - @Mock private lateinit var dragToBubbleController: DragToBubbleController @Mock private lateinit var bubbleCreator: BubbleCreator @Mock private lateinit var motionEvent: MotionEvent @@ -70,7 +69,6 @@ class BubbleBarInputConsumerTest { bubbleBarPinController, bubblePinController, Optional.of(bubbleBarSwipeController), - dragToBubbleController, bubbleCreator, ) } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarSwipeControllerTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarSwipeControllerTest.kt index 5865dcdb2f..024ec4c060 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarSwipeControllerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/BubbleBarSwipeControllerTest.kt @@ -69,7 +69,6 @@ class BubbleBarSwipeControllerTest { @Mock private lateinit var bubbleDismissController: BubbleDismissController @Mock private lateinit var bubbleBarPinController: BubbleBarPinController @Mock private lateinit var bubblePinController: BubblePinController - @Mock private lateinit var dragToBubbleController: DragToBubbleController @Mock private lateinit var bubbleCreator: BubbleCreator @Before @@ -95,7 +94,6 @@ class BubbleBarSwipeControllerTest { bubbleBarPinController, bubblePinController, Optional.of(bubbleBarSwipeController), - dragToBubbleController, bubbleCreator, ) diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/stashing/PersistentBubbleStashControllerTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/stashing/PersistentBubbleStashControllerTest.kt index 0421a13aec..88b39d3653 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/stashing/PersistentBubbleStashControllerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/stashing/PersistentBubbleStashControllerTest.kt @@ -29,7 +29,6 @@ import com.android.launcher3.taskbar.bubbles.BubbleBarView import com.android.launcher3.taskbar.bubbles.BubbleBarViewController import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController.BubbleLauncherState import com.android.launcher3.util.MultiValueAlpha -import com.android.wm.shell.shared.bubbles.BubbleBarLocation import com.google.common.truth.Truth.assertThat import org.junit.Before import org.junit.Rule @@ -354,7 +353,7 @@ class PersistentBubbleStashControllerTest { bubbleBarGesture = true, ) - verify(bubbleBarViewController).animateExpanded(true, true) + verify(bubbleBarViewController).setExpanded(true, true) } @Test @@ -367,7 +366,7 @@ class PersistentBubbleStashControllerTest { bubbleBarGesture = false, ) - verify(bubbleBarViewController).animateExpanded(true, false) + verify(bubbleBarViewController).setExpanded(true, false) } @Test @@ -380,7 +379,7 @@ class PersistentBubbleStashControllerTest { bubbleBarGesture = true, ) - verify(bubbleBarViewController, never()).animateExpanded(any(), any()) + verify(bubbleBarViewController, never()).setExpanded(any(), any()) } private fun advanceTimeBy(advanceMs: Long) { @@ -392,26 +391,6 @@ class PersistentBubbleStashControllerTest { getInstrumentation().runOnMainSync { bubbleBarView = BubbleBarView(context) bubbleBarView.layoutParams = FrameLayout.LayoutParams(0, 0) - bubbleBarView.setController( - object : BubbleBarView.Controller { - override fun getBubbleBarTranslationY(): Float = 0f - - override fun onBubbleBarTouched() {} - - override fun expandBubbleBar() {} - - override fun dismissBubbleBar() {} - - override fun updateBubbleBarLocation( - location: BubbleBarLocation?, - source: Int, - ) {} - - override fun setIsDragging(dragging: Boolean) {} - - override fun onBubbleBarExpandedStateChanged(expanded: Boolean) {} - } - ) } } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/stashing/TransientBubbleStashControllerTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/stashing/TransientBubbleStashControllerTest.kt index 3b6412d787..b24926beca 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/stashing/TransientBubbleStashControllerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/bubbles/stashing/TransientBubbleStashControllerTest.kt @@ -38,7 +38,6 @@ import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController.Bubb import com.android.launcher3.util.MultiValueAlpha import com.android.wm.shell.shared.animation.PhysicsAnimator import com.android.wm.shell.shared.animation.PhysicsAnimatorTestUtils -import com.android.wm.shell.shared.bubbles.BubbleBarLocation import com.google.common.collect.Range import com.google.common.truth.Truth.assertThat import org.junit.Before @@ -376,7 +375,7 @@ class TransientBubbleStashControllerTest { ) } - verify(bubbleBarViewController).animateExpanded(true, true) + verify(bubbleBarViewController).setExpanded(true, true) } @Test @@ -393,7 +392,7 @@ class TransientBubbleStashControllerTest { ) } - verify(bubbleBarViewController).animateExpanded(true, false) + verify(bubbleBarViewController).setExpanded(true, false) } @Test @@ -410,7 +409,7 @@ class TransientBubbleStashControllerTest { ) } - verify(bubbleBarViewController, never()).animateExpanded(any(), any()) + verify(bubbleBarViewController, never()).setExpanded(any(), any()) } @Test @@ -557,28 +556,8 @@ class TransientBubbleStashControllerTest { bubbleBarView = BubbleBarView(context) bubbleBarView.layoutParams = FrameLayout.LayoutParams(BUBBLE_BAR_WIDTH, BUBBLE_BAR_HEIGHT) - bubbleBarView.setController( - object : BubbleBarView.Controller { - override fun getBubbleBarTranslationY(): Float = 0f - - override fun onBubbleBarTouched() {} - - override fun expandBubbleBar() {} - - override fun dismissBubbleBar() {} - - override fun updateBubbleBarLocation( - location: BubbleBarLocation?, - source: Int, - ) {} - - override fun setIsDragging(dragging: Boolean) {} - - override fun onBubbleBarExpandedStateChanged(expanded: Boolean) {} - } - ) bubbleView = BubbleView(context) - bubbleBarView.addBubble(bubbleView, false) + bubbleBarView.addBubble(bubbleView) bubbleBarView.layout(0, 0, BUBBLE_BAR_WIDTH, BUBBLE_BAR_HEIGHT) } } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/navbutton/NavButtonLayoutFactoryTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/navbutton/NavButtonLayoutFactoryTest.kt index 579c10f712..c8f79463b1 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/navbutton/NavButtonLayoutFactoryTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/navbutton/NavButtonLayoutFactoryTest.kt @@ -14,7 +14,6 @@ import androidx.test.runner.AndroidJUnit4 import com.android.launcher3.DeviceProfile import com.android.launcher3.R import com.android.launcher3.config.FeatureFlags.ENABLE_TASKBAR_NAVBAR_UNIFICATION -import com.android.launcher3.deviceprofile.DeviceProperties import com.android.launcher3.taskbar.navbutton.LayoutResourceHelper.ID_END_CONTEXTUAL_BUTTONS import com.android.launcher3.taskbar.navbutton.LayoutResourceHelper.ID_END_NAV_BUTTONS import com.android.launcher3.taskbar.navbutton.LayoutResourceHelper.ID_START_CONTEXTUAL_BUTTONS @@ -51,8 +50,6 @@ class NavButtonLayoutFactoryTest { whenever(mockNavLayout.findViewById<View>(R.id.back)).thenReturn(mockBackButton) whenever(mockNavLayout.findViewById<View>(R.id.home)).thenReturn(mockHomeButton) whenever(mockNavLayout.findViewById<View>(R.id.recent_apps)).thenReturn(mockRecentsButton) - val devicePropertiesMock: DeviceProperties = mock() - whenever(mockDeviceProfile.deviceProperties).thenReturn(devicePropertiesMock) // Init top level layout whenever(mockParentButtonContainer.requireViewById<LinearLayout>(ID_END_NAV_BUTTONS)) @@ -76,7 +73,7 @@ class NavButtonLayoutFactoryTest { isInSetup = false, isThreeButtonNav = false, phoneMode = false, - surfaceRotation = surfaceRotation, + surfaceRotation = surfaceRotation ) assert(layoutter is KidsNavLayoutter) } @@ -91,7 +88,7 @@ class NavButtonLayoutFactoryTest { isInSetup = true, isThreeButtonNav = false, phoneMode = false, - surfaceRotation = surfaceRotation, + surfaceRotation = surfaceRotation ) assert(layoutter is SetupNavLayoutter) } @@ -106,7 +103,7 @@ class NavButtonLayoutFactoryTest { isInSetup = false, isThreeButtonNav = false, phoneMode = false, - surfaceRotation = surfaceRotation, + surfaceRotation = surfaceRotation ) assert(layoutter is TaskbarNavLayoutter) } @@ -120,7 +117,7 @@ class NavButtonLayoutFactoryTest { isInSetup = false, isThreeButtonNav = false, phoneMode = false, - surfaceRotation = surfaceRotation, + surfaceRotation = surfaceRotation ) } @@ -134,7 +131,7 @@ class NavButtonLayoutFactoryTest { isInSetup = false, isThreeButtonNav = true, phoneMode = true, - surfaceRotation = surfaceRotation, + surfaceRotation = surfaceRotation ) assert(layoutter is PhonePortraitNavLayoutter) } @@ -150,7 +147,7 @@ class NavButtonLayoutFactoryTest { isInSetup = false, isThreeButtonNav = true, phoneMode = true, - surfaceRotation = surfaceRotation, + surfaceRotation = surfaceRotation ) assert(layoutter is PhoneLandscapeNavLayoutter) } @@ -166,7 +163,7 @@ class NavButtonLayoutFactoryTest { isInSetup = false, isThreeButtonNav = true, phoneMode = true, - surfaceRotation = ROTATION_270, + surfaceRotation = ROTATION_270 ) assert(layoutter is PhoneSeascapeNavLayoutter) } @@ -181,13 +178,16 @@ class NavButtonLayoutFactoryTest { isInSetup = false, isThreeButtonNav = false, phoneMode = true, - surfaceRotation = surfaceRotation, + surfaceRotation = surfaceRotation ) assert(layoutter is PhoneGestureLayoutter) } private fun setDeviceProfileLandscape() { - whenever(mockDeviceProfile.deviceProperties.isLandscape).thenReturn(true) + // Use reflection to modify landscape field + val landscapeField = mockDeviceProfile.javaClass.getDeclaredField("isLandscape") + landscapeField.isAccessible = true + landscapeField.set(mockDeviceProfile, true) } private fun getLayoutter( @@ -195,7 +195,7 @@ class NavButtonLayoutFactoryTest { isInSetup: Boolean, isThreeButtonNav: Boolean, phoneMode: Boolean, - @Rotation surfaceRotation: Int, + @Rotation surfaceRotation: Int ): NavButtonLayoutFactory.NavButtonLayoutter { return NavButtonLayoutFactory.getUiLayoutter( deviceProfile = mockDeviceProfile, diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/MockedRecentsModelHelper.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/MockedRecentsModelHelper.kt index 6b34cef3b1..5f7b360bdf 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/MockedRecentsModelHelper.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/MockedRecentsModelHelper.kt @@ -21,7 +21,6 @@ import com.android.quickstep.RecentsModel.RecentTasksChangedListener import com.android.quickstep.TaskIconCache import com.android.quickstep.TaskThumbnailCache import com.android.quickstep.util.GroupTask -import java.util.function.BiConsumer import java.util.function.Consumer import org.mockito.kotlin.any import org.mockito.kotlin.anyOrNull @@ -43,28 +42,16 @@ class MockedRecentsModelHelper { on { thumbnailCache } doReturn mockThumbnailCache - on { unregisterRecentTasksChangedListener(any()) } doAnswer - { - recentTasksChangedListener = null - } + on { unregisterRecentTasksChangedListener() } doAnswer { recentTasksChangedListener = null } on { registerRecentTasksChangedListener(any<RecentTasksChangedListener>()) } doAnswer { recentTasksChangedListener = it.getArgument<RecentTasksChangedListener>(0) } - on { getTasks(anyOrNull<BiConsumer<List<GroupTask>, Int>>(), anyOrNull()) } doAnswer + on { getTasks(anyOrNull(), anyOrNull()) } doAnswer { - val request = it.getArgument<BiConsumer<List<GroupTask>, Int>?>(0) - if (request != null) { - taskRequests.add { response -> request.accept(response, taskListId) } - } - taskListId - } - - on { getTasks(anyOrNull(), anyOrNull<Consumer<List<GroupTask>>>()) } doAnswer - { - val request = it.getArgument<Consumer<List<GroupTask>>?>(1) + val request = it.getArgument<Consumer<List<GroupTask>>?>(0) if (request != null) { taskRequests.add { response -> request.accept(response) } } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarModeRuleTest.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarModeRuleTest.kt index d4a3fa62e6..0dd1324c0f 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarModeRuleTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarModeRuleTest.kt @@ -49,8 +49,8 @@ class TaskbarModeRuleTest { @TaskbarMode(TRANSIENT) fun testTaskbarMode_transient_overridesDeviceProfile() { val dp = InvariantDeviceProfile.INSTANCE.get(context).getDeviceProfile(context) - assertThat(dp.taskbarProfile.isTransientTaskbar).isTrue() - assertThat(dp.deviceProperties.isGestureMode).isTrue() + assertThat(dp.isTransientTaskbar).isTrue() + assertThat(dp.isGestureMode).isTrue() } @Test @@ -65,8 +65,8 @@ class TaskbarModeRuleTest { @TaskbarMode(PINNED) fun testTaskbarMode_pinned_overridesDeviceProfile() { val dp = InvariantDeviceProfile.INSTANCE.get(context).getDeviceProfile(context) - assertThat(dp.taskbarProfile.isTransientTaskbar).isFalse() - assertThat(dp.deviceProperties.isGestureMode).isTrue() + assertThat(dp.isTransientTaskbar).isFalse() + assertThat(dp.isGestureMode).isTrue() } @Test @@ -82,7 +82,7 @@ class TaskbarModeRuleTest { @TaskbarMode(THREE_BUTTONS) fun testTaskbarMode_threeButtons_overridesDeviceProfile() { val dp = InvariantDeviceProfile.INSTANCE.get(context).getDeviceProfile(context) - assertThat(dp.taskbarProfile.isTransientTaskbar).isFalse() - assertThat(dp.deviceProperties.isGestureMode).isFalse() + assertThat(dp.isTransientTaskbar).isFalse() + assertThat(dp.isGestureMode).isFalse() } } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarUnitTestRule.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarUnitTestRule.kt index 9ac19e1392..19c88240d9 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarUnitTestRule.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarUnitTestRule.kt @@ -26,18 +26,15 @@ import androidx.test.platform.app.InstrumentationRegistry import com.android.launcher3.LauncherAppState import com.android.launcher3.taskbar.TaskbarActivityContext import com.android.launcher3.taskbar.TaskbarControllers -import com.android.launcher3.taskbar.TaskbarManagerImpl +import com.android.launcher3.taskbar.TaskbarManager import com.android.launcher3.taskbar.TaskbarNavButtonController.TaskbarNavButtonCallbacks import com.android.launcher3.taskbar.TaskbarUIController import com.android.launcher3.taskbar.bubbles.BubbleControllers import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule.InjectController import com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR import com.android.launcher3.util.TestUtil -import com.android.launcher3.util.coroutines.ProductionDispatchers import com.android.quickstep.AllAppsActionManager -import com.android.quickstep.LauncherDisplaysWithDecorationsRepositoryCompat -import com.android.quickstep.fallback.window.RecentsWindowManager -import com.android.quickstep.input.QuickstepKeyGestureEventsManager +import com.android.quickstep.fallback.window.RecentsDisplayModel import java.lang.reflect.Field import java.lang.reflect.ParameterizedType import java.util.Locale @@ -46,10 +43,6 @@ import org.junit.Assume.assumeTrue import org.junit.rules.TestRule import org.junit.runner.Description import org.junit.runners.model.Statement -import org.mockito.kotlin.any -import org.mockito.kotlin.doNothing -import org.mockito.kotlin.spy -import org.mockito.kotlin.whenever /** * Manages the Taskbar lifecycle for unit tests. @@ -85,7 +78,7 @@ class TaskbarUnitTestRule( private val instrumentation = InstrumentationRegistry.getInstrumentation() - private lateinit var taskbarManager: TaskbarManagerImpl + private lateinit var taskbarManager: TaskbarManager val activityContext: TaskbarActivityContext get() { @@ -110,38 +103,16 @@ class TaskbarUnitTestRule( context.settingsCacheSandbox[getUriFor(NAV_BAR_KIDS_MODE)] = if (description.getAnnotation(NavBarKidsMode::class.java) != null) 1 else 0 - val quickstepKeyGestureEventsManagerSpy = - spy(QuickstepKeyGestureEventsManager(context)) - doNothing() - .whenever(quickstepKeyGestureEventsManagerSpy) - .registerAllAppsKeyGestureEvent(any()) - doNothing() - .whenever(quickstepKeyGestureEventsManagerSpy) - .unregisterAllAppsKeyGestureEvent() - doNothing() - .whenever(quickstepKeyGestureEventsManagerSpy) - .registerOverviewKeyGestureEvent(any()) - doNothing() - .whenever(quickstepKeyGestureEventsManagerSpy) - .unregisterOverviewKeyGestureEvent() taskbarManager = TestUtil.getOnUiThread { object : - TaskbarManagerImpl( + TaskbarManager( context, - AllAppsActionManager( - context, - UI_HELPER_EXECUTOR, - quickstepKeyGestureEventsManagerSpy, - ) { + AllAppsActionManager(context, UI_HELPER_EXECUTOR) { PendingIntent(IIntentSender.Default()) }, object : TaskbarNavButtonCallbacks {}, - RecentsWindowManager.REPOSITORY_INSTANCE.get(context), - LauncherDisplaysWithDecorationsRepositoryCompat.INSTANCE.get( - context - ), - ProductionDispatchers.main, + RecentsDisplayModel.INSTANCE.get(context), ) { override fun recreateTaskbars() { super.recreateTaskbars() @@ -152,18 +123,6 @@ class TaskbarUnitTestRule( controllerInjectionCallback.invoke() } } - - override fun recreateTaskbarForDisplay(displayId: Int, duration: Int) { - super.recreateTaskbarForDisplay(displayId, duration) - if ( - displayId == context.displayId && currentActivityContext != null - ) { - injectControllers() - // TODO(b/346394875): we should test a non-default uiController. - activityContext.setUIController(TaskbarUIController.DEFAULT) - controllerInjectionCallback.invoke() - } - } } } @@ -184,7 +143,6 @@ class TaskbarUnitTestRule( base.evaluate() } finally { instrumentation.runOnMainSync { taskbarManager.destroy() } - context.displayControllerSpy?.cleanup() } } } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarWindowSandboxContext.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarWindowSandboxContext.kt index 64a6902c38..d96e06eca5 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarWindowSandboxContext.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarWindowSandboxContext.kt @@ -20,18 +20,34 @@ import android.content.Context import android.content.ContextWrapper import android.hardware.display.DisplayManager import android.hardware.display.VirtualDisplay -import android.view.Display import android.view.Display.DEFAULT_DISPLAY import androidx.test.core.app.ApplicationProvider +import com.android.launcher3.LauncherPrefs +import com.android.launcher3.dagger.ApplicationContext +import com.android.launcher3.dagger.LauncherAppComponent +import com.android.launcher3.dagger.LauncherAppSingleton +import com.android.launcher3.statehandlers.DesktopVisibilityController +import com.android.launcher3.util.AllModulesMinusWMProxy +import com.android.launcher3.util.DaggerSingletonTracker +import com.android.launcher3.util.DisplayController +import com.android.launcher3.util.FakePrefsModule import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.SettingsCache import com.android.launcher3.util.SettingsCacheSandbox +import com.android.launcher3.util.window.WindowManagerProxy import com.android.quickstep.SystemUiProxy +import dagger.Binds +import dagger.BindsInstance +import dagger.Component +import dagger.Module +import dagger.Provides +import javax.inject.Inject import org.junit.rules.ExternalResource import org.junit.rules.RuleChain import org.junit.rules.TestRule import org.junit.runner.Description import org.junit.runners.model.Statement -import org.mockito.kotlin.whenever +import org.mockito.kotlin.spy /** * [SandboxApplication] for running Taskbar tests. @@ -53,20 +69,6 @@ private constructor( override fun after() = virtualDisplay.release() } - // Filter out DEFAULT_DISPLAY in case code accesses displays property. The primary virtual - // display has a different ID. - private val sandboxDisplayManagerRule = - object : ExternalResource() { - override fun before() { - val dm = base.spyService(DisplayManager::class.java) - whenever(dm.displays).thenAnswer { i -> - @Suppress("UNCHECKED_CAST") - val displays = i.callRealMethod() as? Array<Display> ?: emptyArray<Display>() - displays.filter { it.displayId != DEFAULT_DISPLAY }.toTypedArray() - } - } - } - private val singletonSetupRule = object : ExternalResource() { override fun before() { @@ -82,7 +84,6 @@ private constructor( override fun apply(statement: Statement, description: Description): Statement { return RuleChain.outerRule(virtualDisplayRule) .around(base) - .around(sandboxDisplayManagerRule) .around(singletonSetupRule) .apply(statement, description) } @@ -108,7 +109,7 @@ private constructor( } return TaskbarWindowSandboxContext( - SandboxApplication(base = base.createDisplayContext(virtualDisplay.display)), + SandboxApplication(base.createDisplayContext(virtualDisplay.display)), virtualDisplay, params, ) @@ -116,6 +117,64 @@ private constructor( } } +/** A wrapper over display controller which allows modifying the underlying info */ +@LauncherAppSingleton +class DisplayControllerSpy +@Inject +constructor( + @ApplicationContext context: Context, + wmProxy: WindowManagerProxy, + prefs: LauncherPrefs, + lifecycle: DaggerSingletonTracker, +) : DisplayController(context, wmProxy, prefs, lifecycle) { + + var infoModifier: ((Info) -> Info)? = null + + override fun getInfo(): Info = infoModifier?.invoke(super.getInfo()) ?: super.getInfo() +} + +@Module +abstract class DisplayControllerModule { + @Binds abstract fun bindDisplayController(controller: DisplayControllerSpy): DisplayController +} + +@Module +object DesktopVisibilityControllerModule { + @JvmStatic + @Provides + @LauncherAppSingleton + fun provideDesktopVisibilityController( + @ApplicationContext context: Context, + systemUiProxy: SystemUiProxy, + lifecycleTracker: DaggerSingletonTracker, + ): DesktopVisibilityController { + return spy(DesktopVisibilityController(context, systemUiProxy, lifecycleTracker)) + } +} + +@LauncherAppSingleton +@Component( + modules = + [ + AllModulesMinusWMProxy::class, + FakePrefsModule::class, + DisplayControllerModule::class, + TaskbarSandboxModule::class, + DesktopVisibilityControllerModule::class, + ] +) +interface TaskbarSandboxComponent : LauncherAppComponent { + + @Component.Builder + interface Builder : LauncherAppComponent.Builder { + @BindsInstance fun bindSystemUiProxy(proxy: SystemUiProxy): Builder + + @BindsInstance fun bindSettingsCache(settingsCache: SettingsCache): Builder + + override fun build(): TaskbarSandboxComponent + } +} + /** Include additional bindings when building a [TaskbarSandboxComponent]. */ data class SandboxParams( val systemUiProxyProvider: (Context) -> SystemUiProxy = { SystemUiProxy(it) }, diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/AbsSwipeUpHandlerTestCase.java b/quickstep/tests/multivalentTests/src/com/android/quickstep/AbsSwipeUpHandlerTestCase.java index ec49237e96..6adb7b4052 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/AbsSwipeUpHandlerTestCase.java +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/AbsSwipeUpHandlerTestCase.java @@ -18,16 +18,12 @@ package com.android.quickstep; import static android.view.Display.DEFAULT_DISPLAY; -import static com.android.launcher3.BaseActivity.EVENT_DESTROYED; -import static com.android.launcher3.statehandlers.DesktopVisibilityController.INACTIVE_DESK_ID; import static com.android.quickstep.AbsSwipeUpHandler.STATE_HANDLER_INVALIDATED; import static com.android.wm.shell.shared.ShellSharedConstants.KEY_EXTRA_SHELL_CAN_HAND_OFF_ANIMATION; import static com.android.wm.shell.shared.split.SplitBounds.KEY_EXTRA_SPLIT_BOUNDS; import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50; -import static junit.framework.Assert.assertNotNull; import static junit.framework.TestCase.assertFalse; -import static junit.framework.TestCase.assertNull; import static junit.framework.TestCase.assertTrue; import static org.mockito.ArgumentMatchers.any; @@ -37,9 +33,7 @@ import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.atLeast; import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; -import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoMoreInteractions; @@ -57,6 +51,7 @@ import android.os.SystemClock; import android.platform.test.annotations.DisableFlags; import android.platform.test.annotations.EnableFlags; import android.platform.test.flag.junit.SetFlagsRule; +import android.view.Display; import android.view.RemoteAnimationTarget; import android.view.SurfaceControl; import android.view.ViewTreeObserver; @@ -68,10 +63,9 @@ import com.android.launcher3.DeviceProfile; import com.android.launcher3.LauncherRootView; import com.android.launcher3.dragndrop.DragLayer; import com.android.launcher3.statemanager.BaseState; -import com.android.launcher3.statemanager.StateManager; import com.android.launcher3.statemanager.StatefulContainer; +import com.android.launcher3.util.LauncherModelHelper; import com.android.launcher3.util.MSDLPlayerWrapper; -import com.android.launcher3.util.SandboxApplication; import com.android.launcher3.util.SystemUiController; import com.android.quickstep.util.ContextInitListener; import com.android.quickstep.util.MotionPauseDetector; @@ -84,7 +78,6 @@ import com.android.wm.shell.shared.split.SplitBounds; import com.google.android.msdl.data.model.MSDLToken; import org.junit.Before; -import org.junit.Ignore; import org.junit.Rule; import org.junit.Test; import org.mockito.ArgumentCaptor; @@ -102,23 +95,17 @@ public abstract class AbsSwipeUpHandlerTestCase< SWIPE_HANDLER extends AbsSwipeUpHandler<RECENTS_CONTAINER, RECENTS_VIEW, STATE_TYPE>, CONTAINER_INTERFACE extends BaseContainerInterface<STATE_TYPE, RECENTS_CONTAINER>> { - @Rule - public final MockitoRule mMockitoRule = MockitoJUnit.rule(); - - @Rule - public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); - - @Rule - public final SandboxApplication mContext = new SandboxApplication(); - + protected final LauncherModelHelper mLauncherModelHelper = new LauncherModelHelper(); + protected final LauncherModelHelper.SandboxModelContext mContext = + mLauncherModelHelper.sandboxContext; protected final InputConsumerController mInputConsumerController = InputConsumerController.getRecentsAnimationInputConsumer(); protected final ActivityManager.RunningTaskInfo mRunningTaskInfo = new ActivityManager.RunningTaskInfo(); protected final TopTaskTracker.CachedTaskInfo mCachedTaskInfo = new TopTaskTracker.CachedTaskInfo( - Collections.singletonList(mRunningTaskInfo), mContext, DEFAULT_DISPLAY, - INACTIVE_DESK_ID); + Collections.singletonList(mRunningTaskInfo), /* canEnterDesktop = */ false, + DEFAULT_DISPLAY); protected final RemoteAnimationTarget mRemoteAnimationTarget = new RemoteAnimationTarget( /* taskId= */ 0, /* mode= */ RemoteAnimationTarget.MODE_CLOSING, @@ -137,45 +124,8 @@ public abstract class AbsSwipeUpHandlerTestCase< /* taskInfo= */ mRunningTaskInfo, /* allowEnterPip= */ false); - protected final RemoteAnimationTarget mRemoteAnimationLeftTop = new RemoteAnimationTarget( - /* taskId= */ 1, - /* mode= */ RemoteAnimationTarget.MODE_CLOSING, - /* leash= */ new SurfaceControl(), - /* isTranslucent= */ false, - /* clipRect= */ null, - /* contentInsets= */ null, - /* prefixOrderIndex= */ 0, - /* position= */ null, - /* localBounds= */ null, - /* screenSpaceBounds= */ null, - new Configuration().windowConfiguration, - /* isNotInRecents= */ false, - /* startLeash= */ null, - /* startBounds= */ null, - /* taskInfo= */ mRunningTaskInfo, - /* allowEnterPip= */ false); - - protected final RemoteAnimationTarget mRemoteAnimationRightBottom = new RemoteAnimationTarget( - /* taskId= */ 2, - /* mode= */ RemoteAnimationTarget.MODE_CLOSING, - /* leash= */ new SurfaceControl(), - /* isTranslucent= */ false, - /* clipRect= */ null, - /* contentInsets= */ null, - /* prefixOrderIndex= */ 0, - /* position= */ null, - /* localBounds= */ null, - /* screenSpaceBounds= */ null, - new Configuration().windowConfiguration, - /* isNotInRecents= */ false, - /* startLeash= */ null, - /* startBounds= */ null, - /* taskInfo= */ mRunningTaskInfo, - /* allowEnterPip= */ false); - protected RecentsAnimationTargets mRecentsAnimationTargets; protected TaskAnimationManager mTaskAnimationManager; - protected StateManager<STATE_TYPE, RECENTS_CONTAINER> mStateManager; @Mock protected CONTAINER_INTERFACE mActivityInterface; @Mock protected ContextInitListener<?> mContextInitListener; @@ -187,9 +137,12 @@ public abstract class AbsSwipeUpHandlerTestCase< @Mock protected SystemUiController mSystemUiController; @Mock protected GestureState mGestureState; @Mock protected MSDLPlayerWrapper mMSDLPlayerWrapper; - @Mock protected RecentsAnimationDeviceState mDeviceState; - @Mock protected RotationTouchHelper mRotationTouchHelper; - @Mock protected StateManager.AtomicAnimationFactory<STATE_TYPE> mAtomicAnimationFactory; + + @Rule + public final MockitoRule mMockitoRule = MockitoJUnit.rule(); + + @Rule + public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); @Before public void setUpAnimationTargets() { @@ -198,12 +151,12 @@ public abstract class AbsSwipeUpHandlerTestCase< extras.putParcelable(KEY_EXTRA_SPLIT_BOUNDS, new SplitBounds( /* leftTopBounds = */ new Rect(), /* rightBottomBounds = */ new Rect(), - /* leftTopTaskId = */ mRemoteAnimationLeftTop.taskId, - /* rightBottomTaskId = */ mRemoteAnimationRightBottom.taskId, + /* leftTopTaskId = */ -1, + /* rightBottomTaskId = */ -1, /* snapPosition = */ SNAP_TO_2_50_50)); mRecentsAnimationTargets = new RecentsAnimationTargets( - new RemoteAnimationTarget[] {mRemoteAnimationLeftTop}, - new RemoteAnimationTarget[] {mRemoteAnimationRightBottom}, + new RemoteAnimationTarget[] {mRemoteAnimationTarget}, + new RemoteAnimationTarget[] {mRemoteAnimationTarget}, new RemoteAnimationTarget[] {mRemoteAnimationTarget}, /* homeContentInsets= */ new Rect(), /* minimizedHomeBounds= */ null, @@ -240,8 +193,9 @@ public abstract class AbsSwipeUpHandlerTestCase< @Before public void setUpRecentsContainer() { - mTaskAnimationManager = spy(new TaskAnimationManager(mContext, DEFAULT_DISPLAY)); - RECENTS_CONTAINER recentsContainer = getRecentsContainer(); + mTaskAnimationManager = new TaskAnimationManager(mContext, + RecentsAnimationDeviceState.INSTANCE.get(mContext), DEFAULT_DISPLAY); + RecentsViewContainer recentsContainer = getRecentsContainer(); RECENTS_VIEW recentsView = getRecentsView(); when(recentsContainer.getDeviceProfile()).thenReturn(new DeviceProfile()); @@ -249,7 +203,6 @@ public abstract class AbsSwipeUpHandlerTestCase< when(recentsContainer.getDragLayer()).thenReturn(mDragLayer); when(recentsContainer.getRootView()).thenReturn(mRootView); when(recentsContainer.getSystemUiController()).thenReturn(mSystemUiController); - when(recentsContainer.createAtomicAnimationFactory()).thenReturn(mAtomicAnimationFactory); when(mActivityInterface.createActivityInitListener(any())) .thenReturn(mContextInitListener); doReturn(recentsContainer).when(mActivityInterface).getCreatedContainer(); @@ -257,10 +210,6 @@ public abstract class AbsSwipeUpHandlerTestCase< answer.<Runnable>getArgument(0).run(); return this; }).when(recentsContainer).runOnBindToTouchInteractionService(any()); - - mStateManager = spy(new StateManager<>(recentsContainer, getBaseState())); - - doReturn(mStateManager).when(recentsContainer).getStateManager(); } @Test @@ -370,24 +319,6 @@ public abstract class AbsSwipeUpHandlerTestCase< }); } - @Test - @Ignore("b/418979038") - public void invalidateHandlerWithLauncher_runsGestureAnimationEndCallback() { - SWIPE_HANDLER handler = createSwipeHandler(); - Runnable onGestureAnimationEndCallback = mock(Runnable.class); - handler.setGestureAnimationEndCallback(onGestureAnimationEndCallback); - handler.onActivityInit(true); // Sets STATE_LAUNCHER_PRESENT - - // Use onConsumerAboutToBeSwitched to call reset(),to sets STATE_HANDLER_INVALIDATED. This - // will then call invalidateHandlerWithLauncher. This will hit the reset() in the else - // condition of onConsumerAboutToBeSwitched, as the gesture state is a mock and will - // return false for the booleans checked in the if-condition. - handler.onConsumerAboutToBeSwitched(); - - verify(getRecentsView()).onGestureAnimationEnd(); - verify(onGestureAnimationEndCallback).run(); - } - @Test @EnableFlags(com.android.launcher3.Flags.FLAG_MSDL_FEEDBACK) public void onMotionPauseDetected_playsSwipeThresholdToken() { @@ -399,39 +330,6 @@ public abstract class AbsSwipeUpHandlerTestCase< verifyNoMoreInteractions(mMSDLPlayerWrapper); } - @Test - public void testOnContainerDestroy_cleansUpSwipeHandler() { - SWIPE_HANDLER swipeHandler = createSwipeHandler(); - - swipeHandler.onActivityInit(true); - - RECENTS_CONTAINER container = getRecentsContainer(); - ArgumentCaptor<Runnable> onContainerDestroyCallbackCaptor = - ArgumentCaptor.forClass(Runnable.class); - - verify(container) - .addEventCallback(eq(EVENT_DESTROYED), onContainerDestroyCallbackCaptor.capture()); - - assertNotNull(swipeHandler.mRecentsView); - assertNotNull(swipeHandler.mContainer); - - onContainerDestroyCallbackCaptor.getValue().run(); - - assertNull(swipeHandler.mRecentsView); - assertNull(swipeHandler.mContainer); - verify(mTaskAnimationManager).onLauncherDestroyed(); - runOnMainSync(() -> verify(mContextInitListener) - .unregister(eq("AbsSwipeUpHandler.mLauncherOnDestroyCallback"))); - } - - @Test - public void test_noActivityInit_doesNotThrowException() { - // Do not trigger onActivityInit to ensure AbsSwipeUpHandler.mRecentsView and - // AbsSwipeUpHandler.mContainer are null - createSwipeUpHandlerForGesture( - GestureState.GestureEndTarget.HOME, /* triggerOnActivityInit= */ false); - } - /** * Verifies that RecentsAnimationController#finish() is called, and captures and runs any * callback that was passed to it. This ensures that STATE_CURRENT_TASK_FINISHED is correctly @@ -453,20 +351,13 @@ public abstract class AbsSwipeUpHandlerTestCase< } private SWIPE_HANDLER createSwipeUpHandlerForGesture(GestureState.GestureEndTarget endTarget) { - return createSwipeUpHandlerForGesture(endTarget, true); - } - - private SWIPE_HANDLER createSwipeUpHandlerForGesture( - GestureState.GestureEndTarget endTarget, boolean triggerOnActivityInit) { boolean isQuickSwitch = endTarget == GestureState.GestureEndTarget.NEW_TASK; doReturn(mState).when(mActivityInterface).stateFromGestureEndTarget(any()); SWIPE_HANDLER swipeHandler = createSwipeHandler(SystemClock.uptimeMillis(), isQuickSwitch); - if (triggerOnActivityInit) { - swipeHandler.onActivityInit(/* alreadyOnHome= */ false); - } + swipeHandler.onActivityInit(/* alreadyOnHome= */ false); swipeHandler.onGestureStarted(isQuickSwitch); onRecentsAnimationStart(swipeHandler); @@ -487,7 +378,7 @@ public abstract class AbsSwipeUpHandlerTestCase< private void onRecentsAnimationStart(SWIPE_HANDLER absSwipeUpHandler) { runOnMainSync(() -> absSwipeUpHandler.onRecentsAnimationStart( - mRecentsAnimationController, mRecentsAnimationTargets, /* transitionInfo= */ null)); + mRecentsAnimationController, mRecentsAnimationTargets, /* transitionInfo= */null)); } protected static void runOnMainSync(Runnable runnable) { @@ -504,11 +395,8 @@ public abstract class AbsSwipeUpHandlerTestCase< long touchTimeMs, boolean continuingLastGesture); @NonNull - protected abstract RECENTS_CONTAINER getRecentsContainer(); + protected abstract RecentsViewContainer getRecentsContainer(); @NonNull protected abstract RECENTS_VIEW getRecentsView(); - - @NonNull - protected abstract STATE_TYPE getBaseState(); } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/AllAppsActionManagerTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/AllAppsActionManagerTest.kt index acfa9b40eb..a1bd107caf 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/AllAppsActionManagerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/AllAppsActionManagerTest.kt @@ -18,7 +18,6 @@ package com.android.quickstep import android.app.PendingIntent import android.content.IIntentSender -import android.hardware.input.InputManager import android.provider.Settings import android.provider.Settings.Secure.USER_SETUP_COMPLETE import androidx.test.ext.junit.runners.AndroidJUnit4 @@ -30,7 +29,6 @@ import com.android.launcher3.util.SandboxApplication import com.android.launcher3.util.SettingsCache import com.android.launcher3.util.SettingsCacheSandbox import com.android.launcher3.util.TestUtil -import com.android.quickstep.input.QuickstepKeyGestureEventsManager import com.google.common.truth.Truth.assertThat import dagger.BindsInstance import dagger.Component @@ -41,11 +39,6 @@ import org.junit.Before import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.Mockito.spy -import org.mockito.Mockito.verify -import org.mockito.kotlin.any -import org.mockito.kotlin.doNothing -import org.mockito.kotlin.whenever private const val TIMEOUT = 5L private val USER_SETUP_COMPLETE_URI = Settings.Secure.getUriFor(USER_SETUP_COMPLETE) @@ -56,30 +49,24 @@ class AllAppsActionManagerTest { private val bgExecutor = UI_HELPER_EXECUTOR @get:Rule val context = SandboxApplication() - private val inputManager = context.spyService(InputManager::class.java) private val settingsCacheSandbox = SettingsCacheSandbox().also { it[USER_SETUP_COMPLETE_URI] = 1 } - private val quickstepKeyGestureEventsManager by - lazy(LazyThreadSafetyMode.NONE) { spy(QuickstepKeyGestureEventsManager(context)) } private val allAppsActionManager by lazy(LazyThreadSafetyMode.NONE) { - AllAppsActionManager(context, bgExecutor, quickstepKeyGestureEventsManager) { + AllAppsActionManager(context, bgExecutor) { callbackSemaphore.release() PendingIntent(IIntentSender.Default()) } } @Before - fun setUp() { + fun initDaggerComponent() { context.initDaggerComponent( DaggerAllAppsActionManagerTestComponent.builder() .bindSettingsCache(settingsCacheSandbox.cache) ) - - doNothing().whenever(inputManager).registerKeyGestureEventHandler(any(), any()) - doNothing().whenever(inputManager).unregisterKeyGestureEventHandler(any()) } @After fun destroyManager() = allAppsActionManager.onDestroy() @@ -87,19 +74,15 @@ class AllAppsActionManagerTest { @Test fun taskbarPresent_actionRegistered() { allAppsActionManager.isTaskbarPresent = true - TestUtil.runOnExecutorSync(bgExecutor) {} // Force system action to register. assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() assertThat(allAppsActionManager.isActionRegistered).isTrue() - verify(quickstepKeyGestureEventsManager).registerAllAppsKeyGestureEvent(any()) } @Test fun homeAndOverviewSame_actionRegistered() { allAppsActionManager.isHomeAndOverviewSame = true - TestUtil.runOnExecutorSync(bgExecutor) {} // Force system action to register. assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() assertThat(allAppsActionManager.isActionRegistered).isTrue() - verify(quickstepKeyGestureEventsManager).registerAllAppsKeyGestureEvent(any()) } @Test @@ -110,7 +93,6 @@ class AllAppsActionManagerTest { allAppsActionManager.isTaskbarPresent = false TestUtil.runOnExecutorSync(bgExecutor) {} // Force system action to unregister. assertThat(allAppsActionManager.isActionRegistered).isFalse() - verify(quickstepKeyGestureEventsManager).unregisterAllAppsKeyGestureEvent() } @Test @@ -121,7 +103,6 @@ class AllAppsActionManagerTest { TestUtil.runOnExecutorSync(bgExecutor) {} // Force system action to unregister. assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() assertThat(allAppsActionManager.isActionRegistered).isFalse() - verify(quickstepKeyGestureEventsManager).unregisterAllAppsKeyGestureEvent() } @Test @@ -155,10 +136,8 @@ class AllAppsActionManagerTest { allAppsActionManager.isTaskbarPresent = true settingsCacheSandbox[USER_SETUP_COMPLETE_URI] = 1 - TestUtil.runOnExecutorSync(bgExecutor) {} // Force system action to register. assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() assertThat(allAppsActionManager.isActionRegistered).isTrue() - verify(quickstepKeyGestureEventsManager).registerAllAppsKeyGestureEvent(any()) } @Test @@ -167,17 +146,8 @@ class AllAppsActionManagerTest { allAppsActionManager.isTaskbarPresent = true allAppsActionManager.isSetupUiVisible = false - TestUtil.runOnExecutorSync(bgExecutor) {} // Force system action to register. assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() assertThat(allAppsActionManager.isActionRegistered).isTrue() - verify(quickstepKeyGestureEventsManager).registerAllAppsKeyGestureEvent(any()) - } - - @Test - fun onDestroy_shouldUnregisterAllAppsKeyGestureHandler() { - allAppsActionManager.onDestroy() - - verify(quickstepKeyGestureEventsManager).unregisterAllAppsKeyGestureEvent() } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/DisplayModelTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/DisplayModelTest.kt index 3aab528437..fa7907fa4b 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/DisplayModelTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/DisplayModelTest.kt @@ -21,23 +21,16 @@ import android.view.Display import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest -import com.android.app.displaylib.DisplaysWithDecorationsRepositoryCompat import java.io.PrintWriter -import kotlinx.coroutines.test.StandardTestDispatcher import org.junit.Assert.assertNotNull import org.junit.Assert.assertNull import org.junit.Test import org.junit.runner.RunWith -import org.mockito.kotlin.mock @SmallTest @RunWith(AndroidJUnit4::class) class DisplayModelTest { private val context: Context = ApplicationProvider.getApplicationContext() - private val systemDecorationChangeObserver = - SystemDecorationChangeObserver.INSTANCE.get(context) - private val displayRepositoryCompat = mock<DisplaysWithDecorationsRepositoryCompat>() - private val dispatcher = StandardTestDispatcher() class TestableResource : DisplayModel.DisplayResource() { var isCleanupCalled = false @@ -52,13 +45,7 @@ class DisplayModelTest { } private val testableDisplayModel = - object : - DisplayModel<TestableResource>( - context, - systemDecorationChangeObserver, - displayRepositoryCompat, - dispatcher, - ) { + object : DisplayModel<TestableResource>(context) { override fun createDisplayResource(display: Display): TestableResource { return TestableResource() } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/FallbackSwipeHandlerTestCase.java b/quickstep/tests/multivalentTests/src/com/android/quickstep/FallbackSwipeHandlerTestCase.java index 109a52e2df..3489519e74 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/FallbackSwipeHandlerTestCase.java +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/FallbackSwipeHandlerTestCase.java @@ -45,8 +45,6 @@ public class FallbackSwipeHandlerTestCase extends AbsSwipeUpHandlerTestCase< return new FallbackSwipeHandler( mContext, mTaskAnimationManager, - mDeviceState, - mRotationTouchHelper, mGestureState, touchTimeMs, continuingLastGesture, @@ -65,10 +63,4 @@ public class FallbackSwipeHandlerTestCase extends AbsSwipeUpHandlerTestCase< protected FallbackRecentsView<RecentsActivity> getRecentsView() { return mRecentsView; } - - @NonNull - @Override - protected RecentsState getBaseState() { - return RecentsState.BG_LAUNCHER; - } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/HotseatWidthCalculationTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/HotseatWidthCalculationTest.kt index a2435188a1..a38851098e 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/HotseatWidthCalculationTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/HotseatWidthCalculationTest.kt @@ -39,7 +39,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(510) + assertThat(dp.hotseatBarEndOffset).isEqualTo(510) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(70) assertThat(dp.hotseatColumnSpan).isEqualTo(6) @@ -63,7 +63,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(510) + assertThat(dp.hotseatBarEndOffset).isEqualTo(510) assertThat(dp.numShownHotseatIcons).isEqualTo(4) assertThat(dp.hotseatBorderSpace).isEqualTo(40) assertThat(dp.hotseatColumnSpan).isEqualTo(6) @@ -86,7 +86,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(705) + assertThat(dp.hotseatBarEndOffset).isEqualTo(705) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(54) assertThat(dp.hotseatColumnSpan).isEqualTo(6) @@ -110,7 +110,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(660) + assertThat(dp.hotseatBarEndOffset).isEqualTo(660) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(100) assertThat(dp.hotseatColumnSpan).isEqualTo(6) @@ -131,7 +131,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(660) + assertThat(dp.hotseatBarEndOffset).isEqualTo(660) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(34) assertThat(dp.hotseatColumnSpan).isEqualTo(4) @@ -155,7 +155,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(660) + assertThat(dp.hotseatBarEndOffset).isEqualTo(660) assertThat(dp.numShownHotseatIcons).isEqualTo(5) assertThat(dp.hotseatBorderSpace).isEqualTo(36) assertThat(dp.hotseatColumnSpan).isEqualTo(4) @@ -174,7 +174,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(600) + assertThat(dp.hotseatBarEndOffset).isEqualTo(600) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(48) assertThat(dp.hotseatColumnSpan).isEqualTo(8) diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherRestoreEventLoggerImplTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherRestoreEventLoggerImplTest.kt index d4d76c1e76..24f9696437 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherRestoreEventLoggerImplTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherRestoreEventLoggerImplTest.kt @@ -22,8 +22,10 @@ import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.launcher3.Flags import com.android.launcher3.LauncherSettings.Favorites -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.LauncherModelHelper +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.google.common.truth.Truth.assertThat +import org.junit.After import org.junit.Before import org.junit.Rule import org.junit.Test @@ -35,8 +37,9 @@ import org.junit.runner.RunWith class LauncherRestoreEventLoggerImplTest { @get:Rule val setFlagsRule = SetFlagsRule() - @get:Rule val mSandboxContext = SandboxApplication() + private val mLauncherModelHelper = LauncherModelHelper() + private val mSandboxContext: SandboxModelContext = mLauncherModelHelper.sandboxContext private lateinit var loggerUnderTest: LauncherRestoreEventLoggerImpl @Before @@ -44,6 +47,12 @@ class LauncherRestoreEventLoggerImplTest { loggerUnderTest = LauncherRestoreEventLoggerImpl(mSandboxContext) } + @After + fun teardown() { + loggerUnderTest.restoreEventLogger.clearData() + mLauncherModelHelper.destroy() + } + @Test fun `logLauncherItemsRestoreFailed logs multiple items as failing restore`() { // Given @@ -53,7 +62,7 @@ class LauncherRestoreEventLoggerImplTest { loggerUnderTest.logLauncherItemsRestoreFailed( dataType = expectedDataType, count = 5, - error = expectedError, + error = expectedError ) // Then val actualResult = loggerUnderTest.restoreEventLogger.loggingResults.first() @@ -99,7 +108,7 @@ class LauncherRestoreEventLoggerImplTest { // When loggerUnderTest.logSingleFavoritesItemRestoreFailed( favoritesId = Favorites.ITEM_TYPE_APPWIDGET, - error = expectedError, + error = expectedError ) // Then val actualResult = loggerUnderTest.restoreEventLogger.loggingResults.first() @@ -118,7 +127,7 @@ class LauncherRestoreEventLoggerImplTest { loggerUnderTest.logFavoritesItemsRestoreFailed( favoritesId = Favorites.ITEM_TYPE_DEEP_SHORTCUT, count = 5, - error = expectedError, + error = expectedError ) // Then val actualResult = loggerUnderTest.restoreEventLogger.loggingResults.first() diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherSwipeHandlerV2Test.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherSwipeHandlerV2Test.kt index 8a7361f325..5661dcf699 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherSwipeHandlerV2Test.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherSwipeHandlerV2Test.kt @@ -29,8 +29,8 @@ import com.android.launcher3.R import com.android.launcher3.dagger.LauncherAppComponent import com.android.launcher3.dagger.LauncherAppModule import com.android.launcher3.dagger.LauncherAppSingleton +import com.android.launcher3.util.LauncherModelHelper import com.android.launcher3.util.MSDLPlayerWrapper -import com.android.launcher3.util.SandboxApplication import com.android.systemui.contextualeducation.GestureType import com.android.systemui.shared.system.InputConsumerController import dagger.BindsInstance @@ -39,8 +39,8 @@ import org.junit.Before import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.Answers.RETURNS_DEEP_STUBS import org.mockito.Mock +import org.mockito.Mockito.mock import org.mockito.Mockito.spy import org.mockito.junit.MockitoJUnit import org.mockito.kotlin.eq @@ -53,28 +53,25 @@ class LauncherSwipeHandlerV2Test { @Mock private lateinit var taskAnimationManager: TaskAnimationManager - @Mock private lateinit var deviceState: RecentsAnimationDeviceState - private lateinit var gestureState: GestureState @Mock private lateinit var inputConsumerController: InputConsumerController - @Mock(answer = RETURNS_DEEP_STUBS) private lateinit var systemUiProxy: SystemUiProxy - - @Mock(answer = RETURNS_DEEP_STUBS) private lateinit var recentsModel: RecentsModel + @Mock private lateinit var systemUiProxy: SystemUiProxy @Mock private lateinit var msdlPlayerWrapper: MSDLPlayerWrapper - @Mock private lateinit var rotationTouchHelper: RotationTouchHelper - private lateinit var underTest: LauncherSwipeHandlerV2 @get:Rule val mockitoRule = MockitoJUnit.rule() - @get:Rule val sandboxContext = SandboxApplication() + + private val launcherModelHelper = LauncherModelHelper() + private val sandboxContext = launcherModelHelper.sandboxContext private val flingSpeed = -(sandboxContext.resources.getDimension(R.dimen.quickstep_fling_threshold_speed) + 1) - private lateinit var displayManager: DisplayManager + private val displayManager: DisplayManager = + sandboxContext.spyService(DisplayManager::class.java) @Before fun setup() { @@ -85,14 +82,14 @@ class LauncherSwipeHandlerV2Test { DisplayInfo(), DEFAULT_DISPLAY_ADJUSTMENTS, ) - displayManager = sandboxContext.spyService(DisplayManager::class.java) whenever(displayManager.getDisplay(eq(DEFAULT_DISPLAY))).thenReturn(display) whenever(displayManager.displays).thenReturn(arrayOf(display)) sandboxContext.initDaggerComponent( DaggerTestComponent.builder() .bindSystemUiProxy(systemUiProxy) - .bindRecentsModel(recentsModel) + .bindRotationHelper(mock(RotationTouchHelper::class.java)) + .bindRecentsState(mock(RecentsAnimationDeviceState::class.java)) ) gestureState = spy( @@ -107,8 +104,6 @@ class LauncherSwipeHandlerV2Test { LauncherSwipeHandlerV2( sandboxContext, taskAnimationManager, - deviceState, - rotationTouchHelper, gestureState, 0, false, @@ -139,9 +134,11 @@ class LauncherSwipeHandlerV2Test { interface TestComponent : LauncherAppComponent { @Component.Builder interface Builder : LauncherAppComponent.Builder { - @BindsInstance fun bindSystemUiProxy(systemUiProxy: SystemUiProxy): Builder + @BindsInstance fun bindSystemUiProxy(proxy: SystemUiProxy): Builder - @BindsInstance fun bindRecentsModel(recentsModel: RecentsModel): Builder + @BindsInstance fun bindRotationHelper(helper: RotationTouchHelper): Builder + + @BindsInstance fun bindRecentsState(state: RecentsAnimationDeviceState): Builder override fun build(): TestComponent } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherSwipeHandlerV2TestCase.java b/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherSwipeHandlerV2TestCase.java index 0051a370dc..66c4ab5ce3 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherSwipeHandlerV2TestCase.java +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/LauncherSwipeHandlerV2TestCase.java @@ -76,8 +76,6 @@ public class LauncherSwipeHandlerV2TestCase extends AbsSwipeUpHandlerTestCase< return new LauncherSwipeHandlerV2( mContext, mTaskAnimationManager, - mDeviceState, - mRotationTouchHelper, mGestureState, touchTimeMs, continuingLastGesture, @@ -96,10 +94,4 @@ public class LauncherSwipeHandlerV2TestCase extends AbsSwipeUpHandlerTestCase< protected RecentsView<QuickstepLauncher, LauncherState> getRecentsView() { return mRecentsView; } - - @NonNull - @Override - protected LauncherState getBaseState() { - return LauncherState.NORMAL; - } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/OverviewCommandHelperTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/OverviewCommandHelperTest.kt index d98cb989b5..11e0ee88b6 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/OverviewCommandHelperTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/OverviewCommandHelperTest.kt @@ -16,29 +16,20 @@ package com.android.quickstep -import android.content.Intent +import android.platform.test.flag.junit.SetFlagsRule import android.view.Display.DEFAULT_DISPLAY import androidx.test.filters.SmallTest -import com.android.app.displaylib.DisplayRepository -import com.android.app.displaylib.fakes.FakePerDisplayRepository -import com.android.app.displaylib.PerDisplayRepository -import com.android.launcher3.LauncherState -import com.android.launcher3.statemanager.StateManager -import com.android.launcher3.statemanager.StatefulActivity -import com.android.launcher3.uioverrides.QuickstepLauncher +import com.android.launcher3.Flags import com.android.launcher3.util.LauncherMultivalentJUnit -import com.android.launcher3.util.RunnableList import com.android.launcher3.util.TestDispatcherProvider +import com.android.launcher3.util.rule.setFlags import com.android.quickstep.OverviewCommandHelper.CommandInfo import com.android.quickstep.OverviewCommandHelper.CommandInfo.CommandStatus import com.android.quickstep.OverviewCommandHelper.CommandType -import com.android.quickstep.OverviewCommandHelper.Companion.TOGGLE_PREVIOUS_TIMEOUT_MS -import com.android.quickstep.views.RecentsView -import com.android.quickstep.views.TaskView +import com.android.quickstep.fallback.window.RecentsDisplayModel import com.google.common.truth.Truth.assertThat import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.delay -import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.launch import kotlinx.coroutines.runBlocking import kotlinx.coroutines.test.StandardTestDispatcher @@ -47,80 +38,64 @@ import kotlinx.coroutines.test.advanceTimeBy import kotlinx.coroutines.test.runCurrent import kotlinx.coroutines.test.runTest import org.junit.Before +import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.mockito.Mockito.doAnswer import org.mockito.Mockito.spy import org.mockito.kotlin.any -import org.mockito.kotlin.doNothing import org.mockito.kotlin.mock -import org.mockito.kotlin.verify import org.mockito.kotlin.whenever @SmallTest @RunWith(LauncherMultivalentJUnit::class) @OptIn(ExperimentalCoroutinesApi::class) class OverviewCommandHelperTest { + @get:Rule val setFlagsRule: SetFlagsRule = SetFlagsRule() + private lateinit var sut: OverviewCommandHelper private val dispatcher = StandardTestDispatcher() private val testScope = TestScope(dispatcher) private var pendingCallbacksWithDelays = mutableListOf<Long>() - private val displayRepository: DisplayRepository = mock() + private val recentsDisplayModel: RecentsDisplayModel = mock() + private val defaultDisplayResource: RecentsDisplayModel.RecentsDisplayResource = mock() + private val secondaryDisplayResource: RecentsDisplayModel.RecentsDisplayResource = mock() private val executeCommandDisplayIds = mutableListOf<Int>() - private val recentView: RecentsView<*, *> = mock() - private val stateManager: StateManager<LauncherState, StatefulActivity<LauncherState>> = mock() - private val containerInterface: BaseActivityInterface<LauncherState, QuickstepLauncher> = mock() - private val taskAnimationManager: TaskAnimationManager = mock() - private val touchInteractionService: TouchInteractionService = mock() - private var elapsedRealtime = 100L - private fun setupDefaultDisplay() { - whenever(displayRepository.displayIds).thenReturn(MutableStateFlow(setOf(DEFAULT_DISPLAY))) + whenever(defaultDisplayResource.displayId).thenReturn(DEFAULT_DISPLAY) + whenever(recentsDisplayModel.activeDisplayResources) + .thenReturn(listOf(defaultDisplayResource)) } private fun setupMultipleDisplays() { - whenever(displayRepository.displayIds) - .thenReturn(MutableStateFlow(setOf(DEFAULT_DISPLAY, 1))) + whenever(defaultDisplayResource.displayId).thenReturn(DEFAULT_DISPLAY) + whenever(secondaryDisplayResource.displayId).thenReturn(1) + whenever(recentsDisplayModel.activeDisplayResources) + .thenReturn(listOf(defaultDisplayResource, secondaryDisplayResource)) } @Suppress("UNCHECKED_CAST") @Before fun setup() { - setupDefaultDisplay() + setFlagsRule.setFlags(true, Flags.FLAG_ENABLE_OVERVIEW_COMMAND_HELPER_TIMEOUT) - val overviewComponentObserver = mock<OverviewComponentObserver>() - whenever(overviewComponentObserver.getContainerInterface(any())) - .thenReturn(containerInterface) - whenever(overviewComponentObserver.getHomeIntent(any())).thenReturn(mock<Intent>()) - whenever(recentView.getStateManager()).thenReturn(stateManager) - whenever(containerInterface.switchToRecentsIfVisible(any())).thenReturn(true) - whenever(taskAnimationManager.maybeStartHomeAction(any())).thenAnswer { invocation -> - invocation.getArgument<Runnable>(0).run() - } + setupDefaultDisplay() sut = spy( OverviewCommandHelper( - touchInteractionService = touchInteractionService, - overviewComponentObserver = overviewComponentObserver, + touchInteractionService = mock(), + overviewComponentObserver = mock(), dispatcherProvider = TestDispatcherProvider(dispatcher), - displayRepository = displayRepository, + recentsDisplayModel = recentsDisplayModel, + focusState = mock(), taskbarManager = mock(), - taskAnimationManagerRepository = - FakePerDisplayRepository<TaskAnimationManager> { _ -> taskAnimationManager }, - elapsedRealtime = ::elapsedRealtime, ) ) - } - private fun addCallbackDelay(delayInMillis: Long = 0) { - pendingCallbacksWithDelays.add(delayInMillis) - } - - private fun mockExecuteCommand() { doAnswer { invocation -> val pendingCallback = invocation.arguments[1] as () -> Unit @@ -141,10 +116,13 @@ class OverviewCommandHelperTest { .executeCommand(any<CommandInfo>(), any()) } + private fun addCallbackDelay(delayInMillis: Long = 0) { + pendingCallbacksWithDelays.add(delayInMillis) + } + @Test fun whenFirstCommandIsAdded_executeCommandImmediately() = testScope.runTest { - mockExecuteCommand() // Add command to queue val commandInfo: CommandInfo = sut.addCommand(CommandType.HOME)!! assertThat(commandInfo.status).isEqualTo(CommandStatus.IDLE) @@ -155,7 +133,6 @@ class OverviewCommandHelperTest { @Test fun whenFirstCommandIsAdded_executeCommandImmediately_WithCallbackDelay() = testScope.runTest { - mockExecuteCommand() addCallbackDelay(100) // Add command to queue @@ -173,7 +150,6 @@ class OverviewCommandHelperTest { @Test fun whenFirstCommandIsPendingCallback_NextCommandWillWait() = testScope.runTest { - mockExecuteCommand() // Add command to queue addCallbackDelay(100) val commandType1 = CommandType.HOME @@ -181,7 +157,7 @@ class OverviewCommandHelperTest { assertThat(commandInfo1.status).isEqualTo(CommandStatus.IDLE) addCallbackDelay(100) - val commandType2 = CommandType.SHOW_ALT_TAB + val commandType2 = CommandType.SHOW val commandInfo2: CommandInfo = sut.addCommand(commandType2)!! assertThat(commandInfo2.status).isEqualTo(CommandStatus.IDLE) @@ -200,7 +176,6 @@ class OverviewCommandHelperTest { @Test fun whenCommandTakesTooLong_TriggerTimeout_AndExecuteNextCommand() = testScope.runTest { - mockExecuteCommand() // Add command to queue addCallbackDelay(QUEUE_TIMEOUT) val commandType1 = CommandType.HOME @@ -208,7 +183,7 @@ class OverviewCommandHelperTest { assertThat(commandInfo1.status).isEqualTo(CommandStatus.IDLE) addCallbackDelay(100) - val commandType2 = CommandType.SHOW_ALT_TAB + val commandType2 = CommandType.SHOW val commandInfo2: CommandInfo = sut.addCommand(commandType2)!! assertThat(commandInfo2.status).isEqualTo(CommandStatus.IDLE) @@ -227,7 +202,6 @@ class OverviewCommandHelperTest { @Test fun whenAllDisplaysCommandIsAdded_singleCommandProcessedForDefaultDisplay() = testScope.runTest { - mockExecuteCommand() executeCommandDisplayIds.clear() // Add command to queue val commandInfo: CommandInfo = sut.addCommandsForAllDisplays(CommandType.HOME)!! @@ -240,7 +214,6 @@ class OverviewCommandHelperTest { @Test fun whenAllDisplaysCommandIsAdded_multipleCommandsProcessedForMultipleDisplays() = testScope.runTest { - mockExecuteCommand() setupMultipleDisplays() executeCommandDisplayIds.clear() // Add command to queue @@ -255,7 +228,6 @@ class OverviewCommandHelperTest { @Test fun whenAllExceptDisplayCommandIsAdded_otherDisplayProcessed() = testScope.runTest { - mockExecuteCommand() setupMultipleDisplays() executeCommandDisplayIds.clear() // Add command to queue @@ -270,7 +242,6 @@ class OverviewCommandHelperTest { @Test fun whenSingleDisplayCommandIsAdded_thatDisplayIsProcessed() = testScope.runTest { - mockExecuteCommand() executeCommandDisplayIds.clear() val displayId = 5 // Add command to queue @@ -281,151 +252,6 @@ class OverviewCommandHelperTest { assertThat(executeCommandDisplayIds).containsExactly(displayId) } - @Test - fun recentViewNotVisible_toggleOverviewPrev_goToOverview() = - testScope.runTest { - whenever(containerInterface.getVisibleRecentsView<RecentsView<*, *>>()).thenReturn(null) - sut.addCommand(CommandType.TOGGLE_OVERVIEW_PREVIOUS)!! - runCurrent() - verify(containerInterface).switchToRecentsIfVisible(any()) - } - - @Test - fun recentViewVisible_toggleOverviewPrev_goToHome() = - testScope.runTest { - whenever(containerInterface.getVisibleRecentsView<RecentsView<*, *>>()) - .thenReturn(recentView) - sut.addCommand(CommandType.TOGGLE_OVERVIEW_PREVIOUS)!! - runCurrent() - verify(recentView).startHome() - } - - @Test - fun recentViewVisible_hasRunningTask_toggleOverviewPrev_goToPrevTask() = - testScope.runTest { - whenever(containerInterface.getVisibleRecentsView<RecentsView<*, *>>()) - .thenReturn(recentView) - val mockTask = mock<TaskView>() - whenever(recentView.runningTaskView).thenReturn(mockTask) - - sut.addCommand(CommandType.TOGGLE_OVERVIEW_PREVIOUS)!! - runCurrent() - - verify(mockTask).launchWithAnimation() - } - - @Test - fun recentViewVisible_hasRunningTask_toggle() = - testScope.runTest { - val callbackList = RunnableList() - - fun getMockTask(vararg elements: Int) = - mock<TaskView>().apply { - whenever(taskIdSet).thenReturn(elements.toSet()) - whenever(recentView.getTaskViewByTaskIds(elements)).thenReturn(this) - whenever(launchWithAnimation()).thenReturn(callbackList) - } - val mockTask1 = getMockTask(1, 2, 3) - val mockTask2 = getMockTask(4, 5) - val mockTask3 = getMockTask(6, 7) - - // TOGGLE with a runningTaskView should go to nextTaskView - whenever(containerInterface.getVisibleRecentsView<RecentsView<*, *>>()) - .thenReturn(recentView) - whenever(recentView.runningTaskView).thenReturn(mockTask1) - whenever(recentView.nextTaskView).thenReturn(mockTask2) - sut.addCommand(CommandType.TOGGLE) - runCurrent() - verify(mockTask2).launchWithAnimation() - callbackList.executeAllAndDestroy() - - // Next TOGGLE with runningTaskView will return to previous runningTaskView - whenever(recentView.runningTaskView).thenReturn(mockTask2) - whenever(recentView.nextTaskView).thenReturn(mockTask3) - sut.addCommand(CommandType.TOGGLE) - runCurrent() - verify(mockTask1).launchWithAnimation() - callbackList.executeAllAndDestroy() - - // After TOGGLE_PREVIOUS_TIMEOUT_MS has passed, subsequent TOGGLE will go to - // nextTaskView again. - whenever(recentView.runningTaskView).thenReturn(mockTask1) - whenever(recentView.nextTaskView).thenReturn(mockTask3) - sut.addCommand(CommandType.TOGGLE) - elapsedRealtime += TOGGLE_PREVIOUS_TIMEOUT_MS - runCurrent() - verify(mockTask3).launchWithAnimation() - } - - @Test - fun recentViewVisible_noRunningTask_toggle_goToFirstNonDesktopTaskView() = - testScope.runTest { - val firstNonDesktopTaskView = mock<TaskView>() - val lastDesktopTaskView = mock<TaskView>() - val previousTaskView = mock<TaskView>() - val nextTaskView = mock<TaskView>() - - whenever(containerInterface.getVisibleRecentsView<RecentsView<*, *>>()) - .thenReturn(recentView) - whenever(recentView.runningTaskView).thenReturn(null) - whenever(recentView.firstNonDesktopTaskView).thenReturn(firstNonDesktopTaskView) - whenever(recentView.lastDesktopTaskView).thenReturn(lastDesktopTaskView) - whenever(recentView.previousTaskView).thenReturn(previousTaskView) - whenever(recentView.nextTaskView).thenReturn(nextTaskView) - sut.addCommand(CommandType.TOGGLE) - runCurrent() - verify(firstNonDesktopTaskView).launchWithAnimation() - } - - @Test - fun recentViewVisible_noRunningTask_toggle_goToLastDesktopTaskView() = - testScope.runTest { - val firstNonDesktopTaskView = mock<TaskView>() - val lastDesktopTaskView = mock<TaskView>() - val firstTaskView = mock<TaskView>() - val previousTaskView = mock<TaskView>() - val nextTaskView = mock<TaskView>() - - whenever(containerInterface.getVisibleRecentsView<RecentsView<*, *>>()) - .thenReturn(recentView) - whenever(recentView.runningTaskView).thenReturn(null) - whenever(recentView.firstNonDesktopTaskView).thenReturn(null) - whenever(recentView.lastDesktopTaskView).thenReturn(lastDesktopTaskView) - whenever(recentView.firstTaskView).thenReturn(firstTaskView) - whenever(recentView.previousTaskView).thenReturn(previousTaskView) - whenever(recentView.nextTaskView).thenReturn(nextTaskView) - sut.addCommand(CommandType.TOGGLE) - runCurrent() - verify(lastDesktopTaskView).launchWithAnimation() - } - - @Test - fun recentViewVisible_hasRunningTask_toggle_goToPreviousTaskView() = - testScope.runTest { - val runningTaskView = mock<TaskView>() - val firstTaskView = mock<TaskView>() - val previousTaskView = mock<TaskView>() - - whenever(containerInterface.getVisibleRecentsView<RecentsView<*, *>>()) - .thenReturn(recentView) - whenever(recentView.runningTaskView).thenReturn(runningTaskView) - whenever(recentView.firstTaskView).thenReturn(firstTaskView) - whenever(recentView.previousTaskView).thenReturn(previousTaskView) - whenever(recentView.nextTaskView).thenReturn(null) - sut.addCommand(CommandType.TOGGLE) - runCurrent() - verify(previousTaskView).launchWithAnimation() - } - - @Test - fun whenHomeCommandIsAdded_executeHomeAction() = - testScope.runTest { - sut.addCommand(CommandType.HOME) - runCurrent() - verify(taskAnimationManager).maybeStartHomeAction(any()) - verify(touchInteractionService).startActivity(any()) - } - private companion object { const val QUEUE_TIMEOUT = 5001L const val EXTERNAL_DISPLAY_ID = 1 diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentTasksListTest.java b/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentTasksListTest.java index 220f2d7090..1e4315a040 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentTasksListTest.java +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentTasksListTest.java @@ -18,7 +18,8 @@ package com.android.quickstep; import static android.view.Display.DEFAULT_DISPLAY; -import static com.android.window.flags2.Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND; +import static com.android.launcher3.Flags.FLAG_ENABLE_SEPARATE_EXTERNAL_DISPLAY_TASKS; +import static com.android.window.flags.Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND; import static com.google.common.truth.Truth.assertThat; @@ -48,8 +49,8 @@ import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import com.android.internal.R; +import com.android.launcher3.statehandlers.DesktopVisibilityController; import com.android.launcher3.util.DaggerSingletonTracker; -import com.android.launcher3.util.Executors; import com.android.launcher3.util.LooperExecutor; import com.android.quickstep.util.DesktopTask; import com.android.quickstep.util.GroupTask; @@ -94,7 +95,7 @@ public class RecentTasksListTest { @Before public void setup() { MockitoAnnotations.initMocks(this); - LooperExecutor mainThreadExecutor = Executors.MAIN_EXECUTOR; + LooperExecutor mockMainThreadExecutor = mock(LooperExecutor.class); KeyguardManager mockKeyguardManager = mock(KeyguardManager.class); // Set desktop mode supported @@ -103,8 +104,9 @@ public class RecentTasksListTest { when(mResources.getBoolean(R.bool.config_canInternalDisplayHostDesktops)) .thenReturn(true); - mRecentTasksList = new RecentTasksList(mContext, mainThreadExecutor, + mRecentTasksList = new RecentTasksList(mContext, mockMainThreadExecutor, mockKeyguardManager, mSystemUiProxy, mTopTaskTracker, + mock(DesktopVisibilityController.class), mock(DaggerSingletonTracker.class)); } @@ -121,8 +123,8 @@ public class RecentTasksListTest { new RecentTaskInfo(), new RecentTaskInfo(), new SplitBounds( /* leftTopBounds = */ new Rect(), /* rightBottomBounds = */ new Rect(), - /* leftTopTaskId = */ 1, - /* rightBottomTaskId = */ 2, + /* leftTopTaskId = */ -1, + /* rightBottomTaskId = */ -1, /* snapPosition = */ SplitScreenConstants.SNAP_TO_2_50_50)); when(mSystemUiProxy.getRecentTasks(anyInt(), anyInt())) .thenReturn(new ArrayList<>(Collections.singletonList(recentTaskInfos))); @@ -217,8 +219,8 @@ public class RecentTasksListTest { new SplitBounds( /* leftTopBounds = */ new Rect(), /* rightBottomBounds = */ new Rect(), - /* leftTopTaskId = */ 1, - /* rightBottomTaskId = */ 2, + /* leftTopTaskId = */ -1, + /* rightBottomTaskId = */ -1, /* snapPosition = */ SplitScreenConstants.SNAP_TO_2_50_50)); when(mSystemUiProxy.getRecentTasks(anyInt(), anyInt())) .thenReturn(new ArrayList<>(Collections.singletonList(recentTaskInfos))); @@ -234,6 +236,39 @@ public class RecentTasksListTest { } @Test + @DisableFlags({FLAG_ENABLE_SEPARATE_EXTERNAL_DISPLAY_TASKS, + FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND}) + public void loadTasksInBackground_freeformTask_createsDesktopTask() throws Exception { + List<TaskInfo> tasks = Arrays.asList( + createRecentTaskInfo(1 /* taskId */, DEFAULT_DISPLAY), + createRecentTaskInfo(4 /* taskId */, DEFAULT_DISPLAY), + createRecentTaskInfo(5 /* taskId */, 1 /* displayId */), + createRecentTaskInfo(6 /* taskId */, 1 /* displayId */)); + GroupedTaskInfo recentTaskInfos = GroupedTaskInfo.forDeskTasks( + 0 /* deskId */, DEFAULT_DISPLAY, tasks, + Collections.emptySet() /* minimizedTaskIds */); + when(mSystemUiProxy.getRecentTasks(anyInt(), anyInt())) + .thenReturn(new ArrayList<>(Collections.singletonList(recentTaskInfos))); + + List<GroupTask> taskList = mRecentTasksList.loadTasksInBackground( + Integer.MAX_VALUE /* numTasks */, -1 /* requestId */, false /* loadKeysOnly */); + + assertEquals(1, taskList.size()); + assertEquals(TaskViewType.DESKTOP, taskList.get(0).taskViewType); + List<Task> actualFreeformTasks = taskList.get(0).getTasks(); + assertEquals(4, actualFreeformTasks.size()); + assertEquals(1, actualFreeformTasks.get(0).key.id); + assertFalse(actualFreeformTasks.get(0).isMinimized); + assertEquals(4, actualFreeformTasks.get(1).key.id); + assertFalse(actualFreeformTasks.get(1).isMinimized); + assertEquals(5, actualFreeformTasks.get(2).key.id); + assertFalse(actualFreeformTasks.get(2).isMinimized); + assertEquals(6, actualFreeformTasks.get(3).key.id); + assertFalse(actualFreeformTasks.get(3).isMinimized); + } + + @Test + @EnableFlags(FLAG_ENABLE_SEPARATE_EXTERNAL_DISPLAY_TASKS) @DisableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) public void loadTasksInBackground_freeformTask_createsDesktopTaskPerDisplay() throws Exception { List<TaskInfo> tasks = Arrays.asList( diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsAnimationDeviceStateTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsAnimationDeviceStateTest.kt index ba9e238c0d..a7370b02e9 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsAnimationDeviceStateTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsAnimationDeviceStateTest.kt @@ -1,6 +1,6 @@ package com.android.quickstep -import android.view.Display.DEFAULT_DISPLAY +import android.view.Display import androidx.test.annotation.UiThreadTest import androidx.test.filters.SmallTest import com.android.launcher3.dagger.LauncherComponentProvider @@ -14,9 +14,9 @@ import com.android.launcher3.util.LauncherMultivalentJUnit import com.android.launcher3.util.NavigationMode import com.android.launcher3.util.SandboxApplication import com.android.quickstep.util.GestureExclusionManager +import com.android.systemui.shared.system.QuickStepContract import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_DEVICE_DREAMING -import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_DISABLE_GESTURE_PIP_ANIMATING import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_DISABLE_GESTURE_SPLIT_INVOCATION import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_HOME_DISABLED import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_MAGNIFICATION_OVERLAP @@ -50,7 +50,6 @@ class RecentsAnimationDeviceStateTest { @Mock private lateinit var exclusionManager: GestureExclusionManager @Mock private lateinit var info: Info - @Mock private lateinit var rotationTouchHelper: RotationTouchHelper private lateinit var underTest: RecentsAnimationDeviceState @@ -62,11 +61,10 @@ class RecentsAnimationDeviceStateTest { underTest = RecentsAnimationDeviceState( context, - DEFAULT_DISPLAY, - rotationTouchHelper, exclusionManager, component.displayController, component.contextualSearchStateManager, + component.rotationTouchHelper, component.settingsCache, component.daggerSingletonTracker, ) @@ -154,7 +152,7 @@ class RecentsAnimationDeviceStateTest { allSysUiStates().forEach { state -> val canStartGesture = !disablingStates.contains(state) - underTest.setSysUIStateFlags(state) + underTest.setSysUIStateFlagsForDisplay(state, Display.DEFAULT_DISPLAY) assertThat(underTest.canStartTrackpadGesture()).isEqualTo(canStartGesture) } } @@ -170,7 +168,7 @@ class RecentsAnimationDeviceStateTest { ) stateToExpectedResult.forEach { (state, allowed) -> - underTest.setSysUIStateFlags(state) + underTest.setSysUIStateFlagsForDisplay(state, Display.DEFAULT_DISPLAY) assertThat(underTest.canStartTrackpadGesture()).isEqualTo(allowed) } } @@ -181,7 +179,7 @@ class RecentsAnimationDeviceStateTest { allSysUiStates().forEach { state -> val canStartGesture = !disablingStates.contains(state) - underTest.setSysUIStateFlags(state) + underTest.setSysUIStateFlagsForDisplay(state, Display.DEFAULT_DISPLAY) assertThat(underTest.canStartSystemGesture()).isEqualTo(canStartGesture) } } @@ -201,21 +199,40 @@ class RecentsAnimationDeviceStateTest { ) stateToExpectedResult.forEach { (state, gestureAllowed) -> - underTest.setSysUIStateFlags(state) + underTest.setSysUIStateFlagsForDisplay(state, Display.DEFAULT_DISPLAY) assertThat(underTest.canStartSystemGesture()).isEqualTo(gestureAllowed) } } @Test - fun startOverviewCommandForDisallowedSysUiState() { - val disallowedStates = GESTURE_DISABLING_SYSUI_STATES + SYSUI_STATE_OVERVIEW_DISABLED + fun getSystemUiStateFlags_defaultAwake() { + val NOT_EXISTENT_DISPLAY = 2 + assertThat(underTest.getSystemUiStateFlags(NOT_EXISTENT_DISPLAY)) + .isEqualTo(QuickStepContract.SYSUI_STATE_AWAKE) + } - allSysUiStates().forEach { state -> - underTest.setSysUIStateFlags(state) + @Test + fun clearSysUIStateFlagsForDisplay_displayNotReturnedAnymore() { + underTest.setSysUIStateFlagsForDisplay(1, /* displayId= */ 1) - val isAllowed = !disallowedStates.contains(state) - assertThat(underTest.canStartOverviewCommand()).isEqualTo(isAllowed) - } + assertThat(underTest.displaysWithSysUIState).contains(1) + assertThat(underTest.getSystemUiStateFlags(1)).isEqualTo(1) + + underTest.clearSysUIStateFlagsForDisplay(1) + + assertThat(underTest.displaysWithSysUIState).doesNotContain(1) + assertThat(underTest.getSystemUiStateFlags(1)) + .isEqualTo(QuickStepContract.SYSUI_STATE_AWAKE) + } + + @Test + fun setSysUIStateFlagsForDisplay_setsCorrectly() { + underTest.setSysUIStateFlagsForDisplay(1, /* displayId= */ 1) + underTest.setSysUIStateFlagsForDisplay(2, /* displayId= */ 2) + + assertThat(underTest.getSystemUiStateFlags(1)).isEqualTo(1) + assertThat(underTest.getSystemUiStateFlags(2)).isEqualTo(2) + assertThat(underTest.displaysWithSysUIState).containsAtLeast(1, 2) } private fun allSysUiStates(): List<Long> { @@ -232,7 +249,6 @@ class RecentsAnimationDeviceStateTest { SYSUI_STATE_MAGNIFICATION_OVERLAP, SYSUI_STATE_DEVICE_DREAMING, SYSUI_STATE_DISABLE_GESTURE_SPLIT_INVOCATION, - SYSUI_STATE_DISABLE_GESTURE_PIP_ANIMATING, ) private const val SYSUI_STATES_COUNT = 33 private const val DEFAULT_STATE = 0L diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsModelTest.java b/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsModelTest.java index 42c585e1cf..2eb2e4c2ca 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsModelTest.java +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsModelTest.java @@ -45,11 +45,11 @@ import com.android.launcher3.graphics.ThemeManager; import com.android.launcher3.icons.IconProvider; import com.android.launcher3.util.DaggerSingletonTracker; import com.android.launcher3.util.LockedUserState; +import com.android.launcher3.util.SplitConfigurationOptions; import com.android.quickstep.util.GroupTask; import com.android.quickstep.util.SplitTask; import com.android.systemui.shared.recents.model.Task; import com.android.systemui.shared.system.TaskStackChangeListeners; -import com.android.wm.shell.shared.split.SplitBounds; import com.android.wm.shell.shared.split.SplitScreenConstants; import org.junit.Before; @@ -74,7 +74,6 @@ public class RecentsModelTest { @Mock private RecentTasksList mTasksList; - private RecentsModel.RecentTasksChangedListener mRegisteredTaskListListener = null; @Mock private HighResLoadingState mHighResLoadingState; @@ -104,20 +103,6 @@ public class RecentsModelTest { callback.accept(mTaskResult); return null; }).when(mTasksList).getTaskKeys(anyInt(), any()); - doAnswer(invocation -> { - mRegisteredTaskListListener = invocation.getArgument(0); - return null; - }).when(mTasksList).registerRecentTasksChangedListener(any()); - doAnswer(invocation -> { - mRegisteredTaskListListener = null; - return null; - }).when(mTasksList).unregisterRecentTasksChangedListener(); - doAnswer(invocation -> { - if (mRegisteredTaskListListener != null) { - mRegisteredTaskListListener.onRecentTasksChanged(); - } - return null; - }).when(mTasksList).onRecentTasksChanged(); when(mHighResLoadingState.isEnabled()).thenReturn(true); when(mThumbnailCache.getHighResLoadingState()).thenReturn(mHighResLoadingState); @@ -201,38 +186,6 @@ public class RecentsModelTest { verify(mThemeManager, times(1)).addChangeListener(any()); } - @Test - public void recentTaskListChangesNotiftListeners() { - RecentsModel.RecentTasksChangedListener listener1 = mock( - RecentsModel.RecentTasksChangedListener.class); - RecentsModel.RecentTasksChangedListener listener2 = mock( - RecentsModel.RecentTasksChangedListener.class); - - mRecentsModel.registerRecentTasksChangedListener(listener1); - - mTasksList.onRecentTasksChanged(); - verify(listener1, times(1)).onRecentTasksChanged(); - verify(listener2, times(0)).onRecentTasksChanged(); - - mRecentsModel.registerRecentTasksChangedListener(listener2); - - mTasksList.onRecentTasksChanged(); - verify(listener1, times(2)).onRecentTasksChanged(); - verify(listener2, times(1)).onRecentTasksChanged(); - - mRecentsModel.unregisterRecentTasksChangedListener(listener1); - - mTasksList.onRecentTasksChanged(); - verify(listener1, times(2)).onRecentTasksChanged(); - verify(listener2, times(2)).onRecentTasksChanged(); - - mRecentsModel.unregisterRecentTasksChangedListener(listener2); - - mTasksList.onRecentTasksChanged(); - verify(listener1, times(2)).onRecentTasksChanged(); - verify(listener2, times(2)).onRecentTasksChanged(); - } - private RecentTasksList.TaskLoadResult getTaskResult() { RecentTasksList.TaskLoadResult allTasks = new RecentTasksList.TaskLoadResult(0, false, 1); ActivityManager.RecentTaskInfo taskInfo1 = new ActivityManager.RecentTaskInfo(); @@ -244,11 +197,11 @@ public class RecentsModelTest { Task task2 = Task.from(taskKey2, taskInfo2, false); allTasks.add( - new SplitTask(task1, task2, new SplitBounds( + new SplitTask(task1, task2, new SplitConfigurationOptions.SplitBounds( /* leftTopBounds = */ new Rect(), /* rightBottomBounds = */ new Rect(), - /* leftTopTaskId = */ 1, - /* rightBottomTaskId = */ 2, + /* leftTopTaskId = */ -1, + /* rightBottomTaskId = */ -1, /* snapPosition = */ SplitScreenConstants.SNAP_TO_2_50_50))); return allTasks; } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsWindowSwipeHandlerTestCase.java b/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsWindowSwipeHandlerTestCase.java index 399709d8a9..c1be1cee9b 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsWindowSwipeHandlerTestCase.java +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/RecentsWindowSwipeHandlerTestCase.java @@ -19,12 +19,21 @@ package com.android.quickstep; import androidx.annotation.NonNull; import androidx.test.filters.SmallTest; +import com.android.launcher3.dagger.LauncherAppComponent; +import com.android.launcher3.dagger.LauncherAppSingleton; +import com.android.launcher3.util.AllModulesForTest; import com.android.launcher3.util.LauncherMultivalentJUnit; import com.android.quickstep.fallback.FallbackRecentsView; import com.android.quickstep.fallback.RecentsState; +import com.android.quickstep.fallback.window.RecentsDisplayModel; import com.android.quickstep.fallback.window.RecentsWindowManager; import com.android.quickstep.fallback.window.RecentsWindowSwipeHandler; +import com.android.quickstep.views.RecentsViewContainer; +import dagger.BindsInstance; +import dagger.Component; + +import org.junit.Before; import org.junit.runner.RunWith; import org.mockito.Mock; @@ -37,9 +46,16 @@ public class RecentsWindowSwipeHandlerTestCase extends AbsSwipeUpHandlerTestCase RecentsWindowSwipeHandler, FallbackWindowInterface> { + @Mock private RecentsDisplayModel mRecentsDisplayModel; @Mock private FallbackRecentsView<RecentsWindowManager> mRecentsView; @Mock private RecentsWindowManager mRecentsWindowManager; + @Before + public void setRecentsDisplayModel() { + mContext.initDaggerComponent(DaggerRecentsWindowSwipeHandlerTestCase_TestComponent.builder() + .bindRecentsDisplayModel(mRecentsDisplayModel)); + } + @NonNull @Override protected RecentsWindowSwipeHandler createSwipeHandler(long touchTimeMs, @@ -47,9 +63,6 @@ public class RecentsWindowSwipeHandlerTestCase extends AbsSwipeUpHandlerTestCase return new RecentsWindowSwipeHandler( mContext, mTaskAnimationManager, - mDeviceState, - mRotationTouchHelper, - mRecentsWindowManager, mGestureState, touchTimeMs, continuingLastGesture, @@ -59,7 +72,7 @@ public class RecentsWindowSwipeHandlerTestCase extends AbsSwipeUpHandlerTestCase @NonNull @Override - protected RecentsWindowManager getRecentsContainer() { + protected RecentsViewContainer getRecentsContainer() { return mRecentsWindowManager; } @@ -69,9 +82,13 @@ public class RecentsWindowSwipeHandlerTestCase extends AbsSwipeUpHandlerTestCase return mRecentsView; } - @NonNull - @Override - protected RecentsState getBaseState() { - return RecentsState.BG_LAUNCHER; + @LauncherAppSingleton + @Component(modules = {AllModulesForTest.class}) + interface TestComponent extends LauncherAppComponent { + @Component.Builder + interface Builder extends LauncherAppComponent.Builder { + @BindsInstance Builder bindRecentsDisplayModel(RecentsDisplayModel model); + @Override LauncherAppComponent build(); + } } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/TaskAnimationManagerTest.java b/quickstep/tests/multivalentTests/src/com/android/quickstep/TaskAnimationManagerTest.java index 04785abd91..75b59d734a 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/TaskAnimationManagerTest.java +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/TaskAnimationManagerTest.java @@ -16,18 +16,12 @@ package com.android.quickstep; -import static com.android.quickstep.TaskAnimationManager.RECENTS_ANIMATION_START_TIMEOUT_MS; - import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyBoolean; -import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -38,10 +32,6 @@ import android.content.Intent; import android.content.res.Configuration; import android.graphics.Rect; import android.os.Bundle; -import android.os.SystemClock; -import android.platform.test.annotations.DisableFlags; -import android.platform.test.annotations.EnableFlags; -import android.platform.test.flag.junit.SetFlagsRule; import android.view.Display; import android.view.RemoteAnimationTarget; import android.view.SurfaceControl; @@ -52,10 +42,8 @@ import androidx.test.filters.SmallTest; import androidx.test.platform.app.InstrumentationRegistry; import com.android.systemui.shared.system.RecentsAnimationControllerCompat; -import com.android.window.flags2.Flags; import org.junit.Before; -import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.ArgumentCaptor; @@ -65,7 +53,7 @@ import org.mockito.MockitoAnnotations; @SmallTest @RunWith(AndroidJUnit4.class) public class TaskAnimationManagerTest { - private static final int EXTERNAL_DISPLAY_ID = 1; + protected final Context mContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); @@ -73,27 +61,17 @@ public class TaskAnimationManagerTest { private SystemUiProxy mSystemUiProxy; private TaskAnimationManager mTaskAnimationManager; - private TaskAnimationManager mTaskAnimationManagerWithExternalDisplay; - - @Rule - public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); @Before public void setUp() { MockitoAnnotations.initMocks(this); - mTaskAnimationManager = new TaskAnimationManager(mContext, Display.DEFAULT_DISPLAY) { + mTaskAnimationManager = new TaskAnimationManager(mContext, + RecentsAnimationDeviceState.INSTANCE.get(mContext), Display.DEFAULT_DISPLAY) { @Override SystemUiProxy getSystemUiProxy() { return mSystemUiProxy; } }; - mTaskAnimationManagerWithExternalDisplay = - new TaskAnimationManager(mContext, EXTERNAL_DISPLAY_ID) { - @Override - SystemUiProxy getSystemUiProxy() { - return mSystemUiProxy; - } - }; } @Test @@ -108,15 +86,14 @@ public class TaskAnimationManagerTest { final ArgumentCaptor<ActivityOptions> optionsCaptor = ArgumentCaptor.forClass(ActivityOptions.class); verify(mSystemUiProxy) - .startRecentsActivity(any(), optionsCaptor.capture(), any(), anyBoolean(), - any(), anyInt()); + .startRecentsActivity(any(), optionsCaptor.capture(), any(), anyBoolean()); assertEquals(ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS, optionsCaptor.getValue().getPendingIntentBackgroundActivityStartMode()); } @Test public void testLauncherDestroyed_whileRecentsAnimationStartPending_finishesAnimation() { - final GestureState gestureState = buildMockGestureState(); + final GestureState gestureState = mock(GestureState.class); final ArgumentCaptor<RecentsAnimationCallbacks> listenerCaptor = ArgumentCaptor.forClass(RecentsAnimationCallbacks.class); final RecentsAnimationControllerCompat controllerCompat = @@ -139,20 +116,17 @@ public class TaskAnimationManagerTest { /* taskInfo= */ new ActivityManager.RunningTaskInfo(), /* allowEnterPip= */ false); + doReturn(mock(LauncherActivityInterface.class)).when(gestureState).getContainerInterface(); when(mSystemUiProxy - .startRecentsActivity(any(), any(), listenerCaptor.capture(), anyBoolean(), any(), - anyInt())) + .startRecentsActivity(any(), any(), listenerCaptor.capture(), anyBoolean())) .thenReturn(true); + when(gestureState.getRunningTaskIds(anyBoolean())).thenReturn(new int[0]); runOnMainSync(() -> { mTaskAnimationManager.startRecentsAnimation( gestureState, new Intent(), mock(RecentsAnimationCallbacks.RecentsAnimationListener.class)); - - // Simulate multiple launcher destroyed events before the recents animation start - mTaskAnimationManager.onLauncherDestroyed(); - mTaskAnimationManager.onLauncherDestroyed(); mTaskAnimationManager.onLauncherDestroyed(); listenerCaptor.getValue().onAnimationStart( controllerCompat, @@ -163,80 +137,11 @@ public class TaskAnimationManagerTest { new Bundle(), new TransitionInfo(0, 0)); }); - - // Verify checks that finish was only called once runOnMainSync(() -> verify(controllerCompat) .finish(/* toHome= */ eq(false), anyBoolean(), any())); } - @Test - public void testRecentsAnimationStartTimeout_cleansUpRecentsAnimation() { - final GestureState gestureState = buildMockGestureState(); - when(mSystemUiProxy - .startRecentsActivity(any(), any(), any(), anyBoolean(), any(), anyInt())) - .thenReturn(true); - - runOnMainSync(() -> { - assertNull("Recents animation was started prematurely:", - mTaskAnimationManager.getCurrentCallbacks()); - - mTaskAnimationManager.startRecentsAnimation( - gestureState, - new Intent(), - mock(RecentsAnimationCallbacks.RecentsAnimationListener.class)); - - assertNotNull("TaskAnimationManager was cleaned up prematurely:", - mTaskAnimationManager.getCurrentCallbacks()); - }); - - SystemClock.sleep(RECENTS_ANIMATION_START_TIMEOUT_MS); - - runOnMainSync(() -> assertNull("TaskAnimationManager was not cleaned up after the timeout:", - mTaskAnimationManager.getCurrentCallbacks())); - } - protected static void runOnMainSync(Runnable runnable) { InstrumentationRegistry.getInstrumentation().runOnMainSync(runnable); } - - private GestureState buildMockGestureState() { - final GestureState gestureState = mock(GestureState.class); - - doReturn(mock(LauncherActivityInterface.class)).when(gestureState).getContainerInterface(); - when(gestureState.getRunningTaskIds(anyBoolean())).thenReturn(new int[0]); - - return gestureState; - } - - /** - * Invokes maybeStartHomeAction on the given TaskAnimationManager and verifies whether the - * provided Runnable was invoked, based on the expectedResult. - * - * @param taskAnimationManager The TaskAnimationManager instance to test. - * @param expectedResult True if the Runnable is expected to be invoked, false otherwise. - */ - private void verifyCanStartHomeAction(TaskAnimationManager taskAnimationManager, - Boolean expectedResult) { - Runnable mockRunnable = mock(Runnable.class); - taskAnimationManager.maybeStartHomeAction(mockRunnable); - if (expectedResult) { - verify(mockRunnable).run(); - } else { - verify(mockRunnable, never()).run(); - } - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_REJECT_HOME_TRANSITION) - public void maybeStartHomeAction_withRejectHomeTransitionEnabled() { - verifyCanStartHomeAction(mTaskAnimationManager, true); - verifyCanStartHomeAction(mTaskAnimationManagerWithExternalDisplay, false); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_REJECT_HOME_TRANSITION) - public void maybeStartHomeAction_withRejectHomeTransitionDisabled() { - verifyCanStartHomeAction(mTaskAnimationManager, true); - verifyCanStartHomeAction(mTaskAnimationManagerWithExternalDisplay, true); - } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/inputconsumers/NavHandleLongPressHandlerTest.java b/quickstep/tests/multivalentTests/src/com/android/quickstep/inputconsumers/NavHandleLongPressHandlerTest.java index f8a0c080a6..9018775316 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/inputconsumers/NavHandleLongPressHandlerTest.java +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/inputconsumers/NavHandleLongPressHandlerTest.java @@ -20,7 +20,6 @@ import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyLong; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; import android.content.Context; @@ -28,14 +27,8 @@ import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import androidx.test.platform.app.InstrumentationRegistry; -import com.android.launcher3.logging.StatsLogManager; -import com.android.launcher3.util.VibratorWrapper; import com.android.quickstep.DeviceConfigWrapper; import com.android.quickstep.NavHandle; -import com.android.quickstep.TopTaskTracker; -import com.android.quickstep.util.ContextualSearchHapticManager; -import com.android.quickstep.util.ContextualSearchInvoker; -import com.android.quickstep.util.ContextualSearchStateManager; import com.android.quickstep.util.TestExtensions; import org.junit.Before; @@ -50,24 +43,12 @@ public class NavHandleLongPressHandlerTest { private NavHandleLongPressHandler mLongPressHandler; @Mock private NavHandle mNavHandle; - @Mock VibratorWrapper mVibratorWrapper; - @Mock ContextualSearchHapticManager mContextualSearchHapticManager; - @Mock TopTaskTracker mTopTaskTracker; - @Mock StatsLogManager.StatsLogManagerFactory mStatsLogManagerFactory; - @Mock StatsLogManager mStatsLogManager; - @Mock ContextualSearchStateManager mContextualSearchStateManager; - @Mock ContextualSearchInvoker mContextualSearchInvoker; - @Before public void setUp() { MockitoAnnotations.initMocks(this); - Context context = InstrumentationRegistry.getInstrumentation() - .getTargetContext().getApplicationContext(); - when(mStatsLogManagerFactory.create(context)).thenReturn(mStatsLogManager); - mLongPressHandler = new NavHandleLongPressHandler(context, mVibratorWrapper, - mContextualSearchHapticManager, mTopTaskTracker, mStatsLogManagerFactory, - mContextualSearchStateManager, mContextualSearchInvoker); + Context context = InstrumentationRegistry.getInstrumentation().getTargetContext(); + mLongPressHandler = new NavHandleLongPressHandler(context); } @Test diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/logging/SettingsChangeLoggerTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/logging/SettingsChangeLoggerTest.kt index 5e22012b45..14570b54ec 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/logging/SettingsChangeLoggerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/logging/SettingsChangeLoggerTest.kt @@ -40,37 +40,29 @@ import com.android.launcher3.util.SettingsCache import com.google.common.truth.Truth.assertThat import org.junit.After import org.junit.Before -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.Answers import org.mockito.ArgumentCaptor import org.mockito.Captor import org.mockito.Mock -import org.mockito.junit.MockitoJUnit +import org.mockito.MockitoAnnotations +import org.mockito.kotlin.any import org.mockito.kotlin.atLeastOnce -import org.mockito.kotlin.capture import org.mockito.kotlin.doReturn import org.mockito.kotlin.verify import org.mockito.kotlin.whenever @RunWith(AndroidJUnit4::class) class SettingsChangeLoggerTest { - - @get:Rule val mockito = MockitoJUnit.rule() - private val mContext: Context = ApplicationProvider.getApplicationContext() private val mInstanceId = InstanceId.fakeInstanceId(1) private lateinit var mSystemUnderTest: SettingsChangeLogger - @Mock private lateinit var mStatsLogFactory: StatsLogManager.StatsLogManagerFactory - @Mock private lateinit var mStatsLogManager: StatsLogManager - @Mock(answer = Answers.RETURNS_SELF) - private lateinit var mMockLogger: StatsLogManager.StatsLogger + @Mock private lateinit var mMockLogger: StatsLogManager.StatsLogger @Mock private lateinit var mTracker: DaggerSingletonTracker private var displayController: DisplayController = DisplayController.INSTANCE.get(mContext) private var settingsCache: SettingsCache = SettingsCache.INSTANCE.get(mContext) @@ -85,8 +77,10 @@ class SettingsChangeLoggerTest { @Before fun setUp() { - whenever(mStatsLogFactory.create(mContext)).doReturn(mStatsLogManager) + MockitoAnnotations.initMocks(this) + whenever(mStatsLogManager.logger()).doReturn(mMockLogger) + whenever(mStatsLogManager.logger().withInstanceId(any())).doReturn(mMockLogger) mDefaultThemedIcons = themeManager.isMonoThemeEnabled mDefaultAllowRotation = LauncherPrefs.get(mContext).get(ALLOW_ROTATION) // To match the default value of THEMED_ICONS @@ -97,10 +91,10 @@ class SettingsChangeLoggerTest { mSystemUnderTest = SettingsChangeLogger( mContext, + mStatsLogManager, mTracker, displayController, settingsCache, - mStatsLogFactory, ) } @@ -115,16 +109,17 @@ class SettingsChangeLoggerTest { val systemUnderTest = SettingsChangeLogger( mContext, + mStatsLogManager, mTracker, displayController, settingsCache, - mStatsLogFactory, ) assertThat(systemUnderTest.loggingPrefs[ALLOW_ROTATION_PREFERENCE_KEY]!!.defaultValue) .isFalse() assertThat(systemUnderTest.loggingPrefs[ADD_ICON_PREFERENCE_KEY]!!.defaultValue).isTrue() assertThat(systemUnderTest.loggingPrefs[OVERVIEW_SUGGESTED_ACTIONS]!!.defaultValue).isTrue() + assertThat(systemUnderTest.loggingPrefs[SMARTSPACE_ON_HOME_SCREEN]!!.defaultValue).isTrue() assertThat(systemUnderTest.loggingPrefs[KEY_ENABLE_MINUS_ONE]!!.defaultValue).isTrue() } @@ -132,7 +127,7 @@ class SettingsChangeLoggerTest { fun logSnapshot_defaultValue() { mSystemUnderTest.logSnapshot(mInstanceId) - verify(mMockLogger, atLeastOnce()).log(capture(mEventCaptor)) + verify(mMockLogger, atLeastOnce()).log(mEventCaptor.capture()) val capturedEvents = mEventCaptor.allValues assertThat(capturedEvents.isNotEmpty()).isTrue() verifyDefaultEvent(capturedEvents) @@ -145,10 +140,10 @@ class SettingsChangeLoggerTest { LauncherPrefs.get(mContext).put(item = ALLOW_ROTATION, value = true) // This a new object so the values of mLoggablePrefs will be different - SettingsChangeLogger(mContext, mTracker, displayController, settingsCache, mStatsLogFactory) + SettingsChangeLogger(mContext, mStatsLogManager, mTracker, displayController, settingsCache) .logSnapshot(mInstanceId) - verify(mMockLogger, atLeastOnce()).log(capture(mEventCaptor)) + verify(mMockLogger, atLeastOnce()).log(mEventCaptor.capture()) val capturedEvents = mEventCaptor.allValues assertThat(capturedEvents.isNotEmpty()).isTrue() verifyDefaultEvent(capturedEvents) @@ -173,6 +168,7 @@ class SettingsChangeLoggerTest { companion object { private const val KEY_ENABLE_MINUS_ONE = "pref_enable_minus_one" private const val OVERVIEW_SUGGESTED_ACTIONS = "pref_overview_action_suggestions" + private const val SMARTSPACE_ON_HOME_SCREEN = "pref_smartspace_home_screen" private const val LAUNCHER_GOOGLE_APP_SWIPE_LEFT_ENABLED = 617 } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTaskIconDataSource.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTaskIconDataSource.kt index ce36715ad9..f6f158f546 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTaskIconDataSource.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTaskIconDataSource.kt @@ -21,7 +21,7 @@ import com.android.quickstep.TaskIconCache.TaskCacheEntry import com.android.quickstep.task.thumbnail.data.TaskIconDataSource import com.android.systemui.shared.recents.model.Task import com.google.common.truth.Truth.assertThat -import kotlinx.coroutines.delay +import kotlinx.coroutines.yield import org.mockito.kotlin.mock import org.mockito.kotlin.whenever @@ -34,8 +34,7 @@ class FakeTaskIconDataSource : TaskIconDataSource { /** Retrieves and sets an icon on [task] from [taskIdToDrawable]. */ override suspend fun getIcon(task: Task): TaskCacheEntry { while (task.key.id in completionPrevented) { - // yield doesn't work here with an UnconfinedTestDispatcher - delay(1L) + yield() } return TaskCacheEntry( taskIdToDrawable.getValue(task.key.id), diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTaskThumbnailDataSource.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTaskThumbnailDataSource.kt index 71996c7835..40d5e0264c 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTaskThumbnailDataSource.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTaskThumbnailDataSource.kt @@ -20,7 +20,7 @@ import android.graphics.Bitmap import com.android.quickstep.task.thumbnail.data.TaskThumbnailDataSource import com.android.systemui.shared.recents.model.Task import com.android.systemui.shared.recents.model.ThumbnailData -import kotlinx.coroutines.delay +import kotlinx.coroutines.yield import org.mockito.kotlin.mock class FakeTaskThumbnailDataSource : TaskThumbnailDataSource { @@ -37,8 +37,7 @@ class FakeTaskThumbnailDataSource : TaskThumbnailDataSource { getThumbnailCalls[task.key.id] = (getThumbnailCalls[task.key.id] ?: 0) + 1 while (task.key.id in completionPrevented) { - // yield doesn't work here with an UnconfinedTestDispatcher - delay(1L) + yield() } return ThumbnailData( thumbnail = taskIdToBitmap[task.key.id], @@ -55,8 +54,4 @@ class FakeTaskThumbnailDataSource : TaskThumbnailDataSource { fun completeLoadingForTask(taskId: Int) { completionPrevented.remove(taskId) } - - fun completeLoading() { - completionPrevented.clear() - } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTasksRepository.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTasksRepository.kt index c00ff15ced..35af29f2c6 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTasksRepository.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/FakeTasksRepository.kt @@ -17,30 +17,24 @@ package com.android.quickstep.recents.data import android.graphics.drawable.Drawable -import androidx.core.util.forEach -import androidx.core.util.putAll import com.android.systemui.shared.recents.model.Task import com.android.systemui.shared.recents.model.ThumbnailData import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.map -import kotlinx.coroutines.flow.update class FakeTasksRepository : RecentTasksRepository { private var thumbnailDataMap: Map<Int, ThumbnailData> = emptyMap() private var taskIconDataMap: Map<Int, FakeIconData> = emptyMap() private var tasks: MutableStateFlow<List<Task>> = MutableStateFlow(emptyList()) - private var visibleTasks: MutableStateFlow<Map<Int, Set<Int>>> = MutableStateFlow(mapOf()) + private var visibleTasks: MutableStateFlow<Set<Int>> = MutableStateFlow(emptySet()) - override fun getAllTaskData(displayId: Int, forceRefresh: Boolean): Flow<List<Task>> = - tasks.map { it.filter { it.key.displayId == displayId }.toList() } + override fun getAllTaskData(forceRefresh: Boolean): Flow<List<Task>> = tasks override fun getTaskDataById(taskId: Int): Flow<Task?> = - combine(tasks, visibleTasks) { taskList, visibleTasks -> - val allVisibleTasks = mutableSetOf<Int>() - visibleTasks.forEach { _, value -> allVisibleTasks.addAll(value) } - taskList.filter { allVisibleTasks.contains(it.key.id) } + combine(getAllTaskData(), visibleTasks) { taskList, visibleTasks -> + taskList.filter { visibleTasks.contains(it.key.id) } } .map { taskList -> val task = taskList.firstOrNull { it.key.id == taskId } ?: return@map null @@ -58,13 +52,8 @@ class FakeTasksRepository : RecentTasksRepository { override fun getCurrentThumbnailById(taskId: Int): ThumbnailData? = tasks.value.firstOrNull { it.key.id == taskId }?.thumbnail - override fun setVisibleTasks(displayId: Int, visibleTaskIdList: Set<Int>) { - visibleTasks.update { - val newVisibleTasks = mutableMapOf<Int, Set<Int>>() - newVisibleTasks.putAll(it) - newVisibleTasks[displayId] = visibleTaskIdList - newVisibleTasks - } + override fun setVisibleTasks(visibleTaskIdList: Set<Int>) { + visibleTasks.value = visibleTaskIdList tasks.value = tasks.value.map { it.apply { diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/TasksRepositoryTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/TasksRepositoryTest.kt index e7f1d18e85..e22892c9cc 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/TasksRepositoryTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/data/TasksRepositoryTest.kt @@ -23,13 +23,13 @@ import android.graphics.Rect import android.graphics.drawable.Drawable import android.view.Display.DEFAULT_DISPLAY import androidx.test.ext.junit.runners.AndroidJUnit4 +import com.android.launcher3.util.SplitConfigurationOptions import com.android.launcher3.util.TestDispatcherProvider import com.android.quickstep.util.DesktopTask import com.android.quickstep.util.SingleTask import com.android.quickstep.util.SplitTask import com.android.systemui.shared.recents.model.Task import com.android.systemui.shared.recents.model.ThumbnailData -import com.android.wm.shell.shared.split.SplitBounds import com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50 import com.google.common.truth.Truth.assertThat import kotlinx.coroutines.ExperimentalCoroutinesApi @@ -39,9 +39,7 @@ import kotlinx.coroutines.flow.toList import kotlinx.coroutines.launch import kotlinx.coroutines.test.TestScope import kotlinx.coroutines.test.UnconfinedTestDispatcher -import kotlinx.coroutines.test.advanceUntilIdle import kotlinx.coroutines.test.runTest -import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import org.mockito.Mockito.spy @@ -53,39 +51,22 @@ import org.mockito.kotlin.whenever @RunWith(AndroidJUnit4::class) class TasksRepositoryTest { private val tasks = (0..5).map(::createTaskWithId) - private val secondaryTasks = (6..11).map(::createTaskWithIdForSecondaryDisplay) private val defaultTaskList = listOf( SingleTask(tasks[0]), SplitTask( tasks[1], tasks[2], - SplitBounds( + SplitConfigurationOptions.SplitBounds( /* leftTopBounds = */ Rect(), /* rightBottomBounds = */ Rect(), - /* leftTopTaskId = */ 1, - /* rightBottomTaskId = */ 2, + /* leftTopTaskId = */ -1, + /* rightBottomTaskId = */ -1, /* snapPosition = */ SNAP_TO_2_50_50, ), ), DesktopTask(deskId = 0, DEFAULT_DISPLAY, tasks.subList(3, 6)), ) - private val secondaryTaskList = - listOf( - SingleTask(secondaryTasks[0]), - SplitTask( - secondaryTasks[1], - secondaryTasks[2], - SplitBounds( - /* leftTopBounds = */ Rect(), - /* rightBottomBounds = */ Rect(), - /* leftTopTaskId = */ 7, - /* rightBottomTaskId = */ 8, - /* snapPosition = */ SNAP_TO_2_50_50, - ), - ), - DesktopTask(deskId = 1, SECONDARY_DISPLAY, secondaryTasks.subList(3, 6)), - ) private val recentsModel = FakeRecentTasksDataSource() private val taskThumbnailDataSource = FakeTaskThumbnailDataSource() private val taskIconDataSource = FakeTaskIconDataSource() @@ -106,25 +87,18 @@ class TasksRepositoryTest { TestDispatcherProvider(dispatcher), ) - @Before - fun cleanupDataSources() { - taskThumbnailDataSource.completeLoading() - taskIconDataSource.completeLoading() - } - @Test fun getAllTaskDataReturnsFlattenedListOfTasks() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - assertThat(systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true).first()) - .isEqualTo(tasks) + assertThat(systemUnderTest.getAllTaskData(forceRefresh = true).first()).isEqualTo(tasks) } @Test fun getTaskDataByIdReturnsSpecificTask() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) assertThat(systemUnderTest.getTaskDataById(2).first()).isEqualTo(tasks[2]) } @@ -133,7 +107,7 @@ class TasksRepositoryTest { fun getThumbnailByIdReturnsNullWithNoLoadedThumbnails() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) assertThat(systemUnderTest.getThumbnailById(1).first()).isNull() } @@ -142,7 +116,7 @@ class TasksRepositoryTest { fun getCurrentThumbnailByIdReturnsNullWithNoLoadedThumbnails() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) assertThat(systemUnderTest.getCurrentThumbnailById(1)).isNull() } @@ -151,10 +125,10 @@ class TasksRepositoryTest { fun getThumbnailByIdReturnsThumbnailWithLoadedThumbnails() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) val bitmap1 = taskThumbnailDataSource.taskIdToBitmap[1] - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) + systemUnderTest.setVisibleTasks(setOf(1)) assertThat(systemUnderTest.getThumbnailById(1).first()!!.thumbnail).isEqualTo(bitmap1) } @@ -163,55 +137,33 @@ class TasksRepositoryTest { fun whenThumbnailIsLoaded_getAllTaskData_usesPreviousLoadedThumbnailAndIcon() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) val bitmap1 = taskThumbnailDataSource.taskIdToBitmap[1] - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) + systemUnderTest.setVisibleTasks(setOf(1)) assertThat(systemUnderTest.getThumbnailById(1).first()!!.thumbnail).isEqualTo(bitmap1) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) assertThat(systemUnderTest.getThumbnailById(1).first()!!.thumbnail).isEqualTo(bitmap1) } - @Test - fun getAllTaskData_copiesPreviouslyLoadedImagesForTasksStillPresent() = - testScope.runTest { - recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(0, 1)) - - // Seed new task with same id - val newTask0 = SingleTask(createTaskWithId(0)) - val newSeededTasks = - defaultTaskList.map { - if (it is SingleTask && it.task.key.id == 0) newTask0 else it - } - recentsModel.seedTasks(newSeededTasks) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) - - // Assert no additional loads, assert images present - assertThat(systemUnderTest.getThumbnailById(0).first()?.thumbnail) - .isEqualTo(taskThumbnailDataSource.taskIdToBitmap[0]) - assertThat(taskThumbnailDataSource.getNumberOfGetThumbnailCalls(0)).isEqualTo(1) - } - @Test fun getAllTaskData_clearsPreviouslyLoadedImagesForRemovedTasks() = testScope.runTest { // Setup data recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) val bitmap1 = taskThumbnailDataSource.taskIdToBitmap[1] // Load images for task 1 - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) + systemUnderTest.setVisibleTasks(setOf(1)) assertThat(systemUnderTest.getThumbnailById(1).first()!!.thumbnail).isEqualTo(bitmap1) // Remove task 1 from "all data" recentsModel.seedTasks( defaultTaskList.filterNot { groupTask -> groupTask.tasks.any { it.key.id == 1 } } ) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) // Assert task 1 was fully removed assertThat(systemUnderTest.getThumbnailById(1).first()?.thumbnail).isNull() @@ -222,10 +174,10 @@ class TasksRepositoryTest { fun getCurrentThumbnailByIdReturnsThumbnailWithLoadedThumbnails() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) val bitmap1 = taskThumbnailDataSource.taskIdToBitmap[1] - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) + systemUnderTest.setVisibleTasks(setOf(1)) assertThat(systemUnderTest.getCurrentThumbnailById(1)?.thumbnail).isEqualTo(bitmap1) } @@ -236,9 +188,9 @@ class TasksRepositoryTest { recentsModel.seedTasks(defaultTaskList) val bitmap1 = taskThumbnailDataSource.taskIdToBitmap[1] val bitmap2 = taskThumbnailDataSource.taskIdToBitmap[2] - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1, 2)) + systemUnderTest.setVisibleTasks(setOf(1, 2)) assertThat(systemUnderTest.getTaskDataById(1).first()!!.thumbnail!!.thumbnail) .isEqualTo(bitmap1) @@ -250,9 +202,9 @@ class TasksRepositoryTest { fun setVisibleTasksPopulatesIcons() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1, 2)) + systemUnderTest.setVisibleTasks(setOf(1, 2)) systemUnderTest .getTaskDataById(1) @@ -269,16 +221,16 @@ class TasksRepositoryTest { testScope.runTest { recentsModel.seedTasks(defaultTaskList) val bitmap2 = taskThumbnailDataSource.taskIdToBitmap[2] - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1, 2)) + systemUnderTest.setVisibleTasks(setOf(1, 2)) assertThat(systemUnderTest.getTaskDataById(2).first()!!.thumbnail!!.thumbnail) .isEqualTo(bitmap2) // Prevent new loading of Bitmaps taskThumbnailDataSource.preventThumbnailLoad(2) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(2, 3)) + systemUnderTest.setVisibleTasks(setOf(2, 3)) assertThat(systemUnderTest.getTaskDataById(2).first()!!.thumbnail!!.thumbnail) .isEqualTo(bitmap2) @@ -288,9 +240,9 @@ class TasksRepositoryTest { fun changingVisibleTasksContainsAlreadyPopulatedIcons() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1, 2)) + systemUnderTest.setVisibleTasks(setOf(1, 2)) systemUnderTest .getTaskDataById(2) @@ -299,7 +251,7 @@ class TasksRepositoryTest { // Prevent new loading of Drawables taskIconDataSource.preventIconLoad(2) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(2, 3)) + systemUnderTest.setVisibleTasks(setOf(2, 3)) systemUnderTest .getTaskDataById(2) @@ -312,15 +264,15 @@ class TasksRepositoryTest { testScope.runTest { recentsModel.seedTasks(defaultTaskList) val bitmap2 = taskThumbnailDataSource.taskIdToBitmap[2] - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1, 2)) + systemUnderTest.setVisibleTasks(setOf(1, 2)) val task2 = systemUnderTest.getTaskDataById(2).first()!! assertThat(task2.thumbnail!!.thumbnail).isEqualTo(bitmap2) task2.assertHasIconDataFromSource(taskIconDataSource) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(0, 1)) + systemUnderTest.setVisibleTasks(setOf(0, 1)) val task2AfterVisibleTasksChanged = systemUnderTest.getTaskDataById(2).first()!! assertThat(task2AfterVisibleTasksChanged.thumbnail).isNull() @@ -337,7 +289,7 @@ class TasksRepositoryTest { val bitmap2 = taskThumbnailDataSource.taskIdToBitmap[2] // Setup TasksRepository - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) val task2DataFlow = systemUnderTest.getTaskDataById(2) val task2BitmapValues = mutableListOf<Bitmap?>() @@ -348,7 +300,7 @@ class TasksRepositoryTest { // Check for first emission assertThat(task2BitmapValues.single()).isNull() - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(2)) + systemUnderTest.setVisibleTasks(setOf(2)) // Check for second emission assertThat(task2BitmapValues).isEqualTo(listOf(null, bitmap2)) } @@ -357,8 +309,8 @@ class TasksRepositoryTest { fun onTaskThumbnailChanged_setsNewThumbnailDataOnTask() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) + systemUnderTest.getAllTaskData(forceRefresh = true) + systemUnderTest.setVisibleTasks(setOf(1)) val expectedThumbnailData = createThumbnailData() val expectedPreviousBitmap = taskThumbnailDataSource.taskIdToBitmap[1] @@ -379,9 +331,9 @@ class TasksRepositoryTest { testScope.runTest { taskThumbnailDataSource.highResEnabled = false recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) + systemUnderTest.setVisibleTasks(setOf(1)) val expectedBitmap = mock<Bitmap>() val expectedPreviousBitmap = taskThumbnailDataSource.taskIdToBitmap[1] @@ -410,9 +362,9 @@ class TasksRepositoryTest { testScope.runTest { taskThumbnailDataSource.highResEnabled = false recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) + systemUnderTest.setVisibleTasks(setOf(1)) val invisibleTaskId = 2 val taskDataFlow = systemUnderTest.getTaskDataById(invisibleTaskId) @@ -434,9 +386,9 @@ class TasksRepositoryTest { testScope.runTest { taskThumbnailDataSource.highResEnabled = true recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) + systemUnderTest.setVisibleTasks(setOf(1)) val expectedBitmap = mock<Bitmap>() val expectedPreviousBitmap = taskThumbnailDataSource.taskIdToBitmap[1] @@ -464,9 +416,9 @@ class TasksRepositoryTest { fun onTaskIconChanged_setsNewIconOnTask() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) + systemUnderTest.setVisibleTasks(setOf(1)) val expectedIcon = FakeTaskIconDataSource.mockCopyableDrawable() val expectedPreviousIcon = taskIconDataSource.taskIdToDrawable[1] @@ -487,7 +439,7 @@ class TasksRepositoryTest { fun setVisibleTasks_multipleTimesWithDifferentTasks_reusesThumbnailRequests() = testScope.runTest { recentsModel.seedTasks(defaultTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) + systemUnderTest.getAllTaskData(forceRefresh = true) val taskDataFlow = systemUnderTest.getTaskDataById(1) val task1IconValues = mutableListOf<Drawable?>() @@ -495,115 +447,16 @@ class TasksRepositoryTest { taskDataFlow.map { it?.icon }.toList(task1IconValues) } - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) + systemUnderTest.setVisibleTasks(setOf(1)) assertThat(taskThumbnailDataSource.getNumberOfGetThumbnailCalls(1)).isEqualTo(1) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1, 2)) + systemUnderTest.setVisibleTasks(setOf(1, 2)) assertThat(taskThumbnailDataSource.getNumberOfGetThumbnailCalls(1)).isEqualTo(1) } - @Test - fun getTaskData_forSecondaryDisplay() = - testScope.runTest { - recentsModel.seedTasks(defaultTaskList + secondaryTaskList) - - assertThat(systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true).first()) - .isEqualTo(tasks) - assertThat( - systemUnderTest.getAllTaskData(SECONDARY_DISPLAY, forceRefresh = true).first() - ) - .isEqualTo(secondaryTasks) - } - - @Test - fun setVisibleTasks_secondaryDisplayConnected() = - testScope.runTest { - recentsModel.seedTasks(defaultTaskList + secondaryTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) - systemUnderTest.getAllTaskData(SECONDARY_DISPLAY, forceRefresh = true) - val bitmap1 = taskThumbnailDataSource.taskIdToBitmap[1] - val bitmap6 = taskThumbnailDataSource.taskIdToBitmap[6] - - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) - systemUnderTest.setVisibleTasks(SECONDARY_DISPLAY, setOf(6)) - - val actualThumbnails = - (0..11).map { systemUnderTest.getThumbnailById(it).first()?.thumbnail }.toList() - val expectedThumbnails = - arrayOfNulls<Bitmap>(12) - .apply { - set(1, bitmap1) - set(6, bitmap6) - } - .toList() - assertThat(actualThumbnails).isEqualTo(expectedThumbnails) - } - - @Test - fun setVisibleTasks_displayDisconnectedBeforeImageReturns_doesNotPopulateThumbnailOrIcon() = - testScope.runTest { - recentsModel.seedTasks(defaultTaskList + secondaryTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) - systemUnderTest.getAllTaskData(SECONDARY_DISPLAY, forceRefresh = true) - taskThumbnailDataSource.preventThumbnailLoad(6) - taskIconDataSource.preventIconLoad(6) - - val task6DataFlow = systemUnderTest.getTaskDataById(6) - val task6Values = mutableListOf<Pair<Bitmap?, Drawable?>>() - testScope.backgroundScope.launch { - task6DataFlow.map { Pair(it?.thumbnail?.thumbnail, it?.icon) }.toList(task6Values) - } - - launch { systemUnderTest.setVisibleTasks(SECONDARY_DISPLAY, setOf(6)) } - // Check we prevented the resources from loading - assertThat(task6Values.distinct()).isEqualTo(listOf(Pair(null, null))) - // Display disconnects - launch { systemUnderTest.setVisibleTasks(SECONDARY_DISPLAY, emptySet()) } - taskThumbnailDataSource.completeLoadingForTask(6) - taskIconDataSource.completeLoadingForTask(6) - testScope.advanceUntilIdle() - // Still should not be loaded - assertThat(task6Values.distinct()).isEqualTo(listOf(Pair(null, null))) - } - - @Test - fun onDisplayRemoved_removesAllDataForDisplay() = - testScope.runTest { - recentsModel.seedTasks(defaultTaskList + secondaryTaskList) - systemUnderTest.getAllTaskData(DEFAULT_DISPLAY, forceRefresh = true) - systemUnderTest.getAllTaskData(SECONDARY_DISPLAY, forceRefresh = true) - systemUnderTest.setVisibleTasks(DEFAULT_DISPLAY, setOf(1)) - systemUnderTest.setVisibleTasks(SECONDARY_DISPLAY, setOf(6)) - - recentsModel.seedTasks(defaultTaskList) - systemUnderTest.setVisibleTasks(SECONDARY_DISPLAY, emptySet()) - - for (t in 6..11) { - assertThat(systemUnderTest.getThumbnailById(t).first()?.thumbnail).isNull() - assertThat(systemUnderTest.getTaskDataById(t).first()?.icon).isNull() - } - } - private fun createTaskWithId(taskId: Int) = Task(Task.TaskKey(taskId, 0, Intent(), ComponentName("", ""), 0, 2000)) - private fun createTaskWithIdForSecondaryDisplay(taskId: Int) = - Task( - Task.TaskKey( - taskId, - 0, - Intent(), - ComponentName("", ""), - 0, - 2000, - SECONDARY_DISPLAY, - null, - 0, - false, - false, - ) - ) - private fun createThumbnailData(): ThumbnailData { val bitmap = mock<Bitmap>() whenever(bitmap.width).thenReturn(THUMBNAIL_WIDTH) @@ -615,6 +468,5 @@ class TasksRepositoryTest { companion object { const val THUMBNAIL_WIDTH = 100 const val THUMBNAIL_HEIGHT = 200 - const val SECONDARY_DISPLAY = 1 } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/domain/usecase/GetTaskUseCaseTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/domain/usecase/GetTaskUseCaseTest.kt index d29183f62f..b036bceea7 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/domain/usecase/GetTaskUseCaseTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/domain/usecase/GetTaskUseCaseTest.kt @@ -20,166 +20,70 @@ import android.content.ComponentName import android.content.Intent import android.graphics.Color import android.graphics.drawable.ShapeDrawable -import android.os.UserHandle -import android.platform.test.annotations.DisableFlags -import android.platform.test.annotations.EnableFlags -import android.platform.test.flag.junit.SetFlagsRule -import android.view.Display.DEFAULT_DISPLAY import androidx.test.ext.junit.runners.AndroidJUnit4 -import com.android.launcher3.Flags -import com.android.quickstep.recents.data.FakeAppTimersRepository import com.android.quickstep.recents.data.FakeTasksRepository import com.android.quickstep.recents.domain.model.TaskModel import com.android.systemui.shared.recents.model.Task import com.google.common.truth.Truth.assertThat -import java.time.Duration import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.flow.firstOrNull import kotlinx.coroutines.test.TestScope import kotlinx.coroutines.test.UnconfinedTestDispatcher import kotlinx.coroutines.test.runTest import org.junit.Before -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.Mockito.anyString -import org.mockito.Mockito.spy -import org.mockito.Mockito.times -import org.mockito.Mockito.verify -import org.mockito.kotlin.any @OptIn(ExperimentalCoroutinesApi::class) @RunWith(AndroidJUnit4::class) class GetTaskUseCaseTest { - @get:Rule val setFlagsRule = SetFlagsRule() - private val unconfinedTestDispatcher = UnconfinedTestDispatcher() private val testScope = TestScope(unconfinedTestDispatcher) private val tasksRepository = FakeTasksRepository() - private val timersRepository = FakeAppTimersRepository() - private val getRemainingAppTimerDurationUseCase = - spy(GetRemainingAppTimerDurationUseCase(timersRepository)) - private val sut = - GetTaskUseCase( - tasksRepository = tasksRepository, - getRemainingAppTimerDurationUseCase = getRemainingAppTimerDurationUseCase, - ) + private val sut = GetTaskUseCase(repository = tasksRepository) @Before fun setUp() { tasksRepository.seedTasks(listOf(TASK_1)) - timersRepository.setTimer(PACKAGE_1, UserHandle(USER_1), REMAINING_APP_DURATION) } @Test - @EnableFlags(Flags.FLAG_ENABLE_REFACTOR_DIGITAL_WELLBEING_TOAST) fun taskNotSeeded_returnsNull() = testScope.runTest { val result = sut.invoke(NOT_FOUND_TASK_ID).firstOrNull() - assertThat(result).isNull() - verify(getRemainingAppTimerDurationUseCase, times(0)) - .invoke(anyString(), any<UserHandle>()) } @Test - @EnableFlags(Flags.FLAG_ENABLE_REFACTOR_DIGITAL_WELLBEING_TOAST) fun taskNotVisible_returnsNull() = testScope.runTest { val result = sut.invoke(TASK_1_ID).firstOrNull() - assertThat(result).isNull() } @Test - @EnableFlags(Flags.FLAG_ENABLE_REFACTOR_DIGITAL_WELLBEING_TOAST) fun taskVisible_returnsData() = testScope.runTest { - tasksRepository.setVisibleTasks(DEFAULT_DISPLAY, setOf(TASK_1_ID)) - - val result = sut.invoke(TASK_1_ID).firstOrNull() - - assertThat(result) - .isEqualTo( - TaskModel( - id = TASK_1_ID, - packageName = PACKAGE_1, - title = "Title $TASK_1_ID", - titleDescription = "Content Description $TASK_1_ID", - icon = TASK_1_ICON, - thumbnail = null, - backgroundColor = Color.BLACK, - isLocked = false, - isMinimized = false, - remainingAppDuration = ROUNDED_REMAINING_APP_DURATION, - ) + tasksRepository.setVisibleTasks(setOf(TASK_1_ID)) + val expectedResult = + TaskModel( + id = TASK_1_ID, + title = "Title $TASK_1_ID", + titleDescription = "Content Description $TASK_1_ID", + icon = TASK_1_ICON, + thumbnail = null, + backgroundColor = Color.BLACK, + isLocked = false, ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_REFACTOR_DIGITAL_WELLBEING_TOAST) - fun taskVisible_noAppTimer_returnsDataWithoutTimer() = - testScope.runTest { - tasksRepository.setVisibleTasks(DEFAULT_DISPLAY, setOf(TASK_1_ID)) - timersRepository.resetTimer(PACKAGE_1, UserHandle(USER_1)) - val result = sut.invoke(TASK_1_ID).firstOrNull() - - assertThat(result) - .isEqualTo( - TaskModel( - id = TASK_1_ID, - packageName = PACKAGE_1, - title = "Title $TASK_1_ID", - titleDescription = "Content Description $TASK_1_ID", - icon = TASK_1_ICON, - thumbnail = null, - backgroundColor = Color.BLACK, - isLocked = false, - isMinimized = false, - remainingAppDuration = null, - ) - ) - verify(getRemainingAppTimerDurationUseCase, times(1)) - .invoke(anyString(), any<UserHandle>()) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_REFACTOR_DIGITAL_WELLBEING_TOAST) - fun taskVisible_dwbFlagOff_doesNotFetchTimer() = - testScope.runTest { - tasksRepository.setVisibleTasks(DEFAULT_DISPLAY, setOf(TASK_1_ID)) - - val result = sut.invoke(TASK_1_ID).firstOrNull() - - assertThat(result) - .isEqualTo( - TaskModel( - id = TASK_1_ID, - packageName = PACKAGE_1, - title = "Title $TASK_1_ID", - titleDescription = "Content Description $TASK_1_ID", - icon = TASK_1_ICON, - thumbnail = null, - backgroundColor = Color.BLACK, - isLocked = false, - isMinimized = false, - remainingAppDuration = null, - ) - ) - verify(getRemainingAppTimerDurationUseCase, times(0)) - .invoke(anyString(), any<UserHandle>()) + assertThat(result).isEqualTo(expectedResult) } private companion object { const val NOT_FOUND_TASK_ID = 404 private const val TASK_1_ID = 1 - private const val PACKAGE_1 = "com.test.1" - private const val USER_1 = 1 private val TASK_1_ICON = ShapeDrawable() - private val REMAINING_APP_DURATION = Duration.ofHours(2).plusMillis(10) - private val ROUNDED_REMAINING_APP_DURATION = Duration.ofHours(2).plusMinutes(1) private val TASK_1 = Task( Task.TaskKey( @@ -187,7 +91,7 @@ class GetTaskUseCaseTest { /* windowingMode = */ 0, /* intent = */ Intent(), /* sourceComponent = */ ComponentName("", ""), - /* userId = */ USER_1, + /* userId = */ 0, /* lastActiveTime = */ 2000, ) ) @@ -198,8 +102,6 @@ class GetTaskUseCaseTest { icon = TASK_1_ICON thumbnail = null isLocked = false - isMinimized = false - topActivity = ComponentName(PACKAGE_1, "SomeClass") } } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/ui/mapper/TaskUiStateMapperTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/ui/mapper/TaskUiStateMapperTest.kt index db78449b2f..7ca194afcf 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/ui/mapper/TaskUiStateMapperTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/ui/mapper/TaskUiStateMapperTest.kt @@ -19,49 +19,55 @@ package com.android.quickstep.recents.ui.mapper import android.graphics.Bitmap import android.graphics.Color import android.graphics.drawable.ShapeDrawable -import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags -import android.platform.test.flag.junit.SetFlagsRule import android.view.Surface import android.view.View import androidx.test.ext.junit.runners.AndroidJUnit4 import com.android.launcher3.Flags -import com.android.launcher3.R -import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT -import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT import com.android.quickstep.recents.ui.viewmodel.TaskData -import com.android.quickstep.task.apptimer.TaskAppTimerUiState -import com.android.quickstep.task.thumbnail.TaskHeaderUiState import com.android.quickstep.task.thumbnail.TaskThumbnailUiState import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.LiveTile import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.Snapshot +import com.android.quickstep.task.thumbnail.TaskThumbnailUiState.ThumbnailHeader import com.android.systemui.shared.recents.model.ThumbnailData import com.google.common.truth.Truth.assertThat -import java.time.Duration -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) class TaskUiStateMapperTest { - @get:Rule val mSetFlagsRule = SetFlagsRule() - - /** TaskHeaderUiState */ @Test - fun taskData_isNull_returns_HideHeader() { + fun taskData_isNull_returns_Uninitialized() { val result = - TaskUiStateMapper.toTaskHeaderState( + TaskUiStateMapper.toTaskThumbnailUiState( taskData = null, + isLiveTile = false, hasHeader = false, clickCloseListener = null, ) - assertThat(result).isEqualTo(TaskHeaderUiState.HideHeader) + assertThat(result).isEqualTo(TaskThumbnailUiState.Uninitialized) } - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_EXPLODED_VIEW) @Test - fun explodedFlagDisabled_returnsHideHeader() { + fun taskData_isLiveTile_returns_LiveTile() { + val inputs = + listOf(TASK_DATA, TASK_DATA.copy(thumbnailData = null), TASK_DATA.copy(isLocked = true)) + inputs.forEach { input -> + val result = + TaskUiStateMapper.toTaskThumbnailUiState( + taskData = input, + isLiveTile = true, + hasHeader = false, + clickCloseListener = null, + ) + assertThat(result).isEqualTo(LiveTile.WithoutHeader) + } + } + + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_EXPLODED_VIEW) + @Test + fun taskData_isLiveTileWithHeader_returns_LiveTileWithHeader() { val inputs = listOf( TASK_DATA, @@ -70,42 +76,15 @@ class TaskUiStateMapperTest { TASK_DATA.copy(title = null), ) val closeCallback = View.OnClickListener {} - val expected = TaskHeaderUiState.HideHeader - inputs.forEach { taskData -> - val result = - TaskUiStateMapper.toTaskHeaderState( - taskData = taskData, - hasHeader = true, - clickCloseListener = closeCallback, - ) - assertThat(result).isEqualTo(expected) - } - } - - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_EXPLODED_VIEW) - @Test - fun taskData_hasHeader_and_taskData_returnsShowHeader() { - val inputs = - listOf( - TASK_DATA.copy(isLiveTile = true), - TASK_DATA.copy(isLiveTile = true, thumbnailData = null), - TASK_DATA.copy(isLiveTile = true, isLocked = true), - TASK_DATA.copy(isLiveTile = true, title = null), - ) - val closeCallback = View.OnClickListener {} val expected = - TaskHeaderUiState.ShowHeader( - header = - TaskHeaderUiState.ThumbnailHeader( - TASK_ICON, - TASK_TITLE_DESCRIPTION, - closeCallback, - ) + LiveTile.WithHeader( + header = ThumbnailHeader(TASK_ICON, TASK_TITLE_DESCRIPTION, closeCallback) ) inputs.forEach { taskData -> val result = - TaskUiStateMapper.toTaskHeaderState( + TaskUiStateMapper.toTaskThumbnailUiState( taskData = taskData, + isLiveTile = true, hasHeader = true, clickCloseListener = closeCallback, ) @@ -115,54 +94,40 @@ class TaskUiStateMapperTest { @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_EXPLODED_VIEW) @Test - fun taskData_hasHeader_emptyTaskData_returns_HideHeader() { + fun taskData_isLiveTileWithHeader_missingHeaderData_returns_LiveTileWithoutHeader() { val inputs = listOf( - TASK_DATA.copy(isLiveTile = true, icon = null), - TASK_DATA.copy(isLiveTile = true, titleDescription = null), - TASK_DATA.copy(isLiveTile = true, icon = null, titleDescription = null), + TASK_DATA.copy(icon = null), + TASK_DATA.copy(titleDescription = null), + TASK_DATA.copy(icon = null, titleDescription = null), ) inputs.forEach { taskData -> val result = - TaskUiStateMapper.toTaskHeaderState( + TaskUiStateMapper.toTaskThumbnailUiState( taskData = taskData, + isLiveTile = true, hasHeader = true, clickCloseListener = {}, ) - assertThat(result).isEqualTo(TaskHeaderUiState.HideHeader) - } - } - - /** TaskThumbnailUiState */ - @Test - fun taskData_isNull_returns_Uninitialized() { - val result = TaskUiStateMapper.toTaskThumbnailUiState(taskData = null) - assertThat(result).isEqualTo(TaskThumbnailUiState.Uninitialized) - } - - @Test - fun taskData_isLiveTile_returns_LiveTile() { - val inputs = - listOf( - TASK_DATA.copy(isLiveTile = true), - TASK_DATA.copy(isLiveTile = true, thumbnailData = null), - TASK_DATA.copy(isLiveTile = true, isLocked = true), - ) - inputs.forEach { input -> - val result = TaskUiStateMapper.toTaskThumbnailUiState(taskData = input) - assertThat(result).isEqualTo(LiveTile) + assertThat(result).isEqualTo(LiveTile.WithoutHeader) } } @Test fun taskData_isStaticTile_returns_SnapshotSplash() { - val result = TaskUiStateMapper.toTaskThumbnailUiState(taskData = TASK_DATA) + val result = + TaskUiStateMapper.toTaskThumbnailUiState( + taskData = TASK_DATA, + isLiveTile = false, + hasHeader = false, + clickCloseListener = null, + ) val expected = TaskThumbnailUiState.SnapshotSplash( snapshot = - Snapshot( + Snapshot.WithoutHeader( backgroundColor = TASK_BACKGROUND_COLOR, bitmap = TASK_THUMBNAIL, thumbnailRotation = Surface.ROTATION_0, @@ -173,11 +138,72 @@ class TaskUiStateMapperTest { assertThat(result).isEqualTo(expected) } + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_EXPLODED_VIEW) + @Test + fun taskData_isStaticTile_withHeader_returns_SnapshotSplashWithHeader() { + val inputs = listOf(TASK_DATA, TASK_DATA.copy(title = null)) + val closeCallback = View.OnClickListener {} + val expected = + TaskThumbnailUiState.SnapshotSplash( + snapshot = + Snapshot.WithHeader( + backgroundColor = TASK_BACKGROUND_COLOR, + bitmap = TASK_THUMBNAIL, + thumbnailRotation = Surface.ROTATION_0, + header = ThumbnailHeader(TASK_ICON, TASK_TITLE_DESCRIPTION, closeCallback), + ), + splash = TASK_ICON, + ) + inputs.forEach { taskData -> + val result = + TaskUiStateMapper.toTaskThumbnailUiState( + taskData = taskData, + isLiveTile = false, + hasHeader = true, + clickCloseListener = closeCallback, + ) + assertThat(result).isEqualTo(expected) + } + } + + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_EXPLODED_VIEW) + @Test + fun taskData_isStaticTile_missingHeaderData_returns_SnapshotSplashWithoutHeader() { + val inputs = + listOf( + TASK_DATA.copy(titleDescription = null, icon = null), + TASK_DATA.copy(titleDescription = null), + TASK_DATA.copy(icon = null), + ) + val expected = + Snapshot.WithoutHeader( + backgroundColor = TASK_BACKGROUND_COLOR, + thumbnailRotation = Surface.ROTATION_0, + bitmap = TASK_THUMBNAIL, + ) + inputs.forEach { taskData -> + val result = + TaskUiStateMapper.toTaskThumbnailUiState( + taskData = taskData, + isLiveTile = false, + hasHeader = true, + clickCloseListener = {}, + ) + + assertThat(result).isInstanceOf(TaskThumbnailUiState.SnapshotSplash::class.java) + result as TaskThumbnailUiState.SnapshotSplash + assertThat(result.snapshot).isEqualTo(expected) + } + } + @Test fun taskData_thumbnailIsNull_returns_BackgroundOnly() { val result = TaskUiStateMapper.toTaskThumbnailUiState( - taskData = TASK_DATA.copy(thumbnailData = null) + taskData = TASK_DATA.copy(thumbnailData = null), + isLiveTile = false, + hasHeader = false, + clickCloseListener = null, ) val expected = TaskThumbnailUiState.BackgroundOnly(TASK_BACKGROUND_COLOR) @@ -187,125 +213,34 @@ class TaskUiStateMapperTest { @Test fun taskData_isLocked_returns_BackgroundOnly() { val result = - TaskUiStateMapper.toTaskThumbnailUiState(taskData = TASK_DATA.copy(isLocked = true)) + TaskUiStateMapper.toTaskThumbnailUiState( + taskData = TASK_DATA.copy(isLocked = true), + isLiveTile = false, + hasHeader = false, + clickCloseListener = null, + ) val expected = TaskThumbnailUiState.BackgroundOnly(TASK_BACKGROUND_COLOR) assertThat(result).isEqualTo(expected) } - @Test - fun toTaskAppTimer_nullTaskData_returnsUninitialized() { - val result = - TaskUiStateMapper.toTaskAppTimerUiState( - canShowAppTimer = true, - stagePosition = STAGE_POSITION_DEFAULT, - taskData = null, - ) - - val expected = TaskAppTimerUiState.Uninitialized - assertThat(result).isEqualTo(expected) - } - - @Test - fun toTaskAppTimer_noTaskData_returnsUninitialized() { - val result = - TaskUiStateMapper.toTaskAppTimerUiState( - canShowAppTimer = true, - stagePosition = STAGE_POSITION_DEFAULT, - taskData = TaskData.NoData(TASK_ID), - ) - - val expected = TaskAppTimerUiState.Uninitialized - assertThat(result).isEqualTo(expected) - } - - @Test - fun toTaskAppTimer_canShowAppTimerFalse_returnsNoTimer() { - val result = - TaskUiStateMapper.toTaskAppTimerUiState( - canShowAppTimer = false, - stagePosition = STAGE_POSITION_DEFAULT, - taskData = TASK_DATA, - ) - - val expected = TaskAppTimerUiState.NoTimer(taskDescription = TASK_TITLE_DESCRIPTION) - assertThat(result).isEqualTo(expected) - } - - @Test - fun toTaskAppTimer_timerNullAndCanShow_returnsNoTimer() { - val result = - TaskUiStateMapper.toTaskAppTimerUiState( - canShowAppTimer = false, - stagePosition = STAGE_POSITION_DEFAULT, - taskData = TASK_DATA.copy(remainingAppTimerDuration = null), - ) - - val expected = TaskAppTimerUiState.NoTimer(taskDescription = TASK_TITLE_DESCRIPTION) - assertThat(result).isEqualTo(expected) - } - - @Test - fun toTaskAppTimer_timerPresentAndCanShow_returnsTimer() { - val result = - TaskUiStateMapper.toTaskAppTimerUiState( - canShowAppTimer = true, - stagePosition = STAGE_POSITION_DEFAULT, - taskData = TASK_DATA.copy(remainingAppTimerDuration = TASK_APP_TIMER_DURATION), - ) - - val expected = - TaskAppTimerUiState.Timer( - timeRemaining = TASK_APP_TIMER_DURATION, - taskDescription = TASK_DATA.titleDescription, - taskPackageName = TASK_DATA.packageName, - accessibilityActionId = R.id.action_digital_wellbeing_top_left, - ) - assertThat(result).isEqualTo(expected) - } - - @Test - fun toTaskAppTimer_stagePositionBottomOrRight_returnsTimerWithCorrectActionId() { - val result = - TaskUiStateMapper.toTaskAppTimerUiState( - canShowAppTimer = true, - stagePosition = STAGE_POSITION_BOTTOM_OR_RIGHT, - taskData = TASK_DATA.copy(remainingAppTimerDuration = TASK_APP_TIMER_DURATION), - ) - - val expected = - TaskAppTimerUiState.Timer( - timeRemaining = TASK_APP_TIMER_DURATION, - taskDescription = TASK_DATA.titleDescription, - taskPackageName = TASK_DATA.packageName, - accessibilityActionId = R.id.action_digital_wellbeing_bottom_right, - ) - assertThat(result).isEqualTo(expected) - } - private companion object { const val TASK_TITLE_DESCRIPTION = "Title Description 1" var TASK_ID = 1 - var PACKAGE_NAME = "com.test" val TASK_ICON = ShapeDrawable() val TASK_THUMBNAIL = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888) val TASK_THUMBNAIL_DATA = ThumbnailData(thumbnail = TASK_THUMBNAIL, rotation = Surface.ROTATION_0) val TASK_BACKGROUND_COLOR = Color.rgb(1, 2, 3) - val TASK_APP_TIMER_DURATION: Duration = Duration.ofMillis(30) - val STAGE_POSITION_DEFAULT = STAGE_POSITION_TOP_OR_LEFT val TASK_DATA = TaskData.Data( TASK_ID, - packageName = PACKAGE_NAME, title = "Task 1", titleDescription = TASK_TITLE_DESCRIPTION, icon = TASK_ICON, thumbnailData = TASK_THUMBNAIL_DATA, backgroundColor = TASK_BACKGROUND_COLOR, isLocked = false, - isLiveTile = false, - remainingAppTimerDuration = TASK_APP_TIMER_DURATION, ) } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/ui/viewmodel/TaskViewModelTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/ui/viewmodel/TaskViewModelTest.kt index b499a1d66e..333c2856e6 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/ui/viewmodel/TaskViewModelTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/ui/viewmodel/TaskViewModelTest.kt @@ -35,7 +35,6 @@ import com.android.quickstep.recents.viewmodel.RecentsViewData import com.android.quickstep.views.TaskViewType import com.android.systemui.shared.recents.model.ThumbnailData import com.google.common.truth.Truth.assertThat -import java.time.Duration import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.flow.first import kotlinx.coroutines.flow.flow @@ -71,8 +70,6 @@ class TaskViewModelTest { whenever(getTaskUseCase.invoke(TASK_MODEL_1.id)).thenReturn(flow { emit(TASK_MODEL_1) }) whenever(getTaskUseCase.invoke(TASK_MODEL_2.id)).thenReturn(flow { emit(TASK_MODEL_2) }) whenever(getTaskUseCase.invoke(TASK_MODEL_3.id)).thenReturn(flow { emit(TASK_MODEL_3) }) - whenever(getTaskUseCase.invoke(TASK_MODEL_MINIMIZED.id)) - .thenReturn(flow { emit(TASK_MODEL_MINIMIZED) }) whenever(getTaskUseCase.invoke(INVALID_TASK_ID)).thenReturn(flow { emit(null) }) recentsViewData.runningTaskIds.value = emptySet() } @@ -84,6 +81,7 @@ class TaskViewModelTest { val expectedResult = TaskTileUiState( tasks = listOf(TASK_MODEL_1.toUiState()), + isLiveTile = false, hasHeader = false, sysUiStatusNavFlags = FLAGS_APPEARANCE_LIGHT_THEME, taskOverlayEnabled = false, @@ -131,6 +129,7 @@ class TaskViewModelTest { TASK_MODEL_3.toUiState(), TaskData.NoData(INVALID_TASK_ID), ), + isLiveTile = false, hasHeader = false, sysUiStatusNavFlags = FLAGS_APPEARANCE_LIGHT_THEME, taskOverlayEnabled = false, @@ -150,34 +149,11 @@ class TaskViewModelTest { TaskTileUiState( tasks = listOf( - TASK_MODEL_1.toUiState(isLiveTile = true), - TASK_MODEL_2.toUiState(isLiveTile = true), - TASK_MODEL_3.toUiState(isLiveTile = true), - ), - hasHeader = false, - sysUiStatusNavFlags = FLAGS_APPEARANCE_LIGHT_THEME, - taskOverlayEnabled = false, - isCentralTask = false, - ) - assertThat(sut.state.first()).isEqualTo(expectedResult) - } - - @Test - fun isMixedLiveTile_when_oneTaskIsMinimized() = - testScope.runTest { - recentsViewData.runningTaskShowScreenshot.value = false - recentsViewData.runningTaskIds.value = - setOf(TASK_MODEL_1.id, TASK_MODEL_2.id, TASK_MODEL_3.id, TASK_MODEL_MINIMIZED.id) - sut.bind(TASK_MODEL_1.id, TASK_MODEL_2.id, TASK_MODEL_3.id, TASK_MODEL_MINIMIZED.id) - val expectedResult = - TaskTileUiState( - tasks = - listOf( - TASK_MODEL_1.toUiState(isLiveTile = true), - TASK_MODEL_2.toUiState(isLiveTile = true), - TASK_MODEL_3.toUiState(isLiveTile = true), - TASK_MODEL_MINIMIZED.toUiState(isLiveTile = false), + TASK_MODEL_1.toUiState(), + TASK_MODEL_2.toUiState(), + TASK_MODEL_3.toUiState(), ), + isLiveTile = true, hasHeader = false, sysUiStatusNavFlags = FLAGS_APPEARANCE_LIGHT_THEME, taskOverlayEnabled = false, @@ -201,6 +177,7 @@ class TaskViewModelTest { TASK_MODEL_2.toUiState(), TASK_MODEL_3.toUiState(), ), + isLiveTile = false, hasHeader = false, sysUiStatusNavFlags = FLAGS_APPEARANCE_LIGHT_THEME, taskOverlayEnabled = false, @@ -223,6 +200,7 @@ class TaskViewModelTest { TASK_MODEL_2.toUiState(), TASK_MODEL_3.toUiState(), ), + isLiveTile = false, hasHeader = false, sysUiStatusNavFlags = FLAGS_APPEARANCE_LIGHT_THEME, taskOverlayEnabled = false, @@ -241,6 +219,7 @@ class TaskViewModelTest { val expectedResult = TaskTileUiState( tasks = listOf(TASK_MODEL_1.toUiState(), TASK_MODEL_2.toUiState()), + isLiveTile = false, hasHeader = false, sysUiStatusNavFlags = FLAGS_APPEARANCE_LIGHT_THEME, taskOverlayEnabled = false, @@ -256,6 +235,7 @@ class TaskViewModelTest { val expectedResult = TaskTileUiState( listOf(TaskData.NoData(INVALID_TASK_ID)), + isLiveTile = false, hasHeader = false, sysUiStatusNavFlags = FLAGS_APPEARANCE_DEFAULT, taskOverlayEnabled = false, @@ -294,28 +274,6 @@ class TaskViewModelTest { assertThat(sut.state.first().taskOverlayEnabled).isFalse() } - @Test - fun taskOverlayDisabled_when_OverlayIsEnabledForVisibleDesktopTask() = - testScope.runTest { - sut = createTaskViewModel(TaskViewType.DESKTOP) - sut.bind(TASK_MODEL_1.id) - recentsViewData.overlayEnabled.value = true - recentsViewData.settledFullyVisibleTaskIds.value = setOf(1) - - assertThat(sut.state.first().taskOverlayEnabled).isFalse() - } - - @Test - fun taskOverlayDisabled_when_OverlayIsEnabledForVisibleGroupedTask() = - testScope.runTest { - sut = createTaskViewModel(TaskViewType.GROUPED) - sut.bind(TASK_MODEL_1.id) - recentsViewData.overlayEnabled.value = true - recentsViewData.settledFullyVisibleTaskIds.value = setOf(1) - - assertThat(sut.state.first().taskOverlayEnabled).isFalse() - } - @Test fun isCentralTask_when_CentralTaskIdsMatchTaskIds() = testScope.runTest { @@ -340,18 +298,15 @@ class TaskViewModelTest { verify(isThumbnailValidUseCase).invoke(anyOrNull(), anyInt(), anyInt()) } - private fun TaskModel.toUiState(isLiveTile: Boolean = false) = + private fun TaskModel.toUiState() = TaskData.Data( taskId = id, - packageName = packageName, title = title, titleDescription = titleDescription, icon = icon!!, thumbnailData = thumbnail, backgroundColor = backgroundColor, isLocked = isLocked, - isLiveTile = isLiveTile, - remainingAppTimerDuration = remainingAppDuration, ) private fun createTaskViewModel(taskViewType: TaskViewType) = @@ -366,7 +321,6 @@ class TaskViewModelTest { ) private companion object { - const val PACKAGE_NAME = "com.test" const val INVALID_TASK_ID = -1 const val FLAGS_APPEARANCE_LIGHT_THEME = FLAG_LIGHT_STATUS or FLAG_LIGHT_NAV const val FLAGS_APPEARANCE_DEFAULT = 0 @@ -378,54 +332,32 @@ class TaskViewModelTest { val TASK_MODEL_1 = TaskModel( 1, - PACKAGE_NAME, "Title 1", "Content Description 1", ShapeDrawable(), ThumbnailData(appearance = APPEARANCE_LIGHT_THEME), Color.BLACK, - /* isLocked= */ false, - /* isMinimized= */ false, - /*remainingAppDuration= */ Duration.ofMillis(30), + false, ) val TASK_MODEL_2 = TaskModel( 2, - PACKAGE_NAME, "Title 2", "Content Description 2", ShapeDrawable(), ThumbnailData(appearance = APPEARANCE_LIGHT_THEME), Color.RED, - /* isLocked= */ true, - /* isMinimized= */ false, - /*remainingAppDuration= */ Duration.ofHours(5).plusMinutes(2), + true, ) val TASK_MODEL_3 = TaskModel( 3, - PACKAGE_NAME, "Title 3", "Content Description 3", ShapeDrawable(), ThumbnailData(appearance = APPEARANCE_LIGHT_THEME), Color.BLUE, - /* isLocked= */ false, - /* isMinimized= */ false, - /* remainingAppDuration= */ null, - ) - val TASK_MODEL_MINIMIZED = - TaskModel( - 4, - PACKAGE_NAME, - "Title 4", - "Content Description 4", - ShapeDrawable(), - ThumbnailData(appearance = APPEARANCE_LIGHT_THEME), - Color.BLUE, - /* isLocked= */ false, - /* isMinimized= */ true, - /* remainingAppDuration= */ null, + false, ) } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/viewmodel/RecentsViewModelTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/viewmodel/RecentsViewModelTest.kt index c53f20ffdc..a32e07dedf 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/viewmodel/RecentsViewModelTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/recents/viewmodel/RecentsViewModelTest.kt @@ -20,7 +20,6 @@ import android.content.ComponentName import android.content.Intent import android.graphics.Bitmap import android.graphics.Color -import android.view.Display.DEFAULT_DISPLAY import android.view.Surface import com.android.quickstep.recents.data.FakeTasksRepository import com.android.systemui.shared.recents.model.Task @@ -35,8 +34,7 @@ import org.mockito.kotlin.whenever class RecentsViewModelTest { private val tasksRepository = FakeTasksRepository() private val recentsViewData = RecentsViewData() - private val systemUnderTest = - RecentsViewModel(tasksRepository, recentsViewData, DEFAULT_DISPLAY) + private val systemUnderTest = RecentsViewModel(tasksRepository, recentsViewData) private val tasks = (0..5).map(::createTaskWithId) @@ -99,7 +97,7 @@ class RecentsViewModelTest { ) // setVisibleTasks forces FakeTasksRepository to update the flows returned by // getThumbnailById - tasksRepository.setVisibleTasks(DEFAULT_DISPLAY, setOf(1, 2)) + tasksRepository.setVisibleTasks(setOf(1, 2)) // Then wait for thumbnailData should complete, and the previous getThumbnailById flow // should return updated values diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/taskbar/controllers/TaskbarPinningControllerTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/taskbar/controllers/TaskbarPinningControllerTest.kt index f95d2f7d22..26418d876a 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/taskbar/controllers/TaskbarPinningControllerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/taskbar/controllers/TaskbarPinningControllerTest.kt @@ -76,19 +76,6 @@ class TaskbarPinningControllerTest : TaskbarBaseTestCase() { ) ) .thenAnswer { _ -> isInDesktopMode } - whenever( - taskbarControllers.taskbarDesktopModeController.isInDesktopMode( - taskbarActivityContext.displayId - ) - ) - .thenAnswer { _ -> isInDesktopMode } - whenever( - taskbarControllers.taskbarDesktopModeController.shouldShowDesktopTasksInTaskbar( - taskbarActivityContext.displayId - ) - ) - .thenAnswer { _ -> isInDesktopMode } - pinningController = spy(TaskbarPinningController(taskbarActivityContext)) pinningController.init(taskbarControllers, taskbarSharedState) } @@ -130,14 +117,6 @@ class TaskbarPinningControllerTest : TaskbarBaseTestCase() { verify(pinningController, times(1)).animateTaskbarPinning(PINNING_PERSISTENT) } - @Test - fun testOnCloseCallback_whenLauncherPreferenceChanged_shouldNotAnimateToTaskbarInDesktopMode() { - isInDesktopMode = true - whenever(launcherPrefs.get(TASKBAR_PINNING_IN_DESKTOP_MODE)).thenReturn(false) - pinningController.onCloseCallback(true) - verify(pinningController, never()).animateTaskbarPinning(any()) - } - @Test fun testOnCloseCallback_whenLauncherPreferenceChanged_shouldAnimateToTransientTaskbar() { whenever(launcherPrefs.get(TASKBAR_PINNING)).thenReturn(true) @@ -232,4 +211,13 @@ class TaskbarPinningControllerTest : TaskbarBaseTestCase() { assertThat(pinningController.isAnimatingTaskbarPinning).isFalse() verify(launcherPrefs, times(1)).put(TASKBAR_PINNING, true) } + + @Test + fun testRecreateTaskbarAndUpdatePinningValue_whenAnimationEnds_shouldUpdateTaskbarPinningDesktopModePref() { + isInDesktopMode = true + pinningController.recreateTaskbarAndUpdatePinningValue() + verify(taskbarDragLayer, times(1)).setAnimatingTaskbarPinning(false) + assertThat(pinningController.isAnimatingTaskbarPinning).isFalse() + verify(launcherPrefs, times(1)).put(TASKBAR_PINNING_IN_DESKTOP_MODE, true) + } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/ContextualSearchInvokerTest.java b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/ContextualSearchInvokerTest.java index 88774be33c..61971b1fc8 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/ContextualSearchInvokerTest.java +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/ContextualSearchInvokerTest.java @@ -52,6 +52,7 @@ import com.android.quickstep.BaseContainerInterface; import com.android.quickstep.DeviceConfigWrapper; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.TopTaskTracker; +import com.android.quickstep.orientation.RecentsPagedOrientationHandler; import com.android.quickstep.views.RecentsView; import com.android.quickstep.views.RecentsViewContainer; @@ -82,6 +83,7 @@ public class ContextualSearchInvokerTest { private @Mock BaseContainerInterface mMockContainerInterface; private @Mock RecentsViewContainer mMockRecentsViewContainer; private @Mock RecentsView mMockRecentsView; + private @Mock RecentsPagedOrientationHandler mMockOrientationHandler; private ContextualSearchInvoker mContextualSearchInvoker; @Before @@ -189,6 +191,15 @@ public class ContextualSearchInvokerTest { verify(mMockStatsLogger).log(LAUNCHER_LAUNCH_OMNI_ATTEMPTED_SPLITSCREEN); } + @Test + public void runContextualSearchInvocationChecksAndLogFailures_isFakeLandscape() { + when(mMockRecentsView.getPagedOrientationHandler()).thenReturn(mMockOrientationHandler); + when(mMockOrientationHandler.isLayoutNaturalToLauncher()).thenReturn(false); + assertFalse("Expect invocation checks to fail in fake landscape.", + mContextualSearchInvoker.runContextualSearchInvocationChecksAndLogFailures()); + verifyNoMoreInteractions(mMockStatsLogManager); + } + @Test public void invokeContextualSearchUncheckedWithHaptic_cssIsAvailable_commitHapticEnabled() { try (AutoCloseable flag = overrideSearchHapticCommitFlag(true)) { diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/GestureExclusionManagerTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/GestureExclusionManagerTest.kt index cbe397b4a1..555e62bead 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/GestureExclusionManagerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/GestureExclusionManagerTest.kt @@ -131,7 +131,7 @@ class GestureExclusionManagerTest { } private fun awaitTasksCompleted() { - Executors.UI_HELPER_EXECUTOR.submit<Any?> { null }.get() - Executors.MAIN_EXECUTOR.submit<Any?> { null }.get() + Executors.UI_HELPER_EXECUTOR.submit<Any> { null }.get() + Executors.MAIN_EXECUTOR.submit<Any> { null }.get() } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/GroupTaskTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/GroupTaskTest.kt index f745134109..9f491717c4 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/GroupTaskTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/GroupTaskTest.kt @@ -20,11 +20,9 @@ import android.content.ComponentName import android.content.Intent import android.graphics.Rect import android.view.Display.DEFAULT_DISPLAY -import android.view.Display.INVALID_DISPLAY import com.android.launcher3.util.LauncherMultivalentJUnit import com.android.launcher3.util.SplitConfigurationOptions import com.android.systemui.shared.recents.model.Task -import com.android.wm.shell.shared.split.SplitBounds import com.android.wm.shell.shared.split.SplitScreenConstants import com.google.common.truth.Truth.assertThat import org.junit.Test @@ -63,7 +61,7 @@ class GroupTaskTest { @Test fun testGroupTask_equalSplitTasks_isEqual() { val splitBounds = - SplitBounds( + SplitConfigurationOptions.SplitBounds( Rect(), Rect(), 1, @@ -78,7 +76,7 @@ class GroupTaskTest { @Test fun testGroupTask_differentSplitTasks_isNotEqual() { val splitBounds1 = - SplitBounds( + SplitConfigurationOptions.SplitBounds( Rect(), Rect(), 1, @@ -86,7 +84,7 @@ class GroupTaskTest { SplitScreenConstants.SNAP_TO_2_50_50, ) val splitBounds2 = - SplitBounds( + SplitConfigurationOptions.SplitBounds( Rect(), Rect(), 1, @@ -105,86 +103,7 @@ class GroupTaskTest { assertThat(task1).isNotEqualTo(task2) } - @Test - fun testDesktopTask_matchesDisplayId() { - val task1 = DesktopTask(deskId = 0, DEFAULT_DISPLAY, listOf(createTask(1, INVALID_DISPLAY))) - assertThat(task1.matchesDisplayId(DEFAULT_DISPLAY)).isTrue() - assertThat(task1.matchesDisplayId(DISPLAY_2)).isFalse() - val task2 = DesktopTask(deskId = 0, DISPLAY_2, listOf(createTask(1, DISPLAY_2))) - assertThat(task2.matchesDisplayId(DEFAULT_DISPLAY)).isFalse() - assertThat(task2.matchesDisplayId(DISPLAY_2)).isTrue() - val task3 = DesktopTask(deskId = 0, DISPLAY_2, listOf(createTask(1, INVALID_DISPLAY))) - assertThat(task3.matchesDisplayId(DEFAULT_DISPLAY)).isFalse() - assertThat(task3.matchesDisplayId(DISPLAY_2)).isTrue() - } - - @Test - fun testSingleTask_matchesDisplayId() { - val task1 = SingleTask(createTask(1, INVALID_DISPLAY)) - assertThat(task1.matchesDisplayId(DEFAULT_DISPLAY)).isTrue() - assertThat(task1.matchesDisplayId(DISPLAY_2)).isFalse() - val task2 = SingleTask(createTask(1, DISPLAY_2)) - assertThat(task2.matchesDisplayId(DEFAULT_DISPLAY)).isFalse() - assertThat(task2.matchesDisplayId(DISPLAY_2)).isTrue() - val task3 = SingleTask(createTask(1, DEFAULT_DISPLAY)) - assertThat(task3.matchesDisplayId(DEFAULT_DISPLAY)).isTrue() - assertThat(task3.matchesDisplayId(DISPLAY_2)).isFalse() - } - - @Test - fun testSplitTask_matchesDisplayId() { - val splitBounds = - SplitBounds( - Rect(), - Rect(), - 1, - 2, - SplitScreenConstants.SNAP_TO_2_50_50, - ) - val task1 = - SplitTask(createTask(1, INVALID_DISPLAY), createTask(2, INVALID_DISPLAY), splitBounds) - assertThat(task1.matchesDisplayId(DEFAULT_DISPLAY)).isTrue() - assertThat(task1.matchesDisplayId(DISPLAY_2)).isFalse() - val task2 = SplitTask(createTask(1, INVALID_DISPLAY), createTask(2, DISPLAY_2), splitBounds) - assertThat(task2.matchesDisplayId(DEFAULT_DISPLAY)).isTrue() - assertThat(task2.matchesDisplayId(DISPLAY_2)).isFalse() - val task3 = SplitTask(createTask(1, DISPLAY_2), createTask(2, INVALID_DISPLAY), splitBounds) - assertThat(task3.matchesDisplayId(DEFAULT_DISPLAY)).isFalse() - assertThat(task3.matchesDisplayId(DISPLAY_2)).isTrue() - val task4 = - SplitTask(createTask(1, DEFAULT_DISPLAY), createTask(2, DEFAULT_DISPLAY), splitBounds) - assertThat(task4.matchesDisplayId(DEFAULT_DISPLAY)).isTrue() - assertThat(task4.matchesDisplayId(DISPLAY_2)).isFalse() - val task5 = SplitTask(createTask(1, DEFAULT_DISPLAY), createTask(2, DISPLAY_2), splitBounds) - assertThat(task5.matchesDisplayId(DEFAULT_DISPLAY)).isTrue() - assertThat(task5.matchesDisplayId(DISPLAY_2)).isFalse() - val task6 = SplitTask(createTask(1, DISPLAY_2), createTask(2, DEFAULT_DISPLAY), splitBounds) - assertThat(task6.matchesDisplayId(DEFAULT_DISPLAY)).isFalse() - assertThat(task6.matchesDisplayId(DISPLAY_2)).isTrue() - } - - private fun createTask(id: Int, displayId: Int = INVALID_DISPLAY, pkg: String? = null): Task { - val intent = Intent() - pkg.let { intent.setPackage(it) } - return Task( - Task.TaskKey( - id, - 0, - intent, - ComponentName(pkg ?: "", ""), - 0, - 0, - displayId, - null, - 0, - false, - false, - ) - ) - } - - companion object { - const val DISPLAY_2 = 2 - const val PACKAGE = "com.android.launcher3" + private fun createTask(id: Int): Task { + return Task(Task.TaskKey(id, 0, Intent(), ComponentName("", ""), 0, 0)) } } diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/SplitSelectStateControllerTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/SplitSelectStateControllerTest.kt index d6f150c8e2..e4bdba510f 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/SplitSelectStateControllerTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/SplitSelectStateControllerTest.kt @@ -39,7 +39,6 @@ import com.android.quickstep.util.SplitSelectStateController.SplitFromDesktopCon import com.android.quickstep.views.RecentsView import com.android.quickstep.views.RecentsViewContainer import com.android.systemui.shared.recents.model.Task -import com.android.wm.shell.shared.split.SplitBounds import com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50 import java.util.function.Consumer import org.junit.Assert.assertEquals @@ -664,7 +663,7 @@ class SplitSelectStateControllerTest { return SplitTask( task1, task2, - SplitBounds( + SplitConfigurationOptions.SplitBounds( /* leftTopBounds = */ Rect(), /* rightBottomBounds = */ Rect(), /* leftTopTaskId = */ task1.key.id, @@ -702,7 +701,7 @@ class SplitSelectStateControllerTest { return SplitTask( task1, task2, - SplitBounds( + SplitConfigurationOptions.SplitBounds( /* leftTopBounds = */ Rect(), /* rightBottomBounds = */ Rect(), /* leftTopTaskId = */ task1.key.id, diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TaskGridNavHelperTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TaskGridNavHelperTest.kt index f776b94cd0..cb088fda56 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TaskGridNavHelperTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TaskGridNavHelperTest.kt @@ -786,17 +786,6 @@ class TaskGridNavHelperTest { .isEqualTo(ADD_DESK_PLACEHOLDER_ID) } - /* - 5 3 1 | - CLEAR_ALL | Invalid ID: - 6 4 2 | [25] --> [25] - */ - @Test - fun nextGridPage_invalidId_pressTab_noCycle_returnsCurrentPage() { - assertThat(getNextGridPage(currentPageTaskViewId = 25, TAB, delta = -1, cycle = false)) - .isEqualTo(25) - } - // Col offset: 0 1 2 // ----------- // ID grid: 4 2 0 start diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TaskViewSimulatorTest.java b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TaskViewSimulatorTest.java index 060f13f1e2..be76f9e86d 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TaskViewSimulatorTest.java +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TaskViewSimulatorTest.java @@ -40,9 +40,9 @@ import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.util.AllModulesMinusWMProxy; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.DisplayController.Info; +import com.android.launcher3.util.LauncherModelHelper; import com.android.launcher3.util.NavigationMode; import com.android.launcher3.util.RotationUtils; -import com.android.launcher3.util.SandboxApplication; import com.android.launcher3.util.WindowBounds; import com.android.launcher3.util.window.CachedDisplayInfo; import com.android.launcher3.util.window.WindowManagerProxy; @@ -55,7 +55,6 @@ import dagger.Component; import org.hamcrest.Description; import org.hamcrest.TypeSafeMatcher; import org.junit.Assert; -import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; @@ -66,8 +65,6 @@ import java.util.List; @RunWith(AndroidJUnit4.class) public class TaskViewSimulatorTest { - @Rule public final SandboxApplication app = new SandboxApplication(); - @Test public void taskProperlyScaled_portrait_noRotation_sameInsets1() { new TaskMatrixVerifier() @@ -126,7 +123,7 @@ public class TaskViewSimulatorTest { .verifyNoTransforms(); } - private class TaskMatrixVerifier extends TransformParams { + private static class TaskMatrixVerifier extends TransformParams { private Point mDisplaySize = new Point(); private int mDensityDpi = DisplayMetrics.DENSITY_DEFAULT; @@ -166,67 +163,73 @@ public class TaskViewSimulatorTest { } void verifyNoTransforms() { - DisplayController mockController = mock(DisplayController.class); + LauncherModelHelper helper = new LauncherModelHelper(); + try { + DisplayController mockController = mock(DisplayController.class); - app.initDaggerComponent( - DaggerTaskViewSimulatorTest_TaskViewSimulatorTestComponent.builder() - .bindDisplayController(mockController)); - int rotation = mDisplaySize.x > mDisplaySize.y - ? Surface.ROTATION_90 : Surface.ROTATION_0; - CachedDisplayInfo cdi = new CachedDisplayInfo(mDisplaySize, rotation); - WindowBounds wm = new WindowBounds( - new Rect(0, 0, mDisplaySize.x, mDisplaySize.y), - mDisplayInsets); - List<WindowBounds> allBounds = new ArrayList<>(4); - for (int i = 0; i < 4; i++) { - Rect boundsR = new Rect(wm.bounds); - Rect insetsR = new Rect(wm.insets); + helper.sandboxContext.initDaggerComponent( + DaggerTaskViewSimulatorTest_TaskViewSimulatorTestComponent.builder() + .bindDisplayController(mockController)); + int rotation = mDisplaySize.x > mDisplaySize.y + ? Surface.ROTATION_90 : Surface.ROTATION_0; + CachedDisplayInfo cdi = new CachedDisplayInfo(mDisplaySize, rotation); + WindowBounds wm = new WindowBounds( + new Rect(0, 0, mDisplaySize.x, mDisplaySize.y), + mDisplayInsets); + List<WindowBounds> allBounds = new ArrayList<>(4); + for (int i = 0; i < 4; i++) { + Rect boundsR = new Rect(wm.bounds); + Rect insetsR = new Rect(wm.insets); - RotationUtils.rotateRect(insetsR, RotationUtils.deltaRotation(rotation, i)); - RotationUtils.rotateRect(boundsR, RotationUtils.deltaRotation(rotation, i)); - boundsR.set(0, 0, Math.abs(boundsR.width()), Math.abs(boundsR.height())); - allBounds.add(new WindowBounds(boundsR, insetsR)); + RotationUtils.rotateRect(insetsR, RotationUtils.deltaRotation(rotation, i)); + RotationUtils.rotateRect(boundsR, RotationUtils.deltaRotation(rotation, i)); + boundsR.set(0, 0, Math.abs(boundsR.width()), Math.abs(boundsR.height())); + allBounds.add(new WindowBounds(boundsR, insetsR)); + } + + WindowManagerProxy wmProxy = mock(WindowManagerProxy.class); + doReturn(cdi).when(wmProxy).getDisplayInfo(any()); + doReturn(wm).when(wmProxy).getRealBounds(any(), any()); + doReturn(NavigationMode.NO_BUTTON).when(wmProxy).getNavigationMode(any()); + + ArrayMap<CachedDisplayInfo, List<WindowBounds>> perDisplayBoundsCache = + new ArrayMap<>(); + perDisplayBoundsCache.put(cdi.normalize(wmProxy), allBounds); + + Configuration configuration = new Configuration(); + configuration.densityDpi = mDensityDpi; + Context configurationContext = helper.sandboxContext.createConfigurationContext( + configuration); + + DisplayController.Info info = new Info( + configurationContext, wmProxy, perDisplayBoundsCache); + when(mockController.getInfo()).thenReturn(info); + + mDeviceProfile = InvariantDeviceProfile.INSTANCE.get(helper.sandboxContext) + .getBestMatch(mAppBounds.width(), mAppBounds.height(), rotation); + mDeviceProfile.updateInsets(mLauncherInsets); + + TaskViewSimulator tvs = new TaskViewSimulator(helper.sandboxContext, + FallbackActivityInterface.INSTANCE, false, 0); + tvs.setDp(mDeviceProfile); + + int launcherRotation = info.rotation; + if (mAppRotation < 0) { + mAppRotation = launcherRotation; + } + + tvs.getOrientationState().update(launcherRotation, mAppRotation); + if (mAppInsets == null) { + mAppInsets = new Rect(mLauncherInsets); + } + tvs.setPreviewBounds(mAppBounds, mAppInsets); + + tvs.fullScreenProgress.value = 1; + tvs.recentsViewScale.value = tvs.getFullScreenScale(); + tvs.apply(this); + } finally { + helper.destroy(); } - - WindowManagerProxy wmProxy = mock(WindowManagerProxy.class); - doReturn(cdi).when(wmProxy).getDisplayInfo(any()); - doReturn(wm).when(wmProxy).getRealBounds(any(), any()); - doReturn(NavigationMode.NO_BUTTON).when(wmProxy).getNavigationMode(any()); - - ArrayMap<CachedDisplayInfo, List<WindowBounds>> perDisplayBoundsCache = - new ArrayMap<>(); - perDisplayBoundsCache.put(cdi.normalize(wmProxy), allBounds); - - Configuration configuration = new Configuration(); - configuration.densityDpi = mDensityDpi; - Context configurationContext = app.createConfigurationContext(configuration); - - DisplayController.Info info = new Info( - configurationContext, false, wmProxy, perDisplayBoundsCache, mDensityDpi); - when(mockController.getInfo()).thenReturn(info); - - mDeviceProfile = InvariantDeviceProfile.INSTANCE.get(app) - .getBestMatch(mAppBounds.width(), mAppBounds.height(), rotation); - mDeviceProfile.updateInsets(mLauncherInsets); - - TaskViewSimulator tvs = new TaskViewSimulator(app, - FallbackActivityInterface.INSTANCE, false, 0); - tvs.setDp(mDeviceProfile); - - int launcherRotation = info.rotation; - if (mAppRotation < 0) { - mAppRotation = launcherRotation; - } - - tvs.getOrientationState().update(launcherRotation, mAppRotation); - if (mAppInsets == null) { - mAppInsets = new Rect(mLauncherInsets); - } - tvs.setPreviewBounds(mAppBounds, mAppInsets); - - tvs.fullScreenProgress.value = 1; - tvs.recentsViewScale.value = tvs.getFullScreenScale(); - tvs.apply(this); } @Override diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TransformParamsTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TransformParamsTest.kt index e1b31543a8..6dbb667a22 100644 --- a/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TransformParamsTest.kt +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/util/TransformParamsTest.kt @@ -34,7 +34,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.quickstep.RemoteAnimationTargets import com.android.quickstep.util.TransformParams.BuilderProxy.NO_OP -import com.android.window.flags2.Flags.FLAG_ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX +import com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX import org.junit.Before import org.junit.Rule import org.junit.Test diff --git a/quickstep/tests/src/com/android/launcher3/model/WidgetsPredicationUpdateTaskTest.java b/quickstep/tests/src/com/android/launcher3/model/WidgetsPredicationUpdateTaskTest.java index 69499fbb76..59ce6370ea 100644 --- a/quickstep/tests/src/com/android/launcher3/model/WidgetsPredicationUpdateTaskTest.java +++ b/quickstep/tests/src/com/android/launcher3/model/WidgetsPredicationUpdateTaskTest.java @@ -48,22 +48,18 @@ import android.platform.test.annotations.DisableFlags; import android.platform.test.flag.junit.SetFlagsRule; import android.text.TextUtils; -import androidx.annotation.NonNull; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import com.android.launcher3.Flags; -import com.android.launcher3.LauncherAppState; -import com.android.launcher3.LauncherModel; -import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.model.data.PredictedContainerInfo; +import com.android.launcher3.model.BgDataModel.FixedContainerItems; +import com.android.launcher3.model.QuickstepModelDelegate.PredictorState; import com.android.launcher3.util.LauncherLayoutBuilder; -import com.android.launcher3.util.ModelTestExtensions; -import com.android.launcher3.util.SandboxApplication; -import com.android.launcher3.util.rule.LayoutProviderRule; +import com.android.launcher3.util.LauncherModelHelper; import com.android.launcher3.widget.LauncherAppWidgetProviderInfo; import com.android.launcher3.widget.PendingAddWidgetInfo; +import org.junit.After; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -73,7 +69,6 @@ import org.mockito.junit.MockitoRule; import java.util.Arrays; import java.util.List; -import java.util.Set; import java.util.stream.Collectors; @SmallTest @@ -86,10 +81,6 @@ public final class WidgetsPredicationUpdateTaskTest { @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); - @Rule public SandboxApplication mContext = new SandboxApplication().withModelDependency(); - @Rule public LayoutProviderRule mLayoutProvider = new LayoutProviderRule(mContext); - - private AppWidgetProviderInfo mApp1Provider1; private AppWidgetProviderInfo mApp1Provider2; private AppWidgetProviderInfo mApp2Provider1; @@ -100,6 +91,7 @@ public final class WidgetsPredicationUpdateTaskTest { private List<AppWidgetProviderInfo> allWidgets; private FakeBgDataModelCallback mCallback = new FakeBgDataModelCallback(); + private LauncherModelHelper mModelHelper; private UserHandle mUserHandle; private LauncherApps mLauncherApps; @@ -107,6 +99,7 @@ public final class WidgetsPredicationUpdateTaskTest { @Before public void setup() throws Exception { mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_CATEGORIZED_WIDGET_SUGGESTIONS); + mModelHelper = new LauncherModelHelper(); mUserHandle = myUserHandle(); mApp1Provider1 = createAppWidgetProviderInfo( @@ -130,7 +123,7 @@ public final class WidgetsPredicationUpdateTaskTest { allWidgets = Arrays.asList(mApp1Provider1, mApp1Provider2, mApp2Provider1, mApp4Provider1, mApp4Provider2, mApp5Provider1, mApp6PinOnlyProvider1); - mLauncherApps = mContext.spyService(LauncherApps.class); + mLauncherApps = mModelHelper.sandboxContext.spyService(LauncherApps.class); doAnswer(i -> { String pkg = i.getArgument(0); ApplicationInfo applicationInfo = new ApplicationInfo(); @@ -142,7 +135,7 @@ public final class WidgetsPredicationUpdateTaskTest { return applicationInfo; }).when(mLauncherApps).getApplicationInfo(anyString(), anyInt(), any()); - AppWidgetManager manager = mContext.spyService(AppWidgetManager.class); + AppWidgetManager manager = mModelHelper.sandboxContext.spyService(AppWidgetManager.class); doReturn(allWidgets).when(manager).getInstalledProviders(); doReturn(allWidgets).when(manager).getInstalledProvidersForProfile(eq(myUserHandle())); doAnswer(i -> { @@ -155,9 +148,14 @@ public final class WidgetsPredicationUpdateTaskTest { LauncherLayoutBuilder builder = new LauncherLayoutBuilder() .atWorkspace(0, 1, 2).putWidget("app4", "provider1", 1, 1) .atWorkspace(0, 1, 3).putWidget("app5", "provider1", 1, 1); - mLayoutProvider.setupDefaultLayoutProvider(builder); - MAIN_EXECUTOR.submit(() -> getModel().addCallbacks(mCallback)).get(); - ModelTestExtensions.INSTANCE.loadModelSync(getModel()); + mModelHelper.setupDefaultLayoutProvider(builder); + MAIN_EXECUTOR.submit(() -> mModelHelper.getModel().addCallbacks(mCallback)).get(); + mModelHelper.loadModelSync(); + } + + @After + public void tearDown() { + mModelHelper.destroy(); } @Test @@ -177,7 +175,7 @@ public final class WidgetsPredicationUpdateTaskTest { AppTarget app5 = new AppTarget(new AppTargetId("app5"), "app5", "provider1", mUserHandle); mCallback.mRecommendedWidgets = null; - getModel().enqueueModelUpdateTask( + mModelHelper.getModel().enqueueModelUpdateTask( newWidgetsPredicationTask(List.of(app5, app3, app2, app4, app1))); runOnExecutorSync(MAIN_EXECUTOR, () -> { }); @@ -187,8 +185,7 @@ public final class WidgetsPredicationUpdateTaskTest { // 2. app3 doesn't have a widget. // 3. only 1 widget is picked from app1 because we only want to promote one widget // per app. - List<PendingAddWidgetInfo> recommendedWidgets = mCallback.mRecommendedWidgets - .getContents() + List<PendingAddWidgetInfo> recommendedWidgets = mCallback.mRecommendedWidgets.items .stream() .map(itemInfo -> (PendingAddWidgetInfo) itemInfo) .collect(Collectors.toList()); @@ -219,13 +216,12 @@ public final class WidgetsPredicationUpdateTaskTest { mUserHandle); mCallback.mRecommendedWidgets = null; - getModel().enqueueModelUpdateTask( + mModelHelper.getModel().enqueueModelUpdateTask( newWidgetsPredicationTask(List.of(widget5, widget3, widget4, widget1))); runOnExecutorSync(MAIN_EXECUTOR, () -> { }); // Only widgets suggested by prediction system are returned. - List<PendingAddWidgetInfo> recommendedWidgets = mCallback.mRecommendedWidgets - .getContents() + List<PendingAddWidgetInfo> recommendedWidgets = mCallback.mRecommendedWidgets.items .stream() .map(itemInfo -> (PendingAddWidgetInfo) itemInfo) .collect(Collectors.toList()); @@ -245,13 +241,12 @@ public final class WidgetsPredicationUpdateTaskTest { mUserHandle); mCallback.mRecommendedWidgets = null; - getModel().enqueueModelUpdateTask( + mModelHelper.getModel().enqueueModelUpdateTask( newWidgetsPredicationTask(List.of(widget1, widget6))); runOnExecutorSync(MAIN_EXECUTOR, () -> { }); // Only widget 1 (and no widget 6 as its meant to be hidden from picker). - List<PendingAddWidgetInfo> recommendedWidgets = mCallback.mRecommendedWidgets - .getContents() + List<PendingAddWidgetInfo> recommendedWidgets = mCallback.mRecommendedWidgets.items .stream() .map(itemInfo -> (PendingAddWidgetInfo) itemInfo) .collect(Collectors.toList()); @@ -273,22 +268,13 @@ public final class WidgetsPredicationUpdateTaskTest { appTargets); } - private LauncherModel getModel() { - return LauncherAppState.getInstance(mContext).getModel(); - } - private final class FakeBgDataModelCallback implements BgDataModel.Callbacks { - private PredictedContainerInfo mRecommendedWidgets = null; + private FixedContainerItems mRecommendedWidgets = null; @Override - public void bindItemsUpdated(@NonNull Set<ItemInfo> updates) { - for (ItemInfo update : updates) { - if (update.id == CONTAINER_WIDGETS_PREDICTION - && update instanceof PredictedContainerInfo pci) { - mRecommendedWidgets = pci; - } - } + public void bindExtraContainerItems(FixedContainerItems item) { + mRecommendedWidgets = item; } } } diff --git a/quickstep/tests/src/com/android/launcher3/statehandlers/DepthControllerTest.kt b/quickstep/tests/src/com/android/launcher3/statehandlers/DepthControllerTest.kt index a91ee3a0f4..17cca0b7d9 100644 --- a/quickstep/tests/src/com/android/launcher3/statehandlers/DepthControllerTest.kt +++ b/quickstep/tests/src/com/android/launcher3/statehandlers/DepthControllerTest.kt @@ -17,20 +17,12 @@ package com.android.launcher3.statehandlers import android.content.res.Resources -import android.platform.test.annotations.EnableFlags import android.view.ViewTreeObserver import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest -import com.android.launcher3.Flags import com.android.launcher3.Launcher -import com.android.launcher3.LauncherState import com.android.launcher3.R import com.android.launcher3.dragndrop.DragLayer -import com.android.launcher3.statemanager.StateManager -import com.android.launcher3.uioverrides.QuickstepLauncher -import java.util.Collections -import junit.framework.TestCase.assertFalse -import junit.framework.TestCase.assertTrue import org.junit.Before import org.junit.Test import org.junit.runner.RunWith @@ -47,8 +39,7 @@ import org.mockito.MockitoAnnotations class DepthControllerTest { private lateinit var underTest: DepthController - @Mock private lateinit var launcher: QuickstepLauncher - @Mock private lateinit var stateManager: StateManager<LauncherState, Launcher> + @Mock private lateinit var launcher: Launcher @Mock private lateinit var resource: Resources @Mock private lateinit var dragLayer: DragLayer @Mock private lateinit var viewTreeObserver: ViewTreeObserver @@ -60,8 +51,6 @@ class DepthControllerTest { `when`(resource.getInteger(R.integer.max_depth_blur_radius)).thenReturn(30) `when`(launcher.dragLayer).thenReturn(dragLayer) `when`(dragLayer.viewTreeObserver).thenReturn(viewTreeObserver) - `when`(launcher.stateManager).thenReturn(stateManager) - `when`(launcher.depthBlurTargets).thenReturn(Collections.emptyList()) underTest = DepthController(launcher) } @@ -113,96 +102,4 @@ class DepthControllerTest { // We should only call addOnDrawListener 1 time verify(viewTreeObserver).addOnDrawListener(same(underTest.mOnDrawListener)) } - - @Test - @EnableFlags(Flags.FLAG_ALL_APPS_BLUR) - fun test_blurWorkspaceDepthTargets() { - // Transitioning to ALL_APPS from any state should blur the workspace depth targets. - - `when`(stateManager.currentStableState).thenReturn(LauncherState.NORMAL) - `when`(stateManager.state).thenReturn(LauncherState.ALL_APPS) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.ALL_APPS) - `when`(stateManager.state).thenReturn(LauncherState.ALL_APPS) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.SPRING_LOADED) - `when`(stateManager.state).thenReturn(LauncherState.ALL_APPS) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.EDIT_MODE) - `when`(stateManager.state).thenReturn(LauncherState.ALL_APPS) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.BACKGROUND_APP) - `when`(stateManager.state).thenReturn(LauncherState.ALL_APPS) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - // Returning from ALL_APPS to NORMAL should continue blurring the workspace depth targets. - - `when`(stateManager.currentStableState).thenReturn(LauncherState.ALL_APPS) - `when`(stateManager.state).thenReturn(LauncherState.NORMAL) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - // Exiting ALL_APPS to other states such as drag-and-drop should not blur the workspace. - - `when`(stateManager.currentStableState).thenReturn(LauncherState.ALL_APPS) - `when`(stateManager.state).thenReturn(LauncherState.SPRING_LOADED) - assertFalse(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.ALL_APPS) - `when`(stateManager.state).thenReturn(LauncherState.EDIT_MODE) - assertFalse(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.ALL_APPS) - `when`(stateManager.state).thenReturn(LauncherState.OVERVIEW) - assertFalse(underTest.blurWorkspaceDepthTargets()) - } - - @Test - @EnableFlags(Flags.FLAG_ALL_APPS_BLUR) - fun test_blurWorkspaceDepthTargets_withTargetState() { - // Transitioning to ALL_APPS from any state should blur the workspace depth targets. - - `when`(stateManager.currentStableState).thenReturn(LauncherState.NORMAL) - `when`(stateManager.targetState).thenReturn(LauncherState.ALL_APPS) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.ALL_APPS) - `when`(stateManager.targetState).thenReturn(LauncherState.ALL_APPS) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.SPRING_LOADED) - `when`(stateManager.targetState).thenReturn(LauncherState.ALL_APPS) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.EDIT_MODE) - `when`(stateManager.targetState).thenReturn(LauncherState.ALL_APPS) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.BACKGROUND_APP) - `when`(stateManager.targetState).thenReturn(LauncherState.ALL_APPS) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - // Returning from ALL_APPS to NORMAL should continue blurring the workspace depth targets. - - `when`(stateManager.currentStableState).thenReturn(LauncherState.ALL_APPS) - `when`(stateManager.targetState).thenReturn(LauncherState.NORMAL) - assertTrue(underTest.blurWorkspaceDepthTargets()) - - // Exiting ALL_APPS to other states such as drag-and-drop should not blur the workspace. - - `when`(stateManager.currentStableState).thenReturn(LauncherState.ALL_APPS) - `when`(stateManager.targetState).thenReturn(LauncherState.SPRING_LOADED) - assertFalse(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.ALL_APPS) - `when`(stateManager.targetState).thenReturn(LauncherState.EDIT_MODE) - assertFalse(underTest.blurWorkspaceDepthTargets()) - - `when`(stateManager.currentStableState).thenReturn(LauncherState.ALL_APPS) - `when`(stateManager.targetState).thenReturn(LauncherState.OVERVIEW) - assertFalse(underTest.blurWorkspaceDepthTargets()) - } } diff --git a/quickstep/tests/src/com/android/launcher3/taskbar/bubbles/animation/BubbleBarViewAnimatorTest.kt b/quickstep/tests/src/com/android/launcher3/taskbar/bubbles/animation/BubbleBarViewAnimatorTest.kt index 0a9ee2c8b6..8f26795045 100644 --- a/quickstep/tests/src/com/android/launcher3/taskbar/bubbles/animation/BubbleBarViewAnimatorTest.kt +++ b/quickstep/tests/src/com/android/launcher3/taskbar/bubbles/animation/BubbleBarViewAnimatorTest.kt @@ -1396,23 +1396,6 @@ class BubbleBarViewAnimatorTest { private fun setUpBubbleBar() { bubbleBarView = BubbleBarView(context) - bubbleBarView.setController( - object : BubbleBarView.Controller { - override fun getBubbleBarTranslationY(): Float = 0f - - override fun onBubbleBarTouched() {} - - override fun expandBubbleBar() {} - - override fun dismissBubbleBar() {} - - override fun updateBubbleBarLocation(location: BubbleBarLocation?, source: Int) {} - - override fun setIsDragging(dragging: Boolean) {} - - override fun onBubbleBarExpandedStateChanged(expanded: Boolean) {} - } - ) InstrumentationRegistry.getInstrumentation().runOnMainSync { bubbleBarView.layoutParams = FrameLayout.LayoutParams(0, 0) val inflater = LayoutInflater.from(context) diff --git a/quickstep/tests/src/com/android/quickstep/AbstractQuickStepTest.java b/quickstep/tests/src/com/android/quickstep/AbstractQuickStepTest.java index dc5db4bd59..c215ff2227 100644 --- a/quickstep/tests/src/com/android/quickstep/AbstractQuickStepTest.java +++ b/quickstep/tests/src/com/android/quickstep/AbstractQuickStepTest.java @@ -16,25 +16,20 @@ package com.android.quickstep; -import static com.android.quickstep.fallback.RecentsStateUtilsKt.hasEquivalentRecentsState; -import static com.android.quickstep.fallback.RecentsStateUtilsKt.toLauncherState; - import static org.junit.Assert.assertTrue; import android.os.SystemProperties; -import androidx.annotation.Nullable; import androidx.test.uiautomator.By; import androidx.test.uiautomator.Until; -import com.android.launcher3.LauncherState; import com.android.launcher3.tapl.LaunchedAppState; import com.android.launcher3.tapl.TestHelpers; +import com.android.launcher3.ui.AbstractLauncherUiTest; import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.launcher3.util.TestUtil; import com.android.launcher3.util.Wait; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; -import com.android.quickstep.fallback.window.RecentsWindowFlags; +import com.android.quickstep.fallback.RecentsState; import com.android.quickstep.fallback.window.RecentsWindowManager; import com.android.quickstep.views.RecentsView; @@ -48,8 +43,7 @@ import java.util.function.Supplier; /** * Base class for all instrumentation tests that deal with Quickstep. */ -public abstract class AbstractQuickStepTest - extends AbstractLauncherUiTest<QuickstepLauncher, RecentsView<?, ?>> { +public abstract class AbstractQuickStepTest extends AbstractLauncherUiTest<QuickstepLauncher> { public static final boolean ENABLE_SHELL_TRANSITIONS = SystemProperties.getBoolean("persist.wm.debug.shell_transit", true); @Override @@ -62,16 +56,19 @@ public abstract class AbstractQuickStepTest @Override protected void onLauncherActivityClose(QuickstepLauncher launcher) { - super.onLauncherActivityClose(launcher); - if (RecentsWindowFlags.enableLauncherOverviewInWindow) { - executeOnRecentsWindowIfPresent(RecentsWindowManager::cleanupRecentsWindow); - } RecentsView recentsView = launcher.getOverviewPanel(); if (recentsView != null) { recentsView.finishRecentsAnimation(false /* toRecents */, null); } } + // Cannot be used in TaplTests between a Tapl call injecting a gesture and a tapl call + // expecting the results of that gesture because the wait can hide flakeness. + protected void waitForRecentsWindowState(String message, Supplier<RecentsState> state) { + waitForRecentsWindowCondition(message, recentsWindow -> + recentsWindow.getStateManager().getCurrentStableState() == state.get()); + } + // Cannot be used in TaplTests after injecting any gesture using Tapl because this can hide // flakiness. protected void waitForRecentsWindowCondition(String @@ -79,6 +76,15 @@ public abstract class AbstractQuickStepTest waitForRecentsWindowCondition(message, condition, TestUtil.DEFAULT_UI_TIMEOUT); } + protected <T> T getFromRecentsWindow(Function<RecentsWindowManager, T> f) { + if (!TestHelpers.isInLauncherProcess()) return null; + return getOnUiThread(() -> { + RecentsWindowManager recentsWindowManager = + RecentsWindowManager.getRecentsWindowTracker().getCreatedContext(); + return recentsWindowManager != null ? f.apply(recentsWindowManager) : null; + }); + } + // Cannot be used in TaplTests after injecting any gesture using Tapl because this can hide // flakiness. protected void waitForRecentsWindowCondition( @@ -88,68 +94,10 @@ public abstract class AbstractQuickStepTest Wait.atMost(message, () -> getFromRecentsWindow(condition), mLauncher, timeout); } - protected <T> T getFromRecentsWindowIfPresent(Function<RecentsWindowManager, T> f) { - if (!TestHelpers.isInLauncherProcess()) return null; - return getFromRecentsWindow(recentsWindowManager -> - recentsWindowManager == null ? null : f.apply(recentsWindowManager)); - } - - protected <T> T getFromRecentsWindow(Function<RecentsWindowManager, T> f) { - if (!TestHelpers.isInLauncherProcess()) return null; - return getOnUiThread(() -> - f.apply(RecentsWindowManager.getRecentsWindowTracker().getCreatedContext())); - } - - protected void executeOnRecentsWindowIfPresent(Consumer<RecentsWindowManager> f) { - if (!TestHelpers.isInLauncherProcess()) return; - getFromRecentsWindowIfPresent(recentsWindowManager -> { - f.accept(recentsWindowManager); - return null; - }); - } - - @Override - protected boolean isInState(Supplier<LauncherState> state) { + protected boolean isInRecentsWindowState(Supplier<RecentsState> state) { if (!TestHelpers.isInLauncherProcess()) return true; - if (!RecentsWindowFlags.enableLauncherOverviewInWindow - || !hasEquivalentRecentsState(state.get())) { - return super.isInState(state); - } - return getFromRecentsWindow(recentsWindowManager -> - recentsWindowManager != null && toLauncherState( - recentsWindowManager.getStateManager().getState()) == state.get()); - } - - @Override - protected void waitForState( - boolean forInitialization, String message, Supplier<LauncherState> state) { - if (!TestHelpers.isInLauncherProcess()) return; - if (!RecentsWindowFlags.enableLauncherOverviewInWindow - || !hasEquivalentRecentsState(state.get()) - || (forInitialization - && RecentsWindowManager.getRecentsWindowTracker().getCreatedContext() == null)) { - super.waitForState(forInitialization, message, state); - return; - } - waitForRecentsWindowCondition(message, recentsWindowManager -> - recentsWindowManager != null && toLauncherState( - recentsWindowManager.getStateManager().getState()) == state.get()); - } - - @Override - @Nullable - protected RecentsView getOverviewPanel() { - if (!TestHelpers.isInLauncherProcess()) return null; - if (!RecentsWindowFlags.enableLauncherOverviewInWindow) { - return super.getOverviewPanel(); - } - return getFromRecentsWindowIfPresent(RecentsWindowManager::getOverviewPanel); - } - - @Override - protected boolean useNullOverview() { - return super.useNullOverview() - && !RecentsWindowFlags.enableLauncherOverviewInWindow; + return getFromRecentsWindow( + recentsWindow -> recentsWindow.getStateManager().getState() == state.get()); } protected void assertTestActivityIsRunning(int activityNumber, String message) { diff --git a/quickstep/tests/src/com/android/quickstep/AbstractTaplTestsTaskbar.java b/quickstep/tests/src/com/android/quickstep/AbstractTaplTestsTaskbar.java index a3a12bfba0..0ccc76b24e 100644 --- a/quickstep/tests/src/com/android/quickstep/AbstractTaplTestsTaskbar.java +++ b/quickstep/tests/src/com/android/quickstep/AbstractTaplTestsTaskbar.java @@ -24,10 +24,10 @@ import android.content.Intent; import com.android.launcher3.tapl.LauncherInstrumentation; import com.android.launcher3.tapl.Taskbar; +import com.android.launcher3.ui.AbstractLauncherUiTest; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.LauncherLayoutBuilder; import com.android.launcher3.util.TestUtil; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; import org.junit.After; import org.junit.Assume; diff --git a/quickstep/tests/src/com/android/quickstep/AspectRatioSystemShortcutTests.kt b/quickstep/tests/src/com/android/quickstep/AspectRatioSystemShortcutTests.kt index 7d6323cb6e..10e85e6a1b 100644 --- a/quickstep/tests/src/com/android/quickstep/AspectRatioSystemShortcutTests.kt +++ b/quickstep/tests/src/com/android/quickstep/AspectRatioSystemShortcutTests.kt @@ -33,7 +33,6 @@ import android.view.ViewGroup.LayoutParams.MATCH_PARENT import androidx.test.platform.app.InstrumentationRegistry import com.android.launcher3.AbstractFloatingView import com.android.launcher3.AbstractFloatingViewHelper -import com.android.launcher3.Flags.enableRefactorTaskContentView import com.android.launcher3.Flags.enableRefactorTaskThumbnail import com.android.launcher3.InvariantDeviceProfile import com.android.launcher3.R @@ -43,18 +42,15 @@ import com.android.launcher3.logging.StatsLogManager.StatsLogger import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.model.data.TaskViewItemInfo import com.android.launcher3.util.RunnableList -import com.android.launcher3.util.SandboxContext import com.android.launcher3.util.SplitConfigurationOptions import com.android.launcher3.util.TransformingTouchDelegate import com.android.launcher3.util.WindowBounds -import com.android.quickstep.TaskViewTestDIHelpers.initializeRecentsDependencies -import com.android.quickstep.TaskViewTestDIHelpers.mockRecentsModel import com.android.quickstep.orientation.LandscapePagedViewHandler +import com.android.quickstep.recents.data.RecentsDeviceProfileRepository +import com.android.quickstep.recents.data.RecentsRotationStateRepository import com.android.quickstep.recents.di.RecentsDependencies -import com.android.quickstep.task.thumbnail.TaskContentView import com.android.quickstep.task.thumbnail.TaskThumbnailView import com.android.quickstep.util.RecentsOrientedState -import com.android.quickstep.util.SingleTask import com.android.quickstep.views.LauncherRecentsView import com.android.quickstep.views.RecentsViewContainer import com.android.quickstep.views.TaskContainer @@ -63,6 +59,7 @@ import com.android.quickstep.views.TaskView import com.android.quickstep.views.TaskViewIcon import com.android.systemui.shared.recents.model.Task import com.android.systemui.shared.recents.model.Task.TaskKey +import com.android.window.flags.Flags import com.google.common.truth.Truth.assertThat import org.junit.After import org.junit.Before @@ -70,6 +67,7 @@ import org.junit.Rule import org.junit.Test import org.mockito.Mockito import org.mockito.Mockito.eq +import org.mockito.Mockito.isNull import org.mockito.kotlin.any import org.mockito.kotlin.argumentCaptor import org.mockito.kotlin.doReturn @@ -85,7 +83,6 @@ class AspectRatioSystemShortcutTests { /** Spy on a concrete Context so we can reference real View, Layout, and Display properties. */ private val context: Context = spy(InstrumentationRegistry.getInstrumentation().targetContext) - private val applicationContext = SandboxContext(context) /** * RecentsViewContainer and its super-interface ActivityContext contain methods to convert @@ -126,7 +123,9 @@ class AspectRatioSystemShortcutTests { private val statsLogger = mock<StatsLogger>() private val orientedState: RecentsOrientedState = mock(defaultAnswer = Mockito.RETURNS_DEEP_STUBS) - private lateinit var taskView: TaskView + private val taskView: TaskView = + LayoutInflater.from(context).cloneInContext(launcher).inflate(R.layout.task, null) as + TaskView @Before fun setUp() { @@ -137,17 +136,22 @@ class AspectRatioSystemShortcutTests { whenever(statsLogger.withItemInfo(any())).thenReturn(statsLogger) whenever(orientedState.orientationHandler).thenReturn(LandscapePagedViewHandler()) + taskView.setLayoutParams(ViewGroup.LayoutParams(MATCH_PARENT, MATCH_PARENT)) if (enableRefactorTaskThumbnail()) { - applicationContext.initDaggerComponent( - DaggerTaskViewTestComponent.builder().bindRecentsModel(mockRecentsModel()) + val recentsDependencies = RecentsDependencies.maybeInitialize(launcher) + val scopeId = recentsDependencies.createRecentsViewScope(launcher) + recentsDependencies.provide( + RecentsRotationStateRepository::class.java, + scopeId, + { mock<RecentsRotationStateRepository>() } + ) + recentsDependencies.provide( + RecentsDeviceProfileRepository::class.java, + scopeId, + { mock<RecentsDeviceProfileRepository>() } ) - initializeRecentsDependencies(launcher) } - taskView = - LayoutInflater.from(context).cloneInContext(launcher).inflate(R.layout.task, null) - as TaskView - taskView.setLayoutParams(ViewGroup.LayoutParams(MATCH_PARENT, MATCH_PARENT)) } @After @@ -161,14 +165,14 @@ class AspectRatioSystemShortcutTests { * When the corresponding feature flag is off, there will not be an option to open aspect ratio * settings. */ - @DisableFlags(com.android.window.flags2.Flags.FLAG_UNIVERSAL_RESIZABLE_BY_DEFAULT) + @DisableFlags(com.android.window.flags.Flags.FLAG_UNIVERSAL_RESIZABLE_BY_DEFAULT) @Test fun createShortcut_flaggedOff_notCreated() { val task = createTask() val taskContainer = createTaskContainer(task) setScreenSizeDp(widthDp = 1200, heightDp = 800) - taskView.bind(SingleTask(task), orientedState, taskOverlayFactory) + taskView.bind(task, orientedState, taskOverlayFactory) assertThat(factory.getShortcuts(launcher, taskContainer)).isNull() } @@ -177,14 +181,14 @@ class AspectRatioSystemShortcutTests { * When the screen doesn't meet or exceed sw600dp (eg. phone, watch), there will not be an * option to open aspect ratio settings. */ - @EnableFlags(com.android.window.flags2.Flags.FLAG_UNIVERSAL_RESIZABLE_BY_DEFAULT) + @EnableFlags(com.android.window.flags.Flags.FLAG_UNIVERSAL_RESIZABLE_BY_DEFAULT) @Test fun createShortcut_sw599dp_notCreated() { val task = createTask() val taskContainer = createTaskContainer(task) setScreenSizeDp(widthDp = 599, heightDp = 599) - taskView.bind(SingleTask(task), orientedState, taskOverlayFactory) + taskView.bind(task, orientedState, taskOverlayFactory) assertThat(factory.getShortcuts(launcher, taskContainer)).isNull() } @@ -193,7 +197,7 @@ class AspectRatioSystemShortcutTests { * When the screen does meet or exceed sw600dp (eg. tablet, inner foldable screen, home cinema) * there will be an option to open aspect ratio settings. */ - @EnableFlags(com.android.window.flags2.Flags.FLAG_UNIVERSAL_RESIZABLE_BY_DEFAULT) + @EnableFlags(com.android.window.flags.Flags.FLAG_UNIVERSAL_RESIZABLE_BY_DEFAULT) @Test fun createShortcut_sw800dp_created_andOpensSettings() { val task = createTask() @@ -202,7 +206,7 @@ class AspectRatioSystemShortcutTests { doReturn(taskViewItemInfo).whenever(taskContainer).itemInfo setScreenSizeDp(widthDp = 1200, heightDp = 800) - taskView.bind(SingleTask(task), orientedState, taskOverlayFactory) + taskView.bind(task, orientedState, taskOverlayFactory) val shortcuts = factory.getShortcuts(launcher, taskContainer) assertThat(shortcuts).hasSize(1) @@ -269,11 +273,6 @@ class AspectRatioSystemShortcutTests { TaskContainer( taskView, task, - when { - enableRefactorTaskContentView() -> mock<TaskContentView>() - enableRefactorTaskThumbnail() -> mock<TaskThumbnailView>() - else -> mock<TaskThumbnailViewDeprecated>() - }, if (enableRefactorTaskThumbnail()) mock<TaskThumbnailView>() else mock<TaskThumbnailViewDeprecated>(), mock<TaskViewIcon>(), diff --git a/quickstep/tests/src/com/android/quickstep/DesktopSystemShortcutTest.kt b/quickstep/tests/src/com/android/quickstep/DesktopSystemShortcutTest.kt index 3e8e0717d9..8a2393d539 100644 --- a/quickstep/tests/src/com/android/quickstep/DesktopSystemShortcutTest.kt +++ b/quickstep/tests/src/com/android/quickstep/DesktopSystemShortcutTest.kt @@ -16,9 +16,11 @@ package com.android.quickstep +import android.Manifest.permission.SYSTEM_ALERT_WINDOW import android.content.ComponentName import android.content.Context import android.content.Intent +import android.content.pm.PackageInfo import android.content.pm.PackageManager import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags @@ -30,8 +32,6 @@ import com.android.dx.mockito.inline.extended.StaticMockitoSession import com.android.internal.R import com.android.launcher3.AbstractFloatingView import com.android.launcher3.AbstractFloatingViewHelper -import com.android.launcher3.Flags -import com.android.launcher3.Flags.enableRefactorTaskContentView import com.android.launcher3.Flags.enableRefactorTaskThumbnail import com.android.launcher3.logging.StatsLogManager import com.android.launcher3.logging.StatsLogManager.LauncherEvent @@ -39,7 +39,6 @@ import com.android.launcher3.model.data.TaskViewItemInfo import com.android.launcher3.util.SplitConfigurationOptions import com.android.launcher3.util.TransformingTouchDelegate import com.android.quickstep.TaskOverlayFactory.TaskOverlay -import com.android.quickstep.task.thumbnail.TaskContentView import com.android.quickstep.task.thumbnail.TaskThumbnailView import com.android.quickstep.views.LauncherRecentsView import com.android.quickstep.views.RecentsViewContainer @@ -50,16 +49,16 @@ import com.android.quickstep.views.TaskViewIcon import com.android.quickstep.views.TaskViewType import com.android.systemui.shared.recents.model.Task import com.android.systemui.shared.recents.model.Task.TaskKey -import com.android.window.flags2.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY +import com.android.window.flags.Flags import com.android.wm.shell.shared.desktopmode.DesktopModeStatus import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource import com.google.common.truth.Truth.assertThat -import kotlin.test.assertIs -import kotlin.test.assertNotNull import org.junit.After import org.junit.Before import org.junit.Rule import org.junit.Test +import org.mockito.ArgumentMatchers.anyInt +import org.mockito.ArgumentMatchers.anyString import org.mockito.Mockito.`when` import org.mockito.kotlin.any import org.mockito.kotlin.doReturn @@ -98,7 +97,6 @@ class DesktopSystemShortcutTest { .startMocking() whenever(DesktopModeStatus.canEnterDesktopMode(any())).thenReturn(true) whenever(overlayFactory.createOverlay(any())).thenReturn(mock<TaskOverlay<*>>()) - doReturn(DEFAULT_DISPLAY).whenever(context).displayId whenever(launcher.asContext()).thenReturn(context) } @@ -118,29 +116,8 @@ class DesktopSystemShortcutTest { } @Test - @EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun createDesktopTaskShortcutFactory_noDisplayActivity() { - val baseComponent = ComponentName("", /* class */ "") - val taskKey = - TaskKey( - /* id */ 1, - /* windowingMode */ 0, - Intent(), - baseComponent, - /* userId */ 0, - /* lastActiveTime */ 2000, - DEFAULT_DISPLAY, - baseComponent, - /* numActivities */ 1, - /* isTopActivityNoDisplay */ true, - /* isActivityStackTransparent */ false, - ) - val taskContainer = createTaskContainer(Task(taskKey)) - val shortcuts = factory.getShortcuts(launcher, taskContainer) - } - - @Test - @EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) + @DisableFlags(Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION) fun createDesktopTaskShortcutFactory_transparentTask() { val baseComponent = ComponentName("", /* class */ "") val taskKey = @@ -163,7 +140,65 @@ class DesktopSystemShortcutTest { } @Test - @EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) + @EnableFlags( + Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, + Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION, + ) + fun createDesktopTaskShortcutFactoryPermissionEnabledAllowed_transparentTask() { + val packageManager: PackageManager = mock() + setUpTransparentPermission(packageManager, isAllowed = true) + val baseComponent = ComponentName("", /* class */ "") + val taskKey = + TaskKey( + /* id */ 1, + /* windowingMode */ 0, + Intent(), + baseComponent, + /* userId */ 0, + /* lastActiveTime */ 2000, + DEFAULT_DISPLAY, + baseComponent, + /* numActivities */ 1, + /* isTopActivityNoDisplay */ false, + /* isActivityStackTransparent */ true, + ) + val taskContainer = createTaskContainer(Task(taskKey)) + val shortcuts = factory.getShortcuts(launcher, taskContainer) + assertThat(shortcuts).isNull() + } + + @Test + @EnableFlags( + Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, + Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION, + ) + fun createDesktopTaskShortcutFactoryPermissionEnabledNotAllowed_transparentTask() { + val packageManager: PackageManager = mock() + setUpTransparentPermission(packageManager, isAllowed = false) + val baseComponent = ComponentName("", /* class */ "") + val homeActivities = ComponentName("defaultHomePackage", /* class */ "") + whenever(packageManager.getHomeActivities(any())).thenReturn(homeActivities) + val taskKey = + TaskKey( + /* id */ 1, + /* windowingMode */ 0, + Intent(), + baseComponent, + /* userId */ 0, + /* lastActiveTime */ 2000, + DEFAULT_DISPLAY, + baseComponent, + /* numActivities */ 1, + /* isTopActivityNoDisplay */ false, + /* isActivityStackTransparent */ true, + ) + val taskContainer = createTaskContainer(Task(taskKey).apply { isDockable = true }) + val shortcuts = factory.getShortcuts(launcher, taskContainer) + assertThat(shortcuts).isNotEmpty() + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) fun createDesktopTaskShortcutFactory_systemUiTask() { val sysUiPackageName: String = context.resources.getString(R.string.config_systemUi) val baseComponent = ComponentName(sysUiPackageName, /* class */ "") @@ -187,7 +222,7 @@ class DesktopSystemShortcutTest { } @Test - @EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) fun createDesktopTaskShortcutFactory_defaultHomeTask() { val packageManager: PackageManager = mock() whenever(context.packageManager).thenReturn(packageManager) @@ -222,11 +257,10 @@ class DesktopSystemShortcutTest { } @Test - fun desktopSystemShortcutClickedWithoutDesktopModeOnDisplay() { + fun desktopSystemShortcutClicked() { val task = createTask() val taskContainer = spy(createTaskContainer(task)) - whenever(DesktopModeStatus.isDesktopModeSupportedOnDisplay(any(), any())).thenReturn(false) whenever(launcher.getOverviewPanel<LauncherRecentsView>()).thenReturn(recentsView) whenever(launcher.statsLogManager).thenReturn(statsLogManager) whenever(statsLogManager.logger()).thenReturn(statsLogger) @@ -240,29 +274,10 @@ class DesktopSystemShortcutTest { doReturn(taskViewItemInfo).whenever(taskContainer).itemInfo val shortcuts = factory.getShortcuts(launcher, taskContainer) - assertThat(shortcuts).isNull() - } + assertThat(shortcuts).isNotNull() + assertThat(shortcuts!!.single()).isInstanceOf(DesktopSystemShortcut::class.java) - @Test - fun desktopSystemShortcutClickedWithDesktopModeOnDisplay() { - val task = createTask() - val taskContainer = spy(createTaskContainer(task)) - - whenever(DesktopModeStatus.isDesktopModeSupportedOnDisplay(any(), any())).thenReturn(true) - whenever(launcher.getOverviewPanel<LauncherRecentsView>()).thenReturn(recentsView) - whenever(launcher.statsLogManager).thenReturn(statsLogManager) - whenever(statsLogManager.logger()).thenReturn(statsLogger) - whenever(statsLogger.withItemInfo(any())).thenReturn(statsLogger) - whenever(taskView.context).thenReturn(context) - whenever(recentsView.moveTaskToDesktop(any(), any(), any())).thenAnswer { - val successCallback = it.getArgument<Runnable>(2) - successCallback.run() - } - val taskViewItemInfo = mock<TaskViewItemInfo>() - doReturn(taskViewItemInfo).whenever(taskContainer).itemInfo - - val shortcuts = assertNotNull(factory.getShortcuts(launcher, taskContainer)) - val desktopShortcut = assertIs<DesktopSystemShortcut>(shortcuts.single()) + val desktopShortcut = shortcuts.single() as DesktopSystemShortcut desktopShortcut.onClick(taskView) @@ -279,20 +294,7 @@ class DesktopSystemShortcutTest { verify(statsLogger).log(LauncherEvent.LAUNCHER_SYSTEM_SHORTCUT_DESKTOP_TAP) } - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_MENU_ON_SECONDARY_DISPLAY_BUGFIX) - fun createDesktopTaskShortcutFactoryOnSecondaryDisplayWithoutFlag() { - `when`(DesktopModeStatus.canEnterDesktopMode(any())).thenReturn(true) - `when`(DesktopModeStatus.isDesktopModeSupportedOnDisplay(any(), any())).thenReturn(true) - doReturn(SECONDARY_DISPLAY).whenever(context).displayId - - val taskContainer = createTaskContainer(createTask(displayId = SECONDARY_DISPLAY)) - - val shortcuts = factory.getShortcuts(launcher, taskContainer) - assertThat(shortcuts).isNull() - } - - private fun createTask(displayId: Int = DEFAULT_DISPLAY) = + private fun createTask() = Task( TaskKey( /* id */ 1, @@ -301,7 +303,7 @@ class DesktopSystemShortcutTest { ComponentName("", ""), /* userId */ 0, /* lastActiveTime */ 2000, - displayId, + DEFAULT_DISPLAY, ComponentName("", ""), /* numActivities */ 1, /* isTopActivityNoDisplay */ false, @@ -314,11 +316,6 @@ class DesktopSystemShortcutTest { TaskContainer( taskView, task, - when { - enableRefactorTaskContentView() -> mock<TaskContentView>() - enableRefactorTaskThumbnail() -> mock<TaskThumbnailView>() - else -> mock<TaskThumbnailViewDeprecated>() - }, if (enableRefactorTaskThumbnail()) mock<TaskThumbnailView>() else mock<TaskThumbnailViewDeprecated>(), mock<TaskViewIcon>(), @@ -329,14 +326,26 @@ class DesktopSystemShortcutTest { overlayFactory, ) + private fun setUpTransparentPermission(packageManager: PackageManager, isAllowed: Boolean) { + val packageInfo: PackageInfo = mock() + if (isAllowed) { + packageInfo.requestedPermissions = arrayOf(SYSTEM_ALERT_WINDOW) + } + whenever(context.packageManager).thenReturn(packageManager) + whenever( + packageManager.getPackageInfoAsUser( + anyString(), + eq(PackageManager.GET_PERMISSIONS), + anyInt(), + ) + ) + .thenReturn(packageInfo) + } + private fun createTaskViewMock(): TaskView { val taskView: TaskView = mock() whenever(taskView.type).thenReturn(TaskViewType.SINGLE) whenever(taskView.context).thenReturn(context) return taskView } - - private companion object { - const val SECONDARY_DISPLAY = 13 - } } diff --git a/quickstep/tests/src/com/android/quickstep/DigitalWellBeingToastTest.java b/quickstep/tests/src/com/android/quickstep/DigitalWellBeingToastTest.java index fb3d7d6b19..07d8f61992 100644 --- a/quickstep/tests/src/com/android/quickstep/DigitalWellBeingToastTest.java +++ b/quickstep/tests/src/com/android/quickstep/DigitalWellBeingToastTest.java @@ -15,33 +15,24 @@ */ package com.android.quickstep; -import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation; - -import static com.android.launcher3.util.TestUtil.resolveSystemAppInfo; +import static androidx.test.InstrumentationRegistry.getInstrumentation; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import android.app.PendingIntent; import android.app.usage.UsageStatsManager; import android.content.Intent; -import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.LargeTest; +import androidx.test.runner.AndroidJUnit4; import com.android.launcher3.Launcher; -import com.android.launcher3.LauncherState; -import com.android.launcher3.uioverrides.QuickstepLauncher; -import com.android.launcher3.util.BaseLauncherActivityTest; -import com.android.launcher3.util.rule.ScreenRecordRule; import com.android.quickstep.views.DigitalWellBeingToast; import com.android.quickstep.views.RecentsView; -import com.android.quickstep.views.TaskContainer; import com.android.quickstep.views.TaskView; -import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; @@ -49,50 +40,41 @@ import java.time.Duration; @LargeTest @RunWith(AndroidJUnit4.class) -public class DigitalWellBeingToastTest extends BaseLauncherActivityTest<QuickstepLauncher> { - - @Rule - public ScreenRecordRule mScreenRecordRule = new ScreenRecordRule(); - - - public final String calculatorPackage = - resolveSystemAppInfo(Intent.CATEGORY_APP_CALCULATOR).packageName; +public class TaplDigitalWellBeingToastTest extends AbstractQuickStepTest { + private static final String CALCULATOR_PACKAGE = + resolveSystemApp(Intent.CATEGORY_APP_CALCULATOR); @Test - public void testToast() { - startAppFast(calculatorPackage); + public void testToast() throws Exception { + startAppFast(CALCULATOR_PACKAGE); final UsageStatsManager usageStatsManager = - targetContext().getSystemService(UsageStatsManager.class); + mTargetContext.getSystemService(UsageStatsManager.class); final int observerId = 0; try { - final String[] packages = new String[]{calculatorPackage}; + final String[] packages = new String[]{CALCULATOR_PACKAGE}; // Set time limit for app. runWithShellPermission(() -> usageStatsManager.registerAppUsageLimitObserver(observerId, packages, Duration.ofSeconds(600), Duration.ofSeconds(300), - PendingIntent.getActivity(targetContext(), -1, new Intent() - .setPackage(targetContext().getPackageName()), + PendingIntent.getActivity(mTargetContext, -1, new Intent() + .setPackage(mTargetContext.getPackageName()), PendingIntent.FLAG_MUTABLE))); - // b/324261526 when removing BaseLauncherActivityTest we should be able to tell test - // by test test if they should start the activity from the start or wait, and that - // should get rid of this. - getLauncherActivity().close(); - loadLauncherSync(); + mLauncher.goHome(); final DigitalWellBeingToast toast = getToast(); - waitForLauncherCondition("Toast is not visible", launcher -> toast.getHasLimit()); - assertEquals("Toast text: ", "5 minutes left today", toast.getBannerText()); + waitForLauncherCondition("Toast is not visible", launcher -> toast.hasLimit()); + assertEquals("Toast text: ", "5 minutes left today", toast.getText()); // Unset time limit for app. runWithShellPermission( () -> usageStatsManager.unregisterAppUsageLimitObserver(observerId)); - getLauncherActivity().goToState(LauncherState.NORMAL); - assertFalse("Toast is visible", getToast().getHasLimit()); + mLauncher.goHome(); + assertFalse("Toast is visible", getToast().hasLimit()); } finally { runWithShellPermission( () -> usageStatsManager.unregisterAppUsageLimitObserver(observerId)); @@ -100,23 +82,19 @@ public class DigitalWellBeingToastTest extends BaseLauncherActivityTest<Quickste } private DigitalWellBeingToast getToast() { - getLauncherActivity().goToState(LauncherState.OVERVIEW); - final TaskView task = getLauncherActivity().getOnceNotNull( - "No latest task", - launcher -> getLatestTask(launcher) - ); + mLauncher.getWorkspace().switchToOverview(); + final TaskView task = getOnceNotNull("No latest task", launcher -> getLatestTask(launcher)); - return getLauncherActivity().getFromLauncher(launcher -> { - TaskContainer taskContainer = task.getFirstTaskContainer(); - assertNotNull(taskContainer); - assertTrue("Latest task is not Calculator", calculatorPackage.equals( + return getFromLauncher(launcher -> { + TaskView.TaskContainer taskContainer = task.getTaskContainers().get(0); + assertTrue("Latest task is not Calculator", CALCULATOR_PACKAGE.equals( taskContainer.getTask().getTopComponent().getPackageName())); return taskContainer.getDigitalWellBeingToast(); }); } private TaskView getLatestTask(Launcher launcher) { - return launcher.<RecentsView>getOverviewPanel().getFirstTaskView(); + return launcher.<RecentsView>getOverviewPanel().getTaskViewAt(0); } private void runWithShellPermission(Runnable action) { @@ -126,5 +104,6 @@ public class DigitalWellBeingToastTest extends BaseLauncherActivityTest<Quickste } finally { getInstrumentation().getUiAutomation().dropShellPermissionIdentity(); } + } } diff --git a/quickstep/tests/src/com/android/quickstep/ExternalDisplaySystemShortcutTest.kt b/quickstep/tests/src/com/android/quickstep/ExternalDisplaySystemShortcutTest.kt index 22802a9a8f..2db94f6f1a 100644 --- a/quickstep/tests/src/com/android/quickstep/ExternalDisplaySystemShortcutTest.kt +++ b/quickstep/tests/src/com/android/quickstep/ExternalDisplaySystemShortcutTest.kt @@ -20,6 +20,7 @@ import android.content.ComponentName import android.content.Context import android.content.Intent import android.content.pm.PackageManager +import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.SetFlagsRule import android.view.Display.DEFAULT_DISPLAY @@ -29,7 +30,6 @@ import com.android.dx.mockito.inline.extended.StaticMockitoSession import com.android.internal.R import com.android.launcher3.AbstractFloatingView import com.android.launcher3.AbstractFloatingViewHelper -import com.android.launcher3.Flags.enableRefactorTaskContentView import com.android.launcher3.Flags.enableRefactorTaskThumbnail import com.android.launcher3.logging.StatsLogManager import com.android.launcher3.logging.StatsLogManager.LauncherEvent @@ -37,7 +37,6 @@ import com.android.launcher3.model.data.TaskViewItemInfo import com.android.launcher3.util.SplitConfigurationOptions import com.android.launcher3.util.TransformingTouchDelegate import com.android.quickstep.TaskOverlayFactory.TaskOverlay -import com.android.quickstep.task.thumbnail.TaskContentView import com.android.quickstep.task.thumbnail.TaskThumbnailView import com.android.quickstep.views.LauncherRecentsView import com.android.quickstep.views.RecentsViewContainer @@ -47,7 +46,7 @@ import com.android.quickstep.views.TaskView import com.android.quickstep.views.TaskViewIcon import com.android.systemui.shared.recents.model.Task import com.android.systemui.shared.recents.model.Task.TaskKey -import com.android.window.flags2.Flags +import com.android.window.flags.Flags import com.android.wm.shell.shared.desktopmode.DesktopModeStatus import com.google.common.truth.Truth.assertThat import org.junit.After @@ -115,32 +114,7 @@ class ExternalDisplaySystemShortcutTest { Flags.FLAG_MOVE_TO_EXTERNAL_DISPLAY_SHORTCUT, Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, ) - fun createExternalDisplayTaskShortcut_noDisplayActivity() { - val baseComponent = ComponentName("", /* class */ "") - val taskKey = - TaskKey( - /* id */ 1, - /* windowingMode */ 0, - Intent(), - baseComponent, - /* userId */ 0, - /* lastActiveTime */ 2000, - DEFAULT_DISPLAY, - baseComponent, - /* numActivities */ 1, - /* isTopActivityNoDisplay */ true, - /* isActivityStackTransparent */ false, - ) - val taskContainer = createTaskContainer(Task(taskKey)) - val shortcuts = factory.getShortcuts(launcher, taskContainer) - assertThat(shortcuts).isNull() - } - - @Test - @EnableFlags( - Flags.FLAG_MOVE_TO_EXTERNAL_DISPLAY_SHORTCUT, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, - ) + @DisableFlags(Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION) fun createExternalDisplayTaskShortcut_transparentTask() { val baseComponent = ComponentName("", /* class */ "") val taskKey = @@ -272,11 +246,6 @@ class ExternalDisplaySystemShortcutTest { TaskContainer( taskView, task, - when { - enableRefactorTaskContentView() -> mock<TaskContentView>() - enableRefactorTaskThumbnail() -> mock<TaskThumbnailView>() - else -> mock<TaskThumbnailViewDeprecated>() - }, if (enableRefactorTaskThumbnail()) mock<TaskThumbnailView>() else mock<TaskThumbnailViewDeprecated>(), mock<TaskViewIcon>(), diff --git a/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java b/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java index 2485208e83..a4c9ef2d5c 100644 --- a/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java +++ b/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java @@ -16,21 +16,21 @@ package com.android.quickstep; import static android.content.pm.PackageManager.MATCH_DISABLED_COMPONENTS; -import static android.view.Display.DEFAULT_DISPLAY; import static androidx.test.InstrumentationRegistry.getInstrumentation; +import static com.android.launcher3.Flags.enableFallbackOverviewInWindow; import static com.android.launcher3.tapl.LauncherInstrumentation.WAIT_TIME_MS; import static com.android.launcher3.tapl.TestHelpers.getHomeIntentInPackage; import static com.android.launcher3.tapl.TestHelpers.getLauncherInMyProcess; +import static com.android.launcher3.ui.AbstractLauncherUiTest.DEFAULT_BROADCAST_TIMEOUT_SECS; +import static com.android.launcher3.ui.AbstractLauncherUiTest.resolveSystemApp; +import static com.android.launcher3.ui.AbstractLauncherUiTest.startAppFast; +import static com.android.launcher3.ui.AbstractLauncherUiTest.startTestActivity; import static com.android.launcher3.ui.TaplTestsLauncher3Test.getAppPackageName; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.rule.ShellCommandRule.disableHeadsUpNotification; import static com.android.launcher3.util.rule.ShellCommandRule.getLauncherCommand; -import static com.android.launcher3.util.ui.AbstractLauncherUiTest.DEFAULT_BROADCAST_TIMEOUT_SECS; -import static com.android.launcher3.util.ui.AbstractLauncherUiTest.resolveSystemApp; -import static com.android.launcher3.util.ui.AbstractLauncherUiTest.startAppFast; -import static com.android.launcher3.util.ui.AbstractLauncherUiTest.startTestActivity; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; @@ -41,7 +41,6 @@ import android.content.Context; import android.content.Intent; import android.content.pm.ActivityInfo; import android.os.RemoteException; -import android.platform.test.rule.ExtendedLongPressTimeoutRule; import androidx.test.filters.LargeTest; import androidx.test.runner.AndroidJUnit4; @@ -55,17 +54,17 @@ import com.android.launcher3.tapl.LauncherInstrumentation; import com.android.launcher3.tapl.OverviewTask; import com.android.launcher3.tapl.TestHelpers; import com.android.launcher3.testcomponent.TestCommandReceiver; +import com.android.launcher3.ui.AbstractLauncherUiTest; import com.android.launcher3.util.TestUtil; import com.android.launcher3.util.Wait; +import com.android.launcher3.util.rule.ExtendedLongPressTimeoutRule; import com.android.launcher3.util.rule.FailureWatcher; import com.android.launcher3.util.rule.SamplerRule; import com.android.launcher3.util.rule.ScreenRecordRule; -import com.android.launcher3.util.rule.SkipAfterTimeOutRule; import com.android.launcher3.util.rule.TestIsolationRule; import com.android.launcher3.util.rule.TestStabilityRule; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; +import com.android.launcher3.util.rule.ViewCaptureRule; import com.android.quickstep.OverviewComponentObserver.OverviewChangeListener; -import com.android.quickstep.fallback.window.RecentsWindowFlags; import com.android.quickstep.fallback.window.RecentsWindowManager; import com.android.quickstep.views.RecentsView; import com.android.quickstep.views.RecentsViewContainer; @@ -111,9 +110,6 @@ public class FallbackRecentsTest { @Rule public ExtendedLongPressTimeoutRule mLongPressTimeoutRule = new ExtendedLongPressTimeoutRule(); - @Rule(order = -1000) // This should be the outermost rule - public SkipAfterTimeOutRule mSkipAfterTimeOutRule = new SkipAfterTimeOutRule(); - public FallbackRecentsTest() throws RemoteException { Instrumentation instrumentation = getInstrumentation(); Context context = instrumentation.getContext(); @@ -136,7 +132,6 @@ public class FallbackRecentsTest { getLauncherCommand(mOtherLauncherActivity)); updateHandler.mChangeCounter .await(DEFAULT_BROADCAST_TIMEOUT_SECS, TimeUnit.SECONDS); - mLauncher.setTestLauncherPackage(mOtherLauncherActivity.packageName); try { base.evaluate(); } finally { @@ -144,17 +139,19 @@ public class FallbackRecentsTest { TestCommandReceiver.callCommand(TestCommandReceiver.DISABLE_TEST_LAUNCHER); UiDevice.getInstance(getInstrumentation()).executeShellCommand( getLauncherCommand(getLauncherInMyProcess())); - mLauncher.setTestLauncherPackage(null); pressHomeAndWaitForOverviewClose(); } } }; + final ViewCaptureRule viewCaptureRule = new ViewCaptureRule( + RecentsActivity.ACTIVITY_TRACKER::getCreatedContext); mOrderSensitiveRules = RuleChain .outerRule(new SamplerRule()) .around(new TestStabilityRule()) .around(new NavigationModeSwitchRule(mLauncher)) - .around(new FailureWatcher(mLauncher)) + .around(new FailureWatcher(mLauncher, viewCaptureRule::getViewCaptureData)) + // .around(viewCaptureRule) b/315482167 .around(new TestIsolationRule(mLauncher, false)) .around(setLauncherCommand); @@ -214,10 +211,9 @@ public class FallbackRecentsTest { if (!TestHelpers.isInLauncherProcess()) return null; Object[] result = new Object[1]; Wait.atMost("Failed to get from recents", () -> MAIN_EXECUTOR.submit(() -> { - RecentsViewContainer recentsViewContainer = - RecentsWindowFlags.enableFallbackOverviewInWindow.isTrue() - ? RecentsWindowManager.getRecentsWindowTracker().getCreatedContext() - : RecentsActivity.ACTIVITY_TRACKER.getCreatedContext(); + RecentsViewContainer recentsViewContainer = enableFallbackOverviewInWindow() + ? RecentsWindowManager.getRecentsWindowTracker().getCreatedContext() + : RecentsActivity.ACTIVITY_TRACKER.getCreatedContext(); if (recentsViewContainer == null) { return false; } @@ -240,10 +236,9 @@ public class FallbackRecentsTest { private void waitForRecentsClosed() { try { final boolean isRecentsContainerNUll = MAIN_EXECUTOR.submit(() -> { - RecentsViewContainer recentsViewContainer = - RecentsWindowFlags.enableFallbackOverviewInWindow.isTrue() - ? RecentsWindowManager.getRecentsWindowTracker().getCreatedContext() - : RecentsActivity.ACTIVITY_TRACKER.getCreatedContext(); + RecentsViewContainer recentsViewContainer = enableFallbackOverviewInWindow() + ? RecentsWindowManager.getRecentsWindowTracker().getCreatedContext() + : RecentsActivity.ACTIVITY_TRACKER.getCreatedContext(); return recentsViewContainer == null; }).get(); @@ -345,7 +340,7 @@ public class FallbackRecentsTest { Context ctx = getInstrumentation().getTargetContext(); mObserver = OverviewComponentObserver.INSTANCE.get(ctx); mChangeCounter = new CountDownLatch(1); - if (mObserver.getHomeIntent(DEFAULT_DISPLAY).getComponent() + if (mObserver.getHomeIntent().getComponent() .getPackageName().equals(mOtherLauncherActivity.packageName)) { // Home already same mChangeCounter.countDown(); diff --git a/quickstep/tests/src/com/android/quickstep/InputConsumerUtilsTest.java b/quickstep/tests/src/com/android/quickstep/InputConsumerUtilsTest.java index bc34471acf..655560c0a6 100644 --- a/quickstep/tests/src/com/android/quickstep/InputConsumerUtilsTest.java +++ b/quickstep/tests/src/com/android/quickstep/InputConsumerUtilsTest.java @@ -55,7 +55,6 @@ import com.android.launcher3.taskbar.bubbles.BubbleDismissController; import com.android.launcher3.taskbar.bubbles.BubbleDragController; import com.android.launcher3.taskbar.bubbles.BubblePinController; import com.android.launcher3.taskbar.bubbles.BubbleStashedHandleViewController; -import com.android.launcher3.taskbar.bubbles.DragToBubbleController; import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController; import com.android.launcher3.util.LockedUserState; import com.android.launcher3.util.SandboxApplication; @@ -114,7 +113,6 @@ public class InputConsumerUtilsTest { @NonNull @Mock private TaskbarActivityContext mTaskbarActivityContext; @NonNull @Mock private OverviewComponentObserver mOverviewComponentObserver; @NonNull @Mock private RecentsAnimationDeviceState mDeviceState; - @NonNull @Mock private RotationTouchHelper mRotationTouchHelper; @NonNull @Mock private AbsSwipeUpHandler.Factory mSwipeUpHandlerFactory; @NonNull @Mock private TaskbarManager mTaskbarManager; @NonNull @Mock private OverviewCommandHelper mOverviewCommandHelper; @@ -130,7 +128,7 @@ public class InputConsumerUtilsTest { @Before public void setupTaskAnimationManager() { - mTaskAnimationManager = new TaskAnimationManager(mContext, mDisplayId); + mTaskAnimationManager = new TaskAnimationManager(mContext, mDeviceState, mDisplayId); } @Before @@ -138,7 +136,8 @@ public class InputConsumerUtilsTest { mContext.initDaggerComponent(DaggerInputConsumerUtilsTest_TestComponent .builder() .bindLockedState(mLockedUserState) - ); + .bindRotationHelper(mock(RotationTouchHelper.class)) + .bindRecentsState(mDeviceState)); } @Before @@ -202,10 +201,8 @@ public class InputConsumerUtilsTest { @After public void cleanUp() { - runOnMainSync(() -> { - mInputMonitorCompat.dispose(); - mInputEventReceiver.dispose(); - }); + mInputMonitorCompat.dispose(); + mInputEventReceiver.dispose(); } @Test @@ -298,8 +295,7 @@ public class InputConsumerUtilsTest { @Test public void testNewBaseConsumer_launcherChildActivityResumed_returnsDefaultInputConsumer() { when(mRunningTask.isHomeTask()).thenReturn(true); - when(mOverviewComponentObserver.isHomeAndOverviewSame()).thenReturn(true); - when(mContainerInterface.isLauncherOverlayShowing()).thenReturn(true); + when(mOverviewComponentObserver.isHomeAndOverviewSameActivity()).thenReturn(true); assertEqualsDefaultInputConsumer(this::createBaseInputConsumer); } @@ -506,8 +502,7 @@ public class InputConsumerUtilsTest { mTaskbarManager, mSwipeUpProxyProvider, mOverviewCommandHelper, - event, - mRotationTouchHelper); + event); event.recycle(); @@ -530,8 +525,7 @@ public class InputConsumerUtilsTest { otherActivityInputConsumer -> {}, mInputEventReceiver, event, - ActiveGestureLog.CompoundString.NO_OP, - mRotationTouchHelper); + ActiveGestureLog.CompoundString.NO_OP); event.recycle(); @@ -603,7 +597,6 @@ public class InputConsumerUtilsTest { BubbleBarPinController bubbleBarPinController = mock(BubbleBarPinController.class); BubblePinController bubblePinController = mock(BubblePinController.class); BubbleBarSwipeController bubbleBarSwipeController = mock(BubbleBarSwipeController.class); - DragToBubbleController dragToBubbleController = mock(DragToBubbleController.class); BubbleCreator bubbleCreator = mock(BubbleCreator.class); BubbleControllers bubbleControllers = new BubbleControllers( bubbleBarController, @@ -615,7 +608,6 @@ public class InputConsumerUtilsTest { bubbleBarPinController, bubblePinController, Optional.of(bubbleBarSwipeController), - dragToBubbleController, bubbleCreator); when(bubbleBarViewController.hasBubbles()).thenReturn(true); @@ -633,6 +625,8 @@ public class InputConsumerUtilsTest { @Component.Builder interface Builder extends LauncherAppComponent.Builder { @BindsInstance Builder bindLockedState(LockedUserState state); + @BindsInstance Builder bindRotationHelper(RotationTouchHelper helper); + @BindsInstance Builder bindRecentsState(RecentsAnimationDeviceState state); @Override TestComponent build(); diff --git a/quickstep/tests/src/com/android/quickstep/NavigationModeSwitchRule.java b/quickstep/tests/src/com/android/quickstep/NavigationModeSwitchRule.java index 212f933798..c713c3dc9a 100644 --- a/quickstep/tests/src/com/android/quickstep/NavigationModeSwitchRule.java +++ b/quickstep/tests/src/com/android/quickstep/NavigationModeSwitchRule.java @@ -33,10 +33,10 @@ import androidx.test.uiautomator.UiDevice; import com.android.launcher3.tapl.LauncherInstrumentation; import com.android.launcher3.tapl.TestHelpers; +import com.android.launcher3.ui.AbstractLauncherUiTest; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.Wait; import com.android.launcher3.util.rule.FailureWatcher; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; import com.android.systemui.shared.system.QuickStepContract; import org.junit.rules.TestRule; @@ -205,16 +205,12 @@ public class NavigationModeSwitchRule implements TestRule { private static void assertTrue(LauncherInstrumentation launcher, String message, boolean condition, Description description) { - try { - launcher.checkForAnomaly(true, true); - if (!condition) { - throw new AssertionError(message); - } - } catch (Throwable e) { + launcher.checkForAnomaly(true, true); + if (!condition) { if (description != null) { FailureWatcher.onError(launcher, description); } - throw e; + throw new AssertionError(message); } } } diff --git a/quickstep/tests/src/com/android/quickstep/OrientationTouchTransformerTest.java b/quickstep/tests/src/com/android/quickstep/OrientationTouchTransformerTest.java index cd8dd6e00c..154d86d977 100644 --- a/quickstep/tests/src/com/android/quickstep/OrientationTouchTransformerTest.java +++ b/quickstep/tests/src/com/android/quickstep/OrientationTouchTransformerTest.java @@ -339,8 +339,7 @@ public class OrientationTouchTransformerTest { ArrayMap<CachedDisplayInfo, List<WindowBounds>> internalDisplayBounds = new ArrayMap<>(); doReturn(internalDisplayBounds).when(wmProxy).estimateInternalDisplayBounds(any()); return new DisplayController.Info( - getApplicationContext(), false, wmProxy, new ArrayMap<>(), - DisplayMetrics.DENSITY_DEFAULT); + getApplicationContext(), wmProxy, new ArrayMap<>()); } private float generateTouchRegionHeight(Size screenSize, int rotation) { diff --git a/quickstep/tests/src/com/android/quickstep/TaplOverviewIconTest.java b/quickstep/tests/src/com/android/quickstep/TaplOverviewIconTest.java index 7aa4fb65f9..2c275f45ee 100644 --- a/quickstep/tests/src/com/android/quickstep/TaplOverviewIconTest.java +++ b/quickstep/tests/src/com/android/quickstep/TaplOverviewIconTest.java @@ -24,6 +24,8 @@ import android.platform.test.annotations.PlatinumTest; import com.android.launcher3.tapl.Overview; import com.android.launcher3.tapl.OverviewTask.OverviewTaskContainer; import com.android.launcher3.tapl.OverviewTaskMenu; +import com.android.launcher3.ui.AbstractLauncherUiTest; +import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.quickstep.util.SplitScreenTestUtils; import org.junit.Test; @@ -32,7 +34,7 @@ import org.junit.Test; * This test run in both Out of process (Oop) and in-process (Ipc). * Tests the app Icon in overview. */ -public class TaplOverviewIconTest extends AbstractQuickStepTest { +public class TaplOverviewIconTest extends AbstractLauncherUiTest<QuickstepLauncher> { private static final String CALCULATOR_APP_PACKAGE = resolveSystemApp(Intent.CATEGORY_APP_CALCULATOR); diff --git a/quickstep/tests/src/com/android/quickstep/TaplTestsKeyboardQuickSwitch.java b/quickstep/tests/src/com/android/quickstep/TaplTestsKeyboardQuickSwitch.java index 210c94d8c6..3c4f1d9c6c 100644 --- a/quickstep/tests/src/com/android/quickstep/TaplTestsKeyboardQuickSwitch.java +++ b/quickstep/tests/src/com/android/quickstep/TaplTestsKeyboardQuickSwitch.java @@ -16,13 +16,11 @@ package com.android.quickstep; import android.content.Intent; -import android.platform.test.annotations.DisableFlags; import androidx.annotation.NonNull; import androidx.test.filters.LargeTest; import androidx.test.runner.AndroidJUnit4; -import com.android.launcher3.Flags; import com.android.launcher3.tapl.KeyboardQuickSwitch; import com.android.launcher3.taskbar.KeyboardQuickSwitchController; @@ -88,7 +86,6 @@ public class TaplTestsKeyboardQuickSwitch extends AbstractQuickStepTest { } @Test - @DisableFlags(value = Flags.FLAG_ENABLE_WIDGET_PICKER_REFACTOR) public void testDismiss_fromWidgets() { runTest(TestSurface.WIDGETS, TestCase.DISMISS); } @@ -109,7 +106,6 @@ public class TaplTestsKeyboardQuickSwitch extends AbstractQuickStepTest { } @Test - @DisableFlags(value = Flags.FLAG_ENABLE_WIDGET_PICKER_REFACTOR) public void testLaunchLastTask_fromWidgets() { runTest(TestSurface.WIDGETS, TestCase.LAUNCH_LAST_APP); } @@ -130,7 +126,6 @@ public class TaplTestsKeyboardQuickSwitch extends AbstractQuickStepTest { } @Test - @DisableFlags(value = Flags.FLAG_ENABLE_WIDGET_PICKER_REFACTOR) public void testLaunchSelectedTask_fromWidgets() { runTest(TestSurface.WIDGETS, TestCase.LAUNCH_SELECTED_APP); } @@ -151,14 +146,13 @@ public class TaplTestsKeyboardQuickSwitch extends AbstractQuickStepTest { } @Test - @DisableFlags(value = Flags.FLAG_ENABLE_WIDGET_PICKER_REFACTOR) public void testLaunchOverviewTask_fromWidgets() { runTest(TestSurface.WIDGETS, TestCase.LAUNCH_OVERVIEW); } @Test public void testLaunchSingleRecentTask() { - clearAllRecentTasks(); + mLauncher.getLaunchedAppState().switchToOverview().dismissAllTasks(); startAppFast(CALCULATOR_APP_PACKAGE); mLauncher.goHome().showQuickSwitchView().launchFocusedAppTask(CALCULATOR_APP_PACKAGE); } diff --git a/quickstep/tests/src/com/android/quickstep/TaplTestsLockedTaskbar.java b/quickstep/tests/src/com/android/quickstep/TaplTestsLockedTaskbar.java index ce6efe4569..b2617dd803 100644 --- a/quickstep/tests/src/com/android/quickstep/TaplTestsLockedTaskbar.java +++ b/quickstep/tests/src/com/android/quickstep/TaplTestsLockedTaskbar.java @@ -35,11 +35,11 @@ import androidx.test.filters.LargeTest; import androidx.test.runner.AndroidJUnit4; import com.android.launcher3.tapl.HomeAllApps; +import com.android.launcher3.ui.PortraitLandscapeRunner.PortraitLandscape; import com.android.launcher3.util.rule.SetPropRule; -import com.android.launcher3.util.ui.PortraitLandscapeRunner.PortraitLandscape; import com.android.quickstep.NavigationModeSwitchRule.NavigationModeSwitch; import com.android.quickstep.TaskbarModeSwitchRule.TaskbarModeSwitch; -import com.android.window.flags2.Flags; +import com.android.window.flags.Flags; import com.android.wm.shell.shared.desktopmode.DesktopModeStatus; import org.junit.Assume; diff --git a/quickstep/tests/src/com/android/quickstep/TaplTestsOverviewDesktop.kt b/quickstep/tests/src/com/android/quickstep/TaplTestsOverviewDesktop.kt index d68a50e9e4..75947abd1b 100644 --- a/quickstep/tests/src/com/android/quickstep/TaplTestsOverviewDesktop.kt +++ b/quickstep/tests/src/com/android/quickstep/TaplTestsOverviewDesktop.kt @@ -23,8 +23,10 @@ import androidx.test.uiautomator.Until import com.android.launcher3.BuildConfig import com.android.launcher3.tapl.LaunchedAppState import com.android.launcher3.tapl.OverviewTask +import com.android.launcher3.ui.AbstractLauncherUiTest +import com.android.launcher3.ui.PortraitLandscapeRunner.PortraitLandscape +import com.android.launcher3.uioverrides.QuickstepLauncher import com.android.launcher3.util.TestUtil -import com.android.launcher3.util.ui.PortraitLandscapeRunner.PortraitLandscape import com.google.common.truth.Truth.assertWithMessage import org.junit.Before import org.junit.Test @@ -32,10 +34,13 @@ import org.junit.Test /** Test Desktop windowing in Overview. */ @AllowedDevices(allowed = [DeviceProduct.CF_TABLET, DeviceProduct.TANGORPRO]) @IgnoreLimit(ignoreLimit = BuildConfig.IS_STUDIO_BUILD) -class TaplTestsOverviewDesktop : AbstractQuickStepTest() { +class TaplTestsOverviewDesktop : AbstractLauncherUiTest<QuickstepLauncher?>() { @Before fun setup() { - clearAllRecentTasks() + val overview = mLauncher.goHome().switchToOverview() + if (overview.hasTasks()) { + overview.dismissAllTasks() + } startTestAppsWithCheck() mLauncher.goHome() } diff --git a/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java b/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java index f8a123c918..b207d4ac8f 100644 --- a/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java +++ b/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java @@ -16,6 +16,9 @@ package com.android.quickstep; +import static com.android.launcher3.Flags.enableLauncherOverviewInWindow; +import static com.android.launcher3.util.rule.TestStabilityRule.LOCAL; +import static com.android.launcher3.util.rule.TestStabilityRule.PLATFORM_POSTSUBMIT; import static com.android.quickstep.TaskbarModeSwitchRule.Mode.TRANSIENT; import static org.junit.Assert.assertEquals; @@ -28,7 +31,6 @@ import static org.junit.Assume.assumeTrue; import android.content.Intent; import android.content.res.Configuration; -import android.platform.test.annotations.EnableFlags; import androidx.annotation.NonNull; import androidx.test.filters.LargeTest; @@ -37,7 +39,6 @@ import androidx.test.runner.AndroidJUnit4; import androidx.test.uiautomator.By; import androidx.test.uiautomator.Until; -import com.android.launcher3.Flags; import com.android.launcher3.LauncherState; import com.android.launcher3.tapl.BaseOverview; import com.android.launcher3.tapl.LaunchedAppState; @@ -47,20 +48,25 @@ import com.android.launcher3.tapl.OverviewActions; import com.android.launcher3.tapl.OverviewTask; import com.android.launcher3.tapl.SelectModeButtons; import com.android.launcher3.tapl.Workspace; +import com.android.launcher3.ui.PortraitLandscapeRunner.PortraitLandscape; import com.android.launcher3.util.TestUtil; import com.android.launcher3.util.Wait; -import com.android.launcher3.util.ui.PortraitLandscapeRunner.PortraitLandscape; +import com.android.launcher3.util.rule.ScreenRecordRule; +import com.android.launcher3.util.rule.TestStabilityRule; import com.android.quickstep.NavigationModeSwitchRule.NavigationModeSwitch; import com.android.quickstep.TaskbarModeSwitchRule.TaskbarModeSwitch; +import com.android.quickstep.fallback.RecentsState; import com.android.quickstep.views.RecentsView; import org.junit.After; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import java.util.Comparator; -import java.util.Optional; +import java.util.function.Consumer; +import java.util.function.Function; @LargeTest @RunWith(AndroidJUnit4.class) @@ -71,17 +77,32 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { private static final String READ_DEVICE_CONFIG_PERMISSION = "android.permission.READ_DEVICE_CONFIG"; + private enum ExpectedState { + + HOME(LauncherState.NORMAL, RecentsState.HOME), + OVERVIEW(LauncherState.OVERVIEW, RecentsState.DEFAULT); + + private final LauncherState mLauncherState; + private final RecentsState mRecentsState; + + ExpectedState(LauncherState launcherState, RecentsState recentsState) { + this.mLauncherState = launcherState; + this.mRecentsState = recentsState; + } + } + @Before public void setUp() throws Exception { super.setUp(); - executeOnOverview(recentsView -> + runOnRecentsView(recentsView -> recentsView.getPagedViewOrientedState().forceAllowRotationForTesting(true)); } @After public void tearDown() { - executeOnOverview(/* forTearDown= */ true, recentsView -> - recentsView.getPagedViewOrientedState().forceAllowRotationForTesting(false)); + runOnRecentsView(recentsView -> + recentsView.getPagedViewOrientedState().forceAllowRotationForTesting(false), + /* forTearDown= */ true); } public static void startTestApps() throws Exception { @@ -107,26 +128,24 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { // mLauncher.pressHome() also tests an important case of pressing home while in background. Overview overview = mLauncher.goHome().switchToOverview(); assertIsInState( - "Launcher internal state didn't switch to Overview", LauncherState.OVERVIEW); - executeOnOverview(recentsView -> assertTrue("Don't have at least 3 tasks", + "Launcher internal state didn't switch to Overview", ExpectedState.OVERVIEW); + runOnRecentsView(recentsView -> assertTrue("Don't have at least 3 tasks", recentsView.getTaskViewCount() >= 3)); // Test flinging forward and backward. - executeOnOverview(recentsView -> assertEquals("Current task in Overview is not first", - recentsView.indexOfChild(recentsView.getFirstTaskView()), - recentsView.getCurrentPage())); + runOnRecentsView(recentsView -> assertEquals("Current task in Overview is not 0", + 0, recentsView.getCurrentPage())); overview.flingForward(); - assertIsInState("Launcher internal state is not Overview", LauncherState.OVERVIEW); + assertIsInState("Launcher internal state is not Overview", ExpectedState.OVERVIEW); final Integer currentTaskAfterFlingForward = - getFromOverview(RecentsView::getCurrentPage); - executeOnOverview(recentsView -> assertTrue("Current task in Overview is still 0", - currentTaskAfterFlingForward > recentsView.indexOfChild( - recentsView.getFirstTaskView()))); + getFromRecentsView(RecentsView::getCurrentPage); + runOnRecentsView(recentsView -> assertTrue("Current task in Overview is still 0", + currentTaskAfterFlingForward > 0)); overview.flingBackward(); - assertIsInState("Launcher internal state is not Overview", LauncherState.OVERVIEW); - executeOnOverview(recentsView -> assertTrue("Flinging back in Overview did nothing", + assertIsInState("Launcher internal state is not Overview", ExpectedState.OVERVIEW); + runOnRecentsView(recentsView -> assertTrue("Flinging back in Overview did nothing", recentsView.getCurrentPage() < currentTaskAfterFlingForward)); // Test opening a task. @@ -141,19 +160,19 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { // Test dismissing a task. overview = mLauncher.goHome().switchToOverview(); assertIsInState("Launcher internal state didn't switch to Overview", - LauncherState.OVERVIEW); - final Integer numTasks = getFromOverview(RecentsView::getTaskViewCount); + ExpectedState.OVERVIEW); + final Integer numTasks = getFromRecentsView(RecentsView::getTaskViewCount); task = overview.getCurrentTask(); assertNotNull("overview.getCurrentTask() returned null (2)", task); task.dismiss(); - executeOnOverview(recentsView -> assertEquals( + runOnRecentsView(recentsView -> assertEquals( "Dismissing a task didn't remove 1 task from Overview", numTasks - 1, recentsView.getTaskViewCount())); // Test dismissing all tasks. mLauncher.goHome().switchToOverview().dismissAllTasks(); - assertIsInState("Launcher internal state is not Home", LauncherState.NORMAL); - executeOnOverview(recentsView -> assertEquals("Still have tasks after dismissing all", + assertIsInState("Launcher internal state is not Home", ExpectedState.HOME); + runOnRecentsView(recentsView -> assertEquals("Still have tasks after dismissing all", 0, recentsView.getTaskViewCount())); } @@ -176,10 +195,10 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { public void testDismissOverviewWithEscKey() throws Exception { startTestAppsWithCheck(); final Overview overview = mLauncher.goHome().switchToOverview(); - assertIsInState("Launcher internal state is not Overview", LauncherState.OVERVIEW); + assertIsInState("Launcher internal state is not Overview", ExpectedState.OVERVIEW); overview.dismissByEscKey(); - assertIsInState("Launcher internal state is not Home", LauncherState.NORMAL); + assertIsInState("Launcher internal state is not Home", ExpectedState.HOME); } @Test @@ -195,15 +214,14 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { selectModeButtons = overview.getOverviewActions().clickSelect(); } - assertIsInState( - "Launcher internal state is not Overview Modal Task", - LauncherState.OVERVIEW_MODAL_TASK); + assertTrue("Launcher internal state is not Overview Modal Task", + isInState(() -> LauncherState.OVERVIEW_MODAL_TASK)); selectModeButtons.dismissByEscKey(); - assertIsInState("Launcher internal state is not Overview", LauncherState.OVERVIEW); + assertIsInState("Launcher internal state is not Overview", ExpectedState.OVERVIEW); overview.dismissByEscKey(); - assertIsInState("Launcher internal state is not Home", LauncherState.NORMAL); + assertIsInState("Launcher internal state is not Home", ExpectedState.HOME); } @Test @@ -211,11 +229,11 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { startTestAppsWithCheck(); startAppFast(CALCULATOR_APP_PACKAGE); // Ensure Calculator is last opened app. Workspace home = mLauncher.goHome(); - assertIsInState("Launcher state is not Home", LauncherState.NORMAL); + assertIsInState("Launcher state is not Home", ExpectedState.HOME); Overview overview = home.openOverviewFromActionPlusTabKeyboardShortcut(); - assertIsInState("Launcher state is not Overview", LauncherState.OVERVIEW); + assertIsInState("Launcher state is not Overview", ExpectedState.OVERVIEW); overview.launchFocusedTaskByEnterKey(CALCULATOR_APP_PACKAGE); // Assert app is focused. } @@ -224,11 +242,11 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { startTestAppsWithCheck(); startAppFast(CALCULATOR_APP_PACKAGE); // Ensure Calculator is last opened app. Workspace home = mLauncher.goHome(); - assertIsInState("Launcher state is not Home", LauncherState.NORMAL); + assertIsInState("Launcher state is not Home", ExpectedState.HOME); Overview overview = home.openOverviewFromRecentsKeyboardShortcut(); - assertIsInState("Launcher state is not Overview", LauncherState.OVERVIEW); + assertIsInState("Launcher state is not Overview", ExpectedState.OVERVIEW); overview.launchFocusedTaskByEnterKey(CALCULATOR_APP_PACKAGE); // Assert app is focused. } @@ -240,7 +258,7 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { assertNotNull("Workspace.switchToOverview() returned null", mLauncher.goHome().switchToOverview()); assertIsInState( - "Launcher internal state didn't switch to Overview", LauncherState.OVERVIEW); + "Launcher internal state didn't switch to Overview", ExpectedState.OVERVIEW); } @Test @@ -266,12 +284,13 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { assertNotNull("Background.switchToOverview() returned null", launchedAppState.switchToOverview()); assertIsInState( - "Launcher internal state didn't switch to Overview", LauncherState.OVERVIEW); + "Launcher internal state didn't switch to Overview", ExpectedState.OVERVIEW); } @Test @NavigationModeSwitch @PortraitLandscape + @TestStabilityRule.Stability(flavors = LOCAL | PLATFORM_POSTSUBMIT) // b/325659406 public void testQuickSwitchFromApp() throws Exception { startTestActivity(2); startTestActivity(3); @@ -358,11 +377,77 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { // Debug if we need to goHome to prevent wrong previous state b/315525621 mLauncher.goHome(); mLauncher.getWorkspace().switchToAllApps().pressBackToWorkspace(); - waitForState("Launcher internal state didn't switch to Home", LauncherState.NORMAL); + waitForState("Launcher internal state didn't switch to Home", ExpectedState.HOME); startAppFast(CALCULATOR_APP_PACKAGE); mLauncher.getLaunchedAppState().pressBackToWorkspace(); - waitForState("Launcher internal state didn't switch to Home", LauncherState.NORMAL); + waitForState("Launcher internal state didn't switch to Home", ExpectedState.HOME); + } + + @Test + @PortraitLandscape + @TaskbarModeSwitch() + @Ignore("b/315376057") + public void testOverviewForTablet() throws Exception { + assumeTrue(mLauncher.isTablet()); + + for (int i = 2; i <= 14; i++) { + startTestActivity(i); + } + + Overview overview = mLauncher.goHome().switchToOverview(); + runOnRecentsView(recentsView -> assertTrue("Don't have at least 13 tasks", + recentsView.getTaskViewCount() >= 13)); + + // Test scroll the first task off screen + overview.scrollCurrentTaskOffScreen(); + assertIsInState("Launcher internal state is not Overview", ExpectedState.OVERVIEW); + runOnRecentsView(recentsView -> assertTrue("Current task in Overview is still 0", + recentsView.getCurrentPage() > 0)); + + // Test opening the task. + overview.getCurrentTask().open(); + assertTrue("Test activity didn't open from Overview", + mDevice.wait(Until.hasObject(By.pkg(getAppPackageName()).text( + mLauncher.isGridOnlyOverviewEnabled() ? "TestActivity12" + : "TestActivity13")), + TestUtil.DEFAULT_UI_TIMEOUT)); + + // Scroll the task offscreen as it is now first + overview = mLauncher.goHome().switchToOverview(); + overview.scrollCurrentTaskOffScreen(); + assertIsInState( + "Launcher internal state is not Overview", ExpectedState.OVERVIEW); + runOnRecentsView(recentsView -> assertTrue("Current task in Overview is still 0", + recentsView.getCurrentPage() > 0)); + + // Test dismissing the later task. + final Integer numTasks = getFromRecentsView(RecentsView::getTaskViewCount); + overview.getCurrentTask().dismiss(); + runOnRecentsView(recentsView -> assertEquals( + "Dismissing a task didn't remove 1 task from Overview", + numTasks - 1, recentsView.getTaskViewCount())); + runOnRecentsView(recentsView -> assertTrue("Grid did not rebalance after dismissal", + (Math.abs(recentsView.getTopRowTaskCountForTablet() + - recentsView.getBottomRowTaskCountForTablet()) <= 1))); + + // Test dismissing more tasks. + assertIsInState( + "Launcher internal state didn't remain in Overview", ExpectedState.OVERVIEW); + overview.getCurrentTask().dismiss(); + assertIsInState( + "Launcher internal state didn't remain in Overview", ExpectedState.OVERVIEW); + overview.getCurrentTask().dismiss(); + runOnRecentsView(recentsView -> assertTrue( + "Grid did not rebalance after multiple dismissals", + (Math.abs(recentsView.getTopRowTaskCountForTablet() + - recentsView.getBottomRowTaskCountForTablet()) <= 1))); + + // Test dismissing all tasks. + mLauncher.goHome().switchToOverview().dismissAllTasks(); + assertIsInState("Launcher internal state is not Home", ExpectedState.HOME); + runOnRecentsView(recentsView -> assertEquals("Still have tasks after dismissing all", + 0, recentsView.getTaskViewCount())); } @Test @@ -371,18 +456,18 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { startTestAppsWithCheck(); Overview overview = mLauncher.goHome().switchToOverview(); - assertIsInState("Launcher internal state should be Overview", LauncherState.OVERVIEW); - executeOnOverview(recentsView -> assertTrue("Should have at least 3 tasks", + assertIsInState("Launcher internal state should be Overview", ExpectedState.OVERVIEW); + runOnRecentsView(recentsView -> assertTrue("Should have at least 3 tasks", recentsView.getTaskViewCount() >= 3)); // It should not dismiss overview when tapping between tasks overview.touchBetweenTasks(); overview = mLauncher.getOverview(); - assertIsInState("Launcher internal state should be Overview", LauncherState.OVERVIEW); + assertIsInState("Launcher internal state should be Overview", ExpectedState.OVERVIEW); // Dismiss when tapping to the right of the focused task overview.touchOutsideFirstTask(); - assertIsInState("Launcher internal state should be Home", LauncherState.NORMAL); + assertIsInState("Launcher internal state should be Home", ExpectedState.HOME); } @Test @@ -394,28 +479,28 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { startTestAppsWithCheck(); Overview overview = mLauncher.goHome().switchToOverview(); - assertIsInState("Launcher internal state should be Overview", LauncherState.OVERVIEW); - executeOnOverview(recentsView -> assertTrue("Should have at least 3 tasks", + assertIsInState("Launcher internal state should be Overview", ExpectedState.OVERVIEW); + runOnRecentsView(recentsView -> assertTrue("Should have at least 3 tasks", recentsView.getTaskViewCount() >= 3)); if (mLauncher.isTransientTaskbar()) { // On transient taskbar, it should dismiss when tapping outside taskbar bounds. overview.touchTaskbarBottomCorner(/* tapRight= */ false); - assertIsInState("Launcher internal state should be Normal", LauncherState.NORMAL); + assertIsInState("Launcher internal state should be Normal", ExpectedState.HOME); overview = mLauncher.getWorkspace().switchToOverview(); // On transient taskbar, it should dismiss when tapping outside taskbar bounds. overview.touchTaskbarBottomCorner(/* tapRight= */ true); - assertIsInState("Launcher internal state should be Normal", LauncherState.NORMAL); + assertIsInState("Launcher internal state should be Normal", ExpectedState.HOME); } else { // On persistent taskbar, it should not dismiss when tapping the taskbar overview.touchTaskbarBottomCorner(/* tapRight= */ false); - assertIsInState("Launcher internal state should be Overview", LauncherState.OVERVIEW); + assertIsInState("Launcher internal state should be Overview", ExpectedState.OVERVIEW); // On persistent taskbar, it should not dismiss when tapping the taskbar overview.touchTaskbarBottomCorner(/* tapRight= */ true); - assertIsInState("Launcher internal state should be Overview", LauncherState.OVERVIEW); + assertIsInState("Launcher internal state should be Overview", ExpectedState.OVERVIEW); } } @@ -456,159 +541,77 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { @Test @PortraitLandscape + @ScreenRecordRule.ScreenRecord // TODO(b/396447643): Remove screen record. public void testDismissCancel() throws Exception { startTestAppsWithCheck(); Overview overview = mLauncher.goHome().switchToOverview(); assertIsInState("Launcher internal state didn't switch to Overview", - LauncherState.OVERVIEW); - final Integer numTasks = getFromOverview(RecentsView::getTaskViewCount); + ExpectedState.OVERVIEW); + final Integer numTasks = getFromRecentsView(RecentsView::getTaskViewCount); OverviewTask task = overview.getCurrentTask(); assertNotNull("overview.getCurrentTask() returned null (2)", task); task.dismissCancel(); - executeOnOverview(recentsView -> assertEquals( + runOnRecentsView(recentsView -> assertEquals( "Canceling dismissing a task removed a task from Overview", numTasks == null ? 0 : numTasks, recentsView.getTaskViewCount())); } @Test @PortraitLandscape - @EnableFlags(value = Flags.FLAG_ENABLE_GRID_ONLY_OVERVIEW) public void testDismissBottomRow() throws Exception { assumeTrue(mLauncher.isTablet()); - clearAllRecentTasks(); + mLauncher.goHome().switchToOverview().dismissAllTasks(); startTestAppsWithCheck(); - Overview overview = mLauncher.goHome().switchToOverview(); assertIsInState("Launcher internal state didn't switch to Overview", - LauncherState.OVERVIEW); - final Integer numTasks = getFromOverview(RecentsView::getTaskViewCount); - Optional<OverviewTask> bottomTask = overview.getCurrentTasksForTablet().stream().max( - Comparator.comparingInt(OverviewTask::getTaskCenterY)); - assertTrue("bottomTask null", bottomTask.isPresent()); + ExpectedState.OVERVIEW); + final Integer numTasks = getFromRecentsView(RecentsView::getTaskViewCount); + OverviewTask bottomTask = overview.getCurrentTasksForTablet().stream().max( + Comparator.comparingInt(OverviewTask::getTaskCenterY)).get(); + assertNotNull("bottomTask null", bottomTask); - bottomTask.get().dismiss(); - executeOnOverview(recentsView -> assertEquals( + bottomTask.dismiss(); + + runOnRecentsView(recentsView -> assertEquals( "Dismissing a bottomTask didn't remove 1 bottomTask from Overview", numTasks - 1, recentsView.getTaskViewCount())); } @Test @PortraitLandscape - @EnableFlags(value = Flags.FLAG_ENABLE_GRID_ONLY_OVERVIEW) public void testDismissLastGridRow() throws Exception { assumeTrue(mLauncher.isTablet()); - clearAllRecentTasks(); + mLauncher.goHome().switchToOverview().dismissAllTasks(); startTestAppsWithCheck(); startTestActivity(3); startTestActivity(4); - executeOnOverview(recentsView -> assertNotEquals( - "Grid overview should have unequal row counts", - recentsView.getTopRowTaskCountForTablet(), - recentsView.getBottomRowTaskCountForTablet())); + runOnRecentsView( + recentsView -> assertNotEquals("Grid overview should have unequal row counts", + recentsView.getTopRowTaskCountForTablet(), + recentsView.getBottomRowTaskCountForTablet())); Overview overview = mLauncher.goHome().switchToOverview(); assertIsInState("Launcher internal state didn't switch to Overview", - LauncherState.OVERVIEW); - + ExpectedState.OVERVIEW); overview.flingForwardUntilClearAllVisible(); assertTrue("Clear All not visible.", overview.isClearAllVisible()); - final Integer numTasks = getFromOverview(RecentsView::getTaskViewCount); - Optional<OverviewTask> lastGridTask = overview.getCurrentTasksForTablet().stream().min( - Comparator.comparingInt(OverviewTask::getTaskCenterX)); - assertTrue("lastGridTask null.", lastGridTask.isPresent()); + final Integer numTasks = getFromRecentsView(RecentsView::getTaskViewCount); + OverviewTask lastGridTask = overview.getCurrentTasksForTablet().stream().min( + Comparator.comparingInt(OverviewTask::getTaskCenterX)).get(); + assertNotNull("lastGridTask null.", lastGridTask); - lastGridTask.get().dismiss(); - executeOnOverview(recentsView -> { - assertEquals( - "Dismissing a lastGridTask didn't remove 1 lastGridTask from Overview", - numTasks - 1, recentsView.getTaskViewCount()); - assertEquals( - "Grid overview should have equal row counts.", - recentsView.getTopRowTaskCountForTablet(), - recentsView.getBottomRowTaskCountForTablet()); - }); + lastGridTask.dismiss(); + + runOnRecentsView(recentsView -> assertEquals( + "Dismissing a lastGridTask didn't remove 1 lastGridTask from Overview", + numTasks - 1, recentsView.getTaskViewCount())); + runOnRecentsView(recentsView -> assertEquals("Grid overview should have equal row counts.", + recentsView.getTopRowTaskCountForTablet(), + recentsView.getBottomRowTaskCountForTablet())); assertTrue("Clear All not visible.", overview.isClearAllVisible()); } - @Test - @PortraitLandscape - @EnableFlags(value = Flags.FLAG_ENABLE_GRID_ONLY_OVERVIEW) - // When dismissing multiple apps, the apps off screen should "re-balance" i.e. re-arrange - // themselves evenly across both top and bottom rows. - public void gridRebalancesOffScreenAfterDismissingMultipleApps() throws Exception { - assumeTrue(mLauncher.isTablet()); - clearAllRecentTasks(); - // Launch enough apps so some are offscreen. - for (int i = 2; i <= 12; i++) { - startTestActivity(i); - } - Overview overview = mLauncher.goHome().switchToOverview(); - executeOnOverview(recentsView -> assertTrue("11 tasks should be open", - recentsView.getTaskViewCount() >= 11)); - - // Dismiss 2 tasks from the top row. - assertIsInState( - "Launcher internal state didn't remain in Overview", LauncherState.OVERVIEW); - overview.getCurrentTask().dismiss(); - assertIsInState( - "Launcher internal state didn't remain in Overview", LauncherState.OVERVIEW); - overview.getCurrentTask().dismiss(); - - // Assert that the two row counts are no more than 1 apart, therefore were re-balanced. - executeOnOverview(recentsView -> assertTrue( - "Grid did not re-balance after multiple dismissals", - (Math.abs(recentsView.getTopRowTaskCountForTablet() - - recentsView.getBottomRowTaskCountForTablet()) <= 1))); - } - - @Test - @PortraitLandscape - @EnableFlags(value = Flags.FLAG_ENABLE_GRID_ONLY_OVERVIEW) - // When dismissing multiple apps, the apps on screen should not "re-balance" i.e. dismissing - // 2 apps from the top row, will move the top row along 2 and so it will not be balanced - // across the bottom row. - public void gridDoesNotRebalanceOnScreenAfterDismissingMultipleApps() throws Exception { - assumeTrue(mLauncher.isTablet()); - clearAllRecentTasks(); - // Launch 6 apps so 3 are in each row. - int appsInBothRowsCount = 6; - int appsInEachRowCount = appsInBothRowsCount / 2; - for (int i = 2; i <= appsInBothRowsCount + 1; i++) { - startTestActivity(i); - } - Overview overview = mLauncher.goHome().switchToOverview(); - executeOnOverview(recentsView -> { - assertEquals(appsInBothRowsCount + " tasks should be open", - appsInBothRowsCount, recentsView.getTaskViewCount()); - assertEquals("Grid should have " + appsInEachRowCount + " tasks on the top row", - appsInEachRowCount, - recentsView.getTopRowTaskCountForTablet()); - assertEquals("Grid should have " + appsInEachRowCount + " tasks on the bottom row", - appsInEachRowCount, - recentsView.getBottomRowTaskCountForTablet()); - }); - - // Dismiss 2 tasks from the top row. - assertIsInState("Launcher internal state didn't remain in Overview", - LauncherState.OVERVIEW); - overview.getCurrentTask().dismiss(); - assertIsInState("Launcher internal state didn't remain in Overview", - LauncherState.OVERVIEW); - overview.getCurrentTask().dismiss(); - - executeOnOverview(recentsView -> { - int expectedTopRowCount = appsInEachRowCount - 2; - assertEquals( - "Grid should have " + expectedTopRowCount + " tasks on the top row", - expectedTopRowCount, - recentsView.getTopRowTaskCountForTablet()); - assertEquals("Grid should have " + appsInEachRowCount + " tasks on the bottom row", - appsInEachRowCount, - recentsView.getBottomRowTaskCountForTablet()); - }); - } - private void startTestAppsWithCheck() throws Exception { startTestApps(); expectLaunchedAppState(); @@ -633,13 +636,19 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { } private void assertIsInState( - @NonNull String failureMessage, @NonNull LauncherState expectedState) { - assertTrue(failureMessage, isInState(() -> expectedState)); + @NonNull String failureMessage, @NonNull ExpectedState expectedState) { + assertTrue(failureMessage, enableLauncherOverviewInWindow() + ? isInRecentsWindowState(() -> expectedState.mRecentsState) + : isInState(() -> expectedState.mLauncherState)); } private void waitForState( - @NonNull String failureMessage, @NonNull LauncherState expectedState) { - waitForState(failureMessage, () -> expectedState); + @NonNull String failureMessage, @NonNull ExpectedState expectedState) { + if (enableLauncherOverviewInWindow()) { + waitForRecentsWindowState(failureMessage, () -> expectedState.mRecentsState); + } else { + waitForState(failureMessage, () -> expectedState.mLauncherState); + } } private void expectLaunchedAppState() { @@ -648,4 +657,33 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest { + "one", isInLaunchedApp(launcher))); } + + private <T> T getFromRecentsView(Function<RecentsView, T> f) { + return getFromRecentsView(f, false); + } + + private <T> T getFromRecentsView(Function<RecentsView, T> f, boolean forTearDown) { + if (enableLauncherOverviewInWindow()) { + return getFromRecentsWindow(recentsWindowManager -> + (forTearDown && recentsWindowManager == null) + ? null : f.apply(recentsWindowManager.getOverviewPanel())); + } else { + return getFromLauncher(launcher -> (forTearDown && launcher == null) + ? null : f.apply(launcher.getOverviewPanel())); + } + } + + private void runOnRecentsView(Consumer<RecentsView> f) { + runOnRecentsView(f, false); + } + + private void runOnRecentsView(Consumer<RecentsView> f, boolean forTearDown) { + getFromRecentsView(recentsView -> { + if (forTearDown && recentsView == null) { + return null; + } + f.accept(recentsView); + return null; + }, forTearDown); + } } diff --git a/quickstep/tests/src/com/android/quickstep/TaplTestsTaskbar.java b/quickstep/tests/src/com/android/quickstep/TaplTestsTaskbar.java index 0d1d2bd16c..ec245ee0f3 100644 --- a/quickstep/tests/src/com/android/quickstep/TaplTestsTaskbar.java +++ b/quickstep/tests/src/com/android/quickstep/TaplTestsTaskbar.java @@ -23,7 +23,7 @@ import static com.android.quickstep.TaplTestsTaskbar.TaskbarMode.TRANSIENT; import androidx.test.filters.LargeTest; -import com.android.launcher3.util.ui.PortraitLandscapeRunner.PortraitLandscape; +import com.android.launcher3.ui.PortraitLandscapeRunner.PortraitLandscape; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/quickstep/tests/src/com/android/quickstep/TaplTestsTrackpad.java b/quickstep/tests/src/com/android/quickstep/TaplTestsTrackpad.java index 8cb1c622df..710ad6f6dc 100644 --- a/quickstep/tests/src/com/android/quickstep/TaplTestsTrackpad.java +++ b/quickstep/tests/src/com/android/quickstep/TaplTestsTrackpad.java @@ -29,7 +29,7 @@ import androidx.test.runner.AndroidJUnit4; import com.android.launcher3.tapl.LauncherInstrumentation.TrackpadGestureType; import com.android.launcher3.tapl.Workspace; -import com.android.launcher3.util.ui.PortraitLandscapeRunner.PortraitLandscape; +import com.android.launcher3.ui.PortraitLandscapeRunner.PortraitLandscape; import com.android.quickstep.NavigationModeSwitchRule.NavigationModeSwitch; import org.junit.After; diff --git a/quickstep/tests/src/com/android/quickstep/TaplTestsTransientTaskbar.java b/quickstep/tests/src/com/android/quickstep/TaplTestsTransientTaskbar.java index 821d14fd35..4b20d600dc 100644 --- a/quickstep/tests/src/com/android/quickstep/TaplTestsTransientTaskbar.java +++ b/quickstep/tests/src/com/android/quickstep/TaplTestsTransientTaskbar.java @@ -18,7 +18,6 @@ package com.android.quickstep; import static com.android.launcher3.Flags.enableCursorHoverStates; import static com.android.launcher3.util.TestConstants.AppNames.TEST_APP_NAME; import static com.android.quickstep.TaskbarModeSwitchRule.Mode.TRANSIENT; -import static com.android.systemui.shared.Flags.cursorHotCorner; import static org.junit.Assume.assumeTrue; @@ -42,6 +41,14 @@ public class TaplTestsTransientTaskbar extends AbstractTaplTestsTaskbar { mLauncher.getLaunchedAppState().hoverToShowTaskbarUnstashHint(); } + @Test + @TaskbarModeSwitch(mode = TRANSIENT) + public void testUnstashTaskbarOnScreenBottomEdgeHover() { + assumeTrue(enableCursorHoverStates()); + getTaskbar().getAppIcon(TEST_APP_NAME).launch(TEST_APP_PACKAGE); + mLauncher.getLaunchedAppState().hoverScreenBottomEdgeToUnstashTaskbar(); + } + @Test @TaskbarModeSwitch(mode = TRANSIENT) public void testHoverBelowHintedTaskbarToUnstash() { @@ -64,31 +71,4 @@ public class TaplTestsTransientTaskbar extends AbstractTaplTestsTaskbar { getTaskbar().swipeDownToStash(); mLauncher.getLaunchedAppState().swipeUpToUnstashTaskbar(); } - - @Test - @TaskbarModeSwitch(mode = TRANSIENT) - public void testUnstashTaskbarOnScreenBottomEdgeHover() { - assumeTrue(enableCursorHoverStates()); - getTaskbar().getAppIcon(TEST_APP_NAME).launch(TEST_APP_PACKAGE); - mLauncher.getLaunchedAppState().hoverScreenBottomEdgeToUnstashTaskbar(); - mLauncher.getLaunchedAppState().assertTaskbarVisible(); - } - - @Test - @TaskbarModeSwitch(mode = TRANSIENT) - public void testUnstashTaskbarOnScreenBottomEdgeOutsideActionCornerHover() { - assumeTrue(cursorHotCorner()); - getTaskbar().getAppIcon(TEST_APP_NAME).launch(TEST_APP_PACKAGE); - mLauncher.getLaunchedAppState().hoverScreenBottomEdgeOutsideActionCornerToUnstashTaskbar(); - mLauncher.getLaunchedAppState().assertTaskbarVisible(); - } - - @Test - @TaskbarModeSwitch(mode = TRANSIENT) - public void testNotShowTaskbarOnActionCornerPaddingHover() { - assumeTrue(cursorHotCorner()); - getTaskbar().getAppIcon(TEST_APP_NAME).launch(TEST_APP_PACKAGE); - mLauncher.getLaunchedAppState().hoverScreenBottomCornerToTryUnstashTaskbar(); - mLauncher.getLaunchedAppState().assertTaskbarHidden(); - } } diff --git a/quickstep/tests/src/com/android/quickstep/TaskViewTest.java b/quickstep/tests/src/com/android/quickstep/TaskViewTest.java index 6b87f94cf8..dc1da69342 100644 --- a/quickstep/tests/src/com/android/quickstep/TaskViewTest.java +++ b/quickstep/tests/src/com/android/quickstep/TaskViewTest.java @@ -16,9 +16,6 @@ package com.android.quickstep; -import static com.android.quickstep.TaskViewTestDIHelpers.initializeRecentsDependencies; -import static com.android.quickstep.TaskViewTestDIHelpers.mockRecentsModel; - import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyInt; @@ -38,15 +35,11 @@ import android.util.DisplayMetrics; import android.view.MotionEvent; import androidx.test.filters.SmallTest; -import androidx.test.platform.app.InstrumentationRegistry; import com.android.launcher3.uioverrides.QuickstepLauncher; -import com.android.launcher3.util.SandboxContext; -import com.android.quickstep.recents.di.RecentsDependencies; import com.android.quickstep.util.BorderAnimator; import com.android.quickstep.views.TaskView; -import org.junit.After; import org.junit.Before; import org.junit.Test; import org.mockito.Mock; @@ -55,8 +48,6 @@ import org.mockito.MockitoAnnotations; @SmallTest public class TaskViewTest { - private final SandboxContext mApplicationContext = - new SandboxContext(InstrumentationRegistry.getInstrumentation().getTargetContext()); @Mock private QuickstepLauncher mContext; @Mock @@ -78,19 +69,10 @@ public class TaskViewTest { when(mContext.getApplicationInfo()).thenReturn(mock(ApplicationInfo.class)); when(mContext.obtainStyledAttributes(any(), any(), anyInt(), anyInt())).thenReturn( mock(TypedArray.class)); - when(mContext.getApplicationContext()).thenReturn(mApplicationContext); - mApplicationContext.initDaggerComponent( - DaggerTaskViewTestComponent.builder().bindRecentsModel(mockRecentsModel())); - initializeRecentsDependencies(mContext); mTaskView = new TaskView(mContext, null, 0, 0, mFocusAnimator, mHoverAnimator); } - @After - public void tearDown() { - RecentsDependencies.destroy(mContext); - } - @Test public void notShowBorderOnBorderDisabled() { presetBorderStatus(/* enabled= */ true); diff --git a/quickstep/tests/src/com/android/quickstep/TaskbarModeSwitchRule.java b/quickstep/tests/src/com/android/quickstep/TaskbarModeSwitchRule.java index 87cda25c3c..84ceb332d9 100644 --- a/quickstep/tests/src/com/android/quickstep/TaskbarModeSwitchRule.java +++ b/quickstep/tests/src/com/android/quickstep/TaskbarModeSwitchRule.java @@ -27,9 +27,9 @@ import android.util.Log; import com.android.launcher3.tapl.LauncherInstrumentation; import com.android.launcher3.tapl.TestHelpers; +import com.android.launcher3.ui.AbstractLauncherUiTest; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.rule.FailureWatcher; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; import org.junit.rules.TestRule; import org.junit.runner.Description; diff --git a/quickstep/tests/src/com/android/quickstep/desktop/DesktopAppLaunchAnimatorHelperTest.kt b/quickstep/tests/src/com/android/quickstep/desktop/DesktopAppLaunchAnimatorHelperTest.kt index eb053cd032..daa77d2a31 100644 --- a/quickstep/tests/src/com/android/quickstep/desktop/DesktopAppLaunchAnimatorHelperTest.kt +++ b/quickstep/tests/src/com/android/quickstep/desktop/DesktopAppLaunchAnimatorHelperTest.kt @@ -40,7 +40,7 @@ import com.android.internal.jank.Cuj import com.android.launcher3.desktop.DesktopAppLaunchAnimatorHelper import com.android.launcher3.desktop.DesktopAppLaunchTransition.AppLaunchType import com.android.launcher3.util.Executors.MAIN_EXECUTOR -import com.android.window.flags2.Flags +import com.android.window.flags.Flags import com.google.common.truth.Truth.assertThat import org.junit.Before import org.junit.Rule diff --git a/quickstep/tests/src/com/android/quickstep/util/SplitScreenTestUtils.kt b/quickstep/tests/src/com/android/quickstep/util/SplitScreenTestUtils.kt index 15fa84c6b1..99c74bec15 100644 --- a/quickstep/tests/src/com/android/quickstep/util/SplitScreenTestUtils.kt +++ b/quickstep/tests/src/com/android/quickstep/util/SplitScreenTestUtils.kt @@ -20,7 +20,7 @@ import androidx.test.uiautomator.By import com.android.launcher3.tapl.LauncherInstrumentation import com.android.launcher3.tapl.Overview import com.android.launcher3.tapl.OverviewTask -import com.android.launcher3.util.ui.AbstractLauncherUiTest +import com.android.launcher3.ui.AbstractLauncherUiTest object SplitScreenTestUtils { diff --git a/quickstep/tests/src/com/android/quickstep/util/SplitSelectDataHolderTest.kt b/quickstep/tests/src/com/android/quickstep/util/SplitSelectDataHolderTest.kt index faac190bec..b4f1692604 100644 --- a/quickstep/tests/src/com/android/quickstep/util/SplitSelectDataHolderTest.kt +++ b/quickstep/tests/src/com/android/quickstep/util/SplitSelectDataHolderTest.kt @@ -22,13 +22,12 @@ import android.app.ActivityTaskManager.INVALID_TASK_ID import android.content.Context import android.content.ContextWrapper import android.content.Intent -import android.os.Process import android.os.UserHandle import androidx.test.platform.app.InstrumentationRegistry import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.shortcuts.ShortcutKey +import com.android.launcher3.ui.AbstractLauncherUiTest import com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT -import com.android.launcher3.util.ui.AbstractLauncherUiTest import com.android.quickstep.util.SplitSelectDataHolder.Companion.SPLIT_PENDINGINTENT_PENDINGINTENT import com.android.quickstep.util.SplitSelectDataHolder.Companion.SPLIT_PENDINGINTENT_TASK import com.android.quickstep.util.SplitSelectDataHolder.Companion.SPLIT_SHORTCUT_TASK @@ -55,7 +54,7 @@ class SplitSelectDataHolderTest { private val sampleTaskInfo = RunningTaskInfo() private val sampleTaskId = 10 private val sampleTaskId2 = 11 - private val sampleUser = UserHandle(Process.myUserHandle().identifier) + private val sampleUser = UserHandle(0) private val sampleIntent = Intent() private val sampleIntent2 = Intent() private val sampleShortcut = Intent() @@ -85,7 +84,7 @@ class SplitSelectDataHolderTest { sampleTaskInfo, STAGE_POSITION_TOP_OR_LEFT, null, - null, + null ) assertTrue(splitSelectDataHolder.isSplitSelectActive()) } @@ -97,7 +96,7 @@ class SplitSelectDataHolderTest { STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, null, - INVALID_TASK_ID, + INVALID_TASK_ID ) assertTrue(splitSelectDataHolder.isSplitSelectActive()) } @@ -109,7 +108,7 @@ class SplitSelectDataHolderTest { STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, null, - sampleTaskId, + sampleTaskId ) assertTrue(splitSelectDataHolder.isSplitSelectActive()) } @@ -121,7 +120,7 @@ class SplitSelectDataHolderTest { STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, null, - INVALID_TASK_ID, + INVALID_TASK_ID ) assertTrue(splitSelectDataHolder.isSplitSelectActive()) } @@ -133,7 +132,7 @@ class SplitSelectDataHolderTest { STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, null, - INVALID_TASK_ID, + INVALID_TASK_ID ) splitSelectDataHolder.setSecondTask(sampleTaskId, sampleItemInfo2) assertTrue(splitSelectDataHolder.isBothSplitAppsConfirmed()) @@ -145,7 +144,7 @@ class SplitSelectDataHolderTest { sampleTaskInfo, STAGE_POSITION_TOP_OR_LEFT, null, - null, + null ) splitSelectDataHolder.setSecondTask(sampleIntent, sampleUser, sampleItemInfo2) assertTrue(splitSelectDataHolder.isBothSplitAppsConfirmed()) @@ -158,7 +157,7 @@ class SplitSelectDataHolderTest { STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, null, - INVALID_TASK_ID, + INVALID_TASK_ID ) splitSelectDataHolder.setSecondTask(sampleShortcut, sampleUser, sampleItemInfo2) assertTrue(splitSelectDataHolder.isBothSplitAppsConfirmed()) @@ -170,7 +169,7 @@ class SplitSelectDataHolderTest { sampleTaskInfo, STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, - null, + null ) splitSelectDataHolder.setSecondTask(sampleTaskId2, sampleItemInfo2) val launchData = splitSelectDataHolder.getSplitLaunchData() @@ -194,7 +193,7 @@ class SplitSelectDataHolderTest { sampleTaskInfo, STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, - null, + null ) splitSelectDataHolder.setSecondTask(sampleIntent, sampleUser, sampleItemInfo2) val launchData = splitSelectDataHolder.getSplitLaunchData() @@ -218,7 +217,7 @@ class SplitSelectDataHolderTest { sampleTaskInfo, STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, - null, + null ) splitSelectDataHolder.setSecondTask(sampleShortcut, sampleUser, sampleItemInfo2) val launchData = splitSelectDataHolder.getSplitLaunchData() @@ -243,7 +242,7 @@ class SplitSelectDataHolderTest { STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, null, - INVALID_TASK_ID, + INVALID_TASK_ID ) splitSelectDataHolder.setSecondTask(sampleTaskId, sampleItemInfo2) val launchData = splitSelectDataHolder.getSplitLaunchData() @@ -268,7 +267,7 @@ class SplitSelectDataHolderTest { STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, null, - INVALID_TASK_ID, + INVALID_TASK_ID ) splitSelectDataHolder.setSecondTask(sampleTaskId, sampleItemInfo2) val launchData = splitSelectDataHolder.getSplitLaunchData() @@ -293,7 +292,7 @@ class SplitSelectDataHolderTest { STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, null, - INVALID_TASK_ID, + INVALID_TASK_ID ) splitSelectDataHolder.setSecondTask(sampleIntent2, sampleUser, sampleItemInfo2) val launchData = splitSelectDataHolder.getSplitLaunchData() @@ -317,7 +316,7 @@ class SplitSelectDataHolderTest { sampleTaskInfo, STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, - null, + null ) val launchData = splitSelectDataHolder.getFullscreenLaunchData() @@ -341,7 +340,7 @@ class SplitSelectDataHolderTest { STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, null, - INVALID_TASK_ID, + INVALID_TASK_ID ) val launchData = splitSelectDataHolder.getFullscreenLaunchData() @@ -365,7 +364,7 @@ class SplitSelectDataHolderTest { STAGE_POSITION_TOP_OR_LEFT, sampleItemInfo, null, - INVALID_TASK_ID, + INVALID_TASK_ID ) val launchData = splitSelectDataHolder.getFullscreenLaunchData() @@ -388,7 +387,7 @@ class SplitSelectDataHolderTest { sampleTaskInfo, STAGE_POSITION_TOP_OR_LEFT, null, - null, + null ) splitSelectDataHolder.setSecondTask(sampleIntent, sampleUser, sampleItemInfo2) splitSelectDataHolder.resetState() @@ -398,11 +397,11 @@ class SplitSelectDataHolderTest { @Test fun clearState_intent() { splitSelectDataHolder.setInitialTaskSelect( - sampleIntent, - STAGE_POSITION_TOP_OR_LEFT, - sampleItemInfo, - null, - INVALID_TASK_ID, + sampleIntent, + STAGE_POSITION_TOP_OR_LEFT, + sampleItemInfo, + null, + INVALID_TASK_ID ) splitSelectDataHolder.setSecondTask(sampleIntent, sampleUser, sampleItemInfo2) splitSelectDataHolder.resetState() diff --git a/res/drawable/all_apps_tabs_background_unselected.xml b/res/drawable/all_apps_tabs_background_unselected.xml index 6c0adf13a5..4004021dfd 100644 --- a/res/drawable/all_apps_tabs_background_unselected.xml +++ b/res/drawable/all_apps_tabs_background_unselected.xml @@ -21,7 +21,7 @@ android:top="@dimen/all_apps_tabs_focus_vertical_inset"> <shape android:shape="rectangle"> <corners android:radius="@dimen/all_apps_header_pill_corner_radius" /> - <solid android:color="?attr/allAppsUnselectedTab" /> + <solid android:color="@color/materialColorSurfaceBright" /> </shape> </item> </layer-list> \ No newline at end of file diff --git a/res/drawable/all_apps_tabs_background_unselected_focused.xml b/res/drawable/all_apps_tabs_background_unselected_focused.xml index 83038926ba..3564a0763e 100644 --- a/res/drawable/all_apps_tabs_background_unselected_focused.xml +++ b/res/drawable/all_apps_tabs_background_unselected_focused.xml @@ -28,7 +28,7 @@ android:top="@dimen/all_apps_tabs_focus_border"> <shape android:shape="rectangle"> <corners android:radius="13dp" /> - <solid android:color="?attr/allAppsUnselectedTab" /> + <solid android:color="@color/materialColorSurfaceBright" /> <stroke android:width="@dimen/all_apps_tabs_focus_padding" android:color="@color/materialColorSurfaceDim" /> diff --git a/res/drawable/bg_ps_mask_left_corner.xml b/res/drawable/bg_ps_mask_left_corner.xml index f87c497751..43eeedb0b4 100644 --- a/res/drawable/bg_ps_mask_left_corner.xml +++ b/res/drawable/bg_ps_mask_left_corner.xml @@ -24,7 +24,7 @@ <path android:pathData="M0 28H28C24.3228 28 20.6821 27.2759 17.2847 25.8687C13.8877 24.4614 10.8013 22.3989 8.20117 19.7988C5.60107 17.1987 3.53857 14.1123 2.13135 10.7153C0.724121 7.31787 0 3.67725 0 0V28Z" android:fillType="evenOdd" - android:fillColor="@android:color/white" /> + android:fillColor="?attr/allAppsScrimColor" /> </vector> </item> </layer-list> \ No newline at end of file diff --git a/res/drawable/bg_ps_mask_right_corner.xml b/res/drawable/bg_ps_mask_right_corner.xml index 7a4c0d80c6..d63b866f9c 100644 --- a/res/drawable/bg_ps_mask_right_corner.xml +++ b/res/drawable/bg_ps_mask_right_corner.xml @@ -24,7 +24,7 @@ <path android:pathData="M28 28V0C28 3.67725 27.2759 7.31787 25.8687 10.7153C24.4614 14.1123 22.3989 17.1987 19.7988 19.7988C17.1987 22.3989 14.1123 24.4614 10.7153 25.8687C7.31787 27.2759 3.67725 28 0 28H28Z" android:fillType="evenOdd" - android:fillColor="@android:color/white" /> + android:fillColor="?attr/allAppsScrimColor" /> </vector> </item> </layer-list> \ No newline at end of file diff --git a/res/drawable/bg_rounded_corner_bottom_sheet_handle.xml b/res/drawable/bg_rounded_corner_bottom_sheet_handle.xml index bf5d842577..b0bd33bb51 100644 --- a/res/drawable/bg_rounded_corner_bottom_sheet_handle.xml +++ b/res/drawable/bg_rounded_corner_bottom_sheet_handle.xml @@ -16,6 +16,6 @@ <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > - <solid android:color="?attr/bottomSheetDragHandleColor"/> + <solid android:color="@color/materialColorOutlineVariant"/> <corners android:radius="@dimen/bottom_sheet_handle_corner_radius" /> </shape> diff --git a/res/drawable/ic_bubble_button.xml b/res/drawable/ic_bubble_button.xml index 143c5c93fe..1ed212e09a 100644 --- a/res/drawable/ic_bubble_button.xml +++ b/res/drawable/ic_bubble_button.xml @@ -15,11 +15,11 @@ ~ limitations under the License. --> <vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:viewportWidth="960" - android:viewportHeight="960"> - <path - android:pathData="m464,480 l-90,-90q-11,-11 -11.5,-27.5T374,334q11,-11 28,-11t28,11l90,89v-49q0,-17 11.5,-28.5T560,334q17,0 28.5,11.5T600,374v146q0,17 -11.5,28.5T560,560L414,560q-17,0 -28.5,-11.5T374,520q0,-17 11.5,-28.5T414,480h50ZM760,800q-50,0 -85,-35t-35,-85q0,-50 35,-85t85,-35q50,0 85,35t35,85q0,50 -35,85t-85,35ZM160,800q-33,0 -56.5,-23.5T80,720v-480q0,-33 23.5,-56.5T160,160h640q33,0 56.5,23.5T880,240v200q0,17 -11.5,28.5T840,480q-17,0 -28.5,-11.5T800,440v-200L160,240v480h360q17,0 28.5,11.5T560,760q0,17 -11.5,28.5T520,800L160,800Z" - android:fillColor="#FF000000"/> + android:width="20dp" + android:height="20dp" + android:viewportWidth="24" + android:viewportHeight="24"> + <path + android:fillColor="#FF000000" + android:pathData="M23,5v8h-2V5H3v14h10v2v0H3c-1.1,0 -2,-0.9 -2,-2V5c0,-1.1 0.9,-2 2,-2h18C22.1,3 23,3.9 23,5zM10,8v2.59L5.71,6.29L4.29,7.71L8.59,12H6v2h6V8H10zM19,15c-1.66,0 -3,1.34 -3,3s1.34,3 3,3s3,-1.34 3,-3S20.66,15 19,15z"/> </vector> diff --git a/res/drawable/ic_taskbar_all_apps_search_button_expressive_theme.xml b/res/drawable/ic_taskbar_all_apps_search_button_expressive_theme.xml index 852a077221..ed4a821c79 100644 --- a/res/drawable/ic_taskbar_all_apps_search_button_expressive_theme.xml +++ b/res/drawable/ic_taskbar_all_apps_search_button_expressive_theme.xml @@ -20,6 +20,6 @@ android:viewportWidth="52" android:viewportHeight="52"> <path - android:pathData="M40.862,40.25C39.263,40.25 37.888,39.675 36.737,38.525C35.588,37.375 35.013,35.987 35.013,34.362C35.013,32.737 35.588,31.35 36.737,30.2C37.888,29.05 39.263,28.475 40.862,28.475C42.487,28.475 43.875,29.05 45.025,30.2C46.175,31.35 46.75,32.737 46.75,34.362C46.75,34.938 46.662,35.487 46.487,36.013C46.338,36.537 46.125,37.025 45.85,37.475L49.45,41.112C49.6,41.237 49.7,41.375 49.75,41.525C49.825,41.675 49.862,41.838 49.862,42.013C49.862,42.188 49.825,42.35 49.75,42.5C49.7,42.65 49.6,42.8 49.45,42.95C49.325,43.075 49.188,43.175 49.037,43.25C48.888,43.3 48.725,43.325 48.55,43.325C48.375,43.325 48.213,43.3 48.063,43.25C47.912,43.175 47.763,43.075 47.612,42.95L43.975,39.35C43.525,39.65 43.037,39.875 42.513,40.025C41.987,40.175 41.438,40.25 40.862,40.25ZM24.1,40.25C22.5,40.25 21.125,39.675 19.975,38.525C18.825,37.375 18.25,36 18.25,34.4C18.25,32.75 18.825,31.35 19.975,30.2C21.125,29.05 22.5,28.475 24.1,28.475C25.75,28.475 27.15,29.05 28.3,30.2C29.45,31.35 30.025,32.75 30.025,34.4C30.025,36 29.45,37.375 28.3,38.525C27.15,39.675 25.75,40.25 24.1,40.25ZM40.862,37.625C41.763,37.625 42.525,37.313 43.15,36.688C43.8,36.037 44.125,35.275 44.125,34.4C44.125,33.475 43.8,32.7 43.15,32.075C42.525,31.425 41.763,31.1 40.862,31.1C39.963,31.1 39.188,31.425 38.537,32.075C37.912,32.7 37.6,33.475 37.6,34.4C37.6,35.275 37.912,36.037 38.537,36.688C39.188,37.313 39.963,37.625 40.862,37.625ZM24.1,23.525C22.5,23.525 21.125,22.95 19.975,21.8C18.825,20.65 18.25,19.263 18.25,17.638C18.25,16.013 18.825,14.625 19.975,13.475C21.125,12.325 22.5,11.75 24.1,11.75C25.75,11.75 27.15,12.325 28.3,13.475C29.45,14.625 30.025,16.013 30.025,17.638C30.025,19.263 29.45,20.65 28.3,21.8C27.15,22.95 25.75,23.525 24.1,23.525ZM40.862,23.525C39.237,23.525 37.85,22.95 36.7,21.8C35.55,20.65 34.975,19.263 34.975,17.638C34.975,16.013 35.55,14.625 36.7,13.475C37.85,12.325 39.237,11.75 40.862,11.75C42.487,11.75 43.875,12.325 45.025,13.475C46.175,14.625 46.75,16.013 46.75,17.638C46.75,19.263 46.175,20.65 45.025,21.8C43.875,22.95 42.487,23.525 40.862,23.525Z" + android:pathData="M32.862,38.75C31.263,38.75 29.888,38.175 28.737,37.025C27.587,35.875 27.013,34.487 27.013,32.862C27.013,31.237 27.587,29.85 28.737,28.7C29.888,27.55 31.263,26.975 32.862,26.975C34.487,26.975 35.875,27.55 37.025,28.7C38.175,29.85 38.75,31.237 38.75,32.862C38.75,33.438 38.662,33.987 38.487,34.513C38.338,35.037 38.125,35.525 37.85,35.975L41.45,39.612C41.6,39.737 41.7,39.875 41.75,40.025C41.825,40.175 41.862,40.338 41.862,40.513C41.862,40.688 41.825,40.85 41.75,41C41.7,41.15 41.6,41.3 41.45,41.45C41.325,41.575 41.188,41.675 41.037,41.75C40.888,41.8 40.725,41.825 40.55,41.825C40.375,41.825 40.213,41.8 40.063,41.75C39.912,41.675 39.763,41.575 39.612,41.45L35.975,37.85C35.525,38.15 35.037,38.375 34.513,38.525C33.987,38.675 33.438,38.75 32.862,38.75ZM16.1,38.75C14.5,38.75 13.125,38.175 11.975,37.025C10.825,35.875 10.25,34.5 10.25,32.9C10.25,31.25 10.825,29.85 11.975,28.7C13.125,27.55 14.5,26.975 16.1,26.975C17.75,26.975 19.15,27.55 20.3,28.7C21.45,29.85 22.025,31.25 22.025,32.9C22.025,34.5 21.45,35.875 20.3,37.025C19.15,38.175 17.75,38.75 16.1,38.75ZM32.862,36.125C33.763,36.125 34.525,35.813 35.15,35.188C35.8,34.537 36.125,33.775 36.125,32.9C36.125,31.975 35.8,31.2 35.15,30.575C34.525,29.925 33.763,29.6 32.862,29.6C31.962,29.6 31.188,29.925 30.538,30.575C29.913,31.2 29.6,31.975 29.6,32.9C29.6,33.775 29.913,34.537 30.538,35.188C31.188,35.813 31.962,36.125 32.862,36.125ZM16.1,22.025C14.5,22.025 13.125,21.45 11.975,20.3C10.825,19.15 10.25,17.763 10.25,16.138C10.25,14.512 10.825,13.125 11.975,11.975C13.125,10.825 14.5,10.25 16.1,10.25C17.75,10.25 19.15,10.825 20.3,11.975C21.45,13.125 22.025,14.512 22.025,16.138C22.025,17.763 21.45,19.15 20.3,20.3C19.15,21.45 17.75,22.025 16.1,22.025ZM32.862,22.025C31.237,22.025 29.85,21.45 28.7,20.3C27.55,19.15 26.975,17.763 26.975,16.138C26.975,14.512 27.55,13.125 28.7,11.975C29.85,10.825 31.237,10.25 32.862,10.25C34.487,10.25 35.875,10.825 37.025,11.975C38.175,13.125 38.75,14.512 38.75,16.138C38.75,17.763 38.175,19.15 37.025,20.3C35.875,21.45 34.487,22.025 32.862,22.025Z" android:fillColor="#FF000000"/> </vector> \ No newline at end of file diff --git a/res/drawable/inset_rounded_action_button.xml b/res/drawable/inset_rounded_action_button.xml index 7b4c4d03c0..8ae40c07bb 100644 --- a/res/drawable/inset_rounded_action_button.xml +++ b/res/drawable/inset_rounded_action_button.xml @@ -21,10 +21,10 @@ android:insetRight="@dimen/inset_rounded_action_button"> <shape android:shape="rectangle"> - <solid android:color="?attr/allAppsSurfaceLow" /> + <solid android:color="@color/materialColorSurfaceContainerLow" /> <corners android:radius="@dimen/rounded_button_radius" /> <stroke android:width="1dp" - android:color="?attr/allAppsSurfaceLow" /> + android:color="@color/materialColorSurfaceContainerLow" /> </shape> </inset> diff --git a/res/drawable/private_space_app_divider.xml b/res/drawable/private_space_app_divider.xml index 81cb4017b0..f92dca73d5 100644 --- a/res/drawable/private_space_app_divider.xml +++ b/res/drawable/private_space_app_divider.xml @@ -16,6 +16,6 @@ <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> - <solid android:color="?attr/privateSpaceDividerColor"/> + <solid android:color="@color/materialColorOutlineVariant"/> <size android:height="@dimen/all_apps_divider_height" /> </shape> \ No newline at end of file diff --git a/res/drawable/ps_settings_background.xml b/res/drawable/ps_settings_background.xml index 7d568dc68e..7746012d40 100644 --- a/res/drawable/ps_settings_background.xml +++ b/res/drawable/ps_settings_background.xml @@ -18,6 +18,6 @@ android:inset="4dp"> <shape android:shape="rectangle"> <corners android:radius="@dimen/ps_lock_corner_radius" /> - <solid android:color="?attr/privateSpaceSettingsColor" /> + <solid android:color="@color/materialColorSurfaceBright" /> </shape> </inset> \ No newline at end of file diff --git a/res/drawable/work_card.xml b/res/drawable/work_card.xml index ff66971af0..0e37d4f7b9 100644 --- a/res/drawable/work_card.xml +++ b/res/drawable/work_card.xml @@ -17,7 +17,7 @@ <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> - <solid android:color="?attr/allAppsSurfaceHighest" /> + <solid android:color="@color/materialColorSurfaceContainerHighest" /> <corners android:radius="@dimen/work_edu_card_radius" /> </shape> diff --git a/res/layout/add_item_confirmation_activity.xml b/res/layout/add_item_confirmation_activity.xml index 44c95c9816..2bb2eb3097 100644 --- a/res/layout/add_item_confirmation_activity.xml +++ b/res/layout/add_item_confirmation_activity.xml @@ -42,7 +42,7 @@ android:orientation="vertical" > <TextView - style="@style/WidgetsTitle" + style="@style/TextHeadline" android:id="@+id/widget_appName" android:layout_width="match_parent" android:layout_height="wrap_content" diff --git a/res/layout/all_apps_personal_work_tabs.xml b/res/layout/all_apps_personal_work_tabs.xml index f81ea977e7..1435f8203d 100644 --- a/res/layout/all_apps_personal_work_tabs.xml +++ b/res/layout/all_apps_personal_work_tabs.xml @@ -37,7 +37,7 @@ android:contentDescription="@string/all_apps_personal_tab_content_description" android:textColor="@color/all_apps_tab_text" android:textSize="14sp" - style="@style/AllAppsPersonalWorkTabStyle" /> + style="?android:attr/borderlessButtonStyle" /> <Button android:id="@+id/tab_work" @@ -50,5 +50,5 @@ android:contentDescription="@string/all_apps_work_tab_content_description" android:textColor="@color/all_apps_tab_text" android:textSize="14sp" - style="@style/AllAppsPersonalWorkTabStyle" /> + style="?android:attr/borderlessButtonStyle" /> </com.android.launcher3.workprofile.PersonalWorkSlidingTabStrip> \ No newline at end of file diff --git a/res/layout/launcher_preview_layout.xml b/res/layout/launcher_preview_layout.xml index 7a36a95077..9cb8bfd8a7 100644 --- a/res/layout/launcher_preview_layout.xml +++ b/res/layout/launcher_preview_layout.xml @@ -15,7 +15,7 @@ Modifications copyright 2021, Lawnchair --> -<view class="com.android.launcher3.preview.LauncherPreviewRenderer$LauncherPreviewLayout" +<view class="com.android.launcher3.graphics.LauncherPreviewRenderer$LauncherPreviewLayout" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:launcher="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" diff --git a/res/layout/launcher_preview_two_panel_layout.xml b/res/layout/launcher_preview_two_panel_layout.xml index a69a2c3b9d..f76fc5a337 100644 --- a/res/layout/launcher_preview_two_panel_layout.xml +++ b/res/layout/launcher_preview_two_panel_layout.xml @@ -13,7 +13,7 @@ See the License for the specific language governing permissions and limitations under the License. --> -<view class="com.android.launcher3.preview.LauncherPreviewRenderer$LauncherPreviewLayout" +<view class="com.android.launcher3.graphics.LauncherPreviewRenderer$LauncherPreviewLayout" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:launcher="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" diff --git a/res/layout/private_space_header.xml b/res/layout/private_space_header.xml index 9447374089..29da5aaf44 100644 --- a/res/layout/private_space_header.xml +++ b/res/layout/private_space_header.xml @@ -16,18 +16,18 @@ --> <RelativeLayout - android:id="@+id/ps_header_layout" - xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:app="http://schemas.android.com/apk/res-auto" - android:layout_width="match_parent" - android:layout_height="@dimen/ps_header_height" - android:background="@android:color/transparent" - android:clipToOutline="true" - android:gravity="center_vertical" - android:textDirection="locale" - android:orientation="horizontal" - android:contentDescription="@string/ps_container_lock_button_content_description" - android:importantForAccessibility="yes"> + android:id="@+id/ps_header_layout" + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + android:layout_width="match_parent" + android:layout_height="@dimen/ps_header_height" + android:background="@drawable/bg_ps_header" + android:clipToOutline="true" + android:gravity="center_vertical" + android:textDirection="locale" + android:orientation="horizontal" + android:contentDescription="@string/ps_container_lock_button_content_description" + android:importantForAccessibility="yes"> <LinearLayout android:id="@+id/settingsAndLockGroup" @@ -60,7 +60,7 @@ android:layout_marginTop="@dimen/ps_lock_icon_margin_top" android:layout_marginBottom="@dimen/ps_lock_icon_margin_bottom" android:importantForAccessibility="no" - android:src="@drawable/ic_pr_lock" + android:src="@drawable/ic_lock" app:tint="@color/materialColorPrimaryFixedDim" android:scaleType="center"/> <TextView @@ -75,7 +75,7 @@ android:maxLines="1" android:visibility="gone" android:alpha="0" - style="@style/PrivateSpaceLockTextStyle"/> + style="@style/TextHeadline"/> </LinearLayout> </LinearLayout> <ImageView @@ -104,4 +104,4 @@ android:theme="@style/PrivateSpaceHeaderTextStyle" android:importantForAccessibility="no"/> -</RelativeLayout> +</RelativeLayout> \ No newline at end of file diff --git a/res/layout/private_space_mask_view.xml b/res/layout/private_space_mask_view.xml index ad8947f20e..44e2797020 100644 --- a/res/layout/private_space_mask_view.xml +++ b/res/layout/private_space_mask_view.xml @@ -50,6 +50,6 @@ app:layout_constraintEnd_toEndOf="@id/right_corner" app:layout_constraintTop_toBottomOf="@id/left_corner" android:importantForAccessibility="no" - android:background="@android:color/white"/> + android:background="?attr/allAppsScrimColor"/> </com.android.launcher3.allapps.FloatingMaskView> \ No newline at end of file diff --git a/res/layout/user_folder_icon_normalized.xml b/res/layout/user_folder_icon_normalized.xml index afddc44a78..002e7b7eec 100644 --- a/res/layout/user_folder_icon_normalized.xml +++ b/res/layout/user_folder_icon_normalized.xml @@ -53,17 +53,6 @@ android:textColorHighlight="?android:attr/colorControlHighlight" android:textColorHint="?attr/folderHintTextColor"/> - <com.android.launcher3.pageindicators.PaginationArrow - android:id="@+id/left_indicator_arrow" - android:layout_width="@dimen/folder_arrow_touchbox_length" - android:layout_height="@dimen/folder_arrow_touchbox_length" - android:foreground="@drawable/ic_chevron_left_rounded_700" - android:layout_gravity="center_vertical" - android:foregroundGravity="center" - android:contentDescription="@string/paginate_left" - android:visibility="gone" - android:elevation="1dp"/> - <com.android.launcher3.pageindicators.PageIndicatorDots android:id="@+id/folder_page_indicator" android:layout_gravity="center_vertical" @@ -72,17 +61,6 @@ android:elevation="1dp" /> - <com.android.launcher3.pageindicators.PaginationArrow - android:id="@+id/right_indicator_arrow" - android:layout_width="@dimen/folder_arrow_touchbox_length" - android:layout_height="@dimen/folder_arrow_touchbox_length" - android:layout_gravity="center_vertical" - android:foreground="@drawable/ic_chevron_left_rounded_700" - android:rotation="180" - android:contentDescription="@string/paginate_right" - android:foregroundGravity="center" - android:visibility="gone" - android:elevation="1dp"/> </LinearLayout> </com.android.launcher3.folder.Folder> diff --git a/res/layout/widget_recommendations.xml b/res/layout/widget_recommendations.xml index 545362940d..5879b0f1a9 100644 --- a/res/layout/widget_recommendations.xml +++ b/res/layout/widget_recommendations.xml @@ -22,7 +22,6 @@ --> <TextView android:id="@+id/recommendations_page_title" - style="@style/WidgetSuggestionsTitle" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="12dp" diff --git a/res/layout/widgets_bottom_sheet_content.xml b/res/layout/widgets_bottom_sheet_content.xml index aa1673e490..0a1407e098 100644 --- a/res/layout/widgets_bottom_sheet_content.xml +++ b/res/layout/widgets_bottom_sheet_content.xml @@ -30,7 +30,6 @@ android:background="@drawable/bg_rounded_corner_bottom_sheet_handle"/> <TextView android:id="@+id/title" - style="@style/WidgetsTitle" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_horizontal" diff --git a/res/layout/widgets_full_sheet_paged_view.xml b/res/layout/widgets_full_sheet_paged_view.xml index 21f2c287c0..a7c4fbe7e0 100644 --- a/res/layout/widgets_full_sheet_paged_view.xml +++ b/res/layout/widgets_full_sheet_paged_view.xml @@ -53,7 +53,6 @@ <TextView android:id="@+id/title" - style="@style/WidgetsTitle" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_horizontal" diff --git a/res/layout/widgets_full_sheet_recyclerview.xml b/res/layout/widgets_full_sheet_recyclerview.xml index 7ef4c25465..1ce1c55ec4 100644 --- a/res/layout/widgets_full_sheet_recyclerview.xml +++ b/res/layout/widgets_full_sheet_recyclerview.xml @@ -36,7 +36,6 @@ <TextView android:id="@+id/title" - style="@style/WidgetsTitle" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_horizontal" diff --git a/res/layout/widgets_two_pane_sheet.xml b/res/layout/widgets_two_pane_sheet.xml index 0901caa8fc..cf090ad92e 100644 --- a/res/layout/widgets_two_pane_sheet.xml +++ b/res/layout/widgets_two_pane_sheet.xml @@ -35,7 +35,6 @@ <TextView android:id="@+id/title" - style="@style/WidgetsTitle" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="24dp" diff --git a/res/layout/work_apps_paused.xml b/res/layout/work_apps_paused.xml index 8d25d71246..695270e704 100644 --- a/res/layout/work_apps_paused.xml +++ b/res/layout/work_apps_paused.xml @@ -38,8 +38,7 @@ android:textAlignment="center" android:layout_marginTop="16dp" android:layout_marginBottom="24dp" - android:textSize="14sp" - style="@style/WorkPausedBodyTextStyle"/> + android:textSize="14sp" /> <Button android:layout_width="wrap_content" @@ -51,6 +50,5 @@ android:background="@drawable/bg_work_apps_paused_action_button" android:paddingStart="16dp" android:paddingEnd="16dp" - android:textSize="14sp" - style="@style/WorkPausedBodyTextStyle"/> + android:textSize="14sp" /> </com.android.launcher3.allapps.WorkPausedCard> \ No newline at end of file diff --git a/res/layout/work_mode_fab.xml b/res/layout/work_mode_fab.xml index 5d1c0f4c82..d6d83e4405 100644 --- a/res/layout/work_mode_fab.xml +++ b/res/layout/work_mode_fab.xml @@ -45,5 +45,5 @@ android:layout_marginStart="@dimen/work_fab_text_start_margin" android:layout_marginEnd="@dimen/work_fab_text_end_margin" android:maxLines="1" - style="@style/WorkModeFabTextStyle"/> + style="@style/TextHeadline"/> </LinearLayout> diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml index 6e79dd64c0..a5ad05c455 100644 --- a/res/values-af/strings.xml +++ b/res/values-af/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Tik om opstelling te voltooi"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Dit is \'n stelselprogram en kan nie gedeïnstalleer word nie."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Wysig naam"</string> - <string name="paginate_left" msgid="7915437358451360433">"Pagineer links"</string> - <string name="paginate_right" msgid="6701038155201975878">"Pagineer regs"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Het <xliff:g id="APP_NAME">%1$s</xliff:g> gedeaktiveer"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} het # kennisgewing}other{{app_name} het # kennisgewings}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Bladsy %1$d van %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Laat toe dat tuisskerm gedraai word"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Wanneer foon gedraai word"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Landskapmodus"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Stel tuisskerm na landskapmodus"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Stel foon op landskapmodus"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Kennisgewingkolle"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Aan"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Af"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Sluit"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Privaat Ruimte-oorgang"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Installeer"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Voeg by"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Installeer apps in privaat ruimte"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Voeg lêers en meer by privaat ruimte"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Sirkel"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Vierkant"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-kantige koekie"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-kantige koekie"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Boog"</string> </resources> diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml index c79f816ed8..dca355c201 100644 --- a/res/values-am/strings.xml +++ b/res/values-am/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"ማዋቀርን ለመጨረስ መታ ያድርጉ"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"ይህ የስርዓት መተግበሪያ ነው እና ማራገፍ አይቻልም።"</string> <string name="folder_hint_text" msgid="5174843001373488816">"ስም ያርትዑ"</string> - <string name="paginate_left" msgid="7915437358451360433">"ወደ ግራ ገፅ ይስጡ"</string> - <string name="paginate_right" msgid="6701038155201975878">"ወደ ቀኝ ገፅ ይስጡ"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> ተሰናክሏል"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}፣ # ማሳወቂያ አለው}one{{app_name}፣ # ማሳወቂያዎች አሉት}other{{app_name}፣ # ማሳወቂያዎች አሉት}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"ገፅ %1$d ከ%2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"የመነሻ ማያ ገፅ ማሽከርከርን ይፍቀዱ"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"ስልኩ ሲዞር"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"የመሬት አቀማመጥ ሁኔታ"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"መነሻ ማያ ገፅን ወደ የመሬት አቀማመጥ ሁኔታ ያቀናብሩ"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ስልክን ወደ የመሬት አቀማመጥ ሁኔታ ያቀናብሩ"</string> <string name="notification_dots_title" msgid="9062440428204120317">"የማሳወቂያ ነጥቦች"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"አብራ"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ጠፍቷል"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"ቆልፍ"</string> <string name="ps_container_transition" msgid="8667331812048014412">"የግል ቦታ ሽግግር"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ይጫኑ"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"አክል"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"መተግበሪያዎችን ወደ የግል ቦታ ይጫኑ"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"ወደ የግል ቦታ ፋይሎች እና ሌሎችንም ያክሉ"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"ክብ"</string> - <string name="square_shape_title" msgid="3085320803149569308">"ካሬ"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-ጎን ያለው ኩኪ"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-ጎን ያለው ኩኪ"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"ቅስት"</string> </resources> diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml index a1b03b76a8..bd316b673e 100644 --- a/res/values-ar/strings.xml +++ b/res/values-ar/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"انقر لإكمال الإعداد."</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"هذا تطبيق نظام وتتعذر إزالته."</string> <string name="folder_hint_text" msgid="5174843001373488816">"تعديل الاسم"</string> - <string name="paginate_left" msgid="7915437358451360433">"الترقيم على اليسار"</string> - <string name="paginate_right" msgid="6701038155201975878">"الترقيم على اليمين"</string> <string name="disabled_app_label" msgid="6673129024321402780">"تم إيقاف <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{هناك إشعار واحد في التطبيق {app_name}.}zero{هناك # إشعار في التطبيق {app_name}.}two{هناك إشعارَان في التطبيق {app_name}.}few{هناك # إشعارات في التطبيق {app_name}.}many{هناك # إشعارًا في التطبيق {app_name}.}other{هناك # إشعار في التطبيق {app_name}.}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"‏الصفحة %1$d من %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"السماح بتدوير الشاشة الرئيسية"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"عند تدوير الهاتف"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"الوضع الأفقي"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ضبط الشاشة الرئيسية على الوضع الأفقي"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ضبط الهاتف على الوضع الأفقي"</string> <string name="notification_dots_title" msgid="9062440428204120317">"نقاط الإشعارات"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"الإعداد مفعّل"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"غير مفعّل"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"قفل"</string> <string name="ps_container_transition" msgid="8667331812048014412">"النقل إلى المساحة الخاصة"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"تثبيت"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"إضافة"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"تثبيت التطبيقات في المساحة الخاصّة"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"إضافة ملفات والمزيد إلى \"المساحة الخاصّة\""</string> - <string name="circle_shape_title" msgid="3582075061179674565">"دائرة"</string> - <string name="square_shape_title" msgid="3085320803149569308">"مربّع"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"كعكة رباعية الجوانب"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"كعكة سباعية الجوانب"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"قوس"</string> </resources> diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml index cd0d02d278..c13ead7815 100644 --- a/res/values-as/strings.xml +++ b/res/values-as/strings.xml @@ -61,7 +61,7 @@ <string name="shortcuts_count" msgid="8471715556199592381">"{count,plural, =1{# টা শ্বৰ্টকাট}one{# টা শ্বৰ্টকাট}other{# টা শ্বৰ্টকাট}}"</string> <string name="widgets_and_shortcuts_count" msgid="7209136747878365116">"<xliff:g id="WIDGETS_COUNT">%1$s</xliff:g>, <xliff:g id="SHORTCUTS_COUNT">%2$s</xliff:g>"</string> <string name="widget_button_text" msgid="2880537293434387943">"ৱিজেটসমূহ"</string> - <string name="widgets_full_sheet_search_bar_hint" msgid="8484659090860596457">"সন্ধান কৰক"</string> + <string name="widgets_full_sheet_search_bar_hint" msgid="8484659090860596457">"সন্ধান"</string> <string name="widgets_full_sheet_cancel_button_description" msgid="5766167035728653605">"সন্ধান বাকচত থকা পাঠ মচক"</string> <string name="no_widgets_available" msgid="4337693382501046170">"ৱিজেট আৰু শ্বৰ্টকাট উপলব্ধ নহয়"</string> <string name="no_search_results" msgid="3787956167293097509">"কোনো ৱিজেট আৰু শ্বৰ্টকাট পোৱা নগ’ল"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"ছেটআপ সমাপ্ত কৰিবলৈ টিপক"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"এইটো এটা ছিষ্টেম এপ আৰু ইয়াক আনইনষ্টল কৰিব নোৱৰি"</string> <string name="folder_hint_text" msgid="5174843001373488816">"নাম সম্পাদনা কৰক"</string> - <string name="paginate_left" msgid="7915437358451360433">"বাওঁফালে পৃষ্ঠা হিচাপে পৃথকীকৰণ কৰক"</string> - <string name="paginate_right" msgid="6701038155201975878">"সোঁফালে পৃষ্ঠা হিচাপে পৃথকীকৰণ কৰক"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> অক্ষম কৰা হ’ল"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}ৰ # টা জাননী আছে}one{{app_name}ৰ # টা জাননী আছে}other{{app_name}ৰ # টা জাননী আছে}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$dৰ %1$d পৃষ্ঠা"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"গৃহ স্ক্ৰীন ঘূৰোৱাৰ অনুমতি দিয়ক"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"ফ\'নটো যেতিয়া ঘূৰোৱা হয়"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"লেণ্ডস্কেইপ ম’ড"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"গৃহ স্ক্ৰীনখনক লেণ্ডস্কেইপ ম’ড হিচাপে ছেট কৰক"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ফ’নটো লেণ্ডস্কেইপ ম’ডলৈ ছেট কৰক"</string> <string name="notification_dots_title" msgid="9062440428204120317">"জাননী বিন্দু"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"অন কৰা আছে"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"অফ আছে"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"লক কৰক"</string> <string name="ps_container_transition" msgid="8667331812048014412">"ব্যক্তিগত স্পে’চৰ স্থানান্তৰণ"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ইনষ্টল কৰক"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"যোগ দিয়ক"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"এপ্‌সমূহ প্ৰাইভেট স্পেচত ইনষ্টল কৰক"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"প্ৰাইভেট স্পে’চত ফাইল আৰু অধিক যোগ দিয়ক"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"বৃত্ত"</string> - <string name="square_shape_title" msgid="3085320803149569308">"বৰ্গাকাৰ"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"৪-কোণীয়া কুকি"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"৭-কোণীয়া কুকি"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"খিলান"</string> </resources> diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml index 56361fe4d4..76b9596a6f 100644 --- a/res/values-az/strings.xml +++ b/res/values-az/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Ayarlamanı tamamlamaq üçün toxunun"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Bu sistem tətbiqi olduğu üçün sistemdən silinə bilməz."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Adı redaktə edin"</string> - <string name="paginate_left" msgid="7915437358451360433">"Sola doğru səhifələmə"</string> - <string name="paginate_right" msgid="6701038155201975878">"Sağa doğru səhifələmə"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> deaktiv edildi"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} tətbiqində # bildiriş var}other{{app_name} tətbiqində # bildiriş var}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Səhifə %1$d of %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Əsas ekran çevrilsin"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Telefon çevrilən zaman"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Landşaft rejimi"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Əsas ekranı landşaft rejiminə qoyun"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Telefonu landşaft rejiminə ayarlayın"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Bildiriş nöqtələri"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Aktiv"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Deaktiv"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Kilidləyin"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Şəxsi məkana keçid"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Quraşdırın"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Əlavə edin"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Tətbiqləri şəxsi sahədə quraşdırın"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Private Space-ə fayllar və s. əlavə edin"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Dairə"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 tərəfli peçenye"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 tərəfli peçenye"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Qövs"</string> </resources> diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml index 60508e27d6..74f00e8614 100644 --- a/res/values-b+sr+Latn/strings.xml +++ b/res/values-b+sr+Latn/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Dodirnite da biste dovršili podešavanje"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Ovo je sistemska aplikacija i ne može da se deinstalira."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Izmenite naziv"</string> - <string name="paginate_left" msgid="7915437358451360433">"Numeriši stranice levo"</string> - <string name="paginate_right" msgid="6701038155201975878">"Numeriši stranice desno"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Aplikacija <xliff:g id="APP_NAME">%1$s</xliff:g> je onemogućena"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}, ima # obaveštenje}one{{app_name}, ima # obaveštenje}few{{app_name}, ima # obaveštenja}other{{app_name}, ima # obaveštenja}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%1$d. stranica od %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Dozvoli rotaciju početnog ekrana"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Kada se telefon rotira"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Vodoravni režim"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Podesite početni ekran na vodoravni režim"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Podesite telefon na vodoravni režim"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Tačke za obaveštenja"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Uključeno"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Isključeno"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Zaključavanje"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Prenos privatnog prostora"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalirajte"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Dodaj"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instaliraj aplikacije u privatan prostor"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Dodajte fajlove i drugo u privatan prostor"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Krug"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Četvorougaoni kolačić"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Sedmougaoni kolačić"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Luk"</string> </resources> diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml index 4f4d8e5688..877513e1d6 100644 --- a/res/values-be/strings.xml +++ b/res/values-be/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Націсніце, каб завяршыць наладжванне"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Гэта сістэмная праграма, яе нельга выдаліць."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Змяніць назву"</string> - <string name="paginate_left" msgid="7915437358451360433">"Разбіць на старонкі злева"</string> - <string name="paginate_right" msgid="6701038155201975878">"Разбіць на старонкі справа"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> адключана"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{У праграмы \"{app_name}\" ёсць # апавяшчэнне}one{У праграмы \"{app_name}\" ёсць # апавяшчэнне}few{У праграмы \"{app_name}\" ёсць # апавяшчэнні}many{У праграмы \"{app_name}\" ёсць # апавяшчэнняў}other{У праграмы \"{app_name}\" ёсць # апавяшчэння}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Старонка %1$d з %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Дазволіць паварот галоўнага экрана"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Пры павароце тэлефона"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Альбомная арыентацыя"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Паказваць галоўны экран у альбомнай арыентацыі"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Перавядзіце тэлефон у альбомную арыентацыю"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Значкі апавяшчэнняў"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Уключана"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Выкл."</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Заблакіраваць"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Пераход у прыватную вобласць"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Усталяваць"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Дадаць"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Усталяваць праграмы ў прыватнай прасторы"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Дадавайце файлы і іншае змесціва ў прыватную прастору"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Круг"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Квадрат"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Пячэнне з чатырма бакамі"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Пячэнне з сямю бакамі"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Дуга"</string> </resources> diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml index 2079696615..6721c56d76 100644 --- a/res/values-bg/strings.xml +++ b/res/values-bg/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Докоснете, за да завършите настройването"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Това е системно приложение и не може да се деинсталира."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Редактиране на името"</string> - <string name="paginate_left" msgid="7915437358451360433">"Страниране наляво"</string> - <string name="paginate_right" msgid="6701038155201975878">"Страниране надясно"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Деактивирахте <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} има # известие}other{{app_name} има # известия}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Страница %1$d от %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Разрешаване на завъртането на началния екран"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"При завъртане на телефона"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Хоризонтален режим"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Поставяне на началния екран в хоризонтален режим"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Поставете телефона в хоризонтален режим"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Точки за известия"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Вкл."</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Изкл."</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Заключване"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Преминаване към частното пространство"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Инсталиране"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Добавяне"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Инсталиране на приложения в частно пространство"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Добавяне на файлове и др. в частно пространство"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Кръг"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Квадрат"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-странна бисквитка"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-странна бисквитка"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Арка"</string> </resources> diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml index 5560ba865b..5e90fbe104 100644 --- a/res/values-bn/strings.xml +++ b/res/values-bn/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"সেটআপ সম্পূর্ণ করতে ট্যাপ করুন"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"এটি একটি সিস্টেম অ্যাপ্লিকেশান এবং আনইনস্টল করা যাবে না৷"</string> <string name="folder_hint_text" msgid="5174843001373488816">"নাম এডিট করুন"</string> - <string name="paginate_left" msgid="7915437358451360433">"আগের পৃষ্ঠায় যান"</string> - <string name="paginate_right" msgid="6701038155201975878">"পরের পৃষ্ঠায় যান"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> অক্ষম করা হয়েছে"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}-এর #টি বিজ্ঞপ্তি আছে}one{{app_name}-এর #টি বিজ্ঞপ্তি আছে}other{{app_name}-এর #টি বিজ্ঞপ্তি আছে}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$dটির মধ্যে %1$dটি পৃষ্ঠা"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"হোম স্ক্রিন রোটেট করার অনুমতি দিন"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"যখন ফোনটি ঘোরানো হয়"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"ভূদৃশ্য মোড"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ল্যান্ডস্কেপ মোডে হোম স্ক্রিন সেট করুন"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ভূদৃশ্য মোডে ফোন সেট করুন"</string> <string name="notification_dots_title" msgid="9062440428204120317">"বিজ্ঞপ্তি ডট"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"চালু করা আছে"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"বন্ধ"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"লক"</string> <string name="ps_container_transition" msgid="8667331812048014412">"ব্যক্তিগত স্পেস ট্রানজিট করা"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ইনস্টল করুন"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"যোগ করুন"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"প্রাইভেট স্পেসে অ্যাপ ইনস্টল করুন"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"প্রাইভেট স্পেসে ফাইল ও আরও অনেক কিছু যোগ করুন"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"সার্কেল"</string> - <string name="square_shape_title" msgid="3085320803149569308">"বর্গাকার"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"৪-কোণা কুকি"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"৭-কোণা কুকি"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"খিলান"</string> </resources> diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml index 8f9dd39661..714807e0b2 100644 --- a/res/values-bs/strings.xml +++ b/res/values-bs/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Dodirnite da završite postavljanje"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Ovo je sistemska aplikacija i ne može se deinstalirati."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Uređivanje naziva"</string> - <string name="paginate_left" msgid="7915437358451360433">"Razdvajanje stranica ulijevo"</string> - <string name="paginate_right" msgid="6701038155201975878">"Razdvajanje stranica udesno"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Aplikacija <xliff:g id="APP_NAME">%1$s</xliff:g> je onemogućena"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{Aplikacija {app_name} ima # obavještenje}one{Aplikacija {app_name} ima # obavještenje}few{Aplikacija {app_name} ima # obavještenja}other{Aplikacija {app_name} ima # obavještenja}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Strana %1$d od %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Dozvoli rotiranje početnog ekrana"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Kada se telefon zarotira"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Vodoravni način"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Postavite početni ekran u vodoravni način"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Postavite telefon u vodoravni način"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Tačke za obavještenja"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Uključeno"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Isključeno"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Zaključaj"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Prelazak u privatan prostor"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalirajte"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Dodajte"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instaliranje aplikacija u privatni prostor"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Dodavanje fajlova i drugih stavki u privatni prostor"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Krug"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-strani kolačić"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-strani kolačić"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Luk"</string> </resources> diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml index ddf1ff8cdd..f0f652c968 100644 --- a/res/values-ca/strings.xml +++ b/res/values-ca/strings.xml @@ -95,7 +95,7 @@ <string name="all_apps_button_work_label" msgid="7270707118948892488">"Llista d\'aplicacions de treball"</string> <string name="remove_drop_target_label" msgid="7812859488053230776">"Suprimeix"</string> <string name="uninstall_drop_target_label" msgid="4722034217958379417">"Desinstal·la"</string> - <string name="app_info_drop_target_label" msgid="692894985365717661">"Informació de l\'app"</string> + <string name="app_info_drop_target_label" msgid="692894985365717661">"Informació de l\'aplicació"</string> <string name="install_private_system_shortcut_label" msgid="1616889277073184841">"Instal·la en privat"</string> <string name="uninstall_private_system_shortcut_label" msgid="8423460530441627982">"Desinstal·la l\'aplicació"</string> <string name="install_drop_target_label" msgid="2539096853673231757">"Instal·la"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Toca per finalitzar la configuració"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Aquesta aplicació és una aplicació del sistema i no es pot desinstal·lar."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Edita el nom"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginació a l\'esquerra"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginació a la dreta"</string> <string name="disabled_app_label" msgid="6673129024321402780">"S\'ha desactivat <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} té # notificació}other{{app_name} té # notificacions}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Pàgina %1$d de %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Permet la rotació de la pantalla d\'inici"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"En girar el telèfon"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Mode horitzontal"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Estableix la pantalla d\'inici en mode horitzontal"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Posa el telèfon en mode horitzontal"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Punts de notificació"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Activats"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Desactivats"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Bloqueja"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Canvia a Espai privat"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instal·la"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Afegeix"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instal·la les aplicacions a Espai privat"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Afegeix fitxers i més a Espai privat"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Cercle"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Quadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Galeta de 4 costats"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Galeta de 7 costats"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arc"</string> </resources> diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml index e17b60eed7..5d83b8d9a3 100644 --- a/res/values-cs/strings.xml +++ b/res/values-cs/strings.xml @@ -66,7 +66,7 @@ <string name="no_widgets_available" msgid="4337693382501046170">"Widgety ani zkratky nejsou k dispozici"</string> <string name="no_search_results" msgid="3787956167293097509">"Nebyly nalezeny žádné widgety ani zkratky"</string> <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Osobní"</string> - <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Pracovní"</string> + <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Práce"</string> <string name="widget_category_conversations" msgid="8894438636213590446">"Konverzace"</string> <string name="widget_category_note_taking" msgid="3469689394504266039">"Psaní poznámek"</string> <string name="widget_cell_tap_to_show_add_button_label" msgid="4354194214317043581">"Zobrazit tlačítko přidání"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Klepnutím dokončíte konfiguraci"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Toto je systémová aplikace a nelze ji odinstalovat."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Upravit název"</string> - <string name="paginate_left" msgid="7915437358451360433">"Stránkovat vlevo"</string> - <string name="paginate_right" msgid="6701038155201975878">"Stránkovat vpravo"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Aplikace <xliff:g id="APP_NAME">%1$s</xliff:g> je zakázána"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{Aplikace {app_name} má # oznámení}few{Aplikace {app_name} má # oznámení}many{Aplikace {app_name} má # oznámení}other{Aplikace {app_name} má # oznámení}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Strana %1$d z %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Povolit otáčení plochy"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Při otočení telefonu"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Režim na šířku"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Nastavit plochu do režimu na šířku"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Nastavit telefon do režimu na šířku"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Puntíky s oznámením"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Zapnuto"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Vypnuto"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Zamknout"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Převádění soukromého prostoru"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Nainstalovat"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Přidat"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instalovat aplikace do soukromého prostoru"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Přidejte do soukromého prostoru soubory a další položky"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Kruh"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Čtverec"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Čtyřstranný koláček"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Sedmistranný koláček"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Oblouk"</string> </resources> diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml index f217776464..cee6299fc2 100644 --- a/res/values-da/strings.xml +++ b/res/values-da/strings.xml @@ -89,7 +89,7 @@ <string name="long_accessible_way_to_add_shortcut" msgid="2199537273817090740">"Tryk to gange, og hold en genvej nede for at flytte den eller bruge tilpassede handlinger."</string> <string name="out_of_space" msgid="6455557115204099579">"Der er ikke ledig plads på startskærmen"</string> <string name="hotseat_out_of_space" msgid="7448809638125333693">"Der er ikke mere plads i bakken Favoritter"</string> - <string name="all_apps_button_label" msgid="8130441508702294465">"Appliste"</string> + <string name="all_apps_button_label" msgid="8130441508702294465">"Liste med apps"</string> <string name="all_apps_search_results" msgid="5889367432531296759">"Søgeresultater"</string> <string name="all_apps_button_personal_label" msgid="1315764287305224468">"Liste over personlige apps"</string> <string name="all_apps_button_work_label" msgid="7270707118948892488">"Liste over apps til arbejdet"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Tryk for at fuldføre konfigurationen"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Dette er en systemapp, som ikke kan afinstalleres."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Rediger navn"</string> - <string name="paginate_left" msgid="7915437358451360433">"Sideinddeling til venstre"</string> - <string name="paginate_right" msgid="6701038155201975878">"Sideinddeling til højre"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> er deaktiveret"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} har # notifikation}one{{app_name} har # notifikation}other{{app_name} har # notifikationer}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Side %1$d ud af %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Tillad rotation af startskærmen"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Når telefonen roteres"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Liggende format"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Indstil startskærmen til liggende format"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Indstil telefonen til liggende format"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Notifikationsprikker"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Til"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Fra"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Lås"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Ændringer af tilstanden for det private område"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Installer"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Tilføj"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Installer apps i privat område"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Føj filer m.m. til dit private område"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Cirkel"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-sidet kage"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-sidet kage"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Bue"</string> </resources> diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index b1e16fdfd6..6fcae2e09f 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Tippen, um Einrichtung abzuschließen"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Dies ist eine Systemanwendung, die nicht deinstalliert werden kann."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Name bearbeiten"</string> - <string name="paginate_left" msgid="7915437358451360433">"Links paginieren"</string> - <string name="paginate_right" msgid="6701038155201975878">"Rechts paginieren"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> deaktiviert"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} hat # Benachrichtigung}other{{app_name} hat # Benachrichtigungen}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Seite %1$d von %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Drehen des Startbildschirms zulassen"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Beim Drehen des Smartphones"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Querformat"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Startbildschirm im Querformat anzeigen"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Smartphone auf Querformat einstellen"</string> <string name="notification_dots_title" msgid="9062440428204120317">"App-Benachrichtigungspunkte"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"An"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Aus"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Sperren"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Sperrzustand des vertraulichen Profils wird gerade geändert"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Installieren"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Hinzufügen"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Apps im vertraulichen Profil installieren"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Dateien und mehr zum vertraulichen Profil hinzufügen"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Kreis"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Quadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Viereckiger Keks"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Siebeneckiger Keks"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Bogen"</string> </resources> diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml index d147c8c0d4..0aaac0b491 100644 --- a/res/values-el/strings.xml +++ b/res/values-el/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Πατήστε για να ολοκληρώσετε τη ρύθμιση"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Αυτή είναι μια εφαρμογή συστήματος και δεν είναι δυνατή η κατάργηση της εγκατάστασής της."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Επεξεργασία ονόματος"</string> - <string name="paginate_left" msgid="7915437358451360433">"Σελιδοποίηση αριστερά"</string> - <string name="paginate_right" msgid="6701038155201975878">"Σελιδοποίηση δεξιά"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Η εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g> είναι απενεργοποιημένη"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{Η εφαρμογή {app_name} έχει # ειδοποίηση}other{Η εφαρμογή {app_name} έχει # ειδοποιήσεις}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Σελίδα %1$d από %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Να επιτρέπεται η περιστροφή της αρχικής οθόνης"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Όταν το τηλέφωνο περιστρέφεται"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Οριζόντιος προσανατολισμός"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Ορισμός αρχικής οθόνης σε οριζόντιο προσανατολισμό"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Ορισμός τηλεφώνου σε οριζόντιο προσανατολισμό"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Κουκκίδες ειδοποίησης"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Ενεργοποίηση"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Απενεργοποίηση"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Κλείδωμα"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Μετάβαση στον Ιδιωτικό χώρο"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Εγκατάσταση"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Προσθήκη"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Εγκατάσταση εφαρμογών στον ιδιωτικό χώρο"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Προσθέστε αρχεία και άλλα στοιχεία στον Ιδιωτικό χώρο"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Κύκλος"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Τετράγωνο"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Μπισκότο με 4 πλευρές"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Μπισκότο με 7 πλευρές"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Αψίδα"</string> </resources> diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml index ef3477f11c..3b12d259ae 100644 --- a/res/values-en-rAU/strings.xml +++ b/res/values-en-rAU/strings.xml @@ -112,9 +112,7 @@ <string name="gadget_setup_text" msgid="8348374825537681407">"Widget settings"</string> <string name="gadget_complete_setup_text" msgid="309040266978007925">"Tap to finish setup"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"This is a system app and can\'t be uninstalled."</string> - <string name="folder_hint_text" msgid="5174843001373488816">"Edit name"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginate left"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginate right"</string> + <string name="folder_hint_text" msgid="5174843001373488816">"Edit Name"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Disabled <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} has # notification}other{{app_name} has # notifications}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Page %1$d of %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Allow home screen rotation"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"When phone is rotated"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Landscape mode"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Set home screen into landscape mode"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Set phone to landscape mode"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Notification dots"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"On"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Off"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Lock"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Private Space transitioning"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Install"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Add"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Install apps to private space"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Add files and more to private space"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Circle"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Square"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-sided cookie"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-sided cookie"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arch"</string> </resources> diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml index d8994805b5..3aa6607646 100644 --- a/res/values-en-rCA/strings.xml +++ b/res/values-en-rCA/strings.xml @@ -112,9 +112,7 @@ <string name="gadget_setup_text" msgid="8348374825537681407">"Widget settings"</string> <string name="gadget_complete_setup_text" msgid="309040266978007925">"Tap to finish setup"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"This is a system app and can\'t be uninstalled."</string> - <string name="folder_hint_text" msgid="5174843001373488816">"Edit name"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginate left"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginate right"</string> + <string name="folder_hint_text" msgid="5174843001373488816">"Edit Name"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Disabled <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} has # notification}other{{app_name} has # notifications}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Page %1$d of %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Allow home screen rotation"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"When phone is rotated"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Landscape mode"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Set home screen into landscape mode"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Set phone into landscape mode"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Notification dots"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"On"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Off"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Lock"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Private Space Transitioning"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Install"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Add"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Install apps to Private Space"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Add files and more to Private Space"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Circle"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Square"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-sided cookie"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-sided cookie"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arch"</string> </resources> diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml index ef3477f11c..3b12d259ae 100644 --- a/res/values-en-rGB/strings.xml +++ b/res/values-en-rGB/strings.xml @@ -112,9 +112,7 @@ <string name="gadget_setup_text" msgid="8348374825537681407">"Widget settings"</string> <string name="gadget_complete_setup_text" msgid="309040266978007925">"Tap to finish setup"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"This is a system app and can\'t be uninstalled."</string> - <string name="folder_hint_text" msgid="5174843001373488816">"Edit name"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginate left"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginate right"</string> + <string name="folder_hint_text" msgid="5174843001373488816">"Edit Name"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Disabled <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} has # notification}other{{app_name} has # notifications}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Page %1$d of %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Allow home screen rotation"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"When phone is rotated"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Landscape mode"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Set home screen into landscape mode"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Set phone to landscape mode"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Notification dots"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"On"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Off"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Lock"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Private Space transitioning"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Install"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Add"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Install apps to private space"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Add files and more to private space"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Circle"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Square"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-sided cookie"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-sided cookie"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arch"</string> </resources> diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml index ef3477f11c..3b12d259ae 100644 --- a/res/values-en-rIN/strings.xml +++ b/res/values-en-rIN/strings.xml @@ -112,9 +112,7 @@ <string name="gadget_setup_text" msgid="8348374825537681407">"Widget settings"</string> <string name="gadget_complete_setup_text" msgid="309040266978007925">"Tap to finish setup"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"This is a system app and can\'t be uninstalled."</string> - <string name="folder_hint_text" msgid="5174843001373488816">"Edit name"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginate left"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginate right"</string> + <string name="folder_hint_text" msgid="5174843001373488816">"Edit Name"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Disabled <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} has # notification}other{{app_name} has # notifications}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Page %1$d of %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Allow home screen rotation"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"When phone is rotated"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Landscape mode"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Set home screen into landscape mode"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Set phone to landscape mode"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Notification dots"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"On"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Off"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Lock"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Private Space transitioning"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Install"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Add"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Install apps to private space"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Add files and more to private space"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Circle"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Square"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-sided cookie"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-sided cookie"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arch"</string> </resources> diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml index 8bb6b9549c..34c7d13c05 100644 --- a/res/values-es-rUS/strings.xml +++ b/res/values-es-rUS/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Presiona para finalizar la configuración"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Esta es una aplicación del sistema y no se puede desinstalar."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Editar nombre"</string> - <string name="paginate_left" msgid="7915437358451360433">"Ir a la página anterior"</string> - <string name="paginate_right" msgid="6701038155201975878">"Ir a la página siguiente"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Se inhabilitó <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} tiene # notificación}other{{app_name} tiene # notificaciones}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Página %1$d de %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Permitir la rotación de la pantalla principal"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Al girar el teléfono"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Modo horizontal"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Establecer la pantalla principal en modo horizontal"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Establece el teléfono en modo horizontal"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Puntos de notificación"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Activados"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Desactivados"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Bloqueo"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Pasar a Espacio privado"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalar"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Agregar"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instala las apps en el espacio privado"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Agrega archivos y mucho más al Espacio privado"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Círculo"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Cuadrado"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Galleta de 4 lados"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Galleta de 7 lados"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arco"</string> </resources> diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml index 71a092e878..ad5833b0ae 100644 --- a/res/values-es/strings.xml +++ b/res/values-es/strings.xml @@ -95,7 +95,7 @@ <string name="all_apps_button_work_label" msgid="7270707118948892488">"Lista de aplicaciones del trabajo"</string> <string name="remove_drop_target_label" msgid="7812859488053230776">"Quitar"</string> <string name="uninstall_drop_target_label" msgid="4722034217958379417">"Desinstalar"</string> - <string name="app_info_drop_target_label" msgid="692894985365717661">"Info de la app"</string> + <string name="app_info_drop_target_label" msgid="692894985365717661">"Información de la aplicación"</string> <string name="install_private_system_shortcut_label" msgid="1616889277073184841">"Descargar en privado"</string> <string name="uninstall_private_system_shortcut_label" msgid="8423460530441627982">"Desinstalar aplicación"</string> <string name="install_drop_target_label" msgid="2539096853673231757">"Instalar"</string> @@ -109,12 +109,10 @@ <string name="permlab_write_settings" msgid="4820028712156303762">"escribir ajustes y accesos directos de la pantalla de inicio"</string> <string name="permdesc_write_settings" msgid="726859348127868466">"Permite que la aplicación cambie los ajustes y los accesos directos de la pantalla de inicio."</string> <string name="gadget_error_text" msgid="740356548025791839">"No se puede cargar el widget"</string> - <string name="gadget_setup_text" msgid="8348374825537681407">"Ajustes del widget"</string> + <string name="gadget_setup_text" msgid="8348374825537681407">"Ajustes de widget"</string> <string name="gadget_complete_setup_text" msgid="309040266978007925">"Toca para finalizar la configuración"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Esta aplicación es del sistema y no se puede desinstalar."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Editar nombre"</string> - <string name="paginate_left" msgid="7915437358451360433">"Pasar a la página de la izquierda"</string> - <string name="paginate_right" msgid="6701038155201975878">"Pasar a la página de la derecha"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Se ha inhabilitado <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} tiene # notificación}other{{app_name} tiene # notificaciones}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Página %1$d de %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Permitir rotación de la pantalla de inicio"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Al girar el teléfono"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Modo de vista horizontal"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Establecer la pantalla de inicio en modo de vista horizontal"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Pon el teléfono en modo de vista horizontal"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Burbujas de notificación"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Activado"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Desactivadas"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Bloquear"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Cambiar a espacio privado"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalar"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Añadir"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Descargar aplicaciones en el espacio privado"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Añade archivos y más al espacio privado"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Círculo"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Cuadrado"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Galleta de 4 lados"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Galleta de 7 lados"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arco"</string> </resources> diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml index bef5c342a2..5f76a0b28c 100644 --- a/res/values-et/strings.xml +++ b/res/values-et/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Puudutage seadistuse lõpuleviimiseks"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"See on süsteemirakendus ja seda ei saa desinstallida."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Muuda nime"</string> - <string name="paginate_left" msgid="7915437358451360433">"Vasakpoolne lehekülgjaotus"</string> - <string name="paginate_right" msgid="6701038155201975878">"Parempoolne lehekülgjaotus"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Rakendus <xliff:g id="APP_NAME">%1$s</xliff:g> on keelatud"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{Rakenduses {app_name} on # märguanne}other{Rakenduses {app_name} on # märguannet}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Leht %1$d/%2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Luba avakuva pööramine"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Kui telefoni pööratakse"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Horisontaalrežiim"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Sea avakuva horisontaalrežiimi"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Sea telefon horisontaalrežiimi"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Märguandetäpid"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Sees"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Väljas"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Lukk"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Privaatse ruumi üleviimine"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Installi"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Lisamine"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Rakenduste installimine privaatses ruumis"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Privaatsesse ruumi failide ja muu sisu lisamine"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Ring"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Ruut"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Nelinurkne küpsis"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Seitsenurkne küpsis"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Kaar"</string> </resources> diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml index aa6c25ec15..3601f0ae19 100644 --- a/res/values-eu/strings.xml +++ b/res/values-eu/strings.xml @@ -63,7 +63,7 @@ <string name="widget_button_text" msgid="2880537293434387943">"Widgetak"</string> <string name="widgets_full_sheet_search_bar_hint" msgid="8484659090860596457">"Bilatu"</string> <string name="widgets_full_sheet_cancel_button_description" msgid="5766167035728653605">"Garbitu bilaketa-koadroko testua"</string> - <string name="no_widgets_available" msgid="4337693382501046170">"Widgetak eta lasterbideak ez daude erabilgarri"</string> + <string name="no_widgets_available" msgid="4337693382501046170">"Widgetak eta lasterbideak erabilgarri daude"</string> <string name="no_search_results" msgid="3787956167293097509">"Ez da aurkitu widgetik edo lasterbiderik"</string> <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Pertsonalak"</string> <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Lanekoak"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Sakatu konfiguratzen amaitzeko"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Sistema-aplikazioa da hau eta ezin da desinstalatu."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Editatu izena"</string> - <string name="paginate_left" msgid="7915437358451360433">"Joan aurreko orrira"</string> - <string name="paginate_right" msgid="6701038155201975878">"Joan hurrengo orrira"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> desgaituta dago"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} aplikazioak # jakinarazpen dauka}other{{app_name} aplikazioak # jakinarazpen dauzka}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%1$d/%2$d orria"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Eman orri nagusia biratzeko baimena"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Telefonoa biratzean"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Ikuspegi horizontala"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Ezarri orri nagusia ikuspegi horizontalean"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Ezarri telefonoa ikuspegi horizontalean"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Jakinarazpen-biribiltxoak"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Aktibatuta"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Desaktibatuta"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Blokeatu"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Eremu pribaturako trantsizioa"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalatu"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Gehitu"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instalatu aplikazioak eremu pribatuan"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Gehitu fitxategiak eta gauza gehiago eremu pribatuan"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Zirkulua"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Karratua"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 aldeko opila"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 aldeko opila"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arkua"</string> </resources> diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml index 371896ac50..f2fb9fd4c7 100644 --- a/res/values-fa/strings.xml +++ b/res/values-fa/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"برای تمام کردن راه‌اندازی تک‌ضرب بزنید"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"این برنامه سیستمی است و حذف نصب نمی‌شود."</string> <string name="folder_hint_text" msgid="5174843001373488816">"ویرایش نام"</string> - <string name="paginate_left" msgid="7915437358451360433">"صفحه‌بندی به‌چپ"</string> - <string name="paginate_right" msgid="6701038155201975878">"صفحه‌بندی به‌راست"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> غیرفعال شد"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ‏# اعلان دارد}one{{app_name} ‏# اعلان دارد}other{{app_name} ‏# اعلان دارد}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"‏صفحه %1$d از %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"مجاز کردن چرخش صفحه اصلی"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"وقتی تلفن چرخانده می‌شود"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"حالت افقی"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"تنظیم صفحه اصلی روی حالت افقی"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"تنظیم تلفن روی حالت افقی"</string> <string name="notification_dots_title" msgid="9062440428204120317">"نقطه‌های اعلان"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"روشن"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"خاموش"</string> @@ -193,8 +191,8 @@ <string name="accessibility_close" msgid="2277148124685870734">"بستن"</string> <string name="all_apps_personal_tab" msgid="4190252696685155002">"شخصی"</string> <string name="all_apps_work_tab" msgid="4884822796154055118">"کاری"</string> - <string name="all_apps_personal_tab_content_description" msgid="6286808898381807242">"زبانه برنامه‌های شخصی"</string> - <string name="all_apps_work_tab_content_description" msgid="3835637212347968316">"زبانه برنامه‌های کاری"</string> + <string name="all_apps_personal_tab_content_description" msgid="6286808898381807242">"برگه برنامه‌های شخصی"</string> + <string name="all_apps_work_tab_content_description" msgid="3835637212347968316">"برگه برنامه‌های کاری"</string> <string name="work_profile_toggle_label" msgid="3081029915775481146">"نمایه کاری"</string> <string name="work_profile_edu_work_apps" msgid="7895468576497746520">"برنامه‌های کاری نشان‌دار هستند و سرپرست فناوری اطلاعات می‌تواند آن‌ها را ببیند"</string> <string name="work_profile_edu_accept" msgid="6069788082535149071">"متوجهم"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"قفل کردن"</string> <string name="ps_container_transition" msgid="8667331812048014412">"انتقال «فضای خصوصی»"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"نصب"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"افزودن"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"نصب برنامه‌ها در «فضای خصوصی»"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"افزودن فایل‌ها و موارد دیگر به «فضای خصوصی»"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"دایره"</string> - <string name="square_shape_title" msgid="3085320803149569308">"مربع"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"کلوچه ۴ ضلعی"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"کلوچه ۷ ضلعی"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"طاق"</string> </resources> diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml index 2b64baea16..2b2af8a355 100644 --- a/res/values-fi/strings.xml +++ b/res/values-fi/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Viimeistele asennus napauttamalla"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Tämä on järjestelmäsovellus, eikä sitä voi poistaa."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Muokkaa nimeä"</string> - <string name="paginate_left" msgid="7915437358451360433">"Sivunumerointi vasemmalla"</string> - <string name="paginate_right" msgid="6701038155201975878">"Sivunumerointi oikealla"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> poistettiin käytöstä"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}: # ilmoitus}other{{app_name}: # ilmoitusta}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Sivu %1$d / %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Salli aloitusnäytön kiertäminen"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Kun puhelinta kierretään"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Vaakasuunta"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Aseta aloitusnäyttö vaakasuuntaan"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Aseta puhelin vaakasuuntaan"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Pistemerkit"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Päällä"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Ei päällä"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Lukko"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Yksityisen tilan siirtäminen"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Asenna"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Lisää"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Asenna sovelluksia yksityiseen tilaan"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Lisää tiedostoja ja muuta yksityiseen tilaan"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Ympyrä"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Neliö"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Nelisivuinen keksi"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Seitsensivuinen keksi"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Kaari"</string> </resources> diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml index eb5db3a959..432af26995 100644 --- a/res/values-fr-rCA/strings.xml +++ b/res/values-fr-rCA/strings.xml @@ -61,7 +61,7 @@ <string name="shortcuts_count" msgid="8471715556199592381">"{count,plural, =1{# raccourci}one{# raccourci}other{# raccourcis}}"</string> <string name="widgets_and_shortcuts_count" msgid="7209136747878365116">"<xliff:g id="WIDGETS_COUNT">%1$s</xliff:g>, <xliff:g id="SHORTCUTS_COUNT">%2$s</xliff:g>"</string> <string name="widget_button_text" msgid="2880537293434387943">"Widgets"</string> - <string name="widgets_full_sheet_search_bar_hint" msgid="8484659090860596457">"Recherchez"</string> + <string name="widgets_full_sheet_search_bar_hint" msgid="8484659090860596457">"Rechercher"</string> <string name="widgets_full_sheet_cancel_button_description" msgid="5766167035728653605">"Effacer le texte dans le champ de recherche"</string> <string name="no_widgets_available" msgid="4337693382501046170">"Aucun widget ou raccourci proposé"</string> <string name="no_search_results" msgid="3787956167293097509">"Aucun widget ni raccourci trouvé"</string> @@ -93,10 +93,10 @@ <string name="all_apps_search_results" msgid="5889367432531296759">"Résultats de recherche"</string> <string name="all_apps_button_personal_label" msgid="1315764287305224468">"Liste des applis personnelles"</string> <string name="all_apps_button_work_label" msgid="7270707118948892488">"Liste des applis professionnelles"</string> - <string name="remove_drop_target_label" msgid="7812859488053230776">"Retirer"</string> + <string name="remove_drop_target_label" msgid="7812859488053230776">"Supprimer"</string> <string name="uninstall_drop_target_label" msgid="4722034217958379417">"Désinstaller"</string> <string name="app_info_drop_target_label" msgid="692894985365717661">"Détails de l\'appli"</string> - <string name="install_private_system_shortcut_label" msgid="1616889277073184841">"Installer en privé"</string> + <string name="install_private_system_shortcut_label" msgid="1616889277073184841">"Installer dans privé"</string> <string name="uninstall_private_system_shortcut_label" msgid="8423460530441627982">"Désinstaller l\'appli"</string> <string name="install_drop_target_label" msgid="2539096853673231757">"Installer"</string> <string name="dismiss_prediction_label" msgid="3357562989568808658">"Ne pas suggérer d\'appli"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Touchez pour terminer la configuration"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Impossible de désinstaller cette appli, car il s\'agit d\'une appli système."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Modifier le nom"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginer vers la gauche"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginer vers la droite"</string> <string name="disabled_app_label" msgid="6673129024321402780">"L\'appli <xliff:g id="APP_NAME">%1$s</xliff:g> est désactivée"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} a # notification}one{{app_name} a # notification}other{{app_name} a # notifications}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Page %1$d sur %2$d"</string> @@ -137,8 +135,8 @@ <string name="msg_disabled_by_admin" msgid="6898038085516271325">"Cette fonction est désactivée par votre administrateur"</string> <string name="allow_rotation_title" msgid="7222049633713050106">"Autoriser la rotation de l\'écran d\'accueil"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Lorsque vous faites pivoter le téléphone"</string> - <string name="landscape_mode_title" msgid="5138814555934843926">"Mode Paysage"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Régler l\'écran d\'accueil en mode paysage"</string> + <string name="landscape_mode_title" msgid="5138814555934843926">"Mode paysage"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Configurez le téléphone en mode Paysage"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Pastilles de notification"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Activées"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Désactivé"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Verrouiller"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Transition vers l\'Espace privé"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Installer"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Ajouter"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Installer des applis dans l\'Espace privé"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Ajouter des fichiers et plus à l\'espace privé"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Cercle"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Carré"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Biscuit à quatre côtés"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Biscuit à sept côtés"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arche"</string> </resources> diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index edaba61cde..87ad31a565 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -89,7 +89,7 @@ <string name="long_accessible_way_to_add_shortcut" msgid="2199537273817090740">"Appuyez deux fois et maintenez la pression pour déplacer un raccourci ou utiliser les actions personnalisées."</string> <string name="out_of_space" msgid="6455557115204099579">"Espace insuffisant sur cet écran d\'accueil"</string> <string name="hotseat_out_of_space" msgid="7448809638125333693">"Plus d\'espace disponible dans la zone de favoris."</string> - <string name="all_apps_button_label" msgid="8130441508702294465">"Liste des applis"</string> + <string name="all_apps_button_label" msgid="8130441508702294465">"Liste d\'applications"</string> <string name="all_apps_search_results" msgid="5889367432531296759">"Résultats de recherche"</string> <string name="all_apps_button_personal_label" msgid="1315764287305224468">"Liste des applications personnelles"</string> <string name="all_apps_button_work_label" msgid="7270707118948892488">"Liste des applications professionnelles"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Appuyez pour terminer la configuration"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Impossible de désinstaller cette application, car il s\'agit d\'une application système."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Modifier le nom"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginer à gauche"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginer à droite"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> est désactivé."</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} a # notification}one{{app_name} a # notification}other{{app_name} a # notifications}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Page %1$d sur %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Autoriser la rotation de l\'écran d\'accueil"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Lorsque vous faites pivoter le téléphone"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Mode Paysage"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Activer le mode Paysage pour l\'écran d\'accueil"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Paramétrer le téléphone en mode Paysage"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Pastilles de notification"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Activé"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Désactivées"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Verrouiller"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Transition vers Espace privé"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Installer"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Ajouter"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Installer des applis dans l\'espace privé"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Ajoutez des fichiers et bien plus à votre espace privé"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Cercle"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Carré"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Biscuit à quatre côtés"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Biscuit à sept côtés"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arc"</string> </resources> diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml index dd3cec2938..d68a28c19f 100644 --- a/res/values-gl/strings.xml +++ b/res/values-gl/strings.xml @@ -36,7 +36,7 @@ <string name="manage_windows_option_taskbar" msgid="2294109489960654212">"Xestionar ventás"</string> <string name="save_app_pair" msgid="5647523853662686243">"Gardar parella de apps"</string> <string name="app_pair_default_title" msgid="4045241727446873529">"<xliff:g id="APP1">%1$s</xliff:g> | <xliff:g id="APP2">%2$s</xliff:g>"</string> - <string name="app_pair_unlaunchable_at_screen_size" msgid="3446551575502685376">"O dispositivo non é compatible con este emparellamento de aplicacións"</string> + <string name="app_pair_unlaunchable_at_screen_size" msgid="3446551575502685376">"O dispositivo non admite este emparellamento de aplicacións"</string> <string name="app_pair_needs_unfold" msgid="4588897528143807002">"Desprega o dispositivo para usar este emparellamento de aplicacións"</string> <string name="app_pair_not_available" msgid="3556767440808032031">"Non está dispoñible o emparellamento de aplicacións"</string> <string name="long_press_widget_to_add" msgid="3587712543577675817">"Mantén premido un widget para movelo."</string> @@ -65,7 +65,7 @@ <string name="widgets_full_sheet_cancel_button_description" msgid="5766167035728653605">"Borrar texto da caixa de busca"</string> <string name="no_widgets_available" msgid="4337693382501046170">"Non hai widgets nin atallos dispoñibles"</string> <string name="no_search_results" msgid="3787956167293097509">"Non se atoparon widgets nin atallos"</string> - <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Persoal"</string> + <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Widgets persoais"</string> <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Widgets do traballo"</string> <string name="widget_category_conversations" msgid="8894438636213590446">"Conversas"</string> <string name="widget_category_note_taking" msgid="3469689394504266039">"Toma de notas"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Toca para rematar a configuración"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Esta aplicación é do sistema e non se pode desinstalar."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Edita o nome"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paxinación á esquerda"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paxinación á dereita"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Desactivouse <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ten # notificación}other{{app_name} ten # notificacións}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Páxina %1$d de %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Permitir xirar a pantalla de inicio"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Ao xirar o teléfono"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Modo horizontal"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Establecer modo horizontal para a pantalla de inicio"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Pon o teléfono no modo horizontal"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Puntos de notificacións"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Opción activada"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Desactivados"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Bloquear"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Transición ao espazo privado"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalar"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Engadir"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instalar as aplicacións no espazo privado"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Engade ficheiros e máis elementos ao espazo privado"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Círculo"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Cadrado"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Galleta cadrada"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Galleta heptagonal"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arco"</string> </resources> diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml index fbbb8e3b01..a49b4d6e32 100644 --- a/res/values-gu/strings.xml +++ b/res/values-gu/strings.xml @@ -89,7 +89,7 @@ <string name="long_accessible_way_to_add_shortcut" msgid="2199537273817090740">"શૉર્ટકટ ખસેડવા બે વાર ટૅપ કરીને દબાવી રાખો અથવા કસ્ટમ ક્રિયાઓનો ઉપયોગ કરો."</string> <string name="out_of_space" msgid="6455557115204099579">"આ હોમ સ્ક્રીન પર વધુ જગ્યા નથી"</string> <string name="hotseat_out_of_space" msgid="7448809638125333693">"મનપસંદ ટ્રે પર વધુ જગ્યા નથી"</string> - <string name="all_apps_button_label" msgid="8130441508702294465">"ઍપની સૂચિ"</string> + <string name="all_apps_button_label" msgid="8130441508702294465">"ઍપ્લિકેશનોની સૂચિ"</string> <string name="all_apps_search_results" msgid="5889367432531296759">"શોધ પરિણામો"</string> <string name="all_apps_button_personal_label" msgid="1315764287305224468">"વ્યક્તિગત ઍપની સૂચિ"</string> <string name="all_apps_button_work_label" msgid="7270707118948892488">"કાર્યસ્થળની ઍપની સૂચિ"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"સેટઅપ પૂર્ણ કરવા માટે ટૅપ કરો"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"આ એક સિસ્ટમ ઍપ્લિકેશન છે અને અનઇન્સ્ટોલ કરી શકાતી નથી."</string> <string name="folder_hint_text" msgid="5174843001373488816">"નામમાં ફેરફાર કરો"</string> - <string name="paginate_left" msgid="7915437358451360433">"ડાબી બાજુએથી પાનાને ક્રમાંક આપો"</string> - <string name="paginate_right" msgid="6701038155201975878">"જમણી બાજુએથી પાનાને ક્રમાંક આપો"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> અક્ષમ કરી"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}ના # નોટિફિકેશન છે}one{{app_name}ના # નોટિફિકેશન છે}other{{app_name}ના # નોટિફિકેશન છે}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$dમાંથી %1$d પેજ"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"હોમ સ્ક્રીનને ફેરવવાની મંજૂરી આપો"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"જ્યારે ફોન ફેરવવામાં આવે ત્યારે"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"લૅન્ડસ્કેપ મોડ"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"હોમ સ્ક્રીનને લૅન્ડસ્કેપ મોડમાં સેટ કરો"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ફોનને લૅન્ડસ્કેપ મોડમાં સેટ કરો"</string> <string name="notification_dots_title" msgid="9062440428204120317">"નોટિફિકેશન ડૉટ"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ચાલુ છે"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"બંધ છે"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"લૉક"</string> <string name="ps_container_transition" msgid="8667331812048014412">"ખાનગી સ્પેસ પર સ્થાનાંતરણ"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ઇન્સ્ટૉલ કરો"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"ઉમેરો"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"ખાનગી સ્પેસમાં ઍપ ઇન્સ્ટૉલ કરો"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"ખાનગી સ્પેસમાં ફાઇલો વગેરે ઉમેરો"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"વર્તુળ"</string> - <string name="square_shape_title" msgid="3085320803149569308">"ચોરસ"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 બાજુવાળી કુકી"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 બાજુવાળી કુકી"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"કમાન"</string> </resources> diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml index 477eaad5fe..db9360599a 100644 --- a/res/values-hi/strings.xml +++ b/res/values-hi/strings.xml @@ -89,7 +89,7 @@ <string name="long_accessible_way_to_add_shortcut" msgid="2199537273817090740">"किसी शॉर्टकट को एक से दूसरी जगह ले जाने के लिए, उस पर दो बार टैप करके दबाकर रखें या पसंद के मुताबिक कार्रवाइयां इस्तेमाल करें."</string> <string name="out_of_space" msgid="6455557115204099579">"इस होम स्क्रीन पर जगह खाली नहीं है"</string> <string name="hotseat_out_of_space" msgid="7448809638125333693">"पसंदीदा ट्रे में और जगह नहीं है"</string> - <string name="all_apps_button_label" msgid="8130441508702294465">"ऐप्लिकेशन की सूची"</string> + <string name="all_apps_button_label" msgid="8130441508702294465">"ऐप्लिकेशन सूची"</string> <string name="all_apps_search_results" msgid="5889367432531296759">"खोज के नतीजे"</string> <string name="all_apps_button_personal_label" msgid="1315764287305224468">"निजी ऐप्लिकेशन की सूची"</string> <string name="all_apps_button_work_label" msgid="7270707118948892488">"काम से जुड़े ऐप्लिकेशन की सूची"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"सेट अप पूरा करने के लिए टैप करें"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"यह एक सिस्टम ऐप्लिकेशन है और इसे अनइंस्टॉल नहीं किया जा सकता."</string> <string name="folder_hint_text" msgid="5174843001373488816">"नाम में बदलाव करें"</string> - <string name="paginate_left" msgid="7915437358451360433">"पिछले पेज पर जाएं"</string> - <string name="paginate_right" msgid="6701038155201975878">"अगले पेज पर जाएं"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> अक्षम है"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} से जुड़ी # सूचना है}one{{app_name} से जुड़ी # सूचना है}other{{app_name} से जुड़ी # सूचनाएं हैं}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"पेज %2$d में से %1$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"होम स्क्रीन घुमाने की अनुमति दें"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"फ़ोन घुुमाए जाने पर"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"लैंडस्केप मोड"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"होम स्क्रीन को लैंडस्केप मोड में सेट करें"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"फ़ोन को लैंडस्केप मोड में सेट करें"</string> <string name="notification_dots_title" msgid="9062440428204120317">"सूचनाएं बताने वाला डॉट"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"चालू है"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"चालू"</string> @@ -215,15 +213,9 @@ <string name="ps_container_settings" msgid="6059734123353320479">"प्राइवेट स्पेस सेटिंग"</string> <string name="ps_container_unlock_button_content_description" msgid="9181551784092204234">"प्राइवेट स्पेस को अनलॉक किया गया."</string> <string name="ps_container_lock_button_content_description" msgid="5961993384382649530">"प्राइवेट स्पेस को लॉक किया गया."</string> - <string name="ps_container_lock_title" msgid="2640257399982364682">"लॉक करें"</string> + <string name="ps_container_lock_title" msgid="2640257399982364682">"लॉक"</string> <string name="ps_container_transition" msgid="8667331812048014412">"प्राइवेट स्पेस की सेटिंग में बदलाव किया जा रहा है"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"इंस्टॉल करें"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"जोड़ें"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"प्राइवेट स्पेस में ऐप्लिकेशन इंस्टॉल करें"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"प्राइवेट स्पेस में फ़ाइलें और अन्य चीज़ें जोड़ें"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"गोलाकार आइकॉन"</string> - <string name="square_shape_title" msgid="3085320803149569308">"स्क्वेयर"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"चार किनारों वाली कुकी"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"सात किनारों वाली कुकी"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"आर्क"</string> </resources> diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml index c5d89b7126..8a5e9f83a0 100644 --- a/res/values-hr/strings.xml +++ b/res/values-hr/strings.xml @@ -65,7 +65,7 @@ <string name="widgets_full_sheet_cancel_button_description" msgid="5766167035728653605">"Izbrišite tekst iz okvira za pretraživanje"</string> <string name="no_widgets_available" msgid="4337693382501046170">"Widgeti i prečaci nisu dostupni"</string> <string name="no_search_results" msgid="3787956167293097509">"Nema widgeta ili prečaca"</string> - <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Osobno"</string> + <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Osobni"</string> <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Posao"</string> <string name="widget_category_conversations" msgid="8894438636213590446">"Razgovori"</string> <string name="widget_category_note_taking" msgid="3469689394504266039">"Pisanje bilježaka"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Dodirnite da biste dovršili postavljanje"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Ovo je aplikacija sustava i ne može se ukloniti."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Uređivanje naziva"</string> - <string name="paginate_left" msgid="7915437358451360433">"Numeriranje stranica lijevo"</string> - <string name="paginate_right" msgid="6701038155201975878">"Numeriranje stranica desno"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Aplikacija <xliff:g id="APP_NAME">%1$s</xliff:g> onemogućena"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{Aplikacija {app_name} ima # obavijest}one{Aplikacija {app_name} ima # obavijest}few{Aplikacija {app_name} ima # obavijesti}other{Aplikacija {app_name} ima # obavijesti}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Stranica %1$d od %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Dopusti zakretanje početnog zaslona"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Kada se telefon zakrene"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Pejzažni način"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Postavite početni zaslon na pejzažni način"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Telefon se postavlja u pejzažni način"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Točke obavijesti"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Uključeno"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Isključeno"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Zaključavanje"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Prelazak na privatni prostor"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalirajte"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Dodaj"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instaliranje aplikacija u privatni prostor"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Dodajte datoteke i druge sadržaje u privatni prostor"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Krug"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Kolačić s četiri strane"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Kolačić sa sedam strana"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Luk"</string> </resources> diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml index 455b42bd9c..848335d8d1 100644 --- a/res/values-hu/strings.xml +++ b/res/values-hu/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Koppintson a beállítás befejezéséhez"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Ez egy rendszeralkalmazás, és nem lehet eltávolítani."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Név módosítása"</string> - <string name="paginate_left" msgid="7915437358451360433">"Lapozás balra"</string> - <string name="paginate_right" msgid="6701038155201975878">"Lapozás jobbra"</string> <string name="disabled_app_label" msgid="6673129024321402780">"A(z) <xliff:g id="APP_NAME">%1$s</xliff:g> letiltva"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{A(z) {app_name} alkalmazásnak # értesítése van}other{A(z) {app_name} alkalmazásnak # értesítése van}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$d/%1$d. oldal"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"A kezdőképernyő elforgatásának engedélyezése"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"A telefon elforgatásakor"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Fekvő tájolás"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Állítsa a kezdőképernyőt fekvő tájolásúra"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Állítsa a telefont fekvő tájolásúra"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Értesítési pöttyök"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Be"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Ki"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Zárolás"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Átállás privát területre…"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Telepítés"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Hozzáadás"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Alkalmazások telepítése privát területre"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Fájlok és egyebek hozzáadása a privát területhez"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Kör"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Négyzet"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 oldalú süti"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 oldalú süti"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Boltív"</string> </resources> diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml index bacb3f013b..d271a9d879 100644 --- a/res/values-hy/strings.xml +++ b/res/values-hy/strings.xml @@ -66,7 +66,7 @@ <string name="no_widgets_available" msgid="4337693382501046170">"Հասանելի վիջեթներ և դյուրանցումներ չկան"</string> <string name="no_search_results" msgid="3787956167293097509">"Ոչ մի վիջեթ կամ դյուրանցում չի գտնվել"</string> <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Անձնական"</string> - <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Աշխատանք"</string> + <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Աշխատանքային"</string> <string name="widget_category_conversations" msgid="8894438636213590446">"Զրույցներ"</string> <string name="widget_category_note_taking" msgid="3469689394504266039">"Նշումների ստեղծում"</string> <string name="widget_cell_tap_to_show_add_button_label" msgid="4354194214317043581">"Ցույց տալ «Ավելացնել» կոճակը"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Հպեք՝ կարգավորումն ավարտելու համար"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Սա համակարգային ծրագիր է և չի կարող ապատեղադրվել:"</string> <string name="folder_hint_text" msgid="5174843001373488816">"Փոխել անունը"</string> - <string name="paginate_left" msgid="7915437358451360433">"Բաժանել էջերի դեպի ձախ"</string> - <string name="paginate_right" msgid="6701038155201975878">"Բաժանել էջերի դեպի աջ"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածն անջատված է"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{«{app_name}» հավելվածն ունի # ծանուցում}one{«{app_name}» հավելվածն ունի # ծանուցում}other{«{app_name}» հավելվածն ունի # ծանուցում}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Էջ %1$d՝ %2$d-ից"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Թույլ տալ հիմնական էկրանի պտտումը"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Հեռախոսը պտտելու դեպքում"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Հորիզոնական"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Հիմնական էկրանի համար սահմանեք հորիզոնական ռեժիմը"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Հեռախոսն օգտագործել հորիզոնական ռեժիմում"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Ծանուցումների կետիկներ"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Միացված է"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Անջատված է"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Կողպում"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Անցում մասնավոր տարածք"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Տեղադրել"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Ավելացնել"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Հավելվածների տեղադրում անձնական տարածքում"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Ձեր մասնավոր տարածքում ավելացրեք ֆայլեր և ավելին"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Շրջան"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Քառակուսի"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Քառակողմ բլիթ"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Յոթակողմ բլիթ"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Կամար"</string> </resources> diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml index fa91ea81d4..314f481a22 100644 --- a/res/values-in/strings.xml +++ b/res/values-in/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Ketuk untuk menyelesaikan penyiapan"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Ini adalah aplikasi sistem dan tidak dapat di-uninstal."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Edit Nama"</string> - <string name="paginate_left" msgid="7915437358451360433">"Penomoran halaman kiri"</string> - <string name="paginate_right" msgid="6701038155201975878">"Penomoran halaman kanan"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> dinonaktifkan"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} memiliki # notifikasi}other{{app_name} memiliki # notifikasi}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Halaman %1$d dari %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Izinkan layar utama diputar"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Saat ponsel diputar"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Mode lanskap"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Setel layar utama ke mode lanskap"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Setel ponsel ke mode lanskap"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Titik notifikasi"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Aktif"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Nonaktif"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Kunci"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Ruang Pribadi Bertransisi"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instal"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Tambahkan"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instal aplikasi ke Ruang Pribadi"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Tambahkan file dan lainnya ke Ruang Privasi"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Lingkaran"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Persegi"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Kue kering 4 sisi"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Kue kering 7 sisi"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Lengkungan"</string> </resources> diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml index a5d041bb7c..3f18c8d617 100644 --- a/res/values-is/strings.xml +++ b/res/values-is/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Ýttu til að ljúka við uppsetningu"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Þetta er kerfisforrit sem ekki er hægt að fjarlægja."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Breyta nafni"</string> - <string name="paginate_left" msgid="7915437358451360433">"Birta blaðsíðutal til vinstri"</string> - <string name="paginate_right" msgid="6701038155201975878">"Birta blaðsíðutal til hægri"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Óvirkt <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} er með # tilkynningu}one{{app_name} er með # tilkynningu}other{{app_name} er með # tilkynningar}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Síða %1$d af %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Leyfa snúning á heimaskjá"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Þegar símanum er snúið"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Langsnið"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Stilla heimaskjá á langsnið"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Stilla síma á langsnið"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Tilkynningapunktar"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Kveikt"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Slökkt"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Læsa"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Leynirými að breytast"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Setja upp"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Bæta við"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Setja upp forrit í leynirými"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Bættu skrám og fleiru við leynirými"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Hringur"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Ferningur"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Fjögurra hliða smákaka"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Sjö hliða smákaka"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Bogi"</string> </resources> diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml index c1c3707d3c..994e555971 100644 --- a/res/values-it/strings.xml +++ b/res/values-it/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Tocca per completare la configurazione"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Questa è un\'app di sistema e non può essere disinstallata."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Modifica nome"</string> - <string name="paginate_left" msgid="7915437358451360433">"Impagina a sinistra"</string> - <string name="paginate_right" msgid="6701038155201975878">"Impagina a destra"</string> <string name="disabled_app_label" msgid="6673129024321402780">"App <xliff:g id="APP_NAME">%1$s</xliff:g> disattivata"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ha # notifica}other{{app_name} ha # notifiche}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Pagina %1$d di %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Consenti rotazione della schermata Home"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Con il telefono ruotato"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Modalità Orizzontale"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Imposta la schermata Home in modalità Orizzontale"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Imposta lo smartphone in modalità Orizzontale"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Indicatori di notifica"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"On"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Off"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Blocca"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Transizione dello Spazio privato in corso…"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Installa"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Aggiungi"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Installa le app su spazi privati"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Aggiungi file e altro allo spazio privato"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Cerchio"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Quadrato"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Biscotto a 4 lati"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Biscotto a 7 lati"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arco"</string> </resources> diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml index c84c77dbd8..3ef72d9afa 100644 --- a/res/values-iw/strings.xml +++ b/res/values-iw/strings.xml @@ -65,8 +65,8 @@ <string name="widgets_full_sheet_cancel_button_description" msgid="5766167035728653605">"מחיקת טקסט מתיבת החיפוש"</string> <string name="no_widgets_available" msgid="4337693382501046170">"אין ווידג\'טים או קיצורי דרך"</string> <string name="no_search_results" msgid="3787956167293097509">"לא נמצאו ווידג\'טים או קיצורי דרך"</string> - <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"אישיים"</string> - <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"לעבודה"</string> + <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ווידג\'טים אישיים"</string> + <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ווידג\'טים לעבודה"</string> <string name="widget_category_conversations" msgid="8894438636213590446">"שיחות"</string> <string name="widget_category_note_taking" msgid="3469689394504266039">"כתיבת הערות"</string> <string name="widget_cell_tap_to_show_add_button_label" msgid="4354194214317043581">"הצגת כפתור ההוספה"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"צריך ללחוץ כדי לסיים את תהליך ההגדרה"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"זוהי אפליקציית מערכת ולא ניתן להסיר את התקנתה."</string> <string name="folder_hint_text" msgid="5174843001373488816">"עריכת השם"</string> - <string name="paginate_left" msgid="7915437358451360433">"הגדרה של מעבר עמוד שמאלה"</string> - <string name="paginate_right" msgid="6701038155201975878">"הגדרה של מעבר עמוד ימינה"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> מושבתת"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{לאפליקציה {app_name} יש התראה אחת}one{לאפליקציה {app_name} יש # התראות}two{לאפליקציה {app_name} יש # התראות}other{לאפליקציה {app_name} יש # התראות}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"‏דף %1$d מתוך %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"סיבוב מסך הבית"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"כאשר מסובבים את הטלפון"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"פריסה לרוחב"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"הגדרת פריסה לרוחב במסך הבית"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"העברת הטלפון לפריסה לרוחב"</string> <string name="notification_dots_title" msgid="9062440428204120317">"סימני ההתראות"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"מופעל"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"כבוי"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"נעילה"</string> <string name="ps_container_transition" msgid="8667331812048014412">"מעבר למרחב הפרטי"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"התקנה"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"הוספה"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"התקנת אפליקציות במרחב הפרטי"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"הוספת קבצים ופריטים נוספים למרחב הפרטי"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"צורת עיגול"</string> - <string name="square_shape_title" msgid="3085320803149569308">"ריבוע"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"עוגייה עם 4 צלעות"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"עוגייה עם 7 צלעות"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"קשת"</string> </resources> diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml index 104cd27e51..09d4ecf55c 100644 --- a/res/values-ja/strings.xml +++ b/res/values-ja/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"タップして設定を完了してください"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"このシステムアプリはアンインストールできません。"</string> <string name="folder_hint_text" msgid="5174843001373488816">"名前の編集"</string> - <string name="paginate_left" msgid="7915437358451360433">"左にページ移動"</string> - <string name="paginate_right" msgid="6701038155201975878">"右にページ設定"</string> <string name="disabled_app_label" msgid="6673129024321402780">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」は無効です"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} の通知が # 件あります}other{{app_name} の通知が # 件あります}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%1$d/%2$dページ"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"ホーム画面の回転を許可"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"スマートフォンの向きに合わせます"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"横表示"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ホーム画面を横向きにする"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"スマートフォンを横表示にします"</string> <string name="notification_dots_title" msgid="9062440428204120317">"通知ドット"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ON"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"OFF"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"ロック"</string> <string name="ps_container_transition" msgid="8667331812048014412">"プライベート スペース移行中"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"インストール"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"追加"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"プライベート スペースにアプリをインストールします"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"プライベート スペースにファイルなどを追加する"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"円"</string> - <string name="square_shape_title" msgid="3085320803149569308">"正方形"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"四面クッキー"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"七面クッキー"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"アーチ"</string> </resources> diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml index 7f6726901c..f29c9e8768 100644 --- a/res/values-ka/strings.xml +++ b/res/values-ka/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"შეეხეთ დაყენების დასასრულებლად"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"ეს სისტემური აპია და მისი წაშლა შეუძლებელია."</string> <string name="folder_hint_text" msgid="5174843001373488816">"სახელის რედაქტირება"</string> - <string name="paginate_left" msgid="7915437358451360433">"მარცხნივ პაგინაცია"</string> - <string name="paginate_right" msgid="6701038155201975878">"მარჯვნივ პაგინაცია"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> გაითიშა"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}-ში # შეტყობინებაა}other{{app_name}-ში # შეტყობინებაა}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"გვერდი %1$d %2$d-დან"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"მთავარი ეკრანის შეტრიალების დაშვება"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"ტელეფონის შეტრიალებისას"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"პეიზაჟის რეჟიმი"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"დააყენეთ მთავარი ეკრანი პეიზაჟის რეჟიმში"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ტელეფონის დაყენება პეიზაჟის რეჟიმში"</string> <string name="notification_dots_title" msgid="9062440428204120317">"შეტყობინების ნიშნულები"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ჩართულია"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"გამორთულია"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"ჩაკეტვა"</string> <string name="ps_container_transition" msgid="8667331812048014412">"პირად სივრცეზე გადასვლა"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ინსტალაცია"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"დამატება"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"კერძო სივრცეში აპების ინსტალაცია"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"კერძო სივრცეში დაამატეთ ფაილები და სხვა"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"წრე"</string> - <string name="square_shape_title" msgid="3085320803149569308">"კვადრატი"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"ოთხკუთხა ორცხობილა"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"შვიდკუთხა ორცხობილა"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"თაღი"</string> </resources> diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml index b15d53886c..96e82868cd 100644 --- a/res/values-kk/strings.xml +++ b/res/values-kk/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Реттеуді аяқтау үшін түртіңіз."</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Бұл жүйе қолданбасы, сондықтан оны алу мүмкін емес."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Атын өңдеу"</string> - <string name="paginate_left" msgid="7915437358451360433">"Солға қарай бетке бөлу"</string> - <string name="paginate_right" msgid="6701038155201975878">"Оңға қарай бетке бөлу"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> өшірілді"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} қолданбасында # хабарландыру бар}other{{app_name} қолданбасында # хабарландыру бар}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%1$d бет, барлығы %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Негізгі экранды бұруға рұқсат ету"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Телефон бұрылғанда"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Альбом режимі"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Негізгі экранды альбом режиміне орнату"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Телефонды альбом режиміне қою"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Хабарландыру белгілері"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Қосулы"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Өшірулі"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Құлыптау"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Жеке бөлмеге өту"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Орнату"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Қосу"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Қолданбаларды \"Құпия кеңістікке\" орнатыңыз."</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Құпия кеңістікке файлдар мен басқа да элементтерді қосыңыз"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Шеңбер"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Шаршы"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 жақты печенье"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 жақты печенье"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Арка"</string> </resources> diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml index 2159d4a700..cba66d7cc7 100644 --- a/res/values-km/strings.xml +++ b/res/values-km/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"ចុច​ដើម្បី​បញ្ចប់​ការរៀបចំ"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"នេះ​​​ជា​កម្មវិធី​ប្រព័ន្ធ មិន​អាច​លុប​បាន​ទេ។"</string> <string name="folder_hint_text" msgid="5174843001373488816">"កែ​ឈ្មោះ"</string> - <string name="paginate_left" msgid="7915437358451360433">"បែងចែកទំព័រទៅឆ្វេង"</string> - <string name="paginate_right" msgid="6701038155201975878">"បែងចែកទំព័រទៅស្ដាំ"</string> <string name="disabled_app_label" msgid="6673129024321402780">"បានបិទដំណើរការ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} មានការជូនដំណឹង #}other{{app_name} មានការជូនដំណឹង #}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"ទំព័រ %1$d នៃ %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"អនុញ្ញាតការបងិ្វលអេក្រង់ដើម"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"នៅពេលដែលបង្វិលទូរសព្ទ"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"ផ្ដេក"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"កំណត់អេក្រង់ដើមទៅផ្ដេក"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"កំណត់ទូរសព្ទទៅផ្ដេក"</string> <string name="notification_dots_title" msgid="9062440428204120317">"ស្លាកជូនដំណឹង"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"បើក"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"បិទ"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"ចាក់សោ"</string> <string name="ps_container_transition" msgid="8667331812048014412">"ការផ្លាស់ប្ដូរ Private Space"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ដំឡើង"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"បញ្ចូល"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"ដំឡើងកម្មវិធីទៅលំហឯកជន"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"បញ្ចូលឯកសារ និងអ្វីៗជាច្រើនទៀតទៅលំហឯកជន"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"រង្វង់"</string> - <string name="square_shape_title" msgid="3085320803149569308">"ការ៉េ"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"នំឃុកឃី 4 ជ្រុង"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"នំឃុកឃី 7 ជ្រុង"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"កោង"</string> </resources> diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml index a93506fb16..73d470dd0a 100644 --- a/res/values-kn/strings.xml +++ b/res/values-kn/strings.xml @@ -89,7 +89,7 @@ <string name="long_accessible_way_to_add_shortcut" msgid="2199537273817090740">"ಶಾರ್ಟ್‌ಕಟ್ ಸರಿಸಲು ಅಥವಾ ಕಸ್ಟಮ್ ಕ್ರಿಯೆಗಳನ್ನು ಬಳಸಲು ಡಬಲ್-ಟ್ಯಾಪ್ ಮಾಡಿ ಮತ್ತು ಹಿಡಿದುಕೊಳ್ಳಿ."</string> <string name="out_of_space" msgid="6455557115204099579">"ಈ ಹೋಮ್ ಸ್ಕ್ರೀನ್‌ನಲ್ಲಿ ಸ್ಥಳಾವಕಾಶವಿಲ್ಲ"</string> <string name="hotseat_out_of_space" msgid="7448809638125333693">"ಮೆಚ್ಚಿನವುಗಳ ಟ್ರೇನಲ್ಲಿ ಹೆಚ್ಚಿನ ಸ್ಥಳಾವಕಾಶವಿಲ್ಲ"</string> - <string name="all_apps_button_label" msgid="8130441508702294465">"ಆ್ಯಪ್‌ಗಳ ಪಟ್ಟಿ"</string> + <string name="all_apps_button_label" msgid="8130441508702294465">"ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಪಟ್ಟಿ"</string> <string name="all_apps_search_results" msgid="5889367432531296759">"ಹುಡುಕಾಟ ಫಲಿತಾಂಶಗಳು"</string> <string name="all_apps_button_personal_label" msgid="1315764287305224468">"ವೈಯಕ್ತಿಕ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಪಟ್ಟಿ"</string> <string name="all_apps_button_work_label" msgid="7270707118948892488">"ಕೆಲಸದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಪಟ್ಟಿ"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"ಸೆಟಪ್ ಪೂರ್ಣಗೊಳಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"ಇದೊಂದು ಆ್ಯಪ್‌ ಆಗಿದೆ ಮತ್ತು ಅಸ್ಥಾಪಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ."</string> <string name="folder_hint_text" msgid="5174843001373488816">"ಹೆಸರನ್ನು ಎಡಿಟ್ ಮಾಡಿ"</string> - <string name="paginate_left" msgid="7915437358451360433">"ಎಡಕ್ಕೆ ಪುಟ ವಿಂಗಡಿಸಿ"</string> - <string name="paginate_right" msgid="6701038155201975878">"ಬಲಕ್ಕೆ ಪುಟ ವಿಂಗಡಿಸಿ"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ಆ್ಯಪ್ # ಅಧಿಸೂಚನೆಯನ್ನು ಹೊಂದಿದೆ}one{{app_name} ಆ್ಯಪ್ # ಅಧಿಸೂಚನೆಗಳನ್ನು ಹೊಂದಿದೆ}other{{app_name} ಆ್ಯಪ್ # ಅಧಿಸೂಚನೆಗಳನ್ನು ಹೊಂದಿದೆ}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$d ರಲ್ಲಿ %1$d ಪುಟ"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"ಹೋಮ್ ಸ್ಕ್ರೀನ್ ತಿರುಗುವಿಕೆಯನ್ನು ಅನುಮತಿಸಿ"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"ಫೋನ್‌ ತಿರುಗಿಸಿದಾಗ"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"ಲ್ಯಾಂಡ್‌ಸ್ಕೇಪ್ ಮೋಡ್"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ಹೋಮ್ ಸ್ಕ್ರೀನ್ ಅನ್ನು ಲ್ಯಾಂಡ್‌ಸ್ಕೇಪ್ ಮೋಡ್‌ಗೆ ಸೆಟ್ ಮಾಡಿ"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ಫೋನ್ ಅನ್ನು ಲ್ಯಾಂಡ್‌ಸ್ಕೇಪ್ ಮೋಡ್‌ಗೆ ಸೆಟ್ ಮಾಡಿ"</string> <string name="notification_dots_title" msgid="9062440428204120317">"ನೋಟಿಫಿಕೇಶನ್ ಡಾಟ್‌ಗಳು"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ಆನ್ ಆಗಿದೆ"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ಆಫ್ ಆಗಿದೆ"</string> @@ -148,7 +146,7 @@ <string name="notification_dots_service_title" msgid="4284221181793592871">"ನೋಟಿಫಿಕೇಶನ್ ಡಾಟ್‌ಗಳನ್ನು ತೋರಿಸಿ"</string> <string name="developer_options_title" msgid="700788437593726194">"ಡೆವಲಪರ್ ಆಯ್ಕೆಗಳು"</string> <string name="auto_add_shortcuts_label" msgid="4926805029653694105">"ಹೋಮ್ ಸ್ಕ್ರೀನ್‌ಗೆ ಆ್ಯಪ್ ಐಕಾನ್‌ಗಳನ್ನು ಸೇರಿಸಿ"</string> - <string name="auto_add_shortcuts_description" msgid="7117251166066978730">"ಹೊಸ ಆ್ಯಪ್‌ಗಳಿಗೆ"</string> + <string name="auto_add_shortcuts_description" msgid="7117251166066978730">"ಹೊಸ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗೆ"</string> <string name="package_state_unknown" msgid="7592128424511031410">"ಅಪರಿಚಿತ"</string> <string name="abandoned_clean_this" msgid="7610119707847920412">"ತೆಗೆದುಹಾಕಿ"</string> <string name="abandoned_search" msgid="891119232568284442">"ಹುಡುಕಿ"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"ಲಾಕ್ ಮಾಡಿ"</string> <string name="ps_container_transition" msgid="8667331812048014412">"ಖಾಸಗಿ ಸ್ಪೇಸ್ ಪರಿವರ್ತನೆಯಾಗುತ್ತಿದೆ"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ಇನ್‌ಸ್ಟಾಲ್"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"ಸೇರಿಸಿ"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"ಆ್ಯಪ್‌ಗಳನ್ನು ಪ್ರೈವೇಟ್ ಸ್ಪೇಸ್‌ನಲ್ಲಿ ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"ಪ್ರೈವೆಟ್ ಸ್ಪೇಸ್‌ಗೆ ಫೈಲ್‌ಗಳು ಮತ್ತು ಹೆಚ್ಚಿನದನ್ನು ಸೇರಿಸಿ"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"ವಲಯ"</string> - <string name="square_shape_title" msgid="3085320803149569308">"ಚೌಕ"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-ಬದಿಯ ಕುಕಿ"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-ಬದಿಯ ಕುಕಿ"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"ಕಮಾನು"</string> </resources> diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml index 215e2e3e94..71c47eba80 100644 --- a/res/values-ko/strings.xml +++ b/res/values-ko/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"탭하여 설정을 완료하세요."</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"시스템 앱은 제거할 수 없습니다."</string> <string name="folder_hint_text" msgid="5174843001373488816">"이름 수정"</string> - <string name="paginate_left" msgid="7915437358451360433">"왼쪽 페이지로 나누기"</string> - <string name="paginate_right" msgid="6701038155201975878">"오른쪽 페이지로 나누기"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> 사용 안함"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} 알림 #개}other{{app_name} 알림 #개}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"페이지 %1$d/%2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"홈 화면 회전 허용"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"휴대전화 회전 시"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"가로 모드"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"홈 화면을 가로 모드로 설정"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"휴대전화를 가로 모드로 설정"</string> <string name="notification_dots_title" msgid="9062440428204120317">"알림 표시 점"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"사용"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"사용 안함"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"잠금"</string> <string name="ps_container_transition" msgid="8667331812048014412">"비공개 스페이스 전환"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"설치"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"추가"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"비공개 스페이스에 앱 설치"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"비공개 스페이스에 파일 등 추가"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"원"</string> - <string name="square_shape_title" msgid="3085320803149569308">"정사각형"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4면 쿠키"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7면 쿠키"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"아치"</string> </resources> diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml index df625db80d..6611b56e38 100644 --- a/res/values-ky/strings.xml +++ b/res/values-ky/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Аягына чейин тууралоо үчүн басып коюңуз"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Бул системдик колдонмо жана аны чечкенге болбойт."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Аталышын түзөтүү"</string> - <string name="paginate_left" msgid="7915437358451360433">"Мурунку бетке өтүү"</string> - <string name="paginate_right" msgid="6701038155201975878">"Кийинки бетке өтүү"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> өчүрүлгөн"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}, # билдирмеси бар}other{{app_name}, # билдирмеси бар}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$d ичинен %1$d барак"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Башкы экранды бурууга уруксат берүү"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Телефон бурулганда"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Туурасынан"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Башкы экранды туурасынан коюңуз"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Телефонду туурасынан коюңуз"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Билдирмелер белгилери"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Күйүк"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Өчүк"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Кулпулоо"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Жеке чөйрөгө өтүү"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Орнотуу"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Кошуу"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Колдонмолорду Жеке мейкиндикке орнотуe"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Жеке мейкиндикке файлдарды жана башкаларды кошуу"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Тегерек"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Чарчы"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 тараптуу печенье"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 тараптуу печенье"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Арка"</string> </resources> diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml index fbd28f0775..d52652ee4d 100644 --- a/res/values-lo/strings.xml +++ b/res/values-lo/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"ແຕະເພື່ອຕັ້ງຄ່າໃຫ້ແລ້ວ"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"ນີ້ແມ່ນແອັບຯຂອງລະບົບ ແລະບໍ່ສາມາດຖອນການຕິດຕັ້ງອອກໄດ້."</string> <string name="folder_hint_text" msgid="5174843001373488816">"ແກ້ໄຂຊື່"</string> - <string name="paginate_left" msgid="7915437358451360433">"ຈັດເລກໜ້າເບື້ອງຊ້າຍ"</string> - <string name="paginate_right" msgid="6701038155201975878">"ຈັດເລກໜ້າເບື້ອງຂວາ"</string> <string name="disabled_app_label" msgid="6673129024321402780">"ປິດການນຳໃຊ້ <xliff:g id="APP_NAME">%1$s</xliff:g> ແລ້ວ"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ມີ # ການແຈ້ງເຕືອນ}other{{app_name} ມີ # ການແຈ້ງເຕືອນ}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"ໜ້າ %1$d ຈາກ %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"ອະນຸຍາດໃຫ້ໝຸນໜ້າຈໍຢູ່ໂຮມສະກຣີນໄດ້"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"ເມື່ອໝຸນໂທລະສັບ"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"ໂໝດແນວນອນ"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ຕັ້ງໂຮມສະກຣີນເປັນໂໝດແນວນອນ"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ຕັ້ງຄ່າໂທລະສັບເປັນໂໝດແນວນອນ"</string> <string name="notification_dots_title" msgid="9062440428204120317">"ຈຸດການແຈ້ງເຕືອນ"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ເປີດ"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ປິດ"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"ລັອກ"</string> <string name="ps_container_transition" msgid="8667331812048014412">"ການປ່ຽນແປງພື້ນທີ່ສ່ວນຕົວ"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ຕິດຕັ້ງ"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"ເພີ່ມ"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"ຕິດຕັ້ງແອັບໄປໃສ່ພື້ນທີ່ສ່ວນບຸກຄົນ"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"ເພີ່ມໄຟລ໌ ແລະ ອື່ນໆໃສ່ພື້ນທີ່ສ່ວນບຸກຄົນ"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"ວົງມົນ"</string> - <string name="square_shape_title" msgid="3085320803149569308">"ສີ່ຫຼ່ຽມຈະຕຸລັດ"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"ຄຸກກີ້ 4 ດ້ານ"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"ຄຸກກີ້ 7 ດ້ານ"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"ກົ່ງ"</string> </resources> diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml index e202b3c5c8..57e4aa75c6 100644 --- a/res/values-lt/strings.xml +++ b/res/values-lt/strings.xml @@ -47,7 +47,7 @@ <string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d plotis ir %2$d aukštis"</string> <string name="widget_preview_context_description" msgid="9045841361655787574">"<xliff:g id="WIDGET_NAME">%1$s</xliff:g> valdiklis"</string> <string name="widget_preview_name_and_dims_content_description" msgid="8489038126122831595">"Valdiklis: <xliff:g id="WIDGET_NAME">%1$s</xliff:g>; %2$d pločio ir %3$d aukščio"</string> - <string name="add_item_request_drag_hint" msgid="8730547755622776606">"Palietę ir palaikę valdiklį galėsite jį judinti pagrindiniame ekrane"</string> + <string name="add_item_request_drag_hint" msgid="8730547755622776606">"Paliesdami ir palaikydami valdiklį galite judėti pagrindiniame ekrane"</string> <string name="add_to_home_screen" msgid="9168649446635919791">"Pridėti prie pagrindinio ekrano"</string> <string name="added_to_home_screen_accessibility_text" msgid="4451545765448884415">"Valdiklis „<xliff:g id="WIDGET_NAME">%1$s</xliff:g>“ pridėtas prie pagrindinio ekrano"</string> <string name="suggested_widgets_header_title" msgid="1844314680798145222">"Pasiūlymai"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Palieskite, kad užbaigtumėte sąranką"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Tai sistemos programa ir jos negalima pašalinti."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Pavadinimo redagavimas"</string> - <string name="paginate_left" msgid="7915437358451360433">"Pereiti į ankstesnį puslapį"</string> - <string name="paginate_right" msgid="6701038155201975878">"Pereiti į tolesnį puslapį"</string> <string name="disabled_app_label" msgid="6673129024321402780">"„<xliff:g id="APP_NAME">%1$s</xliff:g>“ išjungta"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{Programoje „{app_name}“ yra # pranešimas}one{Programoje „{app_name}“ yra # pranešimas}few{Programoje „{app_name}“ yra # pranešimai}many{Programoje „{app_name}“ yra # pranešimo}other{Programoje „{app_name}“ yra # pranešimų}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%1$d psl. iš %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Leisti pasukti pagrindinį ekraną"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Kai telefonas pasukamas"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Gulsčiojo ekrano režimas"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Pagrindinį ekraną rodyti gulsčiojo ekrano režimu"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Nustatykite telefoną į gulsčiojo ekrano režimą"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Pranešimų taškai"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Įjungta"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Išjungta"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Užrakinti"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Privačios erdvės perkėlimas"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Įdiegti"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Pridėti"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Įdiegti programas privačioje erdvėje"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Pridėkite failų ir kt. prie privačios erdvės"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Apskritimas"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadratas"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Keturkampis sausainis"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Septyniakampis sausainis"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arka"</string> </resources> diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml index 49268b99e5..daeef1587c 100644 --- a/res/values-lv/strings.xml +++ b/res/values-lv/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Pieskarieties, lai pabeigtu iestatīšanu"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Šī ir sistēmas lietotne, un to nevar atinstalēt."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Nosaukuma rediģēšana"</string> - <string name="paginate_left" msgid="7915437358451360433">"Lapdale pa kreisi"</string> - <string name="paginate_right" msgid="6701038155201975878">"Lapdale pa labi"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Lietotne <xliff:g id="APP_NAME">%1$s</xliff:g> ir atspējota"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{Lietotnē {app_name} ir # paziņojums}zero{Lietotnē {app_name} ir # paziņojumi}one{Lietotnē {app_name} ir # paziņojums}other{Lietotnē {app_name} ir # paziņojumi}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%1$d. lapa no %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Atļaut sākuma ekrāna pagriešanu"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Pagriežot tālruni"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Ainavas režīms"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Ainavas režīma iestatīšana sākuma ekrānā"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Iestatīt tālrunī ainavas režīmu"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Paziņojumu punkti"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Ieslēgti"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Izslēgts"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Bloķēšana"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Pāriet uz privāto mapi"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalēt"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Pievienot"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instalējiet lietotnes privātajā telpā."</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Pievienojiet failus un citu saturu privātajai telpai"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Loks"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadrāts"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Cepums ar četrām malām"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Cepums ar septiņām malām"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arka"</string> </resources> diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml index 0b40481b64..1bafbdee8a 100644 --- a/res/values-mk/strings.xml +++ b/res/values-mk/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Допрете за да го завршите поставувањето"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Ова е системска апликација и не може да се деинсталира."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Изменете го името"</string> - <string name="paginate_left" msgid="7915437358451360433">"Разделување на страници налево"</string> - <string name="paginate_right" msgid="6701038155201975878">"Разделување на страници надесно"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> е оневозможена"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} има # известување}one{{app_name} има # известување}other{{app_name} има # известувања}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Страница %1$d од %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Дозволи ротирање на почетниот екран"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Кога телефонот се ротира"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Хоризонтален режим"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Поставете го почетниот екран во хоризонтален режим"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Поставете го телефонот во „Хоризонтален режим“"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Точки за известување"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Вклучено"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Исклучено"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Заклучи"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Префрлање на „Приватен простор“"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Инсталирајте"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Додај"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Инсталирање апликации во „Приватен простор“"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Додавање датотеки и друго во „Приватен простор“"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Круг"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Квадрат"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Колаче со 4 страни"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Колаче со 7 страни"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Свод"</string> </resources> diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml index ff52f1f758..4090b9a592 100644 --- a/res/values-ml/strings.xml +++ b/res/values-ml/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"സജ്ജീകരണം പൂർത്തിയാക്കാൻ ടാപ്പ് ചെയ്യുക"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"ഇതൊരു സിസ്‌റ്റം അപ്ലിക്കേഷനായതിനാൽ അൺഇൻസ്‌റ്റാളുചെയ്യാനാവില്ല."</string> <string name="folder_hint_text" msgid="5174843001373488816">"പേര് എഡിറ്റ് ചെയ്യുക"</string> - <string name="paginate_left" msgid="7915437358451360433">"ഇടത്തേക്ക് പേജിനേറ്റ് ചെയ്യുക"</string> - <string name="paginate_right" msgid="6701038155201975878">"വലത്തേക്ക് പേജിനേറ്റ് ചെയ്യുക"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> പ്രവർത്തനരഹിതമാക്കി"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ആപ്പിന് # അറിയിപ്പുണ്ട്}other{{app_name} ആപ്പിന് # അറിയിപ്പുകളുണ്ട്}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"പേജ് %1$d / %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"ഹോം സ്ക്രീൻ റൊട്ടേഷൻ അനുവദിക്കുക"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"ഫോൺ തിരിച്ച നിലയിലായിരിക്കുമ്പോൾ"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"ലാൻഡ്‌സ്‌കേപ്പ് മോഡ്"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ഹോം സ്‌ക്രീൻ ലാൻഡ്‌സ്‌കേപ്പ് മോഡിലേക്ക് സജ്ജീകരിക്കുക"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ഫോൺ ലാൻഡ്‌സ്‌കേപ്പ് മോഡിലേക്ക് സജ്ജീകരിക്കുക"</string> <string name="notification_dots_title" msgid="9062440428204120317">"അറിയിപ്പ് ഡോട്ടുകൾ"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ഓണാണ്"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ഓഫാണ്"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"ലോക്ക് ചെയ്യുക"</string> <string name="ps_container_transition" msgid="8667331812048014412">"പ്രൈവറ്റ് സ്‌പേസ് ട്രാൻസിഷനിംഗ്"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ഇൻസ്റ്റാൾ ചെയ്യുക"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"ചേർക്കുക"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"സ്വകാര്യ സ്പേസിലേക്ക് ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"സ്വകാര്യ സ്‌പേസിലേക്ക് ഫയലുകളും മറ്റും ചേർക്കുക"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"വൃത്തം"</string> - <string name="square_shape_title" msgid="3085320803149569308">"ചതുരം"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-വശങ്ങളുള്ള കുക്കി"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-വശങ്ങളുള്ള കുക്കി"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"ആർച്ച്"</string> </resources> diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml index 4255b290ec..f0d511139c 100644 --- a/res/values-mn/strings.xml +++ b/res/values-mn/strings.xml @@ -63,7 +63,7 @@ <string name="widget_button_text" msgid="2880537293434387943">"Виджет"</string> <string name="widgets_full_sheet_search_bar_hint" msgid="8484659090860596457">"Хайх"</string> <string name="widgets_full_sheet_cancel_button_description" msgid="5766167035728653605">"Хайх хэсгээс текстийг арилгах"</string> - <string name="no_widgets_available" msgid="4337693382501046170">"Виджет болон товчлол боломжгүй байна"</string> + <string name="no_widgets_available" msgid="4337693382501046170">"Жижиг хэрэгсэл болон товчлол боломжгүй байна"</string> <string name="no_search_results" msgid="3787956167293097509">"Виджет эсвэл товчлол олдсонгүй"</string> <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Хувийн виджетүүд"</string> <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Ажил"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Тохируулгыг дуусгахын тулд товшино уу"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Энэ апп нь системийн апп ба устгах боломжгүй."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Нэр засах"</string> - <string name="paginate_left" msgid="7915437358451360433">"Зүүн тийш хуудас болгож хуваах"</string> - <string name="paginate_right" msgid="6701038155201975878">"Баруун тийш хуудас болгож хуваах"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g>-г идэвхгүй болгосон"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} дээр # мэдэгдэл байна}other{{app_name} дээр # мэдэгдэл байна}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$d-н %1$d хуудас"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Үндсэн нүүрийг эргүүлэхийг зөвшөөрөх"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Утсыг эргүүлсэн үед"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Хэвтээ горим"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Үндсэн нүүрийг хэвтээ горим болгож тохируулна уу"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Утсыг хэвтээ горимд тохируулах"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Мэдэгдлийн цэг"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Асаалттай"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Унтраалттай"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Түгжээ"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Private Space-н шилжилт"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Суулгах"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Нэмэх"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Хувийн орон зайд аппууд суулгана уу"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Хаалттай орон зайд файл болон бусад зүйлийг нэмэх"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Тойрог"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Дөрвөлжин"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 талт жигнэмэг"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 талт жигнэмэг"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Нум"</string> </resources> diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml index bc84bfef21..570896eb0b 100644 --- a/res/values-mr/strings.xml +++ b/res/values-mr/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"सेटअप पूर्ण करण्‍यासाठी टॅप करा"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"हे सिस्टीम अ‍ॅप आहे आणि ते अनइंस्टॉल केले जाऊ शकत नाही."</string> <string name="folder_hint_text" msgid="5174843001373488816">"नाव संपादित करा"</string> - <string name="paginate_left" msgid="7915437358451360433">"डावीकडील पेजनुसार विभागणी"</string> - <string name="paginate_right" msgid="6701038155201975878">"उजवीकडील पेजनुसार विभागणी"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> अक्षम केला आहे"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} संबंधित # सूचना आहे}other{{app_name} संबंधित # सूचना आहेत}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$d पैकी %1$d पेज"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"होम स्क्रीन फिरवण्‍याची अनुमती द्या"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"फोन फिरवला जातो तेव्हा"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"लँडस्केप मोड"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"होम स्क्रीन लँडस्केप मोडमध्ये सेट करा"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"फोन लँडस्केप मोडमध्ये सेट करा"</string> <string name="notification_dots_title" msgid="9062440428204120317">"नोटिफिकेशन बिंदू"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"सुरू"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"बंद"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"लॉक"</string> <string name="ps_container_transition" msgid="8667331812048014412">"खाजगी स्पेस वर स्विच करणे"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"इंस्टॉल करा"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"जोडा"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"अ‍ॅप्स खाजगी स्पेस मध्ये इंस्टॉल करा"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"खाजगी स्पेस मध्ये फाइल आणि आणखी बऱ्याच गोष्टी जोडा"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"वर्तुळ"</string> - <string name="square_shape_title" msgid="3085320803149569308">"चौरस"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"४ बाजू असलेले बिस्कीट"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"७ बाजू असलेले बिस्कीट"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"कमान"</string> </resources> diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml index d7cefc32c3..bb0f194276 100644 --- a/res/values-ms/strings.xml +++ b/res/values-ms/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Ketik untuk menyelesaikan persediaan"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Ini ialah apl sistem dan tidak boleh dinyahpasang."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Edit Nama"</string> - <string name="paginate_left" msgid="7915437358451360433">"Buat halaman ke kiri"</string> - <string name="paginate_right" msgid="6701038155201975878">"Buat halaman ke kanan"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> dilumpuhkan"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} mempunyai # pemberitahuan}other{{app_name} mempunyai # pemberitahuan}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Halaman %1$d daripada %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Benarkan putaran skrin utama"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Apabila telefon diputar"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Mod landskap"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Tetapkan skrin utama kepada mod landskap"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Tetapkan telefon kepada mod landskap"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Titik pemberitahuan"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Hidup"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Mati"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Kunci"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Peralihan Ruang Peribadi"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Pasang"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Tambah"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Pasang apl pada Ruang Peribadi"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Tambahkan fail dan banyak lagi pada Ruang Persendirian"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Bulatan"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Segi empat sama"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Kuki 4 sisi"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Kuki 7 sisi"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Lengkung"</string> </resources> diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml index 73d6aafff5..3b7e88697f 100644 --- a/res/values-my/strings.xml +++ b/res/values-my/strings.xml @@ -94,10 +94,10 @@ <string name="all_apps_button_personal_label" msgid="1315764287305224468">"တစ်ကိုယ်ရေသုံး အက်ပ်စာရင်း"</string> <string name="all_apps_button_work_label" msgid="7270707118948892488">"အလုပ်သုံး အက်ပ်စာရင်း"</string> <string name="remove_drop_target_label" msgid="7812859488053230776">"ဖယ်ရှားမည်"</string> - <string name="uninstall_drop_target_label" msgid="4722034217958379417">"ဖြုတ်ရန်"</string> + <string name="uninstall_drop_target_label" msgid="4722034217958379417">"ဖယ်ရှားရန်"</string> <string name="app_info_drop_target_label" msgid="692894985365717661">"အက်ပ်အချက်အလက်"</string> <string name="install_private_system_shortcut_label" msgid="1616889277073184841">"သီးသန့်တွင် ထည့်သွင်းရန်"</string> - <string name="uninstall_private_system_shortcut_label" msgid="8423460530441627982">"အက်ပ်ကို ဖြုတ်ရန်"</string> + <string name="uninstall_private_system_shortcut_label" msgid="8423460530441627982">"အက်ပ်ကို ဖယ်ရှားရန်"</string> <string name="install_drop_target_label" msgid="2539096853673231757">"ထည့်သွင်းရန်"</string> <string name="dismiss_prediction_label" msgid="3357562989568808658">"အက်ပ်အကြံမပြုပါနှင့်"</string> <string name="pin_prediction" msgid="4196423321649756498">"ခန့်မှန်းချက်ကို ပင်ထိုးရန်"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"စနစ်ထည့်သွင်းခြင်း အပြီးသတ်ရန် တို့ပါ"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"ဤအပ်ပလီကေးရှင်းမှာ စစ်စတန်ပိုင်းဆိုင်ရာ အပ်ပလီကေးရှင်းဖြစ်ပါသည်။ ထုတ်ပစ်၍ မရပါ"</string> <string name="folder_hint_text" msgid="5174843001373488816">"အမည်ကို တည်းဖြတ်ပါ"</string> - <string name="paginate_left" msgid="7915437358451360433">"ဘယ်ဘက်သို့ စာမျက်နှာများအဖြစ် ခွဲထုတ်ရန်"</string> - <string name="paginate_right" msgid="6701038155201975878">"ညာဘက်သို့ စာမျက်နှာများအဖြစ် ခွဲထုတ်ရန်"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> ကို ပိတ်ထားသည်"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} တွင် အကြောင်းကြားချက် # ခု ရှိသည်}other{{app_name} တွင် အကြောင်းကြားချက် # ခု ရှိသည်}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"စာမျက်နှာ %1$d မှ %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"ပင်မစာမျက်နှာလှည့်ခြင်းကို ခွင့်ပြုခြင်း"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"ဖုန်းကိုလှည့်ထားစဉ်"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"အလျားလိုက်"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ပင်မစာမျက်နှာကို အလျားလိုက်မုဒ်သို့ သတ်မှတ်နိုင်သည်"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ဖုန်းကို အလျားလိုက်သို့ သတ်မှတ်နိုင်သည်"</string> <string name="notification_dots_title" msgid="9062440428204120317">"သတိပေးချက် အစက်များ"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ဖွင့်"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ပိတ်"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"လော့ခ်ချခြင်း"</string> <string name="ps_container_transition" msgid="8667331812048014412">"သီးသန့်ချတ်ခန်း အပြောင်းအလဲ"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ထည့်သွင်းရန်"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"ထည့်ရန်"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"‘သီးသန့်နေရာ’ တွင် အက်ပ်များ ထည့်သွင်းနိုင်သည်"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"‘သီးသန့်နေရာ’ တွင် ဖိုင်နှင့် အခြားအရာများ ထည့်နိုင်သည်"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"စက်ဝိုင်း"</string> - <string name="square_shape_title" msgid="3085320803149569308">"စတုရန်း"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"စတုဂံကွတ်ကီး"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"သတ္တဂံကွတ်ကီး"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"အခုံး"</string> </resources> diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml index 713de179e5..def17e4d63 100644 --- a/res/values-nb/strings.xml +++ b/res/values-nb/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Trykk for å fullføre konfigureringen"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Dette er en systemapp som ikke kan avinstalleres."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Rediger navn"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginer til venstre"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginer til høyre"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Slo av <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} har # varsel}other{{app_name} har # varsler}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Side %1$d av %2$d"</string> @@ -133,12 +131,12 @@ <string name="app_pair_name_format" msgid="8134106404716224054">"Apptilkobling: <xliff:g id="APP1">%1$s</xliff:g> og <xliff:g id="APP2">%2$s</xliff:g>"</string> <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Bakgrunn og stil"</string> <string name="edit_home_screen" msgid="8947858375782098427">"Endre startsiden"</string> - <string name="settings_button_text" msgid="8873672322605444408">"Valg for startskjerm"</string> + <string name="settings_button_text" msgid="8873672322605444408">"Startsideinnstillinger"</string> <string name="msg_disabled_by_admin" msgid="6898038085516271325">"Administratoren har slått av funksjonen"</string> <string name="allow_rotation_title" msgid="7222049633713050106">"Tillat at startskjermen roterer"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Når telefonen roteres"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Liggende retning"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Bruk liggende retning for startskjermen"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Plasser telefonen i liggende retning"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Varselsprikker"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"På"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Av"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Lås"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Private Space-overgang"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Installer"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Legg til"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Installer apper i privat område"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Legg til filer og annet i det private området"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Sirkel"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-sidig kjeks"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-sidig kjeks"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Bue"</string> </resources> diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml index 324bfb419f..c26a2ba647 100644 --- a/res/values-ne/strings.xml +++ b/res/values-ne/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"सेटअप पूरा गर्न ट्याप गर्नुहोस्"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"यो सिस्टम एप हो र यसलाई स्थापना रद्द गर्न सकिँदैन।"</string> <string name="folder_hint_text" msgid="5174843001373488816">"नाम सम्पादन गर्नुहोस्"</string> - <string name="paginate_left" msgid="7915437358451360433">"बायाँतिर पेजिनेट गर्नुहोस्"</string> - <string name="paginate_right" msgid="6701038155201975878">"दायाँतिर पेजिनेट गर्नुहोस्"</string> <string name="disabled_app_label" msgid="6673129024321402780">"असक्षम पारिएको <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} सँग सम्बन्धित # सूचना छ}other{{app_name} सँग सम्बन्धित # वटा सूचना छन्}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"पृष्ठ %2$d को %1$d"</string> @@ -138,10 +136,10 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"होम स्क्रिन रोटेट हुन दिइयोस्"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"फोन घुमाउँदा"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"ल्यान्डस्केप मोड"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"होम स्क्रिनलाई ल्यान्डस्केप मोडमा सेट गर्नुहोस्"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"फोनमा ल्यान्डस्केप मोड अन गर्नुहोस्"</string> <string name="notification_dots_title" msgid="9062440428204120317">"नोटिफिकेसन डट"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"अन छ"</string> - <string name="notification_dots_desc_off" msgid="1760796511504341095">"अफ"</string> + <string name="notification_dots_desc_off" msgid="1760796511504341095">"निष्क्रिय"</string> <string name="title_missing_notification_access" msgid="7503287056163941064">"सूचनासम्बन्धी पहुँच आवश्यक हुन्छ"</string> <string name="msg_missing_notification_access" msgid="281113995110910548">"नोटिफिकेसन डट देखाउन <xliff:g id="NAME">%1$s</xliff:g> को एपसम्बन्धी सूचनाहरूलाई अन गर्नुहोस्"</string> <string name="title_change_settings" msgid="1376365968844349552">"सेटिङहरू बदल्नुहोस्"</string> @@ -195,7 +193,7 @@ <string name="all_apps_work_tab" msgid="4884822796154055118">"कामसम्बन्धी"</string> <string name="all_apps_personal_tab_content_description" msgid="6286808898381807242">"\"व्यक्तिगत एपहरू\" ट्याब"</string> <string name="all_apps_work_tab_content_description" msgid="3835637212347968316">"\"कामसम्बन्धी एपहरू\" ट्याब"</string> - <string name="work_profile_toggle_label" msgid="3081029915775481146">"वर्क प्रोफाइल"</string> + <string name="work_profile_toggle_label" msgid="3081029915775481146">"कार्य प्रोफाइल"</string> <string name="work_profile_edu_work_apps" msgid="7895468576497746520">"कामसम्बन्धी एपहरूमा ब्याज अङ्कित हुन्छ र तपाईंका IT एड्मिन ती एप हेर्न सक्छन्"</string> <string name="work_profile_edu_accept" msgid="6069788082535149071">"बुझेँ"</string> <string name="work_apps_paused_title" msgid="3040901117349444598">"कामसम्बन्धी एपहरू पज गरिएका छन्"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"लक गर्नुहोस्"</string> <string name="ps_container_transition" msgid="8667331812048014412">"निजी स्पेस ट्रान्जिसन गरिँदै छ"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"इन्स्टल गर्नुहोस्"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"हाल्नुहोस्"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"निजी स्पेसमा एपहरू इन्स्टल गर्नुहोस्"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"निजी स्पेसमा फाइल र अन्य कुरा हाल्नुहोस्"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"वृत्त"</string> - <string name="square_shape_title" msgid="3085320803149569308">"वर्ग"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"४ वटा साइड भएको कुकी"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"७ वटा साइड भएको कुकी"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"आर्क"</string> </resources> diff --git a/res/values-night/colors.xml b/res/values-night/colors.xml index 42a3d91bec..004f12f49b 100644 --- a/res/values-night/colors.xml +++ b/res/values-night/colors.xml @@ -15,71 +15,52 @@ --> <resources> - <color name="materialColorBackground">@color/system_background_dark</color> - <color name="materialColorControlActivated">@color/system_control_activated_dark</color> - <color name="materialColorControlHighlight">@color/system_control_highlight_dark</color> - <color name="materialColorControlNormal">@color/system_control_normal_dark</color> - <color name="materialColorError">@color/system_error_dark</color> - <color name="materialColorErrorContainer">@color/system_error_container_dark</color> - <color name="materialColorErrorDim">@color/system_error_dim_dark</color> - <color name="materialColorInverseOnSurface">@color/system_inverse_on_surface_dark</color> - <color name="materialColorInversePrimary">@color/system_inverse_primary_dark</color> - <color name="materialColorInverseSurface">@color/system_inverse_surface_dark</color> - <color name="materialColorOnBackground">@color/system_on_background_dark</color> - <color name="materialColorOnError">@color/system_on_error_dark</color> - <color name="materialColorOnErrorContainer">@color/system_on_error_container_dark</color> - <color name="materialColorOnPrimary">@color/system_on_primary_dark</color> - <color name="materialColorOnPrimaryContainer">@color/system_on_primary_container_dark</color> - <color name="materialColorOnSecondary">@color/system_on_secondary_dark</color> + <color name="material_color_surface_container_lowest">#0D0E11</color> + <color name="material_color_on_surface">#E3E2E6</color> + + <color name="materialColorOnSecondaryFixedVariant">@color/system_on_secondary_fixed_variant</color> + <color name="materialColorOnTertiaryFixedVariant">@color/system_on_tertiary_fixed_variant</color> + <color name="materialColorSurfaceContainerLowest">@color/system_surface_container_lowest_dark</color> + <color name="materialColorOnPrimaryFixedVariant">@color/system_on_primary_fixed_variant</color> <color name="materialColorOnSecondaryContainer">@color/system_on_secondary_container_dark</color> - <color name="materialColorOnSurface">@color/system_on_surface_dark</color> - <color name="materialColorOnSurfaceVariant">@color/system_on_surface_variant_dark</color> - <color name="materialColorOnTertiary">@color/system_on_tertiary_dark</color> <color name="materialColorOnTertiaryContainer">@color/system_on_tertiary_container_dark</color> - <color name="materialColorOutline">@color/system_outline_dark</color> - <color name="materialColorOutlineVariant">@color/system_outline_variant_dark</color> - <color name="materialColorPaletteKeyColorError">@color/system_palette_key_color_error_dark</color> - <color name="materialColorPaletteKeyColorNeutral">@color/system_palette_key_color_neutral_dark</color> - <color name="materialColorPaletteKeyColorNeutralVariant">@color/system_palette_key_color_neutral_variant_dark</color> - <color name="materialColorPaletteKeyColorPrimary">@color/system_palette_key_color_primary_dark</color> - <color name="materialColorPaletteKeyColorSecondary">@color/system_palette_key_color_secondary_dark</color> - <color name="materialColorPaletteKeyColorTertiary">@color/system_palette_key_color_tertiary_dark</color> - <color name="materialColorPrimary">@color/system_primary_dark</color> - <color name="materialColorPrimaryContainer">@color/system_primary_container_dark</color> - <color name="materialColorPrimaryDim">@color/system_primary_dim_dark</color> - <color name="materialColorScrim">@color/system_scrim_dark</color> - <color name="materialColorSecondary">@color/system_secondary_dark</color> + <color name="materialColorSurfaceContainerLow">@color/system_surface_container_low_dark</color> + <color name="materialColorOnPrimaryContainer">@color/system_on_primary_container_dark</color> + <color name="materialColorSecondaryFixedDim">@color/system_secondary_fixed_dim</color> + <color name="materialColorOnErrorContainer">@color/system_on_error_container_dark</color> + <color name="materialColorOnSecondaryFixed">@color/system_on_secondary_fixed</color> + <color name="materialColorInverseOnSurface">@color/system_on_surface_light</color> + <color name="materialColorTertiaryFixedDim">@color/system_tertiary_fixed_dim</color> + <color name="materialColorOnTertiaryFixed">@color/system_on_tertiary_fixed</color> + <color name="materialColorPrimaryFixedDim">@color/system_primary_fixed_dim</color> <color name="materialColorSecondaryContainer">@color/system_secondary_container_dark</color> - <color name="materialColorSecondaryDim">@color/system_secondary_dim_dark</color> - <color name="materialColorShadow">@color/system_shadow_dark</color> - <color name="materialColorSurface">@color/system_surface_dark</color> + <color name="materialColorErrorContainer">@color/system_error_container_dark</color> + <color name="materialColorOnPrimaryFixed">@color/system_on_primary_fixed</color> + <color name="materialColorInversePrimary">@color/system_primary_light</color> + <color name="materialColorSecondaryFixed">@color/system_secondary_fixed</color> + <color name="materialColorInverseSurface">@color/system_surface_light</color> + <color name="materialColorSurfaceVariant">@color/system_surface_variant_dark</color> + <color name="materialColorTertiaryContainer">@color/system_tertiary_container_dark</color> + <color name="materialColorTertiaryFixed">@color/system_tertiary_fixed</color> + <color name="materialColorPrimaryContainer">@color/system_primary_container_dark</color> + <color name="materialColorOnBackground">@color/system_on_background_dark</color> + <color name="materialColorPrimaryFixed">@color/system_primary_fixed</color> + <color name="materialColorOnSecondary">@color/system_on_secondary_dark</color> + <color name="materialColorOnTertiary">@color/system_on_tertiary_dark</color> + <color name="materialColorSurfaceDim">@color/system_surface_dim_dark</color> <color name="materialColorSurfaceBright">@color/system_surface_bright_dark</color> - <color name="materialColorSurfaceContainer">@color/system_surface_container_dark</color> + <color name="materialColorOnError">@color/system_on_error_dark</color> + <color name="materialColorSurface">@color/system_surface_dark</color> <color name="materialColorSurfaceContainerHigh">@color/system_surface_container_high_dark</color> <color name="materialColorSurfaceContainerHighest">@color/system_surface_container_highest_dark</color> - <color name="materialColorSurfaceContainerLow">@color/system_surface_container_low_dark</color> - <color name="materialColorSurfaceContainerLowest">@color/system_surface_container_lowest_dark</color> - <color name="materialColorSurfaceDim">@color/system_surface_dim_dark</color> - <color name="materialColorSurfaceTint">@color/system_surface_tint_dark</color> - <color name="materialColorSurfaceVariant">@color/system_surface_variant_dark</color> + <color name="materialColorOnSurfaceVariant">@color/system_on_surface_variant_dark</color> + <color name="materialColorOutline">@color/system_outline_dark</color> + <color name="materialColorOutlineVariant">@color/system_outline_variant_dark</color> + <color name="materialColorOnPrimary">@color/system_on_primary_dark</color> + <color name="materialColorOnSurface">@color/system_on_surface_dark</color> + <color name="materialColorSurfaceContainer">@color/system_surface_container_dark</color> + <color name="materialColorPrimary">@color/system_primary_dark</color> + <color name="materialColorSecondary">@color/system_secondary_dark</color> <color name="materialColorTertiary">@color/system_tertiary_dark</color> - <color name="materialColorTertiaryContainer">@color/system_tertiary_container_dark</color> - <color name="materialColorTertiaryDim">@color/system_tertiary_dim_dark</color> - <color name="materialColorTextHintInverse">@color/system_text_hint_inverse_dark</color> - <color name="materialColorTextPrimaryInverse">@color/system_text_primary_inverse_dark</color> - <color name="materialColorTextPrimaryInverseDisableOnly">@color/system_text_primary_inverse_disable_only_dark</color> - <color name="materialColorTextSecondaryAndTertiaryInverse">@color/system_text_secondary_and_tertiary_inverse_dark</color> - <color name="materialColorTextSecondaryAndTertiaryInverseDisabled">@color/system_text_secondary_and_tertiary_inverse_disabled_dark</color> - <color name="materialColorOnPrimaryFixed">@color/system_on_primary_fixed</color> - <color name="materialColorOnPrimaryFixedVariant">@color/system_on_primary_fixed_variant</color> - <color name="materialColorOnSecondaryFixed">@color/system_on_secondary_fixed</color> - <color name="materialColorOnSecondaryFixedVariant">@color/system_on_secondary_fixed_variant</color> - <color name="materialColorOnTertiaryFixed">@color/system_on_tertiary_fixed</color> - <color name="materialColorOnTertiaryFixedVariant">@color/system_on_tertiary_fixed_variant</color> - <color name="materialColorPrimaryFixed">@color/system_primary_fixed</color> - <color name="materialColorPrimaryFixedDim">@color/system_primary_fixed_dim</color> - <color name="materialColorSecondaryFixed">@color/system_secondary_fixed</color> - <color name="materialColorSecondaryFixedDim">@color/system_secondary_fixed_dim</color> - <color name="materialColorTertiaryFixed">@color/system_tertiary_fixed</color> - <color name="materialColorTertiaryFixedDim">@color/system_tertiary_fixed_dim</color> + <color name="materialColorError">@color/system_error_dark</color> </resources> \ No newline at end of file diff --git a/res/values-night/styles.xml b/res/values-night/styles.xml index 13cf48e955..89b635d4d4 100644 --- a/res/values-night/styles.xml +++ b/res/values-night/styles.xml @@ -30,6 +30,7 @@ </style> <style name="WidgetPickerActivityTheme" parent="@android:style/Theme.DeviceDefault.DayNight"> + <item name="widgetsTheme">@style/WidgetContainerTheme.Dark</item> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:windowNoTitle">true</item> <item name="android:windowContentOverlay">@null</item> @@ -37,15 +38,6 @@ <item name="android:windowIsTranslucent">true</item> <item name="android:windowAnimationStyle">@android:style/Animation</item> - <!-- Edge to edge with transparent (not translucent nav / status bars) --> - <item name="android:windowDrawsSystemBarBackgrounds">true</item> - <item name="android:navigationBarColor">@android:color/transparent</item> - <item name="android:enforceNavigationBarContrast">false</item> - <item name="android:windowTranslucentNavigation">false</item> - <item name="android:statusBarColor">@android:color/transparent</item> - <item name="android:enforceStatusBarContrast">false</item> - <item name="android:windowTranslucentStatus">false</item> - <item name="widgetsTheme">@style/WidgetContainerTheme.Dark</item> <item name="pageIndicatorDotColor">@color/page_indicator_dot_color_dark</item> </style> diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml index 4160c89e92..f321f784b0 100644 --- a/res/values-nl/strings.xml +++ b/res/values-nl/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Tik om instellen af te ronden"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Dit is een systeemapp die niet kan worden verwijderd."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Naam bewerken"</string> - <string name="paginate_left" msgid="7915437358451360433">"Links pagineren"</string> - <string name="paginate_right" msgid="6701038155201975878">"Rechts pagineren"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> staat uit"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} heeft # melding}other{{app_name} heeft # meldingen}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Pagina %1$d van %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Draaien van startscherm toestaan"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Als de telefoon gedraaid is"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Liggende modus"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Startscherm instellen op liggende modus"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Stel telefoon in op liggende modus"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Meldingsstipjes"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Aan"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Uit"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Vergrendelen"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Overschakelen naar privéruimte"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Installeren"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Toevoegen"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Apps installeren in privégedeelte"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Bestanden en meer toevoegen aan privégedeelte"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Cirkel"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Vierkant"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-zijdig koekje"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-zijdig koekje"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Boog"</string> </resources> diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml index 64d4ab28e3..14de46758f 100644 --- a/res/values-or/strings.xml +++ b/res/values-or/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"ସେଟଅପ ସମ୍ପୂର୍ଣ୍ଣ କରିବାକୁ ଟାପ କରନ୍ତୁ"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"ଏହା ଏକ ସିଷ୍ଟମ୍‌ ଆପ୍‌ ଅଟେ ଏବଂ ଏହା ଅନଇନଷ୍ଟଲ୍‌ କରାଯାଇ ପାରିବ ନାହିଁ।"</string> <string name="folder_hint_text" msgid="5174843001373488816">"ନାମ ଏଡିଟ କରନ୍ତୁ"</string> - <string name="paginate_left" msgid="7915437358451360433">"ପୃଷ୍ଠାର ବାମପଟେ ପୃଷ୍ଠା ସଂଖ୍ୟା ଲେଖନ୍ତୁ"</string> - <string name="paginate_right" msgid="6701038155201975878">"ପୃଷ୍ଠାର ଡାହାଣପଟେ ପୃଷ୍ଠା ସଂଖ୍ୟା ଲେଖନ୍ତୁ"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> ଅକ୍ଷମ କରାଗଲା"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}ର #ଟି ବିଜ୍ଞପ୍ତି ଅଛି}other{{app_name}ର #ଟି ବିଜ୍ଞପ୍ତି ଅଛି}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"ମୋଟ %2$dରୁ %1$d ନମ୍ବର ପୃଷ୍ଠା"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"ହୋମ ସ୍କ୍ରିନ ରୋଟେସନକୁ ଅନୁମତି ଦିଅନ୍ତୁ"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"ଯେତେବେଳେ ଫୋନକୁ ରୋଟେଟ କରାଯାଇଥାଏ"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"ଲେଣ୍ଡସ୍କେପ ମୋଡ"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ଲେଣ୍ଡସ୍କେପ ମୋଡରେ ହୋମ ସ୍କ୍ରିନ ସେଟ କରନ୍ତୁ"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ଫୋନକୁ ଲେଣ୍ଡସ୍କେପ ମୋଡରେ ସେଟ କରନ୍ତୁ"</string> <string name="notification_dots_title" msgid="9062440428204120317">"ବିଜ୍ଞପ୍ତି ଡଟ୍ସ"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ଚାଲୁ"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ବନ୍ଦ କରନ୍ତୁ"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"ଲକ କରନ୍ତୁ"</string> <string name="ps_container_transition" msgid="8667331812048014412">"ପ୍ରାଇଭେଟ ସ୍ପେସ ଟ୍ରାଞ୍ଜିସନିଂ"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ଇନଷ୍ଟଲ କରନ୍ତୁ"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"ଯୋଗ କରନ୍ତୁ"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"ଆପ୍ସକୁ ପ୍ରାଇଭେଟ ସ୍ପେସରେ ଇନଷ୍ଟଲ କରନ୍ତୁ"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"ପ୍ରାଇଭେଟ ସ୍ପେସରେ ଫାଇଲ ଏବଂ ଅଧିକ ଯୋଗ କରନ୍ତୁ"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"ସର୍କଲ"</string> - <string name="square_shape_title" msgid="3085320803149569308">"ସ୍କୁଏର"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-ସାଇଡ ବିଶିଷ୍ଟ କୁକୀ"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-ସାଇଡ ବିଶିଷ୍ଟ କୁକୀ"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"ଆର୍କ"</string> </resources> diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml index bf40a9e8cc..db02f3f984 100644 --- a/res/values-pa/strings.xml +++ b/res/values-pa/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"ਸੈੱਟਅੱਪ ਪੂਰਾ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"ਇਹ ਇੱਕ ਸਿਸਟਮ ਐਪ ਹੈ ਅਤੇ ਇਸਨੂੰ ਅਣਇੰਸਟੌਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ।"</string> <string name="folder_hint_text" msgid="5174843001373488816">"ਨਾਮ ਦਾ ਸੰਪਾਦਨ ਕਰੋ"</string> - <string name="paginate_left" msgid="7915437358451360433">"ਖੱਬੇ ਪਾਸੇ ਪੰਨਾਕਰਨ ਕਰੋ"</string> - <string name="paginate_right" msgid="6701038155201975878">"ਸੱਜੇ ਪਾਸੇ ਪੰਨਾਕਰਨ ਕਰੋ"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> ਨੂੰ ਅਯੋਗ ਬਣਾਇਆ ਗਿਆ"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} \'ਤੇ # ਸੂਚਨਾ ਹੈ}one{{app_name} \'ਤੇ # ਸੂਚਨਾ ਹੈ}other{{app_name} \'ਤੇ # ਸੂਚਨਾਵਾਂ ਹਨ}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"ਸਫ਼ਾ %2$d ਦਾ %1$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"ਹੋਮ ਸਕ੍ਰੀਨ ਨੂੰ ਘੁਮਾਉਣ ਦੀ ਆਗਿਆ ਦਿਓ"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"ਜਦੋਂ ਫ਼ੋਨ ਘੁਮਾਇਆ ਜਾਂਦਾ ਹੈ"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"ਲੈਂਡਸਕੇਪ ਮੋਡ"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ਹੋਮ ਸਕ੍ਰੀਨ ਨੂੰ ਲੈਂਡਸਕੇਪ ਮੋਡ ਵਿੱਚ ਸੈੱਟ ਕਰੋ"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ਫ਼ੋਨ ਨੂੰ ਲੈਂਡਸਕੇਪ ਮੋਡ ਵਿੱਚ ਸੈੱਟ ਕਰੋ"</string> <string name="notification_dots_title" msgid="9062440428204120317">"ਸੂਚਨਾ ਬਿੰਦੂ"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ਚਾਲੂ"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ਬੰਦ"</string> @@ -195,7 +193,7 @@ <string name="all_apps_work_tab" msgid="4884822796154055118">"ਕੰਮ ਸੰਬੰਧੀ"</string> <string name="all_apps_personal_tab_content_description" msgid="6286808898381807242">"ਨਿੱਜੀ ਐਪਾਂ ਟੈਬ"</string> <string name="all_apps_work_tab_content_description" msgid="3835637212347968316">"ਕੰਮ ਸੰਬੰਧੀ ਐਪਾਂ ਟੈਬ"</string> - <string name="work_profile_toggle_label" msgid="3081029915775481146">"ਕੰਮ ਸੰਬੰਧੀ ਪ੍ਰੋਫਾਈਲ"</string> + <string name="work_profile_toggle_label" msgid="3081029915775481146">"ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ"</string> <string name="work_profile_edu_work_apps" msgid="7895468576497746520">"ਕੰਮ ਸੰਬੰਧੀ ਐਪਾਂ ਨੂੰ ਬੈਜ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਇਹ ਤੁਹਾਡੇ ਆਈ.ਟੀ. ਪ੍ਰਸ਼ਾਸਕ ਨੂੰ ਦਿਸਣਗੀਆਂ"</string> <string name="work_profile_edu_accept" msgid="6069788082535149071">"ਸਮਝ ਲਿਆ"</string> <string name="work_apps_paused_title" msgid="3040901117349444598">"ਕੰਮ ਸੰਬੰਧੀ ਐਪਾਂ ਨੂੰ ਰੋਕਿਆ ਗਿਆ ਹੈ"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"ਲਾਕ ਕਰੋ"</string> <string name="ps_container_transition" msgid="8667331812048014412">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਨੂੰ ਤਬਦੀਲ ਕਰਨਾ"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ਸਥਾਪਤ ਕਰੋ"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"ਸ਼ਾਮਲ ਕਰੋ"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਵਿੱਚ ਐਪਾਂ ਸਥਾਪਤ ਕਰੋ"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"ਪ੍ਰਾਈਵੇਟ ਸਪੇਸ ਵਿੱਚ ਫ਼ਾਈਲਾਂ ਅਤੇ ਹੋਰ ਚੀਜ਼ਾਂ ਨੂੰ ਸ਼ਾਮਲ ਕਰੋ"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"ਚੱਕਰ"</string> - <string name="square_shape_title" msgid="3085320803149569308">"ਵਰਗ"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"6-ਪਾਸਿਆਂ ਵਾਲੇ ਬਿਸਕੁਟ"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-ਪਾਸਿਆਂ ਵਾਲੇ ਬਿਸਕੁਟ"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"ਮਿਹਰਾਬਦਾਰ"</string> </resources> diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml index 378068c10d..707b78f09c 100644 --- a/res/values-pl/strings.xml +++ b/res/values-pl/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Kliknij, aby dokończyć konfigurację"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"To aplikacja systemowa i nie można jej odinstalować."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Edytuj nazwę"</string> - <string name="paginate_left" msgid="7915437358451360433">"Podziel na strony po lewej"</string> - <string name="paginate_right" msgid="6701038155201975878">"Podziel na strony po prawej"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Aplikacja <xliff:g id="APP_NAME">%1$s</xliff:g> jest wyłączona"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} – # powiadomienie}few{{app_name} – # powiadomienia}many{{app_name} – # powiadomień}other{{app_name} – # powiadomienia}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Strona %1$d z %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Zezwalaj na obrót ekranu głównego"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Po obróceniu telefonu"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Tryb poziomy"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Przełącz ekran główny w tryb poziomy"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Przestaw telefon w tryb poziomy"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Kropki powiadomień"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Włączone"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Wyłączone"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Zablokuj"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Przenoszenie obszaru prywatnego"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Zainstaluj"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Dodaj"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Zainstaluj aplikacje w przestrzeni prywatnej"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Dodawanie plików i innych elementów do przestrzeni prywatnej"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Okrąg"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kwadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Ciasteczko czteropłatkowe"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Ciasteczko siedmiopłatkowe"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Łuk"</string> </resources> diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml index 4e09348900..da3fef09aa 100644 --- a/res/values-pt-rPT/strings.xml +++ b/res/values-pt-rPT/strings.xml @@ -89,7 +89,7 @@ <string name="long_accessible_way_to_add_shortcut" msgid="2199537273817090740">"Toque duas vezes sem soltar para mover um atalho ou utilizar ações personalizadas."</string> <string name="out_of_space" msgid="6455557115204099579">"Sem espaço neste ecrã principal"</string> <string name="hotseat_out_of_space" msgid="7448809638125333693">"Não existe mais espaço no tabuleiro de Favoritos"</string> - <string name="all_apps_button_label" msgid="8130441508702294465">"Lista de apps"</string> + <string name="all_apps_button_label" msgid="8130441508702294465">"Lista de aplicações"</string> <string name="all_apps_search_results" msgid="5889367432531296759">"Resultados da pesquisa"</string> <string name="all_apps_button_personal_label" msgid="1315764287305224468">"Lista de aplicações pessoais"</string> <string name="all_apps_button_work_label" msgid="7270707118948892488">"Lista de aplicações de trabalho"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Toque para concluir a configuração"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"É uma app de sistema e não pode ser desinstalada."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Edite o nome"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginação à esquerda"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginação à direita"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> desativado"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{A app {app_name} tem # notificação}other{A app {app_name} tem # notificações}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Página %1$d de %2$d"</string> @@ -131,14 +129,14 @@ <string name="folder_name_format_overflow" msgid="4270108890534995199">"Pasta: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ou mais itens"</string> <string name="unnamed_folder" msgid="2420192029474044442">"Pasta sem nome"</string> <string name="app_pair_name_format" msgid="8134106404716224054">"Par de apps: <xliff:g id="APP1">%1$s</xliff:g> e <xliff:g id="APP2">%2$s</xliff:g>"</string> - <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Imagem de fundo e estilo"</string> + <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Imagem fundo/estilo"</string> <string name="edit_home_screen" msgid="8947858375782098427">"Editar ecrã principal"</string> <string name="settings_button_text" msgid="8873672322605444408">"Definições de início"</string> <string name="msg_disabled_by_admin" msgid="6898038085516271325">"Desativada pelo gestor"</string> <string name="allow_rotation_title" msgid="7222049633713050106">"Permitir rotação do ecrã principal"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Quando o telemóvel é rodado"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Modo horizontal"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Defina o ecrã principal para o modo horizontal"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Defina o telemóvel para o modo horizontal"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Pontos de notificação"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Ativados"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Desativados"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Bloqueio"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Transição do espaço privado"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalar"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Adicionar"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instale apps no espaço privado"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Adicione ficheiros e muito mais ao espaço privado"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Círculo"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Quadrado"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Bolacha de 4 lados"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Bolacha de 7 lados"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arco"</string> </resources> diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml index 7ed3009636..27cbe0fbf7 100644 --- a/res/values-pt/strings.xml +++ b/res/values-pt/strings.xml @@ -47,7 +47,7 @@ <string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d de largura por %2$d de altura"</string> <string name="widget_preview_context_description" msgid="9045841361655787574">"Widget <xliff:g id="WIDGET_NAME">%1$s</xliff:g>"</string> <string name="widget_preview_name_and_dims_content_description" msgid="8489038126122831595">"Widget <xliff:g id="WIDGET_NAME">%1$s</xliff:g>: %2$d de largura por %3$d de altura"</string> - <string name="add_item_request_drag_hint" msgid="8730547755622776606">"Toque e segure o widget para mover sua posição na tela inicial"</string> + <string name="add_item_request_drag_hint" msgid="8730547755622776606">"Toque no widget e o pressione para definir a posição dele na tela inicial"</string> <string name="add_to_home_screen" msgid="9168649446635919791">"Adicionar à tela inicial"</string> <string name="added_to_home_screen_accessibility_text" msgid="4451545765448884415">"Widget <xliff:g id="WIDGET_NAME">%1$s</xliff:g> adicionado à tela inicial"</string> <string name="suggested_widgets_header_title" msgid="1844314680798145222">"Sugestões"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Toque para concluir a configuração"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Este é um app do sistema e não pode ser desinstalado."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Editar nome"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginar para a esquerda"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginar para a direita"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> desativado"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{O app {app_name} tem # notificação}one{O app {app_name} tem # notificação}other{O app {app_name} tem # notificações}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Página %1$d de %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Permitir a rotação da tela inicial"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Quando o smartphone for girado"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Modo paisagem"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Definir a tela inicial no modo paisagem"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Definir o smartphone para o modo paisagem"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Pontos de notificação"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Ativados"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Desativado"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Bloqueio"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Espaço particular em transição"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalar"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Adicionar"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instalar apps no espaço privado"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Adicione arquivos e muito mais ao espaço privado"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Círculo"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Quadrado"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Biscoito com 4 lados"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Biscoito com 7 lados"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arco"</string> </resources> diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml index 848d7156c8..84461be935 100644 --- a/res/values-ro/strings.xml +++ b/res/values-ro/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Atinge pentru a finaliza configurarea"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Aceasta este o aplicație de sistem și nu poate fi dezinstalată."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Modifică numele"</string> - <string name="paginate_left" msgid="7915437358451360433">"Paginare la stânga"</string> - <string name="paginate_right" msgid="6701038155201975878">"Paginare la dreapta"</string> <string name="disabled_app_label" msgid="6673129024321402780">"S-a dezactivat <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} are # notificare}few{{app_name} are # notificări}other{{app_name} are # de notificări}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Pagina %1$d din %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Permite rotirea ecranului de pornire"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Când telefonul este rotit"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Modul Peisaj"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Setează ecranul de pornire în modul Peisaj"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Setează telefonul în modul Peisaj"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Puncte de notificare"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Activate"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Dezactivate"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Blochează"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Tranziție pentru spațiul privat"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalează"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Adaugă"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instalează aplicații în Spațiul privat"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Adaugă fișiere și altele în Spațiul privat"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Cerc"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Pătrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Prăjiturică cu patru laturi"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Prăjiturică cu șapte laturi"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arc"</string> </resources> diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml index 8cd6c04f88..2591a7c0a6 100644 --- a/res/values-ru/strings.xml +++ b/res/values-ru/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Нажмите, чтобы завершить настройку."</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Это системное приложение, его нельзя удалить."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Измените название"</string> - <string name="paginate_left" msgid="7915437358451360433">"Перейти на предыдущую страницу"</string> - <string name="paginate_right" msgid="6701038155201975878">"Перейти на следующую страницу"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Приложение <xliff:g id="APP_NAME">%1$s</xliff:g> отключено"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{В приложении \"{app_name}\" # уведомление}one{В приложении \"{app_name}\" # уведомление}few{В приложении \"{app_name}\" # уведомления}many{В приложении \"{app_name}\" # уведомлений}other{В приложении \"{app_name}\" # уведомления}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Стр. %1$d из %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Разрешить поворачивать главный экран"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"При повороте телефона"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Горизонтальный режим"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Показывать главный экран в горизонтальном режиме"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Перевести телефон в горизонтальный режим"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Значки уведомлений"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Включены"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Отключены"</string> @@ -148,7 +146,7 @@ <string name="notification_dots_service_title" msgid="4284221181793592871">"Показывать значки уведомлений"</string> <string name="developer_options_title" msgid="700788437593726194">"Для разработчиков"</string> <string name="auto_add_shortcuts_label" msgid="4926805029653694105">"Добавлять значки приложений на главный экран"</string> - <string name="auto_add_shortcuts_description" msgid="7117251166066978730">"Для новых приложений"</string> + <string name="auto_add_shortcuts_description" msgid="7117251166066978730">"Добавлять значки установленных приложений на главный экран"</string> <string name="package_state_unknown" msgid="7592128424511031410">"Неизвестно"</string> <string name="abandoned_clean_this" msgid="7610119707847920412">"Убрать"</string> <string name="abandoned_search" msgid="891119232568284442">"Найти"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Блокировка"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Переход к личному пространству"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Установить"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Добавить"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Установить приложения в личном пространстве"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Добавляйте в частное пространство файлы и многое другое"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Круг"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Квадрат"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Печенье (четыре стороны)"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Печенье (семь сторон)"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Арка"</string> </resources> diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml index d8a8daac5a..7d2a9f8d34 100644 --- a/res/values-si/strings.xml +++ b/res/values-si/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"පිහිටුවීම අවසන් කිරීමට තට්ටු කරන්න"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"මෙය පද්ධති යෙදුමක් වන අතර අස්ථාපනය කළ නොහැක."</string> <string name="folder_hint_text" msgid="5174843001373488816">"නම සංස්කරණය කරන්න"</string> - <string name="paginate_left" msgid="7915437358451360433">"වමට පිටු වෙන් කිරීම"</string> - <string name="paginate_right" msgid="6701038155201975878">"දකුණට පිටු වෙන් කිරීම"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> අබල කෙරිණි"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} හට දැනුම්දීම් #ක් ඇත}one{{app_name} හට දැනුම්දීම් #ක් ඇත}other{{app_name} හට දැනුම්දීම් #ක් ඇත}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$d හි %1$d පිටුව"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"මුල් තිරය කරකැවීමට ඉඩ දෙන්න"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"දුරකථනය කරකවන විට"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"භූ දර්ශන ආකාරය"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"මුල් තිරය භූ දර්ශන ප්‍රකාරයට සකසන්න"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"දුරකථනය භූ දර්ශන ආකාරයට සකසන්න"</string> <string name="notification_dots_title" msgid="9062440428204120317">"දැනුම්දීම් තිත්"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ක්‍රියාත්මකයි"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ක්‍රියාවිරහිතයි"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"අගුළු දමන්න"</string> <string name="ps_container_transition" msgid="8667331812048014412">"පෞද්ගලික අවකාශ සංක්‍රමණය"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ස්ථාපන කරන්න"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"එක් කරන්න"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"පෞද්ගලික අවකාශයට යෙදුම් ස්ථාපනය කරන්න"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"රහසිගත අවකාශයට ගොනු සහ තවත් දේ එක් කරන්න"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"කවය"</string> - <string name="square_shape_title" msgid="3085320803149569308">"සමචතුරස්‍රය"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"පැති 4 කුකී"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"පැති 7 කුකී"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"ආරුක්කුව"</string> </resources> diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml index 773798e2f8..57272773c6 100644 --- a/res/values-sk/strings.xml +++ b/res/values-sk/strings.xml @@ -47,7 +47,7 @@ <string name="widget_accessible_dims_format" msgid="3640149169885301790">"šírka %1$d, výška %2$d"</string> <string name="widget_preview_context_description" msgid="9045841361655787574">"Miniaplikácia <xliff:g id="WIDGET_NAME">%1$s</xliff:g>"</string> <string name="widget_preview_name_and_dims_content_description" msgid="8489038126122831595">"Miniaplikácia <xliff:g id="WIDGET_NAME">%1$s</xliff:g>, %2$d na šírku, %3$d na výšku"</string> - <string name="add_item_request_drag_hint" msgid="8730547755622776606">"Ak chcete miniaplikáciou pohybovať po ploche, pridržte ju"</string> + <string name="add_item_request_drag_hint" msgid="8730547755622776606">"Pridržaním môžete miniaplikáciu posúvať po ploche"</string> <string name="add_to_home_screen" msgid="9168649446635919791">"Pridať na plochu"</string> <string name="added_to_home_screen_accessibility_text" msgid="4451545765448884415">"Na plochu bola pridaná miniaplikácia <xliff:g id="WIDGET_NAME">%1$s</xliff:g>"</string> <string name="suggested_widgets_header_title" msgid="1844314680798145222">"Návrhy"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Nastavenie dokončíte klepnutím"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Toto je systémová aplikácia a nedá sa odinštalovať."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Úprava názvu"</string> - <string name="paginate_left" msgid="7915437358451360433">"Číslovať strany vľavo"</string> - <string name="paginate_right" msgid="6701038155201975878">"Číslovať strany vpravo"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Aplikácia <xliff:g id="APP_NAME">%1$s</xliff:g> je deaktivovaná"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{Aplikácia {app_name} má # upozornenie}few{Aplikácia {app_name} má # upozornenia}many{{app_name} has # notifications}other{Aplikácia {app_name} má # upozornení}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Stránka %1$d z %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Povoliť otáčanie plochy"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Pri otočení telefónu"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Režim na šírku"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Nastaviť domovskú stránku do režimu na šírku"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Nastavte v telefóne režim na šírku"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Bodky upozornení"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Zapnuté"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Vypnuté"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Uzamknúť"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Prechod súkromného priestoru"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Inštalovať"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Pridanie"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Inštalácia aplikácií v súkromnom priestore"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Pridajte do súkromného priestoru súbory a ďalšie položky"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Kruh"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Štvorec"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Štvorboká sušienka"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Sedemboká sušienka"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Oblúk"</string> </resources> diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml index a093a3611e..c93f1ae7b3 100644 --- a/res/values-sl/strings.xml +++ b/res/values-sl/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Dotaknite se, da dokončate postopek nastavitve."</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"To je sistemska aplikacija in je ni mogoče odstraniti."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Urejanje imena"</string> - <string name="paginate_left" msgid="7915437358451360433">"Pomikanje po straneh v levo"</string> - <string name="paginate_right" msgid="6701038155201975878">"Pomikanje po straneh v desno"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Aplikacija <xliff:g id="APP_NAME">%1$s</xliff:g> je onemogočena"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ima # obvestilo.}one{{app_name} ima # obvestilo.}two{{app_name} ima # obvestili.}few{{app_name} ima # obvestila.}other{{app_name} ima # obvestil.}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Stran %1$d od %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Dovoli sukanje začetnega zaslona"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Ko se telefon zasuka"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Ležeči način"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Nastavitev začetnega zaslona v ležeči način"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Telefon preklopite v ležeči način"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Obvestilne pike"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Vklopljeno"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Izklopljeno"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Zaklepanje"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Preklapljanje zasebnega prostora"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Namestitev"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Dodaj"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Nameščanje aplikacij v zasebni prostor"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Dodajte datoteke in drugo v zasebni prostor"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Krog"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Piškotek s 4 stranicami"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Piškotek s 7 stranicami"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Lok"</string> </resources> diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml index a6ca9d92c0..81328bcc9b 100644 --- a/res/values-sq/strings.xml +++ b/res/values-sq/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Trokit për të përfunduar konfigurimin"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Ky është aplikacion sistemi dhe nuk mund të çinstalohet."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Redakto emrin"</string> - <string name="paginate_left" msgid="7915437358451360433">"Ndaj në faqe majtas"</string> - <string name="paginate_right" msgid="6701038155201975878">"Ndaj në faqe djathtas"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> u çaktivizua"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ka # njoftim}other{{app_name} ka # njoftime}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Faqja: %1$d nga gjithsej %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Lejo rrotullimin e ekranit bazë"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Kur telefoni rrotullohet"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Modaliteti horizontal"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Cakto ekranin bazë në modalitetin horizontal"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Vendose telefonin në modalitetin horizontal"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Pikat e njoftimeve"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Aktiv"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Joaktiv"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Kyç"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Kalimi te \"Hapësira private\""</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Instalo"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Shto"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Instalo aplikacionet në hapësirën private"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Shto skedarë dhe më shumë te \"Hapësira private\""</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Rreth"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Katror"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Biskotë me 4 anë"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Biskotë me 7 anë"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Hark"</string> </resources> diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml index f64fcba706..065661b512 100644 --- a/res/values-sr/strings.xml +++ b/res/values-sr/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Додирните да бисте довршили подешавање"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Ово је системска апликација и не може да се деинсталира."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Измените назив"</string> - <string name="paginate_left" msgid="7915437358451360433">"Нумериши странице лево"</string> - <string name="paginate_right" msgid="6701038155201975878">"Нумериши странице десно"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Апликација <xliff:g id="APP_NAME">%1$s</xliff:g> је онемогућена"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}, има # обавештење}one{{app_name}, има # обавештење}few{{app_name}, има # обавештења}other{{app_name}, има # обавештења}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%1$d. страница од %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Дозволи ротацију почетног екрана"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Када се телефон ротира"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Водоравни режим"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Подесите почетни екран на водоравни режим"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Подесите телефон на водоравни режим"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Тачке за обавештења"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Укључено"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Искључено"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Закључавање"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Пренос приватног простора"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Инсталирајте"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Додај"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Инсталирај апликације у приватан простор"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Додајте фајлове и друго у приватан простор"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Круг"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Квадрат"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Четвороугаони колачић"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Седмоугаони колачић"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Лук"</string> </resources> diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml index f39a81939a..64558b6c2e 100644 --- a/res/values-sv/strings.xml +++ b/res/values-sv/strings.xml @@ -40,7 +40,7 @@ <string name="app_pair_needs_unfold" msgid="4588897528143807002">"Vik upp enheten för att använda de här apparna som ska användas tillsammans"</string> <string name="app_pair_not_available" msgid="3556767440808032031">"App-paret är inte tillgängligt"</string> <string name="long_press_widget_to_add" msgid="3587712543577675817">"Tryck länge för att flytta en widget."</string> - <string name="long_accessible_way_to_add" msgid="2733588281439571974">"Dubbeltryck och håll kvar för att flytta en widget eller använda anpassade åtgärder."</string> + <string name="long_accessible_way_to_add" msgid="2733588281439571974">"Tryck snabbt två gånger och håll kvar för att flytta en widget eller använda anpassade åtgärder."</string> <string name="widget_picker_widget_options_button_description" msgid="4770099264476852363">"Fler alternativ"</string> <string name="widget_picker_show_all_widgets_menu_item_title" msgid="9023638224586908119">"Visa alla widgetar"</string> <string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string> @@ -86,7 +86,7 @@ <string name="all_apps_list_label" msgid="5106226764073070906">"Applista"</string> <string name="notifications_header" msgid="1404149926117359025">"Aviseringar"</string> <string name="long_press_shortcut_to_add" msgid="5405328730817637737">"Tryck länge för att flytta en genväg."</string> - <string name="long_accessible_way_to_add_shortcut" msgid="2199537273817090740">"Dubbeltryck och håll kvar för att flytta en genväg eller använda anpassade åtgärder."</string> + <string name="long_accessible_way_to_add_shortcut" msgid="2199537273817090740">"Tryck snabbt två gånger och håll kvar för att flytta en genväg eller använda anpassade åtgärder."</string> <string name="out_of_space" msgid="6455557115204099579">"Det finns inte plats på den här startskärmen"</string> <string name="hotseat_out_of_space" msgid="7448809638125333693">"Favoritfältet är fullt"</string> <string name="all_apps_button_label" msgid="8130441508702294465">"Applista"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Tryck för att slutföra konfigureringen"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Det här är en systemapp som inte kan avinstalleras."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Redigera namn"</string> - <string name="paginate_left" msgid="7915437358451360433">"Sidnumrera till vänster"</string> - <string name="paginate_right" msgid="6701038155201975878">"Sidnumrera till höger"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> har inaktiverats"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} har # avisering}other{{app_name} har # aviseringar}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Sidan %1$d av %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Tillåt rotering av startskärmen"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"När telefonen vrids"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Liggande"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Ställ in liggande läge på startskärmen"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Ställ in telefonen på liggande läge"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Aviseringsprickar"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"På"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Av"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Lås"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Överföring av privat rum"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Installera"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Lägg till"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Installera appar i privat rum"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Lägg till filer och annat i det privata utrymmet"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Cirkel"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Fyrkantig kaka"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Sjukantig kaka"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Båge"</string> </resources> diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml index 28c714b27c..4b1adb0377 100644 --- a/res/values-sw/strings.xml +++ b/res/values-sw/strings.xml @@ -94,7 +94,7 @@ <string name="all_apps_button_personal_label" msgid="1315764287305224468">"Orodha ya programu za binafsi"</string> <string name="all_apps_button_work_label" msgid="7270707118948892488">"Orodha ya programu za kazini"</string> <string name="remove_drop_target_label" msgid="7812859488053230776">"Ondoa"</string> - <string name="uninstall_drop_target_label" msgid="4722034217958379417">"Sakinusha"</string> + <string name="uninstall_drop_target_label" msgid="4722034217958379417">"Ondoa"</string> <string name="app_info_drop_target_label" msgid="692894985365717661">"Maelezo ya programu"</string> <string name="install_private_system_shortcut_label" msgid="1616889277073184841">"Sakinisha faraghani"</string> <string name="uninstall_private_system_shortcut_label" msgid="8423460530441627982">"Ondoa programu"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Gusa ili umalize kuweka mipangilio"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Hii ni programu ya mfumo na haiwezi kuondolewa."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Badilisha Jina"</string> - <string name="paginate_left" msgid="7915437358451360433">"Gawa katika kurasa kwenda kushoto"</string> - <string name="paginate_right" msgid="6701038155201975878">"Gawa katika kurasa kwenda kulia"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> imezimwa"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ina arifa #}other{{app_name} ina arifa #}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Ukurasa%1$d wa %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Ruhusu kipengele cha kuzungusha skrini ya kwanza"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Simu inapozungushwa"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Mkao wa mlalo"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Weka skrini ya kwanza iwe katika mkao wa mlalo"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Weka simu katika mkao wa mlalo"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Vitone vya arifa"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Imewashwa"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Imezimwa"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Funga"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Mabadiliko ya Nafasi ya Faragha"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Weka"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Weka"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Sakinisha programu kwenye Sehemu ya Faragha"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Weka faili na mengineyo kwenye Sehemu ya Faragha"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Duara"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Mraba"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Biskuti yenye pande 4"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Biskuti yenye pande 7"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Tao"</string> </resources> diff --git a/res/values-sw600dp-land/dimens.xml b/res/values-sw600dp-land/dimens.xml index 4bc0d0a0dd..92f6881b98 100644 --- a/res/values-sw600dp-land/dimens.xml +++ b/res/values-sw600dp-land/dimens.xml @@ -21,7 +21,6 @@ <!-- Hotseat --> <dimen name="spring_loaded_hotseat_top_margin">44dp</dimen> - <dimen name="min_hotseat_qsb_width">240dp</dimen> <!-- Dragging --> <dimen name="drop_target_top_margin">0dp</dimen> diff --git a/res/values-sw600dp/dimens.xml b/res/values-sw600dp/dimens.xml index 23828a03e3..eda9b2d3f2 100644 --- a/res/values-sw600dp/dimens.xml +++ b/res/values-sw600dp/dimens.xml @@ -41,7 +41,6 @@ <dimen name="dynamic_grid_hotseat_side_padding">0dp</dimen> <dimen name="spring_loaded_hotseat_top_margin">65dp</dimen> <dimen name="min_hotseat_icon_space">17dp</dimen> - <dimen name="min_hotseat_qsb_width">240dp</dimen> <!-- Dragging --> <dimen name="drop_target_top_margin">64dp</dimen> diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml index f157b222ab..a1f1ecd80c 100644 --- a/res/values-ta/strings.xml +++ b/res/values-ta/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"அமைவை நிறைவுசெய்யத் தட்டவும்"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"இது அமைப்பு ஆப்ஸ் என்பதால் நிறுவல் நீக்கம் செய்ய முடியாது."</string> <string name="folder_hint_text" msgid="5174843001373488816">"பெயரைத் திருத்துதல்"</string> - <string name="paginate_left" msgid="7915437358451360433">"இடதுபுறம் பக்கங்களாகப் பிரித்தல்"</string> - <string name="paginate_right" msgid="6701038155201975878">"வலதுபுறம் பக்கங்களாகப் பிரித்தல்"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> முடக்கப்பட்டது"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ஆப்ஸில் # அறிவிப்பு உள்ளது}other{{app_name} ஆப்ஸில் # அறிவிப்புகள் உள்ளன}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"பக்கம் %1$d / %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"முகப்புத் திரை சுழற்சியை அனுமதித்தல்"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"மொபைலைச் சுழற்றும் போது"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"லேண்ட்ஸ்கேப் பயன்முறை"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"முகப்புத் திரையை லேண்ட்ஸ்கேப் பயன்முறையில் அமைக்கும்"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"மொபைலை லேண்ட்ஸ்கேப் பயன்முறையில் அமைக்கலாம்"</string> <string name="notification_dots_title" msgid="9062440428204120317">"அறிவிப்புப் புள்ளிகள்"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ஆன்"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ஆஃப்"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"பூட்டு"</string> <string name="ps_container_transition" msgid="8667331812048014412">"தனிப்பட்ட சேமிப்பிடத்திற்கு மாற்றுகிறது"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"நிறுவுக"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"சேர்"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"தனிப்பட்ட சேமிப்பிடத்தில் ஆப்ஸை நிறுவும்"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"ரகசிய இடத்தில் ஃபைல்கள் மற்றும் பலவற்றைச் சேர்க்கலாம்"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"வட்டம்"</string> - <string name="square_shape_title" msgid="3085320803149569308">"சதுரம்"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 பக்கம் கொண்ட குக்கீ"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 பக்கம் கொண்ட குக்கீ"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"வளைவு"</string> </resources> diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml index 8d41fbe88a..5431846c7b 100644 --- a/res/values-te/strings.xml +++ b/res/values-te/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"సెటప్‌ను ముగించడానికి ట్యాప్ చేయండి"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"ఇది సిస్టమ్ యాప్ మరియు దీన్ని అన్‌ఇన్‌స్టాల్ చేయడం సాధ్యపడదు."</string> <string name="folder_hint_text" msgid="5174843001373488816">"పేరును ఎడిట్ చేయండి"</string> - <string name="paginate_left" msgid="7915437358451360433">"పేజీని ఎడమ వైపునకు స్క్రోల్ చేయండి"</string> - <string name="paginate_right" msgid="6701038155201975878">"పేజీని కుడి వైపునకు స్క్రోల్ చేయండి"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> నిలిపివేయబడింది"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name}లో # నోటిఫికేషన్ ఉంది}other{{app_name}లో # నోటిఫికేషన్‌లు ఉన్నాయి}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$dలో %1$dవ పేజీ"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"మొదటి స్క్రీన్ రొటేషన్‌ను అనుమతించండి"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"ఫోన్‌‌ను తిప్పినప్పుడు"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"ల్యాండ్‌స్కేప్ మోడ్"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"మొదటి స్క్రీన్‌ను ల్యాండ్‌స్కేప్ మోడ్‌లోకి సెట్ చేయండి"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ఫోన్‌ను ల్యాండ్‌స్కేప్ మోడ్‌కు సెట్ చేయండి"</string> <string name="notification_dots_title" msgid="9062440428204120317">"నోటిఫికేషన్ డాట్‌లు"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"ఆన్"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ఆఫ్"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"లాక్ చేయండి"</string> <string name="ps_container_transition" msgid="8667331812048014412">"ప్రైవేట్ స్పేస్ కేటాయించడం జరుగుతుంది"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ఇన్‌స్టాల్ చేయండి"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"జోడించు"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"ప్రైవేట్ స్పేస్‌కు యాప్‌లను ఇన్‌స్టాల్ చేయండి"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"ప్రైవేట్ స్పేస్‌కు ఫైళ్లను, మరిన్నింటిని జోడించండి"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"సర్కిల్"</string> - <string name="square_shape_title" msgid="3085320803149569308">"చతురస్రం"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 వైపులా త్రిభుజాలు కలిగిన కుక్కీ"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 వైపులా త్రిభుజాలు కలిగిన కుక్కీ"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"ఆర్చ్"</string> </resources> diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml index 8275af0558..63d053011d 100644 --- a/res/values-th/strings.xml +++ b/res/values-th/strings.xml @@ -65,7 +65,7 @@ <string name="widgets_full_sheet_cancel_button_description" msgid="5766167035728653605">"ล้างข้อความออกจากช่องค้นหา"</string> <string name="no_widgets_available" msgid="4337693382501046170">"วิดเจ็ตและทางลัดไม่พร้อมให้บริการ"</string> <string name="no_search_results" msgid="3787956167293097509">"ไม่พบวิดเจ็ตหรือทางลัด"</string> - <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ส่วนบุคคล"</string> + <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ส่วนตัว"</string> <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"งาน"</string> <string name="widget_category_conversations" msgid="8894438636213590446">"การสนทนา"</string> <string name="widget_category_note_taking" msgid="3469689394504266039">"การจดบันทึก"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"แตะเพื่อสิ้นสุดการตั้งค่า"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"นี่เป็นแอประบบและไม่สามารถถอนการติดตั้งได้"</string> <string name="folder_hint_text" msgid="5174843001373488816">"แก้ไขชื่อ"</string> - <string name="paginate_left" msgid="7915437358451360433">"ใส่เลขหน้าด้านซ้าย"</string> - <string name="paginate_right" msgid="6701038155201975878">"ใส่เลขหน้าด้านขวา"</string> <string name="disabled_app_label" msgid="6673129024321402780">"ปิดใช้ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} มีการแจ้งเตือน # รายการ}other{{app_name} มีการแจ้งเตือน # รายการ}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"หน้า %1$d จาก %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"อนุญาตให้หมุนหน้าจอหลัก"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"เมื่อหมุนโทรศัพท์"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"โหมดแนวนอน"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ตั้งหน้าจอหลักเป็นโหมดแนวนอน"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"ตั้งค่าโทรศัพท์เป็นโหมดแนวนอน"</string> <string name="notification_dots_title" msgid="9062440428204120317">"เครื่องหมายจุดแสดงการแจ้งเตือน"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"เปิด"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"ปิด"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"ล็อก"</string> <string name="ps_container_transition" msgid="8667331812048014412">"การเปลี่ยนไปใช้พื้นที่ส่วนตัว"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"ติดตั้ง"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"เพิ่ม"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"ติดตั้งแอปไปยังพื้นที่ส่วนตัว"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"เพิ่มไฟล์และอื่นๆ ไปยังพื้นที่ส่วนตัว"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"วงกลม"</string> - <string name="square_shape_title" msgid="3085320803149569308">"สี่เหลี่ยมจัตุรัส"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"คุกกี้ 4 เหลี่ยม"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"คุกกี้ 7 เหลี่ยม"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"ทรงโค้ง"</string> </resources> diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml index 6efbe59201..4e829a2920 100644 --- a/res/values-tl/strings.xml +++ b/res/values-tl/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"I-tap para tapusin ang pag-set up"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Isa itong app ng system at hindi maaaring i-uninstall."</string> <string name="folder_hint_text" msgid="5174843001373488816">"I-edit ang Pangalan"</string> - <string name="paginate_left" msgid="7915437358451360433">"Mag-paginate pakaliwa"</string> - <string name="paginate_right" msgid="6701038155201975878">"Mag-paginate pakanan"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Naka-disable ang <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{May # notification ang {app_name}}one{May # notification ang {app_name}}other{May # na notification ang {app_name}}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Pahina %1$d ng %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Payagan ang pag-rotate ng home screen"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Kailan maro-rotate ang telepono"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Landscape mode"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Gawing landscape mode ang home screen"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Itakda ang telepono sa landscape mode"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Mga notification dot"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Naka-on"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Naka-off"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"I-lock"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Pag-transition ng Pribadong Space"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"I-install"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Magdagdag"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Mag-install ng mga app sa Pribadong Space"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Magdagdag ng mga file at higit pa sa Pribadong Space"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Bilog"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Parisukat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-sided na cookie"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-sided na cookie"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arko"</string> </resources> diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml index b4fd083ee3..114693c053 100644 --- a/res/values-tr/strings.xml +++ b/res/values-tr/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Kurulumu tamamlamak için dokunun"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Bu bir sistem uygulamasıdır ve yüklemesi kaldırılamaz."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Adı Düzenle"</string> - <string name="paginate_left" msgid="7915437358451360433">"Solu sayfalandır"</string> - <string name="paginate_right" msgid="6701038155201975878">"Sağı sayfalandır"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> devre dışı"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} uygulamasının # bildirimi var}other{{app_name} uygulamasının # bildirimi var}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Sayfa %1$d / %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Ana ekranı döndürmeye izin ver"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Telefon döndürüldüğünde"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Yatay mod"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Ana ekranı yatay moda ayarlayın"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Telefonu yatay moda ayarlayın"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Bildirim noktaları"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Açık"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Kapalı"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Kilit"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Gizli Alana Geçiş"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Yükle"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Ekle"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Uygulamaları özel alana yükleyin"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Özel alana dosya ve başka öğeler ekleyin"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Daire"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kare"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 kenarlı kurabiye"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 kenarlı kurabiye"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Kemer"</string> </resources> diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml index 5ca9fd2ec0..81e8f27491 100644 --- a/res/values-uk/strings.xml +++ b/res/values-uk/strings.xml @@ -63,7 +63,7 @@ <string name="widget_button_text" msgid="2880537293434387943">"Віджети"</string> <string name="widgets_full_sheet_search_bar_hint" msgid="8484659090860596457">"Пошук"</string> <string name="widgets_full_sheet_cancel_button_description" msgid="5766167035728653605">"Очистити текст у полі пошуку"</string> - <string name="no_widgets_available" msgid="4337693382501046170">"Віджети і ярлики недоступні"</string> + <string name="no_widgets_available" msgid="4337693382501046170">"Віджети та ярлики недоступні"</string> <string name="no_search_results" msgid="3787956167293097509">"Не знайдено віджетів чи ярликів"</string> <string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Особисті"</string> <string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Робочі"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Торкніться, щоб завершити налаштування"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Це системна програма, її неможливо видалити."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Редагувати назву"</string> - <string name="paginate_left" msgid="7915437358451360433">"Перейти на попередню сторінку"</string> - <string name="paginate_right" msgid="6701038155201975878">"Перейти на наступну сторінку"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> вимкнено"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{Додаток {app_name} має # сповіщення}one{Додаток {app_name} має # сповіщення}few{Додаток {app_name} має # сповіщення}many{Додаток {app_name} має # сповіщень}other{Додаток {app_name} має # сповіщення}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Сторінка %1$d з %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Дозволити обертання головного екрана"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Коли телефон обертається"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Альбомна орієнтація"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Змінити орієнтацію головного екрана на альбомну"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Змінити орієнтацію екрана телефона на альбомну"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Значки сповіщень"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Увімкнено"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Вимкнено"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Заблокувати"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Перехід у приватний простір"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Установити"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Додати"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Установити додатки в особистому просторі"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Додавайте файли й інші об’єкти в приватний простір"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Коло"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Квадрат"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4-гранне печиво"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7-гранне печиво"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Дуга"</string> </resources> diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml index 26d3057d6f..e67e4a147e 100644 --- a/res/values-ur/strings.xml +++ b/res/values-ur/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"سیٹ اپ مکمل کرنے کیلئے تھپتھپائیں"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"یہ ایک سسٹم ایپ ہے اور اسے اَن انسٹال نہیں کیا جا سکتا ہے۔"</string> <string name="folder_hint_text" msgid="5174843001373488816">"نام میں ترمیم کریں"</string> - <string name="paginate_left" msgid="7915437358451360433">"صفحہ بندی بائیں طرف کریں"</string> - <string name="paginate_right" msgid="6701038155201975878">"صفحہ بندی دائیں طرف کریں"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> غیر فعال ہے"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} میں # اطلاع ہے}other{{app_name} میں # اطلاعات ہیں}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"‏صفحہ ‎%1$d از ‎%2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"ہوم اسکرین گھمانے کی اجازت دیں"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"جب فون گھمایا جاتا ہے"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"لینڈ اسکیپ وضع"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"ہوم اسکرین کو لینڈ اسکیپ وضع میں سیٹ کریں"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"فون کو لینڈ اسکیپ وضع میں سیٹ کریں"</string> <string name="notification_dots_title" msgid="9062440428204120317">"اطلاعاتی ڈاٹس"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"آن ہے"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"آف ہے"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"مقفل کریں"</string> <string name="ps_container_transition" msgid="8667331812048014412">"نجی اسپیس کی منتقلی"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"انسٹال کریں"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"شامل کریں"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"پرائیویٹ اسپیس میں ایپس انسٹال کریں"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"پرائیویٹ اسپیس میں فائلز وغیرہ شامل کریں"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"حلقہ"</string> - <string name="square_shape_title" msgid="3085320803149569308">"مربع"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"‫4 طرفہ کوکی"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"‫7 طرفہ کوکی"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"آرک"</string> </resources> diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml index fdf9402aaa..32e5f8c237 100644 --- a/res/values-uz/strings.xml +++ b/res/values-uz/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Sozlashni yakunlash uchun bosing"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Bu tizim ilovasi, shuning uchun o‘chirib bo‘lmaydi."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Nomini tahrirlash"</string> - <string name="paginate_left" msgid="7915437358451360433">"Chapga sahifalash"</string> - <string name="paginate_right" msgid="6701038155201975878">"Oʻngga sahifalash"</string> <string name="disabled_app_label" msgid="6673129024321402780">"<xliff:g id="APP_NAME">%1$s</xliff:g> ilovasi o‘chirib qo‘yildi"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} ilovasida # ta bildirishnoma bor}other{{app_name} ilovasida # ta bildirishnoma bor}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"%2$ddan %1$d ta sahifa"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Bosh ekranni burishga ruxsat"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Telefon burilganda"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Yotiq rejim"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Bosh ekranni eniga sozlash"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Telefonni yotiq rejimga oʻtkazish"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Bildirishnoma belgilari"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Yoniq"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Oʻchiq"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Qulflash"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Maxfiy joyga almashtirish"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Oʻrnatish"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Kiritish"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Ilovalarni Maxfiy makonga oʻrnatish"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Maxfiy makonga fayllar va boshqalarni qoʻshish"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Aylana"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Kvadrat"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 tomonli pishiriq"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 tomonli pishiriq"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Arka"</string> </resources> diff --git a/res/values-v31/colors.xml b/res/values-v31/colors.xml index c094b7b78b..8b43f203f5 100644 --- a/res/values-v31/colors.xml +++ b/res/values-v31/colors.xml @@ -87,6 +87,8 @@ @android:color/system_accent1_0</color> <color name="widget_picker_suggestions_icon_color_light"> @android:color/system_accent1_600</color> + <color name="widget_picker_search_text_color_light"> + @android:color/system_neutral2_700</color> <color name="widget_picker_tab_background_selected_light"> @android:color/system_accent1_600</color> <color name="widget_picker_tab_background_unselected_light"> diff --git a/res/values-v34/colors.xml b/res/values-v34/colors.xml index f588f8d4a3..4f3a769a61 100644 --- a/res/values-v34/colors.xml +++ b/res/values-v34/colors.xml @@ -31,126 +31,104 @@ @android:color/system_on_surface_variant_light </color> - <color name="system_background_light">@android:color/system_background_light</color> - <color name="system_control_activated_light">@android:color/system_control_activated_light</color> - <color name="system_control_highlight_light">@android:color/system_control_highlight_light</color> - <color name="system_control_normal_light">@android:color/system_control_normal_light</color> - <color name="system_error_light">@android:color/system_error_light</color> - <color name="system_error_container_light">@android:color/system_error_container_light</color> - <color name="system_error_dim_light">@android:color/system_error_dim_light</color> - <color name="system_inverse_on_surface_light">@android:color/system_inverse_on_surface_light</color> - <color name="system_inverse_primary_light">@android:color/system_inverse_primary_light</color> - <color name="system_inverse_surface_light">@android:color/system_inverse_surface_light</color> - <color name="system_on_background_light">@android:color/system_on_background_light</color> - <color name="system_on_error_light">@android:color/system_on_error_light</color> - <color name="system_on_error_container_light">@android:color/system_on_error_container_light</color> - <color name="system_on_primary_light">@android:color/system_on_primary_light</color> - <color name="system_on_primary_container_light">@android:color/system_on_primary_container_light</color> - <color name="system_on_secondary_light">@android:color/system_on_secondary_light</color> - <color name="system_on_secondary_container_light">@android:color/system_on_secondary_container_light</color> - <color name="system_on_surface_light">@android:color/system_on_surface_light</color> - <color name="system_on_surface_variant_light">@android:color/system_on_surface_variant_light</color> - <color name="system_on_tertiary_light">@android:color/system_on_tertiary_light</color> - <color name="system_on_tertiary_container_light">@android:color/system_on_tertiary_container_light</color> - <color name="system_outline_light">@android:color/system_outline_light</color> - <color name="system_outline_variant_light">@android:color/system_outline_variant_light</color> - <color name="system_palette_key_color_error_light">@android:color/system_palette_key_color_error_light</color> - <color name="system_palette_key_color_neutral_light">@android:color/system_palette_key_color_neutral_light</color> - <color name="system_palette_key_color_neutral_variant_light">@android:color/system_palette_key_color_neutral_variant_light</color> - <color name="system_palette_key_color_primary_light">@android:color/system_palette_key_color_primary_light</color> - <color name="system_palette_key_color_secondary_light">@android:color/system_palette_key_color_secondary_light</color> - <color name="system_palette_key_color_tertiary_light">@android:color/system_palette_key_color_tertiary_light</color> - <color name="system_primary_light">@android:color/system_primary_light</color> <color name="system_primary_container_light">@android:color/system_primary_container_light</color> - <color name="system_primary_dim_light">@android:color/system_primary_dim_light</color> - <color name="system_scrim_light">@android:color/system_scrim_light</color> - <color name="system_secondary_light">@android:color/system_secondary_light</color> + <color name="system_on_primary_container_light">@android:color/system_on_primary_container_light</color> + <color name="system_primary_light">@android:color/system_primary_light</color> + <color name="system_on_primary_light">@android:color/system_on_primary_light</color> <color name="system_secondary_container_light">@android:color/system_secondary_container_light</color> - <color name="system_secondary_dim_light">@android:color/system_secondary_dim_light</color> - <color name="system_shadow_light">@android:color/system_shadow_light</color> + <color name="system_on_secondary_container_light">@android:color/system_on_secondary_container_light</color> + <color name="system_secondary_light">@android:color/system_secondary_light</color> + <color name="system_on_secondary_light">@android:color/system_on_secondary_light</color> + <color name="system_tertiary_container_light">@android:color/system_tertiary_container_light</color> + <color name="system_on_tertiary_container_light">@android:color/system_on_tertiary_container_light</color> + <color name="system_tertiary_light">@android:color/system_tertiary_light</color> + <color name="system_on_tertiary_light">@android:color/system_on_tertiary_light</color> + <color name="system_background_light">@android:color/system_background_light</color> + <color name="system_on_background_light">@android:color/system_on_background_light</color> <color name="system_surface_light">@android:color/system_surface_light</color> - <color name="system_surface_bright_light">@android:color/system_surface_bright_light</color> + <color name="system_on_surface_light">@android:color/system_on_surface_light</color> + <color name="system_surface_container_low_light">@android:color/system_surface_container_low_light</color> + <color name="system_surface_container_lowest_light">@android:color/system_surface_container_lowest_light</color> <color name="system_surface_container_light">@android:color/system_surface_container_light</color> <color name="system_surface_container_high_light">@android:color/system_surface_container_high_light</color> <color name="system_surface_container_highest_light">@android:color/system_surface_container_highest_light</color> - <color name="system_surface_container_low_light">@android:color/system_surface_container_low_light</color> - <color name="system_surface_container_lowest_light">@android:color/system_surface_container_lowest_light</color> + <color name="system_surface_bright_light">@android:color/system_surface_bright_light</color> <color name="system_surface_dim_light">@android:color/system_surface_dim_light</color> - <color name="system_surface_tint_light">@android:color/system_surface_tint_light</color> <color name="system_surface_variant_light">@android:color/system_surface_variant_light</color> - <color name="system_tertiary_light">@android:color/system_tertiary_light</color> - <color name="system_tertiary_container_light">@android:color/system_tertiary_container_light</color> - <color name="system_tertiary_dim_light">@android:color/system_tertiary_dim_light</color> - <color name="system_text_hint_inverse_light">@android:color/system_text_hint_inverse_light</color> + <color name="system_on_surface_variant_light">@android:color/system_on_surface_variant_light</color> + <color name="system_outline_light">@android:color/system_outline_light</color> + <color name="system_outline_variant_light">@android:color/system_outline_variant_light</color> + <color name="system_error_light">@android:color/system_error_light</color> + <color name="system_on_error_light">@android:color/system_on_error_light</color> + <color name="system_error_container_light">@android:color/system_error_container_light</color> + <color name="system_on_error_container_light">@android:color/system_on_error_container_light</color> + <color name="system_control_activated_light">@android:color/system_control_activated_light</color> + <color name="system_control_normal_light">@android:color/system_control_normal_light</color> + <color name="system_control_highlight_light">@android:color/system_control_highlight_light</color> <color name="system_text_primary_inverse_light">@android:color/system_text_primary_inverse_light</color> - <color name="system_text_primary_inverse_disable_only_light">@android:color/system_text_primary_inverse_disable_only_light</color> <color name="system_text_secondary_and_tertiary_inverse_light">@android:color/system_text_secondary_and_tertiary_inverse_light</color> + <color name="system_text_primary_inverse_disable_only_light">@android:color/system_text_primary_inverse_disable_only_light</color> <color name="system_text_secondary_and_tertiary_inverse_disabled_light">@android:color/system_text_secondary_and_tertiary_inverse_disabled_light</color> - <color name="system_background_dark">@android:color/system_background_dark</color> - <color name="system_control_activated_dark">@android:color/system_control_activated_dark</color> - <color name="system_control_highlight_dark">@android:color/system_control_highlight_dark</color> - <color name="system_control_normal_dark">@android:color/system_control_normal_dark</color> - <color name="system_error_dark">@android:color/system_error_dark</color> - <color name="system_error_container_dark">@android:color/system_error_container_dark</color> - <color name="system_error_dim_dark">@android:color/system_error_dim_dark</color> - <color name="system_inverse_on_surface_dark">@android:color/system_inverse_on_surface_dark</color> - <color name="system_inverse_primary_dark">@android:color/system_inverse_primary_dark</color> - <color name="system_inverse_surface_dark">@android:color/system_inverse_surface_dark</color> - <color name="system_on_background_dark">@android:color/system_on_background_dark</color> - <color name="system_on_error_dark">@android:color/system_on_error_dark</color> - <color name="system_on_error_container_dark">@android:color/system_on_error_container_dark</color> - <color name="system_on_primary_dark">@android:color/system_on_primary_dark</color> - <color name="system_on_primary_container_dark">@android:color/system_on_primary_container_dark</color> - <color name="system_on_secondary_dark">@android:color/system_on_secondary_dark</color> - <color name="system_on_secondary_container_dark">@android:color/system_on_secondary_container_dark</color> - <color name="system_on_surface_dark">@android:color/system_on_surface_dark</color> - <color name="system_on_surface_variant_dark">@android:color/system_on_surface_variant_dark</color> - <color name="system_on_tertiary_dark">@android:color/system_on_tertiary_dark</color> - <color name="system_on_tertiary_container_dark">@android:color/system_on_tertiary_container_dark</color> - <color name="system_outline_dark">@android:color/system_outline_dark</color> - <color name="system_outline_variant_dark">@android:color/system_outline_variant_dark</color> - <color name="system_palette_key_color_error_dark">@android:color/system_palette_key_color_error_dark</color> - <color name="system_palette_key_color_neutral_dark">@android:color/system_palette_key_color_neutral_dark</color> - <color name="system_palette_key_color_neutral_variant_dark">@android:color/system_palette_key_color_neutral_variant_dark</color> - <color name="system_palette_key_color_primary_dark">@android:color/system_palette_key_color_primary_dark</color> - <color name="system_palette_key_color_secondary_dark">@android:color/system_palette_key_color_secondary_dark</color> - <color name="system_palette_key_color_tertiary_dark">@android:color/system_palette_key_color_tertiary_dark</color> - <color name="system_primary_dark">@android:color/system_primary_dark</color> + <color name="system_text_hint_inverse_light">@android:color/system_text_hint_inverse_light</color> + <color name="system_palette_key_color_primary_light">@android:color/system_palette_key_color_primary_light</color> + <color name="system_palette_key_color_secondary_light">@android:color/system_palette_key_color_secondary_light</color> + <color name="system_palette_key_color_tertiary_light">@android:color/system_palette_key_color_tertiary_light</color> + <color name="system_palette_key_color_neutral_light">@android:color/system_palette_key_color_neutral_light</color> + <color name="system_palette_key_color_neutral_variant_light">@android:color/system_palette_key_color_neutral_variant_light</color> <color name="system_primary_container_dark">@android:color/system_primary_container_dark</color> - <color name="system_primary_dim_dark">@android:color/system_primary_dim_dark</color> - <color name="system_scrim_dark">@android:color/system_scrim_dark</color> - <color name="system_secondary_dark">@android:color/system_secondary_dark</color> + <color name="system_on_primary_container_dark">@android:color/system_on_primary_container_dark</color> + <color name="system_primary_dark">@android:color/system_primary_dark</color> + <color name="system_on_primary_dark">@android:color/system_on_primary_dark</color> <color name="system_secondary_container_dark">@android:color/system_secondary_container_dark</color> - <color name="system_secondary_dim_dark">@android:color/system_secondary_dim_dark</color> - <color name="system_shadow_dark">@android:color/system_shadow_dark</color> + <color name="system_on_secondary_container_dark">@android:color/system_on_secondary_container_dark</color> + <color name="system_secondary_dark">@android:color/system_secondary_dark</color> + <color name="system_on_secondary_dark">@android:color/system_on_secondary_dark</color> + <color name="system_tertiary_container_dark">@android:color/system_tertiary_container_dark</color> + <color name="system_on_tertiary_container_dark">@android:color/system_on_tertiary_container_dark</color> + <color name="system_tertiary_dark">@android:color/system_tertiary_dark</color> + <color name="system_on_tertiary_dark">@android:color/system_on_tertiary_dark</color> + <color name="system_background_dark">@android:color/system_background_dark</color> + <color name="system_on_background_dark">@android:color/system_on_background_dark</color> <color name="system_surface_dark">@android:color/system_surface_dark</color> - <color name="system_surface_bright_dark">@android:color/system_surface_bright_dark</color> + <color name="system_on_surface_dark">@android:color/system_on_surface_dark</color> + <color name="system_surface_container_low_dark">@android:color/system_surface_container_low_dark</color> + <color name="system_surface_container_lowest_dark">@android:color/system_surface_container_lowest_dark</color> <color name="system_surface_container_dark">@android:color/system_surface_container_dark</color> <color name="system_surface_container_high_dark">@android:color/system_surface_container_high_dark</color> <color name="system_surface_container_highest_dark">@android:color/system_surface_container_highest_dark</color> - <color name="system_surface_container_low_dark">@android:color/system_surface_container_low_dark</color> - <color name="system_surface_container_lowest_dark">@android:color/system_surface_container_lowest_dark</color> + <color name="system_surface_bright_dark">@android:color/system_surface_bright_dark</color> <color name="system_surface_dim_dark">@android:color/system_surface_dim_dark</color> - <color name="system_surface_tint_dark">@android:color/system_surface_tint_dark</color> <color name="system_surface_variant_dark">@android:color/system_surface_variant_dark</color> - <color name="system_tertiary_dark">@android:color/system_tertiary_dark</color> - <color name="system_tertiary_container_dark">@android:color/system_tertiary_container_dark</color> - <color name="system_tertiary_dim_dark">@android:color/system_tertiary_dim_dark</color> - <color name="system_text_hint_inverse_dark">@android:color/system_text_hint_inverse_dark</color> + <color name="system_on_surface_variant_dark">@android:color/system_on_surface_variant_dark</color> + <color name="system_outline_dark">@android:color/system_outline_dark</color> + <color name="system_outline_variant_dark">@android:color/system_outline_variant_dark</color> + <color name="system_error_dark">@android:color/system_error_dark</color> + <color name="system_on_error_dark">@android:color/system_on_error_dark</color> + <color name="system_error_container_dark">@android:color/system_error_container_dark</color> + <color name="system_on_error_container_dark">@android:color/system_on_error_container_dark</color> + <color name="system_control_activated_dark">@android:color/system_control_activated_dark</color> + <color name="system_control_normal_dark">@android:color/system_control_normal_dark</color> + <color name="system_control_highlight_dark">@android:color/system_control_highlight_dark</color> <color name="system_text_primary_inverse_dark">@android:color/system_text_primary_inverse_dark</color> - <color name="system_text_primary_inverse_disable_only_dark">@android:color/system_text_primary_inverse_disable_only_dark</color> <color name="system_text_secondary_and_tertiary_inverse_dark">@android:color/system_text_secondary_and_tertiary_inverse_dark</color> + <color name="system_text_primary_inverse_disable_only_dark">@android:color/system_text_primary_inverse_disable_only_dark</color> <color name="system_text_secondary_and_tertiary_inverse_disabled_dark">@android:color/system_text_secondary_and_tertiary_inverse_disabled_dark</color> - <color name="system_on_primary_fixed">@android:color/system_on_primary_fixed</color> - <color name="system_on_primary_fixed_variant">@android:color/system_on_primary_fixed_variant</color> - <color name="system_on_secondary_fixed">@android:color/system_on_secondary_fixed</color> - <color name="system_on_secondary_fixed_variant">@android:color/system_on_secondary_fixed_variant</color> - <color name="system_on_tertiary_fixed">@android:color/system_on_tertiary_fixed</color> - <color name="system_on_tertiary_fixed_variant">@android:color/system_on_tertiary_fixed_variant</color> + <color name="system_text_hint_inverse_dark">@android:color/system_text_hint_inverse_dark</color> + <color name="system_palette_key_color_primary_dark">@android:color/system_palette_key_color_primary_dark</color> + <color name="system_palette_key_color_secondary_dark">@android:color/system_palette_key_color_secondary_dark</color> + <color name="system_palette_key_color_tertiary_dark">@android:color/system_palette_key_color_tertiary_dark</color> + <color name="system_palette_key_color_neutral_dark">@android:color/system_palette_key_color_neutral_dark</color> + <color name="system_palette_key_color_neutral_variant_dark">@android:color/system_palette_key_color_neutral_variant_dark</color> <color name="system_primary_fixed">@android:color/system_primary_fixed</color> <color name="system_primary_fixed_dim">@android:color/system_primary_fixed_dim</color> + <color name="system_on_primary_fixed">@android:color/system_on_primary_fixed</color> + <color name="system_on_primary_fixed_variant">@android:color/system_on_primary_fixed_variant</color> <color name="system_secondary_fixed">@android:color/system_secondary_fixed</color> <color name="system_secondary_fixed_dim">@android:color/system_secondary_fixed_dim</color> + <color name="system_on_secondary_fixed">@android:color/system_on_secondary_fixed</color> + <color name="system_on_secondary_fixed_variant">@android:color/system_on_secondary_fixed_variant</color> <color name="system_tertiary_fixed">@android:color/system_tertiary_fixed</color> <color name="system_tertiary_fixed_dim">@android:color/system_tertiary_fixed_dim</color> + <color name="system_on_tertiary_fixed">@android:color/system_on_tertiary_fixed</color> + <color name="system_on_tertiary_fixed_variant">@android:color/system_on_tertiary_fixed_variant</color> </resources> diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml index 6b90d92f5e..6f3b09d870 100644 --- a/res/values-vi/strings.xml +++ b/res/values-vi/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Nhấn để hoàn tất thiết lập"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Đây là ứng dụng hệ thống và không thể gỡ cài đặt."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Chỉnh sửa tên"</string> - <string name="paginate_left" msgid="7915437358451360433">"Chuyển trang sang trái"</string> - <string name="paginate_right" msgid="6701038155201975878">"Chuyển trang sang phải"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Đã vô hiệu hóa <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{{app_name} có # thông báo}other{{app_name} có # thông báo}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Trang %1$d / %2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Cho phép xoay màn hình chính"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Khi xoay điện thoại"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Chế độ ngang"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Đặt màn hình chính thành chế độ ngang"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Đặt điện thoại ở chế độ ngang"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Dấu chấm thông báo"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Đang bật"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Tắt"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Khoá"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Chuyển đổi sang không gian riêng tư"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Cài đặt"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Thêm"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Cài đặt ứng dụng vào Không gian riêng tư"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Thêm tệp và nội dung khác vào Không gian riêng tư"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Hình tròn"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Hình vuông"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Bánh quy 4 cánh"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Bánh quy 7 cánh"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"Hình vòng cung"</string> </resources> diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml index 678a12980f..617a15834c 100644 --- a/res/values-zh-rCN/strings.xml +++ b/res/values-zh-rCN/strings.xml @@ -34,10 +34,10 @@ <string name="split_app_usage_settings" msgid="7214375263347964093">"%1$s的使用设置"</string> <string name="new_window_option_taskbar" msgid="6448780542727767211">"新窗口"</string> <string name="manage_windows_option_taskbar" msgid="2294109489960654212">"管理窗口"</string> - <string name="save_app_pair" msgid="5647523853662686243">"保存应用对"</string> + <string name="save_app_pair" msgid="5647523853662686243">"保存应用组合"</string> <string name="app_pair_default_title" msgid="4045241727446873529">"<xliff:g id="APP1">%1$s</xliff:g> | <xliff:g id="APP2">%2$s</xliff:g>"</string> <string name="app_pair_unlaunchable_at_screen_size" msgid="3446551575502685376">"在该设备上无法使用此应用对"</string> - <string name="app_pair_needs_unfold" msgid="4588897528143807002">"展开设备即可使用此应用对"</string> + <string name="app_pair_needs_unfold" msgid="4588897528143807002">"展开设备即可使用此应用组合"</string> <string name="app_pair_not_available" msgid="3556767440808032031">"应用对不可用"</string> <string name="long_press_widget_to_add" msgid="3587712543577675817">"轻触并按住即可移动微件。"</string> <string name="long_accessible_way_to_add" msgid="2733588281439571974">"点按两次并按住微件即可移动该微件或使用自定义操作。"</string> @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"点按即可完成设置"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"这是系统应用,无法卸载。"</string> <string name="folder_hint_text" msgid="5174843001373488816">"修改名称"</string> - <string name="paginate_left" msgid="7915437358451360433">"左侧分页"</string> - <string name="paginate_right" msgid="6701038155201975878">"右侧分页"</string> <string name="disabled_app_label" msgid="6673129024321402780">"已停用<xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{“{app_name}”有 # 条通知}other{“{app_name}”有 # 条通知}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"第%1$d页,共%2$d页"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"允许旋转主屏幕"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"手机旋转时"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"横屏模式"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"将主屏幕设为横屏模式"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"将手机设为横屏模式"</string> <string name="notification_dots_title" msgid="9062440428204120317">"通知圆点"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"已开启"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"已关闭"</string> @@ -167,7 +165,7 @@ <string name="widgets_list_closed" msgid="6141506579418771922">"微件列表已关闭"</string> <string name="action_add_to_workspace" msgid="215894119683164916">"添加到主屏幕"</string> <string name="action_move_here" msgid="2170188780612570250">"将项目移至此处"</string> - <string name="item_removed" msgid="851119963877842327">"已移除项目"</string> + <string name="item_removed" msgid="851119963877842327">"项目已移除"</string> <string name="undo" msgid="4151576204245173321">"撤消"</string> <string name="action_move" msgid="4339390619886385032">"移动项目"</string> <string name="move_to_empty_cell_description" msgid="5254852678218206889">"移至<xliff:g id="STRING">%3$s</xliff:g>中的第 <xliff:g id="NUMBER_0">%1$s</xliff:g> 行第 <xliff:g id="NUMBER_1">%2$s</xliff:g> 列"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"锁定"</string> <string name="ps_container_transition" msgid="8667331812048014412">"私密空间转换"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"安装"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"添加"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"将应用安装到私密空间"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"将文件等内容添加到私密空间"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"圆形"</string> - <string name="square_shape_title" msgid="3085320803149569308">"方形"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"四边形饼干"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"七边形饼干"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"拱形"</string> </resources> diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml index 8adc31e15a..d343779877 100644 --- a/res/values-zh-rHK/strings.xml +++ b/res/values-zh-rHK/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"輕按即可完成設定"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"這是系統應用程式,無法將其解除安裝。"</string> <string name="folder_hint_text" msgid="5174843001373488816">"編輯名稱"</string> - <string name="paginate_left" msgid="7915437358451360433">"分頁靠左"</string> - <string name="paginate_right" msgid="6701038155201975878">"分頁靠右"</string> <string name="disabled_app_label" msgid="6673129024321402780">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」已停用"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{「{app_name}」有 # 項通知}other{「{app_name}」有 # 項通知}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"第 %1$d 頁,共 %2$d 頁"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"允許旋轉主畫面"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"隨手機旋轉"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"水平模式"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"將主畫面設定為水平模式"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"將手機設定為水平模式"</string> <string name="notification_dots_title" msgid="9062440428204120317">"通知圓點"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"開啟"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"關閉"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"上鎖"</string> <string name="ps_container_transition" msgid="8667331812048014412">"轉為「私人空間」"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"安裝"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"新增"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"將應用程式安裝在「私人空間」中"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"新增檔案和其他內容到「私人空間」"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"圓形"</string> - <string name="square_shape_title" msgid="3085320803149569308">"正方形"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 邊形餅乾"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 邊形餅乾"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"拱形"</string> </resources> diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml index be77bce01f..75743f35c5 100644 --- a/res/values-zh-rTW/strings.xml +++ b/res/values-zh-rTW/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"輕觸即可完成設定"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"這是系統應用程式,不可解除安裝。"</string> <string name="folder_hint_text" msgid="5174843001373488816">"編輯名稱"</string> - <string name="paginate_left" msgid="7915437358451360433">"分頁靠左"</string> - <string name="paginate_right" msgid="6701038155201975878">"分頁靠右"</string> <string name="disabled_app_label" msgid="6673129024321402780">"已停用 <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{「{app_name}」應用程式有 # 則通知}other{「{app_name}」應用程式有 # 則通知}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"第 %1$d 頁,共 %2$d 頁"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"允許旋轉主畫面"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"當手機旋轉時"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"橫向模式"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"將主畫面設為橫向模式"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"將手機設為橫向模式"</string> <string name="notification_dots_title" msgid="9062440428204120317">"通知圓點"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"開啟"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"關閉"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"鎖定"</string> <string name="ps_container_transition" msgid="8667331812048014412">"轉換私人空間狀態"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"安裝"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"新增"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"將應用程式安裝在私人空間中"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"將檔案和其他內容新增至私人空間"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"圓形"</string> - <string name="square_shape_title" msgid="3085320803149569308">"正方形"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"4 邊形餅乾"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"7 邊形餅乾"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"拱形"</string> </resources> diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml index ddbaf2bdfd..a6f4d59964 100644 --- a/res/values-zu/strings.xml +++ b/res/values-zu/strings.xml @@ -113,8 +113,6 @@ <string name="gadget_complete_setup_text" msgid="309040266978007925">"Thepha ukuze uqede ukusetha"</string> <string name="uninstall_system_app_text" msgid="4172046090762920660">"Lolu uhlelo lokusebenza lwesistimu futhi alikwazi ukukhishwa."</string> <string name="folder_hint_text" msgid="5174843001373488816">"Hlela igama"</string> - <string name="paginate_left" msgid="7915437358451360433">"Hlukanisa ngamakhasi kwesokunxele"</string> - <string name="paginate_right" msgid="6701038155201975878">"Hlukanisa ngamakhasi kwesokudla"</string> <string name="disabled_app_label" msgid="6673129024321402780">"Kukhutshaziwe <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="dotted_app_label" msgid="1865617679843363410">"{count,plural, =1{I-{app_name} inesaziso esi-#}one{I-{app_name} inezaziso ezingu-#}other{I-{app_name} inezaziso ezingu-#}}"</string> <string name="default_scroll_format" msgid="7475544710230993317">"Ikhasi elingu-%1$d kwangu-%2$d"</string> @@ -138,7 +136,7 @@ <string name="allow_rotation_title" msgid="7222049633713050106">"Vumela ukuzungezisa kwesikrini sasekhaya"</string> <string name="allow_rotation_desc" msgid="8662546029078692509">"Uma ifoni iphendukiswa"</string> <string name="landscape_mode_title" msgid="5138814555934843926">"Imodi yokuvundla"</string> - <string name="landscape_mode_desc" msgid="3085236452297838664">"Setha isikrini sasekhaya kumodi yokuvundla"</string> + <string name="landscape_mode_desc" msgid="7372569859592816793">"Setha ifoni kumodi yokuvundla"</string> <string name="notification_dots_title" msgid="9062440428204120317">"Amacashazi esaziso"</string> <string name="notification_dots_desc_on" msgid="1679848116452218908">"Vuliwe"</string> <string name="notification_dots_desc_off" msgid="1760796511504341095">"Valiwe"</string> @@ -218,12 +216,6 @@ <string name="ps_container_lock_title" msgid="2640257399982364682">"Khiya"</string> <string name="ps_container_transition" msgid="8667331812048014412">"Ukuguqulwa Kwendawo Yangasese"</string> <string name="ps_add_button_label" msgid="8127988716897128773">"Faka"</string> - <string name="ps_app_label_override" msgid="6876160706011676804">"Faka"</string> <string name="ps_add_button_content_description" msgid="3254274107740952556">"Faka ama-app Endaweni Engasese"</string> <string name="ps_app_content_description" msgid="1129133475892816226">"Faka amafayela nokunye Endaweni engasese"</string> - <string name="circle_shape_title" msgid="3582075061179674565">"Isiyingi"</string> - <string name="square_shape_title" msgid="3085320803149569308">"Isikwele"</string> - <string name="four_sided_cookie_shape_title" msgid="3275212586290522151">"Ikhukhi elinezinhlangothi ezi-4"</string> - <string name="seven_sided_cookie_shape_title" msgid="4862560582029671668">"Ikhukhi elinezinhlangothi eziyi-7"</string> - <string name="arch_shape_title" msgid="2213843822192871318">"I-Arch"</string> </resources> diff --git a/res/values/attrs.xml b/res/values/attrs.xml index fae188f2cf..dfcc390455 100644 --- a/res/values/attrs.xml +++ b/res/values/attrs.xml @@ -19,15 +19,9 @@ <!-- Attributes used for launcher theme --> <attr name="allAppsScrimColor" format="color" /> + <attr name="allAppsScrimColorOverBlur" format="color" /> <attr name="allappsHeaderProtectionColor" format="color" /> <attr name="allAppsNavBarScrimColor" format="color" /> - <attr name="allAppsSurfaceLow" format="color" /> - <attr name="allAppsSurfaceHighest" format="color" /> - <attr name="allAppsUnselectedTab" format="color" /> - <attr name="allAppsSearchIconBackground" format="color" /> - <attr name="privateSpaceSettingsColor" format="color" /> - <attr name="privateSpaceDividerColor" format="color" /> - <attr name="bottomSheetDragHandleColor" format="color" /> <attr name="allAppsTheme" format="reference" /> <attr name="popupColorPrimary" format="color" /> <attr name="popupColorSecondary" format="color" /> @@ -46,27 +40,14 @@ <attr name="iconOnlyShortcutColor" format="color" /> <attr name="eduHalfSheetBGColor" format="color" /> <attr name="overviewScrimColor" format="color" /> - <attr name="overviewScrimColorFallback" format="color" /> - <attr name="overviewScrimColorBlur" format="color" /> - <attr name="overviewScrimForegroundPrimaryBlur" format="color" /> - <attr name="overviewScrimForegroundPrimary" format="color" /> - <attr name="overviewScrimForegroundSecondaryBlur" format="color" /> - <attr name="overviewScrimForegroundSecondary" format="color" /> - <attr name="overviewActionsContainerStyle" format="reference" /> - <attr name="overviewActionButtonStyle" format="reference" /> - <attr name="addDesktopButtonBackgroundDrawable" format="reference" /> + <attr name="overviewScrimColorOverBlur" format="color" /> <attr name="popupNotificationDotColor" format="color" /> <attr name="notificationDotColor" format="color" /> <attr name="focusOutlineColor" format="color" /> <attr name="focusInnerOutlineColor" format="color" /> - <!-- Device search related attributes --> - <attr name="focusHighlight" format="color" /> - <attr name="groupHighlight" format="color" /> - <attr name="searchboxHighlight" format="color" /> <attr name="pageIndicatorDotColor" format="color" /> - <attr name="pageIndicatorArrowBgColor" format="color" /> <attr name="folderPreviewColor" format="color" /> <attr name="folderBackgroundColor" format="color" /> <attr name="folderIconRadius" format="float" /> @@ -184,18 +165,14 @@ <attr name="layout_sticky" format="boolean" /> </declare-styleable> - <declare-styleable name="AllAppsSize"> - <attr name="minDeviceWidthDp" format="float" /> - <attr name="alignWithWorkspaceRow" format="integer" /> - </declare-styleable> - <declare-styleable name="GridSize"> - <attr name="minDeviceWidthPx" format="integer"/> - <attr name="minDeviceHeightPx" format="integer"/> + <attr name="minDeviceWidthPx" format="float"/> + <attr name="minDeviceHeightPx" format="float"/> <attr name="numGridRows" format="integer"/> <attr name="numGridColumns" format="integer"/> <attr name="dbFile" /> <attr name="defaultLayoutId"/> + <attr name="demoModeLayoutId"/> </declare-styleable> <declare-styleable name="GridDisplayOption"> @@ -257,6 +234,7 @@ <attr name="dbFile" format="string" /> <attr name="defaultLayoutId" format="reference" /> + <attr name="demoModeLayoutId" format="reference" /> <attr name="isScalable" format="boolean" /> <attr name="devicePaddingId" format="reference" /> @@ -289,9 +267,6 @@ Needs FeatureFlags.ENABLE_RESPONSIVE_WORKSPACE enabled --> <attr name="allAppsCellSpecsId" format="reference" /> <attr name="gridSizeSpecsId" format="reference" /> - <!-- File that contains specs describing the all apps container height. If not specified, - all apps container will vertically expand to fill available space. --> - <attr name="allAppsSizeSpecsId" format="reference" /> <!-- defaults to allAppsCellSpecsId, if not specified --> <attr name="allAppsCellSpecsTwoPanelId" format="reference" /> <!-- defaults to false, if not specified --> @@ -312,8 +287,6 @@ <flag name="tablet" value="2" /> <!-- Enable on multi display devices only --> <flag name="multi_display" value="4" /> - <!-- Enable on desktop devices only --> - <flag name="desktop" value="8" /> </attr> <!-- By default all are false --> @@ -380,8 +353,6 @@ <declare-styleable name="CellSpec"> <attr name="dimensionType" /> <attr name="maxAvailableSize" /> - <attr name="maxLineCount" format="integer" /> - <attr name="maxLineCountMatchesWorkspace" format="boolean" /> </declare-styleable> <declare-styleable name="SizeSpec"> diff --git a/res/values/colors.xml b/res/values/colors.xml index 01662249a5..914ffd64c9 100644 --- a/res/values/colors.xml +++ b/res/values/colors.xml @@ -75,9 +75,6 @@ <color name="pagination_indicator_dot_color_light">#0B57D0</color> <color name="pagination_indicator_dot_color_dark">#A8C7FA</color> - <color name="page_indicator_arrow_bg_light">#000000</color> - <color name="page_indicator_arrow_bg_dark">#FFFFFF</color> - <color name="text_color_primary_dark">#FFFFFFFF</color> <color name="text_color_secondary_dark">#FFFFFFFF</color> <color name="text_color_tertiary_dark">#CCFFFFFF</color> @@ -100,11 +97,9 @@ <color name="preload_icon_accent_color_dark">#4BB6E8</color> <color name="preload_icon_background_color_dark">#40484D</color> - <color name="blur_shade_panel_fg">#66D9E2FF</color> - <color name="blur_shade_panel_bg">#1AFFFFFF</color> <color name="work_turn_on_stroke">?android:attr/colorAccent</color> - <color name="widget_picker_primary_surface_color_light">@color/system_surface_container_light</color> + <color name="widget_picker_primary_surface_color_light">#EFEDED</color> <color name="widget_picker_secondary_surface_color_light">#FAF9F8</color> <color name="widget_picker_title_color_light">#1F1F1F</color> <color name="widget_picker_description_color_light">#4C4D50</color> @@ -114,11 +109,7 @@ <color name="widget_picker_header_background_color_light">#C2E7FF</color> <color name="widget_picker_suggestions_icon_background_color_light">#FFFFFF</color> <color name="widget_picker_suggestions_icon_color_light">#0B57D0</color> - <color name="widget_picker_search_bar_background_color_light"> - @color/system_surface_bright_light - </color> - <color name="widget_picker_search_text_color_light">@color/system_on_surface_variant_light</color> - <color name="widget_picker_search_cursor_color_light">@color/system_primary_light</color> + <color name="widget_picker_search_text_color_light">#444746</color> <color name="widget_picker_tab_background_selected_light">#0B57D0</color> <color name="widget_picker_tab_background_unselected_light">#E3E3E3</color> <color name="widget_picker_selected_tab_text_color_light">#FFFFFF</color> @@ -126,60 +117,16 @@ <color name="widget_picker_collapse_handle_color_light">#747775</color> <color name="widget_picker_add_button_background_color_light">#0B57D0</color> <color name="widget_picker_add_button_text_color_light">#0B57D0</color> - <color name="widget_picker_expandable_list_items_background_light"> - @color/system_surface_bright_light - </color> - <color name="widget_picker_expand_icon_button_background_light"> - @color/system_secondary_container_light - </color> - <color name="widget_picker_expand_icon_button_color_light"> - @color/system_on_secondary_container_light - </color> <color name="widget_picker_expand_button_background_color_light"> @color/widget_picker_secondary_surface_color_light </color> - - <color name="widget_picker_clickable_list_header_background_light"> - @color/system_secondary_container_light - </color> - <color name="widget_picker_widgets_container_background_light"> - @color/system_surface_bright_light - </color> - <color name="widget_picker_featured_header_icon_background_light"> - @color/system_surface_bright_light - </color> - <color name="widget_picker_featured_header_icon_color_light"> - @color/system_primary_light - </color> - <color name="widget_picker_no_widget_error_color_light">@color/system_on_surface_light</color> - - <color name="widget_picker_preview_placeholder_background_light"> - @color/system_secondary_container_light - </color> - <color name="widget_picker_preview_placeholder_content_light"> - @color/system_on_secondary_container_light - </color> - - <color name="widget_picker_toolbar_background_light"> - @color/system_surface_bright_light - </color> - <color name="widget_picker_toolbar_selected_tab_background_light"> - @color/system_secondary_container_light - </color> - <color name="widget_picker_toolbar_unselected_tab_background_light"> - @android:color/transparent - </color> - <color name="widget_picker_toolbar_tab_content_color_light"> - @color/system_on_secondary_container_light - </color> - <color name="widget_picker_expand_button_text_color_light"> @color/widget_picker_header_app_title_color_light </color> <color name="widget_cell_title_color_light">@color/system_on_surface_light</color> <color name="widget_cell_subtitle_color_light">@color/system_on_surface_variant_light</color> - <color name="widget_picker_primary_surface_color_dark">@color/system_surface_container_dark</color> + <color name="widget_picker_primary_surface_color_dark">#1F2020</color> <color name="widget_picker_secondary_surface_color_dark">#393939</color> <color name="widget_picker_title_color_dark">#E3E3E3</color> <color name="widget_picker_description_color_dark">#CCCDCF</color> @@ -189,11 +136,7 @@ <color name="widget_picker_header_background_color_dark">#004A77</color> <color name="widget_picker_suggestions_icon_background_color_dark">#FFFFFFFF</color> <color name="widget_picker_suggestions_icon_color_dark">#062E6F</color> - <color name="widget_picker_search_bar_background_color_dark"> - @color/system_surface_bright_dark - </color> - <color name="widget_picker_search_text_color_dark">@color/system_on_surface_variant_dark</color> - <color name="widget_picker_search_cursor_color_dark">@color/system_primary_dark</color> + <color name="widget_picker_search_text_color_dark">#C4C7C5</color> <color name="widget_picker_tab_background_selected_dark">#A8C7FA</color> <color name="widget_picker_tab_background_unselected_dark">#343535</color> <color name="widget_picker_selected_tab_text_color_dark">#2D312F</color> @@ -201,50 +144,6 @@ <color name="widget_picker_collapse_handle_color_dark">#8e918f</color> <color name="widget_picker_add_button_background_color_dark">#062E6F</color> <color name="widget_picker_add_button_text_color_dark">#FFFFFF</color> - <color name="widget_picker_expandable_list_items_background_dark"> - @color/system_surface_bright_dark - </color> - <color name="widget_picker_expand_icon_button_background_dark"> - @color/system_secondary_container_dark - </color> - <color name="widget_picker_expand_icon_button_color_dark"> - @color/system_on_secondary_container_dark - </color> - - <color name="widget_picker_clickable_list_header_background_dark"> - @color/system_secondary_container_dark - </color> - <color name="widget_picker_widgets_container_background_dark"> - @color/system_surface_bright_dark - </color> - <color name="widget_picker_featured_header_icon_background_dark"> - @color/system_surface_bright_dark - </color> - <color name="widget_picker_featured_header_icon_color_dark"> - @color/system_primary_dark - </color> - <color name="widget_picker_no_widget_error_color_dark">@color/system_on_surface_dark</color> - - <color name="widget_picker_preview_placeholder_background_dark"> - @color/system_secondary_container_dark - </color> - <color name="widget_picker_preview_placeholder_content_dark"> - @color/system_on_secondary_container_dark - </color> - - <color name="widget_picker_toolbar_background_dark"> - @color/system_surface_bright_dark - </color> - <color name="widget_picker_toolbar_selected_tab_background_dark"> - @color/system_secondary_container_dark - </color> - <color name="widget_picker_toolbar_unselected_tab_background_dark"> - @android:color/transparent - </color> - <color name="widget_picker_toolbar_tab_content_color_dark"> - @color/system_on_secondary_container_dark - </color> - <color name="widget_picker_expand_button_background_color_dark"> @color/widget_picker_secondary_surface_color_dark </color> @@ -254,200 +153,153 @@ <color name="widget_cell_title_color_dark">@color/system_on_surface_dark</color> <color name="widget_cell_subtitle_color_dark">@color/system_on_surface_variant_dark</color> - <color name="suw_all_set_expressive_theme_color">#ECDFE5</color> - <color name="suw_all_set_scrim">#40000000</color> - <color name="material_color_surface_container_lowest">#FFFFFF</color> <color name="material_color_on_surface">#1B1B1F</color> - <color name="system_background_light">#FAF8FE</color> - <color name="system_control_activated_light">#B9CBFF</color> - <color name="system_control_highlight_light">#000000</color> - <color name="system_control_normal_light">#5D5F68</color> - <color name="system_error_light">#A83836</color> - <color name="system_error_container_light">#FA746F</color> - <color name="system_error_dim_light">#67040D</color> - <color name="system_inverse_on_surface_light">#9D9CA2</color> - <color name="system_inverse_primary_light">#B9CBFF</color> - <color name="system_inverse_surface_light">#0D0E12</color> - <color name="system_on_background_light">#30323A</color> - <color name="system_on_error_light">#FFF7F6</color> - <color name="system_on_error_container_light">#6E0A12</color> - <color name="system_on_primary_light">#F9F8FF</color> - <color name="system_on_primary_container_light">#30436E</color> - <color name="system_on_secondary_light">#F9F8FF</color> - <color name="system_on_secondary_container_light">#4B5164</color> - <color name="system_on_surface_light">#30323A</color> - <color name="system_on_surface_variant_light">#5D5F68</color> - <color name="system_on_tertiary_light">#FFF6FF</color> - <color name="system_on_tertiary_container_light">#523F67</color> - <color name="system_outline_light">#787A84</color> - <color name="system_outline_variant_light">#B0B1BC</color> - <color name="system_palette_key_color_error_light">#C84F4C</color> - <color name="system_palette_key_color_neutral_light">#77777C</color> - <color name="system_palette_key_color_neutral_variant_light">#757781</color> - <color name="system_palette_key_color_primary_light">#6476A5</color> - <color name="system_palette_key_color_secondary_light">#70778B</color> - <color name="system_palette_key_color_tertiary_light">#836E99</color> - <color name="system_primary_light">#4C5E8B</color> - <color name="system_primary_container_light">#B9CBFF</color> - <color name="system_primary_dim_light">#40527E</color> - <color name="system_scrim_light">#000000</color> - <color name="system_secondary_light">#585F72</color> + <color name="system_primary_container_light">#D9E2FF</color> + <color name="system_on_primary_container_light">#001945</color> + <color name="system_primary_light">#475D92</color> + <color name="system_on_primary_light">#FFFFFF</color> <color name="system_secondary_container_light">#DCE2F9</color> - <color name="system_secondary_dim_light">#4C5366</color> - <color name="system_shadow_light">#000000</color> - <color name="system_surface_light">#FAF8FE</color> - <color name="system_surface_bright_light">#FAF8FE</color> - <color name="system_surface_container_light">#EDEDF6</color> - <color name="system_surface_container_high_light">#E7E7F1</color> - <color name="system_surface_container_highest_light">#E1E2ED</color> - <color name="system_surface_container_low_light">#F3F3FA</color> + <color name="system_on_secondary_container_light">#151B2C</color> + <color name="system_secondary_light">#575E71</color> + <color name="system_on_secondary_light">#FFFFFF</color> + <color name="system_tertiary_container_light">#FDD7FA</color> + <color name="system_on_tertiary_container_light">#2A122C</color> + <color name="system_tertiary_light">#725572</color> + <color name="system_on_tertiary_light">#FFFFFF</color> + <color name="system_background_light">#FAF8FF</color> + <color name="system_on_background_light">#1A1B20</color> + <color name="system_surface_light">#FAF8FF</color> + <color name="system_on_surface_light">#1A1B20</color> + <color name="system_surface_container_low_light">#F4F3FA</color> <color name="system_surface_container_lowest_light">#FFFFFF</color> - <color name="system_surface_dim_light">#D8D9E4</color> - <color name="system_surface_tint_light">#4C5E8B</color> - <color name="system_surface_variant_light">#E1E2ED</color> - <color name="system_tertiary_light">#6B5780</color> - <color name="system_tertiary_container_light">#E1C8F8</color> - <color name="system_tertiary_dim_light">#5E4B73</color> - <color name="system_text_hint_inverse_light">#E3E2E7</color> - <color name="system_text_primary_inverse_light">#9D9CA2</color> - <color name="system_text_primary_inverse_disable_only_light">#E3E2E7</color> + <color name="system_surface_container_light">#EEEDF4</color> + <color name="system_surface_container_high_light">#E8E7EF</color> + <color name="system_surface_container_highest_light">#E2E2E9</color> + <color name="system_surface_bright_light">#FAF8FF</color> + <color name="system_surface_dim_light">#DAD9E0</color> + <color name="system_surface_variant_light">#E1E2EC</color> + <color name="system_on_surface_variant_light">#44464F</color> + <color name="system_outline_light">#757780</color> + <color name="system_outline_variant_light">#C5C6D0</color> + <color name="system_error_light">#BA1A1A</color> + <color name="system_on_error_light">#FFFFFF</color> + <color name="system_error_container_light">#FFDAD6</color> + <color name="system_on_error_container_light">#410002</color> + <color name="system_control_activated_light">#D9E2FF</color> + <color name="system_control_normal_light">#44464F</color> + <color name="system_control_highlight_light">#000000</color> + <color name="system_text_primary_inverse_light">#E2E2E9</color> <color name="system_text_secondary_and_tertiary_inverse_light">#C5C6D0</color> - <color name="system_text_secondary_and_tertiary_inverse_disabled_light">#E3E2E7</color> - <color name="system_background_dark">#0D0E12</color> - <color name="system_control_activated_dark">#445274</color> - <color name="system_control_highlight_dark">#FFFFFF</color> - <color name="system_control_normal_dark">#91939D</color> - <color name="system_error_dark">#FA746F</color> - <color name="system_error_container_dark">#871F21</color> - <color name="system_error_dim_dark">#C54D4A</color> - <color name="system_inverse_on_surface_dark">#545559</color> - <color name="system_inverse_primary_dark">#515E81</color> - <color name="system_inverse_surface_dark">#FAF8FE</color> - <color name="system_on_background_dark">#E4E5F0</color> - <color name="system_on_error_dark">#490006</color> - <color name="system_on_error_container_dark">#FF9993</color> - <color name="system_on_primary_dark">#323F60</color> - <color name="system_on_primary_container_dark">#DAE3FF</color> - <color name="system_on_secondary_dark">#394052</color> - <color name="system_on_secondary_container_dark">#B8BFD5</color> - <color name="system_on_surface_dark">#E4E5F0</color> - <color name="system_on_surface_variant_dark">#91939D</color> - <color name="system_on_tertiary_dark">#5B4870</color> - <color name="system_on_tertiary_container_dark">#523F67</color> - <color name="system_outline_dark">#73757F</color> - <color name="system_outline_variant_dark">#454850</color> - <color name="system_palette_key_color_error_dark">#C84F4C</color> - <color name="system_palette_key_color_neutral_dark">#77777C</color> - <color name="system_palette_key_color_neutral_variant_dark">#757781</color> - <color name="system_palette_key_color_primary_dark">#69769A</color> - <color name="system_palette_key_color_secondary_dark">#70778B</color> - <color name="system_palette_key_color_tertiary_dark">#836E99</color> - <color name="system_primary_dark">#B8C6EE</color> - <color name="system_primary_container_dark">#445274</color> - <color name="system_primary_dim_dark">#ABB8E0</color> - <color name="system_scrim_dark">#000000</color> + <color name="system_text_primary_inverse_disable_only_light">#E2E2E9</color> + <color name="system_text_secondary_and_tertiary_inverse_disabled_light">#E2E2E9</color> + <color name="system_text_hint_inverse_light">#E2E2E9</color> + <color name="system_palette_key_color_primary_light">#6076AC</color> + <color name="system_palette_key_color_secondary_light">#70778B</color> + <color name="system_palette_key_color_tertiary_light">#8C6D8C</color> + <color name="system_palette_key_color_neutral_light">#76777D</color> + <color name="system_palette_key_color_neutral_variant_light">#757780</color> + <color name="system_primary_container_dark">#2F4578</color> + <color name="system_on_primary_container_dark">#D9E2FF</color> + <color name="system_primary_dark">#B0C6FF</color> + <color name="system_on_primary_dark">#152E60</color> + <color name="system_secondary_container_dark">#404659</color> + <color name="system_on_secondary_container_dark">#DCE2F9</color> <color name="system_secondary_dark">#C0C6DC</color> - <color name="system_secondary_container_dark">#353B4D</color> - <color name="system_secondary_dim_dark">#B2B8CE</color> - <color name="system_shadow_dark">#000000</color> - <color name="system_surface_dark">#0D0E12</color> - <color name="system_surface_bright_dark">#292C34</color> - <color name="system_surface_container_dark">#17191F</color> - <color name="system_surface_container_high_dark">#1D1F26</color> - <color name="system_surface_container_highest_dark">#23262E</color> - <color name="system_surface_container_low_dark">#121318</color> - <color name="system_surface_container_lowest_dark">#000000</color> - <color name="system_surface_dim_dark">#0D0E12</color> - <color name="system_surface_tint_dark">#B8C6EE</color> - <color name="system_surface_variant_dark">#23262E</color> - <color name="system_tertiary_dark">#EDD8FF</color> - <color name="system_tertiary_container_dark">#E1C8F8</color> - <color name="system_tertiary_dim_dark">#E1C8F8</color> - <color name="system_text_hint_inverse_dark">#1A1B20</color> - <color name="system_text_primary_inverse_dark">#545559</color> - <color name="system_text_primary_inverse_disable_only_dark">#1A1B20</color> + <color name="system_on_secondary_dark">#2A3042</color> + <color name="system_tertiary_container_dark">#593D59</color> + <color name="system_on_tertiary_container_dark">#FDD7FA</color> + <color name="system_tertiary_dark">#E0BBDD</color> + <color name="system_on_tertiary_dark">#412742</color> + <color name="system_background_dark">#121318</color> + <color name="system_on_background_dark">#E2E2E9</color> + <color name="system_surface_dark">#121318</color> + <color name="system_on_surface_dark">#E2E2E9</color> + <color name="system_surface_container_low_dark">#1A1B20</color> + <color name="system_surface_container_lowest_dark">#0C0E13</color> + <color name="system_surface_container_dark">#1E1F25</color> + <color name="system_surface_container_high_dark">#282A2F</color> + <color name="system_surface_container_highest_dark">#33343A</color> + <color name="system_surface_bright_dark">#38393F</color> + <color name="system_surface_dim_dark">#121318</color> + <color name="system_surface_variant_dark">#44464F</color> + <color name="system_on_surface_variant_dark">#C5C6D0</color> + <color name="system_outline_dark">#8F9099</color> + <color name="system_outline_variant_dark">#44464F</color> + <color name="system_error_dark">#FFB4AB</color> + <color name="system_on_error_dark">#690005</color> + <color name="system_error_container_dark">#93000A</color> + <color name="system_on_error_container_dark">#FFDAD6</color> + <color name="system_control_activated_dark">#2F4578</color> + <color name="system_control_normal_dark">#C5C6D0</color> + <color name="system_control_highlight_dark">#FFFFFF</color> + <color name="system_text_primary_inverse_dark">#1A1B20</color> <color name="system_text_secondary_and_tertiary_inverse_dark">#44464F</color> + <color name="system_text_primary_inverse_disable_only_dark">#1A1B20</color> <color name="system_text_secondary_and_tertiary_inverse_disabled_dark">#1A1B20</color> - <color name="system_on_primary_fixed">#1B2F59</color> - <color name="system_on_primary_fixed_variant">#394C78</color> - <color name="system_on_secondary_fixed">#383F51</color> - <color name="system_on_secondary_fixed_variant">#555B6E</color> - <color name="system_on_tertiary_fixed">#3E2C52</color> - <color name="system_on_tertiary_fixed_variant">#5C4871</color> - <color name="system_primary_fixed">#B9CBFF</color> - <color name="system_primary_fixed_dim">#ABBDF0</color> + <color name="system_text_hint_inverse_dark">#1A1B20</color> + <color name="system_palette_key_color_primary_dark">#6076AC</color> + <color name="system_palette_key_color_secondary_dark">#70778B</color> + <color name="system_palette_key_color_tertiary_dark">#8C6D8C</color> + <color name="system_palette_key_color_neutral_dark">#76777D</color> + <color name="system_palette_key_color_neutral_variant_dark">#757780</color> + <color name="system_primary_fixed">#D9E2FF</color> + <color name="system_primary_fixed_dim">#B0C6FF</color> + <color name="system_on_primary_fixed">#001945</color> + <color name="system_on_primary_fixed_variant">#2F4578</color> <color name="system_secondary_fixed">#DCE2F9</color> - <color name="system_secondary_fixed_dim">#CED4EB</color> - <color name="system_tertiary_fixed">#E1C8F8</color> - <color name="system_tertiary_fixed_dim">#D3BAEA</color> + <color name="system_secondary_fixed_dim">#C0C6DC</color> + <color name="system_on_secondary_fixed">#151B2C</color> + <color name="system_on_secondary_fixed_variant">#404659</color> + <color name="system_tertiary_fixed">#FDD7FA</color> + <color name="system_tertiary_fixed_dim">#E0BBDD</color> + <color name="system_on_tertiary_fixed">#2A122C</color> + <color name="system_on_tertiary_fixed_variant">#593D59</color> - <color name="materialColorBackground">@color/system_background_light</color> - <color name="materialColorControlActivated">@color/system_control_activated_light</color> - <color name="materialColorControlHighlight">@color/system_control_highlight_light</color> - <color name="materialColorControlNormal">@color/system_control_normal_light</color> - <color name="materialColorError">@color/system_error_light</color> - <color name="materialColorErrorContainer">@color/system_error_container_light</color> - <color name="materialColorErrorDim">@color/system_error_dim_light</color> - <color name="materialColorInverseOnSurface">@color/system_inverse_on_surface_light</color> - <color name="materialColorInversePrimary">@color/system_inverse_primary_light</color> - <color name="materialColorInverseSurface">@color/system_inverse_surface_light</color> - <color name="materialColorOnBackground">@color/system_on_background_light</color> - <color name="materialColorOnError">@color/system_on_error_light</color> - <color name="materialColorOnErrorContainer">@color/system_on_error_container_light</color> - <color name="materialColorOnPrimary">@color/system_on_primary_light</color> - <color name="materialColorOnPrimaryContainer">@color/system_on_primary_container_light</color> - <color name="materialColorOnSecondary">@color/system_on_secondary_light</color> + <color name="materialColorOnSecondaryFixedVariant">@color/system_on_secondary_fixed_variant</color> + <color name="materialColorOnTertiaryFixedVariant">@color/system_on_tertiary_fixed_variant</color> + <color name="materialColorSurfaceContainerLowest">@color/system_surface_container_lowest_light</color> + <color name="materialColorOnPrimaryFixedVariant">@color/system_on_primary_fixed_variant</color> <color name="materialColorOnSecondaryContainer">@color/system_on_secondary_container_light</color> - <color name="materialColorOnSurface">@color/system_on_surface_light</color> - <color name="materialColorOnSurfaceVariant">@color/system_on_surface_variant_light</color> - <color name="materialColorOnTertiary">@color/system_on_tertiary_light</color> <color name="materialColorOnTertiaryContainer">@color/system_on_tertiary_container_light</color> - <color name="materialColorOutline">@color/system_outline_light</color> - <color name="materialColorOutlineVariant">@color/system_outline_variant_light</color> - <color name="materialColorPaletteKeyColorError">@color/system_palette_key_color_error_light</color> - <color name="materialColorPaletteKeyColorNeutral">@color/system_palette_key_color_neutral_light</color> - <color name="materialColorPaletteKeyColorNeutralVariant">@color/system_palette_key_color_neutral_variant_light</color> - <color name="materialColorPaletteKeyColorPrimary">@color/system_palette_key_color_primary_light</color> - <color name="materialColorPaletteKeyColorSecondary">@color/system_palette_key_color_secondary_light</color> - <color name="materialColorPaletteKeyColorTertiary">@color/system_palette_key_color_tertiary_light</color> - <color name="materialColorPrimary">@color/system_primary_light</color> - <color name="materialColorPrimaryContainer">@color/system_primary_container_light</color> - <color name="materialColorPrimaryDim">@color/system_primary_dim_light</color> - <color name="materialColorScrim">@color/system_scrim_light</color> - <color name="materialColorSecondary">@color/system_secondary_light</color> + <color name="materialColorSurfaceContainerLow">@color/system_surface_container_low_light</color> + <color name="materialColorOnPrimaryContainer">@color/system_on_primary_container_light</color> + <color name="materialColorSecondaryFixedDim">@color/system_secondary_fixed_dim</color> + <color name="materialColorOnErrorContainer">@color/system_on_error_container_light</color> + <color name="materialColorOnSecondaryFixed">@color/system_on_secondary_fixed</color> + <color name="materialColorInverseOnSurface">@color/system_on_surface_dark</color> + <color name="materialColorTertiaryFixedDim">@color/system_tertiary_fixed_dim</color> + <color name="materialColorOnTertiaryFixed">@color/system_on_tertiary_fixed</color> + <color name="materialColorPrimaryFixedDim">@color/system_primary_fixed_dim</color> <color name="materialColorSecondaryContainer">@color/system_secondary_container_light</color> - <color name="materialColorSecondaryDim">@color/system_secondary_dim_light</color> - <color name="materialColorShadow">@color/system_shadow_light</color> - <color name="materialColorSurface">@color/system_surface_light</color> + <color name="materialColorErrorContainer">@color/system_error_container_light</color> + <color name="materialColorOnPrimaryFixed">@color/system_on_primary_fixed</color> + <color name="materialColorInversePrimary">@color/system_primary_dark</color> + <color name="materialColorSecondaryFixed">@color/system_secondary_fixed</color> + <color name="materialColorInverseSurface">@color/system_surface_dark</color> + <color name="materialColorSurfaceVariant">@color/system_surface_variant_light</color> + <color name="materialColorTertiaryContainer">@color/system_tertiary_container_light</color> + <color name="materialColorTertiaryFixed">@color/system_tertiary_fixed</color> + <color name="materialColorPrimaryContainer">@color/system_primary_container_light</color> + <color name="materialColorOnBackground">@color/system_on_background_light</color> + <color name="materialColorPrimaryFixed">@color/system_primary_fixed</color> + <color name="materialColorOnSecondary">@color/system_on_secondary_light</color> + <color name="materialColorOnTertiary">@color/system_on_tertiary_light</color> + <color name="materialColorSurfaceDim">@color/system_surface_dim_light</color> <color name="materialColorSurfaceBright">@color/system_surface_bright_light</color> - <color name="materialColorSurfaceContainer">@color/system_surface_container_light</color> + <color name="materialColorOnError">@color/system_on_error_light</color> + <color name="materialColorSurface">@color/system_surface_light</color> <color name="materialColorSurfaceContainerHigh">@color/system_surface_container_high_light</color> <color name="materialColorSurfaceContainerHighest">@color/system_surface_container_highest_light</color> - <color name="materialColorSurfaceContainerLow">@color/system_surface_container_low_light</color> - <color name="materialColorSurfaceContainerLowest">@color/system_surface_container_lowest_light</color> - <color name="materialColorSurfaceDim">@color/system_surface_dim_light</color> - <color name="materialColorSurfaceTint">@color/system_surface_tint_light</color> - <color name="materialColorSurfaceVariant">@color/system_surface_variant_light</color> + <color name="materialColorOnSurfaceVariant">@color/system_on_surface_variant_light</color> + <color name="materialColorOutline">@color/system_outline_light</color> + <color name="materialColorOutlineVariant">@color/system_outline_variant_light</color> + <color name="materialColorOnPrimary">@color/system_on_primary_light</color> + <color name="materialColorOnSurface">@color/system_on_surface_light</color> + <color name="materialColorSurfaceContainer">@color/system_surface_container_light</color> + <color name="materialColorPrimary">@color/system_primary_light</color> + <color name="materialColorSecondary">@color/system_secondary_light</color> <color name="materialColorTertiary">@color/system_tertiary_light</color> - <color name="materialColorTertiaryContainer">@color/system_tertiary_container_light</color> - <color name="materialColorTertiaryDim">@color/system_tertiary_dim_light</color> - <color name="materialColorTextHintInverse">@color/system_text_hint_inverse_light</color> - <color name="materialColorTextPrimaryInverse">@color/system_text_primary_inverse_light</color> - <color name="materialColorTextPrimaryInverseDisableOnly">@color/system_text_primary_inverse_disable_only_light</color> - <color name="materialColorTextSecondaryAndTertiaryInverse">@color/system_text_secondary_and_tertiary_inverse_light</color> - <color name="materialColorTextSecondaryAndTertiaryInverseDisabled">@color/system_text_secondary_and_tertiary_inverse_disabled_light</color> - <color name="materialColorOnPrimaryFixed">@color/system_on_primary_fixed</color> - <color name="materialColorOnPrimaryFixedVariant">@color/system_on_primary_fixed_variant</color> - <color name="materialColorOnSecondaryFixed">@color/system_on_secondary_fixed</color> - <color name="materialColorOnSecondaryFixedVariant">@color/system_on_secondary_fixed_variant</color> - <color name="materialColorOnTertiaryFixed">@color/system_on_tertiary_fixed</color> - <color name="materialColorOnTertiaryFixedVariant">@color/system_on_tertiary_fixed_variant</color> - <color name="materialColorPrimaryFixed">@color/system_primary_fixed</color> - <color name="materialColorPrimaryFixedDim">@color/system_primary_fixed_dim</color> - <color name="materialColorSecondaryFixed">@color/system_secondary_fixed</color> - <color name="materialColorSecondaryFixedDim">@color/system_secondary_fixed_dim</color> - <color name="materialColorTertiaryFixed">@color/system_tertiary_fixed</color> - <color name="materialColorTertiaryFixedDim">@color/system_tertiary_fixed_dim</color> + <color name="materialColorError">@color/system_error_light</color> </resources> diff --git a/res/values/config.xml b/res/values/config.xml index 674b093d04..fc636a5055 100644 --- a/res/values/config.xml +++ b/res/values/config.xml @@ -61,15 +61,23 @@ <integer name="config_caretAnimationDuration">200</integer> <!-- Various classes overriden by projects/build flavors. --> + <string name="folder_name_provider_class" translatable="false"></string> + <string name="stats_log_manager_class" translatable="false"></string> + <string name="instant_app_resolver_class" translatable="false"></string> <string name="main_process_initializer_class" translatable="false"></string> + <string name="app_launch_tracker_class" translatable="false"></string> <string name="test_information_handler_class" translatable="false"></string> - <string name="secondary_display_quickstep_delegate_class" translatable="false"></string> + <string name="secondary_display_predictions_class" translatable="false"></string> <string name="taskbar_search_session_controller_class" translatable="false"></string> + <string name="taskbar_model_callbacks_factory_class" translatable="false"></string> + <string name="taskbar_view_callbacks_factory_class" translatable="false"></string> + <string name="launcher_restore_event_logger_class" translatable="false"></string> <string name="taskbar_edu_tooltip_controller_class" translatable="false"></string> <!-- Default packages --> <string name="wallpaper_picker_package" translatable="false"></string> <string name="local_colors_extraction_class" translatable="false"></string> + <string name="search_session_manager_class" translatable="false"></string> <!-- Scalable Grid configuration --> <!-- This is a float because it is converted to dp later in DeviceProfile --> @@ -102,6 +110,12 @@ <item name="swipe_up_rect_y_damping_ratio" type="dimen" format="float">0.95</item> <item name="swipe_up_rect_y_stiffness" type="dimen" format="float">400</item> + <!-- Expressive Dismiss --> + <item name="expressive_dismiss_task_trans_y_damping_ratio" type="dimen" format="float">0.6</item> + <item name="expressive_dismiss_task_trans_y_stiffness" type="dimen" format="float">900</item> + <item name="expressive_dismiss_task_trans_x_damping_ratio" type="dimen" format="float">0.8</item> + <item name="expressive_dismiss_task_trans_x_stiffness" type="dimen" format="float">900</item> + <!-- Taskbar --> <!-- This is a float because it is converted to dp later in DeviceProfile --> <item name="taskbar_icon_size" type="dimen" format="float">0</item> @@ -138,8 +152,6 @@ </array> <string-array name="filtered_components" ></string-array> - <string-array name="default_featured_widget_apps" translatable="false"> - </string-array> <!-- Swipe back to home related --> <dimen name="swipe_back_window_scale_x_margin">10dp</dimen> @@ -193,6 +205,9 @@ <dimen name="minimum_icon_label_size">8sp</dimen> + <!-- Used for custom widgets --> + <array name="custom_widget_providers"/> + <!-- Embed parameters --> <dimen name="activity_split_ratio" format="float">0.5</dimen> <integer name="min_width_split">720</integer> @@ -211,6 +226,4 @@ <!-- Used to differentiate between desktop and non-desktop devices. --> <bool name="desktop_form_factor">false</bool> - - <string-array name="grid_control_known_signers" translatable="false" /> </resources> diff --git a/res/values/dimens.xml b/res/values/dimens.xml index 37704985f7..3f9c535ee6 100644 --- a/res/values/dimens.xml +++ b/res/values/dimens.xml @@ -323,8 +323,6 @@ <!-- label text size = workspace text size multiplied by this scale --> <dimen name="folder_label_text_scale">1.14</dimen> <dimen name="folder_footer_height_default">56dp</dimen> - <dimen name="folder_arrow_gap_width">8dp</dimen> - <dimen name="folder_arrow_icon_length">24dp</dimen> <dimen name="folder_content_padding_left_right">8dp</dimen> <dimen name="folder_content_padding_top">16dp</dimen> @@ -404,7 +402,7 @@ <dimen name="notification_icon_padding_start">10dp</dimen> <!-- notification_icon_padding + notification_icon_size + notification_icon_padding --> <dimen name="notification_main_text_padding_start">54dp</dimen> - <dimen name="horizontal_ellipsis_size">24dp</dimen> + <dimen name="horizontal_ellipsis_size">18dp</dimen> <!-- Overview --> <dimen name="options_menu_icon_size">24dp</dimen> @@ -449,9 +447,6 @@ <dimen name="taskbar_running_app_indicator_height">0dp</dimen> <dimen name="taskbar_running_app_indicator_width">0dp</dimen> <dimen name="taskbar_running_app_indicator_top_margin">0dp</dimen> - <dimen name="taskbar_minimized_app_indicator_width">0dp</dimen> - <dimen name="taskbar_line_indicator_width_spring">0dp</dimen> - <dimen name="taskbar_app_translate_y_spring">0dp</dimen> <!-- Transient taskbar (placeholders to compile in Launcher3 without Quickstep) --> <dimen name="transient_taskbar_padding">0dp</dimen> @@ -495,6 +490,7 @@ <dimen name="task_dismiss_max_undershoot">0dp</dimen> <dimen name="overview_task_margin">0dp</dimen> <dimen name="overview_actions_height">0dp</dimen> + <dimen name="overview_actions_button_spacing">0dp</dimen> <dimen name="overview_actions_margin_gesture">0dp</dimen> <dimen name="overview_actions_top_margin">0dp</dimen> <dimen name="overview_grid_side_margin">0dp</dimen> @@ -545,14 +541,13 @@ <!-- Folder spaces --> <dimen name="folder_top_padding_default">24dp</dimen> <dimen name="folder_footer_horiz_padding">20dp</dimen> - <dimen name="folder_footer_horiz_padding_minus_arrow_overlap">12dp</dimen> <!-- 20 - 8 --> - <dimen name="folder_arrow_touchbox_length">32dp</dimen> <!-- Default Ime height. Used only for logging purposes. Assume this is default keyboard height in EN locale in case the keyboard height is not known when queried.--> <dimen name="default_ime_height">300dp</dimen> <!-- Private Space parameters --> + <dimen name="ps_container_corner_radius">28dp</dimen> <dimen name="ps_header_height">72dp</dimen> <dimen name="ps_header_relative_layout_height">48dp</dimen> <dimen name="ps_header_image_height">48dp</dimen> diff --git a/res/values/id.xml b/res/values/id.xml index 1d7ee0d95e..78b8308cc9 100644 --- a/res/values/id.xml +++ b/res/values/id.xml @@ -101,8 +101,4 @@ <!-- View tag key used to store SpringAnimation data. --> <item type="id" name="spring_animation_tag" /> - <!-- LC: Fix build issues --> - <item type="id" name="left_indicator_arrow"/> - <item type="id" name="right_indicator_arrow"/> - </resources> diff --git a/res/values/strings.xml b/res/values/strings.xml index 869b0fa3b0..fc2d88aa95 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -272,8 +272,6 @@ <!-- Default folder title --> <string name="folder_hint_text">Edit Name</string> - <string name="paginate_left">Paginate left</string> - <string name="paginate_right">Paginate right</string> <!-- Accessibility --> <!-- The format string for when an app is temporarily disabled. --> @@ -337,9 +335,8 @@ <!-- Title for Landscape Mode setting. [CHAR LIMIT=50] --> <string name="landscape_mode_title">Landscape mode</string> - <!-- [CHAR LIMIT=100] --> - <string name="landscape_mode_desc">Set home screen into landscape mode</string> + <string name="landscape_mode_desc">Set phone into landscape mode</string> <!-- Title for Notification dots setting. Tapping this will link to the system Notifications settings screen where the user can turn off notification dots globally. [CHAR LIMIT=50] --> <string name="notification_dots_title">Notification dots</string> @@ -549,21 +546,7 @@ <string name="ps_container_transition">Private Space Transitioning</string> <!-- Title for Private Space install app icon --> <string name="ps_add_button_label">Install</string> - <!-- Title for Private Space app icon to add files and more to Private Space --> - <string name="ps_app_label_override">Add</string> <!-- Content description for install app icon --> <string name="ps_add_button_content_description">Install apps to Private Space</string> <string name="ps_app_content_description">Add files and more to Private Space</string> - - <!-- Strings for icon shapes --> - <!-- label for circle shape option in customization picker --> - <string name="circle_shape_title">Circle</string> - <!-- label for square shape option in customization picker --> - <string name="square_shape_title">Square</string> - <!-- label for 4-sided cookie option shape in customization picker --> - <string name="four_sided_cookie_shape_title">4-sided cookie</string> - <!-- label for 7-sided cookie option shape in customization picker --> - <string name="seven_sided_cookie_shape_title">7-sided cookie</string> - <!-- label for arch shape option in customization picker --> - <string name="arch_shape_title">Arch</string> </resources> diff --git a/res/values/styles.xml b/res/values/styles.xml index 64698b2210..65b1693a4d 100644 --- a/res/values/styles.xml +++ b/res/values/styles.xml @@ -39,16 +39,10 @@ <style name="LauncherTheme" parent="@style/DynamicColorsBaseLauncherTheme"> <item name="android:textColorSecondary">#DE000000</item> - <item name="groupHighlight">@color/materialColorSurfaceContainerHigh</item> <item name="allAppsScrimColor">@color/materialColorSurfaceDim</item> + <item name="allAppsScrimColorOverBlur">#33000000</item> <item name="allappsHeaderProtectionColor">@color/materialColorSurfaceContainerHighest</item> <item name="allAppsNavBarScrimColor">#66FFFFFF</item> - <item name="allAppsSurfaceLow">@color/materialColorSurfaceContainerLow</item> - <item name="allAppsSurfaceHighest">@color/materialColorSurfaceContainerHighest</item> - <item name="allAppsUnselectedTab">@color/materialColorSurfaceBright</item> - <item name="privateSpaceSettingsColor">@color/materialColorSurfaceBright</item> - <item name="privateSpaceDividerColor">@color/materialColorOutlineVariant</item> - <item name="bottomSheetDragHandleColor">@color/materialColorOutlineVariant</item> <item name="popupColorPrimary">@color/popup_color_primary_light</item> <item name="popupColorSecondary">@color/popup_color_secondary_light</item> <item name="popupColorTertiary">@color/popup_color_tertiary_light</item> @@ -66,7 +60,6 @@ <item name="workspaceKeyShadowColor">#89000000</item> <item name="widgetsTheme">@style/WidgetContainerTheme</item> <item name="pageIndicatorDotColor">@color/page_indicator_dot_color_light</item> - <item name="pageIndicatorArrowBgColor">@color/page_indicator_arrow_bg_light</item> <item name="focusOutlineColor">@color/materialColorSecondaryFixed</item> <item name="focusInnerOutlineColor">@color/materialColorOnSecondaryFixedVariant</item> <item name="folderPreviewColor">@color/folder_preview_light</item> @@ -83,10 +76,8 @@ <item name="workspaceSurfaceColor">@color/workspace_surface_color</item> <item name="dropTargetHoverTextColor">@color/drop_target_hover_text_color_light</item> <item name="dropTargetHoverButtonColor">@color/drop_target_hover_button_color_light</item> - <item name="overviewScrimColorFallback">@color/overview_scrim</item> - <item name="overviewScrimForegroundPrimaryBlur">@color/overview_scrim_foreground_primary</item> - <item name="overviewScrimForegroundSecondaryBlur">@color/overview_scrim_foreground_secondary</item> - <item name="overviewScrimColorBlur">#80FFFFFF</item> + <item name="overviewScrimColor">@color/overview_scrim</item> + <item name="overviewScrimColorOverBlur">#33000000</item> <item name="preloadIconAccentColor">@color/preload_icon_accent_color_light</item> <item name="preloadIconBackgroundColor">@color/preload_icon_background_color_light</item> <item name="android:windowTranslucentStatus">false</item> @@ -125,6 +116,7 @@ <item name="android:colorControlHighlight">#19FFFFFF</item> <item name="android:colorPrimary">#FF212121</item> <item name="allAppsScrimColor">@color/materialColorSurfaceDim</item> + <item name="allAppsScrimColorOverBlur">#52000000</item> <item name="allappsHeaderProtectionColor">@color/materialColorSurfaceContainerLow</item> <item name="allAppsNavBarScrimColor">#80000000</item> <item name="popupColorPrimary">@color/popup_color_primary_dark</item> @@ -138,7 +130,6 @@ <item name="notificationDotColor">@color/notification_dot_color_dark</item> <item name="widgetsTheme">@style/WidgetContainerTheme.Dark</item> <item name="pageIndicatorDotColor">@color/page_indicator_dot_color_dark</item> - <item name="pageIndicatorArrowBgColor">@color/page_indicator_arrow_bg_dark</item> <item name="folderPreviewColor">@color/folder_preview_dark</item> <item name="folderBackgroundColor">@color/folder_background_dark</item> <item name="folderIconBorderColor">?android:attr/colorPrimary</item> @@ -150,10 +141,8 @@ <item name="loadingIconColor">#99FFFFFF</item> <item name="iconOnlyShortcutColor">#B3FFFFFF</item> <item name="eduHalfSheetBGColor">#DD000000</item> - <item name="overviewScrimColorFallback">@color/overview_scrim_dark</item> - <item name="overviewScrimForegroundPrimaryBlur">@color/overview_scrim_foreground_primary_dark</item> - <item name="overviewScrimForegroundSecondaryBlur">@color/overview_scrim_foreground_secondary_dark</item> - <item name="overviewScrimColorBlur">#80000000</item> + <item name="overviewScrimColor">@color/overview_scrim_dark</item> + <item name="overviewScrimColorOverBlur">#52000000</item> <item name="preloadIconAccentColor">@color/preload_icon_accent_color_dark</item> <item name="preloadIconBackgroundColor">@color/preload_icon_background_color_dark</item> </style> @@ -182,11 +171,6 @@ <style name="AppTheme.Dark.DarkMainColor" parent="@style/LauncherTheme.Dark.DarkMainColor" /> <style name="AppTheme.Dark.DarkText" parent="@style/LauncherTheme.Dark.DarkText" /> - <!-- Theme overrides in All Apps when blur is enabled. --> - <style name="AllAppsBlurStyle" /> - <!-- Theme overrides in All Apps when blur is available but currently disabled. --> - <style name="AllAppsBlurFallbackStyle" /> - <style name="HomeSettings.Theme" parent="@android:style/Theme.DeviceDefault.Settings"> <item name="android:navigationBarColor">?android:colorPrimaryDark</item> <item name="android:windowActionBar">false</item> @@ -309,34 +293,16 @@ @color/widget_cell_subtitle_color_dark</item> </style> - <style name="WidgetsTitle" parent=""> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-headline-small-emphasized - </item> - </style> - - <style name="WidgetSuggestionsTitle" parent="@android:style/TextAppearance.DeviceDefault"> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-body-medium-emphasized - </item> - </style> - <style name="WidgetListHeader.Title" parent="@android:style/TextAppearance.DeviceDefault" > <!-- Title / Medium --> <item name="android:textFontWeight">@integer/widget_picker_header_app_title_font_weight</item> <item name="android:textSize">@dimen/widget_picker_header_app_title_font_size</item> <item name="android:lineHeight">@dimen/widget_picker_header_app_title_line_height</item> <item name="android:textColor">?attr/widgetPickerHeaderAppTitleColor</item> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-title-medium - </item> </style> <style name="WidgetListHeader.Title.Selected" parent="WidgetListHeader.Title"> <!-- Title / Medium / Emphasized --> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-title-medium-emphasized - </item> <item name="android:textFontWeight"> @integer/widget_picker_header_app_subtitle_font_weight </item> @@ -344,9 +310,6 @@ <style name="WidgetListHeader.SubTitle" parent="@android:style/TextAppearance.DeviceDefault" > <!-- Title / Small --> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-title-small - </item> <item name="android:textFontWeight">@integer/widget_picker_header_app_subtitle_font_weight</item> <item name="android:textSize">@dimen/widget_picker_header_app_subtitle_font_size</item> <item name="android:lineHeight">@dimen/widget_picker_header_app_subtitle_line_height</item> @@ -355,9 +318,6 @@ <style name="WidgetListHeader.SubTitle.Selected" parent="WidgetListHeader.SubTitle"> <!-- Title / Small / Emphasized --> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-title-small-emphasized - </item> <item name="android:textFontWeight"> @integer/widget_picker_header_app_subtitle_font_weight </item> @@ -404,9 +364,6 @@ <item name="android:stateListAnimator">@animator/all_apps_fastscroll_icon_anim</item> <item name="android:paddingLeft">@dimen/dynamic_grid_cell_padding_x</item> <item name="android:paddingRight">@dimen/dynamic_grid_cell_padding_x</item> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-title-small - </item> </style> @@ -517,57 +474,7 @@ <style name="PrivateSpaceHeaderTextStyle"> <item name="android:textSize">16sp</item> <item name="android:textColor">@color/materialColorOnSurface</item> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-title-medium - </item> - <item name="android:fontFamily" android:featureFlag="!com.android.launcher3.gsf_res"> - google-sans-text-medium - </item> + <item name="android:fontFamily">google-sans-text-medium</item> <item name="android:ellipsize">end</item> </style> - - <style name="PrivateSpaceLockTextStyle" parent="TextHeadline"> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-title-small - </item> - </style> - - <style name="AllAppsPersonalWorkTabStyle" parent="@style/Widget.AppCompat.Button.Borderless"> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-title-small - </item> - </style> - - <style name="WorkModeFabTextStyle" parent="TextHeadline"> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-title-small - </item> - </style> - - <style name="WorkPausedBodyTextStyle"> - <item name="android:fontFamily" android:featureFlag="com.android.launcher3.gsf_res"> - variable-title-small - </item> - </style> - - <style name="WidgetPickerActivityTheme" parent="@android:style/Theme.DeviceDefault.DayNight"> - <item name="android:windowBackground">@android:color/transparent</item> - <item name="android:windowNoTitle">true</item> - <item name="android:windowContentOverlay">@null</item> - <item name="android:colorBackgroundCacheHint">@null</item> - <item name="android:windowIsTranslucent">true</item> - <item name="android:windowAnimationStyle">@android:style/Animation</item> - - <!-- Edge to edge with transparent (not translucent nav / status bars) --> - <item name="android:windowDrawsSystemBarBackgrounds">true</item> - <item name="android:navigationBarColor">@android:color/transparent</item> - <item name="android:enforceNavigationBarContrast">false</item> - <item name="android:windowTranslucentNavigation">false</item> - <item name="android:statusBarColor">@android:color/transparent</item> - <item name="android:enforceStatusBarContrast">false</item> - <item name="android:windowTranslucentStatus">false</item> - - <item name="widgetsTheme">@style/WidgetContainerTheme</item> - <item name="pageIndicatorDotColor">@color/page_indicator_dot_color_light</item> - </style> </resources> diff --git a/res/xml/launcher_preferences.xml b/res/xml/launcher_preferences.xml index 32fb5149f7..284ab9e718 100644 --- a/res/xml/launcher_preferences.xml +++ b/res/xml/launcher_preferences.xml @@ -50,13 +50,4 @@ launcher:logIdOn="615" launcher:logIdOff="616" /> - <PreferenceScreen - android:persistent="false" - android:title="@string/developer_options_title" - android:key="pref_developer_options"> - <com.android.launcher3.uioverrides.flags.DevOptionsUiHelper - android:persistent="false" - android:key="pref_developer_options"/> - </PreferenceScreen> - </androidx.preference.PreferenceScreen> diff --git a/settings.gradle b/settings.gradle index fc745d5b38..78d1d678c0 100644 --- a/settings.gradle +++ b/settings.gradle @@ -13,7 +13,7 @@ pluginManagement { // https://docs.gradle.com/enterprise/gradle-plugin/ plugins { - id "com.gradle.develocity" version "4.2.2" + id "com.gradle.develocity" version "4.2.1" } def isCI = providers.environmentVariable('CI').present @@ -28,8 +28,6 @@ develocity { } } -rootProject.name = "lawnchair" - dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { @@ -63,15 +61,6 @@ project(':msdllib').projectDir = new File(rootDir, 'platform_frameworks_libs_sys include ':contextualeducationlib' project(':contextualeducationlib').projectDir = new File(rootDir, 'platform_frameworks_libs_systemui/contextualeducationlib') -include ':viewcapturelib' -project(':viewcapturelib').projectDir = new File(rootDir, 'platform_frameworks_libs_systemui/viewcapturelib') - -include ':displaylib' -project(':displaylib').projectDir = new File(rootDir, 'platform_frameworks_libs_systemui/displaylib') - -include ':mechanics' -project(':mechanics').projectDir = new File(rootDir, 'platform_frameworks_libs_systemui/mechanics') - include ':hidden-api' include ':shared' @@ -89,12 +78,15 @@ project(':common').projectDir = new File(rootDir, 'systemUI/common') include ':log' project(':log').projectDir = new File(rootDir, 'systemUI/log') -include ':animation' -project(':animation').projectDir = new File(rootDir, 'systemUI/animation') +include ':anim' +project(':anim').projectDir = new File(rootDir, 'systemUI/anim') include ':unfold' project(':unfold').projectDir = new File(rootDir, 'systemUI/unfold') +include ':viewcapture' +project(':viewcapture').projectDir = new File(rootDir, 'systemUI/viewcapture') + include ':utils' project(':utils').projectDir = new File(rootDir, 'systemUI/utils') @@ -113,8 +105,3 @@ include ':baseline-profile' include ':androidx-lib' include ':flags' include ':wmshell' -include ':dagger' -include ':concurrent' -//include ':compose' -include ':modules:widgetpicker' - diff --git a/shared/src/com/android/launcher3/testing/shared/TestProtocol.java b/shared/src/com/android/launcher3/testing/shared/TestProtocol.java index daa2e40930..cdeab954fd 100644 --- a/shared/src/com/android/launcher3/testing/shared/TestProtocol.java +++ b/shared/src/com/android/launcher3/testing/shared/TestProtocol.java @@ -154,13 +154,8 @@ public final class TestProtocol { public static final String REQUEST_GET_OVERVIEW_TASK_SIZE = "get-overivew-task-size"; public static final String REQUEST_GET_OVERVIEW_GRID_TASK_SIZE = "get-overivew-grid-task-size"; public static final String REQUEST_GET_OVERVIEW_PAGE_SPACING = "get-overview-page-spacing"; - - public static final String REQUEST_GET_BUBBLE_BAR_DROP_TARGET_SIZE = - "request-get-bubble-bar-drop-target-size"; public static final String REQUEST_GET_OVERVIEW_CURRENT_PAGE_INDEX = "get-overview-current-page-index"; - public static final String REQUEST_GET_OVERVIEW_FIRST_TASKVIEW_INDEX = - "get-overview-first-taskview-index"; public static final String REQUEST_GET_SPLIT_SELECTION_ACTIVE = "get-split-selection-active"; public static final String REQUEST_ENABLE_ROTATION = "enable_rotation"; public static final String REQUEST_MODEL_QUEUE_CLEARED = "model-queue-cleared"; @@ -174,6 +169,7 @@ public final class TestProtocol { public static final String REQUEST_MOCK_SENSOR_ROTATION = "mock-sensor-rotation"; public static final String PERMANENT_DIAG_TAG = "TaplTarget"; + public static final String ICON_MISSING = "b/282963545"; public static final String REQUEST_FLAG_ENABLE_GRID_ONLY_OVERVIEW = "enable-grid-only-overview"; public static final String REQUEST_IS_RECENTS_WINDOW_ENABLED = "recents-window-enabled"; @@ -183,17 +179,6 @@ public final class TestProtocol { public static final String REQUEST_INJECT_FAKE_TRACKPAD = "inject-fake-trackpad"; public static final String REQUEST_EJECT_FAKE_TRACKPAD = "eject-fake-trackpad"; - public static final String REQUEST_TASKBAR_PRIMARY_DISPLAY_ID = "taskbar-primary-display-id"; - - public static final String REQUEST_DISMISS_MAGNETIC_DETACH_THRESHOLD = - "dismiss-magnetic-detach-threshold"; - - public static final String REQUEST_TASKBAR_ACTION_CORNER_PADDING = - "taskbar-action-corner-padding"; - - public static final String REQUEST_TASKBAR_UNSTASHED_INPUT_AREA = - "taskbar-unstashed-input-area"; - /** Logs {@link Log#d(String, String)} if {@link #sDebugTracing} is true. */ public static void testLogD(String tag, String message) { if (!sDebugTracing) { diff --git a/src/com/android/launcher3/AbstractFloatingView.java b/src/com/android/launcher3/AbstractFloatingView.java index 7dffdd8890..3272ff68a1 100644 --- a/src/com/android/launcher3/AbstractFloatingView.java +++ b/src/com/android/launcher3/AbstractFloatingView.java @@ -78,7 +78,6 @@ public abstract class AbstractFloatingView extends LinearLayout implements Touch TYPE_TASKBAR_PINNING_POPUP, TYPE_PIN_IME_POPUP, TYPE_ONE_GRID_MIGRATION_EDU, - TYPE_NUDGE, }) @Retention(RetentionPolicy.SOURCE) public @interface FloatingViewType {} @@ -108,10 +107,9 @@ public abstract class AbstractFloatingView extends LinearLayout implements Touch public static final int TYPE_TASKBAR_PINNING_POPUP = 1 << 21; public static final int TYPE_PIN_IME_POPUP = 1 << 22; public static final int TYPE_ONE_GRID_MIGRATION_EDU = 1 << 23; - public static final int TYPE_NUDGE = 1 << 24; // Custom compose popups - public static final int TYPE_COMPOSE_VIEW = 1 << 25; + public static final int TYPE_COMPOSE_VIEW = 1 << 24; public static final int TYPE_ALL = TYPE_FOLDER | TYPE_ACTION_POPUP | TYPE_WIDGETS_BOTTOM_SHEET | TYPE_WIDGET_RESIZE_FRAME | TYPE_WIDGETS_FULL_SHEET @@ -120,15 +118,14 @@ public abstract class AbstractFloatingView extends LinearLayout implements Touch | TYPE_ICON_SURFACE | TYPE_DRAG_DROP_POPUP | TYPE_PIN_WIDGET_FROM_EXTERNAL_POPUP | TYPE_TASKBAR_EDUCATION_DIALOG | TYPE_TASKBAR_ALL_APPS | TYPE_OPTIONS_POPUP_DIALOG | TYPE_ADD_TO_HOME_CONFIRMATION | TYPE_TASKBAR_OVERLAY_PROXY - | TYPE_TASKBAR_PINNING_POPUP | TYPE_PIN_IME_POPUP | TYPE_ONE_GRID_MIGRATION_EDU - | TYPE_NUDGE | TYPE_COMPOSE_VIEW; + | TYPE_TASKBAR_PINNING_POPUP | TYPE_PIN_IME_POPUP | TYPE_ONE_GRID_MIGRATION_EDU | TYPE_COMPOSE_VIEW; // Type of popups which should be kept open during launcher rebind public static final int TYPE_REBIND_SAFE = TYPE_WIDGETS_FULL_SHEET | TYPE_WIDGETS_BOTTOM_SHEET | TYPE_ON_BOARD_POPUP | TYPE_DISCOVERY_BOUNCE | TYPE_ALL_APPS_EDU | TYPE_ICON_SURFACE | TYPE_TASKBAR_EDUCATION_DIALOG | TYPE_TASKBAR_ALL_APPS | TYPE_OPTIONS_POPUP_DIALOG | TYPE_TASKBAR_OVERLAY_PROXY - | TYPE_PIN_IME_POPUP | TYPE_ONE_GRID_MIGRATION_EDU | TYPE_NUDGE | TYPE_COMPOSE_VIEW; + | TYPE_PIN_IME_POPUP | TYPE_ONE_GRID_MIGRATION_EDU | TYPE_COMPOSE_VIEW; /** Type of popups that should get exclusive accessibility focus. */ public static final int TYPE_ACCESSIBLE = TYPE_ALL & ~TYPE_DISCOVERY_BOUNCE & ~TYPE_LISTENER @@ -143,7 +140,7 @@ public abstract class AbstractFloatingView extends LinearLayout implements Touch // Floating views that are exclusive to the taskbar overlay window. public static final int TYPE_TASKBAR_OVERLAYS = - TYPE_TASKBAR_ALL_APPS | TYPE_TASKBAR_EDUCATION_DIALOG | TYPE_NUDGE; + TYPE_TASKBAR_ALL_APPS | TYPE_TASKBAR_EDUCATION_DIALOG; // Floating views that a TouchController should not try to intercept touches from. public static final int TYPE_TOUCH_CONTROLLER_NO_INTERCEPT = TYPE_ALL & ~TYPE_DISCOVERY_BOUNCE diff --git a/src/com/android/launcher3/AppWidgetResizeFrame.java b/src/com/android/launcher3/AppWidgetResizeFrame.java index 4671d2c3ed..41c24ccf10 100644 --- a/src/com/android/launcher3/AppWidgetResizeFrame.java +++ b/src/com/android/launcher3/AppWidgetResizeFrame.java @@ -43,7 +43,6 @@ import com.android.launcher3.keyboard.ViewGroupFocusHelper; import com.android.launcher3.logging.InstanceId; import com.android.launcher3.logging.InstanceIdSequence; import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.model.data.LauncherAppWidgetInfo; import com.android.launcher3.util.PendingRequestArgs; import com.android.launcher3.views.ArrowTipView; import com.android.launcher3.widget.LauncherAppWidgetHostView; @@ -300,27 +299,17 @@ public class AppWidgetResizeFrame extends AbstractFloatingView implements View.O mMaxVSpan = info.maxSpanY; } - LauncherAppWidgetInfo widgetInfoOnView = (LauncherAppWidgetInfo) mWidgetView.getTag(); // Only show resize handles for the directions in which resizing is possible. - - // on font / display change, the dp/px size of a cell changes, which means, existing spans - // may be invalid. User should be able to resize to the correct widget size. - boolean isWidgetVSpanInvalid = widgetInfoOnView.spanY < mMinVSpan; - mVerticalResizeActive = (info.resizeMode & AppWidgetProviderInfo.RESIZE_VERTICAL) != 0 && ( - (mMinVSpan < idp.numRows && mMaxVSpan > 1 && mMinVSpan < mMaxVSpan) - || isWidgetVSpanInvalid); + mVerticalResizeActive = (resizeMode & AppWidgetProviderInfo.RESIZE_VERTICAL) != 0 + && mMinVSpan < idp.numRows && mMaxVSpan > 1 + && mMinVSpan < mMaxVSpan; if (!mVerticalResizeActive) { mDragHandles[INDEX_TOP].setVisibility(GONE); mDragHandles[INDEX_BOTTOM].setVisibility(GONE); } - - // on font / display change, the dp/px size of a cell changes, which means, existing spans - // may be invalid. User should be able to resize to the correct widget size. - boolean isWidgetHSpanInvalid = widgetInfoOnView.spanX < mMinHSpan; - mHorizontalResizeActive = - (info.resizeMode & AppWidgetProviderInfo.RESIZE_HORIZONTAL) != 0 && ( - (mMinHSpan < idp.numColumns && mMaxHSpan > 1 && mMinHSpan < mMaxHSpan) - || isWidgetHSpanInvalid); + mHorizontalResizeActive = (resizeMode & AppWidgetProviderInfo.RESIZE_HORIZONTAL) != 0 + && mMinHSpan < idp.numColumns && mMaxHSpan > 1 + && mMinHSpan < mMaxHSpan; if (!mHorizontalResizeActive) { mDragHandles[INDEX_LEFT].setVisibility(GONE); mDragHandles[INDEX_RIGHT].setVisibility(GONE); diff --git a/src/com/android/launcher3/AutoInstallsLayout.java b/src/com/android/launcher3/AutoInstallsLayout.java index 6155c1a3de..6ecb51713c 100644 --- a/src/com/android/launcher3/AutoInstallsLayout.java +++ b/src/com/android/launcher3/AutoInstallsLayout.java @@ -94,11 +94,6 @@ public class AutoInstallsLayout { public static AutoInstallsLayout get(Context context, LauncherWidgetHolder appWidgetHolder, LayoutParserCallback callback) { - // LC: c51b2a221838aefb610b7146fc4ef7cb34e5e495 - if (!BuildConfig.ENABLE_AUTO_INSTALLS_LAYOUT) { - return null; - } - Partner partner = Partner.get(context.getPackageManager(), ACTION_LAUNCHER_CUSTOMIZATION); if (partner == null) { return null; @@ -282,15 +277,14 @@ public class AutoInstallsLayout { * * @param out array of size 2. */ - protected void parseContainerAndScreen(XmlPullParser parser, int[] out) - throws XmlPullParserException { + protected void parseContainerAndScreen(XmlPullParser parser, int[] out) { if (HOTSEAT_CONTAINER_NAME.equals(getAttributeValue(parser, ATTR_CONTAINER))) { out[0] = Favorites.CONTAINER_HOTSEAT; // Hack: hotseat items are stored using screen ids - out[1] = getAttributeValueAsInt(parser, ATTR_RANK); + out[1] = Integer.parseInt(getAttributeValue(parser, ATTR_RANK)); } else { out[0] = Favorites.CONTAINER_DESKTOP; - out[1] = getAttributeValueAsInt(parser, ATTR_SCREEN); + out[1] = Integer.parseInt(getAttributeValue(parser, ATTR_SCREEN)); } } @@ -704,16 +698,6 @@ public class AutoInstallsLayout { return value; } - protected static int getAttributeValueAsInt(XmlPullParser parser, String attribute) - throws XmlPullParserException { - String value = getAttributeValue(parser, attribute); - if (value == null) { - throw new XmlPullParserException("Missing attribute " + attribute); - } else { - return Integer.parseInt(value); - } - } - /** * Return attribute value, attempting launcher-specific namespace first * before falling back to anonymous attribute. diff --git a/src/com/android/launcher3/BaseActivity.java b/src/com/android/launcher3/BaseActivity.java index 664ddb9491..9e97d73f1f 100644 --- a/src/com/android/launcher3/BaseActivity.java +++ b/src/com/android/launcher3/BaseActivity.java @@ -46,8 +46,6 @@ import androidx.savedstate.SavedStateRegistry; import androidx.savedstate.SavedStateRegistryController; import com.android.launcher3.DeviceProfile.OnDeviceProfileChangeListener; -import com.android.launcher3.dagger.ActivityContextComponent; -import com.android.launcher3.dagger.LauncherComponentProvider; import com.android.launcher3.logging.StatsLogManager; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.testing.TestLogging; @@ -78,8 +76,7 @@ public abstract class BaseActivity extends Activity implements ActivityContext, DisplayInfoChangeListener { private static final String TAG = "BaseActivity"; - // TODO(b/406230491): Trun DEBUG back to false once done with investigation. - static final boolean DEBUG = true; + static final boolean DEBUG = false; public static final int INVISIBLE_BY_STATE_HANDLER = 1 << 0; public static final int INVISIBLE_BY_APP_TRANSITIONS = 1 << 1; @@ -194,8 +191,6 @@ public abstract class BaseActivity extends Activity implements ActivityContext, private ActionMode mCurrentActionMode; - private ActivityContextComponent mActivityComponent; - public BaseActivity() { mSavedStateRegistryController.performAttach(); registerActivityLifecycleCallbacks( @@ -217,15 +212,6 @@ public abstract class BaseActivity extends Activity implements ActivityContext, return mDPChangeListeners; } - @Override - public ActivityContextComponent getActivityComponent() { - if (mActivityComponent == null) { - mActivityComponent = (ActivityContextComponent) LauncherComponentProvider.get(this) - .getActivityContextComponentBuilder().activityContext(this).build(); - } - return mActivityComponent; - } - /** * Returns {@link StatsLogManager} for user event logging. */ diff --git a/src/com/android/launcher3/BubbleTextView.java b/src/com/android/launcher3/BubbleTextView.java index c92d1732a2..23b35c82df 100644 --- a/src/com/android/launcher3/BubbleTextView.java +++ b/src/com/android/launcher3/BubbleTextView.java @@ -23,10 +23,12 @@ import static android.graphics.fonts.FontStyle.FONT_WEIGHT_NORMAL; import static com.android.launcher3.graphics.PreloadIconDrawable.newPendingIcon; import static android.text.Layout.Alignment.ALIGN_NORMAL; +import static com.android.app.animation.Interpolators.EMPHASIZED; import static com.android.launcher3.BubbleTextView.RunningAppState.RUNNING; +import static com.android.launcher3.BubbleTextView.RunningAppState.NOT_RUNNING; import static com.android.launcher3.BubbleTextView.RunningAppState.MINIMIZED; import static com.android.launcher3.Flags.enableContrastTiles; -import static com.android.launcher3.Flags.enableScalabilityForDesktopExperience; +import static com.android.launcher3.Flags.enableCursorHoverStates; import static com.android.launcher3.allapps.AlphabeticalAppsList.PRIVATE_SPACE_PACKAGE; import static com.android.launcher3.graphics.PreloadIconDrawable.newPendingIcon; import static com.android.launcher3.icons.BitmapInfo.FLAG_NO_BADGE; @@ -34,14 +36,13 @@ import static com.android.launcher3.icons.BitmapInfo.FLAG_SKIP_USER_BADGE; import static com.android.launcher3.icons.BitmapInfo.FLAG_THEMED; import static com.android.launcher3.icons.GraphicsUtils.setColorAlphaBound; import static com.android.launcher3.icons.IconNormalizer.ICON_VISIBLE_AREA_FACTOR; -import static com.android.launcher3.icons.cache.CacheLookupFlag.DEFAULT_LOOKUP_FLAG; import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_INCREMENTAL_DOWNLOAD_ACTIVE; import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_INSTALL_SESSION_ACTIVE; import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_SHOW_DOWNLOAD_PROGRESS_MASK; -import static com.android.launcher3.util.MultiTranslateDelegate.INDEX_TASKBAR_APP_RUNNING_STATE_ANIM; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; +import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.content.Context; import android.content.res.ColorStateList; @@ -89,7 +90,6 @@ import com.android.launcher3.icons.DotRenderer; import com.android.launcher3.icons.FastBitmapDrawable; import com.android.launcher3.icons.IconCache.ItemInfoUpdateReceiver; import com.android.launcher3.icons.PlaceHolderIconDrawable; -import com.android.launcher3.icons.cache.CacheLookupFlag; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.ItemInfoWithIcon; @@ -147,6 +147,9 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, StringMatcherUtility.StringMatcher.getInstance(); private static final int BOLD_TEXT_ADJUSTMENT = FONT_WEIGHT_BOLD - FONT_WEIGHT_NORMAL; + public static final int LINE_INDICATOR_ANIM_DURATION = 150; + private static final float MINIMIZED_APP_INDICATOR_SCALE = 0.5f; + private static final int[] STATE_PRESSED = new int[]{android.R.attr.state_pressed}; private float mScaleForReorderBounce = 1f; @@ -182,6 +185,36 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, } }; + private static final Property<BubbleTextView, Integer> LINE_INDICATOR_COLOR_PROPERTY = + new Property<>(Integer.class, "lineIndicatorColor") { + + @Override + public Integer get(BubbleTextView bubbleTextView) { + return bubbleTextView.mLineIndicatorColor; + } + + @Override + public void set(BubbleTextView bubbleTextView, Integer color) { + bubbleTextView.mLineIndicatorColor = color; + bubbleTextView.invalidate(); + } + }; + + private static final Property<BubbleTextView, Float> LINE_INDICATOR_SCALE_PROPERTY = + new Property<>(Float.TYPE, "lineIndicatorScale") { + + @Override + public Float get(BubbleTextView bubbleTextView) { + return bubbleTextView.mLineIndicatorScale; + } + + @Override + public void set(BubbleTextView bubbleTextView, Float scale) { + bubbleTextView.mLineIndicatorScale = scale; + bubbleTextView.invalidate(); + } + }; + private final MultiTranslateDelegate mTranslateDelegate = new MultiTranslateDelegate(this); protected final ActivityContext mActivity; private FastBitmapDrawable mIcon; @@ -218,16 +251,20 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, private boolean mForceHideDot; // These fields, related to showing running apps, are only used for Taskbar. + private final int mRunningAppIndicatorWidth; private final int mRunningAppIndicatorHeight; private final int mRunningAppIndicatorTopMargin; private final Paint mRunningAppIndicatorPaint; private final Rect mRunningAppIconBounds = new Rect(); private RunningAppState mRunningAppState; - + private final int mRunningAppIndicatorColor; + private final int mMinimizedAppIndicatorColor; @ViewDebug.ExportedProperty(category = "launcher") private int mLineIndicatorColor; @ViewDebug.ExportedProperty(category = "launcher") - private float mLineIndicatorWidth; + private float mLineIndicatorScale; + private int mLineIndicatorAnimStartDelay; + private Animator mLineIndicatorAnim; private final String mMinimizedStateDescription; private final String mRunningStateDescription; @@ -266,6 +303,7 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, public BubbleTextView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); mActivity = ActivityContext.lookupContext(context); + FastBitmapDrawable.setFlagHoverEnabled(enableCursorHoverStates()); pref2 = PreferenceManager2.getInstance(context); mMinimizedStateDescription = getContext().getString( R.string.app_minimized_state_description); @@ -288,25 +326,22 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, setCenterVertically(mDeviceProfile.iconCenterVertically); } else if (mDisplay == DISPLAY_ALL_APPS || mDisplay == DISPLAY_PREDICTION_ROW || mDisplay == DISPLAY_SEARCH_RESULT_APP_ROW || mDisplay == DISPLAY_DRAWER_FOLDER) { - setTextSize(TypedValue.COMPLEX_UNIT_PX, - mDeviceProfile.getAllAppsProfile().getIconTextSizePx()); - setCompoundDrawablePadding( - mDeviceProfile.getAllAppsProfile().getIconDrawablePaddingPx()); - defaultIconSize = mDeviceProfile.getAllAppsProfile().getIconSizePx(); + setTextSize(TypedValue.COMPLEX_UNIT_PX, mDeviceProfile.allAppsIconTextSizePx); + setCompoundDrawablePadding(mDeviceProfile.allAppsIconDrawablePaddingPx); + defaultIconSize = mDeviceProfile.allAppsIconSizePx; LawnchairUtilsKt.overrideAllAppsTextColor(this); } else if (mDisplay == DISPLAY_FOLDER) { setTextSize(TypedValue.COMPLEX_UNIT_PX, mDeviceProfile.folderChildTextSizePx); setCompoundDrawablePadding(mDeviceProfile.folderChildDrawablePaddingPx); defaultIconSize = mDeviceProfile.folderChildIconSizePx; } else if (mDisplay == DISPLAY_SEARCH_RESULT) { - setTextSize(TypedValue.COMPLEX_UNIT_PX, - mDeviceProfile.getAllAppsProfile().getIconTextSizePx()); + setTextSize(TypedValue.COMPLEX_UNIT_PX, mDeviceProfile.allAppsIconTextSizePx); defaultIconSize = getResources().getDimensionPixelSize(R.dimen.search_row_icon_size); } else if (mDisplay == DISPLAY_SEARCH_RESULT_SMALL) { defaultIconSize = getResources().getDimensionPixelSize( R.dimen.search_row_small_icon_size); } else if (mDisplay == DISPLAY_TASKBAR) { - defaultIconSize = mDeviceProfile.getTaskbarProfile().getIconSize(); + defaultIconSize = mDeviceProfile.taskbarIconSize; } else { // widget_selection or shortcut_popup defaultIconSize = mDeviceProfile.iconSizePx; @@ -317,12 +352,19 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, defaultIconSize); a.recycle(); + mRunningAppIndicatorWidth = + getResources().getDimensionPixelSize(R.dimen.taskbar_running_app_indicator_width); mRunningAppIndicatorHeight = getResources().getDimensionPixelSize(R.dimen.taskbar_running_app_indicator_height); mRunningAppIndicatorTopMargin = getResources().getDimensionPixelSize( R.dimen.taskbar_running_app_indicator_top_margin); + mRunningAppIndicatorPaint = new Paint(); + mRunningAppIndicatorColor = getResources().getColor( + R.color.taskbar_running_app_indicator_color, context.getTheme()); + mMinimizedAppIndicatorColor = getResources().getColor( + R.color.taskbar_minimized_app_indicator_color, context.getTheme()); mLongPressHelper = new CheckLongPressHelper(this); @@ -361,7 +403,9 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, setBackground(null); mLineIndicatorColor = Color.TRANSPARENT; - mLineIndicatorWidth = 0; + mLineIndicatorScale = 0; + mLineIndicatorAnimStartDelay = 0; + cancelLineIndicatorAnim(); setTag(null); if (mIconLoadRequest != null) { @@ -447,36 +491,58 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, * Directly set the icon and label. */ @UiThread - public void applyIconAndLabel(Drawable icon, CharSequence title, CharSequence description) { + public void applyIconAndLabel(Drawable icon, CharSequence label) { applyCompoundDrawables(icon); - setText(title); - setContentDescription(description); + setText(label); + setContentDescription(label); } - public void setRunningAppState(RunningAppState runningAppState) { + /** Updates whether the app this view represents is currently running. */ + @UiThread + public void updateRunningState(RunningAppState runningAppState, boolean animate) { + if (runningAppState.equals(mRunningAppState)) { + return; + } mRunningAppState = runningAppState; + cancelLineIndicatorAnim(); + + int color = switch (mRunningAppState) { + case NOT_RUNNING -> Color.TRANSPARENT; + case RUNNING -> mRunningAppIndicatorColor; + case MINIMIZED -> mMinimizedAppIndicatorColor; + }; + float scale = switch (mRunningAppState) { + case NOT_RUNNING -> 0; + case RUNNING -> 1; + case MINIMIZED -> MINIMIZED_APP_INDICATOR_SCALE; + }; + + if (!animate) { + mLineIndicatorColor = color; + mLineIndicatorScale = scale; + invalidate(); + return; + } + + AnimatorSet lineIndicatorAnim = new AnimatorSet(); + mLineIndicatorAnim = lineIndicatorAnim; + Animator colorAnimator = ObjectAnimator.ofArgb(this, LINE_INDICATOR_COLOR_PROPERTY, color); + Animator scaleAnimator = ObjectAnimator.ofFloat(this, LINE_INDICATOR_SCALE_PROPERTY, scale); + lineIndicatorAnim.playTogether(colorAnimator, scaleAnimator); + + lineIndicatorAnim.setInterpolator(EMPHASIZED); + lineIndicatorAnim.setStartDelay(mLineIndicatorAnimStartDelay); + lineIndicatorAnim.setDuration(LINE_INDICATOR_ANIM_DURATION).start(); } - public RunningAppState getRunningAppState() { - return mRunningAppState; + public void setLineIndicatorAnimStartDelay(int lineIndicatorAnimStartDelay) { + mLineIndicatorAnimStartDelay = lineIndicatorAnimStartDelay; } - public int getLineIndicatorColor() { - return mLineIndicatorColor; - } - - public void setLineIndicatorColor(int lineIndicatorColor) { - mLineIndicatorColor = lineIndicatorColor; - invalidate(); - } - - public float getLineIndicatorWidth() { - return mLineIndicatorWidth; - } - - public void setLineIndicatorWidth(float lineIndicatorWidth) { - mLineIndicatorWidth = lineIndicatorWidth; - invalidate(); + private void cancelLineIndicatorAnim() { + if (mLineIndicatorAnim != null) { + mLineIndicatorAnim.cancel(); + } } /** @@ -543,9 +609,8 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, } private void setNonPendingIcon(ItemInfoWithIcon info) { - boolean isPrivateSpaceIcon = Objects.equals(info.getTargetPackage(), PRIVATE_SPACE_PACKAGE); // Set nonPendingIcon acts as a restart which should refresh the flag state when applicable. - int flags = isPrivateSpaceIcon + int flags = Objects.equals(info.getTargetPackage(), PRIVATE_SPACE_PACKAGE) ? info.bitmap.creationFlags : shouldUseTheme() ? FLAG_THEMED : 0; // Remove badge on icons smaller than 48dp. if (mHideBadge || mDisplay == DISPLAY_SEARCH_RESULT_SMALL) { @@ -557,9 +622,6 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, FastBitmapDrawable iconDrawable = info.newIcon(getContext(), flags); mDotParams.appColor = iconDrawable.getIconColor(); mDotParams.dotColor = Themes.getAttrColor(getContext(), R.attr.notificationDotColor); - if (isPrivateSpaceIcon) { - iconDrawable.setAnimationEnabled(false); - } setIcon(iconDrawable); } @@ -575,39 +637,8 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, * Only if actual text can be displayed in two line, the {@code true} value will be effective. */ protected boolean shouldUseTwoLine() { - // For all apps and search UI, respect user selection in home settings. Note that all apps - // cell spec can declare support for two line labels, but it's used primarily to decide - // whether the BubbleTextView height needs to be increased to accommodate an extra line of - // text. - if (mDisplay == DISPLAY_ALL_APPS || mDisplay == DISPLAY_PREDICTION_ROW) { - return mDeviceProfile.inv.enableTwoLinesInAllApps; - } - - // Otherwise, show two lines if the cell declares it can fit two line label. - return getCellSpecMaxTextLineCount() == 2; - } - - /** - * @return The number of lines the that the cell spec associated with the BubbleTextView - * declared it can support. - */ - private int getCellSpecMaxTextLineCount() { - if (!enableScalabilityForDesktopExperience()) { - return 1; - } - - switch (mDisplay) { - case DISPLAY_ALL_APPS, DISPLAY_PREDICTION_ROW -> { - return mDeviceProfile.getAllAppsProfile().getMaxAllAppsTextLineCount(); - } - case DISPLAY_WORKSPACE -> { - return mDeviceProfile.maxIconTextLineCount; - } - case DISPLAY_FOLDER -> { - return mDeviceProfile.maxFolderChildTextLineCount; - } - } - return 1; + return mDeviceProfile.inv.enableTwoLinesInAllApps + && (mDisplay == DISPLAY_ALL_APPS || mDisplay == DISPLAY_PREDICTION_ROW); } @UiThread @@ -869,25 +900,22 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, /** Draws a line under the app icon if this is representing a running app in Desktop Mode. */ protected void drawRunningAppIndicatorIfNecessary(Canvas canvas) { if (mDisplay != DISPLAY_TASKBAR - || Float.compare(mLineIndicatorWidth, 0) == 0 + || mLineIndicatorScale == 0 || mLineIndicatorColor == Color.TRANSPARENT) { return; } getIconBounds(mRunningAppIconBounds); Utilities.scaleRectAboutCenter(mRunningAppIconBounds, ICON_VISIBLE_AREA_FACTOR); - float taskbarAppRunningStateAnimOffset = - mTranslateDelegate.getTranslationY(INDEX_TASKBAR_APP_RUNNING_STATE_ANIM).getValue(); - final float indicatorTop = mRunningAppIconBounds.bottom - + mRunningAppIndicatorTopMargin - - taskbarAppRunningStateAnimOffset; + final int indicatorTop = mRunningAppIconBounds.bottom + mRunningAppIndicatorTopMargin; + final float indicatorWidth = mRunningAppIndicatorWidth * mLineIndicatorScale; final float cornerRadius = mRunningAppIndicatorHeight / 2f; mRunningAppIndicatorPaint.setColor(mLineIndicatorColor); canvas.drawRoundRect( - mRunningAppIconBounds.centerX() - mLineIndicatorWidth / 2f, + mRunningAppIconBounds.centerX() - indicatorWidth / 2f, indicatorTop, - mRunningAppIconBounds.centerX() + mLineIndicatorWidth / 2f, + mRunningAppIconBounds.centerX() + indicatorWidth / 2f, indicatorTop + mRunningAppIndicatorHeight, cornerRadius, cornerRadius, @@ -966,7 +994,7 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, if (mCenterVertically) { Paint.FontMetrics fm = getPaint().getFontMetrics(); int cellHeightPx = mIconSize + getCompoundDrawablePadding() + - (int) Math.ceil(fm.bottom - fm.top) * getCellSpecMaxTextLineCount(); + (int) Math.ceil(fm.bottom - fm.top); setPadding(getPaddingLeft(), (height - cellHeightPx) / 2, getPaddingRight(), getPaddingBottom()); } @@ -983,8 +1011,8 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, // Only apply two line for all_apps and device search only if necessary. if (shouldUseTwoLine() && (mLastOriginalText != null)) { int allowedVerticalSpace = height - getPaddingTop() - getPaddingBottom() - - mDeviceProfile.getAllAppsProfile().getIconSizePx() - - mDeviceProfile.getAllAppsProfile().getIconDrawablePaddingPx(); + - mDeviceProfile.allAppsIconSizePx + - mDeviceProfile.allAppsIconDrawablePaddingPx; CharSequence modifiedString = modifyTitleToSupportMultiLine( MeasureSpec.getSize(widthMeasureSpec) - getCompoundPaddingLeft() - getCompoundPaddingRight(), @@ -1226,7 +1254,7 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, if (mIcon instanceof PreloadIconDrawable p) { pid = p; pid.setLevel(progressLevel); - pid.setDisabled(isIconDisabled(info)); + pid.setIsDisabled(isIconDisabled(info)); } else { pid = makePreloadIcon(info); setIcon(pid); @@ -1249,7 +1277,7 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, final PreloadIconDrawable preloadDrawable = newPendingIcon(getContext(), info); preloadDrawable.setLevel(progressLevel); - preloadDrawable.setDisabled(isIconDisabled(info)); + preloadDrawable.setIsDisabled(isIconDisabled(info)); return preloadDrawable; } @@ -1360,7 +1388,7 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, /** Sets the icon visual state to disabled or not. */ public void setIconDisabled(boolean isDisabled) { if (mIcon != null) { - mIcon.setDisabled(isDisabled); + mIcon.setIsDisabled(isDisabled); } } @@ -1425,14 +1453,13 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, * Verifies that the current icon is high-res otherwise posts a request to load the icon. */ public void verifyHighRes() { - CacheLookupFlag expectedFlag = DEFAULT_LOOKUP_FLAG.withThemeIcon(shouldUseTheme()); if (getTag() instanceof ItemInfoWithIcon info && !mHighResUpdateInProgress - && info.getMatchingLookupFlag().isVisuallyLessThan(expectedFlag)) { + && info.getMatchingLookupFlag().useLowRes()) { if (mIconLoadRequest != null) { mIconLoadRequest.cancel(); } mIconLoadRequest = LauncherAppState.getInstance(getContext()).getIconCache() - .updateIconInBackground(BubbleTextView.this, info, expectedFlag); + .updateIconInBackground(BubbleTextView.this, info); } } diff --git a/src/com/android/launcher3/ButtonDropTarget.java b/src/com/android/launcher3/ButtonDropTarget.java index 7f9b2403b4..1cf9ae379e 100644 --- a/src/com/android/launcher3/ButtonDropTarget.java +++ b/src/com/android/launcher3/ButtonDropTarget.java @@ -240,10 +240,7 @@ public abstract class ButtonDropTarget extends TextView protected abstract boolean supportsDrop(ItemInfo info); - /** - * Returns the accessibility action that {@link ButtonDropTarget} supports for the itemInfo. - */ - public abstract int getSupportedAccessibilityAction(ItemInfo info, View view); + public abstract boolean supportsAccessibilityDrop(ItemInfo info, View view); @Override public boolean isDropEnabled() { @@ -295,16 +292,14 @@ public abstract class ButtonDropTarget extends TextView @Override public void prepareAccessibilityDrop() { } - /** Performs a drop in case of accessibility services with the provided action for the item. */ - public abstract void onAccessibilityDrop(View view, ItemInfo item, int action); + public abstract void onAccessibilityDrop(View view, ItemInfo item); public abstract void completeDrop(DragObject d); @Override public void getHitRectRelativeToDragLayer(android.graphics.Rect outRect) { super.getHitRect(outRect); - outRect.bottom += - mActivityContext.getDeviceProfile().getDropTargetProfile().getDragPaddingPx(); + outRect.bottom += mActivityContext.getDeviceProfile().dropTargetDragPaddingPx; sTempCords[0] = sTempCords[1] = 0; mActivityContext.getDragLayer().getDescendantCoordRelativeToSelf(this, sTempCords); diff --git a/src/com/android/launcher3/CellLayout.java b/src/com/android/launcher3/CellLayout.java index 4aff6f3107..3fbf335c11 100644 --- a/src/com/android/launcher3/CellLayout.java +++ b/src/com/android/launcher3/CellLayout.java @@ -1062,7 +1062,7 @@ public class CellLayout extends ViewGroup { /** * Returns the amount of space left over after subtracting padding and cells. This space will be * very small, a few pixels at most, and is a result of rounding down when calculating the cell - * width in {@link deviceprofile#calculateCellWidth(int, int, int)}. + * width in {@link DeviceProfile#calculateCellWidth(int, int, int)}. */ public int getUnusedHorizontalSpace() { return getMeasuredWidth() - getPaddingLeft() - getPaddingRight() - (mCountX * mCellWidth) @@ -1086,8 +1086,10 @@ public class CellLayout extends ViewGroup { int delay, boolean permanent, boolean adjustOccupied) { ShortcutAndWidgetContainer clc = getShortcutsAndWidgets(); - if (clc.indexOfChild(child) != -1 && (child instanceof Reorderable item)) { + if (clc.indexOfChild(child) != -1 && (child instanceof Reorderable)) { final CellLayoutLayoutParams lp = (CellLayoutLayoutParams) child.getLayoutParams(); + final ItemInfo info = (ItemInfo) child.getTag(); + final Reorderable item = (Reorderable) child; // We cancel any existing animations if (mReorderAnimators.containsKey(lp)) { @@ -1493,7 +1495,7 @@ public class CellLayout extends ViewGroup { lp.setCellX(lp.getTmpCellX()); lp.setCellY(lp.getTmpCellY()); if (requiresDbUpdate) { - mActivity.getModelWriter().modifyItemInDatabase(info, container, + Launcher.cast(mActivity).getModelWriter().modifyItemInDatabase(info, container, screenId, lp.getCellX(), lp.getCellY(), lp.cellHSpan, lp.cellVSpan); } } @@ -1863,7 +1865,8 @@ public class CellLayout extends ViewGroup { public void markCellsAsOccupiedForView(View view) { if (view instanceof LauncherAppWidgetHostView - && view.getTag() instanceof LauncherAppWidgetInfo info) { + && view.getTag() instanceof LauncherAppWidgetInfo) { + LauncherAppWidgetInfo info = (LauncherAppWidgetInfo) view.getTag(); CellPos pos = mActivity.getCellPosMapper().mapModelToPresenter(info); mOccupied.markCells(pos.cellX, pos.cellY, info.spanX, info.spanY, true); return; @@ -1876,7 +1879,8 @@ public class CellLayout extends ViewGroup { public void markCellsAsUnoccupiedForView(View view) { if (view instanceof LauncherAppWidgetHostView - && view.getTag() instanceof LauncherAppWidgetInfo info) { + && view.getTag() instanceof LauncherAppWidgetInfo) { + LauncherAppWidgetInfo info = (LauncherAppWidgetInfo) view.getTag(); CellPos pos = mActivity.getCellPosMapper().mapModelToPresenter(info); mOccupied.markCells(pos.cellX, pos.cellY, info.spanX, info.spanY, false); return; diff --git a/src/com/android/launcher3/CheckLongPressHelper.java b/src/com/android/launcher3/CheckLongPressHelper.java index 46fc0fc4fa..e9cd16c99a 100644 --- a/src/com/android/launcher3/CheckLongPressHelper.java +++ b/src/com/android/launcher3/CheckLongPressHelper.java @@ -22,7 +22,6 @@ import android.view.View; import android.view.ViewConfiguration; import com.android.launcher3.util.TouchUtil; -import com.android.window.flags2.Flags; /** * Utility class to handle tripper long press or right click on a view with custom timeout and @@ -141,15 +140,8 @@ public class CheckLongPressHelper { } private void triggerLongPress() { - boolean showHomeBehindDesktop; - if (false) { - // LC-Ignored: Lawnchair-TODO: Intentional unless we can find a way to detect QPR1 build or skip to Android 17 - showHomeBehindDesktop = Flags.showHomeBehindDesktop(); - } else { - showHomeBehindDesktop = false; - } if ((mView.getParent() != null) - && (showHomeBehindDesktop || mView.hasWindowFocus()) + && mView.hasWindowFocus() && (!mView.isPressed() || mListener != null) && !mHasPerformedLongPress) { boolean handled; diff --git a/src/com/android/launcher3/DeleteDropTarget.java b/src/com/android/launcher3/DeleteDropTarget.java index d8eaa23fed..82a398553d 100644 --- a/src/com/android/launcher3/DeleteDropTarget.java +++ b/src/com/android/launcher3/DeleteDropTarget.java @@ -32,7 +32,6 @@ import com.android.launcher3.model.data.CollectionInfo; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.LauncherAppWidgetInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; -import com.android.launcher3.util.Preconditions; import com.patrykmichalik.opto.core.PreferenceExtensionsKt; import app.lawnchair.preferences2.PreferenceManager2; @@ -75,7 +74,8 @@ public class DeleteDropTarget extends ButtonDropTarget { /** * @return true for items that should have a "Remove" action in accessibility. */ - private boolean supportsAccessibilityDrop(ItemInfo info, View view) { + @Override + public boolean supportsAccessibilityDrop(ItemInfo info, View view) { if (info instanceof WorkspaceItemInfo) { // Support the action unless the item is in a context menu. return canRemove(info); @@ -85,14 +85,6 @@ public class DeleteDropTarget extends ButtonDropTarget { || (info instanceof CollectionInfo); } - @Override - public int getSupportedAccessibilityAction(ItemInfo info, View view) { - if (supportsAccessibilityDrop(info, view)) { - return getAccessibilityAction(); - } - return LauncherAccessibilityDelegate.INVALID; - } - @Override public int getAccessibilityAction() { return LauncherAccessibilityDelegate.REMOVE; @@ -151,7 +143,7 @@ public class DeleteDropTarget extends ButtonDropTarget { public void completeDrop(DragObject d) { ItemInfo item = d.dragInfo; if (canRemove(item)) { - mDropTargetHandler.onDeleteComplete(item, /* view */ null); + mDropTargetHandler.onDeleteComplete(item); } else if (mText == getResources().getText(R.string.remove_drop_target_label)) { Log.wtf("b/379606516", "If the drop target text is 'remove', then" + " users should always be able to delete the item from launcher's db." @@ -163,8 +155,7 @@ public class DeleteDropTarget extends ButtonDropTarget { * Removes the item from the workspace. If the view is not null, it also removes the view. */ @Override - public void onAccessibilityDrop(View view, ItemInfo item, int action) { - Preconditions.assertTrue(action == getAccessibilityAction()); + public void onAccessibilityDrop(View view, ItemInfo item) { // Remove the item from launcher and the db, we can ignore the containerInfo in this call // because we already remove the drag view from the folder (if the drag originated from // a folder) in Folder.beginDrag() diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java index 5931295c84..f9a9aa6982 100644 --- a/src/com/android/launcher3/DeviceProfile.java +++ b/src/com/android/launcher3/DeviceProfile.java @@ -16,19 +16,19 @@ package com.android.launcher3; +import static com.android.app.animation.Interpolators.LINEAR; +import static com.android.launcher3.Flags.enableOverviewIconMenu; +import static com.android.launcher3.Flags.enableScalingRevealHomeAnimation; import static com.android.launcher3.InvariantDeviceProfile.INDEX_DEFAULT; import static com.android.launcher3.InvariantDeviceProfile.INDEX_LANDSCAPE; import static com.android.launcher3.InvariantDeviceProfile.INDEX_TWO_PANEL_LANDSCAPE; import static com.android.launcher3.InvariantDeviceProfile.INDEX_TWO_PANEL_PORTRAIT; -import static com.android.launcher3.InvariantDeviceProfile.createDisplayOptionSpec; import static com.android.launcher3.Utilities.dpiFromPx; import static com.android.launcher3.Utilities.pxFromSp; -import static com.android.launcher3.folder.ClippedFolderIconLayoutRule.ICON_OVERLAP_FACTOR; import static com.android.launcher3.icons.IconNormalizer.ICON_VISIBLE_AREA_FACTOR; import static com.android.launcher3.testing.shared.ResourceUtils.INVALID_RESOURCE_HANDLE; import static com.android.launcher3.testing.shared.ResourceUtils.pxFromDp; import static com.android.launcher3.testing.shared.ResourceUtils.roundPxValueFromFloat; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; import static com.android.wm.shell.Flags.enableBubbleBar; import static com.android.wm.shell.Flags.enableBubbleBarOnPhones; import static com.android.wm.shell.Flags.enableTinyTaskbar; @@ -50,19 +50,12 @@ import android.view.Surface; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; - import androidx.core.content.res.ResourcesCompat; + import app.lawnchair.DeviceProfileOverrides.TextFactors; import com.android.launcher3.CellLayout.ContainerType; import com.android.launcher3.DevicePaddings.DevicePadding; -import com.android.launcher3.InvariantDeviceProfile.DisplayOptionSpec; -import com.android.launcher3.deviceprofile.AllAppsProfile; -import com.android.launcher3.deviceprofile.BottomSheetProfile; -import com.android.launcher3.deviceprofile.DeviceProperties; -import com.android.launcher3.deviceprofile.DropTargetProfile; -import com.android.launcher3.deviceprofile.HotseatProfile; -import com.android.launcher3.deviceprofile.OverviewProfile; -import com.android.launcher3.deviceprofile.TaskbarProfile; +import com.android.launcher3.folder.ClippedFolderIconLayoutRule; import com.android.launcher3.graphics.ThemeManager; import com.android.launcher3.icons.DotRenderer; import com.android.launcher3.model.data.ItemInfo; @@ -74,7 +67,6 @@ import com.android.launcher3.responsive.ResponsiveCellSpecsProvider; import com.android.launcher3.responsive.ResponsiveSpec.Companion.ResponsiveSpecType; import com.android.launcher3.responsive.ResponsiveSpec.DimensionType; import com.android.launcher3.responsive.ResponsiveSpecsProvider; -import com.android.launcher3.testing.shared.ResourceUtils; import com.android.launcher3.util.CellContentDimensions; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.DisplayController.Info; @@ -102,6 +94,8 @@ public class DeviceProfile { private static final float MIN_FOLDER_TEXT_SIZE_SP = 16f; private static final float MIN_WIDGET_PADDING_DP = 6f; + // Minimum aspect ratio beyond which an extra top padding may be applied to a bottom sheet. + private static final float MIN_ASPECT_RATIO_FOR_EXTRA_TOP_PADDING = 1.5f; private static final float MAX_ASPECT_RATIO_FOR_ALTERNATE_EDIT_STATE = 1.5f; public static final PointF DEFAULT_SCALE = new PointF(1.0f, 1.0f); @@ -110,22 +104,36 @@ public class DeviceProfile { }; public final InvariantDeviceProfile inv; - private final BottomSheetProfile mBottomSheetProfile; - private final DisplayOptionSpec mDisplayOptionSpec; private final Info mInfo; private final DisplayMetrics mMetrics; private final IconSizeSteps mIconSizeSteps; // Device properties - - private final DeviceProperties mDeviceProperties; - + public final boolean isTablet; + public final boolean isPhone; + public final boolean transposeLayoutWithOrientation; + public final boolean isMultiDisplay; + public final boolean isTwoPanels; public boolean isPredictiveBackSwipe; public final boolean isQsbInline; // Device properties in current orientation + public final boolean isLandscape; + public final boolean isMultiWindowMode; + public final boolean isGestureMode; public final boolean isLeftRightSplit; + + public final int windowX; + public final int windowY; + public final int widthPx; + public final int heightPx; + public final int availableWidthPx; + public final int availableHeightPx; + public final int rotationHint; + + public final float aspectRatio; + private final boolean mIsScalableGrid; private final int mTypeIndex; @@ -182,7 +190,6 @@ public class DeviceProfile { public int iconDrawablePaddingPx; private int mIconDrawablePaddingOriginalPx; public boolean iconCenterVertically; - public int maxIconTextLineCount; public float cellScaleToFit; public int cellWidthPx; @@ -213,33 +220,71 @@ public class DeviceProfile { public int folderChildIconSizePx; public int folderChildTextSizePx; public int folderChildDrawablePaddingPx; - public int maxFolderChildTextLineCount; // Hotseat - private final HotseatProfile hotseatProfile; public int numShownHotseatIcons; public int hotseatCellHeightPx; private int mHotseatColumnSpan; private int mHotseatWidthPx; // not used in vertical bar layout + public final boolean areNavButtonsInline; // In portrait: size = height, in landscape: size = width public int hotseatBarSizePx; public int hotseatBarBottomSpacePx; + public int hotseatBarEndOffset; public int hotseatQsbSpace; + public int inlineNavButtonsEndSpacingPx; + public int navButtonsLayoutWidthPx; + public int springLoadedHotseatBarTopMarginPx; + // These 2 values are only used for isVerticalBar + // Padding between edge of screen and hotseat + public final int mHotseatBarEdgePaddingPx; + // Space between hotseat and workspace (not used in responsive) + public final int mHotseatBarWorkspaceSpacePx; public int hotseatQsbWidth; // only used when isQsbInline + public final int hotseatQsbHeight; + public final int hotseatQsbVisualHeight; + private final int hotseatQsbShadowHeight; public int hotseatBorderSpace; + private final int mMinHotseatIconSpacePx; + private final int mMinHotseatQsbWidthPx; + private final int mMaxHotseatIconSpacePx; // Space required for the bubble bar between the hotseat and the edge of the screen. If there's // not enough space, the hotseat will adjust itself for the bubble bar. private final int mBubbleBarSpaceThresholdPx; - private AllAppsProfile mAllAppsProfile; + // Bottom sheets + public int bottomSheetTopPadding; + public int bottomSheetOpenDuration; + public int bottomSheetCloseDuration; + public float bottomSheetWorkspaceScale; + public float bottomSheetDepth; + + // All apps + public Point allAppsBorderSpacePx; public int allAppsShiftRange; public Rect allAppsPadding = new Rect(); public int allAppsOpenDuration; public int allAppsCloseDuration; + public int allAppsCellHeightPx; + public int allAppsCellWidthPx; + public int allAppsIconSizePx; + public int allAppsIconDrawablePaddingPx; public int allAppsLeftRightMargin; public final int numShownAllAppsColumns; + public float allAppsIconTextSizePx; - private final OverviewProfile overviewProfile; + // Overview + public int overviewTaskMarginPx; + public int overviewTaskIconSizePx; + public int overviewTaskIconDrawableSizePx; + public int overviewTaskIconDrawableSizeGridPx; + public int overviewTaskThumbnailTopMarginPx; + public final int overviewActionsHeight; + public final int overviewActionsTopMarginPx; + public final int overviewActionsButtonSpacing; + public int overviewPageSpacing; + public int overviewRowSpacing; + public int overviewGridSideMargin; // Split staging public int splitPlaceholderInset; @@ -247,7 +292,16 @@ public class DeviceProfile { // Widgets private final ViewScaleProvider mViewScaleProvider; - private final DropTargetProfile mDropTargetProfile; + // Drop Target + public int dropTargetBarSizePx; + public int dropTargetBarTopMarginPx; + public int dropTargetBarBottomMarginPx; + public int dropTargetDragPaddingPx; + public int dropTargetTextSizePx; + public int dropTargetHorizontalPaddingPx; + public int dropTargetVerticalPaddingPx; + public int dropTargetGapPx; + public int dropTargetButtonWorkspaceEdgeGapPx; // Insets private final Rect mInsets = new Rect(); @@ -261,54 +315,46 @@ public class DeviceProfile { public final DotRenderer mDotRendererAllApps; // Taskbar - private final TaskbarProfile mTaskbarProfile; public boolean isTaskbarPresent; // Whether Taskbar will inset the bottom of apps by taskbarSize. public boolean isTaskbarPresentInApps; + public final int taskbarHeight; + public final int stashedTaskbarHeight; + public final int taskbarBottomMargin; + public final int taskbarIconSize; + private final int mTransientTaskbarClaimedSpace; + // If true, used to layout taskbar in 3 button navigation mode. + public final boolean startAlignTaskbar; + public final boolean isTransientTaskbar; // DragController public int flingToDeleteThresholdVelocity; /** Used only as an alternative to mocking when null values cannot be used. */ @VisibleForTesting public DeviceProfile() { - mDeviceProperties = new DeviceProperties( - 0,0, - 0, - 0,0, - 0,0, - 0.0f, - false, - false, - false, - false, - false, - false, - false, - false - ); - mBottomSheetProfile = new BottomSheetProfile(0, 0, 0, 0f, 0f); - overviewProfile = new OverviewProfile( - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ); - hotseatProfile = new HotseatProfile(false, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); - mTaskbarProfile = new TaskbarProfile(0, 0, 0, 0, 0, false, false); inv = null; - mDisplayOptionSpec = null; mInfo = null; mMetrics = null; mIconSizeSteps = null; + isTablet = false; + isPhone = false; + transposeLayoutWithOrientation = false; + isMultiDisplay = false; + isTwoPanels = false; isPredictiveBackSwipe = false; isQsbInline = false; + isLandscape = false; + isMultiWindowMode = false; + isGestureMode = false; isLeftRightSplit = false; + windowX = 0; + windowY = 0; + widthPx = 0; + heightPx = 0; + availableWidthPx = 0; + availableHeightPx = 0; + rotationHint = 0; + aspectRatio = 1; mIsScalableGrid = false; mTypeIndex = 0; mIsResponsiveGrid = false; @@ -321,16 +367,34 @@ public class DeviceProfile { mWorkspacePageIndicatorOverlapWorkspace = 0; numFolderRows = 0; numFolderColumns = 0; - mDropTargetProfile = new DropTargetProfile(0, 0, 0, 0, 0, 0, 0, 0, 0); folderLabelTextScale = 0; + areNavButtonsInline = false; + mHotseatBarEdgePaddingPx = 0; + mHotseatBarWorkspaceSpacePx = 0; hotseatQsbWidth = 0; + hotseatQsbHeight = 0; + hotseatQsbVisualHeight = 0; + hotseatQsbShadowHeight = 0; hotseatBorderSpace = 0; + mMinHotseatIconSpacePx = 0; + mMinHotseatQsbWidthPx = 0; + mMaxHotseatIconSpacePx = 0; + inlineNavButtonsEndSpacingPx = 0; mBubbleBarSpaceThresholdPx = 0; numShownAllAppsColumns = 0; + overviewActionsHeight = 0; + overviewActionsTopMarginPx = 0; + overviewActionsButtonSpacing = 0; mViewScaleProvider = null; mDotRendererWorkSpace = null; mDotRendererAllApps = null; - mAllAppsProfile = new AllAppsProfile(new Point(0, 0), 0, 0, 0f, 0, 0, 0); + taskbarHeight = 0; + stashedTaskbarHeight = 0; + taskbarBottomMargin = 0; + taskbarIconSize = 0; + mTransientTaskbarClaimedSpace = 0; + startAlignTaskbar = false; + isTransientTaskbar = false; mTextFactors = new TextFactors(0,0,0); preferenceManager2 = null; } @@ -346,25 +410,22 @@ public class DeviceProfile { boolean transposeLayoutWithOrientation, boolean isMultiDisplay, boolean isGestureMode, @NonNull final ViewScaleProvider viewScaleProvider, @NonNull final Consumer<DeviceProfile> dimensionOverrideProvider, - boolean isTransientTaskbar, DisplayOptionSpec displayOptionSpec) { + boolean isTransientTaskbar) { mTextFactors = DeviceProfileOverrides.INSTANCE.get(context).getTextFactors(); preferenceManager2 = PreferenceManager2.INSTANCE.get(context); allAppsCellHeightMultiplier = PreferenceExtensionsKt .firstBlocking(preferenceManager2.getDrawerCellHeightFactor()); this.inv = inv; - - mDeviceProperties = DeviceProperties.Factory.createDeviceProperties( - info, - windowBounds, - transposeLayoutWithOrientation, - isMultiDisplay, - isMultiWindowMode, - isGestureMode - ); - + this.isLandscape = windowBounds.isLandscape(); + this.isMultiWindowMode = isMultiWindowMode; + this.transposeLayoutWithOrientation = transposeLayoutWithOrientation; + this.isMultiDisplay = isMultiDisplay; + this.isGestureMode = isGestureMode; + windowX = windowBounds.bounds.left; + windowY = windowBounds.bounds.top; + this.rotationHint = windowBounds.rotationHint; mInsets.set(windowBounds.insets); - this.mDisplayOptionSpec = displayOptionSpec; // TODO(b/241386436): shouldn't change any launcher behaviour mIsResponsiveGrid = inv.workspaceSpecsId != INVALID_RESOURCE_HANDLE @@ -377,43 +438,75 @@ public class DeviceProfile { mIsScalableGrid = inv.isScalable && !isVerticalBarLayout() && !isMultiWindowMode; // Determine device posture. mInfo = info; + isTablet = info.isTablet(windowBounds); + isPhone = !isTablet; + isTwoPanels = isTablet && isMultiDisplay; boolean isTaskBarEnabled = PreferenceExtensionsKt.firstBlocking(preferenceManager2.getEnableTaskbarOnPhone()); boolean taskbarOrBubbleBarOnPhones = enableTinyTaskbar() || (enableBubbleBar() && enableBubbleBarOnPhones()); - isTaskbarPresent = isTaskBarEnabled && (mDeviceProperties.isTablet() || (taskbarOrBubbleBarOnPhones && isGestureMode)) + isTaskbarPresent = isTaskBarEnabled && (isTablet || (taskbarOrBubbleBarOnPhones && isGestureMode)) && wmProxy.isTaskbarDrawnInProcess(); // Some more constants. context = getContext(context, info, inv.isFixedLandscape || isVerticalBarLayout() - || (mDeviceProperties.isTablet() && mDeviceProperties.isLandscape()) + || (isTablet && isLandscape) ? Configuration.ORIENTATION_LANDSCAPE : Configuration.ORIENTATION_PORTRAIT, windowBounds); final Resources res = context.getResources(); - - workspacePageIndicatorHeight = res.getDimensionPixelSize( - R.dimen.workspace_page_indicator_height); - mWorkspacePageIndicatorOverlapWorkspace = - res.getDimensionPixelSize(R.dimen.workspace_page_indicator_overlap_workspace); - - overviewProfile = OverviewProfile.Factory.createOverviewProfile(res); - mMetrics = res.getDisplayMetrics(); mIconSizeSteps = new IconSizeSteps(res); - mTypeIndex = displayOptionSpec.typeIndex; + // Determine sizes. + widthPx = windowBounds.bounds.width(); + heightPx = windowBounds.bounds.height(); + availableWidthPx = windowBounds.availableSize.x; + availableHeightPx = windowBounds.availableSize.y; - mTaskbarProfile = TaskbarProfile.Factory.createTaskbarProfile( - res, - isTransientTaskbar, - isTaskbarPresent, - mMetrics, - displayOptionSpec, - mTypeIndex, - inv - ); + aspectRatio = ((float) Math.max(widthPx, heightPx)) / Math.min(widthPx, heightPx); + if (isTwoPanels) { + if (isLandscape) { + mTypeIndex = INDEX_TWO_PANEL_LANDSCAPE; + } else { + mTypeIndex = INDEX_TWO_PANEL_PORTRAIT; + } + } else { + if (isLandscape) { + mTypeIndex = INDEX_LANDSCAPE; + } else { + mTypeIndex = INDEX_DEFAULT; + } + } + + this.isTransientTaskbar = isTransientTaskbar; + int transientTaskbarIconSize = pxFromDp(inv.transientTaskbarIconSize[mTypeIndex], mMetrics); + int transientTaskbarBottomMargin = + res.getDimensionPixelSize(R.dimen.transient_taskbar_bottom_margin); + int transientTaskbarHeight = + Math.round((transientTaskbarIconSize * ICON_VISIBLE_AREA_FACTOR) + + (2 * res.getDimensionPixelSize(R.dimen.transient_taskbar_padding))); + mTransientTaskbarClaimedSpace = transientTaskbarHeight + 2 * transientTaskbarBottomMargin; + + if (!isTaskbarPresent) { + taskbarIconSize = taskbarHeight = stashedTaskbarHeight = taskbarBottomMargin = 0; + startAlignTaskbar = false; + } else if (isTransientTaskbar) { + taskbarIconSize = transientTaskbarIconSize; + taskbarHeight = transientTaskbarHeight; + stashedTaskbarHeight = + res.getDimensionPixelSize(R.dimen.transient_taskbar_stashed_height); + taskbarBottomMargin = transientTaskbarBottomMargin; + startAlignTaskbar = false; + } else { + taskbarIconSize = pxFromDp(ResourcesCompat.getFloat(res, R.dimen.taskbar_icon_size), + mMetrics); + taskbarHeight = res.getDimensionPixelSize(R.dimen.taskbar_size); + stashedTaskbarHeight = res.getDimensionPixelSize(R.dimen.taskbar_stashed_size); + taskbarBottomMargin = 0; + startAlignTaskbar = inv.startAlignTaskbar[mTypeIndex]; + } edgeMarginPx = res.getDimensionPixelSize(R.dimen.dynamic_grid_edge_margin); workspaceContentScale = res.getFloat(R.dimen.workspace_content_scale); @@ -423,14 +516,45 @@ public class DeviceProfile { gridVisualizationPaddingY = res.getDimensionPixelSize( R.dimen.grid_visualization_vertical_cell_spacing); - mBottomSheetProfile = BottomSheetProfile.Factory.createBottomSheetProfile( - getDeviceProperties(), - mInsets, - res, - edgeMarginPx, - shouldShowAllAppsOnSheet(), - workspaceContentScale - ); + { + // In large screens, in portrait mode, a bottom sheet can appear too elongated, so, we + // apply additional padding. + final boolean applyExtraTopPadding = isTablet + && !isLandscape + && (aspectRatio > MIN_ASPECT_RATIO_FOR_EXTRA_TOP_PADDING); + final int derivedTopPadding = heightPx / 6; + bottomSheetTopPadding = mInsets.top // statusbar height + + (applyExtraTopPadding ? derivedTopPadding : 0) + + (isTablet ? 0 : edgeMarginPx); // phones need edgeMarginPx additional padding + } + + bottomSheetOpenDuration = res.getInteger(R.integer.config_bottomSheetOpenDuration); + bottomSheetCloseDuration = res.getInteger(R.integer.config_bottomSheetCloseDuration); + if (shouldShowAllAppsOnSheet()) { + bottomSheetWorkspaceScale = workspaceContentScale; + if (Flags.allAppsBlur()) { + bottomSheetDepth = 2f; + } else if (isMultiDisplay) { + // TODO(b/259893832): Revert to use maxWallpaperScale to calculate bottomSheetDepth + // when screen recorder bug is fixed. + if (enableScalingRevealHomeAnimation()) { + bottomSheetDepth = 0.3f; + } else { + bottomSheetDepth = 1f; + } + } else { + // The goal is to set wallpaper to zoom at workspaceContentScale when in AllApps. + // When depth is 0, wallpaper zoom is set to maxWallpaperScale. + // When depth is 1, wallpaper zoom is set to 1. + // For depth to achieve zoom set to maxWallpaperScale * workspaceContentScale: + float maxWallpaperScale = res.getFloat(R.dimen.config_wallpaperMaxScale); + bottomSheetDepth = Utilities.mapToRange(maxWallpaperScale * workspaceContentScale, + maxWallpaperScale, 1f, 0f, 1f, LINEAR); + } + } else { + bottomSheetWorkspaceScale = 1f; + bottomSheetDepth = 0f; + } folderLabelTextScale = res.getFloat(R.dimen.folder_label_text_scale); numFolderRows = inv.numFolderRows[mTypeIndex]; @@ -460,6 +584,9 @@ public class DeviceProfile { folderContentPaddingTop = res.getDimensionPixelSize(R.dimen.folder_top_padding_default); } + allAppsBorderSpacePx = new Point( + pxFromDp(inv.allAppsBorderSpaces[mTypeIndex].x, mMetrics), + pxFromDp(inv.allAppsBorderSpaces[mTypeIndex].y, mMetrics)); setupAllAppsStyle(context); workspacePageIndicatorHeight = res.getDimensionPixelSize( @@ -468,8 +595,8 @@ public class DeviceProfile { .firstBlocking(preferenceManager2.getPageIndicatorHeightFactor()); workspacePageIndicatorHeight *= (int) pageIndicatorHeightFactor; -// mWorkspacePageIndicatorOverlapWorkspace = res -// .getDimensionPixelSize(R.dimen.workspace_page_indicator_overlap_workspace); + mWorkspacePageIndicatorOverlapWorkspace = res + .getDimensionPixelSize(R.dimen.workspace_page_indicator_overlap_workspace); if (!mIsResponsiveGrid) { TypedArray cellStyle; @@ -485,14 +612,27 @@ public class DeviceProfile { cellStyle.recycle(); } + dropTargetBarSizePx = res.getDimensionPixelSize(R.dimen.dynamic_grid_drop_target_size); // Some foldable portrait modes are too wide in terms of aspect ratio so we need to tweak // the dimensions for edit state. - final boolean shouldApplyWidePortraitDimens = mDeviceProperties.isTablet() - && !mDeviceProperties.isLandscape() - && mDeviceProperties.getAspectRatio() < MAX_ASPECT_RATIO_FOR_ALTERNATE_EDIT_STATE; - mDropTargetProfile = DropTargetProfile - .Factory - .createDropTargetProfile(res, shouldApplyWidePortraitDimens); + final boolean shouldApplyWidePortraitDimens = isTablet + && !isLandscape + && aspectRatio < MAX_ASPECT_RATIO_FOR_ALTERNATE_EDIT_STATE; + dropTargetBarTopMarginPx = shouldApplyWidePortraitDimens + ? 0 + : res.getDimensionPixelSize(R.dimen.drop_target_top_margin); + dropTargetBarBottomMarginPx = shouldApplyWidePortraitDimens + ? res.getDimensionPixelSize(R.dimen.drop_target_bottom_margin_wide_portrait) + : res.getDimensionPixelSize(R.dimen.drop_target_bottom_margin); + dropTargetDragPaddingPx = res.getDimensionPixelSize(R.dimen.drop_target_drag_padding); + dropTargetTextSizePx = res.getDimensionPixelSize(R.dimen.drop_target_text_size); + dropTargetHorizontalPaddingPx = res.getDimensionPixelSize( + R.dimen.drop_target_button_drawable_horizontal_padding); + dropTargetVerticalPaddingPx = res.getDimensionPixelSize( + R.dimen.drop_target_button_drawable_vertical_padding); + dropTargetGapPx = res.getDimensionPixelSize(R.dimen.drop_target_button_gap); + dropTargetButtonWorkspaceEdgeGapPx = res.getDimensionPixelSize( + R.dimen.drop_target_button_workspace_edge_gap); workspaceSpringLoadedMinNextPageVisiblePx = res.getDimensionPixelSize( R.dimen.dynamic_grid_spring_loaded_min_next_space_visible); @@ -502,57 +642,60 @@ public class DeviceProfile { HotseatMode hotseatMode = PreferenceExtensionsKt.firstBlocking(preferenceManager2.getHotseatMode()); boolean isQsbEnable = hotseatMode.getLayoutResourceId() != R.layout.empty_view; - numShownHotseatIcons = displayOptionSpec.numShownHotseatIcons; + hotseatQsbHeight = isQsbEnable ? res.getDimensionPixelSize(R.dimen.qsb_widget_height) : 0; + hotseatQsbShadowHeight = res.getDimensionPixelSize(R.dimen.qsb_shadow_height); + hotseatQsbVisualHeight = isQsbEnable ? hotseatQsbHeight - 2 * hotseatQsbShadowHeight : 0; + + // Whether QSB might be inline in appropriate orientation (e.g. landscape). + boolean canQsbInline = (isTwoPanels ? inv.inlineQsb[INDEX_TWO_PANEL_PORTRAIT] + || inv.inlineQsb[INDEX_TWO_PANEL_LANDSCAPE] + : inv.inlineQsb[INDEX_DEFAULT] || inv.inlineQsb[INDEX_LANDSCAPE]) + && hotseatQsbHeight > 0; + isQsbInline = isQsbInline(inv); + + areNavButtonsInline = isTaskbarPresent && !isGestureMode; + numShownHotseatIcons = + isTwoPanels ? inv.numDatabaseHotseatIcons : inv.numShownHotseatIcons; mHotseatColumnSpan = inv.numColumns; - numShownAllAppsColumns = displayOptionSpec.numAllAppsColumns; + numShownAllAppsColumns = + isTwoPanels ? inv.numDatabaseAllAppsColumns : inv.numAllAppsColumns; int hotseatBarBottomSpace = !isQsbEnable ? 0 : pxFromDp(inv.hotseatBarBottomSpace[mTypeIndex], mMetrics); int minQsbMargin = res.getDimensionPixelSize(R.dimen.min_qsb_margin); if (mIsResponsiveGrid) { - float responsiveAspectRatio = (float) mDeviceProperties.getWidthPx() / mDeviceProperties.getHeightPx(); + float responsiveAspectRatio = (float) widthPx / heightPx; HotseatSpecsProvider hotseatSpecsProvider = HotseatSpecsProvider.create(new ResourceHelper(context, - displayOptionSpec.hotseatSpecsId)); + isTwoPanels ? inv.hotseatSpecsTwoPanelId : inv.hotseatSpecsId)); mResponsiveHotseatSpec = isVerticalBarLayout() ? hotseatSpecsProvider.getCalculatedSpec( - responsiveAspectRatio, DimensionType.WIDTH, mDeviceProperties.getWidthPx()) + responsiveAspectRatio, DimensionType.WIDTH, widthPx) : hotseatSpecsProvider.getCalculatedSpec(responsiveAspectRatio, - DimensionType.HEIGHT, mDeviceProperties.getHeightPx()); + DimensionType.HEIGHT, heightPx); hotseatQsbSpace = mResponsiveHotseatSpec.getHotseatQsbSpace(); hotseatBarBottomSpace = isVerticalBarLayout() ? 0 : mResponsiveHotseatSpec.getEdgePadding(); + mHotseatBarEdgePaddingPx = + isVerticalBarLayout() ? mResponsiveHotseatSpec.getEdgePadding() : 0; + mHotseatBarWorkspaceSpacePx = 0; ResponsiveCellSpecsProvider workspaceCellSpecs = ResponsiveCellSpecsProvider.create( - new ResourceHelper(context, displayOptionSpec.workspaceCellSpecsId)); + new ResourceHelper(context, + isTwoPanels ? inv.workspaceCellSpecsTwoPanelId + : inv.workspaceCellSpecsId)); mResponsiveWorkspaceCellSpec = workspaceCellSpecs.getCalculatedSpec( - responsiveAspectRatio, mDeviceProperties.getHeightPx()); + responsiveAspectRatio, heightPx); } else { hotseatQsbSpace = pxFromDp(inv.hotseatQsbSpace[mTypeIndex], mMetrics); hotseatBarBottomSpace = pxFromDp(inv.hotseatBarBottomSpace[mTypeIndex], mMetrics); + mHotseatBarEdgePaddingPx = + isVerticalBarLayout() ? workspacePageIndicatorHeight : 0; + mHotseatBarWorkspaceSpacePx = + res.getDimensionPixelSize(R.dimen.dynamic_grid_hotseat_side_padding); } - hotseatProfile = HotseatProfile.Factory.createHotseatProfile( - getDeviceProperties(), - res, - inv, - isTaskbarPresent, - shouldApplyWidePortraitDimens, - isVerticalBarLayout(), - mResponsiveHotseatSpec, - workspacePageIndicatorHeight, - hotseatMode - ); - - // Whether QSB might be inline in appropriate orientation (e.g. landscape). - isQsbInline = isQsbInline( - inv, - hotseatProfile, - mDeviceProperties, - mIsScalableGrid - ); - if (!isVerticalBarLayout()) { // Have a little space between the inset and the QSB if (!isQsbEnable && mInsets.bottom + minQsbMargin > hotseatBarBottomSpace) { @@ -575,30 +718,44 @@ public class DeviceProfile { } } + springLoadedHotseatBarTopMarginPx = shouldApplyWidePortraitDimens + ? res.getDimensionPixelSize(R.dimen.spring_loaded_hotseat_top_margin_wide_portrait) + : res.getDimensionPixelSize(R.dimen.spring_loaded_hotseat_top_margin); + if (mIsResponsiveGrid) { updateHotseatSizes(mResponsiveWorkspaceCellSpec.getIconSize()); } else { updateHotseatSizes(pxFromDp(inv.iconSize[mTypeIndex], mMetrics)); } + if (areNavButtonsInline && !isPhone) { + inlineNavButtonsEndSpacingPx = + res.getDimensionPixelSize(inv.inlineNavButtonsEndSpacing); + /* 3 nav buttons + Spacing between nav buttons */ + navButtonsLayoutWidthPx = 3 * res.getDimensionPixelSize( + R.dimen.taskbar_nav_buttons_size) + + 2 * res.getDimensionPixelSize(R.dimen.taskbar_button_space_inbetween); + /* nav buttons layout width + Space at the end for contextual buttons */ + hotseatBarEndOffset = navButtonsLayoutWidthPx + inlineNavButtonsEndSpacingPx; + } + mBubbleBarSpaceThresholdPx = res.getDimensionPixelSize(R.dimen.bubblebar_hotseat_adjustment_threshold); - int allAppsTopPadding = mInsets.top; - // Needs to be calculated after hotseatBarSizePx is correct, // for the available height to be correct if (mIsResponsiveGrid) { int availableResponsiveWidth = - mDeviceProperties.getAvailableWidthPx() - (isVerticalBarLayout() ? hotseatBarSizePx : 0); + availableWidthPx - (isVerticalBarLayout() ? hotseatBarSizePx : 0); int numWorkspaceColumns = getPanelCount() * inv.numColumns; // don't use availableHeightPx because it subtracts mInsets.bottom - int availableResponsiveHeight = mDeviceProperties.getHeightPx() - mInsets.top + int availableResponsiveHeight = heightPx - mInsets.top - (isVerticalBarLayout() ? 0 : hotseatBarSizePx); - float responsiveAspectRatio = (float) mDeviceProperties.getWidthPx() / mDeviceProperties.getHeightPx(); + float responsiveAspectRatio = (float) widthPx / heightPx; ResponsiveSpecsProvider workspaceSpecs = ResponsiveSpecsProvider.create( - new ResourceHelper(context, displayOptionSpec.workspaceSpecsId), + new ResourceHelper(context, + isTwoPanels ? inv.workspaceSpecsTwoPanelId : inv.workspaceSpecsId), ResponsiveSpecType.Workspace); mResponsiveWorkspaceWidthSpec = workspaceSpecs.getCalculatedSpec(responsiveAspectRatio, DimensionType.WIDTH, numWorkspaceColumns, availableResponsiveWidth); @@ -606,23 +763,19 @@ public class DeviceProfile { DimensionType.HEIGHT, inv.numRows, availableResponsiveHeight); ResponsiveSpecsProvider allAppsSpecs = ResponsiveSpecsProvider.create( - new ResourceHelper(context, displayOptionSpec.allAppsSpecsId), + new ResourceHelper(context, + isTwoPanels ? inv.allAppsSpecsTwoPanelId : inv.allAppsSpecsId), ResponsiveSpecType.AllApps); mResponsiveAllAppsWidthSpec = allAppsSpecs.getCalculatedSpec(responsiveAspectRatio, - DimensionType.WIDTH, numShownAllAppsColumns, mDeviceProperties.getAvailableWidthPx(), + DimensionType.WIDTH, numShownAllAppsColumns, availableWidthPx, mResponsiveWorkspaceWidthSpec); - if (inv.appListAlignedWithWorkspaceRow >= 0) { - allAppsTopPadding += mResponsiveWorkspaceHeightSpec.getStartPaddingPx() - + inv.appListAlignedWithWorkspaceRow - * (mResponsiveWorkspaceHeightSpec.getCellSizePx() - + mResponsiveWorkspaceHeightSpec.getGutterPx()); - } mResponsiveAllAppsHeightSpec = allAppsSpecs.getCalculatedSpec(responsiveAspectRatio, DimensionType.HEIGHT, inv.numAllAppsRowsForCellHeightCalculation, - mDeviceProperties.getHeightPx() - allAppsTopPadding, mResponsiveWorkspaceHeightSpec); + heightPx - mInsets.top, mResponsiveWorkspaceHeightSpec); ResponsiveSpecsProvider folderSpecs = ResponsiveSpecsProvider.create( - new ResourceHelper(context, displayOptionSpec.folderSpecsId), + new ResourceHelper(context, + isTwoPanels ? inv.folderSpecsTwoPanelId : inv.folderSpecsId), ResponsiveSpecType.Folder); mResponsiveFolderWidthSpec = folderSpecs.getCalculatedSpec(responsiveAspectRatio, DimensionType.WIDTH, numFolderColumns, @@ -634,7 +787,9 @@ public class DeviceProfile { mResponsiveWorkspaceHeightSpec); ResponsiveCellSpecsProvider allAppsCellSpecs = ResponsiveCellSpecsProvider.create( - new ResourceHelper(context, displayOptionSpec.allAppsCellSpecsId)); + new ResourceHelper(context, + isTwoPanels ? inv.allAppsCellSpecsTwoPanelId + : inv.allAppsCellSpecsId)); mResponsiveAllAppsCellSpec = allAppsCellSpecs.getCalculatedSpec( responsiveAspectRatio, mResponsiveAllAppsHeightSpec.getAvailableSpace(), @@ -644,6 +799,26 @@ public class DeviceProfile { desiredWorkspaceHorizontalMarginPx = getHorizontalMarginPx(inv, res); desiredWorkspaceHorizontalMarginOriginalPx = desiredWorkspaceHorizontalMarginPx; + overviewTaskMarginPx = res.getDimensionPixelSize(R.dimen.overview_task_margin); + overviewTaskIconSizePx = enableOverviewIconMenu() ? res.getDimensionPixelSize( + R.dimen.task_thumbnail_icon_menu_drawable_touch_size) : res.getDimensionPixelSize( + R.dimen.task_thumbnail_icon_size); + overviewTaskIconDrawableSizePx = + res.getDimensionPixelSize(R.dimen.task_thumbnail_icon_drawable_size); + overviewTaskIconDrawableSizeGridPx = + res.getDimensionPixelSize(R.dimen.task_thumbnail_icon_drawable_size_grid); + overviewTaskThumbnailTopMarginPx = + enableOverviewIconMenu() ? 0 : overviewTaskIconSizePx + overviewTaskMarginPx; + // Don't add margin with floating search bar to minimize risk of overlapping. + overviewActionsTopMarginPx = Flags.floatingSearchBar() ? 0 + : res.getDimensionPixelSize(R.dimen.overview_actions_top_margin); + overviewPageSpacing = res.getDimensionPixelSize(R.dimen.overview_page_spacing); + overviewActionsButtonSpacing = res.getDimensionPixelSize( + R.dimen.overview_actions_button_spacing); + overviewActionsHeight = res.getDimensionPixelSize(R.dimen.overview_actions_height); + overviewRowSpacing = res.getDimensionPixelSize(R.dimen.overview_grid_row_spacing); + overviewGridSideMargin = res.getDimensionPixelSize(R.dimen.overview_grid_side_margin); + splitPlaceholderInset = res.getDimensionPixelSize(R.dimen.split_placeholder_inset); // We need to use the full window bounds for split determination because on near-square // devices, the available bounds (bounds minus insets) may actually be in landscape while @@ -653,10 +828,10 @@ public class DeviceProfile { boolean allowLeftRightSplitInPortrait = leftRightSplitPortraitResId > 0 && res.getBoolean(leftRightSplitPortraitResId); - if (allowLeftRightSplitInPortrait && mDeviceProperties.isTablet()) { - isLeftRightSplit = !mDeviceProperties.isLandscape(); + if (allowLeftRightSplitInPortrait && isTablet) { + isLeftRightSplit = !isLandscape; } else { - isLeftRightSplit = mDeviceProperties.isLandscape(); + isLeftRightSplit = isLandscape; } // Calculate all of the remaining variables. @@ -665,7 +840,7 @@ public class DeviceProfile { calculateAndSetWorkspaceVerticalPadding(context, inv, extraSpace); int cellLayoutPadding = - mDeviceProperties.isTwoPanels() ? cellLayoutBorderSpacePx.x / 2 : res.getDimensionPixelSize( + isTwoPanels ? cellLayoutBorderSpacePx.x / 2 : res.getDimensionPixelSize( R.dimen.cell_layout_padding); cellLayoutPaddingPx = new Rect(cellLayoutPadding, cellLayoutPadding, cellLayoutPadding, cellLayoutPadding); @@ -674,6 +849,10 @@ public class DeviceProfile { // Folder scaling requires correct workspace paddings updateAvailableFolderCellDimensions(res); + mMinHotseatIconSpacePx = res.getDimensionPixelSize(R.dimen.min_hotseat_icon_space); + mMinHotseatQsbWidthPx = res.getDimensionPixelSize(R.dimen.min_hotseat_qsb_width); + mMaxHotseatIconSpacePx = areNavButtonsInline + ? res.getDimensionPixelSize(R.dimen.max_hotseat_icon_space) : Integer.MAX_VALUE; // Hotseat and QSB width depends on updated cellSize and workspace padding recalculateHotseatWidthAndBorderSpace(); @@ -681,10 +860,9 @@ public class DeviceProfile { hotseatBorderSpace = cellLayoutBorderSpacePx.y; } - if (shouldShowAllAppsOnSheet()) { - allAppsPadding.top = allAppsTopPadding; - allAppsShiftRange = mDeviceProperties.getHeightPx() - allAppsTopPadding + mInsets.top; + allAppsPadding.top = mInsets.top; + allAppsShiftRange = heightPx; } else { allAppsPadding.top = 0; allAppsShiftRange = @@ -720,33 +898,14 @@ public class DeviceProfile { int countColor = counterColorOption.getColorPreferenceEntry().getLightColor().invoke(context); // This is done last, after iconSizePx is calculated above. - // Lawnchair-TODO: dotRendererCache? mDotRendererWorkSpace = createDotRenderer(themeManager, iconSizePx, dotRendererCache, showNotificationCount, typeface, dotColor, countColor); - mDotRendererAllApps = createDotRenderer(themeManager, - getAllAppsProfile().getIconSizePx(), dotRendererCache, showNotificationCount, typeface, dotColor, countColor); - } - - public DeviceProperties getDeviceProperties() { - return mDeviceProperties; - } - - public OverviewProfile getOverviewProfile() { - return overviewProfile; - } - - public HotseatProfile getHotseatProfile() { - return hotseatProfile; + mDotRendererAllApps = createDotRenderer(themeManager, allAppsIconSizePx, dotRendererCache, showNotificationCount, typeface, dotColor, countColor); } /** * Takes care of the logic that determines if we show a the QSB inline or not. */ - private boolean isQsbInline( - InvariantDeviceProfile inv, - HotseatProfile hotseatProfile, - DeviceProperties deviceProperties, - boolean isScalableGrid - ) { + private boolean isQsbInline(InvariantDeviceProfile inv) { // For foldable (two panel), we inline the qsb if we have the screen open and we are in // either Landscape or Portrait. This cal also be disabled in the device_profile.xml boolean twoPanelCanInline = inv.inlineQsb[INDEX_TWO_PANEL_PORTRAIT] @@ -754,16 +913,17 @@ public class DeviceProfile { // In tablets we inline in both orientations but only if we have enough space in the QSB boolean tabletInlineQsb = inv.inlineQsb[INDEX_DEFAULT] || inv.inlineQsb[INDEX_LANDSCAPE]; - boolean canQsbInline = deviceProperties.isTwoPanels() ? twoPanelCanInline : tabletInlineQsb; - canQsbInline = canQsbInline && hotseatProfile.getQsbHeight() > 0; + boolean canQsbInline = isTwoPanels ? twoPanelCanInline : tabletInlineQsb; + canQsbInline = canQsbInline && hotseatQsbHeight > 0; - return (isScalableGrid && inv.inlineQsb[mTypeIndex] && canQsbInline) + return (mIsScalableGrid && inv.inlineQsb[mTypeIndex] && canQsbInline) || inv.isFixedLandscape; } private static DotRenderer createDotRenderer( @NonNull ThemeManager themeManager, int size, @NonNull SparseArray<DotRenderer> cache) { DotRenderer renderer = cache.get(size); + if (renderer == null) { renderer = new DotRenderer( size, @@ -800,8 +960,8 @@ public class DeviceProfile { * reasonable over estimation is fine. */ public int getMaxAllAppsRowCount() { - return (int) (Math.ceil((mDeviceProperties.getAvailableHeightPx() - allAppsPadding.top) - / (float) getAllAppsProfile().getCellHeightPx())); + return (int) (Math.ceil((availableHeightPx - allAppsPadding.top) + / (float) allAppsCellHeightPx)); } /** @@ -864,36 +1024,20 @@ public class DeviceProfile { /** Updates hotseatCellHeightPx and hotseatBarSizePx */ private void updateHotseatSizes(int hotseatIconSizePx) { - int iconTextHeight = Utilities.calculateTextHeight(iconTextSizePx); - boolean isLabelInDock = PreferenceExtensionsKt.firstBlocking(preferenceManager2.getEnableLabelInDock()); // Ensure there is enough space for folder icons, which have a slightly larger radius. - hotseatCellHeightPx = getIconSizeWithOverlap(hotseatIconSizePx * 2) - hotseatIconSizePx / 2; - hotseatCellHeightPx += isLabelInDock ? iconTextHeight : 0; - hotseatQsbSpace += isLabelInDock ? (iconTextHeight / 2) : 0; - - int space = Math.abs(hotseatCellHeightPx / 2) - 16; - - hotseatBarBottomSpacePx *= PreferenceExtensionsKt - .firstBlocking(preferenceManager2.getHotseatBottomFactor()); + hotseatCellHeightPx = getIconSizeWithOverlap(hotseatIconSizePx); if (isVerticalBarLayout()) { - hotseatBarSizePx = hotseatIconSizePx + getHotseatProfile().getBarEdgePaddingPx() - + getHotseatProfile().getBarWorkspaceSpacePx() - + space; + hotseatBarSizePx = hotseatIconSizePx + mHotseatBarEdgePaddingPx + + mHotseatBarWorkspaceSpacePx; } else if (isQsbInline) { - hotseatBarSizePx = Math.max(hotseatIconSizePx, getHotseatProfile().getQsbVisualHeight()) - + hotseatBarBottomSpacePx - + space; + hotseatBarSizePx = Math.max(hotseatIconSizePx, hotseatQsbVisualHeight) + + hotseatBarBottomSpacePx; } else { hotseatBarSizePx = hotseatIconSizePx + hotseatQsbSpace - + getHotseatProfile().getQsbVisualHeight() - + hotseatBarBottomSpacePx - + space; - } - var isHotseatEnabled = PreferenceExtensionsKt.firstBlocking(preferenceManager2.isHotseatEnabled()); - if (!isHotseatEnabled) { - hotseatBarSizePx = 0; + + hotseatQsbVisualHeight + + hotseatBarBottomSpacePx; } } @@ -906,11 +1050,11 @@ public class DeviceProfile { updateHotseatWidthAndBorderSpace(inv.numColumns); int numWorkspaceColumns = getPanelCount() * inv.numColumns; - if (mDeviceProperties.isTwoPanels()) { + if (isTwoPanels) { updateHotseatWidthAndBorderSpace(inv.numDatabaseHotseatIcons); // If hotseat doesn't fit with current width, increase column span to fit by multiple // of 2. - while (hotseatBorderSpace < getHotseatProfile().getMinIconSpacePx() + while (hotseatBorderSpace < mMinHotseatIconSpacePx && mHotseatColumnSpan < numWorkspaceColumns) { updateHotseatWidthAndBorderSpace(mHotseatColumnSpan + 2); } @@ -919,46 +1063,45 @@ public class DeviceProfile { // If QSB is inline, reduce column span until it fits. int maxHotseatWidthAllowedPx = getIconToIconWidthForColumns(numWorkspaceColumns); int minHotseatWidthRequiredPx = - getHotseatProfile().getMinQsbWidthPx() + hotseatBorderSpace + mHotseatWidthPx; + mMinHotseatQsbWidthPx + hotseatBorderSpace + mHotseatWidthPx; while (minHotseatWidthRequiredPx > maxHotseatWidthAllowedPx && mHotseatColumnSpan > 1) { updateHotseatWidthAndBorderSpace(mHotseatColumnSpan - 1); - minHotseatWidthRequiredPx = getHotseatProfile().getMinQsbWidthPx() - + hotseatBorderSpace + mHotseatWidthPx; + minHotseatWidthRequiredPx = + mMinHotseatQsbWidthPx + hotseatBorderSpace + mHotseatWidthPx; } } hotseatQsbWidth = calculateQsbWidth(hotseatBorderSpace); // Spaces should be correct when the nav buttons are not inline - if (!getHotseatProfile().getAreNavButtonsInline()) { + if (!areNavButtonsInline) { return; } // The side space with inline buttons should be what is defined in InvariantDeviceProfile - int sideSpacePx = getHotseatProfile().getInlineNavButtonsEndSpacingPx(); - int maxHotseatWidthPx = mDeviceProperties.getAvailableWidthPx() - sideSpacePx - - getHotseatProfile().getBarEndOffset(); + int sideSpacePx = inlineNavButtonsEndSpacingPx; + int maxHotseatWidthPx = availableWidthPx - sideSpacePx - hotseatBarEndOffset; int maxHotseatIconsWidthPx = maxHotseatWidthPx - (isQsbInline ? hotseatQsbWidth : 0); hotseatBorderSpace = calculateHotseatBorderSpace(maxHotseatIconsWidthPx, (isQsbInline ? 1 : 0) + /* border between nav buttons and first icon */ 1); - if (hotseatBorderSpace >= getHotseatProfile().getMinIconSpacePx()) { + if (hotseatBorderSpace >= mMinHotseatIconSpacePx) { return; } // Border space can't be less than the minimum - hotseatBorderSpace = getHotseatProfile().getMinIconSpacePx(); + hotseatBorderSpace = mMinHotseatIconSpacePx; int requiredWidth = getHotseatRequiredWidth(); // If there is an inline qsb, change its size if (isQsbInline) { hotseatQsbWidth -= requiredWidth - maxHotseatWidthPx; - if (hotseatQsbWidth >= getHotseatProfile().getMinQsbWidthPx()) { + if (hotseatQsbWidth >= mMinHotseatQsbWidthPx) { return; } // QSB can't be less than the minimum - hotseatQsbWidth = getHotseatProfile().getMinQsbWidthPx(); + hotseatQsbWidth = mMinHotseatQsbWidthPx; } maxHotseatIconsWidthPx = maxHotseatWidthPx - (isQsbInline ? hotseatQsbWidth : 0); @@ -968,9 +1111,7 @@ public class DeviceProfile { numShownHotseatIcons--; hotseatBorderSpace = calculateHotseatBorderSpace(maxHotseatIconsWidthPx, (isQsbInline ? 1 : 0) + /* border between nav buttons and first icon */ 1); - } while ( - hotseatBorderSpace < getHotseatProfile().getMinIconSpacePx() - && numShownHotseatIcons > 1); + } while (hotseatBorderSpace < mMinHotseatIconSpacePx && numShownHotseatIcons > 1); } private void updateHotseatWidthAndBorderSpace(int columns) { @@ -1014,26 +1155,20 @@ public class DeviceProfile { public Builder toBuilder(Context context) { WindowBounds bounds = new WindowBounds( - mDeviceProperties.getWidthPx(), - mDeviceProperties.getHeightPx(), - mDeviceProperties.getAvailableWidthPx(), - mDeviceProperties.getAvailableHeightPx(), - mDeviceProperties.getRotationHint() - ); - bounds.bounds.offsetTo(mDeviceProperties.getWindowX(), mDeviceProperties.getWindowY()); + widthPx, heightPx, availableWidthPx, availableHeightPx, rotationHint); + bounds.bounds.offsetTo(windowX, windowY); bounds.insets.set(mInsets); SparseArray<DotRenderer> dotRendererCache = new SparseArray<>(); dotRendererCache.put(iconSizePx, mDotRendererWorkSpace); - dotRendererCache.put(getAllAppsProfile().getIconSizePx(), mDotRendererAllApps); + dotRendererCache.put(allAppsIconSizePx, mDotRendererAllApps); return inv.newDPBuilder(context, mInfo) .setWindowBounds(bounds) - .setIsMultiDisplay(mDeviceProperties.isMultiDisplay()) - .setMultiWindowMode(mDeviceProperties.isMultiWindowMode()) + .setIsMultiDisplay(isMultiDisplay) + .setMultiWindowMode(isMultiWindowMode) .setDotRendererCache(dotRendererCache) - .setGestureMode(mDeviceProperties.isGestureMode()) - .setDisplayOptionSpec(mDisplayOptionSpec); + .setGestureMode(isGestureMode); } public DeviceProfile copy(Context context) { @@ -1080,9 +1215,7 @@ public class DeviceProfile { iconTextSizePx = 0; iconDrawablePaddingPx = 0; cellHeightPx = getIconSizeWithOverlap(iconSizePx); - maxIconTextLineCount = 0; - // TODO(420933882) Group all modifications of AllAppsProfile in one place - mAllAppsProfile = AllAppsProfile.Factory.autoResizeAllAppsCells(getAllAppsProfile()); + autoResizeAllAppsCells(); } } @@ -1096,7 +1229,6 @@ public class DeviceProfile { iconSizePx = mResponsiveWorkspaceCellSpec.getIconSize(); iconTextSizePx = mResponsiveWorkspaceCellSpec.getIconTextSize(); mIconDrawablePaddingOriginalPx = mResponsiveWorkspaceCellSpec.getIconDrawablePadding(); - maxIconTextLineCount = mResponsiveWorkspaceCellSpec.getIconTextMaxLineCount(); updateIconSize(1f, context); updateWorkspacePadding(); return 0; @@ -1125,7 +1257,7 @@ public class DeviceProfile { float usedWidth = getCellLayoutWidthSpecification() + (desiredWorkspaceHorizontalMarginPx * 2); // We do not subtract padding here, as we also scale the workspace padding if needed. - scaleX = mDeviceProperties.getAvailableWidthPx() / usedWidth; + scaleX = availableWidthPx / usedWidth; shouldScale = true; } @@ -1169,7 +1301,7 @@ public class DeviceProfile { } private int getIconSizeWithOverlap(int iconSize) { - return (int) Math.ceil(iconSize * ICON_OVERLAP_FACTOR); + return (int) Math.ceil(iconSize * ClippedFolderIconLayoutRule.getIconOverlapFactor()); } /** @@ -1189,7 +1321,6 @@ public class DeviceProfile { if (mIsResponsiveGrid) { cellWidthPx = mResponsiveWorkspaceWidthSpec.getCellSizePx(); cellHeightPx = mResponsiveWorkspaceHeightSpec.getCellSizePx(); - maxIconTextLineCount = mResponsiveWorkspaceCellSpec.getIconTextMaxLineCount(); if (cellWidthPx < iconSizePx) { // get a smaller icon size @@ -1199,21 +1330,18 @@ public class DeviceProfile { if (isVerticalLayout) { iconDrawablePaddingPx = 0; iconTextSizePx = 0; - maxIconTextLineCount = 0; } else { iconDrawablePaddingPx = getNormalizedIconDrawablePadding(); } CellContentDimensions cellContentDimensions = new CellContentDimensions(iconSizePx, iconDrawablePaddingPx, - iconTextSizePx, - maxIconTextLineCount); + iconTextSizePx); int cellContentHeight = cellContentDimensions.resizeToFitCellHeight(cellHeightPx, mIconSizeSteps); iconSizePx = cellContentDimensions.getIconSizePx(); iconDrawablePaddingPx = cellContentDimensions.getIconDrawablePaddingPx(); iconTextSizePx = cellContentDimensions.getIconTextSizePx(); - maxIconTextLineCount = cellContentDimensions.getMaxLineCount(); if (isVerticalLayout) { cellYPaddingPx = Math.max(0, getCellSize().y - getIconSizeWithOverlap(iconSizePx)) @@ -1225,7 +1353,6 @@ public class DeviceProfile { iconDrawablePaddingPx = (int) (getNormalizedIconDrawablePadding() * iconScale); cellWidthPx = pxFromDp(inv.minCellSize[mTypeIndex].x, mMetrics, scale); cellHeightPx = pxFromDp(inv.minCellSize[mTypeIndex].y, mMetrics, scale); - maxIconTextLineCount = 1; if (cellWidthPx < iconSizePx) { // If cellWidth no longer fit iconSize, reduce borderSpace to make cellWidth bigger. @@ -1287,10 +1414,9 @@ public class DeviceProfile { cellHeightPx = getIconSizeWithOverlap(iconSizePx) + iconDrawablePaddingPx + Utilities.calculateTextHeight(iconTextSizePx); - maxIconTextLineCount = 1; int cellPaddingY = (getCellSize().y - cellHeightPx) / 2; if (iconDrawablePaddingPx > cellPaddingY && !isVerticalLayout - && !mDeviceProperties.isMultiWindowMode()) { + && !isMultiWindowMode) { // Ensures that the label is closer to its corresponding icon. This is not an issue // with vertical bar layout or multi-window mode since the issue is handled // separately with their calls to {@link #adjustToHideWorkspaceLabels}. @@ -1303,42 +1429,17 @@ public class DeviceProfile { // All apps if (mIsResponsiveGrid) { - mAllAppsProfile = AllAppsProfile.Factory.createAllAppsWithResponsive( - mResponsiveAllAppsCellSpec, - mResponsiveAllAppsWidthSpec, - mResponsiveAllAppsHeightSpec, - mIconSizeSteps, - isVerticalBarLayout() - ); updateAllAppsWithResponsiveMeasures(); } else { - // LC: All apps should use scale 1.0, not workspace scale - // This ensures drawer icons are independent of workspace scaling - //updateAllAppsIconSize(1.0f, context.getResources()); - // pE-TODO(QPR1): Investigate - mAllAppsProfile = AllAppsProfile.Factory.createAllAppsProfile( - context.getResources(), - inv, - mMetrics, - mIsScalableGrid, - mTypeIndex, - scale, - iconSizePx, - mIconDrawablePaddingOriginalPx - ); + updateAllAppsIconSize(scale, context.getResources()); } updateAllAppsContainerWidth(); if (isVerticalLayout && !mIsResponsiveGrid) { hideWorkspaceLabelsIfNotEnoughSpace(); } - - if (inv.enableTwoLinesInAllApps - && !(mIsResponsiveGrid && getAllAppsProfile().getMaxAllAppsTextLineCount() == 2)) { + if (inv.enableTwoLinesInAllApps) { // Add extra textHeight to the existing allAppsCellHeight. - mAllAppsProfile = getAllAppsProfile().copyWithCellHeightPx( - getAllAppsProfile().getCellHeightPx() + Utilities.calculateTextHeight( - getAllAppsProfile().getIconTextSizePx()) - ); + allAppsCellHeightPx += Utilities.calculateTextHeight(allAppsIconTextSizePx); } updateHotseatSizes(iconSizePx); @@ -1369,34 +1470,142 @@ public class DeviceProfile { float hotseatIconsTotalPx = iconSizePx * numShownHotseatIcons; int hotseatBorderSpacePx = (int) (hotseatWidthPx - hotseatIconsTotalPx) / numBorders; - return Math.min(hotseatBorderSpacePx, getHotseatProfile().getMaxIconSpacePx()); + return Math.min(hotseatBorderSpacePx, mMaxHotseatIconSpacePx); + } + + /** + * Updates the iconSize for allApps* variants. + */ + private void updateAllAppsIconSize(float scale, Resources res) { + allAppsBorderSpacePx = new Point( + pxFromDp(inv.allAppsBorderSpaces[mTypeIndex].x, mMetrics, scale), + pxFromDp(inv.allAppsBorderSpaces[mTypeIndex].y, mMetrics, scale)); + // AllApps cells don't have real space between cells, + // so we add the border space to the cell height + allAppsCellHeightPx = pxFromDp(inv.allAppsCellSize[mTypeIndex].y, mMetrics) + + allAppsBorderSpacePx.y; + // but width is just the cell, + // the border is added in #updateAllAppsContainerWidth + if (mIsScalableGrid) { + allAppsIconSizePx = pxFromDp(inv.allAppsIconSize[mTypeIndex], mMetrics); + allAppsIconTextSizePx = pxFromSp(inv.allAppsIconTextSize[mTypeIndex], mMetrics); + allAppsIconTextSizePx *= mTextFactors.getAllAppsIconTextSizeFactor(); + allAppsIconDrawablePaddingPx = getNormalizedIconDrawablePadding(); + allAppsCellWidthPx = pxFromDp(inv.allAppsCellSize[mTypeIndex].x, mMetrics, scale); + + if (allAppsCellWidthPx < allAppsIconSizePx) { + // If allAppsCellWidth no longer fit allAppsIconSize, reduce allAppsBorderSpace to + // make allAppsCellWidth bigger. + int numBorders = inv.numAllAppsColumns - 1; + int extraWidthRequired = + (allAppsIconSizePx - allAppsCellWidthPx) * inv.numAllAppsColumns; + if (allAppsBorderSpacePx.x * numBorders >= extraWidthRequired) { + allAppsCellWidthPx = allAppsIconSizePx; + allAppsBorderSpacePx.x -= extraWidthRequired / numBorders; + } else { + // If it still doesn't fit, set allAppsBorderSpace to 0 and distribute the space + // for allAppsCellWidth, and reduce allAppsIconSize. + allAppsCellWidthPx = (allAppsCellWidthPx * inv.numAllAppsColumns + + allAppsBorderSpacePx.x * numBorders) / inv.numAllAppsColumns; + allAppsIconSizePx = Math.min(allAppsIconSizePx, allAppsCellWidthPx); + allAppsBorderSpacePx.x = 0; + } + } + + int cellContentHeight = allAppsIconSizePx + + Utilities.calculateTextHeight(allAppsIconTextSizePx) + allAppsBorderSpacePx.y; + if (allAppsCellHeightPx < cellContentHeight) { + // Increase allAppsCellHeight to fit its content. + allAppsCellHeightPx = cellContentHeight; + } + } else { + float invIconSizeDp = inv.allAppsIconSize[mTypeIndex]; + float invIconTextSizeSp = inv.allAppsIconTextSize[mTypeIndex]; + allAppsIconSizePx = Math.max(1, pxFromDp(invIconSizeDp, mMetrics, scale)); + allAppsIconTextSizePx = (int) (pxFromSp(invIconTextSizeSp, mMetrics) * scale); + allAppsIconDrawablePaddingPx = + res.getDimensionPixelSize(R.dimen.all_apps_icon_drawable_padding); + allAppsIconTextSizePx *= mTextFactors.getAllAppsIconTextSizeFactor(); + allAppsCellWidthPx = allAppsIconSizePx + (2 * allAppsIconDrawablePaddingPx); + } } private void updateAllAppsWithResponsiveMeasures() { + allAppsIconSizePx = mResponsiveAllAppsCellSpec.getIconSize(); + allAppsIconTextSizePx = mResponsiveAllAppsCellSpec.getIconTextSize(); + allAppsIconDrawablePaddingPx = getNormalizedIconDrawablePadding(allAppsIconSizePx, + mResponsiveAllAppsCellSpec.getIconDrawablePadding()); + allAppsBorderSpacePx = new Point( + mResponsiveAllAppsWidthSpec.getGutterPx(), + mResponsiveAllAppsHeightSpec.getGutterPx() + ); + allAppsCellHeightPx = mResponsiveAllAppsHeightSpec.getCellSizePx(); + allAppsCellWidthPx = mResponsiveAllAppsWidthSpec.getCellSizePx(); + // This workaround is needed to align AllApps icons with Workspace icons // since AllApps doesn't have borders between cells - int halfBorder = getAllAppsProfile().getBorderSpacePx().x / 2; + int halfBorder = allAppsBorderSpacePx.x / 2; allAppsPadding.left = mResponsiveAllAppsWidthSpec.getStartPaddingPx() - halfBorder; allAppsPadding.right = mResponsiveAllAppsWidthSpec.getEndPaddingPx() - halfBorder; + + + // Reduce the size of the app icon if it doesn't fit + if (allAppsCellWidthPx < allAppsIconSizePx) { + // get a smaller icon size + allAppsIconSizePx = mIconSizeSteps.getIconSmallerThan(allAppsCellWidthPx); + } + + CellContentDimensions cellContentDimensions = new CellContentDimensions( + allAppsIconSizePx, allAppsIconDrawablePaddingPx, (int) allAppsIconTextSizePx); + + if (allAppsCellHeightPx < cellContentDimensions.getCellContentHeight()) { + if (isVerticalBarLayout()) { + if (allAppsCellHeightPx < allAppsIconSizePx) { + cellContentDimensions.setIconSizePx( + mIconSizeSteps.getIconSmallerThan(allAppsCellHeightPx)); + } + } else { + cellContentDimensions.resizeToFitCellHeight(allAppsCellHeightPx, + mIconSizeSteps); + } + allAppsIconSizePx = cellContentDimensions.getIconSizePx(); + allAppsIconDrawablePaddingPx = cellContentDimensions.getIconDrawablePaddingPx(); + allAppsIconTextSizePx = cellContentDimensions.getIconTextSizePx(); + } + + allAppsCellHeightPx += mResponsiveAllAppsHeightSpec.getGutterPx(); + + if (isVerticalBarLayout()) { + autoResizeAllAppsCells(); + } } + /** + * Re-computes the all-apps cell size to be independent of workspace + */ + public void autoResizeAllAppsCells() { + int textHeight = Utilities.calculateTextHeight(allAppsIconTextSizePx); + int topBottomPadding = textHeight; + allAppsCellHeightPx = allAppsIconSizePx + allAppsIconDrawablePaddingPx + + textHeight + (topBottomPadding * 2); + } private void updateAllAppsContainerWidth() { int cellLayoutHorizontalPadding = (cellLayoutPaddingPx.left + cellLayoutPaddingPx.right) / 2; - if (mDeviceProperties.isTablet()) { - int usedWidth = (getAllAppsProfile().getCellWidthPx() * numShownAllAppsColumns) - + (getAllAppsProfile().getBorderSpacePx().x * (numShownAllAppsColumns - 1)) + if (isTablet) { + int usedWidth = (allAppsCellWidthPx * numShownAllAppsColumns) + + (allAppsBorderSpacePx.x * (numShownAllAppsColumns - 1)) + allAppsPadding.left + allAppsPadding.right; - allAppsLeftRightMargin = Math.max(1, (mDeviceProperties.getAvailableWidthPx() - usedWidth) / 2); + allAppsLeftRightMargin = Math.max(1, (availableWidthPx - usedWidth) / 2); } else if (!mIsResponsiveGrid) { allAppsPadding.left = allAppsPadding.right = Math.max(0, desiredWorkspaceHorizontalMarginPx + cellLayoutHorizontalPadding - - (getAllAppsProfile().getBorderSpacePx().x / 2)); + - (allAppsBorderSpacePx.x / 2)); } var allAppLeftRightMarginMultiplier = PreferenceExtensionsKt .firstBlocking(preferenceManager2.getDrawerLeftRightMarginFactor()); - var marginMultiplier = allAppLeftRightMarginMultiplier * (!getDeviceProperties().isTablet() ? 100 : 2); + var marginMultiplier = allAppLeftRightMarginMultiplier * (!isTablet ? 100 : 2); allAppsLeftRightMargin = (int) (allAppsLeftRightMargin * marginMultiplier); // todo fix how drawer padding values are calculated in responsive grid type @@ -1410,7 +1619,7 @@ public class DeviceProfile { /** Whether All Apps should be presented on a bottom sheet. */ public boolean shouldShowAllAppsOnSheet() { - return mDeviceProperties.isTablet() || Flags.allAppsSheetForHandheld(); + return isTablet || Flags.allAppsSheetForHandheld(); } private void setupAllAppsStyle(Context context) { @@ -1437,14 +1646,14 @@ public class DeviceProfile { + ((numFolderRows - 1) * folderCellLayoutBorderSpacePx.y) + folderFooterHeightPx + folderContentPaddingTop; - int contentMaxHeight = mDeviceProperties.getAvailableHeightPx() - totalWorkspacePadding.y; + int contentMaxHeight = availableHeightPx - totalWorkspacePadding.y; float scaleY = contentMaxHeight / contentUsedHeight; // Check if the folder fit within the available width. float contentUsedWidth = folderCellWidthPx * numFolderColumns + ((numFolderColumns - 1) * folderCellLayoutBorderSpacePx.x) + folderContentPaddingLeftRight * 2; - int contentMaxWidth = mDeviceProperties.getAvailableWidthPx() - totalWorkspacePadding.x; + int contentMaxWidth = availableWidthPx - totalWorkspacePadding.x; float scaleX = contentMaxWidth / contentUsedWidth; float scale = Math.min(scaleX, scaleY); @@ -1483,15 +1692,13 @@ public class DeviceProfile { CellContentDimensions cellContentDimensions = new CellContentDimensions( folderChildIconSizePx, folderChildDrawablePaddingPx, - folderChildTextSizePx, - mResponsiveWorkspaceCellSpec.getIconTextMaxLineCount()); + folderChildTextSizePx); cellContentDimensions.resizeToFitCellHeight(folderCellHeightPx, mIconSizeSteps); folderChildIconSizePx = cellContentDimensions.getIconSizePx(); folderChildDrawablePaddingPx = cellContentDimensions.getIconDrawablePaddingPx(); folderChildTextSizePx = cellContentDimensions.getIconTextSizePx(); folderLabelTextSizePx = Math.max(minLabelTextSize, (int) (folderChildTextSizePx * folderLabelTextScale)); - maxFolderChildTextLineCount = cellContentDimensions.getMaxLineCount(); return; } @@ -1502,7 +1709,6 @@ public class DeviceProfile { folderLabelTextSizePx = Math.max(minLabelTextSize, (int) (folderChildTextSizePx * folderLabelTextScale)); int textHeight = Utilities.calculateTextHeight(folderChildTextSizePx); - maxFolderChildTextLineCount = 1; if (mIsScalableGrid) { if (inv.folderStyle == INVALID_RESOURCE_HANDLE) { @@ -1518,13 +1724,11 @@ public class DeviceProfile { CellContentDimensions cellContentDimensions = new CellContentDimensions( folderChildIconSizePx, folderChildDrawablePaddingPx, - folderChildTextSizePx, - maxFolderChildTextLineCount); + folderChildTextSizePx); cellContentDimensions.resizeToFitCellHeight(folderCellHeightPx, mIconSizeSteps); folderChildIconSizePx = cellContentDimensions.getIconSizePx(); folderChildDrawablePaddingPx = cellContentDimensions.getIconDrawablePaddingPx(); folderChildTextSizePx = cellContentDimensions.getIconTextSizePx(); - maxFolderChildTextLineCount = cellContentDimensions.getMaxLineCount(); folderContentPaddingTop = roundPxValueFromFloat(folderContentPaddingTop * scale); folderCellLayoutBorderSpacePx = new Point( @@ -1599,7 +1803,7 @@ public class DeviceProfile { * Gets the number of panels within the workspace. */ public int getPanelCount() { - return mDeviceProperties.isTwoPanels() ? 2 : 1; + return isTwoPanels ? 2 : 1; } /** @@ -1609,7 +1813,7 @@ public class DeviceProfile { private int getVerticalHotseatLastItemBottomOffset(Context context) { Rect hotseatBarPadding = getHotseatLayoutPadding(context); int cellHeight = calculateCellHeight( - mDeviceProperties.getHeightPx() - hotseatBarPadding.top - hotseatBarPadding.bottom, hotseatBorderSpace, + heightPx - hotseatBarPadding.top - hotseatBarPadding.bottom, hotseatBorderSpace, numShownHotseatIcons); int extraIconEndSpacing = (cellHeight - iconSizePx) / 2; return extraIconEndSpacing + hotseatBarPadding.bottom; @@ -1619,17 +1823,16 @@ public class DeviceProfile { * Gets the scaled top of the workspace in px for the spring-loaded edit state. */ public float getCellLayoutSpringLoadShrunkTop() { - return mInsets.top + getDropTargetProfile().getBarTopMarginPx() - + getDropTargetProfile().getBarSizePx() - + getDropTargetProfile().getBarBottomMarginPx(); + return mInsets.top + dropTargetBarTopMarginPx + dropTargetBarSizePx + + dropTargetBarBottomMarginPx; } /** * Gets the scaled bottom of the workspace in px for the spring-loaded edit state. */ public float getCellLayoutSpringLoadShrunkBottom(Context context) { - int topOfHotseat = hotseatBarSizePx + getHotseatProfile().getSpringLoadedBarTopMarginPx(); - return mDeviceProperties.getHeightPx() - (isVerticalBarLayout() + int topOfHotseat = hotseatBarSizePx + springLoadedHotseatBarTopMarginPx; + return heightPx - (isVerticalBarLayout() ? getVerticalHotseatLastItemBottomOffset(context) : topOfHotseat); } @@ -1643,7 +1846,7 @@ public class DeviceProfile { scale = Math.min(scale, 1f); // Reduce scale if next pages would not be visible after scaling the workspace. - int workspaceWidth = mDeviceProperties.getAvailableWidthPx(); + int workspaceWidth = availableWidthPx; float scaledWorkspaceWidth = workspaceWidth * scale; float maxAvailableWidth = workspaceWidth - (2 * workspaceSpringLoadedMinNextPageVisiblePx); if (scaledWorkspaceWidth > maxAvailableWidth) { @@ -1659,7 +1862,7 @@ public class DeviceProfile { * layouts have two Cell Layouts per workspace. */ public int getCellLayoutWidth() { - return (mDeviceProperties.getAvailableWidthPx() - getTotalWorkspacePadding().x) / getPanelCount(); + return (availableWidthPx - getTotalWorkspacePadding().x) / getPanelCount(); } /** @@ -1668,7 +1871,7 @@ public class DeviceProfile { * <p>This is the height of a Workspace, less its vertical padding. */ public int getCellLayoutHeight() { - return mDeviceProperties.getAvailableHeightPx() - getTotalWorkspacePadding().y; + return availableHeightPx - getTotalWorkspacePadding().y; } public Point getTotalWorkspacePadding() { @@ -1701,9 +1904,9 @@ public class DeviceProfile { padding.bottom = edgeMarginPx; if (isSeascape()) { padding.left = hotseatBarSizePx; - padding.right = getHotseatProfile().getBarEdgePaddingPx(); + padding.right = mHotseatBarEdgePaddingPx; } else { - padding.left = getHotseatProfile().getBarEdgePaddingPx(); + padding.left = mHotseatBarEdgePaddingPx; padding.right = hotseatBarSizePx; } } @@ -1818,22 +2021,18 @@ public class DeviceProfile { int paddingBottom = Math.max((int) (mInsets.bottom + cellLayoutPaddingPx.bottom), 0); if (isSeascape()) { - hotseatBarPadding.set(mInsets.left + getHotseatProfile().getBarEdgePaddingPx(), - paddingTop, getHotseatProfile().getBarWorkspaceSpacePx(), paddingBottom); + hotseatBarPadding.set(mInsets.left + mHotseatBarEdgePaddingPx, paddingTop, + mHotseatBarWorkspaceSpacePx, paddingBottom); } else { - hotseatBarPadding.set(getHotseatProfile().getBarWorkspaceSpacePx(), paddingTop, - mInsets.right + getHotseatProfile().getBarEdgePaddingPx(), paddingBottom); + hotseatBarPadding.set(mHotseatBarWorkspaceSpacePx, paddingTop, + mInsets.right + mHotseatBarEdgePaddingPx, paddingBottom); } } else if (inv.isFixedLandscape) { // Center the QSB vertically with hotseat int hotseatBarBottomPadding = getHotseatBarBottomPadding(); - int hotseatPlusQSBWidth = getIconToIconWidthForColumns(inv.numColumns); - - // This is needed because of b/235886078 since QSB needs to span to the icon borders - int iconExtraSpacePx = iconSizePx - getIconVisibleSizePx(iconSizePx); - int qsbWidth = getAdditionalQsbSpace() + iconExtraSpacePx / 2; - - int availableWidthPxForHotseat = mDeviceProperties.getAvailableWidthPx() - Math.abs(workspacePadding.width()) + int hotseatPlusQSBWidth = getHotseatRequiredWidth(); + int qsbWidth = getAdditionalQsbSpace(); + int availableWidthPxForHotseat = availableWidthPx - Math.abs(workspacePadding.width()) - Math.abs(cellLayoutPaddingPx.width()); int remainingSpaceOnSide = (availableWidthPxForHotseat - hotseatPlusQSBWidth) / 2; @@ -1860,11 +2059,11 @@ public class DeviceProfile { int startSpacing; int endSpacing; // Hotseat aligns to the left with nav buttons - if (getHotseatProfile().getBarEndOffset() > 0) { - startSpacing = getHotseatProfile().getInlineNavButtonsEndSpacingPx(); - endSpacing = mDeviceProperties.getAvailableWidthPx() - hotseatWidth - startSpacing + hotseatBorderSpace; + if (hotseatBarEndOffset > 0) { + startSpacing = inlineNavButtonsEndSpacingPx; + endSpacing = availableWidthPx - hotseatWidth - startSpacing + hotseatBorderSpace; } else { - startSpacing = (mDeviceProperties.getAvailableWidthPx() - hotseatWidth) / 2; + startSpacing = (availableWidthPx - hotseatWidth) / 2; endSpacing = startSpacing; } startSpacing += getAdditionalQsbSpace(); @@ -1882,7 +2081,7 @@ public class DeviceProfile { } else if (mIsScalableGrid) { int iconExtraSpacePx = iconSizePx - getIconVisibleSizePx(iconSizePx); - int sideSpacing = (mDeviceProperties.getAvailableWidthPx() - (hotseatQsbWidth + iconExtraSpacePx)) / 2; + int sideSpacing = (availableWidthPx - (hotseatQsbWidth + iconExtraSpacePx)) / 2; hotseatBarPadding.set(sideSpacing, 0, sideSpacing, @@ -1892,8 +2091,8 @@ public class DeviceProfile { // icons in the hotseat are a different size, and so don't line up perfectly. To account // for this, we pad the left and right of the hotseat with half of the difference of a // workspace cell vs a hotseat cell. - float workspaceCellWidth = (float) mDeviceProperties.getWidthPx() / inv.numColumns; - float hotseatCellWidth = (float) mDeviceProperties.getWidthPx() / numShownHotseatIcons; + float workspaceCellWidth = (float) widthPx / inv.numColumns; + float hotseatCellWidth = (float) widthPx / numShownHotseatIcons; int hotseatAdjustment = Math.round((workspaceCellWidth - hotseatCellWidth) / 2); hotseatBarPadding.set( hotseatAdjustment + workspacePadding.left + cellLayoutPaddingPx.left @@ -1918,11 +2117,10 @@ public class DeviceProfile { } int cellWidth = DeviceProfile.calculateCellWidth( - mDeviceProperties.getAvailableWidthPx() - allAppsSpacing, + availableWidthPx - allAppsSpacing, 0 /* borderSpace */, numShownAllAppsColumns); - int iconAlignmentMargin = (cellWidth - getIconVisibleSizePx( - getAllAppsProfile().getIconSizePx())) / 2; + int iconAlignmentMargin = (cellWidth - getIconVisibleSizePx(allAppsIconSizePx)) / 2; return (Utilities.isRtl(context.getResources()) ? allAppsPadding.right : allAppsPadding.left) + iconAlignmentMargin; @@ -1950,8 +2148,7 @@ public class DeviceProfile { private int getHotseatRequiredWidth() { int additionalQsbSpace = getAdditionalQsbSpace(); return iconSizePx * numShownHotseatIcons - + hotseatBorderSpace * (numShownHotseatIcons - - (getHotseatProfile().getAreNavButtonsInline() ? 0 : 1)) + + hotseatBorderSpace * (numShownHotseatIcons - (areNavButtonsInline ? 0 : 1)) + additionalQsbSpace; } @@ -1960,13 +2157,11 @@ public class DeviceProfile { */ public int getQsbOffsetY() { if (isQsbInline) { - return getHotseatBarBottomPadding() - - ((getHotseatProfile().getQsbHeight() - hotseatCellHeightPx) / 2); + return getHotseatBarBottomPadding() - ((hotseatQsbHeight - hotseatCellHeightPx) / 2); } else if (isTaskbarPresent) { // QSB on top - return hotseatBarSizePx - getHotseatProfile().getQsbHeight() - + getHotseatProfile().getQsbShadowHeight(); + return hotseatBarSizePx - hotseatQsbHeight + hotseatQsbShadowHeight; } else { - return hotseatBarBottomSpacePx - getHotseatProfile().getQsbShadowHeight(); + return hotseatBarBottomSpacePx - hotseatQsbShadowHeight; } } @@ -1988,12 +2183,12 @@ public class DeviceProfile { public int getBubbleBarVerticalCenterForHome() { if (shouldAlignBubbleBarWithHotseat()) { return hotseatBarSizePx - - (isQsbInline ? 0 : getHotseatProfile().getQsbVisualHeight()) + - (isQsbInline ? 0 : hotseatQsbVisualHeight) - hotseatQsbSpace - (hotseatCellHeightPx / 2) + ((hotseatCellHeightPx - iconSizePx) / 2); } else { - return hotseatBarSizePx - (getHotseatProfile().getQsbVisualHeight() / 2); + return hotseatBarSizePx - (hotseatQsbVisualHeight / 2); } } @@ -2004,14 +2199,14 @@ public class DeviceProfile { /** Returns whether bubble bar should be aligned with the hotseat. */ public boolean shouldAlignBubbleBarWithHotseat() { - return isQsbInline || mDeviceProperties.isGestureMode(); + return isQsbInline || isGestureMode; } /** * Returns the number of pixels the taskbar is translated from the bottom of the screen. */ public int getTaskbarOffsetY() { - int taskbarIconBottomSpace = (getTaskbarProfile().getHeight() - iconSizePx) / 2; + int taskbarIconBottomSpace = (taskbarHeight - iconSizePx) / 2; int launcherIconBottomSpace = Math.min((hotseatCellHeightPx - iconSizePx) / 2, gridVisualizationPaddingY); return getHotseatBarBottomPadding() + launcherIconBottomSpace - taskbarIconBottomSpace; @@ -2019,16 +2214,14 @@ public class DeviceProfile { /** Returns the number of pixels required below OverviewActions. */ public int getOverviewActionsClaimedSpaceBelow() { - return isTaskbarPresent - ? getTaskbarProfile().getTransientTaskbarClaimedSpace() - : mInsets.bottom; + return isTaskbarPresent ? mTransientTaskbarClaimedSpace : mInsets.bottom; } /** Gets the space that the overview actions will take, including bottom margin. */ public int getOverviewActionsClaimedSpace() { - int overviewActionsSpace = mDeviceProperties.isTablet() && enableGridOnlyOverview() + int overviewActionsSpace = isTablet && Flags.enableGridOnlyOverview() ? 0 - : (overviewProfile.getActionsTopMarginPx() + overviewProfile.getActionsHeight()); + : (overviewActionsTopMarginPx + overviewActionsHeight); return overviewActionsSpace + getOverviewActionsClaimedSpaceBelow(); } @@ -2051,18 +2244,17 @@ public class DeviceProfile { public Rect getAbsoluteOpenFolderBounds() { if (isVerticalBarLayout()) { // Folders should only appear right of the drop target bar and left of the hotseat - return new Rect( - mInsets.left + getDropTargetProfile().getBarSizePx() + edgeMarginPx, + return new Rect(mInsets.left + dropTargetBarSizePx + edgeMarginPx, mInsets.top, - mInsets.left + mDeviceProperties.getAvailableWidthPx() - hotseatBarSizePx - edgeMarginPx, - mInsets.top + mDeviceProperties.getAvailableHeightPx()); + mInsets.left + availableWidthPx - hotseatBarSizePx - edgeMarginPx, + mInsets.top + availableHeightPx); } else { // Folders should only appear below the drop target bar and above the hotseat - int hotseatTop = isTaskbarPresent ? getTaskbarProfile().getHeight() : hotseatBarSizePx; + int hotseatTop = isTaskbarPresent ? taskbarHeight : hotseatBarSizePx; return new Rect(mInsets.left + edgeMarginPx, - mInsets.top + getDropTargetProfile().getBarSizePx() + edgeMarginPx, - mInsets.left + mDeviceProperties.getAvailableWidthPx() - edgeMarginPx, - mInsets.top + mDeviceProperties.getAvailableHeightPx() - hotseatTop + mInsets.top + dropTargetBarSizePx + edgeMarginPx, + mInsets.left + availableWidthPx - edgeMarginPx, + mInsets.top + availableHeightPx - hotseatTop - workspacePageIndicatorHeight - edgeMarginPx); } } @@ -2081,11 +2273,11 @@ public class DeviceProfile { * the hotseat is on the bottom row. */ public boolean isVerticalBarLayout() { - return mDeviceProperties.isLandscape() && mDeviceProperties.getTransposeLayoutWithOrientation(); + return isLandscape && transposeLayoutWithOrientation; } public boolean isSeascape() { - return mDeviceProperties.getRotationHint() == Surface.ROTATION_270 + return rotationHint == Surface.ROTATION_270 && (isVerticalBarLayout() || inv.isFixedLandscape); } @@ -2122,29 +2314,29 @@ public class DeviceProfile { writer.println(prefix + "DeviceProfile:"); writer.println(prefix + "\t1 dp = " + mMetrics.density + " px"); - writer.println(prefix + "\tisTablet:" + mDeviceProperties.isTablet()); - writer.println(prefix + "\tisPhone:" + mDeviceProperties.isPhone()); + writer.println(prefix + "\tisTablet:" + isTablet); + writer.println(prefix + "\tisPhone:" + isPhone); writer.println(prefix + "\ttransposeLayoutWithOrientation:" - + mDeviceProperties.getTransposeLayoutWithOrientation()); - writer.println(prefix + "\tisGestureMode:" + mDeviceProperties.isGestureMode()); + + transposeLayoutWithOrientation); + writer.println(prefix + "\tisGestureMode:" + isGestureMode); - writer.println(prefix + "\tisLandscape:" + mDeviceProperties.isLandscape()); - writer.println(prefix + "\tisMultiWindowMode:" + mDeviceProperties.isMultiWindowMode()); - writer.println(prefix + "\tisTwoPanels:" + mDeviceProperties.isTwoPanels()); + writer.println(prefix + "\tisLandscape:" + isLandscape); + writer.println(prefix + "\tisMultiWindowMode:" + isMultiWindowMode); + writer.println(prefix + "\tisTwoPanels:" + isTwoPanels); writer.println(prefix + "\tisLeftRightSplit:" + isLeftRightSplit); - writer.println(prefix + pxToDpStr("windowX", mDeviceProperties.getWindowX())); - writer.println(prefix + pxToDpStr("windowY", mDeviceProperties.getWindowY())); - writer.println(prefix + pxToDpStr("widthPx", mDeviceProperties.getWidthPx())); - writer.println(prefix + pxToDpStr("heightPx", mDeviceProperties.getHeightPx())); - writer.println(prefix + pxToDpStr("availableWidthPx", mDeviceProperties.getAvailableWidthPx())); - writer.println(prefix + pxToDpStr("availableHeightPx", mDeviceProperties.getAvailableHeightPx())); + writer.println(prefix + pxToDpStr("windowX", windowX)); + writer.println(prefix + pxToDpStr("windowY", windowY)); + writer.println(prefix + pxToDpStr("widthPx", widthPx)); + writer.println(prefix + pxToDpStr("heightPx", heightPx)); + writer.println(prefix + pxToDpStr("availableWidthPx", availableWidthPx)); + writer.println(prefix + pxToDpStr("availableHeightPx", availableHeightPx)); writer.println(prefix + pxToDpStr("mInsets.left", mInsets.left)); writer.println(prefix + pxToDpStr("mInsets.top", mInsets.top)); writer.println(prefix + pxToDpStr("mInsets.right", mInsets.right)); writer.println(prefix + pxToDpStr("mInsets.bottom", mInsets.bottom)); - writer.println(prefix + "\taspectRatio:" + mDeviceProperties.getAspectRatio()); + writer.println(prefix + "\taspectRatio:" + aspectRatio); writer.println(prefix + "\tisResponsiveGrid:" + mIsResponsiveGrid); writer.println(prefix + "\tisScalableGrid:" + mIsScalableGrid); @@ -2196,34 +2388,23 @@ public class DeviceProfile { writer.println(prefix + pxToDpStr("folderTopPadding", folderContentPaddingTop)); writer.println(prefix + pxToDpStr("folderFooterHeight", folderFooterHeightPx)); - writer.println(prefix + pxToDpStr("bottomSheetTopPadding", - getBottomSheetProfile().getBottomSheetTopPadding())); - writer.println(prefix + "\tbottomSheetOpenDuration: " - + getBottomSheetProfile().getBottomSheetOpenDuration()); - writer.println(prefix + "\tbottomSheetCloseDuration: " - + getBottomSheetProfile().getBottomSheetCloseDuration()); - writer.println(prefix + "\tbottomSheetWorkspaceScale: " - + getBottomSheetProfile().getBottomSheetWorkspaceScale()); - writer.println(prefix + "\tbottomSheetDepth: " - + getBottomSheetProfile().getBottomSheetDepth()); + writer.println(prefix + pxToDpStr("bottomSheetTopPadding", bottomSheetTopPadding)); + writer.println(prefix + "\tbottomSheetOpenDuration: " + bottomSheetOpenDuration); + writer.println(prefix + "\tbottomSheetCloseDuration: " + bottomSheetCloseDuration); + writer.println(prefix + "\tbottomSheetWorkspaceScale: " + bottomSheetWorkspaceScale); + writer.println(prefix + "\tbottomSheetDepth: " + bottomSheetDepth); writer.println(prefix + pxToDpStr("allAppsShiftRange", allAppsShiftRange)); writer.println(prefix + "\tallAppsOpenDuration: " + allAppsOpenDuration); writer.println(prefix + "\tallAppsCloseDuration: " + allAppsCloseDuration); - writer.println(prefix + pxToDpStr("allAppsIconSizePx", - getAllAppsProfile().getIconSizePx())); - writer.println(prefix + pxToDpStr("allAppsIconTextSizePx", - getAllAppsProfile().getIconTextSizePx())); + writer.println(prefix + pxToDpStr("allAppsIconSizePx", allAppsIconSizePx)); + writer.println(prefix + pxToDpStr("allAppsIconTextSizePx", allAppsIconTextSizePx)); writer.println(prefix + pxToDpStr("allAppsIconDrawablePaddingPx", - getAllAppsProfile().getIconDrawablePaddingPx())); - writer.println(prefix + pxToDpStr("allAppsCellHeightPx", - getAllAppsProfile().getCellHeightPx())); - writer.println(prefix + pxToDpStr("allAppsCellWidthPx", - getAllAppsProfile().getCellWidthPx())); - writer.println(prefix + pxToDpStr("allAppsBorderSpacePxX", - getAllAppsProfile().getBorderSpacePx().x)); - writer.println(prefix + pxToDpStr("allAppsBorderSpacePxY", - getAllAppsProfile().getBorderSpacePx().y)); + allAppsIconDrawablePaddingPx)); + writer.println(prefix + pxToDpStr("allAppsCellHeightPx", allAppsCellHeightPx)); + writer.println(prefix + pxToDpStr("allAppsCellWidthPx", allAppsCellWidthPx)); + writer.println(prefix + pxToDpStr("allAppsBorderSpacePxX", allAppsBorderSpacePx.x)); + writer.println(prefix + pxToDpStr("allAppsBorderSpacePxY", allAppsBorderSpacePx.y)); writer.println(prefix + "\tnumShownAllAppsColumns: " + numShownAllAppsColumns); writer.println(prefix + pxToDpStr("allAppsPadding.top", allAppsPadding.top)); writer.println(prefix + pxToDpStr("allAppsPadding.left", allAppsPadding.left)); @@ -2236,19 +2417,18 @@ public class DeviceProfile { writer.println(prefix + pxToDpStr("hotseatCellHeightPx", hotseatCellHeightPx)); writer.println(prefix + pxToDpStr("hotseatBarBottomSpacePx", hotseatBarBottomSpacePx)); writer.println(prefix + pxToDpStr("mHotseatBarEdgePaddingPx", - getHotseatProfile().getBarEdgePaddingPx())); + mHotseatBarEdgePaddingPx)); writer.println(prefix + pxToDpStr("mHotseatBarWorkspaceSpacePx", - getHotseatProfile().getBarWorkspaceSpacePx())); - writer.println(prefix + pxToDpStr("inlineNavButtonsEndSpacingPx", - getHotseatProfile().getInlineNavButtonsEndSpacingPx())); - writer.println(prefix + pxToDpStr("navButtonsLayoutWidthPx", - getHotseatProfile().getNavButtonsLayoutWidthPx())); - writer.println(prefix + pxToDpStr("hotseatBarEndOffset", - getHotseatProfile().getBarEndOffset())); + mHotseatBarWorkspaceSpacePx)); + writer.println(prefix + + pxToDpStr("inlineNavButtonsEndSpacingPx", inlineNavButtonsEndSpacingPx)); + writer.println(prefix + + pxToDpStr("navButtonsLayoutWidthPx", navButtonsLayoutWidthPx)); + writer.println(prefix + pxToDpStr("hotseatBarEndOffset", hotseatBarEndOffset)); writer.println(prefix + pxToDpStr("hotseatQsbSpace", hotseatQsbSpace)); - writer.println(prefix + pxToDpStr("hotseatQsbHeight", getHotseatProfile().getQsbHeight())); + writer.println(prefix + pxToDpStr("hotseatQsbHeight", hotseatQsbHeight)); writer.println(prefix + pxToDpStr("springLoadedHotseatBarTopMarginPx", - getHotseatProfile().getSpringLoadedBarTopMarginPx())); + springLoadedHotseatBarTopMarginPx)); Rect hotseatLayoutPadding = getHotseatLayoutPadding(context); writer.println(prefix + pxToDpStr("getHotseatLayoutPadding(context).top", hotseatLayoutPadding.top)); @@ -2265,12 +2445,10 @@ public class DeviceProfile { writer.println(prefix + "\tisTaskbarPresent:" + isTaskbarPresent); writer.println(prefix + "\tisTaskbarPresentInApps:" + isTaskbarPresentInApps); - writer.println(prefix + pxToDpStr("taskbarHeight", getTaskbarProfile().getHeight())); - writer.println(prefix + pxToDpStr("stashedTaskbarHeight", - getTaskbarProfile().getStashedTaskbarHeight())); - writer.println(prefix + pxToDpStr("taskbarBottomMargin", - getTaskbarProfile().getBottomMargin())); - writer.println(prefix + pxToDpStr("taskbarIconSize", getTaskbarProfile().getIconSize())); + writer.println(prefix + pxToDpStr("taskbarHeight", taskbarHeight)); + writer.println(prefix + pxToDpStr("stashedTaskbarHeight", stashedTaskbarHeight)); + writer.println(prefix + pxToDpStr("taskbarBottomMargin", taskbarBottomMargin)); + writer.println(prefix + pxToDpStr("taskbarIconSize", taskbarIconSize)); writer.println(prefix + pxToDpStr("desiredWorkspaceHorizontalMarginPx", desiredWorkspaceHorizontalMarginPx)); @@ -2288,36 +2466,30 @@ public class DeviceProfile { writer.println(prefix + pxToDpStr("workspaceTopPadding", workspaceTopPadding)); writer.println(prefix + pxToDpStr("workspaceBottomPadding", workspaceBottomPadding)); - writer.println(prefix + pxToDpStr("overviewTaskMarginPx", - getOverviewProfile().getTaskMarginPx())); - writer.println(prefix + pxToDpStr("overviewTaskIconSizePx", - getOverviewProfile().getTaskIconSizePx())); + writer.println(prefix + pxToDpStr("overviewTaskMarginPx", overviewTaskMarginPx)); + writer.println(prefix + pxToDpStr("overviewTaskIconSizePx", overviewTaskIconSizePx)); writer.println(prefix + pxToDpStr("overviewTaskIconDrawableSizePx", - getOverviewProfile().getTaskIconDrawableSizePx())); + overviewTaskIconDrawableSizePx)); writer.println(prefix + pxToDpStr("overviewTaskIconDrawableSizeGridPx", - getOverviewProfile().getTaskIconDrawableSizeGridPx())); + overviewTaskIconDrawableSizeGridPx)); writer.println(prefix + pxToDpStr("overviewTaskThumbnailTopMarginPx", - getOverviewProfile().getTaskThumbnailTopMarginPx())); + overviewTaskThumbnailTopMarginPx)); writer.println(prefix + pxToDpStr("overviewActionsTopMarginPx", - getOverviewProfile().getActionsTopMarginPx())); + overviewActionsTopMarginPx)); writer.println(prefix + pxToDpStr("overviewActionsHeight", - getOverviewProfile().getActionsHeight())); + overviewActionsHeight)); writer.println(prefix + pxToDpStr("overviewActionsClaimedSpaceBelow", getOverviewActionsClaimedSpaceBelow())); - writer.println(prefix + pxToDpStr("overviewPageSpacing", - getOverviewProfile().getPageSpacing())); - writer.println(prefix + pxToDpStr("overviewRowSpacing", - getOverviewProfile().getRowSpacing())); - writer.println(prefix + pxToDpStr("overviewGridSideMargin", - getOverviewProfile().getGridSideMargin())); + writer.println(prefix + pxToDpStr("overviewActionsButtonSpacing", + overviewActionsButtonSpacing)); + writer.println(prefix + pxToDpStr("overviewPageSpacing", overviewPageSpacing)); + writer.println(prefix + pxToDpStr("overviewRowSpacing", overviewRowSpacing)); + writer.println(prefix + pxToDpStr("overviewGridSideMargin", overviewGridSideMargin)); - writer.println(prefix + pxToDpStr("dropTargetBarTopMarginPx", - getDropTargetProfile().getBarTopMarginPx())); - writer.println(prefix + pxToDpStr("dropTargetBarSizePx", - getDropTargetProfile().getBarSizePx())); + writer.println(prefix + pxToDpStr("dropTargetBarTopMarginPx", dropTargetBarTopMarginPx)); + writer.println(prefix + pxToDpStr("dropTargetBarSizePx", dropTargetBarSizePx)); writer.println( - prefix + pxToDpStr("dropTargetBarBottomMarginPx", - getDropTargetProfile().getBarBottomMarginPx())); + prefix + pxToDpStr("dropTargetBarBottomMarginPx", dropTargetBarBottomMarginPx)); writer.println(prefix + pxToDpStr("getCellLayoutSpringLoadShrunkTop()", getCellLayoutSpringLoadShrunkTop())); @@ -2349,12 +2521,12 @@ public class DeviceProfile { /** Returns a reduced representation of this DeviceProfile. */ public String toSmallString() { - return "isTablet:" + mDeviceProperties.isTablet() + ", " - + "mDeviceProperties.isMultiDisplay():" + mDeviceProperties.isMultiDisplay() + ", " - + "widthPx:" + mDeviceProperties.getWidthPx() + ", " - + "heightPx:" + mDeviceProperties.getHeightPx() + ", " + return "isTablet:" + isTablet + ", " + + "isMultiDisplay:" + isMultiDisplay + ", " + + "widthPx:" + widthPx + ", " + + "heightPx:" + heightPx + ", " + "insets:" + mInsets + ", " - + "rotationHint:" + mDeviceProperties.getRotationHint(); + + "rotationHint:" + rotationHint; } private static Context getContext(Context c, Info info, int orientation, WindowBounds bounds) { @@ -2378,35 +2550,15 @@ public class DeviceProfile { if (shouldAdjustHotseatOnNavBarLocationUpdate(context)) { boolean isRtl = Utilities.isRtl(context.getResources()); if (isBubblesOnLeft) { - return isRtl ? -getHotseatProfile().getNavButtonsLayoutWidthPx() : 0; + return isRtl ? -navButtonsLayoutWidthPx : 0; } else { - return isRtl ? 0 : getHotseatProfile().getNavButtonsLayoutWidthPx(); + return isRtl ? 0 : navButtonsLayoutWidthPx; } } else { return 0; } } - public TaskbarProfile getTaskbarProfile() { - return mTaskbarProfile; - } - - public DropTargetProfile getDropTargetProfile() { - return mDropTargetProfile; - } - - public BottomSheetProfile getBottomSheetProfile() { - return mBottomSheetProfile; - } - - public AllAppsProfile getAllAppsProfile() { - return mAllAppsProfile; - } - - public void setAllAppsProfile(AllAppsProfile allAppsProfile) { - mAllAppsProfile = allAppsProfile; - } - /** * Callback when a component changes the DeviceProfile associated with it, as a result of * configuration change @@ -2457,7 +2609,6 @@ public class DeviceProfile { private Consumer<DeviceProfile> mOverrideProvider; private boolean mIsTransientTaskbar; - private DisplayOptionSpec mDisplayOptionSpec; public Builder(Context context, InvariantDeviceProfile inv, Info info, WindowManagerProxy wmProxy, ThemeManager themeManager) { @@ -2526,21 +2677,6 @@ public class DeviceProfile { return this; } - /** - * Set the displayOptionSpec for the builder for secondary displays - * @return This Builder - */ - public Builder setSecondaryDisplayOptionSpec() { - mDisplayOptionSpec = createDisplayOptionSpec(mContext, mInfo, - mWindowBounds.isLandscape()); - return this; - } - - private Builder setDisplayOptionSpec(DisplayOptionSpec displayOptionSpec) { - mDisplayOptionSpec = displayOptionSpec; - return this; - } - public DeviceProfile build() { if (mWindowBounds == null) { throw new IllegalArgumentException("Window bounds not set"); @@ -2561,23 +2697,10 @@ public class DeviceProfile { if (mOverrideProvider == null) { mOverrideProvider = DEFAULT_DIMENSION_PROVIDER; } - if (mDisplayOptionSpec == null) { - mDisplayOptionSpec = createDefaultDisplayOptionSpec(mInfo, mWindowBounds, - mIsMultiDisplay, mInv); - } return new DeviceProfile(mContext, mInv, mInfo, mWMProxy, mThemeManager, mWindowBounds, mDotRendererCache, mIsMultiWindowMode, mTransposeLayoutWithOrientation, mIsMultiDisplay, - mIsGestureMode, mViewScaleProvider, mOverrideProvider, mIsTransientTaskbar, - mDisplayOptionSpec); - } - - @VisibleForTesting - static DisplayOptionSpec createDefaultDisplayOptionSpec(DisplayController.Info info, - WindowBounds windowBounds, boolean isMultiDisplay, InvariantDeviceProfile inv) { - boolean isTwoPanels = info.isTablet(windowBounds) && isMultiDisplay; - boolean isLandscape = windowBounds.isLandscape(); - return new DisplayOptionSpec(inv, isTwoPanels, isLandscape); + mIsGestureMode, mViewScaleProvider, mOverrideProvider, mIsTransientTaskbar); } } } diff --git a/src/com/android/launcher3/DropTarget.java b/src/com/android/launcher3/DropTarget.java index e9e600728e..7f0c7b50c0 100644 --- a/src/com/android/launcher3/DropTarget.java +++ b/src/com/android/launcher3/DropTarget.java @@ -20,17 +20,15 @@ import android.content.Context; import android.graphics.Rect; import android.view.View; -import androidx.annotation.Nullable; - import com.android.launcher3.accessibility.DragViewStateAnnouncer; -import com.android.launcher3.dagger.LauncherComponentProvider; import com.android.launcher3.dragndrop.DragOptions; import com.android.launcher3.dragndrop.DragView; import com.android.launcher3.dragndrop.DraggableView; -import com.android.launcher3.folder.FolderNameSuggestionLoader; +import com.android.launcher3.folder.FolderNameProvider; import com.android.launcher3.logging.InstanceId; import com.android.launcher3.logging.InstanceIdSequence; import com.android.launcher3.model.data.ItemInfo; +import com.android.launcher3.util.Executors; /** * Interface defining an object that can receive a drag. @@ -74,7 +72,7 @@ public interface DropTarget { public DragViewStateAnnouncer stateAnnouncer; - public FolderNameSuggestionLoader folderNameSuggestionLoader; + public FolderNameProvider folderNameProvider; /** The source view (ie. icon, widget etc.) that is being dragged and which the * DragView represents. May be an actual View class or a virtual stand-in */ @@ -84,8 +82,8 @@ public interface DropTarget { public final InstanceId logInstanceId = new InstanceIdSequence().newInstanceId(); public DragObject(Context context) { - folderNameSuggestionLoader = LauncherComponentProvider.get(context) - .getFolderNameSuggestionLoader(); + Executors.MODEL_EXECUTOR.post(() -> + folderNameProvider = FolderNameProvider.newInstance(context)); } /** @@ -149,18 +147,8 @@ public interface DropTarget { // These methods are implemented in Views void getHitRectRelativeToDragLayer(Rect outRect); - /** - * Returns the drop target view.<br> - * - * By default, the implementor class is cast to the view.<br> - * - * The returned {@link View} will be use to map touch coordinates to the view self descendant - * and set as [{@link DragObject#x DragObject.x} {@link DragObject#y DragObject.y}].<br> - * - * If this method returns {@code null}, the raw touch event coordinates will be directly - * assigned to [{@link DragObject#x DragObject.x} and {@link DragObject#y DragObject.y}]. - */ - default @Nullable View getDropView() { + /** Returns the drop target view. By default, the implementor class is cast to the view. */ + default View getDropView() { return (View) this; } } diff --git a/src/com/android/launcher3/DropTargetBar.java b/src/com/android/launcher3/DropTargetBar.java index 58ab4bada2..0e75cf831f 100644 --- a/src/com/android/launcher3/DropTargetBar.java +++ b/src/com/android/launcher3/DropTargetBar.java @@ -44,8 +44,7 @@ public class DropTargetBar extends FrameLayout protected static final int DEFAULT_DRAG_FADE_DURATION = 175; protected static final TimeInterpolator DEFAULT_INTERPOLATOR = Interpolators.ACCELERATE; - private final Runnable mFadeAnimationEndRunnable = - () -> updateVisibility(DropTargetBar.this); + private final Runnable mFadeAnimationEndRunnable = () -> updateVisibility(DropTargetBar.this); private final Launcher mLauncher; @@ -85,9 +84,8 @@ public class DropTargetBar extends FrameLayout @Override public void setInsets(Rect insets) { FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) getLayoutParams(); - DeviceProfile deviceProfile = mLauncher.getDeviceProfile(); - mIsVertical = deviceProfile.isVerticalBarLayout(); - int widthPx = deviceProfile.getDeviceProperties().getWidthPx(); + DeviceProfile grid = mLauncher.getDeviceProfile(); + mIsVertical = grid.isVerticalBarLayout(); lp.leftMargin = insets.left; lp.topMargin = insets.top; @@ -96,34 +94,33 @@ public class DropTargetBar extends FrameLayout int tooltipLocation = TOOLTIP_DEFAULT; int horizontalMargin; - if (deviceProfile.getDeviceProperties().isTablet()) { + if (grid.isTablet) { // XXX: If the icon size changes across orientations, we will have to take - // that into account here too. - horizontalMargin = ((widthPx - 2 * deviceProfile.edgeMarginPx - - (deviceProfile.inv.numColumns * deviceProfile.cellWidthPx)) - / (2 * (deviceProfile.inv.numColumns + 1))) - + deviceProfile.edgeMarginPx; + // that into account here too. + horizontalMargin = ((grid.widthPx - 2 * grid.edgeMarginPx + - (grid.inv.numColumns * grid.cellWidthPx)) + / (2 * (grid.inv.numColumns + 1))) + + grid.edgeMarginPx; } else { horizontalMargin = getContext().getResources() .getDimensionPixelSize(R.dimen.drop_target_bar_margin_horizontal); } - lp.topMargin += deviceProfile.getDropTargetProfile().getBarTopMarginPx(); - lp.bottomMargin += deviceProfile.getDropTargetProfile().getBarBottomMarginPx(); - lp.width = deviceProfile.getDeviceProperties().getAvailableWidthPx() - 2 * horizontalMargin; + lp.topMargin += grid.dropTargetBarTopMarginPx; + lp.bottomMargin += grid.dropTargetBarBottomMarginPx; + lp.width = grid.availableWidthPx - 2 * horizontalMargin; if (mIsVertical) { - lp.leftMargin = (widthPx - lp.width) / 2; - lp.rightMargin = (widthPx - lp.width) / 2; + lp.leftMargin = (grid.widthPx - lp.width) / 2; + lp.rightMargin = (grid.widthPx - lp.width) / 2; } - lp.height = deviceProfile.getDropTargetProfile().getBarSizePx(); + lp.height = grid.dropTargetBarSizePx; lp.gravity = Gravity.CENTER_HORIZONTAL | Gravity.TOP; DeviceProfile dp = mLauncher.getDeviceProfile(); - int horizontalPadding = dp.getDropTargetProfile().getHorizontalPaddingPx(); - int verticalPadding = dp.getDropTargetProfile().getVerticalPaddingPx(); + int horizontalPadding = dp.dropTargetHorizontalPaddingPx; + int verticalPadding = dp.dropTargetVerticalPaddingPx; setLayoutParams(lp); for (ButtonDropTarget button : mDropTargets) { - button.setTextSize(TypedValue.COMPLEX_UNIT_PX, - deviceProfile.getDropTargetProfile().getTextSizePx()); + button.setTextSize(TypedValue.COMPLEX_UNIT_PX, grid.dropTargetTextSizePx); button.setToolTipLocation(tooltipLocation); button.setPadding(horizontalPadding, verticalPadding, horizontalPadding, verticalPadding); @@ -150,52 +147,51 @@ public class DropTargetBar extends FrameLayout ButtonDropTarget firstButton = mTempTargets[0]; firstButton.setTextSize(TypedValue.COMPLEX_UNIT_PX, - mLauncher.getDeviceProfile().getDropTargetProfile().getTextSizePx()); + mLauncher.getDeviceProfile().dropTargetTextSizePx); firstButton.setTextVisible(true); firstButton.setIconVisible(true); firstButton.measure(widthSpec, heightSpec); firstButton.resizeTextToFit(); } else if (visibleCount == 2) { DeviceProfile dp = mLauncher.getDeviceProfile(); - int verticalPadding = dp.getDropTargetProfile().getVerticalPaddingPx(); - int horizontalPadding = dp.getDropTargetProfile().getHorizontalPaddingPx(); + int verticalPadding = dp.dropTargetVerticalPaddingPx; + int horizontalPadding = dp.dropTargetHorizontalPaddingPx; ButtonDropTarget firstButton = mTempTargets[0]; - firstButton.setTextSize(TypedValue.COMPLEX_UNIT_PX, - dp.getDropTargetProfile().getTextSizePx()); + firstButton.setTextSize(TypedValue.COMPLEX_UNIT_PX, dp.dropTargetTextSizePx); firstButton.setTextVisible(true); firstButton.setIconVisible(true); firstButton.setTextMultiLine(false); - // Reset first button padding in case it was previously changed to multi-line text. + // Reset first button padding in case it was previously changed to multi-line + // text. firstButton.setPadding(horizontalPadding, verticalPadding, horizontalPadding, verticalPadding); ButtonDropTarget secondButton = mTempTargets[1]; - secondButton.setTextSize(TypedValue.COMPLEX_UNIT_PX, - dp.getDropTargetProfile().getTextSizePx()); + secondButton.setTextSize(TypedValue.COMPLEX_UNIT_PX, dp.dropTargetTextSizePx); secondButton.setTextVisible(true); secondButton.setIconVisible(true); secondButton.setTextMultiLine(false); - // Reset second button padding in case it was previously changed to multi-line text. + // Reset second button padding in case it was previously changed to multi-line + // text. secondButton.setPadding(horizontalPadding, verticalPadding, horizontalPadding, verticalPadding); - + int availableWidth; - if (dp.getDeviceProperties().isTwoPanels()) { + if (dp.isTwoPanels) { // Each button for two panel fits to half the width of the screen excluding the // center gap between the buttons. - availableWidth = (dp.getDeviceProperties().getAvailableWidthPx() - - dp.getDropTargetProfile().getGapPx()) / 2; + availableWidth = (dp.availableWidthPx - dp.dropTargetGapPx) / 2; } else { // Both buttons plus the button gap do not display past the edge of the screen. - availableWidth = dp.getDeviceProperties().getAvailableWidthPx() - - dp.getDropTargetProfile().getGapPx(); + availableWidth = dp.availableWidthPx - dp.dropTargetGapPx; } int widthSpec = MeasureSpec.makeMeasureSpec(availableWidth, MeasureSpec.AT_MOST); firstButton.measure(widthSpec, heightSpec); if (!mIsVertical) { - // Remove both icons and put the button's text on two lines if text is truncated. + // Remove both icons and put the button's text on two lines if text is + // truncated. if (firstButton.isTextTruncated(availableWidth)) { firstButton.setIconVisible(false); secondButton.setIconVisible(false); @@ -205,14 +201,14 @@ public class DropTargetBar extends FrameLayout } } - if (!dp.getDeviceProperties().isTwoPanels()) { - availableWidth -= firstButton.getMeasuredWidth() - + dp.getDropTargetProfile().getGapPx(); + if (!dp.isTwoPanels) { + availableWidth -= firstButton.getMeasuredWidth() + dp.dropTargetGapPx; widthSpec = MeasureSpec.makeMeasureSpec(availableWidth, MeasureSpec.AT_MOST); } secondButton.measure(widthSpec, heightSpec); if (!mIsVertical) { - // Remove both icons and put the button's text on two lines if text is truncated. + // Remove both icons and put the button's text on two lines if text is + // truncated. if (secondButton.isTextTruncated(availableWidth)) { secondButton.setIconVisible(false); firstButton.setIconVisible(false); @@ -222,9 +218,9 @@ public class DropTargetBar extends FrameLayout } } - // If text is still truncated, shrink to fit in measured width and resize both targets. - float minTextSize = - Math.min(firstButton.resizeTextToFit(), secondButton.resizeTextToFit()); + // If text is still truncated, shrink to fit in measured width and resize both + // targets. + float minTextSize = Math.min(firstButton.resizeTextToFit(), secondButton.resizeTextToFit()); if (firstButton.getTextSize() != minTextSize || secondButton.getTextSize() != minTextSize) { firstButton.setTextSize(minTextSize); @@ -246,11 +242,11 @@ public class DropTargetBar extends FrameLayout float scale = dp.getWorkspaceSpringLoadScale(mLauncher); Workspace<?> ws = mLauncher.getWorkspace(); int barCenter; - if (dp.getDeviceProperties().isTwoPanels()) { + if (dp.isTwoPanels) { barCenter = (right - left) / 2; } else { int workspaceCenter = (ws.getLeft() + ws.getRight()) / 2; - int cellLayoutCenter = ((dp.getInsets().left + dp.workspacePadding.left) + (dp.getDeviceProperties().getWidthPx() + int cellLayoutCenter = ((dp.getInsets().left + dp.workspacePadding.left) + (dp.widthPx - dp.getInsets().right - dp.workspacePadding.right)) / 2; int cellLayoutCenterOffset = (int) ((cellLayoutCenter - workspaceCenter) * scale); barCenter = workspaceCenter + cellLayoutCenterOffset - left; @@ -261,11 +257,11 @@ public class DropTargetBar extends FrameLayout button.layout(barCenter - (button.getMeasuredWidth() / 2), 0, barCenter + (button.getMeasuredWidth() / 2), button.getMeasuredHeight()); } else if (visibleCount == 2) { - int buttonGap = dp.getDropTargetProfile().getGapPx(); + int buttonGap = dp.dropTargetGapPx; ButtonDropTarget leftButton = mTempTargets[0]; ButtonDropTarget rightButton = mTempTargets[1]; - if (dp.getDeviceProperties().isTwoPanels()) { + if (dp.isTwoPanels) { leftButton.layout(barCenter - leftButton.getMeasuredWidth() - (buttonGap / 2), 0, barCenter - (buttonGap / 2), leftButton.getMeasuredHeight()); rightButton.layout(barCenter + (buttonGap / 2), 0, @@ -333,7 +329,8 @@ public class DropTargetBar extends FrameLayout } /** - * This is called to defer hiding the delete drop target until the drop animation has completed, + * This is called to defer hiding the delete drop target until the drop + * animation has completed, * instead of hiding immediately when the drag has ended. */ protected void deferOnDragEnd() { @@ -349,10 +346,7 @@ public class DropTargetBar extends FrameLayout } } - /** - * Returns all possible drop targets (including ones that aren't visible) - */ public ButtonDropTarget[] getDropTargets() { - return mDropTargets; + return getVisibility() == View.VISIBLE ? mDropTargets : new ButtonDropTarget[0]; } } diff --git a/src/com/android/launcher3/DropTargetHandler.kt b/src/com/android/launcher3/DropTargetHandler.kt index a5c11352a5..3c162a2f85 100644 --- a/src/com/android/launcher3/DropTargetHandler.kt +++ b/src/com/android/launcher3/DropTargetHandler.kt @@ -64,8 +64,8 @@ class DropTargetHandler(launcher: Launcher) { mLauncher.modelWriter.prepareToUndoDelete() } - fun onDeleteComplete(item: ItemInfo, view: View?) { - removeItemAndStripEmptyScreens(view, item) + fun onDeleteComplete(item: ItemInfo) { + removeItemAndStripEmptyScreens(null /* view */, item) AbstractFloatingView.closeOpenViews( mLauncher, false, diff --git a/src/com/android/launcher3/GestureNavContract.java b/src/com/android/launcher3/GestureNavContract.java index 65398e6290..e285930495 100644 --- a/src/com/android/launcher3/GestureNavContract.java +++ b/src/com/android/launcher3/GestureNavContract.java @@ -55,7 +55,6 @@ public class GestureNavContract { public static final String EXTRA_ICON_SURFACE = "gesture_nav_contract_surface_control"; public static final String EXTRA_REMOTE_CALLBACK = "android.intent.extra.REMOTE_CALLBACK"; public static final String EXTRA_ON_FINISH_CALLBACK = "gesture_nav_contract_finish_callback"; - public static final String EXTRA_ENABLE_GESTURE_CONTRACT = "gesture_nav_contract_enable"; public final ComponentName componentName; public final UserHandle user; @@ -95,34 +94,14 @@ public class GestureNavContract { } /** - * Returns if a {@link GestureNavContract} can be built from the given intent without clearing - * the contract. + * Clears and returns the GestureNavContract if it was present in the intent. */ - public static boolean canBuildFromIntent(@NonNull Intent intent) { - return fromIntent(intent, /* clearGnc= */ false) != null; - } - - public static boolean isContractEnabled(@NonNull Intent intent) { - Bundle extras = intent.getBundleExtra(EXTRA_GESTURE_CONTRACT); - - return extras != null && extras.getBoolean(EXTRA_ENABLE_GESTURE_CONTRACT, true); - } - - /** - * Clears and returns the {@link GestureNavContract} if it was present in the intent. - */ - public static GestureNavContract fromIntent(@NonNull Intent intent) { - return fromIntent(intent, /* clearGnc= */ true); - } - - private static GestureNavContract fromIntent(@NonNull Intent intent, boolean clearGnc) { + public static GestureNavContract fromIntent(Intent intent) { Bundle extras = intent.getBundleExtra(EXTRA_GESTURE_CONTRACT); if (extras == null) { return null; } - if (clearGnc) { - intent.removeExtra(EXTRA_GESTURE_CONTRACT); - } + intent.removeExtra(EXTRA_GESTURE_CONTRACT); ComponentName componentName = extras.getParcelable(EXTRA_COMPONENT_NAME); UserHandle userHandle = extras.getParcelable(EXTRA_USER); diff --git a/src/com/android/launcher3/Hotseat.java b/src/com/android/launcher3/Hotseat.java index 77c90e0a5d..81d746b661 100644 --- a/src/com/android/launcher3/Hotseat.java +++ b/src/com/android/launcher3/Hotseat.java @@ -18,8 +18,6 @@ package com.android.launcher3; -import static android.view.View.MeasureSpec.makeMeasureSpec; - import static com.android.launcher3.LauncherAnimUtils.VIEW_TRANSLATE_X; import static com.android.launcher3.util.MultiTranslateDelegate.INDEX_BUBBLE_ADJUSTMENT_ANIM; @@ -78,12 +76,11 @@ public class Hotseat extends CellLayout implements Insettable { public static final int ALPHA_CHANNEL_TASKBAR_ALIGNMENT = 0; public static final int ALPHA_CHANNEL_PREVIEW_RENDERER = 1; public static final int ALPHA_CHANNEL_TASKBAR_STASH = 2; - public static final int ALPHA_CHANNEL_ASSISTANT_VISIBILITY = 3; - public static final int ALPHA_CHANNEL_CHANNELS_COUNT = 4; + public static final int ALPHA_CHANNEL_CHANNELS_COUNT = 3; @Retention(RetentionPolicy.RUNTIME) @IntDef({ALPHA_CHANNEL_TASKBAR_ALIGNMENT, ALPHA_CHANNEL_PREVIEW_RENDERER, - ALPHA_CHANNEL_TASKBAR_STASH, ALPHA_CHANNEL_ASSISTANT_VISIBILITY}) + ALPHA_CHANNEL_TASKBAR_STASH}) public @interface HotseatQsbAlphaId { } @@ -143,20 +140,10 @@ public class Hotseat extends CellLayout implements Insettable { } int layoutId = hotseatMode.getLayoutResourceId(); - //mQsb = LayoutInflater.from(context).inflate(layoutId, this, false); - // pE-TODO(QPR1): Investigate Qsb - if (Flags.enableQsbOnHotseat()) { - mQsb = LayoutInflater.from(context).inflate(R.layout.qsb_container_hotseat, this, - false); - } else { - mQsb = LayoutInflater.from(context).inflate(R.layout.search_container_hotseat, this, - false); - } - + mQsb = LayoutInflater.from(context).inflate(layoutId, this, false); addView(mQsb); mIconsAlphaChannels = new MultiValueAlpha(getShortcutsAndWidgets(), ALPHA_CHANNEL_CHANNELS_COUNT); - mIconsAlphaChannels.setUpdateVisibility(true); if (mQsb instanceof Reorderable qsbReorderable) { mQsbTranslationX = qsbReorderable.getTranslateDelegate() .getTranslationX(MultiTranslateDelegate.INDEX_NAV_BAR_ANIM); @@ -164,7 +151,6 @@ public class Hotseat extends CellLayout implements Insettable { mIconsTranslationXFactory = new MultiPropertyFactory<>(getShortcutsAndWidgets(), VIEW_TRANSLATE_X, ICONS_TRANSLATION_X_CHANNELS_COUNT, Float::sum); mQsbAlphaChannels = new MultiValueAlpha(mQsb, ALPHA_CHANNEL_CHANNELS_COUNT); - mQsbAlphaChannels.setUpdateVisibility(true); setUpBackground(); } @@ -381,17 +367,8 @@ public class Hotseat extends CellLayout implements Insettable { super.onMeasure(widthMeasureSpec, heightMeasureSpec); DeviceProfile dp = mActivity.getDeviceProfile(); - - // LC: Fix weird sizing with hotseatQsbWidth being 0 on phone - int width; - if (dp.isQsbInline) { - width = dp.hotseatQsbWidth; - } else { - width = getShortcutsAndWidgets().getMeasuredWidth(); - } - - mQsb.measure(makeMeasureSpec(width, MeasureSpec.EXACTLY), - makeMeasureSpec(dp.getHotseatProfile().getQsbHeight(), MeasureSpec.EXACTLY)); + mQsb.measure(MeasureSpec.makeMeasureSpec(dp.hotseatQsbWidth, MeasureSpec.EXACTLY), + MeasureSpec.makeMeasureSpec(dp.hotseatQsbHeight, MeasureSpec.EXACTLY)); } @Override @@ -411,7 +388,7 @@ public class Hotseat extends CellLayout implements Insettable { int right = left + qsbMeasuredWidth; int bottom = b - t - dp.getQsbOffsetY(); - int top = bottom - dp.getHotseatProfile().getQsbHeight(); + int top = bottom - dp.hotseatQsbHeight; mQsb.layout(left, top, right, bottom); } diff --git a/src/com/android/launcher3/InvariantDeviceProfile.java b/src/com/android/launcher3/InvariantDeviceProfile.java index d21da9da5b..5e7f23b245 100644 --- a/src/com/android/launcher3/InvariantDeviceProfile.java +++ b/src/com/android/launcher3/InvariantDeviceProfile.java @@ -16,7 +16,6 @@ package com.android.launcher3; -import static com.android.launcher3.Flags.enableScalabilityForDesktopExperience; import static com.android.launcher3.GridType.GRID_TYPE_ANY; import static com.android.launcher3.GridType.GRID_TYPE_NON_ONE_GRID; import static com.android.launcher3.GridType.GRID_TYPE_ONE_GRID; @@ -58,6 +57,7 @@ import androidx.annotation.VisibleForTesting; import androidx.annotation.XmlRes; import androidx.core.content.res.ResourcesCompat; +import app.lawnchair.DeviceProfileOverrides.DBGridInfo; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppComponent; @@ -95,7 +95,6 @@ import java.util.stream.Collectors; import javax.inject.Inject; -import app.lawnchair.DeviceProfileOverrides.DBGridInfo; import app.lawnchair.DeviceProfileOverrides; @LauncherAppSingleton @@ -111,14 +110,13 @@ public class InvariantDeviceProfile { "idp_non_fixed_landscape_grid_name"; @Retention(RetentionPolicy.SOURCE) - @IntDef({TYPE_PHONE, TYPE_MULTI_DISPLAY, TYPE_TABLET, TYPE_DESKTOP}) + @IntDef({TYPE_PHONE, TYPE_MULTI_DISPLAY, TYPE_TABLET}) public @interface DeviceType { } public static final int TYPE_PHONE = 0; public static final int TYPE_MULTI_DISPLAY = 1; public static final int TYPE_TABLET = 2; - public static final int TYPE_DESKTOP = 3; private static final float ICON_SIZE_DEFINED_IN_APP_DP = 48; @@ -162,20 +160,7 @@ public class InvariantDeviceProfile { public int[] numFolderColumns; public float[] iconSize; public float[] iconTextSize; - /** - * Bitmap size for workspace icons. This is calculated independently from all apps - * to allow different icon size factors without affecting each other. - */ public int iconBitmapSize; - /** - * Bitmap size for all apps icons. This is calculated independently from workspace - * to allow different icon size factors without affecting each other. - */ - public int allAppsIconBitmapSize; - /** - * The icon density used for loading resources. This is based on the maximum of - * iconBitmapSize and allAppsIconBitmapSize to ensure adequate quality for both. - */ public int fillResIconDpi; public static @DeviceType int deviceType; public static Info displayInfo; @@ -229,7 +214,7 @@ public class InvariantDeviceProfile { public @StyleRes int allAppsStyle; /** - * Do not query directly. see {@link deviceprofile#isScalableGrid}. + * Do not query directly. see {@link DeviceProfile#isScalableGrid}. */ protected boolean isScalable; @XmlRes @@ -263,11 +248,6 @@ public class InvariantDeviceProfile { private String mLocale = ""; public boolean enableTwoLinesInAllApps = false; - - // If non-negative, the workspace row with which top of the all apps container is to be aligned - // with. - public int appListAlignedWithWorkspaceRow = -1; - /** * Fixed landscape mode is the landscape on the phones. */ @@ -277,6 +257,7 @@ public class InvariantDeviceProfile { public int gridType; public String dbFile; public int defaultLayoutId; + public int demoModeLayoutId; public boolean[] inlineQsb = new boolean[COUNT_SIZES]; /** @@ -419,6 +400,7 @@ public class InvariantDeviceProfile { dbFile = dbGridInfo.getDbFile(); gridType = closestProfile.gridType; defaultLayoutId = closestProfile.defaultLayoutId; + demoModeLayoutId = closestProfile.demoModeLayoutId; numFolderRows = closestProfile.numFolderRows; numFolderColumns = closestProfile.numFolderColumns; @@ -443,7 +425,6 @@ public class InvariantDeviceProfile { allAppsCellSpecsTwoPanelId = closestProfile.mAllAppsCellSpecsTwoPanelId; numAllAppsRowsForCellHeightCalculation = closestProfile.mNumAllAppsRowsForCellHeightCalculation; - appListAlignedWithWorkspaceRow = closestProfile.mAllAppsAlignedWithWorkspaceRow; this.deviceType = displayInfo.getDeviceType(); this.displayInfo = displayInfo; @@ -459,11 +440,8 @@ public class InvariantDeviceProfile { for (int i = 1; i < allAppsIconSize.length; i++) { maxAllAppsIconSize = Math.max(maxAllAppsIconSize, allAppsIconSize[i]); } - // Calculate separate bitmap sizes for workspace and all apps - iconBitmapSize = ResourceUtils.pxFromDp(maxIconSize, metrics); - allAppsIconBitmapSize = ResourceUtils.pxFromDp(maxAllAppsIconSize, metrics); - // Use the larger of the two for fillResIconDpi to ensure we have adequate resources - fillResIconDpi = getLauncherIconDensity(Math.max(iconBitmapSize, allAppsIconBitmapSize)); + iconBitmapSize = ResourceUtils.pxFromDp(Math.max(maxIconSize, maxAllAppsIconSize), metrics); + fillResIconDpi = getLauncherIconDensity(iconBitmapSize); iconTextSize = displayOption.textSizes; @@ -537,14 +515,14 @@ public class InvariantDeviceProfile { int numMinShownHotseatIconsForTablet = supportedProfiles .stream() - .filter(deviceProfile -> deviceProfile.getDeviceProperties().isTablet()) + .filter(deviceProfile -> deviceProfile.isTablet) .mapToInt(deviceProfile -> deviceProfile.numShownHotseatIcons) .min() .orElse(0); supportedProfiles .stream() - .filter(deviceProfile -> deviceProfile.getDeviceProperties().isTablet()) + .filter(deviceProfile -> deviceProfile.isTablet) .forEach(deviceProfile -> { deviceProfile.numShownHotseatIcons = numMinShownHotseatIconsForTablet; deviceProfile.recalculateHotseatWidthAndBorderSpace(); @@ -574,11 +552,7 @@ public class InvariantDeviceProfile { */ @VisibleForTesting public void setCurrentGrid(Context context, String newGridName) { - if (TextUtils.equals(mPrefs.get(GRID_NAME), newGridName)) return; - // pE-TODO(QPR1): Move off setCurrentGrid to Prefs - // Lawnchair-TODO: Move off setCurrentGrid to Prefs - mPrefs.put(GRID_NAME, newGridName); - //DeviceProfileOverrides.INSTANCE.get(context).setCurrentGrid(newGridName); + DeviceProfileOverrides.INSTANCE.get(context).setCurrentGrid(newGridName); MAIN_EXECUTOR.execute(() -> { onConfigChanged(context.getApplicationContext()); }); @@ -587,7 +561,7 @@ public class InvariantDeviceProfile { private Object[] toModelState() { return new Object[]{ numColumns, numRows, numSearchContainerColumns, numDatabaseHotseatIcons, - iconBitmapSize, allAppsIconBitmapSize, fillResIconDpi, numDatabaseAllAppsColumns, dbFile}; + iconBitmapSize, fillResIconDpi, numDatabaseAllAppsColumns, dbFile, mLocale}; } /** Updates IDP using the provided context. Notifies listeners of change. */ @@ -596,7 +570,7 @@ public class InvariantDeviceProfile { Object[] oldState = toModelState(); // Re-init grid - initGrid(context, mPrefs.get(GRID_NAME)); + initGrid(context, getCurrentGridName(context)); boolean modelPropsChanged = !Arrays.equals(oldState, toModelState()); for (OnIDPChangeListener listener : mChangeListeners) { @@ -682,19 +656,6 @@ public class InvariantDeviceProfile { Info displayInfo) { ArrayList<GridSize> gridSizes = new ArrayList<>(); - // Difference between grid sizes available for different display size breakpoints is more - // stark on desktop devices, so using grid size matched against display pixel sizes results - // in noticeable worse UI on devices with larger DPI. Compromise by matching grid size - // breakpoints against pixel size for stable device density on desktop, to ensure optimal - // grid size is selected for the default display size. - // TODO(b/420970288): Ideally, this should use the current DPI, and update grid content if - // the change in display size changes the grid size. - boolean matchAgainstDefaultDpSize = displayInfo.getDeviceType() == TYPE_DESKTOP - && enableScalabilityForDesktopExperience(); - float stableDensityScale = - matchAgainstDefaultDpSize - ? displayInfo.getStableDensityScaleFactor() : 1.0f; - try (XmlResourceParser parser = resourceHelper.getXml()) { final int depth = parser.getDepth(); int type; @@ -702,51 +663,19 @@ public class InvariantDeviceProfile { || parser.getDepth() > depth) && type != XmlPullParser.END_DOCUMENT) { if ((type == XmlPullParser.START_TAG) && "GridSize".equals(parser.getName())) { - gridSizes.add(new GridSize(context, Xml.asAttributeSet(parser), - stableDensityScale)); + gridSizes.add(new GridSize(context, Xml.asAttributeSet(parser))); } } } catch (IOException | XmlPullParserException e) { throw new RuntimeException(e); } - // Finds the min width and height in px for all displays. + // Finds the min width and height in dp for all displays. int[] dimens = findMinWidthAndHeightPxForDevice(displayInfo); return findBestGridSize(gridSizes, dimens[0], dimens[1]); } - private static AllAppsSize getAllAppsSize(ResourceHelper resourceHelper, Context context, - Info displayInfo) { - ArrayList<AllAppsSize> allAppsSizes = new ArrayList<>(); - - boolean matchAgainstDefaultDpSize = displayInfo.getDeviceType() == TYPE_DESKTOP - && enableScalabilityForDesktopExperience(); - float stableDensityScale = - matchAgainstDefaultDpSize - ? displayInfo.getStableDensityScaleFactor() : 1.0f; - - try (XmlResourceParser parser = resourceHelper.getXml()) { - final int depth = parser.getDepth(); - int type; - while (((type = parser.next()) != XmlPullParser.END_TAG - || parser.getDepth() > depth) && type != XmlPullParser.END_DOCUMENT) { - if ((type == XmlPullParser.START_TAG) - && "AllAppsSize".equals(parser.getName())) { - allAppsSizes.add(new AllAppsSize(context, Xml.asAttributeSet(parser), - stableDensityScale)); - } - } - } catch (IOException | XmlPullParserException e) { - throw new RuntimeException(e); - } - - // Finds the min width and height in px for all displays. - int[] dimens = findMinWidthAndHeightPxForDevice(displayInfo); - - return findBestAllAppsSize(allAppsSizes, dimens[0]); - } - /** * @return the biggest grid size that fits the display dimensions. * If no best grid size is found, return null. @@ -766,23 +695,6 @@ public class InvariantDeviceProfile { return selectedGridSize; } - /** - * @return An `AllAppsSize` spec with min width at most `targetWidthPx`. - * If multiple specs are available, selects the one closest to the `targetWidthPx`. - */ - private static AllAppsSize findBestAllAppsSize(List<AllAppsSize> list, int targetWidthPx) { - AllAppsSize selectedGridSize = null; - for (AllAppsSize item : list) { - if (targetWidthPx >= item.mMinDeviceWidthPx) { - if (selectedGridSize == null - || selectedGridSize.mMinDeviceWidthPx < item.mMinDeviceWidthPx) { - selectedGridSize = item; - } - } - } - return selectedGridSize; - } - private static int[] findMinWidthAndHeightPxForDevice(Info displayInfo) { int minDisplayWidthPx = Integer.MAX_VALUE; int minDisplayHeightPx = Integer.MAX_VALUE; @@ -983,7 +895,6 @@ public class InvariantDeviceProfile { .setWindowBounds(mWMProxy.getRealBounds( displayContext, mWMProxy.getDisplayInfo(displayContext))) .setTransposeLayoutWithOrientation(false) - .setSecondaryDisplayOptionSpec() .build(); } @@ -1001,12 +912,12 @@ public class InvariantDeviceProfile { float minDiff = Float.MAX_VALUE; for (DeviceProfile profile : supportedProfiles) { - float diff = Math.abs(profile.getDeviceProperties().getWidthPx() - screenWidth) - + Math.abs(profile.getDeviceProperties().getHeightPx() - screenHeight); + float diff = Math.abs(profile.widthPx - screenWidth) + + Math.abs(profile.heightPx - screenHeight); if (diff < minDiff) { minDiff = diff; bestMatch = profile; - } else if (diff == minDiff && profile.getDeviceProperties().getRotationHint() == rotation) { + } else if (diff == minDiff && profile.rotationHint == rotation) { bestMatch = profile; } } @@ -1059,73 +970,6 @@ public class InvariantDeviceProfile { void onIdpChanged(boolean modelPropertiesChanged); } - /** Returns {@link DisplayOptionSpec} for the provided displayInfo. */ - static DisplayOptionSpec createDisplayOptionSpec(Context context, Info displayInfo, - boolean isLandscape) { - // Get predefined profiles for provided displayInfo without using any main device's pref. - List<DisplayOption> allOptions = getPredefinedDeviceProfiles(context, - /* gridName= */ null, displayInfo, /* allowDisabledGrid= */ false, - /* isFixedLandscapeMode= */ false); - - return new DisplayOptionSpec( - invDistWeightedInterpolate(displayInfo, new ArrayList<>(allOptions), - displayInfo.getDeviceType()), isLandscape); - } - - /** Class to expose properties required for external displays to {@link deviceprofile} */ - public static final class DisplayOptionSpec { - public final int typeIndex; - public final int numShownHotseatIcons; - public final int numAllAppsColumns; - @XmlRes public final int hotseatSpecsId; - @XmlRes public final int workspaceCellSpecsId; - @XmlRes public final int workspaceSpecsId; - @XmlRes public final int allAppsSpecsId; - @XmlRes public final int folderSpecsId; - @XmlRes public final int allAppsCellSpecsId; - public final boolean startAlignTaskbar; - - DisplayOptionSpec(DisplayOption displayOption, boolean isLandscape) { - typeIndex = isLandscape ? INDEX_LANDSCAPE : INDEX_DEFAULT; - numShownHotseatIcons = displayOption.grid.numHotseatIcons; - numAllAppsColumns = displayOption.grid.numAllAppsColumns; - hotseatSpecsId = displayOption.grid.mHotseatSpecsId; - workspaceCellSpecsId = displayOption.grid.mWorkspaceCellSpecsId; - workspaceSpecsId = displayOption.grid.mWorkspaceSpecsId; - allAppsSpecsId = displayOption.grid.mAllAppsSpecsId; - folderSpecsId = displayOption.grid.mFolderSpecsId; - allAppsCellSpecsId = displayOption.grid.mAllAppsCellSpecsId; - startAlignTaskbar = displayOption.startAlignTaskbar[typeIndex]; - } - - DisplayOptionSpec(InvariantDeviceProfile inv, boolean isTwoPanels, boolean isLandscape) { - if (isTwoPanels) { - if (isLandscape) { - typeIndex = INDEX_TWO_PANEL_LANDSCAPE; - } else { - typeIndex = INDEX_TWO_PANEL_PORTRAIT; - } - } else { - if (isLandscape) { - typeIndex = INDEX_LANDSCAPE; - } else { - typeIndex = INDEX_DEFAULT; - } - } - numShownHotseatIcons = - isTwoPanels ? inv.numDatabaseHotseatIcons : inv.numShownHotseatIcons; - numAllAppsColumns = isTwoPanels ? inv.numDatabaseAllAppsColumns : inv.numAllAppsColumns; - hotseatSpecsId = isTwoPanels ? inv.hotseatSpecsTwoPanelId : inv.hotseatSpecsId; - workspaceCellSpecsId = isTwoPanels ? inv.workspaceCellSpecsTwoPanelId - : inv.workspaceCellSpecsId; - workspaceSpecsId = isTwoPanels ? inv.workspaceSpecsTwoPanelId : inv.workspaceSpecsId; - allAppsSpecsId = isTwoPanels ? inv.allAppsSpecsTwoPanelId : inv.allAppsSpecsId; - folderSpecsId = isTwoPanels ? inv.folderSpecsTwoPanelId : inv.folderSpecsId; - allAppsCellSpecsId = - isTwoPanels ? inv.allAppsCellSpecsTwoPanelId : inv.allAppsCellSpecsId; - startAlignTaskbar = inv.startAlignTaskbar[typeIndex]; - } - } public static final class GridOption { @@ -1134,10 +978,8 @@ public class InvariantDeviceProfile { private static final int DEVICE_CATEGORY_PHONE = 1 << 0; private static final int DEVICE_CATEGORY_TABLET = 1 << 1; private static final int DEVICE_CATEGORY_MULTI_DISPLAY = 1 << 2; - private static final int DEVICE_CATEGORY_DESKTOP = 1 << 3; private static final int DEVICE_CATEGORY_ANY = - DEVICE_CATEGORY_PHONE | DEVICE_CATEGORY_TABLET | DEVICE_CATEGORY_MULTI_DISPLAY - | DEVICE_CATEGORY_DESKTOP; + DEVICE_CATEGORY_PHONE | DEVICE_CATEGORY_TABLET | DEVICE_CATEGORY_MULTI_DISPLAY; private static final int INLINE_QSB_FOR_PORTRAIT = 1 << 0; private static final int INLINE_QSB_FOR_LANDSCAPE = 1 << 1; @@ -1173,6 +1015,7 @@ public class InvariantDeviceProfile { private final String dbFile; private final int defaultLayoutId; + private final int demoModeLayoutId; private final boolean isScalable; private final boolean mIsDualGrid; @@ -1190,11 +1033,7 @@ public class InvariantDeviceProfile { private final int mAllAppsCellSpecsId; private final int mAllAppsCellSpecsTwoPanelId; private final int mGridSizeSpecsId; - private final int mAllAppsSizeSpecId; private final boolean mIsFixedLandscape; - // If non-negative, the index of workspace row with which the top of the all apps container - // should be aligned with. - private final int mAllAppsAlignedWithWorkspaceRow; public GridOption(Context context, AttributeSet attrs, Info displayInfo) { TypedArray a = context.obtainStyledAttributes( @@ -1207,10 +1046,6 @@ public class InvariantDeviceProfile { DEVICE_CATEGORY_ANY); mGridSizeSpecsId = a.getResourceId( R.styleable.GridDisplayOption_gridSizeSpecsId, INVALID_RESOURCE_HANDLE); - mAllAppsSizeSpecId = enableScalabilityForDesktopExperience() - ? a.getResourceId(R.styleable.GridDisplayOption_allAppsSizeSpecsId, - INVALID_RESOURCE_HANDLE) - : INVALID_RESOURCE_HANDLE; mIsDualGrid = a.getBoolean(R.styleable.GridDisplayOption_isDualGrid, false); if (mGridSizeSpecsId != INVALID_RESOURCE_HANDLE) { ResourceHelper resourceHelper = new ResourceHelper(context, mGridSizeSpecsId); @@ -1219,20 +1054,15 @@ public class InvariantDeviceProfile { numRows = gridSize.mNumRows; dbFile = gridSize.mDbFile; defaultLayoutId = gridSize.mDefaultLayoutId; + demoModeLayoutId = gridSize.mDemoModeLayoutId; } else { - numRows = a.getInt(R.styleable.GridDisplayOption_numRows, 0); - numColumns = a.getInt(R.styleable.GridDisplayOption_numColumns, 0); - dbFile = a.getString(R.styleable.GridDisplayOption_dbFile); - defaultLayoutId = a.getResourceId( - R.styleable.GridDisplayOption_defaultLayoutId, 0); - } - - if (mAllAppsSizeSpecId != INVALID_RESOURCE_HANDLE) { - ResourceHelper resourceHelper = new ResourceHelper(context, mAllAppsSizeSpecId); - AllAppsSize allAppsSize = getAllAppsSize(resourceHelper, context, displayInfo); - mAllAppsAlignedWithWorkspaceRow = allAppsSize.mAlignWithWorkspaceRow; - } else { - mAllAppsAlignedWithWorkspaceRow = -1; + numRows = a.getInt(R.styleable.GridDisplayOption_numRows, 0); + numColumns = a.getInt(R.styleable.GridDisplayOption_numColumns, 0); + dbFile = a.getString(R.styleable.GridDisplayOption_dbFile); + defaultLayoutId = a.getResourceId( + R.styleable.GridDisplayOption_defaultLayoutId, 0); + demoModeLayoutId = a.getResourceId( + R.styleable.GridDisplayOption_demoModeLayoutId, defaultLayoutId); } numSearchContainerColumns = a.getInt( @@ -1378,9 +1208,6 @@ public class InvariantDeviceProfile { case TYPE_MULTI_DISPLAY: return (deviceCategory & DEVICE_CATEGORY_MULTI_DISPLAY) == DEVICE_CATEGORY_MULTI_DISPLAY; - case TYPE_DESKTOP: - return (deviceCategory & DEVICE_CATEGORY_DESKTOP) - == DEVICE_CATEGORY_DESKTOP; default: return false; } @@ -1418,46 +1245,21 @@ public class InvariantDeviceProfile { final float mMinDeviceHeightPx; final String mDbFile; final int mDefaultLayoutId; + final int mDemoModeLayoutId; - GridSize(Context context, AttributeSet attrs, float stableDensityScale) { + + GridSize(Context context, AttributeSet attrs) { TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.GridSize); mNumRows = (int) a.getFloat(R.styleable.GridSize_numGridRows, 0); mNumColumns = (int) a.getFloat(R.styleable.GridSize_numGridColumns, 0); - - mMinDeviceWidthPx = a.getInt(R.styleable.GridSize_minDeviceWidthPx, 0) - * stableDensityScale; - mMinDeviceHeightPx = a.getInt(R.styleable.GridSize_minDeviceHeightPx, 0) - * stableDensityScale; - + mMinDeviceWidthPx = a.getFloat(R.styleable.GridSize_minDeviceWidthPx, 0); + mMinDeviceHeightPx = a.getFloat(R.styleable.GridSize_minDeviceHeightPx, 0); mDbFile = a.getString(R.styleable.GridSize_dbFile); mDefaultLayoutId = a.getResourceId( R.styleable.GridSize_defaultLayoutId, 0); - - a.recycle(); - } - } - - /** - * Optional spec that configures the size of the all apps container. - * - * Allows the all apps height to be set so the top of the all apps container aligns with the - * top of a workspace row. - */ - private static final class AllAppsSize { - // The workspace row with which top of all apps container should be aligned with. - // Negative value will be ignored, and cause all apps container to fill up vertical space. - final int mAlignWithWorkspaceRow; - - // The minimum device pixel width to which the spec can be applied. - final float mMinDeviceWidthPx; - - AllAppsSize(Context context, AttributeSet attrs, float stableDensityScale) { - TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.AllAppsSize); - - mAlignWithWorkspaceRow = a.getInt(R.styleable.AllAppsSize_alignWithWorkspaceRow, -1); - mMinDeviceWidthPx = a.getFloat(R.styleable.AllAppsSize_minDeviceWidthDp, 0) - * stableDensityScale; + mDemoModeLayoutId = a.getResourceId( + R.styleable.GridSize_demoModeLayoutId, mDefaultLayoutId); a.recycle(); } @@ -1526,6 +1328,10 @@ public class InvariantDeviceProfile { y = a.getFloat(R.styleable.ProfileDisplayOption_minCellHeightTwoPanelLandscape, minCellSize[INDEX_DEFAULT].y); minCellSize[INDEX_TWO_PANEL_LANDSCAPE] = new PointF(x, y); + Log.d("LC-IDP", "minCellSize for INDEX_DEFAULT is: " + minCellSize[INDEX_DEFAULT]); + Log.d("LC-IDP", "minCellSize for INDEX_LANDSCAPE is: " + minCellSize[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "minCellSize for INDEX_TWO_PANEL_LANDSCAPE is: " + minCellSize[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "minCellSize for INDEX_TWO_PANEL_PORTRAIT is: " + minCellSize[INDEX_TWO_PANEL_PORTRAIT]); float borderSpace = a.getFloat(R.styleable.ProfileDisplayOption_borderSpace, 0); float borderSpaceLandscape = a.getFloat( @@ -1560,6 +1366,10 @@ public class InvariantDeviceProfile { R.styleable.ProfileDisplayOption_borderSpaceTwoPanelLandscapeVertical, borderSpaceTwoPanelLandscape); borderSpaces[INDEX_TWO_PANEL_LANDSCAPE] = new PointF(x, y); + Log.d("LC-IDP", "borderSpaces for INDEX_DEFAULT is: " + borderSpaces[INDEX_DEFAULT]); + Log.d("LC-IDP", "borderSpaces for INDEX_LANDSCAPE is: " + borderSpaces[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "borderSpaces for INDEX_TWO_PANEL_LANDSCAPE is: " + borderSpaces[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "borderSpaces for INDEX_TWO_PANEL_PORTRAIT is: " + borderSpaces[INDEX_TWO_PANEL_PORTRAIT]); x = a.getFloat(R.styleable.ProfileDisplayOption_allAppsCellWidth, minCellSize[INDEX_DEFAULT].x); @@ -1584,6 +1394,10 @@ public class InvariantDeviceProfile { y = a.getFloat(R.styleable.ProfileDisplayOption_allAppsCellHeightTwoPanelLandscape, allAppsCellSize[INDEX_DEFAULT].y); allAppsCellSize[INDEX_TWO_PANEL_LANDSCAPE] = new PointF(x, y); + Log.d("LC-IDP", "allAppsCellSize for INDEX_DEFAULT is: " + allAppsCellSize[INDEX_DEFAULT]); + Log.d("LC-IDP", "allAppsCellSize for INDEX_LANDSCAPE is: " + allAppsCellSize[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "allAppsCellSize for INDEX_TWO_PANEL_LANDSCAPE is: " + allAppsCellSize[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "allAppsCellSize for INDEX_TWO_PANEL_PORTRAIT is: " + allAppsCellSize[INDEX_TWO_PANEL_PORTRAIT]); float allAppsBorderSpace = a.getFloat( R.styleable.ProfileDisplayOption_allAppsBorderSpace, borderSpace); @@ -1624,6 +1438,10 @@ public class InvariantDeviceProfile { R.styleable.ProfileDisplayOption_allAppsBorderSpaceTwoPanelLandscapeVertical, allAppsBorderSpaceTwoPanelLandscape); allAppsBorderSpaces[INDEX_TWO_PANEL_LANDSCAPE] = new PointF(x, y); + Log.d("LC-IDP", "allAppsBorderSpaces for INDEX_DEFAULT is: " + allAppsBorderSpaces[INDEX_DEFAULT]); + Log.d("LC-IDP", "allAppsBorderSpaces for INDEX_LANDSCAPE is: " + allAppsBorderSpaces[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "allAppsBorderSpaces for INDEX_TWO_PANEL_LANDSCAPE is: " + allAppsBorderSpaces[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "allAppsBorderSpaces for INDEX_TWO_PANEL_PORTRAIT is: " + allAppsBorderSpaces[INDEX_TWO_PANEL_PORTRAIT]); iconSizes[INDEX_DEFAULT] = a.getFloat(R.styleable.ProfileDisplayOption_iconImageSize, 0); @@ -1636,6 +1454,10 @@ public class InvariantDeviceProfile { iconSizes[INDEX_TWO_PANEL_LANDSCAPE] = a.getFloat(R.styleable.ProfileDisplayOption_iconSizeTwoPanelLandscape, iconSizes[INDEX_DEFAULT]); + Log.d("LC-IDP", "iconSizes for INDEX_DEFAULT is: " + iconSizes[INDEX_DEFAULT]); + Log.d("LC-IDP", "iconSizes for INDEX_LANDSCAPE is: " + iconSizes[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "iconSizes for INDEX_TWO_PANEL_LANDSCAPE is: " + iconSizes[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "iconSizes for INDEX_TWO_PANEL_PORTRAIT is: " + iconSizes[INDEX_TWO_PANEL_PORTRAIT]); allAppsIconSizes[INDEX_DEFAULT] = a.getFloat( R.styleable.ProfileDisplayOption_allAppsIconSize, iconSizes[INDEX_DEFAULT]); @@ -1648,6 +1470,10 @@ public class InvariantDeviceProfile { allAppsIconSizes[INDEX_TWO_PANEL_LANDSCAPE] = a.getFloat( R.styleable.ProfileDisplayOption_allAppsIconSizeTwoPanelLandscape, allAppsIconSizes[INDEX_DEFAULT]); + Log.d("LC-IDP", "allAppsIconSizes for INDEX_DEFAULT is: " + allAppsIconSizes[INDEX_DEFAULT]); + Log.d("LC-IDP", "allAppsIconSizes for INDEX_LANDSCAPE is: " + allAppsIconSizes[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "allAppsIconSizes for INDEX_TWO_PANEL_LANDSCAPE is: " + allAppsIconSizes[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "allAppsIconSizes for INDEX_TWO_PANEL_PORTRAIT is: " + allAppsIconSizes[INDEX_TWO_PANEL_PORTRAIT]); textSizes[INDEX_DEFAULT] = a.getFloat(R.styleable.ProfileDisplayOption_iconTextSize, 0); @@ -1660,6 +1486,10 @@ public class InvariantDeviceProfile { textSizes[INDEX_TWO_PANEL_LANDSCAPE] = a.getFloat(R.styleable.ProfileDisplayOption_iconTextSizeTwoPanelLandscape, textSizes[INDEX_DEFAULT]); + Log.d("LC-IDP", "textSizes for INDEX_DEFAULT is: " + textSizes[INDEX_DEFAULT]); + Log.d("LC-IDP", "textSizes for INDEX_LANDSCAPE is: " + textSizes[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "textSizes for INDEX_TWO_PANEL_LANDSCAPE is: " + textSizes[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "textSizes for INDEX_TWO_PANEL_PORTRAIT is: " + textSizes[INDEX_TWO_PANEL_PORTRAIT]); allAppsIconTextSizes[INDEX_DEFAULT] = a.getFloat( R.styleable.ProfileDisplayOption_allAppsIconTextSize, textSizes[INDEX_DEFAULT]); @@ -1670,6 +1500,10 @@ public class InvariantDeviceProfile { allAppsIconTextSizes[INDEX_TWO_PANEL_LANDSCAPE] = a.getFloat( R.styleable.ProfileDisplayOption_allAppsIconTextSizeTwoPanelLandscape, allAppsIconTextSizes[INDEX_DEFAULT]); + Log.d("LC-IDP", "allAppsIconTextSizes for INDEX_DEFAULT is: " + allAppsIconTextSizes[INDEX_DEFAULT]); + Log.d("LC-IDP", "allAppsIconTextSizes for INDEX_LANDSCAPE is: " + allAppsIconTextSizes[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "allAppsIconTextSizes for INDEX_TWO_PANEL_LANDSCAPE is: " + allAppsIconTextSizes[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "allAppsIconTextSizes for INDEX_TWO_PANEL_PORTRAIT is: " + allAppsIconTextSizes[INDEX_TWO_PANEL_PORTRAIT]); horizontalMargin[INDEX_DEFAULT] = a.getFloat( R.styleable.ProfileDisplayOption_horizontalMargin, 0); @@ -1695,6 +1529,10 @@ public class InvariantDeviceProfile { hotseatBarBottomSpace[INDEX_TWO_PANEL_PORTRAIT] = a.getFloat( R.styleable.ProfileDisplayOption_hotseatBarBottomSpaceTwoPanelPortrait, hotseatBarBottomSpace[INDEX_DEFAULT]); + Log.d("LC-IDP", "hotseatBarBottomSpace for INDEX_DEFAULT is: " + hotseatBarBottomSpace[INDEX_DEFAULT]); + Log.d("LC-IDP", "hotseatBarBottomSpace for INDEX_LANDSCAPE is: " + hotseatBarBottomSpace[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "hotseatBarBottomSpace for INDEX_TWO_PANEL_LANDSCAPE is: " + hotseatBarBottomSpace[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "hotseatBarBottomSpace for INDEX_TWO_PANEL_PORTRAIT is: " + hotseatBarBottomSpace[INDEX_TWO_PANEL_PORTRAIT]); hotseatQsbSpace[INDEX_DEFAULT] = a.getFloat( R.styleable.ProfileDisplayOption_hotseatQsbSpace, @@ -1708,6 +1546,10 @@ public class InvariantDeviceProfile { hotseatQsbSpace[INDEX_TWO_PANEL_PORTRAIT] = a.getFloat( R.styleable.ProfileDisplayOption_hotseatQsbSpaceTwoPanelPortrait, hotseatQsbSpace[INDEX_DEFAULT]); + Log.d("LC-IDP", "hotseatQsbSpace for INDEX_DEFAULT is: " + hotseatQsbSpace[INDEX_DEFAULT]); + Log.d("LC-IDP", "hotseatQsbSpace for INDEX_LANDSCAPE is: " + hotseatQsbSpace[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "hotseatQsbSpace for INDEX_TWO_PANEL_LANDSCAPE is: " + hotseatQsbSpace[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "hotseatQsbSpace for INDEX_TWO_PANEL_PORTRAIT is: " + hotseatQsbSpace[INDEX_TWO_PANEL_PORTRAIT]); transientTaskbarIconSize[INDEX_DEFAULT] = a.getFloat( R.styleable.ProfileDisplayOption_transientTaskbarIconSize, @@ -1721,6 +1563,10 @@ public class InvariantDeviceProfile { transientTaskbarIconSize[INDEX_TWO_PANEL_PORTRAIT] = a.getFloat( R.styleable.ProfileDisplayOption_transientTaskbarIconSizeTwoPanelPortrait, transientTaskbarIconSize[INDEX_DEFAULT]); + Log.d("LC-IDP", "transientTaskbarIconSize for INDEX_DEFAULT is: " + transientTaskbarIconSize[INDEX_DEFAULT]); + Log.d("LC-IDP", "transientTaskbarIconSize for INDEX_LANDSCAPE is: " + transientTaskbarIconSize[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "transientTaskbarIconSize for INDEX_TWO_PANEL_LANDSCAPE is: " + transientTaskbarIconSize[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "transientTaskbarIconSize for INDEX_TWO_PANEL_PORTRAIT is: " + transientTaskbarIconSize[INDEX_TWO_PANEL_PORTRAIT]); startAlignTaskbar[INDEX_DEFAULT] = a.getBoolean( R.styleable.ProfileDisplayOption_startAlignTaskbar, false); @@ -1734,6 +1580,11 @@ public class InvariantDeviceProfile { R.styleable.ProfileDisplayOption_startAlignTaskbarTwoPanelPortrait, startAlignTaskbar[INDEX_DEFAULT]); + Log.d("LC-IDP", "startAlignTaskbar for INDEX_DEFAULT is: " + startAlignTaskbar[INDEX_DEFAULT]); + Log.d("LC-IDP", "startAlignTaskbar for INDEX_LANDSCAPE is: " + startAlignTaskbar[INDEX_LANDSCAPE]); + Log.d("LC-IDP", "startAlignTaskbar for INDEX_TWO_PANEL_LANDSCAPE is: " + startAlignTaskbar[INDEX_TWO_PANEL_LANDSCAPE]); + Log.d("LC-IDP", "startAlignTaskbar for INDEX_TWO_PANEL_PORTRAIT is: " + startAlignTaskbar[INDEX_TWO_PANEL_PORTRAIT]); + a.recycle(); } diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 85dfed168a..9461ced6c0 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -18,6 +18,8 @@ package com.android.launcher3; +import static android.app.PendingIntent.FLAG_IMMUTABLE; +import static android.app.PendingIntent.FLAG_UPDATE_CURRENT; import static android.content.pm.ActivityInfo.CONFIG_UI_MODE; import static android.view.WindowInsetsAnimation.Callback.DISPATCH_MODE_CONTINUE_ON_SUBTREE; import static android.view.accessibility.AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED; @@ -26,12 +28,11 @@ import static com.android.app.animation.Interpolators.EMPHASIZED; import static com.android.launcher3.AbstractFloatingView.TYPE_FOLDER; import static com.android.launcher3.AbstractFloatingView.TYPE_ICON_SURFACE; import static com.android.launcher3.AbstractFloatingView.TYPE_REBIND_SAFE; -import static com.android.launcher3.AbstractFloatingView.TYPE_WIDGETS_FULL_SHEET; import static com.android.launcher3.AbstractFloatingView.getTopOpenViewWithType; -import static com.android.launcher3.Flags.allAppsBlur; import static com.android.launcher3.Flags.enableAddAppWidgetViaConfigActivityV2; +import static com.android.launcher3.Flags.enableSmartspaceRemovalToggle; +import static com.android.launcher3.Flags.enableStrictMode; import static com.android.launcher3.Flags.enableWorkspaceInflation; -import static com.android.launcher3.Flags.enableLongPressRemoveShortcut; import static com.android.launcher3.LauncherAnimUtils.HOTSEAT_SCALE_PROPERTY_FACTORY; import static com.android.launcher3.LauncherAnimUtils.SCALE_INDEX_WIDGET_TRANSITION; import static com.android.launcher3.LauncherAnimUtils.SPRING_LOADED_EXIT_DELAY; @@ -50,16 +51,18 @@ import static com.android.launcher3.LauncherConstants.SavedInstanceKeys.RUNTIME_ import static com.android.launcher3.LauncherConstants.SavedInstanceKeys.RUNTIME_STATE_PENDING_REQUEST_CODE; import static com.android.launcher3.LauncherConstants.SavedInstanceKeys.RUNTIME_STATE_RECREATE_TO_UPDATE_THEME; import static com.android.launcher3.LauncherConstants.SavedInstanceKeys.RUNTIME_STATE_WIDGET_PANEL; +import static com.android.launcher3.LauncherConstants.TraceEvents.COLD_STARTUP_TRACE_COOKIE; +import static com.android.launcher3.LauncherConstants.TraceEvents.COLD_STARTUP_TRACE_METHOD_NAME; +import static com.android.launcher3.LauncherConstants.TraceEvents.DISPLAY_ALL_APPS_TRACE_COOKIE; import static com.android.launcher3.LauncherConstants.TraceEvents.DISPLAY_ALL_APPS_TRACE_METHOD_NAME; +import static com.android.launcher3.LauncherConstants.TraceEvents.DISPLAY_WORKSPACE_TRACE_COOKIE; import static com.android.launcher3.LauncherConstants.TraceEvents.DISPLAY_WORKSPACE_TRACE_METHOD_NAME; import static com.android.launcher3.LauncherConstants.TraceEvents.ON_CREATE_EVT; import static com.android.launcher3.LauncherConstants.TraceEvents.ON_NEW_INTENT_EVT; import static com.android.launcher3.LauncherConstants.TraceEvents.ON_RESUME_EVT; import static com.android.launcher3.LauncherConstants.TraceEvents.ON_START_EVT; -import static com.android.launcher3.LauncherConstants.TraceEvents.SINGLE_TRACE_COOKIE; import static com.android.launcher3.LauncherPrefs.FIXED_LANDSCAPE_MODE; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APPLICATION; import static com.android.launcher3.LauncherState.ALL_APPS; import static com.android.launcher3.LauncherState.EDIT_MODE; @@ -92,23 +95,32 @@ import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCH import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_SWIPERIGHT; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WIDGET_RECONFIGURED; import static com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE; +import static com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION; import static com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_VIEW_INFLATION; +import static com.android.launcher3.logging.StatsLogManager.StatsLatencyLogger.LatencyType.COLD; +import static com.android.launcher3.logging.StatsLogManager.StatsLatencyLogger.LatencyType.COLD_DEVICE_REBOOTING; +import static com.android.launcher3.logging.StatsLogManager.StatsLatencyLogger.LatencyType.WARM; import static com.android.launcher3.model.ItemInstallQueue.FLAG_ACTIVITY_PAUSED; import static com.android.launcher3.model.ItemInstallQueue.FLAG_DRAG_AND_DROP; import static com.android.launcher3.popup.SystemShortcut.APP_INFO; import static com.android.launcher3.popup.SystemShortcut.INSTALL; -import static com.android.launcher3.popup.SystemShortcut.REMOVE; import static com.android.launcher3.popup.SystemShortcut.WIDGETS; import static com.android.launcher3.states.RotationHelper.REQUEST_LOCK; import static com.android.launcher3.states.RotationHelper.REQUEST_NONE; import static com.android.launcher3.testing.shared.TestProtocol.LAUNCHER_ACTIVITY_STOPPED_MESSAGE; +import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.ItemInfoMatcher.forFolderMatch; import static com.android.launcher3.util.SettingsCache.TOUCHPAD_NATURAL_SCROLLING; +import static com.android.launcher3.util.WallpaperThemeManager.setWallpaperDependentTheme; import android.animation.Animator; import android.animation.AnimatorSet; import android.animation.ValueAnimator; import android.annotation.TargetApi; +import android.app.Notification; +import android.app.NotificationChannel; +import android.app.NotificationManager; +import android.app.PendingIntent; import android.appwidget.AppWidgetHostView; import android.appwidget.AppWidgetManager; import android.content.ActivityNotFoundException; @@ -128,6 +140,7 @@ import android.os.Build.VERSION; import android.os.Build.VERSION_CODES; import android.os.Bundle; import android.os.Parcelable; +import android.os.StrictMode; import android.os.SystemClock; import android.os.Trace; import android.os.UserHandle; @@ -178,26 +191,28 @@ import com.android.launcher3.celllayout.CellPosMapper; import com.android.launcher3.celllayout.CellPosMapper.CellPos; import com.android.launcher3.celllayout.CellPosMapper.TwoPanelCellPosMapper; import com.android.launcher3.compat.AccessibilityManagerCompat; -import com.android.launcher3.compose.ComposeFacade; import com.android.launcher3.config.FeatureFlags; -import com.android.launcher3.dagger.LauncherComponentProvider; import com.android.launcher3.debug.TestEventEmitter; import com.android.launcher3.debug.TestEventEmitter.TestEvent; import com.android.launcher3.dot.DotInfo; +import com.android.launcher3.dragndrop.DragController; import com.android.launcher3.dragndrop.DragLayer; import com.android.launcher3.dragndrop.DragView; import com.android.launcher3.dragndrop.LauncherDragController; import com.android.launcher3.folder.Folder; import com.android.launcher3.folder.FolderIcon; +import com.android.launcher3.icons.IconCache; import com.android.launcher3.keyboard.ViewGroupFocusHelper; import com.android.launcher3.logger.LauncherAtom; import com.android.launcher3.logger.LauncherAtom.ContainerInfo; import com.android.launcher3.logger.LauncherAtom.WorkspaceContainer; +import com.android.launcher3.logging.ColdRebootStartupLatencyLogger; import com.android.launcher3.logging.FileLog; import com.android.launcher3.logging.InstanceId; import com.android.launcher3.logging.InstanceIdSequence; import com.android.launcher3.logging.StartupLatencyLogger; import com.android.launcher3.logging.StatsLogManager; +import com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent; import com.android.launcher3.model.BgDataModel.Callbacks; import com.android.launcher3.model.ItemInstallQueue; import com.android.launcher3.model.ModelWriter; @@ -207,8 +222,6 @@ import com.android.launcher3.model.data.CollectionInfo; import com.android.launcher3.model.data.FolderInfo; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.LauncherAppWidgetInfo; -import com.android.launcher3.model.data.PredictedContainerInfo; -import com.android.launcher3.model.data.WorkspaceData; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.notification.NotificationListener; import com.android.launcher3.pm.PinRequestHelper; @@ -229,10 +242,13 @@ import com.android.launcher3.util.BackPressHandler; import com.android.launcher3.util.CannedAnimationCoordinator; import com.android.launcher3.util.ComponentKey; import com.android.launcher3.util.ContextTracker; +import com.android.launcher3.util.IntArray; import com.android.launcher3.util.IntSet; import com.android.launcher3.util.ItemInflater; import com.android.launcher3.util.KeyboardShortcutsDelegate; import com.android.launcher3.util.LauncherBindableItemsContainer; +import com.android.launcher3.util.LockedUserState; +import com.android.launcher3.util.MSDLPlayerWrapper; import com.android.launcher3.util.PackageUserKey; import com.android.launcher3.util.PendingRequestArgs; import com.android.launcher3.util.PluginManagerWrapper; @@ -246,7 +262,7 @@ import com.android.launcher3.util.Themes; import com.android.launcher3.util.Thunk; import com.android.launcher3.util.TouchController; import com.android.launcher3.util.TraceHelper; -import com.android.launcher3.util.WallpaperThemeManager; +import com.android.launcher3.views.ActivityContext; import com.android.launcher3.views.FloatingIconView; import com.android.launcher3.views.FloatingSurfaceView; import com.android.launcher3.views.OptionsPopupView; @@ -268,7 +284,7 @@ import com.android.systemui.plugins.LauncherOverlayPlugin; import com.android.systemui.plugins.PluginListener; import com.android.systemui.plugins.shared.LauncherOverlayManager; import com.android.systemui.plugins.shared.LauncherOverlayManager.LauncherOverlayTouchProxy; -import com.android.window.flags2.Flags; +import com.android.window.flags.Flags; import java.io.FileDescriptor; import java.io.PrintWriter; @@ -282,6 +298,7 @@ import java.util.Optional; import java.util.Set; import java.util.function.Predicate; import java.util.function.Supplier; +import java.util.stream.Collectors; import java.util.stream.Stream; import app.lawnchair.LawnchairApp; @@ -299,6 +316,8 @@ public class Launcher extends StatefulActivity<LauncherState> static final boolean LOGD = false; + static final boolean DEBUG_STRICT_MODE = false; + private static final float BOUNCE_ANIMATION_TENSION = 1.3f; /** @@ -310,8 +329,7 @@ public class Launcher extends StatefulActivity<LauncherState> public static final String INTENT_ACTION_ALL_APPS_TOGGLE = "launcher.intent_action_all_apps_toggle"; - private static final String EXCLUDE_CLOSE_WIDGET_PICKER = - "launcher.extra.EXCLUDE_CLOSE_WIDGET_PICKER"; + private static boolean sIsNewProcess = true; private StateManager<LauncherState, Launcher> mStateManager; @@ -352,8 +370,6 @@ public class Launcher extends StatefulActivity<LauncherState> @Thunk public ActivityAllAppsContainerView<Launcher> mAppsView; AllAppsTransitionController mAllAppsController; - // Views that should be blurred when All Apps is open or depth is otherwise applied. - private List<View> mDepthBlurTargets; // Scrim view for the all apps and overview state. @Thunk @@ -369,6 +385,7 @@ public class Launcher extends StatefulActivity<LauncherState> private LauncherModel mModel; private ModelWriter mModelWriter; + private IconCache mIconCache; private LauncherAccessibilityDelegate mAccessibilityDelegate; private PopupDataProvider mPopupDataProvider; @@ -393,7 +410,7 @@ public class Launcher extends StatefulActivity<LauncherState> private RotationHelper mRotationHelper; protected LauncherOverlayManager mOverlayManager; - protected LauncherDragController mDragController; + protected DragController mDragController; // If true, overlay callbacks are deferred private boolean mDeferOverlayCallbacks; private final Runnable mDeferredOverlayCallbacks = this::checkIfOverlayStillDeferred; @@ -407,24 +424,20 @@ public class Launcher extends StatefulActivity<LauncherState> // session on the server side. protected InstanceId mAllAppsSessionLogId; private LauncherState mPrevLauncherState; + private StartupLatencyLogger mStartupLatencyLogger; private CellPosMapper mCellPosMapper = CellPosMapper.DEFAULT; private final CannedAnimationCoordinator mAnimationCoordinator = new CannedAnimationCoordinator(this); private final List<BackPressHandler> mBackPressedHandlers = new ArrayList<>(); + private boolean mIsColdStartupAfterReboot; private boolean mIsNaturalScrollingEnabled; private final SettingsCache.OnChangeListener mNaturalScrollingChangedListener = enabled -> mIsNaturalScrollingEnabled = enabled; - private StartupLatencyLogger mStartupLatencyLogger; - - protected WallpaperThemeManager mWallpaperThemeManager; - - private boolean mIsTopResumedActivity; - public static Launcher getLauncher(Context context) { return fromContext(context); } @@ -432,14 +445,92 @@ public class Launcher extends StatefulActivity<LauncherState> @Override @TargetApi(Build.VERSION_CODES.S) protected void onCreate(Bundle savedInstanceState) { + mStartupLatencyLogger = createStartupLatencyLogger( + sIsNewProcess + ? LockedUserState.get(this).isUserUnlockedAtLauncherStartup() + ? COLD + : COLD_DEVICE_REBOOTING + : WARM); + + mIsColdStartupAfterReboot = sIsNewProcess + && !LockedUserState.get(this).isUserUnlockedAtLauncherStartup(); + if (mIsColdStartupAfterReboot) { + /* + * This trace is used to calculate the time from create to the point that icons are + * visible. + */ + Trace.beginAsyncSection( + COLD_STARTUP_TRACE_METHOD_NAME, COLD_STARTUP_TRACE_COOKIE); + } + + sIsNewProcess = false; + mStartupLatencyLogger + .logStart(LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION) + .logStart(LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE); + // Only use a hard-coded cookie since we only want to trace this once. + if (Utilities.ATLEAST_S) { + Trace.beginAsyncSection( + DISPLAY_WORKSPACE_TRACE_METHOD_NAME, DISPLAY_WORKSPACE_TRACE_COOKIE); + Trace.beginAsyncSection(DISPLAY_ALL_APPS_TRACE_METHOD_NAME, + DISPLAY_ALL_APPS_TRACE_COOKIE); + } TraceHelper.INSTANCE.beginSection(ON_CREATE_EVT); - Trace.beginAsyncSection(DISPLAY_WORKSPACE_TRACE_METHOD_NAME, SINGLE_TRACE_COOKIE); - Trace.beginAsyncSection(DISPLAY_ALL_APPS_TRACE_METHOD_NAME, SINGLE_TRACE_COOKIE); - mStartupLatencyLogger = StartupLatencyLogger.getLogger(this); - mStartupLatencyLogger.logStart(LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE); + if (DEBUG_STRICT_MODE + || (FeatureFlags.IS_STUDIO_BUILD && enableStrictMode())) { + StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() + .detectDiskReads() + .detectDiskWrites() + .detectNetwork() // or .detectAll() for all detectable problems + .penaltyLog() + .build()); + StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() + .detectLeakedSqlLiteObjects() + .detectLeakedClosableObjects() + .detectActivityLeaks() + .penaltyLog() + .penaltyDeath() + .build()); + } + + if (Utilities.IS_DEBUG_DEVICE && FeatureFlags.NOTIFY_CRASHES.get()) { + final String notificationChannelId = "com.android.launcher3.Debug"; + final String notificationChannelName = "Debug"; + final String notificationTag = "Debug"; + final int notificationId = 0; + + NotificationManager notificationManager = getSystemService(NotificationManager.class); + notificationManager.createNotificationChannel(new NotificationChannel( + notificationChannelId, notificationChannelName, + NotificationManager.IMPORTANCE_HIGH)); + + Thread.currentThread().setUncaughtExceptionHandler((thread, throwable) -> { + String stackTrace = Log.getStackTraceString(throwable); + + Intent shareIntent = new Intent(Intent.ACTION_SEND); + shareIntent.setType("text/plain"); + shareIntent.putExtra(Intent.EXTRA_TEXT, stackTrace); + shareIntent = Intent.createChooser(shareIntent, null); + PendingIntent sharePendingIntent = PendingIntent.getActivity( + this, 0, shareIntent, FLAG_UPDATE_CURRENT | FLAG_IMMUTABLE); + + Notification notification = new Notification.Builder(this, notificationChannelId) + .setSmallIcon(android.R.drawable.ic_menu_close_clear_cancel) + .setContentTitle("Launcher crash detected!") + .setStyle(new Notification.BigTextStyle().bigText(stackTrace)) + .addAction(android.R.drawable.ic_menu_share, "Share", sharePendingIntent) + .build(); + notificationManager.notify(notificationTag, notificationId, notification); + + Thread.UncaughtExceptionHandler defaultUncaughtExceptionHandler = + Thread.getDefaultUncaughtExceptionHandler(); + if (defaultUncaughtExceptionHandler != null) { + defaultUncaughtExceptionHandler.uncaughtException(thread, throwable); + } + }); + } super.onCreate(savedInstanceState); - mWallpaperThemeManager = new WallpaperThemeManager(this); + setWallpaperDependentTheme(this); LauncherAppState app = LauncherAppState.getInstance(this); mModel = app.getModel(); @@ -449,6 +540,7 @@ public class Launcher extends StatefulActivity<LauncherState> initDeviceProfile(idp); idp.addOnChangeListener(this); mSharedPrefs = LauncherPrefs.getPrefs(this); + mIconCache = app.getIconCache(); mAccessibilityDelegate = createAccessibilityDelegate(); initDragController(); @@ -469,7 +561,7 @@ public class Launcher extends StatefulActivity<LauncherState> mFocusHandler, new CellLayout(mWorkspace.getContext(), mWorkspace)); mPopupDataProvider = new PopupDataProvider(this); - mWidgetPickerDataProvider = new WidgetPickerDataProvider(); + mWidgetPickerDataProvider = new WidgetPickerDataProvider(this); PillColorProvider.getInstance(mWorkspace.getContext()).registerObserver(); boolean internalStateHandled = ACTIVITY_TRACKER.handleCreate(this); @@ -531,20 +623,40 @@ public class Launcher extends StatefulActivity<LauncherState> getWindow().setSoftInputMode(LayoutParams.SOFT_INPUT_ADJUST_NOTHING); setTitle(R.string.home_screen); + mStartupLatencyLogger.logEnd(LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE); if (BuildCompat.isAtLeastV() && com.android.launcher3.Flags.enableTwoPaneLauncherSettings()) { RuleController.getInstance(this).setRules( RuleController.parseRules(this, R.xml.split_configuration)); } - mStartupLatencyLogger.logEnd(LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE); - TestEventEmitter.sendEvent(TestEvent.LAUNCHER_ON_CREATE); } protected ModelCallbacks createModelCallbacks() { return new ModelCallbacks(this); } + /** + * We only log startup latency in {@link COLD_DEVICE_REBOOTING} type. For other latency types, + * create a no op implementation. + */ + private StartupLatencyLogger createStartupLatencyLogger( + StatsLogManager.StatsLatencyLogger.LatencyType latencyType) { + if (latencyType == COLD_DEVICE_REBOOTING) { + return createColdRebootStartupLatencyLogger(); + } + return StartupLatencyLogger.Companion.getNO_OP(); + } + + /** + * Create {@link ColdRebootStartupLatencyLogger} that only collects launcher startup latency + * metrics without sending them anywhere. Child class can override this method to create logger + * that overrides {@link StartupLatencyLogger#log()} to report those metrics. + */ + protected ColdRebootStartupLatencyLogger createColdRebootStartupLatencyLogger() { + return new ColdRebootStartupLatencyLogger(); + } + @NonNull View getAccessibilityActionView() { return findViewById(R.id.accessibility_action_view); } @@ -703,9 +815,9 @@ public class Launcher extends StatefulActivity<LauncherState> // When the flag oneGridSpecs is on we want to disable ALLOW_ROTATION which is replaced // by FIXED_LANDSCAPE_MODE, ALLOW_ROTATION will only be used on Tablets and foldables // afterwards. - if (getDeviceProfile().getDeviceProperties().isPhone()) { + if (getDeviceProfile().isPhone) { LauncherPrefs.get(this).put(LauncherPrefs.ALLOW_ROTATION, false); - } else if (getDeviceProfile().getDeviceProperties().isTablet()) { + } else if (getDeviceProfile().isTablet) { // Tablet do not use fixed landscape mode, make sure it can't be activated by mistake LauncherPrefs.get(this).put(FIXED_LANDSCAPE_MODE, false); } @@ -715,7 +827,7 @@ public class Launcher extends StatefulActivity<LauncherState> } public void onAssistantVisibilityChanged(float visibility) { - mHotseat.setQsbAlpha(1f - visibility, Hotseat.ALPHA_CHANNEL_ASSISTANT_VISIBILITY); + mHotseat.getQsb().setAlpha(1f - visibility); } /** @@ -734,7 +846,7 @@ public class Launcher extends StatefulActivity<LauncherState> this, getMultiWindowDisplaySize()); } - if (FOLDABLE_SINGLE_PAGE.get() && mDeviceProfile.getDeviceProperties().isTwoPanels()) { + if (FOLDABLE_SINGLE_PAGE.get() && mDeviceProfile.isTwoPanels) { mCellPosMapper = new TwoPanelCellPosMapper(mDeviceProfile.inv.numColumns); } else { mCellPosMapper = new CellPosMapper(mDeviceProfile.isVerticalBarLayout(), @@ -1194,10 +1306,7 @@ public class Launcher extends StatefulActivity<LauncherState> getAllAppsExitEvent().ifPresent(getStatsLogManager().logger()::log); mAllAppsSessionLogId = null; } - setTitle(state); - } - protected void setTitle(@NonNull LauncherState state) { // Set screen title for Talkback setTitle(state.getTitle()); } @@ -1283,9 +1392,6 @@ public class Launcher extends StatefulActivity<LauncherState> * Finds all the views we need and configure them properly. */ protected void setupViews() { - if (allAppsBlur()) { - getTheme().applyStyle(getAllAppsBlurStyleResId(), true); - } mStartupLatencyLogger.logStart(LAUNCHER_LATENCY_STARTUP_VIEW_INFLATION); inflateRootView(R.layout.launcher); mStartupLatencyLogger.logEnd(LAUNCHER_LATENCY_STARTUP_VIEW_INFLATION); @@ -1305,7 +1411,9 @@ public class Launcher extends StatefulActivity<LauncherState> // Until the workspace is bound, ensure that we keep the wallpaper offset locked to the // default state, otherwise we will update to the wrong offsets in RTL mWorkspace.lockWallpaperToDefaultPage(); - mWorkspace.bindAndInitFirstWorkspaceScreen(); + if (!enableSmartspaceRemovalToggle()) { + mWorkspace.bindAndInitFirstWorkspaceScreen(); + } mDragController.addDragListener(mWorkspace); // Get the search/delete/uninstall bar @@ -1325,8 +1433,6 @@ public class Launcher extends StatefulActivity<LauncherState> mWorkspace.getPageIndicator().setShouldAutoHide(true); mWorkspace.getPageIndicator().setPaintColor(Themes.getAttrBoolean( this, R.attr.isWorkspaceDarkText) ? Color.BLACK : Color.WHITE); - - mDepthBlurTargets = List.of(mWorkspace, mHotseat); } /** @@ -1352,7 +1458,7 @@ public class Launcher extends StatefulActivity<LauncherState> if (container < 0) { // Adding a shortcut to the Workspace. - final View view = mItemInflater.inflateItem(info); + final View view = mItemInflater.inflateItem(info, getModelWriter()); boolean foundCellSpan = false; // First we check if we already know the exact location where we want to add this item. if (cellX >= 0 && cellY >= 0) { @@ -1533,13 +1639,6 @@ public class Launcher extends StatefulActivity<LauncherState> closeContextMenu(); } - @Override - public Object onRetainNonConfigurationInstance() { - NonConfigInstance instance = new NonConfigInstance(); - instance.config = new Configuration(mOldConfig); - return instance; - } - @Override protected void onNewIntent(Intent intent) { if (Utilities.isRunningInTestHarness()) { @@ -1558,18 +1657,11 @@ public class Launcher extends StatefulActivity<LauncherState> boolean isActionMain = Intent.ACTION_MAIN.equals(intent.getAction()); boolean internalStateHandled = ACTIVITY_TRACKER.handleNewIntent(this); - logOnNewIntent(alreadyOnHome, shouldMoveToDefaultScreen, intent.getAction(), - internalStateHandled); - if (isActionMain) { if (!internalStateHandled) { // In all these cases, only animate if we're already on home - int excludedViews = AbstractFloatingView.TYPE_LISTENER; - if (intent.getBooleanExtra(EXCLUDE_CLOSE_WIDGET_PICKER, false)) { - excludedViews |= TYPE_WIDGETS_FULL_SHEET; - } - AbstractFloatingView.closeAllOpenViewsExcept(this, isStarted(), excludedViews); - + AbstractFloatingView.closeAllOpenViewsExcept( + this, isStarted(), AbstractFloatingView.TYPE_LISTENER); if (!isInState(NORMAL)) { // Only change state, if not already the same. This prevents cancelling any @@ -1610,9 +1702,6 @@ public class Launcher extends StatefulActivity<LauncherState> TraceHelper.INSTANCE.endSection(); } - protected void logOnNewIntent(boolean alreadyOnHome, boolean shouldMoveToDefaultScreen, - String action, boolean internalStateHandled) { } - /** Handle animating away split placeholder view when user taps on home button */ protected void handleSplitAnimationGoingToHome(EventEnum splitDismissReason) { // Overridden @@ -1758,7 +1847,7 @@ public class Launcher extends StatefulActivity<LauncherState> return mAccessibilityDelegate; } - public LauncherDragController getDragController() { + public DragController getDragController() { return mDragController; } @@ -1926,7 +2015,8 @@ public class Launcher extends StatefulActivity<LauncherState> getModelWriter().addItemToDatabase(folderInfo, container, screenId, cellX, cellY); // Create the view - FolderIcon newFolder = (FolderIcon) mItemInflater.inflateItem(folderInfo, layout); + FolderIcon newFolder = FolderIcon.inflateFolderAndIcon(R.layout.folder_icon, this, layout, + folderInfo); mWorkspace.addInScreen(newFolder, folderInfo); // Force measure the new folder icon CellLayout parent = mWorkspace.getParentCellLayoutForView(newFolder); @@ -1944,15 +2034,13 @@ public class Launcher extends StatefulActivity<LauncherState> public void updateOpenFolderPosition(int[] inOutPosition, Rect bounds, int width, int height) { int left = inOutPosition[0]; int top = inOutPosition[1]; - DeviceProfile deviceProfile = getDeviceProfile(); + DeviceProfile grid = getDeviceProfile(); int distFromEdgeOfScreen = getWorkspace().getPaddingLeft(); - final int availableWidth = deviceProfile.getDeviceProperties().getAvailableWidthPx(); - if (deviceProfile.getDeviceProperties().isPhone() - && (availableWidth - width) < 4 * distFromEdgeOfScreen) { + if (grid.isPhone && (grid.availableWidthPx - width) < 4 * distFromEdgeOfScreen) { // Center the folder if it is very close to being centered anyway, by virtue of // filling the majority of the viewport. ie. remove it from the uncanny valley // of centeredness. - left = (availableWidth - width) / 2; + left = (grid.availableWidthPx - width) / 2; } else if (width >= bounds.width()) { // If the folder doesn't fit within the bounds, center it about the desired bounds left = bounds.left + (bounds.width() - width) / 2; @@ -1963,7 +2051,7 @@ public class Launcher extends StatefulActivity<LauncherState> } else { // Folder height is less than page height, so bound it to the absolute open folder // bounds if necessary - Rect folderBounds = deviceProfile.getAbsoluteOpenFolderBounds(); + Rect folderBounds = grid.getAbsoluteOpenFolderBounds(); left = Math.max(folderBounds.left, Math.min(left, folderBounds.right - width)); top = Math.max(folderBounds.top, Math.min(top, folderBounds.bottom - height)); } @@ -2143,20 +2231,70 @@ public class Launcher extends StatefulActivity<LauncherState> } @Override - public void bindCompleteModelAsync(WorkspaceData itemIdMap, boolean isBindingSync) { - mModelCallbacks.bindCompleteModelAsync(itemIdMap, isBindingSync); + public IntSet getPagesToBindSynchronously(IntArray orderedScreenIds) { + return mModelCallbacks.getPagesToBindSynchronously(orderedScreenIds); } @Override - public void bindItemsAdded(@NonNull List<ItemInfo> items) { - mModelCallbacks.bindItemsAdded(items); + public void startBinding() { + mModelCallbacks.startBinding(); } - /** Inflates the binds the provided item using animation */ - public void inflateAndBindItemWithAnimation(ItemInfo info) { - bindInflatedItems( - Collections.singletonList(Pair.create(info, getItemInflater().inflateItem(info))), - new AnimatorSet()); + @Override + public void setIsFirstPagePinnedItemEnabled(boolean isFirstPagePinnedItemEnabled) { + mModelCallbacks.setIsFirstPagePinnedItemEnabled(isFirstPagePinnedItemEnabled); + } + + @Override + public void bindScreens(IntArray orderedScreenIds) { + mModelCallbacks.bindScreens(orderedScreenIds); + } + + /** + * Remove odd number because they are already included when isTwoPanels and add the pair screen + * if not present. + */ + private IntArray filterTwoPanelScreenIds(IntArray orderedScreenIds) { + IntSet screenIds = IntSet.wrap(orderedScreenIds); + orderedScreenIds.forEach(screenId -> { + if (screenId % 2 == 1) { + screenIds.remove(screenId); + // In case the pair is not added, add it + if (!mWorkspace.containsScreenId(screenId - 1)) { + screenIds.add(screenId - 1); + } + } + }); + return screenIds.getArray(); + } + + @Override + public void preAddApps() { + mModelCallbacks.preAddApps(); + } + + @Override + public void bindAppsAdded(IntArray newScreens, ArrayList<ItemInfo> addNotAnimated, + ArrayList<ItemInfo> addAnimated) { + mModelCallbacks.bindAppsAdded(newScreens, addNotAnimated, addAnimated); + } + + /** + * Bind the items start-end from the list. + * + * Implementation of the method from LauncherModel.Callbacks. + */ + @Override + public void bindItems(final List<ItemInfo> items, final boolean forceAnimateIcons) { + bindInflatedItems(items.stream() + .map(i -> Pair.create(i, getItemInflater().inflateItem(i, getModelWriter()))) + .collect(Collectors.toList()), + forceAnimateIcons ? new AnimatorSet() : null); + } + + @Override + public void bindInflatedItems(List<Pair<ItemInfo, View>> items) { + bindInflatedItems(items, null); } /** @@ -2185,8 +2323,7 @@ public class Launcher extends StatefulActivity<LauncherState> if (FeatureFlags.IS_STUDIO_BUILD) { throw (new RuntimeException(desc)); } else { - // b/417021465 - Avoid mutating the model in the UI layer. - Log.e(TAG, desc, new Exception()); + getModelWriter().deleteItemFromDatabase(item, desc); continue; } } @@ -2235,7 +2372,7 @@ public class Launcher extends StatefulActivity<LauncherState> * Add the views for a widget to the workspace. */ public void bindAppWidget(LauncherAppWidgetInfo item) { - View view = mItemInflater.inflateItem(item); + View view = mItemInflater.inflateItem(item, getModelWriter()); if (view != null) { mWorkspace.addInScreen(view, item); mWorkspace.requestLayout(); @@ -2269,9 +2406,6 @@ public class Launcher extends StatefulActivity<LauncherState> return info; } - /** Called when a new LauncherModel data binding is starting */ - public void startBinding() { } - /** * Call back when ModelCallbacks finish binding the Launcher data. */ @@ -2281,10 +2415,30 @@ public class Launcher extends StatefulActivity<LauncherState> getRootView().getViewTreeObserver().removeOnPreDrawListener(mOnInitialBindListener); mOnInitialBindListener = null; } + if (!isBindSync) { + mStartupLatencyLogger + .logCardinality(workspaceItemCount) + .logEnd(LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC); + } + MAIN_EXECUTOR.getHandler().postAtFrontOfQueue(() -> { + mStartupLatencyLogger + .logEnd(LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION) + .log() + .reset(); + }); + } - mStartupLatencyLogger = mStartupLatencyLogger.finishLogs(workspaceItemCount, isBindSync); - - + @Override + public void onInitialBindComplete(IntSet boundPages, RunnableList pendingTasks, + RunnableList onCompleteSignal, int workspaceItemCount, boolean isBindSync) { + mModelCallbacks.onInitialBindComplete(boundPages, pendingTasks, onCompleteSignal, + workspaceItemCount, isBindSync); + if (mIsColdStartupAfterReboot) { + if (ATLEAST_Q) { + Trace.endAsyncSection(COLD_STARTUP_TRACE_METHOD_NAME, + COLD_STARTUP_TRACE_COOKIE); + } + } } /** @@ -2293,7 +2447,7 @@ public class Launcher extends StatefulActivity<LauncherState> * Implementation of the method from LauncherModel.Callbacks. */ public void finishBindingItems(IntSet pagesBoundFirst) { - TestEventEmitter.sendEvent(TestEvent.WORKSPACE_FINISH_LOADING); + mModelCallbacks.finishBindingItems(pagesBoundFirst); } private boolean canAnimatePageChange() { @@ -2383,7 +2537,8 @@ public class Launcher extends StatefulActivity<LauncherState> Map<PackageUserKey, Integer> packageUserKeytoUidMap) { mModelCallbacks.bindAllApplications(apps, flags, packageUserKeytoUidMap); if (Utilities.ATLEAST_S) { - Trace.endAsyncSection(DISPLAY_ALL_APPS_TRACE_METHOD_NAME, SINGLE_TRACE_COOKIE); + Trace.endAsyncSection(DISPLAY_ALL_APPS_TRACE_METHOD_NAME, + DISPLAY_ALL_APPS_TRACE_COOKIE); } } @@ -2424,14 +2579,16 @@ public class Launcher extends StatefulActivity<LauncherState> mModelCallbacks.bindAllWidgets(allWidgets); } + @Override + public void bindSmartspaceWidget() { + mModelCallbacks.bindSmartspaceWidget(); + } + @Override public void bindStringCache(StringCache cache) { mModelCallbacks.bindStringCache(cache); } - /** Called to updated any prediction info by the {@link #mModelCallbacks} */ - public void bindPredictedContainerInfo(PredictedContainerInfo info) { } - /** * @param packageUser if null, refreshes all widgets and shortcuts, otherwise only * refreshes the widgets and shortcuts associated with the given package/user @@ -2513,9 +2670,10 @@ public class Launcher extends StatefulActivity<LauncherState> // Ignore } + mModel.dumpState(prefix, fd, writer, args); mOverlayManager.dump(prefix, writer); ACTIVITY_TRACKER.dump(prefix, writer); - LauncherComponentProvider.get(this).getDumpManager().dump(prefix, writer, args); + MSDLPlayerWrapper.INSTANCE.get(getApplicationContext()).dump(prefix, writer); } /** @@ -2606,7 +2764,7 @@ public class Launcher extends StatefulActivity<LauncherState> if (BuildCompat.isAtLeastV() && Flags.enableDesktopWindowingMode() && !Flags.enableDesktopWindowingWallpaperActivity() - && mDeviceProfile.getDeviceProperties().isTablet()) { + && mDeviceProfile.isTablet) { // TODO(b/333533253): Clean up after desktop wallpaper activity flag is rolled out return; } @@ -2658,6 +2816,14 @@ public class Launcher extends StatefulActivity<LauncherState> @VisibleForTesting public void enableHotseatEdu(boolean enable) {} + + /** + * Just a wrapper around the type cast to allow easier tracking of calls. + */ + public static <T extends Launcher> T cast(ActivityContext activityContext) { + return (T) activityContext; + } + public boolean supportsAdaptiveIconAnimation(View clickedView) { return false; } @@ -2671,12 +2837,6 @@ public class Launcher extends StatefulActivity<LauncherState> // No-Op } - /** @return list of View targets to be blurred based on changes to depth. */ - @NonNull - public List<View> getDepthBlurTargets() { - return mDepthBlurTargets == null ? Collections.emptyList() : mDepthBlurTargets; - } - /** * Animates Launcher elements during a transition to the Widgets pages. * @@ -2684,7 +2844,7 @@ public class Launcher extends StatefulActivity<LauncherState> */ public void onWidgetsTransition(float progress) { float scale = Utilities.mapToRange(progress, 0f, 1f, 1f, - mDeviceProfile.getBottomSheetProfile().getBottomSheetWorkspaceScale(), EMPHASIZED); + mDeviceProfile.bottomSheetWorkspaceScale, EMPHASIZED); WORKSPACE_WIDGET_SCALE.set(getWorkspace(), scale); HOTSEAT_WIDGET_SCALE.set(getHotseat(), scale); } @@ -2726,13 +2886,6 @@ public class Launcher extends StatefulActivity<LauncherState> return false; // Base launcher does not track desktop tasks } - /** - * @return true when home screen should be shown behind desktop mode. - */ - public boolean shouldShowHomeBehindDesktop() { - return false; // Base launcher does not show behind desktop mode. - } - // Getters and Setters public boolean isWorkspaceLocked() { @@ -2871,7 +3024,9 @@ public class Launcher extends StatefulActivity<LauncherState> return mModel; } - @Override + /** + * Returns the ModelWriter writer, make sure to call the function every time you want to use it. + */ public ModelWriter getModelWriter() { return mModelWriter; } @@ -2911,17 +3066,7 @@ public class Launcher extends StatefulActivity<LauncherState> return new RectF(x - halfSize, y - halfSize, x + halfSize, y + halfSize); } - /** - * Gets the system shortcuts that are supported by launcher in a given container. - * - * @param container is the container of the item as derived from ItemInfo. - * @return a stream of supported system shortcuts. - */ - public Stream<SystemShortcut.Factory> getSupportedShortcuts(int container) { - if (enableLongPressRemoveShortcut() - && (container == CONTAINER_DESKTOP || container == CONTAINER_HOTSEAT)) { - return Stream.of(APP_INFO, WIDGETS, INSTALL, REMOVE); - } + public Stream<SystemShortcut.Factory> getSupportedShortcuts() { return Stream.of(APP_INFO, WIDGETS, INSTALL); } @@ -2940,40 +3085,8 @@ public class Launcher extends StatefulActivity<LauncherState> // Overridden } - /** Opens the widget picker UI. Returns true if opened. */ - public boolean openWidgetPicker() { - if (getPackageManager().isSafeMode()) { - Toast.makeText(this, R.string.safemode_widget_error, Toast.LENGTH_SHORT).show(); - return false; - } else { - if (com.android.launcher3.Flags.enableWidgetPickerRefactor() && - ComposeFacade.INSTANCE.isComposeAvailable()) { - Intent intent = new Intent(Intent.ACTION_PICK); - intent.setPackage(asContext().getPackageName()); - asContext().startActivity(intent); - return true; - } - openWidgetsFullSheet(); - return true; - } - } - - /** Returns WidgetsFullSheet that was opened, or null if nothing was opened. */ - @VisibleForTesting - public WidgetsFullSheet openWidgetsFullSheet() { - AbstractFloatingView floatingView = AbstractFloatingView.getTopOpenViewWithType( - this, TYPE_WIDGETS_FULL_SHEET); - if (floatingView != null) { - return (WidgetsFullSheet) floatingView; - } - if (shouldShowHomeBehindDesktop() && !mIsTopResumedActivity) { - Intent intent = new Intent(Intent.ACTION_MAIN) - .addCategory(Intent.CATEGORY_HOME) - .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) - .putExtra(EXCLUDE_CLOSE_WIDGET_PICKER, true); - startActivity(intent); - } - return WidgetsFullSheet.show(this, true /* animated */); + public boolean getIsFirstPagePinnedItemEnabled() { + return mModelCallbacks.getIsFirstPagePinnedItemEnabled(); } /** @@ -2993,7 +3106,7 @@ public class Launcher extends StatefulActivity<LauncherState> return super.getStatsLogManager().withDefaultInstanceId(mAllAppsSessionLogId); } - @NonNull + @Override public ItemInflater<Launcher> getItemInflater() { return mItemInflater; } @@ -3012,18 +3125,5 @@ public class Launcher extends StatefulActivity<LauncherState> return ItemClickHandler.INSTANCE; } - /** - * @return true if Launcher is the current top resumed activity. - */ - public boolean isTopResumedActivity() { - return mIsTopResumedActivity; - } - - @Override - public void onTopResumedActivityChanged(boolean isResumed) { - mIsTopResumedActivity = isResumed; - } - - // End of Getters and Setters } diff --git a/src/com/android/launcher3/LauncherAnimUtils.java b/src/com/android/launcher3/LauncherAnimUtils.java index 9157dab143..6a9d170b2c 100644 --- a/src/com/android/launcher3/LauncherAnimUtils.java +++ b/src/com/android/launcher3/LauncherAnimUtils.java @@ -24,15 +24,12 @@ import android.graphics.drawable.ColorDrawable; import android.graphics.drawable.Drawable; import android.util.FloatProperty; import android.util.IntProperty; -import android.util.Property; import android.view.View; import android.view.ViewGroup.LayoutParams; import android.widget.ImageView; import android.widget.TextView; import com.android.launcher3.util.MultiScalePropertyFactory; -import com.android.launcher3.views.ScrimColors; -import com.android.launcher3.views.ScrimView; public class LauncherAnimUtils { /** @@ -204,19 +201,6 @@ public class LauncherAnimUtils { } }; - public static final Property<ScrimView, ScrimColors> SCRIM_COLORS = - new Property<ScrimView, ScrimColors>(ScrimColors.class, "scrimColors") { - @Override - public void set(ScrimView scrimView, ScrimColors scrimColors) { - scrimView.setScrimColors(scrimColors); - } - - @Override - public ScrimColors get(ScrimView scrimView) { - return scrimView.getScrimColors(); - } - }; - public static final FloatProperty<ImageView> ROTATION_DRAWABLE_PERCENT = new FloatProperty<ImageView>("drawableRotationPercent") { // RotateDrawable linearly interpolates the rotation degrees between fromDegrees diff --git a/src/com/android/launcher3/LauncherConstants.java b/src/com/android/launcher3/LauncherConstants.java index 198097669f..5cba82fc3d 100644 --- a/src/com/android/launcher3/LauncherConstants.java +++ b/src/com/android/launcher3/LauncherConstants.java @@ -23,16 +23,15 @@ public class LauncherConstants { public static class TraceEvents { public static final String DISPLAY_ALL_APPS_TRACE_METHOD_NAME = "DisplayAllApps"; - - // Only use a hard-coded cookie since we only want to trace this once. - public static final int SINGLE_TRACE_COOKIE = 0; + public static final int DISPLAY_WORKSPACE_TRACE_COOKIE = 0; + public static final int DISPLAY_ALL_APPS_TRACE_COOKIE = 1; + public static final int COLD_STARTUP_TRACE_COOKIE = 2; public static final String ON_CREATE_EVT = "Launcher.onCreate"; public static final String ON_START_EVT = "Launcher.onStart"; public static final String ON_RESUME_EVT = "Launcher.onResume"; public static final String ON_NEW_INTENT_EVT = "Launcher.onNewIntent"; - public static final String DISPLAY_WORKSPACE_TRACE_METHOD_NAME = - "DisplayWorkspaceFirstFrame"; - public static final String COLD_STARTUP_TRACE_METHOD_NAME = "LauncherColdStartup"; + static final String DISPLAY_WORKSPACE_TRACE_METHOD_NAME = "DisplayWorkspaceFirstFrame"; + static final String COLD_STARTUP_TRACE_METHOD_NAME = "LauncherColdStartup"; } /** diff --git a/src/com/android/launcher3/LauncherModel.kt b/src/com/android/launcher3/LauncherModel.kt index 086b36016a..557ad67386 100644 --- a/src/com/android/launcher3/LauncherModel.kt +++ b/src/com/android/launcher3/LauncherModel.kt @@ -19,13 +19,14 @@ import android.content.Context import android.content.Intent import android.content.pm.ShortcutInfo import android.os.UserHandle +import android.text.TextUtils +import android.util.Pair import androidx.annotation.WorkerThread import com.android.launcher3.celllayout.CellPosMapper import com.android.launcher3.dagger.ApplicationContext import com.android.launcher3.dagger.LauncherAppSingleton import com.android.launcher3.icons.IconCache -import com.android.launcher3.logging.DumpManager -import com.android.launcher3.logging.DumpManager.LauncherDumpable +import com.android.launcher3.model.AddWorkspaceItemsTask import com.android.launcher3.model.AllAppsList import com.android.launcher3.model.BaseLauncherBinder.BaseLauncherBinderFactory import com.android.launcher3.model.BgDataModel @@ -40,15 +41,21 @@ import com.android.launcher3.model.ModelLauncherCallbacks import com.android.launcher3.model.ModelTaskController import com.android.launcher3.model.ModelWriter import com.android.launcher3.model.PackageUpdatedTask +import com.android.launcher3.model.ReloadStringCacheTask import com.android.launcher3.model.ShortcutsChangedTask import com.android.launcher3.model.UserLockStateChangedTask import com.android.launcher3.model.UserManagerState +import com.android.launcher3.model.WorkspaceItemSpaceFinder +import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.pm.UserCache import com.android.launcher3.shortcuts.ShortcutRequest import com.android.launcher3.util.DaggerSingletonTracker +import com.android.launcher3.util.Executors.MAIN_EXECUTOR import com.android.launcher3.util.Executors.MODEL_EXECUTOR import com.android.launcher3.util.PackageUserKey +import com.android.launcher3.util.Preconditions +import java.io.FileDescriptor import java.io.PrintWriter import java.util.concurrent.CancellationException import java.util.function.Consumer @@ -78,9 +85,9 @@ constructor( private val mBgDataModel: BgDataModel, private val loaderFactory: LoaderTaskFactory, private val binderFactory: BaseLauncherBinderFactory, + private val spaceFinderFactory: Provider<WorkspaceItemSpaceFinder>, val modelDbController: ModelDbController, - dumpManager: DumpManager, -) : LauncherDumpable { +) { private val mCallbacksList = ArrayList<BgDataModel.Callbacks>(1) @@ -122,11 +129,16 @@ constructor( } lifecycle.addCloseable { destroy() } modelDelegate.init(this, mBgAllAppsList, mBgDataModel) - lifecycle.addCloseable(dumpManager.register(this)) } fun newModelCallbacks() = ModelLauncherCallbacks(this::enqueueModelUpdateTask) + /** Adds the provided items to the workspace. */ + fun addAndBindAddedWorkspaceItems(itemList: List<Pair<ItemInfo?, Any?>?>) { + callbacks.forEach { it.preAddApps() } + enqueueModelUpdateTask(AddWorkspaceItemsTask(itemList, spaceFinderFactory.get())) + } + fun getWriter( verifyChanges: Boolean, cellPosMapper: CellPosMapper?, @@ -156,6 +168,10 @@ constructor( MODEL_EXECUTOR.execute { modelDelegate.destroy() } } + fun reloadStringCache() { + enqueueModelUpdateTask(ReloadStringCacheTask(this.modelDelegate)) + } + /** * Called then there use a user event * @@ -232,6 +248,7 @@ constructor( /** Removes an existing callback */ fun removeCallbacks(callbacks: BgDataModel.Callbacks) { synchronized(mCallbacksList) { + Preconditions.assertUIThread() if (mCallbacksList.remove(callbacks)) { if (stopLoader()) { // Rebind existing callbacks @@ -255,6 +272,7 @@ constructor( /** Adds a callbacks to receive model updates */ fun addCallbacks(callbacks: BgDataModel.Callbacks) { + Preconditions.assertUIThread() synchronized(mCallbacksList) { mCallbacksList.add(callbacks) } } @@ -275,6 +293,9 @@ constructor( val bindAllCallbacks = wasRunning || !bindDirectly || newCallbacks.isEmpty() val callbacksList = if (bindAllCallbacks) callbacks else newCallbacks if (callbacksList.isNotEmpty()) { + // Clear any pending bind-runnables from the synchronized load process. + callbacksList.forEach { MAIN_EXECUTOR.execute(it::clearPendingBinds) } + val launcherBinder = binderFactory.createBinder(callbacksList) if (bindDirectly) { // Divide the set of loaded items into those that we are binding synchronously, @@ -316,13 +337,6 @@ constructor( } } - /** - * Checks whether the launcher model is active. - * - * @return true if the model is loaded or if loader task is running. - */ - fun isActive(): Boolean = mModelLoaded || mIsLoaderTaskRunning - /** * Loads the model if not loaded * @@ -441,8 +455,8 @@ constructor( } } - override fun dump(prefix: String, writer: PrintWriter, args: Array<String>?) { - if (args?.getOrNull(0) == "--all") { + fun dumpState(prefix: String?, fd: FileDescriptor?, writer: PrintWriter, args: Array<String?>) { + if (args.isNotEmpty() && TextUtils.equals(args[0], "--all")) { writer.println(prefix + "All apps list: size=" + mBgAllAppsList.data.size) for (info in mBgAllAppsList.data) { writer.println( @@ -451,6 +465,8 @@ constructor( } writer.println() } + modelDelegate.dump(prefix, fd, writer, args) + mBgDataModel.dump(prefix, fd, writer, args) } /** Returns true if there are any callbacks attached to the model */ diff --git a/src/com/android/launcher3/LauncherPrefs.kt b/src/com/android/launcher3/LauncherPrefs.kt index d167201193..c8e9e26e7e 100644 --- a/src/com/android/launcher3/LauncherPrefs.kt +++ b/src/com/android/launcher3/LauncherPrefs.kt @@ -19,6 +19,7 @@ import android.content.Context import android.content.Context.MODE_PRIVATE import android.content.SharedPreferences import androidx.annotation.VisibleForTesting +import com.android.launcher3.BuildConfigs.WIDGET_ON_FIRST_SCREEN import com.android.launcher3.GridType.Companion.GRID_TYPE_ANY import com.android.launcher3.InvariantDeviceProfile.GRID_NAME_PREFS_KEY import com.android.launcher3.InvariantDeviceProfile.NON_FIXED_LANDSCAPE_GRID_NAME_PREFS_KEY @@ -237,10 +238,11 @@ constructor(@ApplicationContext private val encryptedContext: Context) { const val TASKBAR_PINNING_KEY = "TASKBAR_PINNING_KEY" const val TASKBAR_PINNING_DESKTOP_MODE_KEY = "TASKBAR_PINNING_DESKTOP_MODE_KEY" + const val SHOULD_SHOW_SMARTSPACE_KEY = "SHOULD_SHOW_SMARTSPACE_KEY" @JvmField val ENABLE_TWOLINE_ALLAPPS_TOGGLE = backedUpItem("pref_enable_two_line_toggle", false) - @JvmField val PROMISE_ICON_IDS = nonRestorableItem(InstallSessionHelper.PROMISE_ICON_IDS, "") + @JvmField val PROMISE_ICON_IDS = backedUpItem(InstallSessionHelper.PROMISE_ICON_IDS, "") @JvmField val WORK_EDU_STEP = backedUpItem("showed_work_profile_edu", 0) @JvmField val WORKSPACE_SIZE = @@ -268,6 +270,13 @@ constructor(@ApplicationContext private val encryptedContext: Context) { val GRID_TYPE = backedUpItem(DeviceGridState.KEY_GRID_TYPE, GRID_TYPE_ANY, EncryptionType.ENCRYPTED) @JvmField + val SHOULD_SHOW_SMARTSPACE = + backedUpItem( + SHOULD_SHOW_SMARTSPACE_KEY, + WIDGET_ON_FIRST_SCREEN, + EncryptionType.DEVICE_PROTECTED, + ) + @JvmField val RESTORE_DEVICE = backedUpItem( RestoreDbTask.RESTORED_DEVICE_TYPE, diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java index 4e65649b61..e51faef6ae 100644 --- a/src/com/android/launcher3/LauncherProvider.java +++ b/src/com/android/launcher3/LauncherProvider.java @@ -35,7 +35,6 @@ import android.util.Log; import android.util.Pair; import com.android.launcher3.LauncherSettings.Favorites; -import com.android.launcher3.dagger.LauncherComponentProvider; import com.android.launcher3.model.ModelDbController; import com.android.launcher3.util.LayoutImportExportHelper; import com.android.launcher3.widget.LauncherWidgetHolder; @@ -46,58 +45,6 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; import java.util.function.ToIntFunction; -/** - * This provider facilitates the import and export of home screen metadata within the - * Launcher's database. This includes managing shortcut placement, launch intents, and labels. - * Each row in the Launcher3 database corresponds to a single item on the workspace (often - * referred to as "favorites"). - * - * <p>Only applications installed on the system partition or those possessing the platform's - * signature can access this provider. - * - * <p>After data insertion into the Launcher's database, a row may be deleted during Launcher - * startup if any of these conditions are true. This list is not exhaustive: - * <ul> - * <li>Missing or invalid launch intent: This includes a null intent, one without a target - * package, or one referencing a non-existent activity.</li> - * <li>When an app previously installed doesn't exist or fails to restore properly.</li> - * <li>If ShortcutManager/WidgetManager haven't finished restoring by the time Launcher loads</li> - * <li>If the App Store hasn't finished restoring when Launcher starts loading.</li> - * <li>The item is linked to a profile that no longer exists (e.g., a deleted work profile).</li> - * <li>A widget's metadata specifies an invalid height or width.</li> - * <li>Incorrect item container: For instance, widgets can only be on the desktop or hotseat<li> - * <li>If the launcher is restoring, but the item isn't flagged as restoring/installing.</li> - * <li>If a widget fails to inflate within AppWidgetManagerService for any reason.</li> - * <li>When items in the database occupy the same or overlapping positions.</li> - * </ul> - * - * <p>Although query, bulkInsert, and insert methods are available, their direct use is not - * recommended. Instead, prefer the XML-based insertion methods accessible via the - * {@code call()} method. This preference is due to several reasons, including: - * <ul> - * <li>The insert methods can can lead to unpredictable behavior if invoked while Launcher - * is in the process of loading.</li> - * <li>The XML approach allows for custom tags which can be ingested for proprietary variants - * of workspace items.</li> - * <li>The XML method clears old data and inserts new data as a single, atomic action. Direct - * Delete/Insert usage requires at least 2 binder calls that are not atomic.</li> - * </ul> - * - * <p>It's important to note that the XML format has non-obvious and strict requirements. For - * instance: - * <ul> - * <li>The Launcher uses the "screen" value to determine hot seat placement order.</li> - * <li>Conversely, for items within a folder, the rank db column dictates their placement - * order.</li> - * <li>When an item is on the top-level workspace (i.e., not in the hot seat), the "screen" - * value signifies its workspace page.</li> - * </ul> - * - * <p>During a launcher restore, a grid migration might occur, either due to user preference or - * design updates. This migration can cause items to be repositioned or moved to different pages, - * depending on the old and new grid sizes. Therefore, precise placement cannot be guaranteed - * in all situations. - */ public class LauncherProvider extends ContentProvider { private static final String TAG = "LauncherProvider"; @@ -114,7 +61,10 @@ public class LauncherProvider extends ContentProvider { */ @Override public void dump(FileDescriptor fd, PrintWriter writer, String[] args) { - LauncherComponentProvider.get(getContext()).getDumpManager().dump("", writer, args); + LauncherModel model = LauncherAppState.INSTANCE.get(getContext()).getModel(); + if (model.isModelLoaded()) { + model.dumpState("", fd, writer, args); + } } @Override @@ -151,15 +101,9 @@ public class LauncherProvider extends ContentProvider { @Override public Uri insert(Uri uri, ContentValues values) { int rowId = executeControllerTask(controller -> { - // 1. Ensure that externally added items have a valid item id. Don't update Folder ids - // because items inside the folder need to reference the original ID as their container - // id, or else be deleted. - if (Flags.externalDataAccess() && values.containsKey(Favorites._ID) - && Favorites.ITEM_TYPE_FOLDER != values.getAsInteger(Favorites.ITEM_TYPE) - && Favorites.ITEM_TYPE_APP_PAIR != values.getAsInteger(Favorites.ITEM_TYPE)) { - int id = controller.generateNewItemId(); - values.put(LauncherSettings.Favorites._ID, id); - } + // 1. Ensure that externally added items have a valid item id + int id = controller.generateNewItemId(); + values.put(LauncherSettings.Favorites._ID, id); // 2. In the case of an app widget, and if no app widget id is specified, we // attempt allocate and bind the widget. diff --git a/src/com/android/launcher3/LauncherRootView.java b/src/com/android/launcher3/LauncherRootView.java index fdae191d48..5aaecfdf3c 100644 --- a/src/com/android/launcher3/LauncherRootView.java +++ b/src/com/android/launcher3/LauncherRootView.java @@ -12,7 +12,6 @@ import android.graphics.Rect; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.util.AttributeSet; -import android.view.KeyEvent; import android.view.ViewDebug; import android.view.WindowInsets; @@ -72,8 +71,8 @@ public class LauncherRootView extends InsettableFrameLayout { private void setUpBlur(Context context) { var display = mStatefulContainer.getDeviceProfile(); - int width = display.getDeviceProperties().getWidthPx(); - int height = display.getDeviceProperties().getHeightPx(); + int width = display.widthPx; + int height = display.heightPx; var wallpaper = getScaledWallpaperDrawable(width, height); if (wallpaper == null) { @@ -130,12 +129,6 @@ public class LauncherRootView extends InsettableFrameLayout { } } - @Override - public boolean dispatchKeyEvent(KeyEvent event) { - return mStatefulContainer.onRootViewDispatchKeyEvent(event) - || super.dispatchKeyEvent(event); - } - @Override public WindowInsets onApplyWindowInsets(WindowInsets insets) { mStatefulContainer.handleConfigurationChanged( diff --git a/src/com/android/launcher3/LauncherSettings.java b/src/com/android/launcher3/LauncherSettings.java index 4f331ef4da..178bc35e29 100644 --- a/src/com/android/launcher3/LauncherSettings.java +++ b/src/com/android/launcher3/LauncherSettings.java @@ -51,7 +51,8 @@ public class LauncherSettings { */ public static final int VIEW_BACKGROUND = 1; /** - * The default animation for a given view/item info type, but without the splash icon. + * The default animation for a given view/item info type, but without the splash + * icon. */ public static final int DEFAULT_NO_ICON = 2; } @@ -62,28 +63,37 @@ public class LauncherSettings { public static final class Favorites implements BaseColumns { /** * The time of the last update to this row. - * <P>Type: INTEGER</P> + * <P> + * Type: INTEGER + * </P> */ public static final String MODIFIED = "modified"; /** * Descriptive name of the gesture that can be displayed to the user. - * <P>Type: TEXT</P> + * <P> + * Type: TEXT + * </P> */ public static final String TITLE = "title"; /** * The Intent URL of the gesture, describing what it points to. This - * value is given to {@link android.content.Intent#parseUri(String, int)} to create + * value is given to {@link android.content.Intent#parseUri(String, int)} to + * create * an Intent that can be launched. - * <P>Type: TEXT</P> + * <P> + * Type: TEXT + * </P> */ public static final String INTENT = "intent"; /** * The type of the gesture * - * <P>Type: INTEGER</P> + * <P> + * Type: INTEGER + * </P> */ public static final String ITEM_TYPE = "itemType"; @@ -98,7 +108,9 @@ public class LauncherSettings { /** * The gesture is an application created shortcut - * @deprecated This is no longer supported. Use {@link #ITEM_TYPE_DEEP_SHORTCUT} instead + * + * @deprecated This is no longer supported. Use {@link #ITEM_TYPE_DEEP_SHORTCUT} + * instead */ @Deprecated public static final int ITEM_TYPE_SHORTCUT = 1; @@ -128,7 +140,8 @@ public class LauncherSettings { */ public static final int ITEM_TYPE_APP_PAIR = 10; - // *** Below enum values are used for metrics purpose but not used in Favorites DB *** + // *** Below enum values are used for metrics purpose but not used in Favorites + // DB *** /** * Type of the item is recents task. @@ -152,14 +165,17 @@ public class LauncherSettings { /** * The custom icon bitmap. - * <P>Type: BLOB</P> + * <P> + * Type: BLOB + * </P> */ public static final String ICON = "icon"; public static final String TABLE_NAME = "favorites"; /** - * Backup table created when user hotseat is moved to workspace for hybrid hotseat + * Backup table created when user hotseat is moved to workspace for hybrid + * hotseat */ public static final String HYBRID_HOTSEAT_BACKUP_TABLE = "hotseat_restore_backup"; @@ -170,7 +186,9 @@ public class LauncherSettings { /** * The container holding the favorite - * <P>Type: INTEGER</P> + * <P> + * Type: INTEGER + * </P> */ public static final String CONTAINER = "container"; @@ -179,7 +197,7 @@ public class LauncherSettings { */ public static final int CONTAINER_DESKTOP = -100; public static final int CONTAINER_HOTSEAT = -101; - public static final int CONTAINER_ALL_APPS_PREDICTION = -102; + public static final int CONTAINER_PREDICTION = -102; public static final int CONTAINER_WIDGETS_PREDICTION = -111; public static final int CONTAINER_HOTSEAT_PREDICTION = -103; public static final int CONTAINER_ALL_APPS = -104; @@ -199,61 +217,87 @@ public class LauncherSettings { public static final String containerToString(int container) { switch (container) { - case CONTAINER_DESKTOP: return "desktop"; - case CONTAINER_HOTSEAT: return "hotseat"; - case CONTAINER_ALL_APPS_PREDICTION: return "prediction"; - case CONTAINER_ALL_APPS: return "all_apps"; - case CONTAINER_WIDGETS_TRAY: return "widgets_tray"; - case CONTAINER_SHORTCUTS: return "shortcuts"; - default: return String.valueOf(container); + case CONTAINER_DESKTOP: + return "desktop"; + case CONTAINER_HOTSEAT: + return "hotseat"; + case CONTAINER_PREDICTION: + return "prediction"; + case CONTAINER_ALL_APPS: + return "all_apps"; + case CONTAINER_WIDGETS_TRAY: + return "widgets_tray"; + case CONTAINER_SHORTCUTS: + return "shortcuts"; + default: + return String.valueOf(container); } } public static final String itemTypeToString(int type) { - switch(type) { - case ITEM_TYPE_APPLICATION: return "APP"; - case ITEM_TYPE_FOLDER: return "FOLDER"; - case ITEM_TYPE_APPWIDGET: return "WIDGET"; - case ITEM_TYPE_CUSTOM_APPWIDGET: return "CUSTOMWIDGET"; - case ITEM_TYPE_DEEP_SHORTCUT: return "DEEPSHORTCUT"; - case ITEM_TYPE_TASK: return "TASK"; - case ITEM_TYPE_QSB: return "QSB"; - case ITEM_TYPE_APP_PAIR: return "APP_PAIR"; + switch (type) { + case ITEM_TYPE_APPLICATION: + return "APP"; + case ITEM_TYPE_FOLDER: + return "FOLDER"; + case ITEM_TYPE_APPWIDGET: + return "WIDGET"; + case ITEM_TYPE_CUSTOM_APPWIDGET: + return "CUSTOMWIDGET"; + case ITEM_TYPE_DEEP_SHORTCUT: + return "DEEPSHORTCUT"; + case ITEM_TYPE_TASK: + return "TASK"; + case ITEM_TYPE_QSB: + return "QSB"; + case ITEM_TYPE_APP_PAIR: + return "APP_PAIR"; case ITEM_TYPE_PRIVATE_SPACE_INSTALL_APP_BUTTON: return "PRIVATE_SPACE_INSTALL_APP_BUTTON"; - default: return String.valueOf(type); + default: + return String.valueOf(type); } } /** * The screen holding the favorite (if container is CONTAINER_DESKTOP) - * <P>Type: INTEGER</P> + * <P> + * Type: INTEGER + * </P> */ public static final String SCREEN = "screen"; /** * The X coordinate of the cell holding the favorite * (if container is CONTAINER_HOTSEAT or CONTAINER_HOTSEAT) - * <P>Type: INTEGER</P> + * <P> + * Type: INTEGER + * </P> */ public static final String CELLX = "cellX"; /** * The Y coordinate of the cell holding the favorite * (if container is CONTAINER_DESKTOP) - * <P>Type: INTEGER</P> + * <P> + * Type: INTEGER + * </P> */ public static final String CELLY = "cellY"; /** * The X span of the cell holding the favorite - * <P>Type: INTEGER</P> + * <P> + * Type: INTEGER + * </P> */ public static final String SPANX = "spanX"; /** * The Y span of the cell holding the favorite - * <P>Type: INTEGER</P> + * <P> + * Type: INTEGER + * </P> */ public static final String SPANY = "spanY"; @@ -268,38 +312,51 @@ public class LauncherSettings { /** * The appWidgetId of the widget * - * <P>Type: INTEGER</P> + * <P> + * Type: INTEGER + * </P> */ public static final String APPWIDGET_ID = "appWidgetId"; /** * The ComponentName of the widget provider * - * <P>Type: STRING</P> + * <P> + * Type: STRING + * </P> */ public static final String APPWIDGET_PROVIDER = "appWidgetProvider"; /** * Boolean indicating that his item was restored and not yet successfully bound. - * <P>Type: INTEGER</P> + * <P> + * Type: INTEGER + * </P> */ public static final String RESTORED = "restored"; /** - * Indicates the position of the item inside an auto-arranged view like folder or hotseat. - * <p>Type: INTEGER</p> + * Indicates the position of the item inside an auto-arranged view like folder + * or hotseat. + * <p> + * Type: INTEGER + * </p> */ public static final String RANK = "rank"; /** * Stores general flag based options for {@link ItemInfo}s. - * <p>Type: INTEGER</p> + * <p> + * Type: INTEGER + * </p> */ public static final String OPTIONS = "options"; /** * Stores the source container that the widget was added from. - * <p>Type: INTEGER</p> + * <p> + * Type: INTEGER + * </p> */ public static final String APPWIDGET_SOURCE = "appWidgetSource"; @@ -348,7 +405,8 @@ public class LauncherSettings { } /** - * Returns an ordered list of columns in the Favorites table as one string, ready to use in + * Returns an ordered list of columns in the Favorites table as one string, + * ready to use in * an SQL statement. */ @NonNull @@ -359,7 +417,7 @@ public class LauncherSettings { /** * Lookup flag to be used for items which are visible on the home screen */ - public static final CacheLookupFlag DESKTOP_ICON_FLAG = DEFAULT_LOOKUP_FLAG.withThemeIcon(); + public static final CacheLookupFlag DESKTOP_ICON_FLAG = DEFAULT_LOOKUP_FLAG; } /** diff --git a/src/com/android/launcher3/LauncherState.java b/src/com/android/launcher3/LauncherState.java index 18d918b81a..117e486726 100644 --- a/src/com/android/launcher3/LauncherState.java +++ b/src/com/android/launcher3/LauncherState.java @@ -43,13 +43,12 @@ import androidx.annotation.StringRes; import com.android.launcher3.statemanager.BaseState; import com.android.launcher3.statemanager.StateManager; import com.android.launcher3.states.EditModeState; +import com.android.launcher3.states.HintState; import com.android.launcher3.states.SpringLoadedState; import com.android.launcher3.testing.shared.TestProtocol; import com.android.launcher3.uioverrides.states.AllAppsState; -import com.android.launcher3.uioverrides.states.HintState; import com.android.launcher3.uioverrides.states.OverviewState; import com.android.launcher3.views.ActivityContext; -import com.android.launcher3.views.ScrimColors; import java.util.Arrays; @@ -93,9 +92,6 @@ public abstract class LauncherState implements BaseState<LauncherState> { // Flag indicating that hotseat and its contents are not accessible. public static final int FLAG_HOTSEAT_INACCESSIBLE = BaseState.getFlag(7); - // Flag indicating that this state should not be announced by Talkback when reached - public static final int FLAG_SKIP_STATE_ANNOUNCEMENT = BaseState.getFlag(8); - public static final float NO_OFFSET = 0; public static final float NO_SCALE = 1; @@ -233,7 +229,7 @@ public abstract class LauncherState implements BaseState<LauncherState> { public int getFloatingSearchBarRestingMarginBottom(Launcher launcher) { DeviceProfile dp = launcher.getDeviceProfile(); return areElementsVisible(launcher, FLOATING_SEARCH_BAR) ? dp.getQsbOffsetY() - : -dp.getHotseatProfile().getQsbHeight(); + : -dp.hotseatQsbHeight; } /** @@ -256,7 +252,7 @@ public abstract class LauncherState implements BaseState<LauncherState> { DeviceProfile dp = launcher.getDeviceProfile(); if (dp.isQsbInline) { int marginStart = getFloatingSearchBarRestingMarginStart(launcher); - return dp.getDeviceProperties().getWidthPx() - marginStart - dp.hotseatQsbWidth; + return dp.widthPx - marginStart - dp.hotseatQsbWidth; } boolean isRtl = Utilities.isRtl(launcher.getResources()); @@ -272,7 +268,7 @@ public abstract class LauncherState implements BaseState<LauncherState> { public int getVisibleElements(Launcher launcher) { int elements = HOTSEAT_ICONS | WORKSPACE_PAGE_INDICATOR | VERTICAL_SWIPE_INDICATOR; // Floating search bar is visible in normal state except in landscape on phones. - if (!(launcher.getDeviceProfile().getDeviceProperties().isPhone() && launcher.getDeviceProfile().getDeviceProperties().isLandscape())) { + if (!(launcher.getDeviceProfile().isPhone && launcher.getDeviceProfile().isLandscape)) { elements |= FLOATING_SEARCH_BAR; } return elements; @@ -331,9 +327,8 @@ public abstract class LauncherState implements BaseState<LauncherState> { * What color should the workspace scrim be in when at rest in this state. * Return {@link Color#TRANSPARENT} for no scrim. */ - public ScrimColors getWorkspaceScrimColor(Launcher launcher) { - return new ScrimColors(/* backgroundColor */ Color.TRANSPARENT, - /* foregroundColor */ Color.TRANSPARENT); + public int getWorkspaceScrimColor(Launcher launcher) { + return Color.TRANSPARENT; } /** @@ -361,7 +356,7 @@ public abstract class LauncherState implements BaseState<LauncherState> { public final <DEVICE_PROFILE_CONTEXT extends Context & ActivityContext> float getDepth(DEVICE_PROFILE_CONTEXT context) { return getDepth(context, - ActivityContext.lookupContext(context).getDeviceProfile().getDeviceProperties().isMultiWindowMode()); + ActivityContext.lookupContext(context).getDeviceProfile().isMultiWindowMode); } /** @@ -382,16 +377,6 @@ public abstract class LauncherState implements BaseState<LauncherState> { return 0f; } - /** - * Returns whether the workspace should be blurred alongside wallpaper depth. - * - * @param targetState - The target state if a transition is in progress, or current state - * @return {@code true} if the workspace should be blurred alongside wallpaper depth. - */ - public boolean shouldBlurWorkspace(LauncherState targetState) { - return targetState == ALL_APPS; - } - public String getDescription(Launcher launcher) { return launcher.getWorkspace().getCurrentPageDescription(); } @@ -405,7 +390,7 @@ public abstract class LauncherState implements BaseState<LauncherState> { boolean shouldFadeAdjacentScreens = (this == NORMAL || this == HINT_STATE) && dp.shouldFadeAdjacentWorkspaceScreens(); // Avoid showing adjacent screens behind handheld All Apps sheet. - if (Flags.allAppsSheetForHandheld() && dp.getDeviceProperties().isPhone() && this == ALL_APPS) { + if (Flags.allAppsSheetForHandheld() && dp.isPhone && this == ALL_APPS) { shouldFadeAdjacentScreens = true; } if (!shouldFadeAdjacentScreens) { @@ -425,7 +410,7 @@ public abstract class LauncherState implements BaseState<LauncherState> { */ public PageTranslationProvider getWorkspacePageTranslationProvider(Launcher launcher) { if (!(this == SPRING_LOADED || this == EDIT_MODE) - || !launcher.getDeviceProfile().getDeviceProperties().isTwoPanels()) { + || !launcher.getDeviceProfile().isTwoPanels) { return DEFAULT_PAGE_TRANSLATION_PROVIDER; } final float quarterPageSpacing = launcher.getWorkspace().getPageSpacing() / 4f; @@ -462,11 +447,7 @@ public abstract class LauncherState implements BaseState<LauncherState> { } /** Called when predictive back gesture is started. */ - public void onBackStarted(Launcher launcher) { - StateManager<LauncherState, Launcher> lsm = launcher.getStateManager(); - LauncherState toState = lsm.getLastState(); - lsm.onBackStarted(toState); - } + public void onBackStarted(Launcher launcher) {} /** * Called when back action is invoked. This can happen when: diff --git a/src/com/android/launcher3/MainProcessInitializer.java b/src/com/android/launcher3/MainProcessInitializer.java index 0cad917549..60856c61af 100644 --- a/src/com/android/launcher3/MainProcessInitializer.java +++ b/src/com/android/launcher3/MainProcessInitializer.java @@ -13,26 +13,14 @@ * See the License for the specific language governing permissions and * limitations under the License. * - * Modifications copyright 2025, Lawnchair + * Modifications copyright 2021, Lawnchair */ package com.android.launcher3; -import static android.app.PendingIntent.FLAG_IMMUTABLE; -import static android.app.PendingIntent.FLAG_UPDATE_CURRENT; - -import static com.android.launcher3.Flags.enableStrictMode; - -import android.app.Notification; -import android.app.NotificationChannel; -import android.app.NotificationManager; -import android.app.PendingIntent; import android.content.Context; -import android.content.Intent; -import android.os.StrictMode; import android.util.Log; -import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.graphics.BitmapCreationCheck; import com.android.launcher3.logging.FileLog; import com.android.launcher3.util.ResourceBasedOverride; @@ -48,8 +36,6 @@ public class MainProcessInitializer implements ResourceBasedOverride { private static final String TAG = "MainProcessInitializer"; - private static final boolean DEBUG_STRICT_MODE = false; - public static void initialize(Context context) { try { Unseal.unseal(); @@ -70,59 +56,5 @@ public class MainProcessInitializer implements ResourceBasedOverride { if (BitmapCreationCheck.ENABLED) { BitmapCreationCheck.startTracking(context); } - - if (DEBUG_STRICT_MODE || (BuildConfigs.IS_STUDIO_BUILD && enableStrictMode())) { - StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() - .detectDiskReads() - .detectDiskWrites() - .detectNetwork() // or .detectAll() for all detectable problems - .penaltyLog() - .build()); - StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() - .detectLeakedSqlLiteObjects() - .detectLeakedClosableObjects() - .detectActivityLeaks() - .penaltyLog() - .penaltyDeath() - .build()); - } - - if (BuildConfigs.IS_DEBUG_DEVICE && FeatureFlags.NOTIFY_CRASHES.get()) { - final String notificationChannelId = "com.android.launcher3.Debug"; - final String notificationChannelName = "Debug"; - final String notificationTag = "Debug"; - final int notificationId = 0; - - NotificationManager notificationManager = - context.getSystemService(NotificationManager.class); - notificationManager.createNotificationChannel(new NotificationChannel( - notificationChannelId, notificationChannelName, - NotificationManager.IMPORTANCE_HIGH)); - - Thread.currentThread().setUncaughtExceptionHandler((thread, throwable) -> { - String stackTrace = Log.getStackTraceString(throwable); - - Intent shareIntent = new Intent(Intent.ACTION_SEND); - shareIntent.setType("text/plain"); - shareIntent.putExtra(Intent.EXTRA_TEXT, stackTrace); - shareIntent = Intent.createChooser(shareIntent, null); - PendingIntent sharePendingIntent = PendingIntent.getActivity( - context, 0, shareIntent, FLAG_UPDATE_CURRENT | FLAG_IMMUTABLE); - - Notification notification = new Notification.Builder(context, notificationChannelId) - .setSmallIcon(android.R.drawable.ic_menu_close_clear_cancel) - .setContentTitle("Launcher crash detected!") - .setStyle(new Notification.BigTextStyle().bigText(stackTrace)) - .addAction(android.R.drawable.ic_menu_share, "Share", sharePendingIntent) - .build(); - notificationManager.notify(notificationTag, notificationId, notification); - - Thread.UncaughtExceptionHandler defaultUncaughtExceptionHandler = - Thread.getDefaultUncaughtExceptionHandler(); - if (defaultUncaughtExceptionHandler != null) { - defaultUncaughtExceptionHandler.uncaughtException(thread, throwable); - } - }); - } } } diff --git a/src/com/android/launcher3/ModelCallbacks.kt b/src/com/android/launcher3/ModelCallbacks.kt index ba5c0dbf59..d18ea64879 100644 --- a/src/com/android/launcher3/ModelCallbacks.kt +++ b/src/com/android/launcher3/ModelCallbacks.kt @@ -1,58 +1,49 @@ package com.android.launcher3 -import android.animation.AnimatorSet -import android.os.CancellationSignal +import android.annotation.TargetApi +import android.os.Build import android.os.Trace import android.util.Log -import android.util.Pair -import androidx.annotation.AnyThread import androidx.annotation.UiThread -import androidx.annotation.VisibleForTesting -import com.android.launcher3.LauncherConstants.TraceEvents.DISPLAY_WORKSPACE_TRACE_METHOD_NAME -import com.android.launcher3.LauncherConstants.TraceEvents.SINGLE_TRACE_COOKIE -import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP -import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT +import com.android.launcher3.Flags.enableSmartspaceRemovalToggle +import com.android.launcher3.LauncherConstants.TraceEvents +import com.android.launcher3.Utilities.SHOULD_SHOW_FIRST_PAGE_WIDGET import com.android.launcher3.WorkspaceLayoutManager.FIRST_SCREEN_ID import com.android.launcher3.allapps.AllAppsStore import com.android.launcher3.config.FeatureFlags +import com.android.launcher3.debug.TestEventEmitter +import com.android.launcher3.debug.TestEventEmitter.TestEvent import com.android.launcher3.model.BgDataModel -import com.android.launcher3.model.ItemInstallQueue -import com.android.launcher3.model.ItemInstallQueue.FLAG_LOADER_RUNNING -import com.android.launcher3.model.ModelUtils.WIDGET_FILTER -import com.android.launcher3.model.ModelUtils.currentScreenContentFilter import com.android.launcher3.model.StringCache import com.android.launcher3.model.data.AppInfo import com.android.launcher3.model.data.ItemInfo -import com.android.launcher3.model.data.PredictedContainerInfo -import com.android.launcher3.model.data.WorkspaceData import com.android.launcher3.popup.PopupContainerWithArrow import com.android.launcher3.util.ComponentKey -import com.android.launcher3.util.Executors -import com.android.launcher3.util.Executors.MAIN_EXECUTOR import com.android.launcher3.util.IntArray as LIntArray -import com.android.launcher3.util.IntArray import com.android.launcher3.util.IntSet as LIntSet -import com.android.launcher3.util.IntSet -import com.android.launcher3.util.ItemInfoMatcher import com.android.launcher3.util.PackageUserKey import com.android.launcher3.util.Preconditions import com.android.launcher3.util.RunnableList import com.android.launcher3.util.TraceHelper import com.android.launcher3.util.ViewOnDrawExecutor +import com.android.launcher3.widget.PendingAddWidgetInfo import com.android.launcher3.widget.model.WidgetsListBaseEntry -import java.util.concurrent.Executor -import java.util.concurrent.atomic.AtomicReference import java.util.function.Predicate +private const val TAG = "ModelCallbacks" + class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { - private var activeBindTask = AtomicReference(CancellationSignal()) + var synchronouslyBoundPages = LIntSet() + var pagesToBindSynchronously = LIntSet() + + private var isFirstPagePinnedItemEnabled = + (!enableSmartspaceRemovalToggle()) - var synchronouslyBoundPages = IntSet() - var pagesToBindSynchronously = IntSet() var stringCache: StringCache? = null var pendingExecutor: ViewOnDrawExecutor? = null + var workspaceLoading = true /** @@ -60,7 +51,7 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { * * Implementation of the method from LauncherModel.Callbacks. */ - private fun startBinding() { + override fun startBinding() { TraceHelper.INSTANCE.beginSection("startBinding") // Floating panels (except the full widget sheet) are associated with individual icons. If // we are starting a fresh bind, close all such panels as all the icons are about @@ -86,18 +77,21 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { " and is setting to ${launcher.deviceProfile.isVerticalBarLayout}", ) launcher.hotseat?.resetLayout(launcher.deviceProfile.isVerticalBarLayout) - launcher.startBinding() TraceHelper.INSTANCE.endSection() } - private fun onInitialBindComplete( + @TargetApi(Build.VERSION_CODES.S) + override fun onInitialBindComplete( boundPages: LIntSet, pendingTasks: RunnableList, onCompleteSignal: RunnableList, workspaceItemCount: Int, isBindSync: Boolean, ) { - Trace.endAsyncSection(DISPLAY_WORKSPACE_TRACE_METHOD_NAME, SINGLE_TRACE_COOKIE) + Trace.endAsyncSection( + TraceEvents.DISPLAY_WORKSPACE_TRACE_METHOD_NAME, + TraceEvents.DISPLAY_WORKSPACE_TRACE_COOKIE, + ) synchronouslyBoundPages = boundPages pagesToBindSynchronously = LIntSet() clearPendingBinds() @@ -132,7 +126,7 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { * * Implementation of the method from LauncherModel.Callbacks. */ - private fun finishBindingItems(pagesBoundFirst: IntSet?) { + override fun finishBindingItems(pagesBoundFirst: LIntSet?) { TraceHelper.INSTANCE.beginSection("finishBindingItems") val deviceProfile = launcher.deviceProfile launcher.workspace.restoreInstanceStateForRemainingPages() @@ -146,7 +140,7 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { // Since we are just resetting the current page without user interaction, // override the previous page so we don't log the page switch. launcher.workspace.setCurrentPage(currentPage, currentPage /* overridePrevPage */) - pagesToBindSynchronously = IntSet() + pagesToBindSynchronously = LIntSet() // Cache one page worth of icons launcher.viewCache.setCacheSize( @@ -158,16 +152,16 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { launcher.workspace.removeExtraEmptyScreen(/* stripEmptyScreens= */ true) launcher.workspace.pageIndicator.setPauseScroll( /*pause=*/ false, - deviceProfile.deviceProperties.isTwoPanels, + deviceProfile.isTwoPanels, ) - launcher.finishBindingItems(pagesBoundFirst) + TestEventEmitter.sendEvent(TestEvent.WORKSPACE_FINISH_LOADING) } /** * Clear any pending bind callbacks. This is called when is loader is planning to perform a full * rebind from scratch. */ - fun clearPendingBinds() { + override fun clearPendingBinds() { pendingExecutor?.cancel() ?: return pendingExecutor = null @@ -177,11 +171,23 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { ) } + override fun preAddApps() { + // If there's an undo snackbar, force it to complete to ensure empty screens are removed + // before trying to add new items. + launcher.modelWriter.commitDelete() + val snackbar = + AbstractFloatingView.getOpenView<AbstractFloatingView>( + launcher, + AbstractFloatingView.TYPE_SNACKBAR, + ) + snackbar?.post { snackbar.close(true) } + } + @UiThread override fun bindAllApplications( - apps: Array<AppInfo>, + apps: Array<AppInfo?>?, flags: Int, - packageUserKeytoUidMap: Map<PackageUserKey, Int>, + packageUserKeytoUidMap: Map<PackageUserKey?, Int?>?, ) { Preconditions.assertUIThread() val hadWorkApps = launcher.appsView.shouldShowTabs() @@ -199,11 +205,11 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { * Copies LauncherModel's map of activities to shortcut counts to Launcher's. This is necessary * because LauncherModel's map is updated in the background, while Launcher runs on the UI. */ - override fun bindDeepShortcutMap(deepShortcutMapCopy: HashMap<ComponentKey, Int>) { + override fun bindDeepShortcutMap(deepShortcutMapCopy: HashMap<ComponentKey?, Int?>?) { launcher.popupDataProvider.setDeepShortcutMap(deepShortcutMapCopy) } - override fun bindIncrementalDownloadProgressUpdated(app: AppInfo) { + override fun bindIncrementalDownloadProgressUpdated(app: AppInfo?) { launcher.appsView.appsStore.updateProgressBar(app) } @@ -212,24 +218,8 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { * method from LauncherModel.Callbacks. */ override fun bindItemsUpdated(updates: Set<ItemInfo>) { - val workspace = launcher.workspace - val itemsToRebind = workspace.updateContainerItems(updates, launcher) + launcher.workspace.updateContainerItems(updates, launcher) PopupContainerWithArrow.dismissInvalidPopup(launcher) - - updates - .mapNotNull { if (it is PredictedContainerInfo) it else null } - .forEach { launcher.bindPredictedContainerInfo(it) } - - if (itemsToRebind.isEmpty()) return - workspace.removeItemsByMatcher(ItemInfoMatcher.ofItems(itemsToRebind), false) - itemsToRebind - .filter { workspace.isContainerSupported(it.container) } - .let { - if (it.isNotEmpty()) { - bindItems(it, false) - } - } - workspace.stripEmptyScreens() } /** @@ -238,8 +228,8 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { * updated as well. In that scenario, we only remove specific components from the workspace and * hotseat, where as package-removal should clear all items by package name. */ - override fun bindWorkspaceComponentsRemoved(matcher: Predicate<ItemInfo?>) { - launcher.workspace.removeItemsByMatcher(matcher, true) + override fun bindWorkspaceComponentsRemoved(matcher: Predicate<ItemInfo?>?) { + launcher.workspace.removeItemsByMatcher(matcher) launcher.dragController.onAppsRemoved(matcher) PopupContainerWithArrow.dismissInvalidPopup(launcher) } @@ -249,7 +239,7 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { } /** Returns the ids of the workspaces to bind. */ - private fun getPagesToBindSynchronously(orderedScreenIds: IntArray): IntSet { + override fun getPagesToBindSynchronously(orderedScreenIds: LIntArray): LIntSet { // If workspace binding is still in progress, getCurrentPageScreenIds won't be // accurate, and we should use mSynchronouslyBoundPages that's set during initial binding. val visibleIds = @@ -259,7 +249,7 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { else -> synchronouslyBoundPages } // Launcher IntArray has the same name as Kotlin IntArray - val result = IntSet() + val result = LIntSet() if (visibleIds.isEmpty) { return result } @@ -270,13 +260,12 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { // in single panel. if (actualIds.contains(firstId)) { result.add(firstId) - if (launcher.deviceProfile.deviceProperties.isTwoPanels && actualIds.contains(pairId)) { + if (launcher.deviceProfile.isTwoPanels && actualIds.contains(pairId)) { result.add(pairId) } } else if ( - LauncherAppState.getIDP(launcher).supportedProfiles.any { - it.deviceProperties.isTwoPanels - } && actualIds.contains(pairId) + LauncherAppState.getIDP(launcher).supportedProfiles.any(DeviceProfile::isTwoPanels) && + actualIds.contains(pairId) ) { // Add the right panel if left panel is hidden when switching display, due to empty // pages being hidden in single panel. @@ -285,16 +274,52 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { return result } - private fun bindScreens(orderedScreenIds: LIntArray) { + override fun bindSmartspaceWidget() { + val cl: CellLayout? = + launcher.workspace.getScreenWithId(WorkspaceLayoutManager.FIRST_SCREEN_ID) + val spanX = InvariantDeviceProfile.INSTANCE.get(launcher).numSearchContainerColumns + + if (cl?.isRegionVacant(0, 0, spanX, 1) != true) { + return + } + + val widgetsListBaseEntry: WidgetsListBaseEntry = + launcher.widgetPickerDataProvider.get().allWidgets.firstOrNull { + item: WidgetsListBaseEntry -> + item.mPkgItem.packageName == BuildConfig.APPLICATION_ID + } ?: return + + val info = + PendingAddWidgetInfo( + widgetsListBaseEntry.mWidgets[0].widgetInfo, + LauncherSettings.Favorites.CONTAINER_DESKTOP, + ) + launcher.addPendingItem( + info, + info.container, + WorkspaceLayoutManager.FIRST_SCREEN_ID, + intArrayOf(0, 0), + info.spanX, + info.spanY, + ) + } + + override fun bindScreens(orderedScreenIds: LIntArray) { launcher.workspace.pageIndicator.setPauseScroll( /*pause=*/ true, - launcher.deviceProfile.deviceProperties.isTwoPanels, + launcher.deviceProfile.isTwoPanels, ) val firstScreenPosition = 0 - if (orderedScreenIds.indexOf(FIRST_SCREEN_ID) != firstScreenPosition) { + if ( + (isFirstPagePinnedItemEnabled && !SHOULD_SHOW_FIRST_PAGE_WIDGET) && + orderedScreenIds.indexOf(FIRST_SCREEN_ID) != firstScreenPosition + ) { orderedScreenIds.removeValue(FIRST_SCREEN_ID) orderedScreenIds.add(firstScreenPosition, FIRST_SCREEN_ID) - } else if (orderedScreenIds.isEmpty) { + } else if ( + (!isFirstPagePinnedItemEnabled || SHOULD_SHOW_FIRST_PAGE_WIDGET) && + orderedScreenIds.isEmpty + ) { // If there are no screens, we need to have an empty screen launcher.workspace.addExtraEmptyScreens() } @@ -306,38 +331,26 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { launcher.workspace.unlockWallpaperFromDefaultPageOnNextLayout() } - override fun bindItemsAdded(items: List<ItemInfo>) { - val newScreens = LIntSet() - val nonAnimatedItems = mutableListOf<ItemInfo>() - val animatedItems = mutableListOf<ItemInfo>() - val folderItems = mutableListOf<ItemInfo>() - val lastScreen = - items - .maxByOrNull { if (it.container == CONTAINER_DESKTOP) it.screenId else 0 } - ?.screenId ?: 0 - - items.forEach { - when (it.container) { - CONTAINER_HOTSEAT -> nonAnimatedItems.add(it) - CONTAINER_DESKTOP -> { - newScreens.add(it.screenId) - if (it.screenId == lastScreen) animatedItems.add(it) - else nonAnimatedItems.add(it) - } - else -> folderItems.add(it) - } + override fun bindAppsAdded( + newScreens: LIntArray?, + addNotAnimated: java.util.ArrayList<ItemInfo?>?, + addAnimated: java.util.ArrayList<ItemInfo?>?, + ) { + // Add the new screens + if (newScreens != null) { + // newScreens can contain an empty right panel that is already bound, but not known + // by BgDataModel. + newScreens.removeAllValues(launcher.workspace.mScreenOrder) + bindAddScreens(newScreens) } - launcher.workspace.mScreenOrder.forEach { newScreens.remove(it) } - if (!newScreens.isEmpty) bindAddScreens(newScreens.array) - // We add the items without animation on non-visible pages, and with // animations on the new page (which we will try and snap to). - if (nonAnimatedItems.isNotEmpty()) { - bindItems(nonAnimatedItems, false) + if (!addNotAnimated.isNullOrEmpty()) { + launcher.bindItems(addNotAnimated, false) } - if (animatedItems.isNotEmpty()) { - bindItems(animatedItems, true) + if (!addAnimated.isNullOrEmpty()) { + launcher.bindItems(addAnimated, true) } // Remove the extra empty screen @@ -346,7 +359,7 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { private fun bindAddScreens(orderedScreenIdsArg: LIntArray) { var orderedScreenIds = orderedScreenIdsArg - if (launcher.deviceProfile.deviceProperties.isTwoPanels) { + if (launcher.deviceProfile.isTwoPanels) { if (FeatureFlags.FOLDABLE_SINGLE_PAGE.get()) { orderedScreenIds = filterTwoPanelScreenIds(orderedScreenIds) } else { @@ -360,7 +373,11 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { } } orderedScreenIds - .filter { screenId -> screenId != FIRST_SCREEN_ID } + .filterNot { screenId -> + isFirstPagePinnedItemEnabled && + !SHOULD_SHOW_FIRST_PAGE_WIDGET && + screenId == WorkspaceLayoutManager.FIRST_SCREEN_ID + } .forEach { screenId -> launcher.workspace.insertNewWorkspaceScreenBeforeEmptyScreen(screenId) } @@ -384,186 +401,17 @@ class ModelCallbacks(private var launcher: Launcher) : BgDataModel.Callbacks { return screenIds.array } + override fun setIsFirstPagePinnedItemEnabled(isFirstPagePinnedItemEnabled: Boolean) { + this.isFirstPagePinnedItemEnabled = isFirstPagePinnedItemEnabled + launcher.workspace.bindAndInitFirstWorkspaceScreen() + } + override fun bindStringCache(cache: StringCache) { stringCache = cache launcher.appsView.updateWorkUI() } - /** Bind the items start-end from the list. */ - @VisibleForTesting - fun bindItems(items: List<ItemInfo>, forceAnimateIcons: Boolean) { - launcher.bindInflatedItems( - items.map { Pair.create(it, launcher.itemInflater.inflateItem(it)) }, - if (forceAnimateIcons) AnimatorSet() else null, - ) - } + fun getIsFirstPagePinnedItemEnabled(): Boolean = isFirstPagePinnedItemEnabled - @AnyThread - override fun bindCompleteModelAsync(itemIdMap: WorkspaceData, isBindingSync: Boolean) { - val taskTracker = CancellationSignal() - activeBindTask.getAndSet(taskTracker).cancel() - - val inflater = launcher.itemInflater - - fun executeCallbacksTask(executor: Executor = MAIN_EXECUTOR, task: () -> Unit) { - executor.execute { - if (taskTracker.isCanceled) { - Log.d(TAG, "Too many consecutive reloads, skipping obsolete data-bind") - } else { - task.invoke() - } - } - } - - // Tries to inflate the items asynchronously and bind. Returns true on success or false if - // async-binding is not supported in this case - fun inflateAsyncAndBind(items: List<ItemInfo>, executor: Executor) { - if (taskTracker.isCanceled) { - Log.d(TAG, "Too many consecutive reloads, skipping obsolete view inflation") - return - } - - val bindItems = items.map { Pair.create(it, inflater.inflateItem(it, null)) } - if (bindItems.isNotEmpty()) - executeCallbacksTask(executor) { launcher.bindInflatedItems(bindItems, null) } - } - - fun bindItemsInChunks(items: List<ItemInfo>, chuckSize: Int, executor: Executor) { - // Bind the workspace items - val itemCount = items.size - var i = 0 - while (i < itemCount) { - val start = i - val end = (start + chuckSize).coerceAtMost(itemCount) - executeCallbacksTask(executor) { bindItems(items.subList(start, end), false) } - i = end - } - } - - MAIN_EXECUTOR.execute { clearPendingBinds() } - - val orderedScreenIds = itemIdMap.collectWorkspaceScreens() - val currentScreenIds = getPagesToBindSynchronously(orderedScreenIds) - - fun setupPendingBind(pendingExecutor: Executor) { - executeCallbacksTask(pendingExecutor) { finishBindingItems(currentScreenIds) } - pendingExecutor.execute { - ItemInstallQueue.INSTANCE[launcher].resumeModelPush(FLAG_LOADER_RUNNING) - } - } - - // Separate the items that are on the current screen, and all the other remaining items - val currentWorkspaceItems = ArrayList<ItemInfo>() - val otherWorkspaceItems = ArrayList<ItemInfo>() - val currentAppWidgets = ArrayList<ItemInfo>() - val otherAppWidgets = ArrayList<ItemInfo>() - - val currentScreenCheck = currentScreenContentFilter(currentScreenIds) - itemIdMap.forEach { item: ItemInfo -> - if (currentScreenCheck.test(item)) { - (if (WIDGET_FILTER.test(item)) currentAppWidgets else currentWorkspaceItems).add( - item - ) - } else if (item.container == CONTAINER_DESKTOP) { - (if (WIDGET_FILTER.test(item)) otherAppWidgets else otherWorkspaceItems).add(item) - } - } - - sortWorkspaceItemsSpatially(currentWorkspaceItems) - sortWorkspaceItemsSpatially(otherWorkspaceItems) - - // Tell the workspace that we're about to start binding items - executeCallbacksTask { - clearPendingBinds() - startBinding() - } - - // Bind workspace screens - executeCallbacksTask { bindScreens(orderedScreenIds) } - - // Load items on the current page. - if (Flags.enableWorkspaceInflation()) { - inflateAsyncAndBind(currentWorkspaceItems, MAIN_EXECUTOR) - inflateAsyncAndBind(currentAppWidgets, MAIN_EXECUTOR) - } else { - bindItemsInChunks(currentWorkspaceItems, ITEMS_CHUNK, MAIN_EXECUTOR) - bindItemsInChunks(currentAppWidgets, 1, MAIN_EXECUTOR) - } - - itemIdMap - .mapNotNull { if (it is PredictedContainerInfo) it else null } - .forEach { executeCallbacksTask { launcher.bindPredictedContainerInfo(it) } } - - val pendingTasks = RunnableList() - val pendingExecutor = Executor { pendingTasks.add(it) } - - val onCompleteSignal = RunnableList() - onCompleteSignal.add { Log.d(TAG, "Calling onCompleteSignal") } - - if (Flags.enableWorkspaceInflation()) { - Log.d(TAG, "Starting async inflation") - Executors.MODEL_EXECUTOR.execute { - inflateAsyncAndBind(otherWorkspaceItems, pendingExecutor) - inflateAsyncAndBind(otherAppWidgets, pendingExecutor) - setupPendingBind(pendingExecutor) - - // Wait for the async inflation to complete and then notify the completion - // signal on UI thread. - MAIN_EXECUTOR.execute { onCompleteSignal.executeAllAndDestroy() } - } - } else { - Log.d(TAG, "Starting sync inflation") - bindItemsInChunks(otherWorkspaceItems, ITEMS_CHUNK, pendingExecutor) - bindItemsInChunks(otherAppWidgets, 1, pendingExecutor) - setupPendingBind(pendingExecutor) - onCompleteSignal.executeAllAndDestroy() - } - - // Only include the first level items on desktop (excluding folder contents) for item count - val workspaceItemCount = - currentWorkspaceItems.size + - otherWorkspaceItems.size + - currentAppWidgets.size + - otherAppWidgets.size - executeCallbacksTask { - onInitialBindComplete( - currentScreenIds, - pendingTasks, - onCompleteSignal, - workspaceItemCount, - isBindingSync, - ) - } - } - - /** - * Sorts the set of items by hotseat, workspace (spatially from top to bottom, left to right) - */ - private fun sortWorkspaceItemsSpatially(workspaceItems: MutableList<ItemInfo>) { - val idp = launcher.deviceProfile.inv - val screenCols = idp.numColumns - val screenCellCount = idp.numColumns * idp.numRows - workspaceItems.sortWith { lhs: ItemInfo, rhs: ItemInfo -> - when { - // Between containers, order by hotseat, desktop - lhs.container != rhs.container -> lhs.container.compareTo(rhs.container) - - // Within workspace, order by their spatial position in that container - lhs.container == CONTAINER_DESKTOP -> - compareValuesBy(lhs, rhs) { - it.screenId * screenCellCount + it.cellY * screenCols + it.cellX - } - - // We currently use the screen id as the rank - lhs.container == CONTAINER_HOTSEAT -> lhs.screenId.compareTo(rhs.screenId) - - else -> 0 - } - } - } - - companion object { - private const val TAG = "ModelCallbacks" - private const val ITEMS_CHUNK: Int = 6 // batch size for the workspace icons - } + override fun getItemInflater() = launcher.itemInflater } diff --git a/src/com/android/launcher3/PagedView.java b/src/com/android/launcher3/PagedView.java index 17ffaf573c..fcbb8a7c81 100644 --- a/src/com/android/launcher3/PagedView.java +++ b/src/com/android/launcher3/PagedView.java @@ -790,6 +790,13 @@ public abstract class PagedView<T extends View & PageIndicator> extends ViewGrou } if (mScroller.isFinished() && pageScrollChanged) { + // TODO(b/246283207): Remove logging once root cause of flake detected. + if (Utilities.isRunningInTestHarness() && !(this instanceof Workspace)) { + Log.d("b/246283207", TAG + "#onLayout() -> " + + "if(mScroller.isFinished() && pageScrollChanged) -> getNextPage(): " + + getNextPage() + ", getScrollForPage(getNextPage()): " + + getScrollForPage(getNextPage())); + } setCurrentPage(getNextPage()); } onPageScrollsInitialized(); diff --git a/src/com/android/launcher3/SecondaryDropTarget.java b/src/com/android/launcher3/SecondaryDropTarget.java index cd20acb3d5..f4d3146ed5 100644 --- a/src/com/android/launcher3/SecondaryDropTarget.java +++ b/src/com/android/launcher3/SecondaryDropTarget.java @@ -144,8 +144,8 @@ public class SecondaryDropTarget extends ButtonDropTarget implements OnAlarmList } @Override - public int getSupportedAccessibilityAction(ItemInfo info, View view) { - return getButtonType(info, view); + public boolean supportsAccessibilityDrop(ItemInfo info, View view) { + return getButtonType(info, view) != INVALID; } private int getButtonType(ItemInfo info, View view) { @@ -155,8 +155,10 @@ public class SecondaryDropTarget extends ButtonDropTarget implements OnAlarmList } return INVALID; } else if (info.isPredictedItem()) { - // For predicted apps we show only one drop target "cancel" and no secondary drop target - return INVALID; + if (Flags.enableShortcutDontSuggestApp()) { + return INVALID; + } + return DISMISS_PREDICTION; } Boolean uninstallDisabled = mUninstallDisabledCache.get(info.user); @@ -220,17 +222,17 @@ public class SecondaryDropTarget extends ButtonDropTarget implements OnAlarmList d.dragSource = new DeferredOnComplete(d.dragSource, getContext()); super.onDrop(d, options); - doLog(d.logInstanceId, d.originalDragInfo, mCurrentAccessibilityAction); + doLog(d.logInstanceId, d.originalDragInfo); } - private void doLog(InstanceId logInstanceId, ItemInfo itemInfo, int action) { + private void doLog(InstanceId logInstanceId, ItemInfo itemInfo) { StatsLogger logger = mStatsLogManager.logger().withInstanceId(logInstanceId); if (itemInfo != null) { logger.withItemInfo(itemInfo); } - if (action == UNINSTALL) { + if (mCurrentAccessibilityAction == UNINSTALL) { logger.log(LAUNCHER_ITEM_DROPPED_ON_UNINSTALL); - } else if (action == DISMISS_PREDICTION) { + } else if (mCurrentAccessibilityAction == DISMISS_PREDICTION) { logger.log(LAUNCHER_ITEM_DROPPED_ON_DONT_SUGGEST); } } @@ -270,11 +272,7 @@ public class SecondaryDropTarget extends ButtonDropTarget implements OnAlarmList * the action was not performed. */ protected ComponentName performDropAction(View view, ItemInfo info) { - return performDropAction(view, info, mCurrentAccessibilityAction); - } - - private ComponentName performDropAction(View view, ItemInfo info, int action) { - if (action == RECONFIGURE) { + if (mCurrentAccessibilityAction == RECONFIGURE) { int widgetId = getReconfigurableWidgetId(view); if (widgetId != INVALID_APPWIDGET_ID) { mDropTargetHandler.reconfigureWidget(widgetId, info); @@ -315,9 +313,9 @@ public class SecondaryDropTarget extends ButtonDropTarget implements OnAlarmList } @Override - public void onAccessibilityDrop(View view, ItemInfo item, int action) { - doLog(new InstanceIdSequence().newInstanceId(), item, action); - performDropAction(view, item, action); + public void onAccessibilityDrop(View view, ItemInfo item) { + doLog(new InstanceIdSequence().newInstanceId(), item); + performDropAction(view, item); } /** diff --git a/src/com/android/launcher3/SessionCommitReceiver.java b/src/com/android/launcher3/SessionCommitReceiver.java index ce094670db..c46d92c52b 100644 --- a/src/com/android/launcher3/SessionCommitReceiver.java +++ b/src/com/android/launcher3/SessionCommitReceiver.java @@ -70,11 +70,6 @@ public class SessionCommitReceiver extends BroadcastReceiver { return; } - if (info.getSessionId() == -1) { - FileLog.d(LOG, "Session id for " + info.getAppPackageName() + " is -1"); - return; - } - InstallSessionHelper packageInstallerCompat = InstallSessionHelper.INSTANCE.get(context); boolean alreadyAddedPromiseIcon = packageInstallerCompat.promiseIconAddedForId(info.getSessionId()); diff --git a/src/com/android/launcher3/Utilities.java b/src/com/android/launcher3/Utilities.java index a979dfb811..50ff2c0361 100644 --- a/src/com/android/launcher3/Utilities.java +++ b/src/com/android/launcher3/Utilities.java @@ -16,10 +16,10 @@ package com.android.launcher3; -import static com.android.launcher3.Flags.enableMouseInteractionChanges; +import static com.android.launcher3.BuildConfigs.WIDGET_ON_FIRST_SCREEN; +import static com.android.launcher3.Flags.enableSmartspaceAsAWidget; import static com.android.launcher3.graphics.ShapeDelegate.DEFAULT_PATH_SIZE; import static com.android.launcher3.icons.BitmapInfo.FLAG_THEMED; -import static com.android.launcher3.icons.IconNormalizer.ICON_VISIBLE_AREA_FACTOR; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_BOTTOM_OR_RIGHT; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_POSITION_TOP_OR_LEFT; import static com.android.launcher3.util.SplitConfigurationOptions.STAGE_TYPE_MAIN; @@ -171,13 +171,16 @@ public final class Utilities { * @deprecated Use {@link BuildConfig#IS_DEBUG_DEVICE} directly */ @Deprecated - public static final boolean IS_DEBUG_DEVICE = BuildConfigs.IS_DEBUG_DEVICE; + public static final boolean IS_DEBUG_DEVICE = false; public static final int TRANSLATE_UP = 0; public static final int TRANSLATE_DOWN = 1; public static final int TRANSLATE_LEFT = 2; public static final int TRANSLATE_RIGHT = 3; + public static final boolean SHOULD_SHOW_FIRST_PAGE_WIDGET = + enableSmartspaceAsAWidget() && WIDGET_ON_FIRST_SCREEN; + @IntDef({TRANSLATE_UP, TRANSLATE_DOWN, TRANSLATE_LEFT, TRANSLATE_RIGHT}) public @interface AdjustmentDirection{} @@ -262,7 +265,7 @@ public final class Utilities { public static boolean isPropertyEnabled(String propertyName) { return Log.isLoggable(propertyName, Log.VERBOSE); } - + public static boolean showStyleWallpapers(Context context) { return existsStyleWallpapers(context) || existsStyleWallpapersAlt(context); } @@ -538,25 +541,6 @@ public final class Utilities { return (int) mapRange(interpolator.getInterpolation(progress), toMin, toMax); } - /** - * TODO(b/235886078): workaround needed because of this bug - * Icons are 10% larger on XML than their visual size, so remove that extra space to get - * some dimensions correct. - * - * When this bug is resolved this method will no longer be needed and we would be able to - * replace all instances where this method is called with iconSizePx. - */ - public static int getIconVisibleSizePx(int iconSizePx) { - return Math.round(ICON_VISIBLE_AREA_FACTOR * iconSizePx); - } - - public static int getNormalizedIconDrawablePadding(int iconSizePx, int iconDrawablePadding) { - return Math.max( - 0, - iconDrawablePadding - ((iconSizePx - getIconVisibleSizePx(iconSizePx)) / 2) - ); - } - /** Bounds t between a lower and upper bound and maps the result to a range. */ public static float mapBoundToRange(float t, float lowerBound, float upperBound, float toMin, float toMax, Interpolator interpolator) { @@ -613,11 +597,6 @@ public final class Utilities { return (int) (dp * Resources.getSystem().getDisplayMetrics().density); } - /** Converts a dp value to pixels for the current context. */ - public static int dpToPx(float dp, Context context) { - return (int) (dp * context.getResources().getDisplayMetrics().density); - } - /** Converts a dp value to pixels for a certain density. */ public static int dpToPx(float dp, int densityDpi) { float densityRatio = (float) densityDpi / DisplayMetrics.DENSITY_DEFAULT; @@ -831,12 +810,12 @@ public final class Utilities { IconThemeController themeController = ThemeManager.INSTANCE.get(context).getThemeController(); if (themeController != null) { - result = themeController.createThemedAdaptiveIcon( + AdaptiveIconDrawable themed = themeController.createThemedAdaptiveIcon( context, result, info instanceof ItemInfoWithIcon iiwi ? iiwi.bitmap : null); - if (result == null) { - return null; + if (themed != null) { + result = themed; } } } @@ -969,12 +948,9 @@ public final class Utilities { */ public static List<SplitPositionOption> getSplitPositionOptions( DeviceProfile dp) { - int splitIconRes; - if (dp.isLeftRightSplit) { - splitIconRes = R.drawable.ic_split_horizontal; - } else { - splitIconRes = R.drawable.ic_split_vertical; - } + int splitIconRes = dp.isLeftRightSplit + ? R.drawable.ic_split_horizontal + : R.drawable.ic_split_vertical; int stagePosition = dp.isLeftRightSplit ? STAGE_POSITION_BOTTOM_OR_RIGHT : STAGE_POSITION_TOP_OR_LEFT; @@ -1101,17 +1077,8 @@ public final class Utilities { * <p>Debug devices by default include -eng and -userdebug builds, but not -user builds. */ public static void debugLog(String tag, String message) { - if (BuildConfigs.IS_DEBUG_DEVICE) { + if (false) { Log.d(tag, message); } } - - /** - * Returns whether mouse interaction changes intended for the desktop form factor should be - * enabled. - */ - public static boolean shouldEnableMouseInteractionChanges(Context context) { - return enableMouseInteractionChanges() && context.getResources().getBoolean( - R.bool.desktop_form_factor); - } } diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index 43f53af16a..7c3cfdcf53 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -20,10 +20,8 @@ package com.android.launcher3; import static com.android.launcher3.AbstractFloatingView.TYPE_WIDGET_RESIZE_FRAME; import static com.android.launcher3.BubbleTextView.DISPLAY_FOLDER; +import static com.android.launcher3.Flags.enableSmartspaceRemovalToggle; import static com.android.launcher3.LauncherAnimUtils.SPRING_LOADED_EXIT_DELAY; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APPS_PREDICTION; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT_PREDICTION; import static com.android.launcher3.LauncherState.ALL_APPS; import static com.android.launcher3.LauncherState.EDIT_MODE; @@ -34,6 +32,7 @@ import static com.android.launcher3.LauncherState.HINT_STATE; import static com.android.launcher3.LauncherState.NORMAL; import static com.android.launcher3.LauncherState.SPRING_LOADED; import static com.android.launcher3.MotionEventsUtils.isTrackpadMultiFingerSwipe; +import static com.android.launcher3.Utilities.SHOULD_SHOW_FIRST_PAGE_WIDGET; import static com.android.launcher3.anim.AnimatorListeners.forSuccessCallback; import static com.android.launcher3.config.FeatureFlags.FOLDABLE_SINGLE_PAGE; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_HOME; @@ -67,7 +66,6 @@ import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; -import android.view.ViewParent; import android.view.accessibility.AccessibilityNodeInfo; import android.widget.FrameLayout; import android.widget.Toast; @@ -356,9 +354,10 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> mLauncher = Launcher.getLauncher(context); mStateTransitionAnimation = new WorkspaceStateTransitionAnimation(mLauncher, this); mWallpaperManager = WallpaperManager.getInstance(context); - mAllAppsIconSize = mLauncher.getDeviceProfile().getAllAppsProfile().getIconSizePx(); + mAllAppsIconSize = mLauncher.getDeviceProfile().allAppsIconSizePx; mPreferenceManager2 = PreferenceManager2.getInstance(context); mPreferenceManger = PreferenceManager.getInstance(context); + mWallpaperOffset = new WallpaperOffsetInterpolator(this); setHapticFeedbackEnabled(false); @@ -435,8 +434,7 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> View view = shortcutAndWidgetContainer.getChildAt(j); if (view instanceof LauncherAppWidgetHostView && view.getTag() instanceof LauncherAppWidgetInfo) { - LauncherAppWidgetInfo launcherAppWidgetInfo = - (LauncherAppWidgetInfo) view.getTag(); + LauncherAppWidgetInfo launcherAppWidgetInfo = (LauncherAppWidgetInfo) view.getTag(); WidgetSizes.updateWidgetSizeRanges((LauncherAppWidgetHostView) view, mLauncher, launcherAppWidgetInfo.spanX, launcherAppWidgetInfo.spanY); } @@ -560,7 +558,11 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> } private boolean isTwoPanelEnabled() { - return !FOLDABLE_SINGLE_PAGE.get() && mLauncher.mDeviceProfile.getDeviceProperties().isTwoPanels(); + // pE-TODO(t35AcakE): Foldable support, DC won't report to IDP that deviceType is TYPE_MULTI_DISPLAY + Log.d("LC-WorkspaceTwoPanel", "FOLDABLE_SINGLE_PAGE: " + FOLDABLE_SINGLE_PAGE.get() + ", isTwoPanels: " + mLauncher.mDeviceProfile.isTwoPanels); + Log.d("LC-Workspace", "isTablet: " + mLauncher.mDeviceProfile.isTablet + ", isMultiDisplay: " + mLauncher.mDeviceProfile.isMultiDisplay); + Log.d("LC-Workspace", "IDP is multidisplay?: " + (mLauncher.getDeviceProfile().inv.deviceType == mLauncher.getDeviceProfile().inv.TYPE_MULTI_DISPLAY)); + return !FOLDABLE_SINGLE_PAGE.get() && mLauncher.mDeviceProfile.isTwoPanels; } public void deferRemoveExtraEmptyScreen() { @@ -656,7 +658,9 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> * Initializes and binds the first page */ public void bindAndInitFirstWorkspaceScreen() { - if (!BuildConfigs.QSB_ON_FIRST_SCREEN) { + if ((!FeatureFlags.QSB_ON_FIRST_SCREEN + || !mLauncher.getIsFirstPagePinnedItemEnabled()) + || SHOULD_SHOW_FIRST_PAGE_WIDGET) { mFirstPagePinnedItem = null; return; } @@ -704,7 +708,9 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> mWorkspaceScreens.clear(); // Ensure that the first page is always present - bindAndInitFirstWorkspaceScreen(); + if (!enableSmartspaceRemovalToggle()) { + bindAndInitFirstWorkspaceScreen(); + } // Re-enable the layout transitions enableLayoutTransitions(); @@ -734,7 +740,7 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> // created CellLayout. DeviceProfile dp = mLauncher.getDeviceProfile(); CellLayout newScreen; - if (FOLDABLE_SINGLE_PAGE.get() && dp.getDeviceProperties().isTwoPanels()) { + if (FOLDABLE_SINGLE_PAGE.get() && dp.isTwoPanels) { newScreen = (CellLayout) LayoutInflater.from(getContext()).inflate( R.layout.workspace_screen_foldable, this, false /* attachToRoot */); } else { @@ -867,6 +873,12 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> for (int i = 0; i < finalScreens.size(); i++) { int screenId = finalScreens.keyAt(i); + // We don't want to remove the first screen even if it's empty because that's where + // first page pinned item would go if it gets turned back on. + if (enableSmartspaceRemovalToggle() && screenId == FIRST_SCREEN_ID) { + continue; + } + CellLayout screen = finalScreens.get(screenId); mWorkspaceScreens.remove(screenId); @@ -1094,7 +1106,9 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> int id = mWorkspaceScreens.keyAt(i); CellLayout cl = mWorkspaceScreens.valueAt(i); // FIRST_SCREEN_ID can never be removed. - if ((!BuildConfigs.QSB_ON_FIRST_SCREEN || id > FIRST_SCREEN_ID) + if (((!FeatureFlags.QSB_ON_FIRST_SCREEN + || SHOULD_SHOW_FIRST_PAGE_WIDGET) + || id > FIRST_SCREEN_ID) && cl.getShortcutsAndWidgets().getChildCount() == 0) { removeScreens.add(id); } @@ -2163,7 +2177,9 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> // Move internally boolean hasMovedLayouts = (getParentCellLayoutForView(cell) != dropTargetLayout); boolean hasMovedIntoHotseat = mLauncher.isHotseatLayout(dropTargetLayout); - int container = hasMovedIntoHotseat ? CONTAINER_HOTSEAT : CONTAINER_DESKTOP; + int container = hasMovedIntoHotseat ? + LauncherSettings.Favorites.CONTAINER_HOTSEAT : + LauncherSettings.Favorites.CONTAINER_DESKTOP; int screenId = (mTargetCell[0] < 0) ? mDragInfo.screenId : getCellLayoutId(dropTargetLayout); int spanX = mDragInfo != null ? mDragInfo.spanX : 1; @@ -2266,8 +2282,8 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> lp.cellVSpan = item.spanY; lp.isLockedToGrid = true; - if (container != CONTAINER_HOTSEAT - && cell instanceof LauncherAppWidgetHostView) { + if (container != LauncherSettings.Favorites.CONTAINER_HOTSEAT && + cell instanceof LauncherAppWidgetHostView) { // We post this call so that the widget has a chance to be placed // in its final location @@ -2923,15 +2939,11 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> * to add an item to one of the workspace screens. */ private void onDropExternal(final int[] touchXY, final CellLayout cellLayout, DragObject d) { - final int container = mLauncher.isHotseatLayout(cellLayout) - ? CONTAINER_HOTSEAT - : CONTAINER_DESKTOP; if (d.dragInfo instanceof PendingAddShortcutInfo) { WorkspaceItemInfo si = ((PendingAddShortcutInfo) d.dragInfo) .getActivityInfo(mLauncher).createWorkspaceItemInfo(); if (si != null) { d.dragInfo = si; - si.container = container; } } @@ -2942,6 +2954,10 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> spanX = mDragInfo.spanX; spanY = mDragInfo.spanY; } + + final int container = mLauncher.isHotseatLayout(cellLayout) + ? LauncherSettings.Favorites.CONTAINER_HOTSEAT + : LauncherSettings.Favorites.CONTAINER_DESKTOP; final int screenId = getCellLayoutId(cellLayout); if (!mLauncher.isHotseatLayout(cellLayout) && screenId != getScreenIdForPageIndex(mCurrentPage) @@ -3024,9 +3040,8 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> } else { // This is for other drag/drop cases, like dragging from All Apps mLauncher.getStateManager().goToState(NORMAL, SPRING_LOADED_EXIT_DELAY); - // TODO(b/414409465) We could just create a new info making a copy with all the new - // needed values instead of choosing on each case what to modify. - View view = mLauncher.getItemInflater().inflateItem(info, cellLayout, container); + View view = mLauncher.getItemInflater() + .inflateItem(info, mLauncher.getModelWriter(), cellLayout); d.dragInfo = info = (ItemInfo) view.getTag(); // First we find the cell nearest to point at which the item is @@ -3427,10 +3442,8 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> * Removes items that match the {@param matcher}. When applications are removed * as a part of an update, this is called to ensure that other widgets and application * shortcuts are not removed. - * - * @param persistChanges if true, any dependent changes will be persisted to the DB */ - public void removeItemsByMatcher(final Predicate<ItemInfo> matcher, boolean persistChanges) { + public void removeItemsByMatcher(final Predicate<ItemInfo> matcher) { for (CellLayout layout : getWorkspaceAndHotseatCellLayouts()) { ShortcutAndWidgetContainer container = layout.getShortcutsAndWidgets(); // Iterate in reverse order as we are removing items @@ -3457,39 +3470,14 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> } else if (info instanceof AppPairInfo api) { // If an app pair's member apps are being removed, delete the whole app pair. if (api.anyMatch(matcher)) { - mLauncher.removeItem(child, info, persistChanges); + mLauncher.removeItem(child, info, true); } } } } - if (persistChanges) { - stripEmptyScreens(); - } - } - - @Nullable - @Override - public CellInfo getCellInfoForView(@NonNull View view) { - ViewParent parent = view.getParent(); - if (parent != null - && parent.getParent() instanceof CellLayout cl - && view.getLayoutParams() instanceof CellLayoutLayoutParams lp) { - int container = mLauncher.isHotseatLayout(cl) ? CONTAINER_HOTSEAT : CONTAINER_DESKTOP; - CellPos pos = getCellPosMapper().mapPresenterToModel( - lp.getCellX(), lp.getCellY(), getCellLayoutId(cl), container); - return new CellInfo(view, - pos.screenId, container, pos.cellX, pos.cellY, lp.cellHSpan, lp.cellVSpan); - } - return null; - } - - @Override - public boolean isContainerSupported(int container) { - return container == CONTAINER_DESKTOP - || container == CONTAINER_HOTSEAT - || container == CONTAINER_ALL_APPS_PREDICTION - || container == CONTAINER_HOTSEAT_PREDICTION; + // Strip all the empty screens + stripEmptyScreens(); } @Override @@ -3526,7 +3514,7 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> public void persistRemoveItemsByMatcher(Predicate<ItemInfo> matcher, @Nullable final String reason) { mLauncher.getModelWriter().deleteItemsFromDatabase(matcher, reason); - removeItemsByMatcher(matcher, true); + removeItemsByMatcher(matcher); } public boolean isOverlayShown() { @@ -3562,13 +3550,13 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> @Override public int getExpectedHeight() { return getMeasuredHeight() <= 0 || !mIsLayoutValid - ? mLauncher.getDeviceProfile().getDeviceProperties().getHeightPx() : getMeasuredHeight(); + ? mLauncher.getDeviceProfile().heightPx : getMeasuredHeight(); } @Override public int getExpectedWidth() { return getMeasuredWidth() <= 0 || !mIsLayoutValid - ? mLauncher.getDeviceProfile().getDeviceProperties().getWidthPx() : getMeasuredWidth(); + ? mLauncher.getDeviceProfile().widthPx : getMeasuredWidth(); } @Override @@ -3634,12 +3622,12 @@ public class Workspace<T extends View & PageIndicator> extends PagedView<T> @Override protected boolean isSignificantMove(float absoluteDelta, int pageOrientedSize) { DeviceProfile deviceProfile = mLauncher.getDeviceProfile(); - if (!deviceProfile.getDeviceProperties().isTablet()) { + if (!deviceProfile.isTablet) { return super.isSignificantMove(absoluteDelta, pageOrientedSize); } return absoluteDelta - > deviceProfile.getDeviceProperties().getAvailableWidthPx() * SIGNIFICANT_MOVE_SCREEN_WIDTH_PERCENTAGE; + > deviceProfile.availableWidthPx * SIGNIFICANT_MOVE_SCREEN_WIDTH_PERCENTAGE; } @Override diff --git a/src/com/android/launcher3/WorkspaceLayoutManager.java b/src/com/android/launcher3/WorkspaceLayoutManager.java index 9a327f96e3..7ad440a3df 100644 --- a/src/com/android/launcher3/WorkspaceLayoutManager.java +++ b/src/com/android/launcher3/WorkspaceLayoutManager.java @@ -42,6 +42,8 @@ public interface WorkspaceLayoutManager { // The is the first screen. It is always present, even if its empty. int FIRST_SCREEN_ID = 0; + // This is the second page. On two panel home it is always present, even if its empty. + int SECOND_SCREEN_ID = 1; /** * At bind time, we use the rank (screenId) to compute x and y for hotseat items. diff --git a/src/com/android/launcher3/WorkspaceStateTransitionAnimation.java b/src/com/android/launcher3/WorkspaceStateTransitionAnimation.java index 4043283c1e..2315111b3b 100644 --- a/src/com/android/launcher3/WorkspaceStateTransitionAnimation.java +++ b/src/com/android/launcher3/WorkspaceStateTransitionAnimation.java @@ -207,7 +207,7 @@ public class WorkspaceStateTransitionAnimation { propertySetter.setFloat(sysUiScrim.getSysUIProgress(), AnimatedFloat.VALUE, state.hasFlag(FLAG_HAS_SYS_UI_SCRIM) ? 1 : 0, LINEAR); - propertySetter.setScrimColors(mLauncher.getScrimView(), + propertySetter.setViewBackgroundColor(mLauncher.getScrimView(), state.getWorkspaceScrimColor(mLauncher), config.getInterpolator(ANIM_SCRIM_FADE, ACCELERATE_2)); } diff --git a/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java b/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java index fd596bd62f..df34ccf090 100644 --- a/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java +++ b/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java @@ -122,12 +122,9 @@ public class LauncherAccessibilityDelegate extends BaseAccessibilityDelegate<Lau out.add(mActions.get(DEEP_SHORTCUTS)); } - // Get all visible / non-visible drop targets so we can provide them as quick actions for - // users of accessibility services. for (ButtonDropTarget target : mContext.getDropTargetBar().getDropTargets()) { - int dropTargetAction = target.getSupportedAccessibilityAction(item, host); - if (dropTargetAction != INVALID) { - out.add(mActions.get(dropTargetAction)); + if (target.supportsAccessibilityDrop(item, host)) { + out.add(mActions.get(target.getAccessibilityAction())); } } @@ -232,9 +229,9 @@ public class LauncherAccessibilityDelegate extends BaseAccessibilityDelegate<Lau } } else { for (ButtonDropTarget dropTarget : mContext.getDropTargetBar().getDropTargets()) { - int dropTargetAction = dropTarget.getSupportedAccessibilityAction(item, host); - if (action == dropTargetAction) { - dropTarget.onAccessibilityDrop(host, item, action); + if (dropTarget.supportsAccessibilityDrop(item, host) + && action == dropTarget.getAccessibilityAction()) { + dropTarget.onAccessibilityDrop(host, item); return true; } } @@ -493,7 +490,7 @@ public class LauncherAccessibilityDelegate extends BaseAccessibilityDelegate<Lau private void bindItem(ItemInfo item, boolean focusForAccessibility, @Nullable Consumer<Boolean> finishCallback) { - View view = mContext.getItemInflater().inflateItem(item); + View view = mContext.getItemInflater().inflateItem(item, mContext.getModelWriter()); if (view == null) { if (finishCallback != null) { finishCallback.accept(false /*success*/); @@ -536,7 +533,7 @@ public class LauncherAccessibilityDelegate extends BaseAccessibilityDelegate<Lau // Bind the item in next frame so that if a new workspace page was created, // it will get laid out. new Handler().post(() -> { - mContext.inflateAndBindItemWithAnimation(item); + mContext.bindItems(Collections.singletonList(item), true); announceConfirmation(R.string.item_moved); }); return true; diff --git a/src/com/android/launcher3/accessibility/ShortcutMenuAccessibilityDelegate.java b/src/com/android/launcher3/accessibility/ShortcutMenuAccessibilityDelegate.java index f71d5055f7..c91e78341f 100644 --- a/src/com/android/launcher3/accessibility/ShortcutMenuAccessibilityDelegate.java +++ b/src/com/android/launcher3/accessibility/ShortcutMenuAccessibilityDelegate.java @@ -28,6 +28,7 @@ import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.shortcuts.DeepShortcutView; +import java.util.Collections; import java.util.List; /** @@ -63,7 +64,7 @@ public class ShortcutMenuAccessibilityDelegate extends LauncherAccessibilityDele mContext.getModelWriter().addItemToDatabase(info, LauncherSettings.Favorites.CONTAINER_DESKTOP, screenId, coordinates[0], coordinates[1]); - mContext.inflateAndBindItemWithAnimation(info); + mContext.bindItems(Collections.singletonList(info), true); AbstractFloatingView.closeAllOpenViews(mContext); })); return true; diff --git a/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java b/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java index 0bc36e40e0..f05d47ba29 100644 --- a/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java +++ b/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java @@ -28,7 +28,7 @@ import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCH import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.ScrollableLayoutManager.PREDICTIVE_BACK_MIN_SCALE; import static com.android.launcher3.views.RecyclerViewFastScroller.FastScrollerLocation.ALL_APPS_SCROLLER; -import static com.android.window.flags2.Flags.predictiveBackThreeButtonNav; +import static com.android.window.flags.Flags.predictiveBackThreeButtonNav; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; @@ -66,7 +66,6 @@ import androidx.annotation.Px; import androidx.annotation.VisibleForTesting; import androidx.constraintlayout.widget.ConstraintLayout; import androidx.core.graphics.ColorUtils; -import androidx.core.util.Consumer; import androidx.recyclerview.widget.RecyclerView; import com.android.launcher3.DeviceProfile; @@ -187,15 +186,13 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> public SearchRecyclerView mSearchRecyclerView; protected SearchAdapterProvider<?> mMainAdapterProvider; private View mBottomSheetHandleArea; - private View mBottomSheetHandle; private boolean mHasWorkApps; private boolean mHasPrivateApps; private float[] mBottomSheetCornerRadii; private ScrimView mScrimView; private int mHeaderColor; - private int mBottomSheetBackgroundColorBlurFallback; - private int mBottomSheetBackgroundColorOverBlur; - private int mBottomSheetBackgroundColorLegacy; + private int mBottomSheetBackgroundColor; + private float mBottomSheetBackgroundAlpha = 1f; private int mTabsProtectionAlpha; @Nullable private AllAppsTransitionController mAllAppsTransitionController; @@ -293,7 +290,6 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> mAdditionalHeaderRows.addAll(getAdditionalHeaderRows()); mBottomSheetBackground = findViewById(R.id.bottom_sheet_background); mBottomSheetHandleArea = findViewById(R.id.bottom_sheet_handle_area); - mBottomSheetHandle = findViewById(R.id.bottom_sheet_handle); mSearchRecyclerView = findViewById(R.id.search_results_list_view); mFastScroller = findViewById(R.id.fast_scroller); mFastScroller.setPopupView(findViewById(R.id.fast_scroller_popup)); @@ -336,19 +332,19 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> 0, 0 // Bottom left }; - if (Flags.allAppsBlur()) { - // pE-TODO(QPR1): Return int color value directly, not a resource ID for custom colours - int layerFg = getContext().getColor(R.color.blur_shade_panel_fg); - int layerBg = getContext().getColor(R.color.blur_shade_panel_bg); - mBottomSheetBackgroundColorOverBlur = ColorUtils.compositeColors(layerFg, layerBg); - mBottomSheetBackgroundColorBlurFallback = getContext().getColor( - Utilities.isDarkTheme(getContext()) ? android.R.color.system_accent2_800 - : android.R.color.system_accent2_200); + // Lawnchair-TODO-Colour: ExpressiveAllApps + // int resId = ColorTokens.ExpressiveAllApps.resolveColor(getContext()); + int resId = Utilities.isDarkTheme(getContext()) + ? android.R.color.system_accent1_800 : android.R.color.system_accent1_100; + int layerAbove = ColorUtils.setAlphaComponent(getResources().getColor(resId, null), + (int) (0.4f * 255)); + int layerBelow = ColorUtils.setAlphaComponent(Color.WHITE, (int) (0.1f * 255)); + mBottomSheetBackgroundColor = ColorUtils.compositeColors(layerAbove, layerBelow); + } else { + mBottomSheetBackgroundColor = ColorTokens.SurfaceDimColor.resolveColor(getContext()); } - - mBottomSheetBackgroundColorLegacy = ColorTokens.SurfaceDimColor.resolveColor(getContext()); - + mBottomSheetBackgroundAlpha = Color.alpha(mBottomSheetBackgroundColor) / 255.0f; updateBackgroundVisibility(mActivityContext.getDeviceProfile()); mSearchUiManager.initializeSearch(this); } @@ -457,21 +453,10 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> public boolean shouldContainerScroll(MotionEvent ev) { BaseDragLayer dragLayer = mActivityContext.getDragLayer(); - // If the MotionEvent is inside the search box, and the container keeps on receiving touch - // input, container should move down. - if (dragLayer.isEventOverView(mSearchContainer, ev)) { - // If the touch was on the edit text, container should move down ONLY when edit text is - // already at the top. - View editText = mSearchUiManager.getEditText(); - if (editText != null && dragLayer.isEventOverView(editText, ev)) { - boolean canScrollUp = editText.canScrollVertically(-1); - return !canScrollUp; - } - return true; - } - // If the MotionEvent is inside the handle area, and the container keeps on receiving touch - // input, container should move down. - if (dragLayer.isEventOverView(mBottomSheetHandleArea, ev)) { + // IF the MotionEvent is inside the search box or handle area, and the container keeps on + // receiving touch input, container should move down. + if (dragLayer.isEventOverView(mSearchContainer, ev) + || dragLayer.isEventOverView(mBottomSheetHandleArea, ev)) { return true; } AllAppsRecyclerView rv = getActiveRecyclerView(); @@ -555,7 +540,7 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> getActiveAppsRecyclerView(), getPersonalAppList().getAdapterItems(), mPrivateProfileManager.getPsHeaderHeight(), - mActivityContext.getDeviceProfile().getAllAppsProfile().getCellHeightPx()); + mActivityContext.getDeviceProfile().allAppsCellHeightPx); } }); } @@ -590,13 +575,6 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> return mIsSearching; } - /** - * @return {@code true} if back gesture should exit search rather than change launcher state. - */ - public boolean shouldBackExitSearch() { - return isSearching(); - } - @Override public void onActivePageChanged(int currentActivePage) { if (mSearchTransitionController.isRunning()) { @@ -810,14 +788,6 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> } } - /** - * Force header height update with an offset. Used by {@link UniversalSearchInputView} to - * request {@link FloatingHeaderView} to update its maxTranslation for multiline search bar. - */ - public void forceUpdateHeaderHeight(int offset) { - mHeader.updateSearchBarOffset(offset); - } - @Override public void addChildrenForAccessibility(ArrayList<View> arrayList) { super.addChildrenForAccessibility(arrayList); @@ -837,8 +807,8 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> protected void updateHeaderScroll(int scrolledOffset) { if (PreferenceExtensionsKt.firstBlocking(pref2.getHideAppDrawerSearchBar())) return; - float prog = Utilities.boundToRange((float) scrolledOffset / mHeaderThreshold, 0f, 1f); - int headerColor = getHeaderColor(prog); + float prog1 = Utilities.boundToRange((float) scrolledOffset / mHeaderThreshold, 0f, 1f); + int headerColor = getHeaderColor(prog1); int tabsAlpha = mHeader.getPeripheralProtectionHeight(/* expectedHeight */ false) == 0 ? 0 : (int) (Utilities.boundToRange( (scrolledOffset + mHeader.mSnappedScrolledY) / mHeaderThreshold, 0f, 1f) @@ -852,6 +822,7 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> return; } + float prog = Utilities.boundToRange((float) scrolledOffset / mHeaderThreshold, 0f, 1f); boolean bgVisible = mSearchUiManager.getBackgroundVisibility(); if (scrolledOffset == 0 && !isSearching()) { bgVisible = true; @@ -862,46 +833,15 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> } protected int getHeaderColor(float blendRatio) { - float opacity = 0.0f; - var showHeaderBackground = PreferenceExtensionsKt.firstBlocking( - pref2.getAppDrawerSearchBarBackground()); - if (showHeaderBackground) { - opacity = pref.getDrawerOpacity().get(); - } - + var opacity = pref.getDrawerOpacity().get(); var colorOptions = PreferenceExtensionsKt.firstBlocking(pref2.getAppDrawerBackgroundColor()); var color = colorOptions.getColorPreferenceEntry().getLightColor().invoke(mActivityContext); if (color != 0) { mScrimColor = color; } - if (!mActivityContext.getDeviceProfile().shouldShowAllAppsOnSheet()) { - return ColorUtils.setAlphaComponent( - ColorUtils.blendARGB(mScrimColor, mHeaderProtectionColor, blendRatio), - (int) (opacity * 255)); - } - return isBackgroundBlurEnabled() - ? ColorUtils.setAlphaComponent(mHeaderProtectionColor, (int) (blendRatio * 255)) - : ColorUtils.blendARGB(getBackgroundColor(), mHeaderProtectionColor, blendRatio); - } - - private int getBackgroundColor() { - return mActivityContext.getDeviceProfile().shouldShowAllAppsOnSheet() - ? getBottomSheetBackgroundColor() : mScrimColor; - } - - int getBottomSheetBackgroundColor() { - if (!Flags.allAppsBlur()) { - return mBottomSheetBackgroundColorLegacy; - } - if (!mActivityContext.isAllAppsBackgroundBlurEnabled()) { - // Don't apply any alpha if the blur is disabled. - return mBottomSheetBackgroundColorBlurFallback; - } - return mBottomSheetBackgroundColorOverBlur; - } - - boolean isBackgroundBlurEnabled() { - return Flags.allAppsBlur() && mActivityContext.isAllAppsBackgroundBlurEnabled(); + return ColorUtils.setAlphaComponent( + ColorUtils.blendARGB(mScrimColor, mHeaderProtectionColor, blendRatio), + (int) (mSearchContainer.getAlpha() * 255)); } /** @@ -1190,16 +1130,6 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> return getActiveAppsRecyclerView(); } - /** Run some code on all the recycler views. */ - protected void forAllRecyclerViews(Consumer<AllAppsRecyclerView> consumer) { - for (AdapterHolder holder : mAH) { - if (holder.mRecyclerView == null) { - continue; - } - consumer.accept(holder.mRecyclerView); - } - } - /** The current focus change listener in the search container. */ public OnFocusChangeListener getSearchFocusChangeListener() { return mAH.get(AdapterHolder.SEARCH).mOnFocusChangeListener; @@ -1256,8 +1186,8 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> applyAdapterSideAndBottomPaddings(grid); MarginLayoutParams mlp = (MarginLayoutParams) getLayoutParams(); - // Ignore left/right insets on tablet because we are already centered in-screen. - if (grid.getDeviceProperties().isTablet()) { + // Ignore left/right insets on bottom sheet because we are already centered in-screen. + if (grid.shouldShowAllAppsOnSheet()) { mlp.leftMargin = mlp.rightMargin = 0; } else { mlp.leftMargin = insets.left; @@ -1490,18 +1420,6 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> } } - /** - * Set {@link Animator.AnimatorListener} on {@link mAllAppsTransitionController} to observe - * animation of backing out of all apps search view to all apps view. - */ - public void setAllAppsSearchBackAnimatorListener(Animator.AnimatorListener listener) { - Preconditions.assertNotNull(mAllAppsTransitionController); - if (mAllAppsTransitionController == null) { - return; - } - mAllAppsTransitionController.setAllAppsSearchBackAnimationListener(listener); - } - public void setScrimView(ScrimView scrimView) { mScrimView = scrimView; } @@ -1515,21 +1433,16 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> final float horizontalScaleOffset = (1 - scale) * panel.getWidth() / 2; final float verticalScaleOffset = (1 - scale) * (panel.getHeight() - getHeight() / 2); - // Left and right insets can be applied to this container, as well as the panel. - float left = getLeft() + panel.getLeft(); - float right = left + panel.getWidth(); final float topNoScale = panel.getTop() + translationY; final float topWithScale = topNoScale + verticalScaleOffset; - final float leftWithScale = left + horizontalScaleOffset; - final float rightWithScale = right - horizontalScaleOffset; + final float leftWithScale = panel.getLeft() + horizontalScaleOffset; + final float rightWithScale = panel.getRight() - horizontalScaleOffset; final float bottomWithOffset = panel.getBottom() + bottomOffsetPx; - // Draw full background panel if presenting on a sheet. - int bottomSheetBackgroundColor = getBottomSheetBackgroundColor(); - float bottomSheetBackgroundAlpha = Color.alpha(bottomSheetBackgroundColor) / 255.0f; + // Draw full background panel for tablets. if (hasBottomSheet) { - mHeaderPaint.setColor(bottomSheetBackgroundColor); - mHeaderPaint.setAlpha((int) (bottomSheetBackgroundAlpha * 255)); + mHeaderPaint.setColor(mBottomSheetBackgroundColor); + mHeaderPaint.setAlpha((int) (mBottomSheetBackgroundAlpha * 255)); mTmpRectF.set( leftWithScale, @@ -1539,12 +1452,6 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> mTmpPath.reset(); mTmpPath.addRoundRect(mTmpRectF, mBottomSheetCornerRadii, Direction.CW); canvas.drawPath(mTmpPath, mHeaderPaint); - - // When the background panel is blurred (or fallback), we don't add header protection. - // TODO (b/414671116): Apply header protection whenever search bar is focused. - if (Flags.allAppsBlur()) { - return; - } } if (DEBUG_HEADER_PROTECTION) { @@ -1554,16 +1461,12 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> mHeaderPaint.setColor(mHeaderColor); mHeaderPaint.setAlpha((int) (getAlpha() * Color.alpha(mHeaderColor))); } - - // If header is not visible or only differs from the background with alpha, don't draw it. - int headerWithoutAlpha = ColorUtils.setAlphaComponent(mHeaderPaint.getColor(), 0); - int backgroundWithoutAlpha = ColorUtils.setAlphaComponent(getBackgroundColor(), 0); - if (headerWithoutAlpha == backgroundWithoutAlpha || mHeaderPaint.getColor() == 0) { + if (mHeaderPaint.getColor() == mScrimColor || mHeaderPaint.getColor() == 0) { return; } if (hasBottomSheet) { - mHeaderPaint.setAlpha((int) (mHeaderPaint.getAlpha() * bottomSheetBackgroundAlpha)); + mHeaderPaint.setAlpha((int) (mHeaderPaint.getAlpha() * mBottomSheetBackgroundAlpha)); } // Draw header on background panel @@ -1599,15 +1502,15 @@ public class ActivityAllAppsContainerView<T extends Context & ActivityContext> } else { float tabAlpha = getAlpha() * mTabsProtectionAlpha; if (hasBottomSheet) { - tabAlpha *= bottomSheetBackgroundAlpha; + tabAlpha *= mBottomSheetBackgroundAlpha; } mHeaderPaint.setAlpha((int) tabAlpha); } - left = 0f; - right = canvas.getWidth(); + float left = 0f; + float right = canvas.getWidth(); if (hasBottomSheet) { - left = leftWithScale; - right = rightWithScale; + left = mBottomSheetBackground.getLeft() + horizontalScaleOffset; + right = mBottomSheetBackground.getRight() - horizontalScaleOffset; } final float tabTopWithScale = hasBottomSheet diff --git a/src/com/android/launcher3/allapps/AllAppsStore.java b/src/com/android/launcher3/allapps/AllAppsStore.java index e9b59dfbc1..564719e95a 100644 --- a/src/com/android/launcher3/allapps/AllAppsStore.java +++ b/src/com/android/launcher3/allapps/AllAppsStore.java @@ -84,7 +84,8 @@ public class AllAppsStore<T extends Context & ActivityContext> { } /** - * Calling {@link #setApps(AppInfo[], int, Map, boolean)} with shouldPreinflate set to + * Calling {@link #setApps(AppInfo[], int, Map, boolean)} with shouldPreinflate + * set to * {@code true}. This method should be called in launcher (not for taskbar). */ public void setApps(@Nullable AppInfo[] apps, int flags, Map<PackageUserKey, Integer> map) { @@ -92,13 +93,19 @@ public class AllAppsStore<T extends Context & ActivityContext> { } /** - * Sets the current set of apps and sets mapping for {@link PackageUserKey} to Uid for + * Sets the current set of apps and sets mapping for {@link PackageUserKey} to + * Uid for * the current set of apps. * - * <p> Note that shouldPreinflate param should be set to {@code false} for taskbar, because - * this method is too late to preinflate all apps, as user will open all apps in the frame + * <p> + * Note that shouldPreinflate param should be set to {@code false} for taskbar, + * because + * this method is too late to preinflate all apps, as user will open all apps in + * the frame * - * <p>Param: apps are required to be sorted using the comparator COMPONENT_KEY_COMPARATOR + * <p> + * Param: apps are required to be sorted using the comparator + * COMPONENT_KEY_COMPARATOR * in order to enable binary search on the mApps store */ public void setApps(@Nullable AppInfo[] apps, int flags, Map<PackageUserKey, Integer> map, @@ -108,7 +115,8 @@ public class AllAppsStore<T extends Context & ActivityContext> { mModelFlags = flags; notifyUpdate(); mPackageUserKeytoUidMap = map; - // Preinflate all apps RV when apps has changed, which can happen after unlocking screen, + // Preinflate all apps RV when apps has changed, which can happen after + // unlocking screen, // rotating screen, or downloading/upgrading apps. if (shouldPreinflate) { mAllAppsRecyclerViewPool.preInflateAllAppsViewHolders(mContext); @@ -120,25 +128,28 @@ public class AllAppsStore<T extends Context & ActivityContext> { } /** - * Look up for Uid using package name and user handle for the current set of apps. + * Look up for Uid using package name and user handle for the current set of + * apps. */ public int lookUpForUid(String packageName, UserHandle user) { return mPackageUserKeytoUidMap.getOrDefault(new PackageUserKey(packageName, user), -1); } /** - * @see com.android.launcher3.model.data.AppsListData#FLAG_QUIET_MODE_ENABLED - * @see com.android.launcher3.model.data.AppsListData#FLAG_HAS_SHORTCUT_PERMISSION - * @see com.android.launcher3.model.data.AppsListData#FLAG_QUIET_MODE_CHANGE_PERMISSION - * @see com.android.launcher3.model.data.AppsListData#FLAG_WORK_PROFILE_QUIET_MODE_ENABLED - * @see com.android.launcher3.model.data.AppsListData#FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED + * @see com.android.launcher3.model.BgDataModel.Callbacks#FLAG_QUIET_MODE_ENABLED + * @see com.android.launcher3.model.BgDataModel.Callbacks#FLAG_HAS_SHORTCUT_PERMISSION + * @see com.android.launcher3.model.BgDataModel.Callbacks#FLAG_QUIET_MODE_CHANGE_PERMISSION + * @see com.android.launcher3.model.BgDataModel.Callbacks#FLAG_WORK_PROFILE_QUIET_MODE_ENABLED + * @see + * com.android.launcher3.model.BgDataModel.Callbacks#FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED */ public boolean hasModelFlag(int mask) { return (mModelFlags & mask) != 0; } /** - * Returns {@link AppInfo} if any apps matches with provided {@link ComponentKey}, otherwise + * Returns {@link AppInfo} if any apps matches with provided + * {@link ComponentKey}, otherwise * null. * * Uses {@link AppInfo#COMPONENT_KEY_COMPARATOR} as a default comparator. @@ -149,7 +160,8 @@ public class AllAppsStore<T extends Context & ActivityContext> { } /** - * Generic version of {@link #getApp(ComponentKey)} that allows comparator to be specified. + * Generic version of {@link #getApp(ComponentKey)} that allows comparator to be + * specified. */ @Nullable public AppInfo getApp(ComponentKey key, Comparator<AppInfo> comparator) { @@ -228,8 +240,10 @@ public class AllAppsStore<T extends Context & ActivityContext> { /** * Sets the AppInfo's associated icon's progress bar. * - * If this app is installed and supports incremental downloads, the progress bar will be updated - * the app's total download progress. Otherwise, the progress bar will be updated to the app's + * If this app is installed and supports incremental downloads, the progress bar + * will be updated + * the app's total download progress. Otherwise, the progress bar will be + * updated to the app's * installation progress. * * If this app is fully downloaded, the app icon will be reapplied. @@ -260,7 +274,9 @@ public class AllAppsStore<T extends Context & ActivityContext> { void onAppsUpdated(); } - /** Generate a dumpsys for each app package name and position in the apps list */ + /** + * Generate a dumpsys for each app package name and position in the apps list + */ public void dump(String prefix, PrintWriter writer) { writer.println(prefix + "\tAllAppsStore Apps[] size: " + mApps.length); for (int i = 0; i < mApps.length; i++) { diff --git a/src/com/android/launcher3/allapps/AllAppsTransitionController.java b/src/com/android/launcher3/allapps/AllAppsTransitionController.java index 2e50bb2618..350f763939 100644 --- a/src/com/android/launcher3/allapps/AllAppsTransitionController.java +++ b/src/com/android/launcher3/allapps/AllAppsTransitionController.java @@ -187,8 +187,6 @@ public class AllAppsTransitionController private boolean mHasScaleEffect; private final MSDLPlayerWrapper mMSDLPlayerWrapper; - // Indicates whether this transition should scale the allapps header in addition to its content. - private boolean mShouldScaleHeader; public AllAppsTransitionController(Launcher l) { mLauncher = l; @@ -235,7 +233,7 @@ public class AllAppsTransitionController boolean fromBackground = mLauncher.getStateManager().getCurrentStableState() == BACKGROUND_APP; // Allow apps panel to shift the full screen if coming from another app. - float shiftRange = fromBackground ? mLauncher.getDeviceProfile().getDeviceProperties().getHeightPx() : mShiftRange; + float shiftRange = fromBackground ? mLauncher.getDeviceProfile().heightPx : mShiftRange; getAppsViewProgressTranslationY().setValue(mProgress * shiftRange); mLauncher.onAllAppsTransition(1 - progress); @@ -275,11 +273,6 @@ public class AllAppsTransitionController setAlphas(state, new StateAnimationConfig(), NO_ANIM_PROPERTY_SETTER); } - @Override - public void onBackStarted(LauncherState toState) { - setShouldScaleHeader(!mLauncher.getAppsView().shouldBackExitSearch()); - } - @Override public void onBackProgressed( LauncherState toState, @FloatRange(from = 0.0, to = 1.0) float backProgress) { @@ -297,8 +290,8 @@ public class AllAppsTransitionController private void onScaleProgressChanged() { final float scaleProgress = mAllAppScale.value; SCALE_PROPERTY.set(mLauncher.getAppsView(), scaleProgress); - - if (mShouldScaleHeader || !mShouldShowAllAppsOnSheet) { + if (!mLauncher.getAppsView().isSearching() + || !mLauncher.getDeviceProfile().shouldShowAllAppsOnSheet()) { mLauncher.getScrimView().setScrimHeaderScale(scaleProgress); } @@ -320,21 +313,6 @@ public class AllAppsTransitionController } } - /** - * @return AnimatedFloat for all apps scale. This will scale the allapps content by default. - * @see #setShouldScaleHeader(boolean) - */ - public AnimatedFloat getAllAppScale() { - return mAllAppScale; - } - - /** - * Specify whether this transition should scale the allapps header in addition to its content. - */ - public void setShouldScaleHeader(boolean shouldScaleHeader) { - mShouldScaleHeader = shouldScaleHeader; - } - /** Set {@link Animator.AnimatorListener} for scaling all apps scale to 1 animation. */ public void setAllAppsSearchBackAnimationListener(Animator.AnimatorListener listener) { mAllAppsSearchBackAnimationListener = listener; @@ -346,7 +324,7 @@ public class AllAppsTransitionController */ public void animateAllAppsToNoScale() { if (mAllAppScale.isAnimating()) { - mAllAppScale.cancelAnimation(); + return; } Animator animator = mAllAppScale.animateToValue(1f) .setDuration(REVERT_SWIPE_ALL_APPS_TO_HOME_ANIMATION_DURATION_MS); diff --git a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java index 52434f7171..a82ef10933 100644 --- a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java +++ b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. * - * Modifications copyright 2025, Lawnchair + * Modifications copyright 2021, Lawnchair */ package com.android.launcher3.allapps; @@ -74,7 +74,8 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement private final PrivateProfileManager mPrivateProviderManager; /** - * Info about a fast scroller section, depending if sections are merged, the fast scroller + * Info about a fast scroller section, depending if sections are merged, the + * fast scroller * sections will not be the same set as the section headers. */ public static class FastScrollSectionInfo { @@ -95,7 +96,6 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement } } - private final T mActivityContext; // The set of apps from the system @@ -108,7 +108,8 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement private int mAccessibilityResultsCount = 0; // The current set of adapter items protected final ArrayList<AdapterItem> mAdapterItems = new ArrayList<>(); - // The set of sections that we allow fast-scrolling to (includes non-merged sections) + // The set of sections that we allow fast-scrolling to (includes non-merged + // sections) private final List<FastScrollSectionInfo> mFastScrollerSections = new ArrayList<>(); // The of ordered component names as a result of a search query @@ -168,7 +169,8 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement } /** - * Returns the current filtered list of applications broken down into their sections. + * Returns the current filtered list of applications broken down into their + * sections. */ public List<AdapterItem> getAdapterItems() { return mAdapterItems; @@ -260,12 +262,14 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement appSteam = appSteam.sorted(mAppNameComparator); privateAppStream = privateAppStream.sorted(mAppNameComparator); - // As a special case for some languages (currently only Simplified Chinese), we may need to + // As a special case for some languages (currently only Simplified Chinese), we + // may need to // coalesce sections Locale curLocale = mActivityContext.getResources().getConfiguration().locale; boolean localeRequiresSectionSorting = curLocale.equals(Locale.SIMPLIFIED_CHINESE); if (localeRequiresSectionSorting) { - // Compute the section headers. We use a TreeMap with the section name comparator to + // Compute the section headers. We use a TreeMap with the section name + // comparator to // ensure that the sections are ordered when we iterate over it later appSteam = appSteam.collect(Collectors.groupingBy( info -> info.sectionName, @@ -285,7 +289,8 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement } /** - * Updates the set of filtered apps with the current filter. At this point, we expect + * Updates the set of filtered apps with the current filter. At this point, we + * expect * mCachedSectionNames to have been calculated for the set of all apps in mApps. */ public void updateAdapterItems() { @@ -296,7 +301,8 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement mAdapterItems.clear(); mAccessibilityResultsCount = 0; - // Recreate the filtered and sectioned apps (for convenience for the grid layout) from the + // Recreate the filtered and sectioned apps (for convenience for the grid + // layout) from the // ordered set of sections if (hasSearchResults()) { mAdapterItems.addAll(mSearchResults); @@ -334,7 +340,8 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement .filter(AdapterItem::isCountedForAccessibility).count(); if (mNumAppsPerRowAllApps != 0) { - // Update the number of rows in the adapter after we do all the merging (otherwise, we + // Update the number of rows in the adapter after we do all the merging + // (otherwise, we // would have to shift the values again) int numAppsInSection = 0; int numAppsInRow = 0; @@ -407,12 +414,12 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement // Add Install Apps Button first. if (!ATLEAST_BAKLAVA) { // LC: Baklava added a new behavior for the PS app button. (enableMovingContentIntoPrivateSpace) - if (!enableMovingContentIntoPrivateSpace) { + if (Flags.privateSpaceAppInstallerButton() && !enableMovingContentIntoPrivateSpace) { mPrivateProviderManager.addPrivateSpaceInstallAppButton(mAdapterItems); position++; } } else { - if (Flags.enablePrivateSpace()) { + if (Flags.privateSpaceAppInstallerButton()) { mPrivateProviderManager.addPrivateSpaceInstallAppButton(mAdapterItems); position++; } @@ -464,7 +471,6 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement currentItem.itemInfo.getTargetPackage(), PRIVATE_SPACE_PACKAGE)) { currentItem.itemInfo.bitmap = mPrivateProviderManager.preparePSBitmapInfo(); currentItem.itemInfo.bitmap.creationFlags |= FLAG_NO_BADGE; - currentItem.itemInfo.title = mPrivateProviderManager.getPSAppTitleOverride(); currentItem.itemInfo.contentDescription = mPrivateProviderManager.getPsAppContentDesc(); privateSpaceAppIndex = i; @@ -495,7 +501,7 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement if (hasPrivateApps) { mAdapterItems.add(AdapterItem.asAppWithDecorationInfo(info, new SectionDecorationInfo(mActivityContext, - getRoundRegions(i, appList.size())))); + getRoundRegions(i, appList.size()), true /* decorateTogether */))); } else { mAdapterItems.add(AdapterItem.asApp(info)); } @@ -517,20 +523,6 @@ public class AlphabeticalAppsList<T extends Context & ActivityContext> implement return position; } - - /** - * Checks if the provided list of apps are from the work/private profile. - */ - protected boolean isWorkOrPrivateSpace(List<AppInfo> appList) { - if (appList.isEmpty()) { - return false; - } - return appList.stream().anyMatch(info -> - (mWorkProviderManager != null && mWorkProviderManager.getItemInfoMatcher().test(info)) - || (mPrivateProviderManager != null - && mPrivateProviderManager.getItemInfoMatcher().test(info))); - } - /** * Determines the corner regions that should be rounded for a specific app icon based on its * position in a grid. Apps that should only be cared about rounding are the apps in the last diff --git a/src/com/android/launcher3/allapps/BaseAllAppsAdapter.java b/src/com/android/launcher3/allapps/BaseAllAppsAdapter.java index fbae1c4cf0..5da44a6d86 100644 --- a/src/com/android/launcher3/allapps/BaseAllAppsAdapter.java +++ b/src/com/android/launcher3/allapps/BaseAllAppsAdapter.java @@ -43,7 +43,6 @@ import androidx.recyclerview.widget.RecyclerView; import com.android.launcher3.BubbleTextView; import com.android.launcher3.R; import com.android.launcher3.allapps.search.SearchAdapterProvider; -import com.android.launcher3.folder.FolderIcon; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.FolderInfo; import com.android.launcher3.views.ActivityContext; @@ -242,7 +241,7 @@ public abstract class BaseAllAppsAdapter<T extends Context & ActivityContext> ex icon.setOnLongClickListener(mOnIconLongClickListener); // Ensure the all apps icon height matches the workspace icons in portrait mode. icon.getLayoutParams().height = - mActivityContext.getDeviceProfile().getAllAppsProfile().getCellHeightPx(); + mActivityContext.getDeviceProfile().allAppsCellHeightPx; return new ViewHolder(icon); case VIEW_TYPE_EMPTY_SEARCH: return new ViewHolder(mLayoutInflater.inflate(R.layout.all_apps_empty_search, @@ -336,13 +335,14 @@ public abstract class BaseAllAppsAdapter<T extends Context & ActivityContext> ex roundRegions |= (ROUND_BOTTOM_LEFT | ROUND_BOTTOM_RIGHT); } adapterItem.decorationInfo = - new SectionDecorationInfo(mActivityContext, roundRegions); + new SectionDecorationInfo(mActivityContext, roundRegions, + false /* decorateTogether */); break; case VIEW_TYPE_PRIVATE_SPACE_SYS_APPS_DIVIDER: adapterItem = mApps.getAdapterItems().get(position); - adapterItem.decorationInfo = - mApps.getPrivateProfileManager().getCurrentState() == STATE_DISABLED ? null - : new SectionDecorationInfo(mActivityContext, ROUND_NOTHING); + adapterItem.decorationInfo = mApps.getPrivateProfileManager().getCurrentState() + == STATE_DISABLED ? null : new SectionDecorationInfo(mActivityContext, + ROUND_NOTHING, true /* decorateTogether */); break; case VIEW_TYPE_BOTTOM_VIEW_TO_SCROLL_TO: case VIEW_TYPE_ALL_APPS_DIVIDER: @@ -352,15 +352,6 @@ public abstract class BaseAllAppsAdapter<T extends Context & ActivityContext> ex case VIEW_TYPE_WORK_EDU_CARD: ((WorkEduCard) holder.itemView).setPosition(position); break; - case VIEW_TYPE_FOLDER: - // LC: Caddy/Folder in allapps 86b2b025a4f23a068818274020f37ad6d5268363 - FolderInfo folderInfo = mApps.getAdapterItems().get(position).folderInfo; - ViewGroup container = (ViewGroup) holder.itemView; - container.removeAllViews(); - container.addView( - FolderIcon.inflateFolderAndIcon(R.layout.all_apps_folder_icon, mActivityContext, - container, folderInfo)); - break; default: if (mAdapterProvider.isViewSupported(holder.getItemViewType())) { mAdapterProvider.onBindView(holder, position); diff --git a/src/com/android/launcher3/allapps/FloatingHeaderView.java b/src/com/android/launcher3/allapps/FloatingHeaderView.java index fe95c4abf4..f34e472b8b 100644 --- a/src/com/android/launcher3/allapps/FloatingHeaderView.java +++ b/src/com/android/launcher3/allapps/FloatingHeaderView.java @@ -38,7 +38,6 @@ import com.android.launcher3.R; import com.android.launcher3.allapps.ActivityAllAppsContainerView.AdapterHolder; import com.android.launcher3.util.PluginManagerWrapper; import com.android.launcher3.views.ActivityContext; -import com.android.launcher3.workprofile.PersonalWorkSlidingTabStrip; import com.android.systemui.plugins.AllAppsRow; import com.android.systemui.plugins.AllAppsRow.OnHeightUpdatedListener; import com.android.systemui.plugins.PluginListener; @@ -91,7 +90,7 @@ public class FloatingHeaderView extends LinearLayout implements private final int mTabsAdditionalPaddingTop; private final int mTabsAdditionalPaddingBottom; - protected PersonalWorkSlidingTabStrip mTabLayout; + protected ViewGroup mTabLayout; private AllAppsRecyclerView mMainRV; private AllAppsRecyclerView mWorkRV; private SearchRecyclerView mSearchRV; @@ -281,10 +280,15 @@ public class FloatingHeaderView extends LinearLayout implements mTabLayout.setVisibility(mTabsHidden ? GONE : visibility); } + /** Returns whether search bar has multi-line support, and is currently in multi-line state. */ + private boolean isSearchBarMultiline() { + return Flags.multilineSearchBar() && mSearchBarOffset > 0; + } + private void updateExpectedHeight() { updateFloatingRowsHeight(); mMaxTranslation = 0; - boolean shouldAddSearchBarHeight = mSearchBarOffset > 0 && !Flags.floatingSearchBar(); + boolean shouldAddSearchBarHeight = isSearchBarMultiline() && !Flags.floatingSearchBar(); if (shouldAddSearchBarHeight) { mMaxTranslation += mSearchBarOffset; } @@ -419,7 +423,7 @@ public class FloatingHeaderView extends LinearLayout implements return !mTabsHidden; } - PersonalWorkSlidingTabStrip getTabLayout() { + ViewGroup getTabLayout() { return mTabLayout; } diff --git a/src/com/android/launcher3/allapps/FloatingMaskView.java b/src/com/android/launcher3/allapps/FloatingMaskView.java index c211c80286..cee5e18958 100644 --- a/src/com/android/launcher3/allapps/FloatingMaskView.java +++ b/src/com/android/launcher3/allapps/FloatingMaskView.java @@ -17,8 +17,6 @@ package com.android.launcher3.allapps; import android.content.Context; -import android.content.res.ColorStateList; -import android.content.res.Configuration; import android.util.AttributeSet; import android.view.ViewGroup; import android.widget.ImageView; @@ -33,8 +31,6 @@ public class FloatingMaskView extends ConstraintLayout { private final ActivityContext mActivityContext; private ImageView mBottomBox; - private ImageView mLeftCorner; - private ImageView mRightCorner; public FloatingMaskView(Context context) { this(context, null, 0); @@ -53,9 +49,6 @@ public class FloatingMaskView extends ConstraintLayout { protected void onFinishInflate() { super.onFinishInflate(); mBottomBox = findViewById(R.id.bottom_box); - mLeftCorner = findViewById(R.id.left_corner); - mRightCorner = findViewById(R.id.right_corner); - updateColors(); } @Override @@ -65,19 +58,6 @@ public class FloatingMaskView extends ConstraintLayout { mActivityContext.getAppsView().getActiveRecyclerView()); } - @Override - protected void onConfigurationChanged(Configuration newConfig) { - super.onConfigurationChanged(newConfig); - updateColors(); - } - - private void updateColors() { - int color = mActivityContext.getAppsView().getBottomSheetBackgroundColor(); - mBottomBox.setBackgroundColor(color); - mLeftCorner.setBackgroundTintList(ColorStateList.valueOf(color)); - mRightCorner.setBackgroundTintList(ColorStateList.valueOf(color)); - } - @VisibleForTesting void setParameters(ViewGroup.MarginLayoutParams lp, AllAppsRecyclerView recyclerView) { if (lp != null) { diff --git a/src/com/android/launcher3/allapps/LauncherAllAppsContainerView.java b/src/com/android/launcher3/allapps/LauncherAllAppsContainerView.java index 8d1d3218ab..c74c2e6e81 100644 --- a/src/com/android/launcher3/allapps/LauncherAllAppsContainerView.java +++ b/src/com/android/launcher3/allapps/LauncherAllAppsContainerView.java @@ -100,7 +100,7 @@ public class LauncherAllAppsContainerView extends ActivityAllAppsContainerView<L // Special case to not expand the search bar when exiting All Apps on phones. if (stateManager.getCurrentStableState() == LauncherState.ALL_APPS - && mActivityContext.getDeviceProfile().getDeviceProperties().isPhone()) { + && mActivityContext.getDeviceProfile().isPhone) { return LauncherState.ALL_APPS.getFloatingSearchBarRestingMarginStart(mActivityContext); } @@ -122,7 +122,7 @@ public class LauncherAllAppsContainerView extends ActivityAllAppsContainerView<L // Special case to not expand the search bar when exiting All Apps on phones. if (stateManager.getCurrentStableState() == LauncherState.ALL_APPS - && mActivityContext.getDeviceProfile().getDeviceProperties().isPhone()) { + && mActivityContext.getDeviceProfile().isPhone) { return LauncherState.ALL_APPS.getFloatingSearchBarRestingMarginEnd(mActivityContext); } diff --git a/src/com/android/launcher3/allapps/PrivateProfileManager.java b/src/com/android/launcher3/allapps/PrivateProfileManager.java index dffedb70f7..8d5247de55 100644 --- a/src/com/android/launcher3/allapps/PrivateProfileManager.java +++ b/src/com/android/launcher3/allapps/PrivateProfileManager.java @@ -32,7 +32,7 @@ import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCH import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_PRIVATE_SPACE_UNLOCK_ANIMATION_BEGIN; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_PRIVATE_SPACE_UNLOCK_ANIMATION_END; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_PRIVATE_SPACE_UNLOCK_TAP; -import static com.android.launcher3.model.data.AppsListData.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED; import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_NOT_PINNABLE; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; @@ -122,8 +122,6 @@ public class PrivateProfileManager extends UserProfileManager { } } }; - - private AnimatorSet mAnimatorSet; private Intent mAppInstallerIntent = new Intent(); private PrivateAppsSectionDecorator mPrivateAppsSectionDecorator; private boolean mPrivateSpaceSettingsAvailable; @@ -147,7 +145,6 @@ public class PrivateProfileManager extends UserProfileManager { private final String mPrivateSpaceAppContentDesc; private final String mLockedStateContentDesc; private final String mUnLockedStateContentDesc; - private final String mPSAppTitleOverride; public PrivateProfileManager(UserManager userManager, ActivityAllAppsContainerView<?> allApps, @@ -173,7 +170,6 @@ public class PrivateProfileManager extends UserProfileManager { R.dimen.ps_lock_icon_text_margin_start_expanded); mLockTextMarginEnd = mAllApps.getContext().getResources().getDimensionPixelSize( R.dimen.ps_lock_icon_text_margin_end_expanded); - mPSAppTitleOverride = mAllApps.getContext().getString(R.string.ps_app_label_override); } /** Adds Private Space Header to the layout. */ @@ -205,7 +201,8 @@ public class PrivateProfileManager extends UserProfileManager { BaseAllAppsAdapter.AdapterItem item = new BaseAllAppsAdapter.AdapterItem(VIEW_TYPE_ICON); item.itemInfo = itemInfo; - item.decorationInfo = new SectionDecorationInfo(context, ROUND_NOTHING); + item.decorationInfo = new SectionDecorationInfo(context, ROUND_NOTHING, + /* decorateTogether */ true); adapterItems.add(item); mAllApps.mAH.get(MAIN).mAdapter.notifyItemInserted(adapterItems.size() - 1); @@ -234,7 +231,9 @@ public class PrivateProfileManager extends UserProfileManager { } /** - * Resets the current state of Private Profile, w.r.t. to Launcher. + * Resets the current state of Private Profile, w.r.t. to Launcher. The decorator should only + * be applied upon expand before animating. When collapsing, reset() will remove the decorator + * when animation is not running. */ public void reset() { Trace.beginSection("PrivateProfileManager#reset"); @@ -256,7 +255,7 @@ public class PrivateProfileManager extends UserProfileManager { } else if (previousState == STATE_ENABLED && updatedState == STATE_DISABLED){ executeLock(); } - addPrivateSpaceDecorator(); + addPrivateSpaceDecorator(updatedState); Trace.endSection(); } @@ -290,24 +289,26 @@ public class PrivateProfileManager extends UserProfileManager { setPrivateSpaceSettingsAvailable(apiWrapper.getPrivateSpaceSettingsIntent() != null); } - /** Adds a private space decorator to the main (personal) app recyclerview. */ + /** Adds a private space decorator only when STATE_ENABLED. */ @VisibleForTesting - void addPrivateSpaceDecorator() { + void addPrivateSpaceDecorator(int updatedState) { ActivityAllAppsContainerView<?>.AdapterHolder mainAdapterHolder = mAllApps.mAH.get(MAIN); - // Create a new decorator instance if not already available. - if (mPrivateAppsSectionDecorator == null) { - mPrivateAppsSectionDecorator = new PrivateAppsSectionDecorator( - mainAdapterHolder.mAppsList); - } - for (int i = 0; i < mainAdapterHolder.mRecyclerView.getItemDecorationCount(); i++) { - if (mainAdapterHolder.mRecyclerView.getItemDecorationAt(i) - .equals(mPrivateAppsSectionDecorator)) { - // No need to add another decorator if one is already present in recycler view. - return; + if (updatedState == STATE_ENABLED) { + // Create a new decorator instance if not already available. + if (mPrivateAppsSectionDecorator == null) { + mPrivateAppsSectionDecorator = new PrivateAppsSectionDecorator( + mainAdapterHolder.mAppsList); } + for (int i = 0; i < mainAdapterHolder.mRecyclerView.getItemDecorationCount(); i++) { + if (mainAdapterHolder.mRecyclerView.getItemDecorationAt(i) + .equals(mPrivateAppsSectionDecorator)) { + // No need to add another decorator if one is already present in recycler view. + return; + } + } + // Add Private Space Decorator to the Recycler view. + mainAdapterHolder.mRecyclerView.addItemDecoration(mPrivateAppsSectionDecorator); } - // Add Private Space Decorator to the Recycler view. - mainAdapterHolder.mRecyclerView.addItemDecoration(mPrivateAppsSectionDecorator); } public void setQuietMode(boolean enable) { @@ -446,7 +447,7 @@ public class PrivateProfileManager extends UserProfileManager { setQuietMode(lock); } - /** Finds the private space header to smooth scroll to. */ + /** Finds the private space header to scroll to and set the private space icons to GONE. */ private void collapse() { AllAppsRecyclerView allAppsRecyclerView = mAllApps.getActiveRecyclerView(); List<BaseAllAppsAdapter.AdapterItem> appListAdapterItems = @@ -469,9 +470,23 @@ public class PrivateProfileManager extends UserProfileManager { RecyclerView.LayoutManager layoutManager = allAppsRecyclerView.getLayoutManager(); if (layoutManager != null) { startAnimationScroll(allAppsRecyclerView, layoutManager, smoothScroller); + // Preserve decorator if floating mask view exists. + if (mFloatingMaskView == null) { + currentItem.decorationInfo = null; + } } break; } + // Make the private space apps gone to "collapse". + if ((mFloatingMaskView == null && isPrivateSpaceItem(currentItem)) || + currentItem.viewType == VIEW_TYPE_PRIVATE_SPACE_SYS_APPS_DIVIDER) { + RecyclerView.ViewHolder viewHolder = + allAppsRecyclerView.findViewHolderForAdapterPosition(i); + if (viewHolder != null) { + viewHolder.itemView.setVisibility(GONE); + currentItem.decorationInfo = null; + } + } } } @@ -653,11 +668,8 @@ public class PrivateProfileManager extends UserProfileManager { return; } attachFloatingMaskView(expand); - if (mAnimatorSet != null && mAnimatorSet.isRunning()) { - mAnimatorSet.cancel(); - } - mAnimatorSet = new AnimatedPropertySetter().buildAnim(); - mAnimatorSet.addListener(new AnimatorListenerAdapter() { + AnimatorSet animatorSet = new AnimatedPropertySetter().buildAnim(); + animatorSet.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationStart(Animator animation) { Log.d(TAG, "updatePrivateStateAnimator: Private space animation expanding: " @@ -675,7 +687,7 @@ public class PrivateProfileManager extends UserProfileManager { detachFloatingMaskView(); } }); - mAnimatorSet.addListener(forEndCallback(() -> { + animatorSet.addListener(forEndCallback(() -> { mIsStateTransitioning = false; setAnimationRunning(false); getMainRecyclerView().setChildAttachedConsumer(child -> child.setAlpha(1)); @@ -690,6 +702,8 @@ public class PrivateProfileManager extends UserProfileManager { + mPrivateSpaceSettingsButton.getVisibility() + " settingsCogAlpha: " + mPrivateSpaceSettingsButton.getAlpha()); if (!expand) { + mAllApps.mAH.get(MAIN).mRecyclerView.removeItemDecoration( + mPrivateAppsSectionDecorator); // Call onAppsUpdated() because it may be canceled when this animation occurs. if (!Utilities.isRunningInTestHarness()) { mAllApps.getPersonalAppList().onAppsUpdated(); @@ -701,7 +715,7 @@ public class PrivateProfileManager extends UserProfileManager { } })); if (expand) { - mAnimatorSet.playTogether(updateSettingsGearAlpha(true), + animatorSet.playTogether(updateSettingsGearAlpha(true), updateLockTextAlpha(true), animateAlphaOfIcons(true), animatePillTransition(true), @@ -713,16 +727,16 @@ public class PrivateProfileManager extends UserProfileManager { animateAlphaOfIcons(false), animatePillTransition(false)); if (isPrivateSpaceHidden()) { - mAnimatorSet.playSequentially(parallelSet, + animatorSet.playSequentially(parallelSet, animateAlphaOfPrivateSpaceContainer(), animateCollapseAnimation()); } else { - mAnimatorSet.playSequentially(translateFloatingMaskView(true), + animatorSet.playSequentially(translateFloatingMaskView(true), parallelSet, animateCollapseAnimation()); } } - mAnimatorSet.start(); + animatorSet.start(); } /** Fades out the private space container (defined by its items' decorators). */ @@ -836,7 +850,7 @@ public class PrivateProfileManager extends UserProfileManager { DeviceProfile deviceProfile = ActivityContext.lookupContext(mAllApps.getContext()).getDeviceProfile(); scrollForHeaderToBeVisibleInContainer(mainAdapterHolder.mRecyclerView, adapterItems, - getPsHeaderHeight(), deviceProfile.getAllAppsProfile().getCellHeightPx()); + getPsHeaderHeight(), deviceProfile.allAppsCellHeightPx); updatePrivateStateAnimator(true); } Trace.endSection(); @@ -854,8 +868,7 @@ public class PrivateProfileManager extends UserProfileManager { } private void attachFloatingMaskView(boolean expand) { - // Floating mask can't block the transparent background if blur is enabled, so don't add it. - if (!Flags.privateSpaceAddFloatingMaskView() || mAllApps.isBackgroundBlurEnabled()) { + if (!Flags.privateSpaceAddFloatingMaskView()) { return; } // Use getLocationOnScreen() as simply checking for mPSHeader.getBottom() is only relative @@ -935,10 +948,6 @@ public class PrivateProfileManager extends UserProfileManager { return mPrivateSpaceAppContentDesc; } - String getPSAppTitleOverride() { - return mPSAppTitleOverride; - } - boolean isPrivateSpaceItem(BaseAllAppsAdapter.AdapterItem item) { return getItemInfoMatcher().test(item.itemInfo) || item.decorationInfo != null || (item.itemInfo instanceof PrivateSpaceInstallAppButtonInfo); diff --git a/src/com/android/launcher3/allapps/RecyclerViewAnimationController.java b/src/com/android/launcher3/allapps/RecyclerViewAnimationController.java index 235f5e1b9c..6209393b20 100644 --- a/src/com/android/launcher3/allapps/RecyclerViewAnimationController.java +++ b/src/com/android/launcher3/allapps/RecyclerViewAnimationController.java @@ -31,6 +31,7 @@ import android.util.FloatProperty; import android.util.Log; import android.view.View; import android.view.ViewGroup; +import android.view.animation.Interpolator; import com.android.launcher3.BubbleTextView; import com.android.launcher3.Utilities; diff --git a/src/com/android/launcher3/allapps/SectionDecorationHandler.java b/src/com/android/launcher3/allapps/SectionDecorationHandler.java index bd32294b47..cae76ec0a6 100644 --- a/src/com/android/launcher3/allapps/SectionDecorationHandler.java +++ b/src/com/android/launcher3/allapps/SectionDecorationHandler.java @@ -17,7 +17,6 @@ package com.android.launcher3.allapps; import android.content.Context; import android.graphics.Canvas; -import android.graphics.Color; import android.graphics.Paint; import android.graphics.Path; import android.graphics.RectF; @@ -28,7 +27,6 @@ import android.view.View; import androidx.annotation.Nullable; import com.android.launcher3.R; -import com.android.launcher3.util.Themes; public class SectionDecorationHandler { @@ -40,13 +38,14 @@ public class SectionDecorationHandler { protected final RectF mBounds = new RectF(); protected final Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG); + protected final int mFocusAlpha = 255; // main focused item alpha protected int mFillColor; // grouping color protected int mFocusColor; // main focused item color - protected float mFillAlphaMultiplier = 1; protected float mFillSpacing; protected int mInlineRadius; protected Context mContext; protected float[] mCorners; + protected int mFillAlpha; protected boolean mIsTopLeftRound; protected boolean mIsTopRightRound; protected boolean mIsBottomLeftRound; @@ -54,14 +53,14 @@ public class SectionDecorationHandler { protected boolean mIsBottomRound; protected boolean mIsTopRound; - public SectionDecorationHandler(Context context, boolean isTopLeftRound, + public SectionDecorationHandler(Context context, int fillAlpha, boolean isTopLeftRound, boolean isTopRightRound, boolean isBottomLeftRound, boolean isBottomRightRound) { mContext = context; - - mFocusColor = Themes.getAttrColor(mContext, R.attr.focusHighlight); - mFillColor = Themes.getAttrColor(mContext, R.attr.groupHighlight); + mFillAlpha = fillAlpha; + mFocusColor = context.getColor(R.color.materialColorSurfaceBright); // UX recommended + mFillColor = context.getColor(R.color.materialColorSurfaceContainerHigh); // UX recommended mIsTopLeftRound = isTopLeftRound; mIsTopRightRound = isTopRightRound; @@ -94,26 +93,16 @@ public class SectionDecorationHandler { } protected void setFillAlpha(int fillAlpha) { - mFillAlphaMultiplier = (float) fillAlpha / 255; - preparePaintForFill(); - } - - /** Set the paint color in preparation for drawing fill (group). */ - protected void preparePaintForFill() { - mPaint.setColor(mFillColor); - mPaint.setAlpha((int) (Color.alpha(mFillColor) * mFillAlphaMultiplier)); - } - - /** Set the paint color in preparation for drawing focus (highlight / quick launch). */ - protected void preparePaintForFocus() { - mPaint.setColor(mFocusColor); + mFillAlpha = fillAlpha; + mPaint.setAlpha(mFillAlpha); } protected void onFocusDraw(Canvas canvas, @Nullable View view) { if (view == null) { return; } - preparePaintForFill(); + mPaint.setColor(mFillColor); + mPaint.setAlpha(mFillAlpha); int scaledHeight = (int) (view.getHeight() * view.getScaleY()); mBounds.set(view.getLeft(), view.getY(), view.getRight(), view.getY() + scaledHeight); onDraw(canvas); @@ -173,7 +162,7 @@ public class SectionDecorationHandler { public UnionDecorationHandler( SectionDecorationHandler decorationHandler, int paddingLeft, int paddingRight) { - super(decorationHandler.mContext, + super(decorationHandler.mContext, decorationHandler.mFillAlpha, decorationHandler.mIsTopLeftRound, decorationHandler.mIsTopRightRound, decorationHandler.mIsBottomLeftRound, decorationHandler.mIsBottomRightRound); mPaddingLeft = paddingLeft; @@ -202,7 +191,8 @@ public class SectionDecorationHandler { initCorners(); mBounds.left = mPaddingLeft; mBounds.right = canvas.getWidth() - mPaddingRight; - preparePaintForFill(); + mPaint.setColor(mFillColor); + mPaint.setAlpha(mFillAlpha); onDraw(canvas); } } diff --git a/src/com/android/launcher3/allapps/SectionDecorationInfo.java b/src/com/android/launcher3/allapps/SectionDecorationInfo.java index c7dabe8ba7..c438d19b3e 100644 --- a/src/com/android/launcher3/allapps/SectionDecorationInfo.java +++ b/src/com/android/launcher3/allapps/SectionDecorationInfo.java @@ -27,20 +27,21 @@ public class SectionDecorationInfo { public static final int ROUND_TOP_RIGHT = 1 << 2; public static final int ROUND_BOTTOM_LEFT = 1 << 3; public static final int ROUND_BOTTOM_RIGHT = 1 << 4; + public static final int DECORATOR_ALPHA = 255; protected boolean mShouldDecorateItemsTogether; private SectionDecorationHandler mDecorationHandler; protected boolean mIsTopRound; protected boolean mIsBottomRound; - public SectionDecorationInfo(Context context, int roundRegions) { + public SectionDecorationInfo(Context context, int roundRegions, boolean decorateTogether) { mDecorationHandler = - new SectionDecorationHandler(context, + new SectionDecorationHandler(context, DECORATOR_ALPHA, isFlagEnabled(roundRegions, ROUND_TOP_LEFT), isFlagEnabled(roundRegions, ROUND_TOP_RIGHT), isFlagEnabled(roundRegions, ROUND_BOTTOM_LEFT), isFlagEnabled(roundRegions, ROUND_BOTTOM_RIGHT)); - mShouldDecorateItemsTogether = true; + mShouldDecorateItemsTogether = decorateTogether; mIsTopRound = isFlagEnabled(roundRegions, ROUND_TOP_LEFT) && isFlagEnabled(roundRegions, ROUND_TOP_RIGHT); mIsBottomRound = isFlagEnabled(roundRegions, ROUND_BOTTOM_LEFT) && diff --git a/src/com/android/launcher3/allapps/WorkProfileManager.java b/src/com/android/launcher3/allapps/WorkProfileManager.java index c20833aa4d..920efa4f64 100644 --- a/src/com/android/launcher3/allapps/WorkProfileManager.java +++ b/src/com/android/launcher3/allapps/WorkProfileManager.java @@ -22,10 +22,10 @@ import static com.android.launcher3.allapps.ActivityAllAppsContainerView.Adapter import static com.android.launcher3.allapps.BaseAllAppsAdapter.VIEW_TYPE_WORK_DISABLED_CARD; import static com.android.launcher3.allapps.BaseAllAppsAdapter.VIEW_TYPE_WORK_EDU_CARD; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TURN_OFF_WORK_APPS_TAP; -import static com.android.launcher3.model.data.AppsListData.FLAG_HAS_SHORTCUT_PERMISSION; -import static com.android.launcher3.model.data.AppsListData.FLAG_QUIET_MODE_CHANGE_PERMISSION; -import static com.android.launcher3.model.data.AppsListData.FLAG_QUIET_MODE_ENABLED; -import static com.android.launcher3.model.data.AppsListData.FLAG_WORK_PROFILE_QUIET_MODE_ENABLED; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_HAS_SHORTCUT_PERMISSION; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_QUIET_MODE_CHANGE_PERMISSION; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_QUIET_MODE_ENABLED; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_WORK_PROFILE_QUIET_MODE_ENABLED; import android.os.UserHandle; import android.os.UserManager; diff --git a/src/com/android/launcher3/allapps/WorkUtilityView.java b/src/com/android/launcher3/allapps/WorkUtilityView.java index 251c2b1059..b304a5862c 100644 --- a/src/com/android/launcher3/allapps/WorkUtilityView.java +++ b/src/com/android/launcher3/allapps/WorkUtilityView.java @@ -167,11 +167,11 @@ public class WorkUtilityView extends LinearLayout implements Insettable, int bottomMargin = getResources().getDimensionPixelSize(R.dimen.work_fab_margin_bottom); DeviceProfile dp = ActivityContext.lookupContext(getContext()).getDeviceProfile(); if (mActivityContext.getAppsView().isSearchBarFloating()) { - bottomMargin += dp.getHotseatProfile().getQsbHeight(); + bottomMargin += dp.hotseatQsbHeight; } - if (!dp.getDeviceProperties().isGestureMode() && dp.isTaskbarPresent) { - bottomMargin += dp.getTaskbarProfile().getHeight(); + if (!dp.isGestureMode && dp.isTaskbarPresent) { + bottomMargin += dp.taskbarHeight; } lp.bottomMargin = bottomMargin; diff --git a/src/com/android/launcher3/anim/AnimatedPropertySetter.java b/src/com/android/launcher3/anim/AnimatedPropertySetter.java index 9bf479a6dd..0f1b8ad9c6 100644 --- a/src/com/android/launcher3/anim/AnimatedPropertySetter.java +++ b/src/com/android/launcher3/anim/AnimatedPropertySetter.java @@ -16,7 +16,7 @@ package com.android.launcher3.anim; -import static com.android.launcher3.LauncherAnimUtils.SCRIM_COLORS; +import static com.android.launcher3.LauncherAnimUtils.VIEW_BACKGROUND_COLOR; import android.animation.Animator; import android.animation.Animator.AnimatorListener; @@ -25,16 +25,13 @@ import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.animation.TimeInterpolator; import android.animation.ValueAnimator; +import android.graphics.drawable.ColorDrawable; import android.util.FloatProperty; import android.util.IntProperty; import android.view.View; import androidx.annotation.NonNull; -import com.android.launcher3.views.ScrimColors; -import com.android.launcher3.views.ScrimView; -import com.android.launcher3.views.ScrimColorsEvaluator; - import java.util.function.Consumer; /** @@ -66,16 +63,15 @@ public class AnimatedPropertySetter extends PropertySetter { } @Override - public Animator setScrimColors(ScrimView view, ScrimColors scrimColors, - TimeInterpolator interpolator) { - if (view == null || view.getScrimColors().equals(scrimColors)) { + public Animator setViewBackgroundColor(View view, int color, TimeInterpolator interpolator) { + if (view == null || (view.getBackground() instanceof ColorDrawable + && ((ColorDrawable) view.getBackground()).getColor() == color)) { return NO_OP; } - ObjectAnimator animator = ObjectAnimator.ofObject(view, SCRIM_COLORS, - ScrimColorsEvaluator.INSTANCE, scrimColors); - animator.setInterpolator(interpolator); - add(animator); - return animator; + ObjectAnimator anim = ObjectAnimator.ofArgb(view, VIEW_BACKGROUND_COLOR, color); + anim.setInterpolator(interpolator); + add(anim); + return anim; } @Override diff --git a/src/com/android/launcher3/anim/KeyboardInsetAnimationCallback.java b/src/com/android/launcher3/anim/KeyboardInsetAnimationCallback.java index 290ab90604..837394fe3c 100644 --- a/src/com/android/launcher3/anim/KeyboardInsetAnimationCallback.java +++ b/src/com/android/launcher3/anim/KeyboardInsetAnimationCallback.java @@ -105,7 +105,7 @@ public class KeyboardInsetAnimationCallback extends WindowInsetsAnimation.Callba } else { // Manually controlled animation: Set translation to keyboard height. int translationY = -windowInsets.getInsets(WindowInsets.Type.ime()).bottom; - if (translationY < 0 && mView.getParent() instanceof View) { + if (mView.getParent() instanceof View) { // Offset any translation of the parent (e.g. All Apps parallax). translationY -= ((View) mView.getParent()).getTranslationY(); } diff --git a/src/com/android/launcher3/anim/PropertySetter.java b/src/com/android/launcher3/anim/PropertySetter.java index 4ad828169d..6ba58b6a98 100644 --- a/src/com/android/launcher3/anim/PropertySetter.java +++ b/src/com/android/launcher3/anim/PropertySetter.java @@ -19,16 +19,12 @@ package com.android.launcher3.anim; import android.animation.Animator; import android.animation.AnimatorSet; import android.animation.TimeInterpolator; -import android.graphics.drawable.ColorDrawable; import android.util.FloatProperty; import android.util.IntProperty; import android.view.View; import androidx.annotation.NonNull; -import com.android.launcher3.views.ScrimColors; -import com.android.launcher3.views.ScrimView; - import java.util.function.Consumer; /** @@ -63,14 +59,12 @@ public abstract class PropertySetter { } /** - * Sets the background and foreground color of the provided view using the provided - * interpolator. + * Sets the background color of the provided view using the provided interpolator. */ @NonNull - public Animator setScrimColors(ScrimView view, ScrimColors scrimColors, - TimeInterpolator interpolator) { + public Animator setViewBackgroundColor(View view, int color, TimeInterpolator interpolator) { if (view != null) { - view.setScrimColors(scrimColors); + view.setBackgroundColor(color); } return NO_OP; } diff --git a/src/com/android/launcher3/anim/SpringAnimationBuilder.java b/src/com/android/launcher3/anim/SpringAnimationBuilder.java index df9f97919c..bc7b7f00d2 100644 --- a/src/com/android/launcher3/anim/SpringAnimationBuilder.java +++ b/src/com/android/launcher3/anim/SpringAnimationBuilder.java @@ -194,14 +194,8 @@ public class SpringAnimationBuilder { ValueAnimator animator = ValueAnimator.ofFloat(0, mDuration); animator.setDuration(getDuration()).setInterpolator(LINEAR); - animator.addUpdateListener(anim -> { - float value = getInterpolatedValue(anim.getAnimatedFraction()); - if (Float.isNaN(value)) { - value = 0f; - } - property.set(target, value); - } - ); + animator.addUpdateListener(anim -> + property.set(target, getInterpolatedValue(anim.getAnimatedFraction()))); animator.addListener(new AnimationSuccessListener() { @Override public void onAnimationSuccess(Animator animation) { diff --git a/src/com/android/launcher3/apppairs/AppPairIconGraphic.kt b/src/com/android/launcher3/apppairs/AppPairIconGraphic.kt index 88e1d4cc2f..81a92f689b 100644 --- a/src/com/android/launcher3/apppairs/AppPairIconGraphic.kt +++ b/src/com/android/launcher3/apppairs/AppPairIconGraphic.kt @@ -56,8 +56,8 @@ constructor(context: Context, attrs: AttributeSet? = null) : // If icons are unlaunchable due to screen size, manually override disabled appearance. // (otherwise, leave disabled state alone; icons will naturally inherit the app's state) val (isApp1Launchable, isApp2Launchable) = appPairInfo.isLaunchable(p.context) - if (!isApp1Launchable) appIcon1.isDisabled = true - if (!isApp2Launchable) appIcon2.isDisabled = true + if (!isApp1Launchable) appIcon1.setIsDisabled(true) + if (!isApp2Launchable) appIcon2.setIsDisabled(true) // Create icon drawable. val fullIconDrawable = AppPairIconDrawable(p, appIcon1, appIcon2) diff --git a/src/com/android/launcher3/backuprestore/LauncherRestoreEventLogger.kt b/src/com/android/launcher3/backuprestore/LauncherRestoreEventLogger.kt index df2e61fd04..1502811099 100644 --- a/src/com/android/launcher3/backuprestore/LauncherRestoreEventLogger.kt +++ b/src/com/android/launcher3/backuprestore/LauncherRestoreEventLogger.kt @@ -3,14 +3,14 @@ package com.android.launcher3.backuprestore import android.content.Context import androidx.annotation.StringDef import com.android.launcher3.LauncherSettings.Favorites -import com.android.launcher3.dagger.LauncherComponentProvider -import javax.inject.Inject +import com.android.launcher3.R +import com.android.launcher3.util.ResourceBasedOverride /** * Wrapper for logging Restore event metrics for both success and failure to restore the Launcher * workspace from a backup. */ -open class LauncherRestoreEventLogger @Inject constructor() { +open class LauncherRestoreEventLogger : ResourceBasedOverride { /** Enumeration of potential errors returned to calls of pause/resume app updates. */ @Retention(AnnotationRetention.SOURCE) @@ -68,8 +68,12 @@ open class LauncherRestoreEventLogger @Inject constructor() { companion object { const val TAG = "LauncherRestoreEventLogger" - fun newInstance(context: Context): LauncherRestoreEventLogger { - return LauncherComponentProvider.get(context).launcherRestoreEventLogger + fun newInstance(context: Context?): LauncherRestoreEventLogger { + return ResourceBasedOverride.Overrides.getObject( + LauncherRestoreEventLogger::class.java, + context, + R.string.launcher_restore_event_logger_class, + ) } } diff --git a/src/com/android/launcher3/celllayout/CellInfo.kt b/src/com/android/launcher3/celllayout/CellInfo.kt index 817857985e..5a3b7f7685 100644 --- a/src/com/android/launcher3/celllayout/CellInfo.kt +++ b/src/com/android/launcher3/celllayout/CellInfo.kt @@ -26,38 +26,17 @@ import com.android.launcher3.util.CellAndSpan // 2. When long clicking on an empty cell in a CellLayout, we save information about the // cellX and cellY coordinates and which page was clicked. We then set this as a tag on // the CellLayout that was long clicked -class CellInfo( - @JvmField val cell: View?, - @JvmField val screenId: Int, - @JvmField val container: Int, - cellX: Int, - cellY: Int, - spanX: Int, - spanY: Int, -) : CellAndSpan(cellX, cellY, spanX, spanY) { +class CellInfo(v: View?, info: ItemInfo, cellPos: CellPos) : + CellAndSpan(cellPos.cellX, cellPos.cellY, info.spanX, info.spanY) { + @JvmField val cell: View? + @JvmField val screenId: Int + @JvmField val container: Int - constructor( - cell: View?, - info: ItemInfo, - cellPos: CellPos, - ) : this( - cell, - cellPos.screenId, - info.container, - cellPos.cellX, - cellPos.cellY, - info.spanX, - info.spanY, - ) - - /** Returns if the provided [item] represents the same position info as itself */ - fun isSameAs(item: ItemInfo) = - item.container == container && - item.screenId == screenId && - item.cellX == cellX && - item.cellY == cellY && - item.spanX == spanX && - item.spanY == spanY + init { + cell = v + screenId = cellPos.screenId + container = info.container + } override fun toString(): String { return "CellInfo(cell=$cell, screenId=$screenId, container=$container)" diff --git a/src/com/android/launcher3/config/FeatureFlags.java b/src/com/android/launcher3/config/FeatureFlags.java index e9974042bd..7f8a3f01e4 100644 --- a/src/com/android/launcher3/config/FeatureFlags.java +++ b/src/com/android/launcher3/config/FeatureFlags.java @@ -49,6 +49,14 @@ public final class FeatureFlags { @Deprecated public static final boolean IS_STUDIO_BUILD = false; + /** + * Enable moving the QSB on the 0th screen of the workspace. This is not a configuration feature + * and should be modified at a project level. + * @deprecated Use {@link BuildConfig#QSB_ON_FIRST_SCREEN} directly + */ + @Deprecated + public static final boolean QSB_ON_FIRST_SCREEN = true; + /** * Feature flag to handle define config changes dynamically instead of killing the process. * <p> @@ -157,7 +165,7 @@ public final class FeatureFlags { // TODO(Block 22): Clean up flags public static final BooleanFlag ENABLE_WIDGET_TRANSITION_FOR_RESIZING = getDebugFlag(268553314, - "ENABLE_WIDGET_TRANSITION_FOR_RESIZING", ENABLED, + "ENABLE_WIDGET_TRANSITION_FOR_RESIZING", DISABLED, "Enable widget transition animation when resizing the widgets"); // TODO(Block 27): Clean up flags diff --git a/src/com/android/launcher3/dagger/LauncherAppModule.java b/src/com/android/launcher3/dagger/LauncherAppModule.java index 83dd5b599b..28178328f4 100644 --- a/src/com/android/launcher3/dagger/LauncherAppModule.java +++ b/src/com/android/launcher3/dagger/LauncherAppModule.java @@ -16,29 +16,18 @@ package com.android.launcher3.dagger; -import com.android.launcher3.compose.widgetpicker.LauncherWidgetPickerModule; -import com.android.launcher3.concurrent.ExecutorsModule; -import com.android.launcher3.util.dagger.LauncherExecutorsModule; - import android.content.Context; import dagger.Module; import dagger.Provides; -@Module( - includes = { - WindowManagerProxyModule.class, - ApiWrapperModule.class, - PluginManagerWrapperModule.class, - StaticObjectModule.class, - WidgetModule.class, - AppModule.class, - PerDisplayModule.class, - LauncherConcurrencyModule.class, - ExecutorsModule.class, - LauncherExecutorsModule.class, - LauncherWidgetPickerModule.class - }, - subcomponents = ActivityContextComponent.class) +@Module(includes = { + WindowManagerProxyModule.class, + ApiWrapperModule.class, + PluginManagerWrapperModule.class, + StaticObjectModule.class, + WidgetModule.class, + AppModule.class +}) public class LauncherAppModule { @Provides @LauncherAppSingleton diff --git a/src/com/android/launcher3/dagger/LauncherBaseAppComponent.java b/src/com/android/launcher3/dagger/LauncherBaseAppComponent.java index 99824ccd59..a3ac247e59 100644 --- a/src/com/android/launcher3/dagger/LauncherBaseAppComponent.java +++ b/src/com/android/launcher3/dagger/LauncherBaseAppComponent.java @@ -37,28 +37,22 @@ import app.lawnchair.smartspace.provider.SmartspaceProvider; import app.lawnchair.theme.ThemeProvider; import app.lawnchair.ui.preferences.components.colorpreference.ColorPreferenceModelList; import app.lawnchair.ui.preferences.data.liveinfo.LiveInformationManager; -import app.lawnchair.util.LawnchairWindowManagerProxy; import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherPrefs; import com.android.launcher3.RemoveAnimationSettingsTracker; -import com.android.launcher3.backuprestore.LauncherRestoreEventLogger; -import com.android.launcher3.compose.core.widgetpicker.WidgetPickerComposeWrapper; -import com.android.launcher3.folder.FolderNameSuggestionLoader; import com.android.launcher3.graphics.GridCustomizationsProxy; import com.android.launcher3.graphics.ThemeManager; import com.android.launcher3.icons.LauncherIcons.IconPool; -import com.android.launcher3.logging.DumpManager; -import com.android.launcher3.logging.StatsLogManager; import com.android.launcher3.model.ItemInstallQueue; import com.android.launcher3.model.LoaderCursor.LoaderCursorFactory; +import com.android.launcher3.model.WidgetsFilterDataProvider; import com.android.launcher3.pm.InstallSessionHelper; import com.android.launcher3.pm.UserCache; import com.android.launcher3.util.ApiWrapper; import com.android.launcher3.util.DaggerSingletonTracker; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.DynamicResource; -import com.android.launcher3.util.InstantAppResolver; import com.android.launcher3.util.LockedUserState; import com.android.launcher3.util.MSDLPlayerWrapper; import com.android.launcher3.util.PackageManagerHelper; @@ -71,7 +65,6 @@ import com.android.launcher3.util.window.RefreshRateTracker; import com.android.launcher3.util.window.WindowManagerProxy; import com.android.launcher3.widget.LauncherWidgetHolder.WidgetHolderFactory; import com.android.launcher3.widget.custom.CustomWidgetManager; -import com.android.launcher3.widget.util.WidgetSizeHandler; import dagger.BindsInstance; @@ -110,24 +103,14 @@ public interface LauncherBaseAppComponent { IconPool getIconPool(); RemoveAnimationSettingsTracker getRemoveAnimationSettingsTracker(); LauncherAppState getLauncherAppState(); - - LauncherRestoreEventLogger getLauncherRestoreEventLogger(); GridCustomizationsProxy getGridCustomizationsProxy(); - FolderNameSuggestionLoader getFolderNameSuggestionLoader(); + WidgetsFilterDataProvider getWidgetsFilterDataProvider(); + LoaderCursorFactory getLoaderCursorFactory(); WidgetHolderFactory getWidgetHolderFactory(); RefreshRateTracker getFrameRateProvider(); - InstantAppResolver getInstantAppResolver(); - DumpManager getDumpManager(); - StatsLogManager.StatsLogManagerFactory getStatsLogManagerFactory(); - ActivityContextComponent.Builder getActivityContextComponentBuilder(); - WidgetPickerComposeWrapper getWidgetPickerComposeWrapper(); - WidgetSizeHandler getWidgetSizeHandler(); - // Lawnchair-specific - - LawnchairWindowManagerProxy getLWMP(); DeviceProfileOverrides getDPO(); ThemeProvider getThemeProvider(); SmartspaceProvider getSmartspaceProvider(); diff --git a/src/com/android/launcher3/dragndrop/DragController.java b/src/com/android/launcher3/dragndrop/DragController.java index 6ba2b3dce0..92fae66dd5 100644 --- a/src/com/android/launcher3/dragndrop/DragController.java +++ b/src/com/android/launcher3/dragndrop/DragController.java @@ -577,6 +577,7 @@ public abstract class DragController<T extends ActivityContext> private DropTarget findDropTarget(final int x, final int y) { mCoordinatesTemp[0] = x; mCoordinatesTemp[1] = y; + final Rect r = mRectTemp; final ArrayList<DropTarget> dropTargets = mDropTargets; final int count = dropTargets.size(); @@ -587,11 +588,8 @@ public abstract class DragController<T extends ActivityContext> target.getHitRectRelativeToDragLayer(r); if (r.contains(x, y)) { - View dropTargetView = target.getDropView(); - if (dropTargetView != null) { - mActivity.getDragLayer().mapCoordInSelfToDescendant(dropTargetView, - mCoordinatesTemp); - } + mActivity.getDragLayer().mapCoordInSelfToDescendant(target.getDropView(), + mCoordinatesTemp); mDragObject.x = mCoordinatesTemp[0]; mDragObject.y = mCoordinatesTemp[1]; return target; diff --git a/src/com/android/launcher3/dragndrop/DragLayer.java b/src/com/android/launcher3/dragndrop/DragLayer.java index d32bbe3626..41b42b659b 100644 --- a/src/com/android/launcher3/dragndrop/DragLayer.java +++ b/src/com/android/launcher3/dragndrop/DragLayer.java @@ -124,7 +124,6 @@ public class DragLayer extends BaseDragLayer<Launcher> implements LauncherOverla @Override public void recreateControllers() { - super.recreateControllers(); mControllers = mContainer.createTouchControllers(); } diff --git a/src/com/android/launcher3/dragndrop/DragView.java b/src/com/android/launcher3/dragndrop/DragView.java index 605762c84d..2b7e218491 100644 --- a/src/com/android/launcher3/dragndrop/DragView.java +++ b/src/com/android/launcher3/dragndrop/DragView.java @@ -20,8 +20,6 @@ import static android.view.View.MeasureSpec.EXACTLY; import static android.view.View.MeasureSpec.makeMeasureSpec; import static com.android.launcher3.LauncherAnimUtils.VIEW_ALPHA; -import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APPWIDGET; -import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; import static com.android.launcher3.icons.FastBitmapDrawable.getDisabledColorFilter; import static com.android.launcher3.util.Executors.MODEL_EXECUTOR; @@ -60,7 +58,6 @@ import androidx.dynamicanimation.animation.SpringAnimation; import androidx.dynamicanimation.animation.SpringForce; import com.android.app.animation.Interpolators; -import com.android.launcher3.Flags; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.graphics.ThemeManager; @@ -121,7 +118,6 @@ public abstract class DragView<T extends Context & ActivityContext> extends Fram private SpringFloatValue mTranslateX, mTranslateY; private Path mScaledMaskPath; private Drawable mBadge; - private int mItemType; public DragView(T launcher, Drawable drawable, int registrationX, int registrationY, final float initialScale, final float scaleOnDrop, @@ -250,7 +246,6 @@ public abstract class DragView<T extends Context & ActivityContext> extends Fram */ @TargetApi(Build.VERSION_CODES.O) public void setItemInfo(final ItemInfo info) { - mItemType = info.itemType; // Load the adaptive icon on a background thread and add the view in ui thread. MODEL_EXECUTOR.getHandler().postAtFrontOfQueue(() -> { ThemeManager themeManager = ThemeManager.INSTANCE.get(getContext()); @@ -634,14 +629,7 @@ public abstract class DragView<T extends Context & ActivityContext> extends Fram for (int i = dragLayer.getChildCount() - 1; i >= 0; i--) { View child = dragLayer.getChildAt(i); if (child instanceof DragView) { - // Widgets uses a listener to remove views. - // When widgets are dropped from another window, we don't want to remove the - // dragView on resume of launcher. - if (Flags.enableWidgetPickerRefactor() - && ((DragView<?>) child).mItemType != ITEM_TYPE_APPWIDGET - && ((DragView<?>) child).mItemType != ITEM_TYPE_DEEP_SHORTCUT) { - dragLayer.removeView(child); - } + dragLayer.removeView(child); } } } diff --git a/src/com/android/launcher3/dragndrop/LauncherDragController.java b/src/com/android/launcher3/dragndrop/LauncherDragController.java index 97de057ab3..dd433c02d3 100644 --- a/src/com/android/launcher3/dragndrop/LauncherDragController.java +++ b/src/com/android/launcher3/dragndrop/LauncherDragController.java @@ -51,8 +51,6 @@ import com.android.launcher3.widget.util.WidgetDragScaleUtils; */ public class LauncherDragController extends DragController<Launcher> { - public static final String TAG = "LauncherDragController"; - private static final boolean PROFILE_DRAWING_DURING_DRAG = false; private final FlingToDeleteHelper mFlingToDeleteHelper; @@ -153,7 +151,9 @@ public class LauncherDragController extends DragController<Launcher> { initialDragViewScale, dragViewScaleOnDrop, scalePx); - + // During a drag, we don't want to expose the descendendants of drag view to a11y users, + // since those decendents are not a valid position in the workspace. + dragView.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS); dragView.setItemInfo(dragInfo); mDragObject.dragComplete = false; @@ -161,7 +161,6 @@ public class LauncherDragController extends DragController<Launcher> { mDragObject.yOffset = mMotionDown.y - (dragLayerY + dragRegionTop); mDragDriver = DragDriver.create(this, mOptions, mFlingToDeleteHelper::recordMotionEvent); - prepareViewForAccessibility(dragView); if (!mOptions.isAccessibleDrag) { mDragObject.stateAnnouncer = DragViewStateAnnouncer.createFor(dragView); } @@ -199,21 +198,6 @@ public class LauncherDragController extends DragController<Launcher> { return dragView; } - /** - * During a drag, we don't want to expose the descendants of drag view to a11y users, - * since those descendants are not a valid position in the workspace. - * We need to go through the children because the view itself is important for - * accessibility, basically we are implementing: - * IMPORTANT_FOR_ACCESSIBILITY_YES_HIDE_DESCENDANTS - */ - void prepareViewForAccessibility(DragView dragView) { - for (int i = 0; i < dragView.getChildCount(); i++) { - dragView.getChildAt(i).setImportantForAccessibility( - View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS - ); - } - } - /** * Returns the scale in terms of pixels (to be applied on width) to scale the preview @@ -237,11 +221,6 @@ public class LauncherDragController extends DragController<Launcher> { draggedViewWidthPx, draggedViewHeightPx, dragInfo); } - @Override - public String dump() { - return TAG; - } - @Override protected void exitDrag() { if (!mIsInPreDrag && !mActivity.isInState(EDIT_MODE)) { diff --git a/src/com/android/launcher3/dragndrop/SimpleDragLayer.java b/src/com/android/launcher3/dragndrop/SimpleDragLayer.java index 1ed9c68482..e42ba7261b 100644 --- a/src/com/android/launcher3/dragndrop/SimpleDragLayer.java +++ b/src/com/android/launcher3/dragndrop/SimpleDragLayer.java @@ -39,7 +39,6 @@ public class SimpleDragLayer<T extends Context & ActivityContext> extends BaseDr @Override public void recreateControllers() { - super.recreateControllers(); mControllers = new TouchController[] {}; } } diff --git a/src/com/android/launcher3/folder/ClippedFolderIconLayoutRule.java b/src/com/android/launcher3/folder/ClippedFolderIconLayoutRule.java index 1f03954c5c..fedc1181c2 100644 --- a/src/com/android/launcher3/folder/ClippedFolderIconLayoutRule.java +++ b/src/com/android/launcher3/folder/ClippedFolderIconLayoutRule.java @@ -7,15 +7,15 @@ public class ClippedFolderIconLayoutRule { public static final int MAX_NUM_ITEMS_IN_PREVIEW = 4; private static final int MIN_NUM_ITEMS_IN_PREVIEW = 2; - public static final float MIN_SCALE = 0.44f; - public static final float MAX_SCALE = 0.51f; - + private static final float MIN_SCALE = 0.44f; + private static final float MAX_SCALE = 0.51f; // TODO: figure out exact radius for different icons + private static final float MAX_RADIUS_DILATION_SHAPES = 0.15f; private static final float MAX_RADIUS_DILATION = 0.25f; // The max amount of overlap the preview items can go outside of the background bounds. public static final float ICON_OVERLAP_FACTOR = 1 + (MAX_RADIUS_DILATION / 2f); + public static final float ICON_OVERLAP_FACTOR_SHAPES = 1f; private static final float ITEM_RADIUS_SCALE_FACTOR = 1.15f; - private static final float ITEM_RADIUS_SCALE_FACTOR_SHAPES = 1.2f; public static final int EXIT_INDEX = -2; public static final int ENTER_INDEX = -3; @@ -27,34 +27,18 @@ public class ClippedFolderIconLayoutRule { private float mIconSize; private boolean mIsRtl; private float mBaselineIconScale; - private int mNumFolderColumns; - /** - * initialize the layout rule - */ - public void init(int availableSpace, float intrinsicIconSize, boolean rtl, - int numFolderColumns) { + public void init(int availableSpace, float intrinsicIconSize, boolean rtl) { mAvailableSpace = availableSpace; - mRadius = ( - Flags.enableLauncherIconShapes() - ? ITEM_RADIUS_SCALE_FACTOR_SHAPES - : ITEM_RADIUS_SCALE_FACTOR) * availableSpace / 2f; + mRadius = ITEM_RADIUS_SCALE_FACTOR * availableSpace / 2f; mIconSize = intrinsicIconSize; mIsRtl = rtl; mBaselineIconScale = availableSpace / intrinsicIconSize; - mNumFolderColumns = numFolderColumns; } - /** - * Computes positions for icons in Preview. - * - * @param index index of icon in folder - * @param curNumItems current number of preview items - * @param params params to update for icon - */ public PreviewItemDrawingParams computePreviewItemDrawingParams(int index, int curNumItems, PreviewItemDrawingParams params) { - float totalScale = scaleForItem(curNumItems, 0); + float totalScale = scaleForItem(curNumItems); float transX; float transY; @@ -69,6 +53,20 @@ public class ClippedFolderIconLayoutRule { } else if (index >= MAX_NUM_ITEMS_IN_PREVIEW) { // Items beyond those displayed in the preview are animated to the center mTmpPoint[0] = mTmpPoint[1] = mAvailableSpace / 2 - (mIconSize * totalScale) / 2; + } else if (Flags.enableLauncherIconShapes()) { + if (index == 0) { + // top left + getGridPosition(0, 0, mTmpPoint); + } else if (index == 1) { + // top right + getGridPosition(0, 1, mTmpPoint); + } else if (index == 2) { + // bottom left + getGridPosition(1, 0, mTmpPoint); + } else if (index == 3) { + // bottom right + getGridPosition(1, 1, mTmpPoint); + } } else { getPosition(index, curNumItems, mTmpPoint); } @@ -84,44 +82,12 @@ public class ClippedFolderIconLayoutRule { return params; } - /** - * Computes positions for icons in folder as part of spring animation. Here both preview icons - * and the rest of the content icons are animated along the same grid. - * - * @param index index of icon in folder - * @param numItemsInPage current number of items in page - * @param params params to update for icon - */ - public PreviewItemDrawingParams computeSpringAnimationItemParams(int index, int numItemsInPage, - int page, PreviewItemDrawingParams params) { - float totalScale = scaleForItem(numItemsInPage, page); - float transX; - float transY; - - if (numItemsInPage <= MAX_NUM_ITEMS_IN_PREVIEW) { - getPosition(index, numItemsInPage, mTmpPoint); - } else { - getGridPosition(index / mNumFolderColumns, index % mNumFolderColumns, mTmpPoint); - } - - transX = mTmpPoint[0]; - transY = mTmpPoint[1]; - - if (params == null) { - params = new PreviewItemDrawingParams(transX, transY, totalScale); - } else { - params.update(transX, transY, totalScale); - } - return params; - } - - /** * Builds a grid based on the positioning of the items when there are * {@link #MAX_NUM_ITEMS_IN_PREVIEW} in the preview. * * Positions in the grid: 0 1 // 0 is row 0, col 1 - * 2 3 // 3 is row 1, col 1` + * 2 3 // 3 is row 1, col 1 */ private void getGridPosition(int row, int col, float[] result) { // We use position 0 and 3 to calculate the x and y distances between items. @@ -137,6 +103,7 @@ public class ClippedFolderIconLayoutRule { result[1] = top + (row * dy); } + // b/392610664 TODO: Change positioning from circular geometry to square / grid-based. private void getPosition(int index, int curNumItems, float[] result) { // The case of two items is homomorphic to the case of one. curNumItems = Math.max(curNumItems, 2); @@ -165,41 +132,27 @@ public class ClippedFolderIconLayoutRule { index = 3; } - float radius = getRadius(curNumItems); + // We bump the radius up between 0 and MAX_RADIUS_DILATION % as the number of items increase + float radiusDilation = Flags.enableLauncherIconShapes() ? MAX_RADIUS_DILATION_SHAPES + : MAX_RADIUS_DILATION; + float radius = mRadius * (1 + radiusDilation * (curNumItems - MIN_NUM_ITEMS_IN_PREVIEW) + / (MAX_NUM_ITEMS_IN_PREVIEW - MIN_NUM_ITEMS_IN_PREVIEW)); double theta = theta0 + index * (2 * Math.PI / curNumItems) * direction; - float halfIconSize = (mIconSize * scaleForItem(curNumItems, 0)) / 2; + + float halfIconSize = (mIconSize * scaleForItem(curNumItems)) / 2; // Map the location along the circle, and offset the coordinates to represent the center // of the icon, and to be based from the top / left of the preview area. The y component // is inverted to match the coordinate system. result[0] = mAvailableSpace / 2 + (float) (radius * Math.cos(theta) / 2) - halfIconSize; - result[1] = mAvailableSpace / 2 + (float) (-radius * Math.sin(theta) / 2) - halfIconSize; + result[1] = mAvailableSpace / 2 + (float) (- radius * Math.sin(theta) / 2) - halfIconSize; + } - private float getRadius(int numItems) { - float radiusDilation = Flags.enableLauncherIconShapes() ? radiusDilationForItems(numItems) - : MAX_RADIUS_DILATION; - if (Flags.enableLauncherIconShapes()) { - // Just give custom radius weights for each # of icons. - return mRadius * (1 + radiusDilation); - } else { - // Increase radius from 0 up to MAX_RADIUS_DILATION as the number of items increases. - return mRadius * (1 + radiusDilation * (numItems - MIN_NUM_ITEMS_IN_PREVIEW) - / (MAX_NUM_ITEMS_IN_PREVIEW - MIN_NUM_ITEMS_IN_PREVIEW)); - } - } - - /** - * Calculate Scale for Preview Icons based on current page and number of items in page. - * @param numItems number of items in page - * @param page current page of Folder - * @return scale for icons in Folder - */ - public float scaleForItem(int numItems, int page) { - float scale; - if (page > 0) { - scale = MIN_SCALE; - } else if (numItems <= 3) { + public float scaleForItem(int numItems) { + // Scale is determined by the number of items in the preview. + final float scale; + if (numItems <= 3 && !Flags.enableLauncherIconShapes()) { scale = MAX_SCALE; } else { scale = MIN_SCALE; @@ -207,17 +160,18 @@ public class ClippedFolderIconLayoutRule { return scale * mBaselineIconScale; } - private float radiusDilationForItems(int numItems) { - if (numItems == 3) { - return 0.15f; - } else if (numItems == MAX_NUM_ITEMS_IN_PREVIEW) { - return 0.12f; - } else { - return 0; - } - } - public float getIconSize() { return mIconSize; } + + /** + * Gets correct constant for icon overlap. + */ + public static float getIconOverlapFactor() { + if (Flags.enableLauncherIconShapes()) { + return ICON_OVERLAP_FACTOR_SHAPES; + } else { + return ICON_OVERLAP_FACTOR; + } + } } diff --git a/src/com/android/launcher3/folder/Folder.java b/src/com/android/launcher3/folder/Folder.java index cc49e09c3f..d48361e1fe 100644 --- a/src/com/android/launcher3/folder/Folder.java +++ b/src/com/android/launcher3/folder/Folder.java @@ -28,8 +28,6 @@ import static com.android.launcher3.folder.FolderGridOrganizer.createFolderGridO import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_FOLDER_LABEL_UPDATED; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ITEM_DROP_COMPLETED; import static com.android.launcher3.model.data.FolderInfo.willAcceptItemType; -import static com.android.launcher3.pageindicators.PaginationArrow.DISABLED_ARROW_OPACITY; -import static com.android.launcher3.pageindicators.PaginationArrow.FULLY_OPAQUE; import static com.android.launcher3.testing.shared.TestProtocol.FOLDER_OPENED_MESSAGE; import static com.android.launcher3.util.window.RefreshRateTracker.getSingleFrameMs; @@ -44,10 +42,8 @@ import android.graphics.Canvas; import android.graphics.Insets; import android.graphics.Path; import android.graphics.Rect; -import android.graphics.Typeface; import android.graphics.drawable.Drawable; import android.graphics.drawable.GradientDrawable; -import android.hardware.input.InputManager; import android.os.Looper; import android.text.InputType; import android.text.Selection; @@ -57,8 +53,6 @@ import android.util.Log; import android.util.Pair; import android.util.TypedValue; import android.view.FocusFinder; -import android.view.Gravity; -import android.view.InputDevice; import android.view.KeyEvent; import android.view.LayoutInflater; import android.view.MotionEvent; @@ -68,14 +62,12 @@ import android.view.WindowInsets; import android.view.accessibility.AccessibilityEvent; import android.view.animation.AnimationUtils; import android.view.inputmethod.EditorInfo; -import android.widget.LinearLayout; import android.widget.TextView; import androidx.annotation.IntDef; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; -import androidx.annotation.WorkerThread; import androidx.core.content.res.ResourcesCompat; import androidx.core.view.WindowInsetsCompat; @@ -86,7 +78,6 @@ import com.android.launcher3.DeviceProfile; import com.android.launcher3.DragSource; import com.android.launcher3.DropTarget; import com.android.launcher3.ExtendedEditText; -import com.android.launcher3.Flags; import com.android.launcher3.Launcher; import com.android.launcher3.OnAlarmListener; import com.android.launcher3.R; @@ -97,11 +88,9 @@ import com.android.launcher3.accessibility.FolderAccessibilityHelper; import com.android.launcher3.anim.KeyboardInsetAnimationCallback; import com.android.launcher3.compat.AccessibilityManagerCompat; import com.android.launcher3.config.FeatureFlags; -import com.android.launcher3.dagger.LauncherComponentProvider; +import com.android.launcher3.dragndrop.DragController; import com.android.launcher3.dragndrop.DragController.DragListener; import com.android.launcher3.dragndrop.DragOptions; -import com.android.launcher3.graphics.ShapeDelegate; -import com.android.launcher3.graphics.ThemeManager; import com.android.launcher3.logger.LauncherAtom.FromState; import com.android.launcher3.logger.LauncherAtom.ToState; import com.android.launcher3.logging.StatsLogManager; @@ -111,7 +100,6 @@ import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.WorkspaceItemFactory; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.pageindicators.PageIndicatorDots; -import com.android.launcher3.pageindicators.PaginationArrow; import com.android.launcher3.util.Executors; import com.android.launcher3.util.LauncherBindableItemsContainer; import com.android.launcher3.util.Themes; @@ -145,9 +133,9 @@ import app.lawnchair.util.LawnchairUtilsKt; * Represents a set of icons chosen by the user or generated by the system. */ public class Folder extends AbstractFloatingView implements ClipPathView, DragSource, - View.OnLongClickListener, DropTarget, TextView.OnEditorActionListener, - View.OnFocusChangeListener, DragListener, ExtendedEditText.OnBackKeyListener, - LauncherBindableItemsContainer { + View.OnLongClickListener, DropTarget, TextView.OnEditorActionListener, + View.OnFocusChangeListener, DragListener, ExtendedEditText.OnBackKeyListener, + LauncherBindableItemsContainer { private static final String TAG = "Launcher.Folder"; private static final boolean DEBUG = false; @@ -218,6 +206,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo protected LauncherDelegate mLauncherDelegate; protected final ActivityContext mActivityContext; + protected DragController mDragController; public FolderInfo mInfo; private CharSequence mFromTitle; private FromState mFromLabelState; @@ -229,10 +218,8 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo FolderPagedView mContent; FolderNameEditText mFolderName; private PageIndicatorDots mPageIndicator; - private PaginationArrow mLeftArrow; - private PaginationArrow mRightArrow; - protected LinearLayout mFooter; + protected View mFooter; private int mFooterHeight; // Cell ranks used for drag and drop @@ -242,14 +229,14 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo private Path mClipPath; @ViewDebug.ExportedProperty(category = "launcher", - mapping = { - @ViewDebug.IntToString(from = STATE_CLOSED, to = "STATE_CLOSED"), - @ViewDebug.IntToString(from = STATE_ANIMATING, to = "STATE_ANIMATING"), - @ViewDebug.IntToString(from = STATE_OPEN, to = "STATE_OPEN"), - }) + mapping = { + @ViewDebug.IntToString(from = STATE_CLOSED, to = "STATE_CLOSED"), + @ViewDebug.IntToString(from = STATE_ANIMATING, to = "STATE_ANIMATING"), + @ViewDebug.IntToString(from = STATE_OPEN, to = "STATE_OPEN"), + }) private int mState = STATE_CLOSED; private final List<OnFolderStateChangedListener> mOnFolderStateChangedListeners = - new ArrayList<>(); + new ArrayList<>(); private OnFolderStateChangedListener mPriorityOnFolderStateChangedListener; @ViewDebug.ExportedProperty(category = "launcher") private boolean mRearrangeOnClose = false; @@ -306,8 +293,8 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo setFocusableInTouchMode(true); mBackground = (GradientDrawable) Objects.requireNonNull( - ResourcesCompat.getDrawable(getResources(), - R.drawable.round_rect_folder, getContext().getTheme())); + ResourcesCompat.getDrawable(getResources(), + R.drawable.round_rect_folder, getContext().getTheme())); mBackground.setCallback(this); preferenceManager2 = PreferenceManager2.INSTANCE.get(context); } @@ -324,7 +311,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo final int paddingLeftRight = dp.folderContentPaddingLeftRight; mBackground = DrawableTokens.RoundRectFolder.resolve(getContext()); - // pE-TODO: this is interesting, we can customise this. + // TODO-Myself: this is interesting, we can customise this. var alpha = LawnchairUtilsKt.getFolderBackgroundAlpha(getContext()); mBackground.setAlpha(alpha); @@ -333,20 +320,24 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo mContent.setFolder(this); mPageIndicator = findViewById(R.id.folder_page_indicator); + if (enableLauncherVisualRefresh()) { + MarginLayoutParams params = ((MarginLayoutParams) mPageIndicator.getLayoutParams()); + int horizontalMargin = getContext().getResources() + .getDimensionPixelSize(R.dimen.folder_footer_horiz_padding); + params.setMarginStart(horizontalMargin); + params.setMarginEnd(horizontalMargin); + } mFooter = findViewById(R.id.folder_footer); mFooterHeight = dp.folderFooterHeightPx; mFolderName = findViewById(R.id.folder_name); - if (Flags.enableLauncherVisualRefresh()) { - mFolderName.setTypeface(Typeface.create("google-sans-flex", Typeface.NORMAL)); - } mFolderName.setTextSize(TypedValue.COMPLEX_UNIT_PX, dp.folderLabelTextSizePx); mFolderName.setOnBackKeyListener(this); mFolderName.setOnEditorActionListener(this); mFolderName.setSelectAllOnFocus(true); mFolderName.setInputType(mFolderName.getInputType() - & ~InputType.TYPE_TEXT_FLAG_AUTO_CORRECT - | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS - | InputType.TYPE_TEXT_FLAG_CAP_WORDS); + & ~InputType.TYPE_TEXT_FLAG_AUTO_CORRECT + | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS + | InputType.TYPE_TEXT_FLAG_CAP_WORDS); mFolderName.forceDisableSuggestions(true); @ColorInt @@ -362,76 +353,6 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo mKeyboardInsetAnimationCallback = new KeyboardInsetAnimationCallback(this); setWindowInsetsAnimationCallback(mKeyboardInsetAnimationCallback); } - - if (enableLauncherVisualRefresh()) { - // pE-TODO(QPR1): Investigate -// mLeftArrow = findViewById(R.id.left_indicator_arrow); -// mRightArrow = findViewById(R.id.right_indicator_arrow); -// mRightArrow.setOnClickListener(v -> mContent.snapToPage( -// mContent.getCurrentPage() + 1)); -// mLeftArrow.setOnClickListener(v -> mContent.snapToPage( -// mContent.getCurrentPage() - 1)); - } - } - - /** - * If indicator is visible, set margin between folder title and indicator. Also properly show - * arrows if pointer is enabled and indicator is visible. - */ - public void onIndicatorVisibilityChanged() { - if (mPageIndicator.getVisibility() == View.VISIBLE) { - ((MarginLayoutParams) mFolderName.getLayoutParams()).setMarginEnd( - getResources().getDimensionPixelSize(R.dimen.folder_footer_horiz_padding)); - Context ctx = getContext(); // done here to avoid getting context on bg thread - Executors.UI_HELPER_EXECUTOR.execute(() -> { - // Only show arrows if a mouse or touchpad is connected to the device - int arrowVisibility = isPointerEnabled(ctx) ? View.VISIBLE : View.GONE; - mLeftArrow.setVisibility(arrowVisibility); - mRightArrow.setVisibility(arrowVisibility); - - // If the arrows are visible, then their touch box will slightly overlap with the - // footer's padding by 8dp. Update it for proper alignment. PaddingEnd was always - // equal to paddingRight in both LTR & RTL mode, so isRtl is manually accounted for - int endPadding = getResources().getDimensionPixelSize( - arrowVisibility == View.VISIBLE - ? R.dimen.folder_footer_horiz_padding_minus_arrow_overlap - : R.dimen.folder_footer_horiz_padding); - boolean isRtl = Utilities.isRtl(getResources()); - mFooter.setPadding( - isRtl ? endPadding : mFooter.getPaddingLeft(), - mFooter.getPaddingTop(), - isRtl ? mFooter.getPaddingRight() : endPadding, - mFooter.getPaddingBottom() - ); - }); - } else { - ((MarginLayoutParams) mFolderName.getLayoutParams()).setMarginEnd(0); - mLeftArrow.setVisibility(View.GONE); - mRightArrow.setVisibility(View.GONE); - } - } - - @WorkerThread - private boolean isPointerEnabled(Context context) { - InputManager im = context.getSystemService(InputManager.class); - return Arrays.stream(im.getInputDeviceIds()) - .mapToObj(im::getInputDevice) - .anyMatch(device -> device.isEnabled() - && (device.supportsSource(InputDevice.SOURCE_MOUSE) - || device.supportsSource(InputDevice.SOURCE_TOUCHPAD))); - } - - /** - * Called when the page is switched. Sets arrow UX to a disabled appearance if the page is at - * one end or the other. - */ - public void updateArrowAlphas() { - if (enableLauncherVisualRefresh()) { - mLeftArrow.setAlpha( - 0 == mContent.getCurrentPage() ? DISABLED_ARROW_OPACITY : FULLY_OPAQUE); - mRightArrow.setAlpha(mContent.getPageCount() == mContent.getCurrentPage() + 1 - ? DISABLED_ARROW_OPACITY : FULLY_OPAQUE); - } } public boolean onLongClick(View v) { @@ -467,19 +388,19 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo } void addDragListener(DragOptions options) { - mActivityContext.getDragController().addDragListener(this); + getDragController().addDragListener(this); if (!options.isAccessibleDrag) { return; } - mActivityContext.getDragController().addDragListener(new AccessibleDragListenerAdapter( - mContent, FolderAccessibilityHelper::new) { + getDragController().addDragListener(new AccessibleDragListenerAdapter( + mContent, FolderAccessibilityHelper::new) { @Override protected void enableAccessibleDrag(boolean enable, - @Nullable DragObject dragObject) { + @Nullable DragObject dragObject) { super.enableAccessibleDrag(enable, dragObject); mFooter.setImportantForAccessibility(enable - ? IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS - : IMPORTANT_FOR_ACCESSIBILITY_AUTO); + ? IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS + : IMPORTANT_FOR_ACCESSIBILITY_AUTO); } }); } @@ -516,7 +437,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo completeDragExit(); } mIsDragInProgress = false; - mActivityContext.getDragController().removeDragListener(this); + getDragController().removeDragListener(this); } public void startEditingFolderName() { @@ -533,7 +454,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo if (DEBUG) { Log.d(TAG, "onBackKey newTitle=" + newTitle); } - mInfo.setTitle(newTitle, mActivityContext.getModelWriter()); + mInfo.setTitle(newTitle, mLauncherDelegate.getModelWriter()); mFolderIcon.onTitleChanged(newTitle); if (TextUtils.isEmpty(mInfo.title)) { @@ -544,8 +465,8 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo } sendCustomAccessibilityEvent( - this, AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED, - getContext().getString(R.string.folder_renamed, newTitle)); + this, AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED, + getContext().getString(R.string.folder_renamed, newTitle)); // This ensures that focus is gained every time the field is clicked, which selects all // the text and brings up the soft keyboard if necessary. @@ -559,7 +480,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (DEBUG) { Log.d(TAG, "onEditorAction actionId=" + actionId + " key=" - + (event != null ? event.getKeyCode() : "null event")); + + (event != null ? event.getKeyCode() : "null event")); } if (actionId == EditorInfo.IME_ACTION_DONE) { mFolderName.dispatchBackKey(); @@ -571,8 +492,6 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo @Override public WindowInsets onApplyWindowInsets(WindowInsets windowInsets) { this.setTranslationY(0); - - // Lawnchair-TODO: Keyboard too close to Folder name edit? try { if (windowInsets.isVisible(WindowInsets.Type.ime())) { @@ -607,8 +526,17 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo return mFolderIcon; } + DragController getDragController() { + return mDragController; + } + + void setDragController(DragController dragController) { + mDragController = dragController; + } + public void setFolderIcon(FolderIcon icon) { mFolderIcon = icon; + mLauncherDelegate.init(this, icon); } @Override @@ -698,12 +626,12 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo } mFolderName.showKeyboard(); mFolderName.displayCompletions( - Stream.of(mInfo.suggestedFolderNames.getLabels()) - .filter(Objects::nonNull) - .map(Object::toString) - .filter(s -> !s.isEmpty()) - .filter(s -> !s.equalsIgnoreCase(mFolderName.getText().toString())) - .collect(Collectors.toList())); + Stream.of(mInfo.suggestedFolderNames.getLabels()) + .filter(Objects::nonNull) + .map(Object::toString) + .filter(s -> !s.isEmpty()) + .filter(s -> !s.equalsIgnoreCase(mFolderName.getText().toString())) + .collect(Collectors.toList())); } } @@ -717,12 +645,12 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo @SuppressLint("InflateParams") static <T extends Context & ActivityContext> Folder fromXml(T activityContext) { return (Folder) LayoutInflater.from(activityContext).cloneInContext(activityContext) - .inflate(R.layout.user_folder_icon_normalized, null); + .inflate(R.layout.user_folder_icon_normalized, null); } private void addAnimationStartListeners(AnimatorSet a) { mLauncherDelegate.forEachVisibleWorkspacePage( - visiblePage -> addAnimatorListenerForPage(a, (CellLayout) visiblePage)); + visiblePage -> addAnimatorListenerForPage(a, (CellLayout) visiblePage)); a.addListener(new AnimatorListenerAdapter() { @Override @@ -781,7 +709,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo // Since this folder opened by another controller, it might not get onDrop or // onDropComplete. Perform cleanup once drag-n-drop ends. - mActivityContext.getDragController().addDragListener(this); + getDragController().addDragListener(this); ArrayList<ItemInfo> items = new ArrayList<>(mInfo.getContents()); mEmptyCellRank = items.size(); @@ -824,22 +752,22 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo // There was a one-off crash where the folder had a parent already. if (getParent() == null) { dragLayer.addView(this); - mActivityContext.getDragController().addDropTarget(this); + getDragController().addDropTarget(this); } else { if (FeatureFlags.IS_STUDIO_BUILD) { Log.e(TAG, "Opening folder (" + this + ") which already has a parent:" - + getParent()); + + getParent()); } } Log.d("b/383526431", "animateOpen: content child count before: " - + mContent.getTotalChildCount()); + + mContent.getTotalChildCount()); mContent.completePendingPageChanges(); mContent.setCurrentPage(pageNo); Log.d("b/383526431", "animateOpen: content child count after pending page" - + " changes: " + mContent.getTotalChildCount()); + + " changes: " + mContent.getTotalChildCount()); // This is set to true in close(), but isn't reset to false until onDropCompleted(). This // leads to an inconsistent state if you drag out of the folder and drag back in without @@ -848,12 +776,10 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo cancelRunningAnimations(); Log.d("b/383526431", "animateOpen: content child count after cancelling" - + " animation: " + mContent.getTotalChildCount()); - - AnimatorSet animatorSet = getFolderAnimationManager() - .createAnimatorSet(/* isOpening */ true); - - animatorSet.addListener(new AnimatorListenerAdapter() { + + " animation: " + mContent.getTotalChildCount()); + FolderAnimationManager fam = new FolderAnimationManager(this, true /* isOpening */); + AnimatorSet anim = fam.getAnimator(); + anim.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationStart(Animator animation) { mFolderIcon.setIconVisible(false); @@ -865,7 +791,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo setState(STATE_OPEN); announceAccessibilityChanges(); AccessibilityManagerCompat.sendTestProtocolEventToTest(getContext(), - FOLDER_OPENED_MESSAGE); + FOLDER_OPENED_MESSAGE); mContent.setFocusOnFirstChild(); } @@ -874,7 +800,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo // Footer animation if (mContent.getPageCount() > 1 && !mInfo.hasOption(FolderInfo.FLAG_MULTI_PAGE_ANIMATION)) { int footerWidth = mContent.getDesiredWidth() - - mFooter.getPaddingLeft() - mFooter.getPaddingRight(); + - mFooter.getPaddingLeft() - mFooter.getPaddingRight(); float textWidth = mFolderName.getPaint().measureText(mFolderName.getText().toString()); float translation = (footerWidth - textWidth) / 2; @@ -884,20 +810,20 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo // Do not update the flag if we are in drag mode. The flag will be updated, when we // actually drop the icon. final boolean updateAnimationFlag = !mIsDragInProgress; - animatorSet.addListener(new AnimatorListenerAdapter() { + anim.addListener(new AnimatorListenerAdapter() { @SuppressLint("InlinedApi") @Override public void onAnimationEnd(Animator animation) { mFolderName.animate().setDuration(FOLDER_NAME_ANIMATION_DURATION) - .translationX(0) - .setInterpolator(AnimationUtils.loadInterpolator( - getContext(), android.R.interpolator.fast_out_slow_in)); + .translationX(0) + .setInterpolator(AnimationUtils.loadInterpolator( + getContext(), android.R.interpolator.fast_out_slow_in)); mPageIndicator.playEntryAnimation(); if (updateAnimationFlag) { mInfo.setOption(FolderInfo.FLAG_MULTI_PAGE_ANIMATION, true, - mActivityContext.getModelWriter()); + mLauncherDelegate.getModelWriter()); } } }); @@ -910,18 +836,16 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo // b/282158620 because setCurrentPlayTime() below will start animator, we need to register // {@link AnimatorListener} before it so that {@link AnimatorListener#onAnimationStart} can // be called to register mCurrentAnimator, which will be used to cancel animator - addAnimationStartListeners(animatorSet); + addAnimationStartListeners(anim); // Because t=0 has the folder match the folder icon, we can skip the // first frame and have the same movement one frame earlier. Log.d("b/311077782", "Folder.animateOpen"); - animatorSet.setCurrentPlayTime(Math.min( - getSingleFrameMs(getContext()), animatorSet.getTotalDuration())); - animatorSet.start(); - + anim.setCurrentPlayTime(Math.min(getSingleFrameMs(getContext()), anim.getTotalDuration())); + anim.start(); // Make sure the folder picks up the last drag move even if the finger doesn't move. - if (mActivityContext.getDragController().isDragging()) { - mActivityContext.getDragController().forceTouchMove(); + if (getDragController().isDragging()) { + getDragController().forceTouchMove(); } mContent.verifyVisibleHighResIcons(mContent.getNextPage()); } @@ -937,20 +861,6 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo return true; } - private FolderAnimationCreator getFolderAnimationManager() { - boolean shouldUseSpringMotion = Flags.enableLauncherIconShapes() - && Flags.enableExpressiveFolderExpansion(); - if (shouldUseSpringMotion) { - ShapeDelegate shapeDelegate = - ThemeManager.INSTANCE.get(mActivityContext.asContext()).getFolderShape(); - return new FolderAnimationSpringBuilderManager( - this, shapeDelegate, mLauncherDelegate - ); - } else { - return new FolderAnimationManager(this); - } - } - /** * If there's a folder already open, we want to close it before opening another one. */ @@ -996,7 +906,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo // Notify the accessibility manager that this folder "window" has disappeared and no // longer occludes the workspace items mActivityContext.getDragLayer().sendAccessibilityEvent( - AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED); + AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED); } private void cancelRunningAnimations() { @@ -1022,10 +932,8 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo mContent.snapToPageImmediately(mContent.getDestinationPage()); cancelRunningAnimations(); - AnimatorSet animatorSet = getFolderAnimationManager() - .createAnimatorSet(/* isOpening */ false); - - animatorSet.addListener(new AnimatorListenerAdapter() { + AnimatorSet a = new FolderAnimationManager(this, false /* isOpening */).getAnimator(); + a.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationStart(Animator animation) { if (Utilities.ATLEAST_R) { @@ -1046,14 +954,14 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo mIsAnimatingClosed = false; } }); - addAnimationStartListeners(animatorSet); - animatorSet.start(); + addAnimationStartListeners(a); + a.start(); } @Override protected Pair<View, String> getAccessibilityTarget() { return Pair.create(mContent, mIsOpen ? mContent.getAccessibilityDescription() - : getContext().getString(R.string.folder_closed)); + : getContext().getString(R.string.folder_closed)); } @Override @@ -1068,7 +976,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo if (parent != null) { parent.removeView(this); } - mActivityContext.getDragController().removeDropTarget(this); + getDragController().removeDropTarget(this); clearFocus(); if (mFolderIcon != null) { mFolderIcon.setVisibility(View.VISIBLE); @@ -1130,7 +1038,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo private int getTargetRank(DragObject d, float[] recycle) { recycle = d.getVisualCenter(recycle); return mContent.findNearestArea( - (int) recycle[0] - getPaddingLeft(), (int) recycle[1] - getPaddingTop()); + (int) recycle[0] - getPaddingLeft(), (int) recycle[1] - getPaddingTop()); } @Override @@ -1149,7 +1057,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo if (d.stateAnnouncer != null) { d.stateAnnouncer.announce(getContext().getString(R.string.move_to_position, - mTargetRank + 1)); + mTargetRank + 1)); } } @@ -1157,14 +1065,14 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo int currentPage = mContent.getNextPage(); float cellOverlap = mContent.getCurrentCellLayout().getCellWidth() - * ICON_OVERSCROLL_WIDTH_FACTOR; + * ICON_OVERSCROLL_WIDTH_FACTOR; boolean isOutsideLeftEdge = x < cellOverlap; boolean isOutsideRightEdge = x > (getWidth() - cellOverlap); if (currentPage > 0 && (mContent.mIsRtl ? isOutsideRightEdge : isOutsideLeftEdge)) { showScrollHint(SCROLL_LEFT, d); } else if (currentPage < (mContent.getPageCount() - 1) - && (mContent.mIsRtl ? isOutsideLeftEdge : isOutsideRightEdge)) { + && (mContent.mIsRtl ? isOutsideLeftEdge : isOutsideRightEdge)) { showScrollHint(SCROLL_RIGHT, d); } else { mOnScrollHintAlarm.cancelAlarm(); @@ -1253,20 +1161,20 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo @Override public void onDropCompleted(final View target, final DragObject d, - final boolean success) { + final boolean success) { if (success) { if (getItemCount() <= 1) { mDeleteFolderOnDropCompleted = true; } if (mDeleteFolderOnDropCompleted && !mItemAddedBackToSelfViaIcon - && target != this) { + && target != this) { replaceFolderWithFinalItem(); } } else { // The drag failed, we need to return the item to the folder ItemInfo info = d.dragInfo; View icon = (mCurrentDragView != null && mCurrentDragView.getTag() == info) - ? mCurrentDragView : mContent.createNewView(info); + ? mCurrentDragView : mContent.createNewView(info); ArrayList<View> views = getIconsInReadingOrder(); if (!views.contains(icon)) { info.rank = Utilities.boundToRange(info.rank, 0, views.size()); @@ -1275,7 +1183,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo mItemsInvalidated = true; executeWithContentUpdateSuppressed( - () -> mFolderIcon.onDrop(d, true /* itemReturnedOnFailedDrop */)); + () -> mFolderIcon.onDrop(d, true /* itemReturnedOnFailedDrop */)); } } @@ -1303,14 +1211,13 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo if (getItemCount() <= mContent.itemsPerPage()) { // Show the animation, next time something is added to the folder. mInfo.setOption(FolderInfo.FLAG_MULTI_PAGE_ANIMATION, false, - mActivityContext.getModelWriter()); + mLauncherDelegate.getModelWriter()); } } private void updateItemLocationsInDatabaseBatch(boolean isBind) { FolderGridOrganizer verifier = createFolderGridOrganizer( - mActivityContext.getDeviceProfile() - ).setFolderInfo(mInfo); + mActivityContext.getDeviceProfile()).setFolderInfo(mInfo); ArrayList<ItemInfo> items = new ArrayList<>(); int total = mInfo.getContents().size(); @@ -1322,12 +1229,15 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo } if (!items.isEmpty()) { - mActivityContext.getModelWriter().moveItemsInDatabase(items, mInfo.id, 0); + mLauncherDelegate.getModelWriter().moveItemsInDatabase(items, mInfo.id, 0); } if (!isBind && total > 1 /* no need to update if there's one icon */) { - LauncherComponentProvider.get(getContext()).getFolderNameSuggestionLoader() - .getSuggestedFolderName(mInfo.getAppContents(), - folderNameInfos -> mInfo.suggestedFolderNames = folderNameInfos); + Executors.MODEL_EXECUTOR.post(() -> { + FolderNameInfos nameInfos = new FolderNameInfos(); + FolderNameProvider fnp = FolderNameProvider.newInstance(getContext()); + fnp.getSuggestedFolderName(getContext(), mInfo.getAppContents(), nameInfos); + mInfo.suggestedFolderNames = nameInfos; + }); } } @@ -1376,15 +1286,15 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo protected int getContentAreaHeight() { int height = Math.min(getMaxContentAreaHeight(), - mContent.getDesiredHeight()); + mContent.getDesiredHeight()); return Math.max(height, MIN_CONTENT_DIMEN); } @VisibleForTesting int getMaxContentAreaHeight() { DeviceProfile grid = mActivityContext.getDeviceProfile(); - return grid.getDeviceProperties().getAvailableHeightPx() - grid.getTotalWorkspacePadding().y - - getFooterHeight(); + return grid.availableHeightPx - grid.getTotalWorkspacePadding().y + - getFooterHeight(); } @VisibleForTesting @@ -1423,7 +1333,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo mContent.measure(contentAreaWidthSpec, contentAreaHeightSpec); mFooter.measure(contentAreaWidthSpec, - MeasureSpec.makeMeasureSpec(mFooterHeight, MeasureSpec.EXACTLY)); + MeasureSpec.makeMeasureSpec(mFooterHeight, MeasureSpec.EXACTLY)); int folderWidth = getPaddingLeft() + getPaddingRight() + contentWidth; int folderHeight = getFolderHeight(contentHeight); @@ -1443,10 +1353,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo super.onSizeChanged(w, h, oldw, oldh); int minTitleWidth = getResources().getDimensionPixelSize(R.dimen.folder_title_min_width); if (enableLauncherVisualRefresh() && mFolderName.getMeasuredWidth() < minTitleWidth) { - ((MarginLayoutParams) mFolderName.getLayoutParams()).setMarginEnd(0); - // The post is necessary for margins to be recalculated. RTL UI is shifted otherwise. - mFolderName.post(() -> mFolderName.setVisibility(View.GONE)); - mFooter.setGravity(Gravity.END); + mFolderName.setVisibility(View.GONE); } } @@ -1497,7 +1404,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo @Override public boolean onKey(View v, int keyCode, KeyEvent event) { boolean isShiftPlusTab = keyCode == KeyEvent.KEYCODE_TAB && - event.hasModifiers(KeyEvent.META_SHIFT_ON); + event.hasModifiers(KeyEvent.META_SHIFT_ON); if (isShiftPlusTab && Folder.this.isFocused()) { return lastChild.requestFocus(); } @@ -1530,16 +1437,16 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo } PendingAddShortcutInfo pasi = d.dragInfo instanceof PendingAddShortcutInfo - ? (PendingAddShortcutInfo) d.dragInfo : null; + ? (PendingAddShortcutInfo) d.dragInfo : null; WorkspaceItemInfo pasiSi = - pasi != null ? pasi.getActivityInfo(launcher).createWorkspaceItemInfo() : null; + pasi != null ? pasi.getActivityInfo(launcher).createWorkspaceItemInfo() : null; if (pasi != null && pasiSi == null) { // There is no WorkspaceItemInfo, so we have to go through a configuration activity. pasi.container = mInfo.id; pasi.rank = mEmptyCellRank; launcher.addPendingItem(pasi, pasi.container, pasi.screenId, null, pasi.spanX, - pasi.spanY); + pasi.spanY); d.deferDragViewCleanupPostAnimation = false; mRearrangeOnClose = true; } else { @@ -1560,8 +1467,8 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo // Actually move the item in the database if it was an external drag. Call this // before creating the view, so that the ItemInfo is updated appropriately. - mActivityContext.getModelWriter().addOrMoveItemInDatabase( - si, mInfo.id, 0, si.cellX, si.cellY); + mLauncherDelegate.getModelWriter().addOrMoveItemInDatabase( + si, mInfo.id, 0, si.cellX, si.cellY); mIsExternalDrag = false; } else { currentDragView = mCurrentDragView; @@ -1602,7 +1509,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo if (mContent.getPageCount() > 1) { // The animation has already been shown while opening the folder. mInfo.setOption(FolderInfo.FLAG_MULTI_PAGE_ANIMATION, true, - mActivityContext.getModelWriter()); + mLauncherDelegate.getModelWriter()); } if (!launcher.isInState(EDIT_MODE)) { @@ -1613,7 +1520,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo d.stateAnnouncer.completeAction(R.string.item_moved); } mStatsLogManager.logger().withItemInfo(d.dragInfo).withInstanceId(d.logInstanceId) - .log(LAUNCHER_ITEM_DROP_COMPLETED); + .log(LAUNCHER_ITEM_DROP_COMPLETED); } // This is used so the item doesn't immediately appear in the folder when added. In one case @@ -1649,11 +1556,11 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo if (!mSuppressContentUpdate) { FolderGridOrganizer verifier = createFolderGridOrganizer( - mActivityContext.getDeviceProfile()).setFolderInfo(mInfo); + mActivityContext.getDeviceProfile()).setFolderInfo(mInfo); verifier.updateRankAndPos(item, rank); - mActivityContext.getModelWriter().addOrMoveItemInDatabase(item, mInfo.id, 0, - item.cellX, - item.cellY); + mLauncherDelegate.getModelWriter().addOrMoveItemInDatabase(item, mInfo.id, 0, + item.cellX, + item.cellY); updateItemLocationsInDatabaseBatch(false); if (mContent.areViewsBound()) { @@ -1663,7 +1570,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo updateTextViewFocus(); } - mActivityContext.getModelWriter().notifyItemModified(mInfo); + mLauncherDelegate.getModelWriter().notifyItemModified(mInfo); mFolderIcon.onItemsChanged(animate); } @@ -1671,7 +1578,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo public void removeFolderContent(boolean animate, ItemInfo... items) { List<ItemInfo> itemArray = Arrays.asList(items); if (mInfo.getContents().removeAll(itemArray)) { - mActivityContext.getModelWriter().notifyItemModified(mInfo); + mLauncherDelegate.getModelWriter().notifyItemModified(mInfo); } if (!mSuppressContentUpdate) { @@ -1700,11 +1607,6 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo return mContent.iterateOverItems((info, view) -> info == item); } - @Override - public boolean isContainerSupported(int container) { - return container == mInfo.id; - } - /** * Utility methods to iterate over items of the view */ @@ -1732,8 +1634,8 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo int totalItemsInFolder = allItems.size(); int itemsPerPage = mContent.itemsPerPage(); int numItemsOnCurrentPage = page == lastPage - ? totalItemsInFolder - (itemsPerPage * page) - : itemsPerPage; + ? totalItemsInFolder - (itemsPerPage * page) + : itemsPerPage; int startIndex = page * itemsPerPage; int endIndex = Math.min(startIndex + numItemsOnCurrentPage, allItems.size()); @@ -1754,8 +1656,8 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo post(this::startEditingFolderName); } else { StatsLogger statsLogger = mStatsLogManager.logger() - .withItemInfo(mInfo) - .withFromState(mFromLabelState); + .withItemInfo(mInfo) + .withFromState(mFromLabelState); // If the folder label is suggested, it is logged to improve prediction model. // When both old and new labels are logged together delimiter is used. @@ -1820,7 +1722,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo // Pause drag event until the scrolling is finished mScrollPauseAlarm.setOnAlarmListener(new OnScrollFinishedListener(mDragObject)); int rescrollDelay = getResources().getInteger( - R.integer.config_pageSnapAnimationDuration) + RESCROLL_EXTRA_DELAY; + R.integer.config_pageSnapAnimationDuration) + RESCROLL_EXTRA_DELAY; mScrollPauseAlarm.setAlarm(rescrollDelay); } } @@ -1899,7 +1801,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo } return false; } else if (!dl.isEventOverView(this, ev) - && mLauncherDelegate.interceptOutsideTouch(ev, dl, this)) { + && mLauncherDelegate.interceptOutsideTouch(ev, dl, this)) { return true; } } @@ -2003,6 +1905,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo mFolderName = value; } + @VisibleForTesting FolderNameEditText getFolderName() { return mFolderName; } @@ -2031,7 +1934,7 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo private int getHeightFromBottom() { BaseDragLayer.LayoutParams layoutParams = (BaseDragLayer.LayoutParams) getLayoutParams(); int folderBottomPx = layoutParams.y + layoutParams.height; - int windowBottomPx = mActivityContext.getDeviceProfile().getDeviceProperties().getHeightPx(); + int windowBottomPx = mActivityContext.getDeviceProfile().heightPx; return windowBottomPx - folderBottomPx; } diff --git a/src/com/android/launcher3/folder/FolderAnimationManager.java b/src/com/android/launcher3/folder/FolderAnimationManager.java index 63d9e27747..a480e40ea7 100644 --- a/src/com/android/launcher3/folder/FolderAnimationManager.java +++ b/src/com/android/launcher3/folder/FolderAnimationManager.java @@ -37,8 +37,6 @@ import android.view.View; import android.view.animation.AnimationUtils; import android.view.animation.Interpolator; -import androidx.annotation.NonNull; - import com.android.launcher3.BubbleTextView; import com.android.launcher3.CellLayout; import com.android.launcher3.DeviceProfile; @@ -68,7 +66,7 @@ import app.lawnchair.util.LawnchairUtilsKt; * ie. When the user taps on the FolderIcon, we immediately hide the FolderIcon and show the Folder * in its place before starting the animation. */ -public class FolderAnimationManager implements FolderAnimationCreator { +public class FolderAnimationManager { private static final float EXTRA_FOLDER_REVEAL_RADIUS_PERCENTAGE = 0.125F; private static final int FOLDER_NAME_ALPHA_DURATION = 32; @@ -83,7 +81,7 @@ public class FolderAnimationManager implements FolderAnimationCreator { private Context mContext; - private boolean mIsOpening; + private final boolean mIsOpening; private final int mDuration; private final int mDelay; @@ -100,7 +98,7 @@ public class FolderAnimationManager implements FolderAnimationCreator { private DeviceProfile mDeviceProfile; - public FolderAnimationManager(Folder folder) { + public FolderAnimationManager(Folder folder, boolean isOpening) { mFolder = folder; mContent = folder.mContent; mFolderBackground = (GradientDrawable) mFolder.getBackground(); @@ -112,7 +110,7 @@ public class FolderAnimationManager implements FolderAnimationCreator { mDeviceProfile = folder.mActivityContext.getDeviceProfile(); mPreviewVerifier = createFolderGridOrganizer(mDeviceProfile); - mIsOpening = true; + mIsOpening = isOpening; Resources res = mContent.getResources(); mDuration = res.getInteger(R.integer.config_materialFolderExpandDuration); @@ -138,10 +136,7 @@ public class FolderAnimationManager implements FolderAnimationCreator { /** * Prepares the Folder for animating between open / closed states. */ - @NonNull - @Override - public AnimatorSet createAnimatorSet(boolean isOpening) { - mIsOpening = isOpening; + public AnimatorSet getAnimator() { final BaseDragLayer.LayoutParams lp = (BaseDragLayer.LayoutParams) mFolder.getLayoutParams(); mFolderIcon.getPreviewItemManager().recomputePreviewDrawingParams(); @@ -156,7 +151,7 @@ public class FolderAnimationManager implements FolderAnimationCreator { float initialSize = (scaledRadius * 2) * scaleRelativeToDragLayer; // Match size/scale of icons in the preview - float previewScale = rule.scaleForItem(itemsInPreview.size(), 0); + float previewScale = rule.scaleForItem(itemsInPreview.size()); float previewSize = rule.getIconSize() * previewScale; float baseIconSize = getBubbleTextView(itemsInPreview.get(0)).getIconSize(); float initialScale = previewSize / baseIconSize * scaleRelativeToDragLayer; @@ -405,7 +400,7 @@ public class FolderAnimationManager implements FolderAnimationCreator { cwc.setupLp(v); // Match scale of icons in the preview of the items on the first page. - float previewScale = rule.scaleForItem(numItemsInFirstPagePreview, 0); + float previewScale = rule.scaleForItem(numItemsInFirstPagePreview); float previewSize = rule.getIconSize() * previewScale; float baseIconSize = getBubbleTextView(v).getIconSize(); float iconScale = previewSize / baseIconSize; diff --git a/src/com/android/launcher3/folder/FolderGridOrganizer.java b/src/com/android/launcher3/folder/FolderGridOrganizer.java index c7c99dbcdf..b7aa08d702 100644 --- a/src/com/android/launcher3/folder/FolderGridOrganizer.java +++ b/src/com/android/launcher3/folder/FolderGridOrganizer.java @@ -141,8 +141,11 @@ public class FolderGridOrganizer { * @return true if there was any change */ public boolean updateRankAndPos(ItemInfo item, int rank) { - if (rank != item.rank) { + Point pos = getPosForRank(rank); + if (!pos.equals(item.cellX, item.cellY) || rank != item.rank) { item.rank = rank; + item.cellX = pos.x; + item.cellY = pos.y; return true; } return false; @@ -153,13 +156,8 @@ public class FolderGridOrganizer { */ public Point getPosForRank(int rank) { int pagePos = rank % mMaxItemsPerPage; - if (mCountX == 0) { - mPoint.x = 0; - mPoint.y = 0; - } else { - mPoint.x = pagePos % mCountX; - mPoint.y = pagePos / mCountX; - } + mPoint.x = pagePos % mCountX; + mPoint.y = pagePos / mCountX; return mPoint; } diff --git a/src/com/android/launcher3/folder/FolderIcon.java b/src/com/android/launcher3/folder/FolderIcon.java index 9a89350529..51891ea288 100644 --- a/src/com/android/launcher3/folder/FolderIcon.java +++ b/src/com/android/launcher3/folder/FolderIcon.java @@ -19,7 +19,6 @@ package com.android.launcher3.folder; import static com.android.launcher3.Flags.enableCursorHoverStates; -import static com.android.launcher3.folder.ClippedFolderIconLayoutRule.ICON_OVERLAP_FACTOR; import static com.android.launcher3.folder.ClippedFolderIconLayoutRule.MAX_NUM_ITEMS_IN_PREVIEW; import static com.android.launcher3.folder.FolderGridOrganizer.createFolderGridOrganizer; import static com.android.launcher3.folder.PreviewItemManager.INITIAL_ITEM_ANIMATION_DURATION; @@ -81,6 +80,7 @@ import com.android.launcher3.model.data.FolderInfo.LabelState; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.WorkspaceItemFactory; import com.android.launcher3.model.data.WorkspaceItemInfo; +import com.android.launcher3.util.Executors; import com.android.launcher3.util.MultiTranslateDelegate; import com.android.launcher3.util.Thunk; import com.android.launcher3.views.ActivityContext; @@ -210,7 +210,7 @@ public class FolderIcon extends FrameLayout implements FloatingIconViewCompanion icon.mFolderName.setCompoundDrawablePadding(0); FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) icon.mFolderName.getLayoutParams(); if (folderInfo.container == ItemInfo.NO_ID) { - lp.topMargin = grid.getAllAppsProfile().getIconSizePx() + grid.getAllAppsProfile().getIconDrawablePaddingPx(); + lp.topMargin = grid.allAppsIconSizePx + grid.allAppsIconDrawablePaddingPx; icon.mBackground = new PreviewBackground(activity.getDragLayer().getContext()); } else { lp.topMargin = grid.iconSizePx + grid.iconDrawablePaddingPx; @@ -247,7 +247,8 @@ public class FolderIcon extends FrameLayout implements FloatingIconViewCompanion mPreviewItemManager.recomputePreviewDrawingParams(); mBackground.getBounds(outBounds); // The preview items go outside of the bounds of the background. - Utilities.scaleRectAboutCenter(outBounds, ICON_OVERLAP_FACTOR); + Utilities.scaleRectAboutCenter(outBounds, + ClippedFolderIconLayoutRule.getIconOverlapFactor()); } public float getBackgroundStrokeWidth() { @@ -392,8 +393,7 @@ public class FolderIcon extends FrameLayout implements FloatingIconViewCompanion // Account for potentially different icon sizes with non-default grid settings if (d.dragSource instanceof ActivityAllAppsContainerView) { DeviceProfile grid = mActivity.getDeviceProfile(); - float containerScale = (1f * grid.iconSizePx - / grid.getAllAppsProfile().getIconSizePx()); + float containerScale = (1f * grid.iconSizePx / grid.allAppsIconSizePx); finalScale *= containerScale; } @@ -410,12 +410,16 @@ public class FolderIcon extends FrameLayout implements FloatingIconViewCompanion mFolder.hideItem(item); if (!itemAdded) mPreviewItemManager.hidePreviewItem(index, true); - d.folderNameSuggestionLoader.getSuggestedFolderName(mInfo.getAppContents(), - folderNameInfos -> postDelayed(() -> { - setLabelSuggestion(folderNameInfos, d.logInstanceId); - invalidate(); - }, DROP_IN_ANIMATION_DURATION)); + FolderNameInfos nameInfos = new FolderNameInfos(); + Executors.MODEL_EXECUTOR.post(() -> { + d.folderNameProvider.getSuggestedFolderName( + getContext(), mInfo.getAppContents(), nameInfos); + postDelayed(() -> { + setLabelSuggestion(nameInfos, d.logInstanceId); + invalidate(); + }, DROP_IN_ANIMATION_DURATION); + }); } else { getFolder().addFolderContent(item); } @@ -449,7 +453,7 @@ public class FolderIcon extends FrameLayout implements FloatingIconViewCompanion CharSequence newTitle = nameInfos.getLabels()[0]; FromState fromState = mInfo.getFromLabelState(); - mInfo.setTitle(newTitle, mActivity.getModelWriter()); + mInfo.setTitle(newTitle, mFolder.mLauncherDelegate.getModelWriter()); onTitleChanged(mInfo.title); mFolder.getFolderName().setText(mInfo.title); diff --git a/src/com/android/launcher3/folder/FolderNameProvider.java b/src/com/android/launcher3/folder/FolderNameProvider.java index 3d21c1f519..8a1f96d2dd 100644 --- a/src/com/android/launcher3/folder/FolderNameProvider.java +++ b/src/com/android/launcher3/folder/FolderNameProvider.java @@ -26,11 +26,16 @@ import android.os.UserHandle; import android.text.TextUtils; import android.util.Log; +import androidx.annotation.NonNull; import androidx.annotation.WorkerThread; +import com.android.launcher3.LauncherAppState; +import com.android.launcher3.LauncherModel.ModelUpdateTask; import com.android.launcher3.R; import com.android.launcher3.Utilities; +import com.android.launcher3.model.AllAppsList; import com.android.launcher3.model.BgDataModel; +import com.android.launcher3.model.ModelTaskController; import com.android.launcher3.model.StringCache; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.CollectionInfo; @@ -38,20 +43,20 @@ import com.android.launcher3.model.data.FolderInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.util.IntSparseArrayMap; import com.android.launcher3.util.Preconditions; +import com.android.launcher3.util.ResourceBasedOverride; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.Objects; import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; -import javax.inject.Inject; - /** * Locates provider for the folder name. */ -public class FolderNameProvider { +public class FolderNameProvider implements ResourceBasedOverride { private static final String TAG = "FolderNameProvider"; private static final boolean DEBUG = false; @@ -65,17 +70,34 @@ public class FolderNameProvider { protected List<AppInfo> mAppInfos; /** - * FolderNameProvider should be constructed on a background thread always. - * If you want to inject FolderNameProvider, use {@link FolderNameSuggestionLoader} or use - * {@link javax.inject.Provider} to create the FolderNameProvider in background thread + * Retrieve instance of this object that can be overridden in runtime based on the build + * variant of the application. */ - @Inject - public FolderNameProvider() { + public static FolderNameProvider newInstance(Context context) { + FolderNameProvider fnp = Overrides.getObject(FolderNameProvider.class, + context.getApplicationContext(), R.string.folder_name_provider_class); Preconditions.assertWorkerThread(); + fnp.load(context); + + return fnp; } - public void load(List<AppInfo> appInfos, IntSparseArrayMap<CollectionInfo> folderInfos) { + public static FolderNameProvider newInstance(Context context, List<AppInfo> appInfos, + IntSparseArrayMap<CollectionInfo> folderInfos) { Preconditions.assertWorkerThread(); + FolderNameProvider fnp = Overrides.getObject(FolderNameProvider.class, + context.getApplicationContext(), R.string.folder_name_provider_class); + fnp.load(appInfos, folderInfos); + + return fnp; + } + + private void load(Context context) { + LauncherAppState.getInstance(context).getModel().enqueueModelUpdateTask( + new FolderNameWorker()); + } + + private void load(List<AppInfo> appInfos, IntSparseArrayMap<CollectionInfo> folderInfos) { mAppInfos = appInfos; mCollectionInfos = folderInfos; } @@ -173,6 +195,16 @@ public class FolderNameProvider { nameInfos.setLabel(labels.length - 1, label, 1.0f); } + private class FolderNameWorker implements ModelUpdateTask { + + @Override + public void execute(@NonNull ModelTaskController taskController, + @NonNull BgDataModel dataModel, @NonNull AllAppsList apps) { + mCollectionInfos = getCollectionForSuggestions(dataModel); + mAppInfos = Arrays.asList(apps.copyData()); + } + } + public static IntSparseArrayMap<CollectionInfo> getCollectionForSuggestions( BgDataModel dataModel) { IntSparseArrayMap<CollectionInfo> result = new IntSparseArrayMap<>(); diff --git a/src/com/android/launcher3/folder/FolderPagedView.java b/src/com/android/launcher3/folder/FolderPagedView.java index b8ac298af3..f00f2dac31 100644 --- a/src/com/android/launcher3/folder/FolderPagedView.java +++ b/src/com/android/launcher3/folder/FolderPagedView.java @@ -18,14 +18,12 @@ package com.android.launcher3.folder; import static com.android.launcher3.AbstractFloatingView.TYPE_ALL; import static com.android.launcher3.AbstractFloatingView.TYPE_FOLDER; -import static com.android.launcher3.Flags.enableLauncherVisualRefresh; import static com.android.launcher3.folder.FolderGridOrganizer.createFolderGridOrganizer; import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Canvas; import android.graphics.Path; -import android.graphics.Point; import android.util.ArrayMap; import android.util.AttributeSet; import android.util.Log; @@ -50,6 +48,7 @@ import com.android.launcher3.model.data.AppPairInfo; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.ItemInfoWithIcon; import com.android.launcher3.model.data.WorkspaceItemInfo; +import com.android.launcher3.pageindicators.Direction; import com.android.launcher3.pageindicators.PageIndicatorDots; import com.android.launcher3.util.LauncherBindableItemsContainer.ItemOperator; import com.android.launcher3.util.Thunk; @@ -132,6 +131,8 @@ public class FolderPagedView extends PagedView<PageIndicatorDots> implements Cli public void setFolder(Folder folder) { mFolder = folder; mPageIndicator = folder.findViewById(R.id.folder_page_indicator); + mPageIndicator.setArrowClickListener(direction -> snapToPageImmediately( + (Direction.END == direction) ? mCurrentPage + 1 : mCurrentPage - 1)); initParentViews(folder); } @@ -269,11 +270,12 @@ public class FolderPagedView extends PagedView<PageIndicatorDots> implements Cli icon.setOnFocusChangeListener(mFocusIndicatorHelper); CellLayoutLayoutParams lp = (CellLayoutLayoutParams) icon.getLayoutParams(); - Point pos = mOrganizer.getPosForRank(item.rank); if (lp == null) { - icon.setLayoutParams(new CellLayoutLayoutParams(pos.x, pos.y, 1, 1)); + icon.setLayoutParams(new CellLayoutLayoutParams( + item.cellX, item.cellY, item.spanX, item.spanY)); } else { - lp.setCellXY(pos); + lp.setCellX(item.cellX); + lp.setCellY(item.cellY); lp.cellHSpan = lp.cellVSpan = 1; } @@ -394,9 +396,6 @@ public class FolderPagedView extends PagedView<PageIndicatorDots> implements Cli // Update footer mPageIndicator.setVisibility(getPageCount() > 1 ? View.VISIBLE : View.GONE); - if (enableLauncherVisualRefresh()) { - mFolder.onIndicatorVisibilityChanged(); - } // Set the gravity as LEFT or RIGHT instead of START, as START depends on the actual text. int horizontalGravity = getPageCount() > 1 ? (mIsRtl ? Gravity.RIGHT : Gravity.LEFT) : Gravity.CENTER_HORIZONTAL; @@ -492,7 +491,6 @@ public class FolderPagedView extends PagedView<PageIndicatorDots> implements Cli super.notifyPageSwitchListener(prevPage); if (mFolder != null) { mFolder.updateTextViewFocus(); - mFolder.updateArrowAlphas(); } } diff --git a/src/com/android/launcher3/folder/LauncherDelegate.java b/src/com/android/launcher3/folder/LauncherDelegate.java index 2dc1dd1a8e..df702bb9ab 100644 --- a/src/com/android/launcher3/folder/LauncherDelegate.java +++ b/src/com/android/launcher3/folder/LauncherDelegate.java @@ -17,6 +17,7 @@ package com.android.launcher3.folder; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_FOLDER_CONVERTED_TO_ICON; +import android.content.Context; import android.view.MotionEvent; import android.view.View; @@ -24,14 +25,19 @@ import androidx.annotation.Nullable; import com.android.launcher3.CellLayout; import com.android.launcher3.DragSource; +import com.android.launcher3.DropTarget; import com.android.launcher3.Launcher; +import com.android.launcher3.LauncherAppState; import com.android.launcher3.dragndrop.DragOptions; +import com.android.launcher3.logging.InstanceId; import com.android.launcher3.logging.StatsLogManager.StatsLogger; +import com.android.launcher3.model.ModelWriter; import com.android.launcher3.model.data.FolderInfo; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.views.ActivityContext; import com.android.launcher3.views.BaseDragLayer; +import java.util.Optional; import java.util.function.Consumer; /** @@ -45,6 +51,11 @@ public class LauncherDelegate { mLauncher = launcher; } + void init(Folder folder, FolderIcon icon) { + folder.setDragController(mLauncher.getDragController()); + icon.setOnFocusChangeListener(mLauncher.getFocusHandler()); + } + boolean isDraggingEnabled() { return mLauncher.isDraggingEnabled(); } @@ -53,6 +64,10 @@ public class LauncherDelegate { mLauncher.getWorkspace().beginDragShared(child, source, options); } + ModelWriter getModelWriter() { + return mLauncher.getModelWriter(); + } + void forEachVisibleWorkspacePage(Consumer<View> callback) { mLauncher.getWorkspace().forEachVisiblePage(callback); } @@ -79,7 +94,8 @@ public class LauncherDelegate { CellLayout cellLayout = mLauncher.getCellLayout(info.container, mLauncher.getCellPosMapper().mapModelToPresenter(info).screenId); finalItem = info.getContents().remove(0); - newIcon = mLauncher.getItemInflater().inflateItem(finalItem, cellLayout); + newIcon = mLauncher.getItemInflater().inflateItem( + finalItem, mLauncher.getModelWriter(), cellLayout); mLauncher.getModelWriter().addOrMoveItemInDatabase(finalItem, info.container, info.screenId, info.cellX, info.cellY); } @@ -87,6 +103,9 @@ public class LauncherDelegate { // Remove the folder mLauncher.removeItem(folder.mFolderIcon, info, true /* deleteFromDb */, "folder removed because there's only 1 item in it"); + if (folder.mFolderIcon instanceof DropTarget) { + folder.mDragController.removeDropTarget((DropTarget) folder.mFolderIcon); + } if (newIcon != null) { // We add the child after removing the folder to prevent both from existing @@ -100,7 +119,7 @@ public class LauncherDelegate { if (finalItem != null) { StatsLogger logger = mLauncher.getStatsLogManager().logger() .withItemInfo(finalItem); - mLauncher.getDragController().getLogInstanceId() + ((Optional<InstanceId>) folder.mDragController.getLogInstanceId()) .map(logger::withInstanceId) .orElse(logger) .log(LAUNCHER_FOLDER_CONVERTED_TO_ICON); @@ -117,6 +136,7 @@ public class LauncherDelegate { return true; } + boolean interceptOutsideTouch(MotionEvent ev, BaseDragLayer dl, Folder folder) { if (mLauncher.getAccessibilityDelegate().isInAccessibleDrag()) { // Do not close the container if in drag and drop. @@ -134,12 +154,18 @@ public class LauncherDelegate { private static class FallbackDelegate extends LauncherDelegate { private final ActivityContext mContext; + private ModelWriter mWriter; FallbackDelegate(ActivityContext context) { super(null); mContext = context; } + @Override + void init(Folder folder, FolderIcon icon) { + folder.setDragController(mContext.getDragController()); + } + @Override boolean isDraggingEnabled() { return false; @@ -148,6 +174,15 @@ public class LauncherDelegate { @Override void beginDragShared(View child, DragSource source, DragOptions options) { } + @Override + ModelWriter getModelWriter() { + if (mWriter == null) { + mWriter = LauncherAppState.getInstance((Context) mContext).getModel().getWriter( + false, mContext.getCellPosMapper(), null); + } + return mWriter; + } + @Override void forEachVisibleWorkspacePage(Consumer<View> callback) { } @@ -169,8 +204,8 @@ public class LauncherDelegate { } static LauncherDelegate from(ActivityContext context) { - return context instanceof Launcher l - ? new LauncherDelegate(l) + return context instanceof Launcher + ? new LauncherDelegate((Launcher) context) : new FallbackDelegate(context); } } \ No newline at end of file diff --git a/src/com/android/launcher3/folder/PreviewBackground.java b/src/com/android/launcher3/folder/PreviewBackground.java index c2ba0a73f9..ef2cadbfa3 100644 --- a/src/com/android/launcher3/folder/PreviewBackground.java +++ b/src/com/android/launcher3/folder/PreviewBackground.java @@ -18,7 +18,6 @@ package com.android.launcher3.folder; import static com.android.app.animation.Interpolators.ACCELERATE_DECELERATE; import static com.android.app.animation.Interpolators.EMPHASIZED_DECELERATE; -import static com.android.launcher3.folder.ClippedFolderIconLayoutRule.ICON_OVERLAP_FACTOR; import static com.android.launcher3.icons.GraphicsUtils.setColorAlphaBound; import android.animation.Animator; @@ -404,7 +403,7 @@ public class PreviewBackground extends DelegatedCellDrawing { public Path getClipPath() { mPath.reset(); - float radius = getScaledRadius() * ICON_OVERLAP_FACTOR; + float radius = getScaledRadius() * ClippedFolderIconLayoutRule.getIconOverlapFactor(); // Find the difference in radius so that the clip path remains centered. float radiusDifference = radius - getRadius(); float offsetX = basePreviewOffsetX - radiusDifference; diff --git a/src/com/android/launcher3/folder/PreviewItemManager.java b/src/com/android/launcher3/folder/PreviewItemManager.java index d808321baf..7e58ff311b 100644 --- a/src/com/android/launcher3/folder/PreviewItemManager.java +++ b/src/com/android/launcher3/folder/PreviewItemManager.java @@ -18,7 +18,6 @@ package com.android.launcher3.folder; import static com.android.launcher3.BubbleTextView.DISPLAY_FOLDER; import static com.android.launcher3.LauncherSettings.Favorites.DESKTOP_ICON_FLAG; -import static com.android.launcher3.Utilities.dpToPx; import static com.android.launcher3.folder.ClippedFolderIconLayoutRule.ENTER_INDEX; import static com.android.launcher3.folder.ClippedFolderIconLayoutRule.EXIT_INDEX; import static com.android.launcher3.folder.ClippedFolderIconLayoutRule.MAX_NUM_ITEMS_IN_PREVIEW; @@ -126,7 +125,7 @@ public class PreviewItemManager { mIcon = icon; mIconSize = ActivityContext.lookupContext( mContext).getDeviceProfile().folderChildIconSizePx; - mClipThreshold = dpToPx(1f); + mClipThreshold = Utilities.dpToPx(1f); } /** @@ -169,11 +168,9 @@ public class PreviewItemManager { mIcon.mBackground.setup(mIcon.getContext(), mIcon.mActivity, mIcon, mTotalWidth, mIcon.getPaddingTop()); - mIcon.mPreviewLayoutRule.init( - mIcon.mBackground.previewSize, mIntrinsicIconSize, - Utilities.isRtl(mIcon.getResources()), - mIcon.mActivity.getDeviceProfile().numFolderColumns - ); + mIcon.mPreviewLayoutRule.init(mIcon.mBackground.previewSize, mIntrinsicIconSize, + Utilities.isRtl(mIcon.getResources())); + updatePreviewItems(false); } } @@ -489,7 +486,7 @@ public class PreviewItemManager { setDrawable(p, newInfo); mIcon.invalidate(); } - }, info, DESKTOP_ICON_FLAG); + }, info); } } diff --git a/src/com/android/launcher3/graphics/DragPreviewProvider.java b/src/com/android/launcher3/graphics/DragPreviewProvider.java index f5821d7c30..42083431e1 100644 --- a/src/com/android/launcher3/graphics/DragPreviewProvider.java +++ b/src/com/android/launcher3/graphics/DragPreviewProvider.java @@ -24,7 +24,6 @@ import android.graphics.Canvas; import android.graphics.Rect; import android.graphics.drawable.Drawable; import android.graphics.drawable.InsetDrawable; -import android.util.Log; import android.view.View; import androidx.annotation.Nullable; @@ -42,7 +41,6 @@ import com.android.launcher3.widget.LauncherAppWidgetHostView; * A utility class to generate preview bitmap for dragging. */ public class DragPreviewProvider { - public static final String TAG = "DragPreviewProvider"; private final Rect mTempRect = new Rect(); protected final View mView; @@ -113,19 +111,9 @@ public class DragPreviewProvider { return new InsetDrawable(drawable, xInset / 2, yInset / 2, xInset / 2, yInset / 2); } - Bitmap bitmap = + return new FastBitmapDrawable( BitmapRenderer.createHardwareBitmap(width + blurSizeOutline, - height + blurSizeOutline, (c) -> drawDragView(c, scale)); - - if (bitmap == null) { - Log.e(TAG, "Failed to create bitmap for drag preview with width: " - + width + " height: " + height); - bitmap = Bitmap.createBitmap( - width + blurSizeOutline, height + blurSizeOutline, - Bitmap.Config.ARGB_8888); - } - - return new FastBitmapDrawable(bitmap); + height + blurSizeOutline, (c) -> drawDragView(c, scale))); } /** diff --git a/src/com/android/launcher3/graphics/FragmentWithPreview.java b/src/com/android/launcher3/graphics/FragmentWithPreview.java index 9b81e11951..250eca29d1 100644 --- a/src/com/android/launcher3/graphics/FragmentWithPreview.java +++ b/src/com/android/launcher3/graphics/FragmentWithPreview.java @@ -38,8 +38,7 @@ public class FragmentWithPreview extends Fragment { return mPreviewContext != null ? mPreviewContext : getActivity(); } - /** Sets up this fragment for preview mode */ - public void enterPreviewMode(Context context) { + void enterPreviewMode(Context context) { mPreviewContext = context; } diff --git a/src/com/android/launcher3/graphics/GridCustomizationsProxy.java b/src/com/android/launcher3/graphics/GridCustomizationsProxy.java index 6c656147b0..7bd9a28416 100644 --- a/src/com/android/launcher3/graphics/GridCustomizationsProxy.java +++ b/src/com/android/launcher3/graphics/GridCustomizationsProxy.java @@ -15,28 +15,22 @@ */ package com.android.launcher3.graphics; -import static com.android.launcher3.BuildConfigs.IS_DEBUG_DEVICE; -import static com.android.launcher3.preview.PreviewSurfaceRenderer.KEY_BITMAP_GENERATION_DELAY_MS; -import static com.android.launcher3.preview.PreviewSurfaceRenderer.KEY_VIEW_HEIGHT; -import static com.android.launcher3.preview.PreviewSurfaceRenderer.KEY_VIEW_WIDTH; -import static com.android.launcher3.preview.PreviewSurfaceRenderer.MIN_BITMAP_GENERATION_DELAY_MS; + import static com.android.launcher3.graphics.ThemeManager.PREF_ICON_SHAPE; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; import static java.util.Objects.requireNonNullElse; -import static java.util.concurrent.CompletableFuture.delayedExecutor; -import static java.util.concurrent.TimeUnit.MILLISECONDS; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.MatrixCursor; -import android.graphics.Bitmap; import android.net.Uri; import android.os.Binder; import android.os.Bundle; import android.os.Handler; +import android.os.IBinder.DeathRecipient; import android.os.Message; import android.os.Messenger; import android.text.TextUtils; @@ -52,11 +46,8 @@ import com.android.launcher3.LauncherPrefs; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.model.BgDataModel; -import com.android.launcher3.preview.PreviewLifecycleObserver; -import com.android.launcher3.preview.PreviewSurfaceRenderer; import com.android.launcher3.shapes.IconShapeModel; import com.android.launcher3.shapes.ShapesProvider; -import com.android.launcher3.util.ApiWrapper; import com.android.launcher3.util.ContentProviderProxy.ProxyProvider; import com.android.launcher3.util.DaggerSingletonTracker; import com.android.launcher3.util.Executors; @@ -69,6 +60,7 @@ import java.util.Arrays; import java.util.Collections; import java.util.Comparator; import java.util.List; +import java.util.Optional; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ExecutionException; @@ -113,7 +105,7 @@ public class GridCustomizationsProxy implements ProxyProvider { private static final String KEY_PREVIEW_COUNT = "preview_count"; // is_default means if a certain option is currently set to the system private static final String KEY_IS_DEFAULT = "is_default"; - public static final String KEY_SHAPE_KEY = "shape_key"; + private static final String KEY_SHAPE_KEY = "shape_key"; private static final String KEY_SHAPE_TITLE = "shape_title"; private static final String KEY_PATH = "path"; @@ -121,25 +113,26 @@ public class GridCustomizationsProxy implements ProxyProvider { private static final String KEY_LIST_OPTIONS = "/list_options"; private static final String KEY_SHAPE_OPTIONS = "/shape_options"; // default_grid is for setting grid and shape to system settings - public static final String KEY_DEFAULT_GRID = "/default_grid"; - public static final String SET_SHAPE = "/shape"; + private static final String KEY_DEFAULT_GRID = "/default_grid"; + private static final String SET_SHAPE = "/shape"; private static final String METHOD_GET_PREVIEW = "get_preview"; - public static final String METHOD_GET_PREVIEW_BITMAP = "get_preview_bitmap"; - /** These methods are used to set monochrome theme */ private static final String GET_ICON_THEMED = "/get_icon_themed"; private static final String SET_ICON_THEMED = "/set_icon_themed"; - public static final String ICON_THEMED = "/icon_themed"; - public static final String BOOLEAN_VALUE = "boolean_value"; + private static final String ICON_THEMED = "/icon_themed"; + private static final String BOOLEAN_VALUE = "boolean_value"; private static final String KEY_SURFACE_PACKAGE = "surface_package"; private static final String KEY_CALLBACK = "callback"; public static final String KEY_HIDE_BOTTOM_ROW = "hide_bottom_row"; public static final String KEY_GRID_NAME = "grid_name"; - public static final String KEY_IMAGE = "image"; - public static final String KEY_UPDATE_METHOD = "update_method"; + private static final int MESSAGE_ID_UPDATE_PREVIEW = 1337; + private static final int MESSAGE_ID_UPDATE_SHAPE = 2586; + private static final int MESSAGE_ID_UPDATE_GRID = 7414; + private static final int MESSAGE_ID_UPDATE_COLOR = 856; + private static final int MESSAGE_ID_UPDATE_ICON_THEMED = 311; // Set of all active previews used to track duplicate memory allocations private final Set<PreviewLifecycleObserver> mActivePreviews = @@ -169,9 +162,6 @@ public class GridCustomizationsProxy implements ProxyProvider { public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { String path = uri.getPath(); - if (IS_DEBUG_DEVICE) { - Log.d(TAG, "query: path=" + path); - } if (path == null) { return null; } @@ -181,37 +171,27 @@ public class GridCustomizationsProxy implements ProxyProvider { if (Flags.newCustomizationPickerUi()) { MatrixCursor cursor = new MatrixCursor(new String[]{ KEY_SHAPE_KEY, KEY_SHAPE_TITLE, KEY_PATH, KEY_IS_DEFAULT}); - final String currentShape = mPrefs.get(PREF_ICON_SHAPE); - IconShapeModel[] availableShapes = ShapesProvider.INSTANCE.getIconShapes(); - - if (availableShapes.length == 0) { - // This is unexpected as we should always provide at least 1 default shape. - Log.e(TAG, "query: No icon shape options are available" - + ", returning null."); - return null; - } else { - Log.d(TAG, "query: Found " + availableShapes.length - + " available shape options"); + String currentShapePath = mThemeManager.getIconState().getIconMask(); + Optional<IconShapeModel> selectedShape = Arrays.stream( + ShapesProvider.INSTANCE.getIconShapes()).filter( + shape -> shape.getPathString().equals(currentShapePath) + ).findFirst(); + // Handle default for when current shape doesn't match new shapes. + if (selectedShape.isEmpty()) { + selectedShape = Optional.of(Arrays.stream( + ShapesProvider.INSTANCE.getIconShapes() + ).findFirst().get()); } - // Assign first available shape as default if current shape doesn't exist. - boolean doesCurrentShapeExist = Arrays.stream(availableShapes) - .anyMatch(shape -> shape.getKey().equals(currentShape)); - String selectedShape = !TextUtils.isEmpty(currentShape) && doesCurrentShapeExist - ? currentShape - : availableShapes[0].getKey(); - - for (IconShapeModel shape : availableShapes) { + for (IconShapeModel shape : ShapesProvider.INSTANCE.getIconShapes()) { cursor.newRow() .add(KEY_SHAPE_KEY, shape.getKey()) - .add(KEY_SHAPE_TITLE, mContext.getString(shape.getTitleId())) + .add(KEY_SHAPE_TITLE, shape.getTitle()) .add(KEY_PATH, shape.getPathString()) - .add(KEY_IS_DEFAULT, shape.getKey().equals(selectedShape)); + .add(KEY_IS_DEFAULT, shape.equals(selectedShape.get())); } return cursor; } else { - Log.w(TAG, "query: Shape options queried outside of flag" - + ", returning null."); return null; } } @@ -220,13 +200,6 @@ public class GridCustomizationsProxy implements ProxyProvider { KEY_NAME, KEY_GRID_TITLE, KEY_ROWS, KEY_COLS, KEY_PREVIEW_COUNT, KEY_IS_DEFAULT, KEY_GRID_ICON_ID}); List<GridOption> gridOptionList = mIdp.parseAllGridOptions(mContext); - if (gridOptionList.isEmpty()) { - Log.e(TAG, "query: No grid options are available, returning null."); - return null; - } else { - Log.d(TAG, "query: Found " + gridOptionList.size() - + " available grid options."); - } if (com.android.launcher3.Flags.oneGridSpecs()) { gridOptionList.sort(Comparator .comparingInt((GridOption option) -> option.numColumns) @@ -249,14 +222,10 @@ public class GridCustomizationsProxy implements ProxyProvider { case ICON_THEMED: { MatrixCursor cursor = new MatrixCursor(new String[]{BOOLEAN_VALUE}); cursor.newRow().add(BOOLEAN_VALUE, mThemeManager.isMonoThemeEnabled() ? 1 : 0); - Log.d(TAG, "query: path=" + path - + ", isMonoThemeEnabled=" + mThemeManager.isMonoThemeEnabled()); return cursor; } - default: { - Log.d(TAG, "query: path=" + path + " not found, returning null."); + default: return null; - } } } @@ -266,19 +235,13 @@ public class GridCustomizationsProxy implements ProxyProvider { if (path == null) { return 0; } - - int result = handleUpdate(path, values); - if (result != 0) { - mContext.getContentResolver().notifyChange(uri, null); - } - return result; - } - - public int handleUpdate(@NonNull String path, ContentValues values) { switch (path) { case KEY_DEFAULT_GRID: { + if (Flags.newCustomizationPickerUi()) { + mPrefs.put(PREF_ICON_SHAPE, + requireNonNullElse(values.getAsString(KEY_SHAPE_KEY), "")); + } String gridName = values.getAsString(KEY_NAME); - gridName = gridName == null ? values.getAsString(KEY_GRID_NAME) : gridName; // Verify that this is a valid grid option GridOption match = null; for (GridOption option : mIdp.parseAllGridOptions(mContext)) { @@ -291,17 +254,17 @@ public class GridCustomizationsProxy implements ProxyProvider { if (match == null) { return 0; } - mIdp.setCurrentGrid(mContext, gridName); - LauncherModel launcherModel = LauncherAppState.getInstance(mContext).getModel(); - if (Flags.newCustomizationPickerUi() && launcherModel.isActive()) { + mIdp.setCurrentGrid(mContext, gridName); + if (Flags.newCustomizationPickerUi()) { try { // Wait for device profile to be fully reloaded and applied to the launcher - loadModelSync(launcherModel); + loadModelSync(mContext); } catch (ExecutionException | InterruptedException e) { Log.e(TAG, "Fail to load model", e); } } + mContext.getContentResolver().notifyChange(uri, null); return 1; } case SET_SHAPE: @@ -313,6 +276,7 @@ public class GridCustomizationsProxy implements ProxyProvider { case ICON_THEMED: case SET_ICON_THEMED: { mThemeManager.setMonoThemeEnabled(values.getAsBoolean(BOOLEAN_VALUE)); + mContext.getContentResolver().notifyChange(uri, null); return 1; } default: @@ -323,10 +287,10 @@ public class GridCustomizationsProxy implements ProxyProvider { /** * Loads the model in memory synchronously */ - private void loadModelSync(LauncherModel launcherModel) throws ExecutionException, - InterruptedException { + private void loadModelSync(Context context) throws ExecutionException, InterruptedException { Preconditions.assertNonUiThread(); BgDataModel.Callbacks emptyCallbacks = new BgDataModel.Callbacks() { }; + LauncherModel launcherModel = LauncherAppState.getInstance(context).getModel(); MAIN_EXECUTOR.submit( () -> launcherModel.addCallbacksAndLoad(emptyCallbacks) ).get(); @@ -339,45 +303,18 @@ public class GridCustomizationsProxy implements ProxyProvider { @Override public Bundle call(@NonNull String method, String arg, Bundle extras) { - return switch (method) { - case METHOD_GET_PREVIEW -> getPreview(extras); - case METHOD_GET_PREVIEW_BITMAP -> getPreviewBitmap(extras); - default -> null; - }; - } - - private Bundle getPreviewBitmap(Bundle request) { - RunnableList lifeCycleTracker = new RunnableList(); - try { - int width = request.getInt(KEY_VIEW_WIDTH); - int height = request.getInt(KEY_VIEW_HEIGHT); - long previewDelay = Math.max(request.getLong(KEY_BITMAP_GENERATION_DELAY_MS, 0), - MIN_BITMAP_GENERATION_DELAY_MS); - - PreviewSurfaceRenderer renderer = new PreviewSurfaceRenderer( - mContext, lifeCycleTracker, request, Binder.getCallingPid(), - true /* skip animations */); - renderer.loadAsync().thenRunAsync( - () -> { }, delayedExecutor(previewDelay, MILLISECONDS, MAIN_EXECUTOR)).get(); - Bitmap previewBitmap = ApiWrapper.INSTANCE.get(mContext) - .captureSnapshot(renderer.getHost(), width, height); - - Bundle result = new Bundle(); - result.putParcelable(KEY_IMAGE, previewBitmap); - return result; - } catch (Exception e) { - Log.e(TAG, "Unable to generate preview", e); + if (METHOD_GET_PREVIEW.equals(method)) { + return getPreview(extras); + } else { + return null; } - MAIN_EXECUTOR.execute(lifeCycleTracker::executeAllAndDestroy); - return null; } private synchronized Bundle getPreview(Bundle request) { RunnableList lifeCycleTracker = new RunnableList(); try { PreviewSurfaceRenderer renderer = new PreviewSurfaceRenderer( - mContext, lifeCycleTracker, request, Binder.getCallingPid(), - false /* skip animations */); + mContext, lifeCycleTracker, request, Binder.getCallingPid()); PreviewLifecycleObserver observer = new PreviewLifecycleObserver(lifeCycleTracker, renderer); @@ -390,7 +327,7 @@ public class GridCustomizationsProxy implements ProxyProvider { renderer.getHostToken().linkToDeath(observer, 0); Bundle result = new Bundle(); - result.putParcelable(KEY_SURFACE_PACKAGE, renderer.getHost().getSurfacePackage()); + result.putParcelable(KEY_SURFACE_PACKAGE, renderer.getSurfacePackage()); mActivePreviews.add(observer); lifeCycleTracker.add(() -> mActivePreviews.remove(observer)); @@ -412,6 +349,81 @@ public class GridCustomizationsProxy implements ProxyProvider { } } + private static class PreviewLifecycleObserver implements Handler.Callback, DeathRecipient { + + public final RunnableList lifeCycleTracker; + public final PreviewSurfaceRenderer renderer; + public boolean destroyed = false; + + PreviewLifecycleObserver( + RunnableList lifeCycleTracker, + PreviewSurfaceRenderer renderer) { + this.lifeCycleTracker = lifeCycleTracker; + this.renderer = renderer; + lifeCycleTracker.add(() -> destroyed = true); + } + + @Override + public boolean handleMessage(Message message) { + if (destroyed) { + return true; + } + + switch (message.what) { + case MESSAGE_ID_UPDATE_PREVIEW: + renderer.hideBottomRow(message.getData().getBoolean(KEY_HIDE_BOTTOM_ROW)); + break; + case MESSAGE_ID_UPDATE_SHAPE: + if (Flags.newCustomizationPickerUi() + && com.android.launcher3.Flags.enableLauncherIconShapes()) { + String shapeKey = message.getData().getString(KEY_SHAPE_KEY); + if (!TextUtils.isEmpty(shapeKey)) { + renderer.updateShape(shapeKey); + } + } + break; + case MESSAGE_ID_UPDATE_GRID: + String gridName = message.getData().getString(KEY_GRID_NAME); + if (!TextUtils.isEmpty(gridName)) { + renderer.updateGrid(gridName); + } + break; + case MESSAGE_ID_UPDATE_COLOR: + if (Flags.newCustomizationPickerUi()) { + renderer.previewColor(message.getData()); + } + break; + case MESSAGE_ID_UPDATE_ICON_THEMED: + if (Flags.newCustomizationPickerUi()) { + Boolean iconThemed = message.getData().getBoolean(BOOLEAN_VALUE); + // TODO Update icon themed in the preview + } + break; + default: + // Unknown command, destroy lifecycle + Log.d(TAG, "Unknown preview command: " + message.what + ", destroying preview"); + MAIN_EXECUTOR.execute(lifeCycleTracker::executeAllAndDestroy); + break; + } + + return true; + } + + @Override + public void binderDied() { + MAIN_EXECUTOR.execute(lifeCycleTracker::executeAllAndDestroy); + } + + /** + * Two renderers are considered same if they have the same host token and display Id + */ + public boolean isSameRenderer(PreviewLifecycleObserver plo) { + return plo != null + && plo.renderer.getHostToken().equals(renderer.getHostToken()) + && plo.renderer.getDisplayId() == renderer.getDisplayId(); + } + } + /** * A WeakReference wrapper around Handler.Callback to avoid passing hard-reference over IPC * when using a Messenger diff --git a/src/com/android/launcher3/graphics/LauncherCustomizationProvider.kt b/src/com/android/launcher3/graphics/LauncherCustomizationProvider.kt index 057a3d6a03..c949e2ec17 100644 --- a/src/com/android/launcher3/graphics/LauncherCustomizationProvider.kt +++ b/src/com/android/launcher3/graphics/LauncherCustomizationProvider.kt @@ -15,55 +15,15 @@ */ package com.android.launcher3.graphics -import android.Manifest.permission.BIND_WALLPAPER import android.content.Context -import android.content.pm.PackageManager import android.net.Uri -import android.os.Binder -import com.android.launcher3.BuildConfig.APPLICATION_ID -import com.android.launcher3.R import com.android.launcher3.dagger.LauncherComponentProvider.appComponent import com.android.launcher3.util.ContentProviderProxy -import java.security.MessageDigest /** Provider for various Launcher customizations exposed via a ContentProvider API */ class LauncherCustomizationProvider : ContentProviderProxy() { - override fun getProxy(ctx: Context): ProxyProvider? { - // Check if the caller has access - enforceCallerPermission(ctx) - return ctx.appComponent.gridCustomizationsProxy - } - - private fun enforceCallerPermission(ctx: Context) { - if (ctx.checkCallingPermission(BIND_WALLPAPER) == PackageManager.PERMISSION_GRANTED) return - if (ctx.checkCallingPermission(PERM_GRID_CONTROL) == PackageManager.PERMISSION_GRANTED) - return - - // Temporary change until the clients migrate to the new permission - val source = callingAttributionSource?.packageName ?: throw genericAccessException() - val signatures = - ctx.packageManager.getPackageInfo(source, PackageManager.GET_SIGNATURES)?.signatures - ?: throw genericAccessException() - val signature = - MessageDigest.getInstance("SHA-256") - .apply { signatures.forEach { update(it.toByteArray()) } } - .digest() - .joinToString("") { String.format("%02x", it) } - if (ctx.resources.getStringArray(R.array.grid_control_known_signers).contains(signature)) - return - throw genericAccessException() - } - - private fun genericAccessException() = - SecurityException( - "Permission Denial: opening provider com.android.launcher3.graphics.LauncherCustomizationProvider (pid=${Binder.getCallingPid()}, uid=${Binder.getCallingUid()}) requires $BIND_WALLPAPER or $PERM_GRID_CONTROL" - ) + override fun getProxy(ctx: Context): ProxyProvider? = ctx.appComponent.gridCustomizationsProxy override fun getType(uri: Uri) = "vnd.android.cursor.dir/launcher_grid" - - companion object { - - private const val PERM_GRID_CONTROL = "$APPLICATION_ID.permission.GRID_CONTROL" - } } diff --git a/src/com/android/launcher3/graphics/LauncherPreviewRenderer.java b/src/com/android/launcher3/graphics/LauncherPreviewRenderer.java index e69de29bb2..addc2a334d 100644 --- a/src/com/android/launcher3/graphics/LauncherPreviewRenderer.java +++ b/src/com/android/launcher3/graphics/LauncherPreviewRenderer.java @@ -0,0 +1,763 @@ +/* + * Copyright (C) 2018 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.launcher3.graphics; + +import static android.app.WallpaperManager.FLAG_SYSTEM; +import static android.view.View.MeasureSpec.EXACTLY; +import static android.view.View.MeasureSpec.makeMeasureSpec; +import static android.view.View.VISIBLE; + +import static com.android.launcher3.BubbleTextView.DISPLAY_TASKBAR; +import static com.android.launcher3.BubbleTextView.DISPLAY_WORKSPACE; +import static com.android.launcher3.DeviceProfile.DEFAULT_SCALE; +import static com.android.launcher3.Flags.extendibleThemeManager; +import static com.android.launcher3.Hotseat.ALPHA_CHANNEL_PREVIEW_RENDERER; +import static com.android.launcher3.LauncherPrefs.GRID_NAME; +import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; +import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT_PREDICTION; +import static com.android.launcher3.Utilities.ATLEAST_O_MR1; +import static com.android.launcher3.Utilities.ATLEAST_S; +import static com.android.launcher3.Utilities.SHOULD_SHOW_FIRST_PAGE_WIDGET; +import static com.android.launcher3.graphics.ThemeManager.PREF_ICON_SHAPE; +import static com.android.launcher3.model.ModelUtils.currentScreenContentFilter; +import static com.android.launcher3.util.ResourceBasedOverride.Overrides.getObject; +import static com.android.launcher3.widget.LauncherWidgetHolder.APPWIDGET_HOST_ID; + +import android.app.Fragment; +import android.app.WallpaperColors; +import android.app.WallpaperManager; +import android.appwidget.AppWidgetHost; +import android.appwidget.AppWidgetHostView; +import android.appwidget.AppWidgetProviderInfo; +import android.content.Context; +import android.content.res.Configuration; +import android.content.res.TypedArray; +import android.graphics.PointF; +import android.graphics.Rect; +import android.os.Build.VERSION; +import android.os.Build.VERSION_CODES; +import android.os.Handler; +import android.os.Looper; +import android.text.TextUtils; +import android.util.AttributeSet; +import android.util.Size; +import android.util.SparseArray; +import android.util.SparseIntArray; +import android.view.ContextThemeWrapper; +import android.view.Display; +import android.view.LayoutInflater; +import android.view.MotionEvent; +import android.view.View; +import android.view.ViewGroup; +import android.widget.FrameLayout; +import android.widget.TextClock; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + +import com.android.launcher3.BubbleTextView; +import com.android.launcher3.CellLayout; +import com.android.launcher3.DeviceProfile; +import com.android.launcher3.Hotseat; +import com.android.launcher3.InsettableFrameLayout; +import com.android.launcher3.InvariantDeviceProfile; +import com.android.launcher3.LauncherAppState; +import com.android.launcher3.LauncherPrefs; +import com.android.launcher3.LauncherSettings.Favorites; +import com.android.launcher3.ProxyPrefs; +import com.android.launcher3.R; +import com.android.launcher3.Workspace; +import com.android.launcher3.WorkspaceLayoutManager; +import com.android.launcher3.apppairs.AppPairIcon; +import com.android.launcher3.celllayout.CellLayoutLayoutParams; +import com.android.launcher3.celllayout.CellPosMapper; +import com.android.launcher3.config.FeatureFlags; +import com.android.launcher3.dagger.ApiWrapperModule; +import com.android.launcher3.dagger.AppModule; +import com.android.launcher3.dagger.LauncherAppComponent; +import com.android.launcher3.dagger.LauncherAppSingleton; +import com.android.launcher3.dagger.LauncherComponentProvider; +import com.android.launcher3.dagger.PluginManagerWrapperModule; +import com.android.launcher3.dagger.StaticObjectModule; +import com.android.launcher3.dagger.WindowManagerProxyModule; +import com.android.launcher3.folder.FolderIcon; +import com.android.launcher3.model.BaseLauncherBinder.BaseLauncherBinderFactory; +import com.android.launcher3.model.BgDataModel; +import com.android.launcher3.model.BgDataModel.FixedContainerItems; +import com.android.launcher3.model.LayoutParserFactory; +import com.android.launcher3.model.LayoutParserFactory.XmlLayoutParserFactory; +import com.android.launcher3.model.LoaderTask.LoaderTaskFactory; +import com.android.launcher3.model.data.AppPairInfo; +import com.android.launcher3.model.data.CollectionInfo; +import com.android.launcher3.model.data.FolderInfo; +import com.android.launcher3.model.data.ItemInfo; +import com.android.launcher3.model.data.LauncherAppWidgetInfo; +import com.android.launcher3.model.data.WorkspaceItemInfo; +import com.android.launcher3.util.BaseContext; +import com.android.launcher3.util.ComponentKey; +import com.android.launcher3.util.DaggerSingletonObject; +import com.android.launcher3.util.DisplayController; +import com.android.launcher3.util.IntArray; +import com.android.launcher3.util.IntSet; +import com.android.launcher3.util.MainThreadInitializedObject; +import com.android.launcher3.util.SandboxContext; +import com.android.launcher3.util.Themes; +import com.android.launcher3.util.WindowBounds; +import com.android.launcher3.util.window.WindowManagerProxy; +import com.android.launcher3.views.ActivityContext; +import com.android.launcher3.views.BaseDragLayer; +import com.android.launcher3.widget.BaseLauncherAppWidgetHostView; +import com.android.launcher3.widget.LauncherAppWidgetProviderInfo; +import com.android.launcher3.widget.LauncherWidgetHolder; +import com.android.launcher3.widget.LauncherWidgetHolder.WidgetHolderFactory; +import com.android.launcher3.widget.LocalColorExtractor; +import com.android.launcher3.widget.util.WidgetSizes; +import com.android.systemui.shared.Flags; + +import dagger.BindsInstance; +import dagger.Component; + +import java.io.File; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.UUID; +import java.util.stream.Collectors; +import java.util.stream.IntStream; + +import app.lawnchair.DeviceProfileOverrides; +import app.lawnchair.data.iconoverride.IconOverrideRepository; +import app.lawnchair.font.FontCache; +import app.lawnchair.font.FontManager; +import app.lawnchair.icons.IconPackProvider; +import app.lawnchair.preferences.PreferenceManager; +import app.lawnchair.preferences2.PreferenceManager2; +import app.lawnchair.smartspace.provider.SmartspaceProvider; +import app.lawnchair.theme.ThemeProvider; + +/** + * Utility class for generating the preview of Launcher for a given InvariantDeviceProfile. + * Steps: + * 1) Create a dummy icon info with just white icon + * 2) Inflate a strip down layout definition for Launcher + * 3) Place appropriate elements like icons and first-page qsb + * 4) Measure and draw the view on a canvas + */ + +// Lawnchair-TODO-Merge: Merge Lawnchair back, (reason: merge-method: theirs) + +public class LauncherPreviewRenderer extends BaseContext + implements ActivityContext, WorkspaceLayoutManager, LayoutInflater.Factory2 { + + /** + * Context used just for preview. It also provides a few objects (e.g. UserCache) just for + * preview purposes. + */ + public static class PreviewContext extends SandboxContext { + + private final String mPrefName; + + private final File mDbDir; + + public PreviewContext(Context base, String gridName, String shapeKey) { + this(base, gridName, shapeKey, APPWIDGET_HOST_ID, null); + } + + /** + * TODO: This is dumb, not actually using brain, because how do I convert this???? + */ + private void putBaseInstance(DaggerSingletonObject daggerSingletonObject) { + getObject(null, getBaseContext(), APPWIDGET_HOST_ID); + } + + public PreviewContext(Context base, String gridName, String shapeKey, + int widgetHostId, @Nullable String layoutXml) { + super(base); + String randomUid = UUID.randomUUID().toString(); + mPrefName = "preview-" + randomUid; + LauncherPrefs prefs = + new ProxyPrefs(this, getSharedPreferences(mPrefName, MODE_PRIVATE)); + prefs.put(GRID_NAME, gridName); + prefs.put(PREF_ICON_SHAPE, shapeKey); + + putBaseInstance(PreferenceManager.INSTANCE); + putBaseInstance(PreferenceManager2.INSTANCE); + putBaseInstance(FontCache.INSTANCE); + putBaseInstance(FontManager.INSTANCE); + putBaseInstance(ThemeProvider.INSTANCE); + putBaseInstance(IconPackProvider.INSTANCE); + putBaseInstance(IconOverrideRepository.INSTANCE); + putBaseInstance(SmartspaceProvider.INSTANCE); + putBaseInstance(DeviceProfileOverrides.INSTANCE); + putBaseInstance(InvariantDeviceProfile.INSTANCE); + putBaseInstance(LauncherAppState.INSTANCE); + + + PreviewAppComponent.Builder builder = + DaggerLauncherPreviewRenderer_PreviewAppComponent.builder().bindPrefs(prefs); + if (TextUtils.isEmpty(layoutXml) || !extendibleThemeManager()) { + mDbDir = null; + builder.bindParserFactory(new LayoutParserFactory(this)) + .bindWidgetsFactory( + LauncherComponentProvider.get(base).getWidgetHolderFactory()); + } else { + mDbDir = new File(base.getFilesDir(), randomUid); + emptyDbDir(); + mDbDir.mkdirs(); + builder.bindParserFactory(new XmlLayoutParserFactory(this, layoutXml)) + .bindWidgetsFactory(c -> new LauncherWidgetHolder(c, widgetHostId)); + } + initDaggerComponent(builder); + + if (!TextUtils.isEmpty(layoutXml)) { + // Use null the DB file so that we use a new in-memory DB + InvariantDeviceProfile.INSTANCE.get(this).dbFile = null; + } + } + + private void emptyDbDir() { + if (mDbDir != null && mDbDir.exists()) { + Arrays.stream(mDbDir.listFiles()).forEach(File::delete); + } + } + + @Override + protected void cleanUpObjects() { + super.cleanUpObjects(); + deleteSharedPreferences(mPrefName); + if (mDbDir != null) { + emptyDbDir(); + mDbDir.delete(); + } + } + + @Override + public File getDatabasePath(String name) { + return mDbDir != null ? new File(mDbDir, name) : super.getDatabasePath(name); + } + } + + private final Handler mUiHandler; + private final Context mContext; + private final InvariantDeviceProfile mIdp; + private final DeviceProfile mDp; + private final DeviceProfile mDpOrig; + private final Rect mInsets; + private final LayoutInflater mHomeElementInflater; + private final InsettableFrameLayout mRootView; + private final Hotseat mHotseat; + private final Map<Integer, CellLayout> mWorkspaceScreens = new HashMap<>(); + private final AppWidgetHost mAppWidgetHost; + private final SparseIntArray mWallpaperColorResources; + private final SparseArray<Size> mLauncherWidgetSpanInfo; + + /** + * Lawnchair + * <p> + * Default search container layout. + * + * @implNote Launcher3 A16_r2 uses [R.layout.qsb_preview] + */ + private int mWorkspaceSearchContainer = R.layout.smartspace_container; + + public LauncherPreviewRenderer(Context context, + InvariantDeviceProfile idp, + int widgetHostId, + WallpaperColors wallpaperColorsOverride, + @Nullable final SparseArray<Size> launcherWidgetSpanInfo) { + this(context, idp, widgetHostId, null, wallpaperColorsOverride, launcherWidgetSpanInfo); + } + + public LauncherPreviewRenderer(Context context, + InvariantDeviceProfile idp, + int widgetHostId, + SparseIntArray previewColorOverride, + WallpaperColors wallpaperColorsOverride, + @Nullable final SparseArray<Size> launcherWidgetSpanInfo) { + + super(context, Themes.getActivityThemeRes(context)); + mUiHandler = new Handler(Looper.getMainLooper()); + mContext = context; + mIdp = idp; + mDp = getDeviceProfileForPreview(context).toBuilder(context).setViewScaleProvider( + this::getAppWidgetScale).build(); + if (context instanceof PreviewContext) { + Context tempContext = ((PreviewContext) context).getBaseContext(); + mDpOrig = InvariantDeviceProfile.INSTANCE.get(tempContext) + .getDeviceProfile(tempContext) + .copy(tempContext); + } else { + mDpOrig = mDp; + } + mInsets = getInsets(context); + mDp.updateInsets(mInsets); + + mHomeElementInflater = LayoutInflater.from( + new ContextThemeWrapper(this, R.style.HomeScreenElementTheme)); + mHomeElementInflater.setFactory2(this); + + int layoutRes = mDp.isTwoPanels ? R.layout.launcher_preview_two_panel_layout + : R.layout.launcher_preview_layout; + mRootView = (InsettableFrameLayout) mHomeElementInflater.inflate( + layoutRes, null, false); + mRootView.setInsets(mInsets); + measureView(mRootView, mDp.widthPx, mDp.heightPx); + + mHotseat = mRootView.findViewById(R.id.hotseat); + mHotseat.resetLayout(false); + + mLauncherWidgetSpanInfo = launcherWidgetSpanInfo == null ? new SparseArray<>() : + launcherWidgetSpanInfo; + + CellLayout firstScreen = mRootView.findViewById(R.id.workspace); + firstScreen.setPadding( + mDp.workspacePadding.left + mDp.cellLayoutPaddingPx.left, + mDp.workspacePadding.top + mDp.cellLayoutPaddingPx.top, + mDp.isTwoPanels ? (mDp.cellLayoutBorderSpacePx.x / 2) + : (mDp.workspacePadding.right + mDp.cellLayoutPaddingPx.right), + mDp.workspacePadding.bottom + mDp.cellLayoutPaddingPx.bottom + ); + mWorkspaceScreens.put(FIRST_SCREEN_ID, firstScreen); + + if (mDp.isTwoPanels) { + CellLayout rightPanel = mRootView.findViewById(R.id.workspace_right); + rightPanel.setPadding( + mDp.cellLayoutBorderSpacePx.x / 2, + mDp.workspacePadding.top + mDp.cellLayoutPaddingPx.top, + mDp.workspacePadding.right + mDp.cellLayoutPaddingPx.right, + mDp.workspacePadding.bottom + mDp.cellLayoutPaddingPx.bottom + ); + mWorkspaceScreens.put(Workspace.SECOND_SCREEN_ID, rightPanel); + } + + if (Flags.newCustomizationPickerUi()) { + if (previewColorOverride != null) { + mWallpaperColorResources = previewColorOverride; + } else if (wallpaperColorsOverride != null) { + mWallpaperColorResources = LocalColorExtractor.newInstance( + context).generateColorsOverride(wallpaperColorsOverride); + } else { + WallpaperColors wallpaperColors = null; + if (ATLEAST_O_MR1) { + wallpaperColors = WallpaperManager.getInstance( + context).getWallpaperColors(FLAG_SYSTEM); + } + mWallpaperColorResources = wallpaperColors != null + ? LocalColorExtractor.newInstance(context).generateColorsOverride( + wallpaperColors) + : null; + } + } else { + WallpaperColors wallpaperColors = null; + if (ATLEAST_O_MR1) { + wallpaperColors = wallpaperColorsOverride != null + ? wallpaperColorsOverride + : WallpaperManager.getInstance(context).getWallpaperColors(FLAG_SYSTEM); + } + mWallpaperColorResources = wallpaperColors != null + ? LocalColorExtractor.newInstance(context).generateColorsOverride( + wallpaperColors) + : null; + } + mAppWidgetHost = new LauncherPreviewAppWidgetHost(context, widgetHostId); + + onViewCreated(); + + if (widgetHostId != APPWIDGET_HOST_ID) { + mAppWidgetHost.stopListening(); + } + } + + @Override + public InsettableFrameLayout getRootView() { + return mRootView; + } + + /** + * Returns the device profile based on resource configuration for previewing various display + * sizes + */ + private DeviceProfile getDeviceProfileForPreview(Context context) { + float density = context.getResources().getDisplayMetrics().density; + Configuration config = context.getResources().getConfiguration(); + + return mIdp.getBestMatch( + config.screenWidthDp * density, + config.screenHeightDp * density, + WindowManagerProxy.INSTANCE.get(context).getRotation(context) + ); + } + + /** + * Returns the insets of the screen closest to the display given by the context + */ + private Rect getInsets(Context context) { + DisplayController.Info info = DisplayController.INSTANCE.get(context).getInfo(); + float maxDiff = Float.MAX_VALUE; + Display display = context.getDisplay(); + Rect insets = new Rect(); + for (WindowBounds supportedBound : info.supportedBounds) { + double diff = Math.pow(display.getWidth() - supportedBound.availableSize.x, 2) + + Math.pow(display.getHeight() - supportedBound.availableSize.y, 2); + if (supportedBound.rotationHint == context.getDisplay().getRotation() + && diff < maxDiff) { + maxDiff = (float) diff; + insets = supportedBound.insets; + } + } + return new Rect(insets); + } + + /** Populate preview and render it. */ + public View getRenderedView(BgDataModel dataModel, + Map<ComponentKey, AppWidgetProviderInfo> widgetProviderInfoMap) { + populate(dataModel, widgetProviderInfoMap); + return mRootView; + } + + @Override + public View onCreateView(View parent, String name, Context context, AttributeSet attrs) { + if ("TextClock".equals(name)) { + // Workaround for TextClock accessing handler for unregistering ticker. + return new TextClock(context, attrs) { + + @Override + public Handler getHandler() { + return mUiHandler; + } + }; + } else if (!"fragment".equals(name)) { + return null; + } + + TypedArray ta = context.obtainStyledAttributes(attrs, R.styleable.PreviewFragment); + FragmentWithPreview f = (FragmentWithPreview) Fragment.instantiate( + context, ta.getString(R.styleable.PreviewFragment_android_name)); + f.enterPreviewMode(context); + f.onInit(null); + + View view = f.onCreateView(LayoutInflater.from(context), (ViewGroup) parent, null); + view.setId(ta.getInt(R.styleable.PreviewFragment_android_id, View.NO_ID)); + return view; + } + + @Override + public View onCreateView(String name, Context context, AttributeSet attrs) { + return onCreateView(null, name, context, attrs); + } + + @Override + public BaseDragLayer getDragLayer() { + throw new UnsupportedOperationException(); + } + + @Override + public DeviceProfile getDeviceProfile() { + return mDp; + } + + @Override + public Hotseat getHotseat() { + return mHotseat; + } + + /** + * Hides the components in the bottom row. + * + * @param hide True to hide and false to show. + */ + public void hideBottomRow(boolean hide) { + mUiHandler.post(() -> { + if (mDp.isTaskbarPresent) { + // hotseat icons on bottom + mHotseat.setIconsAlpha(hide ? 0 : 1, ALPHA_CHANNEL_PREVIEW_RENDERER); + if (mDp.isQsbInline) { + mHotseat.setQsbAlpha(hide ? 0 : 1, ALPHA_CHANNEL_PREVIEW_RENDERER); + } + } else { + mHotseat.setQsbAlpha(hide ? 0 : 1, ALPHA_CHANNEL_PREVIEW_RENDERER); + } + }); + } + + @Override + public CellLayout getScreenWithId(int screenId) { + return mWorkspaceScreens.get(screenId); + } + + @Override + public CellPosMapper getCellPosMapper() { + return CellPosMapper.DEFAULT; + } + + private void inflateAndAddIcon(WorkspaceItemInfo info) { + CellLayout screen = mWorkspaceScreens.get(info.screenId); + BubbleTextView icon = (BubbleTextView) mHomeElementInflater.inflate( + R.layout.app_icon, screen, false); + icon.applyFromWorkspaceItem(info); + addInScreenFromBind(icon, info); + } + + private void inflateAndAddCollectionIcon(CollectionInfo info) { + boolean isOnDesktop = info.container == Favorites.CONTAINER_DESKTOP; + CellLayout screen = isOnDesktop + ? mWorkspaceScreens.get(info.screenId) + : mHotseat; + FrameLayout collectionIcon = info.itemType == Favorites.ITEM_TYPE_FOLDER + ? FolderIcon.inflateIcon(R.layout.folder_icon, this, screen, (FolderInfo) info) + : AppPairIcon.inflateIcon(R.layout.app_pair_icon, this, screen, (AppPairInfo) info, + isOnDesktop ? DISPLAY_WORKSPACE : DISPLAY_TASKBAR); + addInScreenFromBind(collectionIcon, info); + } + + private void inflateAndAddWidgets( + LauncherAppWidgetInfo info, + Map<ComponentKey, AppWidgetProviderInfo> widgetProviderInfoMap) { + if (widgetProviderInfoMap == null) { + return; + } + AppWidgetProviderInfo providerInfo = widgetProviderInfoMap.get( + new ComponentKey(info.providerName, info.user)); + if (providerInfo == null) { + return; + } + inflateAndAddWidgets(info, LauncherAppWidgetProviderInfo.fromProviderInfo( + getApplicationContext(), providerInfo)); + } + + private void inflateAndAddWidgets( + LauncherAppWidgetInfo info, LauncherAppWidgetProviderInfo providerInfo) { + AppWidgetHostView view = mAppWidgetHost.createView( + mContext, info.appWidgetId, providerInfo); + + if (mWallpaperColorResources != null) { + if (ATLEAST_S) { + view.setColorResources(mWallpaperColorResources); + } + } + + view.setTag(info); + addInScreenFromBind(view, info); + } + + @NonNull + private PointF getAppWidgetScale(@Nullable ItemInfo itemInfo) { + if (!(itemInfo instanceof LauncherAppWidgetInfo)) { + return DEFAULT_SCALE; + } + LauncherAppWidgetInfo info = (LauncherAppWidgetInfo) itemInfo; + final Size launcherWidgetSize = mLauncherWidgetSpanInfo.get(info.appWidgetId); + if (launcherWidgetSize == null) { + return DEFAULT_SCALE; + } + final Size origSize = WidgetSizes.getWidgetSizePx(mDpOrig, + launcherWidgetSize.getWidth(), launcherWidgetSize.getHeight()); + final Size newSize = WidgetSizes.getWidgetSizePx(mDp, info.spanX, info.spanY); + return new PointF((float) newSize.getWidth() / origSize.getWidth(), + (float) newSize.getHeight() / origSize.getHeight()); + } + + private void inflateAndAddPredictedIcon(WorkspaceItemInfo info) { + CellLayout screen = mWorkspaceScreens.get(info.screenId); + BubbleTextView icon = (BubbleTextView) mHomeElementInflater.inflate( + R.layout.predicted_app_icon, screen, false); + icon.applyFromWorkspaceItem(info); + addInScreenFromBind(icon, info); + } + + private void dispatchVisibilityAggregated(View view, boolean isVisible) { + // Similar to View.dispatchVisibilityAggregated implementation. + final boolean thisVisible = view.getVisibility() == VISIBLE; + if (thisVisible || !isVisible) { + view.onVisibilityAggregated(isVisible); + } + + if (view instanceof ViewGroup) { + isVisible = thisVisible && isVisible; + ViewGroup vg = (ViewGroup) view; + int count = vg.getChildCount(); + + for (int i = 0; i < count; i++) { + dispatchVisibilityAggregated(vg.getChildAt(i), isVisible); + } + } + } + + private void populate(BgDataModel dataModel, + Map<ComponentKey, AppWidgetProviderInfo> widgetProviderInfoMap) { + IntSet missingHotseatRank = new IntSet(); + IntStream.range(0, mDp.numShownHotseatIcons).forEach(missingHotseatRank::add); + + Map<ComponentKey, AppWidgetProviderInfo>[] widgetsMap = new Map[] { widgetProviderInfoMap}; + + // Separate the items that are on the current screen, and the other remaining items. + dataModel.itemsIdMap.stream() + .filter(currentScreenContentFilter(IntSet.wrap(mWorkspaceScreens.keySet()))) + .forEach(itemInfo -> { + switch (itemInfo.itemType) { + case Favorites.ITEM_TYPE_APPLICATION: + case Favorites.ITEM_TYPE_DEEP_SHORTCUT: + inflateAndAddIcon((WorkspaceItemInfo) itemInfo); + break; + case Favorites.ITEM_TYPE_FOLDER: + case Favorites.ITEM_TYPE_APP_PAIR: + inflateAndAddCollectionIcon((CollectionInfo) itemInfo); + break; + case Favorites.ITEM_TYPE_APPWIDGET: + case Favorites.ITEM_TYPE_CUSTOM_APPWIDGET: + if (widgetsMap[0] == null) { + widgetsMap[0] = dataModel.widgetsModel.getWidgetsByComponentKey() + .entrySet() + .stream() + .filter(entry -> entry.getValue().widgetInfo != null) + .collect(Collectors.toMap( + Entry::getKey, + entry -> entry.getValue().widgetInfo + )); + } + inflateAndAddWidgets((LauncherAppWidgetInfo) itemInfo, widgetsMap[0]); + break; + default: + break; + } + + if (itemInfo.container == CONTAINER_HOTSEAT) { + missingHotseatRank.remove(itemInfo.screenId); + } + }); + + IntArray ranks = missingHotseatRank.getArray(); + FixedContainerItems hotseatPredictions = + dataModel.extraItems.get(CONTAINER_HOTSEAT_PREDICTION); + List<ItemInfo> predictions = hotseatPredictions == null + ? Collections.emptyList() : hotseatPredictions.items; + int count = Math.min(ranks.size(), predictions.size()); + for (int i = 0; i < count; i++) { + int rank = ranks.get(i); + WorkspaceItemInfo itemInfo = + new WorkspaceItemInfo((WorkspaceItemInfo) predictions.get(i)); + itemInfo.container = CONTAINER_HOTSEAT_PREDICTION; + itemInfo.rank = rank; + itemInfo.cellX = mHotseat.getCellXFromOrder(rank); + itemInfo.cellY = mHotseat.getCellYFromOrder(rank); + itemInfo.screenId = rank; + inflateAndAddPredictedIcon(itemInfo); + } + + // Add first page QSB + if (FeatureFlags.QSB_ON_FIRST_SCREEN && dataModel.isFirstPagePinnedItemEnabled + && !SHOULD_SHOW_FIRST_PAGE_WIDGET) { + CellLayout firstScreen = mWorkspaceScreens.get(FIRST_SCREEN_ID); + View qsb = mHomeElementInflater.inflate(mWorkspaceSearchContainer, firstScreen, false); + // TODO: set bgHandler on qsb when it is BaseTemplateCard, which requires API changes. + CellLayoutLayoutParams lp = new CellLayoutLayoutParams( + 0, 0, firstScreen.getCountX(), 1); + lp.canReorder = false; + firstScreen.addViewToCellLayout(qsb, 0, R.id.search_container_workspace, lp, true); + } + + measureView(mRootView, mDp.widthPx, mDp.heightPx); + dispatchVisibilityAggregated(mRootView, true); + measureView(mRootView, mDp.widthPx, mDp.heightPx); + // Additional measure for views which use auto text size API + measureView(mRootView, mDp.widthPx, mDp.heightPx); + } + + /** + * Lawnchair + * <p> + * Set custom search container for workspace. + * + * @param resId True to hide and false to show. + */ + public void setWorkspaceSearchContainer(int resId) { + mWorkspaceSearchContainer = resId; + } + + private static void measureView(View view, int width, int height) { + view.measure(makeMeasureSpec(width, EXACTLY), makeMeasureSpec(height, EXACTLY)); + view.layout(0, 0, width, height); + } + + private class LauncherPreviewAppWidgetHost extends AppWidgetHost { + + private LauncherPreviewAppWidgetHost(Context context, int hostId) { + super(context, hostId); + } + + @Override + protected AppWidgetHostView onCreateView( + Context context, + int appWidgetId, + AppWidgetProviderInfo appWidget) { + return new LauncherPreviewAppWidgetHostView(LauncherPreviewRenderer.this); + } + } + + private static class LauncherPreviewAppWidgetHostView extends BaseLauncherAppWidgetHostView { + private LauncherPreviewAppWidgetHostView(Context context) { + super(context); + } + + @Override + protected boolean shouldAllowDirectClick() { + return false; + } + + @Override + public void onColorsChanged(SparseIntArray colors) { + post(() -> setColorResources(colors)); + } + } + + /** Root layout for launcher preview that intercepts all touch events. */ + public static class LauncherPreviewLayout extends InsettableFrameLayout { + public LauncherPreviewLayout(Context context, AttributeSet attrs) { + super(context, attrs); + } + + @Override + public boolean onInterceptTouchEvent(MotionEvent ev) { + return true; + } + } + + @LauncherAppSingleton + // Exclude widget module since we bind widget holder separately + @Component(modules = {WindowManagerProxyModule.class, + ApiWrapperModule.class, + PluginManagerWrapperModule.class, + StaticObjectModule.class, + AppModule.class}) + public interface PreviewAppComponent extends LauncherAppComponent { + + LoaderTaskFactory getLoaderTaskFactory(); + BaseLauncherBinderFactory getBaseLauncherBinderFactory(); + BgDataModel getDataModel(); + + /** Builder for NexusLauncherAppComponent. */ + @Component.Builder + interface Builder extends LauncherAppComponent.Builder { + @BindsInstance Builder bindPrefs(LauncherPrefs prefs); + @BindsInstance Builder bindParserFactory(LayoutParserFactory parserFactory); + @BindsInstance Builder bindWidgetsFactory(WidgetHolderFactory holderFactory); + PreviewAppComponent build(); + } + } +} diff --git a/src/com/android/launcher3/graphics/PreloadIconDrawable.java b/src/com/android/launcher3/graphics/PreloadIconDrawable.java index ccf64a7f18..3bd9fb54ca 100644 --- a/src/com/android/launcher3/graphics/PreloadIconDrawable.java +++ b/src/com/android/launcher3/graphics/PreloadIconDrawable.java @@ -35,7 +35,6 @@ import android.util.Property; import androidx.annotation.VisibleForTesting; import androidx.core.graphics.ColorUtils; -import com.android.launcher3.Flags; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.anim.AnimatedFloat; @@ -73,15 +72,9 @@ public class PreloadIconDrawable extends FastBitmapDrawable { // Duration = COMPLETE_ANIM_FRACTION * DURATION_SCALE private static final float COMPLETE_ANIM_FRACTION = 1f; - private static final float SMALL_ICON_SCALE = 0.8f; + private static final float SMALL_SCALE = 0.8f; private static final float PROGRESS_STROKE_SCALE = 0.055f; private static final float PROGRESS_BOUNDS_SCALE = 0.075f; - private static final float TOTAL_STROKE_SCALE = 3 * PROGRESS_STROKE_SCALE / 2; - // Scale for canvas when drawing plate stroke. This is to avoid gaps between icon and plate. - // We use icon scale + 2 * plate gap width. This is the same as icon scale + progress scale. - private static final float PLATE_SCALE = SMALL_ICON_SCALE + PROGRESS_STROKE_SCALE; - - private static final int PRELOAD_ACCENT_COLOR_INDEX = 0; private static final int PRELOAD_BACKGROUND_COLOR_INDEX = 1; @@ -93,7 +86,6 @@ public class PreloadIconDrawable extends FastBitmapDrawable { // Path in [0, 100] bounds. private final Path mShapePath; - private final Path mScaledPlatePath; private final Path mScaledTrackPath; private final Path mScaledProgressPath; private final Paint mProgressPaint; @@ -140,7 +132,6 @@ public class PreloadIconDrawable extends FastBitmapDrawable { super(info.bitmap); mItem = info; mShapePath = shapePath; - mScaledPlatePath = new Path(); mScaledTrackPath = new Path(); mScaledProgressPath = new Path(); @@ -182,7 +173,7 @@ public class PreloadIconDrawable extends FastBitmapDrawable { setLevel(info.getProgressLevel()); // Set a disabled icon color if the app is suspended or if the app is pending download - setDisabled(info.isDisabled() || info.isPendingDownload()); + setIsDisabled(info.isDisabled() || info.isPendingDownload()); } @Override @@ -190,22 +181,14 @@ public class PreloadIconDrawable extends FastBitmapDrawable { super.onBoundsChange(bounds); float progressWidth = bounds.width() * PROGRESS_BOUNDS_SCALE; - float plateGapWidth = bounds.width() * PROGRESS_BOUNDS_SCALE / 2f; - mTmpMatrix.setScale( (bounds.width() - 2 * progressWidth) / DEFAULT_PATH_SIZE, (bounds.height() - 2 * progressWidth) / DEFAULT_PATH_SIZE); mTmpMatrix.postTranslate(bounds.left + progressWidth, bounds.top + progressWidth); + mShapePath.transform(mTmpMatrix, mScaledTrackPath); mProgressPaint.setStrokeWidth(PROGRESS_STROKE_SCALE * bounds.width()); - mTmpMatrix.setScale( - (bounds.width() - 2 * plateGapWidth) / DEFAULT_PATH_SIZE, - (bounds.height() - 2 * plateGapWidth) / DEFAULT_PATH_SIZE); - mTmpMatrix.postTranslate(bounds.left + plateGapWidth, bounds.top + plateGapWidth); - mShapePath.transform(mTmpMatrix, mScaledPlatePath); - - mPathMeasure.setPath(mScaledTrackPath, true); mTrackLength = mPathMeasure.getLength(); @@ -218,62 +201,7 @@ public class PreloadIconDrawable extends FastBitmapDrawable { super.drawInternal(canvas, bounds); return; } - if (Flags.enableLauncherIconShapes()) { - drawShapedProgressIcon(canvas, bounds); - } else { - drawDefaultProgressIcon(canvas, bounds); - } - } - private void drawShapedProgressIcon(Canvas canvas, Rect bounds) { - if (mInternalStateProgress > 0f) { - if (mInternalStateProgress < 1f) { - // Draw icon at scale UNDER the progress and background paths. - drawIconAtScale(canvas, bounds); - } - drawBackgroundPlate(canvas, bounds); - drawTrackAndProgress(canvas); - if (mInternalStateProgress >= 1f) { - // Draw icon at scale animating OVER the progress and background path. - drawIconAtScale(canvas, bounds); - } - } else { - // Just draw Icon when no progress - drawIconAtScale(canvas, bounds); - } - } - - /** - * Draw background plate as a stroke around icon. - * Uses total stroke width for gap + progress, so that progress can be overlaid to leave gap. - */ - private void drawBackgroundPlate(Canvas canvas, Rect bounds) { - float width = canvas.getWidth(); - canvas.save(); - canvas.scale(PLATE_SCALE, PLATE_SCALE, bounds.exactCenterX(), bounds.exactCenterY()); - mProgressPaint.setStyle(Paint.Style.STROKE); - mProgressPaint.setStrokeWidth(width * TOTAL_STROKE_SCALE); - mProgressPaint.setColor(mPlateColor); - canvas.drawPath(mScaledPlatePath, mProgressPaint); - canvas.restore(); - } - - /** - * Draws track around icon with gap, and draws progress bar according to current progress. - */ - private void drawTrackAndProgress(Canvas canvas) { - canvas.save(); - mProgressPaint.setStyle(Paint.Style.STROKE); - mProgressPaint.setStrokeWidth(canvas.getWidth() * PROGRESS_STROKE_SCALE); - mProgressPaint.setColor(mTrackColor); - canvas.drawPath(mScaledTrackPath, mProgressPaint); - mProgressPaint.setAlpha(MAX_PAINT_ALPHA); - mProgressPaint.setColor(mProgressColor); - canvas.drawPath(mScaledProgressPath, mProgressPaint); - canvas.restore(); - } - - private void drawDefaultProgressIcon(Canvas canvas, Rect bounds) { if (mInternalStateProgress > 0) { // Draw background. mProgressPaint.setStyle(Paint.Style.FILL); @@ -291,18 +219,12 @@ public class PreloadIconDrawable extends FastBitmapDrawable { canvas.drawPath(mScaledProgressPath, mProgressPaint); } - drawIconAtScale(canvas, bounds); - } - - /** - * Draws just the icon to scale - */ - private void drawIconAtScale(Canvas canvas, Rect bounds) { - canvas.save(); - float scale = 1 - mIconScaleMultiplier.value * (1 - SMALL_ICON_SCALE); + int saveCount = canvas.save(); + float scale = 1 - mIconScaleMultiplier.value * (1 - SMALL_SCALE); canvas.scale(scale, scale, bounds.exactCenterX(), bounds.exactCenterY()); + super.drawInternal(canvas, bounds); - canvas.restore(); + canvas.restoreToCount(saveCount); } /** @@ -440,7 +362,7 @@ public class PreloadIconDrawable extends FastBitmapDrawable { @Override public FastBitmapConstantState newConstantState() { return new PreloadIconConstantState( - bitmapInfo, + mBitmapInfo, mItem, mIndicatorColor, new int[] {mSystemAccentColor, mSystemBackgroundColor}, diff --git a/src/com/android/launcher3/graphics/PreviewSurfaceRenderer.java b/src/com/android/launcher3/graphics/PreviewSurfaceRenderer.java index e69de29bb2..9e52def4bd 100644 --- a/src/com/android/launcher3/graphics/PreviewSurfaceRenderer.java +++ b/src/com/android/launcher3/graphics/PreviewSurfaceRenderer.java @@ -0,0 +1,496 @@ +/* + * Copyright (C) 2020 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.launcher3.graphics; + +import static android.content.res.Configuration.UI_MODE_NIGHT_NO; +import static android.content.res.Configuration.UI_MODE_NIGHT_YES; +import static android.view.Display.DEFAULT_DISPLAY; + +import static com.android.launcher3.Flags.extendibleThemeManager; +import static com.android.launcher3.LauncherPrefs.GRID_NAME; +import static com.android.launcher3.WorkspaceLayoutManager.FIRST_SCREEN_ID; +import static com.android.launcher3.WorkspaceLayoutManager.SECOND_SCREEN_ID; +import static com.android.launcher3.graphics.ThemeManager.PREF_ICON_SHAPE; +import static com.android.launcher3.provider.LauncherDbUtils.selectionForWorkspaceScreen; +import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; +import static com.android.launcher3.util.Executors.MODEL_EXECUTOR; +import static com.android.launcher3.widget.LauncherWidgetHolder.APPWIDGET_HOST_ID; + +import android.app.WallpaperColors; +import android.appwidget.AppWidgetHost; +import android.appwidget.AppWidgetProviderInfo; +import android.content.Context; +import android.content.res.Configuration; +import android.database.Cursor; +import android.hardware.display.DisplayManager; +import android.os.Bundle; +import android.os.IBinder; +import android.text.TextUtils; +import android.util.Log; +import android.util.Size; +import android.util.SparseArray; +import android.util.SparseIntArray; +import android.view.ContextThemeWrapper; +import android.view.Display; +import android.view.Surface; +import android.view.SurfaceControlViewHost; +import android.view.SurfaceControlViewHost.SurfacePackage; +import android.view.View; +import android.view.animation.AccelerateDecelerateInterpolator; +import android.widget.FrameLayout; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.annotation.UiThread; +import androidx.annotation.WorkerThread; + +import com.android.launcher3.DeviceProfile; +import com.android.launcher3.InvariantDeviceProfile; +import com.android.launcher3.LauncherAppState; +import com.android.launcher3.LauncherPrefs; +import com.android.launcher3.LauncherSettings; +import com.android.launcher3.dagger.LauncherComponentProvider; +import com.android.launcher3.graphics.LauncherPreviewRenderer.PreviewAppComponent; +import com.android.launcher3.graphics.LauncherPreviewRenderer.PreviewContext; +import com.android.launcher3.model.BgDataModel; +import com.android.launcher3.model.BgDataModel.Callbacks; +import com.android.launcher3.model.LoaderTask; +import com.android.launcher3.model.ModelDbController; +import com.android.launcher3.model.UserManagerState; +import com.android.launcher3.util.ComponentKey; +import com.android.launcher3.util.RunnableList; +import com.android.launcher3.util.Themes; +import com.android.launcher3.widget.LocalColorExtractor; +import com.android.systemui.shared.Flags; + +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.TimeUnit; + +/** Render preview using surface view. */ +@SuppressWarnings("NewApi") +public class PreviewSurfaceRenderer { + + private static final String TAG = "PreviewSurfaceRenderer"; + private static final int FADE_IN_ANIMATION_DURATION = 200; + private static final String KEY_HOST_TOKEN = "host_token"; + private static final String KEY_VIEW_WIDTH = "width"; + private static final String KEY_VIEW_HEIGHT = "height"; + private static final String KEY_DISPLAY_ID = "display_id"; + private static final String KEY_COLORS = "wallpaper_colors"; + private static final String KEY_COLOR_RESOURCE_IDS = "color_resource_ids"; + private static final String KEY_COLOR_VALUES = "color_values"; + private static final String KEY_DARK_MODE = "use_dark_mode"; + private static final String KEY_LAYOUT_XML = "layout_xml"; + public static final String KEY_SKIP_ANIMATIONS = "skip_animations"; + + private final Context mContext; + private SparseIntArray mPreviewColorOverride; + private String mGridName; + private String mShapeKey; + private String mLayoutXml; + + @Nullable private Boolean mDarkMode; + private boolean mDestroyed = false; + private boolean mHideQsb; + @Nullable private FrameLayout mViewRoot = null; + private boolean mDeletingHostOnExit = false; + + private final int mCallingPid; + private final IBinder mHostToken; + private final int mWidth; + private final int mHeight; + private final boolean mSkipAnimations; + private final int mDisplayId; + private final Display mDisplay; + private final WallpaperColors mWallpaperColors; + private final RunnableList mLifeCycleTracker; + private final SurfaceControlViewHost mSurfaceControlViewHost; + + public PreviewSurfaceRenderer(Context context, RunnableList lifecycleTracker, Bundle bundle, + int callingPid) throws Exception { + mContext = context; + mLifeCycleTracker = lifecycleTracker; + mCallingPid = callingPid; + mGridName = bundle.getString("name"); + bundle.remove("name"); + if (mGridName == null) { + mGridName = LauncherPrefs.get(context).get(GRID_NAME); + } + mShapeKey = LauncherPrefs.get(context).get(PREF_ICON_SHAPE); + mWallpaperColors = bundle.getParcelable(KEY_COLORS); + if (Flags.newCustomizationPickerUi()) { + updateColorOverrides(bundle); + } + mHideQsb = bundle.getBoolean(GridCustomizationsProxy.KEY_HIDE_BOTTOM_ROW); + + mHostToken = bundle.getBinder(KEY_HOST_TOKEN); + mWidth = bundle.getInt(KEY_VIEW_WIDTH); + mHeight = bundle.getInt(KEY_VIEW_HEIGHT); + mSkipAnimations = bundle.getBoolean(KEY_SKIP_ANIMATIONS, false); + mDisplayId = bundle.getInt(KEY_DISPLAY_ID); + mDisplay = context.getSystemService(DisplayManager.class) + .getDisplay(mDisplayId); + mLayoutXml = bundle.getString(KEY_LAYOUT_XML); + if (mDisplay == null) { + throw new IllegalArgumentException("Display ID does not match any displays."); + } + + mSurfaceControlViewHost = MAIN_EXECUTOR.submit(() -> new MySurfaceControlViewHost( + mContext, + context.getSystemService(DisplayManager.class).getDisplay(DEFAULT_DISPLAY), + mHostToken, + mLifeCycleTracker)) + .get(5, TimeUnit.SECONDS); + mLifeCycleTracker.add(this::destroy); + } + + public int getDisplayId() { + return mDisplayId; + } + + public IBinder getHostToken() { + return mHostToken; + } + + public SurfacePackage getSurfacePackage() { + return mSurfaceControlViewHost.getSurfacePackage(); + } + + private void destroy() { + mDestroyed = true; + } + + /** + * A function that queries for the launcher app widget span info + * + * @return A SparseArray with the app widget id being the key and the span info being the values + */ + @WorkerThread + @Nullable + public SparseArray<Size> getLoadedLauncherWidgetInfo() { + final SparseArray<Size> widgetInfo = new SparseArray<>(); + final String query = LauncherSettings.Favorites.ITEM_TYPE + " = " + + LauncherSettings.Favorites.ITEM_TYPE_APPWIDGET; + + ModelDbController mainController = + LauncherAppState.getInstance(mContext).getModel().getModelDbController(); + try (Cursor c = mainController.query( + new String[] { + LauncherSettings.Favorites.APPWIDGET_ID, + LauncherSettings.Favorites.SPANX, + LauncherSettings.Favorites.SPANY + }, query, null, null)) { + final int appWidgetIdIndex = c.getColumnIndexOrThrow( + LauncherSettings.Favorites.APPWIDGET_ID); + final int spanXIndex = c.getColumnIndexOrThrow(LauncherSettings.Favorites.SPANX); + final int spanYIndex = c.getColumnIndexOrThrow(LauncherSettings.Favorites.SPANY); + while (c.moveToNext()) { + final int appWidgetId = c.getInt(appWidgetIdIndex); + final int spanX = c.getInt(spanXIndex); + final int spanY = c.getInt(spanYIndex); + + widgetInfo.append(appWidgetId, new Size(spanX, spanY)); + } + } catch (Exception e) { + Log.e(TAG, "Error querying for launcher widget info", e); + return null; + } + + return widgetInfo; + } + + /** + * Generates the preview in background + */ + public void loadAsync() { + MODEL_EXECUTOR.execute(this::loadModelData); + } + + /** + * Update the grid of the launcher preview + * + * @param gridName Name of the grid, e.g. normal, practical + */ + public void updateGrid(@NonNull String gridName) { + if (gridName.equals(mGridName)) { + return; + } + mGridName = gridName; + loadAsync(); + } + + /** + * Update the shapes of the launcher preview + * + * @param shapeKey key for the IconShape model + */ + public void updateShape(String shapeKey) { + if (shapeKey.equals(mShapeKey)) { + Log.w(TAG, "Preview shape already set, skipping. shape=" + mShapeKey); + return; + } + mShapeKey = shapeKey; + loadAsync(); + } + + /** + * Hides the components in the bottom row. + * + * @param hide True to hide and false to show. + */ + public void hideBottomRow(boolean hide) { + mHideQsb = hide; + loadAsync(); + } + + /** + * Updates the colors of the preview. + * + * @param bundle Bundle with an int array of color ids and an int array of overriding colors. + */ + public void previewColor(Bundle bundle) { + updateColorOverrides(bundle); + loadAsync(); + } + + private void updateColorOverrides(Bundle bundle) { + mDarkMode = + bundle.containsKey(KEY_DARK_MODE) ? bundle.getBoolean(KEY_DARK_MODE) : null; + int[] ids = bundle.getIntArray(KEY_COLOR_RESOURCE_IDS); + int[] colors = bundle.getIntArray(KEY_COLOR_VALUES); + if (ids != null && colors != null) { + mPreviewColorOverride = new SparseIntArray(); + for (int i = 0; i < ids.length; i++) { + mPreviewColorOverride.put(ids[i], colors[i]); + } + } else { + mPreviewColorOverride = null; + } + } + + /*** + * Generates a new context overriding the theme color and the display size without affecting the + * main application context + */ + private Context getPreviewContext() { + Context context = mContext.createDisplayContext(mDisplay); + if (mDarkMode != null) { + Configuration configuration = new Configuration( + context.getResources().getConfiguration()); + if (mDarkMode) { + configuration.uiMode &= ~UI_MODE_NIGHT_NO; + configuration.uiMode |= UI_MODE_NIGHT_YES; + } else { + configuration.uiMode &= ~UI_MODE_NIGHT_YES; + configuration.uiMode |= UI_MODE_NIGHT_NO; + } + context = context.createConfigurationContext(configuration); + } + if (InvariantDeviceProfile.INSTANCE.get(context).isFixedLandscape) { + Configuration configuration = new Configuration( + context.getResources().getConfiguration() + ); + int width = configuration.screenWidthDp; + int height = configuration.screenHeightDp; + if (configuration.screenHeightDp > configuration.screenWidthDp) { + configuration.screenWidthDp = height; + configuration.screenHeightDp = width; + configuration.orientation = Configuration.ORIENTATION_PORTRAIT; + } + context = context.createConfigurationContext(configuration); + } + + if (Flags.newCustomizationPickerUi()) { + if (mPreviewColorOverride != null) { + LocalColorExtractor.newInstance(context) + .applyColorsOverride(context, mPreviewColorOverride); + } else if (mWallpaperColors != null) { + LocalColorExtractor.newInstance(context) + .applyColorsOverride(context, mWallpaperColors); + } + if (mWallpaperColors != null) { + return new ContextThemeWrapper(context, + Themes.getActivityThemeRes(context, mWallpaperColors.getColorHints())); + } else { + return new ContextThemeWrapper(context, + Themes.getActivityThemeRes(context)); + } + } else { + if (mWallpaperColors == null) { + return new ContextThemeWrapper(context, + Themes.getActivityThemeRes(context)); + } + LocalColorExtractor.newInstance(context) + .applyColorsOverride(context, mWallpaperColors); + return new ContextThemeWrapper(context, + Themes.getActivityThemeRes(context, mWallpaperColors.getColorHints())); + } + } + + @WorkerThread + private void loadModelData() { + final Context inflationContext = getPreviewContext(); + if (!mGridName.equals(LauncherPrefs.INSTANCE.get(mContext).get(GRID_NAME)) + || !mShapeKey.equals(LauncherPrefs.INSTANCE.get(mContext).get(PREF_ICON_SHAPE)) + || !TextUtils.isEmpty(mLayoutXml)) { + + boolean isCustomLayout = extendibleThemeManager() && !TextUtils.isEmpty(mLayoutXml); + int widgetHostId = isCustomLayout ? APPWIDGET_HOST_ID + mCallingPid : APPWIDGET_HOST_ID; + + // Start the migration + PreviewContext previewContext = new PreviewContext( + inflationContext, mGridName, mShapeKey, widgetHostId, mLayoutXml); + PreviewAppComponent appComponent = + (PreviewAppComponent) LauncherComponentProvider.get(previewContext); + + if (extendibleThemeManager() && isCustomLayout && !mDeletingHostOnExit) { + mDeletingHostOnExit = true; + mLifeCycleTracker.add(() -> { + AppWidgetHost host = new AppWidgetHost(mContext, widgetHostId); + // Start listening here, so that any previous active host is disabled + host.startListening(); + host.stopListening(); + host.deleteHost(); + }); + } + + LoaderTask task = appComponent.getLoaderTaskFactory().newLoaderTask( + appComponent.getBaseLauncherBinderFactory().createBinder(new Callbacks[0]), + new UserManagerState()); + + InvariantDeviceProfile idp = appComponent.getIDP(); + DeviceProfile deviceProfile = idp.getDeviceProfile(previewContext); + String query = deviceProfile.isTwoPanels + ? selectionForWorkspaceScreen(FIRST_SCREEN_ID, SECOND_SCREEN_ID) + : selectionForWorkspaceScreen(FIRST_SCREEN_ID); + Map<ComponentKey, AppWidgetProviderInfo> widgetProviderInfoMap = new HashMap<>(); + task.loadWorkspaceForPreview(query, widgetProviderInfoMap); + final SparseArray<Size> spanInfo = getLoadedLauncherWidgetInfo(); + MAIN_EXECUTOR.execute(() -> { + renderView(previewContext, appComponent.getDataModel(), widgetHostId, + widgetProviderInfoMap, spanInfo, idp); + mLifeCycleTracker.add(previewContext::onDestroy); + }); + } else { + LauncherAppState.getInstance(inflationContext).getModel().loadAsync(dataModel -> { + if (dataModel != null) { + MAIN_EXECUTOR.execute(() -> renderView(inflationContext, dataModel, + APPWIDGET_HOST_ID, null, null, + LauncherAppState.getIDP(inflationContext))); + } else { + Log.e(TAG, "Model loading failed"); + } + }); + } + } + + @UiThread + private void renderView(Context inflationContext, BgDataModel dataModel, int widgetHostId, + Map<ComponentKey, AppWidgetProviderInfo> widgetProviderInfoMap, + @Nullable final SparseArray<Size> launcherWidgetSpanInfo, InvariantDeviceProfile idp) { + if (mDestroyed) { + return; + } + LauncherPreviewRenderer renderer; + if (Flags.newCustomizationPickerUi()) { + renderer = new LauncherPreviewRenderer(inflationContext, idp, widgetHostId, + mPreviewColorOverride, mWallpaperColors, launcherWidgetSpanInfo); + } else { + renderer = new LauncherPreviewRenderer(inflationContext, idp, widgetHostId, + mWallpaperColors, launcherWidgetSpanInfo); + } + renderer.hideBottomRow(mHideQsb); + View view = renderer.getRenderedView(dataModel, widgetProviderInfoMap); + + view.setPivotX(0); + view.setPivotY(0); + if (idp.isFixedLandscape) { + final float scale = Math.min(mHeight / (float) view.getMeasuredWidth(), + mWidth / (float) view.getMeasuredHeight()); + view.setScaleX(scale); + view.setScaleY(scale); + view.setRotation(90); + view.setTranslationX((mHeight - scale * view.getWidth()) / 2 + mWidth); + view.setTranslationY((mWidth - scale * view.getHeight()) / 2); + } else { + // This aspect scales the view to fit in the surface and centers it + final float scale = Math.min(mWidth / (float) view.getMeasuredWidth(), + mHeight / (float) view.getMeasuredHeight()); + view.setScaleX(scale); + view.setScaleY(scale); + view.setTranslationX((mWidth - scale * view.getWidth()) / 2); + view.setTranslationY((mHeight - scale * view.getHeight()) / 2); + } + + if (!Flags.newCustomizationPickerUi()) { + view.setAlpha(mSkipAnimations ? 1 : 0); + view.animate().alpha(1) + .setInterpolator(new AccelerateDecelerateInterpolator()) + .setDuration(FADE_IN_ANIMATION_DURATION) + .start(); + mSurfaceControlViewHost.setView( + view, + view.getMeasuredWidth(), + view.getMeasuredHeight() + ); + return; + } + + if (mViewRoot == null) { + mViewRoot = new FrameLayout(inflationContext); + FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams( + FrameLayout.LayoutParams.WRAP_CONTENT, // Width + FrameLayout.LayoutParams.WRAP_CONTENT // Height + ); + mViewRoot.setLayoutParams(layoutParams); + mViewRoot.addView(view); + mViewRoot.setAlpha(mSkipAnimations ? 1 : 0); + mViewRoot.animate().alpha(1) + .setInterpolator(new AccelerateDecelerateInterpolator()) + .setDuration(FADE_IN_ANIMATION_DURATION) + .start(); + mSurfaceControlViewHost.setView( + mViewRoot, + view.getMeasuredWidth(), + view.getMeasuredHeight() + ); + } else { + mViewRoot.removeAllViews(); + mViewRoot.addView(view); + } + } + + private static class MySurfaceControlViewHost extends SurfaceControlViewHost { + + private final RunnableList mLifecycleTracker; + + MySurfaceControlViewHost(Context context, Display display, IBinder hostToken, + RunnableList lifeCycleTracker) { + super(context, display, hostToken); + mLifecycleTracker = lifeCycleTracker; + mLifecycleTracker.add(this::release); + } + + @Override + public void release() { + super.release(); + // RunnableList ensures that the callback is only called once + MAIN_EXECUTOR.execute(mLifecycleTracker::executeAllAndDestroy); + } + } +} diff --git a/src/com/android/launcher3/graphics/ShapeDelegate.kt b/src/com/android/launcher3/graphics/ShapeDelegate.kt index 8e72d8f53b..01bfe3018c 100644 --- a/src/com/android/launcher3/graphics/ShapeDelegate.kt +++ b/src/com/android/launcher3/graphics/ShapeDelegate.kt @@ -30,13 +30,11 @@ import android.graphics.RectF import android.graphics.Region import android.graphics.drawable.AdaptiveIconDrawable import android.graphics.drawable.ColorDrawable -import android.util.FloatProperty import android.util.Log import android.view.View import android.view.ViewOutlineProvider import androidx.annotation.VisibleForTesting import androidx.core.graphics.PathParser -import androidx.dynamicanimation.animation.DynamicAnimation.MIN_VISIBLE_CHANGE_SCALE import androidx.graphics.shapes.CornerRounding import androidx.graphics.shapes.Morph import androidx.graphics.shapes.RoundedPolygon @@ -44,8 +42,6 @@ import androidx.graphics.shapes.SvgPathParser import androidx.graphics.shapes.rectangle import androidx.graphics.shapes.toPath import androidx.graphics.shapes.transformed -import com.android.launcher3.Flags -import com.android.launcher3.anim.SpringAnimationBuilder import com.android.launcher3.icons.GraphicsUtils import com.android.launcher3.views.ClipPathView @@ -93,6 +89,7 @@ interface ShapeDelegate { } /** Rounded square with [radiusRatio] as a ratio of its half edge size */ + @VisibleForTesting open class RoundedSquare(val radiusRatio: Float) : ShapeDelegate { override fun drawShape( @@ -131,7 +128,7 @@ interface ShapeDelegate { isReversed: Boolean, ): ValueAnimator where T : View, T : ClipPathView { val startRadius = (startRect.width() / 2f) * radiusRatio - val pathProvider = { progress: Float, path: Path -> + return ClipAnimBuilder(target) { progress, path -> val radius = (1 - progress) * startRadius + progress * endRadius path.addRoundRect( (1 - progress) * startRect.left + progress * endRect.left, @@ -143,13 +140,7 @@ interface ShapeDelegate { Path.Direction.CW, ) } - val shouldUseSpringAnimation = - Flags.enableLauncherIconShapes() && Flags.enableExpressiveFolderExpansion() - return if (shouldUseSpringAnimation) { - ClipSpringAnimBuilder(target, pathProvider).toAnim(isReversed) - } else { - ClipAnimBuilder(target, pathProvider).toAnim(isReversed) - } + .toAnim(isReversed) } override fun equals(other: Any?) = @@ -232,13 +223,8 @@ interface ShapeDelegate { cornerR = endRadius, ), ) - val shouldUseSpringAnimation = - Flags.enableLauncherIconShapes() && Flags.enableExpressiveFolderExpansion() - return if (shouldUseSpringAnimation) { - ClipSpringAnimBuilder(target, morph::toPath).toAnim(isReversed) - } else { - ClipAnimBuilder(target, morph::toPath).toAnim(isReversed) - } + + return ClipAnimBuilder(target, morph::toPath).toAnim(isReversed) } } @@ -278,66 +264,11 @@ interface ShapeDelegate { } } - private class ClipSpringAnimBuilder<T>(val target: T, val pathProvider: (Float, Path) -> Unit) : - AnimatorListenerAdapter() where T : View, T : ClipPathView { - - private var oldOutlineProvider: ViewOutlineProvider? = null - val path = Path() - private val animatorBuilder = SpringAnimationBuilder(target.context) - private val progressProperty = - object : FloatProperty<ClipSpringAnimBuilder<T>>("progress") { - override fun setValue(obj: ClipSpringAnimBuilder<T>, value: Float) { - // Don't want to go below 0 or above 1 for progress. - val clampedValue = minOf(maxOf(value, 0f), 1f) - path.reset() - pathProvider.invoke(clampedValue, path) - target.setClipPath(path) - } - - override fun get(obj: ClipSpringAnimBuilder<T>): Float { - return 0f - } - } - - override fun onAnimationStart(animation: Animator) { - target.apply { - oldOutlineProvider = outlineProvider - outlineProvider = null - translationZ = -target.elevation - } - } - - override fun onAnimationEnd(animation: Animator) { - target.apply { - translationZ = 0f - outlineProvider = oldOutlineProvider - } - } - - fun toAnim(isReversed: Boolean): ValueAnimator { - val mStartValue = if (isReversed) 1f else 0f - val mEndValue = if (isReversed) 0f else 1f - pathProvider.invoke(mStartValue, path) - target.setClipPath(path) - val animator = - animatorBuilder - .setStiffness(SPRING_STIFFNESS_SHAPE_POSITION) - .setDampingRatio(SPRING_DAMPING_SHAPE_POSITION) - .setStartValue(mStartValue) - .setEndValue(mEndValue) - .setMinimumVisibleChange(MIN_VISIBLE_CHANGE_SCALE) - .build(this, progressProperty) - animator.addListener(this) - return animator - } - } - companion object { + const val TAG = "IconShape" const val DEFAULT_PATH_SIZE = 100f const val AREA_CALC_SIZE = 1000 - private const val SPRING_STIFFNESS_SHAPE_POSITION = 380f - private const val SPRING_DAMPING_SHAPE_POSITION = 0.8f // .1% error margin const val AREA_DIFF_THRESHOLD = AREA_CALC_SIZE * AREA_CALC_SIZE / 1000 diff --git a/src/com/android/launcher3/graphics/SysUiScrim.java b/src/com/android/launcher3/graphics/SysUiScrim.java index 33a62032c0..6bc8185d82 100644 --- a/src/com/android/launcher3/graphics/SysUiScrim.java +++ b/src/com/android/launcher3/graphics/SysUiScrim.java @@ -189,7 +189,7 @@ public class SysUiScrim implements View.OnAttachStateChangeListener { public void onInsetsChanged(Rect insets) { DeviceProfile dp = mContainer.getDeviceProfile(); mDrawTopScrim = insets.top > 0; - mDrawBottomScrim = !dp.isVerticalBarLayout() && !dp.getDeviceProperties().isGestureMode() && !dp.isTaskbarPresent; + mDrawBottomScrim = !dp.isVerticalBarLayout() && !dp.isGestureMode && !dp.isTaskbarPresent; } @Override diff --git a/src/com/android/launcher3/graphics/ThemeManager.kt b/src/com/android/launcher3/graphics/ThemeManager.kt index a24754c652..4b2a0e465f 100644 --- a/src/com/android/launcher3/graphics/ThemeManager.kt +++ b/src/com/android/launcher3/graphics/ThemeManager.kt @@ -23,21 +23,18 @@ import com.android.launcher3.Item import com.android.launcher3.LauncherPrefChangeListener import com.android.launcher3.LauncherPrefs import com.android.launcher3.LauncherPrefs.Companion.backedUpItem -import com.android.launcher3.concurrent.annotations.Ui import com.android.launcher3.dagger.ApplicationContext import com.android.launcher3.dagger.LauncherAppComponent import com.android.launcher3.dagger.LauncherAppSingleton import com.android.launcher3.graphics.ShapeDelegate.Companion.pickBestShape import com.android.launcher3.icons.IconThemeController import com.android.launcher3.icons.mono.MonoIconThemeController -import com.android.launcher3.shapes.IconShapeModel.Companion.DEFAULT_ICON_RADIUS import com.android.launcher3.shapes.ShapesProvider import com.android.launcher3.util.DaggerSingletonObject import com.android.launcher3.util.DaggerSingletonTracker -import com.android.launcher3.util.LooperExecutor +import com.android.launcher3.util.Executors.MAIN_EXECUTOR import com.android.launcher3.util.SimpleBroadcastReceiver import java.util.concurrent.CopyOnWriteArrayList -import java.util.concurrent.Executor import javax.inject.Inject /** Centralized class for managing Launcher icon theming */ @@ -46,7 +43,6 @@ class ThemeManager @Inject constructor( @ApplicationContext private val context: Context, - @Ui private val uiExecutor: LooperExecutor, private val prefs: LauncherPrefs, private val iconControllerFactory: IconControllerFactory, lifecycle: DaggerSingletonTracker, @@ -75,8 +71,7 @@ constructor( private val listeners = CopyOnWriteArrayList<ThemeChangeListener>() init { - val receiver = SimpleBroadcastReceiver( - context, uiExecutor) { verifyIconState() } + val receiver = SimpleBroadcastReceiver(context, MAIN_EXECUTOR) { verifyIconState() } receiver.registerPkgActions("android", ACTION_OVERLAY_CHANGED) val keys = (iconControllerFactory.prefKeys + PREF_ICON_SHAPE) @@ -121,34 +116,33 @@ constructor( if (oldState != null && oldState.iconMask == iconMask) oldState.iconShape else pickBestShape(iconMask) - val folderRadius = shapeModel?.folderRadiusRatio ?: 1f + val folderShapeMask = shapeModel?.folderPathString ?: iconMask val folderShape = - if (oldState != null && oldState.folderRadius == folderRadius) { - oldState.folderShape - } else if (folderRadius == 1f) { - ShapeDelegate.Circle() - } else { - ShapeDelegate.RoundedSquare(folderRadius) + when { + oldState != null && oldState.folderShapeMask == folderShapeMask -> + oldState.folderShape + folderShapeMask == iconMask || folderShapeMask.isEmpty() -> iconShape + else -> pickBestShape(folderShapeMask) } return IconState( iconMask = iconMask, - folderRadius = folderRadius, + folderShapeMask = folderShapeMask, themeController = iconControllerFactory.createThemeController(), + iconScale = shapeModel?.iconScale ?: 1f, iconShape = iconShape, folderShape = folderShape, - shapeRadius = shapeModel?.shapeRadius ?: DEFAULT_ICON_RADIUS, ) } data class IconState( val iconMask: String, - val folderRadius: Float, + val folderShapeMask: String, val themeController: IconThemeController?, val themeCode: String = themeController?.themeID ?: "no-theme", + val iconScale: Float = 1f, val iconShape: ShapeDelegate, val folderShape: ShapeDelegate, - val shapeRadius: Float, ) { fun toUniqueId() = "${iconMask.hashCode()},$themeCode" } @@ -181,6 +175,6 @@ constructor( Resources.getSystem().getIdentifier("config_icon_mask", "string", "android") // Use a constant to allow equality check in verifyIconState - private val MONO_THEME_CONTROLLER = MonoIconThemeController(shouldForceThemeIcon = true) + private val MONO_THEME_CONTROLLER = MonoIconThemeController() } } diff --git a/src/com/android/launcher3/icons/IconCache.java b/src/com/android/launcher3/icons/IconCache.java index a72c375c74..87f387f46f 100644 --- a/src/com/android/launcher3/icons/IconCache.java +++ b/src/com/android/launcher3/icons/IconCache.java @@ -50,6 +50,7 @@ import androidx.core.util.Pair; import com.android.launcher3.Flags; import com.android.launcher3.InvariantDeviceProfile; +import com.android.launcher3.LauncherFiles; import com.android.launcher3.Utilities; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppSingleton; @@ -66,8 +67,6 @@ import com.android.launcher3.model.data.PackageItemInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.pm.InstallSessionHelper; import com.android.launcher3.pm.UserCache; -import com.android.launcher3.shortcuts.ShortcutKey; -import com.android.launcher3.shortcuts.ShortcutRequest; import com.android.launcher3.util.CancellableTask; import com.android.launcher3.util.ComponentKey; import com.android.launcher3.util.DaggerSingletonTracker; @@ -87,6 +86,8 @@ import java.util.stream.Stream; import javax.inject.Inject; import javax.inject.Named; +import app.lawnchair.icons.LawnchairIconProvider; + /** * Cache of application icons. Icons can be made from any thread. */ @@ -96,12 +97,12 @@ public class IconCache extends BaseIconCache { // Shortcut extra which can point to a packageName and can be used to indicate an alternate // badge info. Launcher only reads this if the shortcut comes from a system app. public static final String EXTRA_SHORTCUT_BADGE_OVERRIDE_PACKAGE = - "extra_shortcut_badge_override_package"; + "extra_shortcut_badge_override_package"; private static final String TAG = "Launcher.IconCache"; private final Predicate<ItemInfoWithIcon> mIsUsingFallbackOrNonDefaultIconCheck = w -> - w.bitmap != null && (w.bitmap.isNullOrLowRes() || !isDefaultIcon(w.bitmap, w.user)); + w.bitmap != null && (w.bitmap.isNullOrLowRes() || !isDefaultIcon(w.bitmap, w.user)); private final LauncherApps mLauncherApps; private final UserCache mUserManager; @@ -114,27 +115,40 @@ public class IconCache extends BaseIconCache { private int mPendingIconRequestCount = 0; + // Lawnchair: Apply 3p icon pack + public IconCache(Context context, InvariantDeviceProfile idp, LauncherIcons.IconPool iconPool, DaggerSingletonTracker lifecycle) { + this( + context, + idp, + LauncherFiles.APP_ICONS_DB, + UserCache.INSTANCE.get(context), + new LawnchairIconProvider(context), + InstallSessionHelper.INSTANCE.get(context), + iconPool, + lifecycle + ); + } + @Inject public IconCache( - @ApplicationContext Context context, - InvariantDeviceProfile idp, - @Nullable @Named("ICONS_DB") String dbFileName, - UserCache userCache, - LauncherIconProvider iconProvider, - // TODO: Lawnchair stuff - // IconProvider iconProvider, - InstallSessionHelper installSessionHelper, - LauncherIcons.IconPool iconPool, - InstantAppResolver instantAppResolver, - DaggerSingletonTracker lifecycle) { + @ApplicationContext Context context, + InvariantDeviceProfile idp, + @Nullable @Named("ICONS_DB") String dbFileName, + UserCache userCache, + LauncherIconProvider iconProvider, + // TODO: Lawnchair stuff + // IconProvider iconProvider, + InstallSessionHelper installSessionHelper, + LauncherIcons.IconPool iconPool, + DaggerSingletonTracker lifecycle) { super(context, dbFileName, MODEL_EXECUTOR.getLooper(), - idp.fillResIconDpi, idp.iconBitmapSize, true /* inMemoryCache */, iconProvider); + idp.fillResIconDpi, idp.iconBitmapSize, true /* inMemoryCache */, iconProvider); mLauncherApps = context.getSystemService(LauncherApps.class); mUserManager = userCache; mInstallSessionHelper = installSessionHelper; mIconPool = iconPool; - mInstantAppResolver = instantAppResolver; + mInstantAppResolver = InstantAppResolver.newInstance(context); mWidgetCategoryBitmapInfos = new SparseArray<>(); mCancelledTask = new CancellableTask(() -> null, MAIN_EXECUTOR, c -> { }); @@ -153,7 +167,7 @@ public class IconCache extends BaseIconCache { LauncherIcons.IconPool iconPool, DaggerSingletonTracker lifecycle) { super(context, dbFileName, MODEL_EXECUTOR.getLooper(), - idp.fillResIconDpi, Math.max(idp.iconBitmapSize, idp.allAppsIconBitmapSize), true /* inMemoryCache */, iconProvider); + idp.fillResIconDpi, idp.iconBitmapSize, true /* inMemoryCache */, iconProvider); mLauncherApps = context.getSystemService(LauncherApps.class); mUserManager = userCache; mInstallSessionHelper = installSessionHelper; @@ -188,7 +202,7 @@ public class IconCache extends BaseIconCache { * Updates the entries related to the given package in memory and persistent DB. */ public synchronized void updateIconsForPkg(@NonNull final String packageName, - @NonNull final UserHandle user) { + @NonNull final UserHandle user) { List<LauncherActivityInfo> apps = mLauncherApps.getActivityList(packageName, user); if (Utilities.ATLEAST_V) { if (Flags.restoreArchivedAppIconsFromDb() @@ -221,21 +235,21 @@ public class IconCache extends BaseIconCache { */ @AnyThread public CancellableTask updateIconInBackground(final ItemInfoUpdateReceiver caller, - final ItemInfoWithIcon info, final CacheLookupFlag lookupFlag) { + final ItemInfoWithIcon info) { Supplier<ItemInfoWithIcon> task; if (info instanceof AppInfo || info instanceof WorkspaceItemInfo) { task = () -> { - getTitleAndIcon(info, lookupFlag); + getTitleAndIcon(info, DEFAULT_LOOKUP_FLAG); return info; }; } else if (info instanceof PackageItemInfo pii) { task = () -> { - getTitleAndIconForApp(pii, lookupFlag); + getTitleAndIconForApp(pii, DEFAULT_LOOKUP_FLAG); return pii; }; } else { Log.i(TAG, "Icon update not supported for " - + info == null ? "null" : info.getClass().getName()); + + info == null ? "null" : info.getClass().getName()); return mCancelledTask; } @@ -251,7 +265,7 @@ public class IconCache extends BaseIconCache { } CancellableTask<ItemInfoWithIcon> request = new CancellableTask<>( - task, MAIN_EXECUTOR, caller::reapplyItemInfo, endRunnable); + task, MAIN_EXECUTOR, caller::reapplyItemInfo, endRunnable); Utilities.postAsyncCallback(workerHandler, request); return request; } @@ -268,8 +282,8 @@ public class IconCache extends BaseIconCache { */ public synchronized void updateTitleAndIcon(AppInfo application) { CacheEntry entry = cacheLocked(application.componentName, - application.user, () -> null, LauncherActivityCachingLogic.INSTANCE, - application.getMatchingLookupFlag()); + application.user, () -> null, LauncherActivityCachingLogic.INSTANCE, + application.getMatchingLookupFlag()); if (entry.bitmap != null || !isDefaultIcon(entry.bitmap, application.user)) { applyCacheEntry(entry, application); } @@ -280,9 +294,9 @@ public class IconCache extends BaseIconCache { */ @SuppressWarnings("NewApi") public synchronized void getTitleAndIcon(ItemInfoWithIcon info, - LauncherActivityInfo activityInfo, @NonNull CacheLookupFlag lookupFlag) { + LauncherActivityInfo activityInfo, @NonNull CacheLookupFlag lookupFlag) { boolean isAppArchived = Flags.enableSupportForArchiving() && activityInfo != null - && activityInfo.getActivityInfo().isArchived; + && activityInfo.getActivityInfo().isArchived; // If we already have activity info, no need to use package icon getTitleAndIcon(info, () -> activityInfo, lookupFlag.withUsePackageIcon(isAppArchived)); } @@ -307,14 +321,14 @@ public class IconCache extends BaseIconCache { * Shortcut entries are not kept in memory since they are not frequently used */ public <T extends ItemInfoWithIcon> void getShortcutIcon(T info, CacheableShortcutInfo si, - @NonNull Predicate<T> fallbackIconCheck) { + @NonNull Predicate<T> fallbackIconCheck) { UserHandle user = CacheableShortcutCachingLogic.INSTANCE.getUser(si); BitmapInfo bitmapInfo = cacheLocked( - CacheableShortcutCachingLogic.INSTANCE.getComponent(si), - user, - () -> si, - CacheableShortcutCachingLogic.INSTANCE, - DEFAULT_LOOKUP_FLAG.withSkipAddToMemCache().withThemeIcon()).bitmap; + CacheableShortcutCachingLogic.INSTANCE.getComponent(si), + user, + () -> si, + CacheableShortcutCachingLogic.INSTANCE, + DEFAULT_LOOKUP_FLAG.withSkipAddToMemCache()).bitmap; if (bitmapInfo.isNullOrLowRes()) { bitmapInfo = getDefaultIcon(user); } @@ -337,9 +351,9 @@ public class IconCache extends BaseIconCache { // Check for badge override first. String pkg = shortcutInfo.getPackage(); String override = shortcutInfo.getExtras() == null ? null - : shortcutInfo.getExtras().getString(EXTRA_SHORTCUT_BADGE_OVERRIDE_PACKAGE); + : shortcutInfo.getExtras().getString(EXTRA_SHORTCUT_BADGE_OVERRIDE_PACKAGE); if (!TextUtils.isEmpty(override) - && mInstallSessionHelper.isTrustedPackage(pkg, shortcutInfo.getUserHandle())) { + && mInstallSessionHelper.isTrustedPackage(pkg, shortcutInfo.getUserHandle())) { pkg = override; } else { // Try component based badge before trying the normal package badge @@ -350,8 +364,8 @@ public class IconCache extends BaseIconCache { appInfo.user = shortcutInfo.getUserHandle(); appInfo.componentName = cn; appInfo.intent = new Intent(Intent.ACTION_MAIN) - .addCategory(Intent.CATEGORY_LAUNCHER) - .setComponent(cn); + .addCategory(Intent.CATEGORY_LAUNCHER) + .setComponent(cn); getTitleAndIcon(appInfo, DEFAULT_LOOKUP_FLAG); return appInfo; } @@ -366,31 +380,18 @@ public class IconCache extends BaseIconCache { * corresponding activity is not found, it reverts to the package icon. */ public synchronized void getTitleAndIcon( - @NonNull ItemInfoWithIcon info, - @NonNull CacheLookupFlag lookupFlag) { + @NonNull ItemInfoWithIcon info, + @NonNull CacheLookupFlag lookupFlag) { // null info means not installed, but if we have a component from the intent then // we should still look in the cache for restored app icons. if (info.getTargetComponent() == null) { info.bitmap = getDefaultIcon(info.user); info.title = ""; info.contentDescription = ""; - } else if (info.itemType == ITEM_TYPE_DEEP_SHORTCUT) { - ShortcutKey sk = ShortcutKey.fromItemInfo(info); - List<ShortcutInfo> sis = sk.buildRequest(context).query(ShortcutRequest.ALL); - if (sis.isEmpty()) { - return; - } - ShortcutInfo si = sis.getFirst(); - CacheEntry entry = cacheLocked(sk.componentName, sk.user, - () -> new CacheableShortcutInfo(si, context), - CacheableShortcutCachingLogic.INSTANCE, - lookupFlag.withSkipAddToMemCache()); - applyCacheEntry(entry, info); - info.bitmap = info.bitmap.withBadgeInfo(getShortcutInfoBadge(si)); } else { Intent intent = info.getIntent(); getTitleAndIcon(info, () -> mLauncherApps.resolveActivity(intent, info.user), - lookupFlag.withUsePackageIcon()); + lookupFlag.withUsePackageIcon()); } } @@ -399,8 +400,8 @@ public class IconCache extends BaseIconCache { */ public synchronized String getTitleNoCache(CachedObject info) { CacheEntry entry = cacheLocked(info.getComponent(), info.getUser(), () -> info, - CachedObjectCachingLogic.INSTANCE, - DEFAULT_LOOKUP_FLAG.withUseLowRes().withSkipAddToMemCache()); + CachedObjectCachingLogic.INSTANCE, + DEFAULT_LOOKUP_FLAG.withUseLowRes().withSkipAddToMemCache()); return Utilities.trim(entry.title); } @@ -408,11 +409,11 @@ public class IconCache extends BaseIconCache { * Fill in {@param mWorkspaceItemInfo} with the icon and label for {@param info} */ public synchronized void getTitleAndIcon( - @NonNull ItemInfoWithIcon infoInOut, - @NonNull Supplier<LauncherActivityInfo> activityInfoProvider, - @NonNull CacheLookupFlag lookupFlag) { + @NonNull ItemInfoWithIcon infoInOut, + @NonNull Supplier<LauncherActivityInfo> activityInfoProvider, + @NonNull CacheLookupFlag lookupFlag) { CacheEntry entry = cacheLocked(infoInOut.getTargetComponent(), infoInOut.user, - activityInfoProvider, LauncherActivityCachingLogic.INSTANCE, lookupFlag); + activityInfoProvider, LauncherActivityCachingLogic.INSTANCE, lookupFlag); applyCacheEntry(entry, infoInOut); } @@ -424,64 +425,64 @@ public class IconCache extends BaseIconCache { * @param lookupFlag what flags to use when loading the icon. */ private <T extends ItemInfoWithIcon> Cursor createBulkQueryCursor( - List<IconRequestInfo<T>> iconRequestInfos, UserHandle user, CacheLookupFlag lookupFlag) - throws SQLiteException { + List<IconRequestInfo<T>> iconRequestInfos, UserHandle user, CacheLookupFlag lookupFlag) + throws SQLiteException { String[] queryParams = Stream.concat( - iconRequestInfos.stream() - .map(r -> r.itemInfo.getTargetComponent()) - .filter(Objects::nonNull) - .distinct() - .map(ComponentName::flattenToString), - Stream.of(Long.toString(getSerialNumberForUser(user)))).toArray(String[]::new); + iconRequestInfos.stream() + .map(r -> r.itemInfo.getTargetComponent()) + .filter(Objects::nonNull) + .distinct() + .map(ComponentName::flattenToString), + Stream.of(Long.toString(getSerialNumberForUser(user)))).toArray(String[]::new); String componentNameQuery = TextUtils.join( - ",", Collections.nCopies(queryParams.length - 1, "?")); + ",", Collections.nCopies(queryParams.length - 1, "?")); return iconDb.query( - toLookupColumns(lookupFlag), - COLUMN_COMPONENT - + " IN ( " + componentNameQuery + " )" - + " AND " + COLUMN_USER + " = ?", - queryParams); + toLookupColumns(lookupFlag), + COLUMN_COMPONENT + + " IN ( " + componentNameQuery + " )" + + " AND " + COLUMN_USER + " = ?", + queryParams); } /** * Load and fill icons requested in iconRequestInfos using a single bulk sql query. */ public synchronized <T extends ItemInfoWithIcon> void getTitlesAndIconsInBulk( - List<IconRequestInfo<T>> iconRequestInfos) { - Map<Pair<UserHandle, CacheLookupFlag>, List<IconRequestInfo<T>>> iconLoadSubsectionsMap = - iconRequestInfos.stream() - .filter(iconRequest -> { - if (iconRequest.itemInfo.getTargetComponent() == null) { - Log.i(TAG, - "Skipping Item info with null component name: " - + iconRequest.itemInfo); - iconRequest.itemInfo.bitmap = getDefaultIcon( - iconRequest.itemInfo.user); - return false; - } - return true; - }) - .collect(groupingBy(iconRequest -> - Pair.create(iconRequest.itemInfo.user, iconRequest.lookupFlag))); + List<IconRequestInfo<T>> iconRequestInfos) { + Map<Pair<UserHandle, Boolean>, List<IconRequestInfo<T>>> iconLoadSubsectionsMap = + iconRequestInfos.stream() + .filter(iconRequest -> { + if (iconRequest.itemInfo.getTargetComponent() == null) { + Log.i(TAG, + "Skipping Item info with null component name: " + + iconRequest.itemInfo); + iconRequest.itemInfo.bitmap = getDefaultIcon( + iconRequest.itemInfo.user); + return false; + } + return true; + }) + .collect(groupingBy(iconRequest -> + Pair.create(iconRequest.itemInfo.user, iconRequest.useLowResIcon))); Trace.beginSection("loadIconsInBulk"); iconLoadSubsectionsMap.forEach((sectionKey, filteredList) -> { Map<ComponentName, List<IconRequestInfo<T>>> duplicateIconRequestsMap = - filteredList.stream() - .filter(iconRequest -> { - // Filter out icons that should not share the same bitmap and title - if (iconRequest.itemInfo.itemType == ITEM_TYPE_DEEP_SHORTCUT) { - Log.e(TAG, - "Skipping Item info for deep shortcut: " - + iconRequest.itemInfo, - new IllegalStateException()); - return false; - } - return true; - }) - .collect(groupingBy(iconRequest -> - iconRequest.itemInfo.getTargetComponent())); + filteredList.stream() + .filter(iconRequest -> { + // Filter out icons that should not share the same bitmap and title + if (iconRequest.itemInfo.itemType == ITEM_TYPE_DEEP_SHORTCUT) { + Log.e(TAG, + "Skipping Item info for deep shortcut: " + + iconRequest.itemInfo, + new IllegalStateException()); + return false; + } + return true; + }) + .collect(groupingBy(iconRequest -> + iconRequest.itemInfo.getTargetComponent())); Trace.beginSection("loadIconSubsectionInBulk"); loadIconSubsection(sectionKey, filteredList, duplicateIconRequestsMap); @@ -491,38 +492,39 @@ public class IconCache extends BaseIconCache { } private <T extends ItemInfoWithIcon> void loadIconSubsection( - Pair<UserHandle, CacheLookupFlag> sectionKey, - List<IconRequestInfo<T>> filteredList, - Map<ComponentName, List<IconRequestInfo<T>>> duplicateIconRequestsMap) { + Pair<UserHandle, Boolean> sectionKey, + List<IconRequestInfo<T>> filteredList, + Map<ComponentName, List<IconRequestInfo<T>>> duplicateIconRequestsMap) { Trace.beginSection("loadIconSubsectionWithDatabase"); + CacheLookupFlag lookupFlag = DEFAULT_LOOKUP_FLAG.withUseLowRes(sectionKey.second); try (Cursor c = createBulkQueryCursor( - filteredList, - /* user = */ sectionKey.first, - /* lookupFlag = */ sectionKey.second)) { + filteredList, + /* user = */ sectionKey.first, + lookupFlag)) { // Database title and icon loading int componentNameColumnIndex = c.getColumnIndexOrThrow(COLUMN_COMPONENT); while (c.moveToNext()) { ComponentName cn = ComponentName.unflattenFromString( - c.getString(componentNameColumnIndex)); + c.getString(componentNameColumnIndex)); List<IconRequestInfo<T>> duplicateIconRequests = - duplicateIconRequestsMap.get(cn); + duplicateIconRequestsMap.get(cn); if (cn != null) { if (duplicateIconRequests != null) { CacheEntry entry = cacheLocked( - cn, - /* user = */ sectionKey.first, - () -> duplicateIconRequests.get(0).launcherActivityInfo, - LauncherActivityCachingLogic.INSTANCE, - sectionKey.second, - c); + cn, + /* user = */ sectionKey.first, + () -> duplicateIconRequests.get(0).launcherActivityInfo, + LauncherActivityCachingLogic.INSTANCE, + lookupFlag, + c); for (IconRequestInfo<T> iconRequest : duplicateIconRequests) { applyCacheEntry(entry, iconRequest.itemInfo); } } else { Log.e(TAG, "Found entry in icon database but no main activity " - + "entry for cn: " + cn); + + "entry for cn: " + cn); } } } @@ -540,13 +542,13 @@ public class IconCache extends BaseIconCache { BitmapInfo icon = itemInfo.bitmap; boolean loadFallbackTitle = TextUtils.isEmpty(itemInfo.title); boolean loadFallbackIcon = icon == null - || isDefaultIcon(icon, itemInfo.user) - || icon == BitmapInfo.LOW_RES_INFO; + || isDefaultIcon(icon, itemInfo.user) + || icon == BitmapInfo.LOW_RES_INFO; if (loadFallbackTitle || loadFallbackIcon) { Log.i(TAG, - "Database bulk icon loading failed, using fallback bulk icon loading " - + "for: " + cn); + "Database bulk icon loading failed, using fallback bulk icon loading " + + "for: " + cn); CacheEntry entry = new CacheEntry(); LauncherActivityInfo lai = iconRequestInfo.launcherActivityInfo; @@ -560,20 +562,20 @@ public class IconCache extends BaseIconCache { if (loadFallbackIcon) { loadFallbackIcon( - lai, - entry, - LauncherActivityCachingLogic.INSTANCE, - DEFAULT_LOOKUP_FLAG.withUsePackageIcon(false), - /* usePackageTitle= */ loadFallbackTitle, - cn, - sectionKey.first); + lai, + entry, + LauncherActivityCachingLogic.INSTANCE, + /* usePackageIcon= */ false, + /* usePackageTitle= */ loadFallbackTitle, + cn, + sectionKey.first); } if (loadFallbackTitle && TextUtils.isEmpty(entry.title) && lai != null) { loadFallbackTitle( - lai, - entry, - LauncherActivityCachingLogic.INSTANCE, - sectionKey.first); + lai, + entry, + LauncherActivityCachingLogic.INSTANCE, + sectionKey.first); } for (IconRequestInfo<T> iconRequest : duplicateIconRequestsMap.get(cn)) { @@ -588,17 +590,17 @@ public class IconCache extends BaseIconCache { * Fill in {@param infoInOut} with the corresponding icon and label. */ public synchronized void getTitleAndIconForApp( - @NonNull final PackageItemInfo infoInOut, - @NonNull CacheLookupFlag lookupFlag) { + @NonNull final PackageItemInfo infoInOut, + @NonNull CacheLookupFlag lookupFlag) { CacheEntry entry = getEntryForPackageLocked( - infoInOut.packageName, infoInOut.user, lookupFlag); + infoInOut.packageName, infoInOut.user, lookupFlag); applyCacheEntry(entry, infoInOut); if (infoInOut.widgetCategory == NO_CATEGORY) { return; } WidgetSection widgetSection = WidgetSections.getWidgetSections(context) - .get(infoInOut.widgetCategory); + .get(infoInOut.widgetCategory); infoInOut.title = context.getString(widgetSection.mSectionTitle); infoInOut.contentDescription = getUserBadgedLabel(infoInOut.title, infoInOut.user); final BitmapInfo cachedBitmap = mWidgetCategoryBitmapInfos.get(infoInOut.widgetCategory); @@ -609,8 +611,8 @@ public class IconCache extends BaseIconCache { try (LauncherIcons li = mIconPool.obtain()) { final BitmapInfo tempBitmap = li.createBadgedIconBitmap( - context.getDrawable(widgetSection.mSectionDrawable), - new BaseIconFactory.IconOptions()); + context.getDrawable(widgetSection.mSectionDrawable), + new BaseIconFactory.IconOptions()); mWidgetCategoryBitmapInfos.put(infoInOut.widgetCategory, tempBitmap); infoInOut.bitmap = getBadgedIcon(tempBitmap, infoInOut.user); } catch (Exception e) { @@ -620,7 +622,7 @@ public class IconCache extends BaseIconCache { } private synchronized BitmapInfo getBadgedIcon(@Nullable final BitmapInfo bitmap, - @NonNull final UserHandle user) { + @NonNull final UserHandle user) { if (bitmap == null) { return getDefaultIcon(user); } @@ -628,7 +630,7 @@ public class IconCache extends BaseIconCache { } protected void applyCacheEntry(@NonNull final CacheEntry entry, - @NonNull final ItemInfoWithIcon info) { + @NonNull final ItemInfoWithIcon info) { info.title = Utilities.trim(entry.title); info.contentDescription = entry.contentDescription; info.bitmap = entry.bitmap; @@ -660,13 +662,13 @@ public class IconCache extends BaseIconCache { public void updateSessionCache(PackageUserKey key, PackageInstaller.SessionInfo info) { cachePackageInstallInfo(key.mPackageName, key.mUser, info.getAppIcon(), - info.getAppLabel()); + info.getAppLabel()); } @VisibleForTesting synchronized boolean isItemInDb(ComponentKey cacheKey) { return getEntryFromDBLocked(cacheKey, new CacheEntry(), DEFAULT_LOOKUP_FLAG, - LauncherActivityCachingLogic.INSTANCE); + LauncherActivityCachingLogic.INSTANCE); } /** diff --git a/src/com/android/launcher3/icons/LauncherIconProvider.java b/src/com/android/launcher3/icons/LauncherIconProvider.java index f395fdc605..f68b24a57a 100644 --- a/src/com/android/launcher3/icons/LauncherIconProvider.java +++ b/src/com/android/launcher3/icons/LauncherIconProvider.java @@ -16,17 +16,25 @@ package com.android.launcher3.icons; import android.content.Context; +import android.content.pm.ApplicationInfo; import android.content.res.Resources; import android.content.res.XmlResourceParser; +import android.graphics.drawable.AdaptiveIconDrawable; +import android.graphics.drawable.Drawable; import android.text.TextUtils; import android.util.ArrayMap; import android.util.Log; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + import com.android.launcher3.R; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppSingleton; +import com.android.launcher3.graphics.ShapeDelegate; import com.android.launcher3.graphics.ThemeManager; +import com.android.launcher3.util.ApiWrapper; import org.xmlpull.v1.XmlPullParser; @@ -51,15 +59,26 @@ public class LauncherIconProvider extends IconProvider { private Map<String, ThemeData> mThemedIconMap; - protected final ThemeManager mThemeManager; + private final ApiWrapper mApiWrapper; + private final ThemeManager mThemeManager; @Inject public LauncherIconProvider( @ApplicationContext Context context, - ThemeManager themeManager) { + ThemeManager themeManager, + ApiWrapper apiWrapper) { super(context); mThemeManager = themeManager; - mThemedIconMap = FeatureFlags.USE_LOCAL_ICON_OVERRIDES.get() ? null : DISABLED_MAP; + mApiWrapper = apiWrapper; + setIconThemeSupported(mThemeManager.isMonoThemeEnabled()); + } + + /** + * Enables or disables icon theme support + */ + public void setIconThemeSupported(boolean isSupported) { + mThemedIconMap = isSupported && FeatureFlags.USE_LOCAL_ICON_OVERRIDES.get() + ? null : DISABLED_MAP; } @Override @@ -73,6 +92,29 @@ public class LauncherIconProvider extends IconProvider { mSystemState += "," + mThemeManager.getIconState().toUniqueId(); } + @Override + protected String getApplicationInfoHash(@NonNull ApplicationInfo appInfo) { + return mApiWrapper.getApplicationInfoHash(appInfo); + } + + @Nullable + @Override + protected Drawable loadAppInfoIcon(ApplicationInfo info, Resources resources, int density) { + // Tries to load the round icon res, if the app defines it as an adaptive icon + if (mThemeManager.getIconShape() instanceof ShapeDelegate.Circle) { + int roundIconRes = mApiWrapper.getRoundIconRes(info); + if (roundIconRes != 0 && roundIconRes != info.icon) { + try { + Drawable d = resources.getDrawableForDensity(roundIconRes, density); + if (d instanceof AdaptiveIconDrawable) { + return d; + } + } catch (Resources.NotFoundException exc) { } + } + } + return super.loadAppInfoIcon(info, resources, density); + } + private Map<String, ThemeData> getThemedIconMap() { if (mThemedIconMap != null) { return mThemedIconMap; diff --git a/src/com/android/launcher3/icons/LauncherIcons.kt b/src/com/android/launcher3/icons/LauncherIcons.kt index 2637c672d7..29c0de1e5a 100644 --- a/src/com/android/launcher3/icons/LauncherIcons.kt +++ b/src/com/android/launcher3/icons/LauncherIcons.kt @@ -16,6 +16,8 @@ package com.android.launcher3.icons import android.content.Context +import android.graphics.Canvas +import android.graphics.Color import android.graphics.Path import android.graphics.Rect import android.graphics.drawable.AdaptiveIconDrawable @@ -48,6 +50,8 @@ internal constructor( @Assisted private val pool: ConcurrentLinkedQueue<LauncherIcons>, ) : BaseIconFactory(context, idp.fillResIconDpi, idp.iconBitmapSize), AutoCloseable { + private val iconScale = themeManager.iconState.iconScale + init { mThemeController = themeManager.themeController } @@ -67,6 +71,33 @@ internal constructor( return themeManager.iconShape.getPath(iconBounds) } + override fun getIconScale(): Float { + if (!Flags.enableLauncherIconShapes()) return super.getIconScale() + return themeManager.iconState.iconScale + } + + override fun drawAdaptiveIcon( + canvas: Canvas, + drawable: AdaptiveIconDrawable, + overridePath: Path, + ) { + if (!Flags.enableLauncherIconShapes()) { + super.drawAdaptiveIcon(canvas, drawable, overridePath) + return + } + canvas.clipPath(overridePath) + canvas.drawColor(Color.BLACK) + canvas.save() + canvas.scale(iconScale, iconScale, canvas.width / 2f, canvas.height / 2f) + if (drawable.background != null) { + drawable.background.draw(canvas) + } + if (drawable.foreground != null) { + drawable.foreground.draw(canvas) + } + canvas.restore() + } + override fun close() { recycle() } diff --git a/src/com/android/launcher3/logging/ColdRebootStartupLatencyLogger.kt b/src/com/android/launcher3/logging/ColdRebootStartupLatencyLogger.kt index e69de29bb2..2c1675b0c9 100644 --- a/src/com/android/launcher3/logging/ColdRebootStartupLatencyLogger.kt +++ b/src/com/android/launcher3/logging/ColdRebootStartupLatencyLogger.kt @@ -0,0 +1,192 @@ +package com.android.launcher3.logging + +import android.os.SystemClock +import android.util.Log +import android.util.SparseLongArray +import androidx.annotation.MainThread +import androidx.annotation.VisibleForTesting +import androidx.core.util.contains +import androidx.core.util.isEmpty +import com.android.launcher3.BuildConfigs +import com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent +import com.android.launcher3.util.Preconditions + +/** Logger for logging Launcher activity's startup latency. */ +open class ColdRebootStartupLatencyLogger : StartupLatencyLogger { + + companion object { + const val TAG = "ColdRebootStartupLatencyLogger" + const val UNSET_INT = -1 + const val UNSET_LONG = -1L + } + + @VisibleForTesting(otherwise = VisibleForTesting.PROTECTED) + val startTimeByEvent = SparseLongArray() + @VisibleForTesting(otherwise = VisibleForTesting.PROTECTED) + val endTimeByEvent = SparseLongArray() + + @VisibleForTesting(otherwise = VisibleForTesting.PROTECTED) var cardinality: Int = UNSET_INT + @VisibleForTesting(otherwise = VisibleForTesting.PROTECTED) + var workspaceLoadStartTime: Long = UNSET_LONG + + // ColdRebootStartupLatencyLogger should only send launcher startup logs once in each launcher + // activity lifecycle. After launcher activity startup is completed, the logger should be torn + // down and reject all logging calls. This flag should be checked at all APIs to prevent logging + // invalid startup metrics (such as loading workspace in screen rotation). + var isTornDown = false + private var isInTest = false + + /** Subclass can override this method to handle collected latency metrics. */ + @MainThread + override fun log(): ColdRebootStartupLatencyLogger { + return this + } + + @MainThread + override fun logWorkspaceLoadStartTime() = + logWorkspaceLoadStartTime(SystemClock.elapsedRealtime()) + + @VisibleForTesting + @MainThread + fun logWorkspaceLoadStartTime(startTimeMs: Long): ColdRebootStartupLatencyLogger { + Preconditions.assertUIThread() + if (isTornDown) { + return this + } + workspaceLoadStartTime = startTimeMs + return this + } + + /** + * Log size of workspace. Larger number of workspace items (icons, folders, widgets) means + * longer latency to initialize workspace. + */ + @MainThread + override fun logCardinality(cardinality: Int): ColdRebootStartupLatencyLogger { + Preconditions.assertUIThread() + if (isTornDown) { + return this + } + this.cardinality = cardinality + return this + } + + @MainThread + override fun logStart(event: LauncherLatencyEvent) = + logStart(event, SystemClock.elapsedRealtime()) + + @MainThread + override fun logStart( + event: LauncherLatencyEvent, + startTimeMs: Long + ): ColdRebootStartupLatencyLogger { + // In unit test no looper is attached to current thread + Preconditions.assertUIThread() + if (isTornDown) { + return this + } + if (validateLoggingEventAtStart(event)) { + startTimeByEvent.put(event.id, startTimeMs) + } + return this + } + + @MainThread + override fun logEnd(event: LauncherLatencyEvent) = logEnd(event, SystemClock.elapsedRealtime()) + + @MainThread + override fun logEnd( + event: LauncherLatencyEvent, + endTimeMs: Long + ): ColdRebootStartupLatencyLogger { + // In unit test no looper is attached to current thread + Preconditions.assertUIThread() + if (isTornDown) { + return this + } + maybeLogStartOfWorkspaceLoadTime(event) + if (validateLoggingEventAtEnd(event)) { + endTimeByEvent.put(event.id, endTimeMs) + } + + return this + } + + @MainThread + override fun reset() { + // In unit test no looper is attached to current thread + Preconditions.assertUIThread() + startTimeByEvent.clear() + endTimeByEvent.clear() + cardinality = UNSET_INT + workspaceLoadStartTime = UNSET_LONG + isTornDown = true + } + + @MainThread + private fun maybeLogStartOfWorkspaceLoadTime(event: LauncherLatencyEvent) { + if (workspaceLoadStartTime == UNSET_LONG) { + return + } + if (event == LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC) { + logStart(event, workspaceLoadStartTime) + workspaceLoadStartTime = UNSET_LONG + } + } + + /** @return true if we can log start of [LauncherLatencyEvent] and vice versa. */ + @MainThread + private fun validateLoggingEventAtStart(event: LauncherLatencyEvent): Boolean { + if (!BuildConfigs.IS_STUDIO_BUILD && !isInTest) { + return true + } + if (startTimeByEvent.contains(event.id)) { + Log.e(TAG, "Cannot restart same ${event.name} event") + return false + } else if ( + startTimeByEvent.isEmpty() && + event != LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION + ) { + Log.e( + TAG, + "The first log start event must be " + + "${LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.name}.", + ) + return false + } + + return true + } + + /** @return true if we can log end of [LauncherLatencyEvent] and vice versa. */ + @MainThread + private fun validateLoggingEventAtEnd(event: LauncherLatencyEvent): Boolean { + if (!BuildConfigs.IS_STUDIO_BUILD && !isInTest) { + return true + } + if (!startTimeByEvent.contains(event.id)) { + Log.e(TAG, "Cannot end ${event.name} event before starting it") + return false + } else if (endTimeByEvent.contains(event.id)) { + Log.e(TAG, "Cannot end same ${event.name} event again") + return false + } else if ( + event != LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION && + endTimeByEvent.contains( + LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.id + ) + ) { + Log.e( + TAG, + "Cannot end ${event.name} event after ${LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.name}", + ) + return false + } + return true + } + + @VisibleForTesting + fun setIsInTest() { + isInTest = true + } +} diff --git a/src/com/android/launcher3/logging/StartupLatencyLogger.kt b/src/com/android/launcher3/logging/StartupLatencyLogger.kt index 901e8c34d5..493cd29b8f 100644 --- a/src/com/android/launcher3/logging/StartupLatencyLogger.kt +++ b/src/com/android/launcher3/logging/StartupLatencyLogger.kt @@ -1,5 +1,5 @@ /* - * Copyright (C) 2025 The Android Open Source Project + * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,122 +16,42 @@ package com.android.launcher3.logging -import android.os.Process -import android.os.SystemClock -import android.os.Trace -import android.util.Log -import android.util.SparseLongArray -import androidx.annotation.VisibleForTesting -import com.android.launcher3.LauncherConstants.TraceEvents.COLD_STARTUP_TRACE_METHOD_NAME -import com.android.launcher3.LauncherConstants.TraceEvents.SINGLE_TRACE_COOKIE -import com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent -import com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION -import com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC -import com.android.launcher3.logging.StatsLogManager.StatsLatencyLogger.Companion.LAUNCHER_LATENCY_PACKAGE_ID -import com.android.launcher3.logging.StatsLogManager.StatsLatencyLogger.LatencyType -import com.android.launcher3.util.Executors -import com.android.launcher3.util.LockedUserState -import com.android.launcher3.views.ActivityContext +import androidx.annotation.MainThread /** Interface to log launcher startup latency metrics. */ -sealed interface StartupLatencyLogger { +interface StartupLatencyLogger { - fun logWorkspaceLoadStartTime() {} + @MainThread fun log(): StartupLatencyLogger = this - /** Notes the end of an event. Final logs are pushed on [finishLogs] */ - fun logStart(event: LauncherLatencyEvent) {} - - /** Notes the start of an event. Final logs are pushed on [finishLogs] */ - fun logEnd(event: LauncherLatencyEvent) {} + @MainThread fun logWorkspaceLoadStartTime(): StartupLatencyLogger = this /** - * Finishes the current logging session and returns a new logger to be used for the next session + * Log size of workspace. Larger number of workspace items (icons, folders, widgets) means + * longer latency to initialize workspace. */ - fun finishLogs(workspaceCount: Int, isBindSync: Boolean): StartupLatencyLogger = this + @MainThread fun logCardinality(cardinality: Int): StartupLatencyLogger = this - object NoOpLogger : StartupLatencyLogger + @MainThread + fun logStart(event: StatsLogManager.LauncherLatencyEvent): StartupLatencyLogger = this - @VisibleForTesting - class ColdRebootStartupLogger( - private val ctx: ActivityContext, - private val timeProvider: () -> Long, - ) : StartupLatencyLogger { + @MainThread + fun logStart( + event: StatsLogManager.LauncherLatencyEvent, + startTimeMs: Long + ): StartupLatencyLogger = this - @VisibleForTesting val startTimeByEvent = SparseLongArray() - @VisibleForTesting val endTimeByEvent = SparseLongArray() + @MainThread fun logEnd(event: StatsLogManager.LauncherLatencyEvent): StartupLatencyLogger = this - private var cardinality: Int = -1 + @MainThread + fun logEnd(event: StatsLogManager.LauncherLatencyEvent, endTimeMs: Long): StartupLatencyLogger = + this - init { - Trace.beginAsyncSection(COLD_STARTUP_TRACE_METHOD_NAME, SINGLE_TRACE_COOKIE) - logStart(LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION) - } - - override fun logWorkspaceLoadStartTime() = - logStart(LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC) - - override fun logStart(event: LauncherLatencyEvent) = - startTimeByEvent.put(event.id, timeProvider.invoke()) - - override fun logEnd(event: LauncherLatencyEvent) = - endTimeByEvent.put(event.id, timeProvider.invoke()) - - override fun finishLogs(workspaceCount: Int, isBindSync: Boolean): StartupLatencyLogger { - if (!isBindSync) { - cardinality = workspaceCount - logEnd(LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC) - } - - Executors.MAIN_EXECUTOR.handler.postAtFrontOfQueue { - Log.i( - "Launcher", - "LauncherReady. " + - "User: " + - Process.myUserHandle() + - " TS: " + - SystemClock.uptimeMillis(), - ) - logEnd(LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION) - commitLogs() - } - Trace.endAsyncSection(COLD_STARTUP_TRACE_METHOD_NAME, SINGLE_TRACE_COOKIE) - return NoOpLogger - } - - private fun commitLogs() { - val instanceId = InstanceIdSequence().newInstanceId() - val logger = ctx.statsLogManager - for (event in LauncherLatencyEvent.entries) { - val start = startTimeByEvent.get(event.id) - val end = endTimeByEvent.get(event.id) - val duration = end - start - if (start != 0L && end != 0L) { - logger - .latencyLogger() - .withType(LatencyType.COLD_DEVICE_REBOOTING) - .withInstanceId(instanceId) - .withLatency(duration) - .withPackageId(LAUNCHER_LATENCY_PACKAGE_ID) - .withCardinality(cardinality) - .log(event) - } - } - } - } + @MainThread fun reset() companion object { - - private var isNewProcess: Boolean = true - - @JvmStatic - fun getLogger(ctx: ActivityContext): StartupLatencyLogger { - val isColdStartupAfterReboot = - isNewProcess && - !LockedUserState.get(ctx.asContext()).isUserUnlockedAtLauncherStartup - isNewProcess = false - return if (isColdStartupAfterReboot) - ColdRebootStartupLogger(ctx) { SystemClock.elapsedRealtime() } - else NoOpLogger - } + val NO_OP: StartupLatencyLogger = + object : StartupLatencyLogger { + override fun reset() {} + } } } diff --git a/src/com/android/launcher3/model/AddWorkspaceItemsTask.java b/src/com/android/launcher3/model/AddWorkspaceItemsTask.java index 466e6d1f25..a8aeaea088 100644 --- a/src/com/android/launcher3/model/AddWorkspaceItemsTask.java +++ b/src/com/android/launcher3/model/AddWorkspaceItemsTask.java @@ -28,10 +28,12 @@ import android.util.Pair; import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import com.android.launcher3.LauncherModel.CallbackTask; import com.android.launcher3.LauncherModel.ModelUpdateTask; import com.android.launcher3.LauncherSettings; import com.android.launcher3.icons.IconCache; import com.android.launcher3.logging.FileLog; +import com.android.launcher3.model.BgDataModel.Callbacks; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.CollectionInfo; import com.android.launcher3.model.data.ItemInfo; @@ -85,7 +87,7 @@ public class AddWorkspaceItemsTask implements ModelUpdateTask { final Context context = taskController.getContext(); synchronized (dataModel) { - IntArray workspaceScreens = dataModel.itemsIdMap.collectWorkspaceScreens(); + IntArray workspaceScreens = dataModel.collectWorkspaceScreens(); List<ItemInfo> filteredItems = new ArrayList<>(); for (Pair<ItemInfo, Object> entry : mItemList) { @@ -122,11 +124,10 @@ public class AddWorkspaceItemsTask implements ModelUpdateTask { InstallSessionHelper.INSTANCE.get(context); LauncherApps launcherApps = context.getSystemService(LauncherApps.class); - ModelWriter writer = taskController.getModelWriter(); for (ItemInfo item : filteredItems) { // Find appropriate space for the item. - int[] coords = mItemSpaceFinder.findSpaceForItem(workspaceScreens, - addedWorkspaceScreensFinal, addedItemsFinal, item.spanX, item.spanY); + int[] coords = mItemSpaceFinder.findSpaceForItem( + workspaceScreens, addedWorkspaceScreensFinal, item.spanX, item.spanY); int screenId = coords[0]; ItemInfo itemInfo; @@ -193,21 +194,40 @@ public class AddWorkspaceItemsTask implements ModelUpdateTask { } } - // Save the WorkspaceItemInfo for binding in the workspace - writer.updateItemInfoProps(itemInfo, + // Add the shortcut to the db + taskController.getModelWriter().addItemToDatabase(itemInfo, LauncherSettings.Favorites.CONTAINER_DESKTOP, screenId, coords[1], coords[2]); + + // Save the WorkspaceItemInfo for binding in the workspace addedItemsFinal.add(itemInfo); // log bitmap and label FileLog.d(LOG, "Adding item info to workspace: " + itemInfo); } - // Add the shortcut to the db - writer.addItemsToDatabase(addedItemsFinal); } if (!addedItemsFinal.isEmpty()) { - taskController.scheduleCallbackTask(cb -> cb.bindItemsAdded(addedItemsFinal)); + taskController.scheduleCallbackTask(new CallbackTask() { + @Override + public void execute(@NonNull Callbacks callbacks) { + final ArrayList<ItemInfo> addAnimated = new ArrayList<>(); + final ArrayList<ItemInfo> addNotAnimated = new ArrayList<>(); + if (!addedItemsFinal.isEmpty()) { + ItemInfo info = addedItemsFinal.get(addedItemsFinal.size() - 1); + int lastScreenId = info.screenId; + for (ItemInfo i : addedItemsFinal) { + if (i.screenId == lastScreenId) { + addAnimated.add(i); + } else { + addNotAnimated.add(i); + } + } + } + callbacks.bindAppsAdded(addedWorkspaceScreensFinal, + addNotAnimated, addAnimated); + } + }); } } diff --git a/src/com/android/launcher3/model/AllAppsList.java b/src/com/android/launcher3/model/AllAppsList.java index 91aac6e456..fe0437d3d7 100644 --- a/src/com/android/launcher3/model/AllAppsList.java +++ b/src/com/android/launcher3/model/AllAppsList.java @@ -35,14 +35,12 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.launcher3.AppFilter; -import com.android.launcher3.Flags; import com.android.launcher3.compat.AlphabeticIndexCompat; import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.icons.IconCache; +import com.android.launcher3.model.BgDataModel.Callbacks; import com.android.launcher3.model.data.AppInfo; -import com.android.launcher3.model.data.AppsListData; import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.model.repository.AppsListRepository; import com.android.launcher3.pm.PackageInstallInfo; import com.android.launcher3.pm.UserCache; import com.android.launcher3.util.ApiWrapper; @@ -59,7 +57,6 @@ import java.util.function.Consumer; import java.util.function.Predicate; import javax.inject.Inject; -import javax.inject.Provider; /** @@ -83,19 +80,17 @@ public class AllAppsList { @NonNull private final AppFilter mAppFilter; - @NonNull private final Provider<AppsListRepository> mRepo; - private boolean mDataChanged = false; private Consumer<AppInfo> mRemoveListener = NO_OP_CONSUMER; private AlphabeticIndexCompat mIndex; /** - * @see AppsListData#FLAG_HAS_SHORTCUT_PERMISSION - * @see AppsListData#FLAG_QUIET_MODE_ENABLED - * @see AppsListData#FLAG_QUIET_MODE_CHANGE_PERMISSION - * @see AppsListData#FLAG_WORK_PROFILE_QUIET_MODE_ENABLED - * @see AppsListData#FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED + * @see Callbacks#FLAG_HAS_SHORTCUT_PERMISSION + * @see Callbacks#FLAG_QUIET_MODE_ENABLED + * @see Callbacks#FLAG_QUIET_MODE_CHANGE_PERMISSION + * @see Callbacks#FLAG_WORK_PROFILE_QUIET_MODE_ENABLED + * @see Callbacks#FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED */ private int mFlags; @@ -103,12 +98,9 @@ public class AllAppsList { * Boring constructor. */ @Inject - public AllAppsList(@NonNull IconCache iconCache, - @NonNull AppFilter appFilter, - @NonNull Provider<AppsListRepository> repositoryProvider) { + public AllAppsList(IconCache iconCache, AppFilter appFilter) { mIconCache = iconCache; mAppFilter = appFilter; - mRepo = repositoryProvider; mIndex = new AlphabeticIndexCompat(LocaleList.getDefault()); } @@ -118,18 +110,14 @@ public class AllAppsList { public boolean getAndResetChangeFlag() { boolean result = mDataChanged; mDataChanged = false; - - if (Flags.modelRepository() && result) { - mRepo.get().dispatchChange(getImmutableData()); - } return result; } /** - * Helper to checking {@link AppsListData#FLAG_HAS_SHORTCUT_PERMISSION} + * Helper to checking {@link Callbacks#FLAG_HAS_SHORTCUT_PERMISSION} */ public boolean hasShortcutHostPermission() { - return (mFlags & AppsListData.FLAG_HAS_SHORTCUT_PERMISSION) != 0; + return (mFlags & Callbacks.FLAG_HAS_SHORTCUT_PERMISSION) != 0; } /** @@ -144,11 +132,14 @@ public class AllAppsList { mDataChanged = true; } - /** Returns an immutable representation of the current data */ - public AppsListData getImmutableData() { - return new AppsListData(copyData(), mFlags); + /** + * Returns the model flags + */ + public int getFlags() { + return mFlags; } + /** * Add the supplied ApplicationInfo objects to the list, and enqueue it into the * list to broadcast when notify() is called. @@ -211,8 +202,7 @@ public class AllAppsList { } /** Updates the given PackageInstallInfo's associated AppInfo's installation info. */ - public List<AppInfo> updatePromiseInstallInfo(PackageInstallInfo installInfo, - FlagOp runtimeFlagUpdate) { + public List<AppInfo> updatePromiseInstallInfo(PackageInstallInfo installInfo) { List<AppInfo> updatedAppInfos = new ArrayList<>(); UserHandle user = installInfo.user; for (int i = data.size() - 1; i >= 0; i--) { @@ -234,11 +224,7 @@ public class AllAppsList { continue; } appInfo.setProgressLevel(installInfo); - appInfo.runtimeStatusFlags = - runtimeFlagUpdate.apply(appInfo.runtimeStatusFlags); - if (Flags.modelRepository()) { - mRepo.get().dispatchIncrementationUpdate(appInfo); - } + updatedAppInfos.add(appInfo); } else if (installInfo.state == PackageInstallInfo.STATUS_FAILED && !appInfo.isAppStartable()) { diff --git a/src/com/android/launcher3/model/BaseLauncherBinder.java b/src/com/android/launcher3/model/BaseLauncherBinder.java index 1ea05e442b..a8c82c6201 100644 --- a/src/com/android/launcher3/model/BaseLauncherBinder.java +++ b/src/com/android/launcher3/model/BaseLauncherBinder.java @@ -17,12 +17,24 @@ package com.android.launcher3.model; import static com.android.launcher3.BuildConfigs.WIDGETS_ENABLED; +import static com.android.launcher3.Flags.enableSmartspaceRemovalToggle; +import static com.android.launcher3.Flags.enableWorkspaceInflation; +import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP; +import static com.android.launcher3.model.ItemInstallQueue.FLAG_LOADER_RUNNING; +import static com.android.launcher3.model.ModelUtils.WIDGET_FILTER; +import static com.android.launcher3.model.ModelUtils.currentScreenContentFilter; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; +import static com.android.launcher3.util.Executors.MODEL_EXECUTOR; import android.content.Context; import android.os.Trace; import android.util.Log; +import android.util.Pair; +import android.view.View; +import androidx.annotation.NonNull; + +import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.LauncherModel; import com.android.launcher3.LauncherModel.CallbackTask; import com.android.launcher3.LauncherSettings; @@ -33,11 +45,17 @@ import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.model.BgDataModel.Callbacks; import com.android.launcher3.model.BgDataModel.FixedContainerItems; -import com.android.launcher3.model.data.AppsListData; -import com.android.launcher3.model.data.WorkspaceData; +import com.android.launcher3.model.data.AppInfo; +import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.util.ComponentKey; +import com.android.launcher3.util.IntArray; +import com.android.launcher3.util.IntSet; +import com.android.launcher3.util.IntSparseArrayMap; +import com.android.launcher3.util.ItemInflater; import com.android.launcher3.util.LooperExecutor; import com.android.launcher3.util.LooperIdleLock; +import com.android.launcher3.util.PackageUserKey; +import com.android.launcher3.util.RunnableList; import com.android.launcher3.widget.model.WidgetsListBaseEntriesBuilder; import com.android.launcher3.widget.model.WidgetsListBaseEntry; @@ -46,9 +64,15 @@ import dagger.assisted.AssistedFactory; import dagger.assisted.AssistedInject; import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.Objects; import java.util.concurrent.Executor; +import java.util.function.Predicate; +import java.util.stream.Collectors; /** * Binds the results of {@link com.android.launcher3.model.LoaderTask} to the Callbacks objects. @@ -56,10 +80,12 @@ import java.util.concurrent.Executor; public class BaseLauncherBinder { protected static final String TAG = "LauncherBinder"; + private static final int ITEMS_CHUNK = 6; // batch size for the workspace icons protected final LooperExecutor mUiExecutor; private final Context mContext; + private final InvariantDeviceProfile mIDP; private final LauncherModel mModel; protected final BgDataModel mBgDataModel; private final AllAppsList mBgAllAppsList; @@ -71,12 +97,14 @@ public class BaseLauncherBinder { @AssistedInject public BaseLauncherBinder( @ApplicationContext Context context, + InvariantDeviceProfile idp, LauncherModel model, BgDataModel dataModel, AllAppsList allAppsList, @Assisted Callbacks[] callbacksList) { mUiExecutor = MAIN_EXECUTOR; mContext = context; + mIDP = idp; mModel = model; mBgDataModel = dataModel; mBgAllAppsList = allAppsList; @@ -90,28 +118,25 @@ public class BaseLauncherBinder { Trace.beginSection("BaseLauncherBinder#bindWorkspace"); try { // Save a copy of all the bg-thread collections - WorkspaceData itemsIdMap; + IntSparseArrayMap<ItemInfo> itemsIdMap; + final IntArray orderedScreenIds = new IntArray(); ArrayList<FixedContainerItems> extraItems = new ArrayList<>(); - StringCache stringCache; - + final int workspaceItemCount; synchronized (mBgDataModel) { - itemsIdMap = mBgDataModel.itemsIdMap.copy(); + itemsIdMap = mBgDataModel.itemsIdMap.clone(); + orderedScreenIds.addAll(mBgDataModel.collectWorkspaceScreens()); mBgDataModel.extraItems.forEach(extraItems::add); if (incrementBindId) { mBgDataModel.lastBindId++; mBgDataModel.lastLoadId = mModel.getLastLoadId(); } mMyBindingId = mBgDataModel.lastBindId; - stringCache = mBgDataModel.stringCache.clone(); + workspaceItemCount = mBgDataModel.itemsIdMap.size(); } for (Callbacks cb : mCallbacksList) { - cb.bindCompleteModelAsync(itemsIdMap, isBindSync); - } - - executeCallbacksTask(c -> c.bindStringCache(stringCache), mUiExecutor); - for (FixedContainerItems extraItem: extraItems) { - executeCallbacksTask(c -> c.bindExtraContainerItems(extraItem), mUiExecutor); + new UnifiedWorkspaceBinder(cb, itemsIdMap, extraItems, orderedScreenIds) + .bind(isBindSync, workspaceItemCount); } } finally { Trace.endSection(); @@ -137,9 +162,13 @@ public class BaseLauncherBinder { */ public void bindAllApps() { // shallow copy - AppsListData data = mBgAllAppsList.getImmutableData(); - executeCallbacksTask(c -> c.bindAllApplications( - data.getApps(), data.getFlags(), data.getPackageUserKeyToUidMap()), + AppInfo[] apps = mBgAllAppsList.copyData(); + int flags = mBgAllAppsList.getFlags(); + Map<PackageUserKey, Integer> packageUserKeytoUidMap = Arrays.stream(apps).collect( + Collectors.toMap( + appInfo -> new PackageUserKey(appInfo.componentName.getPackageName(), + appInfo.user), appInfo -> appInfo.uid, (a, b) -> a)); + executeCallbacksTask(c -> c.bindAllApplications(apps, flags, packageUserKeytoUidMap), mUiExecutor); } @@ -155,6 +184,51 @@ public class BaseLauncherBinder { executeCallbacksTask(c -> c.bindAllWidgets(widgets), mUiExecutor); } + /** + * bindWidgets is abstract because it is a no-op for the go launcher. + */ + public void bindSmartspaceWidget() { + if (!WIDGETS_ENABLED) { + return; + } + executeCallbacksTask(c -> c.bindSmartspaceWidget(), mUiExecutor); + } + + /** + * Sorts the set of items by hotseat, workspace (spatially from top to bottom, left to right) + */ + protected void sortWorkspaceItemsSpatially(ArrayList<ItemInfo> workspaceItems) { + final int screenCols = mIDP.numColumns; + final int screenCellCount = mIDP.numColumns * mIDP.numRows; + Collections.sort(workspaceItems, (lhs, rhs) -> { + if (lhs.container == rhs.container) { + // Within containers, order by their spatial position in that container + switch (lhs.container) { + case LauncherSettings.Favorites.CONTAINER_DESKTOP: { + int lr = (lhs.screenId * screenCellCount + lhs.cellY * screenCols + + lhs.cellX); + int rr = (rhs.screenId * screenCellCount + +rhs.cellY * screenCols + + rhs.cellX); + return Integer.compare(lr, rr); + } + case LauncherSettings.Favorites.CONTAINER_HOTSEAT: { + // We currently use the screen id as the rank + return Integer.compare(lhs.screenId, rhs.screenId); + } + default: + if (FeatureFlags.IS_STUDIO_BUILD) { + throw new RuntimeException( + "Unexpected container type when sorting workspace items."); + } + return 0; + } + } else { + // Between containers, order by hotseat, desktop + return Integer.compare(lhs.container, rhs.container); + } + }); + } + protected void executeCallbacksTask(CallbackTask task, Executor executor) { executor.execute(() -> { if (mMyBindingId != mBgDataModel.lastBindId) { @@ -178,6 +252,158 @@ public class BaseLauncherBinder { } return idleLock; } + + private class UnifiedWorkspaceBinder { + + private final Callbacks mCallbacks; + + private final IntSparseArrayMap<ItemInfo> mItemIdMap; + private final IntArray mOrderedScreenIds; + private final ArrayList<FixedContainerItems> mExtraItems; + + UnifiedWorkspaceBinder( + Callbacks callbacks, + IntSparseArrayMap<ItemInfo> itemIdMap, + ArrayList<FixedContainerItems> extraItems, + IntArray orderedScreenIds) { + mCallbacks = callbacks; + mItemIdMap = itemIdMap; + mExtraItems = extraItems; + mOrderedScreenIds = orderedScreenIds; + } + + private void bind(boolean isBindSync, int workspaceItemCount) { + final IntSet currentScreenIds = + mCallbacks.getPagesToBindSynchronously(mOrderedScreenIds); + Objects.requireNonNull(currentScreenIds, "Null screen ids provided by " + mCallbacks); + + // Separate the items that are on the current screen, and all the other remaining items + ArrayList<ItemInfo> currentWorkspaceItems = new ArrayList<>(); + ArrayList<ItemInfo> otherWorkspaceItems = new ArrayList<>(); + ArrayList<ItemInfo> currentAppWidgets = new ArrayList<>(); + ArrayList<ItemInfo> otherAppWidgets = new ArrayList<>(); + + Predicate<ItemInfo> currentScreenCheck = currentScreenContentFilter(currentScreenIds); + mItemIdMap.forEach(item -> { + if (currentScreenCheck.test(item)) { + (WIDGET_FILTER.test(item) ? currentAppWidgets : currentWorkspaceItems) + .add(item); + } else if (item.container == CONTAINER_DESKTOP) { + (WIDGET_FILTER.test(item) ? otherAppWidgets : otherWorkspaceItems).add(item); + } + }); + sortWorkspaceItemsSpatially(currentWorkspaceItems); + sortWorkspaceItemsSpatially(otherWorkspaceItems); + + // Tell the workspace that we're about to start binding items + executeCallbacksTask(c -> { + c.clearPendingBinds(); + c.startBinding(); + if (enableSmartspaceRemovalToggle()) { + c.setIsFirstPagePinnedItemEnabled( + mBgDataModel.isFirstPagePinnedItemEnabled); + } + }, mUiExecutor); + + // Bind workspace screens + executeCallbacksTask(c -> c.bindScreens(mOrderedScreenIds), mUiExecutor); + + ItemInflater inflater = mCallbacks.getItemInflater(); + + // Load items on the current page. + if (enableWorkspaceInflation() && inflater != null) { + inflateAsyncAndBind(currentWorkspaceItems, inflater, mUiExecutor); + inflateAsyncAndBind(currentAppWidgets, inflater, mUiExecutor); + } else { + bindItemsInChunks(currentWorkspaceItems, ITEMS_CHUNK, mUiExecutor); + bindItemsInChunks(currentAppWidgets, 1, mUiExecutor); + } + mExtraItems.forEach(item -> + executeCallbacksTask(c -> c.bindExtraContainerItems(item), mUiExecutor)); + + RunnableList pendingTasks = new RunnableList(); + Executor pendingExecutor = pendingTasks::add; + + RunnableList onCompleteSignal = new RunnableList(); + onCompleteSignal.add(() -> Log.d(TAG, "Calling onCompleteSignal")); + + if (enableWorkspaceInflation() && inflater != null) { + Log.d(TAG, "Starting async inflation"); + MODEL_EXECUTOR.execute(() -> { + inflateAsyncAndBind(otherWorkspaceItems, inflater, pendingExecutor); + inflateAsyncAndBind(otherAppWidgets, inflater, pendingExecutor); + setupPendingBind(currentScreenIds, pendingExecutor); + + // Wait for the async inflation to complete and then notify the completion + // signal on UI thread. + MAIN_EXECUTOR.execute(onCompleteSignal::executeAllAndDestroy); + }); + } else { + Log.d(TAG, "Starting sync inflation"); + bindItemsInChunks(otherWorkspaceItems, ITEMS_CHUNK, pendingExecutor); + bindItemsInChunks(otherAppWidgets, 1, pendingExecutor); + setupPendingBind(currentScreenIds, pendingExecutor); + onCompleteSignal.executeAllAndDestroy(); + } + + executeCallbacksTask(c -> c.onInitialBindComplete(currentScreenIds, pendingTasks, + onCompleteSignal, workspaceItemCount, isBindSync), mUiExecutor); + } + + private void setupPendingBind( + IntSet currentScreenIds, + Executor pendingExecutor) { + StringCache cacheClone = mBgDataModel.stringCache.clone(); + executeCallbacksTask(c -> c.bindStringCache(cacheClone), pendingExecutor); + + executeCallbacksTask(c -> c.finishBindingItems(currentScreenIds), pendingExecutor); + pendingExecutor.execute(() -> ItemInstallQueue.INSTANCE.get(mContext) + .resumeModelPush(FLAG_LOADER_RUNNING)); + } + + /** + * Tries to inflate the items asynchronously and bind. Returns true on success or false if + * async-binding is not supported in this case. + */ + private void inflateAsyncAndBind( + List<ItemInfo> items, @NonNull ItemInflater inflater, Executor executor) { + if (mMyBindingId != mBgDataModel.lastBindId) { + Log.d(TAG, "Too many consecutive reloads, skipping obsolete view inflation"); + return; + } + + ModelWriter writer = mModel.getWriter( + false /* verifyChanges */, CellPosMapper.DEFAULT, null); + List<Pair<ItemInfo, View>> bindItems = items.stream() + .map(i -> Pair.create(i, inflater.inflateItem(i, writer, null))) + .collect(Collectors.toList()); + executeCallbacksTask(c -> c.bindInflatedItems(bindItems), executor); + } + + private void bindItemsInChunks( + List<ItemInfo> workspaceItems, int chunkCount, Executor executor) { + // Bind the workspace items + int count = workspaceItems.size(); + for (int i = 0; i < count; i += chunkCount) { + final int start = i; + final int chunkSize = (i + chunkCount <= count) ? chunkCount : (count - i); + executeCallbacksTask( + c -> c.bindItems(workspaceItems.subList(start, start + chunkSize), false), + executor); + } + } + + protected void executeCallbacksTask(CallbackTask task, Executor executor) { + executor.execute(() -> { + if (mMyBindingId != mBgDataModel.lastBindId) { + Log.d(TAG, "Too many consecutive reloads, skipping obsolete data-bind"); + return; + } + task.execute(mCallbacks); + }); + } + } + @AssistedFactory public interface BaseLauncherBinderFactory { BaseLauncherBinder createBinder(Callbacks[] callbacks); diff --git a/src/com/android/launcher3/model/BgDataModel.java b/src/com/android/launcher3/model/BgDataModel.java index e69de29bb2..72983be136 100644 --- a/src/com/android/launcher3/model/BgDataModel.java +++ b/src/com/android/launcher3/model/BgDataModel.java @@ -0,0 +1,477 @@ +/* + * Copyright (C) 2016 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.launcher3.model; + +import static android.content.pm.LauncherApps.ShortcutQuery.FLAG_GET_KEY_FIELDS_ONLY; + +import static com.android.launcher3.BuildConfigs.QSB_ON_FIRST_SCREEN; +import static com.android.launcher3.BuildConfigs.WIDGETS_ENABLED; +import static com.android.launcher3.Flags.enableSmartspaceRemovalToggle; +import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP; +import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; +import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APP_PAIR; +import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; +import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_FOLDER; +import static com.android.launcher3.Utilities.SHOULD_SHOW_FIRST_PAGE_WIDGET; +import static com.android.launcher3.shortcuts.ShortcutRequest.PINNED; + +import static java.util.stream.Collectors.groupingBy; +import static java.util.stream.Collectors.mapping; + +import android.content.Context; +import android.content.pm.LauncherApps; +import android.content.pm.ShortcutInfo; +import android.os.UserHandle; +import android.text.TextUtils; +import android.util.Log; +import android.util.Pair; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; + +import com.android.launcher3.BuildConfig; +import com.android.launcher3.BuildConfigs; +import com.android.launcher3.Workspace; +import com.android.launcher3.config.FeatureFlags; +import com.android.launcher3.dagger.LauncherAppSingleton; +import com.android.launcher3.logging.FileLog; +import com.android.launcher3.model.data.AppInfo; +import com.android.launcher3.model.data.CollectionInfo; +import com.android.launcher3.model.data.ItemInfo; +import com.android.launcher3.model.data.WorkspaceItemInfo; +import com.android.launcher3.pm.UserCache; +import com.android.launcher3.shortcuts.ShortcutKey; +import com.android.launcher3.shortcuts.ShortcutRequest; +import com.android.launcher3.shortcuts.ShortcutRequest.QueryResult; +import com.android.launcher3.util.ComponentKey; +import com.android.launcher3.util.IntArray; +import com.android.launcher3.util.IntSet; +import com.android.launcher3.util.IntSparseArrayMap; +import com.android.launcher3.util.ItemInflater; +import com.android.launcher3.util.PackageUserKey; +import com.android.launcher3.util.RunnableList; +import com.android.launcher3.widget.model.WidgetsListBaseEntry; + +import java.io.FileDescriptor; +import java.io.PrintWriter; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.function.Consumer; +import java.util.function.Predicate; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +import javax.inject.Inject; + +import app.lawnchair.LawnchairApp; + +/** + * All the data stored in-memory and managed by the LauncherModel + * + * All the static data should be accessed on the background thread, A lock should be acquired on + * this object when accessing any data from this model. + */ +@LauncherAppSingleton +public class BgDataModel { + + private static final String TAG = "BgDataModel"; + + /** + * Map of all the ItemInfos (shortcuts, folders, and widgets) created by + * LauncherModel to their ids + */ + public final IntSparseArrayMap<ItemInfo> itemsIdMap = new IntSparseArrayMap<>(); + + /** + * Extra container based items + */ + public final IntSparseArrayMap<FixedContainerItems> extraItems = new IntSparseArrayMap<>(); + + /** + * Maps all launcher activities to counts of their shortcuts. + */ + public final HashMap<ComponentKey, Integer> deepShortcutMap = new HashMap<>(); + + /** + * Entire list of widgets. + */ + public final WidgetsModel widgetsModel; + + /** + * Cache for strings used in launcher + */ + public final StringCache stringCache = new StringCache(); + + /** + * Id when the model was last bound + */ + public int lastBindId = 0; + + /** + * Load id for which the callbacks were successfully bound + */ + public int lastLoadId = -1; + public boolean isFirstPagePinnedItemEnabled = QSB_ON_FIRST_SCREEN + && !enableSmartspaceRemovalToggle(); + + @Inject + public BgDataModel(WidgetsModel widgetsModel) { + this.widgetsModel = widgetsModel; + } + + /** + * Clears all the data + */ + public synchronized void clear() { + itemsIdMap.clear(); + deepShortcutMap.clear(); + extraItems.clear(); + } + + /** + * Creates an array of valid workspace screens based on current items in the model. + */ + public synchronized IntArray collectWorkspaceScreens() { + IntSet screenSet = new IntSet(); + for (ItemInfo item: itemsIdMap) { + if (item.container == CONTAINER_DESKTOP) { + screenSet.add(item.screenId); + } + } + if ((FeatureFlags.QSB_ON_FIRST_SCREEN + && !SHOULD_SHOW_FIRST_PAGE_WIDGET) + || screenSet.isEmpty()) { + screenSet.add(Workspace.FIRST_SCREEN_ID); + } + return screenSet.getArray(); + } + + public synchronized void dump(String prefix, FileDescriptor fd, PrintWriter writer, + String[] args) { + writer.println(prefix + "Data Model:"); + writer.println(prefix + " ---- items id map "); + for (int i = 0; i < itemsIdMap.size(); i++) { + writer.println(prefix + '\t' + itemsIdMap.valueAt(i).toString()); + } + writer.println(prefix + " ---- extra items "); + for (int i = 0; i < extraItems.size(); i++) { + writer.println(prefix + '\t' + extraItems.valueAt(i).toString()); + } + + if (args.length > 0 && TextUtils.equals(args[0], "--all")) { + writer.println(prefix + "shortcut counts "); + for (Integer count : deepShortcutMap.values()) { + writer.print(count + ", "); + } + writer.println(); + } + } + + public synchronized void removeItem(Context context, ItemInfo... items) { + removeItem(context, Arrays.asList(items)); + } + + public synchronized void removeItem(Context context, List<? extends ItemInfo> items) { + if (BuildConfigs.IS_STUDIO_BUILD) { + items.stream() + .filter(item -> item.itemType == ITEM_TYPE_FOLDER + || item.itemType == ITEM_TYPE_APP_PAIR) + .forEach(item -> itemsIdMap.stream() + .filter(info -> info.container == item.id) + // We are deleting a collection which still contains items that + // think they are contained by that collection. + .forEach(info -> Log.e(TAG, + "deleting a collection (" + item + ") which still contains" + + " items (" + info + ")"))); + } + + items.forEach(item -> itemsIdMap.remove(item.id)); + items.stream().map(info -> info.user).distinct().forEach( + user -> updateShortcutPinnedState(context, user)); + } + + public synchronized void addItem(Context context, ItemInfo item, boolean newItem) { + itemsIdMap.put(item.id, item); + if (newItem && item.itemType == ITEM_TYPE_DEEP_SHORTCUT) { + updateShortcutPinnedState(context, item.user); + } + if (BuildConfigs.IS_DEBUG_DEVICE + && newItem + && item.container != CONTAINER_DESKTOP + && item.container != CONTAINER_HOTSEAT + && !(itemsIdMap.get(item.container) instanceof CollectionInfo)) { + // Adding an item to a nonexistent collection. + Log.e(TAG, "attempted to add item: " + item + " to a nonexistent app collection"); + } + } + + /** + * Updates the deep shortcuts state in system to match out internal model, pinning any missing + * shortcuts and unpinning any extra shortcuts. + */ + public void updateShortcutPinnedState(Context context) { + for (UserHandle user : UserCache.INSTANCE.get(context).getUserProfiles()) { + updateShortcutPinnedState(context, user); + } + } + + /** + * Updates the deep shortucts state in system to match out internal model, pinning any missing + * shortcuts and unpinning any extra shortcuts. + */ + public synchronized void updateShortcutPinnedState(Context context, UserHandle user) { + if (!WIDGETS_ENABLED) { + return; + } + + // Collect all system shortcuts + QueryResult result = new ShortcutRequest(context, user) + .query(PINNED | FLAG_GET_KEY_FIELDS_ONLY); + if (!result.wasSuccess()) { + return; + } + // Map of packageName to shortcutIds that are currently in the system + Map<String, Set<String>> systemMap = result.stream() + .collect(groupingBy(ShortcutInfo::getPackage, + mapping(ShortcutInfo::getId, Collectors.toSet()))); + + // Collect all model shortcuts + Stream.Builder<WorkspaceItemInfo> itemStream = Stream.builder(); + forAllWorkspaceItemInfos(user, itemStream::accept); + // Map of packageName to shortcutIds that are currently in our model + Map<String, Set<String>> modelMap = Stream.concat( + // Model shortcuts + itemStream.build() + .filter(wi -> wi.itemType == ITEM_TYPE_DEEP_SHORTCUT) + .map(ShortcutKey::fromItemInfo), + // Pending shortcuts + ItemInstallQueue.INSTANCE.get(context).getPendingShortcuts(user)) + .collect(groupingBy(ShortcutKey::getPackageName, + mapping(ShortcutKey::getId, Collectors.toSet()))); + + // Check for diff + for (Map.Entry<String, Set<String>> entry : modelMap.entrySet()) { + Set<String> modelShortcuts = entry.getValue(); + Set<String> systemShortcuts = systemMap.remove(entry.getKey()); + if (systemShortcuts == null) { + systemShortcuts = Collections.emptySet(); + } + + // Do not use .equals as it can vary based on the type of set + if (systemShortcuts.size() != modelShortcuts.size() + || !systemShortcuts.containsAll(modelShortcuts)) { + // Update system state for this package + try { + FileLog.d(TAG, "updateShortcutPinnedState:" + + " Pinning Shortcuts: " + entry.getKey() + ": " + modelShortcuts); + context.getSystemService(LauncherApps.class).pinShortcuts( + entry.getKey(), new ArrayList<>(modelShortcuts), user); + } catch (SecurityException | IllegalStateException e) { + Log.w(TAG, "Failed to pin shortcut", e); + } + } + } + + // If there are any extra pinned shortcuts, remove them + systemMap.keySet().forEach(packageName -> { + // Update system state + try { + FileLog.d(TAG, "updateShortcutPinnedState:" + + " Unpinning extra Shortcuts for package: " + packageName + + ": " + systemMap.get(packageName)); + context.getSystemService(LauncherApps.class).pinShortcuts( + packageName, Collections.emptyList(), user); + } catch (SecurityException | IllegalStateException e) { + Log.w(TAG, "Failed to unpin shortcut", e); + } + }); + } + + /** + * Clear all the deep shortcut counts for the given package, and re-add the new shortcut counts. + */ + public synchronized void updateDeepShortcutCounts( + String packageName, UserHandle user, List<ShortcutInfo> shortcuts) { + if (packageName != null) { + Iterator<ComponentKey> keysIter = deepShortcutMap.keySet().iterator(); + while (keysIter.hasNext()) { + ComponentKey next = keysIter.next(); + if (next.componentName.getPackageName().equals(packageName) + && next.user.equals(user)) { + keysIter.remove(); + } + } + } + + // Now add the new shortcuts to the map. + for (ShortcutInfo shortcut : shortcuts) { + boolean shouldShowInContainer = shortcut.isEnabled() + && (shortcut.isDeclaredInManifest() || shortcut.isDynamic()) + && shortcut.getActivity() != null; + if (shouldShowInContainer) { + ComponentKey targetComponent + = new ComponentKey(shortcut.getActivity(), shortcut.getUserHandle()); + + Integer previousCount = deepShortcutMap.get(targetComponent); + deepShortcutMap.put(targetComponent, previousCount == null ? 1 : previousCount + 1); + } + } + } + + /** + * Calls the provided {@code op} for all workspaceItems in the in-memory model (both persisted + * items and dynamic/predicted items for the provided {@code userHandle}. + * Note the call is not synchronized over the model, that should be handled by the called. + */ + public void forAllWorkspaceItemInfos(UserHandle userHandle, Consumer<WorkspaceItemInfo> op) { + for (ItemInfo info : itemsIdMap) { + if (info instanceof WorkspaceItemInfo && userHandle.equals(info.user)) { + op.accept((WorkspaceItemInfo) info); + } + } + + for (int i = extraItems.size() - 1; i >= 0; i--) { + for (ItemInfo info : extraItems.valueAt(i).items) { + if (info instanceof WorkspaceItemInfo && userHandle.equals(info.user)) { + op.accept((WorkspaceItemInfo) info); + } + } + } + } + + /** + * An object containing items corresponding to a fixed container + */ + public static class FixedContainerItems { + + public final int containerId; + public final List<ItemInfo> items; + + public FixedContainerItems(int containerId, List<ItemInfo> items) { + this.containerId = containerId; + this.items = Collections.unmodifiableList(items); + } + + @Override + @NonNull + public final String toString() { + StringBuilder s = new StringBuilder(); + s.append("FixedContainerItems:"); + s.append(" id=").append(containerId); + s.append(" itemCount=").append(items.size()); + for (int i = 0; i < items.size(); i++) { + s.append(" item #").append(i).append(": ").append(items.get(i).toString()); + } + return s.toString(); + } + + } + + + public interface Callbacks { + // If the launcher has permission to access deep shortcuts. + int FLAG_HAS_SHORTCUT_PERMISSION = 1 << 0; + // If quiet mode is enabled for any user + int FLAG_QUIET_MODE_ENABLED = 1 << 1; + // If launcher can change quiet mode + int FLAG_QUIET_MODE_CHANGE_PERMISSION = 1 << 2; + // If quiet mode is enabled for work profile user + int FLAG_WORK_PROFILE_QUIET_MODE_ENABLED = 1 << 3; + // If quiet mode is enabled for private profile user + int FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED = 1 << 4; + + /** + * Returns an IntSet of page ids to bind first, synchronously if possible + * or an empty IntSet + * @param orderedScreenIds All the page ids to be bound + */ + @NonNull + default IntSet getPagesToBindSynchronously(IntArray orderedScreenIds) { + return new IntSet(); + } + + default void clearPendingBinds() { } + default void startBinding() { } + + @Nullable + default ItemInflater getItemInflater() { + return null; + } + + default void bindItems(@NonNull List<ItemInfo> shortcuts, boolean forceAnimateIcons) { } + /** Alternate method to bind preinflated views */ + default void bindInflatedItems(@NonNull List<Pair<ItemInfo, View>> items) { } + + default void bindScreens(IntArray orderedScreenIds) { } + default void setIsFirstPagePinnedItemEnabled(boolean isFirstPagePinnedItemEnabled) { } + default void finishBindingItems(IntSet pagesBoundFirst) { } + default void preAddApps() { } + default void bindAppsAdded(IntArray newScreens, + ArrayList<ItemInfo> addNotAnimated, ArrayList<ItemInfo> addAnimated) { } + + /** + * Called when some persistent property of an item is modified + */ + default void bindItemsModified(List<ItemInfo> items) { } + + /** + * Binds updated incremental download progress + */ + default void bindIncrementalDownloadProgressUpdated(AppInfo app) { } + + /** Called when a runtime property of the ItemInfo is updated due to some system event */ + default void bindItemsUpdated(Set<ItemInfo> updates) { } + default void bindWorkspaceComponentsRemoved(Predicate<ItemInfo> matcher) { } + + /** + * Binds the app widgets to the providers that share widgets with the UI. + */ + default void bindAllWidgets(@NonNull List<WidgetsListBaseEntry> widgets) { } + + default void bindSmartspaceWidget() { } + + /** Called when workspace has been bound. */ + default void onInitialBindComplete(@NonNull IntSet boundPages, + @NonNull RunnableList pendingTasks, + @NonNull RunnableList onCompleteSignal, + int workspaceItemCount, boolean isBindSync) { + pendingTasks.executeAllAndDestroy(); + } + + default void bindDeepShortcutMap(HashMap<ComponentKey, Integer> deepShortcutMap) { } + + /** + * Binds extra item provided any external source + */ + default void bindExtraContainerItems(FixedContainerItems item) { } + + default void bindAllApplications(AppInfo[] apps, int flags, + Map<PackageUserKey, Integer> packageUserKeytoUidMap) { + } + + /** + * Binds the cache of string resources + */ + default void bindStringCache(StringCache cache) { } + } +} diff --git a/src/com/android/launcher3/model/CacheDataUpdatedTask.java b/src/com/android/launcher3/model/CacheDataUpdatedTask.java index fb5710a9bf..f740b49694 100644 --- a/src/com/android/launcher3/model/CacheDataUpdatedTask.java +++ b/src/com/android/launcher3/model/CacheDataUpdatedTask.java @@ -16,6 +16,7 @@ package com.android.launcher3.model; import static com.android.launcher3.icons.cache.CacheLookupFlag.DEFAULT_LOOKUP_FLAG; +import static com.android.launcher3.model.ModelUtils.WIDGET_FILTER; import android.content.ComponentName; import android.os.UserHandle; @@ -26,10 +27,11 @@ import com.android.launcher3.LauncherModel.ModelUpdateTask; import com.android.launcher3.LauncherSettings; import com.android.launcher3.icons.IconCache; import com.android.launcher3.model.data.ItemInfo; +import com.android.launcher3.model.data.LauncherAppWidgetInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; +import java.util.ArrayList; import java.util.HashSet; -import java.util.List; /** * Handles changes due to cache updates. @@ -58,29 +60,29 @@ public class CacheDataUpdatedTask implements ModelUpdateTask { public void execute(@NonNull ModelTaskController taskController, @NonNull BgDataModel dataModel, @NonNull AllAppsList apps) { IconCache iconCache = taskController.getIconCache(); - List<ItemInfo> updatedItems; + ArrayList<ItemInfo> updatedItems = new ArrayList<>(); synchronized (dataModel) { - updatedItems = dataModel.updateAndCollectWorkspaceItemInfos( - mUser, - si -> { - ComponentName cn = si.getTargetComponent(); - if (si.itemType == LauncherSettings.Favorites.ITEM_TYPE_APPLICATION - && isValidShortcut(si) && cn != null - && mPackages.contains(cn.getPackageName())) { - iconCache.getTitleAndIcon(si, si.getMatchingLookupFlag()); - return true; - } - return false; - }, - widget -> { - if (mPackages.contains(widget.providerName.getPackageName()) - && widget.pendingItemInfo != null) { - iconCache.getTitleAndIconForApp( - widget.pendingItemInfo, DEFAULT_LOOKUP_FLAG); - return true; - } - return false; + dataModel.forAllWorkspaceItemInfos(mUser, si -> { + ComponentName cn = si.getTargetComponent(); + if (si.itemType == LauncherSettings.Favorites.ITEM_TYPE_APPLICATION + && isValidShortcut(si) && cn != null + && mPackages.contains(cn.getPackageName())) { + iconCache.getTitleAndIcon(si, si.getMatchingLookupFlag()); + updatedItems.add(si); + } + }); + + dataModel.itemsIdMap.stream() + .filter(WIDGET_FILTER) + .filter(item -> mUser.equals(item.user)) + .map(item -> (LauncherAppWidgetInfo) item) + .filter(widget -> mPackages.contains(widget.providerName.getPackageName()) + && widget.pendingItemInfo != null) + .forEach(widget -> { + iconCache.getTitleAndIconForApp( + widget.pendingItemInfo, DEFAULT_LOOKUP_FLAG); + updatedItems.add(widget); }); apps.updateIconsAndLabels(mPackages, mUser); diff --git a/src/com/android/launcher3/model/DatabaseHelper.java b/src/com/android/launcher3/model/DatabaseHelper.java index b39bdaeb56..4798465c3b 100644 --- a/src/com/android/launcher3/model/DatabaseHelper.java +++ b/src/com/android/launcher3/model/DatabaseHelper.java @@ -16,6 +16,7 @@ package com.android.launcher3.model; import static com.android.launcher3.LauncherSettings.Favorites.addTableToDb; +import static com.android.launcher3.Utilities.SHOULD_SHOW_FIRST_PAGE_WIDGET; import static com.android.launcher3.provider.LauncherDbUtils.dropTable; import android.content.ContentValues; @@ -36,11 +37,10 @@ import androidx.annotation.NonNull; import com.android.launcher3.AutoInstallsLayout; import com.android.launcher3.AutoInstallsLayout.LayoutParserCallback; -import com.android.launcher3.BuildConfig; -import com.android.launcher3.BuildConfigs; import com.android.launcher3.LauncherSettings; import com.android.launcher3.LauncherSettings.Favorites; import com.android.launcher3.Utilities; +import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.logging.FileLog; import com.android.launcher3.pm.UserCache; import com.android.launcher3.provider.LauncherDbUtils; @@ -68,8 +68,10 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements LayoutParserCallback { /** - * Represents the schema of the database. Changes in scheme need not be backwards compatible. - * When increasing the scheme version, ensure that downgrade_schema.json is updated + * Represents the schema of the database. Changes in scheme need not be + * backwards compatible. + * When increasing the scheme version, ensure that downgrade_schema.json is + * updated */ public static final int SCHEMA_VERSION = 32; private static final String TAG = "DatabaseHelper"; @@ -96,14 +98,16 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements } protected void initIds() { - // In the case where neither onCreate nor onUpgrade gets called, we read the maxId from + // In the case where neither onCreate nor onUpgrade gets called, we read the + // maxId from // the DB here mMaxItemId.compareAndSet(-1, initializeMaxItemId(getWritableDatabase())); } @Override public void onCreate(SQLiteDatabase db) { - if (LOGD) Log.d(TAG, "creating new launcher database"); + if (LOGD) + Log.d(TAG, "creating new launcher database"); mMaxItemId.set(1); @@ -137,9 +141,11 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements } /** - * One-time data updated before support of onDowngrade was added. This update is backwards + * One-time data updated before support of onDowngrade was added. This update is + * backwards * compatible and can safely be run multiple times. - * Note: No new logic should be added here after release, as the new logic might not get + * Note: No new logic should be added here after release, as the new logic might + * not get * executed on an existing device. * TODO: Move this to db upgrade path, once the downgrade path is released. */ @@ -257,7 +263,7 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements Favorites.SCREEN, IntArray.wrap(-777, -778)), null); } case 30: { - if (BuildConfigs.QSB_ON_FIRST_SCREEN) { + if (FeatureFlags.QSB_ON_FIRST_SCREEN) { // Clean up first row in screen 0 as it might contain junk data. Log.d(TAG, "Cleaning up first row"); db.delete(Favorites.TABLE_NAME, @@ -265,7 +271,8 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements "%1$s = %2$d AND %3$s = %4$d AND %5$s = %6$d", Favorites.SCREEN, 0, Favorites.CONTAINER, Favorites.CONTAINER_DESKTOP, - Favorites.CELLY, 0), null); + Favorites.CELLY, 0), + null); } } case 31: { @@ -308,7 +315,8 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements } /** - * Removes widgets which are registered to the Launcher's host, but are not present + * Removes widgets which are registered to the Launcher's host, but are not + * present * in our model. */ public void removeGhostWidgets(SQLiteDatabase db) { @@ -344,13 +352,12 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements .mapToObj(String::valueOf) .collect(Collectors.joining(",", "[", "]")); final String allValidLauncherDbWidgetIds = Arrays.stream( - validWidgets.getArray().toArray()).mapToObj(String::valueOf) + validWidgets.getArray().toArray()).mapToObj(String::valueOf) .collect(Collectors.joining(",", "[", "]")); FileLog.d(TAG, "One or more widgets was removed: " + " allLauncherHostWidgetIds=" + allLauncherHostWidgetIds - + ", allValidLauncherDbWidgetIds=" + allValidLauncherDbWidgetIds - ); + + ", allValidLauncherDbWidgetIds=" + allValidLauncherDbWidgetIds); } } finally { holder.destroy(); @@ -358,21 +365,21 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements } /** - * Replaces all shortcuts of type {@link Favorites#ITEM_TYPE_SHORTCUT} which have a valid + * Replaces all shortcuts of type {@link Favorites#ITEM_TYPE_SHORTCUT} which + * have a valid * launcher activity target with {@link Favorites#ITEM_TYPE_APPLICATION}. */ @Thunk void convertShortcutsToLauncherActivities(SQLiteDatabase db) { try (SQLiteTransaction t = new SQLiteTransaction(db); - // Only consider the primary user as other users can't have a shortcut. - Cursor c = db.query(Favorites.TABLE_NAME, - new String[]{Favorites._ID, Favorites.INTENT}, - "itemType=" + Favorites.ITEM_TYPE_SHORTCUT - + " AND profileId=" + getDefaultUserSerial(), - null, null, null, null); - SQLiteStatement updateStmt = db.compileStatement("UPDATE favorites SET itemType=" - + Favorites.ITEM_TYPE_APPLICATION + " WHERE _id=?") - ) { + // Only consider the primary user as other users can't have a shortcut. + Cursor c = db.query(Favorites.TABLE_NAME, + new String[] { Favorites._ID, Favorites.INTENT }, + "itemType=" + Favorites.ITEM_TYPE_SHORTCUT + + " AND profileId=" + getDefaultUserSerial(), + null, null, null, null); + SQLiteStatement updateStmt = db.compileStatement("UPDATE favorites SET itemType=" + + Favorites.ITEM_TYPE_APPLICATION + " WHERE _id=?")) { final int idIndex = c.getColumnIndexOrThrow(Favorites._ID); final int intentIndex = c.getColumnIndexOrThrow(Favorites.INTENT); @@ -410,14 +417,14 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements // Get a map for folder ID to folder width Cursor c = db.rawQuery("SELECT container, MAX(cellX) FROM favorites" - + " WHERE container IN (SELECT _id FROM favorites WHERE itemType = ?)" - + " GROUP BY container;", - new String[]{Integer.toString(Favorites.ITEM_TYPE_FOLDER)}); + + " WHERE container IN (SELECT _id FROM favorites WHERE itemType = ?)" + + " GROUP BY container;", + new String[] { Integer.toString(Favorites.ITEM_TYPE_FOLDER) }); while (c.moveToNext()) { db.execSQL("UPDATE favorites SET rank=cellX+(cellY*?) WHERE " - + "container=? AND cellX IS NOT NULL AND cellY IS NOT NULL;", - new Object[]{c.getLong(1) + 1, c.getLong(0)}); + + "container=? AND cellX IS NOT NULL AND cellY IS NOT NULL;", + new Object[] { c.getLong(1) + 1, c.getLong(0) }); } c.close(); @@ -442,10 +449,14 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements return true; } - // Generates a new ID to use for an object in your database. This method should be only - // called from the main UI thread. As an exception, we do call it when we call the - // constructor from the worker thread; however, this doesn't extend until after the - // constructor is called, and we only pass a reference to LauncherProvider to LauncherApp + // Generates a new ID to use for an object in your database. This method should + // be only + // called from the main UI thread. As an exception, we do call it when we call + // the + // constructor from the worker thread; however, this doesn't extend until after + // the + // constructor is called, and we only pass a reference to LauncherProvider to + // LauncherApp // after that point @Override public int generateNewItemId() { @@ -490,7 +501,8 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements } /** - * Returns a new ID to use for a workspace screen in your database that is greater than all + * Returns a new ID to use for a workspace screen in your database that is + * greater than all * existing screen IDs */ public int getNewScreenId() { @@ -523,7 +535,8 @@ public class DatabaseHelper extends NoLocaleSQLiteHelper implements } catch (IllegalArgumentException exception) { String message = exception.getMessage(); if (message.contains("re-open") && message.contains("already-closed")) { - // Don't crash trying to end a transaction an an already closed DB. See b/173162852. + // Don't crash trying to end a transaction an an already closed DB. See + // b/173162852. } else { throw exception; } diff --git a/src/com/android/launcher3/model/FirstScreenBroadcast.java b/src/com/android/launcher3/model/FirstScreenBroadcast.java index a15deeabdd..829e0fe08b 100644 --- a/src/com/android/launcher3/model/FirstScreenBroadcast.java +++ b/src/com/android/launcher3/model/FirstScreenBroadcast.java @@ -185,7 +185,7 @@ public class FirstScreenBroadcast { * is always modified on UI thread. */ @AnyThread - private static List<WorkspaceItemInfo> cloneOnMainThread(List<WorkspaceItemInfo> list) { + private static List<WorkspaceItemInfo> cloneOnMainThread(ArrayList<WorkspaceItemInfo> list) { try { return MAIN_EXECUTOR.submit(() -> new ArrayList(list)).get(); } catch (Exception e) { diff --git a/src/com/android/launcher3/model/FirstScreenBroadcastHelper.kt b/src/com/android/launcher3/model/FirstScreenBroadcastHelper.kt index cb29603af7..6ad52ea92b 100644 --- a/src/com/android/launcher3/model/FirstScreenBroadcastHelper.kt +++ b/src/com/android/launcher3/model/FirstScreenBroadcastHelper.kt @@ -348,7 +348,7 @@ object FirstScreenBroadcastHelper { * always modified on UI thread. */ @AnyThread - private fun cloneOnMainThread(list: List<WorkspaceItemInfo>): List<WorkspaceItemInfo> { + private fun cloneOnMainThread(list: ArrayList<WorkspaceItemInfo>): List<WorkspaceItemInfo> { return try { return Executors.MAIN_EXECUTOR.submit<ArrayList<WorkspaceItemInfo>> { ArrayList(list) } .get() diff --git a/src/com/android/launcher3/model/GridSizeMigrationDBController.java b/src/com/android/launcher3/model/GridSizeMigrationDBController.java index ded47d8e6d..12ba07de4e 100644 --- a/src/com/android/launcher3/model/GridSizeMigrationDBController.java +++ b/src/com/android/launcher3/model/GridSizeMigrationDBController.java @@ -16,16 +16,18 @@ package com.android.launcher3.model; -import static com.android.launcher3.BuildConfigs.QSB_ON_FIRST_SCREEN; +import static com.android.launcher3.Flags.enableSmartspaceRemovalToggle; import static com.android.launcher3.GridType.GRID_TYPE_NON_ONE_GRID; import static com.android.launcher3.GridType.GRID_TYPE_ONE_GRID; import static com.android.launcher3.InvariantDeviceProfile.TYPE_TABLET; import static com.android.launcher3.LauncherSettings.Favorites.TABLE_NAME; import static com.android.launcher3.LauncherSettings.Favorites.TMP_TABLE; +import static com.android.launcher3.Utilities.SHOULD_SHOW_FIRST_PAGE_WIDGET; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ROW_SHIFT_GRID_MIGRATION; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ROW_SHIFT_ONE_GRID_MIGRATION; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_STANDARD_GRID_MIGRATION; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_STANDARD_ONE_GRID_MIGRATION; +import static com.android.launcher3.model.LoaderTask.SMARTSPACE_ON_HOME_SCREEN; import static com.android.launcher3.provider.LauncherDbUtils.copyTable; import static com.android.launcher3.provider.LauncherDbUtils.dropTable; import static com.android.launcher3.provider.LauncherDbUtils.shiftWorkspaceByXCells; @@ -45,8 +47,10 @@ import androidx.annotation.VisibleForTesting; import com.android.launcher3.Flags; import com.android.launcher3.InvariantDeviceProfile; +import com.android.launcher3.LauncherPrefs; import com.android.launcher3.LauncherSettings; import com.android.launcher3.Utilities; +import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.logging.StatsLogManager; import com.android.launcher3.provider.LauncherDbUtils.SQLiteTransaction; import com.android.launcher3.util.GridOccupancy; @@ -397,8 +401,12 @@ public class GridSizeMigrationDBController { @NonNull final List<DbEntry> sortedItemsToPlace, List<Integer> idsInUse) { final GridOccupancy occupied = new GridOccupancy(trgX, trgY); final Point trg = new Point(trgX, trgY); - final Point next = new Point(0, - screenId == 0 && QSB_ON_FIRST_SCREEN ? 1 /* smartspace */ : 0); + final Point next = new Point(0, screenId == 0 + && (FeatureFlags.QSB_ON_FIRST_SCREEN + && (!enableSmartspaceRemovalToggle() || LauncherPrefs.getPrefs(destReader.mContext) + .getBoolean(SMARTSPACE_ON_HOME_SCREEN, true)) + && !SHOULD_SHOW_FIRST_PAGE_WIDGET) + ? 1 /* smartspace */ : 0); List<DbEntry> existedEntries = destReader.mWorkspaceEntriesByScreenId.get(screenId); if (existedEntries != null) { for (DbEntry entry : existedEntries) { diff --git a/src/com/android/launcher3/model/GridSizeMigrationLogic.kt b/src/com/android/launcher3/model/GridSizeMigrationLogic.kt index 5b0018a5a1..d88f6ccfc6 100644 --- a/src/com/android/launcher3/model/GridSizeMigrationLogic.kt +++ b/src/com/android/launcher3/model/GridSizeMigrationLogic.kt @@ -20,14 +20,15 @@ import android.database.sqlite.SQLiteDatabase import android.graphics.Point import android.util.Log import androidx.annotation.VisibleForTesting -import com.android.launcher3.BuildConfig -import com.android.launcher3.BuildConfigs import com.android.launcher3.Flags import com.android.launcher3.LauncherPrefs import com.android.launcher3.LauncherPrefs.Companion.get +import com.android.launcher3.LauncherPrefs.Companion.getPrefs import com.android.launcher3.LauncherSettings import com.android.launcher3.LauncherSettings.Favorites.TABLE_NAME import com.android.launcher3.LauncherSettings.Favorites.TMP_TABLE +import com.android.launcher3.Utilities +import com.android.launcher3.config.FeatureFlags import com.android.launcher3.logging.FileLog import com.android.launcher3.logging.StatsLogManager import com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ROW_SHIFT_GRID_MIGRATION @@ -502,7 +503,14 @@ class GridSizeMigrationLogic { val occupied = GridOccupancy(trgX, trgY) val trg = Point(trgX, trgY) val next: Point = - if (screenId == 0 && BuildConfigs.QSB_ON_FIRST_SCREEN) { + if ( + screenId == 0 && + (FeatureFlags.QSB_ON_FIRST_SCREEN && + (!Flags.enableSmartspaceRemovalToggle() || + getPrefs(context) + .getBoolean(LoaderTask.SMARTSPACE_ON_HOME_SCREEN, true)) && + !Utilities.SHOULD_SHOW_FIRST_PAGE_WIDGET) + ) { Point(0, 1 /* smartspace */) } else { Point(0, 0) diff --git a/src/com/android/launcher3/model/ItemInstallQueue.java b/src/com/android/launcher3/model/ItemInstallQueue.java index ead22f6a8f..467a524775 100644 --- a/src/com/android/launcher3/model/ItemInstallQueue.java +++ b/src/com/android/launcher3/model/ItemInstallQueue.java @@ -24,7 +24,6 @@ import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APPWIDG import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; import static com.android.launcher3.model.data.AppInfo.makeLaunchIntent; import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_ARCHIVED; -import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.Executors.MODEL_EXECUTOR; import android.appwidget.AppWidgetManager; @@ -40,10 +39,8 @@ import android.util.Log; import android.util.Pair; import androidx.annotation.Nullable; -import androidx.annotation.UiThread; import androidx.annotation.WorkerThread; -import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.Flags; import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.Launcher; @@ -69,7 +66,6 @@ import java.util.stream.Collectors; import java.util.stream.Stream; import javax.inject.Inject; -import javax.inject.Provider; /** * Class to maintain a queue of pending items to be added to the workspace. @@ -96,7 +92,6 @@ public class ItemInstallQueue { private final PersistedItemArray<PendingInstallShortcutInfo> mStorage = new PersistedItemArray<>(APPS_PENDING_INSTALL); private final Context mContext; - private final Provider<WorkspaceItemSpaceFinder> mSpaceFinderProvider; // Determines whether to defer installing shortcuts immediately until // processAllPendingInstalls() is called. @@ -106,10 +101,8 @@ public class ItemInstallQueue { private List<PendingInstallShortcutInfo> mItems; @Inject - public ItemInstallQueue(@ApplicationContext Context context, - Provider<WorkspaceItemSpaceFinder> spaceFinderProvider) { + public ItemInstallQueue(@ApplicationContext Context context) { mContext = context; - mSpaceFinderProvider = spaceFinderProvider; } @WorkerThread @@ -144,30 +137,16 @@ public class ItemInstallQueue { List<Pair<ItemInfo, Object>> installQueue = mItems.stream() .map(info -> info.getItemInfo(mContext)) .collect(Collectors.toList()); + // Add the items and clear queue if (!installQueue.isEmpty()) { - MAIN_EXECUTOR.execute(() -> commitInstallQueue(launcher, installQueue)); + // add log + launcher.getModel().addAndBindAddedWorkspaceItems(installQueue); } mItems.clear(); mStorage.getFile(mContext).delete(); } - @UiThread - private void commitInstallQueue(Launcher launcher, List<Pair<ItemInfo, Object>> itemList) { - // If there's an undo snackbar, force it to complete to ensure empty screens are - // removed before trying to add new items. - launcher.getModelWriter().commitDelete(); - AbstractFloatingView snackbar = AbstractFloatingView.getOpenView( - launcher, - AbstractFloatingView.TYPE_SNACKBAR - ); - if (snackbar != null) { - snackbar.close(true); - } - launcher.getModel().enqueueModelUpdateTask( - new AddWorkspaceItemsTask(itemList, mSpaceFinderProvider.get())); - } - /** * Removes previously added items from the queue. */ diff --git a/src/com/android/launcher3/model/LayoutParserFactory.kt b/src/com/android/launcher3/model/LayoutParserFactory.kt index d6cf20beb1..32aa58a03b 100644 --- a/src/com/android/launcher3/model/LayoutParserFactory.kt +++ b/src/com/android/launcher3/model/LayoutParserFactory.kt @@ -19,7 +19,6 @@ package com.android.launcher3.model import android.app.blob.BlobHandle import android.app.blob.BlobStoreManager import android.content.Context -import android.content.res.Resources import android.os.ParcelFileDescriptor.AutoCloseInputStream import android.provider.Settings.Secure import android.text.TextUtils @@ -149,7 +148,7 @@ constructor(@ApplicationContext private val context: Context) { widgetHolder: LauncherWidgetHolder, openHelper: DatabaseHelper, xml: String, - res: SourceResources = SourceResources.wrap(Resources.getSystem()), + res: SourceResources = object : SourceResources {}, ): AutoInstallsLayout { val parser = Xml.newPullParser() parser.setInput(StringReader(xml)) diff --git a/src/com/android/launcher3/model/LoaderCursor.java b/src/com/android/launcher3/model/LoaderCursor.java index 4cc31a2d3d..384d4aa63b 100644 --- a/src/com/android/launcher3/model/LoaderCursor.java +++ b/src/com/android/launcher3/model/LoaderCursor.java @@ -18,10 +18,10 @@ package com.android.launcher3.model; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; -import static com.android.launcher3.LauncherSettings.Favorites.DESKTOP_ICON_FLAG; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APPLICATION; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APP_PAIR; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; +import static com.android.launcher3.Utilities.SHOULD_SHOW_FIRST_PAGE_WIDGET; import static com.android.launcher3.icons.cache.CacheLookupFlag.DEFAULT_LOOKUP_FLAG; import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_ARCHIVED; @@ -43,8 +43,6 @@ import android.util.LongSparseArray; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; -import com.android.launcher3.BuildConfig; -import com.android.launcher3.BuildConfigs; import com.android.launcher3.Flags; import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.LauncherModel; @@ -54,6 +52,7 @@ import com.android.launcher3.Utilities; import com.android.launcher3.Workspace; import com.android.launcher3.backuprestore.LauncherRestoreEventLogger; import com.android.launcher3.backuprestore.LauncherRestoreEventLogger.RestoreError; +import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.icons.IconCache; import com.android.launcher3.logging.FileLog; @@ -248,8 +247,7 @@ public class LoaderCursor extends CursorWrapper { byte[] iconBlob = itemType == Favorites.ITEM_TYPE_DEEP_SHORTCUT || restoreFlag != 0 || (wai.isInactiveArchive() && Flags.restoreArchivedAppIconsFromDb()) ? getIconBlob() : null; - return new IconRequestInfo<>(wai, mActivityInfo, iconBlob, - DESKTOP_ICON_FLAG.withUseLowRes(useLowResIcon)); + return new IconRequestInfo<>(wai, mActivityInfo, iconBlob, useLowResIcon); } /** @@ -542,9 +540,9 @@ public class LoaderCursor extends CursorWrapper { * Return an existing FolderInfo object if we have encountered this ID previously, * or make a new one. */ - public CollectionInfo findOrMakeFolder(int id, IntSparseArrayMap<ItemInfo> loadedItems) { + public CollectionInfo findOrMakeFolder(int id, BgDataModel dataModel) { // See if a placeholder was created for us already - ItemInfo info = loadedItems.get(id); + ItemInfo info = dataModel.itemsIdMap.get(id); if (info instanceof CollectionInfo c) return c; CollectionInfo pending = mPendingCollectionInfo.get(id); @@ -565,13 +563,13 @@ public class LoaderCursor extends CursorWrapper { * otherwise marks it for deletion. */ public void checkAndAddItem( - ItemInfo info, IntSparseArrayMap<ItemInfo> loadedItems, LoaderMemoryLogger logger) { + ItemInfo info, BgDataModel dataModel, LoaderMemoryLogger logger) { if (info.itemType == Favorites.ITEM_TYPE_DEEP_SHORTCUT) { // Ensure that it is a valid intent. An exception here will // cause the item loading to get skipped ShortcutKey.fromItemInfo(info); } - if (checkItemPlacement(info)) { + if (checkItemPlacement(info, dataModel.isFirstPagePinnedItemEnabled)) { if (logger != null) { logger.addLog( Log.DEBUG, @@ -579,13 +577,13 @@ public class LoaderCursor extends CursorWrapper { String.format("Adding item to ID map: %s", info), /* stackTrace= */ null); } - loadedItems.put(info.id, info); + dataModel.addItem(mContext, info, false); if ((info.itemType == ITEM_TYPE_APP_PAIR || info.itemType == ITEM_TYPE_DEEP_SHORTCUT || info.itemType == ITEM_TYPE_APPLICATION) && info.container != CONTAINER_DESKTOP && info.container != CONTAINER_HOTSEAT) { - findOrMakeFolder(info.container, loadedItems).add(info); + findOrMakeFolder(info.container, dataModel).add(info); } if (mRestoreEventLogger != null) { mRestoreEventLogger.logSingleFavoritesItemRestored(itemType); @@ -598,7 +596,7 @@ public class LoaderCursor extends CursorWrapper { /** * check & update map of what's occupied; used to discard overlapping/invalid items */ - protected boolean checkItemPlacement(ItemInfo item) { + protected boolean checkItemPlacement(ItemInfo item, boolean isFirstPagePinnedItemEnabled) { int containerIndex = item.screenId; if (item.container == Favorites.CONTAINER_HOTSEAT) { final GridOccupancy hotseatOccupancy = @@ -646,7 +644,9 @@ public class LoaderCursor extends CursorWrapper { if (!mOccupied.containsKey(item.screenId)) { GridOccupancy screen = new GridOccupancy(countX + 1, countY + 1); - if (item.screenId == Workspace.FIRST_SCREEN_ID && BuildConfigs.QSB_ON_FIRST_SCREEN) { + if (item.screenId == Workspace.FIRST_SCREEN_ID && (FeatureFlags.QSB_ON_FIRST_SCREEN + && !SHOULD_SHOW_FIRST_PAGE_WIDGET + && isFirstPagePinnedItemEnabled)) { // Mark the first X columns (X is width of the search container) in the first row as // occupied (if the feature is enabled) in order to account for the search // container. diff --git a/src/com/android/launcher3/model/LoaderTask.java b/src/com/android/launcher3/model/LoaderTask.java index b941dc6ef3..38e6a39f10 100644 --- a/src/com/android/launcher3/model/LoaderTask.java +++ b/src/com/android/launcher3/model/LoaderTask.java @@ -18,17 +18,21 @@ package com.android.launcher3.model; import static com.android.launcher3.BuildConfigs.WIDGET_ON_FIRST_SCREEN; import static com.android.launcher3.Flags.enableLauncherBrMetricsFixed; +import static com.android.launcher3.Flags.enableSmartspaceAsAWidget; +import static com.android.launcher3.Flags.enableSmartspaceRemovalToggle; import static com.android.launcher3.LauncherPrefs.IS_FIRST_LOAD_AFTER_RESTORE; +import static com.android.launcher3.LauncherPrefs.SHOULD_SHOW_SMARTSPACE; +import static com.android.launcher3.LauncherSettings.Favorites.DESKTOP_ICON_FLAG; import static com.android.launcher3.icons.CacheableShortcutInfo.convertShortcutsToCacheableShortcuts; import static com.android.launcher3.icons.cache.CacheLookupFlag.DEFAULT_LOOKUP_FLAG; import static com.android.launcher3.folder.FolderGridOrganizer.createFolderGridOrganizer; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_HAS_SHORTCUT_PERMISSION; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_QUIET_MODE_CHANGE_PERMISSION; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_QUIET_MODE_ENABLED; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_WORK_PROFILE_QUIET_MODE_ENABLED; import static com.android.launcher3.model.ModelUtils.WIDGET_FILTER; import static com.android.launcher3.model.ModelUtils.currentScreenContentFilter; -import static com.android.launcher3.model.data.AppsListData.FLAG_HAS_SHORTCUT_PERMISSION; -import static com.android.launcher3.model.data.AppsListData.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED; -import static com.android.launcher3.model.data.AppsListData.FLAG_QUIET_MODE_CHANGE_PERMISSION; -import static com.android.launcher3.model.data.AppsListData.FLAG_QUIET_MODE_ENABLED; -import static com.android.launcher3.model.data.AppsListData.FLAG_WORK_PROFILE_QUIET_MODE_ENABLED; import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_INSTALL_SESSION_ACTIVE; import static com.android.launcher3.util.Executors.MODEL_EXECUTOR; import static com.android.launcher3.util.LooperExecutor.CALLER_LOADER_TASK; @@ -61,10 +65,13 @@ import com.android.launcher3.Flags; import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.LauncherModel; import com.android.launcher3.LauncherPrefs; +import com.android.launcher3.LauncherSettings.Favorites; import com.android.launcher3.Utilities; import com.android.launcher3.backuprestore.LauncherRestoreEventLogger; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.dagger.ApplicationContext; +import com.android.launcher3.folder.Folder; +import com.android.launcher3.folder.FolderGridOrganizer; import com.android.launcher3.folder.FolderNameInfos; import com.android.launcher3.folder.FolderNameProvider; import com.android.launcher3.icons.CacheableShortcutCachingLogic; @@ -77,11 +84,11 @@ import com.android.launcher3.icons.cache.LauncherActivityCachingLogic; import com.android.launcher3.logging.FileLog; import com.android.launcher3.model.LoaderCursor.LoaderCursorFactory; import com.android.launcher3.model.data.AppInfo; +import com.android.launcher3.model.data.AppPairInfo; import com.android.launcher3.model.data.FolderInfo; import com.android.launcher3.model.data.IconRequestInfo; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.LauncherAppWidgetInfo; -import com.android.launcher3.model.data.LoaderParams; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.pm.InstallSessionHelper; import com.android.launcher3.pm.PackageInstallInfo; @@ -90,6 +97,7 @@ import com.android.launcher3.shortcuts.ShortcutKey; import com.android.launcher3.shortcuts.ShortcutRequest; import com.android.launcher3.shortcuts.ShortcutRequest.QueryResult; import com.android.launcher3.util.ApiWrapper; +import com.android.launcher3.util.ComponentKey; import com.android.launcher3.util.IOUtils; import com.android.launcher3.util.IntArray; import com.android.launcher3.util.IntSet; @@ -118,7 +126,6 @@ import java.util.stream.Collectors; import app.lawnchair.preferences.PreferenceManager; import javax.inject.Named; -import javax.inject.Provider; /** * Runnable for the thread that loads the contents of the launcher: @@ -130,6 +137,7 @@ import javax.inject.Provider; @SuppressWarnings("NewApi") public class LoaderTask implements Runnable { private static final String TAG = "LoaderTask"; + public static final String SMARTSPACE_ON_HOME_SCREEN = "pref_smartspace_home_screen"; private static final boolean DEBUG = true; @@ -140,7 +148,6 @@ public class LoaderTask implements Runnable { private final AllAppsList mBgAllAppsList; protected final BgDataModel mBgDataModel; private final LoaderCursorFactory mLoaderCursorFactory; - private final LoaderParams mParams; private final ModelDelegate mModelDelegate; private boolean mIsRestoreFromBackup; @@ -167,12 +174,11 @@ public class LoaderTask implements Runnable { private boolean mStopped; private final Set<PackageUserKey> mPendingPackages = new HashSet<>(); + private boolean mItemsDeleted = false; private String mDbName; - private final Provider<FolderNameProvider> mFolderNameProviderFactory; - private final Provider<LauncherRestoreEventLogger> mRestoreEventLoggerProvider; @AssistedInject - protected LoaderTask( + LoaderTask( @ApplicationContext Context context, InvariantDeviceProfile idp, LauncherModel model, @@ -183,12 +189,9 @@ public class LoaderTask implements Runnable { AllAppsList bgAllAppsList, BgDataModel bgModel, LoaderCursorFactory loaderCursorFactory, - Provider<FolderNameProvider> folderNameProviderFactory, @Named("SAFE_MODE") boolean isSafeModeEnabled, @Assisted @NonNull BaseLauncherBinder launcherBinder, - @Assisted UserManagerState userManagerState, - Provider<LauncherRestoreEventLogger> restoreEventLoggerFactory, - LoaderParams params) { + @Assisted UserManagerState userManagerState) { mContext = context; mIDP = idp; mModel = model; @@ -206,9 +209,6 @@ public class LoaderTask implements Runnable { mIconCache = iconCache; mUserManagerState = userManagerState; mInstallingPkgsCached = null; - mFolderNameProviderFactory = folderNameProviderFactory; - mRestoreEventLoggerProvider = restoreEventLoggerFactory; - mParams = params; } protected synchronized void waitForIdle() { @@ -229,7 +229,7 @@ public class LoaderTask implements Runnable { private void sendFirstScreenActiveInstallsBroadcast() { // Screen set is never empty - IntArray allScreens = mBgDataModel.itemsIdMap.collectWorkspaceScreens(); + IntArray allScreens = mBgDataModel.collectWorkspaceScreens(); final int firstScreen = allScreens.get(0); IntSet firstScreens = IntSet.wrap(firstScreen); @@ -260,127 +260,6 @@ public class LoaderTask implements Runnable { } } - private void loadAllSurfacesOrdered( - LoaderMemoryLogger memoryLogger, LauncherRestoreEventLogger restoreEventLogger) { - - List<CacheableShortcutInfo> allShortcuts = new ArrayList<>(); - Trace.beginSection("LoadWorkspace"); - try { - loadWorkspaceImpl(allShortcuts, mParams.getWorkspaceSelection(), memoryLogger, - restoreEventLogger); - } finally { - Trace.endSection(); - } - logASplit("loadWorkspace finished"); - - // Sanitize data re-syncs widgets/shortcuts based on the workspace loaded from db. - // sanitizeData should not be invoked if the workspace is loaded from a db different - // from the main db as defined in the invariant device profile. - // (e.g. both grid preview and minimal device mode uses a different db) - // TODO(b/384731096): Write Unit Test to make sure sanitizeWidgetsShortcutsAndPackages - // actually re-pins shortcuts that are in model but not in ShortcutManager, if possible - // after a simulated restore. - if (Objects.equals(mIDP.dbFile, mDbName) && mParams.getSanitizeData()) { - verifyNotStopped(); - sanitizeWidgetsShortcutsAndPackages(); - logASplit("sanitizeData finished"); - } - - verifyNotStopped(); - mLauncherBinder.bindWorkspace(true /* incrementBindId */, /* isBindSync= */ false); - logASplit("bindWorkspace finished"); - - if (!mParams.getLoadNonWorkspaceItems()) { - logASplit("Skipping remaining items"); - return; - } - - mModelDelegate.workspaceLoadComplete(); - // Notify the installer packages of packages with active installs on the first screen. - sendFirstScreenActiveInstallsBroadcast(); - - // Take a break - waitForIdle(); - logASplit("step 1 loading workspace complete"); - verifyNotStopped(); - - // second step - Trace.beginSection("LoadAllApps"); - List<LauncherActivityInfo> allActivityList; - try { - allActivityList = loadAllApps(); - } finally { - Trace.endSection(); - } - logASplit("loadAllApps finished"); - - verifyNotStopped(); - mLauncherBinder.bindAllApps(); - logASplit("bindAllApps finished"); - - verifyNotStopped(); - IconCacheUpdateHandler updateHandler = mIconCache.getUpdateHandler(); - setIgnorePackages(updateHandler); - updateHandler.updateIcons(allActivityList, - LauncherActivityCachingLogic.INSTANCE, - mModel::onPackageIconsUpdated); - logASplit("update AllApps icon cache finished"); - - verifyNotStopped(); - logASplit("saving all shortcuts in icon cache"); - updateHandler.updateIcons(allShortcuts, CacheableShortcutCachingLogic.INSTANCE, - mModel::onPackageIconsUpdated); - - // Take a break - waitForIdle(); - logASplit("step 2 loading AllApps complete"); - verifyNotStopped(); - - // third step - List<ShortcutInfo> allDeepShortcuts = loadDeepShortcuts(); - logASplit("loadDeepShortcuts finished"); - - verifyNotStopped(); - mLauncherBinder.bindDeepShortcuts(); - logASplit("bindDeepShortcuts finished"); - - verifyNotStopped(); - logASplit("saving deep shortcuts in icon cache"); - updateHandler.updateIcons( - convertShortcutsToCacheableShortcuts(allDeepShortcuts, allActivityList), - CacheableShortcutCachingLogic.INSTANCE, - (pkgs, user) -> { }); - - // Take a break - waitForIdle(); - logASplit("step 3 loading all shortcuts complete"); - verifyNotStopped(); - - // fourth step - WidgetsModel widgetsModel = mBgDataModel.widgetsModel; - List<CachedObject> allWidgetsList = widgetsModel.update(/*packageUser=*/null); - logASplit("load widgets finished"); - - verifyNotStopped(); - mLauncherBinder.bindWidgets(); - logASplit("bindWidgets finished"); - verifyNotStopped(); - - logASplit("saving all widgets in icon cache"); - updateHandler.updateIcons(allWidgetsList, - CachedObjectCachingLogic.INSTANCE, - mModel::onWidgetLabelsUpdated); - - // fifth step - loadFolderNames(); - - verifyNotStopped(); - updateHandler.finish(); - logASplit("finish icon update"); - - mModelDelegate.modelLoadComplete(); - } - public void run() { synchronized (this) { // Skip fast if we are already stopped. @@ -396,11 +275,128 @@ public class LoaderTask implements Runnable { LauncherPrefs.get(mContext).get(IS_FIRST_LOAD_AFTER_RESTORE); LauncherRestoreEventLogger restoreEventLogger = null; if (enableLauncherBrMetricsFixed()) { - restoreEventLogger = mRestoreEventLoggerProvider.get(); + restoreEventLogger = LauncherRestoreEventLogger.Companion.newInstance(mContext); } try (LauncherModel.LoaderTransaction transaction = mModel.beginLoader(this)) { - loadAllSurfacesOrdered(memoryLogger, restoreEventLogger); + List<CacheableShortcutInfo> allShortcuts = new ArrayList<>(); + loadWorkspace(allShortcuts, "", new HashMap<>(), memoryLogger, restoreEventLogger); + // Sanitize data re-syncs widgets/shortcuts based on the workspace loaded from db. + // sanitizeData should not be invoked if the workspace is loaded from a db different + // from the main db as defined in the invariant device profile. + // (e.g. both grid preview and minimal device mode uses a different db) + // TODO(b/384731096): Write Unit Test to make sure sanitizeWidgetsShortcutsAndPackages + // actually re-pins shortcuts that are in model but not in ShortcutManager, if possible + // after a simulated restore. + if (Objects.equals(mIDP.dbFile, mDbName)) { + verifyNotStopped(); + sanitizeFolders(mItemsDeleted); + sanitizeAppPairs(); + sanitizeWidgetsShortcutsAndPackages(); + logASplit("sanitizeData finished"); + } + + verifyNotStopped(); + mLauncherBinder.bindWorkspace(true /* incrementBindId */, /* isBindSync= */ false); + logASplit("bindWorkspace finished"); + + mModelDelegate.workspaceLoadComplete(); + // Notify the installer packages of packages with active installs on the first screen. + sendFirstScreenActiveInstallsBroadcast(); + + // Take a break + waitForIdle(); + logASplit("step 1 loading workspace complete"); + verifyNotStopped(); + + // second step + Trace.beginSection("LoadAllApps"); + List<LauncherActivityInfo> allActivityList; + try { + allActivityList = loadAllApps(); + } finally { + Trace.endSection(); + } + logASplit("loadAllApps finished"); + + verifyNotStopped(); + mLauncherBinder.bindAllApps(); + logASplit("bindAllApps finished"); + + verifyNotStopped(); + IconCacheUpdateHandler updateHandler = mIconCache.getUpdateHandler(); + setIgnorePackages(updateHandler); + updateHandler.updateIcons(allActivityList, + LauncherActivityCachingLogic.INSTANCE, + mModel::onPackageIconsUpdated); + logASplit("update AllApps icon cache finished"); + + verifyNotStopped(); + logASplit("saving all shortcuts in icon cache"); + updateHandler.updateIcons(allShortcuts, CacheableShortcutCachingLogic.INSTANCE, + mModel::onPackageIconsUpdated); + + // Take a break + waitForIdle(); + logASplit("step 2 loading AllApps complete"); + verifyNotStopped(); + + // third step + List<ShortcutInfo> allDeepShortcuts = loadDeepShortcuts(); + logASplit("loadDeepShortcuts finished"); + + verifyNotStopped(); + mLauncherBinder.bindDeepShortcuts(); + logASplit("bindDeepShortcuts finished"); + + verifyNotStopped(); + logASplit("saving deep shortcuts in icon cache"); + updateHandler.updateIcons( + convertShortcutsToCacheableShortcuts(allDeepShortcuts, allActivityList), + CacheableShortcutCachingLogic.INSTANCE, + (pkgs, user) -> { }); + + // Take a break + waitForIdle(); + logASplit("step 3 loading all shortcuts complete"); + verifyNotStopped(); + + // fourth step + WidgetsModel widgetsModel = mBgDataModel.widgetsModel; + List<CachedObject> allWidgetsList = widgetsModel.update(/*packageUser=*/null); + logASplit("load widgets finished"); + + verifyNotStopped(); + mLauncherBinder.bindWidgets(); + logASplit("bindWidgets finished"); + verifyNotStopped(); + LauncherPrefs prefs = LauncherPrefs.get(mContext); + + if (enableSmartspaceAsAWidget() && prefs.get(SHOULD_SHOW_SMARTSPACE)) { + mLauncherBinder.bindSmartspaceWidget(); + // Turn off pref. + prefs.putSync(SHOULD_SHOW_SMARTSPACE.to(false)); + logASplit("bindSmartspaceWidget finished"); + verifyNotStopped(); + } else if (!enableSmartspaceAsAWidget() && WIDGET_ON_FIRST_SCREEN + && !prefs.get(LauncherPrefs.SHOULD_SHOW_SMARTSPACE)) { + // Turn on pref. + prefs.putSync(SHOULD_SHOW_SMARTSPACE.to(true)); + } + + logASplit("saving all widgets in icon cache"); + updateHandler.updateIcons(allWidgetsList, + CachedObjectCachingLogic.INSTANCE, + mModel::onWidgetLabelsUpdated); + + // fifth step + loadFolderNames(); + + verifyNotStopped(); + updateHandler.finish(); + logASplit("finish icon update"); + + mModelDelegate.modelLoadComplete(); transaction.commit(); memoryLogger.clearLogs(); if (mIsRestoreFromBackup) { @@ -427,9 +423,36 @@ public class LoaderTask implements Runnable { this.notify(); } + public void loadWorkspaceForPreview(String selection, + Map<ComponentKey, AppWidgetProviderInfo> widgetProviderInfoMap) { + loadWorkspace(new ArrayList<>(), selection, widgetProviderInfoMap, null, null); + } + + private void loadWorkspace( + List<CacheableShortcutInfo> allDeepShortcuts, + String selection, + Map<ComponentKey, AppWidgetProviderInfo> widgetProviderInfoMap, + @Nullable LoaderMemoryLogger memoryLogger, + @Nullable LauncherRestoreEventLogger restoreEventLogger + ) { + Trace.beginSection("LoadWorkspace"); + try { + loadWorkspaceImpl(allDeepShortcuts, selection, widgetProviderInfoMap, + memoryLogger, restoreEventLogger); + } finally { + Trace.endSection(); + } + logASplit("loadWorkspace finished"); + + mBgDataModel.isFirstPagePinnedItemEnabled = FeatureFlags.QSB_ON_FIRST_SCREEN + && (!enableSmartspaceRemovalToggle() + || LauncherPrefs.getPrefs(mContext).getBoolean(SMARTSPACE_ON_HOME_SCREEN, true)); + } + private void loadWorkspaceImpl( List<CacheableShortcutInfo> allDeepShortcuts, String selection, + Map<ComponentKey, AppWidgetProviderInfo> widgetProviderInfoMap, @Nullable LoaderMemoryLogger memoryLogger, @Nullable LauncherRestoreEventLogger restoreEventLogger) { final boolean isSdCardReady = Utilities.isBootCompleted(); @@ -462,7 +485,7 @@ public class LoaderTask implements Runnable { FileLog.d(TAG, "loadWorkspace: Packages with active install sessions: " + installingPkgs.keySet().stream().map(info -> info.mPackageName).toList()); } - + mFirstScreenBroadcast = new FirstScreenBroadcast(installingPkgs); mShortcutKeyToPinnedShortcuts = new HashMap<>(); @@ -472,17 +495,18 @@ public class LoaderTask implements Runnable { mIsRestoreFromBackup ? restoreEventLogger : null); final Bundle extras = c.getExtras(); mDbName = extras == null ? null : extras.getString(ModelDbController.EXTRA_DB_NAME); - WorkspaceItemProcessor itemProcessor; try { final LongSparseArray<Boolean> unlockedUsers = new LongSparseArray<>(); queryPinnedShortcutsForUnlockedUsers(mContext, unlockedUsers); mWorkspaceIconRequestInfos = new ArrayList<>(); - itemProcessor = new WorkspaceItemProcessor(c, memoryLogger, + WorkspaceItemProcessor itemProcessor = new WorkspaceItemProcessor(c, memoryLogger, mUserCache, mUserManagerState, mLauncherApps, mPendingPackages, mShortcutKeyToPinnedShortcuts, mContext, mIDP, mIconCache, - mIsSafeModeEnabled, installingPkgs, isSdCardReady, widgetInflater, - mPmHelper, mWorkspaceIconRequestInfos, unlockedUsers, allDeepShortcuts); + mIsSafeModeEnabled, mBgDataModel, + widgetProviderInfoMap, installingPkgs, isSdCardReady, + widgetInflater, mPmHelper, mWorkspaceIconRequestInfos, unlockedUsers, + allDeepShortcuts); if (mStopped) { Log.w(TAG, "loadWorkspaceImpl: Loader stopped, skipping item processing"); @@ -496,18 +520,43 @@ public class LoaderTask implements Runnable { IOUtils.closeSilently(c); } + mModelDelegate.loadAndBindWorkspaceItems(mUserManagerState, + mLauncherBinder.mCallbacksList, mShortcutKeyToPinnedShortcuts); + mModelDelegate.loadAndBindAllAppsItems(mUserManagerState, + mLauncherBinder.mCallbacksList, mShortcutKeyToPinnedShortcuts); + mModelDelegate.loadAndBindOtherItems(mLauncherBinder.mCallbacksList); + mModelDelegate.markActive(); + // Break early if we've stopped loading if (mStopped) { mBgDataModel.clear(); return; } - mBgDataModel.stringCache.loadStrings(mContext); - mBgDataModel.dataLoadComplete( - itemProcessor.finalizeData(mModelDelegate, mModel.getModelDbController())); + // Remove dead items + mItemsDeleted = c.commitDeleted(); + + processFolderItems(); + processAppPairItems(); + + c.commitRestoredItems(); } } + /** + * After all items have been processed and added to the BgDataModel, this method sorts and + * requests high-res icons for the items that are part of an app pair. + */ + private void processAppPairItems() { + mBgDataModel.itemsIdMap.stream() + .filter(item -> item instanceof AppPairInfo) + .forEach(item -> { + AppPairInfo appPair = (AppPairInfo) item; + appPair.getContents().sort(Folder.ITEM_POS_COMPARATOR); + appPair.fetchHiResIconsIfNeeded(mIconCache); + }); + } + /** * Initialized the UserManagerState, and determines which users are unlocked. Additionally, if * the user is unlocked, it queries LauncherAppsService for pinned shortcuts and stores the @@ -551,6 +600,44 @@ public class LoaderTask implements Runnable { } + /** + * After all items have been processed and added to the BgDataModel, this method can correctly + * rank items inside folders and load the correct miniature preview icons to be shown when the + * folder is collapsed. + */ + @WorkerThread + private void processFolderItems() { + // Sort the folder items, update ranks, and make sure all preview items are high res. + List<FolderGridOrganizer> verifiers = mIDP.supportedProfiles + .stream().map(FolderGridOrganizer::createFolderGridOrganizer).toList(); + for (ItemInfo itemInfo : mBgDataModel.itemsIdMap) { + if (!(itemInfo instanceof FolderInfo folder)) { + continue; + } + + folder.getContents().sort(Folder.ITEM_POS_COMPARATOR); + verifiers.forEach(verifier -> verifier.setFolderInfo(folder)); + int size = folder.getContents().size(); + + // Update ranks here to ensure there are no gaps caused by removed folder items. + // Ranks are the source of truth for folder items, so cellX and cellY can be + // ignored for now. Database will be updated once user manually modifies folder. + for (int rank = 0; rank < size; ++rank) { + ItemInfo info = folder.getContents().get(rank); + info.rank = rank; + + if (info instanceof WorkspaceItemInfo wii + && wii.getMatchingLookupFlag().isVisuallyLessThan(DESKTOP_ICON_FLAG) + && wii.itemType == Favorites.ITEM_TYPE_APPLICATION + && verifiers.stream().anyMatch(it -> it.isItemInPreview(info.rank))) { + mIconCache.getTitleAndIcon(wii, DESKTOP_ICON_FLAG); + } else if (info instanceof AppPairInfo api) { + api.fetchHiResIconsIfNeeded(mIconCache); + } + } + } + } + private void tryLoadWorkspaceIconsInBulk( List<IconRequestInfo<WorkspaceItemInfo>> iconRequestInfos) { Trace.beginSection("LoadWorkspaceIconsInBulk"); @@ -573,12 +660,14 @@ public class LoaderTask implements Runnable { // Ignore packages which have a promise icon. synchronized (mBgDataModel) { for (ItemInfo info : mBgDataModel.itemsIdMap) { - if (info instanceof WorkspaceItemInfo si) { + if (info instanceof WorkspaceItemInfo) { + WorkspaceItemInfo si = (WorkspaceItemInfo) info; if (si.isPromise() && si.getTargetComponent() != null) { updateHandler.addPackagesToIgnore( si.user, si.getTargetComponent().getPackageName()); } - } else if (info instanceof LauncherAppWidgetInfo lawi) { + } else if (info instanceof LauncherAppWidgetInfo) { + LauncherAppWidgetInfo lawi = (LauncherAppWidgetInfo) info; if (lawi.hasRestoreFlag(LauncherAppWidgetInfo.FLAG_PROVIDER_NOT_READY)) { updateHandler.addPackagesToIgnore( lawi.user, lawi.providerName.getPackageName()); @@ -588,6 +677,33 @@ public class LoaderTask implements Runnable { } } + private void sanitizeFolders(boolean itemsDeleted) { + if (itemsDeleted) { + // Remove any empty folder + IntArray deletedFolderIds = mModel.getModelDbController().deleteEmptyFolders(); + synchronized (mBgDataModel) { + for (int folderId : deletedFolderIds) { + mBgDataModel.itemsIdMap.remove(folderId); + } + } + } + } + + /** Cleans up app pairs if they don't have the right number of member apps (2). */ + private void sanitizeAppPairs() { + IntArray deletedAppPairIds = mModel.getModelDbController().deleteBadAppPairs(); + IntArray deletedAppIds = mModel.getModelDbController().deleteUnparentedApps(); + + IntArray deleted = new IntArray(); + deleted.addAll(deletedAppPairIds); + deleted.addAll(deletedAppIds); + + synchronized (mBgDataModel) { + for (int id : deleted) { + mBgDataModel.itemsIdMap.remove(id); + } + } + } private void sanitizeWidgetsShortcutsAndPackages() { // Remove any ghost widgets @@ -681,7 +797,7 @@ public class LoaderTask implements Runnable { allAppsItemRequestInfos.add(new IconRequestInfo<>( promiseAppInfo, /* launcherActivityInfo= */ null, - promiseAppInfo.getMatchingLookupFlag().withThemeIcon(false))); + promiseAppInfo.getMatchingLookupFlag().useLowRes())); } } } @@ -750,7 +866,7 @@ public class LoaderTask implements Runnable { appInfo, activityInfo, workspaceIconRequest.get().iconBlob, - DEFAULT_LOOKUP_FLAG.withUseLowRes(false) + false /* useLowResIcon= */ ); if (!iconRequestInfo.loadIconFromDbBlob(mContext)) { Log.d(TAG, "AppInfo Icon failed to load from blob, using cache."); @@ -768,8 +884,7 @@ public class LoaderTask implements Runnable { + ", isArchived: " + activityInfo.getApplicationInfo().isArchived); } } - return new IconRequestInfo<>(appInfo, activityInfo, - DEFAULT_LOOKUP_FLAG.withUseLowRes(false)); + return new IconRequestInfo<>(appInfo, activityInfo, false /* useLowResIcon= */); } private List<ShortcutInfo> loadDeepShortcuts() { @@ -790,9 +905,8 @@ public class LoaderTask implements Runnable { } private void loadFolderNames() { - FolderNameProvider provider = mFolderNameProviderFactory.get(); - provider.load(mBgAllAppsList.data, - FolderNameProvider.getCollectionForSuggestions(mBgDataModel)); + FolderNameProvider provider = FolderNameProvider.newInstance(mContext, + mBgAllAppsList.data, FolderNameProvider.getCollectionForSuggestions(mBgDataModel)); synchronized (mBgDataModel) { mBgDataModel.itemsIdMap.stream() @@ -824,5 +938,4 @@ public class LoaderTask implements Runnable { LoaderTask newLoaderTask(BaseLauncherBinder binder, UserManagerState userState); } - } diff --git a/src/com/android/launcher3/model/ModelDbController.java b/src/com/android/launcher3/model/ModelDbController.java index 227dbdbfe1..8457590c37 100644 --- a/src/com/android/launcher3/model/ModelDbController.java +++ b/src/com/android/launcher3/model/ModelDbController.java @@ -35,6 +35,7 @@ import android.net.Uri; import android.os.Bundle; import android.os.Process; import android.os.UserHandle; +import android.os.UserManager; import android.text.TextUtils; import android.util.Log; @@ -52,13 +53,13 @@ import com.android.launcher3.LauncherPrefs; import com.android.launcher3.LauncherSettings; import com.android.launcher3.LauncherSettings.Favorites; import com.android.launcher3.Utilities; +import com.android.launcher3.graphics.LauncherPreviewRenderer; import com.android.launcher3.backuprestore.LauncherRestoreEventLogger; import com.android.launcher3.backuprestore.LauncherRestoreEventLogger.RestoreError; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.logging.FileLog; import com.android.launcher3.pm.UserCache; -import com.android.launcher3.preview.PreviewContext; import com.android.launcher3.provider.LauncherDbUtils; import com.android.launcher3.provider.LauncherDbUtils.SQLiteTransaction; import com.android.launcher3.provider.RestoreDbTask; @@ -66,8 +67,8 @@ import com.android.launcher3.util.IntArray; import com.android.launcher3.util.SandboxContext; import com.android.launcher3.widget.LauncherWidgetHolder; +import java.io.File; import java.util.List; -import java.util.function.Consumer; import java.util.stream.Collectors; import javax.inject.Inject; @@ -114,16 +115,31 @@ public class ModelDbController { mContext = context; } + private void printDBs(String prefix) { + try { + File directory = new File(mContext.getDatabasePath(mIdp.dbFile).getParent()); + if (directory.exists()) { + for (File file : directory.listFiles()) { + Log.d("b/353505773", prefix + "Database file: " + file.getName()); + } + } else { + Log.d("b/353505773", prefix + "No files found in the database directory"); + } + } catch (Exception e) { + Log.e("b/353505773", prefix + e.getMessage()); + } + } + private synchronized void createDbIfNotExists() { if (mOpenHelper == null) { - // Initialize the restore task before opening the DB - Consumer<ModelDbController> restoreTask = RestoreDbTask.createRestoreTask(mContext); String dbFile = mPrefs.get(DB_FILE); if (dbFile.isEmpty()) { dbFile = mIdp.dbFile; } mOpenHelper = createDatabaseHelper(false /* forMigration */, dbFile); - restoreTask.accept(this); + printDBs("before: "); + RestoreDbTask.restoreIfNeeded(mContext, this); + printDBs("after: "); } } @@ -507,7 +523,6 @@ public class ModelDbController { * @return Ids of deleted folders. */ @WorkerThread - @Nullable public IntArray deleteEmptyFolders() { createDbIfNotExists(); @@ -530,7 +545,7 @@ public class ModelDbController { return folderIds; } catch (SQLException ex) { Log.e(TAG, ex.getMessage(), ex); - return null; + return new IntArray(); } } @@ -539,7 +554,6 @@ public class ModelDbController { * @return Ids of deleted app pairs. */ @WorkerThread - @Nullable public IntArray deleteBadAppPairs() { createDbIfNotExists(); @@ -563,7 +577,7 @@ public class ModelDbController { return appPairIds; } catch (SQLException ex) { Log.e(TAG, ex.getMessage(), ex); - return null; + return new IntArray(); } } @@ -572,7 +586,6 @@ public class ModelDbController { * @return Ids of deleted apps. */ @WorkerThread - @Nullable public IntArray deleteUnparentedApps() { createDbIfNotExists(); @@ -594,7 +607,7 @@ public class ModelDbController { return appIds; } catch (SQLException ex) { Log.e(TAG, ex.getMessage(), ex); - return null; + return new IntArray(); } } @@ -617,7 +630,7 @@ public class ModelDbController { public synchronized void loadDefaultFavoritesIfNecessary() { createDbIfNotExists(); - if (!(mContext instanceof PreviewContext)) { + if (!(mContext instanceof LauncherPreviewRenderer.PreviewContext)) { LawnchairAppKt.getLawnchairApp(mContext).cleanUpDatabases(); } @@ -663,8 +676,12 @@ public class ModelDbController { } private DefaultLayoutParser getDefaultLayoutParser(LauncherWidgetHolder widgetHolder) { + int defaultLayout = mIdp.demoModeLayoutId != 0 + && mContext.getSystemService(UserManager.class).isDemoUser() + ? mIdp.demoModeLayoutId : mIdp.defaultLayoutId; + return new DefaultLayoutParser(mContext, widgetHolder, - mOpenHelper, mContext.getResources(), mIdp.defaultLayoutId); + mOpenHelper, mContext.getResources(), defaultLayout); } private ConstantItem<Boolean> getEmptyDbCreatedKey() { diff --git a/src/com/android/launcher3/model/ModelDelegate.java b/src/com/android/launcher3/model/ModelDelegate.java index dc3b5085e8..52a2188ca2 100644 --- a/src/com/android/launcher3/model/ModelDelegate.java +++ b/src/com/android/launcher3/model/ModelDelegate.java @@ -18,14 +18,18 @@ package com.android.launcher3.model; import static com.android.launcher3.util.PackageManagerHelper.hasShortcutsPermission; import android.content.Context; +import android.content.pm.ShortcutInfo; import androidx.annotation.NonNull; import androidx.annotation.WorkerThread; import com.android.launcher3.LauncherModel; import com.android.launcher3.dagger.ApplicationContext; -import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.util.IntSparseArrayMap; +import com.android.launcher3.shortcuts.ShortcutKey; + +import java.io.FileDescriptor; +import java.io.PrintWriter; +import java.util.Map; import javax.inject.Inject; @@ -63,11 +67,33 @@ public class ModelDelegate { /** Load workspace items (for example, those in the hot seat) if any in the data model */ @WorkerThread - public void loadAndAddExtraModelItems(@NonNull IntSparseArrayMap<ItemInfo> outLoadedItems) { } + public void loadAndBindWorkspaceItems(@NonNull UserManagerState ums, + @NonNull BgDataModel.Callbacks[] callbacks, + @NonNull Map<ShortcutKey, ShortcutInfo> pinnedShortcuts) { } + + /** Load all apps items if any in the data model */ + @WorkerThread + public void loadAndBindAllAppsItems(@NonNull UserManagerState ums, + @NonNull BgDataModel.Callbacks[] callbacks, + @NonNull Map<ShortcutKey, ShortcutInfo> pinnedShortcuts) { } + + /** Load other items like widget recommendations if any in the data model */ + @WorkerThread + public void loadAndBindOtherItems(@NonNull BgDataModel.Callbacks[] callbacks) { } + + /** binds everything not bound by launcherBinder */ + @WorkerThread + public void bindAllModelExtras(@NonNull BgDataModel.Callbacks[] callbacks) { } /** Marks the ModelDelegate as active */ public void markActive() { } + /** Load String cache */ + @WorkerThread + public void loadStringCache(@NonNull StringCache cache) { + cache.loadStrings(mContext); + } + /** * Called during loader after workspace loading is complete */ @@ -91,4 +117,11 @@ public class ModelDelegate { @WorkerThread public void destroy() { } + /** + * Add data to a dumpsys request for Launcher (e.g. for bug reports). + * + * @see com.android.launcher3.Launcher#dump(java.lang.String, java.io.FileDescriptor, + * java.io.PrintWriter, java.lang.String[]) + **/ + public void dump(String prefix, FileDescriptor fd, PrintWriter writer, String[] args) { } } diff --git a/src/com/android/launcher3/model/ModelInitializer.kt b/src/com/android/launcher3/model/ModelInitializer.kt index cda4d34e26..c8f89b0278 100644 --- a/src/com/android/launcher3/model/ModelInitializer.kt +++ b/src/com/android/launcher3/model/ModelInitializer.kt @@ -19,6 +19,7 @@ package com.android.launcher3.model import android.app.admin.DevicePolicyManager.ACTION_DEVICE_POLICY_RESOURCE_UPDATED import android.content.ComponentName import android.content.Context +import android.content.SharedPreferences import android.content.pm.LauncherApps import android.content.pm.LauncherApps.ArchiveCompatibilityParams import com.android.launcher3.BuildConfigs @@ -26,6 +27,7 @@ import com.android.launcher3.Flags import com.android.launcher3.InvariantDeviceProfile import com.android.launcher3.InvariantDeviceProfile.OnIDPChangeListener import com.android.launcher3.LauncherModel +import com.android.launcher3.LauncherPrefs.Companion.getPrefs import com.android.launcher3.Utilities import com.android.launcher3.dagger.ApplicationContext import com.android.launcher3.graphics.ThemeManager @@ -64,7 +66,23 @@ constructor( ) { fun initialize(model: LauncherModel) { - initializeDisplayEvents(model) + fun refreshAndReloadLauncher() { + iconPool.clear() + iconCache.updateIconParams(idp.fillResIconDpi, idp.iconBitmapSize) + model.forceReload() + } + + // IDP changes + val idpChangeListener = OnIDPChangeListener { modelChanged -> + if (modelChanged) refreshAndReloadLauncher() + } + idp.addOnChangeListener(idpChangeListener) + lifeCycle.addCloseable { idp.removeOnChangeListener(idpChangeListener) } + + // Theme changes + val themeChangeListener = ThemeChangeListener { refreshAndReloadLauncher() } + themeManager.addChangeListener(themeChangeListener) + lifeCycle.addCloseable { themeManager.removeChangeListener(themeChangeListener) } // System changes val modelCallbacks = model.newModelCallbacks() @@ -83,9 +101,7 @@ constructor( // Device profile policy changes val dpUpdateReceiver = - SimpleBroadcastReceiver(context, UI_HELPER_EXECUTOR) { - model.enqueueModelUpdateTask(ReloadStringCacheTask()) - } + SimpleBroadcastReceiver(context, UI_HELPER_EXECUTOR) { model.reloadStringCache() } dpUpdateReceiver.register(ACTION_DEVICE_POLICY_RESOURCE_UPDATED) lifeCycle.addCloseable { dpUpdateReceiver.unregisterReceiverSafely() } @@ -121,36 +137,28 @@ constructor( settingsCache.unregister(NOTIFICATION_BADGING_URI, notificationChanges) } + // removable smartspace + if (Flags.enableSmartspaceRemovalToggle()) { + val smartSpacePrefChanges = + SharedPreferences.OnSharedPreferenceChangeListener { _, key -> + if (LoaderTask.SMARTSPACE_ON_HOME_SCREEN == key) model.forceReload() + } + getPrefs(context).registerOnSharedPreferenceChangeListener(smartSpacePrefChanges) + lifeCycle.addCloseable { + getPrefs(context).unregisterOnSharedPreferenceChangeListener(smartSpacePrefChanges) + } + } + // Custom widgets lifeCycle.addCloseable(customWidgetManager.addWidgetRefreshCallback(model::rebindCallbacks)) - // Install session changes - lifeCycle.addCloseable(installSessionHelper.registerInstallTracker(modelCallbacks)) - } - - fun initializeDisplayEvents(model: LauncherModel) { - fun refreshAndReloadLauncher() { - iconPool.clear() - iconCache.updateIconParams(idp.fillResIconDpi, idp.iconBitmapSize) - model.forceReload() - } - - // IDP changes - val idpChangeListener = OnIDPChangeListener { modelChanged -> - if (modelChanged) refreshAndReloadLauncher() - } - idp.addOnChangeListener(idpChangeListener) - lifeCycle.addCloseable { idp.removeOnChangeListener(idpChangeListener) } - - // Theme changes - val themeChangeListener = ThemeChangeListener { refreshAndReloadLauncher() } - themeManager.addChangeListener(themeChangeListener) - lifeCycle.addCloseable { themeManager.removeChangeListener(themeChangeListener) } - // Icon changes lifeCycle.addCloseable( iconProvider.registerIconChangeListener(model::onAppIconChanged, MODEL_EXECUTOR.handler) ) + + // Install session changes + lifeCycle.addCloseable(installSessionHelper.registerInstallTracker(modelCallbacks)) } companion object { diff --git a/src/com/android/launcher3/model/ModelTaskController.kt b/src/com/android/launcher3/model/ModelTaskController.kt index 2675d529d7..95794b8539 100644 --- a/src/com/android/launcher3/model/ModelTaskController.kt +++ b/src/com/android/launcher3/model/ModelTaskController.kt @@ -23,10 +23,11 @@ import com.android.launcher3.celllayout.CellPosMapper import com.android.launcher3.dagger.ApplicationContext import com.android.launcher3.icons.IconCache import com.android.launcher3.model.BgDataModel.FixedContainerItems -import com.android.launcher3.model.data.AppInfo import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.util.Executors.MAIN_EXECUTOR +import com.android.launcher3.util.PackageUserKey import com.android.launcher3.widget.model.WidgetsListBaseEntriesBuilder +import java.util.Objects import java.util.function.Predicate import java.util.stream.Collectors import javax.inject.Inject @@ -63,7 +64,15 @@ constructor( if (workspaceUpdates.isNotEmpty()) { scheduleCallbackTask { it.bindItemsUpdated(workspaceUpdates) } } - dataModel.updateItems(allUpdates.toList(), null) + + // Bind extra items if any + allUpdates + .stream() + .mapToInt { it.container } + .distinct() + .mapToObj { dataModel.extraItems.get(it) } + .filter { Objects.nonNull(it) } + .forEach { bindExtraContainerItems(it) } } fun bindExtraContainerItems(item: FixedContainerItems) { @@ -91,19 +100,14 @@ constructor( fun bindApplicationsIfNeeded() { if (allAppsList.getAndResetChangeFlag()) { - // shallow copy - val data = allAppsList.immutableData - scheduleCallbackTask { - it.bindAllApplications(data.apps, data.flags, data.packageUserKeyToUidMap) - } - } - } - - fun bindIncrementalUpdates(updatedAppInfos: List<AppInfo>) { - if (updatedAppInfos.isNotEmpty()) { - updatedAppInfos.forEach { info -> - scheduleCallbackTask { it.bindIncrementalDownloadProgressUpdated(info) } - } + val apps = allAppsList.copyData() + val flags = allAppsList.flags + val packageUserKeyToUidMap = + apps.associateBy( + keySelector = { PackageUserKey(it.componentName!!.packageName, it.user) }, + valueTransform = { it.uid }, + ) + scheduleCallbackTask { it.bindAllApplications(apps, flags, packageUserKeyToUidMap) } } } } diff --git a/src/com/android/launcher3/model/ModelWriter.java b/src/com/android/launcher3/model/ModelWriter.java index f885daedf9..7b588bbdba 100644 --- a/src/com/android/launcher3/model/ModelWriter.java +++ b/src/com/android/launcher3/model/ModelWriter.java @@ -51,7 +51,6 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Collections; -import java.util.HashSet; import java.util.List; import java.util.function.Predicate; import java.util.function.Supplier; @@ -92,14 +91,15 @@ public class ModelWriter { mUiExecutor = Executors.MAIN_EXECUTOR; } - /** Updates the location properties of the item */ - public void updateItemInfoProps( + private void updateItemInfoProps( ItemInfo item, int container, int screenId, int cellX, int cellY) { CellPos modelPos = mCellPosMapper.mapPresenterToModel(cellX, cellY, screenId, container); + item.container = container; item.cellX = modelPos.cellX; item.cellY = modelPos.cellY; item.screenId = modelPos.screenId; + } /** @@ -178,7 +178,7 @@ public class ModelWriter { public void moveItemsInDatabase(final ArrayList<ItemInfo> items, int container, int screen) { ArrayList<ContentValues> contentValues = new ArrayList<>(); int count = items.size(); - notifyOtherCallbacks(c -> c.bindItemsUpdated(new HashSet<>(items))); + notifyOtherCallbacks(c -> c.bindItemsModified(items)); for (int i = 0; i < count; i++) { ItemInfo item = items.get(i); @@ -230,7 +230,7 @@ public class ModelWriter { } public void notifyItemModified(ItemInfo item) { - notifyOtherCallbacks(c -> c.bindItemsUpdated(Collections.singleton(item))); + notifyOtherCallbacks(c -> c.bindItemsModified(Collections.singletonList(item))); } /** @@ -241,15 +241,9 @@ public class ModelWriter { public void addItemToDatabase(final ItemInfo item, int container, int screenId, int cellX, int cellY) { updateItemInfoProps(item, container, screenId, cellX, cellY); - addItemsToDatabase(Collections.singletonList(item)); - } - /** - * Add provided items to the database. Also assigns an ID to each item. - */ - public void addItemsToDatabase(final List<ItemInfo> items) { - items.forEach(info -> info.id = mModel.getModelDbController().generateNewItemId()); - notifyOtherCallbacks(c -> c.bindItemsAdded(items)); + item.id = mModel.getModelDbController().generateNewItemId(); + notifyOtherCallbacks(c -> c.bindItems(Collections.singletonList(item), false)); ModelVerifier verifier = new ModelVerifier(); final StackTraceElement[] stackTrace = new Throwable().getStackTrace(); @@ -257,18 +251,14 @@ public class ModelWriter { // Write the item on background thread, as some properties might have been // updated in // the background. - for (ItemInfo item: items) { - final ContentWriter writer = new ContentWriter(mContext); - item.onAddToDatabase(writer); - writer.put(Favorites._ID, item.id); - mModel.getModelDbController().insert(writer.getValues(mContext)); - } + final ContentWriter writer = new ContentWriter(mContext); + item.onAddToDatabase(writer); + writer.put(Favorites._ID, item.id); + mModel.getModelDbController().insert(writer.getValues(mContext)); synchronized (mBgDataModel) { - for (ItemInfo item: items) { - checkItemInfoLocked(item.id, item, stackTrace); - } - mBgDataModel.addItems(mContext, items, mOwner); + checkItemInfoLocked(item.id, item, stackTrace); + mBgDataModel.addItem(mContext, item, true); verifier.verifyModel(); } }).executeOnModelThread(); @@ -306,9 +296,9 @@ public class ModelWriter { enqueueDeleteRunnable(newModelTask(() -> { for (ItemInfo item : items) { mModel.getModelDbController().delete(itemIdMatch(item.id), null); + mBgDataModel.removeItem(mContext, item); + verifier.verifyModel(); } - mBgDataModel.removeItem(mContext, items, mOwner); - verifier.verifyModel(); })); } @@ -322,13 +312,12 @@ public class ModelWriter { enqueueDeleteRunnable(newModelTask(() -> { mModel.getModelDbController().delete( Favorites.CONTAINER + "=" + info.id, null); + mBgDataModel.removeItem(mContext, info.getContents()); + info.getContents().clear(); mModel.getModelDbController().delete( Favorites._ID + "=" + info.id, null); - - List<ItemInfo> itemsToDelete = new ArrayList<>(info.getContents()); - itemsToDelete.add(info); - mBgDataModel.removeItem(mContext, itemsToDelete, mOwner); + mBgDataModel.removeItem(mContext, info); verifier.verifyModel(); })); } @@ -434,7 +423,6 @@ public class ModelWriter { mModel.getModelDbController().update( mWriter.get().getValues(mContext), itemIdMatch(mItemId), null); updateItemArrays(mItem, mItemId); - mBgDataModel.updateItems(Collections.singletonList(mItem), mOwner); } } @@ -459,7 +447,6 @@ public class ModelWriter { updateItemArrays(item, itemId); } t.commit(); - mBgDataModel.updateItems(mItems, mOwner); } catch (Exception e) { e.printStackTrace(); } diff --git a/src/com/android/launcher3/model/PackageIncrementalDownloadUpdatedTask.java b/src/com/android/launcher3/model/PackageIncrementalDownloadUpdatedTask.java index 65f62f86fc..f924a9f9c9 100644 --- a/src/com/android/launcher3/model/PackageIncrementalDownloadUpdatedTask.java +++ b/src/com/android/launcher3/model/PackageIncrementalDownloadUpdatedTask.java @@ -20,11 +20,12 @@ import android.os.UserHandle; import androidx.annotation.NonNull; import com.android.launcher3.LauncherModel.ModelUpdateTask; -import com.android.launcher3.model.data.ItemInfo; +import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.ItemInfoWithIcon; +import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.pm.PackageInstallInfo; -import com.android.launcher3.util.FlagOp; +import java.util.ArrayList; import java.util.List; /** @@ -57,21 +58,25 @@ public class PackageIncrementalDownloadUpdatedTask implements ModelUpdateTask { mUser); synchronized (appsList) { - taskController.bindIncrementalUpdates(appsList.updatePromiseInstallInfo( - downloadInfo, - FlagOp.NO_OP.removeFlag(ItemInfoWithIcon.FLAG_INSTALL_SESSION_ACTIVE))); + List<AppInfo> updatedAppInfos = appsList.updatePromiseInstallInfo(downloadInfo); + if (!updatedAppInfos.isEmpty()) { + for (AppInfo appInfo : updatedAppInfos) { + appInfo.runtimeStatusFlags &= ~ItemInfoWithIcon.FLAG_INSTALL_SESSION_ACTIVE; + taskController.scheduleCallbackTask( + c -> c.bindIncrementalDownloadProgressUpdated(appInfo)); + } + } taskController.bindApplicationsIfNeeded(); } - final List<ItemInfo> updatedWorkspaceItems; + final ArrayList<WorkspaceItemInfo> updatedWorkspaceItems = new ArrayList<>(); synchronized (dataModel) { - updatedWorkspaceItems = dataModel.updateAndCollectWorkspaceItemInfos(mUser, si -> { + dataModel.forAllWorkspaceItemInfos(mUser, si -> { if (mPackageName.equals(si.getTargetPackage())) { si.runtimeStatusFlags &= ~ItemInfoWithIcon.FLAG_INSTALL_SESSION_ACTIVE; si.setProgressLevel(downloadInfo); - return true; + updatedWorkspaceItems.add(si); } - return false; }); } taskController.bindUpdatedWorkspaceItems(updatedWorkspaceItems); diff --git a/src/com/android/launcher3/model/PackageInstallStateChangedTask.java b/src/com/android/launcher3/model/PackageInstallStateChangedTask.java index 6e02f4d665..a3561eda4d 100644 --- a/src/com/android/launcher3/model/PackageInstallStateChangedTask.java +++ b/src/com/android/launcher3/model/PackageInstallStateChangedTask.java @@ -15,6 +15,8 @@ */ package com.android.launcher3.model; +import static com.android.launcher3.model.ModelUtils.WIDGET_FILTER; + import android.content.Context; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; @@ -22,11 +24,13 @@ import android.content.pm.PackageManager; import androidx.annotation.NonNull; import com.android.launcher3.LauncherModel.ModelUpdateTask; +import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.ItemInfo; +import com.android.launcher3.model.data.LauncherAppWidgetInfo; import com.android.launcher3.pm.PackageInstallInfo; -import com.android.launcher3.util.FlagOp; import com.android.launcher3.util.InstantAppResolver; +import java.util.HashSet; import java.util.List; /** @@ -63,30 +67,37 @@ public class PackageInstallStateChangedTask implements ModelUpdateTask { } synchronized (apps) { - taskController.bindIncrementalUpdates( - apps.updatePromiseInstallInfo(mInstallInfo, FlagOp.NO_OP)); + List<AppInfo> updatedAppInfos = apps.updatePromiseInstallInfo(mInstallInfo); + if (!updatedAppInfos.isEmpty()) { + for (AppInfo appInfo : updatedAppInfos) { + taskController.scheduleCallbackTask( + c -> c.bindIncrementalDownloadProgressUpdated(appInfo)); + } + } taskController.bindApplicationsIfNeeded(); } synchronized (dataModel) { - final List<ItemInfo> updates = dataModel.updateAndCollectWorkspaceItemInfos( - mInstallInfo.user, - si -> { - if (si.hasPromiseIconUi() - && mInstallInfo.packageName.equals(si.getTargetPackage())) { - si.setProgressLevel(mInstallInfo); - return true; - } - return false; - }, - widget -> { - if (widget.providerName.getPackageName() - .equals(mInstallInfo.packageName)) { - widget.installProgress = mInstallInfo.progress; - return true; - } - return false; + final HashSet<ItemInfo> updates = new HashSet<>(); + dataModel.forAllWorkspaceItemInfos(mInstallInfo.user, si -> { + if (si.hasPromiseIconUi() + && mInstallInfo.packageName.equals(si.getTargetPackage())) { + si.setProgressLevel(mInstallInfo); + updates.add(si); + } + }); + + dataModel.itemsIdMap.stream() + .filter(WIDGET_FILTER) + .filter(item -> mInstallInfo.user.equals(item.user)) + .map(item -> (LauncherAppWidgetInfo) item) + .filter(widget -> widget.providerName.getPackageName() + .equals(mInstallInfo.packageName)) + .forEach(widget -> { + widget.installProgress = mInstallInfo.progress; + updates.add(widget); }); + if (!updates.isEmpty()) { taskController.bindUpdatedWorkspaceItems(updates); } diff --git a/src/com/android/launcher3/model/PackageUpdatedTask.java b/src/com/android/launcher3/model/PackageUpdatedTask.java index 0381214a3a..467e6aaf22 100644 --- a/src/com/android/launcher3/model/PackageUpdatedTask.java +++ b/src/com/android/launcher3/model/PackageUpdatedTask.java @@ -16,9 +16,10 @@ package com.android.launcher3.model; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; -import static com.android.launcher3.model.data.AppsListData.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED; -import static com.android.launcher3.model.data.AppsListData.FLAG_QUIET_MODE_ENABLED; -import static com.android.launcher3.model.data.AppsListData.FLAG_WORK_PROFILE_QUIET_MODE_ENABLED; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_QUIET_MODE_ENABLED; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_WORK_PROFILE_QUIET_MODE_ENABLED; +import static com.android.launcher3.model.ModelUtils.WIDGET_FILTER; import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_ARCHIVED; import static com.android.launcher3.model.data.LauncherAppWidgetInfo.FLAG_PROVIDER_NOT_READY; import static com.android.launcher3.model.data.WorkspaceItemInfo.FLAG_AUTOINSTALL_ICON; @@ -59,6 +60,7 @@ import com.android.launcher3.util.PackageManagerHelper; import com.android.launcher3.util.PackageUserKey; import com.android.launcher3.util.SafeCloseable; +import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.HashMap; @@ -237,12 +239,12 @@ public class PackageUpdatedTask implements ModelUpdateTask { // Update shortcut infos if (mOp == OP_ADD || flagOp != FlagOp.NO_OP) { - final List<ItemInfo> updatedItems; + final ArrayList<ItemInfo> updatedWorkspaceItems = new ArrayList<>(); // For system apps, package manager send OP_UPDATE when an app is enabled. final boolean isNewApkAvailable = mOp == OP_ADD || mOp == OP_UPDATE; synchronized (dataModel) { - updatedItems = dataModel.updateAndCollectWorkspaceItemInfos(mUser, itemInfo -> { + dataModel.forAllWorkspaceItemInfos(mUser, itemInfo -> { boolean infoUpdated = false; boolean shortcutUpdated = false; @@ -254,7 +256,7 @@ public class PackageUpdatedTask implements ModelUpdateTask { if (itemInfo.hasStatusFlag(WorkspaceItemInfo.FLAG_SUPPORTS_WEB_UI)) { forceKeepShortcuts.add(itemInfo.id); if (mOp == OP_REMOVE) { - return false; + return; } } @@ -311,7 +313,7 @@ public class PackageUpdatedTask implements ModelUpdateTask { + ", status=" + itemInfo.status + ", isArchived=" + itemInfo.isArchived()); } - return false; + return; } } else if (!isTargetValid) { removedShortcuts.add(itemInfo.id); @@ -322,7 +324,7 @@ public class PackageUpdatedTask implements ModelUpdateTask { + " package=" + itemInfo.getTargetPackage() + " status=" + itemInfo.status); } - return false; + return; } else { itemInfo.status = WorkspaceItemInfo.DEFAULT; infoUpdated = true; @@ -377,30 +379,36 @@ public class PackageUpdatedTask implements ModelUpdateTask { } } + if (infoUpdated || shortcutUpdated) { + updatedWorkspaceItems.add(itemInfo); + } if (infoUpdated && itemInfo.id != ItemInfo.NO_ID) { taskController.getModelWriter().updateItemInDatabase(itemInfo); } - return infoUpdated || shortcutUpdated; - }, widget -> { - if (widget.hasRestoreFlag(FLAG_PROVIDER_NOT_READY) - && packageSet.contains(widget.providerName.getPackageName())) { - widget.restoreStatus &= - ~FLAG_PROVIDER_NOT_READY - & ~LauncherAppWidgetInfo.FLAG_RESTORE_STARTED; - - // adding this flag ensures that launcher shows 'click to setup' - // if the widget has a config activity. In case there is no config - // activity, it will be marked as 'restored' during bind. - widget.restoreStatus |= LauncherAppWidgetInfo.FLAG_UI_NOT_READY; - widget.installProgress = 100; - taskController.getModelWriter().updateItemInDatabase(widget); - return true; - } - return false; }); + + dataModel.itemsIdMap.stream() + .filter(WIDGET_FILTER) + .filter(item -> mUser.equals(item.user)) + .map(item -> (LauncherAppWidgetInfo) item) + .filter(widget -> widget.hasRestoreFlag(FLAG_PROVIDER_NOT_READY) + && packageSet.contains(widget.providerName.getPackageName())) + .forEach(widgetInfo -> { + widgetInfo.restoreStatus &= + ~FLAG_PROVIDER_NOT_READY + & ~LauncherAppWidgetInfo.FLAG_RESTORE_STARTED; + + // adding this flag ensures that launcher shows 'click to setup' + // if the widget has a config activity. In case there is no config + // activity, it will be marked as 'restored' during bind. + widgetInfo.restoreStatus |= LauncherAppWidgetInfo.FLAG_UI_NOT_READY; + widgetInfo.installProgress = 100; + updatedWorkspaceItems.add(widgetInfo); + taskController.getModelWriter().updateItemInDatabase(widgetInfo); + }); } - taskController.bindUpdatedWorkspaceItems(updatedItems); + taskController.bindUpdatedWorkspaceItems(updatedWorkspaceItems); if (!removedShortcuts.isEmpty()) { taskController.deleteAndBindComponentsRemoved( ItemInfoMatcher.ofItemIds(removedShortcuts), diff --git a/src/com/android/launcher3/model/ReloadStringCacheTask.java b/src/com/android/launcher3/model/ReloadStringCacheTask.java index 0dd5bd86bf..3d974d6569 100644 --- a/src/com/android/launcher3/model/ReloadStringCacheTask.java +++ b/src/com/android/launcher3/model/ReloadStringCacheTask.java @@ -25,11 +25,18 @@ import com.android.launcher3.LauncherModel.ModelUpdateTask; */ public class ReloadStringCacheTask implements ModelUpdateTask { + @NonNull + private ModelDelegate mModelDelegate; + + public ReloadStringCacheTask(@NonNull final ModelDelegate modelDelegate) { + mModelDelegate = modelDelegate; + } + @Override public void execute(@NonNull ModelTaskController taskController, @NonNull BgDataModel dataModel, @NonNull AllAppsList apps) { synchronized (dataModel) { - dataModel.stringCache.loadStrings(taskController.getContext()); + mModelDelegate.loadStringCache(dataModel.stringCache); StringCache cloneSC = dataModel.stringCache.clone(); taskController.scheduleCallbackTask(c -> c.bindStringCache(cloneSC)); } diff --git a/src/com/android/launcher3/model/SessionFailureTask.kt b/src/com/android/launcher3/model/SessionFailureTask.kt index 6f34c04897..6ed5178ed7 100644 --- a/src/com/android/launcher3/model/SessionFailureTask.kt +++ b/src/com/android/launcher3/model/SessionFailureTask.kt @@ -38,23 +38,21 @@ class SessionFailureTask(val packageName: String, val user: UserHandle) : ModelU ApplicationInfoWrapper(taskController.context, packageName, user).isArchived() synchronized(dataModel) { if (isAppArchived) { + val updatedItems = mutableListOf<WorkspaceItemInfo>() // Remove package icon cache entry for archived app in case of a session // failure. iconCache.remove( ComponentName(packageName, packageName + BaseIconCache.EMPTY_CLASS_NAME), user, ) - val updatedItems = - dataModel.updateAndCollectWorkspaceItemInfos( - user, - { info -> - if (info.isArchived) { - // Refresh icons on the workspace for archived apps. - iconCache.getTitleAndIcon(info, info.matchingLookupFlag) - true - } else false - }, - ) + for (info in dataModel.itemsIdMap) { + if (info is WorkspaceItemInfo && info.isArchived && user == info.user) { + // Refresh icons on the workspace for archived apps. + iconCache.getTitleAndIcon(info, info.matchingLookupFlag) + updatedItems.add(info) + } + } + if (updatedItems.isNotEmpty()) { taskController.bindUpdatedWorkspaceItems(updatedItems) } diff --git a/src/com/android/launcher3/model/ShortcutsChangedTask.kt b/src/com/android/launcher3/model/ShortcutsChangedTask.kt index 42e4e04231..d6759e2d21 100644 --- a/src/com/android/launcher3/model/ShortcutsChangedTask.kt +++ b/src/com/android/launcher3/model/ShortcutsChangedTask.kt @@ -21,7 +21,6 @@ import com.android.launcher3.Flags import com.android.launcher3.LauncherModel.ModelUpdateTask import com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT import com.android.launcher3.icons.CacheableShortcutInfo -import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.shortcuts.ShortcutKey import com.android.launcher3.shortcuts.ShortcutRequest @@ -42,25 +41,21 @@ class ShortcutsChangedTask( apps: AllAppsList, ) { val context = taskController.context - val itemFilter: (WorkspaceItemInfo) -> Boolean = { - it.itemType == ITEM_TYPE_DEEP_SHORTCUT && packageName == it.targetPackage - } - // Find WorkspaceItemInfo's that have changed on the workspace. - val matchingShortcutIds = mutableSetOf<String>() - synchronized(dataModel) { - dataModel.updateAndCollectWorkspaceItemInfos( - user, - { - if (itemFilter.invoke(it)) matchingShortcutIds.add(it.deepShortcutId) + val matchingWorkspaceItems = ArrayList<WorkspaceItemInfo>() - // We don't care about the returned list - false - }, - ) + synchronized(dataModel) { + dataModel.forAllWorkspaceItemInfos(user) { wai: WorkspaceItemInfo -> + if ( + (wai.itemType == ITEM_TYPE_DEEP_SHORTCUT) && + packageName == wai.getIntent().getPackage() + ) { + matchingWorkspaceItems.add(wai) + } + } } - if (matchingShortcutIds.isNotEmpty()) { + if (matchingWorkspaceItems.isNotEmpty()) { val infoWrapper = ApplicationInfoWrapper(context, packageName, user) if (shortcuts.isEmpty()) { // Verify that the app is indeed installed. @@ -73,45 +68,40 @@ class ShortcutsChangedTask( } } // Update the workspace to reflect the changes to updated shortcuts residing on it. - val pinnedShortcuts: Map<String, ShortcutInfo> = + val allLauncherKnownIds = + matchingWorkspaceItems.map { item -> item.deepShortcutId }.distinct() + val shortcuts: List<ShortcutInfo> = ShortcutRequest(context, user) - .forPackage(packageName, matchingShortcutIds.filterNotNullTo(mutableListOf())) + .forPackage(packageName, allLauncherKnownIds) .query(ShortcutRequest.ALL) - .associateBy { it.id } - val nonPinnedIds = matchingShortcutIds.toMutableSet() - val updatedWorkspaceItemInfos: List<ItemInfo> - synchronized(dataModel) { - updatedWorkspaceItemInfos = - dataModel.updateAndCollectWorkspaceItemInfos( - user, - { - if (!itemFilter.invoke(it)) - return@updateAndCollectWorkspaceItemInfos false - val shortcutId = - it.deepShortcutId ?: return@updateAndCollectWorkspaceItemInfos false - val fullDetails = - pinnedShortcuts[shortcutId] - ?: return@updateAndCollectWorkspaceItemInfos false - if (!fullDetails.isPinned && !Flags.restoreArchivedShortcuts()) - return@updateAndCollectWorkspaceItemInfos false - - nonPinnedIds.remove(shortcutId) - it.updateFromDeepShortcutInfo(fullDetails, context) - taskController.iconCache.getShortcutIcon( - it, - CacheableShortcutInfo(fullDetails, infoWrapper), - ) - true - }, - ) + val nonPinnedIds: MutableSet<String> = HashSet(allLauncherKnownIds) + val updatedWorkspaceItemInfos = ArrayList<WorkspaceItemInfo>() + for (fullDetails in shortcuts) { + if (!fullDetails.isPinned && !Flags.restoreArchivedShortcuts()) { + continue + } + val shortcutId = fullDetails.id + nonPinnedIds.remove(shortcutId) + matchingWorkspaceItems + .filter { itemInfo: WorkspaceItemInfo -> shortcutId == itemInfo.deepShortcutId } + .forEach { workspaceItemInfo: WorkspaceItemInfo -> + workspaceItemInfo.updateFromDeepShortcutInfo(fullDetails, context) + taskController.iconCache.getShortcutIcon( + workspaceItemInfo, + CacheableShortcutInfo(fullDetails, infoWrapper), + ) + updatedWorkspaceItemInfos.add(workspaceItemInfo) + } } taskController.bindUpdatedWorkspaceItems(updatedWorkspaceItemInfos) if (nonPinnedIds.isNotEmpty()) { taskController.deleteAndBindComponentsRemoved( ItemInfoMatcher.ofShortcutKeys( - nonPinnedIds.mapTo(mutableSetOf()) { ShortcutKey(packageName, user, it) } + nonPinnedIds + .map { id: String? -> ShortcutKey(packageName, user, id) } + .toSet() ), "removed because the shortcut is no longer available in shortcut service", ) diff --git a/src/com/android/launcher3/model/UserLockStateChangedTask.java b/src/com/android/launcher3/model/UserLockStateChangedTask.java index e338b4a6da..8b12115273 100644 --- a/src/com/android/launcher3/model/UserLockStateChangedTask.java +++ b/src/com/android/launcher3/model/UserLockStateChangedTask.java @@ -26,17 +26,17 @@ import androidx.annotation.NonNull; import com.android.launcher3.LauncherModel.ModelUpdateTask; import com.android.launcher3.LauncherSettings; -import com.android.launcher3.model.data.ItemInfo; +import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.shortcuts.ShortcutKey; import com.android.launcher3.shortcuts.ShortcutRequest; import com.android.launcher3.shortcuts.ShortcutRequest.QueryResult; import com.android.launcher3.util.ComponentKey; import com.android.launcher3.util.ItemInfoMatcher; +import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; -import java.util.List; /** * Task to handle changing of lock state of the user @@ -74,11 +74,11 @@ public class UserLockStateChangedTask implements ModelUpdateTask { } // Update the workspace to reflect the changes to updated shortcuts residing on it. - List<ItemInfo> updatedItemInfos; + ArrayList<WorkspaceItemInfo> updatedWorkspaceItemInfos = new ArrayList<>(); HashSet<ShortcutKey> removedKeys = new HashSet<>(); synchronized (dataModel) { - updatedItemInfos = dataModel.updateAndCollectWorkspaceItemInfos(mUser, si -> { + dataModel.forAllWorkspaceItemInfos(mUser, si -> { if (si.itemType == LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT) { if (mIsUserUnlocked) { ShortcutKey key = ShortcutKey.fromItemInfo(si); @@ -87,7 +87,7 @@ public class UserLockStateChangedTask implements ModelUpdateTask { // (probably due to clear data), delete the workspace item as well if (shortcut == null) { removedKeys.add(key); - return false; + return; } si.runtimeStatusFlags &= ~FLAG_DISABLED_LOCKED_USER; si.updateFromDeepShortcutInfo(shortcut, context); @@ -95,12 +95,11 @@ public class UserLockStateChangedTask implements ModelUpdateTask { } else { si.runtimeStatusFlags |= FLAG_DISABLED_LOCKED_USER; } - return true; + updatedWorkspaceItemInfos.add(si); } - return false; }); } - taskController.bindUpdatedWorkspaceItems(updatedItemInfos); + taskController.bindUpdatedWorkspaceItems(updatedWorkspaceItemInfos); if (!removedKeys.isEmpty()) { taskController.deleteAndBindComponentsRemoved( ItemInfoMatcher.ofShortcutKeys(removedKeys), diff --git a/src/com/android/launcher3/model/WorkspaceItemProcessor.kt b/src/com/android/launcher3/model/WorkspaceItemProcessor.kt index 125aa78712..7c22fbaee7 100644 --- a/src/com/android/launcher3/model/WorkspaceItemProcessor.kt +++ b/src/com/android/launcher3/model/WorkspaceItemProcessor.kt @@ -16,6 +16,7 @@ package com.android.launcher3.model import android.annotation.SuppressLint +import android.appwidget.AppWidgetProviderInfo import android.content.ComponentName import android.content.Context import android.content.Intent @@ -27,13 +28,10 @@ import android.graphics.Point import android.text.TextUtils import android.util.Log import android.util.LongSparseArray -import android.util.SparseArray import com.android.launcher3.Flags import com.android.launcher3.InvariantDeviceProfile import com.android.launcher3.LauncherSettings.Favorites import com.android.launcher3.backuprestore.LauncherRestoreEventLogger.RestoreError -import com.android.launcher3.folder.Folder -import com.android.launcher3.folder.FolderGridOrganizer.createFolderGridOrganizer import com.android.launcher3.Utilities import com.android.launcher3.icons.CacheableShortcutInfo import com.android.launcher3.icons.IconCache @@ -43,7 +41,6 @@ import com.android.launcher3.model.data.AppInfo import com.android.launcher3.model.data.AppPairInfo import com.android.launcher3.model.data.FolderInfo import com.android.launcher3.model.data.IconRequestInfo -import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.model.data.ItemInfoWithIcon import com.android.launcher3.model.data.LauncherAppWidgetInfo import com.android.launcher3.model.data.WorkspaceItemInfo @@ -53,8 +50,7 @@ import com.android.launcher3.shortcuts.ShortcutKey import com.android.launcher3.shortcuts.ShortcutRequest import com.android.launcher3.util.ApiWrapper import com.android.launcher3.util.ApplicationInfoWrapper -import com.android.launcher3.util.IntArray -import com.android.launcher3.util.IntSparseArrayMap +import com.android.launcher3.util.ComponentKey import com.android.launcher3.util.PackageManagerHelper import com.android.launcher3.util.PackageUserKey import com.android.launcher3.widget.LauncherAppWidgetProviderInfo @@ -80,6 +76,8 @@ class WorkspaceItemProcessor( private val idp: InvariantDeviceProfile, private val iconCache: IconCache, private val isSafeMode: Boolean, + private val bgDataModel: BgDataModel, + private val widgetProvidersMap: MutableMap<ComponentKey, AppWidgetProviderInfo?>, private val installingPkgs: HashMap<PackageUserKey, PackageInstaller.SessionInfo>, private val isSdCardReady: Boolean, private val widgetInflater: WidgetInflater, @@ -89,8 +87,6 @@ class WorkspaceItemProcessor( private val allDeepShortcuts: MutableList<CacheableShortcutInfo>, ) { - private val loadedItems = IntSparseArrayMap<ItemInfo>() - private val tempPackageKey = PackageUserKey(null, null) /** @@ -174,14 +170,7 @@ class WorkspaceItemProcessor( // If the apk is present and the shortcut points to a specific component. // If the component is already present - val isActivityEnabled = - try { - launcherApps.isActivityEnabled(cn, c.user) - } catch (exception: Exception) { - FileLog.w(TAG, "Error checking activity enabled for component:$cn", exception) - false - } - if (isActivityEnabled) { + if (launcherApps.isActivityEnabled(cn, c.user)) { // no special handling necessary for this item c.markRestored() } else { @@ -414,7 +403,7 @@ class WorkspaceItemProcessor( } catch (t: Throwable) { Log.e(TAG, "Error loading icon", t) } - c.checkAndAddItem(info, loadedItems, memoryLogger) + c.checkAndAddItem(info, bgDataModel, memoryLogger) } else { throw RuntimeException("Unexpected null WorkspaceItemInfo") } @@ -446,7 +435,7 @@ class WorkspaceItemProcessor( * stored in the BgDataModel. */ private fun processFolderOrAppPair() { - var collection = c.findOrMakeFolder(c.id, loadedItems) + var collection = c.findOrMakeFolder(c.id, bgDataModel) // If we generated a placeholder Folder before this point, it may need to be replaced with // an app pair. if (c.itemType == Favorites.ITEM_TYPE_APP_PAIR && collection is FolderInfo) { @@ -469,7 +458,7 @@ class WorkspaceItemProcessor( } c.markRestored() - c.checkAndAddItem(collection, loadedItems, memoryLogger) + c.checkAndAddItem(collection, bgDataModel, memoryLogger) } /** @@ -600,6 +589,7 @@ class WorkspaceItemProcessor( .commit() } if (lapi != null) { + widgetProvidersMap[ComponentKey(lapi.provider, lapi.user)] = inflationResult.widgetInfo if (appWidgetInfo.spanX < lapi.minSpanX || appWidgetInfo.spanY < lapi.minSpanY) { FileLog.d( TAG, @@ -611,75 +601,7 @@ class WorkspaceItemProcessor( logWidgetInfo(idp, lapi) } } - c.checkAndAddItem(appWidgetInfo, loadedItems, memoryLogger) - } - - /** - * After all items have been processed and added to the BgDataModel, this method can correctly - * rank items inside folders and load the correct miniature preview icons to be shown when the - * folder is collapsed. - */ - private fun processFolderItems() { - // Sort the folder items, update ranks, and make sure all preview items are high res. - val verifiers = idp.supportedProfiles.map { createFolderGridOrganizer(it) } - for (itemInfo in loadedItems) { - if (itemInfo !is FolderInfo) { - continue - } - - itemInfo.getContents().sortWith(Folder.ITEM_POS_COMPARATOR) - verifiers.forEach { it.setFolderInfo(itemInfo) } - - // Update ranks here to ensure there are no gaps caused by removed folder items. - // Ranks are the source of truth for folder items, so cellX and cellY can be - // ignored for now. Database will be updated once user manually modifies folder. - itemInfo.getContents().forEachIndexed { rank, info -> - info.rank = rank - if ( - info is WorkspaceItemInfo && - info.matchingLookupFlag.isVisuallyLessThan(Favorites.DESKTOP_ICON_FLAG) && - info.itemType == Favorites.ITEM_TYPE_APPLICATION && - verifiers.any { it.isItemInPreview(info.rank) } - ) { - iconCache.getTitleAndIcon(info, Favorites.DESKTOP_ICON_FLAG) - } - } - } - } - - private fun removeItems(ids: IntArray?) = ids?.forEach { loadedItems.remove(it) } - - /** - * Applies any queued update data update tasks and data sanity checks and returns the final set - * of workspace data. This includes: - * 1) Loading any additional model data, not coming from the DB - * 2) Sanity checks on folder and app pair: removing empty and single item folders, and sorting - * contents - * 3) Committing any persistent modifications and deletions to the storage - */ - fun finalizeData( - delegate: ModelDelegate, - modelDbController: ModelDbController, - ): SparseArray<ItemInfo> { - delegate.loadAndAddExtraModelItems(loadedItems) - delegate.markActive() - - // Remove dead items - val itemsDeleted = c.commitDeleted() - - processFolderItems() - // After all items have been processed and added to the BgDataModel, this method - // requests high-res icons for the items that are part of an app pair. - loadedItems.forEach { if (it is AppPairInfo) it.fetchHiResIconsIfNeeded(iconCache) } - c.commitRestoredItems() - if (itemsDeleted) { - // Remove any empty folder - removeItems(modelDbController.deleteEmptyFolders()) - } - // Cleans up app pairs if they don't have the right number of member apps (2). - removeItems(modelDbController.deleteBadAppPairs()) - removeItems(modelDbController.deleteUnparentedApps()) - return loadedItems + c.checkAndAddItem(appWidgetInfo, bgDataModel, memoryLogger) } companion object { @@ -694,8 +616,8 @@ class WorkspaceItemProcessor( deviceProfile.getCellSize(cellSize) FileLog.d( TAG, - "DeviceProfile available width: ${deviceProfile.deviceProperties.availableWidthPx}," + - " available height: ${deviceProfile.deviceProperties.availableHeightPx}," + + "DeviceProfile available width: ${deviceProfile.availableWidthPx}," + + " available height: ${deviceProfile.availableHeightPx}," + " cellLayoutBorderSpacePx Horizontal: ${deviceProfile.cellLayoutBorderSpacePx.x}," + " cellLayoutBorderSpacePx Vertical: ${deviceProfile.cellLayoutBorderSpacePx.y}," + " cellSize: $cellSize", diff --git a/src/com/android/launcher3/model/WorkspaceItemSpaceFinder.java b/src/com/android/launcher3/model/WorkspaceItemSpaceFinder.java index 4549c6b7e7..612b63e649 100644 --- a/src/com/android/launcher3/model/WorkspaceItemSpaceFinder.java +++ b/src/com/android/launcher3/model/WorkspaceItemSpaceFinder.java @@ -15,15 +15,15 @@ */ package com.android.launcher3.model; +import static com.android.launcher3.Utilities.SHOULD_SHOW_FIRST_PAGE_WIDGET; import static com.android.launcher3.WorkspaceLayoutManager.FIRST_SCREEN_ID; import android.util.LongSparseArray; -import com.android.launcher3.BuildConfig; -import com.android.launcher3.BuildConfigs; import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.LauncherModel; import com.android.launcher3.LauncherSettings; +import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.util.GridOccupancy; import com.android.launcher3.util.IntArray; @@ -55,8 +55,8 @@ public class WorkspaceItemSpaceFinder { * * @return screenId and the coordinates for the item in an int array of size 3. */ - public int[] findSpaceForItem(IntArray workspaceScreens, IntArray addedWorkspaceScreensFinal, - ArrayList<ItemInfo> addItemsFinal, int spanX, int spanY) { + public int[] findSpaceForItem( + IntArray workspaceScreens, IntArray addedWorkspaceScreensFinal, int spanX, int spanY) { LongSparseArray<ArrayList<ItemInfo>> screenItems = new LongSparseArray<>(); // Use sBgItemsIdMap as all the items are already loaded. @@ -73,18 +73,6 @@ public class WorkspaceItemSpaceFinder { } } - // Add items that are due to be added to the database from AddWorkspaceItemsTask#execute. - for (ItemInfo info : addItemsFinal) { - if (info.container == LauncherSettings.Favorites.CONTAINER_DESKTOP) { - ArrayList<ItemInfo> items = screenItems.get(info.screenId); - if (items == null) { - items = new ArrayList<>(); - screenItems.put(info.screenId, items); - } - items.add(info); - } - } - // Find appropriate space for the item. int screenId = 0; int[] coordinates = new int[2]; @@ -93,7 +81,7 @@ public class WorkspaceItemSpaceFinder { int screenCount = workspaceScreens.size(); // First check the preferred screen. IntSet screensToExclude = new IntSet(); - if (BuildConfigs.QSB_ON_FIRST_SCREEN) { + if (FeatureFlags.QSB_ON_FIRST_SCREEN) { screensToExclude.add(FIRST_SCREEN_ID); } @@ -121,7 +109,7 @@ public class WorkspaceItemSpaceFinder { throw new RuntimeException("Can't find space to add the item"); } } - return new int[]{screenId, coordinates[0], coordinates[1]}; + return new int[] { screenId, coordinates[0], coordinates[1] }; } private boolean findNextAvailableIconSpaceInScreen( diff --git a/src/com/android/launcher3/model/data/AppPairInfo.kt b/src/com/android/launcher3/model/data/AppPairInfo.kt index 486b9958ea..c0fe4fded8 100644 --- a/src/com/android/launcher3/model/data/AppPairInfo.kt +++ b/src/com/android/launcher3/model/data/AppPairInfo.kt @@ -23,10 +23,11 @@ import com.android.launcher3.R import com.android.launcher3.icons.IconCache import com.android.launcher3.logger.LauncherAtom import com.android.launcher3.views.ActivityContext +import java.util.stream.Collectors /** A type of app collection that launches multiple apps into split screen. */ class AppPairInfo() : CollectionInfo() { - private var contents = mutableListOf<WorkspaceItemInfo>() + private var contents: ArrayList<WorkspaceItemInfo> = ArrayList() init { itemType = LauncherSettings.Favorites.ITEM_TYPE_APP_PAIR @@ -39,7 +40,7 @@ class AppPairInfo() : CollectionInfo() { /** Creates a new AppPairInfo that is a copy of the provided one. */ constructor(appPairInfo: AppPairInfo) : this() { - contents = appPairInfo.contents.toMutableList() + contents = appPairInfo.contents.clone() as ArrayList<WorkspaceItemInfo> copyFrom(appPairInfo) } @@ -53,10 +54,11 @@ class AppPairInfo() : CollectionInfo() { } /** Returns the app pair's member apps as an ArrayList of [ItemInfo]. */ - override fun getContents(): List<ItemInfo> = contents.map { it } + override fun getContents(): ArrayList<ItemInfo> = + ArrayList(contents.stream().map { it as ItemInfo }.collect(Collectors.toList())) /** Returns the app pair's member apps as an ArrayList of [WorkspaceItemInfo]. */ - override fun getAppContents(): List<WorkspaceItemInfo> = contents + override fun getAppContents(): ArrayList<WorkspaceItemInfo> = contents /** Returns the first app in the pair. */ fun getFirstApp() = contents[0] @@ -70,10 +72,7 @@ class AppPairInfo() : CollectionInfo() { /** Checks if member apps are launchable at the current screen size. */ fun isLaunchable(context: Context): Pair<Boolean, Boolean> { val isTablet = - (ActivityContext.lookupContext(context) as ActivityContext) - .getDeviceProfile() - .deviceProperties - .isTablet + (ActivityContext.lookupContext(context) as ActivityContext).getDeviceProfile().isTablet return Pair( isTablet || !getFirstApp().isNonResizeable, isTablet || !getSecondApp().isNonResizeable, @@ -83,8 +82,9 @@ class AppPairInfo() : CollectionInfo() { /** Fetches high-res icons for member apps if needed. */ fun fetchHiResIconsIfNeeded(iconCache: IconCache) { getAppContents() + .stream() .filter { it.matchingLookupFlag.isVisuallyLessThan(DESKTOP_ICON_FLAG) } - .forEach { iconCache.getTitleAndIcon(it, DESKTOP_ICON_FLAG) } + .forEach { member -> iconCache.getTitleAndIcon(member, DESKTOP_ICON_FLAG) } } /** diff --git a/src/com/android/launcher3/model/data/CollectionInfo.kt b/src/com/android/launcher3/model/data/CollectionInfo.kt index 0b42587e47..12ba164713 100644 --- a/src/com/android/launcher3/model/data/CollectionInfo.kt +++ b/src/com/android/launcher3/model/data/CollectionInfo.kt @@ -25,17 +25,17 @@ abstract class CollectionInfo : ItemInfo() { abstract fun add(item: ItemInfo) /** Returns the collection's contents as an ArrayList of [ItemInfo]. */ - abstract fun getContents(): List<ItemInfo> + abstract fun getContents(): ArrayList<ItemInfo> /** * Returns the collection's contents as an ArrayList of [WorkspaceItemInfo]. Does not include * other collection [ItemInfo]s that are inside this collection; rather, it should collect * *their* contents and adds them to the ArrayList. */ - abstract fun getAppContents(): List<WorkspaceItemInfo> + abstract fun getAppContents(): ArrayList<WorkspaceItemInfo> /** Convenience function. Checks contents to see if any match a given predicate. */ - fun anyMatch(matcher: Predicate<ItemInfo>) = getContents().any { matcher.test(it) } + fun anyMatch(matcher: Predicate<ItemInfo>) = getContents().stream().anyMatch(matcher) override fun onAddToDatabase(writer: ContentWriter) { super.onAddToDatabase(writer) diff --git a/src/com/android/launcher3/model/data/IconRequestInfo.java b/src/com/android/launcher3/model/data/IconRequestInfo.java index fbb042a38e..42af018b61 100644 --- a/src/com/android/launcher3/model/data/IconRequestInfo.java +++ b/src/com/android/launcher3/model/data/IconRequestInfo.java @@ -25,7 +25,6 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.launcher3.icons.LauncherIcons; -import com.android.launcher3.icons.cache.CacheLookupFlag; /** * Class representing one request for an icon to be queried in a sql database. @@ -40,28 +39,28 @@ public class IconRequestInfo<T extends ItemInfoWithIcon> { @NonNull public final T itemInfo; @Nullable public final LauncherActivityInfo launcherActivityInfo; @Nullable public final byte[] iconBlob; - public final CacheLookupFlag lookupFlag; + public final boolean useLowResIcon; public IconRequestInfo( @NonNull T itemInfo, @Nullable LauncherActivityInfo launcherActivityInfo, - CacheLookupFlag lookupFlag) { + boolean useLowResIcon) { this( itemInfo, launcherActivityInfo, /* iconBlob= */ null, - lookupFlag); + useLowResIcon); } public IconRequestInfo( @NonNull T itemInfo, @Nullable LauncherActivityInfo launcherActivityInfo, @Nullable byte[] iconBlob, - CacheLookupFlag lookupFlag) { + boolean useLowResIcon) { this.itemInfo = itemInfo; this.launcherActivityInfo = launcherActivityInfo; this.iconBlob = iconBlob; - this.lookupFlag = lookupFlag; + this.useLowResIcon = useLowResIcon; } /** diff --git a/src/com/android/launcher3/model/data/ItemInfo.java b/src/com/android/launcher3/model/data/ItemInfo.java index 8b2ef60bd1..3a56fd73ee 100644 --- a/src/com/android/launcher3/model/data/ItemInfo.java +++ b/src/com/android/launcher3/model/data/ItemInfo.java @@ -20,7 +20,7 @@ import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APP import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT_PREDICTION; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APPS_PREDICTION; +import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_PREDICTION; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_SETTINGS; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_SHORTCUTS; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_TASKSWITCHER; @@ -333,8 +333,7 @@ public class ItemInfo { * Returns if an Item is a predicted item */ public boolean isPredictedItem() { - return container == CONTAINER_HOTSEAT_PREDICTION - || container == CONTAINER_ALL_APPS_PREDICTION; + return container == CONTAINER_HOTSEAT_PREDICTION || container == CONTAINER_PREDICTION; } /** @@ -481,7 +480,7 @@ public class ItemInfo { .setWidgetsContainer( LauncherAtom.WidgetsContainer.getDefaultInstance()) .build(); - case CONTAINER_ALL_APPS_PREDICTION: + case CONTAINER_PREDICTION: return ContainerInfo.newBuilder() .setPredictionContainer(PredictionContainer.getDefaultInstance()) .build(); diff --git a/src/com/android/launcher3/model/data/ItemInfoWithIcon.java b/src/com/android/launcher3/model/data/ItemInfoWithIcon.java index b60ae254d3..3a72d22ccb 100644 --- a/src/com/android/launcher3/model/data/ItemInfoWithIcon.java +++ b/src/com/android/launcher3/model/data/ItemInfoWithIcon.java @@ -322,7 +322,8 @@ public abstract class ItemInfoWithIcon extends ItemInfo { * Returns a FastBitmapDrawable with the icon. */ public FastBitmapDrawable newIcon(Context context) { - return newIcon(context, 0); + var shouldTheme = PreferenceManager.getInstance(context).getThemedIcons().get(); + return newIcon(context, shouldTheme ? FLAG_THEMED : FLAG_NO_BADGE); } /** @@ -335,7 +336,7 @@ public abstract class ItemInfoWithIcon extends ItemInfo { } FastBitmapDrawable drawable = bitmap.newIcon( context, creationFlags, Utilities.getIconShapeOrNull(context)); - drawable.setDisabled(isDisabled()); + drawable.setIsDisabled(isDisabled()); return drawable; } diff --git a/src/com/android/launcher3/pageindicators/PageIndicator.java b/src/com/android/launcher3/pageindicators/PageIndicator.java index 0640bf3672..a6f76c4d44 100644 --- a/src/com/android/launcher3/pageindicators/PageIndicator.java +++ b/src/com/android/launcher3/pageindicators/PageIndicator.java @@ -15,6 +15,8 @@ */ package com.android.launcher3.pageindicators; +import java.util.function.Consumer; + /** * Base class for a page indicator. */ @@ -26,6 +28,14 @@ public interface PageIndicator { void setMarkersCount(int numMarkers); + /** + * This is only going to be used by the FolderPagedView's PageIndicator. A refactor is planned + * to separate the two purposes of this class, but in the meantime, this indicator will serve to + * let the folder snap to the page of its click, and also tell the PageIndicator not to draw + * arrows if the click listener is null (at least until after this is refactored). + */ + void setArrowClickListener(Consumer<Direction> listener); + /** * Sets a flag indicating whether to pause scroll. * <p>Should be set to {@code true} while the screen is binding or new data is being applied, diff --git a/src/com/android/launcher3/pageindicators/PageIndicatorDots.java b/src/com/android/launcher3/pageindicators/PageIndicatorDots.java index 00d6f2be47..cf49e2e693 100644 --- a/src/com/android/launcher3/pageindicators/PageIndicatorDots.java +++ b/src/com/android/launcher3/pageindicators/PageIndicatorDots.java @@ -32,11 +32,13 @@ import android.graphics.Paint; import android.graphics.Paint.Style; import android.graphics.Rect; import android.graphics.RectF; +import android.graphics.drawable.VectorDrawable; import android.os.Handler; import android.os.Looper; import android.util.AttributeSet; import android.util.FloatProperty; import android.util.IntProperty; +import android.view.MotionEvent; import android.view.View; import android.view.ViewConfiguration; import android.view.ViewOutlineProvider; @@ -46,11 +48,10 @@ import android.view.animation.OvershootInterpolator; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; -import com.android.launcher3.Flags; import com.android.launcher3.Insettable; import com.android.launcher3.R; import com.android.launcher3.Utilities; -import com.android.launcher3.util.Themes; +import com.android.launcher3.config.FeatureFlags; import java.util.function.Consumer; @@ -64,6 +65,7 @@ import app.lawnchair.theme.color.tokens.ColorTokens; * WorkspacePageIndicator. A lot of the functionality in this class is only used by one UI purpose. */ public class PageIndicatorDots extends View implements Insettable, PageIndicator { + private static final float SHIFT_PER_ANIMATION = 0.5f; private static final float SHIFT_THRESHOLD = (enableLauncherVisualRefresh() ? 0.5f : 0.2f); private static final long ANIMATION_DURATION = (enableLauncherVisualRefresh() ? 200 : 150); @@ -75,8 +77,11 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator private static final int ENTER_ANIMATION_STAGGERED_DELAY = 150; private static final int ENTER_ANIMATION_DURATION = 400; - private static final int HEIGHT_MULTIPLIER = 4; - private static final int WIDTH_MULTIPLIER = 3; + private static final int LARGE_HEIGHT_MULTIPLIER = 12; + private static final int SMALL_HEIGHT_MULTIPLIER = 4; + private static final int LARGE_WIDTH_MULTIPLIER = 5; + private static final int SMALL_WIDTH_MULTIPLIER = 3; + private static final float ARROW_TOUCH_BOX_FACTOR = 5f; private static final int PAGE_INDICATOR_ALPHA = 255; private static final int DOT_ALPHA = 128; @@ -85,6 +90,7 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator private static final int VISIBLE_ALPHA = 255; private static final int INVISIBLE_ALPHA = 0; private Paint mPaginationPaint; + private Consumer<Direction> mOnArrowClickListener; // This value approximately overshoots to 1.5 times the original size. private static final float ENTER_ANIMATION_OVERSHOOT_TENSION = 4.9f; @@ -127,12 +133,15 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator private final float mGapWidth; private final float mCircleGap; private final boolean mIsRtl; + private final VectorDrawable mArrowRight; + private final VectorDrawable mArrowLeft; + private final Rect mArrowRightBounds = new Rect(); + private final Rect mArrowLeftBounds = new Rect(); private int mNumPages; private int mActivePage; private int mTotalScroll; private boolean mShouldAutoHide; - private boolean mIsMoveAnimationQueued; private int mToAlpha; /** @@ -171,8 +180,7 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator mPaginationPaint = new Paint(Paint.ANTI_ALIAS_FLAG); mPaginationPaint.setStyle(Style.FILL); - // Lawnchair-TODO: pageIndicatorDotColor - mPaginationPaint.setColor(Themes.getAttrColor(context, R.attr.pageIndicatorDotColor)); + mPaginationPaint.setColor(ColorTokens.FolderPaginationColor.resolveColor(context)); mDotRadius = getResources().getDimension(R.dimen.page_indicator_dot_size) / 2; mGapWidth = getResources().getDimension(R.dimen.page_indicator_gap_width); mCircleGap = (enableLauncherVisualRefresh()) @@ -180,6 +188,8 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator : DOT_GAP_FACTOR * mDotRadius; setOutlineProvider(new MyOutlineProver()); mIsRtl = Utilities.isRtl(getResources()); + mArrowRight = (VectorDrawable) getResources().getDrawable(R.drawable.ic_chevron_end); + mArrowLeft = (VectorDrawable) getResources().getDrawable(R.drawable.ic_chevron_start); } @Override @@ -211,28 +221,10 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator if (enableLauncherVisualRefresh()) { float scrollPerPage = (float) totalScroll / (mNumPages - 1); float position = currentScroll / scrollPerPage; - - if (mIsMoveAnimationQueued) { - mCurrentPosition = position; - // For jump animations, wait until we have scrolled to within 1 page away from the - // final destination to start the animation. This has the effect of a smooth delay. - if (Math.abs(mActivePage - position) <= 1) { - animateToPosition(mActivePage); - } - } else if (mAnimator == null) { - // mLastPosition is used to determine which dots should be growing / shrinking. - // Update it when the scroll moves pages. Fling animations also update mLastPosition - if (Math.abs(mLastPosition - position) > 1) { - mLastPosition = Math.round(position); - } - mFinalPosition = mLastPosition + (position > mLastPosition ? 1 : -1); - - // Just show current position if slow scroll. Otherwise, fling animation is going - CURRENT_POSITION.set(this, position); - } + animateToPosition(Math.round(position)); float delta = Math.abs((int) position - position); - if (mShouldAutoHide && !mIsMoveAnimationQueued && (delta < 0.1 || delta > 0.9)) { + if (mShouldAutoHide && (delta < 0.1 || delta > 0.9)) { hideAfterDelay(); } } else { @@ -346,13 +338,8 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator mAnimator.addListener(new AnimationCycleListener()); mAnimator.setDuration(ANIMATION_DURATION); if (enableLauncherVisualRefresh()) { - // If user performs fling with only 11% of the distance to go, we don't want the - // animation to be 150 ms long so we tether it to the scroll distance remaining. - // Large jump scrolls can be more than 1, so we cap the animation time. - float remainingScroll = Math.min(1, Math.abs(position - mCurrentPosition)); - mAnimator.setDuration((long) (ANIMATION_DURATION * remainingScroll)); + mLastPosition = (int) mCurrentPosition; mAnimator.setInterpolator(new OvershootInterpolator()); - mIsMoveAnimationQueued = false; } mAnimator.start(); } @@ -414,11 +401,6 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator animSet.start(); } - /** - * Performs a move-bounce animation upon fling. Flings happen in between 2 positions. Either we - * are coming from the right one, and going to the left, or vice versa. Ex. 3.7 current pos with - * left swipe means last=3, target=4. Slow scroll page-changes also update mLastPosition. - */ @Override public void setActiveMarker(int activePage) { // In unfolded foldables, every page has two CellLayouts, so we need to halve the active @@ -428,19 +410,7 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator } if (mActivePage != activePage) { - mLastPosition = mActivePage; mActivePage = activePage; - - if (Flags.enableLauncherVisualRefresh()) { - // If the animation is a local snap, then immediately perform it. Otherwise, delay - // snap animation until current scroll is within 1 page of the target page. - if (Math.abs(mActivePage - mCurrentPosition) <= 1) { - animateToPosition(activePage); - } else { - mFinalPosition = activePage; - mIsMoveAnimationQueued = true; - } - } } } @@ -457,6 +427,11 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator requestLayout(); } + @Override + public void setArrowClickListener(Consumer<Direction> listener) { + mOnArrowClickListener = listener; + } + @Override public void setPauseScroll(boolean pause, boolean isTwoPanels) { mIsTwoPanels = isTwoPanels; @@ -471,16 +446,17 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + // TODO(b/394355070): Verify Folder Entry Animation works correctly with visual updates // Add extra spacing of mDotRadius on all sides so than entry animation could be run + // and so the hitboxes of arrows can be clicked easier. int width = MeasureSpec.getMode(widthMeasureSpec) == MeasureSpec.EXACTLY ? MeasureSpec.getSize(widthMeasureSpec) - : enableLauncherVisualRefresh() - // #ofGaps*gap_size + (#ofDots + 1 for double size dot)*dot_size - ? (int) (((mNumPages - 1) * mGapWidth) + ((1 + mNumPages) * mDotRadius * 2)) - : (int) ((mNumPages * WIDTH_MULTIPLIER + 2) * mDotRadius); + : (int) ((mNumPages * ((enableLauncherVisualRefresh()) + ? LARGE_WIDTH_MULTIPLIER : SMALL_WIDTH_MULTIPLIER) + 2) * mDotRadius); int height = MeasureSpec.getMode(heightMeasureSpec) == MeasureSpec.EXACTLY ? MeasureSpec.getSize(heightMeasureSpec) - : (int) (HEIGHT_MULTIPLIER * mDotRadius); + : (int) (((enableLauncherVisualRefresh()) + ? LARGE_HEIGHT_MULTIPLIER : SMALL_HEIGHT_MULTIPLIER) * mDotRadius); setMeasuredDimension(width, height); } @@ -499,9 +475,6 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator float x = ((float) getWidth() / 2) - (mCircleGap * ((float) mNumPages - 1) / 2); float y = getHeight() / 2; - // Save the current alpha value, so we can reset to it again after drawing the dots - int alpha = mPaginationPaint.getAlpha(); - if (mEntryAnimationRadiusFactors != null) { if (enableLauncherVisualRefresh()) { x -= mDotRadius; @@ -550,6 +523,8 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator } } } else { + // Save the current alpha value, so we can reset to it again after drawing the dots + int alpha = mPaginationPaint.getAlpha(); if (enableLauncherVisualRefresh()) { int nonActiveAlpha = (int) (alpha * DOT_ALPHA_FRACTION); @@ -561,23 +536,29 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator float currentPosition = mCurrentPosition; float lastPosition = mLastPosition; - float finalPosition = mFinalPosition; if (mIsRtl) { currentPosition = mNumPages - currentPosition - 1; lastPosition = mNumPages - lastPosition - 1; - finalPosition = mNumPages - finalPosition - 1; } + float posDif = Math.abs(lastPosition - currentPosition); + float boundedPosition = (posDif > 1) + ? Math.round(currentPosition) + : currentPosition; + float bounceProgress = (posDif > 1) ? posDif - 1 : 0; + float bounceAdjustment = Math.abs(currentPosition - boundedPosition) * diameter; - // Calculate the progress of the animation. The numerator is the distance from the - // start while the denominator is the total distance from start to end. Progress can - // be greater than 1 if performing a snap animation. In the case that the last and - // final positions are equivalent, we divide by 1 rather than 0 to avoid NaN, which - // screws up the math and has the effect of turning page indicator dots invisible. - float progress = Math.abs(currentPosition - lastPosition) - / Math.max(1, Math.abs(finalPosition - lastPosition)); - float bounceAdjustment = Math.max(progress - 1, 0) * diameter; - int alphaAdjustment = (int) (Math.min(progress, 1) * (alpha - nonActiveAlpha)); + if (mOnArrowClickListener != null && boundedPosition >= 1) { + // Here we draw the Left Arrow + mArrowLeft.setAlpha(alpha); + int size = (int) (mGapWidth * 4); + mArrowLeftBounds.left = (int) (sTempRect.left - mGapWidth - size); + mArrowLeftBounds.top = (int) (y - size / 2); + mArrowLeftBounds.right = (int) (sTempRect.left - mGapWidth); + mArrowLeftBounds.bottom = (int) (y + size / 2); + mArrowLeft.setBounds(mArrowLeftBounds); + mArrowLeft.draw(canvas); + } // Here we draw the dots, one at a time from the left-most dot to the right-most dot // 1.0 => 000000 000000111111 000000 @@ -585,35 +566,34 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator // 1.6 => 000000 00000011 1111000000 // 2.0 => 000000 000000 111111000000 for (int i = 0; i < mNumPages; i++) { - // Adjust alpha and width based on the progress of the animation. Smaller dots - // will also be more transparent, and larger dots more opaque. - mPaginationPaint.setAlpha(i == lastPosition ? alpha - alphaAdjustment - : i == finalPosition ? nonActiveAlpha + alphaAdjustment - : nonActiveAlpha); - sTempRect.right = sTempRect.left + diameter + (diameter - * (i == lastPosition ? 1 - progress - : i == finalPosition ? progress : 0)); + mPaginationPaint.setAlpha(nonActiveAlpha); + float delta = Math.abs(boundedPosition - i); + if (delta <= SHIFT_THRESHOLD) { + mPaginationPaint.setAlpha(alpha); + } - // Save x position before adjusting right edge for bounce animation. This keeps - // the dots in the same centered locations, avoiding an accordion appearance. - x = sTempRect.right + mGapWidth; + // If boundedPosition is 3.3, both 3 and 4 should enter this condition. + // If boundedPosition is 3, only 3 should enter this condition. + if (delta < 1) { + sTempRect.right = sTempRect.left + diameter + ((1 - delta) * diameter); - if (bounceAdjustment > 0) { // While the animation is shifting the active pagination dots size from // the previously active one, to the newly active dot, there is no bounce // adjustment. The bounce happens in the "Overshoot" phase of the animation. // lastPosition is used to determine when the currentPosition is just // leaving the page, or if it is in the overshoot phase. - if (finalPosition == i) { - if (lastPosition < finalPosition) { + if (boundedPosition == i && bounceProgress != 0) { + if (lastPosition < currentPosition) { sTempRect.left -= bounceAdjustment; } else { sTempRect.right += bounceAdjustment; } } - if ((lastPosition <= i && i < finalPosition) - || (finalPosition < i && i <= lastPosition)) { - if (lastPosition > finalPosition) { + } else { + sTempRect.right = sTempRect.left + diameter; + + if (lastPosition == i && bounceProgress != 0) { + if (lastPosition > currentPosition) { sTempRect.left += bounceAdjustment; } else { sTempRect.right -= bounceAdjustment; @@ -632,9 +612,21 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator } canvas.drawRoundRect(sTempRect, mDotRadius, mDotRadius, mPaginationPaint); - sTempRect.left = x; + // TODO(b/394355070) Verify RTL experience works correctly with visual updates + sTempRect.left = sTempRect.right + mGapWidth; } + if (mOnArrowClickListener != null && boundedPosition <= mNumPages - 2) { + // Here we draw the Right Arrow + mArrowRight.setAlpha(alpha); + int size = (int) (mGapWidth * 4); + mArrowRightBounds.left = (int) sTempRect.left; + mArrowRightBounds.top = (int) (y - size / 2); + mArrowRightBounds.right = (int) (int) (sTempRect.left + size); + mArrowRightBounds.bottom = (int) (y + size / 2); + mArrowRight.setBounds(mArrowRightBounds); + mArrowRight.draw(canvas); + } } else { // Here we draw the dots mPaginationPaint.setAlpha((int) (alpha * DOT_ALPHA_FRACTION)); @@ -647,9 +639,31 @@ public class PageIndicatorDots extends View implements Insettable, PageIndicator mPaginationPaint.setAlpha(alpha); canvas.drawRoundRect(getActiveRect(), mDotRadius, mDotRadius, mPaginationPaint); } + + // Reset the alpha so it doesn't become progressively more transparent each onDraw call + mPaginationPaint.setAlpha(alpha); } - // Reset the alpha so it doesn't become progressively more transparent each onDraw call - mPaginationPaint.setAlpha(alpha); + } + + @Override + public boolean onTouchEvent(MotionEvent ev) { + if (mOnArrowClickListener == null) { + // No - Op. Don't care about touch events + } else if ((mIsRtl && withinExpandedBounds(mArrowRightBounds, ev)) + || (!mIsRtl && withinExpandedBounds(mArrowLeftBounds, ev))) { + mOnArrowClickListener.accept(Direction.START); + } else if ((mIsRtl && withinExpandedBounds(mArrowLeftBounds, ev)) + || (!mIsRtl && withinExpandedBounds(mArrowRightBounds, ev))) { + mOnArrowClickListener.accept(Direction.END); + } + return super.onTouchEvent(ev); + } + + // For larger Touch box + private boolean withinExpandedBounds(Rect rect, MotionEvent ev) { + RectF scaledRect = new RectF(rect); + scale(scaledRect, ARROW_TOUCH_BOX_FACTOR); + return scaledRect.contains(ev.getX(), ev.getY()); } private static void scale(RectF rect, float factor) { diff --git a/src/com/android/launcher3/pm/InstallSessionHelper.java b/src/com/android/launcher3/pm/InstallSessionHelper.java index 07790b55d8..46ba993bea 100644 --- a/src/com/android/launcher3/pm/InstallSessionHelper.java +++ b/src/com/android/launcher3/pm/InstallSessionHelper.java @@ -202,8 +202,7 @@ public class InstallSessionHelper { @WorkerThread public boolean promiseIconAddedForId(final int sessionId) { - // Make sure the session id is valid. - return sessionId != -1 && getPromiseIconIds().contains(sessionId); + return getPromiseIconIds().contains(sessionId); } @WorkerThread @@ -232,11 +231,8 @@ public class InstallSessionHelper { // not already present. For general app installations however, we do support it. if (ATLEAST_V && (!Flags.enableSupportForArchiving() || !sessionInfo.isUnarchival())) { FileLog.d(LOG, "Adding package name to install queue: " - + sessionInfo.getAppPackageName() - + "Package installer: " - + sessionInfo.getInstallerPackageName() - + "Session id: " - + sessionInfo.getSessionId()); + + sessionInfo.getAppPackageName()); + ItemInstallQueue.INSTANCE.get(mAppContext) .queueItem(sessionInfo.getAppPackageName(), getUserHandle(sessionInfo)); } diff --git a/src/com/android/launcher3/pm/ShortcutConfigActivityInfo.java b/src/com/android/launcher3/pm/ShortcutConfigActivityInfo.java index 235a46c800..409174e068 100644 --- a/src/com/android/launcher3/pm/ShortcutConfigActivityInfo.java +++ b/src/com/android/launcher3/pm/ShortcutConfigActivityInfo.java @@ -134,7 +134,7 @@ public abstract class ShortcutConfigActivityInfo implements CachedObject { @TargetApi(26) public static class ShortcutConfigActivityInfoVO extends ShortcutConfigActivityInfo { - public final LauncherActivityInfo mInfo; + private final LauncherActivityInfo mInfo; public ShortcutConfigActivityInfoVO(LauncherActivityInfo info) { super(info.getComponentName(), info.getUser(), diff --git a/src/com/android/launcher3/popup/ArrowPopup.java b/src/com/android/launcher3/popup/ArrowPopup.java index 69ce8677e6..7dbf952341 100644 --- a/src/com/android/launcher3/popup/ArrowPopup.java +++ b/src/com/android/launcher3/popup/ArrowPopup.java @@ -43,8 +43,6 @@ import android.view.animation.Interpolator; import android.view.animation.PathInterpolator; import android.widget.FrameLayout; -import androidx.annotation.VisibleForTesting; - import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.InsettableFrameLayout; import com.android.launcher3.R; @@ -80,7 +78,7 @@ public abstract class ArrowPopup<T extends Context & ActivityContext> protected int mCloseChildFadeStartDelay = 0; protected int mCloseChildFadeDuration = 140; - @VisibleForTesting public static final int OPEN_DURATION_U = 200; + private static final int OPEN_DURATION_U = 200; private static final int OPEN_FADE_START_DELAY_U = 0; private static final int OPEN_FADE_DURATION_U = 83; private static final int OPEN_CHILD_FADE_START_DELAY_U = 0; diff --git a/src/com/android/launcher3/popup/PopupContainerWithArrow.java b/src/com/android/launcher3/popup/PopupContainerWithArrow.java index f938c11e3d..429559fe6f 100644 --- a/src/com/android/launcher3/popup/PopupContainerWithArrow.java +++ b/src/com/android/launcher3/popup/PopupContainerWithArrow.java @@ -105,7 +105,6 @@ public class PopupContainerWithArrow<T extends Context & ActivityContext> protected PopupItemDragHandler mPopupItemDragHandler; protected LauncherAccessibilityDelegate mAccessibilityDelegate; - private float mCurrentHeight; public PopupContainerWithArrow(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); @@ -210,7 +209,7 @@ public class PopupContainerWithArrow<T extends Context & ActivityContext> PopupContainerWithArrow<Launcher> container; PopupDataProvider popupDataProvider = launcher.getPopupDataProvider(); int deepShortcutCount = popupDataProvider.getShortcutCountForItem(item); - List<SystemShortcut> systemShortcuts = launcher.getSupportedShortcuts(item.container) + List<SystemShortcut> systemShortcuts = launcher.getSupportedShortcuts() .map(s -> s.getShortcut(launcher, item, icon)) .filter(Objects::nonNull) .collect(Collectors.toList()); @@ -330,51 +329,7 @@ public class PopupContainerWithArrow<T extends Context & ActivityContext> return; } - mCurrentHeight = mShortcutHeight + mChildContainerMargin; - - if (Flags.enableLongPressRemoveShortcut()) { - collapseEligibleSystemShortcutsIfOverThreshold(systemShortcuts); - } else { - collapseNonWidgetSystemShortcutsIfOverThreshold(systemShortcuts); - } - addDeepShortcuts(deepShortcutCount, mCurrentHeight); - } - - /** - * If the total amount of shortcuts is over threshold, we collapse the shortcuts that are - * eligible to be collapsible, and make sure the non-collapsible ones get their own container. - * - * @param systemShortcuts List of SystemShortcuts - */ - private void collapseEligibleSystemShortcutsIfOverThreshold( - List<SystemShortcut> systemShortcuts) { - List<SystemShortcut> collapsibleSystemShortcuts = - getCollapsibleSystemShortcuts(systemShortcuts); - // If total shortcuts over threshold, collapse system shortcuts to single row - addSystemShortcutsIconsOnly(collapsibleSystemShortcuts); - // May need to recalculate row width - mContainerWidth = Math.max(mContainerWidth, - collapsibleSystemShortcuts.size() * getResources() - .getDimensionPixelSize(R.dimen.system_shortcut_header_icon_touch_size)); - List<SystemShortcut> nonCollapsibleSystemShortcuts = systemShortcuts.stream() - .filter(shortcut -> !shortcut.mIsCollapsible).toList(); - if (!nonCollapsibleSystemShortcuts.isEmpty()) { - addSystemShortcuts(nonCollapsibleSystemShortcuts, - R.layout.system_shortcut_rows_container, - R.layout.system_shortcut); - mCurrentHeight += (mShortcutHeight * nonCollapsibleSystemShortcuts.size()) - + mChildContainerMargin; - } - } - - /** - * If the total amount of shortcuts is over threshold, we collapse the shortcuts that are - * not the widget shortcut, and make sure widget gets its own container. - * - * @param systemShortcuts List of SystemShortcuts - */ - private void collapseNonWidgetSystemShortcutsIfOverThreshold( - List<SystemShortcut> systemShortcuts) { + float currentHeight = mShortcutHeight + mChildContainerMargin; List<SystemShortcut> nonWidgetSystemShortcuts = getNonWidgetSystemShortcuts(systemShortcuts); // If total shortcuts over threshold, collapse system shortcuts to single row @@ -389,8 +344,9 @@ public class PopupContainerWithArrow<T extends Context & ActivityContext> mWidgetContainer = inflateAndAdd(R.layout.widget_shortcut_container_material_u, this); initializeWidgetShortcut(mWidgetContainer, widgetShortcutOpt.get()); - mCurrentHeight += mShortcutHeight + mChildContainerMargin; + currentHeight += mShortcutHeight + mChildContainerMargin; } + addDeepShortcuts(deepShortcutCount, currentHeight); } /** @@ -408,23 +364,9 @@ public class PopupContainerWithArrow<T extends Context & ActivityContext> } /** - * Returns list of [systemShortcuts] without the non-collapsible shortcuts. - * @param systemShortcuts list of SystemShortcuts to filter from. - * @return systemShortcuts without the Widgets Shortcut. - */ - private static List<SystemShortcut> getCollapsibleSystemShortcuts( - List<SystemShortcut> systemShortcuts) { - - return systemShortcuts - .stream() - .filter(shortcut -> shortcut.mIsCollapsible) - .collect(Collectors.toList()); - } - - /** - * Returns list of [systemShortcuts] without the non-collapsible shortcuts. - * @param systemShortcuts list of SystemShortcuts to filter from. - * @return systemShortcuts without the Widgets Shortcut. + * Returns list of [systemShortcuts] without the Widgets shortcut instance if found + * @param systemShortcuts list of SystemShortcuts to filter from + * @return systemShortcuts without the Widgets Shortcut */ private static List<SystemShortcut> getNonWidgetSystemShortcuts( List<SystemShortcut> systemShortcuts) { @@ -494,7 +436,7 @@ public class PopupContainerWithArrow<T extends Context & ActivityContext> for (int i = deepShortcutCount; i > 0; i--) { currentHeight += mShortcutHeight; // when there is limited vertical screen space, limit total popup rows to fit - if (currentHeight >= mActivityContext.getDeviceProfile().getDeviceProperties().getAvailableHeightPx()) break; + if (currentHeight >= mActivityContext.getDeviceProfile().availableHeightPx) break; DeepShortcutView v = inflateAndAdd(R.layout.deep_shortcut, mDeepShortcutContainer); v.getLayoutParams().width = mContainerWidth; diff --git a/src/com/android/launcher3/popup/RemoteActionShortcut.java b/src/com/android/launcher3/popup/RemoteActionShortcut.java index f23c7f6274..0860ae5743 100644 --- a/src/com/android/launcher3/popup/RemoteActionShortcut.java +++ b/src/com/android/launcher3/popup/RemoteActionShortcut.java @@ -33,7 +33,6 @@ import android.widget.TextView; import android.widget.Toast; import com.android.launcher3.AbstractFloatingView; -import com.android.launcher3.Flags; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.model.data.ItemInfo; @@ -55,28 +54,17 @@ public class RemoteActionShortcut<T extends Context & ActivityContext> extends S @Override public void setIconAndLabelFor(View iconView, TextView labelView) { - if (Flags.enableLauncherVisualRefresh()) { - // temporarily force icon update until b/402211847 - iconView.setBackground(iconView.getContext().getDrawable(R.drawable.hourglass_24px)); - } else { - mAction.getIcon().loadDrawableAsync(iconView.getContext(), - iconView::setBackground, - MAIN_EXECUTOR.getHandler()); - } - + mAction.getIcon().loadDrawableAsync(iconView.getContext(), + iconView::setBackground, + MAIN_EXECUTOR.getHandler()); labelView.setText(mAction.getTitle()); } @Override public void setIconAndContentDescriptionFor(ImageView view) { - if (Flags.enableLauncherVisualRefresh()) { - // temporarily force icon update until b/402211847 - view.setImageDrawable(view.getContext().getDrawable(R.drawable.hourglass_24px)); - } else { - mAction.getIcon().loadDrawableAsync(view.getContext(), - view::setImageDrawable, - MAIN_EXECUTOR.getHandler()); - } + mAction.getIcon().loadDrawableAsync(view.getContext(), + view::setImageDrawable, + MAIN_EXECUTOR.getHandler()); view.setContentDescription(mAction.getContentDescription()); } diff --git a/src/com/android/launcher3/popup/SystemShortcut.java b/src/com/android/launcher3/popup/SystemShortcut.java index 33997a8ffc..32f3c43687 100644 --- a/src/com/android/launcher3/popup/SystemShortcut.java +++ b/src/com/android/launcher3/popup/SystemShortcut.java @@ -1,6 +1,5 @@ package com.android.launcher3.popup; -import static com.android.launcher3.AbstractFloatingView.TYPE_FOLDER; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_DISMISS_PREDICTION_UNDO; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_PRIVATE_SPACE_INSTALL_SYSTEM_SHORTCUT_TAP; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_PRIVATE_SPACE_UNINSTALL_SYSTEM_SHORTCUT_TAP; @@ -28,7 +27,6 @@ import androidx.annotation.Nullable; import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.AbstractFloatingViewHelper; -import com.android.launcher3.DropTargetHandler; import com.android.launcher3.Flags; import com.android.launcher3.LauncherSettings; import com.android.launcher3.R; @@ -74,31 +72,17 @@ public abstract class SystemShortcut<T extends ActivityContext> extends ItemInfo protected final T mTarget; protected final ItemInfo mItemInfo; protected final View mOriginalView; - protected final boolean mIsCollapsible; private final AbstractFloatingViewHelper mAbstractFloatingViewHelper; public SystemShortcut(int iconResId, int labelResId, T target, ItemInfo itemInfo, View originalView) { this(iconResId, labelResId, target, itemInfo, originalView, - new AbstractFloatingViewHelper(), /* isCollapsible */ true); - } - - public SystemShortcut(int iconResId, int labelResId, T target, ItemInfo itemInfo, - View originalView, boolean isCollapsible) { - this(iconResId, labelResId, target, itemInfo, originalView, - new AbstractFloatingViewHelper(), isCollapsible); + new AbstractFloatingViewHelper()); } public SystemShortcut(int iconResId, int labelResId, T target, ItemInfo itemInfo, View originalView, AbstractFloatingViewHelper abstractFloatingViewHelper) { - this(iconResId, labelResId, target, itemInfo, originalView, abstractFloatingViewHelper, - /* isCollapsible */ true); - } - - public SystemShortcut(int iconResId, int labelResId, T target, ItemInfo itemInfo, - View originalView, AbstractFloatingViewHelper abstractFloatingViewHelper, - boolean isCollapsible) { mIconResId = iconResId; mLabelResId = labelResId; mAccessibilityActionId = labelResId; @@ -106,7 +90,6 @@ public abstract class SystemShortcut<T extends ActivityContext> extends ItemInfo mItemInfo = itemInfo; mOriginalView = originalView; mAbstractFloatingViewHelper = abstractFloatingViewHelper; - mIsCollapsible = isCollapsible; } public void setIconAndLabelFor(View iconView, TextView labelView) { @@ -147,21 +130,9 @@ public abstract class SystemShortcut<T extends ActivityContext> extends ItemInfo }; public static class Widgets<T extends ActivityContext> extends SystemShortcut<T> { - public Widgets(T target, ItemInfo itemInfo, @NonNull View originalView) { - super(getDrawableId(), R.string.widget_button_text, target, itemInfo, originalView, - false); - } - - /** - * @return drawable for Widget shortcut icon - */ - public static int getDrawableId() { - if (Flags.enableLauncherVisualRefresh()) { - return R.drawable.widgets_24px; - } else { - return R.drawable.ic_widget; - } + super(R.drawable.ic_widget, R.string.widget_button_text, target, itemInfo, + originalView); } @Override @@ -184,20 +155,10 @@ public abstract class SystemShortcut<T extends ActivityContext> extends ItemInfo private SplitAccessibilityInfo mSplitA11yInfo; public AppInfo(T target, ItemInfo itemInfo, @NonNull View originalView) { - super(getDrawableId(), R.string.app_info_drop_target_label, target, + super(R.drawable.ic_info_no_shadow, R.string.app_info_drop_target_label, target, itemInfo, originalView); } - /** - * @return drawable for App Info shortcut icon - */ - public static int getDrawableId() { - if (Flags.enableLauncherVisualRefresh()) { - return R.drawable.info_24px; - } else { - return R.drawable.ic_info_no_shadow; - } - } /** * Constructor used by overview for staged split to provide custom A11y information. * @@ -254,25 +215,6 @@ public abstract class SystemShortcut<T extends ActivityContext> extends ItemInfo } } - public static final Factory<ActivityContext> REMOVE = RemoveApp::new; - - public static class RemoveApp<T extends ActivityContext> extends SystemShortcut<T> { - - public RemoveApp(T target, ItemInfo itemInfo, @NonNull View originalView) { - super(R.drawable.ic_remove_no_shadow, R.string.remove_drop_target_label, target, - itemInfo, originalView, false); - } - - @Override - public void onClick(View view) { - AbstractFloatingView.closeAllOpenViewsExcept(mTarget, TYPE_FOLDER); - DropTargetHandler dropTargetHandler = - ActivityContext.lookupContext(view.getContext()).getDropTargetHandler(); - dropTargetHandler.prepareToUndoDelete(); - dropTargetHandler.onDeleteComplete(mItemInfo, mOriginalView); - } - } - public static final Factory<ActivityContext> PRIVATE_PROFILE_INSTALL = (context, itemInfo, originalView) -> { if (originalView == null) { @@ -352,7 +294,9 @@ public abstract class SystemShortcut<T extends ActivityContext> extends ItemInfo && ((WorkspaceItemInfo) itemInfo).hasStatusFlag( WorkspaceItemInfo.FLAG_SUPPORTS_WEB_UI); boolean isInstantApp = false; - if (itemInfo instanceof com.android.launcher3.model.data.AppInfo appInfo) { + if (itemInfo instanceof com.android.launcher3.model.data.AppInfo) { + com.android.launcher3.model.data.AppInfo + appInfo = (com.android.launcher3.model.data.AppInfo) itemInfo; isInstantApp = InstantAppResolver.newInstance( originalView.getContext()).isInstantApp(appInfo); } @@ -468,17 +412,6 @@ public abstract class SystemShortcut<T extends ActivityContext> extends ItemInfo && !(itemInfo instanceof WorkspaceItemInfo)) { return null; } - if (itemInfo instanceof WorkspaceItemInfo) { - // Don't show bubble shortcut option for non-resizeable apps on small screens. - // TODO(b/411558731): isPhone just checks for smallest width < 600dp, so it - // basically is a check for small screens including Foldables when folded. - // However, the name is a bit misleading, so considering renaming. - WorkspaceItemInfo wsItemInfo = (WorkspaceItemInfo) itemInfo; - if (wsItemInfo.isNonResizeable() - && activity.getDeviceProfile().getDeviceProperties().isPhone()) { - return null; - } - } return new BubbleShortcut<>(activity, itemInfo, originalView); }; diff --git a/src/com/android/launcher3/provider/RestoreDbTask.java b/src/com/android/launcher3/provider/RestoreDbTask.java index 536faf684d..acb6c631ee 100644 --- a/src/com/android/launcher3/provider/RestoreDbTask.java +++ b/src/com/android/launcher3/provider/RestoreDbTask.java @@ -82,7 +82,6 @@ import java.util.Arrays; import java.util.Collection; import java.util.List; import java.util.Map; -import java.util.function.Consumer; import java.util.function.Supplier; import java.util.stream.Collectors; @@ -109,21 +108,25 @@ public class RestoreDbTask { "appWidgetId", "restored"}; /** - * Creates a task for restoring the backed up DB if needed. It performs the initial disk - * validation immediately and returns a callback which can be used to complete any database - * updates. + * Tries to restore the backup DB if needed */ - public static Consumer<ModelDbController> createRestoreTask(Context context) { + public static void restoreIfNeeded(Context context, ModelDbController dbController) { if (!isPending(context)) { Log.d(TAG, "No restore task pending, exiting RestoreDbTask"); - return c -> { }; + return; + } + if (!performRestore(context, dbController)) { + dbController.createEmptyDB(); } // Obtain InvariantDeviceProfile first before setting pending to false, so // InvariantDeviceProfile won't switch to new grid when initializing. InvariantDeviceProfile idp = InvariantDeviceProfile.INSTANCE.get(context); - // Perform any disk updates before accessing the actual database. + // Set is pending to false irrespective of the result, so that it doesn't get + // executed again. + LauncherPrefs.get(context).removeSync(RESTORE_DEVICE); + DeviceGridState deviceGridState = new DeviceGridState(context); FileLog.d(TAG, "restoreIfNeeded: deviceGridState from context: " + deviceGridState); String oldPhoneFileName = deviceGridState.getDbFile(); @@ -136,16 +139,6 @@ public class RestoreDbTask { idp.reset(context); trySettingPreviousGridAsCurrent(context, idp, oldPhoneFileName, previousDbs); } - - return dbController -> { - if (!performRestore(context, dbController)) { - dbController.createEmptyDB(); - } - - // Set is pending to false irrespective of the result, so that it doesn't get - // executed again. - LauncherPrefs.get(context).removeSync(RESTORE_DEVICE); - }; } @@ -201,7 +194,7 @@ public class RestoreDbTask { LauncherFiles.GRID_DB_FILES.stream() .filter(dbName -> !dbName.equals(oldPhoneDbFileName)) .forEach(dbName -> { - if (context.deleteDatabase(dbName)) { + if (context.getDatabasePath(dbName).delete()) { FileLog.d(TAG, "Removed old grid db file: " + dbName); } }); @@ -442,9 +435,8 @@ public class RestoreDbTask { public static void setPending(Context context) { DeviceGridState deviceGridState = new DeviceGridState(context); FileLog.d(TAG, "restore initiated from backup: DeviceGridState=" + deviceGridState); - LauncherPrefs.get(context).putSync( - RESTORE_DEVICE.to(deviceGridState.getDeviceType()), - IS_FIRST_LOAD_AFTER_RESTORE.to(true)); + LauncherPrefs.get(context).putSync(RESTORE_DEVICE.to(deviceGridState.getDeviceType())); + LauncherPrefs.get(context).putSync(IS_FIRST_LOAD_AFTER_RESTORE.to(true)); } @WorkerThread diff --git a/src/com/android/launcher3/qsb/QsbContainerView.java b/src/com/android/launcher3/qsb/QsbContainerView.java index 3f99154034..460e58d041 100644 --- a/src/com/android/launcher3/qsb/QsbContainerView.java +++ b/src/com/android/launcher3/qsb/QsbContainerView.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. * - * Modifications copyright 2025, Lawnchair + * Modifications copyright 2021, Lawnchair */ package com.android.launcher3.qsb; @@ -22,6 +22,8 @@ import static android.appwidget.AppWidgetManager.ACTION_APPWIDGET_BIND; import static android.appwidget.AppWidgetManager.EXTRA_APPWIDGET_ID; import static android.appwidget.AppWidgetManager.EXTRA_APPWIDGET_PROVIDER; +import static com.android.launcher3.Utilities.SHOULD_SHOW_FIRST_PAGE_WIDGET; + import android.app.Activity; import android.app.Fragment; import android.app.SearchManager; @@ -44,20 +46,22 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.WorkerThread; -import com.android.launcher3.BuildConfig; -import com.android.launcher3.BuildConfigs; import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherPrefs; import com.android.launcher3.R; +import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.graphics.FragmentWithPreview; import com.android.launcher3.widget.util.WidgetSizes; /** - * A frame layout which contains a QSB. This internally uses fragment to bind the view, which - * allows it to contain the logic for {@link Fragment#startActivityForResult(Intent, int)}. + * A frame layout which contains a QSB. This internally uses fragment to bind + * the view, which + * allows it to contain the logic for + * {@link Fragment#startActivityForResult(Intent, int)}. * - * Note: WidgetManagerHelper can be disabled using FeatureFlags. In QSB, we should use + * Note: WidgetManagerHelper can be disabled using FeatureFlags. In QSB, we + * should use * AppWidgetManager directly, so that it keeps working in that case. */ public class QsbContainerView extends FrameLayout { @@ -65,7 +69,9 @@ public class QsbContainerView extends FrameLayout { public static final String SEARCH_ENGINE_SETTINGS_KEY = "selected_search_engine"; /** - * Returns the package name for user configured search provider or from searchManager + * Returns the package name for user configured search provider or from + * searchManager + * * @param context * @return String */ @@ -85,7 +91,9 @@ public class QsbContainerView extends FrameLayout { } /** - * returns it's AppWidgetProviderInfo using package name from getSearchWidgetPackageName + * returns it's AppWidgetProviderInfo using package name from + * getSearchWidgetPackageName + * * @param context * @return AppWidgetProviderInfo */ @@ -102,8 +110,7 @@ public class QsbContainerView extends FrameLayout { AppWidgetProviderInfo defaultWidgetForSearchPackage = null; AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context); - for (AppWidgetProviderInfo info : - appWidgetManager.getInstalledProvidersForPackage(providerPkg, null)) { + for (AppWidgetProviderInfo info : appWidgetManager.getInstalledProvidersForPackage(providerPkg, null)) { if (info.provider.getPackageName().equals(providerPkg) && info.configure == null) { if ((info.widgetCategory & AppWidgetProviderInfo.WIDGET_CATEGORY_SEARCHBOX) != 0) { @@ -121,15 +128,14 @@ public class QsbContainerView extends FrameLayout { */ @WorkerThread @Nullable - public static ComponentName getSearchComponentName(@NonNull Context context) { - AppWidgetProviderInfo providerInfo = - QsbContainerView.getSearchWidgetProviderInfo(context); + public static ComponentName getSearchComponentName(@NonNull Context context) { + AppWidgetProviderInfo providerInfo = QsbContainerView.getSearchWidgetProviderInfo(context); if (providerInfo != null) { return providerInfo.provider; } else { String pkgName = QsbContainerView.getSearchWidgetPackageName(context); if (pkgName != null) { - //we don't know the class name yet. we'll put the package name as placeholder + // we don't know the class name yet. we'll put the package name as placeholder return new ComponentName(pkgName, pkgName); } return null; @@ -170,7 +176,8 @@ public class QsbContainerView extends FrameLayout { protected AppWidgetProviderInfo mWidgetInfo; private QsbWidgetHostView mQsb; - // We need to store the orientation here, due to a bug (b/64916689) that results in widgets + // We need to store the orientation here, due to a bug (b/64916689) that results + // in widgets // being inflated in the wrong orientation. private int mOrientation; @@ -301,7 +308,7 @@ public class QsbContainerView extends FrameLayout { } public boolean isQsbEnabled() { - return BuildConfigs.QSB_ON_FIRST_SCREEN; + return FeatureFlags.QSB_ON_FIRST_SCREEN; } protected Bundle createBindOptions() { @@ -330,11 +337,12 @@ public class QsbContainerView extends FrameLayout { REQUEST_BIND_QSB); } - /** - * Returns a widget with category {@link AppWidgetProviderInfo#WIDGET_CATEGORY_SEARCHBOX} + * Returns a widget with category + * {@link AppWidgetProviderInfo#WIDGET_CATEGORY_SEARCHBOX} * provided by the package from getSearchProviderPackageName - * If widgetCategory is not supported, or no such widget is found, returns the first widget + * If widgetCategory is not supported, or no such widget is found, returns the + * first widget * provided by the package. */ @WorkerThread @@ -391,7 +399,8 @@ public class QsbContainerView extends FrameLayout { } /** - * Returns true if {@param original} contains all entries defined in {@param updates} and + * Returns true if {@param original} contains all entries defined in + * {@param updates} and * have the same value. * The comparison uses {@link Object#equals(Object)} to compare the values. */ diff --git a/src/com/android/launcher3/responsive/ResponsiveCellSpecsProvider.kt b/src/com/android/launcher3/responsive/ResponsiveCellSpecsProvider.kt index 272a2d80ec..ef9b7dfc6f 100644 --- a/src/com/android/launcher3/responsive/ResponsiveCellSpecsProvider.kt +++ b/src/com/android/launcher3/responsive/ResponsiveCellSpecsProvider.kt @@ -18,7 +18,6 @@ package com.android.launcher3.responsive import android.content.res.TypedArray import android.util.Log -import com.android.launcher3.Flags.enableScalabilityForDesktopExperience import com.android.launcher3.R import com.android.launcher3.responsive.ResponsiveSpec.Companion.ResponsiveSpecType import com.android.launcher3.responsive.ResponsiveSpec.DimensionType @@ -58,7 +57,7 @@ class ResponsiveCellSpecsProvider(groupOfSpecs: List<ResponsiveSpecGroup<CellSpe fun getCalculatedSpec( aspectRatio: Float, availableHeightSpace: Int, - workspaceCellSpec: CalculatedCellSpec, + workspaceCellSpec: CalculatedCellSpec ): CalculatedCellSpec { val specsGroup = getSpecsByAspectRatio(aspectRatio) val spec = specsGroup.getSpec(DimensionType.HEIGHT, availableHeightSpace) @@ -67,7 +66,6 @@ class ResponsiveCellSpecsProvider(groupOfSpecs: List<ResponsiveSpecGroup<CellSpe companion object { private const val LOG_TAG = "ResponsiveCellSpecsProvider" - @JvmStatic fun create(resourceHelper: ResourceHelper): ResponsiveCellSpecsProvider { val parser = ResponsiveSpecsParser(resourceHelper) @@ -83,9 +81,7 @@ data class CellSpec( override val specType: ResponsiveSpecType, val iconSize: SizeSpec, val iconTextSize: SizeSpec, - val iconDrawablePadding: SizeSpec, - val iconTextMaxLineCount: Int, - val iconTextMaxLineCountMatchesWorkspace: Boolean, + val iconDrawablePadding: SizeSpec ) : IResponsiveSpec { init { check(isValid()) { "Invalid CellSpec found." } @@ -94,7 +90,7 @@ data class CellSpec( constructor( responsiveSpecType: ResponsiveSpecType, attrs: TypedArray, - specs: Map<String, SizeSpec>, + specs: Map<String, SizeSpec> ) : this( maxAvailableSize = attrs.getDimensionPixelSize(R.styleable.ResponsiveSpec_maxAvailableSize, 0), @@ -102,19 +98,12 @@ data class CellSpec( DimensionType.entries[ attrs.getInt( R.styleable.ResponsiveSpec_dimensionType, - DimensionType.HEIGHT.ordinal, + DimensionType.HEIGHT.ordinal )], specType = responsiveSpecType, iconSize = specs.getOrError(SizeSpec.XmlTags.ICON_SIZE), iconTextSize = specs.getOrError(SizeSpec.XmlTags.ICON_TEXT_SIZE), - iconDrawablePadding = specs.getOrError(SizeSpec.XmlTags.ICON_DRAWABLE_PADDING), - iconTextMaxLineCount = - if (enableScalabilityForDesktopExperience()) - attrs.getInt(R.styleable.CellSpec_maxLineCount, 1) - else 1, - iconTextMaxLineCountMatchesWorkspace = - enableScalabilityForDesktopExperience() && - attrs.getBoolean(R.styleable.CellSpec_maxLineCountMatchesWorkspace, false), + iconDrawablePadding = specs.getOrError(SizeSpec.XmlTags.ICON_DRAWABLE_PADDING) ) fun isValid(): Boolean { @@ -134,20 +123,11 @@ data class CellSpec( return false } - if (iconTextMaxLineCount > 2) { - logError("Max line count higher than 2 is not supported.") - return false - } - return true } private fun isValidFixedSize(): Boolean { - val textLineCount = if (iconTextMaxLineCount >= 0) iconTextMaxLineCount else 1 - val totalSize = - iconSize.fixedSize + - iconTextSize.fixedSize * textLineCount + - iconDrawablePadding.fixedSize + val totalSize = iconSize.fixedSize + iconTextSize.fixedSize + iconDrawablePadding.fixedSize return totalSize <= maxAvailableSize } @@ -171,27 +151,23 @@ data class CalculatedCellSpec( val spec: CellSpec, val iconSize: Int, val iconTextSize: Int, - val iconDrawablePadding: Int, - val iconTextMaxLineCount: Int, - val iconTextMaxLineCountMatchesWorkspace: Boolean, + val iconDrawablePadding: Int ) { constructor( availableSpace: Int, - spec: CellSpec, + spec: CellSpec ) : this( availableSpace = availableSpace, spec = spec, iconSize = spec.iconSize.getCalculatedValue(availableSpace), iconTextSize = spec.iconTextSize.getCalculatedValue(availableSpace), - iconDrawablePadding = spec.iconDrawablePadding.getCalculatedValue(availableSpace), - iconTextMaxLineCount = spec.iconTextMaxLineCount, - iconTextMaxLineCountMatchesWorkspace = spec.iconTextMaxLineCountMatchesWorkspace, + iconDrawablePadding = spec.iconDrawablePadding.getCalculatedValue(availableSpace) ) constructor( availableSpace: Int, spec: CellSpec, - workspaceCellSpec: CalculatedCellSpec, + workspaceCellSpec: CalculatedCellSpec ) : this( availableSpace = availableSpace, spec = spec, @@ -202,21 +178,16 @@ data class CalculatedCellSpec( getCalculatedValue( availableSpace, spec.iconDrawablePadding, - workspaceCellSpec.iconDrawablePadding, - ), - iconTextMaxLineCount = - if (spec.iconTextMaxLineCountMatchesWorkspace) workspaceCellSpec.iconTextMaxLineCount - else spec.iconTextMaxLineCount, - iconTextMaxLineCountMatchesWorkspace = spec.iconTextMaxLineCountMatchesWorkspace, + workspaceCellSpec.iconDrawablePadding + ) ) companion object { private const val LOG_TAG = "CalculatedCellSpec" - private fun getCalculatedValue( availableSpace: Int, spec: SizeSpec, - workspaceValue: Int, + workspaceValue: Int ): Int = if (spec.matchWorkspace) workspaceValue else spec.getCalculatedValue(availableSpace) } diff --git a/src/com/android/launcher3/responsive/ResponsiveSpec.kt b/src/com/android/launcher3/responsive/ResponsiveSpec.kt index 0d5fc2d976..e69324d42a 100644 --- a/src/com/android/launcher3/responsive/ResponsiveSpec.kt +++ b/src/com/android/launcher3/responsive/ResponsiveSpec.kt @@ -65,7 +65,7 @@ data class ResponsiveSpec( constructor( responsiveSpecType: ResponsiveSpecType, attrs: TypedArray, - specs: Map<String, SizeSpec>, + specs: Map<String, SizeSpec> ) : this( maxAvailableSize = attrs.getDimensionPixelSize(R.styleable.ResponsiveSpec_maxAvailableSize, 0), @@ -73,13 +73,13 @@ data class ResponsiveSpec( DimensionType.entries[ attrs.getInt( R.styleable.ResponsiveSpec_dimensionType, - DimensionType.HEIGHT.ordinal, + DimensionType.HEIGHT.ordinal )], specType = responsiveSpecType, startPadding = specs.getOrError(SizeSpec.XmlTags.START_PADDING), endPadding = specs.getOrError(SizeSpec.XmlTags.END_PADDING), gutter = specs.getOrError(SizeSpec.XmlTags.GUTTER), - cellSize = specs.getOrError(SizeSpec.XmlTags.CELL_SIZE), + cellSize = specs.getOrError(SizeSpec.XmlTags.CELL_SIZE) ) fun isValid(): Boolean { @@ -159,18 +159,18 @@ data class ResponsiveSpec( enum class DimensionType { HEIGHT, - WIDTH, + WIDTH } companion object { private const val LOG_TAG = "ResponsiveSpec" - enum class ResponsiveSpecType(val xmlTag: String, val styleId: IntArray) { - AllApps("allAppsSpec", R.styleable.ResponsiveSpec), - Folder("folderSpec", R.styleable.ResponsiveSpec), - Workspace("workspaceSpec", R.styleable.ResponsiveSpec), - Hotseat("hotseatSpec", R.styleable.ResponsiveSpec), - Cell("cellSpec", R.styleable.CellSpec), + enum class ResponsiveSpecType(val xmlTag: String) { + AllApps("allAppsSpec"), + Folder("folderSpec"), + Workspace("workspaceSpec"), + Hotseat("hotseatSpec"), + Cell("cellSpec") } } } @@ -209,7 +209,7 @@ class CalculatedResponsiveSpec { availableSpace: Int, cells: Int, spec: ResponsiveSpec, - calculatedWorkspaceSpec: CalculatedResponsiveSpec, + calculatedWorkspaceSpec: CalculatedResponsiveSpec ) { this.aspectRatio = aspectRatio this.availableSpace = availableSpace @@ -220,7 +220,7 @@ class CalculatedResponsiveSpec { startPaddingPx = spec.startPadding.getCalculatedValue( availableSpace, - calculatedWorkspaceSpec.startPaddingPx, + calculatedWorkspaceSpec.startPaddingPx ) endPaddingPx = spec.endPadding.getCalculatedValue(availableSpace, calculatedWorkspaceSpec.endPaddingPx) diff --git a/src/com/android/launcher3/responsive/ResponsiveSpecsParser.kt b/src/com/android/launcher3/responsive/ResponsiveSpecsParser.kt index 31aa24d5b2..acb4226de1 100644 --- a/src/com/android/launcher3/responsive/ResponsiveSpecsParser.kt +++ b/src/com/android/launcher3/responsive/ResponsiveSpecsParser.kt @@ -34,8 +34,8 @@ class ResponsiveSpecsParser(private val resourceHelper: ResourceHelper) { ( responsiveSpecType: ResponsiveSpecType, attributes: TypedArray, - sizeSpecs: Map<String, SizeSpec>, - ) -> T, + sizeSpecs: Map<String, SizeSpec> + ) -> T ): List<ResponsiveSpecGroup<T>> { val parser: XmlResourceParser = resourceHelper.getXml() @@ -52,7 +52,7 @@ class ResponsiveSpecsParser(private val resourceHelper: ResourceHelper) { groupAttrs = resourceHelper.obtainStyledAttributes( Xml.asAttributeSet(parser), - R.styleable.ResponsiveSpecGroup, + R.styleable.ResponsiveSpecGroup ) } parser ends ResponsiveSpecGroup.XML_GROUP_NAME -> { @@ -67,7 +67,7 @@ class ResponsiveSpecsParser(private val resourceHelper: ResourceHelper) { val attrs = resourceHelper.obtainStyledAttributes( Xml.asAttributeSet(parser), - responsiveSpecType.styleId, + R.styleable.ResponsiveSpec ) val sizeSpecs = parseSizeSpecs(parser) diff --git a/src/com/android/launcher3/secondarydisplay/SecondaryDisplayLauncher.java b/src/com/android/launcher3/secondarydisplay/SecondaryDisplayLauncher.java index ae8252e114..c4fed71f9a 100644 --- a/src/com/android/launcher3/secondarydisplay/SecondaryDisplayLauncher.java +++ b/src/com/android/launcher3/secondarydisplay/SecondaryDisplayLauncher.java @@ -15,8 +15,8 @@ */ package com.android.launcher3.secondarydisplay; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_ALL_APPS_PREDICTION; import static com.android.launcher3.util.WallpaperThemeManager.setWallpaperDependentTheme; +import static com.android.window.flags.Flags.enableTaskbarConnectedDisplays; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; @@ -40,10 +40,10 @@ import com.android.launcher3.DropTarget; import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherModel; +import com.android.launcher3.LauncherSettings; import com.android.launcher3.R; import com.android.launcher3.allapps.ActivityAllAppsContainerView; import com.android.launcher3.allapps.AllAppsStore; -import com.android.launcher3.deviceprofile.AllAppsProfile; import com.android.launcher3.dragndrop.DragController; import com.android.launcher3.dragndrop.DragOptions; import com.android.launcher3.dragndrop.DraggableView; @@ -54,8 +54,6 @@ import com.android.launcher3.model.StringCache; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.ItemInfoWithIcon; -import com.android.launcher3.model.data.PredictedContainerInfo; -import com.android.launcher3.model.data.WorkspaceData; import com.android.launcher3.popup.PopupContainerWithArrow; import com.android.launcher3.popup.PopupDataProvider; import com.android.launcher3.touch.ItemClickHandler.ItemClickProxy; @@ -67,7 +65,6 @@ import com.android.launcher3.views.BaseDragLayer; import java.util.HashMap; import java.util.Map; -import java.util.Set; /** * Launcher activity for secondary displays @@ -86,7 +83,7 @@ public class SecondaryDisplayLauncher extends BaseActivity private boolean mAppDrawerShown = false; private StringCache mStringCache; - private SecondaryDisplayQuickstepDelegate mSecondaryDisplayQuickstepDelegate; + private SecondaryDisplayPredictions mSecondaryDisplayPredictions; private final int[] mTempXY = new int[2]; @@ -96,20 +93,18 @@ public class SecondaryDisplayLauncher extends BaseActivity setWallpaperDependentTheme(this); mModel = LauncherAppState.getInstance(this).getModel(); mDragController = new SecondaryDragController(this); - mSecondaryDisplayQuickstepDelegate = SecondaryDisplayQuickstepDelegate.newInstance(this); + mSecondaryDisplayPredictions = SecondaryDisplayPredictions.newInstance(this); mDeviceProfile = InvariantDeviceProfile.INSTANCE.get(this) .createDeviceProfileForSecondaryDisplay(this); - // TODO(b/420948290) Remove this! - mDeviceProfile.setAllAppsProfile(AllAppsProfile - .Factory - .autoResizeAllAppsCells(mDeviceProfile.getAllAppsProfile())); + mDeviceProfile.autoResizeAllAppsCells(); setContentView(R.layout.secondary_launcher); mDragLayer = findViewById(R.id.drag_layer); mAppsView = findViewById(R.id.apps_view); mAppsButton = findViewById(R.id.all_apps_button); - if (mSecondaryDisplayQuickstepDelegate.enableTaskbarConnectedDisplays()) { + // TODO (b/391965805): Replace this flag with DesktopExperiences flag. + if (enableTaskbarConnectedDisplays()) { mAppsButton.setVisibility(View.INVISIBLE); } @@ -223,17 +218,16 @@ public class SecondaryDisplayLauncher extends BaseActivity mAppDrawerShown = true; mAppsView.setVisibility(View.VISIBLE); mAppsButton.setVisibility(View.INVISIBLE); - mSecondaryDisplayQuickstepDelegate.updateAppDivider(); + mSecondaryDisplayPredictions.updateAppDivider(); } else { mAppDrawerShown = false; animator.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { mAppsView.setVisibility(View.INVISIBLE); + // TODO (b/391965805): Replace this flag with DesktopExperiences flag. mAppsButton.setVisibility( - mSecondaryDisplayQuickstepDelegate.enableTaskbarConnectedDisplays() - ? View.INVISIBLE - : View.VISIBLE); + enableTaskbarConnectedDisplays() ? View.INVISIBLE : View.VISIBLE); mAppsView.getSearchUiManager().resetSearch(); } }); @@ -241,6 +235,11 @@ public class SecondaryDisplayLauncher extends BaseActivity animator.start(); } + @Override + public void startBinding() { + mDragController.cancelDrag(); + } + @Override public void bindDeepShortcutMap(HashMap<ComponentKey, Integer> deepShortcutMap) { mPopupDataProvider.setDeepShortcutMap(deepShortcutMap); @@ -257,20 +256,9 @@ public class SecondaryDisplayLauncher extends BaseActivity } @Override - public void bindCompleteModel( - @NonNull WorkspaceData itemIdMap, boolean isBindingSync) { - if (itemIdMap.get(CONTAINER_ALL_APPS_PREDICTION) instanceof PredictedContainerInfo pci) { - mSecondaryDisplayQuickstepDelegate.setPredictedApps(pci); - } - } - - @Override - public void bindItemsUpdated(@NonNull Set<ItemInfo> updates) { - for (ItemInfo updatedItem: updates) { - if (updatedItem.container == CONTAINER_ALL_APPS_PREDICTION - && updatedItem instanceof PredictedContainerInfo pci) { - mSecondaryDisplayQuickstepDelegate.setPredictedApps(pci); - } + public void bindExtraContainerItems(BgDataModel.FixedContainerItems item) { + if (item.containerId == LauncherSettings.Favorites.CONTAINER_PREDICTION) { + mSecondaryDisplayPredictions.setPredictedApps(item); } } diff --git a/src/com/android/launcher3/secondarydisplay/SecondaryDragLayer.java b/src/com/android/launcher3/secondarydisplay/SecondaryDragLayer.java index 07296ea403..c1008faeeb 100644 --- a/src/com/android/launcher3/secondarydisplay/SecondaryDragLayer.java +++ b/src/com/android/launcher3/secondarydisplay/SecondaryDragLayer.java @@ -39,7 +39,6 @@ import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.popup.PopupContainerWithArrow; import com.android.launcher3.popup.PopupDataProvider; import com.android.launcher3.popup.SystemShortcut; -import com.android.launcher3.util.ApiWrapper; import com.android.launcher3.util.ShortcutUtil; import com.android.launcher3.util.TouchController; import com.android.launcher3.views.BaseDragLayer; @@ -65,23 +64,8 @@ public class SecondaryDragLayer extends BaseDragLayer<SecondaryDisplayLauncher> @Override public void recreateControllers() { - super.recreateControllers(); - TouchController statusBarController = - ApiWrapper.INSTANCE.get(getContext()) - .createStatusBarTouchController(mContainer, () -> true); - - if (statusBarController != null) { - mControllers = new TouchController[]{ - new CloseAllAppsTouchController(), - mContainer.getDragController(), - statusBarController - }; - } else { - mControllers = new TouchController[]{ - new CloseAllAppsTouchController(), - mContainer.getDragController() - }; - } + mControllers = new TouchController[]{new CloseAllAppsTouchController(), + mContainer.getDragController()}; } /** @@ -139,13 +123,11 @@ public class SecondaryDragLayer extends BaseDragLayer<SecondaryDisplayLauncher> grid.cellLayoutPaddingPx.top + grid.cellLayoutPaddingPx.bottom; int maxWidth = - grid.getAllAppsProfile().getCellWidthPx() * grid.numShownAllAppsColumns - + horizontalPadding; + grid.allAppsCellWidthPx * grid.numShownAllAppsColumns + horizontalPadding; int appsWidth = Math.min(width - getPaddingLeft() - getPaddingRight(), maxWidth); int maxHeight = - grid.getAllAppsProfile().getCellHeightPx() * grid.numShownAllAppsColumns - + verticalPadding; + grid.allAppsCellHeightPx * grid.numShownAllAppsColumns + verticalPadding; int appsHeight = Math.min(height - getPaddingTop() - getPaddingBottom(), maxHeight); mAppsView.measure( @@ -231,8 +213,7 @@ public class SecondaryDragLayer extends BaseDragLayer<SecondaryDisplayLauncher> DragOptions options = new DragOptions(); DeviceProfile grid = mContainer.getDeviceProfile(); - options.intrinsicIconScaleFactor = (float) grid.getAllAppsProfile().getIconSizePx() - / grid.iconSizePx; + options.intrinsicIconScaleFactor = (float) grid.allAppsIconSizePx / grid.iconSizePx; options.preDragCondition = container.createPreDragCondition(false); if (options.preDragCondition == null) { options.preDragCondition = new DragOptions.PreDragCondition() { diff --git a/src/com/android/launcher3/settings/SettingsActivity.java b/src/com/android/launcher3/settings/SettingsActivity.java index b8b137707c..1ac4660f97 100644 --- a/src/com/android/launcher3/settings/SettingsActivity.java +++ b/src/com/android/launcher3/settings/SettingsActivity.java @@ -69,7 +69,7 @@ public class SettingsActivity extends FragmentActivity implements OnPreferenceStartFragmentCallback, OnPreferenceStartScreenCallback { @VisibleForTesting - public static final String DEVELOPER_OPTIONS_KEY = "pref_developer_options"; + static final String DEVELOPER_OPTIONS_KEY = "pref_developer_options"; public static final String FIXED_LANDSCAPE_MODE = "pref_fixed_landscape_mode"; @@ -169,7 +169,7 @@ public class SettingsActivity extends FragmentActivity public static class LauncherSettingsFragment extends PreferenceFragmentCompat implements SettingsCache.OnChangeListener { - protected boolean mDeveloperOptionsEnabled = true; + protected boolean mDeveloperOptionsEnabled = false; private boolean mRestartOnResume = false; @@ -211,7 +211,8 @@ public class SettingsActivity extends FragmentActivity // If the target preference is not in the current preference screen, find the parent // preference screen that contains the target preference and set it as the preference // screen. - if (mHighLightKey != null + if (Flags.navigateToChildPreference() + && mHighLightKey != null && !isKeyInPreferenceGroup(mHighLightKey, screen)) { final PreferenceScreen parentPreferenceScreen = findParentPreference(screen, mHighLightKey); diff --git a/src/com/android/launcher3/shapes/IconShapeModel.kt b/src/com/android/launcher3/shapes/IconShapeModel.kt index 6d4ada462a..fc49adc3ef 100644 --- a/src/com/android/launcher3/shapes/IconShapeModel.kt +++ b/src/com/android/launcher3/shapes/IconShapeModel.kt @@ -16,17 +16,10 @@ package com.android.launcher3.shapes -import androidx.annotation.StringRes - data class IconShapeModel( val key: String, - @StringRes val titleId: Int, + val title: String, val pathString: String, - val folderRadiusRatio: Float = 1f, - val shapeRadius: Float = DEFAULT_ICON_RADIUS, -) { - companion object { - /** Default icon radius in dp to use for transient taskbar rounding. */ - const val DEFAULT_ICON_RADIUS = 26f - } -} + val folderPathString: String = pathString, + val iconScale: Float = 1f, +) diff --git a/src/com/android/launcher3/shapes/ShapesProvider.kt b/src/com/android/launcher3/shapes/ShapesProvider.kt index dc8ddf332e..c13a014050 100644 --- a/src/com/android/launcher3/shapes/ShapesProvider.kt +++ b/src/com/android/launcher3/shapes/ShapesProvider.kt @@ -16,13 +16,21 @@ package com.android.launcher3.shapes +import androidx.annotation.VisibleForTesting import com.android.launcher3.Flags as LauncherFlags -import com.android.launcher3.R import com.android.systemui.shared.Flags object ShapesProvider { - private const val CIRCLE_PATH = "M50 0A50 50,0,1,1,50 100A50 50,0,1,1,50 0" - private const val SQUARE_PATH = + const val FOLDER_CLOVER_PATH = + "M 39.616 4 C 46.224 6.87 53.727 6.87 60.335 4 L 63.884 2.459 C 85.178 -6.789 106.789 14.822 97.541 36.116 L 96 39.665 C 93.13 46.273 93.13 53.776 96 60.384 L 97.541 63.934 C 106.789 85.227 85.178 106.839 63.884 97.591 L 60.335 96.049 C 53.727 93.179 46.224 93.179 39.616 96.049 L 36.066 97.591 C 14.773 106.839 -6.839 85.227 2.409 63.934 L 3.951 60.384 C 6.821 53.776 6.821 46.273 3.951 39.665 L 2.409 36.116 C -6.839 14.822 14.773 -6.789 36.066 2.459 Z" + const val FOLDER_COMPLEX_CLOVER_PATH = + "M 49.85 6.764 L 50.013 6.971 L 50.175 6.764 C 53.422 2.635 58.309 0.207 63.538 0.207 C 65.872 0.207 68.175 0.692 70.381 1.648 L 71.79 2.264 L 71.792 2.265 A 3.46 3.46 0 0 0 74.515 2.265 L 74.517 2.264 L 75.926 1.652 A 17.1 17.1 0 0 1 82.769 0.207 C 88.495 0.207 93.824 3.117 97.022 7.989 C 100.21 12.848 100.697 18.712 98.36 24.087 L 97.749 25.496 V 25.497 A 3.45 3.45 0 0 0 97.749 28.222 V 28.223 L 98.36 29.632 C 100.697 35.007 100.207 40.871 97.022 45.73 A 17.5 17.5 0 0 1 93.264 49.838 L 93.06 50 L 93.264 50.162 A 17.5 17.5 0 0 1 97.022 54.27 C 100.21 59.129 100.697 64.993 98.36 70.368 V 71.778 A 3.45 3.45 0 0 0 97.749 74.503 V 74.504 L 98.36 75.913 C 100.697 81.288 100.207 87.152 97.022 92.011 C 93.824 96.883 88.495 99.793 82.769 99.793 C 80.435 99.793 78.132 99.308 75.926 98.348 L 74.517 97.736 H 74.515 A 3.5 3.5 0 0 0 73.153 97.455 C 72.682 97.455 72.225 97.552 71.792 97.736 H 71.79 L 70.381 98.348 A 17.1 17.1 0 0 1 63.538 99.793 C 58.309 99.793 53.422 97.365 50.175 93.236 L 50.013 93.029 L 49.85 93.236 C 46.603 97.365 41.717 99.793 36.488 99.793 C 34.154 99.793 31.851 99.308 29.645 98.348 L 28.236 97.736 H 28.234 A 3.5 3.5 0 0 0 26.872 97.455 C 26.401 97.455 25.944 97.552 25.511 97.736 H 25.509 L 24.1 98.348 A 17.1 17.1 0 0 1 17.257 99.793 C 11.53 99.793 6.202 96.883 3.004 92.011 C -0.181 87.152 -0.671 81.288 1.661 75.913 L 2.277 74.504 V 74.503 A 3.45 3.45 0 0 0 2.277 71.778 V 71.777 L 1.665 70.368 C -0.671 64.993 -0.181 59.129 3.004 54.274 A 17.5 17.5 0 0 1 6.761 50.162 L 6.965 50 L 6.761 49.838 A 17.5 17.5 0 0 1 3.004 45.73 C -0.181 40.871 -0.671 35.007 1.665 29.632 L 2.277 28.223 V 28.222 A 3.45 3.45 0 0 0 2.277 25.497 V 25.496 L 1.665 24.087 C -0.671 18.712 -0.181 12.848 3.004 7.994 V 7.993 C 6.202 3.117 11.53 0.207 17.257 0.207 C 19.591 0.207 21.894 0.692 24.1 1.652 L 25.509 2.264 L 25.511 2.265 A 3.46 3.46 0 0 0 28.234 2.265 L 28.236 2.264 L 29.645 1.652 A 17.1 17.1 0 0 1 36.488 0.207 C 41.717 0.207 46.603 2.635 49.85 6.764 Z" + const val FOLDER_ARCH_PATH = + "M 50 0 L 72.5 0 A 27.5 27.5 0 0 1 100 27.5 L 100 86.67 A 13.33 13.33 0 0 1 86.67 100 L 13.33 100 A 13.33 13.33 0 0 1 0 86.67 L 0 27.5 A 27.5 27.5 0 0 1 27.5 0 Z" + const val FOLDER_SQUARE_PATH = + "M 50 0 L 83.4 0 A 16.6 16.6 0 0 1 100 16.6 L 100 83.4 A 16.6 16.6 0 0 1 83.4 100 L 16.6 100 A 16.6 16.6 0 0 1 0 83.4 L 0 16.6 A 16.6 16.6 0 0 1 16.6 0 Z" + const val CIRCLE_PATH = "M50 0A50 50,0,1,1,50 100A50 50,0,1,1,50 0" + const val SQUARE_PATH = "M53.689 0.82 L53.689 .82 C67.434 .82 74.306 .82 79.758 2.978 87.649 6.103 93.897 12.351 97.022 20.242 99.18 25.694 99.18 32.566 99.18 46.311 V53.689 C99.18 67.434 99.18 74.306 97.022 79.758 93.897 87.649 87.649 93.897 79.758 97.022 74.306 99.18 67.434 99.18 53.689 99.18 H46.311 C32.566 99.18 25.694 99.18 20.242 97.022 12.351 93.897 6.103 87.649 2.978 79.758 .82 74.306 .82 67.434 .82 53.689 L.82 46.311 C.82 32.566 .82 25.694 2.978 20.242 6.103 12.351 12.351 6.103 20.242 2.978 25.694 .82 32.566 .82 46.311 .82Z" const val FOUR_SIDED_COOKIE_PATH = "M39.888,4.517C46.338 7.319 53.662 7.319 60.112 4.517L63.605 3C84.733 -6.176 106.176 15.268 97 36.395L95.483 39.888C92.681 46.338 92.681 53.662 95.483 60.112L97 63.605C106.176 84.732 84.733 106.176 63.605 97L60.112 95.483C53.662 92.681 46.338 92.681 39.888 95.483L36.395 97C15.267 106.176 -6.176 84.732 3 63.605L4.517 60.112C7.319 53.662 7.319 46.338 4.517 39.888L3 36.395C -6.176 15.268 15.267 -6.176 36.395 3Z" @@ -30,54 +38,49 @@ object ShapesProvider { "M35.209 4.878C36.326 3.895 36.884 3.404 37.397 3.006 44.82 -2.742 55.18 -2.742 62.603 3.006 63.116 3.404 63.674 3.895 64.791 4.878 65.164 5.207 65.351 5.371 65.539 5.529 68.167 7.734 71.303 9.248 74.663 9.932 74.902 9.981 75.147 10.025 75.637 10.113 77.1 10.375 77.831 10.506 78.461 10.66 87.573 12.893 94.032 21.011 94.176 30.412 94.186 31.062 94.151 31.805 94.08 33.293 94.057 33.791 94.045 34.04 94.039 34.285 93.958 37.72 94.732 41.121 96.293 44.18 96.404 44.399 96.522 44.618 96.759 45.056 97.467 46.366 97.821 47.021 98.093 47.611 102.032 56.143 99.727 66.266 92.484 72.24 91.983 72.653 91.381 73.089 90.177 73.961 89.774 74.254 89.572 74.4 89.377 74.548 86.647 76.626 84.477 79.353 83.063 82.483 82.962 82.707 82.865 82.936 82.671 83.395 82.091 84.766 81.8 85.451 81.51 86.033 77.31 94.44 67.977 98.945 58.801 96.994 58.166 96.859 57.451 96.659 56.019 96.259 55.54 96.125 55.3 96.058 55.063 95.998 51.74 95.154 48.26 95.154 44.937 95.998 44.699 96.058 44.46 96.125 43.981 96.259 42.549 96.659 41.834 96.859 41.199 96.994 32.023 98.945 22.69 94.44 18.49 86.033 18.2 85.451 17.909 84.766 17.329 83.395 17.135 82.936 17.038 82.707 16.937 82.483 15.523 79.353 13.353 76.626 10.623 74.548 10.428 74.4 10.226 74.254 9.823 73.961 8.619 73.089 8.017 72.653 7.516 72.24 .273 66.266 -2.032 56.143 1.907 47.611 2.179 47.021 2.533 46.366 3.241 45.056 3.478 44.618 3.596 44.399 3.707 44.18 5.268 41.121 6.042 37.72 5.961 34.285 5.955 34.04 5.943 33.791 5.92 33.293 5.849 31.805 5.814 31.062 5.824 30.412 5.968 21.011 12.427 12.893 21.539 10.66 22.169 10.506 22.9 10.375 24.363 10.113 24.853 10.025 25.098 9.981 25.337 9.932 28.697 9.248 31.833 7.734 34.461 5.529 34.649 5.371 34.836 5.207 35.209 4.878Z" const val ARCH_PATH = "M50 0C77.614 0 100 22.386 100 50C100 85.471 100 86.476 99.9 87.321 99.116 93.916 93.916 99.116 87.321 99.9 86.476 100 85.471 100 83.46 100H16.54C14.529 100 13.524 100 12.679 99.9 6.084 99.116 .884 93.916 .1 87.321 0 86.476 0 85.471 0 83.46L0 50C0 22.386 22.386 0 50 0Z" - const val CIRCLE_KEY = "circle" - const val SQUARE_KEY = "square" - const val FOUR_SIDED_COOKIE_KEY = "four_sided_cookie" - const val SEVEN_SIDED_COOKIE_KEY = "seven_sided_cookie" - const val ARCH_KEY = "arch" + @VisibleForTesting const val CIRCLE_KEY = "circle" + @VisibleForTesting const val SQUARE_KEY = "square" + @VisibleForTesting const val FOUR_SIDED_COOKIE_KEY = "four_sided_cookie" + @VisibleForTesting const val SEVEN_SIDED_COOKIE_KEY = "seven_sided_cookie" + @VisibleForTesting const val ARCH_KEY = "arch" - val iconShapes: Array<IconShapeModel> = + val iconShapes = if (Flags.newCustomizationPickerUi() && LauncherFlags.enableLauncherIconShapes()) { arrayOf( IconShapeModel( key = CIRCLE_KEY, - titleId = R.string.circle_shape_title, + title = "circle", pathString = CIRCLE_PATH, + folderPathString = FOLDER_CLOVER_PATH, ), IconShapeModel( key = SQUARE_KEY, - titleId = R.string.square_shape_title, + title = "square", pathString = SQUARE_PATH, - folderRadiusRatio = 1 / 3f, - shapeRadius = 17.33f, + folderPathString = FOLDER_SQUARE_PATH, ), IconShapeModel( key = FOUR_SIDED_COOKIE_KEY, - titleId = R.string.four_sided_cookie_shape_title, + title = "4 sided cookie", pathString = FOUR_SIDED_COOKIE_PATH, - folderRadiusRatio = 1 / 3f, - shapeRadius = 13.5f, + folderPathString = FOLDER_COMPLEX_CLOVER_PATH, + iconScale = 72f / 83.4f, ), IconShapeModel( key = SEVEN_SIDED_COOKIE_KEY, - titleId = R.string.seven_sided_cookie_shape_title, + title = "7 sided cookie", pathString = SEVEN_SIDED_COOKIE_PATH, + folderPathString = FOLDER_CLOVER_PATH, + iconScale = 72f / 80f, ), IconShapeModel( key = ARCH_KEY, - titleId = R.string.arch_shape_title, + title = "arch", pathString = ARCH_PATH, - shapeRadius = 7.8f, - folderRadiusRatio = 1 / 4f, + folderPathString = FOLDER_ARCH_PATH, ), ) } else { - arrayOf( - IconShapeModel( - key = CIRCLE_KEY, - titleId = R.string.circle_shape_title, - pathString = CIRCLE_PATH, - ) - ) + arrayOf(IconShapeModel(key = CIRCLE_KEY, title = "circle", pathString = CIRCLE_PATH)) } } diff --git a/src/com/android/launcher3/statemanager/BaseState.java b/src/com/android/launcher3/statemanager/BaseState.java index a4d4754db3..ea5415983c 100644 --- a/src/com/android/launcher3/statemanager/BaseState.java +++ b/src/com/android/launcher3/statemanager/BaseState.java @@ -79,7 +79,7 @@ public interface BaseState<T> { * For this state, whether fullscreen and desktop quickswitch carousel are detached. */ default boolean detachDesktopCarousel() { - return false; + return true; } /** diff --git a/src/com/android/launcher3/statemanager/StateManager.java b/src/com/android/launcher3/statemanager/StateManager.java index 1388b84d7a..a125331865 100644 --- a/src/com/android/launcher3/statemanager/StateManager.java +++ b/src/com/android/launcher3/statemanager/StateManager.java @@ -226,13 +226,6 @@ public class StateManager<S extends BaseState<S>, T extends StatefulContainer<S> } } - /** Handles back started in predictive back gesture by passing it to state handlers. */ - public void onBackStarted(S toState) { - for (StateHandler<S> handler : getStateHandlers()) { - handler.onBackStarted(toState); - } - } - /** Handles backProgress in predictive back gesture by passing it to state handlers. */ public void onBackProgressed( S toState, @FloatRange(from = 0.0, to = 1.0) float backProgress) { @@ -265,7 +258,6 @@ public class StateManager<S extends BaseState<S>, T extends StatefulContainer<S> if (listener != null) { listener.onAnimationEnd(new AnimatorSet()); } - onRepeatStateSetAborted(state); return; } else if ((!mConfig.isUserControlled() && animated && mConfig.targetState == state) || mState.shouldPreserveDataStateOnReapply()) { @@ -274,7 +266,6 @@ public class StateManager<S extends BaseState<S>, T extends StatefulContainer<S> if (listener != null) { mConfig.currentAnimation.addListener(listener); } - onRepeatStateSetAborted(state); return; } } @@ -455,15 +446,6 @@ public class StateManager<S extends BaseState<S>, T extends StatefulContainer<S> } } - private void onRepeatStateSetAborted(S state) { - if (enableStateManagerProtoLog()) { - StateManagerProtoLogProxy.logOnRepeatStateSetAborted(state); - } else if (DEBUG) { - Log.d(TAG, "onRepeatStateSetAborted - state: " + state); - } - mContainer.onRepeatStateSetAborted(state); - } - public S getLastState() { return mLastStableState; } @@ -705,9 +687,6 @@ public class StateManager<S extends BaseState<S>, T extends StatefulContainer<S> void setStateWithAnimation( STATE_TYPE toState, StateAnimationConfig config, PendingAnimation animation); - /** Handles back started in predictive back gesture for target state. */ - default void onBackStarted(STATE_TYPE toState) {} - /** Handles backProgress in predictive back gesture for target state. */ default void onBackProgressed( STATE_TYPE toState, @FloatRange(from = 0.0, to = 1.0) float backProgress) {} diff --git a/src/com/android/launcher3/statemanager/StatefulContainer.java b/src/com/android/launcher3/statemanager/StatefulContainer.java index 951391438d..83a2fdcac5 100644 --- a/src/com/android/launcher3/statemanager/StatefulContainer.java +++ b/src/com/android/launcher3/statemanager/StatefulContainer.java @@ -62,14 +62,6 @@ public interface StatefulContainer<STATE_TYPE extends BaseState<STATE_TYPE>> ext default void onStateSetEnd(STATE_TYPE state) { } - /** - * Called when transition to state is aborted because the state is already set - * - * @param state current state of State_Type - */ - default void onRepeatStateSetAborted(STATE_TYPE state) { - } - /** * Called when transition to state starts * diff --git a/src/com/android/launcher3/states/RotationHelper.java b/src/com/android/launcher3/states/RotationHelper.java index c37f259422..9376518ddb 100644 --- a/src/com/android/launcher3/states/RotationHelper.java +++ b/src/com/android/launcher3/states/RotationHelper.java @@ -138,7 +138,7 @@ public class RotationHelper implements LauncherPrefChangeListener, @Override public void onDeviceProfileChanged(DeviceProfile dp) { - onIgnoreAutoRotateChanged(dp.getDeviceProperties().isTablet()); + onIgnoreAutoRotateChanged(dp.isTablet); } private void onIgnoreAutoRotateChanged(boolean ignoreAutoRotateSettings) { diff --git a/src/com/android/launcher3/testing/TestInformationHandler.java b/src/com/android/launcher3/testing/TestInformationHandler.java index f6590464bd..e5105cdc63 100644 --- a/src/com/android/launcher3/testing/TestInformationHandler.java +++ b/src/com/android/launcher3/testing/TestInformationHandler.java @@ -16,7 +16,7 @@ package com.android.launcher3.testing; import static com.android.launcher3.Flags.enableFallbackOverviewInWindow; -import static com.android.launcher3.util.OverviewReleaseFlags.enableGridOnlyOverview; +import static com.android.launcher3.Flags.enableGridOnlyOverview; import static com.android.launcher3.Flags.enableLauncherOverviewInWindow; import static com.android.launcher3.allapps.AllAppsStore.DEFER_UPDATES_TEST; import static com.android.launcher3.config.FeatureFlags.ENABLE_TASKBAR_NAVBAR_UNIFICATION; @@ -194,7 +194,7 @@ public class TestInformationHandler implements ResourceBasedOverride { case TestProtocol.REQUEST_ICON_HEIGHT: { response.putInt(TestProtocol.TEST_INFO_RESPONSE_FIELD, - mDeviceProfile.getAllAppsProfile().getCellHeightPx()); + mDeviceProfile.allAppsCellHeightPx); return response; } @@ -203,7 +203,7 @@ public class TestInformationHandler implements ResourceBasedOverride { return response; case TestProtocol.REQUEST_IS_TABLET: - response.putBoolean(TestProtocol.TEST_INFO_RESPONSE_FIELD, mDeviceProfile.getDeviceProperties().isTablet()); + response.putBoolean(TestProtocol.TEST_INFO_RESPONSE_FIELD, mDeviceProfile.isTablet); return response; case TestProtocol.REQUEST_IS_PREDICTIVE_BACK_SWIPE_ENABLED: response.putBoolean(TestProtocol.TEST_INFO_RESPONSE_FIELD, @@ -230,7 +230,7 @@ public class TestInformationHandler implements ResourceBasedOverride { case TestProtocol.REQUEST_IS_TWO_PANELS: response.putBoolean(TestProtocol.TEST_INFO_RESPONSE_FIELD, - FOLDABLE_SINGLE_PAGE.get() ? false : mDeviceProfile.getDeviceProperties().isTwoPanels()); + FOLDABLE_SINGLE_PAGE.get() ? false : mDeviceProfile.isTwoPanels); return response; case TestProtocol.REQUEST_GET_HAD_NONTEST_EVENTS: diff --git a/src/com/android/launcher3/testing/shared/TestProtocol.java b/src/com/android/launcher3/testing/shared/TestProtocol.java index daa2e40930..142171e0eb 100644 --- a/src/com/android/launcher3/testing/shared/TestProtocol.java +++ b/src/com/android/launcher3/testing/shared/TestProtocol.java @@ -31,7 +31,7 @@ public final class TestProtocol { public static final String SEARCH_RESULT_COMPLETE = "SEARCH_RESULT_COMPLETE"; public static final String LAUNCHER_ACTIVITY_STOPPED_MESSAGE = "TAPL_LAUNCHER_ACTIVITY_STOPPED"; public static final String WALLPAPER_OPEN_ANIMATION_FINISHED_MESSAGE = - "TAPL_WALLPAPER_OPEN_ANIMATION_FINISHED"; + "TAPL_WALLPAPER_OPEN_ANIMATION_FINISHED"; public static final int NORMAL_STATE_ORDINAL = 0; public static final int SPRING_LOADED_STATE_ORDINAL = 1; public static final int OVERVIEW_STATE_ORDINAL = 2; @@ -81,16 +81,16 @@ public final class TestProtocol { public static final String TEST_INFO_PARAM_CELL_SPAN = "cell-span"; public static final String REQUEST_HOME_TO_OVERVIEW_SWIPE_HEIGHT = - "home-to-overview-swipe-height"; + "home-to-overview-swipe-height"; public static final String REQUEST_BACKGROUND_TO_OVERVIEW_SWIPE_HEIGHT = - "background-to-overview-swipe-height"; + "background-to-overview-swipe-height"; public static final String REQUEST_HOME_TO_ALL_APPS_SWIPE_HEIGHT = - "home-to-all-apps-swipe-height"; + "home-to-all-apps-swipe-height"; public static final String REQUEST_ICON_HEIGHT = - "icon-height"; + "icon-height"; public static final String REQUEST_IS_LAUNCHER_INITIALIZED = "is-launcher-initialized"; public static final String REQUEST_IS_LAUNCHER_LAUNCHER_ACTIVITY_STARTED = - "is-launcher-activity-started"; + "is-launcher-activity-started"; public static final String REQUEST_FREEZE_APP_LIST = "freeze-app-list"; public static final String REQUEST_UNFREEZE_APP_LIST = "unfreeze-app-list"; public static final String REQUEST_ENABLE_BLOCK_TIMEOUT = "enable-block-timeout"; @@ -122,22 +122,22 @@ public final class TestProtocol { public static final String REQUEST_HOTSEAT_ICON_NAMES = "get-hotseat-icon-names"; public static final String REQUEST_IS_TABLET = "is-tablet"; public static final String REQUEST_IS_PREDICTIVE_BACK_SWIPE_ENABLED = - "is-predictive-back-swipe-enabled"; + "is-predictive-back-swipe-enabled"; public static final String REQUEST_ENABLE_TASKBAR_NAVBAR_UNIFICATION = - "enable-taskbar-navbar-unification"; + "enable-taskbar-navbar-unification"; public static final String REQUEST_TASKBAR_SHOWN_ON_HOME = - "taskbar-shown-on-home"; + "taskbar-shown-on-home"; public static final String REQUEST_NUM_ALL_APPS_COLUMNS = "num-all-apps-columns"; public static final String REQUEST_IS_TWO_PANELS = "is-two-panel"; public static final String REQUEST_CELL_LAYOUT_BOARDER_HEIGHT = "cell-layout-boarder-height"; public static final String REQUEST_START_DRAG_THRESHOLD = "start-drag-threshold"; public static final String REQUEST_SHELL_DRAG_READY = "shell-drag-ready"; public static final String REQUEST_GET_ACTIVITIES_CREATED_COUNT = - "get-activities-created-count"; + "get-activities-created-count"; public static final String REQUEST_GET_ACTIVITIES = "get-activities"; public static final String REQUEST_HAS_TIS = "has-touch-interaction-service"; public static final String REQUEST_TASKBAR_ALL_APPS_TOP_PADDING = - "taskbar-all-apps-top-padding"; + "taskbar-all-apps-top-padding"; public static final String REQUEST_ALL_APPS_TOP_PADDING = "all-apps-top-padding"; public static final String REQUEST_ALL_APPS_BOTTOM_PADDING = "all-apps-bottom-padding"; public static final String REQUEST_REFRESH_OVERVIEW_TARGET = "refresh-overview-target"; @@ -147,20 +147,15 @@ public final class TestProtocol { public static final String REQUEST_WORKSPACE_COLUMNS_ROWS = "workspace-columns-rows"; public static final String REQUEST_WORKSPACE_CURRENT_PAGE_INDEX = - "workspace-current-page-index"; + "workspace-current-page-index"; public static final String REQUEST_HOTSEAT_CELL_CENTER = "hotseat-cell-center"; public static final String REQUEST_GET_OVERVIEW_TASK_SIZE = "get-overivew-task-size"; public static final String REQUEST_GET_OVERVIEW_GRID_TASK_SIZE = "get-overivew-grid-task-size"; public static final String REQUEST_GET_OVERVIEW_PAGE_SPACING = "get-overview-page-spacing"; - - public static final String REQUEST_GET_BUBBLE_BAR_DROP_TARGET_SIZE = - "request-get-bubble-bar-drop-target-size"; public static final String REQUEST_GET_OVERVIEW_CURRENT_PAGE_INDEX = - "get-overview-current-page-index"; - public static final String REQUEST_GET_OVERVIEW_FIRST_TASKVIEW_INDEX = - "get-overview-first-taskview-index"; + "get-overview-current-page-index"; public static final String REQUEST_GET_SPLIT_SELECTION_ACTIVE = "get-split-selection-active"; public static final String REQUEST_ENABLE_ROTATION = "enable_rotation"; public static final String REQUEST_MODEL_QUEUE_CLEARED = "model-queue-cleared"; @@ -174,26 +169,16 @@ public final class TestProtocol { public static final String REQUEST_MOCK_SENSOR_ROTATION = "mock-sensor-rotation"; public static final String PERMANENT_DIAG_TAG = "TaplTarget"; + public static final String ICON_MISSING = "b/282963545"; public static final String REQUEST_FLAG_ENABLE_GRID_ONLY_OVERVIEW = "enable-grid-only-overview"; public static final String REQUEST_IS_RECENTS_WINDOW_ENABLED = "recents-window-enabled"; public static final String REQUEST_UNSTASH_BUBBLE_BAR_IF_STASHED = - "unstash-bubble-bar-if-stashed"; + "unstash-bubble-bar-if-stashed"; public static final String REQUEST_INJECT_FAKE_TRACKPAD = "inject-fake-trackpad"; public static final String REQUEST_EJECT_FAKE_TRACKPAD = "eject-fake-trackpad"; - public static final String REQUEST_TASKBAR_PRIMARY_DISPLAY_ID = "taskbar-primary-display-id"; - - public static final String REQUEST_DISMISS_MAGNETIC_DETACH_THRESHOLD = - "dismiss-magnetic-detach-threshold"; - - public static final String REQUEST_TASKBAR_ACTION_CORNER_PADDING = - "taskbar-action-corner-padding"; - - public static final String REQUEST_TASKBAR_UNSTASHED_INPUT_AREA = - "taskbar-unstashed-input-area"; - /** Logs {@link Log#d(String, String)} if {@link #sDebugTracing} is true. */ public static void testLogD(String tag, String message) { if (!sDebugTracing) { diff --git a/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java b/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java index 49777a5c90..4509bae5ab 100644 --- a/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java +++ b/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java @@ -16,6 +16,7 @@ package com.android.launcher3.touch; import static com.android.app.animation.Interpolators.scrollInterpolatorForVelocity; +import static com.android.launcher3.Flags.enableMouseInteractionChanges; import static com.android.launcher3.LauncherAnimUtils.SUCCESS_TRANSITION_PROGRESS; import static com.android.launcher3.LauncherAnimUtils.TABLET_BOTTOM_SHEET_SUCCESS_TRANSITION_PROGRESS; import static com.android.launcher3.LauncherAnimUtils.newCancelListener; @@ -23,7 +24,6 @@ import static com.android.launcher3.LauncherState.ALL_APPS; import static com.android.launcher3.LauncherState.NORMAL; import static com.android.launcher3.LauncherState.OVERVIEW; import static com.android.launcher3.MotionEventsUtils.isTrackpadScroll; -import static com.android.launcher3.Utilities.shouldEnableMouseInteractionChanges; import static com.android.launcher3.anim.AnimatorListeners.forEndCallback; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_ALLAPPS; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_HOME; @@ -109,13 +109,9 @@ public abstract class AbstractStateChangeTouchController ignoreSlopWhenSettling = true; } else { directionsToDetectScroll = getSwipeDirection(); - boolean ignoreWhenShownBehindDesktop = !mLauncher.isTopResumedActivity() - && mLauncher.shouldShowHomeBehindDesktop(); boolean ignoreMouseScroll = ev.getSource() == InputDevice.SOURCE_MOUSE - && shouldEnableMouseInteractionChanges( - mLauncher.getWorkspace().getContext()); - if (directionsToDetectScroll == 0 || ignoreMouseScroll - || ignoreWhenShownBehindDesktop) { + && enableMouseInteractionChanges(); + if (directionsToDetectScroll == 0 || ignoreMouseScroll) { mNoIntercept = true; return false; } @@ -315,13 +311,13 @@ public abstract class AbstractStateChangeTouchController // snap to top or bottom using the release velocity } else { float successTransitionProgress = SUCCESS_TRANSITION_PROGRESS; - if (mLauncher.getDeviceProfile().getDeviceProperties().isTablet() + if (mLauncher.getDeviceProfile().isTablet && (mToState == ALL_APPS || mFromState == ALL_APPS)) { successTransitionProgress = TABLET_BOTTOM_SHEET_SUCCESS_TRANSITION_PROGRESS; - } else if (!mLauncher.getDeviceProfile().getDeviceProperties().isTablet() + } else if (!mLauncher.getDeviceProfile().isTablet && mToState == ALL_APPS && mFromState == NORMAL) { successTransitionProgress = AllAppsSwipeController.ALL_APPS_STATE_TRANSITION_MANUAL; - } else if (!mLauncher.getDeviceProfile().getDeviceProperties().isTablet() + } else if (!mLauncher.getDeviceProfile().isTablet && mToState == NORMAL && mFromState == ALL_APPS) { successTransitionProgress = 1 - AllAppsSwipeController.ALL_APPS_STATE_TRANSITION_MANUAL; diff --git a/src/com/android/launcher3/touch/AllAppsSwipeController.java b/src/com/android/launcher3/touch/AllAppsSwipeController.java index fc45a07962..f86fd6ac33 100644 --- a/src/com/android/launcher3/touch/AllAppsSwipeController.java +++ b/src/com/android/launcher3/touch/AllAppsSwipeController.java @@ -22,6 +22,7 @@ import static com.android.app.animation.Interpolators.EMPHASIZED_DECELERATE; import static com.android.app.animation.Interpolators.FINAL_FRAME; import static com.android.app.animation.Interpolators.INSTANT; import static com.android.app.animation.Interpolators.LINEAR; +import static com.android.app.animation.Interpolators.clampToProgress; import static com.android.launcher3.LauncherState.ALL_APPS; import static com.android.launcher3.LauncherState.NORMAL; import static com.android.launcher3.states.StateAnimationConfig.ANIM_ALL_APPS_FADE; @@ -63,9 +64,6 @@ public class AllAppsSwipeController extends AbstractStateChangeTouchController { 1 - ALL_APPS_CONTENT_FADE_MAX_CLAMPING_THRESHOLD, 1 - ALL_APPS_CONTENT_FADE_MIN_CLAMPING_THRESHOLD); - // Depth to apply behind All Apps when it's presented on a sheet. - private static final Interpolator ALL_APPS_SHEET_DEPTH = DECELERATED_EASE; - // ---- Custom interpolators for NORMAL -> ALL_APPS on phones only. ---- public static final float ALL_APPS_STATE_TRANSITION_ATOMIC = 0.3333f; @@ -209,11 +207,17 @@ public class AllAppsSwipeController extends AbstractStateChangeTouchController { if (!config.isUserControlled()) { config.setInterpolator(ANIM_VERTICAL_PROGRESS, EMPHASIZED); } - config.setInterpolator(ANIM_WORKSPACE_SCALE, - Interpolators.reverse(ALL_APPS_SHEET_DEPTH)); - config.setInterpolator(ANIM_HOTSEAT_SCALE, Interpolators.reverse(ALL_APPS_SHEET_DEPTH)); - config.setInterpolator(ANIM_DEPTH, Interpolators.reverse(ALL_APPS_SHEET_DEPTH)); - if (!Flags.allAppsBlur() && launcher.getDeviceProfile().getDeviceProperties().isPhone()) { + config.setInterpolator(ANIM_WORKSPACE_SCALE, DECELERATED_EASE); + config.setInterpolator(ANIM_DEPTH, DECELERATED_EASE); + if (Flags.allAppsBlur()) { + if (!config.isUserControlled()) { + config.setInterpolator(ANIM_DEPTH, EMPHASIZED_DECELERATE); + } + config.setInterpolator(ANIM_WORKSPACE_FADE, + clampToProgress(LINEAR, 1 - ALL_APPS_SCRIM_VISIBLE_THRESHOLD, 1)); + config.setInterpolator(ANIM_HOTSEAT_FADE, + clampToProgress(LINEAR, 1 - ALL_APPS_SCRIM_VISIBLE_THRESHOLD, 1)); + } else if (launcher.getDeviceProfile().isPhone) { // On phones without blur, reveal the workspace and hotseat when leaving All Apps. config.setInterpolator(ANIM_WORKSPACE_FADE, INSTANT); config.setInterpolator(ANIM_HOTSEAT_FADE, INSTANT); @@ -258,10 +262,15 @@ public class AllAppsSwipeController extends AbstractStateChangeTouchController { if (!config.isUserControlled()) { config.setInterpolator(ANIM_VERTICAL_PROGRESS, EMPHASIZED); } - config.setInterpolator(ANIM_WORKSPACE_SCALE, ALL_APPS_SHEET_DEPTH); - config.setInterpolator(ANIM_HOTSEAT_SCALE, ALL_APPS_SHEET_DEPTH); - config.setInterpolator(ANIM_DEPTH, ALL_APPS_SHEET_DEPTH); - if (!Flags.allAppsBlur() && launcher.getDeviceProfile().getDeviceProperties().isPhone()) { + config.setInterpolator(ANIM_WORKSPACE_SCALE, DECELERATED_EASE); + config.setInterpolator(ANIM_DEPTH, DECELERATED_EASE); + if (Flags.allAppsBlur()) { + config.setInterpolator(ANIM_DEPTH, LINEAR); + config.setInterpolator(ANIM_WORKSPACE_FADE, + clampToProgress(LINEAR, 0, ALL_APPS_SCRIM_VISIBLE_THRESHOLD)); + config.setInterpolator(ANIM_HOTSEAT_FADE, + clampToProgress(LINEAR, 0, ALL_APPS_SCRIM_VISIBLE_THRESHOLD)); + } else if (launcher.getDeviceProfile().isPhone) { // On phones without blur, hide the workspace and hotseat when entering All Apps. config.setInterpolator(ANIM_WORKSPACE_FADE, FINAL_FRAME); config.setInterpolator(ANIM_HOTSEAT_FADE, FINAL_FRAME); diff --git a/src/com/android/launcher3/touch/ItemClickHandler.java b/src/com/android/launcher3/touch/ItemClickHandler.java index 1c30338ac1..381d17accb 100644 --- a/src/com/android/launcher3/touch/ItemClickHandler.java +++ b/src/com/android/launcher3/touch/ItemClickHandler.java @@ -15,12 +15,8 @@ */ package com.android.launcher3.touch; -import static android.multiuser.Flags.enableMovingContentIntoPrivateSpace; - import static com.android.launcher3.LauncherConstants.ActivityCodes.REQUEST_BIND_PENDING_APPWIDGET; import static com.android.launcher3.LauncherConstants.ActivityCodes.REQUEST_RECONFIGURE_APPWIDGET; -import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; -import static com.android.launcher3.allapps.AlphabeticalAppsList.PRIVATE_SPACE_PACKAGE; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_FOLDER_OPEN; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_PRIVATE_SPACE_INSTALL_APP_BUTTON_TAP; import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_DISABLED_BY_PUBLISHER; @@ -76,7 +72,6 @@ import com.android.launcher3.widget.WidgetAddFlowHandler; import com.android.launcher3.widget.WidgetManagerHelper; import java.util.Collections; -import java.util.Objects; import java.util.concurrent.CompletableFuture; import java.util.function.Consumer; @@ -160,7 +155,7 @@ public class ItemClickHandler { if (!isApp1Launchable || !isApp2Launchable) { // App pair is unlaunchable due to screen size. boolean isFoldable = InvariantDeviceProfile.INSTANCE.get(launcher) - .supportedProfiles.stream().anyMatch(dp -> dp.getDeviceProperties().isTwoPanels()); + .supportedProfiles.stream().anyMatch(dp -> dp.isTwoPanels); Toast.makeText(launcher, isFoldable ? R.string.app_pair_needs_unfold : R.string.app_pair_unlaunchable_at_screen_size, @@ -397,15 +392,6 @@ public class ItemClickHandler { LAUNCHER_PRIVATE_SPACE_INSTALL_APP_BUTTON_TAP); } } - if (enableMovingContentIntoPrivateSpace() && - Objects.equals(item.getTargetPackage(), PRIVATE_SPACE_PACKAGE) - && item.itemType != ITEM_TYPE_DEEP_SHORTCUT) { - // Only show the popup menu when clicking on the icon itself. - if (v instanceof BubbleTextView btv) { - btv.startLongPressAction(); - return; - } - } if (intent == null) { throw new IllegalArgumentException("Input must have a valid intent"); } diff --git a/src/com/android/launcher3/touch/WorkspaceTouchListener.java b/src/com/android/launcher3/touch/WorkspaceTouchListener.java index d7af33fe2c..620e3bdfeb 100644 --- a/src/com/android/launcher3/touch/WorkspaceTouchListener.java +++ b/src/com/android/launcher3/touch/WorkspaceTouchListener.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. * - * Modifications copyright 2025, Lawnchair + * Modifications copyright 2021, Lawnchair */ package com.android.launcher3.touch; @@ -23,14 +23,13 @@ import static android.view.MotionEvent.ACTION_MOVE; import static android.view.MotionEvent.ACTION_POINTER_UP; import static android.view.MotionEvent.ACTION_UP; +import static com.android.launcher3.Flags.enableMouseInteractionChanges; import static com.android.launcher3.LauncherState.ALL_APPS; import static com.android.launcher3.LauncherState.NORMAL; -import static com.android.launcher3.Utilities.shouldEnableMouseInteractionChanges; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ALLAPPS_CLOSE_TAP_OUTSIDE; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_SPLIT_SELECTION_EXIT_INTERRUPTED; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WORKSPACE_LONGPRESS; -import android.content.Intent; import android.app.admin.DevicePolicyManager; import android.content.Context; import android.graphics.PointF; @@ -57,15 +56,19 @@ import com.android.launcher3.util.TouchUtil; import app.lawnchair.LawnchairLauncher; /** - * Helper class to handle touch on empty space in workspace and show options popup on long press + * Helper class to handle touch on empty space in workspace and show options + * popup on long press */ public class WorkspaceTouchListener extends GestureDetector.SimpleOnGestureListener implements OnTouchListener { /** - * STATE_PENDING_PARENT_INFORM is the state between longPress performed & the next motionEvent. - * This next event is used to send an ACTION_CANCEL to Workspace, to that it clears any - * temporary scroll state. After that, the state is set to COMPLETED, and we just eat up all + * STATE_PENDING_PARENT_INFORM is the state between longPress performed & the + * next motionEvent. + * This next event is used to send an ACTION_CANCEL to Workspace, to that it + * clears any + * temporary scroll state. After that, the state is set to COMPLETED, and we + * just eat up all * subsequent motion events. */ private static final int STATE_CANCELLED = 0; @@ -124,15 +127,6 @@ public class WorkspaceTouchListener extends GestureDetector.SimpleOnGestureListe maybeShowMenu(); return true; } - - // When home is shown behind tasks, then a touch on the workspace should go home. - if (mLauncher.shouldShowHomeBehindDesktop() && !mLauncher.isTopResumedActivity()) { - Intent intent = new Intent(Intent.ACTION_MAIN) - .addCategory(Intent.CATEGORY_HOME) - .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - mLauncher.startActivity(intent); - return true; - } } mWorkspace.onTouchEvent(ev); @@ -154,7 +148,8 @@ public class WorkspaceTouchListener extends GestureDetector.SimpleOnGestureListe final boolean result; if (mLongPressState == STATE_COMPLETED) { - // We have handled the touch, so workspace does not need to know anything anymore. + // We have handled the touch, so workspace does not need to know anything + // anymore. result = true; } else if (mLongPressState == STATE_REQUESTED) { mWorkspace.onTouchEvent(ev); @@ -167,15 +162,15 @@ public class WorkspaceTouchListener extends GestureDetector.SimpleOnGestureListe result = true; } else { - // We don't want to handle touch unless we're in AllApps bottom sheet, let workspace - // handle it as usual. Also, let workspace handle cancel/up events to settle correctly. - result = isInAllAppsBottomSheet && action != ACTION_CANCEL && action != ACTION_UP; + // We don't want to handle touch unless we're in AllApps bottom sheet, let + // workspace + // handle it as usual. + result = isInAllAppsBottomSheet; } if (action == ACTION_UP || action == ACTION_POINTER_UP) { if (!mWorkspace.isHandlingTouch()) { - final CellLayout currentPage = - (CellLayout) mWorkspace.getChildAt(mWorkspace.getCurrentPage()); + final CellLayout currentPage = (CellLayout) mWorkspace.getChildAt(mWorkspace.getCurrentPage()); if (currentPage != null) { mWorkspace.onWallpaperTap(ev); } @@ -213,8 +208,7 @@ public class WorkspaceTouchListener extends GestureDetector.SimpleOnGestureListe @Override public void onLongPress(MotionEvent event) { - if (event.getSource() == InputDevice.SOURCE_MOUSE && shouldEnableMouseInteractionChanges( - mWorkspace.getContext())) { + if (event.getSource() == InputDevice.SOURCE_MOUSE && enableMouseInteractionChanges()) { // Stop mouse long press events from showing the menu. return; } diff --git a/src/com/android/launcher3/util/ApiWrapper.java b/src/com/android/launcher3/util/ApiWrapper.java index 3ddf4e9b6a..d065e309ed 100644 --- a/src/com/android/launcher3/util/ApiWrapper.java +++ b/src/com/android/launcher3/util/ApiWrapper.java @@ -23,11 +23,11 @@ import android.app.Person; import android.app.role.RoleManager; import android.content.Context; import android.content.Intent; +import android.content.pm.ApplicationInfo; import android.content.pm.LauncherActivityInfo; import android.content.pm.LauncherApps; import android.content.pm.LauncherUserInfo; import android.content.pm.ShortcutInfo; -import android.graphics.Bitmap; import android.graphics.drawable.ColorDrawable; import android.net.Uri; import android.os.Build; @@ -35,26 +35,21 @@ import android.os.Process; import android.os.UserHandle; import android.os.UserManager; import android.util.ArrayMap; -import android.view.SurfaceControlViewHost; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.core.content.ContextCompat; -import com.android.launcher3.BaseActivity; import com.android.launcher3.BuildConfig; import com.android.launcher3.Launcher; import com.android.launcher3.Utilities; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppComponent; import com.android.launcher3.dagger.LauncherAppSingleton; -import com.android.launcher3.icons.BitmapRenderer; -import com.android.launcher3.util.TouchController; import java.util.Collections; import java.util.List; import java.util.Map; -import java.util.function.Supplier; import javax.inject.Inject; @@ -234,12 +229,19 @@ public class ApiWrapper { } } - @Nullable - public TouchController createStatusBarTouchController( - BaseActivity launcher, - Supplier<Boolean> isEnabledCheck - ) { - return null; + /** + * Returns a hash to uniquely identify a particular version of appInfo + */ + public String getApplicationInfoHash(@NonNull ApplicationInfo appInfo) { + // The hashString in source dir changes with every install + return appInfo.sourceDir; + } + + /** + * Returns the round icon resource Id if defined by the app + */ + public int getRoundIconRes(@NonNull ApplicationInfo appInfo) { + return 0; } /** @@ -249,11 +251,6 @@ public class ApiWrapper { return false; } - /** Captures a snapshot of the host content as a bitmap */ - public Bitmap captureSnapshot(SurfaceControlViewHost host, int width, int height) { - return BitmapRenderer.createHardwareBitmap(width, height, host.getView()::draw); - } - private static class NoopDrawable extends ColorDrawable { @Override public int getIntrinsicHeight() { diff --git a/src/com/android/launcher3/util/BaseContext.kt b/src/com/android/launcher3/util/BaseContext.kt index aa7362474d..8aa10f3688 100644 --- a/src/com/android/launcher3/util/BaseContext.kt +++ b/src/com/android/launcher3/util/BaseContext.kt @@ -34,8 +34,6 @@ import androidx.savedstate.SavedStateRegistryController import androidx.savedstate.setViewTreeSavedStateRegistryOwner import com.android.launcher3.DeviceProfile.OnDeviceProfileChangeListener import com.android.launcher3.Utilities -import com.android.launcher3.dagger.ActivityContextComponent -import com.android.launcher3.dagger.LauncherComponentProvider.appComponent import com.android.launcher3.views.ActivityContext /** @@ -61,13 +59,6 @@ constructor(base: Context, themeResId: Int, private val destroyOnDetach: Boolean private val viewCache = ViewCache() - private val activityComponentLazy: ActivityContextComponent by lazy { - appComponent.activityContextComponentBuilder.activityContext(this).build() - as ActivityContextComponent - } - - override fun getActivityComponent(): ActivityContextComponent = activityComponentLazy - init { Executors.MAIN_EXECUTOR.execute { savedStateRegistryController.performAttach() diff --git a/src/com/android/launcher3/util/CellContentDimensions.kt b/src/com/android/launcher3/util/CellContentDimensions.kt index 6f12146ce7..5059c2f98e 100644 --- a/src/com/android/launcher3/util/CellContentDimensions.kt +++ b/src/com/android/launcher3/util/CellContentDimensions.kt @@ -21,8 +21,7 @@ import kotlin.math.max class CellContentDimensions( var iconSizePx: Int, var iconDrawablePaddingPx: Int, - var iconTextSizePx: Int, - var maxLineCount: Int, + var iconTextSizePx: Int ) { /** * This method goes through some steps to reduce the padding between icon and label, icon size @@ -33,13 +32,7 @@ class CellContentDimensions( fun resizeToFitCellHeight(cellHeightPx: Int, iconSizeSteps: IconSizeSteps): Int { var cellContentHeight = getCellContentHeight() - // Step 1, Decrease the number of lines of text that can be shown within the cell. - while (cellContentHeight > cellHeightPx && maxLineCount >= 2) { - --maxLineCount - cellContentHeight = getCellContentHeight() - } - - // Step 2. Decrease drawable padding + // Step 1. Decrease drawable padding if (cellContentHeight > cellHeightPx) { val diff = cellContentHeight - cellHeightPx iconDrawablePaddingPx = max(0, iconDrawablePaddingPx - diff) @@ -50,11 +43,11 @@ class CellContentDimensions( (iconTextSizePx > iconSizeSteps.minimumIconLabelSize || iconSizePx > iconSizeSteps.minimumIconSize()) && cellContentHeight > cellHeightPx ) { - // Step 3. Decrease icon size + // Step 2. Decrease icon size iconSizePx = iconSizeSteps.getNextLowerIconSize(iconSizePx) cellContentHeight = getCellContentHeight() - // Step 4. Decrease label size + // Step 3. Decrease label size if ( cellContentHeight > cellHeightPx && iconTextSizePx > iconSizeSteps.minimumIconLabelSize @@ -62,7 +55,7 @@ class CellContentDimensions( iconTextSizePx = max( iconSizeSteps.minimumIconLabelSize, - iconTextSizePx - IconSizeSteps.TEXT_STEP, + iconTextSizePx - IconSizeSteps.TEXT_STEP ) cellContentHeight = getCellContentHeight() } @@ -85,6 +78,6 @@ class CellContentDimensions( /** Calculate new cellContentHeight */ fun getCellContentHeight(): Int { val iconTextHeight = Utilities.calculateTextHeight(iconTextSizePx.toFloat()) - return iconSizePx + iconDrawablePaddingPx + iconTextHeight * maxLineCount + return iconSizePx + iconDrawablePaddingPx + iconTextHeight } } diff --git a/src/com/android/launcher3/util/DimensionUtils.kt b/src/com/android/launcher3/util/DimensionUtils.kt index 76df206127..821dda789f 100644 --- a/src/com/android/launcher3/util/DimensionUtils.kt +++ b/src/com/android/launcher3/util/DimensionUtils.kt @@ -29,16 +29,16 @@ object DimensionUtils { */ @JvmStatic fun getTaskbarPhoneDimensions( - deviceProfile: DeviceProfile, - res: Resources, - isPhoneMode: Boolean, - isGestureNav: Boolean, + deviceProfile: DeviceProfile, + res: Resources, + isPhoneMode: Boolean, + isGestureNav: Boolean, ): Point { val p = Point() // Taskbar for large screen if (!isPhoneMode) { p.x = ViewGroup.LayoutParams.MATCH_PARENT - p.y = deviceProfile.taskbarProfile.height + p.y = deviceProfile.taskbarHeight return p } @@ -50,7 +50,7 @@ object DimensionUtils { } // Taskbar on phone, portrait - if (!deviceProfile.deviceProperties.isLandscape) { + if (!deviceProfile.isLandscape) { p.x = ViewGroup.LayoutParams.MATCH_PARENT p.y = res.getDimensionPixelSize(R.dimen.taskbar_phone_size) return p diff --git a/src/com/android/launcher3/util/DisplayController.java b/src/com/android/launcher3/util/DisplayController.java index 5f3c63e202..d866981e0a 100644 --- a/src/com/android/launcher3/util/DisplayController.java +++ b/src/com/android/launcher3/util/DisplayController.java @@ -18,15 +18,16 @@ package com.android.launcher3.util; import static android.view.Display.DEFAULT_DISPLAY; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION; -import static com.android.launcher3.Flags.enableScalabilityForDesktopExperience; -import static com.android.launcher3.InvariantDeviceProfile.TYPE_DESKTOP; +import static com.android.launcher3.Flags.enableOverviewOnConnectedDisplays; import static com.android.launcher3.InvariantDeviceProfile.TYPE_MULTI_DISPLAY; import static com.android.launcher3.InvariantDeviceProfile.TYPE_PHONE; import static com.android.launcher3.InvariantDeviceProfile.TYPE_TABLET; import static com.android.launcher3.LauncherPrefs.TASKBAR_PINNING; +import static com.android.launcher3.LauncherPrefs.TASKBAR_PINNING_KEY; +import static com.android.launcher3.Utilities.dpiFromPx; +import static com.android.launcher3.LauncherPrefs.TASKBAR_PINNING_DESKTOP_MODE_KEY; import static com.android.launcher3.LauncherPrefs.TASKBAR_PINNING_IN_DESKTOP_MODE; import static com.android.launcher3.LauncherPrefs.TASKBAR_PINNING_KEY; -import static com.android.launcher3.Utilities.ATLEAST_S; import static com.android.launcher3.Utilities.dpiFromPx; import static com.android.launcher3.config.FeatureFlags.enableTaskbarPinning; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; @@ -43,7 +44,6 @@ import android.graphics.Rect; import android.hardware.display.DisplayManager; import android.util.ArrayMap; import android.util.ArraySet; -import android.util.DisplayMetrics; import android.util.Log; import android.util.SparseArray; import android.view.Display; @@ -57,7 +57,6 @@ import androidx.annotation.VisibleForTesting; import com.android.launcher3.InvariantDeviceProfile.DeviceType; import com.android.launcher3.LauncherPrefChangeListener; import com.android.launcher3.LauncherPrefs; -import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppComponent; @@ -107,12 +106,10 @@ public class DisplayController implements DesktopVisibilityListener { public static final int CHANGE_TASKBAR_PINNING = 1 << 5; public static final int CHANGE_DESKTOP_MODE = 1 << 6; public static final int CHANGE_SHOW_LOCKED_TASKBAR = 1 << 7; - public static final int CHANGE_NIGHT_MODE = 1 << 8; public static final int CHANGE_ALL = CHANGE_ACTIVE_SCREEN | CHANGE_ROTATION | CHANGE_DENSITY | CHANGE_SUPPORTED_BOUNDS | CHANGE_NAVIGATION_MODE - | CHANGE_TASKBAR_PINNING | CHANGE_DESKTOP_MODE | CHANGE_SHOW_LOCKED_TASKBAR - | CHANGE_NIGHT_MODE; + | CHANGE_TASKBAR_PINNING | CHANGE_DESKTOP_MODE | CHANGE_SHOW_LOCKED_TASKBAR; private static final String ACTION_OVERLAY_CHANGED = "android.intent.action.OVERLAY_CHANGED"; private static final String TARGET_OVERLAY_PACKAGE = "android"; @@ -131,7 +128,6 @@ public class DisplayController implements DesktopVisibilityListener { // TARGET_OVERLAY_PACKAGE and ACTION_OVERLAY_CHANGED. private final SimpleBroadcastReceiver mReceiver; - private final boolean mIsDesktopFormFactor; private boolean mDestroyed = false; @Inject @@ -142,15 +138,16 @@ public class DisplayController implements DesktopVisibilityListener { mAppContext = context; mWMProxy = wmProxy; - mIsDesktopFormFactor = enableScalabilityForDesktopExperience() - && mAppContext.getResources().getBoolean(R.bool.desktop_form_factor); - if (enableTaskbarPinning()) { LauncherPrefChangeListener prefListener = key -> { Info info = getInfo(); boolean isTaskbarPinningChanged = TASKBAR_PINNING_KEY.equals(key) && info.mIsTaskbarPinned != prefs.get(TASKBAR_PINNING); - if (isTaskbarPinningChanged) { + boolean isTaskbarPinningDesktopModeChanged = + TASKBAR_PINNING_DESKTOP_MODE_KEY.equals(key) + && info.mIsTaskbarPinnedInDesktopMode != prefs.get( + TASKBAR_PINNING_IN_DESKTOP_MODE); + if (isTaskbarPinningChanged || isTaskbarPinningDesktopModeChanged) { notifyConfigChange(DEFAULT_DISPLAY); } }; @@ -173,15 +170,12 @@ public class DisplayController implements DesktopVisibilityListener { FileLog.i(TAG, "(CTOR) perDisplayBounds: " + defaultPerDisplayInfo.mInfo.mPerDisplayBounds); - if (mWMProxy.enableOverviewOnConnectedDisplays()) { + if (enableOverviewOnConnectedDisplays()) { final DisplayManager.DisplayListener displayListener = new DisplayManager.DisplayListener() { @Override public void onDisplayAdded(int displayId) { - Display display = displayManager.getDisplay(displayId); - if (display != null) { - getOrCreatePerDisplayInfo(display); - } + getOrCreatePerDisplayInfo(displayManager.getDisplay(displayId)); } @Override @@ -216,7 +210,7 @@ public class DisplayController implements DesktopVisibilityListener { * Returns the current navigation mode */ public static NavigationMode getNavigationMode(Context context) { - return getInfo(context).getNavigationMode(); + return INSTANCE.get(context).getInfo().getNavigationMode(); } /** @@ -225,7 +219,7 @@ public class DisplayController implements DesktopVisibilityListener { * @return {@code true} if transient, {@code false} if persistent. */ public static boolean isTransientTaskbar(Context context) { - return getInfo(context).isTransientTaskbar(); + return INSTANCE.get(context).getInfo().isTransientTaskbar(); } /** @@ -248,28 +242,21 @@ public class DisplayController implements DesktopVisibilityListener { * Returns whether the taskbar is pinned in gesture navigation mode. */ public static boolean isPinnedTaskbar(Context context) { - return getInfo(context).isPinnedTaskbar(); + return INSTANCE.get(context).getInfo().isPinnedTaskbar(); } /** * Returns whether the taskbar is pinned in gesture navigation mode. */ public static boolean isInDesktopMode(Context context) { - return getInfo(context).isInDesktopMode(); - } - - /** - * Returns whether the display is in desktop-first mode. - */ - public static boolean isInDesktopFirstMode(Context context) { - return getInfo(context).isInDesktopFirstMode(); + return INSTANCE.get(context).getInfo().isInDesktopMode(); } /** * Returns whether the taskbar is forced to be pinned when home is visible. */ public static boolean showLockedTaskbarOnHome(Context context) { - return getInfo(context).showLockedTaskbarOnHome(); + return INSTANCE.get(context).getInfo().showLockedTaskbarOnHome(); } /** @@ -277,22 +264,7 @@ public class DisplayController implements DesktopVisibilityListener { * on the display because the display is a freeform display. */ public static boolean showDesktopTaskbarForFreeformDisplay(Context context) { - return getInfo(context).showDesktopTaskbarForFreeformDisplay(); - } - - // Gets the info for whatever display the context is associated with or the default display - // if it is not associated with a display. - private static Info getInfo(Context context) { - DisplayController controller = INSTANCE.get(context); - if (controller.mWMProxy.enableOverviewOnConnectedDisplays()) { - Display display = controller.mWMProxy.getDisplay(context); - int displayId = display.getDisplayId(); - Info info = controller.getInfoForDisplay(displayId); - if (info != null) { - return info; - } - } - return controller.getInfo(); + return INSTANCE.get(context).getInfo().showDesktopTaskbarForFreeformDisplay(); } @Override @@ -343,8 +315,7 @@ public class DisplayController implements DesktopVisibilityListener { || mWMProxy.showLockedTaskbarOnHome(windowContext) != info.showLockedTaskbarOnHome() || mWMProxy.showDesktopTaskbarForFreeformDisplay(windowContext) - != info.showDesktopTaskbarForFreeformDisplay() - || config.isNightModeActive() != info.mIsNightModeActive) { + != info.showDesktopTaskbarForFreeformDisplay()) { notifyConfigChange(displayId); } } @@ -380,7 +351,7 @@ public class DisplayController implements DesktopVisibilityListener { } public @Nullable Info getInfoForDisplay(int displayId) { - if (mWMProxy.enableOverviewOnConnectedDisplays()) { + if (enableOverviewOnConnectedDisplays()) { PerDisplayInfo perDisplayInfo = mPerDisplayInfo.get(displayId); if (perDisplayInfo != null) { return perDisplayInfo.mInfo; @@ -423,6 +394,8 @@ public class DisplayController implements DesktopVisibilityListener { "(CHANGE_SUPPORTED_BOUNDS) perDisplayBounds: " + newInfo.mPerDisplayBounds); } if ((newInfo.mIsTaskbarPinned != oldInfo.mIsTaskbarPinned) + || (newInfo.mIsTaskbarPinnedInDesktopMode + != oldInfo.mIsTaskbarPinnedInDesktopMode) || newInfo.isPinnedTaskbar() != oldInfo.isPinnedTaskbar()) { change |= CHANGE_TASKBAR_PINNING; } @@ -432,9 +405,6 @@ public class DisplayController implements DesktopVisibilityListener { if (newInfo.mShowLockedTaskbarOnHome != oldInfo.mShowLockedTaskbarOnHome) { change |= CHANGE_SHOW_LOCKED_TASKBAR; } - if (newInfo.mIsNightModeActive != oldInfo.mIsNightModeActive) { - change |= CHANGE_NIGHT_MODE; - } if (DEBUG) { Log.d(TAG, "handleInfoChange - change: " + getChangeFlagsString(change)); @@ -443,15 +413,13 @@ public class DisplayController implements DesktopVisibilityListener { } private Info getNewInfo(Info oldInfo, Context displayInfoContext) { - Info newInfo = new Info(displayInfoContext, mIsDesktopFormFactor, mWMProxy, - oldInfo.mPerDisplayBounds, DisplayMetrics.DENSITY_DEVICE_STABLE); + Info newInfo = new Info(displayInfoContext, mWMProxy, oldInfo.mPerDisplayBounds); if (newInfo.densityDpi != oldInfo.densityDpi || newInfo.fontScale != oldInfo.fontScale || newInfo.getNavigationMode() != oldInfo.getNavigationMode()) { // Cache may not be valid anymore, recreate without cache - newInfo = new Info(displayInfoContext, mIsDesktopFormFactor, mWMProxy, - mWMProxy.estimateInternalDisplayBounds(displayInfoContext), - DisplayMetrics.DENSITY_DEVICE_STABLE); + newInfo = new Info(displayInfoContext, mWMProxy, + mWMProxy.estimateInternalDisplayBounds(displayInfoContext)); } return newInfo; } @@ -475,8 +443,7 @@ public class DisplayController implements DesktopVisibilityListener { } } - @VisibleForTesting - protected PerDisplayInfo getOrCreatePerDisplayInfo(Display display) { + private PerDisplayInfo getOrCreatePerDisplayInfo(Display display) { int displayId = display.getDisplayId(); PerDisplayInfo perDisplayInfo = mPerDisplayInfo.get(displayId); if (perDisplayInfo != null) { @@ -487,15 +454,9 @@ public class DisplayController implements DesktopVisibilityListener { String.format("getOrCreatePerDisplayInfo - no cached value found for %d", displayId)); } - Context windowContext; - if (ATLEAST_S) { - windowContext = mAppContext.createWindowContext(display, TYPE_APPLICATION, null); - } else { - windowContext = mAppContext.createDisplayContext(display); - } - Info info = new Info(windowContext, mIsDesktopFormFactor, mWMProxy, - mWMProxy.estimateInternalDisplayBounds(windowContext), - DisplayMetrics.DENSITY_DEVICE_STABLE); + Context windowContext = mAppContext.createWindowContext(display, TYPE_APPLICATION, null); + Info info = new Info(windowContext, mWMProxy, + mWMProxy.estimateInternalDisplayBounds(windowContext)); perDisplayInfo = new PerDisplayInfo(displayId, windowContext, info); mPerDisplayInfo.put(displayId, perDisplayInfo); return perDisplayInfo; @@ -505,8 +466,7 @@ public class DisplayController implements DesktopVisibilityListener { * Clean up resources for the given display id. * @param displayId The display id */ - @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) - protected void removePerDisplayInfo(int displayId) { + void removePerDisplayInfo(int displayId) { PerDisplayInfo info = mPerDisplayInfo.get(displayId); if (info == null) return; info.cleanup(); @@ -524,7 +484,6 @@ public class DisplayController implements DesktopVisibilityListener { // Configuration property public final float fontScale; private final int densityDpi; - private final float mStableDensityScaleFactor; private final NavigationMode navigationMode; private final PortraitSize mScreenSizeDp; @@ -535,33 +494,24 @@ public class DisplayController implements DesktopVisibilityListener { new ArrayMap<>(); private final boolean mIsTaskbarPinned; + private final boolean mIsTaskbarPinnedInDesktopMode; private final boolean mIsInDesktopMode; - private final boolean mIsInDesktopFirstMode; private final boolean mShowLockedTaskbarOnHome; private final boolean mIsHomeVisible; - private final boolean mIsDesktopFormFactor; private final boolean mShowDesktopTaskbarForFreeformDisplay; - private final boolean mIsNightModeActive; - public Info(Context displayInfoContext) { /* don't need system overrides for external displays */ - this(displayInfoContext, enableScalabilityForDesktopExperience() - && displayInfoContext.getResources().getBoolean( - R.bool.desktop_form_factor), - new WindowManagerProxy(), new ArrayMap<>(), - DisplayMetrics.DENSITY_DEVICE_STABLE); + this(displayInfoContext, new WindowManagerProxy(), new ArrayMap<>()); } // Used for testing public Info(Context displayInfoContext, - boolean isDesktopFormFactor, WindowManagerProxy wmProxy, - Map<CachedDisplayInfo, List<WindowBounds>> perDisplayBoundsCache, - int defaultDensityDpi) { + Map<CachedDisplayInfo, List<WindowBounds>> perDisplayBoundsCache) { CachedDisplayInfo displayInfo = wmProxy.getDisplayInfo(displayInfoContext); normalizedDisplayInfo = displayInfo.normalize(wmProxy); rotation = displayInfo.rotation; @@ -571,10 +521,8 @@ public class DisplayController implements DesktopVisibilityListener { Configuration config = displayInfoContext.getResources().getConfiguration(); fontScale = config.fontScale; densityDpi = config.densityDpi; - mStableDensityScaleFactor = (float) defaultDensityDpi / DisplayMetrics.DENSITY_DEFAULT; mScreenSizeDp = new PortraitSize(config.screenHeightDp, config.screenWidthDp); navigationMode = wmProxy.getNavigationMode(displayInfoContext); - mIsNightModeActive = config.isNightModeActive(); mPerDisplayBounds.putAll(perDisplayBoundsCache); List<WindowBounds> cachedValue = getCurrentBounds(); @@ -613,13 +561,13 @@ public class DisplayController implements DesktopVisibilityListener { } mIsTaskbarPinned = LauncherPrefs.get(displayInfoContext).get(TASKBAR_PINNING); + mIsTaskbarPinnedInDesktopMode = LauncherPrefs.get(displayInfoContext).get( + TASKBAR_PINNING_IN_DESKTOP_MODE); mIsInDesktopMode = wmProxy.isInDesktopMode(DEFAULT_DISPLAY); - mIsInDesktopFirstMode = wmProxy.isDisplayDesktopFirst(displayInfoContext); mShowLockedTaskbarOnHome = wmProxy.showLockedTaskbarOnHome(displayInfoContext); mShowDesktopTaskbarForFreeformDisplay = wmProxy.showDesktopTaskbarForFreeformDisplay( displayInfoContext); - mIsHomeVisible = wmProxy.isHomeVisible(); - mIsDesktopFormFactor = isDesktopFormFactor; + mIsHomeVisible = wmProxy.isHomeVisible(displayInfoContext); } /** @@ -646,7 +594,7 @@ public class DisplayController implements DesktopVisibilityListener { return false; } if (mIsInDesktopMode) { - return false; + return !mIsTaskbarPinnedInDesktopMode; } return !mIsTaskbarPinned; } @@ -667,13 +615,6 @@ public class DisplayController implements DesktopVisibilityListener { return mIsInDesktopMode; } - /** - * Returns whether the display is in desktop-first mode. - */ - public boolean isInDesktopFirstMode() { - return mIsInDesktopFirstMode; - } - /** * Returns {@code true} if the bounds represent a tablet. */ @@ -710,15 +651,7 @@ public class DisplayController implements DesktopVisibilityListener { return densityDpi; } - public float getStableDensityScaleFactor() { - return mStableDensityScaleFactor; - } - public @DeviceType int getDeviceType() { - if (mIsDesktopFormFactor) { - return TYPE_DESKTOP; - } - int flagPhone = 1 << 0; int flagTablet = 1 << 1; @@ -729,13 +662,14 @@ public class DisplayController implements DesktopVisibilityListener { //type = flagTablet; // pE-TODO(n/a): Testing DC! if (type == (flagPhone | flagTablet)) { - Log.d("LC-DisplayController", "Device has multiple display (Phone|Tablet)"); + // device has profiles supporting both phone and tablet modes + Log.d("LC-DisplayController", "Device has profiles supporting both phone and tablet modes"); return TYPE_MULTI_DISPLAY; } else if (type == flagTablet) { - Log.d("LC-DisplayController", "Device has tablet profile (Tablet)"); + Log.d("LC-DisplayController", "Device has tablet profile"); return TYPE_TABLET; } else { - Log.d("LC-DisplayController", "Device has phone profile (Phone)"); + Log.d("LC-DisplayController", "Device has phone profile"); return TYPE_PHONE; } } @@ -770,7 +704,6 @@ public class DisplayController implements DesktopVisibilityListener { appendFlag(result, change, CHANGE_TASKBAR_PINNING, "CHANGE_TASKBAR_VARIANT"); appendFlag(result, change, CHANGE_DESKTOP_MODE, "CHANGE_DESKTOP_MODE"); appendFlag(result, change, CHANGE_SHOW_LOCKED_TASKBAR, "CHANGE_SHOW_LOCKED_TASKBAR"); - appendFlag(result, change, CHANGE_NIGHT_MODE, "CHANGE_NIGHT_MODE"); return result.toString(); } @@ -793,8 +726,8 @@ public class DisplayController implements DesktopVisibilityListener { pw.println(" densityDpi=" + info.densityDpi); pw.println(" navigationMode=" + info.getNavigationMode().name()); pw.println(" isTaskbarPinned=" + info.mIsTaskbarPinned); + pw.println(" isTaskbarPinnedInDesktopMode=" + info.mIsTaskbarPinnedInDesktopMode); pw.println(" isInDesktopMode=" + info.mIsInDesktopMode); - pw.println(" isInDesktopFirstMode=" + info.isInDesktopFirstMode()); pw.println(" showLockedTaskbarOnHome=" + info.showLockedTaskbarOnHome()); pw.println(" currentSize=" + info.currentSize); info.mPerDisplayBounds.forEach((key, value) -> pw.println( @@ -828,8 +761,7 @@ public class DisplayController implements DesktopVisibilityListener { } } - @VisibleForTesting - protected class PerDisplayInfo implements ComponentCallbacks { + private class PerDisplayInfo implements ComponentCallbacks { final int mDisplayId; final CopyOnWriteArrayList<DisplayInfoChangeListener> mListeners = new CopyOnWriteArrayList<>(); diff --git a/src/com/android/launcher3/util/Executors.java b/src/com/android/launcher3/util/Executors.java index 23db7a1b28..296fc8ad27 100644 --- a/src/com/android/launcher3/util/Executors.java +++ b/src/com/android/launcher3/util/Executors.java @@ -66,12 +66,6 @@ public class Executors { public static final LooperExecutor UI_HELPER_EXECUTOR = new LooperExecutor("UiThreadHelper", Process.THREAD_PRIORITY_FOREGROUND); - /** - * A background executor for running tasks that are not time sensitive, typically for data - * transformations. - */ - public static final LooperExecutor DATA_HELPER_EXECUTOR = - new LooperExecutor("DataThreadHelper", Process.THREAD_PRIORITY_DEFAULT); /** A background executor to preinflate views. */ public static final ExecutorService VIEW_PREINFLATION_EXECUTOR = diff --git a/src/com/android/launcher3/util/InstantAppResolver.java b/src/com/android/launcher3/util/InstantAppResolver.java index edb93f448e..bdb5e775ad 100644 --- a/src/com/android/launcher3/util/InstantAppResolver.java +++ b/src/com/android/launcher3/util/InstantAppResolver.java @@ -18,23 +18,20 @@ package com.android.launcher3.util; import android.content.Context; import android.content.pm.ApplicationInfo; +import android.content.pm.PackageManager; +import android.util.Log; -import com.android.launcher3.dagger.LauncherComponentProvider; +import com.android.launcher3.R; import com.android.launcher3.model.data.AppInfo; -import javax.inject.Inject; - /** * A wrapper class to access instant app related APIs. */ -public class InstantAppResolver { - - @Inject - public InstantAppResolver() { - } +public class InstantAppResolver implements ResourceBasedOverride { public static InstantAppResolver newInstance(Context context) { - return LauncherComponentProvider.get(context).getInstantAppResolver(); + return Overrides.getObject( + InstantAppResolver.class, context, R.string.instant_app_resolver_class); } public boolean isInstantApp(ApplicationInfo info) { diff --git a/src/com/android/launcher3/util/ItemInflater.kt b/src/com/android/launcher3/util/ItemInflater.kt index 8bcc52a582..acb3c4ee12 100644 --- a/src/com/android/launcher3/util/ItemInflater.kt +++ b/src/com/android/launcher3/util/ItemInflater.kt @@ -54,36 +54,31 @@ class ItemInflater<T>( WidgetInflater(context, LauncherAppState.getInstance(context).isSafeModeEnabled) @JvmOverloads - fun inflateItem( - item: ItemInfo, - nullableParent: ViewGroup? = null, - container: Int = item.container, - ): View? { + fun inflateItem(item: ItemInfo, writer: ModelWriter, nullableParent: ViewGroup? = null): View? { val parent = nullableParent ?: defaultParent when (item.itemType) { Favorites.ITEM_TYPE_APPLICATION, Favorites.ITEM_TYPE_DEEP_SHORTCUT, Favorites.ITEM_TYPE_SEARCH_ACTION -> { var info = - when (item) { - is WorkspaceItemFactory -> item.makeWorkspaceItem(context) - is WorkspaceItemInfo -> item - else -> return null + if (item is WorkspaceItemFactory) { + (item as WorkspaceItemFactory).makeWorkspaceItem(context) + } else { + item as WorkspaceItemInfo } - if (container == Favorites.CONTAINER_ALL_APPS_PREDICTION) { + if (info.container == Favorites.CONTAINER_PREDICTION) { // Came from all apps prediction row -- make a copy info = WorkspaceItemInfo(info) } - return createShortcut(info, parent, container) + return createShortcut(info, parent) } Favorites.ITEM_TYPE_FOLDER -> return FolderIcon.inflateFolderAndIcon( - R.layout.folder_icon, - context, - parent, - item as FolderInfo, - ) - .apply { onFocusChangeListener = focusListener } + R.layout.folder_icon, + context, + parent, + item as FolderInfo, + ) Favorites.ITEM_TYPE_APP_PAIR -> return AppPairIcon.inflateIcon( R.layout.app_pair_icon, @@ -94,7 +89,7 @@ class ItemInflater<T>( ) Favorites.ITEM_TYPE_APPWIDGET, Favorites.ITEM_TYPE_CUSTOM_APPWIDGET -> - return inflateAppWidget(item as LauncherAppWidgetInfo, context.modelWriter) + return inflateAppWidget(item as LauncherAppWidgetInfo, writer) else -> throw RuntimeException("Invalid Item Type") } } @@ -107,17 +102,13 @@ class ItemInflater<T>( * @param info The data structure describing the shortcut. * @return A View inflated from layoutResId. */ - private fun createShortcut(info: WorkspaceItemInfo, parent: ViewGroup, container: Int): View { - val layout = - if (container == Favorites.CONTAINER_HOTSEAT_PREDICTION) R.layout.predicted_app_icon - else R.layout.app_icon + private fun createShortcut(info: WorkspaceItemInfo, parent: ViewGroup): View { val favorite = - LayoutInflater.from(parent.context).inflate(layout, parent, false) as BubbleTextView + LayoutInflater.from(parent.context).inflate(R.layout.app_icon, parent, false) + as BubbleTextView favorite.applyFromWorkspaceItem(info) favorite.setOnClickListener(clickListener) favorite.onFocusChangeListener = focusListener - - if (container == Favorites.CONTAINER_HOTSEAT_PREDICTION) favorite.verifyHighRes() return favorite } diff --git a/src/com/android/launcher3/util/KeyboardShortcutsDelegate.java b/src/com/android/launcher3/util/KeyboardShortcutsDelegate.java index 3857c66034..e4e0bae06d 100644 --- a/src/com/android/launcher3/util/KeyboardShortcutsDelegate.java +++ b/src/com/android/launcher3/util/KeyboardShortcutsDelegate.java @@ -33,6 +33,7 @@ import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.accessibility.BaseAccessibilityDelegate; import com.android.launcher3.testing.shared.TestProtocol; +import com.android.launcher3.views.OptionsPopupView; import java.util.ArrayList; import java.util.List; @@ -88,7 +89,7 @@ public class KeyboardShortcutsDelegate { break; case KeyEvent.KEYCODE_W: if (mLauncher.isInState(NORMAL)) { - mLauncher.openWidgetPicker(); + OptionsPopupView.openWidgets(mLauncher); return true; } break; diff --git a/src/com/android/launcher3/util/LauncherBindableItemsContainer.kt b/src/com/android/launcher3/util/LauncherBindableItemsContainer.kt index ea1eecfb1d..8fdedef77e 100644 --- a/src/com/android/launcher3/util/LauncherBindableItemsContainer.kt +++ b/src/com/android/launcher3/util/LauncherBindableItemsContainer.kt @@ -19,7 +19,6 @@ package com.android.launcher3.util import android.view.View import com.android.launcher3.BubbleTextView import com.android.launcher3.apppairs.AppPairIcon -import com.android.launcher3.celllayout.CellInfo import com.android.launcher3.folder.Folder import com.android.launcher3.folder.FolderIcon import com.android.launcher3.model.data.AppPairInfo @@ -32,28 +31,18 @@ import com.android.launcher3.widget.PendingAppWidgetHostView import java.util.function.Predicate /** Interface representing a container which can bind Launcher items with some utility methods */ -fun interface LauncherBindableItemsContainer { +interface LauncherBindableItemsContainer { /** - * Called to update items in a specific container as a result of - * [com.android.launcher3.model.BgDataModel.Callbacks.bindItemsUpdated]. Returns a set of items - * which were potentially moved and need to be rebound to the container. + * Called to update workspace items as a result of {@link + * com.android.launcher3.model.BgDataModel.Callbacks#bindItemsUpdated(Set)} */ - fun updateContainerItems(updates: Set<ItemInfo>, context: ActivityContext): Set<ItemInfo> { + fun updateContainerItems(updates: Set<ItemInfo>, context: ActivityContext) { val op = ItemOperator { info, v -> when { v is BubbleTextView && info is WorkspaceItemInfo && updates.contains(info) -> v.applyFromWorkspaceItem(info) - v is FolderIcon && info is FolderInfo -> { - v.updatePreviewItems(updates::contains) - if (updates.contains(info)) { - v.onItemsChanged(false) - v.folder.apply { - reapplyItemInfo() - if (isOpen()) close(false) - } - } - } + v is FolderIcon && info is FolderInfo -> v.updatePreviewItems(updates::contains) v is AppPairIcon && info is AppPairInfo -> v.maybeRedrawForWorkspaceUpdate(updates::contains) v is PendingAppWidgetHostView && updates.contains(info) -> { @@ -68,20 +57,6 @@ fun interface LauncherBindableItemsContainer { mapOverItems(op) Folder.getOpen(context)?.mapOverItems(op) - - // Check for moved items - val itemsToRebind = updates.filterTo(mutableSetOf()) { isContainerSupported(it.container) } - mapOverItems { info, v -> - info?.apply { - if (!updates.contains(this)) return@apply - val uiInfo = getCellInfoForView(v) ?: return@apply - if (uiInfo.isSameAs(this)) itemsToRebind.remove(this) else itemsToRebind.add(this) - } - - // Iterate all items - false - } - return itemsToRebind } /** Returns the first view, matching the [op] */ @@ -94,16 +69,6 @@ fun interface LauncherBindableItemsContainer { fun getViewByItemId(id: Int): View? = mapOverItems { info, _ -> info != null && info.id == id } - /** - * Returns the currently bound info for the [view] or null if the view is not bound. It can be - * used to determine if the UI needs to be updated if it is different that the info represented - * underlying item - */ - fun getCellInfoForView(view: View): CellInfo? = null - - /** Returns if the provided [container] is supported by to this container */ - fun isContainerSupported(container: Int) = false - /** * Map the [op] over the shortcuts and widgets. Once we found the first view which matches, we * will stop the iteration and return that view. diff --git a/src/com/android/launcher3/util/LauncherLayoutBuilder.kt b/src/com/android/launcher3/util/LauncherLayoutBuilder.kt index 22052184bc..ecc99531d2 100644 --- a/src/com/android/launcher3/util/LauncherLayoutBuilder.kt +++ b/src/com/android/launcher3/util/LauncherLayoutBuilder.kt @@ -16,7 +16,6 @@ package com.android.launcher3.util import android.util.Xml -import androidx.annotation.VisibleForTesting import com.android.launcher3.AutoInstallsLayout.ATTR_CLASS_NAME import com.android.launcher3.AutoInstallsLayout.ATTR_CONTAINER import com.android.launcher3.AutoInstallsLayout.ATTR_PACKAGE_NAME @@ -65,10 +64,6 @@ class LauncherLayoutBuilder { ) ) - @VisibleForTesting - fun withBaseValues(baseValues: Map<String, String>) = - ItemTarget(baseValues) - @Throws(IOException::class) fun build() = StringWriter().apply { build(this) }.toString() @Throws(IOException::class) diff --git a/src/com/android/launcher3/util/LooperExecutor.kt b/src/com/android/launcher3/util/LooperExecutor.kt index aff46ec8d7..6ff528d264 100644 --- a/src/com/android/launcher3/util/LooperExecutor.kt +++ b/src/com/android/launcher3/util/LooperExecutor.kt @@ -21,14 +21,12 @@ import android.os.Looper import android.os.Process import android.os.Process.THREAD_PRIORITY_FOREGROUND import androidx.annotation.IntDef - -import com.google.common.util.concurrent.AbstractListeningExecutorService - +import java.util.concurrent.AbstractExecutorService import java.util.concurrent.TimeUnit import kotlin.annotation.AnnotationRetention.SOURCE -/** Extension of [AbstractListeningExecutorService] which executed on a provided looper. */ -class LooperExecutor(looper: Looper, private val defaultPriority: Int) : AbstractListeningExecutorService() { +/** Extension of [AbstractExecutorService] which executed on a provided looper. */ +class LooperExecutor(looper: Looper, private val defaultPriority: Int) : AbstractExecutorService() { val handler: Handler = Handler(looper) @JvmOverloads diff --git a/src/com/android/launcher3/util/MSDLPlayerWrapper.java b/src/com/android/launcher3/util/MSDLPlayerWrapper.java index 1d247d5679..fc3fa72fb7 100644 --- a/src/com/android/launcher3/util/MSDLPlayerWrapper.java +++ b/src/com/android/launcher3/util/MSDLPlayerWrapper.java @@ -19,12 +19,9 @@ package com.android.launcher3.util; import android.content.Context; import android.os.Vibrator; -import androidx.annotation.Nullable; - import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.dagger.LauncherBaseAppComponent; -import com.android.launcher3.logging.DumpManager; import com.google.android.msdl.data.model.MSDLToken; import com.google.android.msdl.domain.InteractionProperties; @@ -49,13 +46,11 @@ public class MSDLPlayerWrapper { private final MSDLPlayer mMSDLPlayer; @Inject - public MSDLPlayerWrapper(@ApplicationContext Context context, - DumpManager dumpManager, DaggerSingletonTracker lifeCycle) { + public MSDLPlayerWrapper(@ApplicationContext Context context) { Vibrator vibrator = context.getSystemService(Vibrator.class); mMSDLPlayer = MSDLPlayer.Companion.createPlayer(vibrator, java.util.concurrent.Executors.newSingleThreadExecutor(), null /* useHapticFeedbackForToken */); - lifeCycle.addCloseable(dumpManager.register(this::dump)); } /** Perform MSDL feedback for a token with interaction properties */ @@ -73,7 +68,7 @@ public class MSDLPlayerWrapper { } /** Print the latest history of MSDL tokens played */ - private void dump(String prefix, PrintWriter writer, @Nullable String[] args) { + public void dump(String prefix, PrintWriter writer) { writer.println(prefix + mMSDLPlayer.toString()); writer.println(prefix + "MSDLPlayerWrapper history of latest events:"); List<MSDLEvent> events = getHistory(); diff --git a/src/com/android/launcher3/util/MultiTranslateDelegate.java b/src/com/android/launcher3/util/MultiTranslateDelegate.java index ecec39c2ef..ce006c4184 100644 --- a/src/com/android/launcher3/util/MultiTranslateDelegate.java +++ b/src/com/android/launcher3/util/MultiTranslateDelegate.java @@ -39,7 +39,6 @@ public class MultiTranslateDelegate { public static final int INDEX_TASKBAR_PINNING_ANIM = 5; public static final int INDEX_NAV_BAR_ANIM = 6; public static final int INDEX_BUBBLE_BAR_ANIM = 7; - public static final int INDEX_TASKBAR_APP_RUNNING_STATE_ANIM = 8; // Affect all items inside of a MultipageCellLayout public static final int INDEX_CELLAYOUT_MULTIPAGE_SPACING = 3; @@ -50,7 +49,7 @@ public class MultiTranslateDelegate { // Specific for hotseat items when adjusting for bubbles public static final int INDEX_BUBBLE_ADJUSTMENT_ANIM = 3; - public static final int COUNT = 9; + public static final int COUNT = 8; private final MultiPropertyFactory<View> mTranslationX; private final MultiPropertyFactory<View> mTranslationY; diff --git a/src/com/android/launcher3/util/ResourceBasedOverride.java b/src/com/android/launcher3/util/ResourceBasedOverride.java index 4936a9d11a..36b9cf7420 100644 --- a/src/com/android/launcher3/util/ResourceBasedOverride.java +++ b/src/com/android/launcher3/util/ResourceBasedOverride.java @@ -24,16 +24,13 @@ import java.lang.reflect.InvocationTargetException; /** * An interface to indicate that a class is dynamically loaded using resource overlay, hence its * class name and constructor should be preserved by proguard - * @deprecated Override the specific targets directly using dagger. */ -@Deprecated public interface ResourceBasedOverride { class Overrides { private static final String TAG = "Overrides"; - @Deprecated public static <T extends ResourceBasedOverride> T getObject( Class<T> clazz, Context context, int resId) { String className = context.getString(resId); diff --git a/src/com/android/launcher3/util/SplitConfigurationOptions.java b/src/com/android/launcher3/util/SplitConfigurationOptions.java index fcd420e297..e1ef77a00a 100644 --- a/src/com/android/launcher3/util/SplitConfigurationOptions.java +++ b/src/com/android/launcher3/util/SplitConfigurationOptions.java @@ -114,6 +114,125 @@ public final class SplitConfigurationOptions { } } + /** + * NOTE: Engineers complained about too little ambiguity in the last survey, so there is a class + * with the same name/functionality in wm.shell.util (which launcher3 cannot be built against) + * + * If you make changes here, consider making the same changes there + * TODO(b/254378592): We really need to consolidate this + */ + public static class SplitBounds { + public final Rect leftTopBounds; + public final Rect rightBottomBounds; + /** This rect represents the actual gap between the two apps */ + public final Rect visualDividerBounds; + // This class is orientation-agnostic, so we compute both for later use + private final float topTaskPercent; + private final float leftTaskPercent; + private final float dividerWidthPercent; + private final float dividerHeightPercent; + public final int snapPosition; + + /** + * If {@code true}, that means at the time of creation of this object, the + * split-screened apps were vertically stacked. This is useful in scenarios like + * rotation where the bounds won't change, but this variable can indicate what orientation + * the bounds were originally in + */ + public final boolean appsStackedVertically; + /** + * If {@code true}, that means at the time of creation of this object, the phone was in + * seascape orientation. This is important on devices with insets, because they do not split + * evenly -- one of the insets must be slightly larger to account for the inset. + * From landscape, it is the leftTop task that expands slightly. + * From seascape, it is the rightBottom task that expands slightly. + */ + public final boolean initiatedFromSeascape; + public final int leftTopTaskId; + public final int rightBottomTaskId; + + public SplitBounds(Rect leftTopBounds, Rect rightBottomBounds, int leftTopTaskId, + int rightBottomTaskId, int snapPosition) { + this.leftTopBounds = leftTopBounds; + this.rightBottomBounds = rightBottomBounds; + this.leftTopTaskId = leftTopTaskId; + this.rightBottomTaskId = rightBottomTaskId; + this.snapPosition = snapPosition; + + if (rightBottomBounds.top > leftTopBounds.top) { + // vertical apps, horizontal divider + this.visualDividerBounds = new Rect(leftTopBounds.left, leftTopBounds.bottom, + leftTopBounds.right, rightBottomBounds.top); + appsStackedVertically = true; + initiatedFromSeascape = false; + } else { + // horizontal apps, vertical divider + this.visualDividerBounds = new Rect(leftTopBounds.right, leftTopBounds.top, + rightBottomBounds.left, leftTopBounds.bottom); + appsStackedVertically = false; + // The following check is unreliable on devices without insets + // (initiatedFromSeascape will always be set to false.) This happens to be OK for + // all our current uses, but should be refactored. + // TODO: Create a more reliable check, or refactor how splitting works on devices + // with insets. + if (rightBottomBounds.width() > leftTopBounds.width()) { + initiatedFromSeascape = true; + } else { + initiatedFromSeascape = false; + } + } + + float totalWidth = rightBottomBounds.right - leftTopBounds.left; + float totalHeight = rightBottomBounds.bottom - leftTopBounds.top; + leftTaskPercent = leftTopBounds.width() / totalWidth; + topTaskPercent = leftTopBounds.height() / totalHeight; + dividerWidthPercent = visualDividerBounds.width() / totalWidth; + dividerHeightPercent = visualDividerBounds.height() / totalHeight; + } + + /** + * Returns the percentage size of the left/top task (compared to the full width/height of + * the split pair). E.g. if the left task is 4 units wide, the divider is 2 units, and the + * right task is 4 units, this method will return 0.4f. + */ + public float getLeftTopTaskPercent() { + // topTaskPercent and leftTaskPercent are defined at creation time, and are not updated + // on device rotate, so we have to check appsStackedVertically to return the right + // creation-time measurements. + return appsStackedVertically ? topTaskPercent : leftTaskPercent; + } + + /** + * Returns the percentage size of the divider's thickness (compared to the full width/height + * of the split pair). E.g. if the left task is 4 units wide, the divider is 2 units, and + * the right task is 4 units, this method will return 0.2f. + */ + public float getDividerPercent() { + // dividerHeightPercent and dividerWidthPercent are defined at creation time, and are + // not updated on device rotate, so we have to check appsStackedVertically to return + // the right creation-time measurements. + return appsStackedVertically ? dividerHeightPercent : dividerWidthPercent; + } + + /** + * Returns the percentage size of the right/bottom task (compared to the full width/height + * of the split pair). E.g. if the left task is 4 units wide, the divider is 2 units, and + * the right task is 4 units, this method will return 0.4f. + */ + public float getRightBottomTaskPercent() { + return 1 - (getLeftTopTaskPercent() + getDividerPercent()); + } + + @Override + public String toString() { + return "LeftTop: " + leftTopBounds + ", taskId: " + leftTopTaskId + "\n" + + "RightBottom: " + rightBottomBounds + ", taskId: " + rightBottomTaskId + "\n" + + "Divider: " + visualDividerBounds + "\n" + + "AppsVertical? " + appsStackedVertically + "\n" + + "snapPosition: " + snapPosition; + } + } + public static class SplitStageInfo { public int taskId = -1; @StagePosition diff --git a/src/com/android/launcher3/util/TouchController.java b/src/com/android/launcher3/util/TouchController.java index bf05481e9b..fc1d819f78 100644 --- a/src/com/android/launcher3/util/TouchController.java +++ b/src/com/android/launcher3/util/TouchController.java @@ -18,6 +18,8 @@ package com.android.launcher3.util; import android.view.MotionEvent; +import java.io.PrintWriter; + public interface TouchController { /** @@ -30,14 +32,5 @@ public interface TouchController { */ boolean onControllerInterceptTouchEvent(MotionEvent ev); - /** - * @return a string that identifies the controller and useful information for debugging touch - * interactions with the Launcher's TouchControllers. - */ - default String dump() { - return "Not implemented, class name is " + getClass().getName(); - } - - /** Called when touch controllers are destroyed during recreation. */ - default void onTouchControllerDestroyed() { } + default void dump(String prefix, PrintWriter writer) { } } diff --git a/src/com/android/launcher3/util/WallpaperThemeManager.kt b/src/com/android/launcher3/util/WallpaperThemeManager.kt index 9baacd8e49..c49a8e3041 100644 --- a/src/com/android/launcher3/util/WallpaperThemeManager.kt +++ b/src/com/android/launcher3/util/WallpaperThemeManager.kt @@ -59,15 +59,11 @@ class WallpaperThemeManager(private val activity: Activity) : fun updateTheme() { if (themeRes != Themes.getActivityThemeRes(activity)) { - recreateToUpdateTheme() + recreateToUpdateTheme = true + activity.recreate() } } - fun recreateToUpdateTheme() { - recreateToUpdateTheme = true - activity.recreate() - } - companion object { /** diff --git a/src/com/android/launcher3/util/coroutines/DispatcherProvider.kt b/src/com/android/launcher3/util/coroutines/DispatcherProvider.kt index a53033d1d3..1f01b07922 100644 --- a/src/com/android/launcher3/util/coroutines/DispatcherProvider.kt +++ b/src/com/android/launcher3/util/coroutines/DispatcherProvider.kt @@ -16,71 +16,25 @@ package com.android.launcher3.util.coroutines -import com.android.launcher3.Flags.enableCoroutineThreadingImprovements -import com.android.launcher3.util.coroutines.CoroutinesHelper.bgDispatcher -import kotlin.math.max import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.DelicateCoroutinesApi import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.newFixedThreadPoolContext interface DispatcherProvider { - /** - * The default CoroutineDispatcher that is used by all standard builders like launch, async, - * etc. if neither a dispatcher nor any other ContinuationInterceptor is specified in their - * context. - * - * See Kotlin documentation for [Dispatchers.Default] for more detailed documentation. - */ val default: CoroutineDispatcher - - /** - * Background thread pool for longer running work e.g. accessing storage, making network - * requests, running AI tasks etc. - */ - val ioBackground: CoroutineDispatcher - - /** - * Background thread pool for UI related work e.g. manipulating in-memory objects for - * presentation on the UI. - */ - val lightweightBackground: CoroutineDispatcher - - /** - * A coroutine dispatcher that is confined to the Main thread operating with UI objects. It - * executes coroutines immediately when it is already in the right context without an additional - * re-dispatch. - * - * See Kotlin documentation for [Dispatchers.Main.immediate] for more detailed documentation. - */ + val background: CoroutineDispatcher val main: CoroutineDispatcher - - /** - * A coroutine dispatcher that is not confined to any specific thread. - * - * See Kotlin documentation for [Dispatchers.Unconfined] for more detailed documentation. - */ val unconfined: CoroutineDispatcher } object ProductionDispatchers : DispatcherProvider { - private val availableProcessors = Runtime.getRuntime().availableProcessors() - private val singleBgThreadPool by lazy { bgDispatcher(availableProcessors, "LauncherBg") } + private val bgDispatcher = CoroutinesHelper.bgDispatcher() - override val default = Dispatchers.Default - override val main = Dispatchers.Main.immediate - - override val ioBackground = - if (enableCoroutineThreadingImprovements()) - bgDispatcher(nThreads = 1, threadName = "LauncherBgIO") - else singleBgThreadPool - - override val lightweightBackground = - if (enableCoroutineThreadingImprovements()) - bgDispatcher(nThreads = 1, threadName = "LauncherBgLight") - else singleBgThreadPool - - override val unconfined = Dispatchers.Unconfined + override val default: CoroutineDispatcher = Dispatchers.Default + override val background: CoroutineDispatcher = bgDispatcher + override val main: CoroutineDispatcher = Dispatchers.Main.immediate + override val unconfined: CoroutineDispatcher = Dispatchers.Unconfined } private object CoroutinesHelper { @@ -92,12 +46,15 @@ private object CoroutinesHelper { * contention between then, eventually causing jank. */ @OptIn(DelicateCoroutinesApi::class) - fun bgDispatcher(nThreads: Int, threadName: String): CoroutineDispatcher { + fun bgDispatcher(): CoroutineDispatcher { // Why a new ThreadPool instead of just using Dispatchers.IO with // CoroutineDispatcher.limitedParallelism? Because, if we were to use Dispatchers.IO, we // would share those threads with other dependencies using Dispatchers.IO. // Using a dedicated thread pool we have guarantees only Launcher is able to schedule // code on those. - return newFixedThreadPoolContext(nThreads = nThreads, name = threadName) + return newFixedThreadPoolContext( + nThreads = Runtime.getRuntime().availableProcessors(), + name = "LauncherBg", + ) } } diff --git a/src/com/android/launcher3/util/window/WindowManagerProxy.java b/src/com/android/launcher3/util/window/WindowManagerProxy.java index 36dcd9e77d..ae2c4f3ff0 100644 --- a/src/com/android/launcher3/util/window/WindowManagerProxy.java +++ b/src/com/android/launcher3/util/window/WindowManagerProxy.java @@ -50,14 +50,12 @@ import android.view.WindowMetrics; import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; -import com.android.launcher3.Flags; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.dagger.LauncherBaseAppComponent; import com.android.launcher3.testing.shared.ResourceUtils; import com.android.launcher3.util.DaggerSingletonObject; -import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.NavigationMode; import com.android.launcher3.util.WindowBounds; @@ -116,13 +114,6 @@ public class WindowManagerProxy { return false; } - /** - * Returns if the display is in desktop-first mode. - */ - public boolean isDisplayDesktopFirst(Context displayInfoContext) { - return false; - } - /** * Returns if the pinned taskbar should be shown when home is visible. */ @@ -141,7 +132,7 @@ public class WindowManagerProxy { /** * Returns if the home is visible. */ - public boolean isHomeVisible() { + public boolean isHomeVisible(Context context) { return false; } @@ -152,29 +143,15 @@ public class WindowManagerProxy { WindowMetrics windowMetrics = displayInfoContext.getSystemService(WindowManager.class) .getMaximumWindowMetrics(); Rect insets = new Rect(); - // NOTE: Unable to use `normalizeWindowInsets(Context, WidnowInsets, Rect)` because - // uses DisplayController instance to determine whether taskbar is shown on home, and this - // method gets called while initializing DisaplayController. - normalizeWindowInsets(displayInfoContext, - showLockedTaskbarOnHome(displayInfoContext) || showDesktopTaskbarForFreeformDisplay( - displayInfoContext), windowMetrics.getWindowInsets(), insets); + normalizeWindowInsets(displayInfoContext, windowMetrics.getWindowInsets(), insets); return new WindowBounds(windowMetrics.getBounds(), insets, info.rotation); } /** * Returns an updated insets, accounting for various Launcher UI specific overrides like taskbar */ - public WindowInsets normalizeWindowInsets(Context context, - WindowInsets oldInsets, - Rect outInsets) { - return normalizeWindowInsets(context, - DisplayController.showLockedTaskbarOnHome(context) - || DisplayController.showDesktopTaskbarForFreeformDisplay(context), - oldInsets, outInsets); - } - - WindowInsets normalizeWindowInsets(Context context, boolean taskbarShownOnHome, - WindowInsets oldInsets, Rect outInsets) { + public WindowInsets normalizeWindowInsets(Context context, WindowInsets oldInsets, + Rect outInsets) { if (!Utilities.ATLEAST_R || !mTaskbarDrawnInProcess) { outInsets.set(oldInsets.getSystemWindowInsetLeft(), oldInsets.getSystemWindowInsetTop(), oldInsets.getSystemWindowInsetRight(), oldInsets.getSystemWindowInsetBottom()); @@ -226,7 +203,7 @@ public class WindowManagerProxy { // Override the tappable insets to be 0 on the bottom for gesture nav (otherwise taskbar // would count towards it). This is used for the bottom protection in All Apps for example. - if (isGesture && !taskbarShownOnHome) { + if (isGesture) { Insets oldTappableInsets = oldInsets.getInsets(WindowInsets.Type.tappableElement()); Insets newTappableInsets = Insets.of(oldTappableInsets.left, oldTappableInsets.top, oldTappableInsets.right, 0); @@ -471,7 +448,7 @@ public class WindowManagerProxy { * Returns the display associated with the context, or DEFAULT_DISPLAY if the context isn't * associated with a display. */ - public Display getDisplay(Context displayInfoContext) { + protected Display getDisplay(Context displayInfoContext) { try { return displayInfoContext.getDisplay(); } catch (UnsupportedOperationException e) { @@ -481,14 +458,6 @@ public class WindowManagerProxy { DEFAULT_DISPLAY); } - private int getDisplayId(Context displayInfoContext) { - try { - return displayInfoContext.getDisplay().getDisplayId(); - } catch (UnsupportedOperationException e) { - return DEFAULT_DISPLAY; - } - } - /** * Returns a DisplayCutout which represents a rotated version of the original */ @@ -500,18 +469,11 @@ public class WindowManagerProxy { } /** - * Returns the current navigation mode from resource if the context is for the default or a non- - * display context. Otherwise, return NavigationMode.THREE_BUTTONS. + * Returns the current navigation mode from resource. */ - public NavigationMode getNavigationMode(Context displayInfoContext) { - // Always assume 3-button nav for external displays - int displayId = getDisplayId(displayInfoContext); - if (displayId != DEFAULT_DISPLAY) { - return NavigationMode.THREE_BUTTONS; - } - // Otherwise get from Resource + public NavigationMode getNavigationMode(Context context) { int modeInt = ResourceUtils.getIntegerByName(NAV_BAR_INTERACTION_MODE_RES_NAME, - displayInfoContext.getResources(), INVALID_RESOURCE_HANDLE); + context.getResources(), INVALID_RESOURCE_HANDLE); if (modeInt == INVALID_RESOURCE_HANDLE) { Log.e(TAG, "Failed to get system resource ID. Incompatible framework version?"); @@ -525,11 +487,6 @@ public class WindowManagerProxy { return Utilities.ATLEAST_S ? NavigationMode.NO_BUTTON : NavigationMode.THREE_BUTTONS; } - /** Returns whether overview on connected displays is enabled */ - public boolean enableOverviewOnConnectedDisplays() { - return Flags.enableOverviewOnConnectedDisplays(); - } - /** * @see DisplayCutout#getSafeInsets */ diff --git a/src/com/android/launcher3/views/AbstractSlideInView.java b/src/com/android/launcher3/views/AbstractSlideInView.java index c1fc232471..749e526427 100644 --- a/src/com/android/launcher3/views/AbstractSlideInView.java +++ b/src/com/android/launcher3/views/AbstractSlideInView.java @@ -63,26 +63,27 @@ import java.util.List; import java.util.Optional; /** - * Extension of {@link AbstractFloatingView} with common methods for sliding in from bottom. + * Extension of {@link AbstractFloatingView} with common methods for sliding in + * from bottom. * * @param <T> Type of ActivityContext inflating this view. */ public abstract class AbstractSlideInView<T extends Context & ActivityContext> extends AbstractFloatingView implements SingleAxisSwipeDetector.Listener { - protected static final FloatProperty<AbstractSlideInView<?>> TRANSLATION_SHIFT = - new FloatProperty<>("translationShift") { + protected static final FloatProperty<AbstractSlideInView<?>> TRANSLATION_SHIFT = new FloatProperty<>( + "translationShift") { - @Override - public Float get(AbstractSlideInView view) { - return view.mTranslationShift; - } + @Override + public Float get(AbstractSlideInView view) { + return view.mTranslationShift; + } - @Override - public void setValue(AbstractSlideInView view, float value) { - view.setTranslationShift(value); - } - }; + @Override + public void setValue(AbstractSlideInView view, float value) { + view.setTranslationShift(value); + } + }; protected static final float TRANSLATION_SHIFT_CLOSED = 1f; protected static final float TRANSLATION_SHIFT_OPENED = 0f; private static final int DEFAULT_DURATION = 300; @@ -96,26 +97,32 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> protected final @Nullable View mColorScrim; /** - * Interpolator for {@link #mOpenCloseAnimation} when we are closing due to dragging downwards. + * Interpolator for {@link #mOpenCloseAnimation} when we are closing due to + * dragging downwards. */ private Interpolator mScrollInterpolator; private long mScrollDuration; /** - * End progress for {@link #mOpenCloseAnimation} when we are closing due to dragging downloads. + * End progress for {@link #mOpenCloseAnimation} when we are closing due to + * dragging downloads. * <p> * There are two cases that determine this value: * <ol> - * <li> - * If the drag interrupts the opening transition (i.e. {@link #mToTranslationShift} - * is {@link #TRANSLATION_SHIFT_OPENED}), we need to animate back to {@code 0} to - * reverse the animation that was paused at {@link #onDragStart(boolean, float)}. - * </li> - * <li> - * If the drag started after the view is fully opened (i.e. - * {@link #mToTranslationShift} is {@link #TRANSLATION_SHIFT_CLOSED}), the animation - * that was set up at {@link #onDragStart(boolean, float)} for closing the view - * should go forward to {@code 1}. - * </li> + * <li> + * If the drag interrupts the opening transition (i.e. + * {@link #mToTranslationShift} + * is {@link #TRANSLATION_SHIFT_OPENED}), we need to animate back to {@code 0} + * to + * reverse the animation that was paused at + * {@link #onDragStart(boolean, float)}. + * </li> + * <li> + * If the drag started after the view is fully opened (i.e. + * {@link #mToTranslationShift} is {@link #TRANSLATION_SHIFT_CLOSED}), the + * animation + * that was set up at {@link #onDragStart(boolean, float)} for closing the view + * should go forward to {@code 1}. + * </li> * </ol> */ private float mScrollEndProgress; @@ -124,7 +131,10 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> protected float mTranslationShift = TRANSLATION_SHIFT_CLOSED; protected float mFromTranslationShift; protected float mToTranslationShift; - /** {@link #mOpenCloseAnimation} progress at {@link #onDragStart(boolean, float)}. */ + /** + * {@link #mOpenCloseAnimation} progress at + * {@link #onDragStart(boolean, float)}. + */ private float mDragStartProgress; protected boolean mNoIntercept; @@ -132,11 +142,12 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> protected List<OnCloseListener> mOnCloseListeners = new ArrayList<>(); /** - * How far through a "user initiated dismissal" the UI is. e.g. Predictive back, swipe to home, + * How far through a "user initiated dismissal" the UI is. e.g. Predictive back, + * swipe to home, * 0 is regular state, 1 is fully dismissed. */ - protected final AnimatedFloat mSwipeToDismissProgress = - new AnimatedFloat(this::onUserSwipeToDismissProgressChanged, 0f); + protected final AnimatedFloat mSwipeToDismissProgress = new AnimatedFloat(this::onUserSwipeToDismissProgressChanged, + 0f); protected boolean mIsDismissInProgress; private View mViewToAnimateInSwipeToDismiss = this; private @Nullable Drawable mContentBackground; @@ -149,8 +160,7 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> 0, 0, view.getMeasuredWidth(), - view.getMeasuredHeight() + getBottomOffsetPx() - ); + view.getMeasuredHeight() + getBottomOffsetPx()); } }; @@ -229,10 +239,12 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> /** * Invoked when a {@link #mOpenCloseAnimation} is being set up. * <p> - * Subclasses can override this method to modify the animation before it's used to create a + * Subclasses can override this method to modify the animation before it's used + * to create a * {@link AnimatorPlaybackController}. */ - protected void onOpenCloseAnimationPending(PendingAnimation animation) {} + protected void onOpenCloseAnimationPending(PendingAnimation animation) { + } protected void attachToContainer() { if (mColorScrim != null) { @@ -242,7 +254,8 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> } /** - * Returns a scrim color for a sliding view. if returned value is -1, no scrim is added. + * Returns a scrim color for a sliding view. if returned value is -1, no scrim + * is added. */ protected int getScrimColor(Context context) { return -1; @@ -268,7 +281,8 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> } int directionsToDetectScroll = mSwipeDetector.isIdleState() - ? SingleAxisSwipeDetector.DIRECTION_NEGATIVE : 0; + ? SingleAxisSwipeDetector.DIRECTION_NEGATIVE + : 0; mSwipeDetector.setDetectableScrollConditions( directionsToDetectScroll, false); mSwipeDetector.onTouchEvent(ev); @@ -288,14 +302,14 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> return true; } - @Override +// @Override @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE) public void onBackStarted(BackEvent backEvent) { super.onBackStarted(backEvent); mViewToAnimateInSwipeToDismiss = shouldAnimateContentViewInBackSwipe() ? mContent : this; } - @Override +// @Override @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE) public void onBackProgressed(BackEvent backEvent) { final float progress = backEvent.getProgress(); @@ -303,12 +317,16 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> } /** - * During predictive back swipe, the default behavior is to scale {@link AbstractSlideInView} - * during back swipe. This method allow subclass to scale {@link #mContent}, typically to exit + * During predictive back swipe, the default behavior is to scale + * {@link AbstractSlideInView} + * during back swipe. This method allow subclass to scale {@link #mContent}, + * typically to exit * search mode. * - * <p>Note that this method can be expensive, and should only be called from - * {@link #onBackStarted(BackEvent)}, not from {@link #onBackProgressed(BackEvent)}. + * <p> + * Note that this method can be expensive, and should only be called from + * {@link #onBackStarted(BackEvent)}, not from + * {@link #onBackProgressed(BackEvent)}. */ protected boolean shouldAnimateContentViewInBackSwipe() { return false; @@ -337,7 +355,8 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> ObjectAnimator objectAnimator = mSwipeToDismissProgress.animateToValue(0f) .setDuration(REVERT_SWIPE_ALL_APPS_TO_HOME_ANIMATION_DURATION_MS); - // If we are animating a different view, we should reset the animating view back to + // If we are animating a different view, we should reset the animating view back + // to // AbstractSlideInView as it is the default view to animate. if (this != mViewToAnimateInSwipeToDismiss) { objectAnimator.addListener(new Animator.AnimatorListener() { @@ -352,10 +371,12 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> } @Override - public void onAnimationRepeat(Animator animator) {} + public void onAnimationRepeat(Animator animator) { + } @Override - public void onAnimationStart(Animator animator) {} + public void onAnimationStart(Animator animator) { + } }); } @@ -369,7 +390,8 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> } /** - * Set slide in view's background {@link Drawable} which will be draw onto a parent view in + * Set slide in view's background {@link Drawable} which will be draw onto a + * parent view in * {@link #dispatchDraw(Canvas)} */ protected void setContentBackgroundWithParent( @@ -399,10 +421,13 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> } /** - * Returns {@code true} if the touch event is over the visible area of the bottom sheet. + * Returns {@code true} if the touch event is over the visible area of the + * bottom sheet. * - * By default will check if the touch event is over {@code mContent}, subclasses should override - * this method if the visible area of the bottom sheet is different from {@code mContent}. + * By default will check if the touch event is over {@code mContent}, subclasses + * should override + * this method if the visible area of the bottom sheet is different from + * {@code mContent}. */ protected boolean isEventOverContent(MotionEvent ev) { return getPopupContainer().isEventOverView(mContent, ev); @@ -429,15 +454,16 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> public boolean onDrag(float displacement) { float progress = mDragStartProgress + Math.signum(mToTranslationShift - mFromTranslationShift) - * (displacement / getShiftRange()); + * (displacement / getShiftRange()); mOpenCloseAnimation.setPlayFraction(Utilities.boundToRange(progress, 0, 1)); return true; } @Override public void onDragEnd(float velocity) { - float successfulShiftThreshold = mActivityContext.getDeviceProfile().getDeviceProperties().isTablet() - ? TABLET_BOTTOM_SHEET_SUCCESS_TRANSITION_PROGRESS : SUCCESS_TRANSITION_PROGRESS; + float successfulShiftThreshold = mActivityContext.getDeviceProfile().isTablet + ? TABLET_BOTTOM_SHEET_SUCCESS_TRANSITION_PROGRESS + : SUCCESS_TRANSITION_PROGRESS; if ((mSwipeDetector.isFling(velocity) && velocity > 0) || mTranslationShift > successfulShiftThreshold) { mScrollInterpolator = scrollInterpolatorForVelocity(velocity); @@ -456,7 +482,10 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext> } } - /** Callback invoked when the view is beginning to close (e.g. close animation is started). */ + /** + * Callback invoked when the view is beginning to close (e.g. close animation is + * started). + */ public void setOnCloseBeginListener(@Nullable OnCloseListener onCloseBeginListener) { mOnCloseBeginListener = onCloseBeginListener; } diff --git a/src/com/android/launcher3/views/ActivityContext.java b/src/com/android/launcher3/views/ActivityContext.java index ba08a5b6ea..f583dd9c13 100644 --- a/src/com/android/launcher3/views/ActivityContext.java +++ b/src/com/android/launcher3/views/ActivityContext.java @@ -44,7 +44,6 @@ import android.os.Process; import android.os.UserHandle; import android.util.Log; import android.view.Display; -import android.view.KeyEvent; import android.view.LayoutInflater; import android.view.View; import android.view.View.AccessibilityDelegate; @@ -63,14 +62,12 @@ import com.android.launcher3.BubbleTextView; import com.android.launcher3.DeviceProfile; import com.android.launcher3.DeviceProfile.OnDeviceProfileChangeListener; import com.android.launcher3.DropTargetHandler; -import com.android.launcher3.Flags; import com.android.launcher3.LauncherAppState; import com.android.launcher3.LauncherSettings; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.allapps.ActivityAllAppsContainerView; import com.android.launcher3.celllayout.CellPosMapper; -import com.android.launcher3.dagger.ActivityContextComponent; import com.android.launcher3.dot.DotInfo; import com.android.launcher3.dragndrop.DragController; import com.android.launcher3.folder.FolderIcon; @@ -78,7 +75,6 @@ import com.android.launcher3.logger.LauncherAtom; import com.android.launcher3.logging.InstanceId; import com.android.launcher3.logging.InstanceIdSequence; import com.android.launcher3.logging.StatsLogManager; -import com.android.launcher3.model.ModelWriter; import com.android.launcher3.model.StringCache; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; @@ -105,9 +101,6 @@ public interface ActivityContext extends SavedStateRegistryOwner { String TAG = "ActivityContext"; - /** Returns the dagger graph for this UI context */ - ActivityContextComponent getActivityComponent(); - default boolean finishAutoCancelActionMode() { return false; } @@ -215,37 +208,12 @@ public interface ActivityContext extends SavedStateRegistryOwner { return null; } - /** @return {@code true} if all apps background blur is enabled */ - default boolean isAllAppsBackgroundBlurEnabled() { - return false; - } - - /** @return {@code true} if overview background blur is enabled */ - default boolean isOverviewBackgroundBlurEnabled() { - return false; - } - - /** @return the resource id of the style to apply for the current blur state in All Apps. */ - default int getAllAppsBlurStyleResId() { - if (!Flags.allAppsBlur()) { - // Don't alter the colors provided in the default Launcher themes. - return View.NO_ID; - } - return isAllAppsBackgroundBlurEnabled() ? R.style.AllAppsBlurStyle - : R.style.AllAppsBlurFallbackStyle; - } - - /** @return the resource id of the style to apply for the current blur state in Overview. */ - default int getOverviewBlurStyleResId() { - return View.NO_ID; - } - DeviceProfile getDeviceProfile(); /** Registered {@link OnDeviceProfileChangeListener} instances. */ List<OnDeviceProfileChangeListener> getOnDeviceProfileChangeListeners(); - /** Notifies listeners of a {@link deviceprofile} change. */ + /** Notifies listeners of a {@link DeviceProfile} change. */ default void dispatchDeviceProfileChanged() { DeviceProfile deviceProfile = getDeviceProfile(); List<OnDeviceProfileChangeListener> listeners = getOnDeviceProfileChangeListeners(); @@ -254,12 +222,12 @@ public interface ActivityContext extends SavedStateRegistryOwner { } } - /** Register listener for {@link deviceprofile} changes. */ + /** Register listener for {@link DeviceProfile} changes. */ default void addOnDeviceProfileChangeListener(OnDeviceProfileChangeListener listener) { getOnDeviceProfileChangeListeners().add(listener); } - /** Unregister listener for {@link deviceprofile} changes. */ + /** Unregister listener for {@link DeviceProfile} changes. */ default void removeOnDeviceProfileChangeListener(OnDeviceProfileChangeListener listener) { getOnDeviceProfileChangeListeners().remove(listener); } @@ -555,12 +523,6 @@ public interface ActivityContext extends SavedStateRegistryOwner { return new CellPosMapper(dp.isVerticalBarLayout(), dp.numShownHotseatIcons); } - /** Returns a writer for updating model properties */ - default ModelWriter getModelWriter() { - return LauncherAppState.getInstance(asContext()).getModel().getWriter( - false, getCellPosMapper(), null); - } - /** Set to manage objects that can be cleaned up along with the context */ WeakCleanupSet getOwnerCleanupSet(); @@ -579,14 +541,6 @@ public interface ActivityContext extends SavedStateRegistryOwner { return (Context) this; } - /** - * Allows the current ActivityContext to intercept KeyEvent dispatches. - * <p> - * Returns true iff the event has been handled. */ - default boolean onRootViewDispatchKeyEvent(KeyEvent event) { - return false; - } - /** * Returns the ActivityContext associated with the given Context, or throws an exception if * the Context is not associated with any ActivityContext. diff --git a/src/com/android/launcher3/views/ArrowTipView.java b/src/com/android/launcher3/views/ArrowTipView.java index 47cee9e8d5..abb0081f1f 100644 --- a/src/com/android/launcher3/views/ArrowTipView.java +++ b/src/com/android/launcher3/views/ArrowTipView.java @@ -125,38 +125,6 @@ public class ArrowTipView extends AbstractFloatingView { return R.id.arrow; } - protected void applyLayoutParamsFromGrid( - View parent, int arrowMarginStart, int gravity, - boolean matchParentWidth) { - DeviceProfile grid = mActivityContext.getDeviceProfile(); - - DragLayer.LayoutParams params = (DragLayer.LayoutParams) - getLayoutParams(); - params.gravity = gravity; - params.leftMargin = mArrowMinOffset + grid.getInsets().left; - params.rightMargin = mArrowMinOffset + grid.getInsets().right; - if (matchParentWidth) { - params.width = LayoutParams.MATCH_PARENT; - } - - LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) - mArrowView.getLayoutParams(); - lp.gravity = gravity; - - if (parent.getLayoutDirection() == LAYOUT_DIRECTION_RTL) { - arrowMarginStart = parent.getMeasuredWidth() - arrowMarginStart; - } - if (gravity == Gravity.END) { - lp.setMarginEnd(Math.max(mArrowMinOffset, - parent.getMeasuredWidth() - params.rightMargin - - arrowMarginStart - mArrowWidth / 2)); - } else if (gravity == Gravity.START) { - lp.setMarginStart(Math.max(mArrowMinOffset, - arrowMarginStart - params.leftMargin - - mArrowWidth / 2)); - } - } - @Override public boolean onControllerInterceptTouchEvent(MotionEvent ev) { if (ev.getAction() == MotionEvent.ACTION_DOWN) { @@ -255,12 +223,28 @@ public class ArrowTipView extends AbstractFloatingView { ViewGroup parent = mActivityContext.getDragLayer(); parent.addView(this); - applyLayoutParamsFromGrid( - /* parent= */ parent, - /* arrowMarginStart= */ arrowMarginStart, - /* gravity= */ gravity, - /* matchParentWidth= */ true - ); + DeviceProfile grid = mActivityContext.getDeviceProfile(); + + DragLayer.LayoutParams params = (DragLayer.LayoutParams) getLayoutParams(); + params.gravity = gravity; + params.leftMargin = mArrowMinOffset + grid.getInsets().left; + params.rightMargin = mArrowMinOffset + grid.getInsets().right; + params.width = LayoutParams.MATCH_PARENT; + LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) mArrowView.getLayoutParams(); + + lp.gravity = gravity; + + if (parent.getLayoutDirection() == LAYOUT_DIRECTION_RTL) { + arrowMarginStart = parent.getMeasuredWidth() - arrowMarginStart; + } + if (gravity == Gravity.END) { + lp.setMarginEnd(Math.max(mArrowMinOffset, + parent.getMeasuredWidth() - params.rightMargin - arrowMarginStart + - mArrowWidth / 2)); + } else if (gravity == Gravity.START) { + lp.setMarginStart(Math.max(mArrowMinOffset, + arrowMarginStart - params.leftMargin - mArrowWidth / 2)); + } requestLayout(); post(() -> setY(top - (mIsPointingUp ? 0 : getHeight()))); diff --git a/src/com/android/launcher3/views/BaseDragLayer.java b/src/com/android/launcher3/views/BaseDragLayer.java index 7ea2c0795c..331ad16278 100644 --- a/src/com/android/launcher3/views/BaseDragLayer.java +++ b/src/com/android/launcher3/views/BaseDragLayer.java @@ -28,7 +28,6 @@ import android.graphics.Insets; import android.graphics.Rect; import android.graphics.RectF; import android.util.AttributeSet; -import android.util.Log; import android.util.Property; import android.view.MotionEvent; import android.view.View; @@ -39,6 +38,7 @@ import android.view.accessibility.AccessibilityEvent; import android.widget.FrameLayout; import com.android.launcher3.AbstractFloatingView; +import com.android.launcher3.DeviceProfile; import com.android.launcher3.InsettableFrameLayout; import com.android.launcher3.Utilities; import com.android.launcher3.testing.shared.ResourceUtils; @@ -55,8 +55,6 @@ import java.util.ArrayList; public abstract class BaseDragLayer<T extends Context & ActivityContext> extends InsettableFrameLayout { - public static final String TAG = "BaseDragLayer"; - public static final Property<LayoutParams, Integer> LAYOUT_X = new Property<LayoutParams, Integer>(Integer.TYPE, "x") { @Override @@ -130,13 +128,7 @@ public abstract class BaseDragLayer<T extends Context & ActivityContext> /** * Called to reinitialize touch controllers. */ - public void recreateControllers() { - if (mControllers != null) { - for (TouchController controller : mControllers) { - controller.onTouchControllerDestroyed(); - } - } - } + public abstract void recreateControllers(); /** * Same as {@link #isEventOverView(View, MotionEvent, View)} where evView == this drag layer. @@ -201,12 +193,6 @@ public abstract class BaseDragLayer<T extends Context & ActivityContext> mActiveController = null; if (canFindActiveController()) { mActiveController = findControllerToHandleTouch(ev); - if (mActiveController != null) { - // Logging here won't show log on every touch event, only on the start of new - // gestures to prevent spamming the logcat with logs. - Log.i(TAG, mActiveController.dump()); - } - } return mActiveController != null; } @@ -529,8 +515,7 @@ public abstract class BaseDragLayer<T extends Context & ActivityContext> writer.println(prefix + "DragLayer:"); if (mActiveController != null) { writer.println(prefix + "\tactiveController: " + mActiveController); - writer.println(prefix + "\t" + mActiveController.dump()); - + mActiveController.dump(prefix + "\t", writer); } writer.println(prefix + "\tdragLayerAlpha : " + mMultiValueAlpha ); } @@ -571,13 +556,20 @@ public abstract class BaseDragLayer<T extends Context & ActivityContext> public WindowInsets dispatchApplyWindowInsets(WindowInsets insets) { if (Utilities.ATLEAST_R) { Insets gestureInsets = insets.getMandatorySystemGestureInsets(); - mSystemGestureRegion.set(gestureInsets.left, gestureInsets.top, gestureInsets.right, - gestureInsets.bottom); - if (mContainer.getDeviceProfile().isTaskbarPresent) { - // Ignore taskbar gesture insets to avoid interfering with TouchControllers. - mSystemGestureRegion.bottom = ResourceUtils.getNavbarSize( + int gestureInsetBottom = gestureInsets.bottom; + Insets imeInset = insets.getInsets(WindowInsets.Type.ime()); + DeviceProfile dp = mContainer.getDeviceProfile(); + if (dp.isTaskbarPresent) { + // Ignore taskbar gesture insets to avoid interfering with TouchControllers. + gestureInsetBottom = ResourceUtils.getNavbarSize( ResourceUtils.NAVBAR_BOTTOM_GESTURE_SIZE, getResources()); } + mSystemGestureRegion.set( + Math.max(gestureInsets.left, imeInset.left), + Math.max(gestureInsets.top, imeInset.top), + Math.max(gestureInsets.right, imeInset.right), + Math.max(gestureInsetBottom, imeInset.bottom) + ); } return super.dispatchApplyWindowInsets(insets); } diff --git a/src/com/android/launcher3/views/ClipIconView.java b/src/com/android/launcher3/views/ClipIconView.java index f7fdd613a0..a295d6b52e 100644 --- a/src/com/android/launcher3/views/ClipIconView.java +++ b/src/com/android/launcher3/views/ClipIconView.java @@ -16,6 +16,7 @@ package com.android.launcher3.views; import static com.android.app.animation.Interpolators.LINEAR; +import static com.android.launcher3.Flags.enableAdditionalHomeAnimations; import static com.android.launcher3.Utilities.boundToRange; import static com.android.launcher3.Utilities.mapToRange; import static com.android.launcher3.anim.AnimatorListeners.forEndCallback; @@ -48,7 +49,6 @@ import com.android.launcher3.Flags; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.dragndrop.FolderAdaptiveIcon; -import com.android.launcher3.graphics.ShapeDelegate; import com.android.launcher3.graphics.ThemeManager; /** @@ -67,9 +67,9 @@ public class ClipIconView extends View implements ClipPathView { private @Nullable Drawable mBackground; private boolean mIsAdaptiveIcon = false; - private boolean mIsFolderIcon = false; private ValueAnimator mRevealAnimator; + private float mIconScale; private final Rect mStartRevealRect = new Rect(); private final Rect mEndRevealRect = new Rect(); @@ -101,6 +101,9 @@ public class ClipIconView extends View implements ClipPathView { * within the clip bounds of this view. */ public void setTaskViewArtist(TaskViewArtist taskViewArtist) { + if (!enableAdditionalHomeAnimations()) { + return; + } mTaskViewArtist = taskViewArtist; invalidate(); } @@ -122,7 +125,7 @@ public class ClipIconView extends View implements ClipPathView { MarginLayoutParams lp = (MarginLayoutParams) container.getLayoutParams(); float dX = mIsRtl - ? rect.left - (dp.getDeviceProperties().getWidthPx() - lp.getMarginStart() - lp.width) + ? rect.left - (dp.widthPx - lp.getMarginStart() - lp.width) : rect.left - lp.getMarginStart(); float dY = rect.top - lp.topMargin; container.setTranslationX(dX); @@ -164,7 +167,7 @@ public class ClipIconView extends View implements ClipPathView { float shapeRevealProgress = boundToRange(mapToRange(max(shapeProgressStart, progress), shapeProgressStart, 1f, 0, toMax, LINEAR), 0, 1); - if (dp.getDeviceProperties().isLandscape()) { + if (dp.isLandscape) { mOutline.right = (int) (rect.width() / scale); } else { mOutline.bottom = (int) (rect.height() / scale); @@ -173,12 +176,12 @@ public class ClipIconView extends View implements ClipPathView { mTaskCornerRadius = cornerRadius / scale; if (mIsAdaptiveIcon) { final ThemeManager themeManager = ThemeManager.INSTANCE.get(getContext()); + mIconScale = themeManager.getIconState().getIconScale(); if ((!isOpening || Flags.enableLauncherIconShapes()) && progress >= shapeProgressStart) { if (mRevealAnimator == null) { - ShapeDelegate shape = mIsFolderIcon ? themeManager.getFolderShape() - : themeManager.getIconShape(); - mRevealAnimator = shape.createRevealAnimator(this, mStartRevealRect, + mRevealAnimator = themeManager.getIconShape() + .createRevealAnimator(this, mStartRevealRect, mOutline, mTaskCornerRadius, !isOpening); mRevealAnimator.addListener(forEndCallback(() -> mRevealAnimator = null)); mRevealAnimator.start(); @@ -188,16 +191,16 @@ public class ClipIconView extends View implements ClipPathView { mRevealAnimator.setCurrentFraction(shapeRevealProgress); } - float drawableScale = (dp.getDeviceProperties().isLandscape() ? mOutline.width() : mOutline.height()) + float drawableScale = (dp.isLandscape ? mOutline.width() : mOutline.height()) / minSize; - setBackgroundDrawableBounds(drawableScale, dp.getDeviceProperties().isLandscape()); + setBackgroundDrawableBounds(drawableScale, dp.isLandscape); // Center align foreground int height = mFinalDrawableBounds.height(); int width = mFinalDrawableBounds.width(); - int diffY = dp.getDeviceProperties().isLandscape() ? 0 + int diffY = dp.isLandscape ? 0 : (int) (((height * drawableScale) - height) / 2); - int diffX = dp.getDeviceProperties().isLandscape() ? (int) (((width * drawableScale) - width) / 2) + int diffX = dp.isLandscape ? (int) (((width * drawableScale) - width) / 2) : 0; sTmpRect.set(mFinalDrawableBounds); sTmpRect.offset(diffX, diffY); @@ -232,7 +235,7 @@ public class ClipIconView extends View implements ClipPathView { boolean isOpening, DeviceProfile dp) { mIsAdaptiveIcon = drawable instanceof AdaptiveIconDrawable; if (mIsAdaptiveIcon) { - mIsFolderIcon = drawable instanceof FolderAdaptiveIcon; + boolean isFolderIcon = drawable instanceof FolderAdaptiveIcon; AdaptiveIconDrawable adaptiveIcon = (AdaptiveIconDrawable) drawable; Drawable background = adaptiveIcon.getBackground(); @@ -252,7 +255,7 @@ public class ClipIconView extends View implements ClipPathView { int blurMargin = mBlurSizeOutline / 2; mFinalDrawableBounds.set(0, 0, originalWidth, originalHeight); - if (!mIsFolderIcon) { + if (!isFolderIcon) { mFinalDrawableBounds.inset(iconOffset - blurMargin, iconOffset - blurMargin); } mForeground.setBounds(mFinalDrawableBounds); @@ -260,18 +263,18 @@ public class ClipIconView extends View implements ClipPathView { mStartRevealRect.set(0, 0, originalWidth, originalHeight); - if (!mIsFolderIcon) { + if (!isFolderIcon) { Utilities.scaleRectAboutCenter(mStartRevealRect, ICON_VISIBLE_AREA_FACTOR); } - if (dp.getDeviceProperties().isLandscape()) { - lp.width = (int) Math.max(lp.width, lp.height * dp.getDeviceProperties().getAspectRatio()); + if (dp.isLandscape) { + lp.width = (int) Math.max(lp.width, lp.height * dp.aspectRatio); } else { - lp.height = (int) Math.max(lp.height, lp.width * dp.getDeviceProperties().getAspectRatio()); + lp.height = (int) Math.max(lp.height, lp.width * dp.aspectRatio); } int left = mIsRtl - ? dp.getDeviceProperties().getWidthPx() - lp.getMarginStart() - lp.width + ? dp.widthPx - lp.getMarginStart() - lp.width : lp.leftMargin; layout(left, lp.topMargin, left + lp.width, lp.topMargin + lp.height); @@ -285,7 +288,7 @@ public class ClipIconView extends View implements ClipPathView { bgDrawableStartScale = scale; mOutline.set(0, 0, lp.width, lp.height); } - setBackgroundDrawableBounds(bgDrawableStartScale, dp.getDeviceProperties().isLandscape()); + setBackgroundDrawableBounds(bgDrawableStartScale, dp.isLandscape); mEndRevealRect.set(0, 0, lp.width, lp.height); setOutlineProvider(new ViewOutlineProvider() { @Override @@ -316,6 +319,11 @@ public class ClipIconView extends View implements ClipPathView { canvas.clipPath(mClipPath); } int count2 = canvas.save(); + float iconCenterX = + (mFinalDrawableBounds.right - mFinalDrawableBounds.left) / 2f * mIconScale; + float iconCenterY = + (mFinalDrawableBounds.bottom - mFinalDrawableBounds.top) / 2f * mIconScale; + canvas.scale(mIconScale, mIconScale, iconCenterX, iconCenterY); if (mBackground != null) { mBackground.draw(canvas); } diff --git a/src/com/android/launcher3/views/FloatingIconView.java b/src/com/android/launcher3/views/FloatingIconView.java index f71fa0d260..a5d7740fb2 100644 --- a/src/com/android/launcher3/views/FloatingIconView.java +++ b/src/com/android/launcher3/views/FloatingIconView.java @@ -18,6 +18,7 @@ package com.android.launcher3.views; import static android.view.Gravity.LEFT; import static com.android.app.animation.Interpolators.LINEAR; +import static com.android.launcher3.Flags.enableAdditionalHomeAnimations; import static com.android.launcher3.Utilities.getFullDrawable; import static com.android.launcher3.Utilities.mapToRange; import static com.android.launcher3.util.Executors.MODEL_EXECUTOR; @@ -168,7 +169,8 @@ public class FloatingIconView extends FrameLayout implements // FIV hasn't fully laid out. During those frames, hide this FIV and continue drawing the // TaskView directly while transforming it in the place of this FIV. However, if we fade // the TaskView at all, we need to display this FIV regardless. - setAlpha(isLaidOut() || taskViewDrawAlpha < 255 ? alpha : 0f); + setAlpha(!enableAdditionalHomeAnimations() || isLaidOut() || taskViewDrawAlpha < 255 + ? alpha : 0f); mClipIconView.update(rect, progress, shapeProgressStart, cornerRadius, isOpening, this, mLauncher.getDeviceProfile(), taskViewDrawAlpha); @@ -226,14 +228,14 @@ public class FloatingIconView extends FrameLayout implements // Position the floating view exactly on top of the original lp.topMargin = Math.round(pos.top); if (mIsRtl) { - lp.setMarginStart(Math.round(mLauncher.getDeviceProfile().getDeviceProperties().getWidthPx() - pos.right)); + lp.setMarginStart(Math.round(mLauncher.getDeviceProfile().widthPx - pos.right)); } else { lp.setMarginStart(Math.round(pos.left)); } // Set the properties here already to make sure they are available when running the first // animation frame. int left = mIsRtl - ? mLauncher.getDeviceProfile().getDeviceProperties().getWidthPx() - lp.getMarginStart() - lp.width + ? mLauncher.getDeviceProfile().widthPx - lp.getMarginStart() - lp.width : lp.leftMargin; layout(left, lp.topMargin, left + lp.width, lp.topMargin + lp.height); } @@ -370,8 +372,8 @@ public class FloatingIconView extends FrameLayout implements mFinalDrawableBounds.set(0, 0, originalWidth, originalHeight); - float aspectRatio = mLauncher.getDeviceProfile().getDeviceProperties().getAspectRatio(); - if (dp.getDeviceProperties().isLandscape()) { + float aspectRatio = mLauncher.getDeviceProfile().aspectRatio; + if (dp.isLandscape) { lp.width = (int) Math.max(lp.width, lp.height * aspectRatio); } else { lp.height = (int) Math.max(lp.height, lp.width * aspectRatio); diff --git a/src/com/android/launcher3/views/IconButtonView.java b/src/com/android/launcher3/views/IconButtonView.java index ab48524135..0ac1919485 100644 --- a/src/com/android/launcher3/views/IconButtonView.java +++ b/src/com/android/launcher3/views/IconButtonView.java @@ -121,7 +121,7 @@ public class IconButtonView extends BubbleTextView { @TargetApi(Build.VERSION_CODES.TIRAMISU) IconDrawable(Bitmap b, int colorBg, Drawable fg) { super(b); - paint.setColorFilter(new BlendModeColorFilter(colorBg, BlendMode.SRC_IN)); + mPaint.setColorFilter(new BlendModeColorFilter(colorBg, BlendMode.SRC_IN)); mFg = fg; } diff --git a/src/com/android/launcher3/views/OptionsPopupView.java b/src/com/android/launcher3/views/OptionsPopupView.java index 8c462ba13a..ee2cab3ebe 100644 --- a/src/com/android/launcher3/views/OptionsPopupView.java +++ b/src/com/android/launcher3/views/OptionsPopupView.java @@ -16,7 +16,6 @@ package com.android.launcher3.views; import static com.android.launcher3.BuildConfigs.WIDGETS_ENABLED; -import static com.android.launcher3.LauncherState.ALL_APPS; import static com.android.launcher3.LauncherState.EDIT_MODE; import static com.android.launcher3.config.FeatureFlags.MULTI_SELECT_EDIT_MODE; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.IGNORE; @@ -43,6 +42,7 @@ import android.widget.Toast; import androidx.annotation.Nullable; import androidx.core.content.ContextCompat; +import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherSettings; import com.android.launcher3.R; @@ -53,6 +53,7 @@ import com.android.launcher3.popup.ArrowPopup; import com.android.launcher3.shortcuts.DeepShortcutView; import com.android.launcher3.testing.TestLogging; import com.android.launcher3.testing.shared.TestProtocol; +import com.android.launcher3.widget.picker.WidgetsFullSheet; import java.util.ArrayList; import java.util.List; @@ -216,12 +217,16 @@ public class OptionsPopupView<T extends Context & ActivityContext> extends Arrow } /** - * Used by the options to open All Apps. + * Used by the options to open All Apps, uses an intent as to not tie the implementation of + * opening All Apps with OptionsPopup, instead it uses the public API to open All Apps. */ public static boolean enterAllApps(View view) { Launcher launcher = Launcher.getLauncher(view.getContext()); - launcher.getStatsLogManager().keyboardStateManager().setLaunchedFromA11y(true); - launcher.getStateManager().goToState(ALL_APPS); + launcher.startActivity( + new Intent(Intent.ACTION_ALL_APPS) + .setComponent(launcher.getComponentName()) + .setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP) + ); return true; } @@ -232,7 +237,23 @@ public class OptionsPopupView<T extends Context & ActivityContext> extends Arrow } private static boolean onWidgetsClicked(View view) { - return Launcher.getLauncher(view.getContext()).openWidgetPicker(); + return openWidgets(Launcher.getLauncher(view.getContext())) != null; + } + + /** Returns WidgetsFullSheet that was opened, or null if nothing was opened. */ + @Nullable + public static WidgetsFullSheet openWidgets(Launcher launcher) { + if (launcher.getPackageManager().isSafeMode()) { + Toast.makeText(launcher, R.string.safemode_widget_error, Toast.LENGTH_SHORT).show(); + return null; + } else { + AbstractFloatingView floatingView = AbstractFloatingView.getTopOpenViewWithType( + launcher, TYPE_WIDGETS_FULL_SHEET); + if (floatingView != null) { + return (WidgetsFullSheet) floatingView; + } + return WidgetsFullSheet.show(launcher, true /* animated */); + } } private static boolean startSettings(View view) { diff --git a/src/com/android/launcher3/views/ScrimView.java b/src/com/android/launcher3/views/ScrimView.java index 7577b9a029..77b23c0163 100644 --- a/src/com/android/launcher3/views/ScrimView.java +++ b/src/com/android/launcher3/views/ScrimView.java @@ -185,35 +185,6 @@ public class ScrimView extends View implements Insettable { mOpaquenessListeners.remove(listener); } - /** - * Set foreground and background color to this ScrimView - */ - public void setScrimColors(ScrimColors scrimColors) { - this.setBackgroundColor(scrimColors.getBackgroundColor()); - setForeground(new ColorDrawable(scrimColors.getForegroundColor())); - } - - /** - * returns foreground and background color of this ScrimView - */ - public ScrimColors getScrimColors() { - int backgroundColor; - if (getBackground() instanceof ColorDrawable colorDrawable) { - backgroundColor = colorDrawable.getColor(); - } else { - backgroundColor = Color.TRANSPARENT; - } - - int foregroundColor; - if (getForeground() instanceof ColorDrawable colorDrawable) { - foregroundColor = colorDrawable.getColor(); - } else { - foregroundColor = Color.TRANSPARENT; - } - - return new ScrimColors(backgroundColor, foregroundColor); - } - /** * A Utility interface allowing for other surfaces to draw on ScrimView */ diff --git a/src/com/android/launcher3/views/Snackbar.java b/src/com/android/launcher3/views/Snackbar.java index c45dc7f9a5..6ecc43f4de 100644 --- a/src/com/android/launcher3/views/Snackbar.java +++ b/src/com/android/launcher3/views/Snackbar.java @@ -121,7 +121,7 @@ public class Snackbar extends AbstractFloatingView { DeviceProfile deviceProfile = activity.getDeviceProfile(); params.setMargins(0, 0, 0, marginBottom + (deviceProfile.isTaskbarPresent - ? deviceProfile.getTaskbarProfile().getHeight() + deviceProfile.getTaskbarOffsetY() + ? deviceProfile.taskbarHeight + deviceProfile.getTaskbarOffsetY() : insets.bottom)); TextView labelView = snackbar.findViewById(R.id.label); diff --git a/src/com/android/launcher3/widget/AddItemWidgetsBottomSheet.java b/src/com/android/launcher3/widget/AddItemWidgetsBottomSheet.java index e12b7f07e4..fa07f5ea12 100644 --- a/src/com/android/launcher3/widget/AddItemWidgetsBottomSheet.java +++ b/src/com/android/launcher3/widget/AddItemWidgetsBottomSheet.java @@ -26,12 +26,10 @@ import android.view.View; import android.view.ViewGroup; import android.view.ViewParent; import android.view.WindowInsets; -import android.view.WindowInsets.Type; import android.widget.ScrollView; import com.android.launcher3.DeviceProfile; import com.android.launcher3.R; -import com.android.launcher3.Utilities; import com.android.launcher3.dragndrop.AddItemActivity; import com.android.launcher3.views.AbstractSlideInView; @@ -105,7 +103,7 @@ public class AddItemWidgetsBottomSheet extends AbstractSlideInView<AddItemActivi protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { DeviceProfile deviceProfile = mActivityContext.getDeviceProfile(); int widthUsed; - if (deviceProfile.getDeviceProperties().isTablet()) { + if (deviceProfile.isTablet) { int margin = deviceProfile.allAppsLeftRightMargin; widthUsed = Math.max(2 * margin, 2 * (mInsets.left + mInsets.right)); } else if (mInsets.bottom > 0) { @@ -117,8 +115,7 @@ public class AddItemWidgetsBottomSheet extends AbstractSlideInView<AddItemActivi } measureChildWithMargins(mContent, widthMeasureSpec, - widthUsed, heightMeasureSpec, - deviceProfile.getBottomSheetProfile().getBottomSheetTopPadding()); + widthUsed, heightMeasureSpec, deviceProfile.bottomSheetTopPadding); setMeasuredDimension(MeasureSpec.getSize(widthMeasureSpec), MeasureSpec.getSize(heightMeasureSpec)); } @@ -156,28 +153,21 @@ public class AddItemWidgetsBottomSheet extends AbstractSlideInView<AddItemActivi @SuppressLint("NewApi") // Already added API check. @Override public WindowInsets onApplyWindowInsets(View view, WindowInsets windowInsets) { - Insets insets; - if (Utilities.ATLEAST_R) { - insets = windowInsets.getInsets(Type.systemBars()); - mInsets.set(insets.left, insets.top, insets.right, insets.bottom); - mContent.setPadding(mContent.getPaddingStart(), mContent.getPaddingTop(), - mContent.getPaddingEnd(), mInsets.bottom); - } else { - mInsets.set(windowInsets.getSystemWindowInsetLeft(), - windowInsets.getSystemWindowInsetTop(), - windowInsets.getSystemWindowInsetRight(), - windowInsets.getSystemWindowInsetBottom()); - } + Insets insets = windowInsets.getInsets(WindowInsets.Type.systemBars()); + mInsets.set(insets.left, insets.top, insets.right, insets.bottom); + mContent.setPadding(mContent.getPaddingStart(), mContent.getPaddingTop(), + mContent.getPaddingEnd(), mInsets.bottom); + int contentHorizontalMarginInPx = getResources().getDimensionPixelSize( - R.dimen.widget_list_horizontal_margin); + R.dimen.widget_list_horizontal_margin); if (contentHorizontalMarginInPx != mContentHorizontalMarginInPx) { setContentHorizontalMargin(findViewById(R.id.widget_appName), - contentHorizontalMarginInPx); + contentHorizontalMarginInPx); setContentHorizontalMargin(findViewById(R.id.widget_drag_instruction), - contentHorizontalMarginInPx); + contentHorizontalMarginInPx); setContentHorizontalMargin(findViewById(R.id.widget_cell), contentHorizontalMarginInPx); setContentHorizontalMargin(findViewById(R.id.actions_container), - contentHorizontalMarginInPx); + contentHorizontalMarginInPx); mContentHorizontalMarginInPx = contentHorizontalMarginInPx; } return windowInsets; diff --git a/src/com/android/launcher3/widget/BaseWidgetSheet.java b/src/com/android/launcher3/widget/BaseWidgetSheet.java index f1edb976e2..ce208717d1 100644 --- a/src/com/android/launcher3/widget/BaseWidgetSheet.java +++ b/src/com/android/launcher3/widget/BaseWidgetSheet.java @@ -19,7 +19,7 @@ import static com.android.app.animation.Interpolators.EMPHASIZED; import static com.android.launcher3.LauncherState.NORMAL; import static com.android.launcher3.anim.AnimatorListeners.forSuccessCallback; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WIDGET_ADD_BUTTON_TAP; -import static com.android.window.flags2.Flags.predictiveBackThreeButtonNav; +import static com.android.window.flags.Flags.predictiveBackThreeButtonNav; import android.content.Context; import android.graphics.Canvas; @@ -80,8 +80,10 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> private boolean mDisableNavBarScrim = false; - @Nullable private WidgetCell mWidgetCellWithAddButton = null; - @Nullable private WidgetItem mLastSelectedWidgetItem = null; + @Nullable + private WidgetCell mWidgetCellWithAddButton = null; + @Nullable + private WidgetItem mLastSelectedWidgetItem = null; public BaseWidgetSheet(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); @@ -93,7 +95,8 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> } /** - * Returns the margins to be applied to the left and right of the widget apps list. + * Returns the margins to be applied to the left and right of the widget apps + * list. */ protected int getWidgetListHorizontalMargin() { return getResources().getDimensionPixelSize( @@ -151,7 +154,7 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> WidgetCell wc; if (v instanceof WidgetCell view) { wc = view; - } else if (v.getParent() instanceof WidgetCell parent) { + } else if (v.getParent() instanceof WidgetCell parent) { wc = parent; } else { return; @@ -192,30 +195,35 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> @Override protected float getShiftRange() { - // We add the extra height added during predictive back / swipe up to the shift range, so + // We add the extra height added during predictive back / swipe up to the shift + // range, so // that the idle interpolator knows to animate the view off fully. return mContent.getHeight() + getBottomOffsetPx(); } /** - * Click handler for tap to add button. This handler assumes we are in the Launcher activity and + * Click handler for tap to add button. This handler assumes we are in the + * Launcher activity and * should not be used when the widget sheet is displayed elsewhere. */ private void addWidget(@NonNull PendingAddItemInfo info) { - // Using a boolean flag here to make sure the callback is only run once. This should never - // happen because we close the sheet and it will be reconstructed the next time it is + // Using a boolean flag here to make sure the callback is only run once. This + // should never + // happen because we close the sheet and it will be reconstructed the next time + // it is // needed. final AtomicBoolean hasRun = new AtomicBoolean(false); addOnCloseListener(() -> { - if (hasRun.get()) return; + if (hasRun.get()) + return; hasRun.set(true); // Going to NORMAL state will also dismiss the All Apps view if it is showing. Launcher launcher = Launcher.getLauncher(mActivityContext); launcher.getStateManager().goToState(NORMAL, forSuccessCallback(() -> { launcher.getAccessibilityDelegate().addToWorkspace(info, - /*accessibility=*/ false, - /*finishCallback=*/ (success) -> { + /* accessibility= */ false, + /* finishCallback= */ (success) -> { mActivityContext.getStatsLogManager() .logger() .withItemInfo(info) @@ -227,7 +235,8 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> } /** - * Scroll to show the widget cell. If both the bottom and top of the cell are clipped, this will + * Scroll to show the widget cell. If both the bottom and top of the cell are + * clipped, this will * prioritize showing the bottom of the cell (where the add button is). */ private void scrollToWidgetCell(@NonNull WidgetCell wc) { @@ -259,12 +268,12 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> } /** - * Find the nearest scrollable container of the given WidgetCell, and scroll by the given + * Find the nearest scrollable container of the given WidgetCell, and scroll by + * the given * amount. */ protected abstract void scrollCellContainerByY(WidgetCell wc, int scrollByY); - /** * Return the top clip of any sticky headers over the given cell. */ @@ -273,7 +282,8 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> } /** - * Returns the component of the widget that is currently showing an add button, if any. + * Returns the component of the widget that is currently showing an add button, + * if any. */ @Nullable protected WidgetItem getLastSelectedWidgetItem() { @@ -304,7 +314,8 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> @Override public void setInsets(Rect insets) { mInsets.set(insets); - @Px int contentHorizontalMargin = getWidgetListHorizontalMargin(); + @Px + int contentHorizontalMargin = getWidgetListHorizontalMargin(); if (contentHorizontalMargin != mContentHorizontalMargin) { onContentHorizontalMarginChanged(contentHorizontalMargin); mContentHorizontalMargin = contentHorizontalMargin; @@ -346,7 +357,8 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> protected abstract void onContentHorizontalMarginChanged(int contentHorizontalMarginInPx); /** - * Measures the dimension of this view and its children by taking system insets, navigation bar, + * Measures the dimension of this view and its children by taking system insets, + * navigation bar, * status bar, into account. */ protected void doMeasure(int widthMeasureSpec, int heightMeasureSpec) { @@ -354,8 +366,7 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> DeviceProfile deviceProfile = mActivityContext.getDeviceProfile(); measureChildWithMargins(mContent, widthMeasureSpec, - widthUsed, heightMeasureSpec, - deviceProfile.getBottomSheetProfile().getBottomSheetTopPadding()); + widthUsed, heightMeasureSpec, deviceProfile.bottomSheetTopPadding); setMeasuredDimension(MeasureSpec.getSize(widthMeasureSpec), MeasureSpec.getSize(heightMeasureSpec)); } @@ -366,7 +377,7 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> protected int getInsetsWidth() { int widthUsed; DeviceProfile deviceProfile = mActivityContext.getDeviceProfile(); - if (deviceProfile.getDeviceProperties().isTablet()) { + if (deviceProfile.isTablet) { widthUsed = Math.max(2 * getTabletHorizontalMargin(deviceProfile), 2 * (mInsets.left + mInsets.right)); } else if (mInsets.bottom > 0) { @@ -386,8 +397,9 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> @Override protected Interpolator getIdleInterpolator() { - return mActivityContext.getDeviceProfile().getDeviceProperties().isTablet() - ? EMPHASIZED : super.getIdleInterpolator(); + return mActivityContext.getDeviceProfile().isTablet + ? EMPHASIZED + : super.getIdleInterpolator(); } protected void onCloseComplete() { @@ -404,8 +416,7 @@ public abstract class BaseWidgetSheet extends AbstractSlideInView<BaseActivity> boolean isNavBarDark = Themes.getAttrBoolean(getContext(), R.attr.isMainColorDark); // In light mode, landscape reverses navbar background color. - boolean isPhoneLandscape = - !mActivityContext.getDeviceProfile().getDeviceProperties().isTablet() && mInsets.bottom == 0; + boolean isPhoneLandscape = !mActivityContext.getDeviceProfile().isTablet && mInsets.bottom == 0; if (!isNavBarDark && isPhoneLandscape) { isNavBarDark = true; } diff --git a/src/com/android/launcher3/widget/DatabaseWidgetPreviewLoader.java b/src/com/android/launcher3/widget/DatabaseWidgetPreviewLoader.java index 8247fc7025..819c1eebec 100644 --- a/src/com/android/launcher3/widget/DatabaseWidgetPreviewLoader.java +++ b/src/com/android/launcher3/widget/DatabaseWidgetPreviewLoader.java @@ -54,6 +54,7 @@ import com.android.launcher3.pm.ShortcutConfigActivityInfo; import com.android.launcher3.util.CancellableTask; import com.android.launcher3.util.Executors; import com.android.launcher3.util.LooperExecutor; +import com.android.launcher3.views.ActivityContext; import com.android.launcher3.widget.util.WidgetSizes; import java.util.concurrent.ExecutionException; @@ -70,11 +71,8 @@ public class DatabaseWidgetPreviewLoader { private final Context mContext; - private final DeviceProfile mDeviceProfile; - - public DatabaseWidgetPreviewLoader(Context context, DeviceProfile deviceProfile) { + public DatabaseWidgetPreviewLoader(Context context) { mContext = context; - mDeviceProfile = deviceProfile; } /** @@ -189,12 +187,14 @@ public class DatabaseWidgetPreviewLoader { int previewWidth; int previewHeight; + DeviceProfile dp = ActivityContext.lookupContext(mContext).getDeviceProfile(); + if (widgetPreviewExists && drawable.getIntrinsicWidth() > 0 && drawable.getIntrinsicHeight() > 0) { previewWidth = drawable.getIntrinsicWidth(); previewHeight = drawable.getIntrinsicHeight(); } else { - Size widgetSize = WidgetSizes.getWidgetSizePx(mDeviceProfile, spanX, spanY); + Size widgetSize = WidgetSizes.getWidgetSizePx(dp, spanX, spanY); previewWidth = widgetSize.getWidth(); previewHeight = widgetSize.getHeight(); } @@ -258,7 +258,7 @@ public class DatabaseWidgetPreviewLoader { Drawable icon = info.getFullResIcon( LauncherAppState.getInstance(mContext).getIconCache()); if (icon != null) { - int appIconSize = mDeviceProfile.iconSizePx; + int appIconSize = dp.iconSizePx; int iconSize = (int) Math.min(appIconSize * scale, Math.min(boxRect.width(), boxRect.height())); @@ -276,7 +276,7 @@ public class DatabaseWidgetPreviewLoader { private Bitmap generateShortcutPreview( ShortcutConfigActivityInfo info, int maxWidth, int maxHeight) { - int iconSize = mDeviceProfile.getAllAppsProfile().getIconSizePx(); + int iconSize = ActivityContext.lookupContext(mContext).getDeviceProfile().allAppsIconSizePx; int padding = mContext.getResources() .getDimensionPixelSize(R.dimen.widget_preview_shortcut_padding); diff --git a/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfo.java b/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfo.java index 23ac46c0ad..10e131d639 100644 --- a/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfo.java +++ b/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfo.java @@ -116,7 +116,7 @@ public class LauncherAppWidgetProviderInfo extends AppWidgetProviderInfo impleme // On phones we no longer support regular landscape, only fixed landscape for this // reason we don't need to take regular landscape into account in phones if (Flags.oneGridSpecs() && dp.inv.deviceType == TYPE_PHONE - && dp.inv.isFixedLandscape != dp.getDeviceProperties().isLandscape()) { + && dp.inv.isFixedLandscape != dp.isLandscape) { continue; } diff --git a/src/com/android/launcher3/widget/PendingAppWidgetHostView.java b/src/com/android/launcher3/widget/PendingAppWidgetHostView.java index 0bda27bd39..1157117c34 100644 --- a/src/com/android/launcher3/widget/PendingAppWidgetHostView.java +++ b/src/com/android/launcher3/widget/PendingAppWidgetHostView.java @@ -22,7 +22,6 @@ import static android.graphics.Paint.FILTER_BITMAP_FLAG; import static com.android.launcher3.graphics.PreloadIconDrawable.newPendingIcon; import static com.android.launcher3.model.data.LauncherAppWidgetInfo.FLAG_PROVIDER_NOT_READY; -import static com.android.launcher3.icons.cache.CacheLookupFlag.DEFAULT_LOOKUP_FLAG; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import android.appwidget.AppWidgetProviderInfo; @@ -133,7 +132,7 @@ public class PendingAppWidgetHostView extends LauncherAppWidgetHostView info.pendingItemInfo = new PackageItemInfo(info.providerName.getPackageName(), info.user); LauncherAppState.getInstance(context).getIconCache() - .updateIconInBackground(this, info.pendingItemInfo, DEFAULT_LOOKUP_FLAG); + .updateIconInBackground(this, info.pendingItemInfo); } else { reapplyItemInfo(info.pendingItemInfo); } @@ -308,7 +307,7 @@ public class PendingAppWidgetHostView extends LauncherAppWidgetHostView // 3) App icon in the center with a setup icon on the top left corner. if (mDisabledForSafeMode) { FastBitmapDrawable disabledIcon = info.newIcon(getContext()); - disabledIcon.setDisabled(true); + disabledIcon.setIsDisabled(true); mCenterDrawable = disabledIcon; mSettingIconDrawable = null; } else if (isReadyForClickSetup()) { diff --git a/src/com/android/launcher3/widget/PendingItemDragHelper.java b/src/com/android/launcher3/widget/PendingItemDragHelper.java index 00782966f7..04d69e96af 100644 --- a/src/com/android/launcher3/widget/PendingItemDragHelper.java +++ b/src/com/android/launcher3/widget/PendingItemDragHelper.java @@ -29,7 +29,6 @@ import android.view.View; import android.view.View.MeasureSpec; import android.widget.RemoteViews; -import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.launcher3.DeviceProfile; @@ -45,14 +44,12 @@ import com.android.launcher3.icons.BaseIconFactory; import com.android.launcher3.icons.FastBitmapDrawable; import com.android.launcher3.icons.LauncherIcons; import com.android.launcher3.icons.RoundDrawableWrapper; -import com.android.launcher3.widget.DatabaseWidgetPreviewLoader.WidgetPreviewInfo; - -import java.util.Objects; import app.lawnchair.LawnchairAppWidgetHostView; /** - * Extension of {@link DragPreviewProvider} with logic specific to pending widgets/shortcuts + * Extension of {@link DragPreviewProvider} with logic specific to pending + * widgets/shortcuts * dragged from the widget tray. */ public class PendingItemDragHelper extends DragPreviewProvider { @@ -62,10 +59,11 @@ public class PendingItemDragHelper extends DragPreviewProvider { private final PendingAddItemInfo mAddInfo; private int[] mEstimatedCellSize; - @Nullable private RemoteViews mRemoteViewsPreview; - @Nullable private WidgetPreviewInfo mWidgetPreviewInfo; + @Nullable + private RemoteViews mRemoteViewsPreview; private float mRemoteViewsPreviewScale = 1f; - @Nullable private NavigableAppWidgetHostView mAppWidgetHostViewPreview; + @Nullable + private NavigableAppWidgetHostView mAppWidgetHostViewPreview; private final float mEnforcedRoundedCornersForWidget; public PendingItemDragHelper(View view) { @@ -76,14 +74,8 @@ public class PendingItemDragHelper extends DragPreviewProvider { } /** - * Set the necessary information about the preview, so a preview can be built for drag and drop. - */ - public void setWidgetPreviewInfo(@NonNull WidgetPreviewInfo previewInfo) { - mWidgetPreviewInfo = previewInfo; - } - - /** - * Sets a {@link RemoteViews} which shows an app widget preview provided by app developers in + * Sets a {@link RemoteViews} which shows an app widget preview provided by app + * developers in * the pin widget flow. */ public void setRemoteViewsPreview(@Nullable RemoteViews remoteViewsPreview, @@ -92,7 +84,10 @@ public class PendingItemDragHelper extends DragPreviewProvider { mRemoteViewsPreviewScale = previewScale; } - /** Sets a {@link NavigableAppWidgetHostView} which shows a preview layout of an app widget. */ + /** + * Sets a {@link NavigableAppWidgetHostView} which shows a preview layout of an + * app widget. + */ public void setAppWidgetHostViewPreview( @Nullable NavigableAppWidgetHostView appWidgetHostViewPreview) { mAppWidgetHostViewPreview = appWidgetHostViewPreview; @@ -104,11 +99,13 @@ public class PendingItemDragHelper extends DragPreviewProvider { /** * Starts the drag for the pending item associated with the view. * - * @param previewBounds The bounds where the image was displayed, - * {@link WidgetImageView#getBitmapBounds()} - * @param previewBitmapWidth The actual width of the bitmap displayed in the view. - * @param previewViewWidth The width of {@link WidgetImageView} displaying the preview - * @param screenPos Position of {@link WidgetImageView} on the screen + * @param previewBounds The bounds where the image was displayed, + * {@link WidgetImageView#getBitmapBounds()} + * @param previewBitmapWidth The actual width of the bitmap displayed in the + * view. + * @param previewViewWidth The width of {@link WidgetImageView} displaying the + * preview + * @param screenPos Position of {@link WidgetImageView} on the screen */ public void startDrag(Rect previewBounds, int previewBitmapWidth, int previewViewWidth, Point screenPos, DragSource source, DragOptions options) { @@ -132,30 +129,7 @@ public class PendingItemDragHelper extends DragPreviewProvider { int[] previewSizeBeforeScale = new int[1]; - if (mWidgetPreviewInfo != null) { - if (mWidgetPreviewInfo.previewBitmap != null) { - Drawable drawable = new FastBitmapDrawable(mWidgetPreviewInfo.previewBitmap); - drawable = new RoundDrawableWrapper(drawable, mEnforcedRoundedCornersForWidget); - preview = drawable; - if (drawable.getIntrinsicWidth() > 0 - && drawable.getIntrinsicHeight() > 0) { - previewSizeBeforeScale[0] = drawable.getIntrinsicWidth(); - } - } else { - mAppWidgetHostViewPreview = new LawnchairAppWidgetHostView(launcher); - mAppWidgetHostViewPreview.setAppWidget(/* appWidgetId= */ -1, - mWidgetPreviewInfo.providerInfo); - mAppWidgetHostViewPreview.setClipChildren(false); - mAppWidgetHostViewPreview.setClipToPadding(false); - mAppWidgetHostViewPreview.updateAppWidget(/* remoteViews= */ - mWidgetPreviewInfo.remoteViews); - - DeviceProfile deviceProfile = launcher.getDeviceProfile(); - Size widgetSizes = getWidgetSizePx(deviceProfile, mAddInfo.spanX, - mAddInfo.spanY); - measureAndUpdateAppWidgetHostViewScale(widgetSizes); - } - } else if (mRemoteViewsPreview != null) { + if (mRemoteViewsPreview != null) { mAppWidgetHostViewPreview = new LawnchairAppWidgetHostView(launcher); mAppWidgetHostViewPreview.setAppWidget(/* appWidgetId= */ -1, ((PendingAddWidgetInfo) mAddInfo).info); @@ -173,9 +147,9 @@ public class PendingItemDragHelper extends DragPreviewProvider { previewSizeBeforeScale[0] = mAppWidgetHostViewPreview.getMeasuredWidth(); } if (preview == null && mAppWidgetHostViewPreview == null) { - Drawable p = new FastBitmapDrawable(new DatabaseWidgetPreviewLoader(launcher, - launcher.getDeviceProfile()).generateWidgetPreview(createWidgetInfo.info, - maxWidth, previewSizeBeforeScale)); + Drawable p = new FastBitmapDrawable(new DatabaseWidgetPreviewLoader(launcher) + .generateWidgetPreview( + createWidgetInfo.info, maxWidth, previewSizeBeforeScale)); p = new RoundDrawableWrapper(p, mEnforcedRoundedCornersForWidget); preview = p; } @@ -215,7 +189,7 @@ public class PendingItemDragHelper extends DragPreviewProvider { .getFullResIcon(app.getIconCache()); LauncherIcons li = LauncherIcons.obtain(launcher); preview = new FastBitmapDrawable( - li.createScaledBitmap(icon, BaseIconFactory.MODE_DEFAULT)); + li.createBadgedIconBitmap(icon)); previewWidth = preview.getIntrinsicWidth(); previewHeight = preview.getIntrinsicHeight(); li.recycle(); @@ -255,38 +229,6 @@ public class PendingItemDragHelper extends DragPreviewProvider { } } - private void measureAndUpdateAppWidgetHostViewScale(Size widgetSizes) { - Objects.requireNonNull(mAppWidgetHostViewPreview).measure( - MeasureSpec.makeMeasureSpec(widgetSizes.getWidth(), - MeasureSpec.EXACTLY), - MeasureSpec.makeMeasureSpec(widgetSizes.getHeight(), - MeasureSpec.EXACTLY)); - - // Scale the preview to fit the widget's size. Not all widgets fill bounds, so we need to - // scale them. - if (mAppWidgetHostViewPreview.getChildCount() == 1) { - View content = mAppWidgetHostViewPreview.getChildAt(0); - float contentWidth = content.getMeasuredWidth(); - float contentHeight = content.getMeasuredHeight(); - if (contentWidth > 0 && contentHeight > 0) { - - // Take the content width based on the edge furthest from the center, so that when - // scaling the hostView, the farthest edge is still visible. - contentWidth = 2 * Math.max(contentWidth / 2 - content.getLeft(), - content.getRight() - contentWidth / 2); - contentHeight = 2 * Math.max(contentHeight / 2 - content.getTop(), - content.getBottom() - contentHeight / 2); - - if (contentWidth > 0 && contentHeight > 0) { - float pWidth = widgetSizes.getWidth(); - float pHeight = widgetSizes.getHeight(); - mAppWidgetHostViewPreview.setScaleToFit( - Math.min(pWidth / contentWidth, pHeight / contentHeight)); - } - } - } - } - @Override protected Bitmap convertPreviewToAlphaBitmap(Bitmap preview) { if (mAddInfo instanceof PendingAddShortcutInfo || mEstimatedCellSize == null) { diff --git a/src/com/android/launcher3/widget/WidgetCell.java b/src/com/android/launcher3/widget/WidgetCell.java index 12f2d44b62..40414d0f04 100644 --- a/src/com/android/launcher3/widget/WidgetCell.java +++ b/src/com/android/launcher3/widget/WidgetCell.java @@ -19,7 +19,6 @@ package com.android.launcher3.widget; import static android.view.accessibility.AccessibilityNodeInfo.ACTION_CLICK; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_WIDGETS_TRAY; -import static com.android.launcher3.icons.cache.CacheLookupFlag.DEFAULT_LOOKUP_FLAG; import static com.android.launcher3.widget.util.WidgetSizes.getWidgetItemSizePx; import android.animation.Animator; @@ -70,8 +69,6 @@ import java.util.function.Consumer; import app.lawnchair.LawnchairAppWidgetHostView; import app.lawnchair.font.FontManager; import app.lawnchair.theme.drawable.DrawableTokens; -import app.lawnchair.preferences2.PreferenceManager2; -import com.patrykmichalik.opto.core.PreferenceExtensionsKt; /** * Represents the individual cell of the widget inside the widget tray. The preview is drawn @@ -84,8 +81,6 @@ import com.patrykmichalik.opto.core.PreferenceExtensionsKt; */ public class WidgetCell extends LinearLayout { - PreferenceManager2 prefs2 = PreferenceManager2.INSTANCE.get(getContext()); - private static final String TAG = "WidgetCell"; private static final boolean DEBUG = false; @@ -140,8 +135,7 @@ public class WidgetCell extends LinearLayout { super(context, attrs, defStyle); mActivity = ActivityContext.lookupContext(context); - mWidgetPreviewLoader = new DatabaseWidgetPreviewLoader(context, - mActivity.getDeviceProfile()); + mWidgetPreviewLoader = new DatabaseWidgetPreviewLoader(context); mLongPressHelper = new CheckLongPressHelper(this); mLongPressHelper.setLongPressTimeoutFactor(1); mEnforcedCornerRadius = RoundedCornerEnforcement.computeEnforcedRadius(context); @@ -588,8 +582,7 @@ public class WidgetCell extends LinearLayout { mItem.componentName.getPackageName(), mItem.user); mIconLoadRequest = LauncherAppState.getInstance(getContext()).getIconCache() - .updateIconInBackground(this::reapplyIconInfo, tmpPackageItem, - DEFAULT_LOOKUP_FLAG); + .updateIconInBackground(this::reapplyIconInfo, tmpPackageItem); } } @@ -615,7 +608,6 @@ public class WidgetCell extends LinearLayout { * @param callback Callback to be set on the button. */ public void showAddButton(View.OnClickListener callback) { - if (PreferenceExtensionsKt.firstBlocking(prefs2.getLockHomeScreen())) return; if (mIsShowingAddButton) return; mIsShowingAddButton = true; diff --git a/src/com/android/launcher3/widget/WidgetInflater.kt b/src/com/android/launcher3/widget/WidgetInflater.kt index 9f895a54c4..33fb002822 100644 --- a/src/com/android/launcher3/widget/WidgetInflater.kt +++ b/src/com/android/launcher3/widget/WidgetInflater.kt @@ -90,13 +90,6 @@ constructor( } } - // Use requested spans instead of the default widget size for the grid. - // See b/408934352 - if (appWidgetInfo != null) { - appWidgetInfo.spanX = item.spanX - appWidgetInfo.spanY = item.spanY - } - // If the provider is ready, but the widget is not yet restored, try to restore it. if ( !item.hasRestoreFlag(LauncherAppWidgetInfo.FLAG_PROVIDER_NOT_READY) && diff --git a/src/com/android/launcher3/widget/custom/CustomWidgetManager.java b/src/com/android/launcher3/widget/custom/CustomWidgetManager.java index f153570d9b..20cce8fc2d 100644 --- a/src/com/android/launcher3/widget/custom/CustomWidgetManager.java +++ b/src/com/android/launcher3/widget/custom/CustomWidgetManager.java @@ -16,6 +16,7 @@ package com.android.launcher3.widget.custom; +import static com.android.launcher3.Flags.enableSmartspaceAsAWidget; import static com.android.launcher3.model.data.LauncherAppWidgetInfo.CUSTOM_WIDGET_ID; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.widget.LauncherAppWidgetProviderInfo.CLS_CUSTOM_WIDGET_PREFIX; @@ -26,11 +27,13 @@ import android.content.ComponentName; import android.content.Context; import android.os.Parcel; import android.os.Process; +import android.util.Log; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; +import com.android.launcher3.R; import com.android.launcher3.dagger.ApplicationContext; import com.android.launcher3.dagger.LauncherAppSingleton; import com.android.launcher3.dagger.LauncherBaseAppComponent; @@ -43,6 +46,7 @@ import com.android.launcher3.widget.LauncherAppWidgetProviderInfo; import com.android.systemui.plugins.CustomWidgetPlugin; import com.android.systemui.plugins.PluginListener; +import java.lang.reflect.InvocationTargetException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -86,6 +90,22 @@ public class CustomWidgetManager implements PluginListener<CustomWidgetPlugin> { mCustomWidgets = new ArrayList<>(); pluginManager.addPluginListener(this, CustomWidgetPlugin.class, true); + if (enableSmartspaceAsAWidget()) { + for (String s: context.getResources() + .getStringArray(R.array.custom_widget_providers)) { + try { + Class<?> cls = Class.forName(s); + CustomWidgetPlugin plugin = (CustomWidgetPlugin) + cls.getDeclaredConstructor(Context.class).newInstance(context); + MAIN_EXECUTOR.execute(() -> onPluginConnected(plugin, context)); + } catch (ClassNotFoundException | InstantiationException + | IllegalAccessException + | ClassCastException | NoSuchMethodException + | InvocationTargetException e) { + Log.e(TAG, "Exception found when trying to add custom widgets: " + e); + } + } + } tracker.addCloseable(() -> pluginManager.removePluginListener(this)); } diff --git a/src/com/android/launcher3/widget/picker/WidgetRecommendationCategoryProvider.java b/src/com/android/launcher3/widget/picker/WidgetRecommendationCategoryProvider.java index 49a1696f8c..8f34fe3572 100644 --- a/src/com/android/launcher3/widget/picker/WidgetRecommendationCategoryProvider.java +++ b/src/com/android/launcher3/widget/picker/WidgetRecommendationCategoryProvider.java @@ -26,10 +26,13 @@ import com.android.launcher3.R; import com.android.launcher3.model.WidgetItem; import com.android.launcher3.util.ApplicationInfoWrapper; import com.android.launcher3.util.Preconditions; +import com.android.launcher3.util.ResourceBasedOverride; /** - * To categorize widget recommendations. - * Method {@code getWidgetRecommendationCategory} is called per widget to get + * A {@link ResourceBasedOverride} that categorizes widget recommendations. + * + * <p>Override the {@code widget_recommendation_category_provider_class} resource to provide your + * own implementation. Method {@code getWidgetRecommendationCategory} is called per widget to get * the category.</p> */ public class WidgetRecommendationCategoryProvider { diff --git a/src/com/android/launcher3/widget/picker/WidgetRecommendationsView.java b/src/com/android/launcher3/widget/picker/WidgetRecommendationsView.java index e73caadc8b..333db0b03e 100644 --- a/src/com/android/launcher3/widget/picker/WidgetRecommendationsView.java +++ b/src/com/android/launcher3/widget/picker/WidgetRecommendationsView.java @@ -176,7 +176,7 @@ public final class WidgetRecommendationsView extends PagedView<PageIndicatorDots * <p>In case of a single category, no title is displayed for it.</p> * * @param recommendations a map of widget items per recommendation category - * @param deviceProfile the current {@link deviceprofile} + * @param deviceProfile the current {@link DeviceProfile} * @param availableHeight height in px that can be used to display the recommendations; * recommendations that don't fit in this height won't be shown * @param availableWidth width in px that the recommendations should display in diff --git a/src/com/android/launcher3/widget/picker/WidgetsFullSheet.java b/src/com/android/launcher3/widget/picker/WidgetsFullSheet.java index cc4e4c56c3..7b905a7358 100644 --- a/src/com/android/launcher3/widget/picker/WidgetsFullSheet.java +++ b/src/com/android/launcher3/widget/picker/WidgetsFullSheet.java @@ -678,12 +678,11 @@ public class WidgetsFullSheet extends BaseWidgetSheet protected float getMaxAvailableHeightForRecommendations() { // There isn't enough space to show recommendations in landscape orientation on phones with // a full sheet design. Tablets use a two pane picker. - if (mDeviceProfile.getDeviceProperties().isLandscape()) { + if (mDeviceProfile.isLandscape) { return 0f; } - return (mDeviceProfile.getDeviceProperties().getHeightPx() - - mDeviceProfile.getBottomSheetProfile().getBottomSheetTopPadding()) + return (mDeviceProfile.heightPx - mDeviceProfile.bottomSheetTopPadding) * RECOMMENDATION_TABLE_HEIGHT_RATIO; } @@ -698,22 +697,13 @@ public class WidgetsFullSheet extends BaseWidgetSheet if (getPopupContainer().getInsets().bottom > 0) { mContent.setAlpha(0); } - setUpOpenAnimation( - mActivityContext - .getDeviceProfile() - .getBottomSheetProfile() - .getBottomSheetOpenDuration() - ); + setUpOpenAnimation(mActivityContext.getDeviceProfile().bottomSheetOpenDuration); Animator animator = mOpenCloseAnimation.getAnimationPlayer(); animator.setInterpolator(AnimationUtils.loadInterpolator( getContext(), android.R.interpolator.linear_out_slow_in)); post(() -> { - animator.setDuration( - mActivityContext - .getDeviceProfile() - .getBottomSheetProfile() - .getBottomSheetOpenDuration() - ).start(); + animator.setDuration(mActivityContext.getDeviceProfile().bottomSheetOpenDuration) + .start(); mContent.animate().alpha(1).setDuration(FADE_IN_DURATION); }); } else { @@ -724,13 +714,7 @@ public class WidgetsFullSheet extends BaseWidgetSheet @Override protected void handleClose(boolean animate) { - handleClose( - animate, - mActivityContext - .getDeviceProfile() - .getBottomSheetProfile() - .getBottomSheetCloseDuration() - ); + handleClose(animate, mActivityContext.getDeviceProfile().bottomSheetCloseDuration); } @Override @@ -816,7 +800,7 @@ public class WidgetsFullSheet extends BaseWidgetSheet } private static int getWidgetSheetId(BaseActivity activity) { - boolean isTwoPane = activity.getDeviceProfile().getDeviceProperties().isTablet(); + boolean isTwoPane = activity.getDeviceProfile().isTablet; return isTwoPane ? R.layout.widgets_two_pane_sheet : R.layout.widgets_full_sheet; } @@ -970,7 +954,7 @@ public class WidgetsFullSheet extends BaseWidgetSheet private static boolean shouldRecreateLayout(DeviceProfile oldDp, DeviceProfile newDp) { // When folding/unfolding the foldables, we need to switch between the regular widget picker // and the two pane picker, so we rebuild the picker with the correct layout. - return oldDp.getDeviceProperties().isTwoPanels() != newDp.getDeviceProperties().isTwoPanels(); + return oldDp.isTwoPanels != newDp.isTwoPanels; } /** diff --git a/src/com/android/launcher3/widget/picker/WidgetsListHeader.java b/src/com/android/launcher3/widget/picker/WidgetsListHeader.java index fbbd13d7a8..f60883db72 100644 --- a/src/com/android/launcher3/widget/picker/WidgetsListHeader.java +++ b/src/com/android/launcher3/widget/picker/WidgetsListHeader.java @@ -17,8 +17,6 @@ package com.android.launcher3.widget.picker; import static android.animation.ValueAnimator.areAnimatorsEnabled; -import static com.android.launcher3.icons.cache.CacheLookupFlag.DEFAULT_LOOKUP_FLAG; - import android.content.Context; import android.content.res.TypedArray; import android.graphics.drawable.Drawable; @@ -258,7 +256,7 @@ public final class WidgetsListHeader extends LinearLayout implements ItemInfoUpd } if (getTag() instanceof ItemInfoWithIcon info && info.getMatchingLookupFlag().useLowRes()) { mIconLoadRequest = LauncherAppState.getInstance(getContext()).getIconCache() - .updateIconInBackground(this, info, DEFAULT_LOOKUP_FLAG); + .updateIconInBackground(this, info); } } } diff --git a/src/com/android/launcher3/widget/picker/WidgetsTwoPaneSheet.java b/src/com/android/launcher3/widget/picker/WidgetsTwoPaneSheet.java index 2255adaf6b..678ddbab33 100644 --- a/src/com/android/launcher3/widget/picker/WidgetsTwoPaneSheet.java +++ b/src/com/android/launcher3/widget/picker/WidgetsTwoPaneSheet.java @@ -136,7 +136,7 @@ public class WidgetsTwoPaneSheet extends WidgetsFullSheet { mWidgetRecommendationsView.initParentViews(mWidgetRecommendationsContainer); mWidgetRecommendationsView.setWidgetCellLongClickListener(this); mWidgetRecommendationsView.setWidgetCellOnClickListener(this); - if (!mDeviceProfile.getDeviceProperties().isTwoPanels()) { + if (!mDeviceProfile.isTwoPanels) { mWidgetRecommendationsView.enableFullPageViewIfLowDensity(); } // To save the currently displayed page, so that, it can be requested when rebinding @@ -242,7 +242,7 @@ public class WidgetsTwoPaneSheet extends WidgetsFullSheet { @Override protected void onLayout(boolean changed, int l, int t, int r, int b) { super.onLayout(changed, l, t, r, b); - if (changed && mDeviceProfile.getDeviceProperties().isTwoPanels()) { + if (changed && mDeviceProfile.isTwoPanels) { LinearLayout layout = mContent.findViewById(R.id.linear_layout_container); FrameLayout leftPane = layout.findViewById(R.id.recycler_view_container); LinearLayout.LayoutParams layoutParams = (LayoutParams) leftPane.getLayoutParams(); @@ -405,8 +405,7 @@ public class WidgetsTwoPaneSheet extends WidgetsFullSheet { return Float.MAX_VALUE; } - return (mDeviceProfile.getDeviceProperties().getHeightPx() - - mDeviceProfile.getBottomSheetProfile().getBottomSheetTopPadding()) + return (mDeviceProfile.heightPx - mDeviceProfile.bottomSheetTopPadding) * RECOMMENDATION_SECTION_HEIGHT_RATIO_TWO_PANE; } @@ -415,7 +414,7 @@ public class WidgetsTwoPaneSheet extends WidgetsFullSheet { protected int getAvailableWidthForSuggestions(int pickerAvailableWidth) { int rightPaneWidth = (int) Math.ceil(0.67 * pickerAvailableWidth); - if (mDeviceProfile.getDeviceProperties().isTwoPanels()) { + if (mDeviceProfile.isTwoPanels) { // See onLayout int leftPaneWidth = (int) (0.33 * pickerAvailableWidth); @Px int minLeftPaneWidthPx = Utilities.dpToPx(MINIMUM_WIDTH_LEFT_PANE_FOLDABLE_DP); diff --git a/src/com/android/launcher3/widget/picker/model/WidgetPickerDataProvider.kt b/src/com/android/launcher3/widget/picker/model/WidgetPickerDataProvider.kt index 837142a80d..5b97a49536 100644 --- a/src/com/android/launcher3/widget/picker/model/WidgetPickerDataProvider.kt +++ b/src/com/android/launcher3/widget/picker/model/WidgetPickerDataProvider.kt @@ -16,7 +16,11 @@ package com.android.launcher3.widget.picker.model +import android.content.Context +import com.android.launcher3.dagger.LauncherComponentProvider.appComponent import com.android.launcher3.model.WidgetItem +import com.android.launcher3.model.WidgetsFilterDataProvider +import com.android.launcher3.model.WidgetsFilterDataProvider.WidgetsFilterLoadedCallback import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.widget.model.WidgetsListBaseEntry import com.android.launcher3.widget.picker.model.data.WidgetPickerData @@ -29,7 +33,11 @@ import java.util.function.Predicate * Provides [WidgetPickerData] to various views such as widget picker, app-specific widget picker, * widgets shortcut. */ -class WidgetPickerDataProvider { +class WidgetPickerDataProvider(private val filterProvider: WidgetsFilterDataProvider) : + WidgetsFilterLoadedCallback { + + constructor(context: Context) : this(context.appComponent.widgetsFilterDataProvider) + /** All the widgets data provided for the views */ private var mWidgetPickerData: WidgetPickerData = WidgetPickerData() @@ -44,11 +52,19 @@ class WidgetPickerDataProvider { this.changeListener = changeListener } + init { + filterProvider.addFilterChangeCallback(this) + } + /** Returns the current snapshot of [WidgetPickerData]. */ fun get(): WidgetPickerData { return mWidgetPickerData } + override fun onWidgetsFilterLoaded() { + setWidgets(allWidgets) + } + /** * Updates the widgets available to the widget picker. * @@ -57,11 +73,19 @@ class WidgetPickerDataProvider { fun setWidgets(allWidgets: List<WidgetsListBaseEntry>) { this.allWidgets = allWidgets - val defaultWidgetsFilter = hostSpecifiedDefaultWidgetsFilter + val currentFilter = filterProvider.defaultWidgetsFilter + val finalFilter = + when { + currentFilter != null && hostSpecifiedDefaultWidgetsFilter != null -> + currentFilter.and(hostSpecifiedDefaultWidgetsFilter) + hostSpecifiedDefaultWidgetsFilter != null -> hostSpecifiedDefaultWidgetsFilter + else -> currentFilter + } + val defaultWidgets = - if (defaultWidgetsFilter != null) + if (finalFilter != null) allWidgets - .map { it.copy().apply { mWidgets.removeIf(defaultWidgetsFilter.negate()) } } + .map { it.copy().apply { mWidgets.removeIf(finalFilter) } } .filter { it.mWidgets.isNotEmpty() } else emptyList() @@ -87,7 +111,7 @@ class WidgetPickerDataProvider { } fun destroy() { - changeListener = null + filterProvider.removeFilterChangeCallback(this) } interface WidgetPickerDataChangeListener { diff --git a/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSize.kt b/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSize.kt index ae933bc173..a0414ba136 100644 --- a/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSize.kt +++ b/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSize.kt @@ -23,23 +23,13 @@ import kotlin.math.abs /** Size of a preview container in terms of the grid spans. */ data class WidgetPreviewContainerSize(@JvmField val spanX: Int, @JvmField val spanY: Int) { companion object { - /** - * Returns a template that can be used for presenting featured widgets in widget picker. - **/ - fun pickTemplateForFeaturedWidgets(dp: DeviceProfile): List<WidgetPreviewContainerSize> = - if (dp.deviceProperties.isTablet && !dp.deviceProperties.isTwoPanels) { - TABLET_FEATURED_CONTAINER_SIZES.random() - } else { - HANDHELD_FEATURED_CONTAINER_SIZES.random() - } - /** * Returns the size of the preview container in which the given widget's preview should be * displayed (by scaling it if necessary). */ fun forItem(item: WidgetItem, dp: DeviceProfile): WidgetPreviewContainerSize { val sizes = - if (dp.deviceProperties.isTablet && !dp.deviceProperties.isTwoPanels) { + if (dp.isTablet && !dp.isTwoPanels) { TABLET_WIDGET_PREVIEW_SIZES } else { HANDHELD_WIDGET_PREVIEW_SIZES @@ -53,7 +43,7 @@ data class WidgetPreviewContainerSize(@JvmField val spanX: Int, @JvmField val sp return findClosestFittingContainer( containerSizes = sizes.toList(), startIndex = index, - item = item, + item = item ) } } @@ -64,7 +54,7 @@ data class WidgetPreviewContainerSize(@JvmField val spanX: Int, @JvmField val sp private fun findClosestFittingContainer( containerSizes: List<WidgetPreviewContainerSize>, startIndex: Int, - item: WidgetItem, + item: WidgetItem ): WidgetPreviewContainerSize { // Checks if it's a smaller container, but close enough to keep the down-scale minimal. fun hasAcceptableSize(currentIndex: Int): Boolean { diff --git a/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSizes.kt b/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSizes.kt index 65b0b6fc69..1ab8f8bb54 100644 --- a/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSizes.kt +++ b/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSizes.kt @@ -33,36 +33,6 @@ val HANDHELD_WIDGET_PREVIEW_SIZES: List<WidgetPreviewContainerSize> = WidgetPreviewContainerSize(spanX = 1, spanY = 1), ) -/** - * List of templates that can be used for selecting container sizes to show for featured widgets in - * the widget picker for the handheld. - */ -val HANDHELD_FEATURED_CONTAINER_SIZES: List<List<WidgetPreviewContainerSize>> = - listOf( - listOf( - WidgetPreviewContainerSize(1, 1), - WidgetPreviewContainerSize(1, 1), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(4, 1), - WidgetPreviewContainerSize(4, 2), - ), listOf( - WidgetPreviewContainerSize(2, 1), - WidgetPreviewContainerSize(2, 1), - WidgetPreviewContainerSize(4, 1), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(4, 2), - ), - listOf( - WidgetPreviewContainerSize(4, 1), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(4, 1), - WidgetPreviewContainerSize(4, 3), - ) - ) - /** * An ordered list of recommended sizes for the preview containers in tablet devices (with larger * grids). @@ -81,33 +51,3 @@ val TABLET_WIDGET_PREVIEW_SIZES: List<WidgetPreviewContainerSize> = WidgetPreviewContainerSize(spanX = 2, spanY = 1), WidgetPreviewContainerSize(spanX = 1, spanY = 1), ) - -/** - * List of templates that can be used for selecting container sizes to show for featured widgets in - * the widget picker for tablets. - */ -val TABLET_FEATURED_CONTAINER_SIZES: List<List<WidgetPreviewContainerSize>> = - listOf( - listOf( - WidgetPreviewContainerSize(1, 1), - WidgetPreviewContainerSize(1, 1), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(3, 1), - WidgetPreviewContainerSize(3, 2), - ), listOf( - WidgetPreviewContainerSize(2, 1), - WidgetPreviewContainerSize(2, 1), - WidgetPreviewContainerSize(3, 1), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(3, 2), - ), - listOf( - WidgetPreviewContainerSize(3, 1), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(2, 2), - WidgetPreviewContainerSize(3, 1), - WidgetPreviewContainerSize(3, 3), - ) - ) diff --git a/src/com/android/launcher3/widget/util/WidgetSizes.java b/src/com/android/launcher3/widget/util/WidgetSizes.java index f5125fb59e..695feb2a29 100644 --- a/src/com/android/launcher3/widget/util/WidgetSizes.java +++ b/src/com/android/launcher3/widget/util/WidgetSizes.java @@ -15,6 +15,8 @@ */ package com.android.launcher3.widget.util; +import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; + import android.appwidget.AppWidgetHostView; import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProviderInfo; @@ -30,7 +32,6 @@ import android.util.SizeF; import com.android.launcher3.DeviceProfile; import com.android.launcher3.LauncherAppState; import com.android.launcher3.R; -import com.android.launcher3.dagger.LauncherComponentProvider; import com.android.launcher3.Utilities; import com.android.launcher3.model.WidgetItem; @@ -79,7 +80,7 @@ public final class WidgetSizes { public static Size getWidgetItemSizePx(Context context, DeviceProfile profile, WidgetItem widgetItem) { if (widgetItem.isShortcut()) { - int dimension = profile.getAllAppsProfile().getIconSizePx() + 2 * context.getResources() + int dimension = profile.allAppsIconSizePx + 2 * context.getResources() .getDimensionPixelSize(R.dimen.widget_preview_shortcut_padding); return new Size(dimension, dimension); } @@ -105,13 +106,37 @@ public final class WidgetSizes { * from {@code spanX}, {@code spanY} in all supported device profiles. */ public static void updateWidgetSizeRangesAsync(int widgetId, - AppWidgetProviderInfo info, Context context, int spanX, int spanY) { + AppWidgetProviderInfo info, Context context, int spanX, int spanY) { if (widgetId <= 0 || info == null) { return; } - LauncherComponentProvider.get(context).getWidgetSizeHandler() - .updateSizeRangesAsync(widgetId, info, spanX, spanY); + UI_HELPER_EXECUTOR.execute(() -> { + AppWidgetManager widgetManager = AppWidgetManager.getInstance(context); + Bundle sizeOptions = getWidgetSizeOptions(context, info.provider, spanX, spanY); + + if (sizeOptions == null) { + Log.e("WidgetSizes", "Failed to get widget size options for widgetId: " + widgetId); + return; + } + + Bundle currentOptions = widgetManager.getAppWidgetOptions(widgetId); + if (currentOptions == null) { + currentOptions = new Bundle(); + } + + if(!Utilities.ATLEAST_S) return; + ArrayList<SizeF> newSizes = sizeOptions.getParcelableArrayList(AppWidgetManager.OPTION_APPWIDGET_SIZES); + ArrayList<SizeF> currentSizes = currentOptions.getParcelableArrayList(AppWidgetManager.OPTION_APPWIDGET_SIZES); + + if (newSizes != null && !newSizes.equals(currentSizes)) { + try { + widgetManager.updateAppWidgetOptions(widgetId, sizeOptions); + } catch (Exception e) { + Log.e("WidgetSizes", "Error updating widget options for widgetId: " + widgetId, e); + } + } + }); } /** @@ -121,7 +146,7 @@ public final class WidgetSizes { int spanY) { ArrayList<SizeF> paddedSizes = getWidgetSizesDp(context, spanX, spanY); if (paddedSizes == null || paddedSizes.isEmpty()) { - Log.e("LC-WidgetSizes", "Failed to get widget sizes for provider: " + provider); + Log.e("WidgetSizes", "Failed to get widget sizes for provider: " + provider); return null; } @@ -134,6 +159,8 @@ public final class WidgetSizes { if (Utilities.ATLEAST_S) { options.putParcelableArrayList(AppWidgetManager.OPTION_APPWIDGET_SIZES, paddedSizes); } + Log.d("b/267448330", "provider: " + provider + ", paddedSizes: " + paddedSizes + + ", getMinMaxSizes: " + rect); return options; } diff --git a/src/com/android/launcher3/workprofile/PersonalWorkSlidingTabStrip.java b/src/com/android/launcher3/workprofile/PersonalWorkSlidingTabStrip.java index 534157f75f..de94edebd2 100644 --- a/src/com/android/launcher3/workprofile/PersonalWorkSlidingTabStrip.java +++ b/src/com/android/launcher3/workprofile/PersonalWorkSlidingTabStrip.java @@ -28,9 +28,12 @@ import androidx.annotation.Nullable; import com.android.launcher3.DeviceProfile; import com.android.launcher3.R; +import com.android.launcher3.pageindicators.Direction; import com.android.launcher3.pageindicators.PageIndicator; import com.android.launcher3.views.ActivityContext; +import java.util.function.Consumer; + import app.lawnchair.font.FontManager; import app.lawnchair.theme.color.tokens.ColorStateListTokens; import app.lawnchair.theme.drawable.DrawableTokens; @@ -81,7 +84,8 @@ public class PersonalWorkSlidingTabStrip extends LinearLayout implements PageInd } @Override - public void setScroll(int currentScroll, int totalScroll) {} + public void setScroll(int currentScroll, int totalScroll) { + } @Override public void setActiveMarker(int activePage) { @@ -100,6 +104,11 @@ public class PersonalWorkSlidingTabStrip extends LinearLayout implements PageInd public void setMarkersCount(int numMarkers) { } + @Override + public void setArrowClickListener(Consumer<Direction> listener) { + // No-Op. All Apps doesn't need accessibility arrows for single click navigation. + } + @Override public boolean hasOverlappingRendering() { return false; @@ -121,8 +130,7 @@ public class PersonalWorkSlidingTabStrip extends LinearLayout implements PageInd */ public static int getTabWidth(Context context, int totalWidth) { DeviceProfile grid = ActivityContext.lookupContext(context).getDeviceProfile(); - int iconPadding = totalWidth / grid.numShownAllAppsColumns - - grid.getAllAppsProfile().getIconSizePx(); + int iconPadding = totalWidth / grid.numShownAllAppsColumns - grid.allAppsIconSizePx; return totalWidth - iconPadding; } diff --git a/src_build_config/com/android/launcher3/BuildConfig.java b/src_build_config/com/android/launcher3/BuildConfig.java index 3d39c37b6e..6d4f56d655 100644 --- a/src_build_config/com/android/launcher3/BuildConfig.java +++ b/src_build_config/com/android/launcher3/BuildConfig.java @@ -26,6 +26,11 @@ public final class BuildConfig { */ public static final boolean QSB_ON_FIRST_SCREEN = true; + /** + * Flag to state if the widget on the top of the first screen should be shown. + */ + public static final boolean WIDGET_ON_FIRST_SCREEN = false; + /** * Flag to control various developer centric features */ diff --git a/src_no_quickstep/com/android/launcher3/dagger/Modules.kt b/src_no_quickstep/com/android/launcher3/dagger/Modules.kt index 244634022a..21d8e06cdd 100644 --- a/src_no_quickstep/com/android/launcher3/dagger/Modules.kt +++ b/src_no_quickstep/com/android/launcher3/dagger/Modules.kt @@ -44,7 +44,3 @@ abstract class StaticObjectModule { // Module containing bindings for the final derivative app @Module abstract class AppModule {} - -@Module abstract class PerDisplayModule {} - -@Module abstract class LauncherConcurrencyModule {} diff --git a/src_no_quickstep/com/android/launcher3/uioverrides/states/AllAppsState.java b/src_no_quickstep/com/android/launcher3/uioverrides/states/AllAppsState.java index 9d0816d5ba..03a553534f 100644 --- a/src_no_quickstep/com/android/launcher3/uioverrides/states/AllAppsState.java +++ b/src_no_quickstep/com/android/launcher3/uioverrides/states/AllAppsState.java @@ -18,13 +18,11 @@ package com.android.launcher3.uioverrides.states; import static com.android.app.animation.Interpolators.DECELERATE; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_ALLAPPS; -import android.graphics.Color; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherState; import com.android.launcher3.R; import com.android.launcher3.util.Themes; import com.android.launcher3.views.ActivityContext; -import com.android.launcher3.views.ScrimColors; /** * Definition for AllApps state @@ -67,7 +65,7 @@ public class AllAppsState extends LauncherState { @Override public ScaleAndTranslation getHotseatScaleAndTranslation(Launcher launcher) { - if (launcher.getDeviceProfile().getDeviceProperties().isTablet()) { + if (launcher.getDeviceProfile().isTablet) { return getWorkspaceScaleAndTranslation(launcher); } else { ScaleAndTranslation overviewScaleAndTranslation = LauncherState.OVERVIEW @@ -85,7 +83,7 @@ public class AllAppsState extends LauncherState { return new PageAlphaProvider(DECELERATE) { @Override public float getPageAlpha(int pageIndex) { - return launcher.getDeviceProfile().getDeviceProperties().isTablet() + return launcher.getDeviceProfile().isTablet ? superPageAlphaProvider.getPageAlpha(pageIndex) : 0; } @@ -98,11 +96,9 @@ public class AllAppsState extends LauncherState { } @Override - public ScrimColors getWorkspaceScrimColor(Launcher launcher) { - return new ScrimColors( - /* backgroundColor */ launcher.getDeviceProfile().getDeviceProperties().isTablet() + public int getWorkspaceScrimColor(Launcher launcher) { + return launcher.getDeviceProfile().isTablet ? launcher.getResources().getColor(R.color.widgets_picker_scrim) - : Themes.getAttrColor(launcher, R.attr.allAppsScrimColor), - /* foregroundColor */ Color.TRANSPARENT); + : Themes.getAttrColor(launcher, R.attr.allAppsScrimColor); } } diff --git a/src_no_quickstep/com/android/launcher3/uioverrides/states/OverviewState.java b/src_no_quickstep/com/android/launcher3/uioverrides/states/OverviewState.java index 9627932619..532a338237 100644 --- a/src_no_quickstep/com/android/launcher3/uioverrides/states/OverviewState.java +++ b/src_no_quickstep/com/android/launcher3/uioverrides/states/OverviewState.java @@ -17,13 +17,11 @@ package com.android.launcher3.uioverrides.states; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_OVERVIEW; -import android.graphics.Color; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherState; import com.android.launcher3.R; import com.android.launcher3.util.Themes; import com.android.launcher3.views.ActivityContext; -import com.android.launcher3.views.ScrimColors; /** * Definition for overview state @@ -62,9 +60,7 @@ public class OverviewState extends LauncherState { } @Override - public ScrimColors getWorkspaceScrimColor(Launcher launcher) { - return new ScrimColors( - /* backgroundColor */ Themes.getAttrColor(launcher, R.attr.overviewScrimColor), - /* foregroundColor */ Color.TRANSPARENT); + public int getWorkspaceScrimColor(Launcher launcher) { + return Themes.getAttrColor(launcher, R.attr.overviewScrimColor); } } diff --git a/src_no_quickstep/com/android/launcher3/util/StateManagerProtoLogProxy.java b/src_no_quickstep/com/android/launcher3/util/StateManagerProtoLogProxy.java index 6906f63533..34e15f70ce 100644 --- a/src_no_quickstep/com/android/launcher3/util/StateManagerProtoLogProxy.java +++ b/src_no_quickstep/com/android/launcher3/util/StateManagerProtoLogProxy.java @@ -29,7 +29,5 @@ public class StateManagerProtoLogProxy { public static void logOnStateTransitionEnd(Object state) { } - public static void logOnRepeatStateSetAborted(Object state) { } - public static void logCancelAnimation(boolean animationOngoing, String trace) { } } diff --git a/systemUI/anim/.gitignore b/systemUI/anim/.gitignore new file mode 100644 index 0000000000..f9a33dbbcc --- /dev/null +++ b/systemUI/anim/.gitignore @@ -0,0 +1,9 @@ +.idea/ +.gradle/ +gradle/ +build/ +gradlew* +local.properties +*.iml +android.properties +buildSrc \ No newline at end of file diff --git a/systemUI/anim/Android.bp b/systemUI/anim/Android.bp new file mode 100644 index 0000000000..dec664fa7a --- /dev/null +++ b/systemUI/anim/Android.bp @@ -0,0 +1,79 @@ +// Copyright (C) 2021 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package { + default_team: "trendy_team_system_ui_please_use_a_more_specific_subteam_if_possible_", + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_packages_SystemUI_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_packages_SystemUI_license"], +} + +android_library { + + name: "PlatformAnimationLib", + use_resource_processor: true, + + srcs: [ + "src/**/*.java", + "src/**/*.kt", + ], + exclude_srcs: [ + "src/com/android/systemui/surfaceeffects/**/*.java", + "src/com/android/systemui/surfaceeffects/**/*.kt", + ], + + resource_dirs: [ + "res", + ], + + static_libs: [ + "androidx.core_core-animation", + "androidx.core_core-ktx", + "androidx.annotation_annotation", + "com_android_systemui_flags_lib", + "SystemUIShaderLib", + "WindowManager-Shell-shared", + "//frameworks/libs/systemui:animationlib", + "//frameworks/libs/systemui:com_android_systemui_shared_flags_lib", + ], + + manifest: "AndroidManifest.xml", + kotlincflags: ["-Xjvm-default=all"], +} + +android_library { + name: "SystemUIShaderLib", + use_resource_processor: true, + + srcs: [ + "src/com/android/systemui/surfaceeffects/**/*.java", + "src/com/android/systemui/surfaceeffects/**/*.kt", + ], + + static_libs: [ + "androidx.core_core-animation", + "androidx.core_core-ktx", + "androidx.annotation_annotation", + ], + + manifest: "AndroidManifest.xml", + kotlincflags: ["-Xjvm-default=all"], + + // sdk_version must be specified, otherwise it compiles against private APIs. + min_sdk_version: "33", + sdk_version: "current", +} diff --git a/systemUI/anim/AndroidManifest.xml b/systemUI/anim/AndroidManifest.xml new file mode 100644 index 0000000000..321cc53142 --- /dev/null +++ b/systemUI/anim/AndroidManifest.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2017 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.systemui.animation"> + + +</manifest> diff --git a/systemUI/anim/build.gradle b/systemUI/anim/build.gradle new file mode 100644 index 0000000000..9f90d2a926 --- /dev/null +++ b/systemUI/anim/build.gradle @@ -0,0 +1,52 @@ +import org.jetbrains.kotlin.gradle.tasks.KotlinCompile + +plugins { + id 'com.android.library' + id 'org.jetbrains.kotlin.android' +} + +// LC-Build-TODO: addFrameworkJar() doesn't work, what??? +def frameworkJar = new File("$rootDir/prebuilts/libs", "framework-16.jar") +tasks.withType(JavaCompile).configureEach { + classpath = files(frameworkJar) +} +tasks.withType(KotlinCompile).configureEach { + libraries.from(files(frameworkJar)) +} +compileOnlyCommonJars() + +// TODO: Pull out surfaceeffects outside of src and have separate build files there. +android { + buildToolsVersion "36.1.0" + namespace "com.android.systemui.animation" + buildFeatures { + aidl true + } + sourceSets { + main { + java.srcDirs = ['src'] + aidl.srcDirs = ['src'] + manifest.srcFile 'AndroidManifest.xml' + res.srcDirs = ['res'] + } + } + + lintOptions { + abortOnError false + } + tasks.lint.enabled = false + tasks.withType(JavaCompile) { + options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation" + } +} + +addFrameworkJar('framework-16.jar') +compileOnlyCommonJars() + +dependencies { + implementation libs.androidx.core.animation + compileOnly projects.animationlib + compileOnly projects.wmshell + compileOnly projects.flags + +} diff --git a/systemUI/anim/lib/Android.bp b/systemUI/anim/lib/Android.bp new file mode 100644 index 0000000000..7d7302309a --- /dev/null +++ b/systemUI/anim/lib/Android.bp @@ -0,0 +1,68 @@ +// Copyright (C) 2024 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package { + default_team: "trendy_team_system_ui_please_use_a_more_specific_subteam_if_possible_", + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_packages_SystemUI_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_packages_SystemUI_license"], +} + +java_library { + name: "PlatformAnimationLib-server", + srcs: [ + "src/com/android/systemui/animation/server/*.java", + ":PlatformAnimationLib-aidl", + ], + static_libs: [ + "WindowManager-Shell-shared", + ], +} + +// This is the core animation library written in java and can be depended by java sdk libraries. +// Please don't introduce kotlin code in this target since kotlin is incompatible with sdk +// libraries. +java_library { + name: "PlatformAnimationLib-core", + srcs: [ + "src/com/android/systemui/animation/*.java", + ":PlatformAnimationLib-aidl", + ], + static_libs: [ + "WindowManager-Shell-shared", + ], +} + +filegroup { + name: "PlatformAnimationLib-client-srcs", + srcs: [ + "src/com/android/systemui/animation/OriginRemoteTransition.java", + "src/com/android/systemui/animation/OriginTransitionSession.java", + "src/com/android/systemui/animation/SurfaceUIComponent.java", + "src/com/android/systemui/animation/Transactions.java", + "src/com/android/systemui/animation/UIComponent.java", + "src/com/android/systemui/animation/ViewUIComponent.java", + ":PlatformAnimationLib-aidl", + ], +} + +filegroup { + name: "PlatformAnimationLib-aidl", + srcs: [ + "src/**/*.aidl", + ], +} diff --git a/systemUI/anim/lib/OWNERS b/systemUI/anim/lib/OWNERS new file mode 100644 index 0000000000..7569419bf4 --- /dev/null +++ b/systemUI/anim/lib/OWNERS @@ -0,0 +1,3 @@ +#inherits OWNERS from SystemUI in addition to WEAR framework owners below +file:platform/frameworks/base:/WEAR_OWNERS + diff --git a/systemUI/anim/lib/src/com/android/systemui/animation/OriginRemoteTransition.java b/systemUI/anim/lib/src/com/android/systemui/animation/OriginRemoteTransition.java new file mode 100644 index 0000000000..56d85ab8ac --- /dev/null +++ b/systemUI/anim/lib/src/com/android/systemui/animation/OriginRemoteTransition.java @@ -0,0 +1,516 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation; + +import static android.view.WindowManager.TRANSIT_CHANGE; + +import android.animation.Animator; +import android.animation.Animator.AnimatorListener; +import android.animation.ValueAnimator; +import android.annotation.Nullable; +import android.content.Context; +import android.graphics.Rect; +import android.hardware.display.DisplayManager; +import android.os.Handler; +import android.os.IBinder; +import android.os.RemoteException; +import android.util.DisplayMetrics; +import android.util.Log; +import android.view.SurfaceControl; +import android.window.IRemoteTransition; +import android.window.IRemoteTransitionFinishedCallback; +import android.window.TransitionInfo; +import android.window.TransitionInfo.Change; +import android.window.WindowAnimationState; + +import com.android.internal.policy.ScreenDecorationsUtils; +import com.android.wm.shell.shared.TransitionUtil; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.concurrent.atomic.AtomicBoolean; + +/** + * An implementation of {@link IRemoteTransition} that accepts a {@link UIComponent} as the origin + * and automatically attaches it to the transition leash before the transition starts. + * + * @hide + */ +public class OriginRemoteTransition extends IRemoteTransition.Stub { + private static final String TAG = "OriginRemoteTransition"; + private static final long FINISH_ANIMATION_TIMEOUT_MS = 100; + + private final Context mContext; + private final boolean mIsEntry; + private final UIComponent mOrigin; + private final TransitionPlayer mPlayer; + private final long mDuration; + private final Handler mHandler; + + @Nullable private SurfaceControl.Transaction mStartTransaction; + @Nullable private IRemoteTransitionFinishedCallback mFinishCallback; + @Nullable private UIComponent.Transaction mOriginTransaction; + @Nullable private ValueAnimator mAnimator; + @Nullable private SurfaceControl mOriginLeash; + private boolean mCancelled; + + OriginRemoteTransition( + Context context, + boolean isEntry, + UIComponent origin, + TransitionPlayer player, + long duration, + Handler handler) { + mContext = context; + mIsEntry = isEntry; + mOrigin = origin; + mPlayer = player; + mDuration = duration; + mHandler = handler; + } + + @Override + public void startAnimation( + IBinder token, + TransitionInfo info, + SurfaceControl.Transaction t, + IRemoteTransitionFinishedCallback finishCallback) { + logD("startAnimation - " + info); + mHandler.post( + () -> { + mStartTransaction = t; + mFinishCallback = finishCallback; + startAnimationInternal(info, /* states= */ null); + }); + } + + @Override + public void mergeAnimation( + IBinder transition, + TransitionInfo info, + SurfaceControl.Transaction t, + IBinder mergeTarget, + IRemoteTransitionFinishedCallback finishCallback) { + logD("mergeAnimation - " + info); + cancel(); + } + + @Override + public void takeOverAnimation( + IBinder transition, + TransitionInfo info, + SurfaceControl.Transaction t, + IRemoteTransitionFinishedCallback finishCallback, + WindowAnimationState[] states) { + logD("takeOverAnimation - info=" + info + ", states=" + Arrays.toString(states)); + mHandler.post( + () -> { + mStartTransaction = t; + mFinishCallback = finishCallback; + startAnimationInternal(info, states); + }); + } + + @Override + public void onTransitionConsumed(IBinder transition, boolean aborted) { + logD("onTransitionConsumed - aborted: " + aborted); + cancel(); + } + + private void startAnimationInternal( + TransitionInfo info, @Nullable WindowAnimationState[] states) { + if (!prepareUIs(info)) { + logE("Unable to prepare UI!"); + finishAnimation(/* finished= */ false); + return; + } + // Notify player that we are starting. + mPlayer.onStart(info, states, mStartTransaction, mOrigin, mOriginTransaction); + + // Apply the initial transactions in case the player forgot to apply them. + mOriginTransaction.commit(); + mStartTransaction.apply(); + + // Start the animator. + mAnimator = ValueAnimator.ofFloat(0.0f, 1.0f); + mAnimator.setDuration(mDuration); + mAnimator.addListener( + new AnimatorListener() { + @Override + public void onAnimationStart(Animator a) {} + + @Override + public void onAnimationEnd(Animator a) { + finishAnimation(/* finished= */ !mCancelled); + } + + @Override + public void onAnimationCancel(Animator a) { + mCancelled = true; + } + + @Override + public void onAnimationRepeat(Animator a) {} + }); + mAnimator.addUpdateListener( + a -> { + mPlayer.onProgress((float) a.getAnimatedValue()); + }); + mAnimator.start(); + } + + private boolean prepareUIs(TransitionInfo info) { + if (info.getRootCount() == 0) { + logE("prepareUIs: no root leash!"); + return false; + } + if (info.getRootCount() > 1) { + logE("prepareUIs: multi-display transition is not supported yet!"); + return false; + } + if (info.getChanges().isEmpty()) { + logE("prepareUIs: no changes!"); + return false; + } + + SurfaceControl rootLeash = info.getRoot(0).getLeash(); + int displayId = info.getChanges().get(0).getEndDisplayId(); + Rect displayBounds = getDisplayBounds(displayId); + float windowRadius = ScreenDecorationsUtils.getWindowCornerRadius(mContext); + logD("prepareUIs: windowRadius=" + windowRadius + ", displayBounds=" + displayBounds); + + // Create the origin leash and add to the transition root leash. + mOriginLeash = + new SurfaceControl.Builder().setName("OriginTransition-origin-leash").build(); + + // Create temporary transaction to build + final SurfaceControl.Transaction tmpTransaction = new SurfaceControl.Transaction(); + tmpTransaction + .reparent(mOriginLeash, rootLeash) + .show(mOriginLeash) + .setCornerRadius(mOriginLeash, windowRadius) + .setWindowCrop(mOriginLeash, displayBounds.width(), displayBounds.height()); + + // Process surfaces + List<SurfaceControl> openingSurfaces = new ArrayList<>(); + List<SurfaceControl> closingSurfaces = new ArrayList<>(); + for (Change change : info.getChanges()) { + int mode = change.getMode(); + SurfaceControl leash = change.getLeash(); + // Reparent leash to the transition root. + tmpTransaction.reparent(leash, rootLeash); + if (TransitionUtil.isOpeningMode(mode)) { + openingSurfaces.add(change.getLeash()); + // For opening surfaces, ending bounds are base bound. Apply corner radius if + // it's full screen. + Rect bounds = change.getEndAbsBounds(); + if (displayBounds.equals(bounds)) { + tmpTransaction + .setCornerRadius(leash, windowRadius) + .setWindowCrop(leash, bounds.width(), bounds.height()); + } + } else if (TransitionUtil.isClosingMode(mode) || mode == TRANSIT_CHANGE) { + // TRANSIT_CHANGE refers to the closing window in predictive back animation. + closingSurfaces.add(change.getLeash()); + // For closing surfaces, starting bounds are base bounds. Apply corner radius if + // it's full screen. + Rect bounds = change.getStartAbsBounds(); + if (displayBounds.equals(bounds)) { + tmpTransaction + .setCornerRadius(leash, windowRadius) + .setWindowCrop(leash, bounds.width(), bounds.height()); + } + } + } + + if (openingSurfaces.isEmpty() && closingSurfaces.isEmpty()) { + logD("prepareUIs: no opening/closing surfaces available, nothing to prepare."); + return false; + } + + // Set relative order: + // ---- App1 ---- + // ---- origin ---- + // ---- App2 ---- + + if (mIsEntry) { + if (!closingSurfaces.isEmpty()) { + tmpTransaction.setRelativeLayer(mOriginLeash, closingSurfaces.get(0), 1); + } else { + logW("Missing closing surface is entry transition"); + } + if (!openingSurfaces.isEmpty()) { + tmpTransaction.setRelativeLayer( + openingSurfaces.get(openingSurfaces.size() - 1), mOriginLeash, 1); + } else { + logW("Missing opening surface is entry transition"); + } + + } else { + if (!openingSurfaces.isEmpty()) { + tmpTransaction.setRelativeLayer(mOriginLeash, openingSurfaces.get(0), 1); + } else { + logW("Missing opening surface is exit transition"); + } + if (!closingSurfaces.isEmpty()) { + tmpTransaction.setRelativeLayer( + closingSurfaces.get(closingSurfaces.size() - 1), mOriginLeash, 1); + } else { + logW("Missing closing surface is exit transition"); + } + } + mStartTransaction.merge(tmpTransaction); + + // Attach origin UIComponent to origin leash. + mOriginTransaction = mOrigin.newTransaction(); + mOriginTransaction.attachToTransitionLeash( + mOrigin, mOriginLeash, displayBounds.width(), displayBounds.height()); + return true; + } + + private Rect getDisplayBounds(int displayId) { + DisplayManager dm = mContext.getSystemService(DisplayManager.class); + DisplayMetrics metrics = new DisplayMetrics(); + dm.getDisplay(displayId).getMetrics(metrics); + return new Rect(0, 0, metrics.widthPixels, metrics.heightPixels); + } + + private void finishAnimation(boolean finished) { + logD("finishAnimation: finished=" + finished); + OneShotRunnable finishInternalRunnable = new OneShotRunnable(this::finishInternal); + Runnable timeoutRunnable = + () -> { + Log.w(TAG, "Timeout waiting for surface transaction!"); + finishInternalRunnable.run(); + }; + Runnable committedRunnable = + () -> { + // Remove the timeout runnable. + mHandler.removeCallbacks(timeoutRunnable); + finishInternalRunnable.run(); + }; + if (mAnimator == null) { + // The transition didn't start. Ensure we apply the start transaction and report + // finish afterwards. + mStartTransaction + .addTransactionCommittedListener(mHandler::post, committedRunnable::run) + .apply(); + // Call finishInternal() anyway after the timeout. + mHandler.postDelayed(timeoutRunnable, FINISH_ANIMATION_TIMEOUT_MS); + return; + } + mAnimator = null; + // Notify client that we have ended. + mPlayer.onEnd(finished); + // Detach the origin from the transition leash and report finish after it's done. + mOriginTransaction + .detachFromTransitionLeash(mOrigin, mHandler::post, committedRunnable) + .commit(); + // Call finishInternal() anyway after the timeout. + mHandler.postDelayed(timeoutRunnable, FINISH_ANIMATION_TIMEOUT_MS); + } + + private void finishInternal() { + logD("finishInternal"); + if (mOriginLeash != null) { + // Release origin leash. + mOriginLeash.release(); + mOriginLeash = null; + } + try { + mFinishCallback.onTransitionFinished(null, null); + } catch (RemoteException e) { + logE("Unable to report transition finish!", e); + } + mStartTransaction = null; + mOriginTransaction = null; + mFinishCallback = null; + } + + public void cancel() { + logD("cancel()"); + mHandler.post( + () -> { + if (mAnimator != null) { + mAnimator.cancel(); + } + }); + } + + private static void logD(String msg) { + if (OriginTransitionSession.DEBUG) { + Log.d(TAG, msg); + } + } + + private static void logW(String msg) { + Log.w(TAG, msg); + } + + private static void logE(String msg) { + Log.e(TAG, msg); + } + + private static void logE(String msg, Throwable e) { + Log.e(TAG, msg, e); + } + + private static UIComponent wrapSurfaces(TransitionInfo info, boolean isOpening) { + List<SurfaceControl> surfaces = new ArrayList<>(); + Rect maxBounds = new Rect(); + for (Change change : info.getChanges()) { + int mode = change.getMode(); + if (TransitionUtil.isOpeningMode(mode) == isOpening) { + surfaces.add(change.getLeash()); + Rect bounds = isOpening ? change.getEndAbsBounds() : change.getStartAbsBounds(); + maxBounds.union(bounds); + } + } + return new SurfaceUIComponent( + surfaces, + /* alpha= */ 1.0f, + /* visible= */ true, + /* bounds= */ maxBounds, + /* baseBounds= */ maxBounds); + } + + private static void applyWindowAnimationStates( + TransitionInfo info, + @Nullable WindowAnimationState[] states, + UIComponent closingApp, + UIComponent openingApp) { + if (states == null) { + // Nothing to apply. + return; + } + // Calculate bounds. + Rect maxClosingBounds = new Rect(); + Rect maxOpeningBounds = new Rect(); + for (int i = 0; i < info.getChanges().size(); i++) { + Rect bound = getBounds(states[i]); + if (bound == null) { + continue; + } + int mode = info.getChanges().get(i).getMode(); + if (TransitionUtil.isOpeningMode(mode)) { + maxOpeningBounds.union(bound); + } else if (TransitionUtil.isClosingMode(mode) || mode == TRANSIT_CHANGE) { + // TRANSIT_CHANGE refers to the closing window in predictive back animation. + maxClosingBounds.union(bound); + } + } + + // Intentionally use a new transaction instead of reusing the existing transaction since we + // want to apply window animation states first without committing any other pending changes + // in the existing transaction. The existing transaction is expected to be committed by the + // onStart() client callback together with client's custom transformation. + UIComponent.Transaction transaction = closingApp.newTransaction(); + if (!maxClosingBounds.isEmpty()) { + logD("Applying closing window bounds: " + maxClosingBounds); + transaction.setBounds(closingApp, maxClosingBounds); + } + if (!maxOpeningBounds.isEmpty()) { + logD("Applying opening window bounds: " + maxOpeningBounds); + transaction.setBounds(openingApp, maxOpeningBounds); + } + transaction.commit(); + } + + @Nullable + private static Rect getBounds(@Nullable WindowAnimationState state) { + if (state == null || state.bounds == null) { + return null; + } + Rect out = new Rect(); + state.bounds.roundOut(out); + return out; + } + + /** A {@link Runnable} that will only run once. */ + private static class OneShotRunnable implements Runnable { + private final AtomicBoolean mDone = new AtomicBoolean(); + private final Runnable mRunnable; + + OneShotRunnable(Runnable runnable) { + this.mRunnable = runnable; + } + + @Override + public void run() { + if (!mDone.getAndSet(true)) { + mRunnable.run(); + } + } + } + + /** + * An interface that represents an origin transitions. + * + * @hide + */ + public interface TransitionPlayer { + + /** + * Called when an origin transition starts. This method exposes the raw {@link + * TransitionInfo} so that clients can extract more information from it. + * + * <p>Note: if this transition is taking over a predictive back animation, the {@link + * WindowAnimationState} will be passed to this method. The concrete implementation is + * expected to apply the {@link WindowAnimationState} before continuing the transition. + */ + default void onStart( + TransitionInfo transitionInfo, + @Nullable WindowAnimationState[] states, + SurfaceControl.Transaction sfTransaction, + UIComponent origin, + UIComponent.Transaction uiTransaction) { + // Wrap transactions. + Transactions transactions = + new Transactions() + .registerTransactionForClass(origin.getClass(), uiTransaction) + .registerTransactionForClass( + SurfaceUIComponent.class, + new SurfaceUIComponent.Transaction(sfTransaction)); + // Wrap surfaces. + UIComponent closingApp = wrapSurfaces(transitionInfo, /* isOpening= */ false); + UIComponent openingApp = wrapSurfaces(transitionInfo, /* isOpening= */ true); + + // Restore the pending animation states coming from predictive back transition. + applyWindowAnimationStates(transitionInfo, states, closingApp, openingApp); + + // Start. + onStart(transactions, origin, closingApp, openingApp); + } + + /** + * Called when an origin transition starts. This method exposes the opening and closing + * windows as wrapped {@link UIComponent} to provide simplified interface to clients. + */ + void onStart( + UIComponent.Transaction transaction, + UIComponent origin, + UIComponent closingApp, + UIComponent openingApp); + + /** Called to update the transition frame. */ + void onProgress(float progress); + + /** Called when the transition ended. */ + void onEnd(boolean finished); + } +} diff --git a/systemUI/anim/lib/src/com/android/systemui/animation/OriginTransitionSession.java b/systemUI/anim/lib/src/com/android/systemui/animation/OriginTransitionSession.java new file mode 100644 index 0000000000..cb3dfb9e78 --- /dev/null +++ b/systemUI/anim/lib/src/com/android/systemui/animation/OriginTransitionSession.java @@ -0,0 +1,333 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation; + +import android.annotation.IntDef; +import android.annotation.Nullable; +import android.app.ActivityOptions; +import android.app.ActivityOptions.LaunchCookie; +import android.app.PendingIntent; +import android.content.Context; +import android.content.Intent; +import android.os.Build; +import android.os.Handler; +import android.os.Looper; +import android.os.RemoteException; +import android.util.Log; +import android.window.IRemoteTransition; +import android.window.RemoteTransition; + +import com.android.systemui.animation.OriginRemoteTransition.TransitionPlayer; +import com.android.systemui.animation.shared.IOriginTransitions; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.function.Predicate; +import java.util.function.Supplier; + +/** + * A session object that holds origin transition states for starting an activity from an on-screen + * UI component and smoothly transitioning back from the activity to the same UI component. + * + * @hide + */ +public class OriginTransitionSession { + private static final String TAG = "OriginTransitionSession"; + static final boolean DEBUG = Build.IS_USERDEBUG || Log.isLoggable(TAG, Log.DEBUG); + + @Retention(RetentionPolicy.SOURCE) + @IntDef(value = {NOT_STARTED, STARTED, CANCELLED}) + private @interface State {} + + @State private static final int NOT_STARTED = 0; + @State private static final int STARTED = 1; + @State private static final int CANCELLED = 5; + + private final String mName; + @Nullable private final IOriginTransitions mOriginTransitions; + private final Predicate<RemoteTransition> mIntentStarter; + @Nullable private final IRemoteTransition mEntryTransition; + @Nullable private final IRemoteTransition mExitTransition; + private final AtomicInteger mState = new AtomicInteger(NOT_STARTED); + + @Nullable private RemoteTransition mOriginTransition; + + private OriginTransitionSession( + String name, + @Nullable IOriginTransitions originTransitions, + Predicate<RemoteTransition> intentStarter, + @Nullable IRemoteTransition entryTransition, + @Nullable IRemoteTransition exitTransition) { + mName = name; + mOriginTransitions = originTransitions; + mIntentStarter = intentStarter; + mEntryTransition = entryTransition; + mExitTransition = exitTransition; + if (hasExitTransition() && !hasEntryTransition()) { + throw new IllegalArgumentException( + "Entry transition must be supplied if you want to play an exit transition!"); + } + } + + /** + * Launch the target intent with the supplied entry transition. After this method, the entry + * transition is expected to receive callbacks. The exit transition will be registered and + * triggered when the system detects a return from the launched activity to the launching + * activity. + */ + public boolean start() { + if (!mState.compareAndSet(NOT_STARTED, STARTED)) { + logE("start: illegal state - " + stateToString(mState.get())); + return false; + } + + RemoteTransition remoteTransition = null; + if (hasEntryTransition() && hasExitTransition()) { + logD("start: starting with entry and exit transition."); + try { + remoteTransition = + mOriginTransition = + mOriginTransitions.makeOriginTransition( + new RemoteTransition(mEntryTransition, mName + "-entry"), + new RemoteTransition(mExitTransition, mName + "-exit")); + } catch (RemoteException e) { + logE("Unable to create origin transition!", e); + } + } else if (hasEntryTransition()) { + logD("start: starting with entry transition."); + remoteTransition = new RemoteTransition(mEntryTransition, mName + "-entry"); + + } else { + logD("start: starting without transition."); + } + if (mIntentStarter.test(remoteTransition)) { + return true; + } else { + // Animation is cancelled by intent starter. + logD("start: cancelled by intent starter!"); + cancel(); + return false; + } + } + + /** + * Cancel the current transition and the registered exit transition if it exists. After this + * method, this session object can no longer be used. Clients need to create a new session + * object if they want to launch another intent with origin transition. + */ + public void cancel() { + final int lastState = mState.getAndSet(CANCELLED); + if (lastState == CANCELLED || lastState == NOT_STARTED) { + return; + } + logD("cancel: cancelled transition. Last state: " + stateToString(lastState)); + if (mOriginTransition != null) { + try { + mOriginTransitions.cancelOriginTransition(mOriginTransition); + mOriginTransition = null; + } catch (RemoteException e) { + logE("Unable to cancel origin transition!", e); + } + } + if (mEntryTransition instanceof OriginRemoteTransition) { + ((OriginRemoteTransition) mEntryTransition).cancel(); + } + if (mExitTransition instanceof OriginRemoteTransition) { + ((OriginRemoteTransition) mExitTransition).cancel(); + } + } + + private boolean hasEntryTransition() { + return mEntryTransition != null; + } + + private boolean hasExitTransition() { + return mOriginTransitions != null && mExitTransition != null; + } + + private void logD(String msg) { + if (DEBUG) { + Log.d(TAG, "Session[" + mName + "] - " + msg); + } + } + + private void logE(String msg) { + Log.e(TAG, "Session[" + mName + "] - " + msg); + } + + private void logE(String msg, Throwable e) { + Log.e(TAG, "Session[" + mName + "] - " + msg, e); + } + + private static String stateToString(@State int state) { + switch (state) { + case NOT_STARTED: + return "NOT_STARTED"; + case STARTED: + return "STARTED"; + case CANCELLED: + return "CANCELLED"; + default: + return "UNKNOWN(" + state + ")"; + } + } + + /** + * A builder to build a {@link OriginTransitionSession}. + * + * @hide + */ + public static class Builder { + private final Context mContext; + @Nullable private final IOriginTransitions mOriginTransitions; + @Nullable private Supplier<IRemoteTransition> mEntryTransitionSupplier; + @Nullable private Supplier<IRemoteTransition> mExitTransitionSupplier; + private Handler mHandler = new Handler(Looper.getMainLooper()); + private String mName; + @Nullable private Predicate<RemoteTransition> mIntentStarter; + + /** Create a builder that only supports entry transition. */ + public Builder(Context context) { + this(context, /* originTransitions= */ null); + } + + /** Create a builder that supports both entry and return transition. */ + public Builder(Context context, @Nullable IOriginTransitions originTransitions) { + mContext = context; + mOriginTransitions = originTransitions; + mName = context.getPackageName(); + } + + /** Specify a name that is used in logging. */ + public Builder withName(String name) { + mName = name; + return this; + } + + /** Specify an intent that will be launched when the session started. */ + public Builder withIntent(Intent intent) { + return withIntentStarter( + transition -> { + mContext.startActivity( + intent, createDefaultActivityOptions(transition).toBundle()); + return true; + }); + } + + /** Specify a pending intent that will be launched when the session started. */ + public Builder withPendingIntent(PendingIntent pendingIntent) { + return withIntentStarter( + transition -> { + try { + pendingIntent.send(createDefaultActivityOptions(transition).toBundle()); + return true; + } catch (PendingIntent.CanceledException e) { + Log.e(TAG, "Failed to launch pending intent!", e); + return false; + } + }); + } + + private static ActivityOptions createDefaultActivityOptions( + @Nullable RemoteTransition transition) { + ActivityOptions options = + transition == null + ? ActivityOptions.makeBasic() + : ActivityOptions.makeRemoteTransition(transition); + LaunchCookie cookie = new LaunchCookie(); + options.setLaunchCookie(cookie); + return options; + } + + /** + * Specify an intent starter function that will be called to start an activity. The function + * accepts an optional {@link RemoteTransition} object which can be used to create an {@link + * ActivityOptions} for the activity launch. The function can also return a {@code false} + * result to cancel the session. + * + * <p>Note: it's encouraged to use {@link #withIntent(Intent)} or {@link + * #withPendingIntent(PendingIntent)} instead of this method. Use it only if the default + * activity launch code doesn't satisfy your requirement. + */ + public Builder withIntentStarter(Predicate<RemoteTransition> intentStarter) { + mIntentStarter = intentStarter; + return this; + } + + /** Add an entry transition to the builder. */ + public Builder withEntryTransition(IRemoteTransition transition) { + mEntryTransitionSupplier = () -> transition; + return this; + } + + /** Add an origin entry transition to the builder. */ + public Builder withEntryTransition( + UIComponent entryOrigin, TransitionPlayer entryPlayer, long entryDuration) { + mEntryTransitionSupplier = + () -> + new OriginRemoteTransition( + mContext, + /* isEntry= */ true, + entryOrigin, + entryPlayer, + entryDuration, + mHandler); + return this; + } + + /** Add an exit transition to the builder. */ + public Builder withExitTransition(IRemoteTransition transition) { + mExitTransitionSupplier = () -> transition; + return this; + } + + /** Add an origin exit transition to the builder. */ + public Builder withExitTransition( + UIComponent exitTarget, TransitionPlayer exitPlayer, long exitDuration) { + mExitTransitionSupplier = + () -> + new OriginRemoteTransition( + mContext, + /* isEntry= */ false, + exitTarget, + exitPlayer, + exitDuration, + mHandler); + return this; + } + + /** Supply a handler where transition callbacks will run. */ + public Builder withHandler(Handler handler) { + mHandler = handler; + return this; + } + + /** Build an {@link OriginTransitionSession}. */ + public OriginTransitionSession build() { + if (mIntentStarter == null) { + throw new IllegalArgumentException("No intent, pending intent, or intent starter!"); + } + return new OriginTransitionSession( + mName, + mOriginTransitions, + mIntentStarter, + mEntryTransitionSupplier == null ? null : mEntryTransitionSupplier.get(), + mExitTransitionSupplier == null ? null : mExitTransitionSupplier.get()); + } + } +} diff --git a/systemUI/anim/lib/src/com/android/systemui/animation/SurfaceUIComponent.java b/systemUI/anim/lib/src/com/android/systemui/animation/SurfaceUIComponent.java new file mode 100644 index 0000000000..e1ff2a4c82 --- /dev/null +++ b/systemUI/anim/lib/src/com/android/systemui/animation/SurfaceUIComponent.java @@ -0,0 +1,175 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation; + +import android.graphics.Matrix; +import android.graphics.Rect; +import android.graphics.RectF; +import android.view.SurfaceControl; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.concurrent.Executor; + +/** + * A {@link UIComponent} representing a {@link SurfaceControl}. + * @hide + */ +public class SurfaceUIComponent implements UIComponent { + private final Collection<SurfaceControl> mSurfaces; + private final Rect mBaseBounds; + private final float[] mFloat9 = new float[9]; + + private float mAlpha; + private boolean mVisible; + private Rect mBounds; + + public SurfaceUIComponent( + SurfaceControl sc, float alpha, boolean visible, Rect bounds, Rect baseBounds) { + this(Arrays.asList(sc), alpha, visible, bounds, baseBounds); + } + + public SurfaceUIComponent( + Collection<SurfaceControl> surfaces, + float alpha, + boolean visible, + Rect bounds, + Rect baseBounds) { + mSurfaces = surfaces; + mAlpha = alpha; + mVisible = visible; + mBounds = bounds; + mBaseBounds = baseBounds; + } + + @Override + public float getAlpha() { + return mAlpha; + } + + @Override + public boolean isVisible() { + return mVisible; + } + + @Override + public Rect getBounds() { + return mBounds; + } + + @Override + public Transaction newTransaction() { + return new Transaction(new SurfaceControl.Transaction()); + } + + @Override + public String toString() { + return "SurfaceUIComponent{mSurfaces=" + + mSurfaces + + ", mAlpha=" + + mAlpha + + ", mVisible=" + + mVisible + + ", mBounds=" + + mBounds + + ", mBaseBounds=" + + mBaseBounds + + "}"; + } + + /** + * A {@link Transaction} wrapping a {@link SurfaceControl.Transaction}. + * @hide + */ + public static class Transaction implements UIComponent.Transaction<SurfaceUIComponent> { + private final SurfaceControl.Transaction mTransaction; + private final ArrayList<Runnable> mChanges = new ArrayList<>(); + + public Transaction(SurfaceControl.Transaction transaction) { + mTransaction = transaction; + } + + @Override + public Transaction setAlpha(SurfaceUIComponent ui, float alpha) { + mChanges.add( + () -> { + ui.mAlpha = alpha; + ui.mSurfaces.forEach(s -> mTransaction.setAlpha(s, alpha)); + }); + return this; + } + + @Override + public Transaction setVisible(SurfaceUIComponent ui, boolean visible) { + mChanges.add( + () -> { + ui.mVisible = visible; + if (visible) { + ui.mSurfaces.forEach(s -> mTransaction.show(s)); + } else { + ui.mSurfaces.forEach(s -> mTransaction.hide(s)); + } + }); + return this; + } + + @Override + public Transaction setBounds(SurfaceUIComponent ui, Rect bounds) { + mChanges.add( + () -> { + if (ui.mBounds.equals(bounds)) { + return; + } + ui.mBounds = bounds; + Matrix matrix = new Matrix(); + matrix.setRectToRect( + new RectF(ui.mBaseBounds), + new RectF(ui.mBounds), + Matrix.ScaleToFit.FILL); + ui.mSurfaces.forEach(s -> mTransaction.setMatrix(s, matrix, ui.mFloat9)); + }); + return this; + } + + @Override + public Transaction attachToTransitionLeash( + SurfaceUIComponent ui, SurfaceControl transitionLeash, int w, int h) { + mChanges.add( + () -> ui.mSurfaces.forEach(s -> mTransaction.reparent(s, transitionLeash))); + return this; + } + + @Override + public Transaction detachFromTransitionLeash( + SurfaceUIComponent ui, Executor executor, Runnable onDone) { + mChanges.add( + () -> { + ui.mSurfaces.forEach(s -> mTransaction.reparent(s, null)); + mTransaction.addTransactionCommittedListener(executor, onDone::run); + }); + return this; + } + + @Override + public void commit() { + mChanges.forEach(Runnable::run); + mChanges.clear(); + mTransaction.apply(); + } + } +} diff --git a/systemUI/anim/lib/src/com/android/systemui/animation/Transactions.java b/systemUI/anim/lib/src/com/android/systemui/animation/Transactions.java new file mode 100644 index 0000000000..64d21724ba --- /dev/null +++ b/systemUI/anim/lib/src/com/android/systemui/animation/Transactions.java @@ -0,0 +1,87 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation; + +import android.annotation.FloatRange; +import android.graphics.Rect; +import android.util.ArrayMap; +import android.view.SurfaceControl; + +import java.util.Map; +import java.util.concurrent.Executor; + +/** + * A composite {@link UIComponent.Transaction} that combines multiple other transactions for each ui + * type. + * @hide + */ +public class Transactions implements UIComponent.Transaction<UIComponent> { + private final Map<Class, UIComponent.Transaction> mTransactions = new ArrayMap<>(); + + /** Register a transaction object for updating a certain {@link UIComponent} type. */ + public <T extends UIComponent> Transactions registerTransactionForClass( + Class<T> clazz, UIComponent.Transaction transaction) { + mTransactions.put(clazz, transaction); + return this; + } + + private UIComponent.Transaction getTransactionFor(UIComponent ui) { + UIComponent.Transaction transaction = mTransactions.get(ui.getClass()); + if (transaction == null) { + transaction = ui.newTransaction(); + mTransactions.put(ui.getClass(), transaction); + } + return transaction; + } + + @Override + public Transactions setAlpha(UIComponent ui, @FloatRange(from = 0.0, to = 1.0) float alpha) { + getTransactionFor(ui).setAlpha(ui, alpha); + return this; + } + + @Override + public Transactions setVisible(UIComponent ui, boolean visible) { + getTransactionFor(ui).setVisible(ui, visible); + return this; + } + + @Override + public Transactions setBounds(UIComponent ui, Rect bounds) { + getTransactionFor(ui).setBounds(ui, bounds); + return this; + } + + @Override + public Transactions attachToTransitionLeash( + UIComponent ui, SurfaceControl transitionLeash, int w, int h) { + getTransactionFor(ui).attachToTransitionLeash(ui, transitionLeash, w, h); + return this; + } + + @Override + public Transactions detachFromTransitionLeash( + UIComponent ui, Executor executor, Runnable onDone) { + getTransactionFor(ui).detachFromTransitionLeash(ui, executor, onDone); + return this; + } + + @Override + public void commit() { + mTransactions.values().forEach(UIComponent.Transaction::commit); + } +} diff --git a/systemUI/anim/lib/src/com/android/systemui/animation/UIComponent.java b/systemUI/anim/lib/src/com/android/systemui/animation/UIComponent.java new file mode 100644 index 0000000000..8aec2f42a5 --- /dev/null +++ b/systemUI/anim/lib/src/com/android/systemui/animation/UIComponent.java @@ -0,0 +1,86 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation; + +import android.annotation.FloatRange; +import android.annotation.NonNull; +import android.annotation.Nullable; +import android.graphics.Rect; +import android.view.SurfaceControl; + +import java.util.concurrent.Executor; + +/** + * An interface representing an UI component on the display. + * @hide + */ +public interface UIComponent { + + /** Get the current alpha of this UI. */ + float getAlpha(); + + /** Check if this UI is visible. */ + boolean isVisible(); + + /** Get the bounds of this UI in its display. */ + @NonNull + Rect getBounds(); + + /** Create a new {@link Transaction} that can update this UI. */ + @NonNull + Transaction newTransaction(); + + /** + * A transaction class for updating {@link UIComponent}. + * + * @param <T> the subtype of {@link UIComponent} that this {@link Transaction} can handle. + * @hide + */ + interface Transaction<T extends UIComponent> { + /** Update alpha of an UI. Execution will be delayed until {@link #commit()} is called. */ + Transaction setAlpha(@NonNull T ui, @FloatRange(from = 0.0, to = 1.0) float alpha); + + /** + * Update visibility of an UI. Execution will be delayed until {@link #commit()} is called. + */ + @NonNull + Transaction setVisible(@NonNull T ui, boolean visible); + + /** Update bounds of an UI. Execution will be delayed until {@link #commit()} is called. */ + @NonNull + Transaction setBounds(@NonNull T ui, @NonNull Rect bounds); + + /** + * Attach a ui to the transition leash. Execution will be delayed until {@link #commit()} is + * called. + */ + @NonNull + Transaction attachToTransitionLeash( + @NonNull T ui, @NonNull SurfaceControl transitionLeash, int w, int h); + + /** + * Detach a ui from the transition leash. Execution will be delayed until {@link #commit} is + * called. + */ + @NonNull + Transaction detachFromTransitionLeash( + @NonNull T ui, @NonNull Executor executor, @Nullable Runnable onDone); + + /** Commit any pending changes added to this transaction. */ + void commit(); + } +} diff --git a/systemUI/anim/lib/src/com/android/systemui/animation/ViewUIComponent.java b/systemUI/anim/lib/src/com/android/systemui/animation/ViewUIComponent.java new file mode 100644 index 0000000000..4b8610884b --- /dev/null +++ b/systemUI/anim/lib/src/com/android/systemui/animation/ViewUIComponent.java @@ -0,0 +1,388 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation; + +import android.annotation.Nullable; +import android.graphics.Canvas; +import android.graphics.Outline; +import android.graphics.Path; +import android.graphics.PorterDuff; +import android.graphics.Rect; +import android.graphics.RectF; +import android.os.Build; +import android.os.Handler; +import android.os.Looper; +import android.util.Log; +import android.view.Surface; +import android.view.SurfaceControl; +import android.view.View; +import android.view.ViewGroup; +import android.view.ViewRootImpl; +import android.view.ViewTreeObserver; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.Executor; + +/** + * A {@link UIComponent} wrapping a {@link View}. After being attached to the transition leash, this + * class will draw the content of the {@link View} directly into the leash, and the actual View will + * be changed to INVISIBLE in its view tree. This allows the {@link View} to transform in the + * full-screen size leash without being constrained by the view tree's boundary or inheriting its + * parent's alpha and transformation. + * + * @hide + */ +public class ViewUIComponent implements UIComponent { + private static final String TAG = "ViewUIComponent"; + private static final boolean DEBUG = Build.IS_USERDEBUG || Log.isLoggable(TAG, Log.DEBUG); + private final Path mClippingPath = new Path(); + private final Outline mClippingOutline = new Outline(); + + private final LifecycleListener mLifecycleListener = new LifecycleListener(); + private final View mView; + private final Handler mMainHandler; + + @Nullable private SurfaceControl mSurfaceControl; + @Nullable private Surface mSurface; + @Nullable private Rect mViewBoundsOverride; + private boolean mVisibleOverride; + private boolean mDirty; + + public ViewUIComponent(View view) { + mView = view; + mMainHandler = new Handler(Looper.getMainLooper()); + } + + /** + * @return the view wrapped by this UI component. + * @hide + */ + public View getView() { + return mView; + } + + @Override + public float getAlpha() { + return mView.getAlpha(); + } + + @Override + public boolean isVisible() { + return isAttachedToLeash() ? mVisibleOverride : mView.getVisibility() == View.VISIBLE; + } + + @Override + public Rect getBounds() { + if (isAttachedToLeash() && mViewBoundsOverride != null) { + return mViewBoundsOverride; + } + return getRealBounds(); + } + + @Override + public Transaction newTransaction() { + return new Transaction(); + } + + private void attachToTransitionLeash(SurfaceControl transitionLeash, int w, int h) { + logD("attachToTransitionLeash"); + // Remember current visibility. + mVisibleOverride = mView.getVisibility() == View.VISIBLE; + + // Create the surface + mSurfaceControl = + new SurfaceControl.Builder().setName("ViewUIComponent").setBufferSize(w, h).build(); + mSurface = new Surface(mSurfaceControl); + + // Attach surface to transition leash + SurfaceControl.Transaction t = new SurfaceControl.Transaction(); + t.reparent(mSurfaceControl, transitionLeash).show(mSurfaceControl); + + // Make sure view draw triggers surface draw. + mLifecycleListener.register(); + + // Make the view invisible AFTER the surface is shown. + t.addTransactionCommittedListener( + this::post, + () -> { + logD("Surface attached!"); + forceDraw(); + mView.setVisibility(View.INVISIBLE); + }) + .apply(); + } + + private void detachFromTransitionLeash(Executor executor, Runnable onDone) { + logD("detachFromTransitionLeash"); + Surface s = mSurface; + SurfaceControl sc = mSurfaceControl; + mSurface = null; + mSurfaceControl = null; + mLifecycleListener.unregister(); + // Restore view visibility + mView.setVisibility(mVisibleOverride ? View.VISIBLE : View.INVISIBLE); + // Clean up surfaces. + SurfaceControl.Transaction t = new SurfaceControl.Transaction(); + t.reparent(sc, null) + .addTransactionCommittedListener( + this::post, + () -> { + s.release(); + sc.release(); + executor.execute(onDone); + }); + ViewRootImpl viewRoot = mView.getViewRootImpl(); + if (viewRoot == null) { + t.apply(); + } else { + // Apply transaction AFTER the view is drawn. + viewRoot.applyTransactionOnDraw(t); + // Request layout to force redrawing the entire view tree, so that the transaction is + // guaranteed to be applied. + viewRoot.requestLayout(); + } + } + + @Override + public String toString() { + return "ViewUIComponent{" + + "alpha=" + + getAlpha() + + ", visible=" + + isVisible() + + ", bounds=" + + getBounds() + + ", attached=" + + isAttachedToLeash() + + "}"; + } + + private void draw() { + if (!mDirty) { + // No need to draw. This is probably a duplicate call. + logD("draw: skipped - clean"); + return; + } + mDirty = false; + if (!isAttachedToLeash()) { + // Not attached. + logD("draw: skipped - not attached"); + return; + } + ViewGroup.LayoutParams params = mView.getLayoutParams(); + if (params == null) { + // layout pass didn't happen. + logD("draw: skipped - no layout"); + return; + } + + final Rect realBounds = getRealBounds(); + if (realBounds.width() == 0 || realBounds.height() == 0) { + // bad bounds. + logD("draw: skipped - zero bounds"); + return; + } + + + Canvas canvas = mSurface.lockHardwareCanvas(); + // Clear the canvas first. + canvas.drawColor(0, PorterDuff.Mode.CLEAR); + if (mVisibleOverride) { + Rect renderBounds = getBounds(); + canvas.translate(renderBounds.left, renderBounds.top); + canvas.scale( + (float) renderBounds.width() / realBounds.width(), + (float) renderBounds.height() / realBounds.height()); + + if (mView.getClipToOutline()) { + mView.getOutlineProvider().getOutline(mView, mClippingOutline); + mClippingPath.reset(); + RectF rect = new RectF(0, 0, mView.getWidth(), mView.getHeight()); + final float cornerRadius = mClippingOutline.getRadius(); + mClippingPath.addRoundRect(rect, cornerRadius, cornerRadius, Path.Direction.CW); + mClippingPath.close(); + canvas.clipPath(mClippingPath); + } + + canvas.saveLayerAlpha(null, (int) (255 * mView.getAlpha())); + mView.draw(canvas); + canvas.restore(); + } + mSurface.unlockCanvasAndPost(canvas); + logD("draw: done"); + } + + private void forceDraw() { + mDirty = true; + draw(); + } + + private Rect getRealBounds() { + Rect output = new Rect(); + mView.getBoundsOnScreen(output); + return output; + } + + private boolean isAttachedToLeash() { + return mSurfaceControl != null && mSurface != null; + } + + private void logD(String msg) { + if (DEBUG) { + Log.d(TAG, msg); + } + } + + private void setVisible(boolean visible) { + logD("setVisibility: " + visible); + if (isAttachedToLeash()) { + mVisibleOverride = visible; + postDraw(); + } else { + mView.setVisibility(visible ? View.VISIBLE : View.INVISIBLE); + } + } + + private void setBounds(Rect bounds) { + logD("setBounds: " + bounds); + mViewBoundsOverride = bounds; + if (isAttachedToLeash()) { + postDraw(); + } else { + Log.w(TAG, "setBounds: not attached to leash!"); + } + } + + private void setAlpha(float alpha) { + logD("setAlpha: " + alpha); + mView.setAlpha(alpha); + if (isAttachedToLeash()) { + postDraw(); + } + } + + private void postDraw() { + if (mDirty) { + return; + } + mDirty = true; + post(this::draw); + } + + private void post(Runnable r) { + if (mView.isAttachedToWindow()) { + mView.post(r); + } else { + // If the view is detached from window, {@code View.post()} will postpone the action + // until the view is attached again. However, we don't know if the view will be attached + // again, so we post the action to the main thread in this case. This could lead to race + // condition if the attachment change caused a thread switching, and it's the caller's + // responsibility to ensure the window attachment state doesn't change unexpectedly. + if (DEBUG) { + Log.w(TAG, mView + " is not attached. Posting action to main thread!"); + } + mMainHandler.post(r); + } + } + + /** A listener for monitoring view life cycles. */ + private class LifecycleListener + implements ViewTreeObserver.OnDrawListener, View.OnAttachStateChangeListener { + private boolean mRegistered; + + @Override + public void onDraw() { + // View draw should trigger surface draw. + postDraw(); + } + + @Override + public void onViewAttachedToWindow(View v) { + // empty + } + + @Override + public void onViewDetachedFromWindow(View v) { + Log.w( + TAG, + v + " is detached from the window. Unregistering the life cycle listener ..."); + unregister(); + } + + public void register() { + if (mRegistered) { + return; + } + mRegistered = true; + mView.getViewTreeObserver().addOnDrawListener(this); + mView.addOnAttachStateChangeListener(this); + } + + public void unregister() { + if (!mRegistered) { + return; + } + mRegistered = false; + mView.getViewTreeObserver().removeOnDrawListener(this); + mView.removeOnAttachStateChangeListener(this); + } + } + + /** @hide */ + public static class Transaction implements UIComponent.Transaction<ViewUIComponent> { + private final List<Runnable> mChanges = new ArrayList<>(); + + @Override + public Transaction setAlpha(ViewUIComponent ui, float alpha) { + mChanges.add(() -> ui.post(() -> ui.setAlpha(alpha))); + return this; + } + + @Override + public Transaction setVisible(ViewUIComponent ui, boolean visible) { + mChanges.add(() -> ui.post(() -> ui.setVisible(visible))); + return this; + } + + @Override + public Transaction setBounds(ViewUIComponent ui, Rect bounds) { + mChanges.add(() -> ui.post(() -> ui.setBounds(bounds))); + return this; + } + + @Override + public Transaction attachToTransitionLeash( + ViewUIComponent ui, SurfaceControl transitionLeash, int w, int h) { + mChanges.add(() -> ui.post(() -> ui.attachToTransitionLeash(transitionLeash, w, h))); + return this; + } + + @Override + public Transaction detachFromTransitionLeash( + ViewUIComponent ui, Executor executor, Runnable onDone) { + mChanges.add(() -> ui.post(() -> ui.detachFromTransitionLeash(executor, onDone))); + return this; + } + + @Override + public void commit() { + mChanges.forEach(Runnable::run); + mChanges.clear(); + } + } +} diff --git a/systemUI/anim/lib/src/com/android/systemui/animation/server/IOriginTransitionsImpl.java b/systemUI/anim/lib/src/com/android/systemui/animation/server/IOriginTransitionsImpl.java new file mode 100644 index 0000000000..3b66460140 --- /dev/null +++ b/systemUI/anim/lib/src/com/android/systemui/animation/server/IOriginTransitionsImpl.java @@ -0,0 +1,471 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation.server; + +import static android.view.WindowManager.TRANSIT_CHANGE; +import static android.view.WindowManager.TRANSIT_CLOSE; +import static android.view.WindowManager.TRANSIT_OPEN; +import static android.view.WindowManager.TRANSIT_PREPARE_BACK_NAVIGATION; +import static android.view.WindowManager.TRANSIT_TO_BACK; +import static android.view.WindowManager.TRANSIT_TO_FRONT; + +import android.Manifest; +import android.annotation.Nullable; +import android.app.TaskInfo; +import android.content.ComponentName; +import android.content.Context; +import android.os.Build; +import android.os.IBinder; +import android.os.RemoteException; +import android.util.ArrayMap; +import android.util.Log; +import android.view.SurfaceControl; +import android.window.IRemoteTransition; +import android.window.IRemoteTransitionFinishedCallback; +import android.window.RemoteTransition; +import android.window.TransitionFilter; +import android.window.TransitionInfo; +import android.window.TransitionInfo.Change; +import android.window.WindowAnimationState; + +import com.android.internal.annotations.GuardedBy; +import com.android.internal.util.IndentingPrintWriter; +import com.android.systemui.animation.shared.IOriginTransitions; +import com.android.wm.shell.shared.ShellTransitions; +import com.android.wm.shell.shared.TransitionUtil; + +import java.util.Map; +import java.util.concurrent.Executor; +import java.util.function.Predicate; + +/** An implementation of the {@link IOriginTransitions}. */ +public class IOriginTransitionsImpl extends IOriginTransitions.Stub { + private static final String TAG = "OriginTransitions"; + private static final boolean DEBUG = Build.IS_USERDEBUG || Log.isLoggable(TAG, Log.DEBUG); + + private final Object mLock = new Object(); + private final ShellTransitions mShellTransitions; + private final Context mContext; + + @GuardedBy("mLock") + private final Map<IBinder, OriginTransitionRecord> mRecords = new ArrayMap<>(); + + public IOriginTransitionsImpl(Context context, ShellTransitions shellTransitions) { + mShellTransitions = shellTransitions; + mContext = context; + } + + @Override + public RemoteTransition makeOriginTransition( + RemoteTransition launchTransition, RemoteTransition returnTransition) + throws RemoteException { + if (DEBUG) { + Log.d( + TAG, + "makeOriginTransition: (" + launchTransition + ", " + returnTransition + ")"); + } + enforceRemoteTransitionPermission(); + synchronized (mLock) { + OriginTransitionRecord record = + new OriginTransitionRecord(launchTransition, returnTransition); + mRecords.put(record.getToken(), record); + return record.asLaunchableTransition(); + } + } + + @Override + public void cancelOriginTransition(RemoteTransition originTransition) { + if (DEBUG) { + Log.d(TAG, "cancelOriginTransition: " + originTransition); + } + enforceRemoteTransitionPermission(); + synchronized (mLock) { + if (!mRecords.containsKey(originTransition.asBinder())) { + return; + } + mRecords.get(originTransition.asBinder()).destroy(); + } + } + + private void enforceRemoteTransitionPermission() { + mContext.enforceCallingPermission( + Manifest.permission.CONTROL_REMOTE_APP_TRANSITION_ANIMATIONS, + "Missing permission " + + Manifest.permission.CONTROL_REMOTE_APP_TRANSITION_ANIMATIONS); + } + + public void dump(IndentingPrintWriter ipw) { + ipw.println("IOriginTransitionsImpl"); + ipw.println("Active records:"); + ipw.increaseIndent(); + synchronized (mLock) { + if (mRecords.isEmpty()) { + ipw.println("none"); + } else { + for (OriginTransitionRecord record : mRecords.values()) { + record.dump(ipw); + } + } + } + ipw.decreaseIndent(); + } + + /** + * An {@link IRemoteTransition} that delegates animation to another {@link IRemoteTransition} + * and notify callbacks when the transition starts. + */ + private static class RemoteTransitionDelegate extends IRemoteTransition.Stub { + private final IRemoteTransition mTransition; + private final Predicate<TransitionInfo> mOnStarting; + private final Executor mExecutor; + + RemoteTransitionDelegate( + Executor executor, + IRemoteTransition transition, + Predicate<TransitionInfo> onStarting) { + mExecutor = executor; + mTransition = transition; + mOnStarting = onStarting; + } + + @Override + public void startAnimation( + IBinder token, + TransitionInfo info, + SurfaceControl.Transaction t, + IRemoteTransitionFinishedCallback finishCallback) + throws RemoteException { + if (DEBUG) { + Log.d(TAG, "startAnimation: " + info); + } + if (maybeInterceptTransition(info, t, finishCallback)) { + return; + } + mTransition.startAnimation(token, info, t, finishCallback); + } + + @Override + public void mergeAnimation( + IBinder transition, + TransitionInfo info, + SurfaceControl.Transaction t, + IBinder mergeTarget, + IRemoteTransitionFinishedCallback finishCallback) + throws RemoteException { + if (DEBUG) { + Log.d(TAG, "mergeAnimation: " + info); + } + mTransition.mergeAnimation(transition, info, t, mergeTarget, finishCallback); + } + + @Override + public void takeOverAnimation( + IBinder transition, + TransitionInfo info, + SurfaceControl.Transaction t, + IRemoteTransitionFinishedCallback finishCallback, + WindowAnimationState[] states) + throws RemoteException { + if (DEBUG) { + Log.d(TAG, "takeOverAnimation: " + info); + } + if (maybeInterceptTransition(info, t, finishCallback)) { + return; + } + mTransition.takeOverAnimation(transition, info, t, finishCallback, states); + } + + @Override + public void onTransitionConsumed(IBinder transition, boolean aborted) + throws RemoteException { + if (DEBUG) { + Log.d(TAG, "onTransitionConsumed: aborted=" + aborted); + } + mTransition.onTransitionConsumed(transition, aborted); + } + + @Override + public String toString() { + return "RemoteTransitionDelegate{transition=" + mTransition + "}"; + } + + private boolean maybeInterceptTransition( + TransitionInfo info, + SurfaceControl.Transaction t, + IRemoteTransitionFinishedCallback finishCallback) { + if (!mOnStarting.test(info)) { + Log.w(TAG, "Intercepting cancelled transition " + mTransition); + t.addTransactionCommittedListener( + mExecutor, + () -> { + try { + finishCallback.onTransitionFinished(null, null); + } catch (RemoteException e) { + Log.e(TAG, "Unable to report finish.", e); + } + }) + .apply(); + return true; + } + return false; + } + } + + /** A data record containing the origin transition pieces. */ + private class OriginTransitionRecord implements IBinder.DeathRecipient { + private final RemoteTransition mWrappedLaunchTransition; + private final RemoteTransition mWrappedReturnTransition; + + @GuardedBy("mLock") + private boolean mDestroyed; + + OriginTransitionRecord(RemoteTransition launchTransition, RemoteTransition returnTransition) + throws RemoteException { + mWrappedLaunchTransition = wrap(launchTransition, this::onLaunchTransitionStarting); + mWrappedReturnTransition = wrap(returnTransition, this::onReturnTransitionStarting); + linkToDeath(); + } + + private boolean onLaunchTransitionStarting(TransitionInfo info) { + synchronized (mLock) { + if (mDestroyed) { + return false; + } + TransitionFilter filter = + createFilterForReverseTransition( + info, /* forPredictiveBackTakeover= */ false); + if (filter != null) { + if (DEBUG) { + Log.d(TAG, "Registering filter " + filter); + } + mShellTransitions.registerRemote(filter, mWrappedReturnTransition); + } + TransitionFilter takeoverFilter = + createFilterForReverseTransition( + info, /* forPredictiveBackTakeover= */ true); + if (takeoverFilter != null) { + if (DEBUG) { + Log.d(TAG, "Registering filter for takeover " + takeoverFilter); + } + mShellTransitions.registerRemoteForTakeover( + takeoverFilter, mWrappedReturnTransition); + } + return true; + } + } + + private boolean onReturnTransitionStarting(TransitionInfo info) { + synchronized (mLock) { + if (mDestroyed) { + return false; + } + // Clean up stuff. + destroy(); + return true; + } + } + + public void destroy() { + synchronized (mLock) { + if (mDestroyed) { + // Already destroyed. + return; + } + if (DEBUG) { + Log.d(TAG, "Destroying origin transition record " + this); + } + mDestroyed = true; + unlinkToDeath(); + mShellTransitions.unregisterRemote(mWrappedReturnTransition); + mRecords.remove(getToken()); + } + } + + private void linkToDeath() throws RemoteException { + asDelegate(mWrappedLaunchTransition).mTransition.asBinder().linkToDeath(this, 0); + asDelegate(mWrappedReturnTransition).mTransition.asBinder().linkToDeath(this, 0); + } + + private void unlinkToDeath() { + asDelegate(mWrappedLaunchTransition).mTransition.asBinder().unlinkToDeath(this, 0); + asDelegate(mWrappedReturnTransition).mTransition.asBinder().unlinkToDeath(this, 0); + } + + public IBinder getToken() { + return asLaunchableTransition().asBinder(); + } + + public RemoteTransition asLaunchableTransition() { + return mWrappedLaunchTransition; + } + + @Override + public void binderDied() { + destroy(); + } + + @Override + public String toString() { + return "OriginTransitionRecord{launch=" + + mWrappedReturnTransition + + ", return=" + + mWrappedReturnTransition + + "}"; + } + + public void dump(IndentingPrintWriter ipw) { + synchronized (mLock) { + ipw.println("OriginTransitionRecord"); + ipw.increaseIndent(); + ipw.println("mDestroyed: " + mDestroyed); + ipw.println("Launch transition:"); + ipw.increaseIndent(); + ipw.println(mWrappedLaunchTransition); + ipw.decreaseIndent(); + ipw.println("Return transition:"); + ipw.increaseIndent(); + ipw.println(mWrappedReturnTransition); + ipw.decreaseIndent(); + ipw.decreaseIndent(); + } + } + + private static RemoteTransitionDelegate asDelegate(RemoteTransition transition) { + return (RemoteTransitionDelegate) transition.getRemoteTransition(); + } + + private RemoteTransition wrap( + RemoteTransition transition, Predicate<TransitionInfo> onStarting) { + return new RemoteTransition( + new RemoteTransitionDelegate( + mContext.getMainExecutor(), + transition.getRemoteTransition(), + onStarting), + transition.getDebugName()); + } + + @Nullable + private static TransitionFilter createFilterForReverseTransition( + TransitionInfo info, boolean forPredictiveBackTakeover) { + TaskInfo launchingTaskInfo = null; + TaskInfo launchedTaskInfo = null; + ComponentName launchingActivity = null; + ComponentName launchedActivity = null; + for (Change change : info.getChanges()) { + int mode = change.getMode(); + TaskInfo taskInfo = change.getTaskInfo(); + ComponentName activity = change.getActivityComponent(); + if (TransitionUtil.isClosingMode(mode) + && launchingTaskInfo == null + && taskInfo != null) { + // Found the launching task! + launchingTaskInfo = taskInfo; + } else if (TransitionUtil.isOpeningMode(mode) + && launchedTaskInfo == null + && taskInfo != null) { + // Found the launched task! + launchedTaskInfo = taskInfo; + } else if (TransitionUtil.isClosingMode(mode) + && launchingActivity == null + && activity != null) { + // Found the launching activity + launchingActivity = activity; + } else if (TransitionUtil.isOpeningMode(mode) + && launchedActivity == null + && activity != null) { + // Found the launched activity! + launchedActivity = activity; + } + } + if (DEBUG) { + Log.d( + TAG, + "createFilterForReverseTransition: forPredictiveBackTakeover=" + + forPredictiveBackTakeover + + ", launchingTaskInfo=" + + launchingTaskInfo + + ", launchedTaskInfo=" + + launchedTaskInfo + + ", launchingActivity=" + + launchedActivity + + ", launchedActivity=" + + launchedActivity); + } + if (launchingTaskInfo == null && launchingActivity == null) { + Log.w( + TAG, + "createFilterForReverseTransition: unable to find launching task or" + + " launching activity!"); + return null; + } + if (launchedTaskInfo == null && launchedActivity == null) { + Log.w( + TAG, + "createFilterForReverseTransition: unable to find launched task or launched" + + " activity!"); + return null; + } + if (launchedTaskInfo != null && launchedTaskInfo.launchCookies.isEmpty()) { + Log.w( + TAG, + "createFilterForReverseTransition: skipped - launched task has no launch" + + " cookie!"); + return null; + } + if (forPredictiveBackTakeover && launchedTaskInfo == null) { + // Predictive back take over currently only support cross-task transition. + Log.d( + TAG, + "createFilterForReverseTransition: skipped - unable to find launched task" + + " for predictive back takeover"); + return null; + } + TransitionFilter filter = new TransitionFilter(); + if (forPredictiveBackTakeover) { + filter.mTypeSet = new int[] {TRANSIT_PREPARE_BACK_NAVIGATION}; + } else { + filter.mTypeSet = + new int[] {TRANSIT_CLOSE, TRANSIT_TO_BACK, TRANSIT_OPEN, TRANSIT_TO_FRONT}; + } + + // The opening activity of the return transition must match the activity we just closed. + TransitionFilter.Requirement req1 = new TransitionFilter.Requirement(); + req1.mModes = new int[] {TRANSIT_OPEN, TRANSIT_TO_FRONT}; + req1.mTopActivity = + launchingActivity == null ? launchingTaskInfo.topActivity : launchingActivity; + + TransitionFilter.Requirement req2 = new TransitionFilter.Requirement(); + if (forPredictiveBackTakeover) { + req2.mModes = new int[] {TRANSIT_CHANGE}; + } else { + req2.mModes = new int[] {TRANSIT_CLOSE, TRANSIT_TO_BACK}; + } + if (launchedTaskInfo != null) { + // For task transitions, the closing task's cookie must match the task we just + // launched. + req2.mLaunchCookie = launchedTaskInfo.launchCookies.get(0); + } else { + // For activity transitions, the closing activity of the return transition must + // match the activity we just launched. + req2.mTopActivity = launchedActivity; + } + + filter.mRequirements = new TransitionFilter.Requirement[] {req1, req2}; + return filter; + } + } +} diff --git a/systemUI/anim/lib/src/com/android/systemui/animation/shared/IOriginTransitions.aidl b/systemUI/anim/lib/src/com/android/systemui/animation/shared/IOriginTransitions.aidl new file mode 100644 index 0000000000..31cca701ca --- /dev/null +++ b/systemUI/anim/lib/src/com/android/systemui/animation/shared/IOriginTransitions.aidl @@ -0,0 +1,44 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation.shared; + +import android.window.RemoteTransition; + +/** + * An interface for an app to link a launch transition and a return transition together into an + * origin transition. + */ +interface IOriginTransitions { + + /** + * Create a new "origin transition" which wraps a launch transition and a return transition. + * The returned {@link RemoteTransition} is expected to be passed to + * {@link ActivityOptions#makeRemoteTransition(RemoteTransition)} to create an + * {@link ActivityOptions} and being used to launch an intent. When being used with + * {@link ActivityOptions}, the launch transition will be triggered for launching the intent, + * and the return transition will be remembered and triggered for returning from the launched + * activity. + */ + RemoteTransition makeOriginTransition(in RemoteTransition launchTransition, + in RemoteTransition returnTransition) = 1; + + /** + * Cancels an origin transition. Any parts not yet played will no longer be triggered, and the + * origin transition object will reset to a single frame animation. + */ + void cancelOriginTransition(in RemoteTransition originTransition) = 2; +} diff --git a/systemUI/anim/lib/tests/Android.bp b/systemUI/anim/lib/tests/Android.bp new file mode 100644 index 0000000000..c1a3e84e1d --- /dev/null +++ b/systemUI/anim/lib/tests/Android.bp @@ -0,0 +1,47 @@ +// Copyright (C) 2024 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package { + default_team: "trendy_team_system_ui_please_use_a_more_specific_subteam_if_possible_", + default_applicable_licenses: ["frameworks_base_packages_SystemUI_license"], +} + +android_test { + name: "PlatformAnimationLibCoreTests", + + defaults: [ + "platform_app_defaults", + ], + srcs: [ + "src/**/*.java", + ], + + dxflags: ["--multi-dex"], + platform_apis: true, + test_suites: ["device-tests"], + static_libs: [ + "PlatformAnimationLib-core", + "platform-test-rules", + "testables", + ], + compile_multilib: "both", + libs: [ + "android.test.runner.stubs.system", + "android.test.base.stubs.system", + ], + + certificate: "platform", + + manifest: "AndroidManifest.xml", +} diff --git a/systemUI/anim/lib/tests/AndroidManifest.xml b/systemUI/anim/lib/tests/AndroidManifest.xml new file mode 100644 index 0000000000..1788abff44 --- /dev/null +++ b/systemUI/anim/lib/tests/AndroidManifest.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:sharedUserId="android.uid.system" + package="com.android.systemui.animation.core.tests" > + + <application android:debuggable="true" android:testOnly="true"> + <uses-library android:name="android.test.runner" /> + </application> + + <instrumentation android:name="android.testing.TestableInstrumentation" + android:targetPackage="com.android.systemui.animation.core.tests" + android:label="Tests for PlatformAnimationLib-core" /> +</manifest> diff --git a/systemUI/anim/lib/tests/AndroidTest.xml b/systemUI/anim/lib/tests/AndroidTest.xml new file mode 100644 index 0000000000..0f37d7af22 --- /dev/null +++ b/systemUI/anim/lib/tests/AndroidTest.xml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2024 The Android Open Source Project + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> +<configuration description="Runs Tests for PlatformAnimationLib-core."> + <target_preparer class="com.android.tradefed.targetprep.TestAppInstallSetup"> + <option name="test-file-name" value="PlatformAnimationLibCoreTests.apk" /> + <option name="install-arg" value="-t" /> + </target_preparer> + + <!-- Among other reasons, root access is needed for screen recording artifacts. --> + <target_preparer class="com.android.tradefed.targetprep.RootTargetPreparer"> + <option name="force-root" value="true" /> + </target_preparer> + + <test class="com.android.tradefed.testtype.AndroidJUnitTest" > + <option name="package" value="com.android.systemui.animation.core.tests" /> + <option name="runner" value="android.testing.TestableInstrumentation" /> + <option name="test-filter-dir" value="/data/data/com.android.systemui.animation.core.tests" /> + <option name="hidden-api-checks" value="false"/> + </test> + + <metrics_collector class="com.android.tradefed.device.metric.FilePullerLogCollector"> + <option name="directory-keys" value="/data/user/0/com.android.systemui.animation.core.tests/files" /> + <option name="collect-on-run-ended-only" value="false" /> + </metrics_collector> +</configuration> diff --git a/systemUI/anim/lib/tests/src/com/android/systemui/animation/OriginTransitionSessionTest.java b/systemUI/anim/lib/tests/src/com/android/systemui/animation/OriginTransitionSessionTest.java new file mode 100644 index 0000000000..287e53b906 --- /dev/null +++ b/systemUI/anim/lib/tests/src/com/android/systemui/animation/OriginTransitionSessionTest.java @@ -0,0 +1,406 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation; + +import static com.google.common.truth.Truth.assertThat; + +import android.annotation.Nullable; +import android.app.Instrumentation; +import android.content.ComponentName; +import android.content.Context; +import android.os.Binder; +import android.os.IBinder; +import android.os.RemoteException; +import android.util.ArrayMap; +import android.view.SurfaceControl; +import android.view.WindowManager; +import android.window.IRemoteTransition; +import android.window.IRemoteTransitionFinishedCallback; +import android.window.RemoteTransition; +import android.window.TransitionInfo; +import android.window.WindowAnimationState; +import android.window.WindowContainerTransaction; + +import androidx.test.filters.SmallTest; +import androidx.test.platform.app.InstrumentationRegistry; + +import com.android.systemui.animation.shared.IOriginTransitions; + +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; + +import java.util.Map; +import java.util.function.Predicate; + +/** Unit tests for {@link OriginTransitionSession}. */ +@SmallTest +@RunWith(JUnit4.class) +public final class OriginTransitionSessionTest { + private static final ComponentName TEST_ACTIVITY_1 = new ComponentName("test", "Activity1"); + private static final ComponentName TEST_ACTIVITY_2 = new ComponentName("test", "Activity2"); + private static final ComponentName TEST_ACTIVITY_3 = new ComponentName("test", "Activity3"); + + private FakeIOriginTransitions mIOriginTransitions; + private Instrumentation mInstrumentation; + private FakeIntentStarter mIntentStarter; + private Context mContext; + + @Before + public void setUp() { + mInstrumentation = InstrumentationRegistry.getInstrumentation(); + mContext = mInstrumentation.getTargetContext(); + mIOriginTransitions = new FakeIOriginTransitions(); + mIntentStarter = new FakeIntentStarter(TEST_ACTIVITY_1, TEST_ACTIVITY_2); + } + + @Test + public void sessionStart_withEntryAndExitTransition_transitionsPlayed() { + FakeRemoteTransition entry = new FakeRemoteTransition(); + FakeRemoteTransition exit = new FakeRemoteTransition(); + OriginTransitionSession session = + new OriginTransitionSession.Builder(mContext, mIOriginTransitions) + .withIntentStarter(mIntentStarter) + .withEntryTransition(entry) + .withExitTransition(exit) + .build(); + + session.start(); + + assertThat(mIntentStarter.hasLaunched()).isTrue(); + assertThat(entry.started()).isTrue(); + + runReturnTransition(mIntentStarter); + + assertThat(exit.started()).isTrue(); + } + + @Test + public void sessionStart_withEntryTransition_transitionPlayed() { + FakeRemoteTransition entry = new FakeRemoteTransition(); + OriginTransitionSession session = + new OriginTransitionSession.Builder(mContext, mIOriginTransitions) + .withIntentStarter(mIntentStarter) + .withEntryTransition(entry) + .build(); + + session.start(); + + assertThat(mIntentStarter.hasLaunched()).isTrue(); + assertThat(entry.started()).isTrue(); + assertThat(mIOriginTransitions.hasPendingReturnTransitions()).isFalse(); + } + + @Test + public void sessionStart_withoutTransition_launchedIntent() { + OriginTransitionSession session = + new OriginTransitionSession.Builder(mContext, mIOriginTransitions) + .withIntentStarter(mIntentStarter) + .build(); + + session.start(); + + assertThat(mIntentStarter.hasLaunched()).isTrue(); + assertThat(mIOriginTransitions.hasPendingReturnTransitions()).isFalse(); + } + + @Test + public void sessionStart_cancelledByIntentStarter_transitionNotPlayed() { + FakeRemoteTransition entry = new FakeRemoteTransition(); + FakeRemoteTransition exit = new FakeRemoteTransition(); + mIntentStarter = + new FakeIntentStarter(TEST_ACTIVITY_1, TEST_ACTIVITY_2, /* result= */ false); + OriginTransitionSession session = + new OriginTransitionSession.Builder(mContext, mIOriginTransitions) + .withIntentStarter(mIntentStarter) + .withEntryTransition(entry) + .withExitTransition(exit) + .build(); + + session.start(); + + assertThat(mIntentStarter.hasLaunched()).isFalse(); + assertThat(entry.started()).isFalse(); + assertThat(exit.started()).isFalse(); + assertThat(mIOriginTransitions.hasPendingReturnTransitions()).isFalse(); + } + + @Test + public void sessionStart_alreadyStarted_noOp() { + FakeRemoteTransition entry = new FakeRemoteTransition(); + FakeRemoteTransition exit = new FakeRemoteTransition(); + OriginTransitionSession session = + new OriginTransitionSession.Builder(mContext, mIOriginTransitions) + .withIntentStarter(mIntentStarter) + .withEntryTransition(entry) + .withExitTransition(exit) + .build(); + session.start(); + entry.reset(); + mIntentStarter.reset(); + + session.start(); + + assertThat(mIntentStarter.hasLaunched()).isFalse(); + assertThat(entry.started()).isFalse(); + } + + @Test + public void sessionStart_alreadyCancelled_noOp() { + FakeRemoteTransition entry = new FakeRemoteTransition(); + FakeRemoteTransition exit = new FakeRemoteTransition(); + OriginTransitionSession session = + new OriginTransitionSession.Builder(mContext, mIOriginTransitions) + .withIntentStarter(mIntentStarter) + .withEntryTransition(entry) + .withExitTransition(exit) + .build(); + session.cancel(); + + session.start(); + + assertThat(mIntentStarter.hasLaunched()).isFalse(); + assertThat(entry.started()).isFalse(); + assertThat(mIOriginTransitions.hasPendingReturnTransitions()).isFalse(); + } + + @Test + public void sessionCancelled_returnTransitionNotPlayed() { + FakeRemoteTransition entry = new FakeRemoteTransition(); + FakeRemoteTransition exit = new FakeRemoteTransition(); + OriginTransitionSession session = + new OriginTransitionSession.Builder(mContext, mIOriginTransitions) + .withIntentStarter(mIntentStarter) + .withEntryTransition(entry) + .withExitTransition(exit) + .build(); + + session.start(); + session.cancel(); + + assertThat(mIOriginTransitions.hasPendingReturnTransitions()).isFalse(); + } + + @Test + public void multipleSessionsStarted_allTransitionsPlayed() { + FakeRemoteTransition entry1 = new FakeRemoteTransition(); + FakeRemoteTransition exit1 = new FakeRemoteTransition(); + FakeIntentStarter starter1 = mIntentStarter; + OriginTransitionSession session1 = + new OriginTransitionSession.Builder(mContext, mIOriginTransitions) + .withIntentStarter(starter1) + .withEntryTransition(entry1) + .withExitTransition(exit1) + .build(); + FakeRemoteTransition entry2 = new FakeRemoteTransition(); + FakeRemoteTransition exit2 = new FakeRemoteTransition(); + FakeIntentStarter starter2 = new FakeIntentStarter(TEST_ACTIVITY_2, TEST_ACTIVITY_3); + OriginTransitionSession session2 = + new OriginTransitionSession.Builder(mContext, mIOriginTransitions) + .withIntentStarter(starter2) + .withEntryTransition(entry2) + .withExitTransition(exit2) + .build(); + + session1.start(); + + assertThat(starter1.hasLaunched()).isTrue(); + assertThat(entry1.started()).isTrue(); + + session2.start(); + + assertThat(starter2.hasLaunched()).isTrue(); + assertThat(entry2.started()).isTrue(); + + runReturnTransition(starter2); + + assertThat(exit2.started()).isTrue(); + + runReturnTransition(starter1); + + assertThat(exit1.started()).isTrue(); + } + + private void runReturnTransition(FakeIntentStarter intentStarter) { + TransitionInfo info = + buildTransitionInfo(intentStarter.getToActivity(), intentStarter.getFromActivity()); + mIOriginTransitions.runReturnTransition(intentStarter.getTransitionOfLastLaunch(), info); + } + + private static TransitionInfo buildTransitionInfo(ComponentName from, ComponentName to) { + TransitionInfo info = new TransitionInfo(WindowManager.TRANSIT_OPEN, /* flags= */ 0); + TransitionInfo.Change c1 = + new TransitionInfo.Change(/* container= */ null, /* leash= */ null); + c1.setMode(WindowManager.TRANSIT_OPEN); + c1.setActivityComponent(to); + TransitionInfo.Change c2 = + new TransitionInfo.Change(/* container= */ null, /* leash= */ null); + c2.setMode(WindowManager.TRANSIT_CLOSE); + c2.setActivityComponent(from); + info.addChange(c2); + info.addChange(c1); + return info; + } + + private static class FakeIntentStarter implements Predicate<RemoteTransition> { + private final ComponentName mFromActivity; + private final ComponentName mToActivity; + private final boolean mResult; + + @Nullable private RemoteTransition mTransition; + private boolean mLaunched; + + FakeIntentStarter(ComponentName from, ComponentName to) { + this(from, to, /* result= */ true); + } + + FakeIntentStarter(ComponentName from, ComponentName to, boolean result) { + mFromActivity = from; + mToActivity = to; + mResult = result; + } + + @Override + public boolean test(RemoteTransition transition) { + if (mResult) { + mLaunched = true; + mTransition = transition; + if (mTransition != null) { + TransitionInfo info = buildTransitionInfo(mFromActivity, mToActivity); + try { + transition + .getRemoteTransition() + .startAnimation( + new Binder(), + info, + new SurfaceControl.Transaction(), + new FakeFinishCallback()); + } catch (RemoteException e) { + + } + } + } + return mResult; + } + + @Nullable + public RemoteTransition getTransitionOfLastLaunch() { + return mTransition; + } + + public ComponentName getFromActivity() { + return mFromActivity; + } + + public ComponentName getToActivity() { + return mToActivity; + } + + public boolean hasLaunched() { + return mLaunched; + } + + public void reset() { + mTransition = null; + mLaunched = false; + } + } + + private static class FakeIOriginTransitions extends IOriginTransitions.Stub { + private final Map<RemoteTransition, RemoteTransition> mRecords = new ArrayMap<>(); + + @Override + public RemoteTransition makeOriginTransition( + RemoteTransition launchTransition, RemoteTransition returnTransition) { + mRecords.put(launchTransition, returnTransition); + return launchTransition; + } + + @Override + public void cancelOriginTransition(RemoteTransition originTransition) { + mRecords.remove(originTransition); + } + + public void runReturnTransition(RemoteTransition originTransition, TransitionInfo info) { + RemoteTransition transition = mRecords.remove(originTransition); + try { + transition + .getRemoteTransition() + .startAnimation( + new Binder(), + info, + new SurfaceControl.Transaction(), + new FakeFinishCallback()); + } catch (RemoteException e) { + + } + } + + public boolean hasPendingReturnTransitions() { + return !mRecords.isEmpty(); + } + } + + private static class FakeFinishCallback extends IRemoteTransitionFinishedCallback.Stub { + @Override + public void onTransitionFinished( + WindowContainerTransaction wct, SurfaceControl.Transaction sct) {} + } + + private static class FakeRemoteTransition extends IRemoteTransition.Stub { + private boolean mStarted; + + @Override + public void startAnimation( + IBinder token, + TransitionInfo info, + SurfaceControl.Transaction t, + IRemoteTransitionFinishedCallback finishCallback) + throws RemoteException { + mStarted = true; + finishCallback.onTransitionFinished(null, null); + } + + @Override + public void mergeAnimation( + IBinder transition, + TransitionInfo info, + SurfaceControl.Transaction t, + IBinder mergeTarget, + IRemoteTransitionFinishedCallback finishCallback) {} + + @Override + public void takeOverAnimation( + IBinder transition, + TransitionInfo info, + SurfaceControl.Transaction t, + IRemoteTransitionFinishedCallback finishCallback, + WindowAnimationState[] states) {} + + @Override + public void onTransitionConsumed(IBinder transition, boolean aborted) {} + + public boolean started() { + return mStarted; + } + + public void reset() { + mStarted = false; + } + } +} diff --git a/systemUI/anim/res/anim/launch_dialog_enter.xml b/systemUI/anim/res/anim/launch_dialog_enter.xml new file mode 100644 index 0000000000..c6b87d38f7 --- /dev/null +++ b/systemUI/anim/res/anim/launch_dialog_enter.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2021 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<!-- The enter animation of the host dialog is a translation of 0px that lasts 500ms so that the --> +<!-- host dialog is directly visible but the dim background still takes 500ms to fade in. --> +<translate xmlns:android="http://schemas.android.com/apk/res/android" + android:fromXDelta="0" + android:toXDelta="0" + android:duration="500" /> \ No newline at end of file diff --git a/systemUI/anim/res/anim/launch_dialog_exit.xml b/systemUI/anim/res/anim/launch_dialog_exit.xml new file mode 100644 index 0000000000..a0f441eaee --- /dev/null +++ b/systemUI/anim/res/anim/launch_dialog_exit.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2021 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<alpha + xmlns:android="http://schemas.android.com/apk/res/android" + android:interpolator="@android:interpolator/decelerate_cubic" + android:duration="150" + android:fromAlpha="1.0" + android:toAlpha="0.0" /> \ No newline at end of file diff --git a/systemUI/anim/res/values/ids.xml b/systemUI/anim/res/values/ids.xml new file mode 100644 index 0000000000..f6bb95a42f --- /dev/null +++ b/systemUI/anim/res/values/ids.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2021 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<resources> + <!-- DialogTransitionAnimator --> + <item type="id" name="tag_dialog_background"/> + + <!-- ViewBoundsAnimator --> + <item type="id" name="tag_animator"/> + <item type="id" name="tag_alpha_animator"/> + <item type="id" name="tag_layout_listener"/> + <item type="id" name="tag_override_bottom"/> + <item type="id" name="tag_override_left"/> + <item type="id" name="tag_override_right"/> + <item type="id" name="tag_override_top"/> + + <!-- ViewTransitionRegistry --> + <item type="id" name="tag_view_transition_token"/> +</resources> diff --git a/systemUI/anim/res/values/styles.xml b/systemUI/anim/res/values/styles.xml new file mode 100644 index 0000000000..3019eeef23 --- /dev/null +++ b/systemUI/anim/res/values/styles.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2021 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<resources> + <!-- An animation used by DialogTransitionAnimator to make a dialog appear instantly (to --> + <!-- animate in-window) and disappear by fading out (when the exit into view is disabled). --> + <style name="Animation.LaunchAnimation" parent="@android:style/Animation"> + <item name="android:windowEnterAnimation">@anim/launch_dialog_enter</item> + <item name="android:windowExitAnimation">@anim/launch_dialog_exit</item> + </style> +</resources> \ No newline at end of file diff --git a/systemUI/anim/src/com/android/systemui/animation/ActivityTransitionAnimator.kt b/systemUI/anim/src/com/android/systemui/animation/ActivityTransitionAnimator.kt new file mode 100644 index 0000000000..ba7c8ac973 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/ActivityTransitionAnimator.kt @@ -0,0 +1,1970 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.app.ActivityManager +import android.app.ActivityTaskManager +import android.app.PendingIntent +import android.app.TaskInfo +import android.app.WindowConfiguration +import android.content.ComponentName +import android.graphics.Color +import android.graphics.Matrix +import android.graphics.PointF +import android.graphics.Rect +import android.graphics.RectF +import android.os.Binder +import android.os.Handler +import android.os.IBinder +import android.os.Looper +import android.os.RemoteException +import android.util.ArrayMap +import android.util.Log +import android.view.IRemoteAnimationFinishedCallback +import android.view.IRemoteAnimationRunner +import android.view.RemoteAnimationAdapter +import android.view.RemoteAnimationTarget +import android.view.SurfaceControl +import android.view.SyncRtSurfaceTransactionApplier +import android.view.View +import android.view.ViewGroup +import android.view.WindowManager +import android.view.WindowManager.TRANSIT_CLOSE +import android.view.WindowManager.TRANSIT_OPEN +import android.view.WindowManager.TRANSIT_TO_BACK +import android.view.WindowManager.TRANSIT_TO_FRONT +import android.view.animation.PathInterpolator +import android.window.IRemoteTransition +import android.window.IRemoteTransitionFinishedCallback +import android.window.RemoteTransition +import android.window.TransitionFilter +import android.window.TransitionInfo +import android.window.WindowAnimationState +import androidx.annotation.AnyThread +import androidx.annotation.BinderThread +import androidx.annotation.UiThread +import com.android.app.animation.Interpolators +import com.android.internal.annotations.VisibleForTesting +import com.android.internal.policy.ScreenDecorationsUtils +import com.android.systemui.Flags.activityTransitionUseLargestWindow +import com.android.systemui.Flags.moveTransitionAnimationLayer +import com.android.systemui.Flags.translucentOccludingActivityFix +import com.android.systemui.animation.ActivityTransitionAnimator.Companion.LONG_TRANSITION_TIMEOUT +import com.android.systemui.animation.ActivityTransitionAnimator.Companion.TRANSITION_TIMEOUT +import com.android.systemui.animation.TransitionAnimator.Companion.assertLongLivedReturnAnimations +import com.android.systemui.animation.TransitionAnimator.Companion.assertReturnAnimations +import com.android.systemui.animation.TransitionAnimator.Companion.longLivedReturnAnimationsEnabled +import com.android.systemui.animation.TransitionAnimator.Companion.returnAnimationsEnabled +import com.android.systemui.animation.TransitionAnimator.Companion.toTransitionState +import com.android.systemui.animation.TransitionAnimator.Controller +import com.android.wm.shell.shared.IShellTransitions +import com.android.wm.shell.shared.ShellTransitions +import com.android.wm.shell.shared.TransitionUtil +import java.util.concurrent.Executor +import kotlin.math.roundToInt +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.launch +import kotlinx.coroutines.withTimeoutOrNull + +private const val TAG = "ActivityTransitionAnimator" + +/** + * A class that allows activities to be started in a seamless way from a view that is transforming + * nicely into the starting window. + */ +class ActivityTransitionAnimator +@JvmOverloads +constructor( + /** The executor that runs on the main thread. */ + private val mainExecutor: Executor, + + /** The object used to register ephemeral returns and long-lived transitions. */ + private val transitionRegister: TransitionRegister? = null, + + /** The animator used when animating a View into an app. */ + private val transitionAnimator: TransitionAnimator = defaultTransitionAnimator(mainExecutor), + + /** The animator used when animating a Dialog into an app. */ + // TODO(b/218989950): Remove this animator and instead set the duration of the dim fade out to + // TIMINGS.contentBeforeFadeOutDuration. + private val dialogToAppAnimator: TransitionAnimator = defaultDialogToAppAnimator(mainExecutor), + + /** + * Whether we should disable the WindowManager timeout. This should be set to true in tests + * only. + */ + // TODO(b/301385865): Remove this flag. + private val disableWmTimeout: Boolean = false, + + /** + * Whether we should disable the reparent transaction that puts the opening/closing window above + * the view's window. This should be set to true in tests only, where we can't currently use a + * valid leash. + * + * TODO(b/397180418): Remove this flag when we don't have the RemoteAnimation wrapper anymore + * and we can just inject a fake transaction. + */ + private val skipReparentTransaction: Boolean = false, +) { + @JvmOverloads + constructor( + mainExecutor: Executor, + shellTransitions: ShellTransitions, + transitionAnimator: TransitionAnimator = defaultTransitionAnimator(mainExecutor), + dialogToAppAnimator: TransitionAnimator = defaultDialogToAppAnimator(mainExecutor), + disableWmTimeout: Boolean = false, + ) : this( + mainExecutor, + TransitionRegister.fromShellTransitions(shellTransitions), + transitionAnimator, + dialogToAppAnimator, + disableWmTimeout, + ) + + @JvmOverloads + constructor( + mainExecutor: Executor, + iShellTransitions: IShellTransitions, + transitionAnimator: TransitionAnimator = defaultTransitionAnimator(mainExecutor), + dialogToAppAnimator: TransitionAnimator = defaultDialogToAppAnimator(mainExecutor), + disableWmTimeout: Boolean = false, + ) : this( + mainExecutor, + TransitionRegister.fromIShellTransitions(iShellTransitions), + transitionAnimator, + dialogToAppAnimator, + disableWmTimeout, + ) + + companion object { + /** The timings when animating a View into an app. */ + @JvmField + val TIMINGS = + TransitionAnimator.Timings( + totalDuration = 500L, + contentBeforeFadeOutDelay = 0L, + contentBeforeFadeOutDuration = 150L, + contentAfterFadeInDelay = 150L, + contentAfterFadeInDuration = 183L, + ) + + /** + * The timings when animating a View into an app using a spring animator. These timings + * represent fractions of the progress between the spring's initial value and its final + * value. + */ + val SPRING_TIMINGS = + TransitionAnimator.SpringTimings( + contentBeforeFadeOutDelay = 0f, + contentBeforeFadeOutDuration = 0.8f, + contentAfterFadeInDelay = 0.85f, + contentAfterFadeInDuration = 0.135f, + ) + + /** + * The timings when animating a Dialog into an app. We need to wait at least 200ms before + * showing the app (which is under the dialog window) so that the dialog window dim is fully + * faded out, to avoid flicker. + */ + val DIALOG_TIMINGS = + TIMINGS.copy(contentBeforeFadeOutDuration = 200L, contentAfterFadeInDelay = 200L) + + /** The interpolators when animating a View or a dialog into an app. */ + public val INTERPOLATORS = + TransitionAnimator.Interpolators( + positionInterpolator = Interpolators.EMPHASIZED, + positionXInterpolator = Interpolators.EMPHASIZED_COMPLEMENT, + contentBeforeFadeOutInterpolator = Interpolators.LINEAR_OUT_SLOW_IN, + contentAfterFadeInInterpolator = PathInterpolator(0f, 0f, 0.6f, 1f), + ) + + /** The interpolators when animating a View into an app using a spring animator. */ + val SPRING_INTERPOLATORS = + INTERPOLATORS.copy( + contentBeforeFadeOutInterpolator = Interpolators.DECELERATE_1_5, + contentAfterFadeInInterpolator = Interpolators.SLOW_OUT_LINEAR_IN, + ) + + // TODO(b/288507023): Remove this flag. + @JvmField val DEBUG_TRANSITION_ANIMATION = false + + /** Durations & interpolators for the navigation bar fading in & out. */ + private const val ANIMATION_DURATION_NAV_FADE_IN = 266L + private const val ANIMATION_DURATION_NAV_FADE_OUT = 133L + private val ANIMATION_DELAY_NAV_FADE_IN = + TIMINGS.totalDuration - ANIMATION_DURATION_NAV_FADE_IN + + private val NAV_FADE_IN_INTERPOLATOR = Interpolators.STANDARD_DECELERATE + private val NAV_FADE_OUT_INTERPOLATOR = PathInterpolator(0.2f, 0f, 1f, 1f) + + /** The time we wait before timing out the remote animation after starting the intent. */ + private const val TRANSITION_TIMEOUT = 1_000L + + /** + * The time we wait before we Log.wtf because the remote animation was neither started or + * cancelled by WM. + */ + private const val LONG_TRANSITION_TIMEOUT = 5_000L + + private fun defaultTransitionAnimator(mainExecutor: Executor): TransitionAnimator { + return TransitionAnimator( + mainExecutor, + TIMINGS, + INTERPOLATORS, + SPRING_TIMINGS, + SPRING_INTERPOLATORS, + ) + } + + private fun defaultDialogToAppAnimator(mainExecutor: Executor): TransitionAnimator { + return TransitionAnimator(mainExecutor, DIALOG_TIMINGS, INTERPOLATORS) + } + } + + /** + * The callback of this animator. This should be set before any call to + * [start(Pending)IntentWithAnimation]. + */ + var callback: Callback? = null + + /** The set of [Listener] that should be notified of any animation started by this animator. */ + private val listeners = LinkedHashSet<Listener>() + + /** Top-level listener that can be used to notify all registered [listeners]. */ + private val lifecycleListener = + object : Listener { + override fun onTransitionAnimationStart() { + LinkedHashSet(listeners).forEach { it.onTransitionAnimationStart() } + } + + override fun onTransitionAnimationEnd() { + LinkedHashSet(listeners).forEach { it.onTransitionAnimationEnd() } + } + + override fun onTransitionAnimationProgress(linearProgress: Float) { + LinkedHashSet(listeners).forEach { + it.onTransitionAnimationProgress(linearProgress) + } + } + + override fun onTransitionAnimationCancelled() { + LinkedHashSet(listeners).forEach { it.onTransitionAnimationCancelled() } + } + } + + /** Book-keeping for long-lived transitions that are currently registered. */ + private val longLivedTransitions = + HashMap<TransitionCookie, Pair<RemoteTransition, RemoteTransition>>() + + /** + * Start an intent and animate the opening window. The intent will be started by running + * [intentStarter], which should use the provided [RemoteAnimationAdapter] and return the launch + * result. [controller] is responsible from animating the view from which the intent was started + * in [Controller.onTransitionAnimationProgress]. No animation will start if there is no window + * opening. + * + * If [controller] is null or [animate] is false, then the intent will be started and no + * animation will run. + * + * If possible, you should pass the [packageName] of the intent that will be started so that + * trampoline activity launches will also be animated. + * + * If the device is currently locked, the user will have to unlock it before the intent is + * started unless [showOverLockscreen] is true. In that case, the activity will be started + * directly over the lockscreen. + * + * This method will throw any exception thrown by [intentStarter]. + */ + @JvmOverloads + fun startIntentWithAnimation( + controller: Controller?, + animate: Boolean = true, + packageName: String? = null, + showOverLockscreen: Boolean = false, + intentStarter: (RemoteAnimationAdapter?) -> Int, + ) { + if (controller == null || !animate) { + Log.i(TAG, "Starting intent with no animation") + intentStarter(null) + controller?.callOnIntentStartedOnMainThread(willAnimate = false) + return + } + + val callback = + this.callback + ?: throw IllegalStateException( + "ActivityTransitionAnimator.callback must be set before using this animator" + ) + val runner = createEphemeralRunner(controller) + val runnerDelegate = runner.delegate + val hideKeyguardWithAnimation = callback.isOnKeyguard() && !showOverLockscreen + + // Pass the RemoteAnimationAdapter to the intent starter only if we are not hiding the + // keyguard with the animation + val animationAdapter = + if (!hideKeyguardWithAnimation) { + RemoteAnimationAdapter( + runner, + TIMINGS.totalDuration, + TIMINGS.totalDuration - 150, /* statusBarTransitionDelay */ + ) + } else { + null + } + + // Register the remote animation for the given package to also animate trampoline + // activity launches. + if (packageName != null && animationAdapter != null) { + try { + ActivityTaskManager.getService() + .registerRemoteAnimationForNextActivityStart( + packageName, + animationAdapter, + null, /* launchCookie */ + ) + } catch (e: RemoteException) { + Log.w(TAG, "Unable to register the remote animation", e) + } + } + + if (animationAdapter != null && controller.transitionCookie != null) { + registerEphemeralReturnAnimation(controller, transitionRegister) + } + + val launchResult = intentStarter(animationAdapter) + + // Only animate if the app is not already on top and will be opened, unless we are on the + // keyguard. + val willAnimate = + launchResult == ActivityManager.START_TASK_TO_FRONT || + launchResult == ActivityManager.START_SUCCESS || + (launchResult == ActivityManager.START_DELIVERED_TO_TOP && + hideKeyguardWithAnimation) + + Log.i( + TAG, + "launchResult=$launchResult willAnimate=$willAnimate " + + "hideKeyguardWithAnimation=$hideKeyguardWithAnimation", + ) + controller.callOnIntentStartedOnMainThread(willAnimate) + + // If we expect an animation, post a timeout to cancel it in case the remote animation is + // never started. + if (willAnimate) { + if (longLivedReturnAnimationsEnabled()) { + runner.postTimeouts() + } else { + runnerDelegate!!.postTimeouts() + } + + // Hide the keyguard using the launch animation instead of the default unlock animation. + if (hideKeyguardWithAnimation) { + callback.hideKeyguardWithAnimation(runner) + } + } else { + // We need to make sure delegate references are dropped to avoid memory leaks. + runner.dispose() + } + } + + private fun Controller.callOnIntentStartedOnMainThread(willAnimate: Boolean) { + if (Looper.myLooper() != Looper.getMainLooper()) { + mainExecutor.execute { callOnIntentStartedOnMainThread(willAnimate) } + } else { + if (DEBUG_TRANSITION_ANIMATION) { + Log.d( + TAG, + "Calling controller.onIntentStarted(willAnimate=$willAnimate) " + + "[controller=$this]", + ) + } + this.onIntentStarted(willAnimate) + } + } + + /** + * Same as [startIntentWithAnimation] but allows [intentStarter] to throw a + * [PendingIntent.CanceledException] which must then be handled by the caller. This is useful + * for Java caller starting a [PendingIntent]. + * + * If possible, you should pass the [packageName] of the intent that will be started so that + * trampoline activity launches will also be animated. + */ + @Throws(PendingIntent.CanceledException::class) + @JvmOverloads + fun startPendingIntentWithAnimation( + controller: Controller?, + animate: Boolean = true, + packageName: String? = null, + showOverLockscreen: Boolean = false, + intentStarter: PendingIntentStarter, + ) { + startIntentWithAnimation(controller, animate, packageName, showOverLockscreen) { + intentStarter.startPendingIntent(it) + } + } + + /** + * Uses [transitionRegister] to set up the return animation for the given [launchController]. + * + * De-registration is set up automatically once the return animation is run. + * + * TODO(b/339194555): automatically de-register when the launchable is detached. + */ + private fun registerEphemeralReturnAnimation( + launchController: Controller, + transitionRegister: TransitionRegister?, + ) { + if (!returnAnimationsEnabled()) return + + var cleanUpRunnable: Runnable? = null + val returnRunner = + createEphemeralRunner( + object : DelegateTransitionAnimatorController(launchController) { + override val isLaunching = false + + override fun onTransitionAnimationCancelled( + newKeyguardOccludedState: Boolean? + ) { + super.onTransitionAnimationCancelled(newKeyguardOccludedState) + onDispose() + } + + override fun onTransitionAnimationEnd(isExpandingFullyAbove: Boolean) { + super.onTransitionAnimationEnd(isExpandingFullyAbove) + onDispose() + } + + override fun onDispose() { + super.onDispose() + cleanUpRunnable?.run() + } + } + ) + + // mTypeSet and mModes match back signals only, and not home. This is on purpose, because + // we only want ephemeral return animations triggered in these scenarios. + val filter = + TransitionFilter().apply { + mTypeSet = intArrayOf(TRANSIT_CLOSE, TRANSIT_TO_BACK) + mRequirements = + arrayOf( + TransitionFilter.Requirement().apply { + mLaunchCookie = launchController.transitionCookie + mModes = intArrayOf(TRANSIT_CLOSE, TRANSIT_TO_BACK) + } + ) + } + val transition = + RemoteTransition( + RemoteAnimationRunnerCompat.wrap(returnRunner), + "${launchController.transitionCookie}_returnTransition", + ) + + transitionRegister?.register(filter, transition, includeTakeover = false) + cleanUpRunnable = Runnable { transitionRegister?.unregister(transition) } + } + + /** Add a [Listener] that can listen to transition animations. */ + fun addListener(listener: Listener) { + listeners.add(listener) + } + + /** Remove a [Listener]. */ + fun removeListener(listener: Listener) { + listeners.remove(listener) + } + + /** + * Create a new animation [Runner] controlled by [controller]. + * + * This method must only be used for ephemeral (launch or return) transitions. Otherwise, use + * [createLongLivedRunner]. + */ + @VisibleForTesting + fun createEphemeralRunner(controller: Controller): Runner { + // Make sure we use the modified timings when animating a dialog into an app. + val transitionAnimator = + if (controller.isDialogLaunch) { + dialogToAppAnimator + } else { + transitionAnimator + } + + return Runner(controller, callback!!, transitionAnimator, lifecycleListener) + } + + /** + * Create a new animation [Runner] controlled by the [Controller] that [controllerFactory] can + * create based on [forLaunch] and within the given [scope]. + * + * This method must only be used for long-lived registrations. Otherwise, use + * [createEphemeralRunner]. + */ + @VisibleForTesting + fun createLongLivedRunner( + controllerFactory: ControllerFactory, + scope: CoroutineScope, + forLaunch: Boolean, + ): Runner { + assertLongLivedReturnAnimations() + return Runner(scope, callback!!, transitionAnimator, lifecycleListener) { + controllerFactory.createController(forLaunch) + } + } + + interface PendingIntentStarter { + /** + * Start a pending intent using the provided [animationAdapter] and return the launch + * result. + */ + @Throws(PendingIntent.CanceledException::class) + fun startPendingIntent(animationAdapter: RemoteAnimationAdapter?): Int + } + + interface Callback { + /** Whether we are currently on the keyguard or not. */ + fun isOnKeyguard(): Boolean = false + + /** Hide the keyguard and animate using [runner]. */ + fun hideKeyguardWithAnimation(runner: IRemoteAnimationRunner) { + throw UnsupportedOperationException() + } + + /* Get the background color of [task]. */ + fun getBackgroundColor(task: TaskInfo): Int + } + + interface Listener { + /** Called when an activity transition animation started. */ + fun onTransitionAnimationStart() {} + + /** + * Called when an activity transition animation is finished. This will be called if and only + * if [onTransitionAnimationStart] was called earlier. + */ + fun onTransitionAnimationEnd() {} + + /** + * The animation was cancelled. Note that [onTransitionAnimationEnd] will still be called + * after this if the animation was already started, i.e. if [onTransitionAnimationStart] was + * called before the cancellation. + */ + fun onTransitionAnimationCancelled() {} + + /** Called when an activity transition animation made progress. */ + fun onTransitionAnimationProgress(linearProgress: Float) {} + } + + /** + * A factory used to create instances of [Controller] linked to a specific cookie [cookie] and + * [component]. + */ + abstract class ControllerFactory( + val cookie: TransitionCookie, + val component: ComponentName?, + val launchCujType: Int? = null, + val returnCujType: Int? = null, + ) { + /** + * Creates a [Controller] for launching or returning from the activity linked to [cookie] + * and [component]. + */ + abstract suspend fun createController(forLaunch: Boolean): Controller + } + + /** + * A controller that takes care of applying the animation to an expanding view. + * + * Note that all callbacks (onXXX methods) are all called on the main thread. + */ + interface Controller : TransitionAnimator.Controller { + companion object { + /** + * Return a [Controller] that will animate and expand [view] into the opening window. + * + * Important: The view must be attached to a [ViewGroup] when calling this function and + * during the animation. For safety, this method will return null when it is not. The + * view must also implement [LaunchableView], otherwise this method will throw. + * + * Note: The background of [view] should be a (rounded) rectangle so that it can be + * properly animated. + */ + @JvmOverloads + @JvmStatic + fun fromView( + view: View, + cujType: Int? = null, + cookie: TransitionCookie? = null, + component: ComponentName? = null, + returnCujType: Int? = null, + isEphemeral: Boolean = true, + ): Controller? { + // Make sure the View we launch from implements LaunchableView to avoid visibility + // issues. + if (view !is LaunchableView) { + throw IllegalArgumentException( + "An ActivityTransitionAnimator.Controller was created from a View that " + + "does not implement LaunchableView. This can lead to subtle bugs " + + "where the visibility of the View we are launching from is not what " + + "we expected." + ) + } + + if (view.parent !is ViewGroup) { + Log.e( + TAG, + "Skipping animation as view $view is not attached to a ViewGroup", + Exception(), + ) + return null + } + + return GhostedViewTransitionAnimatorController( + view, + cujType, + cookie, + component, + returnCujType, + isEphemeral, + ) + } + } + + /** + * Whether this controller is controlling a dialog launch. This will be used to adapt the + * timings, making sure we don't show the app until the dialog dim had the time to fade out. + */ + // TODO(b/218989950): Remove this. + val isDialogLaunch: Boolean + get() = false + + /** + * Whether the expandable controller by this [Controller] is below the window that is going + * to be animated. + * + * This should be `false` when animating an app from or to the shade or status bar, given + * that they are drawn above all apps. This is usually `true` when using this animator in a + * normal app or a launcher, that are drawn below the animating activity/window. + */ + val isBelowAnimatingWindow: Boolean + get() = false + + /** + * The cookie associated with the transition controlled by this [Controller]. + * + * This should be defined for all return [Controller] (when [isLaunching] is false) and for + * their associated launch [Controller]s. + * + * For the recommended format, see [TransitionCookie]. + */ + val transitionCookie: TransitionCookie? + get() = null + + /** + * The [ComponentName] of the activity whose window is tied to this [Controller]. + * + * This is used as a fallback when a cookie is defined but there is no match (e.g. when a + * matching activity was launched by a mean different from the launchable in this + * [Controller]), and should be defined for all long-lived registered [Controller]s. + */ + val component: ComponentName? + get() = null + + /** + * The intent was started. If [willAnimate] is false, nothing else will happen and the + * animation will not be started. + */ + fun onIntentStarted(willAnimate: Boolean) {} + + /** + * The animation was cancelled. Note that [onTransitionAnimationEnd] will still be called + * after this if the animation was already started, i.e. if [onTransitionAnimationStart] was + * called before the cancellation. + * + * If this transition animation affected the occlusion state of the keyguard, WM will + * provide us with [newKeyguardOccludedState] so that we can set the occluded state + * appropriately. + */ + fun onTransitionAnimationCancelled(newKeyguardOccludedState: Boolean? = null) {} + + /** The controller will not be used again. Clean up the relevant internal state. */ + fun onDispose() {} + } + + /** + * Registers [controllerFactory] as a long-lived transition handler for launch and return + * animations. + * + * The [Controller]s created by [controllerFactory] will only be used for transitions matching + * the [cookie], or the [ComponentName] defined within it if the cookie matching fails. These + * [Controller]s can only be created within [scope]. + */ + fun register( + cookie: TransitionCookie, + controllerFactory: ControllerFactory, + scope: CoroutineScope, + ) { + assertLongLivedReturnAnimations() + + if (transitionRegister == null) { + throw IllegalStateException( + "A RemoteTransitionRegister must be provided when creating this animator in " + + "order to use long-lived animations" + ) + } + + val component = + controllerFactory.component + ?: throw IllegalStateException( + "A component must be defined in order to use long-lived animations" + ) + + // Make sure that any previous registrations linked to the same cookie are gone. + unregister(cookie) + + val launchFilter = + TransitionFilter().apply { + mRequirements = + arrayOf( + TransitionFilter.Requirement().apply { + mActivityType = WindowConfiguration.ACTIVITY_TYPE_STANDARD + mModes = intArrayOf(TRANSIT_OPEN, TRANSIT_TO_FRONT) + mTopActivity = component + } + ) + } + val launchRemoteTransition = + RemoteTransition( + OriginTransition(createLongLivedRunner(controllerFactory, scope, forLaunch = true)), + "${cookie}_launchTransition", + ) + // TODO(b/403529740): re-enable takeovers once we solve the Compose jank issues. + transitionRegister.register(launchFilter, launchRemoteTransition, includeTakeover = false) + + // Cross-task close transitions should not use this animation, so we only register it for + // when the opening window is Launcher. + val returnFilter = + TransitionFilter().apply { + mRequirements = + arrayOf( + TransitionFilter.Requirement().apply { + mActivityType = WindowConfiguration.ACTIVITY_TYPE_STANDARD + mModes = intArrayOf(TRANSIT_CLOSE, TRANSIT_TO_BACK) + mTopActivity = component + }, + TransitionFilter.Requirement().apply { + mActivityType = WindowConfiguration.ACTIVITY_TYPE_HOME + mModes = intArrayOf(TRANSIT_CLOSE, TRANSIT_TO_BACK) + }, + ) + } + val returnRemoteTransition = + RemoteTransition( + OriginTransition( + createLongLivedRunner(controllerFactory, scope, forLaunch = false) + ), + "${cookie}_returnTransition", + ) + // TODO(b/403529740): re-enable takeovers once we solve the Compose jank issues. + transitionRegister.register(returnFilter, returnRemoteTransition, includeTakeover = false) + + longLivedTransitions[cookie] = Pair(launchRemoteTransition, returnRemoteTransition) + } + + /** Unregisters all controllers previously registered that contain [cookie]. */ + fun unregister(cookie: TransitionCookie) { + val transitions = longLivedTransitions[cookie] ?: return + transitionRegister?.unregister(transitions.first) + transitionRegister?.unregister(transitions.second) + longLivedTransitions.remove(cookie) + } + + /** + * Invokes [onAnimationComplete] when animation is either cancelled or completed. Delegates all + * events to the passed [delegate]. + */ + @VisibleForTesting + inner class DelegatingAnimationCompletionListener( + private val delegate: Listener?, + private val onAnimationComplete: () -> Unit, + ) : Listener { + var cancelled = false + + override fun onTransitionAnimationStart() { + delegate?.onTransitionAnimationStart() + } + + override fun onTransitionAnimationProgress(linearProgress: Float) { + delegate?.onTransitionAnimationProgress(linearProgress) + } + + override fun onTransitionAnimationEnd() { + delegate?.onTransitionAnimationEnd() + if (!cancelled) { + onAnimationComplete.invoke() + } + } + + override fun onTransitionAnimationCancelled() { + cancelled = true + delegate?.onTransitionAnimationCancelled() + onAnimationComplete.invoke() + } + } + + /** [Runner] wrapper that supports animation takeovers. */ + private inner class OriginTransition(private val runner: Runner) : IRemoteTransition { + private val delegate = RemoteAnimationRunnerCompat.wrap(runner) + + init { + assertLongLivedReturnAnimations() + } + + override fun startAnimation( + token: IBinder?, + info: TransitionInfo?, + t: SurfaceControl.Transaction?, + finishCallback: IRemoteTransitionFinishedCallback?, + ) { + delegate.startAnimation(token, info, t, finishCallback) + } + + override fun mergeAnimation( + transition: IBinder?, + info: TransitionInfo?, + t: SurfaceControl.Transaction?, + mergeTarget: IBinder?, + finishCallback: IRemoteTransitionFinishedCallback?, + ) { + delegate.mergeAnimation(transition, info, t, mergeTarget, finishCallback) + } + + override fun onTransitionConsumed(transition: IBinder?, aborted: Boolean) { + delegate.onTransitionConsumed(transition, aborted) + } + + override fun takeOverAnimation( + token: IBinder?, + info: TransitionInfo?, + t: SurfaceControl.Transaction?, + finishCallback: IRemoteTransitionFinishedCallback?, + states: Array<WindowAnimationState>, + ) { + if (info == null || t == null) { + Log.e( + TAG, + "Skipping the animation takeover because the required data is missing: " + + "info=$info, transaction=$t", + ) + return + } + + // The following code converts the contents of the given TransitionInfo into + // RemoteAnimationTargets. This is necessary because we must currently support both the + // new (Shell, remote transitions) and old (remote animations) framework to maintain + // functionality for all users of the library. + val apps = ArrayList<RemoteAnimationTarget>() + val filteredStates = ArrayList<WindowAnimationState>() + val leashMap = ArrayMap<SurfaceControl, SurfaceControl>() + val leafTaskFilter = TransitionUtil.LeafTaskFilter() + + // About layering: we divide up the "layer space" into 2 regions (each the size of the + // change count). This lets us categorize things into above and below while + // maintaining their relative ordering. + val belowLayers = info.changes.size + val aboveLayers = info.changes.size * 2 + for (i in info.changes.indices) { + val change = info.changes[i] + if (change == null || change.taskInfo == null) { + continue + } + + val taskInfo = change.taskInfo + + if (TransitionUtil.isWallpaper(change)) { + val target = + TransitionUtil.newTarget( + change, + belowLayers - i, // wallpapers go into the "below" layer space + info, + t, + leashMap, + ) + + // Make all the wallpapers opaque. + t.setAlpha(target.leash, 1f) + } else if (leafTaskFilter.test(change)) { + // Start by putting everything into the "below" layer space. + val target = + TransitionUtil.newTarget(change, belowLayers - i, info, t, leashMap) + apps.add(target) + filteredStates.add(states[i]) + + // Make all the apps opaque. + t.setAlpha(target.leash, 1f) + + if ( + TransitionUtil.isClosingType(change.mode) + // Lawnchair-TOOD: + // TODO: + // Disabled because of kotlin compiler dependency conflict + // In other word: + // You can't use feature from + // framework.jar and android.jar (SDK) at the same time + //&& taskInfo?.topActivityType != WindowConfiguration.ACTIVITY_TYPE_HOME + ) { + // Raise closing task to "above" layer so it isn't covered. + t.setLayer(target.leash, aboveLayers - i) + } else if (TransitionUtil.isOpeningType(change.mode)) { + // Put into the "below" layer space. + t.setLayer(target.leash, belowLayers - i) + } + } else if (TransitionInfo.isIndependent(change, info)) { + // Root tasks + if (TransitionUtil.isClosingType(change.mode)) { + // Raise closing task to "above" layer so it isn't covered. + t.setLayer(change.leash, aboveLayers - i) + } else if (TransitionUtil.isOpeningType(change.mode)) { + // Put into the "below" layer space. + t.setLayer(change.leash, belowLayers - i) + } + } else if (TransitionUtil.isDividerBar(change)) { + val target = + TransitionUtil.newTarget(change, belowLayers - i, info, t, leashMap) + apps.add(target) + filteredStates.add(states[i]) + } + } + + val wrappedCallback: IRemoteAnimationFinishedCallback = + object : IRemoteAnimationFinishedCallback.Stub() { + override fun onAnimationFinished() { + leashMap.clear() + val finishTransaction = SurfaceControl.Transaction() + finishCallback?.onTransitionFinished(null, finishTransaction) + finishTransaction.close() + } + } + + runner.takeOverAnimation( + apps.toTypedArray(), + filteredStates.toTypedArray(), + t, + wrappedCallback, + ) + } + + override fun asBinder(): IBinder { + return delegate.asBinder() + } + } + + @VisibleForTesting + inner class Runner + private constructor( + /** + * This can hold a reference to a view, so it needs to be cleaned up and can't be held on to + * forever. In case of a long-lived [Runner], this must be null and [controllerFactory] must + * be defined instead. + */ + private var controller: Controller?, + /** + * Reusable factory to generate single-use controllers. In case of an ephemeral [Runner], + * this must be null and [controller] must be defined instead. + */ + private val controllerFactory: (suspend () -> Controller)?, + /** The scope to use when this runner is based on [controllerFactory]. */ + private val scope: CoroutineScope? = null, + private val callback: Callback, + /** The animator to use to animate the window transition. */ + private val transitionAnimator: TransitionAnimator, + /** Listener for animation lifecycle events. */ + private val listener: Listener?, + ) : IRemoteAnimationRunner.Stub() { + constructor( + controller: Controller, + callback: Callback, + transitionAnimator: TransitionAnimator, + listener: Listener? = null, + ) : this( + controller = controller, + controllerFactory = null, + callback = callback, + transitionAnimator = transitionAnimator, + listener = listener, + ) + + constructor( + scope: CoroutineScope, + callback: Callback, + transitionAnimator: TransitionAnimator, + listener: Listener? = null, + controllerFactory: suspend () -> Controller, + ) : this( + controller = null, + controllerFactory = controllerFactory, + scope = scope, + callback = callback, + transitionAnimator = transitionAnimator, + listener = listener, + ) + + // This is being passed across IPC boundaries and cycles (through PendingIntentRecords, + // etc.) are possible. So we need to make sure we drop any references that might + // transitively cause leaks when we're done with animation. + @VisibleForTesting var delegate: AnimationDelegate? + + init { + assert((controller != null).xor(controllerFactory != null)) + + delegate = null + controller?.let { + // Ephemeral launches bundle the runner with the launch request (instead of being + // registered ahead of time for later use). This means that there could be a timeout + // between creation and invocation, so the delegate needs to exist from the + // beginning in order to handle such timeout. + createDelegate(it) + } + } + + @BinderThread + override fun onAnimationStart( + transit: Int, + apps: Array<out RemoteAnimationTarget>?, + wallpapers: Array<out RemoteAnimationTarget>?, + nonApps: Array<out RemoteAnimationTarget>?, + finishedCallback: IRemoteAnimationFinishedCallback?, + ) { + initAndRun(finishedCallback) { delegate -> + delegate.onAnimationStart(transit, apps, wallpapers, nonApps, finishedCallback) + } + } + + @VisibleForTesting + @BinderThread + fun takeOverAnimation( + apps: Array<RemoteAnimationTarget>?, + windowAnimationStates: Array<WindowAnimationState>, + startTransaction: SurfaceControl.Transaction, + finishedCallback: IRemoteAnimationFinishedCallback?, + ) { + assertLongLivedReturnAnimations() + initAndRun(finishedCallback) { delegate -> + delegate.takeOverAnimation( + apps, + windowAnimationStates, + startTransaction, + finishedCallback, + ) + } + } + + @BinderThread + private fun initAndRun( + finishedCallback: IRemoteAnimationFinishedCallback?, + performAnimation: (AnimationDelegate) -> Unit, + ) { + val controller = controller + val controllerFactory = controllerFactory + + if (controller != null) { + maybeSetUp(controller) + val success = startAnimation(performAnimation) + if (!success) finishedCallback?.onAnimationFinished() + } else if (controllerFactory != null) { + scope?.launch { + val success = + withTimeoutOrNull(TRANSITION_TIMEOUT) { + setUp(controllerFactory) + startAnimation(performAnimation) + } ?: false + if (!success) finishedCallback?.onAnimationFinished() + } + } else { + // This happens when onDisposed() has already been called due to the animation being + // cancelled. Only issue the callback. + finishedCallback?.onAnimationFinished() + } + } + + /** Tries to start the animation on the main thread and returns whether it succeeded. */ + @BinderThread + private fun startAnimation(performAnimation: (AnimationDelegate) -> Unit): Boolean { + val delegate = delegate + return if (delegate != null) { + mainExecutor.execute { performAnimation(delegate) } + true + } else { + // Animation started too late and timed out already. + Log.i(TAG, "startAnimation called after completion") + false + } + } + + @BinderThread + override fun onAnimationCancelled() { + val delegate = delegate + if (delegate != null) { + mainExecutor.execute { delegate.onAnimationCancelled() } + } else { + Log.wtf(TAG, "onAnimationCancelled called after completion") + } + } + + /** + * Posts the default animation timeouts. Since this only applies to ephemeral launches, this + * method is a no-op if [controller] is not defined. + */ + @VisibleForTesting + @UiThread + fun postTimeouts() { + controller?.let { maybeSetUp(it) } + delegate?.postTimeouts() + } + + @AnyThread + private fun maybeSetUp(controller: Controller) { + if (delegate != null) return + createDelegate(controller) + } + + @AnyThread + private suspend fun setUp(createController: suspend () -> Controller) { + val controller = createController() + createDelegate(controller) + } + + @AnyThread + private fun createDelegate(controller: Controller) { + delegate = + AnimationDelegate( + mainExecutor, + controller, + callback, + DelegatingAnimationCompletionListener(listener, this::dispose), + transitionAnimator, + disableWmTimeout, + skipReparentTransaction, + ) + } + + @AnyThread + fun dispose() { + // Drop references to animation controller once we're done with the animation to avoid + // leaking in case of ephemeral launches. When long-lived, [controllerFactory] will + // still be around to create new controllers. + mainExecutor.execute { + delegate = null + controller = null + } + } + } + + class AnimationDelegate + @JvmOverloads + constructor( + private val mainExecutor: Executor, + private val controller: Controller, + private val callback: Callback, + /** Listener for animation lifecycle events. */ + private val listener: Listener? = null, + /** The animator to use to animate the window transition. */ + private val transitionAnimator: TransitionAnimator = + defaultTransitionAnimator(mainExecutor), + + /** + * Whether we should disable the WindowManager timeout. This should be set to true in tests + * only. + */ + // TODO(b/301385865): Remove this flag. + disableWmTimeout: Boolean = false, + + /** + * Whether we should disable the reparent transaction that puts the opening/closing window + * above the view's window. This should be set to true in tests only, where we can't + * currently use a valid leash. + * + * TODO(b/397180418): Remove this flag when we don't have the RemoteAnimation wrapper + * anymore and we can just inject a fake transaction. + */ + private val skipReparentTransaction: Boolean = false, + ) : RemoteAnimationDelegate<IRemoteAnimationFinishedCallback> { + private val transitionContainer = controller.transitionContainer + private val context = transitionContainer.context + private val transactionApplierView = + controller.openingWindowSyncView ?: controller.transitionContainer + private val transactionApplier = SyncRtSurfaceTransactionApplier(transactionApplierView) + private val timeoutHandler = + if (!disableWmTimeout) { + Handler(Looper.getMainLooper()) + } else { + null + } + + private val matrix = Matrix() + private val invertMatrix = Matrix() + private var windowCrop = Rect() + private var windowCropF = RectF() + private var timedOut = false + private var cancelled = false + private var animation: TransitionAnimator.Animation? = null + + /** + * Whether the opening/closing window needs to reparented to the view's window at the + * beginning of the animation. Since we don't always do this, we need to keep track of it in + * order to have the rest of the animation behave correctly. + */ + var reparent = false + + /** + * A timeout to cancel the transition animation if the remote animation is not started or + * cancelled within [TRANSITION_TIMEOUT] milliseconds after the intent was started. + * + * Note that this is important to keep this a Runnable (and not a Kotlin lambda), otherwise + * it will be automatically converted when posted and we wouldn't be able to remove it after + * posting it. + */ + private var onTimeout = Runnable { onAnimationTimedOut() } + + /** + * A long timeout to Log.wtf (signaling a bug in WM) when the remote animation wasn't + * started or cancelled within [LONG_TRANSITION_TIMEOUT] milliseconds after the intent was + * started. + */ + private var onLongTimeout = Runnable { + Log.wtf( + TAG, + "The remote animation was neither cancelled or started within " + + "$LONG_TRANSITION_TIMEOUT", + ) + } + + init { + // We do this check here to cover all entry points, including Launcher which doesn't + // call startIntentWithAnimation() + if (!controller.isLaunching) assertReturnAnimations() + } + + @UiThread + internal fun postTimeouts() { + if (timeoutHandler != null) { + timeoutHandler.postDelayed(onTimeout, TRANSITION_TIMEOUT) + timeoutHandler.postDelayed(onLongTimeout, LONG_TRANSITION_TIMEOUT) + } + } + + private fun removeTimeouts() { + if (timeoutHandler != null) { + timeoutHandler.removeCallbacks(onTimeout) + timeoutHandler.removeCallbacks(onLongTimeout) + } + } + + @UiThread + override fun onAnimationStart( + @WindowManager.TransitionOldType transit: Int, + apps: Array<out RemoteAnimationTarget>?, + wallpapers: Array<out RemoteAnimationTarget>?, + nonApps: Array<out RemoteAnimationTarget>?, + callback: IRemoteAnimationFinishedCallback?, + ) { + val window = setUpAnimation(apps, callback) ?: return + + if (controller.windowAnimatorState == null || !longLivedReturnAnimationsEnabled()) { + val navigationBar = + nonApps?.firstOrNull { + it.windowType == WindowManager.LayoutParams.TYPE_NAVIGATION_BAR + } + + startAnimation(window, navigationBar, iCallback = callback) + } else { + // If a [controller.windowAnimatorState] exists, treat this like a takeover. + takeOverAnimationInternal( + window, + startWindowState = null, + startTransaction = null, + callback, + ) + } + } + + @UiThread + internal fun takeOverAnimation( + apps: Array<out RemoteAnimationTarget>?, + startWindowStates: Array<WindowAnimationState>, + startTransaction: SurfaceControl.Transaction, + callback: IRemoteAnimationFinishedCallback?, + ) { + val window = setUpAnimation(apps, callback) ?: return + val startWindowState = startWindowStates[apps!!.indexOf(window)] + takeOverAnimationInternal(window, startWindowState, startTransaction, callback) + } + + private fun takeOverAnimationInternal( + window: RemoteAnimationTarget, + startWindowState: WindowAnimationState?, + startTransaction: SurfaceControl.Transaction?, + callback: IRemoteAnimationFinishedCallback?, + ) { + val useSpring = + !controller.isLaunching && startWindowState != null && startTransaction != null + startAnimation( + window, + navigationBar = null, + useSpring, + startWindowState, + startTransaction, + callback, + ) + } + + @UiThread + private fun setUpAnimation( + apps: Array<out RemoteAnimationTarget>?, + callback: IRemoteAnimationFinishedCallback?, + ): RemoteAnimationTarget? { + removeTimeouts() + + // The animation was started too late and we already notified the controller that it + // timed out. + if (timedOut) { + callback?.invoke() + return null + } + + // This should not happen, but let's make sure we don't start the animation if it was + // cancelled before and we already notified the controller. + if (cancelled) { + return null + } + + val window = findTargetWindowIfPossible(apps) + if (window == null) { + Log.i(TAG, "Aborting the animation as no window is opening") + callback?.invoke() + + if (DEBUG_TRANSITION_ANIMATION) { + Log.d( + TAG, + "Calling controller.onTransitionAnimationCancelled() [no window opening]", + ) + } + controller.onTransitionAnimationCancelled() + listener?.onTransitionAnimationCancelled() + return null + } + + return window + } + + private fun findTargetWindowIfPossible( + apps: Array<out RemoteAnimationTarget>? + ): RemoteAnimationTarget? { + if (apps == null) { + return null + } + + val targetMode = + if (controller.isLaunching) { + RemoteAnimationTarget.MODE_OPENING + } else { + RemoteAnimationTarget.MODE_CLOSING + } + var candidate: RemoteAnimationTarget? = null + + for (it in apps) { + if (it.mode == targetMode) { + if (activityTransitionUseLargestWindow()) { + if (returnAnimationsEnabled()) { + // If the controller contains a cookie, _only_ match if either the + // candidate contains the matching cookie, or a component is also + // defined and is a match. + if ( + controller.transitionCookie != null && + it.taskInfo + ?.launchCookies + ?.contains(controller.transitionCookie) != true && + (controller.component == null || + it.taskInfo?.topActivity != controller.component) + ) { + continue + } + } + + if ( + candidate == null || + !it.hasAnimatingParent && candidate.hasAnimatingParent + ) { + candidate = it + continue + } + if ( + !it.hasAnimatingParent && + it.screenSpaceBounds.hasGreaterAreaThan(candidate.screenSpaceBounds) + ) { + candidate = it + } + } else { + if (!it.hasAnimatingParent) { + return it + } + if (candidate == null) { + candidate = it + } + } + } + } + + return candidate + } + + private fun startAnimation( + window: RemoteAnimationTarget, + navigationBar: RemoteAnimationTarget? = null, + useSpring: Boolean = false, + startingWindowState: WindowAnimationState? = null, + startTransaction: SurfaceControl.Transaction? = null, + iCallback: IRemoteAnimationFinishedCallback? = null, + ) { + if (TransitionAnimator.DEBUG) { + Log.d(TAG, "Remote animation started") + } + + val windowBounds = window.screenSpaceBounds + val endState = + if (controller.isLaunching) { + controller.windowAnimatorState?.toTransitionState() + ?: TransitionAnimator.State( + top = windowBounds.top, + bottom = windowBounds.bottom, + left = windowBounds.left, + right = windowBounds.right, + ) + .apply { + // TODO(b/184121838): We should somehow get the top and bottom + // radius of the window instead of recomputing isExpandingFullyAbove + // here. + getWindowRadius( + transitionAnimator.isExpandingFullyAbove( + controller.transitionContainer, + this, + ) + ) + .let { + topCornerRadius = it + bottomCornerRadius = it + } + } + } else { + controller.createAnimatorState() + } + val windowBackgroundColor = + if (translucentOccludingActivityFix() && window.isTranslucent) { + Color.TRANSPARENT + } else { + window.taskInfo?.let { callback.getBackgroundColor(it) } + ?: window.backgroundColor + } + + val isExpandingFullyAbove = + transitionAnimator.isExpandingFullyAbove(controller.transitionContainer, endState) + val windowState = startingWindowState ?: controller.windowAnimatorState + + // We only reparent launch animations. In current integrations, returns are + // not affected by the issue solved by reparenting, and they present + // additional problems when the view lives in the Status Bar. + // TODO(b/397646693): remove this exception. + val isEligibleForReparenting = controller.isLaunching + //val viewRoot = controller.transitionContainer.viewRootImpl + val skipReparenting = + skipReparentTransaction || !window.leash.isValid //|| viewRoot == null + if (moveTransitionAnimationLayer() && isEligibleForReparenting && !skipReparenting) { + reparent = true + } + + // We animate the opening window and delegate the view expansion to [this.controller]. + val delegate = this.controller + val controller = + object : Controller by delegate { + override fun createAnimatorState(): TransitionAnimator.State { + if (isLaunching) { + return delegate.createAnimatorState() + } else if (!longLivedReturnAnimationsEnabled()) { + return delegate.windowAnimatorState?.toTransitionState() + ?: getWindowRadius(isExpandingFullyAbove).let { + TransitionAnimator.State( + top = windowBounds.top, + bottom = windowBounds.bottom, + left = windowBounds.left, + right = windowBounds.right, + topCornerRadius = it, + bottomCornerRadius = it, + ) + } + } + + // TODO(b/323863002): use the timestamp and velocity to update the initial + // position. + val bounds = windowState?.bounds + val left: Int = bounds?.left?.toInt() ?: windowBounds.left + val top: Int = bounds?.top?.toInt() ?: windowBounds.top + val right: Int = bounds?.right?.toInt() ?: windowBounds.right + val bottom: Int = bounds?.bottom?.toInt() ?: windowBounds.bottom + + val width = windowBounds.right - windowBounds.left + val height = windowBounds.bottom - windowBounds.top + // Scale the window. We use the max of (widthRatio, heightRatio) so that + // there is no blank space on any side. + val widthRatio = (right - left).toFloat() / width + val heightRatio = (bottom - top).toFloat() / height + val startScale = maxOf(widthRatio, heightRatio) + + val maybeRadius = windowState?.topLeftRadius + val windowRadius = + if (maybeRadius != null) { + maybeRadius * startScale + } else { + getWindowRadius(isExpandingFullyAbove) + } + + return TransitionAnimator.State( + top = top, + bottom = bottom, + left = left, + right = right, + topCornerRadius = windowRadius, + bottomCornerRadius = windowRadius, + ) + } + + override fun onTransitionAnimationStart(isExpandingFullyAbove: Boolean) { + listener?.onTransitionAnimationStart() + + if (DEBUG_TRANSITION_ANIMATION) { + Log.d( + TAG, + "Calling controller.onTransitionAnimationStart(" + + "isExpandingFullyAbove=$isExpandingFullyAbove) " + + "[controller=$delegate]", + ) + } + + if (reparent) { + // Ensure that the launching window is rendered above the view's window, + // so it is not obstructed. + // TODO(b/397180418): re-use the start transaction once the + // RemoteAnimation wrapper is cleaned up. + //SurfaceControl.Transaction().use { + // it.reparent(window.leash, viewRoot.surfaceControl) + // it.apply() + //} + } + + if (startTransaction != null) { + // Calling applyStateToWindow() here avoids skipping a frame when taking + // over an animation. + applyStateToWindow( + window, + createAnimatorState(), + linearProgress = 0f, + useSpring, + startTransaction, + ) + } + + delegate.onTransitionAnimationStart(isExpandingFullyAbove) + } + + override fun onTransitionAnimationEnd(isExpandingFullyAbove: Boolean) { + listener?.onTransitionAnimationEnd() + iCallback?.invoke() + + if (DEBUG_TRANSITION_ANIMATION) { + Log.d( + TAG, + "Calling controller.onTransitionAnimationEnd(" + + "isExpandingFullyAbove=$isExpandingFullyAbove) " + + "[controller=$delegate]", + ) + } + delegate.onTransitionAnimationEnd(isExpandingFullyAbove) + } + + override fun onTransitionAnimationProgress( + state: TransitionAnimator.State, + progress: Float, + linearProgress: Float, + ) { + applyStateToWindow(window, state, linearProgress, useSpring) + navigationBar?.let { applyStateToNavigationBar(it, state, linearProgress) } + + listener?.onTransitionAnimationProgress(linearProgress) + delegate.onTransitionAnimationProgress(state, progress, linearProgress) + } + } + val velocityPxPerS = + if (longLivedReturnAnimationsEnabled() && windowState?.velocityPxPerMs != null) { + val xVelocityPxPerS = windowState.velocityPxPerMs.x * 1000 + val yVelocityPxPerS = windowState.velocityPxPerMs.y * 1000 + PointF(xVelocityPxPerS, yVelocityPxPerS) + } else if (useSpring) { + PointF(0f, 0f) + } else { + null + } + val fadeWindowBackgroundLayer = + if (reparent) { + false + } else { + !controller.isBelowAnimatingWindow + } + animation = + transitionAnimator.startAnimation( + controller, + endState, + windowBackgroundColor, + fadeWindowBackgroundLayer = fadeWindowBackgroundLayer, + drawHole = !controller.isBelowAnimatingWindow, + startVelocity = velocityPxPerS, + startFrameTime = windowState?.timestamp ?: -1, + ) + } + + private fun getWindowRadius(isExpandingFullyAbove: Boolean): Float { + return if (isExpandingFullyAbove) { + // Most of the time, expanding fully above the root view means + // expanding in full screen. + ScreenDecorationsUtils.getWindowCornerRadius(context) + } else { + // This usually means we are in split screen mode, so 2 out of 4 + // corners will have a radius of 0. + 0f + } + } + + private fun applyStateToWindow( + window: RemoteAnimationTarget, + state: TransitionAnimator.State, + linearProgress: Float, + useSpring: Boolean, + transaction: SurfaceControl.Transaction? = null, + ) { + if (transactionApplierView == null || !window.leash.isValid) { + // Don't apply any transaction if the view root we synchronize with was detached or + // if the SurfaceControl associated with [window] is not valid, as + // [SyncRtSurfaceTransactionApplier.scheduleApply] would otherwise throw. + return + } + + val screenBounds = window.screenSpaceBounds + val centerX = (screenBounds.left + screenBounds.right) / 2f + val centerY = (screenBounds.top + screenBounds.bottom) / 2f + val width = screenBounds.right - screenBounds.left + val height = screenBounds.bottom - screenBounds.top + + // Scale the window. We use the max of (widthRatio, heightRatio) so that there is no + // blank space on any side. + val widthRatio = state.width.toFloat() / width + val heightRatio = state.height.toFloat() / height + val scale = maxOf(widthRatio, heightRatio) + matrix.reset() + matrix.setScale(scale, scale, centerX, centerY) + + // Align it to the top and center it in the x-axis. + val heightChange = height * scale - height + val translationX = state.centerX - centerX + val translationY = state.top - screenBounds.top + heightChange / 2f + matrix.postTranslate(translationX, translationY) + + // Crop it. The matrix will also be applied to the crop, so we apply the inverse + // operation. Given that we only scale (by factor > 0) then translate, we can assume + // that the matrix is invertible. + val cropX = state.left.toFloat() - screenBounds.left + val cropY = state.top.toFloat() - screenBounds.top + windowCropF.set(cropX, cropY, cropX + state.width, cropY + state.height) + matrix.invert(invertMatrix) + invertMatrix.mapRect(windowCropF) + windowCrop.set( + windowCropF.left.roundToInt(), + windowCropF.top.roundToInt(), + windowCropF.right.roundToInt(), + windowCropF.bottom.roundToInt(), + ) + + val interpolators: TransitionAnimator.Interpolators + val windowProgress: Float + + if (useSpring) { + val windowAnimationDelay: Float + val windowAnimationDuration: Float + if (controller.isLaunching) { + windowAnimationDelay = SPRING_TIMINGS.contentAfterFadeInDelay + windowAnimationDuration = SPRING_TIMINGS.contentAfterFadeInDuration + } else { + windowAnimationDelay = SPRING_TIMINGS.contentBeforeFadeOutDelay + windowAnimationDuration = SPRING_TIMINGS.contentBeforeFadeOutDuration + } + + interpolators = SPRING_INTERPOLATORS + windowProgress = + TransitionAnimator.getProgress( + linearProgress, + windowAnimationDelay, + windowAnimationDuration, + ) + } else { + val windowAnimationDelay: Long + val windowAnimationDuration: Long + if (controller.isLaunching) { + windowAnimationDelay = TIMINGS.contentAfterFadeInDelay + windowAnimationDuration = TIMINGS.contentAfterFadeInDuration + } else { + windowAnimationDelay = TIMINGS.contentBeforeFadeOutDelay + windowAnimationDuration = TIMINGS.contentBeforeFadeOutDuration + } + + interpolators = INTERPOLATORS + windowProgress = + TransitionAnimator.getProgress( + TIMINGS, + linearProgress, + windowAnimationDelay, + windowAnimationDuration, + ) + } + + // The alpha of the opening window. If it opens above the expandable, then it should + // fade in progressively. Otherwise, it should be fully opaque and will be progressively + // revealed as the window background color layer above the window fades out. + val alpha = + if (reparent || controller.isBelowAnimatingWindow) { + if (controller.isLaunching) { + interpolators.contentAfterFadeInInterpolator.getInterpolation( + windowProgress + ) + } else { + 1 - + interpolators.contentBeforeFadeOutInterpolator.getInterpolation( + windowProgress + ) + } + } else { + 1f + } + + // The scale will also be applied to the corner radius, so we divide by the scale to + // keep the original radius. We use the max of (topCornerRadius, bottomCornerRadius) to + // make sure that the window does not draw itself behind the expanding view. This is + // especially important for lock screen animations, where the window is not clipped by + // the shade. + val cornerRadius = maxOf(state.topCornerRadius, state.bottomCornerRadius) / scale + + val params = + SyncRtSurfaceTransactionApplier.SurfaceParams.Builder(window.leash) + .withAlpha(alpha) + .withMatrix(matrix) + .withWindowCrop(windowCrop) + .withCornerRadius(cornerRadius) + .withVisibility(true) + if (transaction != null) params.withMergeTransaction(transaction) + + transactionApplier.scheduleApply(params.build()) + } + + // TODO(b/377643129): remote transitions have no way of identifying the navbar when + // converting to RemoteAnimationTargets (and in my testing it was never included in the + // transition at all). So this method is not used anymore. Remove or adapt once we fully + // convert to remote transitions. + private fun applyStateToNavigationBar( + navigationBar: RemoteAnimationTarget, + state: TransitionAnimator.State, + linearProgress: Float, + ) { + if (transactionApplierView == null || !navigationBar.leash.isValid) { + // Don't apply any transaction if the view root we synchronize with was detached or + // if the SurfaceControl associated with [navigationBar] is not valid, as + // [SyncRtSurfaceTransactionApplier.scheduleApply] would otherwise throw. + return + } + + val fadeInProgress = + TransitionAnimator.getProgress( + TIMINGS, + linearProgress, + ANIMATION_DELAY_NAV_FADE_IN, + ANIMATION_DURATION_NAV_FADE_OUT, + ) + + val params = SyncRtSurfaceTransactionApplier.SurfaceParams.Builder(navigationBar.leash) + if (fadeInProgress > 0) { + matrix.reset() + matrix.setTranslate( + 0f, + (state.top - navigationBar.sourceContainerBounds.top).toFloat(), + ) + windowCrop.set(state.left, 0, state.right, state.height) + params + .withAlpha(NAV_FADE_IN_INTERPOLATOR.getInterpolation(fadeInProgress)) + .withMatrix(matrix) + .withWindowCrop(windowCrop) + .withVisibility(true) + } else { + val fadeOutProgress = + TransitionAnimator.getProgress( + TIMINGS, + linearProgress, + 0, + ANIMATION_DURATION_NAV_FADE_OUT, + ) + params.withAlpha(1f - NAV_FADE_OUT_INTERPOLATOR.getInterpolation(fadeOutProgress)) + } + + transactionApplier.scheduleApply(params.build()) + } + + private fun onAnimationTimedOut() { + // The remote animation was cancelled by WM, so we already cancelled the transition + // animation. + if (cancelled) { + return + } + + Log.w(TAG, "Remote animation timed out") + timedOut = true + + if (DEBUG_TRANSITION_ANIMATION) { + Log.d( + TAG, + "Calling controller.onTransitionAnimationCancelled() [animation timed out]", + ) + } + controller.onTransitionAnimationCancelled() + listener?.onTransitionAnimationCancelled() + } + + @UiThread + override fun onAnimationCancelled() { + removeTimeouts() + + // The short timeout happened, so we already cancelled the transition animation. + if (timedOut) { + return + } + + Log.i(TAG, "Remote animation was cancelled") + cancelled = true + + animation?.cancel() + + if (DEBUG_TRANSITION_ANIMATION) { + Log.d( + TAG, + "Calling controller.onTransitionAnimationCancelled() [remote animation " + + "cancelled]", + ) + } + controller.onTransitionAnimationCancelled() + listener?.onTransitionAnimationCancelled() + } + + private fun IRemoteAnimationFinishedCallback.invoke() { + try { + onAnimationFinished() + } catch (e: RemoteException) { + e.printStackTrace() + } + } + + private fun Rect.hasGreaterAreaThan(other: Rect): Boolean { + return (this.width() * this.height()) > (other.width() * other.height()) + } + } + + /** + * Wraps one of the two methods we have to register remote transitions with WM Shell: + * - for in-process registrations (e.g. System UI) we use [ShellTransitions] + * - for cross-process registrations (e.g. Launcher) we use [IShellTransitions] + * + * Important: each instance of this class must wrap exactly one of the two. + */ + class TransitionRegister + private constructor( + private val shellTransitions: ShellTransitions? = null, + private val iShellTransitions: IShellTransitions? = null, + ) { + init { + assert((shellTransitions != null).xor(iShellTransitions != null)) + } + + companion object { + /** Provides a [TransitionRegister] instance wrapping [ShellTransitions]. */ + fun fromShellTransitions(shellTransitions: ShellTransitions): TransitionRegister { + return TransitionRegister(shellTransitions = shellTransitions) + } + + /** Provides a [TransitionRegister] instance wrapping [IShellTransitions]. */ + fun fromIShellTransitions(iShellTransitions: IShellTransitions): TransitionRegister { + return TransitionRegister(iShellTransitions = iShellTransitions) + } + } + + /** Register [remoteTransition] with WM Shell using the given [filter]. */ + internal fun register( + filter: TransitionFilter, + remoteTransition: RemoteTransition, + includeTakeover: Boolean, + ) { + shellTransitions?.registerRemote(filter, remoteTransition) + iShellTransitions?.registerRemote(filter, remoteTransition) + if (includeTakeover) { + shellTransitions?.registerRemoteForTakeover(filter, remoteTransition) + iShellTransitions?.registerRemoteForTakeover(filter, remoteTransition) + } + } + + /** Unregister [remoteTransition] from WM Shell. */ + internal fun unregister(remoteTransition: RemoteTransition) { + shellTransitions?.unregisterRemote(remoteTransition) + iShellTransitions?.unregisterRemote(remoteTransition) + } + } + + /** + * A cookie used to uniquely identify a task launched using an + * [ActivityTransitionAnimator.Controller]. + * + * The [String] encapsulated by this class should be formatted in such a way to be unique across + * the system, but reliably constant for the same associated launchable. + * + * Recommended naming scheme: + * - DO use the fully qualified name of the class that owns the instance of the launchable, + * along with a concise and precise description of the purpose of the launchable in question. + * - DO NOT introduce uniqueness through the use of timestamps or other runtime variables that + * will change if the instance is destroyed and re-created. + * + * Example: "com.not.the.real.class.name.ShadeController_openSettingsButton" + * + * Note that sometimes (e.g. in recycler views) there could be multiple instances of the same + * launchable, and no static knowledge to adequately differentiate between them using a single + * description. In this case, the recommendation is to append a unique identifier related to the + * contents of the launchable. + * + * Example: “com.not.the.real.class.name.ToastWebResult_launchAga_id143256” + */ + data class TransitionCookie(private val cookie: String) : Binder() +} diff --git a/systemUI/anim/src/com/android/systemui/animation/AnimationFeatureFlags.kt b/systemUI/anim/src/com/android/systemui/animation/AnimationFeatureFlags.kt new file mode 100644 index 0000000000..1c9dabbb0e --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/AnimationFeatureFlags.kt @@ -0,0 +1,6 @@ +package com.android.systemui.animation + +interface AnimationFeatureFlags { + val isPredictiveBackQsDialogAnim: Boolean + get() = false +} diff --git a/systemUI/anim/src/com/android/systemui/animation/ComposableControllerFactory.kt b/systemUI/anim/src/com/android/systemui/animation/ComposableControllerFactory.kt new file mode 100644 index 0000000000..c842159af8 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/ComposableControllerFactory.kt @@ -0,0 +1,60 @@ +/* + * Copyright (C) 2025 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.content.ComponentName +import android.util.Log +import com.android.systemui.animation.ActivityTransitionAnimator.Controller +import com.android.systemui.animation.ActivityTransitionAnimator.ControllerFactory +import kotlinx.coroutines.flow.MutableStateFlow + +private const val TAG = "ComposableControllerFactory" + +/** + * [ControllerFactory] extension for Compose. Since composables are not guaranteed to be part of the + * composition when [ControllerFactory.createController] is called, this class provides a way for + * the composable to register itself at the time of composition, and deregister itself when + * disposed. + */ +abstract class ComposableControllerFactory( + cookie: ActivityTransitionAnimator.TransitionCookie, + component: ComponentName?, + launchCujType: Int? = null, + returnCujType: Int? = null, +) : ControllerFactory(cookie, component, launchCujType, returnCujType) { + /** + * The object to be used to create [Controller]s, when its associate composable is in the + * composition. + */ + protected val expandable = MutableStateFlow<Expandable?>(null) + + /** To be called when the composable to be animated enters composition. */ + fun onCompose(expandable: Expandable) { + if (TransitionAnimator.DEBUG) { + Log.d(TAG, "Composable entered composition (expandable=$expandable") + } + this.expandable.value = expandable + } + + /** To be called when the composable to be animated exits composition. */ + fun onDispose() { + if (TransitionAnimator.DEBUG) { + Log.d(TAG, "Composable left composition (expandable=${this.expandable.value}") + } + this.expandable.value = null + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/DelegateTransitionAnimatorController.kt b/systemUI/anim/src/com/android/systemui/animation/DelegateTransitionAnimatorController.kt new file mode 100644 index 0000000000..e246562761 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/DelegateTransitionAnimatorController.kt @@ -0,0 +1,26 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +/** + * A base class to easily create an implementation of [ActivityTransitionAnimator.Controller] which + * delegates most of its call to [delegate]. This is mostly useful for Java code which can't easily + * create such a delegated class. + */ +open class DelegateTransitionAnimatorController( + protected val delegate: ActivityTransitionAnimator.Controller +) : ActivityTransitionAnimator.Controller by delegate diff --git a/systemUI/anim/src/com/android/systemui/animation/DialogTransitionAnimator.kt b/systemUI/anim/src/com/android/systemui/animation/DialogTransitionAnimator.kt new file mode 100644 index 0000000000..6a620b3b9c --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/DialogTransitionAnimator.kt @@ -0,0 +1,1092 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.ValueAnimator +import android.app.Dialog +import android.graphics.Color +import android.graphics.Rect +import android.os.Looper +import android.util.Log +import android.util.MathUtils +import android.view.View +import android.view.ViewGroup +import android.view.ViewGroup.LayoutParams.MATCH_PARENT +import android.view.ViewRootImpl +import android.view.WindowInsets +import android.view.WindowManager +import android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS +import com.android.app.animation.Interpolators +import com.android.internal.jank.Cuj.CujType +import com.android.internal.jank.InteractionJankMonitor +import com.android.systemui.Flags +import com.android.systemui.util.maybeForceFullscreen +import com.android.systemui.util.registerAnimationOnBackInvoked +import java.util.concurrent.Executor +import kotlin.math.roundToInt + +private const val TAG = "DialogTransitionAnimator" + +/** + * A class that allows dialogs to be started in a seamless way from a view that is transforming + * nicely into the starting dialog. + * + * This animator also allows to easily animate a dialog into an activity. + * + * @see show + * @see showFromView + * @see showFromDialog + * @see createActivityTransitionController + */ +class DialogTransitionAnimator +@JvmOverloads +constructor( + private val mainExecutor: Executor, + private val callback: Callback, + private val interactionJankMonitor: InteractionJankMonitor, + private val transitionAnimator: TransitionAnimator = + TransitionAnimator(mainExecutor, TIMINGS, INTERPOLATORS), + private val isForTesting: Boolean = false, +) { + private companion object { + private val TIMINGS = ActivityTransitionAnimator.TIMINGS + + // We use the same interpolator for X and Y axis to make sure the dialog does not move out + // of the screen bounds during the animation. + private val INTERPOLATORS = + ActivityTransitionAnimator.INTERPOLATORS.copy( + positionXInterpolator = + ActivityTransitionAnimator.INTERPOLATORS.positionInterpolator + ) + } + + /** + * A controller that takes care of applying the dialog launch and exit animations to the source + * that triggered the animation. + */ + interface Controller { + /** The [ViewRootImpl] of this controller. */ + val viewRoot: ViewRootImpl? + + /** + * The identity object of the source animated by this controller. This animator will ensure + * that 2 animations with the same source identity are not going to run at the same time, to + * avoid flickers when a dialog is shown from the same source more or less at the same time + * (for instance if the user clicks an expandable button twice). + */ + val sourceIdentity: Any + + /** The CUJ associated to this controller. */ + val cuj: DialogCuj? + + /** + * Move the drawing of the source in the overlay of [viewGroup]. + * + * Once this method is called, and until [stopDrawingInOverlay] is called, the source + * controlled by this Controller should be drawn in the overlay of [viewGroup] so that it is + * drawn above all other elements in the same [viewRoot]. + */ + fun startDrawingInOverlayOf(viewGroup: ViewGroup) + + /** + * Move the drawing of the source back in its original location. + * + * @see startDrawingInOverlayOf + */ + fun stopDrawingInOverlay() + + /** + * Create the [TransitionAnimator.Controller] that will be called to animate the source + * controlled by this [Controller] during the dialog launch animation. + * + * At the end of this animation, the source should *not* be visible anymore (until the + * dialog is closed and is animated back into the source). + */ + fun createTransitionController(): TransitionAnimator.Controller + + /** + * Create the [TransitionAnimator.Controller] that will be called to animate the source + * controlled by this [Controller] during the dialog exit animation. + * + * At the end of this animation, the source should be visible again. + */ + fun createExitController(): TransitionAnimator.Controller + + /** + * Whether we should animate the dialog back into the source when it is dismissed. If this + * methods returns `false`, then the dialog will simply fade out and + * [onExitAnimationCancelled] will be called. + * + * Note that even when this returns `true`, the exit animation might still be cancelled (in + * which case [onExitAnimationCancelled] will also be called). + */ + fun shouldAnimateExit(): Boolean + + /** + * Called if we decided to *not* animate the dialog into the source for some reason. This + * means that [createExitController] will *not* be called and this implementation should + * make sure that the source is back in its original state, before it was animated into the + * dialog. In particular, the source should be visible again. + */ + fun onExitAnimationCancelled() + + /** + * Return the [InteractionJankMonitor.Configuration.Builder] to be used for animations + * controlled by this controller. + */ + // TODO(b/252723237): Make this non-nullable + fun jankConfigurationBuilder(): InteractionJankMonitor.Configuration.Builder? + + companion object { + /** + * Create a [Controller] that can animate [source] to and from a dialog. + * + * Important: The view must be attached to a [ViewGroup] when calling this function and + * during the animation. For safety, this method will return null when it is not. The + * view must also implement [LaunchableView], otherwise this method will throw. + * + * Note: The background of [view] should be a (rounded) rectangle so that it can be + * properly animated. + */ + fun fromView(source: View, cuj: DialogCuj? = null): Controller? { + // Make sure the View we launch from implements LaunchableView to avoid visibility + // issues. + if (source !is LaunchableView) { + throw IllegalArgumentException( + "A DialogTransitionAnimator.Controller was created from a View that does " + + "not implement LaunchableView. This can lead to subtle bugs where " + + "the visibility of the View we are launching from is not what we " + + "expected." + ) + } + + if (source.parent !is ViewGroup) { + Log.e( + TAG, + "Skipping animation as view $source is not attached to a ViewGroup", + Exception(), + ) + return null + } + + return ViewDialogTransitionAnimatorController(source, cuj) + } + } + } + + /** + * The set of dialogs that were animated using this animator and that are still opened (not + * dismissed, but can be hidden). + */ + // TODO(b/201264644): Remove this set. + private val openedDialogs = hashSetOf<AnimatedDialog>() + + /** + * Show [dialog] by expanding it from [view]. If [view] is a view inside another dialog that was + * shown using this method, then we will animate from that dialog instead. + * + * If [animateBackgroundBoundsChange] is true, then the background of the dialog will be + * animated when the dialog bounds change. + * + * Note: The background of [view] should be a (rounded) rectangle so that it can be properly + * animated. + * + * Caveats: When calling this function and [dialog] is not a fullscreen dialog, then it will be + * made fullscreen and 2 views will be inserted between the dialog DecorView and its children. + */ + @JvmOverloads + fun showFromView( + dialog: Dialog, + view: View, + cuj: DialogCuj? = null, + animateBackgroundBoundsChange: Boolean = false, + ) { + val controller = Controller.fromView(view, cuj) + if (controller == null) { + dialog.show() + } else { + show(dialog, controller, animateBackgroundBoundsChange) + } + } + + /** + * Show [dialog] by expanding it from a source controlled by [controller]. + * + * If [animateBackgroundBoundsChange] is true, then the background of the dialog will be + * animated when the dialog bounds change. + * + * Note: The background of [view] should be a (rounded) rectangle so that it can be properly + * animated. + * + * Caveats: When calling this function and [dialog] is not a fullscreen dialog, then it will be + * made fullscreen and 2 views will be inserted between the dialog DecorView and its children. + */ + @JvmOverloads + fun show( + dialog: Dialog, + controller: Controller, + animateBackgroundBoundsChange: Boolean = false, + ) { + if (Looper.myLooper() != Looper.getMainLooper()) { + throw IllegalStateException( + "showFromView must be called from the main thread and dialog must be created in " + + "the main thread" + ) + } + + // If the view we are launching from belongs to another dialog, then this means the caller + // intent is to launch a dialog from another dialog. + val animatedParent = + openedDialogs.firstOrNull { + it.dialog.window?.decorView?.viewRootImpl == controller.viewRoot + } + val controller = + animatedParent?.dialogContentWithBackground?.let { + Controller.fromView(it, controller.cuj) + } ?: controller + + // Make sure we don't run the launch animation from the same source twice at the same time. + if (openedDialogs.any { it.controller.sourceIdentity == controller.sourceIdentity }) { + Log.e( + TAG, + "Not running dialog launch animation from source as it is already expanded into a" + + " dialog", + ) + dialog.show() + return + } + + val animatedDialog = + AnimatedDialog( + transitionAnimator = transitionAnimator, + callback = callback, + interactionJankMonitor = interactionJankMonitor, + controller = controller, + onDialogDismissed = { openedDialogs.remove(it) }, + dialog = dialog, + animateBackgroundBoundsChange = animateBackgroundBoundsChange, + parentAnimatedDialog = animatedParent, + forceDisableSynchronization = isForTesting, + ) + + openedDialogs.add(animatedDialog) + animatedDialog.start() + } + + /** + * Launch [dialog] from [another dialog][animateFrom] that was shown using [show]. This will + * allow for dismissing the whole stack. + * + * @see dismissStack + */ + fun showFromDialog( + dialog: Dialog, + animateFrom: Dialog, + cuj: DialogCuj? = null, + animateBackgroundBoundsChange: Boolean = false, + ) { + val view = + openedDialogs.firstOrNull { it.dialog == animateFrom }?.dialogContentWithBackground + if (view == null) { + Log.w( + TAG, + "Showing dialog $dialog normally as the dialog it is shown from was not shown " + + "using DialogTransitionAnimator", + ) + dialog.show() + return + } + + showFromView( + dialog, + view, + animateBackgroundBoundsChange = animateBackgroundBoundsChange, + cuj = cuj, + ) + } + + /** + * Create an [ActivityTransitionAnimator.Controller] that can be used to launch an activity from + * the dialog that contains [View]. Note that the dialog must have been shown using this + * animator, otherwise this method will return null. + * + * The returned controller will take care of dismissing the dialog at the right time after the + * activity started, when the dialog to app animation is done (or when it is cancelled). If this + * method returns null, then the dialog won't be dismissed. + * + * @param view any view inside the dialog to animate. + */ + @JvmOverloads + fun createActivityTransitionController( + view: View, + cujType: Int? = null, + ): ActivityTransitionAnimator.Controller? { + val animatedDialog = + openedDialogs.firstOrNull { + it.dialog.window?.decorView?.viewRootImpl == view.viewRootImpl + } ?: return null + return createActivityTransitionController(animatedDialog, cujType) + } + + /** + * Create an [ActivityTransitionAnimator.Controller] that can be used to launch an activity from + * [dialog]. Note that the dialog must have been shown using this animator, otherwise this + * method will return null. + * + * The returned controller will take care of dismissing the dialog at the right time after the + * activity started, when the dialog to app animation is done (or when it is cancelled). If this + * method returns null, then the dialog won't be dismissed. + * + * @param dialog the dialog to animate. + */ + @JvmOverloads + fun createActivityTransitionController( + dialog: Dialog, + cujType: Int? = null, + ): ActivityTransitionAnimator.Controller? { + val animatedDialog = openedDialogs.firstOrNull { it.dialog == dialog } ?: return null + return createActivityTransitionController(animatedDialog, cujType) + } + + private fun createActivityTransitionController( + animatedDialog: AnimatedDialog, + cujType: Int? = null, + ): ActivityTransitionAnimator.Controller? { + // At this point, we know that the intent of the caller is to dismiss the dialog to show + // an app, so we disable the exit animation into the source because we will never want to + // run it anyways. + animatedDialog.exitAnimationDisabled = true + + val dialog = animatedDialog.dialog + + // Don't animate if the dialog is not showing or if we are locked and going to show the + // primary bouncer. + if ( + !dialog.isShowing || + (!callback.isUnlocked() && !callback.isShowingAlternateAuthOnUnlock()) + ) { + return null + } + + val dialogContentWithBackground = animatedDialog.dialogContentWithBackground ?: return null + val controller = + ActivityTransitionAnimator.Controller.fromView(dialogContentWithBackground, cujType) + ?: return null + + // Wrap the controller into one that will instantly dismiss the dialog when the animation is + // done or dismiss it normally (fading it out) if the animation is cancelled. + return object : ActivityTransitionAnimator.Controller by controller { + override val isDialogLaunch = true + + override fun onIntentStarted(willAnimate: Boolean) { + controller.onIntentStarted(willAnimate) + + if (!willAnimate) { + dialog.dismiss() + } + } + + override fun onTransitionAnimationCancelled(newKeyguardOccludedState: Boolean?) { + controller.onTransitionAnimationCancelled() + enableDialogDismiss() + dialog.dismiss() + } + + override fun onTransitionAnimationStart(isExpandingFullyAbove: Boolean) { + controller.onTransitionAnimationStart(isExpandingFullyAbove) + + // Make sure the dialog is not dismissed during the animation. + disableDialogDismiss() + + // If this dialog was shown from a cascade of other dialogs, make sure those ones + // are dismissed too. + animatedDialog.prepareForStackDismiss() + + // Remove the dim. + dialog.window?.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND) + } + + override fun onTransitionAnimationEnd(isExpandingFullyAbove: Boolean) { + controller.onTransitionAnimationEnd(isExpandingFullyAbove) + + // Hide the dialog then dismiss it to instantly dismiss it without playing the + // animation. + dialog.hide() + enableDialogDismiss() + dialog.dismiss() + } + + private fun disableDialogDismiss() { + dialog.setDismissOverride { /* Do nothing */ } + } + + private fun enableDialogDismiss() { + // We don't set the override to null given that [AnimatedDialog.OnDialogDismissed] + // will still properly dismiss the dialog but will also make sure to clean up + // everything (like making sure that the touched view that triggered the dialog is + // made VISIBLE again). + dialog.setDismissOverride(animatedDialog::onDialogDismissed) + } + } + } + + /** + * Ensure that all dialogs currently shown won't animate into their source when dismissed. + * + * This is a temporary API meant to be called right before we both dismiss a dialog and start an + * activity, which currently does not look good if we animate the dialog into their source at + * the same time as the activity starts. + * + * TODO(b/193634619): Remove this function and animate dialog into opening activity instead. + */ + fun disableAllCurrentDialogsExitAnimations() { + openedDialogs.forEach { it.exitAnimationDisabled = true } + } + + /** + * Dismiss [dialog]. If it was launched from another dialog using this animator, also dismiss + * the stack of dialogs and simply fade out [dialog]. + */ + fun dismissStack(dialog: Dialog) { + openedDialogs.firstOrNull { it.dialog == dialog }?.prepareForStackDismiss() + dialog.dismiss() + } + + interface Callback { + /** Whether the device is currently in dreaming (screensaver) mode. */ + fun isDreaming(): Boolean + + /** + * Whether the device is currently unlocked, i.e. if it is *not* on the keyguard or if the + * keyguard can be dismissed. + */ + fun isUnlocked(): Boolean + + /** + * Whether we are going to show alternate authentication (like UDFPS) instead of the + * traditional bouncer when unlocking the device. + */ + fun isShowingAlternateAuthOnUnlock(): Boolean + } +} + +/** + * The CUJ interaction associated with opening the dialog. + * + * The optional tag indicates the specific dialog being opened. + */ +data class DialogCuj(@CujType val cujType: Int, val tag: String? = null) + +private class AnimatedDialog( + private val transitionAnimator: TransitionAnimator, + private val callback: DialogTransitionAnimator.Callback, + private val interactionJankMonitor: InteractionJankMonitor, + + /** + * The controller of the source that triggered the dialog and that will animate into/from the + * dialog. + */ + val controller: DialogTransitionAnimator.Controller, + + /** + * A callback that will be called with this [AnimatedDialog] after the dialog was dismissed and + * the exit animation is done. + */ + private val onDialogDismissed: (AnimatedDialog) -> Unit, + + /** The dialog to show and animate. */ + val dialog: Dialog, + + /** Whether we should animate the dialog background when its bounds change. */ + animateBackgroundBoundsChange: Boolean, + + /** Launch animation corresponding to the parent [AnimatedDialog]. */ + private val parentAnimatedDialog: AnimatedDialog? = null, + + /** + * Whether synchronization should be disabled, which can be useful if we are running in a test. + */ + private val forceDisableSynchronization: Boolean, +) { + /** + * The DecorView of this dialog window. + * + * Note that we access this DecorView lazily to avoid accessing it before the dialog is created, + * which can sometimes cause crashes (e.g. with the Cast dialog). + */ + private val decorView by lazy { dialog.window!!.decorView as ViewGroup } + + /** + * The dialog content with its background. When animating a fullscreen dialog, this is just the + * first ViewGroup of the dialog that has a background. When animating a normal (not fullscreen) + * dialog, this is an additional view that serves as a fake window that will have the same size + * as the dialog window initially had and to which we will set the dialog window background. + */ + var dialogContentWithBackground: ViewGroup? = null + + /** The background color of [dialog], taking into consideration its window background color. */ + private var originalDialogBackgroundColor = Color.BLACK + + /** + * Whether we are currently launching/showing the dialog by animating it from its source + * controlled by [controller]. + */ + private var isLaunching = true + + /** Whether we are currently dismissing/hiding the dialog by animating into its source. */ + private var isDismissing = false + + private var dismissRequested = false + var exitAnimationDisabled = false + + private var isSourceDrawnInDialog = false + private var isOriginalDialogViewLaidOut = false + + /** A layout listener to animate the dialog height change. */ + private val backgroundLayoutListener = + if (animateBackgroundBoundsChange) { + AnimatedBoundsLayoutListener() + } else { + null + } + + /* + * A layout listener in case the dialog (window) size changes (for instance because of a + * configuration change) to ensure that the dialog stays full width. + */ + private var decorViewLayoutListener: View.OnLayoutChangeListener? = null + + private var hasInstrumentedJank = false + + fun start() { + val cuj = controller.cuj + if (cuj != null) { + val config = controller.jankConfigurationBuilder() + if (config != null) { + if (cuj.tag != null) { + config.setTag(cuj.tag) + } + + interactionJankMonitor.begin(config) + hasInstrumentedJank = true + } + } + + // Create the dialog so that its onCreate() method is called, which usually sets the dialog + // content. + dialog.create() + + val window = dialog.window!! + val isWindowFullScreen = + window.attributes.width == MATCH_PARENT && window.attributes.height == MATCH_PARENT + val dialogContentWithBackground = + if (isWindowFullScreen) { + // If the dialog window is already fullscreen, then we look for the first ViewGroup + // that has a background (and is not the DecorView, which always has a background) + // and animate towards that ViewGroup given that this is probably what represents + // the actual dialog view. + var viewGroupWithBackground: ViewGroup? = null + for (i in 0 until decorView.childCount) { + viewGroupWithBackground = + findFirstViewGroupWithBackground(decorView.getChildAt(i)) + if (viewGroupWithBackground != null) { + break + } + } + + // Animate that view with the background. Throw if we didn't find one, because + // otherwise it's not clear what we should animate. + if (viewGroupWithBackground == null) { + error("Unable to find ViewGroup with background") + } + + if (viewGroupWithBackground !is LaunchableView) { + error("The animated ViewGroup with background must implement LaunchableView") + } + + viewGroupWithBackground + } else { + val (dialogContentWithBackground, decorViewLayoutListener) = + dialog.maybeForceFullscreen()!! + this.decorViewLayoutListener = decorViewLayoutListener + dialogContentWithBackground + } + + this.dialogContentWithBackground = dialogContentWithBackground + dialogContentWithBackground.setTag(R.id.tag_dialog_background, true) + + val background = dialogContentWithBackground.background + originalDialogBackgroundColor = + GhostedViewTransitionAnimatorController.findGradientDrawable(background) + ?.color + ?.defaultColor ?: Color.BLACK + + // Make the background view invisible until we start the animation. We use the transition + // visibility like GhostView does so that we don't mess up with the accessibility tree (see + // b/204944038#comment17). Given that this background implements LaunchableView, we call + // setShouldBlockVisibilityChanges() early so that the current visibility (VISIBLE) is + // restored at the end of the animation. + dialogContentWithBackground.setShouldBlockVisibilityChanges(true) + dialogContentWithBackground.setTransitionVisibility(View.INVISIBLE) + + // Make sure the dialog is visible instantly and does not do any window animation. + val attributes = window.attributes + attributes.windowAnimations = R.style.Animation_LaunchAnimation + + // Ensure that the animation is not clipped by the display cut-out when animating this + // dialog into an app. + attributes.layoutInDisplayCutoutMode = LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS + + // Ensure that the animation is not clipped by the navigation/task bars when animating this + // dialog into an app. + val wasFittingNavigationBars = + attributes.fitInsetsTypes and WindowInsets.Type.navigationBars() != 0 + attributes.fitInsetsTypes = + attributes.fitInsetsTypes and WindowInsets.Type.navigationBars().inv() + + window.attributes = window.attributes + + // We apply the insets ourselves to make sure that the paddings are set on the correct + // View. + window.setDecorFitsSystemWindows(false) + val viewWithInsets = (dialogContentWithBackground.parent as ViewGroup) + viewWithInsets.setOnApplyWindowInsetsListener { view, windowInsets -> + val type = + if (wasFittingNavigationBars) { + WindowInsets.Type.displayCutout() or WindowInsets.Type.navigationBars() + } else { + WindowInsets.Type.displayCutout() + } + + val insets = windowInsets.getInsets(type) + view.setPadding(insets.left, insets.top, insets.right, insets.bottom) + WindowInsets.CONSUMED + } + + // Start the animation once the background view is properly laid out. + dialogContentWithBackground.addOnLayoutChangeListener( + object : View.OnLayoutChangeListener { + override fun onLayoutChange( + v: View, + left: Int, + top: Int, + right: Int, + bottom: Int, + oldLeft: Int, + oldTop: Int, + oldRight: Int, + oldBottom: Int, + ) { + dialogContentWithBackground.removeOnLayoutChangeListener(this) + + isOriginalDialogViewLaidOut = true + maybeStartLaunchAnimation() + } + } + ) + + // Disable the dim. We will enable it once we start the animation. + window.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND) + + // Override the dialog dismiss() so that we can animate the exit before actually dismissing + // the dialog. + dialog.setDismissOverride(this::onDialogDismissed) + + dialog.registerAnimationOnBackInvoked(targetView = dialogContentWithBackground) + + // Show the dialog. + dialog.show() + moveSourceDrawingToDialog() + } + + private fun moveSourceDrawingToDialog() { + if (decorView.viewRootImpl == null) { + // Make sure that we have access to the dialog view root to move the drawing to the + // dialog overlay. + decorView.post(::moveSourceDrawingToDialog) + return + } + + // Move the drawing of the source in the overlay of this dialog, then animate. We trigger a + // one-off synchronization to make sure that this is done in sync between the two different + // windows. + controller.startDrawingInOverlayOf(decorView) + synchronizeNextDraw( + then = { + isSourceDrawnInDialog = true + maybeStartLaunchAnimation() + } + ) + } + + /** + * Synchronize the next draw of the source and dialog view roots so that they are performed at + * the same time, in the same transaction. This is necessary to make sure that the source is + * drawn in the overlay at the same time as it is removed from its original position (or + * inversely, removed from the overlay when the source is moved back to its original position). + */ + private fun synchronizeNextDraw(then: () -> Unit) { + val controllerRootView = controller.viewRoot?.view + if (forceDisableSynchronization || controllerRootView == null) { + // Don't synchronize when inside an automated test or if the controller root view is + // detached. + then() + return + } + + ViewRootSync.synchronizeNextDraw(controllerRootView, decorView, then) + decorView.invalidate() + controllerRootView.invalidate() + } + + private fun findFirstViewGroupWithBackground(view: View): ViewGroup? { + if (view !is ViewGroup) { + return null + } + + if (view.background != null) { + return view + } + + for (i in 0 until view.childCount) { + val match = findFirstViewGroupWithBackground(view.getChildAt(i)) + if (match != null) { + return match + } + } + + return null + } + + private fun maybeStartLaunchAnimation() { + if (!isSourceDrawnInDialog || !isOriginalDialogViewLaidOut) { + return + } + + // Show the background dim. + dialog.window?.addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND) + + startAnimation( + isLaunching = true, + onLaunchAnimationEnd = { + isLaunching = false + + // dismiss was called during the animation, dismiss again now to actually dismiss. + if (dismissRequested) { + dialog.dismiss() + } + + // If necessary, we animate the dialog background when its bounds change. We do it + // at the end of the launch animation, because the lauch animation already correctly + // handles bounds changes. + if (backgroundLayoutListener != null) { + dialogContentWithBackground!!.addOnLayoutChangeListener( + backgroundLayoutListener + ) + } + + if (hasInstrumentedJank) { + interactionJankMonitor.end(controller.cuj!!.cujType) + } + }, + ) + } + + fun onDialogDismissed() { + if (Looper.myLooper() != Looper.getMainLooper()) { + dialog.context.mainExecutor.execute { onDialogDismissed() } + return + } + + // TODO(b/193634619): Support interrupting the launch animation in the middle. + if (isLaunching) { + dismissRequested = true + return + } + + if (isDismissing) { + return + } + + isDismissing = true + hideDialogIntoView { animationRan: Boolean -> + if (animationRan) { + // Instantly dismiss the dialog if we ran the animation into view. If it was + // skipped, dismiss() will run the window animation (which fades out the dialog). + dialog.hide() + } + + dialog.setDismissOverride(null) + dialog.dismiss() + } + } + + /** + * Hide the dialog into the source and call [onAnimationFinished] when the animation is done + * (passing animationRan=true) or if it's skipped (passing animationRan=false) to actually + * dismiss the dialog. + */ + private fun hideDialogIntoView(onAnimationFinished: (Boolean) -> Unit) { + // Remove the layout change listener we have added to the DecorView earlier. + if (decorViewLayoutListener != null) { + decorView.removeOnLayoutChangeListener(decorViewLayoutListener) + } + + if (!shouldAnimateDialogIntoSource()) { + Log.i(TAG, "Skipping animation of dialog into the source") + controller.onExitAnimationCancelled() + onAnimationFinished(false /* instantDismiss */) + onDialogDismissed(this@AnimatedDialog) + return + } + + startAnimation( + isLaunching = false, + onLaunchAnimationStart = { + // Remove the dim background as soon as we start the animation. + dialog.window?.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND) + }, + onLaunchAnimationEnd = { + val dialogContentWithBackground = this.dialogContentWithBackground!! + dialogContentWithBackground.visibility = View.INVISIBLE + + if (backgroundLayoutListener != null) { + dialogContentWithBackground.removeOnLayoutChangeListener( + backgroundLayoutListener + ) + } + + controller.stopDrawingInOverlay() + synchronizeNextDraw { + onAnimationFinished(true /* instantDismiss */) + onDialogDismissed(this@AnimatedDialog) + } + }, + ) + } + + private fun startAnimation( + isLaunching: Boolean, + onLaunchAnimationStart: () -> Unit = {}, + onLaunchAnimationEnd: () -> Unit = {}, + ) { + // Create 2 controllers to animate both the dialog and the source. + val startController = + if (isLaunching) { + controller.createTransitionController() + } else { + GhostedViewTransitionAnimatorController(dialogContentWithBackground!!) + } + val endController = + if (isLaunching) { + GhostedViewTransitionAnimatorController(dialogContentWithBackground!!) + } else { + controller.createExitController() + } + startController.transitionContainer = decorView + endController.transitionContainer = decorView + + val endState = endController.createAnimatorState() + val controller = + object : TransitionAnimator.Controller { + override var transitionContainer: ViewGroup + get() = startController.transitionContainer + set(value) { + startController.transitionContainer = value + endController.transitionContainer = value + } + + // We tell TransitionController that this is always a launch, and handle the launch + // vs return logic internally. + // TODO(b/323863002): maybe move the launch vs return logic out of this class and + // delegate it to TransitionController? + override val isLaunching: Boolean = true + + override fun createAnimatorState(): TransitionAnimator.State { + return startController.createAnimatorState() + } + + override fun onTransitionAnimationStart(isExpandingFullyAbove: Boolean) { + // During launch, onLaunchAnimationStart will be used to remove the temporary + // touch surface ghost so it is important to call this before calling + // onLaunchAnimationStart on the controller (which will create its own ghost). + onLaunchAnimationStart() + + startController.onTransitionAnimationStart(isExpandingFullyAbove) + endController.onTransitionAnimationStart(isExpandingFullyAbove) + } + + override fun onTransitionAnimationEnd(isExpandingFullyAbove: Boolean) { + val onEnd = { + startController.onTransitionAnimationEnd(isExpandingFullyAbove) + endController.onTransitionAnimationEnd(isExpandingFullyAbove) + onLaunchAnimationEnd() + } + if (Flags.sceneContainer()) { + onEnd() + } else { + // onLaunchAnimationEnd is called by an Animator at the end of the + // animation, on a Choreographer animation tick. The following calls will + // move the animated content from the dialog overlay back to its original + // position, and this change must be reflected in the next frame given that + // we then sync the next frame of both the content and dialog ViewRoots. + // However, in case that content is rendered by Compose, whose compositions + // are also scheduled on a Choreographer frame, any state change made *right + // now* won't be reflected in the next frame given that a Choreographer + // frame can't schedule another and have it happen in the same frame. So we + // post the forwarded calls to [Controller.onLaunchAnimationEnd], leaving + // this Choreographer frame, ensuring that the move of the content back to + // its original window will be reflected in the next frame right after + // [onLaunchAnimationEnd] is called. + dialog.context.mainExecutor.execute { onEnd() } + } + } + + override fun onTransitionAnimationProgress( + state: TransitionAnimator.State, + progress: Float, + linearProgress: Float, + ) { + startController.onTransitionAnimationProgress(state, progress, linearProgress) + + // The end view is visible only iff the starting view is not visible. + state.visible = !state.visible + endController.onTransitionAnimationProgress(state, progress, linearProgress) + + // If the dialog content is complex, its dimension might change during the + // launch animation. The animation end position might also change during the + // exit animation, for instance when locking the phone when the dialog is open. + // Therefore we update the end state to the new position/size. Usually the + // dialog dimension or position will change in the early frames, so changing the + // end state shouldn't really be noticeable. + if (endController is GhostedViewTransitionAnimatorController) { + endController.fillGhostedViewState(endState) + } + } + } + + transitionAnimator.startAnimation(controller, endState, originalDialogBackgroundColor) + } + + private fun shouldAnimateDialogIntoSource(): Boolean { + // Don't animate if the dialog was previously hidden using hide() or if we disabled the exit + // animation. + if (exitAnimationDisabled || !dialog.isShowing) { + return false + } + + // If we are dreaming, the dialog was probably closed because of that so we don't animate + // into the source. + if (callback.isDreaming()) { + return false + } + + return controller.shouldAnimateExit() + } + + /** A layout listener to animate the change of bounds of the dialog background. */ + class AnimatedBoundsLayoutListener : View.OnLayoutChangeListener { + companion object { + private const val ANIMATION_DURATION = 500L + } + + private var lastBounds: Rect? = null + private var currentAnimator: ValueAnimator? = null + + override fun onLayoutChange( + view: View, + left: Int, + top: Int, + right: Int, + bottom: Int, + oldLeft: Int, + oldTop: Int, + oldRight: Int, + oldBottom: Int, + ) { + // Don't animate if bounds didn't actually change. + if (left == oldLeft && top == oldTop && right == oldRight && bottom == oldBottom) { + // Make sure that we that the last bounds set by the animator were not overridden. + lastBounds?.let { bounds -> + view.left = bounds.left + view.top = bounds.top + view.right = bounds.right + view.bottom = bounds.bottom + } + return + } + + if (lastBounds == null) { + lastBounds = Rect(oldLeft, oldTop, oldRight, oldBottom) + } + + val bounds = lastBounds!! + val startLeft = bounds.left + val startTop = bounds.top + val startRight = bounds.right + val startBottom = bounds.bottom + + currentAnimator?.cancel() + currentAnimator = null + + val animator = + ValueAnimator.ofFloat(0f, 1f).apply { + duration = ANIMATION_DURATION + interpolator = Interpolators.STANDARD + + addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + currentAnimator = null + } + } + ) + + addUpdateListener { animatedValue -> + val progress = animatedValue.animatedFraction + + // Compute new bounds. + bounds.left = MathUtils.lerp(startLeft, left, progress).roundToInt() + bounds.top = MathUtils.lerp(startTop, top, progress).roundToInt() + bounds.right = MathUtils.lerp(startRight, right, progress).roundToInt() + bounds.bottom = MathUtils.lerp(startBottom, bottom, progress).roundToInt() + + // Set the new bounds. + view.left = bounds.left + view.top = bounds.top + view.right = bounds.right + view.bottom = bounds.bottom + } + } + + currentAnimator = animator + animator.start() + } + } + + fun prepareForStackDismiss() { + if (parentAnimatedDialog == null) { + return + } + parentAnimatedDialog.exitAnimationDisabled = true + parentAnimatedDialog.dialog.hide() + parentAnimatedDialog.prepareForStackDismiss() + parentAnimatedDialog.dialog.dismiss() + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/Expandable.kt b/systemUI/anim/src/com/android/systemui/animation/Expandable.kt new file mode 100644 index 0000000000..b56a68cb2d --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/Expandable.kt @@ -0,0 +1,106 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.content.ComponentName +import android.view.View + +/** A piece of UI that can be expanded into a Dialog or an Activity. */ +interface Expandable { + /** + * Create an [ActivityTransitionAnimator.Controller] that can be used to expand this + * [Expandable] into an Activity, or return `null` if this [Expandable] should not be animated + * (e.g. if it is currently not attached or visible). + * + * @param launchCujType The CUJ type from the [com.android.internal.jank.InteractionJankMonitor] + * associated to the launch that will use this controller. + * @param cookie The unique cookie associated with the launch that will use this controller. + * This is required iff a return animation should be included. + * @param component The name of the activity that will be launched by this controller. This is + * required for long-lived registrations only. + * @param returnCujType The CUJ type from the [com.android.internal.jank.InteractionJankMonitor] + * associated to the return animation that will use this controller. + */ + fun activityTransitionController( + launchCujType: Int? = null, + cookie: ActivityTransitionAnimator.TransitionCookie? = null, + component: ComponentName? = null, + returnCujType: Int? = null, + isEphemeral: Boolean = true, + ): ActivityTransitionAnimator.Controller? + + /** + * See [activityTransitionController] above. + * + * Interfaces don't support [JvmOverloads], so this is a useful overload for Java usages that + * don't use the return-related parameters. + */ + fun activityTransitionController( + launchCujType: Int? = null + ): ActivityTransitionAnimator.Controller? { + return activityTransitionController( + launchCujType, + cookie = null, + component = null, + returnCujType = null, + isEphemeral = true, + ) + } + + /** + * Create a [DialogTransitionAnimator.Controller] that can be used to expand this [Expandable] + * into a Dialog, or return `null` if this [Expandable] should not be animated (e.g. if it is + * currently not attached or visible). + */ + fun dialogTransitionController(cuj: DialogCuj? = null): DialogTransitionAnimator.Controller? + + companion object { + /** + * Create an [Expandable] that will animate [view] when expanded. + * + * Note: The background of [view] should be a (rounded) rectangle so that it can be properly + * animated. + */ + @JvmStatic + fun fromView(view: View): Expandable { + return object : Expandable { + override fun activityTransitionController( + launchCujType: Int?, + cookie: ActivityTransitionAnimator.TransitionCookie?, + component: ComponentName?, + returnCujType: Int?, + isEphemeral: Boolean, + ): ActivityTransitionAnimator.Controller? { + return ActivityTransitionAnimator.Controller.fromView( + view, + launchCujType, + cookie, + component, + returnCujType, + isEphemeral, + ) + } + + override fun dialogTransitionController( + cuj: DialogCuj? + ): DialogTransitionAnimator.Controller? { + return DialogTransitionAnimator.Controller.fromView(view, cuj) + } + } + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/FontInterpolator.kt b/systemUI/anim/src/com/android/systemui/animation/FontInterpolator.kt new file mode 100644 index 0000000000..bc75b1dad4 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/FontInterpolator.kt @@ -0,0 +1,195 @@ +/* + * Copyright (C) 2020 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.graphics.fonts.Font +import android.graphics.fonts.FontVariationAxis +import android.util.Log +import android.util.LruCache +import android.util.MathUtils +import androidx.annotation.VisibleForTesting +import kotlin.math.roundToInt + +/** Caches for font interpolation */ +interface FontCache { + val animationFrameCount: Int + + fun get(key: InterpKey): Font? + + fun get(key: VarFontKey): Font? + + fun put(key: InterpKey, font: Font) + + fun put(key: VarFontKey, font: Font) +} + +/** Cache key for the interpolated font. */ +data class InterpKey(val start: Font?, val end: Font?, val frame: Int) + +/** Cache key for the font that has variable font. */ +data class VarFontKey(val sourceId: Int, val index: Int, val sortedAxes: List<FontVariationAxis>) { + constructor( + font: Font, + axes: List<FontVariationAxis>, + ) : this(font.sourceIdentifier, font.ttcIndex, axes.sortedBy { it.tag }) +} + +class FontCacheImpl(override val animationFrameCount: Int = DEFAULT_FONT_CACHE_MAX_ENTRIES / 2) : + FontCache { + // Font interpolator has two level caches: one for input and one for font with different + // variation settings. No synchronization is needed since FontInterpolator is not designed to be + // thread-safe and can be used only on UI thread. + val cacheMaxEntries = animationFrameCount * 2 + private val interpCache = LruCache<InterpKey, Font>(cacheMaxEntries) + private val verFontCache = LruCache<VarFontKey, Font>(cacheMaxEntries) + + override fun get(key: InterpKey): Font? = interpCache[key] + + override fun get(key: VarFontKey): Font? = verFontCache[key] + + override fun put(key: InterpKey, font: Font) { + interpCache.put(key, font) + } + + override fun put(key: VarFontKey, font: Font) { + verFontCache.put(key, font) + } + + companion object { + // Benchmarked via Perfetto, difference between 10 and 50 entries is about 0.3ms in frame + // draw time on a Pixel 6. + @VisibleForTesting const val DEFAULT_FONT_CACHE_MAX_ENTRIES = 10 + } +} + +/** Provide interpolation of two fonts by adjusting font variation settings. */ +class FontInterpolator(val fontCache: FontCache = FontCacheImpl()) { + /** Linear interpolate the font variation settings. */ + fun lerp(start: Font, end: Font, progress: Float, linearProgress: Float): Font { + if (progress <= 0f) return start + if (progress >= 1f) return end + + val startAxes = start.axes ?: EMPTY_AXES + val endAxes = end.axes ?: EMPTY_AXES + + if (startAxes.isEmpty() && endAxes.isEmpty()) { + return start + } + + // Check we already know the result. This is commonly happens since we draws the different + // text chunks with the same font. + val iKey = + InterpKey(start, end, (linearProgress * fontCache.animationFrameCount).roundToInt()) + fontCache.get(iKey)?.let { + if (DEBUG) { + Log.d(LOG_TAG, "[$progress, $linearProgress] Interp. cache hit for $iKey") + } + return it + } + + // General axes interpolation takes O(N log N), this is came from sorting the axes. Usually + // this doesn't take much time since the variation axes is usually up to 5. If we need to + // support more number of axes, we may want to preprocess the font and store the sorted axes + // and also pre-fill the missing axes value with default value from 'fvar' table. + val newAxes = + lerp(startAxes, endAxes) { tag, startValue, endValue -> + MathUtils.lerp(startValue, endValue, progress) + } + + // Check if we already make font for this axes. This is typically happens if the animation + // happens backward and is being linearly interpolated. + val vKey = VarFontKey(start, newAxes) + fontCache.get(vKey)?.let { + fontCache.put(iKey, it) + if (DEBUG) { + Log.d(LOG_TAG, "[$progress, $linearProgress] Axis cache hit for $vKey") + } + return it + } + + // This is the first time to make the font for the axes. Build and store it to the cache. + // Font.Builder#build won't throw IOException since creating fonts from existing fonts will + // not do any IO work. + val newFont = Font.Builder(start).setFontVariationSettings(newAxes.toTypedArray()).build() + fontCache.put(iKey, newFont) + fontCache.put(vKey, newFont) + + // Cache misses are likely to create memory leaks, so this is logged at error level. + Log.e(LOG_TAG, "[$progress, $linearProgress] Cache MISS for $iKey / $vKey") + return newFont + } + + private fun lerp( + start: Array<FontVariationAxis>, + end: Array<FontVariationAxis>, + filter: (tag: String, left: Float, right: Float) -> Float, + ): List<FontVariationAxis> { + // Safe to modify result of Font#getAxes since it returns cloned object. + start.sortBy { axis -> axis.tag } + end.sortBy { axis -> axis.tag } + + val result = mutableListOf<FontVariationAxis>() + var i = 0 + var j = 0 + while (i < start.size || j < end.size) { + val tagA = if (i < start.size) start[i].tag else null + val tagB = if (j < end.size) end[j].tag else null + + val comp = + when { + tagA == null -> 1 + tagB == null -> -1 + else -> tagA.compareTo(tagB) + } + + val tag = + when { + comp == 0 -> tagA!! + comp < 0 -> tagA!! + else -> tagB!! + } + + val axisDefinition = GSFAxes.getAxis(tag) + require(comp == 0 || axisDefinition != null) { + "Unable to interpolate due to unknown default axes value: $tag" + } + + val axisValue = + when { + comp == 0 -> filter(tag, start[i++].styleValue, end[j++].styleValue) + comp < 0 -> filter(tag, start[i++].styleValue, axisDefinition!!.defaultValue) + else -> filter(tag, axisDefinition!!.defaultValue, end[j++].styleValue) + } + + // Round axis value to valid intermediate steps. This improves the cache hit rate. + val step = axisDefinition?.animationStep ?: DEFAULT_ANIMATION_STEP + result.add(FontVariationAxis(tag, (axisValue / step).roundToInt() * step)) + } + return result + } + + companion object { + private const val LOG_TAG = "FontInterpolator" + private val DEBUG = Log.isLoggable(LOG_TAG, Log.DEBUG) + private val EMPTY_AXES = arrayOf<FontVariationAxis>() + private const val DEFAULT_ANIMATION_STEP = 1f + + // Returns true if given two font instance can be interpolated. + fun canInterpolate(start: Font, end: Font) = + start.ttcIndex == end.ttcIndex && start.sourceIdentifier == end.sourceIdentifier + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/FontVariationUtils.kt b/systemUI/anim/src/com/android/systemui/animation/FontVariationUtils.kt new file mode 100644 index 0000000000..e07d7b337b --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/FontVariationUtils.kt @@ -0,0 +1,86 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import kotlin.text.buildString + +class FontVariationUtils { + private var mWeight = -1 + private var mWidth = -1 + private var mOpticalSize = -1 + private var mRoundness = -1 + private var mCurrentFVar = "" + + /* + * generate fontVariationSettings string, used for key in typefaceCache in TextAnimator + * the order of axes should align to the order of parameters + */ + fun updateFontVariation( + weight: Int = -1, + width: Int = -1, + opticalSize: Int = -1, + roundness: Int = -1, + ): String { + var isUpdated = false + if (weight >= 0 && mWeight != weight) { + isUpdated = true + mWeight = weight + } + + if (width >= 0 && mWidth != width) { + isUpdated = true + mWidth = width + } + + if (opticalSize >= 0 && mOpticalSize != opticalSize) { + isUpdated = true + mOpticalSize = opticalSize + } + + if (roundness >= 0 && mRoundness != roundness) { + isUpdated = true + mRoundness = roundness + } + + if (!isUpdated) { + return mCurrentFVar + } + + return buildString { + if (mWeight >= 0) { + if (!isBlank()) append(", ") + append("'${GSFAxes.WEIGHT.tag}' $mWeight") + } + + if (mWidth >= 0) { + if (!isBlank()) append(", ") + append("'${GSFAxes.WIDTH.tag}' $mWidth") + } + + if (mOpticalSize >= 0) { + if (!isBlank()) append(", ") + append("'${GSFAxes.OPTICAL_SIZE.tag}' $mOpticalSize") + } + + if (mRoundness >= 0) { + if (!isBlank()) append(", ") + append("'${GSFAxes.ROUND.tag}' $mRoundness") + } + } + .also { mCurrentFVar = it } + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/GSFAxes.kt b/systemUI/anim/src/com/android/systemui/animation/GSFAxes.kt new file mode 100644 index 0000000000..e734dd26eb --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/GSFAxes.kt @@ -0,0 +1,99 @@ +/* + * Copyright (C) 2025 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +data class AxisDefinition( + val tag: String, + val minValue: Float, + val defaultValue: Float, + val maxValue: Float, + val animationStep: Float, +) + +object GSFAxes { + @JvmStatic + val WEIGHT = + AxisDefinition( + tag = "wght", + minValue = 1f, + defaultValue = 400f, + maxValue = 1000f, + animationStep = 10f, + ) + + val WIDTH = + AxisDefinition( + tag = "wdth", + minValue = 25f, + defaultValue = 100f, + maxValue = 151f, + animationStep = 1f, + ) + + val SLANT = + AxisDefinition( + tag = "slnt", + minValue = 0f, + defaultValue = 0f, + maxValue = -10f, + animationStep = 0.1f, + ) + + val ROUND = + AxisDefinition( + tag = "ROND", + minValue = 0f, + defaultValue = 0f, + maxValue = 100f, + animationStep = 1f, + ) + + val GRADE = + AxisDefinition( + tag = "GRAD", + minValue = 0f, + defaultValue = 0f, + maxValue = 100f, + animationStep = 1f, + ) + + val OPTICAL_SIZE = + AxisDefinition( + tag = "opsz", + minValue = 6f, + defaultValue = 18f, + maxValue = 144f, + animationStep = 1f, + ) + + // Not a GSF Axis, but present for FontInterpolator compatibility + val ITALIC = + AxisDefinition( + tag = "ITAL", + minValue = 0f, + defaultValue = 0f, + maxValue = 1f, + animationStep = 0.1f, + ) + + private val AXIS_MAP = + listOf(WEIGHT, WIDTH, SLANT, ROUND, GRADE, OPTICAL_SIZE, ITALIC) + .map { def -> def.tag.lowercase() to def } + .toMap() + + fun getAxis(axis: String): AxisDefinition? = AXIS_MAP[axis.lowercase()] +} diff --git a/systemUI/anim/src/com/android/systemui/animation/GhostedViewTransitionAnimatorController.kt b/systemUI/anim/src/com/android/systemui/animation/GhostedViewTransitionAnimatorController.kt new file mode 100644 index 0000000000..576ff61c4f --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/GhostedViewTransitionAnimatorController.kt @@ -0,0 +1,612 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.content.ComponentName +import android.graphics.Canvas +import android.graphics.ColorFilter +import android.graphics.Insets +import android.graphics.Matrix +import android.graphics.PixelFormat +import android.graphics.Rect +import android.graphics.drawable.Drawable +import android.graphics.drawable.GradientDrawable +import android.graphics.drawable.InsetDrawable +import android.graphics.drawable.LayerDrawable +import android.graphics.drawable.StateListDrawable +import android.util.Log +import android.view.GhostView +import android.view.View +import android.view.ViewGroup +import android.view.ViewGroupOverlay +import android.widget.FrameLayout +import com.android.internal.jank.Cuj.CujType +import com.android.internal.jank.InteractionJankMonitor +import com.android.systemui.Flags +import java.util.LinkedList +import kotlin.math.min +import kotlin.math.roundToInt + +private const val TAG = "GhostedViewTransitionAnimatorController" + +/** + * A base implementation of [ActivityTransitionAnimator.Controller] which creates a + * [ghost][GhostView] of [ghostedView] as well as an expandable background view, which are drawn and + * animated instead of the ghosted view. + * + * Important: [ghostedView] must be attached to a [ViewGroup] when calling this function and during + * the animation. It must also implement [LaunchableView], otherwise an exception will be thrown + * during this controller instantiation. + * + * Note: Avoid instantiating this directly and call [ActivityTransitionAnimator.Controller.fromView] + * whenever possible instead. + */ +open class GhostedViewTransitionAnimatorController +@JvmOverloads +constructor( + /** The view that will be ghosted and from which the background will be extracted. */ + transitioningView: View, + + /** The [CujType] associated to this launch animation. */ + private val launchCujType: Int? = null, + override val transitionCookie: ActivityTransitionAnimator.TransitionCookie? = null, + override val component: ComponentName? = null, + + /** The [CujType] associated to this return animation. */ + private val returnCujType: Int? = null, + + /** + * Whether this controller should be invalidated after its first use, and whenever [ghostedView] + * is detached. + */ + private val isEphemeral: Boolean = false, + private var interactionJankMonitor: InteractionJankMonitor = + InteractionJankMonitor.getInstance(), + + /** [ViewTransitionRegistry] to store the mapping of transitioning view and its token */ + private val transitionRegistry: IViewTransitionRegistry? = + if (Flags.decoupleViewControllerInAnimlib()) { + ViewTransitionRegistry.instance + } else { + null + }, +) : ActivityTransitionAnimator.Controller { + override val isLaunching: Boolean = true + + /** The container to which we will add the ghost view and expanding background. */ + override var transitionContainer: ViewGroup + get() = ghostedView.rootView as ViewGroup + set(_) { + // empty, should never be set to avoid memory leak + } + + private val transitionContainerOverlay: ViewGroupOverlay + get() = transitionContainer.overlay + + private val transitionContainerLocation = IntArray(2) + + /** The ghost view that is drawn and animated instead of the ghosted view. */ + private var ghostView: GhostView? = null + private val initialGhostViewMatrixValues = FloatArray(9) { 0f } + private val ghostViewMatrix = Matrix() + + /** + * The expanding background view that will be added to [transitionContainer] (below [ghostView]) + * and animate. + */ + private var backgroundView: FrameLayout? = null + + /** + * The drawable wrapping the [ghostedView] background and used as background for + * [backgroundView]. + */ + private var backgroundDrawable: WrappedDrawable? = null + private val backgroundInsets by lazy { background?.opticalInsets ?: Insets.NONE } + private var startBackgroundAlpha: Int = 0xFF + + private val ghostedViewLocation = IntArray(2) + private val ghostedViewState = TransitionAnimator.State() + + /** + * The background of the [ghostedView]. This background will be used to draw the background of + * the background view that is expanding up to the final animation position. + * + * Note that during the animation, the alpha value value of this background will be set to 0, + * then set back to its initial value at the end of the animation. + */ + private val background: Drawable? + + /** CUJ identifier accounting for whether this controller is for a launch or a return. */ + private val cujType: Int? + get() = + if (isLaunching) { + launchCujType + } else { + returnCujType + } + + /** + * Used to automatically clean up the internal state once [ghostedView] is detached from the + * hierarchy. + */ + private val detachListener = + object : View.OnAttachStateChangeListener { + override fun onViewAttachedToWindow(v: View) {} + + override fun onViewDetachedFromWindow(v: View) { + onDispose() + } + } + + /** [ViewTransitionToken] to be used for storing transitioning view in [transitionRegistry] */ + private val transitionToken = + if (Flags.decoupleViewControllerInAnimlib()) { + transitionRegistry?.register(transitioningView) + } else { + null + } + + /** The view that will be ghosted and from which the background will be extracted */ + private val ghostedView: View + get() = + if (Flags.decoupleViewControllerInAnimlib()) { + transitionToken?.let { token -> transitionRegistry?.getView(token) } + } else { + _ghostedView + }!! + + private val _ghostedView = + if (Flags.decoupleViewControllerInAnimlib()) { + null + } else { + transitioningView + } + + init { + // Make sure the View we launch from implements LaunchableView to avoid visibility issues. + if (transitioningView !is LaunchableView) { + throw IllegalArgumentException( + "A GhostedViewLaunchAnimatorController was created from a View that does not " + + "implement LaunchableView. This can lead to subtle bugs where the visibility " + + "of the View we are launching from is not what we expected." + ) + } + + /** Find the first view with a background in [view] and its children. */ + fun findBackground(view: View): Drawable? { + if (view.background != null) { + return view.background + } + + // Perform a BFS to find the largest View with background. + val views = LinkedList<View>().apply { add(view) } + + while (views.isNotEmpty()) { + val v = views.removeAt(0) + if (v.background != null) { + return v.background + } + + if (v is ViewGroup) { + for (i in 0 until v.childCount) { + views.add(v.getChildAt(i)) + } + } + } + + return null + } + + background = findBackground(ghostedView) + + if (TransitionAnimator.returnAnimationsEnabled() && isEphemeral) { + ghostedView.addOnAttachStateChangeListener(detachListener) + } + } + + override fun onDispose() { + if (TransitionAnimator.returnAnimationsEnabled()) { + ghostedView.removeOnAttachStateChangeListener(detachListener) + } + transitionToken?.let { token -> transitionRegistry?.unregister(token) } + } + + /** + * Set the corner radius of [background]. The background is the one that was returned by + * [getBackground]. + */ + protected open fun setBackgroundCornerRadius( + background: Drawable, + topCornerRadius: Float, + bottomCornerRadius: Float, + ) { + // By default, we rely on WrappedDrawable to set/restore the background radii before/after + // each draw. + backgroundDrawable?.setBackgroundRadius(topCornerRadius, bottomCornerRadius) + } + + /** Return the current top corner radius of the background. */ + protected open fun getCurrentTopCornerRadius(): Float { + val drawable = background ?: return 0f + val gradient = findGradientDrawable(drawable) ?: return 0f + + // TODO(b/184121838): Support more than symmetric top & bottom radius. + val radius = gradient.cornerRadii?.get(CORNER_RADIUS_TOP_INDEX) ?: gradient.cornerRadius + return radius * ghostedView.scaleX + } + + /** Return the current bottom corner radius of the background. */ + protected open fun getCurrentBottomCornerRadius(): Float { + val drawable = background ?: return 0f + val gradient = findGradientDrawable(drawable) ?: return 0f + + // TODO(b/184121838): Support more than symmetric top & bottom radius. + val radius = gradient.cornerRadii?.get(CORNER_RADIUS_BOTTOM_INDEX) ?: gradient.cornerRadius + return radius * ghostedView.scaleX + } + + override fun createAnimatorState(): TransitionAnimator.State { + val state = + TransitionAnimator.State( + topCornerRadius = getCurrentTopCornerRadius(), + bottomCornerRadius = getCurrentBottomCornerRadius(), + ) + fillGhostedViewState(state) + return state + } + + fun fillGhostedViewState(state: TransitionAnimator.State) { + // For the animation we are interested in the area that has a non transparent background, + // so we have to take the optical insets into account. + ghostedView.getLocationOnScreen(ghostedViewLocation) + val insets = backgroundInsets + val boundCorrections: Rect = + if (ghostedView is LaunchableView) { + (ghostedView as LaunchableView).getPaddingForLaunchAnimation() + } else { + Rect() + } + state.top = ghostedViewLocation[1] + insets.top + boundCorrections.top + state.bottom = + ghostedViewLocation[1] + (ghostedView.height * ghostedView.scaleY).roundToInt() - + insets.bottom + boundCorrections.bottom + state.left = ghostedViewLocation[0] + insets.left + boundCorrections.left + state.right = + ghostedViewLocation[0] + (ghostedView.width * ghostedView.scaleX).roundToInt() - + insets.right + boundCorrections.right + } + + override fun onTransitionAnimationStart(isExpandingFullyAbove: Boolean) { + if (ghostedView.parent !is ViewGroup) { + // This should usually not happen, but let's make sure we don't crash if the view was + // detached right before we started the animation. + Log.w(TAG, "Skipping animation as ghostedView is not attached to a ViewGroup") + return + } + + backgroundView = + FrameLayout(transitionContainer.context).also { transitionContainerOverlay.add(it) } + + // We wrap the ghosted view background and use it to draw the expandable background. Its + // alpha will be set to 0 as soon as we start drawing the expanding background. + startBackgroundAlpha = background?.alpha ?: 0xFF + backgroundDrawable = WrappedDrawable(background) + backgroundView?.background = backgroundDrawable + + // Delay the calls to `ghostedView.setVisibility()` during the animation. This must be + // called before `GhostView.addGhost()` is called because the latter will change the + // *transition* visibility, which won't be blocked and will affect the normal View + // visibility that is saved by `setShouldBlockVisibilityChanges()` for a later restoration. + (ghostedView as? LaunchableView)?.setShouldBlockVisibilityChanges(true) + + try { + // Create a ghost of the view that will be moving and fading out. This allows to fade + // out the content before fading out the background. + ghostView = GhostView.addGhost(ghostedView, transitionContainer) + } catch (e: Exception) { + // It is not 100% clear what conditions cause this exception to happen in practice, and + // we could never reproduce it, but it does show up extremely rarely. We already handle + // the scenario where ghostView is null, so we just avoid crashing and log the error. + // See b/315858472 for an investigation of the issue. + Log.e(TAG, "Failed to create ghostView", e) + } + + // [GhostView.addGhost], the result of which is our [ghostView], creates a [GhostView], and + // adds it first to a [FrameLayout] container. It then adds _that_ container to an + // [OverlayViewGroup]. We need to turn off clipping for that container view. Currently, + // however, the only way to get a reference to that overlay is by going through our + // [ghostView]. The [OverlayViewGroup] will always be its grandparent view. + // TODO(b/306652954) reference the overlay view group directly if we can + (ghostView?.parent?.parent as? ViewGroup)?.let { + it.clipChildren = false + it.clipToPadding = false + } + + val matrix = ghostView?.animationMatrix ?: Matrix.IDENTITY_MATRIX + matrix.getValues(initialGhostViewMatrixValues) + + cujType?.let { interactionJankMonitor.begin(ghostedView, it) } + } + + override fun onTransitionAnimationProgress( + state: TransitionAnimator.State, + progress: Float, + linearProgress: Float, + ) { + val ghostView = this.ghostView ?: return + val backgroundView = this.backgroundView!! + + if (!state.visible || !ghostedView.isAttachedToWindow) { + if (ghostView.visibility == View.VISIBLE) { + // Making the ghost view invisible will make the ghosted view visible, so order is + // important here. + ghostView.visibility = View.INVISIBLE + + // Make the ghosted view invisible again. We use the transition visibility like + // GhostView does so that we don't mess up with the accessibility tree (see + // b/204944038#comment17). + ghostedView.setTransitionVisibility(View.INVISIBLE) + backgroundView.visibility = View.INVISIBLE + } + return + } + + // The ghost and backgrounds views were made invisible earlier. That can for instance happen + // when animating a dialog into a view. + if (ghostView.visibility == View.INVISIBLE) { + ghostView.visibility = View.VISIBLE + backgroundView.visibility = View.VISIBLE + } + + fillGhostedViewState(ghostedViewState) + val leftChange = state.left - ghostedViewState.left + val rightChange = state.right - ghostedViewState.right + val topChange = state.top - ghostedViewState.top + val bottomChange = state.bottom - ghostedViewState.bottom + + val widthRatio = state.width.toFloat() / ghostedViewState.width + val heightRatio = state.height.toFloat() / ghostedViewState.height + val scale = min(widthRatio, heightRatio) + + if (ghostedView.parent is ViewGroup) { + // Recalculate the matrix in case the ghosted view moved. We ensure that the ghosted + // view is still attached to a ViewGroup, otherwise calculateMatrix will throw. + GhostView.calculateMatrix(ghostedView, transitionContainer, ghostViewMatrix) + } + + transitionContainer.getLocationOnScreen(transitionContainerLocation) + ghostViewMatrix.postScale( + scale, + scale, + ghostedViewState.centerX - transitionContainerLocation[0], + ghostedViewState.centerY - transitionContainerLocation[1], + ) + ghostViewMatrix.postTranslate( + (leftChange + rightChange) / 2f, + (topChange + bottomChange) / 2f, + ) + ghostView.animationMatrix = ghostViewMatrix + + // We need to take into account the background insets for the background position. + val insets = backgroundInsets + val topWithInsets = state.top - insets.top + val leftWithInsets = state.left - insets.left + val rightWithInsets = state.right + insets.right + val bottomWithInsets = state.bottom + insets.bottom + + backgroundView.top = topWithInsets - transitionContainerLocation[1] + backgroundView.bottom = bottomWithInsets - transitionContainerLocation[1] + backgroundView.left = leftWithInsets - transitionContainerLocation[0] + backgroundView.right = rightWithInsets - transitionContainerLocation[0] + + val backgroundDrawable = backgroundDrawable!! + backgroundDrawable.wrapped?.let { + setBackgroundCornerRadius(it, state.topCornerRadius, state.bottomCornerRadius) + } + } + + override fun onTransitionAnimationEnd(isExpandingFullyAbove: Boolean) { + if (ghostView == null) { + // We didn't actually run the animation. + return + } + + cujType?.let { interactionJankMonitor.end(it) } + + backgroundDrawable?.wrapped?.alpha = startBackgroundAlpha + + GhostView.removeGhost(ghostedView) + backgroundView?.let { transitionContainerOverlay.remove(it) } + + if (ghostedView is LaunchableView) { + // Restore the ghosted view visibility. + (ghostedView as LaunchableView).setShouldBlockVisibilityChanges(false) + (ghostedView as LaunchableView).onActivityLaunchAnimationEnd() + } else { + // Make the ghosted view visible. We ensure that the view is considered VISIBLE by + // accessibility by first making it INVISIBLE then VISIBLE (see b/204944038#comment17 + // for more info). + ghostedView.visibility = View.INVISIBLE + ghostedView.visibility = View.VISIBLE + ghostedView.invalidate() + } + + if (isEphemeral || Flags.decoupleViewControllerInAnimlib()) { + onDispose() + } + } + + companion object { + private const val CORNER_RADIUS_TOP_INDEX = 0 + private const val CORNER_RADIUS_BOTTOM_INDEX = 4 + + /** + * Return the first [GradientDrawable] found in [drawable], or null if none is found. If + * [drawable] is a [LayerDrawable], this will return the first layer that has a + * [GradientDrawable]. + */ + fun findGradientDrawable(drawable: Drawable): GradientDrawable? { + if (drawable is GradientDrawable) { + return drawable + } + + if (drawable is InsetDrawable) { + return drawable.drawable?.let { findGradientDrawable(it) } + } + + if (drawable is LayerDrawable) { + for (i in 0 until drawable.numberOfLayers) { + val maybeGradient = findGradientDrawable(drawable.getDrawable(i)) + if (maybeGradient != null) { + return maybeGradient + } + } + } + + if (drawable is StateListDrawable) { + return findGradientDrawable(drawable.current) + } + + return null + } + } + + private class WrappedDrawable(val wrapped: Drawable?) : Drawable() { + private var currentAlpha = 0xFF + private var previousBounds = Rect() + + private var cornerRadii = FloatArray(8) { -1f } + private var previousCornerRadii = FloatArray(8) + + override fun draw(canvas: Canvas) { + val wrapped = this.wrapped ?: return + + wrapped.copyBounds(previousBounds) + + wrapped.alpha = currentAlpha + wrapped.bounds = bounds + applyBackgroundRadii() + + wrapped.draw(canvas) + + // The background view (and therefore this drawable) is drawn before the ghost view, so + // the ghosted view background alpha should always be 0 when it is drawn above the + // background. + wrapped.alpha = 0 + wrapped.bounds = previousBounds + restoreBackgroundRadii() + } + + override fun setAlpha(alpha: Int) { + if (alpha != currentAlpha) { + currentAlpha = alpha + invalidateSelf() + } + } + + override fun getAlpha() = currentAlpha + + override fun getOpacity(): Int { + val wrapped = this.wrapped ?: return PixelFormat.TRANSPARENT + + val previousAlpha = wrapped.alpha + wrapped.alpha = currentAlpha + val opacity = wrapped.opacity + wrapped.alpha = previousAlpha + return opacity + } + + override fun setColorFilter(filter: ColorFilter?) { + wrapped?.colorFilter = filter + } + + fun setBackgroundRadius(topCornerRadius: Float, bottomCornerRadius: Float) { + updateRadii(cornerRadii, topCornerRadius, bottomCornerRadius) + invalidateSelf() + } + + private fun updateRadii( + radii: FloatArray, + topCornerRadius: Float, + bottomCornerRadius: Float, + ) { + radii[0] = topCornerRadius + radii[1] = topCornerRadius + radii[2] = topCornerRadius + radii[3] = topCornerRadius + + radii[4] = bottomCornerRadius + radii[5] = bottomCornerRadius + radii[6] = bottomCornerRadius + radii[7] = bottomCornerRadius + } + + private fun applyBackgroundRadii() { + if (cornerRadii[0] < 0 || wrapped == null) { + return + } + + savePreviousBackgroundRadii(wrapped) + applyBackgroundRadii(wrapped, cornerRadii) + } + + private fun savePreviousBackgroundRadii(background: Drawable) { + // TODO(b/184121838): This method assumes that all GradientDrawable in background will + // have the same radius. Should we save/restore the radii for each layer instead? + val gradient = findGradientDrawable(background) ?: return + + // TODO(b/184121838): GradientDrawable#getCornerRadii clones its radii array. Should we + // try to avoid that? + val radii = gradient.cornerRadii + if (radii != null) { + radii.copyInto(previousCornerRadii) + } else { + // Copy the cornerRadius into previousCornerRadii. + val radius = gradient.cornerRadius + updateRadii(previousCornerRadii, radius, radius) + } + } + + private fun applyBackgroundRadii(drawable: Drawable, radii: FloatArray) { + if (drawable is GradientDrawable) { + drawable.cornerRadii = radii + return + } + + if (drawable is InsetDrawable) { + drawable.drawable?.let { applyBackgroundRadii(it, radii) } + return + } + + if (drawable !is LayerDrawable) { + return + } + + for (i in 0 until drawable.numberOfLayers) { + applyBackgroundRadii(drawable.getDrawable(i), radii) + } + } + + private fun restoreBackgroundRadii() { + if (cornerRadii[0] < 0 || wrapped == null) { + return + } + + applyBackgroundRadii(wrapped, previousCornerRadii) + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/IViewTransitionRegistry.kt b/systemUI/anim/src/com/android/systemui/animation/IViewTransitionRegistry.kt new file mode 100644 index 0000000000..280d90de7a --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/IViewTransitionRegistry.kt @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2025 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.view.View + +/** Represents a Registry for holding a transitioning view mapped to a token */ +interface IViewTransitionRegistry { + + /** + * Registers the transitioning [view] mapped to returned token + * + * @param view The view undergoing transition + * @return token mapped to the transitioning view + */ + fun register(view: View): ViewTransitionToken + + /** + * Unregisters the transitioned view from its corresponding [token] + * + * @param token The token corresponding to the transitioning view + */ + fun unregister(token: ViewTransitionToken) + + /** + * Extracts a transitioning view from registry using its corresponding [token] + * + * @param token The token corresponding to the transitioning view + */ + fun getView(token: ViewTransitionToken): View? + + /** + * Return token mapped to the [view], if it is present in the registry + * + * @param view the transitioning view whose token we are requesting + * @return token associated with the [view] if present, else null + */ + fun getViewToken(view: View): ViewTransitionToken? + + /** Event call to run on registry update (on both [register] and [unregister]) */ + fun onRegistryUpdate() +} diff --git a/systemUI/anim/src/com/android/systemui/animation/LaunchableView.kt b/systemUI/anim/src/com/android/systemui/animation/LaunchableView.kt new file mode 100644 index 0000000000..330ab0f7fc --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/LaunchableView.kt @@ -0,0 +1,96 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.graphics.Rect +import android.view.View + +/** A view that can expand/launch into an app or a dialog. */ +interface LaunchableView { + /** + * Set whether this view should block/postpone all calls to [View.setVisibility]. This ensures + * that this view: + * - remains invisible during the launch animation given that it is ghosted and already drawn + * somewhere else. + * - remains invisible as long as a dialog expanded from it is shown. + * - restores its expected visibility once the dialog expanded from it is dismissed. + * + * When `setShouldBlockVisibilityChanges(false)` is called, then visibility of the View should + * be restored to its expected value, i.e. it should have the visibility of the last call to + * `View.setVisibility()` that was made after `setShouldBlockVisibilityChanges(true)`, if any, + * or the original view visibility otherwise. + * + * Note that calls to [View.setTransitionVisibility] shouldn't be blocked. + * + * @param block whether we should block/postpone all calls to `setVisibility`. + */ + fun setShouldBlockVisibilityChanges(block: Boolean) + + /** Perform an action when the activity launch animation ends */ + fun onActivityLaunchAnimationEnd() {} + + /** Provide an optional correction applied to the visible area during a launch animation */ + fun getPaddingForLaunchAnimation(): Rect = Rect() +} + +/** A delegate that can be used by views to make the implementation of [LaunchableView] easier. */ +class LaunchableViewDelegate( + private val view: View, + + /** + * The lambda that should set the actual visibility of [view], usually by calling + * super.setVisibility(visibility). + */ + private val superSetVisibility: (Int) -> Unit, +) : LaunchableView { + private var blockVisibilityChanges = false + private var lastVisibility = view.visibility + + /** Call this when [LaunchableView.setShouldBlockVisibilityChanges] is called. */ + override fun setShouldBlockVisibilityChanges(block: Boolean) { + if (block == blockVisibilityChanges) { + return + } + + blockVisibilityChanges = block + if (block) { + // Save the current visibility for later. + lastVisibility = view.visibility + } else { + // Restore the visibility. To avoid accessibility issues, we change the visibility twice + // which makes sure that we trigger a visibility flag change (see b/204944038#comment17 + // for more info). + if (lastVisibility == View.VISIBLE) { + superSetVisibility(View.INVISIBLE) + superSetVisibility(View.VISIBLE) + } else { + superSetVisibility(View.VISIBLE) + superSetVisibility(lastVisibility) + } + } + } + + /** Call this when [View.setVisibility] is called. */ + fun setVisibility(visibility: Int) { + if (blockVisibilityChanges) { + lastVisibility = visibility + return + } + + superSetVisibility(visibility) + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/RemoteAnimationDelegate.kt b/systemUI/anim/src/com/android/systemui/animation/RemoteAnimationDelegate.kt new file mode 100644 index 0000000000..d465962d6e --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/RemoteAnimationDelegate.kt @@ -0,0 +1,30 @@ +package com.android.systemui.animation + +import android.annotation.UiThread +import android.view.IRemoteAnimationFinishedCallback +import android.view.RemoteAnimationTarget +import android.view.WindowManager + +/** + * A component capable of running remote animations. + * + * Expands the IRemoteAnimationRunner API by allowing for different types of more specialized + * callbacks. + */ +interface RemoteAnimationDelegate<in T : IRemoteAnimationFinishedCallback> { + /** + * Called on the UI thread when the animation targets are received. Sets up and kicks off the + * animation. + */ + @UiThread + fun onAnimationStart( + @WindowManager.TransitionOldType transit: Int, + apps: Array<out RemoteAnimationTarget>?, + wallpapers: Array<out RemoteAnimationTarget>?, + nonApps: Array<out RemoteAnimationTarget>?, + callback: T? + ) + + /** Called on the UI thread when a signal is received to cancel the animation. */ + @UiThread fun onAnimationCancelled() +} diff --git a/systemUI/anim/src/com/android/systemui/animation/RemoteAnimationRunnerCompat.java b/systemUI/anim/src/com/android/systemui/animation/RemoteAnimationRunnerCompat.java new file mode 100644 index 0000000000..21ec89646f --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/RemoteAnimationRunnerCompat.java @@ -0,0 +1,293 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation; + +import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; +import static android.view.WindowManager.TRANSIT_CLOSE; +import static android.view.WindowManager.TRANSIT_OLD_NONE; +import static android.view.WindowManager.TRANSIT_OPEN; +import static android.view.WindowManager.TRANSIT_TO_BACK; +import static android.view.WindowManager.TRANSIT_TO_FRONT; +import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_EXIT_BY_MINIMIZE_TRANSITION_BUGFIX; +import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_EXIT_TRANSITIONS_BUGFIX; +import static android.window.TransitionInfo.FLAG_IS_WALLPAPER; + +import static com.android.internal.util.Preconditions.checkArgument; +import static com.android.wm.shell.shared.TransitionUtil.FLAG_IS_DESKTOP_WALLPAPER_ACTIVITY; +import static com.android.wm.shell.shared.TransitionUtil.isClosingMode; +import static com.android.wm.shell.shared.TransitionUtil.isClosingType; +import static com.android.wm.shell.shared.TransitionUtil.isOpeningMode; + +import android.os.IBinder; +import android.os.RemoteException; +import android.util.ArrayMap; +import android.util.Log; +import android.view.IRemoteAnimationFinishedCallback; +import android.view.IRemoteAnimationRunner; +import android.view.RemoteAnimationTarget; +import android.view.SurfaceControl; +import android.view.WindowManager; +import android.view.WindowManager.TransitionOldType; +import android.window.IRemoteTransition; +import android.window.IRemoteTransitionFinishedCallback; +import android.window.RemoteTransitionStub; +import android.window.TransitionInfo; + +import com.android.wm.shell.shared.CounterRotator; + +public abstract class RemoteAnimationRunnerCompat extends IRemoteAnimationRunner.Stub { + private static final String TAG = "RemoteAnimRunnerCompat"; + + public abstract void onAnimationStart(@WindowManager.TransitionOldType int transit, + RemoteAnimationTarget[] apps, RemoteAnimationTarget[] wallpapers, + RemoteAnimationTarget[] nonApps, Runnable finishedCallback); + + @Override + public final void onAnimationStart(@TransitionOldType int transit, + RemoteAnimationTarget[] apps, + RemoteAnimationTarget[] wallpapers, + RemoteAnimationTarget[] nonApps, + final IRemoteAnimationFinishedCallback finishedCallback) { + + onAnimationStart(transit, apps, wallpapers, + nonApps, () -> { + try { + finishedCallback.onAnimationFinished(); + } catch (RemoteException e) { + Log.e(TAG, "Failed to call app controlled animation finished callback", e); + } + }); + } + + public IRemoteTransition toRemoteTransition() { + return wrap(this); + } + + /** Wraps a remote animation runner in a remote-transition. */ + public static RemoteTransitionStub wrap(IRemoteAnimationRunner runner) { + return new RemoteTransitionStub() { + final ArrayMap<IBinder, Runnable> mFinishRunnables = new ArrayMap<>(); + + @Override + public void startAnimation(IBinder token, TransitionInfo info, + SurfaceControl.Transaction t, + IRemoteTransitionFinishedCallback finishCallback) throws RemoteException { + final ArrayMap<SurfaceControl, SurfaceControl> leashMap = new ArrayMap<>(); + final RemoteAnimationTarget[] apps = + RemoteAnimationTargetCompat.wrapApps(info, t, leashMap); + final RemoteAnimationTarget[] wallpapers = + RemoteAnimationTargetCompat.wrapNonApps( + info, true /* wallpapers */, t, leashMap); + final RemoteAnimationTarget[] nonApps = + RemoteAnimationTargetCompat.wrapNonApps( + info, false /* wallpapers */, t, leashMap); + + // TODO(b/177438007): Move this set-up logic into launcher's animation impl. + boolean isReturnToHome = false; + TransitionInfo.Change launcherTask = null; + TransitionInfo.Change wallpaper = null; + int launcherLayer = 0; + int rotateDelta = 0; + float displayW = 0; + float displayH = 0; + for (int i = info.getChanges().size() - 1; i >= 0; --i) { + final TransitionInfo.Change change = info.getChanges().get(i); + // skip changes that we didn't wrap + if (!leashMap.containsKey(change.getLeash())) continue; + if (change.getTaskInfo() != null + && change.getTaskInfo().getActivityType() == ACTIVITY_TYPE_HOME) { + isReturnToHome = change.getMode() == TRANSIT_OPEN + || change.getMode() == TRANSIT_TO_FRONT; + launcherTask = change; + launcherLayer = info.getChanges().size() - i; + } else if ((change.getFlags() & FLAG_IS_WALLPAPER) != 0) { + wallpaper = change; + } + if (change.getParent() == null && change.getEndRotation() >= 0 + && change.getEndRotation() != change.getStartRotation()) { + rotateDelta = change.getEndRotation() - change.getStartRotation(); + displayW = change.getEndAbsBounds().width(); + displayH = change.getEndAbsBounds().height(); + } + } + + // Prepare for rotation if there is one + final CounterRotator counterLauncher = new CounterRotator(); + final CounterRotator counterWallpaper = new CounterRotator(); + if (launcherTask != null && rotateDelta != 0 && launcherTask.getParent() != null) { + final TransitionInfo.Change parent = info.getChange(launcherTask.getParent()); + if (parent != null) { + counterLauncher.setup(t, parent.getLeash(), rotateDelta, displayW, + displayH); + } else { + Log.e(TAG, "Malformed: " + launcherTask + " has parent=" + + launcherTask.getParent() + " but it's not in info."); + } + if (counterLauncher.getSurface() != null) { + t.setLayer(counterLauncher.getSurface(), launcherLayer); + } + } + + if (isReturnToHome) { + if (counterLauncher.getSurface() != null) { + t.setLayer(counterLauncher.getSurface(), info.getChanges().size() * 3); + } + // Need to "boost" the closing things since that's what launcher expects. + for (int i = info.getChanges().size() - 1; i >= 0; --i) { + final TransitionInfo.Change change = info.getChanges().get(i); + final SurfaceControl leash = leashMap.get(change.getLeash()); + // skip changes that we didn't wrap + if (leash == null) continue; + final int mode = info.getChanges().get(i).getMode(); + // Only deal with independent layers + if (!TransitionInfo.isIndependent(change, info)) continue; + if (mode == TRANSIT_CLOSE || mode == TRANSIT_TO_BACK) { + t.setLayer(leash, info.getChanges().size() * 3 - i); + counterLauncher.addChild(t, leash); + } + } + // Make wallpaper visible immediately since launcher apparently won't do this. + for (int i = wallpapers.length - 1; i >= 0; --i) { + t.show(wallpapers[i].leash); + t.setAlpha(wallpapers[i].leash, 1.f); + } + if (ENABLE_DESKTOP_WINDOWING_EXIT_TRANSITIONS_BUGFIX.isTrue()) { + resetLauncherAlphaOnDesktopExit(info, launcherTask, leashMap, t); + } + } else { + if (launcherTask != null) { + counterLauncher.addChild(t, leashMap.get(launcherTask.getLeash())); + } + if (wallpaper != null && rotateDelta != 0 && wallpaper.getParent() != null) { + final TransitionInfo.Change parent = info.getChange(wallpaper.getParent()); + if (parent != null) { + counterWallpaper.setup(t, parent.getLeash(), rotateDelta, displayW, + displayH); + } else { + Log.e(TAG, "Malformed: " + wallpaper + " has parent=" + + wallpaper.getParent() + " but it's not in info."); + } + if (counterWallpaper.getSurface() != null) { + t.setLayer(counterWallpaper.getSurface(), -1); + counterWallpaper.addChild(t, leashMap.get(wallpaper.getLeash())); + } + } + } + t.apply(); + + final Runnable animationFinishedCallback = () -> { + final SurfaceControl.Transaction finishTransaction = + new SurfaceControl.Transaction(); + counterLauncher.cleanUp(finishTransaction); + counterWallpaper.cleanUp(finishTransaction); + // Release surface references now. This is apparently to free GPU memory + // before GC would. + info.releaseAllSurfaces(); + // Don't release here since launcher might still be using them. Instead + // let launcher release them (eg. via RemoteAnimationTargets) + leashMap.clear(); + try { + finishCallback.onTransitionFinished(null /* wct */, finishTransaction); + finishTransaction.close(); + } catch (RemoteException e) { + Log.e(TAG, "Failed to call app controlled animation finished callback", e); + } + }; + synchronized (mFinishRunnables) { + mFinishRunnables.put(token, animationFinishedCallback); + } + // TODO(bc-unlcok): Pass correct transit type. + runner.onAnimationStart(TRANSIT_OLD_NONE, + apps, wallpapers, nonApps, new IRemoteAnimationFinishedCallback() { + @Override + public void onAnimationFinished() { + synchronized (mFinishRunnables) { + if (mFinishRunnables.remove(token) == null) return; + } + animationFinishedCallback.run(); + } + + @Override + public IBinder asBinder() { + return null; + } + }); + } + + @Override + public void mergeAnimation(IBinder token, TransitionInfo info, + SurfaceControl.Transaction t, IBinder mergeTarget, + IRemoteTransitionFinishedCallback finishCallback) throws RemoteException { + // TODO: hook up merge to recents onTaskAppeared if applicable. Until then, adapt + // to legacy cancel. + final Runnable finishRunnable; + synchronized (mFinishRunnables) { + finishRunnable = mFinishRunnables.remove(mergeTarget); + } + // Since we're not actually animating, release native memory now + t.close(); + info.releaseAllSurfaces(); + if (finishRunnable == null) return; + runner.onAnimationCancelled(); + finishRunnable.run(); + } + + @Override + public void onTransitionConsumed(IBinder transition, boolean aborted) + throws RemoteException { + // Notify the remote runner that the transition has been canceled if the transition + // was merged into another transition or aborted + synchronized (mFinishRunnables) { + mFinishRunnables.remove(transition); + } + runner.onAnimationCancelled(); + } + }; + } + + /** + * Reset the alpha of the Launcher leash to give the Launcher time to hide its Views before the + * exit-desktop animation starts. + * + * This method should only be called if the current transition is opening Launcher, otherwise we + * might not be exiting Desktop Mode. + */ + private static void resetLauncherAlphaOnDesktopExit( + TransitionInfo info, + TransitionInfo.Change launcherChange, + ArrayMap<SurfaceControl, SurfaceControl> leashMap, + SurfaceControl.Transaction startTransaction + ) { + checkArgument(isOpeningMode(launcherChange.getMode())); + if (!isClosingType(info.getType()) + && !ENABLE_DESKTOP_WINDOWING_EXIT_BY_MINIMIZE_TRANSITION_BUGFIX.isTrue()) { + return; + } + for (int i = info.getChanges().size() - 1; i >= 0; --i) { + final TransitionInfo.Change change = info.getChanges().get(i); + // skip changes that we didn't wrap + if (!leashMap.containsKey(change.getLeash())) continue; + // Only make the update if we are closing Desktop tasks. + if (change.getTaskInfo() != null && (change.getTaskInfo().isFreeform() + || change.hasFlags(FLAG_IS_DESKTOP_WALLPAPER_ACTIVITY)) + && isClosingMode(change.getMode())) { + startTransaction.setAlpha(leashMap.get(launcherChange.getLeash()), 0f); + return; + } + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/RemoteAnimationTargetCompat.java b/systemUI/anim/src/com/android/systemui/animation/RemoteAnimationTargetCompat.java new file mode 100644 index 0000000000..e251af4472 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/RemoteAnimationTargetCompat.java @@ -0,0 +1,86 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation; + +import android.util.ArrayMap; +import android.view.RemoteAnimationTarget; +import android.view.SurfaceControl; +import android.window.TransitionInfo; +import android.window.TransitionInfo.Change; + +import com.android.wm.shell.shared.TransitionUtil; + +import java.util.ArrayList; +import java.util.function.Predicate; + +/** + * Some utility methods for creating {@link RemoteAnimationTarget} instances. + */ +public class RemoteAnimationTargetCompat { + + /** + * Represents a TransitionInfo object as an array of old-style app targets + * + * @param leashMap Temporary map of change leash -> launcher leash. Is an output, so should be + * populated by this function. If null, it is ignored. + */ + public static RemoteAnimationTarget[] wrapApps(TransitionInfo info, + SurfaceControl.Transaction t, ArrayMap<SurfaceControl, SurfaceControl> leashMap) { + // LeafTaskFilter is order-dependent, so the same object needs to be used for all Change + // objects. That's why it's constructed here and captured by the lambda instead of building + // a new one ad hoc every time. + TransitionUtil.LeafTaskFilter taskFilter = new TransitionUtil.LeafTaskFilter(); + return wrap(info, t, leashMap, (change) -> { + // Intra-task activity -> activity transitions should be categorized as apps. + if (change.getActivityComponent() != null) return true; + return taskFilter.test(change); + }); + } + + /** + * Represents a TransitionInfo object as an array of old-style non-app targets + * + * @param wallpapers If true, this will return wallpaper targets; otherwise it returns + * non-wallpaper targets. + * @param leashMap Temporary map of change leash -> launcher leash. Is an output, so should be + * populated by this function. If null, it is ignored. + */ + public static RemoteAnimationTarget[] wrapNonApps(TransitionInfo info, boolean wallpapers, + SurfaceControl.Transaction t, ArrayMap<SurfaceControl, SurfaceControl> leashMap) { + return wrap(info, t, leashMap, (change) -> { + // Intra-task activity -> activity transitions should be categorized as apps. + if (change.getActivityComponent() != null) return false; + return wallpapers + ? TransitionUtil.isWallpaper(change) : TransitionUtil.isNonApp(change); + }); + } + + private static RemoteAnimationTarget[] wrap(TransitionInfo info, + SurfaceControl.Transaction t, ArrayMap<SurfaceControl, SurfaceControl> leashMap, + Predicate<Change> filter) { + final ArrayList<RemoteAnimationTarget> out = new ArrayList<>(); + for (int i = 0; i < info.getChanges().size(); i++) { + TransitionInfo.Change change = info.getChanges().get(i); + if (TransitionUtil.isOrderOnly(change)) continue; + if (filter.test(change)) { + out.add(TransitionUtil.newTarget( + change, info.getChanges().size() - i, info, t, leashMap)); + } + } + return out.toArray(new RemoteAnimationTarget[out.size()]); + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/ShadeInterpolation.kt b/systemUI/anim/src/com/android/systemui/animation/ShadeInterpolation.kt new file mode 100644 index 0000000000..b89a8b0e02 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/ShadeInterpolation.kt @@ -0,0 +1,39 @@ +package com.android.systemui.animation + +import android.util.MathUtils + +object ShadeInterpolation { + + /** + * Interpolate alpha for notification background scrim during shade expansion. + * + * @param fraction Shade expansion fraction + */ + @JvmStatic + fun getNotificationScrimAlpha(fraction: Float): Float { + val mappedFraction = MathUtils.constrainedMap(0f, 1f, 0f, 0.5f, fraction) + return interpolateEaseInOut(mappedFraction) + } + + /** + * Interpolate alpha for shade content during shade expansion. + * + * @param fraction Shade expansion fraction + */ + @JvmStatic + fun getContentAlpha(fraction: Float): Float { + val mappedFraction = MathUtils.constrainedMap(0f, 1f, 0.3f, 1f, fraction) + return interpolateEaseInOut(mappedFraction) + } + + private fun interpolateEaseInOut(fraction: Float): Float { + val mappedFraction = fraction * 1.2f - 0.2f + return if (mappedFraction <= 0) { + 0f + } else { + val oneMinusFrac = 1f - mappedFraction + (1f - 0.5f * (1f - Math.cos((3.14159f * oneMinusFrac * oneMinusFrac).toDouble()))) + .toFloat() + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/TextAnimator.kt b/systemUI/anim/src/com/android/systemui/animation/TextAnimator.kt new file mode 100644 index 0000000000..4f01d7fcdb --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/TextAnimator.kt @@ -0,0 +1,364 @@ +/* + * Copyright (C) 2020 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.TimeInterpolator +import android.animation.ValueAnimator +import android.graphics.Canvas +import android.graphics.Typeface +import android.graphics.fonts.Font +import android.graphics.fonts.FontVariationAxis +import android.text.Layout +import android.util.Log +import android.util.LruCache +import androidx.annotation.VisibleForTesting +import com.android.app.animation.Interpolators + +typealias GlyphCallback = (TextAnimator.PositionedGlyph, Float) -> Unit + +interface TypefaceVariantCache { + val fontCache: FontCache + val animationFrameCount: Int + + fun getTypefaceForVariant(fvar: String?): Typeface? + + companion object { + @JvmStatic + fun createVariantTypeface(baseTypeface: Typeface, fVar: String?): Typeface { + if (fVar.isNullOrEmpty()) { + return baseTypeface + } + + val axes = + FontVariationAxis.fromFontVariationSettings(fVar)?.toMutableList() + ?: mutableListOf() + axes.removeIf { !baseTypeface.isSupportedAxes(it.getOpenTypeTagValue()) } + + if (axes.isEmpty()) { + return baseTypeface + } else { + return Typeface.createFromTypefaceWithVariation(baseTypeface, axes) + } + } + } +} + +class TypefaceVariantCacheImpl(var baseTypeface: Typeface, override val animationFrameCount: Int) : + TypefaceVariantCache { + private val cache = LruCache<String, Typeface>(TYPEFACE_CACHE_MAX_ENTRIES) + override val fontCache = FontCacheImpl(animationFrameCount) + + override fun getTypefaceForVariant(fvar: String?): Typeface? { + if (fvar == null) { + return baseTypeface + } + cache.get(fvar)?.let { + return it + } + + return TypefaceVariantCache.createVariantTypeface(baseTypeface, fvar).also { + cache.put(fvar, it) + } + } + + companion object { + private const val TYPEFACE_CACHE_MAX_ENTRIES = 5 + } +} + +interface TextAnimatorListener : TextInterpolatorListener { + fun onInvalidate() {} +} + +/** + * This class provides text animation between two styles. + * + * Currently this class can provide text style animation for text weight and text size. For example + * the simple view that draws text with animating text size is like as follows: + * <pre> <code> + * ``` + * class SimpleTextAnimation : View { + * @JvmOverloads constructor(...) + * + * private val layout: Layout = ... // Text layout, e.g. StaticLayout. + * + * // TextAnimator tells us when needs to be invalidate. + * private val animator = TextAnimator(layout) { invalidate() } + * + * override fun onDraw(canvas: Canvas) = animator.draw(canvas) + * + * // Change the text size with animation. + * fun setTextSize(sizePx: Float, animate: Boolean) { + * animator.setTextStyle("" /* unchanged fvar... */, sizePx, animate) + * } + * } + * ``` + * </code> </pre> + */ +class TextAnimator( + layout: Layout, + private val typefaceCache: TypefaceVariantCache, + private val listener: TextAnimatorListener? = null, +) { + var textInterpolator = TextInterpolator(layout, typefaceCache, listener) + @VisibleForTesting var createAnimator: () -> ValueAnimator = { ValueAnimator.ofFloat(1f) } + + var animator: ValueAnimator? = null + + val progress: Float + get() = textInterpolator.progress + + val linearProgress: Float + get() = textInterpolator.linearProgress + + val fontVariationUtils = FontVariationUtils() + + sealed class PositionedGlyph { + /** Mutable X coordinate of the glyph position relative from drawing offset. */ + var x: Float = 0f + + /** Mutable Y coordinate of the glyph position relative from the baseline. */ + var y: Float = 0f + + /** The current line of text being drawn, in a multi-line TextView. */ + var lineNo: Int = 0 + + /** Mutable text size of the glyph in pixels. */ + var textSize: Float = 0f + + /** Mutable color of the glyph. */ + var color: Int = 0 + + /** Immutable character offset in the text that the current font run start. */ + abstract var runStart: Int + protected set + + /** Immutable run length of the font run. */ + abstract var runLength: Int + protected set + + /** Immutable glyph index of the font run. */ + abstract var glyphIndex: Int + protected set + + /** Immutable font instance for this font run. */ + abstract var font: Font + protected set + + /** Immutable glyph ID for this glyph. */ + abstract var glyphId: Int + protected set + } + + fun updateLayout(layout: Layout, textSize: Float = -1f) { + textInterpolator.layout = layout + + if (textSize >= 0) { + textInterpolator.targetPaint.textSize = textSize + textInterpolator.basePaint.textSize = textSize + textInterpolator.onTargetPaintModified() + textInterpolator.onBasePaintModified() + } + } + + val isRunning: Boolean + get() = animator?.isRunning ?: false + + /** + * GlyphFilter applied just before drawing to canvas for tweaking positions and text size. + * + * This callback is called for each glyphs just before drawing the glyphs. This function will be + * called with the intrinsic position, size, color, glyph ID and font instance. You can mutate + * the position, size and color for tweaking animations. Do not keep the reference of passed + * glyph object. The interpolator reuses that object for avoiding object allocations. + * + * Details: The text is drawn with font run units. The font run is a text segment that draws + * with the same font. The {@code runStart} and {@code runLimit} is a range of the font run in + * the text that current glyph is in. Once the font run is determined, the system will convert + * characters into glyph IDs. The {@code glyphId} is the glyph identifier in the font and {@code + * glyphIndex} is the offset of the converted glyph array. Please note that the {@code + * glyphIndex} is not a character index, because the character will not be converted to glyph + * one-by-one. If there are ligatures including emoji sequence, etc, the glyph ID may be + * composed from multiple characters. + * + * Here is an example of font runs: "fin. 終わり" + * + * ``` + * Characters : f i n . _ 終 わ り + * Code Points: \u0066 \u0069 \u006E \u002E \u0020 \u7D42 \u308F \u308A + * Font Runs : <-- Roboto-Regular.ttf --><-- NotoSans-CJK.otf --> + * runStart = 0, runLength = 5 runStart = 5, runLength = 3 + * Glyph IDs : 194 48 7 8 4367 1039 1002 + * Glyph Index: 0 1 2 3 0 1 2 + * ``` + * + * In this example, the "fi" is converted into ligature form, thus the single glyph ID is + * assigned for two characters, f and i. + * + * Example: + * ``` + * private val glyphFilter: GlyphCallback = { glyph, progress -> + * val index = glyph.runStart + * val i = glyph.glyphIndex + * val moveAmount = 1.3f + * val sign = (-1 + 2 * ((i + index) % 2)) + * val turnProgress = if (progress < .5f) progress / 0.5f else (1.0f - progress) / 0.5f + * + * // You can modify (x, y) coordinates, textSize and color during animation. + * glyph.textSize += glyph.textSize * sign * moveAmount * turnProgress + * glyph.y += glyph.y * sign * moveAmount * turnProgress + * glyph.x += glyph.x * sign * moveAmount * turnProgress + * } + * ``` + */ + var glyphFilter: GlyphCallback? + get() = textInterpolator.glyphFilter + set(value) { + textInterpolator.glyphFilter = value + } + + fun draw(c: Canvas) = textInterpolator.draw(c) + + /** Style spec to use when rendering the font */ + data class Style( + val fVar: String? = null, + val textSize: Float? = null, + val color: Int? = null, + val strokeWidth: Float? = null, + ) { + fun withUpdatedFVar( + fontVariationUtils: FontVariationUtils, + weight: Int = -1, + width: Int = -1, + opticalSize: Int = -1, + roundness: Int = -1, + ): Style { + return this.copy( + fVar = + fontVariationUtils.updateFontVariation( + weight = weight, + width = width, + opticalSize = opticalSize, + roundness = roundness, + ) + ) + } + } + + /** Animation Spec for use when style changes should be animated */ + data class Animation( + val animate: Boolean = true, + val startDelay: Long = 0, + val duration: Long = DEFAULT_ANIMATION_DURATION, + val interpolator: TimeInterpolator = Interpolators.LINEAR, + val onAnimationEnd: Runnable? = null, + ) { + fun configureAnimator(animator: Animator) { + animator.startDelay = startDelay + animator.duration = duration + animator.interpolator = interpolator + if (onAnimationEnd != null) { + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + onAnimationEnd.run() + } + } + ) + } + } + + companion object { + val DISABLED = Animation(animate = false) + } + } + + /** Sets the text style, optionally with animation */ + fun setTextStyle(style: Style, animation: Animation = Animation.DISABLED) { + animator?.cancel() + setTextStyleInternal(style, rebase = animation.animate) + + if (animation.animate) { + animator = buildAnimator(animation).apply { start() } + } else { + textInterpolator.progress = 1f + textInterpolator.linearProgress = 1f + textInterpolator.rebase() + listener?.onInvalidate() + } + } + + /** Builds a ValueAnimator from the specified animation parameters */ + private fun buildAnimator(animation: Animation): ValueAnimator { + return createAnimator().apply { + duration = DEFAULT_ANIMATION_DURATION + animation.configureAnimator(this) + + addUpdateListener { + textInterpolator.progress = it.animatedValue as Float + textInterpolator.linearProgress = it.currentPlayTime / it.duration.toFloat() + listener?.onInvalidate() + } + + addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animator: Animator) = textInterpolator.rebase() + + override fun onAnimationCancel(animator: Animator) = textInterpolator.rebase() + } + ) + } + } + + private fun setTextStyleInternal( + style: Style, + rebase: Boolean, + updateLayoutOnFailure: Boolean = true, + ) { + try { + if (rebase) textInterpolator.rebase() + style.color?.let { textInterpolator.targetPaint.color = it } + style.textSize?.let { textInterpolator.targetPaint.textSize = it } + style.strokeWidth?.let { textInterpolator.targetPaint.strokeWidth = it } + style.fVar?.let { + textInterpolator.targetPaint.typeface = typefaceCache.getTypefaceForVariant(it) + } + textInterpolator.onTargetPaintModified() + } catch (ex: IllegalArgumentException) { + if (updateLayoutOnFailure) { + Log.e( + TAG, + "setTextStyleInternal: Exception caught but retrying. This is usually" + + " due to the layout having changed unexpectedly without being notified.", + ex, + ) + + updateLayout(textInterpolator.layout) + setTextStyleInternal(style, rebase, updateLayoutOnFailure = false) + } else { + throw ex + } + } + } + + companion object { + private val TAG = TextAnimator::class.simpleName!! + const val DEFAULT_ANIMATION_DURATION = 300L + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/TextInterpolator.kt b/systemUI/anim/src/com/android/systemui/animation/TextInterpolator.kt new file mode 100644 index 0000000000..22c5258edb --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/TextInterpolator.kt @@ -0,0 +1,555 @@ +/* + * Copyright (C) 2020 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.systemui.animation + +import android.graphics.Canvas +import android.graphics.Paint +import android.graphics.fonts.Font +import android.graphics.fonts.FontVariationAxis +import android.graphics.text.PositionedGlyphs +import android.text.Layout +import android.text.TextPaint +import android.text.TextShaper +import android.util.MathUtils +import com.android.internal.graphics.ColorUtils +import java.lang.Math.max + +interface TextInterpolatorListener { + fun onPaintModified() {} + + fun onRebased() {} +} + +/** Provide text style linear interpolation for plain text. */ +class TextInterpolator( + layout: Layout, + var typefaceCache: TypefaceVariantCache, + private val listener: TextInterpolatorListener? = null, +) { + + /** + * Returns base paint used for interpolation. + * + * Once you modified the style parameters, you have to call reshapeText to recalculate base text + * layout. + * + * Do not bypass the cache and update the typeface or font variation directly. + * + * @return a paint object + */ + val basePaint = TextPaint(layout.paint) + + /** + * Returns target paint used for interpolation. + * + * Once you modified the style parameters, you have to call reshapeText to recalculate target + * text layout. + * + * Do not bypass the cache and update the typeface or font variation directly. + * + * @return a paint object + */ + val targetPaint = TextPaint(layout.paint) + + /** + * A class represents a single font run. + * + * A font run is a range that will be drawn with the same font. + */ + private data class FontRun( + val start: Int, // inclusive + val end: Int, // exclusive + var baseFont: Font, + var targetFont: Font, + ) { + val length: Int + get() = end - start + } + + /** A class represents text layout of a single run. */ + private class Run( + val glyphIds: IntArray, + val baseX: FloatArray, // same length as glyphIds + val baseY: FloatArray, // same length as glyphIds + val targetX: FloatArray, // same length as glyphIds + val targetY: FloatArray, // same length as glyphIds + val fontRuns: List<FontRun>, + ) + + /** A class represents text layout of a single line. */ + private class Line(val runs: List<Run>) + + private var lines = listOf<Line>() + private val fontInterpolator = FontInterpolator(typefaceCache.fontCache) + + // Recycling object for glyph drawing and tweaking. + private val tmpPaint = TextPaint() + private val tmpPaintForGlyph by lazy { TextPaint() } + private val tmpGlyph by lazy { MutablePositionedGlyph() } + // Will be extended for the longest font run if needed. + private var tmpPositionArray = FloatArray(20) + + /** + * The progress position of the interpolation. + * + * The 0f means the start state, 1f means the end state. + */ + var progress: Float = 0f + + /** Linear progress value (not interpolated) */ + var linearProgress: Float = 0f + + /** + * The layout used for drawing text. + * + * Only non-styled text is supported. Even if the given layout is created from Spanned, the span + * information is not used. + * + * The paint objects used for interpolation are not changed by this method call. + * + * Note: disabling ligature is strongly recommended if you give extra letter spacing since they + * may be disjointed based on letter spacing value and cannot be interpolated. Animator will + * throw runtime exception if they cannot be interpolated. + */ + var layout: Layout = layout + get() = field + set(value) { + field = value + shapeText(value) + } + + var shapedText: String = "" + private set + + init { + // shapeText needs to be called after all members are initialized. + shapeText(layout) + } + + /** + * Recalculate internal text layout for interpolation. + * + * Whenever the target paint is modified, call this method to recalculate internal text layout + * used for interpolation. + */ + fun onTargetPaintModified() { + updatePositionsAndFonts(shapeText(layout, targetPaint), updateBase = false) + listener?.onPaintModified() + } + + /** + * Recalculate internal text layout for interpolation. + * + * Whenever the base paint is modified, call this method to recalculate internal text layout + * used for interpolation. + */ + fun onBasePaintModified() { + updatePositionsAndFonts(shapeText(layout, basePaint), updateBase = true) + listener?.onPaintModified() + } + + /** + * Rebase the base state to the middle of the interpolation. + * + * The text interpolator does not calculate all the text position by text shaper due to + * performance reasons. Instead, the text interpolator shape the start and end state and + * calculate text position of the middle state by linear interpolation. Due to this trick, the + * text positions of the middle state is likely different from the text shaper result. So, if + * you want to start animation from the middle state, you will see the glyph jumps due to this + * trick, i.e. the progress 0.5 of interpolation between weight 400 and 700 is different from + * text shape result of weight 550. + * + * After calling this method, do not call onBasePaintModified() since it reshape the text and + * update the base state. As in above notice, the text shaping result at current progress is + * different shaped result. By calling onBasePaintModified(), you may see the glyph jump. + * + * By calling this method, the progress will be reset to 0. + * + * This API is useful to continue animation from the middle of the state. For example, if you + * animate weight from 200 to 400, then if you want to move back to 200 at the half of the + * animation, it will look like + * <pre> <code> + * ``` + * val interp = TextInterpolator(layout) + * + * // Interpolate between weight 200 to 400. + * interp.basePaint.fontVariationSettings = "'wght' 200" + * interp.onBasePaintModified() + * interp.targetPaint.fontVariationSettings = "'wght' 400" + * interp.onTargetPaintModified() + * + * // animate + * val animator = ValueAnimator.ofFloat(1f).apply { + * addUpdaterListener { + * interp.progress = it.animateValue as Float + * } + * }.start() + * + * // Here, assuming you receive some event and want to start new animation from current + * // state. + * OnSomeEvent { + * animator.cancel() + * + * // start another animation from the current state. + * interp.rebase() // Use current state as base state. + * interp.targetPaint.fontVariationSettings = "'wght' 200" // set new target + * interp.onTargetPaintModified() // reshape target + * + * // Here the textInterpolator interpolate from 'wght' from 300 to 200 if the current + * // progress is 0.5 + * animator.start() + * } + * ``` + * </code> </pre> + */ + fun rebase() { + if (progress == 0f) { + listener?.onRebased() + return + } else if (progress == 1f) { + basePaint.set(targetPaint) + } else { + lerp(basePaint, targetPaint, progress, tmpPaint) + basePaint.set(tmpPaint) + } + + lines.forEach { line -> + line.runs.forEach { run -> + for (i in run.baseX.indices) { + run.baseX[i] = MathUtils.lerp(run.baseX[i], run.targetX[i], progress) + run.baseY[i] = MathUtils.lerp(run.baseY[i], run.targetY[i], progress) + } + run.fontRuns.forEach { fontRun -> + fontRun.baseFont = + fontInterpolator.lerp( + fontRun.baseFont, + fontRun.targetFont, + progress, + linearProgress, + ) + val fvar = FontVariationAxis.toFontVariationSettings(fontRun.baseFont.axes) + basePaint.typeface = typefaceCache.getTypefaceForVariant(fvar) + } + } + } + + progress = 0f + linearProgress = 0f + listener?.onRebased() + } + + /** + * Draws interpolated text at the given progress. + * + * @param canvas a canvas. + */ + fun draw(canvas: Canvas) { + lerp(basePaint, targetPaint, progress, tmpPaint) + lines.forEachIndexed { lineNo, line -> + line.runs.forEach { run -> + canvas.save() + try { + // Move to drawing origin. + val origin = layout.getDrawOrigin(lineNo) + canvas.translate(origin, layout.getLineBaseline(lineNo).toFloat()) + + run.fontRuns.forEach { fontRun -> + drawFontRun(canvas, run, fontRun, lineNo, tmpPaint) + } + } finally { + canvas.restore() + } + } + } + } + + // Shape text with current paint parameters. + private fun shapeText(layout: Layout) { + val baseLayout = shapeText(layout, basePaint) + val targetLayout = shapeText(layout, targetPaint) + + require(baseLayout.size == targetLayout.size) { + "The new layout result has different line count." + } + + var maxRunLength = 0 + lines = + baseLayout.zip(targetLayout) { baseLine, targetLine -> + val runs = + baseLine.zip(targetLine) { base, target -> + require(base.glyphCount() == target.glyphCount()) { + "Inconsistent glyph count at line ${lines.size}" + } + + val glyphCount = base.glyphCount() + + // Good to recycle the array if the existing array can hold the new layout + // result. + val glyphIds = + IntArray(glyphCount) { + base.getGlyphId(it).also { baseGlyphId -> + require(baseGlyphId == target.getGlyphId(it)) { + "Inconsistent glyph ID at $it in line ${lines.size}" + } + } + } + + val baseX = FloatArray(glyphCount) { base.getGlyphX(it) } + val baseY = FloatArray(glyphCount) { base.getGlyphY(it) } + val targetX = FloatArray(glyphCount) { target.getGlyphX(it) } + val targetY = FloatArray(glyphCount) { target.getGlyphY(it) } + + // Calculate font runs + val fontRun = mutableListOf<FontRun>() + if (glyphCount != 0) { + var start = 0 + var baseFont = base.getFont(start) + var targetFont = target.getFont(start) + require(FontInterpolator.canInterpolate(baseFont, targetFont)) { + "Cannot interpolate font at $start ($baseFont vs $targetFont)" + } + + for (i in 1 until glyphCount) { + val nextBaseFont = base.getFont(i) + val nextTargetFont = target.getFont(i) + + if (baseFont !== nextBaseFont) { + require(targetFont !== nextTargetFont) { + "Base font has changed at $i but target font is unchanged." + } + // Font transition point. push run and reset context. + fontRun.add(FontRun(start, i, baseFont, targetFont)) + maxRunLength = max(maxRunLength, i - start) + baseFont = nextBaseFont + targetFont = nextTargetFont + start = i + require(FontInterpolator.canInterpolate(baseFont, targetFont)) { + "Cannot interpolate font at $start" + + " ($baseFont vs $targetFont)" + } + } else { // baseFont === nextBaseFont + require(targetFont === nextTargetFont) { + "Base font is unchanged at $i but target font has changed." + } + } + } + fontRun.add(FontRun(start, glyphCount, baseFont, targetFont)) + maxRunLength = max(maxRunLength, glyphCount - start) + } + Run(glyphIds, baseX, baseY, targetX, targetY, fontRun) + } + Line(runs) + } + + // Update float array used for drawing. + if (tmpPositionArray.size < maxRunLength * 2) { + tmpPositionArray = FloatArray(maxRunLength * 2) + } + } + + private class MutablePositionedGlyph : TextAnimator.PositionedGlyph() { + override var runStart: Int = 0 + public set + + override var runLength: Int = 0 + public set + + override var glyphIndex: Int = 0 + public set + + override lateinit var font: Font + public set + + override var glyphId: Int = 0 + public set + } + + var glyphFilter: GlyphCallback? = null + + // Draws single font run. + private fun drawFontRun(c: Canvas, line: Run, run: FontRun, lineNo: Int, paint: Paint) { + var arrayIndex = 0 + val font = fontInterpolator.lerp(run.baseFont, run.targetFont, progress, linearProgress) + + val glyphFilter = glyphFilter + if (glyphFilter == null) { + for (i in run.start until run.end) { + tmpPositionArray[arrayIndex++] = + MathUtils.lerp(line.baseX[i], line.targetX[i], progress) + tmpPositionArray[arrayIndex++] = + MathUtils.lerp(line.baseY[i], line.targetY[i], progress) + } + c.drawGlyphs(line.glyphIds, run.start, tmpPositionArray, 0, run.length, font, paint) + return + } + + tmpGlyph.font = font + tmpGlyph.runStart = run.start + tmpGlyph.runLength = run.end - run.start + tmpGlyph.lineNo = lineNo + + tmpPaintForGlyph.set(paint) + var prevStart = run.start + + for (i in run.start until run.end) { + tmpGlyph.glyphIndex = i + tmpGlyph.glyphId = line.glyphIds[i] + tmpGlyph.x = MathUtils.lerp(line.baseX[i], line.targetX[i], progress) + tmpGlyph.y = MathUtils.lerp(line.baseY[i], line.targetY[i], progress) + tmpGlyph.textSize = paint.textSize + tmpGlyph.color = paint.color + + glyphFilter(tmpGlyph, progress) + + if (tmpGlyph.textSize != paint.textSize || tmpGlyph.color != paint.color) { + tmpPaintForGlyph.textSize = tmpGlyph.textSize + tmpPaintForGlyph.color = tmpGlyph.color + + c.drawGlyphs( + line.glyphIds, + prevStart, + tmpPositionArray, + 0, + i - prevStart, + font, + tmpPaintForGlyph, + ) + prevStart = i + arrayIndex = 0 + } + + tmpPositionArray[arrayIndex++] = tmpGlyph.x + tmpPositionArray[arrayIndex++] = tmpGlyph.y + } + + c.drawGlyphs( + line.glyphIds, + prevStart, + tmpPositionArray, + 0, + run.end - prevStart, + font, + tmpPaintForGlyph, + ) + } + + private fun updatePositionsAndFonts( + layoutResult: List<List<PositionedGlyphs>>, + updateBase: Boolean, + ) { + // Update target positions with newly calculated text layout. + check(layoutResult.size == lines.size) { "The new layout result has different line count." } + + lines.zip(layoutResult) { line, runs -> + line.runs.zip(runs) { lineRun, newGlyphs -> + require(newGlyphs.glyphCount() == lineRun.glyphIds.size) { + "The new layout has different glyph count." + } + + lineRun.fontRuns.forEach { run -> + val newFont = newGlyphs.getFont(run.start) + for (i in run.start until run.end) { + require(newGlyphs.getGlyphId(run.start) == lineRun.glyphIds[run.start]) { + "The new layout has different glyph ID at ${run.start}" + } + require(newFont === newGlyphs.getFont(i)) { + "The new layout has different font run." + + " $newFont vs ${newGlyphs.getFont(i)} at $i" + } + } + + // The passing base font and target font is already interpolatable, so just + // check new font can be interpolatable with base font. + require(FontInterpolator.canInterpolate(newFont, run.baseFont)) { + "New font cannot be interpolated with existing font. $newFont," + + " ${run.baseFont}" + } + + if (updateBase) { + run.baseFont = newFont + } else { + run.targetFont = newFont + } + } + + if (updateBase) { + for (i in lineRun.baseX.indices) { + lineRun.baseX[i] = newGlyphs.getGlyphX(i) + lineRun.baseY[i] = newGlyphs.getGlyphY(i) + } + } else { + for (i in lineRun.baseX.indices) { + lineRun.targetX[i] = newGlyphs.getGlyphX(i) + lineRun.targetY[i] = newGlyphs.getGlyphY(i) + } + } + } + } + } + + // Linear interpolate the paint. + private fun lerp(from: Paint, to: Paint, progress: Float, out: Paint) { + out.set(from) + + // Currently only font size & colors are interpolated. + // TODO(172943390): Add other interpolation or support custom interpolator. + out.textSize = MathUtils.lerp(from.textSize, to.textSize, progress) + out.color = ColorUtils.blendARGB(from.color, to.color, progress) + out.strokeWidth = MathUtils.lerp(from.strokeWidth, to.strokeWidth, progress) + } + + // Shape the text and stores the result to out argument. + private fun shapeText(layout: Layout, paint: TextPaint): List<List<PositionedGlyphs>> { + var text = StringBuilder() + val out = mutableListOf<List<PositionedGlyphs>>() + for (lineNo in 0 until layout.lineCount) { // Shape all lines. + val lineStart = layout.getLineStart(lineNo) + val lineEnd = layout.getLineEnd(lineNo) + var count = lineEnd - lineStart + // Do not render the last character in the line if it's a newline and unprintable + val last = lineStart + count - 1 + if (last > lineStart && last < layout.text.length && layout.text[last] == '\n') { + count-- + } + + val runs = mutableListOf<PositionedGlyphs>() + TextShaper.shapeText( + layout.text, + lineStart, + count, + layout.textDirectionHeuristic, + paint, + ) { _, _, glyphs, _ -> + runs.add(glyphs) + } + out.add(runs) + + if (lineNo > 0) { + text.append("\n") + } + text.append(layout.text.substring(lineStart, lineEnd)) + } + shapedText = text.toString() + return out + } +} + +private fun Layout.getDrawOrigin(lineNo: Int) = + if (getParagraphDirection(lineNo) == Layout.DIR_LEFT_TO_RIGHT) { + getLineLeft(lineNo) + } else { + getLineRight(lineNo) + } diff --git a/systemUI/anim/src/com/android/systemui/animation/TransitionAnimator.kt b/systemUI/anim/src/com/android/systemui/animation/TransitionAnimator.kt new file mode 100644 index 0000000000..8886b9e5e2 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/TransitionAnimator.kt @@ -0,0 +1,1234 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.ValueAnimator +import android.content.Context +import android.graphics.PointF +import android.graphics.PorterDuff +import android.graphics.PorterDuffXfermode +import android.graphics.drawable.GradientDrawable +import android.util.FloatProperty +import android.util.Log +import android.util.MathUtils +import android.util.TimeUtils +import android.view.Choreographer +import android.view.View +import android.view.ViewGroup +import android.view.ViewGroupOverlay +import android.view.ViewOverlay +import android.view.animation.Interpolator +import android.window.WindowAnimationState +import com.android.app.animation.Interpolators.LINEAR +import com.android.internal.annotations.VisibleForTesting +import com.android.internal.dynamicanimation.animation.SpringAnimation +import com.android.internal.dynamicanimation.animation.SpringForce +import com.android.systemui.Flags +import com.android.systemui.Flags.moveTransitionAnimationLayer +import com.android.systemui.shared.Flags.returnAnimationFrameworkLibrary +import com.android.systemui.shared.Flags.returnAnimationFrameworkLongLived +import java.util.concurrent.Executor +import kotlin.math.abs +import kotlin.math.max +import kotlin.math.min +import kotlin.math.roundToInt + +private const val TAG = "TransitionAnimator" + +/** A base class to animate a window (activity or dialog) launch to or return from a view . */ +class TransitionAnimator( + private val mainExecutor: Executor, + private val timings: Timings, + private val interpolators: Interpolators, + + /** [springTimings] and [springInterpolators] must either both be null or both not null. */ + private val springTimings: SpringTimings? = null, + private val springInterpolators: Interpolators? = null, + private val springParams: SpringParams = DEFAULT_SPRING_PARAMS, +) { + companion object { + internal const val DEBUG = false + private val SRC_MODE = PorterDuffXfermode(PorterDuff.Mode.SRC) + + /** Default parameters for the multi-spring animator. */ + private val DEFAULT_SPRING_PARAMS = + SpringParams( + centerXStiffness = 450f, + centerXDampingRatio = 0.965f, + centerYStiffness = 400f, + centerYDampingRatio = 0.95f, + scaleStiffness = 500f, + scaleDampingRatio = 0.99f, + ) + + /** + * Given the [linearProgress] of a transition animation, return the linear progress of the + * sub-animation starting [delay] ms after the transition animation and that lasts + * [duration]. + */ + @JvmStatic + fun getProgress( + timings: Timings, + linearProgress: Float, + delay: Long, + duration: Long, + ): Float { + return getProgressInternal( + timings.totalDuration.toFloat(), + linearProgress, + delay.toFloat(), + duration.toFloat(), + ) + } + + /** + * Similar to [getProgress] above, bug the delay and duration are expressed as percentages + * of the animation duration (between 0f and 1f). + */ + internal fun getProgress(linearProgress: Float, delay: Float, duration: Float): Float { + return getProgressInternal(totalDuration = 1f, linearProgress, delay, duration) + } + + private fun getProgressInternal( + totalDuration: Float, + linearProgress: Float, + delay: Float, + duration: Float, + ): Float { + return MathUtils.constrain( + (linearProgress * totalDuration - delay) / duration, + 0.0f, + 1.0f, + ) + } + + fun assertReturnAnimations() { + check(returnAnimationsEnabled()) { + "isLaunching cannot be false when the returnAnimationFrameworkLibrary flag " + + "is disabled" + } + } + + fun returnAnimationsEnabled() = returnAnimationFrameworkLibrary() + + fun assertLongLivedReturnAnimations() { + check(longLivedReturnAnimationsEnabled()) { + "Long-lived registrations cannot be used when the " + + "returnAnimationFrameworkLibrary or the " + + "returnAnimationFrameworkLongLived flag are disabled" + } + } + + fun longLivedReturnAnimationsEnabled() = + returnAnimationFrameworkLibrary() && returnAnimationFrameworkLongLived() + + internal fun WindowAnimationState.toTransitionState() = + State().also { + bounds?.let { b -> + it.top = b.top.roundToInt() + it.left = b.left.roundToInt() + it.bottom = b.bottom.roundToInt() + it.right = b.right.roundToInt() + } + it.bottomCornerRadius = (bottomLeftRadius + bottomRightRadius) / 2 + it.topCornerRadius = (topLeftRadius + topRightRadius) / 2 + } + + /** Builds a [FloatProperty] for updating the defined [property] using a spring. */ + private fun buildProperty( + property: SpringProperty, + updateProgress: (SpringState) -> Unit, + ): FloatProperty<SpringState> { + return object : FloatProperty<SpringState>(property.name) { + override fun get(state: SpringState): Float { + return property.get(state) + } + + override fun setValue(state: SpringState, value: Float) { + property.setValue(state, value) + updateProgress(state) + } + } + } + } + + private val transitionContainerLocation = IntArray(2) + private val cornerRadii = FloatArray(8) + + init { + check((springTimings == null) == (springInterpolators == null)) + } + + /** + * A controller that takes care of applying the animation to an expanding view. + * + * Note that all callbacks (onXXX methods) are all called on the main thread. + */ + interface Controller { + /** + * The container in which the view that started the animation will be animating together + * with the opening or closing window. + * + * This will be used to: + * - Get the associated [Context]. + * - Compute whether we are expanding to or contracting from fully above the transition + * container. + * - Get the overlay into which we put the window background layer, while the animating + * window is not visible (see [openingWindowSyncView]). + * + * This container can be changed to force this [Controller] to animate the expanding view + * inside a different location, for instance to ensure correct layering during the + * animation. + */ + var transitionContainer: ViewGroup + + /** Whether the animation being controlled is a launch or a return. */ + val isLaunching: Boolean + + /** + * If [isLaunching], the [View] with which the opening app window should be synchronized + * once it starts to be visible. Otherwise, the [View] with which the closing app window + * should be synchronized until it stops being visible. + * + * We will also move the window background layer to this view's overlay once the opening + * window is visible (if [isLaunching]), or from this view's overlay once the closing window + * stop being visible (if ![isLaunching]). + * + * If null, this will default to [transitionContainer]. + */ + val openingWindowSyncView: View? + get() = null + + /** + * Window state for the animation. If [isLaunching], it would correspond to the end state + * otherwise the start state. + * + * If null, the state is inferred from the window targets + */ + val windowAnimatorState: WindowAnimationState? + get() = null + + /** + * Return the [State] of the view that will be animated. We will animate from this state to + * the final window state. + * + * Note: This state will be mutated and passed to [onTransitionAnimationProgress] during the + * animation. + */ + fun createAnimatorState(): State + + /** + * The animation started. This is typically used to initialize any additional resource + * needed for the animation. [isExpandingFullyAbove] will be true if the window is expanding + * fully above the [transitionContainer]. + */ + fun onTransitionAnimationStart(isExpandingFullyAbove: Boolean) {} + + /** The animation made progress and the expandable view [state] should be updated. */ + fun onTransitionAnimationProgress(state: State, progress: Float, linearProgress: Float) {} + + /** + * The animation ended. This will be called *if and only if* [onTransitionAnimationStart] + * was called previously. This is typically used to clean up the resources initialized when + * the animation was started. + */ + fun onTransitionAnimationEnd(isExpandingFullyAbove: Boolean) {} + } + + /** The state of an expandable view during a [TransitionAnimator] animation. */ + open class State( + /** The position of the view in screen space coordinates. */ + var top: Int = 0, + var bottom: Int = 0, + var left: Int = 0, + var right: Int = 0, + var topCornerRadius: Float = 0f, + var bottomCornerRadius: Float = 0f, + ) { + private val startTop = top + + val width: Int + get() = right - left + + val height: Int + get() = bottom - top + + open val topChange: Int + get() = top - startTop + + val centerX: Float + get() = left + width / 2f + + val centerY: Float + get() = top + height / 2f + + /** Whether the expanding view should be visible or hidden. */ + var visible: Boolean = true + } + + /** Encapsulated the state of a multi-spring animation. */ + internal class SpringState( + // Animated values. + var centerX: Float, + var centerY: Float, + var scale: Float = 0f, + + // Update flags (used to decide whether it's time to update the transition state). + var isCenterXUpdated: Boolean = false, + var isCenterYUpdated: Boolean = false, + var isScaleUpdated: Boolean = false, + + // Completion flags. + var isCenterXDone: Boolean = false, + var isCenterYDone: Boolean = false, + var isScaleDone: Boolean = false, + ) { + /** Whether all springs composing the animation have settled in the final position. */ + val isDone + get() = isCenterXDone && isCenterYDone && isScaleDone + } + + /** Supported [SpringState] properties with getters and setters to update them. */ + private enum class SpringProperty { + CENTER_X { + override fun get(state: SpringState): Float { + return state.centerX + } + + override fun setValue(state: SpringState, value: Float) { + state.centerX = value + state.isCenterXUpdated = true + } + }, + CENTER_Y { + override fun get(state: SpringState): Float { + return state.centerY + } + + override fun setValue(state: SpringState, value: Float) { + state.centerY = value + state.isCenterYUpdated = true + } + }, + SCALE { + override fun get(state: SpringState): Float { + return state.scale + } + + override fun setValue(state: SpringState, value: Float) { + state.scale = value + state.isScaleUpdated = true + } + }; + + /** Extracts the current value of the underlying property from [state]. */ + abstract fun get(state: SpringState): Float + + /** Update's the [value] of the underlying property inside [state]. */ + abstract fun setValue(state: SpringState, value: Float) + } + + interface Animation { + /** Start the animation. */ + fun start() + + /** Cancel the animation. */ + fun cancel() + } + + @VisibleForTesting + class InterpolatedAnimation(@get:VisibleForTesting val animator: Animator) : Animation { + override fun start() { + animator.start() + } + + override fun cancel() { + animator.cancel() + } + } + + @VisibleForTesting + class MultiSpringAnimation + internal constructor( + @get:VisibleForTesting val springX: SpringAnimation, + @get:VisibleForTesting val springY: SpringAnimation, + @get:VisibleForTesting val springScale: SpringAnimation, + private val springState: SpringState, + private val startFrameTime: Long, + private val onAnimationStart: Runnable, + ) : Animation { + @get:VisibleForTesting + val isDone + get() = springState.isDone + + override fun start() { + onAnimationStart.run() + + // If no start frame time is provided, we start the springs normally. + if (startFrameTime < 0) { + startSprings() + return + } + + // This function is not guaranteed to be called inside a frame. We try to access the + // frame time immediately, but if we're not inside a frame this will throw an exception. + // We must then post a callback to be run at the beginning of the next frame. + try { + initAndStartSprings(Choreographer.getInstance().frameTime) + } catch (_: IllegalStateException) { + Choreographer.getInstance().postFrameCallback { frameTimeNanos -> + initAndStartSprings(frameTimeNanos / TimeUtils.NANOS_PER_MS) + } + } + } + + private fun initAndStartSprings(frameTime: Long) { + // Initialize the spring as if it had started at the time that its start state + // was created. + springX.doAnimationFrame(startFrameTime) + springY.doAnimationFrame(startFrameTime) + springScale.doAnimationFrame(startFrameTime) + // Move the spring time forward to the current frame, so it updates its internal state + // following the initial momentum over the elapsed time. + springX.doAnimationFrame(frameTime) + springY.doAnimationFrame(frameTime) + springScale.doAnimationFrame(frameTime) + // Actually start the spring. We do this after the previous calls because the framework + // doesn't like it when you call doAnimationFrame() after start() with an earlier time. + startSprings() + } + + private fun startSprings() { + springX.start() + springY.start() + springScale.start() + } + + override fun cancel() { + springX.cancel() + springY.cancel() + springScale.cancel() + } + } + + /** The timings (durations and delays) used by this animator. */ + data class Timings( + /** The total duration of the animation. */ + val totalDuration: Long, + + /** The time to wait before fading out the expanding content. */ + val contentBeforeFadeOutDelay: Long, + + /** The duration of the expanding content fade out. */ + val contentBeforeFadeOutDuration: Long, + + /** + * The time to wait before fading in the expanded content (usually an activity or dialog + * window). + */ + val contentAfterFadeInDelay: Long, + + /** The duration of the expanded content fade in. */ + val contentAfterFadeInDuration: Long, + ) + + /** + * The timings (durations and delays) used by the multi-spring animator. These are expressed as + * fractions of 1, similar to how the progress of an animator can be expressed as a float value + * between 0 and 1. + */ + class SpringTimings( + /** The portion of animation to wait before fading out the expanding content. */ + val contentBeforeFadeOutDelay: Float, + + /** The portion of animation during which the expanding content fades out. */ + val contentBeforeFadeOutDuration: Float, + + /** The portion of animation to wait before fading in the expanded content. */ + val contentAfterFadeInDelay: Float, + + /** The portion of animation during which the expanded content fades in. */ + val contentAfterFadeInDuration: Float, + ) + + /** The interpolators used by this animator. */ + data class Interpolators( + /** The interpolator used for the Y position, width, height and corner radius. */ + val positionInterpolator: Interpolator, + + /** + * The interpolator used for the X position. This can be different than + * [positionInterpolator] to create an arc-path during the animation. + */ + val positionXInterpolator: Interpolator = positionInterpolator, + + /** The interpolator used when fading out the expanding content. */ + val contentBeforeFadeOutInterpolator: Interpolator, + + /** The interpolator used when fading in the expanded content. */ + val contentAfterFadeInInterpolator: Interpolator, + ) + + /** The parameters (stiffnesses and damping ratios) used by the multi-spring animator. */ + data class SpringParams( + // Parameters for the X position spring. + val centerXStiffness: Float, + val centerXDampingRatio: Float, + + // Parameters for the Y position spring. + val centerYStiffness: Float, + val centerYDampingRatio: Float, + + // Parameters for the scale spring. + val scaleStiffness: Float, + val scaleDampingRatio: Float, + ) + + /** + * Start a transition animation controlled by [controller] towards [endState]. An intermediary + * layer with [windowBackgroundColor] will fade in then (optionally) fade out above the + * expanding view, and should be the same background color as the opening (or closing) window. + * + * If [fadeWindowBackgroundLayer] is true, then this intermediary layer will fade out during the + * second half of the animation (if [Controller.isLaunching] or fade in during the first half of + * the animation (if ![Controller.isLaunching]), and will have SRC blending mode (ultimately + * punching a hole in the [transition container][Controller.transitionContainer]) iff [drawHole] + * is true. + * + * TODO(b/397646693): remove drawHole altogether. + * + * If [startVelocity] (expressed in pixels per second) is not null, a multi-spring animation + * using it for the initial momentum will be used instead of the default interpolators. In this + * case, [startFrameTime] (if non-negative) represents the frame time at which the springs + * should be started. + */ + fun startAnimation( + controller: Controller, + endState: State, + windowBackgroundColor: Int, + fadeWindowBackgroundLayer: Boolean = true, + drawHole: Boolean = false, + startVelocity: PointF? = null, + startFrameTime: Long = -1, + ): Animation { + if (!controller.isLaunching) assertReturnAnimations() + if (startVelocity != null) assertLongLivedReturnAnimations() + + // We add an extra layer with the same color as the dialog/app splash screen background + // color, which is usually the same color of the app background. We first fade in this layer + // to hide the expanding view, then we fade it out with SRC mode to draw a hole in the + // transition container and reveal the opening window. + val windowBackgroundLayer = + GradientDrawable().apply { + setColor(windowBackgroundColor) + alpha = 0 + } + + return createAnimation( + controller, + controller.createAnimatorState(), + endState, + windowBackgroundLayer, + fadeWindowBackgroundLayer, + drawHole, + startVelocity, + startFrameTime, + ) + .apply { start() } + } + + @VisibleForTesting + fun createAnimation( + controller: Controller, + startState: State, + endState: State, + windowBackgroundLayer: GradientDrawable, + fadeWindowBackgroundLayer: Boolean = true, + drawHole: Boolean = false, + startVelocity: PointF? = null, + startFrameTime: Long = -1, + ): Animation { + val transitionContainer = controller.transitionContainer + val transitionContainerOverlay = transitionContainer.overlay + val openingWindowSyncView = controller.openingWindowSyncView + val openingWindowSyncViewOverlay = openingWindowSyncView?.overlay + + // Whether we should move the [windowBackgroundLayer] into the overlay of + // [Controller.openingWindowSyncView] once the opening app window starts to be visible, or + // from it once the closing app window stops being visible. + // This is necessary as a one-off sync so we can avoid syncing at every frame, especially + // in complex interactions like launching an activity from a dialog. See + // b/214961273#comment2 for more details. + val moveBackgroundLayerWhenAppVisibilityChanges = + openingWindowSyncView != null && + openingWindowSyncView.viewRootImpl != controller.transitionContainer.viewRootImpl + + return if (startVelocity != null && springTimings != null && springInterpolators != null) { + createSpringAnimation( + controller, + startState, + endState, + startVelocity, + startFrameTime, + windowBackgroundLayer, + transitionContainer, + transitionContainerOverlay, + openingWindowSyncView, + openingWindowSyncViewOverlay, + fadeWindowBackgroundLayer, + drawHole, + moveBackgroundLayerWhenAppVisibilityChanges, + ) + } else { + createInterpolatedAnimation( + controller, + startState, + endState, + windowBackgroundLayer, + transitionContainer, + transitionContainerOverlay, + openingWindowSyncView, + openingWindowSyncViewOverlay, + fadeWindowBackgroundLayer, + drawHole, + moveBackgroundLayerWhenAppVisibilityChanges, + ) + } + } + + /** + * Creates an interpolator-based animator that uses [timings] and [interpolators] to calculate + * the new bounds and corner radiuses at each frame. + */ + private fun createInterpolatedAnimation( + controller: Controller, + state: State, + endState: State, + windowBackgroundLayer: GradientDrawable, + transitionContainer: View, + transitionContainerOverlay: ViewGroupOverlay, + openingWindowSyncView: View? = null, + openingWindowSyncViewOverlay: ViewOverlay? = null, + fadeWindowBackgroundLayer: Boolean = true, + drawHole: Boolean = false, + moveBackgroundLayerWhenAppVisibilityChanges: Boolean = false, + ): Animation { + // Start state. + val startTop = state.top + val startBottom = state.bottom + val startLeft = state.left + val startRight = state.right + val startCenterX = (startLeft + startRight) / 2f + val startWidth = startRight - startLeft + val startTopCornerRadius = state.topCornerRadius + val startBottomCornerRadius = state.bottomCornerRadius + + // End state. + var endTop = endState.top + var endBottom = endState.bottom + var endLeft = endState.left + var endRight = endState.right + var endCenterX = (endLeft + endRight) / 2f + var endWidth = endRight - endLeft + val endTopCornerRadius = endState.topCornerRadius + val endBottomCornerRadius = endState.bottomCornerRadius + + fun maybeUpdateEndState() { + if ( + endTop != endState.top || + endBottom != endState.bottom || + endLeft != endState.left || + endRight != endState.right + ) { + endTop = endState.top + endBottom = endState.bottom + endLeft = endState.left + endRight = endState.right + endCenterX = (endLeft + endRight) / 2f + endWidth = endRight - endLeft + } + } + + val isExpandingFullyAbove = isExpandingFullyAbove(transitionContainer, endState) + var movedBackgroundLayer = false + + // Update state. + val animator = ValueAnimator.ofFloat(0f, 1f) + animator.duration = timings.totalDuration + animator.interpolator = LINEAR + + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationStart(animation: Animator, isReverse: Boolean) { + onAnimationStart( + controller, + isExpandingFullyAbove, + windowBackgroundLayer, + transitionContainerOverlay, + openingWindowSyncViewOverlay, + ) + } + + override fun onAnimationEnd(animation: Animator) { + onAnimationEnd( + controller, + isExpandingFullyAbove, + windowBackgroundLayer, + transitionContainerOverlay, + openingWindowSyncViewOverlay, + moveBackgroundLayerWhenAppVisibilityChanges, + ) + } + } + ) + + animator.addUpdateListener { animation -> + maybeUpdateEndState() + + // TODO(b/184121838): Use reverse interpolators to get the same path/arc as the non + // reversed animation. + val linearProgress = animation.animatedFraction + val progress = interpolators.positionInterpolator.getInterpolation(linearProgress) + val xProgress = interpolators.positionXInterpolator.getInterpolation(linearProgress) + + val xCenter = MathUtils.lerp(startCenterX, endCenterX, xProgress) + val halfWidth = MathUtils.lerp(startWidth, endWidth, progress) / 2f + + state.top = MathUtils.lerp(startTop, endTop, progress).roundToInt() + state.bottom = MathUtils.lerp(startBottom, endBottom, progress).roundToInt() + state.left = (xCenter - halfWidth).roundToInt() + state.right = (xCenter + halfWidth).roundToInt() + + state.topCornerRadius = + MathUtils.lerp(startTopCornerRadius, endTopCornerRadius, progress) + state.bottomCornerRadius = + MathUtils.lerp(startBottomCornerRadius, endBottomCornerRadius, progress) + + state.visible = checkVisibility(timings, linearProgress, controller.isLaunching) + + if (!movedBackgroundLayer) { + movedBackgroundLayer = + maybeMoveBackgroundLayer( + controller, + state, + windowBackgroundLayer, + transitionContainer, + transitionContainerOverlay, + openingWindowSyncView, + openingWindowSyncViewOverlay, + moveBackgroundLayerWhenAppVisibilityChanges, + ) + } + + val container = + if (movedBackgroundLayer) { + openingWindowSyncView!! + } else { + controller.transitionContainer + } + applyStateToWindowBackgroundLayer( + windowBackgroundLayer, + state, + linearProgress, + container, + fadeWindowBackgroundLayer, + drawHole, + controller.isLaunching, + useSpring = false, + ) + + controller.onTransitionAnimationProgress(state, progress, linearProgress) + } + + return InterpolatedAnimation(animator) + } + + /** + * Creates a compound animator made up of three springs: one for the center x position, one for + * the center-y position, and one for the overall scale. + * + * This animator uses [springTimings] and [springInterpolators] for opacity, based on the scale + * progress. + */ + private fun createSpringAnimation( + controller: Controller, + startState: State, + endState: State, + startVelocity: PointF, + startFrameTime: Long, + windowBackgroundLayer: GradientDrawable, + transitionContainer: View, + transitionContainerOverlay: ViewGroupOverlay, + openingWindowSyncView: View?, + openingWindowSyncViewOverlay: ViewOverlay?, + fadeWindowBackgroundLayer: Boolean = true, + drawHole: Boolean = false, + moveBackgroundLayerWhenAppVisibilityChanges: Boolean = false, + ): Animation { + var springX: SpringAnimation? = null + var springY: SpringAnimation? = null + var targetX = endState.centerX + var targetY = endState.centerY + + var movedBackgroundLayer = false + + fun maybeUpdateEndState() { + if (endState.centerX != targetX && endState.centerY != targetY) { + targetX = endState.centerX + targetY = endState.centerY + + springX?.animateToFinalPosition(targetX) + springY?.animateToFinalPosition(targetY) + } + } + + fun updateProgress(state: SpringState) { + if ( + !(state.isCenterXUpdated || state.isCenterXDone) || + !(state.isCenterYUpdated || state.isCenterYDone) || + !(state.isScaleUpdated || state.isScaleDone) + ) { + // Because all three springs use the same update method, we only actually update + // when all properties have received their new value (which could be unchanged from + // the previous one), avoiding two redundant calls per frame. + return + } + + // Reset the update flags. + state.isCenterXUpdated = false + state.isCenterYUpdated = false + state.isScaleUpdated = false + + // Current scale-based values, that will be used to find the new animation bounds. + val width = + MathUtils.lerp(startState.width.toFloat(), endState.width.toFloat(), state.scale) + val height = + MathUtils.lerp(startState.height.toFloat(), endState.height.toFloat(), state.scale) + + val newState = + State( + left = (state.centerX - width / 2).toInt(), + top = (state.centerY - height / 2).toInt(), + right = (state.centerX + width / 2).toInt(), + bottom = (state.centerY + height / 2).toInt(), + topCornerRadius = + MathUtils.lerp( + startState.topCornerRadius, + endState.topCornerRadius, + state.scale, + ), + bottomCornerRadius = + MathUtils.lerp( + startState.bottomCornerRadius, + endState.bottomCornerRadius, + state.scale, + ), + ) + .apply { + visible = checkVisibility(timings, state.scale, controller.isLaunching) + } + + if (!movedBackgroundLayer) { + movedBackgroundLayer = + maybeMoveBackgroundLayer( + controller, + newState, + windowBackgroundLayer, + transitionContainer, + transitionContainerOverlay, + openingWindowSyncView, + openingWindowSyncViewOverlay, + moveBackgroundLayerWhenAppVisibilityChanges, + ) + } + + val container = + if (movedBackgroundLayer) { + openingWindowSyncView!! + } else { + controller.transitionContainer + } + applyStateToWindowBackgroundLayer( + windowBackgroundLayer, + newState, + state.scale, + container, + fadeWindowBackgroundLayer, + drawHole, + isLaunching = false, + useSpring = true, + ) + + controller.onTransitionAnimationProgress(newState, state.scale, state.scale) + + maybeUpdateEndState() + } + + val springState = SpringState(centerX = startState.centerX, centerY = startState.centerY) + val isExpandingFullyAbove = isExpandingFullyAbove(transitionContainer, endState) + + /** End listener for each spring, which only does the end work if all springs are done. */ + fun onAnimationEnd() { + if (!springState.isDone) return + onAnimationEnd( + controller, + isExpandingFullyAbove, + windowBackgroundLayer, + transitionContainerOverlay, + openingWindowSyncViewOverlay, + moveBackgroundLayerWhenAppVisibilityChanges, + ) + } + + springX = + SpringAnimation( + springState, + buildProperty(SpringProperty.CENTER_X) { state -> updateProgress(state) }, + ) + .apply { + spring = + SpringForce(endState.centerX).apply { + stiffness = springParams.centerXStiffness + dampingRatio = springParams.centerXDampingRatio + } + + setStartValue(startState.centerX) + setStartVelocity(startVelocity.x) + setMinValue(min(startState.centerX, endState.centerX)) + setMaxValue(max(startState.centerX, endState.centerX)) + + addEndListener { _, _, _, _ -> + springState.isCenterXDone = true + onAnimationEnd() + } + } + springY = + SpringAnimation( + springState, + buildProperty(SpringProperty.CENTER_Y) { state -> updateProgress(state) }, + ) + .apply { + spring = + SpringForce(endState.centerY).apply { + stiffness = springParams.centerYStiffness + dampingRatio = springParams.centerYDampingRatio + } + + setStartValue(startState.centerY) + setStartVelocity(startVelocity.y) + setMinValue(min(startState.centerY, endState.centerY)) + setMaxValue(max(startState.centerY, endState.centerY)) + + addEndListener { _, _, _, _ -> + springState.isCenterYDone = true + onAnimationEnd() + } + } + val springScale = + SpringAnimation( + springState, + buildProperty(SpringProperty.SCALE) { state -> updateProgress(state) }, + ) + .apply { + spring = + SpringForce(1f).apply { + stiffness = springParams.scaleStiffness + dampingRatio = springParams.scaleDampingRatio + } + + setStartValue(0f) + setMaxValue(1f) + setMinimumVisibleChange(abs(1f / startState.height)) + + addEndListener { _, _, _, _ -> + springState.isScaleDone = true + onAnimationEnd() + } + } + + return MultiSpringAnimation(springX, springY, springScale, springState, startFrameTime) { + onAnimationStart( + controller, + isExpandingFullyAbove, + windowBackgroundLayer, + transitionContainerOverlay, + openingWindowSyncViewOverlay, + ) + } + } + + private fun onAnimationStart( + controller: Controller, + isExpandingFullyAbove: Boolean, + windowBackgroundLayer: GradientDrawable, + transitionContainerOverlay: ViewGroupOverlay, + openingWindowSyncViewOverlay: ViewOverlay?, + ) { + if (DEBUG) { + Log.d(TAG, "Animation started") + } + controller.onTransitionAnimationStart(isExpandingFullyAbove) + + // Add the drawable to the transition container overlay. Overlays always draw + // drawables after views, so we know that it will be drawn above any view added + // by the controller. + if (controller.isLaunching || openingWindowSyncViewOverlay == null) { + transitionContainerOverlay.add(windowBackgroundLayer) + } else { + openingWindowSyncViewOverlay.add(windowBackgroundLayer) + } + } + + private fun onAnimationEnd( + controller: Controller, + isExpandingFullyAbove: Boolean, + windowBackgroundLayer: GradientDrawable, + transitionContainerOverlay: ViewGroupOverlay, + openingWindowSyncViewOverlay: ViewOverlay?, + moveBackgroundLayerWhenAppVisibilityChanges: Boolean, + ) { + if (DEBUG) { + Log.d(TAG, "Animation ended") + } + + val onEnd = { + controller.onTransitionAnimationEnd(isExpandingFullyAbove) + transitionContainerOverlay.remove(windowBackgroundLayer) + + if (moveBackgroundLayerWhenAppVisibilityChanges && controller.isLaunching) { + openingWindowSyncViewOverlay?.remove(windowBackgroundLayer) + } + } + if (Flags.sceneContainer() || !controller.isLaunching) { + // onAnimationEnd is called at the end of the animation, on a Choreographer animation + // tick. During dialog launches, the following calls will move the animated content from + // the dialog overlay back to its original position, and this change must be reflected + // in the next frame given that we then sync the next frame of both the content and + // dialog ViewRoots. During SysUI activity launches, we will instantly collapse the + // shade at the end of the transition. However, if those are rendered by Compose, whose + // compositions are also scheduled on a Choreographer frame, any state change made + // *right now* won't be reflected in the next frame given that a Choreographer frame + // can't schedule another and have it happen in the same frame. So we post the forwarded + // calls to [Controller.onLaunchAnimationEnd] in the main executor, leaving this + // Choreographer frame, ensuring that any state change applied by + // onTransitionAnimationEnd() will be reflected in the same frame. + mainExecutor.execute { onEnd() } + } else { + onEnd() + } + } + + /** Returns whether is the controller's view should be visible with the given [timings]. */ + private fun checkVisibility(timings: Timings, progress: Float, isLaunching: Boolean): Boolean { + return if (isLaunching) { + // The expanding view can/should be hidden once it is completely covered by the opening + // window. + getProgress( + timings, + progress, + timings.contentBeforeFadeOutDelay, + timings.contentBeforeFadeOutDuration, + ) < 1 + } else { + // The shrinking view can/should be hidden while it is completely covered by the closing + // window. + getProgress( + timings, + progress, + timings.contentAfterFadeInDelay, + timings.contentAfterFadeInDuration, + ) > 0 + } + } + + /** + * If necessary, moves the background layer from the view container's overlay to the window sync + * view overlay, or vice versa. + * + * @return true if the background layer vwas moved, false otherwise. + */ + private fun maybeMoveBackgroundLayer( + controller: Controller, + state: State, + windowBackgroundLayer: GradientDrawable, + transitionContainer: View, + transitionContainerOverlay: ViewGroupOverlay, + openingWindowSyncView: View?, + openingWindowSyncViewOverlay: ViewOverlay?, + moveBackgroundLayerWhenAppVisibilityChanges: Boolean, + ): Boolean { + if ( + controller.isLaunching && moveBackgroundLayerWhenAppVisibilityChanges && !state.visible + ) { + // The expanding view is not visible, so the opening app is visible. If this is the + // first frame when it happens, trigger a one-off sync and move the background layer + // in its new container. + transitionContainerOverlay.remove(windowBackgroundLayer) + openingWindowSyncViewOverlay!!.add(windowBackgroundLayer) + + ViewRootSync.synchronizeNextDraw( + transitionContainer, + openingWindowSyncView!!, + then = {}, + ) + + return true + } else if ( + !controller.isLaunching && moveBackgroundLayerWhenAppVisibilityChanges && state.visible + ) { + // The contracting view is now visible, so the closing app is not. If this is the first + // frame when it happens, trigger a one-off sync and move the background layer in its + // new container. + openingWindowSyncViewOverlay!!.remove(windowBackgroundLayer) + transitionContainerOverlay.add(windowBackgroundLayer) + + ViewRootSync.synchronizeNextDraw( + openingWindowSyncView!!, + transitionContainer, + then = {}, + ) + + return true + } + + return false + } + + /** Return whether we are expanding fully above the [transitionContainer]. */ + internal fun isExpandingFullyAbove(transitionContainer: View, endState: State): Boolean { + transitionContainer.getLocationOnScreen(transitionContainerLocation) + return endState.top <= transitionContainerLocation[1] && + endState.bottom >= transitionContainerLocation[1] + transitionContainer.height && + endState.left <= transitionContainerLocation[0] && + endState.right >= transitionContainerLocation[0] + transitionContainer.width + } + + private fun applyStateToWindowBackgroundLayer( + drawable: GradientDrawable, + state: State, + linearProgress: Float, + transitionContainer: View, + fadeWindowBackgroundLayer: Boolean, + drawHole: Boolean, + isLaunching: Boolean, + useSpring: Boolean, + ) { + // Update position. + transitionContainer.getLocationOnScreen(transitionContainerLocation) + drawable.setBounds( + state.left - transitionContainerLocation[0], + state.top - transitionContainerLocation[1], + state.right - transitionContainerLocation[0], + state.bottom - transitionContainerLocation[1], + ) + + // Update radius. + cornerRadii[0] = state.topCornerRadius + cornerRadii[1] = state.topCornerRadius + cornerRadii[2] = state.topCornerRadius + cornerRadii[3] = state.topCornerRadius + cornerRadii[4] = state.bottomCornerRadius + cornerRadii[5] = state.bottomCornerRadius + cornerRadii[6] = state.bottomCornerRadius + cornerRadii[7] = state.bottomCornerRadius + drawable.cornerRadii = cornerRadii + + val interpolators: Interpolators + val fadeInProgress: Float + val fadeOutProgress: Float + if (useSpring) { + interpolators = springInterpolators!! + val timings = springTimings!! + fadeInProgress = + getProgress( + linearProgress, + timings.contentBeforeFadeOutDelay, + timings.contentBeforeFadeOutDuration, + ) + fadeOutProgress = + getProgress( + linearProgress, + timings.contentAfterFadeInDelay, + timings.contentAfterFadeInDuration, + ) + } else { + interpolators = this.interpolators + fadeInProgress = + getProgress( + timings, + linearProgress, + timings.contentBeforeFadeOutDelay, + timings.contentBeforeFadeOutDuration, + ) + fadeOutProgress = + getProgress( + timings, + linearProgress, + timings.contentAfterFadeInDelay, + timings.contentAfterFadeInDuration, + ) + } + + // We first fade in the background layer to hide the expanding view, then fade it out with + // SRC mode to draw a hole punch in the status bar and reveal the opening window (if + // needed). If !isLaunching, the reverse happens. + if (isLaunching) { + if (fadeInProgress < 1) { + val alpha = + interpolators.contentBeforeFadeOutInterpolator.getInterpolation(fadeInProgress) + drawable.alpha = (alpha * 0xFF).roundToInt() + } else if (fadeWindowBackgroundLayer) { + val alpha = + 1 - + interpolators.contentAfterFadeInInterpolator.getInterpolation( + fadeOutProgress + ) + drawable.alpha = (alpha * 0xFF).roundToInt() + + if (drawHole) { + drawable.setXfermode(SRC_MODE) + } + } else if (moveTransitionAnimationLayer() && fadeOutProgress >= 1 && drawHole) { + // If [drawHole] is true, draw it once the opening content is done fading in. + drawable.alpha = 0x00 + drawable.setXfermode(SRC_MODE) + } else { + drawable.alpha = 0xFF + } + } else { + if (fadeInProgress < 1 && fadeWindowBackgroundLayer) { + val alpha = + interpolators.contentBeforeFadeOutInterpolator.getInterpolation(fadeInProgress) + drawable.alpha = (alpha * 0xFF).roundToInt() + + if (drawHole) { + drawable.setXfermode(SRC_MODE) + } + } else { + val alpha = + 1 - + interpolators.contentAfterFadeInInterpolator.getInterpolation( + fadeOutProgress + ) + drawable.alpha = (alpha * 0xFF).roundToInt() + drawable.setXfermode(null) + } + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/ViewDialogTransitionAnimatorController.kt b/systemUI/anim/src/com/android/systemui/animation/ViewDialogTransitionAnimatorController.kt new file mode 100644 index 0000000000..307bc95941 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/ViewDialogTransitionAnimatorController.kt @@ -0,0 +1,128 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.util.Log +import android.view.GhostView +import android.view.View +import android.view.ViewGroup +import android.view.ViewRootImpl +import com.android.internal.jank.InteractionJankMonitor + +private const val TAG = "ViewDialogTransitionAnimatorController" + +/** A [DialogTransitionAnimator.Controller] that can animate a [View] from/to a dialog. */ +class ViewDialogTransitionAnimatorController +internal constructor( + private val source: View, + override val cuj: DialogCuj?, +) : DialogTransitionAnimator.Controller { + override val viewRoot: ViewRootImpl? + get() = source.viewRootImpl + + override val sourceIdentity: Any = source + + override fun startDrawingInOverlayOf(viewGroup: ViewGroup) { + // Delay the calls to `source.setVisibility()` during the animation. This must be called + // before `GhostView.addGhost()` is called because the latter will change the *transition* + // visibility, which won't be blocked and will affect the normal View visibility that is + // saved by `setShouldBlockVisibilityChanges()` for a later restoration. + (source as? LaunchableView)?.setShouldBlockVisibilityChanges(true) + + // Create a temporary ghost of the source (which will make it invisible) and add it + // to the host dialog. + if (source.parent !is ViewGroup) { + // This should usually not happen, but let's make sure we don't call GhostView.addGhost + // and crash if the view was detached right before we started the animation. + Log.w(TAG, "source was detached right before drawing was moved to overlay") + } else { + GhostView.addGhost(source, viewGroup) + } + } + + override fun stopDrawingInOverlay() { + // Note: here we should remove the ghost from the overlay, but in practice this is + // already done by the transition controller created below. + + if (source is LaunchableView) { + // Make sure we allow the source to change its visibility again and restore its previous + // value. + source.setShouldBlockVisibilityChanges(false) + } else { + // We made the source invisible earlier, so let's make it visible again. + source.visibility = View.VISIBLE + } + } + + override fun createTransitionController(): TransitionAnimator.Controller { + val delegate = GhostedViewTransitionAnimatorController(source) + return object : TransitionAnimator.Controller by delegate { + override fun onTransitionAnimationStart(isExpandingFullyAbove: Boolean) { + // Remove the temporary ghost added by [startDrawingInOverlayOf]. Another + // ghost (that ghosts only the source content, and not its background) will + // be added right after this by the delegate and will be animated. + GhostView.removeGhost(source) + delegate.onTransitionAnimationStart(isExpandingFullyAbove) + } + + override fun onTransitionAnimationEnd(isExpandingFullyAbove: Boolean) { + delegate.onTransitionAnimationEnd(isExpandingFullyAbove) + + // At this point the view visibility is restored by the delegate, so we delay the + // visibility changes again and make it invisible while the dialog is shown. + if (source is LaunchableView) { + source.setShouldBlockVisibilityChanges(true) + source.setTransitionVisibility(View.INVISIBLE) + } else { + source.visibility = View.INVISIBLE + } + } + } + } + + override fun createExitController(): TransitionAnimator.Controller { + return GhostedViewTransitionAnimatorController(source) + } + + override fun shouldAnimateExit(): Boolean { + // The source should be invisible by now, if it's not then something else changed + // its visibility and we probably don't want to run the animation. + if (source.visibility != View.INVISIBLE) { + return false + } + + return source.isAttachedToWindow && ((source.parent as? View)?.isShown ?: true) + } + + override fun onExitAnimationCancelled() { + if (source is LaunchableView) { + // Make sure we allow the source to change its visibility again. + source.setShouldBlockVisibilityChanges(false) + } else { + // If the view is invisible it's probably because of us, so we make it visible + // again. + if (source.visibility == View.INVISIBLE) { + source.visibility = View.VISIBLE + } + } + } + + override fun jankConfigurationBuilder(): InteractionJankMonitor.Configuration.Builder? { + val type = cuj?.cujType ?: return null + return InteractionJankMonitor.Configuration.Builder.withView(type, source) + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/ViewHierarchyAnimator.kt b/systemUI/anim/src/com/android/systemui/animation/ViewHierarchyAnimator.kt new file mode 100644 index 0000000000..300bdf2ffb --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/ViewHierarchyAnimator.kt @@ -0,0 +1,1173 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.ObjectAnimator +import android.animation.PropertyValuesHolder +import android.animation.ValueAnimator +import android.util.IntProperty +import android.view.View +import android.view.ViewGroup +import android.view.animation.Interpolator +import com.android.app.animation.Interpolators +import kotlin.math.max +import kotlin.math.min + +/** + * A class that allows changes in bounds within a view hierarchy to animate seamlessly between the + * start and end state. + */ +class ViewHierarchyAnimator { + companion object { + /** Default values for the animation. These can all be overridden at call time. */ + private const val DEFAULT_DURATION = 500L + private val DEFAULT_INTERPOLATOR = Interpolators.STANDARD + private val DEFAULT_ADDITION_INTERPOLATOR = Interpolators.STANDARD_DECELERATE + private val DEFAULT_REMOVAL_INTERPOLATOR = Interpolators.STANDARD_ACCELERATE + private val DEFAULT_FADE_IN_INTERPOLATOR = Interpolators.ALPHA_IN + + /** The properties used to animate the view bounds. */ + private val PROPERTIES = + mapOf( + Bound.LEFT to createViewProperty(Bound.LEFT), + Bound.TOP to createViewProperty(Bound.TOP), + Bound.RIGHT to createViewProperty(Bound.RIGHT), + Bound.BOTTOM to createViewProperty(Bound.BOTTOM), + ) + + private fun createViewProperty(bound: Bound): IntProperty<View> { + return object : IntProperty<View>(bound.label) { + override fun setValue(view: View, value: Int) { + setBound(view, bound, value) + } + + override fun get(view: View): Int { + return getBound(view, bound) ?: bound.getValue(view) + } + } + } + + /** + * Instruct the animator to watch for changes to the layout of [rootView] and its children + * and animate them. It uses the given [interpolator] and [duration]. + * + * If a new layout change happens while an animation is already in progress, the animation + * is updated to continue from the current values to the new end state. + * + * By default, child views whole layout changes are animated as well. However, this can be + * controlled by [animateChildren]. If children are included, a set of [excludedViews] can + * be passed. If any dependent view from [rootView] matches an entry in this set, changes to + * that view will not be animated. + * + * The animator continues to respond to layout changes until [stopAnimating] is called. + * + * Successive calls to this method override the previous settings ([interpolator] and + * [duration]). The changes take effect on the next animation. + * + * Returns true if the [rootView] is already visible and will be animated, false otherwise. + * To animate the addition of a view, see [animateAddition]. + */ + @JvmOverloads + fun animate( + rootView: View, + interpolator: Interpolator = DEFAULT_INTERPOLATOR, + duration: Long = DEFAULT_DURATION, + animateChildren: Boolean = true, + excludedViews: Set<View> = emptySet(), + ): Boolean { + return animate( + rootView, + interpolator, + duration, + ephemeral = false, + animateChildren = animateChildren, + excludedViews = excludedViews, + ) + } + + /** + * Like [animate], but only takes effect on the next layout update, then unregisters itself + * once the first animation is complete. + */ + @JvmOverloads + fun animateNextUpdate( + rootView: View, + interpolator: Interpolator = DEFAULT_INTERPOLATOR, + duration: Long = DEFAULT_DURATION, + animateChildren: Boolean = true, + excludedViews: Set<View> = emptySet(), + ): Boolean { + return animate( + rootView, + interpolator, + duration, + ephemeral = true, + animateChildren = animateChildren, + excludedViews = excludedViews, + ) + } + + private fun animate( + rootView: View, + interpolator: Interpolator, + duration: Long, + ephemeral: Boolean, + animateChildren: Boolean, + excludedViews: Set<View> = emptySet(), + ): Boolean { + if ( + !occupiesSpace( + rootView.visibility, + rootView.left, + rootView.top, + rootView.right, + rootView.bottom, + ) + ) { + return false + } + + val listener = createUpdateListener(interpolator, duration, ephemeral) + addListener( + rootView, + listener, + recursive = true, + animateChildren = animateChildren, + excludedViews = excludedViews, + ) + return true + } + + /** + * Returns a new [View.OnLayoutChangeListener] that when called triggers a layout animation + * using [interpolator] and [duration]. + * + * If [ephemeral] is true, the listener is unregistered after the first animation. Otherwise + * it keeps listening for further updates. + */ + private fun createUpdateListener( + interpolator: Interpolator, + duration: Long, + ephemeral: Boolean, + ): View.OnLayoutChangeListener { + return createListener(interpolator, duration, ephemeral) + } + + /** + * Instruct the animator to stop watching for changes to the layout of [rootView] and its + * children. + * + * Any animations already in progress continue until their natural conclusion. + */ + fun stopAnimating(rootView: View) { + recursivelyRemoveListener(rootView) + } + + /** + * Instruct the animator to watch for changes to the layout of [rootView] and its children, + * and animate the next time the hierarchy appears after not being visible. It uses the + * given [interpolator] and [duration]. + * + * The start state of the animation is controlled by [origin]. This value can be any of the + * four corners, any of the four edges, or the center of the view. If any margins are added + * on the side(s) of the origin, the translation of those margins can be included by + * specifying [includeMargins]. + * + * Returns true if the [rootView] is invisible and will be animated, false otherwise. To + * animate an already visible view, see [animate] and [animateNextUpdate]. + * + * Then animator unregisters itself once the first addition animation is complete. + * + * @param includeFadeIn true if the animator should also fade in the view and child views. + * @param fadeInInterpolator the interpolator to use when fading in the view. Unused if + * [includeFadeIn] is false. + * @param onAnimationEnd an optional runnable that will be run once the animation finishes, + * regardless of whether the animation is cancelled or finishes successfully. + */ + @JvmOverloads + fun animateAddition( + rootView: View, + origin: Hotspot = Hotspot.CENTER, + interpolator: Interpolator = DEFAULT_ADDITION_INTERPOLATOR, + duration: Long = DEFAULT_DURATION, + includeMargins: Boolean = false, + includeFadeIn: Boolean = false, + fadeInInterpolator: Interpolator = DEFAULT_FADE_IN_INTERPOLATOR, + onAnimationEnd: Runnable? = null, + ): Boolean { + if ( + occupiesSpace( + rootView.visibility, + rootView.left, + rootView.top, + rootView.right, + rootView.bottom, + ) + ) { + return false + } + + val listener = + createAdditionListener( + origin, + interpolator, + duration, + ignorePreviousValues = !includeMargins, + onAnimationEnd, + ) + addListener(rootView, listener, recursive = true) + + if (!includeFadeIn) { + return true + } + + if (rootView is ViewGroup) { + // First, fade in the container view + val containerDuration = duration / 6 + createAndStartFadeInAnimator( + rootView, + containerDuration, + startDelay = 0, + interpolator = fadeInInterpolator, + ) + + // Then, fade in the child views + val childDuration = duration / 3 + for (i in 0 until rootView.childCount) { + val view = rootView.getChildAt(i) + createAndStartFadeInAnimator( + view, + childDuration, + // Wait until the container fades in before fading in the children + startDelay = containerDuration, + interpolator = fadeInInterpolator, + ) + } + // For now, we don't recursively fade in additional sub views (e.g. grandchild + // views) since it hasn't been necessary, but we could add that functionality. + } else { + // Fade in the view during the first half of the addition + createAndStartFadeInAnimator( + rootView, + duration / 2, + startDelay = 0, + interpolator = fadeInInterpolator, + ) + } + + return true + } + + /** + * Returns a new [View.OnLayoutChangeListener] that on the next call triggers a layout + * addition animation from the given [origin], using [interpolator] and [duration]. + * + * If [ignorePreviousValues] is true, the animation will only span the area covered by the + * new bounds. Otherwise it will include the margins between the previous and new bounds. + */ + private fun createAdditionListener( + origin: Hotspot, + interpolator: Interpolator, + duration: Long, + ignorePreviousValues: Boolean, + onAnimationEnd: Runnable? = null, + ): View.OnLayoutChangeListener { + return createListener( + interpolator, + duration, + ephemeral = true, + origin = origin, + ignorePreviousValues = ignorePreviousValues, + onAnimationEnd, + ) + } + + /** + * Returns a new [View.OnLayoutChangeListener] that when called triggers a layout animation + * using [interpolator] and [duration]. + * + * If [ephemeral] is true, the listener is unregistered after the first animation. Otherwise + * it keeps listening for further updates. + * + * [origin] specifies whether the start values should be determined by a hotspot, and + * [ignorePreviousValues] controls whether the previous values should be taken into account. + */ + private fun createListener( + interpolator: Interpolator, + duration: Long, + ephemeral: Boolean, + origin: Hotspot? = null, + ignorePreviousValues: Boolean = false, + onAnimationEnd: Runnable? = null, + ): View.OnLayoutChangeListener { + return object : View.OnLayoutChangeListener { + override fun onLayoutChange( + view: View?, + left: Int, + top: Int, + right: Int, + bottom: Int, + previousLeft: Int, + previousTop: Int, + previousRight: Int, + previousBottom: Int, + ) { + if (view == null) return + + val startLeft = getBound(view, Bound.LEFT) ?: previousLeft + val startTop = getBound(view, Bound.TOP) ?: previousTop + val startRight = getBound(view, Bound.RIGHT) ?: previousRight + val startBottom = getBound(view, Bound.BOTTOM) ?: previousBottom + + (view.getTag(R.id.tag_animator) as? ObjectAnimator)?.cancel() + + if (!occupiesSpace(view.visibility, left, top, right, bottom)) { + setBound(view, Bound.LEFT, left) + setBound(view, Bound.TOP, top) + setBound(view, Bound.RIGHT, right) + setBound(view, Bound.BOTTOM, bottom) + return + } + + val startValues = + processStartValues( + origin, + left, + top, + right, + bottom, + startLeft, + startTop, + startRight, + startBottom, + ignorePreviousValues, + ) + val endValues = + mapOf( + Bound.LEFT to left, + Bound.TOP to top, + Bound.RIGHT to right, + Bound.BOTTOM to bottom, + ) + + val boundsToAnimate = mutableSetOf<Bound>() + if (startValues.getValue(Bound.LEFT) != left) boundsToAnimate.add(Bound.LEFT) + if (startValues.getValue(Bound.TOP) != top) boundsToAnimate.add(Bound.TOP) + if (startValues.getValue(Bound.RIGHT) != right) boundsToAnimate.add(Bound.RIGHT) + if (startValues.getValue(Bound.BOTTOM) != bottom) { + boundsToAnimate.add(Bound.BOTTOM) + } + + if (boundsToAnimate.isNotEmpty()) { + startAnimation( + view, + boundsToAnimate, + startValues, + endValues, + interpolator, + duration, + ephemeral, + onAnimationEnd, + ) + } + } + } + } + + /** + * Animates the removal of [rootView] and its children from the hierarchy. It uses the given + * [interpolator] and [duration]. + * + * The end state of the animation is controlled by [destination]. This value can be any of + * the four corners, any of the four edges, or the center of the view. If any margins are + * added on the side(s) of the [destination], the translation of those margins can be + * included by specifying [includeMargins]. + * + * @param onAnimationEnd an optional runnable that will be run once the animation finishes, + * regardless of whether the animation is cancelled or finishes successfully. + */ + @JvmOverloads + fun animateRemoval( + rootView: View, + destination: Hotspot = Hotspot.CENTER, + interpolator: Interpolator = DEFAULT_REMOVAL_INTERPOLATOR, + duration: Long = DEFAULT_DURATION, + includeMargins: Boolean = false, + onAnimationEnd: Runnable? = null, + ): Boolean { + if ( + !occupiesSpace( + rootView.visibility, + rootView.left, + rootView.top, + rootView.right, + rootView.bottom, + ) + ) { + return false + } + + val parent = rootView.parent as ViewGroup + + // Ensure that rootView's siblings animate nicely around the removal. + val listener = createUpdateListener(interpolator, duration, ephemeral = true) + for (i in 0 until parent.childCount) { + val child = parent.getChildAt(i) + if (child == rootView) continue + addListener(child, listener, recursive = false) + } + + val viewHasSiblings = parent.childCount > 1 + if (viewHasSiblings) { + // Remove the view so that a layout update is triggered for the siblings and they + // animate to their next position while the view's removal is also animating. + parent.removeView(rootView) + // By adding the view to the overlay, we can animate it while it isn't part of the + // view hierarchy. It is correctly positioned because we have its previous bounds, + // and we set them manually during the animation. + parent.overlay.add(rootView) + } + // If this view has no siblings, the parent view may shrink to (0,0) size and mess + // up the animation if we immediately remove the view. So instead, we just leave the + // view in the real hierarchy until the animation finishes. + + val endRunnable = Runnable { + if (viewHasSiblings) { + parent.overlay.remove(rootView) + } else { + parent.removeView(rootView) + } + onAnimationEnd?.run() + } + + val startValues = + mapOf( + Bound.LEFT to rootView.left, + Bound.TOP to rootView.top, + Bound.RIGHT to rootView.right, + Bound.BOTTOM to rootView.bottom, + ) + val endValues = + processEndValuesForRemoval( + destination, + rootView, + rootView.left, + rootView.top, + rootView.right, + rootView.bottom, + includeMargins, + ) + + val boundsToAnimate = mutableSetOf<Bound>() + if (rootView.left != endValues.getValue(Bound.LEFT)) boundsToAnimate.add(Bound.LEFT) + if (rootView.top != endValues.getValue(Bound.TOP)) boundsToAnimate.add(Bound.TOP) + if (rootView.right != endValues.getValue(Bound.RIGHT)) boundsToAnimate.add(Bound.RIGHT) + if (rootView.bottom != endValues.getValue(Bound.BOTTOM)) { + boundsToAnimate.add(Bound.BOTTOM) + } + + startAnimation( + rootView, + boundsToAnimate, + startValues, + endValues, + interpolator, + duration, + ephemeral = true, + endRunnable, + ) + + if (rootView is ViewGroup) { + // Shift the children so they maintain a consistent position within the shrinking + // view. + shiftChildrenForRemoval(rootView, destination, endValues, interpolator, duration) + + // Fade out the children during the first half of the removal, so they don't clutter + // too much once the view becomes very small. Then we fade out the view itself, in + // case it has its own content and/or background. + val startAlphas = FloatArray(rootView.childCount) + for (i in 0 until rootView.childCount) { + startAlphas[i] = rootView.getChildAt(i).alpha + } + + val animator = ValueAnimator.ofFloat(1f, 0f) + animator.interpolator = Interpolators.ALPHA_OUT + animator.duration = duration / 2 + animator.addUpdateListener { animation -> + for (i in 0 until rootView.childCount) { + rootView.getChildAt(i).alpha = + (animation.animatedValue as Float) * startAlphas[i] + } + } + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + rootView + .animate() + .alpha(0f) + .setInterpolator(Interpolators.ALPHA_OUT) + .setDuration(duration / 2) + .start() + } + } + ) + animator.start() + } else { + // Fade out the view during the second half of the removal. + rootView + .animate() + .alpha(0f) + .setInterpolator(Interpolators.ALPHA_OUT) + .setDuration(duration / 2) + .setStartDelay(duration / 2) + .start() + } + + return true + } + + /** + * Animates the children of [rootView] so that its layout remains internally consistent as + * it shrinks towards [destination] and changes its bounds to [endValues]. + * + * Uses [interpolator] and [duration], which should match those of the removal animation. + */ + private fun shiftChildrenForRemoval( + rootView: ViewGroup, + destination: Hotspot, + endValues: Map<Bound, Int>, + interpolator: Interpolator, + duration: Long, + ) { + for (i in 0 until rootView.childCount) { + val child = rootView.getChildAt(i) + val childStartValues = + mapOf( + Bound.LEFT to child.left, + Bound.TOP to child.top, + Bound.RIGHT to child.right, + Bound.BOTTOM to child.bottom, + ) + val childEndValues = + processChildEndValuesForRemoval( + destination, + child.left, + child.top, + child.right, + child.bottom, + endValues.getValue(Bound.RIGHT) - endValues.getValue(Bound.LEFT), + endValues.getValue(Bound.BOTTOM) - endValues.getValue(Bound.TOP), + ) + + val boundsToAnimate = mutableSetOf<Bound>() + if (child.left != endValues.getValue(Bound.LEFT)) boundsToAnimate.add(Bound.LEFT) + if (child.top != endValues.getValue(Bound.TOP)) boundsToAnimate.add(Bound.TOP) + if (child.right != endValues.getValue(Bound.RIGHT)) boundsToAnimate.add(Bound.RIGHT) + if (child.bottom != endValues.getValue(Bound.BOTTOM)) { + boundsToAnimate.add(Bound.BOTTOM) + } + + startAnimation( + child, + boundsToAnimate, + childStartValues, + childEndValues, + interpolator, + duration, + ephemeral = true, + ) + } + } + + /** + * Returns whether the given [visibility] and bounds are consistent with a view being a + * contributing part of the hierarchy. + */ + private fun occupiesSpace( + visibility: Int, + left: Int, + top: Int, + right: Int, + bottom: Int, + ): Boolean { + return visibility != View.GONE && left != right && top != bottom + } + + /** + * Computes the actual starting values based on the requested [origin] and on + * [ignorePreviousValues]. + * + * If [origin] is null, the resolved start values will be the same as those passed in, or + * the same as the new values if [ignorePreviousValues] is true. If [origin] is not null, + * the start values are resolved based on it, and [ignorePreviousValues] controls whether or + * not newly introduced margins are included. + * + * Base case + * + * ``` + * 1) origin=TOP + * x---------x x---------x x---------x x---------x x---------x + * x---------x | | | | | | + * -> -> x---------x -> | | -> | | + * x---------x | | + * x---------x + * 2) origin=BOTTOM_LEFT + * x---------x + * x-------x | | + * -> -> x----x -> | | -> | | + * x--x | | | | | | + * x x--x x----x x-------x x---------x + * 3) origin=CENTER + * x---------x + * x-----x x-------x | | + * x -> x---x -> | | -> | | -> | | + * x-----x x-------x | | + * x---------x + * ``` + * + * In case the start and end values differ in the direction of the origin, and + * [ignorePreviousValues] is false, the previous values are used and a translation is + * included in addition to the view expansion. + * + * ``` + * origin=TOP_LEFT - (0,0,0,0) -> (30,30,70,70) + * x + * x--x + * x--x x----x + * -> -> | | -> x------x + * x----x | | + * | | + * x------x + * ``` + */ + private fun processStartValues( + origin: Hotspot?, + newLeft: Int, + newTop: Int, + newRight: Int, + newBottom: Int, + previousLeft: Int, + previousTop: Int, + previousRight: Int, + previousBottom: Int, + ignorePreviousValues: Boolean, + ): Map<Bound, Int> { + val startLeft = if (ignorePreviousValues) newLeft else previousLeft + val startTop = if (ignorePreviousValues) newTop else previousTop + val startRight = if (ignorePreviousValues) newRight else previousRight + val startBottom = if (ignorePreviousValues) newBottom else previousBottom + + var left = startLeft + var top = startTop + var right = startRight + var bottom = startBottom + + if (origin != null) { + left = + when (origin) { + Hotspot.CENTER -> (newLeft + newRight) / 2 + Hotspot.BOTTOM_LEFT, + Hotspot.LEFT, + Hotspot.TOP_LEFT -> min(startLeft, newLeft) + Hotspot.TOP, + Hotspot.BOTTOM -> newLeft + Hotspot.TOP_RIGHT, + Hotspot.RIGHT, + Hotspot.BOTTOM_RIGHT -> max(startRight, newRight) + } + top = + when (origin) { + Hotspot.CENTER -> (newTop + newBottom) / 2 + Hotspot.TOP_LEFT, + Hotspot.TOP, + Hotspot.TOP_RIGHT -> min(startTop, newTop) + Hotspot.LEFT, + Hotspot.RIGHT -> newTop + Hotspot.BOTTOM_RIGHT, + Hotspot.BOTTOM, + Hotspot.BOTTOM_LEFT -> max(startBottom, newBottom) + } + right = + when (origin) { + Hotspot.CENTER -> (newLeft + newRight) / 2 + Hotspot.TOP_RIGHT, + Hotspot.RIGHT, + Hotspot.BOTTOM_RIGHT -> max(startRight, newRight) + Hotspot.TOP, + Hotspot.BOTTOM -> newRight + Hotspot.BOTTOM_LEFT, + Hotspot.LEFT, + Hotspot.TOP_LEFT -> min(startLeft, newLeft) + } + bottom = + when (origin) { + Hotspot.CENTER -> (newTop + newBottom) / 2 + Hotspot.BOTTOM_RIGHT, + Hotspot.BOTTOM, + Hotspot.BOTTOM_LEFT -> max(startBottom, newBottom) + Hotspot.LEFT, + Hotspot.RIGHT -> newBottom + Hotspot.TOP_LEFT, + Hotspot.TOP, + Hotspot.TOP_RIGHT -> min(startTop, newTop) + } + } + + return mapOf( + Bound.LEFT to left, + Bound.TOP to top, + Bound.RIGHT to right, + Bound.BOTTOM to bottom, + ) + } + + /** + * Computes a removal animation's end values based on the requested [destination] and the + * view's starting bounds. + * + * Examples: + * ``` + * 1) destination=TOP + * x---------x x---------x x---------x x---------x x---------x + * | | | | | | x---------x + * | | -> | | -> x---------x -> -> + * | | x---------x + * x---------x + * 2) destination=BOTTOM_LEFT + * x---------x + * | | x-------x + * | | -> | | -> x----x -> -> + * | | | | | | x--x + * x---------x x-------x x----x x--x x + * 3) destination=CENTER + * x---------x + * | | x-------x x-----x + * | | -> | | -> | | -> x---x -> x + * | | x-------x x-----x + * x---------x + * 4) destination=TOP, includeMargins=true (and view has large top margin) + * x---------x + * x---------x + * x---------x x---------x + * x---------x | | + * x---------x | | x---------x + * | | | | + * | | -> x---------x -> -> -> + * | | + * x---------x + * ``` + */ + private fun processEndValuesForRemoval( + destination: Hotspot, + rootView: View, + left: Int, + top: Int, + right: Int, + bottom: Int, + includeMargins: Boolean = false, + ): Map<Bound, Int> { + val marginAdjustment = + if (includeMargins && (rootView.layoutParams is ViewGroup.MarginLayoutParams)) { + val marginLp = rootView.layoutParams as ViewGroup.MarginLayoutParams + DimenHolder( + left = marginLp.leftMargin, + top = marginLp.topMargin, + right = marginLp.rightMargin, + bottom = marginLp.bottomMargin, + ) + } else { + DimenHolder(0, 0, 0, 0) + } + + // These are the end values to use *if* this bound is part of the destination. + val endLeft = left - marginAdjustment.left + val endTop = top - marginAdjustment.top + val endRight = right + marginAdjustment.right + val endBottom = bottom + marginAdjustment.bottom + + // For the below calculations: We need to ensure that the destination bound and the + // bound *opposite* to the destination bound end at the same value, to ensure that the + // view has size 0 for that dimension. + // For example, + // - If destination=TOP, then endTop == endBottom. Left and right stay the same. + // - If destination=RIGHT, then endRight == endLeft. Top and bottom stay the same. + // - If destination=BOTTOM_LEFT, then endBottom == endTop AND endLeft == endRight. + + return when (destination) { + Hotspot.TOP -> + mapOf( + Bound.TOP to endTop, + Bound.BOTTOM to endTop, + Bound.LEFT to left, + Bound.RIGHT to right, + ) + Hotspot.TOP_RIGHT -> + mapOf( + Bound.TOP to endTop, + Bound.BOTTOM to endTop, + Bound.RIGHT to endRight, + Bound.LEFT to endRight, + ) + Hotspot.RIGHT -> + mapOf( + Bound.RIGHT to endRight, + Bound.LEFT to endRight, + Bound.TOP to top, + Bound.BOTTOM to bottom, + ) + Hotspot.BOTTOM_RIGHT -> + mapOf( + Bound.BOTTOM to endBottom, + Bound.TOP to endBottom, + Bound.RIGHT to endRight, + Bound.LEFT to endRight, + ) + Hotspot.BOTTOM -> + mapOf( + Bound.BOTTOM to endBottom, + Bound.TOP to endBottom, + Bound.LEFT to left, + Bound.RIGHT to right, + ) + Hotspot.BOTTOM_LEFT -> + mapOf( + Bound.BOTTOM to endBottom, + Bound.TOP to endBottom, + Bound.LEFT to endLeft, + Bound.RIGHT to endLeft, + ) + Hotspot.LEFT -> + mapOf( + Bound.LEFT to endLeft, + Bound.RIGHT to endLeft, + Bound.TOP to top, + Bound.BOTTOM to bottom, + ) + Hotspot.TOP_LEFT -> + mapOf( + Bound.TOP to endTop, + Bound.BOTTOM to endTop, + Bound.LEFT to endLeft, + Bound.RIGHT to endLeft, + ) + Hotspot.CENTER -> + mapOf( + Bound.LEFT to (endLeft + endRight) / 2, + Bound.RIGHT to (endLeft + endRight) / 2, + Bound.TOP to (endTop + endBottom) / 2, + Bound.BOTTOM to (endTop + endBottom) / 2, + ) + } + } + + /** + * Computes the end values for the child of a view being removed, based on the child's + * starting bounds, the removal's [destination], and the [parentWidth] and [parentHeight]. + * + * The end values always represent the child's position after it has been translated so that + * its center is at the [destination]. + * + * Examples: + * ``` + * 1) destination=TOP + * The child maintains its left and right positions, but is shifted up so that its + * center is on the parent's end top edge. + * 2) destination=BOTTOM_LEFT + * The child shifts so that its center is on the parent's end bottom left corner. + * 3) destination=CENTER + * The child shifts so that its own center is on the parent's end center. + * ``` + */ + private fun processChildEndValuesForRemoval( + destination: Hotspot, + left: Int, + top: Int, + right: Int, + bottom: Int, + parentWidth: Int, + parentHeight: Int, + ): Map<Bound, Int> { + val halfWidth = (right - left) / 2 + val halfHeight = (bottom - top) / 2 + + val endLeft = + when (destination) { + Hotspot.CENTER -> (parentWidth / 2) - halfWidth + Hotspot.BOTTOM_LEFT, + Hotspot.LEFT, + Hotspot.TOP_LEFT -> -halfWidth + Hotspot.TOP_RIGHT, + Hotspot.RIGHT, + Hotspot.BOTTOM_RIGHT -> parentWidth - halfWidth + Hotspot.TOP, + Hotspot.BOTTOM -> left + } + val endTop = + when (destination) { + Hotspot.CENTER -> (parentHeight / 2) - halfHeight + Hotspot.TOP_LEFT, + Hotspot.TOP, + Hotspot.TOP_RIGHT -> -halfHeight + Hotspot.BOTTOM_RIGHT, + Hotspot.BOTTOM, + Hotspot.BOTTOM_LEFT -> parentHeight - halfHeight + Hotspot.LEFT, + Hotspot.RIGHT -> top + } + val endRight = + when (destination) { + Hotspot.CENTER -> (parentWidth / 2) + halfWidth + Hotspot.TOP_RIGHT, + Hotspot.RIGHT, + Hotspot.BOTTOM_RIGHT -> parentWidth + halfWidth + Hotspot.BOTTOM_LEFT, + Hotspot.LEFT, + Hotspot.TOP_LEFT -> halfWidth + Hotspot.TOP, + Hotspot.BOTTOM -> right + } + val endBottom = + when (destination) { + Hotspot.CENTER -> (parentHeight / 2) + halfHeight + Hotspot.BOTTOM_RIGHT, + Hotspot.BOTTOM, + Hotspot.BOTTOM_LEFT -> parentHeight + halfHeight + Hotspot.TOP_LEFT, + Hotspot.TOP, + Hotspot.TOP_RIGHT -> halfHeight + Hotspot.LEFT, + Hotspot.RIGHT -> bottom + } + + return mapOf( + Bound.LEFT to endLeft, + Bound.TOP to endTop, + Bound.RIGHT to endRight, + Bound.BOTTOM to endBottom, + ) + } + + private fun addListener( + view: View, + listener: View.OnLayoutChangeListener, + recursive: Boolean = false, + animateChildren: Boolean = true, + excludedViews: Set<View> = emptySet(), + ) { + if (excludedViews.contains(view)) return + + // Make sure that only one listener is active at a time. + val previousListener = view.getTag(R.id.tag_layout_listener) + if (previousListener != null && previousListener is View.OnLayoutChangeListener) { + view.removeOnLayoutChangeListener(previousListener) + } + + view.addOnLayoutChangeListener(listener) + view.setTag(R.id.tag_layout_listener, listener) + if (animateChildren && view is ViewGroup && recursive) { + for (i in 0 until view.childCount) { + addListener( + view.getChildAt(i), + listener, + recursive = true, + animateChildren = animateChildren, + excludedViews = excludedViews, + ) + } + } + } + + private fun recursivelyRemoveListener(view: View) { + val listener = view.getTag(R.id.tag_layout_listener) + if (listener != null && listener is View.OnLayoutChangeListener) { + view.setTag(R.id.tag_layout_listener, null /* tag */) + view.removeOnLayoutChangeListener(listener) + } + + if (view is ViewGroup) { + for (i in 0 until view.childCount) { + recursivelyRemoveListener(view.getChildAt(i)) + } + } + } + + private fun getBound(view: View, bound: Bound): Int? { + return view.getTag(bound.overrideTag) as? Int + } + + private fun setBound(view: View, bound: Bound, value: Int) { + view.setTag(bound.overrideTag, value) + bound.setValue(view, value) + } + + /** + * Initiates the animation of the requested [bounds] between [startValues] and [endValues] + * by creating the animator, registering it with the [view], and starting it using + * [interpolator] and [duration]. + * + * If [ephemeral] is true, the layout change listener is unregistered at the end of the + * animation, so no more animations happen. + */ + private fun startAnimation( + view: View, + bounds: Set<Bound>, + startValues: Map<Bound, Int>, + endValues: Map<Bound, Int>, + interpolator: Interpolator, + duration: Long, + ephemeral: Boolean, + onAnimationEnd: Runnable? = null, + ) { + val propertyValuesHolders = + buildList { + bounds.forEach { bound -> + add( + PropertyValuesHolder.ofInt( + PROPERTIES[bound], + startValues.getValue(bound), + endValues.getValue(bound), + ) + ) + } + } + .toTypedArray() + + (view.getTag(R.id.tag_animator) as? ObjectAnimator)?.cancel() + + val animator = ObjectAnimator.ofPropertyValuesHolder(view, *propertyValuesHolders) + animator.interpolator = interpolator + animator.duration = duration + animator.addListener( + object : AnimatorListenerAdapter() { + var cancelled = false + + override fun onAnimationEnd(animation: Animator) { + view.setTag(R.id.tag_animator, null /* tag */) + bounds.forEach { view.setTag(it.overrideTag, null /* tag */) } + + // When an animation is cancelled, a new one might be taking over. We + // shouldn't unregister the listener yet. + if (ephemeral && !cancelled) { + // The duration is the same for the whole hierarchy, so it's safe to + // remove the listener recursively. We do this because some descendant + // views might not change bounds, and therefore not animate and leak the + // listener. + recursivelyRemoveListener(view) + } + // Run the end runnable regardless of whether the animation was cancelled or + // not - this ensures critical actions (like removing a window) always occur + // (see b/344049884). + onAnimationEnd?.run() + } + + override fun onAnimationCancel(animation: Animator) { + cancelled = true + } + } + ) + + bounds.forEach { bound -> setBound(view, bound, startValues.getValue(bound)) } + + view.setTag(R.id.tag_animator, animator) + animator.start() + } + + private fun createAndStartFadeInAnimator( + view: View, + duration: Long, + startDelay: Long, + interpolator: Interpolator, + ) { + val animator = ObjectAnimator.ofFloat(view, "alpha", 1f) + animator.startDelay = startDelay + animator.duration = duration + animator.interpolator = interpolator + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + view.setTag(R.id.tag_alpha_animator, null /* tag */) + } + } + ) + + (view.getTag(R.id.tag_alpha_animator) as? ObjectAnimator)?.cancel() + view.setTag(R.id.tag_alpha_animator, animator) + animator.start() + } + } + + /** An enum used to determine the origin of addition animations. */ + enum class Hotspot { + CENTER, + LEFT, + TOP_LEFT, + TOP, + TOP_RIGHT, + RIGHT, + BOTTOM_RIGHT, + BOTTOM, + BOTTOM_LEFT, + } + + private enum class Bound(val label: String, val overrideTag: Int) { + LEFT("left", R.id.tag_override_left) { + override fun setValue(view: View, value: Int) { + view.left = value + } + + override fun getValue(view: View): Int { + return view.left + } + }, + TOP("top", R.id.tag_override_top) { + override fun setValue(view: View, value: Int) { + view.top = value + } + + override fun getValue(view: View): Int { + return view.top + } + }, + RIGHT("right", R.id.tag_override_right) { + override fun setValue(view: View, value: Int) { + view.right = value + } + + override fun getValue(view: View): Int { + return view.right + } + }, + BOTTOM("bottom", R.id.tag_override_bottom) { + override fun setValue(view: View, value: Int) { + view.bottom = value + } + + override fun getValue(view: View): Int { + return view.bottom + } + }; + + abstract fun setValue(view: View, value: Int) + + abstract fun getValue(view: View): Int + } + + /** Simple data class to hold a set of dimens for left, top, right, bottom. */ + private data class DimenHolder(val left: Int, val top: Int, val right: Int, val bottom: Int) +} diff --git a/systemUI/anim/src/com/android/systemui/animation/ViewRootSync.kt b/systemUI/anim/src/com/android/systemui/animation/ViewRootSync.kt new file mode 100644 index 0000000000..e4f6db57f6 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/ViewRootSync.kt @@ -0,0 +1,43 @@ +package com.android.systemui.animation + +import android.view.View +import android.window.SurfaceSyncGroup + +/** A util class to synchronize 2 view roots. */ +// TODO(b/200284684): Remove this class. +object ViewRootSync { + + /** + * Synchronize the next draw between the view roots of [view] and [otherView], then run [then]. + * + * Note that in some cases, the synchronization might not be possible (e.g. WM consumed the next + * transactions) or disabled (temporarily, on low ram devices). In this case, [then] will be + * called without synchronizing. + */ + fun synchronizeNextDraw(view: View, otherView: View, then: () -> Unit) { + if ( + !view.isAttachedToWindow || + view.viewRootImpl == null || + !otherView.isAttachedToWindow || + otherView.viewRootImpl == null || + view.viewRootImpl == otherView.viewRootImpl + ) { + // No need to synchronize if either the touch surface or dialog view is not attached + // to a window. + then() + return + } + + val syncGroup = SurfaceSyncGroup("SysUIAnimation") + syncGroup.addSyncCompleteCallback(view.context.mainExecutor) { then() } + syncGroup.add(view.rootSurfaceControl, null /* runnable */) + syncGroup.add(otherView.rootSurfaceControl, null /* runnable */) + syncGroup.markSyncReady() + } + + /** A Java-friendly API for [synchronizeNextDraw]. */ + @JvmStatic + fun synchronizeNextDraw(view: View, otherView: View, then: Runnable) { + synchronizeNextDraw(view, otherView, then::run) + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/ViewTransitionRegistry.kt b/systemUI/anim/src/com/android/systemui/animation/ViewTransitionRegistry.kt new file mode 100644 index 0000000000..882ff3b61b --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/ViewTransitionRegistry.kt @@ -0,0 +1,166 @@ +/* + * Copyright (C) 2025 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import android.os.Trace +import android.view.View +import java.lang.ref.WeakReference + +/** + * A registry to temporarily store the view being transitioned into a Dialog (using + * [DialogTransitionAnimator]) or an Activity (using [ActivityTransitionAnimator]). + */ +class ViewTransitionRegistry : IViewTransitionRegistry { + + /** + * A map of a unique token to a WeakReference of the View being transitioned. WeakReference + * ensures that Views are garbage collected whenever they become eligible and avoid any + * memory leaks. + */ + private val registry by lazy { mutableMapOf<ViewTransitionToken, ViewTransitionInfo>() } + + /** + * A [View.OnAttachStateChangeListener] to be attached to all views stored in the registry to + * ensure that views (and their corresponding entry) is automatically removed when the view is + * detached from the Window. + */ + private val listener by lazy { + object : View.OnAttachStateChangeListener { + override fun onViewAttachedToWindow(view: View) { + // empty + } + + override fun onViewDetachedFromWindow(view: View) { + // if view is detached from window, remove it from registry irrespective of number + // of reference held by clients/user of this registry + getViewToken(view)?.let { token -> remove(token) } + } + } + } + + /** + * Creates an entry of a unique token mapped to transitioning [view] in the registry. + * + * @param view view undergoing transitions + * @return unique token mapped to the view being registered + */ + override fun register(view: View): ViewTransitionToken { + // if view being registered is already present in the registry and has a unique token + // assigned to it, reuse that token + getViewToken(view)?.let { token -> + registry[token]?.let { info -> info.viewRefCount += 1 } + return token + } + + // token embedded as a view tag enables to use a single listener for all views + val token = ViewTransitionToken(view::class.java) + view.setTag(R.id.tag_view_transition_token, token) + view.addOnAttachStateChangeListener(listener) + registry[token] = ViewTransitionInfo(WeakReference(view)) + onRegistryUpdate() + + return token + } + + /** + * Unregisters a view mapped to the unique [token] in the registry. This will either remove the + * entry entirely from registry (if the reference count of the associated view reached zero) or + * will decrement the reference count of the associated view in the registry. + * + * @param token unique token associated with the transitioning view + */ + override fun unregister(token: ViewTransitionToken) { + registry[token]?.let { info -> + info.viewRefCount -= 1 + if (info.viewRefCount == 0) { + remove(token) + } + } + } + + /** + * Removes the entry associated with the unique [token] in the registry. + * + * @param token unique token associated with the transitioning view + */ + private fun remove(token: ViewTransitionToken) { + registry.remove(token)?.let { removedInfo -> + removedInfo.viewRef.get()?.let { view -> + view.removeOnAttachStateChangeListener(listener) + view.setTag(R.id.tag_view_transition_token, null) + } + removedInfo.viewRef.clear() + onRegistryUpdate() + } + } + + /** + * Access a view from registry using unique [token] associated with it. + * WARNING - this returns a StrongReference to the View stored in the registry + */ + override fun getView(token: ViewTransitionToken): View? { + return registry[token]?.viewRef?.get() + } + + /** + * Return token mapped to the [view], if it is present in the registry. + * + * @param view the transitioning view whose token we are requesting + * @return token associated with the [view] if present, else null + */ + override fun getViewToken(view: View): ViewTransitionToken? { + // extract token from the view if it is embedded inside it as a tag + val token = view.getTag(R.id.tag_view_transition_token) as? ViewTransitionToken + + // this should never really happen, but if token embedded inside the view as tag, doesn't + // point to a valid view in the registry, remove that token (tag) from the view and registry + if (token != null && getView(token) == null) { + view.setTag(R.id.tag_view_transition_token, null) + remove(token) + return null + } + + return token + } + + /** Event call to run on registry update (on both [register] and [unregister]). */ + override fun onRegistryUpdate() { + emitCountForTrace() + } + + /** + * Utility function to emit number of non-null views in the registry whenever the registry is + * updated (via [register] or [unregister]). + */ + private fun emitCountForTrace() { + Trace.setCounter("transition_registry_view_count", registry.count().toLong()) + } + + /** Information associated with each transitioning view in the registry. */ + private data class ViewTransitionInfo( + + /** View being transitioned */ + val viewRef: WeakReference<View>, + + /** Count of clients (users of this registry) referencing same transitioning view */ + var viewRefCount: Int = 1 + ) + + companion object { + val instance by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { ViewTransitionRegistry() } + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/ViewTransitionToken.kt b/systemUI/anim/src/com/android/systemui/animation/ViewTransitionToken.kt new file mode 100644 index 0000000000..e011df0150 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/ViewTransitionToken.kt @@ -0,0 +1,34 @@ +/* + * Copyright (C) 2025 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation + +import java.util.UUID + +/** + * A token uniquely mapped to a View in [ViewTransitionRegistry]. This token is guaranteed to be + * unique as timestamp is appended to the token string + * + * @constructor creates an instance of [ViewTransitionToken] with token as "UUID" or + * "ClassName_UUID" + * + * @property token String value of a unique token + */ +@JvmInline +value class ViewTransitionToken private constructor(val token: String) { + constructor() : this(token = UUID.randomUUID().toString()) + constructor(clazz: Class<*>) : this(token = clazz.simpleName + "_${UUID.randomUUID()}") +} diff --git a/systemUI/anim/src/com/android/systemui/animation/back/BackAnimationSpec.kt b/systemUI/anim/src/com/android/systemui/animation/back/BackAnimationSpec.kt new file mode 100644 index 0000000000..9e872fc5d3 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/back/BackAnimationSpec.kt @@ -0,0 +1,79 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation.back + +import android.util.DisplayMetrics +import android.view.animation.Interpolator +import android.window.BackEvent +import com.android.app.animation.Interpolators +import com.android.systemui.util.dpToPx + +/** Used to convert [BackEvent] into a [BackTransformation]. */ +fun interface BackAnimationSpec { + + /** Computes transformation based on a [backEvent] and sets it to [result]. */ + fun getBackTransformation( + backEvent: BackEvent, + progressY: Float, // TODO(b/265060720): Remove progressY. Could be retrieved from backEvent + result: BackTransformation, + ) + + companion object +} + +/** Create a [BackAnimationSpec] from [displayMetrics] and design specs. */ +fun BackAnimationSpec.Companion.createFloatingSurfaceAnimationSpec( + displayMetricsProvider: () -> DisplayMetrics, + maxMarginXdp: Float, + maxMarginYdp: Float, + minScale: Float, + translateXEasing: Interpolator = Interpolators.BACK_GESTURE, + translateYEasing: Interpolator = Interpolators.LINEAR, + scaleEasing: Interpolator = Interpolators.BACK_GESTURE, +): BackAnimationSpec { + return BackAnimationSpec { backEvent, progressY, result -> + val displayMetrics = displayMetricsProvider() + val screenWidthPx = displayMetrics.widthPixels + val screenHeightPx = displayMetrics.heightPixels + + val maxMarginXPx = maxMarginXdp.dpToPx(displayMetrics) + val maxMarginYPx = maxMarginYdp.dpToPx(displayMetrics) + val maxTranslationXByScale = (screenWidthPx - screenWidthPx * minScale) / 2 + val maxTranslationX = maxTranslationXByScale - maxMarginXPx + val maxTranslationYByScale = (screenHeightPx - screenHeightPx * minScale) / 2 + val maxTranslationY = maxTranslationYByScale - maxMarginYPx + val minScaleReversed = 1f - minScale + + val direction = + when (backEvent.swipeEdge) { + BackEvent.EDGE_LEFT -> 1 + BackEvent.EDGE_RIGHT -> -1 + else -> 0 + } + val progressX = backEvent.progress + + val ratioTranslateX = translateXEasing.getInterpolation(progressX) + val ratioTranslateY = translateYEasing.getInterpolation(progressY) + val ratioScale = scaleEasing.getInterpolation(progressX) + + result.apply { + translateX = ratioTranslateX * direction * maxTranslationX + translateY = ratioTranslateY * maxTranslationY + scale = 1f - (ratioScale * minScaleReversed) + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/back/BackAnimationSpecForSysUi.kt b/systemUI/anim/src/com/android/systemui/animation/back/BackAnimationSpecForSysUi.kt new file mode 100644 index 0000000000..536f2972ab --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/back/BackAnimationSpecForSysUi.kt @@ -0,0 +1,83 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation.back + +import android.util.DisplayMetrics + +/** + * SysUI transitions - Dismiss app (ST1) Return to launching surface or place of origin + * https://carbon.googleplex.com/predictive-back-for-apps/pages/st-1-dismiss-app + */ +fun BackAnimationSpec.Companion.dismissAppForSysUi( + displayMetricsProvider: () -> DisplayMetrics, +): BackAnimationSpec = + BackAnimationSpec.createFloatingSurfaceAnimationSpec( + displayMetricsProvider = displayMetricsProvider, + maxMarginXdp = 8f, + maxMarginYdp = 8f, + minScale = 0.8f, + ) + +/** + * SysUI transitions - Cross task (ST2) Return to previous task/app, keeping the current one open + * https://carbon.googleplex.com/predictive-back-for-apps/pages/st-2-cross-task + */ +fun BackAnimationSpec.Companion.crossTaskForSysUi( + displayMetricsProvider: () -> DisplayMetrics, +): BackAnimationSpec = + BackAnimationSpec.createFloatingSurfaceAnimationSpec( + displayMetricsProvider = displayMetricsProvider, + maxMarginXdp = 8f, + maxMarginYdp = 8f, + minScale = 0.8f, + ) + +/** + * SysUI transitions - Inner area dismiss (ST3) Dismiss non-detachable surface + * https://carbon.googleplex.com/predictive-back-for-apps/pages/st-3-inner-area-dismiss + */ +fun BackAnimationSpec.Companion.innerAreaDismissForSysUi( + displayMetricsProvider: () -> DisplayMetrics, +): BackAnimationSpec = + BackAnimationSpec.createFloatingSurfaceAnimationSpec( + displayMetricsProvider = displayMetricsProvider, + maxMarginXdp = 0f, + maxMarginYdp = 0f, + minScale = 0.9f, + ) + +/** + * SysUI transitions - Floating system surfaces (ST4) + * https://carbon.googleplex.com/predictive-back-for-apps/pages/st-4-floating-system-surfaces + */ +fun BackAnimationSpec.Companion.floatingSystemSurfacesForSysUi( + displayMetricsProvider: () -> DisplayMetrics, +): BackAnimationSpec = + BackAnimationSpec.createFloatingSurfaceAnimationSpec( + displayMetricsProvider = displayMetricsProvider, + maxMarginXdp = 8f, + maxMarginYdp = 8f, + minScale = 0.9f, + ) + +/** + * SysUI transitions - Bottomsheet (AT3) + * https://carbon.googleplex.com/predictive-back-for-apps/pages/at-3-bottom-sheets + */ +fun BackAnimationSpec.Companion.bottomSheetForSysUi( + displayMetricsProvider: () -> DisplayMetrics, +): BackAnimationSpec = BackAnimationSpec.createBottomsheetAnimationSpec(displayMetricsProvider) diff --git a/systemUI/anim/src/com/android/systemui/animation/back/BackTransformation.kt b/systemUI/anim/src/com/android/systemui/animation/back/BackTransformation.kt new file mode 100644 index 0000000000..029f62c6e4 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/back/BackTransformation.kt @@ -0,0 +1,63 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation.back + +import android.view.View + +/** + * This object that represents the transformation to apply to the target. The properties of this + * object are mutable for performance reasons (avoid recreating this object) + */ +data class BackTransformation( + var translateX: Float = Float.NaN, + var translateY: Float = Float.NaN, + var scale: Float = Float.NaN, + var scalePivotPosition: ScalePivotPosition? = null, +) + +/** Enum that describes the location of the scale pivot position */ +enum class ScalePivotPosition { + // more options may be added in the future + CENTER, + BOTTOM_CENTER; + + fun applyTo(view: View) { + val pivotX = + when (this) { + CENTER -> view.width / 2f + BOTTOM_CENTER -> view.width / 2f + } + val pivotY = + when (this) { + CENTER -> view.height / 2f + BOTTOM_CENTER -> view.height.toFloat() + } + view.pivotX = pivotX + view.pivotY = pivotY + } +} + +/** Apply the transformation to the [targetView] */ +fun BackTransformation.applyTo(targetView: View) { + if (translateX.isFinite()) targetView.translationX = translateX + if (translateY.isFinite()) targetView.translationY = translateY + scalePivotPosition?.applyTo(targetView) + if (scale.isFinite()) { + targetView.scaleX = scale + targetView.scaleY = scale + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/back/BottomsheetBackAnimationSpec.kt b/systemUI/anim/src/com/android/systemui/animation/back/BottomsheetBackAnimationSpec.kt new file mode 100644 index 0000000000..b1945a1c37 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/back/BottomsheetBackAnimationSpec.kt @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation.back + +import android.util.DisplayMetrics +import android.view.animation.Interpolator +import com.android.app.animation.Interpolators +import com.android.systemui.util.dpToPx + +private const val MAX_SCALE_DELTA_DP = 48 + +/** Create a [BackAnimationSpec] from [displayMetrics] and design specs. */ +fun BackAnimationSpec.Companion.createBottomsheetAnimationSpec( + displayMetricsProvider: () -> DisplayMetrics, + scaleEasing: Interpolator = Interpolators.BACK_GESTURE, +): BackAnimationSpec { + return BackAnimationSpec { backEvent, _, result -> + val displayMetrics = displayMetricsProvider() + val screenWidthPx = displayMetrics.widthPixels + val minScale = 1 - MAX_SCALE_DELTA_DP.dpToPx(displayMetrics) / screenWidthPx + val progressX = backEvent.progress + val ratioScale = scaleEasing.getInterpolation(progressX) + result.apply { + scale = 1f - ratioScale * (1f - minScale) + scalePivotPosition = ScalePivotPosition.BOTTOM_CENTER + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/back/FlingOnBackAnimationCallback.kt b/systemUI/anim/src/com/android/systemui/animation/back/FlingOnBackAnimationCallback.kt new file mode 100644 index 0000000000..18454333c8 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/back/FlingOnBackAnimationCallback.kt @@ -0,0 +1,186 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation.back + +import android.os.Build +import android.util.TimeUtils +import android.view.Choreographer +import android.view.MotionEvent +import android.view.MotionEvent.ACTION_MOVE +import android.view.VelocityTracker +import android.view.animation.Interpolator +import android.window.BackEvent +import android.window.OnBackAnimationCallback +import com.android.app.animation.Interpolators +import com.android.internal.dynamicanimation.animation.DynamicAnimation +import com.android.internal.dynamicanimation.animation.FlingAnimation +import com.android.internal.dynamicanimation.animation.FloatValueHolder +import com.android.window.flags.Flags.predictiveBackTimestampApi + +private const val FLING_FRICTION = 6f +private const val SCALE_FACTOR = 100f + +/** + * Enhanced [OnBackAnimationCallback] with automatic fling animation and interpolated progress. + * + * Simplifies back gesture handling by animating flings and emitting processed events through + * `compat` functions. Customize progress interpolation with an optional [Interpolator]. + * + * @param progressInterpolator [Interpolator] for progress, defaults to + * [Interpolators.BACK_GESTURE]. + */ +abstract class FlingOnBackAnimationCallback( + val progressInterpolator: Interpolator = Interpolators.BACK_GESTURE +) : OnBackAnimationCallback { + + private val velocityTracker = VelocityTracker.obtain() + private var lastBackEvent: BackEvent? = null + private var downTime: Long? = null + + private var backInvokedFlingAnim: FlingAnimation? = null + private val backInvokedFlingUpdateListener = + DynamicAnimation.OnAnimationUpdateListener { _, progress: Float, _ -> + lastBackEvent?.let { + val backEvent = + BackEvent( + it.touchX, + it.touchY, + progress / SCALE_FACTOR, + it.swipeEdge, + it.frameTimeMillis, + ) + onBackProgressedCompat(backEvent) + } + } + private val backInvokedFlingEndListener = + DynamicAnimation.OnAnimationEndListener { _, _, _, _ -> + onBackInvokedCompat() + reset() + } + + abstract fun onBackStartedCompat(backEvent: BackEvent) + + abstract fun onBackProgressedCompat(backEvent: BackEvent) + + abstract fun onBackInvokedCompat() + + abstract fun onBackCancelledCompat() + + final override fun onBackStarted(backEvent: BackEvent) { + if (backInvokedFlingAnim != null) { + // This should never happen but let's call onBackInvokedCompat() just in case there is + // still a fling animation in progress + onBackInvokedCompat() + } + reset() + try { + if (predictiveBackTimestampApi()) { + downTime = backEvent.frameTimeMillis + } + } catch (t: Throwable) { + // LC-Ignored + } + onBackStartedCompat(backEvent) + } + + final override fun onBackProgressed(backEvent: BackEvent) { + val interpolatedProgress = progressInterpolator.getInterpolation(backEvent.progress) + val predictiveBackTimestampApi = try { + predictiveBackTimestampApi() + } catch (t: Throwable) { + // LC-Ignored + false + } + + if (predictiveBackTimestampApi) { + downTime?.let { downTime -> + velocityTracker.addMovement( + MotionEvent.obtain( + /* downTime */ downTime, + /* eventTime */ backEvent.frameTimeMillis, + /* action */ ACTION_MOVE, + /* x */ interpolatedProgress * SCALE_FACTOR, + /* y */ 0f, + /* metaState */ 0, + ) + ) + } + lastBackEvent = + BackEvent( + backEvent.touchX, + backEvent.touchY, + interpolatedProgress, + backEvent.swipeEdge, + backEvent.frameTimeMillis, + ) + } else { + lastBackEvent = + BackEvent( + backEvent.touchX, + backEvent.touchY, + interpolatedProgress, + backEvent.swipeEdge, + ) + } + lastBackEvent?.let { onBackProgressedCompat(it) } + } + + final override fun onBackInvoked() { + val predictiveBackTimestampApi = try { + predictiveBackTimestampApi() + } catch (t: Throwable) { + // LC-Ignored + false + } + if (predictiveBackTimestampApi && lastBackEvent != null) { + velocityTracker.computeCurrentVelocity(1000) + backInvokedFlingAnim = + FlingAnimation(FloatValueHolder()) + .setStartValue((lastBackEvent?.progress ?: 0f) * SCALE_FACTOR) + .setFriction(FLING_FRICTION) + .setStartVelocity(velocityTracker.xVelocity) + .setMinValue(0f) + .setMaxValue(SCALE_FACTOR) + .also { + it.addUpdateListener(backInvokedFlingUpdateListener) + it.addEndListener(backInvokedFlingEndListener) + it.start() + // do an animation-frame immediately to prevent idle frame + it.doAnimationFrame( + Choreographer.getInstance().lastFrameTimeNanos / TimeUtils.NANOS_PER_MS + ) + } + } else { + onBackInvokedCompat() + reset() + } + } + + final override fun onBackCancelled() { + onBackCancelledCompat() + reset() + } + + private fun reset() { + velocityTracker.clear() + backInvokedFlingAnim?.removeEndListener(backInvokedFlingEndListener) + backInvokedFlingAnim?.removeUpdateListener(backInvokedFlingUpdateListener) + lastBackEvent = null + backInvokedFlingAnim = null + downTime = null + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/back/OnBackAnimationCallbackExtension.kt b/systemUI/anim/src/com/android/systemui/animation/back/OnBackAnimationCallbackExtension.kt new file mode 100644 index 0000000000..05b0588094 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/back/OnBackAnimationCallbackExtension.kt @@ -0,0 +1,103 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation.back + +import android.annotation.IntRange +import android.util.DisplayMetrics +import android.view.View +import android.window.BackEvent +import android.window.OnBackAnimationCallback +import android.window.OnBackInvokedDispatcher +import com.android.app.animation.Interpolators + +/** + * Generates an [OnBackAnimationCallback] given a [backAnimationSpec]. [onBackProgressed] will be + * called on each update passing the current [BackTransformation]. + * + * Optionally, you can specify [onBackStarted], [onBackInvoked], and [onBackCancelled] callbacks. + * + * @sample com.android.systemui.util.registerAnimationOnBackInvoked + */ +fun onBackAnimationCallbackFrom( + backAnimationSpec: BackAnimationSpec, + displayMetrics: DisplayMetrics, // TODO(b/265060720): We could remove this + onBackProgressed: (BackTransformation) -> Unit, + onBackStarted: (BackEvent) -> Unit = {}, + onBackInvoked: () -> Unit = {}, + onBackCancelled: () -> Unit = {}, +): OnBackAnimationCallback { + return object : FlingOnBackAnimationCallback(progressInterpolator = Interpolators.LINEAR) { + private var initialY = 0f + private val lastTransformation = BackTransformation() + + override fun onBackStartedCompat(backEvent: BackEvent) { + initialY = backEvent.touchY + onBackStarted(backEvent) + } + + override fun onBackProgressedCompat(backEvent: BackEvent) { + val progressY = (backEvent.touchY - initialY) / displayMetrics.heightPixels + + backAnimationSpec.getBackTransformation( + backEvent = backEvent, + progressY = progressY, + result = lastTransformation, + ) + + onBackProgressed(lastTransformation) + } + + override fun onBackInvokedCompat() { + onBackInvoked() + } + + override fun onBackCancelledCompat() { + onBackCancelled() + } + } +} + +/** + * Register [OnBackAnimationCallback] when View is attached and unregister it when View is detached + * + * @sample com.android.systemui.util.registerAnimationOnBackInvoked + */ +fun View.registerOnBackInvokedCallbackOnViewAttached( + onBackInvokedDispatcher: OnBackInvokedDispatcher, + onBackAnimationCallback: OnBackAnimationCallback, + @OnBackInvokedDispatcher.Priority @IntRange(from = 0) priority: Int = OnBackInvokedDispatcher.PRIORITY_DEFAULT, +) { + addOnAttachStateChangeListener( + object : View.OnAttachStateChangeListener { + override fun onViewAttachedToWindow(v: View) { + onBackInvokedDispatcher.registerOnBackInvokedCallback( + priority, + onBackAnimationCallback, + ) + } + + override fun onViewDetachedFromWindow(v: View) { + removeOnAttachStateChangeListener(this) + onBackInvokedDispatcher.unregisterOnBackInvokedCallback(onBackAnimationCallback) + } + } + ) + + if (isAttachedToWindow) { + onBackInvokedDispatcher.registerOnBackInvokedCallback(priority, onBackAnimationCallback) + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/view/LaunchableFrameLayout.kt b/systemUI/anim/src/com/android/systemui/animation/view/LaunchableFrameLayout.kt new file mode 100644 index 0000000000..7538f188fb --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/view/LaunchableFrameLayout.kt @@ -0,0 +1,55 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation.view + +import android.content.Context +import android.util.AttributeSet +import android.widget.FrameLayout +import com.android.systemui.animation.LaunchableView +import com.android.systemui.animation.LaunchableViewDelegate + +/** A [FrameLayout] that also implements [LaunchableView]. */ +open class LaunchableFrameLayout : FrameLayout, LaunchableView { + private val delegate = + LaunchableViewDelegate( + this, + superSetVisibility = { super.setVisibility(it) }, + ) + + constructor(context: Context) : super(context) + constructor(context: Context, attrs: AttributeSet?) : super(context, attrs) + constructor( + context: Context, + attrs: AttributeSet?, + defStyleAttr: Int + ) : super(context, attrs, defStyleAttr) + + constructor( + context: Context, + attrs: AttributeSet?, + defStyleAttr: Int, + defStyleRes: Int + ) : super(context, attrs, defStyleAttr, defStyleRes) + + override fun setShouldBlockVisibilityChanges(block: Boolean) { + delegate.setShouldBlockVisibilityChanges(block) + } + + override fun setVisibility(visibility: Int) { + delegate.setVisibility(visibility) + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/view/LaunchableImageView.kt b/systemUI/anim/src/com/android/systemui/animation/view/LaunchableImageView.kt new file mode 100644 index 0000000000..e42b589f05 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/view/LaunchableImageView.kt @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +package com.android.systemui.animation.view + +import android.content.Context +import android.util.AttributeSet +import android.widget.ImageView +import com.android.systemui.animation.LaunchableView +import com.android.systemui.animation.LaunchableViewDelegate + +/** An [ImageView] that also implements [LaunchableView]. */ +open class LaunchableImageView : ImageView, LaunchableView { + private val delegate = + LaunchableViewDelegate( + this, + superSetVisibility = { super.setVisibility(it) }, + ) + + constructor(context: Context?) : super(context) + constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs) + constructor( + context: Context?, + attrs: AttributeSet?, + defStyleAttr: Int, + ) : super(context, attrs, defStyleAttr) + + constructor( + context: Context?, + attrs: AttributeSet?, + defStyleAttr: Int, + defStyleRes: Int, + ) : super(context, attrs, defStyleAttr, defStyleRes) + + override fun setShouldBlockVisibilityChanges(block: Boolean) { + delegate.setShouldBlockVisibilityChanges(block) + } + + override fun setVisibility(visibility: Int) { + delegate.setVisibility(visibility) + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/view/LaunchableLinearLayout.kt b/systemUI/anim/src/com/android/systemui/animation/view/LaunchableLinearLayout.kt new file mode 100644 index 0000000000..bce262291f --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/view/LaunchableLinearLayout.kt @@ -0,0 +1,55 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.animation.view + +import android.content.Context +import android.util.AttributeSet +import android.widget.LinearLayout +import com.android.systemui.animation.LaunchableView +import com.android.systemui.animation.LaunchableViewDelegate + +/** A [LinearLayout] that also implements [LaunchableView]. */ +open class LaunchableLinearLayout : LinearLayout, LaunchableView { + private val delegate = + LaunchableViewDelegate( + this, + superSetVisibility = { super.setVisibility(it) }, + ) + + constructor(context: Context?) : super(context) + constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs) + constructor( + context: Context?, + attrs: AttributeSet?, + defStyleAttr: Int, + ) : super(context, attrs, defStyleAttr) + + constructor( + context: Context?, + attrs: AttributeSet?, + defStyleAttr: Int, + defStyleRes: Int, + ) : super(context, attrs, defStyleAttr, defStyleRes) + + override fun setShouldBlockVisibilityChanges(block: Boolean) { + delegate.setShouldBlockVisibilityChanges(block) + } + + override fun setVisibility(visibility: Int) { + delegate.setVisibility(visibility) + } +} diff --git a/systemUI/anim/src/com/android/systemui/animation/view/LaunchableTextView.kt b/systemUI/anim/src/com/android/systemui/animation/view/LaunchableTextView.kt new file mode 100644 index 0000000000..147669528c --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/animation/view/LaunchableTextView.kt @@ -0,0 +1,49 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +package com.android.systemui.animation.view + +import android.content.Context +import android.util.AttributeSet +import android.widget.TextView +import com.android.systemui.animation.LaunchableView +import com.android.systemui.animation.LaunchableViewDelegate + +/** A [TextView] that also implements [LaunchableView]. */ +open class LaunchableTextView : TextView, LaunchableView { + private val delegate = + LaunchableViewDelegate( + this, + superSetVisibility = { super.setVisibility(it) }, + ) + + constructor(context: Context?) : super(context) + constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs) + constructor( + context: Context?, + attrs: AttributeSet?, + defStyleAttr: Int, + ) : super(context, attrs, defStyleAttr) + + override fun setShouldBlockVisibilityChanges(block: Boolean) { + delegate.setShouldBlockVisibilityChanges(block) + } + + override fun setVisibility(visibility: Int) { + delegate.setVisibility(visibility) + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/PaintDrawCallback.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/PaintDrawCallback.kt new file mode 100644 index 0000000000..d50979ccd0 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/PaintDrawCallback.kt @@ -0,0 +1,53 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects + +import android.graphics.Paint +import android.graphics.RenderEffect + +/** + * A callback with a [Paint] object that contains shader info, which is triggered every frame while + * animation is playing. Note that the [Paint] object here is always the same instance. + * + * This approach is more performant than other ones because [RenderEffect] forces an intermediate + * render pass of the View to a texture to feed into it. + * + * The usage of this callback is as follows: + * <pre>{@code + * private var paint: Paint? = null + * // Override [View.onDraw]. + * override fun onDraw(canvas: Canvas) { + * // RuntimeShader requires hardwareAcceleration. + * if (!canvas.isHardwareAccelerated) return + * + * paint?.let { canvas.drawPaint(it) } + * } + * + * // Given that this is called [PaintDrawCallback.onDraw] + * fun draw(paint: Paint) { + * this.paint = paint + * + * // Must call invalidate to trigger View#onDraw + * invalidate() + * } + * }</pre> + * + * Please refer to [RenderEffectDrawCallback] for alternative approach. + */ +interface PaintDrawCallback { + fun onDraw(paint: Paint) +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/RenderEffectDrawCallback.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/RenderEffectDrawCallback.kt new file mode 100644 index 0000000000..db7ee58090 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/RenderEffectDrawCallback.kt @@ -0,0 +1,39 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects + +import android.graphics.RenderEffect + +/** + * A callback with a [RenderEffect] object that contains shader info, which is triggered every frame + * while animation is playing. Note that the [RenderEffect] instance is different each time to + * update shader uniforms. + * + * The usage of this callback is as follows: + * <pre>{@code + * private val xEffectDrawingCallback = RenderEffectDrawCallback() { + * val myOtherRenderEffect = createOtherRenderEffect() + * val chainEffect = RenderEffect.createChainEffect(renderEffect, myOtherRenderEffect) + * myView.setRenderEffect(chainEffect) + * } + * + * private val xEffect = XEffect(config, xEffectDrawingCallback) + * }</pre> + */ +interface RenderEffectDrawCallback { + fun onDraw(renderEffect: RenderEffect) +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxConfig.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxConfig.kt new file mode 100644 index 0000000000..72f0e86f9d --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxConfig.kt @@ -0,0 +1,46 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects.glowboxeffect + +/** Parameters used to play [GlowBoxEffect]. */ +data class GlowBoxConfig( + /** Start center position X in px. */ + val startCenterX: Float, + /** Start center position Y in px. */ + val startCenterY: Float, + /** End center position X in px. */ + val endCenterX: Float, + /** End center position Y in px. */ + val endCenterY: Float, + /** Width of the box in px. */ + val width: Float, + /** Height of the box in px. */ + val height: Float, + /** Color of the box in ARGB, Apply alpha value if needed. */ + val color: Int, + /** Amount of blur (or glow) of the box. */ + val blurAmount: Float, + /** + * Duration of the animation. Note that the full duration of the animation is + * [duration] + [easeInDuration] + [easeOutDuration]. + */ + val duration: Long, + /** Ease in duration of the animation. */ + val easeInDuration: Long, + /** Ease out duration of the animation. */ + val easeOutDuration: Long, +) diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxEffect.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxEffect.kt new file mode 100644 index 0000000000..5e590c1ca0 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxEffect.kt @@ -0,0 +1,185 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects.glowboxeffect + +import android.animation.ValueAnimator +import android.graphics.Paint +import androidx.annotation.VisibleForTesting +import androidx.core.animation.doOnEnd +import com.android.systemui.surfaceeffects.PaintDrawCallback +import com.android.systemui.surfaceeffects.utils.MathUtils.lerp + +/** Glow box effect where the box moves from start to end positions defined in the [config]. */ +class GlowBoxEffect( + private var config: GlowBoxConfig, + private val paintDrawCallback: PaintDrawCallback, + private val stateChangedCallback: AnimationStateChangedCallback? = null +) { + private val glowBoxShader = + GlowBoxShader().apply { + setSize(config.width, config.height) + setCenter(config.startCenterX, config.startCenterY) + setBlur(config.blurAmount) + setColor(config.color) + } + private var animator: ValueAnimator? = null + @VisibleForTesting var state: AnimationState = AnimationState.NOT_PLAYING + private val paint = Paint().apply { shader = glowBoxShader } + + fun updateConfig(newConfig: GlowBoxConfig) { + this.config = newConfig + + with(glowBoxShader) { + setSize(config.width, config.height) + setCenter(config.startCenterX, config.startCenterY) + setBlur(config.blurAmount) + setColor(config.color) + } + } + + fun play() { + if (state != AnimationState.NOT_PLAYING) { + return + } + + playEaseIn() + } + + /** Finishes the animation with ease out. */ + fun finish(force: Boolean = false) { + // If it's playing ease out, cancel immediately. + if (force && state == AnimationState.EASE_OUT) { + animator?.cancel() + return + } + + // If it's playing either ease in or main, fast-forward to ease out. + if (state == AnimationState.EASE_IN || state == AnimationState.MAIN) { + animator?.pause() + playEaseOut() + } + + // At this point, animation state should be ease out. Cancel it if force is true. + if (force) { + animator?.cancel() + } + } + + private fun playEaseIn() { + if (state == AnimationState.EASE_IN) { + return + } + state = AnimationState.EASE_IN + stateChangedCallback?.onStart() + + animator = + ValueAnimator.ofFloat(0f, 1f).apply { + duration = config.easeInDuration + addUpdateListener { + val progress = it.animatedValue as Float + glowBoxShader.setCenter( + lerp(config.startCenterX, config.endCenterX, progress), + lerp(config.startCenterY, config.endCenterY, progress) + ) + + draw() + } + + doOnEnd { + animator = null + playMain() + } + + start() + } + } + + private fun playMain() { + if (state == AnimationState.MAIN) { + return + } + state = AnimationState.MAIN + + animator = + ValueAnimator.ofFloat(0f, 1f).apply { + duration = config.duration + addUpdateListener { draw() } + + doOnEnd { + animator = null + playEaseOut() + } + + start() + } + } + + private fun playEaseOut() { + if (state == AnimationState.EASE_OUT) return + state = AnimationState.EASE_OUT + + animator = + ValueAnimator.ofFloat(0f, 1f).apply { + duration = config.easeOutDuration + addUpdateListener { + val progress = it.animatedValue as Float + glowBoxShader.setCenter( + lerp(config.endCenterX, config.startCenterX, progress), + lerp(config.endCenterY, config.startCenterY, progress) + ) + + draw() + } + + doOnEnd { + animator = null + state = AnimationState.NOT_PLAYING + stateChangedCallback?.onEnd() + } + + start() + } + } + + private fun draw() { + paintDrawCallback.onDraw(paint) + } + + /** + * The animation state of the effect. The animation state transitions as follows: [EASE_IN] -> + * [MAIN] -> [EASE_OUT] -> [NOT_PLAYING]. + */ + enum class AnimationState { + EASE_IN, + MAIN, + EASE_OUT, + NOT_PLAYING, + } + + interface AnimationStateChangedCallback { + /** + * Triggered when the animation starts, specifically when the states goes from + * [AnimationState.NOT_PLAYING] to [AnimationState.EASE_IN]. + */ + fun onStart() + /** + * Triggered when the animation ends, specifically when the states goes from + * [AnimationState.EASE_OUT] to [AnimationState.NOT_PLAYING]. + */ + fun onEnd() + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxShader.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxShader.kt new file mode 100644 index 0000000000..36934086cc --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/glowboxeffect/GlowBoxShader.kt @@ -0,0 +1,58 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects.glowboxeffect + +import android.graphics.RuntimeShader +import com.android.systemui.surfaceeffects.shaderutil.SdfShaderLibrary + +/** Soft box shader. */ +class GlowBoxShader : RuntimeShader(GLOW_SHADER) { + // language=AGSL + private companion object { + private const val SHADER = + """ + uniform half2 in_center; + uniform half2 in_size; + uniform half in_blur; + layout(color) uniform half4 in_color; + + float4 main(float2 fragcoord) { + half glow = soften(sdBox(fragcoord - in_center, in_size), in_blur); + return in_color * (1. - glow); + } + """ + + private const val GLOW_SHADER = + SdfShaderLibrary.BOX_SDF + SdfShaderLibrary.SHADER_SDF_OPERATION_LIB + SHADER + } + + fun setCenter(x: Float, y: Float) { + setFloatUniform("in_center", x, y) + } + + fun setSize(width: Float, height: Float) { + setFloatUniform("in_size", width, height) + } + + fun setBlur(blurAmount: Float) { + setFloatUniform("in_blur", blurAmount) + } + + fun setColor(color: Int) { + setColorUniform("in_color", color) + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/loadingeffect/LoadingEffect.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/loadingeffect/LoadingEffect.kt new file mode 100644 index 0000000000..211b84f253 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/loadingeffect/LoadingEffect.kt @@ -0,0 +1,366 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects.loadingeffect + +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.ValueAnimator +import android.graphics.Paint +import android.graphics.RenderEffect +import android.view.View +import com.android.systemui.surfaceeffects.PaintDrawCallback +import com.android.systemui.surfaceeffects.RenderEffectDrawCallback +import com.android.systemui.surfaceeffects.turbulencenoise.TurbulenceNoiseAnimationConfig +import com.android.systemui.surfaceeffects.turbulencenoise.TurbulenceNoiseShader + +/** + * Plays loading effect with the given configuration. + * + * @param baseType immutable base shader type. This is used for constructing the shader. Reconstruct + * the [LoadingEffect] if the base type needs to be changed. + * @param config immutable parameters that are used for drawing the effect. + * @param paintCallback triggered every frame when animation is playing. Use this to draw the effect + * with [Canvas.drawPaint]. + * @param renderEffectCallback triggered every frame when animation is playing. Use this to draw the + * effect with [RenderEffect]. + * @param animationStateChangedCallback triggered when the [AnimationState] changes. Optional. + * + * The client is responsible to actually draw the [Paint] or [RenderEffect] returned in the + * callback. Note that [View.invalidate] must be called on each callback. There are a few ways to + * render the effect: + * 1) Use [Canvas.drawPaint]. (Preferred. Significantly cheaper!) + * 2) Set [RenderEffect] to the [View]. (Good for chaining effects.) + * 3) Use [RenderNode.setRenderEffect]. (This may be least preferred, as 2 should do what you want.) + * + * <p>First approach is more performant than other ones because [RenderEffect] forces an + * intermediate render pass of the View to a texture to feed into it. + * + * <p>If going with the first approach, your custom [View] would look like as follow: + * <pre>{@code + * private var paint: Paint? = null + * // Override [View.onDraw]. + * override fun onDraw(canvas: Canvas) { + * // RuntimeShader requires hardwareAcceleration. + * if (!canvas.isHardwareAccelerated) return + * + * paint?.let { canvas.drawPaint(it) } + * } + * + * // This is called [Callback.onDraw] + * fun draw(paint: Paint) { + * this.paint = paint + * + * // Must call invalidate to trigger View#onDraw + * invalidate() + * } + * }</pre> + * + * <p>If going with the second approach, it doesn't require an extra custom [View], and it is as + * simple as calling [View.setRenderEffect] followed by [View.invalidate]. You can also chain the + * effect with other [RenderEffect]. + * + * <p>Third approach is an option, but it's more of a boilerplate so you would like to stick with + * the second option. If you want to go with this option for some reason, below is the example: + * <pre>{@code + * // Initialize the shader and paint to use to pass into the [Canvas]. + * private val renderNode = RenderNode("LoadingEffect") + * + * // Override [View.onDraw]. + * override fun onDraw(canvas: Canvas) { + * // RuntimeShader requires hardwareAcceleration. + * if (!canvas.isHardwareAccelerated) return + * + * if (renderNode.hasDisplayList()) { + * canvas.drawRenderNode(renderNode) + * } + * } + * + * // This is called [Callback.onDraw] + * fun draw(renderEffect: RenderEffect) { + * renderNode.setPosition(0, 0, width, height) + * renderNode.setRenderEffect(renderEffect) + * + * val recordingCanvas = renderNode.beginRecording() + * // We need at least 1 drawing instruction. + * recordingCanvas.drawColor(Color.TRANSPARENT) + * renderNode.endRecording() + * + * // Must call invalidate to trigger View#onDraw + * invalidate() + * } + * }</pre> + */ +class LoadingEffect +private constructor( + baseType: TurbulenceNoiseShader.Companion.Type, + private val config: TurbulenceNoiseAnimationConfig, + private val paintCallback: PaintDrawCallback?, + private val renderEffectCallback: RenderEffectDrawCallback?, + private val animationStateChangedCallback: AnimationStateChangedCallback? = null +) { + constructor( + baseType: TurbulenceNoiseShader.Companion.Type, + config: TurbulenceNoiseAnimationConfig, + paintCallback: PaintDrawCallback, + animationStateChangedCallback: AnimationStateChangedCallback? = null + ) : this( + baseType, + config, + paintCallback, + renderEffectCallback = null, + animationStateChangedCallback + ) + constructor( + baseType: TurbulenceNoiseShader.Companion.Type, + config: TurbulenceNoiseAnimationConfig, + renderEffectCallback: RenderEffectDrawCallback, + animationStateChangedCallback: AnimationStateChangedCallback? = null + ) : this( + baseType, + config, + paintCallback = null, + renderEffectCallback, + animationStateChangedCallback + ) + + private val turbulenceNoiseShader: TurbulenceNoiseShader = + TurbulenceNoiseShader(baseType).apply { applyConfig(config) } + private var currentAnimator: ValueAnimator? = null + private var state: AnimationState = AnimationState.NOT_PLAYING + set(value) { + if (field != value) { + animationStateChangedCallback?.onStateChanged(field, value) + field = value + } + } + + // We create a paint instance only if the client renders it with Paint. + private val paint = + if (paintCallback != null) { + Paint().apply { this.shader = turbulenceNoiseShader } + } else { + null + } + + /** Plays LoadingEffect. */ + fun play() { + if (state != AnimationState.NOT_PLAYING) { + return // Ignore if any of the animation is playing. + } + + playEaseIn() + } + + // TODO(b/237282226): Support force finish. + /** Finishes the main animation, which triggers the ease-out animation. */ + fun finish() { + if (state == AnimationState.MAIN) { + // Calling Animator#end sets the animation state back to the initial state. Using pause + // to avoid visual artifacts. + currentAnimator?.pause() + currentAnimator = null + + playEaseOut() + } + } + + /** Updates the noise color dynamically. */ + fun updateColor(newColor: Int) { + turbulenceNoiseShader.setColor(newColor) + } + + /** Updates the noise color that's screen blended on top. */ + fun updateScreenColor(newColor: Int) { + turbulenceNoiseShader.setScreenColor(newColor) + } + + /** + * Retrieves the noise offset x, y, z values. This is useful for replaying the animation + * smoothly from the last animation, by passing in the last values to the next animation. + */ + fun getNoiseOffset(): Array<Float> { + return arrayOf( + turbulenceNoiseShader.noiseOffsetX, + turbulenceNoiseShader.noiseOffsetY, + turbulenceNoiseShader.noiseOffsetZ + ) + } + + private fun playEaseIn() { + if (state != AnimationState.NOT_PLAYING) { + return + } + state = AnimationState.EASE_IN + + val animator = ValueAnimator.ofFloat(0f, 1f) + animator.duration = config.easeInDuration.toLong() + + // Animation should start from the initial position to avoid abrupt transition. + val initialX = turbulenceNoiseShader.noiseOffsetX + val initialY = turbulenceNoiseShader.noiseOffsetY + val initialZ = turbulenceNoiseShader.noiseOffsetZ + + animator.addUpdateListener { updateListener -> + val timeInSec = updateListener.currentPlayTime * MS_TO_SEC + val progress = updateListener.animatedValue as Float + + turbulenceNoiseShader.setNoiseMove( + initialX + timeInSec * config.noiseMoveSpeedX, + initialY + timeInSec * config.noiseMoveSpeedY, + initialZ + timeInSec * config.noiseMoveSpeedZ + ) + + // TODO: Replace it with a better curve. + turbulenceNoiseShader.setOpacity(progress * config.luminosityMultiplier) + + draw() + } + + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + currentAnimator = null + playMain() + } + } + ) + + animator.start() + this.currentAnimator = animator + } + + private fun playMain() { + if (state != AnimationState.EASE_IN) { + return + } + state = AnimationState.MAIN + + val animator = ValueAnimator.ofFloat(0f, 1f) + animator.duration = config.maxDuration.toLong() + + // Animation should start from the initial position to avoid abrupt transition. + val initialX = turbulenceNoiseShader.noiseOffsetX + val initialY = turbulenceNoiseShader.noiseOffsetY + val initialZ = turbulenceNoiseShader.noiseOffsetZ + + turbulenceNoiseShader.setOpacity(config.luminosityMultiplier) + + animator.addUpdateListener { updateListener -> + val timeInSec = updateListener.currentPlayTime * MS_TO_SEC + turbulenceNoiseShader.setNoiseMove( + initialX + timeInSec * config.noiseMoveSpeedX, + initialY + timeInSec * config.noiseMoveSpeedY, + initialZ + timeInSec * config.noiseMoveSpeedZ + ) + + draw() + } + + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + currentAnimator = null + playEaseOut() + } + } + ) + + animator.start() + this.currentAnimator = animator + } + + private fun playEaseOut() { + if (state != AnimationState.MAIN) { + return + } + state = AnimationState.EASE_OUT + + val animator = ValueAnimator.ofFloat(0f, 1f) + animator.duration = config.easeOutDuration.toLong() + + // Animation should start from the initial position to avoid abrupt transition. + val initialX = turbulenceNoiseShader.noiseOffsetX + val initialY = turbulenceNoiseShader.noiseOffsetY + val initialZ = turbulenceNoiseShader.noiseOffsetZ + + animator.addUpdateListener { updateListener -> + val timeInSec = updateListener.currentPlayTime * MS_TO_SEC + val progress = updateListener.animatedValue as Float + + turbulenceNoiseShader.setNoiseMove( + initialX + timeInSec * config.noiseMoveSpeedX, + initialY + timeInSec * config.noiseMoveSpeedY, + initialZ + timeInSec * config.noiseMoveSpeedZ + ) + + // TODO: Replace it with a better curve. + turbulenceNoiseShader.setOpacity((1f - progress) * config.luminosityMultiplier) + + draw() + } + + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + currentAnimator = null + state = AnimationState.NOT_PLAYING + } + } + ) + + animator.start() + this.currentAnimator = animator + } + + private fun draw() { + paintCallback?.onDraw(paint!!) + renderEffectCallback?.onDraw( + RenderEffect.createRuntimeShaderEffect( + turbulenceNoiseShader, + TurbulenceNoiseShader.BACKGROUND_UNIFORM + ) + ) + } + + /** + * States of the loading effect animation. + * + * <p>The state is designed to be follow the order below: [AnimationState.EASE_IN], + * [AnimationState.MAIN], [AnimationState.EASE_OUT]. Note that ease in and out don't necessarily + * mean the acceleration and deceleration in the animation curve. They simply mean each stage of + * the animation. (i.e. Intro, core, and rest) + */ + enum class AnimationState { + EASE_IN, + MAIN, + EASE_OUT, + NOT_PLAYING + } + + /** Optional callback that is triggered when the animation state changes. */ + interface AnimationStateChangedCallback { + /** + * A callback that's triggered when the [AnimationState] changes. Example usage is + * performing a cleanup when [AnimationState] becomes [NOT_PLAYING]. + */ + fun onStateChanged(oldState: AnimationState, newState: AnimationState) {} + } + + private companion object { + private const val MS_TO_SEC = 0.001f + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/loadingeffect/LoadingEffectView.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/loadingeffect/LoadingEffectView.kt new file mode 100644 index 0000000000..aad593eb6a --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/loadingeffect/LoadingEffectView.kt @@ -0,0 +1,51 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects.loadingeffect + +import android.content.Context +import android.graphics.BlendMode +import android.graphics.Canvas +import android.graphics.Paint +import android.util.AttributeSet +import android.view.View + +/** Custom View for drawing the [LoadingEffect] with [Canvas.drawPaint]. */ +open class LoadingEffectView(context: Context?, attrs: AttributeSet?) : View(context, attrs) { + + private var paint: Paint? = null + private var blendMode: BlendMode = BlendMode.SRC_OVER + + override fun onDraw(canvas: Canvas) { + if (!canvas.isHardwareAccelerated) { + return + } + paint?.let { canvas.drawPaint(it) } + } + + /** Designed to be called on [LoadingEffect.PaintDrawCallback.onDraw]. */ + fun draw(paint: Paint) { + this.paint = paint + this.paint!!.blendMode = blendMode + + invalidate() + } + + /** Sets the blend mode of the [Paint]. */ + fun setBlendMode(blendMode: BlendMode) { + this.blendMode = blendMode + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/MultiRippleController.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/MultiRippleController.kt new file mode 100644 index 0000000000..d8e17c9c82 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/MultiRippleController.kt @@ -0,0 +1,49 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects.ripple + +import androidx.annotation.VisibleForTesting + +/** Controller that handles playing [RippleAnimation]. */ +class MultiRippleController(private val multipleRippleView: MultiRippleView) { + + companion object { + /** Max number of ripple animations at a time. */ + @VisibleForTesting const val MAX_RIPPLE_NUMBER = 10 + } + + /** Updates all the ripple colors during the animation. */ + fun updateColor(color: Int) { + multipleRippleView.ripples.forEach { anim -> anim.updateColor(color) } + } + + fun play(rippleAnimation: RippleAnimation) { + if (multipleRippleView.ripples.size >= MAX_RIPPLE_NUMBER) { + return + } + + multipleRippleView.ripples.add(rippleAnimation) + + rippleAnimation.play { + // Remove ripple once the animation is done + multipleRippleView.ripples.remove(rippleAnimation) + } + + // Trigger drawing + multipleRippleView.invalidate() + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/MultiRippleView.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/MultiRippleView.kt new file mode 100644 index 0000000000..6c175ddf1e --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/MultiRippleView.kt @@ -0,0 +1,61 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects.ripple + +import android.content.Context +import android.graphics.Canvas +import android.graphics.Paint +import android.util.AttributeSet +import android.view.View +import androidx.annotation.VisibleForTesting + +/** + * A view that allows multiple ripples to play. + * + * Use [MultiRippleController] to play ripple animations. + */ +class MultiRippleView(context: Context?, attrs: AttributeSet?) : View(context, attrs) { + + @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) + val ripples = ArrayList<RippleAnimation>() + private val ripplePaint = Paint() + + companion object { + private const val TAG = "MultiRippleView" + } + + override fun onDraw(canvas: Canvas) { + if (!canvas.isHardwareAccelerated) { + // Drawing with the ripple shader requires hardware acceleration, so skip if it's + // unsupported. + return + } + + var shouldInvalidate = false + + ripples.forEach { anim -> + ripplePaint.shader = anim.rippleShader + canvas.drawPaint(ripplePaint) + + shouldInvalidate = shouldInvalidate || anim.isPlaying() + } + + if (shouldInvalidate) { + invalidate() + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleAnimation.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleAnimation.kt new file mode 100644 index 0000000000..d4372507e2 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleAnimation.kt @@ -0,0 +1,93 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects.ripple + +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.ValueAnimator +import androidx.annotation.VisibleForTesting +import androidx.core.graphics.ColorUtils + +/** A single ripple animation. */ +class RippleAnimation(private val config: RippleAnimationConfig) { + @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) + val rippleShader: RippleShader = RippleShader(config.rippleShape) + private val animator: ValueAnimator = ValueAnimator.ofFloat(0f, 1f) + + init { + applyConfigToShader() + } + + /** Updates the ripple color during the animation. */ + fun updateColor(color: Int) { + config.apply { config.color = color } + applyConfigToShader() + } + + @JvmOverloads + fun play(onAnimationEnd: Runnable? = null) { + if (isPlaying()) { + return // Ignore if ripple effect is already playing + } + + animator.duration = config.duration + animator.addUpdateListener { updateListener -> + val now = updateListener.currentPlayTime + val progress = updateListener.animatedValue as Float + rippleShader.rawProgress = progress + rippleShader.distortionStrength = if (config.shouldDistort) 1 - progress else 0f + rippleShader.time = now.toFloat() + } + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + onAnimationEnd?.run() + } + } + ) + animator.start() + } + + /** Indicates whether the animation is playing. */ + fun isPlaying(): Boolean = animator.isRunning + + private fun applyConfigToShader() { + with(rippleShader) { + setCenter(config.centerX, config.centerY) + rippleSize.setMaxSize(config.maxWidth, config.maxHeight) + pixelDensity = config.pixelDensity + color = ColorUtils.setAlphaComponent(config.color, config.opacity) + sparkleStrength = config.sparkleStrength + + assignFadeParams(baseRingFadeParams, config.baseRingFadeParams) + assignFadeParams(sparkleRingFadeParams, config.sparkleRingFadeParams) + assignFadeParams(centerFillFadeParams, config.centerFillFadeParams) + } + } + + private fun assignFadeParams( + destFadeParams: RippleShader.FadeParams, + srcFadeParams: RippleShader.FadeParams? + ) { + srcFadeParams?.let { + destFadeParams.fadeInStart = it.fadeInStart + destFadeParams.fadeInEnd = it.fadeInEnd + destFadeParams.fadeOutStart = it.fadeOutStart + destFadeParams.fadeOutEnd = it.fadeOutEnd + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleAnimationConfig.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleAnimationConfig.kt new file mode 100644 index 0000000000..91c0a5b635 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleAnimationConfig.kt @@ -0,0 +1,29 @@ +package com.android.systemui.surfaceeffects.ripple + +import android.graphics.Color + +/** + * A struct that holds the ripple animation configurations. + * + * <p>This configuration is designed to play a SINGLE animation. Do not reuse or modify the + * configuration parameters to play different animations, unless the value has to change within the + * single animation (e.g. Change color or opacity during the animation). Note that this data class + * is pulled out to make the [RippleAnimation] constructor succinct. + */ +data class RippleAnimationConfig( + val rippleShape: RippleShader.RippleShape = RippleShader.RippleShape.CIRCLE, + val duration: Long = 0L, + val centerX: Float = 0f, + val centerY: Float = 0f, + val maxWidth: Float = 0f, + val maxHeight: Float = 0f, + val pixelDensity: Float = 1f, + var color: Int = Color.WHITE, + val opacity: Int = RippleShader.RIPPLE_DEFAULT_ALPHA, + val sparkleStrength: Float = RippleShader.RIPPLE_SPARKLE_STRENGTH, + // Null means it uses default fade parameter values. + val baseRingFadeParams: RippleShader.FadeParams? = null, + val sparkleRingFadeParams: RippleShader.FadeParams? = null, + val centerFillFadeParams: RippleShader.FadeParams? = null, + val shouldDistort: Boolean = true +) diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleShader.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleShader.kt new file mode 100644 index 0000000000..7e56f4b3d2 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleShader.kt @@ -0,0 +1,460 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.systemui.surfaceeffects.ripple + +import android.graphics.RuntimeShader +import android.util.Log +import android.view.animation.Interpolator +import android.view.animation.PathInterpolator +import androidx.annotation.VisibleForTesting +import com.android.systemui.surfaceeffects.shaderutil.SdfShaderLibrary +import com.android.systemui.surfaceeffects.shaderutil.ShaderUtilLibrary + +/** + * Shader class that renders an expanding ripple effect. The ripple contains three elements: + * 1. an expanding filled [RippleShape] that appears in the beginning and quickly fades away + * 2. an expanding ring that appears throughout the effect + * 3. an expanding ring-shaped area that reveals noise over #2. + * + * The ripple shader will be default to the circle shape if not specified. + * + * Modeled after frameworks/base/graphics/java/android/graphics/drawable/RippleShader.java. + */ +class RippleShader(rippleShape: RippleShape = RippleShape.CIRCLE) : + RuntimeShader(buildShader(rippleShape)) { + + /** Shapes that the [RippleShader] supports. */ + enum class RippleShape { + CIRCLE, + ROUNDED_BOX, + ELLIPSE + } + // language=AGSL + companion object { + private val TAG = RippleShader::class.simpleName + + // Default fade in/ out values. The value range is [0,1]. + const val DEFAULT_FADE_IN_START = 0f + const val DEFAULT_FADE_OUT_END = 1f + + const val DEFAULT_BASE_RING_FADE_IN_END = 0.1f + const val DEFAULT_BASE_RING_FADE_OUT_START = 0.3f + + const val DEFAULT_SPARKLE_RING_FADE_IN_END = 0.1f + const val DEFAULT_SPARKLE_RING_FADE_OUT_START = 0.4f + + const val DEFAULT_CENTER_FILL_FADE_IN_END = 0f + const val DEFAULT_CENTER_FILL_FADE_OUT_START = 0f + const val DEFAULT_CENTER_FILL_FADE_OUT_END = 0.6f + + const val RIPPLE_SPARKLE_STRENGTH: Float = 0.3f + const val RIPPLE_DEFAULT_COLOR: Int = 0xffffffff.toInt() + const val RIPPLE_DEFAULT_ALPHA: Int = 115 // full opacity is 255. + + private const val SHADER_UNIFORMS = + """ + uniform vec2 in_center; + uniform vec2 in_size; + uniform float in_cornerRadius; + uniform float in_thickness; + uniform float in_time; + uniform float in_distort_radial; + uniform float in_distort_xy; + uniform float in_fadeSparkle; + uniform float in_fadeFill; + uniform float in_fadeRing; + uniform float in_blur; + uniform float in_pixelDensity; + layout(color) uniform vec4 in_color; + uniform float in_sparkle_strength; + """ + + private const val SHADER_CIRCLE_MAIN = + """ + vec4 main(vec2 p) { + vec2 p_distorted = distort(p, in_time, in_distort_radial, in_distort_xy); + float radius = in_size.x * 0.5; + float sparkleRing = soften(circleRing(p_distorted-in_center, radius), in_blur); + float inside = soften(sdCircle(p_distorted-in_center, radius * 1.25), in_blur); + float sparkle = sparkles(p - mod(p, in_pixelDensity * 0.8), in_time * 0.00175) + * (1.-sparkleRing) * in_fadeSparkle; + + float rippleInsideAlpha = (1.-inside) * in_fadeFill; + float rippleRingAlpha = (1.-sparkleRing) * in_fadeRing; + float rippleAlpha = max(rippleInsideAlpha, rippleRingAlpha) * in_color.a; + vec4 ripple = vec4(in_color.rgb, 1.0) * rippleAlpha; + return mix(ripple, vec4(sparkle), sparkle * in_sparkle_strength); + } + """ + + private const val SHADER_ROUNDED_BOX_MAIN = + """ + vec4 main(vec2 p) { + float sparkleRing = soften(roundedBoxRing(p-in_center, in_size, in_cornerRadius, + in_thickness), in_blur); + float inside = soften(sdRoundedBox(p-in_center, in_size * 1.25, in_cornerRadius), + in_blur); + float sparkle = sparkles(p - mod(p, in_pixelDensity * 0.8), in_time * 0.00175) + * (1.-sparkleRing) * in_fadeSparkle; + + float rippleInsideAlpha = (1.-inside) * in_fadeFill; + float rippleRingAlpha = (1.-sparkleRing) * in_fadeRing; + float rippleAlpha = max(rippleInsideAlpha, rippleRingAlpha) * in_color.a; + vec4 ripple = vec4(in_color.rgb, 1.0) * rippleAlpha; + return mix(ripple, vec4(sparkle), sparkle * in_sparkle_strength); + } + """ + + private const val SHADER_ELLIPSE_MAIN = + """ + vec4 main(vec2 p) { + vec2 p_distorted = distort(p, in_time, in_distort_radial, in_distort_xy); + + float sparkleRing = soften(ellipseRing(p_distorted-in_center, in_size), in_blur); + float inside = soften(sdEllipse(p_distorted-in_center, in_size * 1.2), in_blur); + float sparkle = sparkles(p - mod(p, in_pixelDensity * 0.8), in_time * 0.00175) + * (1.-sparkleRing) * in_fadeSparkle; + + float rippleInsideAlpha = (1.-inside) * in_fadeFill; + float rippleRingAlpha = (1.-sparkleRing) * in_fadeRing; + float rippleAlpha = max(rippleInsideAlpha, rippleRingAlpha) * in_color.a; + vec4 ripple = vec4(in_color.rgb, 1.0) * rippleAlpha; + return mix(ripple, vec4(sparkle), sparkle * in_sparkle_strength); + } + """ + + private const val CIRCLE_SHADER = + SHADER_UNIFORMS + + ShaderUtilLibrary.SHADER_LIB + + SdfShaderLibrary.SHADER_SDF_OPERATION_LIB + + SdfShaderLibrary.CIRCLE_SDF + + SHADER_CIRCLE_MAIN + private const val ROUNDED_BOX_SHADER = + SHADER_UNIFORMS + + ShaderUtilLibrary.SHADER_LIB + + SdfShaderLibrary.SHADER_SDF_OPERATION_LIB + + SdfShaderLibrary.ROUNDED_BOX_SDF + + SHADER_ROUNDED_BOX_MAIN + private const val ELLIPSE_SHADER = + SHADER_UNIFORMS + + ShaderUtilLibrary.SHADER_LIB + + SdfShaderLibrary.SHADER_SDF_OPERATION_LIB + + SdfShaderLibrary.ELLIPSE_SDF + + SHADER_ELLIPSE_MAIN + + private fun buildShader(rippleShape: RippleShape): String = + when (rippleShape) { + RippleShape.CIRCLE -> CIRCLE_SHADER + RippleShape.ROUNDED_BOX -> ROUNDED_BOX_SHADER + RippleShape.ELLIPSE -> ELLIPSE_SHADER + } + + private fun subProgress(start: Float, end: Float, progress: Float): Float { + // Avoid division by 0. + if (start == end) { + // If start and end are the same and progress has exceeded the start/ end point, + // treat it as 1, otherwise 0. + return if (progress > start) 1f else 0f + } + + val min = Math.min(start, end) + val max = Math.max(start, end) + val sub = Math.min(Math.max(progress, min), max) + return (sub - start) / (end - start) + } + + private fun getFade(fadeParams: FadeParams, rawProgress: Float): Float { + val fadeIn = subProgress(fadeParams.fadeInStart, fadeParams.fadeInEnd, rawProgress) + val fadeOut = + 1f - subProgress(fadeParams.fadeOutStart, fadeParams.fadeOutEnd, rawProgress) + + return Math.min(fadeIn, fadeOut) + } + + private fun lerp(start: Float, stop: Float, amount: Float): Float { + return start + (stop - start) * amount + } + + // Copied from [Interpolators#STANDARD]. This is to remove dependency on AnimationLib. + private val STANDARD: Interpolator = PathInterpolator(0.2f, 0f, 0f, 1f) + } + + /** Sets the center position of the ripple. */ + fun setCenter(x: Float, y: Float) { + setFloatUniform("in_center", x, y) + } + + /** + * Blur multipliers for the ripple. + * + * <p>It interpolates from [blurStart] to [blurEnd] based on the [progress]. Increase number to + * add more blur. + */ + var blurStart: Float = 1.25f + var blurEnd: Float = 0.5f + + /** Size of the ripple. */ + val rippleSize = RippleSize() + + /** + * Linear progress of the ripple. Float value between [0, 1]. + * + * <p>Note that the progress here is expected to be linear without any curve applied. + */ + var rawProgress: Float = 0.0f + set(value) { + field = value + progress = STANDARD.getInterpolation(value) + + setFloatUniform("in_fadeSparkle", getFade(sparkleRingFadeParams, value)) + setFloatUniform("in_fadeRing", getFade(baseRingFadeParams, value)) + setFloatUniform("in_fadeFill", getFade(centerFillFadeParams, value)) + } + + /** Progress with Standard easing curve applied. */ + private var progress: Float = 0.0f + set(value) { + field = value + + rippleSize.update(value) + + setFloatUniform("in_size", rippleSize.currentWidth, rippleSize.currentHeight) + setFloatUniform("in_thickness", rippleSize.currentHeight * 0.5f) + // Corner radius is always max of the min between the current width and height. + setFloatUniform( + "in_cornerRadius", + Math.min(rippleSize.currentWidth, rippleSize.currentHeight) + ) + setFloatUniform("in_blur", lerp(1.25f, 0.5f, value)) + } + + /** Play time since the start of the effect. */ + var time: Float = 0.0f + set(value) { + field = value + setFloatUniform("in_time", value) + } + + /** A hex value representing the ripple color, in the format of ARGB */ + var color: Int = 0xffffff + set(value) { + field = value + setColorUniform("in_color", value) + } + + /** + * Noise sparkle intensity. Expected value between [0, 1]. The sparkle is white, and thus with + * strength 0 it's transparent, leaving the ripple fully smooth, while with strength 1 it's + * opaque white and looks the most grainy. + */ + var sparkleStrength: Float = 0.0f + set(value) { + field = value + setFloatUniform("in_sparkle_strength", value) + } + + /** Distortion strength of the ripple. Expected value between[0, 1]. */ + var distortionStrength: Float = 0.0f + set(value) { + field = value + setFloatUniform("in_distort_radial", 75 * rawProgress * value) + setFloatUniform("in_distort_xy", 75 * value) + } + + /** + * Pixel density of the screen that the effects are rendered to. + * + * <p>This value should come from [resources.displayMetrics.density]. + */ + var pixelDensity: Float = 1.0f + set(value) { + field = value + setFloatUniform("in_pixelDensity", value) + } + + /** Parameters that are used to fade in/ out of the sparkle ring. */ + val sparkleRingFadeParams = + FadeParams( + DEFAULT_FADE_IN_START, + DEFAULT_SPARKLE_RING_FADE_IN_END, + DEFAULT_SPARKLE_RING_FADE_OUT_START, + DEFAULT_FADE_OUT_END + ) + + /** + * Parameters that are used to fade in/ out of the base ring. + * + * <p>Note that the shader draws the sparkle ring on top of the base ring. + */ + val baseRingFadeParams = + FadeParams( + DEFAULT_FADE_IN_START, + DEFAULT_BASE_RING_FADE_IN_END, + DEFAULT_BASE_RING_FADE_OUT_START, + DEFAULT_FADE_OUT_END + ) + + /** Parameters that are used to fade in/ out of the center fill. */ + val centerFillFadeParams = + FadeParams( + DEFAULT_FADE_IN_START, + DEFAULT_CENTER_FILL_FADE_IN_END, + DEFAULT_CENTER_FILL_FADE_OUT_START, + DEFAULT_CENTER_FILL_FADE_OUT_END + ) + + /** + * Parameters used for fade in and outs of the ripple. + * + * <p>Note that all the fade in/ outs are "linear" progression. + * + * ``` + * (opacity) + * 1 + * │ + * maxAlpha ← ―――――――――――― + * │ / \ + * │ / \ + * minAlpha ←――――/ \―――― (alpha change) + * │ + * │ + * 0 ―――↑―――↑―――――――――↑―――↑――――1 (progress) + * fadeIn fadeOut + * Start & End Start & End + * ``` + * + * <p>If no fade in/ out is needed, set [fadeInStart] and [fadeInEnd] to 0; [fadeOutStart] and + * [fadeOutEnd] to 1. + */ + data class FadeParams( + /** + * The starting point of the fade out which ends at [fadeInEnd], given that the animation + * goes from 0 to 1. + */ + var fadeInStart: Float = DEFAULT_FADE_IN_START, + /** + * The endpoint of the fade in when the fade in starts at [fadeInStart], given that the + * animation goes from 0 to 1. + */ + var fadeInEnd: Float, + /** + * The starting point of the fade out which ends at 1, given that the animation goes from 0 + * to 1. + */ + var fadeOutStart: Float, + + /** The endpoint of the fade out, given that the animation goes from 0 to 1. */ + var fadeOutEnd: Float = DEFAULT_FADE_OUT_END, + ) + + /** + * Desired size of the ripple at a point t in [progress]. + * + * <p>Note that [progress] is curved and normalized. Below is an example usage: + * SizeAtProgress(t= 0f, width= 0f, height= 0f), SizeAtProgress(t= 0.2f, width= 500f, height= + * 700f), SizeAtProgress(t= 1f, width= 100f, height= 300f) + * + * <p>For simple ripple effects, you will want to use [setMaxSize] as it is translated into: + * SizeAtProgress(t= 0f, width= 0f, height= 0f), SizeAtProgress(t= 1f, width= maxWidth, height= + * maxHeight) + */ + data class SizeAtProgress( + /** Time t in [0,1] progress range. */ + var t: Float, + /** Target width size of the ripple at time [t]. */ + var width: Float, + /** Target height size of the ripple at time [t]. */ + var height: Float + ) + + /** Updates and stores the ripple size. */ + inner class RippleSize { + @VisibleForTesting var sizes = mutableListOf<SizeAtProgress>() + @VisibleForTesting var currentSizeIndex = 0 + @VisibleForTesting val initialSize = SizeAtProgress(0f, 0f, 0f) + + var currentWidth: Float = 0f + private set + var currentHeight: Float = 0f + private set + + /** + * Sets the max size of the ripple. + * + * <p>Use this if the ripple shape simply changes linearly. + */ + fun setMaxSize(width: Float, height: Float) { + setSizeAtProgresses(initialSize, SizeAtProgress(1f, width, height)) + } + + /** + * Sets the list of [sizes]. + * + * <p>Note that setting this clears the existing sizes. + */ + fun setSizeAtProgresses(vararg sizes: SizeAtProgress) { + // Reset everything. + this.sizes.clear() + currentSizeIndex = 0 + + this.sizes.addAll(sizes) + this.sizes.sortBy { it.t } + } + + /** + * Updates the current ripple size based on the progress. + * + * <p>Should be called when progress updates. + */ + fun update(progress: Float) { + val targetIndex = updateTargetIndex(progress) + val prevIndex = Math.max(targetIndex - 1, 0) + + val targetSize = sizes[targetIndex] + val prevSize = sizes[prevIndex] + + val subProgress = subProgress(prevSize.t, targetSize.t, progress) + + currentWidth = targetSize.width * subProgress + prevSize.width + currentHeight = targetSize.height * subProgress + prevSize.height + } + + private fun updateTargetIndex(progress: Float): Int { + if (sizes.isEmpty()) { + // It could be empty on init. + if (progress > 0f) { + Log.e( + TAG, + "Did you forget to set the ripple size? Use [setMaxSize] or " + + "[setSizeAtProgresses] before playing the animation." + ) + } + // If there's no size is set, we set everything to 0 and return early. + setSizeAtProgresses(initialSize) + return currentSizeIndex + } + + var candidate = sizes[currentSizeIndex] + + while (progress > candidate.t) { + currentSizeIndex = Math.min(currentSizeIndex + 1, sizes.size - 1) + candidate = sizes[currentSizeIndex] + } + + return currentSizeIndex + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleView.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleView.kt new file mode 100644 index 0000000000..b899127095 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/ripple/RippleView.kt @@ -0,0 +1,252 @@ +/* + * Copyright (C) 2021 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects.ripple + +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.ValueAnimator +import android.content.Context +import android.content.res.Configuration +import android.graphics.Canvas +import android.graphics.Paint +import android.util.AttributeSet +import android.view.View +import androidx.core.graphics.ColorUtils +import com.android.systemui.surfaceeffects.ripple.RippleShader.RippleShape + +/** + * A generic expanding ripple effect. + * + * Set up the shader with a desired [RippleShape] using [setupShader], [setMaxSize] and [setCenter], + * then call [startRipple] to trigger the ripple expansion. + */ +open class RippleView(context: Context?, attrs: AttributeSet?) : View(context, attrs) { + + protected lateinit var rippleShader: RippleShader + lateinit var rippleShape: RippleShape + private set + + private val ripplePaint = Paint() + protected val animator: ValueAnimator = ValueAnimator.ofFloat(0f, 1f) + + var duration: Long = 1750 + + fun setMaxSize(maxWidth: Float, maxHeight: Float) { + rippleShader.rippleSize.setMaxSize(maxWidth, maxHeight) + } + + private var centerX: Float = 0.0f + private var centerY: Float = 0.0f + fun setCenter(x: Float, y: Float) { + this.centerX = x + this.centerY = y + rippleShader.setCenter(x, y) + } + + override fun onConfigurationChanged(newConfig: Configuration?) { + rippleShader.pixelDensity = resources.displayMetrics.density + super.onConfigurationChanged(newConfig) + } + + override fun onAttachedToWindow() { + rippleShader.pixelDensity = resources.displayMetrics.density + super.onAttachedToWindow() + } + + /** Initializes the shader. Must be called before [startRipple]. */ + fun setupShader(rippleShape: RippleShape = RippleShape.CIRCLE) { + this.rippleShape = rippleShape + rippleShader = RippleShader(rippleShape) + + rippleShader.color = RippleShader.RIPPLE_DEFAULT_COLOR + rippleShader.rawProgress = 0f + rippleShader.sparkleStrength = RippleShader.RIPPLE_SPARKLE_STRENGTH + rippleShader.pixelDensity = resources.displayMetrics.density + + ripplePaint.shader = rippleShader + } + + /** + * Sets the fade parameters for the base ring. + * + * <p>Base ring indicates a blurred ring below the sparkle ring. See + * [RippleShader.baseRingFadeParams]. + */ + @JvmOverloads + fun setBaseRingFadeParams( + fadeInStart: Float = rippleShader.baseRingFadeParams.fadeInStart, + fadeInEnd: Float = rippleShader.baseRingFadeParams.fadeInEnd, + fadeOutStart: Float = rippleShader.baseRingFadeParams.fadeOutStart, + fadeOutEnd: Float = rippleShader.baseRingFadeParams.fadeOutEnd + ) { + setFadeParams( + rippleShader.baseRingFadeParams, + fadeInStart, + fadeInEnd, + fadeOutStart, + fadeOutEnd + ) + } + + /** + * Sets the fade parameters for the sparkle ring. + * + * <p>Sparkle ring refers to the ring that's drawn on top of the base ring. See + * [RippleShader.sparkleRingFadeParams]. + */ + @JvmOverloads + fun setSparkleRingFadeParams( + fadeInStart: Float = rippleShader.sparkleRingFadeParams.fadeInStart, + fadeInEnd: Float = rippleShader.sparkleRingFadeParams.fadeInEnd, + fadeOutStart: Float = rippleShader.sparkleRingFadeParams.fadeOutStart, + fadeOutEnd: Float = rippleShader.sparkleRingFadeParams.fadeOutEnd + ) { + setFadeParams( + rippleShader.sparkleRingFadeParams, + fadeInStart, + fadeInEnd, + fadeOutStart, + fadeOutEnd + ) + } + + /** + * Sets the fade parameters for the center fill. + * + * <p>One common use case is set all the params to 1, which completely removes the center fill. + * See [RippleShader.centerFillFadeParams]. + */ + @JvmOverloads + fun setCenterFillFadeParams( + fadeInStart: Float = rippleShader.centerFillFadeParams.fadeInStart, + fadeInEnd: Float = rippleShader.centerFillFadeParams.fadeInEnd, + fadeOutStart: Float = rippleShader.centerFillFadeParams.fadeOutStart, + fadeOutEnd: Float = rippleShader.centerFillFadeParams.fadeOutEnd + ) { + setFadeParams( + rippleShader.centerFillFadeParams, + fadeInStart, + fadeInEnd, + fadeOutStart, + fadeOutEnd + ) + } + + private fun setFadeParams( + fadeParams: RippleShader.FadeParams, + fadeInStart: Float, + fadeInEnd: Float, + fadeOutStart: Float, + fadeOutEnd: Float + ) { + with(fadeParams) { + this.fadeInStart = fadeInStart + this.fadeInEnd = fadeInEnd + this.fadeOutStart = fadeOutStart + this.fadeOutEnd = fadeOutEnd + } + } + + /** + * Sets blur multiplier at start and end of the progress. + * + * <p>It interpolates between [start] and [end]. No need to set it if using default blur. + */ + fun setBlur(start: Float, end: Float) { + rippleShader.blurStart = start + rippleShader.blurEnd = end + } + + /** + * Sets the list of [RippleShader.SizeAtProgress]. + * + * <p>Note that this clears the list before it sets with the new data. + */ + fun setSizeAtProgresses(vararg targetSizes: RippleShader.SizeAtProgress) { + rippleShader.rippleSize.setSizeAtProgresses(*targetSizes) + } + + @JvmOverloads + fun startRipple(onAnimationEnd: Runnable? = null) { + if (animator.isRunning) { + return // Ignore if ripple effect is already playing + } + animator.duration = duration + animator.addUpdateListener { updateListener -> + val now = updateListener.currentPlayTime + val progress = updateListener.animatedValue as Float + rippleShader.rawProgress = progress + rippleShader.distortionStrength = 1 - progress + rippleShader.time = now.toFloat() + invalidate() + } + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + onAnimationEnd?.run() + } + } + ) + animator.start() + } + + /** + * Set the color to be used for the ripple. + * + * The alpha value of the color will be applied to the ripple. The alpha range is [0-255]. + */ + fun setColor(color: Int, alpha: Int = RippleShader.RIPPLE_DEFAULT_ALPHA) { + rippleShader.color = ColorUtils.setAlphaComponent(color, alpha) + } + + /** Set the intensity of the sparkles. */ + fun setSparkleStrength(strength: Float) { + rippleShader.sparkleStrength = strength + } + + /** Indicates whether the ripple animation is playing. */ + fun rippleInProgress(): Boolean = animator.isRunning + + override fun onDraw(canvas: Canvas) { + if (!canvas.isHardwareAccelerated) { + // Drawing with the ripple shader requires hardware acceleration, so skip if it's + // unsupported. + return + } + // To reduce overdraw, we mask the effect to a circle or a rectangle that's bigger than the + // active effect area. Values here should be kept in sync with the animation implementation + // in the ripple shader. + if (rippleShape == RippleShape.CIRCLE) { + val maskRadius = rippleShader.rippleSize.currentWidth + canvas.drawCircle(centerX, centerY, maskRadius, ripplePaint) + } else if (rippleShape == RippleShape.ELLIPSE) { + val maskWidth = rippleShader.rippleSize.currentWidth * 2 + val maskHeight = rippleShader.rippleSize.currentHeight * 2 + canvas.drawRect( + /* left= */ centerX - maskWidth, + /* top= */ centerY - maskHeight, + /* right= */ centerX + maskWidth, + /* bottom= */ centerY + maskHeight, + ripplePaint + ) + } else { // RippleShape.RoundedBox + // No masking for the rounded box, as it has more blur which requires larger bounds. + // Masking creates sharp bounds even when the masking is 4 times bigger. + canvas.drawPaint(ripplePaint) + } + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/shaders/SolidColorShader.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/shaders/SolidColorShader.kt new file mode 100644 index 0000000000..c94fad7246 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/shaders/SolidColorShader.kt @@ -0,0 +1,36 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.systemui.surfaceeffects.shaders + +import android.graphics.RuntimeShader + +/** Simply renders a solid color. */ +class SolidColorShader(color: Int) : RuntimeShader(SHADER) { + // language=AGSL + private companion object { + private const val SHADER = + """ + layout(color) uniform vec4 in_color; + vec4 main(vec2 p) { + return in_color; + } + """ + } + + init { + setColorUniform("in_color", color) + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/shaders/SparkleShader.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/shaders/SparkleShader.kt new file mode 100644 index 0000000000..df07856e32 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/shaders/SparkleShader.kt @@ -0,0 +1,115 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.systemui.surfaceeffects.shaders + +import android.graphics.Color +import android.graphics.RuntimeShader +import android.graphics.Shader +import com.android.systemui.surfaceeffects.shaderutil.ShaderUtilLibrary + +/** + * Renders sparkles based on the luma matte. + * + * For example, you can pass in simplex noise as the luma matte and have a cloud looking sparkles. + * + * You may want to utilize this shader by: (Preferred) 1. Create a RuntimeShaderEffect and set the + * [RenderEffect] to the target [View]. + * 2. Create a custom [View], set the shader to the [Paint] and use [Canvas.drawPaint] in [onDraw]. + */ +class SparkleShader : RuntimeShader(SPARKLE_SHADER) { + // language=AGSL + companion object { + private const val UNIFORMS = + """ + // Used it for RenderEffect. For example: + // myView.setRenderEffect( + // RenderEffect.createRuntimeShaderEffect(SparkleShader(), "in_src") + // ) + uniform shader in_src; + uniform half in_time; + uniform half in_pixelate; + uniform shader in_lumaMatte; + layout(color) uniform vec4 in_color; + """ + private const val MAIN_SHADER = + """vec4 main(vec2 p) { + half3 src = in_src.eval(p).rgb; + half luma = getLuminosity(in_lumaMatte.eval(p).rgb); + half sparkle = sparkles(p - mod(p, in_pixelate), in_time); + half3 mask = maskLuminosity(in_color.rgb * sparkle, luma); + + return vec4(src * mask * in_color.a, in_color.a); + } + """ + private const val SPARKLE_SHADER = UNIFORMS + ShaderUtilLibrary.SHADER_LIB + MAIN_SHADER + + /** Highly recommended to use this value unless specified by design spec. */ + const val DEFAULT_SPARKLE_PIXELATE_AMOUNT = 0.8f + } + + init { + // Initializes the src and luma matte to be white. + setInputShader("in_src", SolidColorShader(Color.WHITE)) + setLumaMatteColor(Color.WHITE) + } + + /** + * Sets the time of the sparkle animation. + * + * This is used for animating sparkles. Note that this only makes the sparkles sparkle in place. + * In order to move the sparkles in x, y directions, move the luma matte input instead. + */ + fun setTime(time: Float) { + setFloatUniform("in_time", time) + } + + /** + * Sets pixelated amount of the sparkle. + * + * This value *must* be based on [resources.displayMetrics.density]. Otherwise, this will result + * in having different sparkle sizes on different screens. + * + * Expected to be used as follows: + * <pre> + * {@code + * val pixelDensity = context.resources.displayMetrics.density + * // Sparkles will be 0.8 of the pixel size. + * val sparkleShader = SparkleShader().apply { setPixelateAmount(pixelDensity * 0.8f) } + * } + * </pre> + */ + fun setPixelateAmount(pixelateAmount: Float) { + setFloatUniform("in_pixelate", pixelateAmount) + } + + /** + * Sets the luma matte for the sparkles. The luminosity determines the sparkle's visibility. + * Useful for setting a complex mask (e.g. simplex noise, texture, etc.) + */ + fun setLumaMatte(lumaMatte: Shader) { + setInputShader("in_lumaMatte", lumaMatte) + } + + /** Sets the luma matte for the sparkles. Useful for setting a solid color. */ + fun setLumaMatteColor(color: Int) { + setInputShader("in_lumaMatte", SolidColorShader(color)) + } + + /** Sets the color of the sparkles. Expect to have the alpha value encoded. */ + fun setColor(color: Int) { + setColorUniform("in_color", color) + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/shaderutil/SdfShaderLibrary.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/shaderutil/SdfShaderLibrary.kt new file mode 100644 index 0000000000..4efab58347 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/shaderutil/SdfShaderLibrary.kt @@ -0,0 +1,128 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.systemui.surfaceeffects.shaderutil + +/** Library class that contains 2D signed distance functions. */ +class SdfShaderLibrary { + // language=AGSL + companion object { + const val CIRCLE_SDF = + """ + float sdCircle(vec2 p, float r) { + return (length(p)-r) / r; + } + + float circleRing(vec2 p, float radius) { + float thicknessHalf = radius * 0.25; + + float outerCircle = sdCircle(p, radius + thicknessHalf); + float innerCircle = sdCircle(p, radius); + + return subtract(outerCircle, innerCircle); + } + """ + + const val BOX_SDF = + """ + float sdBox(vec2 p, vec2 size) { + size = size * 0.5; + vec2 d = abs(p) - size; + return length(max(d, 0.)) + min(max(d.x, d.y), 0.) / size.y; + } + """ + + const val ROUNDED_BOX_SDF = + """ + float sdRoundedBox(vec2 p, vec2 size, float cornerRadius) { + size *= 0.5; + cornerRadius *= 0.5; + vec2 d = abs(p) - size + cornerRadius; + + float outside = length(max(d, 0.0)); + float inside = min(max(d.x, d.y), 0.0); + + return (outside + inside - cornerRadius) / size.y; + } + + float roundedBoxRing(vec2 p, vec2 size, float cornerRadius, + float borderThickness) { + float outerRoundBox = sdRoundedBox(p, size + vec2(borderThickness), + cornerRadius + borderThickness); + float innerRoundBox = sdRoundedBox(p, size, cornerRadius); + return subtract(outerRoundBox, innerRoundBox); + } + """ + + // Used non-trigonometry parametrization and Halley's method (iterative) for root finding. + // This is more expensive than the regular circle SDF, recommend to use the circle SDF if + // possible. + const val ELLIPSE_SDF = + """float sdEllipse(vec2 p, vec2 wh) { + wh *= 0.5; + + // symmetry + (wh.x > wh.y) ? wh = wh.yx, p = abs(p.yx) : p = abs(p); + + vec2 u = wh*p, v = wh*wh; + + float U1 = u.y/2.0; + float U2 = v.y-v.x; + float U3 = u.x-U2; + float U4 = u.x+U2; + float U5 = 4.0*U1; + float U6 = 6.0*U1; + float U7 = 3.0*U3; + + float t = 0.5; + for (int i = 0; i < 3; i ++) { + float F1 = t*(t*t*(U1*t+U3)+U4)-U1; + float F2 = t*t*(U5*t+U7)+U4; + float F3 = t*(U6*t+U7); + + t += (F1*F2)/(F1*F3-F2*F2); + } + + t = clamp(t, 0.0, 1.0); + + float d = distance(p, wh*vec2(1.0-t*t,2.0*t)/(t*t+1.0)); + d /= wh.y; + + return (dot(p/wh,p/wh)>1.0) ? d : -d; + } + + float ellipseRing(vec2 p, vec2 wh) { + vec2 thicknessHalf = wh * 0.25; + + float outerEllipse = sdEllipse(p, wh + thicknessHalf); + float innerEllipse = sdEllipse(p, wh); + + return subtract(outerEllipse, innerEllipse); + } + """ + + const val SHADER_SDF_OPERATION_LIB = + """ + float soften(float d, float blur) { + float blurHalf = blur * 0.5; + return smoothstep(-blurHalf, blurHalf, d); + } + + float subtract(float outer, float inner) { + return max(outer, -inner); + } + """ + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/shaderutil/ShaderUtilLibrary.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/shaderutil/ShaderUtilLibrary.kt new file mode 100644 index 0000000000..867bbb7d74 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/shaderutil/ShaderUtilLibrary.kt @@ -0,0 +1,201 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.systemui.surfaceeffects.shaderutil + +/** Common utility functions that are used for computing shaders. */ +object ShaderUtilLibrary { + // language=AGSL + const val SHADER_LIB = + """ + float triangleNoise(vec2 n) { + n = fract(n * vec2(5.3987, 5.4421)); + n += dot(n.yx, n.xy + vec2(21.5351, 14.3137)); + float xy = n.x * n.y; + // compute in [0..2[ and remap to [-1.0..1.0[ + return fract(xy * 95.4307) + fract(xy * 75.04961) - 1.0; + } + + const float PI = 3.1415926535897932384626; + + float sparkles(vec2 uv, float t) { + float n = triangleNoise(uv); + float s = 0.0; + for (float i = 0; i < 4; i += 1) { + float l = i * 0.01; + float h = l + 0.1; + float o = smoothstep(n - l, h, n); + o *= abs(sin(PI * o * (t + 0.55 * i))); + s += o; + } + return s; + } + + vec2 distort(vec2 p, float time, float distort_amount_radial, + float distort_amount_xy) { + float angle = atan(p.y, p.x); + return p + vec2(sin(angle * 8 + time * 0.003 + 1.641), + cos(angle * 5 + 2.14 + time * 0.00412)) * distort_amount_radial + + vec2(sin(p.x * 0.01 + time * 0.00215 + 0.8123), + cos(p.y * 0.01 + time * 0.005931)) * distort_amount_xy; + } + + // Perceived luminosity (L′), not absolute luminosity. + half getLuminosity(vec3 c) { + return 0.3 * c.r + 0.59 * c.g + 0.11 * c.b; + } + + // Creates a luminosity mask and clamp to the legal range. + vec3 maskLuminosity(vec3 dest, float lum) { + dest.rgb *= vec3(lum); + // Clip back into the legal range + dest = clamp(dest, vec3(0.), vec3(1.0)); + return dest; + } + + // Integer mod. GLSL es 1.0 doesn't have integer mod :( + int imod(int a, int b) { + return a - (b * (a / b)); + } + + ivec3 imod(ivec3 a, int b) { + return ivec3(imod(a.x, b), imod(a.y, b), imod(a.z, b)); + } + + // Integer based hash function with the return range of [-1, 1]. + vec3 hash(vec3 p) { + ivec3 v = ivec3(p); + v = v * 1671731 + 10139267; + + v.x += v.y * v.z; + v.y += v.z * v.x; + v.z += v.x * v.y; + + ivec3 v2 = v / 65536; // v >> 16 + v = imod((10 - imod((v + v2), 10)), 10); // v ^ v2 + + v.x += v.y * v.z; + v.y += v.z * v.x; + v.z += v.x * v.y; + + // Use sin and cos to map the range to [-1, 1]. + return vec3(sin(float(v.x)), cos(float(v.y)), sin(float(v.z))); + } + + // Skew factors (non-uniform). + const half SKEW = 0.3333333; // 1/3 + const half UNSKEW = 0.1666667; // 1/6 + + // Return range roughly [-1,1]. + // It's because the hash function (that returns a random gradient vector) returns + // different magnitude of vectors. Noise doesn't have to be in the precise range thus + // skipped normalize. + half simplex3d(vec3 p) { + // Skew the input coordinate, so that we get squashed cubical grid + vec3 s = floor(p + (p.x + p.y + p.z) * SKEW); + + // Unskew back + vec3 u = s - (s.x + s.y + s.z) * UNSKEW; + + // Unskewed coordinate that is relative to p, to compute the noise contribution + // based on the distance. + vec3 c0 = p - u; + + // We have six simplices (in this case tetrahedron, since we are in 3D) that we + // could possibly in. + // Here, we are finding the correct tetrahedron (simplex shape), and traverse its + // four vertices (c0..3) when computing noise contribution. + // The way we find them is by comparing c0's x,y,z values. + // For example in 2D, we can find the triangle (simplex shape in 2D) that we are in + // by comparing x and y values. i.e. x>y lower, x<y, upper triangle. + // Same applies in 3D. + // + // Below indicates the offsets (or offset directions) when c0=(x0,y0,z0) + // x0>y0>z0: (1,0,0), (1,1,0), (1,1,1) + // x0>z0>y0: (1,0,0), (1,0,1), (1,1,1) + // z0>x0>y0: (0,0,1), (1,0,1), (1,1,1) + // z0>y0>x0: (0,0,1), (0,1,1), (1,1,1) + // y0>z0>x0: (0,1,0), (0,1,1), (1,1,1) + // y0>x0>z0: (0,1,0), (1,1,0), (1,1,1) + // + // The rule is: + // * For offset1, set 1 at the max component, otherwise 0. + // * For offset2, set 0 at the min component, otherwise 1. + // * For offset3, set 1 for all. + // + // Encode x0-y0, y0-z0, z0-x0 in a vec3 + vec3 en = c0 - c0.yzx; + // Each represents whether x0>y0, y0>z0, z0>x0 + en = step(vec3(0.), en); + // en.zxy encodes z0>x0, x0>y0, y0>x0 + vec3 offset1 = en * (1. - en.zxy); // find max + vec3 offset2 = 1. - en.zxy * (1. - en); // 1-(find min) + vec3 offset3 = vec3(1.); + + vec3 c1 = c0 - offset1 + UNSKEW; + vec3 c2 = c0 - offset2 + UNSKEW * 2.; + vec3 c3 = c0 - offset3 + UNSKEW * 3.; + + // Kernel summation: dot(max(0, r^2-d^2))^4, noise contribution) + // + // First compute d^2, squared distance to the point. + vec4 w; // w = max(0, r^2 - d^2)) + w.x = dot(c0, c0); + w.y = dot(c1, c1); + w.z = dot(c2, c2); + w.w = dot(c3, c3); + + // Noise contribution should decay to zero before they cross the simplex boundary. + // Usually r^2 is 0.5 or 0.6; + // 0.5 ensures continuity but 0.6 increases the visual quality for the application + // where discontinuity isn't noticeable. + w = max(0.6 - w, 0.); + + // Noise contribution from each point. + vec4 nc; + nc.x = dot(hash(s), c0); + nc.y = dot(hash(s + offset1), c1); + nc.z = dot(hash(s + offset2), c2); + nc.w = dot(hash(s + offset3), c3); + + nc *= w*w*w*w; + + // Add all the noise contributions. + // Should multiply by the possible max contribution to adjust the range in [-1,1]. + return dot(vec4(32.), nc); + } + + // Random rotations. + // The way you create fractal noise is layering simplex noise with some rotation. + // To make random cloud looking noise, the rotations should not align. (Otherwise it + // creates patterned noise). + // Below rotations only rotate in one axis. + const mat3 rot1 = mat3(1.0, 0. ,0., 0., 0.15, -0.98, 0., 0.98, 0.15); + const mat3 rot2 = mat3(-0.95, 0. ,-0.3, 0., 1., 0., 0.3, 0., -0.95); + const mat3 rot3 = mat3(1.0, 0. ,0., 0., -0.44, -0.89, 0., 0.89, -0.44); + + // Octave = 4 + // Divide each coefficient by 3 to produce more grainy noise. + half simplex3d_fractal(vec3 p) { + return 0.675 * simplex3d(p * rot1) + 0.225 * simplex3d(2.0 * p * rot2) + + 0.075 * simplex3d(4.0 * p * rot3) + 0.025 * simplex3d(8.0 * p); + } + + // Screen blend + vec3 screen(vec3 dest, vec3 src) { + return dest + src - dest * src; + } + """ +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseAnimationConfig.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseAnimationConfig.kt new file mode 100644 index 0000000000..ba8f1ace02 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseAnimationConfig.kt @@ -0,0 +1,89 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.systemui.surfaceeffects.turbulencenoise + +import android.graphics.Color +import java.util.Random + +/** Turbulence noise animation configuration. */ +data class TurbulenceNoiseAnimationConfig( + /** The number of grids that is used to generate noise. */ + val gridCount: Float = DEFAULT_NOISE_GRID_COUNT, + + /** Multiplier for the noise luma matte. Increase this for brighter effects. */ + val luminosityMultiplier: Float = DEFAULT_LUMINOSITY_MULTIPLIER, + + /** Initial noise offsets. */ + val noiseOffsetX: Float = random.nextFloat(), + val noiseOffsetY: Float = random.nextFloat(), + val noiseOffsetZ: Float = random.nextFloat(), + + /** + * Noise move speed variables. + * + * Its sign determines the direction; magnitude determines the speed. <ul> + * + * ``` + * <li> [noiseMoveSpeedX] positive: right to left; negative: left to right. + * <li> [noiseMoveSpeedY] positive: bottom to top; negative: top to bottom. + * <li> [noiseMoveSpeedZ] its sign doesn't matter much, as it moves in Z direction. Use it + * to add turbulence in place. + * ``` + * + * </ul> + */ + val noiseMoveSpeedX: Float = 0f, + val noiseMoveSpeedY: Float = 0f, + val noiseMoveSpeedZ: Float = DEFAULT_NOISE_SPEED_Z, + + /** Color of the effect. */ + val color: Int = DEFAULT_COLOR, + /** Background color of the effect. */ + val screenColor: Int = DEFAULT_SCREEN_COLOR, + val width: Float = 0f, + val height: Float = 0f, + val maxDuration: Float = DEFAULT_MAX_DURATION_IN_MILLIS, + val easeInDuration: Float = DEFAULT_EASING_DURATION_IN_MILLIS, + val easeOutDuration: Float = DEFAULT_EASING_DURATION_IN_MILLIS, + val pixelDensity: Float = 1f, + /** + * Variants in noise. Higher number means more contrast; lower number means less contrast but + * make the noise dimmed. You may want to increase the [lumaMatteBlendFactor] to compensate. + * Expected range [0, 1]. + */ + val lumaMatteBlendFactor: Float = DEFAULT_LUMA_MATTE_BLEND_FACTOR, + /** + * Offset for the overall brightness in noise. Higher number makes the noise brighter. You may + * want to use this if you have made the noise softer using [lumaMatteBlendFactor]. Expected + * range [0, 1]. + */ + val lumaMatteOverallBrightness: Float = DEFAULT_LUMA_MATTE_OVERALL_BRIGHTNESS, + /** Whether to flip the luma mask. */ + val shouldInverseNoiseLuminosity: Boolean = false, +) { + companion object { + const val DEFAULT_MAX_DURATION_IN_MILLIS = 30_000f // Max 30 sec + const val DEFAULT_EASING_DURATION_IN_MILLIS = 750f + const val DEFAULT_LUMINOSITY_MULTIPLIER = 1f + const val DEFAULT_NOISE_GRID_COUNT = 1.2f + const val DEFAULT_NOISE_SPEED_Z = 0.3f + const val DEFAULT_COLOR = Color.WHITE + const val DEFAULT_LUMA_MATTE_BLEND_FACTOR = 1f + const val DEFAULT_LUMA_MATTE_OVERALL_BRIGHTNESS = 0f + const val DEFAULT_SCREEN_COLOR = Color.BLACK + private val random = Random() + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseController.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseController.kt new file mode 100644 index 0000000000..e862f0c43a --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseController.kt @@ -0,0 +1,115 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.systemui.surfaceeffects.turbulencenoise + +import android.view.View +import androidx.annotation.VisibleForTesting + +/** Plays [TurbulenceNoiseView] in ease-in, main (no easing), and ease-out order. */ +class TurbulenceNoiseController(private val turbulenceNoiseView: TurbulenceNoiseView) { + + companion object { + /** + * States of the turbulence noise animation. + * + * <p>The state is designed to be follow the order below: [AnimationState.EASE_IN], + * [AnimationState.MAIN], [AnimationState.EASE_OUT]. + */ + enum class AnimationState { + EASE_IN, + MAIN, + EASE_OUT, + NOT_PLAYING + } + } + + /** Current state of the animation. */ + @VisibleForTesting + var state: AnimationState = AnimationState.NOT_PLAYING + set(value) { + field = value + if (state == AnimationState.NOT_PLAYING) { + turbulenceNoiseView.visibility = View.INVISIBLE + turbulenceNoiseView.clearConfig() + } else { + turbulenceNoiseView.visibility = View.VISIBLE + } + } + + init { + turbulenceNoiseView.visibility = View.INVISIBLE + } + + /** Updates the color of the noise. */ + fun updateNoiseColor(color: Int) { + if (state == AnimationState.NOT_PLAYING) { + return + } + turbulenceNoiseView.updateColor(color) + } + + /** + * Plays [TurbulenceNoiseView] with the given config. + * + * <p>It plays ease-in, main, and ease-out animations in sequence. + */ + fun play( + baseType: TurbulenceNoiseShader.Companion.Type, + config: TurbulenceNoiseAnimationConfig + ) { + if (state != AnimationState.NOT_PLAYING) { + return // Ignore if any of the animation is playing. + } + + turbulenceNoiseView.initShader(baseType, config) + playEaseInAnimation() + } + + // TODO(b/237282226): Support force finish. + /** Finishes the main animation, which triggers the ease-out animation. */ + fun finish() { + if (state == AnimationState.MAIN) { + turbulenceNoiseView.finish(nextAnimation = this::playEaseOutAnimation) + } + } + + private fun playEaseInAnimation() { + if (state != AnimationState.NOT_PLAYING) { + return + } + state = AnimationState.EASE_IN + + turbulenceNoiseView.playEaseIn(this::playMainAnimation) + } + + private fun playMainAnimation() { + if (state != AnimationState.EASE_IN) { + return + } + state = AnimationState.MAIN + + turbulenceNoiseView.play(this::playEaseOutAnimation) + } + + private fun playEaseOutAnimation() { + if (state != AnimationState.MAIN) { + return + } + state = AnimationState.EASE_OUT + + turbulenceNoiseView.playEaseOut(onAnimationEnd = { state = AnimationState.NOT_PLAYING }) + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseShader.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseShader.kt new file mode 100644 index 0000000000..f426aa597a --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseShader.kt @@ -0,0 +1,314 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.systemui.surfaceeffects.turbulencenoise + +import android.graphics.RuntimeShader +import com.android.systemui.surfaceeffects.shaders.SolidColorShader +import com.android.systemui.surfaceeffects.shaderutil.ShaderUtilLibrary +import java.lang.Float.max + +/** + * Shader that renders turbulence simplex noise, by default no octave. + * + * @param baseType the base [Type] of the shader. + */ +class TurbulenceNoiseShader(val baseType: Type = Type.SIMPLEX_NOISE) : + RuntimeShader(getShader(baseType)) { + // language=AGSL + companion object { + /** Uniform name for the background buffer (e.g. image, solid color, etc.). */ + const val BACKGROUND_UNIFORM = "in_src" + private const val UNIFORMS = + """ + uniform shader ${BACKGROUND_UNIFORM}; + uniform float in_gridNum; + uniform vec3 in_noiseMove; + uniform vec2 in_size; + uniform float in_aspectRatio; + uniform float in_opacity; + uniform float in_pixelDensity; + uniform float in_inverseLuma; + uniform half in_lumaMatteBlendFactor; + uniform half in_lumaMatteOverallBrightness; + layout(color) uniform vec4 in_color; + layout(color) uniform vec4 in_screenColor; + """ + + private const val SIMPLEX_SHADER = + """ + vec4 main(vec2 p) { + vec2 uv = p / in_size.xy; + uv.x *= in_aspectRatio; + + // Compute turbulence effect with the uv distorted with simplex noise. + vec3 noiseP = vec3(uv + in_noiseMove.xy, in_noiseMove.z) * in_gridNum; + vec3 color = getColorTurbulenceMask(simplex3d(noiseP) * in_inverseLuma); + + // Blend the result with the background color. + color = in_src.eval(p).rgb + color * 0.6; + + // Add dither with triangle distribution to avoid color banding. Dither in the + // shader here as we are in gamma space. + float dither = triangleNoise(p * in_pixelDensity) / 255.; + color += dither.rrr; + + // Return the pre-multiplied alpha result, i.e. [R*A, G*A, B*A, A]. + return vec4(color * in_opacity, in_opacity); + } + """ + + private const val SIMPLEX_SIMPLE_SHADER = + """ + vec4 main(vec2 p) { + vec2 uv = p / in_size.xy; + uv.x *= in_aspectRatio; + + // Compute turbulence effect with the uv distorted with simplex noise. + vec3 noisePos = vec3(uv + in_noiseMove.xy, in_noiseMove.z) * in_gridNum; + float mixFactor = simplex3d(noisePos) * 0.5 + 0.5; + return mix(in_color, in_screenColor, mixFactor); + } + """ + + private const val FRACTAL_SHADER = + """ + vec4 main(vec2 p) { + vec2 uv = p / in_size.xy; + uv.x *= in_aspectRatio; + + vec3 noiseP = vec3(uv + in_noiseMove.xy, in_noiseMove.z) * in_gridNum; + vec3 color = getColorTurbulenceMask(simplex3d_fractal(noiseP) * in_inverseLuma); + + // Blend the result with the background color. + color = in_src.eval(p).rgb + color * 0.6; + + // Skip dithering. + return vec4(color * in_opacity, in_opacity); + } + """ + + /** + * This effect has two layers: color turbulence effect with sparkles on top. + * 1. Gets the luma matte using Simplex noise. + * 2. Generate a colored turbulence layer with the luma matte. + * 3. Generate a colored sparkle layer with the same luma matter. + * 4. Apply a screen color to the background image. + * 5. Composite the previous result with the color turbulence. + * 6. Composite the latest result with the sparkles. + */ + private const val SIMPLEX_SPARKLE_SHADER = + """ + vec4 main(vec2 p) { + vec2 uv = p / in_size.xy; + uv.x *= in_aspectRatio; + + vec3 noiseP = vec3(uv + in_noiseMove.xy, in_noiseMove.z) * in_gridNum; + // Luma is used for both color and sparkle masks. + float luma = simplex3d(noiseP) * in_inverseLuma; + + // Get color layer (color mask with in_color applied) + vec3 colorLayer = getColorTurbulenceMask(simplex3d(noiseP) * in_inverseLuma); + float dither = triangleNoise(p * in_pixelDensity) / 255.; + colorLayer += dither.rrr; + + // Get sparkle layer (sparkle mask with particles & in_color applied) + vec3 sparkleLayer = getSparkleTurbulenceMask(luma, p); + + // Composite with the background. + half4 bgColor = in_src.eval(p); + half sparkleOpacity = smoothstep(0, 0.75, in_opacity); + + half3 effect = screen(bgColor.rgb, in_screenColor.rgb); + effect = screen(effect, colorLayer * 0.22); + effect += sparkleLayer * sparkleOpacity; + + return mix(bgColor, vec4(effect, 1.), in_opacity); + } + """ + + private const val COMMON_FUNCTIONS = + /** + * Below two functions generate turbulence layers (color or sparkles applied) with the + * given luma matte. They both return a mask with in_color applied. + */ + """ + vec3 getColorTurbulenceMask(float luma) { + // Bring it to [0, 1] range. + luma = luma * 0.5 + 0.5; + + half colorLuma = + saturate(luma * in_lumaMatteBlendFactor + in_lumaMatteOverallBrightness) + * in_opacity; + vec3 colorLayer = maskLuminosity(in_color.rgb, colorLuma); + + return colorLayer; + } + + vec3 getSparkleTurbulenceMask(float luma, vec2 p) { + half lumaIntensity = 1.75; + half lumaBrightness = -1.3; + half sparkleLuma = max(luma * lumaIntensity + lumaBrightness, 0.); + + float sparkle = sparkles(p - mod(p, in_pixelDensity * 0.8), in_noiseMove.z); + vec3 sparkleLayer = maskLuminosity(in_color.rgb * sparkle, sparkleLuma); + + return sparkleLayer; + } + """ + private const val SIMPLEX_NOISE_SIMPLE_SHADER = + ShaderUtilLibrary.SHADER_LIB + UNIFORMS + SIMPLEX_SIMPLE_SHADER + private const val SIMPLEX_NOISE_SHADER = + ShaderUtilLibrary.SHADER_LIB + UNIFORMS + COMMON_FUNCTIONS + SIMPLEX_SHADER + private const val FRACTAL_NOISE_SHADER = + ShaderUtilLibrary.SHADER_LIB + UNIFORMS + COMMON_FUNCTIONS + FRACTAL_SHADER + private const val SPARKLE_NOISE_SHADER = + ShaderUtilLibrary.SHADER_LIB + UNIFORMS + COMMON_FUNCTIONS + SIMPLEX_SPARKLE_SHADER + + enum class Type { + /** Effect with a color noise turbulence with luma matte. */ + SIMPLEX_NOISE, + /** Effect with a noise interpolating between foreground and background colors. */ + SIMPLEX_NOISE_SIMPLE, + /** Effect with a simple color noise turbulence, with fractal. */ + SIMPLEX_NOISE_FRACTAL, + /** Effect with color & sparkle turbulence with screen color layer. */ + SIMPLEX_NOISE_SPARKLE, + } + + fun getShader(type: Type): String { + return when (type) { + Type.SIMPLEX_NOISE -> SIMPLEX_NOISE_SHADER + Type.SIMPLEX_NOISE_SIMPLE -> SIMPLEX_NOISE_SIMPLE_SHADER + Type.SIMPLEX_NOISE_FRACTAL -> FRACTAL_NOISE_SHADER + Type.SIMPLEX_NOISE_SPARKLE -> SPARKLE_NOISE_SHADER + } + } + } + + /** Convenient way for updating multiple uniform values via config object. */ + fun applyConfig(config: TurbulenceNoiseAnimationConfig) { + setGridCount(config.gridCount) + setPixelDensity(config.pixelDensity) + setColor(config.color) + setScreenColor(config.screenColor) + setSize(config.width, config.height) + setLumaMatteFactors(config.lumaMatteBlendFactor, config.lumaMatteOverallBrightness) + setInverseNoiseLuminosity(config.shouldInverseNoiseLuminosity) + setNoiseMove(config.noiseOffsetX, config.noiseOffsetY, config.noiseOffsetZ) + } + + /** Sets the number of grid for generating noise. */ + fun setGridCount(gridNumber: Float = 1.0f) { + setFloatUniform("in_gridNum", gridNumber) + } + + /** + * Sets the pixel density of the screen. + * + * Used it for noise dithering. + */ + fun setPixelDensity(pixelDensity: Float) { + setFloatUniform("in_pixelDensity", pixelDensity) + } + + /** + * Sets the noise color of the effect. Alpha is ignored for all types except + * [Type.SIMPLEX_NOISE_SIMPLE]. + */ + fun setColor(color: Int) { + setColorUniform("in_color", color) + } + + /** Sets the color that is used for blending on top of the background color/image. */ + fun setScreenColor(color: Int) { + setColorUniform("in_screenColor", color) + } + + /** + * Sets the background color of the effect. Alpha is ignored. If you are using [RenderEffect], + * no need to call this function since the background image of the View will be used. + */ + fun setBackgroundColor(color: Int) { + setInputShader(BACKGROUND_UNIFORM, SolidColorShader(color)) + } + + /** + * Sets the opacity of the effect. Not intended to set by the client as it is used for + * ease-in/out animations. + * + * Expected value range is [1, 0]. + */ + fun setOpacity(opacity: Float) { + setFloatUniform("in_opacity", opacity) + } + + /** Sets the size of the shader. */ + fun setSize(width: Float, height: Float) { + setFloatUniform("in_size", width, height) + setFloatUniform("in_aspectRatio", width / max(height, 0.001f)) + } + + /** + * Sets blend and brightness factors of the luma matte. + * + * @param lumaMatteBlendFactor increases or decreases the amount of variance in noise. Setting + * this a lower number removes variations. I.e. the turbulence noise will look more blended. + * Expected input range is [0, 1]. + * @param lumaMatteOverallBrightness adds the overall brightness of the turbulence noise. + * Expected input range is [0, 1]. + * + * Example usage: You may want to apply a small number to [lumaMatteBlendFactor], such as 0.2, + * which makes the noise look softer. However it makes the overall noise look dim, so you want + * offset something like 0.3 for [lumaMatteOverallBrightness] to bring back its overall + * brightness. + */ + fun setLumaMatteFactors( + lumaMatteBlendFactor: Float = 1f, + lumaMatteOverallBrightness: Float = 0f, + ) { + setFloatUniform("in_lumaMatteBlendFactor", lumaMatteBlendFactor) + setFloatUniform("in_lumaMatteOverallBrightness", lumaMatteOverallBrightness) + } + + /** + * Sets whether to inverse the luminosity of the noise. + * + * By default noise will be used as a luma matte as is. This means that you will see color in + * the brighter area. If you want to invert it, meaning blend color onto the darker side, set to + * true. + */ + fun setInverseNoiseLuminosity(inverse: Boolean) { + setFloatUniform("in_inverseLuma", if (inverse) -1f else 1f) + } + + /** Current noise movements in x, y, and z axes. */ + var noiseOffsetX: Float = 0f + private set + + var noiseOffsetY: Float = 0f + private set + + var noiseOffsetZ: Float = 0f + private set + + /** Sets noise move offset in x, y, and z direction. */ + fun setNoiseMove(x: Float, y: Float, z: Float) { + noiseOffsetX = x + noiseOffsetY = y + noiseOffsetZ = z + setFloatUniform("in_noiseMove", noiseOffsetX, noiseOffsetY, noiseOffsetZ) + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseView.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseView.kt new file mode 100644 index 0000000000..5e72e3bd1e --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/turbulencenoise/TurbulenceNoiseView.kt @@ -0,0 +1,236 @@ +/* + * Copyright (C) 2022 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.systemui.surfaceeffects.turbulencenoise + +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.ValueAnimator +import android.content.Context +import android.graphics.BlendMode +import android.graphics.Canvas +import android.graphics.Paint +import android.util.AttributeSet +import android.view.View +import androidx.annotation.VisibleForTesting + +/** + * View that renders turbulence noise effect. + * + * <p>Use [TurbulenceNoiseController] to control the turbulence animation. If you want to make some + * other turbulence noise effects, either add functionality to [TurbulenceNoiseController] or create + * another controller instead of extend or modify the [TurbulenceNoiseView]. + * + * <p>Please keep the [TurbulenceNoiseView] (or View in general) not aware of the state. + * + * <p>Please avoid inheriting the View if possible. Instead, reconsider adding a controller for a + * new case. + */ +class TurbulenceNoiseView(context: Context?, attrs: AttributeSet?) : View(context, attrs) { + + companion object { + private const val MS_TO_SEC = 0.001f + } + + private val paint = Paint() + @VisibleForTesting var turbulenceNoiseShader: TurbulenceNoiseShader? = null + @VisibleForTesting var noiseConfig: TurbulenceNoiseAnimationConfig? = null + @VisibleForTesting var currentAnimator: ValueAnimator? = null + + override fun onDraw(canvas: Canvas) { + if (!canvas.isHardwareAccelerated) { + // Drawing with the turbulence noise shader requires hardware acceleration, so skip + // if it's unsupported. + return + } + + canvas.drawPaint(paint) + } + + /** Updates the color during the animation. No-op if there's no animation playing. */ + internal fun updateColor(color: Int) { + turbulenceNoiseShader?.setColor(color) + } + + /** Plays the turbulence noise with no easing. */ + @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) + fun play(onAnimationEnd: Runnable? = null) { + if (noiseConfig == null) { + return + } + val config = noiseConfig!! + val shader = turbulenceNoiseShader!! + + val animator = ValueAnimator.ofFloat(0f, 1f) + animator.duration = config.maxDuration.toLong() + + // Animation should start from the initial position to avoid abrupt transition. + val initialX = shader.noiseOffsetX + val initialY = shader.noiseOffsetY + val initialZ = shader.noiseOffsetZ + + animator.addUpdateListener { updateListener -> + val timeInSec = updateListener.currentPlayTime * MS_TO_SEC + shader.setNoiseMove( + initialX + timeInSec * config.noiseMoveSpeedX, + initialY + timeInSec * config.noiseMoveSpeedY, + initialZ + timeInSec * config.noiseMoveSpeedZ + ) + + shader.setOpacity(config.luminosityMultiplier) + + invalidate() + } + + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + currentAnimator = null + onAnimationEnd?.run() + } + } + ) + + animator.start() + currentAnimator = animator + } + + /** Plays the turbulence noise with linear ease-in. */ + @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) + fun playEaseIn(onAnimationEnd: Runnable? = null) { + if (noiseConfig == null) { + return + } + val config = noiseConfig!! + val shader = turbulenceNoiseShader!! + + val animator = ValueAnimator.ofFloat(0f, 1f) + animator.duration = config.easeInDuration.toLong() + + // Animation should start from the initial position to avoid abrupt transition. + val initialX = shader.noiseOffsetX + val initialY = shader.noiseOffsetY + val initialZ = shader.noiseOffsetZ + + animator.addUpdateListener { updateListener -> + val timeInSec = updateListener.currentPlayTime * MS_TO_SEC + val progress = updateListener.animatedValue as Float + + shader.setNoiseMove( + initialX + timeInSec * config.noiseMoveSpeedX, + initialY + timeInSec * config.noiseMoveSpeedY, + initialZ + timeInSec * config.noiseMoveSpeedZ + ) + + // TODO: Replace it with a better curve. + shader.setOpacity(progress * config.luminosityMultiplier) + + invalidate() + } + + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + currentAnimator = null + onAnimationEnd?.run() + } + } + ) + + animator.start() + currentAnimator = animator + } + + /** Plays the turbulence noise with linear ease-out. */ + @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) + fun playEaseOut(onAnimationEnd: Runnable? = null) { + if (noiseConfig == null) { + return + } + val config = noiseConfig!! + val shader = turbulenceNoiseShader!! + + val animator = ValueAnimator.ofFloat(0f, 1f) + animator.duration = config.easeOutDuration.toLong() + + // Animation should start from the initial position to avoid abrupt transition. + val initialX = shader.noiseOffsetX + val initialY = shader.noiseOffsetY + val initialZ = shader.noiseOffsetZ + + animator.addUpdateListener { updateListener -> + val timeInSec = updateListener.currentPlayTime * MS_TO_SEC + val progress = updateListener.animatedValue as Float + + shader.setNoiseMove( + initialX + timeInSec * config.noiseMoveSpeedX, + initialY + timeInSec * config.noiseMoveSpeedY, + initialZ + timeInSec * config.noiseMoveSpeedZ + ) + + // TODO: Replace it with a better curve. + shader.setOpacity((1f - progress) * config.luminosityMultiplier) + + invalidate() + } + + animator.addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + currentAnimator = null + onAnimationEnd?.run() + } + } + ) + + animator.start() + currentAnimator = animator + } + + /** Finishes the current animation if playing and plays the next animation if given. */ + @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) + fun finish(nextAnimation: Runnable? = null) { + // Calling Animator#end sets the animation state back to the initial state. Using pause to + // avoid visual artifacts. + currentAnimator?.pause() + currentAnimator = null + + nextAnimation?.run() + } + + /** Applies shader uniforms. Must be called before playing animation. */ + @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) + fun initShader( + baseType: TurbulenceNoiseShader.Companion.Type, + config: TurbulenceNoiseAnimationConfig + ) { + noiseConfig = config + if (turbulenceNoiseShader == null || turbulenceNoiseShader?.baseType != baseType) { + turbulenceNoiseShader = TurbulenceNoiseShader(baseType) + + paint.shader = turbulenceNoiseShader!! + } + turbulenceNoiseShader!!.applyConfig(config) + } + + /** Sets the blend mode of the View. */ + fun setBlendMode(blendMode: BlendMode) { + paint.blendMode = blendMode + } + + internal fun clearConfig() { + noiseConfig = null + } +} diff --git a/systemUI/anim/src/com/android/systemui/surfaceeffects/utils/MathUtils.kt b/systemUI/anim/src/com/android/systemui/surfaceeffects/utils/MathUtils.kt new file mode 100644 index 0000000000..7ed3b87f68 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/surfaceeffects/utils/MathUtils.kt @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.surfaceeffects.utils + +/** Copied from android.utils.MathUtils */ +object MathUtils { + fun lerp(start: Float, stop: Float, amount: Float): Float { + return start + (stop - start) * amount + } +} diff --git a/systemUI/anim/src/com/android/systemui/util/AnimatorExtensions.kt b/systemUI/anim/src/com/android/systemui/util/AnimatorExtensions.kt new file mode 100644 index 0000000000..35dbb89ad8 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/util/AnimatorExtensions.kt @@ -0,0 +1,80 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.util + +import androidx.core.animation.Animator + +/** + * Add an action which will be invoked when the animation has ended. + * + * @return the [Animator.AnimatorListener] added to the Animator + * @see Animator.end + */ +inline fun Animator.doOnEnd( + crossinline action: (animator: Animator) -> Unit +): Animator.AnimatorListener = addListener(onEnd = action) + +/** + * Add an action which will be invoked when the animation has started. + * + * @return the [Animator.AnimatorListener] added to the Animator + * @see Animator.start + */ +inline fun Animator.doOnStart( + crossinline action: (animator: Animator) -> Unit +): Animator.AnimatorListener = addListener(onStart = action) + +/** + * Add an action which will be invoked when the animation has been cancelled. + * + * @return the [Animator.AnimatorListener] added to the Animator + * @see Animator.cancel + */ +inline fun Animator.doOnCancel( + crossinline action: (animator: Animator) -> Unit +): Animator.AnimatorListener = addListener(onCancel = action) + +/** + * Add an action which will be invoked when the animation has repeated. + * + * @return the [Animator.AnimatorListener] added to the Animator + */ +inline fun Animator.doOnRepeat( + crossinline action: (animator: Animator) -> Unit +): Animator.AnimatorListener = addListener(onRepeat = action) + +/** + * Add a listener to this Animator using the provided actions. + * + * @return the [Animator.AnimatorListener] added to the Animator + */ +inline fun Animator.addListener( + crossinline onEnd: (animator: Animator) -> Unit = {}, + crossinline onStart: (animator: Animator) -> Unit = {}, + crossinline onCancel: (animator: Animator) -> Unit = {}, + crossinline onRepeat: (animator: Animator) -> Unit = {} +): Animator.AnimatorListener { + val listener = + object : Animator.AnimatorListener { + override fun onAnimationRepeat(animator: Animator) = onRepeat(animator) + override fun onAnimationEnd(animator: Animator) = onEnd(animator) + override fun onAnimationCancel(animator: Animator) = onCancel(animator) + override fun onAnimationStart(animator: Animator) = onStart(animator) + } + addListener(listener) + return listener +} diff --git a/systemUI/anim/src/com/android/systemui/util/Dialog.kt b/systemUI/anim/src/com/android/systemui/util/Dialog.kt new file mode 100644 index 0000000000..9dd23289d8 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/util/Dialog.kt @@ -0,0 +1,162 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.util + +import android.app.Dialog +import android.view.View +import android.view.ViewGroup +import android.view.ViewGroup.LayoutParams.MATCH_PARENT +import android.widget.FrameLayout +import android.window.OnBackInvokedDispatcher +import com.android.systemui.animation.back.BackAnimationSpec +import com.android.systemui.animation.back.BackTransformation +import com.android.systemui.animation.back.applyTo +import com.android.systemui.animation.back.floatingSystemSurfacesForSysUi +import com.android.systemui.animation.back.onBackAnimationCallbackFrom +import com.android.systemui.animation.back.registerOnBackInvokedCallbackOnViewAttached +import com.android.systemui.animation.view.LaunchableFrameLayout + +/** + * Register on the Dialog's [OnBackInvokedDispatcher] an animation using the [BackAnimationSpec]. + * The [BackTransformation] will be applied on the [targetView]. + */ +@JvmOverloads +fun Dialog.registerAnimationOnBackInvoked( + targetView: View, + backAnimationSpec: BackAnimationSpec = + BackAnimationSpec.floatingSystemSurfacesForSysUi( + displayMetricsProvider = { targetView.resources.displayMetrics }, + ), +) { + targetView.registerOnBackInvokedCallbackOnViewAttached( + onBackInvokedDispatcher = onBackInvokedDispatcher, + onBackAnimationCallback = + onBackAnimationCallbackFrom( + backAnimationSpec = backAnimationSpec, + displayMetrics = targetView.resources.displayMetrics, + onBackProgressed = { backTransformation -> backTransformation.applyTo(targetView) }, + onBackInvoked = { dismiss() }, + ), + ) +} + +/** + * Make the dialog window (and therefore its DecorView) fullscreen to make it possible to animate + * outside its bounds. No-op if the dialog is already fullscreen. + * + * <p>Returns null if the dialog is already fullscreen. Otherwise, returns a pair containing a view + * and a layout listener. The new view matches the original dialog DecorView in size, position, and + * background. This new view will be a child of the modified, transparent, fullscreen DecorView. The + * layout listener is listening to changes to the modified DecorView. It is the responsibility of + * the caller to deregister the listener when the dialog is dismissed. + */ +fun Dialog.maybeForceFullscreen(): Pair<LaunchableFrameLayout, View.OnLayoutChangeListener>? { + // Create the dialog so that its onCreate() method is called, which usually sets the dialog + // content. + create() + + val window = window!! + val decorView = window.decorView as ViewGroup + + val isWindowFullscreen = + window.attributes.width == MATCH_PARENT && window.attributes.height == MATCH_PARENT + if (isWindowFullscreen) { + return null + } + + // We will make the dialog window (and therefore its DecorView) fullscreen to make it possible + // to animate outside its bounds. + // + // Before that, we add a new View as a child of the DecorView with the same size and gravity as + // that DecorView, then we add all original children of the DecorView to that new View. Finally + // we remove the background of the DecorView and add it to the new View, then we make the + // DecorView fullscreen. This new View now acts as a fake (non fullscreen) window. + // + // On top of that, we also add a fullscreen transparent background between the DecorView and the + // view that we added so that we can dismiss the dialog when this view is clicked. This is + // necessary because DecorView overrides onTouchEvent and therefore we can't set the click + // listener directly on the (now fullscreen) DecorView. + val fullscreenTransparentBackground = FrameLayout(context) + decorView.addView( + fullscreenTransparentBackground, + 0 /* index */, + FrameLayout.LayoutParams(MATCH_PARENT, MATCH_PARENT) + ) + + val dialogContentWithBackground = LaunchableFrameLayout(context) + dialogContentWithBackground.background = decorView.background + + // Make the window background transparent. Note that setting the window (or DecorView) + // background drawable to null leads to issues with background color (not being transparent) or + // with insets that are not refreshed. Therefore we need to set it to something not null, hence + // we are using android.R.color.transparent here. + window.setBackgroundDrawableResource(android.R.color.transparent) + + // Close the dialog when clicking outside of it. + fullscreenTransparentBackground.setOnClickListener { dismiss() } + dialogContentWithBackground.isClickable = true + + // Make sure the transparent and dialog backgrounds are not focusable by accessibility + // features. + fullscreenTransparentBackground.importantForAccessibility = View.IMPORTANT_FOR_ACCESSIBILITY_NO + dialogContentWithBackground.importantForAccessibility = View.IMPORTANT_FOR_ACCESSIBILITY_NO + + fullscreenTransparentBackground.addView( + dialogContentWithBackground, + FrameLayout.LayoutParams( + window.attributes.width, + window.attributes.height, + window.attributes.gravity + ) + ) + + // Move all original children of the DecorView to the new View we just added. + for (i in 1 until decorView.childCount) { + val view = decorView.getChildAt(1) + decorView.removeViewAt(1) + dialogContentWithBackground.addView(view) + } + + // Make the window fullscreen and add a layout listener to ensure it stays fullscreen. + window.setLayout(MATCH_PARENT, MATCH_PARENT) + val decorViewLayoutListener = + View.OnLayoutChangeListener { + v, + left, + top, + right, + bottom, + oldLeft, + oldTop, + oldRight, + oldBottom -> + if ( + window.attributes.width != MATCH_PARENT || window.attributes.height != MATCH_PARENT + ) { + // The dialog size changed, copy its size to dialogContentWithBackground and make + // the dialog window full screen again. + val layoutParams = dialogContentWithBackground.layoutParams + layoutParams.width = window.attributes.width + layoutParams.height = window.attributes.height + dialogContentWithBackground.layoutParams = layoutParams + window.setLayout(MATCH_PARENT, MATCH_PARENT) + } + } + decorView.addOnLayoutChangeListener(decorViewLayoutListener) + + return dialogContentWithBackground to decorViewLayoutListener +} diff --git a/systemUI/anim/src/com/android/systemui/util/Dimension.kt b/systemUI/anim/src/com/android/systemui/util/Dimension.kt new file mode 100644 index 0000000000..4bc9972dd5 --- /dev/null +++ b/systemUI/anim/src/com/android/systemui/util/Dimension.kt @@ -0,0 +1,32 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.util + +import android.content.Context +import android.content.res.Resources +import android.util.DisplayMetrics +import android.util.TypedValue + +/** Convert [this] number of dps to device pixels. */ +fun Number.dpToPx(context: Context): Float = dpToPx(resources = context.resources) + +/** Convert [this] number of dps to device pixels. */ +fun Number.dpToPx(resources: Resources): Float = dpToPx(displayMetrics = resources.displayMetrics) + +/** Convert [this] number of dps to device pixels. */ +fun Number.dpToPx(displayMetrics: DisplayMetrics): Float = + TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, toFloat(), displayMetrics) diff --git a/systemUI/common/build.gradle b/systemUI/common/build.gradle index f1f821874c..7f798f659f 100644 --- a/systemUI/common/build.gradle +++ b/systemUI/common/build.gradle @@ -1,6 +1,6 @@ plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) + id 'com.android.library' + id 'org.jetbrains.kotlin.android' } android { @@ -16,7 +16,3 @@ android { } addFrameworkJar('framework-16.jar') - -dependencies { - implementation projects.utils -} diff --git a/systemUI/common/src/com/android/systemui/common/coroutine/ConflatedCallbackFlow.kt b/systemUI/common/src/com/android/systemui/common/coroutine/ConflatedCallbackFlow.kt index 0c181e99b2..bb8f49053c 100644 --- a/systemUI/common/src/com/android/systemui/common/coroutine/ConflatedCallbackFlow.kt +++ b/systemUI/common/src/com/android/systemui/common/coroutine/ConflatedCallbackFlow.kt @@ -16,31 +16,6 @@ package com.android.systemui.common.coroutine -import com.android.systemui.utils.coroutines.flow.conflatedCallbackFlow as wrapped -import kotlin.experimental.ExperimentalTypeInference -import kotlinx.coroutines.channels.Channel -import kotlinx.coroutines.channels.ProducerScope -import kotlinx.coroutines.flow.Flow -import kotlinx.coroutines.flow.callbackFlow - @Deprecated("Use com.android.systemui.utils.coroutines.flow.conflatedCallbackFlow instead") object ConflatedCallbackFlow { - - /** - * A [callbackFlow] that uses a buffer [Channel] that is "conflated" meaning that, if - * backpressure occurs (if the producer that emits new values into the flow is faster than the - * consumer(s) of the values in the flow), the values are buffered and, if the buffer fills up, - * we drop the oldest values automatically instead of suspending the producer. - */ - @Deprecated( - "Use com.android.systemui.utils.coroutines.flow.conflatedCallbackFlow instead", - ReplaceWith( - "conflatedCallbackFlow", - "com.android.systemui.utils.coroutines.flow.conflatedCallbackFlow" - ) - ) - @OptIn(ExperimentalTypeInference::class) - fun <T> conflatedCallbackFlow( - @BuilderInference block: suspend ProducerScope<T>.() -> Unit, - ): Flow<T> = wrapped(block) } diff --git a/systemUI/log/Android.bp b/systemUI/log/Android.bp index 3cb2b4c3b1..afdcae481d 100644 --- a/systemUI/log/Android.bp +++ b/systemUI/log/Android.bp @@ -22,35 +22,15 @@ package { default_applicable_licenses: ["frameworks_base_packages_SystemUI_license"], } -java_library { - sdk_version: "current", - name: "SystemUILogCoreLib", - device_supported: true, - srcs: [ - "src/**/core/*.java", - "src/**/core/*.kt", - ], - static_libs: [ - "error_prone_annotations", - ], - - // Enforce compat with PluginCoreLib - java_version: "1.8", -} - java_library { name: "SystemUILogLib", srcs: [ "src/**/*.java", "src/**/*.kt", ], - exclude_srcs: [ - "src/**/core/*.java", - "src/**/core/*.kt", - ], static_libs: [ + "error_prone_annotations", "SystemUICommon", - "SystemUILogCoreLib", ], kotlincflags: ["-Xjvm-default=all"], } diff --git a/systemUI/log/build.gradle b/systemUI/log/build.gradle index e19e69f565..652d6f2115 100644 --- a/systemUI/log/build.gradle +++ b/systemUI/log/build.gradle @@ -1,6 +1,6 @@ plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) + id 'com.android.library' + id 'org.jetbrains.kotlin.android' } android { @@ -22,6 +22,7 @@ addFrameworkJar('framework-16.jar') compileOnlyCommonJars() dependencies { + compileOnly projects.plugincore compileOnly projects.common implementation libs.google.errorprone.annotations } diff --git a/systemUI/log/src/com/android/systemui/log/LogMessageImpl.kt b/systemUI/log/src/com/android/systemui/log/LogMessageImpl.kt index d8adcb0303..33cc199e71 100644 --- a/systemUI/log/src/com/android/systemui/log/LogMessageImpl.kt +++ b/systemUI/log/src/com/android/systemui/log/LogMessageImpl.kt @@ -41,10 +41,6 @@ data class LogMessageImpl( override var bool4: Boolean, ) : LogMessage { - fun clear() { - reset(DEFAULT_TAG, LogLevel.DEBUG, 0, DEFAULT_PRINTER) - } - fun reset( tag: String, level: LogLevel, @@ -90,7 +86,7 @@ data class LogMessageImpl( false, false, false, - false, + false ) } } diff --git a/systemUI/log/src/com/android/systemui/log/core/LogLevel.kt b/systemUI/log/src/com/android/systemui/log/core/LogLevel.kt index 769e93f416..a30d099066 100644 --- a/systemUI/log/src/com/android/systemui/log/core/LogLevel.kt +++ b/systemUI/log/src/com/android/systemui/log/core/LogLevel.kt @@ -19,15 +19,11 @@ package com.android.systemui.log.core import android.util.Log /** Enum version of @Log.Level */ -enum class LogLevel( - val nativeLevel: Int, - val shortString: String, - val logcatFunc: (String, String, Throwable?) -> Unit, -) { - VERBOSE(Log.VERBOSE, "V", Log::v), - DEBUG(Log.DEBUG, "D", Log::d), - INFO(Log.INFO, "I", Log::i), - WARNING(Log.WARN, "W", Log::w), - ERROR(Log.ERROR, "E", Log::e), - WTF(Log.ASSERT, "WTF", Log::wtf), +enum class LogLevel(val nativeLevel: Int, val shortString: String) { + VERBOSE(Log.VERBOSE, "V"), + DEBUG(Log.DEBUG, "D"), + INFO(Log.INFO, "I"), + WARNING(Log.WARN, "W"), + ERROR(Log.ERROR, "E"), + WTF(Log.ASSERT, "WTF") } diff --git a/systemUI/plugin/Android.bp b/systemUI/plugin/Android.bp index 1061bc285a..2cd3346934 100644 --- a/systemUI/plugin/Android.bp +++ b/systemUI/plugin/Android.bp @@ -57,7 +57,6 @@ java_library { "androidx.annotation_annotation", "androidx.compose.ui_ui", "androidx.compose.runtime_runtime", - "monet", ], } diff --git a/systemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java b/systemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java index 0730bb908c..d7b4cba101 100644 --- a/systemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java +++ b/systemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java @@ -61,17 +61,21 @@ public interface BcSmartspaceDataPlugin extends Plugin { throw new UnsupportedOperationException("Not implemented by " + getClass()); } - /** Sets the event dispatcher for smart space targets. */ - void setEventDispatcher(SmartspaceEventDispatcher eventDispatcher); + /** Register a SmartspaceEventNotifier. */ + default void registerSmartspaceEventNotifier(SmartspaceEventNotifier notifier) { + throw new UnsupportedOperationException("Not implemented by " + getClass()); + } - /** - * Overrides how Intents/PendingIntents gets launched. Mostly to support auth from - * the lockscreen. - */ - void setIntentStarter(IntentStarter intentStarter); + /** Push a SmartspaceTargetEvent to the SmartspaceEventNotifier. */ + default void notifySmartspaceEvent(SmartspaceTargetEvent event) { + throw new UnsupportedOperationException("Not implemented by " + getClass()); + } - /** Returns the smartspace event notifier */ - SmartspaceEventNotifier getEventNotifier(); + /** Allows for notifying the SmartspaceSession of SmartspaceTargetEvents. */ + interface SmartspaceEventNotifier { + /** Pushes a given SmartspaceTargetEvent to the SmartspaceSession. */ + void notifySmartspaceEvent(SmartspaceTargetEvent event); + } /** * Create a view to be shown within the parent. Do not add the view, as the parent @@ -167,6 +171,12 @@ public interface BcSmartspaceDataPlugin extends Plugin { */ default void setKeyguardBypassEnabled(boolean enabled) {} + /** + * Overrides how Intents/PendingIntents gets launched. Mostly to support auth from + * the lockscreen. + */ + void setIntentStarter(IntentStarter intentStarter); + /** * When on the lockscreen, use the FalsingManager to help detect errant touches */ @@ -249,19 +259,6 @@ public interface BcSmartspaceDataPlugin extends Plugin { void startPendingIntent(View v, PendingIntent pi, boolean showOnLockscreen); } - /** SmartspaceEventDispatcher which also controls controlling intent launching behavior */ - interface SmartspaceEventNotifier extends SmartspaceEventDispatcher { - - /** The intent starter for controlling activity launches */ - @Nullable IntentStarter getIntentStarter(); - } - - /** Allows for notifying the SmartspaceSession of SmartspaceTargetEvents. */ - interface SmartspaceEventDispatcher { - /** Pushes a given SmartspaceTargetEvent to the SmartspaceSession. */ - void notifySmartspaceEvent(SmartspaceTargetEvent event); - } - /** Interface for delegating time updates */ interface TimeChangedDelegate { /** Register the callback to be called when time is updated **/ diff --git a/systemUI/plugin/build.gradle b/systemUI/plugin/build.gradle index 6073bb6b12..d550eba8cd 100644 --- a/systemUI/plugin/build.gradle +++ b/systemUI/plugin/build.gradle @@ -1,6 +1,6 @@ plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) + id 'com.android.library' + id 'org.jetbrains.kotlin.android' } android { @@ -23,8 +23,7 @@ addFrameworkJar('framework-16.jar') compileOnlyCommonJars() dependencies { - implementation libs.androidx.constraintlayout compileOnly projects.plugincore compileOnly projects.log - compileOnly projects.animation + compileOnly projects.anim } diff --git a/systemUI/plugin/src/com/android/systemui/plugins/ActivityStarter.java b/systemUI/plugin/src/com/android/systemui/plugins/ActivityStarter.java index fc56b35d72..18891dba4b 100644 --- a/systemUI/plugin/src/com/android/systemui/plugins/ActivityStarter.java +++ b/systemUI/plugin/src/com/android/systemui/plugins/ActivityStarter.java @@ -177,13 +177,6 @@ public interface ActivityStarter { boolean dismissShade, @Nullable String customMessage); - /** Starts an activity and dismisses keyguard. */ - void startActivityDismissingKeyguard(Intent intent, - boolean onlyProvisioned, - boolean dismissShade, - @Nullable String customMessage, - Callback callback); - /** Starts an activity and dismisses keyguard. */ void startActivityDismissingKeyguard(Intent intent, boolean onlyProvisioned, diff --git a/systemUI/plugin/src/com/android/systemui/plugins/NavigationEdgeBackPlugin.java b/systemUI/plugin/src/com/android/systemui/plugins/NavigationEdgeBackPlugin.java index d0243cfd8b..5f6f11c16d 100644 --- a/systemUI/plugin/src/com/android/systemui/plugins/NavigationEdgeBackPlugin.java +++ b/systemUI/plugin/src/com/android/systemui/plugins/NavigationEdgeBackPlugin.java @@ -36,6 +36,9 @@ public interface NavigationEdgeBackPlugin extends Plugin { /** Specifies if the UI should be rendered on the left side of the screen. */ void setIsLeftPanel(boolean isLeftPanel); + /** Sets the insets for the gesture handling area. */ + void setInsets(int leftInset, int rightInset); + /** Sets the display size. */ void setDisplaySize(Point displaySize); @@ -49,7 +52,7 @@ public interface NavigationEdgeBackPlugin extends Plugin { void onMotionEvent(MotionEvent motionEvent); /** Dumps info about the back gesture plugin. */ - void dump(String prefix, PrintWriter pw); + void dump(PrintWriter pw); /** Callback to let the system react to the detected back gestures. */ interface BackCallback { diff --git a/systemUI/plugin/src/com/android/systemui/plugins/VolumeDialogController.java b/systemUI/plugin/src/com/android/systemui/plugins/VolumeDialogController.java index 898c949207..c09509d869 100644 --- a/systemUI/plugin/src/com/android/systemui/plugins/VolumeDialogController.java +++ b/systemUI/plugin/src/com/android/systemui/plugins/VolumeDialogController.java @@ -41,8 +41,8 @@ import com.android.systemui.plugins.annotations.ProvidesInterface; public interface VolumeDialogController { int VERSION = 1; - void setActiveStream(int stream, boolean sync); - void setStreamVolume(int stream, int userLevel, boolean sync); + void setActiveStream(int stream); + void setStreamVolume(int stream, int userLevel); void setRingerMode(int ringerModeNormal, boolean external); boolean hasVibrator(); diff --git a/systemUI/plugin/src/com/android/systemui/plugins/qs/QS.java b/systemUI/plugin/src/com/android/systemui/plugins/qs/QS.java index a0918ec707..d3218ad8c9 100644 --- a/systemUI/plugin/src/com/android/systemui/plugins/qs/QS.java +++ b/systemUI/plugin/src/com/android/systemui/plugins/qs/QS.java @@ -203,12 +203,6 @@ public interface QS extends FragmentBase { */ void setIsNotificationPanelFullWidth(boolean isFullWidth); - default void setPanelExpanded(boolean panelExpanded) {} - - default void setQqsHeightListener(QqsHeightListener listener) {} - - default void setQSContentPaddingBottom(int padding) {} - /** * Callback for when QSPanel container is scrolled */ @@ -224,10 +218,4 @@ public interface QS extends FragmentBase { void onQsHeightChanged(); } - @ProvidesInterface(version = HeightListener.VERSION) - interface QqsHeightListener { - int VERSION = 1; - void onQqsHeightChanged(); - } - } diff --git a/systemUI/plugin/src/com/android/systemui/plugins/statusbar/NotificationMenuRowPlugin.java b/systemUI/plugin/src/com/android/systemui/plugins/statusbar/NotificationMenuRowPlugin.java index 0b5d3ba774..9b961d2535 100644 --- a/systemUI/plugin/src/com/android/systemui/plugins/statusbar/NotificationMenuRowPlugin.java +++ b/systemUI/plugin/src/com/android/systemui/plugins/statusbar/NotificationMenuRowPlugin.java @@ -17,6 +17,7 @@ package com.android.systemui.plugins.statusbar; import android.annotation.Nullable; import android.content.Context; import android.graphics.Point; +import android.service.notification.StatusBarNotification; import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; @@ -58,22 +59,9 @@ public interface NotificationMenuRowPlugin extends Plugin { public View getMenuView(); - /** - * The guts content that provides the [View] to be displayed. - * - * @return Object of type [NotificationGuts.GutsContent]. The interface is not known in this - * module, therefore only the implementation returns the proper type. - */ - Object getGutsContent(); + public View getGutsView(); public String getContentDescription(); - - /** - * Set the name of the app for this menuitem. - * - * @param appName App name. - */ - void setAppName(String appName); } /** diff --git a/systemUI/plugin_core/Android.bp b/systemUI/plugin_core/Android.bp index 10c3de6ea6..98b50269ec 100644 --- a/systemUI/plugin_core/Android.bp +++ b/systemUI/plugin_core/Android.bp @@ -57,7 +57,6 @@ java_library { ], static_libs: [ "PluginAnnotationLib", - "SystemUILogCoreLib", ], optimize: { proguard_flags_files: ["proguard.flags"], @@ -82,10 +81,10 @@ java_library { ], plugins: ["auto_service_plugin"], static_libs: [ - "PluginAnnotationLib", "androidx.annotation_annotation", - "auto_common", "auto_service_annotations", + "auto_common", + "PluginAnnotationLib", "guava", "jsr330", ], diff --git a/systemUI/plugin_core/build.gradle b/systemUI/plugin_core/build.gradle index 45ff186ebd..637ebe5ff6 100644 --- a/systemUI/plugin_core/build.gradle +++ b/systemUI/plugin_core/build.gradle @@ -1,6 +1,6 @@ plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) + id 'com.android.library' + id 'org.jetbrains.kotlin.android' } android { @@ -20,7 +20,3 @@ android { addFrameworkJar('framework-16.jar') compileOnlyCommonJars() - -dependencies { - compileOnly projects.log -} diff --git a/systemUI/plugin_core/processor/src/com/android/systemui/plugins/processor/ProtectedPluginProcessor.kt b/systemUI/plugin_core/processor/src/com/android/systemui/plugins/processor/ProtectedPluginProcessor.kt index fde3e6c8ca..81156d9698 100644 --- a/systemUI/plugin_core/processor/src/com/android/systemui/plugins/processor/ProtectedPluginProcessor.kt +++ b/systemUI/plugin_core/processor/src/com/android/systemui/plugins/processor/ProtectedPluginProcessor.kt @@ -148,7 +148,6 @@ class ProtectedPluginProcessor : AbstractProcessor() { val interfaces = "$sourceName, PluginWrapper<$sourceName>" braceBlock("public class $outputName implements $interfaces") { line("private static final String CLASS = \"$sourceName\";") - line("private static final String TAG = \"$outputName\";") // Static factory method to prevent wrapping the same object twice parenBlock("public static $outputName protect") { @@ -179,12 +178,6 @@ class ProtectedPluginProcessor : AbstractProcessor() { } line() - // ToString override to help with debugging - line("@Override") - braceBlock("public String toString()") { - line("return String.format(\"$outputName[%s]@%h\", mInstance, hashCode());") - } - // Wrapped instance getter for version checker braceBlock("public $sourceName getPlugin()") { line("return mInstance;") } @@ -199,7 +192,9 @@ class ProtectedPluginProcessor : AbstractProcessor() { var isFirst = true val isStatic = method.modifiers.contains(Modifier.STATIC) - if (!isStatic) line("@Override") + if (!isStatic) { + line("@Override") + } parenBlock("public $returnTypeName $methodName") { // While copying the method signature for the proxy type, we also // accumulate arguments for the nested callsite. diff --git a/systemUI/plugin_core/src/com/android/systemui/plugins/PluginLifecycleManager.java b/systemUI/plugin_core/src/com/android/systemui/plugins/PluginLifecycleManager.java index 56c3f93d49..f0ce460430 100644 --- a/systemUI/plugin_core/src/com/android/systemui/plugins/PluginLifecycleManager.java +++ b/systemUI/plugin_core/src/com/android/systemui/plugins/PluginLifecycleManager.java @@ -18,6 +18,8 @@ package com.android.systemui.plugins; import android.content.ComponentName; +import java.util.function.BiConsumer; + /** * Provides the ability for consumers to control plugin lifecycle. * @@ -33,6 +35,9 @@ public interface PluginLifecycleManager<T extends Plugin> { /** Returns the currently loaded plugin instance (if plugin is loaded) */ T getPlugin(); + /** Log tag and messages will be sent to the provided Consumer */ + void setLogFunc(BiConsumer<String, String> logConsumer); + /** returns true if the plugin is currently loaded */ default boolean isLoaded() { return getPlugin() != null; diff --git a/systemUI/plugin_core/src/com/android/systemui/plugins/PluginListener.java b/systemUI/plugin_core/src/com/android/systemui/plugins/PluginListener.java index 91c6b53279..bd0bd8942d 100644 --- a/systemUI/plugin_core/src/com/android/systemui/plugins/PluginListener.java +++ b/systemUI/plugin_core/src/com/android/systemui/plugins/PluginListener.java @@ -16,8 +16,6 @@ package com.android.systemui.plugins; import android.content.Context; -import com.android.systemui.log.core.MessageBuffer; - /** * Interface for listening to plugins being connected and disconnected. * @@ -47,12 +45,6 @@ import com.android.systemui.log.core.MessageBuffer; * @param <T> is the target plugin type */ public interface PluginListener<T extends Plugin> { - /** Returns a LogBuffer that PluginInstances should use to log messages */ - default MessageBuffer getLogBuffer() { - // Optional, will use Logcat by default - return null; - } - /** * Called when the plugin has been loaded and is ready to be used. * This may be called multiple times if multiple plugins are allowed. @@ -128,4 +120,4 @@ public interface PluginListener<T extends Plugin> { // Optional, default to deprecated version onPluginDisconnected(plugin); } -} +} \ No newline at end of file diff --git a/systemUI/shared/biometrics/src/com/android/systemui/biometrics/Utils.kt b/systemUI/shared/biometrics/src/com/android/systemui/biometrics/Utils.kt index 8b1438f7de..7aa09cf644 100644 --- a/systemUI/shared/biometrics/src/com/android/systemui/biometrics/Utils.kt +++ b/systemUI/shared/biometrics/src/com/android/systemui/biometrics/Utils.kt @@ -162,10 +162,8 @@ object Utils { fun ActivityTaskManager.isSystemAppOrInBackground( context: Context, clientPackage: String, - clientClassNameIfItIsConfirmDeviceCredentialActivity: String?, + clientClassNameIfItIsConfirmDeviceCredentialActivity: String? ): Boolean { - // TODO (b/409812027): Consolidate and scope out auth requirements for biometric prompt - Log.v(TAG, "Checking if the authenticating is in background, clientPackage:$clientPackage") val tasks = getTasks(Int.MAX_VALUE) if (tasks == null || tasks.isEmpty()) { @@ -178,74 +176,11 @@ object Utils { val topPackageEqualsToClient = topActivity!!.packageName == clientPackage val isClientConfirmDeviceCredentialActivity = clientClassNameIfItIsConfirmDeviceCredentialActivity != null - - if ( - !isClientInBackgroundOrNotVisible( - isSystemApp, - isVisible = true, - topPackageEqualsToClient, - isClientConfirmDeviceCredentialActivity, - clientClassNameIfItIsConfirmDeviceCredentialActivity, - topActivity!!.className, - isTopPackage = true, - ) - ) { - return false - } - - for (task in tasks) { - val packageName = task.topActivity!!.packageName - val className = task.topActivity!!.className - val isVisible = task.isVisible - - Log.v(TAG, "Running task, top: $packageName, isVisible: $isVisible") - - if ( - !isClientInBackgroundOrNotVisible( - isSystemApp = false, - isVisible, - taskPackageEqualsClientPackage = packageName == clientPackage, - isClientConfirmDeviceCredentialActivity, - clientClassNameIfItIsConfirmDeviceCredentialActivity, - className, - ) - ) { - return false - } - } - - return true - } - - fun isClientInBackgroundOrNotVisible( - isSystemApp: Boolean, - isVisible: Boolean, - taskPackageEqualsClientPackage: Boolean, - isClientConfirmDeviceCredentialActivity: Boolean, - clientClassNameIfItIsConfirmDeviceCredentialActivity: String?, - topActivityClassName: String, - isTopPackage: Boolean = false, - ): Boolean { - - if (isVisible) { - if (isSystemApp || taskPackageEqualsClientPackage) { - // b/339532378: If it's ConfirmDeviceCredentialActivity, we need to check further on - // class name. - if (isClientConfirmDeviceCredentialActivity) { - return !isTopPackage || - clientClassNameIfItIsConfirmDeviceCredentialActivity != topActivityClassName - } - return false - } else if ( - isTopPackage && - isClientConfirmDeviceCredentialActivity && - clientClassNameIfItIsConfirmDeviceCredentialActivity == topActivityClassName - ) { - return false - } - } - - return true + // b/339532378: If it's ConfirmDeviceCredentialActivity, we need to check further on + // class name. + return !(isSystemApp || topPackageEqualsToClient) || + (isClientConfirmDeviceCredentialActivity && + topActivity.className != clientClassNameIfItIsConfirmDeviceCredentialActivity) } // LINT.ThenChange(frameworks/base/services/core/java/com/android/server/biometrics/Utils.java) } diff --git a/systemUI/shared/biometrics/src/com/android/systemui/biometrics/shared/model/FingerprintSensorType.kt b/systemUI/shared/biometrics/src/com/android/systemui/biometrics/shared/model/FingerprintSensorType.kt index 9a15b5190f..7c674c8ca9 100644 --- a/systemUI/shared/biometrics/src/com/android/systemui/biometrics/shared/model/FingerprintSensorType.kt +++ b/systemUI/shared/biometrics/src/com/android/systemui/biometrics/shared/model/FingerprintSensorType.kt @@ -31,10 +31,6 @@ enum class FingerprintSensorType { return (this == UDFPS_OPTICAL) || (this == UDFPS_ULTRASONIC) } - fun isUltrasonic(): Boolean { - return this == UDFPS_ULTRASONIC - } - fun isPowerButton(): Boolean { return this == POWER_BUTTON } diff --git a/systemUI/shared/biometrics/src/com/android/systemui/biometrics/shared/model/PromptKind.kt b/systemUI/shared/biometrics/src/com/android/systemui/biometrics/shared/model/PromptKind.kt index d9b0fd84cb..44f2059d4e 100644 --- a/systemUI/shared/biometrics/src/com/android/systemui/biometrics/shared/model/PromptKind.kt +++ b/systemUI/shared/biometrics/src/com/android/systemui/biometrics/shared/model/PromptKind.kt @@ -21,7 +21,6 @@ sealed interface PromptKind { data class Biometric( /** The available modalities for the authentication on the prompt. */ - @Deprecated("Use modalities in PromptRepository instead") val activeModalities: BiometricModalities = BiometricModalities(), val paneType: PaneType = PaneType.ONE_PANE_PORTRAIT, ) : PromptKind { @@ -29,29 +28,22 @@ sealed interface PromptKind { TWO_PANE_LANDSCAPE, ONE_PANE_PORTRAIT, ONE_PANE_NO_SENSOR_LANDSCAPE, - ONE_PANE_LARGE_SCREEN_LANDSCAPE, + ONE_PANE_LARGE_SCREEN_LANDSCAPE } } data object Pin : PromptKind - data object Pattern : PromptKind - data object Password : PromptKind fun isBiometric() = this is Biometric - fun isTwoPaneLandscapeBiometric(): Boolean = (this as? Biometric)?.paneType == Biometric.PaneType.TWO_PANE_LANDSCAPE - fun isOnePanePortraitBiometric() = (this as? Biometric)?.paneType == Biometric.PaneType.ONE_PANE_PORTRAIT - fun isOnePaneNoSensorLandscapeBiometric() = (this as? Biometric)?.paneType == Biometric.PaneType.ONE_PANE_NO_SENSOR_LANDSCAPE - fun isOnePaneLargeScreenLandscapeBiometric() = (this as? Biometric)?.paneType == Biometric.PaneType.ONE_PANE_LARGE_SCREEN_LANDSCAPE - fun isCredential() = (this is Pin) || (this is Pattern) || (this is Password) } diff --git a/systemUI/shared/build.gradle b/systemUI/shared/build.gradle index 3e27390719..1336a0a2f9 100644 --- a/systemUI/shared/build.gradle +++ b/systemUI/shared/build.gradle @@ -1,9 +1,9 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.google.ksp) + id 'com.android.library' + id 'org.jetbrains.kotlin.android' + id 'com.google.devtools.ksp' } // LC-Build-TODO: addFrameworkJar() doesn't work, what??? @@ -30,10 +30,9 @@ android { res.srcDirs = ['res'] } } -} - -ksp { - arg("dagger.hilt.disableModulesHaveInstallInCheck", "true") + ksp { + arg("dagger.hilt.disableModulesHaveInstallInCheck", "true") + } } addFrameworkJar('framework-16.jar') @@ -48,7 +47,6 @@ dependencies { compileOnly projects.wmshell compileOnly projects.animationlib compileOnly projects.utils - compileOnly projects.log implementation libs.dagger.hilt.android ksp libs.dagger.hilt.compiler diff --git a/systemUI/shared/src/com/android/systemui/shared/animation/DisableSubpixelTextTransitionListener.kt b/systemUI/shared/src/com/android/systemui/shared/animation/DisableSubpixelTextTransitionListener.kt index 24383665f3..b835b1db17 100644 --- a/systemUI/shared/src/com/android/systemui/shared/animation/DisableSubpixelTextTransitionListener.kt +++ b/systemUI/shared/src/com/android/systemui/shared/animation/DisableSubpixelTextTransitionListener.kt @@ -33,22 +33,11 @@ class DisableSubpixelTextTransitionListener(private val rootView: ViewGroup?) : override fun onTransitionStarted() { isTransitionInProgress = true - getAllChildTextView(rootView, childrenTextViews) - childrenTextViews.forEach { child -> - val childTextView = child.get() ?: return@forEach - childTextView.paintFlags = childTextView.paintFlags or Paint.SUBPIXEL_TEXT_FLAG - } } override fun onTransitionFinished() { if (!isTransitionInProgress) return isTransitionInProgress = false - childrenTextViews.forEach { child -> - val childTextView = child.get() ?: return@forEach - childTextView.paintFlags = - childTextView.paintFlags and Paint.SUBPIXEL_TEXT_FLAG.inv() - } - childrenTextViews.clear() } /** diff --git a/systemUI/shared/src/com/android/systemui/shared/navigationbar/KeyButtonRipple.java b/systemUI/shared/src/com/android/systemui/shared/navigationbar/KeyButtonRipple.java index a9efea2dcf..92473e84cb 100644 --- a/systemUI/shared/src/com/android/systemui/shared/navigationbar/KeyButtonRipple.java +++ b/systemUI/shared/src/com/android/systemui/shared/navigationbar/KeyButtonRipple.java @@ -19,7 +19,6 @@ package com.android.systemui.shared.navigationbar; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.ObjectAnimator; -import android.companion.virtualdevice.flags.Flags; import android.content.Context; import android.graphics.Canvas; import android.graphics.CanvasProperty; @@ -81,7 +80,6 @@ public class KeyButtonRipple extends Drawable { private final Interpolator mInterpolator = new LogInterpolator(); private boolean mSupportHardware; private final View mTargetView; - private final int mTapTimeoutMillis; private final Handler mHandler = new Handler(); private final HashSet<Animator> mRunningAnimations = new HashSet<>(); @@ -103,9 +101,6 @@ public class KeyButtonRipple extends Drawable { mMaxWidthResource = maxWidthResource; mMaxWidth = ctx.getResources().getDimensionPixelSize(maxWidthResource); mTargetView = targetView; - mTapTimeoutMillis = Flags.viewconfigurationApis() - ? ViewConfiguration.get(mTargetView.getContext()).getTapTimeoutMillis() - : ViewConfiguration.getTapTimeout(); } public void updateResources() { @@ -343,7 +338,7 @@ public class KeyButtonRipple extends Drawable { if (mDelayTouchFeedback) { if (mRunningAnimations.isEmpty()) { mHandler.removeCallbacksAndMessages(null); - mHandler.postDelayed(this::enterSoftware, mTapTimeoutMillis); + mHandler.postDelayed(this::enterSoftware, ViewConfiguration.getTapTimeout()); } else if (mVisible) { enterSoftware(); } @@ -388,7 +383,7 @@ public class KeyButtonRipple extends Drawable { if (mDelayTouchFeedback) { if (mRunningAnimations.isEmpty()) { mHandler.removeCallbacksAndMessages(null); - mHandler.postDelayed(this::enterHardware, mTapTimeoutMillis); + mHandler.postDelayed(this::enterHardware, ViewConfiguration.getTapTimeout()); } else if (mVisible) { enterHardware(); } diff --git a/systemUI/shared/src/com/android/systemui/shared/plugins/PluginActionManager.java b/systemUI/shared/src/com/android/systemui/shared/plugins/PluginActionManager.java index e214e3f7ae..4f73fc426c 100644 --- a/systemUI/shared/src/com/android/systemui/shared/plugins/PluginActionManager.java +++ b/systemUI/shared/src/com/android/systemui/shared/plugins/PluginActionManager.java @@ -31,13 +31,11 @@ import android.content.pm.ResolveInfo; import android.content.res.Resources; import android.net.Uri; import android.util.ArraySet; +import android.util.Log; import android.view.LayoutInflater; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.messages.nano.SystemMessageProto.SystemMessage; -import com.android.systemui.log.LogcatOnlyMessageBuffer; -import com.android.systemui.log.core.LogLevel; -import com.android.systemui.log.core.Logger; import com.android.systemui.plugins.Plugin; import com.android.systemui.plugins.PluginListener; import com.android.systemui.plugins.PluginManager; @@ -57,6 +55,8 @@ import java.util.concurrent.Executor; */ public class PluginActionManager<T extends Plugin> { + private static final boolean DEBUG = false; + private static final String TAG = "PluginActionManager"; public static final String PLUGIN_PERMISSION = "com.android.systemui.permission.PLUGIN"; @@ -76,7 +76,6 @@ public class PluginActionManager<T extends Plugin> { private final Class<T> mPluginClass; private final Executor mMainExecutor; private final Executor mBgExecutor; - private final Logger mLogger; private PluginActionManager( Context context, @@ -105,21 +104,17 @@ public class PluginActionManager<T extends Plugin> { mPluginInstanceFactory = pluginInstanceFactory; mPrivilegedPlugins.addAll(privilegedPlugins); mIsDebuggable = debuggable; - - String tag = String.format("%s[%s]", TAG, mAction); - mLogger = new Logger(mListener.getLogBuffer() != null ? mListener.getLogBuffer() : - new LogcatOnlyMessageBuffer(LogLevel.WARNING), tag); } /** Load all plugins matching this instance's action. */ public void loadAll() { - mLogger.d("startListening"); + if (DEBUG) Log.d(TAG, "startListening"); mBgExecutor.execute(() -> queryAll()); } /** Unload all plugins managed by this instance. */ public void destroy() { - mLogger.d("stopListening"); + if (DEBUG) Log.d(TAG, "stopListening"); ArrayList<PluginInstance<T>> plugins = new ArrayList<>(mPluginInstances); for (PluginInstance<T> plugInstance : plugins) { mMainExecutor.execute(() -> onPluginDisconnected(plugInstance)); @@ -190,7 +185,7 @@ public class PluginActionManager<T extends Plugin> { // Don't disable privileged plugins as they are a part of the OS. return false; } - logFmt(LogLevel.WARNING, "Disabling plugin: %s", pluginComponent.flattenToShortString()); + Log.w(TAG, "Disabling plugin " + pluginComponent.flattenToShortString()); mPluginEnabler.setDisabled(pluginComponent, reason); return true; @@ -213,18 +208,18 @@ public class PluginActionManager<T extends Plugin> { } private void onPluginConnected(PluginInstance<T> pluginInstance) { - mLogger.d("onPluginConnected"); + if (DEBUG) Log.d(TAG, "onPluginConnected"); PluginPrefs.setHasPlugins(mContext); pluginInstance.onCreate(); } private void onPluginDisconnected(PluginInstance<T> pluginInstance) { - mLogger.d("onPluginDisconnected"); + if (DEBUG) Log.d(TAG, "onPluginDisconnected"); pluginInstance.onDestroy(); } private void queryAll() { - mLogger.d("queryAll"); + if (DEBUG) Log.d(TAG, "queryAll " + mAction); for (int i = mPluginInstances.size() - 1; i >= 0; i--) { PluginInstance<T> pluginInstance = mPluginInstances.get(i); mMainExecutor.execute(() -> onPluginDisconnected(pluginInstance)); @@ -244,11 +239,11 @@ public class PluginActionManager<T extends Plugin> { } private void queryPkg(String pkg) { - logFmt(LogLevel.DEBUG, "queryPkg(%s)", pkg); + if (DEBUG) Log.d(TAG, "queryPkg " + pkg + " " + mAction); if (mAllowMultiple || (mPluginInstances.size() == 0)) { handleQueryPlugins(pkg); } else { - mLogger.d("Too many matching packages found"); + if (DEBUG) Log.d(TAG, "Too many of " + mAction); } } @@ -260,23 +255,23 @@ public class PluginActionManager<T extends Plugin> { intent.setPackage(pkgName); } List<ResolveInfo> result = mPm.queryIntentServices(intent, 0); - StringBuilder logSb = new StringBuilder(); - - logSb.append("Found "); - logSb.append(result.size()); - logSb.append(" plugins"); + if (DEBUG) { + Log.d(TAG, "Found " + result.size() + " plugins"); + for (ResolveInfo info : result) { + ComponentName name = new ComponentName(info.serviceInfo.packageName, + info.serviceInfo.name); + Log.d(TAG, " " + name); + } + } if (result.size() > 1 && !mAllowMultiple) { // TODO: Show warning. - logSb.append(", but multiple plugins are disallowed."); - logFmt(LogLevel.WARNING, "%s", logSb); + Log.w(TAG, "Multiple plugins found for " + mAction); return; } - for (ResolveInfo info : result) { ComponentName name = new ComponentName(info.serviceInfo.packageName, info.serviceInfo.name); - logSb.append("\n " + name); PluginInstance<T> pluginInstance = loadPluginComponent(name); if (pluginInstance != null) { // add plugin before sending PLUGIN_CONNECTED message @@ -284,7 +279,6 @@ public class PluginActionManager<T extends Plugin> { mMainExecutor.execute(() -> onPluginConnected(pluginInstance)); } } - logFmt(LogLevel.DEBUG, "%s", logSb); } private PluginInstance<T> loadPluginComponent(ComponentName component) { @@ -292,11 +286,13 @@ public class PluginActionManager<T extends Plugin> { // use these on production builds. if (!mIsDebuggable && !isPluginPrivileged(component)) { // Never ever ever allow these on production builds, they are only for prototyping. - logFmt(LogLevel.ERROR, "Plugin cannot be loaded on production build: %s", component); + Log.w(TAG, "Plugin cannot be loaded on production build: " + component); return null; } if (!mPluginEnabler.isEnabled(component)) { - logFmt(LogLevel.WARNING, "Plugin is not enabled, aborting load: %s", component); + if (DEBUG) { + Log.d(TAG, "Plugin is not enabled, aborting load: " + component); + } return null; } String packageName = component.getPackageName(); @@ -304,15 +300,16 @@ public class PluginActionManager<T extends Plugin> { // TODO: This probably isn't needed given that we don't have IGNORE_SECURITY on if (mPm.checkPermission(PLUGIN_PERMISSION, packageName) != PackageManager.PERMISSION_GRANTED) { - logFmt(LogLevel.ERROR, "Plugin doesn't have permission: %s", packageName); + Log.d(TAG, "Plugin doesn't have permission: " + packageName); return null; } ApplicationInfo appInfo = mPm.getApplicationInfo(packageName, 0); - // TODO: Only create the plugin before version - // check if we need it for legacy version check. - logFmt(LogLevel.DEBUG, "createPlugin: %s", component); - + // TODO: Only create the plugin before version check if we need it for + // legacy version check. + if (DEBUG) { + Log.d(TAG, "createPlugin: " + component); + } try { return mPluginInstanceFactory.create( mContext, appInfo, component, @@ -321,7 +318,7 @@ public class PluginActionManager<T extends Plugin> { reportInvalidVersion(component, component.getClassName(), e); } } catch (Throwable e) { - logFmt(LogLevel.ERROR, "Couldn't load plugin: %s", component, e); + Log.w(TAG, "Couldn't load plugin: " + component, e); return null; } @@ -366,31 +363,12 @@ public class PluginActionManager<T extends Plugin> { nb.addAction(new Action.Builder(null, "Disable plugin", pi).build()); mNotificationManager.notify(SystemMessage.NOTE_PLUGIN, nb.build()); // TODO: Warn user. - mLogger.e("Error loading plugin", e); + Log.w(TAG, "Error loading plugin; " + e.getMessage()); } - /** Format a log message */ - public void logFmt(LogLevel level, String formatStr, Object innerObj) { - logFmt(level, formatStr, innerObj, null); - } - - /** Format a log message */ - public void logFmt(LogLevel level, String formatStr, Object innerObj, Throwable ex) { - logFmt(mLogger, level, formatStr, innerObj, ex); - } - - /** Format a log message */ - public static void logFmt(Logger logger, LogLevel level, - String formatStr, Object innerObj, Throwable ex) { - logger.log( - level, msg -> String.format(formatStr, msg.getStr1()), - ex, msg -> { - msg.setStr1(innerObj.toString()); - return kotlin.Unit.INSTANCE; - }); - } - - /** Construct a {@link PluginActionManager} */ + /** + * Construct a {@link PluginActionManager} + */ public static class Factory { private final Context mContext; private final PackageManager mPackageManager; @@ -425,7 +403,7 @@ public class PluginActionManager<T extends Plugin> { } } - /** Wrapper for PluginInstance contexts */ + /** */ public static class PluginContextWrapper extends ContextWrapper { private final ClassLoader mClassLoader; private LayoutInflater mInflater; diff --git a/systemUI/shared/src/com/android/systemui/shared/plugins/PluginInstance.java b/systemUI/shared/src/com/android/systemui/shared/plugins/PluginInstance.java index f97ed834cf..69f5a79ece 100644 --- a/systemUI/shared/src/com/android/systemui/shared/plugins/PluginInstance.java +++ b/systemUI/shared/src/com/android/systemui/shared/plugins/PluginInstance.java @@ -28,9 +28,6 @@ import android.util.Log; import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; -import com.android.systemui.log.LogcatOnlyMessageBuffer; -import com.android.systemui.log.core.LogLevel; -import com.android.systemui.log.core.Logger; import com.android.systemui.plugins.Plugin; import com.android.systemui.plugins.PluginFragment; import com.android.systemui.plugins.PluginLifecycleManager; @@ -64,14 +61,13 @@ public class PluginInstance<T extends Plugin> private final ComponentName mComponentName; private final PluginFactory<T> mPluginFactory; private final String mTag; - private final Logger mLogger; private boolean mHasError = false; private BiConsumer<String, String> mLogConsumer = null; private Context mPluginContext; private T mPlugin; - /** Constructor */ + /** */ public PluginInstance( Context appContext, PluginListener<T> listener, @@ -83,9 +79,8 @@ public class PluginInstance<T extends Plugin> mComponentName = componentName; mPluginFactory = pluginFactory; mPlugin = plugin; - mTag = String.format("%s[%s]@%h", TAG, mComponentName.getShortClassName(), hashCode()); - mLogger = new Logger(mListener.getLogBuffer() != null ? mListener.getLogBuffer() : - new LogcatOnlyMessageBuffer(LogLevel.WARNING), mTag); + mTag = TAG + "[" + mComponentName.getShortClassName() + "]" + + '@' + Integer.toHexString(hashCode()); if (mPlugin != null) { mPluginContext = mPluginFactory.createPluginContext(); @@ -97,16 +92,24 @@ public class PluginInstance<T extends Plugin> return mTag; } - /** True if an error has been observed */ + /** */ public boolean hasError() { return mHasError; } + public void setLogFunc(BiConsumer logConsumer) { + mLogConsumer = logConsumer; + } + + private void log(String message) { + if (mLogConsumer != null) { + mLogConsumer.accept(mTag, message); + } + } + @Override public synchronized boolean onFail(String className, String methodName, Throwable failure) { - PluginActionManager.logFmt(mLogger, LogLevel.ERROR, - "Failure from %s. Disabling Plugin.", mPlugin.toString(), null); - + Log.e(TAG, "Failure from " + mPlugin + ". Disabling Plugin."); mHasError = true; unloadPlugin(); mListener.onPluginDetached(this); @@ -116,31 +119,31 @@ public class PluginInstance<T extends Plugin> /** Alerts listener and plugin that the plugin has been created. */ public synchronized void onCreate() { if (mHasError) { - mLogger.w("Previous Fatal Exception detected for plugin class"); + log("Previous Fatal Exception detected for plugin class"); return; } boolean loadPlugin = mListener.onPluginAttached(this); if (!loadPlugin) { if (mPlugin != null) { - mLogger.d("onCreate: auto-unload"); + log("onCreate: auto-unload"); unloadPlugin(); } return; } if (mPlugin == null) { - mLogger.d("onCreate: auto-load"); + log("onCreate: auto-load"); loadPlugin(); return; } if (!checkVersion()) { - mLogger.d("onCreate: version check failed"); + log("onCreate: version check failed"); return; } - mLogger.i("onCreate: load callbacks"); + log("onCreate: load callbacks"); if (!(mPlugin instanceof PluginFragment)) { // Only call onCreate for plugins that aren't fragments, as fragments // will get the onCreate as part of the fragment lifecycle. @@ -153,11 +156,11 @@ public class PluginInstance<T extends Plugin> public synchronized void onDestroy() { if (mHasError) { // Detached in error handler - mLogger.d("onDestroy - no-op"); + log("onDestroy - no-op"); return; } - mLogger.i("onDestroy"); + log("onDestroy"); unloadPlugin(); mListener.onPluginDetached(this); } @@ -168,15 +171,17 @@ public class PluginInstance<T extends Plugin> return mHasError ? null : mPlugin; } - /** Loads and creates the plugin if it does not exist. */ + /** + * Loads and creates the plugin if it does not exist. + */ public synchronized void loadPlugin() { if (mHasError) { - mLogger.w("Previous Fatal Exception detected for plugin class"); + log("Previous Fatal Exception detected for plugin class"); return; } if (mPlugin != null) { - mLogger.d("Load request when already loaded"); + log("Load request when already loaded"); return; } @@ -184,16 +189,16 @@ public class PluginInstance<T extends Plugin> mPlugin = mPluginFactory.createPlugin(this); mPluginContext = mPluginFactory.createPluginContext(); if (mPlugin == null || mPluginContext == null) { - mLogger.e("Requested load, but failed"); + Log.e(mTag, "Requested load, but failed"); return; } if (!checkVersion()) { - mLogger.e("loadPlugin: version check failed"); + log("loadPlugin: version check failed"); return; } - mLogger.e("Loaded plugin; running callbacks"); + log("Loaded plugin; running callbacks"); if (!(mPlugin instanceof PluginFragment)) { // Only call onCreate for plugins that aren't fragments, as fragments // will get the onCreate as part of the fragment lifecycle. @@ -202,7 +207,9 @@ public class PluginInstance<T extends Plugin> mListener.onPluginLoaded(mPlugin, mPluginContext, this); } - /** Checks the plugin version, and permanently destroys the plugin instance on a failure */ + /** + * Checks the plugin version, and permanently destroys the plugin instance on a failure + */ private synchronized boolean checkVersion() { if (mHasError) { return false; @@ -230,11 +237,11 @@ public class PluginInstance<T extends Plugin> */ public synchronized void unloadPlugin() { if (mPlugin == null) { - mLogger.d("Unload request when already unloaded"); + log("Unload request when already unloaded"); return; } - mLogger.i("Unloading plugin, running callbacks"); + log("Unloading plugin, running callbacks"); mListener.onPluginUnloaded(mPlugin, this); if (!(mPlugin instanceof PluginFragment)) { // Only call onDestroy for plugins that aren't fragments, as fragments @@ -390,7 +397,7 @@ public class PluginInstance<T extends Plugin> } /** - * Simple class to create a new instance. Useful for testing. + * Simple class to create a new instance. Useful for testing. * * @param <T> The type of plugin this create. **/ diff --git a/systemUI/shared/src/com/android/systemui/shared/recents/ILauncherProxy.aidl b/systemUI/shared/src/com/android/systemui/shared/recents/ILauncherProxy.aidl index 319a68e2f8..ade63b1dc9 100644 --- a/systemUI/shared/src/com/android/systemui/shared/recents/ILauncherProxy.aidl +++ b/systemUI/shared/src/com/android/systemui/shared/recents/ILauncherProxy.aidl @@ -101,7 +101,7 @@ oneway interface ILauncherProxy { /** * Sent when split keyboard shortcut is triggered to enter stage split. */ - void enterStageSplitFromRunningApp(int displayId, boolean leftOrTop) = 25; + void enterStageSplitFromRunningApp(boolean leftOrTop) = 25; /** * Sent when the task bar stash state is toggled. @@ -159,10 +159,4 @@ oneway interface ILauncherProxy { * Sent when {@link TaskbarDelegate#onDisplayRemoveSystemDecorations} is called. */ void onDisplayRemoveSystemDecorations(int displayId) = 38; - - /** - * Sent when active action corner is received in {@link ActionCornerInteractor}. Please refer to - * {@link ActionCornerConstants.Action} for all possible actions. - */ - void onActionCornerActivated(int action, int displayId) = 39; } diff --git a/systemUI/shared/src/com/android/systemui/shared/recents/ISystemUiProxy.aidl b/systemUI/shared/src/com/android/systemui/shared/recents/ISystemUiProxy.aidl index 78dea94595..1f6bea18d5 100644 --- a/systemUI/shared/src/com/android/systemui/shared/recents/ISystemUiProxy.aidl +++ b/systemUI/shared/src/com/android/systemui/shared/recents/ISystemUiProxy.aidl @@ -178,10 +178,5 @@ interface ISystemUiProxy { */ oneway void updateContextualEduStats(boolean isTrackpadGesture, String gestureType) = 58; - /** - * Sent after layout is performed for the "recents" button and it is visible on screen. - */ - oneway void notifyRecentsButtonPositionChanged(in Rect position) = 59; - - // Next id = 60 + // Next id = 59 } diff --git a/systemUI/shared/src/com/android/systemui/shared/recents/model/ThumbnailData.kt b/systemUI/shared/src/com/android/systemui/shared/recents/model/ThumbnailData.kt index 93524b31e6..757760f63c 100644 --- a/systemUI/shared/src/com/android/systemui/shared/recents/model/ThumbnailData.kt +++ b/systemUI/shared/src/com/android/systemui/shared/recents/model/ThumbnailData.kt @@ -58,7 +58,7 @@ data class ThumbnailData( "ThumbnailData", "Unexpected snapshot without USAGE_GPU_SAMPLED_IMAGE: " + "${snapshot.hardwareBuffer}", - ex, + ex ) } @@ -69,15 +69,10 @@ data class ThumbnailData( } @JvmStatic - fun wrap( - taskIds: IntArray?, - snapshots: Array<TaskSnapshot?>?, - ): HashMap<Int, ThumbnailData> { + fun wrap(taskIds: IntArray?, snapshots: Array<TaskSnapshot>?): HashMap<Int, ThumbnailData> { return hashMapOf<Int, ThumbnailData>().apply { if (taskIds != null && snapshots != null && taskIds.size == snapshots.size) { - repeat(snapshots.size) { - snapshots[it]?.let { snapshot -> put(taskIds[it], fromSnapshot(snapshot)) } - } + repeat(snapshots.size) { put(taskIds[it], fromSnapshot(snapshots[it])) } } } } diff --git a/systemUI/shared/src/com/android/systemui/shared/recents/utilities/PreviewPositionHelper.java b/systemUI/shared/src/com/android/systemui/shared/recents/utilities/PreviewPositionHelper.java index a25069c627..b8cd5bec2c 100644 --- a/systemUI/shared/src/com/android/systemui/shared/recents/utilities/PreviewPositionHelper.java +++ b/systemUI/shared/src/com/android/systemui/shared/recents/utilities/PreviewPositionHelper.java @@ -5,18 +5,11 @@ import static android.view.Surface.ROTATION_180; import static android.view.Surface.ROTATION_270; import static android.view.Surface.ROTATION_90; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_10_90; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; - import android.graphics.Matrix; import android.graphics.Rect; import android.graphics.RectF; -import androidx.annotation.Nullable; - import com.android.systemui.shared.recents.model.ThumbnailData; -import com.android.wm.shell.shared.split.SplitBounds; /** * Utility class to position the thumbnail in the TaskView @@ -25,20 +18,22 @@ public class PreviewPositionHelper { public static final float MAX_PCT_BEFORE_ASPECT_RATIOS_CONSIDERED_DIFFERENT = 0.1f; + /** + * Specifies that a stage is positioned at the top half of the screen if + * in portrait mode or at the left half of the screen if in landscape mode. + * TODO(b/254378592): Remove after consolidation + */ + public static final int STAGE_POSITION_TOP_OR_LEFT = 0; + + /** + * Specifies that a stage is positioned at the bottom half of the screen if + * in portrait mode or at the right half of the screen if in landscape mode. + * TODO(b/254378592): Remove after consolidation + */ + public static final int STAGE_POSITION_BOTTOM_OR_RIGHT = 1; + private final Matrix mMatrix = new Matrix(); private boolean mIsOrientationChanged; - /** - * Only used when this helper is being used for an app in split screen. Refers to the position - * of the app in the pair. - * See {@link com.android.wm.shell.shared.split.SplitScreenConstants#@SplitPosition} - */ - private int mSplitPosition = SPLIT_POSITION_UNDEFINED; - /** - * Guarded by enableFlexibleTwoAppSplit() flag, but this class doesn't have access so the - * caller is responsible for checking. If the flag is disabled this will be null - */ - @Nullable - private SplitBounds mSplitBounds; public Matrix getMatrix() { return mMatrix; @@ -165,16 +160,6 @@ public class PreviewPositionHelper { } thumbnailScale = targetW / (croppedWidth * scale); - - if (mSplitBounds != null - && mSplitBounds.snapPosition == SNAP_TO_2_10_90 - && mSplitPosition == SPLIT_POSITION_TOP_OR_LEFT) { - if (mSplitBounds.appsStackedVertically) { - thumbnailClipHint.top += availableHeight - croppedHeight; - } else { - thumbnailClipHint.left += availableWidth - croppedWidth; - } - } } if (!isRotated) { @@ -224,11 +209,6 @@ public class PreviewPositionHelper { mMatrix.postTranslate(translateX, translateY); } - public void setSplitBounds(SplitBounds splitBounds, int stagePosition) { - mSplitBounds = splitBounds; - mSplitPosition = stagePosition; - } - /** * A factory that returns a new instance of the {@link PreviewPositionHelper}. * <p>{@link PreviewPositionHelper} is a stateful helper, and hence when using it in distinct diff --git a/systemUI/shared/src/com/android/systemui/shared/regionsampling/RegionSampler.kt b/systemUI/shared/src/com/android/systemui/shared/regionsampling/RegionSampler.kt index f3296f0632..20380773e8 100644 --- a/systemUI/shared/src/com/android/systemui/shared/regionsampling/RegionSampler.kt +++ b/systemUI/shared/src/com/android/systemui/shared/regionsampling/RegionSampler.kt @@ -136,9 +136,9 @@ constructor( val sampledRegionWithOffset = convertBounds(screenLocationBounds) if ( sampledRegionWithOffset.left < 0.0 || - sampledRegionWithOffset.right > 1.0 || - sampledRegionWithOffset.top < 0.0 || - sampledRegionWithOffset.bottom > 1.0 + sampledRegionWithOffset.right > 1.0 || + sampledRegionWithOffset.top < 0.0 || + sampledRegionWithOffset.bottom > 1.0 ) { if (DEBUG) Log.d( @@ -192,7 +192,7 @@ constructor( pw.println("screen width: ${displaySize.x}, screen height: ${displaySize.y}") pw.println( "sampledRegionWithOffset: ${convertBounds( - calculateScreenLocation(sampledView) ?: RectF())}" + calculateScreenLocation(sampledView) ?: RectF())}" ) pw.println( "initialSampling for ${if (isLockscreen) "lockscreen" else "homescreen" }" + diff --git a/systemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButton.java b/systemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButton.java index dfb62c0b2e..570d774b95 100644 --- a/systemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButton.java +++ b/systemUI/shared/src/com/android/systemui/shared/rotation/FloatingRotationButton.java @@ -19,7 +19,6 @@ package com.android.systemui.shared.rotation; import android.annotation.DimenRes; import android.annotation.IdRes; import android.annotation.LayoutRes; -import android.annotation.Nullable; import android.annotation.StringRes; import android.content.Context; import android.content.pm.ActivityInfo; @@ -80,8 +79,8 @@ public class FloatingRotationButton implements RotationButton { private FloatingRotationButtonPositionCalculator mPositionCalculator; - @Nullable private RotationButtonController mRotationButtonController; - @Nullable private RotationButtonUpdatesCallback mUpdatesCallback; + private RotationButtonController mRotationButtonController; + private RotationButtonUpdatesCallback mUpdatesCallback; private Position mPosition; public FloatingRotationButton(Context context, @StringRes int contentDescriptionResource, @@ -133,17 +132,14 @@ public class FloatingRotationButton implements RotationButton { } @Override - public void setRotationButtonController( - @Nullable RotationButtonController rotationButtonController) { + public void setRotationButtonController(RotationButtonController rotationButtonController) { mRotationButtonController = rotationButtonController; - if (mRotationButtonController != null) { - updateIcon(mRotationButtonController.getLightIconColor(), - mRotationButtonController.getDarkIconColor()); - } + updateIcon(mRotationButtonController.getLightIconColor(), + mRotationButtonController.getDarkIconColor()); } @Override - public void setUpdatesCallback(@Nullable RotationButtonUpdatesCallback updatesCallback) { + public void setUpdatesCallback(RotationButtonUpdatesCallback updatesCallback) { mUpdatesCallback = updatesCallback; } @@ -192,28 +188,6 @@ public class FloatingRotationButton implements RotationButton { return true; } - @Override - public void onDestroy() { - setRotationButtonController(null); - setOnClickListener(null); - setOnHoverListener(null); - setUpdatesCallback(null); - - if (mKeyButtonContainer.isAttachedToWindow()) { - mWindowManager.removeViewImmediate(mKeyButtonContainer); - } - - mKeyButtonView.animate().cancel(); - mAnimatedDrawable.stop(); - mKeyButtonView.setImageDrawable(null); - // Calling AnimatedDrawable#stop() and ImageView.setImageDrawable(null) above will not let - // RenderThread clear ref to view (via AnimatedVectorDrawable$VectorDrawableAnimatorRT) - // quick enough for LeakCanary to ignore the leak. To mute LeakCanary, a workaround is to - // clear the mKeyButtonView.mParent so that LeakCanary won't complain the leak on - // mKeyButtonContainer. - mKeyButtonContainer.removeView(mKeyButtonView); - } - @Override public boolean isVisible() { return mIsShowing; @@ -221,12 +195,9 @@ public class FloatingRotationButton implements RotationButton { @Override public void updateIcon(int lightIconColor, int darkIconColor) { - if (mRotationButtonController != null) { - mAnimatedDrawable = (AnimatedVectorDrawable) mKeyButtonView.getContext() - .getDrawable(mRotationButtonController.getIconResId()); - mAnimatedDrawable.setBounds( - 0, 0, mKeyButtonView.getWidth(), mKeyButtonView.getHeight()); - } + mAnimatedDrawable = (AnimatedVectorDrawable) mKeyButtonView.getContext() + .getDrawable(mRotationButtonController.getIconResId()); + mAnimatedDrawable.setBounds(0, 0, mKeyButtonView.getWidth(), mKeyButtonView.getHeight()); mKeyButtonView.setImageDrawable(mAnimatedDrawable); mKeyButtonView.setColors(lightIconColor, darkIconColor); } @@ -280,10 +251,8 @@ public class FloatingRotationButton implements RotationButton { updateDimensionResources(); if (mIsShowing) { - if (mRotationButtonController != null) { - updateIcon(mRotationButtonController.getLightIconColor(), - mRotationButtonController.getDarkIconColor()); - } + updateIcon(mRotationButtonController.getLightIconColor(), + mRotationButtonController.getDarkIconColor()); final LayoutParams layoutParams = adjustViewPositionAndCreateLayoutParams(); mWindowManager.updateViewLayout(mKeyButtonContainer, layoutParams); if (mAnimatedDrawable != null) { diff --git a/systemUI/shared/src/com/android/systemui/shared/rotation/RotationButton.java b/systemUI/shared/src/com/android/systemui/shared/rotation/RotationButton.java index a44472ae96..42dda0a4da 100644 --- a/systemUI/shared/src/com/android/systemui/shared/rotation/RotationButton.java +++ b/systemUI/shared/src/com/android/systemui/shared/rotation/RotationButton.java @@ -16,7 +16,6 @@ package com.android.systemui.shared.rotation; -import android.annotation.Nullable; import android.graphics.drawable.Drawable; import android.view.View; @@ -26,17 +25,14 @@ import android.view.View; * one in contextual for 3 button nav and a floating rotation button for gestural. */ public interface RotationButton { - default void setRotationButtonController( - @Nullable RotationButtonController rotationButtonController) { } - default void setUpdatesCallback( - @Nullable RotationButtonUpdatesCallback updatesCallback) { } + default void setRotationButtonController(RotationButtonController rotationButtonController) { } + default void setUpdatesCallback(RotationButtonUpdatesCallback updatesCallback) { } default View getCurrentView() { return null; } default boolean show() { return false; } default boolean hide() { return false; } - default void onDestroy() {} default boolean isVisible() { return false; } diff --git a/systemUI/shared/src/com/android/systemui/shared/rotation/RotationButtonController.java b/systemUI/shared/src/com/android/systemui/shared/rotation/RotationButtonController.java index a8279525a1..2eac3931c2 100644 --- a/systemUI/shared/src/com/android/systemui/shared/rotation/RotationButtonController.java +++ b/systemUI/shared/src/com/android/systemui/shared/rotation/RotationButtonController.java @@ -17,8 +17,6 @@ package com.android.systemui.shared.rotation; import static android.content.pm.PackageManager.FEATURE_PC; -import static android.hardware.devicestate.DeviceState.PROPERTY_FOLDABLE_DISPLAY_CONFIGURATION_INNER_PRIMARY; -import static android.hardware.devicestate.DeviceState.PROPERTY_FOLDABLE_DISPLAY_CONFIGURATION_OUTER_PRIMARY; import static android.view.Display.DEFAULT_DISPLAY; import static com.android.internal.view.RotationPolicy.NATURAL_ROTATION; @@ -38,8 +36,6 @@ import android.content.Intent; import android.content.IntentFilter; import android.graphics.drawable.AnimatedVectorDrawable; import android.graphics.drawable.Drawable; -import android.hardware.devicestate.DeviceState; -import android.hardware.devicestate.DeviceStateManager; import android.os.Handler; import android.os.Looper; import android.os.RemoteException; @@ -71,10 +67,8 @@ import com.android.systemui.shared.rotation.RotationButton.RotationButtonUpdates import com.android.systemui.shared.system.ActivityManagerWrapper; import com.android.systemui.shared.system.TaskStackChangeListener; import com.android.systemui.shared.system.TaskStackChangeListeners; -import com.android.window.flags2.Flags; import java.io.PrintWriter; -import java.util.List; import java.util.Optional; import java.util.concurrent.Executor; import java.util.concurrent.ThreadPoolExecutor; @@ -100,7 +94,7 @@ public class RotationButtonController { private final UiEventLogger mUiEventLogger = new UiEventLoggerImpl(); private final ViewRippler mViewRippler = new ViewRippler(); private final Supplier<Integer> mWindowRotationProvider; - @Nullable private RotationButton mRotationButton; + private RotationButton mRotationButton; private boolean mIsRecentsAnimationRunning; private boolean mDocked; @@ -207,14 +201,6 @@ public class RotationButtonController { mRotationButton.setUpdatesCallback(updatesCallback); } - private void clearRotationButton() { - if (mRotationButton == null) { - return; - } - mRotationButton.onDestroy(); - mRotationButton = null; - } - public Context getContext() { return mContext; } @@ -244,7 +230,6 @@ public class RotationButtonController { */ public void onDestroy() { unregisterListeners(); - clearRotationButton(); } public void registerListeners(boolean registerRotationWatcher) { @@ -301,23 +286,12 @@ public class RotationButtonController { TaskStackChangeListeners.getInstance().unregisterTaskStackListener(mTaskStackListener); } - /** - * Sets device rotation to {@code rotationSuggestion} if {@code isLocked} is true and - * {@link Flags#enableDeviceStateAutoRotateSettingRefactor()} is disabled. - * <p> When {@link Flags#enableDeviceStateAutoRotateSettingRefactor()} is enabled, the rotation - * change in system server is conditional on auto-rotate still being OFF. - */ - public void setRotationAtAngle( + public void setRotationLockedAtAngle( @Nullable Boolean isLocked, int rotationSuggestion, String caller) { if (isLocked == null) { // Ignore if we can't read the setting for the current user return; } - if (isFoldable() && Flags.enableDeviceStateAutoRotateSettingRefactor()) { - RotationPolicy.setRotationAtAngleIfAllowed(rotationSuggestion, caller); - return; - } - RotationPolicy.setRotationLockAtAngle(mContext, /* enabled= */ isLocked, /* rotation= */ rotationSuggestion, caller); } @@ -327,8 +301,6 @@ public class RotationButtonController { } void setRotateSuggestionButtonState(final boolean visible, final boolean force) { - if (mRotationButton == null) return; - // At any point the button can become invisible because an a11y service became active. // Similarly, a call to make the button visible may be rejected because an a11y service is // active. Must account for this. @@ -389,9 +361,7 @@ public class RotationButtonController { fadeOut.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { - if (mRotationButton != null) { - mRotationButton.hide(); - } + mRotationButton.hide(); } }); @@ -401,9 +371,7 @@ public class RotationButtonController { } public void setDarkIntensity(float darkIntensity) { - if (mRotationButton != null) { - mRotationButton.setDarkIntensity(darkIntensity); - } + mRotationButton.setDarkIntensity(darkIntensity); } public void setRecentsAnimationRunning(boolean running) { @@ -432,10 +400,6 @@ public class RotationButtonController { } public void onRotationProposal(int rotation, boolean isValid) { - if (mRotationButton == null) { - return; - } - boolean isUserSetupComplete = Settings.Secure.getInt(mContext.getContentResolver(), Settings.Secure.USER_SETUP_COMPLETE, 0) != 0; if (!isUserSetupComplete && OEM_DISALLOW_ROTATION_IN_SUW) { @@ -509,10 +473,10 @@ public class RotationButtonController { } // The isVisible check makes the rotation button disappear when we are not locked // (e.g. for tabletop auto-rotate). - if (isRotationLocked || (mRotationButton != null && mRotationButton.isVisible())) { + if (isRotationLocked || mRotationButton.isVisible()) { // Do not allow a change in rotation to set user rotation when docked. if (shouldOverrideUserLockPrefs(rotation) && isRotationLocked && !mDocked) { - setRotationAtAngle(true, rotation, /* caller= */ + setRotationLockedAtAngle(true, rotation, /* caller= */ "RotationButtonController#onRotationWatcherChanged"); } setRotateSuggestionButtonState(false /* visible */, true /* forced */); @@ -548,9 +512,10 @@ public class RotationButtonController { public void onTaskbarStateChange(boolean visible, boolean stashed) { mTaskBarVisible = visible; - if (mRotationButton != null) { - mRotationButton.onTaskbarStateChanged(visible, stashed); + if (getRotationButton() == null) { + return; } + getRotationButton().onTaskbarStateChanged(visible, stashed); } private void showPendingRotationButtonIfNeeded() { @@ -609,7 +574,6 @@ public class RotationButtonController { "%s\tmDarkIconColor=0x%s", prefix, Integer.toHexString(mDarkIconColor))); } - @Nullable public RotationButton getRotationButton() { return mRotationButton; } @@ -617,7 +581,7 @@ public class RotationButtonController { private void onRotateSuggestionClick(View v) { mUiEventLogger.log(RotationButtonEvent.ROTATION_SUGGESTION_ACCEPTED); incrementNumAcceptedRotationSuggestionsIfNeeded(); - setRotationAtAngle( + setRotationLockedAtAngle( RotationPolicyUtil.isRotationLocked(mContext), mLastRotationSuggestion, /* caller= */ "RotationButtonController#onRotateSuggestionClick"); Log.i(TAG, "onRotateSuggestionClick() mLastRotationSuggestion=" + mLastRotationSuggestion); @@ -671,7 +635,7 @@ public class RotationButtonController { // Don't reschedule if a hide animator is running if (mRotateHideAnimator != null && mRotateHideAnimator.isRunning()) return; // Don't reschedule if not visible - if (mRotationButton == null || !mRotationButton.isVisible()) return; + if (!mRotationButton.isVisible()) return; } // Stop any pending removal @@ -706,27 +670,6 @@ public class RotationButtonController { } } - private boolean isFoldable() { - if (android.hardware.devicestate.feature.flags.Flags.deviceStatePropertyMigration()) { - final DeviceStateManager deviceStateManager = mContext.getSystemService( - DeviceStateManager.class); - if (deviceStateManager == null) return false; - List<DeviceState> deviceStates = deviceStateManager.getSupportedDeviceStates(); - for (int i = 0; i < deviceStates.size(); i++) { - DeviceState state = deviceStates.get(i); - if (state.hasProperty(PROPERTY_FOLDABLE_DISPLAY_CONFIGURATION_OUTER_PRIMARY) - || state.hasProperty( - PROPERTY_FOLDABLE_DISPLAY_CONFIGURATION_INNER_PRIMARY)) { - return true; - } - } - return false; - } else { - return mContext.getResources().getIntArray( - com.android.internal.R.array.config_foldedDeviceStates).length != 0; - } - } - private class TaskStackListenerImpl implements TaskStackChangeListener { // Invalidate any rotation suggestion on task change or activity orientation change // Note: all callbacks happen on main thread diff --git a/systemUI/shared/src/com/android/systemui/shared/system/ActivityManagerWrapper.java b/systemUI/shared/src/com/android/systemui/shared/system/ActivityManagerWrapper.java index ee6dd8e7e4..4546844fee 100644 --- a/systemUI/shared/src/com/android/systemui/shared/system/ActivityManagerWrapper.java +++ b/systemUI/shared/src/com/android/systemui/shared/system/ActivityManagerWrapper.java @@ -18,13 +18,16 @@ package com.android.systemui.shared.system; import static android.app.ActivityManager.LOCK_TASK_MODE_LOCKED; import static android.app.ActivityManager.LOCK_TASK_MODE_NONE; +import static android.app.ActivityManager.RECENT_IGNORE_UNAVAILABLE; import static android.app.ActivityTaskManager.getService; +import static app.lawnchair.compat.LawnchairQuickstepCompat.ATLEAST_R; import android.annotation.NonNull; import android.annotation.Nullable; import android.app.Activity; import android.app.ActivityClient; import android.app.ActivityManager; +import android.app.ActivityManager.RecentTaskInfo; import android.app.ActivityManager.RunningTaskInfo; import android.app.ActivityOptions; import android.app.ActivityTaskManager; @@ -33,8 +36,12 @@ import android.app.WindowConfiguration; import android.content.ContentResolver; import android.content.Context; import android.content.Intent; +import android.content.pm.PackageManager; import android.content.pm.UserInfo; +import android.graphics.Rect; +import android.os.Build; import android.os.Bundle; +import android.os.DeadSystemException; import android.os.IBinder; import android.os.RemoteException; import android.os.ServiceManager; @@ -48,6 +55,9 @@ import com.android.internal.app.IVoiceInteractionManagerService; import com.android.systemui.shared.recents.model.Task; import com.android.systemui.shared.recents.model.ThumbnailData; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.HashMap; import java.util.List; public class ActivityManagerWrapper { @@ -73,13 +83,17 @@ public class ActivityManagerWrapper { /** * @return the current user's id. */ - public int getCurrentUserId() { + public int getCurrentUserId() throws DeadSystemException { UserInfo ui; try { ui = ActivityManager.getService().getCurrentUser(); return ui != null ? ui.id : 0; } catch (RemoteException e) { - throw e.rethrowFromSystemServer(); + if (ATLEAST_R) { + throw e.rethrowFromSystemServer(); + } else { + throw new DeadSystemException(); + } } } @@ -135,9 +149,24 @@ public class ActivityManagerWrapper { public @NonNull ThumbnailData getTaskThumbnail(int taskId, boolean isLowResolution) { TaskSnapshot snapshot = null; try { - snapshot = getService().getTaskSnapshot(taskId, isLowResolution); + if (Build.VERSION.SDK_INT == Build.VERSION_CODES.UPSIDE_DOWN_CAKE) { + Method getTaskSnapshotMethod = getService().getClass().getMethod( + "getTaskSnapshot", + int.class, // taskId + boolean.class, // isLowResolution + boolean.class // isTranslucent (added in Android 14) + ); + + snapshot = (TaskSnapshot) getTaskSnapshotMethod.invoke( + getService(), taskId, isLowResolution, false); + + } else { + snapshot = getService().getTaskSnapshot(taskId, isLowResolution); + } } catch (RemoteException e) { Log.w(TAG, "Failed to retrieve task snapshot", e); + } catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) { + Log.e(TAG, "Failed to invoke getTaskSnapshot", e); } if (snapshot != null) { return ThumbnailData.fromSnapshot(snapshot); @@ -308,6 +337,18 @@ public class ActivityManagerWrapper { } } + /** + * Returns true if the system supports freeform multi-window. + */ + public boolean supportsFreeformMultiWindow(Context context) { + final boolean freeformDevOption = Settings.Global.getInt(context.getContentResolver(), + Settings.Global.DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT, 0) != 0; + return ActivityTaskManager.supportsMultiWindow(context) + && (context.getPackageManager().hasSystemFeature( + PackageManager.FEATURE_FREEFORM_WINDOW_MANAGEMENT) + || freeformDevOption); + } + /** * Returns true if the running task represents the home task */ diff --git a/systemUI/shared/src/com/android/systemui/shared/system/InputConsumerController.java b/systemUI/shared/src/com/android/systemui/shared/system/InputConsumerController.java index b406e72ffb..6541e695e2 100644 --- a/systemUI/shared/src/com/android/systemui/shared/system/InputConsumerController.java +++ b/systemUI/shared/src/com/android/systemui/shared/system/InputConsumerController.java @@ -20,6 +20,7 @@ import static android.view.Display.DEFAULT_DISPLAY; import static android.view.WindowManager.INPUT_CONSUMER_RECENTS_ANIMATION; import android.os.Binder; +import android.os.Build; import android.os.IBinder; import android.os.Looper; import android.os.RemoteException; @@ -32,6 +33,8 @@ import android.view.InputEvent; import android.view.WindowManagerGlobal; import java.io.PrintWriter; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; /** * Manages the input consumer that allows the SystemUI to directly receive input. @@ -139,7 +142,14 @@ public class InputConsumerController { if (mInputEventReceiver == null) { final InputChannel inputChannel = new InputChannel(); try { - mWindowManager.destroyInputConsumer(mToken, DEFAULT_DISPLAY); + // Hook for Android P (9) to VANILLA_ICE_CREAM (15), where the method signature changed + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P + && Build.VERSION.SDK_INT < Build.VERSION_CODES.VANILLA_ICE_CREAM) { + hookDestroyInputConsumer(mWindowManager); + } else { + mWindowManager.destroyInputConsumer(mToken, DEFAULT_DISPLAY); + } + mWindowManager.createInputConsumer(mToken, mName, DEFAULT_DISPLAY, inputChannel); } catch (RemoteException e) { Log.e(TAG, "Failed to create input consumer", e); @@ -152,13 +162,36 @@ public class InputConsumerController { } } + + /** + * IWindowManager @destroyInputConsumer reflection + */ + private void hookDestroyInputConsumer(IWindowManager mWindowManager) throws RemoteException { + try { + Class<?> iWindowManagerClass = Class.forName("android.view.IWindowManager"); + Method destroyInputConsumerMethod = iWindowManagerClass.getMethod("destroyInputConsumer", String.class, int.class); + destroyInputConsumerMethod.invoke(mWindowManager, mName, DEFAULT_DISPLAY); + } catch (ClassNotFoundException | NoSuchMethodException | IllegalAccessException | + InvocationTargetException e) { + Log.e(TAG, "Failed to invoke destroyInputConsumer", e); + mWindowManager.destroyInputConsumer(mToken, DEFAULT_DISPLAY); + } + + } + /** * Unregisters the input consumer. */ public void unregisterInputConsumer() { if (mInputEventReceiver != null) { try { - mWindowManager.destroyInputConsumer(mToken, DEFAULT_DISPLAY); + // Hook for Android P (9) to VANILLA_ICE_CREAM (15), where the method signature changed + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P + && Build.VERSION.SDK_INT < Build.VERSION_CODES.VANILLA_ICE_CREAM) { + hookDestroyInputConsumer(mWindowManager); + } else { + mWindowManager.destroyInputConsumer(mToken, DEFAULT_DISPLAY); + } } catch (RemoteException e) { Log.e(TAG, "Failed to destroy input consumer", e); } diff --git a/systemUI/shared/src/com/android/systemui/shared/system/InteractionJankMonitorWrapper.java b/systemUI/shared/src/com/android/systemui/shared/system/InteractionJankMonitorWrapper.java index 3250a0cbb3..a63462bcf4 100644 --- a/systemUI/shared/src/com/android/systemui/shared/system/InteractionJankMonitorWrapper.java +++ b/systemUI/shared/src/com/android/systemui/shared/system/InteractionJankMonitorWrapper.java @@ -32,7 +32,7 @@ public final class InteractionJankMonitorWrapper { * @param cujType the specific {@link Cuj.CujType}. */ public static void begin(View v, @Cuj.CujType int cujType) { - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.S) return; + if (true) return; // LC-Ignored InteractionJankMonitor.getInstance().begin(v, cujType); } @@ -44,7 +44,7 @@ public final class InteractionJankMonitorWrapper { * @param timeout duration to cancel the instrumentation in ms */ public static void begin(View v, @Cuj.CujType int cujType, long timeout) { - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.S) return; + if (true) return; // LC-Ignored Configuration.Builder builder = Configuration.Builder.withView(cujType, v) .setTimeout(timeout); @@ -59,7 +59,7 @@ public final class InteractionJankMonitorWrapper { * @param tag the tag to distinguish different flow of same type CUJ. */ public static void begin(View v, @Cuj.CujType int cujType, String tag) { - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.S) return; + if (true) return; // LC-Ignored Configuration.Builder builder = Configuration.Builder.withView(cujType, v); if (!TextUtils.isEmpty(tag)) { @@ -74,7 +74,7 @@ public final class InteractionJankMonitorWrapper { * @param cujType the specific {@link Cuj.CujType}. */ public static void end(@Cuj.CujType int cujType) { - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.S) return; + if (true) return; // LC-Ignored InteractionJankMonitor.getInstance().end(cujType); } @@ -82,13 +82,13 @@ public final class InteractionJankMonitorWrapper { * Cancel the trace session. */ public static void cancel(@Cuj.CujType int cujType) { - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.S) return; + if (true) return; // LC-Ignored InteractionJankMonitor.getInstance().cancel(cujType); } /** Return true if currently instrumenting a trace session. */ public static boolean isInstrumenting(@Cuj.CujType int cujType) { - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.S) return false; + if (true) return true; // LC-Ignored return InteractionJankMonitor.getInstance().isInstrumenting(cujType); } } diff --git a/systemUI/shared/src/com/android/systemui/shared/system/QuickStepContract.java b/systemUI/shared/src/com/android/systemui/shared/system/QuickStepContract.java index ef5aadcb28..89f699507e 100644 --- a/systemUI/shared/src/com/android/systemui/shared/system/QuickStepContract.java +++ b/systemUI/shared/src/com/android/systemui/shared/system/QuickStepContract.java @@ -416,13 +416,11 @@ public class QuickStepContract { public static boolean sRecentsDisabled = false; public static boolean sHasCustomCornerRadius = false; public static float sCustomCornerRadius = 0f; - + /** * Corner radius that should be used on windows in order to cover the display. * These values are expressed in pixels because they should not respect display or font * scaling. The corner radius may change when folding/unfolding the device. - * - * @param context A display associated context. */ public static float getWindowCornerRadius(Context context) { // LC-Wrapped diff --git a/systemUI/shared/src/com/android/systemui/shared/system/RecentsAnimationControllerCompat.java b/systemUI/shared/src/com/android/systemui/shared/system/RecentsAnimationControllerCompat.java index 6e23a0783c..883ef0a784 100644 --- a/systemUI/shared/src/com/android/systemui/shared/system/RecentsAnimationControllerCompat.java +++ b/systemUI/shared/src/com/android/systemui/shared/system/RecentsAnimationControllerCompat.java @@ -16,6 +16,7 @@ package com.android.systemui.shared.system; +import android.os.Build; import android.os.RemoteException; import android.util.Log; import android.view.RemoteAnimationTarget; @@ -26,6 +27,8 @@ import android.window.WindowAnimationState; import com.android.internal.os.IResultReceiver; import com.android.wm.shell.recents.IRecentsAnimationController; +import java.lang.reflect.Method; + public class RecentsAnimationControllerCompat { private static final String TAG = RecentsAnimationControllerCompat.class.getSimpleName(); @@ -72,7 +75,24 @@ public class RecentsAnimationControllerCompat { */ public void finish(boolean toHome, boolean sendUserLeaveHint, IResultReceiver finishCb) { try { - mAnimationController.finish(toHome, sendUserLeaveHint, finishCb); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.VANILLA_ICE_CREAM) { + mAnimationController.finish(toHome, sendUserLeaveHint, finishCb); + } else { + try { + Method finishMethod = mAnimationController.getClass().getMethod( + "finish", boolean.class, boolean.class); + finishMethod.invoke(mAnimationController, toHome, sendUserLeaveHint); + + if (finishCb != null) { + finishCb.send(0, null); + } + } catch (Exception e) { + Log.e(TAG, "Failed to finish recents animation via reflection", e); + if (finishCb != null) { + finishCb.send(0, null); + } + } + } } catch (RemoteException e) { Log.e(TAG, "Failed to finish recents animation", e); try { diff --git a/systemUI/shared/src/com/android/systemui/shared/system/UncaughtExceptionPreHandlerManager.kt b/systemUI/shared/src/com/android/systemui/shared/system/UncaughtExceptionPreHandlerManager.kt index 3204029d38..dd1ac5d6d0 100644 --- a/systemUI/shared/src/com/android/systemui/shared/system/UncaughtExceptionPreHandlerManager.kt +++ b/systemUI/shared/src/com/android/systemui/shared/system/UncaughtExceptionPreHandlerManager.kt @@ -28,14 +28,7 @@ class UncaughtExceptionPreHandlerManager @Inject constructor() { * Verifies that the global handler is set in Thread. If not, sets is up. */ private fun checkGlobalHandlerSetup() { - val currentHandler = Thread.getDefaultUncaughtExceptionHandler() - if (currentHandler != globalUncaughtExceptionPreHandler) { - if (currentHandler is GlobalUncaughtExceptionHandler) { - throw IllegalStateException("Two UncaughtExceptionPreHandlerManagers created") - } - currentHandler?.let { addHandler(it) } - Thread.setDefaultUncaughtExceptionHandler(globalUncaughtExceptionPreHandler) - } + // LC-Ignored } /** diff --git a/systemUI/shared/src/com/android/systemui/unfold/system/SystemUnfoldSharedModule.kt b/systemUI/shared/src/com/android/systemui/unfold/system/SystemUnfoldSharedModule.kt index 56cd7d1a90..d0d5caf57f 100644 --- a/systemUI/shared/src/com/android/systemui/unfold/system/SystemUnfoldSharedModule.kt +++ b/systemUI/shared/src/com/android/systemui/unfold/system/SystemUnfoldSharedModule.kt @@ -18,7 +18,6 @@ import android.os.Handler import android.os.HandlerThread import android.os.Looper import android.os.Process -import com.android.systemui.dagger.qualifiers.Application import com.android.systemui.dagger.qualifiers.Main import com.android.systemui.dagger.qualifiers.UiBackground import com.android.systemui.unfold.config.ResourceUnfoldTransitionConfig @@ -26,7 +25,6 @@ import com.android.systemui.unfold.config.UnfoldTransitionConfig import com.android.systemui.unfold.dagger.UnfoldBg import com.android.systemui.unfold.dagger.UnfoldMain import com.android.systemui.unfold.dagger.UnfoldSingleThreadBg -import com.android.systemui.unfold.dagger.UnfoldTracking import com.android.systemui.unfold.updates.FoldProvider import com.android.systemui.unfold.util.CurrentActivityTypeProvider import dagger.Binds @@ -35,10 +33,7 @@ import dagger.Provides import java.util.concurrent.Executor import javax.inject.Singleton import kotlinx.coroutines.CoroutineDispatcher -import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.android.asCoroutineDispatcher -import kotlinx.coroutines.asCoroutineDispatcher -import kotlinx.coroutines.plus /** * Dagger module with system-only dependencies for the unfold animation. The code that is used to @@ -50,20 +45,25 @@ import kotlinx.coroutines.plus abstract class SystemUnfoldSharedModule { @Binds - abstract fun activityTypeProvider( - executor: ActivityManagerActivityTypeProvider - ): CurrentActivityTypeProvider + abstract fun activityTypeProvider(executor: ActivityManagerActivityTypeProvider): + CurrentActivityTypeProvider - @Binds abstract fun config(config: ResourceUnfoldTransitionConfig): UnfoldTransitionConfig + @Binds + abstract fun config(config: ResourceUnfoldTransitionConfig): UnfoldTransitionConfig - @Binds abstract fun foldState(provider: DeviceStateManagerFoldProvider): FoldProvider + @Binds + abstract fun foldState(provider: DeviceStateManagerFoldProvider): FoldProvider @Binds abstract fun deviceStateRepository(provider: DeviceStateRepositoryImpl): DeviceStateRepository - @Binds @UnfoldMain abstract fun mainExecutor(@Main executor: Executor): Executor + @Binds + @UnfoldMain + abstract fun mainExecutor(@Main executor: Executor): Executor - @Binds @UnfoldMain abstract fun mainHandler(@Main handler: Handler): Handler + @Binds + @UnfoldMain + abstract fun mainHandler(@Main handler: Handler): Handler @Binds @UnfoldSingleThreadBg @@ -92,18 +92,5 @@ abstract class SystemUnfoldSharedModule { .apply { start() } .looper } - - @Provides - @UnfoldTracking - @Singleton - fun unfoldTrackingContext( - @UnfoldSingleThreadBg singleThreadBgExecutor: Executor, - @Application applicationScope: CoroutineScope, - ): CoroutineScope { - // tracking depends on being executed on a single thread so when changing it, ensure all - // consumers are not accessing shared state - val backgroundDispatcher = singleThreadBgExecutor.asCoroutineDispatcher() - return applicationScope + backgroundDispatcher - } } } diff --git a/systemUI/unfold/build.gradle b/systemUI/unfold/build.gradle index 0fc0dad1e2..bcd7b48a08 100644 --- a/systemUI/unfold/build.gradle +++ b/systemUI/unfold/build.gradle @@ -1,7 +1,7 @@ plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.google.ksp) + id 'com.android.library' + id 'org.jetbrains.kotlin.android' + id 'com.google.devtools.ksp' } android { @@ -16,10 +16,9 @@ android { aidl.srcDirs = ['src'] } } -} - -ksp { - arg("dagger.hilt.disableModulesHaveInstallInCheck", "true") + ksp { + arg("dagger.hilt.disableModulesHaveInstallInCheck", "true") + } } addFrameworkJar('framework-16.jar') diff --git a/systemUI/unfold/src/com/android/systemui/unfold/config/ResourceUnfoldTransitionConfig.kt b/systemUI/unfold/src/com/android/systemui/unfold/config/ResourceUnfoldTransitionConfig.kt index 66a3ac4c27..ca1daf66f5 100644 --- a/systemUI/unfold/src/com/android/systemui/unfold/config/ResourceUnfoldTransitionConfig.kt +++ b/systemUI/unfold/src/com/android/systemui/unfold/config/ResourceUnfoldTransitionConfig.kt @@ -22,42 +22,26 @@ import javax.inject.Singleton class ResourceUnfoldTransitionConfig @Inject constructor() : UnfoldTransitionConfig { override val isEnabled: Boolean by lazy { - try { - val id = Resources.getSystem() - .getIdentifier("config_unfoldTransitionEnabled", "bool", "android") - Resources.getSystem().getBoolean(id) - } catch (_: Resources.NotFoundException) { - false - } + val id = Resources.getSystem() + .getIdentifier("config_unfoldTransitionEnabled", "bool", "android") + Resources.getSystem().getBoolean(id) } override val isHingeAngleEnabled: Boolean by lazy { - try { - val id = Resources.getSystem() - .getIdentifier("config_unfoldTransitionHingeAngle", "bool", "android") - Resources.getSystem().getBoolean(id) - } catch (_: Resources.NotFoundException) { - false - } + val id = Resources.getSystem() + .getIdentifier("config_unfoldTransitionHingeAngle", "bool", "android") + Resources.getSystem().getBoolean(id) } override val isHapticsEnabled: Boolean by lazy { - try { - val id = Resources.getSystem() - .getIdentifier("config_unfoldTransitionHapticsEnabled", "bool", "android") - Resources.getSystem().getBoolean(id) - } catch (_: Resources.NotFoundException) { - false - } + val id = Resources.getSystem() + .getIdentifier("config_unfoldTransitionHapticsEnabled", "bool", "android") + Resources.getSystem().getBoolean(id) } override val halfFoldedTimeoutMillis: Int by lazy { - try { - val id = Resources.getSystem() - .getIdentifier("config_unfoldTransitionHalfFoldedTimeout", "integer", "android") - Resources.getSystem().getInteger(id) - } catch (_: Resources.NotFoundException) { - 1000 - } + val id = Resources.getSystem() + .getIdentifier("config_unfoldTransitionHalfFoldedTimeout", "integer", "android") + Resources.getSystem().getInteger(id) } } diff --git a/systemUI/utils/build.gradle b/systemUI/utils/build.gradle index d880c3ebf5..27eb9a70a3 100644 --- a/systemUI/utils/build.gradle +++ b/systemUI/utils/build.gradle @@ -18,5 +18,5 @@ compileOnlyCommonJars() dependencies { compileOnly projects.flags - compileOnly projects.viewcapturelib + compileOnly projects.viewcapture } diff --git a/systemUI/viewcapture/build.gradle b/systemUI/viewcapture/build.gradle index 6b2f9bf2da..feb673cee6 100644 --- a/systemUI/viewcapture/build.gradle +++ b/systemUI/viewcapture/build.gradle @@ -1,7 +1,7 @@ plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.google.protobuf) + id 'com.android.library' + id 'org.jetbrains.kotlin.android' + id 'com.google.protobuf' } android { diff --git a/tests/Android.bp b/tests/Android.bp index d627f8f624..fc08e86284 100644 --- a/tests/Android.bp +++ b/tests/Android.bp @@ -57,13 +57,22 @@ filegroup { name: "launcher-oop-tests-src", srcs: [ ":launcher-testing-helpers", - ":launcher-oop-tests-only", + "src/com/android/launcher3/allapps/TaplOpenCloseAllAppsTest.java", + "src/com/android/launcher3/allapps/TaplAllAppsIconsWorkingTest.java", + "src/com/android/launcher3/appiconmenu/TaplAppIconMenuTest.java", + "src/com/android/launcher3/dragging/TaplDragTest.java", + "src/com/android/launcher3/dragging/TaplUninstallRemoveTest.java", + "src/com/android/launcher3/ui/TaplTestsLauncher3Test.java", + "src/com/android/launcher3/ui/workspace/TaplWorkspaceTest.java", ], } // Library with all the dependencies for building quickstep android_library { name: "Launcher3TestLib", + defaults: [ + "launcher_compose_tests_defaults", + ], srcs: [], asset_dirs: ["assets"], resource_dirs: ["res"], @@ -87,11 +96,9 @@ android_library { "testables", "com_android_launcher3_flags_lib", "com_android_wm_shell_flags_lib", - "com_android_systemui_shared_flags_lib", "android.appwidget.flags-aconfig-java", "platform-parametric-runner-lib", "kotlin-reflect", - "kotlin-test", ], manifest: "AndroidManifest-common.xml", platform_apis: true, @@ -122,7 +129,6 @@ android_test { static_libs: [ "Launcher3TestLib", "com_android_launcher3_flags_lib", - "com_android_systemui_shared_flags_lib", ], libs: [ "android.test.base.stubs.system", @@ -152,8 +158,8 @@ filegroup { "src/**/*.kt", "multivalentTests/src/**/*.java", "multivalentTests/src/**/*.kt", - "src/com/android/launcher3/util/ui/AbstractLauncherUiTest.java", - "src/com/android/launcher3/util/ui/BaseLauncherTaplTest.java", + "src/com/android/launcher3/ui/AbstractLauncherUiTest.java", + "src/com/android/launcher3/ui/BaseLauncherTaplTest.java", "tapl/com/android/launcher3/tapl/*.java", "tapl/com/android/launcher3/tapl/*.kt", ], @@ -163,7 +169,6 @@ filegroup { "src/**/*Test.kt", "src/**/RoboApiWrapper.kt", "src/**/EventsRule.kt", - "src/**/LauncherCustomizer.kt", "multivalentTests/src/**/*Test.java", "multivalentTests/src/**/*Test.kt", ], @@ -196,7 +201,6 @@ android_robolectric_test { "flag-junit", "com_android_launcher3_flags_lib", "com_android_wm_shell_flags_lib", - "com_android_systemui_shared_flags_lib", "androidx.test.uiautomator_uiautomator", "androidx.core_core-animation-testing", "androidx.test.ext.junit", diff --git a/tests/AndroidManifest.xml b/tests/AndroidManifest.xml index 51cfe2398e..862b862ab3 100644 --- a/tests/AndroidManifest.xml +++ b/tests/AndroidManifest.xml @@ -23,7 +23,6 @@ <application android:debuggable="true"> <uses-library android:name="android.test.runner" /> - <activity android:name="platform.test.screenshot.ScreenshotActivity" android:exported="true"/> </application> <instrumentation diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/phonePortrait.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/phonePortrait.txt index 5015cf06d4..6a0d774a45 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/phonePortrait.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/phonePortrait.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 63.0px (24.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/phonePortrait3Button.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/phonePortrait3Button.txt index 606153361a..9e2397c62b 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/phonePortrait3Button.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/phonePortrait3Button.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 126.0px (48.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/phoneVerticalBar.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/phoneVerticalBar.txt index 4198956797..f25ab42f87 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/phoneVerticalBar.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/phoneVerticalBar.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 63.0px (24.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/phoneVerticalBar3Button.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/phoneVerticalBar3Button.txt index b9d4c01c69..053dd62a08 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/phoneVerticalBar3Button.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/phoneVerticalBar3Button.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/tabletLandscape.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/tabletLandscape.txt index 615ed04771..958597f73e 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/tabletLandscape.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/tabletLandscape.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/tabletLandscape3Button.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/tabletLandscape3Button.txt index da27168b8c..aad67b4d9a 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/tabletLandscape3Button.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/tabletLandscape3Button.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/tabletPortrait.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/tabletPortrait.txt index 15f8f343b8..090e54b681 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/tabletPortrait.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/tabletPortrait.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/tabletPortrait3Button.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/tabletPortrait3Button.txt index baaa210133..43b1a6518d 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/tabletPortrait3Button.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/tabletPortrait3Button.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape.txt index 787a077bfd..fe5737e45a 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape3Button.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape3Button.txt index 3ee747c18c..36e47a0874 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape3Button.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape3Button.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape3Button_decoupleDepth.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape3Button_decoupleDepth.txt index 414b262101..52fea057fe 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape3Button_decoupleDepth.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape3Button_decoupleDepth.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape_decoupleDepth.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape_decoupleDepth.txt index 04c8cebb3d..6d972a8e34 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape_decoupleDepth.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelLandscape_decoupleDepth.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait.txt index eae7abe267..417353dc6a 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait3Button.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait3Button.txt index e7d38d3aa7..03dc23a798 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait3Button.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait3Button.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait3Button_decoupleDepth.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait3Button_decoupleDepth.txt index 85f4713ca4..45d3171525 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait3Button_decoupleDepth.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait3Button_decoupleDepth.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait_decoupleDepth.txt b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait_decoupleDepth.txt index eda5bda750..55322d6745 100644 --- a/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait_decoupleDepth.txt +++ b/tests/assets/dumpTests/DeviceProfileDumpTest/twoPanelPortrait_decoupleDepth.txt @@ -117,6 +117,7 @@ DeviceProfile: overviewActionsTopMarginPx: 0.0px (0.0dp) overviewActionsHeight: 0.0px (0.0dp) overviewActionsClaimedSpaceBelow: 0.0px (0.0dp) + overviewActionsButtonSpacing: 0.0px (0.0dp) overviewPageSpacing: 0.0px (0.0dp) overviewRowSpacing: 0.0px (0.0dp) overviewGridSideMargin: 0.0px (0.0dp) diff --git a/tests/multivalentTests/src/com/android/launcher3/AbstractDeviceProfileTest.kt b/tests/multivalentTests/src/com/android/launcher3/AbstractDeviceProfileTest.kt index d25bfeda6a..dc49ba0ef4 100644 --- a/tests/multivalentTests/src/com/android/launcher3/AbstractDeviceProfileTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/AbstractDeviceProfileTest.kt @@ -173,28 +173,6 @@ abstract class AbstractDeviceProfileTest { ) } - protected fun initializeVarsForDesktop( - deviceSpec: DeviceSpec, - isLandscape: Boolean = false, - isGestureMode: Boolean = true, - gridName: String? = GRID_NAME.defaultValue, - ) { - val (naturalX, naturalY) = deviceSpec.naturalSize - val windowsBounds = tabletWindowsBounds(deviceSpec, naturalX, naturalY) - val displayInfo = CachedDisplayInfo(Point(naturalX, naturalY), Surface.ROTATION_0) - val perDisplayBoundsCache = mapOf(displayInfo to windowsBounds) - - initializeCommonVars( - perDisplayBoundsCache, - displayInfo, - rotation = if (isLandscape) Surface.ROTATION_0 else Surface.ROTATION_90, - isGestureMode, - densityDpi = deviceSpec.densityDpi, - gridName = gridName, - isDesktopFormFactor = true, - ) - } - protected fun initializeVarsForTwoPanel( deviceSpecUnfolded: DeviceSpec, deviceSpecFolded: DeviceSpec, @@ -313,7 +291,6 @@ abstract class AbstractDeviceProfileTest { isGestureMode: Boolean = true, densityDpi: Int, isFixedLandscape: Boolean = false, - isDesktopFormFactor: Boolean = false, gridName: String? = GRID_NAME.defaultValue, ) { setFlagsRule.setFlags(true, Flags.FLAG_ENABLE_TWOLINE_TOGGLE) @@ -363,16 +340,7 @@ abstract class AbstractDeviceProfileTest { launcherPrefs.put(GRID_NAME, gridName) } - val info = - spy( - DisplayController.Info( - context, - isDesktopFormFactor, - windowManagerProxy, - perDisplayBoundsCache, - densityDpi, - ) - ) + val info = spy(DisplayController.Info(context, windowManagerProxy, perDisplayBoundsCache)) whenever(displayController.info).thenReturn(info) whenever(info.isTransientTaskbar).thenReturn(isGestureMode) } diff --git a/tests/multivalentTests/src/com/android/launcher3/AutoInstallsLayoutTest.kt b/tests/multivalentTests/src/com/android/launcher3/AutoInstallsLayoutTest.kt index c18b131ea8..97ecafeeab 100644 --- a/tests/multivalentTests/src/com/android/launcher3/AutoInstallsLayoutTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/AutoInstallsLayoutTest.kt @@ -24,11 +24,6 @@ import android.os.UserHandle import android.util.Xml import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest -import com.android.internal.R.attr.x -import com.android.internal.R.attr.y -import com.android.launcher3.AutoInstallsLayout.ATTR_CONTAINER -import com.android.launcher3.AutoInstallsLayout.ATTR_X -import com.android.launcher3.AutoInstallsLayout.ATTR_Y import com.android.launcher3.AutoInstallsLayout.LayoutParserCallback import com.android.launcher3.AutoInstallsLayout.SourceResources import com.android.launcher3.AutoInstallsLayout.TAG_WORKSPACE @@ -46,7 +41,6 @@ import com.android.launcher3.LauncherSettings.Favorites.PROFILE_ID import com.android.launcher3.LauncherSettings.Favorites.SPANX import com.android.launcher3.LauncherSettings.Favorites.SPANY import com.android.launcher3.LauncherSettings.Favorites._ID -import com.android.launcher3.LauncherSettings.Favorites.containerToString import com.android.launcher3.dagger.LauncherAppComponent import com.android.launcher3.dagger.LauncherAppSingleton import com.android.launcher3.model.data.AppInfo @@ -55,7 +49,8 @@ import com.android.launcher3.util.AllModulesMinusApiWrapper import com.android.launcher3.util.ApiWrapper import com.android.launcher3.util.Executors import com.android.launcher3.util.LauncherLayoutBuilder -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.LauncherModelHelper +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.android.launcher3.util.TestUtil import com.android.launcher3.util.UserIconInfo import com.android.launcher3.util.UserIconInfo.TYPE_MAIN @@ -65,29 +60,42 @@ import com.google.common.truth.Truth.assertThat import dagger.BindsInstance import dagger.Component import java.io.StringReader -import org.junit.Rule +import org.junit.After +import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import org.mockito.Mock -import org.mockito.junit.MockitoJUnit +import org.mockito.MockitoAnnotations import org.mockito.kotlin.doReturn import org.mockito.kotlin.mock import org.mockito.kotlin.whenever -import org.xmlpull.v1.XmlPullParserException /** Tests for [AutoInstallsLayout] */ @SmallTest @RunWith(AndroidJUnit4::class) class AutoInstallsLayoutTest { - @get:Rule val mockitoRule = MockitoJUnit.rule() - @get:Rule val targetContext = SandboxApplication() + lateinit var modelHelper: LauncherModelHelper + lateinit var targetContext: SandboxModelContext - private val callback: MyCallback = MyCallback() + lateinit var callback: MyCallback @Mock lateinit var widgetHolder: LauncherWidgetHolder @Mock lateinit var db: SQLiteDatabase + @Before + fun setup() { + MockitoAnnotations.initMocks(this) + modelHelper = LauncherModelHelper() + targetContext = modelHelper.sandboxContext + callback = MyCallback() + } + + @After + fun tearDown() { + modelHelper.destroy() + } + @Test fun pending_icon_added_on_home() { LauncherLayoutBuilder() @@ -104,34 +112,6 @@ class AutoInstallsLayoutTest { assertThat(callback.items[0].containsKey(PROFILE_ID)).isFalse() } - @Test - fun pending_icon_added_on_home_missingScreenAttr_logsExpection() { - val result = LauncherLayoutBuilder() - .withBaseValues( - mapOf( - ATTR_CONTAINER to containerToString(CONTAINER_DESKTOP), - ATTR_X to x.toString(), - ATTR_Y to y.toString(), - ) - ) - .putApp("p1", "c1") - .toAutoInstallsLayout() - .loadLayout(db) - - assertThat(result).isEqualTo(-1) - } - - @Test - fun pending_icon_hotseat_missingRankAttr_logsException() { - val result = LauncherLayoutBuilder() - .withBaseValues(mapOf(ATTR_CONTAINER to containerToString(CONTAINER_HOTSEAT))) - .putApp("p1", "c1") - .toAutoInstallsLayout() - .loadLayout(db) - - assertThat(result).isEqualTo(-1) - } - @Test fun pending_icon_added_on_hotseat() { LauncherLayoutBuilder() diff --git a/tests/multivalentTests/src/com/android/launcher3/FakeInvariantDeviceProfileTest.kt b/tests/multivalentTests/src/com/android/launcher3/FakeInvariantDeviceProfileTest.kt index 34a603d571..f855c51f8e 100644 --- a/tests/multivalentTests/src/com/android/launcher3/FakeInvariantDeviceProfileTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/FakeInvariantDeviceProfileTest.kt @@ -22,7 +22,6 @@ import android.platform.test.rule.DeviceProduct import android.platform.test.rule.IgnoreLimit import android.platform.test.rule.LimitDevicesRule import android.util.SparseArray -import com.android.launcher3.DeviceProfile.Builder.createDefaultDisplayOptionSpec import com.android.launcher3.DeviceProfile.DEFAULT_DIMENSION_PROVIDER import com.android.launcher3.DeviceProfile.DEFAULT_PROVIDER import com.android.launcher3.testing.shared.ResourceUtils.INVALID_RESOURCE_HANDLE @@ -82,12 +81,6 @@ abstract class FakeInvariantDeviceProfileTest { DEFAULT_PROVIDER, DEFAULT_DIMENSION_PROVIDER, isTransientTaskbar, - createDefaultDisplayOptionSpec( - info, - windowBounds, - /* isMultiDisplay= */ useTwoPanels, - inv, - ), ) protected fun initializeVarsForPhone( diff --git a/tests/multivalentTests/src/com/android/launcher3/allapps/FloatingHeaderViewTest.kt b/tests/multivalentTests/src/com/android/launcher3/allapps/FloatingHeaderViewTest.kt index 0cf631ef4c..d2103aeeac 100644 --- a/tests/multivalentTests/src/com/android/launcher3/allapps/FloatingHeaderViewTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/allapps/FloatingHeaderViewTest.kt @@ -48,6 +48,19 @@ class FloatingHeaderViewTest { } @Test + @DisableFlags(Flags.FLAG_FLOATING_SEARCH_BAR, Flags.FLAG_MULTILINE_SEARCH_BAR) + fun onHeightUpdated_whenNotMultiline_thenZeroHeight() { + vut.setFloatingRowsCollapsed(true) + val beforeHeight = vut.maxTranslation + vut.updateSearchBarOffset(HEADER_HEIGHT_OFFSET) + + vut.onHeightUpdated() + + assertThat(vut.maxTranslation).isEqualTo(beforeHeight) + } + + @Test + @EnableFlags(Flags.FLAG_MULTILINE_SEARCH_BAR) @DisableFlags(Flags.FLAG_FLOATING_SEARCH_BAR) fun onHeightUpdated_whenMultiline_thenHeightIsOffset() { vut.setFloatingRowsCollapsed(true) @@ -59,8 +72,9 @@ class FloatingHeaderViewTest { } @Test + @DisableFlags(Flags.FLAG_MULTILINE_SEARCH_BAR) @EnableFlags(Flags.FLAG_FLOATING_SEARCH_BAR) - fun onHeightUpdated_whenFloatingRowsShownAndSingleLine_thenAddsOnlyFloatingRow() { + fun onHeightUpdated_whenFloatingRowsShownAndNotMultiline_thenAddsOnlyFloatingRow() { // Collapse floating rows and expand to trigger header height calculation vut.setFloatingRowsCollapsed(true) vut.setFloatingRowsCollapsed(false) diff --git a/tests/multivalentTests/src/com/android/launcher3/allapps/PrivateProfileManagerTest.java b/tests/multivalentTests/src/com/android/launcher3/allapps/PrivateProfileManagerTest.java index 9ad8700110..d757d10b71 100644 --- a/tests/multivalentTests/src/com/android/launcher3/allapps/PrivateProfileManagerTest.java +++ b/tests/multivalentTests/src/com/android/launcher3/allapps/PrivateProfileManagerTest.java @@ -20,11 +20,12 @@ import static androidx.test.core.app.ApplicationProvider.getApplicationContext; import static com.android.launcher3.allapps.UserProfileManager.STATE_DISABLED; import static com.android.launcher3.allapps.UserProfileManager.STATE_ENABLED; -import static com.android.launcher3.model.data.AppsListData.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED; +import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED; import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; import static org.junit.Assert.assertEquals; import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; @@ -146,7 +147,7 @@ public class PrivateProfileManagerTest { @Test public void quietModeFlagPresent_privateSpaceIsResetToDisabled() { PrivateProfileManager privateProfileManager = spy(mPrivateProfileManager); - doNothing().when(privateProfileManager).addPrivateSpaceDecorator(); + doNothing().when(privateProfileManager).addPrivateSpaceDecorator(anyInt()); doNothing().when(privateProfileManager).executeLock(); doReturn(mAllAppsRecyclerView).when(privateProfileManager).getMainRecyclerView(); when(mAllAppsStore.hasModelFlag(FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED)) @@ -166,7 +167,7 @@ public class PrivateProfileManagerTest { @Test public void transitioningToUnlocked_resetCallsPostUnlock() throws Exception { PrivateProfileManager privateProfileManager = spy(mPrivateProfileManager); - doNothing().when(privateProfileManager).addPrivateSpaceDecorator(); + doNothing().when(privateProfileManager).addPrivateSpaceDecorator(anyInt()); doReturn(mAllAppsRecyclerView).when(privateProfileManager).getMainRecyclerView(); when(mAllAppsStore.hasModelFlag(FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED)) .thenReturn(false); @@ -183,7 +184,7 @@ public class PrivateProfileManagerTest { @Test public void transitioningToLocked_resetCallsExecuteLock() throws Exception { PrivateProfileManager privateProfileManager = spy(mPrivateProfileManager); - doNothing().when(privateProfileManager).addPrivateSpaceDecorator(); + doNothing().when(privateProfileManager).addPrivateSpaceDecorator(anyInt()); doNothing().when(privateProfileManager).executeLock(); doReturn(mAllAppsRecyclerView).when(privateProfileManager).getMainRecyclerView(); when(mAllAppsStore.hasModelFlag(FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED)) diff --git a/tests/multivalentTests/src/com/android/launcher3/celllayout/board/TestWorkspaceBuilder.kt b/tests/multivalentTests/src/com/android/launcher3/celllayout/board/TestWorkspaceBuilder.kt index f58fd468eb..3405cae355 100644 --- a/tests/multivalentTests/src/com/android/launcher3/celllayout/board/TestWorkspaceBuilder.kt +++ b/tests/multivalentTests/src/com/android/launcher3/celllayout/board/TestWorkspaceBuilder.kt @@ -25,13 +25,13 @@ import androidx.test.core.app.ApplicationProvider import androidx.test.platform.app.InstrumentationRegistry import com.android.launcher3.InvariantDeviceProfile import com.android.launcher3.LauncherSettings +import com.android.launcher3.celllayout.FavoriteItemsTransaction import com.android.launcher3.model.data.AppInfo import com.android.launcher3.model.data.FolderInfo import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.model.data.WorkspaceItemInfo +import com.android.launcher3.ui.TestViewHelpers import com.android.launcher3.util.WidgetUtils -import com.android.launcher3.util.ui.TestViewHelpers -import com.android.launcher3.util.workspace.FavoriteItemsTransaction import java.util.function.Supplier class TestWorkspaceBuilder(private val mContext: Context) { diff --git a/tests/multivalentTests/src/com/android/launcher3/dagger/LauncherComponentProviderTest.kt b/tests/multivalentTests/src/com/android/launcher3/dagger/LauncherComponentProviderTest.kt index f7f098ea30..92558773a7 100644 --- a/tests/multivalentTests/src/com/android/launcher3/dagger/LauncherComponentProviderTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/dagger/LauncherComponentProviderTest.kt @@ -22,8 +22,8 @@ import android.view.ContextThemeWrapper import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 import com.android.launcher3.R +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.android.launcher3.util.LauncherModelHelper.TEST_PACKAGE -import com.android.launcher3.util.SandboxApplication import org.junit.Assert.assertNotNull import org.junit.Assert.assertNotSame import org.junit.Assert.assertSame @@ -37,14 +37,9 @@ class LauncherComponentProviderTest { @Test fun `returns same component as Launcher application`() { - val c = SandboxApplication() - c.init() - try { - assertSame(c.appComponent, LauncherComponentProvider.get(c)) - assertNotSame(LauncherComponentProvider.get(c), LauncherComponentProvider.get(app)) - } finally { - c.onDestroy() - } + val c = SandboxModelContext() + assertSame(c.appComponent, LauncherComponentProvider.get(c)) + assertNotSame(LauncherComponentProvider.get(c), LauncherComponentProvider.get(app)) } @Test diff --git a/tests/multivalentTests/src/com/android/launcher3/folder/FolderTest.kt b/tests/multivalentTests/src/com/android/launcher3/folder/FolderTest.kt index b1c943c6d1..e8259956fb 100644 --- a/tests/multivalentTests/src/com/android/launcher3/folder/FolderTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/folder/FolderTest.kt @@ -75,19 +75,13 @@ import org.mockito.kotlin.whenever @RunWith(AndroidJUnit4::class) class FolderTest { - private lateinit var dragController: DragController<*> private lateinit var context: Context private lateinit var workspaceBuilder: TestWorkspaceBuilder private lateinit var folder: Folder @Before fun setUp() { - dragController = Mockito.mock(DragController::class.java) - context = - object : ActivityContextWrapper(ApplicationProvider.getApplicationContext()) { - override fun <T : DragController<*>> getDragController(): T = dragController as T - } - + context = ActivityContextWrapper(ApplicationProvider.getApplicationContext()) workspaceBuilder = TestWorkspaceBuilder(context) folder = spy(Folder(context, null)) } @@ -271,6 +265,7 @@ class FolderTest { val viewMock = Mockito.mock(View::class.java) val dragOptions = DragOptions() `when`(viewMock.tag).thenReturn(itemInfo) + folder.dragController = Mockito.mock(DragController::class.java) folder.startDrag(viewMock, dragOptions) @@ -337,11 +332,12 @@ class FolderTest { doNothing().`when`(folder).completeDragExit() folder.isExternalDrag = true folder.isDragInProgress = true + folder.dragController = Mockito.mock(DragController::class.java) folder.onDragEnd() verify(folder, times(1)).completeDragExit() - verify(dragController, times(1)).removeDragListener(folder) + verify(folder.dragController, times(1)).removeDragListener(folder) assertFalse(folder.isDragInProgress) } @@ -349,11 +345,12 @@ class FolderTest { fun `Verify onDragEnd that we do not call completeDragExit and set drag in progress false`() { folder.isExternalDrag = false folder.isDragInProgress = true + folder.dragController = Mockito.mock(DragController::class.java) folder.onDragEnd() verify(folder, times(0)).completeDragExit() - verify(dragController, times(1)).removeDragListener(folder) + verify(folder.dragController, times(1)).removeDragListener(folder) assertFalse(folder.isDragInProgress) } diff --git a/tests/multivalentTests/src/com/android/launcher3/icons/FastBitmapDrawableTest.java b/tests/multivalentTests/src/com/android/launcher3/icons/FastBitmapDrawableTest.java index 47e2698655..58dce0b3dd 100644 --- a/tests/multivalentTests/src/com/android/launcher3/icons/FastBitmapDrawableTest.java +++ b/tests/multivalentTests/src/com/android/launcher3/icons/FastBitmapDrawableTest.java @@ -65,9 +65,10 @@ public class FastBitmapDrawableTest { @Before public void setUp() { MockitoAnnotations.initMocks(this); + FastBitmapDrawable.setFlagHoverEnabled(true); when(mFastBitmapDrawable.isVisible()).thenReturn(true); - mFastBitmapDrawable.isPressed = false; - mFastBitmapDrawable.isHovered = false; + mFastBitmapDrawable.mIsPressed = false; + mFastBitmapDrawable.mIsHovered = false; mFastBitmapDrawable.resetScale(); } @@ -79,7 +80,7 @@ public class FastBitmapDrawableTest { // No scale changes without state change. assertFalse("State change handled.", isHandled); - assertNull("Scale animation not null.", mFastBitmapDrawable.scaleAnimation); + assertNull("Scale animation not null.", mFastBitmapDrawable.mScaleAnimation); } @Test @@ -90,13 +91,13 @@ public class FastBitmapDrawableTest { // Animate to state pressed. assertTrue("State change not handled.", isHandled); - assertEquals("Duration not correct.", mFastBitmapDrawable.scaleAnimation.getDuration(), + assertEquals("Duration not correct.", mFastBitmapDrawable.mScaleAnimation.getDuration(), CLICK_FEEDBACK_DURATION); - mFastBitmapDrawable.scaleAnimation.end(); + mFastBitmapDrawable.mScaleAnimation.end(); assertEquals("End value not correct.", (float) SCALE.get(mFastBitmapDrawable), PRESSED_SCALE, EPSILON); assertTrue("Wrong interpolator used.", - mFastBitmapDrawable.scaleAnimation.getInterpolator() + mFastBitmapDrawable.mScaleAnimation.getInterpolator() instanceof AccelerateInterpolator); } @@ -108,13 +109,26 @@ public class FastBitmapDrawableTest { // Animate to state hovered. assertTrue("State change not handled.", isHandled); - assertEquals("Duration not correct.", mFastBitmapDrawable.scaleAnimation.getDuration(), + assertEquals("Duration not correct.", mFastBitmapDrawable.mScaleAnimation.getDuration(), HOVER_FEEDBACK_DURATION); - mFastBitmapDrawable.scaleAnimation.end(); + mFastBitmapDrawable.mScaleAnimation.end(); assertEquals("End value not correct.", (float) SCALE.get(mFastBitmapDrawable), HOVERED_SCALE, EPSILON); assertTrue("Wrong interpolator used.", - mFastBitmapDrawable.scaleAnimation.getInterpolator() instanceof PathInterpolator); + mFastBitmapDrawable.mScaleAnimation.getInterpolator() instanceof PathInterpolator); + } + + @Test + public void testOnStateChange_stateHoveredFlagDisabled() { + FastBitmapDrawable.setFlagHoverEnabled(false); + int[] state = new int[]{android.R.attr.state_hovered}; + + boolean isHandled = mFastBitmapDrawable.onStateChange(state); + + // No state change with flag disabled. + assertFalse("Hover state change handled with flag disabled.", isHandled); + assertNull("Animation should not run with hover flag disabled.", + mFastBitmapDrawable.mScaleAnimation); } @Test @@ -125,13 +139,13 @@ public class FastBitmapDrawableTest { // Animate to pressed state only. assertTrue("State change not handled.", isHandled); - assertEquals("Duration not correct.", mFastBitmapDrawable.scaleAnimation.getDuration(), + assertEquals("Duration not correct.", mFastBitmapDrawable.mScaleAnimation.getDuration(), CLICK_FEEDBACK_DURATION); - mFastBitmapDrawable.scaleAnimation.end(); + mFastBitmapDrawable.mScaleAnimation.end(); assertEquals("End value not correct.", (float) SCALE.get(mFastBitmapDrawable), PRESSED_SCALE, EPSILON); assertTrue("Wrong interpolator used.", - mFastBitmapDrawable.scaleAnimation.getInterpolator() + mFastBitmapDrawable.mScaleAnimation.getInterpolator() instanceof AccelerateInterpolator); } @@ -143,20 +157,20 @@ public class FastBitmapDrawableTest { // Animate to pressed state only. assertTrue("State change not handled.", isHandled); - assertEquals("Duration not correct.", mFastBitmapDrawable.scaleAnimation.getDuration(), + assertEquals("Duration not correct.", mFastBitmapDrawable.mScaleAnimation.getDuration(), CLICK_FEEDBACK_DURATION); - mFastBitmapDrawable.scaleAnimation.end(); + mFastBitmapDrawable.mScaleAnimation.end(); assertEquals("End value not correct.", (float) SCALE.get(mFastBitmapDrawable), PRESSED_SCALE, EPSILON); assertTrue("Wrong interpolator used.", - mFastBitmapDrawable.scaleAnimation.getInterpolator() + mFastBitmapDrawable.mScaleAnimation.getInterpolator() instanceof AccelerateInterpolator); } @Test public void testOnStateChange_stateHoveredAndPressedToPressed() { - mFastBitmapDrawable.isPressed = true; - mFastBitmapDrawable.isHovered = true; + mFastBitmapDrawable.mIsPressed = true; + mFastBitmapDrawable.mIsHovered = true; SCALE.setValue(mFastBitmapDrawable, PRESSED_SCALE); int[] state = new int[]{android.R.attr.state_pressed}; @@ -170,8 +184,8 @@ public class FastBitmapDrawableTest { @Test public void testOnStateChange_stateHoveredAndPressedToHovered() { - mFastBitmapDrawable.isPressed = true; - mFastBitmapDrawable.isHovered = true; + mFastBitmapDrawable.mIsPressed = true; + mFastBitmapDrawable.mIsHovered = true; SCALE.setValue(mFastBitmapDrawable, PRESSED_SCALE); int[] state = new int[]{android.R.attr.state_hovered}; @@ -185,7 +199,7 @@ public class FastBitmapDrawableTest { @Test public void testOnStateChange_stateHoveredToPressed() { - mFastBitmapDrawable.isHovered = true; + mFastBitmapDrawable.mIsHovered = true; SCALE.setValue(mFastBitmapDrawable, HOVERED_SCALE); int[] state = new int[]{android.R.attr.state_pressed}; @@ -199,7 +213,7 @@ public class FastBitmapDrawableTest { @Test public void testOnStateChange_statePressedToHovered() { - mFastBitmapDrawable.isPressed = true; + mFastBitmapDrawable.mIsPressed = true; SCALE.setValue(mFastBitmapDrawable, PRESSED_SCALE); int[] state = new int[]{android.R.attr.state_hovered}; @@ -213,7 +227,7 @@ public class FastBitmapDrawableTest { @Test public void testOnStateChange_stateDefaultFromPressed() { - mFastBitmapDrawable.isPressed = true; + mFastBitmapDrawable.mIsPressed = true; SCALE.setValue(mFastBitmapDrawable, PRESSED_SCALE); int[] state = new int[]{}; @@ -221,18 +235,18 @@ public class FastBitmapDrawableTest { // Animate to default state from pressed state. assertTrue("State change not handled.", isHandled); - assertEquals("Duration not correct.", mFastBitmapDrawable.scaleAnimation.getDuration(), + assertEquals("Duration not correct.", mFastBitmapDrawable.mScaleAnimation.getDuration(), CLICK_FEEDBACK_DURATION); - mFastBitmapDrawable.scaleAnimation.end(); + mFastBitmapDrawable.mScaleAnimation.end(); assertEquals("End value not correct.", (float) SCALE.get(mFastBitmapDrawable), 1f, EPSILON); assertTrue("Wrong interpolator used.", - mFastBitmapDrawable.scaleAnimation.getInterpolator() + mFastBitmapDrawable.mScaleAnimation.getInterpolator() instanceof DecelerateInterpolator); } @Test public void testOnStateChange_stateDefaultFromHovered() { - mFastBitmapDrawable.isHovered = true; + mFastBitmapDrawable.mIsHovered = true; SCALE.setValue(mFastBitmapDrawable, HOVERED_SCALE); int[] state = new int[]{}; @@ -240,12 +254,12 @@ public class FastBitmapDrawableTest { // Animate to default state from hovered state. assertTrue("State change not handled.", isHandled); - assertEquals("Duration not correct.", mFastBitmapDrawable.scaleAnimation.getDuration(), + assertEquals("Duration not correct.", mFastBitmapDrawable.mScaleAnimation.getDuration(), HOVER_FEEDBACK_DURATION); - mFastBitmapDrawable.scaleAnimation.end(); + mFastBitmapDrawable.mScaleAnimation.end(); assertEquals("End value not correct.", (float) SCALE.get(mFastBitmapDrawable), 1f, EPSILON); assertTrue("Wrong interpolator used.", - mFastBitmapDrawable.scaleAnimation.getInterpolator() instanceof PathInterpolator); + mFastBitmapDrawable.mScaleAnimation.getInterpolator() instanceof PathInterpolator); } @Test @@ -258,12 +272,12 @@ public class FastBitmapDrawableTest { // Animate to hovered state from midway to pressed state. assertTrue("State change not handled.", isHandled); assertEquals("Duration not correct.", - mFastBitmapDrawable.scaleAnimation.getDuration(), HOVER_FEEDBACK_DURATION); - mFastBitmapDrawable.scaleAnimation.end(); + mFastBitmapDrawable.mScaleAnimation.getDuration(), HOVER_FEEDBACK_DURATION); + mFastBitmapDrawable.mScaleAnimation.end(); assertEquals("End value not correct.", (float) SCALE.get(mFastBitmapDrawable), HOVERED_SCALE, EPSILON); assertTrue("Wrong interpolator used.", - mFastBitmapDrawable.scaleAnimation.getInterpolator() instanceof PathInterpolator); + mFastBitmapDrawable.mScaleAnimation.getInterpolator() instanceof PathInterpolator); } @Test @@ -276,19 +290,19 @@ public class FastBitmapDrawableTest { // Animate to pressed state from midway to hovered state. assertTrue("State change not handled.", isHandled); assertEquals("Duration not correct.", - mFastBitmapDrawable.scaleAnimation.getDuration(), CLICK_FEEDBACK_DURATION); - mFastBitmapDrawable.scaleAnimation.end(); + mFastBitmapDrawable.mScaleAnimation.getDuration(), CLICK_FEEDBACK_DURATION); + mFastBitmapDrawable.mScaleAnimation.end(); assertEquals("End value not correct.", (float) SCALE.get(mFastBitmapDrawable), PRESSED_SCALE, EPSILON); assertTrue("Wrong interpolator used.", - mFastBitmapDrawable.scaleAnimation.getInterpolator() + mFastBitmapDrawable.mScaleAnimation.getInterpolator() instanceof AccelerateInterpolator); } @Test public void testOnStateChange_stateDefaultFromPressedNotVisible() { when(mFastBitmapDrawable.isVisible()).thenReturn(false); - mFastBitmapDrawable.isPressed = true; + mFastBitmapDrawable.mIsPressed = true; SCALE.setValue(mFastBitmapDrawable, PRESSED_SCALE); clearInvocations(mFastBitmapDrawable); int[] state = new int[]{}; @@ -297,7 +311,7 @@ public class FastBitmapDrawableTest { // No animations when state was pressed but drawable no longer visible. Set values directly. assertTrue("State change not handled.", isHandled); - assertNull("Scale animation not null.", mFastBitmapDrawable.scaleAnimation); + assertNull("Scale animation not null.", mFastBitmapDrawable.mScaleAnimation); assertEquals("End value not correct.", (float) SCALE.get(mFastBitmapDrawable), 1f, EPSILON); verify(mFastBitmapDrawable).invalidateSelf(); } @@ -305,7 +319,7 @@ public class FastBitmapDrawableTest { @Test public void testOnStateChange_stateDefaultFromHoveredNotVisible() { when(mFastBitmapDrawable.isVisible()).thenReturn(false); - mFastBitmapDrawable.isHovered = true; + mFastBitmapDrawable.mIsHovered = true; SCALE.setValue(mFastBitmapDrawable, HOVERED_SCALE); clearInvocations(mFastBitmapDrawable); int[] state = new int[]{}; @@ -314,7 +328,7 @@ public class FastBitmapDrawableTest { // No animations when state was hovered but drawable no longer visible. Set values directly. assertTrue("State change not handled.", isHandled); - assertNull("Scale animation not null.", mFastBitmapDrawable.scaleAnimation); + assertNull("Scale animation not null.", mFastBitmapDrawable.mScaleAnimation); assertEquals("End value not correct.", (float) SCALE.get(mFastBitmapDrawable), 1f, EPSILON); verify(mFastBitmapDrawable).invalidateSelf(); } diff --git a/tests/multivalentTests/src/com/android/launcher3/icons/IconCacheTest.java b/tests/multivalentTests/src/com/android/launcher3/icons/IconCacheTest.java index b5e8b31f6c..0aaf4d7c40 100644 --- a/tests/multivalentTests/src/com/android/launcher3/icons/IconCacheTest.java +++ b/tests/multivalentTests/src/com/android/launcher3/icons/IconCacheTest.java @@ -28,7 +28,6 @@ import static com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY; import static com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY2; import static com.android.launcher3.util.LauncherModelHelper.TEST_PACKAGE; import static com.android.launcher3.util.TestUtil.runOnExecutorSync; -import static com.android.systemui.shared.Flags.FLAG_EXTENDIBLE_THEME_MANAGER; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; @@ -51,9 +50,6 @@ import android.graphics.Bitmap.Config; import android.graphics.drawable.Icon; import android.os.PersistableBundle; import android.os.UserHandle; -import android.platform.test.annotations.DisableFlags; -import android.platform.test.annotations.EnableFlags; -import android.platform.test.flag.junit.SetFlagsRule; import android.text.TextUtils; import androidx.annotation.Nullable; @@ -74,7 +70,6 @@ import com.android.launcher3.util.ApplicationInfoWrapper; import com.android.launcher3.util.ComponentKey; import com.android.launcher3.util.PackageUserKey; import com.android.launcher3.util.SandboxApplication; -import com.android.launcher3.util.TestUtil; import com.google.common.truth.Truth; @@ -93,7 +88,6 @@ import java.util.Set; public class IconCacheTest { @Rule public SandboxApplication mContext = new SandboxApplication(); - @Rule public SetFlagsRule mFlags = new SetFlagsRule(); private IconCache mIconCache; @@ -283,60 +277,6 @@ public class IconCacheTest { assertTrue(mIconCache.isItemInDb(new ComponentKey(cn2, user))); } - @Test - @EnableFlags(FLAG_EXTENDIBLE_THEME_MANAGER) - public void theme_icon_not_returned_if_not_requested() { - ComponentName cn = new ComponentName(TEST_PACKAGE, TEST_ACTIVITY); - UserHandle user = myUserHandle(); - LauncherActivityInfo lai = mContext.getSystemService(LauncherApps.class) - .resolveActivity(makeLaunchIntent(cn), user); - assertNotNull(lai); - executeIconUpdate(lai, LauncherActivityCachingLogic.INSTANCE); - - AppInfo info = new AppInfo(mContext, lai, user); - TestUtil.runOnExecutorSync(MODEL_EXECUTOR, () -> { - mIconCache.clearMemoryCache(); - mIconCache.getTitleAndIcon(info, () -> lai, DEFAULT_LOOKUP_FLAG); - }); - assertFalse(info.bitmap.getMatchingLookupFlag().hasThemeIcon()); - } - - @Test - @EnableFlags(FLAG_EXTENDIBLE_THEME_MANAGER) - public void theme_icon_returned_if_requested() { - ComponentName cn = new ComponentName(TEST_PACKAGE, TEST_ACTIVITY); - UserHandle user = myUserHandle(); - LauncherActivityInfo lai = mContext.getSystemService(LauncherApps.class) - .resolveActivity(makeLaunchIntent(cn), user); - assertNotNull(lai); - executeIconUpdate(lai, LauncherActivityCachingLogic.INSTANCE); - - AppInfo info = new AppInfo(mContext, lai, user); - TestUtil.runOnExecutorSync(MODEL_EXECUTOR, () -> { - mIconCache.clearMemoryCache(); - mIconCache.getTitleAndIcon(info, () -> lai, DEFAULT_LOOKUP_FLAG.withThemeIcon()); - }); - assertTrue(info.bitmap.getMatchingLookupFlag().hasThemeIcon()); - } - - @Test - @DisableFlags(FLAG_EXTENDIBLE_THEME_MANAGER) - public void theme_icon_returned_if_not_requested_with_flag_off() { - ComponentName cn = new ComponentName(TEST_PACKAGE, TEST_ACTIVITY); - UserHandle user = myUserHandle(); - LauncherActivityInfo lai = mContext.getSystemService(LauncherApps.class) - .resolveActivity(makeLaunchIntent(cn), user); - assertNotNull(lai); - executeIconUpdate(lai, LauncherActivityCachingLogic.INSTANCE); - - AppInfo info = new AppInfo(mContext, lai, user); - TestUtil.runOnExecutorSync(MODEL_EXECUTOR, () -> { - mIconCache.clearMemoryCache(); - mIconCache.getTitleAndIcon(info, () -> lai, DEFAULT_LOOKUP_FLAG); - }); - assertTrue(info.bitmap.getMatchingLookupFlag().hasThemeIcon()); - } - /** * Executes the icon update for the provided entry and returns the updated packages */ diff --git a/tests/multivalentTests/src/com/android/launcher3/icons/cache/CacheLookupFlagTest.kt b/tests/multivalentTests/src/com/android/launcher3/icons/cache/CacheLookupFlagTest.kt index cb26385c33..8218181468 100644 --- a/tests/multivalentTests/src/com/android/launcher3/icons/cache/CacheLookupFlagTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/icons/cache/CacheLookupFlagTest.kt @@ -16,16 +16,11 @@ package com.android.launcher3.icons.cache -import android.platform.test.annotations.DisableFlags -import android.platform.test.annotations.EnableFlags -import android.platform.test.flag.junit.SetFlagsRule import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.launcher3.icons.cache.CacheLookupFlag.Companion.DEFAULT_LOOKUP_FLAG -import com.android.systemui.shared.Flags.FLAG_EXTENDIBLE_THEME_MANAGER import org.junit.Assert.assertFalse import org.junit.Assert.assertTrue -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith @@ -33,8 +28,6 @@ import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) class CacheLookupFlagTest { - @get:Rule val flags = SetFlagsRule() - @Test fun `useLowRes preserves lowRes values`() { assertFalse(DEFAULT_LOOKUP_FLAG.useLowRes()) @@ -106,18 +99,4 @@ class CacheLookupFlagTest { .isVisuallyLessThan(DEFAULT_LOOKUP_FLAG.withUsePackageIcon()) ) } - - @DisableFlags(FLAG_EXTENDIBLE_THEME_MANAGER) - @Test - fun `isVisuallyLessThan does not depend on theme with flag off`() { - assertFalse(DEFAULT_LOOKUP_FLAG.withThemeIcon().isVisuallyLessThan(DEFAULT_LOOKUP_FLAG)) - assertFalse(DEFAULT_LOOKUP_FLAG.isVisuallyLessThan(DEFAULT_LOOKUP_FLAG.withThemeIcon())) - } - - @EnableFlags(FLAG_EXTENDIBLE_THEME_MANAGER) - @Test - fun `isVisuallyLessThan depends on theme with flag on`() { - assertFalse(DEFAULT_LOOKUP_FLAG.withThemeIcon().isVisuallyLessThan(DEFAULT_LOOKUP_FLAG)) - assertTrue(DEFAULT_LOOKUP_FLAG.isVisuallyLessThan(DEFAULT_LOOKUP_FLAG.withThemeIcon())) - } } diff --git a/tests/multivalentTests/src/com/android/launcher3/icons/mono/MonoIconThemeControllerTest.kt b/tests/multivalentTests/src/com/android/launcher3/icons/mono/MonoIconThemeControllerTest.kt index f8eb8f1330..2c9cb2feb7 100644 --- a/tests/multivalentTests/src/com/android/launcher3/icons/mono/MonoIconThemeControllerTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/icons/mono/MonoIconThemeControllerTest.kt @@ -32,15 +32,13 @@ import com.android.launcher3.Flags import com.android.launcher3.icons.BaseIconFactory import com.android.launcher3.icons.BitmapInfo import com.android.launcher3.icons.SourceHint -import com.android.launcher3.icons.ThemedBitmap import com.android.launcher3.icons.cache.LauncherActivityCachingLogic import com.android.launcher3.util.ComponentKey import com.android.launcher3.util.LauncherMultivalentJUnit.Companion.isRunningInRobolectric import org.junit.Assert.assertNotNull -import org.junit.Assert.assertNotSame import org.junit.Assert.assertNull -import org.junit.Assert.assertSame import org.junit.Assume.assumeFalse +import org.junit.Assume.assumeTrue import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith @@ -80,10 +78,11 @@ class MonoIconThemeControllerTest { @EnableFlags(Flags.FLAG_FORCE_MONOCHROME_APP_ICONS) fun `createThemedBitmap when mono generation is enabled`() { ensureBitmapSerializationSupported() + // Make sure forced theme icon is enabled in BaseIconFactory + assumeTrue(iconFactory.shouldForceThemeIcon()) val icon = AdaptiveIconDrawable(ColorDrawable(Color.BLACK), null, null) assertNotNull( - MonoIconThemeController(shouldForceThemeIcon = true) - .createThemedBitmap(icon, BitmapInfo.LOW_RES_INFO, iconFactory) + MonoIconThemeController().createThemedBitmap(icon, BitmapInfo.LOW_RES_INFO, iconFactory) ) } @@ -95,10 +94,9 @@ class MonoIconThemeControllerTest { val themeBitmap = MonoIconThemeController().createThemedBitmap(icon, iconInfo, iconFactory)!! - assertNotSame( - ThemedBitmap.NOT_SUPPORTED, + assertNotNull( MonoIconThemeController() - .decode(themeBitmap.serialize(), iconInfo, iconFactory, sourceHint), + .decode(themeBitmap.serialize(), iconInfo, iconFactory, sourceHint) ) } @@ -107,10 +105,9 @@ class MonoIconThemeControllerTest { ensureBitmapSerializationSupported() val icon = AdaptiveIconDrawable(ColorDrawable(Color.BLACK), null, ColorDrawable(Color.RED)) val iconInfo = iconFactory.createBadgedIconBitmap(icon) - assertSame( - ThemedBitmap.NOT_SUPPORTED, + assertNull( MonoIconThemeController() - .decode(byteArrayOf(1, 1, 1, 1), iconInfo, iconFactory, sourceHint), + .decode(byteArrayOf(1, 1, 1, 1), iconInfo, iconFactory, sourceHint) ) } @@ -128,19 +125,17 @@ class MonoIconThemeControllerTest { MonoIconThemeController().createThemedBitmap(icon, iconInfo, iconFactory) val nonMonoIcon = AdaptiveIconDrawable(ColorDrawable(Color.BLACK), null, null) - assertNotSame( - nonMonoIcon, - MonoIconThemeController().createThemedAdaptiveIcon(context, nonMonoIcon, iconInfo), + assertNotNull( + MonoIconThemeController().createThemedAdaptiveIcon(context, nonMonoIcon, iconInfo) ) } @Test fun `createThemedAdaptiveIcon invalid bitmap info`() { val nonMonoIcon = AdaptiveIconDrawable(ColorDrawable(Color.BLACK), null, null) - assertSame( - nonMonoIcon, + assertNull( MonoIconThemeController() - .createThemedAdaptiveIcon(context, nonMonoIcon, BitmapInfo.LOW_RES_INFO), + .createThemedAdaptiveIcon(context, nonMonoIcon, BitmapInfo.LOW_RES_INFO) ) } diff --git a/tests/multivalentTests/src/com/android/launcher3/logging/StartupLatencyLoggerTest.kt b/tests/multivalentTests/src/com/android/launcher3/logging/StartupLatencyLoggerTest.kt index 7fd3570b80..713d4d5df7 100644 --- a/tests/multivalentTests/src/com/android/launcher3/logging/StartupLatencyLoggerTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/logging/StartupLatencyLoggerTest.kt @@ -1,180 +1,291 @@ -/* - * Copyright (C) 2025 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - package com.android.launcher3.logging import androidx.core.util.isEmpty +import androidx.test.annotation.UiThreadTest import androidx.test.filters.SmallTest -import com.android.launcher3.logging.StartupLatencyLogger.ColdRebootStartupLogger -import com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent -import com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE -import com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION -import com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_VIEW_INFLATION -import com.android.launcher3.logging.StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC -import com.android.launcher3.logging.StatsLogManager.StatsLatencyLogger -import com.android.launcher3.logging.StatsLogManager.StatsLatencyLogger.Companion.LAUNCHER_LATENCY_PACKAGE_ID -import com.android.launcher3.logging.StatsLogManager.StatsLatencyLogger.LatencyType -import com.android.launcher3.util.Executors.MAIN_EXECUTOR import com.android.launcher3.util.LauncherMultivalentJUnit -import com.android.launcher3.util.TestUtil -import com.android.launcher3.views.ActivityContext import com.google.common.truth.Truth.assertThat import org.junit.Before import org.junit.Test import org.junit.runner.RunWith -import org.mockito.Answers.RETURNS_SELF -import org.mockito.Mock -import org.mockito.MockitoAnnotations -import org.mockito.kotlin.any -import org.mockito.kotlin.doAnswer -import org.mockito.kotlin.doReturn -import org.mockito.kotlin.mock -import org.mockito.kotlin.verify -import org.mockito.kotlin.whenever -/** Unit test for [ColdRebootStartupLogger]. */ +/** Unit test for [ColdRebootStartupLatencyLogger]. */ @SmallTest @RunWith(LauncherMultivalentJUnit::class) class StartupLatencyLoggerTest { - @Mock lateinit var ctx: ActivityContext - @Mock lateinit var timeProvider: () -> Long - @Mock lateinit var statsLogManager: StatsLogManager - - private val trackedLoggers = mutableMapOf<LauncherLatencyEvent, StatsLatencyLogger>() - - private val underTest by lazy { ColdRebootStartupLogger(ctx, timeProvider) } + private val underTest = ColdRebootStartupLatencyLogger() @Before fun setup() { - MockitoAnnotations.initMocks(this) - doReturn(statsLogManager).whenever(ctx).statsLogManager - doAnswer { - mock<StatsLatencyLogger>(defaultAnswer = RETURNS_SELF).apply { - doAnswer { invocation -> trackedLoggers[invocation.getArgument(0)] = this } - .whenever(this) - .log(any()) - } - } - .whenever(statsLogManager) - .latencyLogger() + underTest.setIsInTest() } @Test + @UiThreadTest fun logTotalDurationStart() { - doReturn(100).whenever(timeProvider).invoke() + underTest.logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) - val startTime = underTest.startTimeByEvent.get(LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.id) + val startTime = + underTest.startTimeByEvent.get( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.id + ) assertThat(startTime).isEqualTo(100) assertThat(underTest.endTimeByEvent.isEmpty()).isTrue() } @Test + @UiThreadTest fun logTotalDurationEnd() { - whenever(timeProvider.invoke()).thenReturn(100).thenReturn(101) + underTest.logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) - underTest.logEnd(LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION) + underTest.logEnd( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) - val endTime = underTest.endTimeByEvent.get(LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.id) - assertThat(endTime).isEqualTo(101) + val endTime = + underTest.endTimeByEvent.get( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.id + ) + assertThat(endTime).isEqualTo(100) } @Test - fun logStartOfOtherEvents_afterLogStartOfTotalDuration_logged() { - whenever(timeProvider.invoke()) - .thenReturn(100) - .thenReturn(101) - .thenReturn(102) - .thenReturn(103) + @UiThreadTest + fun logStartOfOtherEvents_withoutLogStartOfTotalDuration_noOp() { + underTest + .logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE, + 100 + ) + .logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_VIEW_INFLATION, + 101 + ) + .logStart( + StatsLogManager.LauncherLatencyEvent + .LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC, + 102 + ) - underTest.apply { - logStart(LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE) - logStart(LAUNCHER_LATENCY_STARTUP_VIEW_INFLATION) - logStart(LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC) - } + assertThat(underTest.startTimeByEvent.isEmpty()).isTrue() + } + + @Test + @UiThreadTest + fun logStartOfOtherEvents_afterLogStartOfTotalDuration_logged() { + underTest.logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) + + underTest + .logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE, + 100 + ) + .logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_VIEW_INFLATION, + 101 + ) + .logStart( + StatsLogManager.LauncherLatencyEvent + .LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC, + 102 + ) assertThat(underTest.startTimeByEvent.size()).isEqualTo(4) } @Test - fun finishLogs_commits_logs() { - whenever(timeProvider.invoke()).thenReturn(100).thenReturn(102) - underTest.finishLogs(10, true) - TestUtil.runOnExecutorSync(MAIN_EXECUTOR) {} + @UiThreadTest + fun logDuplicatedStartEvent_2ndEvent_notLogged() { + underTest.logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) - assertThat(trackedLoggers).hasSize(1) - LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.verifyLoggedEvent(2) + underTest.logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 101 + ) + + assertThat(underTest.startTimeByEvent.size()).isEqualTo(1) + assertThat( + underTest.startTimeByEvent.get( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.id + ) + ) + .isEqualTo(100) } @Test - fun finishLogs_returns_noop_for_followup() { - whenever(timeProvider.invoke()).thenReturn(100) - val followup = underTest.finishLogs(10, true) - TestUtil.runOnExecutorSync(MAIN_EXECUTOR) {} - assertThat(followup).isEqualTo(StartupLatencyLogger.NoOpLogger) + @UiThreadTest + fun loadStartOfWorkspace_thenEndWithAsync_logAsyncStart() { + underTest + .logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) + .logWorkspaceLoadStartTime(111) + + underTest.logEnd( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC, + 120 + ) + + assertThat(underTest.startTimeByEvent.size()).isEqualTo(2) + assertThat( + underTest.startTimeByEvent.get( + StatsLogManager.LauncherLatencyEvent + .LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC + .id + ) + ) + .isEqualTo(111) } @Test - fun finishLogs_commits_all_sent_events() { - whenever(timeProvider.invoke()) - .thenReturn(100) - .thenReturn(200) - .thenReturn(210) - .thenReturn(230) - underTest.logStart(LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE) - underTest.logEnd(LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE) + @UiThreadTest + fun logEndOfEvent_withoutStartEvent_notLogged() { + underTest.logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) - underTest.finishLogs(10, true) - TestUtil.runOnExecutorSync(MAIN_EXECUTOR) {} + underTest.logEnd( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC, + 120 + ) - assertThat(trackedLoggers).hasSize(2) - LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.verifyLoggedEvent(130) - LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE.verifyLoggedEvent(10) + assertThat(underTest.endTimeByEvent.size()).isEqualTo(0) + assertThat( + underTest.endTimeByEvent.get( + StatsLogManager.LauncherLatencyEvent + .LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC + .id + ) + ) + .isEqualTo(0) } @Test - fun finishLogs_logs_workspace_async_load_on_async_bind() { - whenever(timeProvider.invoke()).thenReturn(100).thenReturn(200).thenReturn(250) - underTest.logWorkspaceLoadStartTime() + @UiThreadTest + fun logEndOfEvent_afterEndOfTotalDuration_notLogged() { + underTest + .logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) + .logEnd( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 120 + ) - underTest.finishLogs(30, false) - TestUtil.runOnExecutorSync(MAIN_EXECUTOR) {} + underTest.logEnd( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC, + 121 + ) - assertThat(trackedLoggers).hasSize(2) - LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.verifyLoggedEvent(150, 30) - LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC.verifyLoggedEvent(50, 30) + assertThat(underTest.endTimeByEvent.size()).isEqualTo(1) + assertThat( + underTest.endTimeByEvent.get( + StatsLogManager.LauncherLatencyEvent + .LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC + .id + ) + ) + .isEqualTo(0) } @Test - fun finishLogs_does_not_log_workspace_async_load_on_sync_bind() { - whenever(timeProvider.invoke()).thenReturn(100).thenReturn(200).thenReturn(250) - underTest.logWorkspaceLoadStartTime() + @UiThreadTest + fun logCardinality_setCardinality() { + underTest.logCardinality(-1) + underTest.logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) - underTest.finishLogs(30, true) - TestUtil.runOnExecutorSync(MAIN_EXECUTOR) {} + underTest.logCardinality(235) - assertThat(trackedLoggers).hasSize(1) - LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION.verifyLoggedEvent(150) + assertThat(underTest.cardinality).isEqualTo(235) } - private fun LauncherLatencyEvent.verifyLoggedEvent(latency: Long, cardinality: Int = -1) { - val logger = trackedLoggers[this]!! - verify(logger).withLatency(latency) - verify(logger).withPackageId(LAUNCHER_LATENCY_PACKAGE_ID) - verify(logger).withType(LatencyType.COLD_DEVICE_REBOOTING) - verify(logger).withCardinality(cardinality) + @Test + @UiThreadTest + fun reset_clearState() { + underTest + .logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) + .logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE, + 100 + ) + .logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_VIEW_INFLATION, + 110 + ) + .logEnd( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_VIEW_INFLATION, + 115 + ) + .logWorkspaceLoadStartTime(120) + .logCardinality(235) + .logEnd( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_ACTIVITY_ON_CREATE, + 100 + ) + .logEnd( + StatsLogManager.LauncherLatencyEvent + .LAUNCHER_LATENCY_STARTUP_WORKSPACE_LOADER_ASYNC, + 140 + ) + .logEnd( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 160 + ) + assertThat(underTest.startTimeByEvent.size()).isEqualTo(4) + assertThat(underTest.endTimeByEvent.size()).isEqualTo(4) + assertThat(underTest.cardinality).isEqualTo(235) + assertThat(underTest.isTornDown).isFalse() + + underTest.reset() + + assertThat(underTest.startTimeByEvent.isEmpty()).isTrue() + assertThat(underTest.endTimeByEvent.isEmpty()).isTrue() + assertThat(underTest.cardinality).isEqualTo(ColdRebootStartupLatencyLogger.UNSET_INT) + assertThat(underTest.workspaceLoadStartTime) + .isEqualTo(ColdRebootStartupLatencyLogger.UNSET_LONG) + assertThat(underTest.isTornDown).isTrue() + } + + @Test + @UiThreadTest + fun tornDown_rejectLogs() { + underTest.reset() + + underTest + .logStart( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 100 + ) + .logEnd( + StatsLogManager.LauncherLatencyEvent.LAUNCHER_LATENCY_STARTUP_TOTAL_DURATION, + 200 + ) + .logCardinality(123) + assertThat(underTest.startTimeByEvent.isEmpty()).isTrue() + assertThat(underTest.endTimeByEvent.isEmpty()).isTrue() + assertThat(underTest.cardinality).isEqualTo(ColdRebootStartupLatencyLogger.UNSET_INT) } } diff --git a/tests/multivalentTests/src/com/android/launcher3/model/AbstractWorkspaceModelTest.kt b/tests/multivalentTests/src/com/android/launcher3/model/AbstractWorkspaceModelTest.kt index 81fe019cd2..98191fecf0 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/AbstractWorkspaceModelTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/model/AbstractWorkspaceModelTest.kt @@ -16,24 +16,20 @@ package com.android.launcher3.model import android.content.ComponentName +import android.content.Context import android.graphics.Rect import com.android.launcher3.InvariantDeviceProfile import com.android.launcher3.LauncherAppState -import com.android.launcher3.LauncherModel import com.android.launcher3.model.data.AppInfo -import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.util.GridOccupancy import com.android.launcher3.util.IntArray import com.android.launcher3.util.IntSparseArrayMap import com.android.launcher3.util.LauncherLayoutBuilder +import com.android.launcher3.util.LauncherModelHelper import com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY import com.android.launcher3.util.LauncherModelHelper.TEST_PACKAGE -import com.android.launcher3.util.ModelTestExtensions.loadModelSync -import com.android.launcher3.util.SandboxApplication -import com.android.launcher3.util.rule.LayoutProviderRule import java.util.UUID -import org.junit.Rule /** Base class for workspace related tests. */ abstract class AbstractWorkspaceModelTest { @@ -43,22 +39,19 @@ abstract class AbstractWorkspaceModelTest { val nonEmptyScreenSpaces = listOf(Rect(1, 2, 3, 4)) } - @get:Rule val mTargetContext: SandboxApplication = SandboxApplication().withModelDependency() - @get:Rule var mLayoutProvider: LayoutProviderRule = LayoutProviderRule(mTargetContext) - protected lateinit var mLayoutBuilder: LauncherLayoutBuilder + protected lateinit var mTargetContext: Context protected lateinit var mIdp: InvariantDeviceProfile protected lateinit var mAppState: LauncherAppState + protected lateinit var mModelHelper: LauncherModelHelper protected lateinit var mExistingScreens: IntArray protected lateinit var mNewScreens: IntArray - protected lateinit var mAddedWorkspaceItems: ArrayList<ItemInfo> protected lateinit var mScreenOccupancy: IntSparseArrayMap<GridOccupancy> - val model: LauncherModel - get() = LauncherAppState.getInstance(mTargetContext).model - open fun setup() { mLayoutBuilder = LauncherLayoutBuilder() + mModelHelper = LauncherModelHelper() + mTargetContext = mModelHelper.sandboxContext mIdp = InvariantDeviceProfile.INSTANCE[mTargetContext] mIdp.numRows = 5 mIdp.numColumns = mIdp.numRows @@ -66,16 +59,19 @@ abstract class AbstractWorkspaceModelTest { mExistingScreens = IntArray() mScreenOccupancy = IntSparseArrayMap() mNewScreens = IntArray() - mAddedWorkspaceItems = ArrayList() + } + + open fun tearDown() { + mModelHelper.destroy() } /** Sets up workspaces with the given screen IDs with some items and a 2x2 space. */ fun setupWorkspaces(screenIdsWithItems: List<Int>) { screenIdsWithItems.forEach { screenId -> setupWorkspace(screenId, nonEmptyScreenSpaces) } - mLayoutProvider.setupDefaultLayoutProvider(mLayoutBuilder) + mModelHelper.setupDefaultLayoutProvider(mLayoutBuilder) mIdp.numRows = 5 mIdp.numColumns = mIdp.numRows - model.loadModelSync() + mModelHelper.loadModelSync() } /** @@ -88,10 +84,10 @@ abstract class AbstractWorkspaceModelTest { screen3: List<Rect>? = null, ) { listOf(screen0, screen1, screen2, screen3).let(this::setupWithSpaces) - mLayoutProvider.setupDefaultLayoutProvider(mLayoutBuilder) + mModelHelper.setupDefaultLayoutProvider(mLayoutBuilder) mIdp.numRows = 5 mIdp.numColumns = mIdp.numRows - model.loadModelSync() + mModelHelper.loadModelSync() } private fun setupWithSpaces(workspaceSpaces: List<List<Rect>?>) { diff --git a/tests/multivalentTests/src/com/android/launcher3/model/AddWorkspaceItemsTaskTest.kt b/tests/multivalentTests/src/com/android/launcher3/model/AddWorkspaceItemsTaskTest.kt index 356b04a3d6..25f4cf15dc 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/AddWorkspaceItemsTaskTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/model/AddWorkspaceItemsTaskTest.kt @@ -25,7 +25,7 @@ import com.android.launcher3.util.Executors import com.android.launcher3.util.IntArray import com.android.launcher3.util.TestUtil.runOnExecutorSync import com.google.common.truth.Truth.assertThat -import java.util.ArrayList +import org.junit.After import org.junit.Before import org.junit.Test import org.junit.runner.RunWith @@ -50,7 +50,13 @@ class AddWorkspaceItemsTaskTest : AbstractWorkspaceModelTest() { override fun setup() { super.setup() mDataModelCallbacks = MyCallbacks() - Executors.MAIN_EXECUTOR.submit { model.addCallbacks(mDataModelCallbacks) }.get() + Executors.MAIN_EXECUTOR.submit { mModelHelper.model.addCallbacks(mDataModelCallbacks) } + .get() + } + + @After + override fun tearDown() { + super.tearDown() } @Test @@ -62,8 +68,9 @@ class AddWorkspaceItemsTaskTest : AbstractWorkspaceModelTest() { val addedItems = testAddItems(nonEmptyScreenIds, itemToAdd) assertThat(addedItems.size).isEqualTo(1) - assertThat(addedItems.first().screenId).isEqualTo(1) - verifyItemSpaceFinderCall(nonEmptyScreenIds, numberOfExpectedCall = 1, addedItems) + assertThat(addedItems.first().itemInfo.screenId).isEqualTo(1) + assertThat(addedItems.first().isAnimated).isTrue() + verifyItemSpaceFinderCall(nonEmptyScreenIds, numberOfExpectedCall = 1) } @Test @@ -75,8 +82,9 @@ class AddWorkspaceItemsTaskTest : AbstractWorkspaceModelTest() { val addedItems = testAddItems(nonEmptyScreenIds, *itemsToAdd) assertThat(addedItems.size).isEqualTo(1) - assertThat(addedItems.first().screenId).isEqualTo(1) - verifyItemSpaceFinderCall(nonEmptyScreenIds, numberOfExpectedCall = 1, addedItems) + assertThat(addedItems.first().itemInfo.screenId).isEqualTo(1) + assertThat(addedItems.first().isAnimated).isTrue() + verifyItemSpaceFinderCall(nonEmptyScreenIds, numberOfExpectedCall = 1) } @Test @@ -101,8 +109,9 @@ class AddWorkspaceItemsTaskTest : AbstractWorkspaceModelTest() { val addedItems = testAddItems(nonEmptyScreenIds, itemToAdd) assertThat(addedItems.size).isEqualTo(1) - assertThat(addedItems.first().screenId).isEqualTo(2) - verifyItemSpaceFinderCall(nonEmptyScreenIds, numberOfExpectedCall = 1, addedItems) + assertThat(addedItems.first().itemInfo.screenId).isEqualTo(2) + assertThat(addedItems.first().isAnimated).isTrue() + verifyItemSpaceFinderCall(nonEmptyScreenIds, numberOfExpectedCall = 1) } @Test @@ -118,36 +127,34 @@ class AddWorkspaceItemsTaskTest : AbstractWorkspaceModelTest() { assertThat(addedItems.size).isEqualTo(3) // Items that are added to the first screen should not be animated - val itemsAddedToFirstScreen = addedItems.filter { it.screenId == 1 } + val itemsAddedToFirstScreen = addedItems.filter { it.itemInfo.screenId == 1 } assertThat(itemsAddedToFirstScreen.size).isEqualTo(1) + assertThat(itemsAddedToFirstScreen.first().isAnimated).isFalse() // Items that are added to the second screen should be animated - val itemsAddedToSecondScreen = addedItems.filter { it.screenId == 2 } + val itemsAddedToSecondScreen = addedItems.filter { it.itemInfo.screenId == 2 } assertThat(itemsAddedToSecondScreen.size).isEqualTo(2) - verifyItemSpaceFinderCall(nonEmptyScreenIds, numberOfExpectedCall = 3, addedItems) + itemsAddedToSecondScreen.forEach { assertThat(it.isAnimated).isTrue() } + verifyItemSpaceFinderCall(nonEmptyScreenIds, numberOfExpectedCall = 3) } /** Sets up the item space data that will be returned from WorkspaceItemSpaceFinder. */ private fun givenNewItemSpaces(vararg newItemSpaces: NewItemSpace) { val spaceStack = newItemSpaces.toMutableList() - whenever(mWorkspaceItemSpaceFinder.findSpaceForItem(any(), any(), any(), any(), any())) - .then { spaceStack.removeFirst().toIntArray() } + whenever(mWorkspaceItemSpaceFinder.findSpaceForItem(any(), any(), any(), any())).then { + spaceStack.removeFirst().toIntArray() + } } /** * Verifies if WorkspaceItemSpaceFinder was called with proper arguments and how many times was * it called. */ - private fun verifyItemSpaceFinderCall( - nonEmptyScreenIds: List<Int>, - numberOfExpectedCall: Int, - items: List<ItemInfo>, - ) { + private fun verifyItemSpaceFinderCall(nonEmptyScreenIds: List<Int>, numberOfExpectedCall: Int) { verify(mWorkspaceItemSpaceFinder, times(numberOfExpectedCall)) .findSpaceForItem( eq(IntArray.wrap(*nonEmptyScreenIds.toIntArray())), eq(IntArray()), - eq(ArrayList(items)), eq(1), eq(1), ) @@ -160,15 +167,15 @@ class AddWorkspaceItemsTaskTest : AbstractWorkspaceModelTest() { private fun testAddItems( nonEmptyScreenIds: List<Int>, vararg itemsToAdd: WorkspaceItemInfo, - ): List<ItemInfo> { + ): List<AddedItem> { setupWorkspaces(nonEmptyScreenIds) val task = newTask(*itemsToAdd) - val addedItems = mutableListOf<ItemInfo>() + val addedItems = mutableListOf<AddedItem>() runOnExecutorSync(Executors.MODEL_EXECUTOR) { mDataModelCallbacks.addedItems.clear() - model.enqueueModelUpdateTask(task) + mModelHelper.model.enqueueModelUpdateTask(task) runOnExecutorSync(Executors.MAIN_EXECUTOR) {} addedItems.addAll(mDataModelCallbacks.addedItems) } @@ -187,11 +194,18 @@ class AddWorkspaceItemsTaskTest : AbstractWorkspaceModelTest() { .let { AddWorkspaceItemsTask(it, mWorkspaceItemSpaceFinder) } } +private data class AddedItem(val itemInfo: ItemInfo, val isAnimated: Boolean) + private class MyCallbacks : BgDataModel.Callbacks { - val addedItems = mutableListOf<ItemInfo>() + val addedItems = mutableListOf<AddedItem>() - override fun bindItemsAdded(items: List<ItemInfo>) { - addedItems.addAll(items) + override fun bindAppsAdded( + newScreens: IntArray?, + addNotAnimated: ArrayList<ItemInfo>, + addAnimated: ArrayList<ItemInfo>, + ) { + addedItems.addAll(addAnimated.map { AddedItem(it, true) }) + addedItems.addAll(addNotAnimated.map { AddedItem(it, false) }) } } diff --git a/tests/multivalentTests/src/com/android/launcher3/model/AsyncBindingTest.kt b/tests/multivalentTests/src/com/android/launcher3/model/AsyncBindingTest.kt index 2aeba6076a..ba592532a4 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/AsyncBindingTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/model/AsyncBindingTest.kt @@ -17,52 +17,42 @@ package com.android.launcher3.model import android.os.Looper -import android.platform.test.annotations.DisableFlags -import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.SetFlagsRule +import android.util.Pair import android.util.SparseArray import android.view.View import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.launcher3.Flags -import com.android.launcher3.InvariantDeviceProfile -import com.android.launcher3.Launcher -import com.android.launcher3.LauncherAppState -import com.android.launcher3.LauncherModel -import com.android.launcher3.ModelCallbacks +import com.android.launcher3.model.BgDataModel.Callbacks import com.android.launcher3.model.data.ItemInfo -import com.android.launcher3.pageindicators.PageIndicatorDots import com.android.launcher3.util.Executors.MAIN_EXECUTOR import com.android.launcher3.util.Executors.MODEL_EXECUTOR +import com.android.launcher3.util.IntArray import com.android.launcher3.util.IntSet import com.android.launcher3.util.ItemInflater import com.android.launcher3.util.LauncherLayoutBuilder +import com.android.launcher3.util.LauncherModelHelper import com.android.launcher3.util.LauncherModelHelper.TEST_PACKAGE -import com.android.launcher3.util.ModelTestExtensions.loadModelSync -import com.android.launcher3.util.SandboxApplication -import com.android.launcher3.util.TestUtil.runOnExecutorSync -import com.android.launcher3.util.rule.LayoutProviderRule +import com.android.launcher3.util.RunnableList +import org.junit.After import org.junit.Assert.assertEquals -import org.junit.Assert.assertNotNull -import org.junit.Assert.assertNull +import org.junit.Assert.assertFalse import org.junit.Assert.assertTrue import org.junit.Before import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.Answers import org.mockito.Mock import org.mockito.MockitoAnnotations +import org.mockito.Spy import org.mockito.kotlin.any -import org.mockito.kotlin.anyOrNull import org.mockito.kotlin.argThat import org.mockito.kotlin.atLeastOnce -import org.mockito.kotlin.clearInvocations import org.mockito.kotlin.doAnswer -import org.mockito.kotlin.doReturn import org.mockito.kotlin.isNull import org.mockito.kotlin.never -import org.mockito.kotlin.spy +import org.mockito.kotlin.reset import org.mockito.kotlin.times import org.mockito.kotlin.verify import org.mockito.kotlin.whenever @@ -73,42 +63,29 @@ import org.mockito.kotlin.whenever class AsyncBindingTest { @get:Rule val setFlagsRule = SetFlagsRule() - @get:Rule val context = SandboxApplication().withModelDependency() - @get:Rule val layoutProvider = LayoutProviderRule(context) + @Spy private var callbacks = MyCallbacks() @Mock private lateinit var itemInflater: ItemInflater<*> - // PageIndicatorDots need to be mocked separately as Workspace uses generics and doesn't define - // the actual class of PageIndicator being used - @Mock private lateinit var pageIndicatorDots: PageIndicatorDots - @Mock(answer = Answers.RETURNS_DEEP_STUBS) private lateinit var launcher: Launcher - - private lateinit var callbacks: ModelCallbacks private val inflationLooper = SparseArray<Looper>() - private val model: LauncherModel - get() = LauncherAppState.getInstance(context).model + private lateinit var modelHelper: LauncherModelHelper @Before fun setUp() { + setFlagsRule.enableFlags(Flags.FLAG_ENABLE_WORKSPACE_INFLATION) MockitoAnnotations.initMocks(this) + modelHelper = LauncherModelHelper() doAnswer { i -> inflationLooper[(i.arguments[0] as ItemInfo).id] = Looper.myLooper() - View(context) + View(modelHelper.sandboxContext) } .whenever(itemInflater) - .inflateItem(any(), isNull(), any()) - - doReturn(itemInflater).whenever(launcher).itemInflater - doReturn(InvariantDeviceProfile.INSTANCE.get(context).getDeviceProfile(context)) - .whenever(launcher) - .deviceProfile - launcher.workspace.apply { doReturn(pageIndicatorDots).whenever(this).getPageIndicator() } - doReturn(context).whenever(launcher).applicationContext + .inflateItem(any(), any(), isNull()) // Set up the workspace with 3 pages of apps - layoutProvider.setupDefaultLayoutProvider( + modelHelper.setupDefaultLayoutProvider( LauncherLayoutBuilder() .atWorkspace(0, 1, 0) .putApp(TEST_PACKAGE, TEST_PACKAGE) @@ -121,29 +98,35 @@ class AsyncBindingTest { .atWorkspace(0, 1, 2) .putApp(TEST_PACKAGE, TEST_PACKAGE) ) - callbacks = - spy(ModelCallbacks(launcher).apply { pagesToBindSynchronously = IntSet.wrap(0) }) + } + + @After + fun tearDown() { + modelHelper.destroy() } @Test - @DisableFlags(Flags.FLAG_ENABLE_WORKSPACE_INFLATION) fun test_bind_normally_without_itemInflater() { - MAIN_EXECUTOR.execute { model.addCallbacksAndLoad(callbacks) } + MAIN_EXECUTOR.execute { modelHelper.model.addCallbacksAndLoad(callbacks) } waitForLoaderAndTempMainThread() + verify(callbacks, never()).bindInflatedItems(any()) verify(callbacks, atLeastOnce()).bindItems(any(), any()) } @Test - @EnableFlags(Flags.FLAG_ENABLE_WORKSPACE_INFLATION) fun test_bind_inflates_item_on_background() { - MAIN_EXECUTOR.execute { model.addCallbacksAndLoad(callbacks) } + callbacks.inflater = itemInflater + MAIN_EXECUTOR.execute { modelHelper.model.addCallbacksAndLoad(callbacks) } waitForLoaderAndTempMainThread() verify(callbacks, never()).bindItems(any(), any()) - // First 2 items were bound and eventually remaining items were bound - verify(launcher, times(1)).bindInflatedItems(argThat { size == 2 }, anyOrNull()) - verify(launcher, times(1)).bindInflatedItems(argThat { size == 3 }, anyOrNull()) + verify(callbacks, times(1)).bindInflatedItems(argThat { t -> t.size == 2 }) + + // Verify remaining items are bound using pendingTasks + reset(callbacks) + MAIN_EXECUTOR.submit(callbacks.pendingTasks!!::executeAllAndDestroy).get() + verify(callbacks, times(1)).bindInflatedItems(argThat { t -> t.size == 3 }) // Verify that all items were inflated on the background thread assertEquals(5, inflationLooper.size()) @@ -151,34 +134,31 @@ class AsyncBindingTest { } @Test - @EnableFlags(Flags.FLAG_ENABLE_WORKSPACE_INFLATION) fun test_bind_sync_partially_inflates_on_background() { - model.loadModelSync() - assertTrue(model.isModelLoaded()) + modelHelper.loadModelSync() + assertTrue(modelHelper.model.isModelLoaded()) + callbacks.inflater = itemInflater - val firstPageBindIds = mutableSetOf<Int>() - runOnExecutorSync(MAIN_EXECUTOR) { - model.addCallbacksAndLoad(callbacks) - verify(callbacks, never()).bindItems(any(), any()) - verify(launcher, times(1)) - .bindInflatedItems( - argThat { - firstPageBindIds.addAll(map { it.first.id }) - size == 2 - }, - anyOrNull(), - ) + val firstPageBindIds = IntSet() - // Verify that onInitialBindComplete is called and the binding is not yet complete - assertNotNull(callbacks.pendingExecutor) - clearInvocations(launcher) - } + MAIN_EXECUTOR.submit { + modelHelper.model.addCallbacksAndLoad(callbacks) + verify(callbacks, never()).bindItems(any(), any()) + verify(callbacks, times(1)) + .bindInflatedItems( + argThat { t -> + t.forEach { firstPageBindIds.add(it.first.id) } + t.size == 2 + } + ) + + // Verify that onInitialBindComplete is called and the binding is not yet complete + assertFalse(callbacks.onCompleteSignal!!.isDestroyed) + } + .get() waitForLoaderAndTempMainThread() - - // Verify remaining 3 times are bound using pending tasks - assertNull(callbacks.pendingExecutor) - verify(launcher, times(1)).bindInflatedItems(argThat { t -> t.size == 3 }, anyOrNull()) + assertTrue(callbacks.onCompleteSignal!!.isDestroyed) // Verify that firstPageBindIds are loaded on the main thread and remaining // on the background thread. @@ -188,12 +168,45 @@ class AsyncBindingTest { assertEquals(MAIN_EXECUTOR.looper, inflationLooper.valueAt(i)) else assertEquals(MODEL_EXECUTOR.looper, inflationLooper.valueAt(i)) } + + MAIN_EXECUTOR.submit { + reset(callbacks) + callbacks.pendingTasks!!.executeAllAndDestroy() + // Verify remaining 3 times are bound using pending tasks + verify(callbacks, times(1)).bindInflatedItems(argThat { t -> t.size == 3 }) + } + .get() } private fun waitForLoaderAndTempMainThread() { - repeat(5) { - runOnExecutorSync(MAIN_EXECUTOR) {} - runOnExecutorSync(MODEL_EXECUTOR) {} + MAIN_EXECUTOR.submit {}.get() + MODEL_EXECUTOR.submit {}.get() + MAIN_EXECUTOR.submit {}.get() + } + + class MyCallbacks : Callbacks { + + var inflater: ItemInflater<*>? = null + var pendingTasks: RunnableList? = null + var onCompleteSignal: RunnableList? = null + + override fun bindItems(shortcuts: MutableList<ItemInfo>, forceAnimateIcons: Boolean) {} + + override fun bindInflatedItems(items: MutableList<Pair<ItemInfo, View>>) {} + + override fun getPagesToBindSynchronously(orderedScreenIds: IntArray?) = IntSet.wrap(0) + + override fun onInitialBindComplete( + boundPages: IntSet, + pendingTasks: RunnableList, + onCompleteSignal: RunnableList, + workspaceItemCount: Int, + isBindSync: Boolean, + ) { + this.pendingTasks = pendingTasks + this.onCompleteSignal = onCompleteSignal } + + override fun getItemInflater() = inflater } } diff --git a/tests/multivalentTests/src/com/android/launcher3/model/CacheDataUpdatedTaskTest.java b/tests/multivalentTests/src/com/android/launcher3/model/CacheDataUpdatedTaskTest.java index 2658b58440..600af42a38 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/CacheDataUpdatedTaskTest.java +++ b/tests/multivalentTests/src/com/android/launcher3/model/CacheDataUpdatedTaskTest.java @@ -22,8 +22,6 @@ import static com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY; import static com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY2; import static com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY3; import static com.android.launcher3.util.LauncherModelHelper.TEST_PACKAGE; -import static com.android.launcher3.util.ModelTestExtensions.getBgDataModel; -import static com.android.launcher3.util.ModelTestExtensions.nonPredictedItemCount; import static com.android.launcher3.util.TestUtil.runOnExecutorSync; import static org.junit.Assert.assertEquals; @@ -31,6 +29,7 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; +import android.content.Context; import android.content.pm.PackageInstaller; import androidx.test.core.app.ApplicationProvider; @@ -38,19 +37,16 @@ import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import com.android.launcher3.LauncherAppState; -import com.android.launcher3.LauncherModel; import com.android.launcher3.icons.BitmapInfo; import com.android.launcher3.model.data.FolderInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.util.IntSet; import com.android.launcher3.util.LauncherLayoutBuilder; -import com.android.launcher3.util.ModelTestExtensions; +import com.android.launcher3.util.LauncherModelHelper; import com.android.launcher3.util.PackageUserKey; -import com.android.launcher3.util.SandboxApplication; -import com.android.launcher3.util.rule.InstallerSessionRule; -import com.android.launcher3.util.rule.LayoutProviderRule; import com.android.launcher3.util.rule.TestStabilityRule; +import org.junit.After; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -69,19 +65,21 @@ import java.util.List; public class CacheDataUpdatedTaskTest { @Rule public TestRule testStabilityRule = new TestStabilityRule(); - @Rule public SandboxApplication mContext = new SandboxApplication(); - @Rule public LayoutProviderRule mLayoutProvider = new LayoutProviderRule(mContext); - @Rule public InstallerSessionRule mInstallerSessionRule = new InstallerSessionRule(); private static final String PENDING_APP_1 = TEST_PACKAGE + ".pending1"; private static final String PENDING_APP_2 = TEST_PACKAGE + ".pending2"; + private LauncherModelHelper mModelHelper; + private Context mContext; + private int mSession1; @Before public void setup() throws Exception { - mSession1 = mInstallerSessionRule.createInstallerSession(PENDING_APP_1); - mInstallerSessionRule.createInstallerSession(PENDING_APP_2); + mModelHelper = new LauncherModelHelper(); + mContext = mModelHelper.sandboxContext; + mSession1 = mModelHelper.createInstallerSession(PENDING_APP_1); + mModelHelper.createInstallerSession(PENDING_APP_2); LauncherLayoutBuilder builder = new LauncherLayoutBuilder() .atHotseat(1).putFolder("MyFolder") @@ -99,10 +97,14 @@ public class CacheDataUpdatedTaskTest { .addApp(PENDING_APP_2, TEST_ACTIVITY2) // 9 .addApp(PENDING_APP_2, TEST_ACTIVITY3) // 10 .build(); - mLayoutProvider.setupDefaultLayoutProvider(builder); - ModelTestExtensions.INSTANCE.loadModelSync(getModel()); - // Items on homescreen and folders: - assertEquals(10, nonPredictedItemCount(getBgDataModel(getModel()).itemsIdMap)); + mModelHelper.setupDefaultLayoutProvider(builder); + mModelHelper.loadModelSync(); + assertEquals(10, mModelHelper.getBgDataModel().itemsIdMap.size()); + } + + @After + public void tearDown() { + mModelHelper.destroy(); } private CacheDataUpdatedTask newTask(int op, String... pkg) { @@ -117,7 +119,7 @@ public class CacheDataUpdatedTaskTest { // Clear all icons from apps list so that its easy to check what was updated allItems().forEach(wi -> wi.bitmap = BitmapInfo.LOW_RES_INFO); - getModel().enqueueModelUpdateTask( + mModelHelper.getModel().enqueueModelUpdateTask( newTask(CacheDataUpdatedTask.OP_CACHE_UPDATE, TEST_PACKAGE)); // Verify that only the app icons of TEST_PACKAGE (id 2, 3, 4) are updated. @@ -132,7 +134,7 @@ public class CacheDataUpdatedTaskTest { // Clear all icons from apps list so that its easy to check what was updated allItems().forEach(wi -> wi.bitmap = BitmapInfo.LOW_RES_INFO); - getModel().enqueueModelUpdateTask( + mModelHelper.getModel().enqueueModelUpdateTask( newTask(CacheDataUpdatedTask.OP_SESSION_UPDATE, TEST_PACKAGE)); // TEST_PACKAGE has no restored shortcuts. Verify that nothing was updated. @@ -154,7 +156,7 @@ public class CacheDataUpdatedTaskTest { // Clear all icons from apps list so that its easy to check what was updated allItems().forEach(wi -> wi.bitmap = BitmapInfo.LOW_RES_INFO); - getModel().enqueueModelUpdateTask( + mModelHelper.getModel().enqueueModelUpdateTask( newTask(CacheDataUpdatedTask.OP_SESSION_UPDATE, PENDING_APP_1)); // Only restored apps from PENDING_APP_1 (id 5, 6, 7) are updated @@ -174,10 +176,6 @@ public class CacheDataUpdatedTaskTest { } private List<WorkspaceItemInfo> allItems() { - return ((FolderInfo) getBgDataModel(getModel()).itemsIdMap.get(1)).getAppContents(); - } - - private LauncherModel getModel() { - return LauncherAppState.getInstance(mContext).getModel(); + return ((FolderInfo) mModelHelper.getBgDataModel().itemsIdMap.get(1)).getAppContents(); } } diff --git a/tests/multivalentTests/src/com/android/launcher3/model/DefaultLayoutProviderTest.java b/tests/multivalentTests/src/com/android/launcher3/model/DefaultLayoutProviderTest.java index 46e547485e..0ae4d00e94 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/DefaultLayoutProviderTest.java +++ b/tests/multivalentTests/src/com/android/launcher3/model/DefaultLayoutProviderTest.java @@ -20,7 +20,6 @@ import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; import static com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY; import static com.android.launcher3.util.LauncherModelHelper.TEST_PACKAGE; -import static com.android.launcher3.util.ModelTestExtensions.getBgDataModel; import static org.junit.Assert.assertEquals; import static org.junit.Assume.assumeTrue; @@ -33,18 +32,15 @@ import androidx.test.core.app.ApplicationProvider; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; -import com.android.launcher3.LauncherAppState; -import com.android.launcher3.LauncherModel; import com.android.launcher3.LauncherSettings; import com.android.launcher3.icons.BitmapInfo; import com.android.launcher3.model.data.FolderInfo; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.util.LauncherLayoutBuilder; -import com.android.launcher3.util.ModelTestExtensions; -import com.android.launcher3.util.SandboxApplication; -import com.android.launcher3.util.rule.LayoutProviderRule; +import com.android.launcher3.util.LauncherModelHelper; -import org.junit.Rule; +import org.junit.After; +import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -57,11 +53,23 @@ import java.util.List; @RunWith(AndroidJUnit4.class) public class DefaultLayoutProviderTest { - @Rule public SandboxApplication mTargetContext = new SandboxApplication().withModelDependency(); - @Rule public LayoutProviderRule mLayoutProvider = new LayoutProviderRule(mTargetContext); + private LauncherModelHelper mModelHelper; + private LauncherModelHelper.SandboxModelContext mTargetContext; + + @Before + public void setUp() { + mModelHelper = new LauncherModelHelper(); + mTargetContext = mModelHelper.sandboxContext; + } + + @After + public void tearDown() { + mModelHelper.destroy(); + } private List<ItemInfo> getWorkspaceItems() { - return getBgDataModel(getModel()) + return mModelHelper + .getBgDataModel() .itemsIdMap .stream() .filter(i -> i.container == CONTAINER_DESKTOP || i.container == CONTAINER_HOTSEAT) @@ -169,11 +177,6 @@ public class DefaultLayoutProviderTest { } private void writeLayoutAndLoad(LauncherLayoutBuilder builder) throws Exception { - mLayoutProvider.setupDefaultLayoutProvider(builder); - ModelTestExtensions.INSTANCE.loadModelSync(getModel()); - } - - private LauncherModel getModel() { - return LauncherAppState.getInstance(mTargetContext).getModel(); + mModelHelper.setupDefaultLayoutProvider(builder).loadModelSync(); } } diff --git a/tests/multivalentTests/src/com/android/launcher3/model/FolderIconLoadTest.kt b/tests/multivalentTests/src/com/android/launcher3/model/FolderIconLoadTest.kt index 676c8a9a0e..f357487ae2 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/FolderIconLoadTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/model/FolderIconLoadTest.kt @@ -17,7 +17,6 @@ package com.android.launcher3.model import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest -import com.android.launcher3.InvariantDeviceProfile import com.android.launcher3.LauncherAppState import com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_FOLDER import com.android.launcher3.icons.BitmapInfo @@ -26,16 +25,13 @@ import com.android.launcher3.model.data.FolderInfo import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.util.Executors import com.android.launcher3.util.LauncherLayoutBuilder +import com.android.launcher3.util.LauncherModelHelper import com.android.launcher3.util.LauncherModelHelper.* -import com.android.launcher3.util.ModelTestExtensions.bgDataModel -import com.android.launcher3.util.ModelTestExtensions.loadModelSync -import com.android.launcher3.util.SandboxApplication import com.android.launcher3.util.TestUtil -import com.android.launcher3.util.rule.LayoutProviderRule import com.google.common.truth.Truth.assertThat import com.google.common.truth.Truth.assertWithMessage import org.junit.After -import org.junit.Rule +import org.junit.Before import org.junit.Test import org.junit.runner.RunWith @@ -44,8 +40,7 @@ import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) class FolderIconLoadTest { - @get:Rule val context = SandboxApplication() - @get:Rule val layoutProvider = LayoutProviderRule(context) + private lateinit var modelHelper: LauncherModelHelper private val uniqueActivities = listOf( @@ -65,11 +60,15 @@ class FolderIconLoadTest { TEST_ACTIVITY14, ) - fun getIdp() = InvariantDeviceProfile.INSTANCE.get(context) + @Before + fun setUp() { + modelHelper = LauncherModelHelper() + } @After @Throws(Exception::class) fun tearDown() { + modelHelper.destroy() TestUtil.uninstallDummyApp() } @@ -93,7 +92,7 @@ class FolderIconLoadTest { @Test @Throws(Exception::class) fun folderLoadedWithHighRes_max_3x3() { - val idp = getIdp() + val idp = LauncherAppState.getIDP(modelHelper.sandboxContext) idp.numFolderColumns = intArrayOf(3, 3, 3, 3) idp.numFolderRows = intArrayOf(3, 3, 3, 3) recreateSupportedDeviceProfiles() @@ -106,7 +105,7 @@ class FolderIconLoadTest { @Test @Throws(Exception::class) fun folderLoadedWithHighRes_max_4x4() { - val idp = getIdp() + val idp = LauncherAppState.getIDP(modelHelper.sandboxContext) idp.numFolderColumns = intArrayOf(4, 4, 4, 4) idp.numFolderRows = intArrayOf(4, 4, 4, 4) recreateSupportedDeviceProfiles() @@ -119,7 +118,7 @@ class FolderIconLoadTest { @Test @Throws(Exception::class) fun folderLoadedWithHighRes_differentFolderConfigurations() { - val idp = getIdp() + val idp = LauncherAppState.getIDP(modelHelper.sandboxContext) idp.numFolderColumns = intArrayOf(4, 3, 4, 4) idp.numFolderRows = intArrayOf(4, 3, 4, 4) recreateSupportedDeviceProfiles() @@ -131,8 +130,6 @@ class FolderIconLoadTest { @Throws(Exception::class) private fun setupAndLoadFolder(itemCount: Int): ArrayList<WorkspaceItemInfo> { - val app = LauncherAppState.getInstance(context) - val builder = LauncherLayoutBuilder() .atWorkspace(0, 0, 1) @@ -142,19 +139,20 @@ class FolderIconLoadTest { } .build() - layoutProvider.setupDefaultLayoutProvider(builder) - app.model.loadModelSync() + modelHelper.setupDefaultLayoutProvider(builder) + modelHelper.loadModelSync() // The first load initializes the DB, load again so that icons are now used from the DB // Wait for the icon cache to be updated and then reload + val app = LauncherAppState.getInstance(modelHelper.sandboxContext) app.iconCache.waitForUpdateHandlerToFinish() TestUtil.runOnExecutorSync(Executors.MODEL_EXECUTOR) { app.iconCache.clearMemoryCache() } // Reload again with correct icon state app.model.forceReload() - app.model.loadModelSync() + modelHelper.loadModelSync() val collections = - app.model.bgDataModel.itemsIdMap + modelHelper.bgDataModel.itemsIdMap .filter { it.itemType == ITEM_TYPE_FOLDER } .map { it as FolderInfo } assertThat(collections.size).isEqualTo(1) @@ -185,10 +183,15 @@ class FolderIconLoadTest { } private fun isDefaultIcon(bitmap: BitmapInfo) = - LauncherAppState.getInstance(context).iconCache.isDefaultIcon(bitmap, context.user) + LauncherAppState.getInstance(modelHelper.sandboxContext) + .iconCache + .isDefaultIcon(bitmap, modelHelper.sandboxContext.user) /** Recreate DeviceProfiles after changing InvariantDeviceProfile */ private fun recreateSupportedDeviceProfiles() { - getIdp().supportedProfiles = getIdp().supportedProfiles.map { it.copy(context) } + LauncherAppState.getIDP(modelHelper.sandboxContext).supportedProfiles = + LauncherAppState.getIDP(modelHelper.sandboxContext).supportedProfiles.map { + it.copy(modelHelper.sandboxContext) + } } } diff --git a/tests/multivalentTests/src/com/android/launcher3/model/GridSizeMigrationTest.kt b/tests/multivalentTests/src/com/android/launcher3/model/GridSizeMigrationTest.kt index f3ebf7d547..5607bb4641 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/GridSizeMigrationTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/model/GridSizeMigrationTest.kt @@ -16,6 +16,7 @@ package com.android.launcher3.model import android.content.ContentValues +import android.content.Context import android.content.Intent import android.database.Cursor import android.database.sqlite.SQLiteDatabase @@ -33,11 +34,10 @@ import com.android.launcher3.LauncherSettings.Favorites.* import com.android.launcher3.model.GridSizeMigrationDBController.DbReader import com.android.launcher3.pm.UserCache import com.android.launcher3.provider.LauncherDbUtils -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.LauncherModelHelper import com.google.common.truth.Truth.assertThat import org.junit.After import org.junit.Before -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith @@ -46,8 +46,8 @@ import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) class GridSizeMigrationTest { - @get:Rule val context = SandboxApplication().withModelDependency() - + private lateinit var modelHelper: LauncherModelHelper + private lateinit var context: Context private lateinit var idp: InvariantDeviceProfile private lateinit var dbHelper: DatabaseHelper private lateinit var db: SQLiteDatabase @@ -64,6 +64,8 @@ class GridSizeMigrationTest { @Before fun setUp() { + modelHelper = LauncherModelHelper() + context = modelHelper.sandboxContext dbHelper = DatabaseHelper( context, @@ -81,6 +83,7 @@ class GridSizeMigrationTest { @After fun tearDown() { db.close() + modelHelper.destroy() } @Test diff --git a/tests/multivalentTests/src/com/android/launcher3/model/LoaderCursorTest.java b/tests/multivalentTests/src/com/android/launcher3/model/LoaderCursorTest.java index 5a43d6c2e4..d1292cf0aa 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/LoaderCursorTest.java +++ b/tests/multivalentTests/src/com/android/launcher3/model/LoaderCursorTest.java @@ -76,8 +76,9 @@ import com.android.launcher3.icons.LauncherIcons; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.util.Executors; +import com.android.launcher3.util.LauncherModelHelper; +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext; import com.android.launcher3.util.PackageManagerHelper; -import com.android.launcher3.util.SandboxApplication; import org.junit.After; import org.junit.Before; @@ -95,14 +96,13 @@ public class LoaderCursorTest { @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(DEVICE_DEFAULT); - @Rule - public final SandboxApplication mContext = new SandboxApplication(); - + private LauncherModelHelper mModelHelper; private LauncherAppState mApp; private LauncherPrefs mPrefs; private MatrixCursor mCursor; private InvariantDeviceProfile mIDP; + private SandboxModelContext mContext; private LoaderCursor mLoaderCursor; @@ -114,6 +114,8 @@ public class LoaderCursorTest { @Before public void setup() { + mModelHelper = new LauncherModelHelper(); + mContext = mModelHelper.sandboxContext; mPrefs = LauncherPrefs.get(mContext); mIDP = InvariantDeviceProfile.INSTANCE.get(mContext); mApp = LauncherAppState.getInstance(mContext); @@ -135,6 +137,7 @@ public class LoaderCursorTest { public void tearDown() { mPrefs.putSync(IS_FIRST_LOAD_AFTER_RESTORE.to(false)); mCursor.close(); + mModelHelper.destroy(); } private void initCursor(int itemType, String title) { @@ -208,7 +211,7 @@ public class LoaderCursorTest { // Item outside screen bounds are not placed assertFalse(mLoaderCursor.checkItemPlacement( - newItemInfo(4, 4, 1, 1, CONTAINER_DESKTOP, 1))); + newItemInfo(4, 4, 1, 1, CONTAINER_DESKTOP, 1), true)); } @Test @@ -219,22 +222,22 @@ public class LoaderCursorTest { // Overlapping mItems are not placed assertTrue(mLoaderCursor.checkItemPlacement( - newItemInfo(0, 0, 1, 1, CONTAINER_DESKTOP, 1))); + newItemInfo(0, 0, 1, 1, CONTAINER_DESKTOP, 1), true)); assertFalse(mLoaderCursor.checkItemPlacement( - newItemInfo(0, 0, 1, 1, CONTAINER_DESKTOP, 1))); + newItemInfo(0, 0, 1, 1, CONTAINER_DESKTOP, 1), true)); assertTrue(mLoaderCursor.checkItemPlacement( - newItemInfo(0, 0, 1, 1, CONTAINER_DESKTOP, 2))); + newItemInfo(0, 0, 1, 1, CONTAINER_DESKTOP, 2), true)); assertFalse(mLoaderCursor.checkItemPlacement( - newItemInfo(0, 0, 1, 1, CONTAINER_DESKTOP, 2))); + newItemInfo(0, 0, 1, 1, CONTAINER_DESKTOP, 2), true)); assertTrue(mLoaderCursor.checkItemPlacement( - newItemInfo(1, 1, 1, 1, CONTAINER_DESKTOP, 1))); + newItemInfo(1, 1, 1, 1, CONTAINER_DESKTOP, 1), true)); assertTrue(mLoaderCursor.checkItemPlacement( - newItemInfo(2, 2, 2, 2, CONTAINER_DESKTOP, 1))); + newItemInfo(2, 2, 2, 2, CONTAINER_DESKTOP, 1), true)); assertFalse(mLoaderCursor.checkItemPlacement( - newItemInfo(3, 2, 1, 2, CONTAINER_DESKTOP, 1))); + newItemInfo(3, 2, 1, 2, CONTAINER_DESKTOP, 1), true)); } @Test @@ -245,12 +248,12 @@ public class LoaderCursorTest { // Hotseat mItems are only placed based on screenId assertTrue(mLoaderCursor.checkItemPlacement( - newItemInfo(3, 3, 1, 1, CONTAINER_HOTSEAT, 1))); + newItemInfo(3, 3, 1, 1, CONTAINER_HOTSEAT, 1), true)); assertTrue(mLoaderCursor.checkItemPlacement( - newItemInfo(3, 3, 1, 1, CONTAINER_HOTSEAT, 2))); + newItemInfo(3, 3, 1, 1, CONTAINER_HOTSEAT, 2), true)); assertFalse(mLoaderCursor.checkItemPlacement( - newItemInfo(3, 3, 1, 1, CONTAINER_HOTSEAT, 3))); + newItemInfo(3, 3, 1, 1, CONTAINER_HOTSEAT, 3), true)); } @Test diff --git a/tests/multivalentTests/src/com/android/launcher3/model/PackageInstallStateChangedTaskTest.java b/tests/multivalentTests/src/com/android/launcher3/model/PackageInstallStateChangedTaskTest.java index 6d7a7b54ba..0f1fc00b9b 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/PackageInstallStateChangedTaskTest.java +++ b/tests/multivalentTests/src/com/android/launcher3/model/PackageInstallStateChangedTaskTest.java @@ -20,8 +20,6 @@ import static com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY; import static com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY2; import static com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY3; import static com.android.launcher3.util.LauncherModelHelper.TEST_PACKAGE; -import static com.android.launcher3.util.ModelTestExtensions.getBgDataModel; -import static com.android.launcher3.util.ModelTestExtensions.nonPredictedItemCount; import static com.android.launcher3.util.TestUtil.runOnExecutorSync; import static org.junit.Assert.assertEquals; @@ -29,21 +27,16 @@ import static org.junit.Assert.assertEquals; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; -import com.android.launcher3.LauncherAppState; -import com.android.launcher3.LauncherModel; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.LauncherAppWidgetInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.pm.PackageInstallInfo; import com.android.launcher3.util.IntSet; import com.android.launcher3.util.LauncherLayoutBuilder; -import com.android.launcher3.util.ModelTestExtensions; -import com.android.launcher3.util.SandboxApplication; -import com.android.launcher3.util.rule.InstallerSessionRule; -import com.android.launcher3.util.rule.LayoutProviderRule; +import com.android.launcher3.util.LauncherModelHelper; +import org.junit.After; import org.junit.Before; -import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; @@ -57,16 +50,14 @@ public class PackageInstallStateChangedTaskTest { private static final String PENDING_APP_1 = TEST_PACKAGE + ".pending1"; private static final String PENDING_APP_2 = TEST_PACKAGE + ".pending2"; - @Rule public SandboxApplication mContext = new SandboxApplication(); - @Rule public LayoutProviderRule mLayoutProvider = new LayoutProviderRule(mContext); - @Rule public InstallerSessionRule mInstallerSessionRule = new InstallerSessionRule(); - + private LauncherModelHelper mModelHelper; private IntSet mDownloadingApps; @Before public void setup() throws Exception { - mInstallerSessionRule.createInstallerSession(PENDING_APP_1); - mInstallerSessionRule.createInstallerSession(PENDING_APP_2); + mModelHelper = new LauncherModelHelper(); + mModelHelper.createInstallerSession(PENDING_APP_1); + mModelHelper.createInstallerSession(PENDING_APP_2); LauncherLayoutBuilder builder = new LauncherLayoutBuilder() .atWorkspace(0, 0, 1).putApp(TEST_PACKAGE, TEST_ACTIVITY) // 1 @@ -83,9 +74,14 @@ public class PackageInstallStateChangedTaskTest { .atWorkspace(0, 0, 10).putApp(PENDING_APP_2, TEST_ACTIVITY3); // 10 mDownloadingApps = IntSet.wrap(4, 5, 6, 7, 8, 9, 10); - mLayoutProvider.setupDefaultLayoutProvider(builder); - ModelTestExtensions.INSTANCE.loadModelSync(getModel()); - assertEquals(10, nonPredictedItemCount(getBgDataModel(getModel()).itemsIdMap)); + mModelHelper.setupDefaultLayoutProvider(builder); + mModelHelper.loadModelSync(); + assertEquals(10, mModelHelper.getBgDataModel().itemsIdMap.size()); + } + + @After + public void tearDown() { + mModelHelper.destroy(); } private PackageInstallStateChangedTask newTask(String pkg, int progress) { @@ -99,7 +95,7 @@ public class PackageInstallStateChangedTaskTest { public void testSessionUpdate_ignore_installed() { // Run on model executor so that no other task runs in the middle. runOnExecutorSync(MODEL_EXECUTOR, () -> { - getModel().enqueueModelUpdateTask(newTask(TEST_PACKAGE, 30)); + mModelHelper.getModel().enqueueModelUpdateTask(newTask(TEST_PACKAGE, 30)); // No shortcuts were updated verifyProgressUpdate(0); @@ -110,7 +106,7 @@ public class PackageInstallStateChangedTaskTest { public void testSessionUpdate_shortcuts_updated() { // Run on model executor so that no other task runs in the middle. runOnExecutorSync(MODEL_EXECUTOR, () -> { - getModel().enqueueModelUpdateTask(newTask(PENDING_APP_1, 30)); + mModelHelper.getModel().enqueueModelUpdateTask(newTask(PENDING_APP_1, 30)); verifyProgressUpdate(30, 4, 5, 6, 7); }); @@ -120,7 +116,7 @@ public class PackageInstallStateChangedTaskTest { public void testSessionUpdate_widgets_updated() { // Run on model executor so that no other task runs in the middle. runOnExecutorSync(MODEL_EXECUTOR, () -> { - getModel().enqueueModelUpdateTask(newTask(PENDING_APP_2, 30)); + mModelHelper.getModel().enqueueModelUpdateTask(newTask(PENDING_APP_2, 30)); verifyProgressUpdate(30, 8, 9, 10); }); @@ -128,8 +124,7 @@ public class PackageInstallStateChangedTaskTest { private void verifyProgressUpdate(int progress, int... idsUpdated) { IntSet updates = IntSet.wrap(idsUpdated); - for (ItemInfo info : getBgDataModel(getModel()).itemsIdMap) { - if (info.id < 0) continue; + for (ItemInfo info : mModelHelper.getBgDataModel().itemsIdMap) { int expectedProgress = updates.contains(info.id) ? progress : (mDownloadingApps.contains(info.id) ? 0 : 100); if (info instanceof WorkspaceItemInfo wi) { @@ -139,8 +134,4 @@ public class PackageInstallStateChangedTaskTest { } } } - - private LauncherModel getModel() { - return LauncherAppState.getInstance(mContext).getModel(); - } } diff --git a/tests/multivalentTests/src/com/android/launcher3/model/PackageUpdatedTaskTest.kt b/tests/multivalentTests/src/com/android/launcher3/model/PackageUpdatedTaskTest.kt index cd04159a79..5fd93d13ce 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/PackageUpdatedTaskTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/model/PackageUpdatedTaskTest.kt @@ -26,7 +26,6 @@ import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.SetFlagsRule import androidx.test.ext.junit.runners.AndroidJUnit4 import com.android.launcher3.AppFilter -import com.android.launcher3.Flags import com.android.launcher3.Flags.FLAG_ENABLE_PRIVATE_SPACE import com.android.launcher3.LauncherSettings import com.android.launcher3.dagger.LauncherAppComponent @@ -41,14 +40,14 @@ import com.android.launcher3.model.PackageUpdatedTask.OP_UPDATE import com.android.launcher3.model.PackageUpdatedTask.OP_USER_AVAILABILITY_CHANGE import com.android.launcher3.model.data.AppInfo import com.android.launcher3.model.data.WorkspaceItemInfo -import com.android.launcher3.model.repository.AppsListRepository import com.android.launcher3.util.AllModulesForTest import com.android.launcher3.util.Executors -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.LauncherModelHelper import com.android.launcher3.util.TestUtil import com.google.common.truth.Truth.assertThat import dagger.BindsInstance import dagger.Component +import org.junit.After import org.junit.Before import org.junit.Rule import org.junit.Test @@ -64,9 +63,10 @@ import org.mockito.kotlin.whenever class PackageUpdatedTaskTest { @get:Rule val setFlagsRule = SetFlagsRule() - @get:Rule val mContext = SandboxApplication() private val mUser = myUserHandle() + private val mLauncherModelHelper = LauncherModelHelper() + private val mContext = mLauncherModelHelper.sandboxContext private val expectedPackage = "Test.Package" private val expectedComponent = ComponentName(expectedPackage, "TestClass") @@ -75,7 +75,6 @@ class PackageUpdatedTaskTest { private val mockIconCache: IconCache = mock() private val mockAppFilter: AppFilter = mock<AppFilter>() - private val appsListRepo = AppsListRepository() private lateinit var mAllAppsList: AllAppsList private val mockApplicationInfo: ApplicationInfo = mock<ApplicationInfo>() @@ -86,7 +85,7 @@ class PackageUpdatedTaskTest { @Before fun setup() { - mAllAppsList = spy(AllAppsList(mockIconCache, mockAppFilter) { appsListRepo }) + mAllAppsList = spy(AllAppsList(mockIconCache, mockAppFilter)) mContext.initDaggerComponent( DaggerPackageUpdatedTaskTest_TestComponent.builder() .bindAllAppsList(mAllAppsList) @@ -122,12 +121,17 @@ class PackageUpdatedTaskTest { } } + @After + fun tearDown() { + mLauncherModelHelper.destroy() + } + @Test fun `OP_ADD triggers model callbacks and adds new items to AllAppsList`() { // Given val taskUnderTest = PackageUpdatedTask(OP_ADD, mUser, expectedPackage) // When - mDataModel.addItem(mContext, expectedWorkspaceItem) + mDataModel.addItem(mContext, expectedWorkspaceItem, true) TestUtil.runOnExecutorSync(Executors.MODEL_EXECUTOR) { taskUnderTest.execute(mockTaskController, mDataModel, mAllAppsList) } @@ -145,7 +149,7 @@ class PackageUpdatedTaskTest { // Given val taskUnderTest = PackageUpdatedTask(OP_UPDATE, mUser, expectedPackage) // When - mDataModel.addItem(mContext, expectedWorkspaceItem) + mDataModel.addItem(mContext, expectedWorkspaceItem, true) TestUtil.runOnExecutorSync(Executors.MODEL_EXECUTOR) { taskUnderTest.execute(mockTaskController, mDataModel, mAllAppsList) } @@ -162,7 +166,7 @@ class PackageUpdatedTaskTest { // Given val taskUnderTest = PackageUpdatedTask(OP_REMOVE, mUser, expectedPackage) // When - mDataModel.addItem(mContext, expectedWorkspaceItem) + mDataModel.addItem(mContext, expectedWorkspaceItem, true) TestUtil.runOnExecutorSync(Executors.MODEL_EXECUTOR) { taskUnderTest.execute(mockTaskController, mDataModel, mAllAppsList) } @@ -178,7 +182,7 @@ class PackageUpdatedTaskTest { // Given val taskUnderTest = PackageUpdatedTask(OP_UNAVAILABLE, mUser, expectedPackage) // When - mDataModel.addItem(mContext, expectedWorkspaceItem) + mDataModel.addItem(mContext, expectedWorkspaceItem, true) TestUtil.runOnExecutorSync(Executors.MODEL_EXECUTOR) { taskUnderTest.execute(mockTaskController, mDataModel, mAllAppsList) } @@ -189,12 +193,11 @@ class PackageUpdatedTaskTest { } @Test - @EnableFlags(Flags.FLAG_MODEL_REPOSITORY) fun `OP_SUSPEND triggers model callbacks and updates flags in AllAppsList`() { // Given val taskUnderTest = PackageUpdatedTask(OP_SUSPEND, mUser, expectedPackage) // When - mDataModel.addItem(mContext, expectedWorkspaceItem) + mDataModel.addItem(mContext, expectedWorkspaceItem, true) mAllAppsList.add(AppInfo(mContext, expectedActivityInfo, mUser), expectedActivityInfo) mAllAppsList.getAndResetChangeFlag() doAnswer {}.whenever(mockTaskController).bindApplicationsIfNeeded() @@ -205,16 +208,14 @@ class PackageUpdatedTaskTest { verify(mAllAppsList).updateDisabledFlags(any(), any()) verify(mockTaskController).bindUpdatedWorkspaceItems(listOf(expectedWorkspaceItem)) assertThat(mAllAppsList.getAndResetChangeFlag()).isTrue() - assertThat(appsListRepo.appsListStateRef.value.apps).isNotEmpty() } @Test - @EnableFlags(Flags.FLAG_MODEL_REPOSITORY) fun `OP_UNSUSPEND triggers no callbacks when app not suspended`() { // Given val taskUnderTest = PackageUpdatedTask(OP_UNSUSPEND, mUser, expectedPackage) // When - mDataModel.addItem(mContext, expectedWorkspaceItem) + mDataModel.addItem(mContext, expectedWorkspaceItem, true) mAllAppsList.getAndResetChangeFlag() doAnswer {}.whenever(mockTaskController).bindApplicationsIfNeeded() TestUtil.runOnExecutorSync(Executors.MODEL_EXECUTOR) { @@ -224,7 +225,6 @@ class PackageUpdatedTaskTest { verify(mAllAppsList).updateDisabledFlags(any(), any()) verify(mockTaskController).bindUpdatedWorkspaceItems(emptyList()) assertThat(mAllAppsList.getAndResetChangeFlag()).isFalse() - assertThat(appsListRepo.appsListStateRef.value.apps).isEmpty() } @EnableFlags(FLAG_ENABLE_PRIVATE_SPACE) @@ -233,7 +233,7 @@ class PackageUpdatedTaskTest { // Given val taskUnderTest = PackageUpdatedTask(OP_USER_AVAILABILITY_CHANGE, mUser, expectedPackage) // When - mDataModel.addItem(mContext, expectedWorkspaceItem) + mDataModel.addItem(mContext, expectedWorkspaceItem, true) TestUtil.runOnExecutorSync(Executors.MODEL_EXECUTOR) { taskUnderTest.execute(mockTaskController, mDataModel, mAllAppsList) } diff --git a/tests/multivalentTests/src/com/android/launcher3/model/ShortcutsChangedTaskTest.kt b/tests/multivalentTests/src/com/android/launcher3/model/ShortcutsChangedTaskTest.kt index 8d0288c9d8..0ab736b26c 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/ShortcutsChangedTaskTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/model/ShortcutsChangedTaskTest.kt @@ -38,10 +38,12 @@ import com.android.launcher3.model.data.ItemInfo import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.shortcuts.ShortcutKey import com.android.launcher3.util.ComponentKey -import com.android.launcher3.util.ModelTestExtensions.initItems -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.IntSparseArrayMap +import com.android.launcher3.util.LauncherModelHelper +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.google.common.truth.Truth.assertThat import java.util.function.Predicate +import org.junit.After import org.junit.Before import org.junit.Rule import org.junit.Test @@ -58,20 +60,19 @@ import org.mockito.kotlin.whenever @RunWith(AndroidJUnit4::class) class ShortcutsChangedTaskTest { @get:Rule val setFlagsRule: SetFlagsRule = SetFlagsRule() - @get:Rule val context = SandboxApplication() private lateinit var shortcutsChangedTask: ShortcutsChangedTask + private lateinit var modelHelper: LauncherModelHelper + private lateinit var context: SandboxModelContext private lateinit var launcherApps: LauncherApps private var shortcuts: List<ShortcutInfo> = emptyList() private val expectedPackage: String = "expected" private val expectedShortcutId: String = "shortcut_id" private val user: UserHandle = myUserHandle() - private val mockTaskController: ModelTaskController = mock() private val mockAllApps: AllAppsList = mock() private val mockIconCache: IconCache = mock() - private val bgDataModel = BgDataModel(mock(), mock(), mock(), mock()) private val expectedWai = WorkspaceItemInfo().apply { @@ -86,6 +87,9 @@ class ShortcutsChangedTaskTest { @Before fun setup() { + modelHelper = LauncherModelHelper() + modelHelper.loadModelSync() + context = modelHelper.sandboxContext launcherApps = context.spyService(LauncherApps::class.java) whenever(mockTaskController.context).thenReturn(context) whenever(mockTaskController.iconCache).thenReturn(mockIconCache) @@ -95,6 +99,11 @@ class ShortcutsChangedTaskTest { shortcutsChangedTask = ShortcutsChangedTask(expectedPackage, shortcuts, user, false) } + @After + fun teardown() { + modelHelper.destroy() + } + @Test fun `When installed pinned shortcut is found then keep in workspace`() { // Given @@ -105,7 +114,8 @@ class ShortcutsChangedTaskTest { whenever(id).thenReturn(expectedShortcutId) } ) - bgDataModel.initItems(expectedWai) + val items: IntSparseArrayMap<ItemInfo> = modelHelper.bgDataModel.itemsIdMap + items.put(expectedWai.id, expectedWai) doReturn( ApplicationInfo().apply { enabled = true @@ -117,7 +127,7 @@ class ShortcutsChangedTaskTest { .getApplicationInfo(eq(expectedPackage), any(), eq(user)) doReturn(shortcuts).whenever(launcherApps).getShortcuts(any(), eq(user)) // When - shortcutsChangedTask.execute(mockTaskController, bgDataModel, mockAllApps) + shortcutsChangedTask.execute(mockTaskController, modelHelper.bgDataModel, mockAllApps) // Then verify(mockIconCache).getShortcutIcon(eq(expectedWai), any<CacheableShortcutInfo>()) verify(mockTaskController).bindUpdatedWorkspaceItems(listOf(expectedWai)) @@ -134,7 +144,8 @@ class ShortcutsChangedTaskTest { whenever(id).thenReturn(expectedShortcutId) } ) - bgDataModel.initItems(expectedWai) + val items: IntSparseArrayMap<ItemInfo> = modelHelper.bgDataModel.itemsIdMap + items.put(expectedWai.id, expectedWai) doReturn( ApplicationInfo().apply { enabled = true @@ -146,7 +157,7 @@ class ShortcutsChangedTaskTest { .getApplicationInfo(eq(expectedPackage), any(), eq(user)) doReturn(shortcuts).whenever(launcherApps).getShortcuts(any(), eq(user)) // When - shortcutsChangedTask.execute(mockTaskController, bgDataModel, mockAllApps) + shortcutsChangedTask.execute(mockTaskController, modelHelper.bgDataModel, mockAllApps) // Then verify(mockTaskController) .deleteAndBindComponentsRemoved( @@ -166,7 +177,8 @@ class ShortcutsChangedTaskTest { whenever(id).thenReturn(expectedShortcutId) } ) - bgDataModel.initItems(expectedWai) + val items: IntSparseArrayMap<ItemInfo> = modelHelper.bgDataModel.itemsIdMap + items.put(expectedWai.id, expectedWai) doReturn( ApplicationInfo().apply { enabled = true @@ -178,7 +190,7 @@ class ShortcutsChangedTaskTest { .getApplicationInfo(eq(expectedPackage), any(), eq(user)) doReturn(shortcuts).whenever(launcherApps).getShortcuts(any(), eq(user)) // When - shortcutsChangedTask.execute(mockTaskController, bgDataModel, mockAllApps) + shortcutsChangedTask.execute(mockTaskController, modelHelper.bgDataModel, mockAllApps) // Then verify(mockIconCache).getShortcutIcon(eq(expectedWai), any<CacheableShortcutInfo>()) verify(mockTaskController).bindUpdatedWorkspaceItems(listOf(expectedWai)) @@ -194,7 +206,8 @@ class ShortcutsChangedTaskTest { whenever(id).thenReturn(expectedShortcutId) } ) - bgDataModel.initItems(expectedWai) + val items: IntSparseArrayMap<ItemInfo> = modelHelper.bgDataModel.itemsIdMap + items.put(expectedWai.id, expectedWai) doReturn( ApplicationInfo().apply { enabled = true @@ -206,7 +219,7 @@ class ShortcutsChangedTaskTest { .getApplicationInfo(eq(expectedPackage), any(), eq(user)) doReturn(shortcuts).whenever(launcherApps).getShortcuts(any(), eq(user)) // When - shortcutsChangedTask.execute(mockTaskController, bgDataModel, mockAllApps) + shortcutsChangedTask.execute(mockTaskController, modelHelper.bgDataModel, mockAllApps) // Then verify(mockTaskController, times(0)).deleteAndBindComponentsRemoved(any(), any()) verify(mockTaskController, times(0)).bindUpdatedWorkspaceItems(any()) @@ -223,7 +236,8 @@ class ShortcutsChangedTaskTest { whenever(id).thenReturn(expectedShortcutId) } ) - bgDataModel.initItems(expectedWai) + val items: IntSparseArrayMap<ItemInfo> = modelHelper.bgDataModel.itemsIdMap + items.put(expectedWai.id, expectedWai) doReturn( ApplicationInfo().apply { enabled = true @@ -235,7 +249,7 @@ class ShortcutsChangedTaskTest { .getApplicationInfo(eq(expectedPackage), any(), eq(user)) doReturn(shortcuts).whenever(launcherApps).getShortcuts(any(), eq(user)) // When - shortcutsChangedTask.execute(mockTaskController, bgDataModel, mockAllApps) + shortcutsChangedTask.execute(mockTaskController, modelHelper.bgDataModel, mockAllApps) // Then verify(mockIconCache).getShortcutIcon(eq(expectedWai), any<CacheableShortcutInfo>()) verify(mockTaskController).bindUpdatedWorkspaceItems(listOf(expectedWai)) @@ -252,7 +266,8 @@ class ShortcutsChangedTaskTest { whenever(id).thenReturn(expectedShortcutId) } ) - bgDataModel.initItems(expectedWai) + val items: IntSparseArrayMap<ItemInfo> = modelHelper.bgDataModel.itemsIdMap + items.put(expectedWai.id, expectedWai) doReturn( ApplicationInfo().apply { enabled = true @@ -264,7 +279,7 @@ class ShortcutsChangedTaskTest { .getApplicationInfo(eq(expectedPackage), any(), eq(user)) doReturn(shortcuts).whenever(launcherApps).getShortcuts(any(), eq(user)) // When - shortcutsChangedTask.execute(mockTaskController, bgDataModel, mockAllApps) + shortcutsChangedTask.execute(mockTaskController, modelHelper.bgDataModel, mockAllApps) // Then verify(mockIconCache).getShortcutIcon(eq(expectedWai), any<CacheableShortcutInfo>()) verify(mockTaskController).bindUpdatedWorkspaceItems(listOf(expectedWai)) @@ -294,10 +309,10 @@ class ShortcutsChangedTaskTest { shouldUpdateIdMap = true, ) // When - shortcutsChangedTask.execute(mockTaskController, bgDataModel, mockAllApps) + shortcutsChangedTask.execute(mockTaskController, modelHelper.bgDataModel, mockAllApps) // Then - assertThat(bgDataModel.deepShortcutMap).containsEntry(expectedKey, 1) - verify(mockTaskController).bindDeepShortcuts(eq(bgDataModel)) + assertThat(modelHelper.bgDataModel.deepShortcutMap).containsEntry(expectedKey, 1) + verify(mockTaskController).bindDeepShortcuts(eq(modelHelper.bgDataModel)) } @Test @@ -324,10 +339,10 @@ class ShortcutsChangedTaskTest { shouldUpdateIdMap = false, ) // When - shortcutsChangedTask.execute(mockTaskController, bgDataModel, mockAllApps) + shortcutsChangedTask.execute(mockTaskController, modelHelper.bgDataModel, mockAllApps) // Then - assertThat(bgDataModel.deepShortcutMap).doesNotContainKey(expectedKey) - verify(mockTaskController, times(0)).bindDeepShortcuts(eq(bgDataModel)) + assertThat(modelHelper.bgDataModel.deepShortcutMap).doesNotContainKey(expectedKey) + verify(mockTaskController, times(0)).bindDeepShortcuts(eq(modelHelper.bgDataModel)) } @Test @@ -341,7 +356,8 @@ class ShortcutsChangedTaskTest { whenever(id).thenReturn(expectedShortcutId) } ) - bgDataModel.initItems(expectedWai) + val items: IntSparseArrayMap<ItemInfo> = modelHelper.bgDataModel.itemsIdMap + items.put(expectedWai.id, expectedWai) doReturn( ApplicationInfo().apply { enabled = true @@ -353,7 +369,7 @@ class ShortcutsChangedTaskTest { .getApplicationInfo(eq(expectedPackage), any(), eq(user)) doReturn(shortcuts).whenever(launcherApps).getShortcuts(any(), eq(user)) // When - shortcutsChangedTask.execute(mockTaskController, bgDataModel, mockAllApps) + shortcutsChangedTask.execute(mockTaskController, modelHelper.bgDataModel, mockAllApps) // Then verify(mockTaskController, times(0)).deleteAndBindComponentsRemoved(any(), any()) verify(mockTaskController, times(0)).bindUpdatedWorkspaceItems(any()) diff --git a/tests/multivalentTests/src/com/android/launcher3/model/WorkspaceItemProcessorTest.kt b/tests/multivalentTests/src/com/android/launcher3/model/WorkspaceItemProcessorTest.kt index 7481a0d34f..cba7b88890 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/WorkspaceItemProcessorTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/model/WorkspaceItemProcessorTest.kt @@ -16,6 +16,7 @@ package com.android.launcher3.model +import android.appwidget.AppWidgetProviderInfo import android.content.ComponentName import android.content.Intent import android.content.pm.ApplicationInfo @@ -51,10 +52,12 @@ import com.android.launcher3.model.data.WorkspaceItemInfo.FLAG_RESTORED_ICON import com.android.launcher3.model.data.WorkspaceItemInfo.FLAG_RESTORE_STARTED import com.android.launcher3.pm.UserCache import com.android.launcher3.shortcuts.ShortcutKey +import com.android.launcher3.util.ComponentKey import com.android.launcher3.util.ContentWriter +import com.android.launcher3.util.LauncherModelHelper +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.android.launcher3.util.PackageManagerHelper import com.android.launcher3.util.PackageUserKey -import com.android.launcher3.util.SandboxApplication import com.android.launcher3.util.UserIconInfo import com.android.launcher3.widget.LauncherAppWidgetProviderInfo import com.android.launcher3.widget.WidgetInflater @@ -84,10 +87,10 @@ import org.mockito.kotlin.whenever class WorkspaceItemProcessorTest { @get:Rule val setFlagsRule: SetFlagsRule = SetFlagsRule() - @get:Rule val mContext = SandboxApplication() @Mock private lateinit var mockIconRequestInfo: IconRequestInfo<WorkspaceItemInfo> @Mock private lateinit var mockWorkspaceInfo: WorkspaceItemInfo + @Mock private lateinit var mockBgDataModel: BgDataModel @Mock private lateinit var mockPmHelper: PackageManagerHelper @Mock(answer = Answers.RETURNS_DEEP_STUBS) private lateinit var mockCursor: LoaderCursor @Mock private lateinit var mockUserCache: UserCache @@ -95,6 +98,8 @@ class WorkspaceItemProcessorTest { @Mock private lateinit var mockWidgetInflater: WidgetInflater @Mock private lateinit var mockIconCache: IconCache + lateinit var mModelHelper: LauncherModelHelper + lateinit var mContext: SandboxModelContext lateinit var mLauncherApps: LauncherApps private var mIntent: Intent = Intent() private var mUserHandle: UserHandle = Process.myUserHandle() @@ -104,6 +109,8 @@ class WorkspaceItemProcessorTest { private var mKeyToPinnedShortcutsMap: MutableMap<ShortcutKey, ShortcutInfo> = mutableMapOf() private var mInstallingPkgs: HashMap<PackageUserKey, PackageInstaller.SessionInfo> = hashMapOf() private var mAllDeepShortcuts: MutableList<CacheableShortcutInfo> = mutableListOf() + private var mWidgetProvidersMap: MutableMap<ComponentKey, AppWidgetProviderInfo?> = + mutableMapOf() private var mPendingPackages: MutableSet<PackageUserKey> = mutableSetOf() private lateinit var itemProcessorUnderTest: WorkspaceItemProcessor @@ -111,6 +118,8 @@ class WorkspaceItemProcessorTest { @Before fun setup() { MockitoAnnotations.initMocks(this) + mModelHelper = LauncherModelHelper() + mContext = mModelHelper.sandboxContext mLauncherApps = mContext.spyService(LauncherApps::class.java).apply { doReturn(true).whenever(this).isPackageEnabled("package", mUserHandle) @@ -148,6 +157,7 @@ class WorkspaceItemProcessorTest { mKeyToPinnedShortcutsMap = mutableMapOf() mInstallingPkgs = hashMapOf() mAllDeepShortcuts = mutableListOf() + mWidgetProvidersMap = mutableMapOf() mIconRequestInfos = mutableListOf() mPendingPackages = mutableSetOf() } @@ -164,6 +174,8 @@ class WorkspaceItemProcessorTest { userManagerState: UserManagerState = mockUserManagerState, launcherApps: LauncherApps = mLauncherApps, shortcutKeyToPinnedShortcuts: Map<ShortcutKey, ShortcutInfo> = mKeyToPinnedShortcutsMap, + bgDataModel: BgDataModel = mockBgDataModel, + widgetProvidersMap: MutableMap<ComponentKey, AppWidgetProviderInfo?> = mWidgetProvidersMap, widgetInflater: WidgetInflater = mockWidgetInflater, pmHelper: PackageManagerHelper = mockPmHelper, iconRequestInfos: MutableList<IconRequestInfo<WorkspaceItemInfo>> = mIconRequestInfos, @@ -180,6 +192,8 @@ class WorkspaceItemProcessorTest { userManagerState = userManagerState, launcherApps = launcherApps, context = mContext, + bgDataModel = bgDataModel, + widgetProvidersMap = widgetProvidersMap, widgetInflater = widgetInflater, pmHelper = pmHelper, unlockedUsers = unlockedUsers, @@ -274,7 +288,7 @@ class WorkspaceItemProcessorTest { // currently gets marked restored twice, although markRestore() has check for restoreFlag verify(mockCursor, times(2)).markRestored() assertThat(mIconRequestInfos).containsExactly(mockIconRequestInfo) - verify(mockCursor).checkAndAddItem(eq(mockWorkspaceInfo), any(), anyOrNull()) + verify(mockCursor).checkAndAddItem(mockWorkspaceInfo, mockBgDataModel, null) } @Test @@ -301,7 +315,7 @@ class WorkspaceItemProcessorTest { .isEqualTo(0) verify(mockCursor.updater().put(Favorites.INTENT, mIntent.toUri(0))).commit() assertThat(mIconRequestInfos).containsExactly(mockIconRequestInfo) - verify(mockCursor).checkAndAddItem(eq(mockWorkspaceInfo), any(), anyOrNull()) + verify(mockCursor).checkAndAddItem(mockWorkspaceInfo, mockBgDataModel, null) } @Test @@ -406,7 +420,7 @@ class WorkspaceItemProcessorTest { assertThat(mIconRequestInfos).isNotEmpty() assertThat(mAllDeepShortcuts).isEmpty() verify(mockContentWriter).put(Favorites.RESTORED, expectedRestoreFlag) - verify(mockCursor).checkAndAddItem(any(), any(), eq(null)) + verify(mockCursor).checkAndAddItem(any(), eq(mockBgDataModel), eq(null)) } @Test @@ -537,6 +551,7 @@ class WorkspaceItemProcessorTest { @Test fun `When processing Folder then create FolderInfo and mark restored`() { val actualFolderInfo = FolderInfo() + mockBgDataModel = mock<BgDataModel>() mockCursor = mock<LoaderCursor>().apply { user = mUserHandle @@ -578,7 +593,7 @@ class WorkspaceItemProcessorTest { assertThat(actualFolderInfo.spanX).isEqualTo(expectedFolderInfo.spanX) assertThat(actualFolderInfo.spanY).isEqualTo(expectedFolderInfo.spanY) assertThat(actualFolderInfo.options).isEqualTo(expectedFolderInfo.options) - verify(mockCursor).checkAndAddItem(eq(actualFolderInfo), any(), anyOrNull()) + verify(mockCursor).checkAndAddItem(actualFolderInfo, mockBgDataModel, null) } @Test @@ -636,12 +651,14 @@ class WorkspaceItemProcessorTest { mInstallingPkgs[packageUserKey] = PackageInstaller.SessionInfo() // When - itemProcessorUnderTest = createWorkspaceItemProcessorUnderTest() + itemProcessorUnderTest = + createWorkspaceItemProcessorUnderTest(widgetProvidersMap = mWidgetProvidersMap) itemProcessorUnderTest.processItem() // Then val widgetInfoCaptor = ArgumentCaptor.forClass(LauncherAppWidgetInfo::class.java) - verify(mockCursor).checkAndAddItem(widgetInfoCaptor.capture(), any(), anyOrNull()) + verify(mockCursor) + .checkAndAddItem(widgetInfoCaptor.capture(), eq(mockBgDataModel), anyOrNull()) val actualWidgetInfo = widgetInfoCaptor.value with(actualWidgetInfo) { assertThat(providerName).isEqualTo(expectedWidgetInfo.providerName) @@ -649,6 +666,9 @@ class WorkspaceItemProcessorTest { assertThat(targetComponent).isEqualTo(expectedWidgetInfo.targetComponent) assertThat(appWidgetId).isEqualTo(expectedWidgetInfo.appWidgetId) } + val expectedComponentKey = + ComponentKey(expectedWidgetProviderInfo.provider, expectedWidgetProviderInfo.user) + assertThat(mWidgetProvidersMap[expectedComponentKey]).isEqualTo(expectedWidgetProviderInfo) } @Test @@ -686,13 +706,14 @@ class WorkspaceItemProcessorTest { mock<WidgetInflater>().apply { whenever(inflateAppWidget(any())).thenReturn(inflationResult) } - itemProcessorUnderTest = createWorkspaceItemProcessorUnderTest() + itemProcessorUnderTest = + createWorkspaceItemProcessorUnderTest(widgetProvidersMap = mWidgetProvidersMap) // When itemProcessorUnderTest.processItem() // Then - verify(mockCursor).checkAndAddItem(any(), any(), eq(null)) + verify(mockCursor).checkAndAddItem(any(), eq(mockBgDataModel), eq(null)) } @Test @@ -726,7 +747,8 @@ class WorkspaceItemProcessorTest { val expectedComponentName = ComponentName.unflattenFromString(expectedProvider) // When - itemProcessorUnderTest = createWorkspaceItemProcessorUnderTest() + itemProcessorUnderTest = + createWorkspaceItemProcessorUnderTest(widgetProvidersMap = mWidgetProvidersMap) itemProcessorUnderTest.processItem() // Then @@ -765,7 +787,8 @@ class WorkspaceItemProcessorTest { mock<WidgetInflater>().apply { whenever(inflateAppWidget(any())).thenReturn(inflationResult) } - itemProcessorUnderTest = createWorkspaceItemProcessorUnderTest() + itemProcessorUnderTest = + createWorkspaceItemProcessorUnderTest(widgetProvidersMap = mWidgetProvidersMap) // When itemProcessorUnderTest.processItem() diff --git a/tests/multivalentTests/src/com/android/launcher3/model/WorkspaceItemSpaceFinderTest.kt b/tests/multivalentTests/src/com/android/launcher3/model/WorkspaceItemSpaceFinderTest.kt index 1170469b15..a18f93b9dc 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/WorkspaceItemSpaceFinderTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/model/WorkspaceItemSpaceFinderTest.kt @@ -18,10 +18,8 @@ package com.android.launcher3.model import android.graphics.Rect import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest -import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP -import com.android.launcher3.model.data.ItemInfo -import com.android.launcher3.util.ModelTestExtensions.bgDataModel import com.google.common.truth.Truth.assertThat +import org.junit.After import org.junit.Before import org.junit.Test import org.junit.runner.RunWith @@ -36,9 +34,18 @@ class WorkspaceItemSpaceFinderTest : AbstractWorkspaceModelTest() { super.setup() } + @After + override fun tearDown() { + super.tearDown() + } + private fun findSpace(spanX: Int, spanY: Int): NewItemSpace = - WorkspaceItemSpaceFinder(model.bgDataModel, mAppState.invariantDeviceProfile, model) - .findSpaceForItem(mExistingScreens, mNewScreens, mAddedWorkspaceItems, spanX, spanY) + WorkspaceItemSpaceFinder( + mModelHelper.bgDataModel, + mAppState.invariantDeviceProfile, + mModelHelper.model, + ) + .findSpaceForItem(mExistingScreens, mNewScreens, spanX, spanY) .let { NewItemSpace.fromIntArray(it) } private fun assertRegionVacant(newItemSpace: NewItemSpace, spanX: Int, spanY: Int) { @@ -69,37 +76,6 @@ class WorkspaceItemSpaceFinderTest : AbstractWorkspaceModelTest() { assertRegionVacant(spaceFound, 1, 1) } - @Test - fun workspaceItemsAddedButNotYetCommittedToDbShouldBeTakenIntoAccountInFindSpaceForItem() { - setupWorkspacesWithSpaces( - // 3x2 space on screen 0, but it should be skipped - screen0 = listOf(Rect(2, 0, 5, 2)), - screen1 = listOf(Rect(2, 2, 4, 4)), // 2x2 space - ) - val itemInfo = ItemInfo() - itemInfo.cellX = 2 - itemInfo.cellY = 2 - itemInfo.screenId = 1 - itemInfo.container = CONTAINER_DESKTOP - mAddedWorkspaceItems.add(itemInfo) - - val itemInfo2 = ItemInfo() - itemInfo2.cellX = 3 - itemInfo2.cellY = 2 - itemInfo2.screenId = 1 - itemInfo2.container = CONTAINER_DESKTOP - mAddedWorkspaceItems.add(itemInfo2) - - val spaceFound = findSpace(1, 1) - - assertThat(spaceFound.screenId).isEqualTo(1) - assertThat(spaceFound.cellX).isEqualTo(2) - assertThat(spaceFound.cellY).isEqualTo(3) - assertRegionVacant(spaceFound, 1, 1) - - mAddedWorkspaceItems.clear() - } - @Test fun notEnoughSpaceOnFirstScreen_whenFindSpaceForItem_thenReturnSecondScreenId() { setupWorkspacesWithSpaces( diff --git a/tests/multivalentTests/src/com/android/launcher3/model/data/ItemInfoWithIconTest.kt b/tests/multivalentTests/src/com/android/launcher3/model/data/ItemInfoWithIconTest.kt index 304e72f163..cfbde98eee 100644 --- a/tests/multivalentTests/src/com/android/launcher3/model/data/ItemInfoWithIconTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/model/data/ItemInfoWithIconTest.kt @@ -19,10 +19,10 @@ package com.android.launcher3.model.data import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.launcher3.pm.PackageInstallInfo -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.LauncherModelHelper import com.google.common.truth.Truth +import org.junit.After import org.junit.Before -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith @@ -30,7 +30,7 @@ import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) class ItemInfoWithIconTest { - @get:Rule var context = SandboxApplication() + private var context = LauncherModelHelper.SandboxModelContext() private lateinit var itemInfoWithIcon: ItemInfoWithIcon @Before @@ -43,6 +43,11 @@ class ItemInfoWithIconTest { } } + @After + fun tearDown() { + context.destroy() + } + @Test fun itemInfoWithIconDefaultParamsTest() { Truth.assertThat(itemInfoWithIcon.isDisabled).isFalse() diff --git a/tests/multivalentTests/src/com/android/launcher3/pm/InstallSessionTrackerTest.kt b/tests/multivalentTests/src/com/android/launcher3/pm/InstallSessionTrackerTest.kt index 81d327ee0d..23c1da98c5 100644 --- a/tests/multivalentTests/src/com/android/launcher3/pm/InstallSessionTrackerTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/pm/InstallSessionTrackerTest.kt @@ -27,8 +27,9 @@ import androidx.test.filters.SdkSuppress import androidx.test.filters.SmallTest import com.android.launcher3.Flags.FLAG_ENABLE_SUPPORT_FOR_ARCHIVING import com.android.launcher3.util.Executors.MODEL_EXECUTOR +import com.android.launcher3.util.LauncherModelHelper import com.android.launcher3.util.PackageUserKey -import com.android.launcher3.util.SandboxApplication +import org.junit.After import org.junit.Before import org.junit.Rule import org.junit.Test @@ -44,12 +45,14 @@ import org.mockito.kotlin.whenever @RunWith(AndroidJUnit4::class) class InstallSessionTrackerTest { @get:Rule val setFlagsRule = SetFlagsRule() - @get:Rule val sandboxContext = SandboxApplication() private val mockInstallSessionHelper: InstallSessionHelper = mock() private val mockCallback: InstallSessionTracker.Callback = mock() private val mockPackageInstaller: PackageInstaller = mock() + private val launcherModelHelper = LauncherModelHelper() + private val sandboxContext = launcherModelHelper.sandboxContext + lateinit var launcherApps: LauncherApps lateinit var installSessionTracker: InstallSessionTracker @@ -65,6 +68,11 @@ class InstallSessionTrackerTest { ) } + @After + fun teardown() { + launcherModelHelper.destroy() + } + @Test fun `onCreated triggers callbacks for setting up new install session`() { // Given diff --git a/tests/multivalentTests/src/com/android/launcher3/pm/UserCacheTest.kt b/tests/multivalentTests/src/com/android/launcher3/pm/UserCacheTest.kt index ac042cef9f..5f08c31f35 100644 --- a/tests/multivalentTests/src/com/android/launcher3/pm/UserCacheTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/pm/UserCacheTest.kt @@ -21,20 +21,31 @@ import android.os.UserHandle import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.platform.app.InstrumentationRegistry import com.android.launcher3.util.Executors.MODEL_EXECUTOR -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.LauncherModelHelper import com.android.launcher3.util.TestUtil import com.android.launcher3.util.UserIconInfo import com.google.common.truth.Truth.assertThat -import org.junit.Rule +import org.junit.After +import org.junit.Before import org.junit.Test import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) class UserCacheTest { - @get:Rule val sandboxContext = SandboxApplication() + private val launcherModelHelper = LauncherModelHelper() + private val sandboxContext = launcherModelHelper.sandboxContext + private lateinit var userCache: UserCache - private val userCache: UserCache by lazy { UserCache.getInstance(sandboxContext) } + @Before + fun setup() { + userCache = UserCache.getInstance(sandboxContext) + } + + @After + fun teardown() { + launcherModelHelper.destroy() + } @Test fun `getBadgeDrawable only returns a UserBadgeDrawable given a user in the cache`() { diff --git a/tests/multivalentTests/src/com/android/launcher3/provider/RestoreDbTaskTest.java b/tests/multivalentTests/src/com/android/launcher3/provider/RestoreDbTaskTest.java index 72310d27f7..0f4940e7ed 100644 --- a/tests/multivalentTests/src/com/android/launcher3/provider/RestoreDbTaskTest.java +++ b/tests/multivalentTests/src/com/android/launcher3/provider/RestoreDbTaskTest.java @@ -63,14 +63,14 @@ import com.android.launcher3.model.ModelDbController; import com.android.launcher3.pm.UserCache; import com.android.launcher3.util.AllModulesForTest; import com.android.launcher3.util.IntArray; -import com.android.launcher3.util.SandboxApplication; +import com.android.launcher3.util.LauncherModelHelper; +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext; import dagger.BindsInstance; import dagger.Component; import org.junit.After; import org.junit.Before; -import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mockito; @@ -89,9 +89,8 @@ public class RestoreDbTaskTest { private final UserHandle mWorkUser = UserHandle.getUserHandleForUid(PER_USER_RANGE); - @Rule - public final SandboxApplication mContext = new SandboxApplication(); - + private LauncherModelHelper mModelHelper; + private SandboxModelContext mContext; private UserCache mUserCacheSpy; private RestoreDbTask mTask; @@ -106,6 +105,8 @@ public class RestoreDbTaskTest { @Before public void setup() { + mModelHelper = new LauncherModelHelper(); + mContext = mModelHelper.sandboxContext; mUserCacheSpy = spy(UserCache.getInstance(getInstrumentation().getTargetContext())); mContext.initDaggerComponent( @@ -134,6 +135,7 @@ public class RestoreDbTaskTest { if (mWidgetHost != null) { mWidgetHost.deleteHost(); } + mModelHelper.destroy(); LauncherPrefs.get(mContext).removeSync(RESTORE_DEVICE); } diff --git a/tests/multivalentTests/src/com/android/launcher3/recyclerview/AllAppsRecyclerViewPoolTest.kt b/tests/multivalentTests/src/com/android/launcher3/recyclerview/AllAppsRecyclerViewPoolTest.kt index 247fbfbbca..3afb0b503f 100644 --- a/tests/multivalentTests/src/com/android/launcher3/recyclerview/AllAppsRecyclerViewPoolTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/recyclerview/AllAppsRecyclerViewPoolTest.kt @@ -111,7 +111,7 @@ class AllAppsRecyclerViewPoolTest<T> where T : Context, T : ActivityContext { private fun awaitTasksCompleted() { Executors.VIEW_PREINFLATION_EXECUTOR.submit<Any> { null }.get() - Executors.MAIN_EXECUTOR.submit<Any?> { null }.get() + Executors.MAIN_EXECUTOR.submit<Any> { null }.get() } companion object { diff --git a/tests/multivalentTests/src/com/android/launcher3/responsive/ResponsiveCellSpecsProviderTest.kt b/tests/multivalentTests/src/com/android/launcher3/responsive/ResponsiveCellSpecsProviderTest.kt index f001551ef4..11161bd525 100644 --- a/tests/multivalentTests/src/com/android/launcher3/responsive/ResponsiveCellSpecsProviderTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/responsive/ResponsiveCellSpecsProviderTest.kt @@ -17,8 +17,6 @@ package com.android.launcher3.responsive import android.content.Context -import android.platform.test.annotations.DisableFlags -import android.platform.test.annotations.EnableFlags import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import androidx.test.platform.app.InstrumentationRegistry @@ -57,9 +55,7 @@ class ResponsiveCellSpecsProviderTest : AbstractDeviceProfileTest() { specType = ResponsiveSpecType.Cell, iconSize = SizeSpec(48f.dpToPx()), iconTextSize = SizeSpec(12f.dpToPx()), - iconDrawablePadding = SizeSpec(8f.dpToPx()), - iconTextMaxLineCount = 1, - iconTextMaxLineCountMatchesWorkspace = false, + iconDrawablePadding = SizeSpec(8f.dpToPx()) ), CellSpec( maxAvailableSize = 9999.dpToPx(), @@ -67,10 +63,8 @@ class ResponsiveCellSpecsProviderTest : AbstractDeviceProfileTest() { specType = ResponsiveSpecType.Cell, iconSize = SizeSpec(52f.dpToPx()), iconTextSize = SizeSpec(12f.dpToPx()), - iconDrawablePadding = SizeSpec(11f.dpToPx()), - iconTextMaxLineCount = 1, - iconTextMaxLineCountMatchesWorkspace = false, - ), + iconDrawablePadding = SizeSpec(11f.dpToPx()) + ) ) val portraitSpecs = provider.getSpecsByAspectRatio(aspectRatioPortrait) @@ -90,9 +84,7 @@ class ResponsiveCellSpecsProviderTest : AbstractDeviceProfileTest() { specType = ResponsiveSpecType.Cell, iconSize = SizeSpec(52f.dpToPx()), iconTextSize = SizeSpec(0f), - iconDrawablePadding = SizeSpec(0f), - iconTextMaxLineCount = 1, - iconTextMaxLineCountMatchesWorkspace = false, + iconDrawablePadding = SizeSpec(0f) ) val landscapeSpecs = provider.getSpecsByAspectRatio(aspectRatioLandscape) @@ -102,209 +94,6 @@ class ResponsiveCellSpecsProviderTest : AbstractDeviceProfileTest() { assertThat(landscapeSpecs.heightSpecs[0]).isEqualTo(expectedLandscapeSpec) } - @Test - @EnableFlags(com.android.launcher3.Flags.FLAG_ENABLE_SCALABILITY_FOR_DESKTOP_EXPERIENCE) - fun parseValidFileWithMaxLineCount() { - val testResourceHelper = - TestResourceHelper(context, "valid_cell_specs_file_with_max_line_count".xmlToId()) - val provider = ResponsiveCellSpecsProvider.create(testResourceHelper) - - // Validate Portrait - val aspectRatioPortrait = 1.0f - val expectedPortraitSpecs = - listOf( - CellSpec( - maxAvailableSize = 9999.dpToPx(), - dimensionType = ResponsiveSpec.DimensionType.HEIGHT, - specType = ResponsiveSpecType.Cell, - iconSize = SizeSpec(52f.dpToPx()), - iconTextSize = SizeSpec(12f.dpToPx()), - iconDrawablePadding = SizeSpec(11f.dpToPx()), - iconTextMaxLineCount = 2, - iconTextMaxLineCountMatchesWorkspace = false, - ) - ) - - val portraitSpecs = provider.getSpecsByAspectRatio(aspectRatioPortrait) - - assertThat(portraitSpecs.aspectRatio).isAtLeast(aspectRatioPortrait) - assertThat(portraitSpecs.widthSpecs.size).isEqualTo(0) - assertThat(portraitSpecs.heightSpecs.size).isEqualTo(1) - assertThat(portraitSpecs.heightSpecs[0]).isEqualTo(expectedPortraitSpecs[0]) - - // Validate Landscape - val aspectRatioLandscape = 1.051f - val expectedLandscapeSpec = - CellSpec( - maxAvailableSize = 9999.dpToPx(), - dimensionType = ResponsiveSpec.DimensionType.HEIGHT, - specType = ResponsiveSpecType.Cell, - iconSize = SizeSpec(52f.dpToPx()), - iconTextSize = SizeSpec(12f.dpToPx()), - iconDrawablePadding = SizeSpec(4f.dpToPx()), - iconTextMaxLineCount = 2, - iconTextMaxLineCountMatchesWorkspace = false, - ) - val landscapeSpecs = provider.getSpecsByAspectRatio(aspectRatioLandscape) - - assertThat(landscapeSpecs.aspectRatio).isAtLeast(aspectRatioLandscape) - assertThat(landscapeSpecs.widthSpecs.size).isEqualTo(0) - assertThat(landscapeSpecs.heightSpecs.size).isEqualTo(1) - assertThat(landscapeSpecs.heightSpecs[0]).isEqualTo(expectedLandscapeSpec) - } - - @Test - @DisableFlags(com.android.launcher3.Flags.FLAG_ENABLE_SCALABILITY_FOR_DESKTOP_EXPERIENCE) - fun parseValidFileWithMaxLineCount_flagDisabled() { - val testResourceHelper = - TestResourceHelper(context, "valid_cell_specs_file_with_max_line_count".xmlToId()) - val provider = ResponsiveCellSpecsProvider.create(testResourceHelper) - - // Validate Portrait - val aspectRatioPortrait = 1.0f - val expectedPortraitSpecs = - listOf( - CellSpec( - maxAvailableSize = 9999.dpToPx(), - dimensionType = ResponsiveSpec.DimensionType.HEIGHT, - specType = ResponsiveSpecType.Cell, - iconSize = SizeSpec(52f.dpToPx()), - iconTextSize = SizeSpec(12f.dpToPx()), - iconDrawablePadding = SizeSpec(11f.dpToPx()), - iconTextMaxLineCount = 1, - iconTextMaxLineCountMatchesWorkspace = false, - ) - ) - - val portraitSpecs = provider.getSpecsByAspectRatio(aspectRatioPortrait) - - assertThat(portraitSpecs.aspectRatio).isAtLeast(aspectRatioPortrait) - assertThat(portraitSpecs.widthSpecs.size).isEqualTo(0) - assertThat(portraitSpecs.heightSpecs.size).isEqualTo(1) - assertThat(portraitSpecs.heightSpecs[0]).isEqualTo(expectedPortraitSpecs[0]) - - // Validate Landscape - val aspectRatioLandscape = 1.051f - val expectedLandscapeSpec = - CellSpec( - maxAvailableSize = 9999.dpToPx(), - dimensionType = ResponsiveSpec.DimensionType.HEIGHT, - specType = ResponsiveSpecType.Cell, - iconSize = SizeSpec(52f.dpToPx()), - iconTextSize = SizeSpec(12f.dpToPx()), - iconDrawablePadding = SizeSpec(4f.dpToPx()), - iconTextMaxLineCount = 1, - iconTextMaxLineCountMatchesWorkspace = false, - ) - val landscapeSpecs = provider.getSpecsByAspectRatio(aspectRatioLandscape) - - assertThat(landscapeSpecs.aspectRatio).isAtLeast(aspectRatioLandscape) - assertThat(landscapeSpecs.widthSpecs.size).isEqualTo(0) - assertThat(landscapeSpecs.heightSpecs.size).isEqualTo(1) - assertThat(landscapeSpecs.heightSpecs[0]).isEqualTo(expectedLandscapeSpec) - } - - @Test - fun parseValidFile_matchesWorkspace() { - val testWorkspaceResourceHelper = - TestResourceHelper(context, "valid_cell_specs_file_with_max_line_count".xmlToId()) - val workspaceProvider = ResponsiveCellSpecsProvider.create(testWorkspaceResourceHelper) - - val testResourceHelper = - TestResourceHelper(context, "valid_cell_specs_matches_workspace".xmlToId()) - val provider = ResponsiveCellSpecsProvider.create(testResourceHelper) - - // Validate Landscape - val aspectRatioLandscape = 1.051f - val landscapeWorkspaceSpecs = workspaceProvider.getSpecsByAspectRatio(aspectRatioLandscape) - assertThat(landscapeWorkspaceSpecs.heightSpecs.size).isEqualTo(1) - val calculatedWorkspaceSpec = - CalculatedCellSpec(800.dpToPx(), landscapeWorkspaceSpecs.heightSpecs[0]) - - val landscapeSpecs = provider.getSpecsByAspectRatio(aspectRatioLandscape) - assertThat(landscapeSpecs.heightSpecs.size).isEqualTo(1) - - val calculatedCellSpec = - CalculatedCellSpec(800.dpToPx(), landscapeSpecs.heightSpecs[0], calculatedWorkspaceSpec) - - assertThat(calculatedCellSpec.availableSpace).isEqualTo(800.dpToPx()) - assertThat(calculatedCellSpec.iconSize).isEqualTo(52.dpToPx()) - assertThat(calculatedCellSpec.iconTextSize).isEqualTo(12.dpToPx()) - assertThat(calculatedCellSpec.iconDrawablePadding).isEqualTo(4.dpToPx()) - assertThat(calculatedCellSpec.iconTextMaxLineCount).isEqualTo(1) - assertThat(calculatedCellSpec.iconTextMaxLineCountMatchesWorkspace).isFalse() - } - - @Test - @EnableFlags(com.android.launcher3.Flags.FLAG_ENABLE_SCALABILITY_FOR_DESKTOP_EXPERIENCE) - fun parseValidFile_matchesWorkspaceIncludingMaxLines() { - val testWorkspaceResourceHelper = - TestResourceHelper(context, "valid_cell_specs_file_with_max_line_count".xmlToId()) - val workspaceProvider = ResponsiveCellSpecsProvider.create(testWorkspaceResourceHelper) - - val testResourceHelper = - TestResourceHelper( - context, - "valid_cell_specs_matches_workspace_with_max_lines".xmlToId(), - ) - val provider = ResponsiveCellSpecsProvider.create(testResourceHelper) - - // Validate Landscape - val aspectRatioLandscape = 1.051f - val landscapeWorkspaceSpecs = workspaceProvider.getSpecsByAspectRatio(aspectRatioLandscape) - assertThat(landscapeWorkspaceSpecs.heightSpecs.size).isEqualTo(1) - val calculatedWorkspaceSpec = - CalculatedCellSpec(800.dpToPx(), landscapeWorkspaceSpecs.heightSpecs[0]) - - val landscapeSpecs = provider.getSpecsByAspectRatio(aspectRatioLandscape) - assertThat(landscapeSpecs.heightSpecs.size).isEqualTo(1) - - val calculatedCellSpec = - CalculatedCellSpec(800.dpToPx(), landscapeSpecs.heightSpecs[0], calculatedWorkspaceSpec) - - assertThat(calculatedCellSpec.availableSpace).isEqualTo(800.dpToPx()) - assertThat(calculatedCellSpec.iconSize).isEqualTo(52.dpToPx()) - assertThat(calculatedCellSpec.iconTextSize).isEqualTo(12.dpToPx()) - assertThat(calculatedCellSpec.iconDrawablePadding).isEqualTo(4.dpToPx()) - assertThat(calculatedCellSpec.iconTextMaxLineCount).isEqualTo(2) - assertThat(calculatedCellSpec.iconTextMaxLineCountMatchesWorkspace).isTrue() - } - - @Test - @DisableFlags(com.android.launcher3.Flags.FLAG_ENABLE_SCALABILITY_FOR_DESKTOP_EXPERIENCE) - fun parseValidFile_matchesWorkspaceIncludingMaxLines_flagDisabled() { - val testWorkspaceResourceHelper = - TestResourceHelper(context, "valid_cell_specs_file_with_max_line_count".xmlToId()) - val workspaceProvider = ResponsiveCellSpecsProvider.create(testWorkspaceResourceHelper) - - val testResourceHelper = - TestResourceHelper( - context, - "valid_cell_specs_matches_workspace_with_max_lines".xmlToId(), - ) - val provider = ResponsiveCellSpecsProvider.create(testResourceHelper) - - // Validate Landscape - val aspectRatioLandscape = 1.051f - val landscapeWorkspaceSpecs = workspaceProvider.getSpecsByAspectRatio(aspectRatioLandscape) - assertThat(landscapeWorkspaceSpecs.heightSpecs.size).isEqualTo(1) - val calculatedWorkspaceSpec = - CalculatedCellSpec(800.dpToPx(), landscapeWorkspaceSpecs.heightSpecs[0]) - - val landscapeSpecs = provider.getSpecsByAspectRatio(aspectRatioLandscape) - assertThat(landscapeSpecs.heightSpecs.size).isEqualTo(1) - - val calculatedCellSpec = - CalculatedCellSpec(800.dpToPx(), landscapeSpecs.heightSpecs[0], calculatedWorkspaceSpec) - - assertThat(calculatedCellSpec.availableSpace).isEqualTo(800.dpToPx()) - assertThat(calculatedCellSpec.iconSize).isEqualTo(52.dpToPx()) - assertThat(calculatedCellSpec.iconTextSize).isEqualTo(12.dpToPx()) - assertThat(calculatedCellSpec.iconDrawablePadding).isEqualTo(4.dpToPx()) - assertThat(calculatedCellSpec.iconTextMaxLineCount).isEqualTo(1) - assertThat(calculatedCellSpec.iconTextMaxLineCountMatchesWorkspace).isFalse() - } - @Test(expected = IllegalStateException::class) fun parseInvalidFile_IsNotFixedSizeOrMatchWorkspace_throwsError() { ResponsiveCellSpecsProvider.create( @@ -325,11 +114,4 @@ class ResponsiveCellSpecsProviderTest : AbstractDeviceProfileTest() { TestResourceHelper(context, "invalid_cell_specs_3".xmlToId()) ) } - - @Test(expected = IllegalStateException::class) - fun parseInvalidFile_invalidFixedSizeWithMultiline_throwsError() { - ResponsiveCellSpecsProvider.create( - TestResourceHelper(context, "invalid_cell_specs_4".xmlToId()) - ) - } } diff --git a/tests/multivalentTests/src/com/android/launcher3/shapes/ShapesProviderTest.kt b/tests/multivalentTests/src/com/android/launcher3/shapes/ShapesProviderTest.kt index b2ec6b7231..66b8be0229 100644 --- a/tests/multivalentTests/src/com/android/launcher3/shapes/ShapesProviderTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/shapes/ShapesProviderTest.kt @@ -27,6 +27,7 @@ import com.android.launcher3.shapes.ShapesProvider.ARCH_KEY import com.android.launcher3.shapes.ShapesProvider.CIRCLE_KEY import com.android.launcher3.shapes.ShapesProvider.FOUR_SIDED_COOKIE_KEY import com.android.launcher3.shapes.ShapesProvider.SEVEN_SIDED_COOKIE_KEY +import com.android.launcher3.shapes.ShapesProvider.SQUARE_KEY import com.android.systemui.shared.Flags.FLAG_NEW_CUSTOMIZATION_PICKER_UI import org.junit.Rule import org.junit.Test @@ -92,4 +93,48 @@ class ShapesProviderTest { PathParser.createPathFromPathData(pathString) } } + + @Test + @EnableFlags(FLAG_ENABLE_LAUNCHER_ICON_SHAPES, FLAG_NEW_CUSTOMIZATION_PICKER_UI) + fun `verify valid folder path clover`() { + ShapesProvider.iconShapes + .find { it.key == CIRCLE_KEY }!! + .run { + GenericPathShape(folderPathString) + PathParser.createPathFromPathData(folderPathString) + } + } + + @Test + @EnableFlags(FLAG_ENABLE_LAUNCHER_ICON_SHAPES, FLAG_NEW_CUSTOMIZATION_PICKER_UI) + fun `verify valid folder path complexClover`() { + ShapesProvider.iconShapes + .find { it.key == FOUR_SIDED_COOKIE_KEY }!! + .run { + GenericPathShape(folderPathString) + PathParser.createPathFromPathData(folderPathString) + } + } + + @Test + @EnableFlags(FLAG_ENABLE_LAUNCHER_ICON_SHAPES, FLAG_NEW_CUSTOMIZATION_PICKER_UI) + fun `verify valid folder path arch`() { + ShapesProvider.iconShapes + .find { it.key == ARCH_KEY }!! + .run { + GenericPathShape(folderPathString) + PathParser.createPathFromPathData(folderPathString) + } + } + + @Test + @EnableFlags(FLAG_ENABLE_LAUNCHER_ICON_SHAPES, FLAG_NEW_CUSTOMIZATION_PICKER_UI) + fun `verify valid folder path square`() { + ShapesProvider.iconShapes + .find { it.key == SQUARE_KEY }!! + .run { + GenericPathShape(folderPathString) + PathParser.createPathFromPathData(folderPathString) + } + } } diff --git a/tests/multivalentTests/src/com/android/launcher3/ui/BubbleTextViewTest.java b/tests/multivalentTests/src/com/android/launcher3/ui/BubbleTextViewTest.java index e72b9e2005..5c326f98c7 100644 --- a/tests/multivalentTests/src/com/android/launcher3/ui/BubbleTextViewTest.java +++ b/tests/multivalentTests/src/com/android/launcher3/ui/BubbleTextViewTest.java @@ -69,10 +69,11 @@ import com.android.launcher3.search.StringMatcherUtility; import com.android.launcher3.util.ActivityContextWrapper; import com.android.launcher3.util.FlagOp; import com.android.launcher3.util.IntArray; -import com.android.launcher3.util.SandboxApplication; +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext; import com.android.launcher3.util.TestUtil; import com.android.launcher3.views.BaseDragLayer; +import org.junit.After; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -118,7 +119,7 @@ public class BubbleTextViewTest { private static final float SPACE_MULTIPLIER = 1; private static final float SPACE_EXTRA = 0; - @Rule public SandboxApplication mModelContext = new SandboxApplication(); + private SandboxModelContext mModelContext; private BubbleTextView mBubbleTextView; private ItemInfoWithIcon mItemInfoWithIcon; @@ -130,6 +131,7 @@ public class BubbleTextViewTest { public void setUp() throws Exception { MockitoAnnotations.initMocks(this); Utilities.enableRunningInTestHarnessForTests(); + mModelContext = new SandboxModelContext(); LauncherPrefs.get(mModelContext).put(ENABLE_TWOLINE_ALLAPPS_TOGGLE, true); mContext = new ActivityContextWrapper(mModelContext); @@ -158,6 +160,11 @@ public class BubbleTextViewTest { mGmailAppInfo = new AppInfo(componentName, "Gmail", WORK_HANDLE, new Intent()); } + @After + public void tearDown() { + mModelContext.onDestroy(); + } + @Test @EnableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE) public void testEmptyString_flagOn() { diff --git a/tests/multivalentTests/src/com/android/launcher3/util/ActivityContextWrapper.java b/tests/multivalentTests/src/com/android/launcher3/util/ActivityContextWrapper.java index 880a88a43b..f4dc88d5de 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/ActivityContextWrapper.java +++ b/tests/multivalentTests/src/com/android/launcher3/util/ActivityContextWrapper.java @@ -60,7 +60,6 @@ public class ActivityContextWrapper extends BaseContext { @Override public void recreateControllers() { - super.recreateControllers(); mControllers = new TouchController[0]; } } diff --git a/tests/multivalentTests/src/com/android/launcher3/util/CellContentDimensionsTest.kt b/tests/multivalentTests/src/com/android/launcher3/util/CellContentDimensionsTest.kt index 9373ce2118..2294f5f0fe 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/CellContentDimensionsTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/CellContentDimensionsTest.kt @@ -49,12 +49,7 @@ class CellContentDimensionsTest { fun dimensionsFitTheCell() { val cellSize = Pair(80, 104) val cellContentDimensions = - CellContentDimensions( - iconSizePx = 66, - iconDrawablePaddingPx = 8, - iconTextSizePx = 14, - maxLineCount = 1, - ) + CellContentDimensions(iconSizePx = 66, iconDrawablePaddingPx = 8, iconTextSizePx = 14) val contentHeight = cellContentDimensions.resizeToFitCellHeight(cellSize.second, iconSizeSteps) @@ -64,76 +59,6 @@ class CellContentDimensionsTest { assertThat(iconSizePx).isEqualTo(66) assertThat(iconDrawablePaddingPx).isEqualTo(8) assertThat(iconTextSizePx).isEqualTo(14) - assertThat(maxLineCount).isEqualTo(1) - } - } - - @Test - fun dimensionsFitTheCellWithDoubleLines() { - val cellSize = Pair(80, 108) - val cellContentDimensions = - CellContentDimensions( - iconSizePx = 66, - iconDrawablePaddingPx = 8, - iconTextSizePx = 12, - maxLineCount = 2, - ) - - val contentHeight = - cellContentDimensions.resizeToFitCellHeight(cellSize.second, iconSizeSteps) - - assertThat(contentHeight).isEqualTo(106) - cellContentDimensions.run { - assertThat(iconSizePx).isEqualTo(66) - assertThat(iconDrawablePaddingPx).isEqualTo(8) - assertThat(iconTextSizePx).isEqualTo(12) - assertThat(maxLineCount).isEqualTo(2) - } - } - - @Test - fun decreaseMaxLineCount() { - val cellSize = Pair(80, 104) - val cellContentDimensions = - CellContentDimensions( - iconSizePx = 66, - iconDrawablePaddingPx = 8, - iconTextSizePx = 12, - maxLineCount = 2, - ) - - val contentHeight = - cellContentDimensions.resizeToFitCellHeight(cellSize.second, iconSizeSteps) - - assertThat(contentHeight).isEqualTo(90) - cellContentDimensions.run { - assertThat(iconSizePx).isEqualTo(66) - assertThat(iconDrawablePaddingPx).isEqualTo(8) - assertThat(iconTextSizePx).isEqualTo(12) - assertThat(maxLineCount).isEqualTo(1) - } - } - - @Test - fun decreaseMaxLineCountAndPadding() { - val cellSize = Pair(80, 82) - val cellContentDimensions = - CellContentDimensions( - iconSizePx = 66, - iconDrawablePaddingPx = 8, - iconTextSizePx = 12, - maxLineCount = 2, - ) - - val contentHeight = - cellContentDimensions.resizeToFitCellHeight(cellSize.second, iconSizeSteps) - - assertThat(contentHeight).isEqualTo(82) - cellContentDimensions.run { - assertThat(iconSizePx).isEqualTo(66) - assertThat(iconDrawablePaddingPx).isEqualTo(0) - assertThat(iconTextSizePx).isEqualTo(12) - assertThat(maxLineCount).isEqualTo(1) } } @@ -141,12 +66,7 @@ class CellContentDimensionsTest { fun decreasePadding() { val cellSize = Pair(67, 87) val cellContentDimensions = - CellContentDimensions( - iconSizePx = 66, - iconDrawablePaddingPx = 8, - iconTextSizePx = 14, - maxLineCount = 1, - ) + CellContentDimensions(iconSizePx = 66, iconDrawablePaddingPx = 8, iconTextSizePx = 14) val contentHeight = cellContentDimensions.resizeToFitCellHeight(cellSize.second, iconSizeSteps) @@ -156,7 +76,6 @@ class CellContentDimensionsTest { assertThat(iconSizePx).isEqualTo(66) assertThat(iconDrawablePaddingPx).isEqualTo(2) assertThat(iconTextSizePx).isEqualTo(14) - assertThat(maxLineCount).isEqualTo(1) } } @@ -164,12 +83,7 @@ class CellContentDimensionsTest { fun decreaseIcon() { val cellSize = Pair(65, 84) val cellContentDimensions = - CellContentDimensions( - iconSizePx = 66, - iconDrawablePaddingPx = 8, - iconTextSizePx = 14, - maxLineCount = 1, - ) + CellContentDimensions(iconSizePx = 66, iconDrawablePaddingPx = 8, iconTextSizePx = 14) val contentHeight = cellContentDimensions.resizeToFitCellHeight(cellSize.second, iconSizeSteps) @@ -179,7 +93,6 @@ class CellContentDimensionsTest { assertThat(iconSizePx).isEqualTo(63) assertThat(iconDrawablePaddingPx).isEqualTo(0) assertThat(iconTextSizePx).isEqualTo(14) - assertThat(maxLineCount).isEqualTo(1) } } @@ -187,12 +100,7 @@ class CellContentDimensionsTest { fun decreaseText() { val cellSize = Pair(63, 81) val cellContentDimensions = - CellContentDimensions( - iconSizePx = 66, - iconDrawablePaddingPx = 8, - iconTextSizePx = 14, - maxLineCount = 1, - ) + CellContentDimensions(iconSizePx = 66, iconDrawablePaddingPx = 8, iconTextSizePx = 14) val contentHeight = cellContentDimensions.resizeToFitCellHeight(cellSize.second, iconSizeSteps) @@ -202,7 +110,6 @@ class CellContentDimensionsTest { assertThat(iconSizePx).isEqualTo(63) assertThat(iconDrawablePaddingPx).isEqualTo(0) assertThat(iconTextSizePx).isEqualTo(13) - assertThat(maxLineCount).isEqualTo(1) } } @@ -210,12 +117,7 @@ class CellContentDimensionsTest { fun decreaseIconAndTextTwoSteps() { val cellSize = Pair(60, 78) val cellContentDimensions = - CellContentDimensions( - iconSizePx = 66, - iconDrawablePaddingPx = 8, - iconTextSizePx = 14, - maxLineCount = 1, - ) + CellContentDimensions(iconSizePx = 66, iconDrawablePaddingPx = 8, iconTextSizePx = 14) val contentHeight = cellContentDimensions.resizeToFitCellHeight(cellSize.second, iconSizeSteps) @@ -225,7 +127,6 @@ class CellContentDimensionsTest { assertThat(iconSizePx).isEqualTo(61) assertThat(iconDrawablePaddingPx).isEqualTo(0) assertThat(iconTextSizePx).isEqualTo(12) - assertThat(maxLineCount).isEqualTo(1) } } @@ -233,12 +134,7 @@ class CellContentDimensionsTest { fun decreaseIconAndTextToMinimum() { val cellSize = Pair(52, 63) val cellContentDimensions = - CellContentDimensions( - iconSizePx = 66, - iconDrawablePaddingPx = 8, - iconTextSizePx = 14, - maxLineCount = 2, - ) + CellContentDimensions(iconSizePx = 66, iconDrawablePaddingPx = 8, iconTextSizePx = 14) val contentHeight = cellContentDimensions.resizeToFitCellHeight(cellSize.second, iconSizeSteps) @@ -248,7 +144,6 @@ class CellContentDimensionsTest { assertThat(iconSizePx).isEqualTo(52) assertThat(iconDrawablePaddingPx).isEqualTo(0) assertThat(iconTextSizePx).isEqualTo(8) - assertThat(maxLineCount).isEqualTo(1) } } } diff --git a/tests/multivalentTests/src/com/android/launcher3/util/DaggerGraphs.kt b/tests/multivalentTests/src/com/android/launcher3/util/DaggerGraphs.kt index 148f0a178d..a76ccf015e 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/DaggerGraphs.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/DaggerGraphs.kt @@ -18,13 +18,8 @@ package com.android.launcher3.util import com.android.launcher3.FakeLauncherPrefs import com.android.launcher3.LauncherPrefs -import com.android.launcher3.compose.core.widgetpicker.NoOpWidgetPickerModule -import com.android.launcher3.concurrent.ExecutorsModule -import com.android.launcher3.util.dagger.LauncherExecutorsModule import com.android.launcher3.dagger.ApiWrapperModule import com.android.launcher3.dagger.AppModule -import com.android.launcher3.dagger.LauncherConcurrencyModule -import com.android.launcher3.dagger.PerDisplayModule import com.android.launcher3.dagger.StaticObjectModule import com.android.launcher3.dagger.WidgetModule import com.android.launcher3.dagger.WindowManagerProxyModule @@ -38,32 +33,34 @@ abstract class FakePrefsModule { @Binds abstract fun bindLauncherPrefs(prefs: FakeLauncherPrefs): LauncherPrefs } -@Module( - includes = - [ - StaticObjectModule::class, - WidgetModule::class, - AppModule::class, - PerDisplayModule::class, - LauncherConcurrencyModule::class, - ExecutorsModule::class, - LauncherExecutorsModule::class, - NoOpWidgetPickerModule::class - ] -) -class CommonModulesForTest - /** All modules. We also exclude the plugin module from tests */ @Module( includes = - [ApiWrapperModule::class, CommonModulesForTest::class, WindowManagerProxyModule::class] + [ + ApiWrapperModule::class, + WindowManagerProxyModule::class, + StaticObjectModule::class, + WidgetModule::class, + AppModule::class, + ] ) class AllModulesForTest /** All modules except the WMProxy */ -@Module(includes = [ApiWrapperModule::class, CommonModulesForTest::class]) +@Module( + includes = + [ApiWrapperModule::class, StaticObjectModule::class, AppModule::class, WidgetModule::class] +) class AllModulesMinusWMProxy /** All modules except the ApiWrapper */ -@Module(includes = [WindowManagerProxyModule::class, CommonModulesForTest::class]) +@Module( + includes = + [ + WindowManagerProxyModule::class, + StaticObjectModule::class, + AppModule::class, + WidgetModule::class, + ] +) class AllModulesMinusApiWrapper diff --git a/tests/multivalentTests/src/com/android/launcher3/util/DaggerSingletonDeadlockTest.kt b/tests/multivalentTests/src/com/android/launcher3/util/DaggerSingletonDeadlockTest.kt index 8e43b6eaf4..642c6283be 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/DaggerSingletonDeadlockTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/DaggerSingletonDeadlockTest.kt @@ -18,11 +18,12 @@ package com.android.launcher3.util import androidx.test.filters.SmallTest import com.android.launcher3.dagger.LauncherAppComponent +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import java.util.concurrent.TimeUnit.SECONDS import kotlin.reflect.KFunction import kotlin.reflect.full.memberFunctions +import org.junit.After import org.junit.Assert -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import platform.test.runner.parameterized.ParameterizedAndroidJunit4 @@ -32,7 +33,12 @@ import platform.test.runner.parameterized.Parameters @RunWith(ParameterizedAndroidJunit4::class) class DaggerSingletonDeadlockTest(val method: KFunction<*>, val methodName: String) { - @get:Rule val context = SandboxApplication() + private val context = SandboxModelContext() + + @After + fun tearDown() { + context.onDestroy() + } /** Test to verify that the object can be created successfully on the main thread. */ @Test diff --git a/tests/multivalentTests/src/com/android/launcher3/util/DisplayControllerTest.kt b/tests/multivalentTests/src/com/android/launcher3/util/DisplayControllerTest.kt index bdbe163bfb..0ecb38eb0f 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/DisplayControllerTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/DisplayControllerTest.kt @@ -28,13 +28,16 @@ import androidx.test.annotation.UiThreadTest import androidx.test.filters.SmallTest import com.android.launcher3.LauncherPrefs import com.android.launcher3.LauncherPrefs.Companion.TASKBAR_PINNING +import com.android.launcher3.LauncherPrefs.Companion.TASKBAR_PINNING_IN_DESKTOP_MODE import com.android.launcher3.dagger.LauncherAppComponent import com.android.launcher3.dagger.LauncherAppSingleton import com.android.launcher3.util.DisplayController.CHANGE_DENSITY +import com.android.launcher3.util.DisplayController.CHANGE_DESKTOP_MODE import com.android.launcher3.util.DisplayController.CHANGE_ROTATION import com.android.launcher3.util.DisplayController.CHANGE_SHOW_LOCKED_TASKBAR import com.android.launcher3.util.DisplayController.CHANGE_TASKBAR_PINNING import com.android.launcher3.util.DisplayController.DisplayInfoChangeListener +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.android.launcher3.util.window.CachedDisplayInfo import com.android.launcher3.util.window.WindowManagerProxy import dagger.BindsInstance @@ -44,7 +47,6 @@ import junit.framework.Assert.assertTrue import kotlin.math.min import org.junit.After import org.junit.Before -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.mockito.kotlin.any @@ -63,7 +65,7 @@ import org.mockito.stubbing.Answer @RunWith(LauncherMultivalentJUnit::class) class DisplayControllerTest { - @get:Rule val context = spy(SandboxApplication()) + private val context = spy(SandboxModelContext()) private val windowManagerProxy: MyWmProxy = mock() private val launcherPrefs: LauncherPrefs = mock() private lateinit var displayManager: DisplayManager @@ -103,6 +105,7 @@ class DisplayControllerTest { displayManager = context.spyService(DisplayManager::class.java) whenever(launcherPrefs.get(TASKBAR_PINNING)).thenReturn(false) + whenever(launcherPrefs.get(TASKBAR_PINNING_IN_DESKTOP_MODE)).thenReturn(true) // Mock WindowManagerProxy val displayInfo = CachedDisplayInfo(Point(width, height), Surface.ROTATION_0) @@ -146,6 +149,7 @@ class DisplayControllerTest { // We need to reset the taskbar mode preference override even if a test throws an exception. // Otherwise, it may break the following tests' assumptions. DisplayController.enableTaskbarModePreferenceForTests(false) + context.onDestroy() } @Test @@ -186,11 +190,20 @@ class DisplayControllerTest { .onDisplayInfoChanged(any(), any(), eq(CHANGE_TASKBAR_PINNING)) } + @Test + @UiThreadTest + fun testTaskbarPinningChangeInDesktopMode() { + whenever(launcherPrefs.get(TASKBAR_PINNING_IN_DESKTOP_MODE)).thenReturn(false) + displayController.notifyConfigChange() + verify(displayInfoChangeListener) + .onDisplayInfoChanged(any(), any(), eq(CHANGE_TASKBAR_PINNING)) + } + @Test @UiThreadTest fun testTaskbarPinningChangeInLockedTaskbarChange() { whenever(windowManagerProxy.showLockedTaskbarOnHome(any())).thenReturn(true) - whenever(windowManagerProxy.isHomeVisible()).thenReturn(true) + whenever(windowManagerProxy.isHomeVisible(any())).thenReturn(true) whenever(windowManagerProxy.isInDesktopMode(any())).thenReturn(false) whenever(launcherPrefs.get(TASKBAR_PINNING)).thenReturn(false) DisplayController.enableTaskbarModePreferenceForTests(true) @@ -211,7 +224,7 @@ class DisplayControllerTest { @UiThreadTest fun testLockedTaskbarChangeOnConfigurationChanged() { whenever(windowManagerProxy.showLockedTaskbarOnHome(any())).thenReturn(true) - whenever(windowManagerProxy.isHomeVisible()).thenReturn(true) + whenever(windowManagerProxy.isHomeVisible(any())).thenReturn(true) whenever(windowManagerProxy.isInDesktopMode(any())).thenReturn(false) whenever(launcherPrefs.get(TASKBAR_PINNING)).thenReturn(false) DisplayController.enableTaskbarModePreferenceForTests(true) @@ -227,6 +240,63 @@ class DisplayControllerTest { ) assertFalse(displayController.getInfo().isTransientTaskbar()) } + + @Test + @UiThreadTest + fun testTaskbarPinnedForDesktopTaskbar_inDesktopMode() { + whenever(windowManagerProxy.showDesktopTaskbarForFreeformDisplay(any())).thenReturn(true) + whenever(launcherPrefs.get(TASKBAR_PINNING)).thenReturn(false) + whenever(launcherPrefs.get(TASKBAR_PINNING_IN_DESKTOP_MODE)).thenReturn(false) + whenever(windowManagerProxy.isInDesktopMode(any())).thenReturn(true) + whenever(windowManagerProxy.isHomeVisible(any())).thenReturn(false) + DisplayController.enableTaskbarModePreferenceForTests(true) + + assertTrue(displayController.getInfo().isTransientTaskbar()) + + displayController.onConfigurationChanged(configuration) + + verify(displayInfoChangeListener) + .onDisplayInfoChanged(any(), any(), eq(CHANGE_TASKBAR_PINNING or CHANGE_DESKTOP_MODE)) + assertFalse(displayController.getInfo().isTransientTaskbar()) + } + + @Test + @UiThreadTest + fun testTaskbarPinnedForDesktopTaskbar_notInDesktopMode() { + whenever(windowManagerProxy.showDesktopTaskbarForFreeformDisplay(any())).thenReturn(true) + whenever(launcherPrefs.get(TASKBAR_PINNING)).thenReturn(false) + whenever(launcherPrefs.get(TASKBAR_PINNING_IN_DESKTOP_MODE)).thenReturn(false) + whenever(windowManagerProxy.isInDesktopMode(any())).thenReturn(false) + whenever(windowManagerProxy.isHomeVisible(any())).thenReturn(false) + DisplayController.enableTaskbarModePreferenceForTests(true) + + assertTrue(displayController.getInfo().isTransientTaskbar()) + + displayController.onConfigurationChanged(configuration) + + verify(displayInfoChangeListener) + .onDisplayInfoChanged(any(), any(), eq(CHANGE_TASKBAR_PINNING)) + assertFalse(displayController.getInfo().isTransientTaskbar()) + } + + @Test + @UiThreadTest + fun testTaskbarPinnedForDesktopTaskbar_onHome() { + whenever(windowManagerProxy.showDesktopTaskbarForFreeformDisplay(any())).thenReturn(true) + whenever(launcherPrefs.get(TASKBAR_PINNING)).thenReturn(false) + whenever(launcherPrefs.get(TASKBAR_PINNING_IN_DESKTOP_MODE)).thenReturn(false) + whenever(windowManagerProxy.isInDesktopMode(any())).thenReturn(false) + whenever(windowManagerProxy.isHomeVisible(any())).thenReturn(true) + DisplayController.enableTaskbarModePreferenceForTests(true) + + assertTrue(displayController.getInfo().isTransientTaskbar()) + + displayController.onConfigurationChanged(configuration) + + verify(displayInfoChangeListener) + .onDisplayInfoChanged(any(), any(), eq(CHANGE_TASKBAR_PINNING)) + assertFalse(displayController.getInfo().isTransientTaskbar()) + } } class MyWmProxy : WindowManagerProxy() diff --git a/tests/multivalentTests/src/com/android/launcher3/util/LauncherModelHelper.java b/tests/multivalentTests/src/com/android/launcher3/util/LauncherModelHelper.java index 08c8926e04..4458e8fb01 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/LauncherModelHelper.java +++ b/tests/multivalentTests/src/com/android/launcher3/util/LauncherModelHelper.java @@ -15,10 +15,59 @@ */ package com.android.launcher3.util; +import static android.content.pm.PackageInstaller.SessionParams.MODE_FULL_INSTALL; + import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation; +import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; +import static com.android.launcher3.util.Executors.MODEL_EXECUTOR; +import static com.android.launcher3.util.TestUtil.grantWriteSecurePermission; +import static com.android.launcher3.util.TestUtil.runOnExecutorSync; + +import static org.mockito.ArgumentMatchers.anyInt; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.spy; + +import android.content.ContentProvider; +import android.content.ContentResolver; +import android.content.Context; +import android.content.pm.PackageInstaller; +import android.content.pm.PackageInstaller.SessionParams; +import android.content.pm.PackageManager; +import android.content.pm.ProviderInfo; +import android.graphics.Bitmap; +import android.graphics.Bitmap.Config; +import android.graphics.Color; +import android.net.Uri; +import android.os.ParcelFileDescriptor; +import android.os.ParcelFileDescriptor.AutoCloseOutputStream; +import android.provider.Settings; +import android.test.mock.MockContentResolver; +import android.util.ArrayMap; + +import androidx.test.core.app.ApplicationProvider; + +import com.android.launcher3.InvariantDeviceProfile; +import com.android.launcher3.LauncherAppState; +import com.android.launcher3.LauncherModel; +import com.android.launcher3.dagger.LauncherBaseAppComponent; +import com.android.launcher3.model.BgDataModel; +import com.android.launcher3.model.BgDataModel.Callbacks; +import com.android.launcher3.model.ModelDbController; +import com.android.launcher3.testing.TestInformationProvider; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.OutputStreamWriter; import java.util.Arrays; import java.util.List; +import java.util.UUID; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ExecutionException; /** * Utility class to help manage Launcher Model and related objects for test. @@ -57,4 +106,238 @@ public class LauncherModelHelper { TEST_ACTIVITY13, TEST_ACTIVITY14 ); + + // Authority for providing a test default-workspace-layout data. + private static final String TEST_PROVIDER_AUTHORITY = + LauncherModelHelper.class.getName().toLowerCase(); + private static final int DEFAULT_BITMAP_SIZE = 10; + private static final int DEFAULT_GRID_SIZE = 4; + + public final SandboxModelContext sandboxContext; + + private final RunnableList mDestroyTask = new RunnableList(); + + private BgDataModel mDataModel; + + public LauncherModelHelper() { + sandboxContext = new SandboxModelContext(); + } + + public void setupProvider(String authority, ContentProvider provider) { + sandboxContext.setupProvider(authority, provider); + } + + public LauncherModel getModel() { + return LauncherAppState.getInstance(sandboxContext).getModel(); + } + + public synchronized BgDataModel getBgDataModel() { + if (mDataModel == null) { + getModel().enqueueModelUpdateTask((taskController, dataModel, apps) -> + mDataModel = dataModel); + runOnExecutorSync(Executors.MODEL_EXECUTOR, () -> { }); + } + return mDataModel; + } + + /** + * Creates a installer session for the provided package. + */ + public int createInstallerSession(String pkg) throws IOException { + SessionParams sp = new SessionParams(MODE_FULL_INSTALL); + sp.setAppPackageName(pkg); + Bitmap icon = Bitmap.createBitmap(100, 100, Config.ARGB_8888); + icon.eraseColor(Color.RED); + sp.setAppIcon(icon); + sp.setAppLabel(pkg); + sp.setInstallerPackageName(ApplicationProvider.getApplicationContext().getPackageName()); + PackageInstaller pi = ApplicationProvider.getApplicationContext().getPackageManager() + .getPackageInstaller(); + int sessionId = pi.createSession(sp); + mDestroyTask.add(() -> pi.abandonSession(sessionId)); + return sessionId; + } + + public void destroy() { + // When destroying the context, make sure that the model thread is blocked, so that no + // new jobs get posted while we are cleaning up + CountDownLatch l1 = new CountDownLatch(1); + CountDownLatch l2 = new CountDownLatch(1); + MODEL_EXECUTOR.execute(() -> { + l1.countDown(); + waitOrThrow(l2); + }); + waitOrThrow(l1); + sandboxContext.onDestroy(); + l2.countDown(); + + mDestroyTask.executeAllAndDestroy(); + } + + private void waitOrThrow(CountDownLatch latch) { + try { + latch.await(); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + + /** + * Sets up a mock provider to load the provided layout by default, next time the layout loads + */ + public LauncherModelHelper setupDefaultLayoutProvider(LauncherLayoutBuilder builder) + throws Exception { + grantWriteSecurePermission(); + + InvariantDeviceProfile idp = InvariantDeviceProfile.INSTANCE.get(sandboxContext); + if (idp.numRows == 0 && idp.numColumns == 0) { + idp.numRows = idp.numColumns = idp.numDatabaseHotseatIcons = DEFAULT_GRID_SIZE; + } + if (idp.iconBitmapSize == 0) { + idp.iconBitmapSize = DEFAULT_BITMAP_SIZE; + } + + Settings.Secure.putString(sandboxContext.getContentResolver(), "launcher3.layout.provider", + TEST_PROVIDER_AUTHORITY); + + // TODO: use a wrapper class to differentiate the behavior + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + builder.build(new OutputStreamWriter(bos)); + ContentProvider cp = new TestInformationProvider() { + + @Override + public ParcelFileDescriptor openFile(Uri uri, String mode) + throws FileNotFoundException { + try { + ParcelFileDescriptor[] pipe = ParcelFileDescriptor.createPipe(); + AutoCloseOutputStream outputStream = new AutoCloseOutputStream(pipe[1]); + outputStream.write(bos.toByteArray()); + outputStream.flush(); + outputStream.close(); + return pipe[0]; + } catch (Exception e) { + throw new FileNotFoundException(e.getMessage()); + } + } + }; + setupProvider(TEST_PROVIDER_AUTHORITY, cp); + RoboApiWrapper.INSTANCE.registerInputStream(sandboxContext.getContentResolver(), + ModelDbController.getLayoutUri(TEST_PROVIDER_AUTHORITY, sandboxContext), + ()-> new ByteArrayInputStream(bos.toByteArray())); + + mDestroyTask.add(() -> runOnExecutorSync(MODEL_EXECUTOR, () -> + Settings.Secure.putString(sandboxContext.getContentResolver(), + "launcher3.layout.provider", ""))); + return this; + } + + /** + * Loads the model in memory synchronously + */ + public void loadModelSync() throws ExecutionException, InterruptedException { + Callbacks mockCb = new Callbacks() { }; + MAIN_EXECUTOR.submit(() -> getModel().addCallbacksAndLoad(mockCb)).get(); + + Executors.MODEL_EXECUTOR.submit(() -> { }).get(); + getInstrumentation().waitForIdleSync(); + MAIN_EXECUTOR.submit(() -> getModel().removeCallbacks(mockCb)).get(); + } + + public static class SandboxModelContext extends SandboxContext { + + private final MockContentResolver mMockResolver = new MockContentResolver(); + private final ArrayMap<String, Object> mSpiedServices = new ArrayMap<>(); + private final PackageManager mPm; + private final File mDbDir; + + public SandboxModelContext() { + this(ApplicationProvider.getApplicationContext()); + } + + public SandboxModelContext(Context context) { + super(context); + + // System settings cache content provider. Ensure that they are statically initialized + Settings.Secure.getString(context.getContentResolver(), "test"); + Settings.System.getString(context.getContentResolver(), "test"); + Settings.Global.getString(context.getContentResolver(), "test"); + + mPm = spy(getBaseContext().getPackageManager()); + mDbDir = new File(getCacheDir(), UUID.randomUUID().toString()); + } + + @Override + public File getDatabasePath(String name) { + if (!mDbDir.exists()) { + mDbDir.mkdirs(); + } + return new File(mDbDir, name); + } + + @Override + public ContentResolver getContentResolver() { + return mMockResolver; + } + + @Override + protected void cleanUpObjects() { + if (deleteContents(mDbDir)) { + mDbDir.delete(); + } + super.cleanUpObjects(); + } + + @Override + public PackageManager getPackageManager() { + return mPm; + } + + @Override + public Object getSystemService(String name) { + Object service = mSpiedServices.get(name); + return service != null ? service : super.getSystemService(name); + } + + public <T> T spyService(Class<T> tClass) { + String name = getSystemServiceName(tClass); + Object service = mSpiedServices.get(name); + if (service != null) { + return (T) service; + } + + T result = spy(getSystemService(tClass)); + mSpiedServices.put(name, result); + return result; + } + + public void setupProvider(String authority, ContentProvider provider) { + ProviderInfo providerInfo = new ProviderInfo(); + providerInfo.authority = authority; + providerInfo.applicationInfo = getApplicationInfo(); + provider.attachInfo(this, providerInfo); + mMockResolver.addProvider(providerInfo.authority, provider); + doReturn(providerInfo).when(mPm).resolveContentProvider(eq(authority), anyInt()); + } + + private static boolean deleteContents(File dir) { + File[] files = dir.listFiles(); + boolean success = true; + if (files != null) { + for (File file : files) { + if (file.isDirectory()) { + success &= deleteContents(file); + } + if (!file.delete()) { + success = false; + } + } + } + return success; + } + + @Override + public void initDaggerComponent(LauncherBaseAppComponent.Builder componentBuilder) { + super.initDaggerComponent(componentBuilder.iconsDbName(null)); + } + } } diff --git a/tests/multivalentTests/src/com/android/launcher3/util/ModelTestExtensions.kt b/tests/multivalentTests/src/com/android/launcher3/util/ModelTestExtensions.kt index 5bddbe4166..524acff61d 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/ModelTestExtensions.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/ModelTestExtensions.kt @@ -3,7 +3,6 @@ package com.android.launcher3.util import android.content.ContentValues import android.database.sqlite.SQLiteDatabase import android.os.Process -import android.util.SparseArray import androidx.test.platform.app.InstrumentationRegistry import com.android.launcher3.Flags import com.android.launcher3.LauncherModel @@ -14,7 +13,6 @@ import com.android.launcher3.LauncherSettings.Favorites.CELLX import com.android.launcher3.LauncherSettings.Favorites.CELLY import com.android.launcher3.LauncherSettings.Favorites.CONTAINER import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_DESKTOP -import com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT import com.android.launcher3.LauncherSettings.Favorites.INTENT import com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE import com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APPLICATION @@ -27,8 +25,6 @@ import com.android.launcher3.LauncherSettings.Favorites.TITLE import com.android.launcher3.LauncherSettings.Favorites._ID import com.android.launcher3.model.BgDataModel import com.android.launcher3.model.ModelDbController -import com.android.launcher3.model.data.ItemInfo -import com.android.launcher3.util.Executors.MODEL_EXECUTOR import java.io.BufferedReader import java.io.InputStreamReader @@ -109,19 +105,6 @@ object ModelTestExtensions { } } - @JvmStatic - val LauncherModel.bgDataModel: BgDataModel - get() { - var data: BgDataModel? = null - enqueueModelUpdateTask { _, dataModel, _ -> data = dataModel } - TestUtil.runOnExecutorSync(MODEL_EXECUTOR) {} - return data!! - } - - /** Total number of items belonging to a non-predicted container */ - @JvmStatic - fun Iterable<ItemInfo>.nonPredictedItemCount() = count { it.container >= CONTAINER_HOTSEAT } - /** Creates an in-memory sqlite DB and initializes with the data in [insertFile] */ fun createInMemoryDb(insertFile: String): SQLiteDatabase = SQLiteDatabase.createInMemory(SQLiteDatabase.OpenParams.Builder().build()).also { db -> @@ -133,9 +116,4 @@ object ModelTestExtensions { .lines() .forEach { sqlStatement -> db.execSQL(sqlStatement) } } - - /** Initializes [BgDataModel.itemsIdMap] with provided [items] */ - fun BgDataModel.initItems(vararg items: ItemInfo) { - dataLoadComplete(SparseArray<ItemInfo>().apply { items.forEach { this[it.id] = it } }) - } } diff --git a/tests/multivalentTests/src/com/android/launcher3/util/SandboxApplication.kt b/tests/multivalentTests/src/com/android/launcher3/util/SandboxApplication.kt index 4669b8bec2..2fa4cad61d 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/SandboxApplication.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/SandboxApplication.kt @@ -16,39 +16,22 @@ package com.android.launcher3.util -import android.content.ContentProvider -import android.content.ContentResolver import android.content.Context import android.content.ContextParams import android.content.ContextWrapper import android.content.pm.ApplicationInfo -import android.content.pm.PackageManager -import android.content.pm.ProviderInfo import android.content.res.Configuration import android.os.Bundle import android.os.IBinder import android.os.UserHandle -import android.provider.Settings.Global -import android.provider.Settings.Secure -import android.provider.Settings.System -import android.test.mock.MockContentResolver -import android.util.ArrayMap import android.view.Display import androidx.test.core.app.ApplicationProvider -import com.android.launcher3.dagger.LauncherBaseAppComponent.Builder -import java.io.File -import java.util.UUID -import java.util.concurrent.CountDownLatch +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import org.junit.Rule import org.junit.rules.ExternalResource import org.junit.rules.TestRule import org.junit.runner.Description import org.junit.runners.model.Statement -import org.mockito.kotlin.any -import org.mockito.kotlin.doReturn -import org.mockito.kotlin.eq -import org.mockito.kotlin.spy -import org.mockito.kotlin.whenever /** * Sandbox application where created [Context] instances are still sandboxed within it. @@ -62,27 +45,13 @@ import org.mockito.kotlin.whenever * propagate this application (see [SandboxApplicationWrapper]). */ class SandboxApplication private constructor(private val base: SandboxApplicationWrapper) : - SandboxContext(base), TestRule { - - private val mockResolver = MockContentResolver() - private val spiedServices = ArrayMap<String, Any>() - private val packageManager = spy(baseContext.packageManager) - private val dbDir = File(cacheDir, UUID.randomUUID().toString()) - - private var lockModelThreadOnDestroy = false + SandboxModelContext(base), TestRule { @JvmOverloads constructor( base: Context = ApplicationProvider.getApplicationContext() ) : this(SandboxApplicationWrapper(base)) - init { - // System settings cache content provider. Ensure that they are statically initialized - Secure.getString(base.contentResolver, "test") - System.getString(base.contentResolver, "test") - Global.getString(base.contentResolver, "test") - } - /** * Initializes the sandbox application propagation logic. * @@ -102,74 +71,6 @@ class SandboxApplication private constructor(private val base: SandboxApplicatio return (app as? SandboxContext)?.shouldCleanUpOnDestroy() ?: true } - override fun getDatabasePath(name: String) = File(dbDir.apply { if (!exists()) mkdirs() }, name) - - override fun getContentResolver(): ContentResolver = mockResolver - - override fun cleanUpObjects() { - // When destroying the context, make sure that the model thread is blocked, so that no - // new jobs get posted while we are cleaning up - val modelLock = CountDownLatch(1) - val modelRelease = CountDownLatch(1) - if (lockModelThreadOnDestroy) { - Executors.MODEL_EXECUTOR.execute { - modelLock.countDown() - modelRelease.await() - } - modelLock.await() - } - if (deleteContents(dbDir)) { - dbDir.delete() - } - super.cleanUpObjects() - modelRelease.countDown() - } - - private fun deleteContents(dir: File): Boolean { - var success = true - dir.listFiles()?.forEach { - if (it.isDirectory) success = success and deleteContents(it) - if (!it.delete()) success = false - } - return success - } - - override fun initDaggerComponent(componentBuilder: Builder) { - super.initDaggerComponent(componentBuilder.iconsDbName(null)) - } - - override fun getPackageManager(): PackageManager = packageManager - - override fun getSystemService(name: String): Any? = - spiedServices[name] ?: super.getSystemService(name) - - fun <T> spyService(tClass: Class<T>): T { - val name = getSystemServiceName(tClass) - val service = spiedServices[name] - if (service != null) return service as T - - val result = spy(getSystemService(tClass)) - spiedServices[name] = result - return result - } - - fun setupProvider(authority: String, provider: ContentProvider) { - val providerInfo = ProviderInfo() - providerInfo.authority = authority - providerInfo.applicationInfo = applicationInfo - provider.attachInfo(this, providerInfo) - mockResolver.addProvider(providerInfo.authority, provider) - doReturn(providerInfo) - .whenever(packageManager) - .resolveContentProvider(eq(authority), any<Int>()) - } - - /** - * Notifies the rule to lock the model thread during cleanup operation so that no new tasks get - * posted - */ - fun withModelDependency() = this.apply { lockModelThreadOnDestroy = true } - override fun apply(statement: Statement, description: Description): Statement { return object : ExternalResource() { override fun before() = init() diff --git a/tests/multivalentTests/src/com/android/launcher3/util/SimpleBroadcastReceiverTest.kt b/tests/multivalentTests/src/com/android/launcher3/util/SimpleBroadcastReceiverTest.kt index 67b1f60370..97651d3dab 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/SimpleBroadcastReceiverTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/SimpleBroadcastReceiverTest.kt @@ -181,6 +181,6 @@ class SimpleBroadcastReceiverTest { } private fun awaitTasksCompleted() { - UI_HELPER_EXECUTOR.submit<Any?> { null }.get() + UI_HELPER_EXECUTOR.submit<Any> { null }.get() } } diff --git a/tests/multivalentTests/src/com/android/launcher3/util/TestDispatcherProvider.kt b/tests/multivalentTests/src/com/android/launcher3/util/TestDispatcherProvider.kt index 76ef8d43fd..3319c53c60 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/TestDispatcherProvider.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/TestDispatcherProvider.kt @@ -21,8 +21,7 @@ import kotlinx.coroutines.CoroutineDispatcher class TestDispatcherProvider(testDispatcher: CoroutineDispatcher) : DispatcherProvider { override val default: CoroutineDispatcher = testDispatcher - override val ioBackground: CoroutineDispatcher = testDispatcher - override val lightweightBackground: CoroutineDispatcher = testDispatcher + override val background: CoroutineDispatcher = testDispatcher override val main: CoroutineDispatcher = testDispatcher override val unconfined: CoroutineDispatcher = testDispatcher } diff --git a/tests/multivalentTests/src/com/android/launcher3/util/TestResourceHelper.kt b/tests/multivalentTests/src/com/android/launcher3/util/TestResourceHelper.kt index 7c76813426..d95c6f8b50 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/TestResourceHelper.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/TestResourceHelper.kt @@ -26,24 +26,21 @@ import kotlin.IntArray class TestResourceHelper(private val context: Context, specsFileId: Int) : ResourceHelper(context, specsFileId) { - val responsiveStyleables = - listOf( + val responsiveStyleables = listOf( R.styleable.SizeSpec, R.styleable.WorkspaceSpec, R.styleable.FolderSpec, R.styleable.AllAppsSpec, - R.styleable.ResponsiveSpecGroup, - R.styleable.ResponsiveSpec, - R.styleable.CellSpec, - ) + R.styleable.ResponsiveSpecGroup + ) override fun obtainStyledAttributes(attrs: AttributeSet, styleId: IntArray): TypedArray { val clone = - if (responsiveStyleables.any { styleId.contentEquals(it) }) { - convertStyleId(styleId) - } else { - styleId.clone() - } + if (responsiveStyleables.any { styleId.contentEquals(it) }) { + convertStyleId(styleId) + } else { + styleId.clone() + } return context.obtainStyledAttributes(attrs, clone) } diff --git a/tests/multivalentTests/src/com/android/launcher3/util/TestSandboxModelContextWrapper.java b/tests/multivalentTests/src/com/android/launcher3/util/TestSandboxModelContextWrapper.java index 8be13412e9..acd17d1586 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/TestSandboxModelContextWrapper.java +++ b/tests/multivalentTests/src/com/android/launcher3/util/TestSandboxModelContextWrapper.java @@ -28,6 +28,7 @@ import com.android.launcher3.allapps.ActivityAllAppsContainerView; import com.android.launcher3.allapps.AllAppsStore; import com.android.launcher3.allapps.AlphabeticalAppsList; import com.android.launcher3.model.BgDataModel; +import com.android.launcher3.model.WidgetsFilterDataProvider; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.pm.UserCache; import com.android.launcher3.popup.PopupDataProvider; @@ -58,7 +59,7 @@ public class TestSandboxModelContextWrapper extends ActivityContextWrapper imple private final PopupDataProvider mPopupDataProvider = new PopupDataProvider(this); private final WidgetPickerDataProvider mWidgetPickerDataProvider = - new WidgetPickerDataProvider(); + new WidgetPickerDataProvider(new WidgetsFilterDataProvider()); protected final UserCache mUserCache; public TestSandboxModelContextWrapper(SandboxContext base) { diff --git a/tests/multivalentTests/src/com/android/launcher3/util/VibratorWrapperTest.kt b/tests/multivalentTests/src/com/android/launcher3/util/VibratorWrapperTest.kt index 67ede5648e..0f212ebf9e 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/VibratorWrapperTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/VibratorWrapperTest.kt @@ -22,12 +22,12 @@ import android.os.VibrationEffect.Composition.PRIMITIVE_LOW_TICK import android.os.VibrationEffect.Composition.PRIMITIVE_TICK import android.os.Vibrator import androidx.test.filters.SmallTest +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.android.launcher3.util.VibratorWrapper.HAPTIC_FEEDBACK_URI import com.android.launcher3.util.VibratorWrapper.OVERVIEW_HAPTIC import com.android.launcher3.util.VibratorWrapper.VIBRATION_ATTRS import com.google.common.truth.Truth.assertThat import org.junit.Before -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.mockito.ArgumentCaptor @@ -46,7 +46,7 @@ class VibratorWrapperTest { @Mock private lateinit var settingsCache: SettingsCache private lateinit var vibrator: Vibrator - @get:Rule val context = SandboxApplication() + private val context: SandboxModelContext = SandboxModelContext() @Captor private lateinit var vibrationEffectCaptor: ArgumentCaptor<VibrationEffect> @Mock private lateinit var tracker: DaggerSingletonTracker private lateinit var underTest: VibratorWrapper @@ -131,6 +131,6 @@ class VibratorWrapperTest { } private fun awaitTasksCompleted() { - Executors.UI_HELPER_EXECUTOR.submit<Any?> { null }.get() + Executors.UI_HELPER_EXECUTOR.submit<Any> { null }.get() } } diff --git a/tests/multivalentTests/src/com/android/launcher3/util/rule/BackAndRestoreRule.kt b/tests/multivalentTests/src/com/android/launcher3/util/rule/BackAndRestoreRule.kt index bbce62be85..da96939a2b 100644 --- a/tests/multivalentTests/src/com/android/launcher3/util/rule/BackAndRestoreRule.kt +++ b/tests/multivalentTests/src/com/android/launcher3/util/rule/BackAndRestoreRule.kt @@ -16,7 +16,6 @@ package com.android.launcher3.util.rule -import android.content.Context import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation import com.android.launcher3.InvariantDeviceProfile import com.android.launcher3.LauncherPrefs @@ -32,12 +31,13 @@ import org.junit.runners.model.Statement * assets/databases/BackupAndRestore to the device. It also set's the needed LauncherPrefs variables * needed to kickstart a backup and restore. */ -class BackAndRestoreRule(private val phoneContext: Context = getInstrumentation().targetContext) : - TestRule { +class BackAndRestoreRule : TestRule { + + private val phoneContext = getInstrumentation().targetContext private fun dbBackUp() = File(phoneContext.dataDir.path, "/databasesBackUp") - private fun dbDirectory() = phoneContext.getDatabasePath("test").parentFile + private fun dbDirectory() = File(phoneContext.dataDir.path, "/databases") private fun isWorkspaceDatabase(rawFileName: String): Boolean { val fileName = Paths.get(rawFileName).fileName.pathString @@ -58,7 +58,7 @@ class BackAndRestoreRule(private val phoneContext: Context = getInstrumentation( } private fun uploadDatabase(dbName: String) { - val file = phoneContext.getDatabasePath(dbName) + val file = File(File(getInstrumentation().targetContext.dataDir, "/databases"), dbName) file.writeBytes( getInstrumentation() .context diff --git a/tests/multivalentTests/src/com/android/launcher3/widget/GeneratedPreviewTest.kt b/tests/multivalentTests/src/com/android/launcher3/widget/GeneratedPreviewTest.kt index b1e75184b5..6af095047d 100644 --- a/tests/multivalentTests/src/com/android/launcher3/widget/GeneratedPreviewTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/widget/GeneratedPreviewTest.kt @@ -17,14 +17,13 @@ import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation import com.android.launcher3.Flags.FLAG_ENABLE_GENERATED_PREVIEWS -import com.android.launcher3.InvariantDeviceProfile import com.android.launcher3.R import com.android.launcher3.icons.IconCache import com.android.launcher3.model.WidgetItem import com.android.launcher3.util.ActivityContextWrapper import com.android.launcher3.util.Executors import com.android.launcher3.util.Executors.MAIN_EXECUTOR -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.android.launcher3.util.TestUtil import com.google.common.truth.Truth.assertThat import org.junit.After @@ -53,23 +52,22 @@ class GeneratedPreviewTest { resources.getIdentifier("test_layout_appwidget_blue", "layout", packageName) } - @get:Rule val context = SandboxApplication() + private lateinit var context: SandboxModelContext private lateinit var uiContext: Context private lateinit var generatedPreview: RemoteViews private lateinit var widgetCell: WidgetCell private lateinit var appWidgetProviderInfo: LauncherAppWidgetProviderInfo private lateinit var widgetItem: WidgetItem - private lateinit var idp: InvariantDeviceProfile @Mock lateinit var iconCache: IconCache @Before fun setup() { MockitoAnnotations.initMocks(this) + context = SandboxModelContext() generatedPreview = RemoteViews(context.packageName, generatedPreviewLayout) uiContext = ActivityContextWrapper(ContextThemeWrapper(context, R.style.WidgetContainerTheme)) - idp = InvariantDeviceProfile.INSTANCE[uiContext] widgetCell = LayoutInflater.from(uiContext).inflate(R.layout.widget_cell, null) as WidgetCell appWidgetProviderInfo = @@ -101,6 +99,7 @@ class GeneratedPreviewTest { private fun createWidgetItem() { Executors.MODEL_EXECUTOR.submit { + val idp = context.appComponent.idp widgetItem = WidgetItem(appWidgetProviderInfo, idp, iconCache, context) } .get() @@ -110,17 +109,13 @@ class GeneratedPreviewTest { fun widgetItem_hasGeneratedPreview_noPreview() { appWidgetProviderInfo.generatedPreviewCategories = 0 createWidgetItem() - val preview = - DatabaseWidgetPreviewLoader(uiContext, idp.getDeviceProfile(uiContext)) - .generatePreviewInfoBg(widgetItem, 1, 1) + val preview = DatabaseWidgetPreviewLoader(uiContext).generatePreviewInfoBg(widgetItem, 1, 1) assertThat(preview.remoteViews).isNull() } @Test fun widgetItem_getGeneratedPreview() { - val preview = - DatabaseWidgetPreviewLoader(uiContext, idp.getDeviceProfile(uiContext)) - .generatePreviewInfoBg(widgetItem, 1, 1) + val preview = DatabaseWidgetPreviewLoader(uiContext).generatePreviewInfoBg(widgetItem, 1, 1) assertThat(preview.remoteViews).isEqualTo(generatedPreview) } diff --git a/tests/multivalentTests/src/com/android/launcher3/widget/custom/CustomWidgetManagerTest.kt b/tests/multivalentTests/src/com/android/launcher3/widget/custom/CustomWidgetManagerTest.kt index bed860ab2b..1c25db92be 100644 --- a/tests/multivalentTests/src/com/android/launcher3/widget/custom/CustomWidgetManagerTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/widget/custom/CustomWidgetManagerTest.kt @@ -24,9 +24,9 @@ import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation import com.android.launcher3.util.DaggerSingletonTracker +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.android.launcher3.util.PluginManagerWrapper import com.android.launcher3.util.SafeCloseable -import com.android.launcher3.util.SandboxApplication import com.android.launcher3.util.WidgetUtils import com.android.launcher3.widget.LauncherAppWidgetHostView import com.android.launcher3.widget.LauncherAppWidgetProviderInfo @@ -55,7 +55,7 @@ class CustomWidgetManagerTest { @get:Rule val setFlagsRule = SetFlagsRule() - @get:Rule val context = SandboxApplication() + private val context = SandboxModelContext() private lateinit var underTest: CustomWidgetManager @Mock private lateinit var pluginManager: PluginManagerWrapper diff --git a/tests/multivalentTests/src/com/android/launcher3/widget/picker/model/WidgetPickerDataProviderTest.kt b/tests/multivalentTests/src/com/android/launcher3/widget/picker/model/WidgetPickerDataProviderTest.kt index d55f56b7fd..c1827bc66d 100644 --- a/tests/multivalentTests/src/com/android/launcher3/widget/picker/model/WidgetPickerDataProviderTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/widget/picker/model/WidgetPickerDataProviderTest.kt @@ -40,7 +40,6 @@ import com.android.launcher3.widget.model.WidgetsListContentEntry import com.android.launcher3.widget.model.WidgetsListHeaderEntry import com.android.launcher3.widget.picker.model.WidgetPickerDataProvider.WidgetPickerDataChangeListener import com.google.common.truth.Truth.assertThat -import java.util.function.Predicate import org.junit.After import org.junit.Before import org.junit.Rule @@ -81,7 +80,7 @@ class WidgetPickerDataProviderTest { userHandle = UserHandle.CURRENT context = ActivityContextWrapper(ApplicationProvider.getApplicationContext()) testInvariantProfile = LauncherAppState.getIDP(context) - underTest = WidgetPickerDataProvider() + underTest = WidgetPickerDataProvider(context) doAnswer { invocation: InvocationOnMock -> val componentWithLabel = invocation.getArgument<Any>(0) as CachedObject componentWithLabel.getComponent().shortClassName @@ -110,29 +109,6 @@ class WidgetPickerDataProviderTest { verifyNoMoreInteractions(changeListener) } - @Test - fun setWidgets_filtersDefaultWidgets_whenHostFilterSpecified() { - assertThat(underTest.get().allWidgets).isEmpty() - // Filter that removes appWidgetItem2 from default widgets - underTest.hostSpecifiedDefaultWidgetsFilter = - Predicate<WidgetItem> { w -> - w.widgetInfo.component.className != APP_PROVIDER_2_CLASS_NAME - } - val appWidgetItem2 = createWidgetItem(APP_PROVIDER_2_CLASS_NAME) - underTest.setChangeListener(changeListener) - - val allWidgets = appWidgetListBaseEntries(listOf(appWidgetItem, appWidgetItem2)) - underTest.setWidgets(allWidgets = allWidgets) - - assertThat(underTest.get().allWidgets).containsExactlyElementsIn(allWidgets) - underTest.get().defaultWidgets.forEach { - assertThat(it.mWidgets).containsExactly(appWidgetItem) - } - - verify(changeListener, times(1)).onWidgetsBound() - verifyNoMoreInteractions(changeListener) - } - @Test fun setWidgetRecommendations_callsBackTheListener_andUpdatedRecommendationsAvailable() { underTest.setWidgets(allWidgets = appWidgetListBaseEntries()) @@ -171,22 +147,19 @@ class WidgetPickerDataProviderTest { verifyNoMoreInteractions(changeListener) } - private fun createWidgetItem( - providerClassName: String = APP_PROVIDER_1_CLASS_NAME - ): WidgetItem { + private fun createWidgetItem(): WidgetItem { val providerInfo = WidgetUtils.createAppWidgetProviderInfo( - ComponentName.createRelative(APP_PACKAGE_NAME, providerClassName) + ComponentName.createRelative(APP_PACKAGE_NAME, APP_PROVIDER_1_CLASS_NAME) ) val widgetInfo = LauncherAppWidgetProviderInfo.fromProviderInfo(context, providerInfo) return WidgetItem(widgetInfo, testInvariantProfile, iconCache, context) } - private fun appWidgetListBaseEntries( - widgets: List<WidgetItem> = listOf(appWidgetItem) - ): List<WidgetsListBaseEntry> { + private fun appWidgetListBaseEntries(): List<WidgetsListBaseEntry> { val packageItemInfo = PackageItemInfo(APP_PACKAGE_NAME, userHandle) packageItemInfo.title = APP_PACKAGE_TITLE + val widgets = listOf(appWidgetItem) return buildList { add(WidgetsListHeaderEntry.create(packageItemInfo, APP_SECTION_NAME, widgets)) @@ -199,6 +172,5 @@ class WidgetPickerDataProviderTest { const val APP_PACKAGE_TITLE = "SomeApp" const val APP_SECTION_NAME = "S" // for fast popup const val APP_PROVIDER_1_CLASS_NAME = "appProvider1" - const val APP_PROVIDER_2_CLASS_NAME = "appProvider2" } } diff --git a/tests/multivalentTests/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSizesTest.kt b/tests/multivalentTests/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSizesTest.kt index 65bf6a2006..2452a88b14 100644 --- a/tests/multivalentTests/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSizesTest.kt +++ b/tests/multivalentTests/src/com/android/launcher3/widget/picker/util/WidgetPreviewContainerSizesTest.kt @@ -134,7 +134,7 @@ class WidgetPreviewContainerSizesTest { ) private fun getTestSizes(dp: DeviceProfile) = - if (dp.deviceProperties.isTablet && !dp.deviceProperties.isTwoPanels) { + if (dp.isTablet && !dp.isTwoPanels) { TABLET_TEST_SIZES } else { HANDHELD_TEST_SIZES diff --git a/tests/multivalentTests/src/com/android/launcher3/widget/picker/util/WidgetsTableUtilsTest.java b/tests/multivalentTests/src/com/android/launcher3/widget/picker/util/WidgetsTableUtilsTest.java index 1bcfe283bb..a17e472d2f 100644 --- a/tests/multivalentTests/src/com/android/launcher3/widget/picker/util/WidgetsTableUtilsTest.java +++ b/tests/multivalentTests/src/com/android/launcher3/widget/picker/util/WidgetsTableUtilsTest.java @@ -36,7 +36,6 @@ import androidx.test.filters.SmallTest; import com.android.launcher3.DeviceProfile; import com.android.launcher3.InvariantDeviceProfile; import com.android.launcher3.LauncherAppState; -import com.android.launcher3.deviceprofile.AllAppsProfile; import com.android.launcher3.icons.IconCache; import com.android.launcher3.icons.cache.BaseIconCache; import com.android.launcher3.icons.cache.CachedObject; @@ -246,8 +245,6 @@ public final class WidgetsTableUtilsTest { DeviceProfile dp = LauncherAppState.getIDP(mContext) .getDeviceProfile(mContext).copy(mContext); mTestDeviceProfile = Mockito.spy(dp); - AllAppsProfile testAllAppsProfile = Mockito.spy(mTestDeviceProfile.getAllAppsProfile()); - Mockito.doReturn(0).when(testAllAppsProfile).getIconSizePx(); doAnswer(i -> { ((Point) i.getArgument(0)).set(CELL_SIZE, CELL_SIZE); @@ -256,6 +253,7 @@ public final class WidgetsTableUtilsTest { when(mTestDeviceProfile.getCellSize()).thenReturn(new Point(CELL_SIZE, CELL_SIZE)); mTestDeviceProfile.cellLayoutBorderSpacePx = new Point(SPACE_SIZE, SPACE_SIZE); mTestDeviceProfile.widgetPadding.setEmpty(); + mTestDeviceProfile.allAppsIconSizePx = 0; } private void initTestWidgets() { diff --git a/tests/res/values/attrs.xml b/tests/res/values/attrs.xml index 793e5eb112..2a7a3461c2 100644 --- a/tests/res/values/attrs.xml +++ b/tests/res/values/attrs.xml @@ -45,13 +45,6 @@ <attr name="maxAvailableSize" /> </declare-styleable> - <declare-styleable name="CellSpec"> - <attr name="dimensionType" /> - <attr name="maxAvailableSize" /> - <attr name="maxLineCount" format="integer" /> - <attr name="maxLineCountMatchesWorkspace" format="boolean" /> - </declare-styleable> - <declare-styleable name="SizeSpec"> <attr name="fixedSize" format="dimension" /> <attr name="ofAvailableSpace" format="float" /> diff --git a/tests/res/xml/appwidget_no_config_large.xml b/tests/res/xml/appwidget_no_config_large.xml index 56a64abf9e..b3b69d92d7 100644 --- a/tests/res/xml/appwidget_no_config_large.xml +++ b/tests/res/xml/appwidget_no_config_large.xml @@ -6,7 +6,7 @@ android:minResizeWidth="1dp" android:maxResizeWidth="3000dp" android:targetCellHeight="1" - android:targetCellWidth="4" + android:targetCellWidth="5" android:updatePeriodMillis="86400000" android:initialLayout="@layout/test_layout_appwidget_red" android:previewLayout="@layout/test_layout_appwidget_red" diff --git a/tests/src/com/android/launcher3/LauncherIntentTest.java b/tests/src/com/android/launcher3/LauncherIntentTest.java index a3ddff54cd..a3d9614560 100644 --- a/tests/src/com/android/launcher3/LauncherIntentTest.java +++ b/tests/src/com/android/launcher3/LauncherIntentTest.java @@ -47,14 +47,14 @@ public class LauncherIntentTest extends BaseLauncherActivityTest<Launcher> { @Test public void testAllAppsIntent() { // Try executing ALL_APPS intent - getLauncherActivity().executeOnLauncher(launcher -> launcher.onNewIntent(allAppsIntent)); + executeOnLauncher(launcher -> launcher.onNewIntent(allAppsIntent)); // A-Z view with Main adapter should be loaded assertOnMainAdapterAToZView(); // Try Moving to search view now moveToSearchView(); // Try executing ALL_APPS intent - getLauncherActivity().executeOnLauncher(launcher -> launcher.onNewIntent(allAppsIntent)); + executeOnLauncher(launcher -> launcher.onNewIntent(allAppsIntent)); // A-Z view with Main adapter should be loaded assertOnMainAdapterAToZView(); } @@ -63,28 +63,26 @@ public class LauncherIntentTest extends BaseLauncherActivityTest<Launcher> { private void moveToSearchView() { // All Apps view should be loaded assertTrue("Launcher internal state is not All Apps", - getLauncherActivity().isInState(() -> LauncherState.ALL_APPS)); - getLauncherActivity().executeOnLauncher( - launcher -> launcher.getAppsView().getSearchView().requestFocus() - ); + isInState(() -> LauncherState.ALL_APPS)); + executeOnLauncher(launcher -> launcher.getAppsView().getSearchView().requestFocus()); // Search view should be in focus waitForLauncherCondition("Search view is not in focus.", launcher -> launcher.getAppsView().getSearchView().hasFocus()); - getLauncherActivity().injectKeyEvent(KeyEvent.KEYCODE_C, true); + injectKeyEvent(KeyEvent.KEYCODE_C, true); // Upon key press, search recycler view should be loaded waitForLauncherCondition("Search view not active.", launcher -> launcher.getAppsView().getActiveRecyclerView() instanceof SearchRecyclerView); - getLauncherActivity().injectKeyEvent(KeyEvent.KEYCODE_C, false); + injectKeyEvent(KeyEvent.KEYCODE_C, false); } // Checks if main adapter view is selected, search bar is out of focus and scroller is at start. private void assertOnMainAdapterAToZView() { // All Apps State should be loaded assertTrue("Launcher internal state is not All Apps", - getLauncherActivity().isInState(() -> LauncherState.ALL_APPS)); + isInState(() -> LauncherState.ALL_APPS)); // A-Z recycler view should be active. waitForLauncherCondition("A-Z view not active.", @@ -98,12 +96,8 @@ public class LauncherIntentTest extends BaseLauncherActivityTest<Launcher> { waitForLauncherCondition("Search view has focus.", launcher -> !launcher.getAppsView().getSearchView().hasFocus()); // Scroller should be at top - getLauncherActivity().executeOnLauncher(launcher -> - assertEquals( - "All Apps started in already scrolled state", - 0, - launcher.getAppsView().getActiveRecyclerView().computeVerticalScrollOffset() - ) - ); + executeOnLauncher(launcher -> assertEquals( + "All Apps started in already scrolled state", 0, + getAllAppsScroll(launcher))); } } diff --git a/tests/src/com/android/launcher3/allapps/KeyboardFocusTest.java b/tests/src/com/android/launcher3/allapps/KeyboardFocusTest.java index e23868701e..44df5b8e0a 100644 --- a/tests/src/com/android/launcher3/allapps/KeyboardFocusTest.java +++ b/tests/src/com/android/launcher3/allapps/KeyboardFocusTest.java @@ -35,11 +35,11 @@ public class KeyboardFocusTest extends BaseLauncherActivityTest<Launcher> { @Test public void testAllAppsFocusApp() { loadLauncherSync(); - getLauncherActivity().goToState(LauncherState.ALL_APPS); + goToState(LauncherState.ALL_APPS); freezeAllApps(); - getLauncherActivity().injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, true); - getLauncherActivity().injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, false); + injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, true); + injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, false); waitForLauncherCondition("No focused child", launcher -> launcher.getAppsView().getActiveRecyclerView().getApps().getFocusedChild() != null); @@ -48,16 +48,15 @@ public class KeyboardFocusTest extends BaseLauncherActivityTest<Launcher> { @Test public void testAllAppsExitSearchAndFocusApp() { loadLauncherSync(); - getLauncherActivity().goToState(LauncherState.ALL_APPS); + goToState(LauncherState.ALL_APPS); freezeAllApps(); - getLauncherActivity().executeOnLauncher( - launcher -> launcher.getAppsView().getSearchView().requestFocus()); + executeOnLauncher(launcher -> launcher.getAppsView().getSearchView().requestFocus()); waitForLauncherCondition("Search view does not have focus.", launcher -> launcher.getAppsView().getSearchView().hasFocus()); - getLauncherActivity().injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, true); - getLauncherActivity().injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, false); + injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, true); + injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, false); waitForLauncherCondition("No focused child", launcher -> launcher.getAppsView().getActiveRecyclerView().getApps().getFocusedChild() != null); @@ -66,28 +65,26 @@ public class KeyboardFocusTest extends BaseLauncherActivityTest<Launcher> { @Test public void testAllAppsExitSearchAndFocusSearchResults() { loadLauncherSync(); - getLauncherActivity().goToState(LauncherState.ALL_APPS); + goToState(LauncherState.ALL_APPS); freezeAllApps(); - getLauncherActivity().executeOnLauncher( - launcher -> launcher.getAppsView().getSearchView().requestFocus()); + executeOnLauncher(launcher -> launcher.getAppsView().getSearchView().requestFocus()); waitForLauncherCondition("Search view does not have focus.", launcher -> launcher.getAppsView().getSearchView().hasFocus()); - getLauncherActivity().injectKeyEvent(KeyEvent.KEYCODE_C, true); + injectKeyEvent(KeyEvent.KEYCODE_C, true); waitForLauncherCondition("Search view not active.", launcher -> launcher.getAppsView().getActiveRecyclerView() instanceof SearchRecyclerView); - getLauncherActivity().injectKeyEvent(KeyEvent.KEYCODE_C, false); + injectKeyEvent(KeyEvent.KEYCODE_C, false); - getLauncherActivity().executeOnLauncher( - launcher -> launcher.getAppsView().getSearchUiManager().getEditText() - .hideKeyboard(/* clearFocus= */ false)); + executeOnLauncher(launcher -> launcher.getAppsView().getSearchUiManager().getEditText() + .hideKeyboard(/* clearFocus= */ false)); waitForLauncherCondition("Keyboard still visible.", ActivityContext::isSoftwareKeyboardHidden); - getLauncherActivity().injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, true); - getLauncherActivity().injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, false); + injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, true); + injectKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN, false); waitForLauncherCondition("No focused child", launcher -> launcher.getAppsView().getActiveRecyclerView().getApps().getFocusedChild() != null); diff --git a/tests/src/com/android/launcher3/allapps/TaplAllAppsIconsWorkingTest.java b/tests/src/com/android/launcher3/allapps/TaplAllAppsIconsWorkingTest.java index 6be4850c46..0b233e5492 100644 --- a/tests/src/com/android/launcher3/allapps/TaplAllAppsIconsWorkingTest.java +++ b/tests/src/com/android/launcher3/allapps/TaplAllAppsIconsWorkingTest.java @@ -18,14 +18,12 @@ package com.android.launcher3.allapps; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; -import android.view.View; - import com.android.launcher3.Launcher; import com.android.launcher3.LauncherState; import com.android.launcher3.tapl.AppIcon; import com.android.launcher3.tapl.HomeAllApps; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; -import com.android.launcher3.util.ui.PortraitLandscapeRunner.PortraitLandscape; +import com.android.launcher3.ui.AbstractLauncherUiTest; +import com.android.launcher3.ui.PortraitLandscapeRunner.PortraitLandscape; import org.junit.Test; @@ -33,7 +31,7 @@ import org.junit.Test; * The test runs in Out of process (Oop) and in process. * Makes sure the basic behaviors of Icons on AllApps are working. */ -public class TaplAllAppsIconsWorkingTest extends AbstractLauncherUiTest<Launcher, View> { +public class TaplAllAppsIconsWorkingTest extends AbstractLauncherUiTest<Launcher> { /** * Makes sure we can launch an icon from All apps diff --git a/tests/src/com/android/launcher3/allapps/TaplOpenCloseAllAppsTest.java b/tests/src/com/android/launcher3/allapps/TaplOpenCloseAllAppsTest.java index 4bc7138e28..c7c9dbb4bb 100644 --- a/tests/src/com/android/launcher3/allapps/TaplOpenCloseAllAppsTest.java +++ b/tests/src/com/android/launcher3/allapps/TaplOpenCloseAllAppsTest.java @@ -24,15 +24,14 @@ import static org.junit.Assume.assumeTrue; import android.content.Intent; import android.platform.test.annotations.PlatinumTest; -import android.view.View; import androidx.test.platform.app.InstrumentationRegistry; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherState; import com.android.launcher3.tapl.AllApps; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; -import com.android.launcher3.util.ui.PortraitLandscapeRunner.PortraitLandscape; +import com.android.launcher3.ui.AbstractLauncherUiTest; +import com.android.launcher3.ui.PortraitLandscapeRunner.PortraitLandscape; import org.junit.Test; @@ -40,7 +39,7 @@ import org.junit.Test; * Test that we can open and close the all apps in multiple situations. * The test runs in Out of process (Oop) and in process. */ -public class TaplOpenCloseAllAppsTest extends AbstractLauncherUiTest<Launcher, View> { +public class TaplOpenCloseAllAppsTest extends AbstractLauncherUiTest<Launcher> { public static final String READ_DEVICE_CONFIG_PERMISSION = "android.permission.READ_DEVICE_CONFIG"; diff --git a/tests/src/com/android/launcher3/appiconmenu/TaplAppIconMenuTest.java b/tests/src/com/android/launcher3/appiconmenu/TaplAppIconMenuTest.java index 3a7232ca9d..55d3252843 100644 --- a/tests/src/com/android/launcher3/appiconmenu/TaplAppIconMenuTest.java +++ b/tests/src/com/android/launcher3/appiconmenu/TaplAppIconMenuTest.java @@ -21,7 +21,6 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import android.platform.test.annotations.PlatinumTest; -import android.view.View; import com.android.launcher3.Launcher; import com.android.launcher3.popup.ArrowPopup; @@ -29,8 +28,8 @@ import com.android.launcher3.tapl.AllApps; import com.android.launcher3.tapl.AppIconMenu; import com.android.launcher3.tapl.AppIconMenuItem; import com.android.launcher3.tapl.HomeAllApps; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; -import com.android.launcher3.util.ui.PortraitLandscapeRunner.PortraitLandscape; +import com.android.launcher3.ui.AbstractLauncherUiTest; +import com.android.launcher3.ui.PortraitLandscapeRunner.PortraitLandscape; import org.junit.Test; @@ -39,7 +38,7 @@ import org.junit.Test; * Tests the AppIconMenu (the menu that appears when you long press an app icon) and also make sure * we can launch a shortcut from it. */ -public class TaplAppIconMenuTest extends AbstractLauncherUiTest<Launcher, View> { +public class TaplAppIconMenuTest extends AbstractLauncherUiTest<Launcher> { private boolean isOptionsPopupVisible(Launcher launcher) { final ArrowPopup<?> popup = launcher.getOptionsPopup(); diff --git a/tests/src/com/android/launcher3/backuprestore/BackupAndRestoreDBSelectionTest.kt b/tests/src/com/android/launcher3/backuprestore/BackupAndRestoreDBSelectionTest.kt index cf73e83265..34d9d40d67 100644 --- a/tests/src/com/android/launcher3/backuprestore/BackupAndRestoreDBSelectionTest.kt +++ b/tests/src/com/android/launcher3/backuprestore/BackupAndRestoreDBSelectionTest.kt @@ -16,31 +16,26 @@ package com.android.launcher3.backuprestore -import android.database.sqlite.SQLiteDatabase import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.SetFlagsRule import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.MediumTest +import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation import com.android.launcher3.Flags import com.android.launcher3.LauncherAppState import com.android.launcher3.LauncherPrefs import com.android.launcher3.model.ModelDelegate import com.android.launcher3.provider.RestoreDbTask import com.android.launcher3.util.Executors.MODEL_EXECUTOR -import com.android.launcher3.util.SandboxApplication import com.android.launcher3.util.TestUtil import com.android.launcher3.util.rule.BackAndRestoreRule -import java.io.File -import java.nio.file.Files +import com.android.launcher3.util.rule.setFlags +import org.junit.Before import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.kotlin.any -import org.mockito.kotlin.doAnswer import org.mockito.kotlin.mock -import org.mockito.kotlin.spy -import org.mockito.kotlin.whenever /** * Makes sure to test {@code RestoreDbTask#removeOldDBs}, we need to remove all the dbs that are not @@ -50,32 +45,16 @@ import org.mockito.kotlin.whenever @MediumTest class BackupAndRestoreDBSelectionTest { + @get:Rule var backAndRestoreRule = BackAndRestoreRule() @get:Rule val setFlagsRule = SetFlagsRule() - @get:Rule - val context = - spy(SandboxApplication()).apply { - val tempDir = Files.createTempDirectory(filesDir.toPath(), "bnr_test").toFile() - doAnswer { File(tempDir, it.getArgument(0, String::class.java)) } - .whenever(this) - .getDatabasePath(any()) - - doAnswer { - try { - SQLiteDatabase.deleteDatabase( - getDatabasePath(it.getArgument(0, String::class.java)) - ) - } catch (e: Exception) { - false - } - } - .whenever(this) - .deleteDatabase(any()) - } - - @get:Rule var backAndRestoreRule = BackAndRestoreRule(context) val modelDelegate = mock<ModelDelegate>() + @Before + fun setUp() { + setFlagsRule.setFlags(true, Flags.FLAG_ENABLE_NARROW_GRID_RESTORE) + } + @EnableFlags(Flags.FLAG_GRID_MIGRATION_REFACTOR) fun oldDatabasesNotPresentAfterRestoreRefactorFlagEnabled() { oldDatabasesNotPresentAfterRestore() @@ -88,7 +67,8 @@ class BackupAndRestoreDBSelectionTest { @Test fun oldDatabasesNotPresentAfterRestore() { - val dbController = LauncherAppState.getInstance(context).model.modelDbController + val dbController = + LauncherAppState.getInstance(getInstrumentation().targetContext).model.modelDbController if (Flags.gridMigrationRefactor()) { dbController.attemptMigrateDb(null, modelDelegate) } else { @@ -98,7 +78,10 @@ class BackupAndRestoreDBSelectionTest { assert(backAndRestoreRule.getDatabaseFiles().size == 1) { "There should only be one database after restoring, the last one used. Actual databases ${backAndRestoreRule.getDatabaseFiles()}" } - assert(!LauncherPrefs.get(context).has(LauncherPrefs.RESTORE_DEVICE)) { + assert( + !LauncherPrefs.get(getInstrumentation().targetContext) + .has(LauncherPrefs.RESTORE_DEVICE) + ) { "RESTORE_DEVICE shouldn't be present after a backup and restore." } } @@ -106,10 +89,10 @@ class BackupAndRestoreDBSelectionTest { @Test fun testExistingDbsAndRemovingDbs() { - var existingDbs = RestoreDbTask.existingDbs(context) + var existingDbs = RestoreDbTask.existingDbs(getInstrumentation().targetContext) assert(existingDbs.size == 4) - RestoreDbTask.removeOldDBs(context, "launcher_4_by_4.db") - existingDbs = RestoreDbTask.existingDbs(context) + RestoreDbTask.removeOldDBs(getInstrumentation().targetContext, "launcher_4_by_4.db") + existingDbs = RestoreDbTask.existingDbs(getInstrumentation().targetContext) assert(existingDbs.size == 1) } } diff --git a/tests/src/com/android/launcher3/compat/PromiseIconUiTest.java b/tests/src/com/android/launcher3/compat/PromiseIconUiTest.java index 67b13794ee..f494f38603 100644 --- a/tests/src/com/android/launcher3/compat/PromiseIconUiTest.java +++ b/tests/src/com/android/launcher3/compat/PromiseIconUiTest.java @@ -69,6 +69,7 @@ public class PromiseIconUiTest extends BaseLauncherActivityTest<Launcher> { @Before public void setUp() throws Exception { loadLauncherSync(); + goToState(LauncherState.NORMAL); mSessionId = -1; } @@ -148,7 +149,7 @@ public class PromiseIconUiTest extends BaseLauncherActivityTest<Launcher> { // Verify promise icon is added to all apps view. The icon may not be added to the // workspace even if there might be no icon present for archived app. But icon will // always be in all apps view. In case an icon is not added, an exception would be thrown. - getLauncherActivity().goToState(LauncherState.ALL_APPS); + goToState(LauncherState.ALL_APPS); // Wait for the promise icon to be added. waitForLauncherCondition( diff --git a/tests/src/com/android/launcher3/dragging/TaplDragTest.java b/tests/src/com/android/launcher3/dragging/TaplDragTest.java index d7ce08acd4..2e02eb0591 100644 --- a/tests/src/com/android/launcher3/dragging/TaplDragTest.java +++ b/tests/src/com/android/launcher3/dragging/TaplDragTest.java @@ -29,7 +29,6 @@ import android.graphics.Point; import android.os.SystemClock; import android.platform.test.annotations.PlatinumTest; import android.util.Log; -import android.view.View; import com.android.launcher3.Launcher; import com.android.launcher3.tapl.Folder; @@ -38,10 +37,10 @@ import com.android.launcher3.tapl.HomeAllApps; import com.android.launcher3.tapl.HomeAppIcon; import com.android.launcher3.tapl.HomeAppIconMenuItem; import com.android.launcher3.tapl.Workspace; +import com.android.launcher3.ui.AbstractLauncherUiTest; +import com.android.launcher3.ui.PortraitLandscapeRunner.PortraitLandscape; import com.android.launcher3.util.TestUtil; import com.android.launcher3.util.rule.ScreenRecordRule; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; -import com.android.launcher3.util.ui.PortraitLandscapeRunner.PortraitLandscape; import org.junit.Test; @@ -55,7 +54,7 @@ import org.junit.Test; * * Can drag an icon from AllApps into the workspace * * Can drag an icon on the Workspace to other positions of the Workspace. */ -public class TaplDragTest extends AbstractLauncherUiTest<Launcher, View> { +public class TaplDragTest extends AbstractLauncherUiTest<Launcher> { /** * Adds two icons to the Workspace and combines them into a folder, then makes sure the icons diff --git a/tests/src/com/android/launcher3/dragging/TaplUninstallRemoveTest.java b/tests/src/com/android/launcher3/dragging/TaplUninstallRemoveTest.java index c9669a0fbe..a03c1612c1 100644 --- a/tests/src/com/android/launcher3/dragging/TaplUninstallRemoveTest.java +++ b/tests/src/com/android/launcher3/dragging/TaplUninstallRemoveTest.java @@ -15,6 +15,7 @@ */ package com.android.launcher3.dragging; +import static com.android.launcher3.testing.shared.TestProtocol.ICON_MISSING; import static com.android.launcher3.util.TestConstants.AppNames.DUMMY_APP_NAME; import static com.android.launcher3.util.TestConstants.AppNames.GMAIL_APP_NAME; import static com.android.launcher3.util.TestConstants.AppNames.MAPS_APP_NAME; @@ -25,16 +26,17 @@ import static com.google.common.truth.Truth.assertThat; import android.graphics.Point; import android.platform.test.annotations.PlatinumTest; -import android.view.View; +import android.platform.test.rule.ScreenRecordRule; +import android.util.Log; import com.android.launcher3.Launcher; import com.android.launcher3.tapl.HomeAllApps; import com.android.launcher3.tapl.HomeAppIcon; import com.android.launcher3.tapl.Workspace; +import com.android.launcher3.ui.AbstractLauncherUiTest; +import com.android.launcher3.ui.PortraitLandscapeRunner.PortraitLandscape; import com.android.launcher3.util.TestUtil; import com.android.launcher3.util.Wait; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; -import com.android.launcher3.util.ui.PortraitLandscapeRunner.PortraitLandscape; import org.junit.Test; @@ -45,7 +47,7 @@ import java.util.Arrays; * Test runs in Out of process (Oop) and In process (Ipc) * Test the behaviour of uninstalling and removing apps both from AllApps, Workspace and Hotseat. */ -public class TaplUninstallRemoveTest extends AbstractLauncherUiTest<Launcher, View> { +public class TaplUninstallRemoveTest extends AbstractLauncherUiTest<Launcher> { /** * Deletes app both built-in and user-installed from the Workspace and makes sure it's no longer @@ -106,6 +108,7 @@ public class TaplUninstallRemoveTest extends AbstractLauncherUiTest<Launcher, Vi @Test @PortraitLandscape @PlatinumTest(focusArea = "launcher") + @ScreenRecordRule.ScreenRecord // b/386231522 public void testUninstallFromAllApps() throws Exception { // Ensure no existing app icons on the workspace cause scroll to all apps interruptions mLauncher.clearLauncherData(); @@ -132,6 +135,7 @@ public class TaplUninstallRemoveTest extends AbstractLauncherUiTest<Launcher, Vi for (Point p : gridPositions) { sb.append(p).append(", "); } + Log.d(ICON_MISSING, "allGridPositions: " + sb); try { installDummyAppAndWaitForUIUpdate(); diff --git a/tests/src/com/android/launcher3/folder/PreviewItemManagerTest.kt b/tests/src/com/android/launcher3/folder/PreviewItemManagerTest.kt index 2eac5c0036..c956395503 100644 --- a/tests/src/com/android/launcher3/folder/PreviewItemManagerTest.kt +++ b/tests/src/com/android/launcher3/folder/PreviewItemManagerTest.kt @@ -17,14 +17,13 @@ package com.android.launcher3.folder import android.R -import android.content.ComponentName import android.os.Process import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn import com.android.launcher3.LauncherAppState import com.android.launcher3.LauncherPrefs -import com.android.launcher3.LauncherSettings.Favorites.DESKTOP_ICON_FLAG +import com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_FOLDER import com.android.launcher3.dagger.LauncherAppComponent import com.android.launcher3.dagger.LauncherAppSingleton import com.android.launcher3.graphics.PreloadIconDrawable @@ -35,7 +34,6 @@ import com.android.launcher3.icons.IconCache import com.android.launcher3.icons.IconCache.ItemInfoUpdateReceiver import com.android.launcher3.icons.PlaceHolderIconDrawable import com.android.launcher3.icons.UserBadgeDrawable -import com.android.launcher3.model.data.AppInfo import com.android.launcher3.model.data.FolderInfo import com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_ARCHIVED import com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_INSTALL_SESSION_ACTIVE @@ -43,15 +41,11 @@ import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.util.ActivityContextWrapper import com.android.launcher3.util.AllModulesForTest import com.android.launcher3.util.Executors -import com.android.launcher3.util.Executors.MODEL_EXECUTOR import com.android.launcher3.util.FakePrefsModule import com.android.launcher3.util.FlagOp -import com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY -import com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY2 -import com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY3 -import com.android.launcher3.util.LauncherModelHelper.TEST_ACTIVITY4 -import com.android.launcher3.util.LauncherModelHelper.TEST_PACKAGE -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.LauncherLayoutBuilder +import com.android.launcher3.util.LauncherModelHelper +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.android.launcher3.util.TestUtil import com.android.launcher3.util.UserIconInfo import com.google.common.truth.Truth.assertThat @@ -60,6 +54,7 @@ import kotlin.annotation.AnnotationRetention.RUNTIME import kotlin.annotation.AnnotationTarget.FUNCTION import kotlin.annotation.AnnotationTarget.PROPERTY_GETTER import kotlin.annotation.AnnotationTarget.PROPERTY_SETTER +import org.junit.After import org.junit.Before import org.junit.Rule import org.junit.Test @@ -80,17 +75,20 @@ import org.mockito.kotlin.whenever @RunWith(AndroidJUnit4::class) class PreviewItemManagerTest { - @get:Rule val context = SandboxApplication().withModelDependency() @get:Rule val theseStateRule = ThemeStateRule() private lateinit var previewItemManager: PreviewItemManager + private lateinit var context: SandboxModelContext private lateinit var folderItems: ArrayList<WorkspaceItemInfo> + private lateinit var modelHelper: LauncherModelHelper private lateinit var folderIcon: FolderIcon private lateinit var iconCache: IconCache @Before fun setup() { MockitoAnnotations.initMocks(this) + modelHelper = LauncherModelHelper() + context = modelHelper.sandboxContext context.initDaggerComponent(DaggerPreviewItemManagerTestComponent.builder()) theseStateRule.themeState?.let { LauncherPrefs.get(context).putSync(ThemeManager.THEMED_ICONS.to(it)) @@ -99,18 +97,25 @@ class PreviewItemManagerTest { iconCache = LauncherAppState.INSTANCE[context].iconCache spyOn(iconCache) - doReturn(null).whenever(iconCache).updateIconInBackground(any(), any(), any()) + doReturn(null).whenever(iconCache).updateIconInBackground(any(), any()) previewItemManager = PreviewItemManager(folderIcon) + modelHelper + .setupDefaultLayoutProvider( + LauncherLayoutBuilder() + .atWorkspace(0, 0, 1) + .putFolder(R.string.copy) + .addApp(LauncherModelHelper.TEST_PACKAGE, LauncherModelHelper.TEST_ACTIVITY) + .addApp(LauncherModelHelper.TEST_PACKAGE, LauncherModelHelper.TEST_ACTIVITY2) + .addApp(LauncherModelHelper.TEST_PACKAGE, LauncherModelHelper.TEST_ACTIVITY3) + .addApp(LauncherModelHelper.TEST_PACKAGE, LauncherModelHelper.TEST_ACTIVITY4) + .build() + ) + .loadModelSync() folderIcon.mInfo = - FolderInfo().apply { - title = context.getString(R.string.copy) - add(buildWorkspaceItemInfo(TEST_ACTIVITY)) - add(buildWorkspaceItemInfo(TEST_ACTIVITY2)) - add(buildWorkspaceItemInfo(TEST_ACTIVITY3)) - add(buildWorkspaceItemInfo(TEST_ACTIVITY4)) - } + modelHelper.bgDataModel.itemsIdMap.find { it.itemType == ITEM_TYPE_FOLDER } + as FolderInfo // Use getAppContents() to "cast" contents to WorkspaceItemInfo so we can set bitmaps folderItems = folderIcon.mInfo.getAppContents() @@ -127,6 +132,12 @@ class PreviewItemManagerTest { folderItems[3].bitmap.themedBitmap = null } + @After + @Throws(Exception::class) + fun tearDown() { + modelHelper.destroy() + } + @Test @MonoThemeEnabled(true) fun checkThemedIconWithThemingOn_iconShouldBeThemed() { @@ -134,7 +145,7 @@ class PreviewItemManagerTest { previewItemManager.setDrawable(drawingParams, folderItems[0]) - assert((drawingParams.drawable as FastBitmapDrawable).isThemed()) + assert((drawingParams.drawable as FastBitmapDrawable).isThemed) } @Test @@ -144,7 +155,7 @@ class PreviewItemManagerTest { previewItemManager.setDrawable(drawingParams, folderItems[0]) - assert(!(drawingParams.drawable as FastBitmapDrawable).isThemed()) + assert(!(drawingParams.drawable as FastBitmapDrawable).isThemed) } @Test @@ -154,7 +165,7 @@ class PreviewItemManagerTest { previewItemManager.setDrawable(drawingParams, folderItems[1]) - assert(!(drawingParams.drawable as FastBitmapDrawable).isThemed()) + assert(!(drawingParams.drawable as FastBitmapDrawable).isThemed) } @Test @@ -164,7 +175,7 @@ class PreviewItemManagerTest { previewItemManager.setDrawable(drawingParams, folderItems[1]) - assert(!(drawingParams.drawable as FastBitmapDrawable).isThemed()) + assert(!(drawingParams.drawable as FastBitmapDrawable).isThemed) } @Test @@ -174,7 +185,7 @@ class PreviewItemManagerTest { previewItemManager.setDrawable(drawingParams, folderItems[2]) - assert((drawingParams.drawable as FastBitmapDrawable).isThemed()) + assert((drawingParams.drawable as FastBitmapDrawable).isThemed) assert( ((drawingParams.drawable as FastBitmapDrawable).badge as UserBadgeDrawable).mIsThemed ) @@ -187,7 +198,7 @@ class PreviewItemManagerTest { previewItemManager.setDrawable(drawingParams, folderItems[3]) - assert(!(drawingParams.drawable as FastBitmapDrawable).isThemed()) + assert(!(drawingParams.drawable as FastBitmapDrawable).isThemed) assert( ((drawingParams.drawable as FastBitmapDrawable).badge as UserBadgeDrawable).mIsThemed ) @@ -200,7 +211,7 @@ class PreviewItemManagerTest { previewItemManager.setDrawable(drawingParams, folderItems[3]) - assert(!(drawingParams.drawable as FastBitmapDrawable).isThemed()) + assert(!(drawingParams.drawable as FastBitmapDrawable).isThemed) assert( !((drawingParams.drawable as FastBitmapDrawable).badge as UserBadgeDrawable).mIsThemed ) @@ -249,8 +260,7 @@ class PreviewItemManagerTest { assertThat(drawingParams.drawable).isInstanceOf(PlaceHolderIconDrawable::class.java) val callbackCaptor = argumentCaptor<ItemInfoUpdateReceiver>() - verify(iconCache) - .updateIconInBackground(callbackCaptor.capture(), eq(folderItems[3]), any()) + verify(iconCache).updateIconInBackground(callbackCaptor.capture(), eq(folderItems[3])) // Restore high-res icon folderItems[3].bitmap = originalBitmap @@ -267,14 +277,6 @@ class PreviewItemManagerTest { private fun profileFlagOp(type: Int) = UserIconInfo(Process.myUserHandle(), type).applyBitmapInfoFlags(FlagOp.NO_OP) - - private fun buildWorkspaceItemInfo(targetClass: String) = - WorkspaceItemInfo().apply { - intent = AppInfo.makeLaunchIntent(ComponentName(TEST_PACKAGE, targetClass)) - TestUtil.runOnExecutorSync(MODEL_EXECUTOR) { - iconCache.getTitleAndIcon(this, DESKTOP_ICON_FLAG) - } - } } class ThemeStateRule : TestRule { diff --git a/tests/src/com/android/launcher3/model/LoaderTaskTest.kt b/tests/src/com/android/launcher3/model/LoaderTaskTest.kt index f884d94162..f9c4a1704e 100644 --- a/tests/src/com/android/launcher3/model/LoaderTaskTest.kt +++ b/tests/src/com/android/launcher3/model/LoaderTaskTest.kt @@ -30,26 +30,22 @@ import com.android.launcher3.LauncherSettings.Favorites.TABLE_NAME import com.android.launcher3.dagger.LauncherAppComponent import com.android.launcher3.dagger.LauncherAppSingleton import com.android.launcher3.icons.IconCache -import com.android.launcher3.icons.cache.CacheLookupFlag.Companion.DEFAULT_LOOKUP_FLAG import com.android.launcher3.icons.cache.CachingLogic import com.android.launcher3.icons.cache.IconCacheUpdateHandler import com.android.launcher3.model.LoaderTask.LoaderTaskFactory import com.android.launcher3.model.data.AppInfo -import com.android.launcher3.model.data.AppsListData.Companion.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED -import com.android.launcher3.model.data.AppsListData.Companion.FLAG_QUIET_MODE_ENABLED -import com.android.launcher3.model.data.AppsListData.Companion.FLAG_WORK_PROFILE_QUIET_MODE_ENABLED import com.android.launcher3.model.data.IconRequestInfo import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.pm.UserCache import com.android.launcher3.provider.RestoreDbTask +import com.android.launcher3.ui.TestViewHelpers import com.android.launcher3.util.AllModulesForTest import com.android.launcher3.util.Executors.MODEL_EXECUTOR +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext import com.android.launcher3.util.LooperIdleLock import com.android.launcher3.util.ModelTestExtensions -import com.android.launcher3.util.SandboxApplication import com.android.launcher3.util.TestUtil import com.android.launcher3.util.UserIconInfo -import com.android.launcher3.util.ui.TestViewHelpers import com.google.common.truth.Truth.assertThat import dagger.BindsInstance import dagger.Component @@ -82,7 +78,7 @@ private const val INSERTION_STATEMENT_FILE = "databases/workspace_items.sql" @SmallTest @RunWith(AndroidJUnit4::class) class LoaderTaskTest { - @get:Rule val context = SandboxApplication() + private var context = SandboxModelContext() private val expectedBroadcastModel = FirstScreenBroadcastModel( installerPackage = "installerPackage", @@ -178,6 +174,7 @@ class LoaderTaskTest { LauncherPrefs.get(context).removeSync(RESTORE_DEVICE) LauncherPrefs.get(context).putSync(IS_FIRST_LOAD_AFTER_RESTORE.to(false)) inMemoryDb.close() + context.onDestroy() mockitoSession.finishMocking() } @@ -209,7 +206,7 @@ class LoaderTaskTest { .size ) .isAtLeast(8) - assertThat(itemsIdMap.count()).isAtLeast(40) + assertThat(itemsIdMap.size()).isAtLeast(40) } @Test @@ -221,11 +218,12 @@ class LoaderTaskTest { verify(launcherBinder).bindWorkspace(true, false) verify(modelDelegate).workspaceLoadComplete() - verify(modelDelegate).loadAndAddExtraModelItems(any()) + verify(modelDelegate).loadAndBindAllAppsItems(any(), anyOrNull(), any()) verify(launcherBinder).bindAllApps() verify(iconCacheUpdateHandler, times(4)).updateIcons(any(), any<CachingLogic<Any>>(), any()) verify(launcherBinder).bindDeepShortcuts() verify(launcherBinder).bindWidgets() + verify(modelDelegate).loadAndBindOtherItems(anyOrNull()) verify(iconCacheUpdateHandler).finish() verify(modelDelegate).modelLoadComplete() verify(transaction).commit() @@ -246,9 +244,12 @@ class LoaderTaskTest { .newLoaderTask(launcherBinder, userManagerState) .runSyncOnBackgroundThread() - verify(bgAllAppsList).setFlags(FLAG_WORK_PROFILE_QUIET_MODE_ENABLED, true) - verify(bgAllAppsList).setFlags(FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED, false) - verify(bgAllAppsList, Mockito.never()).setFlags(FLAG_QUIET_MODE_ENABLED, true) + verify(bgAllAppsList) + .setFlags(BgDataModel.Callbacks.FLAG_WORK_PROFILE_QUIET_MODE_ENABLED, true) + verify(bgAllAppsList) + .setFlags(BgDataModel.Callbacks.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED, false) + verify(bgAllAppsList, Mockito.never()) + .setFlags(BgDataModel.Callbacks.FLAG_QUIET_MODE_ENABLED, true) } @Test @@ -266,9 +267,12 @@ class LoaderTaskTest { .newLoaderTask(launcherBinder, userManagerState) .runSyncOnBackgroundThread() - verify(bgAllAppsList).setFlags(FLAG_WORK_PROFILE_QUIET_MODE_ENABLED, false) - verify(bgAllAppsList).setFlags(FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED, true) - verify(bgAllAppsList, Mockito.never()).setFlags(FLAG_QUIET_MODE_ENABLED, true) + verify(bgAllAppsList) + .setFlags(BgDataModel.Callbacks.FLAG_WORK_PROFILE_QUIET_MODE_ENABLED, false) + verify(bgAllAppsList) + .setFlags(BgDataModel.Callbacks.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED, true) + verify(bgAllAppsList, Mockito.never()) + .setFlags(BgDataModel.Callbacks.FLAG_QUIET_MODE_ENABLED, true) } @Test @@ -477,7 +481,7 @@ class LoaderTaskTest { }, activityInfo, expectedIconBlob, - DEFAULT_LOOKUP_FLAG.withUseLowRes(false), + false, /* useLowResIcon */ ) ) val expectedAppInfo = AppInfo().apply { componentName = expectedComponent } @@ -513,7 +517,7 @@ class LoaderTaskTest { }, activityInfo, expectedIconBlob, - DEFAULT_LOOKUP_FLAG.withUseLowRes(false), + false, /* useLowResIcon */ ) ) val expectedAppInfo = AppInfo().apply { componentName = expectedComponent } @@ -549,7 +553,7 @@ class LoaderTaskTest { }, activityInfo, expectedIconBlob, - DEFAULT_LOOKUP_FLAG.withUseLowRes(false), + false, /* useLowResIcon */ ) ) val expectedAppInfo = AppInfo().apply { componentName = expectedComponent } @@ -585,7 +589,7 @@ class LoaderTaskTest { }, activityInfo, expectedIconBlob, - DEFAULT_LOOKUP_FLAG.withUseLowRes(false), + false, /* useLowResIcon */ ) ) val expectedAppInfo = @@ -619,7 +623,7 @@ class LoaderTaskTest { WorkspaceItemInfo(), activityInfo, expectedIconBlob, - DEFAULT_LOOKUP_FLAG.withUseLowRes(false), + false, /* useLowResIcon */ ) ) val expectedAppInfo = AppInfo() diff --git a/tests/src/com/android/launcher3/model/ModelMultiCallbacksTest.java b/tests/src/com/android/launcher3/model/ModelMultiCallbacksTest.java index ef60022b0c..b140f2efc7 100644 --- a/tests/src/com/android/launcher3/model/ModelMultiCallbacksTest.java +++ b/tests/src/com/android/launcher3/model/ModelMultiCallbacksTest.java @@ -16,7 +16,6 @@ package com.android.launcher3.model; import static com.android.launcher3.util.LauncherModelHelper.TEST_PACKAGE; -import static com.android.launcher3.util.ModelTestExtensions.nonPredictedItemCount; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; @@ -30,24 +29,24 @@ import android.os.Process; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; -import com.android.launcher3.LauncherAppState; -import com.android.launcher3.LauncherModel; import com.android.launcher3.model.BgDataModel.Callbacks; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.model.data.WorkspaceData; import com.android.launcher3.util.Executors; +import com.android.launcher3.util.IntArray; +import com.android.launcher3.util.IntSet; import com.android.launcher3.util.LauncherLayoutBuilder; +import com.android.launcher3.util.LauncherModelHelper; import com.android.launcher3.util.PackageUserKey; -import com.android.launcher3.util.SandboxApplication; +import com.android.launcher3.util.RunnableList; import com.android.launcher3.util.TestUtil; -import com.android.launcher3.util.rule.LayoutProviderRule; import org.junit.After; -import org.junit.Rule; +import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; @@ -61,16 +60,21 @@ import java.util.stream.Collectors; @RunWith(AndroidJUnit4.class) public class ModelMultiCallbacksTest { - @Rule public SandboxApplication mContext = new SandboxApplication().withModelDependency(); - @Rule public LayoutProviderRule mLayoutProvider = new LayoutProviderRule(mContext); + private LauncherModelHelper mModelHelper; + + @Before + public void setUp() { + mModelHelper = new LauncherModelHelper(); + } @After public void tearDown() throws Exception { + mModelHelper.destroy(); TestUtil.uninstallDummyApp(); } private ModelLauncherCallbacks getCallbacks() { - return getModel().newModelCallbacks(); + return mModelHelper.getModel().newModelCallbacks(); } @Test @@ -78,35 +82,36 @@ public class ModelMultiCallbacksTest { setupWorkspacePages(3); MyCallbacks cb1 = spy(MyCallbacks.class); - Executors.MAIN_EXECUTOR.execute(() -> getModel().addCallbacksAndLoad(cb1)); + Executors.MAIN_EXECUTOR.execute(() -> mModelHelper.getModel().addCallbacksAndLoad(cb1)); waitForLoaderAndTempMainThread(); - cb1.verifyItemsBound(3); + cb1.verifySynchronouslyBound(3); // Add a new callback cb1.reset(); MyCallbacks cb2 = spy(MyCallbacks.class); - Executors.MAIN_EXECUTOR.execute(() -> getModel().addCallbacksAndLoad(cb2)); + cb2.mPageToBindSync = IntSet.wrap(2); + Executors.MAIN_EXECUTOR.execute(() -> mModelHelper.getModel().addCallbacksAndLoad(cb2)); waitForLoaderAndTempMainThread(); - assertNull(cb1.mItems); - cb2.verifyItemsBound(3); + assertFalse(cb1.bindStarted); + cb2.verifySynchronouslyBound(3); // Remove callbacks cb1.reset(); cb2.reset(); // No effect on callbacks when removing an callback - Executors.MAIN_EXECUTOR.execute(() -> getModel().removeCallbacks(cb2)); + Executors.MAIN_EXECUTOR.execute(() -> mModelHelper.getModel().removeCallbacks(cb2)); waitForLoaderAndTempMainThread(); - assertNull(cb1.mItems); - assertNull(cb2.mItems); + assertNull(cb1.mPendingTasks); + assertNull(cb2.mPendingTasks); // Reloading only loads registered callbacks - getModel().startLoader(); + mModelHelper.getModel().startLoader(); waitForLoaderAndTempMainThread(); - cb1.verifyItemsBound(3); - assertNull(cb2.mItems); + cb1.verifySynchronouslyBound(3); + assertNull(cb2.mPendingTasks); } @Test @@ -117,8 +122,8 @@ public class ModelMultiCallbacksTest { MyCallbacks cb1 = spy(MyCallbacks.class); MyCallbacks cb2 = spy(MyCallbacks.class); - Executors.MAIN_EXECUTOR.execute(() -> getModel().addCallbacksAndLoad(cb1)); - Executors.MAIN_EXECUTOR.execute(() -> getModel().addCallbacksAndLoad(cb2)); + Executors.MAIN_EXECUTOR.execute(() -> mModelHelper.getModel().addCallbacksAndLoad(cb1)); + Executors.MAIN_EXECUTOR.execute(() -> mModelHelper.getModel().addCallbacksAndLoad(cb2)); waitForLoaderAndTempMainThread(); assertTrue(cb1.allApps().contains(TEST_PACKAGE)); @@ -139,7 +144,7 @@ public class ModelMultiCallbacksTest { assertFalse(cb2.allApps().contains(TestUtil.DUMMY_PACKAGE)); // Unregister a callback and verify updates no longer received - Executors.MAIN_EXECUTOR.execute(() -> getModel().removeCallbacks(cb2)); + Executors.MAIN_EXECUTOR.execute(() -> mModelHelper.getModel().removeCallbacks(cb2)); TestUtil.installDummyApp(); getCallbacks().onPackageAdded(TestUtil.DUMMY_PACKAGE, Process.myUserHandle()); waitForLoaderAndTempMainThread(); @@ -161,23 +166,35 @@ public class ModelMultiCallbacksTest { for (int i = 0; i < pageCount; i++) { builder.atWorkspace(1, 1, i).putApp(TEST_PACKAGE, TEST_PACKAGE); } - mLayoutProvider.setupDefaultLayoutProvider(builder); - } - - private LauncherModel getModel() { - return LauncherAppState.getInstance(mContext).getModel(); + mModelHelper.setupDefaultLayoutProvider(builder); } private abstract static class MyCallbacks implements Callbacks { - List<ItemInfo> mItems = null; + final List<ItemInfo> mItems = new ArrayList<>(); + IntSet mPageToBindSync = IntSet.wrap(0); + IntSet mPageBoundSync = new IntSet(); + RunnableList mPendingTasks; AppInfo[] mAppInfos; + boolean bindStarted; MyCallbacks() { } @Override - public void bindCompleteModel(WorkspaceData itemIdMap, boolean isBindingSync) { - mItems = itemIdMap.stream().toList(); + public void startBinding() { + bindStarted = true; + } + + @Override + public void onInitialBindComplete(IntSet boundPages, RunnableList pendingTasks, + RunnableList onCompleteSignal, int workspaceItemCount, boolean isBindSync) { + mPageBoundSync = boundPages; + mPendingTasks = pendingTasks; + } + + @Override + public void bindItems(List<ItemInfo> shortcuts, boolean forceAnimateIcons) { + mItems.addAll(shortcuts); } @Override @@ -186,14 +203,30 @@ public class ModelMultiCallbacksTest { mAppInfos = apps; } - public void reset() { - mItems = null; - mAppInfos = null; + @Override + public IntSet getPagesToBindSynchronously(IntArray orderedScreenIds) { + return mPageToBindSync; } - public void verifyItemsBound(int totalItems) { - assertNotNull(mItems); - assertEquals(totalItems, nonPredictedItemCount(mItems)); + public void reset() { + mItems.clear(); + mPageBoundSync = new IntSet(); + mPendingTasks = null; + mAppInfos = null; + bindStarted = false; + } + + public void verifySynchronouslyBound(int totalItems) { + // Verify that the requested page is bound synchronously + assertTrue(bindStarted); + assertEquals(mPageToBindSync, mPageBoundSync); + assertEquals(mItems.size(), 1); + assertEquals(IntSet.wrap(mItems.get(0).screenId), mPageBoundSync); + assertNotNull(mPendingTasks); + + // Verify that all other pages are bound properly + mPendingTasks.executeAllAndDestroy(); + assertEquals(mItems.size(), totalItems); } public Set<String> allApps() { @@ -201,5 +234,9 @@ public class ModelMultiCallbacksTest { .map(ai -> ai.getTargetComponent().getPackageName()) .collect(Collectors.toSet()); } + + public void verifyApps(String... apps) { + assertTrue(allApps().containsAll(Arrays.asList(apps))); + } } } diff --git a/tests/src/com/android/launcher3/model/WorkspaceItemProcessorExtraTest.kt b/tests/src/com/android/launcher3/model/WorkspaceItemProcessorExtraTest.kt index cfdddca09c..fd44023de4 100644 --- a/tests/src/com/android/launcher3/model/WorkspaceItemProcessorExtraTest.kt +++ b/tests/src/com/android/launcher3/model/WorkspaceItemProcessorExtraTest.kt @@ -16,6 +16,7 @@ package com.android.launcher3.model +import android.appwidget.AppWidgetProviderInfo import android.content.ComponentName import android.content.Context import android.content.Intent @@ -43,6 +44,7 @@ import com.android.launcher3.model.data.LauncherAppWidgetInfo.FLAG_UI_NOT_READY import com.android.launcher3.model.data.WorkspaceItemInfo import com.android.launcher3.pm.UserCache import com.android.launcher3.shortcuts.ShortcutKey +import com.android.launcher3.util.ComponentKey import com.android.launcher3.util.PackageManagerHelper import com.android.launcher3.util.PackageUserKey import com.android.launcher3.util.UserIconInfo @@ -87,6 +89,8 @@ class WorkspaceItemProcessorExtraTest { private var mKeyToPinnedShortcutsMap: MutableMap<ShortcutKey, ShortcutInfo> = mutableMapOf() private var mInstallingPkgs: HashMap<PackageUserKey, PackageInstaller.SessionInfo> = hashMapOf() private var mAllDeepShortcuts: MutableList<CacheableShortcutInfo> = mutableListOf() + private var mWidgetProvidersMap: MutableMap<ComponentKey, AppWidgetProviderInfo?> = + mutableMapOf() private var mPendingPackages: MutableSet<PackageUserKey> = mutableSetOf() private lateinit var itemProcessorUnderTest: WorkspaceItemProcessor @@ -137,6 +141,7 @@ class WorkspaceItemProcessorExtraTest { mKeyToPinnedShortcutsMap = mutableMapOf() mInstallingPkgs = hashMapOf() mAllDeepShortcuts = mutableListOf() + mWidgetProvidersMap = mutableMapOf() mIconRequestInfos = mutableListOf() mPendingPackages = mutableSetOf() } @@ -181,7 +186,8 @@ class WorkspaceItemProcessorExtraTest { mInstallingPkgs[packageUserKey] = PackageInstaller.SessionInfo() // When - itemProcessorUnderTest = createWorkspaceItemProcessorUnderTest() + itemProcessorUnderTest = + createWorkspaceItemProcessorUnderTest(widgetProvidersMap = mWidgetProvidersMap) itemProcessorUnderTest.processItem() // Then @@ -200,7 +206,8 @@ class WorkspaceItemProcessorExtraTest { ) .commit() val widgetInfoCaptor = ArgumentCaptor.forClass(LauncherAppWidgetInfo::class.java) - verify(mockCursor).checkAndAddItem(widgetInfoCaptor.capture(), any(), anyOrNull()) + verify(mockCursor) + .checkAndAddItem(widgetInfoCaptor.capture(), eq(mockBgDataModel), anyOrNull()) val actualWidgetInfo = widgetInfoCaptor.value with(actualWidgetInfo) { assertThat(providerName).isEqualTo(expectedWidgetInfo.providerName) @@ -244,7 +251,8 @@ class WorkspaceItemProcessorExtraTest { mock<WidgetInflater>().apply { whenever(inflateAppWidget(any())).thenReturn(inflationResult) } - itemProcessorUnderTest = createWorkspaceItemProcessorUnderTest() + itemProcessorUnderTest = + createWorkspaceItemProcessorUnderTest(widgetProvidersMap = mWidgetProvidersMap) // When itemProcessorUnderTest.processItem() @@ -261,6 +269,8 @@ class WorkspaceItemProcessorExtraTest { launcherApps: LauncherApps = mockLauncherApps, shortcutKeyToPinnedShortcuts: Map<ShortcutKey, ShortcutInfo> = mKeyToPinnedShortcutsMap, context: Context = mockContext, + bgDataModel: BgDataModel = mockBgDataModel, + widgetProvidersMap: MutableMap<ComponentKey, AppWidgetProviderInfo?> = mWidgetProvidersMap, widgetInflater: WidgetInflater = mockWidgetInflater, pmHelper: PackageManagerHelper = mockPmHelper, iconRequestInfos: MutableList<IconRequestInfo<WorkspaceItemInfo>> = mIconRequestInfos, @@ -277,6 +287,8 @@ class WorkspaceItemProcessorExtraTest { userCache = userCache, userManagerState = userManagerState, launcherApps = launcherApps, + bgDataModel = bgDataModel, + widgetProvidersMap = widgetProvidersMap, widgetInflater = widgetInflater, pmHelper = pmHelper, unlockedUsers = unlockedUsers, diff --git a/tests/src/com/android/launcher3/nonquickstep/HotseatWidthCalculationTest.kt b/tests/src/com/android/launcher3/nonquickstep/HotseatWidthCalculationTest.kt index 7258284011..408691cb79 100644 --- a/tests/src/com/android/launcher3/nonquickstep/HotseatWidthCalculationTest.kt +++ b/tests/src/com/android/launcher3/nonquickstep/HotseatWidthCalculationTest.kt @@ -39,7 +39,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(0) + assertThat(dp.hotseatBarEndOffset).isEqualTo(0) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(145) assertThat(dp.hotseatColumnSpan).isEqualTo(6) @@ -63,7 +63,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(0) + assertThat(dp.hotseatBarEndOffset).isEqualTo(0) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(72) assertThat(dp.hotseatColumnSpan).isEqualTo(6) @@ -86,7 +86,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(0) + assertThat(dp.hotseatBarEndOffset).isEqualTo(0) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(104) assertThat(dp.hotseatColumnSpan).isEqualTo(6) @@ -110,7 +110,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(0) + assertThat(dp.hotseatBarEndOffset).isEqualTo(0) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(248) assertThat(dp.hotseatColumnSpan).isEqualTo(6) @@ -131,7 +131,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(0) + assertThat(dp.hotseatBarEndOffset).isEqualTo(0) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(233) assertThat(dp.hotseatColumnSpan).isEqualTo(6) @@ -155,7 +155,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(0) + assertThat(dp.hotseatBarEndOffset).isEqualTo(0) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(205) assertThat(dp.hotseatColumnSpan).isEqualTo(6) @@ -195,7 +195,7 @@ class HotseatWidthCalculationTest : FakeInvariantDeviceProfileTest() { val dp = newDP() dp.isTaskbarPresentInApps = true - assertThat(dp.hotseatProfile.barEndOffset).isEqualTo(0) + assertThat(dp.hotseatBarEndOffset).isEqualTo(0) assertThat(dp.numShownHotseatIcons).isEqualTo(6) assertThat(dp.hotseatBorderSpace).isEqualTo(112) assertThat(dp.hotseatColumnSpan).isEqualTo(8) diff --git a/tests/src/com/android/launcher3/pm/InstallSessionHelperTest.kt b/tests/src/com/android/launcher3/pm/InstallSessionHelperTest.kt index 2b945a2ce0..707c2c1976 100644 --- a/tests/src/com/android/launcher3/pm/InstallSessionHelperTest.kt +++ b/tests/src/com/android/launcher3/pm/InstallSessionHelperTest.kt @@ -31,25 +31,25 @@ import com.android.launcher3.LauncherPrefs import com.android.launcher3.LauncherPrefs.Companion.PROMISE_ICON_IDS import com.android.launcher3.util.Executors.MODEL_EXECUTOR import com.android.launcher3.util.IntArray -import com.android.launcher3.util.SandboxApplication +import com.android.launcher3.util.LauncherModelHelper import com.android.launcher3.util.TestUtil import com.google.common.truth.Truth.assertThat import org.junit.Before -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.mockito.kotlin.any import org.mockito.kotlin.doReturn import org.mockito.kotlin.eq import org.mockito.kotlin.mock +import org.mockito.kotlin.spy import org.mockito.kotlin.whenever @SmallTest @RunWith(AndroidJUnit4::class) class InstallSessionHelperTest { - @get:Rule val sandboxContext = SandboxApplication() - + private val launcherModelHelper = LauncherModelHelper() + private val sandboxContext = spy(launcherModelHelper.sandboxContext) private val packageManager = sandboxContext.packageManager private val expectedAppPackage = "expectedAppPackage" private val expectedInstallerPackage = sandboxContext.packageName diff --git a/tests/src/com/android/launcher3/popup/SystemShortcutTest.java b/tests/src/com/android/launcher3/popup/SystemShortcutTest.java index 094c661f04..2531f6bacf 100644 --- a/tests/src/com/android/launcher3/popup/SystemShortcutTest.java +++ b/tests/src/com/android/launcher3/popup/SystemShortcutTest.java @@ -72,8 +72,8 @@ import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.pm.UserCache; import com.android.launcher3.util.AllModulesForTest; import com.android.launcher3.util.ComponentKey; +import com.android.launcher3.util.LauncherModelHelper.SandboxModelContext; import com.android.launcher3.util.LauncherMultivalentJUnit; -import com.android.launcher3.util.SandboxApplication; import com.android.launcher3.util.TestSandboxModelContextWrapper; import com.android.launcher3.util.TestUtil; import com.android.launcher3.util.UserIconInfo; @@ -81,9 +81,7 @@ import com.android.launcher3.views.Snackbar; import com.android.launcher3.widget.picker.model.WidgetPickerDataProvider; import com.android.launcher3.widget.picker.model.data.WidgetPickerData; -import dagger.BindsInstance; -import dagger.Component; - +import org.junit.After; import org.junit.Assert; import org.junit.Before; import org.junit.Rule; @@ -93,17 +91,19 @@ import org.mockito.Answers; import org.mockito.Mock; import org.mockito.MockitoAnnotations; +import dagger.BindsInstance; +import dagger.Component; + @SmallTest @RunWith(LauncherMultivalentJUnit.class) public class SystemShortcutTest { @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(DEVICE_DEFAULT); - @Rule public final SandboxApplication mSandboxContext = new SandboxApplication(); - private static final UserHandle PRIVATE_HANDLE = new UserHandle(11); private static final UserHandle MAIN_HANDLE = Process.myUserHandle(); private View mView; private ItemInfo mItemInfo; private TestSandboxModelContextWrapper mTestContext; + private final SandboxModelContext mSandboxContext = new SandboxModelContext(); private PrivateProfileManager mPrivateProfileManager; private WidgetPickerDataProvider mWidgetPickerDataProvider; private AppInfo mAppInfo; @@ -147,6 +147,11 @@ public class SystemShortcutTest { spyOn(mWidgetPickerDataProvider); } + @After + public void tearDown() { + mSandboxContext.onDestroy(); + } + @Test public void testWidgetsForNullComponentName() { assertNull(mItemInfo.getTargetComponent()); diff --git a/tests/src/com/android/launcher3/testcomponent/TestLauncherActivity.java b/tests/src/com/android/launcher3/testcomponent/TestLauncherActivity.java index b23f3d705f..357a2322d2 100644 --- a/tests/src/com/android/launcher3/testcomponent/TestLauncherActivity.java +++ b/tests/src/com/android/launcher3/testcomponent/TestLauncherActivity.java @@ -20,12 +20,8 @@ import static android.content.Intent.CATEGORY_LAUNCHER; import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK; import static android.content.Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED; -import static com.android.launcher3.testing.shared.TestProtocol.LAUNCHER_ACTIVITY_STOPPED_MESSAGE; - import android.app.LauncherActivity; import android.content.Intent; -import android.view.accessibility.AccessibilityEvent; -import android.view.accessibility.AccessibilityManager; public class TestLauncherActivity extends LauncherActivity { @@ -35,18 +31,4 @@ public class TestLauncherActivity extends LauncherActivity { .addCategory(CATEGORY_LAUNCHER) .addFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_RESET_TASK_IF_NEEDED); } - - @Override - protected void onStop() { - super.onStop(); - final AccessibilityManager accessibilityManager = - getSystemService(AccessibilityManager.class); - if (accessibilityManager == null || !accessibilityManager.isEnabled()) return; - - final AccessibilityEvent e = AccessibilityEvent.obtain( - AccessibilityEvent.TYPE_ANNOUNCEMENT); - e.setClassName(LAUNCHER_ACTIVITY_STOPPED_MESSAGE); - e.setPackageName(getApplicationContext().getPackageName()); - accessibilityManager.sendAccessibilityEvent(e); - } } diff --git a/tests/src/com/android/launcher3/ui/TaplTestsLauncher3Test.java b/tests/src/com/android/launcher3/ui/TaplTestsLauncher3Test.java index 699224e887..1338e60a49 100644 --- a/tests/src/com/android/launcher3/ui/TaplTestsLauncher3Test.java +++ b/tests/src/com/android/launcher3/ui/TaplTestsLauncher3Test.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2025 The Android Open Source Project + * Copyright (C) 2019 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,21 +18,17 @@ package com.android.launcher3.ui; import static org.junit.Assert.assertNotNull; -import android.view.View; - import androidx.test.filters.LargeTest; import androidx.test.runner.AndroidJUnit4; import com.android.launcher3.Launcher; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; import org.junit.Test; import org.junit.runner.RunWith; -// TODO(415813575) - Remove this test. @LargeTest @RunWith(AndroidJUnit4.class) -public class TaplTestsLauncher3Test extends AbstractLauncherUiTest<Launcher, View> { +public class TaplTestsLauncher3Test extends AbstractLauncherUiTest<Launcher> { @Test public void testDevicePressMenu() { diff --git a/tests/src/com/android/launcher3/util/BaseLauncherActivityTest.kt b/tests/src/com/android/launcher3/util/BaseLauncherActivityTest.kt index fdcfdbd3e6..b5702c9abc 100644 --- a/tests/src/com/android/launcher3/util/BaseLauncherActivityTest.kt +++ b/tests/src/com/android/launcher3/util/BaseLauncherActivityTest.kt @@ -17,20 +17,31 @@ package com.android.launcher3.util import android.content.Context import android.content.Intent +import android.os.SystemClock +import android.view.InputDevice +import android.view.KeyCharacterMap +import android.view.KeyEvent +import android.view.MotionEvent import android.view.View import android.view.ViewGroup import androidx.core.view.children +import androidx.lifecycle.Lifecycle.State.RESUMED +import androidx.test.core.app.ActivityScenario +import androidx.test.core.app.ActivityScenario.ActivityAction import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation import androidx.test.uiautomator.UiDevice import com.android.launcher3.Launcher import com.android.launcher3.LauncherAppState +import com.android.launcher3.LauncherState import com.android.launcher3.R import com.android.launcher3.allapps.AllAppsStore.DEFER_UPDATES_TEST -import com.android.launcher3.integration.util.LauncherActivityScenarioRule +import com.android.launcher3.tapl.TestHelpers import com.android.launcher3.util.ModelTestExtensions.loadModelSync import com.android.launcher3.util.Wait.atMost +import java.util.function.Function import java.util.function.Predicate -import org.junit.Rule +import java.util.function.Supplier +import org.junit.After /** * Base class for tests which use Launcher activity with some utility methods. @@ -39,27 +50,97 @@ import org.junit.Rule */ open class BaseLauncherActivityTest<LAUNCHER_TYPE : Launcher> { - @get:Rule - var launcherActivity = - LauncherActivityScenarioRule<LAUNCHER_TYPE>(getInstrumentation().targetContext) + private var currentScenario: ActivityScenario<LAUNCHER_TYPE>? = null + + val scenario: ActivityScenario<LAUNCHER_TYPE> + get() = + currentScenario + ?: ActivityScenario.launch<LAUNCHER_TYPE>( + TestHelpers.getHomeIntentInPackage(targetContext()), + null, + ) + .also { currentScenario = it } @JvmField val uiDevice = UiDevice.getInstance(getInstrumentation()) + @After + fun closeCurrentActivity() { + currentScenario?.close() + currentScenario = null + } + protected fun loadLauncherSync() { LauncherAppState.getInstance(targetContext()).model.loadModelSync() - launcherActivity.initializeActivity() + scenario.moveToState(RESUMED) } protected fun targetContext(): Context = getInstrumentation().targetContext - protected fun waitForLauncherCondition(message: String, condition: (LAUNCHER_TYPE) -> Boolean) = - atMost(message, { launcherActivity.getFromLauncher(condition)!! }) + protected fun goToState(state: LauncherState) { + executeOnLauncher { it.stateManager.goToState(state, 0) } + UiDevice.getInstance(getInstrumentation()).waitForIdle() + } + + protected fun executeOnLauncher(f: ActivityAction<LAUNCHER_TYPE>) = scenario.onActivity(f) + + protected fun <T> getFromLauncher(f: Function<in LAUNCHER_TYPE, out T?>): T? { + var result: T? = null + executeOnLauncher { result = f.apply(it) } + return result + } + + protected fun isInState(state: Supplier<LauncherState>): Boolean = + getFromLauncher { it.stateManager.state == state.get() }!! + + protected fun waitForState(message: String, state: Supplier<LauncherState>) = + waitForLauncherCondition(message) { it.stateManager.currentStableState === state.get() } protected fun waitForLauncherCondition( message: String, - condition: (LAUNCHER_TYPE) -> Boolean, + condition: Function<LAUNCHER_TYPE, Boolean>, + ) = atMost(message, { getFromLauncher(condition)!! }) + + protected fun waitForLauncherCondition( + message: String, + condition: Function<LAUNCHER_TYPE, Boolean>, timeout: Long, - ) = atMost(message, { launcherActivity.getFromLauncher(condition)!! }, null, timeout) + ) = atMost(message, { getFromLauncher(condition)!! }, null, timeout) + + protected fun <T> getOnceNotNull(message: String, f: Function<LAUNCHER_TYPE, T?>): T? { + var output: T? = null + atMost( + message, + { + val fromLauncher = getFromLauncher<T>(f) + output = fromLauncher + fromLauncher != null + }, + ) + return output + } + + protected fun getAllAppsScroll(launcher: LAUNCHER_TYPE) = + launcher.appsView.activeRecyclerView.computeVerticalScrollOffset() + + @JvmOverloads + protected fun injectKeyEvent(keyCode: Int, actionDown: Boolean, metaState: Int = 0) { + uiDevice.waitForIdle() + val eventTime = SystemClock.uptimeMillis() + val event = + KeyEvent( + eventTime, + eventTime, + if (actionDown) KeyEvent.ACTION_DOWN else MotionEvent.ACTION_UP, + keyCode, + /* repeat= */ 0, + metaState, + KeyCharacterMap.VIRTUAL_KEYBOARD, + /* scancode= */ 0, + /* flags= */ 0, + InputDevice.SOURCE_KEYBOARD, + ) + executeOnLauncher { it.dispatchKeyEvent(event) } + } @JvmOverloads fun startAppFast( @@ -72,10 +153,9 @@ open class BaseLauncherActivityTest<LAUNCHER_TYPE : Launcher> { uiDevice.waitForIdle() } - fun freezeAllApps() = - launcherActivity.executeOnLauncher { - it.appsView.appsStore.enableDeferUpdates(DEFER_UPDATES_TEST) - } + fun freezeAllApps() = executeOnLauncher { + it.appsView.appsStore.enableDeferUpdates(DEFER_UPDATES_TEST) + } fun executeShellCommand(cmd: String) = uiDevice.executeShellCommand(cmd) @@ -95,7 +175,7 @@ open class BaseLauncherActivityTest<LAUNCHER_TYPE : Launcher> { * readers). */ fun addWidgetToWorkspace(view: View) { - launcherActivity.executeOnLauncher { + executeOnLauncher { view.performClick() UiDevice.getInstance(getInstrumentation()).waitForIdle() view.findViewById<View>(R.id.widget_add_button).performClick() diff --git a/tests/src/com/android/launcher3/util/ItemInflaterTest.kt b/tests/src/com/android/launcher3/util/ItemInflaterTest.kt index 4f01a21573..dae09bb595 100644 --- a/tests/src/com/android/launcher3/util/ItemInflaterTest.kt +++ b/tests/src/com/android/launcher3/util/ItemInflaterTest.kt @@ -42,10 +42,10 @@ import com.android.launcher3.model.data.LauncherAppWidgetInfo import com.android.launcher3.model.data.LauncherAppWidgetInfo.FLAG_ID_NOT_VALID import com.android.launcher3.model.data.LauncherAppWidgetInfo.FLAG_UI_NOT_READY import com.android.launcher3.model.data.LauncherAppWidgetInfo.RESTORE_COMPLETED +import com.android.launcher3.ui.TestViewHelpers import com.android.launcher3.util.Executors.MAIN_EXECUTOR import com.android.launcher3.util.Executors.VIEW_PREINFLATION_EXECUTOR import com.android.launcher3.util.rule.ShellCommandRule -import com.android.launcher3.util.ui.TestViewHelpers import com.android.launcher3.widget.LauncherAppWidgetHostView import com.android.launcher3.widget.LauncherWidgetHolder import com.android.launcher3.widget.PendingAppWidgetHostView @@ -78,7 +78,7 @@ class ItemInflaterTest { private val clickListener = OnClickListener {} private val focusListener = OnFocusChangeListener { _, _ -> } - @Mock private lateinit var modelWriterMock: ModelWriter + @Mock private lateinit var modelWriter: ModelWriter private lateinit var testContext: Context private lateinit var uiContext: ActivityContextWrapper @@ -91,10 +91,7 @@ class ItemInflaterTest { MockitoAnnotations.initMocks(this) testContext = InstrumentationRegistry.getInstrumentation().context - uiContext = - object : ActivityContextWrapper(getApplicationContext()) { - override fun getModelWriter() = modelWriterMock - } + uiContext = ActivityContextWrapper(getApplicationContext()) uiContext.setTheme(Themes.getActivityThemeRes(uiContext, 0)) widgetHolder = LauncherWidgetHolder.newInstance(uiContext) @@ -105,7 +102,7 @@ class ItemInflaterTest { widgetHolder, clickListener, focusListener, - FrameLayout(uiContext), + FrameLayout(uiContext) ) } @@ -117,7 +114,8 @@ class ItemInflaterTest { @Test fun test_workspace_item_inflated_on_UI() { val itemInfo = workspaceItemInfo() - val view = MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + val view = + MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo, modelWriter) }).get() assertTrue(view is BubbleTextView) assertEquals(itemInfo, view!!.tag) @@ -129,7 +127,10 @@ class ItemInflaterTest { val itemInfo = workspaceItemInfo() val view = - VIEW_PREINFLATION_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + VIEW_PREINFLATION_EXECUTOR.submit( + Callable { underTest.inflateItem(itemInfo, modelWriter) } + ) + .get() assertTrue(view is BubbleTextView) assertEquals(itemInfo, view!!.tag) @@ -142,7 +143,8 @@ class ItemInflaterTest { itemInfo.add(workspaceItemInfo()) itemInfo.add(workspaceItemInfo()) - val view = MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + val view = + MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo, modelWriter) }).get() assertTrue(view is FolderIcon) assertEquals(itemInfo, view!!.tag) @@ -158,7 +160,10 @@ class ItemInflaterTest { itemInfo.add(workspaceItemInfo()) val view = - VIEW_PREINFLATION_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + VIEW_PREINFLATION_EXECUTOR.submit( + Callable { underTest.inflateItem(itemInfo, modelWriter) } + ) + .get() assertTrue(view is FolderIcon) assertEquals(itemInfo, view!!.tag) @@ -171,7 +176,8 @@ class ItemInflaterTest { itemInfo.add(workspaceItemInfo()) itemInfo.add(workspaceItemInfo()) - val view = MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + val view = + MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo, modelWriter) }).get() assertTrue(view is AppPairIcon) assertEquals(itemInfo, view!!.tag) @@ -187,7 +193,10 @@ class ItemInflaterTest { itemInfo.add(workspaceItemInfo()) val view = - VIEW_PREINFLATION_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + VIEW_PREINFLATION_EXECUTOR.submit( + Callable { underTest.inflateItem(itemInfo, modelWriter) } + ) + .get() assertTrue(view is AppPairIcon) assertEquals(itemInfo, view!!.tag) @@ -197,7 +206,8 @@ class ItemInflaterTest { fun test_pending_widget_inflated_on_UI() { val itemInfo = widgetItemInfo(true) - val view = MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + val view = + MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo, modelWriter) }).get() assertTrue(view is PendingAppWidgetHostView) assertEquals(itemInfo, view!!.tag) @@ -209,7 +219,10 @@ class ItemInflaterTest { val itemInfo = widgetItemInfo(true) val view = - VIEW_PREINFLATION_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + VIEW_PREINFLATION_EXECUTOR.submit( + Callable { underTest.inflateItem(itemInfo, modelWriter) } + ) + .get() assertTrue(view is PendingAppWidgetHostView) assertEquals(itemInfo, view!!.tag) @@ -219,14 +232,15 @@ class ItemInflaterTest { fun test_widget_restored_and_inflated_on_UI() { val itemInfo = widgetItemInfo(false) - val view = MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + val view = + MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo, modelWriter) }).get() // Verify that the widget is automatically restored and a final widget is returned assertTrue(view is LauncherAppWidgetHostView) assertFalse(view is PendingAppWidgetHostView) assertEquals(itemInfo, view!!.tag) assertEquals(RESTORE_COMPLETED, itemInfo.restoreStatus) - verify(modelWriterMock).updateItemInDatabase(same(itemInfo)) + verify(modelWriter).updateItemInDatabase(same(itemInfo)) } @Test @@ -235,14 +249,17 @@ class ItemInflaterTest { val itemInfo = widgetItemInfo(false) val view = - VIEW_PREINFLATION_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + VIEW_PREINFLATION_EXECUTOR.submit( + Callable { underTest.inflateItem(itemInfo, modelWriter) } + ) + .get() // Verify that the widget is automatically restored and a final widget is returned assertTrue(view is LauncherAppWidgetHostView) assertFalse(view is PendingAppWidgetHostView) assertEquals(itemInfo, view!!.tag) assertEquals(RESTORE_COMPLETED, itemInfo.restoreStatus) - verify(modelWriterMock).updateItemInDatabase(same(itemInfo)) + verify(modelWriter).updateItemInDatabase(same(itemInfo)) } @Test @@ -251,9 +268,10 @@ class ItemInflaterTest { widgetItemInfo(false).apply { providerName = ComponentName(providerName.packageName, "invalid_provider_name") } - val view = MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + val view = + MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo, modelWriter) }).get() assertNull(view) - verify(modelWriterMock).deleteItemFromDatabase(same(itemInfo), any()) + verify(modelWriter).deleteItemFromDatabase(same(itemInfo), any()) } @Test @@ -267,13 +285,14 @@ class ItemInflaterTest { itemInfo.spanX = 2 itemInfo.spanY = 2 - val view = MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo) }).get() + val view = + MAIN_EXECUTOR.submit(Callable { underTest.inflateItem(itemInfo, modelWriter) }).get() // Verify that the widget is automatically restored and a final widget is returned assertTrue(view is LauncherAppWidgetHostView) assertFalse(view is PendingAppWidgetHostView) assertEquals(itemInfo, view!!.tag) - verifyNoMoreInteractions(modelWriterMock) + verifyNoMoreInteractions(modelWriter) } private fun workspaceItemInfo() = @@ -282,7 +301,7 @@ class ItemInflaterTest { uiContext .getSystemService(LauncherApps::class.java)!! .getActivityList(testContext.packageName, Process.myUserHandle())[0], - Process.myUserHandle(), + Process.myUserHandle() ) .makeWorkspaceItem(uiContext) diff --git a/tests/src/com/android/launcher3/util/WallpaperThemeManagerTest.kt b/tests/src/com/android/launcher3/util/WallpaperThemeManagerTest.kt index e744863edb..4c8fd8a729 100644 --- a/tests/src/com/android/launcher3/util/WallpaperThemeManagerTest.kt +++ b/tests/src/com/android/launcher3/util/WallpaperThemeManagerTest.kt @@ -90,10 +90,4 @@ class WallpaperThemeManagerTest { callbacksCaptor.value.onConfigurationChanged(Configuration()) verify(activity, times(1)).recreate() } - - @Test - fun `activity recreated if recreation requested`() { - WallpaperThemeManager(activity).recreateToUpdateTheme() - verify(activity).recreate() - } } diff --git a/tests/src/com/android/launcher3/util/rule/FailureWatcher.java b/tests/src/com/android/launcher3/util/rule/FailureWatcher.java index a1b14b29bb..3b8530984c 100644 --- a/tests/src/com/android/launcher3/util/rule/FailureWatcher.java +++ b/tests/src/com/android/launcher3/util/rule/FailureWatcher.java @@ -6,10 +6,13 @@ import android.os.FileUtils; import android.os.ParcelFileDescriptor.AutoCloseInputStream; import android.util.Log; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.test.uiautomator.UiDevice; +import com.android.app.viewcapture.data.ExportedData; import com.android.launcher3.tapl.LauncherInstrumentation; -import com.android.launcher3.util.ui.BaseLauncherTaplTest; +import com.android.launcher3.ui.BaseLauncherTaplTest; import org.junit.rules.TestWatcher; import org.junit.runner.Description; @@ -20,6 +23,7 @@ import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; +import java.util.function.Supplier; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; @@ -29,14 +33,18 @@ public class FailureWatcher extends TestWatcher { private static Description sDescriptionForLastSavedArtifacts; private final LauncherInstrumentation mLauncher; + @NonNull + private final Supplier<ExportedData> mViewCaptureDataSupplier; - public FailureWatcher(LauncherInstrumentation launcher) { + public FailureWatcher(LauncherInstrumentation launcher, + @NonNull Supplier<ExportedData> viewCaptureDataSupplier) { mLauncher = launcher; + mViewCaptureDataSupplier = viewCaptureDataSupplier; } @Override protected void starting(Description description) { - mLauncher.setOnFailure(() -> onError(mLauncher, description)); + mLauncher.setOnFailure(() -> onError(mLauncher, description, mViewCaptureDataSupplier)); super.starting(description); } @@ -76,7 +84,7 @@ public class FailureWatcher extends TestWatcher { @Override protected void failed(Throwable e, Description description) { - onError(mLauncher, description); + onError(mLauncher, description, mViewCaptureDataSupplier); } static File diagFile(Description description, String prefix, String ext) { @@ -87,6 +95,11 @@ public class FailureWatcher extends TestWatcher { /** Action executed when an error condition is expected. Saves artifacts. */ public static void onError(LauncherInstrumentation launcher, Description description) { + onError(launcher, description, null); + } + + private static void onError(LauncherInstrumentation launcher, Description description, + @Nullable Supplier<ExportedData> viewCaptureDataSupplier) { if (description.equals(sDescriptionForLastSavedArtifacts)) { // This test has already saved its artifacts. return; @@ -107,6 +120,13 @@ public class FailureWatcher extends TestWatcher { out.putNextEntry(new ZipEntry("visible_windows.zip")); dumpCommand("cmd window dump-visible-window-views", out); out.closeEntry(); + + if (viewCaptureDataSupplier != null) { + out.putNextEntry(new ZipEntry("FS/data/misc/wmtrace/failed_test.vc")); + final ExportedData exportedData = viewCaptureDataSupplier.get(); + if (exportedData != null) exportedData.writeTo(out); + out.closeEntry(); + } } catch (Exception ignored) { } diff --git a/tests/src/com/android/launcher3/util/rule/SamplerRule.java b/tests/src/com/android/launcher3/util/rule/SamplerRule.java index 503d654316..6125f2a8d2 100644 --- a/tests/src/com/android/launcher3/util/rule/SamplerRule.java +++ b/tests/src/com/android/launcher3/util/rule/SamplerRule.java @@ -30,7 +30,6 @@ import java.io.IOException; import java.io.OutputStreamWriter; import java.text.SimpleDateFormat; import java.util.Date; -import java.util.Map; /** * A rule that generates a file that helps diagnosing cases when the test process was terminated @@ -86,17 +85,13 @@ public class SamplerRule implements TestRule { int count = 0; while (true) { writer.write( - "Slice # " - + (count++) - + " @ " - + new SimpleDateFormat("HH:mm:ss.SSS").format(new Date()) - + "\r\n"); - for (Map.Entry<Thread, StackTraceElement[]> entry : - getAllStackTraces().entrySet()) { - writer.write(" Thread \"" + entry.getKey().getName() - + "\"\r\n"); - for (StackTraceElement frame : entry.getValue()) { - writer.write(" " + frame.toString() + "\r\n"); + "#" + + (count++) + + " =============================================\r\n"); + for (StackTraceElement[] stack : getAllStackTraces().values()) { + writer.write("---------------------\r\n"); + for (StackTraceElement frame : stack) { + writer.write(frame.toString() + "\r\n"); } } writer.flush(); diff --git a/tests/src/com/android/launcher3/util/rule/TestIsolationRule.java b/tests/src/com/android/launcher3/util/rule/TestIsolationRule.java index 9b8ee29caf..2b45902813 100644 --- a/tests/src/com/android/launcher3/util/rule/TestIsolationRule.java +++ b/tests/src/com/android/launcher3/util/rule/TestIsolationRule.java @@ -20,7 +20,7 @@ import androidx.test.InstrumentationRegistry; import androidx.test.uiautomator.UiDevice; import com.android.launcher3.tapl.LauncherInstrumentation; -import com.android.launcher3.util.ui.AbstractLauncherUiTest; +import com.android.launcher3.ui.AbstractLauncherUiTest; import org.junit.rules.TestRule; import org.junit.runner.Description; diff --git a/tests/tapl/com/android/launcher3/tapl/BaseOverview.java b/tests/tapl/com/android/launcher3/tapl/BaseOverview.java index 5925d01a9f..214f1587f5 100644 --- a/tests/tapl/com/android/launcher3/tapl/BaseOverview.java +++ b/tests/tapl/com/android/launcher3/tapl/BaseOverview.java @@ -35,7 +35,6 @@ import androidx.test.uiautomator.BySelector; import androidx.test.uiautomator.Direction; import androidx.test.uiautomator.UiObject2; -import com.android.launcher3.tapl.Taskbar.TaskbarLocation; import com.android.launcher3.testing.shared.TestProtocol; import java.util.Collection; @@ -152,10 +151,6 @@ public class BaseOverview extends LauncherInstrumentation.VisibleContainer { /** * Dismissed all tasks by scrolling to Clear-all button and pressing it. - * <p> - * NOTE: Fails if there are already no recent tasks. If a test needs to start with an empty task - * list, check {@link #hasTasks} before calling this since the previous test may have already - * cleared the task list. */ public void dismissAllTasks() { try (LauncherInstrumentation.Closable e = mLauncher.eventsCheck(); @@ -167,9 +162,7 @@ public class BaseOverview extends LauncherInstrumentation.VisibleContainer { final Runnable clickClearAll = () -> mLauncher.clickLauncherObject( mLauncher.waitForObjectInContainer(verifyActiveContainer(), clearAllSelector)); - // When the recents window is enabled, there is no RecentsActivity to send - // LAUNCHER_ACTIVITY_STOPPED_MESSAGE in the 3P launcher case. - if (mLauncher.is3PLauncher() && !mLauncher.isRecentsWindowEnabled()) { + if (mLauncher.is3PLauncher()) { mLauncher.executeAndWaitForLauncherStop( clickClearAll, "clicking 'Clear All'"); @@ -256,7 +249,7 @@ public class BaseOverview extends LauncherInstrumentation.VisibleContainer { */ public void touchTaskbarBottomCorner(boolean tapRight) { try (LauncherInstrumentation.Closable e = mLauncher.eventsCheck()) { - Taskbar taskbar = new Taskbar(mLauncher, TaskbarLocation.OVERVIEW); + Taskbar taskbar = new Taskbar(mLauncher); if (mLauncher.isTransientTaskbar()) { mLauncher.runToState( () -> taskbar.touchBottomCorner(tapRight), @@ -437,18 +430,7 @@ public class BaseOverview extends LauncherInstrumentation.VisibleContainer { "want to get the taskbar")) { mLauncher.waitForSystemLauncherObject(TASKBAR_RES_ID); - return new Taskbar(mLauncher, TaskbarLocation.OVERVIEW); - } - } - - /** - * Returns the bubble bar. - * The bubble bar must already be visible when calling this method. - */ - public BubbleBar getBubbleBar() { - try (LauncherInstrumentation.Closable c = mLauncher.addContextLayer( - "want to get the bubble bar")) { - return new BubbleBar(mLauncher); + return new Taskbar(mLauncher); } } @@ -479,11 +461,6 @@ public class BaseOverview extends LauncherInstrumentation.VisibleContainer { // button on tablets. return false; } - if (task.isDesktop() && !isTablet) { - testLogD(TAG, "Not expecting an actions bar: device is phone and task is desktop"); - // Overview actions aren't visible for desktop tasks. - return false; - } testLogD(TAG, "Expecting an actions bar"); return true; } diff --git a/tests/tapl/com/android/launcher3/tapl/LaunchedAppState.java b/tests/tapl/com/android/launcher3/tapl/LaunchedAppState.java index f9ef1b8f3c..b3ad930659 100644 --- a/tests/tapl/com/android/launcher3/tapl/LaunchedAppState.java +++ b/tests/tapl/com/android/launcher3/tapl/LaunchedAppState.java @@ -36,9 +36,7 @@ import android.view.ViewConfiguration; import androidx.annotation.NonNull; import androidx.test.uiautomator.Condition; import androidx.test.uiautomator.UiDevice; -import androidx.test.uiautomator.UiObject2; -import com.android.launcher3.tapl.Taskbar.TaskbarLocation; import com.android.launcher3.testing.shared.ResourceUtils; import com.android.launcher3.testing.shared.TestProtocol; @@ -48,7 +46,7 @@ import com.android.launcher3.testing.shared.TestProtocol; public final class LaunchedAppState extends Background { // More drag steps than Launchables to give the window manager time to register the drag. - static final int DEFAULT_DRAG_STEPS = 35; + private static final int DEFAULT_DRAG_STEPS = 35; // UNSTASHED_TASKBAR_HANDLE_HINT_SCALE value from TaskbarStashController. private static final float UNSTASHED_TASKBAR_HANDLE_HINT_SCALE = 1.1f; @@ -100,18 +98,7 @@ public final class LaunchedAppState extends Background { public Taskbar getTaskbar() { try (LauncherInstrumentation.Closable c = mLauncher.addContextLayer( "want to get the taskbar")) { - return new Taskbar(mLauncher, TaskbarLocation.LAUNCHED_APP); - } - } - - /** - * Returns the bubble bar. - * The bubble bar must already be visible when calling this method. - */ - public BubbleBar getBubbleBar() { - try (LauncherInstrumentation.Closable c = mLauncher.addContextLayer( - "want to get the bubble bar")) { - return new BubbleBar(mLauncher); + return new Taskbar(mLauncher); } } @@ -165,7 +152,7 @@ public final class LaunchedAppState extends Background { "swiping"); LauncherInstrumentation.log("swipeUpToUnstashTaskbar: sent linear swipe up gesture"); - return new Taskbar(mLauncher, TaskbarLocation.LAUNCHED_APP); + return new Taskbar(mLauncher); } finally { mLauncher.getTestInfo(REQUEST_DISABLE_BLOCK_TIMEOUT); } @@ -241,56 +228,26 @@ public final class LaunchedAppState extends Background { * <p>This unstashing occurs when not actively hovering the taskbar. */ public Taskbar hoverScreenBottomEdgeToUnstashTaskbar() { - return hoverScreenBottomEdgeToTryUnstashTaskbar(/* leftEdge= */ - (mLauncher.getRealDisplaySize().x - mLauncher.getTaskbarUnstashInputArea()) / 2 - - 1); - } - - /** - * Emulate the cursor hovering the screen edge outside of action corner area to unstash the - * taskbar. - */ - public Taskbar hoverScreenBottomEdgeOutsideActionCornerToUnstashTaskbar() { - return hoverScreenBottomEdgeToTryUnstashTaskbar(/* leftEdge= */ - getLauncher().getActionCornerPadding()); - } - - /** - * Emulate the cursor hovering the screen edge in action corner padding to try unstashing the - * taskbar. - */ - public Taskbar hoverScreenBottomCornerToTryUnstashTaskbar() { - // Add 1 pixel to avoid triggering action corner which will affect test result - return hoverScreenBottomEdgeToTryUnstashTaskbar( - mLauncher.getDisplayBottomCornerRadius() + 1); - } - - private Taskbar hoverScreenBottomEdgeToTryUnstashTaskbar(int leftEdge) { try (LauncherInstrumentation.Closable e = mLauncher.eventsCheck(); LauncherInstrumentation.Closable c = mLauncher.addContextLayer( - "cursor hover entering screen edge to try unstashing taskbar")) { + "cursor hover entering screen edge to unstash taskbar")) { mLauncher.getDevice().wait(mStashedTaskbarDefaultScaleCondition, ViewConfiguration.DEFAULT_LONG_PRESS_TIMEOUT); long downTime = SystemClock.uptimeMillis(); + int leftEdge = 10; Point taskbarUnstashArea = new Point(leftEdge, mLauncher.getRealDisplaySize().y - 1); mLauncher.sendPointer(downTime, downTime, MotionEvent.ACTION_HOVER_ENTER, new Point(taskbarUnstashArea.x, taskbarUnstashArea.y), null, InputDevice.SOURCE_MOUSE); - UiObject2 taskbar = mLauncher.tryWaitForLauncherObject( - mLauncher.getLauncherObjectSelector(TASKBAR_RES_ID), - WAIT_TIME_MS); + mLauncher.waitForSystemLauncherObject(TASKBAR_RES_ID); mLauncher.sendPointer(downTime, downTime, MotionEvent.ACTION_HOVER_EXIT, new Point(taskbarUnstashArea.x, taskbarUnstashArea.y), null, InputDevice.SOURCE_MOUSE); - if (taskbar == null) { - return null; - } else { - return new Taskbar(mLauncher, TaskbarLocation.LAUNCHED_APP); - } + return new Taskbar(mLauncher); } } @@ -321,7 +278,7 @@ public final class LaunchedAppState extends Background { InputDevice.SOURCE_MOUSE); mLauncher.waitForSystemLauncherObject(TASKBAR_RES_ID); - return new Taskbar(mLauncher, TaskbarLocation.LAUNCHED_APP); + return new Taskbar(mLauncher); } } } diff --git a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java index 599c84ac73..e0d2f394e1 100644 --- a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java +++ b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java @@ -16,18 +16,14 @@ package com.android.launcher3.tapl; -import static android.app.UiModeManager.MODE_NIGHT_NO; -import static android.app.UiModeManager.MODE_NIGHT_YES; import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_ENABLED; import static android.content.pm.PackageManager.DONT_KILL_APP; import static android.content.pm.PackageManager.MATCH_ALL; import static android.content.pm.PackageManager.MATCH_DISABLED_COMPONENTS; -import static android.view.Display.DEFAULT_DISPLAY; import static android.view.KeyEvent.ACTION_DOWN; import static android.view.MotionEvent.ACTION_SCROLL; import static android.view.MotionEvent.ACTION_UP; import static android.view.MotionEvent.AXIS_GESTURE_SWIPE_FINGER_COUNT; -import static android.view.RoundedCorner.POSITION_BOTTOM_LEFT; import static android.view.Surface.ROTATION_90; import static com.android.launcher3.tapl.Folder.FOLDER_CONTENT_RES_ID; @@ -53,7 +49,6 @@ import android.content.res.Resources; import android.graphics.Insets; import android.graphics.Point; import android.graphics.Rect; -import android.hardware.display.DisplayManager; import android.net.Uri; import android.os.Bundle; import android.os.DeadObjectException; @@ -63,7 +58,6 @@ import android.os.SystemClock; import android.os.Trace; import android.text.TextUtils; import android.util.Log; -import android.view.Display; import android.view.InputDevice; import android.view.InputEvent; import android.view.KeyCharacterMap; @@ -80,8 +74,6 @@ import androidx.test.uiautomator.By; import androidx.test.uiautomator.BySelector; import androidx.test.uiautomator.Configurator; import androidx.test.uiautomator.Direction; -import androidx.test.uiautomator.SearchCondition; -import androidx.test.uiautomator.Searchable; import androidx.test.uiautomator.StaleObjectException; import androidx.test.uiautomator.UiDevice; import androidx.test.uiautomator.UiObject2; @@ -101,7 +93,6 @@ import java.util.Arrays; import java.util.Deque; import java.util.LinkedList; import java.util.List; -import java.util.Objects; import java.util.Optional; import java.util.concurrent.TimeoutException; import java.util.function.BooleanSupplier; @@ -128,7 +119,6 @@ public final class LauncherInstrumentation { private static final Pattern EVENT_ON_BACK_INVOKED = Pattern.compile("onBackInvoked"); private final String mLauncherPackage; - @Nullable private String mTestLauncherPackage; private Boolean mIsLauncher3; private long mTestStartTime = -1; @@ -185,11 +175,6 @@ public final class LauncherInstrumentation { private static final String APPS_RES_ID = "apps_view"; private static final String OVERVIEW_RES_ID = "overview_panel"; private static final String WIDGETS_RES_ID = "primary_widgets_list_view"; - private static final String WIDGET_PICKER_MODULE_PACKAGE = "com.android.launcher3.widgetpicker"; - - // Composable test tag served as resource ID. - private static final String WIDGETS_CATALOG_RES_ID = "widgets_catalog"; - private static final String CONTEXT_MENU_RES_ID = "popup_container"; private static final String OPEN_FOLDER_RES_ID = "folder_content"; static final String TASKBAR_RES_ID = "taskbar_view"; @@ -206,7 +191,6 @@ public final class LauncherInstrumentation { private final UiDevice mDevice; private final Instrumentation mInstrumentation; - private final UiModeManager mUiModeManager; private Integer mExpectedRotation = null; private boolean mExpectedRotationCheckEnabled = true; private final Uri mTestProviderUri; @@ -229,8 +213,6 @@ public final class LauncherInstrumentation { private boolean mWaitingForMotionUpEvent; - private final Integer taskbarPrimaryDisplayId; - private static Pattern getKeyEventPattern(String action, String keyCode) { return Pattern.compile("Key event: KeyEvent.*action=" + action + ".*keyCode=" + keyCode); } @@ -268,8 +250,6 @@ public final class LauncherInstrumentation { public LauncherInstrumentation(Instrumentation instrumentation, boolean isLauncherTest) { mInstrumentation = instrumentation; mDevice = UiDevice.getInstance(instrumentation); - mUiModeManager = (UiModeManager) mInstrumentation.getContext() - .getSystemService(Context.UI_MODE_SERVICE); // Launcher should run in test harness so that custom accessibility protocol between // Launcher and TAPL is enabled. In-process tests enable this protocol with a direct call @@ -346,8 +326,6 @@ public final class LauncherInstrumentation { SystemClock.sleep(100); } } - - taskbarPrimaryDisplayId = getTaskbarPrimaryDisplayId(); } /** @@ -465,40 +443,11 @@ public final class LauncherInstrumentation { .getInt(TestProtocol.TEST_INFO_RESPONSE_FIELD); } - int getBubbleBarDropTargetSize() { - return getTestInfo(TestProtocol.REQUEST_GET_BUBBLE_BAR_DROP_TARGET_SIZE) - .getInt(TestProtocol.TEST_INFO_RESPONSE_FIELD); - } - public int getOverviewCurrentPageIndex() { return getTestInfo(TestProtocol.REQUEST_GET_OVERVIEW_CURRENT_PAGE_INDEX) .getInt(TestProtocol.TEST_INFO_RESPONSE_FIELD); } - public int getOverviewFirstTaskViewIndex() { - return getTestInfo(TestProtocol.REQUEST_GET_OVERVIEW_FIRST_TASKVIEW_INDEX).getInt( - TEST_INFO_RESPONSE_FIELD); - } - - /** - * Toggle night mode and returns the {@link UiModeManager.NightMode} that this method is - * switching into. - */ - @UiModeManager.NightMode - public int toggleNightMode() throws IOException { - int currentNightMode = getNightMode(); - int targetNightMode = currentNightMode == MODE_NIGHT_NO ? MODE_NIGHT_YES : MODE_NIGHT_NO; - mDevice.executeShellCommand("cmd uimode night " - + (targetNightMode == MODE_NIGHT_NO ? "no" : "yes")); - return targetNightMode; - } - - /** Return the current {@link UiModeManager.NightMode}. */ - @UiModeManager.NightMode - public int getNightMode() { - return mUiModeManager.getNightMode(); - } - float getExactScreenCenterX() { return getRealDisplaySize().x / 2f; } @@ -512,11 +461,6 @@ public final class LauncherInstrumentation { .getBoolean(TestProtocol.TEST_INFO_RESPONSE_FIELD); } - Integer getTaskbarPrimaryDisplayId() { - final Bundle testInfo = getTestInfo(TestProtocol.REQUEST_TASKBAR_PRIMARY_DISPLAY_ID); - return testInfo != null ? testInfo.getInt(TestProtocol.TEST_INFO_RESPONSE_FIELD) : null; - } - void setActiveContainer(VisibleContainer container) { sActiveContainer = new WeakReference<>(container); } @@ -723,10 +667,7 @@ public final class LauncherInstrumentation { private String getVisibleStateMessage() { if (hasLauncherObject(CONTEXT_MENU_RES_ID)) return "Context Menu"; if (hasLauncherObject(OPEN_FOLDER_RES_ID)) return "Open Folder"; - if (hasLauncherObject(WIDGETS_RES_ID) || mDevice.hasObject( - By.res(WIDGET_PICKER_MODULE_PACKAGE, WIDGETS_CATALOG_RES_ID))) { - return "Widgets"; - } + if (hasLauncherObject(WIDGETS_RES_ID)) return "Widgets"; if (hasSystemLauncherObject(OVERVIEW_RES_ID)) return "Overview"; if (hasLauncherObject(WORKSPACE_RES_ID)) return "Workspace"; if (hasLauncherObject(APPS_RES_ID)) return "AllApps"; @@ -933,29 +874,22 @@ public final class LauncherInstrumentation { final int waitTime = waitForCorrectState ? WAIT_TIME_MS : 0; final NavigationModel navigationModel = getNavigationModel(); String resPackage = getNavigationButtonResPackage(); - final BySelector recentAppsSelector = By.res(resPackage, "recent_apps"); - final BySelector homeSelector = By.res(resPackage, "home"); - if (taskbarPrimaryDisplayId != null) { - recentAppsSelector.displayId(taskbarPrimaryDisplayId); - homeSelector.displayId(taskbarPrimaryDisplayId); - } - if (navigationModel == NavigationModel.THREE_BUTTON) { - if (!mDevice.wait(Until.hasObject(recentAppsSelector), waitTime)) { + if (!mDevice.wait(Until.hasObject(By.res(resPackage, "recent_apps")), waitTime)) { return "Recents button not present in 3-button mode"; } } else { - if (!mDevice.wait(Until.gone(recentAppsSelector), waitTime)) { + if (!mDevice.wait(Until.gone(By.res(resPackage, "recent_apps")), waitTime)) { return "Recents button is present in non-3-button mode"; } } if (navigationModel == NavigationModel.ZERO_BUTTON) { - if (!mDevice.wait(Until.gone(homeSelector), waitTime)) { + if (!mDevice.wait(Until.gone(By.res(resPackage, "home")), waitTime)) { return "Home button is present in gestural mode"; } } else { - if (!mDevice.wait(Until.hasObject(homeSelector), waitTime)) { + if (!mDevice.wait(Until.hasObject(By.res(resPackage, "home")), waitTime)) { return "Home button not present in non-gestural mode"; } } @@ -992,15 +926,13 @@ public final class LauncherInstrumentation { case WORKSPACE: { waitUntilLauncherObjectGone(APPS_RES_ID); waitUntilLauncherObjectGone(WIDGETS_RES_ID); - waitUntilGoneBySelector( - By.res(WIDGET_PICKER_MODULE_PACKAGE, WIDGETS_CATALOG_RES_ID)); waitUntilSystemLauncherObjectGone(OVERVIEW_RES_ID); waitUntilSystemLauncherObjectGone(SPLIT_PLACEHOLDER_RES_ID); waitUntilLauncherObjectGone(KEYBOARD_QUICK_SWITCH_RES_ID); if (isTaskbarShownOnHome()) { - waitForSystemLauncherObject(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + waitForSystemLauncherObject(TASKBAR_RES_ID); } else { - waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID); } return waitForLauncherObject(WORKSPACE_RES_ID); @@ -1013,19 +945,14 @@ public final class LauncherInstrumentation { waitUntilLauncherObjectGone(KEYBOARD_QUICK_SWITCH_RES_ID); waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID); - return waitForOneOfObjects( - getLauncherObjectSelector(WIDGETS_RES_ID, /* displayId= */ null), - By.res(WIDGET_PICKER_MODULE_PACKAGE, WIDGETS_CATALOG_RES_ID) - ); + return waitForLauncherObject(WIDGETS_RES_ID); } case TASKBAR_ALL_APPS: { waitUntilLauncherObjectGone(WORKSPACE_RES_ID); waitUntilLauncherObjectGone(WIDGETS_RES_ID); - waitUntilGoneBySelector( - By.res(WIDGET_PICKER_MODULE_PACKAGE, WIDGETS_CATALOG_RES_ID)); waitUntilSystemLauncherObjectGone(OVERVIEW_RES_ID); if (isTransientTaskbar()) { - waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID); } waitUntilSystemLauncherObjectGone(SPLIT_PLACEHOLDER_RES_ID); waitUntilLauncherObjectGone(KEYBOARD_QUICK_SWITCH_RES_ID); @@ -1035,16 +962,14 @@ public final class LauncherInstrumentation { case HOME_ALL_APPS: { waitUntilLauncherObjectGone(WORKSPACE_RES_ID); waitUntilLauncherObjectGone(WIDGETS_RES_ID); - waitUntilGoneBySelector( - By.res(WIDGET_PICKER_MODULE_PACKAGE, WIDGETS_CATALOG_RES_ID)); waitUntilSystemLauncherObjectGone(OVERVIEW_RES_ID); waitUntilLauncherObjectGone(KEYBOARD_QUICK_SWITCH_RES_ID); if ((is3PLauncher() && isTablet() && !isTransientTaskbar()) || isTaskbarShownOnHome()) { - waitForSystemLauncherObject(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + waitForSystemLauncherObject(TASKBAR_RES_ID); } else { - waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID); } boolean splitSelectionActive = getTestInfo(REQUEST_GET_SPLIT_SELECTION_ACTIVE) @@ -1060,12 +985,10 @@ public final class LauncherInstrumentation { waitUntilLauncherObjectGone(APPS_RES_ID); waitUntilLauncherObjectGone(WORKSPACE_RES_ID); waitUntilLauncherObjectGone(WIDGETS_RES_ID); - waitUntilGoneBySelector( - By.res(WIDGET_PICKER_MODULE_PACKAGE, WIDGETS_CATALOG_RES_ID)); - if (isTablet() && !is3PLauncher()) { - waitForSystemLauncherObject(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + if (isTablet() && !is3PLauncher() && !isRecentsWindowEnabled()) { + waitForSystemLauncherObject(TASKBAR_RES_ID); } else { - waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID); } waitUntilSystemLauncherObjectGone(SPLIT_PLACEHOLDER_RES_ID); waitUntilLauncherObjectGone(KEYBOARD_QUICK_SWITCH_RES_ID); @@ -1076,12 +999,10 @@ public final class LauncherInstrumentation { waitUntilLauncherObjectGone(APPS_RES_ID); waitUntilLauncherObjectGone(WORKSPACE_RES_ID); waitUntilLauncherObjectGone(WIDGETS_RES_ID); - waitUntilGoneBySelector( - By.res(WIDGET_PICKER_MODULE_PACKAGE, WIDGETS_CATALOG_RES_ID)); if (isTablet()) { - waitForSystemLauncherObject(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + waitForSystemLauncherObject(TASKBAR_RES_ID); } else { - waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID); } waitForSystemLauncherObject(SPLIT_PLACEHOLDER_RES_ID); @@ -1092,8 +1013,6 @@ public final class LauncherInstrumentation { waitUntilLauncherObjectGone(WORKSPACE_RES_ID); waitUntilLauncherObjectGone(APPS_RES_ID); waitUntilLauncherObjectGone(WIDGETS_RES_ID); - waitUntilGoneBySelector( - By.res(WIDGET_PICKER_MODULE_PACKAGE, WIDGETS_CATALOG_RES_ID)); waitUntilSystemLauncherObjectGone(OVERVIEW_RES_ID); waitUntilSystemLauncherObjectGone(SPLIT_PLACEHOLDER_RES_ID); waitUntilLauncherObjectGone(KEYBOARD_QUICK_SWITCH_RES_ID); @@ -1106,10 +1025,10 @@ public final class LauncherInstrumentation { // Only check that Persistent Taskbar is visible, since Transient Taskbar // may or may not be visible by design. if (!isTransientTaskbar()) { - waitForSystemLauncherObject(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + waitForSystemLauncherObject(TASKBAR_RES_ID); } } else { - waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID, taskbarPrimaryDisplayId); + waitUntilSystemLauncherObjectGone(TASKBAR_RES_ID); } return null; } @@ -1152,37 +1071,13 @@ public final class LauncherInstrumentation { getBoolean(TestProtocol.TEST_INFO_RESPONSE_FIELD); } - Parcelable executeAndWaitForLauncherEvent( - Runnable command, - UiAutomation.AccessibilityEventFilter eventFilter, - Supplier<String> message, + Parcelable executeAndWaitForLauncherEvent(Runnable command, + UiAutomation.AccessibilityEventFilter eventFilter, Supplier<String> message, String actionName) { - return executeAndWaitForLauncherEvent(command, eventFilter, message, actionName, null); - } - - private Parcelable executeAndWaitForLauncherEvent( - Runnable command, - UiAutomation.AccessibilityEventFilter eventFilter, - Supplier<String> message, - String actionName, - @Nullable String launcherPackageOverride) { - log("executeAndWaitForLauncherEvent: launcherPackageOverride=" + launcherPackageOverride); return executeAndWaitForEvent( command, - e -> { - CharSequence eventPackageName = e.getPackageName(); - return (launcherPackageOverride != null - ? launcherPackageOverride.equals(eventPackageName) - : mLauncherPackage.equals(eventPackageName)) - && eventFilter.accept(e); - }, - message, - actionName); - } - - public void setTestLauncherPackage(@Nullable String testLauncherPackage) { - log("Setting mTestLauncherPackage=" + testLauncherPackage); - mTestLauncherPackage = testLauncherPackage; + e -> mLauncherPackage.equals(e.getPackageName()) && eventFilter.accept(e), + message, actionName); } Parcelable executeAndWaitForEvent(Runnable command, @@ -1206,12 +1101,10 @@ public final class LauncherInstrumentation { void executeAndWaitForLauncherStop(Runnable command, String actionName) { executeAndWaitForLauncherEvent( - command, + () -> command.run(), event -> TestProtocol.LAUNCHER_ACTIVITY_STOPPED_MESSAGE .equals(event.getClassName().toString()), - () -> "Launcher activity didn't stop", - actionName, - isRecentsWindowEnabled() ? mTestLauncherPackage : null); + () -> "Launcher activity didn't stop", actionName); } /** @@ -1502,32 +1395,20 @@ public final class LauncherInstrumentation { return new LaunchedAppState(this); } - void waitUntilLauncherObjectGone(String resId, @Nullable Integer displayId) { - waitUntilGoneBySelector(getLauncherObjectSelector(resId, displayId)); - } - void waitUntilLauncherObjectGone(String resId) { - waitUntilLauncherObjectGone(resId, /* displayId= */ null); - } - - void waitUntilOverviewObjectGone(String resId, @Nullable Integer displayId) { - waitUntilGoneBySelector(getOverviewObjectSelector(resId, displayId)); + waitUntilGoneBySelector(getLauncherObjectSelector(resId)); } void waitUntilOverviewObjectGone(String resId) { - waitUntilOverviewObjectGone(resId, /* displayId= */ null); - } - - void waitUntilSystemLauncherObjectGone(String resId, @Nullable Integer displayId) { - if (is3PLauncher()) { - waitUntilOverviewObjectGone(resId, displayId); - } else { - waitUntilLauncherObjectGone(resId, displayId); - } + waitUntilGoneBySelector(getOverviewObjectSelector(resId)); } void waitUntilSystemLauncherObjectGone(String resId) { - waitUntilSystemLauncherObjectGone(resId, /* displayId= */ null); + if (is3PLauncher()) { + waitUntilOverviewObjectGone(resId); + } else { + waitUntilLauncherObjectGone(resId); + } } void waitUntilLauncherObjectGone(BySelector selector) { @@ -1560,15 +1441,11 @@ public final class LauncherInstrumentation { return object; } - void waitUntilSystemUiObjectGone(String resId) { - BySelector systemObjectSelector = By.res(SYSTEMUI_PACKAGE, resId); - assertTrue("Unexpected system object visible: " + systemObjectSelector, - mDevice.wait(Until.gone(systemObjectSelector), WAIT_TIME_MS)); - } - @NonNull private UiObject2 getHomeButton() { - if (mUiModeManager.getCurrentModeType() == Configuration.UI_MODE_TYPE_CAR) { + UiModeManager uiManager = + (UiModeManager) getContext().getSystemService(Context.UI_MODE_SERVICE); + if (uiManager.getCurrentModeType() == Configuration.UI_MODE_TYPE_CAR) { return waitForAssistantHomeButton(); } else { return waitForNavigationUiObject("home"); @@ -1709,49 +1586,20 @@ public final class LauncherInstrumentation { return By.copy(selector).pkg(getLauncherPackageName()); } - UiObject2 waitForOneOfObjects(BySelector selectorOne, BySelector selectorTwo) { - SearchCondition<UiObject2> searchCondition = new SearchCondition<>() { - @Override - public UiObject2 apply(Searchable args) { - UiObject2 newObject = args.findObject(selectorTwo); - if (newObject != null) { - return newObject; - } - return args.findObject(selectorOne); - } - }; - return mDevice.wait(searchCondition, WAIT_TIME_MS); - } - - @NonNull - UiObject2 waitForOverviewObject(String resName, @Nullable Integer displayId) { - return waitForObjectBySelector(getOverviewObjectSelector(resName, displayId)); - } - @NonNull UiObject2 waitForOverviewObject(String resName) { - return waitForOverviewObject(resName, /* displayId= */ null); - } - - @NonNull - UiObject2 waitForLauncherObject(String resName, @Nullable Integer displayId) { - return waitForObjectBySelector(getLauncherObjectSelector(resName, displayId)); + return waitForObjectBySelector(getOverviewObjectSelector(resName)); } @NonNull UiObject2 waitForLauncherObject(String resName) { - return waitForLauncherObject(resName, /* displayId= */ null); - } - - @NonNull - UiObject2 waitForSystemLauncherObject(String resName, @Nullable Integer displayId) { - return is3PLauncher() ? waitForOverviewObject(resName, displayId) - : waitForLauncherObject(resName, displayId); + return waitForObjectBySelector(getLauncherObjectSelector(resName)); } @NonNull UiObject2 waitForSystemLauncherObject(String resName) { - return waitForSystemLauncherObject(resName, /* displayId= */null); + return is3PLauncher() ? waitForOverviewObject(resName) + : waitForLauncherObject(resName); } @NonNull @@ -1790,27 +1638,11 @@ public final class LauncherInstrumentation { } BySelector getLauncherObjectSelector(String resName) { - return getLauncherObjectSelector(resName, /* displayId= */ null); - } - - BySelector getLauncherObjectSelector(String resName, @Nullable Integer displayId) { - final BySelector selector = By.res(getLauncherPackageName(), resName); - if (displayId != null) { - selector.displayId(displayId); - } - return selector; + return By.res(getLauncherPackageName(), resName); } BySelector getOverviewObjectSelector(String resName) { - return getOverviewObjectSelector(resName, /* displayId= */ null); - } - - BySelector getOverviewObjectSelector(String resName, @Nullable Integer displayId) { - final BySelector selector = By.res(getOverviewPackageName(), resName); - if (displayId != null) { - selector.displayId(displayId); - } - return selector; + return By.res(getOverviewPackageName(), resName); } String getLauncherPackageName() { @@ -1826,7 +1658,7 @@ public final class LauncherInstrumentation { return mDevice; } - static String eventListToString(List<Integer> actualEvents) { + private static String eventListToString(List<Integer> actualEvents) { if (actualEvents.isEmpty()) return "no events"; return "[" @@ -1856,7 +1688,7 @@ public final class LauncherInstrumentation { actionName); } - boolean isSwitchToStateEvent( + private boolean isSwitchToStateEvent( AccessibilityEvent event, int expectedState, List<Integer> actualEvents) { if (!TestProtocol.SWITCHED_TO_STATE_MESSAGE.equals(event.getClassName())) return false; @@ -2523,17 +2355,6 @@ public final class LauncherInstrumentation { return new Point(displayBounds.width(), displayBounds.height()); } - int getActionCornerPadding() { - return getDisplayBottomCornerRadius() + getTaskbarActionCornerPadding(); - } - - int getDisplayBottomCornerRadius() { - final Display display = Objects.requireNonNull( - getContext().getSystemService(DisplayManager.class)) - .getDisplay(DEFAULT_DISPLAY); - return display.getRoundedCorner(POSITION_BOTTOM_LEFT).getRadius(); - } - public void enableDebugTracing() { getTestInfo(TestProtocol.REQUEST_ENABLE_DEBUG_TRACING); } @@ -2860,22 +2681,4 @@ public final class LauncherInstrumentation { () -> "Didn't detect finishing wallpaper-open animation", actionName); } - - /** Returns the magnetic detach threshold when dismissing a task view. */ - public int getMagneticDetachThreshold() { - return getTestInfo(TestProtocol.REQUEST_DISMISS_MAGNETIC_DETACH_THRESHOLD).getInt( - TestProtocol.TEST_INFO_RESPONSE_FIELD); - } - - /** Returns the taskbar action corner padding. */ - public int getTaskbarActionCornerPadding() { - return getTestInfo(TestProtocol.REQUEST_TASKBAR_ACTION_CORNER_PADDING).getInt( - TestProtocol.TEST_INFO_RESPONSE_FIELD); - } - - /** Returns the taskbar unstash input area. */ - public int getTaskbarUnstashInputArea() { - return getTestInfo(TestProtocol.REQUEST_TASKBAR_UNSTASHED_INPUT_AREA).getInt( - TestProtocol.TEST_INFO_RESPONSE_FIELD); - } } diff --git a/tests/tapl/com/android/launcher3/tapl/OverviewTask.java b/tests/tapl/com/android/launcher3/tapl/OverviewTask.java index 8049ec6ebf..8fbb5e3172 100644 --- a/tests/tapl/com/android/launcher3/tapl/OverviewTask.java +++ b/tests/tapl/com/android/launcher3/tapl/OverviewTask.java @@ -73,15 +73,16 @@ public final class OverviewTask { return getCombinedSplitTaskHeight(); } - return getTaskSnapshot(isDesktop() ? DESKTOP : DEFAULT).getVisibleBounds().height(); + UiObject2 taskSnapshot1 = findObjectInTask((isDesktop() ? DESKTOP : DEFAULT).snapshotRes); + return taskSnapshot1.getVisibleBounds().height(); } /** * Calculates the visible height for split tasks, containing 2 snapshot tiles and a divider. */ private int getCombinedSplitTaskHeight() { - UiObject2 taskSnapshot1 = getTaskSnapshot(SPLIT_TOP_OR_LEFT); - UiObject2 taskSnapshot2 = getTaskSnapshot(SPLIT_BOTTOM_OR_RIGHT); + UiObject2 taskSnapshot1 = findObjectInTask(SPLIT_TOP_OR_LEFT.snapshotRes); + UiObject2 taskSnapshot2 = findObjectInTask(SPLIT_BOTTOM_OR_RIGHT.snapshotRes); // If the split task is partly off screen, taskSnapshot1 can be invisible. if (taskSnapshot1 == null) { @@ -96,6 +97,34 @@ public final class OverviewTask { return bottom - top; } + /** + * Returns the width of the visible task, or the combined width of two tasks in split with a + * divider between. + */ + int getVisibleWidth() { + if (isGrouped()) { + return getCombinedSplitTaskWidth(); + } + + UiObject2 taskSnapshot1 = findObjectInTask(DEFAULT.snapshotRes); + return taskSnapshot1.getVisibleBounds().width(); + } + + /** + * Calculates the visible width for split tasks, containing 2 snapshot tiles and a divider. + */ + private int getCombinedSplitTaskWidth() { + UiObject2 taskSnapshot1 = findObjectInTask(SPLIT_TOP_OR_LEFT.snapshotRes); + UiObject2 taskSnapshot2 = findObjectInTask(SPLIT_BOTTOM_OR_RIGHT.snapshotRes); + + int left = Math.min( + taskSnapshot1.getVisibleBounds().left, taskSnapshot2.getVisibleBounds().left); + int right = Math.max( + taskSnapshot1.getVisibleBounds().right, taskSnapshot2.getVisibleBounds().right); + + return right - left; + } + public int getTaskCenterX() { return mTask.getVisibleCenter().x; } @@ -112,26 +141,6 @@ public final class OverviewTask { return mTask; } - /** - * Returns the task snapshot (thumbnail) for the given `OverviewTaskContainer`. - * If there are no `taskContentView`'s, then the `enableRefactorTaskContentView` feature flag is - * off, in that case fallback to the `snapshotViewRes` id. - */ - private UiObject2 getTaskSnapshot(OverviewTaskContainer overviewTaskContainer) { - UiObject2 taskContentView = mTask.findObject( - mLauncher.getOverviewObjectSelector(overviewTaskContainer.taskContentViewRes)); - if (taskContentView != null) { - BySelector snapshotSelector = mLauncher.getOverviewObjectSelector("snapshot"); - UiObject2 snapshot = mTask.findObject(snapshotSelector); - if (snapshot != null) { - return snapshot; - } - } - - return mTask.findObject( - mLauncher.getOverviewObjectSelector(overviewTaskContainer.snapshotViewRes)); - } - /** * Dismisses the task by swiping up. */ @@ -184,18 +193,9 @@ public final class OverviewTask { // Dismiss the task via flinging it up. final Rect taskBounds = mLauncher.getVisibleBounds(mTask); final int centerX = taskBounds.centerX(); - final int centerY = taskBounds.centerY(); - // Magnetic detach interpolates during the attached region with y = 0.3x. We must account - // for this in the dismiss length to ensure the task is dragged far enough to dismiss. - int magneticDetachLength = mLauncher.getMagneticDetachThreshold(); - int lengthTaskWillTravel = - (int) ((magneticDetachLength * 0.3f) + (centerY - magneticDetachLength)); - int minimumDismissLength = taskBounds.bottom / 2; - int extraDismissLength = Math.max(minimumDismissLength - lengthTaskWillTravel, 0); - // Bound touch to a max of the bottom of the task, account for extra required dismiss length - final int startY = Math.min(centerY + extraDismissLength, taskBounds.bottom); + final int centerY = taskBounds.bottom - 1; mLauncher.executeAndWaitForLauncherEvent( - () -> mLauncher.linearGesture(centerX, startY, centerX, 0, 10, false, + () -> mLauncher.linearGesture(centerX, centerY, centerX, 0, 10, false, LauncherInstrumentation.GestureScope.DONT_EXPECT_PILFER), event -> TestProtocol.DISMISS_ANIMATION_ENDS_MESSAGE.equals(event.getClassName()), () -> "Didn't receive a dismiss animation ends message: " + centerX + ", " @@ -223,13 +223,14 @@ public final class OverviewTask { final Rect taskBounds = mLauncher.getVisibleBounds(mTask); final int centerX = taskBounds.centerX(); - final int centerY = taskBounds.centerY(); + final int centerY = taskBounds.bottom - 1; final int endCenterY = centerY - (taskBounds.height() / 4); mLauncher.executeAndWaitForLauncherEvent( // Set slowDown to true so we do not fling the task at the end of the drag, as - // we want it to cancel and return back to the origin. + // we want it to cancel and return back to the origin. We use 30 steps to + // perform the gesture slowly as well, to avoid flinging. () -> mLauncher.linearGesture(centerX, centerY, centerX, endCenterY, - /* steps= */ 10, /* slowDown= */ true, + /* steps= */ 30, /* slowDown= */ true, LauncherInstrumentation.GestureScope.DONT_EXPECT_PILFER), event -> TestProtocol.DISMISS_ANIMATION_ENDS_MESSAGE.equals( event.getClassName()), @@ -303,13 +304,17 @@ public final class OverviewTask { } } + private UiObject2 findObjectInTask(String resName) { + return mTask.findObject(mLauncher.getOverviewObjectSelector(resName)); + } + /** * Returns whether the given String is contained in this Task's contentDescription. Also returns * true if both Strings are null. */ public boolean containsContentDescription(String expected, OverviewTaskContainer overviewTaskContainer) { - String actual = getTaskSnapshot(overviewTaskContainer).getContentDescription(); + String actual = findObjectInTask(overviewTaskContainer.snapshotRes).getContentDescription(); if (actual == null && expected == null) { return true; } @@ -355,25 +360,19 @@ public final class OverviewTask { */ public enum OverviewTaskContainer { // The main task when the task is not split. - DEFAULT("task_content_view", "snapshot", "icon"), + DEFAULT("snapshot", "icon"), // The first task in split task. - SPLIT_TOP_OR_LEFT("task_content_view", "snapshot", "icon"), + SPLIT_TOP_OR_LEFT("snapshot", "icon"), // The second task in split task. - SPLIT_BOTTOM_OR_RIGHT("bottomright_task_content_view", "bottomright_snapshot", - "bottomRight_icon"), + SPLIT_BOTTOM_OR_RIGHT("bottomright_snapshot", "bottomRight_icon"), // The desktop task. - DESKTOP("background", "background", "icon"); + DESKTOP("background", "icon"); - public final String taskContentViewRes; - // TODO (b/409248525) Delete `snapshotViewRes` when cleaning up - // enableRefactorTaskContentView flag. - public final String snapshotViewRes; + public final String snapshotRes; public final String iconAppRes; - OverviewTaskContainer(String taskContentViewRes, String snapshotViewRes, - String iconAppRes) { - this.taskContentViewRes = taskContentViewRes; - this.snapshotViewRes = snapshotViewRes; + OverviewTaskContainer(String snapshotRes, String iconAppRes) { + this.snapshotRes = snapshotRes; this.iconAppRes = iconAppRes; } } diff --git a/tests/tapl/com/android/launcher3/tapl/OverviewTaskMenu.java b/tests/tapl/com/android/launcher3/tapl/OverviewTaskMenu.java index 5b7529a5e9..90d32f3249 100644 --- a/tests/tapl/com/android/launcher3/tapl/OverviewTaskMenu.java +++ b/tests/tapl/com/android/launcher3/tapl/OverviewTaskMenu.java @@ -16,7 +16,6 @@ package com.android.launcher3.tapl; -import static com.android.launcher3.tapl.LauncherInstrumentation.eventListToString; import static com.android.launcher3.testing.shared.TestProtocol.OVERVIEW_MODAL_TASK_STATE_ORDINAL; import static com.android.launcher3.testing.shared.TestProtocol.OVERVIEW_SPLIT_SELECT_ORDINAL; @@ -24,11 +23,6 @@ import androidx.annotation.NonNull; import androidx.test.uiautomator.By; import androidx.test.uiautomator.UiObject2; -import com.android.launcher3.testing.shared.TestProtocol; - -import java.util.ArrayList; -import java.util.List; - /** Represents the menu of an overview task. */ public class OverviewTaskMenu { @@ -49,43 +43,11 @@ public class OverviewTaskMenu { try (LauncherInstrumentation.Closable e = mLauncher.eventsCheck(); LauncherInstrumentation.Closable c = mLauncher.addContextLayer( "tap split menu item")) { - boolean[] isSplitState = new boolean[]{false}; - boolean[] isDismissEnded = new boolean[]{false}; - final List<Integer> actualEvents = new ArrayList<>(); - mLauncher.executeAndWaitForLauncherEvent( - () -> mLauncher.clickLauncherObject( + mLauncher.runToState(() -> mLauncher.clickLauncherObject( mLauncher.findObjectInContainer(mMenu, By.textStartsWith("Split"))), - event -> { - // Wait for state changed to Split Select. - if (!isSplitState[0] && mLauncher.isSwitchToStateEvent(event, - OVERVIEW_SPLIT_SELECT_ORDINAL, actualEvents)) { - isSplitState[0] = true; - } - - // Wait for dismiss animation to end. - if (!isDismissEnded[0] - && TestProtocol.DISMISS_ANIMATION_ENDS_MESSAGE.equals( - event.getClassName())) { - isDismissEnded[0] = true; - } - - return isSplitState[0] && isDismissEnded[0]; - }, - () -> { - StringBuilder failureMessage = new StringBuilder(); - if (!isSplitState[0]) { - failureMessage.append( - "Failed to receive event for state change to Split Select. " - + "Actual events: ").append( - eventListToString(actualEvents)); - } - if (!isDismissEnded[0]) { - failureMessage.append( - "Failed to receive dismiss animation ends message."); - } - return failureMessage.toString(); - }, - "tapping split menu item"); + OVERVIEW_SPLIT_SELECT_ORDINAL, + "tapping split menu item" + ); try (LauncherInstrumentation.Closable c1 = mLauncher.addContextLayer( "tapped split menu item")) { diff --git a/tests/tapl/com/android/launcher3/tapl/PrivateSpaceContainer.java b/tests/tapl/com/android/launcher3/tapl/PrivateSpaceContainer.java index c33b928c33..a2814f0302 100644 --- a/tests/tapl/com/android/launcher3/tapl/PrivateSpaceContainer.java +++ b/tests/tapl/com/android/launcher3/tapl/PrivateSpaceContainer.java @@ -17,7 +17,6 @@ package com.android.launcher3.tapl; import android.graphics.Point; -import android.multiuser.Flags; import androidx.test.uiautomator.UiObject2; @@ -27,7 +26,6 @@ import androidx.test.uiautomator.UiObject2; public class PrivateSpaceContainer { private static final String PS_HEADER_RES_ID = "ps_header_layout"; private static final String INSTALL_APP_TITLE = "Install"; - private static final String ADD_APP_TITLE = "Add"; private static final String DIVIDER_RES_ID = "private_space_divider"; private final LauncherInstrumentation mLauncher; @@ -64,8 +62,7 @@ public class PrivateSpaceContainer { // Assert Install App Item is present in view. private void verifyInstallAppButtonIsPresent() { - mAppList.getAppIcon(Flags.enableMovingContentIntoPrivateSpace() ? ADD_APP_TITLE : - INSTALL_APP_TITLE); + mAppList.getAppIcon(INSTALL_APP_TITLE); } // Assert Install App Item is not present in view. diff --git a/tests/tapl/com/android/launcher3/tapl/SearchResultFromTaskbarQsb.java b/tests/tapl/com/android/launcher3/tapl/SearchResultFromTaskbarQsb.java index 5e157dd733..f4b4a91744 100644 --- a/tests/tapl/com/android/launcher3/tapl/SearchResultFromTaskbarQsb.java +++ b/tests/tapl/com/android/launcher3/tapl/SearchResultFromTaskbarQsb.java @@ -22,12 +22,8 @@ import androidx.test.uiautomator.UiObject2; */ public class SearchResultFromTaskbarQsb extends SearchResultFromQsb { - private final Taskbar.TaskbarLocation mTaskbarLocation; - - SearchResultFromTaskbarQsb(LauncherInstrumentation launcher, - Taskbar.TaskbarLocation taskbarLocation) { + SearchResultFromTaskbarQsb(LauncherInstrumentation launcher) { super(launcher); - mTaskbarLocation = taskbarLocation; } @Override @@ -37,7 +33,7 @@ public class SearchResultFromTaskbarQsb extends SearchResultFromQsb { @Override protected TaskbarAppIcon createAppIcon(UiObject2 icon) { - return new TaskbarAppIcon(mLauncher, icon, mTaskbarLocation); + return new TaskbarAppIcon(mLauncher, icon); } @Override diff --git a/tests/tapl/com/android/launcher3/tapl/Taskbar.java b/tests/tapl/com/android/launcher3/tapl/Taskbar.java index ef04f0b751..d4e6d3114b 100644 --- a/tests/tapl/com/android/launcher3/tapl/Taskbar.java +++ b/tests/tapl/com/android/launcher3/tapl/Taskbar.java @@ -41,20 +41,10 @@ import java.util.stream.Collectors; */ public final class Taskbar { - /** The TaskbarLocation */ - enum TaskbarLocation { - /** Launched application. */ - LAUNCHED_APP, - /** Overview screen with recent apps. */ - OVERVIEW, - } - private final LauncherInstrumentation mLauncher; - private final TaskbarLocation mTaskbarLocation; - Taskbar(LauncherInstrumentation launcher, TaskbarLocation taskbarLocation) { + Taskbar(LauncherInstrumentation launcher) { mLauncher = launcher; - mTaskbarLocation = taskbarLocation; try (LauncherInstrumentation.Closable c = mLauncher.addContextLayer( "expect new taskbar to be visible")) { mLauncher.waitForSystemLauncherObject(TASKBAR_RES_ID); @@ -75,7 +65,7 @@ public final class Taskbar { "want to get a taskbar icon")) { return new TaskbarAppIcon(mLauncher, mLauncher.waitForObjectInContainer( mLauncher.waitForSystemLauncherObject(TASKBAR_RES_ID), - AppIcon.getAppIconSelector(appName, mLauncher)), mTaskbarLocation); + AppIcon.getAppIconSelector(appName, mLauncher))); } } @@ -157,7 +147,7 @@ public final class Taskbar { public TaskbarAllApps getAllApps() { try (LauncherInstrumentation.Closable c = mLauncher.addContextLayer( "want to get taskbar all apps object")) { - return new TaskbarAllApps(mLauncher, mTaskbarLocation); + return new TaskbarAllApps(mLauncher); } } diff --git a/tests/tapl/com/android/launcher3/tapl/TaskbarAllApps.java b/tests/tapl/com/android/launcher3/tapl/TaskbarAllApps.java index d0839da5c2..3d39041124 100644 --- a/tests/tapl/com/android/launcher3/tapl/TaskbarAllApps.java +++ b/tests/tapl/com/android/launcher3/tapl/TaskbarAllApps.java @@ -18,7 +18,6 @@ package com.android.launcher3.tapl; import androidx.annotation.NonNull; import androidx.test.uiautomator.UiObject2; -import com.android.launcher3.tapl.Taskbar.TaskbarLocation; import com.android.launcher3.testing.shared.TestProtocol; /** @@ -26,11 +25,8 @@ import com.android.launcher3.testing.shared.TestProtocol; */ public class TaskbarAllApps extends AllApps { - private final TaskbarLocation mTaskbarLocation; - - TaskbarAllApps(LauncherInstrumentation launcher, TaskbarLocation taskbarLocation) { + TaskbarAllApps(LauncherInstrumentation launcher) { super(launcher); - mTaskbarLocation = taskbarLocation; } @Override @@ -47,7 +43,7 @@ public class TaskbarAllApps extends AllApps { @NonNull @Override protected TaskbarAppIcon createAppIcon(UiObject2 icon) { - return new TaskbarAppIcon(mLauncher, icon, mTaskbarLocation); + return new TaskbarAppIcon(mLauncher, icon); } @Override @@ -70,7 +66,7 @@ public class TaskbarAllApps extends AllApps { @NonNull @Override public TaskbarAllAppsQsb getQsb() { - return new TaskbarAllAppsQsb(mLauncher, verifyActiveContainer(), mTaskbarLocation); + return new TaskbarAllAppsQsb(mLauncher, verifyActiveContainer()); } @Override diff --git a/tests/tapl/com/android/launcher3/tapl/TaskbarAllAppsQsb.java b/tests/tapl/com/android/launcher3/tapl/TaskbarAllAppsQsb.java index c893bf0e5d..7cecd3e553 100644 --- a/tests/tapl/com/android/launcher3/tapl/TaskbarAllAppsQsb.java +++ b/tests/tapl/com/android/launcher3/tapl/TaskbarAllAppsQsb.java @@ -22,12 +22,8 @@ import androidx.test.uiautomator.UiObject2; */ public class TaskbarAllAppsQsb extends Qsb { - private final Taskbar.TaskbarLocation mTaskbarLocation; - - TaskbarAllAppsQsb(LauncherInstrumentation launcher, UiObject2 allAppsContainer, - Taskbar.TaskbarLocation taskbarLocation) { + TaskbarAllAppsQsb(LauncherInstrumentation launcher, UiObject2 allAppsContainer) { super(launcher, allAppsContainer, "search_container_all_apps"); - mTaskbarLocation = taskbarLocation; } @Override @@ -37,6 +33,6 @@ public class TaskbarAllAppsQsb extends Qsb { @Override protected SearchResultFromTaskbarQsb createSearchResult() { - return new SearchResultFromTaskbarQsb(mLauncher, mTaskbarLocation); + return new SearchResultFromTaskbarQsb(mLauncher); } } diff --git a/tests/tapl/com/android/launcher3/tapl/TaskbarAppIcon.java b/tests/tapl/com/android/launcher3/tapl/TaskbarAppIcon.java index d968e89cee..d05c112d76 100644 --- a/tests/tapl/com/android/launcher3/tapl/TaskbarAppIcon.java +++ b/tests/tapl/com/android/launcher3/tapl/TaskbarAppIcon.java @@ -17,25 +17,18 @@ package com.android.launcher3.tapl; import androidx.test.uiautomator.UiObject2; -import com.android.launcher3.tapl.Taskbar.TaskbarLocation; - import java.util.regex.Pattern; /** * App icon specifically on the Taskbar. */ -public final class TaskbarAppIcon extends AppIcon implements SplitscreenDragSource, - BubbleBarDragSource { +public final class TaskbarAppIcon extends AppIcon implements SplitscreenDragSource { private static final Pattern LONG_CLICK_EVENT = Pattern.compile("onTaskbarItemLongClick"); private static final Pattern RIGHT_CLICK_EVENT = Pattern.compile("onTaskbarItemRightClick"); - private final TaskbarLocation mTaskbarLocation; - - TaskbarAppIcon(LauncherInstrumentation launcher, UiObject2 icon, - TaskbarLocation taskbarLocation) { + TaskbarAppIcon(LauncherInstrumentation launcher, UiObject2 icon) { super(launcher, icon); - this.mTaskbarLocation = taskbarLocation; } @Override @@ -68,11 +61,6 @@ public final class TaskbarAppIcon extends AppIcon implements SplitscreenDragSour return new TaskbarAppIconMenu(mLauncher, menu); } - @Override - public TaskbarLocation getTaskbarLocation() { - return mTaskbarLocation; - } - @Override public Launchable getLaunchable() { return this; diff --git a/tests/tapl/com/android/launcher3/tapl/Widgets.java b/tests/tapl/com/android/launcher3/tapl/Widgets.java index acf4c6c2b2..ac2748e6a1 100644 --- a/tests/tapl/com/android/launcher3/tapl/Widgets.java +++ b/tests/tapl/com/android/launcher3/tapl/Widgets.java @@ -254,7 +254,6 @@ public final class Widgets extends LauncherInstrumentation.VisibleContainer targetAppSelector); final UiObject2 searchBar = findSearchBar(); - // If header's title is under or above search bar, let's not process the header yet, // scroll a bit more to bring the header into visible area. if (headerTitle != null @@ -271,14 +270,6 @@ public final class Widgets extends LauncherInstrumentation.VisibleContainer // to briefly appear to handle the gesture, which can break our test. boolean isHeaderOutOfGestureRegion = headerTitle.getVisibleCenter().y < mLauncher.getBottomGestureStartOnScreen(); - - if (!isHeaderOutOfGestureRegion) { - log("Test app's header is not out of gesture region, scrolling up"); - mLauncher.scrollDownByDistance(widgetListView, scrollDistance); - isHeaderOutOfGestureRegion = true; - } - - if (!hasHeaderExpanded && isHeaderOutOfGestureRegion) { log("Header has not been expanded. Click to expand."); hasHeaderExpanded = true; @@ -295,7 +286,6 @@ public final class Widgets extends LauncherInstrumentation.VisibleContainer UiObject2 widgetsContainer = mLauncher.findObjectInContainer( rightPane != null ? rightPane : widgetListView, widgetsContainerSelector); - if (widgetsContainer != null) { log("Widgets container found."); return widgetsContainer; diff --git a/tests/tapl/com/android/launcher3/tapl/Workspace.java b/tests/tapl/com/android/launcher3/tapl/Workspace.java index d1c4ccc235..68c7049a11 100644 --- a/tests/tapl/com/android/launcher3/tapl/Workspace.java +++ b/tests/tapl/com/android/launcher3/tapl/Workspace.java @@ -465,17 +465,16 @@ public final class Workspace extends Home { launcher.waitUntilLauncherObjectGone(DROP_BAR_RES_ID); final BySelector installerAlert = By.text(Pattern.compile( - ".*uninstall this app\\?", - Pattern.DOTALL | Pattern.MULTILINE | Pattern.CASE_INSENSITIVE)); + "Do you want to uninstall this app\\?", + Pattern.DOTALL | Pattern.MULTILINE)); final UiDevice device = launcher.getDevice(); assertTrue("uninstall alert is not shown", device.wait( Until.hasObject(installerAlert), LauncherInstrumentation.WAIT_TIME_MS)); - final UiObject2 confirm = device.findObject(By.text(Pattern.compile( - "OK|Uninstall", Pattern.CASE_INSENSITIVE))); - assertNotNull("Confirm button is not shown", confirm); - launcher.clickObject(confirm); - assertTrue("Uninstall alert is not dismissed after clicking confirm button", - device.wait(Until.gone(installerAlert), LauncherInstrumentation.WAIT_TIME_MS)); + final UiObject2 ok = device.findObject(By.text("OK")); + assertNotNull("OK button is not shown", ok); + launcher.clickObject(ok); + assertTrue("Uninstall alert is not dismissed after clicking OK", device.wait( + Until.gone(installerAlert), LauncherInstrumentation.WAIT_TIME_MS)); try (LauncherInstrumentation.Closable c1 = launcher.addContextLayer( "uninstalled app by dragging to the drop bar")) { diff --git a/tests/tapl/com/android/launcher3/tapl/WorkspaceDragSource.java b/tests/tapl/com/android/launcher3/tapl/WorkspaceDragSource.java index 7cbaec1f9f..e5a2a2ef6c 100644 --- a/tests/tapl/com/android/launcher3/tapl/WorkspaceDragSource.java +++ b/tests/tapl/com/android/launcher3/tapl/WorkspaceDragSource.java @@ -56,7 +56,7 @@ interface WorkspaceDragSource { launchableCenter.x >= width ? launchableCenter.x - width / 2 : launchableCenter.x + width / 2, - (int) (displaySize.y / 2.5f)), + displaySize.y / 2), startsActivity, isWidgetShortcut, launchable::addExpectedEventsForLongClick); diff --git a/wmshell/Android.bp b/wmshell/Android.bp index 39e8e69df2..25d3067a34 100644 --- a/wmshell/Android.bp +++ b/wmshell/Android.bp @@ -27,9 +27,7 @@ java_library { name: "wm_shell_protolog-groups", srcs: [ "src/com/android/wm/shell/protolog/ShellProtoLogGroup.java", - ], - static_libs: [ - "protolog-common-lib", + ":protolog-common-src", ], } @@ -41,6 +39,28 @@ filegroup { path: "src", } +// Sources that have no dependencies that can be used directly downstream of this library +// TODO(b/322791067): move these sources to WindowManager-Shell-shared +filegroup { + name: "wm_shell_util-sources", + srcs: [ + "src/com/android/wm/shell/animation/Interpolators.java", + "src/com/android/wm/shell/common/bubbles/*.kt", + "src/com/android/wm/shell/common/bubbles/*.java", + "src/com/android/wm/shell/common/magnetictarget/MagnetizedObject.kt", + "src/com/android/wm/shell/common/split/SplitScreenConstants.java", + "src/com/android/wm/shell/common/TransactionPool.java", + "src/com/android/wm/shell/common/TriangleShape.java", + "src/com/android/wm/shell/common/desktopmode/*.kt", + "src/com/android/wm/shell/draganddrop/DragAndDropConstants.java", + "src/com/android/wm/shell/pip/PipContentOverlay.java", + "src/com/android/wm/shell/startingsurface/SplashScreenExitAnimationUtils.java", + "src/com/android/wm/shell/sysui/ShellSharedConstants.java", + "src/com/android/wm/shell/util/**/*.java", + ], + path: "src", +} + // Aidls which can be used directly downstream of this library filegroup { name: "wm_shell-aidls", @@ -59,40 +79,74 @@ filegroup { path: "src", } -java_genrule { +genrule { name: "wm_shell_protolog_src", srcs: [ ":protolog-impl", - ":wm_shell-sources", ":wm_shell_protolog-groups", + ":wm_shell-sources", ], tools: ["protologtool"], cmd: "$(location protologtool) transform-protolog-calls " + - "--protolog-class com.android.internal.protolog.ProtoLog " + + "--protolog-class com.android.internal.protolog.common.ProtoLog " + "--loggroups-class com.android.wm.shell.protolog.ShellProtoLogGroup " + "--loggroups-jar $(location :wm_shell_protolog-groups) " + "--viewer-config-file-path /system_ext/etc/wmshell.protolog.pb " + + "--legacy-viewer-config-file-path /system_ext/etc/wmshell.protolog.json.gz " + + "--legacy-output-file-path /data/misc/wmtrace/shell_log.winscope " + "--output-srcjar $(out) " + "$(locations :wm_shell-sources)", out: ["wm_shell_protolog.srcjar"], } -java_genrule { - name: "gen-wmshell.protolog.pb", +genrule { + name: "generate-wm_shell_protolog.json", srcs: [ - ":wm_shell-sources", ":wm_shell_protolog-groups", + ":wm_shell-sources", ], tools: ["protologtool"], cmd: "$(location protologtool) generate-viewer-config " + - "--protolog-class com.android.internal.protolog.ProtoLog " + + "--protolog-class com.android.internal.protolog.common.ProtoLog " + "--loggroups-class com.android.wm.shell.protolog.ShellProtoLogGroup " + "--loggroups-jar $(location :wm_shell_protolog-groups) " + + "--viewer-config-type json " + + "--viewer-config $(out) " + + "$(locations :wm_shell-sources)", + out: ["wm_shell_protolog.json"], +} + +genrule { + name: "gen-wmshell.protolog.pb", + srcs: [ + ":wm_shell_protolog-groups", + ":wm_shell-sources", + ], + tools: ["protologtool"], + cmd: "$(location protologtool) generate-viewer-config " + + "--protolog-class com.android.internal.protolog.common.ProtoLog " + + "--loggroups-class com.android.wm.shell.protolog.ShellProtoLogGroup " + + "--loggroups-jar $(location :wm_shell_protolog-groups) " + + "--viewer-config-type proto " + "--viewer-config $(out) " + "$(locations :wm_shell-sources)", out: ["wmshell.protolog.pb"], } +genrule { + name: "protolog.json.gz", + srcs: [":generate-wm_shell_protolog.json"], + out: ["wmshell.protolog.json.gz"], + cmd: "gzip -c < $(in) > $(out)", +} + +prebuilt_etc { + name: "wmshell.protolog.json.gz", + system_ext_specific: true, + src: ":protolog.json.gz", + filename_from_src: true, +} + prebuilt_etc { name: "wmshell.protolog.pb", system_ext_specific: true, @@ -112,76 +166,69 @@ java_library { }, } -java_library { - name: "WindowManager-Shell-lite-proto", +filegroup { + name: "wm_shell-shared-aidls", srcs: [ - "src/com/android/wm/shell/desktopmode/education/data/proto/**/*.proto", - "src/com/android/wm/shell/desktopmode/persistence/*.proto", + "shared/**/*.aidl", + ], + + path: "shared/src", +} + +java_library { + name: "WindowManager-Shell-shared", + + srcs: [ + "shared/**/*.java", + "shared/**/*.kt", + ":wm_shell-shared-aidls", + ], + static_libs: [ + "androidx.dynamicanimation_dynamicanimation", + "jsr330", ], - proto: { - type: "lite", - }, } android_library { name: "WindowManager-Shell", srcs: [ - // TODO(b/168581922) protologtool do not support kotlin(*.kt) - ":wm_shell-aidls", - ":wm_shell-shared-aidls", - ":wm_shell-sources-kt", ":wm_shell_protolog_src", - "src/com/android/wm/shell/EventLogTags.logtags", + // TODO(b/168581922) protologtool do not support kotlin(*.kt) + ":wm_shell-sources-kt", + ":wm_shell-aidls", ], resource_dirs: [ "res", ], static_libs: [ - "//frameworks/base/packages/SystemUI/aconfig:com_android_systemui_flags_lib", - "//frameworks/libs/systemui:com_android_systemui_shared_flags_lib", - "//frameworks/libs/systemui:iconloader_base", - "//frameworks/libs/systemui:msdl", - "//frameworks/libs/systemui:tracinglib-platform", - "//frameworks/libs/systemui:view_capture", - "PlatformAnimationLib", - "WindowManager-Shell-lite-proto", - "WindowManager-Shell-proto", - "WindowManager-Shell-shared", - "androidx-constraintlayout_constraintlayout", "androidx.appcompat_appcompat", + "androidx.core_core-animation", + "androidx.core_core-ktx", "androidx.arch.core_core-runtime", "androidx.compose.material3_material3", - "androidx.core_core-ktx", - "androidx.datastore_datastore", + "androidx-constraintlayout_constraintlayout", "androidx.dynamicanimation_dynamicanimation", "androidx.recyclerview_recyclerview", - "com_android_launcher3_flags_lib", - "com_android_wm_shell_flags_lib", - "dagger2", - "jsr330", "kotlinx-coroutines-android", "kotlinx-coroutines-core", - "mechanics", + "//frameworks/libs/systemui:com_android_systemui_shared_flags_lib", + "//frameworks/libs/systemui:iconloader_base", + "com_android_wm_shell_flags_lib", + "com.android.window.flags.window-aconfig-java", + "WindowManager-Shell-proto", + "WindowManager-Shell-shared", "perfetto_trace_java_protos", + "dagger2", + "jsr330", ], libs: [ // Soong fails to automatically add this dependency because all the // *.kt sources are inside a filegroup. "kotlin-annotations", ], - flags_packages: [ - "com_android_wm_shell_flags", - ], kotlincflags: ["-Xjvm-default=all"], manifest: "AndroidManifest.xml", plugins: ["dagger2-compiler"], use_resource_processor: true, } - -java_defaults { - name: "wmshell_defaults", - required: [ - "wmshell.protolog.pb", - ], -} diff --git a/wmshell/OWNERS b/wmshell/OWNERS index 68970e68de..ebebd8a52c 100644 --- a/wmshell/OWNERS +++ b/wmshell/OWNERS @@ -1,7 +1,5 @@ -jorgegil@google.com -pbdr@google.com -pragyabajoria@google.com +xutan@google.com # Give submodule owners in shell resource approval -per-file res*/*/*.xml = atsjenk@google.com, hwwang@google.com, lbill@google.com, madym@google.com, vaniadesmonda@google.com, pbdr@google.com, mpodolian@google.com, liranb@google.com, pragyabajoria@google.com, uysalorhan@google.com, gsennton@google.com, mattsziklay@google.com, mdehaini@google.com, peanutbutter@google.com, jeremysim@google.com +per-file res*/*/*.xml = atsjenk@google.com, hwwang@google.com, jorgegil@google.com, lbill@google.com, madym@google.com, nmusgrave@google.com, pbdr@google.com, tkachenkoi@google.com, mpodolian@google.com, liranb@google.com per-file res*/*/tv_*.xml = bronger@google.com diff --git a/wmshell/aconfig/Android.bp b/wmshell/aconfig/Android.bp index f8da7fa86c..7f8f57b172 100644 --- a/wmshell/aconfig/Android.bp +++ b/wmshell/aconfig/Android.bp @@ -4,7 +4,6 @@ aconfig_declarations { container: "system", srcs: [ "multitasking.aconfig", - "automotive.aconfig", ], } diff --git a/wmshell/aconfig/OWNERS b/wmshell/aconfig/OWNERS index eacadeacab..9eba0f2dea 100644 --- a/wmshell/aconfig/OWNERS +++ b/wmshell/aconfig/OWNERS @@ -1,4 +1,3 @@ # Owners for flag changes madym@google.com -hwwang@google.com -sqsun@google.com \ No newline at end of file +hwwang@google.com \ No newline at end of file diff --git a/wmshell/aconfig/multitasking.aconfig b/wmshell/aconfig/multitasking.aconfig index 69e2aca01a..112eb617e7 100644 --- a/wmshell/aconfig/multitasking.aconfig +++ b/wmshell/aconfig/multitasking.aconfig @@ -1,10 +1,21 @@ # proto-file: build/make/tools/aconfig/aconfig_protos/protos/aconfig.proto -# proto-message: flag_declarations -# Project link: http://gantry/projects/android_platform_multitasking package: "com.android.wm.shell" container: "system" +flag { + name: "enable_app_pairs" + namespace: "multitasking" + description: "Enables the ability to create and save app pairs to the Home screen" + bug: "274835596" +} + +flag { + name: "enable_split_contextual" + namespace: "multitasking" + description: "Enables invoking split contextually" + bug: "276361926" +} flag { name: "enable_taskbar_navbar_unification" @@ -14,10 +25,18 @@ flag { } flag { - name: "enable_pip2" + name: "enable_pip2_implementation" namespace: "multitasking" description: "Enables the new implementation of PiP (PiP2)" - bug: "311462191" + bug: "290220798" + is_fixed_read_only: true +} + +flag { + name: "enable_left_right_split_in_portrait" + namespace: "multitasking" + description: "Enables left/right split in portrait" + bug: "291018646" } flag { @@ -83,13 +102,6 @@ flag { bug: "342245211" } -flag { - name: "enable_create_any_bubble" - namespace: "multitasking" - description: "Enable UI affordances to create bubbles via launcher app icons" - bug: "385220199" -} - flag { name: "only_reuse_bubbled_task_when_launched_from_bubble" namespace: "multitasking" @@ -101,156 +113,10 @@ flag { } flag { - name: "enable_bubble_app_compat_fixes" + name: "animate_bubble_size_change" namespace: "multitasking" - description: "Enable fixes for app compat (e.g. insets and layout issues) for bubbles" - bug: "384610402" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { - name: "enable_taskbar_on_phones" - namespace: "multitasking" - description: "Enables taskbar on phones" - bug: "348007377" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { - name: "enable_shell_top_task_tracking" - namespace: "multitasking" - description: "Enables tracking top tasks from the shell" - bug: "346588978" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { - name: "enable_recents_bookend_transition" - namespace: "multitasking" - description: "Use a finish-transition to clean up recents instead of the finish-WCT" - bug: "346588978" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { - name: "enable_bubble_to_fullscreen" - namespace: "multitasking" - description: "Enable an option to move bubbles to fullscreen" - bug: "363326492" -} - -flag { - name: "enable_flexible_two_app_split" - namespace: "multitasking" - description: "Enables only 2 app 90:10 split" - bug: "349828130" -} - -flag { - name: "enable_flexible_split" - namespace: "multitasking" - description: "Enables flexibile split feature for split screen" - bug: "349828130" -} - -flag { - name: "task_view_repository" - namespace: "multitasking" - description: "Factor task-view state tracking out of taskviewtransitions" - bug: "384976265" -} - -flag { - name: "fix_missing_user_change_callbacks" - namespace: "multitasking" - description: "Fix a race condition that could make Shell miss a user change callback." - bug: "404251029" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { - name: "enable_bubble_bar_on_phones" - namespace: "multitasking" - description: "Try out bubble bar on phones" - bug: "394869612" -} - -flag { - name: "enable_bubble_task_view_listener" - namespace: "multitasking" - description: "Use the same taskview listener for bubble bar and floating" - bug: "272102927" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { - name: "enable_gsf" - namespace: "multitasking" - description: "Applies GSF font styles to multitasking." - bug: "400534660" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { - name: "enable_magnetic_split_divider" - namespace: "multitasking" - description: "Makes the split divider snap 'magnetically' to available snap points during drag" - bug: "383631946" -} - -flag { - name: "enable_dynamic_insets_for_app_launch" - namespace: "multitasking" - description: "Enables dynamic insets for app launch so the window is properly cropped" - bug: "336511494" -} - -flag { - name: "task_view_transitions_refactor" - namespace: "windowing_frontend" - description: "Refactor TaskViewTransitions.startAnimation" - bug: "402454136" -} - -flag { - name: "enable_pip_box_shadows" - namespace: "multitasking" - description: "Enables box shadows for PiP" - bug: "367464660" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { - name: "enable_bubble_swipe_up_cleanup" - namespace: "multitasking" - description: "Enable clean up of bubbles swipe gesture handling" - bug: "391909607" - metadata { - purpose: PURPOSE_BUGFIX - } -} - -flag { - name: "enable_enter_split_remove_bubble" - namespace: "multitasking" - description: "Enable removing a task from bubbles when it is entering split screen" - bug: "396315875" + description: "Turns on the animation for bubble bar icons size change" + bug: "335575529" metadata { purpose: PURPOSE_BUGFIX } diff --git a/wmshell/build.gradle b/wmshell/build.gradle index 3f9e2c0808..427ff3120b 100644 --- a/wmshell/build.gradle +++ b/wmshell/build.gradle @@ -1,9 +1,9 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.google.ksp) + id 'com.android.library' + id 'org.jetbrains.kotlin.android' + id 'com.google.devtools.ksp' } // LC-Build-TODO: addFrameworkJar() doesn't work, what??? diff --git a/wmshell/multivalentTests/Android.bp b/wmshell/multivalentTests/Android.bp index 5d14dc054b..1ad19c9f30 100644 --- a/wmshell/multivalentTests/Android.bp +++ b/wmshell/multivalentTests/Android.bp @@ -35,6 +35,7 @@ android_app { android_robolectric_test { name: "WMShellRobolectricTests", instrumentation_for: "WindowManagerShellRobolectric", + upstream: true, java_resource_dirs: [ "robolectric/config", ], @@ -49,14 +50,9 @@ android_robolectric_test { "androidx.test.runner", "androidx.test.rules", "androidx.test.ext.junit", - "mockito-robolectric-prebuilt", // mockito deps order matters! + "mockito-robolectric-prebuilt", "mockito-kotlin2", - "WMShellTests-utils", // order matters because it depends on mockito-kotlin2 - "platform-parametric-runner-lib", "truth", - "flag-junit-base", - "flag-junit", - "testables", ], auto_gen_config: true, } @@ -67,25 +63,22 @@ android_test { "src/**/*.kt", ], static_libs: [ - "WMShellTests-utils", "WindowManager-Shell", - "androidx.core_core-animation-testing", - "androidx.test.ext.junit", - "androidx.test.rules", - "androidx.test.runner", - "frameworks-base-testutils", "junit", + "androidx.core_core-animation-testing", + "androidx.test.runner", + "androidx.test.rules", + "androidx.test.ext.junit", + "frameworks-base-testutils", "mockito-kotlin2", "mockito-target-extended-minus-junit4", - "platform-parametric-runner-lib", + "truth", "platform-test-annotations", "platform-test-rules", - "testables", - "truth", ], libs: [ - "android.test.base.stubs.system", - "android.test.runner.stubs.system", + "android.test.base", + "android.test.runner", ], jni_libs: [ "libdexmakerjvmtiagent", diff --git a/wmshell/multivalentTests/AndroidManifest.xml b/wmshell/multivalentTests/AndroidManifest.xml index 4341eaaf9f..f8f8338e5f 100644 --- a/wmshell/multivalentTests/AndroidManifest.xml +++ b/wmshell/multivalentTests/AndroidManifest.xml @@ -1,23 +1,8 @@ <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.wm.shell.multivalenttests"> - <uses-permission android:name="android.permission.MANAGE_ACTIVITY_TASKS"/> - <uses-permission android:name="android.permission.GET_INTENT_SENDER_INTENT"/> - <application android:debuggable="true" android:supportsRtl="true" > <uses-library android:name="android.test.runner" /> - <activity android:name="com.android.wm.shell.bubbles.bar.BubbleBarAnimationHelperTest$TestActivity" - android:exported="true"/> - - <activity android:name="com.android.wm.shell.bubbles.bar.BubbleBarMenuViewControllerTest$TestActivity" - android:exported="true"/> - - <activity android:name=".bubbles.TestActivity" - android:allowEmbedded="true" - android:documentLaunchMode="always" - android:excludeFromRecents="true" - android:exported="false" - android:resizeableActivity="true" /> </application> <instrumentation diff --git a/wmshell/multivalentTests/AndroidManifestRobolectric.xml b/wmshell/multivalentTests/AndroidManifestRobolectric.xml index 787651fb3d..ffcd7d46fb 100644 --- a/wmshell/multivalentTests/AndroidManifestRobolectric.xml +++ b/wmshell/multivalentTests/AndroidManifestRobolectric.xml @@ -1,10 +1,3 @@ <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.wm.shell.multivalenttests"> - <application> - <activity android:name="com.android.wm.shell.bubbles.bar.BubbleBarAnimationHelperTest$TestActivity" - android:exported="true"/> - <activity android:name="com.android.wm.shell.bubbles.bar.BubbleBarMenuViewControllerTest$TestActivity" - android:exported="true"/> - </application> </manifest> - diff --git a/wmshell/multivalentTests/robolectric/config/robolectric.properties b/wmshell/multivalentTests/robolectric/config/robolectric.properties index d50d976c9e..7a0527ccaa 100644 --- a/wmshell/multivalentTests/robolectric/config/robolectric.properties +++ b/wmshell/multivalentTests/robolectric/config/robolectric.properties @@ -1,3 +1,2 @@ sdk=NEWEST_SDK -graphicsMode=NATIVE diff --git a/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt b/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt index 3b67d13106..9e1440d571 100644 --- a/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt +++ b/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt @@ -27,11 +27,10 @@ import android.view.WindowManager import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest -import com.android.internal.protolog.ProtoLog +import com.android.internal.protolog.common.ProtoLog import com.android.wm.shell.R import com.android.wm.shell.bubbles.BubblePositioner.MAX_HEIGHT -import com.android.wm.shell.shared.bubbles.BubbleBarLocation -import com.android.wm.shell.shared.bubbles.DeviceConfig +import com.android.wm.shell.common.bubbles.BubbleBarLocation import com.google.common.truth.Truth.assertThat import com.google.common.util.concurrent.MoreExecutors.directExecutor import org.junit.Before @@ -155,19 +154,19 @@ class BubblePositionerTest { /** Test that the default resting position on tablet is middle right. */ @Test - fun testGetDefaultPosition_noteBubble_onTablet() { + fun testGetDefaultPosition_appBubble_onTablet() { positioner.update(defaultDeviceConfig.copy(isLargeScreen = true)) val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) - val startPosition = positioner.getDefaultStartPosition(true /* isNoteBubble */) + val startPosition = positioner.getDefaultStartPosition(true /* isAppBubble */) assertThat(startPosition.x).isEqualTo(allowableStackRegion.right) assertThat(startPosition.y).isEqualTo(defaultYPosition) } @Test - fun testGetRestingPosition_noteBubble_onTablet_RTL() { + fun testGetRestingPosition_appBubble_onTablet_RTL() { positioner.update(defaultDeviceConfig.copy(isLargeScreen = true, isRtl = true)) val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) - val startPosition = positioner.getDefaultStartPosition(true /* isNoteBubble */) + val startPosition = positioner.getDefaultStartPosition(true /* isAppBubble */) assertThat(startPosition.x).isEqualTo(allowableStackRegion.left) assertThat(startPosition.y).isEqualTo(defaultYPosition) } @@ -222,7 +221,7 @@ class BubblePositionerTest { positioner.setShowingInBubbleBar(true) positioner.update(deviceConfig) - positioner.updateBubbleBarTopOnScreen(100) + positioner.bubbleBarTopOnScreen = 2500 val spaceBetweenTopInsetAndBubbleBarInLandscape = 1680 val expandedViewVerticalSpacing = @@ -248,7 +247,7 @@ class BubblePositionerTest { ) positioner.setShowingInBubbleBar(true) positioner.update(deviceConfig) - positioner.updateBubbleBarTopOnScreen(100) + positioner.bubbleBarTopOnScreen = 2500 val spaceBetweenTopInsetAndBubbleBarInLandscape = 180 val expandedViewSpacing = @@ -269,8 +268,7 @@ class BubblePositionerTest { ) positioner.update(deviceConfig) val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) - val bubble = - Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor(), directExecutor()) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) assertThat(positioner.getExpandedViewHeight(bubble)).isEqualTo(MAX_HEIGHT) } @@ -296,7 +294,6 @@ class BubblePositionerTest { 0 /* taskId */, null /* locus */, true /* isDismissable */, - directExecutor(), directExecutor() ) {} @@ -325,7 +322,6 @@ class BubblePositionerTest { 0 /* taskId */, null /* locus */, true /* isDismissable */, - directExecutor(), directExecutor() ) {} @@ -420,8 +416,7 @@ class BubblePositionerTest { positioner.update(deviceConfig) val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) - val bubble = - Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor(), directExecutor()) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) // This bubble will have max height so it'll always be top aligned assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) @@ -438,8 +433,7 @@ class BubblePositionerTest { positioner.update(deviceConfig) val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) - val bubble = - Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor(), directExecutor()) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) // Always top aligned in phone portrait assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) @@ -458,8 +452,7 @@ class BubblePositionerTest { positioner.update(deviceConfig) val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) - val bubble = - Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor(), directExecutor()) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) // This bubble will have max height which is always top aligned on small tablets assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) @@ -477,8 +470,7 @@ class BubblePositionerTest { positioner.update(deviceConfig) val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) - val bubble = - Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor(), directExecutor()) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) // This bubble will have max height which is always top aligned on small tablets assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) @@ -497,8 +489,7 @@ class BubblePositionerTest { positioner.update(deviceConfig) val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) - val bubble = - Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor(), directExecutor()) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) // This bubble will have max height which is always top aligned on landscape, large tablet assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) @@ -516,8 +507,7 @@ class BubblePositionerTest { positioner.update(deviceConfig) val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) - val bubble = - Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor(), directExecutor()) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) val manageButtonHeight = context.resources.getDimensionPixelSize(R.dimen.bubble_manage_button_height) @@ -585,115 +575,26 @@ class BubblePositionerTest { @Test fun testGetBubbleBarExpandedViewBounds_onLeft() { - verifyGetBubbleBarExpandedViewBounds(onLeft = true, isOverflow = false) + testGetBubbleBarExpandedViewBounds(onLeft = true, isOverflow = false) } @Test fun testGetBubbleBarExpandedViewBounds_onRight() { - verifyGetBubbleBarExpandedViewBounds(onLeft = false, isOverflow = false) + testGetBubbleBarExpandedViewBounds(onLeft = false, isOverflow = false) } @Test fun testGetBubbleBarExpandedViewBounds_isOverflow_onLeft() { - verifyGetBubbleBarExpandedViewBounds(onLeft = true, isOverflow = true) + testGetBubbleBarExpandedViewBounds(onLeft = true, isOverflow = true) } @Test fun testGetBubbleBarExpandedViewBounds_isOverflow_onRight() { - verifyGetBubbleBarExpandedViewBounds(onLeft = false, isOverflow = true) + testGetBubbleBarExpandedViewBounds(onLeft = false, isOverflow = true) } - @Test - fun testGetTaskViewRestBounds_phone() { - val deviceConfig = - defaultDeviceConfig.copy( - insets = Insets.of(10, 20, 5, 15), - windowBounds = Rect(0, 0, 1800, 2600) - ) - positioner.update(deviceConfig) - - val padding = context.resources.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding) - val top = positioner.expandedViewYTopAligned - val left = positioner.insets.left + padding - val right = positioner.screenRect.right - positioner.insets.right - padding - val bottom = top + positioner.getMaxExpandedViewHeight(false) - - val rect = Rect() - positioner.getTaskViewRestBounds(rect) - assertThat(rect).isEqualTo(Rect(left, top, right, bottom)) - } - - @Test - fun getExpandedViewContainerPadding_largeScreen_fitsMaxViewWidth() { - val expandedViewWidth = context.resources.getDimensionPixelSize( - R.dimen.bubble_expanded_view_largescreen_width - ) - // set the screen size so that it is wide enough to fit the maximum width size - val screenWidth = expandedViewWidth * 2 - positioner.update( - defaultDeviceConfig.copy( - windowBounds = Rect(0, 0, screenWidth, 2000), - isLargeScreen = true, - isLandscape = false - ) - ) - val paddings = - positioner.getExpandedViewContainerPadding(/* onLeft= */ true, /* isOverflow= */ false) - - val padding = context.resources.getDimensionPixelSize( - R.dimen.bubble_expanded_view_largescreen_landscape_padding - ) - val right = screenWidth - expandedViewWidth - padding - assertThat(paddings).isEqualTo(intArrayOf(padding - positioner.pointerSize, 0, right, 0)) - } - - @Test - fun getExpandedViewContainerPadding_largeScreen_doesNotFitMaxViewWidth() { - positioner.update( - defaultDeviceConfig.copy( - windowBounds = Rect(0, 0, 600, 2000), - isLargeScreen = true, - isLandscape = false - ) - ) - val paddings = - positioner.getExpandedViewContainerPadding(/* onLeft= */ true, /* isOverflow= */ false) - - val padding = context.resources.getDimensionPixelSize( - R.dimen.bubble_expanded_view_largescreen_landscape_padding - ) - // the screen is not wide enough to fit the maximum width size, so the view fills the screen - // minus left and right padding - assertThat(paddings).isEqualTo(intArrayOf(padding - positioner.pointerSize, 0, padding, 0)) - } - - @Test - fun getExpandedViewContainerPadding_smallTablet() { - val screenWidth = 500 - positioner.update( - defaultDeviceConfig.copy( - windowBounds = Rect(0, 0, screenWidth, 2000), - isLargeScreen = true, - isSmallTablet = true, - isLandscape = false - ) - ) - val paddings = - positioner.getExpandedViewContainerPadding(/* onLeft= */ true, /* isOverflow= */ false) - - // for small tablets, the view width is set to be 0.72 * screen width - val viewWidth = (screenWidth * 0.72).toInt() - val padding = (screenWidth - viewWidth) / 2 - assertThat(paddings).isEqualTo(intArrayOf(padding - positioner.pointerSize, 0, padding, 0)) - } - - private fun verifyGetBubbleBarExpandedViewBounds(onLeft: Boolean, isOverflow: Boolean) { - positioner.isShowingInBubbleBar = true - positioner.bubbleBarLocation = if (onLeft) { - BubbleBarLocation.LEFT - } else { - BubbleBarLocation.RIGHT - } + private fun testGetBubbleBarExpandedViewBounds(onLeft: Boolean, isOverflow: Boolean) { + positioner.setShowingInBubbleBar(true) val windowBounds = Rect(0, 0, 2000, 2600) val insets = Insets.of(10, 20, 5, 15) val deviceConfig = @@ -706,7 +607,7 @@ class BubblePositionerTest { positioner.update(deviceConfig) val bubbleBarHeight = 100 - positioner.updateBubbleBarTopOnScreen(bubbleBarHeight) + positioner.bubbleBarTopOnScreen = windowBounds.bottom - insets.bottom - bubbleBarHeight val expandedViewPadding = context.resources.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding) @@ -731,14 +632,8 @@ class BubblePositionerTest { val bounds = Rect() positioner.getBubbleBarExpandedViewBounds(onLeft, isOverflow, bounds) - assertThat(bounds).isEqualTo(expectedBounds) - if (!isOverflow) { - val bounds2 = Rect() - // In bubble bar mode this should return the same bounds - positioner.getTaskViewRestBounds(bounds2) - assertThat(bounds2).isEqualTo(expectedBounds) - } + assertThat(bounds).isEqualTo(expectedBounds) } private val defaultYPosition: Float diff --git a/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt b/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt index da1fae9a04..327e205955 100644 --- a/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt +++ b/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt @@ -23,39 +23,36 @@ import android.content.res.Resources import android.graphics.Color import android.graphics.drawable.Icon import android.os.UserHandle -import android.platform.test.annotations.DisableFlags -import android.platform.test.annotations.EnableFlags import android.platform.test.flag.junit.SetFlagsRule +import android.view.IWindowManager import android.view.WindowManager +import android.view.WindowManagerGlobal import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import androidx.test.platform.app.InstrumentationRegistry import com.android.internal.logging.testing.UiEventLoggerFake -import com.android.internal.protolog.ProtoLog +import com.android.internal.protolog.common.ProtoLog import com.android.launcher3.icons.BubbleIconFactory import com.android.wm.shell.Flags import com.android.wm.shell.R -import com.android.wm.shell.bubbles.BubbleStackView.SurfaceSynchronizer -import com.android.wm.shell.bubbles.Bubbles.BubbleExpandListener import com.android.wm.shell.bubbles.Bubbles.SysuiProxy import com.android.wm.shell.bubbles.animation.AnimatableScaleMatrix import com.android.wm.shell.common.FloatingContentCoordinator -import com.android.wm.shell.common.TestShellExecutor +import com.android.wm.shell.common.ShellExecutor import com.android.wm.shell.shared.animation.PhysicsAnimatorTestUtils +import com.android.wm.shell.taskview.TaskView +import com.android.wm.shell.taskview.TaskViewTaskController import com.google.common.truth.Truth.assertThat import com.google.common.util.concurrent.MoreExecutors.directExecutor import org.junit.After -import org.junit.Assert.fail import org.junit.Before import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.kotlin.any import org.mockito.kotlin.mock -import org.mockito.kotlin.never -import org.mockito.kotlin.spy -import org.mockito.kotlin.verify +import android.platform.test.annotations.DisableFlags +import android.platform.test.annotations.EnableFlags import java.util.concurrent.Semaphore import java.util.concurrent.TimeUnit import java.util.function.Consumer @@ -69,16 +66,14 @@ class BubbleStackViewTest { private val context = ApplicationProvider.getApplicationContext<Context>() private lateinit var positioner: BubblePositioner - private lateinit var bubbleLogger: BubbleLogger private lateinit var iconFactory: BubbleIconFactory private lateinit var expandedViewManager: FakeBubbleExpandedViewManager private lateinit var bubbleStackView: BubbleStackView - private lateinit var shellExecutor: TestShellExecutor - private lateinit var windowManager: WindowManager + private lateinit var shellExecutor: ShellExecutor + private lateinit var windowManager: IWindowManager private lateinit var bubbleTaskViewFactory: BubbleTaskViewFactory private lateinit var bubbleData: BubbleData private lateinit var bubbleStackViewManager: FakeBubbleStackViewManager - private lateinit var surfaceSynchronizer: FakeSurfaceSynchronizer private var sysuiProxy = mock<SysuiProxy>() @Before @@ -86,8 +81,9 @@ class BubbleStackViewTest { PhysicsAnimatorTestUtils.prepareForTest() // Disable protolog tool when running the tests from studio ProtoLog.REQUIRE_PROTOLOGTOOL = false + windowManager = WindowManagerGlobal.getWindowManagerService()!! shellExecutor = TestShellExecutor() - windowManager = context.getSystemService(WindowManager::class.java) + val windowManager = context.getSystemService(WindowManager::class.java) iconFactory = BubbleIconFactory( context, @@ -99,27 +95,24 @@ class BubbleStackViewTest { ) ) positioner = BubblePositioner(context, windowManager) - bubbleLogger = BubbleLogger(UiEventLoggerFake()) bubbleData = BubbleData( context, - bubbleLogger, + BubbleLogger(UiEventLoggerFake()), positioner, BubbleEducationController(context), - shellExecutor, shellExecutor ) bubbleStackViewManager = FakeBubbleStackViewManager() expandedViewManager = FakeBubbleExpandedViewManager() - bubbleTaskViewFactory = FakeBubbleTaskViewFactory(context, shellExecutor) - surfaceSynchronizer = FakeSurfaceSynchronizer() + bubbleTaskViewFactory = FakeBubbleTaskViewFactory() bubbleStackView = BubbleStackView( context, bubbleStackViewManager, positioner, bubbleData, - surfaceSynchronizer, + null, FloatingContentCoordinator(), { sysuiProxy }, shellExecutor @@ -172,7 +165,6 @@ class BubbleStackViewTest { // This will eventually propagate an update back to the stack view, but setting the // entire pipeline is outside the scope of a unit test. assertThat(bubbleData.isExpanded).isTrue() - shellExecutor.flushAll() } assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() @@ -181,207 +173,8 @@ class BubbleStackViewTest { assertThat(lastUpdate!!.expanded).isTrue() } - @Test - fun expandStack_imeHidden() { - val bubble = createAndInflateBubble() - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble) - } - - InstrumentationRegistry.getInstrumentation().waitForIdleSync() - assertThat(bubbleStackView.bubbleCount).isEqualTo(1) - - positioner.setImeVisible(false, 0) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - // simulate a request from the bubble data listener to expand the stack - bubbleStackView.isExpanded = true - verify(sysuiProxy).onStackExpandChanged(true) - shellExecutor.flushAll() - } - - assertThat(bubbleStackViewManager.onImeHidden).isNull() - } - - @Test - fun collapseStack_imeHidden() { - val bubble = createAndInflateBubble() - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble) - } - - InstrumentationRegistry.getInstrumentation().waitForIdleSync() - assertThat(bubbleStackView.bubbleCount).isEqualTo(1) - - positioner.setImeVisible(false, 0) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - // simulate a request from the bubble data listener to expand the stack - bubbleStackView.isExpanded = true - verify(sysuiProxy).onStackExpandChanged(true) - shellExecutor.flushAll() - } - - assertThat(bubbleStackViewManager.onImeHidden).isNull() - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - // simulate a request from the bubble data listener to collapse the stack - bubbleStackView.isExpanded = false - verify(sysuiProxy).onStackExpandChanged(false) - shellExecutor.flushAll() - } - - assertThat(bubbleStackViewManager.onImeHidden).isNull() - } - - @Test - fun expandStack_waitsForIme() { - val bubble = createAndInflateBubble() - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble) - } - - InstrumentationRegistry.getInstrumentation().waitForIdleSync() - assertThat(bubbleStackView.bubbleCount).isEqualTo(1) - - positioner.setImeVisible(true, 100) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - // simulate a request from the bubble data listener to expand the stack - bubbleStackView.isExpanded = true - } - - val onImeHidden = bubbleStackViewManager.onImeHidden - assertThat(onImeHidden).isNotNull() - verify(sysuiProxy, never()).onStackExpandChanged(any()) - positioner.setImeVisible(false, 0) - InstrumentationRegistry.getInstrumentation().runOnMainSync { - onImeHidden!!.run() - verify(sysuiProxy).onStackExpandChanged(true) - shellExecutor.flushAll() - } - } - - @Test - fun collapseStack_waitsForIme() { - val bubble = createAndInflateBubble() - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble) - } - - InstrumentationRegistry.getInstrumentation().waitForIdleSync() - assertThat(bubbleStackView.bubbleCount).isEqualTo(1) - - positioner.setImeVisible(true, 100) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - // simulate a request from the bubble data listener to expand the stack - bubbleStackView.isExpanded = true - } - - var onImeHidden = bubbleStackViewManager.onImeHidden - assertThat(onImeHidden).isNotNull() - verify(sysuiProxy, never()).onStackExpandChanged(any()) - positioner.setImeVisible(false, 0) - InstrumentationRegistry.getInstrumentation().runOnMainSync { - onImeHidden!!.run() - verify(sysuiProxy).onStackExpandChanged(true) - shellExecutor.flushAll() - } - - bubbleStackViewManager.onImeHidden = null - positioner.setImeVisible(true, 100) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - // simulate a request from the bubble data listener to collapse the stack - bubbleStackView.isExpanded = false - } - - onImeHidden = bubbleStackViewManager.onImeHidden - assertThat(onImeHidden).isNotNull() - verify(sysuiProxy, never()).onStackExpandChanged(false) - positioner.setImeVisible(false, 0) - InstrumentationRegistry.getInstrumentation().runOnMainSync { - onImeHidden!!.run() - verify(sysuiProxy).onStackExpandChanged(false) - shellExecutor.flushAll() - } - } - - @EnableFlags(Flags.FLAG_ENABLE_BUBBLE_SWIPE_UP_CLEANUP) - @Test - fun expandStack_clearsImeRunnable() { - val bubble = createAndInflateBubble() - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble) - } - - InstrumentationRegistry.getInstrumentation().waitForIdleSync() - assertThat(bubbleStackView.bubbleCount).isEqualTo(1) - - // Set up a pending runnable to be cleared - bubbleStackViewManager.onImeHidden = Runnable { - fail("IME runnable should not be called when IME is hidden") - } - - positioner.setImeVisible(false, 0) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - // simulate a request from the bubble data listener to expand the stack - bubbleStackView.isExpanded = true - verify(sysuiProxy).onStackExpandChanged(true) - shellExecutor.flushAll() - } - - // Ime runnable is reset - assertThat(bubbleStackViewManager.onImeHidden).isNull() - } - - @EnableFlags(Flags.FLAG_ENABLE_BUBBLE_SWIPE_UP_CLEANUP) - @Test - fun collapseStack_clearsImeRunnable() { - val bubble = createAndInflateBubble() - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble) - } - - InstrumentationRegistry.getInstrumentation().waitForIdleSync() - assertThat(bubbleStackView.bubbleCount).isEqualTo(1) - - positioner.setImeVisible(false, 0) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - // simulate a request from the bubble data listener to expand the stack - bubbleStackView.isExpanded = true - verify(sysuiProxy).onStackExpandChanged(true) - shellExecutor.flushAll() - } - - // Set up a pending runnable to be cleared - bubbleStackViewManager.onImeHidden = Runnable { - fail("IME runnable should not be called when IME is hidden") - } - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - // simulate a request from the bubble data listener to collapse the stack - bubbleStackView.isExpanded = false - verify(sysuiProxy).onStackExpandChanged(false) - shellExecutor.flushAll() - } - - // Check that the runnable is cleared - assertThat(bubbleStackViewManager.onImeHidden).isNull() - } - @Test fun tapDifferentBubble_shouldReorder() { - surfaceSynchronizer.isActive = false val bubble1 = createAndInflateChatBubble(key = "bubble1") val bubble2 = createAndInflateChatBubble(key = "bubble2") InstrumentationRegistry.getInstrumentation().runOnMainSync { @@ -410,7 +203,6 @@ class BubbleStackViewTest { bubbleStackView.setSelectedBubble(bubble2) bubbleStackView.isExpanded = true - shellExecutor.flushAll() } assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() @@ -428,7 +220,6 @@ class BubbleStackViewTest { // tap on bubble1 to select it InstrumentationRegistry.getInstrumentation().runOnMainSync { bubble1.iconView!!.performClick() - shellExecutor.flushAll() } assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() assertThat(bubbleData.selectedBubble).isEqualTo(bubble1) @@ -439,7 +230,6 @@ class BubbleStackViewTest { // listener wired up. bubbleStackView.setSelectedBubble(bubble1) bubble1.iconView!!.performClick() - shellExecutor.flushAll() } assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() @@ -451,147 +241,6 @@ class BubbleStackViewTest { .inOrder() } - @Test - fun tapDifferentBubble_imeVisible_shouldWaitForIme() { - val bubble1 = createAndInflateChatBubble(key = "bubble1") - val bubble2 = createAndInflateChatBubble(key = "bubble2") - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble1) - bubbleStackView.addBubble(bubble2) - } - InstrumentationRegistry.getInstrumentation().waitForIdleSync() - - assertThat(bubbleStackView.bubbleCount).isEqualTo(2) - assertThat(bubbleData.bubbles).hasSize(2) - assertThat(bubbleData.selectedBubble).isEqualTo(bubble2) - assertThat(bubble2.iconView).isNotNull() - - val expandListener = FakeBubbleExpandListener() - bubbleStackView.setExpandListener(expandListener) - - var lastUpdate: BubbleData.Update? = null - val semaphore = Semaphore(0) - val listener = - BubbleData.Listener { update -> - lastUpdate = update - semaphore.release() - } - bubbleData.setListener(listener) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubble2.iconView!!.performClick() - assertThat(bubbleData.isExpanded).isTrue() - - bubbleStackView.setSelectedBubble(bubble2) - bubbleStackView.isExpanded = true - shellExecutor.flushAll() - } - - assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() - assertThat(lastUpdate!!.expanded).isTrue() - assertThat(lastUpdate!!.bubbles.map { it.key }) - .containsExactly("bubble2", "bubble1") - .inOrder() - - // wait for idle to allow the animation to start - InstrumentationRegistry.getInstrumentation().waitForIdleSync() - // wait for the expansion animation to complete before interacting with the bubbles - PhysicsAnimatorTestUtils.blockUntilAnimationsEnd( - AnimatableScaleMatrix.SCALE_X, AnimatableScaleMatrix.SCALE_Y) - - // make the IME visible and tap on bubble1 to select it - InstrumentationRegistry.getInstrumentation().runOnMainSync { - positioner.setImeVisible(true, 100) - bubble1.iconView!!.performClick() - // we have to set the selected bubble in the stack view manually because we don't have a - // listener wired up. - bubbleStackView.setSelectedBubble(bubble1) - shellExecutor.flushAll() - } - - val onImeHidden = bubbleStackViewManager.onImeHidden - assertThat(onImeHidden).isNotNull() - - assertThat(expandListener.bubblesExpandedState).isEqualTo(mapOf("bubble2" to true)) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - onImeHidden!!.run() - shellExecutor.flushAll() - } - - assertThat(expandListener.bubblesExpandedState) - .isEqualTo(mapOf("bubble1" to true, "bubble2" to false)) - assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() - assertThat(bubbleData.selectedBubble).isEqualTo(bubble1) - } - - @Test - fun tapDifferentBubble_imeHidden_updatesImmediately() { - val bubble1 = createAndInflateChatBubble(key = "bubble1") - val bubble2 = createAndInflateChatBubble(key = "bubble2") - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble1) - bubbleStackView.addBubble(bubble2) - } - InstrumentationRegistry.getInstrumentation().waitForIdleSync() - - assertThat(bubbleStackView.bubbleCount).isEqualTo(2) - assertThat(bubbleData.bubbles).hasSize(2) - assertThat(bubbleData.selectedBubble).isEqualTo(bubble2) - assertThat(bubble2.iconView).isNotNull() - - val expandListener = FakeBubbleExpandListener() - bubbleStackView.setExpandListener(expandListener) - - var lastUpdate: BubbleData.Update? = null - val semaphore = Semaphore(0) - val listener = - BubbleData.Listener { update -> - lastUpdate = update - semaphore.release() - } - bubbleData.setListener(listener) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubble2.iconView!!.performClick() - assertThat(bubbleData.isExpanded).isTrue() - - bubbleStackView.setSelectedBubble(bubble2) - bubbleStackView.isExpanded = true - shellExecutor.flushAll() - } - - assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() - assertThat(lastUpdate!!.expanded).isTrue() - assertThat(lastUpdate!!.bubbles.map { it.key }) - .containsExactly("bubble2", "bubble1") - .inOrder() - - // wait for idle to allow the animation to start - InstrumentationRegistry.getInstrumentation().waitForIdleSync() - // wait for the expansion animation to complete before interacting with the bubbles - PhysicsAnimatorTestUtils.blockUntilAnimationsEnd( - AnimatableScaleMatrix.SCALE_X, AnimatableScaleMatrix.SCALE_Y) - - // make the IME hidden and tap on bubble1 to select it - InstrumentationRegistry.getInstrumentation().runOnMainSync { - positioner.setImeVisible(false, 0) - bubble1.iconView!!.performClick() - // we have to set the selected bubble in the stack view manually because we don't have a - // listener wired up. - bubbleStackView.setSelectedBubble(bubble1) - shellExecutor.flushAll() - } - - val onImeHidden = bubbleStackViewManager.onImeHidden - assertThat(onImeHidden).isNull() - - assertThat(expandListener.bubblesExpandedState) - .isEqualTo(mapOf("bubble1" to true, "bubble2" to false)) - assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() - assertThat(bubbleData.selectedBubble).isEqualTo(bubble1) - } - @EnableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) @Test fun testCreateStackView_noOverflowContents_noOverflow() { @@ -701,122 +350,6 @@ class BubbleStackViewTest { assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) } - @Test - fun removeFromWindow_stopMonitoringSwipeUpGesture() { - bubbleStackView = spy(bubbleStackView) - InstrumentationRegistry.getInstrumentation().runOnMainSync { - // No way to add to window in the test environment right now so just pretend - bubbleStackView.onDetachedFromWindow() - } - verify(bubbleStackView).stopMonitoringSwipeUpGesture() - } - - @Test - fun animateExpand_expandRunsRunnable() { - bubbleStackView = spy(bubbleStackView) - val bubble = createAndInflateChatBubble(key = "bubble") - - assertThat(bubble.expandedView).isNotNull() - - var afterTransitionRan = false - val semaphore = Semaphore(0) - - // Expand animation runs on a delay so wait for it. - val runnable = Runnable { - afterTransitionRan = true - semaphore.release() - } - - assertThat(bubbleStackView.isExpanded).isFalse() - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble) - bubbleStackView.setSelectedBubble(bubble) - bubbleStackView.animateExpand(null, runnable) - bubbleStackView.isExpanded = true - shellExecutor.flushAll() - } - - assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() - assertThat(bubbleStackView.isExpanded).isTrue() - assertThat(afterTransitionRan).isTrue() - } - - @Test - fun animateExpand_switchRunsRunnable() { - bubbleStackView = spy(bubbleStackView) - val bubble = createAndInflateChatBubble(key = "bubble") - val bubble2 = createAndInflateChatBubble(key = "bubble2") - - var afterTransitionRan = false - val semaphore = Semaphore(0) - - // Expand animation runs on a delay so wait for it. - val runnable = Runnable { - afterTransitionRan = true - semaphore.release() - } - assertThat(bubbleStackView.isExpanded).isFalse() - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble) - bubbleStackView.addBubble(bubble2) - bubbleStackView.setSelectedBubble(bubble) - bubbleStackView.isExpanded = true - shellExecutor.flushAll() - } - - assertThat(bubbleStackView.isExpanded).isTrue() - assertThat(bubbleStackView.expandedBubble!!.key).isEqualTo(bubble.key) - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.animateExpand(null, runnable) - bubbleStackView.setSelectedBubble(bubble2) - shellExecutor.flushAll() - } - - assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() - assertThat(bubbleStackView.isExpanded).isTrue() - assertThat(bubbleStackView.expandedBubble!!.key).isEqualTo(bubble2.key) - assertThat(afterTransitionRan).isTrue() - } - - @Test - fun canExpandView_true_triggersContinueExpand() { - bubbleStackView = spy(bubbleStackView) - val bubble = createAndInflateChatBubble(key = "bubble") - val bubbleTransition = mock<BubbleTransitions.BubbleTransition>() - bubble.preparingTransition = bubbleTransition - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble) - } - - assertThat(bubbleStackView.isExpanded).isFalse() - assertThat(bubbleStackView.canExpandView(bubble)).isTrue() - verify(bubbleTransition).continueExpand() - } - - @Test - fun canExpandView_false() { - bubbleStackView = spy(bubbleStackView) - val bubble = createAndInflateChatBubble(key = "bubble") - val bubbleTransition = mock<BubbleTransitions.BubbleTransition>() - bubble.preparingTransition = bubbleTransition - - InstrumentationRegistry.getInstrumentation().runOnMainSync { - bubbleStackView.addBubble(bubble) - bubbleStackView.setSelectedBubble(bubble) - bubbleStackView.isExpanded = true - shellExecutor.flushAll() - } - - assertThat(bubbleStackView.isExpanded).isTrue() - assertThat(bubbleStackView.expandedBubble!!.key).isEqualTo(bubble.key) - assertThat(bubbleStackView.canExpandView(bubble)).isFalse() - verify(bubbleTransition, never()).continueExpand() - } - private fun createAndInflateChatBubble(key: String): Bubble { val icon = Icon.createWithResource(context.resources, R.drawable.bubble_ic_overflow_button) val shortcutInfo = ShortcutInfo.Builder(context, "fakeId").setIcon(icon).build() @@ -830,7 +363,6 @@ class BubbleStackViewTest { /* taskId= */ 0, "locus", /* isDismissable= */ true, - directExecutor(), directExecutor() ) {} inflateBubble(bubble) @@ -840,8 +372,7 @@ class BubbleStackViewTest { private fun createAndInflateBubble(): Bubble { val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) val icon = Icon.createWithResource(context.resources, R.drawable.bubble_ic_overflow_button) - val bubble = - Bubble.createAppBubble(intent, UserHandle(1), icon, directExecutor(), directExecutor()) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), icon, directExecutor()) inflateBubble(bubble) return bubble } @@ -862,7 +393,6 @@ class BubbleStackViewTest { bubbleStackView, null, iconFactory, - FakeBubbleAppInfoProvider(), false ) @@ -871,7 +401,6 @@ class BubbleStackViewTest { } private class FakeBubbleStackViewManager : BubbleStackViewManager { - var onImeHidden: Runnable? = null override fun onAllBubblesAnimatedOut() {} @@ -879,26 +408,55 @@ class BubbleStackViewTest { override fun checkNotificationPanelExpandedState(callback: Consumer<Boolean>) {} - override fun hideCurrentInputMethod(onImeHidden: Runnable?) { - this.onImeHidden = onImeHidden + override fun hideCurrentInputMethod() {} + } + + private class TestShellExecutor : ShellExecutor { + + override fun execute(runnable: Runnable) { + runnable.run() } - override fun clearImeHiddenRunnable() { - this.onImeHidden = null + override fun executeDelayed(r: Runnable, delayMillis: Long) { + r.run() + } + + override fun removeCallbacks(r: Runnable?) {} + + override fun hasCallback(r: Runnable): Boolean = false + } + + private inner class FakeBubbleTaskViewFactory : BubbleTaskViewFactory { + override fun create(): BubbleTaskView { + val taskViewTaskController = mock<TaskViewTaskController>() + val taskView = TaskView(context, taskViewTaskController) + return BubbleTaskView(taskView, shellExecutor) } } - private class FakeBubbleExpandListener : BubbleExpandListener { - val bubblesExpandedState = mutableMapOf<String, Boolean>() - override fun onBubbleExpandChanged(isExpanding: Boolean, key: String) { - bubblesExpandedState[key] = isExpanding - } - } + private inner class FakeBubbleExpandedViewManager : BubbleExpandedViewManager { - private class FakeSurfaceSynchronizer : SurfaceSynchronizer { - var isActive = true - override fun syncSurfaceAndRun(callback: Runnable) { - if (isActive) callback.run() - } + override val overflowBubbles: List<Bubble> + get() = emptyList() + + override fun setOverflowListener(listener: BubbleData.Listener) {} + + override fun collapseStack() {} + + override fun updateWindowFlagsForBackpress(intercept: Boolean) {} + + override fun promoteBubbleFromOverflow(bubble: Bubble) {} + + override fun removeBubble(key: String, reason: Int) {} + + override fun dismissBubble(bubble: Bubble, reason: Int) {} + + override fun setAppBubbleTaskId(key: String, taskId: Int) {} + + override fun isStackExpanded(): Boolean = false + + override fun isShowingAsBubbleBar(): Boolean = false + + override fun hideCurrentInputMethod() {} } } diff --git a/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt b/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt index 18d940e9d5..398fd554f0 100644 --- a/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt +++ b/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt @@ -16,45 +16,39 @@ package com.android.wm.shell.bubbles -import android.app.ActivityManager -import android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN import android.content.ComponentName import android.content.Context -import android.platform.test.flag.junit.FlagsParameterization -import android.platform.test.flag.junit.SetFlagsRule import androidx.test.core.app.ApplicationProvider +import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest -import com.android.window.flags.Flags.FLAG_EXCLUDE_TASK_FROM_RECENTS -import com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper import com.android.wm.shell.taskview.TaskView + import com.google.common.truth.Truth.assertThat import com.google.common.util.concurrent.MoreExecutors.directExecutor -import org.junit.Rule +import org.junit.Before import org.junit.Test import org.junit.runner.RunWith -import org.mockito.kotlin.doReturn import org.mockito.kotlin.mock import org.mockito.kotlin.never -import org.mockito.kotlin.stub import org.mockito.kotlin.verify -import platform.test.runner.parameterized.ParameterizedAndroidJunit4 -import platform.test.runner.parameterized.Parameters @SmallTest -@RunWith(ParameterizedAndroidJunit4::class) -class BubbleTaskViewTest(flags: FlagsParameterization) { - - @get:Rule - val setFlagsRule = SetFlagsRule(flags) +@RunWith(AndroidJUnit4::class) +class BubbleTaskViewTest { + private lateinit var bubbleTaskView: BubbleTaskView private val context = ApplicationProvider.getApplicationContext<Context>() - private val componentName = ComponentName(context, "TestClass") - private val taskView = mock<TaskView>() - private val bubbleTaskView = BubbleTaskView(taskView, directExecutor()) + private lateinit var taskView: TaskView + + @Before + fun setUp() { + taskView = mock() + bubbleTaskView = BubbleTaskView(taskView, directExecutor()) + } @Test fun onTaskCreated_updatesState() { + val componentName = ComponentName(context, "TestClass") bubbleTaskView.listener.onTaskCreated(123, componentName) assertThat(bubbleTaskView.taskId).isEqualTo(123) @@ -74,64 +68,25 @@ class BubbleTaskViewTest(flags: FlagsParameterization) { } bubbleTaskView.delegateListener = delegateListener - bubbleTaskView.listener.onTaskCreated(123 /* taskId */, componentName) + val componentName = ComponentName(context, "TestClass") + bubbleTaskView.listener.onTaskCreated(123, componentName) assertThat(actualTaskId).isEqualTo(123) assertThat(actualComponentName).isEqualTo(componentName) } @Test - fun cleanup_invalidTaskId_removesTask() { + fun cleanup_invalidTaskId_doesNotRemoveTask() { bubbleTaskView.cleanup() - verify(taskView).removeTask() + verify(taskView, never()).removeTask() } @Test fun cleanup_validTaskId_removesTask() { - bubbleTaskView.listener.onTaskCreated(123 /* taskId */, componentName) + val componentName = ComponentName(context, "TestClass") + bubbleTaskView.listener.onTaskCreated(123, componentName) bubbleTaskView.cleanup() - verify(taskView).removeTask() } - - @Test - fun cleanup_noneFullscreenTask_removesTask() { - bubbleTaskView.listener.onTaskCreated(123 /* taskId */, componentName) - - bubbleTaskView.cleanup() - - verify(taskView, never()).unregisterTask() - verify(taskView).removeTask() - } - - @Test - fun cleanup_fullscreenTask_removesOrUnregistersTask() { - val fullScreenTaskInfo = ActivityManager.RunningTaskInfo().apply { - configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - } - taskView.stub { - on { taskInfo } doReturn fullScreenTaskInfo - } - bubbleTaskView.listener.onTaskCreated(123 /* taskId */, componentName) - - bubbleTaskView.cleanup() - - if (BubbleAnythingFlagHelper.enableCreateAnyBubbleWithForceExcludedFromRecents()) { - verify(taskView).unregisterTask() - verify(taskView, never()).removeTask() - } else { - verify(taskView, never()).unregisterTask() - verify(taskView).removeTask() - } - } - - companion object { - @JvmStatic - @Parameters(name = "{0}") - fun getParams() = FlagsParameterization.allCombinationsOf( - FLAG_ENABLE_CREATE_ANY_BUBBLE, - FLAG_EXCLUDE_TASK_FROM_RECENTS, - ) - } } diff --git a/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt b/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt index eaa0937376..ace2c13105 100644 --- a/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt +++ b/wmshell/multivalentTests/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt @@ -27,16 +27,16 @@ import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation -import com.android.internal.protolog.ProtoLog +import com.android.internal.protolog.common.ProtoLog import com.android.wm.shell.R import com.android.wm.shell.bubbles.BubblePositioner -import com.android.wm.shell.shared.bubbles.BaseBubblePinController -import com.android.wm.shell.shared.bubbles.BaseBubblePinController.Companion.DROP_TARGET_ALPHA_IN_DURATION -import com.android.wm.shell.shared.bubbles.BaseBubblePinController.Companion.DROP_TARGET_ALPHA_OUT_DURATION -import com.android.wm.shell.shared.bubbles.BubbleBarLocation -import com.android.wm.shell.shared.bubbles.BubbleBarLocation.LEFT -import com.android.wm.shell.shared.bubbles.BubbleBarLocation.RIGHT -import com.android.wm.shell.shared.bubbles.DeviceConfig +import com.android.wm.shell.bubbles.DeviceConfig +import com.android.wm.shell.common.bubbles.BaseBubblePinController +import com.android.wm.shell.common.bubbles.BaseBubblePinController.Companion.DROP_TARGET_ALPHA_IN_DURATION +import com.android.wm.shell.common.bubbles.BaseBubblePinController.Companion.DROP_TARGET_ALPHA_OUT_DURATION +import com.android.wm.shell.common.bubbles.BubbleBarLocation +import com.android.wm.shell.common.bubbles.BubbleBarLocation.LEFT +import com.android.wm.shell.common.bubbles.BubbleBarLocation.RIGHT import com.google.common.truth.Truth.assertThat import org.junit.After import org.junit.Before @@ -74,7 +74,6 @@ class BubbleExpandedViewPinControllerTest { @Before fun setUp() { ProtoLog.REQUIRE_PROTOLOGTOOL = false - ProtoLog.init() container = FrameLayout(context) val windowManager = context.getSystemService(WindowManager::class.java) positioner = BubblePositioner(context, windowManager) @@ -86,10 +85,11 @@ class BubbleExpandedViewPinControllerTest { isSmallTablet = false, isLandscape = true, isRtl = false, - insets = Insets.of(10, 20, 30, 40), + insets = Insets.of(10, 20, 30, 40) ) positioner.update(deviceConfig) - positioner.updateBubbleBarTopOnScreen(BUBBLE_BAR_HEIGHT) + positioner.bubbleBarTopOnScreen = + SCREEN_HEIGHT - deviceConfig.insets.bottom - BUBBLE_BAR_HEIGHT controller = BubbleExpandedViewPinController(context, container, positioner) testListener = TestLocationChangeListener() controller.setListener(testListener) @@ -407,26 +407,12 @@ class BubbleExpandedViewPinControllerTest { assertThat(testListener.locationReleases).containsExactly(RIGHT) } - /** Send drag start event when on left */ - @Test - fun start_onLeft_sendStartEventOnLeft() { - getInstrumentation().runOnMainSync { controller.onDragStart(initialLocationOnLeft = true) } - assertThat(testListener.locationStart).containsExactly(LEFT) - } - - /** Send drag start event when on right */ - @Test - fun start_onRight_sendStartEventOnRight() { - getInstrumentation().runOnMainSync { controller.onDragStart(initialLocationOnLeft = false) } - assertThat(testListener.locationStart).containsExactly(RIGHT) - } - private fun getExpectedDropTargetBoundsOnLeft(): Rect = Rect().also { positioner.getBubbleBarExpandedViewBounds( true /* onLeft */, false /* isOverflowExpanded */, - it, + it ) } @@ -435,7 +421,7 @@ class BubbleExpandedViewPinControllerTest { positioner.getBubbleBarExpandedViewBounds( false /* onLeft */, false /* isOverflowExpanded */, - it, + it ) } @@ -460,14 +446,8 @@ class BubbleExpandedViewPinControllerTest { } internal class TestLocationChangeListener : BaseBubblePinController.LocationChangeListener { - val locationStart = mutableListOf<BubbleBarLocation>() val locationChanges = mutableListOf<BubbleBarLocation>() val locationReleases = mutableListOf<BubbleBarLocation>() - - override fun onStart(location: BubbleBarLocation) { - locationStart.add(location) - } - override fun onChange(location: BubbleBarLocation) { locationChanges.add(location) } diff --git a/wmshell/multivalentTestsForDevice b/wmshell/multivalentTestsForDevice deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/wmshell/multivalentTestsForDevice/Android.bp b/wmshell/multivalentTestsForDevice/Android.bp new file mode 100644 index 0000000000..1ad19c9f30 --- /dev/null +++ b/wmshell/multivalentTestsForDevice/Android.bp @@ -0,0 +1,99 @@ +// Copyright (C) 2019 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], + default_team: "trendy_team_multitasking_windowing", +} + +android_app { + name: "WindowManagerShellRobolectric", + platform_apis: true, + static_libs: [ + "WindowManager-Shell", + ], + manifest: "AndroidManifestRobolectric.xml", + use_resource_processor: true, +} + +android_robolectric_test { + name: "WMShellRobolectricTests", + instrumentation_for: "WindowManagerShellRobolectric", + upstream: true, + java_resource_dirs: [ + "robolectric/config", + ], + srcs: [ + "src/**/*.kt", + ], + // TODO(b/323188766): Include BubbleStackViewTest once the robolectric issue is fixed. + exclude_srcs: ["src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt"], + static_libs: [ + "junit", + "androidx.core_core-animation-testing", + "androidx.test.runner", + "androidx.test.rules", + "androidx.test.ext.junit", + "mockito-robolectric-prebuilt", + "mockito-kotlin2", + "truth", + ], + auto_gen_config: true, +} + +android_test { + name: "WMShellMultivalentTestsOnDevice", + srcs: [ + "src/**/*.kt", + ], + static_libs: [ + "WindowManager-Shell", + "junit", + "androidx.core_core-animation-testing", + "androidx.test.runner", + "androidx.test.rules", + "androidx.test.ext.junit", + "frameworks-base-testutils", + "mockito-kotlin2", + "mockito-target-extended-minus-junit4", + "truth", + "platform-test-annotations", + "platform-test-rules", + ], + libs: [ + "android.test.base", + "android.test.runner", + ], + jni_libs: [ + "libdexmakerjvmtiagent", + "libstaticjvmtiagent", + ], + kotlincflags: ["-Xjvm-default=all"], + optimize: { + enabled: false, + }, + test_suites: ["device-tests"], + platform_apis: true, + certificate: "platform", + aaptflags: [ + "--extra-packages", + "com.android.wm.shell", + ], + manifest: "AndroidManifest.xml", +} diff --git a/wmshell/multivalentTestsForDevice/AndroidManifest.xml b/wmshell/multivalentTestsForDevice/AndroidManifest.xml new file mode 100644 index 0000000000..f8f8338e5f --- /dev/null +++ b/wmshell/multivalentTestsForDevice/AndroidManifest.xml @@ -0,0 +1,13 @@ +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.wm.shell.multivalenttests"> + + <application android:debuggable="true" android:supportsRtl="true" > + <uses-library android:name="android.test.runner" /> + </application> + + <instrumentation + android:name="androidx.test.runner.AndroidJUnitRunner" + android:label="Multivalent tests for WindowManager-Shell" + android:targetPackage="com.android.wm.shell.multivalenttests"> + </instrumentation> +</manifest> diff --git a/wmshell/multivalentTestsForDevice/AndroidManifestRobolectric.xml b/wmshell/multivalentTestsForDevice/AndroidManifestRobolectric.xml new file mode 100644 index 0000000000..ffcd7d46fb --- /dev/null +++ b/wmshell/multivalentTestsForDevice/AndroidManifestRobolectric.xml @@ -0,0 +1,3 @@ +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.wm.shell.multivalenttests"> +</manifest> diff --git a/wmshell/multivalentTestsForDevice/AndroidTest.xml b/wmshell/multivalentTestsForDevice/AndroidTest.xml new file mode 100644 index 0000000000..36fe8ec337 --- /dev/null +++ b/wmshell/multivalentTestsForDevice/AndroidTest.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2023 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<configuration description="Runs Tests for WindowManagerShellLib"> + <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller"> + <option name="cleanup-apks" value="true" /> + <option name="install-arg" value="-t" /> + <option name="test-file-name" value="WMShellMultivalentTestsOnDevice.apk" /> + </target_preparer> + + <option name="test-suite-tag" value="apct" /> + <option name="test-suite-tag" value="framework-base-presubmit" /> + <option name="test-tag" value="WMShellMultivalentTestsOnDevice" /> + <test class="com.android.tradefed.testtype.AndroidJUnitTest" > + <option name="package" value="com.android.wm.shell.multivalenttests" /> + <option name="runner" value="androidx.test.runner.AndroidJUnitRunner" /> + <option name="hidden-api-checks" value="false"/> + </test> +</configuration> diff --git a/wmshell/multivalentTestsForDevice/OWNERS b/wmshell/multivalentTestsForDevice/OWNERS new file mode 100644 index 0000000000..24c1a3a6d4 --- /dev/null +++ b/wmshell/multivalentTestsForDevice/OWNERS @@ -0,0 +1,4 @@ +atsjenk@google.com +liranb@google.com +madym@google.com + diff --git a/wmshell/multivalentTestsForDevice/robolectric/config/robolectric.properties b/wmshell/multivalentTestsForDevice/robolectric/config/robolectric.properties new file mode 100644 index 0000000000..7a0527ccaa --- /dev/null +++ b/wmshell/multivalentTestsForDevice/robolectric/config/robolectric.properties @@ -0,0 +1,2 @@ +sdk=NEWEST_SDK + diff --git a/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt b/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt new file mode 100644 index 0000000000..9e1440d571 --- /dev/null +++ b/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt @@ -0,0 +1,670 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.wm.shell.bubbles + +import android.content.Context +import android.content.Intent +import android.content.pm.ShortcutInfo +import android.content.res.Resources +import android.graphics.Insets +import android.graphics.PointF +import android.graphics.Rect +import android.os.UserHandle +import android.view.WindowManager +import androidx.test.core.app.ApplicationProvider +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.filters.SmallTest +import com.android.internal.protolog.common.ProtoLog +import com.android.wm.shell.R +import com.android.wm.shell.bubbles.BubblePositioner.MAX_HEIGHT +import com.android.wm.shell.common.bubbles.BubbleBarLocation +import com.google.common.truth.Truth.assertThat +import com.google.common.util.concurrent.MoreExecutors.directExecutor +import org.junit.Before +import org.junit.Test +import org.junit.runner.RunWith + +/** Tests operations and the resulting state managed by [BubblePositioner]. */ +@SmallTest +@RunWith(AndroidJUnit4::class) +class BubblePositionerTest { + + private lateinit var positioner: BubblePositioner + private val context = ApplicationProvider.getApplicationContext<Context>() + private val resources: Resources + get() = context.resources + + private val defaultDeviceConfig = + DeviceConfig( + windowBounds = Rect(0, 0, 1000, 2000), + isLargeScreen = false, + isSmallTablet = false, + isLandscape = false, + isRtl = false, + insets = Insets.of(0, 0, 0, 0) + ) + + @Before + fun setUp() { + ProtoLog.REQUIRE_PROTOLOGTOOL = false + val windowManager = context.getSystemService(WindowManager::class.java) + positioner = BubblePositioner(context, windowManager) + } + + @Test + fun testUpdate() { + val insets = Insets.of(10, 20, 5, 15) + val screenBounds = Rect(0, 0, 1000, 1200) + val availableRect = Rect(screenBounds) + availableRect.inset(insets) + positioner.update(defaultDeviceConfig.copy(insets = insets, windowBounds = screenBounds)) + assertThat(positioner.availableRect).isEqualTo(availableRect) + assertThat(positioner.isLandscape).isFalse() + assertThat(positioner.isLargeScreen).isFalse() + assertThat(positioner.insets).isEqualTo(insets) + } + + @Test + fun testShowBubblesVertically_phonePortrait() { + positioner.update(defaultDeviceConfig) + assertThat(positioner.showBubblesVertically()).isFalse() + } + + @Test + fun testShowBubblesVertically_phoneLandscape() { + positioner.update(defaultDeviceConfig.copy(isLandscape = true)) + assertThat(positioner.isLandscape).isTrue() + assertThat(positioner.showBubblesVertically()).isTrue() + } + + @Test + fun testShowBubblesVertically_tablet() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true)) + assertThat(positioner.showBubblesVertically()).isTrue() + } + + /** If a resting position hasn't been set, calling it will return the default position. */ + @Test + fun testGetRestingPosition_returnsDefaultPosition() { + positioner.update(defaultDeviceConfig) + val restingPosition = positioner.getRestingPosition() + val defaultPosition = positioner.defaultStartPosition + assertThat(restingPosition).isEqualTo(defaultPosition) + } + + /** If a resting position has been set, it'll return that instead of the default position. */ + @Test + fun testGetRestingPosition_returnsRestingPosition() { + positioner.update(defaultDeviceConfig) + val restingPosition = PointF(100f, 100f) + positioner.restingPosition = restingPosition + assertThat(positioner.getRestingPosition()).isEqualTo(restingPosition) + } + + /** Test that the default resting position on phone is in upper left. */ + @Test + fun testGetRestingPosition_bubble_onPhone() { + positioner.update(defaultDeviceConfig) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val restingPosition = positioner.getRestingPosition() + assertThat(restingPosition.x).isEqualTo(allowableStackRegion.left) + assertThat(restingPosition.y).isEqualTo(defaultYPosition) + } + + @Test + fun testGetRestingPosition_bubble_onPhone_RTL() { + positioner.update(defaultDeviceConfig.copy(isRtl = true)) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val restingPosition = positioner.getRestingPosition() + assertThat(restingPosition.x).isEqualTo(allowableStackRegion.right) + assertThat(restingPosition.y).isEqualTo(defaultYPosition) + } + + /** Test that the default resting position on tablet is middle left. */ + @Test + fun testGetRestingPosition_chatBubble_onTablet() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true)) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val restingPosition = positioner.getRestingPosition() + assertThat(restingPosition.x).isEqualTo(allowableStackRegion.left) + assertThat(restingPosition.y).isEqualTo(defaultYPosition) + } + + @Test + fun testGetRestingPosition_chatBubble_onTablet_RTL() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true, isRtl = true)) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val restingPosition = positioner.getRestingPosition() + assertThat(restingPosition.x).isEqualTo(allowableStackRegion.right) + assertThat(restingPosition.y).isEqualTo(defaultYPosition) + } + + /** Test that the default resting position on tablet is middle right. */ + @Test + fun testGetDefaultPosition_appBubble_onTablet() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true)) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val startPosition = positioner.getDefaultStartPosition(true /* isAppBubble */) + assertThat(startPosition.x).isEqualTo(allowableStackRegion.right) + assertThat(startPosition.y).isEqualTo(defaultYPosition) + } + + @Test + fun testGetRestingPosition_appBubble_onTablet_RTL() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true, isRtl = true)) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val startPosition = positioner.getDefaultStartPosition(true /* isAppBubble */) + assertThat(startPosition.x).isEqualTo(allowableStackRegion.left) + assertThat(startPosition.y).isEqualTo(defaultYPosition) + } + + @Test + fun testGetRestingPosition_afterBoundsChange() { + positioner.update( + defaultDeviceConfig.copy(isLargeScreen = true, windowBounds = Rect(0, 0, 2000, 1600)) + ) + + // Set the resting position to the right side + var allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val restingPosition = PointF(allowableStackRegion.right, allowableStackRegion.centerY()) + positioner.restingPosition = restingPosition + + // Now make the device smaller + positioner.update( + defaultDeviceConfig.copy(isLargeScreen = false, windowBounds = Rect(0, 0, 1000, 1600)) + ) + + // Check the resting position is on the correct side + allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + assertThat(positioner.restingPosition.x).isEqualTo(allowableStackRegion.right) + } + + @Test + fun testHasUserModifiedDefaultPosition_false() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true, isRtl = true)) + assertThat(positioner.hasUserModifiedDefaultPosition()).isFalse() + positioner.restingPosition = positioner.defaultStartPosition + assertThat(positioner.hasUserModifiedDefaultPosition()).isFalse() + } + + @Test + fun testHasUserModifiedDefaultPosition_true() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true, isRtl = true)) + assertThat(positioner.hasUserModifiedDefaultPosition()).isFalse() + positioner.restingPosition = PointF(0f, 100f) + assertThat(positioner.hasUserModifiedDefaultPosition()).isTrue() + } + + @Test + fun testBubbleBarExpandedViewHeightAndWidth() { + val deviceConfig = + defaultDeviceConfig.copy( + // portrait orientation + isLandscape = false, + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + + positioner.setShowingInBubbleBar(true) + positioner.update(deviceConfig) + positioner.bubbleBarTopOnScreen = 2500 + + val spaceBetweenTopInsetAndBubbleBarInLandscape = 1680 + val expandedViewVerticalSpacing = + resources.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding) + val expectedHeight = + spaceBetweenTopInsetAndBubbleBarInLandscape - 2 * expandedViewVerticalSpacing + val expectedWidth = resources.getDimensionPixelSize(R.dimen.bubble_bar_expanded_view_width) + + assertThat(positioner.getExpandedViewWidthForBubbleBar(false)).isEqualTo(expectedWidth) + assertThat(positioner.getExpandedViewHeightForBubbleBar(false)).isEqualTo(expectedHeight) + } + + @Test + fun testBubbleBarExpandedViewHeightAndWidth_screenWidthTooSmall() { + val screenWidth = 300 + val deviceConfig = + defaultDeviceConfig.copy( + // portrait orientation + isLandscape = false, + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, screenWidth, 2600) + ) + positioner.setShowingInBubbleBar(true) + positioner.update(deviceConfig) + positioner.bubbleBarTopOnScreen = 2500 + + val spaceBetweenTopInsetAndBubbleBarInLandscape = 180 + val expandedViewSpacing = + resources.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding) + val expectedHeight = spaceBetweenTopInsetAndBubbleBarInLandscape - 2 * expandedViewSpacing + val expectedWidth = screenWidth - 15 /* horizontal insets */ - 2 * expandedViewSpacing + assertThat(positioner.getExpandedViewWidthForBubbleBar(false)).isEqualTo(expectedWidth) + assertThat(positioner.getExpandedViewHeightForBubbleBar(false)).isEqualTo(expectedHeight) + } + + @Test + fun testGetExpandedViewHeight_max() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + assertThat(positioner.getExpandedViewHeight(bubble)).isEqualTo(MAX_HEIGHT) + } + + @Test + fun testGetExpandedViewHeight_customHeight_valid() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + val minHeight = + context.resources.getDimensionPixelSize(R.dimen.bubble_expanded_default_height) + val bubble = + Bubble( + "key", + ShortcutInfo.Builder(context, "id").build(), + minHeight + 100 /* desiredHeight */, + 0 /* desiredHeightResId */, + "title", + 0 /* taskId */, + null /* locus */, + true /* isDismissable */, + directExecutor() + ) {} + + // Ensure the height is the same as the desired value + assertThat(positioner.getExpandedViewHeight(bubble)) + .isEqualTo(bubble.getDesiredHeight(context)) + } + + @Test + fun testGetExpandedViewHeight_customHeight_tooSmall() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val bubble = + Bubble( + "key", + ShortcutInfo.Builder(context, "id").build(), + 10 /* desiredHeight */, + 0 /* desiredHeightResId */, + "title", + 0 /* taskId */, + null /* locus */, + true /* isDismissable */, + directExecutor() + ) {} + + // Ensure the height is the same as the desired value + val minHeight = + context.resources.getDimensionPixelSize(R.dimen.bubble_expanded_default_height) + assertThat(positioner.getExpandedViewHeight(bubble)).isEqualTo(minHeight) + } + + @Test + fun testGetMaxExpandedViewHeight_onLargeTablet() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val manageButtonHeight = + context.resources.getDimensionPixelSize(R.dimen.bubble_manage_button_height) + val pointerWidth = context.resources.getDimensionPixelSize(R.dimen.bubble_pointer_width) + val expandedViewPadding = + context.resources.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding) + val expectedHeight = + 1800 - 2 * 20 - manageButtonHeight - pointerWidth - expandedViewPadding * 2 + assertThat(positioner.getMaxExpandedViewHeight(false /* isOverflow */)) + .isEqualTo(expectedHeight) + } + + @Test + fun testAreBubblesBottomAligned_largeScreen_true() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + assertThat(positioner.areBubblesBottomAligned()).isTrue() + } + + @Test + fun testAreBubblesBottomAligned_largeScreen_landscape_false() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + isLandscape = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + assertThat(positioner.areBubblesBottomAligned()).isFalse() + } + + @Test + fun testAreBubblesBottomAligned_smallTablet_false() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + isSmallTablet = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + assertThat(positioner.areBubblesBottomAligned()).isFalse() + } + + @Test + fun testAreBubblesBottomAligned_phone_false() { + val deviceConfig = + defaultDeviceConfig.copy( + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + assertThat(positioner.areBubblesBottomAligned()).isFalse() + } + + @Test + fun testExpandedViewY_phoneLandscape() { + val deviceConfig = + defaultDeviceConfig.copy( + isLandscape = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + // This bubble will have max height so it'll always be top aligned + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(positioner.getExpandedViewYTopAligned()) + } + + @Test + fun testExpandedViewY_phonePortrait() { + val deviceConfig = + defaultDeviceConfig.copy( + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + // Always top aligned in phone portrait + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(positioner.getExpandedViewYTopAligned()) + } + + @Test + fun testExpandedViewY_smallTabletLandscape() { + val deviceConfig = + defaultDeviceConfig.copy( + isSmallTablet = true, + isLandscape = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + // This bubble will have max height which is always top aligned on small tablets + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(positioner.getExpandedViewYTopAligned()) + } + + @Test + fun testExpandedViewY_smallTabletPortrait() { + val deviceConfig = + defaultDeviceConfig.copy( + isSmallTablet = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + // This bubble will have max height which is always top aligned on small tablets + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(positioner.getExpandedViewYTopAligned()) + } + + @Test + fun testExpandedViewY_largeScreenLandscape() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + isLandscape = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + // This bubble will have max height which is always top aligned on landscape, large tablet + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(positioner.getExpandedViewYTopAligned()) + } + + @Test + fun testExpandedViewY_largeScreenPortrait() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + val manageButtonHeight = + context.resources.getDimensionPixelSize(R.dimen.bubble_manage_button_height) + val manageButtonPlusMargin = + manageButtonHeight + + 2 * context.resources.getDimensionPixelSize(R.dimen.bubble_manage_button_margin) + val pointerWidth = context.resources.getDimensionPixelSize(R.dimen.bubble_pointer_width) + + val expectedExpandedViewY = + positioner.availableRect.bottom - + manageButtonPlusMargin - + positioner.getExpandedViewHeightForLargeScreen() - + pointerWidth + + // Bubbles are bottom aligned on portrait, large tablet + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(expectedExpandedViewY) + } + + @Test + fun testGetTaskViewContentWidth_onLeft() { + positioner.update(defaultDeviceConfig.copy(insets = Insets.of(100, 0, 200, 0))) + val taskViewWidth = positioner.getTaskViewContentWidth(true /* onLeft */) + val paddings = + positioner.getExpandedViewContainerPadding(true /* onLeft */, false /* isOverflow */) + assertThat(taskViewWidth) + .isEqualTo(positioner.screenRect.width() - paddings[0] - paddings[2]) + } + + @Test + fun testGetTaskViewContentWidth_onRight() { + positioner.update(defaultDeviceConfig.copy(insets = Insets.of(100, 0, 200, 0))) + val taskViewWidth = positioner.getTaskViewContentWidth(false /* onLeft */) + val paddings = + positioner.getExpandedViewContainerPadding(false /* onLeft */, false /* isOverflow */) + assertThat(taskViewWidth) + .isEqualTo(positioner.screenRect.width() - paddings[0] - paddings[2]) + } + + @Test + fun testIsBubbleBarOnLeft_defaultsToRight() { + positioner.bubbleBarLocation = BubbleBarLocation.DEFAULT + assertThat(positioner.isBubbleBarOnLeft).isFalse() + + // Check that left and right return expected position + positioner.bubbleBarLocation = BubbleBarLocation.LEFT + assertThat(positioner.isBubbleBarOnLeft).isTrue() + positioner.bubbleBarLocation = BubbleBarLocation.RIGHT + assertThat(positioner.isBubbleBarOnLeft).isFalse() + } + + @Test + fun testIsBubbleBarOnLeft_rtlEnabled_defaultsToLeft() { + positioner.update(defaultDeviceConfig.copy(isRtl = true)) + + positioner.bubbleBarLocation = BubbleBarLocation.DEFAULT + assertThat(positioner.isBubbleBarOnLeft).isTrue() + + // Check that left and right return expected position + positioner.bubbleBarLocation = BubbleBarLocation.LEFT + assertThat(positioner.isBubbleBarOnLeft).isTrue() + positioner.bubbleBarLocation = BubbleBarLocation.RIGHT + assertThat(positioner.isBubbleBarOnLeft).isFalse() + } + + @Test + fun testGetBubbleBarExpandedViewBounds_onLeft() { + testGetBubbleBarExpandedViewBounds(onLeft = true, isOverflow = false) + } + + @Test + fun testGetBubbleBarExpandedViewBounds_onRight() { + testGetBubbleBarExpandedViewBounds(onLeft = false, isOverflow = false) + } + + @Test + fun testGetBubbleBarExpandedViewBounds_isOverflow_onLeft() { + testGetBubbleBarExpandedViewBounds(onLeft = true, isOverflow = true) + } + + @Test + fun testGetBubbleBarExpandedViewBounds_isOverflow_onRight() { + testGetBubbleBarExpandedViewBounds(onLeft = false, isOverflow = true) + } + + private fun testGetBubbleBarExpandedViewBounds(onLeft: Boolean, isOverflow: Boolean) { + positioner.setShowingInBubbleBar(true) + val windowBounds = Rect(0, 0, 2000, 2600) + val insets = Insets.of(10, 20, 5, 15) + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + isLandscape = true, + insets = insets, + windowBounds = windowBounds + ) + positioner.update(deviceConfig) + + val bubbleBarHeight = 100 + positioner.bubbleBarTopOnScreen = windowBounds.bottom - insets.bottom - bubbleBarHeight + + val expandedViewPadding = + context.resources.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding) + + val left: Int + val right: Int + if (onLeft) { + // Pin to the left, calculate right + left = deviceConfig.insets.left + expandedViewPadding + right = left + positioner.getExpandedViewWidthForBubbleBar(isOverflow) + } else { + // Pin to the right, calculate left + right = + deviceConfig.windowBounds.right - deviceConfig.insets.right - expandedViewPadding + left = right - positioner.getExpandedViewWidthForBubbleBar(isOverflow) + } + // Above the bubble bar + val bottom = positioner.bubbleBarTopOnScreen - expandedViewPadding + // Calculate right and top based on size + val top = bottom - positioner.getExpandedViewHeightForBubbleBar(isOverflow) + val expectedBounds = Rect(left, top, right, bottom) + + val bounds = Rect() + positioner.getBubbleBarExpandedViewBounds(onLeft, isOverflow, bounds) + + assertThat(bounds).isEqualTo(expectedBounds) + } + + private val defaultYPosition: Float + /** + * Calculates the Y position bubbles should be placed based on the config. Based on the + * calculations in [BubblePositioner.getDefaultStartPosition] and + * [BubbleStackView.RelativeStackPosition]. + */ + get() { + val isTablet = positioner.isLargeScreen + + // On tablet the position is centered, on phone it is an offset from the top. + val desiredY = + if (isTablet) { + positioner.screenRect.height() / 2f - positioner.bubbleSize / 2f + } else { + context.resources + .getDimensionPixelOffset(R.dimen.bubble_stack_starting_offset_y) + .toFloat() + } + // Since we're visually centering the bubbles on tablet, use total screen height rather + // than the available height. + val height = + if (isTablet) { + positioner.screenRect.height() + } else { + positioner.availableRect.height() + } + val offsetPercent = (desiredY / height).coerceIn(0f, 1f) + val allowableStackRegion = + positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + return allowableStackRegion.top + allowableStackRegion.height() * offsetPercent + } +} diff --git a/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt b/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt new file mode 100644 index 0000000000..327e205955 --- /dev/null +++ b/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt @@ -0,0 +1,462 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.wm.shell.bubbles + +import android.content.Context +import android.content.Intent +import android.content.pm.ShortcutInfo +import android.content.res.Resources +import android.graphics.Color +import android.graphics.drawable.Icon +import android.os.UserHandle +import android.platform.test.flag.junit.SetFlagsRule +import android.view.IWindowManager +import android.view.WindowManager +import android.view.WindowManagerGlobal +import androidx.test.core.app.ApplicationProvider +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.filters.SmallTest +import androidx.test.platform.app.InstrumentationRegistry +import com.android.internal.logging.testing.UiEventLoggerFake +import com.android.internal.protolog.common.ProtoLog +import com.android.launcher3.icons.BubbleIconFactory +import com.android.wm.shell.Flags +import com.android.wm.shell.R +import com.android.wm.shell.bubbles.Bubbles.SysuiProxy +import com.android.wm.shell.bubbles.animation.AnimatableScaleMatrix +import com.android.wm.shell.common.FloatingContentCoordinator +import com.android.wm.shell.common.ShellExecutor +import com.android.wm.shell.shared.animation.PhysicsAnimatorTestUtils +import com.android.wm.shell.taskview.TaskView +import com.android.wm.shell.taskview.TaskViewTaskController +import com.google.common.truth.Truth.assertThat +import com.google.common.util.concurrent.MoreExecutors.directExecutor +import org.junit.After +import org.junit.Before +import org.junit.Rule +import org.junit.Test +import org.junit.runner.RunWith +import org.mockito.kotlin.mock +import android.platform.test.annotations.DisableFlags +import android.platform.test.annotations.EnableFlags +import java.util.concurrent.Semaphore +import java.util.concurrent.TimeUnit +import java.util.function.Consumer + +/** Unit tests for [BubbleStackView]. */ +@SmallTest +@RunWith(AndroidJUnit4::class) +class BubbleStackViewTest { + + @get:Rule val setFlagsRule = SetFlagsRule() + + private val context = ApplicationProvider.getApplicationContext<Context>() + private lateinit var positioner: BubblePositioner + private lateinit var iconFactory: BubbleIconFactory + private lateinit var expandedViewManager: FakeBubbleExpandedViewManager + private lateinit var bubbleStackView: BubbleStackView + private lateinit var shellExecutor: ShellExecutor + private lateinit var windowManager: IWindowManager + private lateinit var bubbleTaskViewFactory: BubbleTaskViewFactory + private lateinit var bubbleData: BubbleData + private lateinit var bubbleStackViewManager: FakeBubbleStackViewManager + private var sysuiProxy = mock<SysuiProxy>() + + @Before + fun setUp() { + PhysicsAnimatorTestUtils.prepareForTest() + // Disable protolog tool when running the tests from studio + ProtoLog.REQUIRE_PROTOLOGTOOL = false + windowManager = WindowManagerGlobal.getWindowManagerService()!! + shellExecutor = TestShellExecutor() + val windowManager = context.getSystemService(WindowManager::class.java) + iconFactory = + BubbleIconFactory( + context, + context.resources.getDimensionPixelSize(R.dimen.bubble_size), + context.resources.getDimensionPixelSize(R.dimen.bubble_badge_size), + Color.BLACK, + context.resources.getDimensionPixelSize( + com.android.internal.R.dimen.importance_ring_stroke_width + ) + ) + positioner = BubblePositioner(context, windowManager) + bubbleData = + BubbleData( + context, + BubbleLogger(UiEventLoggerFake()), + positioner, + BubbleEducationController(context), + shellExecutor + ) + bubbleStackViewManager = FakeBubbleStackViewManager() + expandedViewManager = FakeBubbleExpandedViewManager() + bubbleTaskViewFactory = FakeBubbleTaskViewFactory() + bubbleStackView = + BubbleStackView( + context, + bubbleStackViewManager, + positioner, + bubbleData, + null, + FloatingContentCoordinator(), + { sysuiProxy }, + shellExecutor + ) + + context + .getSharedPreferences(context.packageName, Context.MODE_PRIVATE) + .edit() + .putBoolean(StackEducationView.PREF_STACK_EDUCATION, true) + .apply() + } + + @After + fun tearDown() { + PhysicsAnimatorTestUtils.tearDown() + } + + @Test + fun addBubble() { + val bubble = createAndInflateBubble() + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.addBubble(bubble) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + assertThat(bubbleStackView.bubbleCount).isEqualTo(1) + } + + @Test + fun tapBubbleToExpand() { + val bubble = createAndInflateBubble() + + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.addBubble(bubble) + } + + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + assertThat(bubbleStackView.bubbleCount).isEqualTo(1) + var lastUpdate: BubbleData.Update? = null + val semaphore = Semaphore(0) + val listener = + BubbleData.Listener { update -> + lastUpdate = update + semaphore.release() + } + bubbleData.setListener(listener) + + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubble.iconView!!.performClick() + // we're checking the expanded state in BubbleData because that's the source of truth. + // This will eventually propagate an update back to the stack view, but setting the + // entire pipeline is outside the scope of a unit test. + assertThat(bubbleData.isExpanded).isTrue() + } + + assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() + assertThat(lastUpdate).isNotNull() + assertThat(lastUpdate!!.expandedChanged).isTrue() + assertThat(lastUpdate!!.expanded).isTrue() + } + + @Test + fun tapDifferentBubble_shouldReorder() { + val bubble1 = createAndInflateChatBubble(key = "bubble1") + val bubble2 = createAndInflateChatBubble(key = "bubble2") + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.addBubble(bubble1) + bubbleStackView.addBubble(bubble2) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + + assertThat(bubbleStackView.bubbleCount).isEqualTo(2) + assertThat(bubbleData.bubbles).hasSize(2) + assertThat(bubbleData.selectedBubble).isEqualTo(bubble2) + assertThat(bubble2.iconView).isNotNull() + + var lastUpdate: BubbleData.Update? = null + val semaphore = Semaphore(0) + val listener = + BubbleData.Listener { update -> + lastUpdate = update + semaphore.release() + } + bubbleData.setListener(listener) + + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubble2.iconView!!.performClick() + assertThat(bubbleData.isExpanded).isTrue() + + bubbleStackView.setSelectedBubble(bubble2) + bubbleStackView.isExpanded = true + } + + assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() + assertThat(lastUpdate!!.expanded).isTrue() + assertThat(lastUpdate!!.bubbles.map { it.key }) + .containsExactly("bubble2", "bubble1") + .inOrder() + + // wait for idle to allow the animation to start + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + // wait for the expansion animation to complete before interacting with the bubbles + PhysicsAnimatorTestUtils.blockUntilAnimationsEnd( + AnimatableScaleMatrix.SCALE_X, AnimatableScaleMatrix.SCALE_Y) + + // tap on bubble1 to select it + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubble1.iconView!!.performClick() + } + assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() + assertThat(bubbleData.selectedBubble).isEqualTo(bubble1) + + // tap on bubble1 again to collapse the stack + InstrumentationRegistry.getInstrumentation().runOnMainSync { + // we have to set the selected bubble in the stack view manually because we don't have a + // listener wired up. + bubbleStackView.setSelectedBubble(bubble1) + bubble1.iconView!!.performClick() + } + + assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() + assertThat(bubbleData.selectedBubble).isEqualTo(bubble1) + assertThat(bubbleData.isExpanded).isFalse() + assertThat(lastUpdate!!.orderChanged).isTrue() + assertThat(lastUpdate!!.bubbles.map { it.key }) + .containsExactly("bubble1", "bubble2") + .inOrder() + } + + @EnableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun testCreateStackView_noOverflowContents_noOverflow() { + bubbleStackView = + BubbleStackView( + context, + bubbleStackViewManager, + positioner, + bubbleData, + null, + FloatingContentCoordinator(), + { sysuiProxy }, + shellExecutor + ) + + assertThat(bubbleData.overflowBubbles).isEmpty() + val bubbleOverflow = bubbleData.overflow + // Overflow shouldn't be attached + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isEqualTo(-1) + } + + @EnableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun testCreateStackView_hasOverflowContents_hasOverflow() { + // Add a bubble to the overflow + val bubble1 = createAndInflateChatBubble(key = "bubble1") + bubbleData.notificationEntryUpdated(bubble1, false, false) + bubbleData.dismissBubbleWithKey(bubble1.key, Bubbles.DISMISS_USER_GESTURE) + assertThat(bubbleData.overflowBubbles).isNotEmpty() + + bubbleStackView = + BubbleStackView( + context, + bubbleStackViewManager, + positioner, + bubbleData, + null, + FloatingContentCoordinator(), + { sysuiProxy }, + shellExecutor + ) + val bubbleOverflow = bubbleData.overflow + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) + } + + @DisableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun testCreateStackView_noOverflowContents_hasOverflow() { + bubbleStackView = + BubbleStackView( + context, + bubbleStackViewManager, + positioner, + bubbleData, + null, + FloatingContentCoordinator(), + { sysuiProxy }, + shellExecutor + ) + + assertThat(bubbleData.overflowBubbles).isEmpty() + val bubbleOverflow = bubbleData.overflow + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) + } + + @EnableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun showOverflow_true() { + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.showOverflow(true) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + + val bubbleOverflow = bubbleData.overflow + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) + } + + @EnableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun showOverflow_false() { + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.showOverflow(true) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + val bubbleOverflow = bubbleData.overflow + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) + + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.showOverflow(false) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + + // The overflow should've been removed + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isEqualTo(-1) + } + + @DisableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun showOverflow_ignored() { + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.showOverflow(false) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + + // showOverflow should've been ignored, so the overflow would be attached + val bubbleOverflow = bubbleData.overflow + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) + } + + private fun createAndInflateChatBubble(key: String): Bubble { + val icon = Icon.createWithResource(context.resources, R.drawable.bubble_ic_overflow_button) + val shortcutInfo = ShortcutInfo.Builder(context, "fakeId").setIcon(icon).build() + val bubble = + Bubble( + key, + shortcutInfo, + /* desiredHeight= */ 6, + Resources.ID_NULL, + "title", + /* taskId= */ 0, + "locus", + /* isDismissable= */ true, + directExecutor() + ) {} + inflateBubble(bubble) + return bubble + } + + private fun createAndInflateBubble(): Bubble { + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val icon = Icon.createWithResource(context.resources, R.drawable.bubble_ic_overflow_button) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), icon, directExecutor()) + inflateBubble(bubble) + return bubble + } + + private fun inflateBubble(bubble: Bubble) { + bubble.setInflateSynchronously(true) + bubbleData.notificationEntryUpdated(bubble, true, false) + + val semaphore = Semaphore(0) + val callback: BubbleViewInfoTask.Callback = + BubbleViewInfoTask.Callback { semaphore.release() } + bubble.inflate( + callback, + context, + expandedViewManager, + bubbleTaskViewFactory, + positioner, + bubbleStackView, + null, + iconFactory, + false + ) + + assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() + assertThat(bubble.isInflated).isTrue() + } + + private class FakeBubbleStackViewManager : BubbleStackViewManager { + + override fun onAllBubblesAnimatedOut() {} + + override fun updateWindowFlagsForBackpress(interceptBack: Boolean) {} + + override fun checkNotificationPanelExpandedState(callback: Consumer<Boolean>) {} + + override fun hideCurrentInputMethod() {} + } + + private class TestShellExecutor : ShellExecutor { + + override fun execute(runnable: Runnable) { + runnable.run() + } + + override fun executeDelayed(r: Runnable, delayMillis: Long) { + r.run() + } + + override fun removeCallbacks(r: Runnable?) {} + + override fun hasCallback(r: Runnable): Boolean = false + } + + private inner class FakeBubbleTaskViewFactory : BubbleTaskViewFactory { + override fun create(): BubbleTaskView { + val taskViewTaskController = mock<TaskViewTaskController>() + val taskView = TaskView(context, taskViewTaskController) + return BubbleTaskView(taskView, shellExecutor) + } + } + + private inner class FakeBubbleExpandedViewManager : BubbleExpandedViewManager { + + override val overflowBubbles: List<Bubble> + get() = emptyList() + + override fun setOverflowListener(listener: BubbleData.Listener) {} + + override fun collapseStack() {} + + override fun updateWindowFlagsForBackpress(intercept: Boolean) {} + + override fun promoteBubbleFromOverflow(bubble: Bubble) {} + + override fun removeBubble(key: String, reason: Int) {} + + override fun dismissBubble(bubble: Bubble, reason: Int) {} + + override fun setAppBubbleTaskId(key: String, taskId: Int) {} + + override fun isStackExpanded(): Boolean = false + + override fun isShowingAsBubbleBar(): Boolean = false + + override fun hideCurrentInputMethod() {} + } +} diff --git a/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt b/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt new file mode 100644 index 0000000000..398fd554f0 --- /dev/null +++ b/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt @@ -0,0 +1,92 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.wm.shell.bubbles + +import android.content.ComponentName +import android.content.Context +import androidx.test.core.app.ApplicationProvider +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.filters.SmallTest +import com.android.wm.shell.taskview.TaskView + +import com.google.common.truth.Truth.assertThat +import com.google.common.util.concurrent.MoreExecutors.directExecutor +import org.junit.Before +import org.junit.Test +import org.junit.runner.RunWith +import org.mockito.kotlin.mock +import org.mockito.kotlin.never +import org.mockito.kotlin.verify + +@SmallTest +@RunWith(AndroidJUnit4::class) +class BubbleTaskViewTest { + + private lateinit var bubbleTaskView: BubbleTaskView + private val context = ApplicationProvider.getApplicationContext<Context>() + private lateinit var taskView: TaskView + + @Before + fun setUp() { + taskView = mock() + bubbleTaskView = BubbleTaskView(taskView, directExecutor()) + } + + @Test + fun onTaskCreated_updatesState() { + val componentName = ComponentName(context, "TestClass") + bubbleTaskView.listener.onTaskCreated(123, componentName) + + assertThat(bubbleTaskView.taskId).isEqualTo(123) + assertThat(bubbleTaskView.componentName).isEqualTo(componentName) + assertThat(bubbleTaskView.isCreated).isTrue() + } + + @Test + fun onTaskCreated_callsDelegateListener() { + var actualTaskId = -1 + var actualComponentName: ComponentName? = null + val delegateListener = object : TaskView.Listener { + override fun onTaskCreated(taskId: Int, name: ComponentName) { + actualTaskId = taskId + actualComponentName = name + } + } + bubbleTaskView.delegateListener = delegateListener + + val componentName = ComponentName(context, "TestClass") + bubbleTaskView.listener.onTaskCreated(123, componentName) + + assertThat(actualTaskId).isEqualTo(123) + assertThat(actualComponentName).isEqualTo(componentName) + } + + @Test + fun cleanup_invalidTaskId_doesNotRemoveTask() { + bubbleTaskView.cleanup() + verify(taskView, never()).removeTask() + } + + @Test + fun cleanup_validTaskId_removesTask() { + val componentName = ComponentName(context, "TestClass") + bubbleTaskView.listener.onTaskCreated(123, componentName) + + bubbleTaskView.cleanup() + verify(taskView).removeTask() + } +} diff --git a/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt b/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt new file mode 100644 index 0000000000..ace2c13105 --- /dev/null +++ b/wmshell/multivalentTestsForDevice/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt @@ -0,0 +1,459 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.wm.shell.bubbles.bar + +import android.content.Context +import android.graphics.Insets +import android.graphics.PointF +import android.graphics.Rect +import android.view.View +import android.view.WindowManager +import android.widget.FrameLayout +import androidx.core.animation.AnimatorTestRule +import androidx.test.core.app.ApplicationProvider +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.filters.SmallTest +import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation +import com.android.internal.protolog.common.ProtoLog +import com.android.wm.shell.R +import com.android.wm.shell.bubbles.BubblePositioner +import com.android.wm.shell.bubbles.DeviceConfig +import com.android.wm.shell.common.bubbles.BaseBubblePinController +import com.android.wm.shell.common.bubbles.BaseBubblePinController.Companion.DROP_TARGET_ALPHA_IN_DURATION +import com.android.wm.shell.common.bubbles.BaseBubblePinController.Companion.DROP_TARGET_ALPHA_OUT_DURATION +import com.android.wm.shell.common.bubbles.BubbleBarLocation +import com.android.wm.shell.common.bubbles.BubbleBarLocation.LEFT +import com.android.wm.shell.common.bubbles.BubbleBarLocation.RIGHT +import com.google.common.truth.Truth.assertThat +import org.junit.After +import org.junit.Before +import org.junit.ClassRule +import org.junit.Test +import org.junit.runner.RunWith + +/** Tests for [BubbleExpandedViewPinController] */ +@SmallTest +@RunWith(AndroidJUnit4::class) +class BubbleExpandedViewPinControllerTest { + + companion object { + @JvmField @ClassRule val animatorTestRule: AnimatorTestRule = AnimatorTestRule() + + const val SCREEN_WIDTH = 2000 + const val SCREEN_HEIGHT = 1000 + + const val BUBBLE_BAR_HEIGHT = 50 + } + + private val context = ApplicationProvider.getApplicationContext<Context>() + private lateinit var positioner: BubblePositioner + private lateinit var container: FrameLayout + + private lateinit var controller: BubbleExpandedViewPinController + private lateinit var testListener: TestLocationChangeListener + + private val dropTargetView: View? + get() = container.findViewById(R.id.bubble_bar_drop_target) + + private val pointOnLeft = PointF(100f, 100f) + private val pointOnRight = PointF(1900f, 500f) + + @Before + fun setUp() { + ProtoLog.REQUIRE_PROTOLOGTOOL = false + container = FrameLayout(context) + val windowManager = context.getSystemService(WindowManager::class.java) + positioner = BubblePositioner(context, windowManager) + positioner.setShowingInBubbleBar(true) + val deviceConfig = + DeviceConfig( + windowBounds = Rect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT), + isLargeScreen = true, + isSmallTablet = false, + isLandscape = true, + isRtl = false, + insets = Insets.of(10, 20, 30, 40) + ) + positioner.update(deviceConfig) + positioner.bubbleBarTopOnScreen = + SCREEN_HEIGHT - deviceConfig.insets.bottom - BUBBLE_BAR_HEIGHT + controller = BubbleExpandedViewPinController(context, container, positioner) + testListener = TestLocationChangeListener() + controller.setListener(testListener) + } + + @After + fun tearDown() { + getInstrumentation().runOnMainSync { controller.onDragEnd() } + waitForAnimateOut() + } + + /** Dragging on same side should not show drop target or trigger location changes */ + @Test + fun drag_stayOnRightSide() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onDragEnd() + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).containsExactly(RIGHT) + } + + /** Dragging on same side should not show drop target or trigger location changes */ + @Test + fun drag_stayOnLeftSide() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onDragEnd() + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).containsExactly(LEFT) + } + + /** Drag crosses to the other side. Show drop target and trigger a location change. */ + @Test + fun drag_rightToLeft() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnLeft()) + assertThat(testListener.locationChanges).containsExactly(LEFT) + assertThat(testListener.locationReleases).isEmpty() + } + + /** Drag crosses to the other side. Show drop target and trigger a location change. */ + @Test + fun drag_leftToRight() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnRight()) + assertThat(testListener.locationChanges).containsExactly(RIGHT) + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drop target does not initially show on the side that the drag starts. Check that it shows up + * after the dragging the view to other side and back to the initial side. + */ + @Test + fun drag_rightToLeftToRight() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + + getInstrumentation().runOnMainSync { controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + + getInstrumentation().runOnMainSync { + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateOut() + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnRight()) + assertThat(testListener.locationChanges).containsExactly(LEFT, RIGHT).inOrder() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drop target does not initially show on the side that the drag starts. Check that it shows up + * after the dragging the view to other side and back to the initial side. + */ + @Test + fun drag_leftToRightToLeft() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + + getInstrumentation().runOnMainSync { + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + + getInstrumentation().runOnMainSync { controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) } + waitForAnimateOut() + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnLeft()) + assertThat(testListener.locationChanges).containsExactly(RIGHT, LEFT).inOrder() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag from right to left, but stay in exclusion rect around the dismiss view. Drop target + * should not show and location change should not trigger. + */ + @Test + fun drag_rightToLeft_inExclusionRect() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + // Exclusion rect is around the bottom center area of the screen + controller.onDragUpdate(SCREEN_WIDTH / 2f - 50, SCREEN_HEIGHT - 100f) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag from left to right, but stay in exclusion rect around the dismiss view. Drop target + * should not show and location change should not trigger. + */ + @Test + fun drag_leftToRight_inExclusionRect() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + // Exclusion rect is around the bottom center area of the screen + controller.onDragUpdate(SCREEN_WIDTH / 2f + 50, SCREEN_HEIGHT - 100f) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag to dismiss target and back to the same side should not cause the drop target to show. + */ + @Test + fun drag_rightToDismissToRight() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onStuckToDismissTarget() + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag to dismiss target and back to the same side should not cause the drop target to show. + */ + @Test + fun drag_leftToDismissToLeft() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onStuckToDismissTarget() + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).isEmpty() + } + + /** Drag to dismiss target and other side should show drop target on the other side. */ + @Test + fun drag_rightToDismissToLeft() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onStuckToDismissTarget() + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnLeft()) + + assertThat(testListener.locationChanges).containsExactly(LEFT) + assertThat(testListener.locationReleases).isEmpty() + } + + /** Drag to dismiss target and other side should show drop target on the other side. */ + @Test + fun drag_leftToDismissToRight() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onStuckToDismissTarget() + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnRight()) + + assertThat(testListener.locationChanges).containsExactly(RIGHT) + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag to dismiss should trigger a location change to the initial location, if the current + * location is different. And hide the drop target. + */ + @Test + fun drag_rightToLeftToDismiss() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + + getInstrumentation().runOnMainSync { controller.onStuckToDismissTarget() } + waitForAnimateOut() + assertThat(dropTargetView!!.alpha).isEqualTo(0f) + + assertThat(testListener.locationChanges).containsExactly(LEFT, RIGHT).inOrder() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag to dismiss should trigger a location change to the initial location, if the current + * location is different. And hide the drop target. + */ + @Test + fun drag_leftToRightToDismiss() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + getInstrumentation().runOnMainSync { controller.onStuckToDismissTarget() } + waitForAnimateOut() + assertThat(dropTargetView!!.alpha).isEqualTo(0f) + assertThat(testListener.locationChanges).containsExactly(RIGHT, LEFT).inOrder() + assertThat(testListener.locationReleases).isEmpty() + } + + /** Finishing drag should remove drop target and send location update. */ + @Test + fun drag_rightToLeftRelease() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + + getInstrumentation().runOnMainSync { controller.onDragEnd() } + waitForAnimateOut() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).containsExactly(LEFT) + assertThat(testListener.locationReleases).containsExactly(LEFT) + } + + /** Finishing drag should remove drop target and send location update. */ + @Test + fun drag_leftToRightRelease() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + + getInstrumentation().runOnMainSync { controller.onDragEnd() } + waitForAnimateOut() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).containsExactly(RIGHT) + assertThat(testListener.locationReleases).containsExactly(RIGHT) + } + + private fun getExpectedDropTargetBoundsOnLeft(): Rect = + Rect().also { + positioner.getBubbleBarExpandedViewBounds( + true /* onLeft */, + false /* isOverflowExpanded */, + it + ) + } + + private fun getExpectedDropTargetBoundsOnRight(): Rect = + Rect().also { + positioner.getBubbleBarExpandedViewBounds( + false /* onLeft */, + false /* isOverflowExpanded */, + it + ) + } + + private fun waitForAnimateIn() { + // Advance animator for on-device test + getInstrumentation().runOnMainSync { + animatorTestRule.advanceTimeBy(DROP_TARGET_ALPHA_IN_DURATION) + } + } + + private fun waitForAnimateOut() { + // Advance animator for on-device test + getInstrumentation().runOnMainSync { + animatorTestRule.advanceTimeBy(DROP_TARGET_ALPHA_OUT_DURATION) + } + } + + private fun View.bounds(): Rect { + return Rect(0, 0, layoutParams.width, layoutParams.height).also { rect -> + rect.offsetTo(x.toInt(), y.toInt()) + } + } + + internal class TestLocationChangeListener : BaseBubblePinController.LocationChangeListener { + val locationChanges = mutableListOf<BubbleBarLocation>() + val locationReleases = mutableListOf<BubbleBarLocation>() + override fun onChange(location: BubbleBarLocation) { + locationChanges.add(location) + } + + override fun onRelease(location: BubbleBarLocation) { + locationReleases.add(location) + } + } +} diff --git a/wmshell/multivalentTestsForDeviceless b/wmshell/multivalentTestsForDeviceless deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/wmshell/multivalentTestsForDeviceless/Android.bp b/wmshell/multivalentTestsForDeviceless/Android.bp new file mode 100644 index 0000000000..1ad19c9f30 --- /dev/null +++ b/wmshell/multivalentTestsForDeviceless/Android.bp @@ -0,0 +1,99 @@ +// Copyright (C) 2019 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], + default_team: "trendy_team_multitasking_windowing", +} + +android_app { + name: "WindowManagerShellRobolectric", + platform_apis: true, + static_libs: [ + "WindowManager-Shell", + ], + manifest: "AndroidManifestRobolectric.xml", + use_resource_processor: true, +} + +android_robolectric_test { + name: "WMShellRobolectricTests", + instrumentation_for: "WindowManagerShellRobolectric", + upstream: true, + java_resource_dirs: [ + "robolectric/config", + ], + srcs: [ + "src/**/*.kt", + ], + // TODO(b/323188766): Include BubbleStackViewTest once the robolectric issue is fixed. + exclude_srcs: ["src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt"], + static_libs: [ + "junit", + "androidx.core_core-animation-testing", + "androidx.test.runner", + "androidx.test.rules", + "androidx.test.ext.junit", + "mockito-robolectric-prebuilt", + "mockito-kotlin2", + "truth", + ], + auto_gen_config: true, +} + +android_test { + name: "WMShellMultivalentTestsOnDevice", + srcs: [ + "src/**/*.kt", + ], + static_libs: [ + "WindowManager-Shell", + "junit", + "androidx.core_core-animation-testing", + "androidx.test.runner", + "androidx.test.rules", + "androidx.test.ext.junit", + "frameworks-base-testutils", + "mockito-kotlin2", + "mockito-target-extended-minus-junit4", + "truth", + "platform-test-annotations", + "platform-test-rules", + ], + libs: [ + "android.test.base", + "android.test.runner", + ], + jni_libs: [ + "libdexmakerjvmtiagent", + "libstaticjvmtiagent", + ], + kotlincflags: ["-Xjvm-default=all"], + optimize: { + enabled: false, + }, + test_suites: ["device-tests"], + platform_apis: true, + certificate: "platform", + aaptflags: [ + "--extra-packages", + "com.android.wm.shell", + ], + manifest: "AndroidManifest.xml", +} diff --git a/wmshell/multivalentTestsForDeviceless/AndroidManifest.xml b/wmshell/multivalentTestsForDeviceless/AndroidManifest.xml new file mode 100644 index 0000000000..f8f8338e5f --- /dev/null +++ b/wmshell/multivalentTestsForDeviceless/AndroidManifest.xml @@ -0,0 +1,13 @@ +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.wm.shell.multivalenttests"> + + <application android:debuggable="true" android:supportsRtl="true" > + <uses-library android:name="android.test.runner" /> + </application> + + <instrumentation + android:name="androidx.test.runner.AndroidJUnitRunner" + android:label="Multivalent tests for WindowManager-Shell" + android:targetPackage="com.android.wm.shell.multivalenttests"> + </instrumentation> +</manifest> diff --git a/wmshell/multivalentTestsForDeviceless/AndroidManifestRobolectric.xml b/wmshell/multivalentTestsForDeviceless/AndroidManifestRobolectric.xml new file mode 100644 index 0000000000..ffcd7d46fb --- /dev/null +++ b/wmshell/multivalentTestsForDeviceless/AndroidManifestRobolectric.xml @@ -0,0 +1,3 @@ +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.wm.shell.multivalenttests"> +</manifest> diff --git a/wmshell/multivalentTestsForDeviceless/AndroidTest.xml b/wmshell/multivalentTestsForDeviceless/AndroidTest.xml new file mode 100644 index 0000000000..36fe8ec337 --- /dev/null +++ b/wmshell/multivalentTestsForDeviceless/AndroidTest.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2023 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<configuration description="Runs Tests for WindowManagerShellLib"> + <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller"> + <option name="cleanup-apks" value="true" /> + <option name="install-arg" value="-t" /> + <option name="test-file-name" value="WMShellMultivalentTestsOnDevice.apk" /> + </target_preparer> + + <option name="test-suite-tag" value="apct" /> + <option name="test-suite-tag" value="framework-base-presubmit" /> + <option name="test-tag" value="WMShellMultivalentTestsOnDevice" /> + <test class="com.android.tradefed.testtype.AndroidJUnitTest" > + <option name="package" value="com.android.wm.shell.multivalenttests" /> + <option name="runner" value="androidx.test.runner.AndroidJUnitRunner" /> + <option name="hidden-api-checks" value="false"/> + </test> +</configuration> diff --git a/wmshell/multivalentTestsForDeviceless/OWNERS b/wmshell/multivalentTestsForDeviceless/OWNERS new file mode 100644 index 0000000000..24c1a3a6d4 --- /dev/null +++ b/wmshell/multivalentTestsForDeviceless/OWNERS @@ -0,0 +1,4 @@ +atsjenk@google.com +liranb@google.com +madym@google.com + diff --git a/wmshell/multivalentTestsForDeviceless/robolectric/config/robolectric.properties b/wmshell/multivalentTestsForDeviceless/robolectric/config/robolectric.properties new file mode 100644 index 0000000000..7a0527ccaa --- /dev/null +++ b/wmshell/multivalentTestsForDeviceless/robolectric/config/robolectric.properties @@ -0,0 +1,2 @@ +sdk=NEWEST_SDK + diff --git a/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt b/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt new file mode 100644 index 0000000000..9e1440d571 --- /dev/null +++ b/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubblePositionerTest.kt @@ -0,0 +1,670 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.wm.shell.bubbles + +import android.content.Context +import android.content.Intent +import android.content.pm.ShortcutInfo +import android.content.res.Resources +import android.graphics.Insets +import android.graphics.PointF +import android.graphics.Rect +import android.os.UserHandle +import android.view.WindowManager +import androidx.test.core.app.ApplicationProvider +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.filters.SmallTest +import com.android.internal.protolog.common.ProtoLog +import com.android.wm.shell.R +import com.android.wm.shell.bubbles.BubblePositioner.MAX_HEIGHT +import com.android.wm.shell.common.bubbles.BubbleBarLocation +import com.google.common.truth.Truth.assertThat +import com.google.common.util.concurrent.MoreExecutors.directExecutor +import org.junit.Before +import org.junit.Test +import org.junit.runner.RunWith + +/** Tests operations and the resulting state managed by [BubblePositioner]. */ +@SmallTest +@RunWith(AndroidJUnit4::class) +class BubblePositionerTest { + + private lateinit var positioner: BubblePositioner + private val context = ApplicationProvider.getApplicationContext<Context>() + private val resources: Resources + get() = context.resources + + private val defaultDeviceConfig = + DeviceConfig( + windowBounds = Rect(0, 0, 1000, 2000), + isLargeScreen = false, + isSmallTablet = false, + isLandscape = false, + isRtl = false, + insets = Insets.of(0, 0, 0, 0) + ) + + @Before + fun setUp() { + ProtoLog.REQUIRE_PROTOLOGTOOL = false + val windowManager = context.getSystemService(WindowManager::class.java) + positioner = BubblePositioner(context, windowManager) + } + + @Test + fun testUpdate() { + val insets = Insets.of(10, 20, 5, 15) + val screenBounds = Rect(0, 0, 1000, 1200) + val availableRect = Rect(screenBounds) + availableRect.inset(insets) + positioner.update(defaultDeviceConfig.copy(insets = insets, windowBounds = screenBounds)) + assertThat(positioner.availableRect).isEqualTo(availableRect) + assertThat(positioner.isLandscape).isFalse() + assertThat(positioner.isLargeScreen).isFalse() + assertThat(positioner.insets).isEqualTo(insets) + } + + @Test + fun testShowBubblesVertically_phonePortrait() { + positioner.update(defaultDeviceConfig) + assertThat(positioner.showBubblesVertically()).isFalse() + } + + @Test + fun testShowBubblesVertically_phoneLandscape() { + positioner.update(defaultDeviceConfig.copy(isLandscape = true)) + assertThat(positioner.isLandscape).isTrue() + assertThat(positioner.showBubblesVertically()).isTrue() + } + + @Test + fun testShowBubblesVertically_tablet() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true)) + assertThat(positioner.showBubblesVertically()).isTrue() + } + + /** If a resting position hasn't been set, calling it will return the default position. */ + @Test + fun testGetRestingPosition_returnsDefaultPosition() { + positioner.update(defaultDeviceConfig) + val restingPosition = positioner.getRestingPosition() + val defaultPosition = positioner.defaultStartPosition + assertThat(restingPosition).isEqualTo(defaultPosition) + } + + /** If a resting position has been set, it'll return that instead of the default position. */ + @Test + fun testGetRestingPosition_returnsRestingPosition() { + positioner.update(defaultDeviceConfig) + val restingPosition = PointF(100f, 100f) + positioner.restingPosition = restingPosition + assertThat(positioner.getRestingPosition()).isEqualTo(restingPosition) + } + + /** Test that the default resting position on phone is in upper left. */ + @Test + fun testGetRestingPosition_bubble_onPhone() { + positioner.update(defaultDeviceConfig) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val restingPosition = positioner.getRestingPosition() + assertThat(restingPosition.x).isEqualTo(allowableStackRegion.left) + assertThat(restingPosition.y).isEqualTo(defaultYPosition) + } + + @Test + fun testGetRestingPosition_bubble_onPhone_RTL() { + positioner.update(defaultDeviceConfig.copy(isRtl = true)) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val restingPosition = positioner.getRestingPosition() + assertThat(restingPosition.x).isEqualTo(allowableStackRegion.right) + assertThat(restingPosition.y).isEqualTo(defaultYPosition) + } + + /** Test that the default resting position on tablet is middle left. */ + @Test + fun testGetRestingPosition_chatBubble_onTablet() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true)) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val restingPosition = positioner.getRestingPosition() + assertThat(restingPosition.x).isEqualTo(allowableStackRegion.left) + assertThat(restingPosition.y).isEqualTo(defaultYPosition) + } + + @Test + fun testGetRestingPosition_chatBubble_onTablet_RTL() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true, isRtl = true)) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val restingPosition = positioner.getRestingPosition() + assertThat(restingPosition.x).isEqualTo(allowableStackRegion.right) + assertThat(restingPosition.y).isEqualTo(defaultYPosition) + } + + /** Test that the default resting position on tablet is middle right. */ + @Test + fun testGetDefaultPosition_appBubble_onTablet() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true)) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val startPosition = positioner.getDefaultStartPosition(true /* isAppBubble */) + assertThat(startPosition.x).isEqualTo(allowableStackRegion.right) + assertThat(startPosition.y).isEqualTo(defaultYPosition) + } + + @Test + fun testGetRestingPosition_appBubble_onTablet_RTL() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true, isRtl = true)) + val allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val startPosition = positioner.getDefaultStartPosition(true /* isAppBubble */) + assertThat(startPosition.x).isEqualTo(allowableStackRegion.left) + assertThat(startPosition.y).isEqualTo(defaultYPosition) + } + + @Test + fun testGetRestingPosition_afterBoundsChange() { + positioner.update( + defaultDeviceConfig.copy(isLargeScreen = true, windowBounds = Rect(0, 0, 2000, 1600)) + ) + + // Set the resting position to the right side + var allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + val restingPosition = PointF(allowableStackRegion.right, allowableStackRegion.centerY()) + positioner.restingPosition = restingPosition + + // Now make the device smaller + positioner.update( + defaultDeviceConfig.copy(isLargeScreen = false, windowBounds = Rect(0, 0, 1000, 1600)) + ) + + // Check the resting position is on the correct side + allowableStackRegion = positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + assertThat(positioner.restingPosition.x).isEqualTo(allowableStackRegion.right) + } + + @Test + fun testHasUserModifiedDefaultPosition_false() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true, isRtl = true)) + assertThat(positioner.hasUserModifiedDefaultPosition()).isFalse() + positioner.restingPosition = positioner.defaultStartPosition + assertThat(positioner.hasUserModifiedDefaultPosition()).isFalse() + } + + @Test + fun testHasUserModifiedDefaultPosition_true() { + positioner.update(defaultDeviceConfig.copy(isLargeScreen = true, isRtl = true)) + assertThat(positioner.hasUserModifiedDefaultPosition()).isFalse() + positioner.restingPosition = PointF(0f, 100f) + assertThat(positioner.hasUserModifiedDefaultPosition()).isTrue() + } + + @Test + fun testBubbleBarExpandedViewHeightAndWidth() { + val deviceConfig = + defaultDeviceConfig.copy( + // portrait orientation + isLandscape = false, + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + + positioner.setShowingInBubbleBar(true) + positioner.update(deviceConfig) + positioner.bubbleBarTopOnScreen = 2500 + + val spaceBetweenTopInsetAndBubbleBarInLandscape = 1680 + val expandedViewVerticalSpacing = + resources.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding) + val expectedHeight = + spaceBetweenTopInsetAndBubbleBarInLandscape - 2 * expandedViewVerticalSpacing + val expectedWidth = resources.getDimensionPixelSize(R.dimen.bubble_bar_expanded_view_width) + + assertThat(positioner.getExpandedViewWidthForBubbleBar(false)).isEqualTo(expectedWidth) + assertThat(positioner.getExpandedViewHeightForBubbleBar(false)).isEqualTo(expectedHeight) + } + + @Test + fun testBubbleBarExpandedViewHeightAndWidth_screenWidthTooSmall() { + val screenWidth = 300 + val deviceConfig = + defaultDeviceConfig.copy( + // portrait orientation + isLandscape = false, + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, screenWidth, 2600) + ) + positioner.setShowingInBubbleBar(true) + positioner.update(deviceConfig) + positioner.bubbleBarTopOnScreen = 2500 + + val spaceBetweenTopInsetAndBubbleBarInLandscape = 180 + val expandedViewSpacing = + resources.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding) + val expectedHeight = spaceBetweenTopInsetAndBubbleBarInLandscape - 2 * expandedViewSpacing + val expectedWidth = screenWidth - 15 /* horizontal insets */ - 2 * expandedViewSpacing + assertThat(positioner.getExpandedViewWidthForBubbleBar(false)).isEqualTo(expectedWidth) + assertThat(positioner.getExpandedViewHeightForBubbleBar(false)).isEqualTo(expectedHeight) + } + + @Test + fun testGetExpandedViewHeight_max() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + assertThat(positioner.getExpandedViewHeight(bubble)).isEqualTo(MAX_HEIGHT) + } + + @Test + fun testGetExpandedViewHeight_customHeight_valid() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + val minHeight = + context.resources.getDimensionPixelSize(R.dimen.bubble_expanded_default_height) + val bubble = + Bubble( + "key", + ShortcutInfo.Builder(context, "id").build(), + minHeight + 100 /* desiredHeight */, + 0 /* desiredHeightResId */, + "title", + 0 /* taskId */, + null /* locus */, + true /* isDismissable */, + directExecutor() + ) {} + + // Ensure the height is the same as the desired value + assertThat(positioner.getExpandedViewHeight(bubble)) + .isEqualTo(bubble.getDesiredHeight(context)) + } + + @Test + fun testGetExpandedViewHeight_customHeight_tooSmall() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val bubble = + Bubble( + "key", + ShortcutInfo.Builder(context, "id").build(), + 10 /* desiredHeight */, + 0 /* desiredHeightResId */, + "title", + 0 /* taskId */, + null /* locus */, + true /* isDismissable */, + directExecutor() + ) {} + + // Ensure the height is the same as the desired value + val minHeight = + context.resources.getDimensionPixelSize(R.dimen.bubble_expanded_default_height) + assertThat(positioner.getExpandedViewHeight(bubble)).isEqualTo(minHeight) + } + + @Test + fun testGetMaxExpandedViewHeight_onLargeTablet() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val manageButtonHeight = + context.resources.getDimensionPixelSize(R.dimen.bubble_manage_button_height) + val pointerWidth = context.resources.getDimensionPixelSize(R.dimen.bubble_pointer_width) + val expandedViewPadding = + context.resources.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding) + val expectedHeight = + 1800 - 2 * 20 - manageButtonHeight - pointerWidth - expandedViewPadding * 2 + assertThat(positioner.getMaxExpandedViewHeight(false /* isOverflow */)) + .isEqualTo(expectedHeight) + } + + @Test + fun testAreBubblesBottomAligned_largeScreen_true() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + assertThat(positioner.areBubblesBottomAligned()).isTrue() + } + + @Test + fun testAreBubblesBottomAligned_largeScreen_landscape_false() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + isLandscape = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + assertThat(positioner.areBubblesBottomAligned()).isFalse() + } + + @Test + fun testAreBubblesBottomAligned_smallTablet_false() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + isSmallTablet = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + assertThat(positioner.areBubblesBottomAligned()).isFalse() + } + + @Test + fun testAreBubblesBottomAligned_phone_false() { + val deviceConfig = + defaultDeviceConfig.copy( + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + assertThat(positioner.areBubblesBottomAligned()).isFalse() + } + + @Test + fun testExpandedViewY_phoneLandscape() { + val deviceConfig = + defaultDeviceConfig.copy( + isLandscape = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + // This bubble will have max height so it'll always be top aligned + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(positioner.getExpandedViewYTopAligned()) + } + + @Test + fun testExpandedViewY_phonePortrait() { + val deviceConfig = + defaultDeviceConfig.copy( + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + // Always top aligned in phone portrait + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(positioner.getExpandedViewYTopAligned()) + } + + @Test + fun testExpandedViewY_smallTabletLandscape() { + val deviceConfig = + defaultDeviceConfig.copy( + isSmallTablet = true, + isLandscape = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + // This bubble will have max height which is always top aligned on small tablets + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(positioner.getExpandedViewYTopAligned()) + } + + @Test + fun testExpandedViewY_smallTabletPortrait() { + val deviceConfig = + defaultDeviceConfig.copy( + isSmallTablet = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + // This bubble will have max height which is always top aligned on small tablets + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(positioner.getExpandedViewYTopAligned()) + } + + @Test + fun testExpandedViewY_largeScreenLandscape() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + isLandscape = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + // This bubble will have max height which is always top aligned on landscape, large tablet + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(positioner.getExpandedViewYTopAligned()) + } + + @Test + fun testExpandedViewY_largeScreenPortrait() { + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + insets = Insets.of(10, 20, 5, 15), + windowBounds = Rect(0, 0, 1800, 2600) + ) + positioner.update(deviceConfig) + + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), null, directExecutor()) + + val manageButtonHeight = + context.resources.getDimensionPixelSize(R.dimen.bubble_manage_button_height) + val manageButtonPlusMargin = + manageButtonHeight + + 2 * context.resources.getDimensionPixelSize(R.dimen.bubble_manage_button_margin) + val pointerWidth = context.resources.getDimensionPixelSize(R.dimen.bubble_pointer_width) + + val expectedExpandedViewY = + positioner.availableRect.bottom - + manageButtonPlusMargin - + positioner.getExpandedViewHeightForLargeScreen() - + pointerWidth + + // Bubbles are bottom aligned on portrait, large tablet + assertThat(positioner.getExpandedViewY(bubble, 0f /* bubblePosition */)) + .isEqualTo(expectedExpandedViewY) + } + + @Test + fun testGetTaskViewContentWidth_onLeft() { + positioner.update(defaultDeviceConfig.copy(insets = Insets.of(100, 0, 200, 0))) + val taskViewWidth = positioner.getTaskViewContentWidth(true /* onLeft */) + val paddings = + positioner.getExpandedViewContainerPadding(true /* onLeft */, false /* isOverflow */) + assertThat(taskViewWidth) + .isEqualTo(positioner.screenRect.width() - paddings[0] - paddings[2]) + } + + @Test + fun testGetTaskViewContentWidth_onRight() { + positioner.update(defaultDeviceConfig.copy(insets = Insets.of(100, 0, 200, 0))) + val taskViewWidth = positioner.getTaskViewContentWidth(false /* onLeft */) + val paddings = + positioner.getExpandedViewContainerPadding(false /* onLeft */, false /* isOverflow */) + assertThat(taskViewWidth) + .isEqualTo(positioner.screenRect.width() - paddings[0] - paddings[2]) + } + + @Test + fun testIsBubbleBarOnLeft_defaultsToRight() { + positioner.bubbleBarLocation = BubbleBarLocation.DEFAULT + assertThat(positioner.isBubbleBarOnLeft).isFalse() + + // Check that left and right return expected position + positioner.bubbleBarLocation = BubbleBarLocation.LEFT + assertThat(positioner.isBubbleBarOnLeft).isTrue() + positioner.bubbleBarLocation = BubbleBarLocation.RIGHT + assertThat(positioner.isBubbleBarOnLeft).isFalse() + } + + @Test + fun testIsBubbleBarOnLeft_rtlEnabled_defaultsToLeft() { + positioner.update(defaultDeviceConfig.copy(isRtl = true)) + + positioner.bubbleBarLocation = BubbleBarLocation.DEFAULT + assertThat(positioner.isBubbleBarOnLeft).isTrue() + + // Check that left and right return expected position + positioner.bubbleBarLocation = BubbleBarLocation.LEFT + assertThat(positioner.isBubbleBarOnLeft).isTrue() + positioner.bubbleBarLocation = BubbleBarLocation.RIGHT + assertThat(positioner.isBubbleBarOnLeft).isFalse() + } + + @Test + fun testGetBubbleBarExpandedViewBounds_onLeft() { + testGetBubbleBarExpandedViewBounds(onLeft = true, isOverflow = false) + } + + @Test + fun testGetBubbleBarExpandedViewBounds_onRight() { + testGetBubbleBarExpandedViewBounds(onLeft = false, isOverflow = false) + } + + @Test + fun testGetBubbleBarExpandedViewBounds_isOverflow_onLeft() { + testGetBubbleBarExpandedViewBounds(onLeft = true, isOverflow = true) + } + + @Test + fun testGetBubbleBarExpandedViewBounds_isOverflow_onRight() { + testGetBubbleBarExpandedViewBounds(onLeft = false, isOverflow = true) + } + + private fun testGetBubbleBarExpandedViewBounds(onLeft: Boolean, isOverflow: Boolean) { + positioner.setShowingInBubbleBar(true) + val windowBounds = Rect(0, 0, 2000, 2600) + val insets = Insets.of(10, 20, 5, 15) + val deviceConfig = + defaultDeviceConfig.copy( + isLargeScreen = true, + isLandscape = true, + insets = insets, + windowBounds = windowBounds + ) + positioner.update(deviceConfig) + + val bubbleBarHeight = 100 + positioner.bubbleBarTopOnScreen = windowBounds.bottom - insets.bottom - bubbleBarHeight + + val expandedViewPadding = + context.resources.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding) + + val left: Int + val right: Int + if (onLeft) { + // Pin to the left, calculate right + left = deviceConfig.insets.left + expandedViewPadding + right = left + positioner.getExpandedViewWidthForBubbleBar(isOverflow) + } else { + // Pin to the right, calculate left + right = + deviceConfig.windowBounds.right - deviceConfig.insets.right - expandedViewPadding + left = right - positioner.getExpandedViewWidthForBubbleBar(isOverflow) + } + // Above the bubble bar + val bottom = positioner.bubbleBarTopOnScreen - expandedViewPadding + // Calculate right and top based on size + val top = bottom - positioner.getExpandedViewHeightForBubbleBar(isOverflow) + val expectedBounds = Rect(left, top, right, bottom) + + val bounds = Rect() + positioner.getBubbleBarExpandedViewBounds(onLeft, isOverflow, bounds) + + assertThat(bounds).isEqualTo(expectedBounds) + } + + private val defaultYPosition: Float + /** + * Calculates the Y position bubbles should be placed based on the config. Based on the + * calculations in [BubblePositioner.getDefaultStartPosition] and + * [BubbleStackView.RelativeStackPosition]. + */ + get() { + val isTablet = positioner.isLargeScreen + + // On tablet the position is centered, on phone it is an offset from the top. + val desiredY = + if (isTablet) { + positioner.screenRect.height() / 2f - positioner.bubbleSize / 2f + } else { + context.resources + .getDimensionPixelOffset(R.dimen.bubble_stack_starting_offset_y) + .toFloat() + } + // Since we're visually centering the bubbles on tablet, use total screen height rather + // than the available height. + val height = + if (isTablet) { + positioner.screenRect.height() + } else { + positioner.availableRect.height() + } + val offsetPercent = (desiredY / height).coerceIn(0f, 1f) + val allowableStackRegion = + positioner.getAllowableStackPositionRegion(1 /* bubbleCount */) + return allowableStackRegion.top + allowableStackRegion.height() * offsetPercent + } +} diff --git a/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt b/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt new file mode 100644 index 0000000000..327e205955 --- /dev/null +++ b/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubbleStackViewTest.kt @@ -0,0 +1,462 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.wm.shell.bubbles + +import android.content.Context +import android.content.Intent +import android.content.pm.ShortcutInfo +import android.content.res.Resources +import android.graphics.Color +import android.graphics.drawable.Icon +import android.os.UserHandle +import android.platform.test.flag.junit.SetFlagsRule +import android.view.IWindowManager +import android.view.WindowManager +import android.view.WindowManagerGlobal +import androidx.test.core.app.ApplicationProvider +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.filters.SmallTest +import androidx.test.platform.app.InstrumentationRegistry +import com.android.internal.logging.testing.UiEventLoggerFake +import com.android.internal.protolog.common.ProtoLog +import com.android.launcher3.icons.BubbleIconFactory +import com.android.wm.shell.Flags +import com.android.wm.shell.R +import com.android.wm.shell.bubbles.Bubbles.SysuiProxy +import com.android.wm.shell.bubbles.animation.AnimatableScaleMatrix +import com.android.wm.shell.common.FloatingContentCoordinator +import com.android.wm.shell.common.ShellExecutor +import com.android.wm.shell.shared.animation.PhysicsAnimatorTestUtils +import com.android.wm.shell.taskview.TaskView +import com.android.wm.shell.taskview.TaskViewTaskController +import com.google.common.truth.Truth.assertThat +import com.google.common.util.concurrent.MoreExecutors.directExecutor +import org.junit.After +import org.junit.Before +import org.junit.Rule +import org.junit.Test +import org.junit.runner.RunWith +import org.mockito.kotlin.mock +import android.platform.test.annotations.DisableFlags +import android.platform.test.annotations.EnableFlags +import java.util.concurrent.Semaphore +import java.util.concurrent.TimeUnit +import java.util.function.Consumer + +/** Unit tests for [BubbleStackView]. */ +@SmallTest +@RunWith(AndroidJUnit4::class) +class BubbleStackViewTest { + + @get:Rule val setFlagsRule = SetFlagsRule() + + private val context = ApplicationProvider.getApplicationContext<Context>() + private lateinit var positioner: BubblePositioner + private lateinit var iconFactory: BubbleIconFactory + private lateinit var expandedViewManager: FakeBubbleExpandedViewManager + private lateinit var bubbleStackView: BubbleStackView + private lateinit var shellExecutor: ShellExecutor + private lateinit var windowManager: IWindowManager + private lateinit var bubbleTaskViewFactory: BubbleTaskViewFactory + private lateinit var bubbleData: BubbleData + private lateinit var bubbleStackViewManager: FakeBubbleStackViewManager + private var sysuiProxy = mock<SysuiProxy>() + + @Before + fun setUp() { + PhysicsAnimatorTestUtils.prepareForTest() + // Disable protolog tool when running the tests from studio + ProtoLog.REQUIRE_PROTOLOGTOOL = false + windowManager = WindowManagerGlobal.getWindowManagerService()!! + shellExecutor = TestShellExecutor() + val windowManager = context.getSystemService(WindowManager::class.java) + iconFactory = + BubbleIconFactory( + context, + context.resources.getDimensionPixelSize(R.dimen.bubble_size), + context.resources.getDimensionPixelSize(R.dimen.bubble_badge_size), + Color.BLACK, + context.resources.getDimensionPixelSize( + com.android.internal.R.dimen.importance_ring_stroke_width + ) + ) + positioner = BubblePositioner(context, windowManager) + bubbleData = + BubbleData( + context, + BubbleLogger(UiEventLoggerFake()), + positioner, + BubbleEducationController(context), + shellExecutor + ) + bubbleStackViewManager = FakeBubbleStackViewManager() + expandedViewManager = FakeBubbleExpandedViewManager() + bubbleTaskViewFactory = FakeBubbleTaskViewFactory() + bubbleStackView = + BubbleStackView( + context, + bubbleStackViewManager, + positioner, + bubbleData, + null, + FloatingContentCoordinator(), + { sysuiProxy }, + shellExecutor + ) + + context + .getSharedPreferences(context.packageName, Context.MODE_PRIVATE) + .edit() + .putBoolean(StackEducationView.PREF_STACK_EDUCATION, true) + .apply() + } + + @After + fun tearDown() { + PhysicsAnimatorTestUtils.tearDown() + } + + @Test + fun addBubble() { + val bubble = createAndInflateBubble() + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.addBubble(bubble) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + assertThat(bubbleStackView.bubbleCount).isEqualTo(1) + } + + @Test + fun tapBubbleToExpand() { + val bubble = createAndInflateBubble() + + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.addBubble(bubble) + } + + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + assertThat(bubbleStackView.bubbleCount).isEqualTo(1) + var lastUpdate: BubbleData.Update? = null + val semaphore = Semaphore(0) + val listener = + BubbleData.Listener { update -> + lastUpdate = update + semaphore.release() + } + bubbleData.setListener(listener) + + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubble.iconView!!.performClick() + // we're checking the expanded state in BubbleData because that's the source of truth. + // This will eventually propagate an update back to the stack view, but setting the + // entire pipeline is outside the scope of a unit test. + assertThat(bubbleData.isExpanded).isTrue() + } + + assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() + assertThat(lastUpdate).isNotNull() + assertThat(lastUpdate!!.expandedChanged).isTrue() + assertThat(lastUpdate!!.expanded).isTrue() + } + + @Test + fun tapDifferentBubble_shouldReorder() { + val bubble1 = createAndInflateChatBubble(key = "bubble1") + val bubble2 = createAndInflateChatBubble(key = "bubble2") + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.addBubble(bubble1) + bubbleStackView.addBubble(bubble2) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + + assertThat(bubbleStackView.bubbleCount).isEqualTo(2) + assertThat(bubbleData.bubbles).hasSize(2) + assertThat(bubbleData.selectedBubble).isEqualTo(bubble2) + assertThat(bubble2.iconView).isNotNull() + + var lastUpdate: BubbleData.Update? = null + val semaphore = Semaphore(0) + val listener = + BubbleData.Listener { update -> + lastUpdate = update + semaphore.release() + } + bubbleData.setListener(listener) + + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubble2.iconView!!.performClick() + assertThat(bubbleData.isExpanded).isTrue() + + bubbleStackView.setSelectedBubble(bubble2) + bubbleStackView.isExpanded = true + } + + assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() + assertThat(lastUpdate!!.expanded).isTrue() + assertThat(lastUpdate!!.bubbles.map { it.key }) + .containsExactly("bubble2", "bubble1") + .inOrder() + + // wait for idle to allow the animation to start + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + // wait for the expansion animation to complete before interacting with the bubbles + PhysicsAnimatorTestUtils.blockUntilAnimationsEnd( + AnimatableScaleMatrix.SCALE_X, AnimatableScaleMatrix.SCALE_Y) + + // tap on bubble1 to select it + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubble1.iconView!!.performClick() + } + assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() + assertThat(bubbleData.selectedBubble).isEqualTo(bubble1) + + // tap on bubble1 again to collapse the stack + InstrumentationRegistry.getInstrumentation().runOnMainSync { + // we have to set the selected bubble in the stack view manually because we don't have a + // listener wired up. + bubbleStackView.setSelectedBubble(bubble1) + bubble1.iconView!!.performClick() + } + + assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() + assertThat(bubbleData.selectedBubble).isEqualTo(bubble1) + assertThat(bubbleData.isExpanded).isFalse() + assertThat(lastUpdate!!.orderChanged).isTrue() + assertThat(lastUpdate!!.bubbles.map { it.key }) + .containsExactly("bubble1", "bubble2") + .inOrder() + } + + @EnableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun testCreateStackView_noOverflowContents_noOverflow() { + bubbleStackView = + BubbleStackView( + context, + bubbleStackViewManager, + positioner, + bubbleData, + null, + FloatingContentCoordinator(), + { sysuiProxy }, + shellExecutor + ) + + assertThat(bubbleData.overflowBubbles).isEmpty() + val bubbleOverflow = bubbleData.overflow + // Overflow shouldn't be attached + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isEqualTo(-1) + } + + @EnableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun testCreateStackView_hasOverflowContents_hasOverflow() { + // Add a bubble to the overflow + val bubble1 = createAndInflateChatBubble(key = "bubble1") + bubbleData.notificationEntryUpdated(bubble1, false, false) + bubbleData.dismissBubbleWithKey(bubble1.key, Bubbles.DISMISS_USER_GESTURE) + assertThat(bubbleData.overflowBubbles).isNotEmpty() + + bubbleStackView = + BubbleStackView( + context, + bubbleStackViewManager, + positioner, + bubbleData, + null, + FloatingContentCoordinator(), + { sysuiProxy }, + shellExecutor + ) + val bubbleOverflow = bubbleData.overflow + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) + } + + @DisableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun testCreateStackView_noOverflowContents_hasOverflow() { + bubbleStackView = + BubbleStackView( + context, + bubbleStackViewManager, + positioner, + bubbleData, + null, + FloatingContentCoordinator(), + { sysuiProxy }, + shellExecutor + ) + + assertThat(bubbleData.overflowBubbles).isEmpty() + val bubbleOverflow = bubbleData.overflow + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) + } + + @EnableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun showOverflow_true() { + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.showOverflow(true) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + + val bubbleOverflow = bubbleData.overflow + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) + } + + @EnableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun showOverflow_false() { + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.showOverflow(true) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + val bubbleOverflow = bubbleData.overflow + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) + + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.showOverflow(false) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + + // The overflow should've been removed + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isEqualTo(-1) + } + + @DisableFlags(Flags.FLAG_ENABLE_OPTIONAL_BUBBLE_OVERFLOW) + @Test + fun showOverflow_ignored() { + InstrumentationRegistry.getInstrumentation().runOnMainSync { + bubbleStackView.showOverflow(false) + } + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + + // showOverflow should've been ignored, so the overflow would be attached + val bubbleOverflow = bubbleData.overflow + assertThat(bubbleStackView.getBubbleIndex(bubbleOverflow)).isGreaterThan(-1) + } + + private fun createAndInflateChatBubble(key: String): Bubble { + val icon = Icon.createWithResource(context.resources, R.drawable.bubble_ic_overflow_button) + val shortcutInfo = ShortcutInfo.Builder(context, "fakeId").setIcon(icon).build() + val bubble = + Bubble( + key, + shortcutInfo, + /* desiredHeight= */ 6, + Resources.ID_NULL, + "title", + /* taskId= */ 0, + "locus", + /* isDismissable= */ true, + directExecutor() + ) {} + inflateBubble(bubble) + return bubble + } + + private fun createAndInflateBubble(): Bubble { + val intent = Intent(Intent.ACTION_VIEW).setPackage(context.packageName) + val icon = Icon.createWithResource(context.resources, R.drawable.bubble_ic_overflow_button) + val bubble = Bubble.createAppBubble(intent, UserHandle(1), icon, directExecutor()) + inflateBubble(bubble) + return bubble + } + + private fun inflateBubble(bubble: Bubble) { + bubble.setInflateSynchronously(true) + bubbleData.notificationEntryUpdated(bubble, true, false) + + val semaphore = Semaphore(0) + val callback: BubbleViewInfoTask.Callback = + BubbleViewInfoTask.Callback { semaphore.release() } + bubble.inflate( + callback, + context, + expandedViewManager, + bubbleTaskViewFactory, + positioner, + bubbleStackView, + null, + iconFactory, + false + ) + + assertThat(semaphore.tryAcquire(5, TimeUnit.SECONDS)).isTrue() + assertThat(bubble.isInflated).isTrue() + } + + private class FakeBubbleStackViewManager : BubbleStackViewManager { + + override fun onAllBubblesAnimatedOut() {} + + override fun updateWindowFlagsForBackpress(interceptBack: Boolean) {} + + override fun checkNotificationPanelExpandedState(callback: Consumer<Boolean>) {} + + override fun hideCurrentInputMethod() {} + } + + private class TestShellExecutor : ShellExecutor { + + override fun execute(runnable: Runnable) { + runnable.run() + } + + override fun executeDelayed(r: Runnable, delayMillis: Long) { + r.run() + } + + override fun removeCallbacks(r: Runnable?) {} + + override fun hasCallback(r: Runnable): Boolean = false + } + + private inner class FakeBubbleTaskViewFactory : BubbleTaskViewFactory { + override fun create(): BubbleTaskView { + val taskViewTaskController = mock<TaskViewTaskController>() + val taskView = TaskView(context, taskViewTaskController) + return BubbleTaskView(taskView, shellExecutor) + } + } + + private inner class FakeBubbleExpandedViewManager : BubbleExpandedViewManager { + + override val overflowBubbles: List<Bubble> + get() = emptyList() + + override fun setOverflowListener(listener: BubbleData.Listener) {} + + override fun collapseStack() {} + + override fun updateWindowFlagsForBackpress(intercept: Boolean) {} + + override fun promoteBubbleFromOverflow(bubble: Bubble) {} + + override fun removeBubble(key: String, reason: Int) {} + + override fun dismissBubble(bubble: Bubble, reason: Int) {} + + override fun setAppBubbleTaskId(key: String, taskId: Int) {} + + override fun isStackExpanded(): Boolean = false + + override fun isShowingAsBubbleBar(): Boolean = false + + override fun hideCurrentInputMethod() {} + } +} diff --git a/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt b/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt new file mode 100644 index 0000000000..398fd554f0 --- /dev/null +++ b/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/BubbleTaskViewTest.kt @@ -0,0 +1,92 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.wm.shell.bubbles + +import android.content.ComponentName +import android.content.Context +import androidx.test.core.app.ApplicationProvider +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.filters.SmallTest +import com.android.wm.shell.taskview.TaskView + +import com.google.common.truth.Truth.assertThat +import com.google.common.util.concurrent.MoreExecutors.directExecutor +import org.junit.Before +import org.junit.Test +import org.junit.runner.RunWith +import org.mockito.kotlin.mock +import org.mockito.kotlin.never +import org.mockito.kotlin.verify + +@SmallTest +@RunWith(AndroidJUnit4::class) +class BubbleTaskViewTest { + + private lateinit var bubbleTaskView: BubbleTaskView + private val context = ApplicationProvider.getApplicationContext<Context>() + private lateinit var taskView: TaskView + + @Before + fun setUp() { + taskView = mock() + bubbleTaskView = BubbleTaskView(taskView, directExecutor()) + } + + @Test + fun onTaskCreated_updatesState() { + val componentName = ComponentName(context, "TestClass") + bubbleTaskView.listener.onTaskCreated(123, componentName) + + assertThat(bubbleTaskView.taskId).isEqualTo(123) + assertThat(bubbleTaskView.componentName).isEqualTo(componentName) + assertThat(bubbleTaskView.isCreated).isTrue() + } + + @Test + fun onTaskCreated_callsDelegateListener() { + var actualTaskId = -1 + var actualComponentName: ComponentName? = null + val delegateListener = object : TaskView.Listener { + override fun onTaskCreated(taskId: Int, name: ComponentName) { + actualTaskId = taskId + actualComponentName = name + } + } + bubbleTaskView.delegateListener = delegateListener + + val componentName = ComponentName(context, "TestClass") + bubbleTaskView.listener.onTaskCreated(123, componentName) + + assertThat(actualTaskId).isEqualTo(123) + assertThat(actualComponentName).isEqualTo(componentName) + } + + @Test + fun cleanup_invalidTaskId_doesNotRemoveTask() { + bubbleTaskView.cleanup() + verify(taskView, never()).removeTask() + } + + @Test + fun cleanup_validTaskId_removesTask() { + val componentName = ComponentName(context, "TestClass") + bubbleTaskView.listener.onTaskCreated(123, componentName) + + bubbleTaskView.cleanup() + verify(taskView).removeTask() + } +} diff --git a/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt b/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt new file mode 100644 index 0000000000..ace2c13105 --- /dev/null +++ b/wmshell/multivalentTestsForDeviceless/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinControllerTest.kt @@ -0,0 +1,459 @@ +/* + * Copyright (C) 2024 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.android.wm.shell.bubbles.bar + +import android.content.Context +import android.graphics.Insets +import android.graphics.PointF +import android.graphics.Rect +import android.view.View +import android.view.WindowManager +import android.widget.FrameLayout +import androidx.core.animation.AnimatorTestRule +import androidx.test.core.app.ApplicationProvider +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.filters.SmallTest +import androidx.test.platform.app.InstrumentationRegistry.getInstrumentation +import com.android.internal.protolog.common.ProtoLog +import com.android.wm.shell.R +import com.android.wm.shell.bubbles.BubblePositioner +import com.android.wm.shell.bubbles.DeviceConfig +import com.android.wm.shell.common.bubbles.BaseBubblePinController +import com.android.wm.shell.common.bubbles.BaseBubblePinController.Companion.DROP_TARGET_ALPHA_IN_DURATION +import com.android.wm.shell.common.bubbles.BaseBubblePinController.Companion.DROP_TARGET_ALPHA_OUT_DURATION +import com.android.wm.shell.common.bubbles.BubbleBarLocation +import com.android.wm.shell.common.bubbles.BubbleBarLocation.LEFT +import com.android.wm.shell.common.bubbles.BubbleBarLocation.RIGHT +import com.google.common.truth.Truth.assertThat +import org.junit.After +import org.junit.Before +import org.junit.ClassRule +import org.junit.Test +import org.junit.runner.RunWith + +/** Tests for [BubbleExpandedViewPinController] */ +@SmallTest +@RunWith(AndroidJUnit4::class) +class BubbleExpandedViewPinControllerTest { + + companion object { + @JvmField @ClassRule val animatorTestRule: AnimatorTestRule = AnimatorTestRule() + + const val SCREEN_WIDTH = 2000 + const val SCREEN_HEIGHT = 1000 + + const val BUBBLE_BAR_HEIGHT = 50 + } + + private val context = ApplicationProvider.getApplicationContext<Context>() + private lateinit var positioner: BubblePositioner + private lateinit var container: FrameLayout + + private lateinit var controller: BubbleExpandedViewPinController + private lateinit var testListener: TestLocationChangeListener + + private val dropTargetView: View? + get() = container.findViewById(R.id.bubble_bar_drop_target) + + private val pointOnLeft = PointF(100f, 100f) + private val pointOnRight = PointF(1900f, 500f) + + @Before + fun setUp() { + ProtoLog.REQUIRE_PROTOLOGTOOL = false + container = FrameLayout(context) + val windowManager = context.getSystemService(WindowManager::class.java) + positioner = BubblePositioner(context, windowManager) + positioner.setShowingInBubbleBar(true) + val deviceConfig = + DeviceConfig( + windowBounds = Rect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT), + isLargeScreen = true, + isSmallTablet = false, + isLandscape = true, + isRtl = false, + insets = Insets.of(10, 20, 30, 40) + ) + positioner.update(deviceConfig) + positioner.bubbleBarTopOnScreen = + SCREEN_HEIGHT - deviceConfig.insets.bottom - BUBBLE_BAR_HEIGHT + controller = BubbleExpandedViewPinController(context, container, positioner) + testListener = TestLocationChangeListener() + controller.setListener(testListener) + } + + @After + fun tearDown() { + getInstrumentation().runOnMainSync { controller.onDragEnd() } + waitForAnimateOut() + } + + /** Dragging on same side should not show drop target or trigger location changes */ + @Test + fun drag_stayOnRightSide() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onDragEnd() + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).containsExactly(RIGHT) + } + + /** Dragging on same side should not show drop target or trigger location changes */ + @Test + fun drag_stayOnLeftSide() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onDragEnd() + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).containsExactly(LEFT) + } + + /** Drag crosses to the other side. Show drop target and trigger a location change. */ + @Test + fun drag_rightToLeft() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnLeft()) + assertThat(testListener.locationChanges).containsExactly(LEFT) + assertThat(testListener.locationReleases).isEmpty() + } + + /** Drag crosses to the other side. Show drop target and trigger a location change. */ + @Test + fun drag_leftToRight() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnRight()) + assertThat(testListener.locationChanges).containsExactly(RIGHT) + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drop target does not initially show on the side that the drag starts. Check that it shows up + * after the dragging the view to other side and back to the initial side. + */ + @Test + fun drag_rightToLeftToRight() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + + getInstrumentation().runOnMainSync { controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + + getInstrumentation().runOnMainSync { + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateOut() + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnRight()) + assertThat(testListener.locationChanges).containsExactly(LEFT, RIGHT).inOrder() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drop target does not initially show on the side that the drag starts. Check that it shows up + * after the dragging the view to other side and back to the initial side. + */ + @Test + fun drag_leftToRightToLeft() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + + getInstrumentation().runOnMainSync { + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + + getInstrumentation().runOnMainSync { controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) } + waitForAnimateOut() + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnLeft()) + assertThat(testListener.locationChanges).containsExactly(RIGHT, LEFT).inOrder() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag from right to left, but stay in exclusion rect around the dismiss view. Drop target + * should not show and location change should not trigger. + */ + @Test + fun drag_rightToLeft_inExclusionRect() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + // Exclusion rect is around the bottom center area of the screen + controller.onDragUpdate(SCREEN_WIDTH / 2f - 50, SCREEN_HEIGHT - 100f) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag from left to right, but stay in exclusion rect around the dismiss view. Drop target + * should not show and location change should not trigger. + */ + @Test + fun drag_leftToRight_inExclusionRect() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + // Exclusion rect is around the bottom center area of the screen + controller.onDragUpdate(SCREEN_WIDTH / 2f + 50, SCREEN_HEIGHT - 100f) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag to dismiss target and back to the same side should not cause the drop target to show. + */ + @Test + fun drag_rightToDismissToRight() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onStuckToDismissTarget() + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag to dismiss target and back to the same side should not cause the drop target to show. + */ + @Test + fun drag_leftToDismissToLeft() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onStuckToDismissTarget() + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).isEmpty() + assertThat(testListener.locationReleases).isEmpty() + } + + /** Drag to dismiss target and other side should show drop target on the other side. */ + @Test + fun drag_rightToDismissToLeft() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onStuckToDismissTarget() + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnLeft()) + + assertThat(testListener.locationChanges).containsExactly(LEFT) + assertThat(testListener.locationReleases).isEmpty() + } + + /** Drag to dismiss target and other side should show drop target on the other side. */ + @Test + fun drag_leftToDismissToRight() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onStuckToDismissTarget() + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + assertThat(dropTargetView!!.bounds()).isEqualTo(getExpectedDropTargetBoundsOnRight()) + + assertThat(testListener.locationChanges).containsExactly(RIGHT) + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag to dismiss should trigger a location change to the initial location, if the current + * location is different. And hide the drop target. + */ + @Test + fun drag_rightToLeftToDismiss() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + + getInstrumentation().runOnMainSync { controller.onStuckToDismissTarget() } + waitForAnimateOut() + assertThat(dropTargetView!!.alpha).isEqualTo(0f) + + assertThat(testListener.locationChanges).containsExactly(LEFT, RIGHT).inOrder() + assertThat(testListener.locationReleases).isEmpty() + } + + /** + * Drag to dismiss should trigger a location change to the initial location, if the current + * location is different. And hide the drop target. + */ + @Test + fun drag_leftToRightToDismiss() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + assertThat(dropTargetView!!.alpha).isEqualTo(1f) + getInstrumentation().runOnMainSync { controller.onStuckToDismissTarget() } + waitForAnimateOut() + assertThat(dropTargetView!!.alpha).isEqualTo(0f) + assertThat(testListener.locationChanges).containsExactly(RIGHT, LEFT).inOrder() + assertThat(testListener.locationReleases).isEmpty() + } + + /** Finishing drag should remove drop target and send location update. */ + @Test + fun drag_rightToLeftRelease() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = false) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + + getInstrumentation().runOnMainSync { controller.onDragEnd() } + waitForAnimateOut() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).containsExactly(LEFT) + assertThat(testListener.locationReleases).containsExactly(LEFT) + } + + /** Finishing drag should remove drop target and send location update. */ + @Test + fun drag_leftToRightRelease() { + getInstrumentation().runOnMainSync { + controller.onDragStart(initialLocationOnLeft = true) + controller.onDragUpdate(pointOnLeft.x, pointOnLeft.y) + controller.onDragUpdate(pointOnRight.x, pointOnRight.y) + } + waitForAnimateIn() + assertThat(dropTargetView).isNotNull() + + getInstrumentation().runOnMainSync { controller.onDragEnd() } + waitForAnimateOut() + assertThat(dropTargetView).isNull() + assertThat(testListener.locationChanges).containsExactly(RIGHT) + assertThat(testListener.locationReleases).containsExactly(RIGHT) + } + + private fun getExpectedDropTargetBoundsOnLeft(): Rect = + Rect().also { + positioner.getBubbleBarExpandedViewBounds( + true /* onLeft */, + false /* isOverflowExpanded */, + it + ) + } + + private fun getExpectedDropTargetBoundsOnRight(): Rect = + Rect().also { + positioner.getBubbleBarExpandedViewBounds( + false /* onLeft */, + false /* isOverflowExpanded */, + it + ) + } + + private fun waitForAnimateIn() { + // Advance animator for on-device test + getInstrumentation().runOnMainSync { + animatorTestRule.advanceTimeBy(DROP_TARGET_ALPHA_IN_DURATION) + } + } + + private fun waitForAnimateOut() { + // Advance animator for on-device test + getInstrumentation().runOnMainSync { + animatorTestRule.advanceTimeBy(DROP_TARGET_ALPHA_OUT_DURATION) + } + } + + private fun View.bounds(): Rect { + return Rect(0, 0, layoutParams.width, layoutParams.height).also { rect -> + rect.offsetTo(x.toInt(), y.toInt()) + } + } + + internal class TestLocationChangeListener : BaseBubblePinController.LocationChangeListener { + val locationChanges = mutableListOf<BubbleBarLocation>() + val locationReleases = mutableListOf<BubbleBarLocation>() + override fun onChange(location: BubbleBarLocation) { + locationChanges.add(location) + } + + override fun onRelease(location: BubbleBarLocation) { + locationReleases.add(location) + } + } +} diff --git a/wmshell/res/drawable/bubble_ic_create_bubble.xml b/wmshell/res/drawable/bubble_ic_create_bubble.xml index c9de8b81c0..920671a242 100644 --- a/wmshell/res/drawable/bubble_ic_create_bubble.xml +++ b/wmshell/res/drawable/bubble_ic_create_bubble.xml @@ -15,11 +15,11 @@ ~ limitations under the License. --> <vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:viewportWidth="960" - android:viewportHeight="960"> + android:width="20dp" + android:height="20dp" + android:viewportWidth="24" + android:viewportHeight="24"> <path - android:pathData="m464,480 l-90,-90q-11,-11 -11.5,-27.5T374,334q11,-11 28,-11t28,11l90,89v-49q0,-17 11.5,-28.5T560,334q17,0 28.5,11.5T600,374v146q0,17 -11.5,28.5T560,560L414,560q-17,0 -28.5,-11.5T374,520q0,-17 11.5,-28.5T414,480h50ZM760,800q-50,0 -85,-35t-35,-85q0,-50 35,-85t85,-35q50,0 85,35t35,85q0,50 -35,85t-85,35ZM160,800q-33,0 -56.5,-23.5T80,720v-480q0,-33 23.5,-56.5T160,160h640q33,0 56.5,23.5T880,240v200q0,17 -11.5,28.5T840,480q-17,0 -28.5,-11.5T800,440v-200L160,240v480h360q17,0 28.5,11.5T560,760q0,17 -11.5,28.5T520,800L160,800Z" - android:fillColor="#FF000000"/> + android:fillColor="#FF000000" + android:pathData="M23,5v8h-2V5H3v14h10v2v0H3c-1.1,0 -2,-0.9 -2,-2V5c0,-1.1 0.9,-2 2,-2h18C22.1,3 23,3.9 23,5zM10,8v2.59L5.71,6.29L4.29,7.71L8.59,12H6v2h6V8H10zM19,15c-1.66,0 -3,1.34 -3,3s1.34,3 3,3s3,-1.34 3,-3S20.66,15 19,15z"/> </vector> diff --git a/wmshell/res/drawable/bubble_ic_stop_bubble.xml b/wmshell/res/drawable/bubble_ic_stop_bubble.xml index b06112266d..8609576ce7 100644 --- a/wmshell/res/drawable/bubble_ic_stop_bubble.xml +++ b/wmshell/res/drawable/bubble_ic_stop_bubble.xml @@ -15,11 +15,11 @@ ~ limitations under the License. --> <vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:viewportWidth="960" - android:viewportHeight="960"> + android:width="20dp" + android:height="20dp" + android:viewportWidth="24" + android:viewportHeight="24"> <path - android:pathData="M160,800q-33,0 -56.5,-23.5T80,720v-480q0,-33 23.5,-56.5T160,160h640q33,0 56.5,23.5T880,240v200q0,17 -11.5,28.5T840,480q-17,0 -28.5,-11.5T800,440v-200L160,240v480h360q17,0 28.5,11.5T560,760q0,17 -11.5,28.5T520,800L160,800ZM496,400 L586,490q11,11 11,27.5T586,546q-12,12 -28.5,12T529,546l-89,-89v49q0,17 -11.5,28.5T400,546q-17,0 -28.5,-11.5T360,506v-146q0,-17 11.5,-28.5T400,320h146q17,0 28.5,11.5T586,360q0,17 -11.5,28.5T546,400h-50ZM760,800q-50,0 -85,-35t-35,-85q0,-50 35,-85t85,-35q50,0 85,35t35,85q0,50 -35,85t-85,35Z" - android:fillColor="#FF000000"/> + android:fillColor="#FF000000" + android:pathData="M11.29,14.71L7,10.41V13H5V7h6v2H8.41l4.29,4.29L11.29,14.71zM21,3H3C1.9,3 1,3.9 1,5v14c0,1.1 0.9,2 2,2h10v0v-2H3V5h18v8h2V5C23,3.9 22.1,3 21,3zM19,15c-1.66,0 -3,1.34 -3,3s1.34,3 3,3s3,-1.34 3,-3S20.66,15 19,15z"/> </vector> diff --git a/wmshell/res/layout/desktop_mode_app_header.xml b/wmshell/res/layout/desktop_mode_app_header.xml index 04681a8ba9..b898e4b06c 100644 --- a/wmshell/res/layout/desktop_mode_app_header.xml +++ b/wmshell/res/layout/desktop_mode_app_header.xml @@ -60,20 +60,6 @@ android:focusable="false" tools:text="Gmail"/> - <ImageView - android:id="@+id/expand_menu_error" - android:src="@drawable/expand_menu_error" - android:layout_width="@dimen/desktop_mode_header_expand_menu_error_image_width" - android:layout_height="@dimen/desktop_mode_header_expand_menu_error_image_width" - android:layout_gravity="center_vertical" - android:layout_marginStart="@dimen/desktop_mode_header_expand_menu_error_image_margin" - android:clickable="false" - android:focusable="false" - android:screenReaderFocusable="false" - android:importantForAccessibility="no" - android:contentDescription="@null" - android:scaleType="centerCrop"/> - <ImageButton android:id="@+id/expand_menu_button" android:layout_width="16dp" diff --git a/wmshell/res/layout/desktop_mode_window_decor_handle_menu.xml b/wmshell/res/layout/desktop_mode_window_decor_handle_menu.xml index 3a16c2951a..5b67fd22cd 100644 --- a/wmshell/res/layout/desktop_mode_window_decor_handle_menu.xml +++ b/wmshell/res/layout/desktop_mode_window_decor_handle_menu.xml @@ -81,7 +81,6 @@ style="@style/DesktopModeHandleMenuWindowingButton"/> <Space - android:id="@+id/split_screen_button_space" android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1"/> @@ -165,33 +164,12 @@ android:src="@drawable/desktop_mode_ic_handle_menu_change_aspect_ratio" style="@style/DesktopModeHandleMenuActionButton"/> - <LinearLayout - android:id="@+id/handle_menu_restart_pill" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:orientation="horizontal"> - - <com.android.wm.shell.windowdecor.HandleMenuActionButton - android:id="@+id/handle_menu_restart_button" - android:contentDescription="@string/handle_menu_restart_text" - android:text="@string/handle_menu_restart_text" - android:src="@drawable/desktop_mode_ic_handle_menu_restart" - style="@style/DesktopModeHandleMenuActionButton" - android:layout_width="0dp" - android:layout_weight="1"/> - - <ImageView - android:id="@+id/restart_menu_error_icon" - android:contentDescription="@string/handle_menu_error_icon_text" - android:layout_gravity="end|center_vertical" - android:layout_width="20dp" - android:layout_height="20dp" - android:layout_marginEnd="16dp" - android:src="@drawable/expand_menu_error" - android:clickable="false" - android:focusable="false" - android:scaleType="centerCrop"/> - </LinearLayout> + <com.android.wm.shell.windowdecor.HandleMenuActionButton + android:id="@+id/handle_menu_restart_button" + android:contentDescription="@string/handle_menu_restart_text" + android:text="@string/handle_menu_restart_text" + android:src="@drawable/desktop_mode_ic_handle_menu_restart" + style="@style/DesktopModeHandleMenuActionButton"/> </LinearLayout> <LinearLayout diff --git a/wmshell/res/layout/desktop_mode_window_decor_maximize_menu.xml b/wmshell/res/layout/desktop_mode_window_decor_maximize_menu.xml index bd876f29e5..b61dc9b066 100644 --- a/wmshell/res/layout/desktop_mode_window_decor_maximize_menu.xml +++ b/wmshell/res/layout/desktop_mode_window_decor_maximize_menu.xml @@ -14,8 +14,7 @@ ~ See the License for the specific language governing permissions and ~ limitations under the License. --> -<com.android.wm.shell.windowdecor.CaptionMenuLayout - xmlns:android="http://schemas.android.com/apk/res/android" +<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:androidprv="http://schemas.android.com/apk/prv/res/android" android:id="@+id/maximize_menu" android:layout_width="wrap_content" @@ -159,4 +158,12 @@ android:alpha="0"/> </LinearLayout> </LinearLayout> -</com.android.wm.shell.windowdecor.CaptionMenuLayout> + + <!-- Empty view intentionally placed in front of everything else and matching the menu size + used to monitor input events over the entire menu. --> + <View + android:id="@+id/maximize_menu_overlay" + android:layout_width="match_parent" + android:layout_height="match_parent"/> +</FrameLayout> + diff --git a/wmshell/res/layout/letterbox_restart_dialog_layout.xml b/wmshell/res/layout/letterbox_restart_dialog_layout.xml index 33af38bbf6..462a49ccb1 100644 --- a/wmshell/res/layout/letterbox_restart_dialog_layout.xml +++ b/wmshell/res/layout/letterbox_restart_dialog_layout.xml @@ -50,7 +50,6 @@ android:orientation="vertical"> <ImageView - android:id="@+id/letterbox_restart_dialog_title_icon" android:importantForAccessibility="no" android:layout_width="@dimen/letterbox_restart_dialog_title_icon_width" android:layout_height="@dimen/letterbox_restart_dialog_title_icon_height" diff --git a/wmshell/res/layout/split_divider.xml b/wmshell/res/layout/split_divider.xml index 47ee674ff4..db35c8c574 100644 --- a/wmshell/res/layout/split_divider.xml +++ b/wmshell/res/layout/split_divider.xml @@ -24,14 +24,6 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - <com.android.wm.shell.common.split.DividerTooltip - android:id="@+id/docked_divider_tooltip" - android:layout_height="wrap_content" - android:layout_width="wrap_content" - android:layout_gravity="center" - android:gravity="center" - android:visibility="gone" /> - <com.android.wm.shell.common.split.DividerHandleView android:id="@+id/docked_divider_handle" android:layout_height="match_parent" diff --git a/wmshell/res/values-af/strings.xml b/wmshell/res/values-af/strings.xml index 0271c926e5..0eee541db5 100644 --- a/wmshell/res/values-af/strings.xml +++ b/wmshell/res/values-af/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Hierdie app kan net in 1 venster oopgemaak word"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"App sal dalk nie op \'n sekondêre skerm werk nie."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"App steun nie begin op sekondêre skerms nie."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"App steun nie borrel nie"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Skermverdeler"</string> <string name="divider_title" msgid="1963391955593749442">"Skermverdeler"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Volskerm links"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Bestuur vensters"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Verander aspekverhouding"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimeer aansig"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Fout-ikoon"</string> <string name="close_text" msgid="4986518933445178928">"Maak toe"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Maak kieslys toe"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (werkskermvensters)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maksimeer skerm"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Verander grootte"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"App kan nie hierheen geskuif word nie"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Maak tans nuwe appvenster oop"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Maak tans appvenster toe"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimeer tans appvenster"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (gefokus)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (nie gefokus nie)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Meesleurend"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Stel terug"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimeer"</string> diff --git a/wmshell/res/values-am/strings.xml b/wmshell/res/values-am/strings.xml index df65c5592c..97aa47f3e1 100644 --- a/wmshell/res/values-am/strings.xml +++ b/wmshell/res/values-am/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"ይህ መተግበሪያ መከፈት የሚችለው በ1 መስኮት ብቻ ነው"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"መተግበሪያ በሁለተኛ ማሳያ ላይ ላይሠራ ይችላል።"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"መተግበሪያ በሁለተኛ ማሳያዎች ላይ ማስጀመርን አይደግፍም።"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"መተግበሪያ ዓረፋን አይደግፍም"</string> <string name="accessibility_divider" msgid="6407584574218956849">"የተከፈለ የማያ ገፅ ከፋይ"</string> <string name="divider_title" msgid="1963391955593749442">"የተከፈለ የማያ ገፅ ከፋይ"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"የግራ ሙሉ ማያ ገፅ"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"መስኮቶችን አስተዳድር"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"ምጥጥነ ገፅታ ለውጥ"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"ዕይታን አትባ"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"የስህተት አዶ"</string> <string name="close_text" msgid="4986518933445178928">"ዝጋ"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"ምናሌ ዝጋ"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ዴስክቶፕ መስኮት)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"የማያ ገጹ መጠን አሳድግ"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"መጠን ቀይር"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"መተግበሪያ ወደዚህ መንቀሳቀስ አይችልም"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"አዲስ የመተግበሪያ መስኮት በመክፈት ላይ"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"የመተግበሪያ መስኮትን በመዝጋት ላይ"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"የመተግበሪያ መስኮትን በማሳነስ ላይ"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ትኩረት የተደረገበት)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ትኩረት ያልተደረገበት)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"አስማጭ"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"ወደነበረበት መልስ"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"አሳድግ"</string> diff --git a/wmshell/res/values-ar/strings.xml b/wmshell/res/values-ar/strings.xml index 93a69b1895..1de9ce0199 100644 --- a/wmshell/res/values-ar/strings.xml +++ b/wmshell/res/values-ar/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"لا يمكن فتح هذا التطبيق إلا في نافذة واحدة."</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"قد لا يعمل التطبيق على شاشة عرض ثانوية."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"لا يمكن تشغيل التطبيق على شاشات عرض ثانوية."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"لا يتيح التطبيق إظهار المهام على شكل فقاعة"</string> <string name="accessibility_divider" msgid="6407584574218956849">"أداة تقسيم الشاشة"</string> <string name="divider_title" msgid="1963391955593749442">"أداة تقسيم الشاشة"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"عرض النافذة اليسرى بملء الشاشة"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"إدارة النوافذ"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"تغيير نسبة العرض إلى الارتفاع"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"تحسين طريقة العرض"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"رمز الخطأ"</string> <string name="close_text" msgid="4986518933445178928">"إغلاق"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"إغلاق القائمة"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"‫<xliff:g id="APP_NAME">%1$s</xliff:g> (عرض المحتوى في النافذة الحالية على سطح المكتب)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"تكبير الشاشة إلى أقصى حدّ"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"تغيير الحجم"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"لا يمكن نقل التطبيق إلى هنا"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"جارٍ فتح نافذة تطبيق جديدة"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"جارٍ إغلاق نافذة التطبيق"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"جارٍ تصغير نافذة التطبيق"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"‫\"<xliff:g id="APP_NAME">%1$s</xliff:g>\" (تم التركيز عليه)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"‫<xliff:g id="APP_NAME">%1$s</xliff:g> (غير مركّز عليه)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"مجسَّم"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"استعادة"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"تكبير"</string> diff --git a/wmshell/res/values-as/strings.xml b/wmshell/res/values-as/strings.xml index 297bc7253a..96f2aaaf1e 100644 --- a/wmshell/res/values-as/strings.xml +++ b/wmshell/res/values-as/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"এই এপ্‌টো কেৱল ১ খন ৱিণ্ড’ত খুলিব পাৰি"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"গৌণ ডিছপ্লেত এপে সঠিকভাৱে কাম নকৰিব পাৰে।"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"গৌণ ডিছপ্লেত এপ্ লঞ্চ কৰিব নোৱাৰি।"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"এপে বাবল সমৰ্থন নকৰে"</string> <string name="accessibility_divider" msgid="6407584574218956849">"স্প্লিট স্ক্ৰীনৰ বিভাজক"</string> <string name="divider_title" msgid="1963391955593749442">"স্প্লিট স্ক্ৰীনৰ বিভাজক"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"বাওঁফালৰ স্ক্ৰীনখন সম্পূৰ্ণ স্ক্ৰীন কৰক"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"ৱিণ্ড’ পৰিচালনা কৰক"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"আকাৰৰ অনুপাত সলনি কৰক"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"ভিউ অপ্টিমাইজ কৰক"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"আসোঁৱাহৰ চিহ্ন"</string> <string name="close_text" msgid="4986518933445178928">"বন্ধ কৰক"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"মেনু বন্ধ কৰক"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ডেস্কটপ ৱিণ্ড’ৱিং)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"স্ক্ৰীন মেক্সিমাইজ কৰক"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"আকাৰ সলনি কৰক"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ইয়ালৈ এপ্‌টো আনিব নোৱাৰি"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"নতুন এপৰ ৱিণ্ড’ খুলি থকা হৈছে"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"এপৰ ৱিণ্ড’ বন্ধ কৰি থকা হৈছে"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"এপৰ ৱিণ্ড’ মিনিমাইজ কৰা হৈছে"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ফ’কাছ কৰা)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ফ’কাছ কৰা নাই)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ইমাৰ্ছিভ"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"পুনঃস্থাপন কৰক"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"মেক্সিমাইজ কৰক"</string> diff --git a/wmshell/res/values-az/strings.xml b/wmshell/res/values-az/strings.xml index a1a3288615..72736edd77 100644 --- a/wmshell/res/values-az/strings.xml +++ b/wmshell/res/values-az/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Bu tətbiq yalnız 1 pəncərədə açıla bilər"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Tətbiq ikinci ekranda işləməyə bilər."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Tətbiq ikinci ekranda başlamağı dəstəkləmir."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Tətbiq qabarcığı dəstəkləmir"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Bölünmüş ekran ayırıcısı"</string> <string name="divider_title" msgid="1963391955593749442">"Bölünmüş ekran ayırıcısı"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Sol tam ekran"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Pəncərələri idarə edin"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Tərəflər nisbətini dəyişin"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Görünüşü optimallaşdırın"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Xəta ikonası"</string> <string name="close_text" msgid="4986518933445178928">"Bağlayın"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Menyunu bağlayın"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Masaüstü pəncərə rejimi)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Ekranı maksimum böyüdün"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Ölçüsünü dəyişin"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Tətbiqi bura köçürmək mümkün deyil"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Yeni tətbiq pəncərəsi açılır"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Tətbiq pəncərəsi bağlanır"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Tətbiq pəncərəsi kiçildilir"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Fokuslanmış)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Fokuslanmamış)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"İmmersiv"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Bərpa edin"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Böyüdün"</string> diff --git a/wmshell/res/values-b+sr+Latn/strings.xml b/wmshell/res/values-b+sr+Latn/strings.xml index 9ef65c942a..ac1be357d9 100644 --- a/wmshell/res/values-b+sr+Latn/strings.xml +++ b/wmshell/res/values-b+sr+Latn/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Ova aplikacija može da se otvori samo u jednom prozoru"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Aplikacija možda neće funkcionisati na sekundarnom ekranu."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplikacija ne podržava pokretanje na sekundarnim ekranima."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplikacija ne podržava oblačić"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Razdelnik podeljenog ekrana"</string> <string name="divider_title" msgid="1963391955593749442">"Razdelnik podeljenog ekrana"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Režim celog ekrana za levi ekran"</string> @@ -78,14 +77,14 @@ <string name="bubble_dismiss_text" msgid="8816558050659478158">"Odbaci oblačić"</string> <string name="bubble_fullscreen_text" msgid="1006758103218086231">"Prebaci na ceo ekran"</string> <string name="bubbles_dont_bubble_conversation" msgid="310000317885712693">"Ne koristi oblačiće za konverzaciju"</string> - <string name="bubbles_user_education_title" msgid="2112319053732691899">"Četujte u oblačićima"</string> + <string name="bubbles_user_education_title" msgid="2112319053732691899">"Ćaskajte u oblačićima"</string> <string name="bubbles_user_education_description" msgid="4215862563054175407">"Nove konverzacije se prikazuju kao plutajuće ikone ili oblačići. Dodirnite da biste otvorili oblačić. Prevucite da biste ga premestili."</string> <string name="bubbles_user_education_manage_title" msgid="7042699946735628035">"Kontrolišite oblačiće u bilo kom trenutku"</string> <string name="bubbles_user_education_manage" msgid="3460756219946517198">"Dodirnite Upravljajte da biste isključili oblačiće iz ove aplikacije"</string> <string name="bubbles_user_education_got_it" msgid="3382046149225428296">"Važi"</string> <string name="bubble_overflow_empty_title" msgid="2397251267073294968">"Nema nedavnih oblačića"</string> <string name="bubble_overflow_empty_subtitle" msgid="2627417924958633713">"Ovde se prikazuju nedavni i odbačeni oblačići"</string> - <string name="bubble_bar_education_stack_title" msgid="2486903590422497245">"Četujte u oblačićima"</string> + <string name="bubble_bar_education_stack_title" msgid="2486903590422497245">"Ćaskajte u oblačićima"</string> <string name="bubble_bar_education_stack_text" msgid="2446934610817409820">"Nove konverzacije se pojavljuju kao ikone u donjem uglu ekrana. Dodirnite da biste ih proširili ili prevucite da biste ih odbacili."</string> <string name="bubble_bar_education_manage_title" msgid="6148404487810835924">"Kontrolišite oblačiće u svakom trenutku"</string> <string name="bubble_bar_education_manage_text" msgid="3199732148641842038">"Dodirnite ovde i odredite koje aplikacije i konverzacije mogu da imaju oblačić"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Upravljajte prozorima"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Promeni razmeru"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimizujte prikaz"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ikona greške"</string> <string name="close_text" msgid="4986518933445178928">"Zatvorite"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Zatvorite meni"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (prikaz računarskih prozora)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Povećaj ekran"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Prilagodi"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Aplikacija ne može da se premesti ovde"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Otvara se novi prozor aplikacije"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Zatvara se prozor aplikacije"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Umanjuje se prozor aplikacije"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fokusirano)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (nije fokusirano)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Imerzivno"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Vrati"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Uvećaj"</string> diff --git a/wmshell/res/values-be/strings.xml b/wmshell/res/values-be/strings.xml index db2d164c95..2a2bd9683e 100644 --- a/wmshell/res/values-be/strings.xml +++ b/wmshell/res/values-be/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Гэту праграму можна адкрыць толькі ў адным акне"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Праграма можа не працаваць на дадатковых экранах."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Праграма не падтрымлівае запуск на дадатковых экранах."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"У праграме не падтрымліваецца ўсплывальны чат"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Раздзяляльнік падзеленага экрана"</string> <string name="divider_title" msgid="1963391955593749442">"Раздзяляльнік падзеленага экрана"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Левы экран – поўнаэкранны рэжым"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Кіраваць вокнамі"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Змяніць суадносіны бакоў"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Аптымізаваць прагляд"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Значок памылкі"</string> <string name="close_text" msgid="4986518933445178928">"Закрыць"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Закрыць меню"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (рэжым вокнаў працоўнага стала)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Разгарнуць на ўвесь экран"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Змяніць памер"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Нельга перамясціць сюды праграму"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Адкрываецца новае акно праграмы"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Закрываецца акно праграмы"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Згортваецца акно праграмы"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (у фокусе)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (не ў фокусе)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"З эфектам прысутнасці"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Аднавіць"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Разгарнуць"</string> diff --git a/wmshell/res/values-bg/strings.xml b/wmshell/res/values-bg/strings.xml index dcd55d7248..f5a93d0eb5 100644 --- a/wmshell/res/values-bg/strings.xml +++ b/wmshell/res/values-bg/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Това приложение може да се отвори само в 1 прозорец"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Възможно е приложението да не работи на алтернативни дисплеи."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Приложението не поддържа използването на алтернативни дисплеи."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Приложението не поддържа балончета"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Разделител в режима за разделен екран"</string> <string name="divider_title" msgid="1963391955593749442">"Разделител в режима за разделен екран"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Ляв екран: Показване на цял екран"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Управление на прозорците"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Промяна на съотношението"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Оптимизиране на изгледа"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Икона за грешка"</string> <string name="close_text" msgid="4986518933445178928">"Затваряне"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Затваряне на менюто"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (режим за настолни компютри)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Увеличаване на екрана"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Нов размер"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Приложението не може да бъде преместено тук"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Отваря се нов прозорец на приложението"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Прозорецът на приложението се затваря"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Прозорецът на приложението се намалява"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (притежава фокуса)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (не притежава фокуса)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Реалистично"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Възстановяване"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Увеличаване"</string> diff --git a/wmshell/res/values-bn/strings.xml b/wmshell/res/values-bn/strings.xml index a031c24d88..2cc109c8a0 100644 --- a/wmshell/res/values-bn/strings.xml +++ b/wmshell/res/values-bn/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"এই অ্যাপটি শুধুমাত্র ১টি উইন্ডোতে খোলা যেতে পারে"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"সেকেন্ডারি ডিসপ্লেতে অ্যাপটি কাজ নাও করতে পারে।"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"সেকেন্ডারি ডিসপ্লেতে অ্যাপ লঞ্চ করা যাবে না।"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"অ্যাপে বাবল কাজ করে না"</string> <string name="accessibility_divider" msgid="6407584574218956849">"স্প্লিট স্ক্রিন বিভাজক"</string> <string name="divider_title" msgid="1963391955593749442">"স্প্লিট স্ক্রিন বিভাজক"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"বাঁ দিকের অংশ নিয়ে পূর্ণ স্ক্রিন"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"উইন্ডো ম্যানেজ করুন"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"অ্যাস্পেক্ট রেশিও পরিবর্তন করুন"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"ভিউ অপ্টিমাইজ করুন"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"সমস্যার আইকন"</string> <string name="close_text" msgid="4986518933445178928">"বন্ধ করুন"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"\'মেনু\' বন্ধ করুন"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ডেস্কটপ উইন্ডোইং)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"স্ক্রিন বড় করুন"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"ছোট বড় করুন"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"অ্যাপটি এখানে সরানো যাবে না"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"নতুন অ্যাপ উইন্ডো খোলা হচ্ছে"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"অ্যাপের উইন্ডো বন্ধ করা হচ্ছে"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"অ্যাপ উইন্ডো ছোট করা হয়েছে"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ফোকাস করা হয়েছে)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ফোকাস করা নেই)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ইমারসিভ"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"ফিরিয়ে আনুন"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"বড় করুন"</string> diff --git a/wmshell/res/values-bs/strings.xml b/wmshell/res/values-bs/strings.xml index 9bce493380..34b23ba9e1 100644 --- a/wmshell/res/values-bs/strings.xml +++ b/wmshell/res/values-bs/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Ova aplikacija se može otvoriti samo u 1 prozoru"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Aplikacija možda neće raditi na sekundarnom ekranu."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplikacija ne podržava pokretanje na sekundarnim ekranima."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplikacija ne podržava oblačić"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Razdjelnik podijeljenog ekrana"</string> <string name="divider_title" msgid="1963391955593749442">"Razdjelnik podijeljenog ekrana"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Lijevo cijeli ekran"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Upravljanje prozorima"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Promjena formata slike"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimiziranje prikaza"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ikona greške"</string> <string name="close_text" msgid="4986518933445178928">"Zatvaranje"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Zatvaranje menija"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (računarski prikaz prozora)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maksimiziraj ekran"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Promijeni veličinu"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Ne možete premjestiti aplikaciju ovdje"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Otvaranje novog prozora aplikacije"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Zatvaranje prozora aplikacije"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimiziranje prozora aplikacije"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fokusirano)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (nije fokusirano)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Uvjerljivo"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Vraćanje"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimiziraj"</string> diff --git a/wmshell/res/values-ca/strings.xml b/wmshell/res/values-ca/strings.xml index cfa93554d3..ccb12b31af 100644 --- a/wmshell/res/values-ca/strings.xml +++ b/wmshell/res/values-ca/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Aquesta aplicació només pot obrir-se en 1 finestra"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"És possible que l\'aplicació no funcioni en una pantalla secundària."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"L\'aplicació no es pot obrir en pantalles secundàries."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"L\'aplicació no admet la bombolla"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Separador de pantalla dividida"</string> <string name="divider_title" msgid="1963391955593749442">"Separador de pantalla dividida"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Pantalla esquerra completa"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Gestiona les finestres"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Canvia la relació d\'aspecte"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Visualització d\'Optimize"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Icona d\'error"</string> <string name="close_text" msgid="4986518933445178928">"Tanca"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Tanca el menú"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (sistema de finestres de tipus escriptori)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximitza la pantalla"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Canvia la mida"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"L\'aplicació no es pot moure aquí"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"S\'està obrint una finestra nova de l\'aplicació"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"S\'està tancant la finestra de l\'aplicació"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"S\'està minimitzant la finestra de l\'aplicació"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (té el focus)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (no té el focus)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersiu"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restaura"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximitza"</string> diff --git a/wmshell/res/values-cs/strings.xml b/wmshell/res/values-cs/strings.xml index 4f1ac77539..9d9d127284 100644 --- a/wmshell/res/values-cs/strings.xml +++ b/wmshell/res/values-cs/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Tuto aplikaci lze otevřít jen v jednom okně"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Aplikace na sekundárním displeji nemusí fungovat."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplikace nepodporuje spuštění na sekundárních displejích."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplikace bublinu nepodporuje"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Čára rozdělující obrazovku"</string> <string name="divider_title" msgid="1963391955593749442">"Čára rozdělující obrazovku"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Levá část na celou obrazovku"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Spravovat okna"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Změnit poměr stran"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimalizovat zobrazení"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ikona chyby"</string> <string name="close_text" msgid="4986518933445178928">"Zavřít"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Zavřít nabídku"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (okna na ploše)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximalizovat obrazovku"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Změnit velikost"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Aplikaci sem nelze přesunout"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Otevírání nového okna aplikace"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Zavírání okna aplikace"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimalizace okna aplikace"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (označeno)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (neoznačeno)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Pohlcující"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Obnovit"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximalizovat"</string> diff --git a/wmshell/res/values-da/strings.xml b/wmshell/res/values-da/strings.xml index 07ae6e9b51..17cb246033 100644 --- a/wmshell/res/values-da/strings.xml +++ b/wmshell/res/values-da/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Denne app kan kun åbnes i 1 vindue"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Appen fungerer muligvis ikke på sekundære skærme."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Appen kan ikke åbnes på sekundære skærme."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Appen understøtter ikke bobler"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Adskiller til opdelt skærm"</string> <string name="divider_title" msgid="1963391955593749442">"Adskiller til opdelt skærm"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Vis venstre del i fuld skærm"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Administrer vinduer"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Skift billedformat"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimer visning"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Fejlikon"</string> <string name="close_text" msgid="4986518933445178928">"Luk"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Luk menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (vinduer på skrivebordet)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maksimér skærm"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Tilpas størrelse"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Apps kan ikke flyttes hertil"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Et nyt appvindue er åbnet"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Lukker appvindue"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Appvinduet er minimeret"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fremhævet)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ikke fremhævet)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Opslugende"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Gendan"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimér"</string> diff --git a/wmshell/res/values-de/strings.xml b/wmshell/res/values-de/strings.xml index 9a4b4529f2..c84d01437e 100644 --- a/wmshell/res/values-de/strings.xml +++ b/wmshell/res/values-de/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Diese App kann nur in einem einzigen Fenster geöffnet werden"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Die App funktioniert auf einem sekundären Display möglicherweise nicht."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Die App unterstützt den Start auf sekundären Displays nicht."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"App unterstützt keine Bubbles"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Bildschirmteiler"</string> <string name="divider_title" msgid="1963391955593749442">"Bildschirmteiler"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Vollbild links"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Fenster verwalten"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Seitenverhältnis ändern"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Ansicht optimieren"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Fehlersymbol"</string> <string name="close_text" msgid="4986518933445178928">"Schließen"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Menü schließen"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Desktop-Freiform-Fenster)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Bildschirm maximieren"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Größe ändern"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Die App kann nicht hierher verschoben werden"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Neues App-Fenster wird geöffnet"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"App-Fenster wird geschlossen"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"App-Fenster wird minimiert"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Fokussiert)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Nicht fokussiert)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersiv"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Wiederherstellen"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximieren"</string> diff --git a/wmshell/res/values-el/strings.xml b/wmshell/res/values-el/strings.xml index a85b1ceed1..9faf44bcc1 100644 --- a/wmshell/res/values-el/strings.xml +++ b/wmshell/res/values-el/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Αυτή η εφαρμογή μπορεί να ανοίξει μόνο σε ένα παράθυρο"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Η εφαρμογή ίσως να μην λειτουργήσει σε δευτερεύουσα οθόνη."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Η εφαρμογή δεν υποστηρίζει την εκκίνηση σε δευτερεύουσες οθόνες."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Η εφαρμογή δεν υποστηρίζει συννεφάκια"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Διαχωριστικό οθόνης"</string> <string name="divider_title" msgid="1963391955593749442">"Διαχωριστικό οθόνης"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Αριστερή πλήρης οθόνη"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Διαχείριση παραθύρων"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Αλλαγή λόγου διαστάσεων"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Βελτιστοποίηση προβολής"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Εικονίδιο σφάλματος"</string> <string name="close_text" msgid="4986518933445178928">"Κλείσιμο"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Κλείσιμο μενού"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Προσαρμογή σε παράθυρο στην επιφάνεια εργασίας)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Μεγιστοποίηση οθόνης"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Αλλαγή μεγέθους"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Δεν είναι δυνατή η μετακίνηση της εφαρμογής εδώ"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Άνοιγμα νέου παραθύρου εφαρμογής"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Κλείσιμο παραθύρου εφαρμογής"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Ελαχιστοποίηση παραθύρου εφαρμογής"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Με εστίαση)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Χωρίς εστίαση)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Καθηλωτικό"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Επαναφορά"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Μεγιστοποίηση"</string> diff --git a/wmshell/res/values-en-rAU/strings.xml b/wmshell/res/values-en-rAU/strings.xml index 8a19f39182..dcc055449f 100644 --- a/wmshell/res/values-en-rAU/strings.xml +++ b/wmshell/res/values-en-rAU/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"This app can only be opened in one window"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"App may not work on a secondary display."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"App does not support launch on secondary displays."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"App does not support bubble"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Split screen divider"</string> <string name="divider_title" msgid="1963391955593749442">"Split screen divider"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Left full screen"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Manage windows"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Change aspect ratio"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimise view"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Error icon"</string> <string name="close_text" msgid="4986518933445178928">"Close"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Close menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Desktop windowing)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximise screen"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Resize"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"App can\'t be moved here"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Opening new app window"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Closing app window"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimising app window"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (focused)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (not focused)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersive"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restore"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximise"</string> diff --git a/wmshell/res/values-en-rCA/strings.xml b/wmshell/res/values-en-rCA/strings.xml index 094203d8cb..3e2de7cd3b 100644 --- a/wmshell/res/values-en-rCA/strings.xml +++ b/wmshell/res/values-en-rCA/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"This app can only be opened in 1 window"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"App may not work on a secondary display."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"App does not support launch on secondary displays."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"App does not support bubble"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Split screen divider"</string> <string name="divider_title" msgid="1963391955593749442">"Split screen divider"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Left full screen"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Manage Windows"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Change aspect ratio"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimize View"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Error Icon"</string> <string name="close_text" msgid="4986518933445178928">"Close"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Close Menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Desktop windowing)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximize Screen"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Resize"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"App can\'t be moved here"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Opening new app window"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Closing app window"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimizing app window"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Focused)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Not Focused)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersive"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restore"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximize"</string> diff --git a/wmshell/res/values-en-rGB/strings.xml b/wmshell/res/values-en-rGB/strings.xml index 8a19f39182..dcc055449f 100644 --- a/wmshell/res/values-en-rGB/strings.xml +++ b/wmshell/res/values-en-rGB/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"This app can only be opened in one window"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"App may not work on a secondary display."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"App does not support launch on secondary displays."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"App does not support bubble"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Split screen divider"</string> <string name="divider_title" msgid="1963391955593749442">"Split screen divider"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Left full screen"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Manage windows"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Change aspect ratio"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimise view"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Error icon"</string> <string name="close_text" msgid="4986518933445178928">"Close"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Close menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Desktop windowing)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximise screen"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Resize"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"App can\'t be moved here"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Opening new app window"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Closing app window"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimising app window"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (focused)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (not focused)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersive"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restore"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximise"</string> diff --git a/wmshell/res/values-en-rIN/strings.xml b/wmshell/res/values-en-rIN/strings.xml index 8a19f39182..dcc055449f 100644 --- a/wmshell/res/values-en-rIN/strings.xml +++ b/wmshell/res/values-en-rIN/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"This app can only be opened in one window"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"App may not work on a secondary display."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"App does not support launch on secondary displays."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"App does not support bubble"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Split screen divider"</string> <string name="divider_title" msgid="1963391955593749442">"Split screen divider"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Left full screen"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Manage windows"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Change aspect ratio"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimise view"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Error icon"</string> <string name="close_text" msgid="4986518933445178928">"Close"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Close menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Desktop windowing)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximise screen"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Resize"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"App can\'t be moved here"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Opening new app window"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Closing app window"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimising app window"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (focused)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (not focused)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersive"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restore"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximise"</string> diff --git a/wmshell/res/values-es-rUS/strings.xml b/wmshell/res/values-es-rUS/strings.xml index 66a4b10e2c..0f048a5324 100644 --- a/wmshell/res/values-es-rUS/strings.xml +++ b/wmshell/res/values-es-rUS/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Esta app solo puede estar abierta en 1 ventana"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Es posible que la app no funcione en una pantalla secundaria."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"La app no puede iniciarse en pantallas secundarias."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"La app no admite la burbuja"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Divisor de pantalla dividida"</string> <string name="divider_title" msgid="1963391955593749442">"Divisor de pantalla dividida"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Pantalla izquierda completa"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Administrar ventanas"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Cambiar relación de aspecto"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimizar vista"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ícono de error"</string> <string name="close_text" msgid="4986518933445178928">"Cerrar"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Cerrar menú"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (renderización en ventanas de escritorio)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximizar pantalla"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Dividir pantalla"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"No se puede mover la app aquí"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Abriendo una nueva ventana de la app"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Cerrando la ventana de la app"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimizando la ventana de la app"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (enfocada)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (sin enfocar)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Inmersivo"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restablecer"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximizar"</string> diff --git a/wmshell/res/values-es/strings.xml b/wmshell/res/values-es/strings.xml index ca500a77c6..ab2b70e7cd 100644 --- a/wmshell/res/values-es/strings.xml +++ b/wmshell/res/values-es/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Esta aplicación solo puede abrirse en una ventana"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Es posible que la aplicación no funcione en una pantalla secundaria."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"La aplicación no se puede abrir en pantallas secundarias."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"La aplicación no es compatible con burbujas"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Divisor de pantalla dividida"</string> <string name="divider_title" msgid="1963391955593749442">"Divisor de pantalla dividida"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Pantalla izquierda completa"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Gestionar ventanas"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Cambiar relación de aspecto"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimizar vista"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Icono de error"</string> <string name="close_text" msgid="4986518933445178928">"Cerrar"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Cerrar menú"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (modo Ventanas)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximizar pantalla"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Dividir pantalla"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"La aplicación no se puede mover aquí"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Abriendo nueva ventana de la aplicación"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Cerrando ventana de la aplicación"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimizando ventana de la aplicación"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (enfocada)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (no enfocada)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Inmersivo"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restaurar"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximizar"</string> diff --git a/wmshell/res/values-et/strings.xml b/wmshell/res/values-et/strings.xml index 541240bd8a..3560439318 100644 --- a/wmshell/res/values-et/strings.xml +++ b/wmshell/res/values-et/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Selle rakenduse saab avada ainult ühes aknas"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Rakendus ei pruugi teisesel ekraanil töötada."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Rakendus ei toeta teisestel ekraanidel käivitamist."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Rakendus ei toeta mulle"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Jagatud ekraanikuva jaotur"</string> <string name="divider_title" msgid="1963391955593749442">"Jagatud ekraanikuva jaotur"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Vasak täisekraan"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Akende haldamine"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Kuvasuhte muutmine"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Vaate optimeerimine"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Veaikoon"</string> <string name="close_text" msgid="4986518933445178928">"Sule"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Sule menüü"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (töölaua aknad)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Kuva täisekraanil"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Suuruse muutmine"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Rakendust ei saa siia teisaldada"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Rakenduse avamine uues aknas"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Rakenduse akna sulgemine"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Rakenduse akna minimeerimine"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fookuses)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (mitte fookuses)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Mahuta"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Taasta"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimeeri"</string> diff --git a/wmshell/res/values-eu/strings.xml b/wmshell/res/values-eu/strings.xml index c3530db55a..7a2e11a63e 100644 --- a/wmshell/res/values-eu/strings.xml +++ b/wmshell/res/values-eu/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Leiho bakar batean ireki daiteke aplikazioa"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Baliteke aplikazioak ez funtzionatzea bigarren mailako pantailetan."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplikazioa ezin da exekutatu bigarren mailako pantailatan."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplikazioak ez ditu onartzen burbuilak"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Pantaila-zatitzailea"</string> <string name="divider_title" msgid="1963391955593749442">"Pantaila-zatitzailea"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Ezarri ezkerraldea pantaila osoan"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Kudeatu leihoak"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Aldatu aspektu-erlazioa"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimizatu ikuspegia"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Errore-ikonoa"</string> <string name="close_text" msgid="4986518933445178928">"Itxi"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Itxi menua"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ordenagailuan leihoak erabiltzeko modua)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Handitu pantaila"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Aldatu tamaina"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Aplikazioa ezin da hona ekarri"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Ireki da aplikazioaren leiho berri bat"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Aplikazioaren leihoa ixten"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimizatu da aplikazioaren leihoa"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fokuratuta)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fokuratu gabe)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Murgiltzailea"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Leheneratu"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximizatu"</string> diff --git a/wmshell/res/values-fa/strings.xml b/wmshell/res/values-fa/strings.xml index f889737796..0b11c8d5bc 100644 --- a/wmshell/res/values-fa/strings.xml +++ b/wmshell/res/values-fa/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"این برنامه فقط در ۱ پنجره می‌تواند باز شود"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"ممکن است برنامه در نمایشگر ثانویه کار نکند."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"برنامه از راه‌اندازی در نمایشگرهای ثانویه پشتیبانی نمی‌کند."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"این برنامه از حبابک پشتیبانی نمی‌کند"</string> <string name="accessibility_divider" msgid="6407584574218956849">"تقسیم‌کننده صفحهٔ دونیمه"</string> <string name="divider_title" msgid="1963391955593749442">"تقسیم‌کننده صفحهٔ دونیمه"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"تمام‌صفحه چپ"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"مدیریت کردن پنجره‌ها"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"تغییر نسبت ابعادی"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"بهینه‌سازی نما"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"نماد خطا"</string> <string name="close_text" msgid="4986518933445178928">"بستن"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"بستن منو"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (پردازش پنجره‌ای رایانه)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"بزرگ کردن صفحه"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"تغییر اندازه"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"برنامه را نمی‌توان به اینجا منتقل کرد"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"باز کردن پنجره برنامه جدید"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"بستن پنجره برنامه"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"کوچک کردن پنجره برنامه"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"‫<xliff:g id="APP_NAME">%1$s</xliff:g> (کانونی‌شده)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"‫<xliff:g id="APP_NAME">%1$s</xliff:g> (کانونی‌نشده)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"فراگیر"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"بازیابی"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"بزرگ کردن"</string> diff --git a/wmshell/res/values-fi/strings.xml b/wmshell/res/values-fi/strings.xml index a33939e17e..d50d693041 100644 --- a/wmshell/res/values-fi/strings.xml +++ b/wmshell/res/values-fi/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Tämän sovelluksen voi avata vain yhdessä ikkunassa"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Sovellus ei ehkä toimi toissijaisella näytöllä."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Sovellus ei tue käynnistämistä toissijaisilla näytöillä."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Sovellus ei tue kuplia"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Näytönjakaja"</string> <string name="divider_title" msgid="1963391955593749442">"Näytönjakaja"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Vasen koko näytölle"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Hallinnoi ikkunoita"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Vaihda kuvasuhdetta"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimoi näkymä"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Virhekuvake"</string> <string name="close_text" msgid="4986518933445178928">"Sulje"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Sulje valikko"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (työpöydän ikkunointi)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Suurenna näyttö"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Muuta kokoa"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Sovellusta ei voi siirtää tänne"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Avataan uutta sovellusikkunaa"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Suljetaan sovellusikkunaa"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Pienennetään sovellusikkunaa"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Keskitetty)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Ei keskitetty)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersiivinen"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Palauta"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Suurenna"</string> diff --git a/wmshell/res/values-fr-rCA/strings.xml b/wmshell/res/values-fr-rCA/strings.xml index d5612ec98d..5a81df2b32 100644 --- a/wmshell/res/values-fr-rCA/strings.xml +++ b/wmshell/res/values-fr-rCA/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Cette appli ne peut être ouverte que dans une seule fenêtre."</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Il est possible que l\'appli ne fonctionne pas sur un écran secondaire."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"L\'appli ne peut pas être lancée sur des écrans secondaires."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"L\'appli ne prend pas en charge la bulle"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Séparateur d\'écran partagé"</string> <string name="divider_title" msgid="1963391955593749442">"Séparateur d\'écran partagé"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Plein écran à la gauche"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Gérer les fenêtres"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Modifier les proportions"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimiser l\'affichage"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Icône d\'erreur"</string> <string name="close_text" msgid="4986518933445178928">"Fermer"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Fermer le menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fenêtrage du bureau)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Agrandir l\'écran"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Redimensionner"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Impossible de déplacer l\'appli ici"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Ouverture d\'une nouvelle fenêtre d\'appli en cours…"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Fermeture de la fenêtre de l\'appli en cours…"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Réduction de la fenêtre d\'appli en cours…"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (mise en évidence)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (non mise en évidence)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersif"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restaurer"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Agrandir"</string> diff --git a/wmshell/res/values-fr/strings.xml b/wmshell/res/values-fr/strings.xml index 0868fa0e83..6c260d166b 100644 --- a/wmshell/res/values-fr/strings.xml +++ b/wmshell/res/values-fr/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Cette appli ne peut être ouverte que dans 1 fenêtre"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Il est possible que l\'application ne fonctionne pas sur un écran secondaire."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"L\'application ne peut pas être lancée sur des écrans secondaires."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"L\'appli n\'est pas compatible avec les bulles"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Séparateur d\'écran partagé"</string> <string name="divider_title" msgid="1963391955593749442">"Séparateur d\'écran partagé"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Écran de gauche en plein écran"</string> @@ -56,7 +55,7 @@ <string name="accessibility_split_top" msgid="2789329702027147146">"Affichée en haut"</string> <string name="accessibility_split_bottom" msgid="8694551025220868191">"Affichée en haut"</string> <string name="one_handed_tutorial_title" msgid="4583241688067426350">"Utilisation du mode une main"</string> - <string name="one_handed_tutorial_description" msgid="3486582858591353067">"Pour quitter, balayez vers le haut depuis le bas de l\'écran ou appuyez n\'importe où au-dessus de l\'application"</string> + <string name="one_handed_tutorial_description" msgid="3486582858591353067">"Pour quitter, balayez l\'écran de bas en haut ou appuyez n\'importe où au-dessus de l\'application"</string> <string name="accessibility_action_start_one_handed" msgid="5070337354072861426">"Démarrer le mode une main"</string> <string name="accessibility_action_stop_one_handed" msgid="1369940261782179442">"Quitter le mode une main"</string> <string name="bubbles_settings_button_description" msgid="1301286017420516912">"Paramètres des bulles de <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Gérer les fenêtres"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Modifier le format"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimiser l\'affichage"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Icône Erreur"</string> <string name="close_text" msgid="4986518933445178928">"Fermer"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Fermer le menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fenêtrage de bureau)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Mettre en plein écran"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Redimensionner"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Impossible de déplacer l\'appli ici"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Ouverture d\'une nouvelle fenêtre de l\'application"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Fermeture de la fenêtre de l\'application"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Réduction de la fenêtre de l\'application"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (sélectionné)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (non sélectionné)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersif"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restaurer"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Agrandir"</string> diff --git a/wmshell/res/values-gl/strings.xml b/wmshell/res/values-gl/strings.xml index 5edadbacb3..b9ccf765c8 100644 --- a/wmshell/res/values-gl/strings.xml +++ b/wmshell/res/values-gl/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Esta aplicación só se pode abrir en 1 ventá"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"É posible que a aplicación non funcione nunha pantalla secundaria."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"A aplicación non se pode iniciar en pantallas secundarias."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"A aplicación non admite as burbullas"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Divisor de pantalla dividida"</string> <string name="divider_title" msgid="1963391955593749442">"Divisor de pantalla dividida"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Pantalla completa á esquerda"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Xestionar as ventás"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Cambiar a proporción"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimizar a vista"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Icona de erro"</string> <string name="close_text" msgid="4986518933445178928">"Pechar"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Pechar o menú"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (modo con ventás tipo ordenador)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximizar pantalla"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Cambiar tamaño"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Non se pode mover aquí a aplicación"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Abrindo nova ventá da aplicación"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Pechando ventá da aplicación"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimizando ventá da aplicación"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (enfocada)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (non enfocada)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Envolvente"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restaurar"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximizar"</string> diff --git a/wmshell/res/values-gu/strings.xml b/wmshell/res/values-gu/strings.xml index 857446be11..50bf7b5fcf 100644 --- a/wmshell/res/values-gu/strings.xml +++ b/wmshell/res/values-gu/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"આ ઍપ માત્ર 1 વિન્ડોમાં ખોલી શકાય છે"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"ઍપ્લિકેશન ગૌણ ડિસ્પ્લે પર કદાચ કામ ન કરે."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"ઍપ્લિકેશન ગૌણ ડિસ્પ્લે પર લૉન્ચનું સમર્થન કરતી નથી."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"ઍપ બબલને સપોર્ટ કરતી નથી"</string> <string name="accessibility_divider" msgid="6407584574218956849">"સ્ક્રીનને વિભાજિત કરતું વિભાજક"</string> <string name="divider_title" msgid="1963391955593749442">"સ્ક્રીનને વિભાજિત કરતું વિભાજક"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"ડાબી પૂર્ણ સ્ક્રીન"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"વિન્ડો મેનેજ કરો"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"સાપેક્ષ ગુણોત્તર બદલો"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"વ્યૂ ઑપ્ટિમાઇઝ કરો"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"ભૂલનું આઇકન"</string> <string name="close_text" msgid="4986518933445178928">"બંધ કરો"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"મેનૂ બંધ કરો"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ડેસ્કટૉપ વિન્ડોઇંગ)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"સ્ક્રીન કરો મોટી કરો"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"કદ બદલો"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ઍપ અહીં ખસેડી શકાતી નથી"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"નવી વિન્ડો ખોલવી"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"ઍપની વિન્ડો બંધ કરી રહ્યાં છીએ"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"ઍપ વિન્ડો ન્યૂનતમ કરવી"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ફોકસ કરેલ)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ફોકસ ન કરેલી)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ઇમર્સિવ"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"રિસ્ટોર કરો"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"મોટું કરો"</string> diff --git a/wmshell/res/values-hi/strings.xml b/wmshell/res/values-hi/strings.xml index 89a2249c8e..a0dd30bc2f 100644 --- a/wmshell/res/values-hi/strings.xml +++ b/wmshell/res/values-hi/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"इस ऐप्लिकेशन को सिर्फ़ एक विंडो में खोला जा सकता है"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"हो सकता है कि ऐप प्राइमरी (मुख्य) डिस्प्ले के अलावा बाकी दूसरे डिस्प्ले पर काम न करे."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"प्राइमरी (मुख्य) डिस्प्ले के अलावा बाकी दूसरे डिस्प्ले पर ऐप लॉन्च नहीं किया जा सकता."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"इस ऐप्लिकेशन पर बबल की सुविधा काम नहीं करती"</string> <string name="accessibility_divider" msgid="6407584574218956849">"स्प्लिट स्क्रीन डिवाइडर मोड"</string> <string name="divider_title" msgid="1963391955593749442">"स्प्लिट स्क्रीन डिवाइडर मोड"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"बाईं स्क्रीन को फ़ुल स्क्रीन बनाएं"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"विंडो मैनेज करें"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) बदलें"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"व्यू को ऑप्टिमाइज़ करें"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"गड़बड़ी का आइकॉन"</string> <string name="close_text" msgid="4986518933445178928">"बंद करें"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"मेन्यू बंद करें"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (डेस्कटॉप विंडोविंग)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"स्क्रीन को बड़ा करें"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"साइज़ बदलें"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ऐप्लिकेशन को यहां मूव नहीं किया जा सकता"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"ऐप्लिकेशन की नई विंडो खोली जा रही है"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"ऐप्लिकेशन की विंडो बंद की जा रही है"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"ऐप्लिकेशन की विंडो को छोटा किया जा रहा है"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (फ़ोकस किया गया)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (फ़ोकस नहीं किया गया)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"इमर्सिव"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"वापस लाएं"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"बड़ा करें"</string> diff --git a/wmshell/res/values-hr/strings.xml b/wmshell/res/values-hr/strings.xml index c0393b34c2..c9e4d13f74 100644 --- a/wmshell/res/values-hr/strings.xml +++ b/wmshell/res/values-hr/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Ova se aplikacija može otvoriti samo u jednom prozoru"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Aplikacija možda neće funkcionirati na sekundarnom zaslonu."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplikacija ne podržava pokretanje na sekundarnim zaslonima."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplikacija ne podržava oblačić"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Razdjelnik podijeljenog zaslona"</string> <string name="divider_title" msgid="1963391955593749442">"Razdjelnik podijeljenog zaslona"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Lijevi zaslon u cijeli zaslon"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Upravljanje prozorima"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Promijeni omjer slike"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimiziraj prikaz"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ikona pogreške"</string> <string name="close_text" msgid="4986518933445178928">"Zatvorite"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Zatvorite izbornik"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (prikaz u prozorima na računalu)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maksimalno povećaj zaslon"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Promijeni veličinu"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Aplikacija se ne može premjestiti ovdje"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Otvaranje novog prozora aplikacije"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Zatvaranje prozora aplikacije"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimiziranje prozora aplikacije"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fokusirano)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (nije fokusirano)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Interaktivno"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Vrati"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimiziraj"</string> diff --git a/wmshell/res/values-hu/strings.xml b/wmshell/res/values-hu/strings.xml index ea2ddc94ca..6dae47f83d 100644 --- a/wmshell/res/values-hu/strings.xml +++ b/wmshell/res/values-hu/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Ez az alkalmazás csak egy ablakban nyitható meg"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Előfordulhat, hogy az alkalmazás nem működik másodlagos kijelzőn."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Az alkalmazást nem lehet másodlagos kijelzőn elindítani."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Az alkalmazás nem támogatja a buborékot"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Elválasztó az osztott képernyős nézetben"</string> <string name="divider_title" msgid="1963391955593749442">"Elválasztó az osztott képernyős nézetben"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Bal oldali teljes képernyőre"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Ablakok kezelése"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Méretarány módosítása"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Nézet optimalizálása"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Hiba ikon"</string> <string name="close_text" msgid="4986518933445178928">"Bezárás"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Menü bezárása"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Asztali ablakkezelési mód)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Képernyő méretének maximalizálása"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Átméretezés"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Az alkalmazás nem helyezhető át ide"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Új alkalmazásablak megnyitása…"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Alkalmazásablak bezárása"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Alkalmazásablak kis méretre állítása…"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Fókuszált)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Nincs fókuszban)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Magával ragadó"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Visszaállítás"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Teljes méret"</string> diff --git a/wmshell/res/values-hy/strings.xml b/wmshell/res/values-hy/strings.xml index 8721d574e8..b32bb946fa 100644 --- a/wmshell/res/values-hy/strings.xml +++ b/wmshell/res/values-hy/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Այս հավելվածը հնարավոր է բացել միայն մեկ պատուհանում"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Հավելվածը կարող է չաշխատել լրացուցիչ էկրանի վրա"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Հավելվածը չի աջակցում գործարկումը լրացուցիչ էկրանների վրա"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Հավելվածը չի աջակցում ամպիկ"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Տրոհված էկրանի բաժանիչ"</string> <string name="divider_title" msgid="1963391955593749442">"Տրոհված էկրանի բաժանիչ"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Ձախ էկրանը՝ լիաէկրան"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Կառավարել պատուհանները"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Փոխել կողմերի հարաբերակցությունը"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Օպտիմալացնել"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Սխալի պատկերակ"</string> <string name="close_text" msgid="4986518933445178928">"Փակել"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Փակել ընտրացանկը"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (համակարգչային պատուհաններ)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Ծավալել էկրանը"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Փոխել չափը"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Հավելվածը հնարավոր չէ տեղափոխել այստեղ"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Հավելվածի նոր պատուհանը բացվում է"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Հավելվածի պատուհանը փակվում է"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Հավելվածի պատուհանը ծալվում է"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"Ընտրված է <xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածը"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> հավելվածն ընտրված չէ"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Ներկայության էֆեկտով"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Վերականգնել"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Ծավալել"</string> diff --git a/wmshell/res/values-in/strings.xml b/wmshell/res/values-in/strings.xml index ba6c8fc5c4..14c6113a98 100644 --- a/wmshell/res/values-in/strings.xml +++ b/wmshell/res/values-in/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Aplikasi ini hanya dapat dibuka di 1 jendela"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Aplikasi mungkin tidak berfungsi pada layar sekunder."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplikasi tidak mendukung peluncuran pada layar sekunder."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplikasi tidak mendukung balon"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Pembagi layar terpisah"</string> <string name="divider_title" msgid="1963391955593749442">"Pembagi layar terpisah"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Layar penuh di kiri"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Kelola Jendela"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Ubah rasio aspek"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimalkan Tampilan"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ikon Error"</string> <string name="close_text" msgid="4986518933445178928">"Tutup"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Tutup Menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Mode jendela desktop)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Perbesar Layar"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Ubah ukuran"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Aplikasi tidak dapat dipindahkan ke sini"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Membuka jendela aplikasi baru"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Menutup jendela aplikasi"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Meminimalkan jendela aplikasi"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Difokuskan)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Tidak Difokuskan)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Imersif"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Pulihkan"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimalkan"</string> diff --git a/wmshell/res/values-is/strings.xml b/wmshell/res/values-is/strings.xml index 74ade660c6..9e61839c86 100644 --- a/wmshell/res/values-is/strings.xml +++ b/wmshell/res/values-is/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Aðeins er hægt að opna þetta forrit í 1 glugga"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Hugsanlegt er að forritið virki ekki á öðrum skjá."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Forrit styður ekki opnun á öðrum skjá."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Forrit styður ekki blöðru"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Skilrúm skjáskiptingar"</string> <string name="divider_title" msgid="1963391955593749442">"Skilrúm skjáskiptingar"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Vinstri á öllum skjánum"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Stjórna gluggum"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Breyta myndhlutfalli"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Fínstilla yfirlit"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Villutákn"</string> <string name="close_text" msgid="4986518933445178928">"Loka"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Loka valmynd"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (gluggastilling í tölvu)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Stækka skjá"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Breyta stærð"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Ekki er hægt að færa forritið hingað"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Opnar nýjan forritsglugga"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Lokar forritsglugga"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minnkar forritsglugga"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (í fókus)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ekki í fókus)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Umlykjandi"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Endurheimta"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Stækka"</string> diff --git a/wmshell/res/values-it/strings.xml b/wmshell/res/values-it/strings.xml index ad3f0d3e5a..34b66b127b 100644 --- a/wmshell/res/values-it/strings.xml +++ b/wmshell/res/values-it/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Questa app può essere aperta soltanto in 1 finestra"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"L\'app potrebbe non funzionare su un display secondario."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"L\'app non supporta l\'avvio su display secondari."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"L\'app non supporta la riduzione a icona"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Strumento per schermo diviso"</string> <string name="divider_title" msgid="1963391955593749442">"Strumento per schermo diviso"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Schermata sinistra a schermo intero"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Gestisci finestre"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Cambia proporzioni"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Ottimizza visualizzazione"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Icona di errore"</string> <string name="close_text" msgid="4986518933445178928">"Chiudi"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Chiudi il menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (app in finestre)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Massimizza schermo"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Ridimensiona"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Impossibile spostare l\'app qui"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Apertura di una nuova finestra dell\'app"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Chiusura della finestra app in corso…"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Riduzione a icona della finestra dell\'app"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (selezionata)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (non selezionata)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersivo"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Ripristina"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Ingrandisci"</string> diff --git a/wmshell/res/values-iw/strings.xml b/wmshell/res/values-iw/strings.xml index 1cccdb9cc4..e02b706b11 100644 --- a/wmshell/res/values-iw/strings.xml +++ b/wmshell/res/values-iw/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"ניתן לפתוח את האפליקציה הזו רק בחלון אחד"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"ייתכן שהאפליקציה לא תפעל במסך משני."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"האפליקציה אינה תומכת בהפעלה במסכים משניים."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"האפליקציה לא תומכת בבועה"</string> <string name="accessibility_divider" msgid="6407584574218956849">"מחלק מסך מפוצל"</string> <string name="divider_title" msgid="1963391955593749442">"מחלק מסך מפוצל"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"מסך שמאלי מלא"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"ניהול החלונות"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"שינוי יחס הגובה-רוחב"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"אופטימיזציה של התצוגה"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"סמל שגיאה"</string> <string name="close_text" msgid="4986518933445178928">"סגירה"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"סגירת התפריט"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"‫<xliff:g id="APP_NAME">%1$s</xliff:g> (שינוי דינמי של חלונות במחשב)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"הגדלת המסך"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"שינוי הגודל"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"לא ניתן להעביר את האפליקציה לכאן"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"נפתח חלון חדש באפליקציה"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"החלון של האפליקציה עומד להיסגר"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"חלון האפליקציה התמזער"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"‫<xliff:g id="APP_NAME">%1$s</xliff:g> (במיקוד)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"‫<xliff:g id="APP_NAME">%1$s</xliff:g> (לא במיקוד)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"הטמעה"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"שחזור"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"הגדלה"</string> diff --git a/wmshell/res/values-ja/strings.xml b/wmshell/res/values-ja/strings.xml index d2857861af..19ac853d48 100644 --- a/wmshell/res/values-ja/strings.xml +++ b/wmshell/res/values-ja/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"このアプリはウィンドウが 1 つの場合のみ開くことができます"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"アプリはセカンダリ ディスプレイでは動作しないことがあります。"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"アプリはセカンダリ ディスプレイでの起動に対応していません。"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"アプリがふきだしに対応していません"</string> <string name="accessibility_divider" msgid="6407584574218956849">"分割画面の分割線"</string> <string name="divider_title" msgid="1963391955593749442">"分割画面の分割線"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"左全画面"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"ウィンドウを管理する"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"アスペクト比を変更"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"ビューを最適化"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"エラーアイコン"</string> <string name="close_text" msgid="4986518933445178928">"閉じる"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"メニューを閉じる"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g>(デスクトップ ウィンドウ)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"画面の最大化"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"サイズ変更"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"アプリはここに移動できません"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"新しいアプリ ウィンドウを開いています"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"アプリのウィンドウを閉じています"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"アプリ ウィンドウを最小化しています"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g>(フォーカス)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g>(非フォーカス)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"没入モード"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"復元"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"最大化"</string> diff --git a/wmshell/res/values-ka/strings.xml b/wmshell/res/values-ka/strings.xml index f604879e5a..97e5b8b22f 100644 --- a/wmshell/res/values-ka/strings.xml +++ b/wmshell/res/values-ka/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"ამ აპის გახსნა შესაძლებელია მხოლოდ 1 ფანჯარაში"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"აპმა შეიძლება არ იმუშაოს მეორეულ ეკრანზე."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"აპს არ გააჩნია მეორეული ეკრანის მხარდაჭერა."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"ბუშტი არ არის მხარდაჭერილი აპის მიერ"</string> <string name="accessibility_divider" msgid="6407584574218956849">"ეკრანის გაყოფის გამყოფი"</string> <string name="divider_title" msgid="1963391955593749442">"ეკრანის გაყოფის გამყოფი"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"მარცხენა ნაწილის სრულ ეკრანზე გაშლა"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"ფანჯრების მართვა"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"თანაფარდობის შეცვლა"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"ხედის ოპტიმიზება"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"შეცდომის ხატულა"</string> <string name="close_text" msgid="4986518933445178928">"დახურვა"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"მენიუს დახურვა"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (დესკტოპის ფანჯრის რეჟიმი)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"აპლიკაციის გაშლა სრულ ეკრანზე"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"ზომის შეცვლა"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"აპის აქ გადატანა შეუძლებელია"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"აპის ახალი ფანჯარა იხსნება"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"მიმდინარეობს აპის ფანჯრის დახურვა"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"აპის ფანჯარა იკეცება"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ფოკუსირებული)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ფოკუსის გარეთ)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"იმერსიული"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"აღდგენა"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"მაქსიმალურად გაშლა"</string> diff --git a/wmshell/res/values-kk/strings.xml b/wmshell/res/values-kk/strings.xml index d96485c65f..21f0496588 100644 --- a/wmshell/res/values-kk/strings.xml +++ b/wmshell/res/values-kk/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Бұл қолданбаны тек 1 терезеден ашуға болады."</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Қолданба қосымша дисплейде жұмыс істемеуі мүмкін."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Қолданба қосымша дисплейлерде іске қосуды қолдамайды."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Қолданба қалқыма терезеге қолдау көрсетпейді."</string> <string name="accessibility_divider" msgid="6407584574218956849">"Экранды бөлу режимінің бөлгіші"</string> <string name="divider_title" msgid="1963391955593749442">"Экранды бөлу режимінің бөлгіші"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Сол жағын толық экранға шығару"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Терезелерді басқару"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Арақатынасты өзгерту"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Көріністі оңтайландыру"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Қате белгішесі"</string> <string name="close_text" msgid="4986518933445178928">"Жабу"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Мәзірді жабу"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (компьютерлік терезелер режимі)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Экранды ұлғайту"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Өлшемін өзгерту"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Қолданба бұл жерге қойылмайды."</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Жаңа қолданба терезесін ашу"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Қолданба терезесі жабылып жатыр"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Қолданба терезесін кішірейту"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ерекшеленген)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ерекшеленбеген)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Иммерсивтік әсер"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Қалпына келтіру"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Жаю"</string> diff --git a/wmshell/res/values-km/strings.xml b/wmshell/res/values-km/strings.xml index 1fb1aaca9e..99817c07f9 100644 --- a/wmshell/res/values-km/strings.xml +++ b/wmshell/res/values-km/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"អាចបើកកម្មវិធីនេះបានតែក្នុងវិនដូ 1 ប៉ុណ្ណោះ"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"កម្មវិធីនេះ​ប្រហែល​ជាមិនដំណើរការ​នៅលើ​អេក្រង់បន្ទាប់បន្សំទេ។"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"កម្មវិធី​នេះមិន​អាច​ចាប់ផ្តើម​នៅលើ​អេក្រង់បន្ទាប់បន្សំបានទេ។"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"កម្មវិធីមិនអាចប្រើផ្ទាំងសារបានទេ"</string> <string name="accessibility_divider" msgid="6407584574218956849">"បន្ទាត់ខណ្ឌចែកក្នុងមុខងារ​បំបែកអេក្រង់"</string> <string name="divider_title" msgid="1963391955593749442">"បន្ទាត់ខណ្ឌចែកក្នុងមុខងារ​បំបែកអេក្រង់"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"អេក្រង់ពេញខាងឆ្វេង"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"គ្រប់គ្រង​វិនដូ"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"ប្ដូរ​​សមាមាត្រ"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"បង្កើនប្រសិទ្ធភាពការមើល"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"រូបបញ្ហា"</string> <string name="close_text" msgid="4986518933445178928">"បិទ"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"បិទ​ម៉ឺនុយ"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (មុខងារវិនដូកុំព្យូទ័រ)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"ពង្រីកអេក្រង់"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"ប្ដូរ​ទំហំ"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"មិនអាចផ្លាស់ទីកម្មវិធីមកទីនេះបានទេ"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"ការបើកវិនដូកម្មវិធីថ្មី"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"កំពុងបិទវិនដូកម្មវិធី"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"ការបង្រួមវិនដូកម្មវិធី"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (បានផ្ដោត)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (មិនបានផ្ដោត)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ជក់ចិត្ត"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"ស្ដារ"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"ពង្រីក"</string> diff --git a/wmshell/res/values-kn/strings.xml b/wmshell/res/values-kn/strings.xml index 178eca199e..5c465bfa94 100644 --- a/wmshell/res/values-kn/strings.xml +++ b/wmshell/res/values-kn/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"ಈ ಆ್ಯಪ್ ಅನ್ನು 1 ವಿಂಡೋದಲ್ಲಿ ಮಾತ್ರ ತೆರೆಯಬಹುದು"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"ಸೆಕೆಂಡರಿ ಡಿಸ್‌ಪ್ಲೇಗಳಲ್ಲಿ ಆ್ಯಪ್ ಕಾರ್ಯ ನಿರ್ವಹಿಸದೇ ಇರಬಹುದು."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"ಸೆಕೆಂಡರಿ ಡಿಸ್‌ಪ್ಲೇಗಳಲ್ಲಿ ಪ್ರಾರಂಭಿಸುವಿಕೆಯನ್ನು ಆ್ಯಪ್ ಬೆಂಬಲಿಸುವುದಿಲ್ಲ."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"ಬಬಲ್ ಅನ್ನು ಆ್ಯಪ್ ಬೆಂಬಲಿಸುವುದಿಲ್ಲ"</string> <string name="accessibility_divider" msgid="6407584574218956849">"ಸ್ಪ್ಲಿಟ್‌ ಸ್ಕ್ರೀನ್ ಡಿವೈಡರ್"</string> <string name="divider_title" msgid="1963391955593749442">"ಸ್ಪ್ಲಿಟ್‌ ಸ್ಕ್ರೀನ್ ಡಿವೈಡರ್"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"ಎಡ ಫುಲ್ ಸ್ಕ್ರೀನ್"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"ವಿಂಡೋಗಳನ್ನು ನಿರ್ವಹಿಸಿ"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"ದೃಶ್ಯಾನುಪಾತವನ್ನು ಬದಲಾಯಿಸಿ"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"ವೀಕ್ಷಣೆಯನ್ನು ಆಪ್ಟಿಮೈಸ್ ಮಾಡಿ"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"ದೋಷದ ಐಕಾನ್"</string> <string name="close_text" msgid="4986518933445178928">"ಮುಚ್ಚಿ"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"ಮೆನು ಮುಚ್ಚಿ"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ಡೆಸ್ಕ್‌ಟಾಪ್ ವಿಂಡೋಯಿಂಗ್)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"ಸ್ಕ್ರೀನ್ ಅನ್ನು ಮ್ಯಾಕ್ಸಿಮೈಸ್ ಮಾಡಿ"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"ಮರುಗಾತ್ರಗೊಳಿಸಿ"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ಆ್ಯಪ್ ಅನ್ನು ಇಲ್ಲಿಗೆ ಸರಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"ಹೊಸ ಆ್ಯಪ್ ವಿಂಡೋವನ್ನು ತೆರೆಯಲಾಗುತ್ತಿದೆ"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"ಆ್ಯಪ್ ವಿಂಡೋವನ್ನು ಮುಚ್ಚಲಾಗುತ್ತಿದೆ"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"ಆ್ಯಪ್ ವಿಂಡೋವನ್ನು ಮಿನಿಮೈಸ್ ಮಾಡಲಾಗುತ್ತಿದೆ"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ಫೋಕಸ್ ಮಾಡಲಾಗಿದೆ)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ಫೋಕಸ್ ಮಾಡಲಾಗಿಲ್ಲ)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ಇಮ್ಮರ್ಸಿವ್"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"ಮರುಸ್ಥಾಪಿಸಿ"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"ಮ್ಯಾಕ್ಸಿಮೈಸ್ ಮಾಡಿ"</string> diff --git a/wmshell/res/values-kn/strings_tv.xml b/wmshell/res/values-kn/strings_tv.xml index 2e62e4f0d5..efb79306cb 100644 --- a/wmshell/res/values-kn/strings_tv.xml +++ b/wmshell/res/values-kn/strings_tv.xml @@ -21,7 +21,7 @@ <string name="pip_notification_unknown_title" msgid="2729870284350772311">"(ಶೀರ್ಷಿಕೆ ರಹಿತ ಕಾರ್ಯಕ್ರಮ)"</string> <string name="pip_close" msgid="2955969519031223530">"ಮುಚ್ಚಿರಿ"</string> <string name="pip_fullscreen" msgid="7278047353591302554">"ಫುಲ್ ಸ್ಕ್ರೀನ್"</string> - <string name="pip_move" msgid="158770205886688553">"ಮೂವ್"</string> + <string name="pip_move" msgid="158770205886688553">"ಸರಿಸಿ"</string> <string name="pip_expand" msgid="1051966011679297308">"ವಿಸ್ತೃತಗೊಳಿಸಿ"</string> <string name="pip_collapse" msgid="3903295106641385962">"ಕುಗ್ಗಿಸಿ"</string> <string name="pip_edu_text" msgid="7930546669915337998">"ಕಂಟ್ರೋಲ್‌ಗಳಿಗಾಗಿ "<annotation icon="home_icon">"ಹೋಮ್"</annotation>" ಅನ್ನು ಎರಡು ಬಾರಿ ಒತ್ತಿರಿ"</string> diff --git a/wmshell/res/values-ko/strings.xml b/wmshell/res/values-ko/strings.xml index 8787ddb323..d856438a53 100644 --- a/wmshell/res/values-ko/strings.xml +++ b/wmshell/res/values-ko/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"이 앱은 창 1개에서만 열 수 있습니다."</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"앱이 보조 디스플레이에서 작동하지 않을 수도 있습니다."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"앱이 보조 디스플레이에서의 실행을 지원하지 않습니다."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"앱이 풍선을 지원하지 않습니다."</string> <string name="accessibility_divider" msgid="6407584574218956849">"화면 분할기"</string> <string name="divider_title" msgid="1963391955593749442">"화면 분할기"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"왼쪽 화면 전체화면"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"창 관리"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"가로세로 비율 변경"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"뷰 최적화"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"오류 아이콘"</string> <string name="close_text" msgid="4986518933445178928">"닫기"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"메뉴 닫기"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g>(데스크톱 윈도윙)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"화면 최대화"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"크기 조절"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"앱을 여기로 이동할 수 없음"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"새 앱 창 열기"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"앱 창 닫기"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"앱 창 최소화"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g>(포커스)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g>(포커스되지 않음)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"몰입형"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"복원"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"최대화하기"</string> diff --git a/wmshell/res/values-ky/strings.xml b/wmshell/res/values-ky/strings.xml index c3b63d22f3..8c15c6a9c2 100644 --- a/wmshell/res/values-ky/strings.xml +++ b/wmshell/res/values-ky/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Бул колдонмону 1 терезеде гана ачууга болот"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Колдонмо кошумча экранда иштебей коюшу мүмкүн."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Колдонмону кошумча экрандарда иштетүүгө болбойт."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Колдонмо көбүкчөнү колдоого албайт"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Экранды бөлгүч"</string> <string name="divider_title" msgid="1963391955593749442">"Экранды бөлгүч"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Сол жактагы экранды толук экран режимине өткөрүү"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Терезелерди тескөө"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Тараптардын катнашын өзгөртүү"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Көрүнүштү оптималдаштыруу"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ката сүрөтчөсү"</string> <string name="close_text" msgid="4986518933445178928">"Жабуу"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Менюну жабуу"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Иш тактанын терезелери)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Экранды чоңойтуу"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Өлчөмүн өзгөртүү"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Колдонмону бул жерге жылдырууга болбойт"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Колдонмонун жаңы терезесин ачуу"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Колдонмо терезеси жабылууда"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Колдонмонун терезесин кичирейтүү"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Иштеп жатат)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Иштебей турат)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Сүңгүтүүчү"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Калыбына келтирүү"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Чоңойтуу"</string> diff --git a/wmshell/res/values-lo/strings.xml b/wmshell/res/values-lo/strings.xml index b3e9ffcc56..f3e6f81d50 100644 --- a/wmshell/res/values-lo/strings.xml +++ b/wmshell/res/values-lo/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"ແອັບນີ້ສາມາດເປີດໄດ້ໃນ 1 ໜ້າຈໍເທົ່ານັ້ນ"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"ແອັບອາດບໍ່ສາມາດໃຊ້ໄດ້ໃນໜ້າຈໍທີສອງ."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"ແອັບບໍ່ຮອງຮັບການເປີດໃນໜ້າຈໍທີສອງ."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"ແອັບບໍ່ຮອງຮັບຟອງ"</string> <string name="accessibility_divider" msgid="6407584574218956849">"ເສັ້ນແບ່ງໜ້າຈໍ"</string> <string name="divider_title" msgid="1963391955593749442">"ເສັ້ນແບ່ງໜ້າຈໍ"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"ເຕັມໜ້າຈໍຊ້າຍ"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"ຈັດການໜ້າຈໍ"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"ປ່ຽນອັດຕາສ່ວນຮູບ"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"ມຸມມອງເພີ່ມປະສິດທິພາບ"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"ໄອຄອນຂໍ້ຜິດພາດ"</string> <string name="close_text" msgid="4986518933445178928">"ປິດ"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"ປິດເມນູ"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ໜ້າຈໍເດັສທັອບ)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"ປັບຈໍໃຫຍ່ສຸດ"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"ປັບຂະໜາດ"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ບໍ່ສາມາດຍ້າຍແອັບມາບ່ອນນີ້ໄດ້"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"ກຳລັງເປີດໜ້າຈໍແອັບໃໝ່"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"ກຳລັງປິດໜ້າຈໍແອັບ"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"ກຳລັງຫຍໍ້ໜ້າຈໍແອັບ"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ໂຟກັສ)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ບໍ່ໂຟກັສ)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ສົມຈິງ"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"ກູ້ຄືນ"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"ຂະຫຍາຍໃຫຍ່ສຸດ"</string> diff --git a/wmshell/res/values-lt/strings.xml b/wmshell/res/values-lt/strings.xml index 821d9efe47..d22db2e0a7 100644 --- a/wmshell/res/values-lt/strings.xml +++ b/wmshell/res/values-lt/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Šią programą galima atidaryti tik viename lange"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Programa gali neveikti antriniame ekrane."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Programa nepalaiko paleisties antriniuose ekranuose."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Programa nepalaiko pokalbio debesėlio"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Išskaidyto ekrano režimo daliklis"</string> <string name="divider_title" msgid="1963391955593749442">"Išskaidyto ekrano režimo daliklis"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Kairysis ekranas viso ekrano režimu"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Tvarkyti langus"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Keisti kraštinių santykį"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimizuoti rodinį"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Klaidos piktograma"</string> <string name="close_text" msgid="4986518933445178928">"Uždaryti"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Uždaryti meniu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"„<xliff:g id="APP_NAME">%1$s</xliff:g>“ (versijos staliniams kompiuteriams rodinys)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Išskleisti ekraną"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Pakeisti dydį"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Programos negalima perkelti čia"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Atidaromas naujas programos langas"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Uždaromas programos langas"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Sumažinamas programos langas"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"„<xliff:g id="APP_NAME">%1$s</xliff:g>“ (paryškinta)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"„<xliff:g id="APP_NAME">%1$s</xliff:g>“ (neparyškinta)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Įtraukiantis"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Atkurti"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Padidinti"</string> diff --git a/wmshell/res/values-lv/strings.xml b/wmshell/res/values-lv/strings.xml index 2d75741995..0e9d4e4668 100644 --- a/wmshell/res/values-lv/strings.xml +++ b/wmshell/res/values-lv/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Šo lietotni var atvērt tikai vienā logā"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Lietotne, iespējams, nedarbosies sekundārajā displejā."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Lietotnē netiek atbalstīta palaišana sekundārajos displejos."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Lietotnē netiek atbalstīts burbulis"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Ekrāna sadalītājs"</string> <string name="divider_title" msgid="1963391955593749442">"Ekrāna sadalītājs"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Kreisā daļa pa visu ekrānu"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Pārvaldīt logus"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Mainīt malu attiecību"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimizēt skatu"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Kļūdas ikona"</string> <string name="close_text" msgid="4986518933445178928">"Aizvērt"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Aizvērt izvēlni"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (darbvirsmas logošana)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maksimizēt ekrānu"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Mainīt lielumu"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Lietotni nevar pārvietot šeit."</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Tiek atvērts jauns lietotnes logs"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Tiek aizvērts lietotnes logs"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Tiek minimizēts lietotnes logs"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fokusā)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (nav fokusā)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Iekļaujoši"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Atjaunot"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimizēt"</string> diff --git a/wmshell/res/values-mk/strings.xml b/wmshell/res/values-mk/strings.xml index c6328befba..1b7fe571d4 100644 --- a/wmshell/res/values-mk/strings.xml +++ b/wmshell/res/values-mk/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Апликацијава може да се отвори само во еден прозорец"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Апликацијата може да не функционира на друг екран."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Апликацијата не поддржува стартување на други екрани."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Апликацијата не поддржува балонче"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Разделник на поделен екран"</string> <string name="divider_title" msgid="1963391955593749442">"Разделник на поделен екран"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Левиот на цел екран"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Управувајте со прозорците"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Промени го соодносот"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Оптимизирај го приказот"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Икона за грешка"</string> <string name="close_text" msgid="4986518933445178928">"Затворете"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Затворете го менито"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (режим со прозорци на работната површина)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Максимизирај го екранот"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Смени големина"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Апликацијата не може да се премести овде"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Отворање нов прозорец на апликацијата"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Се затвора прозорецот на апликацијата"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Минимизирање на прозорецот на апликацијата"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (фокусирано)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (не е фокусирано)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Реалистично"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Врати"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Максимизирај"</string> diff --git a/wmshell/res/values-ml/strings.xml b/wmshell/res/values-ml/strings.xml index 6e10ce4642..01b9dee890 100644 --- a/wmshell/res/values-ml/strings.xml +++ b/wmshell/res/values-ml/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"ഈ ആപ്പ് ഒരു വിൻഡോയിൽ മാത്രമേ തുറക്കാനാകൂ"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"രണ്ടാം ഡിസ്‌പ്ലേയിൽ ആപ്പ് പ്രവർത്തിച്ചേക്കില്ല."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"രണ്ടാം ഡിസ്‌പ്ലേകളിൽ സമാരംഭിക്കുന്നതിനെ ആപ്പ് അനുവദിക്കുന്നില്ല."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"ബബിളിനെ ആപ്പ് പിന്തുണയ്ക്കുന്നില്ല"</string> <string name="accessibility_divider" msgid="6407584574218956849">"സ്‌ക്രീൻ വിഭജന മോഡ് ഡിവൈഡർ"</string> <string name="divider_title" msgid="1963391955593749442">"സ്‌ക്രീൻ വിഭജന മോഡ് ഡിവൈഡർ"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"ഇടത് പൂർണ്ണ സ്ക്രീൻ"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"വിൻഡോകൾ മാനേജ് ചെയ്യുക"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"വീക്ഷണ അനുപാതം മാറ്റുക"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"കാഴ്‌ച ഒപ്റ്റിമൈസ് ചെയ്യുക"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"പിശക് ഐക്കൺ"</string> <string name="close_text" msgid="4986518933445178928">"അടയ്ക്കുക"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"മെനു അടയ്ക്കുക"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ഡെസ്ക്ടോപ്പ് വിൻഡോയിംഗ്)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"സ്‌ക്രീൻ വലുതാക്കുക"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"വലുപ്പം മാറ്റുക"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ആപ്പ് ഇവിടേക്ക് നീക്കാനാകില്ല"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"പുതിയ ആപ്പ് വിൻഡോ തുറക്കുന്നു"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"ആപ്പ് വിൻഡോ അടയ്‌ക്കുന്നു"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"ആപ്പ് വിൻഡോ മിനിമൈസ് ചെയ്യുന്നു"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ഫോക്കസ് ചെയ്‌തവ)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ഫോക്കസ് ചെയ്യാത്തവ)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ഇമേഴ്‌സീവ്"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"പുനഃസ്ഥാപിക്കുക"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"വലുതാക്കുക"</string> diff --git a/wmshell/res/values-mn/strings.xml b/wmshell/res/values-mn/strings.xml index 5bf953a7cd..8486c9e83f 100644 --- a/wmshell/res/values-mn/strings.xml +++ b/wmshell/res/values-mn/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Энэ аппыг зөвхөн 1 цонхонд нээх боломжтой"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Апп хоёрдогч дэлгэцэд ажиллахгүй."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Аппыг хоёрдогч дэлгэцэд эхлүүлэх боломжгүй."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Апп бөмбөлгийг дэмждэггүй"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Дэлгэцийг хуваах хуваагч"</string> <string name="divider_title" msgid="1963391955593749442">"Дэлгэцийг хуваах хуваагч"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Зүүн талын бүтэн дэлгэц"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Цонхнуудыг удирдах"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Аспектын харьцааг өөрчлөх"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Харагдах байдлыг оновчлох"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Алдааны дүрс тэмдэг"</string> <string name="close_text" msgid="4986518933445178928">"Хаах"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Цэсийг хаах"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Дэлгэцийн цонх үүсгэх онцлог)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Дэлгэцийг томруулах"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Хэмжээг өөрчлөх"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Аппыг ийш зөөх боломжгүй"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Аппын шинэ цонхыг нээж байна"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Аппын цонхыг хааж байна"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Аппын цонхыг жижгэрүүлж байна"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (сонгосон)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (сонгоогүй)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Бодит мэт"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Сэргээх"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Томруулах"</string> diff --git a/wmshell/res/values-mr/strings.xml b/wmshell/res/values-mr/strings.xml index 5dd4013a0a..2cb04aca30 100644 --- a/wmshell/res/values-mr/strings.xml +++ b/wmshell/res/values-mr/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"हे अ‍ॅप फक्त एका विंडोमध्ये उघडले जाऊ शकते"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"दुसऱ्या डिस्प्लेवर अ‍ॅप कदाचित चालणार नाही."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"दुसऱ्या डिस्प्लेवर अ‍ॅप लाँच होणार नाही."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"अ‍ॅप बबलला सपोर्ट करत नाही"</string> <string name="accessibility_divider" msgid="6407584574218956849">"स्प्लिट स्क्रीन विभाजक"</string> <string name="divider_title" msgid="1963391955593749442">"स्प्लिट स्क्रीन विभाजक"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"डावी फुल स्क्रीन"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"विंडो व्यवस्थापित करा"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"आस्पेक्ट रेशो बदला"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"दृश्य ऑप्टिमाइझ करा"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"एरर आयकन"</string> <string name="close_text" msgid="4986518933445178928">"बंद करा"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"मेनू बंद करा"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (डेस्कटॉप विंडोइंग)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"स्क्रीन मोठी करा"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"आकार बदला"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"अ‍ॅप इथे हलवू शकत नाही"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"नवीन अ‍ॅप विंडो उघडत आहे"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"अ‍ॅपची विंडो बंद करत आहे"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"अ‍ॅप विंडो लहान करत आहे"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (फोकस केलेले)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (फोकस न केलेले)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"इमर्सिव्ह"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"रिस्टोअर करा"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"मोठे करा"</string> diff --git a/wmshell/res/values-ms/strings.xml b/wmshell/res/values-ms/strings.xml index 1ac684f890..1f6cb3bf4b 100644 --- a/wmshell/res/values-ms/strings.xml +++ b/wmshell/res/values-ms/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Apl ini hanya boleh dibuka dalam 1 tetingkap"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Apl mungkin tidak berfungsi pada paparan kedua."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Apl tidak menyokong pelancaran pada paparan kedua."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Apl tidak menyokong gelembung"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Pembahagi skrin pisah"</string> <string name="divider_title" msgid="1963391955593749442">"Pembahagi skrin pisah"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Skrin penuh kiri"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Urus Tetingkap"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Tukar nisbah bidang"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimumkan Paparan"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ikon Ralat"</string> <string name="close_text" msgid="4986518933445178928">"Tutup"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Tutup Menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Tetingkap desktop)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maksimumkan Skrin"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Ubah saiz"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Apl tidak boleh dialihkan ke sini"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Membuka tetingkap apl baharu"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Menutup tetingkap apl"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Meminimumkan tetingkap apl"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Terfokus)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Tidak terfokus)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Mengasyikkan"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Pulihkan"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimumkan"</string> diff --git a/wmshell/res/values-my/strings.xml b/wmshell/res/values-my/strings.xml index 35f4588546..684a52bd39 100644 --- a/wmshell/res/values-my/strings.xml +++ b/wmshell/res/values-my/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"ဤအက်ပ်ကို ဝင်းဒိုး ၁ ခုတွင်သာ ဖွင့်နိုင်သည်"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"ဤအက်ပ်အနေဖြင့် ဒုတိယဖန်သားပြင်ပေါ်တွင် အလုပ်လုပ်မည် မဟုတ်ပါ။"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"ဤအက်ပ်အနေဖြင့် ဖွင့်ရန်စနစ်ကို ဒုတိယဖန်သားပြင်မှ အသုံးပြုရန် ပံ့ပိုးမထားပါ။"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"အက်ပ်သည် ပူဖောင်းကွက်ကို မပံ့ပိုးပါ"</string> <string name="accessibility_divider" msgid="6407584574218956849">"မျက်နှာပြင် ခွဲ၍ပြသခြင်း ပိုင်းခြားစနစ်"</string> <string name="divider_title" msgid="1963391955593749442">"မျက်နှာပြင် ခွဲ၍ပြသခြင်း ပိုင်းခြားစနစ်"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"ဘယ်ဘက် မျက်နှာပြင်အပြည့်"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"ဝင်းဒိုးများ စီမံရန်"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"အချိုးအစား ပြောင်းရန်"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"မြင်ကွင်းကို ပိုကောင်းအောင်လုပ်ရန်"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"အမှားအယွင်း သင်္ကေတ"</string> <string name="close_text" msgid="4986518933445178928">"ပိတ်ရန်"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"မီနူး ပိတ်ရန်"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ဒက်စ်တော့ဝင်းဒိုးမုဒ်)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"စခရင်ကို ချဲ့မည်"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"အရွယ်ပြင်ရန်"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"အက်ပ်ကို ဤနေရာသို့ ရွှေ့၍မရပါ"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"အက်ပ်ဝင်းဒိုးအသစ် ဖွင့်နေသည်"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"အက်ပ်ဝင်းဒိုး ပိတ်ခြင်း"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"အက်ပ်ဝင်းဒိုးကို ချုံ့နေသည်"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (အာရုံပြုထားသည်)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (အာရုံပြုမထားပါ)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ဘက်ပေါင်းစုံ"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"ပြန်ပြောင်းရန်"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"ချဲ့ရန်"</string> diff --git a/wmshell/res/values-nb/strings.xml b/wmshell/res/values-nb/strings.xml index a5db560430..0b6dd8acce 100644 --- a/wmshell/res/values-nb/strings.xml +++ b/wmshell/res/values-nb/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Denne appen kan bare åpnes i ett vindu"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Appen fungerer kanskje ikke på en sekundær skjerm."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Appen kan ikke kjøres på sekundære skjermer."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Appen støtter ikke bobler"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Skilleelement for delt skjerm"</string> <string name="divider_title" msgid="1963391955593749442">"Skilleelement for delt skjerm"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Utvid den venstre delen av skjermen til hele skjermen"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Administrer vinduene"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Endre høyde/bredde-forholdet"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimaliser visning"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Feilikon"</string> <string name="close_text" msgid="4986518933445178928">"Lukk"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Lukk menyen"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (datamaskin-vindusvisning)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maksimer skjermen"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Endre størrelse"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Appen kan ikke flyttes hit"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Åpner et nytt appvindu"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Lukker appvinduet"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimerer appvinduet"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fokusert)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ikke fokusert)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Oppslukende"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Gjenopprett"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimer"</string> diff --git a/wmshell/res/values-ne/strings.xml b/wmshell/res/values-ne/strings.xml index 2b5f36772a..b370a6f7f1 100644 --- a/wmshell/res/values-ne/strings.xml +++ b/wmshell/res/values-ne/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"यो एप एउटा विन्डोमा मात्र खोल्न मिल्छ"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"यो एपले सहायक प्रदर्शनमा काम नगर्नसक्छ।"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"एपले सहायक प्रदर्शनहरूमा लञ्च सुविधालाई समर्थन गर्दैन।"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"एपमा बबल प्रयोग गर्न मिल्दैन"</string> <string name="accessibility_divider" msgid="6407584574218956849">"स्प्लिट स्क्रिन डिभाइडर"</string> <string name="divider_title" msgid="1963391955593749442">"स्प्लिट स्क्रिन डिभाइडर"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"बायाँ भाग फुल स्क्रिन"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"विन्डोहरू व्यवस्थापन गर्नुहोस्"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"एस्पेक्ट रेसियो परिवर्तन गर्नुहोस्"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"भ्यू अप्टिमाइज गर्नुहोस्"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"त्रुटि जनाउने आइकन"</string> <string name="close_text" msgid="4986518933445178928">"बन्द गर्नुहोस्"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"मेनु बन्द गर्नुहोस्"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (डेस्कटप विन्डोइङ)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"स्क्रिन ठुलो बनाउनुहोस्"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"आकार बदल्नुहोस्"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"एप सारेर यहाँ ल्याउन सकिएन"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"एपको नयाँ विन्डो खोल्नुहोस्"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"एपको विन्डो बन्द गरिँदै छ"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"एपको विन्डो मिनिमाइज गरिँदै छ"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (फोकस गरिएको)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (फोकस नगरिएको)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"इमर्सिभ"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"रिस्टोर गर्नुहोस्"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"ठुलो बनाउनुहोस्"</string> diff --git a/wmshell/res/values-nl/strings.xml b/wmshell/res/values-nl/strings.xml index 42d59593ba..19420bd07c 100644 --- a/wmshell/res/values-nl/strings.xml +++ b/wmshell/res/values-nl/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Deze app kan maar in 1 venster worden geopend"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"App werkt mogelijk niet op een secundair scherm."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"App kan niet op secundaire displays worden gestart."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"App ondersteunt geen bubbel"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Scheiding voor gesplitst scherm"</string> <string name="divider_title" msgid="1963391955593749442">"Scheiding voor gesplitst scherm"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Linkerscherm op volledig scherm"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Vensters beheren"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Beeldverhouding wijzigen"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Weergave optimaliseren"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Fouticoon"</string> <string name="close_text" msgid="4986518933445178928">"Sluiten"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Menu sluiten"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (desktopvensterfunctie)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Scherm maximaliseren"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Formaat aanpassen"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Kan de app niet hierheen verplaatsen"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Nieuw app-venster openen"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"App-venster sluiten"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"App-venster minimaliseren"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (gefocust)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (niet gefocust)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersief"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Herstellen"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximaliseren"</string> diff --git a/wmshell/res/values-or/strings.xml b/wmshell/res/values-or/strings.xml index d0229f4b21..9659dc69d9 100644 --- a/wmshell/res/values-or/strings.xml +++ b/wmshell/res/values-or/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"ଏହି ଆପକୁ କେବଳ 1ଟି ୱିଣ୍ଡୋରେ ଖୋଲାଯାଇପାରିବ"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"ସେକେଣ୍ଡାରୀ ଡିସପ୍ଲେରେ ଆପ୍‍ କାମ ନକରିପାରେ।"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"ସେକେଣ୍ଡାରୀ ଡିସପ୍ଲେରେ ଆପ୍‍ ଲଞ୍ଚ ସପୋର୍ଟ କରେ ନାହିଁ।"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"ଆପ ବବଲକୁ ସପୋର୍ଟ କରେ ନାହିଁ"</string> <string name="accessibility_divider" msgid="6407584574218956849">"ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନ ଡିଭାଇଡର"</string> <string name="divider_title" msgid="1963391955593749442">"ସ୍ପ୍ଲିଟ ସ୍କ୍ରିନ ଡିଭାଇଡର"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"ବାମ ପଟକୁ ପୂର୍ଣ୍ଣ ସ୍କ୍ରୀନ୍‍ କରନ୍ତୁ"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"ୱିଣ୍ଡୋଗୁଡ଼ିକୁ ପରିଚାଳନା କରନ୍ତୁ"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"ଚଉଡ଼ା ଓ ଉଚ୍ଚତାର ଅନୁପାତ ପରିବର୍ତ୍ତନ କରନ୍ତୁ"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"ଭ୍ୟୁ ଅପ୍ଟିମାଇଜ କରନ୍ତୁ"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"ତ୍ରୁଟି ଆଇକନ"</string> <string name="close_text" msgid="4986518933445178928">"ବନ୍ଦ କରନ୍ତୁ"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"ମେନୁ ବନ୍ଦ କରନ୍ତୁ"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ଡେସ୍କଟପ ୱିଣ୍ଡୋଇଂ)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"ସ୍କ୍ରିନକୁ ବଡ଼ କରନ୍ତୁ"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"ରିସାଇଜ କରନ୍ତୁ"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ଆପକୁ ଏଠାକୁ ମୁଭ କରାଯାଇପାରିବ ନାହିଁ"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"ନୂଆ ଆପ ୱିଣ୍ଡୋ ଖୋଲୁଛି"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"ଆପ ୱିଣ୍ଡୋକୁ ବନ୍ଦ କରାଯାଉଛି"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"ଆପ ୱିଣ୍ଡୋକୁ ଛୋଟ କରନ୍ତୁ"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ଫୋକସ କରାଯାଇଛି)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ଫୋକସ କରାଯାଇନାହିଁ)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ଇମର୍ସିଭ"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"ରିଷ୍ଟୋର କରନ୍ତୁ"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"ବଡ଼ କରନ୍ତୁ"</string> diff --git a/wmshell/res/values-pa/strings.xml b/wmshell/res/values-pa/strings.xml index 7740560f63..9e34af5c48 100644 --- a/wmshell/res/values-pa/strings.xml +++ b/wmshell/res/values-pa/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"ਇਹ ਐਪ ਸਿਰਫ਼ 1 ਵਿੰਡੋ ਵਿੱਚ ਖੋਲ੍ਹੀ ਜਾ ਸਕਦੀ ਹੈ"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਐਪ ਸੈਕੰਡਰੀ ਡਿਸਪਲੇ \'ਤੇ ਕੰਮ ਨਾ ਕਰੇ।"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"ਐਪ ਸੈਕੰਡਰੀ ਡਿਸਪਲੇਆਂ \'ਤੇ ਲਾਂਚ ਕਰਨ ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੀ"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"ਐਪ ਬਬਲ ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੀ"</string> <string name="accessibility_divider" msgid="6407584574218956849">"ਸਪਲਿਟ ਸਕ੍ਰੀਨ ਵਿਭਾਜਕ"</string> <string name="divider_title" msgid="1963391955593749442">"ਸਪਲਿਟ ਸਕ੍ਰੀਨ ਵਿਭਾਜਕ"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"ਖੱਬੇ ਪੂਰੀ ਸਕ੍ਰੀਨ"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"ਵਿੰਡੋਆਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"ਆਕਾਰ ਅਨੁਪਾਤ ਬਦਲੋ"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"ਦ੍ਰਿਸ਼ ਨੂੰ ਸੁਯੋਗ ਬਣਾਓ"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"ਗੜਬੜ ਪ੍ਰਤੀਕ"</string> <string name="close_text" msgid="4986518933445178928">"ਬੰਦ ਕਰੋ"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"ਮੀਨੂ ਬੰਦ ਕਰੋ"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ਡੈਸਕਟਾਪ ਵਿੰਡੋ)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"ਸਕ੍ਰੀਨ ਦਾ ਆਕਾਰ ਵਧਾਓ"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"ਆਕਾਰ ਬਦਲੋ"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ਐਪ ਨੂੰ ਇੱਥੇ ਨਹੀਂ ਲਿਜਾਇਆ ਜਾ ਸਕਦਾ"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"ਨਵੀਂ ਐਪ ਵਿੰਡੋ ਨੂੰ ਖੋਲ੍ਹਿਆ ਜਾ ਰਿਹਾ ਹੈ"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"ਐਪ ਵਿੰਡੋ ਨੂੰ ਬੰਦ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"ਐਪ ਵਿੰਡੋ ਨੂੰ ਛੋਟਾ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ਫੋਕਸ ਵਿੱਚ ਹੈ)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ਫੋਕਸ ਵਿੱਚ ਨਹੀਂ ਹੈ)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ਇਮਰਸਿਵ"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"ਮੁੜ-ਬਹਾਲ ਕਰੋ"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"ਵੱਡਾ ਕਰੋ"</string> diff --git a/wmshell/res/values-pl/strings.xml b/wmshell/res/values-pl/strings.xml index f726b25305..4c0613b358 100644 --- a/wmshell/res/values-pl/strings.xml +++ b/wmshell/res/values-pl/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Ta aplikacja może być otwarta tylko w 1 oknie."</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Aplikacja może nie działać na dodatkowym ekranie."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplikacja nie obsługuje uruchamiania na dodatkowych ekranach."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplikacja nie obsługuje dymków"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Linia dzielenia ekranu"</string> <string name="divider_title" msgid="1963391955593749442">"Linia dzielenia ekranu"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Lewa część ekranu na pełnym ekranie"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Zarządzaj oknami"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Zmień format obrazu"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Zoptymalizuj widok"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ikona błędu"</string> <string name="close_text" msgid="4986518933445178928">"Zamknij"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Zamknij menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (tryb okien na pulpicie)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maksymalizuj ekran"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Zmień rozmiar"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Nie można przenieść aplikacji tutaj"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Otwarto nowe okno aplikacji"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Zamykanie okna aplikacji"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Zminimalizowano okno aplikacji"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (aktywne okno)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (nieaktywne okno)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Tryb immersyjny"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Przywróć"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksymalizuj"</string> diff --git a/wmshell/res/values-pt-rBR/strings.xml b/wmshell/res/values-pt-rBR/strings.xml index ef3b68f9a0..1c2a3fa490 100644 --- a/wmshell/res/values-pt-rBR/strings.xml +++ b/wmshell/res/values-pt-rBR/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Esse app só pode ser aberto em uma única janela"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"É possível que o app não funcione em uma tela secundária."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"O app não é compatível com a inicialização em telas secundárias."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"O app é incompatível com balões"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Divisor de tela"</string> <string name="divider_title" msgid="1963391955593749442">"Divisor de tela"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Lado esquerdo em tela cheia"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Gerenciar janelas"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Mudar a proporção"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Visualização otimizada"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ícone de erro"</string> <string name="close_text" msgid="4986518933445178928">"Fechar"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Fechar menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (modo janela para computador)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Ampliar tela"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Redimensionar"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Não é possível mover o app para cá"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Abrindo uma nova janela do app"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Fechando a janela do app"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimizando a janela do app"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (em primeiro plano)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (em segundo plano)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Imersivo"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restaurar"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximizar"</string> diff --git a/wmshell/res/values-pt-rPT/strings.xml b/wmshell/res/values-pt-rPT/strings.xml index ccfaa0a86b..ca1005d78d 100644 --- a/wmshell/res/values-pt-rPT/strings.xml +++ b/wmshell/res/values-pt-rPT/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Esta app só pode ser aberta em 1 janela"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"A app pode não funcionar num ecrã secundário."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"A app não é compatível com o início em ecrãs secundários."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"A app não é compatível com o balão"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Divisor do ecrã dividido"</string> <string name="divider_title" msgid="1963391955593749442">"Divisor do ecrã dividido"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Ecrã esquerdo inteiro"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Gerir janelas"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Alterar formato"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Otimizar vista"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ícone de erro"</string> <string name="close_text" msgid="4986518933445178928">"Fechar"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Fechar menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (janelas de computador)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximizar ecrã"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Redimensionar"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Não é possível mover a app para aqui"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"A abrir a nova janela da app"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"A fechar a janela da app"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"A minimizar a janela da app"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (com foco)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (sem foco)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Envolvente"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restaurar"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximizar"</string> diff --git a/wmshell/res/values-pt/strings.xml b/wmshell/res/values-pt/strings.xml index ef3b68f9a0..1c2a3fa490 100644 --- a/wmshell/res/values-pt/strings.xml +++ b/wmshell/res/values-pt/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Esse app só pode ser aberto em uma única janela"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"É possível que o app não funcione em uma tela secundária."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"O app não é compatível com a inicialização em telas secundárias."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"O app é incompatível com balões"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Divisor de tela"</string> <string name="divider_title" msgid="1963391955593749442">"Divisor de tela"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Lado esquerdo em tela cheia"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Gerenciar janelas"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Mudar a proporção"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Visualização otimizada"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ícone de erro"</string> <string name="close_text" msgid="4986518933445178928">"Fechar"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Fechar menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (modo janela para computador)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Ampliar tela"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Redimensionar"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Não é possível mover o app para cá"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Abrindo uma nova janela do app"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Fechando a janela do app"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimizando a janela do app"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (em primeiro plano)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (em segundo plano)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Imersivo"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restaurar"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximizar"</string> diff --git a/wmshell/res/values-ro/strings.xml b/wmshell/res/values-ro/strings.xml index 0fc2f79b4f..d09da5be59 100644 --- a/wmshell/res/values-ro/strings.xml +++ b/wmshell/res/values-ro/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Aplicația se poate deschide într-o singură fereastră"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Este posibil ca aplicația să nu funcționeze pe un ecran secundar."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplicația nu acceptă lansare pe ecrane secundare."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplicația nu acceptă baloane"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Separator pentru ecranul împărțit"</string> <string name="divider_title" msgid="1963391955593749442">"Separator pentru ecranul împărțit"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Partea stângă pe ecran complet"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Gestionează ferestrele"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Schimbă raportul de dimensiuni"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimizează afișarea"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Pictogramă de eroare"</string> <string name="close_text" msgid="4986518933445178928">"Închide"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Închide meniul"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ferestre pe desktop)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximizează fereastra"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Redimensionează"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Aplicația nu poate fi mutată aici"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Se deschide o fereastră nouă a aplicației"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Se închide fereastra aplicației"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Se minimizează fereastra aplicației"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Focalizată)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Nefocalizată)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Captivant"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restabilește"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximizează"</string> diff --git a/wmshell/res/values-ru/strings.xml b/wmshell/res/values-ru/strings.xml index d24e14093c..d9ff3075c4 100644 --- a/wmshell/res/values-ru/strings.xml +++ b/wmshell/res/values-ru/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Это приложение можно открыть только в одном окне."</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Приложение может не работать на дополнительном экране"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Приложение не поддерживает запуск на дополнительных экранах"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Приложение не поддерживает всплывающие чаты."</string> <string name="accessibility_divider" msgid="6407584574218956849">"Разделитель экрана"</string> <string name="divider_title" msgid="1963391955593749442">"Разделитель экрана"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Левый во весь экран"</string> @@ -101,7 +100,7 @@ <string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"Не помогло?\nНажмите, чтобы отменить изменения."</string> <string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"Нет проблем с камерой? Нажмите, чтобы закрыть."</string> <string name="windowing_app_handle_education_tooltip" msgid="2929643449849791854">"Здесь вы найдете меню приложения"</string> - <string name="windowing_desktop_mode_image_button_education_tooltip" msgid="7171915734817051666">"Чтобы открыть сразу несколько приложений, перейдите в многооконный режим"</string> + <string name="windowing_desktop_mode_image_button_education_tooltip" msgid="7171915734817051666">"Чтобы открыть сразу несколько приложений, перейдите в режим компьютерных окон"</string> <string name="windowing_desktop_mode_exit_education_tooltip" msgid="5225660258192054132">"Вернуться в полноэкранный режим можно из меню приложения"</string> <string name="letterbox_education_dialog_title" msgid="7739895354143295358">"Выполняйте несколько задач одновременно"</string> <string name="letterbox_education_split_screen_text" msgid="449233070804658627">"Перетащите сюда другое приложение, чтобы использовать разделение экрана."</string> @@ -122,7 +121,7 @@ <string name="handle_text" msgid="4419667835599523257">"Обозначение приложения"</string> <string name="app_icon_text" msgid="2823268023931811747">"Значок приложения"</string> <string name="fullscreen_text" msgid="1162316685217676079">"Полноэкранный режим"</string> - <string name="desktop_text" msgid="9058641752519570266">"Многооконный режим"</string> + <string name="desktop_text" msgid="9058641752519570266">"Режим компьютерных окон"</string> <string name="split_screen_text" msgid="1396336058129570886">"Разделить экран"</string> <string name="more_button_text" msgid="3655388105592893530">"Ещё"</string> <string name="float_button_text" msgid="9221657008391364581">"Плавающее окно"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Управление окнами"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Изменить соотношение сторон"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Оптимизировать"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Значок ошибки"</string> <string name="close_text" msgid="4986518933445178928">"Закрыть"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Закрыть меню"</string> - <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (многооконный режим)"</string> + <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (режим компьютерных окон)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Развернуть на весь экран"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Изменить размер"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Приложение нельзя сюда переместить"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Открывается новое окно приложения"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Закрытие окна приложения…"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Сворачивается окно приложения"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"Приложение \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" выбрано"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"Приложение \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" не выбрано"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Погружение"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Восстановить"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Развернуть"</string> diff --git a/wmshell/res/values-si/strings.xml b/wmshell/res/values-si/strings.xml index 804fa30d62..32daf89d5b 100644 --- a/wmshell/res/values-si/strings.xml +++ b/wmshell/res/values-si/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"මෙම යෙදුම විවෘත කළ හැක්කේ 1 කවුළුවක පමණයි"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"යෙදුම ද්විතියික සංදර්ශකයක ක්‍රියා නොකළ හැකිය."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"යෙදුම ද්විතීයික සංදර්ශක මත දියත් කිරීම සඳහා සහාය නොදක්වයි."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"යෙදුම බුබුලට සහාය නොදක්වයි"</string> <string name="accessibility_divider" msgid="6407584574218956849">"බෙදුම් තිර වෙන්කරණය"</string> <string name="divider_title" msgid="1963391955593749442">"බෙදුම් තිර වෙන්කරණය"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"වම් පූර්ණ තිරය"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"කවුළු කළමනාකරණය කරන්න"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"දර්ශන අනුපාතය වෙනස් කරන්න"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"දසුන ප්‍රශස්ත කරන්න"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"දෝෂ නිරූපකය"</string> <string name="close_text" msgid="4986518933445178928">"වසන්න"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"මෙනුව වසන්න"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ඩෙස්ක්ටොප් කවුළුකරණය)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"තිරය උපරිම කරන්න"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"ප්‍රතිප්‍රමාණය කරන්න"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"යෙදුම මෙතැනට ගෙන යා නොහැක"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"නව යෙදුම් කවුළුව විවෘත කිරීම"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"යෙදුම් කවුළුව වැසීම"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"යෙදුම් කවුළුව අවම කිරීම"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (අවධානිත)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (අවධානිත නොවේ)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"ගිලෙන සුළු"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"ප්‍රතිසාධනය කරන්න"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"විහිදන්න"</string> diff --git a/wmshell/res/values-sk/strings.xml b/wmshell/res/values-sk/strings.xml index 2d90b2c0df..fd5c7a7518 100644 --- a/wmshell/res/values-sk/strings.xml +++ b/wmshell/res/values-sk/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Táto aplikácia môže byť otvorená iba v jednom okne"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Aplikácia nemusí fungovať na sekundárnej obrazovke."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplikácia nepodporuje spúšťanie na sekundárnych obrazovkách."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplikácia bublinu nepodporuje"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Rozdeľovač obrazovky"</string> <string name="divider_title" msgid="1963391955593749442">"Rozdeľovač obrazovky"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Ľavá – na celú obrazovku"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Spravovať okná"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Zmeniť pomer strán"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimalizovať zobrazenie"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ikona chyby"</string> <string name="close_text" msgid="4986518933445178928">"Zavrieť"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Zavrieť ponuku"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (windowing na pracovnej ploche)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximalizovať obrazovku"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Zmeniť veľkosť"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Aplikácia sa sem nedá presunúť"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Otvára sa nové okno aplikácie"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Zatvára sa okno aplikácie"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimalizuje sa okno aplikácie"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (označené)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (neoznačené)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Pútavé"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Obnoviť"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maximalizovať"</string> diff --git a/wmshell/res/values-sl/strings.xml b/wmshell/res/values-sl/strings.xml index a8f6081126..15a4589095 100644 --- a/wmshell/res/values-sl/strings.xml +++ b/wmshell/res/values-sl/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"To aplikacijo je mogoče odpreti samo v enem oknu"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Aplikacija morda ne bo delovala na sekundarnem zaslonu."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplikacija ne podpira zagona na sekundarnih zaslonih."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplikacija ne podpira oblačka"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Razdelilnik zaslonov"</string> <string name="divider_title" msgid="1963391955593749442">"Razdelilnik zaslonov"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Levi v celozaslonski način"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Upravljanje oken"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Sprememba razmerja stranic"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimizacija pogleda"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ikona za napako"</string> <string name="close_text" msgid="4986518933445178928">"Zapri"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Zapri meni"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (namizni način prikaza več oken hkrati)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maksimiraj zaslon"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Spremeni velikost"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Aplikacije ni mogoče premakniti sem"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Odpiranje novega okna aplikacije"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Zapiranje okna aplikacije"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimiranje okna aplikacije"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (v fokusu)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ni v fokusu)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Poglobljeno"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Obnovi"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimiraj"</string> diff --git a/wmshell/res/values-sq/strings.xml b/wmshell/res/values-sq/strings.xml index c3d8978a81..77316aa860 100644 --- a/wmshell/res/values-sq/strings.xml +++ b/wmshell/res/values-sq/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Ky aplikacion mund të hapet vetëm në 1 dritare"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Aplikacioni mund të mos funksionojë në një ekran dytësor."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Aplikacioni nuk mbështet nisjen në ekrane dytësore."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Aplikacioni nuk e mbështet flluskën"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Ndarësi i ekranit të ndarë"</string> <string name="divider_title" msgid="1963391955593749442">"Ndarësi i ekranit të ndarë"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Ekrani i plotë majtas"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Menaxho dritaret"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Ndrysho raportin e pamjes"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimizo pamjen"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Ikona e gabimit"</string> <string name="close_text" msgid="4986518933445178928">"Mbyll"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Mbyll menynë"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (modaliteti me dritare si në desktop)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maksimizo ekranin"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Ndrysho përmasat"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Aplikacioni nuk mund të zhvendoset këtu"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Po hapet një dritare e re e aplikacionit"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Po mbyllet dritarja e aplikacionit"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Dritarja e aplikacionit po minimizohet"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (në fokus)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (jo në fokus)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Përfshirës"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Restauro"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Maksimizo"</string> diff --git a/wmshell/res/values-sr/strings.xml b/wmshell/res/values-sr/strings.xml index d3b5911f90..66bc2a62ae 100644 --- a/wmshell/res/values-sr/strings.xml +++ b/wmshell/res/values-sr/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Ова апликација може да се отвори само у једном прозору"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Апликација можда неће функционисати на секундарном екрану."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Апликација не подржава покретање на секундарним екранима."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Апликација не подржава облачић"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Разделник подељеног екрана"</string> <string name="divider_title" msgid="1963391955593749442">"Разделник подељеног екрана"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Режим целог екрана за леви екран"</string> @@ -78,14 +77,14 @@ <string name="bubble_dismiss_text" msgid="8816558050659478158">"Одбаци облачић"</string> <string name="bubble_fullscreen_text" msgid="1006758103218086231">"Пребаци на цео екран"</string> <string name="bubbles_dont_bubble_conversation" msgid="310000317885712693">"Не користи облачиће за конверзацију"</string> - <string name="bubbles_user_education_title" msgid="2112319053732691899">"Четујте у облачићима"</string> + <string name="bubbles_user_education_title" msgid="2112319053732691899">"Ћаскајте у облачићима"</string> <string name="bubbles_user_education_description" msgid="4215862563054175407">"Нове конверзације се приказују као плутајуће иконе или облачићи. Додирните да бисте отворили облачић. Превуците да бисте га преместили."</string> <string name="bubbles_user_education_manage_title" msgid="7042699946735628035">"Контролишите облачиће у било ком тренутку"</string> <string name="bubbles_user_education_manage" msgid="3460756219946517198">"Додирните Управљајте да бисте искључили облачиће из ове апликације"</string> <string name="bubbles_user_education_got_it" msgid="3382046149225428296">"Важи"</string> <string name="bubble_overflow_empty_title" msgid="2397251267073294968">"Нема недавних облачића"</string> <string name="bubble_overflow_empty_subtitle" msgid="2627417924958633713">"Овде се приказују недавни и одбачени облачићи"</string> - <string name="bubble_bar_education_stack_title" msgid="2486903590422497245">"Четујте у облачићима"</string> + <string name="bubble_bar_education_stack_title" msgid="2486903590422497245">"Ћаскајте у облачићима"</string> <string name="bubble_bar_education_stack_text" msgid="2446934610817409820">"Нове конверзације се појављују као иконе у доњем углу екрана. Додирните да бисте их проширили или превуците да бисте их одбацили."</string> <string name="bubble_bar_education_manage_title" msgid="6148404487810835924">"Контролишите облачиће у сваком тренутку"</string> <string name="bubble_bar_education_manage_text" msgid="3199732148641842038">"Додирните овде и одредите које апликације и конверзације могу да имају облачић"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Управљајте прозорима"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Промени размеру"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Оптимизујте приказ"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Икона грешке"</string> <string name="close_text" msgid="4986518933445178928">"Затворите"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Затворите мени"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (приказ рачунарских прозора)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Повећај екран"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Прилагоди"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Апликација не може да се премести овде"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Отвара се нови прозор апликације"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Затвара се прозор апликације"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Умањује се прозор апликације"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (фокусирано)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (није фокусирано)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Имерзивно"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Врати"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Увећај"</string> diff --git a/wmshell/res/values-sv/strings.xml b/wmshell/res/values-sv/strings.xml index 12de73a01a..2e77f642b7 100644 --- a/wmshell/res/values-sv/strings.xml +++ b/wmshell/res/values-sv/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Denna app kan bara vara öppen i ett fönster"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Appen kanske inte fungerar på en sekundär skärm."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Appen kan inte köras på en sekundär skärm."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Appen har inte stöd för bubbla"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Avdelare för delad skärm"</string> <string name="divider_title" msgid="1963391955593749442">"Avdelare för delad skärm"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Helskärm på vänster skärm"</string> @@ -105,7 +104,7 @@ <string name="windowing_desktop_mode_exit_education_tooltip" msgid="5225660258192054132">"Återgå till helskärm när som helst från appmenyn"</string> <string name="letterbox_education_dialog_title" msgid="7739895354143295358">"Se och gör mer"</string> <string name="letterbox_education_split_screen_text" msgid="449233070804658627">"Dra till en annan app för att dela upp skärmen"</string> - <string name="letterbox_education_reposition_text" msgid="4589957299813220661">"Dubbeltryck utanför en app för att flytta den"</string> + <string name="letterbox_education_reposition_text" msgid="4589957299813220661">"Tryck snabbt två gånger utanför en app för att flytta den"</string> <string name="letterbox_education_got_it" msgid="4057634570866051177">"OK"</string> <string name="letterbox_education_expand_button_description" msgid="1729796567101129834">"Utöka för mer information."</string> <string name="letterbox_restart_dialog_title" msgid="8543049527871033505">"Vill du starta om för en bättre vy?"</string> @@ -113,7 +112,7 @@ <string name="letterbox_restart_cancel" msgid="1342209132692537805">"Avbryt"</string> <string name="letterbox_restart_restart" msgid="8529976234412442973">"Starta om"</string> <string name="letterbox_restart_dialog_checkbox_title" msgid="5252918008140768386">"Visa inte igen"</string> - <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Dubbeltryck\nför att flytta denna app"</string> + <string name="letterbox_reachability_reposition_text" msgid="3522042240665748268">"Tryck snabbt två gånger\nför att flytta denna app"</string> <string name="maximize_button_text" msgid="8106849394538234709">"Utöka <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="restore_button_text" msgid="5377571986086775288">"Återställ <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> <string name="minimize_button_text" msgid="5213953162664451152">"Minimera <xliff:g id="APP_NAME">%1$s</xliff:g>"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Hantera fönster"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Ändra bildformat"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Optimera vy"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Felikon"</string> <string name="close_text" msgid="4986518933445178928">"Stäng"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Stäng menyn"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fönsterstapling)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Maximera skärmen"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Ändra storlek"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Det går inte att flytta appen hit"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Öppnar nytt appfönster"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Stänger appfönstret"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Minimerar appfönstret"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (i fokus)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (inte i fokus)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersiv"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Återställ"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Utöka"</string> diff --git a/wmshell/res/values-sw/strings.xml b/wmshell/res/values-sw/strings.xml index f647be60ed..3b113375e7 100644 --- a/wmshell/res/values-sw/strings.xml +++ b/wmshell/res/values-sw/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Programu hii inaweza kufunguliwa katika dirisha 1 pekee"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Huenda programu isifanye kazi kwenye dirisha lingine."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Programu hii haiwezi kufunguliwa kwenye madirisha mengine."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Programu haitumii kiputo"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Kitenganishi cha kugawa skrini"</string> <string name="divider_title" msgid="1963391955593749442">"Kitenganishi cha kugawa skrini"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Skrini nzima ya kushoto"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Dhibiti Windows"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Badilisha uwiano"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Boresha Mwonekano"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Aikoni ya Hitilafu"</string> <string name="close_text" msgid="4986518933445178928">"Funga"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Funga Menyu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Kupanga madirisha ya kompyuta ya mezani)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Panua Dirisha kwenye Skrini"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Badilisha ukubwa"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Imeshindwa kuhamishia programu hapa"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Kufungua dirisha jipya la programu"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Inafunga dirisha la programu"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Kupunguza dirisha la programu"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Imeangaziwa)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Haiangaziwi)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Shirikishi"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Rejesha"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Panua"</string> diff --git a/wmshell/res/values-ta/strings.xml b/wmshell/res/values-ta/strings.xml index 8dcd767fb6..4ed3927900 100644 --- a/wmshell/res/values-ta/strings.xml +++ b/wmshell/res/values-ta/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"இந்த ஆப்ஸை 1 சாளரத்தில் மட்டுமே திறக்க முடியும்"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"இரண்டாம்நிலைத் திரையில் ஆப்ஸ் வேலை செய்யாமல் போகக்கூடும்."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"இரண்டாம்நிலைத் திரைகளில் பயன்பாட்டைத் தொடங்க முடியாது."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"குமிழை ஆப்ஸ் ஆதரிப்பதில்லை"</string> <string name="accessibility_divider" msgid="6407584574218956849">"திரைப் பிரிப்பான்"</string> <string name="divider_title" msgid="1963391955593749442">"திரைப் பிரிப்பான்"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"இடது புறம் முழுத் திரை"</string> @@ -98,7 +97,7 @@ <string name="user_aspect_ratio_settings_button_hint" msgid="734835849600713016">"அமைப்புகளில் இந்த ஆப்ஸின் தோற்ற விகிதத்தை மாற்றும்"</string> <string name="user_aspect_ratio_settings_button_description" msgid="4315566801697411684">"தோற்ற விகிதத்தை மாற்றும்"</string> <string name="camera_compat_treatment_suggested_button_description" msgid="8103916969024076767">"கேமரா தொடர்பான சிக்கல்களா?\nமீண்டும் பொருத்த தட்டவும்"</string> - <string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"சிக்கல்கள் சரிசெய்யப்படவில்லையா?\nமுன்போல் மாற்ற தட்டவும்"</string> + <string name="camera_compat_treatment_applied_button_description" msgid="2944157113330703897">"சிக்கல்கள் சரிசெய்யப்படவில்லையா?\nமாற்றியமைக்க தட்டவும்"</string> <string name="camera_compat_dismiss_button_description" msgid="2795364433503817511">"கேமரா தொடர்பான சிக்கல்கள் எதுவும் இல்லையா? நிராகரிக்க தட்டவும்."</string> <string name="windowing_app_handle_education_tooltip" msgid="2929643449849791854">"ஆப்ஸ் மெனுவை இங்கே பார்க்கலாம்"</string> <string name="windowing_desktop_mode_image_button_education_tooltip" msgid="7171915734817051666">"பல ஆப்ஸை ஒன்றாகத் திறக்க டெஸ்க்டாப் சாளரமாக்குதலுக்குச் செல்லலாம்"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"சாளரங்களை நிர்வகிக்கலாம்"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"தோற்ற விகிதத்தை மாற்று"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"காட்சியை மேம்படுத்தும்"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"பிழை ஐகான்"</string> <string name="close_text" msgid="4986518933445178928">"மூடும்"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"மெனுவை மூடும்"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (டெஸ்க்டாப் சாளரமாக்குதல்)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"திரையைப் பெரிதாக்கு"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"அளவை மாற்று"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ஆப்ஸை இங்கே நகர்த்த முடியாது"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"புதிய ஆப்ஸ் சாளரத்தைத் திறக்கிறது"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"ஆப்ஸ் சாளரம் மூடப்படுகிறது"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"ஆப்ஸ் சாளரத்தைக் குறைக்கிறது"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (மையப்படுத்தப்பட்டது)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (மையப்படுத்தப்படவில்லை)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"முழுத்திரையும்"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"மீட்டெடுக்கும்"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"பெரிதாக்கும்"</string> diff --git a/wmshell/res/values-te/strings.xml b/wmshell/res/values-te/strings.xml index d97f979e56..d7f79ca472 100644 --- a/wmshell/res/values-te/strings.xml +++ b/wmshell/res/values-te/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"ఈ యాప్‌ను 1 విండోలో మాత్రమే తెరవవచ్చు"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"ప్రత్యామ్నాయ డిస్‌ప్లేలో యాప్ పని చేయకపోవచ్చు."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"ప్రత్యామ్నాయ డిస్‌ప్లేల్లో ప్రారంభానికి యాప్ మద్దతు లేదు."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"యాప్ బబుల్‌ను సపోర్ట్ చేయట్లేదు"</string> <string name="accessibility_divider" msgid="6407584574218956849">"స్ప్లిట్ స్క్రీన్ డివైడర్"</string> <string name="divider_title" msgid="1963391955593749442">"స్ప్లిట్ స్క్రీన్ డివైడర్"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"ఎడమవైపు ఫుల్-స్క్రీన్‌"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"విండోలను మేనేజ్ చేయండి"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"ఆకార నిష్పత్తిని మార్చండి"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"వీక్షణను ఆప్టిమైజ్ చేయండి"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"ఎర్రర్ చిహ్నం"</string> <string name="close_text" msgid="4986518933445178928">"మూసివేయండి"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"మెనూను మూసివేయండి"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (డెస్క్‌టాప్ వీక్షణ)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"స్క్రీన్ సైజ్‌ను పెంచండి"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"సైజ్ మార్చండి"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"యాప్‌ను ఇక్కడకి తరలించడం సాధ్యం కాదు"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"కొత్త యాప్ విండోను తెరుస్తోంది"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"యాప్ విండోను మూసివేస్తోంది"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"యాప్ విండోను మినిమైజ్ చేస్తోంది"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ఫోకస్డ్)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ఫోకస్డ్‌గా లేదు)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"లీనమయ్యే"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"రీస్టోర్ చేయండి"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"మ్యాగ్జిమైజ్ చేయండి"</string> diff --git a/wmshell/res/values-th/strings.xml b/wmshell/res/values-th/strings.xml index c34b76569a..cb456cbd6d 100644 --- a/wmshell/res/values-th/strings.xml +++ b/wmshell/res/values-th/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"แอปนี้เปิดได้ใน 1 หน้าต่างเท่านั้น"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"แอปอาจไม่ทำงานในจอแสดงผลรอง"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"แอปไม่รองรับการเรียกใช้ในจอแสดงผลรอง"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"แอปไม่รองรับบับเบิล"</string> <string name="accessibility_divider" msgid="6407584574218956849">"เส้นแยกหน้าจอ"</string> <string name="divider_title" msgid="1963391955593749442">"เส้นแยกหน้าจอ"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"เต็มหน้าจอทางซ้าย"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"จัดการหน้าต่าง"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"เปลี่ยนสัดส่วนการแสดงผล"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"เพิ่มประสิทธิภาพมุมมอง"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"ไอคอนข้อผิดพลาด"</string> <string name="close_text" msgid="4986518933445178928">"ปิด"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"ปิดเมนู"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (หน้าต่างเดสก์ท็อป)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"ขยายหน้าจอให้ใหญ่สุด"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"ปรับขนาด"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ย้ายแอปมาที่นี่ไม่ได้"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"กำลังเปิดหน้าต่างแอปใหม่"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"กำลังปิดหน้าต่างแอป"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"กำลังย่อหน้าต่างแอป"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (โฟกัสอยู่)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ไม่โฟกัส)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"สมจริง"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"คืนค่า"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"ขยายใหญ่สุด"</string> diff --git a/wmshell/res/values-tl/strings.xml b/wmshell/res/values-tl/strings.xml index 58db934acd..83a7470251 100644 --- a/wmshell/res/values-tl/strings.xml +++ b/wmshell/res/values-tl/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Sa 1 window lang puwedeng buksan ang app na ito"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Maaaring hindi gumana ang app sa pangalawang display."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Hindi sinusuportahan ng app ang paglulunsad sa mga pangalawang display."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Hindi sinusuportahan ng app ang bubble"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Divider ng split screen"</string> <string name="divider_title" msgid="1963391955593749442">"Divider ng split screen"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"I-full screen ang nasa kaliwa"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Pamahalaan ang Mga Window"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Baguhin ang aspect ratio"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"I-optimize ang View"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Icon ng Error"</string> <string name="close_text" msgid="4986518933445178928">"Isara"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Isara ang Menu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Desktop windowing)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"I-maximize ang Screen"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"I-resize"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Hindi mailipat dito ang app"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Nagbubukas ng bagong window ng app"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Isinasara ang window ng app"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Mini-minimize ang window ng app"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Naka-focus)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Hindi Naka-focus)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersive"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"I-restore"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"I-maximize"</string> diff --git a/wmshell/res/values-tr/strings.xml b/wmshell/res/values-tr/strings.xml index 540632be7c..3d565bc028 100644 --- a/wmshell/res/values-tr/strings.xml +++ b/wmshell/res/values-tr/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Bu uygulama yalnızca 1 pencerede açılabilir"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Uygulama ikincil ekranda çalışmayabilir."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Uygulama ikincil ekranlarda başlatılmayı desteklemiyor."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Uygulama, balonu desteklemiyor"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Bölünmüş ekran ayırıcı"</string> <string name="divider_title" msgid="1963391955593749442">"Bölünmüş ekran ayırıcı"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Solda tam ekran"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Pencereleri yönet"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"En boy oranını değiştir"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Görünümü Optimize Et"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Hata Simgesi"</string> <string name="close_text" msgid="4986518933445178928">"Kapat"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Menüyü kapat"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (masaüstü pencereleme)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Ekranı Büyüt"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Yeniden boyutlandır"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Uygulama buraya taşınamıyor"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Yeni uygulama penceresi açılıyor"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Uygulama penceresi kapatılıyor"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Uygulama penceresi simge durumuna küçültülüyor"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Odaklanmış)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Odaklanmamış)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Tam ekran"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Geri yükle"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Ekranı kapla"</string> diff --git a/wmshell/res/values-uk/strings.xml b/wmshell/res/values-uk/strings.xml index b42c50f31d..6888497324 100644 --- a/wmshell/res/values-uk/strings.xml +++ b/wmshell/res/values-uk/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Цей додаток можна відкрити лише в одному вікні"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Додаток може не працювати на додатковому екрані."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Додаток не підтримує запуск на додаткових екранах."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Додаток не підтримує спливаючі чати"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Розділювач екрана"</string> <string name="divider_title" msgid="1963391955593749442">"Розділювач екрана"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Ліве вікно на весь екран"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Керувати вікнами"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Змінити формат"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Оптимізувати перегляд"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Значок помилки"</string> <string name="close_text" msgid="4986518933445178928">"Закрити"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Закрити меню"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (режим вікон робочого стола)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Розгорнути екран"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Змінити розмір"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Сюди не можна перемістити додаток"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Відкриття нового вікна додатка"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Закриття вікна додатка"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Згортання вікна додатка"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (виділено)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (не виділено)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Реалістичність"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Відновити"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Розгорнути"</string> diff --git a/wmshell/res/values-ur/strings.xml b/wmshell/res/values-ur/strings.xml index 53fd8100cb..cf16e77272 100644 --- a/wmshell/res/values-ur/strings.xml +++ b/wmshell/res/values-ur/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"یہ ایپ صرف 1 ونڈو میں کھولی جا سکتی ہے"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"ممکن ہے ایپ ثانوی ڈسپلے پر کام نہ کرے۔"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"ایپ ثانوی ڈسپلیز پر شروعات کا تعاون نہیں کرتی۔"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"ایپ ببل کو سپورٹ نہیں کرتی ہے"</string> <string name="accessibility_divider" msgid="6407584574218956849">"اسپلٹ اسکرین ڈیوائیڈر"</string> <string name="divider_title" msgid="1963391955593749442">"اسپلٹ اسکرین ڈیوائیڈر"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"بائیں فل اسکرین"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"ونڈوز کا نظم کریں"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"تناسبی شرح کو تبدیل کریں"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"منظر کو بہتر بنائیں"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"خرابی کا آئیکن"</string> <string name="close_text" msgid="4986518933445178928">"بند کریں"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"مینیو بند کریں"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (ڈیسک ٹاپ ونڈوئنگ)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"اسکرین کو بڑا کریں"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"سائز تبدیل کریں"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"ایپ کو یہاں منتقل نہیں کیا جا سکتا"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"نئی ایپ ونڈو کھل رہی ہے"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"ایپ ونڈو بند ہو رہی ہے"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"ایپ ونڈو چھوٹی ہو رہی ہے"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"‫<xliff:g id="APP_NAME">%1$s</xliff:g> (فوکس کردہ)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"‫<xliff:g id="APP_NAME">%1$s</xliff:g> (فوکس کردہ نہیں)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"عمیق"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"بحال کریں"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"بڑا کریں"</string> diff --git a/wmshell/res/values-uz/strings.xml b/wmshell/res/values-uz/strings.xml index 8e2c245078..9b1e30ee8f 100644 --- a/wmshell/res/values-uz/strings.xml +++ b/wmshell/res/values-uz/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Bu ilovani faqat 1 ta oynada ochish mumkin"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Bu ilova qo‘shimcha ekranda ishlamasligi mumkin."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Bu ilova qo‘shimcha ekranlarda ishga tushmaydi."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Ilovada bulutcha ishlamaydi"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Ekranni ikkiga ajratish chizigʻi"</string> <string name="divider_title" msgid="1963391955593749442">"Ekranni ikkiga ajratish chizigʻi"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Chapda to‘liq ekran"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Oynalarni boshqarish"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Tomonlar nisbatini oʻzgartirish"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Koʻrinishni optimallashtirish"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Xatolik belgisi"</string> <string name="close_text" msgid="4986518933445178928">"Yopish"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Menyuni yopish"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Desktop rejimidagi oynalar)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Ekranni yoyish"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Oʻlchamini oʻzgartirish"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Ilova bu yerga surilmaydi"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Yangi ilova oynasi ochilmoqda"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Ilova oynasi yopilmoqda"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Ilova oynasi kichraytirilmoqda"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fokuslangan)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (fokuslanmagan)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Immersiv"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Tiklash"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Yoyish"</string> diff --git a/wmshell/res/values-vi/strings.xml b/wmshell/res/values-vi/strings.xml index dd4066dfac..4397ccddc4 100644 --- a/wmshell/res/values-vi/strings.xml +++ b/wmshell/res/values-vi/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Ứng dụng này chỉ có thể mở trong 1 cửa sổ"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Ứng dụng có thể không hoạt động trên màn hình phụ."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Ứng dụng không hỗ trợ khởi chạy trên màn hình phụ."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"Ứng dụng không hỗ trợ bong bóng"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Trình chia đôi màn hình"</string> <string name="divider_title" msgid="1963391955593749442">"Trình chia đôi màn hình"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Toàn màn hình bên trái"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Quản lý cửa sổ"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Thay đổi tỷ lệ khung hình"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Tối ưu hoá chế độ xem"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Biểu tượng lỗi"</string> <string name="close_text" msgid="4986518933445178928">"Đóng"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Đóng trình đơn"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Chế độ cửa sổ trên máy tính)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Mở rộng màn hình"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Đổi kích thước"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"Không di chuyển được ứng dụng đến đây"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Đang mở cửa sổ ứng dụng mới"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Đang đóng cửa sổ ứng dụng"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Đang thu nhỏ cửa sổ ứng dụng"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Đã lấy tiêu điểm)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Chưa lấy tiêu điểm)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Hiển thị tối đa"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Khôi phục"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Phóng to tối đa"</string> diff --git a/wmshell/res/values-zh-rCN/strings.xml b/wmshell/res/values-zh-rCN/strings.xml index 14ac1c39b8..6986115d24 100644 --- a/wmshell/res/values-zh-rCN/strings.xml +++ b/wmshell/res/values-zh-rCN/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"此应用只能在 1 个窗口中打开"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"应用可能无法在辅显示屏上正常运行。"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"应用不支持在辅显示屏上启动。"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"该应用不支持气泡框"</string> <string name="accessibility_divider" msgid="6407584574218956849">"分屏分隔线"</string> <string name="divider_title" msgid="1963391955593749442">"分屏分隔线"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"左侧全屏"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"管理窗口"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"更改宽高比"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"优化视图"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"错误图标"</string> <string name="close_text" msgid="4986518933445178928">"关闭"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"关闭菜单"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g>(窗口化模式)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"最大化屏幕"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"调整大小"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"无法将应用移至此处"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"正在打开新的应用窗口"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"正在关闭应用窗口"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"正在最小化应用窗口"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g>(已聚焦)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g>(未聚焦)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"沉浸式"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"恢复"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"最大化"</string> diff --git a/wmshell/res/values-zh-rHK/strings.xml b/wmshell/res/values-zh-rHK/strings.xml index 62e46db899..6252efb375 100644 --- a/wmshell/res/values-zh-rHK/strings.xml +++ b/wmshell/res/values-zh-rHK/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"此應用程式只可在 1 個視窗中開啟"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"應用程式可能無法在次要顯示屏上運作。"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"應用程式無法在次要顯示屏上啟動。"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"應用程式不支援小視窗"</string> <string name="accessibility_divider" msgid="6407584574218956849">"分割螢幕分隔線"</string> <string name="divider_title" msgid="1963391955593749442">"分割螢幕分隔線"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"左邊全螢幕"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"管理視窗"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"變更長寬比"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"優化檢視模式"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"錯誤圖示"</string> <string name="close_text" msgid="4986518933445178928">"關閉"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"關閉選單"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (桌面電腦視窗模式)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"畫面最大化"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"調整大小"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"應用程式無法移至這裡"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"正在開啟新應用程式視窗"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"閂緊應用程式視窗"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"正在將應用程式視窗縮到最小"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (焦點)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (非焦點)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"身歷其境"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"還原"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"最大化"</string> diff --git a/wmshell/res/values-zh-rTW/strings.xml b/wmshell/res/values-zh-rTW/strings.xml index f36f616355..3c230349fd 100644 --- a/wmshell/res/values-zh-rTW/strings.xml +++ b/wmshell/res/values-zh-rTW/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"這個應用程式只能在 1 個視窗中開啟"</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"應用程式可能無法在次要顯示器上運作。"</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"應用程式無法在次要顯示器上啟動。"</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"應用程式不支援泡泡"</string> <string name="accessibility_divider" msgid="6407584574218956849">"分割畫面分隔線"</string> <string name="divider_title" msgid="1963391955593749442">"分割畫面分隔線"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"以全螢幕顯示左側畫面"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"管理視窗"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"變更顯示比例"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"最佳化檢視畫面"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"錯誤圖示"</string> <string name="close_text" msgid="4986518933445178928">"關閉"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"關閉選單"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (電腦分割視窗)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"畫面最大化"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"調整大小"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"應用程式無法移至此處"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"正在開啟新的應用程式視窗"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"正在關閉應用程式視窗"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"正在最小化應用程式視窗"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (前景)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (背景)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"沉浸"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"還原"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"最大化"</string> diff --git a/wmshell/res/values-zu/strings.xml b/wmshell/res/values-zu/strings.xml index 1d20e40900..61dacd4b4a 100644 --- a/wmshell/res/values-zu/strings.xml +++ b/wmshell/res/values-zu/strings.xml @@ -36,7 +36,6 @@ <string name="dock_multi_instances_not_supported_text" msgid="5011042177901502928">"Le-app ingavulwa kuphela ewindini eli-1."</string> <string name="forced_resizable_secondary_display" msgid="1768046938673582671">"Uhlelo lokusebenza kungenzeka lungasebenzi kusibonisi sesibili."</string> <string name="activity_launch_on_secondary_display_failed_text" msgid="4226485344988071769">"Uhlelo lokusebenza alusekeli ukuqalisa kuzibonisi zesibili."</string> - <string name="bubble_not_supported_text" msgid="8843806122229754809">"I-app ayilisekeli ibhamuza"</string> <string name="accessibility_divider" msgid="6407584574218956849">"Isihlukanisi sokuhlukanisa isikrini"</string> <string name="divider_title" msgid="1963391955593749442">"Isihlukanisi sokuhlukanisa isikrini"</string> <string name="accessibility_action_divider_left_full" msgid="1792313656305328536">"Isikrini esigcwele esingakwesokunxele"</string> @@ -134,18 +133,12 @@ <string name="manage_windows_text" msgid="5567366688493093920">"Phatha Amawindi"</string> <string name="change_aspect_ratio_text" msgid="9104456064548212806">"Shintsha ukubukeka kwesilinganiselo"</string> <string name="handle_menu_restart_text" msgid="3907767216238298098">"Lungiselela Ukubuka"</string> - <string name="handle_menu_error_icon_text" msgid="7200375184879808684">"Isithonjana Sephutha"</string> <string name="close_text" msgid="4986518933445178928">"Vala"</string> <string name="collapse_menu_text" msgid="7515008122450342029">"Vala Imenyu"</string> <string name="desktop_mode_app_header_chip_text" msgid="7617377295944971651">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Ukwenziwa kwamawindi amaningi kwedeskithophu)"</string> <string name="desktop_mode_maximize_menu_maximize_text" msgid="3275717276171114411">"Khulisa Isikrini Sifike Ekugcineni"</string> <string name="desktop_mode_maximize_menu_snap_text" msgid="5673738963174074006">"Shintsha usayizi"</string> <string name="desktop_mode_non_resizable_snap_text" msgid="3771776422751387878">"I-app ayikwazi ukuhanjiswa lapha"</string> - <string name="desktop_mode_talkback_state_opening" msgid="8505494249513712682">"Ivula iwindi elisha le-app"</string> - <string name="desktop_mode_talkback_state_closing" msgid="6791583518636526904">"Ivala iwindi le-app"</string> - <string name="desktop_mode_talkback_state_minimizing" msgid="7406911785134757827">"Ukunciphisa iwindi le-app"</string> - <string name="desktop_mode_talkback_state_focused" msgid="6287982923335568236">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Igxilile)"</string> - <string name="desktop_mode_talkback_state_not_focused" msgid="4640618691603218929">"<xliff:g id="APP_NAME">%1$s</xliff:g> (Akugxilile)"</string> <string name="desktop_mode_maximize_menu_immersive_button_text" msgid="559492223133829481">"Okugxilile"</string> <string name="desktop_mode_maximize_menu_immersive_restore_button_text" msgid="4900114367354709257">"Buyisela"</string> <string name="desktop_mode_maximize_menu_maximize_button_text" msgid="3090199175564175845">"Khulisa"</string> diff --git a/wmshell/res/values/attrs.xml b/wmshell/res/values/attrs.xml index 94373906dd..4ba0468a74 100644 --- a/wmshell/res/values/attrs.xml +++ b/wmshell/res/values/attrs.xml @@ -30,18 +30,4 @@ <attr name="android:src" format="reference" /> <attr name="android:drawableTint" format="color" /> </declare-styleable> - - - <declare-styleable name="BoxShadowSettings"> - <attr name="boxShadowBlurRadius" format="dimension" /> - <attr name="boxShadowSpreadRadius" format="dimension" /> - <attr name="boxShadowOffsetX" format="dimension" /> - <attr name="boxShadowOffsetY" format="dimension" /> - <attr name="boxShadowColor" format="color" /> - </declare-styleable> - - <declare-styleable name="BorderSettings"> - <attr name="borderStrokeWidth" format="dimension" /> - <attr name="borderColor" format="color" /> - </declare-styleable> </resources> diff --git a/wmshell/res/values/config.xml b/wmshell/res/values/config.xml index 9463d9cbc0..59e6c7786c 100644 --- a/wmshell/res/values/config.xml +++ b/wmshell/res/values/config.xml @@ -23,6 +23,10 @@ TODO(b/238217847): This config is temporary until we refactor the base WMComponent. --> <bool name="config_registerShellTaskOrganizerOnInit">true</bool> + <!-- Determines whether to register the shell transitions on init. + TODO(b/238217847): This config is temporary until we refactor the base WMComponent. --> + <bool name="config_registerShellTransitionsOnInit">true</bool> + <!-- Animation duration for PIP when entering. --> <integer name="config_pipEnterAnimationDuration">425</integer> @@ -138,10 +142,6 @@ Needs to be less that or equal to 1. --> <item name="config_pipLargeScreenOptimizedAspectRatio" format="float" type="dimen">0.5625</item> - <!-- The opacity of the PiP window when it's being dragged to enter or exit an unfocused display - in connected displays extended mode. Needs to be between 0 and 1. --> - <item name="config_pipDraggingAcrossDisplaysOpacity" format="float" type="dimen">0.75</item> - <!-- The default gravity for the picture-in-picture window. Currently, this maps to Gravity.BOTTOM | Gravity.RIGHT --> <integer name="config_defaultPictureInPictureGravity">0x55</integer> diff --git a/wmshell/res/values/dimen.xml b/wmshell/res/values/dimen.xml index 838c879d40..ca18c97f91 100644 --- a/wmshell/res/values/dimen.xml +++ b/wmshell/res/values/dimen.xml @@ -291,6 +291,9 @@ <!-- Corner radius for expanded view drop target --> <dimen name="bubble_bar_expanded_view_drop_target_corner">28dp</dimen> <dimen name="bubble_bar_expanded_view_drop_target_padding">24dp</dimen> + <dimen name="bubble_bar_expanded_view_drop_target_padding_top">60dp</dimen> + <dimen name="bubble_bar_expanded_view_drop_target_padding_bottom">24dp</dimen> + <dimen name="bubble_bar_expanded_view_drop_target_padding_horizontal">48dp</dimen> <dimen name="bubble_bar_drop_target_width">84dp</dimen> <dimen name="bubble_bar_drop_target_height">48dp</dimen> <!-- Width of the box around bottom center of the screen where drag only leads to dismiss --> @@ -303,8 +306,6 @@ <dimen name="bubble_transform_area_height">140dp</dimen> <!-- How much elevation a bubble ui needs when dragged, must be above drop target & dismiss. --> <dimen name="dragged_bubble_elevation">3dp</dimen> - <!-- Space between the bottom dismiss view and the bottom edge of the screen --> - <dimen name="bubble_bar_dismiss_view_bottom_margin">60dp</dimen> <!-- Bottom and end margin for compat buttons. --> <dimen name="compat_button_margin">24dp</dimen> @@ -661,13 +662,6 @@ <!-- The horizontal inset to apply to the close button's ripple drawable --> <dimen name="desktop_mode_header_close_ripple_inset_horizontal">6dp</dimen> - <!-- The max width of the app name shown on the app header --> - <dimen name="desktop_mode_header_app_name_max_width">130dp</dimen> - <!-- The width of the expand menu error image on the app header --> - <dimen name="desktop_mode_header_expand_menu_error_image_width">16dp</dimen> - <!-- The margin added between app name and expand menu error image on the app header --> - <dimen name="desktop_mode_header_expand_menu_error_image_margin">8dp</dimen> - <!-- The padding added to all sides of windowing education tooltip --> <dimen name="desktop_windowing_education_tooltip_padding">8dp</dimen> diff --git a/wmshell/res/values/strings.xml b/wmshell/res/values/strings.xml index 508f9dff30..1fd4704f78 100644 --- a/wmshell/res/values/strings.xml +++ b/wmshell/res/values/strings.xml @@ -74,8 +74,6 @@ <string name="forced_resizable_secondary_display">App may not work on a secondary display.</string> <!-- Warning message when we try to launch a non-resizeable activity on a secondary display and launch it on the primary instead. --> <string name="activity_launch_on_secondary_display_failed_text">App does not support launch on secondary displays.</string> - <!-- Warning message when we try to bubble a task in an unsupported environment [CHAR LIMIT=NONE] --> - <string name="bubble_not_supported_text">App does not support bubble</string> <!-- Accessibility label and window tile for the divider that separates the windows in split screen mode [CHAR LIMIT=NONE] --> <string name="accessibility_divider">Split screen divider</string> @@ -318,8 +316,6 @@ <string name="change_aspect_ratio_text">Change aspect ratio</string> <!-- Accessibility text for the handle menu restart button [CHAR LIMIT=NONE] --> <string name="handle_menu_restart_text">Optimize View</string> - <!-- Accessibility text for the handle menu error icon [CHAR LIMIT=NONE] --> - <string name="handle_menu_error_icon_text">Error Icon</string> <!-- Accessibility text for the handle menu close button [CHAR LIMIT=NONE] --> <string name="close_text">Close</string> <!-- Accessibility text for the handle menu close menu button [CHAR LIMIT=NONE] --> @@ -332,18 +328,6 @@ <string name="desktop_mode_maximize_menu_snap_text">Resize</string> <!-- Snap resizing non-resizable string. --> <string name="desktop_mode_non_resizable_snap_text">App can\'t be moved here</string> - - <!-- State description for app window opening. --> - <string name="desktop_mode_talkback_state_opening">Opening new app window</string> - <!-- State description for app window closing. --> - <string name="desktop_mode_talkback_state_closing">Closing app window</string> - <!-- State description for app window minimizing. --> - <string name="desktop_mode_talkback_state_minimizing">Minimizing app window</string> - <!-- State description for app window gaining focus. --> - <string name="desktop_mode_talkback_state_focused"><xliff:g id="app_name" example="Chrome">%1$s</xliff:g> (Focused)</string> - <!-- State description for app window losing focus. --> - <string name="desktop_mode_talkback_state_not_focused"><xliff:g id="app_name" example="Chrome">%1$s</xliff:g> (Not Focused)</string> - <!-- Accessibility text for the Maximize Menu's immersive button [CHAR LIMIT=NONE] --> <string name="desktop_mode_maximize_menu_immersive_button_text">Immersive</string> <!-- Accessibility text for the Maximize Menu's immersive restore button [CHAR LIMIT=NONE] --> diff --git a/wmshell/res/values/styles.xml b/wmshell/res/values/styles.xml index b7030d96c6..678a43e70c 100644 --- a/wmshell/res/values/styles.xml +++ b/wmshell/res/values/styles.xml @@ -43,8 +43,8 @@ <style name="DesktopModeHandleMenuActionButton"> <item name="android:layout_width">match_parent</item> <item name="android:layout_height">52dp</item> - <item name="android:textColor">@androidprv:color/materialColorOnSurface</item> - <item name="android:drawableTint">@androidprv:color/materialColorOnSurface</item> + <item name="android:textColor">?android:attr/textColorPrimary</item> + <item name="android:drawableTint">?android:attr/textColorPrimary</item> <item name="android:importantForAccessibility">yes</item> <item name="android:gravity">start|center_vertical</item> <item name="android:paddingHorizontal">16dp</item> @@ -66,7 +66,7 @@ <item name="android:textSize">14sp</item> <item name="android:lineHeight">20sp</item> <item name="android:textFontWeight">500</item> - <item name="android:textColor">@androidprv:color/materialColorOnSurface</item> + <item name="android:textColor">?android:attr/textColorPrimary</item> <item name="android:ellipsize">marquee</item> <item name="android:scrollHorizontally">true</item> <item name="android:singleLine">true</item> @@ -101,7 +101,7 @@ <style name="RestartDialogTitleText"> <item name="android:textSize">24sp</item> - <item name="android:textColor">@androidprv:color/materialColorOnSurface</item> + <item name="android:textColor">?android:attr/textColorPrimary</item> <item name="android:lineSpacingExtra">8sp</item> <item name="android:fontFamily">@*android:string/config_headlineFontFamily</item> </style> @@ -113,23 +113,23 @@ <style name="RestartDialogBodyText" parent="RestartDialogBodyStyle"> <item name="android:letterSpacing">0.02</item> - <item name="android:textColor">@androidprv:color/materialColorOnSurfaceVariant</item> + <item name="android:textColor">?android:attr/textColorSecondary</item> <item name="android:lineSpacingExtra">6sp</item> </style> <style name="RestartDialogCheckboxText" parent="RestartDialogBodyStyle"> - <item name="android:textColor">@androidprv:color/materialColorOnSurface</item> + <item name="android:textColor">?android:attr/textColorPrimary</item> <item name="android:lineSpacingExtra">6sp</item> </style> <style name="RestartDialogDismissButton" parent="RestartDialogBodyStyle"> <item name="android:lineSpacingExtra">2sp</item> - <item name="android:textColor">@androidprv:color/materialColorPrimary</item> + <item name="android:textColor">?android:attr/textColorPrimary</item> </style> <style name="RestartDialogConfirmButton" parent="RestartDialogBodyStyle"> <item name="android:lineSpacingExtra">2sp</item> - <item name="android:textColor">@androidprv:color/materialColorOnPrimary</item> + <item name="android:textColor">?android:attr/textColorPrimaryInverse</item> </style> <style name="ReachabilityEduHandLayout" parent="Theme.AppCompat.Light"> @@ -145,98 +145,4 @@ </item> </style> - <style name="BoxShadowParamsKeyUnfocused"> - <item name="boxShadowColor">#0A000000</item> - <item name="boxShadowOffsetX">0dp</item> - <item name="boxShadowOffsetY">0dp</item> - <item name="boxShadowBlurRadius">12dp</item> - <item name="boxShadowSpreadRadius">0dp</item> - </style> - - <style name="BoxShadowParamsKeyFocused"> - <item name="boxShadowColor">#19000000</item> - <item name="boxShadowOffsetX">0dp</item> - <item name="boxShadowOffsetY">0dp</item> - <item name="boxShadowBlurRadius">24dp</item> - <item name="boxShadowSpreadRadius">0dp</item> - </style> - - <style name="BoxShadowParamsAmbientUnfocused"> - <item name="boxShadowColor">#1F000000</item> - <item name="boxShadowOffsetX">0dp</item> - <item name="boxShadowOffsetY">6dp</item> - <item name="boxShadowBlurRadius">12dp</item> - <item name="boxShadowSpreadRadius">0dp</item> - </style> - - <style name="BoxShadowParamsAmbientFocused"> - <item name="boxShadowColor">#33000000</item> - <item name="boxShadowOffsetX">0dp</item> - <item name="boxShadowOffsetY">16dp</item> - <item name="boxShadowBlurRadius">24dp</item> - <item name="boxShadowSpreadRadius">0dp</item> - </style> - - <style name="BoxShadowParamsPIPLight1"> - <item name="boxShadowColor">#0A000000</item> - <item name="boxShadowOffsetX">0dp</item> - <item name="boxShadowOffsetY">0dp</item> - <item name="boxShadowBlurRadius">14dp</item> - <item name="boxShadowSpreadRadius">0dp</item> - </style> - - <style name="BoxShadowParamsPIPLight2"> - <item name="boxShadowColor">#1A000000</item> - <item name="boxShadowOffsetX">0dp</item> - <item name="boxShadowOffsetY">2dp</item> - <item name="boxShadowBlurRadius">8dp</item> - <item name="boxShadowSpreadRadius">0dp</item> - </style> - - <style name="BoxShadowParamsPIPDark1"> - <item name="boxShadowColor">#33000000</item> - <item name="boxShadowOffsetX">0dp</item> - <item name="boxShadowOffsetY">0dp</item> - <item name="boxShadowBlurRadius">14dp</item> - <item name="boxShadowSpreadRadius">0dp</item> - </style> - - <style name="BoxShadowParamsPIPDark2"> - <item name="boxShadowColor">#33000000</item> - <item name="boxShadowOffsetX">0dp</item> - <item name="boxShadowOffsetY">2dp</item> - <item name="boxShadowBlurRadius">8dp</item> - <item name="boxShadowSpreadRadius">0dp</item> - </style> - - <style name="BorderSettingsUnfocusedLight"> - <item name="borderStrokeWidth">1dp</item> - <item name="borderColor">#32BDC1C6</item> - </style> - - <style name="BorderSettingsFocusedLight"> - <item name="borderStrokeWidth">1dp</item> - <item name="borderColor">#4DBDC1C6</item> - </style> - - <style name="BorderSettingsUnfocusedDark"> - <item name="borderStrokeWidth">1dp</item> - <item name="borderColor">#339AA0A6</item> - </style> - - <style name="BorderSettingsFocusedDark"> - <item name="borderStrokeWidth">1dp</item> - <item name="borderColor">#579AA0A6</item> - </style> - - <style name="BorderSettingsPIPLight"> - <item name="borderStrokeWidth">1dp</item> - <item name="borderColor">#27BDC1C6</item> - </style> - - <style name="BorderSettingsPIPDark"> - <item name="borderStrokeWidth">1dp</item> - <item name="borderColor">#339AA0A6</item> - </style> - </resources> diff --git a/wmshell/shared/Android.bp b/wmshell/shared/Android.bp index 9bc79e855c..af46ca298e 100644 --- a/wmshell/shared/Android.bp +++ b/wmshell/shared/Android.bp @@ -57,7 +57,6 @@ android_library { "androidx.core_core-animation", "androidx.dynamicanimation_dynamicanimation", "com_android_wm_shell_flags_lib", - "com.android.window.flags.window-aconfig-java", "jsr330", ], kotlincflags: ["-Xjvm-default=all"], @@ -92,6 +91,5 @@ java_library { ], static_libs: [ "com_android_wm_shell_flags_lib", - "com.android.window.flags.window-aconfig-java", ], } diff --git a/wmshell/shared/res/values/config.xml b/wmshell/shared/res/values/config.xml index 552d398b07..a1d81cea09 100644 --- a/wmshell/shared/res/values/config.xml +++ b/wmshell/shared/res/values/config.xml @@ -15,6 +15,4 @@ limitations under the License. --> <resources> - <!-- The time duration for animating a fullscreen task to a desktop. --> - <integer name="to_desktop_animation_duration_ms">336</integer> </resources> \ No newline at end of file diff --git a/wmshell/shared/res/values/dimen.xml b/wmshell/shared/res/values/dimen.xml index 948a7ce43c..c3987caa87 100644 --- a/wmshell/shared/res/values/dimen.xml +++ b/wmshell/shared/res/values/dimen.xml @@ -19,7 +19,8 @@ <dimen name="floating_dismiss_background_size">96dp</dimen> <!-- Bubble drag zone dimensions --> - <dimen name="drag_zone_dismiss_radius">96dp</dimen> + <dimen name="drag_zone_dismiss_fold">140dp</dimen> + <dimen name="drag_zone_dismiss_tablet">200dp</dimen> <dimen name="drag_zone_bubble_fold">140dp</dimen> <dimen name="drag_zone_bubble_tablet">200dp</dimen> <dimen name="drag_zone_full_screen_width">512dp</dimen> @@ -38,16 +39,16 @@ <dimen name="drag_zone_v_split_from_expanded_view_height_fold_short">100dp</dimen> <!-- Bubble drop target dimensions --> + <dimen name="drop_target_elevation">2dp</dimen> <dimen name="drop_target_radius">28dp</dimen> <dimen name="drop_target_stroke">2dp</dimen> <dimen name="drop_target_full_screen_padding">20dp</dimen> <dimen name="drop_target_desktop_window_padding_small">100dp</dimen> <dimen name="drop_target_desktop_window_padding_large">130dp</dimen> - <dimen name="drop_target_expanded_view_width">330dp</dimen> - <dimen name="drop_target_expanded_view_height">578dp</dimen> - <dimen name="drop_target_expanded_view_padding_bottom">108dp</dimen> - <dimen name="drop_target_expanded_view_padding_horizontal">24dp</dimen> - <dimen name="drop_target_bubble_bar_padding_horizontal">24dp</dimen> + <dimen name="drop_target_expanded_view_width">330</dimen> + <dimen name="drop_target_expanded_view_height">578</dimen> + <dimen name="drop_target_expanded_view_padding_bottom">108</dimen> + <dimen name="drop_target_expanded_view_padding_horizontal">24</dimen> <!-- The corner radius of freeform tasks in desktop windowing. --> <dimen name="desktop_windowing_freeform_rounded_corner_radius">16dp</dimen> diff --git a/wmshell/shared/src/com/android/wm/shell/shared/DesktopModeStatus.java b/wmshell/shared/src/com/android/wm/shell/shared/DesktopModeStatus.java index 8908cedb32..6351722c15 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/DesktopModeStatus.java +++ b/wmshell/shared/src/com/android/wm/shell/shared/DesktopModeStatus.java @@ -23,7 +23,7 @@ import android.os.Build; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; -import com.android.window.flags2.Flags; +import com.android.window.flags.Flags; /** * Constants for desktop mode feature diff --git a/wmshell/shared/src/com/android/wm/shell/shared/FocusTransitionListener.java b/wmshell/shared/src/com/android/wm/shell/shared/FocusTransitionListener.java index ef69643bc3..02a799189f 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/FocusTransitionListener.java +++ b/wmshell/shared/src/com/android/wm/shell/shared/FocusTransitionListener.java @@ -16,8 +16,6 @@ package com.android.wm.shell.shared; -import android.app.ActivityManager; - import com.android.wm.shell.shared.annotations.ExternalThread; /** @@ -33,6 +31,6 @@ public interface FocusTransitionListener { /** * Called when the per-app or system-wide focus state has changed for a task. */ - default void onFocusedTaskChanged(ActivityManager.RunningTaskInfo taskInfo, - boolean isFocusedOnDisplay, boolean isFocusedGlobally) {} + default void onFocusedTaskChanged(int taskId, boolean isFocusedOnDisplay, + boolean isFocusedGlobally) {} } diff --git a/wmshell/shared/src/com/android/wm/shell/shared/GroupedTaskInfo.java b/wmshell/shared/src/com/android/wm/shell/shared/GroupedTaskInfo.java index ee69a66178..006dc1439d 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/GroupedTaskInfo.java +++ b/wmshell/shared/src/com/android/wm/shell/shared/GroupedTaskInfo.java @@ -224,20 +224,19 @@ public class GroupedTaskInfo implements Parcelable { /** * Get primary {@link TaskInfo}. - * Nullable only if the group if TYPE_DESK, non-null for TYPE_FULLSCREEN and TYPE_SPLIT. * * @throws IllegalStateException if the group is TYPE_MIXED. */ - @Nullable + @NonNull public TaskInfo getTaskInfo1() { if (mType == TYPE_MIXED) { throw new IllegalStateException("No indexed tasks for a mixed task"); } - return CollectionsKt.firstOrNull(mTasks); + return mTasks.getFirst(); } /** - * Get secondary {@link TaskInfo}, used primarily for TYPE_SPLIT, not null for TYPE_SPLIT. + * Get secondary {@link TaskInfo}, used primarily for TYPE_SPLIT. * * @throws IllegalStateException if the group is TYPE_MIXED. */ diff --git a/wmshell/shared/src/com/android/wm/shell/shared/TransitionUtil.java b/wmshell/shared/src/com/android/wm/shell/shared/TransitionUtil.java index efb2183df5..851987269c 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/TransitionUtil.java +++ b/wmshell/shared/src/com/android/wm/shell/shared/TransitionUtil.java @@ -17,7 +17,6 @@ package com.android.wm.shell.shared; import static android.app.ActivityTaskManager.INVALID_TASK_ID; -import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.view.RemoteAnimationTarget.MODE_CHANGING; import static android.view.RemoteAnimationTarget.MODE_CLOSING; import static android.view.RemoteAnimationTarget.MODE_OPENING; @@ -125,12 +124,6 @@ public class TransitionUtil { return isNonApp(change) && change.hasFlags(FLAG_IS_DIVIDER_BAR); } - /** Returns `true` if `change` is a pinned Task. */ - private static boolean isPipTask(TransitionInfo.Change change) { - return change.getTaskInfo() != null - && change.getTaskInfo().getWindowingMode() == WINDOWING_MODE_PINNED; - } - /** Returns `true` if `change` is an app's dim layer. */ public static boolean isDimLayer(TransitionInfo.Change change) { return isNonApp(change) && change.hasFlags(FLAG_IS_DIM_LAYER); @@ -317,10 +310,9 @@ public class TransitionUtil { // actual dim value). t.setAlpha(change.getLeash(), 1.0f); } - if (!isDividerBar(change) && !isPipTask(change)) { - // For certain components such as Divider and PiP, don't modify its inner leash - // position when creating the outer leash for the transition. In case the position - // being wrong after the transition finished. + if (!isDividerBar(change)) { + // For divider, don't modify its inner leash position when creating the outer leash + // for the transition. In case the position being wrong after the transition finished. t.setPosition(change.getLeash(), 0, 0); } t.setLayer(change.getLeash(), 0); diff --git a/wmshell/shared/src/com/android/wm/shell/shared/animation/MinimizeAnimator.kt b/wmshell/shared/src/com/android/wm/shell/shared/animation/MinimizeAnimator.kt index fc9648e316..4ecace0292 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/animation/MinimizeAnimator.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/animation/MinimizeAnimator.kt @@ -23,12 +23,9 @@ import android.content.Context import android.os.Handler import android.view.Choreographer import android.view.SurfaceControl.Transaction -import android.window.DesktopExperienceFlags import android.window.TransitionInfo.Change import com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_MINIMIZE_WINDOW import com.android.internal.jank.InteractionJankMonitor -import com.android.wm.shell.shared.animation.WindowAnimator.BoundsAnimationParams.AnimationBounds -import java.time.Duration /** Creates minimization animation */ object MinimizeAnimator { @@ -41,16 +38,6 @@ object MinimizeAnimator { endOffsetYDp = 12f, endScale = 0.97f, interpolator = Interpolators.STANDARD_ACCELERATE, - animBounds = if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - // In some cases, nav-back on the last desktop task may cause it to be reparented - // into a fullscreen TDA before being minimized back into a desk by - // [DesktopBackNavTransitionObserver]. The minimize animation would then occur when - // the task is still fullscreen, which means it should use the start bounds for the - // minimize animation. - AnimationBounds.START - } else { - AnimationBounds.END - } ) /** @@ -61,7 +48,6 @@ object MinimizeAnimator { * @param animationHandler the Handler that the animation is running on. */ @JvmStatic - @JvmOverloads fun create( context: Context, change: Change, @@ -69,7 +55,6 @@ object MinimizeAnimator { onAnimFinish: (Animator) -> Unit, interactionJankMonitor: InteractionJankMonitor, animationHandler: Handler, - startAnimDelay: Duration = Duration.ZERO, ): Animator { val boundsAnimator = WindowAnimator.createBoundsAnimator( context.resources.displayMetrics, @@ -106,7 +91,6 @@ object MinimizeAnimator { } } return AnimatorSet().apply { - startDelay = startAnimDelay.toMillis() playTogether(boundsAnimator, alphaAnimator) addListener(listener) } diff --git a/wmshell/shared/src/com/android/wm/shell/shared/animation/PhysicsAnimator.kt b/wmshell/shared/src/com/android/wm/shell/shared/animation/PhysicsAnimator.kt index c5e2c64ba9..812b358584 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/animation/PhysicsAnimator.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/animation/PhysicsAnimator.kt @@ -117,9 +117,6 @@ class PhysicsAnimator<T> private constructor (target: T) { /** End actions to run when all animations have completed. */ private val endActions = ArrayList<EndAction>() - /** End actions to run when all animations have completed or canceled. */ - private val endOrCancelActions = ArrayList<EndAction>() - /** SpringConfig to use by default for properties whose springs were not provided. */ private var defaultSpring: SpringConfig = globalDefaultSpring @@ -387,8 +384,7 @@ class PhysicsAnimator<T> private constructor (target: T) { * Adds a listener that will be called when a property stops animating. This is useful if * you care about a specific property ending, or want to use the end value/end velocity from a * particular property's animation. If you just want to run an action when all property - * animations have ended, use [withEndActions]. If you want an action to run when all property - * animations have ended or canceled, use [withEndOrCancelActions]. + * animations have ended, use [withEndActions]. */ fun addEndListener(listener: EndListener<T>): PhysicsAnimator<T> { endListeners.add(listener) @@ -397,8 +393,8 @@ class PhysicsAnimator<T> private constructor (target: T) { /** * Adds end actions that will be run sequentially when animations for every property involved in - * this specific animation have ended (unless they were explicitly canceled, in which you should - * use [withEndOrCancelActions]). For example, if you call: + * this specific animation have ended (unless they were explicitly canceled). For example, if + * you call: * * animator * .spring(TRANSLATION_X, ...) @@ -428,9 +424,6 @@ class PhysicsAnimator<T> private constructor (target: T) { * access to the animation's end value/velocity, or you want to run these actions even if the * animation is explicitly canceled, use [addEndListener]. End listeners have an allEnded param, * which indicates that all relevant animations have ended. - * - * These actions run after those added via [addEndListener], and before actions added via - * [withEndOrCancelActions]. */ fun withEndActions(vararg endActions: EndAction?): PhysicsAnimator<T> { this.endActions.addAll(endActions.filterNotNull()) @@ -446,15 +439,6 @@ class PhysicsAnimator<T> private constructor (target: T) { return this } - /** - * Like [withEndActions], but called if the animator is canceled as well. These actions are - * always run after those added via [addEndListener] and [withEndActions]. - */ - fun withEndOrCancelActions(vararg endOrCancelActions: Runnable?): PhysicsAnimator<T> { - this.endOrCancelActions.addAll(endOrCancelActions.filterNotNull().map { it::run }) - return this - } - fun setDefaultSpringConfig(defaultSpring: SpringConfig) { this.defaultSpring = defaultSpring } @@ -597,8 +581,7 @@ class PhysicsAnimator<T> private constructor (target: T) { getAnimatedProperties(), ArrayList(updateListeners), ArrayList(endListeners), - ArrayList(endActions), - ArrayList(endOrCancelActions))) + ArrayList(endActions))) // Actually start the DynamicAnimations. This is delayed until after the InternalListener is // constructed and added so that we don't miss the end listener firing for any animations @@ -616,7 +599,6 @@ class PhysicsAnimator<T> private constructor (target: T) { updateListeners.clear() endListeners.clear() endActions.clear() - endOrCancelActions.clear() } /** Retrieves a spring animation for the given property, building one if needed. */ @@ -677,8 +659,7 @@ class PhysicsAnimator<T> private constructor (target: T) { private var properties: Set<FloatPropertyCompat<in T>>, private var updateListeners: List<UpdateListener<T>>, private var endListeners: List<EndListener<T>>, - private var endActions: List<EndAction>, - private var endOrCancelActions: List<EndAction> + private var endActions: List<EndAction> ) { /** The number of properties whose animations haven't ended. */ @@ -754,12 +735,9 @@ class PhysicsAnimator<T> private constructor (target: T) { } // If all of the animations that this listener cares about have ended, run the end - // actions - if (allEnded) { - if (!canceled) { - endActions.forEach { it() } - } - endOrCancelActions.forEach { it() } + // actions unless the animation was canceled. + if (allEnded && !canceled) { + endActions.forEach { it() } } return allEnded @@ -807,8 +785,7 @@ class PhysicsAnimator<T> private constructor (target: T) { * animator is under test. */ internal fun cancelInternal(properties: Set<FloatPropertyCompat<in T>>) { - val propertiesCopy = properties.toSet() - for (property in propertiesCopy) { + for (property in properties) { flingAnimations[property]?.cancel() springAnimations[property]?.cancel() } @@ -934,10 +911,8 @@ class PhysicsAnimator<T> private constructor (target: T) { * to respond to specific property animations concluding (such as hiding a view when ALPHA * ends, even if the corresponding TRANSLATION animations have not ended). * - * If you just want to run an action when all of the property animations have ended (but not - * canceled), you can use [PhysicsAnimator.withEndActions]. If you need to run an action - * regardless of whether the animations were canceled, use - * [PhysicsAnimator.withEndOrCancelActions]. + * If you just want to run an action when all of the property animations have ended, you can + * use [PhysicsAnimator.withEndActions]. * * @param target The animated object itself. * @param property The property whose animation has just ended. diff --git a/wmshell/shared/src/com/android/wm/shell/shared/animation/WindowAnimator.kt b/wmshell/shared/src/com/android/wm/shell/shared/animation/WindowAnimator.kt index dc756fe90b..d1c34a4ac1 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/animation/WindowAnimator.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/animation/WindowAnimator.kt @@ -26,8 +26,6 @@ import android.view.Choreographer import android.view.SurfaceControl import android.view.animation.Interpolator import android.window.TransitionInfo -import com.android.wm.shell.shared.animation.WindowAnimator.BoundsAnimationParams.AnimationBounds.END -import com.android.wm.shell.shared.animation.WindowAnimator.BoundsAnimationParams.AnimationBounds.START /** Creates animations that can be applied to windows/surfaces. */ object WindowAnimator { @@ -40,10 +38,7 @@ object WindowAnimator { val startScale: Float = 1f, val endScale: Float = 1f, val interpolator: Interpolator, - val animBounds: AnimationBounds = END, - ) { - enum class AnimationBounds { START, END } - } + ) /** * Creates an animator to reposition and scale the bounds of the leash of the given change. @@ -59,14 +54,10 @@ object WindowAnimator { change: TransitionInfo.Change, transaction: SurfaceControl.Transaction, ): ValueAnimator { - val bounds = when (boundsAnimDef.animBounds) { - START -> change.startAbsBounds - END -> change.endAbsBounds - } val startPos = getPosition( displayMetrics, - bounds, + change.endAbsBounds, boundsAnimDef.startScale, boundsAnimDef.startOffsetYDp, ) @@ -74,7 +65,7 @@ object WindowAnimator { val endPos = getPosition( displayMetrics, - bounds, + change.endAbsBounds, boundsAnimDef.endScale, boundsAnimDef.endOffsetYDp, ) diff --git a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/BubbleAnythingFlagHelper.java b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/BubbleAnythingFlagHelper.java index a58d7afebc..e1f1d0c32e 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/BubbleAnythingFlagHelper.java +++ b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/BubbleAnythingFlagHelper.java @@ -31,17 +31,6 @@ public class BubbleAnythingFlagHelper { return enableBubbleAnything() || Flags.enableCreateAnyBubble(); } - /** Whether creating any bubble and force task excluded from recents are enabled. */ - public static boolean enableCreateAnyBubbleWithForceExcludedFromRecents() { - return Flags.enableCreateAnyBubble() - && com.android.window.flags2.Flags.excludeTaskFromRecents(); - } - - /** Whether creating any bubble and app compat fixes for bubbles are enabled. */ - public static boolean enableCreateAnyBubbleWithAppCompatFixes() { - return Flags.enableCreateAnyBubble() && Flags.enableBubbleAppCompatFixes(); - } - /** * Whether creating any bubble and transforming to fullscreen, or the overall bubble anything * feature is enabled. @@ -52,26 +41,6 @@ public class BubbleAnythingFlagHelper { && Flags.enableCreateAnyBubble()); } - /** Whether creating a root task to manage the bubble tasks in the Core. */ - public static boolean enableRootTaskForBubble() { - // This is needed to prevent tasks being hidden and re-parented to TDA when move-to-back. - if (!enableCreateAnyBubbleWithForceExcludedFromRecents()) { - return false; - } - - // This is needed to allow the activity behind the root task remains in RESUMED state. - if (!com.android.window.flags2.Flags.enableSeeThroughTaskFragments()) { - return false; - } - - // This is needed to allow the leaf task can be started in expected bounds. - if (!com.android.window.flags2.Flags.respectLeafTaskBounds()) { - return false; - } - - return com.android.window.flags2.Flags.rootTaskForBubble(); - } - /** Whether the overall bubble anything feature is enabled. */ public static boolean enableBubbleAnything() { return Flags.enableBubbleAnything(); diff --git a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/BubbleBarLocation.kt b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/BubbleBarLocation.kt index 2ddd273791..6acd9dbe8b 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/BubbleBarLocation.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/BubbleBarLocation.kt @@ -60,18 +60,6 @@ enum class BubbleBarLocation : Parcelable { override fun newArray(size: Int) = arrayOfNulls<BubbleBarLocation>(size) } - - /** - * Checks whether locations are on the different sides from each other. If any of the - * locations is null returns false. - */ - fun isDifferentSides( - first: BubbleBarLocation?, - second: BubbleBarLocation?, - isRtl: Boolean - ): Boolean { - return first != null && second != null && first.isOnLeft(isRtl) != second.isOnLeft(isRtl) - } } /** Define set of constants that allow to determine why location changed. */ diff --git a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/ContextUtils.kt b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/ContextUtils.kt index 0385d938ed..27db5297b7 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/ContextUtils.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/ContextUtils.kt @@ -19,6 +19,7 @@ package com.android.wm.shell.shared.bubbles import android.content.Context import android.view.View import android.view.WindowManagerPolicyConstants +import com.android.internal.R /** Simplifies accessing context fields. */ object ContextUtils { @@ -26,7 +27,7 @@ object ContextUtils { /** Gets navigation mode. */ @JvmStatic val Context.navigationMode: Int - get() = resources.getInteger(com.android.internal.R.integer.config_navBarInteractionMode) + get() = resources.getInteger(R.integer.config_navBarInteractionMode) /** Returns whether the navigation mode is gestures. */ @JvmStatic diff --git a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DismissView.kt b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DismissView.kt index c0830c9e3c..2bb66b0bbc 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DismissView.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DismissView.kt @@ -55,13 +55,7 @@ class DismissView(context: Context) : FrameLayout(context) { @DimenRes val targetSizeResId: Int, /** dimen resource id of the icon size in the dismiss target */ @DimenRes val iconSizeResId: Int, - /** - * dimen resource id of the bottom margin for the dismiss target - * - * By default the margin is applied on top of the bottom navigation bar inset. To ignore - * the bottom navigation inset, and apply a margin relative to the bottom edge of the - * screen set [applyMarginOverNavBarInset] to `false`. - */ + /** dimen resource id of the bottom margin for the dismiss target */ @DimenRes var bottomMarginResId: Int, /** dimen resource id of the height for dismiss area gradient */ @DimenRes val floatingGradientHeightResId: Int, @@ -70,13 +64,7 @@ class DismissView(context: Context) : FrameLayout(context) { /** drawable resource id of the dismiss target background */ @DrawableRes val backgroundResId: Int, /** drawable resource id of the icon for the dismiss target */ - @DrawableRes val iconResId: Int, - /** - * Whether the value provided in [bottomMarginResId] should be applied on top of the - * bottom navigation bar inset. If this is `false` the margin is relative to the bottom - * edge of the screen. - */ - val applyMarginOverNavBarInset: Boolean = true, + @DrawableRes val iconResId: Int ) companion object { @@ -107,9 +95,9 @@ class DismissView(context: Context) : FrameLayout(context) { } init { - clipToPadding = false - clipChildren = false - visibility = View.INVISIBLE + setClipToPadding(false) + setClipChildren(false) + setVisibility(View.INVISIBLE) addView(circle) } @@ -147,12 +135,10 @@ class DismissView(context: Context) : FrameLayout(context) { /** * Animates this view in. - * - * @return `true` if the view was shown, `false` otherwise */ - fun show(): Boolean { - if (isShowing) return false - val gradientDrawable = checkExists(gradientDrawable) ?: return false + fun show() { + if (isShowing) return + val gradientDrawable = checkExists(gradientDrawable) ?: return isShowing = true setVisibility(View.VISIBLE) val alphaAnim = ObjectAnimator.ofInt(gradientDrawable, GRADIENT_ALPHA, @@ -164,7 +150,6 @@ class DismissView(context: Context) : FrameLayout(context) { animator .spring(DynamicAnimation.TRANSLATION_Y, 0f, spring) .start() - return true } /** @@ -224,16 +209,11 @@ class DismissView(context: Context) : FrameLayout(context) { private fun updatePadding() { val config = checkExists(config) ?: return - val bottomMargin = resources.getDimensionPixelSize(config.bottomMarginResId) - if (config.applyMarginOverNavBarInset) { - val insets: WindowInsets = wm.currentWindowMetrics.windowInsets - val navInset = insets.getInsetsIgnoringVisibility( - WindowInsets.Type.navigationBars() - ) - setPadding(0, 0, 0, navInset.bottom + bottomMargin) - } else { - setPadding(0, 0, 0, bottomMargin) - } + val insets: WindowInsets = wm.getCurrentWindowMetrics().getWindowInsets() + val navInset = insets.getInsetsIgnoringVisibility( + WindowInsets.Type.navigationBars()) + setPadding(0, 0, 0, navInset.bottom + + resources.getDimensionPixelSize(config.bottomMarginResId)) } /** diff --git a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DragZone.kt b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DragZone.kt index 6043d64f28..6eff75c9a4 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DragZone.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DragZone.kt @@ -17,7 +17,6 @@ package com.android.wm.shell.shared.bubbles import android.graphics.Rect -import kotlin.math.hypot /** * Represents an invisible area on the screen that determines what happens to a dragged object if it @@ -31,78 +30,42 @@ import kotlin.math.hypot sealed interface DragZone { /** The bounds of this drag zone. */ - val bounds: Bounds + val bounds: Rect /** The bounds of the drop target associated with this drag zone. */ - val dropTarget: DropTargetRect? - - /** The bounds of the second drop target associated with this drag zone. */ - val secondDropTarget: DropTargetRect? + val dropTarget: Rect? fun contains(x: Int, y: Int) = bounds.contains(x, y) - sealed interface Bounds { - fun contains(x: Int, y: Int) = - when (this) { - is RectZone -> rect.contains(x, y) - is CircleZone -> hypot((x - this.x).toFloat(), (y - this.y).toFloat()) < radius - } - - data class RectZone(val rect: Rect) : Bounds - - data class CircleZone(val x: Int, val y: Int, val radius: Int) : Bounds - } - - data class DropTargetRect(val rect: Rect, val cornerRadius: Float) - /** Represents the bubble drag area on the screen. */ - sealed class Bubble( - override val bounds: Bounds.RectZone, - override val dropTarget: DropTargetRect?, - ) : DragZone { - data class Left( - override val bounds: Bounds.RectZone, - override val dropTarget: DropTargetRect?, - override val secondDropTarget: DropTargetRect? = null, - ) : Bubble(bounds, dropTarget) + sealed class Bubble(override val bounds: Rect, override val dropTarget: Rect) : DragZone { + data class Left(override val bounds: Rect, override val dropTarget: Rect) : + Bubble(bounds, dropTarget) - data class Right( - override val bounds: Bounds.RectZone, - override val dropTarget: DropTargetRect?, - override val secondDropTarget: DropTargetRect? = null, - ) : Bubble(bounds, dropTarget) + data class Right(override val bounds: Rect, override val dropTarget: Rect) : + Bubble(bounds, dropTarget) } /** Represents dragging to Desktop Window. */ - data class DesktopWindow( - override val bounds: Bounds.RectZone, - override val dropTarget: DropTargetRect, - override val secondDropTarget: DropTargetRect? = null, - ) : DragZone + data class DesktopWindow(override val bounds: Rect, override val dropTarget: Rect) : DragZone /** Represents dragging to Full Screen. */ - data class FullScreen( - override val bounds: Bounds.RectZone, - override val dropTarget: DropTargetRect, - override val secondDropTarget: DropTargetRect? = null, - ) : DragZone + data class FullScreen(override val bounds: Rect, override val dropTarget: Rect) : DragZone /** Represents dragging to dismiss. */ - data class Dismiss(override val bounds: Bounds.CircleZone) : DragZone { - override val dropTarget: DropTargetRect? = null - override val secondDropTarget: DropTargetRect? = null + data class Dismiss(override val bounds: Rect) : DragZone { + override val dropTarget: Rect? = null } /** Represents dragging to enter Split or replace a Split app. */ - sealed class Split(override val bounds: Bounds.RectZone) : DragZone { - override val dropTarget: DropTargetRect? = null - override val secondDropTarget: DropTargetRect? = null + sealed class Split(override val bounds: Rect) : DragZone { + override val dropTarget: Rect? = null - data class Left(override val bounds: Bounds.RectZone) : Split(bounds) + data class Left(override val bounds: Rect) : Split(bounds) - data class Right(override val bounds: Bounds.RectZone) : Split(bounds) + data class Right(override val bounds: Rect) : Split(bounds) - data class Top(override val bounds: Bounds.RectZone) : Split(bounds) + data class Top(override val bounds: Rect) : Split(bounds) - data class Bottom(override val bounds: Bounds.RectZone) : Split(bounds) + data class Bottom(override val bounds: Rect) : Split(bounds) } } diff --git a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DragZoneFactory.kt b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DragZoneFactory.kt index 0712ec7d19..2c4e75ad72 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DragZoneFactory.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DragZoneFactory.kt @@ -20,9 +20,6 @@ import android.content.Context import android.graphics.Rect import android.util.TypedValue import androidx.annotation.DimenRes -import com.android.wm.shell.shared.bubbles.DragZone.Bounds.CircleZone -import com.android.wm.shell.shared.bubbles.DragZone.Bounds.RectZone -import com.android.wm.shell.shared.bubbles.DragZone.DropTargetRect import com.android.wm.shell.shared.bubbles.DragZoneFactory.SplitScreenModeChecker.SplitScreenMode /** A class for creating drag zones for dragging bubble objects or dragging into bubbles. */ @@ -31,14 +28,12 @@ class DragZoneFactory( private val deviceConfig: DeviceConfig, private val splitScreenModeChecker: SplitScreenModeChecker, private val desktopWindowModeChecker: DesktopWindowModeChecker, - private val bubbleBarPropertiesProvider: BubbleBarPropertiesProvider, ) { private val windowBounds: Rect get() = deviceConfig.windowBounds - private var dismissDragZoneRadius = 0 - private var dismissDragZoneBottomMargin = 0 + private var dismissDragZoneSize = 0 private var bubbleDragZoneTabletSize = 0 private var bubbleDragZoneFoldableSize = 0 private var fullScreenDragZoneWidth = 0 @@ -47,7 +42,6 @@ class DragZoneFactory( private var desktopWindowDragZoneHeight = 0 private var desktopWindowFromExpandedViewDragZoneWidth = 0 private var desktopWindowFromExpandedViewDragZoneHeight = 0 - private var desktopWindowFromExpandedViewDragZoneYOffset = 0 private var splitFromBubbleDragZoneHeight = 0 private var splitFromBubbleDragZoneWidth = 0 private var hSplitFromExpandedViewDragZoneWidth = 0 @@ -63,98 +57,53 @@ class DragZoneFactory( private var expandedViewDropTargetHeight = 0 private var expandedViewDropTargetPaddingBottom = 0 private var expandedViewDropTargetPaddingHorizontal = 0 - private var bubbleBarDropTargetPaddingHorizontal = 0 - private var dropTargetCornerRadius = 0f - - private val fullScreenDropTarget: DropTargetRect + private val fullScreenDropTarget: Rect get() = - DropTargetRect( - Rect(windowBounds).apply { - inset(fullScreenDropTargetPadding, fullScreenDropTargetPadding) - }, - dropTargetCornerRadius + Rect(windowBounds).apply { + inset(fullScreenDropTargetPadding, fullScreenDropTargetPadding) + } + + private val desktopWindowDropTarget: Rect + get() = + Rect(windowBounds).apply { + if (deviceConfig.isLandscape) { + inset( + /* dx= */ desktopWindowDropTargetPaddingLarge, + /* dy= */ desktopWindowDropTargetPaddingSmall + ) + } else { + inset( + /* dx= */ desktopWindowDropTargetPaddingSmall, + /* dy= */ desktopWindowDropTargetPaddingLarge + ) + } + } + + private val expandedViewDropTargetLeft: Rect + get() = + Rect( + expandedViewDropTargetPaddingHorizontal, + windowBounds.bottom - + expandedViewDropTargetPaddingBottom - + expandedViewDropTargetHeight, + expandedViewDropTargetWidth + expandedViewDropTargetPaddingHorizontal, + windowBounds.bottom - expandedViewDropTargetPaddingBottom ) - private val desktopWindowDropTarget: DropTargetRect + private val expandedViewDropTargetRight: Rect get() = - DropTargetRect( - Rect(windowBounds).apply { - if (deviceConfig.isLandscape) { - inset( - /* dx= */ desktopWindowDropTargetPaddingLarge, - /* dy= */ desktopWindowDropTargetPaddingSmall - ) - } else { - inset( - /* dx= */ desktopWindowDropTargetPaddingSmall, - /* dy= */ desktopWindowDropTargetPaddingLarge - ) - } - }, - dropTargetCornerRadius + Rect( + windowBounds.right - + expandedViewDropTargetPaddingHorizontal - + expandedViewDropTargetWidth, + windowBounds.bottom - + expandedViewDropTargetPaddingBottom - + expandedViewDropTargetHeight, + windowBounds.right - expandedViewDropTargetPaddingHorizontal, + windowBounds.bottom - expandedViewDropTargetPaddingBottom ) - private val expandedViewDropTargetLeft: DropTargetRect - get() = - DropTargetRect( - Rect( - expandedViewDropTargetPaddingHorizontal, - windowBounds.bottom - - expandedViewDropTargetPaddingBottom - - expandedViewDropTargetHeight, - expandedViewDropTargetWidth + expandedViewDropTargetPaddingHorizontal, - windowBounds.bottom - expandedViewDropTargetPaddingBottom - ), - dropTargetCornerRadius - ) - - private val expandedViewDropTargetRight: DropTargetRect - get() = - DropTargetRect( - Rect( - windowBounds.right - - expandedViewDropTargetPaddingHorizontal - - expandedViewDropTargetWidth, - windowBounds.bottom - - expandedViewDropTargetPaddingBottom - - expandedViewDropTargetHeight, - windowBounds.right - expandedViewDropTargetPaddingHorizontal, - windowBounds.bottom - expandedViewDropTargetPaddingBottom - ), - dropTargetCornerRadius - ) - - private val bubbleBarDropTargetLeft: DropTargetRect - get() { - val rect = - Rect( - bubbleBarDropTargetPaddingHorizontal, - windowBounds.bottom - - bubbleBarPropertiesProvider.getBottomPadding() - - bubbleBarPropertiesProvider.getHeight(), - bubbleBarDropTargetPaddingHorizontal + bubbleBarPropertiesProvider.getWidth(), - windowBounds.bottom - bubbleBarPropertiesProvider.getBottomPadding() - ) - return DropTargetRect(rect, rect.height() / 2f) - } - - private val bubbleBarDropTargetRight: DropTargetRect - get() { - val rect = - Rect( - windowBounds.right - - bubbleBarDropTargetPaddingHorizontal - - bubbleBarPropertiesProvider.getWidth(), - windowBounds.bottom - - bubbleBarPropertiesProvider.getBottomPadding() - - bubbleBarPropertiesProvider.getHeight(), - windowBounds.right - bubbleBarDropTargetPaddingHorizontal, - windowBounds.bottom - bubbleBarPropertiesProvider.getBottomPadding() - ) - return DropTargetRect(rect, rect.height() / 2f) - } - init { onConfigurationUpdated() } @@ -163,8 +112,8 @@ class DragZoneFactory( fun onConfigurationUpdated() { // TODO b/396539130: Use the shared xml resources once we can easily access them from // launcher - dismissDragZoneRadius = 96.dpToPx() - dismissDragZoneBottomMargin = 12.dpToPx() + dismissDragZoneSize = + if (deviceConfig.isSmallTablet) 140.dpToPx() else 200.dpToPx() bubbleDragZoneTabletSize = 200.dpToPx() bubbleDragZoneFoldableSize = 140.dpToPx() fullScreenDragZoneWidth = 512.dpToPx() @@ -173,7 +122,6 @@ class DragZoneFactory( desktopWindowDragZoneHeight = 300.dpToPx() desktopWindowFromExpandedViewDragZoneWidth = 200.dpToPx() desktopWindowFromExpandedViewDragZoneHeight = 350.dpToPx() - desktopWindowFromExpandedViewDragZoneYOffset = 25.dpToPx() splitFromBubbleDragZoneHeight = 100.dpToPx() splitFromBubbleDragZoneWidth = 60.dpToPx() hSplitFromExpandedViewDragZoneWidth = 60.dpToPx() @@ -188,9 +136,6 @@ class DragZoneFactory( expandedViewDropTargetHeight = 578.dpToPx() expandedViewDropTargetPaddingBottom = 108.dpToPx() expandedViewDropTargetPaddingHorizontal = 24.dpToPx() - bubbleBarDropTargetPaddingHorizontal = 24.dpToPx() - - dropTargetCornerRadius = 28.dpToPx().toFloat() } private fun Context.resolveDimension(@DimenRes dimension: Int) = @@ -215,7 +160,7 @@ class DragZoneFactory( when (draggedObject) { is DraggedObject.BubbleBar -> { dragZones.add(createDismissDragZone()) - dragZones.addAll(createBubbleHalfScreenDragZones(forBubbleBar = true)) + dragZones.addAll(createBubbleHalfScreenDragZones()) } is DraggedObject.Bubble -> { dragZones.add(createDismissDragZone()) @@ -237,80 +182,65 @@ class DragZoneFactory( } else { dragZones.addAll(createSplitScreenDragZonesForExpandedViewOnTablet()) } - dragZones.addAll(createBubbleHalfScreenDragZones(forBubbleBar = false)) - } - is DraggedObject.LauncherIcon -> { - val showDropTarget = draggedObject.showDropTarget - val showSecondDropTarget = !draggedObject.bubbleBarHasBubbles - dragZones.addAll(createBubbleCornerDragZones(showDropTarget, showSecondDropTarget)) + dragZones.addAll(createBubbleHalfScreenDragZones()) } } return dragZones } - fun getBubbleBarDropRect(isLeftSide: Boolean): Rect { + private fun createDismissDragZone(): DragZone { + return DragZone.Dismiss( + bounds = + Rect( + windowBounds.right / 2 - dismissDragZoneSize / 2, + windowBounds.bottom - dismissDragZoneSize, + windowBounds.right / 2 + dismissDragZoneSize / 2, + windowBounds.bottom + ) + ) + } + + private fun createBubbleCornerDragZones(): List<DragZone> { val dragZoneSize = if (deviceConfig.isSmallTablet) { bubbleDragZoneFoldableSize } else { bubbleDragZoneTabletSize } - return Rect( - if (isLeftSide) 0 else windowBounds.right - dragZoneSize, - windowBounds.bottom - dragZoneSize, - if (isLeftSide) dragZoneSize else windowBounds.right, - windowBounds.bottom - ) - } - - private fun createDismissDragZone(): DragZone { - return DragZone.Dismiss( - bounds = - CircleZone( - x = windowBounds.right / 2, - y = windowBounds.bottom - dismissDragZoneBottomMargin - dismissDragZoneRadius, - radius = dismissDragZoneRadius - ) - ) - } - - private fun createBubbleCornerDragZones( - showDropTarget: Boolean = true, - showSecondDropTarget: Boolean = false - ): List<DragZone> { return listOf( DragZone.Bubble.Left( - bounds = RectZone(getBubbleBarDropRect(isLeftSide = true)), - dropTarget = if (showDropTarget) expandedViewDropTargetLeft else null, - secondDropTarget = if (showSecondDropTarget) bubbleBarDropTargetLeft else null + bounds = + Rect(0, windowBounds.bottom - dragZoneSize, dragZoneSize, windowBounds.bottom), + dropTarget = expandedViewDropTargetLeft, ), DragZone.Bubble.Right( - bounds = RectZone(getBubbleBarDropRect(isLeftSide = false)), - dropTarget = if (showDropTarget) expandedViewDropTargetRight else null, - secondDropTarget = if (showSecondDropTarget) bubbleBarDropTargetRight else null + bounds = + Rect( + windowBounds.right - dragZoneSize, + windowBounds.bottom - dragZoneSize, + windowBounds.right, + windowBounds.bottom, + ), + dropTarget = expandedViewDropTargetRight, ) ) } - private fun createBubbleHalfScreenDragZones(forBubbleBar: Boolean): List<DragZone> { + private fun createBubbleHalfScreenDragZones(): List<DragZone> { return listOf( DragZone.Bubble.Left( - bounds = RectZone(Rect(0, 0, windowBounds.right / 2, windowBounds.bottom)), - dropTarget = - if (forBubbleBar) bubbleBarDropTargetLeft else expandedViewDropTargetLeft, + bounds = Rect(0, 0, windowBounds.right / 2, windowBounds.bottom), + dropTarget = expandedViewDropTargetLeft, ), DragZone.Bubble.Right( bounds = - RectZone( - Rect( - windowBounds.right / 2, - 0, - windowBounds.right, - windowBounds.bottom, - ), + Rect( + windowBounds.right / 2, + 0, + windowBounds.right, + windowBounds.bottom, ), - dropTarget = - if (forBubbleBar) bubbleBarDropTargetRight else expandedViewDropTargetRight, + dropTarget = expandedViewDropTargetRight, ) ) } @@ -318,13 +248,11 @@ class DragZoneFactory( private fun createFullScreenDragZone(): DragZone { return DragZone.FullScreen( bounds = - RectZone( - Rect( - windowBounds.right / 2 - fullScreenDragZoneWidth / 2, - 0, - windowBounds.right / 2 + fullScreenDragZoneWidth / 2, - fullScreenDragZoneHeight - ), + Rect( + windowBounds.right / 2 - fullScreenDragZoneWidth / 2, + 0, + windowBounds.right / 2 + fullScreenDragZoneWidth / 2, + fullScreenDragZoneHeight ), dropTarget = fullScreenDropTarget ) @@ -337,22 +265,18 @@ class DragZoneFactory( return DragZone.DesktopWindow( bounds = if (deviceConfig.isLandscape) { - RectZone( - Rect( - windowBounds.right / 2 - desktopWindowDragZoneWidth / 2, - windowBounds.bottom / 2 - desktopWindowDragZoneHeight / 2, - windowBounds.right / 2 + desktopWindowDragZoneWidth / 2, - windowBounds.bottom / 2 + desktopWindowDragZoneHeight / 2 - ) + Rect( + windowBounds.right / 2 - desktopWindowDragZoneWidth / 2, + windowBounds.bottom / 2 - desktopWindowDragZoneHeight / 2, + windowBounds.right / 2 + desktopWindowDragZoneWidth / 2, + windowBounds.bottom / 2 + desktopWindowDragZoneHeight / 2 ) } else { - RectZone( - Rect( - 0, - windowBounds.bottom / 2 - desktopWindowDragZoneHeight / 2, - windowBounds.right, - windowBounds.bottom / 2 + desktopWindowDragZoneHeight / 2 - ) + Rect( + 0, + windowBounds.bottom / 2 - desktopWindowDragZoneHeight / 2, + windowBounds.right, + windowBounds.bottom / 2 + desktopWindowDragZoneHeight / 2 ) }, dropTarget = desktopWindowDropTarget @@ -362,15 +286,11 @@ class DragZoneFactory( private fun createDesktopWindowDragZoneForExpandedView(): DragZone { return DragZone.DesktopWindow( bounds = - RectZone( - Rect( - windowBounds.right / 2 - desktopWindowFromExpandedViewDragZoneWidth / 2, - windowBounds.bottom / 2 - desktopWindowFromExpandedViewDragZoneHeight / 2 - - desktopWindowFromExpandedViewDragZoneYOffset, - windowBounds.right / 2 + desktopWindowFromExpandedViewDragZoneWidth / 2, - windowBounds.bottom / 2 + desktopWindowFromExpandedViewDragZoneHeight / 2 - - desktopWindowFromExpandedViewDragZoneYOffset - ), + Rect( + windowBounds.right / 2 - desktopWindowFromExpandedViewDragZoneWidth / 2, + windowBounds.bottom / 2 - desktopWindowFromExpandedViewDragZoneHeight / 2, + windowBounds.right / 2 + desktopWindowFromExpandedViewDragZoneWidth / 2, + windowBounds.bottom / 2 + desktopWindowFromExpandedViewDragZoneHeight / 2 ), dropTarget = desktopWindowDropTarget ) @@ -387,18 +307,15 @@ class DragZoneFactory( SplitScreenMode.NONE -> listOf( DragZone.Split.Top( - bounds = - RectZone(Rect(0, 0, windowBounds.right, windowBounds.bottom / 2)), + bounds = Rect(0, 0, windowBounds.right, windowBounds.bottom / 2), ), DragZone.Split.Bottom( bounds = - RectZone( - Rect( - 0, - windowBounds.bottom / 2, - windowBounds.right, - windowBounds.bottom - ), + Rect( + 0, + windowBounds.bottom / 2, + windowBounds.right, + windowBounds.bottom ), ) ) @@ -406,24 +323,20 @@ class DragZoneFactory( listOf( DragZone.Split.Top( bounds = - RectZone( - Rect( - 0, - 0, - windowBounds.right, - windowBounds.bottom - splitFromBubbleDragZoneHeight - ), + Rect( + 0, + 0, + windowBounds.right, + windowBounds.bottom - splitFromBubbleDragZoneHeight ), ), DragZone.Split.Bottom( bounds = - RectZone( - Rect( - 0, - windowBounds.bottom - splitFromBubbleDragZoneHeight, - windowBounds.right, - windowBounds.bottom - ), + Rect( + 0, + windowBounds.bottom - splitFromBubbleDragZoneHeight, + windowBounds.right, + windowBounds.bottom ), ) ) @@ -431,20 +344,15 @@ class DragZoneFactory( SplitScreenMode.SPLIT_10_90 -> { listOf( DragZone.Split.Top( - bounds = - RectZone( - Rect(0, 0, windowBounds.right, splitFromBubbleDragZoneHeight) - ), + bounds = Rect(0, 0, windowBounds.right, splitFromBubbleDragZoneHeight), ), DragZone.Split.Bottom( bounds = - RectZone( - Rect( - 0, - splitFromBubbleDragZoneHeight, - windowBounds.right, - windowBounds.bottom - ), + Rect( + 0, + splitFromBubbleDragZoneHeight, + windowBounds.right, + windowBounds.bottom ), ) ) @@ -457,18 +365,15 @@ class DragZoneFactory( SplitScreenMode.NONE -> listOf( DragZone.Split.Left( - bounds = - RectZone(Rect(0, 0, windowBounds.right / 2, windowBounds.bottom)), + bounds = Rect(0, 0, windowBounds.right / 2, windowBounds.bottom), ), DragZone.Split.Right( bounds = - RectZone( - Rect( - windowBounds.right / 2, - 0, - windowBounds.right, - windowBounds.bottom - ), + Rect( + windowBounds.right / 2, + 0, + windowBounds.right, + windowBounds.bottom ), ) ) @@ -476,44 +381,35 @@ class DragZoneFactory( listOf( DragZone.Split.Left( bounds = - RectZone( - Rect( - 0, - 0, - windowBounds.right - splitFromBubbleDragZoneWidth, - windowBounds.bottom - ), + Rect( + 0, + 0, + windowBounds.right - splitFromBubbleDragZoneWidth, + windowBounds.bottom ), ), DragZone.Split.Right( bounds = - RectZone( - Rect( - windowBounds.right - splitFromBubbleDragZoneWidth, - 0, - windowBounds.right, - windowBounds.bottom - ), + Rect( + windowBounds.right - splitFromBubbleDragZoneWidth, + 0, + windowBounds.right, + windowBounds.bottom ), ) ) SplitScreenMode.SPLIT_10_90 -> listOf( DragZone.Split.Left( - bounds = - RectZone( - Rect(0, 0, splitFromBubbleDragZoneWidth, windowBounds.bottom) - ), + bounds = Rect(0, 0, splitFromBubbleDragZoneWidth, windowBounds.bottom), ), DragZone.Split.Right( bounds = - RectZone( - Rect( - splitFromBubbleDragZoneWidth, - 0, - windowBounds.right, - windowBounds.bottom - ), + Rect( + splitFromBubbleDragZoneWidth, + 0, + windowBounds.right, + windowBounds.bottom ), ) ) @@ -526,35 +422,27 @@ class DragZoneFactory( createHorizontalSplitDragZonesForExpandedView() } else { // for tablets in portrait mode, split drag zones appear below the full screen drag zone - // for the top split zone. the bottom edge of the bottom split zone starts at the - // dismiss zone upper half circle to cover the area outside of the dismiss circle but - // within the split zone width. Both are horizontally centered. + // for the top split zone, and above the dismiss zone. Both are horizontally centered. val splitZoneLeft = windowBounds.right / 2 - vSplitFromExpandedViewDragZoneWidth / 2 val splitZoneRight = splitZoneLeft + vSplitFromExpandedViewDragZoneWidth - val bottomSplitZoneBottom = - windowBounds.bottom - dismissDragZoneBottomMargin - dismissDragZoneRadius * 2 + val bottomSplitZoneBottom = windowBounds.bottom - dismissDragZoneSize listOf( DragZone.Split.Top( bounds = - RectZone( - Rect( - splitZoneLeft, - fullScreenDragZoneHeight, - splitZoneRight, - fullScreenDragZoneHeight + - vSplitFromExpandedViewDragZoneHeightTablet - ), + Rect( + splitZoneLeft, + fullScreenDragZoneHeight, + splitZoneRight, + fullScreenDragZoneHeight + vSplitFromExpandedViewDragZoneHeightTablet ), ), DragZone.Split.Bottom( bounds = - RectZone( - Rect( - splitZoneLeft, - bottomSplitZoneBottom - vSplitFromExpandedViewDragZoneHeightTablet, - splitZoneRight, - bottomSplitZoneBottom - ), + Rect( + splitZoneLeft, + bottomSplitZoneBottom - vSplitFromExpandedViewDragZoneHeightTablet, + splitZoneRight, + bottomSplitZoneBottom ), ) ) @@ -572,26 +460,22 @@ class DragZoneFactory( listOf( DragZone.Split.Top( bounds = - RectZone( - Rect( - splitZoneLeft, - fullScreenDragZoneHeight, - splitZoneLeft + fullScreenDragZoneWidth, - fullScreenDragZoneHeight + - vSplitFromExpandedViewDragZoneHeightFoldTall - ), + Rect( + splitZoneLeft, + fullScreenDragZoneHeight, + splitZoneLeft + fullScreenDragZoneWidth, + fullScreenDragZoneHeight + + vSplitFromExpandedViewDragZoneHeightFoldTall ), ), DragZone.Split.Bottom( bounds = - RectZone( - Rect( - splitZoneLeft, - windowBounds.bottom / 2, - splitZoneLeft + fullScreenDragZoneWidth, - windowBounds.bottom / 2 + - vSplitFromExpandedViewDragZoneHeightFoldTall - ), + Rect( + splitZoneLeft, + windowBounds.bottom / 2, + splitZoneLeft + fullScreenDragZoneWidth, + windowBounds.bottom / 2 + + vSplitFromExpandedViewDragZoneHeightFoldTall ), ) ) @@ -599,25 +483,21 @@ class DragZoneFactory( listOf( DragZone.Split.Top( bounds = - RectZone( - Rect( - 0, - 0, - windowBounds.right, - vSplitFromExpandedViewDragZoneHeightFoldShort - ), + Rect( + 0, + 0, + windowBounds.right, + vSplitFromExpandedViewDragZoneHeightFoldShort ), ), DragZone.Split.Bottom( bounds = - RectZone( - Rect( - splitZoneLeft, - vSplitFromExpandedViewDragZoneHeightFoldShort, - splitZoneLeft + fullScreenDragZoneWidth, - vSplitFromExpandedViewDragZoneHeightFoldShort + - vSplitFromExpandedViewDragZoneHeightFoldTall - ), + Rect( + splitZoneLeft, + vSplitFromExpandedViewDragZoneHeightFoldShort, + splitZoneLeft + fullScreenDragZoneWidth, + vSplitFromExpandedViewDragZoneHeightFoldShort + + vSplitFromExpandedViewDragZoneHeightFoldTall ), ) ) @@ -625,26 +505,22 @@ class DragZoneFactory( listOf( DragZone.Split.Top( bounds = - RectZone( - Rect( - splitZoneLeft, - fullScreenDragZoneHeight, - splitZoneLeft + fullScreenDragZoneWidth, - fullScreenDragZoneHeight + - vSplitFromExpandedViewDragZoneHeightFoldTall - ), + Rect( + splitZoneLeft, + fullScreenDragZoneHeight, + splitZoneLeft + fullScreenDragZoneWidth, + fullScreenDragZoneHeight + + vSplitFromExpandedViewDragZoneHeightFoldTall ), ), DragZone.Split.Bottom( bounds = - RectZone( - Rect( - 0, - windowBounds.bottom - - vSplitFromExpandedViewDragZoneHeightFoldShort, - windowBounds.right, - windowBounds.bottom - ), + Rect( + 0, + windowBounds.bottom - + vSplitFromExpandedViewDragZoneHeightFoldShort, + windowBounds.right, + windowBounds.bottom ), ) ) @@ -658,20 +534,23 @@ class DragZoneFactory( private fun createHorizontalSplitDragZonesForExpandedView(): List<DragZone> { // horizontal split drag zones for expanded view appear on the edges of the screen from the // top down until the dismiss drag zone height - val bottomY = windowBounds.bottom - dismissDragZoneBottomMargin - dismissDragZoneRadius * 2 return listOf( DragZone.Split.Left( - bounds = RectZone(Rect(0, 0, hSplitFromExpandedViewDragZoneWidth, bottomY)) + bounds = + Rect( + 0, + 0, + hSplitFromExpandedViewDragZoneWidth, + windowBounds.bottom - dismissDragZoneSize + ), ), DragZone.Split.Right( bounds = - RectZone( - Rect( - windowBounds.right - hSplitFromExpandedViewDragZoneWidth, - 0, - windowBounds.right, - bottomY - ), + Rect( + windowBounds.right - hSplitFromExpandedViewDragZoneWidth, + 0, + windowBounds.right, + windowBounds.bottom - dismissDragZoneSize ), ) ) @@ -694,13 +573,4 @@ class DragZoneFactory( fun interface DesktopWindowModeChecker { fun isSupported(): Boolean } - - /** Bubble bar properties for generating a drop target. */ - interface BubbleBarPropertiesProvider { - fun getHeight(): Int = 0 - - fun getWidth(): Int = 0 - - fun getBottomPadding(): Int = 0 - } } diff --git a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DraggedObject.kt b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DraggedObject.kt index e92f725476..028622798f 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DraggedObject.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DraggedObject.kt @@ -18,17 +18,10 @@ package com.android.wm.shell.shared.bubbles /** A Bubble object being dragged. */ sealed interface DraggedObject { + /** The initial location of the object at the start of the drag gesture. */ + val initialLocation: BubbleBarLocation - data class Bubble(val initialLocation: BubbleBarLocation) : DraggedObject - - data class BubbleBar(val initialLocation: BubbleBarLocation) : DraggedObject - - data class ExpandedView(val initialLocation: BubbleBarLocation) : DraggedObject - - // TODO(b/411505605) Remove onDropAction and move showDropTarget up - data class LauncherIcon( - val bubbleBarHasBubbles: Boolean, - val showDropTarget: Boolean = true, - val onDropAction: Runnable - ) : DraggedObject + data class Bubble(override val initialLocation: BubbleBarLocation) : DraggedObject + data class BubbleBar(override val initialLocation: BubbleBarLocation) : DraggedObject + data class ExpandedView(override val initialLocation: BubbleBarLocation) : DraggedObject } diff --git a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DropTargetManager.kt b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DropTargetManager.kt index 1a7858f487..8ce5e7b0e1 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DropTargetManager.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DropTargetManager.kt @@ -17,20 +17,14 @@ package com.android.wm.shell.shared.bubbles import android.content.Context +import android.graphics.Rect import android.graphics.RectF -import android.util.TypedValue -import android.view.View import android.view.ViewGroup.LayoutParams.MATCH_PARENT import android.widget.FrameLayout -import androidx.annotation.VisibleForTesting import androidx.core.animation.Animator import androidx.core.animation.AnimatorListenerAdapter import androidx.core.animation.ValueAnimator -import com.android.wm.shell.shared.bubbles.DragZone.DropTargetRect -import com.android.wm.shell.shared.bubbles.DraggedObject.Bubble -import com.android.wm.shell.shared.bubbles.DraggedObject.BubbleBar -import com.android.wm.shell.shared.bubbles.DraggedObject.ExpandedView -import com.android.wm.shell.shared.bubbles.DraggedObject.LauncherIcon +import com.android.wm.shell.R /** * Manages animating drop targets in response to dragging bubble icons or bubble expanded views @@ -43,19 +37,15 @@ class DropTargetManager( ) { private var state: DragState? = null - - @VisibleForTesting val dropTargetView = DropTargetView(context) - @VisibleForTesting var secondDropTargetView: DropTargetView? = null + private val dropTargetView = DropTargetView(context) + private var animator: ValueAnimator? = null private var morphRect: RectF = RectF(0f, 0f, 0f, 0f) private val isLayoutRtl = container.isLayoutRtl - private val viewAnimatorsMap = mutableMapOf<View, ValueAnimator>() - private var onDropTargetsRemovedAction: Runnable? = null private companion object { const val MORPH_ANIM_DURATION = 250L const val DROP_TARGET_ALPHA_IN_DURATION = 150L const val DROP_TARGET_ALPHA_OUT_DURATION = 100L - const val DROP_TARGET_ELEVATION_DP = 2f } /** Must be called when a drag gesture is starting. */ @@ -63,38 +53,22 @@ class DropTargetManager( val state = DragState(dragZones, draggedObject) dragZoneChangedListener.onInitialDragZoneSet(state.initialDragZone) this.state = state - viewAnimatorsMap.values.forEach { it.cancel() } - setupDropTarget(dropTargetView) - if (dragZones.any { it.secondDropTarget != null }) { - secondDropTargetView = secondDropTargetView ?: DropTargetView(context) - setupDropTarget(secondDropTargetView) - } else { - secondDropTargetView?.let { container.removeView(it) } - secondDropTargetView = null - } + animator?.cancel() + setupDropTarget() } - private fun setupDropTarget(view: View?) { - if (view == null) return - if (view.parent != null) container.removeView(view) - container.addView(view, 0) - view.alpha = 0f - - view.elevation = TypedValue.applyDimension( - TypedValue.COMPLEX_UNIT_DIP, - DROP_TARGET_ELEVATION_DP, context.resources.displayMetrics - ) + private fun setupDropTarget() { + if (dropTargetView.parent != null) container.removeView(dropTargetView) + container.addView(dropTargetView, 0) + dropTargetView.alpha = 0f + dropTargetView.elevation = context.resources.getDimension(R.dimen.drop_target_elevation) // Match parent and the target is drawn within the view - view.layoutParams = FrameLayout.LayoutParams(MATCH_PARENT, MATCH_PARENT) + dropTargetView.layoutParams = FrameLayout.LayoutParams(MATCH_PARENT, MATCH_PARENT) } - /** - * Called when the user drags to a new location. - * - * @return DragZone that matches provided x and y coordinates. - */ - fun onDragUpdated(x: Int, y: Int): DragZone? { - val state = state ?: return null + /** Called when the user drags to a new location. */ + fun onDragUpdated(x: Int, y: Int) { + val state = state ?: return val oldDragZone = state.currentDragZone val newDragZone = state.getMatchingDragZone(x = x, y = y) state.currentDragZone = newDragZone @@ -102,156 +76,95 @@ class DropTargetManager( dragZoneChangedListener.onDragZoneChanged( draggedObject = state.draggedObject, from = oldDragZone, - to = newDragZone, + to = newDragZone ) updateDropTarget() } - return newDragZone } /** Called when the drag ended. */ fun onDragEnded() { val dropState = state ?: return - startFadeAnimation(dropTargetView, to = 0f) { + startFadeAnimation(from = dropTargetView.alpha, to = 0f) { container.removeView(dropTargetView) - onDropTargetRemoved() - } - startFadeAnimation(secondDropTargetView, to = 0f) { - container.removeView(secondDropTargetView) - secondDropTargetView = null - onDropTargetRemoved() } dragZoneChangedListener.onDragEnded(dropState.currentDragZone) state = null } - /** - * Runs the provided action once all drop target views are removed from the container. - * If there are no drop target views currently present or being animated, the action will be - * executed immediately. - */ - fun onDropTargetRemoved(action: Runnable) { - onDropTargetsRemovedAction = action - onDropTargetRemoved() - } - private fun updateDropTarget() { - val dropState = state ?: return - val currentDragZone = dropState.currentDragZone - if (currentDragZone == null) { - startFadeAnimation(dropTargetView, to = 0f) - startFadeAnimation(secondDropTargetView, to = 0f) - return - } - val dropTargetRect = currentDragZone.dropTarget + val currentDragZone = state?.currentDragZone ?: return + val dropTargetBounds = currentDragZone.dropTarget when { - dropTargetRect == null -> startFadeAnimation(dropTargetView, to = 0f) - + dropTargetBounds == null -> startFadeAnimation(from = dropTargetView.alpha, to = 0f) dropTargetView.alpha == 0f -> { - dropTargetView.update(RectF(dropTargetRect.rect), dropTargetRect.cornerRadius) - startFadeAnimation(dropTargetView, to = 1f) - } - - else -> startMorphAnimation(dropTargetRect) - } - - val secondDropTargetRect = currentDragZone.secondDropTarget - when { - secondDropTargetRect == null -> startFadeAnimation(secondDropTargetView, to = 0f) - else -> { - val secondDropTargetView = secondDropTargetView ?: return - secondDropTargetView.update( - RectF(secondDropTargetRect.rect), - secondDropTargetRect.cornerRadius, - ) - startFadeAnimation(secondDropTargetView, to = 1f) + dropTargetView.update(RectF(dropTargetBounds)) + startFadeAnimation(from = 0f, to = 1f) } + else -> startMorphAnimation(dropTargetBounds) } } - private fun startFadeAnimation(view: View?, to: Float, onEnd: (() -> Unit)? = null) { - if (view == null) return - val from = view.alpha - viewAnimatorsMap[view]?.cancel() + private fun startFadeAnimation(from: Float, to: Float, onEnd: (() -> Unit)? = null) { + animator?.cancel() val duration = if (from < to) DROP_TARGET_ALPHA_IN_DURATION else DROP_TARGET_ALPHA_OUT_DURATION val animator = ValueAnimator.ofFloat(from, to).setDuration(duration) - animator.addUpdateListener { _ -> view.alpha = animator.animatedValue as Float } + animator.addUpdateListener { _ -> dropTargetView.alpha = animator.animatedValue as Float } if (onEnd != null) { animator.doOnEnd(onEnd) } - viewAnimatorsMap[view] = animator + this.animator = animator animator.start() } - private fun startMorphAnimation(dropTargetRect: DropTargetRect) { - viewAnimatorsMap[dropTargetView]?.cancel() + private fun startMorphAnimation(endBounds: Rect) { + animator?.cancel() val startAlpha = dropTargetView.alpha val startRect = dropTargetView.getRect() - val endRect = dropTargetRect.rect val animator = ValueAnimator.ofFloat(0f, 1f).setDuration(MORPH_ANIM_DURATION) animator.addUpdateListener { _ -> val fraction = animator.animatedValue as Float dropTargetView.alpha = startAlpha + (1 - startAlpha) * fraction - morphRect.left = (startRect.left + (endRect.left - startRect.left) * fraction) - morphRect.top = (startRect.top + (endRect.top - startRect.top) * fraction) - morphRect.right = (startRect.right + (endRect.right - startRect.right) * fraction) - morphRect.bottom = (startRect.bottom + (endRect.bottom - startRect.bottom) * fraction) - dropTargetView.update(morphRect, dropTargetRect.cornerRadius) + morphRect.left = (startRect.left + (endBounds.left - startRect.left) * fraction) + morphRect.top = (startRect.top + (endBounds.top - startRect.top) * fraction) + morphRect.right = (startRect.right + (endBounds.right - startRect.right) * fraction) + morphRect.bottom = (startRect.bottom + (endBounds.bottom - startRect.bottom) * fraction) + dropTargetView.update(morphRect) } - viewAnimatorsMap[dropTargetView] = animator + this.animator = animator animator.start() } - private fun onDropTargetRemoved() { - val action = onDropTargetsRemovedAction ?: return - if ((0 until container.childCount).any { container.getChildAt(it) is DropTargetView }) { - return - } - onDropTargetsRemovedAction = null - action.run() - } - /** Stores the current drag state. */ private inner class DragState( private val dragZones: List<DragZone>, - val draggedObject: DraggedObject, + val draggedObject: DraggedObject ) { val initialDragZone = - draggedObject.initialLocation?.let { - if (it.isOnLeft(isLayoutRtl)) { - dragZones.filterIsInstance<DragZone.Bubble.Left>().first() - } else { - dragZones.filterIsInstance<DragZone.Bubble.Right>().first() - } + if (draggedObject.initialLocation.isOnLeft(isLayoutRtl)) { + dragZones.filterIsInstance<DragZone.Bubble.Left>().first() + } else { + dragZones.filterIsInstance<DragZone.Bubble.Right>().first() } - var currentDragZone: DragZone? = initialDragZone + var currentDragZone: DragZone = initialDragZone - fun getMatchingDragZone(x: Int, y: Int): DragZone? { - return dragZones.firstOrNull { it.contains(x, y) } + fun getMatchingDragZone(x: Int, y: Int): DragZone { + return dragZones.firstOrNull { it.contains(x, y) } ?: currentDragZone } } - private val DraggedObject.initialLocation: BubbleBarLocation? - get() = - when (this) { - is Bubble -> initialLocation - is BubbleBar -> initialLocation - is ExpandedView -> initialLocation - is LauncherIcon -> null - } - /** An interface to be notified when drag zones change. */ interface DragZoneChangedListener { /** An initial drag zone was set. Called when a drag starts. */ - fun onInitialDragZoneSet(dragZone: DragZone?) + fun onInitialDragZoneSet(dragZone: DragZone) /** Called when the object was dragged to a different drag zone. */ - fun onDragZoneChanged(draggedObject: DraggedObject, from: DragZone?, to: DragZone?) + fun onDragZoneChanged(draggedObject: DraggedObject, from: DragZone, to: DragZone) /** Called when the drag has ended with the zone it ended in. */ - fun onDragEnded(zone: DragZone?) + fun onDragEnded(zone: DragZone) } private fun Animator.doOnEnd(onEnd: () -> Unit) { diff --git a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DropTargetView.kt b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DropTargetView.kt index 1a61255802..c57e3fc6c6 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DropTargetView.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/DropTargetView.kt @@ -23,34 +23,34 @@ import android.graphics.RectF import android.util.TypedValue import android.view.View -/** Shows a drop target within this view. */ +/** + * Shows a drop target within this view. + */ class DropTargetView(context: Context) : View(context) { - private val rectPaint = - Paint(Paint.ANTI_ALIAS_FLAG).apply { - color = context.getColor(com.android.internal.R.color.materialColorPrimaryFixed) - style = Paint.Style.FILL - alpha = (0.35f * 255).toInt() - } + private val rectPaint = Paint(Paint.ANTI_ALIAS_FLAG).apply { + color = context.getColor(com.android.internal.R.color.materialColorPrimaryFixed) + style = Paint.Style.FILL + alpha = (0.35f * 255).toInt() + } - private val strokePaint = - Paint(Paint.ANTI_ALIAS_FLAG).apply { - color = context.getColor(com.android.internal.R.color.materialColorPrimaryFixed) - style = Paint.Style.STROKE - strokeWidth = 2.dpToPx() - } + private val strokePaint = Paint(Paint.ANTI_ALIAS_FLAG).apply { + color = context.getColor(com.android.internal.R.color.materialColorPrimaryFixed) + style = Paint.Style.STROKE + strokeWidth = 2.dpToPx() + } - private var cornerRadius = 0f + private val cornerRadius = 28.dpToPx() private val rect = RectF(0f, 0f, 0f, 0f) // TODO b/396539130: Use shared xml resources once we can access them in launcher private fun Int.dpToPx() = TypedValue.applyDimension( - TypedValue.COMPLEX_UNIT_DIP, - this.toFloat(), - context.resources.displayMetrics - ) + TypedValue.COMPLEX_UNIT_DIP, + this.toFloat(), + context.resources.displayMetrics + ) override fun onDraw(canvas: Canvas) { canvas.save() @@ -59,8 +59,7 @@ class DropTargetView(context: Context) : View(context) { canvas.restore() } - fun update(positionRect: RectF, cornerRadius: Float) { - this.cornerRadius = cornerRadius + fun update(positionRect: RectF) { rect.set(positionRect) invalidate() } diff --git a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/OWNERS b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/OWNERS index 290151a2e5..08c7031497 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/bubbles/OWNERS +++ b/wmshell/shared/src/com/android/wm/shell/shared/bubbles/OWNERS @@ -2,4 +2,5 @@ madym@google.com atsjenk@google.com liranb@google.com +sukeshram@google.com mpodolian@google.com diff --git a/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeCompatPolicy.kt b/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeCompatPolicy.kt index 4fbc18bcf0..529203f7de 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeCompatPolicy.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeCompatPolicy.kt @@ -20,7 +20,6 @@ import android.Manifest.permission.SYSTEM_ALERT_WINDOW import android.app.TaskInfo import android.content.Context import android.content.pm.PackageManager -import android.window.DesktopExperienceFlags import android.window.DesktopModeFlags import com.android.internal.R import com.android.internal.policy.DesktopModeCompatUtils @@ -44,56 +43,28 @@ class DesktopModeCompatPolicy(private val context: Context) { /** * If the top activity should be exempt from desktop windowing and forced back to fullscreen. - * Currently includes all system ui, default home and transparent stack activities with the - * relevant permission or signature. However if the top activity is not being displayed, - * regardless of its configuration, we will not exempt it as to remain in the desktop windowing - * environment. + * Currently includes all system ui, default home and transparent stack activities. However if + * the top activity is not being displayed, regardless of its configuration, we will not exempt + * it as to remain in the desktop windowing environment. */ - fun isTopActivityExemptFromDesktopWindowing(task: TaskInfo): Boolean { - val packageName = task.baseActivity?.packageName ?: return false + fun isTopActivityExemptFromDesktopWindowing(task: TaskInfo) = + isTopActivityExemptFromDesktopWindowing(task.baseActivity?.packageName, + task.numActivities, task.isTopActivityNoDisplay, task.isActivityStackTransparent, + task.userId) - return when { - !DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODALS_POLICY.isTrue -> false - // If activity is not being displayed, window mode change has no visual affect so leave - // unchanged. - task.isTopActivityNoDisplay -> false - // If activity belongs to system ui package, safe to force out of desktop. - isSystemUiTask(packageName) -> true - // If activity belongs to default home package, safe to force out of desktop. - isPartOfDefaultHomePackageOrNoHomeAvailable(packageName) -> true - // If all activities in task stack are transparent AND package has the relevant - // fullscreen transparent permission OR is signed with platform key, safe to force out - // of desktop. - isTransparentTask(task.isActivityStackTransparent, task.numActivities) && - (hasFullscreenTransparentPermission(packageName, task.userId) || - hasPlatformSignature(task)) -> true - - else -> false - } - } - - fun shouldDisableDesktopEntryPoints(task: TaskInfo) = shouldDisableDesktopEntryPoints( - task.baseActivity?.packageName, task.numActivities, task.isTopActivityNoDisplay, - task.isActivityStackTransparent) - - fun shouldDisableDesktopEntryPoints( + fun isTopActivityExemptFromDesktopWindowing( packageName: String?, numActivities: Int, isTopActivityNoDisplay: Boolean, isActivityStackTransparent: Boolean, - ) = when { - // Activity will not be displayed, no need to show desktop entry point. - isTopActivityNoDisplay -> true - // If activity belongs to system ui package, hide desktop entry point. - isSystemUiTask(packageName) -> true - // If activity belongs to default home package, safe to force out of desktop. - isPartOfDefaultHomePackageOrNoHomeAvailable(packageName) -> true - // If all activities in task stack are transparent AND package has the relevant fullscreen - // transparent permission, safe to force out of desktop. - isTransparentTask(isActivityStackTransparent, numActivities) -> true - else -> false - } - + userId: Int + ) = + DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODALS_POLICY.isTrue && + ((isSystemUiTask(packageName) || + isPartOfDefaultHomePackageOrNoHomeAvailable(packageName) || + (isTransparentTask(isActivityStackTransparent, numActivities) && + hasFullscreenTransparentPermission(packageName, userId))) && + !isTopActivityNoDisplay) /** @see DesktopModeCompatUtils.shouldExcludeCaptionFromAppBounds */ fun shouldExcludeCaptionFromAppBounds(taskInfo: TaskInfo): Boolean = @@ -115,8 +86,11 @@ class DesktopModeCompatPolicy(private val context: Context) { private fun isSystemUiTask(packageName: String?) = packageName == systemUiPackage // Checks if the app for the given package has the SYSTEM_ALERT_WINDOW permission. - private fun hasFullscreenTransparentPermission(packageName: String, userId: Int): Boolean { + private fun hasFullscreenTransparentPermission(packageName: String?, userId: Int): Boolean { if (DesktopModeFlags.ENABLE_MODALS_FULLSCREEN_WITH_PERMISSIONS.isTrue) { + if (packageName == null) { + return false + } return packageInfoCache.getOrPut("$userId@$packageName") { try { val packageInfo = pkgManager.getPackageInfoAsUser( @@ -130,19 +104,8 @@ class DesktopModeCompatPolicy(private val context: Context) { } } } - // If the ENABLE_MODALS_FULLSCREEN_WITH_PERMISSIONS flag is disabled, make neutral condition - // dependant on the ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE flag. - return !DesktopExperienceFlags.ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE.isTrue - } - - // Checks if the app is signed with the platform signature. - private fun hasPlatformSignature(task: TaskInfo): Boolean { - if (DesktopExperienceFlags.ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE.isTrue) { - return task.topActivityInfo?.applicationInfo?.isSignedWithPlatformKey ?: false - } - // If the ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE flag is disabled, make neutral - // condition dependant on the ENABLE_MODALS_FULLSCREEN_WITH_PERMISSIONS flag. - return !DesktopModeFlags.ENABLE_MODALS_FULLSCREEN_WITH_PERMISSIONS.isTrue + // If the flag is disabled we make this condition neutral. + return true } /** diff --git a/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatus.java b/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatus.java index c974114a1f..ff66442443 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatus.java +++ b/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeStatus.java @@ -17,11 +17,14 @@ package com.android.wm.shell.shared.desktopmode; import static android.hardware.display.DisplayManager.DISPLAY_CATEGORY_ALL_INCLUDING_DISABLED; +import static android.window.DesktopExperienceFlags.ENABLE_PROJECTED_DISPLAY_DESKTOP_MODE; +import static com.android.server.display.feature.flags.Flags.enableDisplayContentModeManagement; import static com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper.enableBubbleToFullscreen; import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import android.app.TaskInfo; import android.content.Context; import android.hardware.display.DisplayManager; import android.os.SystemProperties; @@ -32,21 +35,48 @@ import android.window.DesktopModeFlags; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; -import com.android.window.flags2.Flags; +import com.android.window.flags.Flags; +import java.io.PrintWriter; import java.util.Arrays; /** * Constants for desktop mode feature - * - * @deprecated Use {@link DesktopState} or {@link DesktopConfig} instead. */ -@Deprecated(forRemoval = true) +// TODO(b/237575897): Move this file to the `com.android.wm.shell.shared.desktopmode` package public class DesktopModeStatus { + private static final String TAG = "DesktopModeStatus"; + @Nullable private static Boolean sIsLargeScreenDevice = null; + /** + * Flag to indicate whether task resizing is veiled. + */ + private static final boolean IS_VEILED_RESIZE_ENABLED = SystemProperties.getBoolean( + "persist.wm.debug.desktop_veiled_resizing", true); + + /** + * Flag to indicate is moving task to another display is enabled. + */ + public static final boolean IS_DISPLAY_CHANGE_ENABLED = SystemProperties.getBoolean( + "persist.wm.debug.desktop_change_display", false); + + /** + * Flag to indicate whether to apply shadows to windows in desktop mode. + */ + private static final boolean USE_WINDOW_SHADOWS = SystemProperties.getBoolean( + "persist.wm.debug.desktop_use_window_shadows", true); + + /** + * Flag to indicate whether to apply shadows to the focused window in desktop mode. + * + * Note: this flag is only relevant if USE_WINDOW_SHADOWS is false. + */ + private static final boolean USE_WINDOW_SHADOWS_FOCUSED_WINDOW = SystemProperties.getBoolean( + "persist.wm.debug.desktop_use_window_shadows_focused_window", false); + /** * Flag to indicate whether to use rounded corners for windows in desktop mode. */ @@ -59,6 +89,27 @@ public class DesktopModeStatus { private static final boolean ENFORCE_DEVICE_RESTRICTIONS = SystemProperties.getBoolean( "persist.wm.debug.desktop_mode_enforce_device_restrictions", true); + private static final boolean USE_APP_TO_WEB_BUILD_TIME_GENERIC_LINKS = + SystemProperties.getBoolean( + "persist.wm.debug.use_app_to_web_build_time_generic_links", true); + + /** Whether the desktop density override is enabled. */ + public static final boolean DESKTOP_DENSITY_OVERRIDE_ENABLED = + SystemProperties.getBoolean("persist.wm.debug.desktop_mode_density_enabled", false); + + /** Override density for tasks when they're inside the desktop. */ + public static final int DESKTOP_DENSITY_OVERRIDE = + SystemProperties.getInt("persist.wm.debug.desktop_mode_density", 284); + + /** The minimum override density allowed for tasks inside the desktop. */ + private static final int DESKTOP_DENSITY_MIN = 100; + + /** The maximum override density allowed for tasks inside the desktop. */ + private static final int DESKTOP_DENSITY_MAX = 1000; + + /** The number of [WindowDecorViewHost] instances to warm up on system start. */ + private static final int WINDOW_DECOR_PRE_WARM_SIZE = 2; + /** * Sysprop declaring whether to enters desktop mode by default when the windowing mode of the * display's root TaskDisplayArea is set to WINDOWING_MODE_FREEFORM. @@ -69,6 +120,51 @@ public class DesktopModeStatus { public static final String ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAY_SYS_PROP = "persist.wm.debug.enter_desktop_by_default_on_freeform_display"; + /** + * Sysprop declaring whether to enable drag-to-maximize for desktop windows. + * + * <p>If it is not defined, then {@code R.integer.config_dragToMaximizeInDesktopMode} + * is used. + */ + public static final String ENABLE_DRAG_TO_MAXIMIZE_SYS_PROP = + "persist.wm.debug.enable_drag_to_maximize"; + + /** + * Sysprop declaring the maximum number of Tasks to show in Desktop Mode at any one time. + * + * <p>If it is not defined, then {@code R.integer.config_maxDesktopWindowingActiveTasks} is + * used. + * + * <p>The limit does NOT affect Picture-in-Picture, Bubbles, or System Modals (like a screen + * recording window, or Bluetooth pairing window). + */ + private static final String MAX_TASK_LIMIT_SYS_PROP = "persist.wm.debug.desktop_max_task_limit"; + + /** + * Sysprop declaring the number of [WindowDecorViewHost] instances to warm up on system start. + * + * <p>If it is not defined, then [WINDOW_DECOR_PRE_WARM_SIZE] is used. + */ + private static final String WINDOW_DECOR_PRE_WARM_SIZE_SYS_PROP = + "persist.wm.debug.desktop_window_decor_pre_warm_size"; + + /** + * Return {@code true} if veiled resizing is active. If false, fluid resizing is used. + */ + public static boolean isVeiledResizeEnabled() { + return IS_VEILED_RESIZE_ENABLED; + } + + /** + * Return whether to use window shadows. + * + * @param isFocusedWindow whether the window to apply shadows to is focused + */ + public static boolean useWindowShadow(boolean isFocusedWindow) { + return USE_WINDOW_SHADOWS + || (USE_WINDOW_SHADOWS_FOCUSED_WINDOW && isFocusedWindow); + } + /** * Return whether to use rounded corners for windows. */ @@ -84,6 +180,35 @@ public class DesktopModeStatus { return ENFORCE_DEVICE_RESTRICTIONS; } + /** + * Return the maximum limit on the number of Tasks to show in Desktop Mode at any one time. + */ + public static int getMaxTaskLimit(@NonNull Context context) { + return SystemProperties.getInt(MAX_TASK_LIMIT_SYS_PROP, + context.getResources().getInteger(R.integer.config_maxDesktopWindowingActiveTasks)); + } + + /** + * Return the maximum size of the window decoration surface control view host pool, or zero if + * there should be no pooling. + */ + public static int getWindowDecorScvhPoolSize(@NonNull Context context) { + if (!DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_SCVH_CACHE.isTrue()) return 0; + final int maxTaskLimit = getMaxTaskLimit(context); + if (maxTaskLimit > 0) { + return maxTaskLimit; + } + // TODO: b/368032552 - task limit equal to 0 means unlimited. Figure out what the pool + // size should be in that case. + return 0; + } + + /** The number of [WindowDecorViewHost] instances to warm up on system start. */ + public static int getWindowDecorPreWarmSize() { + return SystemProperties.getInt(WINDOW_DECOR_PRE_WARM_SIZE_SYS_PROP, + WINDOW_DECOR_PRE_WARM_SIZE); + } + /** * Return {@code true} if the current device supports desktop mode. */ @@ -119,7 +244,7 @@ public class DesktopModeStatus { */ public static boolean canShowDesktopExperienceDevOption(@NonNull Context context) { return Flags.showDesktopExperienceDevOption() - && isDeviceEligibleForDesktopExperienceDevOption(context); + && isDeviceEligibleForDesktopMode(context); } /** Returns if desktop mode dev option should be enabled if there is no user override. */ @@ -132,20 +257,28 @@ public class DesktopModeStatus { * Return {@code true} if desktop mode is enabled and can be entered on the current device. */ public static boolean canEnterDesktopMode(@NonNull Context context) { - boolean isEligibleForDesktopMode = isDeviceEligibleForDesktopMode(context) && ( - DesktopExperienceFlags.ENABLE_PROJECTED_DISPLAY_DESKTOP_MODE.isTrue() - || canInternalDisplayHostDesktops(context)); - boolean desktopModeEnabled = - isEligibleForDesktopMode && DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODE.isTrue(); - return desktopModeEnabled || isDesktopModeEnabledByDevOption(context); + try { + return (isDeviceEligibleForDesktopMode(context) + && DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODE.isTrue()) + || isDesktopModeEnabledByDevOption(context); + } catch (Throwable e) { + // Lawnchair-TODO-Postmerge: All of the LC-Ignored MAY be only accessible to newer APIs. + // LC-Ignored + return false; + } } /** * Check if Desktop mode should be enabled because the dev option is shown and enabled. */ private static boolean isDesktopModeEnabledByDevOption(@NonNull Context context) { - return DesktopModeFlags.isDesktopModeForcedEnabled() + try { + return DesktopModeFlags.isDesktopModeForcedEnabled() && canShowDesktopModeDevOption(context); + } catch (Throwable e) { + // LC-Ignored + return false; + } } /** @@ -164,21 +297,14 @@ public class DesktopModeStatus { } // TODO (b/395014779): Change this to use WM API - if (!DesktopExperienceFlags.ENABLE_DISPLAY_CONTENT_MODE_MANAGEMENT.isTrue()) { - return false; + if ((display.getType() == Display.TYPE_EXTERNAL + || display.getType() == Display.TYPE_OVERLAY) + && enableDisplayContentModeManagement()) { + final WindowManager wm = context.getSystemService(WindowManager.class); + return wm != null && wm.shouldShowSystemDecors(display.getDisplayId()); } - final WindowManager wm = context.getSystemService(WindowManager.class); - return wm != null && wm.isEligibleForDesktopMode(display.getDisplayId()); - } - /** - * Returns true if the multi-desks frontend should be enabled on the display. - */ - public static boolean isMultipleDesktopFrontendEnabledOnDisplay(@NonNull Context context, - Display display) { - return DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_FRONTEND.isTrue() - && DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue() - && isDesktopModeSupportedOnDisplay(context, display); + return false; } /** @@ -186,9 +312,14 @@ public class DesktopModeStatus { * frontend implementations). */ public static boolean enableMultipleDesktops(@NonNull Context context) { - return DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue() - && DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_FRONTEND.isTrue() + try { + return DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue() + && Flags.enableMultipleDesktopsFrontend() && canEnterDesktopMode(context); + } catch (Throwable e) { + // LC-Ignored + return false; + } } /** @@ -196,8 +327,27 @@ public class DesktopModeStatus { * necessarily enabling desktop mode */ public static boolean overridesShowAppHandle(@NonNull Context context) { - return (Flags.showAppHandleLargeScreens() || enableBubbleToFullscreen()) - && deviceHasLargeScreen(context); + try { + return (Flags.showAppHandleLargeScreens() || enableBubbleToFullscreen()) + && deviceHasLargeScreen(context); + } catch (Throwable t) { + return false; + } + } + + /** + * @return If {@code true} we set opaque background for all freeform tasks to prevent freeform + * tasks below from being visible if freeform task window above is translucent. + * Otherwise if fluid resize is enabled, add a background to freeform tasks. + */ + public static boolean shouldSetBackground(@NonNull TaskInfo taskInfo) { + try { + return taskInfo.isFreeform() && (!DesktopModeStatus.isVeiledResizeEnabled() + || DesktopModeFlags.ENABLE_OPAQUE_BACKGROUND_FOR_TRANSPARENT_WINDOWS.isTrue()); + } catch (Throwable e) { + // LC-Ignored + return false; + } } /** @@ -208,30 +358,64 @@ public class DesktopModeStatus { return canEnterDesktopMode(context) || overridesShowAppHandle(context); } - /** + /** + * Return {@code true} if the override desktop density is enabled and valid. + */ + public static boolean useDesktopOverrideDensity() { + return isDesktopDensityOverrideEnabled() && isValidDesktopDensityOverrideSet(); + } + + /** + * Returns {@code true} if the app-to-web feature is using the build-time generic links list. + */ + public static boolean useAppToWebBuildTimeGenericLinks() { + return USE_APP_TO_WEB_BUILD_TIME_GENERIC_LINKS; + } + + /** + * Return {@code true} if the override desktop density is enabled. + */ + private static boolean isDesktopDensityOverrideEnabled() { + return DESKTOP_DENSITY_OVERRIDE_ENABLED; + } + + /** + * Return {@code true} if the override desktop density is set and within a valid range. + */ + private static boolean isValidDesktopDensityOverrideSet() { + return DESKTOP_DENSITY_OVERRIDE >= DESKTOP_DENSITY_MIN + && DESKTOP_DENSITY_OVERRIDE <= DESKTOP_DENSITY_MAX; + } + + /** * Return {@code true} if desktop mode is unrestricted and is supported on the device. */ public static boolean isDeviceEligibleForDesktopMode(@NonNull Context context) { if (!enforceDeviceRestrictions()) { return true; } - final boolean enableDesktopModeThroughDevOption; - if (false) { - // LC-Ignored: Lawnchair-TODO: Intentional unless we can find a way to detect QPR1 build or skip to Android 17 - enableDesktopModeThroughDevOption = Flags.enableDesktopModeThroughDevOption(); - } else { - enableDesktopModeThroughDevOption = false; - } - final boolean desktopModeSupportedByDevOptions = - enableDesktopModeThroughDevOption + try { + // If projected display is enabled, #canInternalDisplayHostDesktops is no longer a + // requirement. + final boolean desktopModeSupported = ENABLE_PROJECTED_DISPLAY_DESKTOP_MODE.isTrue() + ? isDesktopModeSupported(context) : (isDesktopModeSupported(context) + && canInternalDisplayHostDesktops(context)); + final boolean desktopModeSupportedByDevOptions = + Flags.enableDesktopModeThroughDevOption() && isDesktopModeDevOptionSupported(context); - return isDesktopModeSupported(context) || desktopModeSupportedByDevOptions; + return desktopModeSupported || desktopModeSupportedByDevOptions; + } catch (Throwable e) { + // LC-Ignored + return false; + } } /** - * Return {@code true} if the developer option for desktop mode is supported on this device. + * Return {@code true} if the developer option for desktop mode is unrestricted and is supported + * in the device. * - * <p> This method doesn't check if the developer option flag is enabled or not. + * Note that, if {@link #isDeviceEligibleForDesktopMode(Context)} is true, then + * {@link #isDeviceEligibleForDesktopModeDevOption(Context)} is also true. */ private static boolean isDeviceEligibleForDesktopModeDevOption(@NonNull Context context) { if (!enforceDeviceRestrictions()) { @@ -242,19 +426,6 @@ public class DesktopModeStatus { return desktopModeSupported || isDesktopModeDevOptionSupported(context); } - /** - * Return {@code true} if the developer option for desktop experience is supported on this - * device. - * - * <p> This method doesn't check if the developer option flag is enabled or not. - */ - private static boolean isDeviceEligibleForDesktopExperienceDevOption(@NonNull Context context) { - if (!enforceDeviceRestrictions()) { - return true; - } - return isDesktopModeSupported(context) || isDesktopModeDevOptionSupported(context); - } - /** * @return {@code true} if this device has an internal large screen */ @@ -275,14 +446,52 @@ public class DesktopModeStatus { * of the display's root [TaskDisplayArea] is set to WINDOWING_MODE_FREEFORM. */ public static boolean enterDesktopByDefaultOnFreeformDisplay(@NonNull Context context) { - if (DesktopExperienceFlags.ENABLE_DESKTOP_FIRST_BASED_DEFAULT_TO_DESKTOP_BUGFIX.isTrue()) { - return true; - } - if (!DesktopExperienceFlags.ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS.isTrue()) { + try { + if (!DesktopExperienceFlags.ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAYS.isTrue()) { + return false; + } + } catch (Throwable e) { + // LC-Ignored return false; } + return SystemProperties.getBoolean(ENTER_DESKTOP_BY_DEFAULT_ON_FREEFORM_DISPLAY_SYS_PROP, context.getResources().getBoolean( R.bool.config_enterDesktopByDefaultOnFreeformDisplay)); } + + /** + * Return {@code true} if a window should be maximized when it's dragged to the top edge of the + * screen. + */ + public static boolean shouldMaximizeWhenDragToTopEdge(@NonNull Context context) { + try { + if (!DesktopExperienceFlags.ENABLE_DRAG_TO_MAXIMIZE.isTrue()) { + return false; + } + } catch (Throwable e) { + // LC-Ignored + return false; + } + return SystemProperties.getBoolean(ENABLE_DRAG_TO_MAXIMIZE_SYS_PROP, + context.getResources().getBoolean(R.bool.config_dragToMaximizeInDesktopMode)); + } + + /** Dumps DesktopModeStatus flags and configs. */ + public static void dump(PrintWriter pw, String prefix, Context context) { + String innerPrefix = prefix + " "; + pw.print(prefix); pw.println(TAG); + pw.print(innerPrefix); pw.print("maxTaskLimit="); pw.println(getMaxTaskLimit(context)); + + pw.print(innerPrefix); pw.print("maxTaskLimit config override="); + pw.println(context.getResources().getInteger( + R.integer.config_maxDesktopWindowingActiveTasks)); + + SystemProperties.Handle maxTaskLimitHandle = SystemProperties.find(MAX_TASK_LIMIT_SYS_PROP); + pw.print(innerPrefix); pw.print("maxTaskLimit sysprop="); + pw.println(maxTaskLimitHandle == null ? "null" : maxTaskLimitHandle.getInt(/* def= */ -1)); + + pw.print(innerPrefix); pw.print("showAppHandle config override="); + pw.println(overridesShowAppHandle(context)); + } } diff --git a/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeTransitionSource.kt b/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeTransitionSource.kt index 89dec9750d..23498de724 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeTransitionSource.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/desktopmode/DesktopModeTransitionSource.kt @@ -21,8 +21,6 @@ import android.os.Parcelable /** Transition source types for Desktop Mode. */ enum class DesktopModeTransitionSource : Parcelable { - /** Transitions that originated from an adb command. */ - ADB_COMMAND, /** Transitions that originated as a consequence of task dragging. */ TASK_DRAG, /** Transitions that originated from an app from Overview. */ diff --git a/wmshell/shared/src/com/android/wm/shell/shared/multiinstance/ManageWindowsViewContainer.kt b/wmshell/shared/src/com/android/wm/shell/shared/multiinstance/ManageWindowsViewContainer.kt index 37745d7373..f554aba545 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/multiinstance/ManageWindowsViewContainer.kt +++ b/wmshell/shared/src/com/android/wm/shell/shared/multiinstance/ManageWindowsViewContainer.kt @@ -35,7 +35,6 @@ import android.view.ViewGroup.MarginLayoutParams import android.widget.LinearLayout import android.window.TaskSnapshot import com.android.wm.shell.R -//import com.android.wm.shell.shared.R /** * View for the All Windows menu option, used by both Desktop Windowing and Taskbar. diff --git a/wmshell/shared/src/com/android/wm/shell/shared/split/SplitBounds.java b/wmshell/shared/src/com/android/wm/shell/shared/split/SplitBounds.java index 99c0dfeefc..7c1faa667d 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/split/SplitBounds.java +++ b/wmshell/shared/src/com/android/wm/shell/shared/split/SplitBounds.java @@ -15,18 +15,12 @@ */ package com.android.wm.shell.shared.split; -import static android.app.ActivityTaskManager.INVALID_TASK_ID; - -import android.annotation.NonNull; import android.graphics.Rect; import android.os.Parcel; import android.os.Parcelable; import com.android.wm.shell.shared.split.SplitScreenConstants.PersistentSnapPosition; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; import java.util.Objects; /** @@ -53,42 +47,13 @@ public class SplitBounds implements Parcelable { * the bounds were originally in */ public final boolean appsStackedVertically; - /** - * If {@code true}, that means at the time of creation of this object, the phone was in - * seascape orientation. This is important on devices with insets, because they do not split - * evenly -- one of the insets must be slightly larger to account for the inset. - * From landscape, it is the leftTop task that expands slightly. - * From seascape, it is the rightBottom task that expands slightly. - */ - public final boolean initiatedFromSeascape; - /** @deprecated Use {@link #leftTopTaskIds} instead. */ - @Deprecated public final int leftTopTaskId; - /** @deprecated Use {@link #rightBottomTaskIds} instead. */ - @Deprecated public final int rightBottomTaskId; - @NonNull - public final List<Integer> leftTopTaskIds; - @NonNull - public final List<Integer> rightBottomTaskIds; - public SplitBounds(Rect leftTopBounds, Rect rightBottomBounds, - int leftTopTaskId, int rightBottomTaskId, - @NonNull List<Integer> leftTopTaskIds, @NonNull List<Integer> rightBottomTaskIds, - @PersistentSnapPosition int snapPosition) { - if (leftTopTaskId == INVALID_TASK_ID || rightBottomTaskId == INVALID_TASK_ID - || leftTopTaskId == rightBottomTaskId - || leftTopTaskIds.isEmpty() || rightBottomTaskIds.isEmpty()) { - throw new IllegalArgumentException("The Split task ids are invalid:" - + " leftTopTaskId: " + leftTopTaskId - + " rightBottomTaskId: " + rightBottomTaskId - + " leftTopTaskId size: " + leftTopTaskIds.size() - + " rightBottomTaskId size: " + rightBottomTaskIds.size()); - } + public SplitBounds(Rect leftTopBounds, Rect rightBottomBounds, int leftTopTaskId, + int rightBottomTaskId, @PersistentSnapPosition int snapPosition) { this.leftTopBounds = leftTopBounds; this.rightBottomBounds = rightBottomBounds; - this.leftTopTaskIds = List.copyOf(leftTopTaskIds); - this.rightBottomTaskIds = List.copyOf(rightBottomTaskIds); this.leftTopTaskId = leftTopTaskId; this.rightBottomTaskId = rightBottomTaskId; this.snapPosition = snapPosition; @@ -98,18 +63,11 @@ public class SplitBounds implements Parcelable { this.visualDividerBounds = new Rect(leftTopBounds.left, leftTopBounds.bottom, leftTopBounds.right, rightBottomBounds.top); appsStackedVertically = true; - initiatedFromSeascape = false; } else { // horizontal apps, vertical divider this.visualDividerBounds = new Rect(leftTopBounds.right, leftTopBounds.top, rightBottomBounds.left, leftTopBounds.bottom); appsStackedVertically = false; - // The following check is unreliable on devices without insets - // (initiatedFromSeascape will always be set to false.) This happens to be OK for - // all our current uses, but should be refactored. - // TODO: Create a more reliable check, or refactor how splitting works on devices - // with insets. - initiatedFromSeascape = rightBottomBounds.width() > leftTopBounds.width(); } float totalWidth = rightBottomBounds.right - leftTopBounds.left; @@ -120,46 +78,6 @@ public class SplitBounds implements Parcelable { dividerHeightPercent = visualDividerBounds.height() / totalHeight; } - public SplitBounds(Rect leftTopBounds, Rect rightBottomBounds, int leftTopTaskId, - int rightBottomTaskId, @PersistentSnapPosition int snapPosition) { - this(leftTopBounds, rightBottomBounds, leftTopTaskId, rightBottomTaskId, - Collections.singletonList(leftTopTaskId), - Collections.singletonList(rightBottomTaskId), snapPosition); - } - - /** - * Returns the percentage size of the left/top task (compared to the full width/height of - * the split pair). E.g. if the left task is 4 units wide, the divider is 2 units, and the - * right task is 4 units, this method will return 0.4f. - */ - public float getLeftTopTaskPercent() { - // topTaskPercent and leftTaskPercent are defined at creation time, and are not updated - // on device rotate, so we have to check appsStackedVertically to return the right - // creation-time measurements. - return appsStackedVertically ? topTaskPercent : leftTaskPercent; - } - - /** - * Returns the percentage size of the divider's thickness (compared to the full width/height - * of the split pair). E.g. if the left task is 4 units wide, the divider is 2 units, and - * the right task is 4 units, this method will return 0.2f. - */ - public float getDividerPercent() { - // dividerHeightPercent and dividerWidthPercent are defined at creation time, and are - // not updated on device rotate, so we have to check appsStackedVertically to return - // the right creation-time measurements. - return appsStackedVertically ? dividerHeightPercent : dividerWidthPercent; - } - - /** - * Returns the percentage size of the right/bottom task (compared to the full width/height - * of the split pair). E.g. if the left task is 4 units wide, the divider is 2 units, and - * the right task is 4 units, this method will return 0.4f. - */ - public float getRightBottomTaskPercent() { - return 1 - (getLeftTopTaskPercent() + getDividerPercent()); - } - public SplitBounds(Parcel parcel) { leftTopBounds = parcel.readTypedObject(Rect.CREATOR); rightBottomBounds = parcel.readTypedObject(Rect.CREATOR); @@ -167,22 +85,11 @@ public class SplitBounds implements Parcelable { topTaskPercent = parcel.readFloat(); leftTaskPercent = parcel.readFloat(); appsStackedVertically = parcel.readBoolean(); - initiatedFromSeascape = parcel.readBoolean(); + leftTopTaskId = parcel.readInt(); + rightBottomTaskId = parcel.readInt(); dividerWidthPercent = parcel.readFloat(); dividerHeightPercent = parcel.readFloat(); snapPosition = parcel.readInt(); - leftTopTaskId = parcel.readInt(); - rightBottomTaskId = parcel.readInt(); - int size = parcel.readInt(); - leftTopTaskIds = new ArrayList<>(); - for (int i = 0; i < size; i++) { - leftTopTaskIds.add(parcel.readInt()); - } - size = parcel.readInt(); - rightBottomTaskIds = new ArrayList<>(); - for (int i = 0; i < size; i++) { - rightBottomTaskIds.add(parcel.readInt()); - } } @Override @@ -193,20 +100,11 @@ public class SplitBounds implements Parcelable { parcel.writeFloat(topTaskPercent); parcel.writeFloat(leftTaskPercent); parcel.writeBoolean(appsStackedVertically); - parcel.writeBoolean(initiatedFromSeascape); + parcel.writeInt(leftTopTaskId); + parcel.writeInt(rightBottomTaskId); parcel.writeFloat(dividerWidthPercent); parcel.writeFloat(dividerHeightPercent); parcel.writeInt(snapPosition); - parcel.writeInt(leftTopTaskId); - parcel.writeInt(rightBottomTaskId); - parcel.writeInt(leftTopTaskIds.size()); - for (Integer id : leftTopTaskIds) { - parcel.writeInt(id); // Write each Integer in the List - } - parcel.writeInt(rightBottomTaskIds.size()); - for (Integer id : rightBottomTaskIds) { - parcel.writeInt(id); // Write each Integer in the List - } } @Override @@ -223,23 +121,19 @@ public class SplitBounds implements Parcelable { final SplitBounds other = (SplitBounds) obj; return Objects.equals(leftTopBounds, other.leftTopBounds) && Objects.equals(rightBottomBounds, other.rightBottomBounds) - && leftTopTaskIds.equals(other.leftTopTaskIds) - && rightBottomTaskIds.equals(other.rightBottomTaskIds) - && snapPosition == other.snapPosition; + && leftTopTaskId == other.leftTopTaskId + && rightBottomTaskId == other.rightBottomTaskId; } @Override public int hashCode() { - return Objects.hash(leftTopBounds, rightBottomBounds, - leftTopTaskId, rightBottomTaskId, leftTopTaskIds, rightBottomTaskIds); + return Objects.hash(leftTopBounds, rightBottomBounds, leftTopTaskId, rightBottomTaskId); } @Override public String toString() { - return "LeftTop: " + leftTopBounds + " taskId: " + leftTopTaskId - + ", taskIds: " + leftTopTaskIds + "\n" - + "RightBottom: " + rightBottomBounds + " taskId: " + rightBottomTaskId - + ", taskIds: " + rightBottomTaskIds + "\n" + return "LeftTop: " + leftTopBounds + ", taskId: " + leftTopTaskId + "\n" + + "RightBottom: " + rightBottomBounds + ", taskId: " + rightBottomTaskId + "\n" + "Divider: " + visualDividerBounds + "\n" + "AppsVertical? " + appsStackedVertically + "\n" + "snapPosition: " + snapPosition; diff --git a/wmshell/shared/src/com/android/wm/shell/shared/split/SplitScreenConstants.java b/wmshell/shared/src/com/android/wm/shell/shared/split/SplitScreenConstants.java index 2d6779bab0..759e711100 100644 --- a/wmshell/shared/src/com/android/wm/shell/shared/split/SplitScreenConstants.java +++ b/wmshell/shared/src/com/android/wm/shell/shared/split/SplitScreenConstants.java @@ -157,12 +157,6 @@ public class SplitScreenConstants { */ public static final int SNAP_TO_3_10_45_45 = 7; - /** - * A transitional state where the user has tapped an offscreen app, and the offscreen app is - * currently animating back onscreen. - */ - public static final int ANIMATING_OFFSCREEN_TAP = 100; - /** * These snap targets are used for split pairs in a stable, non-transient state. They may be * persisted in Launcher when the user saves an app pair. They are a subset of @@ -182,7 +176,7 @@ public class SplitScreenConstants { /** * These are all the valid "states" that split screen can be in. It's the set of - * {@link PersistentSnapPosition} + {@link #NOT_IN_SPLIT} + other mid-animation states. + * {@link PersistentSnapPosition} + {@link #NOT_IN_SPLIT}. */ @IntDef(value = { NOT_IN_SPLIT, // user is not in split screen @@ -195,11 +189,10 @@ public class SplitScreenConstants { SNAP_TO_3_33_33_33, SNAP_TO_3_45_45_10, SNAP_TO_3_10_45_45, - ANIMATING_OFFSCREEN_TAP // user tapped offscreen app to retrieve it }) public @interface SplitScreenState {} - /** Converts a {@link SplitScreenState} to a human-readable string, for debug use. */ + /** Converts a {@link SplitScreenState} to a human-readable string. */ public static String stateToString(@SplitScreenState int state) { return switch (state) { case NOT_IN_SPLIT -> "NOT_IN_SPLIT"; @@ -212,38 +205,10 @@ public class SplitScreenConstants { case SNAP_TO_3_33_33_33 -> "SNAP_TO_3_33_33_33"; case SNAP_TO_3_45_45_10 -> "SNAP_TO_3_45_45_10"; case SNAP_TO_3_10_45_45 -> "SNAP_TO_3_10_45_45"; - case ANIMATING_OFFSCREEN_TAP -> "ANIMATING_OFFSCREEN_TAP"; default -> "UNKNOWN"; }; } - /** Converts a {@link SnapPosition} to a string, for UI use. */ - public static String snapPositionToUIString(@SnapPosition int snapPosition) { - return switch (snapPosition) { - case SNAP_TO_START_AND_DISMISS -> "\u2715"; - case SNAP_TO_END_AND_DISMISS -> "\u2715"; - case SNAP_TO_2_33_66 -> "30:70"; - case SNAP_TO_2_50_50 -> "50:50"; - case SNAP_TO_2_66_33 -> "70:30"; - case SNAP_TO_2_90_10 -> "90:10"; - case SNAP_TO_2_10_90 -> "10:90"; - default -> "Split"; - }; - } - - /** - * Convenience method to convert between the IntDef's to avoid some errors - * @return {@code -1} if splitScreenState does not have a valid/corresponding - * PersistentSnapPosition - */ - @PersistentSnapPosition - public static int splitStateToSnapPosition(@SplitScreenState int splitScreenState) { - return switch (splitScreenState) { - case NOT_IN_SPLIT, SNAP_TO_NONE, ANIMATING_OFFSCREEN_TAP -> -1; - default -> splitScreenState; - }; - } - /** * Checks if the snapPosition in question is a {@link PersistentSnapPosition}. */ diff --git a/wmshell/src/com/android/wm/shell/ProtoLogController.java b/wmshell/src/com/android/wm/shell/ProtoLogController.java index b855c24647..ef9bf008b2 100644 --- a/wmshell/src/com/android/wm/shell/ProtoLogController.java +++ b/wmshell/src/com/android/wm/shell/ProtoLogController.java @@ -16,9 +16,10 @@ package com.android.wm.shell; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.LegacyProtoLogImpl; import com.android.internal.protolog.common.ILogger; import com.android.internal.protolog.common.IProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellInit; @@ -28,7 +29,7 @@ import java.util.Arrays; /** * Controls the {@link ProtoLog} in WMShell via adb shell commands. * - * Use with {@code adb shell wm shell protolog ...}. + * Use with {@code adb shell dumpsys activity service SystemUIService WMShell protolog ...}. */ public class ProtoLogController implements ShellCommandHandler.ShellCommandActionHandler { private final ShellCommandHandler mShellCommandHandler; @@ -50,16 +51,28 @@ public class ProtoLogController implements ShellCommandHandler.ShellCommandActio final ILogger logger = pw::println; switch (args[0]) { case "status": { - pw.println("(Deprecated) legacy command. Use Perfetto commands instead."); - return false; + if (android.tracing.Flags.perfettoProtologTracing()) { + pw.println("(Deprecated) legacy command. Use Perfetto commands instead."); + return false; + } + ((LegacyProtoLogImpl) mShellProtoLog).getStatus(); + return true; } case "start": { - pw.println("(Deprecated) legacy command. Use Perfetto commands instead."); - return false; + if (android.tracing.Flags.perfettoProtologTracing()) { + pw.println("(Deprecated) legacy command. Use Perfetto commands instead."); + return false; + } + ((LegacyProtoLogImpl) mShellProtoLog).startProtoLog(pw); + return true; } case "stop": { - pw.println("(Deprecated) legacy command. Use Perfetto commands instead."); - return false; + if (android.tracing.Flags.perfettoProtologTracing()) { + pw.println("(Deprecated) legacy command. Use Perfetto commands instead."); + return false; + } + ((LegacyProtoLogImpl) mShellProtoLog).stopProtoLog(pw, true); + return true; } case "enable-text": { String[] groups = Arrays.copyOfRange(args, 1, args.length); @@ -88,8 +101,17 @@ public class ProtoLogController implements ShellCommandHandler.ShellCommandActio return mShellProtoLog.stopLoggingToLogcat(groups, logger) == 0; } case "save-for-bugreport": { - pw.println("(Deprecated) legacy command"); - return false; + if (android.tracing.Flags.perfettoProtologTracing()) { + pw.println("(Deprecated) legacy command"); + return false; + } + if (!mShellProtoLog.isProtoEnabled()) { + pw.println("Logging to proto is not enabled for WMShell."); + return false; + } + ((LegacyProtoLogImpl) mShellProtoLog).stopProtoLog(pw, true /* writeToFile */); + ((LegacyProtoLogImpl) mShellProtoLog).startProtoLog(pw); + return true; } default: { pw.println("Invalid command: " + args[0]); diff --git a/wmshell/src/com/android/wm/shell/RootDisplayAreaOrganizer.java b/wmshell/src/com/android/wm/shell/RootDisplayAreaOrganizer.java index d87725ccbd..2e5448a9e8 100644 --- a/wmshell/src/com/android/wm/shell/RootDisplayAreaOrganizer.java +++ b/wmshell/src/com/android/wm/shell/RootDisplayAreaOrganizer.java @@ -25,13 +25,11 @@ import android.view.SurfaceControl; import android.window.DisplayAreaAppearedInfo; import android.window.DisplayAreaInfo; import android.window.DisplayAreaOrganizer; -import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.sysui.ShellInit; import java.io.PrintWriter; @@ -144,11 +142,6 @@ public class RootDisplayAreaOrganizer extends DisplayAreaOrganizer { return wct; } - @Nullable - public WindowContainerToken getDisplayTokenForDisplay(int displayId) { - return mDisplayAreasInfo.get(displayId).token; - } - public void dump(@NonNull PrintWriter pw, String prefix) { final String innerPrefix = prefix + " "; final String childPrefix = innerPrefix + " "; diff --git a/wmshell/src/com/android/wm/shell/RootTaskDisplayAreaOrganizer.java b/wmshell/src/com/android/wm/shell/RootTaskDisplayAreaOrganizer.java index c53715c800..5143d41959 100644 --- a/wmshell/src/com/android/wm/shell/RootTaskDisplayAreaOrganizer.java +++ b/wmshell/src/com/android/wm/shell/RootTaskDisplayAreaOrganizer.java @@ -38,7 +38,7 @@ import android.window.SystemPerformanceHinter; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.sysui.ShellInit; import java.io.PrintWriter; @@ -102,14 +102,6 @@ public class RootTaskDisplayAreaOrganizer extends DisplayAreaOrganizer { } } - /** Unregisters the given listener associated to the given display. */ - public void unregisterListener(int displayId, RootTaskDisplayAreaListener listener) { - final ArrayList<RootTaskDisplayAreaListener> listeners = mListeners.get(displayId); - if (listeners != null) { - listeners.remove(listener); - } - } - public void unregisterListener(RootTaskDisplayAreaListener listener) { for (int i = mListeners.size() - 1; i >= 0; --i) { final List<RootTaskDisplayAreaListener> listeners = mListeners.valueAt(i); @@ -123,14 +115,6 @@ public class RootTaskDisplayAreaOrganizer extends DisplayAreaOrganizer { b.setParent(sc); } - /** - * Sets the layer of {@param sc} to be relative to the TDA on {@param displayId}. - */ - public void relZToDisplayArea(int displayId, SurfaceControl sc, SurfaceControl.Transaction t, - int z) { - t.setRelativeLayer(sc, mLeashes.get(displayId), z); - } - /** * Re-parents the provided surface to the leash of the provided display. * @@ -246,11 +230,6 @@ public class RootTaskDisplayAreaOrganizer extends DisplayAreaOrganizer { return mDisplayAreasInfo.get(displayId); } - @Nullable - public SurfaceControl getDisplayAreaLeash(int displayId) { - return mLeashes.get(displayId); - } - /** * Applies the {@link DisplayAreaInfo} to the {@link DisplayAreaContext} specified by * {@link DisplayAreaInfo#displayId}. diff --git a/wmshell/src/com/android/wm/shell/ShellTaskOrganizer.java b/wmshell/src/com/android/wm/shell/ShellTaskOrganizer.java index 9c0a2a7957..3ded7d2464 100644 --- a/wmshell/src/com/android/wm/shell/ShellTaskOrganizer.java +++ b/wmshell/src/com/android/wm/shell/ShellTaskOrganizer.java @@ -23,45 +23,40 @@ import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; -import static android.view.Display.DEFAULT_DISPLAY; -import static com.android.wm.shell.compatui.impl.CompatUIEventsKt.SIZE_COMPAT_RESTART_BUTTON_APPEARED; -import static com.android.wm.shell.compatui.impl.CompatUIEventsKt.SIZE_COMPAT_RESTART_BUTTON_CLICKED; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_TASK_ORG; +import static com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.app.ActivityManager.RunningTaskInfo; +import android.app.CameraCompatTaskInfo.CameraCompatControlState; import android.app.TaskInfo; import android.app.WindowConfiguration; import android.content.LocusId; import android.content.pm.ActivityInfo; import android.graphics.Rect; import android.os.Binder; -import android.os.Debug; import android.os.IBinder; import android.util.ArrayMap; +import android.util.ArraySet; import android.util.Log; import android.util.SparseArray; import android.view.SurfaceControl; import android.window.ITaskOrganizerController; +import android.window.ScreenCapture; import android.window.StartingWindowInfo; import android.window.StartingWindowRemovalInfo; import android.window.TaskAppearedInfo; import android.window.TaskOrganizer; -import android.window.WindowContainerTransaction; -import android.window.WindowContainerTransactionCallback; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.FrameworkStatsLog; +import com.android.wm.shell.common.ScreenshotUtils; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.compatui.CompatUIController; -import com.android.wm.shell.compatui.api.CompatUIHandler; -import com.android.wm.shell.compatui.api.CompatUIInfo; -import com.android.wm.shell.compatui.impl.CompatUIEvents.SizeCompatRestartButtonAppeared; -import com.android.wm.shell.compatui.impl.CompatUIEvents.SizeCompatRestartButtonClicked; import com.android.wm.shell.recents.RecentTasksController; import com.android.wm.shell.startingsurface.StartingWindowController; import com.android.wm.shell.sysui.ShellCommandHandler; @@ -74,13 +69,14 @@ import java.util.Arrays; import java.util.List; import java.util.Objects; import java.util.Optional; -import java.util.concurrent.CopyOnWriteArrayList; +import java.util.function.Consumer; /** * Unified task organizer for all components in the shell. * TODO(b/167582004): may consider consolidating this class and TaskOrganizer */ -public class ShellTaskOrganizer extends TaskOrganizer { +public class ShellTaskOrganizer extends TaskOrganizer implements + CompatUIController.CompatUICallback { private static final String TAG = "ShellTaskOrganizer"; // Intentionally using negative numbers here so the positive numbers can be used @@ -103,9 +99,10 @@ public class ShellTaskOrganizer extends TaskOrganizer { /** * Callbacks for when the tasks change in the system. */ - public interface TaskListener extends TaskVanishedListener, TaskAppearedListener, - TaskInfoChangedListener { - + public interface TaskListener { + default void onTaskAppeared(RunningTaskInfo taskInfo, SurfaceControl leash) {} + default void onTaskInfoChanged(RunningTaskInfo taskInfo) {} + default void onTaskVanished(RunningTaskInfo taskInfo) {} default void onBackPressedOnTaskRoot(RunningTaskInfo taskInfo) {} /** Whether this task listener supports compat UI. */ default boolean supportCompatUI() { @@ -126,50 +123,6 @@ public class ShellTaskOrganizer extends TaskOrganizer { default void dump(@NonNull PrintWriter pw, String prefix) {}; } - /** - * Limited scope callback to notify when a task is removed from the system. This signal is - * not synchronized with anything (or any transition), and should not be used in cases where - * that is necessary. - */ - public interface TaskVanishedListener { - /** - * Invoked when a Task is removed from Shell. - * - * @param taskInfo The RunningTaskInfo for the Task. - */ - default void onTaskVanished(RunningTaskInfo taskInfo) {} - } - - /** - * Limited scope callback to notify when a task is added from the system. This signal is - * not synchronized with anything (or any transition), and should not be used in cases where - * that is necessary. - */ - public interface TaskAppearedListener { - /** - * Invoked when a Task appears on Shell. Because the leash can be shared between different - * implementations, it's important to not apply changes in the related callback. - * - * @param taskInfo The RunningTaskInfo for the Task. - * @param leash The leash for the Task which should not be changed through this callback. - */ - default void onTaskAppeared(RunningTaskInfo taskInfo, SurfaceControl leash) {} - } - - /** - * Limited scope callback to notify when a task has updated. This signal is - * not synchronized with anything (or any transition), and should not be used in cases where - * that is necessary. - */ - public interface TaskInfoChangedListener { - /** - * Invoked when a Task is updated on Shell. - * - * @param taskInfo The RunningTaskInfo for the Task. - */ - default void onTaskInfoChanged(RunningTaskInfo taskInfo) {} - } - /** * Callbacks for events on a task with a locus id. */ @@ -205,31 +158,14 @@ public class ShellTaskOrganizer extends TaskOrganizer { /** @see #setPendingLaunchCookieListener */ private final ArrayMap<IBinder, TaskListener> mLaunchCookieToListener = new ArrayMap<>(); - /** @see #setPendingTaskListener(int, TaskListener) */ - private final ArrayMap<Integer, TaskListener> mPendingTaskToListener = new ArrayMap<>(); - // Keeps track of taskId's with visible locusIds. Used to notify any {@link LocusIdListener}s // that might be set. private final SparseArray<LocusId> mVisibleTasksWithLocusId = new SparseArray<>(); /** @see #addLocusIdListener */ - private final CopyOnWriteArrayList<LocusIdListener> mLocusIdListeners = - new CopyOnWriteArrayList<>(); + private final ArraySet<LocusIdListener> mLocusIdListeners = new ArraySet<>(); - private final CopyOnWriteArrayList<FocusListener> mFocusListeners = - new CopyOnWriteArrayList<>(); - - // Listeners that should be notified when a task is vanished. - private final CopyOnWriteArrayList<TaskVanishedListener> mTaskVanishedListeners = - new CopyOnWriteArrayList<>(); - - // Listeners that should be notified when a task has appeared. - private final CopyOnWriteArrayList<TaskAppearedListener> mTaskAppearedListeners = - new CopyOnWriteArrayList<>(); - - // Listeners that should be notified when a task is updated - private final CopyOnWriteArrayList<TaskInfoChangedListener> mTaskInfoChangedListeners = - new CopyOnWriteArrayList<>(); + private final ArraySet<FocusListener> mFocusListeners = new ArraySet<>(); private final Object mLock = new Object(); private StartingWindowController mStartingWindow; @@ -246,11 +182,12 @@ public class ShellTaskOrganizer extends TaskOrganizer { * In charge of showing compat UI. Can be {@code null} if the device doesn't support size * compat or if this isn't the main {@link ShellTaskOrganizer}. * - * <p>NOTE: only the main {@link ShellTaskOrganizer} should have a {@link CompatUIHandler}, - * Subclasses should be initialized with a {@code null} {@link CompatUIHandler}. + * <p>NOTE: only the main {@link ShellTaskOrganizer} should have a {@link CompatUIController}, + * and register itself as a {@link CompatUIController.CompatUICallback}. Subclasses should be + * initialized with a {@code null} {@link CompatUIController}. */ @Nullable - private final CompatUIHandler mCompatUI; + private final CompatUIController mCompatUI; @NonNull private final ShellCommandHandler mShellCommandHandler; @@ -274,7 +211,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { public ShellTaskOrganizer(ShellInit shellInit, ShellCommandHandler shellCommandHandler, - @Nullable CompatUIHandler compatUI, + @Nullable CompatUIController compatUI, Optional<UnfoldAnimationController> unfoldAnimationController, Optional<RecentTasksController> recentTasks, ShellExecutor mainExecutor) { @@ -286,7 +223,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { protected ShellTaskOrganizer(ShellInit shellInit, ShellCommandHandler shellCommandHandler, ITaskOrganizerController taskOrganizerController, - @Nullable CompatUIHandler compatUI, + @Nullable CompatUIController compatUI, Optional<UnfoldAnimationController> unfoldAnimationController, Optional<RecentTasksController> recentTasks, ShellExecutor mainExecutor) { @@ -303,18 +240,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { private void onInit() { mShellCommandHandler.addDumpCallback(this::dump, this); if (mCompatUI != null) { - mCompatUI.setCallback(compatUIEvent -> { - switch(compatUIEvent.getEventId()) { - case SIZE_COMPAT_RESTART_BUTTON_APPEARED: - onSizeCompatRestartButtonAppeared(compatUIEvent.asType()); - break; - case SIZE_COMPAT_RESTART_BUTTON_CLICKED: - onSizeCompatRestartButtonClicked(compatUIEvent.asType()); - break; - default: - - } - }); + mCompatUI.setCompatUICallback(this); } registerOrganizer(); } @@ -342,38 +268,14 @@ public class ShellTaskOrganizer extends TaskOrganizer { } } - @Override - public void applyTransaction(@NonNull WindowContainerTransaction t) { - if (!t.isEmpty()) { - ProtoLog.v(WM_SHELL_TASK_ORG, "applyTransaction(): wct=%s caller=%s", - t, Debug.getCallers(4)); - } - super.applyTransaction(t); - } - - @Override - public int applySyncTransaction(@NonNull WindowContainerTransaction t, - @NonNull WindowContainerTransactionCallback callback) { - if (!t.isEmpty()) { - ProtoLog.v(WM_SHELL_TASK_ORG, "applySyncTransaction(): wct=%s caller=%s", - t, Debug.getCallers(4)); - } - return super.applySyncTransaction(t, callback); - } - /** * Creates a persistent root task in WM for a particular windowing-mode. * @param displayId The display to create the root task on. * @param windowingMode Windowing mode to put the root task in. * @param listener The listener to get the created task callback. - * - * @deprecated Use {@link #createRootTask(CreateRootTaskRequest, TaskListener)} */ public void createRootTask(int displayId, int windowingMode, TaskListener listener) { - createRootTask(new CreateRootTaskRequest() - .setDisplayId(displayId) - .setWindowingMode(windowingMode), - listener); + createRootTask(displayId, windowingMode, listener, false /* removeWithTaskOrganizer */); } /** @@ -382,52 +284,14 @@ public class ShellTaskOrganizer extends TaskOrganizer { * @param windowingMode Windowing mode to put the root task in. * @param listener The listener to get the created task callback. * @param removeWithTaskOrganizer True if this task should be removed when organizer destroyed. - * - * @deprecated Use {@link #createRootTask(CreateRootTaskRequest, TaskListener)} */ public void createRootTask(int displayId, int windowingMode, TaskListener listener, boolean removeWithTaskOrganizer) { - createRootTask(new CreateRootTaskRequest() - .setDisplayId(displayId) - .setWindowingMode(windowingMode) - .setRemoveWithTaskOrganizer(removeWithTaskOrganizer), - listener); - } - - /** - * Creates a persistent root task in WM for a particular windowing-mode. - * @param displayId The display to create the root task on. - * @param windowingMode Windowing mode to put the root task in. - * @param listener The listener to get the created task callback. - * @param removeWithTaskOrganizer True if this task should be removed when organizer destroyed. - * @param reparentOnDisplayRemoval True if this task should be reparented on display removal. - * - * @deprecated Use {@link #createRootTask(CreateRootTaskRequest, TaskListener)} - */ - public void createRootTask(int displayId, int windowingMode, TaskListener listener, - boolean removeWithTaskOrganizer, boolean reparentOnDisplayRemoval) { - createRootTask(new CreateRootTaskRequest() - .setDisplayId(displayId) - .setWindowingMode(windowingMode) - .setRemoveWithTaskOrganizer(removeWithTaskOrganizer) - .setReparentOnDisplayRemoval(reparentOnDisplayRemoval), - listener); - } - - /** - * Creates a persistent root task in WM for a particular windowing-mode. - * @param request The data for this request - * @param listener The listener to get the created task callback. - * - * @hide - */ - public void createRootTask(@NonNull CreateRootTaskRequest request, TaskListener listener) { ProtoLog.v(WM_SHELL_TASK_ORG, "createRootTask() displayId=%d winMode=%d listener=%s" , - request.displayId, request.windowingMode, listener.toString()); + displayId, windowingMode, listener.toString()); final IBinder cookie = new Binder(); - request.setLaunchCookie(cookie); setPendingLaunchCookieListener(cookie, listener); - super.createRootTask(request); + super.createRootTask(displayId, windowingMode, cookie, removeWithTaskOrganizer); } /** @@ -438,30 +302,19 @@ public class ShellTaskOrganizer extends TaskOrganizer { } /** - * Adds a listener for a specific task id. This only applies if + * Adds a listener for a specific task id. */ public void addListenerForTaskId(TaskListener listener, int taskId) { synchronized (mLock) { ProtoLog.v(WM_SHELL_TASK_ORG, "addListenerForTaskId taskId=%s", taskId); - final TaskListener existingListener = mTaskListeners.get(taskId); - if (existingListener != null) { - if (existingListener == listener) { - // Same listener already registered - return; - } else { - throw new IllegalArgumentException( - "Listener for taskId=" + taskId + " already exists"); - } + if (mTaskListeners.get(taskId) != null) { + throw new IllegalArgumentException( + "Listener for taskId=" + taskId + " already exists"); } final TaskAppearedInfo info = mTasks.get(taskId); if (info == null) { - ProtoLog.v(WM_SHELL_TASK_ORG, "Queueing pending listener"); - // The caller may have received a transition with the task before the organizer - // was notified of the task appearing, so set a pending task listener for the - // task to be retrieved when the task actually appears - mPendingTaskToListener.put(taskId, listener); - return; + throw new IllegalArgumentException("addListenerForTaskId unknown taskId=" + taskId); } final TaskListener oldListener = getTaskListener(info.getTaskInfo()); @@ -501,14 +354,6 @@ public class ShellTaskOrganizer extends TaskOrganizer { public void removeListener(TaskListener listener) { synchronized (mLock) { ProtoLog.v(WM_SHELL_TASK_ORG, "Remove listener=%s", listener); - - // Remove all occurrences of the pending listener - for (int i = mPendingTaskToListener.size() - 1; i >= 0; --i) { - if (mPendingTaskToListener.valueAt(i) == listener) { - mPendingTaskToListener.removeAt(i); - } - } - final int index = mTaskListeners.indexOfValue(listener); if (index == -1) { Log.w(TAG, "No registered listener found"); @@ -524,7 +369,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { tasks.add(data); } - // Remove occurrences of the listener + // Remove listener, there can be the multiple occurrences, so search the whole list. for (int i = mTaskListeners.size() - 1; i >= 0; --i) { if (mTaskListeners.valueAt(i) == listener) { mTaskListeners.removeAt(i); @@ -542,11 +387,9 @@ public class ShellTaskOrganizer extends TaskOrganizer { /** * Associated a listener to a pending launch cookie so we can route the task later once it - * appears. If both this and a pending task-id listener is set, then this will take priority. + * appears. */ public void setPendingLaunchCookieListener(IBinder cookie, TaskListener listener) { - ProtoLog.v(WM_SHELL_TASK_ORG, "setPendingLaunchCookieListener(): cookie=%s listener=%s", - cookie, listener); synchronized (mLock) { mLaunchCookieToListener.put(cookie, listener); } @@ -566,7 +409,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { } /** - * Removes a locus id listener. + * Removes listener. */ public void removeLocusIdListener(LocusIdListener listener) { synchronized (mLock) { @@ -587,7 +430,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { } /** - * Removes a focus listener. + * Removes listener. */ public void removeFocusListener(FocusListener listener) { synchronized (mLock) { @@ -595,60 +438,6 @@ public class ShellTaskOrganizer extends TaskOrganizer { } } - /** - * Adds a listener to be notified when a task vanishes. - */ - public void addTaskVanishedListener(TaskVanishedListener listener) { - synchronized (mLock) { - mTaskVanishedListeners.add(listener); - } - } - - /** - * Removes a task-vanished listener. - */ - public void removeTaskVanishedListener(TaskVanishedListener listener) { - synchronized (mLock) { - mTaskVanishedListeners.remove(listener); - } - } - - /** - * Adds a listener to be notified when a task is appears. - */ - public void addTaskAppearedListener(TaskAppearedListener listener) { - synchronized (mLock) { - mTaskAppearedListeners.add(listener); - } - } - - /** - * Removes a task-appeared listener. - */ - public void removeTaskAppearedListener(TaskAppearedListener listener) { - synchronized (mLock) { - mTaskAppearedListeners.remove(listener); - } - } - - /** - * Adds a listener to be notified when a task is updated. - */ - public void addTaskInfoChangedListener(TaskInfoChangedListener listener) { - synchronized (mLock) { - mTaskInfoChangedListeners.add(listener); - } - } - - /** - * Removes a taskInfo-update listener. - */ - public void removeTaskInfoChangedListener(TaskInfoChangedListener listener) { - synchronized (mLock) { - mTaskInfoChangedListeners.remove(listener); - } - } - /** * Returns a surface which can be used to attach overlays to the home root task */ @@ -657,21 +446,6 @@ public class ShellTaskOrganizer extends TaskOrganizer { return mHomeTaskOverlayContainer; } - /** - * Returns the home task surface, not for wide use. - */ - @Nullable - public SurfaceControl getHomeTaskSurface(int displayId) { - for (int i = 0; i < mTasks.size(); i++) { - final TaskAppearedInfo info = mTasks.valueAt(i); - if (info.getTaskInfo().getActivityType() == ACTIVITY_TYPE_HOME - && info.getTaskInfo().displayId == displayId) { - return info.getLeash(); - } - } - return null; - } - @Override public void addStartingWindow(StartingWindowInfo info) { if (mStartingWindow != null) { @@ -730,7 +504,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { mUnfoldAnimationController.onTaskAppeared(info.getTaskInfo(), info.getLeash()); } - if (isHomeTaskOnDefaultDisplay(info.getTaskInfo())) { + if (info.getTaskInfo().getActivityType() == ACTIVITY_TYPE_HOME) { ProtoLog.v(WM_SHELL_TASK_ORG, "Adding overlay to home task"); final SurfaceControl.Transaction t = new SurfaceControl.Transaction(); t.setLayer(mHomeTaskOverlayContainer, Integer.MAX_VALUE); @@ -741,11 +515,21 @@ public class ShellTaskOrganizer extends TaskOrganizer { notifyLocusVisibilityIfNeeded(info.getTaskInfo()); notifyCompatUI(info.getTaskInfo(), listener); mRecentTasks.ifPresent(recentTasks -> recentTasks.onTaskAdded(info.getTaskInfo())); - for (TaskAppearedListener l : mTaskAppearedListeners) { - l.onTaskAppeared(info.getTaskInfo(), info.getLeash()); - } } + /** + * Take a screenshot of a task. + */ + public void screenshotTask(RunningTaskInfo taskInfo, Rect crop, + Consumer<ScreenCapture.ScreenshotHardwareBuffer> consumer) { + final TaskAppearedInfo info = mTasks.get(taskInfo.taskId); + if (info == null) { + return; + } + ScreenshotUtils.captureLayer(info.getLeash(), crop, consumer); + } + + @Override public void onTaskInfoChanged(RunningTaskInfo taskInfo) { synchronized (mLock) { @@ -757,8 +541,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { final TaskAppearedInfo data = mTasks.get(taskInfo.taskId); final TaskListener oldListener = getTaskListener(data.getTaskInfo()); - final TaskListener newListener = getTaskListener(taskInfo, - true /* removeLaunchCookieIfNeeded */); + final TaskListener newListener = getTaskListener(taskInfo); mTasks.put(taskInfo.taskId, new TaskAppearedInfo(taskInfo, data.getLeash())); final boolean updated = updateTaskListenerIfNeeded( taskInfo, data.getLeash(), oldListener, newListener); @@ -772,8 +555,8 @@ public class ShellTaskOrganizer extends TaskOrganizer { } final boolean windowModeChanged = data.getTaskInfo().getWindowingMode() != taskInfo.getWindowingMode(); - if (windowModeChanged - || hasFreeformConfigurationChanged(data.getTaskInfo(), taskInfo)) { + final boolean visibilityChanged = data.getTaskInfo().isVisible != taskInfo.isVisible; + if (windowModeChanged || visibilityChanged) { mRecentTasks.ifPresent(recentTasks -> recentTasks.onTaskRunningInfoChanged(taskInfo)); } @@ -786,28 +569,14 @@ public class ShellTaskOrganizer extends TaskOrganizer { || mLastFocusedTaskInfo.getWindowingMode() != taskInfo.getWindowingMode()) && isFocusedOrHome; if (focusTaskChanged) { - for (FocusListener focusListener : mFocusListeners) { - focusListener.onFocusTaskChanged(taskInfo); + for (int i = 0; i < mFocusListeners.size(); i++) { + mFocusListeners.valueAt(i).onFocusTaskChanged(taskInfo); } mLastFocusedTaskInfo = taskInfo; } - for (TaskInfoChangedListener l : mTaskInfoChangedListeners) { - l.onTaskInfoChanged(taskInfo); - } } } - private boolean hasFreeformConfigurationChanged(RunningTaskInfo oldTaskInfo, - RunningTaskInfo newTaskInfo) { - if (newTaskInfo.getWindowingMode() != WINDOWING_MODE_FREEFORM) { - return false; - } - return oldTaskInfo.isVisible != newTaskInfo.isVisible - || !oldTaskInfo.positionInParent.equals(newTaskInfo.positionInParent) - || !Objects.equals(oldTaskInfo.configuration.windowConfiguration.getAppBounds(), - newTaskInfo.configuration.windowConfiguration.getAppBounds()); - } - @Override public void onBackPressedOnTaskRoot(RunningTaskInfo taskInfo) { synchronized (mLock) { @@ -839,14 +608,16 @@ public class ShellTaskOrganizer extends TaskOrganizer { notifyCompatUI(taskInfo, null /* taskListener */); // Notify the recent tasks that a task has been removed mRecentTasks.ifPresent(recentTasks -> recentTasks.onTaskRemoved(taskInfo)); - if (isHomeTaskOnDefaultDisplay(taskInfo)) { + if (taskInfo.getActivityType() == ACTIVITY_TYPE_HOME) { SurfaceControl.Transaction t = new SurfaceControl.Transaction(); t.reparent(mHomeTaskOverlayContainer, null); t.apply(); ProtoLog.v(WM_SHELL_TASK_ORG, "Removing overlay surface"); } - for (TaskVanishedListener l : mTaskVanishedListeners) { - l.onTaskVanished(taskInfo); + + if (!ENABLE_SHELL_TRANSITIONS && (appearedInfo.getLeash() != null)) { + // Preemptively clean up the leash only if shell transitions are not enabled + appearedInfo.getLeash().release(); } } } @@ -867,15 +638,6 @@ public class ShellTaskOrganizer extends TaskOrganizer { return result; } - /** Return list of {@link RunningTaskInfo}s on all the displays. */ - public ArrayList<RunningTaskInfo> getRunningTasks() { - ArrayList<RunningTaskInfo> result = new ArrayList<>(); - for (int i = 0; i < mTasks.size(); i++) { - result.add(mTasks.valueAt(i).getTaskInfo()); - } - return result; - } - /** Gets running task by taskId. Returns {@code null} if no such task observed. */ @Nullable public RunningTaskInfo getRunningTaskInfo(int taskId) { @@ -885,27 +647,9 @@ public class ShellTaskOrganizer extends TaskOrganizer { } } - /** - * Shows/hides the given task surface. Not for general use as changing the task visibility may - * conflict with other Transitions. This is currently ONLY used to temporarily hide a task - * while a drag is in session. - */ - public void setTaskSurfaceVisibility(int taskId, boolean visible) { - synchronized (mLock) { - final TaskAppearedInfo info = mTasks.get(taskId); - if (info != null) { - SurfaceControl.Transaction t = new SurfaceControl.Transaction(); - t.setVisibility(info.getLeash(), visible); - t.apply(); - } - } - } - private boolean updateTaskListenerIfNeeded(RunningTaskInfo taskInfo, SurfaceControl leash, TaskListener oldListener, TaskListener newListener) { if (oldListener == newListener) return false; - ProtoLog.v(WM_SHELL_TASK_ORG, " Migrating from listener %s to %s", - oldListener, newListener); // TODO: We currently send vanished/appeared as the task moves between types, but // we should consider adding a different mode-changed callback if (oldListener != null) { @@ -945,11 +689,50 @@ public class ShellTaskOrganizer extends TaskOrganizer { } private void notifyLocusIdChange(int taskId, LocusId locus, boolean visible) { - for (LocusIdListener l : mLocusIdListeners) { - l.onVisibilityChanged(taskId, locus, visible); + for (int i = 0; i < mLocusIdListeners.size(); i++) { + mLocusIdListeners.valueAt(i).onVisibilityChanged(taskId, locus, visible); } } + @Override + public void onSizeCompatRestartButtonAppeared(int taskId) { + final TaskAppearedInfo info; + synchronized (mLock) { + info = mTasks.get(taskId); + } + if (info == null) { + return; + } + logSizeCompatRestartButtonEventReported(info, + FrameworkStatsLog.SIZE_COMPAT_RESTART_BUTTON_EVENT_REPORTED__EVENT__APPEARED); + } + + @Override + public void onSizeCompatRestartButtonClicked(int taskId) { + final TaskAppearedInfo info; + synchronized (mLock) { + info = mTasks.get(taskId); + } + if (info == null) { + return; + } + logSizeCompatRestartButtonEventReported(info, + FrameworkStatsLog.SIZE_COMPAT_RESTART_BUTTON_EVENT_REPORTED__EVENT__CLICKED); + restartTaskTopActivityProcessIfVisible(info.getTaskInfo().token); + } + + @Override + public void onCameraControlStateUpdated(int taskId, @CameraCompatControlState int state) { + final TaskAppearedInfo info; + synchronized (mLock) { + info = mTasks.get(taskId); + } + if (info == null) { + return; + } + updateCameraCompatControlState(info.getTaskInfo().token, state); + } + /** Reparents a child window surface to the task surface. */ public void reparentChildSurfaceToTask(int taskId, SurfaceControl sc, SurfaceControl.Transaction t) { @@ -967,35 +750,6 @@ public class ShellTaskOrganizer extends TaskOrganizer { taskListener.reparentChildSurfaceToTask(taskId, sc, t); } - @VisibleForTesting - void onSizeCompatRestartButtonAppeared(@NonNull SizeCompatRestartButtonAppeared compatUIEvent) { - final int taskId = compatUIEvent.getTaskId(); - final TaskAppearedInfo info; - synchronized (mLock) { - info = mTasks.get(taskId); - } - if (info == null) { - return; - } - logSizeCompatRestartButtonEventReported(info, - FrameworkStatsLog.SIZE_COMPAT_RESTART_BUTTON_EVENT_REPORTED__EVENT__APPEARED); - } - - @VisibleForTesting - void onSizeCompatRestartButtonClicked(@NonNull SizeCompatRestartButtonClicked compatUIEvent) { - final int taskId = compatUIEvent.getTaskId(); - final TaskAppearedInfo info; - synchronized (mLock) { - info = mTasks.get(taskId); - } - if (info == null) { - return; - } - logSizeCompatRestartButtonEventReported(info, - FrameworkStatsLog.SIZE_COMPAT_RESTART_BUTTON_EVENT_REPORTED__EVENT__CLICKED); - restartTaskTopActivityProcessIfVisible(info.getTaskInfo().token); - } - private void logSizeCompatRestartButtonEventReported(@NonNull TaskAppearedInfo info, int event) { ActivityInfo topActivityInfo = info.getTaskInfo().topActivityInfo; @@ -1023,10 +777,10 @@ public class ShellTaskOrganizer extends TaskOrganizer { // on this Task if there is any. if (taskListener == null || !taskListener.supportCompatUI() || !taskInfo.appCompatTaskInfo.hasCompatUI() || !taskInfo.isVisible) { - mCompatUI.onCompatInfoChanged(new CompatUIInfo(taskInfo, null /* taskListener */)); + mCompatUI.onCompatInfoChanged(taskInfo, null /* taskListener */); return; } - mCompatUI.onCompatInfoChanged(new CompatUIInfo(taskInfo, taskListener)); + mCompatUI.onCompatInfoChanged(taskInfo, taskListener); } private TaskListener getTaskListener(RunningTaskInfo runningTaskInfo) { @@ -1034,7 +788,7 @@ public class ShellTaskOrganizer extends TaskOrganizer { } private TaskListener getTaskListener(RunningTaskInfo runningTaskInfo, - boolean removePendingIfNeeded) { + boolean removeLaunchCookieIfNeeded) { final int taskId = runningTaskInfo.taskId; TaskListener listener; @@ -1046,35 +800,14 @@ public class ShellTaskOrganizer extends TaskOrganizer { listener = mLaunchCookieToListener.get(cookie); if (listener == null) continue; - if (removePendingIfNeeded) { - ProtoLog.v(WM_SHELL_TASK_ORG, "Migrating cookie listener to task: taskId=%d", - taskId); + if (removeLaunchCookieIfNeeded) { // Remove the cookie and add the listener. mLaunchCookieToListener.remove(cookie); - if (mPendingTaskToListener.containsKey(taskId) - && mPendingTaskToListener.get(taskId) != listener) { - Log.w(TAG, "Conflicting pending task listeners reported for taskId=" + taskId); - } - mPendingTaskToListener.remove(taskId); mTaskListeners.put(taskId, listener); } return listener; } - // Next priority goes to the pending task id listener - if (mPendingTaskToListener.containsKey(taskId)) { - listener = mPendingTaskToListener.get(taskId); - if (listener != null) { - if (removePendingIfNeeded) { - ProtoLog.v(WM_SHELL_TASK_ORG, "Migrating pending listener to task: taskId=%d", - taskId); - mPendingTaskToListener.remove(taskId); - mTaskListeners.put(taskId, listener); - } - return listener; - } - } - // Next priority goes to taskId specific listeners. listener = mTaskListeners.get(taskId); if (listener != null) return listener; @@ -1090,11 +823,6 @@ public class ShellTaskOrganizer extends TaskOrganizer { return mTaskListeners.get(taskListenerType); } - @VisibleForTesting - boolean hasTaskListener(int taskId) { - return mTaskListeners.contains(taskId); - } - @VisibleForTesting static @TaskListenerType int taskInfoToTaskListenerType(RunningTaskInfo runningTaskInfo) { switch (runningTaskInfo.getWindowingMode()) { @@ -1129,17 +857,6 @@ public class ShellTaskOrganizer extends TaskOrganizer { } } - /** - * Return true if {@link RunningTaskInfo} is Home/Launcher activity type, plus it's the one on - * default display (rather than on external display). This is used to check if we need to - * reparent mHomeTaskOverlayContainer that is used for -1 screen on default display. - */ - @VisibleForTesting - static boolean isHomeTaskOnDefaultDisplay(RunningTaskInfo taskInfo) { - return taskInfo.getActivityType() == ACTIVITY_TYPE_HOME - && taskInfo.displayId == DEFAULT_DISPLAY; - } - public void dump(@NonNull PrintWriter pw, String prefix) { synchronized (mLock) { final String innerPrefix = prefix + " "; @@ -1174,21 +891,13 @@ public class ShellTaskOrganizer extends TaskOrganizer { } pw.println(); - pw.println(innerPrefix + mLaunchCookieToListener.size() - + " Pending launch cookies listeners"); + pw.println(innerPrefix + mLaunchCookieToListener.size() + " Launch Cookies"); for (int i = mLaunchCookieToListener.size() - 1; i >= 0; --i) { final IBinder key = mLaunchCookieToListener.keyAt(i); final TaskListener listener = mLaunchCookieToListener.valueAt(i); pw.println(innerPrefix + "#" + i + " cookie=" + key + " listener=" + listener); } - pw.println(); - pw.println(innerPrefix + mPendingTaskToListener.size() + " Pending task listeners"); - for (int i = mPendingTaskToListener.size() - 1; i >= 0; --i) { - final int taskId = mPendingTaskToListener.keyAt(i); - final TaskListener listener = mPendingTaskToListener.valueAt(i); - pw.println(innerPrefix + "#" + i + " taskId=" + taskId + " listener=" + listener); - } } } } diff --git a/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationAdapter.java b/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationAdapter.java index 26c3626115..8d30db64a3 100644 --- a/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationAdapter.java +++ b/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationAdapter.java @@ -18,7 +18,6 @@ package com.android.wm.shell.activityembedding; import static android.graphics.Matrix.MTRANS_X; import static android.graphics.Matrix.MTRANS_Y; -import static android.window.TransitionInfo.FLAG_TRANSLUCENT; import android.annotation.CallSuper; import android.graphics.Point; @@ -147,13 +146,6 @@ class ActivityEmbeddingAnimationAdapter { /** To be overridden by subclasses to adjust the animation surface change. */ void onAnimationUpdateInner(@NonNull SurfaceControl.Transaction t) { // Update the surface position and alpha. - if (mAnimation.getExtensionEdges() != 0x0 - && !(mChange.hasFlags(FLAG_TRANSLUCENT) - && mChange.getActivityComponent() != null)) { - // Extend non-translucent activities - t.setEdgeExtensionEffect(mLeash, mAnimation.getExtensionEdges()); - } - mTransformation.getMatrix().postTranslate(mContentRelOffset.x, mContentRelOffset.y); t.setMatrix(mLeash, mTransformation.getMatrix(), mMatrix); t.setAlpha(mLeash, mTransformation.getAlpha()); @@ -173,7 +165,7 @@ class ActivityEmbeddingAnimationAdapter { if (!cropRect.intersect(mWholeAnimationBounds)) { // Hide the surface when it is outside of the animation area. t.setAlpha(mLeash, 0); - } else if (mAnimation.getExtensionEdges() != 0) { + } else if (mAnimation.hasExtension()) { // Allow the surface to be shown in its original bounds in case we want to use edge // extensions. cropRect.union(mContentBounds); @@ -188,9 +180,6 @@ class ActivityEmbeddingAnimationAdapter { @CallSuper void onAnimationEnd(@NonNull SurfaceControl.Transaction t) { onAnimationUpdate(t, mAnimation.getDuration()); - if (mAnimation.getExtensionEdges() != 0x0) { - t.setEdgeExtensionEffect(mLeash, /* edge */ 0); - } } final long getDurationHint() { diff --git a/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunner.java b/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunner.java index 85b7ac27da..a426b206b0 100644 --- a/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunner.java +++ b/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunner.java @@ -20,16 +20,17 @@ import static android.view.WindowManager.TRANSIT_CHANGE; import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManagerPolicyConstants.TYPE_LAYER_OFFSET; import static android.window.TransitionInfo.FLAG_IS_BEHIND_STARTING_WINDOW; +import static android.window.TransitionInfo.FLAG_TRANSLUCENT; import static com.android.wm.shell.activityembedding.ActivityEmbeddingAnimationSpec.createShowSnapshotForClosingAnimation; import static com.android.wm.shell.transition.TransitionAnimationHelper.addBackgroundToTransition; +import static com.android.wm.shell.transition.TransitionAnimationHelper.edgeExtendWindow; import static com.android.wm.shell.transition.TransitionAnimationHelper.getTransitionBackgroundColorIfSet; import static com.android.wm.shell.transition.Transitions.TRANSIT_TASK_FRAGMENT_DRAG_RESIZE; import android.animation.Animator; import android.animation.ValueAnimator; import android.content.Context; -import android.graphics.Point; import android.graphics.Rect; import android.os.IBinder; import android.util.ArraySet; @@ -141,6 +142,8 @@ class ActivityEmbeddingAnimationRunner { // ending states. prepareForJumpCut(info, startTransaction); } else { + addEdgeExtensionIfNeeded(startTransaction, finishTransaction, + postStartTransactionCallbacks, adapters); addBackgroundColorIfNeeded(info, startTransaction, finishTransaction, adapters); for (ActivityEmbeddingAnimationAdapter adapter : adapters) { duration = Math.max(duration, adapter.getDurationHint()); @@ -260,8 +263,8 @@ class ActivityEmbeddingAnimationRunner { for (TransitionInfo.Change change : openingChanges) { final Animation animation = animationProvider.get(info, change, openingWholeScreenBounds); - if (shouldUseJumpCutForAnimation(animation)) { - return new ArrayList<>(); + if (animation.getDuration() == 0) { + continue; } final ActivityEmbeddingAnimationAdapter adapter = createOpenCloseAnimationAdapter( info, change, animation, openingWholeScreenBounds); @@ -285,8 +288,8 @@ class ActivityEmbeddingAnimationRunner { } final Animation animation = animationProvider.get(info, change, closingWholeScreenBounds); - if (shouldUseJumpCutForAnimation(animation)) { - return new ArrayList<>(); + if (animation.getDuration() == 0) { + continue; } final ActivityEmbeddingAnimationAdapter adapter = createOpenCloseAnimationAdapter( info, change, animation, closingWholeScreenBounds); @@ -323,13 +326,41 @@ class ActivityEmbeddingAnimationRunner { } } + /** Adds edge extension to the surfaces that have such an animation property. */ + private void addEdgeExtensionIfNeeded(@NonNull SurfaceControl.Transaction startTransaction, + @NonNull SurfaceControl.Transaction finishTransaction, + @NonNull List<Consumer<SurfaceControl.Transaction>> postStartTransactionCallbacks, + @NonNull List<ActivityEmbeddingAnimationAdapter> adapters) { + for (ActivityEmbeddingAnimationAdapter adapter : adapters) { + final Animation animation = adapter.mAnimation; + if (!animation.hasExtension()) { + continue; + } + if (adapter.mChange.hasFlags(FLAG_TRANSLUCENT) + && adapter.mChange.getActivityComponent() != null) { + // Skip edge extension for translucent activity. + continue; + } + final TransitionInfo.Change change = adapter.mChange; + if (TransitionUtil.isOpeningType(adapter.mChange.getMode())) { + // Need to screenshot after startTransaction is applied otherwise activity + // may not be visible or ready yet. + postStartTransactionCallbacks.add( + t -> edgeExtendWindow(change, animation, t, finishTransaction)); + } else { + // Can screenshot now (before startTransaction is applied) + edgeExtendWindow(change, animation, startTransaction, finishTransaction); + } + } + } + /** Adds background color to the transition if any animation has such a property. */ private void addBackgroundColorIfNeeded(@NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull List<ActivityEmbeddingAnimationAdapter> adapters) { for (ActivityEmbeddingAnimationAdapter adapter : adapters) { - final int backgroundColor = getTransitionBackgroundColorIfSet(adapter.mChange, + final int backgroundColor = getTransitionBackgroundColorIfSet(info, adapter.mChange, adapter.mAnimation, 0 /* defaultColor */); if (backgroundColor != 0) { // We only need to show one color. @@ -367,15 +398,7 @@ class ActivityEmbeddingAnimationRunner { // This is because the TaskFragment surface/change won't contain the Activity's before its // reparent. Animation changeAnimation = null; - final Rect parentBounds = new Rect(); - // We use a single boolean value to record the backdrop override because the override used - // for overlay and we restrict to single overlay animation. We should fix the assumption - // if we allow multiple overlay transitions. - // The backdrop logic is mainly for animations of split animations. The backdrop should be - // disabled if there is any open/close target in the same transition as the change target. - // However, the overlay change animation usually contains one change target, and shows - // backdrop unexpectedly. - Boolean overrideShowBackdrop = null; + Rect parentBounds = new Rect(); for (TransitionInfo.Change change : info.getChanges()) { if (change.getMode() != TRANSIT_CHANGE || change.getStartAbsBounds().equals(change.getEndAbsBounds())) { @@ -398,27 +421,21 @@ class ActivityEmbeddingAnimationRunner { } } - final TransitionInfo.AnimationOptions options = boundsAnimationChange - .getAnimationOptions(); - if (options != null) { - final Animation overrideAnimation = - mAnimationSpec.loadCustomAnimation(options, TRANSIT_CHANGE); - if (overrideAnimation != null) { - overrideShowBackdrop = overrideAnimation.getShowBackdrop(); - } + // The TaskFragment may be enter/exit split, so we take the union of both as the parent + // size. + parentBounds.union(boundsAnimationChange.getStartAbsBounds()); + parentBounds.union(boundsAnimationChange.getEndAbsBounds()); + if (boundsAnimationChange != change) { + // Union the change starting bounds in case the activity is resized and reparented + // to a TaskFragment. In that case, the TaskFragment may not cover the activity's + // starting bounds. + parentBounds.union(change.getStartAbsBounds()); } - calculateParentBounds(change, parentBounds); // There are two animations in the array. The first one is for the start leash // (snapshot), and the second one is for the end leash (TaskFragment). - final Animation[] animations = - mAnimationSpec.createChangeBoundsChangeAnimations(change, parentBounds); - // Jump cut if either animation has zero for duration. - for (Animation animation : animations) { - if (shouldUseJumpCutForAnimation(animation)) { - return new ArrayList<>(); - } - } + final Animation[] animations = mAnimationSpec.createChangeBoundsChangeAnimations(change, + parentBounds); // Keep track as we might need to add background color for the animation. // Although there may be multiple change animation, record one of them is sufficient // because the background color will be added to the root leash for the whole animation. @@ -449,7 +466,7 @@ class ActivityEmbeddingAnimationRunner { // If there is no corresponding open/close window with the change, we should show background // color to cover the empty part of the screen. - boolean shouldShowBackgroundColor = true; + boolean shouldShouldBackgroundColor = true; // Handle the other windows that don't have bounds change in the same transition. for (TransitionInfo.Change change : info.getChanges()) { if (handledChanges.contains(change)) { @@ -466,21 +483,16 @@ class ActivityEmbeddingAnimationRunner { animation = ActivityEmbeddingAnimationSpec.createNoopAnimation(change); } else if (TransitionUtil.isClosingType(change.getMode())) { animation = mAnimationSpec.createChangeBoundsCloseAnimation(change, parentBounds); - shouldShowBackgroundColor = false; + shouldShouldBackgroundColor = false; } else { animation = mAnimationSpec.createChangeBoundsOpenAnimation(change, parentBounds); - shouldShowBackgroundColor = false; - } - if (shouldUseJumpCutForAnimation(animation)) { - return new ArrayList<>(); + shouldShouldBackgroundColor = false; } adapters.add(new ActivityEmbeddingAnimationAdapter(animation, change, TransitionUtil.getRootFor(change, info))); } - shouldShowBackgroundColor = overrideShowBackdrop != null - ? overrideShowBackdrop : shouldShowBackgroundColor; - if (shouldShowBackgroundColor && changeAnimation != null) { + if (shouldShouldBackgroundColor && changeAnimation != null) { // Change animation may leave part of the screen empty. Show background color to cover // that. changeAnimation.setShowBackdrop(true); @@ -489,26 +501,6 @@ class ActivityEmbeddingAnimationRunner { return adapters; } - /** - * Calculates parent bounds of the animation target by {@code change}. - */ - @VisibleForTesting - static void calculateParentBounds(@NonNull TransitionInfo.Change change, - @NonNull Rect outParentBounds) { - final Point endParentSize = change.getEndParentSize(); - if (endParentSize.equals(0, 0)) { - return; - } - final Point endRelPosition = change.getEndRelOffset(); - final Point endAbsPosition = new Point(change.getEndAbsBounds().left, - change.getEndAbsBounds().top); - final Point parentEndAbsPosition = new Point(endAbsPosition.x - endRelPosition.x, - endAbsPosition.y - endRelPosition.y); - outParentBounds.set(parentEndAbsPosition.x, parentEndAbsPosition.y, - parentEndAbsPosition.x + endParentSize.x, - parentEndAbsPosition.y + endParentSize.y); - } - /** * Takes a screenshot of the given {@code screenshotChange} surface if WM Core hasn't taken one. * The screenshot leash should be attached to the {@code animationChange} surface which we will @@ -603,12 +595,6 @@ class ActivityEmbeddingAnimationRunner { return true; } - /** Whether or not to use jump cut based on the animation. */ - @VisibleForTesting - static boolean shouldUseJumpCutForAnimation(@NonNull Animation animation) { - return animation.getDuration() == 0; - } - /** Updates the changes to end states in {@code startTransaction} for jump cut animation. */ private void prepareForJumpCut(@NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction) { diff --git a/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationSpec.java b/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationSpec.java index 2b9eda40cd..b9868629e6 100644 --- a/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationSpec.java +++ b/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationSpec.java @@ -18,8 +18,6 @@ package com.android.wm.shell.activityembedding; import static android.app.ActivityOptions.ANIM_CUSTOM; -import static android.view.WindowManager.TRANSIT_CHANGE; -import static android.window.TransitionInfo.AnimationOptions.DEFAULT_ANIMATION_RESOURCES_ID; import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_NONE; import static com.android.wm.shell.transition.TransitionAnimationHelper.loadAttributeAnimation; @@ -29,8 +27,6 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.content.Context; import android.graphics.Rect; -import android.util.Log; -import android.view.WindowManager; import android.view.animation.AlphaAnimation; import android.view.animation.Animation; import android.view.animation.AnimationSet; @@ -42,9 +38,11 @@ import android.view.animation.TranslateAnimation; import android.window.TransitionInfo; import com.android.internal.policy.TransitionAnimation; +import com.android.window.flags.Flags; import com.android.wm.shell.shared.TransitionUtil; /** Animation spec for ActivityEmbedding transition. */ +// TODO(b/206557124): provide an easier way to customize animation class ActivityEmbeddingAnimationSpec { private static final String TAG = "ActivityEmbeddingAnimSpec"; @@ -95,11 +93,6 @@ class ActivityEmbeddingAnimationSpec { @NonNull Animation createChangeBoundsOpenAnimation(@NonNull TransitionInfo.Change change, @NonNull Rect parentBounds) { - final Animation customAnimation = - loadCustomAnimation(change.getAnimationOptions(), TRANSIT_CHANGE); - if (customAnimation != null) { - return customAnimation; - } // Use end bounds for opening. final Rect bounds = change.getEndAbsBounds(); final int startLeft; @@ -128,11 +121,6 @@ class ActivityEmbeddingAnimationSpec { @NonNull Animation createChangeBoundsCloseAnimation(@NonNull TransitionInfo.Change change, @NonNull Rect parentBounds) { - final Animation customAnimation = - loadCustomAnimation(change.getAnimationOptions(), TRANSIT_CHANGE); - if (customAnimation != null) { - return customAnimation; - } // Use start bounds for closing. final Rect bounds = change.getStartAbsBounds(); final int endTop; @@ -165,14 +153,6 @@ class ActivityEmbeddingAnimationSpec { @NonNull Animation[] createChangeBoundsChangeAnimations(@NonNull TransitionInfo.Change change, @NonNull Rect parentBounds) { - // TODO(b/293658614): Support more complicated animations that may need more than a noop - // animation as the start leash. - final Animation noopAnimation = createNoopAnimation(change); - final Animation customAnimation = - loadCustomAnimation(change.getAnimationOptions(), TRANSIT_CHANGE); - if (customAnimation != null) { - return new Animation[]{noopAnimation, customAnimation}; - } // Both start bounds and end bounds are in screen coordinates. We will post translate // to the local coordinates in ActivityEmbeddingAnimationAdapter#onAnimationUpdate final Rect startBounds = change.getStartAbsBounds(); @@ -223,8 +203,7 @@ class ActivityEmbeddingAnimationSpec { Animation loadOpenAnimation(@NonNull TransitionInfo info, @NonNull TransitionInfo.Change change, @NonNull Rect wholeAnimationBounds) { final boolean isEnter = TransitionUtil.isOpeningType(change.getMode()); - final Animation customAnimation = - loadCustomAnimation(change.getAnimationOptions(), change.getMode()); + final Animation customAnimation = loadCustomAnimation(info, change, isEnter); final Animation animation; if (customAnimation != null) { animation = customAnimation; @@ -251,8 +230,7 @@ class ActivityEmbeddingAnimationSpec { Animation loadCloseAnimation(@NonNull TransitionInfo info, @NonNull TransitionInfo.Change change, @NonNull Rect wholeAnimationBounds) { final boolean isEnter = TransitionUtil.isOpeningType(change.getMode()); - final Animation customAnimation = - loadCustomAnimation(change.getAnimationOptions(), change.getMode()); + final Animation customAnimation = loadCustomAnimation(info, change, isEnter); final Animation animation; if (customAnimation != null) { animation = customAnimation; @@ -284,31 +262,19 @@ class ActivityEmbeddingAnimationSpec { } @Nullable - Animation loadCustomAnimation(@Nullable TransitionInfo.AnimationOptions options, - @WindowManager.TransitionType int mode) { + private Animation loadCustomAnimation(@NonNull TransitionInfo info, + @NonNull TransitionInfo.Change change, boolean isEnter) { + final TransitionInfo.AnimationOptions options; + if (Flags.moveAnimationOptionsToChange()) { + options = change.getAnimationOptions(); + } else { + options = info.getAnimationOptions(); + } if (options == null || options.getType() != ANIM_CUSTOM) { return null; } - final int resId; - if (TransitionUtil.isOpeningType(mode)) { - resId = options.getEnterResId(); - } else if (TransitionUtil.isClosingType(mode)) { - resId = options.getExitResId(); - } else if (mode == TRANSIT_CHANGE) { - resId = options.getChangeResId(); - } else { - Log.w(TAG, "Unknown transit type:" + mode); - resId = DEFAULT_ANIMATION_RESOURCES_ID; - } - // Use the default animation if the resources ID is not specified. - if (resId == DEFAULT_ANIMATION_RESOURCES_ID) { - return null; - } - - final Animation anim; - // TODO(b/293658614): Consider allowing custom animations from non-default packages. - // Enforce limiting to animations from the default "android" package for now. - anim = mTransitionAnimation.loadDefaultAnimationRes(resId); + final Animation anim = mTransitionAnimation.loadAnimationRes(options.getPackageName(), + isEnter ? options.getEnterResId() : options.getExitResId()); if (anim != null) { return anim; } diff --git a/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingController.java b/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingController.java index e9d1ac64b7..b4ef9f0fc2 100644 --- a/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingController.java +++ b/wmshell/src/com/android/wm/shell/activityembedding/ActivityEmbeddingController.java @@ -40,6 +40,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; +import com.android.window.flags.Flags; import com.android.wm.shell.shared.TransitionUtil; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; @@ -80,7 +81,9 @@ public class ActivityEmbeddingController implements Transitions.TransitionHandle @Nullable public static ActivityEmbeddingController create(@NonNull Context context, @NonNull ShellInit shellInit, @NonNull Transitions transitions) { - return new ActivityEmbeddingController(context, shellInit, transitions); + return Transitions.ENABLE_SHELL_TRANSITIONS + ? new ActivityEmbeddingController(context, shellInit, transitions) + : null; } /** Registers to handle transitions. */ @@ -120,6 +123,9 @@ public class ActivityEmbeddingController implements Transitions.TransitionHandle } private boolean shouldAnimateAnimationOptions(@NonNull TransitionInfo info) { + if (!Flags.moveAnimationOptionsToChange()) { + return shouldAnimateAnimationOptions(info.getAnimationOptions()); + } for (TransitionInfo.Change change : info.getChanges()) { if (!shouldAnimateAnimationOptions(change.getAnimationOptions())) { // If any of override animation is not supported, don't animate the transition. @@ -162,8 +168,7 @@ public class ActivityEmbeddingController implements Transitions.TransitionHandle @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { mAnimationRunner.cancelAnimationFromMerge(); } diff --git a/wmshell/src/com/android/wm/shell/animation/FlingAnimationUtils.java b/wmshell/src/com/android/wm/shell/animation/FlingAnimationUtils.java index be1f71e939..26edd7d226 100644 --- a/wmshell/src/com/android/wm/shell/animation/FlingAnimationUtils.java +++ b/wmshell/src/com/android/wm/shell/animation/FlingAnimationUtils.java @@ -23,8 +23,6 @@ import android.view.ViewPropertyAnimator; import android.view.animation.Interpolator; import android.view.animation.PathInterpolator; -import com.android.wm.shell.shared.animation.Interpolators; - import javax.inject.Inject; /** diff --git a/wmshell/src/com/android/wm/shell/back/BackAnimation.java b/wmshell/src/com/android/wm/shell/back/BackAnimation.java index c01ad1d323..196f89d579 100644 --- a/wmshell/src/com/android/wm/shell/back/BackAnimation.java +++ b/wmshell/src/com/android/wm/shell/back/BackAnimation.java @@ -33,6 +33,8 @@ public interface BackAnimation { * * @param touchX the X touch position of the {@link MotionEvent}. * @param touchY the Y touch position of the {@link MotionEvent}. + * @param velocityX the X velocity computed from the {@link MotionEvent}. + * @param velocityY the Y velocity computed from the {@link MotionEvent}. * @param keyAction the original {@link KeyEvent#getAction()} when the event was dispatched to * the process. This is forwarded separately because the input pipeline may mutate * the {#event} action state later. @@ -41,9 +43,10 @@ public interface BackAnimation { void onBackMotion( float touchX, float touchY, + float velocityX, + float velocityY, int keyAction, - @BackEvent.SwipeEdge int swipeEdge, - int displayId); + @BackEvent.SwipeEdge int swipeEdge); /** * Called when the back swipe threshold is crossed. @@ -104,24 +107,4 @@ public interface BackAnimation { * @param pilferCallback the callback to pilfer pointers. */ void setPilferPointerCallback(Runnable pilferCallback); - - /** - * Set a callback to requestTopUi. - * @param topUiRequest the callback to requestTopUi. - */ - void setTopUiRequestCallback(TopUiRequest topUiRequest); - - /** - * Callback to request SysUi to call - * {@link android.app.IActivityManager#setHasTopUi(boolean)}. - */ - interface TopUiRequest { - - /** - * Request {@link android.app.IActivityManager#setHasTopUi(boolean)} to be called. - * @param requestTopUi whether topUi should be requested or not - * @param tag tag of the request-source - */ - void requestTopUi(boolean requestTopUi, String tag); - } } diff --git a/wmshell/src/com/android/wm/shell/back/BackAnimationBackground.java b/wmshell/src/com/android/wm/shell/back/BackAnimationBackground.java index 5f63e55f01..d754d04e6b 100644 --- a/wmshell/src/com/android/wm/shell/back/BackAnimationBackground.java +++ b/wmshell/src/com/android/wm/shell/back/BackAnimationBackground.java @@ -20,11 +20,9 @@ import static android.view.Display.DEFAULT_DISPLAY; import static android.view.WindowInsetsController.APPEARANCE_LIGHT_STATUS_BARS; import android.annotation.NonNull; -import android.annotation.Nullable; import android.graphics.Color; import android.graphics.Rect; import android.view.SurfaceControl; -import android.window.DesktopExperienceFlags; import com.android.internal.graphics.ColorUtils; import com.android.internal.view.AppearanceRegion; @@ -60,24 +58,7 @@ public class BackAnimationBackground { * @param statusbarHeight The height of the statusbar (in px). */ public void ensureBackground(Rect startRect, int color, - @NonNull SurfaceControl.Transaction transaction, int statusbarHeight, int displayId) { - ensureBackground(startRect, color, transaction, statusbarHeight, - null /* cropBounds */, 0 /* cornerRadius */, displayId); - } - - /** - * Ensures the back animation background color layer is present. - * - * @param startRect The start bounds of the closing target. - * @param color The background color. - * @param transaction The animation transaction. - * @param statusbarHeight The height of the statusbar (in px). - * @param cropBounds The crop bounds of the surface, set to non-empty to show wallpaper. - * @param cornerRadius The radius of corner, only work when cropBounds is not empty. - */ - public void ensureBackground(Rect startRect, int color, - @NonNull SurfaceControl.Transaction transaction, int statusbarHeight, - @Nullable Rect cropBounds, float cornerRadius, int displayId) { + @NonNull SurfaceControl.Transaction transaction, int statusbarHeight) { if (mBackgroundSurface != null) { return; } @@ -92,19 +73,11 @@ public class BackAnimationBackground { .setCallsite("BackAnimationBackground") .setColorLayer(); - if (DesktopExperienceFlags.ENABLE_MULTIDISPLAY_TRACKPAD_BACK_GESTURE.isTrue()) { - mRootTaskDisplayAreaOrganizer.attachToDisplayArea(displayId, colorLayerBuilder); - } else { - mRootTaskDisplayAreaOrganizer.attachToDisplayArea(DEFAULT_DISPLAY, colorLayerBuilder); - } + mRootTaskDisplayAreaOrganizer.attachToDisplayArea(DEFAULT_DISPLAY, colorLayerBuilder); mBackgroundSurface = colorLayerBuilder.build(); transaction.setColor(mBackgroundSurface, colorComponents) .setLayer(mBackgroundSurface, BACKGROUND_LAYER) .show(mBackgroundSurface); - if (cropBounds != null && !cropBounds.isEmpty()) { - transaction.setCrop(mBackgroundSurface, cropBounds) - .setCornerRadius(mBackgroundSurface, cornerRadius); - } mStartBounds = startRect; mIsRequestingStatusBarAppearance = false; mStatusbarHeight = statusbarHeight; diff --git a/wmshell/src/com/android/wm/shell/back/BackAnimationController.java b/wmshell/src/com/android/wm/shell/back/BackAnimationController.java index f10bea06ce..7041ea307b 100644 --- a/wmshell/src/com/android/wm/shell/back/BackAnimationController.java +++ b/wmshell/src/com/android/wm/shell/back/BackAnimationController.java @@ -16,44 +16,31 @@ package com.android.wm.shell.back; -import static android.app.ActivityTaskManager.INVALID_TASK_ID; -import static android.view.Display.INVALID_DISPLAY; -import static android.view.RemoteAnimationTarget.MODE_CLOSING; -import static android.view.RemoteAnimationTarget.MODE_OPENING; -import static android.view.WindowManager.TRANSIT_CHANGE; -import static android.view.WindowManager.TRANSIT_CLOSE_PREPARE_BACK_NAVIGATION; -import static android.window.BackEvent.EDGE_NONE; -import static android.window.DesktopExperienceFlags.ENABLE_INDEPENDENT_BACK_IN_PROJECTED; -import static android.window.TransitionInfo.FLAG_BACK_GESTURE_ANIMATED; -import static android.window.TransitionInfo.FLAG_IS_WALLPAPER; -import static android.window.TransitionInfo.FLAG_MOVED_TO_TOP; -import static android.window.TransitionInfo.FLAG_SHOW_WALLPAPER; - import static com.android.internal.jank.InteractionJankMonitor.CUJ_PREDICTIVE_BACK_HOME; -import static com.android.systemui.Flags.predictiveBackDelayWmTransition; -import static com.android.window.flags2.Flags.unifyBackNavigationTransition; +import static com.android.window.flags.Flags.predictiveBackSystemAnims; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BACK_PREVIEW; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_BACK_ANIMATION; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.SuppressLint; -import android.app.ActivityManager; import android.app.ActivityTaskManager; import android.app.IActivityTaskManager; -import android.app.TaskInfo; -import android.content.ComponentName; +import android.content.ContentResolver; import android.content.Context; import android.content.res.Configuration; -import android.graphics.Point; +import android.database.ContentObserver; import android.graphics.Rect; import android.hardware.input.InputManager; -import android.hardware.input.KeyGestureEvent; +import android.net.Uri; import android.os.Bundle; import android.os.Handler; -import android.os.IBinder; import android.os.RemoteCallback; import android.os.RemoteException; import android.os.SystemClock; +import android.os.SystemProperties; +import android.os.UserHandle; +import android.provider.Settings.Global; import android.util.Log; import android.view.IRemoteAnimationRunner; import android.view.InputDevice; @@ -61,7 +48,6 @@ import android.view.KeyCharacterMap; import android.view.KeyEvent; import android.view.MotionEvent; import android.view.RemoteAnimationTarget; -import android.view.SurfaceControl; import android.view.WindowManager; import android.window.BackAnimationAdapter; import android.window.BackEvent; @@ -69,37 +55,26 @@ import android.window.BackMotionEvent; import android.window.BackNavigationInfo; import android.window.BackTouchTracker; import android.window.IBackAnimationFinishedCallback; -import android.window.IBackAnimationHandoffHandler; import android.window.IBackAnimationRunner; import android.window.IOnBackInvokedCallback; -import android.window.TransitionInfo; -import android.window.TransitionRequestInfo; -import android.window.WindowAnimationState; -import android.window.WindowContainerToken; -import android.window.WindowContainerTransaction; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.LatencyTracker; import com.android.internal.view.AppearanceRegion; -import com.android.systemui.animation.TransitionAnimator; -import com.android.window.flags2.Flags; import com.android.wm.shell.R; import com.android.wm.shell.common.ExternalInterfaceBinder; import com.android.wm.shell.common.RemoteCallable; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.TransitionUtil; +import com.android.wm.shell.shared.annotations.ShellBackgroundThread; import com.android.wm.shell.shared.annotations.ShellMainThread; import com.android.wm.shell.sysui.ConfigurationChangeListener; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.transition.Transitions; import java.io.PrintWriter; -import java.util.ArrayList; -import java.util.List; -import java.util.function.Predicate; +import java.util.concurrent.atomic.AtomicBoolean; /** * Controls the window animation run when a user initiates a back gesture. @@ -107,20 +82,25 @@ import java.util.function.Predicate; public class BackAnimationController implements RemoteCallable<BackAnimationController>, ConfigurationChangeListener { private static final String TAG = "ShellBackPreview"; + private static final int SETTING_VALUE_OFF = 0; + private static final int SETTING_VALUE_ON = 1; + public static final boolean IS_ENABLED = + SystemProperties.getInt("persist.wm.debug.predictive_back", + SETTING_VALUE_ON) == SETTING_VALUE_ON; + /** Predictive back animation developer option */ + private final AtomicBoolean mEnableAnimations = new AtomicBoolean(false); /** * Max duration to wait for an animation to finish before triggering the real back. */ private static final long MAX_ANIMATION_DURATION = 2000; private final LatencyTracker mLatencyTracker; - @ShellMainThread private final Handler mHandler; /** True when a back gesture is ongoing */ - @VisibleForTesting public boolean mBackGestureStarted = false; + private boolean mBackGestureStarted = false; /** Tracks if an uninterruptible animation is in progress */ private boolean mPostCommitAnimationInProgress = false; - private boolean mRealCallbackInvoked = false; /** Tracks if we should start the back gesture on the next motion move event */ private boolean mShouldStartOnNextMoveEvent = false; @@ -134,17 +114,14 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont @Nullable private BackNavigationInfo mBackNavigationInfo; - private boolean mReceivedNullNavigationInfo = false; private final IActivityTaskManager mActivityTaskManager; private final Context mContext; + private final ContentResolver mContentResolver; private final ShellController mShellController; private final ShellCommandHandler mShellCommandHandler; private final ShellExecutor mShellExecutor; + private final Handler mBgHandler; private final WindowManager mWindowManager; - private final Transitions mTransitions; - private final InputManager mInputManager; - @VisibleForTesting - final BackTransitionHandler mBackTransitionHandler; @VisibleForTesting final Rect mTouchableArea = new Rect(); @@ -159,9 +136,6 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont */ private BackTouchTracker mQueuedTracker = new BackTouchTracker(); - private final BackTransitionObserver mBackTransitionObserver = - new BackTransitionObserver(); - private final Runnable mAnimationTimeoutRunnable = () -> { ProtoLog.w(WM_SHELL_BACK_PREVIEW, "Animation didn't finish in %d ms. Resetting...", MAX_ANIMATION_DURATION); @@ -175,8 +149,7 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont @Nullable private IOnBackInvokedCallback mActiveCallback; @Nullable - @VisibleForTesting - RemoteAnimationTarget[] mApps; + private RemoteAnimationTarget[] mApps; @VisibleForTesting final RemoteCallback mNavigationObserver = new RemoteCallback( @@ -184,16 +157,6 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont @Override public void onResult(@Nullable Bundle result) { mShellExecutor.execute(() -> { - if (mBackGestureStarted && result != null && result.getBoolean( - BackNavigationInfo.KEY_TOUCH_GESTURE_TRANSFERRED)) { - // Host app won't able to process motion event anymore, so pilfer - // pointers anyway. - if (mBackNavigationInfo != null) { - mBackNavigationInfo.disableAppProgressGenerationAllowed(); - } - tryPilferPointers(); - return; - } if (!mBackGestureStarted || mPostCommitAnimationInProgress) { // If an uninterruptible animation is already in progress, we should // ignore this due to it may cause focus lost. (alpha = 0) @@ -201,8 +164,6 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont } ProtoLog.i(WM_SHELL_BACK_PREVIEW, "Navigation window gone."); setTriggerBack(false); - // Trigger close transition if necessary. - mBackTransitionHandler.onAnimationFinished(); resetTouchTracker(); // Don't wait for animation start mShellExecutor.removeCallbacks(mAnimationTimeoutRunnable); @@ -218,38 +179,27 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont @BackNavigationInfo.BackTargetType private int mPreviousNavigationType; private Runnable mPilferPointerCallback; - private BackAnimation.TopUiRequest mRequestTopUiCallback; - - private final IBackAnimationHandoffHandler mHandoffHandler = - new IBackAnimationHandoffHandler.Stub() { - @Override - public void handOffAnimation( - RemoteAnimationTarget[] targets, WindowAnimationState[] states) { - mBackTransitionHandler.handOffAnimation(targets, states); - } - }; public BackAnimationController( @NonNull ShellInit shellInit, @NonNull ShellController shellController, @NonNull @ShellMainThread ShellExecutor shellExecutor, + @NonNull @ShellBackgroundThread Handler backgroundHandler, Context context, @NonNull BackAnimationBackground backAnimationBackground, ShellBackAnimationRegistry shellBackAnimationRegistry, - ShellCommandHandler shellCommandHandler, - Transitions transitions, - @ShellMainThread Handler handler) { + ShellCommandHandler shellCommandHandler) { this( shellInit, shellController, shellExecutor, + backgroundHandler, ActivityTaskManager.getService(), context, + context.getContentResolver(), backAnimationBackground, shellBackAnimationRegistry, - shellCommandHandler, - transitions, - handler); + shellCommandHandler); } @VisibleForTesting @@ -257,42 +207,74 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont @NonNull ShellInit shellInit, @NonNull ShellController shellController, @NonNull @ShellMainThread ShellExecutor shellExecutor, + @NonNull @ShellBackgroundThread Handler bgHandler, @NonNull IActivityTaskManager activityTaskManager, Context context, + ContentResolver contentResolver, @NonNull BackAnimationBackground backAnimationBackground, ShellBackAnimationRegistry shellBackAnimationRegistry, - ShellCommandHandler shellCommandHandler, - Transitions transitions, - @NonNull @ShellMainThread Handler handler) { + ShellCommandHandler shellCommandHandler) { mShellController = shellController; mShellExecutor = shellExecutor; mActivityTaskManager = activityTaskManager; mContext = context; + mContentResolver = contentResolver; mRequirePointerPilfer = context.getResources().getBoolean(R.bool.config_backAnimationRequiresPointerPilfer); + mBgHandler = bgHandler; shellInit.addInitCallback(this::onInit, this); mAnimationBackground = backAnimationBackground; mShellBackAnimationRegistry = shellBackAnimationRegistry; mLatencyTracker = LatencyTracker.getInstance(mContext); mShellCommandHandler = shellCommandHandler; mWindowManager = context.getSystemService(WindowManager.class); - mInputManager = context.getSystemService(InputManager.class); - mTransitions = transitions; - mBackTransitionHandler = new BackTransitionHandler(mTransitions); - mTransitions.addHandler(mBackTransitionHandler); - mHandler = handler; - mTransitions.registerObserver(mBackTransitionObserver); - mBackTransitionObserver.setBackTransitionHandler(mBackTransitionHandler); updateTouchableArea(); } private void onInit() { + setupAnimationDeveloperSettingsObserver(mContentResolver, mBgHandler); + updateEnableAnimationFromFlags(); createAdapter(); - mShellController.addExternalInterface(IBackAnimation.DESCRIPTOR, + mShellController.addExternalInterface(KEY_EXTRA_SHELL_BACK_ANIMATION, this::createExternalInterface, this); mShellCommandHandler.addDumpCallback(this::dump, this); mShellController.addConfigurationChangeListener(this); - registerBackGestureDelegate(); + } + + private void setupAnimationDeveloperSettingsObserver( + @NonNull ContentResolver contentResolver, + @NonNull @ShellBackgroundThread final Handler backgroundHandler) { + if (predictiveBackSystemAnims()) { + ProtoLog.d(WM_SHELL_BACK_PREVIEW, "Back animation aconfig flag is enabled, therefore " + + "developer settings flag is ignored and no content observer registered"); + return; + } + ContentObserver settingsObserver = new ContentObserver(backgroundHandler) { + @Override + public void onChange(boolean selfChange, Uri uri) { + updateEnableAnimationFromFlags(); + } + }; + contentResolver.registerContentObserver( + Global.getUriFor(Global.ENABLE_BACK_ANIMATION), + false, settingsObserver, UserHandle.USER_SYSTEM + ); + } + + /** + * Updates {@link BackAnimationController#mEnableAnimations} based on the current values of the + * aconfig flag and the developer settings flag + */ + @ShellBackgroundThread + private void updateEnableAnimationFromFlags() { + boolean isEnabled = predictiveBackSystemAnims() || isDeveloperSettingEnabled(); + mEnableAnimations.set(isEnabled); + ProtoLog.d(WM_SHELL_BACK_PREVIEW, "Back animation enabled=%s", isEnabled); + } + + private boolean isDeveloperSettingEnabled() { + return Global.getInt(mContext.getContentResolver(), + Global.ENABLE_BACK_ANIMATION, SETTING_VALUE_OFF) == SETTING_VALUE_ON; } public BackAnimation getBackAnimationImpl() { @@ -330,21 +312,23 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont public void onBackMotion( float touchX, float touchY, + float velocityX, + float velocityY, int keyAction, - @BackEvent.SwipeEdge int swipeEdge, - int displayId + @BackEvent.SwipeEdge int swipeEdge ) { - mShellExecutor.execute( - () -> onMotionEvent(touchX, touchY, keyAction, swipeEdge, displayId)); + mShellExecutor.execute(() -> onMotionEvent( + /* touchX = */ touchX, + /* touchY = */ touchY, + /* velocityX = */ velocityX, + /* velocityY = */ velocityY, + /* keyAction = */ keyAction, + /* swipeEdge = */ swipeEdge)); } @Override public void onThresholdCrossed() { - if (predictiveBackDelayWmTransition()) { - mShellExecutor.execute(BackAnimationController.this::onThresholdCrossed); - } else { - BackAnimationController.this.onThresholdCrossed(); - } + BackAnimationController.this.onThresholdCrossed(); } @Override @@ -373,14 +357,9 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont mPilferPointerCallback = callback; }); } - - @Override - public void setTopUiRequestCallback(TopUiRequest topUiRequest) { - mShellExecutor.execute(() -> mRequestTopUiCallback = topUiRequest); - } } - private class IBackAnimationImpl extends IBackAnimation.Stub + private static class IBackAnimationImpl extends IBackAnimation.Stub implements ExternalInterfaceBinder { private BackAnimationController mController; @@ -398,8 +377,7 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont callback, runner, controller.mContext, - CUJ_PREDICTIVE_BACK_HOME, - mHandler))); + CUJ_PREDICTIVE_BACK_HOME))); } @Override @@ -444,17 +422,6 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont @VisibleForTesting public void onThresholdCrossed() { mThresholdCrossed = true; - BackTouchTracker activeTracker = getActiveTracker(); - if (predictiveBackDelayWmTransition() && activeTracker != null && mActiveCallback == null - && mBackGestureStarted) { - startBackNavigation(activeTracker); - } - // There was no focus window when calling startBackNavigation, still pilfer pointers so - // the next focus window won't receive motion events. - if (mBackNavigationInfo == null && mReceivedNullNavigationInfo) { - tryPilferPointers(); - return; - } // Dispatch onBackStarted, only to app callbacks. // System callbacks will receive onBackStarted when the remote animation starts. final boolean shouldDispatchToAnimator = shouldDispatchToAnimator(); @@ -481,17 +448,14 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont public void onMotionEvent( float touchX, float touchY, + float velocityX, + float velocityY, int keyAction, - @BackEvent.SwipeEdge int swipeEdge, - int displayId) { - - if (ENABLE_INDEPENDENT_BACK_IN_PROJECTED.isTrue()) { - mBackAnimationAdapter.mOriginDisplayId = displayId; - } + @BackEvent.SwipeEdge int swipeEdge) { BackTouchTracker activeTouchTracker = getActiveTracker(); if (activeTouchTracker != null) { - activeTouchTracker.update(touchX, touchY); + activeTouchTracker.update(touchX, touchY, velocityX, velocityY); } // two gestures are waiting to be processed at the moment, skip any further user touches @@ -499,34 +463,11 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont ProtoLog.d(WM_SHELL_BACK_PREVIEW, "Ignoring MotionEvent because two gestures are already being queued."); return; - } else if (mBackGestureStarted && mCurrentTracker.isInInitialState() - && mQueuedTracker.isInInitialState()) { - ProtoLog.e(WM_SHELL_BACK_PREVIEW, - "Both touch trackers in initial state and mBackGestureStarted=true"); - mBackGestureStarted = false; } if (keyAction == MotionEvent.ACTION_DOWN) { if (!mBackGestureStarted) { - if (swipeEdge == EDGE_NONE) { - // start animation immediately for non-gestural sources (without ACTION_MOVE - // events) - if (!predictiveBackDelayWmTransition()) { - mThresholdCrossed = true; - } - mPointersPilfered = true; - onGestureStarted(touchX, touchY, swipeEdge); - if (predictiveBackDelayWmTransition()) { - onThresholdCrossed(); - } - mShouldStartOnNextMoveEvent = false; - } else { - if (predictiveBackDelayWmTransition()) { - onGestureStarted(touchX, touchY, swipeEdge); - } else { - mShouldStartOnNextMoveEvent = true; - } - } + mShouldStartOnNextMoveEvent = true; } } else if (keyAction == MotionEvent.ACTION_MOVE) { if (!mBackGestureStarted && mShouldStartOnNextMoveEvent) { @@ -536,7 +477,7 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont onGestureStarted(touchX, touchY, swipeEdge); mShouldStartOnNextMoveEvent = false; } - onMove(swipeEdge); + onMove(); } else if (keyAction == MotionEvent.ACTION_UP || keyAction == MotionEvent.ACTION_CANCEL) { ProtoLog.d(WM_SHELL_BACK_PREVIEW, "Finishing gesture with event action: %d", keyAction); @@ -576,26 +517,18 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont mPostCommitAnimationInProgress = false; mShellExecutor.removeCallbacks(mAnimationTimeoutRunnable); startSystemAnimation(); - } else if (!predictiveBackDelayWmTransition()) { - startBackNavigation(touchTracker); + } else if (touchTracker == mCurrentTracker) { + // Only start the back navigation if no other gesture is being processed. Otherwise, + // the back navigation will fall back to legacy back event injection. + startBackNavigation(mCurrentTracker); } } private void startBackNavigation(@NonNull BackTouchTracker touchTracker) { - if (touchTracker != mCurrentTracker) { - // Only start the back navigation if no other gesture is being processed. Otherwise, - // the back navigation will fall back to legacy back event injection. - return; - } try { startLatencyTracking(); - if (mBackAnimationAdapter != null - && mShellBackAnimationRegistry.hasSupportedAnimatorsChanged()) { - mBackAnimationAdapter.updateSupportedAnimators( - mShellBackAnimationRegistry.getSupportedAnimators()); - } mBackNavigationInfo = mActivityTaskManager.startBackNavigation( - mNavigationObserver, mBackAnimationAdapter); + mNavigationObserver, mEnableAnimations.get() ? mBackAnimationAdapter : null); onBackNavigationInfoReceived(mBackNavigationInfo, touchTracker); } catch (RemoteException remoteException) { Log.e(TAG, "Failed to initAnimation", remoteException); @@ -608,9 +541,7 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont ProtoLog.d(WM_SHELL_BACK_PREVIEW, "Received backNavigationInfo:%s", backNavigationInfo); if (backNavigationInfo == null) { ProtoLog.e(WM_SHELL_BACK_PREVIEW, "Received BackNavigationInfo is null."); - mReceivedNullNavigationInfo = true; cancelLatencyTracking(); - tryPilferPointers(); return; } final int backType = backNavigationInfo.getType(); @@ -619,7 +550,6 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont if (!mShellBackAnimationRegistry.startGesture(backType)) { mActiveCallback = null; } - requestTopUi(true, backType); tryPilferPointers(); } else { mActiveCallback = mBackNavigationInfo.getOnBackInvokedCallback(); @@ -632,10 +562,7 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont } } - private void onMove(@BackEvent.SwipeEdge int swipeEdge) { - if (predictiveBackDelayWmTransition() && mCurrentTracker.isActive()) { - mCurrentTracker.updateSwipeEdge(swipeEdge); - } + private void onMove() { if (!mBackGestureStarted || mBackNavigationInfo == null || mActiveCallback == null @@ -648,23 +575,21 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont dispatchOnBackProgressed(mActiveCallback, backEvent); } - private void injectBackKey(int displayId) { + private void injectBackKey() { ProtoLog.d(WM_SHELL_BACK_PREVIEW, "injectBackKey"); - sendBackEvent(KeyEvent.ACTION_DOWN, displayId); - sendBackEvent(KeyEvent.ACTION_UP, displayId); + sendBackEvent(KeyEvent.ACTION_DOWN); + sendBackEvent(KeyEvent.ACTION_UP); } @SuppressLint("MissingPermission") - private void sendBackEvent(int action, int displayId) { + private void sendBackEvent(int action) { final long when = SystemClock.uptimeMillis(); final KeyEvent ev = new KeyEvent(when, when, action, KeyEvent.KEYCODE_BACK, 0 /* repeat */, 0 /* metaState */, KeyCharacterMap.VIRTUAL_KEYBOARD, 0 /* scancode */, KeyEvent.FLAG_FROM_SYSTEM | KeyEvent.FLAG_VIRTUAL_HARD_KEY, InputDevice.SOURCE_KEYBOARD); - if (ENABLE_INDEPENDENT_BACK_IN_PROJECTED.isTrue()) { - ev.setDisplayId(displayId); - } + ev.setDisplayId(mContext.getDisplay().getDisplayId()); if (!mContext.getSystemService(InputManager.class) .injectInputEvent(ev, InputManager.INJECT_INPUT_EVENT_MODE_ASYNC)) { ProtoLog.e(WM_SHELL_BACK_PREVIEW, "Inject input event fail"); @@ -672,7 +597,9 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont } private boolean shouldDispatchToAnimator() { - return mBackNavigationInfo != null && mBackNavigationInfo.isPrepareRemoteAnimation(); + return mEnableAnimations.get() + && mBackNavigationInfo != null + && mBackNavigationInfo.isPrepareRemoteAnimation(); } private void tryPilferPointers() { @@ -704,11 +631,6 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont } try { callback.onBackStarted(backEvent); - if (mBackTransitionHandler.canHandOffAnimation()) { - callback.setHandoffHandler(mHandoffHandler); - } else { - callback.setHandoffHandler(null); - } mOnBackStartDispatched = true; } catch (RemoteException e) { Log.e(TAG, "dispatchOnBackStarted error: ", e); @@ -754,13 +676,6 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont } } - /** - * @return Latest task id which back gesture has occurred on it. - */ - public int getLatestTriggerBackTask() { - return mBackTransitionObserver.mFocusedTaskId; - } - /** * Sets to true when the back gesture has passed the triggering threshold, false otherwise. */ @@ -799,7 +714,7 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont mBackAnimationFinishedCallback = null; } - if (mBackNavigationInfo != null && !mRealCallbackInvoked) { + if (mBackNavigationInfo != null) { final IOnBackInvokedCallback callback = mBackNavigationInfo.getOnBackInvokedCallback(); if (touchTracker.getTriggerBack()) { dispatchOnBackInvoked(callback); @@ -807,7 +722,6 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont tryDispatchOnBackCancelled(callback); } } - mRealCallbackInvoked = false; finishBackNavigation(touchTracker.getTriggerBack()); } @@ -825,11 +739,6 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont boolean triggerBack = activeTouchTracker.getTriggerBack(); ProtoLog.d(WM_SHELL_BACK_PREVIEW, "onGestureFinished() mTriggerBack == %s", triggerBack); - if (triggerBack) { - mBackTransitionObserver.update(mBackNavigationInfo != null - ? mBackNavigationInfo.getFocusedTaskId() - : INVALID_TASK_ID); - } // Reset gesture states. mThresholdCrossed = false; mPointersPilfered = false; @@ -850,7 +759,7 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont } mCurrentTracker.reset(); if (triggerBack) { - injectBackKey(mBackAnimationAdapter.mOriginDisplayId); + injectBackKey(); } finishBackNavigation(triggerBack); return; @@ -890,32 +799,14 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont // The next callback should be {@link #onBackAnimationFinished}. if (mCurrentTracker.getTriggerBack()) { - // notify core gesture is commit - if (shouldTriggerCloseTransition()) { - mBackTransitionHandler.mCloseTransitionRequested = true; - final IOnBackInvokedCallback callback = - mBackNavigationInfo.getOnBackInvokedCallback(); - // invoked client side onBackInvoked - dispatchOnBackInvoked(callback); - mRealCallbackInvoked = true; - } - // start post animation + // notify gesture finished + mBackNavigationInfo.onBackGestureFinished(true); dispatchOnBackInvoked(mActiveCallback); } else { tryDispatchOnBackCancelled(mActiveCallback); } } - // Close window won't create any transition - private boolean shouldTriggerCloseTransition() { - if (mBackNavigationInfo == null) { - return false; - } - int type = mBackNavigationInfo.getType(); - return type == BackNavigationInfo.TYPE_RETURN_TO_HOME - || type == BackNavigationInfo.TYPE_CROSS_TASK - || type == BackNavigationInfo.TYPE_CROSS_ACTIVITY; - } /** * Called when the post commit animation is completed or timeout. * This will trigger the real {@link IOnBackInvokedCallback} behavior. @@ -950,7 +841,6 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont "mCurrentBackGestureInfo was null when back animation finished"); } resetTouchTracker(); - mBackTransitionHandler.onAnimationFinished(); } /** @@ -979,7 +869,7 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont if (mCurrentTracker.isFinished() && mCurrentTracker.getTriggerBack()) { ProtoLog.d(WM_SHELL_BACK_PREVIEW, "resetTouchTracker -> start queued back navigation " + "AND post commit animation"); - injectBackKey(mBackAnimationAdapter.mOriginDisplayId); + injectBackKey(); finishBackNavigation(true); mCurrentTracker.reset(); } else if (!mCurrentTracker.isFinished()) { @@ -999,17 +889,16 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont ProtoLog.d(WM_SHELL_BACK_PREVIEW, "BackAnimationController: finishBackNavigation()"); mActiveCallback = null; mApps = null; + mShouldStartOnNextMoveEvent = false; mOnBackStartDispatched = false; mThresholdCrossed = false; mPointersPilfered = false; mShellBackAnimationRegistry.resetDefaultCrossActivity(); cancelLatencyTracking(); - mReceivedNullNavigationInfo = false; if (mBackNavigationInfo != null) { mPreviousNavigationType = mBackNavigationInfo.getType(); mBackNavigationInfo.onBackNavigationFinished(triggerBack); mBackNavigationInfo = null; - requestTopUi(false, mPreviousNavigationType); } } @@ -1067,23 +956,9 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont () -> mShellExecutor.execute(this::onBackAnimationFinished)); if (mApps.length >= 1) { - BackMotionEvent startEvent = mCurrentTracker.createStartEvent( - Flags.removeDepartTargetFromMotion() ? null : mApps[0]); + mCurrentTracker.updateStartLocation(); + BackMotionEvent startEvent = mCurrentTracker.createStartEvent(mApps[0]); dispatchOnBackStarted(mActiveCallback, startEvent); - if (startEvent.getSwipeEdge() == EDGE_NONE) { - // TODO(b/373544911): onBackStarted is dispatched here so that - // WindowOnBackInvokedDispatcher knows about the back navigation and intercepts - // touch events while it's active. It would be cleaner and safer to disable - // multitouch altogether (same as in gesture-nav). - dispatchOnBackStarted(mBackNavigationInfo.getOnBackInvokedCallback(), startEvent); - } - } - } - - private void requestTopUi(boolean hasTopUi, int backType) { - if (mRequestTopUiCallback != null && (backType == BackNavigationInfo.TYPE_CROSS_TASK - || backType == BackNavigationInfo.TYPE_CROSS_ACTIVITY)) { - mRequestTopUiCallback.requestTopUi(hasTopUi, TAG); } } @@ -1102,30 +977,14 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont return true; } - private void kickStartAnimation() { - startSystemAnimation(); - - // Dispatch the first progress after animation start for - // smoothing the initial animation, instead of waiting for next - // onMove. - final BackMotionEvent backFinish = mCurrentTracker - .createProgressEvent(); - dispatchOnBackProgressed(mActiveCallback, backFinish); - if (mCurrentTracker.isFinished()) { - // if the down -> up gesture happened before animation - // start, we have to trigger the uninterruptible transition - // to finish the back animation. - startPostCommitAnimation(); - } - } - private void createAdapter() { IBackAnimationRunner runner = new IBackAnimationRunner.Stub() { @Override public void onAnimationStart( RemoteAnimationTarget[] apps, - IBinder token, + RemoteAnimationTarget[] wallpapers, + RemoteAnimationTarget[] nonApps, IBackAnimationFinishedCallback finishedCallback) { mShellExecutor.execute( () -> { @@ -1136,11 +995,20 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont } mBackAnimationFinishedCallback = finishedCallback; mApps = apps; - // app only visible after transition ready, break for now. - if (token != null) { - return; + startSystemAnimation(); + + // Dispatch the first progress after animation start for + // smoothing the initial animation, instead of waiting for next + // onMove. + final BackMotionEvent backFinish = mCurrentTracker + .createProgressEvent(); + dispatchOnBackProgressed(mActiveCallback, backFinish); + if (!mBackGestureStarted) { + // if the down -> up gesture happened before animation + // start, we have to trigger the uninterruptible transition + // to finish the back animation. + startPostCommitAnimation(); } - kickStartAnimation(); }); } @@ -1163,30 +1031,12 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont mBackAnimationAdapter = new BackAnimationAdapter(runner); } - private void registerBackGestureDelegate() { - mInputManager.registerKeyGestureEventHandler(List.of(KeyGestureEvent.KEY_GESTURE_TYPE_BACK), - (event, focussedToken) -> { - if (event.getKeyGestureType() == KeyGestureEvent.KEY_GESTURE_TYPE_BACK) { - mShellExecutor.execute(() -> { - if (mBackGestureStarted) { - Log.w(TAG, "Back gesture is running, ignore request"); - return; - } - onMotionEvent(0, 0, KeyEvent.ACTION_DOWN, EDGE_NONE, INVALID_DISPLAY); - setTriggerBack(true); - onMotionEvent(0, 0, KeyEvent.ACTION_UP, EDGE_NONE, INVALID_DISPLAY); - }); - } else { - Log.w(TAG, "Unsupported gesture " + event + " received!"); - } - }); - } - /** * Description of current BackAnimationController state. */ private void dump(PrintWriter pw, String prefix) { pw.println(prefix + "BackAnimationController state:"); + pw.println(prefix + " mEnableAnimations=" + mEnableAnimations.get()); pw.println(prefix + " mBackGestureStarted=" + mBackGestureStarted); pw.println(prefix + " mPostCommitAnimationInProgress=" + mPostCommitAnimationInProgress); pw.println(prefix + " mShouldStartOnNextMoveEvent=" + mShouldStartOnNextMoveEvent); @@ -1198,684 +1048,4 @@ public class BackAnimationController implements RemoteCallable<BackAnimationCont mQueuedTracker.dump(pw, prefix + " "); } - class BackTransitionHandler implements Transitions.TransitionHandler { - private final Transitions mTransitions; - - Runnable mOnAnimationFinishCallback; - boolean mCloseTransitionRequested; - SurfaceControl.Transaction mFinishOpenTransaction; - Transitions.TransitionFinishCallback mFinishOpenTransitionCallback; - // The Transition to make behindActivity become visible - IBinder mPrepareOpenTransition; - // The Transition to make behindActivity become invisible, if prepare open exist and - // animation is canceled, start a close prepare transition to finish the whole transition. - IBinder mClosePrepareTransition; - TransitionInfo mOpenTransitionInfo; - Transitions.TransitionHandler mTakeoverHandler; - - BackTransitionHandler(Transitions transitions) { - mTransitions = transitions; - } - - void onAnimationFinished() { - if (!mCloseTransitionRequested && mPrepareOpenTransition != null) { - createClosePrepareTransition(); - } - if (mOnAnimationFinishCallback != null) { - mOnAnimationFinishCallback.run(); - mOnAnimationFinishCallback = null; - } - } - - private void applyFinishOpenTransition() { - if (mFinishOpenTransaction != null) { - final SurfaceControl.Transaction t = mFinishOpenTransaction; - t.apply(); - } - if (mFinishOpenTransitionCallback != null) { - final Transitions.TransitionFinishCallback callback = mFinishOpenTransitionCallback; - callback.onTransitionFinished(null); - } - cleanUpInternalState(); - } - - private void cleanUpInternalState() { - mOpenTransitionInfo = null; - mPrepareOpenTransition = null; - mFinishOpenTransaction = null; - mFinishOpenTransitionCallback = null; - mTakeoverHandler = null; - } - - private void applyAndFinish(@NonNull SurfaceControl.Transaction st, - @NonNull SurfaceControl.Transaction ft, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - applyFinishOpenTransition(); - st.apply(); - ft.apply(); - finishCallback.onTransitionFinished(null); - mCloseTransitionRequested = false; - } - - @Override - public boolean startAnimation(@NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction st, - @NonNull SurfaceControl.Transaction ft, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - // Both mShellExecutor and Transitions#mMainExecutor are ShellMainThread, so we don't - // need to post to ShellExecutor when called. - if (info.getType() == WindowManager.TRANSIT_CLOSE_PREPARE_BACK_NAVIGATION) { - // only consume it if this transition hasn't being processed. - if (mClosePrepareTransition != null) { - mClosePrepareTransition = null; - applyAndFinish(st, ft, finishCallback); - return true; - } - return false; - } - - if (info.getType() != WindowManager.TRANSIT_PREPARE_BACK_NAVIGATION - && isNotGestureBackTransition(info)) { - return false; - } - - if (shouldCancelAnimation(info)) { - mPrepareOpenTransition = null; - return false; - } - - if (mApps == null || mApps.length == 0) { - if (mCloseTransitionRequested) { - // animation never start, consume directly - applyAndFinish(st, ft, finishCallback); - return true; - } else if (mClosePrepareTransition == null - && info.getType() == WindowManager.TRANSIT_PREPARE_BACK_NAVIGATION) { - // Gesture animation was cancelled before prepare transition ready, create - // the close prepare transition - createClosePrepareTransition(); - } - } - - if (handlePrepareTransition(transition, info, st, ft, finishCallback)) { - if (checkTakeoverFlags()) { - mTakeoverHandler = mTransitions.getHandlerForTakeover(transition, info); - } - kickStartAnimation(); - return true; - } - return handleCloseTransition(info, st, ft, finishCallback); - } - - private boolean canHandOffAnimation() { - if (!checkTakeoverFlags()) { - return false; - } - - return mTakeoverHandler != null; - } - - private void handOffAnimation( - RemoteAnimationTarget[] targets, WindowAnimationState[] states) { - if (!checkTakeoverFlags()) { - ProtoLog.e(WM_SHELL_BACK_PREVIEW, - "Trying to hand off the animation, but the required flags are disabled."); - return; - } else if (mTakeoverHandler == null) { - ProtoLog.e(WM_SHELL_BACK_PREVIEW, - "Missing takeover handler when trying to hand off animation."); - return; - } else if (targets.length != states.length) { - ProtoLog.e(WM_SHELL_BACK_PREVIEW, - "Targets passed for takeover don't match the window states."); - return; - } - - // The states passed to this method are paired with the targets, but they need to be - // paired with the changes inside the TransitionInfo. So for each change we find its - // matching target, and leave the state for any change missing a matching target blank. - WindowAnimationState[] updatedStates = - new WindowAnimationState[mOpenTransitionInfo.getChanges().size()]; - for (int i = 0; i < mOpenTransitionInfo.getChanges().size(); i++) { - ActivityManager.RunningTaskInfo taskInfo = - mOpenTransitionInfo.getChanges().get(i).getTaskInfo(); - if (taskInfo == null) { - continue; - } - - for (int j = 0; j < targets.length; j++) { - if (taskInfo.taskId == targets[j].taskId) { - updatedStates[i] = states[j]; - break; - } - } - } - - mTakeoverHandler.takeOverAnimation( - mPrepareOpenTransition, mOpenTransitionInfo, new SurfaceControl.Transaction(), - mFinishOpenTransitionCallback, updatedStates); - - cleanUpInternalState(); - } - - @Override - public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, - @Nullable SurfaceControl.Transaction finishTransaction) { - if (transition == mClosePrepareTransition && aborted) { - mClosePrepareTransition = null; - applyFinishOpenTransition(); - } else if (!aborted && unifyBackNavigationTransition()) { - // Since the closing target participates in the predictive back transition, the - // merged transition must be applied with the first transition to ensure a seamless - // animation. - if (mFinishOpenTransaction != null && finishTransaction != null) { - mFinishOpenTransaction.merge(finishTransaction); - } - } - } - - void createClosePrepareTransition() { - if (mClosePrepareTransition != null) { - Log.e(TAG, "Re-create close prepare transition"); - return; - } - final WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.restoreBackNavi(); - mClosePrepareTransition = mTransitions.startTransition( - TRANSIT_CLOSE_PREPARE_BACK_NAVIGATION, wct, mBackTransitionHandler); - } - private void mergePendingTransitions(TransitionInfo info) { - if (mOpenTransitionInfo == null) { - return; - } - // Copy initial changes to final transition - final TransitionInfo init = mOpenTransitionInfo; - // Find prepare open target - boolean openShowWallpaper = false; - final ArrayList<SurfaceControl> openSurfaces = new ArrayList<>(); - int tmpSize; - for (int j = init.getChanges().size() - 1; j >= 0; --j) { - final TransitionInfo.Change change = init.getChanges().get(j); - if (change.hasFlags(FLAG_BACK_GESTURE_ANIMATED) - && TransitionUtil.isOpeningMode(change.getMode())) { - final ComponentName openComponent = findComponentName(change); - final int openTaskId = findTaskId(change); - final WindowContainerToken openToken = findToken(change); - if (openComponent == null && openTaskId == INVALID_TASK_ID - && openToken == null) { - continue; - } - openSurfaces.add(change.getLeash()); - if (change.hasFlags(FLAG_SHOW_WALLPAPER)) { - openShowWallpaper = true; - } - } - } - if (openSurfaces.isEmpty()) { - // This shouldn't happen, but if that happen, consume the initial transition anyway. - Log.e(TAG, "Unable to merge following transition, cannot find the gesture " - + "animated target from the open transition=" + mOpenTransitionInfo); - mOpenTransitionInfo = null; - return; - } - // Find first non-prepare open target - boolean isOpen = false; - tmpSize = info.getChanges().size(); - for (int j = 0; j < tmpSize; ++j) { - final TransitionInfo.Change change = info.getChanges().get(j); - if (isOpenSurfaceMatched(openSurfaces, change)) { - // This is original close target, potential be close, but cannot determine - // from it. - if (change.hasFlags(FLAG_BACK_GESTURE_ANIMATED)) { - isOpen = !TransitionUtil.isClosingMode(change.getMode()); - } else { - isOpen = TransitionUtil.isOpeningMode(change.getMode()); - break; - } - } - } - if (!isOpen) { - // Close transition, the transition info should be: - // init info(open A & wallpaper) => init info(open A & change B & wallpaper) - // current info(close B target) => current info(change A & close B) - // remove init info(open/change A target & wallpaper) - boolean moveToTop = false; - boolean excludeOpenTarget = false; - boolean mergePredictive = false; - for (int j = info.getChanges().size() - 1; j >= 0; --j) { - final TransitionInfo.Change change = info.getChanges().get(j); - if (isOpenSurfaceMatched(openSurfaces, change)) { - if (TransitionUtil.isClosingMode(change.getMode())) { - excludeOpenTarget = true; - } - moveToTop = change.hasFlags(FLAG_MOVED_TO_TOP); - info.getChanges().remove(j); - } else if ((openShowWallpaper && change.hasFlags(FLAG_IS_WALLPAPER))) { - info.getChanges().remove(j); - } else if (!mergePredictive && TransitionUtil.isClosingMode(change.getMode())) { - mergePredictive = true; - } - } - // Ignore merge if there is no close target - if (!info.getChanges().isEmpty() && mergePredictive) { - tmpSize = init.getChanges().size(); - for (int i = 0; i < tmpSize; ++i) { - final TransitionInfo.Change change = init.getChanges().get(i); - if (change.hasFlags(FLAG_IS_WALLPAPER)) { - continue; - } - if (isOpenSurfaceMatched(openSurfaces, change)) { - if (excludeOpenTarget) { - // App has triggered another change during predictive back - // transition, filter out predictive back target. - continue; - } - if (moveToTop) { - change.setFlags(change.getFlags() | FLAG_MOVED_TO_TOP); - } - } else if (Flags.unifyBackNavigationTransition() - && change.hasFlags(FLAG_BACK_GESTURE_ANIMATED) - && change.getMode() == TRANSIT_CHANGE - && isCloseChangeExist(info, change)) { - // This is the original top target, don't add it into current transition - // if it is closing. - continue; - } - info.getChanges().add(i, change); - } - } - } else { - // Open transition, the transition info should be: - // init info(open A & wallpaper) - // current info(open C target + close B target + close A & wallpaper) - - // If close target isn't back navigated, filter out close A & wallpaper because the - // (open C + close B) pair didn't participant prepare close - boolean nonBackOpen = false; - boolean nonBackClose = false; - tmpSize = info.getChanges().size(); - for (int j = 0; j < tmpSize; ++j) { - final TransitionInfo.Change change = info.getChanges().get(j); - if (!change.hasFlags(FLAG_BACK_GESTURE_ANIMATED) - && canBeTransitionTarget(change)) { - final int mode = change.getMode(); - nonBackOpen |= TransitionUtil.isOpeningMode(mode); - nonBackClose |= TransitionUtil.isClosingMode(mode); - } - } - if (nonBackClose && nonBackOpen) { - for (int j = info.getChanges().size() - 1; j >= 0; --j) { - final TransitionInfo.Change change = info.getChanges().get(j); - if (isOpenSurfaceMatched(openSurfaces, change)) { - info.getChanges().remove(j); - } else if ((openShowWallpaper && change.hasFlags(FLAG_IS_WALLPAPER))) { - info.getChanges().remove(j); - } - } - } - } - ProtoLog.d(WM_SHELL_BACK_PREVIEW, "Back animation transition, merge pending " - + "transitions result=%s", info); - // Only handle one merge transition request. - mOpenTransitionInfo = null; - } - - @Override - public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - if (mClosePrepareTransition == transition) { - mClosePrepareTransition = null; - } - // try to handle unexpected transition - if (mOpenTransitionInfo != null) { - mergePendingTransitions(info); - } - - if (info.getType() == TRANSIT_CLOSE_PREPARE_BACK_NAVIGATION - && !mCloseTransitionRequested && info.getChanges().isEmpty() && mApps == null) { - finishCallback.onTransitionFinished(null); - startT.apply(); - applyFinishOpenTransition(); - return; - } - if (isNotGestureBackTransition(info) || shouldCancelAnimation(info) - || !mCloseTransitionRequested) { - if (mPrepareOpenTransition != null) { - applyFinishOpenTransition(); - } - return; - } - // Handle the commit transition if this handler is running the open transition. - finishCallback.onTransitionFinished(null); - startT.apply(); - if (mCloseTransitionRequested) { - if (mApps == null || mApps.length == 0) { - // animation was done - applyFinishOpenTransition(); - mCloseTransitionRequested = false; - } else { - // we are animating, wait until animation finish - mOnAnimationFinishCallback = () -> { - applyFinishOpenTransition(); - mCloseTransitionRequested = false; - }; - } - } - } - - // Cancel close animation if something happen unexpected, let another handler to handle - private boolean shouldCancelAnimation(@NonNull TransitionInfo info) { - final boolean noCloseAllowed = !mCloseTransitionRequested - && info.getType() == WindowManager.TRANSIT_PREPARE_BACK_NAVIGATION; - boolean unableToHandle = false; - boolean filterTargets = false; - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - final TransitionInfo.Change c = info.getChanges().get(i); - final boolean backGestureAnimated = c.hasFlags(FLAG_BACK_GESTURE_ANIMATED); - if (!backGestureAnimated && !c.hasFlags(FLAG_IS_WALLPAPER)) { - // something we cannot handle? - unableToHandle = true; - filterTargets = true; - } else if (noCloseAllowed && backGestureAnimated - && TransitionUtil.isClosingMode(c.getMode())) { - // Prepare back navigation shouldn't contain close change, unless top app - // request close. - unableToHandle = true; - } - } - if (!unableToHandle) { - return false; - } - if (!filterTargets) { - return true; - } - if (TransitionUtil.isOpeningType(info.getType()) - || TransitionUtil.isClosingType(info.getType())) { - boolean removeWallpaper = false; - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - final TransitionInfo.Change c = info.getChanges().get(i); - // filter out opening target, keep original closing target in this transition - if (c.hasFlags(FLAG_BACK_GESTURE_ANIMATED) - && TransitionUtil.isOpeningMode(c.getMode())) { - info.getChanges().remove(i); - removeWallpaper |= c.hasFlags(FLAG_SHOW_WALLPAPER); - } - } - if (removeWallpaper) { - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - final TransitionInfo.Change c = info.getChanges().get(i); - if (c.hasFlags(FLAG_IS_WALLPAPER)) { - info.getChanges().remove(i); - } - } - } - } - return true; - } - - /** - * Check whether this transition is prepare for predictive back animation, which could - * happen when core make an activity become visible. - */ - @VisibleForTesting - boolean handlePrepareTransition(@NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction st, - @NonNull SurfaceControl.Transaction ft, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - if (info.getType() != WindowManager.TRANSIT_PREPARE_BACK_NAVIGATION) { - return false; - } - // Must have open target, must not have close target. - if (hasAnimationInMode(info, TransitionUtil::isClosingMode) - || !hasAnimationInMode(info, TransitionUtil::isOpeningMode)) { - return false; - } - SurfaceControl openingLeash = null; - SurfaceControl closingLeash = null; - if (mApps != null) { - for (int i = mApps.length - 1; i >= 0; --i) { - if (mApps[i].mode == MODE_OPENING) { - openingLeash = mApps[i].leash; - } else if (mApps[i].mode == MODE_CLOSING) { - closingLeash = mApps[i].leash; - } - } - } - if (openingLeash != null && closingLeash != null) { - int rootIdx = -1; - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - final TransitionInfo.Change c = info.getChanges().get(i); - if (TransitionUtil.isOpeningMode(c.getMode())) { - final Point offset = c.getEndRelOffset(); - st.setPosition(c.getLeash(), offset.x, offset.y); - st.reparent(c.getLeash(), openingLeash); - st.setAlpha(c.getLeash(), 1.0f); - rootIdx = TransitionUtil.rootIndexFor(c, info); - } else if (c.hasFlags(FLAG_BACK_GESTURE_ANIMATED) - && c.getMode() == TRANSIT_CHANGE) { - st.reparent(c.getLeash(), closingLeash); - } - } - // The root leash and the leash of opening target should actually in the same level, - // but since the root leash is created after opening target, it will have higher - // layer in surface flinger. Move the root leash to lower level, so it won't affect - // the playing animation. - if (rootIdx >= 0 && info.getRootCount() > 0) { - st.setLayer(info.getRoot(rootIdx).getLeash(), -1); - } - } - st.apply(); - // In case other transition handler took the handleRequest before this class. - mPrepareOpenTransition = transition; - mFinishOpenTransaction = ft; - mFinishOpenTransitionCallback = finishCallback; - mOpenTransitionInfo = info; - return true; - } - - /** - * Check whether this transition is triggered from back gesture commitment. - * Reparent the transition targets to animation leashes, so the animation won't be broken. - */ - @VisibleForTesting - boolean handleCloseTransition(@NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction st, - @NonNull SurfaceControl.Transaction ft, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - if (!mCloseTransitionRequested) { - return false; - } - // must have close target - if (!hasAnimationInMode(info, TransitionUtil::isClosingMode)) { - return false; - } - if (mApps == null) { - // animation is done - applyAndFinish(st, ft, finishCallback); - return true; - } - SurfaceControl openingLeash = null; - SurfaceControl closingLeash = null; - for (int i = mApps.length - 1; i >= 0; --i) { - if (mApps[i].mode == MODE_OPENING) { - openingLeash = mApps[i].leash; - } - if (mApps[i].mode == MODE_CLOSING) { - closingLeash = mApps[i].leash; - } - } - if (openingLeash != null && closingLeash != null) { - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - final TransitionInfo.Change c = info.getChanges().get(i); - if (c.hasFlags(FLAG_IS_WALLPAPER)) { - st.setAlpha(c.getLeash(), 1.0f); - continue; - } - if (TransitionUtil.isOpeningMode(c.getMode())) { - final Point offset = c.getEndRelOffset(); - st.setPosition(c.getLeash(), offset.x, offset.y); - st.reparent(c.getLeash(), openingLeash); - st.setAlpha(c.getLeash(), 1.0f); - } else if (TransitionUtil.isClosingMode(c.getMode())) { - st.reparent(c.getLeash(), closingLeash); - } - } - } - st.apply(); - // mApps must exists - mOnAnimationFinishCallback = () -> { - ft.apply(); - finishCallback.onTransitionFinished(null); - mCloseTransitionRequested = false; - }; - return true; - } - - @Nullable - @Override - public WindowContainerTransaction handleRequest( - @NonNull IBinder transition, - @NonNull TransitionRequestInfo request) { - final int type = request.getType(); - if (type == WindowManager.TRANSIT_PREPARE_BACK_NAVIGATION) { - mPrepareOpenTransition = transition; - return new WindowContainerTransaction(); - } - if (type == WindowManager.TRANSIT_CLOSE_PREPARE_BACK_NAVIGATION) { - return new WindowContainerTransaction(); - } - if (TransitionUtil.isClosingType(request.getType()) && mCloseTransitionRequested) { - return new WindowContainerTransaction(); - } - return null; - } - - private static boolean checkTakeoverFlags() { - return TransitionAnimator.Companion.longLivedReturnAnimationsEnabled() - && Flags.unifyBackNavigationTransition(); - } - } - - private static boolean isNotGestureBackTransition(@NonNull TransitionInfo info) { - return !hasAnimationInMode(info, TransitionUtil::isOpenOrCloseMode); - } - - private static boolean hasAnimationInMode(@NonNull TransitionInfo info, - Predicate<Integer> mode) { - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - final TransitionInfo.Change c = info.getChanges().get(i); - if (c.hasFlags(FLAG_BACK_GESTURE_ANIMATED) && mode.test(c.getMode())) { - return true; - } - } - return false; - } - - private static WindowContainerToken findToken(TransitionInfo.Change change) { - return change.getContainer(); - } - - private static ComponentName findComponentName(TransitionInfo.Change change) { - final ComponentName componentName = change.getActivityComponent(); - if (componentName != null) { - return componentName; - } - final TaskInfo taskInfo = change.getTaskInfo(); - if (taskInfo != null) { - return taskInfo.topActivity; - } - return null; - } - - private static int findTaskId(TransitionInfo.Change change) { - final TaskInfo taskInfo = change.getTaskInfo(); - if (taskInfo != null) { - return taskInfo.taskId; - } - return INVALID_TASK_ID; - } - - static boolean isOpenSurfaceMatched(@NonNull ArrayList<SurfaceControl> openSurfaces, - TransitionInfo.Change change) { - for (int i = openSurfaces.size() - 1; i >= 0; --i) { - if (openSurfaces.get(i).isSameSurface(change.getLeash())) { - return true; - } - } - return false; - } - - private static boolean canBeTransitionTarget(TransitionInfo.Change change) { - return findComponentName(change) != null || findTaskId(change) != INVALID_TASK_ID; - } - - private static boolean isCloseChangeExist(TransitionInfo info, TransitionInfo.Change change) { - for (int j = info.getChanges().size() - 1; j >= 0; --j) { - final TransitionInfo.Change current = info.getChanges().get(j); - if (TransitionUtil.isClosingMode(current.getMode()) - && change.getLeash().isSameSurface(current.getLeash())) { - return true; - } - } - return false; - } - - // Record the latest back gesture happen on which task. - static class BackTransitionObserver implements Transitions.TransitionObserver { - int mFocusedTaskId = INVALID_TASK_ID; - IBinder mFocusTaskMonitorToken; - private BackTransitionHandler mBackTransitionHandler; - void setBackTransitionHandler(BackTransitionHandler handler) { - mBackTransitionHandler = handler; - } - - void update(int focusedTaskId) { - mFocusedTaskId = focusedTaskId; - } - - @Override - public void onTransitionReady(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction) { - if (mFocusedTaskId == INVALID_TASK_ID) { - return; - } - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - final TransitionInfo.Change c = info.getChanges().get(i); - if (c.getTaskInfo() != null && c.getTaskInfo().taskId == mFocusedTaskId) { - mFocusTaskMonitorToken = transition; - break; - } - } - // Transition happen but the task isn't involved, reset. - if (mFocusTaskMonitorToken == null) { - mFocusedTaskId = INVALID_TASK_ID; - } - } - - @Override - public void onTransitionMerged(@NonNull IBinder merged, @NonNull IBinder playing) { - if (mFocusTaskMonitorToken == merged) { - mFocusTaskMonitorToken = playing; - } - if (mBackTransitionHandler.mClosePrepareTransition == merged) { - mBackTransitionHandler.mClosePrepareTransition = null; - } - } - - @Override - public void onTransitionFinished(@NonNull IBinder transition, boolean aborted) { - if (mFocusTaskMonitorToken == transition) { - mFocusedTaskId = INVALID_TASK_ID; - } - if (mBackTransitionHandler.mClosePrepareTransition == transition) { - mBackTransitionHandler.mClosePrepareTransition = null; - } - } - } } diff --git a/wmshell/src/com/android/wm/shell/back/BackAnimationRunner.java b/wmshell/src/com/android/wm/shell/back/BackAnimationRunner.java index b9fccc1c41..4988a9481d 100644 --- a/wmshell/src/com/android/wm/shell/back/BackAnimationRunner.java +++ b/wmshell/src/com/android/wm/shell/back/BackAnimationRunner.java @@ -20,22 +20,17 @@ import static android.view.WindowManager.TRANSIT_OLD_UNSET; import android.annotation.NonNull; import android.content.Context; -import android.os.Handler; import android.os.RemoteException; import android.util.Log; import android.view.IRemoteAnimationFinishedCallback; import android.view.IRemoteAnimationRunner; import android.view.RemoteAnimationTarget; -import android.view.SurfaceControl; import android.window.IBackAnimationRunner; import android.window.IOnBackInvokedCallback; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.jank.Cuj.CujType; -import com.android.internal.jank.InteractionJankMonitor; -import com.android.wm.shell.shared.annotations.ShellMainThread; - -import java.lang.ref.WeakReference; +import com.android.wm.shell.common.InteractionJankMonitorUtils; /** * Used to register the animation callback and runner, it will trigger result if gesture was finish @@ -50,8 +45,6 @@ public class BackAnimationRunner { private final IRemoteAnimationRunner mRunner; private final @CujType int mCujType; private final Context mContext; - @ShellMainThread - private final Handler mHandler; // Whether we are waiting to receive onAnimationStart private boolean mWaitingAnimation; @@ -63,35 +56,18 @@ public class BackAnimationRunner { @NonNull IOnBackInvokedCallback callback, @NonNull IRemoteAnimationRunner runner, @NonNull Context context, - @CujType int cujType, - @ShellMainThread Handler handler) { + @CujType int cujType) { mCallback = callback; mRunner = runner; mCujType = cujType; mContext = context; - mHandler = handler; } public BackAnimationRunner( @NonNull IOnBackInvokedCallback callback, @NonNull IRemoteAnimationRunner runner, - @NonNull Context context, - @ShellMainThread Handler handler - ) { - this(callback, runner, context, NO_CUJ, handler); - } - - /** - * @deprecated Use {@link BackAnimationRunner} constructor providing an handler for the ui - * thread of the animation. - */ - @Deprecated - public BackAnimationRunner( - @NonNull IOnBackInvokedCallback callback, - @NonNull IRemoteAnimationRunner runner, - @NonNull Context context - ) { - this(callback, runner, context, NO_CUJ, context.getMainThreadHandler()); + @NonNull Context context) { + this(callback, runner, context, NO_CUJ); } /** Returns the registered animation runner */ @@ -104,95 +80,35 @@ public class BackAnimationRunner { return mCallback; } - private Runnable mFinishedCallback; - private RemoteAnimationTarget[] mApps; - private RemoteAnimationFinishedStub mRemoteCallback; - - private static class RemoteAnimationFinishedStub extends IRemoteAnimationFinishedCallback.Stub { - //the binder callback should not hold strong reference to it to avoid memory leak. - private final WeakReference<BackAnimationRunner> mRunnerRef; - private boolean mAbandoned; - - private RemoteAnimationFinishedStub(BackAnimationRunner runner) { - mRunnerRef = new WeakReference<>(runner); - } - - @Override - public void onAnimationFinished() { - synchronized (this) { - if (mAbandoned) { - return; - } - } - final BackAnimationRunner runner = mRunnerRef.get(); - if (runner == null) { - return; - } - runner.onAnimationFinish(this); - } - - void abandon() { - synchronized (this) { - mAbandoned = true; - final BackAnimationRunner runner = mRunnerRef.get(); - if (runner == null) { - return; - } - if (runner.shouldMonitorCUJ(runner.mApps)) { - InteractionJankMonitor.getInstance().end(runner.mCujType); - } - } - } - } - /** * Called from {@link IBackAnimationRunner}, it will deliver these * {@link RemoteAnimationTarget}s to the corresponding runner. */ void startAnimation(RemoteAnimationTarget[] apps, RemoteAnimationTarget[] wallpapers, RemoteAnimationTarget[] nonApps, Runnable finishedCallback) { - if (mRemoteCallback != null) { - mRemoteCallback.abandon(); - mRemoteCallback = null; - } - mRemoteCallback = new RemoteAnimationFinishedStub(this); - mFinishedCallback = finishedCallback; - mApps = apps; + final IRemoteAnimationFinishedCallback callback = + new IRemoteAnimationFinishedCallback.Stub() { + @Override + public void onAnimationFinished() { + if (shouldMonitorCUJ(apps)) { + InteractionJankMonitorUtils.endTracing(mCujType); + } + finishedCallback.run(); + } + }; mWaitingAnimation = false; if (shouldMonitorCUJ(apps)) { - InteractionJankMonitor.getInstance().begin( - apps[0].leash, mContext, mHandler, mCujType); + InteractionJankMonitorUtils.beginTracing( + mCujType, mContext, apps[0].leash, /* tag */ null); } try { getRunner().onAnimationStart(TRANSIT_OLD_UNSET, apps, wallpapers, - nonApps, mRemoteCallback); + nonApps, callback); } catch (RemoteException e) { Log.w(TAG, "Failed call onAnimationStart", e); } } - void onAnimationFinish(RemoteAnimationFinishedStub finished) { - mHandler.post(() -> { - if (mRemoteCallback != null && finished != mRemoteCallback) { - return; - } - if (shouldMonitorCUJ(mApps)) { - InteractionJankMonitor.getInstance().end(mCujType); - } - - mFinishedCallback.run(); - for (int i = mApps.length - 1; i >= 0; --i) { - final SurfaceControl sc = mApps[i].leash; - if (sc != null && sc.isValid()) { - sc.release(); - } - } - mApps = null; - mFinishedCallback = null; - mRemoteCallback = null; - }); - } - @VisibleForTesting boolean shouldMonitorCUJ(RemoteAnimationTarget[] apps) { return apps.length > 0 && mCujType != NO_CUJ; diff --git a/wmshell/src/com/android/wm/shell/back/CrossActivityBackAnimation.kt b/wmshell/src/com/android/wm/shell/back/CrossActivityBackAnimation.kt index 2950dd0ec0..169e122c35 100644 --- a/wmshell/src/com/android/wm/shell/back/CrossActivityBackAnimation.kt +++ b/wmshell/src/com/android/wm/shell/back/CrossActivityBackAnimation.kt @@ -26,7 +26,6 @@ import android.graphics.Matrix import android.graphics.PointF import android.graphics.Rect import android.graphics.RectF -import android.os.Handler import android.os.RemoteException import android.util.TimeUtils import android.view.Choreographer @@ -39,12 +38,9 @@ import android.view.animation.DecelerateInterpolator import android.view.animation.Interpolator import android.view.animation.Transformation import android.window.BackEvent -import android.window.BackEvent.EDGE_LEFT -import android.window.BackEvent.EDGE_RIGHT import android.window.BackMotionEvent import android.window.BackNavigationInfo import android.window.BackProgressAnimator -import android.window.DesktopExperienceFlags import android.window.IOnBackInvokedCallback import com.android.internal.dynamicanimation.animation.FloatValueHolder import com.android.internal.dynamicanimation.animation.SpringAnimation @@ -52,13 +48,11 @@ import com.android.internal.dynamicanimation.animation.SpringForce import com.android.internal.jank.Cuj import com.android.internal.policy.ScreenDecorationsUtils import com.android.internal.policy.SystemBarUtils -import com.android.internal.protolog.ProtoLog -import com.android.window.flags2.Flags.predictiveBackTimestampApi +import com.android.internal.protolog.common.ProtoLog import com.android.wm.shell.R import com.android.wm.shell.RootTaskDisplayAreaOrganizer +import com.android.wm.shell.animation.Interpolators import com.android.wm.shell.protolog.ShellProtoLogGroup -import com.android.wm.shell.shared.animation.Interpolators -import com.android.wm.shell.shared.annotations.ShellMainThread import kotlin.math.abs import kotlin.math.max import kotlin.math.min @@ -67,8 +61,7 @@ abstract class CrossActivityBackAnimation( private val context: Context, private val background: BackAnimationBackground, private val rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer, - protected val transaction: SurfaceControl.Transaction, - @ShellMainThread handler: Handler, + protected val transaction: SurfaceControl.Transaction ) : ShellBackAnimation() { protected val startClosingRect = RectF() @@ -87,13 +80,7 @@ abstract class CrossActivityBackAnimation( private var statusbarHeight = SystemBarUtils.getStatusBarHeight(context) private val backAnimationRunner = - BackAnimationRunner( - Callback(), - Runner(), - context, - Cuj.CUJ_PREDICTIVE_BACK_CROSS_ACTIVITY, - handler, - ) + BackAnimationRunner(Callback(), Runner(), context, Cuj.CUJ_PREDICTIVE_BACK_CROSS_ACTIVITY) private val initialTouchPos = PointF() private val transformMatrix = Matrix() private val tmpFloat9 = FloatArray(9) @@ -122,9 +109,7 @@ abstract class CrossActivityBackAnimation( private val postCommitFlingSpring = SpringForce(SPRING_SCALE) .setStiffness(SpringForce.STIFFNESS_LOW) .setDampingRatio(SpringForce.DAMPING_RATIO_LOW_BOUNCY) - private var swipeEdge = EDGE_LEFT protected var gestureProgress = 0f - private val velocityTracker = ProgressVelocityTracker() /** Background color to be used during the animation, also see [getBackgroundColor] */ protected var customizedBackgroundColor = 0 @@ -181,12 +166,11 @@ abstract class CrossActivityBackAnimation( ) return } - swipeEdge = backMotionEvent.swipeEdge triggerBack = backMotionEvent.triggerBack initialTouchPos.set(backMotionEvent.touchX, backMotionEvent.touchY) transaction.setAnimationTransaction() - isLetterboxed = closingTarget!!.taskInfo.appCompatTaskInfo.isTopActivityLetterboxed + isLetterboxed = closingTarget!!.taskInfo.appCompatTaskInfo.topActivityBoundsLetterboxed enteringHasSameLetterbox = isLetterboxed && closingTarget!!.localBounds.equals(enteringTarget!!.localBounds) @@ -205,14 +189,10 @@ abstract class CrossActivityBackAnimation( preparePreCommitEnteringRectMovement() background.ensureBackground( - closingTarget!!.windowConfiguration.bounds, - getBackgroundColor(), - transaction, - statusbarHeight, - if (closingTarget!!.windowConfiguration.tasksAreFloating()) - closingTarget!!.localBounds else null, - cornerRadius, - closingTarget!!.taskInfo.getDisplayId() + closingTarget!!.windowConfiguration.bounds, + getBackgroundColor(), + transaction, + statusbarHeight ) ensureScrimLayer() if (isLetterboxed && enteringHasSameLetterbox) { @@ -249,9 +229,6 @@ abstract class CrossActivityBackAnimation( ) applyTransaction() background.customizeStatusBarAppearance(currentClosingRect.top.toInt()) - if (predictiveBackTimestampApi()) { - velocityTracker.addPosition(backEvent.frameTimeMillis, progress) - } } private fun getYOffset(centeredRect: RectF, touchY: Float): Float { @@ -283,19 +260,10 @@ abstract class CrossActivityBackAnimation( // kick off spring animation with the current velocity from the pre-commit phase, this // affects the scaling of the closing and/or opening activity during post-commit - - var startVelocity = if (predictiveBackTimestampApi()) { - // pronounce fling animation more for gestures - val velocityFactor = if (swipeEdge == EDGE_LEFT || swipeEdge == EDGE_RIGHT) 2f else 1f - velocity * SPRING_SCALE * (1f - MAX_SCALE) * velocityFactor - } else { - velocity * SPRING_SCALE - } - if (gestureProgress < 0.1f) { - startVelocity = startVelocity.coerceAtLeast(DEFAULT_FLING_VELOCITY) - } + val startVelocity = + if (gestureProgress < 0.1f) -DEFAULT_FLING_VELOCITY else -velocity * SPRING_SCALE val flingAnimation = SpringAnimation(postCommitFlingScale, SPRING_SCALE) - .setStartVelocity(-startVelocity.coerceIn(0f, MAX_FLING_VELOCITY)) + .setStartVelocity(startVelocity.coerceIn(-MAX_FLING_VELOCITY, 0f)) .setStartValue(SPRING_SCALE) .setSpring(postCommitFlingSpring) flingAnimation.start() @@ -358,7 +326,6 @@ abstract class CrossActivityBackAnimation( lastPostCommitFlingScale = SPRING_SCALE gestureProgress = 0f triggerBack = false - velocityTracker.resetTracking() } protected fun applyTransform( @@ -411,12 +378,7 @@ abstract class CrossActivityBackAnimation( .setOpaque(false) .setHidden(false) - if (DesktopExperienceFlags.ENABLE_MULTIDISPLAY_TRACKPAD_BACK_GESTURE.isTrue()) { - rootTaskDisplayAreaOrganizer.attachToDisplayArea( - closingTarget!!.taskInfo.getDisplayId(), scrimBuilder) - } else { - rootTaskDisplayAreaOrganizer.attachToDisplayArea(Display.DEFAULT_DISPLAY, scrimBuilder) - } + rootTaskDisplayAreaOrganizer.attachToDisplayArea(Display.DEFAULT_DISPLAY, scrimBuilder) scrimLayer = scrimBuilder.build() val colorComponents = floatArrayOf(0f, 0f, 0f) maxScrimAlpha = if (isDarkTheme) MAX_SCRIM_ALPHA_DARK else MAX_SCRIM_ALPHA_LIGHT @@ -480,13 +442,7 @@ abstract class CrossActivityBackAnimation( .setOpaque(true) .setHidden(false) - if (DesktopExperienceFlags.ENABLE_MULTIDISPLAY_TRACKPAD_BACK_GESTURE.isTrue()) { - rootTaskDisplayAreaOrganizer.attachToDisplayArea( - closingTarget!!.taskInfo.getDisplayId(), letterboxBuilder) - } else { - rootTaskDisplayAreaOrganizer.attachToDisplayArea( - Display.DEFAULT_DISPLAY, letterboxBuilder) - } + rootTaskDisplayAreaOrganizer.attachToDisplayArea(Display.DEFAULT_DISPLAY, letterboxBuilder) val layer = letterboxBuilder.build() val colorComponents = floatArrayOf( @@ -552,11 +508,7 @@ abstract class CrossActivityBackAnimation( override fun onBackInvoked() { triggerBack = true progressAnimator.reset() - if (predictiveBackTimestampApi()) { - onGestureCommitted(velocityTracker.calculateVelocity()) - } else { - onGestureCommitted(progressAnimator.velocity) - } + onGestureCommitted(progressAnimator.velocity) } } diff --git a/wmshell/src/com/android/wm/shell/back/CrossTaskBackAnimation.java b/wmshell/src/com/android/wm/shell/back/CrossTaskBackAnimation.java index 40607a1ff2..381914a58c 100644 --- a/wmshell/src/com/android/wm/shell/back/CrossTaskBackAnimation.java +++ b/wmshell/src/com/android/wm/shell/back/CrossTaskBackAnimation.java @@ -21,9 +21,7 @@ import static android.view.RemoteAnimationTarget.MODE_OPENING; import static android.window.BackEvent.EDGE_RIGHT; import static com.android.internal.jank.InteractionJankMonitor.CUJ_PREDICTIVE_BACK_CROSS_TASK; -import static com.android.window.flags2.Flags.predictiveBackTimestampApi; import static com.android.wm.shell.back.BackAnimationConstants.UPDATE_SYSUI_FLAGS_THRESHOLD; -import static com.android.wm.shell.back.CrossActivityBackAnimationKt.scaleCentered; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BACK_PREVIEW; import android.animation.Animator; @@ -36,9 +34,7 @@ import android.graphics.Matrix; import android.graphics.PointF; import android.graphics.Rect; import android.graphics.RectF; -import android.os.Handler; import android.os.RemoteException; -import android.util.TimeUtils; import android.view.Choreographer; import android.view.IRemoteAnimationFinishedCallback; import android.view.IRemoteAnimationRunner; @@ -51,14 +47,11 @@ import android.window.BackMotionEvent; import android.window.BackProgressAnimator; import android.window.IOnBackInvokedCallback; -import com.android.internal.dynamicanimation.animation.FloatValueHolder; -import com.android.internal.dynamicanimation.animation.SpringAnimation; -import com.android.internal.dynamicanimation.animation.SpringForce; import com.android.internal.policy.ScreenDecorationsUtils; import com.android.internal.policy.SystemBarUtils; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; -import com.android.wm.shell.shared.animation.Interpolators; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.shared.annotations.ShellMainThread; import javax.inject.Inject; @@ -76,6 +69,7 @@ import javax.inject.Inject; * IOnBackInvokedCallback} with WM Shell and receives back dispatches when a back navigation to * launcher starts. */ +@ShellMainThread public class CrossTaskBackAnimation extends ShellBackAnimation { private static final int BACKGROUNDCOLOR = 0x43433A; @@ -87,11 +81,6 @@ public class CrossTaskBackAnimation extends ShellBackAnimation { /** Duration of post animation after gesture committed. */ private static final int POST_ANIMATION_DURATION_MS = 500; - private static final float SPRING_SCALE = 100f; - private static final float DEFAULT_FLING_VELOCITY = 320f; - private static final float MAX_FLING_VELOCITY = 1000f; - private static final float FLING_SPRING_STIFFNESS = 320f; - private final Rect mStartTaskRect = new Rect(); private float mCornerRadius; private int mStatusbarHeight; @@ -125,18 +114,10 @@ public class CrossTaskBackAnimation extends ShellBackAnimation { private float mInterWindowMargin; private float mVerticalMargin; - private final FloatValueHolder mPostCommitFlingScale = new FloatValueHolder(SPRING_SCALE); - private final SpringForce mPostCommitFlingSpring = new SpringForce(SPRING_SCALE) - .setStiffness(FLING_SPRING_STIFFNESS) - .setDampingRatio(1f); - private final ProgressVelocityTracker mVelocityTracker = new ProgressVelocityTracker(); - private float mGestureProgress = 0f; - @Inject - public CrossTaskBackAnimation(Context context, BackAnimationBackground background, - @ShellMainThread Handler handler) { + public CrossTaskBackAnimation(Context context, BackAnimationBackground background) { mBackAnimationRunner = new BackAnimationRunner( - new Callback(), new Runner(), context, CUJ_PREDICTIVE_BACK_CROSS_TASK, handler); + new Callback(), new Runner(), context, CUJ_PREDICTIVE_BACK_CROSS_TASK); mBackground = background; mContext = context; loadResources(); @@ -175,8 +156,7 @@ public class CrossTaskBackAnimation extends ShellBackAnimation { // Draw background. mBackground.ensureBackground(mClosingTarget.windowConfiguration.getBounds(), - BACKGROUNDCOLOR, mTransaction, mStatusbarHeight, - mClosingTarget.taskInfo.getDisplayId()); + BACKGROUNDCOLOR, mTransaction, mStatusbarHeight); mInterWindowMargin = mContext.getResources() .getDimension(R.dimen.cross_task_back_inter_window_margin); mVerticalMargin = mContext.getResources() @@ -187,7 +167,6 @@ public class CrossTaskBackAnimation extends ShellBackAnimation { if (mEnteringTarget == null || mClosingTarget == null) { return; } - mGestureProgress = progress; float touchY = event.getTouchY(); @@ -249,8 +228,6 @@ public class CrossTaskBackAnimation extends ShellBackAnimation { } mClosingCurrentRect.set(left, top, left + width, top + height); - - applyFlingScale(mClosingCurrentRect); applyTransform(mClosingTarget.leash, mClosingCurrentRect, mCornerRadius); } @@ -261,19 +238,9 @@ public class CrossTaskBackAnimation extends ShellBackAnimation { float height = mapRange(progress, mEnteringStartRect.height(), mStartTaskRect.height()); mEnteringCurrentRect.set(left, top, left + width, top + height); - - applyFlingScale(mEnteringCurrentRect); applyTransform(mEnteringTarget.leash, mEnteringCurrentRect, mCornerRadius); } - private void applyFlingScale(RectF rect) { - // apply a scale to the rect to account for fling velocity - final float flingScale = Math.min(mPostCommitFlingScale.getValue() / SPRING_SCALE, 1f); - if (flingScale >= 1f) return; - scaleCentered(rect, flingScale, /* pivotX */ rect.right, - /* pivotY */ rect.top + rect.height() / 2); - } - /** Transform the target window to match the target rect. */ private void applyTransform(SurfaceControl leash, RectF targetRect, float cornerRadius) { if (leash == null || !leash.isValid()) { @@ -312,8 +279,6 @@ public class CrossTaskBackAnimation extends ShellBackAnimation { mTransformMatrix.reset(); mClosingCurrentRect.setEmpty(); mInitialTouchPos.set(0, 0); - mGestureProgress = 0; - mVelocityTracker.resetTracking(); if (mFinishCallback != null) { try { @@ -332,12 +297,7 @@ public class CrossTaskBackAnimation extends ShellBackAnimation { } float progress = backEvent.getProgress(); mTouchPos.set(backEvent.getTouchX(), backEvent.getTouchY()); - float interpolatedProgress = getInterpolatedProgress(progress); - if (predictiveBackTimestampApi()) { - mVelocityTracker.addPosition(backEvent.getFrameTimeMillis(), - interpolatedProgress * SPRING_SCALE); - } - updateGestureBackProgress(interpolatedProgress, backEvent); + updateGestureBackProgress(getInterpolatedProgress(progress), backEvent); } private void onGestureCommitted() { @@ -346,24 +306,6 @@ public class CrossTaskBackAnimation extends ShellBackAnimation { return; } - if (predictiveBackTimestampApi()) { - // kick off spring animation with the current velocity from the pre-commit phase, this - // affects the scaling of the closing and/or opening task during post-commit - float startVelocity = mGestureProgress < 0.1f - ? -DEFAULT_FLING_VELOCITY : -mVelocityTracker.calculateVelocity(); - SpringAnimation flingAnimation = - new SpringAnimation(mPostCommitFlingScale, SPRING_SCALE) - .setStartVelocity(Math.max(-MAX_FLING_VELOCITY, Math.min(0f, startVelocity))) - .setStartValue(SPRING_SCALE) - .setMinimumVisibleChange(0.1f) - .setSpring(mPostCommitFlingSpring); - flingAnimation.start(); - // do an animation-frame immediately to prevent idle frame - flingAnimation.doAnimationFrame( - Choreographer.getInstance().getLastFrameTimeNanos() / TimeUtils.NANOS_PER_MS - ); - } - // We enter phase 2 of the animation, the starting coordinates for phase 2 are the current // coordinate of the gesture driven phase. mEnteringCurrentRect.round(mEnteringStartRect); diff --git a/wmshell/src/com/android/wm/shell/back/CustomCrossActivityBackAnimation.kt b/wmshell/src/com/android/wm/shell/back/CustomCrossActivityBackAnimation.kt index 2f7666b218..9ebab63834 100644 --- a/wmshell/src/com/android/wm/shell/back/CustomCrossActivityBackAnimation.kt +++ b/wmshell/src/com/android/wm/shell/back/CustomCrossActivityBackAnimation.kt @@ -18,7 +18,6 @@ package com.android.wm.shell.back import android.content.Context import android.graphics.Rect import android.graphics.RectF -import android.os.Handler import android.util.MathUtils import android.view.SurfaceControl import android.view.animation.Animation @@ -28,10 +27,9 @@ import android.window.BackMotionEvent import android.window.BackNavigationInfo import com.android.internal.R import com.android.internal.policy.TransitionAnimation -import com.android.internal.protolog.ProtoLog +import com.android.internal.protolog.common.ProtoLog import com.android.wm.shell.RootTaskDisplayAreaOrganizer import com.android.wm.shell.protolog.ShellProtoLogGroup -import com.android.wm.shell.shared.annotations.ShellMainThread import javax.inject.Inject import kotlin.math.max import kotlin.math.min @@ -42,15 +40,13 @@ class CustomCrossActivityBackAnimation( background: BackAnimationBackground, rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer, transaction: SurfaceControl.Transaction, - private val customAnimationLoader: CustomAnimationLoader, - @ShellMainThread handler: Handler, + private val customAnimationLoader: CustomAnimationLoader ) : CrossActivityBackAnimation( context, background, rootTaskDisplayAreaOrganizer, - transaction, - handler + transaction ) { private var enterAnimation: Animation? = null @@ -63,8 +59,7 @@ class CustomCrossActivityBackAnimation( constructor( context: Context, background: BackAnimationBackground, - rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer, - @ShellMainThread handler: Handler, + rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer ) : this( context, background, @@ -72,8 +67,7 @@ class CustomCrossActivityBackAnimation( SurfaceControl.Transaction(), CustomAnimationLoader( TransitionAnimation(context, false /* debug */, "CustomCrossActivityBackAnimation") - ), - handler, + ) ) override fun preparePreCommitClosingRectMovement(swipeEdge: Int) { diff --git a/wmshell/src/com/android/wm/shell/back/DefaultCrossActivityBackAnimation.kt b/wmshell/src/com/android/wm/shell/back/DefaultCrossActivityBackAnimation.kt index eecd769400..c747e1e989 100644 --- a/wmshell/src/com/android/wm/shell/back/DefaultCrossActivityBackAnimation.kt +++ b/wmshell/src/com/android/wm/shell/back/DefaultCrossActivityBackAnimation.kt @@ -16,13 +16,11 @@ package com.android.wm.shell.back import android.content.Context -import android.os.Handler import android.view.SurfaceControl import android.window.BackEvent import com.android.wm.shell.R import com.android.wm.shell.RootTaskDisplayAreaOrganizer -import com.android.wm.shell.shared.animation.Interpolators -import com.android.wm.shell.shared.annotations.ShellMainThread +import com.android.wm.shell.animation.Interpolators import javax.inject.Inject import kotlin.math.max @@ -32,15 +30,13 @@ class DefaultCrossActivityBackAnimation constructor( context: Context, background: BackAnimationBackground, - rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer, - @ShellMainThread handler: Handler, + rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer ) : CrossActivityBackAnimation( context, background, rootTaskDisplayAreaOrganizer, - SurfaceControl.Transaction(), - handler + SurfaceControl.Transaction() ) { private val postCommitInterpolator = Interpolators.EMPHASIZED diff --git a/wmshell/src/com/android/wm/shell/back/ShellBackAnimationRegistry.java b/wmshell/src/com/android/wm/shell/back/ShellBackAnimationRegistry.java index ae2c7b3adb..6fafa75e2f 100644 --- a/wmshell/src/com/android/wm/shell/back/ShellBackAnimationRegistry.java +++ b/wmshell/src/com/android/wm/shell/back/ShellBackAnimationRegistry.java @@ -23,8 +23,6 @@ import android.util.Log; import android.util.SparseArray; import android.window.BackNavigationInfo; -import java.util.ArrayList; - /** Registry for all types of default back animations */ public class ShellBackAnimationRegistry { private static final String TAG = "ShellBackPreview"; @@ -33,8 +31,6 @@ public class ShellBackAnimationRegistry { private ShellBackAnimation mDefaultCrossActivityAnimation; private final ShellBackAnimation mCustomizeActivityAnimation; private final ShellBackAnimation mCrossTaskAnimation; - private boolean mSupportedAnimatorsChanged = false; - private final ArrayList<Integer> mSupportedAnimators = new ArrayList<>(); public ShellBackAnimationRegistry( @ShellBackAnimation.CrossActivity @Nullable ShellBackAnimation crossActivityAnimation, @@ -64,7 +60,7 @@ public class ShellBackAnimationRegistry { mDefaultCrossActivityAnimation = crossActivityAnimation; mCustomizeActivityAnimation = customizeActivityAnimation; mCrossTaskAnimation = crossTaskAnimation; - updateSupportedAnimators(); + // TODO(b/236760237): register dialog close animation when it's completed. } @@ -75,7 +71,6 @@ public class ShellBackAnimationRegistry { if (BackNavigationInfo.TYPE_CROSS_ACTIVITY == type) { mDefaultCrossActivityAnimation = null; } - updateSupportedAnimators(); } void unregisterAnimation(@BackNavigationInfo.BackTargetType int type) { @@ -84,24 +79,6 @@ public class ShellBackAnimationRegistry { if (BackNavigationInfo.TYPE_CROSS_ACTIVITY == type) { mDefaultCrossActivityAnimation = null; } - updateSupportedAnimators(); - } - - private void updateSupportedAnimators() { - mSupportedAnimators.clear(); - for (int i = mAnimationDefinition.size() - 1; i >= 0; --i) { - mSupportedAnimators.add(mAnimationDefinition.keyAt(i)); - } - mSupportedAnimatorsChanged = true; - } - - boolean hasSupportedAnimatorsChanged() { - return mSupportedAnimatorsChanged; - } - - ArrayList<Integer> getSupportedAnimators() { - mSupportedAnimatorsChanged = false; - return mSupportedAnimators; } /** diff --git a/wmshell/src/com/android/wm/shell/back/TEST_MAPPING b/wmshell/src/com/android/wm/shell/back/TEST_MAPPING index df3a369feb..f02559f361 100644 --- a/wmshell/src/com/android/wm/shell/back/TEST_MAPPING +++ b/wmshell/src/com/android/wm/shell/back/TEST_MAPPING @@ -1,10 +1,32 @@ { "presubmit": [ { - "name": "WMShellUnitTests_shell_back" + "name": "WMShellUnitTests", + "options": [ + { + "exclude-annotation": "androidx.test.filters.FlakyTest" + }, + { + "include-filter": "com.android.wm.shell.back" + } + ] }, { - "name": "CtsWindowManagerDeviceBackNavigation_com_android_wm_shell_back" + "name": "CtsWindowManagerDeviceBackNavigation", + "options": [ + { + "exclude-annotation": "androidx.test.filters.FlakyTest" + }, + { + "include-filter": "android.server.wm.backnavigation.BackGestureInvokedTest" + }, + { + "include-filter": "android.server.wm.backnavigation.BackNavigationTests" + }, + { + "include-filter": "android.server.wm.backnavigation.OnBackInvokedCallbackGestureTest" + } + ] } ] } diff --git a/wmshell/src/com/android/wm/shell/bubbles/BadgedImageView.java b/wmshell/src/com/android/wm/shell/bubbles/BadgedImageView.java index 0f1bf5e097..f9a1d940c7 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BadgedImageView.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BadgedImageView.java @@ -15,8 +15,6 @@ */ package com.android.wm.shell.bubbles; -import static com.android.launcher3.icons.IconNormalizer.ICON_VISIBLE_AREA_FACTOR; - import android.annotation.DrawableRes; import android.annotation.Nullable; import android.content.Context; @@ -37,8 +35,9 @@ import android.widget.ImageView; import androidx.constraintlayout.widget.ConstraintLayout; import com.android.launcher3.icons.DotRenderer; +import com.android.launcher3.icons.IconNormalizer; import com.android.wm.shell.R; -import com.android.wm.shell.shared.animation.Interpolators; +import com.android.wm.shell.animation.Interpolators; import java.util.EnumSet; @@ -133,7 +132,7 @@ public class BadgedImageView extends ConstraintLayout { private void getOutline(Outline outline) { final int bubbleSize = mPositioner.getBubbleSize(); - final int normalizedSize = Math.round(ICON_VISIBLE_AREA_FACTOR * bubbleSize); + final int normalizedSize = IconNormalizer.getNormalizedCircleSize(bubbleSize); final int inset = (bubbleSize - normalizedSize) / 2; outline.setOval(inset, inset, inset + normalizedSize, inset + normalizedSize); } @@ -358,9 +357,7 @@ public class BadgedImageView extends ConstraintLayout { void showBadge() { Bitmap appBadgeBitmap = mBubble.getAppBadge(); - final boolean showAppBadge = (mBubble instanceof Bubble) - && ((Bubble) mBubble).showAppBadge(); - if (appBadgeBitmap == null || !showAppBadge) { + if (appBadgeBitmap == null) { mAppIcon.setVisibility(GONE); return; } diff --git a/wmshell/src/com/android/wm/shell/bubbles/Bubble.java b/wmshell/src/com/android/wm/shell/bubbles/Bubble.java index 8cc30ee804..1279fc42c0 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/Bubble.java +++ b/wmshell/src/com/android/wm/shell/bubbles/Bubble.java @@ -16,10 +16,10 @@ package com.android.wm.shell.bubbles; import static android.app.ActivityTaskManager.INVALID_TASK_ID; +import static android.os.AsyncTask.Status.FINISHED; import static com.android.internal.annotations.VisibleForTesting.Visibility.PRIVATE; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES_NOISY; import android.annotation.DimenRes; import android.annotation.Hide; @@ -28,7 +28,6 @@ import android.annotation.Nullable; import android.app.Notification; import android.app.PendingIntent; import android.app.Person; -import android.app.TaskInfo; import android.content.Context; import android.content.Intent; import android.content.LocusId; @@ -40,7 +39,6 @@ import android.graphics.Bitmap; import android.graphics.Path; import android.graphics.drawable.Drawable; import android.graphics.drawable.Icon; -import android.os.IBinder; import android.os.Parcelable; import android.os.UserHandle; import android.provider.Settings; @@ -50,17 +48,11 @@ import android.util.Log; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.logging.InstanceId; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.launcher3.icons.BubbleIconFactory; -import com.android.wm.shell.bubbles.appinfo.BubbleAppInfoProvider; import com.android.wm.shell.bubbles.bar.BubbleBarExpandedView; import com.android.wm.shell.bubbles.bar.BubbleBarLayerView; -import com.android.wm.shell.common.ComponentUtils; -import com.android.wm.shell.shared.annotations.ShellBackgroundThread; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.bubbles.BubbleInfo; -import com.android.wm.shell.shared.bubbles.ParcelableFlyoutMessage; -import com.android.wm.shell.taskview.TaskView; +import com.android.wm.shell.common.bubbles.BubbleInfo; import java.io.PrintWriter; import java.util.List; @@ -73,36 +65,19 @@ import java.util.concurrent.Executor; public class Bubble implements BubbleViewProvider { private static final String TAG = "Bubble"; - /** A string prefix used in app bubbles' {@link #mKey}. */ + /** A string suffix used in app bubbles' {@link #mKey}. */ public static final String KEY_APP_BUBBLE = "key_app_bubble"; - /** A string prefix used in note bubbles' {@link #mKey}. */ - public static final String KEY_NOTE_BUBBLE = "key_note_bubble"; - - /** The possible types a bubble may be. */ - public enum BubbleType { - /** Chat is from a notification. */ - TYPE_CHAT, - /** Notes are from the note taking API. */ - TYPE_NOTE, - /** Shortcuts from bubble anything, based on {@link ShortcutInfo}. */ - TYPE_SHORTCUT, - /** Apps are from bubble anything. */ - TYPE_APP, - } - - private final BubbleType mType; + /** Whether the bubble is an app bubble. */ + private final boolean mIsAppBubble; private final String mKey; @Nullable private final String mGroupKey; @Nullable private final LocusId mLocusId; - @Nullable - private IBinder mClientToken; private final Executor mMainExecutor; - private final Executor mBgExecutor; private long mLastUpdated; private long mLastAccessed; @@ -135,7 +110,6 @@ public class Bubble implements BubbleViewProvider { @Nullable private BubbleTaskView mBubbleTaskView; - @Nullable private BubbleViewInfoTask mInflationTask; private boolean mInflateSynchronously; private boolean mPendingIntentCanceled; @@ -201,10 +175,10 @@ public class Bubble implements BubbleViewProvider { * that bubble being added back to the stack anyways. */ @Nullable - private PendingIntent mPendingIntent; - private boolean mPendingIntentActive; + private PendingIntent mIntent; + private boolean mIntentActive; @Nullable - private PendingIntent.CancelListener mPendingIntentCancelListener; + private PendingIntent.CancelListener mIntentCancelListener; /** * Sent when the bubble & notification are no longer visible to the user (i.e. no @@ -214,27 +188,21 @@ public class Bubble implements BubbleViewProvider { private PendingIntent mDeleteIntent; /** - * Used for app & note bubbles. + * Used only for a special bubble in the stack that has {@link #mIsAppBubble} set to true. + * There can only be one of these bubbles in the stack and this intent will be populated for + * that bubble. */ @Nullable - private Intent mIntent; - - /** - * Set while preparing a transition for animation. Several steps are needed before animation - * starts, so this is used to detect and route associated events to the coordinating transition. - */ - @Nullable - private BubbleTransitions.BubbleTransition mPreparingTransition; + private Intent mAppIntent; /** * Create a bubble with limited information based on given {@link ShortcutInfo}. * Note: Currently this is only being used when the bubble is persisted to disk. */ + @VisibleForTesting(visibility = PRIVATE) public Bubble(@NonNull final String key, @NonNull final ShortcutInfo shortcutInfo, final int desiredHeight, final int desiredHeightResId, @Nullable final String title, - int taskId, @Nullable final String locus, boolean isDismissable, - @ShellMainThread Executor mainExecutor, - @ShellBackgroundThread Executor bgExecutor, + int taskId, @Nullable final String locus, boolean isDismissable, Executor mainExecutor, final Bubbles.BubbleMetadataFlagListener listener) { Objects.requireNonNull(key); Objects.requireNonNull(shortcutInfo); @@ -253,163 +221,46 @@ public class Bubble implements BubbleViewProvider { mTitle = title; mShowBubbleUpdateDot = false; mMainExecutor = mainExecutor; - mBgExecutor = bgExecutor; mTaskId = taskId; mBubbleMetadataFlagListener = listener; - // TODO (b/394085999) read/write type to xml - mType = BubbleType.TYPE_CHAT; + mIsAppBubble = false; } private Bubble( Intent intent, UserHandle user, @Nullable Icon icon, - BubbleType type, + boolean isAppBubble, String key, - @ShellMainThread Executor mainExecutor, - @ShellBackgroundThread Executor bgExecutor) { + Executor mainExecutor) { mGroupKey = null; mLocusId = null; mFlags = 0; mUser = user; mIcon = icon; - mType = type; + mIsAppBubble = isAppBubble; mKey = key; mShowBubbleUpdateDot = false; mMainExecutor = mainExecutor; - mBgExecutor = bgExecutor; mTaskId = INVALID_TASK_ID; - mIntent = intent; + mAppIntent = intent; mDesiredHeight = Integer.MAX_VALUE; mPackageName = intent.getPackage(); + } - private Bubble( - PendingIntent intent, - UserHandle user, - String key, - @ShellMainThread Executor mainExecutor, - @ShellBackgroundThread Executor bgExecutor) { - mGroupKey = null; - mLocusId = null; - mFlags = 0; - mUser = user; - mIcon = null; - mType = BubbleType.TYPE_APP; - mKey = key; - mShowBubbleUpdateDot = false; - mMainExecutor = mainExecutor; - mBgExecutor = bgExecutor; - mTaskId = INVALID_TASK_ID; - mPendingIntent = intent; - mIntent = null; - mDesiredHeight = Integer.MAX_VALUE; - mPackageName = ComponentUtils.getPackageName(intent); - } - - private Bubble(ShortcutInfo info, @ShellMainThread Executor mainExecutor, - @ShellBackgroundThread Executor bgExecutor) { - mGroupKey = null; - mLocusId = null; - mFlags = 0; - mUser = info.getUserHandle(); - mIcon = info.getIcon(); - mType = BubbleType.TYPE_SHORTCUT; - mKey = getBubbleKeyForShortcut(info); - mShowBubbleUpdateDot = false; - mMainExecutor = mainExecutor; - mBgExecutor = bgExecutor; - mTaskId = INVALID_TASK_ID; - mIntent = null; - mDesiredHeight = Integer.MAX_VALUE; - mPackageName = info.getPackage(); - mShortcutInfo = info; - } - - private Bubble( - TaskInfo task, + /** Creates an app bubble. */ + public static Bubble createAppBubble( + Intent intent, UserHandle user, @Nullable Icon icon, - String key, - @ShellMainThread Executor mainExecutor, - @ShellBackgroundThread Executor bgExecutor) { - mGroupKey = null; - mLocusId = null; - mFlags = 0; - mUser = user; - mIcon = icon; - mType = BubbleType.TYPE_APP; - mKey = key; - mShowBubbleUpdateDot = false; - mMainExecutor = mainExecutor; - mBgExecutor = bgExecutor; - mTaskId = task.taskId; - mIntent = task.baseIntent; - mDesiredHeight = Integer.MAX_VALUE; - mPackageName = task.baseActivity.getPackageName(); - } - - /** Creates a note taking bubble. */ - public static Bubble createNotesBubble(Intent intent, UserHandle user, @Nullable Icon icon, - @ShellMainThread Executor mainExecutor, @ShellBackgroundThread Executor bgExecutor) { + Executor mainExecutor) { return new Bubble(intent, user, icon, - BubbleType.TYPE_NOTE, - getNoteBubbleKeyForApp(intent.getPackage(), user), - mainExecutor, bgExecutor); - } - - /** Creates an app bubble. */ - public static Bubble createAppBubble(PendingIntent intent, UserHandle user, - @ShellMainThread Executor mainExecutor, @ShellBackgroundThread Executor bgExecutor) { - return new Bubble(intent, - user, - /* key= */ getAppBubbleKeyForApp(ComponentUtils.getPackageName(intent), user), - mainExecutor, bgExecutor); - } - - /** Creates an app bubble. */ - public static Bubble createAppBubble(Intent intent, UserHandle user, @Nullable Icon icon, - @ShellMainThread Executor mainExecutor, @ShellBackgroundThread Executor bgExecutor) { - return new Bubble(intent, - user, - icon, - BubbleType.TYPE_APP, - getAppBubbleKeyForApp(ComponentUtils.getPackageName(intent), user), - mainExecutor, bgExecutor); - } - - /** Creates an app bubble that can be controlled by a client. */ - public static Bubble createClientControlledAppBubble(Intent intent, UserHandle user, - @Nullable Icon icon, IBinder clientToken, @ShellMainThread Executor mainExecutor, - @ShellBackgroundThread Executor bgExecutor) { - Bubble b = new Bubble(intent, - user, - icon, - // TODO(b/407149510): Consider using a dedicated type. - BubbleType.TYPE_APP, - getAppBubbleKeyForApp(ComponentUtils.getPackageName(intent), user), - mainExecutor, bgExecutor); - b.mClientToken = clientToken; - return b; - } - - /** Creates a task bubble. */ - public static Bubble createTaskBubble(TaskInfo info, UserHandle user, @Nullable Icon icon, - @ShellMainThread Executor mainExecutor, @ShellBackgroundThread Executor bgExecutor) { - return new Bubble(info, - user, - icon, - getAppBubbleKeyForTask(info), - mainExecutor, bgExecutor); - } - - /** Creates a shortcut bubble. */ - public static Bubble createShortcutBubble( - ShortcutInfo info, - @ShellMainThread Executor mainExecutor, @ShellBackgroundThread Executor bgExecutor) { - return new Bubble(info, mainExecutor, bgExecutor); + /* isAppBubble= */ true, + /* key= */ getAppBubbleKeyForApp(intent.getPackage(), user), + mainExecutor); } /** @@ -422,56 +273,25 @@ public class Bubble implements BubbleViewProvider { return KEY_APP_BUBBLE + ":" + user.getIdentifier() + ":" + packageName; } - /** - * Returns the key for a note bubble from an app with package name, {@code packageName} on an - * Android user, {@code user}. - */ - public static String getNoteBubbleKeyForApp(String packageName, UserHandle user) { - Objects.requireNonNull(packageName); - Objects.requireNonNull(user); - return KEY_NOTE_BUBBLE + ":" + user.getIdentifier() + ":" + packageName; - } - - /** - * Returns the key for a shortcut bubble using {@code packageName}, {@code user}, and the - * {@code shortcutInfo} id. - */ - public static String getBubbleKeyForShortcut(ShortcutInfo info) { - return info.getPackage() + ":" + info.getUserId() + ":" + info.getId(); - } - - /** - * Returns the key for an app bubble from an app with package name, {@code packageName} on an - * Android user, {@code user}. - */ - public static String getAppBubbleKeyForTask(TaskInfo taskInfo) { - Objects.requireNonNull(taskInfo); - return KEY_APP_BUBBLE + ":" + taskInfo.taskId; - } - - /** - * Creates a chat bubble based on a notification (contents of {@link BubbleEntry}. - */ @VisibleForTesting(visibility = PRIVATE) public Bubble(@NonNull final BubbleEntry entry, final Bubbles.BubbleMetadataFlagListener listener, final Bubbles.PendingIntentCanceledListener intentCancelListener, - @ShellMainThread Executor mainExecutor, @ShellBackgroundThread Executor bgExecutor) { - mType = BubbleType.TYPE_CHAT; + Executor mainExecutor) { + mIsAppBubble = false; mKey = entry.getKey(); mGroupKey = entry.getGroupKey(); mLocusId = entry.getLocusId(); mBubbleMetadataFlagListener = listener; - mPendingIntentCancelListener = intent -> { - if (mPendingIntent != null) { - mPendingIntent.unregisterCancelListener(mPendingIntentCancelListener); + mIntentCancelListener = intent -> { + if (mIntent != null) { + mIntent.unregisterCancelListener(mIntentCancelListener); } mainExecutor.execute(() -> { intentCancelListener.onPendingIntentCanceled(this); }); }; mMainExecutor = mainExecutor; - mBgExecutor = bgExecutor; mTaskId = INVALID_TASK_ID; setEntry(entry); } @@ -486,23 +306,7 @@ public class Bubble implements BubbleViewProvider { getPackageName(), getTitle(), getAppName(), - isImportantConversation(), - showAppBadge(), - getParcelableFlyoutMessage()); - } - - /** Creates a parcelable flyout message to send to launcher. */ - @Nullable - private ParcelableFlyoutMessage getParcelableFlyoutMessage() { - if (mFlyoutMessage == null) { - return null; - } - // the icon is only used in group chats - Icon icon = mFlyoutMessage.isGroupChat ? mFlyoutMessage.senderIcon : null; - String title = - mFlyoutMessage.senderName == null ? null : mFlyoutMessage.senderName.toString(); - String message = mFlyoutMessage.message == null ? null : mFlyoutMessage.message.toString(); - return new ParcelableFlyoutMessage(icon, title, message); + isImportantConversation()); } @Override @@ -594,11 +398,6 @@ public class Bubble implements BubbleViewProvider { return mTitle; } - @Nullable - public IBinder getClientToken() { - return mClientToken; - } - /** * Returns the existing {@link #mBubbleTaskView} if it's not {@code null}. Otherwise a new * instance of {@link BubbleTaskView} is created. @@ -610,10 +409,6 @@ public class Bubble implements BubbleViewProvider { return mBubbleTaskView; } - public TaskView getTaskView() { - return mBubbleTaskView.getTaskView(); - } - /** * @return the ShortcutInfo id if it exists, or the metadata shortcut id otherwise. */ @@ -631,11 +426,6 @@ public class Bubble implements BubbleViewProvider { return (mMetadataShortcutId != null && !mMetadataShortcutId.isEmpty()); } - @Nullable - public BubbleTransitions.BubbleTransition getPreparingTransition() { - return mPreparingTransition; - } - /** * Call this to clean up the task for the bubble. Ensure this is always called when done with * the bubble. @@ -656,19 +446,17 @@ public class Bubble implements BubbleViewProvider { if (cleanupTaskView) { cleanupTaskView(); } - if (mPendingIntent != null) { - mPendingIntent.unregisterCancelListener(mPendingIntentCancelListener); + if (mIntent != null) { + mIntent.unregisterCancelListener(mIntentCancelListener); } - mPendingIntentActive = false; + mIntentActive = false; } - /** Cleans-up the taskview associated with this bubble (possibly removing the task from wm) */ - public void cleanupTaskView() { + private void cleanupTaskView() { if (mBubbleTaskView != null) { mBubbleTaskView.cleanup(); mBubbleTaskView = null; } - mTaskId = INVALID_TASK_ID; } /** @@ -685,7 +473,7 @@ public class Bubble implements BubbleViewProvider { * <p>If we're switching between bar and floating modes, pass {@code false} on * {@code cleanupTaskView} to avoid recreating it in the new mode. */ - public void cleanupViews(boolean cleanupTaskView) { + void cleanupViews(boolean cleanupTaskView) { cleanupExpandedView(cleanupTaskView); mIconView = null; } @@ -707,21 +495,6 @@ public class Bubble implements BubbleViewProvider { mInflateSynchronously = inflateSynchronously; } - /** - * Sets the current bubble-transition that is coordinating a change in this bubble. - */ - @VisibleForTesting - public void setPreparingTransition(BubbleTransitions.BubbleTransition transit) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "setPreparingTransition: transit=%s", transit); - mPreparingTransition = transit; - } - - /** Whether this bubble is currently converting to bubble bar. */ - public boolean isConvertingToBar() { - return getPreparingTransition() != null - && getPreparingTransition().isConvertingBubbleToBar(); - } - /** * Sets whether this bubble is considered text changed. This method is purely for * testing. @@ -751,11 +524,9 @@ public class Bubble implements BubbleViewProvider { @Nullable BubbleStackView stackView, @Nullable BubbleBarLayerView layerView, BubbleIconFactory iconFactory, - BubbleAppInfoProvider appInfoProvider, boolean skipInflation) { - ProtoLog.v(WM_SHELL_BUBBLES, "Inflate bubble key=%s", getKey()); - if (mInflationTask != null && !mInflationTask.isFinished()) { - mInflationTask.cancel(); + if (isBubbleLoading()) { + mInflationTask.cancel(true /* mayInterruptIfRunning */); } mInflationTask = new BubbleViewInfoTask(this, context, @@ -765,18 +536,20 @@ public class Bubble implements BubbleViewProvider { stackView, layerView, iconFactory, - appInfoProvider, skipInflation, callback, - mMainExecutor, - mBgExecutor); + mMainExecutor); if (mInflateSynchronously) { - mInflationTask.startSync(); + mInflationTask.onPostExecute(mInflationTask.doInBackground()); } else { - mInflationTask.start(); + mInflationTask.execute(); } } + private boolean isBubbleLoading() { + return mInflationTask != null && mInflationTask.getStatus() != FINISHED; + } + boolean isInflated() { return (mIconView != null && mExpandedView != null) || mBubbleBarExpandedView != null; } @@ -785,7 +558,7 @@ public class Bubble implements BubbleViewProvider { if (mInflationTask == null) { return; } - mInflationTask.cancel(); + mInflationTask.cancel(true /* mayInterruptIfRunning */); } void setViewInfo(BubbleViewInfoTask.BubbleViewInfo info) { @@ -866,19 +639,19 @@ public class Bubble implements BubbleViewProvider { mDesiredHeightResId = entry.getBubbleMetadata().getDesiredHeightResId(); mIcon = entry.getBubbleMetadata().getIcon(); - if (!mPendingIntentActive || mPendingIntent == null) { - if (mPendingIntent != null) { - mPendingIntent.unregisterCancelListener(mPendingIntentCancelListener); + if (!mIntentActive || mIntent == null) { + if (mIntent != null) { + mIntent.unregisterCancelListener(mIntentCancelListener); } - mPendingIntent = entry.getBubbleMetadata().getIntent(); - if (mPendingIntent != null) { - mPendingIntent.registerCancelListener(mPendingIntentCancelListener); + mIntent = entry.getBubbleMetadata().getIntent(); + if (mIntent != null) { + mIntent.registerCancelListener(mIntentCancelListener); } - } else if (mPendingIntent != null && entry.getBubbleMetadata().getIntent() == null) { + } else if (mIntent != null && entry.getBubbleMetadata().getIntent() == null) { // Was an intent bubble now it's a shortcut bubble... still unregister the listener - mPendingIntent.unregisterCancelListener(mPendingIntentCancelListener); - mPendingIntentActive = false; - mPendingIntent = null; + mIntent.unregisterCancelListener(mIntentCancelListener); + mIntentActive = false; + mIntent = null; } mDeleteIntent = entry.getBubbleMetadata().getDeleteIntent(); } @@ -918,15 +691,12 @@ public class Bubble implements BubbleViewProvider { * Sets if the intent used for this bubble is currently active (i.e. populating an * expanded view, expanded or not). */ - void setPendingIntentActive() { - mPendingIntentActive = true; + void setIntentActive() { + mIntentActive = true; } - /** - * Whether the pending intent of this bubble is active (i.e. has been sent). - */ - boolean isPendingIntentActive() { - return mPendingIntentActive; + boolean isIntentActive() { + return mIntentActive; } public InstanceId getInstanceId() { @@ -998,6 +768,13 @@ public class Bubble implements BubbleViewProvider { return mIsImportantConversation; } + /** + * Whether this bubble is conversation + */ + public boolean isConversation() { + return null != mShortcutInfo; + } + /** * Sets whether this notification should be suppressed in the shade. */ @@ -1079,15 +856,6 @@ public class Bubble implements BubbleViewProvider { return mFlyoutMessage; } - /** - * Sets the flyout message directly. Only used from {@link BubbleMultitaskingDelegate} to show - * fly-outs for special app-controlled bubbles. Normally the messages should come from - * notifications instead, so this shouldn't be used in most cases. - */ - void setFlyoutMessage(FlyoutMessage newMessage) { - mFlyoutMessage = newMessage; - } - int getRawDesiredHeight() { return mDesiredHeight; } @@ -1115,70 +883,26 @@ public class Bubble implements BubbleViewProvider { } } - /** - * Returns the pending intent used to populate the bubble. - */ @Nullable - PendingIntent getPendingIntent() { - return mPendingIntent; + PendingIntent getBubbleIntent() { + return mIntent; } - /** - * Whether an app badge should be shown for this bubble. - */ - public boolean showAppBadge() { - return isChat() || isShortcut() || isNote(); - } - - /** - * Returns the pending intent to send when a bubble is dismissed (set via the notification API). - */ @Nullable PendingIntent getDeleteIntent() { return mDeleteIntent; } - /** - * Returns the intent used to populate the bubble. - */ @Nullable - public Intent getIntent() { - return mIntent; + Intent getAppBubbleIntent() { + return mAppIntent; } /** - * Sets the intent used to populate the bubble. + * Returns whether this bubble is from an app versus a notification. */ - void setIntent(Intent intent) { - mIntent = intent; - } - - /** - * Returns whether this bubble is a conversation from the notification API. - */ - public boolean isChat() { - return mType == BubbleType.TYPE_CHAT; - } - - /** - * Returns whether this bubble is a note from the note taking API. - */ - public boolean isNote() { - return mType == BubbleType.TYPE_NOTE; - } - - /** - * Returns whether this bubble is a shortcut. - */ - public boolean isShortcut() { - return mType == BubbleType.TYPE_SHORTCUT; - } - - /** - * Returns whether this bubble is an app. - */ - public boolean isApp() { - return mType == BubbleType.TYPE_APP; + public boolean isAppBubble() { + return mIsAppBubble; } /** Creates open app settings intent */ @@ -1296,14 +1020,9 @@ public class Bubble implements BubbleViewProvider { pw.print(" autoExpand: "); pw.println(shouldAutoExpand()); pw.print(" isDismissable: "); pw.println(mIsDismissable); pw.println(" bubbleMetadataFlagListener null?: " + (mBubbleMetadataFlagListener == null)); - pw.println(" preparingTransition null?: " + (mPreparingTransition == null)); - pw.println(" isConvertingToBar: " + isConvertingToBar()); if (mExpandedView != null) { mExpandedView.dump(pw, " "); } - if (mBubbleBarExpandedView != null) { - mBubbleBarExpandedView.dump(pw, " "); - } } @Override diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleController.java b/wmshell/src/com/android/wm/shell/bubbles/BubbleController.java index d6877ca8a6..33474091dd 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleController.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleController.java @@ -16,11 +16,9 @@ package com.android.wm.shell.bubbles; -import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; import static android.service.notification.NotificationListenerService.NOTIFICATION_CHANNEL_OR_GROUP_DELETED; import static android.service.notification.NotificationListenerService.NOTIFICATION_CHANNEL_OR_GROUP_UPDATED; import static android.service.notification.NotificationListenerService.REASON_CANCEL; -import static android.view.Display.INVALID_DISPLAY; import static android.view.View.INVISIBLE; import static android.view.View.VISIBLE; import static android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS; @@ -37,23 +35,20 @@ import static com.android.wm.shell.bubbles.Bubbles.DISMISS_PACKAGE_REMOVED; import static com.android.wm.shell.bubbles.Bubbles.DISMISS_SHORTCUT_REMOVED; import static com.android.wm.shell.bubbles.Bubbles.DISMISS_USER_CHANGED; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES_NOISY; -import static com.android.wm.shell.transition.Transitions.TRANSIT_BUBBLE_CONVERT_FLOATING_TO_BAR; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_BUBBLES; import android.annotation.BinderThread; import android.annotation.NonNull; import android.annotation.UserIdInt; import android.app.ActivityManager; -import android.app.ActivityOptions; -import android.app.ActivityTaskManager; import android.app.Notification; import android.app.NotificationChannel; import android.app.PendingIntent; -import android.app.TaskInfo; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; +import android.content.pm.ActivityInfo; import android.content.pm.LauncherApps; import android.content.pm.PackageManager; import android.content.pm.ShortcutInfo; @@ -66,7 +61,6 @@ import android.graphics.drawable.Icon; import android.os.Binder; import android.os.Bundle; import android.os.Handler; -import android.os.IBinder; import android.os.RemoteException; import android.os.ServiceManager; import android.os.UserHandle; @@ -75,7 +69,6 @@ import android.service.notification.NotificationListenerService; import android.service.notification.NotificationListenerService.RankingMap; import android.util.Log; import android.util.Pair; -import android.util.Slog; import android.util.SparseArray; import android.view.IWindowManager; import android.view.SurfaceControl; @@ -84,66 +77,50 @@ import android.view.ViewGroup; import android.view.ViewRootImpl; import android.view.WindowInsets; import android.view.WindowManager; -import android.window.IMultitaskingController; -import android.window.IMultitaskingControllerCallback; import android.window.ScreenCapture; import android.window.ScreenCapture.SynchronousScreenCaptureListener; -import android.window.TaskOrganizer; -import android.window.TransitionInfo; -import android.window.WindowContainerToken; -import android.window.WindowContainerTransaction; import androidx.annotation.MainThread; import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.statusbar.IStatusBarService; import com.android.internal.util.CollectionUtils; import com.android.launcher3.icons.BubbleIconFactory; import com.android.wm.shell.Flags; import com.android.wm.shell.R; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.bubbles.appinfo.BubbleAppInfoProvider; +import com.android.wm.shell.WindowManagerShellWrapper; import com.android.wm.shell.bubbles.bar.BubbleBarLayerView; +import com.android.wm.shell.bubbles.properties.BubbleProperties; import com.android.wm.shell.bubbles.shortcut.BubbleShortcutHelper; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayImeController; -import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.ExternalInterfaceBinder; import com.android.wm.shell.common.FloatingContentCoordinator; -import com.android.wm.shell.common.HomeIntentProvider; -import com.android.wm.shell.common.ImeListener; import com.android.wm.shell.common.RemoteCallable; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SingleInstanceRemoteListener; import com.android.wm.shell.common.SyncTransactionQueue; +import com.android.wm.shell.common.TaskStackListenerCallback; import com.android.wm.shell.common.TaskStackListenerImpl; +import com.android.wm.shell.common.bubbles.BubbleBarLocation; +import com.android.wm.shell.common.bubbles.BubbleBarUpdate; import com.android.wm.shell.draganddrop.DragAndDropController; import com.android.wm.shell.onehanded.OneHandedController; import com.android.wm.shell.onehanded.OneHandedTransitionCallback; +import com.android.wm.shell.pip.PinnedStackListenerForwarder; import com.android.wm.shell.shared.annotations.ShellBackgroundThread; import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.shared.bubbles.BubbleBarLocation; -import com.android.wm.shell.shared.bubbles.BubbleBarLocation.UpdateSource; -import com.android.wm.shell.shared.bubbles.BubbleBarUpdate; -import com.android.wm.shell.shared.bubbles.BubbleDropTargetBoundsProvider; -import com.android.wm.shell.shared.bubbles.ContextUtils; -import com.android.wm.shell.shared.bubbles.DeviceConfig; -import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.sysui.ConfigurationChangeListener; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.taskview.TaskView; -import com.android.wm.shell.taskview.TaskViewController; import com.android.wm.shell.taskview.TaskViewTaskController; import com.android.wm.shell.taskview.TaskViewTransitions; import com.android.wm.shell.transition.Transitions; -import dagger.Lazy; - import java.io.PrintWriter; import java.util.ArrayList; import java.util.HashMap; @@ -165,8 +142,7 @@ import java.util.function.IntConsumer; * The controller manages addition, removal, and visible state of bubbles on screen. */ public class BubbleController implements ConfigurationChangeListener, - RemoteCallable<BubbleController>, Bubbles.SysuiProxy.Provider, - BubbleTaskUnfoldTransitionMerger { + RemoteCallable<BubbleController>, Bubbles.SysuiProxy.Provider { private static final String TAG = TAG_WITH_CLASS_NAME ? "BubbleController" : TAG_BUBBLES; @@ -207,8 +183,7 @@ public class BubbleController implements ConfigurationChangeListener, @Nullable private final BubbleStackView.SurfaceSynchronizer mSurfaceSynchronizer; private final FloatingContentCoordinator mFloatingContentCoordinator; private final BubbleDataRepository mDataRepository; - private final DisplayInsetsController mDisplayInsetsController; - private final DisplayImeController mDisplayImeController; + private final WindowManagerShellWrapper mWindowManagerShellWrapper; private final UserManager mUserManager; private final LauncherApps mLauncherApps; private final IStatusBarService mBarService; @@ -216,17 +191,15 @@ public class BubbleController implements ConfigurationChangeListener, private final TaskStackListenerImpl mTaskStackListener; private final ShellTaskOrganizer mTaskOrganizer; private final DisplayController mDisplayController; - private final TaskViewController mTaskViewController; + private final TaskViewTransitions mTaskViewTransitions; private final Transitions mTransitions; + private final SyncTransactionQueue mSyncQueue; private final ShellController mShellController; private final ShellCommandHandler mShellCommandHandler; private final IWindowManager mWmService; + private final BubbleProperties mBubbleProperties; private final BubbleTaskViewFactory mBubbleTaskViewFactory; private final BubbleExpandedViewManager mExpandedViewManager; - private final ResizabilityChecker mResizabilityChecker; - private final HomeIntentProvider mHomeIntentProvider; - private final BubbleAppInfoProvider mAppInfoProvider; - private final Lazy<Optional<SplitScreenController>> mSplitScreenController; // Used to post to main UI thread private final ShellExecutor mMainExecutor; @@ -237,13 +210,10 @@ public class BubbleController implements ConfigurationChangeListener, private final BubbleData mBubbleData; @Nullable private BubbleStackView mStackView; @Nullable private BubbleBarLayerView mLayerView; - @Nullable private ActivityManager.RunningTaskInfo mAppBubbleRootTaskInfo; private BubbleIconFactory mBubbleIconFactory; private final BubblePositioner mBubblePositioner; private Bubbles.SysuiProxy mSysuiProxy; - @Nullable private Runnable mOnImeHidden; - // Tracks the id of the current (foreground) user. private int mCurrentUserId; // Current profiles of the user (e.g. user with a workprofile) @@ -302,29 +272,12 @@ public class BubbleController implements ConfigurationChangeListener, private final Optional<OneHandedController> mOneHandedOptional; /** Drag and drop controller to register listener for onDragStarted. */ private final DragAndDropController mDragAndDropController; - /** - * Used to send bubble events to launcher. - * Set when taskbar is created in launcher and bubble bar gets initialized. - * Can be cleared during Launcher lifecycle changes, for example when taskbar gets recreated - * during rotation. - */ - @Nullable + /** Used to send bubble events to launcher. */ private Bubbles.BubbleStateListener mBubbleStateListener; - /** True when launcher can show the bubble bar. */ - private boolean mLauncherHasBubbleBar; - /** - * Used to track previous navigation mode to detect switch to buttons navigation. Set to - * true to switch the bubble bar to the opposite side for 3 nav buttons mode on device boot. - */ - private boolean mIsPrevNavModeGestures = true; + /** Used to send updates to the views from {@link #mBubbleDataListener}. */ private BubbleViewCallback mBubbleViewCallback; - private final BubbleTransitions mBubbleTransitions; - - // Experimental listener for app requests for bubble actions. - private BubbleMultitaskingDelegate mBubbleMultitaskingDelegate; - public BubbleController(Context context, ShellInit shellInit, ShellCommandHandler shellCommandHandler, @@ -333,11 +286,9 @@ public class BubbleController implements ConfigurationChangeListener, @Nullable BubbleStackView.SurfaceSynchronizer synchronizer, FloatingContentCoordinator floatingContentCoordinator, BubbleDataRepository dataRepository, - BubbleTransitions bubbleTransitions, @Nullable IStatusBarService statusBarService, WindowManager windowManager, - DisplayInsetsController displayInsetsController, - DisplayImeController displayImeController, + WindowManagerShellWrapper windowManagerShellWrapper, UserManager userManager, LauncherApps launcherApps, BubbleLogger bubbleLogger, @@ -350,14 +301,11 @@ public class BubbleController implements ConfigurationChangeListener, @ShellMainThread ShellExecutor mainExecutor, @ShellMainThread Handler mainHandler, @ShellBackgroundThread ShellExecutor bgExecutor, - @NonNull TaskViewTransitions taskViewTransitions, + TaskViewTransitions taskViewTransitions, Transitions transitions, SyncTransactionQueue syncQueue, IWindowManager wmService, - ResizabilityChecker resizabilityChecker, - HomeIntentProvider homeIntentProvider, - BubbleAppInfoProvider appInfoProvider, - Lazy<Optional<SplitScreenController>> splitScreenController) { + BubbleProperties bubbleProperties) { mContext = context; mShellCommandHandler = shellCommandHandler; mShellController = shellController; @@ -367,8 +315,7 @@ public class BubbleController implements ConfigurationChangeListener, ServiceManager.getService(Context.STATUS_BAR_SERVICE)) : statusBarService; mWindowManager = windowManager; - mDisplayInsetsController = displayInsetsController; - mDisplayImeController = displayImeController; + mWindowManagerShellWrapper = windowManagerShellWrapper; mUserManager = userManager; mFloatingContentCoordinator = floatingContentCoordinator; mDataRepository = dataRepository; @@ -391,29 +338,24 @@ public class BubbleController implements ConfigurationChangeListener, context.getResources().getDimensionPixelSize( com.android.internal.R.dimen.importance_ring_stroke_width)); mDisplayController = displayController; - mTaskViewController = new BubbleTaskViewController(taskViewTransitions); + mTaskViewTransitions = taskViewTransitions; mTransitions = transitions; mOneHandedOptional = oneHandedOptional; mDragAndDropController = dragAndDropController; + mSyncQueue = syncQueue; mWmService = wmService; - mBubbleTransitions = bubbleTransitions; - mBubbleTransitions.setBubbleController(this); + mBubbleProperties = bubbleProperties; + shellInit.addInitCallback(this::onInit, this); mBubbleTaskViewFactory = new BubbleTaskViewFactory() { @Override public BubbleTaskView create() { TaskViewTaskController taskViewTaskController = new TaskViewTaskController( - context, organizer, mTaskViewController, syncQueue); - TaskView taskView = new TaskView(context, mTaskViewController, - taskViewTaskController); + context, organizer, taskViewTransitions, syncQueue); + TaskView taskView = new TaskView(context, taskViewTaskController); return new BubbleTaskView(taskView, mainExecutor); } }; mExpandedViewManager = BubbleExpandedViewManager.fromBubbleController(this); - mResizabilityChecker = resizabilityChecker; - mHomeIntentProvider = homeIntentProvider; - mAppInfoProvider = appInfoProvider; - mSplitScreenController = splitScreenController; - shellInit.addInitCallback(this::onInit, this); } private void registerOneHandedState(OneHandedController oneHanded) { @@ -446,27 +388,23 @@ public class BubbleController implements ConfigurationChangeListener, mBubbleData.setListener(mBubbleDataListener); mBubbleData.setSuppressionChangedListener(this::onBubbleMetadataFlagChanged); mDataRepository.setSuppressionChangedListener(this::onBubbleMetadataFlagChanged); + mBubbleData.setPendingIntentCancelledListener(bubble -> { - if (bubble.getPendingIntent() == null) { + if (bubble.getBubbleIntent() == null) { return; } - if (bubble.isPendingIntentActive() - || mBubbleData.hasBubbleInStackWithKey(bubble.getKey())) { + if (bubble.isIntentActive() || mBubbleData.hasBubbleInStackWithKey(bubble.getKey())) { bubble.setPendingIntentCanceled(); return; } mMainExecutor.execute(() -> removeBubble(bubble.getKey(), DISMISS_INVALID_INTENT)); }); - BubblesImeListener bubblesImeListener = - new BubblesImeListener(mDisplayController, mContext.getDisplayId()); - // the insets controller is notified whenever the IME visibility changes whether the IME is - // requested by a bubbled task or non-bubbled task. in the latter case, we need to update - // the position of the stack to avoid overlapping with the IME. - mDisplayInsetsController.addInsetsChangedListener(mContext.getDisplayId(), - bubblesImeListener); - // the ime controller is notified when the IME is requested only by a bubbled task. - mDisplayImeController.addPositionProcessor(bubblesImeListener); + try { + mWindowManagerShellWrapper.addPinnedStackListener(new BubblesImeListener()); + } catch (RemoteException e) { + e.printStackTrace(); + } mBubbleData.setCurrentUserId(mCurrentUserId); @@ -511,11 +449,33 @@ public class BubbleController implements ConfigurationChangeListener, } }, mMainHandler); - mTransitions.registerObserver(new BubblesTransitionObserver(this, mBubbleData, - mBubbleTransitions.mTaskViewTransitions, mSplitScreenController)); + mTransitions.registerObserver(new BubblesTransitionObserver(this, mBubbleData)); - mTaskStackListener.addListener( - new BubbleTaskStackListener(this, mBubbleData, mSplitScreenController)); + mTaskStackListener.addListener(new TaskStackListenerCallback() { + @Override + public void onActivityRestartAttempt(ActivityManager.RunningTaskInfo task, + boolean homeTaskVisible, boolean clearedTask, boolean wasVisible) { + for (Bubble b : mBubbleData.getBubbles()) { + if (task.taskId == b.getTaskId()) { + ProtoLog.d(WM_SHELL_BUBBLES, + "onActivityRestartAttempt - taskId=%d selecting matching bubble=%s", + task.taskId, b.getKey()); + mBubbleData.setSelectedBubbleAndExpandStack(b); + return; + } + } + for (Bubble b : mBubbleData.getOverflowBubbles()) { + if (task.taskId == b.getTaskId()) { + ProtoLog.d(WM_SHELL_BUBBLES, "onActivityRestartAttempt - taskId=%d " + + "selecting matching overflow bubble=%s", + task.taskId, b.getKey()); + promoteBubbleFromOverflow(b); + mBubbleData.setExpanded(true); + return; + } + } + } + }); mDisplayController.addDisplayChangingController( (displayId, fromRotation, toRotation, newDisplayAreaInfo, t) -> { @@ -558,47 +518,9 @@ public class BubbleController implements ConfigurationChangeListener, } mShellController.addConfigurationChangeListener(this); - mShellController.addExternalInterface(IBubbles.DESCRIPTOR, + mShellController.addExternalInterface(KEY_EXTRA_SHELL_BUBBLES, this::createExternalInterface, this); mShellCommandHandler.addDumpCallback(this::dump, this); - - if (com.android.window.flags2.Flags.enableExperimentalBubblesController()) { - try { - final BubbleMultitaskingDelegate delegate = new BubbleMultitaskingDelegate( - this, mBubbleData, mCurrentUserId); - final IMultitaskingController mtController = ActivityTaskManager.getService() - .getWindowOrganizerController().getMultitaskingController(); - final IMultitaskingControllerCallback callback = - mtController.setMultitaskingDelegate(delegate); - mBubbleMultitaskingDelegate = delegate; - mBubbleMultitaskingDelegate.setControllerCallback(callback); - } catch (RemoteException e) { - Slog.e(TAG, "Failed to register Bubble multitasking delegate.", e); - } - } - - if (BubbleAnythingFlagHelper.enableRootTaskForBubble()) { - // Create a root-task in WM Core. The app bubble tasks will be positioned as the leaf - // tasks under this root-task. - // The app bubble should be dismissed with proper transition (such as need to convert - // it to fullscreen) if the bubble task is no longer be a leaf task under this leaf - // task. - mTaskOrganizer.createRootTask( - new TaskOrganizer.CreateRootTaskRequest() - .setName("Bubbles") - .setDisplayId(mContext.getDisplayId()) - .setWindowingMode(WINDOWING_MODE_MULTI_WINDOW), - new ShellTaskOrganizer.TaskListener() { - @Override - public void onTaskAppeared(ActivityManager.RunningTaskInfo taskInfo, - SurfaceControl leash) { - if (mAppBubbleRootTaskInfo != null) { - return; - } - mAppBubbleRootTaskInfo = taskInfo; - } - }); - } } private ExternalInterfaceBinder createExternalInterface() { @@ -619,10 +541,6 @@ public class BubbleController implements ConfigurationChangeListener, return mMainExecutor; } - ShellExecutor getBackgroundExecutor() { - return mBackgroundExecutor; - } - @Override public Context getContext() { return mContext; @@ -636,19 +554,16 @@ public class BubbleController implements ConfigurationChangeListener, /** * Sets a listener to be notified of bubble updates. This is used by launcher so that * it may render bubbles in itself. Only one listener is supported. + * + * <p>If bubble bar is supported, bubble views will be updated to switch to bar mode. */ - @VisibleForTesting public void registerBubbleStateListener(Bubbles.BubbleStateListener listener) { - final boolean bubbleBarAllowed = Flags.enableBubbleBar() - && (mBubblePositioner.isLargeScreen() || Flags.enableBubbleBarOnPhones()) - && listener != null; - if (bubbleBarAllowed) { + mBubbleProperties.refresh(); + if (canShowAsBubbleBar() && listener != null) { // Only set the listener if we can show the bubble bar. mBubbleStateListener = listener; - if (mLauncherHasBubbleBar) { - // Launcher is ready, send initial listener update. - sendInitialListenerUpdate(); - } + setUpBubbleViewsForMode(); + sendInitialListenerUpdate(); } else { mBubbleStateListener = null; } @@ -656,31 +571,14 @@ public class BubbleController implements ConfigurationChangeListener, /** * Unregisters the {@link Bubbles.BubbleStateListener}. + * + * <p>If there's an existing listener, then we're switching back to stack mode and bubble views + * will be updated accordingly. */ - @VisibleForTesting public void unregisterBubbleStateListener() { - mBubbleStateListener = null; - } - - /** - * Store whether Launcher can show bubbles in Bubble Bar. - * <p> - * If {@code launcherHasBubbleBar} is set to {@code true}, bubble views will be updated to - * switch to bar mode. If it is set to {@code false}, bubble views will be updated to switch - * to stack mode. - */ - @VisibleForTesting - public void setLauncherHasBubbleBar(boolean launcherHasBubbleBar) { - if (launcherHasBubbleBar == mLauncherHasBubbleBar) return; - mLauncherHasBubbleBar = launcherHasBubbleBar; - if (mLauncherHasBubbleBar) { - setUpBubbleViewsForMode(); - if (mBubbleStateListener != null) { - // Listener got set first, send it an initial update. - sendInitialListenerUpdate(); - } - } else { - unregisterBubbleStateListener(); + mBubbleProperties.refresh(); + if (mBubbleStateListener != null) { + mBubbleStateListener = null; setUpBubbleViewsForMode(); } } @@ -691,13 +589,6 @@ public class BubbleController implements ConfigurationChangeListener, */ private void sendInitialListenerUpdate() { if (mBubbleStateListener != null) { - boolean isCurrentNavModeGestures = ContextUtils.isGestureNavigationMode(mContext); - if (mIsPrevNavModeGestures && !isCurrentNavModeGestures) { - BubbleBarLocation bubbleBarLocation = ContextUtils.isRtl(mContext) - ? BubbleBarLocation.RIGHT : BubbleBarLocation.LEFT; - mBubblePositioner.setBubbleBarLocation(bubbleBarLocation); - } - mIsPrevNavModeGestures = isCurrentNavModeGestures; BubbleBarUpdate update = mBubbleData.getInitialStateForBubbleBar(); mBubbleStateListener.onBubbleStateChange(update); } @@ -706,18 +597,9 @@ public class BubbleController implements ConfigurationChangeListener, /** * Hides the current input method, wherever it may be focused, via InputMethodManagerInternal. */ - void hideCurrentInputMethod(@Nullable Runnable onImeHidden) { - mOnImeHidden = onImeHidden; + void hideCurrentInputMethod() { mBubblePositioner.setImeVisible(false /* visible */, 0 /* height */); int displayId = mWindowManager.getDefaultDisplay().getDisplayId(); - // if the device is locked we can't use the status bar service to hide the IME because - // the IME state is frozen and it will lead to internal IME state going out of sync. This - // will make the IME visible when the device is unlocked. Instead we use - // DisplayImeController directly to make sure the state is correct when the device unlocks. - if (isDeviceLocked()) { - mDisplayImeController.hideImeForBubblesWhenLocked(displayId); - return; - } try { mBarService.hideCurrentInputMethodForBubbles(displayId); } catch (RemoteException e) { @@ -725,14 +607,6 @@ public class BubbleController implements ConfigurationChangeListener, } } - /** - * Allows callers to reset runnable scheduled to run after IME is hidden by - * {@link #hideCurrentInputMethod(Runnable)} - */ - void clearImeHiddenRunnable() { - mOnImeHidden = null; - } - /** * Called when the status bar has become visible or invisible (either permanently or * temporarily). @@ -765,20 +639,8 @@ public class BubbleController implements ConfigurationChangeListener, ? mNotifEntryToExpandOnShadeUnlock.getKey() : "null")); mIsStatusBarShade = isShade; if (!mIsStatusBarShade && didChange) { - if (mBubbleData.isExpanded()) { - // If the IME is visible, hide it first and then collapse. - if (mBubblePositioner.isImeVisible()) { - hideCurrentInputMethod(this::collapseStack); - } else { - collapseStack(); - } - } else if (mOnImeHidden != null) { - // a request to collapse started before we're notified that the device is locking. - // we're currently waiting for the IME to collapse, before mOnImeHidden can be - // executed, which may not happen since the screen may already be off. hide the IME - // immediately now that we're locked and pass the same runnable so it can complete. - hideCurrentInputMethod(mOnImeHidden); - } + // Only collapse stack on change + collapseStack(); } if (mNotifEntryToExpandOnShadeUnlock != null) { @@ -815,9 +677,6 @@ public class BubbleController implements ConfigurationChangeListener, restoreBubbles(newUserId); mBubbleData.setCurrentUserId(newUserId); - if (mBubbleMultitaskingDelegate != null) { - mBubbleMultitaskingDelegate.setCurrentUserId(newUserId); - } } /** Called when the profiles for the current user change. **/ @@ -847,11 +706,14 @@ public class BubbleController implements ConfigurationChangeListener, } } - /** Whether bubbles would be shown with the bubble bar UI. */ + /** Whether bubbles are showing in the bubble bar. */ public boolean isShowingAsBubbleBar() { - return Flags.enableBubbleBar() - && (mBubblePositioner.isLargeScreen() || Flags.enableBubbleBarOnPhones()) - && mLauncherHasBubbleBar; + return canShowAsBubbleBar() && mBubbleStateListener != null; + } + + /** Whether the current configuration supports showing as bubble bar. */ + private boolean canShowAsBubbleBar() { + return mBubbleProperties.isBubbleBarEnabled() && mBubblePositioner.isLargeScreen(); } /** @@ -860,7 +722,7 @@ public class BubbleController implements ConfigurationChangeListener, */ @Nullable public BubbleBarLocation getBubbleBarLocation() { - if (isShowingAsBubbleBar()) { + if (canShowAsBubbleBar()) { return mBubblePositioner.getBubbleBarLocation(); } return null; @@ -869,103 +731,26 @@ public class BubbleController implements ConfigurationChangeListener, /** * Update bubble bar location and trigger and update to listeners */ - public void setBubbleBarLocation(BubbleBarLocation bubbleBarLocation, - @UpdateSource int source) { - if (isShowingAsBubbleBar()) { - updateExpandedViewForBubbleBarLocation(bubbleBarLocation, source); - if (mBubbleStateListener != null) { - BubbleBarUpdate bubbleBarUpdate = new BubbleBarUpdate(); - bubbleBarUpdate.bubbleBarLocation = bubbleBarLocation; - mBubbleStateListener.onBubbleStateChange(bubbleBarUpdate); - } - } - } - - private void updateExpandedViewForBubbleBarLocation(BubbleBarLocation bubbleBarLocation, - @UpdateSource int source) { - if (isShowingAsBubbleBar()) { - BubbleBarLocation previousLocation = mBubblePositioner.getBubbleBarLocation(); + public void setBubbleBarLocation(BubbleBarLocation bubbleBarLocation) { + if (canShowAsBubbleBar()) { mBubblePositioner.setBubbleBarLocation(bubbleBarLocation); - if (mLayerView != null && !mLayerView.isExpandedViewDragged()) { - mLayerView.updateExpandedView(); - } - logBubbleBarLocationIfChanged(bubbleBarLocation, previousLocation, source); - } - } - - private void logBubbleBarLocationIfChanged(BubbleBarLocation location, - BubbleBarLocation previous, - @UpdateSource int source) { - if (mLayerView == null) { - return; - } - boolean isRtl = mLayerView.isLayoutRtl(); - boolean wasLeft = previous.isOnLeft(isRtl); - boolean onLeft = location.isOnLeft(isRtl); - if (wasLeft == onLeft) { - // No changes, skip logging - return; - } - switch (source) { - case UpdateSource.DRAG_BAR: - case UpdateSource.A11Y_ACTION_BAR: - mLogger.log(onLeft ? BubbleLogger.Event.BUBBLE_BAR_MOVED_LEFT_DRAG_BAR - : BubbleLogger.Event.BUBBLE_BAR_MOVED_RIGHT_DRAG_BAR); - break; - case UpdateSource.DRAG_BUBBLE: - case UpdateSource.A11Y_ACTION_BUBBLE: - mLogger.log(onLeft ? BubbleLogger.Event.BUBBLE_BAR_MOVED_LEFT_DRAG_BUBBLE - : BubbleLogger.Event.BUBBLE_BAR_MOVED_RIGHT_DRAG_BUBBLE); - break; - case UpdateSource.DRAG_EXP_VIEW: - case UpdateSource.A11Y_ACTION_EXP_VIEW: - // TODO(b/349845968): move logging from BubbleBarLayerView to here - break; - case UpdateSource.APP_ICON_DRAG: - mLogger.log(onLeft ? BubbleLogger.Event.BUBBLE_BAR_MOVED_LEFT_APP_ICON_DROP - : BubbleLogger.Event.BUBBLE_BAR_MOVED_RIGHT_APP_ICON_DROP); - break; - case UpdateSource.DRAG_TASK: - mLogger.log(onLeft ? BubbleLogger.Event.BUBBLE_BAR_MOVED_LEFT_DRAG_TASK - : BubbleLogger.Event.BUBBLE_BAR_MOVED_RIGHT_DRAG_TASK); - break; + BubbleBarUpdate bubbleBarUpdate = new BubbleBarUpdate(); + bubbleBarUpdate.bubbleBarLocation = bubbleBarLocation; + mBubbleStateListener.onBubbleStateChange(bubbleBarUpdate); } } /** * Animate bubble bar to the given location. The location change is transient. It does not * update the state of the bubble bar. - * To update bubble bar pinned location, use - * {@link #setBubbleBarLocation(BubbleBarLocation, int)}. + * To update bubble bar pinned location, use {@link #setBubbleBarLocation(BubbleBarLocation)}. */ public void animateBubbleBarLocation(BubbleBarLocation bubbleBarLocation) { - if (isShowingAsBubbleBar() && mBubbleStateListener != null) { + if (canShowAsBubbleBar()) { mBubbleStateListener.animateBubbleBarLocation(bubbleBarLocation); } } - /** - * Show bubble bar pin view given location. - */ - public void showBubbleBarPinAtLocation(@Nullable BubbleBarLocation bubbleBarLocation) { - if (isShowingAsBubbleBar() && mBubbleStateListener != null) { - mBubbleStateListener.showBubbleBarPillowAt(bubbleBarLocation); - } - } - - private void showBubbleBarExpandedViewDropTarget(BubbleBarLocation bubbleBarLocation) { - ensureBubbleViewsAndWindowCreated(); - if (mLayerView != null) { - mLayerView.showBubbleBarExtendedViewDropTarget(bubbleBarLocation); - } - } - - private void hideBubbleBarExpandedViewDropTarget() { - if (mLayerView != null) { - mLayerView.hideBubbleBarExpandedViewDropTarget(); - } - } - /** Whether this userId belongs to the current user. */ private boolean isCurrentProfile(int userId) { return userId == UserHandle.USER_ALL @@ -998,17 +783,20 @@ public class BubbleController implements ConfigurationChangeListener, return mTaskOrganizer; } + SyncTransactionQueue getSyncTransactionQueue() { + return mSyncQueue; + } + + TaskViewTransitions getTaskViewTransitions() { + return mTaskViewTransitions; + } + /** Contains information to help position things on the screen. */ @VisibleForTesting public BubblePositioner getPositioner() { return mBubblePositioner; } - /** Provides bounds for drag zone drop targets */ - public BubbleDropTargetBoundsProvider getBubbleDropTargetBoundsProvider() { - return mBubblePositioner; - } - BubbleIconFactory getIconFactory() { return mBubbleIconFactory; } @@ -1033,7 +821,7 @@ public class BubbleController implements ConfigurationChangeListener, // window to show this in, but we use a separate code path. // TODO(b/273312602): consider foldables where we do need a stack view when folded if (mLayerView == null) { - mLayerView = new BubbleBarLayerView(mContext, this, mBubbleData, mLogger); + mLayerView = new BubbleBarLayerView(mContext, this, mBubbleData); mLayerView.setUnBubbleConversationCallback(mSysuiProxy::onUnbubbleConversation); } } else { @@ -1200,29 +988,11 @@ public class BubbleController implements ConfigurationChangeListener, || SYSTEM_DIALOG_REASON_GESTURE_NAV.equals(reason); if ((Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(action) && validReasonToCollapse) || Intent.ACTION_SCREEN_OFF.equals(action)) { - // if we're converting the bubble to a different mode, don't collapse since we want - // the bubble to stay expanded. - if (!isSelectedBubbleConvertingMode()) { - mMainExecutor.execute(() -> collapseStack()); - } + mMainExecutor.execute(() -> collapseStack()); } } }; - /** Returns the broadcast receiver registered for bubbles. */ - @VisibleForTesting - BroadcastReceiver getBroadcastReceiver() { - return mBroadcastReceiver; - } - - private boolean isSelectedBubbleConvertingMode() { - if (mBubbleData.getSelectedBubble() instanceof Bubble) { - Bubble bubble = (Bubble) mBubbleData.getSelectedBubble(); - return bubble.isConvertingToBar(); - } - return false; - } - private void registerShortcutBroadcastReceiver() { IntentFilter shortcutFilter = new IntentFilter(); shortcutFilter.addAction(BubbleShortcutHelper.ACTION_SHOW_BUBBLES); @@ -1321,7 +1091,6 @@ public class BubbleController implements ConfigurationChangeListener, mStackView, mLayerView, mBubbleIconFactory, - mAppInfoProvider, false /* skipInflation */); } for (Bubble b : mBubbleData.getOverflowBubbles()) { @@ -1333,19 +1102,14 @@ public class BubbleController implements ConfigurationChangeListener, mStackView, mLayerView, mBubbleIconFactory, - mAppInfoProvider, false /* skipInflation */); } } @Override public void onConfigurationChanged(Configuration newConfig) { - DeviceConfig deviceConfig = DeviceConfig.create(mContext, mWindowManager); if (mBubblePositioner != null) { - mBubblePositioner.update(deviceConfig); - } - if (mLayerView != null) { - mLayerView.update(deviceConfig); + mBubblePositioner.update(DeviceConfig.create(mContext, mWindowManager)); } if (mStackView != null && newConfig != null) { if (newConfig.densityDpi != mDensityDpi @@ -1410,6 +1174,7 @@ public class BubbleController implements ConfigurationChangeListener, * Whether or not there are bubbles present, regardless of them being visible on the * screen (e.g. if on AOD). */ + @VisibleForTesting public boolean hasBubbles() { if (mStackView == null && mLayerView == null) { return false; @@ -1417,21 +1182,6 @@ public class BubbleController implements ConfigurationChangeListener, return mBubbleData.hasBubbles() || mBubbleData.isShowingOverflow(); } - /** Returns whether the given task is a non-transient bubble. */ - public boolean hasStableBubbleForTask(int taskId) { - final Bubble bubble = mBubbleData.getBubbleInStackWithTaskId(taskId); - return bubble != null && bubble.getPreparingTransition() == null; - } - - /** Returns whether the given task should be an App Bubble */ - public boolean shouldBeAppBubble(@NonNull ActivityManager.RunningTaskInfo taskInfo) { - if (com.android.window.flags2.Flags.rootTaskForBubble()) { - return mAppBubbleRootTaskInfo != null - && taskInfo.parentTaskId == mAppBubbleRootTaskInfo.taskId; - } - return taskInfo.isAppBubble; - } - public boolean isStackExpanded() { return mBubbleData.isExpanded(); } @@ -1448,7 +1198,7 @@ public class BubbleController implements ConfigurationChangeListener, */ public void startBubbleDrag(String bubbleKey) { if (mBubbleData.getSelectedBubble() != null) { - collapseExpandedViewForBubbleBar(); + mBubbleBarViewCallback.expansionChanged(/* isExpanded = */ false); } if (mBubbleStateListener != null) { boolean overflow = BubbleOverflow.KEY.equals(bubbleKey); @@ -1466,14 +1216,13 @@ public class BubbleController implements ConfigurationChangeListener, * Will be called only when bubble bar is expanded. * * @param location location where bubble was released - * @param bubbleBarTopToScreenBottom the distance between the top coordinate of the bubble - * bar and the bottom of the screen after release + * @param topOnScreen top coordinate of the bubble bar on the screen after release */ - public void stopBubbleDrag(BubbleBarLocation location, int bubbleBarTopToScreenBottom) { + public void stopBubbleDrag(BubbleBarLocation location, int topOnScreen) { mBubblePositioner.setBubbleBarLocation(location); - mBubblePositioner.updateBubbleBarTopOnScreen(bubbleBarTopToScreenBottom); + mBubblePositioner.setBubbleBarTopOnScreen(topOnScreen); if (mBubbleData.getSelectedBubble() != null) { - showExpandedViewForBubbleBar(); + mBubbleBarViewCallback.expansionChanged(/* isExpanded = */ true); } } @@ -1481,29 +1230,13 @@ public class BubbleController implements ConfigurationChangeListener, * A bubble was dragged and is released in dismiss target in Launcher. * * @param bubbleKey key of the bubble being dragged to dismiss target - * @param timestamp the timestamp of the removal */ - public void dragBubbleToDismiss(String bubbleKey, long timestamp) { - final String selectedBubbleKey = mBubbleData.getSelectedBubbleKey(); - final Bubble bubbleToDismiss = mBubbleData.getAnyBubbleWithKey(bubbleKey); - if (bubbleToDismiss != null) { - mBubbleData.dismissBubbleWithKey( - bubbleKey, Bubbles.DISMISS_USER_GESTURE_FROM_LAUNCHER, timestamp); - mLogger.log(bubbleToDismiss, - BubbleLogger.Event.BUBBLE_BAR_BUBBLE_DISMISSED_DRAG_BUBBLE); - } - if (mBubbleData.hasBubbles()) { - // We still have bubbles, if we dragged an individual bubble to dismiss we were expanded - // so re-expand to whatever is selected. - showExpandedViewForBubbleBar(); - if (bubbleKey.equals(selectedBubbleKey)) { - // We dragged the selected bubble to dismiss, log switch event - if (mBubbleData.getSelectedBubble() instanceof Bubble) { - // Log only bubbles as overflow can't be dragged - mLogger.log((Bubble) mBubbleData.getSelectedBubble(), - BubbleLogger.Event.BUBBLE_BAR_BUBBLE_SWITCHED); - } - } + public void dragBubbleToDismiss(String bubbleKey) { + String selectedBubbleKey = mBubbleData.getSelectedBubbleKey(); + removeBubble(bubbleKey, Bubbles.DISMISS_USER_GESTURE); + if (selectedBubbleKey != null && !selectedBubbleKey.equals(bubbleKey)) { + // We did not remove the selected bubble. Expand it again + mBubbleBarViewCallback.expansionChanged(/* isExpanded = */ true); } } @@ -1518,21 +1251,17 @@ public class BubbleController implements ConfigurationChangeListener, @VisibleForTesting public boolean isBubbleNotificationSuppressedFromShade(String key, String groupKey) { - final boolean isSuppressedBubble = (mBubbleData.hasAnyBubbleWithKey(key) - && !mBubbleData.getAnyBubbleWithKey(key).showInShade()); + boolean isSuppressedBubble = (mBubbleData.hasAnyBubbleWithKey(key) + && !mBubbleData.getAnyBubbleWithkey(key).showInShade()); - final boolean isSuppressedSummary = mBubbleData.isSummarySuppressed(groupKey); - final boolean isSummary = key.equals(mBubbleData.getSummaryKey(groupKey)); + boolean isSuppressedSummary = mBubbleData.isSummarySuppressed(groupKey); + boolean isSummary = key.equals(mBubbleData.getSummaryKey(groupKey)); return (isSummary && isSuppressedSummary) || isSuppressedBubble; } /** Promote the provided bubble from the overflow view. */ public void promoteBubbleFromOverflow(Bubble bubble) { - if (isShowingAsBubbleBar()) { - mLogger.log(bubble, BubbleLogger.Event.BUBBLE_BAR_OVERFLOW_REMOVE_BACK_TO_BAR); - } else { - mLogger.log(bubble, BubbleLogger.Event.BUBBLE_OVERFLOW_REMOVE_BACK_TO_STACK); - } + mLogger.log(bubble, BubbleLogger.Event.BUBBLE_OVERFLOW_REMOVE_BACK_TO_STACK); ProtoLog.d(WM_SHELL_BUBBLES, "promoteBubbleFromOverflow=%s", bubble.getKey()); bubble.setInflateSynchronously(mInflateSynchronously); bubble.setShouldAutoExpand(true); @@ -1547,30 +1276,23 @@ public class BubbleController implements ConfigurationChangeListener, * <p>This is used by external callers (launcher). */ @VisibleForTesting - public void expandStackAndSelectBubbleFromLauncher(String key, int bubbleBarTopToScreenBottom) { - mBubblePositioner.updateBubbleBarTopOnScreen(bubbleBarTopToScreenBottom); + public void expandStackAndSelectBubbleFromLauncher(String key, int topOnScreen) { + mBubblePositioner.setBubbleBarTopOnScreen(topOnScreen); if (BubbleOverflow.KEY.equals(key)) { mBubbleData.setSelectedBubbleFromLauncher(mBubbleData.getOverflow()); mLayerView.showExpandedView(mBubbleData.getOverflow()); - mLogger.log(BubbleLogger.Event.BUBBLE_BAR_OVERFLOW_SELECTED); return; } - final Bubble b = mBubbleData.getAnyBubbleWithKey(key); + Bubble b = mBubbleData.getAnyBubbleWithkey(key); if (b == null) { return; } - final boolean wasExpanded = (mLayerView != null && mLayerView.isExpanded()); if (mBubbleData.hasBubbleInStackWithKey(b.getKey())) { // already in the stack mBubbleData.setSelectedBubbleFromLauncher(b); mLayerView.showExpandedView(b); - if (wasExpanded) { - mLogger.log(b, BubbleLogger.Event.BUBBLE_BAR_BUBBLE_SWITCHED); - } else { - mLogger.log(b, BubbleLogger.Event.BUBBLE_BAR_EXPANDED); - } } else if (mBubbleData.hasOverflowBubbleWithKey(b.getKey())) { // TODO: (b/271468319) handle overflow } else { @@ -1605,137 +1327,6 @@ public class BubbleController implements ConfigurationChangeListener, } } - /** - * Expands and selects a bubble created or found via the provided shortcut info. - * - * @param info the shortcut info for the bubble. - * @param bubbleBarLocation optional location in case bubble bar should be repositioned. - */ - public void expandStackAndSelectBubble(ShortcutInfo info, - @Nullable BubbleBarLocation bubbleBarLocation) { - if (!BubbleAnythingFlagHelper.enableCreateAnyBubble()) return; - Bubble b = mBubbleData.getOrCreateBubble(info); // Removes from overflow - ProtoLog.v(WM_SHELL_BUBBLES, "expandStackAndSelectBubble - shortcut=%s", info); - expandStackAndSelectAppBubble(b, bubbleBarLocation, UpdateSource.APP_ICON_DRAG); - } - - /** - * Expands and selects a bubble created or found for this app. - * - * @param intent the intent for the bubble. - */ - public void expandStackAndSelectBubble(Intent intent, UserHandle user, - @Nullable BubbleBarLocation bubbleBarLocation) { - if (!BubbleAnythingFlagHelper.enableCreateAnyBubble()) return; - Bubble b = mBubbleData.getOrCreateBubble(intent, user); // Removes from overflow - ProtoLog.v(WM_SHELL_BUBBLES, "expandStackAndSelectBubble - intent=%s", intent); - expandStackAndSelectAppBubble(b, bubbleBarLocation, UpdateSource.APP_ICON_DRAG); - } - - /** - * Expands and selects a bubble created or found for this app. - * - * @param pendingIntent the intent for the bubble. - * @param bubbleBarLocation optional location in case bubble bar should be repositioned. - */ - public void expandStackAndSelectBubble(PendingIntent pendingIntent, UserHandle user, - @Nullable BubbleBarLocation bubbleBarLocation) { - if (!BubbleAnythingFlagHelper.enableCreateAnyBubble()) return; - Bubble b = mBubbleData.getOrCreateBubble(pendingIntent, user); // Removes from overflow - ProtoLog.v(WM_SHELL_BUBBLES, "expandStackAndSelectBubble - pendingIntent=%s", - pendingIntent); - expandStackAndSelectAppBubble(b, bubbleBarLocation, UpdateSource.APP_ICON_DRAG); - } - - void expandStackAndSelectAppBubble(Bubble b, @Nullable BubbleBarLocation bubbleBarLocation, - @UpdateSource int source) { - if (!BubbleAnythingFlagHelper.enableCreateAnyBubble()) return; - BubbleBarLocation updateLocation = isShowingAsBubbleBar() ? bubbleBarLocation : null; - if (updateLocation != null) { - // does not update the bubble bar location of the bubble bar, just expanded view - updateExpandedViewForBubbleBarLocation(updateLocation, source); - } - if (b.isInflated()) { - // mBubbleData should be updated with the new location to update the bubble bar location - mBubbleData.setSelectedBubbleAndExpandStack(b, updateLocation); - } else { - b.enable(Notification.BubbleMetadata.FLAG_AUTO_EXPAND_BUBBLE); - - if (isShowingAsBubbleBar()) { - ensureBubbleViewsAndWindowCreated(); - mBubbleTransitions.startLaunchIntoOrConvertToBubble(b, mExpandedViewManager, - mBubbleTaskViewFactory, mBubblePositioner, mStackView, mLayerView, - mBubbleIconFactory, mInflateSynchronously, bubbleBarLocation); - } else { - inflateAndAdd(b, /* suppressFlyout= */ true, /* showInShade= */ false, - updateLocation); - } - } - } - - /** - * Expands and selects a bubble created from a running task in a different mode. - * - * @param taskInfo the task. - * @param dragData optional information about the task when it is being dragged into a bubble - */ - public void expandStackAndSelectBubble(ActivityManager.RunningTaskInfo taskInfo, - @Nullable BubbleTransitions.DragData dragData) { - if (!BubbleAnythingFlagHelper.enableCreateAnyBubble()) return; - Bubble b = mBubbleData.getOrCreateBubble(taskInfo); // Removes from overflow - ProtoLog.v(WM_SHELL_BUBBLES, "expandStackAndSelectBubble - taskId=%s", taskInfo.taskId); - BubbleBarLocation location = null; - if (dragData != null) { - location = - dragData.isReleasedOnLeft() ? BubbleBarLocation.LEFT : BubbleBarLocation.RIGHT; - } - if (b.isInflated()) { - mBubbleData.setSelectedBubbleAndExpandStack(b, location); - } else { - if (location != null) { - setBubbleBarLocation(location, UpdateSource.DRAG_TASK); - } - b.enable(Notification.BubbleMetadata.FLAG_AUTO_EXPAND_BUBBLE); - // Lazy init stack view when a bubble is created - ensureBubbleViewsAndWindowCreated(); - mBubbleTransitions.startConvertToBubble(b, taskInfo, mExpandedViewManager, - mBubbleTaskViewFactory, mBubblePositioner, mStackView, mLayerView, - mBubbleIconFactory, mHomeIntentProvider, dragData, mInflateSynchronously); - } - } - - /** - * Expands and selects a bubble created from a running task in a different mode. - * - * @param taskInfo the task. - */ - @Nullable - public Transitions.TransitionHandler expandStackAndSelectBubbleForExistingTransition( - @NonNull ActivityManager.RunningTaskInfo taskInfo, - @NonNull IBinder transition, - Consumer<Transitions.TransitionHandler> onInflatedCallback) { - if (!BubbleAnythingFlagHelper.enableCreateAnyBubble()) return null; - - Bubble b = mBubbleData.getBubbleInStackWithTaskId(taskInfo.taskId); - if (b != null) { - // Reuse the existing bubble - mBubbleData.setSelectedBubbleAndExpandStack(b, BubbleBarLocation.DEFAULT); - } else { - // Create a new bubble and show it, remove from overflow - b = mBubbleData.getOrCreateBubble(taskInfo); - } - ProtoLog.v(WM_SHELL_BUBBLES, "expandStackAndSelectBubbleForExistingTransition() taskId=%s", - taskInfo.taskId); - b.enable(Notification.BubbleMetadata.FLAG_AUTO_EXPAND_BUBBLE); - - // Lazy init stack view when a bubble is created - ensureBubbleViewsAndWindowCreated(); - return mBubbleTransitions.startLaunchNewTaskBubbleForExistingTransition(b, - mExpandedViewManager, mBubbleTaskViewFactory, mBubblePositioner, mStackView, - mLayerView, mBubbleIconFactory, mInflateSynchronously, transition, - onInflatedCallback); - } - /** * Expands and selects a bubble based on the provided {@link BubbleEntry}. If no bubble * exists for this entry, and it is able to bubble, a new bubble will be created. @@ -1794,80 +1385,76 @@ public class BubbleController implements ConfigurationChangeListener, /** * This method has different behavior depending on: - * - if a notes bubble exists - * - if a notes bubble is expanded + * - if an app bubble exists + * - if an app bubble is expanded * - * If no notes bubble exists, this will add and expand a bubble with the provided intent. The + * If no app bubble exists, this will add and expand a bubble with the provided intent. The * intent must be explicit (i.e. include a package name or fully qualified component class name) * and the activity for it should be resizable. * - * If a notes bubble exists, this will toggle the visibility of it, i.e. if the notes bubble is - * expanded, calling this method will collapse it. If the notes bubble is not expanded, calling + * If an app bubble exists, this will toggle the visibility of it, i.e. if the app bubble is + * expanded, calling this method will collapse it. If the app bubble is not expanded, calling * this method will expand it. * * These bubbles are <b>not</b> backed by a notification and remain until the user dismisses * the bubble or bubble stack. * - * Some details: - * - Calling this method with a different intent than the existing bubble will do nothing + * Some notes: + * - Only one app bubble is supported at a time, regardless of users. Multi-users support is + * tracked in b/273533235. + * - Calling this method with a different intent than the existing app bubble will do nothing * * @param intent the intent to display in the bubble expanded view. * @param user the {@link UserHandle} of the user to start this activity for. * @param icon the {@link Icon} to use for the bubble view. */ - public void showOrHideNotesBubble(Intent intent, UserHandle user, @Nullable Icon icon) { + public void showOrHideAppBubble(Intent intent, UserHandle user, @Nullable Icon icon) { if (intent == null || intent.getPackage() == null) { - Log.w(TAG, "Notes bubble failed to show, invalid intent: " + intent + Log.w(TAG, "App bubble failed to show, invalid intent: " + intent + ((intent != null) ? " with package: " + intent.getPackage() : " ")); return; } - String noteBubbleKey = Bubble.getNoteBubbleKeyForApp(intent.getPackage(), user); + String appBubbleKey = Bubble.getAppBubbleKeyForApp(intent.getPackage(), user); PackageManager packageManager = getPackageManagerForUser(mContext, user.getIdentifier()); - if (!mResizabilityChecker.isResizableActivity(intent, packageManager, noteBubbleKey)) { - // resize check logs any errors - return; - } + if (!isResizableActivity(intent, packageManager, appBubbleKey)) return; // logs errors - Bubble existingNotebubble = mBubbleData.getBubbleInStackWithKey(noteBubbleKey); + Bubble existingAppBubble = mBubbleData.getBubbleInStackWithKey(appBubbleKey); ProtoLog.d(WM_SHELL_BUBBLES, - "showOrHideNotesBubble, key=%s existingAppBubble=%s stackVisibility=%s " + "showOrHideAppBubble, key=%s existingAppBubble=%s stackVisibility=%s " + "statusBarShade=%s", - noteBubbleKey, existingNotebubble, + appBubbleKey, existingAppBubble, (mStackView != null ? mStackView.getVisibility() : "null"), mIsStatusBarShade); - if (existingNotebubble != null) { + if (existingAppBubble != null) { BubbleViewProvider selectedBubble = mBubbleData.getSelectedBubble(); if (isStackExpanded()) { - if (selectedBubble != null && noteBubbleKey.equals(selectedBubble.getKey())) { - ProtoLog.d(WM_SHELL_BUBBLES, "collapseStack for %s", noteBubbleKey); - // Notes bubble is expanded, lets collapse + if (selectedBubble != null && appBubbleKey.equals(selectedBubble.getKey())) { + ProtoLog.d(WM_SHELL_BUBBLES, "collapseStack for %s", appBubbleKey); + // App bubble is expanded, lets collapse collapseStack(); } else { - ProtoLog.d(WM_SHELL_BUBBLES, "setSelected for %s", noteBubbleKey); - // Notes bubble is not selected, select it - mBubbleData.setSelectedBubble(existingNotebubble); + ProtoLog.d(WM_SHELL_BUBBLES, "setSelected for %s", appBubbleKey); + // App bubble is not selected, select it + mBubbleData.setSelectedBubble(existingAppBubble); } } else { - ProtoLog.d(WM_SHELL_BUBBLES, "setSelectedBubbleAndExpandStack %s", noteBubbleKey); - // Notes bubble is not selected, select it & expand - mBubbleData.setSelectedBubbleAndExpandStack(existingNotebubble); + ProtoLog.d(WM_SHELL_BUBBLES, "setSelectedBubbleAndExpandStack %s", appBubbleKey); + // App bubble is not selected, select it & expand + mBubbleData.setSelectedBubbleAndExpandStack(existingAppBubble); } } else { // Check if it exists in the overflow - Bubble b = mBubbleData.getOverflowBubbleWithKey(noteBubbleKey); + Bubble b = mBubbleData.getOverflowBubbleWithKey(appBubbleKey); if (b != null) { // It's in the overflow, so remove it & reinflate - mBubbleData.dismissBubbleWithKey(noteBubbleKey, Bubbles.DISMISS_NOTIF_CANCEL); - // Update the bubble entry in the overflow with the latest intent. - b.setIntent(intent); + mBubbleData.dismissBubbleWithKey(appBubbleKey, Bubbles.DISMISS_NOTIF_CANCEL); } else { - // Notes bubble does not exist, lets add and expand it - b = Bubble.createNotesBubble(intent, user, icon, mMainExecutor, - mBackgroundExecutor); + // App bubble does not exist, lets add and expand it + b = Bubble.createAppBubble(intent, user, icon, mMainExecutor); } - ProtoLog.d(WM_SHELL_BUBBLES, "inflateAndAdd %s", noteBubbleKey); + ProtoLog.d(WM_SHELL_BUBBLES, "inflateAndAdd %s", appBubbleKey); b.setShouldAutoExpand(true); inflateAndAdd(b, /* suppressFlyout= */ true, /* showInShade= */ false); } @@ -1915,9 +1502,9 @@ public class BubbleController implements ConfigurationChangeListener, } } - /** Sets the note bubble's taskId which is cached for SysUI. */ - public void setNoteBubbleTaskId(String key, int taskId) { - mImpl.mCachedState.setNoteBubbleTaskId(key, taskId); + /** Sets the app bubble's taskId which is cached for SysUI. */ + public void setAppBubbleTaskId(String key, int taskId) { + mImpl.mCachedState.setAppBubbleTaskId(key, taskId); } /** @@ -1929,7 +1516,7 @@ public class BubbleController implements ConfigurationChangeListener, } mOverflowDataLoadNeeded = false; List<UserInfo> users = mUserManager.getAliveUsers(); - List<Integer> userIds = users.stream().map(userInfo -> userInfo.id).toList(); + List<Integer> userIds = users.stream().map(userInfo -> userInfo.id).collect(Collectors.toList()); mDataRepository.loadBubbles(mCurrentUserId, userIds, (bubbles) -> { bubbles.forEach(bubble -> { if (mBubbleData.hasAnyBubbleWithKey(bubble.getKey())) { @@ -1945,7 +1532,6 @@ public class BubbleController implements ConfigurationChangeListener, mStackView, mLayerView, mBubbleIconFactory, - mAppInfoProvider, true /* skipInflation */); }); return null; @@ -1953,18 +1539,6 @@ public class BubbleController implements ConfigurationChangeListener, } void setUpBubbleViewsForMode() { - if (mBubbleData.isExpanded() && !mBubbleData.isShowingOverflow() - && isShowingAsBubbleBar()) { - Bubble bubble = (Bubble) mBubbleData.getSelectedBubble(); - if (bubble != null) { - mBubbleTransitions.startFloatingToBarConversion(bubble, mBubblePositioner); - TaskView taskView = bubble.getTaskView(); - taskView.setIsMovingWindows(true); - ViewGroup parent = (ViewGroup) taskView.getParent(); - parent.removeView(taskView); - } - } - mBubbleViewCallback = isShowingAsBubbleBar() ? mBubbleBarViewCallback : mBubbleStackViewCallback; @@ -1997,11 +1571,8 @@ public class BubbleController implements ConfigurationChangeListener, if (!isShowingAsBubbleBar()) { callback = b -> { if (mStackView != null) { - b.setSuppressFlyout(true); mStackView.addBubble(b); - if (b.getKey().equals(mBubbleData.getSelectedBubbleKey())) { - mStackView.setSelectedBubble(b); - } + mStackView.setSelectedBubble(b); } else { Log.w(TAG, "Tried to add a bubble to the stack but the stack is null"); } @@ -2013,11 +1584,6 @@ public class BubbleController implements ConfigurationChangeListener, } }; } - // TODO (b/380105874): Remove this after properly transitioning the expanded bubble from bar - // to floating - if (mStackView != null && mBubbleData.isExpanded()) { - mBubbleData.collapseNoUpdate(); - } for (int i = mBubbleData.getBubbles().size() - 1; i >= 0; i--) { Bubble bubble = mBubbleData.getBubbles().get(i); bubble.inflate(callback, @@ -2028,19 +1594,8 @@ public class BubbleController implements ConfigurationChangeListener, mStackView, mLayerView, mBubbleIconFactory, - mAppInfoProvider, false /* skipInflation */); } - if (mBubbleData.isShowingOverflow()) { - BubbleOverflow bubbleOverflow = mBubbleData.getOverflow(); - if (isShowingAsBubbleBar()) { - bubbleOverflow.initializeForBubbleBar(mExpandedViewManager, mBubblePositioner); - mLayerView.showExpandedView(bubbleOverflow); - } else { - bubbleOverflow.initialize(mExpandedViewManager, mStackView, mBubblePositioner); - } - - } } /** @@ -2054,32 +1609,31 @@ public class BubbleController implements ConfigurationChangeListener, public void updateBubble(BubbleEntry notif, boolean suppressFlyout, boolean showInShade) { // If this is an interruptive notif, mark that it's interrupted mSysuiProxy.setNotificationInterruption(notif.getKey()); - final boolean isNonInterruptiveNotExpanding = !notif.getRanking().isTextChanged() + boolean isNonInterruptiveNotExpanding = !notif.getRanking().isTextChanged() && (notif.getBubbleMetadata() != null && !notif.getBubbleMetadata().getAutoExpandBubble()); - final Bubble bubble; if (isNonInterruptiveNotExpanding && mBubbleData.hasOverflowBubbleWithKey(notif.getKey())) { // Update the bubble but don't promote it out of overflow - bubble = mBubbleData.getOverflowBubbleWithKey(notif.getKey()); + Bubble b = mBubbleData.getOverflowBubbleWithKey(notif.getKey()); if (notif.isBubble()) { notif.setFlagBubble(false); } - updateNotNotifyingEntry(bubble, notif, showInShade); + updateNotNotifyingEntry(b, notif, showInShade); } else if (mBubbleData.hasAnyBubbleWithKey(notif.getKey()) && isNonInterruptiveNotExpanding) { - bubble = mBubbleData.getAnyBubbleWithKey(notif.getKey()); - if (bubble != null) { - updateNotNotifyingEntry(bubble, notif, showInShade); + Bubble b = mBubbleData.getAnyBubbleWithkey(notif.getKey()); + if (b != null) { + updateNotNotifyingEntry(b, notif, showInShade); } } else if (mBubbleData.isSuppressedWithLocusId(notif.getLocusId())) { // Update the bubble but don't promote it out of overflow - bubble = mBubbleData.getSuppressedBubbleWithKey(notif.getKey()); - if (bubble != null) { - updateNotNotifyingEntry(bubble, notif, showInShade); + Bubble b = mBubbleData.getSuppressedBubbleWithKey(notif.getKey()); + if (b != null) { + updateNotNotifyingEntry(b, notif, showInShade); } } else { - bubble = mBubbleData.getOrCreateBubble(notif, null /* persistedBubble */); + Bubble bubble = mBubbleData.getOrCreateBubble(notif, null /* persistedBubble */); if (notif.shouldSuppressNotificationList()) { // If we're suppressing notifs for DND, we don't want the bubbles to randomly // expand when DND turns off so flip the flag. @@ -2108,22 +1662,11 @@ public class BubbleController implements ConfigurationChangeListener, @VisibleForTesting public void inflateAndAdd(Bubble bubble, boolean suppressFlyout, boolean showInShade) { - inflateAndAdd(bubble, suppressFlyout, showInShade, /* bubbleBarLocation= */ null); - } - - /** - * Inflates and adds a bubble. Updates Bubble Bar location if bubbles - * are shown in the Bubble Bar and the location is not null. - */ - @VisibleForTesting - public void inflateAndAdd(Bubble bubble, boolean suppressFlyout, boolean showInShade, - @Nullable BubbleBarLocation bubbleBarLocation) { // Lazy init stack view when a bubble is created ensureBubbleViewsAndWindowCreated(); bubble.setInflateSynchronously(mInflateSynchronously); bubble.inflate( - b -> mBubbleData.notificationEntryUpdated(b, suppressFlyout, showInShade, - bubbleBarLocation), + b -> mBubbleData.notificationEntryUpdated(b, suppressFlyout, showInShade), mContext, mExpandedViewManager, mBubbleTaskViewFactory, @@ -2131,7 +1674,6 @@ public class BubbleController implements ConfigurationChangeListener, mStackView, mLayerView, mBubbleIconFactory, - mAppInfoProvider, false /* skipInflation */); } @@ -2156,9 +1698,6 @@ public class BubbleController implements ConfigurationChangeListener, @MainThread public void removeAllBubbles(@Bubbles.DismissReason int reason) { mBubbleData.dismissAll(reason); - if (reason == Bubbles.DISMISS_USER_GESTURE) { - mLogger.log(BubbleLogger.Event.BUBBLE_BAR_DISMISSED_DRAG_BAR); - } } private void onEntryAdded(BubbleEntry entry) { @@ -2309,41 +1848,6 @@ public class BubbleController implements ConfigurationChangeListener, }); } - @Override - public boolean mergeTaskWithUnfold(@NonNull ActivityManager.RunningTaskInfo taskInfo, - @NonNull TransitionInfo info, - @NonNull TransitionInfo.Change change, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT) { - if (!mBubbleTransitions.mTaskViewTransitions.isTaskViewTask(taskInfo)) { - // if this task isn't managed by bubble transitions just bail. - return false; - } - if (isShowingAsBubbleBar()) { - if (info.getType() != TRANSIT_BUBBLE_CONVERT_FLOATING_TO_BAR) { - return false; - } - if (mBubbleData.getSelectedBubble() instanceof Bubble) { - Bubble bubble = (Bubble) mBubbleData.getSelectedBubble(); - if (bubble.getPreparingTransition() != null) { - bubble.getPreparingTransition().mergeWithUnfold(change.getLeash(), finishT); - } - return true; - } - return false; - } - - boolean merged = mBubbleTransitions.mTaskViewTransitions.updateBoundsForUnfold( - change.getEndAbsBounds(), startT, finishT, change.getTaskInfo(), change.getLeash()); - if (merged) { - BubbleViewProvider selectedBubble = mBubbleData.getSelectedBubble(); - if (selectedBubble != null && selectedBubble.getExpandedView() != null) { - selectedBubble.getExpandedView().onContainerClipUpdate(); - } - } - return merged; - } - /** When bubbles are floating, this will be used to notify the floating views. */ private final BubbleViewCallback mBubbleStackViewCallback = new BubbleViewCallback() { @Override @@ -2411,12 +1915,7 @@ public class BubbleController implements ConfigurationChangeListener, @Override public void removeBubble(Bubble removedBubble) { if (mLayerView != null) { - final BubbleTransitions.BubbleTransition bubbleTransit = - removedBubble.getPreparingTransition(); mLayerView.removeBubble(removedBubble, () -> { - if (bubbleTransit != null) { - bubbleTransit.continueCollapse(); - } if (!mBubbleData.hasBubbles() && !isStackExpanded()) { mLayerView.setVisibility(INVISIBLE); removeFromWindowManagerMaybe(); @@ -2427,15 +1926,11 @@ public class BubbleController implements ConfigurationChangeListener, @Override public void addBubble(Bubble addedBubble) { - // Only log metrics event - mLogger.log(addedBubble, BubbleLogger.Event.BUBBLE_BAR_BUBBLE_POSTED); // Nothing to do for adds, these are handled by launcher / in the bubble bar. } @Override public void updateBubble(Bubble updatedBubble) { - // Only log metrics event - mLogger.log(updatedBubble, BubbleLogger.Event.BUBBLE_BAR_BUBBLE_UPDATED); // Nothing to do for updates, these are handled by launcher / in the bubble bar. } @@ -2451,36 +1946,31 @@ public class BubbleController implements ConfigurationChangeListener, @Override public void suppressionChanged(Bubble bubble, boolean isSuppressed) { - // Nothing to do for our views, handled by launcher / in the bubble bar. + if (mLayerView != null) { + // TODO (b/273316505) handle suppression changes, although might not need to + // to do anything on the layerview side for this... + } } @Override public void expansionChanged(boolean isExpanded) { - // in bubble bar mode, let the request to show the expanded view come from launcher. - // only collapse here if we're collapsing. - if (!isExpanded) { - collapseExpandedViewForBubbleBar(); - } - - BubbleLogger.Event event = isExpanded ? BubbleLogger.Event.BUBBLE_BAR_EXPANDED - : BubbleLogger.Event.BUBBLE_BAR_COLLAPSED; - BubbleViewProvider selectedBubble = mBubbleData.getSelectedBubble(); - if (selectedBubble instanceof Bubble) { - mLogger.log((Bubble) selectedBubble, event); - } else { - mLogger.log(event); + if (mLayerView != null) { + if (!isExpanded) { + mLayerView.collapse(); + } else { + BubbleViewProvider selectedBubble = mBubbleData.getSelectedBubble(); + if (selectedBubble != null) { + mLayerView.showExpandedView(selectedBubble); + } + } } } @Override public void selectionChanged(BubbleViewProvider selectedBubble) { // Only need to update the layer view if we're currently expanded for selection changes. - if (mLayerView != null && mLayerView.isExpanded()) { + if (mLayerView != null && isStackExpanded()) { mLayerView.showExpandedView(selectedBubble); - if (selectedBubble instanceof Bubble) { - mLogger.log((Bubble) selectedBubble, - BubbleLogger.Event.BUBBLE_BAR_BUBBLE_SWITCHED); - } } } }; @@ -2493,8 +1983,7 @@ public class BubbleController implements ConfigurationChangeListener, ProtoLog.d(WM_SHELL_BUBBLES, "mBubbleDataListener#applyUpdate:" + " added=%s removed=%b updated=%s orderChanged=%b expansionChanged=%b" + " expanded=%b selectionChanged=%b selected=%s" - + " suppressed=%s unsupressed=%s shouldShowEducation=%b showOverflowChanged=%b" - + " bubbleBarLocation=%s", + + " suppressed=%s unsupressed=%s shouldShowEducation=%b showOverflowChanged=%b", update.addedBubble != null ? update.addedBubble.getKey() : "null", !update.removedBubbles.isEmpty(), update.updatedBubble != null ? update.updatedBubble.getKey() : "null", @@ -2503,9 +1992,7 @@ public class BubbleController implements ConfigurationChangeListener, update.selectedBubble != null ? update.selectedBubble.getKey() : "null", update.suppressedBubble != null ? update.suppressedBubble.getKey() : "null", update.unsuppressedBubble != null ? update.unsuppressedBubble.getKey() : "null", - update.shouldShowEducation, update.showOverflowChanged, - update.mBubbleBarLocation != null ? update.mBubbleBarLocation.toString() - : "null"); + update.shouldShowEducation, update.showOverflowChanged); ensureBubbleViewsAndWindowCreated(); @@ -2533,9 +2020,6 @@ public class BubbleController implements ConfigurationChangeListener, @Bubbles.DismissReason final int reason = removed.second; mBubbleViewCallback.removeBubble(bubble); - if (bubble.getClientToken() != null && mBubbleMultitaskingDelegate != null) { - mBubbleMultitaskingDelegate.onBubbleRemoved(bubble.getClientToken(), reason); - } // Leave the notification in place if we're dismissing due to user switching, or // because DND is suppressing the bubble. In both of those cases, we need to be able @@ -2608,16 +2092,6 @@ public class BubbleController implements ConfigurationChangeListener, mSysuiProxy.requestNotificationShadeTopUi(true, TAG); } - if (Flags.enableBubbleSwipeUpCleanup() && !update.removedBubbles.isEmpty() - && !mBubbleData.hasBubbles()) { - // This update removed all the bubbles. Send an update to SystemUI to mark the stack - // collapsed. This should be sent by the UI classes (BubbleStackView or - // BubbleBarLayerView), but if we fail to send this, home gesture stops working. - // To avoid leaving the device in a bad state, add a failsafe call here to clean - // up the state. - mSysuiProxy.onStackExpandChanged(false); - } - mSysuiProxy.notifyInvalidateNotifications("BubbleData.Listener.applyUpdate"); updateBubbleViews(); @@ -2627,39 +2101,13 @@ public class BubbleController implements ConfigurationChangeListener, if (isShowingAsBubbleBar()) { BubbleBarUpdate bubbleBarUpdate = update.toBubbleBarUpdate(); // Some updates aren't relevant to the bubble bar so check first. - if (bubbleBarUpdate.anythingChanged() && mBubbleStateListener != null) { + if (bubbleBarUpdate.anythingChanged()) { mBubbleStateListener.onBubbleStateChange(bubbleBarUpdate); } } } }; - private void showExpandedViewForBubbleBar() { - BubbleViewProvider selectedBubble = mBubbleData.getSelectedBubble(); - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Controller.showExpandedViewForBubbleBar: bubble=%s", - selectedBubble); - if (selectedBubble == null) return; - if (selectedBubble instanceof Bubble) { - final Bubble bubble = (Bubble) selectedBubble; - if (bubble.getPreparingTransition() != null) { - bubble.getPreparingTransition().continueExpand(); - return; - } - } - if (mLayerView == null) return; - mLayerView.showExpandedView(selectedBubble); - } - - private void collapseExpandedViewForBubbleBar() { - if (mLayerView != null && mLayerView.isExpanded()) { - if (mBubblePositioner.isImeVisible()) { - // If we're collapsing, hide the IME - hideCurrentInputMethod(null); - } - mLayerView.collapse(); - } - } - private void updateOverflowButtonDot() { BubbleOverflow overflow = mBubbleData.getOverflow(); if (overflow == null) return; @@ -2706,12 +2154,12 @@ public class BubbleController implements ConfigurationChangeListener, BubbleEntry summary, @Nullable List<BubbleEntry> children, IntConsumer removeCallback) { if (children != null) { for (int i = 0; i < children.size(); i++) { - final BubbleEntry child = children.get(i); + BubbleEntry child = children.get(i); if (mBubbleData.hasAnyBubbleWithKey(child.getKey())) { // Suppress the bubbled child // As far as group manager is concerned, once a child is no longer shown // in the shade, it is essentially removed. - final Bubble bubbleChild = mBubbleData.getAnyBubbleWithKey(child.getKey()); + Bubble bubbleChild = mBubbleData.getAnyBubbleWithkey(child.getKey()); if (bubbleChild != null) { bubbleChild.setSuppressNotification(true); bubbleChild.setShowDot(false /* show */); @@ -2726,6 +2174,7 @@ public class BubbleController implements ConfigurationChangeListener, // And since all children are removed, remove the summary. removeCallback.accept(-1); + // TODO: (b/145659174) remove references to mSuppressedGroupKeys once fully migrated mBubbleData.addSummaryToSuppress(summary.getStatusBarNotification().getGroupKey(), summary.getKey()); } @@ -2792,28 +2241,6 @@ public class BubbleController implements ConfigurationChangeListener, return mLayerView; } - @Nullable - public ActivityManager.RunningTaskInfo getAppBubbleRootTaskInfo() { - return mAppBubbleRootTaskInfo; - } - - /** - * Returns the id of the display to which the current Bubble view is attached if it is currently - * showing, {@link INVALID_DISPLAY} otherwise. - */ - @VisibleForTesting - public int getCurrentViewDisplayId() { - if (isShowingAsBubbleBar() && mLayerView != null && mLayerView.getDisplay() != null) { - return mLayerView.getDisplay().getDisplayId(); - } - - if (!isShowingAsBubbleBar() && mStackView != null && mStackView.getDisplay() != null) { - return mStackView.getDisplay().getDisplayId(); - } - - return INVALID_DISPLAY; - } - /** * Check if notification panel is in an expanded state. * Makes a call to System UI process and delivers the result via {@code callback} on the @@ -2854,15 +2281,6 @@ public class BubbleController implements ConfigurationChangeListener, mBubbleData.setSelectedBubbleAndExpandStack(bubbleToSelect); } - private void moveDraggedBubbleToFullscreen(String key, Point dropLocation) { - Bubble b = mBubbleData.getBubbleInStackWithKey(key); - mBubbleTransitions.startDraggedBubbleIconToFullscreen(b, dropLocation); - } - - private boolean isDeviceLocked() { - return !mIsStatusBarShade; - } - /** * Description of current bubble state. */ @@ -2871,10 +2289,6 @@ public class BubbleController implements ConfigurationChangeListener, pw.print(prefix); pw.println(" currentUserId= " + mCurrentUserId); pw.print(prefix); pw.println(" isStatusBarShade= " + mIsStatusBarShade); pw.print(prefix); pw.println(" isShowingAsBubbleBar= " + isShowingAsBubbleBar()); - pw.print(prefix); pw.println(" launcherHasBubbleBar= " + mLauncherHasBubbleBar); - pw.print(prefix); pw.println(" bubbleStateListenerSet= " + (mBubbleStateListener != null)); - pw.print(prefix); pw.println(" stackViewSet= " + (mStackView != null)); - pw.print(prefix); pw.println(" layerViewSet= " + (mLayerView != null)); pw.print(prefix); pw.println(" isImeVisible= " + mBubblePositioner.isImeVisible()); pw.println(); @@ -2887,9 +2301,6 @@ public class BubbleController implements ConfigurationChangeListener, pw.println(); mImpl.mCachedState.dump(pw); - - pw.println(); - mBubbleTransitions.mTaskViewTransitions.dump(pw); } /** @@ -2902,8 +2313,7 @@ public class BubbleController implements ConfigurationChangeListener, * @param context the context to use. * @param entry the entry to bubble. */ - boolean canLaunchInTaskView(Context context, BubbleEntry entry) { - if (BubbleAnythingFlagHelper.enableCreateAnyBubble()) return true; + static boolean canLaunchInTaskView(Context context, BubbleEntry entry) { PendingIntent intent = entry.getBubbleMetadata() != null ? entry.getBubbleMetadata().getIntent() : null; @@ -2917,12 +2327,29 @@ public class BubbleController implements ConfigurationChangeListener, } PackageManager packageManager = getPackageManagerForUser( context, entry.getStatusBarNotification().getUser().getIdentifier()); - return mResizabilityChecker.isResizableActivity(intent.getIntent(), packageManager, - entry.getKey()); + return isResizableActivity(intent.getIntent(), packageManager, entry.getKey()); } - /** Gets the {@link PackageManager} for the user's context. */ - public static PackageManager getPackageManagerForUser(Context context, int userId) { + static boolean isResizableActivity(Intent intent, PackageManager packageManager, String key) { + if (intent == null) { + Log.w(TAG, "Unable to send as bubble: " + key + " null intent"); + return false; + } + ActivityInfo info = intent.resolveActivityInfo(packageManager, 0); + if (info == null) { + Log.w(TAG, "Unable to send as bubble: " + key + + " couldn't find activity info for intent: " + intent); + return false; + } + if (!ActivityInfo.isResizeableMode(info.resizeMode)) { + Log.w(TAG, "Unable to send as bubble: " + key + + " activity is not resizable for intent: " + intent); + return false; + } + return true; + } + + static PackageManager getPackageManagerForUser(Context context, int userId) { Context contextForUser = context; // UserHandle defines special userId as negative values, e.g. USER_ALL if (userId >= 0) { @@ -2940,59 +2367,14 @@ public class BubbleController implements ConfigurationChangeListener, return contextForUser.getPackageManager(); } - /** {@link ImeListener} that dispatches IME visibility updates to the stack. */ - private class BubblesImeListener extends ImeListener implements - DisplayImeController.ImePositionProcessor { - - BubblesImeListener(DisplayController displayController, int displayId) { - super(displayController, displayId); - } - + /** PinnedStackListener that dispatches IME visibility updates to the stack. */ + //TODO(b/170442945): Better way to do this / insets listener? + private class BubblesImeListener extends PinnedStackListenerForwarder.PinnedTaskListener { @Override - protected void onImeVisibilityChanged(boolean imeVisible, int imeHeight) { - if (getDisplayId() != mContext.getDisplayId()) { - return; - } - // the imeHeight here is actually the ime inset; it only includes the part of the ime - // that overlaps with the Bubbles window. adjust it to include the bottom screen inset, - // so we have the total height of the ime. - int totalImeHeight = imeHeight + mBubblePositioner.getInsets().bottom; - mBubblePositioner.setImeVisible(imeVisible, totalImeHeight); + public void onImeVisibilityChanged(boolean imeVisible, int imeHeight) { + mBubblePositioner.setImeVisible(imeVisible, imeHeight); if (mStackView != null) { mStackView.setImeVisible(imeVisible); - if (!imeVisible && mOnImeHidden != null) { - mOnImeHidden.run(); - mOnImeHidden = null; - } - } - } - - @Override - public int onImeStartPositioning(int displayId, int hiddenTop, int shownTop, - boolean showing, boolean isFloating, SurfaceControl.Transaction t) { - if (mContext.getDisplayId() != displayId) { - return IME_ANIMATION_DEFAULT; - } - - if (showing) { - mBubblePositioner.setImeVisible(true, hiddenTop - shownTop); - } else { - mBubblePositioner.setImeVisible(false, 0); - } - if (mStackView != null) { - mStackView.setImeVisible(showing); - } - - return IME_ANIMATION_DEFAULT; - } - - @Override - public void onImePositionChanged(int displayId, int imeTop, SurfaceControl.Transaction t) { - if (mContext.getDisplayId() != displayId) { - return; - } - if (mLayerView != null) { - mLayerView.onImeTopChanged(imeTop); } } } @@ -3018,11 +2400,6 @@ public class BubbleController implements ConfigurationChangeListener, public void animateBubbleBarLocation(BubbleBarLocation location) { mListener.call(l -> l.animateBubbleBarLocation(location)); } - - @Override - public void showBubbleBarPillowAt(@Nullable BubbleBarLocation location) { - mListener.call(l -> l.showBubbleBarPillowAt(location)); - } }; IBubblesImpl(BubbleController controller) { @@ -3053,171 +2430,54 @@ public class BubbleController implements ConfigurationChangeListener, } @Override - public void showShortcutBubble(ShortcutInfo info, @Nullable BubbleBarLocation location) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "IBubbles.showShortcutBubble: info=%s loc=%s", - info, location); - executeRemoteCallWithTaskPermission( - mController, - "showShortcutBubble", - (controller) -> controller.expandStackAndSelectBubble(info, location)); - } - - @Override - public void showAppBubble(Intent intent, UserHandle user, - @Nullable BubbleBarLocation location) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "IBubbles.showAppBubble: intent=%s user=%s loc=%s", - intent, user, location); - executeRemoteCallWithTaskPermission( - mController, - "showAppBubble", - (controller) -> controller.expandStackAndSelectBubble(intent, user, location)); - } - - @Override - public void showBubble(String key, int bubbleBarTopToScreenBottom) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "IBubbles.showBubble: key=%s bubbleBarTopToScreenBottom=%d", - key, bubbleBarTopToScreenBottom); - executeRemoteCallWithTaskPermission( - mController, - "showBubble", - (controller) -> - controller.expandStackAndSelectBubbleFromLauncher( - key, bubbleBarTopToScreenBottom)); + public void showBubble(String key, int topOnScreen) { + mMainExecutor.execute( + () -> mController.expandStackAndSelectBubbleFromLauncher(key, topOnScreen)); } @Override public void removeAllBubbles() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "IBubbles.removeAllBubbles"); - executeRemoteCallWithTaskPermission( - mController, - "removeAllBubbles", - (controller) -> controller.removeAllBubbles(Bubbles.DISMISS_USER_GESTURE)); + mMainExecutor.execute(() -> mController.removeAllBubbles(Bubbles.DISMISS_USER_GESTURE)); } @Override public void collapseBubbles() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "IBubbles.collapseBubbles"); - executeRemoteCallWithTaskPermission( - mController, - "collapseBubbles", - (controller) -> { - if (mBubbleData.getSelectedBubble() instanceof Bubble) { - if (((Bubble) mBubbleData.getSelectedBubble()).getPreparingTransition() - != null) { - // Currently preparing a transition which will, itself, collapse the - // bubble. - // For transition preparation, the timing of bubble-collapse must be - // in sync with the rest of the set-up. - return; - } - } - controller.collapseStack(); - }); + mMainExecutor.execute(() -> mController.collapseStack()); } @Override public void startBubbleDrag(String bubbleKey) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "IBubbles.startBubbleDrag: key=%s", bubbleKey); - executeRemoteCallWithTaskPermission( - mController, - "startBubbleDrag", - (controller) -> controller.startBubbleDrag(bubbleKey)); + mMainExecutor.execute(() -> mController.startBubbleDrag(bubbleKey)); } @Override - public void stopBubbleDrag(BubbleBarLocation location, int bubbleBarTopToScreenBottom) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "IBubbles.stopBubbleDrag: log=%s bubbleBarTopToScreenBottom=%d", - location, bubbleBarTopToScreenBottom); - executeRemoteCallWithTaskPermission( - mController, - "stopBubbleDrag", - (controller) -> - controller.stopBubbleDrag(location, bubbleBarTopToScreenBottom)); + public void stopBubbleDrag(BubbleBarLocation location, int topOnScreen) { + mMainExecutor.execute(() -> mController.stopBubbleDrag(location, topOnScreen)); } @Override - public void dragBubbleToDismiss(String key, long timestamp) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "IBubbles.dragBubbleToDismiss: key=%s time=%d", - key, timestamp); - executeRemoteCallWithTaskPermission( - mController, - "dragBubbleToDismiss", - (controller) -> controller.dragBubbleToDismiss(key, timestamp)); + public void dragBubbleToDismiss(String key) { + mMainExecutor.execute(() -> mController.dragBubbleToDismiss(key)); } @Override public void showUserEducation(int positionX, int positionY) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "IBubbles.showUserEducation: pos=[%d, %d]", - positionX, positionY); - executeRemoteCallWithTaskPermission( - mController, - "showUserEducation", - (controller) -> controller.showUserEducation(new Point(positionX, positionY))); + mMainExecutor.execute(() -> + mController.showUserEducation(new Point(positionX, positionY))); } @Override - public void setBubbleBarLocation(BubbleBarLocation location, - @UpdateSource int source) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "IBubbles.setBubbleBarLocation: loc=%s src=%d", - location, source); - executeRemoteCallWithTaskPermission( - mController, - "setBubbleBarLocation", - (controller) -> controller.setBubbleBarLocation(location, source)); + public void setBubbleBarLocation(BubbleBarLocation location) { + mMainExecutor.execute(() -> + mController.setBubbleBarLocation(location)); } @Override - public void updateBubbleBarTopToScreenBottom(int bubbleBarTopToScreenBottom) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "IBubbles.updateBubbleBarTopOnScreen: bubbleBarTopToScreenBottom=%d", - bubbleBarTopToScreenBottom); - executeRemoteCallWithTaskPermission( - mController, - "updateBubbleBarTopToScreenBottom", - (controller) -> { - mBubblePositioner.updateBubbleBarTopOnScreen(bubbleBarTopToScreenBottom); - if (isSelectedBubbleConvertingMode()) { - // if we're in the process of converting the selected bubble to bar mode - // we just received an updated bubble bar relative position so we can - // now continue converting the bubble - ((Bubble) mBubbleData.getSelectedBubble()).getPreparingTransition() - .continueConvert(mLayerView); - } - if (mLayerView != null) mLayerView.updateExpandedView(); - }); - } - - @Override - public void showExpandedView() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "IBubbles.showExpandedView"); - executeRemoteCallWithTaskPermission( - mController, - "showExpandedView", - (controller) -> { - if (mLayerView != null) { - showExpandedViewForBubbleBar(); - } - }); - } - - @Override - public void moveDraggedBubbleToFullscreen(String key, Point dropLocation) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "IBubbles.moveDraggedBubbleToFullscreen: key=%s " - + "loc=%s", key, dropLocation); - executeRemoteCallWithTaskPermission( - mController, - "moveDraggedBubbleToFullscreen", - (controller) -> controller.moveDraggedBubbleToFullscreen(key, dropLocation)); - } - - @Override - public void setHasBubbleBar(boolean hasBubbleBar) { - executeRemoteCallWithTaskPermission( - mController, - "setHasBubbleBar", - (controller) -> controller.setLauncherHasBubbleBar(hasBubbleBar)); + public void updateBubbleBarTopOnScreen(int topOnScreen) { + mMainExecutor.execute(() -> { + mBubblePositioner.setBubbleBarTopOnScreen(topOnScreen); + if (mLayerView != null) mLayerView.updateExpandedView(); + }); } } @@ -3231,7 +2491,7 @@ public class BubbleController implements ConfigurationChangeListener, private HashMap<String, String> mSuppressedGroupToNotifKeys = new HashMap<>(); private HashMap<String, Bubble> mShortcutIdToBubble = new HashMap<>(); - private HashMap<String, Integer> mNoteBubbleTaskIds = new HashMap(); + private HashMap<String, Integer> mAppBubbleTaskIds = new HashMap(); private ArrayList<Bubble> mTmpBubbles = new ArrayList<>(); @@ -3263,20 +2523,20 @@ public class BubbleController implements ConfigurationChangeListener, mSuppressedBubbleKeys.clear(); mShortcutIdToBubble.clear(); - mNoteBubbleTaskIds.clear(); + mAppBubbleTaskIds.clear(); for (Bubble b : mTmpBubbles) { mShortcutIdToBubble.put(b.getShortcutId(), b); updateBubbleSuppressedState(b); - if (b.isNote()) { - mNoteBubbleTaskIds.put(b.getKey(), b.getTaskId()); + if (b.isAppBubble()) { + mAppBubbleTaskIds.put(b.getKey(), b.getTaskId()); } } } - /** Sets the note bubble's taskId which is cached for SysUI. */ - synchronized void setNoteBubbleTaskId(String key, int taskId) { - mNoteBubbleTaskIds.put(key, taskId); + /** Sets the app bubble's taskId which is cached for SysUI. */ + synchronized void setAppBubbleTaskId(String key, int taskId) { + mAppBubbleTaskIds.put(key, taskId); } /** @@ -3328,7 +2588,7 @@ public class BubbleController implements ConfigurationChangeListener, pw.println(" suppressing: " + key); } - pw.println("mNoteBubbleTaskIds: " + mNoteBubbleTaskIds.values()); + pw.println("mAppBubbleTaskIds: " + mAppBubbleTaskIds.values()); } } @@ -3351,18 +2611,17 @@ public class BubbleController implements ConfigurationChangeListener, } @Override - public void expandStackAndSelectBubble(BubbleEntry entry) { + public void collapseStack() { mMainExecutor.execute(() -> { - BubbleController.this.expandStackAndSelectBubble(entry); + BubbleController.this.collapseStack(); }); } @Override - public void expandStackAndSelectBubble(ShortcutInfo info) { - mMainExecutor.execute(() -> - BubbleController.this - .expandStackAndSelectBubble(info, /* bubbleBarLocation = */ null) - ); + public void expandStackAndSelectBubble(BubbleEntry entry) { + mMainExecutor.execute(() -> { + BubbleController.this.expandStackAndSelectBubble(entry); + }); } @Override @@ -3373,14 +2632,14 @@ public class BubbleController implements ConfigurationChangeListener, } @Override - public void showOrHideNoteBubble(Intent intent, UserHandle user, @Nullable Icon icon) { + public void showOrHideAppBubble(Intent intent, UserHandle user, @Nullable Icon icon) { mMainExecutor.execute( - () -> BubbleController.this.showOrHideNotesBubble(intent, user, icon)); + () -> BubbleController.this.showOrHideAppBubble(intent, user, icon)); } @Override - public boolean isNoteBubbleTaskId(int taskId) { - return mCachedState.mNoteBubbleTaskIds.values().contains(taskId); + public boolean isAppBubbleTaskId(int taskId) { + return mCachedState.mAppBubbleTaskIds.values().contains(taskId); } @Override @@ -3558,90 +2817,4 @@ public class BubbleController implements ConfigurationChangeListener, return mKeyToShownInShadeMap.get(key); } } - - @VisibleForTesting(visibility = VisibleForTesting.Visibility.PRIVATE) - class BubbleTaskViewController implements TaskViewController { - private final TaskViewTransitions mBaseTransitions; - - BubbleTaskViewController(@NonNull TaskViewTransitions baseTransitions) { - mBaseTransitions = baseTransitions; - } - - @Override - public void registerTaskView(TaskViewTaskController tv) { - mBaseTransitions.registerTaskView(tv); - } - - @Override - public void unregisterTaskView(TaskViewTaskController tv) { - mBaseTransitions.unregisterTaskView(tv); - } - - @Override - public void startShortcutActivity(@NonNull TaskViewTaskController destination, - @NonNull ShortcutInfo shortcut, @NonNull ActivityOptions options, - @Nullable Rect launchBounds) { - mBaseTransitions.startShortcutActivity(destination, shortcut, options, launchBounds); - } - - @Override - public void startActivity(@NonNull TaskViewTaskController destination, - @NonNull PendingIntent pendingIntent, @Nullable Intent fillInIntent, - @NonNull ActivityOptions options, @Nullable Rect launchBounds) { - mBaseTransitions.startActivity(destination, pendingIntent, fillInIntent, - options, launchBounds); - } - - @Override - public void startRootTask(@NonNull TaskViewTaskController destination, - ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash, - @Nullable WindowContainerTransaction wct) { - mBaseTransitions.startRootTask(destination, taskInfo, leash, wct); - } - - @Override - public void removeTaskView(@NonNull TaskViewTaskController taskView, - @Nullable WindowContainerToken taskToken) { - mBaseTransitions.removeTaskView(taskView, taskToken); - } - - @Override - public void moveTaskViewToFullscreen(@NonNull TaskViewTaskController taskView) { - final TaskInfo tinfo = taskView.getTaskInfo(); - if (tinfo == null) { - return; - } - Bubble bub = mBubbleData.getBubbleInStackWithTaskId(tinfo.taskId); - if (bub == null) { - return; - } - mBubbleTransitions.startConvertFromBubble(bub, tinfo); - } - - @Override - public void setTaskViewVisible(TaskViewTaskController taskView, boolean visible) { - if (BubbleAnythingFlagHelper.enableCreateAnyBubbleWithForceExcludedFromRecents()) { - // When removing the last bubble, BubbleData has already removed the bubble from - // the stack before this call occurs. Without this check, the TO_BACK transition - // would trigger DesktopModeWindowDecorViewModel#onTaskChanging, which - // incorrectly creates desktop mode window decorations for the removed bubble task - // since AppHandleAndHeaderVisibilityHelper#allowedForTask can't find the task in - // the bubble stack anymore. These decorations then "leak" because the task will be - // closed in the subsequent CLOSE transition. See b/416655338 for more details. - if (!visible && !mBubbleData.hasBubbleInStackWithTaskView(taskView)) { - return; - } - // Use reorder instead of always-on-top with hidden. - mBaseTransitions.setTaskViewVisible(taskView, visible, true /* reorder */, - false /* toggleHiddenOnReorder */); - } else { - mBaseTransitions.setTaskViewVisible(taskView, visible); - } - } - - @Override - public void setTaskBounds(TaskViewTaskController taskView, Rect boundsOnScreen) { - mBaseTransitions.setTaskBounds(taskView, boundsOnScreen); - } - } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleData.java b/wmshell/src/com/android/wm/shell/bubbles/BubbleData.java index 979c39e185..761e025984 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleData.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleData.java @@ -18,17 +18,14 @@ package com.android.wm.shell.bubbles; import static com.android.internal.annotations.VisibleForTesting.Visibility.PRIVATE; import static com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_BUBBLES; import static com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_WITH_CLASS_NAME; -import static com.android.wm.shell.bubbles.Bubbles.dismissReasonToString; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES; import android.annotation.NonNull; import android.app.PendingIntent; -import android.app.TaskInfo; import android.content.Context; -import android.content.Intent; import android.content.LocusId; import android.content.pm.ShortcutInfo; -import android.os.UserHandle; +import android.text.TextUtils; import android.util.ArrayMap; import android.util.ArraySet; import android.util.Log; @@ -38,20 +35,15 @@ import android.view.View; import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.FrameworkStatsLog; import com.android.wm.shell.R; import com.android.wm.shell.bubbles.Bubbles.DismissReason; -import com.android.wm.shell.shared.annotations.ShellBackgroundThread; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.bubbles.BubbleBarLocation; -import com.android.wm.shell.shared.bubbles.BubbleBarUpdate; -import com.android.wm.shell.shared.bubbles.RemovedBubble; -import com.android.wm.shell.taskview.TaskViewTaskController; +import com.android.wm.shell.common.bubbles.BubbleBarUpdate; +import com.android.wm.shell.common.bubbles.RemovedBubble; import java.io.PrintWriter; import java.util.ArrayList; -import java.util.Collection; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; @@ -94,8 +86,6 @@ public class BubbleData { @Nullable Bubble suppressedBubble; @Nullable Bubble unsuppressedBubble; @Nullable String suppressedSummaryGroup; - @Nullable - BubbleBarLocation mBubbleBarLocation; // Pair with Bubble and @DismissReason Integer final List<Pair<Bubble, Integer>> removedBubbles = new ArrayList<>(); @@ -121,7 +111,6 @@ public class BubbleData { || unsuppressedBubble != null || suppressedSummaryChanged || suppressedSummaryGroup != null - || mBubbleBarLocation != null || showOverflowChanged; } @@ -161,11 +150,8 @@ public class BubbleData { : null; for (int i = 0; i < removedBubbles.size(); i++) { Pair<Bubble, Integer> pair = removedBubbles.get(i); - // if the removal happened in launcher, don't send it back - if (pair.second != Bubbles.DISMISS_USER_GESTURE_FROM_LAUNCHER) { - bubbleBarUpdate.removedBubbles.add( - new RemovedBubble(pair.first.getKey(), pair.second)); - } + bubbleBarUpdate.removedBubbles.add( + new RemovedBubble(pair.first.getKey(), pair.second)); } if (orderChanged) { // Include the new order @@ -175,7 +161,6 @@ public class BubbleData { } bubbleBarUpdate.showOverflowChanged = showOverflowChanged; bubbleBarUpdate.showOverflow = !overflowBubbles.isEmpty(); - bubbleBarUpdate.bubbleBarLocation = mBubbleBarLocation; return bubbleBarUpdate; } @@ -186,7 +171,6 @@ public class BubbleData { BubbleBarUpdate getInitialState() { BubbleBarUpdate bubbleBarUpdate = BubbleBarUpdate.createInitialState(); bubbleBarUpdate.shouldShowEducation = shouldShowEducation; - bubbleBarUpdate.showOverflow = !overflowBubbles.isEmpty(); for (int i = 0; i < bubbles.size(); i++) { bubbleBarUpdate.currentBubbleList.add(bubbles.get(i).asBubbleBarBubble()); } @@ -211,7 +195,6 @@ public class BubbleData { private final BubblePositioner mPositioner; private final BubbleEducationController mEducationController; private final Executor mMainExecutor; - private final Executor mBgExecutor; /** Bubbles that are actively in the stack. */ private final List<Bubble> mBubbles; /** Bubbles that aged out to overflow. */ @@ -257,14 +240,12 @@ public class BubbleData { private HashMap<String, String> mSuppressedGroupKeys = new HashMap<>(); public BubbleData(Context context, BubbleLogger bubbleLogger, BubblePositioner positioner, - BubbleEducationController educationController, @ShellMainThread Executor mainExecutor, - @ShellBackgroundThread Executor bgExecutor) { + BubbleEducationController educationController, Executor mainExecutor) { mContext = context; mLogger = bubbleLogger; mPositioner = positioner; mEducationController = educationController; mMainExecutor = mainExecutor; - mBgExecutor = bgExecutor; mOverflow = new BubbleOverflow(context, positioner); mBubbles = new ArrayList<>(); mOverflowBubbles = new ArrayList<>(); @@ -310,11 +291,6 @@ public class BubbleData { return !mBubbles.isEmpty(); } - boolean hasBubbleInStackWithTaskView(@NonNull TaskViewTaskController taskView) { - return getBubbleWithPredicate(mBubbles, - b -> b.getTaskView().getController() == taskView) != null; - } - public boolean hasOverflowBubbles() { return !mOverflowBubbles.isEmpty(); } @@ -372,11 +348,6 @@ public class BubbleData { dispatchPendingChanges(); } - /** Sets the expanded state to false without dispatching changes. */ - public void collapseNoUpdate() { - mExpanded = false; - } - /** * Sets the selected bubble and expands it, but doesn't dispatch changes * to {@link BubbleData.Listener}. This is used for updates coming from launcher whose views @@ -413,23 +384,8 @@ public class BubbleData { * {@link #setExpanded(boolean)} immediately after, which will generate 2 separate updates. */ public void setSelectedBubbleAndExpandStack(BubbleViewProvider bubble) { - setSelectedBubbleAndExpandStack(bubble, /* bubbleBarLocation = */ null); - } - - /** - * Sets the selected bubble and expands it. Also updates bubble bar location if the - * bubbleBarLocation is not {@code null} - * - * <p>This dispatches a single state update for 3 changes and should be used instead of - * calling {@link BubbleController#setBubbleBarLocation(BubbleBarLocation, int)} followed by - * {@link #setSelectedBubbleAndExpandStack(BubbleViewProvider)} immediately after, which will - * generate 2 separate updates. - */ - public void setSelectedBubbleAndExpandStack(BubbleViewProvider bubble, - @Nullable BubbleBarLocation bubbleBarLocation) { setSelectedBubbleInternal(bubble); setExpandedInternal(true); - mStateChange.mBubbleBarLocation = bubbleBarLocation; dispatchPendingChanges(); } @@ -461,20 +417,23 @@ public class BubbleData { Bubble bubbleToReturn = getBubbleInStackWithKey(key); if (bubbleToReturn == null) { - // Check if it's in the overflow - bubbleToReturn = findAndRemoveBubbleFromOverflow(key); - if (bubbleToReturn == null) { - if (entry != null) { - // Not in the overflow, have an entry, so it's a new bubble - bubbleToReturn = new Bubble(entry, - mBubbleMetadataFlagListener, - mCancelledListener, - mMainExecutor, - mBgExecutor); - } else { - // If there's no entry it must be a persisted bubble - bubbleToReturn = persistedBubble; + bubbleToReturn = getOverflowBubbleWithKey(key); + if (bubbleToReturn != null) { + // Promoting from overflow + mOverflowBubbles.remove(bubbleToReturn); + if (mOverflowBubbles.isEmpty()) { + mStateChange.showOverflowChanged = true; } + } else if (mPendingBubbles.containsKey(key)) { + // Update while it was pending + bubbleToReturn = mPendingBubbles.get(key); + } else if (entry != null) { + // New bubble + bubbleToReturn = new Bubble(entry, mBubbleMetadataFlagListener, mCancelledListener, + mMainExecutor); + } else { + // Persisted bubble being promoted + bubbleToReturn = persistedBubble; } } @@ -485,85 +444,14 @@ public class BubbleData { return bubbleToReturn; } - Bubble getOrCreateBubble(ShortcutInfo info) { - String bubbleKey = Bubble.getBubbleKeyForShortcut(info); - Bubble bubbleToReturn = findAndRemoveBubbleFromOverflow(bubbleKey); - if (bubbleToReturn == null) { - bubbleToReturn = Bubble.createShortcutBubble(info, mMainExecutor, mBgExecutor); - } - return bubbleToReturn; - } - - Bubble getOrCreateBubble(Intent intent, UserHandle user) { - String bubbleKey = Bubble.getAppBubbleKeyForApp(intent.getPackage(), user); - Bubble bubbleToReturn = findAndRemoveBubbleFromOverflow(bubbleKey); - if (bubbleToReturn == null) { - bubbleToReturn = Bubble.createAppBubble(intent, user, null, mMainExecutor, mBgExecutor); - } - return bubbleToReturn; - } - - Bubble getOrCreateBubble(PendingIntent pendingIntent, UserHandle user) { - String bubbleKey = Bubble.getAppBubbleKeyForApp(pendingIntent.getCreatorPackage(), user); - Bubble bubbleToReturn = findAndRemoveBubbleFromOverflow(bubbleKey); - if (bubbleToReturn == null) { - bubbleToReturn = Bubble.createAppBubble(pendingIntent, user, mMainExecutor, - mBgExecutor); - } - return bubbleToReturn; - } - - Bubble getOrCreateBubble(TaskInfo taskInfo) { - UserHandle user = UserHandle.of(mCurrentUserId); - String bubbleKey = Bubble.getAppBubbleKeyForTask(taskInfo); - Bubble bubbleToReturn = findAndRemoveBubbleFromOverflow(bubbleKey); - if (bubbleToReturn == null) { - bubbleToReturn = Bubble.createTaskBubble(taskInfo, user, null, mMainExecutor, - mBgExecutor); - } - return bubbleToReturn; - } - - @Nullable - private Bubble findAndRemoveBubbleFromOverflow(String key) { - Bubble bubbleToReturn = getBubbleInStackWithKey(key); - if (bubbleToReturn != null) { - return bubbleToReturn; - } - bubbleToReturn = getOverflowBubbleWithKey(key); - if (bubbleToReturn != null) { - mOverflowBubbles.remove(bubbleToReturn); - // Promoting from overflow - mOverflowBubbles.remove(bubbleToReturn); - if (mOverflowBubbles.isEmpty()) { - mStateChange.showOverflowChanged = true; - } - } else if (mPendingBubbles.containsKey(key)) { - bubbleToReturn = mPendingBubbles.get(key); - } - return bubbleToReturn; - } - - /** - * Calls {@link #notificationEntryUpdated(Bubble, boolean, boolean, BubbleBarLocation)} passing - * {@code null} for bubbleBarLocation. - * - * @see #notificationEntryUpdated(Bubble, boolean, boolean, BubbleBarLocation) - */ - void notificationEntryUpdated(Bubble bubble, boolean suppressFlyout, boolean showInShade) { - notificationEntryUpdated(bubble, suppressFlyout, showInShade, /* bubbleBarLocation = */ - null); - } - /** * When this method is called it is expected that all info in the bubble has completed loading. * @see Bubble#inflate(BubbleViewInfoTask.Callback, Context, BubbleExpandedViewManager, - * BubbleTaskViewFactory, BubblePositioner, BubbleLogger, BubbleStackView, + * BubbleTaskViewFactory, BubblePositioner, BubbleStackView, * com.android.wm.shell.bubbles.bar.BubbleBarLayerView, * com.android.launcher3.icons.BubbleIconFactory, boolean) */ - void notificationEntryUpdated(Bubble bubble, boolean suppressFlyout, boolean showInShade, - @Nullable BubbleBarLocation bubbleBarLocation) { + void notificationEntryUpdated(Bubble bubble, boolean suppressFlyout, boolean showInShade) { mPendingBubbles.remove(bubble.getKey()); // No longer pending once we're here Bubble prevBubble = getBubbleInStackWithKey(bubble.getKey()); suppressFlyout |= !bubble.isTextChanged(); @@ -611,38 +499,15 @@ public class BubbleData { doSuppress(bubble); } } - mStateChange.mBubbleBarLocation = bubbleBarLocation; dispatchPendingChanges(); } - /** Dismisses the bubble with the matching key, if it exists. */ - public void dismissBubbleWithKey(String key, @DismissReason int reason) { - dismissBubbleWithKey(key, reason, mTimeSource.currentTimeMillis()); - } - /** * Dismisses the bubble with the matching key, if it exists. - * - * <p>This is used when the bubble was dismissed in launcher, where the {@code removalTimestamp} - * represents when the removal happened and can be used to check whether or not the bubble has - * been updated after the removal. If no updates, it's safe to remove the bubble, otherwise the - * removal is ignored. */ - public void dismissBubbleWithKey(String key, @DismissReason int reason, long removalTimestamp) { - boolean shouldRemove = true; - // if the bubble was removed from launcher, verify that the removal happened after the last - // time it was updated - if (reason == Bubbles.DISMISS_USER_GESTURE_FROM_LAUNCHER) { - // if the bubble was removed from launcher it must be active. - Bubble bubble = getBubbleInStackWithKey(key); - if (bubble != null && bubble.getLastActivity() > removalTimestamp) { - shouldRemove = false; - } - } - if (shouldRemove) { - doRemove(key, reason); - dispatchPendingChanges(); - } + public void dismissBubbleWithKey(String key, @DismissReason int reason) { + doRemove(key, reason); + dispatchPendingChanges(); } /** @@ -734,7 +599,7 @@ public class BubbleData { /** Removes all bubbles for the given user. */ public void removeBubblesForUser(int userId) { - final List<Bubble> removedBubbles = filterAllBubbles(bubble -> + List<Bubble> removedBubbles = filterAllBubbles(bubble -> userId == bubble.getUser().getIdentifier()); for (Bubble b : removedBubbles) { doRemove(b.getKey(), Bubbles.DISMISS_USER_ACCOUNT_REMOVED); @@ -820,14 +685,11 @@ public class BubbleData { if (hasOverflowBubbleWithKey(key) && shouldRemoveHiddenBubble) { Bubble b = getOverflowBubbleWithKey(key); - ProtoLog.d(WM_SHELL_BUBBLES, "doRemove - cancel overflow bubble=%s reason=%s", - key, dismissReasonToString(reason)); + ProtoLog.d(WM_SHELL_BUBBLES, "doRemove - cancel overflow bubble=%s", key); if (b != null) { b.stopInflation(); } - if (!mPositioner.isShowingInBubbleBar()) { - mLogger.logStackOverflowRemove(b, reason); - } + mLogger.logOverflowRemove(b, reason); mOverflowBubbles.remove(b); mStateChange.bubbleRemoved(b, reason); mStateChange.removedOverflowBubble = b; @@ -835,8 +697,7 @@ public class BubbleData { } if (hasSuppressedBubbleWithKey(key) && shouldRemoveHiddenBubble) { Bubble b = getSuppressedBubbleWithKey(key); - ProtoLog.d(WM_SHELL_BUBBLES, "doRemove - cancel suppressed bubble=%s reason=%s", - key, dismissReasonToString(reason)); + ProtoLog.d(WM_SHELL_BUBBLES, "doRemove - cancel suppressed bubble=%s", key); if (b != null) { mSuppressedBubbles.remove(b.getLocusId()); b.stopInflation(); @@ -846,8 +707,7 @@ public class BubbleData { return; } Bubble bubbleToRemove = mBubbles.get(indexToRemove); - ProtoLog.d(WM_SHELL_BUBBLES, "doRemove=%s reason=%s", bubbleToRemove.getKey(), - dismissReasonToString(reason)); + ProtoLog.d(WM_SHELL_BUBBLES, "doRemove=%s", bubbleToRemove.getKey()); bubbleToRemove.stopInflation(); overflowBubble(reason, bubbleToRemove); @@ -872,33 +732,11 @@ public class BubbleData { setNewSelectedIndex(indexToRemove); } maybeSendDeleteIntent(reason, bubbleToRemove); - - if (mPositioner.isShowingInBubbleBar()) { - logBubbleBarBubbleRemoved(bubbleToRemove, reason); - } - } - - private void logBubbleBarBubbleRemoved(Bubble bubble, @DismissReason int reason) { - switch (reason) { - case Bubbles.DISMISS_NOTIF_CANCEL: - mLogger.log(bubble, BubbleLogger.Event.BUBBLE_BAR_BUBBLE_REMOVED_CANCELED); - break; - case Bubbles.DISMISS_TASK_FINISHED: - mLogger.log(bubble, BubbleLogger.Event.BUBBLE_BAR_BUBBLE_ACTIVITY_FINISH); - break; - case Bubbles.DISMISS_BLOCKED: - case Bubbles.DISMISS_NO_LONGER_BUBBLE: - mLogger.log(bubble, BubbleLogger.Event.BUBBLE_BAR_BUBBLE_REMOVED_BLOCKED); - break; - default: - // skip logging other events - } } private void setNewSelectedIndex(int indexOfSelected) { if (mBubbles.isEmpty()) { - Log.w(TAG, "Bubbles list empty when attempting to select index: " - + indexOfSelected); + Log.w(TAG, "Bubbles list empty when attempting to select index: " + indexOfSelected); return; } // Move selection to the new bubble at the same position. @@ -953,9 +791,8 @@ public class BubbleData { || reason == Bubbles.DISMISS_RELOAD_FROM_DISK)) { return; } - ProtoLog.d(WM_SHELL_BUBBLES, "overflowBubble=%s reason=%s", bubble.getKey(), - dismissReasonToString(reason)); - mLogger.logOverflowAdd(bubble, mPositioner.isShowingInBubbleBar(), reason); + ProtoLog.d(WM_SHELL_BUBBLES, "overflowBubble=%s", bubble.getKey()); + mLogger.logOverflowAdd(bubble, reason); if (mOverflowBubbles.isEmpty()) { mStateChange.showOverflowChanged = true; } @@ -968,17 +805,14 @@ public class BubbleData { Bubble oldest = mOverflowBubbles.get(mOverflowBubbles.size() - 1); ProtoLog.d(WM_SHELL_BUBBLES, "overflow full, remove=%s", oldest.getKey()); mStateChange.bubbleRemoved(oldest, Bubbles.DISMISS_OVERFLOW_MAX_REACHED); - if (!mPositioner.isShowingInBubbleBar()) { - // Only logged for bubbles in stack view - mLogger.log(bubble, BubbleLogger.Event.BUBBLE_OVERFLOW_REMOVE_MAX_REACHED); - } + mLogger.log(bubble, BubbleLogger.Event.BUBBLE_OVERFLOW_REMOVE_MAX_REACHED); mOverflowBubbles.remove(oldest); mStateChange.removedOverflowBubble = oldest; } } public void dismissAll(@DismissReason int reason) { - ProtoLog.d(WM_SHELL_BUBBLES, "dismissAll reason=%s", dismissReasonToString(reason)); + ProtoLog.d(WM_SHELL_BUBBLES, "dismissAll reason=%d", reason); if (mBubbles.isEmpty() && mSuppressedBubbles.isEmpty()) { return; } @@ -1234,7 +1068,7 @@ public class BubbleData { @VisibleForTesting(visibility = PRIVATE) @Nullable - Bubble getAnyBubbleWithKey(String key) { + Bubble getAnyBubbleWithkey(String key) { Bubble b = getBubbleInStackWithKey(key); if (b == null) { b = getOverflowBubbleWithKey(key); @@ -1245,38 +1079,77 @@ public class BubbleData { return b; } - /** @return the bubble in the stack that matches the provided taskId. */ + /** @return any bubble (in the stack or the overflow) that matches the provided shortcutId. */ @Nullable - Bubble getBubbleInStackWithTaskId(int taskId) { - return getBubbleWithPredicate(mBubbles, b -> b.getTaskId() == taskId); - } - - /** @return the bubble in the stack that matches the provided key. */ - @Nullable - public Bubble getBubbleInStackWithKey(String key) { - return getBubbleWithPredicate(mBubbles, b -> b.getKey().equals(key)); - } - - /** @return the bubble in the stack that matches the provided locusId. */ - @Nullable - private Bubble getBubbleInStackWithLocusId(@Nullable LocusId locusId) { - if (locusId == null) { + Bubble getAnyBubbleWithShortcutId(String shortcutId) { + if (TextUtils.isEmpty(shortcutId)) { return null; } - return getBubbleWithPredicate(mBubbles, b -> locusId.equals(b.getLocusId())); + for (int i = 0; i < mBubbles.size(); i++) { + Bubble bubble = mBubbles.get(i); + String bubbleShortcutId = bubble.getShortcutInfo() != null + ? bubble.getShortcutInfo().getId() + : bubble.getMetadataShortcutId(); + if (shortcutId.equals(bubbleShortcutId)) { + return bubble; + } + } + + for (int i = 0; i < mOverflowBubbles.size(); i++) { + Bubble bubble = mOverflowBubbles.get(i); + String bubbleShortcutId = bubble.getShortcutInfo() != null + ? bubble.getShortcutInfo().getId() + : bubble.getMetadataShortcutId(); + if (shortcutId.equals(bubbleShortcutId)) { + return bubble; + } + } + return null; } - /** @return the bubble in the stack that matches the provided icon view. */ + @VisibleForTesting(visibility = PRIVATE) @Nullable - Bubble getBubbleInStackWithView(View view) { - return getBubbleWithPredicate(mBubbles, b -> - b.getIconView() != null && b.getIconView().equals(view)); + public Bubble getBubbleInStackWithKey(String key) { + for (int i = 0; i < mBubbles.size(); i++) { + Bubble bubble = mBubbles.get(i); + if (bubble.getKey().equals(key)) { + return bubble; + } + } + return null; } - /** @return the overflow bubble that matches the provided key. */ @Nullable + private Bubble getBubbleInStackWithLocusId(LocusId locusId) { + if (locusId == null) return null; + for (int i = 0; i < mBubbles.size(); i++) { + Bubble bubble = mBubbles.get(i); + if (locusId.equals(bubble.getLocusId())) { + return bubble; + } + } + return null; + } + + @Nullable + Bubble getBubbleWithView(View view) { + for (int i = 0; i < mBubbles.size(); i++) { + Bubble bubble = mBubbles.get(i); + if (bubble.getIconView() != null && bubble.getIconView().equals(view)) { + return bubble; + } + } + return null; + } + public Bubble getOverflowBubbleWithKey(String key) { - return getBubbleWithPredicate(mOverflowBubbles, b -> b.getKey().equals(key)); + for (int i = 0; i < mOverflowBubbles.size(); i++) { + Bubble bubble = mOverflowBubbles.get(i); + if (bubble.getKey().equals(key)) { + return bubble; + } + } + return null; } /** @@ -1288,7 +1161,12 @@ public class BubbleData { @Nullable @VisibleForTesting(visibility = PRIVATE) public Bubble getSuppressedBubbleWithKey(String key) { - return getBubbleWithPredicate(mSuppressedBubbles.values(), b -> b.getKey().equals(key)); + for (Bubble b : mSuppressedBubbles.values()) { + if (b.getKey().equals(key)) { + return b; + } + } + return null; } /** @@ -1297,32 +1175,11 @@ public class BubbleData { * @param key notification key * @return bubble that matches or null */ - @Nullable @VisibleForTesting(visibility = PRIVATE) public Bubble getPendingBubbleWithKey(String key) { - return getBubbleWithPredicate(mPendingBubbles.values(), b -> b.getKey().equals(key)); - } - - @Nullable - private static Bubble getBubbleWithPredicate(@NonNull final List<Bubble> bubbles, - @NonNull final Predicate<Bubble> predicate) { - // Uses an indexed for loop for optimized performance when iterating over ArrayLists. - for (int i = 0; i < bubbles.size(); i++) { - final Bubble bubble = bubbles.get(i); - if (predicate.test(bubble)) { - return bubble; - } - } - return null; - } - - @Nullable - private static Bubble getBubbleWithPredicate(@NonNull final Collection<Bubble> bubbles, - @NonNull final Predicate<Bubble> predicate) { - // Uses an enhanced for loop for general collections, which may not support indexed access. - for (final Bubble bubble : bubbles) { - if (predicate.test(bubble)) { - return bubble; + for (Bubble b : mPendingBubbles.values()) { + if (b.getKey().equals(key)) { + return b; } } return null; @@ -1333,7 +1190,7 @@ public class BubbleData { * bubbles (i.e. pending, suppressed, active, and overflowed). */ private List<Bubble> filterAllBubbles(Predicate<Bubble> predicate) { - final ArrayList<Bubble> matchingBubbles = new ArrayList<>(); + ArrayList<Bubble> matchingBubbles = new ArrayList<>(); for (Bubble b : mPendingBubbles.values()) { if (predicate.test(b)) { matchingBubbles.add(b); diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleDataRepository.kt b/wmshell/src/com/android/wm/shell/bubbles/BubbleDataRepository.kt index 818ba45bec..df12999afc 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleDataRepository.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleDataRepository.kt @@ -31,9 +31,6 @@ import com.android.wm.shell.bubbles.storage.BubbleEntity import com.android.wm.shell.bubbles.storage.BubblePersistentRepository import com.android.wm.shell.bubbles.storage.BubbleVolatileRepository import com.android.wm.shell.common.ShellExecutor -import com.android.wm.shell.shared.annotations.ShellBackgroundThread -import com.android.wm.shell.shared.annotations.ShellMainThread -import java.util.concurrent.Executor import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Job @@ -44,8 +41,7 @@ import kotlinx.coroutines.yield class BubbleDataRepository( private val launcherApps: LauncherApps, - @ShellMainThread private val mainExecutor: ShellExecutor, - @ShellBackgroundThread private val bgExecutor: Executor, + private val mainExecutor: ShellExecutor, private val persistentRepository: BubblePersistentRepository, ) { private val volatileRepository = BubbleVolatileRepository(launcherApps) @@ -263,8 +259,8 @@ class BubbleDataRepository( entity.locus, entity.isDismissable, mainExecutor, - bgExecutor, - bubbleMetadataFlagListener) + bubbleMetadataFlagListener + ) } } mainExecutor.execute { cb(bubbles) } diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleEducationController.kt b/wmshell/src/com/android/wm/shell/bubbles/BubbleEducationController.kt index ed23986d0f..bd4708259b 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleEducationController.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleEducationController.kt @@ -83,4 +83,4 @@ class BubbleEducationController(private val context: Context) { /** Convenience extension method to check if the bubble is a conversation bubble */ private val BubbleViewProvider.isConversationBubble: Boolean - get() = if (this is Bubble) isChat else false + get() = if (this is Bubble) isConversation else false diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleExpandedView.java b/wmshell/src/com/android/wm/shell/bubbles/BubbleExpandedView.java index 8cb66596c3..c7ccd50af5 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleExpandedView.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleExpandedView.java @@ -16,7 +16,7 @@ package com.android.wm.shell.bubbles; -import static android.app.ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS; +import static android.app.ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED; import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.content.Intent.FLAG_ACTIVITY_MULTIPLE_TASK; import static android.content.Intent.FLAG_ACTIVITY_NEW_DOCUMENT; @@ -26,13 +26,10 @@ import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT; import static com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_BUBBLES; import static com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_WITH_CLASS_NAME; import static com.android.wm.shell.bubbles.BubblePositioner.MAX_HEIGHT; -import static com.android.wm.shell.bubbles.util.BubbleUtils.getEnterBubbleTransaction; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES; -import static com.android.wm.shell.shared.TypefaceUtils.setTypeface; import android.annotation.NonNull; import android.annotation.SuppressLint; -import android.app.ActivityManager.RunningTaskInfo; import android.app.ActivityOptions; import android.app.PendingIntent; import android.content.ComponentName; @@ -41,6 +38,7 @@ import android.content.Intent; import android.content.res.Resources; import android.content.res.TypedArray; import android.graphics.Bitmap; +import android.graphics.Color; import android.graphics.CornerPathEffect; import android.graphics.Outline; import android.graphics.Paint; @@ -64,22 +62,17 @@ import android.view.accessibility.AccessibilityNodeInfo; import android.widget.FrameLayout; import android.widget.LinearLayout; import android.window.ScreenCapture; -import android.window.WindowContainerToken; -import android.window.WindowContainerTransaction; import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.policy.ScreenDecorationsUtils; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.Flags; import com.android.wm.shell.R; import com.android.wm.shell.common.AlphaOptimizedButton; -import com.android.wm.shell.shared.TriangleShape; -import com.android.wm.shell.shared.TypefaceUtils; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; +import com.android.wm.shell.common.TriangleShape; import com.android.wm.shell.taskview.TaskView; -import com.android.wm.shell.taskview.TaskViewTaskController; import java.io.PrintWriter; @@ -204,8 +197,6 @@ public class BubbleExpandedView extends LinearLayout { */ private final FrameLayout mExpandedViewContainer = new FrameLayout(getContext()); - private TaskView.Listener mCurrentTaskViewListener; - private final TaskView.Listener mTaskViewListener = new TaskView.Listener() { private boolean mInitialized = false; private boolean mDestroyed = false; @@ -231,60 +222,39 @@ public class BubbleExpandedView extends LinearLayout { Rect launchBounds = new Rect(); mTaskView.getBoundsOnScreen(launchBounds); - options.setTaskAlwaysOnTop(true /* alwaysOnTop */); + options.setTaskAlwaysOnTop(true); + options.setLaunchedFromBubble(true); options.setPendingIntentBackgroundActivityStartMode( - MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS); + MODE_BACKGROUND_ACTIVITY_START_ALLOWED); + options.setPendingIntentBackgroundActivityLaunchAllowedByPermission(true); - final boolean isShortcutBubble = (mBubble.hasMetadataShortcutId() - || (mBubble.isShortcut() - && BubbleAnythingFlagHelper.enableCreateAnyBubble())); + Intent fillInIntent = new Intent(); + // Apply flags to make behaviour match documentLaunchMode=always. + fillInIntent.addFlags(FLAG_ACTIVITY_NEW_DOCUMENT); + fillInIntent.addFlags(FLAG_ACTIVITY_MULTIPLE_TASK); - // TODO - currently based on type, really it's what the "launch item" is. - if (mBubble.isApp() || mBubble.isNote()) { + if (mBubble.isAppBubble()) { Context context = mContext.createContextAsUser( mBubble.getUser(), Context.CONTEXT_RESTRICTED); - Intent fillInIntent = new Intent(); PendingIntent pi = PendingIntent.getActivity( context, /* requestCode= */ 0, - mBubble.getIntent(), - // Needs to be mutable for the fillInIntent - PendingIntent.FLAG_MUTABLE | PendingIntent.FLAG_UPDATE_CURRENT, + mBubble.getAppBubbleIntent() + .addFlags(FLAG_ACTIVITY_NEW_DOCUMENT) + .addFlags(FLAG_ACTIVITY_MULTIPLE_TASK), + PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT, /* options= */ null); - final WindowContainerToken rootToken = mManager.getAppBubbleRootTaskToken(); - if (rootToken != null) { - options.setLaunchRootTask(rootToken); - } else { - options.setLaunchNextToBubble(true /* launchNextToBubble */); - } - mTaskView.startActivity(pi, fillInIntent, options, launchBounds); - } else if (!mIsOverflow && isShortcutBubble) { - ProtoLog.v(WM_SHELL_BUBBLES, "startingShortcutBubble=%s", getBubbleKey()); - if (mBubble.isChat()) { - options.setLaunchedFromBubble(true); - options.setApplyActivityFlagsForBubbles(true); - } else { - final WindowContainerToken rootToken = - mManager.getAppBubbleRootTaskToken(); - if (rootToken != null) { - options.setLaunchRootTask(rootToken); - } else { - options.setLaunchNextToBubble(true /* launchNextToBubble */); - } - options.setApplyMultipleTaskFlagForShortcut(true); - } + mTaskView.startActivity(pi, /* fillInIntent= */ null, options, + launchBounds); + } else if (!mIsOverflow && mBubble.hasMetadataShortcutId()) { + options.setApplyActivityFlagsForBubbles(true); mTaskView.startShortcutActivity(mBubble.getShortcutInfo(), options, launchBounds); } else { - options.setLaunchedFromBubble(true); if (mBubble != null) { - mBubble.setPendingIntentActive(); + mBubble.setIntentActive(); } - final Intent fillInIntent = new Intent(); - // Apply flags to make behaviour match documentLaunchMode=always. - fillInIntent.addFlags(FLAG_ACTIVITY_NEW_DOCUMENT); - fillInIntent.addFlags(FLAG_ACTIVITY_MULTIPLE_TASK); mTaskView.startActivity(mPendingIntent, fillInIntent, options, launchBounds); } @@ -292,8 +262,8 @@ public class BubbleExpandedView extends LinearLayout { // If there's a runtime exception here then there's something // wrong with the intent, we can't really recover / try to populate // the bubble again so we'll just remove it. - Log.e(TAG, "Exception while displaying bubble: " + getBubbleKey() - + "; removing bubble", e); + Log.w(TAG, "Exception while displaying bubble: " + getBubbleKey() + + ", " + e.getMessage() + "; removing bubble"); mManager.removeBubble(getBubbleKey(), Bubbles.DISMISS_INVALID_INTENT); } }); @@ -312,18 +282,11 @@ public class BubbleExpandedView extends LinearLayout { // The taskId is saved to use for removeTask, preventing appearance in recent tasks. mTaskId = taskId; - if (mBubble != null && mBubble.isNote()) { + if (mBubble != null && mBubble.isAppBubble()) { // Let the controller know sooner what the taskId is. - mManager.setNoteBubbleTaskId(mBubble.getKey(), mTaskId); + mManager.setAppBubbleTaskId(mBubble.getKey(), mTaskId); } - final TaskViewTaskController tvc = mTaskView.getController(); - final boolean isAppBubble = mBubble != null - && (mBubble.isApp() || mBubble.isShortcut()); - final WindowContainerTransaction wct = getEnterBubbleTransaction( - tvc.getTaskToken(), isAppBubble); - tvc.getTaskOrganizer().applyTransaction(wct); - // With the task org, the taskAppeared callback will only happen once the task has // already drawn setContentVisibility(true); @@ -410,7 +373,6 @@ public class BubbleExpandedView extends LinearLayout { // ==> activity view // ==> manage button bringChildToFront(mManageButton); - setManageClickListener(); applyThemeAttrs(); @@ -487,47 +449,7 @@ public class BubbleExpandedView extends LinearLayout { mTaskView = bubbleTaskView.getTaskView(); // reset the insets that might left after TaskView is shown in BubbleBarExpandedView mTaskView.setCaptionInsets(null); - if (Flags.enableBubbleTaskViewListener()) { - mCurrentTaskViewListener = new BubbleTaskViewListener(mContext, bubbleTaskView, - /* viewParent= */ this, expandedViewManager, - new BubbleTaskViewListener.Callback() { - @Override - public void onTaskCreated() { - // The taskId is saved to use for removeTask, - // preventing appearance in recent tasks. - BubbleTaskViewListener listener = mCurrentTaskViewListener != null - ? ((BubbleTaskViewListener) mCurrentTaskViewListener) - : null; - mTaskId = listener != null - ? listener.getTaskId() - : bubbleTaskView.getTaskId(); - setContentVisibility(true); - } - - @Override - public void onContentVisibilityChanged(boolean visible) { - setContentVisibility(visible); - } - - @Override - public void onBackPressed() { - mStackView.onBackPressed(); - } - - @Override - public void onTaskRemovalStarted() { - // nothing to do / handled in listener. - } - - @Override - public void onTaskInfoChanged(RunningTaskInfo taskInfo) { - // nothing to do / handled in listener. - } - }); - } else { - mCurrentTaskViewListener = mTaskViewListener; - bubbleTaskView.setDelegateListener(mCurrentTaskViewListener); - } + bubbleTaskView.setDelegateListener(mTaskViewListener); // set a fixed width so it is not recalculated as part of a rotation. the width will be // updated manually after the rotation. @@ -538,12 +460,9 @@ public class BubbleExpandedView extends LinearLayout { } mExpandedViewContainer.addView(mTaskView, lp); bringChildToFront(mTaskView); - - if (!Flags.enableBubbleTaskViewListener()) { - if (bubbleTaskView.isCreated()) { - mCurrentTaskViewListener.onTaskCreated( - bubbleTaskView.getTaskId(), bubbleTaskView.getComponentName()); - } + if (bubbleTaskView.isCreated()) { + mTaskViewListener.onTaskCreated( + bubbleTaskView.getTaskId(), bubbleTaskView.getComponentName()); } } } @@ -583,9 +502,7 @@ public class BubbleExpandedView extends LinearLayout { mManageButton = (AlphaOptimizedButton) LayoutInflater.from(ctw).inflate( R.layout.bubble_manage_button, this /* parent */, false /* attach */); addView(mManageButton); - setTypeface(mManageButton, TypefaceUtils.FontFamily.GSF_LABEL_LARGE); mManageButton.setVisibility(visibility); - setManageClickListener(); post(() -> { int touchAreaHeight = getResources().getDimensionPixelSize( @@ -621,15 +538,15 @@ public class BubbleExpandedView extends LinearLayout { void applyThemeAttrs() { final TypedArray ta = mContext.obtainStyledAttributes(new int[]{ - android.R.attr.dialogCornerRadius}); + android.R.attr.dialogCornerRadius, + com.android.internal.R.attr.materialColorSurfaceBright, + com.android.internal.R.attr.materialColorSurfaceContainerHigh}); boolean supportsRoundedCorners = ScreenDecorationsUtils.supportsRoundedCornersOnWindows( mContext.getResources()); mCornerRadius = supportsRoundedCorners ? ta.getDimensionPixelSize(0, 0) : 0; - mBackgroundColorFloating = mContext.getColor( - com.android.internal.R.color.materialColorSurfaceBright); + mBackgroundColorFloating = ta.getColor(1, Color.WHITE); mExpandedViewContainer.setBackgroundColor(mBackgroundColorFloating); - final int manageMenuBg = mContext.getColor( - com.android.internal.R.color.materialColorSurfaceContainerHigh); + final int manageMenuBg = ta.getColor(2, Color.WHITE); ta.recycle(); if (mManageButton != null) { mManageButton.getBackground().setColorFilter(manageMenuBg, PorterDuff.Mode.SRC_IN); @@ -642,10 +559,6 @@ public class BubbleExpandedView extends LinearLayout { updateManageButtonIfExists(); } - public float getCornerRadius() { - return mCornerRadius; - } - /** * Updates the size and visuals of the pointer if {@link #mPointerView} is initialized. * Does nothing otherwise. @@ -734,8 +647,9 @@ public class BubbleExpandedView extends LinearLayout { } } - private void setManageClickListener() { - mManageButton.setOnClickListener(v -> mStackView.onManageBubbleClicked()); + // TODO: Could listener be passed when we pass StackView / can we avoid setting this like this + void setManageClickListener(OnClickListener manageClickListener) { + mManageButton.setOnClickListener(manageClickListener); } /** @@ -771,6 +685,11 @@ public class BubbleExpandedView extends LinearLayout { } } + /** Sets the alpha for the pointer. */ + public void setPointerAlpha(float alpha) { + mPointerView.setAlpha(alpha); + } + /** * Get alpha from underlying {@code TaskView} if this view is for a bubble. * Or get alpha for the overflow view if this view is for overflow. @@ -873,8 +792,25 @@ public class BubbleExpandedView extends LinearLayout { onContainerClipUpdate(); } - /** Updates the clip bounds. */ - public void onContainerClipUpdate() { + /** + * Sets the clipping for the view. + */ + public void setTaskViewClip(Rect rect) { + mLeftClip = rect.left; + mTopClip = rect.top; + mRightClip = rect.right; + mBottomClip = rect.bottom; + onContainerClipUpdate(); + } + + /** + * Returns a rect representing the clipping for the view. + */ + public Rect getTaskViewClip() { + return new Rect(mLeftClip, mTopClip, mRightClip, mBottom); + } + + private void onContainerClipUpdate() { if (mTopClip == 0 && mBottomClip == 0 && mRightClip == 0 && mLeftClip == 0) { if (mIsClipping) { mIsClipping = false; @@ -980,17 +916,8 @@ public class BubbleExpandedView extends LinearLayout { Log.w(TAG, "Stack is null for bubble: " + bubble); return; } - boolean isNew; - if (mCurrentTaskViewListener instanceof BubbleTaskViewListener) { - isNew = ((BubbleTaskViewListener) mCurrentTaskViewListener).setBubble(bubble); - } else { - isNew = mBubble == null || didBackingContentChange(bubble); - } - boolean isUpdate = bubble != null && mBubble != null - && bubble.getKey().equals(mBubble.getKey()); - ProtoLog.d(WM_SHELL_BUBBLES, "BubbleExpandedView - update bubble=%s; isNew=%b; isUpdate=%b", - bubble.getKey(), isNew, isUpdate); - if (isNew || isUpdate) { + boolean isNew = mBubble == null || didBackingContentChange(bubble); + if (isNew || bubble.getKey().equals(mBubble.getKey())) { mBubble = bubble; mManageButton.setContentDescription(getResources().getString( R.string.bubbles_settings_button_description, bubble.getAppName())); @@ -1008,7 +935,7 @@ public class BubbleExpandedView extends LinearLayout { }); if (isNew) { - mPendingIntent = mBubble.getPendingIntent(); + mPendingIntent = mBubble.getBubbleIntent(); if ((mPendingIntent != null || mBubble.hasMetadataShortcutId()) && mTaskView != null) { setContentVisibility(false); @@ -1035,7 +962,7 @@ public class BubbleExpandedView extends LinearLayout { */ private boolean didBackingContentChange(Bubble newBubble) { boolean prevWasIntentBased = mBubble != null && mPendingIntent != null; - boolean newIsIntentBased = newBubble.getPendingIntent() != null; + boolean newIsIntentBased = newBubble.getBubbleIntent() != null; return prevWasIntentBased != newIsIntentBased; } @@ -1188,6 +1115,13 @@ public class BubbleExpandedView extends LinearLayout { return mCurrentPointer == mRightPointer; } + /** + * Return width of the current pointer + */ + public int getPointerWidth() { + return mPointerWidth; + } + /** * Position of the manage button displayed in the expanded view. Used for placing user * education about the manage button. @@ -1214,7 +1148,5 @@ public class BubbleExpandedView extends LinearLayout { pw.print(prefix); pw.println("BubbleExpandedView:"); pw.print(prefix); pw.print(" taskId: "); pw.println(mTaskId); pw.print(prefix); pw.print(" stackView: "); pw.println(mStackView); - pw.print(prefix); pw.print(" contentVisibility: "); pw.println(mIsContentVisible); - pw.print(prefix); pw.print(" isAnimating: "); pw.println(mIsAnimating); } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleExpandedViewManager.kt b/wmshell/src/com/android/wm/shell/bubbles/BubbleExpandedViewManager.kt index 8f78252c85..3d9bf032c1 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleExpandedViewManager.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleExpandedViewManager.kt @@ -16,10 +16,6 @@ package com.android.wm.shell.bubbles -import android.app.ActivityManager -import android.window.WindowContainerToken -import com.android.wm.shell.shared.bubbles.BubbleBarLocation - /** Manager interface for bubble expanded views. */ interface BubbleExpandedViewManager { @@ -30,16 +26,10 @@ interface BubbleExpandedViewManager { fun promoteBubbleFromOverflow(bubble: Bubble) fun removeBubble(key: String, reason: Int) fun dismissBubble(bubble: Bubble, reason: Int) - fun setNoteBubbleTaskId(key: String, taskId: Int) + fun setAppBubbleTaskId(key: String, taskId: Int) fun isStackExpanded(): Boolean fun isShowingAsBubbleBar(): Boolean fun hideCurrentInputMethod() - fun updateBubbleBarLocation( - location: BubbleBarLocation, - @BubbleBarLocation.UpdateSource source: Int, - ) - fun getAppBubbleRootTaskToken(): WindowContainerToken? - fun shouldBeAppBubble(taskInfo: ActivityManager.RunningTaskInfo): Boolean companion object { /** @@ -77,8 +67,8 @@ interface BubbleExpandedViewManager { controller.dismissBubble(bubble, reason) } - override fun setNoteBubbleTaskId(key: String, taskId: Int) { - controller.setNoteBubbleTaskId(key, taskId) + override fun setAppBubbleTaskId(key: String, taskId: Int) { + controller.setAppBubbleTaskId(key, taskId) } override fun isStackExpanded(): Boolean = controller.isStackExpanded @@ -86,21 +76,8 @@ interface BubbleExpandedViewManager { override fun isShowingAsBubbleBar(): Boolean = controller.isShowingAsBubbleBar override fun hideCurrentInputMethod() { - controller.hideCurrentInputMethod(null) + controller.hideCurrentInputMethod() } - - override fun updateBubbleBarLocation( - location: BubbleBarLocation, - @BubbleBarLocation.UpdateSource source: Int, - ) { - controller.setBubbleBarLocation(location, source) - } - - override fun getAppBubbleRootTaskToken(): WindowContainerToken? = - controller.appBubbleRootTaskInfo?.token - - override fun shouldBeAppBubble(taskInfo: ActivityManager.RunningTaskInfo): Boolean = - controller.shouldBeAppBubble(taskInfo) } } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleFlyoutView.java b/wmshell/src/com/android/wm/shell/bubbles/BubbleFlyoutView.java index 92007a4df7..42de401d9d 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleFlyoutView.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleFlyoutView.java @@ -19,8 +19,8 @@ package com.android.wm.shell.bubbles; import static android.graphics.Paint.ANTI_ALIAS_FLAG; import static android.graphics.Paint.FILTER_BITMAP_FLAG; -import static com.android.wm.shell.shared.animation.Interpolators.ALPHA_IN; -import static com.android.wm.shell.shared.animation.Interpolators.ALPHA_OUT; +import static com.android.wm.shell.animation.Interpolators.ALPHA_IN; +import static com.android.wm.shell.animation.Interpolators.ALPHA_OUT; import android.animation.ArgbEvaluator; import android.content.Context; @@ -28,6 +28,7 @@ import android.content.res.Configuration; import android.content.res.Resources; import android.content.res.TypedArray; import android.graphics.Canvas; +import android.graphics.Color; import android.graphics.Matrix; import android.graphics.Outline; import android.graphics.Paint; @@ -49,8 +50,7 @@ import android.widget.TextView; import androidx.annotation.Nullable; import com.android.wm.shell.R; -import com.android.wm.shell.shared.TriangleShape; -import com.android.wm.shell.shared.TypefaceUtils; +import com.android.wm.shell.common.TriangleShape; /** * Flyout view that appears as a 'chat bubble' alongside the bubble stack. The flyout can visually @@ -166,10 +166,8 @@ public class BubbleFlyoutView extends FrameLayout { LayoutInflater.from(context).inflate(R.layout.bubble_flyout, this, true); mFlyoutTextContainer = findViewById(R.id.bubble_flyout_text_container); mSenderText = findViewById(R.id.bubble_flyout_name); - TypefaceUtils.setTypeface(mSenderText, TypefaceUtils.FontFamily.GSF_LABEL_LARGE); mSenderAvatar = findViewById(R.id.bubble_flyout_avatar); mMessageText = mFlyoutTextContainer.findViewById(R.id.bubble_flyout_text); - TypefaceUtils.setTypeface(mMessageText, TypefaceUtils.FontFamily.GSF_BODY_MEDIUM); final Resources res = getResources(); mFlyoutPadding = res.getDimensionPixelSize(R.dimen.bubble_flyout_padding_x); @@ -211,7 +209,7 @@ public class BubbleFlyoutView extends FrameLayout { mPointerSize, mPointerSize, false /* isPointingLeft */)); mRightTriangleShape.setBounds(0, 0, mPointerSize, mPointerSize); - applyConfigurationColors(); + applyConfigurationColors(getResources().getConfiguration()); } @Override @@ -442,23 +440,29 @@ public class BubbleFlyoutView extends FrameLayout { boolean flagsChanged = nightModeFlags != mNightModeFlags; if (flagsChanged) { mNightModeFlags = nightModeFlags; - applyConfigurationColors(); + applyConfigurationColors(configuration); } return flagsChanged; } - private void applyConfigurationColors() { - mFloatingBackgroundColor = mContext.getColor( - com.android.internal.R.color.materialColorSurfaceContainer); - mSenderText.setTextColor( - mContext.getColor(com.android.internal.R.color.materialColorOnSurface)); - mMessageText.setTextColor( - mContext.getColor(com.android.internal.R.color.materialColorOnSurfaceVariant)); - - mBgPaint.setColor(mFloatingBackgroundColor); - mLeftTriangleShape.getPaint().setColor(mFloatingBackgroundColor); - mRightTriangleShape.getPaint().setColor(mFloatingBackgroundColor); - + private void applyConfigurationColors(Configuration configuration) { + int nightModeFlags = configuration.uiMode & Configuration.UI_MODE_NIGHT_MASK; + boolean isNightModeOn = nightModeFlags == Configuration.UI_MODE_NIGHT_YES; + try (TypedArray ta = mContext.obtainStyledAttributes( + new int[]{ + com.android.internal.R.attr.materialColorSurfaceContainer, + com.android.internal.R.attr.materialColorOnSurface, + com.android.internal.R.attr.materialColorOnSurfaceVariant})) { + mFloatingBackgroundColor = ta.getColor(0, + isNightModeOn ? Color.BLACK : Color.WHITE); + mSenderText.setTextColor(ta.getColor(1, + isNightModeOn ? Color.WHITE : Color.BLACK)); + mMessageText.setTextColor(ta.getColor(2, + isNightModeOn ? Color.WHITE : Color.BLACK)); + mBgPaint.setColor(mFloatingBackgroundColor); + mLeftTriangleShape.getPaint().setColor(mFloatingBackgroundColor); + mRightTriangleShape.getPaint().setColor(mFloatingBackgroundColor); + } } /** diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleLogger.java b/wmshell/src/com/android/wm/shell/bubbles/BubbleLogger.java index a0c473173b..c88a58be14 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleLogger.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleLogger.java @@ -16,12 +16,11 @@ package com.android.wm.shell.bubbles; +import com.android.internal.annotations.VisibleForTesting; import com.android.internal.logging.UiEvent; import com.android.internal.logging.UiEventLogger; import com.android.internal.util.FrameworkStatsLog; -import javax.inject.Inject; - /** * Implementation of UiEventLogger for logging bubble UI events. * @@ -34,10 +33,9 @@ public class BubbleLogger { /** * Bubble UI event. */ + @VisibleForTesting public enum Event implements UiEventLogger.UiEventEnum { - // region bubble events - @UiEvent(doc = "User dismissed the bubble via gesture, add bubble to overflow.") BUBBLE_OVERFLOW_ADD_USER_GESTURE(483), @@ -66,104 +64,7 @@ public class BubbleLogger { BUBBLE_OVERFLOW_SELECTED(600), @UiEvent(doc = "Restore bubble to overflow after phone reboot.") - BUBBLE_OVERFLOW_RECOVER(691), - - // endregion - - // region bubble bar events - - @UiEvent(doc = "new bubble posted") - BUBBLE_BAR_BUBBLE_POSTED(1927), - - @UiEvent(doc = "existing bubble updated") - BUBBLE_BAR_BUBBLE_UPDATED(1928), - - @UiEvent(doc = "expanded a bubble from bubble bar") - BUBBLE_BAR_EXPANDED(1929), - - @UiEvent(doc = "bubble bar collapsed") - BUBBLE_BAR_COLLAPSED(1930), - - @UiEvent(doc = "dismissed single bubble from bubble bar by dragging it to dismiss target") - BUBBLE_BAR_BUBBLE_DISMISSED_DRAG_BUBBLE(1931), - - @UiEvent(doc = "dismissed single bubble from bubble bar by dragging the expanded view to " - + "dismiss target") - BUBBLE_BAR_BUBBLE_DISMISSED_DRAG_EXP_VIEW(1932), - - @UiEvent(doc = "dismiss bubble from app handle menu") - BUBBLE_BAR_BUBBLE_DISMISSED_APP_MENU(1933), - - @UiEvent(doc = "bubble is dismissed due to app finishing the bubble activity") - BUBBLE_BAR_BUBBLE_ACTIVITY_FINISH(1934), - - @UiEvent(doc = "dismissed the bubble bar by dragging it to dismiss target") - BUBBLE_BAR_DISMISSED_DRAG_BAR(1935), - - @UiEvent(doc = "bubble bar moved to the left edge of the screen by dragging from the " - + "expanded view") - BUBBLE_BAR_MOVED_LEFT_DRAG_EXP_VIEW(1936), - - @UiEvent(doc = "bubble bar moved to the left edge of the screen by dragging from a single" - + " bubble") - BUBBLE_BAR_MOVED_LEFT_DRAG_BUBBLE(1937), - - @UiEvent(doc = "bubble bar moved to the left edge of the screen by dragging the bubble bar") - BUBBLE_BAR_MOVED_LEFT_DRAG_BAR(1938), - - @UiEvent(doc = "bubble bar moved to the right edge of the screen by dragging from the " - + "expanded view") - BUBBLE_BAR_MOVED_RIGHT_DRAG_EXP_VIEW(1939), - - @UiEvent(doc = "bubble bar moved to the right edge of the screen by dragging from a " - + "single bubble") - BUBBLE_BAR_MOVED_RIGHT_DRAG_BUBBLE(1940), - - @UiEvent(doc = "bubble bar moved to the right edge of the screen by dragging the bubble " - + "bar") - BUBBLE_BAR_MOVED_RIGHT_DRAG_BAR(1941), - - @UiEvent(doc = "stop bubbling conversation from app handle menu") - BUBBLE_BAR_APP_MENU_OPT_OUT(1942), - - @UiEvent(doc = "open app settings from app handle menu") - BUBBLE_BAR_APP_MENU_GO_TO_SETTINGS(1943), - - @UiEvent(doc = "flyout shown for a bubble") - BUBBLE_BAR_FLYOUT(1944), - - @UiEvent(doc = "notification for the bubble was canceled") - BUBBLE_BAR_BUBBLE_REMOVED_CANCELED(1945), - - @UiEvent(doc = "user turned off bubbles from settings") - BUBBLE_BAR_BUBBLE_REMOVED_BLOCKED(1946), - - @UiEvent(doc = "bubble bar overflow opened") - BUBBLE_BAR_OVERFLOW_SELECTED(1947), - - @UiEvent(doc = "max number of bubbles was reached in bubble bar, move bubble to overflow") - BUBBLE_BAR_OVERFLOW_ADD_AGED(1948), - - @UiEvent(doc = "bubble promoted from overflow back to bubble bar") - BUBBLE_BAR_OVERFLOW_REMOVE_BACK_TO_BAR(1949), - - @UiEvent(doc = "application icon is dropped in the BubbleBar left drop zone") - BUBBLE_BAR_MOVED_LEFT_APP_ICON_DROP(2082), - - @UiEvent(doc = "application icon is dropped in the BubbleBar right drop zone") - BUBBLE_BAR_MOVED_RIGHT_APP_ICON_DROP(2083), - - @UiEvent(doc = "while bubble bar is expanded, switch to another/existing bubble") - BUBBLE_BAR_BUBBLE_SWITCHED(1977), - - @UiEvent(doc = "bubble bar moved to the left edge of the screen by dragging a task") - BUBBLE_BAR_MOVED_LEFT_DRAG_TASK(2146), - - @UiEvent(doc = "bubble bar moved to the right edge of the screen by dragging a task") - BUBBLE_BAR_MOVED_RIGHT_DRAG_TASK(2147), - - // endregion - ; + BUBBLE_OVERFLOW_RECOVER(691); private final int mId; @@ -177,32 +78,23 @@ public class BubbleLogger { } } - @Inject public BubbleLogger(UiEventLogger uiEventLogger) { mUiEventLogger = uiEventLogger; } /** - * Log an UIEvent - */ - public void log(UiEventLogger.UiEventEnum e) { - mUiEventLogger.log(e); - } - - /** - * Log an UIEvent with the given bubble info + * @param b Bubble involved in this UI event + * @param e UI event */ public void log(Bubble b, UiEventLogger.UiEventEnum e) { mUiEventLogger.logWithInstanceId(e, b.getAppUid(), b.getPackageName(), b.getInstanceId()); } /** - * Log when a bubble is removed from overflow in stack view - * * @param b Bubble removed from overflow * @param r Reason that bubble was removed */ - public void logStackOverflowRemove(Bubble b, @Bubbles.DismissReason int r) { + public void logOverflowRemove(Bubble b, @Bubbles.DismissReason int r) { if (r == Bubbles.DISMISS_NOTIF_CANCEL) { log(b, BubbleLogger.Event.BUBBLE_OVERFLOW_REMOVE_CANCEL); } else if (r == Bubbles.DISMISS_GROUP_CANCELLED) { @@ -218,19 +110,13 @@ public class BubbleLogger { * @param b Bubble added to overflow * @param r Reason that bubble was added to overflow */ - public void logOverflowAdd(Bubble b, boolean bubbleBar, @Bubbles.DismissReason int r) { - if (bubbleBar) { - if (r == Bubbles.DISMISS_AGED) { - log(b, Event.BUBBLE_BAR_OVERFLOW_ADD_AGED); - } - } else { - if (r == Bubbles.DISMISS_AGED) { - log(b, Event.BUBBLE_OVERFLOW_ADD_AGED); - } else if (r == Bubbles.DISMISS_USER_GESTURE) { - log(b, Event.BUBBLE_OVERFLOW_ADD_USER_GESTURE); - } else if (r == Bubbles.DISMISS_RELOAD_FROM_DISK) { - log(b, Event.BUBBLE_OVERFLOW_RECOVER); - } + public void logOverflowAdd(Bubble b, @Bubbles.DismissReason int r) { + if (r == Bubbles.DISMISS_AGED) { + log(b, Event.BUBBLE_OVERFLOW_ADD_AGED); + } else if (r == Bubbles.DISMISS_USER_GESTURE) { + log(b, Event.BUBBLE_OVERFLOW_ADD_USER_GESTURE); + } else if (r == Bubbles.DISMISS_RELOAD_FROM_DISK) { + log(b, Event.BUBBLE_OVERFLOW_RECOVER); } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleOverflow.kt b/wmshell/src/com/android/wm/shell/bubbles/BubbleOverflow.kt index 214f8d9cf4..f32974e176 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleOverflow.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleOverflow.kt @@ -19,6 +19,7 @@ package com.android.wm.shell.bubbles import android.app.ActivityTaskManager.INVALID_TASK_ID import android.content.Context import android.graphics.Bitmap +import android.graphics.Color import android.graphics.Matrix import android.graphics.Path import android.graphics.drawable.AdaptiveIconDrawable @@ -72,18 +73,14 @@ class BubbleOverflow(private val context: Context, private val positioner: Bubbl fun initializeForBubbleBar( expandedViewManager: BubbleExpandedViewManager, - positioner: BubblePositioner, + positioner: BubblePositioner ) { createBubbleBarExpandedView() .initialize( expandedViewManager, positioner, /* isOverflow= */ true, - /* bubble= */ null, - /* bubbleTaskView= */ null, - /* mainExecutor= */ null, - /* backgroundExecutor= */ null, - /* regionSamplingProvider= */ null, + /* bubbleTaskView= */ null ) } @@ -115,8 +112,18 @@ class BubbleOverflow(private val context: Context, private val positioner: Bubbl val res = context.resources // Set overflow button accent color, dot color - val colorAccent = context.getColor(com.android.internal.R.color.materialColorPrimaryFixed) - val shapeColor = context.getColor(com.android.internal.R.color.materialColorOnPrimaryFixed) + + val typedArray = + context.obtainStyledAttributes( + intArrayOf( + com.android.internal.R.attr.materialColorPrimaryFixed, + com.android.internal.R.attr.materialColorOnPrimaryFixed + ) + ) + + val colorAccent = typedArray.getColor(0, Color.WHITE) + val shapeColor = typedArray.getColor(1, Color.BLACK) + typedArray.recycle() dotColor = colorAccent overflowBtn?.iconDrawable?.setTint(shapeColor) @@ -135,16 +142,23 @@ class BubbleOverflow(private val context: Context, private val positioner: Bubbl // Update bitmap val fg = InsetDrawable(overflowBtn?.iconDrawable, overflowIconInset) - val drawable = AdaptiveIconDrawable(ColorDrawable(colorAccent), fg) - val bubbleBitmapScale = FloatArray(1) - bitmap = iconFactory.getBubbleBitmap(drawable, bubbleBitmapScale) + bitmap = + iconFactory + .createBadgedIconBitmap(AdaptiveIconDrawable(ColorDrawable(colorAccent), fg)) + .icon // Update dot path dotPath = PathParser.createPathFromPathData( res.getString(com.android.internal.R.string.config_icon_mask) ) - val scale = bubbleBitmapScale[0] + val scale = + iconFactory.normalizer.getScale( + iconView!!.iconDrawable, + null /* outBounds */, + null /* path */, + null /* outMaskShape */ + ) val radius = BadgedImageView.DEFAULT_PATH_SIZE / 2f val matrix = Matrix() matrix.setScale( @@ -204,17 +218,29 @@ class BubbleOverflow(private val context: Context, private val positioner: Bubbl override fun getBubbleBarExpandedView(): BubbleBarExpandedView? = bubbleBarExpandedView - override fun getDotColor() = dotColor + override fun getDotColor(): Int { + return dotColor + } - override fun getAppBadge() = null + override fun getAppBadge(): Bitmap? { + return null + } - override fun getRawAppBadge() = null + override fun getRawAppBadge(): Bitmap? { + return null + } - override fun getBubbleIcon() = bitmap + override fun getBubbleIcon(): Bitmap { + return bitmap + } - override fun showDot() = showDot + override fun showDot(): Boolean { + return showDot + } - override fun getDotPath() = dotPath + override fun getDotPath(): Path? { + return dotPath + } override fun setTaskViewVisibility(visible: Boolean) { // Overflow does not have a TaskView. @@ -238,9 +264,13 @@ class BubbleOverflow(private val context: Context, private val positioner: Bubbl return overflowBtn } - override fun getKey() = KEY + override fun getKey(): String { + return KEY + } - override fun getTaskId() = INVALID_TASK_ID + override fun getTaskId(): Int { + return if (expandedView != null) expandedView!!.taskId else INVALID_TASK_ID + } companion object { const val KEY = "Overflow" diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleOverflowContainerView.java b/wmshell/src/com/android/wm/shell/bubbles/BubbleOverflowContainerView.java index e901e0c07f..18e04d14c7 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleOverflowContainerView.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleOverflowContainerView.java @@ -42,11 +42,10 @@ import androidx.annotation.Nullable; import androidx.recyclerview.widget.GridLayoutManager; import androidx.recyclerview.widget.RecyclerView; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.ContrastColorUtil; import com.android.wm.shell.Flags; import com.android.wm.shell.R; -import com.android.wm.shell.shared.TypefaceUtils; import java.util.ArrayList; import java.util.List; @@ -227,18 +226,16 @@ public class BubbleOverflowContainerView extends LinearLayout { ? res.getColor(R.color.bubbles_dark) : res.getColor(R.color.bubbles_light)); - - int bgColor = getContext().getColor( - com.android.internal.R.color.materialColorSurfaceBright); - int textColor = getContext().getColor(com.android.internal.R.color.materialColorOnSurface); - + final TypedArray typedArray = getContext().obtainStyledAttributes(new int[] { + com.android.internal.R.attr.materialColorSurfaceBright, + com.android.internal.R.attr.materialColorOnSurface}); + int bgColor = typedArray.getColor(0, isNightMode ? Color.BLACK : Color.WHITE); + int textColor = typedArray.getColor(1, isNightMode ? Color.WHITE : Color.BLACK); + textColor = ContrastColorUtil.ensureTextContrast(textColor, bgColor, isNightMode); + typedArray.recycle(); setBackgroundColor(bgColor); mEmptyStateTitle.setTextColor(textColor); mEmptyStateSubtitle.setTextColor(textColor); - TypefaceUtils.setTypeface(mEmptyStateTitle, - TypefaceUtils.FontFamily.GSF_BODY_MEDIUM_EMPHASIZED); - TypefaceUtils.setTypeface(mEmptyStateSubtitle, TypefaceUtils.FontFamily.GSF_BODY_MEDIUM); - } public void updateFontSize() { @@ -327,7 +324,6 @@ class BubbleOverflowAdapter extends RecyclerView.Adapter<BubbleOverflowAdapter.V TextView viewName = overflowView.findViewById(R.id.bubble_view_name); viewName.setTextColor(textColor); - TypefaceUtils.setTypeface(viewName, TypefaceUtils.FontFamily.GSF_LABEL_LARGE); return new ViewHolder(overflowView, mPositioner); } diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubblePopupViewExt.kt b/wmshell/src/com/android/wm/shell/bubbles/BubblePopupViewExt.kt index a65466f718..bdb09e11d5 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubblePopupViewExt.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/BubblePopupViewExt.kt @@ -15,9 +15,10 @@ */ package com.android.wm.shell.bubbles +import android.graphics.Color import com.android.wm.shell.R -import com.android.wm.shell.shared.bubbles.BubblePopupDrawable -import com.android.wm.shell.shared.bubbles.BubblePopupView +import com.android.wm.shell.common.bubbles.BubblePopupDrawable +import com.android.wm.shell.common.bubbles.BubblePopupView /** * A convenience method to setup the [BubblePopupView] with the correct config using local resources @@ -26,6 +27,7 @@ fun BubblePopupView.setup() { val attrs = context.obtainStyledAttributes( intArrayOf( + com.android.internal.R.attr.materialColorSurface, android.R.attr.dialogCornerRadius ) ) @@ -33,8 +35,8 @@ fun BubblePopupView.setup() { val res = context.resources val config = BubblePopupDrawable.Config( - color = context.getColor(com.android.internal.R.color.materialColorSurfaceContainer), - cornerRadius = attrs.getDimension(0, 0f), + color = attrs.getColor(0, Color.WHITE), + cornerRadius = attrs.getDimension(1, 0f), contentPadding = res.getDimensionPixelSize(R.dimen.bubble_popup_padding), arrowWidth = res.getDimension(R.dimen.bubble_popup_arrow_width), arrowHeight = res.getDimension(R.dimen.bubble_popup_arrow_height), diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubblePositioner.java b/wmshell/src/com/android/wm/shell/bubbles/BubblePositioner.java index 1ba971f658..2382545ab3 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubblePositioner.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubblePositioner.java @@ -16,7 +16,6 @@ package com.android.wm.shell.bubbles; -import static com.android.launcher3.icons.IconNormalizer.ICON_VISIBLE_AREA_FACTOR; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES; import android.content.Context; @@ -28,21 +27,18 @@ import android.graphics.RectF; import android.view.Surface; import android.view.WindowManager; -import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.Flags; +import com.android.internal.protolog.common.ProtoLog; +import com.android.launcher3.icons.IconNormalizer; import com.android.wm.shell.R; -import com.android.wm.shell.shared.bubbles.BubbleBarLocation; -import com.android.wm.shell.shared.bubbles.BubbleDropTargetBoundsProvider; -import com.android.wm.shell.shared.bubbles.DeviceConfig; +import com.android.wm.shell.common.bubbles.BubbleBarLocation; /** * Keeps track of display size, configuration, and specific bubble sizes. One place for all * placement and positioning calculations to refer to. */ -public class BubblePositioner implements BubbleDropTargetBoundsProvider { +public class BubblePositioner { /** The screen edge the bubble stack is pinned to */ public enum StackPinnedEdge { @@ -71,11 +67,6 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { private @Surface.Rotation int mRotation = Surface.ROTATION_0; private Insets mInsets; private boolean mImeVisible; - /** - * The height of the IME excluding the bottom inset. If the IME is 100 pixels tall and we have - * 20 pixels bottom inset, the IME height is adjusted to 80 to represent the overlap with the - * Bubbles window. - */ private int mImeHeight; private Rect mPositionRect; private int mDefaultMaxBubbles; @@ -91,7 +82,6 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { private int mExpandedViewLargeScreenWidth; private int mExpandedViewLargeScreenInsetClosestEdge; private int mExpandedViewLargeScreenInsetFurthestEdge; - private int mExpandedViewBubbleBarWidth; private int mOverflowWidth; private int mExpandedViewPadding; @@ -103,11 +93,6 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { private int mManageButtonHeight; private int mOverflowHeight; private int mMinimumFlyoutWidthLargeScreen; - private int mBarExpViewDropTargetWidth; - private int mBarExpViewDropTargetHeight; - private int mBarExpViewDropTargetPaddingBottom; - private int mBarDropTargetWidth; - private int mBarDropTargetHeight; private PointF mRestingStackPosition; @@ -116,13 +101,9 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { private int mBubbleBarTopOnScreen; public BubblePositioner(Context context, WindowManager windowManager) { - this(context, DeviceConfig.create(context, windowManager)); - } - - public BubblePositioner(Context context, DeviceConfig deviceConfig) { mContext = context; - mDeviceConfig = deviceConfig; - update(deviceConfig); + mDeviceConfig = DeviceConfig.create(context, windowManager); + update(mDeviceConfig); } /** @@ -140,11 +121,6 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { updateInternal(mRotation, deviceConfig.getInsets(), deviceConfig.getWindowBounds()); } - /** Returns the device config being used. */ - public DeviceConfig getCurrentConfig() { - return mDeviceConfig; - } - @VisibleForTesting public void updateInternal(int rotation, Insets insets, Rect bounds) { BubbleStackView.RelativeStackPosition prevStackPosition = null; @@ -173,30 +149,18 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { mBubbleOffscreenAmount = res.getDimensionPixelSize(R.dimen.bubble_stack_offscreen); mStackOffset = res.getDimensionPixelSize(R.dimen.bubble_stack_offset); mBubbleElevation = res.getDimensionPixelSize(R.dimen.bubble_elevation); - mExpandedViewBubbleBarWidth = Math.min( - res.getDimensionPixelSize(R.dimen.bubble_bar_expanded_view_width), - mPositionRect.width() - 2 * mExpandedViewPadding - ); - mBarExpViewDropTargetWidth = res.getDimensionPixelSize( - com.android.wm.shell.shared.R.dimen.drop_target_expanded_view_width); - mBarExpViewDropTargetHeight = res.getDimensionPixelSize( - com.android.wm.shell.shared.R.dimen.drop_target_expanded_view_height); - mBarExpViewDropTargetPaddingBottom = res.getDimensionPixelSize( - com.android.wm.shell.shared.R.dimen.drop_target_expanded_view_padding_bottom); - mBarDropTargetWidth = res.getDimensionPixelSize(R.dimen.bubble_bar_drop_target_width); - mBarDropTargetHeight = res.getDimensionPixelSize(R.dimen.bubble_bar_drop_target_height); if (mShowingInBubbleBar) { - mExpandedViewLargeScreenWidth = mExpandedViewBubbleBarWidth; + mExpandedViewLargeScreenWidth = Math.min( + res.getDimensionPixelSize(R.dimen.bubble_bar_expanded_view_width), + mPositionRect.width() - 2 * mExpandedViewPadding + ); } else if (mDeviceConfig.isSmallTablet()) { mExpandedViewLargeScreenWidth = (int) (bounds.width() * EXPANDED_VIEW_SMALL_TABLET_WIDTH_PERCENT); } else { - int expandedViewLargeScreenSpacing = res.getDimensionPixelSize( - R.dimen.bubble_expanded_view_largescreen_landscape_padding); - mExpandedViewLargeScreenWidth = Math.min( - res.getDimensionPixelSize(R.dimen.bubble_expanded_view_largescreen_width), - bounds.width() - expandedViewLargeScreenSpacing * 2); + mExpandedViewLargeScreenWidth = + res.getDimensionPixelSize(R.dimen.bubble_expanded_view_largescreen_width); } if (mDeviceConfig.isLargeScreen()) { if (mDeviceConfig.isSmallTablet()) { @@ -365,16 +329,10 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { return mImeVisible; } - /** - * Sets whether the IME is visible and its height. - * - * @param visible whether the IME is visible - * @param height the total height of the IME from the bottom of the physical screen - **/ + /** Sets whether the IME is visible. **/ public void setImeVisible(boolean visible, int height) { mImeVisible = visible; - // adjust the IME to account for the height as seen by the Bubbles window - mImeHeight = visible ? Math.max(height - getInsets().bottom, 0) : 0; + mImeHeight = height; } private int getExpandedViewLargeScreenInsetFurthestEdge(boolean isOverflow) { @@ -572,7 +530,8 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { public float getPointerPosition(float bubblePosition) { // TODO: I don't understand why it works but it does - why normalized in portrait // & not in landscape? Am I missing ~2dp in the portrait expandedViewY calculation? - final float normalizedSize = Math.round(ICON_VISIBLE_AREA_FACTOR * getBubbleSize()); + final float normalizedSize = IconNormalizer.getNormalizedCircleSize( + getBubbleSize()); return showBubblesVertically() ? bubblePosition + (getBubbleSize() / 2f) : bubblePosition + (normalizedSize / 2f) - mPointerWidth; @@ -779,20 +738,20 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { * is being shown, for a normal bubble. */ public PointF getDefaultStartPosition() { - return getDefaultStartPosition(false /* isNoteBubble */); + return getDefaultStartPosition(false /* isAppBubble */); } /** * The stack position to use if we don't have a saved location or if user education * is being shown. * - * @param isNoteBubble whether this start position is for a note bubble or not. + * @param isAppBubble whether this start position is for an app bubble or not. */ - public PointF getDefaultStartPosition(boolean isNoteBubble) { + public PointF getDefaultStartPosition(boolean isAppBubble) { // Normal bubbles start on the left if we're in LTR, right otherwise. // TODO (b/294284894): update language around "app bubble" here // App bubbles start on the right in RTL, left otherwise. - final boolean startOnLeft = isNoteBubble ? mDeviceConfig.isRtl() : !mDeviceConfig.isRtl(); + final boolean startOnLeft = isAppBubble ? mDeviceConfig.isRtl() : !mDeviceConfig.isRtl(); return getStartPosition(startOnLeft ? StackPinnedEdge.LEFT : StackPinnedEdge.RIGHT); } @@ -860,31 +819,6 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { screen.bottom); } - - /** - * Populates {@param out} with the rest bounds of an expanded bubble on screen. - * <p> - * TODO: b/417226976 - * Never used for the overflow or for floating mode on large screen -- bubble bar & phone - * floating only. - */ - public void getTaskViewRestBounds(Rect out) { - if (isShowingInBubbleBar()) { - getBubbleBarExpandedViewBounds(isBubbleBarOnLeft(), false /* isOverflow */, out); - } else { - final int top = getExpandedViewYTopAligned(); - // Can assume left false because that only matters for floating on large screen which - // is never used here. - final int width = getTaskViewContentWidth(false /* onLeft */); - // TODO (b/419347947): this assumes max height for the bubble, chat bubbles can have - // variable height if the developer overrides; will matter for move chat to fullscreen - final int height = getMaxExpandedViewHeight(false /* overflow */); - final int[] paddings = getExpandedViewContainerPadding(false /* onLeft */, - false /* overflow */); - out.set(paddings[0], top, paddings[0] + width, top + height); - } - } - // // Bubble bar specific sizes below. // @@ -896,13 +830,6 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { mShowingInBubbleBar = showingInBubbleBar; } - /** - * Whether bubbles ar showing in the bubble bar from launcher. - */ - boolean isShowingInBubbleBar() { - return mShowingInBubbleBar; - } - public void setBubbleBarLocation(BubbleBarLocation location) { mBubbleBarLocation = location; } @@ -918,9 +845,11 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { return mBubbleBarLocation.isOnLeft(mDeviceConfig.isRtl()); } - /** Updates the top coordinate of bubble bar on screen. */ - public void updateBubbleBarTopOnScreen(int bubbleBarTopToScreenBottom) { - mBubbleBarTopOnScreen = getScreenRect().bottom - bubbleBarTopToScreenBottom; + /** + * Set top coordinate of bubble bar on screen + */ + public void setBubbleBarTopOnScreen(int topOnScreen) { + mBubbleBarTopOnScreen = topOnScreen; } /** @@ -934,7 +863,7 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { * How wide the expanded view should be when showing from the bubble bar. */ public int getExpandedViewWidthForBubbleBar(boolean isOverflow) { - return isOverflow ? mOverflowWidth : mExpandedViewBubbleBarWidth; + return isOverflow ? mOverflowWidth : mExpandedViewLargeScreenWidth; } /** @@ -944,7 +873,7 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { if (isOverflow) { return mOverflowHeight; } else { - return getBubbleBarExpandedViewHeight(); + return getBubbleBarExpandedViewHeightForLandscape(); } } @@ -965,23 +894,18 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { * | bottom inset ↕ | ↓ * |----------------------| --- mScreenRect.bottom */ - private int getBubbleBarExpandedViewHeight() { + private int getBubbleBarExpandedViewHeightForLandscape() { int heightOfBubbleBarContainer = mScreenRect.height() - getExpandedViewBottomForBubbleBar(); - int expandedViewHeight; - if (Flags.enableBubbleBarOnPhones() && !mDeviceConfig.isLargeScreen()) { - // we're on a phone, use the max / height - expandedViewHeight = Math.max(mScreenRect.width(), mScreenRect.height()); - } else { - // getting landscape height from screen rect - expandedViewHeight = Math.min(mScreenRect.width(), mScreenRect.height()); - } + // getting landscape height from screen rect + int expandedViewHeight = Math.min(mScreenRect.width(), mScreenRect.height()); expandedViewHeight -= heightOfBubbleBarContainer; /* removing bubble container height */ expandedViewHeight -= mInsets.top; /* removing top inset */ expandedViewHeight -= mExpandedViewPadding; /* removing spacing */ return expandedViewHeight; } + /** The bottom position of the expanded view when showing above the bubble bar. */ public int getExpandedViewBottomForBubbleBar() { return mBubbleBarTopOnScreen - mExpandedViewPadding; @@ -1013,36 +937,4 @@ public class BubblePositioner implements BubbleDropTargetBoundsProvider { int top = getExpandedViewBottomForBubbleBar() - height; out.offsetTo(left, top); } - - @NonNull - @Override - public Rect getBubbleBarExpandedViewDropTargetBounds(boolean onLeft) { - Rect bounds = new Rect(); - getBubbleBarExpandedViewBounds(onLeft, false, bounds); - // Position based on expanded view bounds and adjust the size - if (onLeft) { - bounds.right = bounds.left + mBarExpViewDropTargetWidth; - } else { - bounds.left = bounds.right - mBarExpViewDropTargetWidth; - } - bounds.bottom = mScreenRect.bottom - mBarExpViewDropTargetPaddingBottom; - bounds.top = bounds.bottom - mBarExpViewDropTargetHeight; - return bounds; - } - - @NonNull - @Override - public Rect getBarDropTargetBounds(boolean onLeft) { - Rect bounds = getBubbleBarExpandedViewDropTargetBounds(onLeft); - bounds.top = getBubbleBarTopOnScreen(); - bounds.bottom = bounds.top + mBarDropTargetHeight; - if (onLeft) { - // Keep the left edge from expanded view - bounds.right = bounds.left + mBarDropTargetWidth; - } else { - // Keep the right edge from expanded view - bounds.left = bounds.right - mBarDropTargetWidth; - } - return bounds; - } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleStackView.java b/wmshell/src/com/android/wm/shell/bubbles/BubbleStackView.java index b88ee61e77..94c54699e6 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleStackView.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleStackView.java @@ -19,16 +19,15 @@ package com.android.wm.shell.bubbles; import static android.view.ViewGroup.LayoutParams.MATCH_PARENT; import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT; +import static com.android.wm.shell.animation.Interpolators.ALPHA_IN; +import static com.android.wm.shell.animation.Interpolators.ALPHA_OUT; import static com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_BUBBLES; import static com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_WITH_CLASS_NAME; import static com.android.wm.shell.bubbles.BubblePositioner.NUM_VISIBLE_WHEN_RESTING; import static com.android.wm.shell.bubbles.BubblePositioner.StackPinnedEdge.LEFT; import static com.android.wm.shell.bubbles.BubblePositioner.StackPinnedEdge.RIGHT; +import static com.android.wm.shell.common.bubbles.BubbleConstants.BUBBLE_EXPANDED_SCRIM_ALPHA; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES_NOISY; -import static com.android.wm.shell.shared.animation.Interpolators.ALPHA_IN; -import static com.android.wm.shell.shared.animation.Interpolators.ALPHA_OUT; -import static com.android.wm.shell.shared.bubbles.BubbleConstants.BUBBLE_EXPANDED_SCRIM_ALPHA; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; @@ -41,6 +40,7 @@ import android.content.Context; import android.content.Intent; import android.content.res.Resources; import android.content.res.TypedArray; +import android.graphics.Color; import android.graphics.Outline; import android.graphics.PointF; import android.graphics.PorterDuff; @@ -53,7 +53,6 @@ import android.util.Log; import android.view.Choreographer; import android.view.LayoutInflater; import android.view.MotionEvent; -import android.view.SurfaceControl; import android.view.SurfaceHolder; import android.view.SurfaceView; import android.view.View; @@ -62,6 +61,7 @@ import android.view.ViewOutlineProvider; import android.view.ViewPropertyAnimator; import android.view.ViewTreeObserver; import android.view.WindowManager; +import android.view.WindowManagerPolicyConstants; import android.view.accessibility.AccessibilityNodeInfo; import android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction; import android.widget.FrameLayout; @@ -78,10 +78,11 @@ import androidx.dynamicanimation.animation.SpringForce; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.policy.ScreenDecorationsUtils; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.FrameworkStatsLog; import com.android.wm.shell.Flags; import com.android.wm.shell.R; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.bubbles.BubblesNavBarMotionEventHandler.MotionEventListener; import com.android.wm.shell.bubbles.animation.AnimatableScaleMatrix; import com.android.wm.shell.bubbles.animation.ExpandedAnimationController; @@ -91,16 +92,10 @@ import com.android.wm.shell.bubbles.animation.PhysicsAnimationLayout; import com.android.wm.shell.bubbles.animation.StackAnimationController; import com.android.wm.shell.common.FloatingContentCoordinator; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.TypefaceUtils; -import com.android.wm.shell.shared.TypefaceUtils.FontFamily; -import com.android.wm.shell.shared.animation.Interpolators; -import com.android.wm.shell.shared.animation.PhysicsAnimator; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.shared.bubbles.ContextUtils; -import com.android.wm.shell.shared.bubbles.DeviceConfig; -import com.android.wm.shell.shared.bubbles.DismissView; -import com.android.wm.shell.shared.bubbles.RelativeTouchListener; +import com.android.wm.shell.common.bubbles.DismissView; +import com.android.wm.shell.common.bubbles.RelativeTouchListener; import com.android.wm.shell.shared.magnetictarget.MagnetizedObject; +import com.android.wm.shell.shared.animation.PhysicsAnimator; import java.io.PrintWriter; import java.math.BigDecimal; @@ -116,8 +111,7 @@ import java.util.stream.Collectors; * Renders bubbles in a stack and handles animating expanded and collapsed states. */ public class BubbleStackView extends FrameLayout - implements ViewTreeObserver.OnComputeInternalInsetsListener, - BubbleExpandedViewTransitionAnimator { + implements ViewTreeObserver.OnComputeInternalInsetsListener { private static final String TAG = TAG_WITH_CLASS_NAME ? "BubbleStackView" : TAG_BUBBLES; /** How far the flyout needs to be dragged before it's dismissed regardless of velocity. */ @@ -183,12 +177,6 @@ public class BubbleStackView extends FrameLayout */ private final ShellExecutor mMainExecutor; private Runnable mDelayedAnimation; - /** - * Runnable set after a bubble is created via a transition; should run after expand or switch - * animation is complete. - */ - @Nullable - private Runnable mAfterTransitionRunnable = null; /** * Interface to synchronize {@link View} state and the screen. @@ -294,7 +282,6 @@ public class BubbleStackView extends FrameLayout private int mCornerRadius; @Nullable private BubbleViewProvider mExpandedBubble; private boolean mIsExpanded; - private boolean mIsImeVisible = false; /** Whether the stack is currently on the left side of the screen, or animating there. */ private boolean mStackOnLeftOrWillBe = true; @@ -352,7 +339,6 @@ public class BubbleStackView extends FrameLayout pw.println(mExpandedViewContainer.getAnimationMatrix()); pw.print(" stack visibility : "); pw.println(getVisibility()); pw.print(" temporarilyInvisible: "); pw.println(mTemporarilyInvisible); - pw.print(" expandedViewTemporarilyHidden: "); pw.println(mExpandedViewTemporarilyHidden); mStackAnimationController.dump(pw); mExpandedAnimationController.dump(pw); @@ -511,7 +497,7 @@ public class BubbleStackView extends FrameLayout view /* bubble */, mDismissView.getHeight() /* translationYBy */, () -> dismissBubbleIfExists( - mBubbleData.getBubbleInStackWithView(view)) /* after */); + mBubbleData.getBubbleWithView(view)) /* after */); } mDismissView.hide(); @@ -572,7 +558,7 @@ public class BubbleStackView extends FrameLayout return; } - final Bubble clickedBubble = mBubbleData.getBubbleInStackWithView(view); + final Bubble clickedBubble = mBubbleData.getBubbleWithView(view); // If the bubble has since left us, ignore the click. if (clickedBubble == null) { @@ -636,9 +622,6 @@ public class BubbleStackView extends FrameLayout } if (mBubbleData.isExpanded()) { - // TODO(b/417749498): Delete debug log - ProtoLog.v( - WM_SHELL_BUBBLES_NOISY, "BubbleStackView.bubbleDrag.onDown: isExpanded"); if (mManageEduView != null) { mManageEduView.hide(); } @@ -650,12 +633,11 @@ public class BubbleStackView extends FrameLayout mMagneticTarget, mIndividualBubbleMagnetListener); + hideCurrentInputMethod(); + // Save the magnetized individual bubble so we can dispatch touch events to it. mMagnetizedObject = mExpandedAnimationController.getMagnetizedBubbleDraggingOut(); } else { - // TODO(b/417749498): Delete debug log - ProtoLog.v( - WM_SHELL_BUBBLES_NOISY, "BubbleStackView.bubbleDrag.onDown: isCollapsed"); // If we're collapsed, prepare to drag the stack. Cancel active animations, set the // animation controller, and hide the flyout. mStackAnimationController.cancelStackPositionAnimations(); @@ -684,36 +666,13 @@ public class BubbleStackView extends FrameLayout @Override public void onMove(@NonNull View v, @NonNull MotionEvent ev, float viewInitialX, float viewInitialY, float dx, float dy) { - // TODO(b/417749498): Delete debug log - ProtoLog.v( - WM_SHELL_BUBBLES_NOISY, - "BubbleStackView.bubbleDrag.onMove: dx=%f, dy=%f", - dx, - dy); // If we're expanding or collapsing, ignore all touch events. if (mIsExpansionAnimating || mShowedUserEducationInTouchListenerActive) { - // TODO(b/417749498): Delete debug log - ProtoLog.v( - WM_SHELL_BUBBLES_NOISY, - "BubbleStackView.bubbleDrag.onMove: ignore isExpansionAnimating=%b" - + " showedUserEDU=%b", - mIsExpansionAnimating, - mShowedUserEducationInTouchListenerActive); return; } - if (mIsExpanded && mPositioner.isImeVisible()) { - hideCurrentInputMethod(); - } - // Show the dismiss target, if we haven't already. - boolean shown = mDismissView.show(); - // TODO(b/417749498): Delete debug log - ProtoLog.v( - WM_SHELL_BUBBLES_NOISY, - "BubbleStackView.bubbleDrag.onMove: dismissView(%d) shown=%b", - mDismissView.hashCode(), - shown); + mDismissView.show(); if (mIsExpanded && mExpandedBubble != null && v.equals(mExpandedBubble.getIconView())) { // Hide the expanded view if we're dragging out the expanded bubble, and we haven't @@ -743,29 +702,16 @@ public class BubbleStackView extends FrameLayout float viewInitialY, float dx, float dy, float velX, float velY) { // If we're expanding or collapsing, ignore all touch events. if (mIsExpansionAnimating) { - // TODO(b/417749498): Delete debug log - ProtoLog.v( - WM_SHELL_BUBBLES_NOISY, - "BubbleStackView.bubbleDrag.onUp: isExpansionAnimating ignore"); return; } if (mShowedUserEducationInTouchListenerActive) { mShowedUserEducationInTouchListenerActive = false; - // TODO(b/417749498): Delete debug log - ProtoLog.v( - WM_SHELL_BUBBLES_NOISY, - "BubbleStackView.bubbleDrag.onUp: showed user EDU ignore"); return; } // First, see if the magnetized object consumes the event - if so, the bubble was // released in the target or flung out of it, and we should ignore the event. if (!passEventToMagnetizedObject(ev)) { - // TODO(b/417749498): Delete debug log - ProtoLog.v( - WM_SHELL_BUBBLES_NOISY, - "BubbleStackView.bubbleDrag.onUp: magnetized object not handling" - + " event"); if (mBubbleData.isExpanded()) { mExpandedAnimationController.snapBubbleBack(v, velX, velY); @@ -783,16 +729,7 @@ public class BubbleStackView extends FrameLayout logBubbleEvent(null /* no bubble associated with bubble stack move */, FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__STACK_MOVED); } - // TODO(b/417749498): Delete debug log - ProtoLog.v( - WM_SHELL_BUBBLES_NOISY, - "BubbleStackView.bubbleDrag.onUp: hide dismiss view"); mDismissView.hide(); - } else { - // TODO(b/417749498): Delete debug log - ProtoLog.v( - WM_SHELL_BUBBLES_NOISY, - "BubbleStackView.bubbleDrag.onUp: magnetized object handling up"); } onDraggingEnded(); @@ -805,8 +742,6 @@ public class BubbleStackView extends FrameLayout @Override public void onCancel(@NonNull View v, @NonNull MotionEvent ev, float viewInitialX, float viewInitialY) { - // TODO(b/417749498): Delete debug log - ProtoLog.v(WM_SHELL_BUBBLES_NOISY, "BubbleStackView.bubbleDrag.onCancel"); animateStashedState(false /* stashImmediately */); } }; @@ -1192,8 +1127,6 @@ public class BubbleStackView extends FrameLayout if (expandedView != null) { // We need to be Z ordered on top in order for alpha animations to work. expandedView.setSurfaceZOrderedOnTop(true); - ProtoLog.d(WM_SHELL_BUBBLES, "expandedViewAlphaAnimation - start=%s", - expandedView.getBubbleKey()); expandedView.setAnimating(true); mExpandedViewContainer.setVisibility(VISIBLE); } @@ -1209,8 +1142,6 @@ public class BubbleStackView extends FrameLayout // = 0f remains in effect. && !mExpandedViewTemporarilyHidden) { expandedView.setSurfaceZOrderedOnTop(false); - ProtoLog.d(WM_SHELL_BUBBLES, "expandedViewAlphaAnimation - end=%s", - expandedView.getBubbleKey()); expandedView.setAnimating(false); } } @@ -1239,58 +1170,6 @@ public class BubbleStackView extends FrameLayout }); } - @Override - public boolean canExpandView(BubbleViewProvider b) { - if (mExpandedBubble != null && mIsExpanded && b.getKey().equals(mExpandedBubble.getKey())) { - // Already showing this bubble so can't expand it. - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "BubbleStackView.canExpandView - false %s already expanded", b.getKey()); - return false; - } - if (b instanceof Bubble) { - BubbleTransitions.BubbleTransition transition = ((Bubble) b).getPreparingTransition(); - if (transition != null) { - // StackView doesn't need to wait for launcher to expand, if we're able to expand, - // mark it as ready now. - transition.continueExpand(); - } - } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BubbleStackView.canExpandView - true"); - return true; - } - - @Override - public BubbleViewProvider prepareConvertedView(BubbleViewProvider b) { - // TODO b/419347947 - if we support converting visible tasks to bubbles in the future - // this might have to do some stuff. - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BubbleStackView.prepareConvertedView - doing nothing"); - return b; - } - - @Override - public void animateConvert(@NonNull SurfaceControl.Transaction startT, - @NonNull Rect startBounds, float startScale, @NonNull SurfaceControl snapshot, - SurfaceControl taskLeash, Runnable animFinish) { - // TODO b/419347947 - if we support converting visible tasks to bubbles in the future - // this will have to do some stuff. - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BubbleStackView.animateConvert - doing nothing"); - } - - @Override - public void animateExpand(@Nullable BubbleViewProvider previousBubble, - @Nullable Runnable animFinish) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BubbleStackView.animateExpand -- caching runnable"); - mAfterTransitionRunnable = animFinish; - } - - @Override - public void removeViewFromTransition(View view) { - // TODO b/419347947 - if we support converting visible tasks to bubbles in the future - // this will have to do some stuff. - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "BubbleStackView.removeViewFromTransition - doing nothing"); - } - /** * Reset state related to dragging. */ @@ -1433,7 +1312,7 @@ public class BubbleStackView extends FrameLayout mBubbleContainer.bringToFront(); } - // TODO (b/402196554) : Create ManageMenuView and move setup / animations there + // TODO: Create ManageMenuView and move setup / animations there private void setUpManageMenu() { if (mManageMenu != null) { removeView(mManageMenu); @@ -1443,9 +1322,10 @@ public class BubbleStackView extends FrameLayout R.layout.bubble_manage_menu, this, false); mManageMenu.setVisibility(View.INVISIBLE); - final int menuBackgroundColor = mContext.getColor( - com.android.internal.R.color.materialColorSurfaceBright); - + final TypedArray ta = mContext.obtainStyledAttributes(new int[]{ + com.android.internal.R.attr.materialColorSurfaceBright}); + final int menuBackgroundColor = ta.getColor(0, Color.WHITE); + ta.recycle(); mManageMenu.getBackground().setColorFilter(menuBackgroundColor, PorterDuff.Mode.SRC_IN); PhysicsAnimator.getInstance(mManageMenu).setDefaultSpringConfig(mManageSpringConfig); @@ -1491,48 +1371,25 @@ public class BubbleStackView extends FrameLayout mManageSettingsIcon = mManageMenu.findViewById(R.id.bubble_manage_menu_settings_icon); mManageSettingsText = mManageMenu.findViewById(R.id.bubble_manage_menu_settings_name); - View fullscreenView = mManageMenu.findViewById( - R.id.bubble_manage_menu_fullscreen_container); - if (BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { - fullscreenView.setVisibility(VISIBLE); - fullscreenView.setOnClickListener( - view -> { - showManageMenu(false /* show */); - BubbleExpandedView expandedView = getExpandedView(); - if (expandedView != null && expandedView.getTaskView() != null) { - expandedView.getTaskView().moveToFullscreen(); - } - }); - } else { - fullscreenView.setVisibility(GONE); - } - // The menu itself should respect locale direction so the icons are on the correct side. mManageMenu.setLayoutDirection(LAYOUT_DIRECTION_LOCALE); addView(mManageMenu); - - // Doesn't seem to work unless view is added; so set font after. - TypefaceUtils.setTypeface(findViewById(R.id.manage_dismiss), FontFamily.GSF_LABEL_LARGE); - TypefaceUtils.setTypeface(findViewById(R.id.manage_dont_bubble), - FontFamily.GSF_LABEL_LARGE); - TypefaceUtils.setTypeface(mManageSettingsText, FontFamily.GSF_LABEL_LARGE); - TypefaceUtils.setTypeface(findViewById(R.id.bubble_manage_menu_fullscreen_title), - FontFamily.GSF_LABEL_LARGE); + updateManageButtonListener(); } /** * Whether the selected bubble is conversation bubble */ - private boolean isChat() { + private boolean isConversationBubble() { BubbleViewProvider bubble = mBubbleData.getSelectedBubble(); - return bubble instanceof Bubble && ((Bubble) bubble).isChat(); + return bubble instanceof Bubble && ((Bubble) bubble).isConversation(); } /** * Whether the educational view should show for the expanded view "manage" menu. */ private boolean shouldShowManageEdu() { - if (!isChat()) { + if (!isConversationBubble()) { // We only show user education for conversation bubbles right now return false; } @@ -1579,7 +1436,7 @@ public class BubbleStackView extends FrameLayout * Whether education view should show for the collapsed stack. */ private boolean shouldShowStackEdu() { - if (!isChat()) { + if (!isConversationBubble()) { // We only show user education for conversation bubbles right now return false; } @@ -1687,21 +1544,8 @@ public class BubbleStackView extends FrameLayout private void updateOverflow() { mBubbleOverflow.update(); if (mShowingOverflow) { - View overflow = mBubbleOverflow.getIconView(); - if (overflow != null) { - ViewGroup parent = (ViewGroup) overflow.getParent(); - if (parent != null && parent != mBubbleContainer) { - Log.w(TAG, "Found an unexpected parent for the overflow icon before " - + "reordering. Removing it directly. Parent = " + parent); - if (parent instanceof PhysicsAnimationLayout) { - ((PhysicsAnimationLayout) parent).removeViewNoAnimation(overflow); - } else { - parent.removeView(overflow); - } - } - mBubbleContainer.reorderView(overflow, - mBubbleContainer.getChildCount() - 1 /* index */); - } + mBubbleContainer.reorderView(mBubbleOverflow.getIconView(), + mBubbleContainer.getChildCount() - 1 /* index */); } updateOverflowVisibility(); } @@ -1758,11 +1602,6 @@ public class BubbleStackView extends FrameLayout getResources().getColor(android.R.color.system_neutral1_1000))); mManageMenuScrim.setBackgroundDrawable(new ColorDrawable( getResources().getColor(android.R.color.system_neutral1_1000))); - if (mShowingManage) { - // the manage menu location depends on the manage button location which may need a - // layout pass, so post this to the looper - post(() -> showManageMenu(true)); - } } /** @@ -1857,7 +1696,6 @@ public class BubbleStackView extends FrameLayout getViewTreeObserver().removeOnPreDrawListener(mViewUpdater); getViewTreeObserver().removeOnDrawListener(mSystemGestureExcludeUpdater); getViewTreeObserver().removeOnComputeInternalInsetsListener(this); - stopMonitoringSwipeUpGesture(); } @Override @@ -2081,7 +1919,6 @@ public class BubbleStackView extends FrameLayout /** * Whether the stack of bubbles is expanded or not. */ - @Override public boolean isExpanded() { return mIsExpanded; } @@ -2128,11 +1965,12 @@ public class BubbleStackView extends FrameLayout return; } - if (firstBubble && bubble.isNote() && !mPositioner.hasUserModifiedDefaultPosition()) { - // If it's an note bubble and we don't have a previous resting position, update the - // controllers to use the default position for the note bubble (it'd be different from + if (firstBubble && bubble.isAppBubble() && !mPositioner.hasUserModifiedDefaultPosition()) { + // TODO (b/294284894): update language around "app bubble" here + // If it's an app bubble and we don't have a previous resting position, update the + // controllers to use the default position for the app bubble (it'd be different from // the position initialized with the controllers originally). - PointF startPosition = mPositioner.getDefaultStartPosition(true /* isNoteBubble */); + PointF startPosition = mPositioner.getDefaultStartPosition(true /* isAppBubble */); mStackOnLeftOrWillBe = mPositioner.isStackOnLeft(startPosition); mStackAnimationController.setStackPosition(startPosition); mExpandedAnimationController.setCollapsePoint(startPosition); @@ -2167,7 +2005,6 @@ public class BubbleStackView extends FrameLayout // and then remove our views (removing the icon view triggers the removal of the // bubble window so do that at the end of the animation so we see the scrim animate). BadgedImageView iconView = bubble.getIconView(); - final BubbleViewProvider expandedBubbleBeforeScrim = mExpandedBubble; showScrim(false, () -> { mRemovingLastBubbleWhileExpanded = false; bubble.cleanupExpandedView(); @@ -2176,17 +2013,7 @@ public class BubbleStackView extends FrameLayout } bubble.cleanupViews(); // cleans up the icon view updateExpandedView(); // resets state for no expanded bubble - // Bubble keys may not have changed if we receive an update to the same bubble. - // Compare bubble object instances to see if the expanded bubble has changed. - if (expandedBubbleBeforeScrim == mExpandedBubble) { - // Only clear expanded bubble if it has not changed since the scrim animation - // started. - // Scrim animation can take some time run and it is possible for a new bubble - // to be added while the animation is running. This causes the expanded - // bubble to change. Make sure we only clear the expanded bubble if it did - // not change between when the scrim animation started and completed. - mExpandedBubble = null; - } + mExpandedBubble = null; }); logBubbleEvent(bubble, FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__DISMISSED); return; @@ -2328,48 +2155,36 @@ public class BubbleStackView extends FrameLayout final BubbleViewProvider previouslySelected = mExpandedBubble; mExpandedBubble = bubbleToSelect; mExpandedViewAnimationController.setExpandedView(getExpandedView()); - final String previouslySelectedKey = previouslySelected != null - ? previouslySelected.getKey() - : "null"; - final String newlySelectedKey = mExpandedBubble != null - ? mExpandedBubble.getKey() - : "null"; - ProtoLog.d(WM_SHELL_BUBBLES, "showNewlySelectedBubble b=%s, previouslySelected=%s," - + " mIsExpanded=%b", newlySelectedKey, previouslySelectedKey, mIsExpanded); + if (mIsExpanded) { - Runnable onImeHidden = () -> { - if (Flags.enableRetrievableBubbles()) { - if (mBubbleData.getBubbles().size() == 1) { - // First bubble, check if overflow visibility needs to change - updateOverflowVisibility(); - } + hideCurrentInputMethod(); + + if (Flags.enableRetrievableBubbles()) { + if (mBubbleData.getBubbles().size() == 1) { + // First bubble, check if overflow visibility needs to change + updateOverflowVisibility(); + } + } + + // Make the container of the expanded view transparent before removing the expanded view + // from it. Otherwise a punch hole created by {@link android.view.SurfaceView} in the + // expanded view becomes visible on the screen. See b/126856255 + mExpandedViewContainer.setAlpha(0.0f); + mSurfaceSynchronizer.syncSurfaceAndRun(() -> { + if (previouslySelected != null) { + previouslySelected.setTaskViewVisibility(false); } - // Make the container of the expanded view transparent before removing the expanded - // view from it. Otherwise a punch hole created by {@link android.view.SurfaceView} - // in the expanded view becomes visible on the screen. See b/126856255 - mExpandedViewContainer.setAlpha(0.0f); - mSurfaceSynchronizer.syncSurfaceAndRun(() -> { - if (previouslySelected != null) { - previouslySelected.setTaskViewVisibility(false); - } + updateExpandedBubble(); + requestUpdate(); - updateExpandedBubble(); - requestUpdate(); - - logBubbleEvent(previouslySelected, - FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__COLLAPSED); - logBubbleEvent(bubbleToSelect, - FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__EXPANDED); - notifyExpansionChanged(previouslySelected, false /* expanded */); - notifyExpansionChanged(bubbleToSelect, true /* expanded */); - }); - }; - if (mPositioner.isImeVisible()) { - hideCurrentInputMethod(onImeHidden); - } else { - onImeHidden.run(); - } + logBubbleEvent(previouslySelected, + FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__COLLAPSED); + logBubbleEvent(bubbleToSelect, + FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__EXPANDED); + notifyExpansionChanged(previouslySelected, false /* expanded */); + notifyExpansionChanged(bubbleToSelect, true /* expanded */); + }); } } @@ -2393,47 +2208,29 @@ public class BubbleStackView extends FrameLayout boolean wasExpanded = mIsExpanded; - // Do the actual expansion/collapse after the IME is hidden if it's currently visible in - // order to avoid flickers - Runnable onImeHidden = () -> { - mSysuiProxyProvider.getSysuiProxy().onStackExpandChanged(shouldExpand); + hideCurrentInputMethod(); - if (wasExpanded) { - stopMonitoringSwipeUpGesture(); - animateCollapse(); - showManageMenu(false); - logBubbleEvent(mExpandedBubble, - FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__COLLAPSED); - } else { - animateExpansion(); - // TODO: move next line to BubbleData - logBubbleEvent(mExpandedBubble, - FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__EXPANDED); - logBubbleEvent(mExpandedBubble, - FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__STACK_EXPANDED); - mManager.checkNotificationPanelExpandedState(notifPanelExpanded -> { - if (!notifPanelExpanded && mIsExpanded) { - startMonitoringSwipeUpGesture(); - } - }); - } - notifyExpansionChanged(mExpandedBubble, mIsExpanded); - announceExpandForAccessibility(mExpandedBubble, mIsExpanded); - }; + mSysuiProxyProvider.getSysuiProxy().onStackExpandChanged(shouldExpand); - if (mPositioner.isImeVisible()) { - hideCurrentInputMethod(onImeHidden); + if (wasExpanded) { + stopMonitoringSwipeUpGesture(); + animateCollapse(); + showManageMenu(false); + logBubbleEvent(mExpandedBubble, FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__COLLAPSED); } else { - if (Flags.enableBubbleSwipeUpCleanup()) { - // Clear out the existing runnable if one was scheduled to run after IME was hidden. - // IME hide action can take time or in some cases not trigger at all. And we can - // get a second call to expand in during it. Make sure we don't run a previous - // runnable in that case. - mManager.clearImeHiddenRunnable(); - } - // the IME is already hidden, so run the runnable immediately - onImeHidden.run(); + animateExpansion(); + // TODO: move next line to BubbleData + logBubbleEvent(mExpandedBubble, FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__EXPANDED); + logBubbleEvent(mExpandedBubble, + FrameworkStatsLog.BUBBLE_UICHANGED__ACTION__STACK_EXPANDED); + mManager.checkNotificationPanelExpandedState(notifPanelExpanded -> { + if (!notifPanelExpanded && mIsExpanded) { + startMonitoringSwipeUpGesture(); + } + }); } + notifyExpansionChanged(mExpandedBubble, mIsExpanded); + announceExpandForAccessibility(mExpandedBubble, mIsExpanded); } /** @@ -2452,7 +2249,7 @@ public class BubbleStackView extends FrameLayout void startMonitoringSwipeUpGesture() { stopMonitoringSwipeUpGestureInternal(); - if (ContextUtils.isGestureNavigationMode(mContext)) { + if (isGestureNavEnabled()) { mBubblesNavBarGestureTracker = new BubblesNavBarGestureTracker(mContext, mPositioner); mBubblesNavBarGestureTracker.start(mSwipeUpListener); setOnTouchListener(mContainerSwipeListener); @@ -2487,11 +2284,16 @@ public class BubbleStackView extends FrameLayout } } + private boolean isGestureNavEnabled() { + return mContext.getResources().getInteger( + com.android.internal.R.integer.config_navBarInteractionMode) + == WindowManagerPolicyConstants.NAV_BAR_MODE_GESTURAL; + } + /** * Stop monitoring for swipe up gesture */ - @VisibleForTesting - public void stopMonitoringSwipeUpGesture() { + void stopMonitoringSwipeUpGesture() { stopMonitoringSwipeUpGestureInternal(); } @@ -2551,17 +2353,7 @@ public class BubbleStackView extends FrameLayout * not. */ void hideCurrentInputMethod() { - mManager.hideCurrentInputMethod(null); - } - - /** - * Hides the IME similar to {@link #hideCurrentInputMethod()} but also runs {@code onImeHidden} - * after after the IME is hidden. - * - * @see #hideCurrentInputMethod() - */ - void hideCurrentInputMethod(Runnable onImeHidden) { - mManager.hideCurrentInputMethod(onImeHidden); + mManager.hideCurrentInputMethod(); } /** Set the stack position to whatever the positioner says. */ @@ -2765,8 +2557,6 @@ public class BubbleStackView extends FrameLayout expandedView.setContentAlpha(0f); expandedView.setBackgroundAlpha(0f); - ProtoLog.d(WM_SHELL_BUBBLES, "animateBubbleExpansion, setAnimating true for bubble=%s", - expandedView.getBubbleKey()); // We'll be starting the alpha animation after a slight delay, so set this flag early // here. expandedView.setAnimating(true); @@ -2804,12 +2594,6 @@ public class BubbleStackView extends FrameLayout expView.setSurfaceZOrderedOnTop(false); } }) - .withEndOrCancelActions(() -> { - if (mAfterTransitionRunnable != null) { - mAfterTransitionRunnable.run(); - mAfterTransitionRunnable = null; - } - }) .start(); }; mMainExecutor.executeDelayed(mDelayedAnimation, startDelay); @@ -2937,11 +2721,6 @@ public class BubbleStackView extends FrameLayout mAnimatingOutSurfaceAlphaAnimator.reverse(); mExpandedViewAlphaAnimator.start(); - if (mExpandedBubble != null) { - ProtoLog.d(WM_SHELL_BUBBLES, "animateSwitchBubbles, switchingTo b=%s", - mExpandedBubble.getKey()); - } - if (mPositioner.showBubblesVertically()) { float translationX = mStackAnimationController.isStackOnLeftSide() ? mAnimatingOutSurfaceContainer.getTranslationX() + mBubbleSize * 2 @@ -3022,12 +2801,6 @@ public class BubbleStackView extends FrameLayout expandedView.setAnimating(false); } }) - .withEndOrCancelActions(() -> { - if (mAfterTransitionRunnable != null) { - mAfterTransitionRunnable.run(); - mAfterTransitionRunnable = null; - } - }) .start(); }, 25); } @@ -3065,10 +2838,6 @@ public class BubbleStackView extends FrameLayout * and clip the expanded view. */ public void setImeVisible(boolean visible) { - if (mIsImeVisible == visible) { - return; - } - mIsImeVisible = visible; if ((mIsExpansionAnimating || mIsBubbleSwitchAnimating) && mIsExpanded) { // This will update the animation so the bubbles move to position for the IME mExpandedAnimationController.expandFromStack(() -> { @@ -3102,9 +2871,6 @@ public class BubbleStackView extends FrameLayout if (mIsExpanded) { mExpandedViewAnimationController.animateForImeVisibilityChange(visible); BubbleExpandedView expandedView = getExpandedView(); - if (expandedView != null) { - expandedView.setImeVisible(visible); - } if (mPositioner.showBubblesVertically() && expandedView != null) { float selectedY = mPositioner.getExpandedBubbleXY(getState().selectedIndex, getState()).y; @@ -3496,16 +3262,20 @@ public class BubbleStackView extends FrameLayout // name and icon. if (show) { final Bubble bubble = mBubbleData.getBubbleInStackWithKey(mExpandedBubble.getKey()); - if (bubble != null && bubble.isChat()) { - // Setup options for chat bubbles + if (bubble != null && !bubble.isAppBubble()) { + // Setup options for non app bubbles mManageDontBubbleView.setVisibility(VISIBLE); mManageSettingsIcon.setImageBitmap(bubble.getRawAppBadge()); mManageSettingsText.setText(getResources().getString( R.string.bubbles_app_settings, bubble.getAppName())); mManageSettingsView.setVisibility(VISIBLE); } else { - // Not a chat bubble, so don't show conversation / notification settings + // Setup options for app bubbles + // App bubbles have no conversations + // so we don't show the option to not bubble conversation mManageDontBubbleView.setVisibility(GONE); + // App bubbles are not notification based + // so we don't show the option to go to notification settings mManageSettingsView.setVisibility(GONE); } } @@ -3605,6 +3375,14 @@ public class BubbleStackView extends FrameLayout mExpandedViewContainer.setAlpha(0f); mExpandedViewContainer.addView(bev); + postDelayed(() -> { + // Set the Manage button click handler from postDelayed. This appears to resolve + // a race condition with adding the BubbleExpandedView view to the expanded view + // container. Due to the race condition the click handler sometimes is not set up + // correctly and is never called. + updateManageButtonListener(); + }, 0); + if (!mIsExpansionAnimating) { mIsBubbleSwitchAnimating = true; mSurfaceSynchronizer.syncSurfaceAndRun(() -> { @@ -3614,8 +3392,13 @@ public class BubbleStackView extends FrameLayout } } - void onManageBubbleClicked() { - showManageMenu(true /* show */); + private void updateManageButtonListener() { + BubbleExpandedView bev = getExpandedView(); + if (mIsExpanded && bev != null) { + bev.setManageClickListener((view) -> { + showManageMenu(true /* show */); + }); + } } /** @@ -3722,7 +3505,7 @@ public class BubbleStackView extends FrameLayout } } - void updateExpandedView() { + private void updateExpandedView() { boolean isOverflowExpanded = mExpandedBubble != null && BubbleOverflow.KEY.equals(mExpandedBubble.getKey()); int[] paddings = mPositioner.getExpandedViewContainerPadding( diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleStackViewManager.kt b/wmshell/src/com/android/wm/shell/bubbles/BubbleStackViewManager.kt index 043cddd8cc..fb597a0566 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleStackViewManager.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleStackViewManager.kt @@ -34,10 +34,7 @@ interface BubbleStackViewManager { fun checkNotificationPanelExpandedState(callback: Consumer<Boolean>) /** Requests to hide the current input method. */ - fun hideCurrentInputMethod(onImeHidden: Runnable?) - - /** Allows callers to clear the runnable set by [hideCurrentInputMethod]. */ - fun clearImeHiddenRunnable() + fun hideCurrentInputMethod() companion object { @@ -55,12 +52,8 @@ interface BubbleStackViewManager { controller.isNotificationPanelExpanded(callback) } - override fun hideCurrentInputMethod(onImeHidden: Runnable?) { - controller.hideCurrentInputMethod(onImeHidden) - } - - override fun clearImeHiddenRunnable() { - controller.clearImeHiddenRunnable() + override fun hideCurrentInputMethod() { + controller.hideCurrentInputMethod() } } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleTaskView.kt b/wmshell/src/com/android/wm/shell/bubbles/BubbleTaskView.kt index 0a37e9cf3d..65f8e48eb8 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleTaskView.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleTaskView.kt @@ -16,12 +16,14 @@ package com.android.wm.shell.bubbles -import android.app.ActivityManager.RunningTaskInfo +import android.app.ActivityTaskManager import android.app.ActivityTaskManager.INVALID_TASK_ID import android.content.ComponentName +import android.os.RemoteException +import android.util.Log import androidx.annotation.VisibleForTesting -import com.android.wm.shell.bubbles.util.BubbleUtils.isBubbleToFullscreen import com.android.wm.shell.taskview.TaskView +import com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS import java.util.concurrent.Executor /** @@ -43,16 +45,6 @@ class BubbleTaskView(val taskView: TaskView, executor: Executor) { var componentName: ComponentName? = null private set - /** - * Whether the task view is visible and has a surface. Note that this does not check the alpha - * value of the task view. - * - * When this is `true` it is safe to start showing the task view. Otherwise if this is `false` - * callers should wait for it to be visible which will be indicated either by a call to - * [TaskView.Listener.onTaskCreated] or [TaskView.Listener.onTaskVisibilityChanged]. */ - var isVisible = false - private set - /** [TaskView.Listener] for users of this class. */ var delegateListener: TaskView.Listener? = null @@ -63,10 +55,6 @@ class BubbleTaskView(val taskView: TaskView, executor: Executor) { delegateListener?.onInitialized() } - override fun onSurfaceAlreadyCreated() { - delegateListener?.onSurfaceAlreadyCreated() - } - override fun onReleased() { delegateListener?.onReleased() } @@ -76,12 +64,9 @@ class BubbleTaskView(val taskView: TaskView, executor: Executor) { this@BubbleTaskView.taskId = taskId isCreated = true componentName = name - // when the task is created it is visible - isVisible = true } override fun onTaskVisibilityChanged(taskId: Int, visible: Boolean) { - this@BubbleTaskView.isVisible = visible delegateListener?.onTaskVisibilityChanged(taskId, visible) } @@ -89,10 +74,6 @@ class BubbleTaskView(val taskView: TaskView, executor: Executor) { delegateListener?.onTaskRemovalStarted(taskId) } - override fun onTaskInfoChanged(taskInfo: RunningTaskInfo?) { - delegateListener?.onTaskInfoChanged(taskInfo) - } - override fun onBackPressedOnTaskRoot(taskId: Int) { delegateListener?.onBackPressedOnTaskRoot(taskId) } @@ -108,10 +89,21 @@ class BubbleTaskView(val taskView: TaskView, executor: Executor) { * This should be called after all other cleanup animations have finished. */ fun cleanup() { - if (isBubbleToFullscreen(taskView.taskInfo)) { - taskView.unregisterTask() - } else { - taskView.removeTask() + if (taskId != INVALID_TASK_ID) { + // Ensure the task is removed from WM + if (ENABLE_SHELL_TRANSITIONS) { + taskView.removeTask() + } else { + try { + ActivityTaskManager.getService().removeTask(taskId) + } catch (e: RemoteException) { + Log.w(TAG, e.message ?: "") + } + } } } + + private companion object { + const val TAG = "BubbleTaskView" + } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubbleViewInfoTask.java b/wmshell/src/com/android/wm/shell/bubbles/BubbleViewInfoTask.java index a8d056e198..69119cf433 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubbleViewInfoTask.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubbleViewInfoTask.java @@ -20,44 +20,44 @@ import static com.android.wm.shell.bubbles.BadgedImageView.DEFAULT_PATH_SIZE; import static com.android.wm.shell.bubbles.BadgedImageView.WHITE_SCRIM_ALPHA; import static com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_BUBBLES; import static com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_WITH_CLASS_NAME; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES; -import static com.android.wm.shell.shared.bubbles.FlyoutDrawableLoader.loadFlyoutDrawable; +import android.annotation.NonNull; import android.annotation.Nullable; import android.content.Context; +import android.content.Intent; +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageManager; import android.content.pm.ShortcutInfo; import android.graphics.Bitmap; import android.graphics.Color; import android.graphics.Matrix; import android.graphics.Path; import android.graphics.drawable.Drawable; +import android.graphics.drawable.Icon; +import android.os.AsyncTask; import android.util.Log; import android.util.PathParser; import android.view.LayoutInflater; -import android.view.View; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.graphics.ColorUtils; -import com.android.internal.protolog.ProtoLog; import com.android.launcher3.icons.BitmapInfo; import com.android.launcher3.icons.BubbleIconFactory; import com.android.wm.shell.R; -import com.android.wm.shell.bubbles.appinfo.BubbleAppInfo; -import com.android.wm.shell.bubbles.appinfo.BubbleAppInfoProvider; import com.android.wm.shell.bubbles.bar.BubbleBarExpandedView; import com.android.wm.shell.bubbles.bar.BubbleBarLayerView; -import com.android.wm.shell.shared.handles.RegionSamplingHelper; import java.lang.ref.WeakReference; +import java.util.Objects; import java.util.concurrent.Executor; -import java.util.concurrent.atomic.AtomicBoolean; /** * Simple task to inflate views & load necessary info to display a bubble. */ -public class BubbleViewInfoTask { +public class BubbleViewInfoTask extends AsyncTask<Void, Void, BubbleViewInfoTask.BubbleViewInfo> { private static final String TAG = TAG_WITH_CLASS_NAME ? "BubbleViewInfoTask" : TAG_BUBBLES; + /** * Callback to find out when the bubble has been inflated & necessary data loaded. */ @@ -68,23 +68,17 @@ public class BubbleViewInfoTask { void onBubbleViewsReady(Bubble bubble); } - private final Bubble mBubble; - private final WeakReference<Context> mContext; - private final WeakReference<BubbleExpandedViewManager> mExpandedViewManager; - private final WeakReference<BubbleTaskViewFactory> mTaskViewFactory; - private final WeakReference<BubblePositioner> mPositioner; - private final WeakReference<BubbleStackView> mStackView; - private final WeakReference<BubbleBarLayerView> mLayerView; - private final BubbleIconFactory mIconFactory; - private final boolean mSkipInflation; - private final Callback mCallback; - private final Executor mMainExecutor; - private final Executor mBgExecutor; - private final BubbleAppInfoProvider mAppInfoProvider; - - private final AtomicBoolean mStarted = new AtomicBoolean(); - private final AtomicBoolean mCancelled = new AtomicBoolean(); - private final AtomicBoolean mFinished = new AtomicBoolean(); + private Bubble mBubble; + private WeakReference<Context> mContext; + private WeakReference<BubbleExpandedViewManager> mExpandedViewManager; + private WeakReference<BubbleTaskViewFactory> mTaskViewFactory; + private WeakReference<BubblePositioner> mPositioner; + private WeakReference<BubbleStackView> mStackView; + private WeakReference<BubbleBarLayerView> mLayerView; + private BubbleIconFactory mIconFactory; + private boolean mSkipInflation; + private Callback mCallback; + private Executor mMainExecutor; /** * Creates a task to load information for the provided {@link Bubble}. Once all info @@ -98,11 +92,9 @@ public class BubbleViewInfoTask { @Nullable BubbleStackView stackView, @Nullable BubbleBarLayerView layerView, BubbleIconFactory factory, - BubbleAppInfoProvider appInfoProvider, boolean skipInflation, Callback c, - Executor mainExecutor, - Executor bgExecutor) { + Executor mainExecutor) { mBubble = b; mContext = new WeakReference<>(context); mExpandedViewManager = new WeakReference<>(expandedViewManager); @@ -111,138 +103,43 @@ public class BubbleViewInfoTask { mStackView = new WeakReference<>(stackView); mLayerView = new WeakReference<>(layerView); mIconFactory = factory; - mAppInfoProvider = appInfoProvider; mSkipInflation = skipInflation; mCallback = c; mMainExecutor = mainExecutor; - mBgExecutor = bgExecutor; } - /** - * Load bubble view info in background using {@code bgExecutor} specified in constructor. - * <br> - * Use {@link #cancel()} to stop the task. - * - * @throws IllegalStateException if the task is already started - */ - public void start() { - verifyCanStart(); - if (mCancelled.get()) { - // We got cancelled even before start was called. Exit early - mFinished.set(true); - return; - } - mBgExecutor.execute(() -> { - if (mCancelled.get()) { - // We got cancelled while background executor was busy and this was waiting - mFinished.set(true); - return; - } - BubbleViewInfo viewInfo = loadViewInfo(); - if (mCancelled.get()) { - // Do not schedule anything on main executor if we got cancelled. - // Loading view info involves inflating views and it is possible we get cancelled - // during it. - mFinished.set(true); - return; - } - mMainExecutor.execute(() -> { - // Before updating view info check that we did not get cancelled while waiting - // main executor to pick up the work - if (!mCancelled.get()) { - updateViewInfo(viewInfo); - } - mFinished.set(true); - }); - }); - } - - private void verifyCanStart() { - if (mStarted.getAndSet(true)) { - throw new IllegalStateException("Task already started"); - } - } - - /** - * Load bubble view info synchronously. - * - * @throws IllegalStateException if the task is already started - */ - public void startSync() { - verifyCanStart(); - if (mCancelled.get()) { - mFinished.set(true); - return; - } - updateViewInfo(loadViewInfo()); - mFinished.set(true); - } - - /** - * Cancel the task. Stops the task from running if called before {@link #start()} or - * {@link #startSync()} - */ - public void cancel() { - mCancelled.set(true); - } - - /** - * Return {@code true} when the task has completed loading the view info. - */ - public boolean isFinished() { - return mFinished.get(); - } - - @Nullable - private BubbleViewInfo loadViewInfo() { + @Override + protected BubbleViewInfo doInBackground(Void... voids) { if (!verifyState()) { // If we're in an inconsistent state, then switched modes and should just bail now. return null; } - ProtoLog.v(WM_SHELL_BUBBLES, "Task loading bubble view info key=%s", mBubble.getKey()); if (mLayerView.get() != null) { - return BubbleViewInfo.populateForBubbleBar(mContext.get(), mTaskViewFactory.get(), - mLayerView.get(), mIconFactory, mBubble, mAppInfoProvider, mSkipInflation); + return BubbleViewInfo.populateForBubbleBar(mContext.get(), mExpandedViewManager.get(), + mTaskViewFactory.get(), mPositioner.get(), mLayerView.get(), mIconFactory, + mBubble, mSkipInflation); } else { - return BubbleViewInfo.populate(mContext.get(), mTaskViewFactory.get(), - mPositioner.get(), mStackView.get(), mIconFactory, mBubble, mAppInfoProvider, - mSkipInflation); + return BubbleViewInfo.populate(mContext.get(), mExpandedViewManager.get(), + mTaskViewFactory.get(), mPositioner.get(), mStackView.get(), mIconFactory, + mBubble, mSkipInflation); } } - private void updateViewInfo(@Nullable BubbleViewInfo viewInfo) { - if (viewInfo == null || !verifyState()) { + @Override + protected void onPostExecute(BubbleViewInfo viewInfo) { + if (isCancelled() || viewInfo == null) { return; } - ProtoLog.v(WM_SHELL_BUBBLES, "Task updating bubble view info key=%s", mBubble.getKey()); - if (!mBubble.isInflated()) { - if (viewInfo.expandedView != null) { - ProtoLog.v(WM_SHELL_BUBBLES, "Task initializing expanded view key=%s", - mBubble.getKey()); - viewInfo.expandedView.initialize(mExpandedViewManager.get(), mStackView.get(), - mPositioner.get(), false /* isOverflow */, viewInfo.taskView); - } else if (viewInfo.bubbleBarExpandedView != null) { - ProtoLog.v(WM_SHELL_BUBBLES, "Task initializing bubble bar expanded view key=%s", - mBubble.getKey()); - viewInfo.bubbleBarExpandedView.initialize(mExpandedViewManager.get(), - mPositioner.get(), false /* isOverflow */, mBubble, - viewInfo.taskView, mMainExecutor, mBgExecutor, - new RegionSamplingProvider() { - @Override - public RegionSamplingHelper createHelper(View sampledView, - RegionSamplingHelper.SamplingCallback callback, - Executor backgroundExecutor, Executor mainExecutor) { - return RegionSamplingProvider.super.createHelper(sampledView, - callback, backgroundExecutor, mainExecutor); - } - }); - } - } - mBubble.setViewInfo(viewInfo); - if (mCallback != null) { - mCallback.onBubbleViewsReady(mBubble); - } + mMainExecutor.execute(() -> { + if (!verifyState()) { + return; + } + mBubble.setViewInfo(viewInfo); + if (mCallback != null) { + mCallback.onBubbleViewsReady(mBubble); + } + }); } private boolean verifyState() { @@ -260,9 +157,6 @@ public class BubbleViewInfoTask { public static class BubbleViewInfo { // TODO(b/273312602): for foldables it might make sense to populate all of the views - // Only set if views where inflated as part of the task - @Nullable BubbleTaskView taskView; - // Always populated ShortcutInfo shortcutInfo; String appName; @@ -276,66 +170,66 @@ public class BubbleViewInfoTask { @Nullable BubbleExpandedView expandedView; int dotColor; Path dotPath; - Bubble.FlyoutMessage flyoutMessage; + @Nullable Bubble.FlyoutMessage flyoutMessage; Bitmap bubbleBitmap; Bitmap badgeBitmap; @Nullable public static BubbleViewInfo populateForBubbleBar(Context c, + BubbleExpandedViewManager expandedViewManager, BubbleTaskViewFactory taskViewFactory, + BubblePositioner positioner, BubbleBarLayerView layerView, BubbleIconFactory iconFactory, Bubble b, - BubbleAppInfoProvider appInfoProvider, boolean skipInflation) { BubbleViewInfo info = new BubbleViewInfo(); if (!skipInflation && !b.isInflated()) { - ProtoLog.v(WM_SHELL_BUBBLES, "Task inflating bubble bar views key=%s", b.getKey()); - info.taskView = b.getOrCreateBubbleTaskView(taskViewFactory); + BubbleTaskView bubbleTaskView = b.getOrCreateBubbleTaskView(taskViewFactory); LayoutInflater inflater = LayoutInflater.from(c); info.bubbleBarExpandedView = (BubbleBarExpandedView) inflater.inflate( R.layout.bubble_bar_expanded_view, layerView, false /* attachToRoot */); + info.bubbleBarExpandedView.initialize( + expandedViewManager, positioner, false /* isOverflow */, bubbleTaskView); } - if (!populateCommonInfo(info, c, b, iconFactory, appInfoProvider)) { + if (!populateCommonInfo(info, c, b, iconFactory)) { // if we failed to update common fields return null return null; } - // set the flyout message but don't load the avatar because we can't pass it on the - // binder to launcher - info.flyoutMessage = b.getFlyoutMessage(); - return info; } @VisibleForTesting @Nullable public static BubbleViewInfo populate(Context c, + BubbleExpandedViewManager expandedViewManager, BubbleTaskViewFactory taskViewFactory, BubblePositioner positioner, BubbleStackView stackView, BubbleIconFactory iconFactory, Bubble b, - BubbleAppInfoProvider appInfoProvider, boolean skipInflation) { BubbleViewInfo info = new BubbleViewInfo(); // View inflation: only should do this once per bubble if (!skipInflation && !b.isInflated()) { - ProtoLog.v(WM_SHELL_BUBBLES, "Task inflating bubble views key=%s", b.getKey()); LayoutInflater inflater = LayoutInflater.from(c); info.imageView = (BadgedImageView) inflater.inflate( R.layout.bubble_view, stackView, false /* attachToRoot */); info.imageView.initialize(positioner); - info.taskView = b.getOrCreateBubbleTaskView(taskViewFactory); + BubbleTaskView bubbleTaskView = b.getOrCreateBubbleTaskView(taskViewFactory); info.expandedView = (BubbleExpandedView) inflater.inflate( R.layout.bubble_expanded_view, stackView, false /* attachToRoot */); + info.expandedView.initialize( + expandedViewManager, stackView, positioner, false /* isOverflow */, + bubbleTaskView); } - if (!populateCommonInfo(info, c, b, iconFactory, appInfoProvider)) { + if (!populateCommonInfo(info, c, b, iconFactory)) { // if we failed to update common fields return null return null; } @@ -344,7 +238,7 @@ public class BubbleViewInfoTask { info.flyoutMessage = b.getFlyoutMessage(); if (info.flyoutMessage != null) { info.flyoutMessage.senderAvatar = - loadFlyoutDrawable(info.flyoutMessage.senderIcon, c); + loadSenderAvatar(c, info.flyoutMessage.senderIcon); } return info; } @@ -357,23 +251,35 @@ public class BubbleViewInfoTask { * Callers should assume that the info object is unusable if the update was unsuccessful. */ private static boolean populateCommonInfo( - BubbleViewInfo info, Context c, Bubble b, BubbleIconFactory iconFactory, - BubbleAppInfoProvider appInfoProvider) { + BubbleViewInfo info, Context c, Bubble b, BubbleIconFactory iconFactory) { if (b.getShortcutInfo() != null) { info.shortcutInfo = b.getShortcutInfo(); } - BubbleAppInfo appInfo = appInfoProvider.resolveAppInfo(c, b); - if (appInfo == null) { + // App name & app icon + PackageManager pm = BubbleController.getPackageManagerForUser(c, + b.getUser().getIdentifier()); + ApplicationInfo appInfo; + Drawable badgedIcon; + Drawable appIcon; + try { + appInfo = pm.getApplicationInfo( + b.getPackageName(), + PackageManager.MATCH_UNINSTALLED_PACKAGES + | PackageManager.MATCH_DISABLED_COMPONENTS + | PackageManager.MATCH_DIRECT_BOOT_UNAWARE + | PackageManager.MATCH_DIRECT_BOOT_AWARE); + if (appInfo != null) { + info.appName = String.valueOf(pm.getApplicationLabel(appInfo)); + } + appIcon = pm.getApplicationIcon(b.getPackageName()); + badgedIcon = pm.getUserBadgedIcon(appIcon, b.getUser()); + } catch (PackageManager.NameNotFoundException exception) { + // If we can't find package... don't think we should show the bubble. + Log.w(TAG, "Unable to find package: " + b.getPackageName()); return false; } - Drawable badgedIcon = appInfo.getBadgedIcon(); - Drawable appIcon = appInfo.getAppIcon(); - if (appInfo.getAppName() != null) { - info.appName = appInfo.getAppName(); - } - Drawable bubbleDrawable = null; try { // Badged bubble image @@ -414,4 +320,21 @@ public class BubbleViewInfoTask { Color.WHITE, WHITE_SCRIM_ALPHA); return true; } + + @Nullable + static Drawable loadSenderAvatar(@NonNull final Context context, @Nullable final Icon icon) { + Objects.requireNonNull(context); + if (icon == null) return null; + try { + if (icon.getType() == Icon.TYPE_URI + || icon.getType() == Icon.TYPE_URI_ADAPTIVE_BITMAP) { + context.grantUriPermission(context.getPackageName(), + icon.getUri(), Intent.FLAG_GRANT_READ_URI_PERMISSION); + } + return icon.loadDrawable(context); + } catch (Exception e) { + Log.w(TAG, "loadSenderAvatar failed: " + e.getMessage()); + return null; + } + } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/Bubbles.java b/wmshell/src/com/android/wm/shell/bubbles/Bubbles.java index bfffd40546..82af88d03b 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/Bubbles.java +++ b/wmshell/src/com/android/wm/shell/bubbles/Bubbles.java @@ -23,7 +23,6 @@ import static java.lang.annotation.RetentionPolicy.SOURCE; import android.app.NotificationChannel; import android.content.Intent; -import android.content.pm.ShortcutInfo; import android.content.pm.UserInfo; import android.graphics.drawable.Icon; import android.hardware.HardwareBuffer; @@ -38,9 +37,9 @@ import android.window.ScreenCapture.SynchronousScreenCaptureListener; import androidx.annotation.IntDef; import androidx.annotation.Nullable; +import com.android.wm.shell.common.bubbles.BubbleBarLocation; +import com.android.wm.shell.common.bubbles.BubbleBarUpdate; import com.android.wm.shell.shared.annotations.ExternalThread; -import com.android.wm.shell.shared.bubbles.BubbleBarLocation; -import com.android.wm.shell.shared.bubbles.BubbleBarUpdate; import java.lang.annotation.Retention; import java.lang.annotation.Target; @@ -63,7 +62,7 @@ public interface Bubbles { DISMISS_USER_CHANGED, DISMISS_GROUP_CANCELLED, DISMISS_INVALID_INTENT, DISMISS_OVERFLOW_MAX_REACHED, DISMISS_SHORTCUT_REMOVED, DISMISS_PACKAGE_REMOVED, DISMISS_NO_BUBBLE_UP, DISMISS_RELOAD_FROM_DISK, DISMISS_USER_ACCOUNT_REMOVED, - DISMISS_SWITCH_TO_STACK, DISMISS_USER_GESTURE_FROM_LAUNCHER}) + DISMISS_SWITCH_TO_STACK}) @Target({FIELD, LOCAL_VARIABLE, PARAMETER}) @interface DismissReason { } @@ -85,7 +84,6 @@ public interface Bubbles { int DISMISS_RELOAD_FROM_DISK = 15; int DISMISS_USER_ACCOUNT_REMOVED = 16; int DISMISS_SWITCH_TO_STACK = 17; - int DISMISS_USER_GESTURE_FROM_LAUNCHER = 18; /** Returns a binder that can be passed to an external process to manipulate Bubbles. */ default IBubbles createExternalInterface() { @@ -106,6 +104,9 @@ public interface Bubbles { */ boolean isBubbleExpanded(String key); + /** Tell the stack of bubbles to collapse. */ + void collapseStack(); + /** * Request the stack expand if needed, then select the specified Bubble as current. * If no bubble exists for this entry, one is created. @@ -114,14 +115,6 @@ public interface Bubbles { */ void expandStackAndSelectBubble(BubbleEntry entry); - /** - * Request the stack expand if needed, then select the specified Bubble as current. - * If no bubble exists for this entry, one is created. - * - * @param info the shortcut info to use to create the bubble. - */ - void expandStackAndSelectBubble(ShortcutInfo info); - /** * Request the stack expand if needed, then select the specified Bubble as current. * @@ -131,31 +124,33 @@ public interface Bubbles { /** * This method has different behavior depending on: - * - if a notes bubble exists - * - if a notes bubble is expanded + * - if an app bubble exists + * - if an app bubble is expanded * - * If no notes bubble exists, this will add and expand a bubble with the provided intent. The + * If no app bubble exists, this will add and expand a bubble with the provided intent. The * intent must be explicit (i.e. include a package name or fully qualified component class name) * and the activity for it should be resizable. * - * If a notes bubble exists, this will toggle the visibility of it, i.e. if the notes bubble is - * expanded, calling this method will collapse it. If the notes bubble is not expanded, calling + * If an app bubble exists, this will toggle the visibility of it, i.e. if the app bubble is + * expanded, calling this method will collapse it. If the app bubble is not expanded, calling * this method will expand it. * * These bubbles are <b>not</b> backed by a notification and remain until the user dismisses * the bubble or bubble stack. * - * Some details: - * - Calling this method with a different intent than the existing bubble will do nothing + * Some notes: + * - Only one app bubble is supported at a time, regardless of users. Multi-users support is + * tracked in b/273533235. + * - Calling this method with a different intent than the existing app bubble will do nothing * * @param intent the intent to display in the bubble expanded view. - * @param user the {@link UserHandle} of the user to start this activity for. - * @param icon the {@link Icon} to use for the bubble view. + * @param user the {@link UserHandle} of the user to start this activity for. + * @param icon the {@link Icon} to use for the bubble view. */ - void showOrHideNoteBubble(Intent intent, UserHandle user, @Nullable Icon icon); + void showOrHideAppBubble(Intent intent, UserHandle user, @Nullable Icon icon); /** @return true if the specified {@code taskId} corresponds to app bubble's taskId. */ - boolean isNoteBubbleTaskId(int taskId); + boolean isAppBubbleTaskId(int taskId); /** ` * @return a {@link SynchronousScreenCaptureListener} after performing a screenshot that may @@ -210,8 +205,7 @@ public interface Bubbles { * * @param entry the {@link BubbleEntry} by the notification. * @param shouldBubbleUp {@code true} if this notification should bubble up. - * @param fromSystem {@code true} if this update is from NotificationManagerService or App, - * false means this update is from SystemUi + * @param fromSystem {@code true} if this update is from NotificationManagerService. */ void onEntryUpdated(BubbleEntry entry, boolean shouldBubbleUp, boolean fromSystem); @@ -311,33 +305,6 @@ public interface Bubbles { */ boolean canShowBubbleNotification(); - /** - * Returns the string representation of the given dismiss reason. - */ - public static String dismissReasonToString(@DismissReason int dismissReason) { - switch (dismissReason) { - case DISMISS_USER_GESTURE: return "USER_GESTURE"; - case DISMISS_AGED: return "AGED"; - case DISMISS_TASK_FINISHED: return "TASK_FINISHED"; - case DISMISS_BLOCKED: return "BLOCKED"; - case DISMISS_NOTIF_CANCEL: return "NOTIF_CANCEL"; - case DISMISS_ACCESSIBILITY_ACTION: return "ACCESSIBILITY_ACTION"; - case DISMISS_NO_LONGER_BUBBLE: return "NO_LONGER_BUBBLE"; - case DISMISS_USER_CHANGED: return "USER_CHANGED"; - case DISMISS_GROUP_CANCELLED: return "GROUP_CANCELLED"; - case DISMISS_INVALID_INTENT: return "INVALID_INTENT"; - case DISMISS_OVERFLOW_MAX_REACHED: return "OVERFLOW_MAX_REACHED"; - case DISMISS_SHORTCUT_REMOVED: return "SHORTCUT_REMOVED"; - case DISMISS_PACKAGE_REMOVED: return "PACKAGE_REMOVED"; - case DISMISS_NO_BUBBLE_UP: return "NO_BUBBLE_UP"; - case DISMISS_RELOAD_FROM_DISK: return "RELOAD_FROM_DISK"; - case DISMISS_USER_ACCOUNT_REMOVED: return "USER_ACCOUNT_REMOVED"; - case DISMISS_SWITCH_TO_STACK: return "SWITCH_TO_STACK"; - case DISMISS_USER_GESTURE_FROM_LAUNCHER: return "USER_GESTURE_FROM_LAUNCHER"; - default: return "UNKNOWN"; - } - } - /** * A listener to be notified of bubble state changes, used by launcher to render bubbles in * its process. @@ -353,14 +320,6 @@ public interface Bubbles { * Does not result in a state change. */ void animateBubbleBarLocation(BubbleBarLocation location); - - /** - * Show the bubble bar pillow view at the provided location. - * If the location is null, the pillow view is should be hidden. - * - * @param location The location to show the pillow view, or null to hide it. - */ - void showBubbleBarPillowAt(@Nullable BubbleBarLocation location); } /** Listener to find out about stack expansion / collapse events. */ diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubblesNavBarGestureTracker.java b/wmshell/src/com/android/wm/shell/bubbles/BubblesNavBarGestureTracker.java index 9429c9e71b..137568458e 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubblesNavBarGestureTracker.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubblesNavBarGestureTracker.java @@ -29,7 +29,7 @@ import android.view.InputMonitor; import androidx.annotation.Nullable; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.bubbles.BubblesNavBarMotionEventHandler.MotionEventListener; /** diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubblesNavBarMotionEventHandler.java b/wmshell/src/com/android/wm/shell/bubbles/BubblesNavBarMotionEventHandler.java index d4f53ab353..b7107f09b1 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubblesNavBarMotionEventHandler.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubblesNavBarMotionEventHandler.java @@ -28,7 +28,7 @@ import android.view.ViewConfiguration; import androidx.annotation.Nullable; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; /** * Handles {@link MotionEvent}s for bubbles that begin in the nav bar area diff --git a/wmshell/src/com/android/wm/shell/bubbles/BubblesTransitionObserver.java b/wmshell/src/com/android/wm/shell/bubbles/BubblesTransitionObserver.java index 7afe789877..c1f704ab45 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/BubblesTransitionObserver.java +++ b/wmshell/src/com/android/wm/shell/bubbles/BubblesTransitionObserver.java @@ -13,176 +13,56 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package com.android.wm.shell.bubbles; import static android.app.ActivityTaskManager.INVALID_TASK_ID; -import static com.android.wm.shell.Flags.enableEnterSplitRemoveBubble; -import static com.android.wm.shell.bubbles.util.BubbleUtils.getExitBubbleTransaction; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES_NOISY; - import android.app.ActivityManager; -import android.os.Binder; import android.os.IBinder; import android.view.SurfaceControl; -import android.window.ActivityTransitionInfo; import android.window.TransitionInfo; -import android.window.WindowContainerTransaction; import androidx.annotation.NonNull; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.splitscreen.SplitScreenController; -import com.android.wm.shell.taskview.TaskViewTaskController; -import com.android.wm.shell.taskview.TaskViewTransitions; import com.android.wm.shell.transition.Transitions; -import dagger.Lazy; - -import java.util.Optional; - /** * Observer used to identify tasks that are opening or moving to front. If a bubble activity is * currently opened when this happens, we'll collapse the bubbles. */ public class BubblesTransitionObserver implements Transitions.TransitionObserver { - @NonNull - private final BubbleController mBubbleController; - @NonNull - private final BubbleData mBubbleData; - @NonNull - private final TaskViewTransitions mTaskViewTransitions; - private final Lazy<Optional<SplitScreenController>> mSplitScreenController; + private BubbleController mBubbleController; + private BubbleData mBubbleData; - public BubblesTransitionObserver(@NonNull BubbleController controller, - @NonNull BubbleData bubbleData, - @NonNull TaskViewTransitions taskViewTransitions, - Lazy<Optional<SplitScreenController>> splitScreenController) { + public BubblesTransitionObserver(BubbleController controller, + BubbleData bubbleData) { mBubbleController = controller; mBubbleData = bubbleData; - mTaskViewTransitions = taskViewTransitions; - mSplitScreenController = splitScreenController; } @Override public void onTransitionReady(@NonNull IBinder transition, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction) { - collapseBubbleIfNeeded(info); - if (enableEnterSplitRemoveBubble() && BubbleAnythingFlagHelper.enableCreateAnyBubble()) { - if (TransitionUtil.isOpeningType(info.getType()) && mBubbleData.hasBubbles()) { - removeBubbleIfLaunchingToSplit(info); - } - } - } - - private void collapseBubbleIfNeeded(@NonNull TransitionInfo info) { - // --- Pre-conditions (Loop-invariant checks) --- - // If bubbles aren't expanded, are animating, or no bubble is selected, - // we don't need to process any transitions for collapsing. - if (mBubbleController.isStackAnimating() - || !mBubbleData.isExpanded() - || mBubbleData.getSelectedBubble() == null) { - return; - } - - final int expandedTaskId = mBubbleData.getSelectedBubble().getTaskId(); - // If expanded task id is invalid, we don't need to process any transitions for collapsing. - if (expandedTaskId == INVALID_TASK_ID) { - return; - } - - final int bubbleViewDisplayId = mBubbleController.getCurrentViewDisplayId(); for (TransitionInfo.Change change : info.getChanges()) { - // We only care about opens / move to fronts. - if (!TransitionUtil.isOpeningType(change.getMode())) { - continue; - } - // If the opening transition is on a different display, skip collapsing because - // it does not visually overlap with the bubbles. - if (change.getEndDisplayId() != bubbleViewDisplayId) { - continue; - } - final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); - final ActivityTransitionInfo activityInfo = change.getActivityTransitionInfo(); - if (taskInfo != null) { // Task transition. - if (shouldBypassCollapseForTask(taskInfo.taskId, expandedTaskId)) { - continue; - } - - // If the opening task was launched by another bubble, skip collapsing the - // existing one since BubbleTransitions will start a new bubble for it. - if (BubbleAnythingFlagHelper.enableCreateAnyBubble() - && mBubbleController.shouldBeAppBubble(taskInfo)) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "BubblesTransitionObserver.onTransitionReady(): " - + "skipping app bubble for taskId=%d", taskInfo.taskId); - continue; - } - } else if (activityInfo != null) { // Activity transition. - if (shouldBypassCollapseForTask(activityInfo.getTaskId(), expandedTaskId)) { - continue; - } - } else { // Invalid transition. + // We only care about opens / move to fronts when bubbles are expanded & not animating. + if (taskInfo == null + || taskInfo.taskId == INVALID_TASK_ID + || !TransitionUtil.isOpeningType(change.getMode()) + || mBubbleController.isStackAnimating() + || !mBubbleData.isExpanded() + || mBubbleData.getSelectedBubble() == null) { continue; } - - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BubblesTransitionObserver.onTransitionReady(): " - + "collapse the expanded bubble for taskId=%d", expandedTaskId); - mBubbleData.setExpanded(false); - return; - } - } - - /** Checks if a task should be skipped for bubble collapse based on task ID. */ - private boolean shouldBypassCollapseForTask(int taskId, int expandedTaskId) { - if (taskId == INVALID_TASK_ID) { - ProtoLog.w(WM_SHELL_BUBBLES_NOISY, "BubblesTransitionObserver.onTransitionReady(): " - + "task id is invalid so skip collapsing"); - return true; - } - // If the opening task id is the same as the expanded bubble, skip collapsing - // because it is our bubble that is opening. - if (taskId == expandedTaskId) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BubblesTransitionObserver.onTransitionReady(): " - + "task %d is our bubble so skip collapsing", taskId); - return true; - } - return false; - } - - private void removeBubbleIfLaunchingToSplit(@NonNull TransitionInfo info) { - if (mSplitScreenController.get().isEmpty()) return; - SplitScreenController splitScreenController = mSplitScreenController.get().get(); - for (TransitionInfo.Change change : info.getChanges()) { - ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); - if (taskInfo == null) continue; - Bubble bubble = mBubbleData.getBubbleInStackWithTaskId(taskInfo.taskId); - if (bubble == null) continue; - if (!splitScreenController.isTaskRootOrStageRoot(taskInfo.parentTaskId)) continue; - // There is a bubble task that is moving to split screen - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BubblesTransitionObserver.onTransitionReady(): " - + "removing bubble for task launching into split taskId=%d", taskInfo.taskId); - TaskViewTaskController taskViewTaskController = bubble.getTaskView().getController(); - ShellTaskOrganizer taskOrganizer = taskViewTaskController.getTaskOrganizer(); - WindowContainerTransaction wct = getExitBubbleTransaction(taskInfo.token, - bubble.getTaskView().getCaptionInsetsOwner()); - - // Notify the task removal, but block all TaskViewTransitions during removal so we can - // clear them without triggering - final IBinder gate = new Binder(); - mTaskViewTransitions.enqueueExternal(taskViewTaskController, () -> gate); - - taskOrganizer.applyTransaction(wct); - taskViewTaskController.notifyTaskRemovalStarted(taskInfo); - mTaskViewTransitions.removePendingTransitions(taskViewTaskController); - mTaskViewTransitions.onExternalDone(gate); + int expandedId = mBubbleData.getSelectedBubble().getTaskId(); + // If the task id that's opening is the same as the expanded bubble, skip collapsing + // because it is our bubble that is opening. + if (expandedId != INVALID_TASK_ID && expandedId != taskInfo.taskId) { + mBubbleData.setExpanded(false); + } } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/DismissViewExt.kt b/wmshell/src/com/android/wm/shell/bubbles/DismissViewExt.kt index 0de3d52e13..48692d4101 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/DismissViewExt.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/DismissViewExt.kt @@ -17,33 +17,18 @@ package com.android.wm.shell.bubbles -import androidx.annotation.DimenRes import com.android.wm.shell.R -import com.android.wm.shell.shared.bubbles.DismissView -import com.android.wm.shell.shared.R as SharedR - -private val defaultConfig = - DismissView.Config( - dismissViewResId = R.id.dismiss_view, - targetSizeResId = SharedR.dimen.floating_dismiss_background_size, - iconSizeResId = SharedR.dimen.floating_dismiss_icon_size, - bottomMarginResId = R.dimen.floating_dismiss_bottom_margin, - floatingGradientHeightResId = R.dimen.floating_dismiss_gradient_height, - floatingGradientColorResId = android.R.color.system_neutral1_900, - backgroundResId = SharedR.drawable.floating_dismiss_background, - iconResId = SharedR.drawable.floating_dismiss_ic_close, - applyMarginOverNavBarInset = true, - ) +import com.android.wm.shell.common.bubbles.DismissView fun DismissView.setup() { - setup(defaultConfig) -} - -fun DismissView.setupWithMarginIgnoringNavBarInset(@DimenRes bottomMarginResId: Int) { - setup( - defaultConfig.copy( - bottomMarginResId = bottomMarginResId, - applyMarginOverNavBarInset = false, - ) - ) -} + setup(DismissView.Config( + dismissViewResId = R.id.dismiss_view, + targetSizeResId = R.dimen.dismiss_circle_size, + iconSizeResId = R.dimen.dismiss_target_x_size, + bottomMarginResId = R.dimen.floating_dismiss_bottom_margin, + floatingGradientHeightResId = R.dimen.floating_dismiss_gradient_height, + floatingGradientColorResId = android.R.color.system_neutral1_900, + backgroundResId = R.drawable.dismiss_circle_background, + iconResId = R.drawable.pip_ic_close_white + )) +} \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/bubbles/IBubbles.aidl b/wmshell/src/com/android/wm/shell/bubbles/IBubbles.aidl index f4695281e8..1db556c041 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/IBubbles.aidl +++ b/wmshell/src/com/android/wm/shell/bubbles/IBubbles.aidl @@ -17,12 +17,9 @@ package com.android.wm.shell.bubbles; import android.content.Intent; -import android.content.pm.ShortcutInfo; -import android.graphics.Point; import android.graphics.Rect; -import android.os.UserHandle; import com.android.wm.shell.bubbles.IBubblesListener; -import com.android.wm.shell.shared.bubbles.BubbleBarLocation; +import com.android.wm.shell.common.bubbles.BubbleBarLocation; /** * Interface that is exposed to remote callers (launcher) to manipulate the bubbles feature when @@ -34,9 +31,9 @@ interface IBubbles { oneway void unregisterBubbleListener(in IBubblesListener listener) = 2; - oneway void showBubble(in String key, in int bubbleBarTopToScreenBottom) = 3; + oneway void showBubble(in String key, in int topOnScreen) = 3; - oneway void dragBubbleToDismiss(in String key, in long timestamp) = 4; + oneway void dragBubbleToDismiss(in String key) = 4; oneway void removeAllBubbles() = 5; @@ -46,19 +43,9 @@ interface IBubbles { oneway void showUserEducation(in int positionX, in int positionY) = 8; - oneway void setBubbleBarLocation(in BubbleBarLocation location, in int source) = 9; + oneway void setBubbleBarLocation(in BubbleBarLocation location) = 9; - oneway void updateBubbleBarTopToScreenBottom(in int bubbleBarTopToScreenBottom) = 10; + oneway void updateBubbleBarTopOnScreen(in int topOnScreen) = 10; - oneway void stopBubbleDrag(in BubbleBarLocation location, in int bubbleBarTopToScreenBottom) = 11; - - oneway void showShortcutBubble(in ShortcutInfo info, in @nullable BubbleBarLocation location) = 12; - - oneway void showAppBubble(in Intent intent, in UserHandle user, in @nullable BubbleBarLocation location) = 13; - - oneway void showExpandedView() = 14; - - oneway void moveDraggedBubbleToFullscreen(in String key, in Point dropLocation) = 15; - - oneway void setHasBubbleBar(in boolean hasBubbleBar) = 16; + oneway void stopBubbleDrag(in BubbleBarLocation location, in int topOnScreen) = 11; } \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/bubbles/IBubblesListener.aidl b/wmshell/src/com/android/wm/shell/bubbles/IBubblesListener.aidl index d51ff3d01f..14d29cd887 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/IBubblesListener.aidl +++ b/wmshell/src/com/android/wm/shell/bubbles/IBubblesListener.aidl @@ -17,7 +17,7 @@ package com.android.wm.shell.bubbles; import android.os.Bundle; -import com.android.wm.shell.shared.bubbles.BubbleBarLocation; +import com.android.wm.shell.common.bubbles.BubbleBarLocation; /** * Listener interface that Launcher attaches to SystemUI to get bubbles callbacks. */ @@ -33,10 +33,4 @@ oneway interface IBubblesListener { * Does not result in a state change. */ void animateBubbleBarLocation(in BubbleBarLocation location); - - /** - * Show the bubble bar pillow view at the provided location. - * If the location is null, the pillow view is should be hidden. - */ - void showBubbleBarPillowAt(in BubbleBarLocation location); } \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/bubbles/ManageEducationView.kt b/wmshell/src/com/android/wm/shell/bubbles/ManageEducationView.kt index d2ad70886f..da71b1c741 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/ManageEducationView.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/ManageEducationView.kt @@ -27,8 +27,7 @@ import android.widget.Button import android.widget.LinearLayout import com.android.internal.R.color.system_neutral1_900 import com.android.wm.shell.R -import com.android.wm.shell.shared.TypefaceUtils -import com.android.wm.shell.shared.animation.Interpolators +import com.android.wm.shell.animation.Interpolators /** * User education view to highlight the manage button that allows a user to configure the settings @@ -54,12 +53,6 @@ class ManageEducationView( init { LayoutInflater.from(context).inflate(R.layout.bubbles_manage_button_education, this) - TypefaceUtils.setTypeface(findViewById(R.id.user_education_title), - TypefaceUtils.FontFamily.GSF_HEADLINE_SMALL_EMPHASIZED) - TypefaceUtils.setTypeface(findViewById(R.id.user_education_description), - TypefaceUtils.FontFamily.GSF_BODY_MEDIUM) - TypefaceUtils.setTypeface(manageButton, TypefaceUtils.FontFamily.GSF_LABEL_LARGE_EMPHASIZED) - TypefaceUtils.setTypeface(gotItButton, TypefaceUtils.FontFamily.GSF_LABEL_LARGE_EMPHASIZED) visibility = View.GONE elevation = resources.getDimensionPixelSize(R.dimen.bubble_elevation).toFloat() diff --git a/wmshell/src/com/android/wm/shell/bubbles/OWNERS b/wmshell/src/com/android/wm/shell/bubbles/OWNERS index 290151a2e5..08c7031497 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/OWNERS +++ b/wmshell/src/com/android/wm/shell/bubbles/OWNERS @@ -2,4 +2,5 @@ madym@google.com atsjenk@google.com liranb@google.com +sukeshram@google.com mpodolian@google.com diff --git a/wmshell/src/com/android/wm/shell/bubbles/StackEducationView.kt b/wmshell/src/com/android/wm/shell/bubbles/StackEducationView.kt index 9ac059890d..c4108c4129 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/StackEducationView.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/StackEducationView.kt @@ -26,8 +26,7 @@ import android.widget.LinearLayout import android.widget.TextView import com.android.internal.util.ContrastColorUtil import com.android.wm.shell.R -import com.android.wm.shell.shared.TypefaceUtils -import com.android.wm.shell.shared.animation.Interpolators +import com.android.wm.shell.animation.Interpolators /** * User education view to highlight the collapsed stack of bubbles. Shown only the first time a user @@ -60,9 +59,6 @@ class StackEducationView( init { LayoutInflater.from(context).inflate(R.layout.bubble_stack_user_education, this) - TypefaceUtils.setTypeface(titleTextView, - TypefaceUtils.FontFamily.GSF_HEADLINE_SMALL_EMPHASIZED) - TypefaceUtils.setTypeface(descTextView, TypefaceUtils.FontFamily.GSF_BODY_MEDIUM) visibility = View.GONE elevation = resources.getDimensionPixelSize(R.dimen.bubble_elevation).toFloat() diff --git a/wmshell/src/com/android/wm/shell/bubbles/animation/AnimatableScaleMatrix.java b/wmshell/src/com/android/wm/shell/bubbles/animation/AnimatableScaleMatrix.java index e577c3e0b1..2612b81aae 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/animation/AnimatableScaleMatrix.java +++ b/wmshell/src/com/android/wm/shell/bubbles/animation/AnimatableScaleMatrix.java @@ -141,10 +141,4 @@ public class AnimatableScaleMatrix extends Matrix { // PhysicsAnimator's animator caching). return obj == this; } - - @Override - public int hashCode() { - // Make sure equals and hashCode work in a similar way. Rely on object identity for both. - return System.identityHashCode(this); - } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/animation/ExpandedAnimationController.java b/wmshell/src/com/android/wm/shell/bubbles/animation/ExpandedAnimationController.java index ffdd71cde9..44ddfe2da8 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/animation/ExpandedAnimationController.java +++ b/wmshell/src/com/android/wm/shell/bubbles/animation/ExpandedAnimationController.java @@ -33,13 +33,13 @@ import androidx.dynamicanimation.animation.DynamicAnimation; import androidx.dynamicanimation.animation.SpringForce; import com.android.wm.shell.R; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.bubbles.BadgedImageView; import com.android.wm.shell.bubbles.BubbleOverflow; import com.android.wm.shell.bubbles.BubblePositioner; import com.android.wm.shell.bubbles.BubbleStackView; -import com.android.wm.shell.shared.animation.Interpolators; -import com.android.wm.shell.shared.animation.PhysicsAnimator; import com.android.wm.shell.shared.magnetictarget.MagnetizedObject; +import com.android.wm.shell.shared.animation.PhysicsAnimator; import com.google.android.collect.Sets; @@ -354,7 +354,6 @@ public class ExpandedAnimationController View bubble, MagnetizedObject.MagneticTarget target, MagnetizedObject.MagnetListener listener) { - if (mLayout == null) return; mLayout.cancelAnimationsOnView(bubble); mMagnetizedBubbleDraggingOut = new MagnetizedObject<View>( diff --git a/wmshell/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerImpl.java b/wmshell/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerImpl.java index 7cb537a24c..aa4129a14d 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerImpl.java +++ b/wmshell/src/com/android/wm/shell/bubbles/animation/ExpandedViewAnimationControllerImpl.java @@ -38,11 +38,11 @@ import androidx.dynamicanimation.animation.FloatPropertyCompat; import androidx.dynamicanimation.animation.SpringAnimation; import androidx.dynamicanimation.animation.SpringForce; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.animation.FlingAnimationUtils; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.bubbles.BubbleExpandedView; import com.android.wm.shell.bubbles.BubblePositioner; -import com.android.wm.shell.shared.animation.Interpolators; import java.util.ArrayList; import java.util.List; diff --git a/wmshell/src/com/android/wm/shell/bubbles/animation/StackAnimationController.java b/wmshell/src/com/android/wm/shell/bubbles/animation/StackAnimationController.java index 91585dc425..2bf8acb2e8 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/animation/StackAnimationController.java +++ b/wmshell/src/com/android/wm/shell/bubbles/animation/StackAnimationController.java @@ -42,8 +42,8 @@ import com.android.wm.shell.bubbles.BadgedImageView; import com.android.wm.shell.bubbles.BubblePositioner; import com.android.wm.shell.bubbles.BubbleStackView; import com.android.wm.shell.common.FloatingContentCoordinator; -import com.android.wm.shell.shared.animation.PhysicsAnimator; import com.android.wm.shell.shared.magnetictarget.MagnetizedObject; +import com.android.wm.shell.shared.animation.PhysicsAnimator; import com.google.android.collect.Sets; diff --git a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarAnimationHelper.java b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarAnimationHelper.java index e9887b1a36..e909e754de 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarAnimationHelper.java +++ b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarAnimationHelper.java @@ -16,7 +16,6 @@ package com.android.wm.shell.bubbles.bar; import static android.view.View.ALPHA; -import static android.view.View.INVISIBLE; import static android.view.View.SCALE_X; import static android.view.View.SCALE_Y; import static android.view.View.TRANSLATION_X; @@ -25,38 +24,31 @@ import static android.view.View.VISIBLE; import static android.view.View.X; import static android.view.View.Y; +import static com.android.wm.shell.animation.Interpolators.EMPHASIZED; +import static com.android.wm.shell.animation.Interpolators.EMPHASIZED_DECELERATE; import static com.android.wm.shell.bubbles.bar.BubbleBarExpandedView.CORNER_RADIUS; -import static com.android.wm.shell.bubbles.bar.BubbleBarExpandedView.TASK_VIEW_ALPHA; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES_NOISY; -import static com.android.wm.shell.shared.animation.Interpolators.EMPHASIZED; -import static com.android.wm.shell.shared.animation.Interpolators.EMPHASIZED_DECELERATE; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.animation.ValueAnimator; -import android.annotation.NonNull; import android.content.Context; +import android.graphics.Point; import android.graphics.Rect; import android.util.Log; -import android.view.SurfaceControl; +import android.util.Size; import android.widget.FrameLayout; import androidx.annotation.Nullable; -import androidx.dynamicanimation.animation.FloatPropertyCompat; -import com.android.app.animation.Interpolators; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.R; -import com.android.wm.shell.animation.SizeChangeAnimation; -import com.android.wm.shell.bubbles.Bubble; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.bubbles.BubbleOverflow; import com.android.wm.shell.bubbles.BubblePositioner; import com.android.wm.shell.bubbles.BubbleViewProvider; import com.android.wm.shell.bubbles.animation.AnimatableScaleMatrix; -import com.android.wm.shell.shared.animation.PhysicsAnimator; import com.android.wm.shell.shared.magnetictarget.MagnetizedObject.MagneticTarget; +import com.android.wm.shell.shared.animation.PhysicsAnimator; /** * Helper class to animate a {@link BubbleBarExpandedView} on a bubble. @@ -67,7 +59,7 @@ public class BubbleBarAnimationHelper { private static final float EXPANDED_VIEW_ANIMATE_SCALE_AMOUNT = 0.1f; private static final float EXPANDED_VIEW_ANIMATE_OUT_SCALE_AMOUNT = .75f; - private static final int EXPANDED_VIEW_EXPAND_ALPHA_DURATION = 150; + private static final int EXPANDED_VIEW_ALPHA_ANIMATION_DURATION = 150; private static final int EXPANDED_VIEW_SNAP_TO_DISMISS_DURATION = 400; private static final int EXPANDED_VIEW_ANIMATE_TO_REST_DURATION = 400; private static final int EXPANDED_VIEW_DISMISS_DURATION = 250; @@ -80,17 +72,6 @@ public class BubbleBarAnimationHelper { private static final float DISMISS_VIEW_SCALE = 1.25f; private static final int HANDLE_ALPHA_ANIMATION_DURATION = 100; - private static final float SWITCH_OUT_SCALE = 0.97f; - private static final long SWITCH_OUT_SCALE_DURATION = 200L; - private static final long SWITCH_OUT_ALPHA_DURATION = 100L; - private static final long SWITCH_OUT_HANDLE_ALPHA_DURATION = 50L; - private static final long SWITCH_IN_ANIM_DELAY = 50L; - private static final long SWITCH_IN_TX_DURATION = 350L; - private static final long SWITCH_IN_ALPHA_DURATION = 50L; - // Keep this handle alpha delay at least as long as alpha animation for both expanded views. - private static final long SWITCH_IN_HANDLE_ALPHA_DELAY = 150L; - private static final long SWITCH_IN_HANDLE_ALPHA_DURATION = 100L; - /** Spring config for the expanded view scale-in animation. */ private final PhysicsAnimator.SpringConfig mScaleInSpringConfig = new PhysicsAnimator.SpringConfig(300f, 0.9f); @@ -99,111 +80,128 @@ public class BubbleBarAnimationHelper { private final PhysicsAnimator.SpringConfig mScaleOutSpringConfig = new PhysicsAnimator.SpringConfig(900f, 1f); - private final int mSwitchAnimPositionOffset; - /** Matrix used to scale the expanded view container with a given pivot point. */ private final AnimatableScaleMatrix mExpandedViewContainerMatrix = new AnimatableScaleMatrix(); - @Nullable - private Animator mRunningAnimator; + /** Animator for animating the expanded view's alpha (including the TaskView inside it). */ + private final ValueAnimator mExpandedViewAlphaAnimator = ValueAnimator.ofFloat(0f, 1f); + @Nullable + private Animator mRunningDragAnimator; + + private final Context mContext; + private final BubbleBarLayerView mLayerView; private final BubblePositioner mPositioner; private final int[] mTmpLocation = new int[2]; - // TODO(b/381936992): remove expanded bubble state from this helper class private BubbleViewProvider mExpandedBubble; + private boolean mIsExpanded = false; - public BubbleBarAnimationHelper(Context context, BubblePositioner positioner) { + public BubbleBarAnimationHelper(Context context, + BubbleBarLayerView bubbleBarLayerView, + BubblePositioner positioner) { + mContext = context; + mLayerView = bubbleBarLayerView; mPositioner = positioner; - mSwitchAnimPositionOffset = context.getResources().getDimensionPixelSize( - R.dimen.bubble_bar_expanded_view_switch_offset); + + mExpandedViewAlphaAnimator.setDuration(EXPANDED_VIEW_ALPHA_ANIMATION_DURATION); + mExpandedViewAlphaAnimator.setInterpolator(Interpolators.PANEL_CLOSE_ACCELERATED); + mExpandedViewAlphaAnimator.addListener(new AnimatorListenerAdapter() { + @Override + public void onAnimationStart(Animator animation) { + BubbleBarExpandedView bbev = getExpandedView(); + if (bbev != null) { + // We need to be Z ordered on top in order for alpha animations to work. + bbev.setSurfaceZOrderedOnTop(true); + bbev.setAnimating(true); + } + } + + @Override + public void onAnimationEnd(Animator animation) { + BubbleBarExpandedView bbev = getExpandedView(); + if (bbev != null) { + // The surface needs to be Z ordered on top for alpha values to work on the + // TaskView, and if we're temporarily hidden, we are still on the screen + // with alpha = 0f until we animate back. Stay Z ordered on top so the alpha + // = 0f remains in effect. + if (mIsExpanded) { + bbev.setSurfaceZOrderedOnTop(false); + } + + bbev.setContentVisibility(mIsExpanded); + bbev.setAnimating(false); + } + } + }); + mExpandedViewAlphaAnimator.addUpdateListener(valueAnimator -> { + BubbleBarExpandedView bbev = getExpandedView(); + if (bbev != null) { + float alpha = (float) valueAnimator.getAnimatedValue(); + bbev.setTaskViewAlpha(alpha); + bbev.setAlpha(alpha); + } + }); } /** * Animates the provided bubble's expanded view to the expanded state. - * - * @param endRunnable a runnable to run at the end of the animation (even if the animation is - * canceled) */ public void animateExpansion(BubbleViewProvider expandedBubble, - @Nullable Runnable endRunnable) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateExpansion()"); + @Nullable Runnable afterAnimation) { mExpandedBubble = expandedBubble; final BubbleBarExpandedView bbev = getExpandedView(); if (bbev == null) { return; } + mIsExpanded = true; mExpandedViewContainerMatrix.setScaleX(0f); mExpandedViewContainerMatrix.setScaleY(0f); - prepareForAnimateIn(bbev); + updateExpandedView(); + bbev.setAnimating(true); + bbev.setContentVisibility(false); + bbev.setAlpha(0f); + bbev.setTaskViewAlpha(0f); + bbev.setVisibility(VISIBLE); setScaleFromBubbleBar(mExpandedViewContainerMatrix, 1f - EXPANDED_VIEW_ANIMATE_SCALE_AMOUNT); bbev.setAnimationMatrix(mExpandedViewContainerMatrix); - bbev.animateExpansionWhenTaskViewVisible(() -> { - bbev.getHandleView().setAlpha(1); - ObjectAnimator alphaAnim = createAlphaAnimator(bbev, /* visible= */ true); - alphaAnim.setDuration(EXPANDED_VIEW_EXPAND_ALPHA_DURATION); - alphaAnim.setInterpolator(Interpolators.PANEL_CLOSE_ACCELERATED); - alphaAnim.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - bbev.setAnimating(false); - } - }); - startNewAnimator(alphaAnim); + mExpandedViewAlphaAnimator.start(); - PhysicsAnimator.getInstance(mExpandedViewContainerMatrix).cancel(); - PhysicsAnimator.getInstance(mExpandedViewContainerMatrix) - .spring(AnimatableScaleMatrix.SCALE_X, - AnimatableScaleMatrix.getAnimatableValueForScaleFactor(1f), - mScaleInSpringConfig) - .spring(AnimatableScaleMatrix.SCALE_Y, - AnimatableScaleMatrix.getAnimatableValueForScaleFactor(1f), - mScaleInSpringConfig) - .addUpdateListener((target, values) -> { - bbev.setAnimationMatrix(mExpandedViewContainerMatrix); - }) - .withEndActions(() -> { - bbev.setAnimationMatrix(null); - updateExpandedView(bbev); - }) - .withEndOrCancelActions(() -> { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "BBAnimationHelper.animateExpansion(): finished"); - if (endRunnable != null) { - endRunnable.run(); - } - }) - .start(); - }); - } - - private void prepareForAnimateIn(BubbleBarExpandedView bbev) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.prepareForAnimateIn()"); - bbev.setAnimating(true); - updateExpandedView(bbev); - // We need to be Z ordered on top in order for taskView alpha to work. - // It is also set when the alpha animation starts, but needs to be set here to too avoid - // flickers. - bbev.setSurfaceZOrderedOnTop(true); - bbev.setTaskViewAlpha(0f); - bbev.setContentVisibility(false); - bbev.setVisibility(VISIBLE); + PhysicsAnimator.getInstance(mExpandedViewContainerMatrix).cancel(); + PhysicsAnimator.getInstance(mExpandedViewContainerMatrix) + .spring(AnimatableScaleMatrix.SCALE_X, + AnimatableScaleMatrix.getAnimatableValueForScaleFactor(1f), + mScaleInSpringConfig) + .spring(AnimatableScaleMatrix.SCALE_Y, + AnimatableScaleMatrix.getAnimatableValueForScaleFactor(1f), + mScaleInSpringConfig) + .addUpdateListener((target, values) -> { + bbev.setAnimationMatrix(mExpandedViewContainerMatrix); + }) + .withEndActions(() -> { + bbev.setAnimationMatrix(null); + updateExpandedView(); + bbev.setSurfaceZOrderedOnTop(false); + if (afterAnimation != null) { + afterAnimation.run(); + } + }) + .start(); } /** * Collapses the currently expanded bubble. * - * @param endRunnable a runnable to run at the end of the animation (even if the animation is - * canceled) + * @param endRunnable a runnable to run at the end of the animation. */ public void animateCollapse(Runnable endRunnable) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateCollapse()"); + mIsExpanded = false; final BubbleBarExpandedView bbev = getExpandedView(); if (bbev == null) { Log.w(TAG, "Trying to animate collapse without a bubble"); @@ -214,19 +212,6 @@ public class BubbleBarAnimationHelper { setScaleFromBubbleBar(mExpandedViewContainerMatrix, 1f); - bbev.setAnimating(true); - - ObjectAnimator alphaAnim = createAlphaAnimator(bbev, /* visible= */ false); - alphaAnim.setDuration(EXPANDED_VIEW_EXPAND_ALPHA_DURATION); - alphaAnim.setInterpolator(Interpolators.PANEL_CLOSE_ACCELERATED); - alphaAnim.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - bbev.setAnimating(false); - } - }); - startNewAnimator(alphaAnim); - PhysicsAnimator.getInstance(mExpandedViewContainerMatrix).cancel(); PhysicsAnimator.getInstance(mExpandedViewContainerMatrix) .spring(AnimatableScaleMatrix.SCALE_X, @@ -242,16 +227,12 @@ public class BubbleBarAnimationHelper { }) .withEndActions(() -> { bbev.setAnimationMatrix(null); - bbev.resetBottomClip(); - }) - .withEndOrCancelActions(() -> { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "BBAnimationHelper.animateCollapse(): finished"); if (endRunnable != null) { endRunnable.run(); } }) .start(); + mExpandedViewAlphaAnimator.reverse(); } private void setScaleFromBubbleBar(AnimatableScaleMatrix matrix, float scale) { @@ -262,158 +243,16 @@ public class BubbleBarAnimationHelper { matrix.setScale(scale, scale, pivotX, pivotY); } - /** - * Animate between two bubble views using a switch animation - * - * @param fromBubble bubble to hide - * @param toBubble bubble to show - * @param endRunnable optional runnable after animation finishes (even if the animation is - * canceled) - */ - public void animateSwitch(BubbleViewProvider fromBubble, BubbleViewProvider toBubble, - @Nullable Runnable endRunnable) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateSwitch(): from=%s to=%s", - fromBubble.getKey(), toBubble.getKey()); - /* - * Switch animation - * - * |.....................fromBubble scale to 0.97.....................| - * |fromBubble handle alpha 0|....fromBubble alpha to 0.....| | - * 0-------------------------50-----------------------100---150--------200----------250--400 - * |..toBubble alpha to 1...| |toBubble handle alpha 1| | - * |................toBubble position +/-48 to 0...............| - */ - - mExpandedBubble = toBubble; - final BubbleBarExpandedView toBbev = toBubble.getBubbleBarExpandedView(); - final BubbleBarExpandedView fromBbev = fromBubble.getBubbleBarExpandedView(); - if (toBbev == null || fromBbev == null) { - return; - } - - fromBbev.setAnimating(true); - - prepareForAnimateIn(toBbev); - final float endTx = toBbev.getTranslationX(); - final float startTx = getSwitchAnimationInitialTx(endTx); - toBbev.setTranslationX(startTx); - toBbev.getHandleView().setAlpha(0f); - toBbev.getHandleView().setHandleInitialColor(fromBbev.getHandleView().getHandleColor()); - - toBbev.animateExpansionWhenTaskViewVisible(() -> { - AnimatorSet switchAnim = new AnimatorSet(); - switchAnim.playTogether(switchOutAnimator(fromBbev), switchInAnimator(toBbev, endTx)); - switchAnim.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "BBAnimationHelper.animateSwitch(): finished"); - if (endRunnable != null) { - endRunnable.run(); - } - } - }); - startNewAnimator(switchAnim); - }); - } - - private float getSwitchAnimationInitialTx(float endTx) { - if (mPositioner.isBubbleBarOnLeft()) { - return endTx - mSwitchAnimPositionOffset; - } else { - return endTx + mSwitchAnimPositionOffset; - } - } - - private Animator switchOutAnimator(BubbleBarExpandedView bbev) { - setPivotToCenter(bbev); - AnimatorSet scaleAnim = new AnimatorSet(); - scaleAnim.playTogether( - ObjectAnimator.ofFloat(bbev, SCALE_X, SWITCH_OUT_SCALE), - ObjectAnimator.ofFloat(bbev, SCALE_Y, SWITCH_OUT_SCALE) - ); - scaleAnim.setInterpolator(Interpolators.ACCELERATE); - scaleAnim.setDuration(SWITCH_OUT_SCALE_DURATION); - - ObjectAnimator alphaAnim = createAlphaAnimator(bbev, /* visible= */ false); - alphaAnim.setStartDelay(SWITCH_OUT_HANDLE_ALPHA_DURATION); - alphaAnim.setDuration(SWITCH_OUT_ALPHA_DURATION); - - ObjectAnimator handleAlphaAnim = ObjectAnimator.ofFloat(bbev.getHandleView(), ALPHA, 0f) - .setDuration(SWITCH_OUT_HANDLE_ALPHA_DURATION); - - AnimatorSet animator = new AnimatorSet(); - animator.playTogether(scaleAnim, alphaAnim, handleAlphaAnim); - - animator.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - bbev.setAnimating(false); - } - }); - return animator; - } - - private Animator switchInAnimator(BubbleBarExpandedView bbev, float restingTx) { - ObjectAnimator positionAnim = ObjectAnimator.ofFloat(bbev, TRANSLATION_X, restingTx); - positionAnim.setInterpolator(Interpolators.EMPHASIZED_DECELERATE); - positionAnim.setStartDelay(SWITCH_IN_ANIM_DELAY); - positionAnim.setDuration(SWITCH_IN_TX_DURATION); - - // Animate alpha directly to have finer control over surface z-ordering - ObjectAnimator alphaAnim = ObjectAnimator.ofFloat(bbev, TASK_VIEW_ALPHA, 1f); - alphaAnim.setStartDelay(SWITCH_IN_ANIM_DELAY); - alphaAnim.setDuration(SWITCH_IN_ALPHA_DURATION); - alphaAnim.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationStart(Animator animation) { - bbev.setSurfaceZOrderedOnTop(true); - } - - @Override - public void onAnimationEnd(Animator animation) { - bbev.setContentVisibility(true); - // The outgoing expanded view alpha animation is still in progress. - // Do not reset the surface z-order as otherwise the outgoing expanded view is - // placed on top. - } - }); - - ObjectAnimator handleAlphaAnim = ObjectAnimator.ofFloat(bbev.getHandleView(), ALPHA, 1f); - handleAlphaAnim.setStartDelay(SWITCH_IN_HANDLE_ALPHA_DELAY); - handleAlphaAnim.setDuration(SWITCH_IN_HANDLE_ALPHA_DURATION); - handleAlphaAnim.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationStart(Animator animation) { - bbev.setSurfaceZOrderedOnTop(false); - bbev.setAnimating(false); - } - }); - - AnimatorSet animator = new AnimatorSet(); - animator.playTogether(positionAnim, alphaAnim, handleAlphaAnim); - - animator.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - updateExpandedView(bbev); - } - }); - return animator; - } - /** * Animate the expanded bubble when it is being dragged */ public void animateStartDrag() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateStartDrag()"); final BubbleBarExpandedView bbev = getExpandedView(); if (bbev == null) { Log.w(TAG, "Trying to animate start drag without a bubble"); return; } setDragPivot(bbev); - bbev.setDragging(true); // Corner radius gets scaled, apply the reverse scale to ensure we have the desired radius final float cornerRadius = bbev.getDraggedCornerRadius() / EXPANDED_VIEW_DRAG_SCALE; @@ -431,17 +270,16 @@ public class BubbleBarAnimationHelper { AnimatorSet animatorSet = new AnimatorSet(); animatorSet.playTogether(contentAnim, handleAnim); animatorSet.addListener(new DragAnimatorListenerAdapter(bbev)); - startNewAnimator(animatorSet); + startNewDragAnimation(animatorSet); } /** * Animates dismissal of currently expanded bubble * - * @param endRunnable a runnable to run at the end of the animation (even if the animation is - * canceled) + * @param endRunnable a runnable to run at the end of the animation */ public void animateDismiss(Runnable endRunnable) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateDismiss()"); + mIsExpanded = false; final BubbleBarExpandedView bbev = getExpandedView(); if (bbev == null) { Log.w(TAG, "Trying to animate dismiss without a bubble"); @@ -451,40 +289,30 @@ public class BubbleBarAnimationHelper { int[] location = bbev.getLocationOnScreen(); int diffFromBottom = mPositioner.getScreenRect().bottom - location[1]; - ObjectAnimator animator = ObjectAnimator.ofFloat( - bbev, TRANSLATION_Y, bbev.getTranslationY() + (diffFromBottom * 2)); - animator.setDuration(EXPANDED_VIEW_DISMISS_DURATION); - animator.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateDismiss(): finished"); - if (endRunnable != null) { - endRunnable.run(); - } - } - }); - startNewAnimator(animator); + cancelAnimations(); + bbev.animate() + // 2x distance from bottom so the view flies out + .translationYBy(diffFromBottom * 2) + .setDuration(EXPANDED_VIEW_DISMISS_DURATION) + .withEndAction(endRunnable) + .start(); } /** * Animate current expanded bubble back to its rest position */ public void animateToRestPosition() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateToRestPosition()"); BubbleBarExpandedView bbev = getExpandedView(); if (bbev == null) { Log.w(TAG, "Trying to animate expanded view to rest position without a bubble"); return; } - final boolean isOverflow = mExpandedBubble.getKey().equals(BubbleOverflow.KEY); - final Rect rect = new Rect(); - mPositioner.getBubbleBarExpandedViewBounds(mPositioner.isBubbleBarOnLeft(), - isOverflow, rect); + Point restPoint = getExpandedViewRestPosition(getExpandedViewSize()); AnimatorSet contentAnim = new AnimatorSet(); contentAnim.playTogether( - ObjectAnimator.ofFloat(bbev, X, rect.left), - ObjectAnimator.ofFloat(bbev, Y, rect.top), + ObjectAnimator.ofFloat(bbev, X, restPoint.x), + ObjectAnimator.ofFloat(bbev, Y, restPoint.y), ObjectAnimator.ofFloat(bbev, SCALE_X, 1f), ObjectAnimator.ofFloat(bbev, SCALE_Y, 1f), ObjectAnimator.ofFloat(bbev, CORNER_RADIUS, bbev.getRestingCornerRadius()) @@ -501,22 +329,18 @@ public class BubbleBarAnimationHelper { public void onAnimationEnd(Animator animation) { super.onAnimationEnd(animation); bbev.resetPivot(); - bbev.setDragging(false); - updateExpandedView(bbev); } }); - startNewAnimator(animatorSet); + startNewDragAnimation(animatorSet); } /** * Animates currently expanded bubble into the given {@link MagneticTarget}. * * @param target magnetic target to snap to - * @param endRunnable a runnable to run at the end of the animation (even if the animation is - * canceled) + * @param endRunnable a runnable to run at the end of the animation */ public void animateIntoTarget(MagneticTarget target, @Nullable Runnable endRunnable) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateIntoTarget()"); BubbleBarExpandedView bbev = getExpandedView(); if (bbev == null) { Log.w(TAG, "Trying to snap the expanded view to target without a bubble"); @@ -575,22 +399,19 @@ public class BubbleBarAnimationHelper { animatorSet.addListener(new DragAnimatorListenerAdapter(bbev) { @Override public void onAnimationEnd(Animator animation) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "BBAnimationHelper.animateIntoTarget(): finished"); super.onAnimationEnd(animation); if (endRunnable != null) { endRunnable.run(); } } }); - startNewAnimator(animatorSet); + startNewDragAnimation(animatorSet); } /** * Animate currently expanded view when it is released from dismiss view */ public void animateUnstuckFromDismissView(MagneticTarget target) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateUnstuckFromDismissView()"); BubbleBarExpandedView bbev = getExpandedView(); if (bbev == null) { Log.w(TAG, "Trying to unsnap the expanded view from dismiss without a bubble"); @@ -610,87 +431,23 @@ public class BubbleBarAnimationHelper { animatorSet.setDuration(EXPANDED_VIEW_SNAP_TO_DISMISS_DURATION).setInterpolator( EMPHASIZED_DECELERATE); animatorSet.addListener(new DragAnimatorListenerAdapter(bbev)); - startNewAnimator(animatorSet); - } - - /** - * Animates converting of a non-bubble task into an expanded bubble view. - * - * @param endRunnable a runnable to run at the end of the animation (even if the animation is - * canceled) - */ - public void animateConvert(BubbleViewProvider expandedBubble, - @NonNull SurfaceControl.Transaction startT, - @NonNull Rect origBounds, - float origScale, - @NonNull SurfaceControl snapshot, - @NonNull SurfaceControl taskLeash, - @Nullable Runnable endRunnable) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateConvert()"); - mExpandedBubble = expandedBubble; - final BubbleBarExpandedView bbev = getExpandedView(); - if (bbev == null) { - return; - } - - bbev.setTaskViewAlpha(1f); - SurfaceControl tvSf = ((Bubble) mExpandedBubble).getTaskView().getSurfaceControl(); - - final boolean isOverflow = mExpandedBubble.getKey().equals(BubbleOverflow.KEY); - final Rect restBounds = new Rect(); - mPositioner.getBubbleBarExpandedViewBounds(mPositioner.isBubbleBarOnLeft(), - isOverflow, restBounds); - - Rect startBounds = new Rect(origBounds.left - restBounds.left, - origBounds.top - restBounds.top, - origBounds.right - restBounds.left, - origBounds.bottom - restBounds.top); - Rect endBounds = new Rect(0, 0, restBounds.width(), restBounds.height()); - final SizeChangeAnimation sca = new SizeChangeAnimation(startBounds, endBounds, - origScale, /* scaleFactor= */ 1f); - sca.initialize(bbev, taskLeash, snapshot, startT); - - Animator a = sca.buildViewAnimator(bbev, tvSf, snapshot, /* onFinish */ (va) -> { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.animateConvert(): finished"); - updateExpandedView(bbev); - snapshot.release(); - bbev.setSurfaceZOrderedOnTop(false); - bbev.setAnimating(false); - if (endRunnable != null) { - endRunnable.run(); - } - }); - - bbev.setSurfaceZOrderedOnTop(true); - a.setDuration(EXPANDED_VIEW_ANIMATE_TO_REST_DURATION); - a.setInterpolator(EMPHASIZED); - a.start(); + startNewDragAnimation(animatorSet); } /** * Cancel current animations */ public void cancelAnimations() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBAnimationHelper.cancelAnimations(): " - + "hasRunningAnimator=%b", - (mRunningAnimator != null && mRunningAnimator.isRunning())); PhysicsAnimator.getInstance(mExpandedViewContainerMatrix).cancel(); - if (mRunningAnimator != null) { - if (mRunningAnimator.isRunning()) { - mRunningAnimator.cancel(); - } - mRunningAnimator = null; - } - } - - /** Handles IME position changes. */ - public void onImeTopChanged(int imeTop) { + mExpandedViewAlphaAnimator.cancel(); BubbleBarExpandedView bbev = getExpandedView(); - if (bbev == null) { - Log.w(TAG, "Bubble bar expanded view was null when IME top changed"); - return; + if (bbev != null) { + bbev.animate().cancel(); + } + if (mRunningDragAnimator != null) { + mRunningDragAnimator.cancel(); + mRunningDragAnimator = null; } - bbev.onImeTopChanged(imeTop); } private @Nullable BubbleBarExpandedView getExpandedView() { @@ -701,62 +458,48 @@ public class BubbleBarAnimationHelper { return null; } - private void updateExpandedView(BubbleBarExpandedView bbev) { + private void updateExpandedView() { + BubbleBarExpandedView bbev = getExpandedView(); if (bbev == null) { Log.w(TAG, "Trying to update the expanded view without a bubble"); return; } - final boolean isOverflow = mExpandedBubble.getKey().equals(BubbleOverflow.KEY); - final Rect rect = new Rect(); - mPositioner.getBubbleBarExpandedViewBounds(mPositioner.isBubbleBarOnLeft(), - isOverflow, rect); + + final Size size = getExpandedViewSize(); + Point position = getExpandedViewRestPosition(size); FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) bbev.getLayoutParams(); - lp.width = rect.width(); - lp.height = rect.height(); + lp.width = size.getWidth(); + lp.height = size.getHeight(); bbev.setLayoutParams(lp); - bbev.setX(rect.left); - bbev.setY(rect.top); - bbev.setScaleX(1f); - bbev.setScaleY(1f); + bbev.setX(position.x); + bbev.setY(position.y); bbev.updateLocation(); bbev.maybeShowOverflow(); } - private void startNewAnimator(Animator animator) { - cancelAnimations(); - mRunningAnimator = animator; - animator.start(); + private Point getExpandedViewRestPosition(Size size) { + final int padding = mPositioner.getBubbleBarExpandedViewPadding(); + Point point = new Point(); + if (mPositioner.isBubbleBarOnLeft()) { + point.x = mPositioner.getInsets().left + padding; + } else { + point.x = mPositioner.getAvailableRect().width() - size.getWidth() - padding; + } + point.y = mPositioner.getExpandedViewBottomForBubbleBar() - size.getHeight(); + return point; } - /** - * Animate the alpha of the expanded view between visible (1) and invisible (0). - * {@link BubbleBarExpandedView} requires - * {@link com.android.wm.shell.bubbles.BubbleExpandedView#setSurfaceZOrderedOnTop(boolean)} to - * be called before alpha can be applied. - * Only supports alpha of 1 or 0. Otherwise we can't reset surface z-order at the end. - */ - private ObjectAnimator createAlphaAnimator(BubbleBarExpandedView bubbleBarExpandedView, - boolean visible) { - ObjectAnimator animator = ObjectAnimator.ofFloat(bubbleBarExpandedView, TASK_VIEW_ALPHA, - visible ? 1f : 0f); - animator.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationStart(Animator animation) { - // Move task view to the top of the window so alpha can be applied to it - bubbleBarExpandedView.setSurfaceZOrderedOnTop(true); - } + private Size getExpandedViewSize() { + boolean isOverflowExpanded = mExpandedBubble.getKey().equals(BubbleOverflow.KEY); + final int width = mPositioner.getExpandedViewWidthForBubbleBar(isOverflowExpanded); + final int height = mPositioner.getExpandedViewHeightForBubbleBar(isOverflowExpanded); + return new Size(width, height); + } - @Override - public void onAnimationEnd(Animator animation) { - bubbleBarExpandedView.setContentVisibility(visible); - if (!visible) { - // Hide the expanded view before we reset the z-ordering - bubbleBarExpandedView.setVisibility(INVISIBLE); - } - bubbleBarExpandedView.setSurfaceZOrderedOnTop(false); - } - }); - return animator; + private void startNewDragAnimation(Animator animator) { + cancelAnimations(); + mRunningDragAnimator = animator; + animator.start(); } private static void setDragPivot(BubbleBarExpandedView bbev) { @@ -764,12 +507,7 @@ public class BubbleBarAnimationHelper { bbev.setPivotY(0f); } - private static void setPivotToCenter(BubbleBarExpandedView bbev) { - bbev.setPivotX(bbev.getWidth() / 2f); - bbev.setPivotY(bbev.getHeight() / 2f); - } - - private static class DragAnimatorListenerAdapter extends AnimatorListenerAdapter { + private class DragAnimatorListenerAdapter extends AnimatorListenerAdapter { private final BubbleBarExpandedView mBubbleBarExpandedView; @@ -781,9 +519,11 @@ public class BubbleBarAnimationHelper { public void onAnimationStart(Animator animation) { mBubbleBarExpandedView.setAnimating(true); } + @Override public void onAnimationEnd(Animator animation) { mBubbleBarExpandedView.setAnimating(false); + mRunningDragAnimator = null; } } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarExpandedView.java b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarExpandedView.java index dd19244398..972dce51e0 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarExpandedView.java +++ b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarExpandedView.java @@ -18,55 +18,36 @@ package com.android.wm.shell.bubbles.bar; import static android.view.ViewGroup.LayoutParams.MATCH_PARENT; -import static com.android.wm.shell.bubbles.util.BubbleUtils.isValidToBubble; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES_NOISY; - -import static java.lang.Math.max; - import android.annotation.Nullable; import android.app.ActivityManager; import android.content.Context; +import android.content.res.TypedArray; +import android.graphics.Color; import android.graphics.Insets; import android.graphics.Outline; import android.graphics.Rect; -import android.os.Bundle; import android.util.AttributeSet; import android.util.FloatProperty; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.ViewOutlineProvider; -import android.view.accessibility.AccessibilityNodeInfo; import android.widget.FrameLayout; -import android.widget.Toast; -import androidx.annotation.NonNull; -import androidx.annotation.VisibleForTesting; - -import com.android.internal.protolog.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.bubbles.Bubble; import com.android.wm.shell.bubbles.BubbleExpandedViewManager; -import com.android.wm.shell.bubbles.BubbleLogger; import com.android.wm.shell.bubbles.BubbleOverflowContainerView; import com.android.wm.shell.bubbles.BubblePositioner; import com.android.wm.shell.bubbles.BubbleTaskView; -import com.android.wm.shell.bubbles.BubbleTaskViewListener; +import com.android.wm.shell.bubbles.BubbleTaskViewHelper; import com.android.wm.shell.bubbles.Bubbles; -import com.android.wm.shell.bubbles.RegionSamplingProvider; -import com.android.wm.shell.dagger.HasWMComponent; -import com.android.wm.shell.shared.bubbles.BubbleBarLocation; -import com.android.wm.shell.shared.handles.RegionSamplingHelper; import com.android.wm.shell.taskview.TaskView; -import java.io.PrintWriter; -import java.util.concurrent.Executor; import java.util.function.Supplier; -import javax.inject.Inject; - /** Expanded view of a bubble when it's part of the bubble bar. */ -public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskViewListener.Callback { +public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskViewHelper.Listener { /** * The expanded view listener notifying the {@link BubbleBarLayerView} about the internal * actions and events @@ -97,63 +78,24 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView } }; - /** - * Property to set alpha for the task view - */ - public static final FloatProperty<BubbleBarExpandedView> TASK_VIEW_ALPHA = new FloatProperty<>( - "taskViewAlpha") { - @Override - public void setValue(BubbleBarExpandedView bbev, float alpha) { - bbev.setTaskViewAlpha(alpha); - } - - @Override - public Float get(BubbleBarExpandedView bbev) { - return bbev.mTaskView != null ? bbev.mTaskView.getAlpha() : bbev.getAlpha(); - } - }; - private static final String TAG = BubbleBarExpandedView.class.getSimpleName(); private static final int INVALID_TASK_ID = -1; - private Bubble mBubble; private BubbleExpandedViewManager mManager; private BubblePositioner mPositioner; private boolean mIsOverflow; - private BubbleTaskViewListener mBubbleTaskViewListener; + private BubbleTaskViewHelper mBubbleTaskViewHelper; private BubbleBarMenuViewController mMenuViewController; - @Nullable - private Supplier<Rect> mLayerBoundsSupplier; - @Nullable - private Listener mListener; + private @Nullable Supplier<Rect> mLayerBoundsSupplier; + private @Nullable Listener mListener; private BubbleBarHandleView mHandleView; - @Nullable - private BubbleTaskView mBubbleTaskView; - @Nullable - private TaskView mTaskView; - @Nullable - private BubbleOverflowContainerView mOverflowView; + private @Nullable TaskView mTaskView; + private @Nullable BubbleOverflowContainerView mOverflowView; - /** - * The handle shown in the caption area is tinted based on the background color of the area. - * This can vary so we sample the caption region and update the handle color based on that. - * If we're showing the overflow, the helper and executors will be null. - */ - @Nullable - private RegionSamplingHelper mRegionSamplingHelper; - @Nullable - private RegionSamplingProvider mRegionSamplingProvider; - @Nullable - private Executor mMainExecutor; - @Nullable - private Executor mBackgroundExecutor; - private final Rect mSampleRect = new Rect(); - private final int[] mLoc = new int[2]; - private final Rect mTempBounds = new Rect(); - - /** Height of the caption inset at the top of the TaskView */ private int mCaptionHeight; + + private int mBackgroundColor; /** Corner radius used when view is resting */ private float mRestingCornerRadius = 0f; /** Corner radius applied while dragging */ @@ -161,10 +103,6 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView /** Current corner radius */ private float mCurrentCornerRadius = 0f; - /** A runnable to start the expansion animation as soon as the task view is made visible. */ - @Nullable - private Runnable mAnimateExpansion = null; - /** * Whether we want the {@code TaskView}'s content to be visible (alpha = 1f). If * {@link #mIsAnimating} is true, this may not reflect the {@code TaskView}'s actual alpha @@ -172,17 +110,6 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView */ private boolean mIsContentVisible = false; private boolean mIsAnimating; - private boolean mIsDragging; - - private boolean mIsClipping = false; - private int mBottomClip = 0; - private int mImeTop = 0; - - // Ideally this would be package private, but we have to set this in a fake for test and we - // don't yet have dagger set up for tests, so have to set manually - @VisibleForTesting - @Inject - public BubbleLogger bubbleLogger; public BubbleBarExpandedView(Context context) { this(context, null); @@ -205,9 +132,6 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView protected void onFinishInflate() { super.onFinishInflate(); Context context = getContext(); - if (context instanceof HasWMComponent) { - ((HasWMComponent) context).getWMComponent().inject(this); - } setElevation(getResources().getDimensionPixelSize(R.dimen.bubble_elevation)); mCaptionHeight = context.getResources().getDimensionPixelSize( R.dimen.bubble_bar_expanded_view_caption_height); @@ -217,154 +141,109 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView setOutlineProvider(new ViewOutlineProvider() { @Override public void getOutline(View view, Outline outline) { - outline.setRoundRect(0, 0, view.getWidth(), view.getHeight() - mBottomClip, - mCurrentCornerRadius); + outline.setRoundRect(0, 0, view.getWidth(), view.getHeight(), mCurrentCornerRadius); } }); // Set a touch sink to ensure that clicks on the caption area do not propagate to the parent setOnTouchListener((v, event) -> true); } - /** Initializes the view, must be called before doing anything else. */ - public void initialize(BubbleExpandedViewManager expandedViewManager, - BubblePositioner positioner, - boolean isOverflow, - @Nullable Bubble bubble, - @Nullable BubbleTaskView bubbleTaskView, - @Nullable Executor mainExecutor, - @Nullable Executor backgroundExecutor, - @Nullable RegionSamplingProvider regionSamplingProvider) { - mBubble = bubble; - mManager = expandedViewManager; - mPositioner = positioner; - mIsOverflow = isOverflow; - mMainExecutor = mainExecutor; - mBackgroundExecutor = backgroundExecutor; - mRegionSamplingProvider = regionSamplingProvider; - - if (mIsOverflow) { - mOverflowView = (BubbleOverflowContainerView) LayoutInflater.from(getContext()).inflate( - R.layout.bubble_overflow_container, null /* root */); - mOverflowView.initialize(expandedViewManager, positioner); - addView(mOverflowView); - // Don't show handle for overflow - mHandleView.setVisibility(View.GONE); - } else { - mBubbleTaskView = bubbleTaskView; - mTaskView = bubbleTaskView.getTaskView(); - mBubbleTaskViewListener = new BubbleTaskViewListener(mContext, bubbleTaskView, - /* viewParent= */ this, - expandedViewManager, - /* callback= */ this); - - // if the task view is already attached to a parent we need to remove it - if (mTaskView.getParent() != null) { - ((ViewGroup) mTaskView.getParent()).removeView(mTaskView); - } - setupTaskView(); - - // Handle view needs to draw on top of task view. - mHandleView.setElevation(1); - - mHandleView.setAccessibilityDelegate(new HandleViewAccessibilityDelegate()); - } - mMenuViewController = new BubbleBarMenuViewController(mContext, mHandleView, this); - mMenuViewController.setListener(new BubbleBarMenuViewController.Listener() { - @Override - public void onMenuVisibilityChanged(boolean visible) { - setObscured(visible); - if (visible) { - mHandleView.setFocusable(false); - mHandleView.setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_NO); - } else { - mHandleView.setFocusable(true); - mHandleView.setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_AUTO); - } - } - - @Override - public void onUnBubbleConversation(Bubble bubble) { - if (mListener != null) { - mListener.onUnBubbleConversation(bubble.getKey()); - } - bubbleLogger.log(bubble, BubbleLogger.Event.BUBBLE_BAR_APP_MENU_OPT_OUT); - } - - @Override - public void onOpenAppSettings(Bubble bubble) { - mManager.collapseStack(); - mContext.startActivityAsUser(bubble.getSettingsIntent(mContext), bubble.getUser()); - bubbleLogger.log(bubble, BubbleLogger.Event.BUBBLE_BAR_APP_MENU_GO_TO_SETTINGS); - } - - @Override - public void onDismissBubble(Bubble bubble) { - mManager.dismissBubble(bubble, Bubbles.DISMISS_USER_GESTURE); - bubbleLogger.log(bubble, BubbleLogger.Event.BUBBLE_BAR_BUBBLE_DISMISSED_APP_MENU); - } - - @Override - public void onMoveToFullscreen(Bubble bubble) { - if (mTaskView != null) { - mTaskView.moveToFullscreen(); - } - } - }); - mHandleView.setOnClickListener(view -> { - mMenuViewController.showMenu(true /* animated */); - }); - } - - private void setupTaskView() { - // if we're converting this bubble to bar mode, set the isMovingWindows state to false for - // this task view before adding it as a child view. - if (mBubble.isConvertingToBar()) { - mTaskView.setIsMovingWindows(false); - } - - FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(MATCH_PARENT, MATCH_PARENT); - addView(mTaskView, lp); - mTaskView.setEnableSurfaceClipping(true); - mTaskView.setCornerRadius(mCurrentCornerRadius); - mTaskView.setVisibility(VISIBLE); - mTaskView.setCaptionInsets(Insets.of(0, mCaptionHeight, 0, 0)); - } - - public BubbleBarHandleView getHandleView() { - return mHandleView; - } - - /** Updates the view based on the current theme. */ - public void applyThemeAttrs() { - mCaptionHeight = getResources().getDimensionPixelSize( - R.dimen.bubble_bar_expanded_view_caption_height); - mRestingCornerRadius = getResources().getDimensionPixelSize( - R.dimen.bubble_bar_expanded_view_corner_radius); - mDraggedCornerRadius = getResources().getDimensionPixelSize( - R.dimen.bubble_bar_expanded_view_corner_radius_dragged); - - mCurrentCornerRadius = mRestingCornerRadius; - - if (mTaskView != null) { - mTaskView.setCornerRadius(mCurrentCornerRadius); - mTaskView.setCaptionInsets(Insets.of(0, mCaptionHeight, 0, 0)); - } - } - @Override protected void onDetachedFromWindow() { super.onDetachedFromWindow(); // Hide manage menu when view disappears mMenuViewController.hideMenu(false /* animated */); - if (mRegionSamplingHelper != null) { - mRegionSamplingHelper.stopAndDestroy(); - } } - @Override - protected void onAttachedToWindow() { - super.onAttachedToWindow(); - recreateRegionSamplingHelper(); + /** Initializes the view, must be called before doing anything else. */ + public void initialize(BubbleExpandedViewManager expandedViewManager, + BubblePositioner positioner, + boolean isOverflow, + @Nullable BubbleTaskView bubbleTaskView) { + mManager = expandedViewManager; + mPositioner = positioner; + mIsOverflow = isOverflow; + + if (mIsOverflow) { + mOverflowView = (BubbleOverflowContainerView) LayoutInflater.from(getContext()).inflate( + R.layout.bubble_overflow_container, null /* root */); + mOverflowView.initialize(expandedViewManager, positioner); + addView(mOverflowView); + } else { + mTaskView = bubbleTaskView.getTaskView(); + mBubbleTaskViewHelper = new BubbleTaskViewHelper(mContext, expandedViewManager, + /* listener= */ this, bubbleTaskView, + /* viewParent= */ this); + if (mTaskView.getParent() != null) { + ((ViewGroup) mTaskView.getParent()).removeView(mTaskView); + } + FrameLayout.LayoutParams lp = + new FrameLayout.LayoutParams(MATCH_PARENT, MATCH_PARENT); + addView(mTaskView, lp); + mTaskView.setEnableSurfaceClipping(true); + mTaskView.setCornerRadius(mCurrentCornerRadius); + mTaskView.setVisibility(VISIBLE); + + // Handle view needs to draw on top of task view. + bringChildToFront(mHandleView); + } + mMenuViewController = new BubbleBarMenuViewController(mContext, this); + mMenuViewController.setListener(new BubbleBarMenuViewController.Listener() { + @Override + public void onMenuVisibilityChanged(boolean visible) { + setObscured(visible); + } + + @Override + public void onUnBubbleConversation(Bubble bubble) { + if (mListener != null) { + mListener.onUnBubbleConversation(bubble.getKey()); + } + } + + @Override + public void onOpenAppSettings(Bubble bubble) { + mManager.collapseStack(); + mContext.startActivityAsUser(bubble.getSettingsIntent(mContext), bubble.getUser()); + } + + @Override + public void onDismissBubble(Bubble bubble) { + mManager.dismissBubble(bubble, Bubbles.DISMISS_USER_GESTURE); + } + }); + mHandleView.setOnClickListener(view -> { + mMenuViewController.showMenu(true /* animated */); + }); + } + + public BubbleBarHandleView getHandleView() { + return mHandleView; + } + + // TODO (b/275087636): call this when theme/config changes + /** Updates the view based on the current theme. */ + public void applyThemeAttrs() { + mRestingCornerRadius = getResources().getDimensionPixelSize( + R.dimen.bubble_bar_expanded_view_corner_radius + ); + mDraggedCornerRadius = getResources().getDimensionPixelSize( + R.dimen.bubble_bar_expanded_view_corner_radius_dragged + ); + + mCurrentCornerRadius = mRestingCornerRadius; + + final TypedArray ta = mContext.obtainStyledAttributes(new int[]{ + android.R.attr.colorBackgroundFloating}); + mBackgroundColor = ta.getColor(0, Color.WHITE); + ta.recycle(); + mCaptionHeight = getResources().getDimensionPixelSize( + R.dimen.bubble_bar_expanded_view_caption_height); + + if (mTaskView != null) { + mTaskView.setCornerRadius(mCurrentCornerRadius); + updateHandleColor(true /* animated */); + } } @Override @@ -381,43 +260,24 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView protected void onLayout(boolean changed, int l, int t, int r, int b) { super.onLayout(changed, l, t, r, b); if (mTaskView != null) { - mTaskView.layout(l, t, r, t + mTaskView.getMeasuredHeight()); + mTaskView.layout(l, t, r, + t + mTaskView.getMeasuredHeight()); + mTaskView.setCaptionInsets(Insets.of(0, mCaptionHeight, 0, 0)); } } @Override public void onTaskCreated() { - if (mTaskView != null && !mBubble.isConvertingToBar()) { - mTaskView.setAlpha(0); - } + setContentVisibility(true); + updateHandleColor(false /* animated */); if (mListener != null) { mListener.onTaskCreated(); } - // when the task is created we're visible - onTaskViewVisible(); } @Override public void onContentVisibilityChanged(boolean visible) { - if (visible) { - onTaskViewVisible(); - } - } - - @Override - public void onTaskRemovalStarted() { - if (mRegionSamplingHelper != null) { - mRegionSamplingHelper.stopAndDestroy(); - } - } - - @Override - public void onTaskInfoChanged(ActivityManager.RunningTaskInfo taskInfo) { - if (!isValidToBubble(taskInfo)) { - // TODO(b/411558731): Besides just showing a warning toast, also force the app to return - // to fullscreen, similar to split screen behavior when not supported. - Toast.makeText(mContext, R.string.bubble_not_supported_text, Toast.LENGTH_SHORT).show(); - } + setContentVisibility(visible); } @Override @@ -426,79 +286,6 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView mListener.onBackPressed(); } - void animateExpansionWhenTaskViewVisible(Runnable animateExpansion) { - if ((mBubbleTaskView != null && mBubbleTaskView.isVisible()) || mIsOverflow) { - animateExpansion.run(); - } else { - mAnimateExpansion = animateExpansion; - } - } - - private void onTaskViewVisible() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "BBEV.onTaskViewVisible()"); - if (mAnimateExpansion != null) { - mAnimateExpansion.run(); - mAnimateExpansion = null; - } - } - - /** - * Set whether this view is currently being dragged. - * - * When dragging, the handle is hidden and content shouldn't be sampled. When dragging has - * ended we should start again. - */ - public void setDragging(boolean isDragging) { - if (isDragging != mIsDragging) { - mIsDragging = isDragging; - updateSamplingState(); - - if (isDragging && mPositioner.isImeVisible()) { - // Hide the IME when dragging begins - mManager.hideCurrentInputMethod(); - } - } - } - - /** Returns whether region sampling should be enabled, i.e. if task view content is visible. */ - private boolean shouldSampleRegion() { - return mTaskView != null - && mTaskView.getTaskInfo() != null - && !mIsDragging - && !mIsAnimating - && mIsContentVisible; - } - - /** - * Handles starting or stopping the region sampling helper based on - * {@link #shouldSampleRegion()}. - */ - private void updateSamplingState() { - if (mRegionSamplingHelper == null) return; - boolean shouldSample = shouldSampleRegion(); - if (shouldSample) { - mRegionSamplingHelper.start(getCaptionSampleRect()); - } else { - mRegionSamplingHelper.stop(); - } - } - - /** Returns the current area of the caption bar, in screen coordinates. */ - Rect getCaptionSampleRect() { - if (mTaskView == null) return null; - mTaskView.getLocationOnScreen(mLoc); - mSampleRect.set(mLoc[0], mLoc[1], - mLoc[0] + mTaskView.getWidth(), - mLoc[1] + mCaptionHeight); - return mSampleRect; - } - - @VisibleForTesting - @Nullable - public RegionSamplingHelper getRegionSamplingHelper() { - return mRegionSamplingHelper; - } - /** Cleans up the expanded view, should be called when the bubble is no longer active. */ public void cleanUpExpandedState() { mMenuViewController.hideMenu(false /* animated */); @@ -530,16 +317,13 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView /** Updates the bubble shown in the expanded view. */ public void update(Bubble bubble) { - mBubble = bubble; - mBubbleTaskViewListener.setBubble(bubble); + mBubbleTaskViewHelper.update(bubble); mMenuViewController.updateMenu(bubble); } /** The task id of the activity shown in the task view, if it exists. */ public int getTaskId() { - return mBubbleTaskViewListener != null - ? mBubbleTaskViewListener.getTaskId() - : INVALID_TASK_ID; + return mBubbleTaskViewHelper != null ? mBubbleTaskViewHelper.getTaskId() : INVALID_TASK_ID; } /** Sets layer bounds supplier used for obscured touchable region of task view */ @@ -585,13 +369,26 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView if (!mIsAnimating) { mTaskView.setAlpha(visible ? 1f : 0f); - if (mRegionSamplingHelper != null) { - mRegionSamplingHelper.setWindowVisible(visible); - } - updateSamplingState(); } } + /** + * Updates the handle color based on the task view status bar or background color; if those + * are transparent it defaults to the background color pulled from system theme attributes. + */ + private void updateHandleColor(boolean animated) { + if (mTaskView == null || mTaskView.getTaskInfo() == null) return; + int color = mBackgroundColor; + ActivityManager.TaskDescription taskDescription = mTaskView.getTaskInfo().taskDescription; + if (taskDescription.getStatusBarColor() != Color.TRANSPARENT) { + color = taskDescription.getStatusBarColor(); + } else if (taskDescription.getBackgroundColor() != Color.TRANSPARENT) { + color = taskDescription.getBackgroundColor(); + } + final boolean isRegionDark = Color.luminance(color) <= 0.5; + mHandleView.updateHandleColor(isRegionDark, animated); + } + /** * Sets the alpha of both this view and the task view. */ @@ -614,22 +411,12 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView mTaskView.setZOrderedOnTop(onTop, true /* allowDynamicChange */); } - @VisibleForTesting - boolean isSurfaceZOrderedOnTop() { - return mTaskView != null && mTaskView.isZOrderedOnTop(); - } - /** * Sets whether the view is animating, in this case we won't change the content visibility * until the animation is done. */ public void setAnimating(boolean animating) { mIsAnimating = animating; - if (mIsAnimating) { - // Stop sampling while animating -- when animating is done setContentVisibility will - // re-trigger sampling if we're visible. - updateSamplingState(); - } // If we're done animating, apply the correct visibility. if (!animating) { setContentVisibility(mIsContentVisible); @@ -668,157 +455,4 @@ public class BubbleBarExpandedView extends FrameLayout implements BubbleTaskView invalidateOutline(); } } - - /** The y coordinate of the bottom of the expanded view. */ - public int getContentBottomOnScreen() { - if (mOverflowView != null) { - mOverflowView.getBoundsOnScreen(mTempBounds); - } - if (mTaskView != null) { - mTaskView.getBoundsOnScreen(mTempBounds); - } - return mTempBounds.bottom; - } - - /** Notifies the expanded view that the IME top changed. */ - public void onImeTopChanged(int imeTop) { - mImeTop = imeTop; - mBottomClip = max(getContentBottomOnScreen() - mImeTop, 0); - onClipUpdate(); - } - - void updateBottomClip() { - if (mIsClipping) { - onImeTopChanged(mImeTop); - } - } - - void resetBottomClip() { - mBottomClip = 0; - onClipUpdate(); - } - - private void onClipUpdate() { - if (mBottomClip == 0) { - if (mIsClipping) { - mIsClipping = false; - if (mTaskView != null) { - mTaskView.setClipBounds(null); - mTaskView.setEnableSurfaceClipping(false); - } - invalidateOutline(); - } - } else { - if (!mIsClipping) { - mIsClipping = true; - if (mTaskView != null) { - mTaskView.setEnableSurfaceClipping(true); - } - } - invalidateOutline(); - if (mTaskView != null) { - Rect clipBounds = new Rect(0, 0, - mTaskView.getWidth(), - mTaskView.getHeight() - mBottomClip); - mTaskView.setClipBounds(clipBounds); - } - } - } - - private void recreateRegionSamplingHelper() { - if (mRegionSamplingHelper != null) { - mRegionSamplingHelper.stopAndDestroy(); - } - if (mMainExecutor == null || mBackgroundExecutor == null - || mRegionSamplingProvider == null) { - // Null when it's the overflow / don't need sampling then. - return; - } - mRegionSamplingHelper = mRegionSamplingProvider.createHelper(this, - new RegionSamplingHelper.SamplingCallback() { - @Override - public void onRegionDarknessChanged(boolean isRegionDark) { - if (mHandleView != null) { - mHandleView.updateHandleColor(isRegionDark, - true /* animated */); - } - } - - @Override - public Rect getSampledRegion(View sampledView) { - return getCaptionSampleRect(); - } - - @Override - public boolean isSamplingEnabled() { - return shouldSampleRegion(); - } - }, mMainExecutor, mBackgroundExecutor); - } - - private class HandleViewAccessibilityDelegate extends AccessibilityDelegate { - @Override - public void onInitializeAccessibilityNodeInfo(@NonNull View host, - @NonNull AccessibilityNodeInfo info) { - super.onInitializeAccessibilityNodeInfo(host, info); - info.addAction(new AccessibilityNodeInfo.AccessibilityAction( - AccessibilityNodeInfo.ACTION_CLICK, getResources().getString( - R.string.bubble_accessibility_action_expand_menu))); - info.addAction(AccessibilityNodeInfo.AccessibilityAction.ACTION_COLLAPSE); - info.addAction(AccessibilityNodeInfo.AccessibilityAction.ACTION_DISMISS); - if (mPositioner.isBubbleBarOnLeft()) { - info.addAction(new AccessibilityNodeInfo.AccessibilityAction( - R.id.action_move_bubble_bar_right, getResources().getString( - R.string.bubble_accessibility_action_move_bar_right))); - } else { - info.addAction(new AccessibilityNodeInfo.AccessibilityAction( - R.id.action_move_bubble_bar_left, getResources().getString( - R.string.bubble_accessibility_action_move_bar_left))); - } - } - - @Override - public boolean performAccessibilityAction(@NonNull View host, int action, - @Nullable Bundle args) { - if (super.performAccessibilityAction(host, action, args)) { - return true; - } - if (action == AccessibilityNodeInfo.ACTION_COLLAPSE) { - mManager.collapseStack(); - return true; - } - if (action == AccessibilityNodeInfo.ACTION_DISMISS) { - mManager.dismissBubble(mBubble, Bubbles.DISMISS_USER_GESTURE); - return true; - } - if (action == R.id.action_move_bubble_bar_left) { - mManager.updateBubbleBarLocation(BubbleBarLocation.LEFT, - BubbleBarLocation.UpdateSource.A11Y_ACTION_EXP_VIEW); - return true; - } - if (action == R.id.action_move_bubble_bar_right) { - mManager.updateBubbleBarLocation(BubbleBarLocation.RIGHT, - BubbleBarLocation.UpdateSource.A11Y_ACTION_EXP_VIEW); - return true; - } - return false; - } - } - - /** - * Description of current expanded view state. - */ - public void dump(@android.annotation.NonNull PrintWriter pw, - @android.annotation.NonNull String prefix) { - pw.print(prefix); pw.println("BubbleBarExpandedView:"); - pw.print(prefix); pw.print(" taskId: "); pw.println(getTaskId()); - pw.print(prefix); pw.print(" contentVisibility: "); pw.println(mIsContentVisible); - pw.print(prefix); pw.print(" isAnimating: "); pw.println(mIsAnimating); - pw.print(prefix); pw.print(" isDragging: "); pw.println(mIsDragging); - if (mTaskView != null) { - pw.print(prefix); - pw.print(" is task view moving windows: "); - pw.println(mTaskView.isMovingWindows()); - } - } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarExpandedViewDragController.kt b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarExpandedViewDragController.kt index 44d859dfb9..dd2cee46c2 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarExpandedViewDragController.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarExpandedViewDragController.kt @@ -17,48 +17,33 @@ package com.android.wm.shell.bubbles.bar import android.annotation.SuppressLint -import android.content.Context import android.view.MotionEvent import android.view.View -import androidx.annotation.VisibleForTesting -import com.android.wm.shell.R import com.android.wm.shell.bubbles.BubblePositioner -import com.android.wm.shell.shared.bubbles.BubbleBarLocation -import com.android.wm.shell.shared.bubbles.DismissView -import com.android.wm.shell.shared.bubbles.DragZoneFactory -import com.android.wm.shell.shared.bubbles.DraggedObject -import com.android.wm.shell.shared.bubbles.DropTargetManager -import com.android.wm.shell.shared.bubbles.RelativeTouchListener +import com.android.wm.shell.common.bubbles.DismissView +import com.android.wm.shell.common.bubbles.RelativeTouchListener import com.android.wm.shell.shared.magnetictarget.MagnetizedObject /** Controller for handling drag interactions with [BubbleBarExpandedView] */ @SuppressLint("ClickableViewAccessibility") class BubbleBarExpandedViewDragController( - private val context: Context, private val expandedView: BubbleBarExpandedView, private val dismissView: DismissView, private val animationHelper: BubbleBarAnimationHelper, private val bubblePositioner: BubblePositioner, private val pinController: BubbleExpandedViewPinController, - private val dropTargetManager: DropTargetManager?, - private val dragZoneFactory: DragZoneFactory?, - @get:VisibleForTesting val dragListener: DragListener, + private val dragListener: DragListener ) { var isStuckToDismiss: Boolean = false private set - var isDragged: Boolean = false - private set - private var expandedViewInitialTranslationX = 0f private var expandedViewInitialTranslationY = 0f private val magnetizedExpandedView: MagnetizedObject<BubbleBarExpandedView> = MagnetizedObject.magnetizeView(expandedView) private val magnetizedDismissTarget: MagnetizedObject.MagneticTarget - private val draggedBubbleElevation: Float - init { magnetizedExpandedView.magnetListener = MagnetListener() magnetizedExpandedView.animateStuckToTarget = @@ -75,8 +60,6 @@ class BubbleBarExpandedViewDragController( MagnetizedObject.MagneticTarget(dismissView.circle, dismissView.circle.width) magnetizedExpandedView.addTarget(magnetizedDismissTarget) - draggedBubbleElevation = context.resources.getDimension( - R.dimen.dragged_bubble_elevation) val dragMotionEventHandler = HandleDragListener() expandedView.handleView.setOnTouchListener { view, event -> @@ -110,23 +93,7 @@ class BubbleBarExpandedViewDragController( override fun onDown(v: View, ev: MotionEvent): Boolean { // While animating, don't allow new touch events if (expandedView.isAnimating) return false - expandedView.z = draggedBubbleElevation - if (dropTargetManager != null && dragZoneFactory != null) { - val draggedObject = DraggedObject.ExpandedView( - if (bubblePositioner.isBubbleBarOnLeft) { - BubbleBarLocation.LEFT - } else { - BubbleBarLocation.RIGHT - } - ) - dropTargetManager.onDragStarted( - draggedObject, - dragZoneFactory.createSortedDragZones(draggedObject) - ) - } else { - pinController.onDragStart(bubblePositioner.isBubbleBarOnLeft) - } - isDragged = true + pinController.onDragStart(bubblePositioner.isBubbleBarOnLeft) return true } @@ -136,7 +103,7 @@ class BubbleBarExpandedViewDragController( viewInitialX: Float, viewInitialY: Float, dx: Float, - dy: Float, + dy: Float ) { if (!isMoving) { isMoving = true @@ -145,11 +112,7 @@ class BubbleBarExpandedViewDragController( expandedView.translationX = expandedViewInitialTranslationX + dx expandedView.translationY = expandedViewInitialTranslationY + dy dismissView.show() - if (dropTargetManager != null) { - dropTargetManager.onDragUpdated(ev.rawX.toInt(), ev.rawY.toInt()) - } else { - pinController.onDragUpdate(ev.rawX, ev.rawY) - } + pinController.onDragUpdate(ev.rawX, ev.rawY) } override fun onUp( @@ -160,38 +123,31 @@ class BubbleBarExpandedViewDragController( dx: Float, dy: Float, velX: Float, - velY: Float, + velY: Float ) { - v.translationZ = 0f finishDrag() } override fun onCancel(v: View, ev: MotionEvent, viewInitialX: Float, viewInitialY: Float) { isStuckToDismiss = false - v.translationZ = 0f finishDrag() } private fun finishDrag() { if (!isStuckToDismiss) { - if (dropTargetManager != null) { - dropTargetManager.onDragEnded() - } else { - pinController.onDragEnd() - } + pinController.onDragEnd() dragListener.onReleased(inDismiss = false) animationHelper.animateToRestPosition() dismissView.hide() } isMoving = false - isDragged = false } } private inner class MagnetListener : MagnetizedObject.MagnetListener { override fun onStuckToTarget( target: MagnetizedObject.MagneticTarget, - draggedObject: MagnetizedObject<*>, + draggedObject: MagnetizedObject<*> ) { isStuckToDismiss = true pinController.onStuckToDismissTarget() @@ -202,7 +158,7 @@ class BubbleBarExpandedViewDragController( draggedObject: MagnetizedObject<*>, velX: Float, velY: Float, - wasFlungOut: Boolean, + wasFlungOut: Boolean ) { isStuckToDismiss = false animationHelper.animateUnstuckFromDismissView(target) @@ -210,14 +166,10 @@ class BubbleBarExpandedViewDragController( override fun onReleasedInTarget( target: MagnetizedObject.MagneticTarget, - draggedObject: MagnetizedObject<*>, + draggedObject: MagnetizedObject<*> ) { dragListener.onReleased(inDismiss = true) - if (dropTargetManager != null) { - dropTargetManager.onDragEnded() - } else { - pinController.onDragEnd() - } + pinController.onDragEnd() dismissView.hide() } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarHandleView.java b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarHandleView.java index 9cf0d2db71..d54a6b002e 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarHandleView.java +++ b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarHandleView.java @@ -17,18 +17,17 @@ package com.android.wm.shell.bubbles.bar; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; -import android.animation.ArgbEvaluator; import android.animation.ObjectAnimator; import android.annotation.Nullable; import android.content.Context; -import android.graphics.Canvas; -import android.graphics.Paint; +import android.graphics.Outline; +import android.graphics.Path; +import android.graphics.RectF; import android.util.AttributeSet; import android.view.View; +import android.view.ViewOutlineProvider; import androidx.annotation.ColorInt; -import androidx.annotation.VisibleForTesting; -import androidx.core.animation.IntProperty; import androidx.core.content.ContextCompat; import com.android.wm.shell.R; @@ -38,34 +37,12 @@ import com.android.wm.shell.R; */ public class BubbleBarHandleView extends View { private static final long COLOR_CHANGE_DURATION = 120; + // Path used to draw the dots + private final Path mPath = new Path(); - /** Custom property to set handle color. */ - private static final IntProperty<BubbleBarHandleView> HANDLE_COLOR = new IntProperty<>( - "handleColor") { - @Override - public void setValue(BubbleBarHandleView bubbleBarHandleView, int color) { - bubbleBarHandleView.setHandleColor(color); - } - - @Override - public Integer get(BubbleBarHandleView bubbleBarHandleView) { - return bubbleBarHandleView.getHandleColor(); - } - }; - - @VisibleForTesting - final Paint mHandlePaint = new Paint(); private final @ColorInt int mHandleLightColor; private final @ColorInt int mHandleDarkColor; - private final ArgbEvaluator mArgbEvaluator = ArgbEvaluator.getInstance(); - private final float mHandleHeight; - private final float mHandleWidth; - private float mCurrentHandleHeight; - private float mCurrentHandleWidth; - @Nullable - private ObjectAnimator mColorChangeAnim; - private @ColorInt int mRegionSamplerColor; - private boolean mHasSampledColor; + private @Nullable ObjectAnimator mColorChangeAnim; public BubbleBarHandleView(Context context) { this(context, null /* attrs */); @@ -82,64 +59,27 @@ public class BubbleBarHandleView extends View { public BubbleBarHandleView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { super(context, attrs, defStyleAttr, defStyleRes); - mHandlePaint.setFlags(Paint.ANTI_ALIAS_FLAG); - mHandlePaint.setStyle(Paint.Style.FILL); - mHandlePaint.setColor(0); - mHandleHeight = getResources().getDimensionPixelSize( + final int handleHeight = getResources().getDimensionPixelSize( R.dimen.bubble_bar_expanded_view_handle_height); - mHandleWidth = getResources().getDimensionPixelSize( - R.dimen.bubble_bar_expanded_view_caption_width); mHandleLightColor = ContextCompat.getColor(getContext(), R.color.bubble_bar_expanded_view_handle_light); mHandleDarkColor = ContextCompat.getColor(getContext(), R.color.bubble_bar_expanded_view_handle_dark); - mCurrentHandleHeight = mHandleHeight; - mCurrentHandleWidth = mHandleWidth; - setContentDescription(getResources().getString(R.string.handle_text)); - } - private void setHandleColor(int color) { - mHandlePaint.setColor(color); - invalidate(); - } - - /** - * Get current color value for the handle - */ - @ColorInt - public int getHandleColor() { - return mHandlePaint.getColor(); - } - - @Override - protected void onDraw(Canvas canvas) { - super.onDraw(canvas); - float handleLeft = (getWidth() - mCurrentHandleWidth) / 2; - float handleRight = handleLeft + mCurrentHandleWidth; - float handleCenterY = (float) getHeight() / 2; - float handleTop = (int) (handleCenterY - mCurrentHandleHeight / 2); - float handleBottom = handleTop + mCurrentHandleHeight; - float cornerRadius = mCurrentHandleHeight / 2; - canvas.drawRoundRect(handleLeft, handleTop, handleRight, handleBottom, cornerRadius, - cornerRadius, mHandlePaint); - } - - /** Sets handle width, height and color. Does not change the layout properties */ - private void setHandleProperties(float width, float height, int color) { - mCurrentHandleHeight = height; - mCurrentHandleWidth = width; - mHandlePaint.setColor(color); - invalidate(); - } - - /** - * Set initial color for the handle. Takes effect if the - * {@link #updateHandleColor(boolean, boolean)} has not been called. - */ - public void setHandleInitialColor(@ColorInt int color) { - if (!mHasSampledColor) { - setHandleColor(color); - } + setClipToOutline(true); + setOutlineProvider(new ViewOutlineProvider() { + @Override + public void getOutline(View view, Outline outline) { + final int handleCenterY = view.getHeight() / 2; + final int handleTop = handleCenterY - handleHeight / 2; + final int handleBottom = handleTop + handleHeight; + final int radius = handleHeight / 2; + RectF handle = new RectF(/* left = */ 0, handleTop, view.getWidth(), handleBottom); + mPath.reset(); + mPath.addRoundRect(handle, radius, radius, Path.Direction.CW); + outline.setPath(mPath); + } + }); } /** @@ -147,20 +87,15 @@ public class BubbleBarHandleView extends View { * * @param isRegionDark Whether the background behind the handle is dark, and thus the handle * should be light (and vice versa). - * @param animated Whether to animate the change, or apply it immediately. + * @param animated Whether to animate the change, or apply it immediately. */ public void updateHandleColor(boolean isRegionDark, boolean animated) { int newColor = isRegionDark ? mHandleLightColor : mHandleDarkColor; - if (newColor == mRegionSamplerColor) { - return; - } - mHasSampledColor = true; - mRegionSamplerColor = newColor; if (mColorChangeAnim != null) { mColorChangeAnim.cancel(); } if (animated) { - mColorChangeAnim = ObjectAnimator.ofArgb(this, HANDLE_COLOR, newColor); + mColorChangeAnim = ObjectAnimator.ofArgb(this, "backgroundColor", newColor); mColorChangeAnim.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { @@ -170,39 +105,7 @@ public class BubbleBarHandleView extends View { mColorChangeAnim.setDuration(COLOR_CHANGE_DURATION); mColorChangeAnim.start(); } else { - setHandleColor(newColor); + setBackgroundColor(newColor); } } - - /** Returns handle padding top. */ - public int getHandlePaddingTop() { - return (getHeight() - getResources().getDimensionPixelSize( - R.dimen.bubble_bar_expanded_view_handle_height)) / 2; - } - - /** Animates handle for the bubble menu. */ - public void animateHandleForMenu(float progress, float widthDelta, float heightDelta, - int menuColor) { - float currentWidth = mHandleWidth + widthDelta * progress; - float currentHeight = mHandleHeight + heightDelta * progress; - int color = (int) mArgbEvaluator.evaluate(progress, mRegionSamplerColor, menuColor); - setHandleProperties(currentWidth, currentHeight, color); - setTranslationY(heightDelta * progress / 2); - } - - /** Restores all the properties that were animated to the default values. */ - public void restoreAnimationDefaults() { - setHandleProperties(mHandleWidth, mHandleHeight, mRegionSamplerColor); - setTranslationY(0); - } - - /** Returns the handle height. */ - public int getHandleHeight() { - return (int) mHandleHeight; - } - - /** Returns the handle width. */ - public int getHandleWidth() { - return (int) mHandleWidth; - } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerView.java b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerView.java index e2d357530b..badc409979 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerView.java +++ b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarLayerView.java @@ -16,23 +16,17 @@ package com.android.wm.shell.bubbles.bar; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES_NOISY; -import static com.android.wm.shell.shared.animation.Interpolators.ALPHA_IN; -import static com.android.wm.shell.shared.animation.Interpolators.ALPHA_OUT; +import static com.android.wm.shell.animation.Interpolators.ALPHA_IN; +import static com.android.wm.shell.animation.Interpolators.ALPHA_OUT; import static com.android.wm.shell.bubbles.Bubbles.DISMISS_USER_GESTURE; -import static com.android.wm.shell.shared.bubbles.BubbleConstants.BUBBLE_EXPANDED_SCRIM_ALPHA; import android.annotation.Nullable; import android.content.Context; -import android.graphics.Insets; import android.graphics.Point; import android.graphics.Rect; import android.graphics.Region; import android.graphics.drawable.ColorDrawable; -import android.util.Log; import android.view.Gravity; -import android.view.SurfaceControl; import android.view.TouchDelegate; import android.view.View; import android.view.ViewTreeObserver; @@ -40,29 +34,19 @@ import android.view.WindowManager; import android.widget.FrameLayout; import androidx.annotation.NonNull; -import androidx.annotation.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.R; import com.android.wm.shell.bubbles.Bubble; import com.android.wm.shell.bubbles.BubbleController; import com.android.wm.shell.bubbles.BubbleData; -import com.android.wm.shell.bubbles.BubbleExpandedViewTransitionAnimator; -import com.android.wm.shell.bubbles.BubbleLogger; import com.android.wm.shell.bubbles.BubbleOverflow; import com.android.wm.shell.bubbles.BubblePositioner; import com.android.wm.shell.bubbles.BubbleViewProvider; +import com.android.wm.shell.bubbles.DeviceConfig; import com.android.wm.shell.bubbles.DismissViewUtils; import com.android.wm.shell.bubbles.bar.BubbleBarExpandedViewDragController.DragListener; -import com.android.wm.shell.shared.bubbles.BaseBubblePinController; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.shared.bubbles.BubbleBarLocation; -import com.android.wm.shell.shared.bubbles.DeviceConfig; -import com.android.wm.shell.shared.bubbles.DismissView; -import com.android.wm.shell.shared.bubbles.DragZone; -import com.android.wm.shell.shared.bubbles.DragZoneFactory; -import com.android.wm.shell.shared.bubbles.DraggedObject; -import com.android.wm.shell.shared.bubbles.DropTargetManager; +import com.android.wm.shell.common.bubbles.BaseBubblePinController; +import com.android.wm.shell.common.bubbles.BubbleBarLocation; +import com.android.wm.shell.common.bubbles.DismissView; import kotlin.Unit; @@ -76,23 +60,19 @@ import java.util.function.Consumer; * on screen and instead shows & animates the expanded bubble for the bubble bar. */ public class BubbleBarLayerView extends FrameLayout - implements ViewTreeObserver.OnComputeInternalInsetsListener, - BubbleExpandedViewTransitionAnimator { + implements ViewTreeObserver.OnComputeInternalInsetsListener { private static final String TAG = BubbleBarLayerView.class.getSimpleName(); + private static final float SCRIM_ALPHA = 0.2f; + private final BubbleController mBubbleController; private final BubbleData mBubbleData; private final BubblePositioner mPositioner; - private final BubbleLogger mBubbleLogger; private final BubbleBarAnimationHelper mAnimationHelper; private final BubbleEducationViewController mEducationViewController; private final View mScrimView; private final BubbleExpandedViewPinController mBubbleExpandedViewPinController; - @Nullable - private DropTargetManager mDropTargetManager = null; - @Nullable - private DragZoneFactory mDragZoneFactory = null; @Nullable private BubbleViewProvider mExpandedBubble; @@ -112,17 +92,15 @@ public class BubbleBarLayerView extends FrameLayout // Used to ensure touch target size for the menu shown on a bubble expanded view private TouchDelegate mHandleTouchDelegate; private final Rect mHandleTouchBounds = new Rect(); - private Insets mInsets; - public BubbleBarLayerView(Context context, BubbleController controller, BubbleData bubbleData, - BubbleLogger bubbleLogger) { + public BubbleBarLayerView(Context context, BubbleController controller, BubbleData bubbleData) { super(context); mBubbleController = controller; mBubbleData = bubbleData; mPositioner = mBubbleController.getPositioner(); - mBubbleLogger = bubbleLogger; - mAnimationHelper = new BubbleBarAnimationHelper(context, mPositioner); + mAnimationHelper = new BubbleBarAnimationHelper(context, + this, mPositioner); mEducationViewController = new BubbleEducationViewController(context, (boolean visible) -> { if (mExpandedView == null) return; mExpandedView.setObscured(visible); @@ -141,111 +119,22 @@ public class BubbleBarLayerView extends FrameLayout mBubbleExpandedViewPinController = new BubbleExpandedViewPinController( context, this, mPositioner); - LocationChangeListener locationChangeListener = new LocationChangeListener(); - mBubbleExpandedViewPinController.setListener(locationChangeListener); + mBubbleExpandedViewPinController.setListener( + new BaseBubblePinController.LocationChangeListener() { + @Override + public void onChange(@NonNull BubbleBarLocation bubbleBarLocation) { + mBubbleController.animateBubbleBarLocation(bubbleBarLocation); + } - if (BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { - mDropTargetManager = new DropTargetManager(context, this, - new DropTargetManager.DragZoneChangedListener() { - private DragZone mLastBubbleLocationDragZone = null; - private BubbleBarLocation mInitialLocation = null; - @Override - public void onDragEnded(@Nullable DragZone zone) { - if (mExpandedBubble == null || !(mExpandedBubble instanceof Bubble)) { - Log.w(TAG, "dropped invalid bubble: " + mExpandedBubble); - return; - } + @Override + public void onRelease(@NonNull BubbleBarLocation location) { + mBubbleController.setBubbleBarLocation(location); + } + }); - final boolean isBubbleLeft = zone instanceof DragZone.Bubble.Left; - final boolean isBubbleRight = zone instanceof DragZone.Bubble.Right; - if (!isBubbleLeft && !isBubbleRight) { - // If we didn't finish the "change" animation make sure to animate - // it back to the right spot - locationChangeListener.onChange(mInitialLocation); - } - if (zone instanceof DragZone.FullScreen) { - ((Bubble) mExpandedBubble).getTaskView().moveToFullscreen(); - // Make sure location change listener is updated with the initial - // location -- even if we "switched sides" during the drag, since - // we've ended up in fullscreen, the location shouldn't change. - locationChangeListener.onRelease(mInitialLocation); - } else if (isBubbleLeft) { - locationChangeListener.onRelease(BubbleBarLocation.LEFT); - } else if (isBubbleRight) { - locationChangeListener.onRelease(BubbleBarLocation.RIGHT); - } - } - - @Override - public void onInitialDragZoneSet(@Nullable DragZone dragZone) { - mInitialLocation = dragZone instanceof DragZone.Bubble.Left - ? BubbleBarLocation.LEFT - : BubbleBarLocation.RIGHT; - locationChangeListener.onStart(mInitialLocation); - } - - @Override - public void onDragZoneChanged(@NonNull DraggedObject draggedObject, - @Nullable DragZone from, @Nullable DragZone to) { - final boolean isBubbleLeft = to instanceof DragZone.Bubble.Left; - final boolean isBubbleRight = to instanceof DragZone.Bubble.Right; - if ((isBubbleLeft || isBubbleRight) - && to != mLastBubbleLocationDragZone) { - mLastBubbleLocationDragZone = to; - locationChangeListener.onChange(isBubbleLeft - ? BubbleBarLocation.LEFT - : BubbleBarLocation.RIGHT); - - } - } - }); - // TODO - currently only fullscreen is supported, should enable for split & desktop - mDragZoneFactory = new DragZoneFactory(context, mPositioner.getCurrentConfig(), - new DragZoneFactory.SplitScreenModeChecker() { - @NonNull - @Override - public SplitScreenMode getSplitScreenMode() { - return SplitScreenMode.UNSUPPORTED; - } - }, - new DragZoneFactory.DesktopWindowModeChecker() { - @Override - public boolean isSupported() { - return false; - } - }, - new DragZoneFactory.BubbleBarPropertiesProvider() { - // this is only used in launcher - @Override - public int getBottomPadding() { - return 0; - } - - @Override - public int getWidth() { - return 0; - } - - @Override - public int getHeight() { - return 0; - } - }); - } setOnClickListener(view -> hideModalOrCollapse()); } - /** Hides the expanded view drop target. */ - public void hideBubbleBarExpandedViewDropTarget() { - mBubbleExpandedViewPinController.hideDropTarget(); - } - - /** Shows the expanded view drop target at the requested {@link BubbleBarLocation location} */ - public void showBubbleBarExtendedViewDropTarget(@NonNull BubbleBarLocation bubbleBarLocation) { - setVisibility(VISIBLE); - mBubbleExpandedViewPinController.showDropTarget(bubbleBarLocation); - } - @Override protected void onAttachedToWindow() { super.onAttachedToWindow(); @@ -282,60 +171,18 @@ public class BubbleBarLayerView extends FrameLayout } /** Whether the stack of bubbles is expanded or not. */ - @Override public boolean isExpanded() { return mIsExpanded; } - /** Return whether the expanded view is being dragged */ - public boolean isExpandedViewDragged() { - return mDragController != null && mDragController.isDragged(); - } - /** Shows the expanded view of the provided bubble. */ public void showExpandedView(BubbleViewProvider b) { - if (!canExpandView(b)) return; - animateExpand(prepareExpandedView(b)); - } - - /** - * @return whether it's possible to expand {@param b} right now. This is {@code false} if - * the bubble has no view or if the bubble is already showing. - */ - @Override - public boolean canExpandView(BubbleViewProvider b) { - if (b.getBubbleBarExpandedView() == null) return false; - if (mExpandedBubble != null && mIsExpanded && b.getKey().equals(mExpandedBubble.getKey())) { - // Already showing this bubble so can't expand it. - return false; - } - return true; - } - - @Override - public void removeViewFromTransition(View view) { - removeView(view); - } - - /** - * Prepares the expanded view of the provided bubble to be shown. This includes removing any - * stale content and cancelling any related animations. - * - * @return previous open bubble if there was one. - */ - private BubbleViewProvider prepareExpandedView(BubbleViewProvider b) { - if (!canExpandView(b)) { - throw new IllegalStateException("Can't prepare expand. Check canExpandView(b) first."); - } BubbleBarExpandedView expandedView = b.getBubbleBarExpandedView(); - BubbleViewProvider previousBubble = null; + if (expandedView == null) { + return; + } if (mExpandedBubble != null && !b.getKey().equals(mExpandedBubble.getKey())) { - if (mIsExpanded && mExpandedBubble.getBubbleBarExpandedView() != null) { - // Previous expanded view open, keep it visible to animate the switch - previousBubble = mExpandedBubble; - } else { - removeView(mExpandedView); - } + removeView(mExpandedView); mExpandedView = null; } if (mExpandedView == null) { @@ -350,14 +197,6 @@ public class BubbleBarLayerView extends FrameLayout boolean isOverflowExpanded = b.getKey().equals(BubbleOverflow.KEY); final int width = mPositioner.getExpandedViewWidthForBubbleBar(isOverflowExpanded); final int height = mPositioner.getExpandedViewHeightForBubbleBar(isOverflowExpanded); - if (width <= 0 || height <= 0) { - Log.e(TAG, - String.format("got expanded view with non-positive width=%d or height=%d." - + " this could result in the expanded view not having a" - + " surface!", - width, height)); - } - mExpandedView.setVisibility(GONE); mExpandedView.setY(mPositioner.getExpandedViewBottomForBubbleBar() - height); mExpandedView.setLayerBoundsSupplier(() -> new Rect(0, 0, getWidth(), getHeight())); @@ -385,18 +224,14 @@ public class BubbleBarLayerView extends FrameLayout DragListener dragListener = inDismiss -> { if (inDismiss && mExpandedBubble != null) { mBubbleController.dismissBubble(mExpandedBubble.getKey(), DISMISS_USER_GESTURE); - logBubbleEvent(BubbleLogger.Event.BUBBLE_BAR_BUBBLE_DISMISSED_DRAG_EXP_VIEW); } }; mDragController = new BubbleBarExpandedViewDragController( - mContext, mExpandedView, mDismissView, mAnimationHelper, mPositioner, mBubbleExpandedViewPinController, - mDropTargetManager, - mDragZoneFactory, dragListener); addView(mExpandedView, new LayoutParams(width, height, Gravity.LEFT)); @@ -408,34 +243,7 @@ public class BubbleBarLayerView extends FrameLayout mIsExpanded = true; mBubbleController.getSysuiProxy().onStackExpandChanged(true); - showScrim(true); - return previousBubble; - } - - /** - * Performs an animation to open a bubble with content that is not already visible. - * - * @param previousBubble If non-null, this is a bubble that is already showing before the new - * bubble is expanded. - */ - public void animateExpand(BubbleViewProvider previousBubble) { - animateExpand(previousBubble, null /* finishCallback */); - } - - /** - * Performs an animation to open a bubble with content that is not already visible. - * - * @param previousBubble If non-null, this is a bubble that is already showing before the new - * bubble is expanded. - * @param animFinish If non-null, the callback triggered after the expand animation completes - */ - @Override - public void animateExpand(BubbleViewProvider previousBubble, - @Nullable Runnable animFinish) { - if (!mIsExpanded || mExpandedBubble == null) { - throw new IllegalStateException("Can't animateExpand without expnaded state"); - } - final Runnable afterAnimation = () -> { + mAnimationHelper.animateExpansion(mExpandedBubble, () -> { if (mExpandedView == null) return; // Touch delegate for the menu BubbleBarHandleView view = mExpandedView.getHandleView(); @@ -445,81 +253,21 @@ public class BubbleBarLayerView extends FrameLayout mHandleTouchDelegate = new TouchDelegate(mHandleTouchBounds, mExpandedView.getHandleView()); setTouchDelegate(mHandleTouchDelegate); + }); - if (animFinish != null) { - animFinish.run(); - } - }; - - if (previousBubble != null) { - final BubbleBarExpandedView previousExpandedView = - previousBubble.getBubbleBarExpandedView(); - mAnimationHelper.animateSwitch(previousBubble, mExpandedBubble, () -> { - removeView(previousExpandedView); - afterAnimation.run(); - }); - } else { - mAnimationHelper.animateExpansion(mExpandedBubble, afterAnimation); - } + showScrim(true); } - /** - * Like {@link #prepareExpandedView} but also makes the current expanded bubble visible - * immediately so it gets a surface that can be animated. Since the surface may not be ready - * yet, this keeps the TaskView alpha=0. - */ - @Override - public BubbleViewProvider prepareConvertedView(BubbleViewProvider b) { - final BubbleViewProvider prior = prepareExpandedView(b); - - final BubbleBarExpandedView bbev = mExpandedBubble.getBubbleBarExpandedView(); - if (bbev != null) { - updateExpandedView(); - bbev.setAnimating(true); - bbev.setContentVisibility(true); - bbev.setSurfaceZOrderedOnTop(true); - bbev.setTaskViewAlpha(0.f); - bbev.setVisibility(VISIBLE); - } - - return prior; - } - - /** - * Starts and animates a conversion-from transition. - * - * @param startT A transaction with first-frame work. this *will* be applied here! - */ - @Override - public void animateConvert(@NonNull SurfaceControl.Transaction startT, - @NonNull Rect startBounds, float startScale, @NonNull SurfaceControl snapshot, - SurfaceControl taskLeash, Runnable animFinish) { - if (!mIsExpanded || mExpandedBubble == null) { - throw new IllegalStateException("Can't animateExpand without expanded state"); - } - mAnimationHelper.animateConvert(mExpandedBubble, startT, startBounds, startScale, snapshot, - taskLeash, animFinish); - } - - public void removeBubble(@NonNull Bubble bubble, @NonNull Runnable endAction) { - final boolean inTransition = bubble.getPreparingTransition() != null; - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, - "BBLayerView.removeBubble(): bubble=%s hasBubbles=%b inTransition=%b", - bubble, !mBubbleData.getBubbles().isEmpty(), inTransition); + /** Removes the given {@code bubble}. */ + public void removeBubble(Bubble bubble, Runnable endAction) { Runnable cleanUp = () -> { - // The transition is already managing the task/wm state. - bubble.cleanupViews(!inTransition); + bubble.cleanupViews(); endAction.run(); }; - if (mBubbleData.getBubbles().isEmpty() || inTransition) { - if (mExpandedBubble != null && mExpandedBubble.getKey().equals(bubble.getKey())) { - // If we are removing the last bubble or removing the current bubble via transition, - // collapse the expanded view and clean up bubbles at the end. - collapse(cleanUp); - } else { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, " Skipping, does not match expanded view"); - cleanUp.run(); - } + if (mBubbleData.getBubbles().isEmpty()) { + // we're removing the last bubble. collapse the expanded view and cleanup bubble views + // at the end. + collapse(cleanUp); } else { cleanUp.run(); } @@ -592,15 +340,12 @@ public class BubbleBarLayerView extends FrameLayout removeView(mDismissView); } mDismissView = new DismissView(getContext()); - DismissViewUtils.setupWithMarginIgnoringNavBarInset( - mDismissView, R.dimen.bubble_bar_dismiss_view_bottom_margin); + DismissViewUtils.setup(mDismissView); addView(mDismissView); } /** Hides the current modal education/menu view, IME or collapses the expanded view */ private void hideModalOrCollapse() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "hideModalOrCollapse(): expanded=%s", - mExpandedBubble != null ? mExpandedBubble.getKey() : "null"); if (mEducationViewController.isEducationVisible()) { mEducationViewController.hideEducation(/* animated = */ true); return; @@ -620,7 +365,7 @@ public class BubbleBarLayerView extends FrameLayout /** Updates the expanded view size and position. */ public void updateExpandedView() { - if (mExpandedView == null || mExpandedBubble == null || mExpandedView.isAnimating()) return; + if (mExpandedView == null || mExpandedBubble == null) return; boolean isOverflowExpanded = mExpandedBubble.getKey().equals(BubbleOverflow.KEY); mPositioner.getBubbleBarExpandedViewBounds(mPositioner.isBubbleBarOnLeft(), isOverflowExpanded, mTempRect); @@ -631,14 +376,13 @@ public class BubbleBarLayerView extends FrameLayout mExpandedView.setX(mTempRect.left); mExpandedView.setY(mTempRect.top); mExpandedView.updateLocation(); - mExpandedView.updateBottomClip(); } private void showScrim(boolean show) { if (show) { mScrimView.animate() .setInterpolator(ALPHA_IN) - .alpha(BUBBLE_EXPANDED_SCRIM_ALPHA) + .alpha(SCRIM_ALPHA) .start(); } else { mScrimView.animate() @@ -660,64 +404,4 @@ public class BubbleBarLayerView extends FrameLayout } } - /** Handles IME position changes. */ - public void onImeTopChanged(int imeTop) { - if (mIsExpanded) { - mAnimationHelper.onImeTopChanged(imeTop); - } - } - - /** - * Log the event only if {@link #mExpandedBubble} is a {@link Bubble}. - * <p> - * Skips logging if it is {@link BubbleOverflow}. - */ - private void logBubbleEvent(BubbleLogger.Event event) { - if (mExpandedBubble != null && mExpandedBubble instanceof Bubble) { - mBubbleLogger.log((Bubble) mExpandedBubble, event); - } - } - - @Nullable - @VisibleForTesting - public BubbleBarExpandedViewDragController getDragController() { - return mDragController; - } - - /** Notifies view of device config update. */ - public void update(DeviceConfig deviceConfig) { - Insets newInsets = deviceConfig.getInsets(); - if (!newInsets.equals(mInsets)) { - mInsets = newInsets; - updateExpandedView(); - } - } - - private class LocationChangeListener implements - BaseBubblePinController.LocationChangeListener { - - private BubbleBarLocation mInitialLocation; - - @Override - public void onStart(@NonNull BubbleBarLocation location) { - mInitialLocation = location; - } - - @Override - public void onChange(@NonNull BubbleBarLocation bubbleBarLocation) { - mBubbleController.animateBubbleBarLocation(bubbleBarLocation); - } - - @Override - public void onRelease(@NonNull BubbleBarLocation location) { - mBubbleController.setBubbleBarLocation(location, - BubbleBarLocation.UpdateSource.DRAG_EXP_VIEW); - if (location != mInitialLocation) { - BubbleLogger.Event event = location.isOnLeft(isLayoutRtl()) - ? BubbleLogger.Event.BUBBLE_BAR_MOVED_LEFT_DRAG_EXP_VIEW - : BubbleLogger.Event.BUBBLE_BAR_MOVED_RIGHT_DRAG_EXP_VIEW; - logBubbleEvent(event); - } - } - } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuItemView.java b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuItemView.java index bccc6dcd91..00b977721b 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuItemView.java +++ b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuItemView.java @@ -17,6 +17,7 @@ package com.android.wm.shell.bubbles.bar; import android.annotation.ColorInt; import android.content.Context; +import android.content.res.TypedArray; import android.graphics.Color; import android.graphics.drawable.Icon; import android.util.AttributeSet; @@ -25,7 +26,6 @@ import android.widget.LinearLayout; import android.widget.TextView; import com.android.wm.shell.R; -import com.android.wm.shell.shared.TypefaceUtils; /** * Bubble bar expanded view menu item view to display menu action details @@ -56,7 +56,6 @@ public class BubbleBarMenuItemView extends LinearLayout { super.onFinishInflate(); mImageView = findViewById(R.id.bubble_bar_menu_item_icon); mTextView = findViewById(R.id.bubble_bar_menu_item_title); - TypefaceUtils.setTypeface(mTextView, TypefaceUtils.FontFamily.GSF_TITLE_MEDIUM); } /** @@ -64,8 +63,9 @@ public class BubbleBarMenuItemView extends LinearLayout { */ void update(Icon icon, String title, @ColorInt int tint) { if (tint == Color.TRANSPARENT) { - mTextView.setTextColor( - getContext().getColor(com.android.internal.R.color.materialColorOnSurface)); + final TypedArray typedArray = getContext().obtainStyledAttributes( + new int[]{android.R.attr.textColorPrimary}); + mTextView.setTextColor(typedArray.getColor(0, Color.BLACK)); } else { icon.setTint(tint); mTextView.setTextColor(tint); diff --git a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuView.java b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuView.java index 7c0f8e138a..211fe0d48e 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuView.java +++ b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuView.java @@ -17,23 +17,17 @@ package com.android.wm.shell.bubbles.bar; import android.annotation.ColorInt; import android.content.Context; -import android.content.res.ColorStateList; import android.graphics.Color; import android.graphics.drawable.Icon; import android.util.AttributeSet; import android.view.LayoutInflater; -import android.view.View; import android.view.ViewGroup; -import android.view.accessibility.AccessibilityNodeInfo; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; -import androidx.core.widget.ImageViewCompat; - import com.android.wm.shell.R; import com.android.wm.shell.bubbles.Bubble; -import com.android.wm.shell.shared.TypefaceUtils; import java.util.ArrayList; @@ -41,16 +35,10 @@ import java.util.ArrayList; * Bubble bar expanded view menu */ public class BubbleBarMenuView extends LinearLayout { - private ViewGroup mBubbleSectionView; private ViewGroup mActionsSectionView; private ImageView mBubbleIconView; - private ImageView mBubbleDismissIconView; private TextView mBubbleTitleView; - // The animation has three stages. Each stage transition lasts until the animation ends. In - // stage 1, the title item content fades in. In stage 2, the background of the option items - // fades in. In stage 3, the option item content fades in. - private static final int SHOW_MENU_STAGES_COUNT = 3; public BubbleBarMenuView(Context context) { this(context, null /* attrs */); @@ -76,56 +64,6 @@ public class BubbleBarMenuView extends LinearLayout { mActionsSectionView = findViewById(R.id.bubble_bar_manage_menu_actions_section); mBubbleIconView = findViewById(R.id.bubble_bar_manage_menu_bubble_icon); mBubbleTitleView = findViewById(R.id.bubble_bar_manage_menu_bubble_title); - TypefaceUtils.setTypeface(mBubbleTitleView, TypefaceUtils.FontFamily.GSF_TITLE_MEDIUM); - mBubbleDismissIconView = findViewById(R.id.bubble_bar_manage_menu_dismiss_icon); - updateThemeColors(); - - mBubbleSectionView.setAccessibilityDelegate(new AccessibilityDelegate() { - @Override - public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) { - super.onInitializeAccessibilityNodeInfo(host, info); - info.addAction(new AccessibilityNodeInfo.AccessibilityAction( - AccessibilityNodeInfo.ACTION_CLICK, getResources().getString( - R.string.bubble_accessibility_action_collapse_menu))); - } - }); - } - - private void updateThemeColors() { - mActionsSectionView.getBackground().setTint( - mContext.getColor(com.android.internal.R.color.materialColorSurfaceBright)); - ImageViewCompat.setImageTintList(mBubbleDismissIconView, - ColorStateList.valueOf( - mContext.getColor(com.android.internal.R.color.materialColorOnSurface))); - } - - /** Animates the menu from the specified start scale. */ - public void animateFromStartScale(float currentScale, float progress) { - int menuItemElevation = getResources().getDimensionPixelSize( - R.dimen.bubble_manage_menu_elevation); - setScaleX(currentScale); - setScaleY(currentScale); - setAlphaForTitleViews(progress); - mBubbleSectionView.setElevation(menuItemElevation * progress); - float actionsBackgroundAlpha = Math.max(0, - (progress - (float) 1 / SHOW_MENU_STAGES_COUNT) * (SHOW_MENU_STAGES_COUNT - 1)); - float actionItemsAlpha = Math.max(0, - (progress - (float) 2 / SHOW_MENU_STAGES_COUNT) * SHOW_MENU_STAGES_COUNT); - mActionsSectionView.setAlpha(actionsBackgroundAlpha); - mActionsSectionView.setElevation(menuItemElevation * actionsBackgroundAlpha); - setMenuItemViewsAlpha(actionItemsAlpha); - } - - private void setAlphaForTitleViews(float alpha) { - mBubbleIconView.setAlpha(alpha); - mBubbleTitleView.setAlpha(alpha); - mBubbleDismissIconView.setAlpha(alpha); - } - - private void setMenuItemViewsAlpha(float alpha) { - for (int i = mActionsSectionView.getChildCount() - 1; i >= 0; i--) { - mActionsSectionView.getChildAt(i).setAlpha(alpha); - } } /** Update menu details with bubble info */ @@ -184,11 +122,6 @@ public class BubbleBarMenuView extends LinearLayout { return mBubbleSectionView.getAlpha(); } - /** Return title menu item height. */ - public float getTitleItemHeight() { - return mBubbleSectionView.getHeight(); - } - /** * Menu action details used to create menu items */ diff --git a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuViewController.java b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuViewController.java index 71e61aee2e..02918db124 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuViewController.java +++ b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleBarMenuViewController.java @@ -15,9 +15,6 @@ */ package com.android.wm.shell.bubbles.bar; -import android.animation.Animator; -import android.animation.AnimatorListenerAdapter; -import android.animation.ValueAnimator; import android.annotation.NonNull; import android.annotation.Nullable; import android.content.Context; @@ -27,10 +24,13 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import com.android.app.animation.Interpolators; +import androidx.core.content.ContextCompat; +import androidx.dynamicanimation.animation.DynamicAnimation; +import androidx.dynamicanimation.animation.SpringForce; + import com.android.wm.shell.R; import com.android.wm.shell.bubbles.Bubble; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; +import com.android.wm.shell.shared.animation.PhysicsAnimator; import java.util.ArrayList; @@ -38,26 +38,22 @@ import java.util.ArrayList; * Manages bubble bar expanded view menu presentation and animations */ class BubbleBarMenuViewController { - - private static final float WIDTH_SWAP_FRACTION = 0.4F; - private static final long MENU_ANIMATION_DURATION = 600; - + private static final float MENU_INITIAL_SCALE = 0.5f; private final Context mContext; private final ViewGroup mRootView; - private final BubbleBarHandleView mHandleView; private @Nullable Listener mListener; private @Nullable Bubble mBubble; private @Nullable BubbleBarMenuView mMenuView; /** A transparent view used to intercept touches to collapse menu when presented */ private @Nullable View mScrimView; - private @Nullable ValueAnimator mMenuAnimator; + private @Nullable PhysicsAnimator<BubbleBarMenuView> mMenuAnimator; + private PhysicsAnimator.SpringConfig mMenuSpringConfig; - - BubbleBarMenuViewController(Context context, BubbleBarHandleView handleView, - ViewGroup rootView) { + BubbleBarMenuViewController(Context context, ViewGroup rootView) { mContext = context; mRootView = rootView; - mHandleView = handleView; + mMenuSpringConfig = new PhysicsAnimator.SpringConfig( + SpringForce.STIFFNESS_MEDIUM, SpringForce.DAMPING_RATIO_LOW_BOUNCY); } /** Tells if the menu is visible or being animated */ @@ -83,19 +79,20 @@ class BubbleBarMenuViewController { if (mMenuView == null || mScrimView == null) { setupMenu(); } - runOnMenuIsMeasured(() -> { - mMenuView.setVisibility(View.VISIBLE); - mScrimView.setVisibility(View.VISIBLE); + cancelAnimations(); + mMenuView.setVisibility(View.VISIBLE); + mScrimView.setVisibility(View.VISIBLE); + Runnable endActions = () -> { + mMenuView.getChildAt(0).requestAccessibilityFocus(); if (mListener != null) { mListener.onMenuVisibilityChanged(true /* isShown */); } - Runnable endActions = () -> mMenuView.getChildAt(0).requestAccessibilityFocus(); - if (animated) { - animateTransition(true /* show */, endActions); - } else { - endActions.run(); - } - }); + }; + if (animated) { + animateTransition(true /* show */, endActions); + } else { + endActions.run(); + } } /** @@ -104,30 +101,18 @@ class BubbleBarMenuViewController { */ void hideMenu(boolean animated) { if (mMenuView == null || mScrimView == null) return; - runOnMenuIsMeasured(() -> { - Runnable endActions = () -> { - mHandleView.restoreAnimationDefaults(); - mMenuView.setVisibility(View.GONE); - mScrimView.setVisibility(View.GONE); - mHandleView.setVisibility(View.VISIBLE); - if (mListener != null) { - mListener.onMenuVisibilityChanged(false /* isShown */); - } - }; - if (animated) { - animateTransition(false /* show */, endActions); - } else { - endActions.run(); + cancelAnimations(); + Runnable endActions = () -> { + mMenuView.setVisibility(View.GONE); + mScrimView.setVisibility(View.GONE); + if (mListener != null) { + mListener.onMenuVisibilityChanged(false /* isShown */); } - }); - } - - private void runOnMenuIsMeasured(Runnable action) { - if (mMenuView.getWidth() == 0 || mMenuView.getHeight() == 0) { - // the menu view is not yet measured, postpone showing the animation - mMenuView.post(() -> runOnMenuIsMeasured(action)); + }; + if (animated) { + animateTransition(false /* show */, endActions); } else { - action.run(); + endActions.run(); } } @@ -138,58 +123,24 @@ class BubbleBarMenuViewController { */ private void animateTransition(boolean show, Runnable endActions) { if (mMenuView == null) return; - float startValue = show ? 0 : 1; - if (mMenuAnimator != null && mMenuAnimator.isRunning()) { - startValue = (float) mMenuAnimator.getAnimatedValue(); - mMenuAnimator.cancel(); - } - ValueAnimator showMenuAnimation = ValueAnimator.ofFloat(startValue, show ? 1 : 0); - showMenuAnimation.setDuration(MENU_ANIMATION_DURATION); - showMenuAnimation.setInterpolator(Interpolators.EMPHASIZED); - showMenuAnimation.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - mMenuAnimator = null; - endActions.run(); - } - }); - mMenuAnimator = showMenuAnimation; - setupAnimatorListener(showMenuAnimation); - showMenuAnimation.start(); + mMenuAnimator = PhysicsAnimator.getInstance(mMenuView); + mMenuAnimator.setDefaultSpringConfig(mMenuSpringConfig); + mMenuAnimator + .spring(DynamicAnimation.ALPHA, show ? 1f : 0f) + .spring(DynamicAnimation.SCALE_Y, show ? 1f : MENU_INITIAL_SCALE) + .withEndActions(() -> { + mMenuAnimator = null; + endActions.run(); + }) + .start(); } - /** Setup listener that orchestrates the animation. */ - private void setupAnimatorListener(ValueAnimator showMenuAnimation) { - // Getting views properties start values - int widthDiff = mMenuView.getWidth() - mHandleView.getHandleWidth(); - int handleHeight = mHandleView.getHandleHeight(); - float targetWidth = mHandleView.getHandleWidth() + widthDiff * WIDTH_SWAP_FRACTION; - float targetHeight = targetWidth * mMenuView.getTitleItemHeight() / mMenuView.getWidth(); - int menuColor = mContext.getColor(com.android.internal.R.color.materialColorSurfaceBright); - // Calculating deltas - float swapScale = targetWidth / mMenuView.getWidth(); - float handleWidthDelta = targetWidth - mHandleView.getHandleWidth(); - float handleHeightDelta = targetHeight - handleHeight; - // Setting update listener that will orchestrate the animation - showMenuAnimation.addUpdateListener(animator -> { - float animationProgress = (float) animator.getAnimatedValue(); - boolean showHandle = animationProgress <= WIDTH_SWAP_FRACTION; - mHandleView.setVisibility(showHandle ? View.VISIBLE : View.GONE); - mMenuView.setVisibility(showHandle ? View.GONE : View.VISIBLE); - if (showHandle) { - float handleAnimationProgress = animationProgress / WIDTH_SWAP_FRACTION; - mHandleView.animateHandleForMenu(handleAnimationProgress, handleWidthDelta, - handleHeightDelta, menuColor); - } else { - mMenuView.setTranslationY(mHandleView.getHandlePaddingTop()); - mMenuView.setPivotY(0); - mMenuView.setPivotX((float) mMenuView.getWidth() / 2); - float menuAnimationProgress = - (animationProgress - WIDTH_SWAP_FRACTION) / (1 - WIDTH_SWAP_FRACTION); - float currentMenuScale = swapScale + (1 - swapScale) * menuAnimationProgress; - mMenuView.animateFromStartScale(currentMenuScale, menuAnimationProgress); - } - }); + /** Cancel running animations */ + private void cancelAnimations() { + if (mMenuAnimator != null) { + mMenuAnimator.cancel(); + mMenuAnimator = null; + } } /** Sets up and inflate menu views */ @@ -197,6 +148,9 @@ class BubbleBarMenuViewController { // Menu view setup mMenuView = (BubbleBarMenuView) LayoutInflater.from(mContext).inflate( R.layout.bubble_bar_menu_view, mRootView, false); + mMenuView.setAlpha(0f); + mMenuView.setPivotY(0f); + mMenuView.setScaleY(MENU_INITIAL_SCALE); mMenuView.setOnCloseListener(() -> hideMenu(true /* animated */)); if (mBubble != null) { mMenuView.updateInfo(mBubble); @@ -218,14 +172,12 @@ class BubbleBarMenuViewController { private ArrayList<BubbleBarMenuView.MenuAction> createMenuActions(Bubble bubble) { ArrayList<BubbleBarMenuView.MenuAction> menuActions = new ArrayList<>(); Resources resources = mContext.getResources(); - int tintColor = mContext.getColor(com.android.internal.R.color.materialColorOnSurface); - if (bubble.isChat()) { + if (bubble.isConversation()) { // Don't bubble conversation action menuActions.add(new BubbleBarMenuView.MenuAction( Icon.createWithResource(mContext, R.drawable.bubble_ic_stop_bubble), resources.getString(R.string.bubbles_dont_bubble_conversation), - tintColor, view -> { hideMenu(true /* animated */); if (mListener != null) { @@ -252,7 +204,7 @@ class BubbleBarMenuViewController { menuActions.add(new BubbleBarMenuView.MenuAction( Icon.createWithResource(resources, R.drawable.ic_remove_no_shadow), resources.getString(R.string.bubble_dismiss_text), - tintColor, + ContextCompat.getColor(mContext, R.color.bubble_bar_expanded_view_menu_close), view -> { hideMenu(true /* animated */); if (mListener != null) { @@ -261,21 +213,6 @@ class BubbleBarMenuViewController { } )); - if (BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { - menuActions.add(new BubbleBarMenuView.MenuAction( - Icon.createWithResource(resources, - R.drawable.desktop_mode_ic_handle_menu_fullscreen), - resources.getString(R.string.bubble_fullscreen_text), - tintColor, - view -> { - hideMenu(true /* animated */); - if (mListener != null) { - mListener.onMoveToFullscreen(bubble); - } - } - )); - } - return menuActions; } @@ -306,10 +243,5 @@ class BubbleBarMenuViewController { * Dismiss bubble and remove it from the bubble stack */ void onDismissBubble(Bubble bubble); - - /** - * Move the bubble to fullscreen. - */ - void onMoveToFullscreen(Bubble bubble); } } diff --git a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleEducationViewController.kt b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleEducationViewController.kt index 0bd3a54cee..e108f7be48 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleEducationViewController.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleEducationViewController.kt @@ -20,7 +20,6 @@ import android.content.Context import android.graphics.Point import android.graphics.Rect import android.util.Log -import android.view.Gravity import android.view.LayoutInflater import android.view.View import android.view.ViewGroup @@ -35,10 +34,9 @@ import com.android.wm.shell.bubbles.BubbleDebugConfig.TAG_WITH_CLASS_NAME import com.android.wm.shell.bubbles.BubbleEducationController import com.android.wm.shell.bubbles.BubbleViewProvider import com.android.wm.shell.bubbles.setup -import com.android.wm.shell.shared.TypefaceUtils +import com.android.wm.shell.common.bubbles.BubblePopupDrawable +import com.android.wm.shell.common.bubbles.BubblePopupView import com.android.wm.shell.shared.animation.PhysicsAnimator -import com.android.wm.shell.shared.bubbles.BubblePopupDrawable -import com.android.wm.shell.shared.bubbles.BubblePopupView import kotlin.math.roundToInt /** Manages bubble education presentation and animation */ @@ -104,21 +102,14 @@ class BubbleEducationViewController(private val context: Context, private val li hideEducation(animated = false) log { "showStackEducation at: $position" } - val rootBounds = Rect() - // Get root bounds on screen as position is in screen coordinates - root.getBoundsOnScreen(rootBounds) educationView = createEducationView(R.layout.bubble_bar_stack_education, root).apply { - TypefaceUtils.setTypeface(findViewById(R.id.education_title), - TypefaceUtils.FontFamily.GSF_HEADLINE_SMALL_EMPHASIZED) - TypefaceUtils.setTypeface(findViewById(R.id.education_text), - TypefaceUtils.FontFamily.GSF_BODY_MEDIUM) setArrowDirection(BubblePopupDrawable.ArrowDirection.DOWN) - updateEducationPosition(view = this, position, rootBounds) + setArrowPosition(BubblePopupDrawable.ArrowPosition.End) + updateEducationPosition(view = this, position, root) val arrowToEdgeOffset = popupDrawable?.config?.cornerRadius ?: 0f doOnLayout { - it.pivotX = if (position.x < rootBounds.centerX()) - arrowToEdgeOffset else it.width - arrowToEdgeOffset + it.pivotX = it.width - arrowToEdgeOffset it.pivotY = it.height.toFloat() } setOnClickListener { educationClickHandler() } @@ -158,10 +149,6 @@ class BubbleEducationViewController(private val context: Context, private val li educationView = createEducationView(R.layout.bubble_bar_manage_education, root).apply { - TypefaceUtils.setTypeface(findViewById(R.id.education_manage_title), - TypefaceUtils.FontFamily.GSF_HEADLINE_SMALL_EMPHASIZED) - TypefaceUtils.setTypeface(findViewById(R.id.education_manage_text), - TypefaceUtils.FontFamily.GSF_BODY_MEDIUM) pivotY = 0f doOnLayout { it.pivotX = it.width / 2f } setOnClickListener { hideEducation(animated = true) } @@ -231,9 +218,12 @@ class BubbleEducationViewController(private val context: Context, private val li * * @param view the user education view to layout * @param position the reference position in Screen coordinates - * @param rootBounds bounds of the parent the education view is placed in + * @param root the root view to use for the layout */ - private fun updateEducationPosition(view: BubblePopupView, position: Point, rootBounds: Rect) { + private fun updateEducationPosition(view: BubblePopupView, position: Point, root: ViewGroup) { + val rootBounds = Rect() + // Get root bounds on screen as position is in screen coordinates + root.getBoundsOnScreen(rootBounds) // Get the offset to the arrow from the edge of the education view val arrowToEdgeOffset = view.popupDrawable?.config?.let { it.cornerRadius + it.arrowWidth / 2f }?.roundToInt() @@ -241,15 +231,7 @@ class BubbleEducationViewController(private val context: Context, private val li // Calculate education view margins val params = view.layoutParams as FrameLayout.LayoutParams params.bottomMargin = rootBounds.bottom - position.y - if (position.x < rootBounds.centerX()) { - params.leftMargin = position.x - arrowToEdgeOffset - params.gravity = Gravity.LEFT or Gravity.BOTTOM - view.setArrowPosition(BubblePopupDrawable.ArrowPosition.Start) - } else { - params.rightMargin = rootBounds.right - position.x - arrowToEdgeOffset - params.gravity = Gravity.RIGHT or Gravity.BOTTOM - view.setArrowPosition(BubblePopupDrawable.ArrowPosition.End) - } + params.rightMargin = rootBounds.right - position.x - arrowToEdgeOffset view.layoutParams = params } diff --git a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinController.kt b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinController.kt index 23ba2bff5e..651bf022e0 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinController.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/bar/BubbleExpandedViewPinController.kt @@ -25,8 +25,8 @@ import android.widget.FrameLayout import androidx.core.view.updateLayoutParams import com.android.wm.shell.R import com.android.wm.shell.bubbles.BubblePositioner -import com.android.wm.shell.shared.bubbles.BaseBubblePinController -import com.android.wm.shell.shared.bubbles.BubbleBarLocation +import com.android.wm.shell.common.bubbles.BaseBubblePinController +import com.android.wm.shell.common.bubbles.BubbleBarLocation /** * Controller to manage pinning bubble bar to left or right when dragging starts from the bubble bar diff --git a/wmshell/src/com/android/wm/shell/bubbles/shortcut/CreateBubbleShortcutActivity.kt b/wmshell/src/com/android/wm/shell/bubbles/shortcut/CreateBubbleShortcutActivity.kt index c93c11eb2f..a124f95d74 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/shortcut/CreateBubbleShortcutActivity.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/shortcut/CreateBubbleShortcutActivity.kt @@ -20,10 +20,10 @@ import android.app.Activity import android.content.pm.ShortcutManager import android.graphics.drawable.Icon import android.os.Bundle -import com.android.internal.protolog.ProtoLog import com.android.wm.shell.Flags import com.android.wm.shell.R import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES +import com.android.wm.shell.util.KtProtoLog /** Activity to create a shortcut to open bubbles */ class CreateBubbleShortcutActivity : Activity() { @@ -31,7 +31,7 @@ class CreateBubbleShortcutActivity : Activity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) if (Flags.enableRetrievableBubbles()) { - ProtoLog.d(WM_SHELL_BUBBLES, "Creating a shortcut for bubbles") + KtProtoLog.d(WM_SHELL_BUBBLES, "Creating a shortcut for bubbles") createShortcut() } finish() diff --git a/wmshell/src/com/android/wm/shell/bubbles/shortcut/ShowBubblesActivity.kt b/wmshell/src/com/android/wm/shell/bubbles/shortcut/ShowBubblesActivity.kt index e578e9e769..ae7940ca1b 100644 --- a/wmshell/src/com/android/wm/shell/bubbles/shortcut/ShowBubblesActivity.kt +++ b/wmshell/src/com/android/wm/shell/bubbles/shortcut/ShowBubblesActivity.kt @@ -21,9 +21,9 @@ import android.content.ComponentName import android.content.Context import android.content.Intent import android.os.Bundle -import com.android.internal.protolog.ProtoLog import com.android.wm.shell.Flags import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES +import com.android.wm.shell.util.KtProtoLog /** Activity that sends a broadcast to open bubbles */ class ShowBubblesActivity : Activity() { @@ -37,7 +37,7 @@ class ShowBubblesActivity : Activity() { // Set the package as the receiver is not exported `package` = packageName } - ProtoLog.v(WM_SHELL_BUBBLES, "Sending broadcast to show bubbles") + KtProtoLog.v(WM_SHELL_BUBBLES, "Sending broadcast to show bubbles") sendBroadcast(intent) } finish() diff --git a/wmshell/src/com/android/wm/shell/common/DisplayChangeController.java b/wmshell/src/com/android/wm/shell/common/DisplayChangeController.java index 8039369ab3..2873d58439 100644 --- a/wmshell/src/com/android/wm/shell/common/DisplayChangeController.java +++ b/wmshell/src/com/android/wm/shell/common/DisplayChangeController.java @@ -17,7 +17,6 @@ package com.android.wm.shell.common; import android.annotation.Nullable; -import android.graphics.Rect; import android.os.RemoteException; import android.os.Trace; import android.util.Slog; @@ -29,7 +28,6 @@ import android.window.WindowContainerTransaction; import androidx.annotation.BinderThread; -import com.android.internal.annotations.VisibleForTesting; import com.android.wm.shell.shared.annotations.ShellMainThread; import com.android.wm.shell.sysui.ShellInit; @@ -45,7 +43,6 @@ public class DisplayChangeController { private static final String TAG = DisplayChangeController.class.getSimpleName(); private static final String HANDLE_DISPLAY_CHANGE_TRACE_TAG = "HandleRemoteDisplayChange"; - private final DisplayController mDisplayController; private final ShellExecutor mMainExecutor; private final IWindowManager mWmService; private final IDisplayChangeWindowController mControllerImpl; @@ -53,9 +50,8 @@ public class DisplayChangeController { private final CopyOnWriteArrayList<OnDisplayChangingListener> mDisplayChangeListener = new CopyOnWriteArrayList<>(); - public DisplayChangeController(DisplayController displayController, IWindowManager wmService, - ShellInit shellInit, ShellExecutor mainExecutor) { - mDisplayController = displayController; + public DisplayChangeController(IWindowManager wmService, ShellInit shellInit, + ShellExecutor mainExecutor) { mMainExecutor = mainExecutor; mWmService = wmService; mControllerImpl = new DisplayChangeWindowControllerImpl(); @@ -98,21 +94,8 @@ public class DisplayChangeController { } } - @VisibleForTesting - void onDisplayChange(int displayId, int fromRotation, int toRotation, + private void onDisplayChange(int displayId, int fromRotation, int toRotation, DisplayAreaInfo newDisplayAreaInfo, IDisplayChangeWindowCallback callback) { - final DisplayLayout dl = mDisplayController.getDisplayLayout(displayId); - if (dl != null && newDisplayAreaInfo != null) { - // Note: there is a chance Transitions has triggered - // DisplayController#onDisplayChangeRequested first, in which case layout was updated - // and startBounds equals endBounds; then DisplayLayout size remains the same. - // TODO(b/370721807): Remove DisplayChangeWindowControllerImpl and rely on transitions. - final Rect startBounds = new Rect(0, 0, dl.width(), dl.height()); - final Rect endBounds = newDisplayAreaInfo.configuration.windowConfiguration.getBounds(); - mDisplayController.updateDisplayLayout(displayId, startBounds, endBounds, - fromRotation, toRotation); - } - WindowContainerTransaction t = new WindowContainerTransaction(); dispatchOnDisplayChange(t, displayId, fromRotation, toRotation, newDisplayAreaInfo); try { diff --git a/wmshell/src/com/android/wm/shell/common/DisplayController.java b/wmshell/src/com/android/wm/shell/common/DisplayController.java index 6db7434f57..dcbc72ab0d 100644 --- a/wmshell/src/com/android/wm/shell/common/DisplayController.java +++ b/wmshell/src/com/android/wm/shell/common/DisplayController.java @@ -16,39 +16,29 @@ package com.android.wm.shell.common; -import static android.app.WindowConfiguration.ROTATION_UNDEFINED; - -import android.annotation.NonNull; import android.annotation.Nullable; import android.content.Context; import android.content.res.Configuration; import android.graphics.Rect; -import android.graphics.RectF; import android.hardware.display.DisplayManager; -import android.hardware.display.DisplayTopology; import android.os.RemoteException; import android.util.ArraySet; -import android.util.Size; import android.util.Slog; import android.util.SparseArray; import android.view.Display; import android.view.IDisplayWindowListener; import android.view.IWindowManager; import android.view.InsetsState; -import android.window.DesktopExperienceFlags; import android.window.WindowContainerTransaction; import androidx.annotation.BinderThread; import com.android.wm.shell.common.DisplayChangeController.OnDisplayChangingListener; import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.sysui.ShellInit; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; import java.util.Set; /** @@ -63,26 +53,19 @@ public class DisplayController { private final ShellExecutor mMainExecutor; private final Context mContext; private final IWindowManager mWmService; - private final DisplayManager mDisplayManager; private final DisplayChangeController mChangeController; private final IDisplayWindowListener mDisplayContainerListener; - private final DesktopState mDesktopState; private final SparseArray<DisplayRecord> mDisplays = new SparseArray<>(); private final ArrayList<OnDisplaysChangedListener> mDisplayChangedListeners = new ArrayList<>(); - private final Map<Integer, RectF> mUnpopulatedDisplayBounds = new HashMap<>(); - private DisplayTopology mDisplayTopology; public DisplayController(Context context, IWindowManager wmService, ShellInit shellInit, - ShellExecutor mainExecutor, DisplayManager displayManager, - DesktopState desktopState) { + ShellExecutor mainExecutor) { mMainExecutor = mainExecutor; mContext = context; mWmService = wmService; - mDisplayManager = displayManager; - mDesktopState = desktopState; - mChangeController = new DisplayChangeController(this, wmService, shellInit, - mainExecutor); + // TODO: Inject this instead + mChangeController = new DisplayChangeController(mWmService, shellInit, mainExecutor); mDisplayContainerListener = new DisplayWindowListenerImpl(); // Note, add this after DisplaceChangeController is constructed to ensure that is // initialized first @@ -90,7 +73,7 @@ public class DisplayController { } /** - * Initializes the window listener and the topology listener. + * Initializes the window listener. */ public void onInit() { try { @@ -98,13 +81,6 @@ public class DisplayController { for (int i = 0; i < displayIds.length; i++) { onDisplayAdded(displayIds[i]); } - - if (DesktopExperienceFlags.ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG.isTrue() - && mDesktopState.canEnterDesktopMode()) { - mDisplayManager.registerTopologyListener(mMainExecutor, - this::onDisplayTopologyChanged); - onDisplayTopologyChanged(mDisplayManager.getDisplayTopology()); - } } catch (RemoteException e) { throw new RuntimeException("Unable to register display controller"); } @@ -114,15 +90,8 @@ public class DisplayController { * Gets a display by id from DisplayManager. */ public Display getDisplay(int displayId) { - return mDisplayManager.getDisplay(displayId); - } - - /** - * Returns true if the display with the given displayId is part of the topology. - */ - public boolean isDisplayInTopology(int displayId) { - return mDisplayTopology != null - && mDisplayTopology.findDisplay(displayId, mDisplayTopology.getRoot()) != null; + final DisplayManager displayManager = mContext.getSystemService(DisplayManager.class); + return displayManager.getDisplay(displayId); } /** @@ -172,7 +141,6 @@ public class DisplayController { for (int i = 0; i < mDisplays.size(); ++i) { listener.onDisplayAdded(mDisplays.keyAt(i)); } - listener.onTopologyChanged(mDisplayTopology); } } @@ -214,17 +182,8 @@ public class DisplayController { final Context context = (displayId == Display.DEFAULT_DISPLAY) ? mContext : mContext.createDisplayContext(display); - boolean hasStatusAndNavBars = false; - if (DesktopExperienceFlags.ENABLE_DISPLAY_CONTENT_MODE_MANAGEMENT.isTrue()) { - hasStatusAndNavBars = mDesktopState.isDesktopModeSupportedOnDisplay(displayId); - } - final DisplayRecord record = new DisplayRecord(displayId, hasStatusAndNavBars); - DisplayLayout displayLayout = record.createLayout(context, display); - if (DesktopExperienceFlags.ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG.isTrue() - && mUnpopulatedDisplayBounds.containsKey(displayId)) { - displayLayout.setGlobalBoundsDp(mUnpopulatedDisplayBounds.get(displayId)); - } - record.setDisplayLayout(context, displayLayout); + final DisplayRecord record = new DisplayRecord(displayId); + record.setDisplayLayout(context, new DisplayLayout(context, display)); mDisplays.put(displayId, record); for (int i = 0; i < mDisplayChangedListeners.size(); ++i) { mDisplayChangedListeners.get(i).onDisplayAdded(displayId); @@ -232,64 +191,26 @@ public class DisplayController { } } + /** Called when a display rotate requested. */ - public void onDisplayChangeRequested(WindowContainerTransaction wct, int displayId, - Rect startAbsBounds, Rect endAbsBounds, int fromRotation, int toRotation) { + public void onDisplayRotateRequested(WindowContainerTransaction wct, int displayId, + int fromRotation, int toRotation) { synchronized (mDisplays) { - final DisplayLayout dl = getDisplayLayout(displayId); - if (dl == null) { + final DisplayRecord dr = mDisplays.get(displayId); + if (dr == null) { Slog.w(TAG, "Skipping Display rotate on non-added display."); return; } - updateDisplayLayout(displayId, startAbsBounds, endAbsBounds, fromRotation, toRotation); + + if (dr.mDisplayLayout != null) { + dr.mDisplayLayout.rotateTo(dr.mContext.getResources(), toRotation); + } mChangeController.dispatchOnDisplayChange( wct, displayId, fromRotation, toRotation, null /* newDisplayAreaInfo */); } } - void updateDisplayLayout(int displayId, - @NonNull Rect startBounds, @Nullable Rect endBounds, int fromRotation, int toRotation) { - final DisplayLayout dl = getDisplayLayout(displayId); - final Context ctx = getDisplayContext(displayId); - if (dl == null || ctx == null) return; - - if (endBounds != null) { - // Note that endAbsBounds should ignore any potential rotation changes, so - // we still need to rotate the layout after if needed. - dl.resizeTo(ctx.getResources(), new Size(endBounds.width(), endBounds.height())); - } - if (fromRotation != toRotation && toRotation != ROTATION_UNDEFINED) { - dl.rotateTo(ctx.getResources(), toRotation); - } - } - - private void onDisplayTopologyChanged(DisplayTopology topology) { - if (topology == null) { - return; - } - mDisplayTopology = topology; - SparseArray<RectF> absoluteBounds = topology.getAbsoluteBounds(); - mUnpopulatedDisplayBounds.clear(); - for (int i = 0; i < absoluteBounds.size(); ++i) { - int displayId = absoluteBounds.keyAt(i); - DisplayLayout displayLayout = getDisplayLayout(displayId); - if (displayLayout == null) { - // onDisplayTopologyChanged can arrive before onDisplayAdded. - // Store the bounds to be applied later in onDisplayAdded. - Slog.d(TAG, "Storing bounds for onDisplayTopologyChanged on unknown" - + " display, displayId=" + displayId); - mUnpopulatedDisplayBounds.put(displayId, absoluteBounds.valueAt(i)); - } else { - displayLayout.setGlobalBoundsDp(absoluteBounds.valueAt(i)); - } - } - - for (int i = 0; i < mDisplayChangedListeners.size(); ++i) { - mDisplayChangedListeners.get(i).onTopologyChanged(topology); - } - } - private void onDisplayConfigurationChanged(int displayId, Configuration newConfig) { synchronized (mDisplays) { final DisplayRecord dr = mDisplays.get(displayId); @@ -308,13 +229,7 @@ public class DisplayController { ? mContext : mContext.createDisplayContext(display); final Context context = perDisplayContext.createConfigurationContext(newConfig); - final DisplayLayout displayLayout = dr.createLayout(context, display); - if (mDisplayTopology != null) { - displayLayout.setGlobalBoundsDp( - mDisplayTopology.getAbsoluteBounds().get( - displayId, displayLayout.globalBoundsDp())); - } - dr.setDisplayLayout(context, displayLayout); + dr.setDisplayLayout(context, new DisplayLayout(context, display)); for (int i = 0; i < mDisplayChangedListeners.size(); ++i) { mDisplayChangedListeners.get(i).onDisplayConfigurationChanged( displayId, newConfig); @@ -376,56 +291,14 @@ public class DisplayController { } } - private void onDesktopModeEligibleChanged(int displayId) { - synchronized (mDisplays) { - DisplayRecord r = mDisplays.get(displayId); - Display display = getDisplay(displayId); - if (r == null || display == null) { - Slog.w(TAG, "Skipping onDesktopModeEligibleChanged on unknown" - + " display, displayId=" + displayId); - return; - } - if (DesktopExperienceFlags.ENABLE_DISPLAY_CONTENT_MODE_MANAGEMENT.isTrue()) { - r.updateHasStatusAndNavBars(display, - mDesktopState.isDesktopModeSupportedOnDisplay(display)); - } - for (int i = mDisplayChangedListeners.size() - 1; i >= 0; --i) { - mDisplayChangedListeners.get(i).onDesktopModeEligibleChanged(displayId); - } - } - } - private static class DisplayRecord { - private final int mDisplayId; + private int mDisplayId; private Context mContext; private DisplayLayout mDisplayLayout; private InsetsState mInsetsState = new InsetsState(); - private boolean mHasStatusAndNavBars; - private DisplayRecord(int displayId, boolean hasStatusAndNavBars) { + private DisplayRecord(int displayId) { mDisplayId = displayId; - mHasStatusAndNavBars = hasStatusAndNavBars; - } - - private DisplayLayout createLayout(Context context, Display display) { - if (mDisplayId != Display.DEFAULT_DISPLAY && mHasStatusAndNavBars) { - return new DisplayLayout(context, display, true /* hasNavigationBar */, - true /* hasTaskBar */); - } else { - return new DisplayLayout(context, display); - } - } - - - private void updateHasStatusAndNavBars(Display display, boolean hasStatusAndNavBars) { - if (mHasStatusAndNavBars == hasStatusAndNavBars) { - return; - } - mHasStatusAndNavBars = hasStatusAndNavBars; - // Don't change how DEFAULT_DISPLAY is handled: the default heuristic is correct. - if (mDisplayId != Display.DEFAULT_DISPLAY) { - setDisplayLayout(mContext, createLayout(mContext, display)); - } } private void setDisplayLayout(Context context, DisplayLayout displayLayout) { @@ -485,19 +358,6 @@ public class DisplayController { new ArraySet<>(restricted), new ArraySet<>(unrestricted)); }); } - - @Override - public void onDesktopModeEligibleChanged(int displayId) { - mMainExecutor.execute(() -> { - DisplayController.this.onDesktopModeEligibleChanged(displayId); - }); - } - - @Override - public void onDisplayAddSystemDecorations(int displayId) { } - - @Override - public void onDisplayRemoveSystemDecorations(int displayId) { } } /** @@ -538,15 +398,5 @@ public class DisplayController { */ default void onKeepClearAreasChanged(int displayId, Set<Rect> restricted, Set<Rect> unrestricted) {} - - /** - * Called when the display topology has changed. - */ - default void onTopologyChanged(DisplayTopology topology) {} - - /** - * Called when the eligibility of the desktop mode for a display have changed. - */ - default void onDesktopModeEligibleChanged(int displayId) {} } } diff --git a/wmshell/src/com/android/wm/shell/common/DisplayImeController.java b/wmshell/src/com/android/wm/shell/common/DisplayImeController.java index bf4c6e3173..f4ac5f260f 100644 --- a/wmshell/src/com/android/wm/shell/common/DisplayImeController.java +++ b/wmshell/src/com/android/wm/shell/common/DisplayImeController.java @@ -21,8 +21,6 @@ import static android.view.EventLogTags.IMF_IME_REMOTE_ANIM_END; import static android.view.EventLogTags.IMF_IME_REMOTE_ANIM_START; import static android.view.inputmethod.ImeTracker.DEBUG_IME_VISIBILITY; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_IME_CONTROLLER; - import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.ValueAnimator; @@ -34,7 +32,6 @@ import android.content.res.Configuration; import android.graphics.Point; import android.graphics.Rect; import android.os.RemoteException; -import android.text.TextUtils; import android.util.EventLog; import android.util.Slog; import android.util.SparseArray; @@ -55,8 +52,6 @@ import android.view.inputmethod.InputMethodManagerGlobal; import androidx.annotation.VisibleForTesting; import com.android.internal.inputmethod.SoftInputShowHideReason; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.sysui.ShellInit; import java.util.ArrayList; @@ -69,6 +64,8 @@ import java.util.concurrent.Executor; public class DisplayImeController implements DisplayController.OnDisplaysChangedListener { private static final String TAG = "DisplayImeController"; + private static final boolean DEBUG = false; + // NOTE: All these constants came from InsetsController. public static final int ANIMATION_DURATION_SHOW_MS = 275; public static final int ANIMATION_DURATION_HIDE_MS = 340; @@ -159,14 +156,6 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged } } - private void dispatchImeRequested(int displayId, boolean isRequested) { - synchronized (mPositionProcessors) { - for (ImePositionProcessor pp : mPositionProcessors) { - pp.onImeRequested(displayId, isRequested); - } - } - } - @ImePositionProcessor.ImeAnimationFlags private int dispatchStartPositioning(int displayId, int hiddenTop, int shownTop, boolean show, boolean isFloating, SurfaceControl.Transaction t) { @@ -226,22 +215,11 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged } } - /** Hides the IME for Bubbles when the device is locked. */ - public void hideImeForBubblesWhenLocked(int displayId) { - PerDisplay pd = mImePerDisplay.get(displayId); - InsetsSourceControl imeSourceControl = pd.getImeSourceControl(); - if (imeSourceControl != null) { - final var statsToken = ImeTracker.forLogging().onStart(ImeTracker.TYPE_HIDE, - ImeTracker.ORIGIN_WM_SHELL, - SoftInputShowHideReason.HIDE_FOR_BUBBLES_WHEN_LOCKED, false /* fromUser */); - pd.setImeInputTargetRequestedVisibility(false, statsToken); - } - } - /** An implementation of {@link IDisplayWindowInsetsController} for a given display id. */ public class PerDisplay implements DisplayInsetsController.OnInsetsChangedListener { final int mDisplayId; final InsetsState mInsetsState = new InsetsState(); + @InsetsType int mRequestedVisibleTypes = WindowInsets.Type.defaultVisible(); boolean mImeRequestedVisible = (WindowInsets.Type.defaultVisible() & WindowInsets.Type.ime()) != 0; InsetsSourceControl mImeSourceControl = null; @@ -270,7 +248,11 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged if (mInsetsState.equals(insetsState)) { return; } - ProtoLog.d(WM_SHELL_IME_CONTROLLER, "Insets changed, state=%s", insetsState); + + if (!android.view.inputmethod.Flags.refactorInsetsController()) { + updateImeVisibility(insetsState.isSourceOrDefaultVisible(InsetsSource.ID_IME, + WindowInsets.Type.ime())); + } final InsetsSource newSource = insetsState.peekSource(InsetsSource.ID_IME); final Rect newFrame = newSource != null ? newSource.getFrame() : null; @@ -280,8 +262,7 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged mInsetsState.set(insetsState, true /* copySources */); if (mImeShowing && !Objects.equals(oldFrame, newFrame) && newSourceVisible) { - ProtoLog.d(WM_SHELL_IME_CONTROLLER, - "insetsChanged when IME showing, restart animation"); + if (DEBUG) Slog.d(TAG, "insetsChanged when IME showing, restart animation"); startAnimation(mImeShowing, true /* forceRestart */, SoftInputShowHideReason.DISPLAY_INSETS_CHANGED); } @@ -291,9 +272,6 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged @VisibleForTesting public void insetsControlChanged(InsetsState insetsState, InsetsSourceControl[] activeControls) { - ProtoLog.d(WM_SHELL_IME_CONTROLLER, "Insets control changed, state=%s controls=%s", - insetsState, - activeControls != null ? TextUtils.join(", ", activeControls) : "null"); insetsChanged(insetsState); InsetsSourceControl imeSourceControl = null; if (activeControls != null) { @@ -312,58 +290,63 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged if (hadImeSourceControl != hasImeSourceControl) { dispatchImeControlTargetChanged(mDisplayId, hasImeSourceControl); } - final boolean hasImeLeash = hasImeSourceControl && imeSourceControl.getLeash() != null; boolean pendingImeStartAnimation = false; - boolean positionChanged = false; - if (hasImeLeash) { - final Point lastSurfacePosition = hadImeSourceControl - ? mImeSourceControl.getSurfacePosition() : null; - positionChanged = !imeSourceControl.getSurfacePosition().equals( - lastSurfacePosition); - if (mAnimation != null) { - if (positionChanged) { - // For showing the IME, the leash has to be available first. Hiding - // the IME happens directly via {@link #hideInsets} (triggered by - // setImeInputTargetRequestedVisibility) while the leash is not gone - // yet. - pendingImeStartAnimation = true; - } - } else { - if (!haveSameLeash(mImeSourceControl, imeSourceControl)) { - pendingImeStartAnimation = true; - // The starting point for the IME should be it's previous state - // (whether it is initiallyVisible or not) - updateImeVisibility(imeSourceControl.isInitiallyVisible()); - applyVisibilityToLeash(imeSourceControl); - } - } - } else if (mImeShowing && mAnimation == null) { - // There is no leash, so the IME cannot be in a showing state - updateImeVisibility(false); + boolean canAnimate; + if (android.view.inputmethod.Flags.refactorInsetsController()) { + canAnimate = hasImeSourceControl && imeSourceControl.getLeash() != null; + } else { + canAnimate = hasImeSourceControl; + } + + boolean positionChanged = false; + if (canAnimate) { + if (mAnimation != null) { + final Point lastSurfacePosition = hadImeSourceControl + ? mImeSourceControl.getSurfacePosition() : null; + positionChanged = !imeSourceControl.getSurfacePosition().equals( + lastSurfacePosition); + } else { + if (!haveSameLeash(mImeSourceControl, imeSourceControl)) { + applyVisibilityToLeash(imeSourceControl); + + if (android.view.inputmethod.Flags.refactorInsetsController()) { + pendingImeStartAnimation = true; + } + } + if (!mImeShowing) { + removeImeSurface(); + } + } + } else if (!android.view.inputmethod.Flags.refactorInsetsController() + && mAnimation != null) { + // we don"t want to cancel the hide animation, when the control is lost, but + // continue the bar to slide to the end (even without visible IME) + mAnimation.cancel(); + } + if (positionChanged) { + if (android.view.inputmethod.Flags.refactorInsetsController()) { + // For showing the IME, the leash has to be available first. Hiding + // the IME happens directly via {@link #hideInsets} (triggered by + // setImeInputTargetRequestedVisibility) while the leash is not gone + // yet. + pendingImeStartAnimation = true; + } else { + startAnimation(mImeShowing, true /* forceRestart */, + SoftInputShowHideReason.DISPLAY_CONTROLS_CHANGED); + } } - // Make mImeSourceControl point to the new control before starting the animation. if (hadImeSourceControl && mImeSourceControl != imeSourceControl) { mImeSourceControl.release(SurfaceControl::release); - if (!hasImeLeash && mAnimation != null) { - // In case of losing the leash, the animation should be cancelled. - mAnimation.cancel(); - } } mImeSourceControl = imeSourceControl; - if (pendingImeStartAnimation) { - startAnimation(mImeRequestedVisible, true /* forceRestart */); - } else if (positionChanged) { - // If the leash is the same, but it has changed its position while no - // animation is ongoing, just update the position without starting a new - // animation. - SurfaceControl.Transaction t = mTransactionPool.acquire(); - final var position = mImeSourceControl.getSurfacePosition(); - t.setPosition(mImeSourceControl.getLeash(), position.x, position.y); - t.apply(); - mTransactionPool.release(t); + if (android.view.inputmethod.Flags.refactorInsetsController()) { + if (pendingImeStartAnimation) { + startAnimation(true, true /* forceRestart */, + null /* statsToken */); + } } } @@ -382,22 +365,22 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged } @Override - public void showInsets(@InsetsType int types, @Nullable ImeTracker.Token statsToken) { + public void showInsets(@InsetsType int types, boolean fromIme, + @Nullable ImeTracker.Token statsToken) { if ((types & WindowInsets.Type.ime()) == 0) { return; } - ProtoLog.d(WM_SHELL_IME_CONTROLLER, "Ime shown, statsToken=%s", - statsToken != null ? statsToken.getBinder() : "null"); + if (DEBUG) Slog.d(TAG, "Got showInsets for ime"); startAnimation(true /* show */, false /* forceRestart */, statsToken); } @Override - public void hideInsets(@InsetsType int types, @Nullable ImeTracker.Token statsToken) { + public void hideInsets(@InsetsType int types, boolean fromIme, + @Nullable ImeTracker.Token statsToken) { if ((types & WindowInsets.Type.ime()) == 0) { return; } - ProtoLog.d(WM_SHELL_IME_CONTROLLER, "Ime hidden, statsToken=%s", - statsToken != null ? statsToken.getBinder() : "null"); + if (DEBUG) Slog.d(TAG, "Got hideInsets for ime"); startAnimation(false /* show */, false /* forceRestart */, statsToken); } @@ -408,68 +391,35 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged @Override // TODO(b/335404678): pass control target - public void setImeInputTargetRequestedVisibility(boolean visible, - @NonNull ImeTracker.Token statsToken) { - ProtoLog.d(WM_SHELL_IME_CONTROLLER, - "Input target requested visibility, visible=%b statsToken=%s", - visible, statsToken != null ? statsToken.getBinder() : "null"); - ImeTracker.forLogging().onProgress(statsToken, - ImeTracker.PHASE_WM_DISPLAY_IME_CONTROLLER_SET_IME_REQUESTED_VISIBLE); - mImeRequestedVisible = visible; - dispatchImeRequested(mDisplayId, mImeRequestedVisible); - - // In the case that the IME becomes visible, but we have the control with leash - // already (e.g., when focussing an editText in activity B, while and editText in - // activity A is focussed), we will not get a call of #insetsControlChanged, and - // therefore have to start the show animation from here - if (visible || mImeShowing) { - // only start the animation if we're either already showing or becoming visible. - // otherwise starting another hide animation causes flickers. + public void setImeInputTargetRequestedVisibility(boolean visible) { + if (android.view.inputmethod.Flags.refactorInsetsController()) { + mImeRequestedVisible = visible; + // In the case that the IME becomes visible, but we have the control with leash + // already (e.g., when focussing an editText in activity B, while and editText in + // activity A is focussed), we will not get a call of #insetsControlChanged, and + // therefore have to start the show animation from here startAnimation(mImeRequestedVisible /* show */, false /* forceRestart */, - statsToken); + null /* TODO statsToken */); } - - boolean hideAnimOngoing; - boolean reportVisible; - if (android.view.inputmethod.Flags.reportAnimatingInsetsTypes()) { - hideAnimOngoing = false; - reportVisible = mImeRequestedVisible; - } else { - // In case of a hide, the statsToken should not been send yet (as the animation - // is still ongoing). It will be sent at the end of the animation. - hideAnimOngoing = !mImeRequestedVisible && mAnimation != null; - reportVisible = mImeRequestedVisible || mAnimation != null; - } - setVisibleDirectly(reportVisible, hideAnimOngoing ? null : statsToken); } /** * Sends the local visibility state back to window manager. Needed for legacy adjustForIme. */ - private void setVisibleDirectly(boolean visible, @Nullable ImeTracker.Token statsToken) { + private void setVisibleDirectly(boolean visible) { mInsetsState.setSourceVisible(InsetsSource.ID_IME, visible); - int visibleTypes = visible ? WindowInsets.Type.ime() : 0; + mRequestedVisibleTypes = visible + ? mRequestedVisibleTypes | WindowInsets.Type.ime() + : mRequestedVisibleTypes & ~WindowInsets.Type.ime(); try { mWmService.updateDisplayWindowRequestedVisibleTypes(mDisplayId, - visibleTypes, WindowInsets.Type.ime(), statsToken); + mRequestedVisibleTypes); } catch (RemoteException e) { } } - private void setAnimating(boolean imeAnimationOngoing, - @Nullable ImeTracker.Token statsToken) { - int animatingTypes = imeAnimationOngoing ? WindowInsets.Type.ime() : 0; - try { - mWmService.updateDisplayWindowAnimatingTypes(mDisplayId, animatingTypes, - statsToken); - } catch (RemoteException e) { - } - } - - private int imeTop(float surfaceOffset, float surfacePositionY) { - // surfaceOffset is already offset by the surface's top inset, so we need to subtract - // the top inset so that the return value is in screen coordinates. - return mImeFrame.top + (int) (surfaceOffset - surfacePositionY); + private int imeTop(float surfaceOffset) { + return mImeFrame.top + (int) surfaceOffset; } private boolean calcIsFloating(InsetsSource imeSource) { @@ -486,50 +436,29 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged .navBarFrameHeight(); } - private void startAnimation(final boolean show, final boolean forceRestart) { - final var imeSource = mInsetsState.peekSource(InsetsSource.ID_IME); - if (imeSource == null || mImeSourceControl == null) { - return; - } - // TODO(b/353463205): For hide: this still has the statsToken from the previous show - // request - final var statsToken = mImeSourceControl.getImeStatsToken(); - - startAnimation(show, forceRestart, statsToken); - } - private void startAnimation(final boolean show, final boolean forceRestart, @SoftInputShowHideReason int reason) { final var imeSource = mInsetsState.peekSource(InsetsSource.ID_IME); if (imeSource == null || mImeSourceControl == null) { return; } - final ImeTracker.Token statsToken; - if (mImeSourceControl.getImeStatsToken() != null) { - statsToken = mImeSourceControl.getImeStatsToken(); - } else { - statsToken = ImeTracker.forLogging().onStart( - show ? ImeTracker.TYPE_SHOW : ImeTracker.TYPE_HIDE, - ImeTracker.ORIGIN_WM_SHELL, reason, false /* fromUser */); - } + final var statsToken = ImeTracker.forLogging().onStart( + show ? ImeTracker.TYPE_SHOW : ImeTracker.TYPE_HIDE, ImeTracker.ORIGIN_WM_SHELL, + reason, false /* fromUser */); + startAnimation(show, forceRestart, statsToken); } private void startAnimation(final boolean show, final boolean forceRestart, @NonNull final ImeTracker.Token statsToken) { - if (mImeSourceControl == null || mImeSourceControl.getLeash() == null) { - ProtoLog.d(WM_SHELL_IME_CONTROLLER, "No Ime leash for animation"); - return; - } - if (!mImeRequestedVisible && show) { - // we have a control with leash, but the IME was not requested visible before, - // therefore aborting the show animation. - Slog.e(TAG, "IME was not requested visible, not starting the show animation."); - // TODO(b/353463205) fail statsToken here - return; + if (android.view.inputmethod.Flags.refactorInsetsController()) { + if (mImeSourceControl == null || mImeSourceControl.getLeash() == null) { + if (DEBUG) Slog.d(TAG, "No leash available, not starting the animation."); + return; + } } final InsetsSource imeSource = mInsetsState.peekSource(InsetsSource.ID_IME); - if (imeSource == null) { + if (imeSource == null || mImeSourceControl == null) { ImeTracker.forLogging().onFailed(statsToken, ImeTracker.PHASE_WM_ANIMATION_CREATE); return; } @@ -546,13 +475,11 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged // Don't set a new frame if it's empty and hiding -- this maintains continuity mImeFrame.set(newFrame); } - final String prevVisibility = mAnimationDirection == DIRECTION_SHOW - ? "SHOW" - : mAnimationDirection == DIRECTION_HIDE - ? "HIDE" - : "NONE"; - ProtoLog.d(WM_SHELL_IME_CONTROLLER, "Run Ime animation, show=%b was=%s", - show, prevVisibility); + if (DEBUG) { + Slog.d(TAG, "Run startAnim show:" + show + " was:" + + (mAnimationDirection == DIRECTION_SHOW ? "SHOW" + : (mAnimationDirection == DIRECTION_HIDE ? "HIDE" : "NONE"))); + } if ((!forceRestart && (mAnimationDirection == DIRECTION_SHOW && show)) || (mAnimationDirection == DIRECTION_HIDE && !show)) { ImeTracker.forLogging().onCancelled( @@ -563,53 +490,42 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged float seekValue = 0; if (mAnimation != null) { if (mAnimation.isRunning()) { - seekValue = mAnimationDirection == DIRECTION_SHOW && !show - // If we were showing previously (and now hiding), we need to use the - // inverse. - ? 1f - (float) mAnimation.getAnimatedValue() - : (float) mAnimation.getAnimatedValue(); + seekValue = (float) mAnimation.getAnimatedValue(); seek = true; } mAnimation.cancel(); } - final InsetsSourceControl animatingControl = new InsetsSourceControl(mImeSourceControl); - final SurfaceControl animatingLeash = animatingControl.getLeash(); - final float defaultY = animatingControl.getSurfacePosition().y; - final float initialX = animatingControl.getSurfacePosition().x; + final float defaultY = mImeSourceControl.getSurfacePosition().y; + final float x = mImeSourceControl.getSurfacePosition().x; final float hiddenY = defaultY + mImeFrame.height(); final float shownY = defaultY; final float startY = show ? hiddenY : shownY; final float endY = show ? shownY : hiddenY; if (mAnimationDirection == DIRECTION_NONE && mImeShowing && show) { // IME is already showing, so set seek to end - seekValue = 1f; + seekValue = shownY; seek = true; } mAnimationDirection = show ? DIRECTION_SHOW : DIRECTION_HIDE; updateImeVisibility(show); - mAnimation = show - ? ValueAnimator.ofFloat(0f, 1f) - : ValueAnimator.ofFloat(1f, 0f); + mAnimation = ValueAnimator.ofFloat(startY, endY); mAnimation.setDuration( show ? ANIMATION_DURATION_SHOW_MS : ANIMATION_DURATION_HIDE_MS); if (seek) { - mAnimation.setCurrentFraction(seekValue); - } else { - // In some cases the value in onAnimationStart is zero, therefore setting it - // explicitly to startY - mAnimation.setCurrentFraction(0); + mAnimation.setCurrentFraction((seekValue - startY) / (endY - startY)); } mAnimation.addUpdateListener(animation -> { SurfaceControl.Transaction t = mTransactionPool.acquire(); - final float value = (float) animation.getAnimatedValue(); - final int x = mImeSourceControl.getSurfacePosition().x; - final int initialY = mImeSourceControl.getSurfacePosition().y; - final int y = (int) (initialY + (1f - value) * mImeFrame.height()); - t.setPosition(animatingLeash, x, y); - final float alpha = (mAnimateAlpha || isFloating) ? value : 1f; - t.setAlpha(animatingLeash, alpha); - dispatchPositionChanged(mDisplayId, imeTop(y, initialY), t); + float value = (float) animation.getAnimatedValue(); + if (!android.view.inputmethod.Flags.refactorInsetsController() || ( + mImeSourceControl != null && mImeSourceControl.getLeash() != null)) { + t.setPosition(mImeSourceControl.getLeash(), x, value); + final float alpha = (mAnimateAlpha || isFloating) + ? (value - hiddenY) / (shownY - hiddenY) : 1.f; + t.setAlpha(mImeSourceControl.getLeash(), alpha); + } + dispatchPositionChanged(mDisplayId, imeTop(value), t); t.apply(); mTransactionPool.release(t); }); @@ -623,38 +539,33 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged @Override public void onAnimationStart(Animator animation) { ValueAnimator valueAnimator = (ValueAnimator) animation; - final float value = (float) valueAnimator.getAnimatedValue(); + float value = (float) valueAnimator.getAnimatedValue(); SurfaceControl.Transaction t = mTransactionPool.acquire(); - t.setPosition(animatingLeash, initialX, startY); - - ProtoLog.d(WM_SHELL_IME_CONTROLLER, - "Ime animation start, d=%d top=%d->%d showing=%b", - mDisplayId, imeTop(hiddenY, defaultY), imeTop(shownY, defaultY), - (mAnimationDirection == DIRECTION_SHOW)); - - if (android.view.inputmethod.Flags.reportAnimatingInsetsTypes()) { - // Updating the animatingTypes when starting the animation is not the - // trigger to show the IME. Thus, not sending the statsToken here. - setAnimating(true /* imeAnimationOngoing */, null /* statsToken */); + t.setPosition(mImeSourceControl.getLeash(), x, value); + if (DEBUG) { + Slog.d(TAG, "onAnimationStart d:" + mDisplayId + " top:" + + imeTop(hiddenY) + "->" + imeTop(shownY) + + " showing:" + (mAnimationDirection == DIRECTION_SHOW)); } - int flags = dispatchStartPositioning(mDisplayId, imeTop(hiddenY, defaultY), - imeTop(shownY, defaultY), mAnimationDirection == DIRECTION_SHOW, - isFloating, t); + int flags = dispatchStartPositioning(mDisplayId, imeTop(hiddenY), + imeTop(shownY), mAnimationDirection == DIRECTION_SHOW, isFloating, t); mAnimateAlpha = (flags & ImePositionProcessor.IME_ANIMATION_NO_ALPHA) == 0; - final float alpha = (mAnimateAlpha || isFloating) ? value : 1f; - t.setAlpha(animatingLeash, alpha); + final float alpha = (mAnimateAlpha || isFloating) + ? (value - hiddenY) / (shownY - hiddenY) + : 1.f; + t.setAlpha(mImeSourceControl.getLeash(), alpha); if (mAnimationDirection == DIRECTION_SHOW) { ImeTracker.forLogging().onProgress(mStatsToken, ImeTracker.PHASE_WM_ANIMATION_RUNNING); - t.show(animatingLeash); + t.show(mImeSourceControl.getLeash()); } if (DEBUG_IME_VISIBILITY) { EventLog.writeEvent(IMF_IME_REMOTE_ANIM_START, mStatsToken != null ? mStatsToken.getTag() : ImeTracker.TOKEN_NONE, mDisplayId, mAnimationDirection, alpha, value, endY, - Objects.toString(animatingLeash), - Objects.toString(animatingControl.getInsetsHint()), - Objects.toString(animatingControl.getSurfacePosition()), + Objects.toString(mImeSourceControl.getLeash()), + Objects.toString(mImeSourceControl.getInsetsHint()), + Objects.toString(mImeSourceControl.getSurfacePosition()), Objects.toString(mImeFrame)); } t.apply(); @@ -668,55 +579,50 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged EventLog.writeEvent(IMF_IME_REMOTE_ANIM_CANCEL, mStatsToken != null ? mStatsToken.getTag() : ImeTracker.TOKEN_NONE, mDisplayId, - Objects.toString(animatingControl.getInsetsHint())); + Objects.toString(mImeSourceControl.getInsetsHint())); } } @Override public void onAnimationEnd(Animator animation) { - ProtoLog.d(WM_SHELL_IME_CONTROLLER, "Ime animation end, canceled=%b", - mCancelled); + boolean hasLeash = + mImeSourceControl != null && mImeSourceControl.getLeash() != null; + if (DEBUG) Slog.d(TAG, "onAnimationEnd " + mCancelled); SurfaceControl.Transaction t = mTransactionPool.acquire(); if (!mCancelled) { - final int x = mImeSourceControl.getSurfacePosition().x; - final int y = mImeSourceControl.getSurfacePosition().y - + (show ? 0 : mImeFrame.height()); - t.setPosition(animatingLeash, x, y); - t.setAlpha(animatingLeash, 1f); - } - if (android.view.inputmethod.Flags.reportAnimatingInsetsTypes()) { - setAnimating(false /* imeAnimationOngoing */, - mAnimationDirection == DIRECTION_HIDE ? statsToken : null); + if (!android.view.inputmethod.Flags.refactorInsetsController() + || hasLeash) { + t.setPosition(mImeSourceControl.getLeash(), x, endY); + t.setAlpha(mImeSourceControl.getLeash(), 1.f); + } } + dispatchEndPositioning(mDisplayId, mCancelled, t); if (mAnimationDirection == DIRECTION_HIDE && !mCancelled) { ImeTracker.forLogging().onProgress(mStatsToken, ImeTracker.PHASE_WM_ANIMATION_RUNNING); - t.hide(animatingLeash); - // Updating the client visibility will not hide the IME, unless it is - // not animating anymore. Thus, not sending a statsToken here, but - // only later when we're updating the animatingTypes. - setVisibleDirectly(false /* visible */, - !android.view.inputmethod.Flags.reportAnimatingInsetsTypes() - ? statsToken : null); + if (!android.view.inputmethod.Flags.refactorInsetsController() + || hasLeash) { + t.hide(mImeSourceControl.getLeash()); + } + removeImeSurface(); + ImeTracker.forLogging().onHidden(mStatsToken); } else if (mAnimationDirection == DIRECTION_SHOW && !mCancelled) { ImeTracker.forLogging().onShown(mStatsToken); } else if (mCancelled) { ImeTracker.forLogging().onCancelled(mStatsToken, ImeTracker.PHASE_WM_ANIMATION_RUNNING); } - // In split screen, we also set {@link - // WindowContainer#mExcludeInsetsTypes} but this should only happen after - // the IME client visibility was set. Otherwise the insets will we - // dispatched too early, and we get a flicker. Thus, only dispatching it - // after reporting that the IME is hidden to system server. - dispatchEndPositioning(mDisplayId, mCancelled, t); if (DEBUG_IME_VISIBILITY) { EventLog.writeEvent(IMF_IME_REMOTE_ANIM_END, mStatsToken != null ? mStatsToken.getTag() : ImeTracker.TOKEN_NONE, mDisplayId, mAnimationDirection, endY, - Objects.toString(animatingLeash), - Objects.toString(animatingControl.getInsetsHint()), - Objects.toString(animatingControl.getSurfacePosition()), + Objects.toString( + mImeSourceControl != null ? mImeSourceControl.getLeash() + : "null"), + Objects.toString(mImeSourceControl != null + ? mImeSourceControl.getInsetsHint() : "null"), + Objects.toString(mImeSourceControl != null + ? mImeSourceControl.getSurfacePosition() : "null"), Objects.toString(mImeFrame)); } t.apply(); @@ -724,10 +630,19 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged mAnimationDirection = DIRECTION_NONE; mAnimation = null; - animatingControl.release(SurfaceControl::release); } }); + if (!show) { + // When going away, queue up insets change first, otherwise any bounds changes + // can have a "flicker" of ime-provided insets. + setVisibleDirectly(false /* visible */); + } mAnimation.start(); + if (show) { + // When showing away, queue up insets change last, otherwise any bounds changes + // can have a "flicker" of ime-provided insets. + setVisibleDirectly(true /* visible */); + } } private void updateImeVisibility(boolean isShowing) { @@ -743,10 +658,10 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged } } - void removeImeSurface(int displayId) { + void removeImeSurface() { // Remove the IME surface to make the insets invisible for // non-client controlled insets. - InputMethodManagerGlobal.removeImeSurface(displayId, + InputMethodManagerGlobal.removeImeSurface( e -> Slog.e(TAG, "Failed to remove IME surface.", e)); } @@ -754,10 +669,6 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged * Allows other things to synchronize with the ime position */ public interface ImePositionProcessor { - - /** Default animation flags. */ - int IME_ANIMATION_DEFAULT = 0; - /** * Indicates that ime shouldn't animate alpha. It will always be opaque. Used when stuff * behind the IME shouldn't be visible (for example during split-screen adjustment where @@ -767,20 +678,11 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged /** @hide */ @IntDef(prefix = {"IME_ANIMATION_"}, value = { - IME_ANIMATION_DEFAULT, IME_ANIMATION_NO_ALPHA, }) @interface ImeAnimationFlags { } - /** - * Called when the IME was requested by an app - * - * @param isRequested {@code true} if the IME was requested to be visible - */ - default void onImeRequested(int displayId, boolean isRequested) { - } - /** * Called when the IME position is starting to animate. * @@ -794,7 +696,7 @@ public class DisplayImeController implements DisplayController.OnDisplaysChanged @ImeAnimationFlags default int onImeStartPositioning(int displayId, int hiddenTop, int shownTop, boolean showing, boolean isFloating, SurfaceControl.Transaction t) { - return IME_ANIMATION_DEFAULT; + return 0; } /** diff --git a/wmshell/src/com/android/wm/shell/common/DisplayInsetsController.java b/wmshell/src/com/android/wm/shell/common/DisplayInsetsController.java index 6deb03e561..1fb0e1745e 100644 --- a/wmshell/src/com/android/wm/shell/common/DisplayInsetsController.java +++ b/wmshell/src/com/android/wm/shell/common/DisplayInsetsController.java @@ -16,7 +16,6 @@ package com.android.wm.shell.common; -import android.annotation.NonNull; import android.annotation.Nullable; import android.content.ComponentName; import android.os.RemoteException; @@ -48,8 +47,6 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan private final SparseArray<PerDisplay> mInsetsPerDisplay = new SparseArray<>(); private final SparseArray<CopyOnWriteArrayList<OnInsetsChangedListener>> mListeners = new SparseArray<>(); - private final CopyOnWriteArrayList<OnInsetsChangedListener> mGlobalListeners = - new CopyOnWriteArrayList<>(); public DisplayInsetsController(IWindowManager wmService, ShellInit shellInit, @@ -83,16 +80,6 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan } } - /** - * Adds a callback to listen for insets changes for any display. Note that the - * listener will not be updated with the existing state of the insets on any display. - */ - public void addGlobalInsetsChangedListener(OnInsetsChangedListener listener) { - if (!mGlobalListeners.contains(listener)) { - mGlobalListeners.add(listener); - } - } - /** * Removes a callback listening for insets changes from a particular display. */ @@ -104,13 +91,6 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan listeners.remove(listener); } - /** - * Removes a callback listening for insets changes from any display. - */ - public void removeGlobalInsetsChangedListener(OnInsetsChangedListener listener) { - mGlobalListeners.remove(listener); - } - @Override public void onDisplayAdded(int displayId) { PerDisplay pd = new PerDisplay(displayId); @@ -158,17 +138,12 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan private void insetsChanged(InsetsState insetsState) { CopyOnWriteArrayList<OnInsetsChangedListener> listeners = mListeners.get(mDisplayId); - if (listeners == null && mGlobalListeners.isEmpty()) { + if (listeners == null) { return; } mDisplayController.updateDisplayInsets(mDisplayId, insetsState); - for (OnInsetsChangedListener listener : mGlobalListeners) { - listener.insetsChanged(mDisplayId, insetsState); - } - if (listeners != null) { - for (OnInsetsChangedListener listener : listeners) { - listener.insetsChanged(mDisplayId, insetsState); - } + for (OnInsetsChangedListener listener : listeners) { + listener.insetsChanged(insetsState); } } @@ -183,7 +158,8 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan } } - private void showInsets(@InsetsType int types, @Nullable ImeTracker.Token statsToken) { + private void showInsets(@InsetsType int types, boolean fromIme, + @Nullable ImeTracker.Token statsToken) { CopyOnWriteArrayList<OnInsetsChangedListener> listeners = mListeners.get(mDisplayId); if (listeners == null) { ImeTracker.forLogging().onFailed( @@ -193,11 +169,12 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan ImeTracker.forLogging().onProgress( statsToken, ImeTracker.PHASE_WM_REMOTE_INSETS_CONTROLLER); for (OnInsetsChangedListener listener : listeners) { - listener.showInsets(types, statsToken); + listener.showInsets(types, fromIme, statsToken); } } - private void hideInsets(@InsetsType int types, @Nullable ImeTracker.Token statsToken) { + private void hideInsets(@InsetsType int types, boolean fromIme, + @Nullable ImeTracker.Token statsToken) { CopyOnWriteArrayList<OnInsetsChangedListener> listeners = mListeners.get(mDisplayId); if (listeners == null) { ImeTracker.forLogging().onFailed( @@ -207,7 +184,7 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan ImeTracker.forLogging().onProgress( statsToken, ImeTracker.PHASE_WM_REMOTE_INSETS_CONTROLLER); for (OnInsetsChangedListener listener : listeners) { - listener.hideInsets(types, statsToken); + listener.hideInsets(types, fromIme, statsToken); } } @@ -222,14 +199,13 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan } } - private void setImeInputTargetRequestedVisibility(boolean visible, - @NonNull ImeTracker.Token statsToken) { + private void setImeInputTargetRequestedVisibility(boolean visible) { CopyOnWriteArrayList<OnInsetsChangedListener> listeners = mListeners.get(mDisplayId); if (listeners == null) { return; } for (OnInsetsChangedListener listener : listeners) { - listener.setImeInputTargetRequestedVisibility(visible, statsToken); + listener.setImeInputTargetRequestedVisibility(visible); } } @@ -260,27 +236,26 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan } @Override - public void showInsets(@InsetsType int types, @Nullable ImeTracker.Token statsToken) - throws RemoteException { + public void showInsets(@InsetsType int types, boolean fromIme, + @Nullable ImeTracker.Token statsToken) throws RemoteException { mMainExecutor.execute(() -> { - PerDisplay.this.showInsets(types, statsToken); + PerDisplay.this.showInsets(types, fromIme, statsToken); }); } @Override - public void hideInsets(@InsetsType int types, @Nullable ImeTracker.Token statsToken) - throws RemoteException { + public void hideInsets(@InsetsType int types, boolean fromIme, + @Nullable ImeTracker.Token statsToken) throws RemoteException { mMainExecutor.execute(() -> { - PerDisplay.this.hideInsets(types, statsToken); + PerDisplay.this.hideInsets(types, fromIme, statsToken); }); } @Override - public void setImeInputTargetRequestedVisibility(boolean visible, - @NonNull ImeTracker.Token statsToken) + public void setImeInputTargetRequestedVisibility(boolean visible) throws RemoteException { mMainExecutor.execute(() -> { - PerDisplay.this.setImeInputTargetRequestedVisibility(visible, statsToken); + PerDisplay.this.setImeInputTargetRequestedVisibility(visible); }); } } @@ -309,13 +284,6 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan */ default void insetsChanged(InsetsState insetsState) {} - /** - * Called when the window insets configuration has changed for the given display. - */ - default void insetsChanged(int displayId, InsetsState insetsState) { - insetsChanged(insetsState); - } - /** * Called when this window retrieved control over a specified set of insets sources. */ @@ -326,26 +294,27 @@ public class DisplayInsetsController implements DisplayController.OnDisplaysChan * Called when a set of insets source window should be shown by policy. * * @param types {@link InsetsType} to show + * @param fromIme true if this request originated from IME (InputMethodService). * @param statsToken the token tracking the current IME request or {@code null} otherwise. */ - default void showInsets(@InsetsType int types, @Nullable ImeTracker.Token statsToken) {} + default void showInsets(@InsetsType int types, boolean fromIme, + @Nullable ImeTracker.Token statsToken) {} /** * Called when a set of insets source window should be hidden by policy. * * @param types {@link InsetsType} to hide + * @param fromIme true if this request originated from IME (InputMethodService). * @param statsToken the token tracking the current IME request or {@code null} otherwise. */ - default void hideInsets(@InsetsType int types, @Nullable ImeTracker.Token statsToken) {} + default void hideInsets(@InsetsType int types, boolean fromIme, + @Nullable ImeTracker.Token statsToken) {} /** * Called to set the requested visibility of the IME in DisplayImeController. Invoked by * {@link com.android.server.wm.DisplayContent.RemoteInsetsControlTarget}. * @param visible requested status of the IME - * @param statsToken the token tracking the current IME request */ - default void setImeInputTargetRequestedVisibility(boolean visible, - @NonNull ImeTracker.Token statsToken) { - } + default void setImeInputTargetRequestedVisibility(boolean visible) {} } } diff --git a/wmshell/src/com/android/wm/shell/common/DisplayLayout.java b/wmshell/src/com/android/wm/shell/common/DisplayLayout.java index 82b31ee8ef..86cec02ab1 100644 --- a/wmshell/src/com/android/wm/shell/common/DisplayLayout.java +++ b/wmshell/src/com/android/wm/shell/common/DisplayLayout.java @@ -31,13 +31,10 @@ import android.content.ContentResolver; import android.content.Context; import android.content.res.Resources; import android.graphics.Insets; -import android.graphics.PointF; import android.graphics.Rect; -import android.graphics.RectF; import android.os.SystemProperties; import android.provider.Settings; import android.util.DisplayMetrics; -import android.util.Size; import android.view.Display; import android.view.DisplayCutout; import android.view.DisplayInfo; @@ -73,12 +70,9 @@ public class DisplayLayout { public static final int NAV_BAR_RIGHT = 1 << 1; public static final int NAV_BAR_BOTTOM = 1 << 2; - private static final String TAG = "DisplayLayout"; - private int mUiMode; private int mWidth; private int mHeight; - private RectF mGlobalBoundsDp; private DisplayCutout mCutout; private int mRotation; private int mDensityDpi; @@ -87,7 +81,6 @@ public class DisplayLayout { private boolean mHasNavigationBar = false; private boolean mHasStatusBar = false; private int mNavBarFrameHeight = 0; - private int mTaskbarFrameHeight = 0; private boolean mAllowSeamlessRotationDespiteNavBarMoving = false; private boolean mNavigationBarCanMove = false; private boolean mReverseDefaultRotation = false; @@ -114,7 +107,6 @@ public class DisplayLayout { return mUiMode == other.mUiMode && mWidth == other.mWidth && mHeight == other.mHeight - && Objects.equals(mGlobalBoundsDp, other.mGlobalBoundsDp) && Objects.equals(mCutout, other.mCutout) && mRotation == other.mRotation && mDensityDpi == other.mDensityDpi @@ -127,15 +119,14 @@ public class DisplayLayout { && mNavigationBarCanMove == other.mNavigationBarCanMove && mReverseDefaultRotation == other.mReverseDefaultRotation && mNavBarFrameHeight == other.mNavBarFrameHeight - && mTaskbarFrameHeight == other.mTaskbarFrameHeight && Objects.equals(mInsetsState, other.mInsetsState); } @Override public int hashCode() { - return Objects.hash(mUiMode, mWidth, mHeight, mGlobalBoundsDp, mCutout, mRotation, - mDensityDpi, mNonDecorInsets, mStableInsets, mHasNavigationBar, mHasStatusBar, - mNavBarFrameHeight, mTaskbarFrameHeight, mAllowSeamlessRotationDespiteNavBarMoving, + return Objects.hash(mUiMode, mWidth, mHeight, mCutout, mRotation, mDensityDpi, + mNonDecorInsets, mStableInsets, mHasNavigationBar, mHasStatusBar, + mNavBarFrameHeight, mAllowSeamlessRotationDespiteNavBarMoving, mNavigationBarCanMove, mReverseDefaultRotation, mInsetsState); } @@ -155,20 +146,6 @@ public class DisplayLayout { init(info, res, hasNavigationBar, hasStatusBar); } - /** - * Construct a display layout based on a live display. - * @param context Used for resources. - * @param rawDisplay Display object for the layout - * @param hasNavigationBar whether the navigation bar is visible on that display - * @param hasStatusBar whether the status bar is visible on that display - */ - public DisplayLayout(@NonNull Context context, @NonNull Display rawDisplay, - boolean hasNavigationBar, boolean hasStatusBar) { - DisplayInfo info = new DisplayInfo(); - rawDisplay.getDisplayInfo(info); - init(info, context.getResources(), hasNavigationBar, hasStatusBar); - } - /** * Construct a display layout based on a live display. * @param context Used for resources. @@ -190,7 +167,6 @@ public class DisplayLayout { mUiMode = dl.mUiMode; mWidth = dl.mWidth; mHeight = dl.mHeight; - mGlobalBoundsDp = dl.mGlobalBoundsDp; mCutout = dl.mCutout; mRotation = dl.mRotation; mDensityDpi = dl.mDensityDpi; @@ -200,7 +176,6 @@ public class DisplayLayout { mNavigationBarCanMove = dl.mNavigationBarCanMove; mReverseDefaultRotation = dl.mReverseDefaultRotation; mNavBarFrameHeight = dl.mNavBarFrameHeight; - mTaskbarFrameHeight = dl.mTaskbarFrameHeight; mNonDecorInsets.set(dl.mNonDecorInsets); mStableInsets.set(dl.mStableInsets); mInsetsState.set(dl.mInsetsState, true /* copySources */); @@ -214,7 +189,6 @@ public class DisplayLayout { mRotation = info.rotation; mCutout = info.displayCutout; mDensityDpi = info.logicalDensityDpi; - mGlobalBoundsDp = new RectF(0, 0, pxToDp(mWidth), pxToDp(mHeight)); mHasNavigationBar = hasNavigationBar; mHasStatusBar = hasStatusBar; mAllowSeamlessRotationDespiteNavBarMoving = res.getBoolean( @@ -240,8 +214,7 @@ public class DisplayLayout { if (mHasStatusBar) { convertNonDecorInsetsToStableInsets(res, mStableInsets, mCutout, mHasStatusBar); } - mNavBarFrameHeight = getNavigationBarFrameHeight(res, /* landscape */ mWidth > mHeight); - mTaskbarFrameHeight = SystemBarUtils.getTaskbarHeight(res); + mNavBarFrameHeight = getNavigationBarFrameHeight(res, mWidth > mHeight); } /** @@ -267,21 +240,6 @@ public class DisplayLayout { recalcInsets(res); } - /** - * Update the dimensions of this layout. - */ - public void resizeTo(Resources res, Size displaySize) { - mWidth = displaySize.getWidth(); - mHeight = displaySize.getHeight(); - - recalcInsets(res); - } - - /** Update the global bounds of this layout, in DP. */ - public void setGlobalBoundsDp(RectF bounds) { - mGlobalBoundsDp = bounds; - } - /** Get this layout's non-decor insets. */ public Rect nonDecorInsets() { return mNonDecorInsets; @@ -292,21 +250,16 @@ public class DisplayLayout { return mStableInsets; } - /** Get this layout's width in pixels. */ + /** Get this layout's width. */ public int width() { return mWidth; } - /** Get this layout's height in pixels. */ + /** Get this layout's height. */ public int height() { return mHeight; } - /** Get this layout's global bounds in the multi-display coordinate system in DP. */ - public RectF globalBoundsDp() { - return mGlobalBoundsDp; - } - /** Get this layout's display rotation. */ public int rotation() { return mRotation; @@ -368,17 +321,6 @@ public class DisplayLayout { outBounds.inset(mStableInsets); } - /** Predicts the calculated stable bounds when in Desktop Mode. */ - public void getStableBoundsForDesktopMode(Rect outBounds) { - getStableBounds(outBounds); - - if (mNavBarFrameHeight != mTaskbarFrameHeight) { - // Currently not in pinned taskbar mode, exclude taskbar insets instead of current - // navigation insets from bounds. - outBounds.bottom = mHeight - mTaskbarFrameHeight; - } - } - /** * Gets navigation bar position for this layout * @return Navigation bar position for this layout. @@ -422,10 +364,8 @@ public class DisplayLayout { // Only navigation bar if (hasNavigationBar) { - final Rect displayFrame = insetsState.getDisplayFrame(); final Insets insets = insetsState.calculateInsets( - displayFrame, - displayFrame, + insetsState.getDisplayFrame(), WindowInsets.Type.navigationBars(), false /* ignoreVisibility */); int position = navigationBarPosition(res, displayWidth, displayHeight, displayRotation); @@ -520,48 +460,4 @@ public class DisplayLayout { ? R.dimen.navigation_bar_frame_height_landscape : R.dimen.navigation_bar_frame_height); } - - /** - * Converts a pixel value to a density-independent pixel (dp) value. - * - * @param px The pixel value to convert. - * @return The equivalent value in DP units. - */ - public float pxToDp(Number px) { - return px.floatValue() * DisplayMetrics.DENSITY_DEFAULT / mDensityDpi; - } - - /** - * Converts a density-independent pixel (dp) value to a pixel value. - * - * @param dp The DP value to convert. - * @return The equivalent value in pixel units. - */ - public float dpToPx(Number dp) { - return dp.floatValue() * mDensityDpi / DisplayMetrics.DENSITY_DEFAULT; - } - - /** - * Converts local pixel coordinates on this layout to global DP coordinates. - * - * @param xPx The x-coordinate in pixels, relative to the layout's origin. - * @param yPx The y-coordinate in pixels, relative to the layout's origin. - * @return A PointF object representing the coordinates in global DP units. - */ - public PointF localPxToGlobalDp(Number xPx, Number yPx) { - return new PointF(mGlobalBoundsDp.left + pxToDp(xPx), - mGlobalBoundsDp.top + pxToDp(yPx)); - } - - /** - * Converts global DP coordinates to local pixel coordinates on this layout. - * - * @param xDp The x-coordinate in global DP units. - * @param yDp The y-coordinate in global DP units. - * @return A PointF object representing the coordinates in local pixel units on this layout. - */ - public PointF globalDpToLocalPx(Number xDp, Number yDp) { - return new PointF(dpToPx(xDp.floatValue() - mGlobalBoundsDp.left), - dpToPx(yDp.floatValue() - mGlobalBoundsDp.top)); - } } diff --git a/wmshell/src/com/android/wm/shell/common/HandlerExecutor.java b/wmshell/src/com/android/wm/shell/common/HandlerExecutor.java index 803f16ce39..bfee820870 100644 --- a/wmshell/src/com/android/wm/shell/common/HandlerExecutor.java +++ b/wmshell/src/com/android/wm/shell/common/HandlerExecutor.java @@ -16,50 +16,15 @@ package com.android.wm.shell.common; -import static android.os.Process.THREAD_PRIORITY_DEFAULT; -import static android.os.Process.setThreadPriority; - import android.annotation.NonNull; import android.os.Handler; -import android.os.HandlerThread; -import android.os.Looper; - -import androidx.annotation.VisibleForTesting; - -import java.util.function.BiConsumer; /** Executor implementation which is backed by a Handler. */ public class HandlerExecutor implements ShellExecutor { - @NonNull private final Handler mHandler; - // See android.os.Process#THREAD_PRIORITY_* - private final int mDefaultThreadPriority; - private final int mBoostedThreadPriority; - // Number of current requests to boost thread priority - private int mBoostCount; - private final Object mBoostLock = new Object(); - // Default function for setting thread priority (tid, priority) - private BiConsumer<Integer, Integer> mSetThreadPriorityFn = - HandlerExecutor::setThreadPriorityInternal; public HandlerExecutor(@NonNull Handler handler) { - this(handler, THREAD_PRIORITY_DEFAULT, THREAD_PRIORITY_DEFAULT); - } - - /** - * Used only if this executor can be boosted, if so, it can be boosted to the given - * {@param boostPriority}. - */ - public HandlerExecutor(@NonNull Handler handler, int defaultThreadPriority, - int boostedThreadPriority) { mHandler = handler; - mDefaultThreadPriority = defaultThreadPriority; - mBoostedThreadPriority = boostedThreadPriority; - } - - @VisibleForTesting - void replaceSetThreadPriorityFn(BiConsumer<Integer, Integer> setThreadPriorityFn) { - mSetThreadPriorityFn = setThreadPriorityFn; } @Override @@ -89,56 +54,4 @@ public class HandlerExecutor implements ShellExecutor { public boolean hasCallback(Runnable r) { return mHandler.hasCallbacks(r); } - - @Override - public void setBoost() { - synchronized (mBoostLock) { - if (mDefaultThreadPriority == mBoostedThreadPriority) { - // Nothing to boost - return; - } - if (mBoostCount == 0) { - mSetThreadPriorityFn.accept( - ((HandlerThread) mHandler.getLooper().getThread()).getThreadId(), - mBoostedThreadPriority); - } - mBoostCount++; - } - } - - @Override - public void resetBoost() { - synchronized (mBoostLock) { - mBoostCount--; - if (mBoostCount == 0) { - mSetThreadPriorityFn.accept( - ((HandlerThread) mHandler.getLooper().getThread()).getThreadId(), - mDefaultThreadPriority); - } - } - } - - @Override - public boolean isBoosted() { - synchronized (mBoostLock) { - return mBoostCount > 0; - } - } - - @Override - @NonNull - public Looper getLooper() { - return mHandler.getLooper(); - } - - @Override - public void assertCurrentThread() { - if (!mHandler.getLooper().isCurrentThread()) { - throw new IllegalStateException("must be called on " + mHandler); - } - } - - private static void setThreadPriorityInternal(Integer tid, Integer priority) { - setThreadPriority(tid, priority); - } } diff --git a/wmshell/src/com/android/wm/shell/common/LaunchAdjacentController.kt b/wmshell/src/com/android/wm/shell/common/LaunchAdjacentController.kt index e92b0b59d2..81592c35e4 100644 --- a/wmshell/src/com/android/wm/shell/common/LaunchAdjacentController.kt +++ b/wmshell/src/com/android/wm/shell/common/LaunchAdjacentController.kt @@ -17,8 +17,8 @@ package com.android.wm.shell.common import android.window.WindowContainerToken import android.window.WindowContainerTransaction -import com.android.internal.protolog.ProtoLog import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_TASK_ORG +import com.android.wm.shell.util.KtProtoLog /** * Controller to manage behavior of activities launched with @@ -30,7 +30,7 @@ class LaunchAdjacentController(private val syncQueue: SyncTransactionQueue) { var launchAdjacentEnabled: Boolean = true set(value) { if (field != value) { - ProtoLog.d(WM_SHELL_TASK_ORG, "set launch adjacent flag root enabled=%b", value) + KtProtoLog.d(WM_SHELL_TASK_ORG, "set launch adjacent flag root enabled=%b", value) field = value container?.let { c -> if (value) { @@ -52,7 +52,7 @@ class LaunchAdjacentController(private val syncQueue: SyncTransactionQueue) { * @see WindowContainerTransaction.setLaunchAdjacentFlagRoot */ fun setLaunchAdjacentRoot(container: WindowContainerToken) { - ProtoLog.d(WM_SHELL_TASK_ORG, "set new launch adjacent flag root container") + KtProtoLog.d(WM_SHELL_TASK_ORG, "set new launch adjacent flag root container") this.container = container if (launchAdjacentEnabled) { enableContainer(container) @@ -67,7 +67,7 @@ class LaunchAdjacentController(private val syncQueue: SyncTransactionQueue) { * @see WindowContainerTransaction.clearLaunchAdjacentFlagRoot */ fun clearLaunchAdjacentRoot() { - ProtoLog.d(WM_SHELL_TASK_ORG, "clear launch adjacent flag root container") + KtProtoLog.d(WM_SHELL_TASK_ORG, "clear launch adjacent flag root container") container?.let { disableContainer(it) container = null @@ -75,14 +75,14 @@ class LaunchAdjacentController(private val syncQueue: SyncTransactionQueue) { } private fun enableContainer(container: WindowContainerToken) { - ProtoLog.v(WM_SHELL_TASK_ORG, "enable launch adjacent flag root container") + KtProtoLog.v(WM_SHELL_TASK_ORG, "enable launch adjacent flag root container") val wct = WindowContainerTransaction() wct.setLaunchAdjacentFlagRoot(container) syncQueue.queue(wct) } private fun disableContainer(container: WindowContainerToken) { - ProtoLog.v(WM_SHELL_TASK_ORG, "disable launch adjacent flag root container") + KtProtoLog.v(WM_SHELL_TASK_ORG, "disable launch adjacent flag root container") val wct = WindowContainerTransaction() wct.clearLaunchAdjacentFlagRoot(container) syncQueue.queue(wct) diff --git a/wmshell/src/com/android/wm/shell/common/MultiInstanceHelper.kt b/wmshell/src/com/android/wm/shell/common/MultiInstanceHelper.kt index ff3e65a247..9e8dfb5f0c 100644 --- a/wmshell/src/com/android/wm/shell/common/MultiInstanceHelper.kt +++ b/wmshell/src/com/android/wm/shell/common/MultiInstanceHelper.kt @@ -15,21 +15,17 @@ */ package com.android.wm.shell.common -import android.annotation.UserIdInt import android.app.PendingIntent import android.content.ComponentName import android.content.Context import android.content.pm.LauncherApps import android.content.pm.PackageManager -import android.content.pm.PackageManager.Property import android.os.UserHandle import android.view.WindowManager.PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI -import com.android.internal.protolog.ProtoLog +import com.android.internal.annotations.VisibleForTesting import com.android.wm.shell.R import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL -import com.android.wm.shell.sysui.ShellCommandHandler -import com.android.wm.shell.sysui.ShellInit -import java.io.PrintWriter +import com.android.wm.shell.util.KtProtoLog import java.util.Arrays /** @@ -40,23 +36,13 @@ class MultiInstanceHelper @JvmOverloads constructor( private val packageManager: PackageManager, private val staticAppsSupportingMultiInstance: Array<String> = context.resources .getStringArray(R.array.config_appsSupportMultiInstancesSplit), - shellInit: ShellInit, - private val shellCommandHandler: ShellCommandHandler, - private val supportsMultiInstanceProperty: Boolean -) : ShellCommandHandler.ShellCommandActionHandler { - - init { - shellInit.addInitCallback(this::onInit, this) - } - - private fun onInit() { - shellCommandHandler.addCommandCallback("multi-instance", this, this) - } + private val supportsMultiInstanceProperty: Boolean) { /** * Returns whether a specific component desires to be launched in multiple instances. */ - fun supportsMultiInstanceSplit(componentName: ComponentName?, @UserIdInt userId: Int): Boolean { + @VisibleForTesting + fun supportsMultiInstanceSplit(componentName: ComponentName?): Boolean { if (componentName == null || componentName.packageName == null) { // TODO(b/262864589): Handle empty component case return false @@ -66,7 +52,7 @@ class MultiInstanceHelper @JvmOverloads constructor( val packageName = componentName.packageName for (pkg in staticAppsSupportingMultiInstance) { if (pkg == packageName) { - ProtoLog.v(WM_SHELL, "application=%s in allowlist supports multi-instance", + KtProtoLog.v(WM_SHELL, "application=%s in allowlist supports multi-instance", packageName) return true } @@ -74,21 +60,20 @@ class MultiInstanceHelper @JvmOverloads constructor( if (!supportsMultiInstanceProperty) { // If not checking the multi-instance properties, then return early - return false + return false; } // Check the activity property first try { - val activityProp = packageManager.getPropertyAsUser( - PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI, componentName.packageName, - componentName.className, userId) + val activityProp = packageManager.getProperty( + PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI, componentName) // If the above call doesn't throw a NameNotFoundException, then the activity property // should override the application property value if (activityProp.isBoolean) { - ProtoLog.v(WM_SHELL, "activity=%s supports multi-instance", componentName) + KtProtoLog.v(WM_SHELL, "activity=%s supports multi-instance", componentName) return activityProp.boolean } else { - ProtoLog.w(WM_SHELL, "Warning: property=%s for activity=%s has non-bool type=%d", + KtProtoLog.w(WM_SHELL, "Warning: property=%s for activity=%s has non-bool type=%d", PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI, packageName, activityProp.type) } } catch (nnfe: PackageManager.NameNotFoundException) { @@ -97,14 +82,13 @@ class MultiInstanceHelper @JvmOverloads constructor( // Check the application property otherwise try { - val appProp = packageManager.getPropertyAsUser( - PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI, packageName, null /* className */, - userId) + val appProp = packageManager.getProperty( + PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI, packageName) if (appProp.isBoolean) { - ProtoLog.v(WM_SHELL, "application=%s supports multi-instance", packageName) + KtProtoLog.v(WM_SHELL, "application=%s supports multi-instance", packageName) return appProp.boolean } else { - ProtoLog.w(WM_SHELL, + KtProtoLog.w(WM_SHELL, "Warning: property=%s for application=%s has non-bool type=%d", PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI, packageName, appProp.type) } @@ -114,66 +98,6 @@ class MultiInstanceHelper @JvmOverloads constructor( return false } - override fun onShellCommand(args: Array<out String>?, pw: PrintWriter?): Boolean { - if (pw == null || args == null || args.isEmpty()) { - return false - } - when (args[0]) { - "list" -> return dumpSupportedApps(pw) - } - return false - } - - override fun printShellCommandHelp(pw: PrintWriter, prefix: String) { - pw.println("${prefix}list") - pw.println("$prefix Lists all the packages that support the multiinstance property") - } - - /** - * Dumps the static allowlist and list of apps that have the declared property in the manifest. - */ - private fun dumpSupportedApps(pw: PrintWriter): Boolean { - pw.println("Static allow list (for all users):") - staticAppsSupportingMultiInstance.forEach { pkg -> - pw.println(" $pkg") - } - - // TODO(b/391693747): Dump this per-user once PM allows us to query properties - // for non-calling users - val apps = packageManager.queryApplicationProperty( - PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI) - val activities = packageManager.queryActivityProperty( - PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI) - val appsWithProperty = (apps + activities) - .sortedWith(object : Comparator<Property?> { - override fun compare(o1: Property?, o2: Property?): Int { - if (o1?.packageName != o2?.packageName) { - return o1?.packageName!!.compareTo(o2?.packageName!!) - } else { - if (o1?.className != null) { - return o1.className!!.compareTo(o2?.className!!) - } else if (o2?.className != null) { - return -o2.className!!.compareTo(o1?.className!!) - } - return 0 - } - } - }) - if (appsWithProperty.isNotEmpty()) { - pw.println("Apps (User ${context.userId}):") - appsWithProperty.forEach { prop -> - if (prop.isBoolean && prop.boolean) { - if (prop.className != null) { - pw.println(" ${prop.packageName}/${prop.className}") - } else { - pw.println(" ${prop.packageName}") - } - } - } - } - return true - } - companion object { /** Returns the component from a PendingIntent */ @JvmStatic diff --git a/wmshell/src/com/android/wm/shell/common/ScreenshotUtils.java b/wmshell/src/com/android/wm/shell/common/ScreenshotUtils.java index 1929729eb1..fad3dee1f9 100644 --- a/wmshell/src/com/android/wm/shell/common/ScreenshotUtils.java +++ b/wmshell/src/com/android/wm/shell/common/ScreenshotUtils.java @@ -42,7 +42,6 @@ public class ScreenshotUtils { .setSourceCrop(crop) .setCaptureSecureLayers(true) .setAllowProtected(true) - .setHintForSeamlessTransition(true) .build())); } @@ -79,9 +78,6 @@ public class ScreenshotUtils { mTransaction.setColorSpace(mScreenshot, buffer.getColorSpace()); mTransaction.reparent(mScreenshot, mParentSurfaceControl); mTransaction.setLayer(mScreenshot, mLayer); - if (buffer.containsHdrLayers()) { - mTransaction.setDimmingEnabled(mScreenshot, false); - } mTransaction.show(mScreenshot); mTransaction.apply(); } diff --git a/wmshell/src/com/android/wm/shell/common/ShellExecutor.java b/wmshell/src/com/android/wm/shell/common/ShellExecutor.java index 9e5071e834..f729164ed3 100644 --- a/wmshell/src/com/android/wm/shell/common/ShellExecutor.java +++ b/wmshell/src/com/android/wm/shell/common/ShellExecutor.java @@ -18,15 +18,15 @@ package com.android.wm.shell.common; import java.lang.reflect.Array; import java.util.concurrent.CountDownLatch; +import java.util.concurrent.Executor; import java.util.concurrent.TimeUnit; import java.util.function.Supplier; /** * Super basic Executor interface that adds support for delayed execution and removing callbacks. - * Intended to wrap Handler while better-supporting testing. Not every ShellExecutor implementation - * may support boosting. + * Intended to wrap Handler while better-supporting testing. */ -public interface ShellExecutor extends BoostExecutor { +public interface ShellExecutor extends Executor { /** * Executes the given runnable. If the caller is running on the same looper as this executor, @@ -96,11 +96,4 @@ public interface ShellExecutor extends BoostExecutor { * See {@link android.os.Handler#hasCallbacks(Runnable)}. */ boolean hasCallback(Runnable runnable); - - /** - * May throw if the caller is not on the same thread as the executor. - */ - default void assertCurrentThread() { - return; - } } diff --git a/wmshell/src/com/android/wm/shell/common/SurfaceUtils.java b/wmshell/src/com/android/wm/shell/common/SurfaceUtils.java index dd17e2980e..4b138e43bc 100644 --- a/wmshell/src/com/android/wm/shell/common/SurfaceUtils.java +++ b/wmshell/src/com/android/wm/shell/common/SurfaceUtils.java @@ -17,6 +17,7 @@ package com.android.wm.shell.common; import android.view.SurfaceControl; +import android.view.SurfaceSession; /** * Helpers for handling surface. @@ -24,15 +25,16 @@ import android.view.SurfaceControl; public class SurfaceUtils { /** Creates a dim layer above host surface. */ public static SurfaceControl makeDimLayer(SurfaceControl.Transaction t, SurfaceControl host, - String name) { - final SurfaceControl dimLayer = makeColorLayer(host, name); + String name, SurfaceSession surfaceSession) { + final SurfaceControl dimLayer = makeColorLayer(host, name, surfaceSession); t.setLayer(dimLayer, Integer.MAX_VALUE).setColor(dimLayer, new float[]{0f, 0f, 0f}); return dimLayer; } /** Creates a color layer for host surface. */ - public static SurfaceControl makeColorLayer(SurfaceControl host, String name) { - return new SurfaceControl.Builder() + public static SurfaceControl makeColorLayer(SurfaceControl host, String name, + SurfaceSession surfaceSession) { + return new SurfaceControl.Builder(surfaceSession) .setParent(host) .setColorLayer() .setName(name) diff --git a/wmshell/src/com/android/wm/shell/common/SyncTransactionQueue.java b/wmshell/src/com/android/wm/shell/common/SyncTransactionQueue.java index a8e6b593f2..e261d92bda 100644 --- a/wmshell/src/com/android/wm/shell/common/SyncTransactionQueue.java +++ b/wmshell/src/com/android/wm/shell/common/SyncTransactionQueue.java @@ -20,14 +20,16 @@ import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL; import android.annotation.BinderThread; import android.annotation.NonNull; +import android.os.RemoteException; import android.util.Slog; import android.view.SurfaceControl; +import android.view.WindowManager; import android.window.WindowContainerTransaction; import android.window.WindowContainerTransactionCallback; import android.window.WindowOrganizer; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.shared.TransactionPool; +import com.android.internal.protolog.common.ProtoLog; +import com.android.wm.shell.transition.LegacyTransitions; import java.util.ArrayList; @@ -83,6 +85,25 @@ public final class SyncTransactionQueue { } } + /** + * Queues a legacy transition to be sent serially to WM + */ + public void queue(LegacyTransitions.ILegacyTransition transition, + @WindowManager.TransitionType int type, WindowContainerTransaction wct) { + if (wct.isEmpty()) { + if (DEBUG) Slog.d(TAG, "Skip queue due to transaction change is empty"); + return; + } + SyncCallback cb = new SyncCallback(transition, type, wct); + synchronized (mQueue) { + if (DEBUG) Slog.d(TAG, "Queueing up legacy transition " + wct); + mQueue.add(cb); + if (mQueue.size() == 1) { + cb.send(); + } + } + } + /** * Queues a sync transaction only if there are already sync transaction(s) queued or in flight. * Otherwise just returns without queueing. @@ -146,9 +167,17 @@ public final class SyncTransactionQueue { private class SyncCallback extends WindowContainerTransactionCallback { int mId = -1; final WindowContainerTransaction mWCT; + final LegacyTransitions.LegacyTransition mLegacyTransition; SyncCallback(WindowContainerTransaction wct) { mWCT = wct; + mLegacyTransition = null; + } + + SyncCallback(LegacyTransitions.ILegacyTransition legacyTransition, + @WindowManager.TransitionType int type, WindowContainerTransaction wct) { + mWCT = wct; + mLegacyTransition = new LegacyTransitions.LegacyTransition(type, legacyTransition); } // Must be sychronized on mQueue @@ -162,17 +191,15 @@ public final class SyncTransactionQueue { throw new IllegalStateException("Sync Transactions must be serialized. In Flight: " + mInFlight.mId + " - " + mInFlight.mWCT); } + mInFlight = this; if (DEBUG) Slog.d(TAG, "Sending sync transaction: " + mWCT); - try { + if (mLegacyTransition != null) { + mId = new WindowOrganizer().startLegacyTransition(mLegacyTransition.getType(), + mLegacyTransition.getAdapter(), this, mWCT); + } else { mId = new WindowOrganizer().applySyncTransaction(mWCT, this); - } catch (RuntimeException e) { - Slog.e(TAG, "Send failed", e); - // Finish current sync callback immediately. - onTransactionReady(mId, new SurfaceControl.Transaction()); - return; } if (DEBUG) Slog.d(TAG, " Sent sync transaction. Got id=" + mId); - mInFlight = this; mMainExecutor.executeDelayed(mOnReplyTimeout, REPLY_TIMEOUT); } @@ -193,10 +220,18 @@ public final class SyncTransactionQueue { if (DEBUG) Slog.d(TAG, "onTransactionReady id=" + mId); mQueue.remove(this); onTransactionReceived(t); - ProtoLog.v(WM_SHELL, - "SyncTransactionQueue.onTransactionReady(): syncId=%d apply", id); - t.apply(); - t.close(); + if (mLegacyTransition != null) { + try { + mLegacyTransition.getSyncCallback().onTransactionReady(mId, t); + } catch (RemoteException e) { + Slog.e(TAG, "Error sending callback to legacy transition: " + mId, e); + } + } else { + ProtoLog.v(WM_SHELL, + "SyncTransactionQueue.onTransactionReady(): syncId=%d apply", id); + t.apply(); + t.close(); + } if (!mQueue.isEmpty()) { mQueue.get(0).send(); } diff --git a/wmshell/src/com/android/wm/shell/common/SystemWindows.java b/wmshell/src/com/android/wm/shell/common/SystemWindows.java index ef6dbd55f5..ef33b3830e 100644 --- a/wmshell/src/com/android/wm/shell/common/SystemWindows.java +++ b/wmshell/src/com/android/wm/shell/common/SystemWindows.java @@ -27,6 +27,7 @@ import android.os.Bundle; import android.os.IBinder; import android.os.ParcelFileDescriptor; import android.os.RemoteException; +import android.util.MergedConfiguration; import android.util.Slog; import android.util.SparseArray; import android.view.Display; @@ -41,12 +42,14 @@ import android.view.InsetsState; import android.view.ScrollCaptureResponse; import android.view.SurfaceControl; import android.view.SurfaceControlViewHost; +import android.view.SurfaceSession; import android.view.View; import android.view.ViewGroup; import android.view.WindowManager; -import android.view.WindowRelayoutResult; import android.view.WindowlessWindowManager; import android.view.inputmethod.ImeTracker; +import android.window.ActivityWindowInfo; +import android.window.ClientWindowFrames; import android.window.InputTransferToken; import com.android.internal.os.IResultReceiver; @@ -308,7 +311,7 @@ public class SystemWindows { @Override protected SurfaceControl getParentSurface(IWindow window, WindowManager.LayoutParams attrs) { - SurfaceControl leash = new SurfaceControl.Builder() + SurfaceControl leash = new SurfaceControl.Builder(new SurfaceSession()) .setContainerLayer() .setName("SystemWindowLeash") .setHidden(false) @@ -343,24 +346,26 @@ public class SystemWindows { ContainerWindow() {} @Override - public void resized(WindowRelayoutResult layout, boolean reportDraw, boolean forceLayout, - int displayId, boolean syncWithBuffers, boolean dragResizing) {} + public void resized(ClientWindowFrames frames, boolean reportDraw, + MergedConfiguration newMergedConfiguration, InsetsState insetsState, + boolean forceLayout, boolean alwaysConsumeSystemBars, int displayId, int syncSeqId, + boolean dragResizing, @Nullable ActivityWindowInfo activityWindowInfo) {} @Override public void insetsControlChanged(InsetsState insetsState, InsetsSourceControl.Array activeControls) {} @Override - public void showInsets(int types, @Nullable ImeTracker.Token statsToken) {} + public void showInsets(int types, boolean fromIme, @Nullable ImeTracker.Token statsToken) {} @Override - public void hideInsets(int types, @Nullable ImeTracker.Token statsToken) {} + public void hideInsets(int types, boolean fromIme, @Nullable ImeTracker.Token statsToken) {} @Override public void moved(int newX, int newY) {} @Override - public void dispatchAppVisibility(boolean visible, int seqId) {} + public void dispatchAppVisibility(boolean visible) {} @Override public void dispatchGetNewSurface() {} diff --git a/wmshell/src/com/android/wm/shell/common/TabletopModeController.java b/wmshell/src/com/android/wm/shell/common/TabletopModeController.java index 43f9cb9843..43c92cab6a 100644 --- a/wmshell/src/com/android/wm/shell/common/TabletopModeController.java +++ b/wmshell/src/com/android/wm/shell/common/TabletopModeController.java @@ -32,7 +32,7 @@ import android.util.ArraySet; import android.view.Surface; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.shared.annotations.ShellMainThread; import com.android.wm.shell.sysui.ShellInit; diff --git a/wmshell/src/com/android/wm/shell/common/TaskStackListenerCallback.java b/wmshell/src/com/android/wm/shell/common/TaskStackListenerCallback.java index de5c834f31..9abf0f6781 100644 --- a/wmshell/src/com/android/wm/shell/common/TaskStackListenerCallback.java +++ b/wmshell/src/com/android/wm/shell/common/TaskStackListenerCallback.java @@ -33,9 +33,6 @@ public interface TaskStackListenerCallback { default void onRecentTaskListFrozenChanged(boolean frozen) { } - /** A task is removed from recents as a result of another task being added to recent tasks. */ - default void onRecentTaskRemovedForAddTask(int taskId) { } - @BinderThread default void onTaskStackChangedBackground() { } diff --git a/wmshell/src/com/android/wm/shell/common/TaskStackListenerImpl.java b/wmshell/src/com/android/wm/shell/common/TaskStackListenerImpl.java index 4e1dec60d9..d8859bac47 100644 --- a/wmshell/src/com/android/wm/shell/common/TaskStackListenerImpl.java +++ b/wmshell/src/com/android/wm/shell/common/TaskStackListenerImpl.java @@ -59,7 +59,6 @@ public class TaskStackListenerImpl extends TaskStackListener implements Handler. private static final int ON_TASK_LIST_FROZEN_UNFROZEN = 18; private static final int ON_TASK_DESCRIPTION_CHANGED = 19; private static final int ON_ACTIVITY_ROTATION = 20; - private static final int ON_RECENT_TASK_REMOVED_FOR_ADD_TASK = 21; /** * List of {@link TaskStackListenerCallback} registered from {@link #addListener}. @@ -132,11 +131,6 @@ public class TaskStackListenerImpl extends TaskStackListener implements Handler. 0 /* unused */).sendToTarget(); } - @Override - public void onRecentTaskRemovedForAddTask(int taskId) { - mMainHandler.obtainMessage(ON_RECENT_TASK_REMOVED_FOR_ADD_TASK, taskId).sendToTarget(); - } - @Override public void onTaskStackChanged() { // Call the task changed callback for the non-ui thread listeners first. Copy to a set @@ -414,13 +408,6 @@ public class TaskStackListenerImpl extends TaskStackListener implements Handler. } break; } - case ON_RECENT_TASK_REMOVED_FOR_ADD_TASK: { - final int taskId = (int) msg.obj; - for (int i = mTaskStackListeners.size() - 1; i >= 0; i--) { - mTaskStackListeners.get(i).onRecentTaskRemovedForAddTask(taskId); - } - break; - } case ON_TASK_DESCRIPTION_CHANGED: { final ActivityManager.RunningTaskInfo info = (ActivityManager.RunningTaskInfo) msg.obj; diff --git a/wmshell/src/com/android/wm/shell/common/pip/IPip.aidl b/wmshell/src/com/android/wm/shell/common/pip/IPip.aidl index 1444a626fb..e77987963b 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/IPip.aidl +++ b/wmshell/src/com/android/wm/shell/common/pip/IPip.aidl @@ -16,7 +16,6 @@ package com.android.wm.shell.common.pip; -import android.app.ActivityManager.RunningTaskInfo; import android.app.PictureInPictureParams; import android.view.SurfaceControl; import android.content.ComponentName; @@ -42,8 +41,9 @@ interface IPip { bounds * @return destination bounds the PiP window should land into */ - Rect startSwipePipToHome(in RunningTaskInfo taskInfo, int launcherRotation, - in Rect hotseatKeepClearArea) = 1; + Rect startSwipePipToHome(in ComponentName componentName, in ActivityInfo activityInfo, + in PictureInPictureParams pictureInPictureParams, + int launcherRotation, in Rect hotseatKeepClearArea) = 1; /** * Notifies the swiping Activity to PiP onto home transition is finished diff --git a/wmshell/src/com/android/wm/shell/common/pip/LegacySizeSpecSource.kt b/wmshell/src/com/android/wm/shell/common/pip/LegacySizeSpecSource.kt index b71965e664..a8743fbed5 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/LegacySizeSpecSource.kt +++ b/wmshell/src/com/android/wm/shell/common/pip/LegacySizeSpecSource.kt @@ -23,9 +23,9 @@ import android.util.Size import com.android.wm.shell.R class LegacySizeSpecSource( - private var context: Context, + private val context: Context, private val pipDisplayLayoutState: PipDisplayLayoutState -) : SizeSpecSource, PipDisplayLayoutState.DisplayIdListener { +) : SizeSpecSource { private var mDefaultMinSize = 0 /** The absolute minimum an overridden size's edge can be */ @@ -39,7 +39,6 @@ class LegacySizeSpecSource( private var mMinAspectRatioForMinSize = 0f init { - pipDisplayLayoutState.addDisplayIdListener(this) reloadResources() } @@ -59,11 +58,6 @@ class LegacySizeSpecSource( mMinAspectRatioForMinSize = 1f / mMaxAspectRatioForMinSize } - override fun onDisplayIdChanged(newContext: Context) { - context = newContext - reloadResources() - } - override fun onConfigurationChanged() { reloadResources() } diff --git a/wmshell/src/com/android/wm/shell/common/pip/PhonePipKeepClearAlgorithm.java b/wmshell/src/com/android/wm/shell/common/pip/PhonePipKeepClearAlgorithm.java index a04f315f22..133242d158 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PhonePipKeepClearAlgorithm.java +++ b/wmshell/src/com/android/wm/shell/common/pip/PhonePipKeepClearAlgorithm.java @@ -23,8 +23,6 @@ import android.os.SystemProperties; import android.util.ArraySet; import android.view.Gravity; -import androidx.annotation.NonNull; - import com.android.wm.shell.R; import java.util.Set; @@ -32,8 +30,7 @@ import java.util.Set; /** * Calculates the adjusted position that does not occlude keep clear areas. */ -public class PhonePipKeepClearAlgorithm implements PipKeepClearAlgorithmInterface, - PipDisplayLayoutState.DisplayIdListener { +public class PhonePipKeepClearAlgorithm implements PipKeepClearAlgorithmInterface { private boolean mKeepClearAreaGravityEnabled = SystemProperties.getBoolean( @@ -42,10 +39,8 @@ public class PhonePipKeepClearAlgorithm implements PipKeepClearAlgorithmInterfac protected int mKeepClearAreasPadding; private int mImeOffset; - public PhonePipKeepClearAlgorithm(Context context, - PipDisplayLayoutState pipDisplayLayoutState) { + public PhonePipKeepClearAlgorithm(Context context) { reloadResources(context); - pipDisplayLayoutState.addDisplayIdListener(this); } private void reloadResources(Context context) { @@ -54,11 +49,6 @@ public class PhonePipKeepClearAlgorithm implements PipKeepClearAlgorithmInterfac mImeOffset = res.getDimensionPixelSize(R.dimen.pip_ime_offset); } - @Override - public void onDisplayIdChanged(@NonNull Context context) { - reloadResources(context); - } - /** * Adjusts the current position of PiP to avoid occluding keep clear areas. This will push PiP * towards the closest edge and then apply calculations to avoid occluding keep clear areas. @@ -67,12 +57,6 @@ public class PhonePipKeepClearAlgorithm implements PipKeepClearAlgorithmInterfac Rect startingBounds = pipBoundsState.getBounds().isEmpty() ? pipBoundsAlgorithm.getEntryDestinationBoundsIgnoringKeepClearAreas() : pipBoundsState.getBounds(); - // If IME is not showing and restore bounds (pre-IME bounds) is not empty, we should set PiP - // bounds to the restore bounds. - if (!pipBoundsState.isImeShowing() && !pipBoundsState.getRestoreBounds().isEmpty()) { - startingBounds.set(pipBoundsState.getRestoreBounds()); - pipBoundsState.clearRestoreBounds(); - } Rect insets = new Rect(); pipBoundsAlgorithm.getInsetBounds(insets); if (pipBoundsState.isImeShowing()) { diff --git a/wmshell/src/com/android/wm/shell/common/pip/PhoneSizeSpecSource.kt b/wmshell/src/com/android/wm/shell/common/pip/PhoneSizeSpecSource.kt index 3eca38c1f7..7eb0f267b3 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PhoneSizeSpecSource.kt +++ b/wmshell/src/com/android/wm/shell/common/pip/PhoneSizeSpecSource.kt @@ -23,9 +23,9 @@ import com.android.wm.shell.R import java.io.PrintWriter class PhoneSizeSpecSource( - private var context: Context, + private val context: Context, private val pipDisplayLayoutState: PipDisplayLayoutState -) : SizeSpecSource, PipDisplayLayoutState.DisplayIdListener { +) : SizeSpecSource { private var DEFAULT_OPTIMIZED_ASPECT_RATIO = 9f / 16 private var mDefaultMinSize = 0 @@ -87,7 +87,6 @@ class PhoneSizeSpecSource( private var mOptimizedAspectRatio = 0f init { - pipDisplayLayoutState.addDisplayIdListener(this) reloadResources() } @@ -120,11 +119,6 @@ class PhoneSizeSpecSource( } } - override fun onDisplayIdChanged(newContext: Context) { - context = newContext - reloadResources() - } - override fun onConfigurationChanged() { reloadResources() } diff --git a/wmshell/src/com/android/wm/shell/common/pip/PipAppOpsListener.kt b/wmshell/src/com/android/wm/shell/common/pip/PipAppOpsListener.kt index 2c4df0c0ca..4abb35c2a4 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PipAppOpsListener.kt +++ b/wmshell/src/com/android/wm/shell/common/pip/PipAppOpsListener.kt @@ -16,25 +16,21 @@ package com.android.wm.shell.common.pip import android.app.AppOpsManager -import android.content.ComponentName import android.content.Context import android.content.pm.PackageManager -import android.util.Pair -import com.android.internal.annotations.VisibleForTesting import com.android.wm.shell.common.ShellExecutor class PipAppOpsListener( private val mContext: Context, + private val mCallback: Callback, private val mMainExecutor: ShellExecutor ) { private val mAppOpsManager: AppOpsManager = checkNotNull( mContext.getSystemService(Context.APP_OPS_SERVICE) as AppOpsManager) - private var mTopPipActivityInfoSupplier: (Context) -> Pair<ComponentName?, Int> = - PipUtils::getTopPipActivity private val mAppOpsChangedListener = AppOpsManager.OnOpChangedListener { _, packageName -> try { // Dismiss the PiP once the user disables the app ops setting for that package - val topPipActivityInfo = mTopPipActivityInfoSupplier.invoke(mContext) + val topPipActivityInfo = PipUtils.getTopPipActivity(mContext) val componentName = topPipActivityInfo.first ?: return@OnOpChangedListener val userId = topPipActivityInfo.second val appInfo = mContext.packageManager @@ -45,9 +41,7 @@ class PipAppOpsListener( packageName ) != AppOpsManager.MODE_ALLOWED ) { - mCallback?.let { - mMainExecutor.execute { it.dismissPip() } - } + mMainExecutor.execute { mCallback.dismissPip() } } } catch (e: PackageManager.NameNotFoundException) { // Unregister the listener if the package can't be found @@ -55,12 +49,6 @@ class PipAppOpsListener( } } - private var mCallback: Callback? = null - - fun setCallback(callback: Callback) { - mCallback = callback - } - fun onActivityPinned(packageName: String) { // Register for changes to the app ops setting for this package while it is in PiP registerAppOpsListener(packageName) @@ -87,9 +75,4 @@ class PipAppOpsListener( /** Dismisses the PIP window. */ fun dismissPip() } - - @VisibleForTesting - fun setTopPipActivityInfoSupplier(supplier: (Context) -> Pair<ComponentName?, Int>) { - mTopPipActivityInfoSupplier = supplier - } } \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/common/pip/PipBoundsAlgorithm.java b/wmshell/src/com/android/wm/shell/common/pip/PipBoundsAlgorithm.java index 337e357a7f..58007b5035 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PipBoundsAlgorithm.java +++ b/wmshell/src/com/android/wm/shell/common/pip/PipBoundsAlgorithm.java @@ -24,13 +24,11 @@ import android.content.pm.ActivityInfo; import android.content.res.Resources; import android.graphics.Rect; import android.util.DisplayMetrics; -import android.util.Rational; import android.util.Size; import android.view.Gravity; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; -import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.protolog.ShellProtoLogGroup; import java.io.PrintWriter; @@ -38,11 +36,14 @@ import java.io.PrintWriter; /** * Calculates the default, normal, entry, inset and movement bounds of the PIP. */ -public class PipBoundsAlgorithm implements PipDisplayLayoutState.DisplayIdListener { +public class PipBoundsAlgorithm { private static final String TAG = PipBoundsAlgorithm.class.getSimpleName(); private static final float INVALID_SNAP_FRACTION = -1f; + // The same value (with the same name) is used in Launcher. + private static final float PIP_ASPECT_RATIO_MISMATCH_THRESHOLD = 0.01f; + @NonNull private final PipBoundsState mPipBoundsState; @NonNull protected final PipDisplayLayoutState mPipDisplayLayoutState; @NonNull protected final SizeSpecSource mSizeSpecSource; @@ -63,7 +64,6 @@ public class PipBoundsAlgorithm implements PipDisplayLayoutState.DisplayIdListen mSnapAlgorithm = pipSnapAlgorithm; mPipKeepClearAlgorithm = pipKeepClearAlgorithm; mPipDisplayLayoutState = pipDisplayLayoutState; - mPipDisplayLayoutState.addDisplayIdListener(this); mSizeSpecSource = sizeSpecSource; reloadResources(context); // Initialize the aspect ratio to the default aspect ratio. Don't do this in reload @@ -100,11 +100,6 @@ public class PipBoundsAlgorithm implements PipDisplayLayoutState.DisplayIdListen reloadResources(context); } - @Override - public void onDisplayIdChanged(@NonNull Context context) { - reloadResources(context); - } - /** Returns the normal bounds (i.e. the default entry bounds). */ public Rect getNormalBounds() { // The normal bounds are the default bounds adjusted to the current aspect ratio. @@ -228,11 +223,9 @@ public class PipBoundsAlgorithm implements PipDisplayLayoutState.DisplayIdListen + " than destination(%s)", sourceRectHint, destinationBounds); return false; } - // We use the aspect ratio of source rect hint to check against destination bounds - // here to avoid upscaling error. - final Rational srcAspectRatio = new Rational( - sourceRectHint.width(), sourceRectHint.height()); - if (!PictureInPictureParams.isSameAspectRatio(destinationBounds, srcAspectRatio)) { + final float reportedRatio = destinationBounds.width() / (float) destinationBounds.height(); + final float inferredRatio = sourceRectHint.width() / (float) sourceRectHint.height(); + if (Math.abs(reportedRatio - inferredRatio) > PIP_ASPECT_RATIO_MISMATCH_THRESHOLD) { ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "isSourceRectHintValidForEnterPip=false, hint(%s) does not match" + " destination(%s) aspect ratio", sourceRectHint, destinationBounds); @@ -344,14 +337,6 @@ public class PipBoundsAlgorithm implements PipDisplayLayoutState.DisplayIdListen outRect.set(mPipDisplayLayoutState.getInsetBounds()); } - /** - * Populates the bounds on the screen that the PIP can be visible on a given - * {@param displayLayout}. - */ - public void getInsetBounds(Rect outRect, DisplayLayout displayLayout) { - outRect.set(mPipDisplayLayoutState.getInsetBounds(displayLayout)); - } - private int getOverrideMinEdgeSize() { return mSizeSpecSource.getOverrideMinEdgeSize(); } @@ -361,18 +346,16 @@ public class PipBoundsAlgorithm implements PipDisplayLayoutState.DisplayIdListen * controller. */ public Rect getMovementBounds(Rect stackBounds) { - return getMovementBounds(stackBounds, true /* adjustForIme */, - mPipDisplayLayoutState.getDisplayLayout() /* displayLayout */); + return getMovementBounds(stackBounds, true /* adjustForIme */); } /** - * @return the movement bounds for the given stackBounds on a given displayLayout and the - * current state of the controller. + * @return the movement bounds for the given stackBounds and the current state of the + * controller. */ - public Rect getMovementBounds(Rect stackBounds, boolean adjustForIme, - DisplayLayout displayLayout) { + public Rect getMovementBounds(Rect stackBounds, boolean adjustForIme) { final Rect movementBounds = new Rect(); - getInsetBounds(movementBounds, displayLayout); + getInsetBounds(movementBounds); // Apply the movement bounds adjustments based on the current state. getMovementBounds(stackBounds, movementBounds, movementBounds, @@ -477,35 +460,6 @@ public class PipBoundsAlgorithm implements PipDisplayLayoutState.DisplayIdListen return adjustedNormalBounds; } - /** - * Snaps PiP bounds to its movement bounds. - */ - public void snapToMovementBoundsEdge(Rect bounds) { - snapToMovementBoundsEdge(bounds, mPipDisplayLayoutState.getDisplayLayout()); - } - - /** - * Snaps PiP bounds to its movement bounds on a given {@param displayLayout}. - */ - public void snapToMovementBoundsEdge(Rect bounds, DisplayLayout displayLayout) { - // Get the movement bounds of the display - final Rect movementBounds = getMovementBounds(bounds, true /* adjustForIme */, - displayLayout); - final int leftEdge = bounds.left; - - final int fromLeft = Math.abs(leftEdge - movementBounds.left); - final int fromRight = Math.abs(movementBounds.right - leftEdge); - - // The PIP will be snapped to either the right or left edge, so calculate which one - // is closest to the current position. - final int newLeft = fromLeft < fromRight - ? movementBounds.left : movementBounds.right; - // Make sure that the PiP window vertically stays within the movement bounds - final int newTop = Math.max(movementBounds.top, - Math.min(bounds.top, movementBounds.bottom)); - - bounds.offsetTo(newLeft, newTop); - } /** * Dumps internal states. */ diff --git a/wmshell/src/com/android/wm/shell/common/pip/PipBoundsState.java b/wmshell/src/com/android/wm/shell/common/pip/PipBoundsState.java index 0bea4da0c1..7ceaaea396 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PipBoundsState.java +++ b/wmshell/src/com/android/wm/shell/common/pip/PipBoundsState.java @@ -30,10 +30,9 @@ import android.graphics.Rect; import android.os.RemoteException; import android.util.ArraySet; import android.util.Size; -import android.util.SparseArray; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.function.TriConsumer; import com.android.wm.shell.R; import com.android.wm.shell.common.DisplayLayout; @@ -43,7 +42,9 @@ import java.io.PrintWriter; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Objects; import java.util.Set; import java.util.function.Consumer; @@ -51,7 +52,7 @@ import java.util.function.Consumer; /** * Singleton source of truth for the current state of PIP bounds. */ -public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { +public class PipBoundsState { public static final int STASH_TYPE_NONE = 0; public static final int STASH_TYPE_LEFT = 1; public static final int STASH_TYPE_RIGHT = 2; @@ -68,37 +69,26 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { @Retention(RetentionPolicy.SOURCE) public @interface StashType {} - public static final int NAMED_KCA_LAUNCHER_SHELF = 0; - public static final int NAMED_KCA_TABLETOP_MODE = 1; - - @IntDef(prefix = { "NAMED_KCA_" }, value = { - NAMED_KCA_LAUNCHER_SHELF, - NAMED_KCA_TABLETOP_MODE - }) - @Retention(RetentionPolicy.SOURCE) - public @interface NamedKca {} - private static final String TAG = PipBoundsState.class.getSimpleName(); - @NonNull private final Rect mBounds = new Rect(); - @NonNull private final Rect mMovementBounds = new Rect(); - @NonNull private final Rect mNormalBounds = new Rect(); - @NonNull private final Rect mExpandedBounds = new Rect(); - @NonNull private final Rect mNormalMovementBounds = new Rect(); - @NonNull private final Rect mExpandedMovementBounds = new Rect(); - @NonNull private final Rect mRestoreBounds = new Rect(); - @NonNull private final PipDisplayLayoutState mPipDisplayLayoutState; + private final @NonNull Rect mBounds = new Rect(); + private final @NonNull Rect mMovementBounds = new Rect(); + private final @NonNull Rect mNormalBounds = new Rect(); + private final @NonNull Rect mExpandedBounds = new Rect(); + private final @NonNull Rect mNormalMovementBounds = new Rect(); + private final @NonNull Rect mExpandedMovementBounds = new Rect(); + private final @NonNull PipDisplayLayoutState mPipDisplayLayoutState; private final Point mMaxSize = new Point(); private final Point mMinSize = new Point(); - @NonNull private Context mContext; + private final @NonNull Context mContext; private float mAspectRatio; private int mStashedState = STASH_TYPE_NONE; private int mStashOffset; - @Nullable private PipReentryState mPipReentryState; + private @Nullable PipReentryState mPipReentryState; private final LauncherState mLauncherState = new LauncherState(); - @NonNull private final SizeSpecSource mSizeSpecSource; - @Nullable private ComponentName mLastPipComponentName; - @NonNull private final MotionBoundsState mMotionBoundsState = new MotionBoundsState(); + private final @NonNull SizeSpecSource mSizeSpecSource; + private @Nullable ComponentName mLastPipComponentName; + private final @NonNull MotionBoundsState mMotionBoundsState = new MotionBoundsState(); private boolean mIsImeShowing; private int mImeHeight; private boolean mIsShelfShowing; @@ -130,21 +120,12 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { * as unrestricted keep clear area. Values in this map would be appended to * {@link #getUnrestrictedKeepClearAreas()} and this is meant for internal usage only. */ - private final SparseArray<Rect> mNamedUnrestrictedKeepClearAreas = new SparseArray<>(); + private final Map<String, Rect> mNamedUnrestrictedKeepClearAreas = new HashMap<>(); - @Nullable private Runnable mOnMinimalSizeChangeCallback; - @Nullable private TriConsumer<Boolean, Integer, Boolean> mOnShelfVisibilityChangeCallback; - private final List<Consumer<Rect>> mOnPipExclusionBoundsChangeCallbacks = new ArrayList<>(); - private final List<Consumer<Float>> mOnAspectRatioChangedCallbacks = new ArrayList<>(); - - /** - * This is used to set the launcher shelf height ahead of non-auto-enter-pip animation, - * to avoid the race condition. See also {@link #NAMED_KCA_LAUNCHER_SHELF}. - */ - public final Rect mCachedLauncherShelfHeightKeepClearArea = new Rect(); - - private final List<OnPipComponentChangedListener> mOnPipComponentChangedListeners = - new ArrayList<>(); + private @Nullable Runnable mOnMinimalSizeChangeCallback; + private @Nullable TriConsumer<Boolean, Integer, Boolean> mOnShelfVisibilityChangeCallback; + private List<Consumer<Rect>> mOnPipExclusionBoundsChangeCallbacks = new ArrayList<>(); + private List<Consumer<Float>> mOnAspectRatioChangedCallbacks = new ArrayList<>(); // the size of the current bounds relative to the max size spec private float mBoundsScale; @@ -155,12 +136,13 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { reloadResources(); mSizeSpecSource = sizeSpecSource; mPipDisplayLayoutState = pipDisplayLayoutState; - mPipDisplayLayoutState.addDisplayIdListener(this); // Update the relative proportion of the bounds compared to max possible size. Max size // spec takes the aspect ratio of the bounds into account, so both width and height // scale by the same factor. - addPipExclusionBoundsChangeCallback((bounds) -> updateBoundsScale()); + addPipExclusionBoundsChangeCallback((bounds) -> { + updateBoundsScale(); + }); } /** Reloads the resources. */ @@ -171,12 +153,6 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { mSizeSpecSource.onConfigurationChanged(); } - @Override - public void onDisplayIdChanged(@NonNull Context context) { - mContext = context; - reloadResources(); - } - /** Update the bounds scale percentage value. */ public void updateBoundsScale() { mBoundsScale = Math.min((float) mBounds.width() / mMaxSize.x, 1.0f); @@ -349,14 +325,11 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { /** Set the last {@link ComponentName} to enter PIP mode. */ public void setLastPipComponentName(@Nullable ComponentName lastPipComponentName) { final boolean changed = !Objects.equals(mLastPipComponentName, lastPipComponentName); - if (!changed) return; - clearReentryState(); - setHasUserResizedPip(false); - setHasUserMovedPip(false); - final ComponentName oldComponentName = mLastPipComponentName; mLastPipComponentName = lastPipComponentName; - for (OnPipComponentChangedListener listener : mOnPipComponentChangedListeners) { - listener.onPipComponentChanged(oldComponentName, mLastPipComponentName); + if (changed) { + clearReentryState(); + setHasUserResizedPip(false); + setHasUserMovedPip(false); } } @@ -388,16 +361,6 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { /** Sets the preferred size of PIP as specified by the activity in PIP mode. */ public void setOverrideMinSize(@Nullable Size overrideMinSize) { - if (overrideMinSize != null) { - final Size defaultSize = mSizeSpecSource.getDefaultSize(getAspectRatio()); - if (overrideMinSize.getWidth() > defaultSize.getWidth() - || overrideMinSize.getHeight() > defaultSize.getHeight()) { - ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "Ignore override min size(%s): larger than default size (%s)", - overrideMinSize, defaultSize); - return; - } - } final boolean changed = !Objects.equals(overrideMinSize, getOverrideMinSize()); mSizeSpecSource.setOverrideMinSize(overrideMinSize); if (changed && mOnMinimalSizeChangeCallback != null) { @@ -426,10 +389,6 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { public void setImeVisibility(boolean imeShowing, int imeHeight) { mIsImeShowing = imeShowing; mImeHeight = imeHeight; - // If IME is showing, save the current PiP bounds in case we need to restore it later. - if (mIsImeShowing) { - mRestoreBounds.set(getBounds()); - } } /** Returns whether the IME is currently showing. */ @@ -437,16 +396,6 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { return mIsImeShowing; } - /** Returns the bounds to restore PiP to (bounds before IME was expanded). */ - public Rect getRestoreBounds() { - return mRestoreBounds; - } - - /** Sets mRestoreBounds to (0,0,0,0). */ - public void clearRestoreBounds() { - mRestoreBounds.setEmpty(); - } - /** Returns the IME height. */ public int getImeHeight() { return mImeHeight; @@ -481,32 +430,17 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { mUnrestrictedKeepClearAreas.addAll(unrestrictedAreas); } - /** Set a named unrestricted keep clear area. */ - public void setNamedUnrestrictedKeepClearArea( - @NamedKca int tag, @Nullable Rect unrestrictedArea) { - if (unrestrictedArea == null) { - mNamedUnrestrictedKeepClearAreas.remove(tag); - } else { - mNamedUnrestrictedKeepClearAreas.put(tag, unrestrictedArea); - if (tag == NAMED_KCA_LAUNCHER_SHELF) { - mCachedLauncherShelfHeightKeepClearArea.set(unrestrictedArea); - } - } + /** Add a named unrestricted keep clear area. */ + public void addNamedUnrestrictedKeepClearArea(@NonNull String name, Rect unrestrictedArea) { + mNamedUnrestrictedKeepClearAreas.put(name, unrestrictedArea); } - /** - * Forcefully set the keep-clear-area for launcher shelf height if applicable. - * This is used for entering PiP in button navigation mode to make sure the destination bounds - * calculation includes the shelf height, to avoid race conditions that such callback is sent - * from Launcher after the entering animation is started. - */ - public void mayUseCachedLauncherShelfHeight() { - if (!mCachedLauncherShelfHeightKeepClearArea.isEmpty()) { - setNamedUnrestrictedKeepClearArea( - NAMED_KCA_LAUNCHER_SHELF, mCachedLauncherShelfHeightKeepClearArea); - } + /** Remove a named unrestricted keep clear area. */ + public void removeNamedUnrestrictedKeepClearArea(@NonNull String name) { + mNamedUnrestrictedKeepClearAreas.remove(name); } + /** * @return restricted keep clear areas. */ @@ -520,12 +454,9 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { */ @NonNull public Set<Rect> getUnrestrictedKeepClearAreas() { - if (mNamedUnrestrictedKeepClearAreas.size() == 0) return mUnrestrictedKeepClearAreas; + if (mNamedUnrestrictedKeepClearAreas.isEmpty()) return mUnrestrictedKeepClearAreas; final Set<Rect> unrestrictedAreas = new ArraySet<>(mUnrestrictedKeepClearAreas); - for (int i = 0; i < mNamedUnrestrictedKeepClearAreas.size(); i++) { - final int key = mNamedUnrestrictedKeepClearAreas.keyAt(i); - unrestrictedAreas.add(mNamedUnrestrictedKeepClearAreas.get(key)); - } + unrestrictedAreas.addAll(mNamedUnrestrictedKeepClearAreas.values()); return unrestrictedAreas; } @@ -557,10 +488,6 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { /** Set whether the user has resized the PIP. */ public void setHasUserResizedPip(boolean hasUserResizedPip) { mHasUserResizedPip = hasUserResizedPip; - // If user resized PiP while IME is showing, clear the pre-IME restore bounds. - if (hasUserResizedPip && isImeShowing()) { - clearRestoreBounds(); - } } /** Returns whether the user has moved the PIP. */ @@ -571,10 +498,6 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { /** Set whether the user has moved the PIP. */ public void setHasUserMovedPip(boolean hasUserMovedPip) { mHasUserMovedPip = hasUserMovedPip; - // If user moved PiP while IME is showing, clear the pre-IME restore bounds. - if (hasUserMovedPip && isImeShowing()) { - clearRestoreBounds(); - } } /** @@ -627,21 +550,6 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { } } - /** Adds callback to listen on component change. */ - public void addOnPipComponentChangedListener(@NonNull OnPipComponentChangedListener listener) { - if (!mOnPipComponentChangedListeners.contains(listener)) { - mOnPipComponentChangedListeners.add(listener); - } - } - - /** Removes callback to listen on component change. */ - public void removeOnPipComponentChangedListener( - @NonNull OnPipComponentChangedListener listener) { - if (mOnPipComponentChangedListeners.contains(listener)) { - mOnPipComponentChangedListeners.remove(listener); - } - } - public LauncherState getLauncherState() { return mLauncherState; } @@ -721,7 +629,7 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { * Represents the state of pip to potentially restore upon reentry. */ @VisibleForTesting - static final class PipReentryState { + public static final class PipReentryState { private static final String TAG = PipReentryState.class.getSimpleName(); private final float mSnapFraction; @@ -748,22 +656,6 @@ public class PipBoundsState implements PipDisplayLayoutState.DisplayIdListener { } } - /** - * Listener interface for PiP component change, i.e. the app in pip mode changes - * TODO: Move this out of PipBoundsState once pip1 is deprecated. - */ - public interface OnPipComponentChangedListener { - /** - * Callback when the component in pip mode changes. - * @param oldPipComponent previous component in pip mode, - * {@code null} if this is the very first time PiP appears. - * @param newPipComponent new component that enters pip mode. - */ - void onPipComponentChanged( - @Nullable ComponentName oldPipComponent, - @NonNull ComponentName newPipComponent); - } - /** Dumps internal state. */ public void dump(PrintWriter pw, String prefix) { final String innerPrefix = prefix + " "; diff --git a/wmshell/src/com/android/wm/shell/common/pip/PipDisplayLayoutState.java b/wmshell/src/com/android/wm/shell/common/pip/PipDisplayLayoutState.java index 45f28c70c1..d5e47187da 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PipDisplayLayoutState.java +++ b/wmshell/src/com/android/wm/shell/common/pip/PipDisplayLayoutState.java @@ -18,11 +18,8 @@ package com.android.wm.shell.common.pip; import static com.android.wm.shell.common.pip.PipUtils.dpToPx; -import static java.lang.Math.max; - import android.content.Context; import android.content.res.Resources; -import android.graphics.Insets; import android.graphics.Point; import android.graphics.Rect; import android.util.Size; @@ -31,14 +28,10 @@ import android.view.Surface; import androidx.annotation.NonNull; import com.android.wm.shell.R; -import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.dagger.WMSingleton; -import com.android.wm.shell.sysui.ShellInit; import java.io.PrintWriter; -import java.util.ArrayList; -import java.util.List; import javax.inject.Inject; @@ -49,27 +42,16 @@ import javax.inject.Inject; public class PipDisplayLayoutState { private static final String TAG = PipDisplayLayoutState.class.getSimpleName(); - private final Context mContext; - private Context mUiContext; + private Context mContext; private int mDisplayId; @NonNull private DisplayLayout mDisplayLayout; - @NonNull private final DisplayController mDisplayController; + private Point mScreenEdgeInsets = null; - private Insets mNavigationBarsInsets = Insets.NONE; - private final List<DisplayIdListener> mDisplayIdListeners = new ArrayList<>(); @Inject - public PipDisplayLayoutState(Context context, @NonNull DisplayController displayController, - ShellInit shellInit) { + public PipDisplayLayoutState(Context context) { mContext = context; - mUiContext = context; mDisplayLayout = new DisplayLayout(); - mDisplayController = displayController; - shellInit.addInitCallback(this::onInit, this); - } - - /** Called when Shell is done initializing. */ - public void onInit() { reloadResources(); } @@ -79,7 +61,7 @@ public class PipDisplayLayoutState { } private void reloadResources() { - Resources res = mUiContext.getResources(); + Resources res = mContext.getResources(); final String screenEdgeInsetsDpString = res.getString( R.string.config_defaultPictureInPictureScreenEdgeInsets); @@ -99,23 +81,12 @@ public class PipDisplayLayoutState { * Returns the inset bounds the PIP window can be visible in. */ public Rect getInsetBounds() { - return getInsetBounds(getDisplayLayout()); - } - - /** - * Returns the inset bounds the PIP window can be visible on a given {@param displayLayout} - */ - public Rect getInsetBounds(DisplayLayout displayLayout) { - final Rect insetBounds = new Rect(); - final Rect stableInsets = displayLayout.stableInsets(); - final Point screenEdgeInsets = getScreenEdgeInsets(); - final int left = max(stableInsets.left, mNavigationBarsInsets.left) + screenEdgeInsets.x; - final int top = max(stableInsets.top, mNavigationBarsInsets.top) + screenEdgeInsets.y; - final int right = displayLayout.width() - - max(stableInsets.right, mNavigationBarsInsets.right) - screenEdgeInsets.x; - final int bottom = displayLayout.height() - - max(stableInsets.bottom, mNavigationBarsInsets.bottom) - screenEdgeInsets.y; - insetBounds.set(left, top, right, bottom); + Rect insetBounds = new Rect(); + Rect insets = getDisplayLayout().stableInsets(); + insetBounds.set(insets.left + getScreenEdgeInsets().x, + insets.top + getScreenEdgeInsets().y, + getDisplayLayout().width() - insets.right - getScreenEdgeInsets().x, + getDisplayLayout().height() - insets.bottom - getScreenEdgeInsets().y); return insetBounds; } @@ -141,7 +112,7 @@ public class PipDisplayLayoutState { * @param targetRotation */ public void rotateTo(@Surface.Rotation int targetRotation) { - mDisplayLayout.rotateTo(mUiContext.getResources(), targetRotation); + mDisplayLayout.rotateTo(mContext.getResources(), targetRotation); } /** Returns the current display rotation of this layout state. */ @@ -157,43 +128,7 @@ public class PipDisplayLayoutState { /** Set the current display id for the associated display layout. */ public void setDisplayId(int displayId) { - if (mDisplayId == displayId) { - return; - } - mDisplayId = displayId; - updateUiContext(); - } - - private void updateUiContext() { - final Context newContext = mDisplayController.getDisplayContext(mDisplayId); - if (newContext == null) { - return; - } - - mUiContext = newContext; - reloadResources(); - for (DisplayIdListener listener : mDisplayIdListeners) { - listener.onDisplayIdChanged(mUiContext); - } - } - - /** Returns the context associated with the current display. */ - public Context getCurrentUiContext() { - return mUiContext; - } - - /** Registers a DisplayIdListener. */ - public void addDisplayIdListener(DisplayIdListener listener) { - if (mDisplayIdListeners.contains(listener)) { - return; - } - mDisplayIdListeners.add(listener); - } - - /** Set the navigationBars side and widthOrHeight. */ - public void setNavigationBarsInsets(Insets insets) { - mNavigationBarsInsets = insets; } /** Dumps internal state. */ @@ -203,15 +138,5 @@ public class PipDisplayLayoutState { pw.println(innerPrefix + "mDisplayId=" + mDisplayId); pw.println(innerPrefix + "getDisplayBounds=" + getDisplayBounds()); pw.println(innerPrefix + "mScreenEdgeInsets=" + mScreenEdgeInsets); - pw.println(innerPrefix + "mNavigationBarsInsets=" + mNavigationBarsInsets); - } - - /** Listener interface for display id changes. */ - public interface DisplayIdListener { - /** - * Informs listener of display id change. Default implementation does nothing. - * @param displayContext associated with the updated display - */ - default void onDisplayIdChanged(@NonNull Context displayContext) {} } } diff --git a/wmshell/src/com/android/wm/shell/common/pip/PipDoubleTapHelper.java b/wmshell/src/com/android/wm/shell/common/pip/PipDoubleTapHelper.java index d36201a4ac..4cbb78f2da 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PipDoubleTapHelper.java +++ b/wmshell/src/com/android/wm/shell/common/pip/PipDoubleTapHelper.java @@ -52,15 +52,24 @@ public class PipDoubleTapHelper { public static final int SIZE_SPEC_MAX = 1; public static final int SIZE_SPEC_CUSTOM = 2; + /** + * Returns MAX or DEFAULT {@link PipSizeSpec} to toggle to/from. + * + * <p>Each double tap toggles back and forth between {@code PipSizeSpec.CUSTOM} and + * either {@code PipSizeSpec.MAX} or {@code PipSizeSpec.DEFAULT}. The choice between + * the latter two sizes is determined based on the current state of the pip screen.</p> + * + * @param mPipBoundsState current state of the pip screen + */ @PipSizeSpec - private static int getMaxOrDefaultPipSizeSpec(@NonNull PipBoundsState pipBoundsState) { + private static int getMaxOrDefaultPipSizeSpec(@NonNull PipBoundsState mPipBoundsState) { // determine the average pip screen width - int averageWidth = (pipBoundsState.getMaxSize().x - + pipBoundsState.getMinSize().x) / 2; + int averageWidth = (mPipBoundsState.getMaxSize().x + + mPipBoundsState.getMinSize().x) / 2; // If pip screen width is above average, DEFAULT is the size spec we need to // toggle to. Otherwise, we choose MAX. - return (pipBoundsState.getBounds().width() > averageWidth) + return (mPipBoundsState.getBounds().width() > averageWidth) ? SIZE_SPEC_DEFAULT : SIZE_SPEC_MAX; } @@ -68,33 +77,35 @@ public class PipDoubleTapHelper { /** * Determines the {@link PipSizeSpec} to toggle to on double tap. * - * @param pipBoundsState current state of the pip bounds + * @param mPipBoundsState current state of the pip screen * @param userResizeBounds latest user resized bounds (by pinching in/out) + * @return pip screen size to switch to */ @PipSizeSpec - public static int nextSizeSpec(@NonNull PipBoundsState pipBoundsState, + public static int nextSizeSpec(@NonNull PipBoundsState mPipBoundsState, @NonNull Rect userResizeBounds) { - boolean isScreenMax = pipBoundsState.getBounds().width() == pipBoundsState.getMaxSize().x - && pipBoundsState.getBounds().height() == pipBoundsState.getMaxSize().y; - boolean isScreenDefault = (pipBoundsState.getBounds().width() - == pipBoundsState.getNormalBounds().width()) - && (pipBoundsState.getBounds().height() - == pipBoundsState.getNormalBounds().height()); + // is pip screen at its maximum + boolean isScreenMax = mPipBoundsState.getBounds().width() + == mPipBoundsState.getMaxSize().x; + + // is pip screen at its normal default size + boolean isScreenDefault = (mPipBoundsState.getBounds().width() + == mPipBoundsState.getNormalBounds().width()) + && (mPipBoundsState.getBounds().height() + == mPipBoundsState.getNormalBounds().height()); // edge case 1 // if user hasn't resized screen yet, i.e. CUSTOM size does not exist yet // or if user has resized exactly to DEFAULT, then we just want to maximize if (isScreenDefault - && userResizeBounds.width() == pipBoundsState.getNormalBounds().width() - && userResizeBounds.height() == pipBoundsState.getNormalBounds().height()) { + && userResizeBounds.width() == mPipBoundsState.getNormalBounds().width()) { return SIZE_SPEC_MAX; } // edge case 2 - // if user has resized to max, then we want to toggle to DEFAULT + // if user has maximized, then we want to toggle to DEFAULT if (isScreenMax - && userResizeBounds.width() == pipBoundsState.getMaxSize().x - && userResizeBounds.height() == pipBoundsState.getMaxSize().y) { + && userResizeBounds.width() == mPipBoundsState.getMaxSize().x) { return SIZE_SPEC_DEFAULT; } @@ -102,6 +113,9 @@ public class PipDoubleTapHelper { if (isScreenDefault || isScreenMax) { return SIZE_SPEC_CUSTOM; } - return getMaxOrDefaultPipSizeSpec(pipBoundsState); + + // if we are currently in user resized CUSTOM size state + // then we toggle either to MAX or DEFAULT depending on the current pip screen state + return getMaxOrDefaultPipSizeSpec(mPipBoundsState); } } diff --git a/wmshell/src/com/android/wm/shell/common/pip/PipMediaController.kt b/wmshell/src/com/android/wm/shell/common/pip/PipMediaController.kt index 9098544c9e..427a555eee 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PipMediaController.kt +++ b/wmshell/src/com/android/wm/shell/common/pip/PipMediaController.kt @@ -302,13 +302,6 @@ class PipMediaController(private val mContext: Context, private val mMainHandler setActiveMediaController(null) } - /** - * Returns {@code true} if the pinned Activity has an active associated MediaSession. - */ - fun hasActiveMediaSession(): Boolean { - return mMediaController != null - } - /** * Sets the active media controller for the top PiP activity. */ diff --git a/wmshell/src/com/android/wm/shell/common/pip/PipMenuController.java b/wmshell/src/com/android/wm/shell/common/pip/PipMenuController.java index bad4a934ad..85353d3070 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PipMenuController.java +++ b/wmshell/src/com/android/wm/shell/common/pip/PipMenuController.java @@ -18,6 +18,7 @@ package com.android.wm.shell.common.pip; import static android.view.WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE; import static android.view.WindowManager.LayoutParams.FLAG_SLIPPERY; +import static android.view.WindowManager.LayoutParams.FLAG_SPLIT_TOUCH; import static android.view.WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH; import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERLAY; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY; @@ -110,7 +111,7 @@ public interface PipMenuController { int width, int height) { final WindowManager.LayoutParams lp = new WindowManager.LayoutParams(width, height, TYPE_APPLICATION_OVERLAY, - FLAG_WATCH_OUTSIDE_TOUCH | FLAG_SLIPPERY | FLAG_NOT_TOUCHABLE, + FLAG_WATCH_OUTSIDE_TOUCH | FLAG_SPLIT_TOUCH | FLAG_SLIPPERY | FLAG_NOT_TOUCHABLE, PixelFormat.TRANSLUCENT); lp.privateFlags |= PRIVATE_FLAG_TRUSTED_OVERLAY; lp.setTitle(title); diff --git a/wmshell/src/com/android/wm/shell/common/pip/PipPerfHintController.java b/wmshell/src/com/android/wm/shell/common/pip/PipPerfHintController.java index b9c698e5d8..c421dec025 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PipPerfHintController.java +++ b/wmshell/src/com/android/wm/shell/common/pip/PipPerfHintController.java @@ -26,7 +26,7 @@ import android.window.SystemPerformanceHinter.HighPerfSession; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.shared.annotations.ShellMainThread; diff --git a/wmshell/src/com/android/wm/shell/common/pip/PipUtils.kt b/wmshell/src/com/android/wm/shell/common/pip/PipUtils.kt index b692fbe69d..a09720dd6a 100644 --- a/wmshell/src/com/android/wm/shell/common/pip/PipUtils.kt +++ b/wmshell/src/com/android/wm/shell/common/pip/PipUtils.kt @@ -16,40 +16,31 @@ package com.android.wm.shell.common.pip import android.app.ActivityTaskManager +import android.app.AppGlobals import android.app.RemoteAction -import android.app.TaskInfo import android.app.WindowConfiguration import android.content.ComponentName import android.content.Context -import android.content.res.Configuration -import android.content.res.Configuration.UI_MODE_NIGHT_MASK -import android.graphics.PointF +import android.content.pm.PackageManager import android.graphics.Rect import android.os.RemoteException +import android.os.SystemProperties import android.util.DisplayMetrics import android.util.Log import android.util.Pair import android.util.TypedValue -import android.window.DesktopExperienceFlags.ENABLE_DESKTOP_WINDOWING_PIP import android.window.TaskSnapshot -import android.window.TransitionInfo -import com.android.internal.protolog.ProtoLog -import com.android.wm.shell.shared.pip.PipFlags +import com.android.internal.protolog.common.ProtoLog import com.android.wm.shell.Flags import com.android.wm.shell.protolog.ShellProtoLogGroup -import java.io.PrintWriter import kotlin.math.abs -import kotlin.math.ceil -import kotlin.math.floor -import kotlin.math.roundToInt /** A class that includes convenience methods. */ object PipUtils { private const val TAG = "PipUtils" // Minimum difference between two floats (e.g. aspect ratios) to consider them not equal. - // TODO b/377530560: Restore epsilon once a long term fix is merged for non-config-at-end issue. - private const val EPSILON = 0.05f + private const val EPSILON = 1e-7 /** * @return the ComponentName and user id of the top non-SystemUI activity in the pinned stack. @@ -150,190 +141,46 @@ object PipUtils { /** - * Returns a pseudo source rect hint for animation purposes when app-provided one is invalid. + * Returns a fake source rect hint for animation purposes when app-provided one is invalid. * Resulting adjusted source rect hint lets the app icon in the content overlay to stay visible. */ @JvmStatic - fun getPseudoSourceRectHint(appBounds: Rect, aspectRatio: Float): Rect { + fun getEnterPipWithOverlaySrcRectHint(appBounds: Rect, aspectRatio: Float): Rect { val appBoundsAspRatio = appBounds.width().toFloat() / appBounds.height() val width: Int val height: Int - var left = appBounds.left - var top = appBounds.top + var left = 0 + var top = 0 if (appBoundsAspRatio < aspectRatio) { width = appBounds.width() - height = (width / aspectRatio).roundToInt() - top = appBounds.top + (appBounds.height() - height) / 2 + height = Math.round(width / aspectRatio) + top = (appBounds.height() - height) / 2 } else { height = appBounds.height() - width = (height * aspectRatio).roundToInt() - left = appBounds.left + (appBounds.width() - width) / 2 + width = Math.round(height * aspectRatio) + left = (appBounds.width() - width) / 2 } return Rect(left, top, left + width, top + height) } - /** - * Temporary rounding "outward" (ie. -1.2 -> -2) used for crop since it is an int. We lean - * outward since, usually, child surfaces are, themselves, cropped, so we'd prefer to avoid - * inadvertently cutting out content that would otherwise be visible. - */ - private fun roundOut(`val`: Float): Int { - return (if (`val` >= 0f) ceil(`val`) else floor(`val`)).toInt() - } + private var isPip2ExperimentEnabled: Boolean? = null /** - * Calculates the transform to apply on a UNTRANSFORMED (config-at-end) Activity surface in - * order for it's hint-rect to occupy the same task-relative position/dimensions as it would - * have at the end of the transition (post-configuration). - * - * This is intended to be used in tandem with [calcStartTransform] below applied to the parent - * task. Applying both transforms simultaneously should result in the appearance of nothing - * having happened yet. - * - * Only the task should be animated (into it's identity state) and then WMCore will reset the - * activity transform in sync with its new configuration upon finish. - * - * Usage example: - * calcEndTransform(pipActivity, pipTask, scale, pos); - * t.setScale(pipActivity.getLeash(), scale.x, scale.y); - * t.setPosition(pipActivity.getLeash(), pos.x, pos.y); - * - * @see calcStartTransform + * Returns true if PiP2 implementation should be used. Besides the trunk stable flag, + * system property can be used to override this read only flag during development. + * It's currently limited to phone form factor, i.e., not enabled on ARC / TV. */ @JvmStatic - fun calcEndTransform(pipActivity: TransitionInfo.Change, pipTask: TransitionInfo.Change, - outScale: PointF, outPos: PointF) { - val actStartBounds = pipActivity.startAbsBounds - val actEndBounds = pipActivity.endAbsBounds - val taskEndBounds = pipTask.endAbsBounds - - var hintRect = pipTask.taskInfo?.pictureInPictureParams?.sourceRectHint - if (hintRect == null) { - hintRect = Rect(actStartBounds) - hintRect.offsetTo(0, 0) + fun isPip2ExperimentEnabled(): Boolean { + if (isPip2ExperimentEnabled == null) { + val isArc = AppGlobals.getPackageManager().hasSystemFeature( + "org.chromium.arc", 0) + val isTv = AppGlobals.getPackageManager().hasSystemFeature( + PackageManager.FEATURE_LEANBACK, 0) + isPip2ExperimentEnabled = SystemProperties.getBoolean( + "persist.wm_shell.pip2", false) || + (Flags.enablePip2Implementation() && !isArc && !isTv) } - - // FA = final activity bounds (absolute) - // FT = final task bounds (absolute) - // SA = start activity bounds (absolute) - // H = source hint (relative to start activity bounds) - // We want to transform the activity so that when the task is at FT, H overlaps with FA - - // This scales the activity such that the hint rect has the same dimensions - // as the final activity bounds. - val hintToEndScaleX = (actEndBounds.width().toFloat()) / (hintRect.width().toFloat()) - val hintToEndScaleY = (actEndBounds.height().toFloat()) / (hintRect.height().toFloat()) - // top-left needs to be (FA.tl - FT.tl) - H.tl * hintToEnd . H is relative to the - // activity; so, for example, if shrinking H to FA (hintToEnd < 1), then the tl of the - // shrunk SA is closer to H than expected, so we need to reduce how much we offset SA - // to get H.tl to match. - val startActPosInTaskEndX = - (actEndBounds.left - taskEndBounds.left) - hintRect.left * hintToEndScaleX - val startActPosInTaskEndY = - (actEndBounds.top - taskEndBounds.top) - hintRect.top * hintToEndScaleY - outScale.set(hintToEndScaleX, hintToEndScaleY) - outPos.set(startActPosInTaskEndX, startActPosInTaskEndY) + return isPip2ExperimentEnabled as Boolean } - - @JvmStatic - fun isContentPip(pipTaskInfo: TaskInfo?): Boolean { - if (pipTaskInfo == null) return false - return pipTaskInfo.launchIntoPipHostTaskId != -1 - } - - /** - * Calculates the transform and crop to apply on a Task surface in order for the config-at-end - * activity inside it (original-size activity transformed to match it's hint rect to the final - * Task bounds) to occupy the same world-space position/dimensions as it had before the - * transition. - * - * Intended to be used in tandem with [calcEndTransform]. - * - * Usage example: - * calcStartTransform(pipTask, scale, pos, crop); - * t.setScale(pipTask.getLeash(), scale.x, scale.y); - * t.setPosition(pipTask.getLeash(), pos.x, pos.y); - * t.setCrop(pipTask.getLeash(), crop); - * - * @see calcEndTransform - */ - @JvmStatic - fun calcStartTransform(pipTask: TransitionInfo.Change, outScale: PointF, - outPos: PointF, outCrop: Rect) { - val startBounds = pipTask.startAbsBounds - val taskEndBounds = pipTask.endAbsBounds - // For now, pip activity bounds always matches task bounds. If this ever changes, we'll - // need to get the activity offset. - val endBounds = taskEndBounds - var hintRect = pipTask.taskInfo?.pictureInPictureParams?.sourceRectHint - if (hintRect == null) { - hintRect = Rect(startBounds) - hintRect.offsetTo(0, 0) - } - - // FA = final activity bounds (absolute) - // FT = final task bounds (absolute) - // SA = start activity bounds (absolute) - // H = source hint (relative to start activity bounds) - // We want to transform the activity so that when the task is at FT, H overlaps with FA - - // The scaling which takes the hint rect (H) in SA and matches it to FA - val hintToEndScaleX = (endBounds.width().toFloat()) / (hintRect.width().toFloat()) - val hintToEndScaleY = (endBounds.height().toFloat()) / (hintRect.height().toFloat()) - - // We want to set the transform on the END TASK surface to put the start activity - // back to where it was. - // First do backwards scale (which takes FA back to H) - val endToHintScaleX = 1f / hintToEndScaleX - val endToHintScaleY = 1f / hintToEndScaleY - // Then top-left needs to place FA (relative to the FT) at H (relative to SA): - // so -(FA.tl - FT.tl) + SA.tl + H.tl - // but we have scaled up the task, so anything that was "within" the task needs to - // be scaled: - // so -(FA.tl - FT.tl)*endToHint + SA.tl + H.tl - val endTaskPosForStartX = (-(endBounds.left - taskEndBounds.left) * endToHintScaleX - + startBounds.left + hintRect.left) - val endTaskPosForStartY = (-(endBounds.top - taskEndBounds.top) * endToHintScaleY - + startBounds.top + hintRect.top) - outScale.set(endToHintScaleX, endToHintScaleY) - outPos.set(endTaskPosForStartX, endTaskPosForStartY) - - // now need to set crop to reveal the non-hint stuff. Again, hintrect is relative, so - // we must apply outsets to reveal the *activity* content which is *inside* the task - // and thus is scaled (ie. if activity is scaled down, each task-level pixel exposes - // >1 activity-level pixels) - // For example, the topleft crop would be: - // (FA.tl - FT.tl) - H.tl * hintToEnd - // ^ activity within task - // bottomright can just use scaled activity size - // tl + scale(SA.size, hintToEnd) - outCrop.left = roundOut((endBounds.left - taskEndBounds.left) - - hintRect.left * hintToEndScaleX) - outCrop.top = roundOut((endBounds.top - taskEndBounds.top) - hintRect.top * hintToEndScaleY) - outCrop.right = roundOut(outCrop.left + startBounds.width() * hintToEndScaleX) - outCrop.bottom = roundOut(outCrop.top + startBounds.height() * hintToEndScaleY) - } - - /** - * Returns true if the system theme is the dark theme. - */ - @JvmStatic - fun Context.isDarkSystemTheme(): Boolean { - return (resources.configuration.uiMode and UI_MODE_NIGHT_MASK) == - Configuration.UI_MODE_NIGHT_YES - } - - /** - * Dumps information held by this class. - */ - @JvmStatic - fun dump(pw: PrintWriter, prefix: String) { - pw.println("$prefix$TAG") - val innerPrefix1 = "$prefix " - val innerPrefix2 = "$innerPrefix1 " - pw.println("${innerPrefix1}isPipUmoExperienceEnabled=${PipFlags.isPipUmoExperienceEnabled}") - pw.println("${innerPrefix1}isPip2ExperimentEnabled=${PipFlags.isPip2ExperimentEnabled}") - pw.println("${innerPrefix2}enablePip2=${Flags.enablePip2()}") - pw.println("${innerPrefix2}enableDwPip=${ENABLE_DESKTOP_WINDOWING_PIP.isTrue}") - } -} +} \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/common/split/DividerHandleView.java b/wmshell/src/com/android/wm/shell/common/split/DividerHandleView.java index 35047257a5..999da24432 100644 --- a/wmshell/src/com/android/wm/shell/common/split/DividerHandleView.java +++ b/wmshell/src/com/android/wm/shell/common/split/DividerHandleView.java @@ -32,7 +32,7 @@ import android.util.Property; import android.view.View; import com.android.wm.shell.R; -import com.android.wm.shell.shared.animation.Interpolators; +import com.android.wm.shell.animation.Interpolators; /** * View for the handle in the docked stack divider. @@ -103,24 +103,7 @@ public class DividerHandleView extends View { mHoveringHeight = mHeight > mWidth ? ((int) (mHeight * 1.5f)) : mHeight; } - /** - * Sets the color for the divider handle view. - * Optionally invalidates the view to trigger a redraw if the change should be - * reflected immediately. - * - * @param color The ARGB color to set for the divider handle view. - * @param invalidateView True if the view should be invalidated - * to redraw with the new color, false otherwise. - */ - public void setColor(int color, boolean invalidateView) { - mPaint.setColor(color); - if (invalidateView) { - invalidate(); - } - } - - /** sets whether it's a left/right or top/bottom split */ - public void setIsLeftRightSplit(boolean isLeftRightSplit) { + void setIsLeftRightSplit(boolean isLeftRightSplit) { mIsLeftRightSplit = isLeftRightSplit; updateDimens(); } diff --git a/wmshell/src/com/android/wm/shell/common/split/DividerRoundedCorner.java b/wmshell/src/com/android/wm/shell/common/split/DividerRoundedCorner.java index 44f4f1657a..834c15d6b8 100644 --- a/wmshell/src/com/android/wm/shell/common/split/DividerRoundedCorner.java +++ b/wmshell/src/com/android/wm/shell/common/split/DividerRoundedCorner.java @@ -30,7 +30,6 @@ import android.util.AttributeSet; import android.view.RoundedCorner; import android.view.View; -import androidx.annotation.DimenRes; import androidx.annotation.Nullable; import com.android.wm.shell.R; @@ -48,14 +47,13 @@ public class DividerRoundedCorner extends View { private InvertedRoundedCornerDrawInfo mBottomLeftCorner; private InvertedRoundedCornerDrawInfo mBottomRightCorner; private boolean mIsLeftRightSplit; - @DimenRes private int mRadiusResourceId = 0; public DividerRoundedCorner(Context context, @Nullable AttributeSet attrs) { super(context, attrs); mDividerWidth = getResources().getDimensionPixelSize(R.dimen.split_divider_bar_width); mDividerBarBackground = new Paint(); mDividerBarBackground.setColor( - getResources().getColor(R.color.split_divider_background, null /* theme */)); + getResources().getColor(R.color.split_divider_background, null)); mDividerBarBackground.setFlags(Paint.ANTI_ALIAS_FLAG); mDividerBarBackground.setStyle(Paint.Style.FILL); } @@ -100,39 +98,7 @@ public class DividerRoundedCorner extends View { return false; } - /** - * Sets the resource ID for the radius. This resource ID can be used to retrieve - * dimension values for the radius from the application's resources. - * If {@code radiusResId} is 0, the display's default round corner will be used. - * - * @param radiusResId The resource ID of the radius dimension. - */ - public void setRadiusResource(@DimenRes int radiusResId) { - mRadiusResourceId = radiusResId; - } - - /** - * Sets the color for the rounded corners of the divider bar background. - * Optionally invalidates the view to trigger a redraw if the change should be - * reflected immediately. - * - * @param cornerColor The ARGB color to set for the rounded corners. - * @param invalidateView True if the view should be invalidated - * to redraw with the new color, false otherwise. - */ - public void setRoundCornerColor(int cornerColor, boolean invalidateView) { - mDividerBarBackground.setColor(cornerColor); - if (invalidateView) { - invalidate(); - } - } - - /** - * Set whether the rounded corner is for a left/right split. - * - * @param isLeftRightSplit whether it's a left/right split or top/bottom split. - */ - public void setIsLeftRightSplit(boolean isLeftRightSplit) { + void setIsLeftRightSplit(boolean isLeftRightSplit) { mIsLeftRightSplit = isLeftRightSplit; } @@ -152,12 +118,8 @@ public class DividerRoundedCorner extends View { InvertedRoundedCornerDrawInfo(@RoundedCorner.Position int cornerPosition) { mCornerPosition = cornerPosition; - if (mRadiusResourceId == 0) { - final RoundedCorner roundedCorner = getDisplay().getRoundedCorner(cornerPosition); - mRadius = roundedCorner == null ? 0 : roundedCorner.getRadius(); - } else { - mRadius = mContext.getResources().getDimensionPixelSize(mRadiusResourceId); - } + final RoundedCorner roundedCorner = getDisplay().getRoundedCorner(cornerPosition); + mRadius = roundedCorner == null ? 0 : roundedCorner.getRadius(); // Starts with a filled square, and then subtracting out a circle from the appropriate // corner. diff --git a/wmshell/src/com/android/wm/shell/common/split/DividerSnapAlgorithm.java b/wmshell/src/com/android/wm/shell/common/split/DividerSnapAlgorithm.java index d1ff128b2f..bc6ed1f63c 100644 --- a/wmshell/src/com/android/wm/shell/common/split/DividerSnapAlgorithm.java +++ b/wmshell/src/com/android/wm/shell/common/split/DividerSnapAlgorithm.java @@ -16,31 +16,30 @@ package com.android.wm.shell.common.split; +import static android.view.WindowManager.DOCKED_INVALID; import static android.view.WindowManager.DOCKED_LEFT; import static android.view.WindowManager.DOCKED_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_10_90; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_33_66; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_66_33; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_90_10; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_END_AND_DISMISS; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_MINIMIZE; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_NONE; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_START_AND_DISMISS; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SnapPosition; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_30_70; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_50_50; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_70_30; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_END_AND_DISMISS; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_MINIMIZE; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_NONE; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_START_AND_DISMISS; +import static com.android.wm.shell.common.split.SplitScreenConstants.SnapPosition; +import android.content.Context; +import android.content.res.Configuration; import android.content.res.Resources; import android.graphics.Rect; +import android.hardware.display.DisplayManager; +import android.view.Display; +import android.view.DisplayInfo; import androidx.annotation.Nullable; -import com.android.mechanics.spec.MotionSpec; -import com.android.wm.shell.Flags; -import com.android.wm.shell.shared.split.SplitScreenConstants.PersistentSnapPosition; - import java.util.ArrayList; -import java.util.stream.IntStream; /** * Calculates the snap targets and the snap position given a position and a velocity. All positions @@ -73,11 +72,6 @@ public class DividerSnapAlgorithm { */ private static final int SNAP_MODE_MINIMIZED = 3; - /** - * A mode where apps can be "flexibly offscreen" on smaller displays. - */ - private static final int SNAP_FLEXIBLE_SPLIT = 4; - private final float mMinFlingVelocityPxPerSecond; private final float mMinDismissVelocityPxPerSecond; private final int mDisplayWidth; @@ -85,19 +79,14 @@ public class DividerSnapAlgorithm { private final int mDividerSize; private final ArrayList<SnapTarget> mTargets = new ArrayList<>(); private final Rect mInsets = new Rect(); - private final Rect mPinnedTaskbarInsets = new Rect(); private final int mSnapMode; private final boolean mFreeSnapMode; private final int mMinimalSizeResizableTask; private final int mTaskHeightInMinimizedMode; private final float mFixedRatio; /** Allows split ratios to calculated dynamically instead of using {@link #mFixedRatio}. */ - private final boolean mCalculateRatiosBasedOnAvailableSpace; - /** Allows split ratios that go offscreen (a.k.a. "flexible split") */ - private final boolean mAllowOffscreenRatios; - private final boolean mIsLeftRightSplit; - /** In SNAP_MODE_MINIMIZED, the side of the screen on which an app will "dock" when minimized */ - private final int mDockSide; + private final boolean mAllowFlexibleSplitRatios; + private boolean mIsHorizontalDivision; /** The first target which is still splitting the screen */ private final SnapTarget mFirstSplitTarget; @@ -109,18 +98,37 @@ public class DividerSnapAlgorithm { private final SnapTarget mDismissEndTarget; private final SnapTarget mMiddleTarget; - /** A spec used for "magnetic snap" user-controlled movement. */ - private final MotionSpec mMotionSpec; - - public DividerSnapAlgorithm(Resources res, int displayWidth, int displayHeight, int dividerSize, - boolean isLeftRightSplit, Rect insets, Rect pinnedTaskbarInsets, int dockSide) { - this(res, displayWidth, displayHeight, dividerSize, isLeftRightSplit, insets, - pinnedTaskbarInsets, dockSide, false /* minimized */, true /* resizable */); + public static DividerSnapAlgorithm create(Context ctx, Rect insets) { + DisplayInfo displayInfo = new DisplayInfo(); + ctx.getSystemService(DisplayManager.class).getDisplay( + Display.DEFAULT_DISPLAY).getDisplayInfo(displayInfo); + int dividerWindowWidth = ctx.getResources().getDimensionPixelSize( + com.android.internal.R.dimen.docked_stack_divider_thickness); + int dividerInsets = ctx.getResources().getDimensionPixelSize( + com.android.internal.R.dimen.docked_stack_divider_insets); + return new DividerSnapAlgorithm(ctx.getResources(), + displayInfo.logicalWidth, displayInfo.logicalHeight, + dividerWindowWidth - 2 * dividerInsets, + ctx.getApplicationContext().getResources().getConfiguration().orientation + == Configuration.ORIENTATION_PORTRAIT, + insets); } public DividerSnapAlgorithm(Resources res, int displayWidth, int displayHeight, int dividerSize, - boolean isLeftRightSplit, Rect insets, Rect pinnedTaskbarInsets, int dockSide, - boolean isMinimizedMode, boolean isHomeResizable) { + boolean isHorizontalDivision, Rect insets) { + this(res, displayWidth, displayHeight, dividerSize, isHorizontalDivision, insets, + DOCKED_INVALID, false /* minimized */, true /* resizable */); + } + + public DividerSnapAlgorithm(Resources res, int displayWidth, int displayHeight, int dividerSize, + boolean isHorizontalDivision, Rect insets, int dockSide) { + this(res, displayWidth, displayHeight, dividerSize, isHorizontalDivision, insets, + dockSide, false /* minimized */, true /* resizable */); + } + + public DividerSnapAlgorithm(Resources res, int displayWidth, int displayHeight, int dividerSize, + boolean isHorizontalDivision, Rect insets, int dockSide, boolean isMinimizedMode, + boolean isHomeResizable) { mMinFlingVelocityPxPerSecond = MIN_FLING_VELOCITY_DP_PER_SECOND * res.getDisplayMetrics().density; mMinDismissVelocityPxPerSecond = @@ -128,48 +136,53 @@ public class DividerSnapAlgorithm { mDividerSize = dividerSize; mDisplayWidth = displayWidth; mDisplayHeight = displayHeight; - mIsLeftRightSplit = isLeftRightSplit; - mDockSide = dockSide; + mIsHorizontalDivision = isHorizontalDivision; mInsets.set(insets); - mPinnedTaskbarInsets.set(pinnedTaskbarInsets); - if (Flags.enableFlexibleTwoAppSplit()) { - mSnapMode = SNAP_FLEXIBLE_SPLIT; - } else { - // Set SNAP_MODE_MINIMIZED, SNAP_MODE_16_9, or SNAP_FIXED_RATIO depending on config - mSnapMode = isMinimizedMode - ? SNAP_MODE_MINIMIZED - : res.getInteger( - com.android.internal.R.integer.config_dockedStackDividerSnapMode); - } + mSnapMode = isMinimizedMode ? SNAP_MODE_MINIMIZED : + res.getInteger(com.android.internal.R.integer.config_dockedStackDividerSnapMode); mFreeSnapMode = res.getBoolean( com.android.internal.R.bool.config_dockedStackDividerFreeSnapMode); mFixedRatio = res.getFraction( com.android.internal.R.fraction.docked_stack_divider_fixed_ratio, 1, 1); mMinimalSizeResizableTask = res.getDimensionPixelSize( com.android.internal.R.dimen.default_minimal_size_resizable_task); - mCalculateRatiosBasedOnAvailableSpace = res.getBoolean( + mAllowFlexibleSplitRatios = res.getBoolean( com.android.internal.R.bool.config_flexibleSplitRatios); - // If this is a small screen or a foldable, use offscreen ratios - mAllowOffscreenRatios = SplitScreenUtils.allowOffscreenRatios(res); mTaskHeightInMinimizedMode = isHomeResizable ? res.getDimensionPixelSize( com.android.internal.R.dimen.task_height_of_minimized_mode) : 0; - calculateTargets(); + calculateTargets(isHorizontalDivision, dockSide); mFirstSplitTarget = mTargets.get(1); mLastSplitTarget = mTargets.get(mTargets.size() - 2); mDismissStartTarget = mTargets.get(0); mDismissEndTarget = mTargets.get(mTargets.size() - 1); mMiddleTarget = mTargets.get(mTargets.size() / 2); mMiddleTarget.isMiddleTarget = true; - mMotionSpec = Flags.enableMagneticSplitDivider() - ? MagneticDividerUtils.generateMotionSpec(mTargets, res) : null; + } + + /** + * @return whether it's feasible to enable split screen in the current configuration, i.e. when + * snapping in the middle both tasks are larger than the minimal task size. + */ + public boolean isSplitScreenFeasible() { + int statusBarSize = mInsets.top; + int navBarSize = mIsHorizontalDivision ? mInsets.bottom : mInsets.right; + int size = mIsHorizontalDivision + ? mDisplayHeight + : mDisplayWidth; + int availableSpace = size - navBarSize - statusBarSize - mDividerSize; + return availableSpace / 2 >= mMinimalSizeResizableTask; + } + + public SnapTarget calculateSnapTarget(int position, float velocity) { + return calculateSnapTarget(position, velocity, true /* hardDismiss */); } /** * @param position the top/left position of the divider * @param velocity current dragging velocity - * @param hardToDismiss if set, make it a bit harder to get reach the dismiss targets + * @param hardDismiss if set, make it a bit harder to get reach the dismiss targets */ - public SnapTarget calculateSnapTarget(int position, float velocity, boolean hardToDismiss) { + public SnapTarget calculateSnapTarget(int position, float velocity, boolean hardDismiss) { if (position < mFirstSplitTarget.position && velocity < -mMinDismissVelocityPxPerSecond) { return mDismissStartTarget; } @@ -177,7 +190,7 @@ public class DividerSnapAlgorithm { return mDismissEndTarget; } if (Math.abs(velocity) < mMinFlingVelocityPxPerSecond) { - return snap(position, hardToDismiss); + return snap(position, hardDismiss); } if (velocity < 0) { return mFirstSplitTarget; @@ -223,6 +236,19 @@ public class DividerSnapAlgorithm { return 0f; } + public SnapTarget getClosestDismissTarget(int position) { + if (position < mFirstSplitTarget.position) { + return mDismissStartTarget; + } else if (position > mLastSplitTarget.position) { + return mDismissEndTarget; + } else if (position - mDismissStartTarget.position + < mDismissEndTarget.position - position) { + return mDismissStartTarget; + } else { + return mDismissEndTarget; + } + } + public SnapTarget getFirstSplitTarget() { return mFirstSplitTarget; } @@ -240,18 +266,18 @@ public class DividerSnapAlgorithm { } private int getStartInset() { - if (mIsLeftRightSplit) { - return mInsets.left; - } else { + if (mIsHorizontalDivision) { return mInsets.top; + } else { + return mInsets.left; } } private int getEndInset() { - if (mIsLeftRightSplit) { - return mInsets.right; - } else { + if (mIsHorizontalDivision) { return mInsets.bottom; + } else { + return mInsets.right; } } @@ -265,14 +291,9 @@ public class DividerSnapAlgorithm { return mFirstSplitTarget.position < position && position < mLastSplitTarget.position; } - /** Returns if we are currently on a device/screen that supports split apps going offscreen. */ - public boolean areOffscreenRatiosSupported() { - return mAllowOffscreenRatios; - } - private SnapTarget snap(int position, boolean hardDismiss) { if (shouldApplyFreeSnapMode(position)) { - return new SnapTarget(position, SNAP_TO_NONE); + return new SnapTarget(position, position, SNAP_TO_NONE); } int minIndex = -1; float minDistance = Float.MAX_VALUE; @@ -291,106 +312,69 @@ public class DividerSnapAlgorithm { return mTargets.get(minIndex); } - private void calculateTargets() { + private void calculateTargets(boolean isHorizontalDivision, int dockedSide) { mTargets.clear(); - int dividerMax = mIsLeftRightSplit - ? mDisplayWidth - : mDisplayHeight; + int dividerMax = isHorizontalDivision + ? mDisplayHeight + : mDisplayWidth; int startPos = -mDividerSize; - if (mDockSide == DOCKED_RIGHT) { + if (dockedSide == DOCKED_RIGHT) { startPos += mInsets.left; } - mTargets.add(new SnapTarget(startPos, SNAP_TO_START_AND_DISMISS, 0.35f)); + mTargets.add(new SnapTarget(startPos, startPos, SNAP_TO_START_AND_DISMISS, 0.35f)); switch (mSnapMode) { case SNAP_MODE_16_9: - addRatio16_9Targets(mIsLeftRightSplit, dividerMax); + addRatio16_9Targets(isHorizontalDivision, dividerMax); break; case SNAP_FIXED_RATIO: - addFixedDivisionTargets(mIsLeftRightSplit, dividerMax); + addFixedDivisionTargets(isHorizontalDivision, dividerMax); break; case SNAP_ONLY_1_1: - addMiddleTarget(mIsLeftRightSplit); + addMiddleTarget(isHorizontalDivision); break; case SNAP_MODE_MINIMIZED: - addMinimizedTarget(mIsLeftRightSplit, mDockSide); - break; - case SNAP_FLEXIBLE_SPLIT: - addFlexSplitTargets(mIsLeftRightSplit, dividerMax); + addMinimizedTarget(isHorizontalDivision, dockedSide); break; } - mTargets.add(new SnapTarget(dividerMax, SNAP_TO_END_AND_DISMISS, 0.35f)); + mTargets.add(new SnapTarget(dividerMax, dividerMax, SNAP_TO_END_AND_DISMISS, 0.35f)); } - private void addNonDismissingTargets(boolean isLeftRightSplit, int topPosition, + private void addNonDismissingTargets(boolean isHorizontalDivision, int topPosition, int bottomPosition, int dividerMax) { - @PersistentSnapPosition int firstTarget = - areOffscreenRatiosSupported() ? SNAP_TO_2_10_90 : SNAP_TO_2_33_66; - @PersistentSnapPosition int lastTarget = - areOffscreenRatiosSupported() ? SNAP_TO_2_90_10 : SNAP_TO_2_66_33; - maybeAddTarget(topPosition, topPosition - getStartInset(), firstTarget); - addMiddleTarget(isLeftRightSplit); + maybeAddTarget(topPosition, topPosition - getStartInset(), SNAP_TO_30_70); + addMiddleTarget(isHorizontalDivision); maybeAddTarget(bottomPosition, - dividerMax - getEndInset() - (bottomPosition + mDividerSize), lastTarget); + dividerMax - getEndInset() - (bottomPosition + mDividerSize), SNAP_TO_70_30); } - private void addFixedDivisionTargets(boolean isLeftRightSplit, int dividerMax) { - int start = isLeftRightSplit ? mInsets.left : mInsets.top; - int end = isLeftRightSplit - ? mDisplayWidth - mInsets.right - : mDisplayHeight - mInsets.bottom; - - int size = (int) (mFixedRatio * (end - start)) - mDividerSize / 2; - if (mCalculateRatiosBasedOnAvailableSpace) { - size = Math.max(size, mMinimalSizeResizableTask); - } - - int topPosition = start + size; - int bottomPosition = end - size - mDividerSize; - addNonDismissingTargets(isLeftRightSplit, topPosition, bottomPosition, dividerMax); - } - - private void addFlexSplitTargets(boolean isLeftRightSplit, int dividerMax) { - int start = 0; - int end = isLeftRightSplit ? mDisplayWidth : mDisplayHeight; - int pinnedTaskbarShiftStart = isLeftRightSplit - ? mPinnedTaskbarInsets.left : mPinnedTaskbarInsets.top; - int pinnedTaskbarShiftEnd = isLeftRightSplit - ? mPinnedTaskbarInsets.right : mPinnedTaskbarInsets.bottom; - - float ratio = areOffscreenRatiosSupported() - ? SplitSpec.OFFSCREEN_ASYMMETRIC_RATIO - : SplitSpec.ONSCREEN_ONLY_ASYMMETRIC_RATIO; - - // The intended size of the smaller app, in pixels - int size = (int) (ratio * (end - start)) - mDividerSize / 2; - - // If there are insets that interfere with the smaller app (visually or blocking touch - // targets), make the smaller app bigger by that amount to compensate. This applies to - // pinned taskbar, 3-button nav (both create an opaque bar at bottom) and status bar (blocks - // touch targets at top). - int extraSpace = IntStream.of( - getStartInset(), getEndInset(), pinnedTaskbarShiftStart, pinnedTaskbarShiftEnd - ).max().getAsInt(); - - int leftTopPosition = start + extraSpace + size; - int rightBottomPosition = end - extraSpace - size - mDividerSize; - addNonDismissingTargets(isLeftRightSplit, leftTopPosition, rightBottomPosition, dividerMax); - } - - private void addRatio16_9Targets(boolean isLeftRightSplit, int dividerMax) { - int start = isLeftRightSplit ? mInsets.left : mInsets.top; - int end = isLeftRightSplit - ? mDisplayWidth - mInsets.right - : mDisplayHeight - mInsets.bottom; - int startOther = isLeftRightSplit ? mInsets.top : mInsets.left; - int endOther = isLeftRightSplit + private void addFixedDivisionTargets(boolean isHorizontalDivision, int dividerMax) { + int start = isHorizontalDivision ? mInsets.top : mInsets.left; + int end = isHorizontalDivision ? mDisplayHeight - mInsets.bottom : mDisplayWidth - mInsets.right; + int size = (int) (mFixedRatio * (end - start)) - mDividerSize / 2; + if (mAllowFlexibleSplitRatios) { + size = Math.max(size, mMinimalSizeResizableTask); + } + int topPosition = start + size; + int bottomPosition = end - size - mDividerSize; + addNonDismissingTargets(isHorizontalDivision, topPosition, bottomPosition, dividerMax); + } + + private void addRatio16_9Targets(boolean isHorizontalDivision, int dividerMax) { + int start = isHorizontalDivision ? mInsets.top : mInsets.left; + int end = isHorizontalDivision + ? mDisplayHeight - mInsets.bottom + : mDisplayWidth - mInsets.right; + int startOther = isHorizontalDivision ? mInsets.left : mInsets.top; + int endOther = isHorizontalDivision + ? mDisplayWidth - mInsets.right + : mDisplayHeight - mInsets.bottom; float size = 9.0f / 16.0f * (endOther - startOther); int sizeInt = (int) Math.floor(size); int topPosition = start + sizeInt; int bottomPosition = end - sizeInt - mDividerSize; - addNonDismissingTargets(isLeftRightSplit, topPosition, bottomPosition, dividerMax); + addNonDismissingTargets(isHorizontalDivision, topPosition, bottomPosition, dividerMax); } /** @@ -398,35 +382,51 @@ public class DividerSnapAlgorithm { * meets the minimal size requirement. */ private void maybeAddTarget(int position, int smallerSize, @SnapPosition int snapPosition) { - if (smallerSize >= mMinimalSizeResizableTask || areOffscreenRatiosSupported()) { - mTargets.add(new SnapTarget(position, snapPosition)); + if (smallerSize >= mMinimalSizeResizableTask) { + mTargets.add(new SnapTarget(position, position, snapPosition)); } } - private void addMiddleTarget(boolean isLeftRightSplit) { - int position = DockedDividerUtils.calculateMiddlePosition(isLeftRightSplit, + private void addMiddleTarget(boolean isHorizontalDivision) { + int position = DockedDividerUtils.calculateMiddlePosition(isHorizontalDivision, mInsets, mDisplayWidth, mDisplayHeight, mDividerSize); - mTargets.add(new SnapTarget(position, SNAP_TO_2_50_50)); + mTargets.add(new SnapTarget(position, position, SNAP_TO_50_50)); } - private void addMinimizedTarget(boolean isLeftRightSplit, int dockedSide) { + private void addMinimizedTarget(boolean isHorizontalDivision, int dockedSide) { // In portrait offset the position by the statusbar height, in landscape add the statusbar // height as well to match portrait offset int position = mTaskHeightInMinimizedMode + mInsets.top; - if (isLeftRightSplit) { + if (!isHorizontalDivision) { if (dockedSide == DOCKED_LEFT) { position += mInsets.left; } else if (dockedSide == DOCKED_RIGHT) { position = mDisplayWidth - position - mInsets.right - mDividerSize; } } - mTargets.add(new SnapTarget(position, SNAP_TO_MINIMIZE)); + mTargets.add(new SnapTarget(position, position, SNAP_TO_MINIMIZE)); } public SnapTarget getMiddleTarget() { return mMiddleTarget; } + public SnapTarget getNextTarget(SnapTarget snapTarget) { + int index = mTargets.indexOf(snapTarget); + if (index != -1 && index < mTargets.size() - 1) { + return mTargets.get(index + 1); + } + return snapTarget; + } + + public SnapTarget getPreviousTarget(SnapTarget snapTarget) { + int index = mTargets.indexOf(snapTarget); + if (index != -1 && index > 0) { + return mTargets.get(index - 1); + } + return snapTarget; + } + /** * @return whether or not there are more than 1 split targets that do not include the two * dismiss targets, used in deciding to display the middle target for accessibility @@ -450,20 +450,41 @@ public class DividerSnapAlgorithm { return snap(currentPosition, /* hardDismiss */ true).snapPosition; } - public MotionSpec getMotionSpec() { - return mMotionSpec; + /** + * Cycles through all non-dismiss targets with a stepping of {@param increment}. It moves left + * if {@param increment} is negative and moves right otherwise. + */ + public SnapTarget cycleNonDismissTarget(SnapTarget snapTarget, int increment) { + int index = mTargets.indexOf(snapTarget); + if (index != -1) { + SnapTarget newTarget = mTargets.get((index + mTargets.size() + increment) + % mTargets.size()); + if (newTarget == mDismissStartTarget) { + return mLastSplitTarget; + } else if (newTarget == mDismissEndTarget) { + return mFirstSplitTarget; + } else { + return newTarget; + } + } + return snapTarget; } /** - * An object, calculated at boot time, representing a legal position for the split screen - * divider (i.e. the divider can be dragged to this spot). + * Represents a snap target for the divider. */ public static class SnapTarget { /** Position of this snap target. The right/bottom edge of the top/left task snaps here. */ public final int position; /** - * An int (enum) describing the placement of the divider in this snap target. + * Like {@link #position}, but used to calculate the task bounds which might be different + * from the stack bounds. + */ + public final int taskPosition; + + /** + * An int describing the placement of the divider in this snap target. */ public final @SnapPosition int snapPosition; @@ -475,19 +496,16 @@ public class DividerSnapAlgorithm { */ private final float distanceMultiplier; - public SnapTarget(int position, @SnapPosition int snapPosition) { - this(position, snapPosition, 1f); + public SnapTarget(int position, int taskPosition, @SnapPosition int snapPosition) { + this(position, taskPosition, snapPosition, 1f); } - public SnapTarget(int position, @SnapPosition int snapPosition, + public SnapTarget(int position, int taskPosition, @SnapPosition int snapPosition, float distanceMultiplier) { this.position = position; + this.taskPosition = taskPosition; this.snapPosition = snapPosition; this.distanceMultiplier = distanceMultiplier; } - - public int getPosition() { - return position; - } } } diff --git a/wmshell/src/com/android/wm/shell/common/split/DividerView.java b/wmshell/src/com/android/wm/shell/common/split/DividerView.java index 334dddd57a..c2242a8b87 100644 --- a/wmshell/src/com/android/wm/shell/common/split/DividerView.java +++ b/wmshell/src/com/android/wm/shell/common/split/DividerView.java @@ -18,9 +18,9 @@ package com.android.wm.shell.common.split; import static android.view.PointerIcon.TYPE_HORIZONTAL_DOUBLE_ARROW; import static android.view.PointerIcon.TYPE_VERTICAL_DOUBLE_ARROW; +import static android.view.WindowManager.LayoutParams.FLAG_SLIPPERY; import static com.android.internal.config.sysui.SystemUiDeviceConfigFlags.CURSOR_HOVER_STATES_ENABLED; -import static com.android.wm.shell.shared.split.SplitScreenConstants.snapPositionToUIString; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; @@ -45,6 +45,7 @@ import android.view.View; import android.view.ViewConfiguration; import android.view.ViewGroup; import android.view.WindowInsets; +import android.view.WindowManager; import android.view.accessibility.AccessibilityNodeInfo; import android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction; import android.widget.FrameLayout; @@ -53,20 +54,10 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; -import com.android.mechanics.spec.InputDirection; -import com.android.mechanics.view.DistanceGestureContext; -import com.android.mechanics.view.ViewMotionValue; -import com.android.wm.shell.Flags; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; -import com.android.wm.shell.common.split.DividerSnapAlgorithm.SnapTarget; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.animation.Interpolators; -import com.android.wm.shell.shared.desktopmode.DesktopState; - -import com.google.android.msdl.data.model.MSDLToken; - -import java.util.Objects; /** * Divider for multi window splits. @@ -74,7 +65,6 @@ import java.util.Objects; public class DividerView extends FrameLayout implements View.OnTouchListener { public static final long TOUCH_ANIMATION_DURATION = 150; public static final long TOUCH_RELEASE_ANIMATION_DURATION = 200; - private static final boolean SHOW_DRAG_TOOLTIP = true; private final Paint mPaint = new Paint(); private final Rect mBackgroundRect = new Rect(); @@ -85,8 +75,6 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { private SurfaceControlViewHost mViewHost; private DividerHandleView mHandle; private DividerRoundedCorner mCorners; - /** A tooltip view that appears to educate users about split screen breakpoints. */ - private DividerTooltip mTooltip; private int mTouchElevation; private VelocityTracker mVelocityTracker; @@ -100,24 +88,9 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { private int mHandleRegionWidth; private int mHandleRegionHeight; - // Calculation classes for "magnetic snap" user-controlled movement - private DistanceGestureContext mDistanceGestureContext; - private ViewMotionValue mViewMotionValue; /** - * The @SnapPosition where the user started dragging from. Assigned at the beginning of a drag - * and set back to null once the drag ends. - */ - @Nullable private Integer mDragStartingSnapPosition; - /** - * When the divider is dragged out of the starting region {@link #mDragStartingSnapPosition} - * for the first time, this is flipped to true. Used for tooltip logic. - */ - private boolean mDraggedOutOfStartingRegion = false; - @Nullable private Integer mLastHoveredOverSnapPosition; - - /** - * This is not the visible bounds you see on screen, but the actual behind-the-scenes window - * bounds, which is larger. + * Tracks divider bar visible bounds in screen-based coordination. Used to calculate with + * insets. */ private final Rect mDividerBounds = new Rect(); private final Rect mTempRect = new Rect(); @@ -151,7 +124,7 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { } }; - final AccessibilityDelegate mHandleDelegate = new AccessibilityDelegate() { + private final AccessibilityDelegate mHandleDelegate = new AccessibilityDelegate() { @Override public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) { super.onInitializeAccessibilityNodeInfo(host, info); @@ -174,8 +147,6 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { } info.addAction(new AccessibilityAction(R.id.action_move_rb_full, mContext.getString(R.string.accessibility_action_divider_right_full))); - info.addAction(new AccessibilityAction(R.id.action_swap_apps, - mContext.getString(R.string.accessibility_action_divider_swap_horizontal))); } else { info.addAction(new AccessibilityAction(R.id.action_move_tl_full, mContext.getString(R.string.accessibility_action_divider_top_full))); @@ -194,20 +165,13 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { } info.addAction(new AccessibilityAction(R.id.action_move_rb_full, mContext.getString(R.string.accessibility_action_divider_bottom_full))); - info.addAction(new AccessibilityAction(R.id.action_swap_apps, - mContext.getString(R.string.accessibility_action_divider_swap_vertical))); } } @Override public boolean performAccessibilityAction(@NonNull View host, int action, @Nullable Bundle args) { - if (action == R.id.action_swap_apps) { - mSplitLayout.onDoubleTappedDivider(); - return true; - } - - SnapTarget nextTarget = null; + DividerSnapAlgorithm.SnapTarget nextTarget = null; DividerSnapAlgorithm snapAlgorithm = mSplitLayout.mDividerSnapAlgorithm; if (action == R.id.action_move_tl_full) { nextTarget = snapAlgorithm.getDismissEndTarget(); @@ -248,8 +212,7 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { /** Sets up essential dependencies of the divider bar. */ public void setup(SplitLayout layout, SplitWindowManager splitWindowManager, - SurfaceControlViewHost viewHost, InsetsState insetsState, - DesktopState desktopState) { + SurfaceControlViewHost viewHost, InsetsState insetsState) { mSplitLayout = layout; mSplitWindowManager = splitWindowManager; mViewHost = viewHost; @@ -259,16 +222,13 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { final boolean isLeftRightSplit = mSplitLayout.isLeftRightSplit(); mHandle.setIsLeftRightSplit(isLeftRightSplit); mCorners.setIsLeftRightSplit(isLeftRightSplit); - mTooltip.setIsLeftRightSplit(isLeftRightSplit); mHandleRegionWidth = getResources().getDimensionPixelSize(isLeftRightSplit ? R.dimen.split_divider_handle_region_height : R.dimen.split_divider_handle_region_width); mHandleRegionHeight = getResources().getDimensionPixelSize(isLeftRightSplit ? R.dimen.split_divider_handle_region_width - : desktopState.canEnterDesktopMode() - ? R.dimen.desktop_mode_portrait_split_divider_handle_region_height - : R.dimen.split_divider_handle_region_height); + : R.dimen.split_divider_handle_region_height); } void onInsetsChanged(InsetsState insetsState, boolean animate) { @@ -283,7 +243,7 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { final InsetsSource source = insetsState.sourceAt(i); if (source.getType() == WindowInsets.Type.navigationBars() && source.hasFlags(InsetsSource.FLAG_INSETS_ROUNDED_CORNER)) { - mTempRect.inset(source.calculateVisibleInsets(mTempRect, mTempRect)); + mTempRect.inset(source.calculateVisibleInsets(mTempRect)); } } } @@ -310,7 +270,6 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { mDividerBar = findViewById(R.id.divider_bar); mHandle = findViewById(R.id.docked_divider_handle); mCorners = findViewById(R.id.docked_divider_rounded_corner); - mTooltip = findViewById(R.id.docked_divider_tooltip); mTouchElevation = getResources().getDimensionPixelSize( R.dimen.docked_stack_divider_lift_elevation); mDoubleTapDetector = new GestureDetector(getContext(), new DoubleTapListener()); @@ -360,7 +319,9 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { return false; } - mDoubleTapDetector.onTouchEvent(event); + if (mDoubleTapDetector.onTouchEvent(event)) { + return true; + } // Convert to use screen-based coordinates to prevent lost track of motion events while // moving divider bar and calculating dragging velocity. @@ -375,77 +336,23 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { setTouching(); mStartPos = touchPos; mMoving = false; + // This triggers initialization of things like the resize veil in preparation for + // showing it when the user moves the divider past the slop, and has to be done + // before onStartDragging() which starts the jank interaction tracing + mSplitLayout.updateDividerBounds(mSplitLayout.getDividerPosition(), + false /* shouldUseParallaxEffect */); mSplitLayout.onStartDragging(); break; case MotionEvent.ACTION_MOVE: mVelocityTracker.addMovement(event); - int displacement = touchPos - mStartPos; - if (!mMoving && Math.abs(displacement) > mTouchSlop) { + if (!mMoving && Math.abs(touchPos - mStartPos) > mTouchSlop) { mStartPos = touchPos; mMoving = true; - if (Flags.enableMagneticSplitDivider()) { - // Move gesture is confirmed, create framework for magnetic snap - InputDirection direction = - displacement > 0 ? InputDirection.Max : InputDirection.Min; - mDistanceGestureContext = DistanceGestureContext.create(mContext, mStartPos, - direction); - mViewMotionValue = new ViewMotionValue(mStartPos, - mDistanceGestureContext, - mSplitLayout.mDividerSnapAlgorithm.getMotionSpec(), - "dividerView::pos" /* label */); - mLastHoveredOverSnapPosition = mSplitLayout.calculateCurrentSnapPosition(); - // Set a "starting region" in which we don't want to show the tooltip yet. - mDragStartingSnapPosition = mSplitLayout.calculateCurrentSnapPosition(); - mViewMotionValue.addUpdateCallback(viewMotionValue -> { - int snappedPosition = (int) viewMotionValue.getOutput(); - // Whenever MotionValue updates (from user moving the divider): - // - Place divider in its new position - placeDivider(snappedPosition); - // - Play a haptic if entering a magnetic zone - Integer currentlyHoveredOverSnapZone = viewMotionValue.get( - MagneticDividerUtils.getSNAP_POSITION_KEY()); - - boolean changedSnapPosition = !Objects.equals( - currentlyHoveredOverSnapZone, mLastHoveredOverSnapPosition); - if (currentlyHoveredOverSnapZone != null && changedSnapPosition) { - playHapticClick(); - } - // - Update the last-hovered-over snap zone - mLastHoveredOverSnapPosition = currentlyHoveredOverSnapZone; - // - Update tooltip state if needed - if (SHOW_DRAG_TOOLTIP) { - // - Update internal state for closest snap position (i.e. where the - // user will end up if drag is released) - final float velocity = isLeftRightSplit - ? mVelocityTracker.getXVelocity() - : mVelocityTracker.getYVelocity(); - int closestSnapPosition = mSplitLayout - .findSnapTarget(snappedPosition, - velocity, false /* hardDismiss */) - .snapPosition; - // If we are still in the starting zone, wait until the user drags - // to a point where the closest snap position is a different one. - if (!mDraggedOutOfStartingRegion - && closestSnapPosition != mDragStartingSnapPosition) { - mDraggedOutOfStartingRegion = true; - } - // Afterwards, always show the tooltip, updating to reflect the - // nearest snap point. - if (mDraggedOutOfStartingRegion) { - showTooltip(snapPositionToUIString(closestSnapPosition)); - } - } - }); - } } if (mMoving) { final int position = mSplitLayout.getDividerPosition() + touchPos - mStartPos; mLastDraggingPosition = position; - if (Flags.enableMagneticSplitDivider()) { - updateMagneticSnapCalculation(position); - } else { - placeDivider(position); - } + mSplitLayout.updateDividerBounds(position, true /* shouldUseParallaxEffect */); } break; case MotionEvent.ACTION_UP: @@ -453,9 +360,6 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { releaseTouching(); if (!mMoving) { mSplitLayout.onDraggingCancelled(); - if (Flags.enableMagneticSplitDivider()) { - cleanUpMagneticSnapFramework(); - } break; } @@ -465,74 +369,18 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { ? mVelocityTracker.getXVelocity() : mVelocityTracker.getYVelocity(); final int position = mSplitLayout.getDividerPosition() + touchPos - mStartPos; - final SnapTarget snapTarget = + final DividerSnapAlgorithm.SnapTarget snapTarget = mSplitLayout.findSnapTarget(position, velocity, false /* hardDismiss */); mSplitLayout.snapToTarget(position, snapTarget); mMoving = false; - if (Flags.enableMagneticSplitDivider()) { - cleanUpMagneticSnapFramework(); - } break; } return true; } - /** Plays a short haptic to indicate attaching or detaching from a divider snap point. */ - private void playHapticClick() { - mSplitLayout.getHapticPlayer().playToken(MSDLToken.SWIPE_THRESHOLD_INDICATOR, null); - } - - private void showTooltip(String tooltipText) { - mTooltip.setText(tooltipText); - if (mTooltip.getVisibility() == VISIBLE) { - return; - } - mTooltip.setVisibility(VISIBLE); - mTooltip.setAlpha(1f); - } - - private void hideTooltip() { - if (mTooltip.getVisibility() == GONE) { - return; - } - mTooltip.setAlpha(0f); - mTooltip.setVisibility(GONE); - } - - /** Updates the position of the divider. */ - private void placeDivider(int position) { - mSplitLayout.updateDividerBounds(position, true /* shouldUseParallaxEffect */); - } - - /** - * Sends a position update to the magnetic snap framework, allowing a calculation to occur. The - * position of the divider will be updated. - * @param position The current position of the user's finger. - */ - private void updateMagneticSnapCalculation(int position) { - if (mDistanceGestureContext != null) { - mDistanceGestureContext.setDragOffset(position); - } - if (mViewMotionValue != null) { - mViewMotionValue.setInput(position); - } - } - - /** Cleans up the magnetic snap framework after the drag gesture completes. */ - private void cleanUpMagneticSnapFramework() { - if (mViewMotionValue != null) { - mViewMotionValue.dispose(); - } - mDistanceGestureContext = null; - mViewMotionValue = null; - mLastHoveredOverSnapPosition = null; - mDragStartingSnapPosition = null; - mDraggedOutOfStartingRegion = false; - hideTooltip(); - } - private void setTouching() { + setSlippery(false); mHandle.setTouching(true, true); // Lift handle as well so it doesn't get behind the background, even though it doesn't // cast shadow. @@ -544,6 +392,7 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { } private void releaseTouching() { + setSlippery(true); mHandle.setTouching(false, true); mHandle.animate() .setInterpolator(Interpolators.FAST_OUT_SLOW_IN) @@ -552,6 +401,25 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { .start(); } + private void setSlippery(boolean slippery) { + if (mViewHost == null) { + return; + } + + final WindowManager.LayoutParams lp = (WindowManager.LayoutParams) getLayoutParams(); + final boolean isSlippery = (lp.flags & FLAG_SLIPPERY) != 0; + if (isSlippery == slippery) { + return; + } + + if (slippery) { + lp.flags |= FLAG_SLIPPERY; + } else { + lp.flags &= ~FLAG_SLIPPERY; + } + mViewHost.relayout(lp); + } + @Override public boolean onHoverEvent(MotionEvent event) { if (!DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_SYSTEMUI, CURSOR_HOVER_STATES_ENABLED, @@ -614,7 +482,6 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { mLastDraggingPosition, position, mSplitLayout.FLING_RESIZE_DURATION, - Interpolators.FAST_OUT_SLOW_IN, () -> mSplitLayout.setDividerPosition(position, true /* applyLayoutChange */)); mMoving = false; } @@ -630,24 +497,18 @@ public class DividerView extends FrameLayout implements View.OnTouchListener { return mHideHandle; } - /** Returns true if the divider is currently being physically controlled by the user. */ - boolean isMoving() { - return mMoving; - } - private class DoubleTapListener extends GestureDetector.SimpleOnGestureListener { + @Override + public boolean onDoubleTap(MotionEvent e) { + if (mSplitLayout != null) { + mSplitLayout.onDoubleTappedDivider(); + } + return true; + } @Override public boolean onDoubleTapEvent(@NonNull MotionEvent e) { - // User could have started double tap and then dragged before letting go. Skip the - // swap if so - if (!mMoving && e.getAction() == MotionEvent.ACTION_UP) { - if (mSplitLayout != null) { - mSplitLayout.onDoubleTappedDivider(); - } - return true; - } - return false; + return true; } } } diff --git a/wmshell/src/com/android/wm/shell/common/split/DockedDividerUtils.java b/wmshell/src/com/android/wm/shell/common/split/DockedDividerUtils.java index 25157c05d0..f25dfeafb3 100644 --- a/wmshell/src/com/android/wm/shell/common/split/DockedDividerUtils.java +++ b/wmshell/src/com/android/wm/shell/common/split/DockedDividerUtils.java @@ -97,12 +97,12 @@ public class DockedDividerUtils { } } - public static int calculateMiddlePosition(boolean isLeftRightSplit, Rect insets, + public static int calculateMiddlePosition(boolean isHorizontalDivision, Rect insets, int displayWidth, int displayHeight, int dividerSize) { - int start = isLeftRightSplit ? insets.left : insets.top; - int end = isLeftRightSplit - ? displayWidth - insets.right - : displayHeight - insets.bottom; + int start = isHorizontalDivision ? insets.top : insets.left; + int end = isHorizontalDivision + ? displayHeight - insets.bottom + : displayWidth - insets.right; return start + (end - start) / 2 - dividerSize / 2; } diff --git a/wmshell/src/com/android/wm/shell/common/split/SplitDecorManager.java b/wmshell/src/com/android/wm/shell/common/split/SplitDecorManager.java index e39baeb566..5097ed8866 100644 --- a/wmshell/src/com/android/wm/shell/common/split/SplitDecorManager.java +++ b/wmshell/src/com/android/wm/shell/common/split/SplitDecorManager.java @@ -23,10 +23,7 @@ import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_NO_MOVE_ANIMA import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERLAY; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY; -import static com.android.wm.shell.common.split.SplitLayout.ANIMATING_BACK_APP_VEIL_LAYER; -import static com.android.wm.shell.common.split.SplitLayout.ANIMATING_FRONT_APP_VEIL_LAYER; -import static com.android.wm.shell.shared.split.SplitScreenConstants.FADE_DURATION; -import static com.android.wm.shell.shared.split.SplitScreenConstants.VEIL_DELAY_DURATION; +import static com.android.wm.shell.common.split.SplitScreenConstants.FADE_DURATION; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; @@ -34,16 +31,15 @@ import android.animation.ValueAnimator; import android.app.ActivityManager; import android.content.Context; import android.content.res.Configuration; -import android.graphics.Color; import android.graphics.PixelFormat; import android.graphics.Rect; import android.graphics.drawable.Drawable; import android.os.Binder; -import android.util.Log; import android.view.IWindow; import android.view.LayoutInflater; import android.view.SurfaceControl; import android.view.SurfaceControlViewHost; +import android.view.SurfaceSession; import android.view.View; import android.view.WindowManager; import android.view.WindowlessWindowManager; @@ -51,15 +47,12 @@ import android.widget.FrameLayout; import android.widget.ImageView; import androidx.annotation.NonNull; -import androidx.annotation.Nullable; import com.android.launcher3.icons.IconProvider; import com.android.wm.shell.R; import com.android.wm.shell.common.ScreenshotUtils; import com.android.wm.shell.common.SurfaceUtils; -import java.util.HashMap; -import java.util.Map; import java.util.function.Consumer; /** @@ -70,13 +63,6 @@ import java.util.function.Consumer; * Currently, we show a veil when: * a) Task is resizing down from a fullscreen window. * b) Task is being stretched past its original bounds. - * <br> - * Split root - * / | \ - * Stage root Divider Stage root - * / \ - * Task *this class* - * */ public class SplitDecorManager extends WindowlessWindowManager { private static final String TAG = SplitDecorManager.class.getSimpleName(); @@ -84,11 +70,11 @@ public class SplitDecorManager extends WindowlessWindowManager { private static final String GAP_BACKGROUND_SURFACE_NAME = "GapBackground"; private final IconProvider mIconProvider; + private final SurfaceSession mSurfaceSession; private Drawable mIcon; - private ImageView mVeilIconView; + private ImageView mResizingIconView; private SurfaceControlViewHost mViewHost; - /** The parent surface that this is attached to. Should be the stage root. */ private SurfaceControl mHostLeash; private SurfaceControl mIconLeash; private SurfaceControl mBackgroundLeash; @@ -96,14 +82,13 @@ public class SplitDecorManager extends WindowlessWindowManager { private SurfaceControl mScreenshot; private boolean mShown; - /** True if the task is going through some kind of transition (moving or changing size). */ - private boolean mIsCurrentlyChanging; + private boolean mIsResizing; /** The original bounds of the main task, captured at the beginning of a resize transition. */ private final Rect mOldMainBounds = new Rect(); /** The original bounds of the side task, captured at the beginning of a resize transition. */ private final Rect mOldSideBounds = new Rect(); /** The current bounds of the main task, mid-resize. */ - private final Rect mInstantaneousBounds = new Rect(); + private final Rect mResizingBounds = new Rect(); private final Rect mTempRect = new Rect(); private ValueAnimator mFadeAnimator; private ValueAnimator mScreenshotAnimator; @@ -112,24 +97,18 @@ public class SplitDecorManager extends WindowlessWindowManager { private int mOffsetX; private int mOffsetY; private int mRunningAnimationCount = 0; - /** - * Keeps track of all finish callbacks meant to be executed after all animations are finished. - * Do not add null values. - * <p> - * Maps a callback to the value meant to be passed in the callback. Default value to be passed - * to the callback is false. - */ - private final Map<Consumer<Boolean>, Boolean> mAnimFinishCallbacks = new HashMap<>(); - public SplitDecorManager(Configuration configuration, IconProvider iconProvider) { + public SplitDecorManager(Configuration configuration, IconProvider iconProvider, + SurfaceSession surfaceSession) { super(configuration, null /* rootSurface */, null /* hostInputToken */); mIconProvider = iconProvider; + mSurfaceSession = surfaceSession; } @Override protected SurfaceControl getParentSurface(IWindow window, WindowManager.LayoutParams attrs) { // Can't set position for the ViewRootImpl SC directly. Create a leash to manipulate later. - final SurfaceControl.Builder builder = new SurfaceControl.Builder() + final SurfaceControl.Builder builder = new SurfaceControl.Builder(new SurfaceSession()) .setContainerLayer() .setName(TAG) .setHidden(true) @@ -154,7 +133,7 @@ public class SplitDecorManager extends WindowlessWindowManager { mIconSize = context.getResources().getDimensionPixelSize(R.dimen.split_icon_size); final FrameLayout rootLayout = (FrameLayout) LayoutInflater.from(context) .inflate(R.layout.split_decor, null); - mVeilIconView = rootLayout.findViewById(R.id.split_resizing_icon); + mResizingIconView = rootLayout.findViewById(R.id.split_resizing_icon); final WindowManager.LayoutParams lp = new WindowManager.LayoutParams( 0 /* width */, 0 /* height */, TYPE_APPLICATION_OVERLAY, @@ -211,55 +190,28 @@ public class SplitDecorManager extends WindowlessWindowManager { } mHostLeash = null; mIcon = null; - mVeilIconView = null; - mIsCurrentlyChanging = false; + mResizingIconView = null; + mIsResizing = false; mShown = false; mOldMainBounds.setEmpty(); mOldSideBounds.setEmpty(); - mInstantaneousBounds.setEmpty(); + mResizingBounds.setEmpty(); } - /** - * Called on every frame when an app is getting resized, and controls the showing & hiding of - * the app veil. IMPORTANT: There is one SplitDecorManager for each task, so if two tasks are - * getting resized simultaneously, this method is called in parallel on the other - * SplitDecorManager too. In general, we want to hide the app behind a veil when: - * a) the app is stretching past its original bounds (because app content layout doesn't - * update mid-stretch). - * b) the app is resizing down from fullscreen (because there is no parallax effect that - * makes every app look good in this scenario). - * In the world of flexible split, where apps can go offscreen, there is an exception to this: - * - We do NOT hide the app when it is going offscreen, even though it is technically - * getting larger and would qualify for condition (a). Instead, we use parallax to give - * the illusion that the app is getting pushed offscreen by the divider. - * - * @param resizingTask The task that is getting resized. - * @param newBounds The bounds that that we are updating this surface to. This can be an - * instantaneous bounds, just for a frame, during a drag or animation. - * @param sideBounds The bounds of the OPPOSITE task in the split layout. This is used just for - * reference/calculation, the surface of the other app won't be set here. - * @param displayBounds The bounds of the entire display. - * @param t The transaction on which these changes will be bundled. - * @param offsetX The x-translation applied to the task surface for parallax. Will be used to - * position the task screenshot and/or icon veil. - * @param offsetY The x-translation applied to the task surface for parallax. Will be used to - * position the task screenshot and/or icon veil. - * @param immediately {@code true} if the veil should transition in/out instantly, with no - * animation. - */ + /** Showing resizing hint. */ public void onResizing(ActivityManager.RunningTaskInfo resizingTask, Rect newBounds, - Rect sideBounds, Rect displayBounds, SurfaceControl.Transaction t, int offsetX, - int offsetY, boolean immediately) { - if (mVeilIconView == null) { + Rect sideBounds, SurfaceControl.Transaction t, int offsetX, int offsetY, + boolean immediately, float[] veilColor) { + if (mResizingIconView == null) { return; } - if (!mIsCurrentlyChanging) { - mIsCurrentlyChanging = true; + if (!mIsResizing) { + mIsResizing = true; mOldMainBounds.set(newBounds); mOldSideBounds.set(sideBounds); } - mInstantaneousBounds.set(newBounds); + mResizingBounds.set(newBounds); mOffsetX = offsetX; mOffsetY = offsetY; @@ -271,10 +223,7 @@ public class SplitDecorManager extends WindowlessWindowManager { final boolean isStretchingPastOriginalBounds = newBounds.width() > mOldMainBounds.width() || newBounds.height() > mOldMainBounds.height(); - final boolean isFullyOnscreen = displayBounds.contains(newBounds); - boolean showVeil = isFullyOnscreen - && (isResizingDownFromFullscreen || isStretchingPastOriginalBounds); - + final boolean showVeil = isResizingDownFromFullscreen || isStretchingPastOriginalBounds; final boolean update = showVeil != mShown; if (update && mFadeAnimator != null && mFadeAnimator.isRunning()) { // If we need to animate and animator still running, cancel it before we ensure both @@ -284,8 +233,8 @@ public class SplitDecorManager extends WindowlessWindowManager { if (mBackgroundLeash == null) { mBackgroundLeash = SurfaceUtils.makeColorLayer(mHostLeash, - RESIZING_BACKGROUND_SURFACE_NAME); - t.setColor(mBackgroundLeash, getResizingBackgroundColor(resizingTask)) + RESIZING_BACKGROUND_SURFACE_NAME, mSurfaceSession); + t.setColor(mBackgroundLeash, veilColor) .setLayer(mBackgroundLeash, Integer.MAX_VALUE - 1); } @@ -294,9 +243,9 @@ public class SplitDecorManager extends WindowlessWindowManager { final int left = isLandscape ? mOldMainBounds.width() : 0; final int top = isLandscape ? 0 : mOldMainBounds.height(); mGapBackgroundLeash = SurfaceUtils.makeColorLayer(mHostLeash, - GAP_BACKGROUND_SURFACE_NAME); + GAP_BACKGROUND_SURFACE_NAME, mSurfaceSession); // Fill up another side bounds area. - t.setColor(mGapBackgroundLeash, getResizingBackgroundColor(resizingTask)) + t.setColor(mGapBackgroundLeash, veilColor) .setLayer(mGapBackgroundLeash, Integer.MAX_VALUE - 2) .setPosition(mGapBackgroundLeash, left, top) .setWindowCrop(mGapBackgroundLeash, sideBounds.width(), sideBounds.height()); @@ -304,8 +253,8 @@ public class SplitDecorManager extends WindowlessWindowManager { if (mIcon == null && resizingTask.topActivityInfo != null) { mIcon = mIconProvider.getIcon(resizingTask.topActivityInfo); - mVeilIconView.setImageDrawable(mIcon); - mVeilIconView.setVisibility(View.VISIBLE); + mResizingIconView.setImageDrawable(mIcon); + mResizingIconView.setVisibility(View.VISIBLE); WindowManager.LayoutParams lp = (WindowManager.LayoutParams) mViewHost.getView().getLayoutParams(); @@ -325,26 +274,18 @@ public class SplitDecorManager extends WindowlessWindowManager { t.setAlpha(mIconLeash, showVeil ? 1f : 0f); t.setVisibility(mIconLeash, showVeil); } else { - startFadeAnimation( - showVeil, - false /* releaseSurface */, - null /* finishedCallback */, - false /* addDelay */ - ); + startFadeAnimation(showVeil, false, null); } mShown = showVeil; } } /** Stops showing resizing hint. */ - public void onResized(SurfaceControl.Transaction t, - @Nullable Consumer<Boolean> animFinishedCallback) { + public void onResized(SurfaceControl.Transaction t, Consumer<Boolean> animFinishedCallback) { if (mScreenshotAnimator != null && mScreenshotAnimator.isRunning()) { mScreenshotAnimator.cancel(); } - if (animFinishedCallback != null) { - mAnimFinishCallbacks.put(animFinishedCallback, false); - } + if (mScreenshot != null) { t.setPosition(mScreenshot, mOffsetX, mOffsetY); @@ -369,23 +310,28 @@ public class SplitDecorManager extends WindowlessWindowManager { animT.apply(); animT.close(); mScreenshot = null; - updateCallbackStatus(true /*callbackStatus*/, animFinishedCallback); + + if (mRunningAnimationCount == 0 && animFinishedCallback != null) { + animFinishedCallback.accept(true); + } } }); mScreenshotAnimator.start(); } - if (mVeilIconView == null) { - updateCallbackStatus(false /*callbackStatus*/, animFinishedCallback); + if (mResizingIconView == null) { + if (mRunningAnimationCount == 0 && animFinishedCallback != null) { + animFinishedCallback.accept(false); + } return; } - mIsCurrentlyChanging = false; + mIsResizing = false; mOffsetX = 0; mOffsetY = 0; mOldMainBounds.setEmpty(); mOldSideBounds.setEmpty(); - mInstantaneousBounds.setEmpty(); + mResizingBounds.setEmpty(); if (mFadeAnimator != null && mFadeAnimator.isRunning()) { if (!mShown) { // If fade-out animation is running, just add release callback to it. @@ -396,146 +342,32 @@ public class SplitDecorManager extends WindowlessWindowManager { releaseDecor(finishT); finishT.apply(); finishT.close(); - updateCallbackStatus(true /*callbackStatus*/, animFinishedCallback); + if (mRunningAnimationCount == 0 && animFinishedCallback != null) { + animFinishedCallback.accept(true); + } } }); return; } } if (mShown) { - if (animFinishedCallback != null) { - // Update to return true. Will be executed when fadeOutDecor anims finish - mAnimFinishCallbacks.put(animFinishedCallback, true); - } - fadeOutDecor(()-> {}, false /* addDelay */); + fadeOutDecor(()-> { + if (mRunningAnimationCount == 0 && animFinishedCallback != null) { + animFinishedCallback.accept(true); + } + }); } else { // Decor surface is hidden so release it directly. releaseDecor(t); - updateCallbackStatus(false /*callbackStatus*/, animFinishedCallback); - } - } - - /** - * Updates the value for the provided {@param callback} and optionally executes the callback - * list if no animations are in progress. - * - * @param callbackStatus the parameter that will be passed into the {@param callback} - * @param callback no-op if null, must be added to {@link #mAnimFinishCallbacks} prior to - * updating via this method - */ - private void updateCallbackStatus(boolean callbackStatus, - @Nullable Consumer<Boolean> callback) { - if (callback == null) { - return; - } - if (mAnimFinishCallbacks.get(callback) == null) { - Log.e(TAG, "Finish callback not found!"); - return; - } - - mAnimFinishCallbacks.put(callback, callbackStatus); - if (mRunningAnimationCount != 0) { - // Not all animations finished, wait - return; - } - - // Run all finish callbacks - for (Map.Entry<Consumer<Boolean>, Boolean> c : mAnimFinishCallbacks.entrySet()) { - c.getKey().accept(c.getValue()); - } - mAnimFinishCallbacks.clear(); - } - - /** - * Called (on every frame) when two split apps are swapping, and a veil is needed. - */ - public void drawNextVeilFrameForSwapAnimation(ActivityManager.RunningTaskInfo resizingTask, - Rect newBounds, SurfaceControl.Transaction t, boolean isGoingBehind, - SurfaceControl leash, float iconOffsetX, float iconOffsetY) { - if (mVeilIconView == null) { - return; - } - - if (!mIsCurrentlyChanging) { - mIsCurrentlyChanging = true; - } - - mInstantaneousBounds.set(newBounds); - mOffsetX = (int) iconOffsetX; - mOffsetY = (int) iconOffsetY; - - t.setLayer(leash, isGoingBehind - ? ANIMATING_BACK_APP_VEIL_LAYER - : ANIMATING_FRONT_APP_VEIL_LAYER); - - if (!mShown) { - if (mFadeAnimator != null && mFadeAnimator.isRunning()) { - // Cancel mFadeAnimator if it is running - mFadeAnimator.cancel(); + if (mRunningAnimationCount == 0 && animFinishedCallback != null) { + animFinishedCallback.accept(false); } } - - if (mBackgroundLeash == null) { - // Initialize background - mBackgroundLeash = SurfaceUtils.makeColorLayer(mHostLeash, - RESIZING_BACKGROUND_SURFACE_NAME); - t.setColor(mBackgroundLeash, getResizingBackgroundColor(resizingTask)) - .setLayer(mBackgroundLeash, Integer.MAX_VALUE - 1); - } - - if (mIcon == null && resizingTask.topActivityInfo != null) { - // Initialize icon - mIcon = mIconProvider.getIcon(resizingTask.topActivityInfo); - mVeilIconView.setImageDrawable(mIcon); - mVeilIconView.setVisibility(View.VISIBLE); - - WindowManager.LayoutParams lp = - (WindowManager.LayoutParams) mViewHost.getView().getLayoutParams(); - lp.width = mIconSize; - lp.height = mIconSize; - mViewHost.relayout(lp); - - t.setLayer(mIconLeash, Integer.MAX_VALUE); - } - - t.setPosition(mIconLeash, - newBounds.width() / 2 - mIconSize / 2 - mOffsetX, - newBounds.height() / 2 - mIconSize / 2 - mOffsetY); - - // If this is the first frame, we need to trigger the veil's fade-in animation. - if (!mShown) { - startFadeAnimation( - true /* show */, - false /* releaseSurface */, - null /* finishedCallball */, - false /* addDelay */ - ); - mShown = true; - } - } - - /** Called at the end of the swap animation. */ - public void fadeOutVeilAndCleanUp(SurfaceControl.Transaction t) { - if (mVeilIconView == null) { - return; - } - - // Recenter icon - t.setPosition(mIconLeash, - mInstantaneousBounds.width() / 2f - mIconSize / 2f, - mInstantaneousBounds.height() / 2f - mIconSize / 2f); - - mIsCurrentlyChanging = false; - mOffsetX = 0; - mOffsetY = 0; - mInstantaneousBounds.setEmpty(); - - fadeOutDecor(() -> {}, true /* addDelay */); } /** Screenshot host leash and attach on it if meet some conditions */ public void screenshotIfNeeded(SurfaceControl.Transaction t) { - if (!mShown && mIsCurrentlyChanging && !mOldMainBounds.equals(mInstantaneousBounds)) { + if (!mShown && mIsResizing && !mOldMainBounds.equals(mResizingBounds)) { if (mScreenshotAnimator != null && mScreenshotAnimator.isRunning()) { mScreenshotAnimator.cancel(); } else if (mScreenshot != null) { @@ -553,7 +385,7 @@ public class SplitDecorManager extends WindowlessWindowManager { public void setScreenshotIfNeeded(SurfaceControl screenshot, SurfaceControl.Transaction t) { if (screenshot == null || !screenshot.isValid()) return; - if (!mShown && mIsCurrentlyChanging && !mOldMainBounds.equals(mInstantaneousBounds)) { + if (!mShown && mIsResizing && !mOldMainBounds.equals(mResizingBounds)) { if (mScreenshotAnimator != null && mScreenshotAnimator.isRunning()) { mScreenshotAnimator.cancel(); } else if (mScreenshot != null) { @@ -568,41 +400,24 @@ public class SplitDecorManager extends WindowlessWindowManager { /** Fade-out decor surface with animation end callback, if decor is hidden, run the callback * directly. */ - public void fadeOutDecor(Runnable finishedCallback, boolean addDelay) { + public void fadeOutDecor(Runnable finishedCallback) { if (mShown) { // If previous animation is running, just cancel it. if (mFadeAnimator != null && mFadeAnimator.isRunning()) { mFadeAnimator.cancel(); } - startFadeAnimation( - false /* show */, true /* releaseSurface */, finishedCallback, addDelay); + startFadeAnimation(false /* show */, true, finishedCallback); mShown = false; } else { if (finishedCallback != null) finishedCallback.run(); } } - /** - * Fades the veil in or out. Called at the first frame of a movement or resize when a veil is - * needed (with show = true), and called again at the end (with show = false). - * @param addDelay If true, adds a short delay before fading out to get the app behind the veil - * time to redraw. - */ private void startFadeAnimation(boolean show, boolean releaseSurface, - @Nullable Runnable finishedCallback, boolean addDelay) { + Runnable finishedCallback) { final SurfaceControl.Transaction animT = new SurfaceControl.Transaction(); - final Consumer<Boolean> wrappedFinishCallback = aBoolean -> { - if (finishedCallback != null) { - finishedCallback.run(); - } - }; - mAnimFinishCallbacks.put(wrappedFinishCallback, false); - mFadeAnimator = ValueAnimator.ofFloat(0f, 1f); - if (addDelay) { - mFadeAnimator.setStartDelay(VEIL_DELAY_DURATION); - } mFadeAnimator.setDuration(FADE_DURATION); mFadeAnimator.addUpdateListener(valueAnimator-> { final float progress = (float) valueAnimator.getAnimatedValue(); @@ -643,7 +458,10 @@ public class SplitDecorManager extends WindowlessWindowManager { } animT.apply(); animT.close(); - updateCallbackStatus(true /*callbackStatus*/, wrappedFinishCallback); + + if (mRunningAnimationCount == 0 && finishedCallback != null) { + finishedCallback.run(); + } } }); mFadeAnimator.start(); @@ -662,15 +480,10 @@ public class SplitDecorManager extends WindowlessWindowManager { } if (mIcon != null) { - mVeilIconView.setVisibility(View.GONE); - mVeilIconView.setImageDrawable(null); + mResizingIconView.setVisibility(View.GONE); + mResizingIconView.setImageDrawable(null); t.hide(mIconLeash); mIcon = null; } } - - private static float[] getResizingBackgroundColor(ActivityManager.RunningTaskInfo taskInfo) { - final int taskBgColor = taskInfo.taskDescription.getBackgroundColor(); - return Color.valueOf(taskBgColor == -1 ? Color.WHITE : taskBgColor).getComponents(); - } } diff --git a/wmshell/src/com/android/wm/shell/common/split/SplitLayout.java b/wmshell/src/com/android/wm/shell/common/split/SplitLayout.java index 1b1f99cfca..8ced76fd23 100644 --- a/wmshell/src/com/android/wm/shell/common/split/SplitLayout.java +++ b/wmshell/src/com/android/wm/shell/common/split/SplitLayout.java @@ -18,24 +18,21 @@ package com.android.wm.shell.common.split; import static android.content.res.Configuration.SCREEN_HEIGHT_DP_UNDEFINED; import static android.content.res.Configuration.SCREEN_WIDTH_DP_UNDEFINED; +import static android.view.WindowManager.DOCKED_BOTTOM; +import static android.view.WindowManager.DOCKED_INVALID; import static android.view.WindowManager.DOCKED_LEFT; +import static android.view.WindowManager.DOCKED_RIGHT; import static android.view.WindowManager.DOCKED_TOP; import static com.android.internal.jank.InteractionJankMonitor.CUJ_SPLIT_SCREEN_DOUBLE_TAP_DIVIDER; import static com.android.internal.jank.InteractionJankMonitor.CUJ_SPLIT_SCREEN_RESIZE; -import static com.android.wm.shell.shared.animation.Interpolators.EMPHASIZED; -import static com.android.wm.shell.shared.animation.Interpolators.FAST_OUT_SLOW_IN; -import static com.android.wm.shell.shared.animation.Interpolators.LINEAR; -import static com.android.wm.shell.shared.split.SplitScreenConstants.ANIMATING_OFFSCREEN_TAP; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_10_90; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_90_10; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_3_10_45_45; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_3_45_45_10; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_END_AND_DISMISS; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_START_AND_DISMISS; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.animation.Interpolators.DIM_INTERPOLATOR; +import static com.android.wm.shell.animation.Interpolators.SLOWDOWN_INTERPOLATOR; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_END_AND_DISMISS; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_START_AND_DISMISS; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DRAG_DIVIDER; import android.animation.Animator; @@ -47,53 +44,36 @@ import android.app.ActivityManager; import android.content.Context; import android.content.res.Configuration; import android.content.res.Resources; -import android.graphics.Insets; +import android.graphics.Point; import android.graphics.Rect; -import android.os.Handler; -import android.util.Log; import android.view.Display; -import android.view.InsetsController; -import android.view.InsetsSource; import android.view.InsetsSourceControl; import android.view.InsetsState; import android.view.RoundedCorner; import android.view.SurfaceControl; import android.view.WindowInsets; import android.view.WindowManager; -import android.view.animation.Interpolator; -import android.view.animation.PathInterpolator; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.jank.InteractionJankMonitor; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.Flags; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.ShellTaskOrganizer; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayImeController; import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.DisplayLayout; -import com.android.wm.shell.common.pip.PipUtils; -import com.android.wm.shell.common.split.DividerSnapAlgorithm.SnapTarget; -import com.android.wm.shell.common.split.SplitWindowManager.ParentContainerCallbacks; +import com.android.wm.shell.common.InteractionJankMonitorUtils; +import com.android.wm.shell.common.split.SplitScreenConstants.PersistentSnapPosition; +import com.android.wm.shell.common.split.SplitScreenConstants.SnapPosition; +import com.android.wm.shell.common.split.SplitScreenConstants.SplitPosition; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.desktopmode.DesktopState; -import com.android.wm.shell.shared.split.SplitScreenConstants.PersistentSnapPosition; -import com.android.wm.shell.shared.split.SplitScreenConstants.SnapPosition; -import com.android.wm.shell.shared.split.SplitScreenConstants.SplitPosition; -import com.android.wm.shell.splitscreen.SplitStatusBarHider; -import com.android.wm.shell.splitscreen.StageTaskListener; - -import com.google.android.msdl.domain.MSDLPlayer; import java.io.PrintWriter; -import java.util.ArrayList; -import java.util.List; import java.util.function.Consumer; /** @@ -102,97 +82,39 @@ import java.util.function.Consumer; */ public final class SplitLayout implements DisplayInsetsController.OnInsetsChangedListener { private static final String TAG = "SplitLayout"; - /** No parallax effect when the user is dragging the divider */ public static final int PARALLAX_NONE = 0; public static final int PARALLAX_DISMISSING = 1; - /** Parallax effect (center-aligned) when the user is dragging the divider */ public static final int PARALLAX_ALIGN_CENTER = 2; - /** - * A custom parallax effect for flexible split. When an app is being pushed/pulled offscreen, - * we use a specific parallax to give the impression that it is stuck to the divider. - * Otherwise, we fall back to PARALLAX_ALIGN_CENTER behavior. - */ - public static final int PARALLAX_FLEX = 3; public static final int FLING_RESIZE_DURATION = 250; + private static final int FLING_SWITCH_DURATION = 350; private static final int FLING_ENTER_DURATION = 450; private static final int FLING_EXIT_DURATION = 450; - private static final int FLING_OFFSCREEN_DURATION = 500; - - // Here are some (arbitrarily decided) layer definitions used during animations to make sure the - // layers stay in order. (During transitions, everything is reparented onto a transition root - // and can be freely relayered.) - public static final int ANIMATING_DIVIDER_LAYER = 0; - public static final int ANIMATING_FRONT_APP_VEIL_LAYER = ANIMATING_DIVIDER_LAYER + 20; - public static final int ANIMATING_FRONT_APP_LAYER = ANIMATING_DIVIDER_LAYER + 10; - public static final int ANIMATING_BACK_APP_VEIL_LAYER = ANIMATING_DIVIDER_LAYER - 10; - public static final int ANIMATING_BACK_APP_LAYER = ANIMATING_DIVIDER_LAYER - 20; - // The divider is on the split root, and is sibling with the stage roots. We want to keep it - // above the app stages. - public static final int RESTING_DIVIDER_LAYER = Integer.MAX_VALUE; - // The touch layer is on a stage root, and is sibling with things like the app activity itself - // and the app veil. We want it to be above all those. - public static final int RESTING_TOUCH_LAYER = Integer.MAX_VALUE; - // The dim layer is also on the stage root, and stays under the touch layer. - public static final int RESTING_DIM_LAYER = RESTING_TOUCH_LAYER - 1; - - // Animation specs for the swap animation - private static final int SWAP_ANIMATION_TOTAL_DURATION = 500; - private static final float SWAP_ANIMATION_SHRINK_DURATION = 83; - private static final float SWAP_ANIMATION_SHRINK_MARGIN_DP = 14; - private static final Interpolator SHRINK_INTERPOLATOR = - new PathInterpolator(0.2f, 0f, 0f, 1f); - private static final Interpolator GROW_INTERPOLATOR = - new PathInterpolator(0.45f, 0f, 0.5f, 1f); - @ShellMainThread - private final Handler mHandler; - private final SplitStatusBarHider mStatusBarHider; - - /** Singleton source of truth for the current state of split screen on this device. */ - private final SplitState mSplitState; - - /** A haptics controller that plays haptic effects. */ - private final MSDLPlayer mMSDLPlayer; private int mDividerWindowWidth; private int mDividerInsets; private int mDividerSize; private final Rect mTempRect = new Rect(); - private final Rect mTempRect2 = new Rect(); private final Rect mRootBounds = new Rect(); private final Rect mDividerBounds = new Rect(); - /** - * A list of stage bounds, kept in order from top/left to bottom/right. These are the sizes of - * the app surfaces, not necessarily the same as the size of the rendered content. - * See {@link #mContentBounds}. - */ - private final List<Rect> mStageBounds = List.of(new Rect(), new Rect()); - /** - * A list of app content bounds, kept in order from top/left to bottom/right. These are the - * sizes of the rendered app contents, not necessarily the same as the size of the drawn app - * surfaces. See {@link #mStageBounds}. - */ - private final List<Rect> mContentBounds = List.of(new Rect(), new Rect()); + // Bounds1 final position should be always at top or left + private final Rect mBounds1 = new Rect(); + // Bounds2 final position should be always at bottom or right + private final Rect mBounds2 = new Rect(); // The temp bounds outside of display bounds for side stage when split screen inactive to avoid // flicker next time active split screen. private final Rect mInvisibleBounds = new Rect(); - /** - * Areas on the screen that the user can touch to shift the layout, bringing offscreen apps - * onscreen. If n apps are offscreen, there should be n such areas. Empty otherwise. - */ - private final List<OffscreenTouchZone> mOffscreenTouchZones = new ArrayList<>(); + private final Rect mWinBounds1 = new Rect(); + private final Rect mWinBounds2 = new Rect(); private final SplitLayoutHandler mSplitLayoutHandler; private final SplitWindowManager mSplitWindowManager; private final DisplayController mDisplayController; private final DisplayImeController mDisplayImeController; - private final ParentContainerCallbacks mParentContainerCallbacks; private final ImePositionProcessor mImePositionProcessor; private final ResizingEffectPolicy mSurfaceEffectPolicy; private final ShellTaskOrganizer mTaskOrganizer; private final InsetsState mInsetsState = new InsetsState(); - private final DesktopState mDesktopState; - private Insets mPinnedTaskbarInsets = Insets.NONE; private Context mContext; @VisibleForTesting DividerSnapAlgorithm mDividerSnapAlgorithm; @@ -209,20 +131,14 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange private final boolean mDimNonImeSide; private final boolean mAllowLeftRightSplitInPortrait; - private final InteractionJankMonitor mInteractionJankMonitor; private boolean mIsLeftRightSplit; private ValueAnimator mDividerFlingAnimator; - private AnimatorSet mSwapAnimator; public SplitLayout(String windowName, Context context, Configuration configuration, SplitLayoutHandler splitLayoutHandler, - ParentContainerCallbacks parentContainerCallbacks, + SplitWindowManager.ParentContainerCallbacks parentContainerCallbacks, DisplayController displayController, DisplayImeController displayImeController, - ShellTaskOrganizer taskOrganizer, int parallaxType, SplitState splitState, - @ShellMainThread Handler handler, SplitStatusBarHider statusBarHider, - DesktopState desktopState, MSDLPlayer msdlPlayer) { - mHandler = handler; - mStatusBarHider = statusBarHider; + ShellTaskOrganizer taskOrganizer, int parallaxType) { mContext = context.createConfigurationContext(configuration); mOrientation = configuration.orientation; mRotation = configuration.windowConfiguration.getRotation(); @@ -231,27 +147,22 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange mSplitLayoutHandler = splitLayoutHandler; mDisplayController = displayController; mDisplayImeController = displayImeController; - mParentContainerCallbacks = parentContainerCallbacks; mSplitWindowManager = new SplitWindowManager(windowName, mContext, configuration, parentContainerCallbacks); mTaskOrganizer = taskOrganizer; mImePositionProcessor = new ImePositionProcessor(mContext.getDisplayId()); - mSurfaceEffectPolicy = new ResizingEffectPolicy(parallaxType, this); - mSplitState = splitState; - mDesktopState = desktopState; - mMSDLPlayer = msdlPlayer; + mSurfaceEffectPolicy = new ResizingEffectPolicy(parallaxType); final Resources res = mContext.getResources(); mDimNonImeSide = res.getBoolean(R.bool.config_dimNonImeAttachedSide); mAllowLeftRightSplitInPortrait = SplitScreenUtils.allowLeftRightSplitInPortrait(res); mIsLeftRightSplit = SplitScreenUtils.isLeftRightSplit(mAllowLeftRightSplitInPortrait, configuration); - statusBarHider.onLeftRightSplitUpdated(mIsLeftRightSplit); + updateDividerConfig(mContext); mRootBounds.set(configuration.windowConfiguration.getBounds()); - updateLayouts(); - mInteractionJankMonitor = InteractionJankMonitor.getInstance(); + mDividerSnapAlgorithm = getSnapAlgorithm(mContext, mRootBounds); resetDividerPosition(); updateInvisibleRect(); } @@ -276,26 +187,26 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange mDividerWindowWidth = mDividerSize + 2 * mDividerInsets; } - /** Gets the bounds of the top/left app in screen-based coordinates. */ - public Rect getTopLeftBounds() { - return mStageBounds.getFirst(); + /** Gets bounds of the primary split with screen based coordinate. */ + public Rect getBounds1() { + return new Rect(mBounds1); } - /** Gets the bounds of the bottom/right app in screen-based coordinates. */ - public Rect getBottomRightBounds() { - return mStageBounds.getLast(); - } - - /** Gets the bounds of the top/left app in parent-based coordinates. */ - public Rect getTopLeftRefBounds() { - Rect outBounds = getTopLeftBounds(); + /** Gets bounds of the primary split with parent based coordinate. */ + public Rect getRefBounds1() { + Rect outBounds = getBounds1(); outBounds.offset(-mRootBounds.left, -mRootBounds.top); return outBounds; } - /** Gets the bounds of the bottom/right app in parent-based coordinates. */ - public Rect getBottomRightRefBounds() { - Rect outBounds = getBottomRightBounds(); + /** Gets bounds of the secondary split with screen based coordinate. */ + public Rect getBounds2() { + return new Rect(mBounds2); + } + + /** Gets bounds of the secondary split with parent based coordinate. */ + public Rect getRefBounds2() { + final Rect outBounds = getBounds2(); outBounds.offset(-mRootBounds.left, -mRootBounds.top); return outBounds; } @@ -305,74 +216,51 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange return new Rect(mRootBounds); } - /** Copies the top/left bounds to the provided Rect (screen-based coordinates). */ - public void copyTopLeftBounds(Rect rect) { - rect.set(getTopLeftBounds()); - } - - /** Copies the top/left bounds to the provided Rect (parent-based coordinates). */ - public void copyTopLeftRefBounds(Rect rect) { - copyTopLeftBounds(rect); - rect.offset(-mRootBounds.left, -mRootBounds.top); - } - - /** Copies the bottom/right bounds to the provided Rect (screen-based coordinates). */ - public void copyBottomRightBounds(Rect rect) { - rect.set(getBottomRightBounds()); - } - - /** Copies the bottom/right bounds to the provided Rect (parent-based coordinates). */ - public void copyBottomRightRefBounds(Rect rect) { - copyBottomRightBounds(rect); - rect.offset(-mRootBounds.left, -mRootBounds.top); - } - - /** - * Gets the content bounds of the top/left app (the bounds of where the app contents would be - * drawn). Might be larger than the available surface space. - */ - public Rect getTopLeftContentBounds() { - return mContentBounds.getFirst(); - } - - /** - * Gets the content bounds of the bottom/right app (the bounds of where the app contents would - * be drawn). Might be larger than the available surface space. - */ - public Rect getBottomRightContentBounds() { - return mContentBounds.getLast(); - } - - /** - * Gets the bounds of divider window, in screen-based coordinates. This is not the visible - * bounds you see on screen, but the actual behind-the-scenes window bounds, which is larger. - */ + /** Gets bounds of divider window with screen based coordinate. */ public Rect getDividerBounds() { return new Rect(mDividerBounds); } - /** - * Gets the bounds of divider window, in parent-based coordinates. This is not the visible - * bounds you see on screen, but the actual behind-the-scenes window bounds, which is larger. - */ + /** Gets bounds of divider window with parent based coordinate. */ public Rect getRefDividerBounds() { final Rect outBounds = getDividerBounds(); outBounds.offset(-mRootBounds.left, -mRootBounds.top); return outBounds; } - /** - * Gets the bounds of divider window, in screen-based coordinates. This is not the visible - * bounds you see on screen, but the actual behind-the-scenes window bounds, which is larger. - */ + /** Gets bounds of the primary split with screen based coordinate on the param Rect. */ + public void getBounds1(Rect rect) { + rect.set(mBounds1); + } + + /** Gets bounds of the primary split with parent based coordinate on the param Rect. */ + public void getRefBounds1(Rect rect) { + getBounds1(rect); + rect.offset(-mRootBounds.left, -mRootBounds.top); + } + + /** Gets bounds of the secondary split with screen based coordinate on the param Rect. */ + public void getBounds2(Rect rect) { + rect.set(mBounds2); + } + + /** Gets bounds of the secondary split with parent based coordinate on the param Rect. */ + public void getRefBounds2(Rect rect) { + getBounds2(rect); + rect.offset(-mRootBounds.left, -mRootBounds.top); + } + + /** Gets root bounds of the whole split layout on the param Rect. */ + public void getRootBounds(Rect rect) { + rect.set(mRootBounds); + } + + /** Gets bounds of divider window with screen based coordinate on the param Rect. */ public void getDividerBounds(Rect rect) { rect.set(mDividerBounds); } - /** - * Gets the bounds of divider window, in parent-based coordinates. This is not the visible - * bounds you see on screen, but the actual behind-the-scenes window bounds, which is larger. - */ + /** Gets bounds of divider window with parent based coordinate on the param Rect. */ public void getRefDividerBounds(Rect rect) { getDividerBounds(rect); rect.offset(-mRootBounds.left, -mRootBounds.top); @@ -394,11 +282,6 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange return mDividerPosition; } - /** Returns the haptic player used in this class. */ - public MSDLPlayer getHapticPlayer() { - return mMSDLPlayer; - } - /** * Finds the {@link SnapPosition} nearest to the current divider position. */ @@ -406,28 +289,13 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange return mDividerSnapAlgorithm.calculateNearestSnapPosition(mDividerPosition); } - /** Updates the {@link SplitState} using the current divider position. */ - public void updateStateWithCurrentPosition() { - mSplitState.set(calculateCurrentSnapPosition()); - } - /** * Returns the divider position as a fraction from 0 to 1. */ public float getDividerPositionAsFraction() { - if (Flags.enableFlexibleTwoAppSplit()) { - return Math.min(1f, Math.max(0f, mIsLeftRightSplit - ? (getTopLeftBounds().right + getBottomRightBounds().left) / 2f - / getDisplayWidth() - : (getTopLeftBounds().bottom + getBottomRightBounds().top) / 2f - / getDisplayHeight())); - } else { - return Math.min(1f, Math.max(0f, mIsLeftRightSplit - ? (float) ((getTopLeftBounds().right + getBottomRightBounds().left) / 2f) - / getBottomRightBounds().right - : (float) ((getTopLeftBounds().bottom + getBottomRightBounds().top) / 2f) - / getBottomRightBounds().bottom)); - } + return Math.min(1f, Math.max(0f, mIsLeftRightSplit + ? (float) ((mBounds1.right + mBounds2.left) / 2f) / mBounds2.right + : (float) ((mBounds1.bottom + mBounds2.top) / 2f) / mBounds2.bottom)); } private void updateInvisibleRect() { @@ -438,59 +306,6 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange mIsLeftRightSplit ? 0 : mRootBounds.bottom); } - /** - * (Re)calculates and activates any needed touch zones, so the user can tap them and retrieve - * offscreen apps. - */ - public void populateTouchZones() { - if (!Flags.enableFlexibleTwoAppSplit()) { - return; - } - - if (!mOffscreenTouchZones.isEmpty()) { - removeTouchZones(); - } - - int currentPosition = mSplitState.get(); - // TODO (b/349828130): Can delete this warning after brief soak time. - if (currentPosition != calculateCurrentSnapPosition()) { - Log.wtf(TAG, "SplitState is " + mSplitState.get() - + ", expected " + calculateCurrentSnapPosition()); - } - - switch (currentPosition) { - case SNAP_TO_2_10_90: - case SNAP_TO_3_10_45_45: - mOffscreenTouchZones.add(new OffscreenTouchZone(true /* isTopLeft */, - () -> flingDividerToOtherSide(currentPosition))); - break; - case SNAP_TO_2_90_10: - case SNAP_TO_3_45_45_10: - mOffscreenTouchZones.add(new OffscreenTouchZone(false /* isTopLeft */, - () -> flingDividerToOtherSide(currentPosition))); - break; - } - - mOffscreenTouchZones.forEach(mParentContainerCallbacks::inflateOnStageRoot); - } - - /** Removes all touch zones. */ - public void removeTouchZones() { - if (!Flags.enableFlexibleTwoAppSplit()) { - return; - } - - // TODO (b/349828130): It would be good to reuse a Transaction from StageCoordinator's - // mTransactionPool here, but passing it through SplitLayout and specifically - // SplitLayout.release() is complicated because that function is purposely called with a - // null value sometimes. When that function is refactored, we should also pass the - // Transaction in here. - SurfaceControl.Transaction t = new SurfaceControl.Transaction(); - mOffscreenTouchZones.forEach(touchZone -> touchZone.release(t)); - t.apply(); - mOffscreenTouchZones.clear(); - } - /** Applies new configuration, returns {@code false} if there's no effect to the layout. */ public boolean updateConfiguration(Configuration configuration) { // Update the split bounds when necessary. Besides root bounds changed, split bounds need to @@ -524,8 +339,7 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange mIsLargeScreen = configuration.smallestScreenWidthDp >= 600; mIsLeftRightSplit = SplitScreenUtils.isLeftRightSplit(mAllowLeftRightSplitInPortrait, configuration); - mStatusBarHider.onLeftRightSplitUpdated(mIsLeftRightSplit); - updateLayouts(); + mDividerSnapAlgorithm = getSnapAlgorithm(mContext, mRootBounds); updateDividerConfig(mContext); initDividerPosition(mTempRect, wasLeftRightSplit); updateInvisibleRect(); @@ -553,9 +367,7 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange mRootBounds.set(tmpRect); mIsLeftRightSplit = SplitScreenUtils.isLeftRightSplit(mAllowLeftRightSplitInPortrait, mIsLargeScreen, mRootBounds.width() >= mRootBounds.height()); - mStatusBarHider.onLeftRightSplitUpdated(mIsLeftRightSplit); - - updateLayouts(); + mDividerSnapAlgorithm = getSnapAlgorithm(mContext, mRootBounds); initDividerPosition(mTempRect, wasLeftRightSplit); } @@ -577,16 +389,10 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange } private void updateBounds(int position) { - updateBounds(position, getTopLeftBounds(), getBottomRightBounds(), mDividerBounds, - true /* setEffectBounds */); + updateBounds(position, mBounds1, mBounds2, mDividerBounds, true /* setEffectBounds */); } - /** - * Updates the bounds of the divider window and both split apps. - * @param position The left/top edge of the visual divider, where the edge of app A meets the - * divider. Not to be confused with the actual divider surface, which is larger - * and overlaps the apps a bit. - */ + /** Updates recording bounds of divider window and both of the splits. */ private void updateBounds(int position, Rect bounds1, Rect bounds2, Rect dividerBounds, boolean setEffectBounds) { dividerBounds.set(mRootBounds); @@ -598,39 +404,17 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange dividerBounds.right = dividerBounds.left + mDividerWindowWidth; bounds1.right = position; bounds2.left = bounds1.right + mDividerSize; - - // For flexible split, expand app offscreen as well - if (mDividerSnapAlgorithm.areOffscreenRatiosSupported()) { - int distanceToCenter = position - mDividerSnapAlgorithm.getMiddleTarget().position; - if (position < mDividerSnapAlgorithm.getMiddleTarget().position) { - bounds1.left += distanceToCenter * 2; - } else { - bounds2.right += distanceToCenter * 2; - } - } - } else { position += mRootBounds.top; dividerBounds.top = position - mDividerInsets; dividerBounds.bottom = dividerBounds.top + mDividerWindowWidth; bounds1.bottom = position; bounds2.top = bounds1.bottom + mDividerSize; - - // For flexible split, expand app offscreen as well - if (mDividerSnapAlgorithm.areOffscreenRatiosSupported()) { - int distanceToCenter = position - mDividerSnapAlgorithm.getMiddleTarget().position; - if (position < mDividerSnapAlgorithm.getMiddleTarget().position) { - bounds1.top += distanceToCenter * 2; - } else { - bounds2.bottom += distanceToCenter * 2; - } - } } DockedDividerUtils.sanitizeStackBounds(bounds1, true /** topLeft */); DockedDividerUtils.sanitizeStackBounds(bounds2, false /** topLeft */); if (setEffectBounds) { - mSurfaceEffectPolicy.applyDividerPosition( - position, mIsLeftRightSplit, mDividerSnapAlgorithm, mSplitState); + mSurfaceEffectPolicy.applyDividerPosition(position, mIsLeftRightSplit); } } @@ -638,8 +422,7 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange public void init() { if (mInitialized) return; mInitialized = true; - mSplitWindowManager.init(this, mInsetsState, false /* isRestoring */, mDesktopState); - populateTouchZones(); + mSplitWindowManager.init(this, mInsetsState, false /* isRestoring */); mDisplayImeController.addPositionProcessor(mImePositionProcessor); } @@ -648,7 +431,6 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange if (!mInitialized) return; mInitialized = false; mSplitWindowManager.release(t); - removeTouchZones(); mDisplayImeController.removePositionProcessor(mImePositionProcessor); mImePositionProcessor.reset(); if (mDividerFlingAnimator != null) { @@ -671,8 +453,7 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange if (resetImePosition) { mImePositionProcessor.reset(); } - mSplitWindowManager.init(this, mInsetsState, true /* isRestoring */, mDesktopState); - populateTouchZones(); + mSplitWindowManager.init(this, mInsetsState, true /* isRestoring */); // Update the surface positions again after recreating the divider in case nothing else // triggers it mSplitLayoutHandler.onLayoutPositionChanging(SplitLayout.this); @@ -681,7 +462,6 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange @Override public void insetsChanged(InsetsState insetsState) { mInsetsState.set(insetsState); - if (!mInitialized) { return; } @@ -690,45 +470,9 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange // flicker. return; } - - // Check to see if insets changed in such a way that the divider needs to be animated to - // a new position. (We only do this when switching to pinned taskbar mode and back). - Insets pinnedTaskbarInsets = calculatePinnedTaskbarInsets(insetsState); - if (!mPinnedTaskbarInsets.equals(pinnedTaskbarInsets)) { - mPinnedTaskbarInsets = pinnedTaskbarInsets; - // Refresh the DividerSnapAlgorithm. - updateLayouts(); - // If the divider is no longer placed on a snap point, animate it to the nearest one - DividerSnapAlgorithm.SnapTarget snapTarget = - findSnapTarget(mDividerPosition, 0, false /* hardDismiss */); - if (snapTarget.position != mDividerPosition) { - snapToTarget(mDividerPosition, snapTarget, - InsetsController.ANIMATION_DURATION_RESIZE, - InsetsController.RESIZE_INTERPOLATOR); - } - } - mSplitWindowManager.onInsetsChanged(insetsState); } - /** - * Calculates the insets that might trigger a divider algorithm recalculation. - */ - private Insets calculatePinnedTaskbarInsets(InsetsState insetsState) { - for (int i = insetsState.sourceSize() - 1; i >= 0; i--) { - final InsetsSource source = insetsState.sourceAt(i); - // If Taskbar is pinned... - if (source.getType() == WindowInsets.Type.navigationBars() - && source.hasFlags(InsetsSource.FLAG_INSETS_ROUNDED_CORNER)) { - // Return Insets representing the pinned taskbar state. - return source.calculateVisibleInsets(mRootBounds, mRootBounds); - } - } - - // Else, divider can calculate based on the full display. - return Insets.NONE; - } - @Override public void insetsControlChanged(InsetsState insetsState, InsetsSourceControl[] activeControls) { @@ -754,9 +498,8 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange */ void updateDividerBounds(int position, boolean shouldUseParallaxEffect) { updateBounds(position); - mSplitLayoutHandler.onLayoutSizeChanging(this, - mSurfaceEffectPolicy.mRetreatingSideParallax.x, - mSurfaceEffectPolicy.mRetreatingSideParallax.y, shouldUseParallaxEffect); + mSplitLayoutHandler.onLayoutSizeChanging(this, mSurfaceEffectPolicy.mParallaxOffset.x, + mSurfaceEffectPolicy.mParallaxOffset.y, shouldUseParallaxEffect); } void setDividerPosition(int position, boolean applyLayoutChange) { @@ -772,7 +515,7 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange * to middle position if the provided SnapTarget is not supported. */ public void setDivideRatio(@PersistentSnapPosition int snapPosition) { - final SnapTarget snapTarget = mDividerSnapAlgorithm.findSnapTarget( + final DividerSnapAlgorithm.SnapTarget snapTarget = mDividerSnapAlgorithm.findSnapTarget( snapPosition); setDividerPosition(snapTarget != null @@ -787,8 +530,8 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange updateBounds(mDividerPosition); mWinToken1 = null; mWinToken2 = null; - getTopLeftContentBounds().setEmpty(); - getBottomRightContentBounds().setEmpty(); + mWinBounds1.setEmpty(); + mWinBounds2.setEmpty(); } /** @@ -806,80 +549,49 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange * Sets new divider position and updates bounds correspondingly. Notifies listener if the new * target indicates dismissing split. */ - public void snapToTarget(int currentPosition, SnapTarget snapTarget, int duration, - Interpolator interpolator) { + public void snapToTarget(int currentPosition, DividerSnapAlgorithm.SnapTarget snapTarget) { switch (snapTarget.snapPosition) { case SNAP_TO_START_AND_DISMISS: - flingDividerPosition(currentPosition, snapTarget.position, duration, interpolator, + flingDividerPosition(currentPosition, snapTarget.position, FLING_RESIZE_DURATION, () -> mSplitLayoutHandler.onSnappedToDismiss(false /* bottomOrRight */, EXIT_REASON_DRAG_DIVIDER)); break; case SNAP_TO_END_AND_DISMISS: - flingDividerPosition(currentPosition, snapTarget.position, duration, interpolator, + flingDividerPosition(currentPosition, snapTarget.position, FLING_RESIZE_DURATION, () -> mSplitLayoutHandler.onSnappedToDismiss(true /* bottomOrRight */, EXIT_REASON_DRAG_DIVIDER)); break; default: - flingDividerPosition(currentPosition, snapTarget.position, duration, interpolator, - () -> { - setDividerPosition(snapTarget.position, true /* applyLayoutChange */); - mSplitState.set(snapTarget.snapPosition); - }); + flingDividerPosition(currentPosition, snapTarget.position, FLING_RESIZE_DURATION, + () -> setDividerPosition(snapTarget.position, true /* applyLayoutChange */)); break; } } - /** - * Same as {@link #snapToTarget(int, SnapTarget, int, Interpolator)}, with default animation - * duration and interpolator. - */ - public void snapToTarget(int currentPosition, SnapTarget snapTarget) { - snapToTarget(currentPosition, snapTarget, FLING_RESIZE_DURATION, - FAST_OUT_SLOW_IN); - } - void onStartDragging() { - mInteractionJankMonitor.begin(getDividerLeash(), mContext, mHandler, - CUJ_SPLIT_SCREEN_RESIZE); + InteractionJankMonitorUtils.beginTracing(CUJ_SPLIT_SCREEN_RESIZE, mContext, + getDividerLeash(), null /* tag */); } void onDraggingCancelled() { - mInteractionJankMonitor.cancel(CUJ_SPLIT_SCREEN_RESIZE); + InteractionJankMonitorUtils.cancelTracing(CUJ_SPLIT_SCREEN_RESIZE); } void onDoubleTappedDivider() { - if (isCurrentlySwapping()) { - return; - } - mSplitLayoutHandler.onDoubleTappedDivider(); } /** - * Returns {@link SnapTarget} which matches passing position and velocity. + * Returns {@link DividerSnapAlgorithm.SnapTarget} which matches passing position and velocity. * If hardDismiss is set to {@code true}, it will be harder to reach dismiss target. */ - public SnapTarget findSnapTarget(int position, float velocity, + public DividerSnapAlgorithm.SnapTarget findSnapTarget(int position, float velocity, boolean hardDismiss) { return mDividerSnapAlgorithm.calculateSnapTarget(position, velocity, hardDismiss); } - /** - * (Re)calculates the split screen logic for this particular display/orientation. Refreshes the - * DividerSnapAlgorithm, which controls divider snap points, and populates a map in SplitState - * with bounds for all valid split layouts. - */ - private void updateLayouts() { - // Update SplitState map - - if (Flags.enableFlexibleTwoAppSplit()) { - mSplitState.populateLayouts( - mRootBounds, mDividerSize, mIsLeftRightSplit, mPinnedTaskbarInsets.toRect()); - } - - // Get new DividerSnapAlgorithm - - final Rect insets = getDisplayStableInsets(mContext); + private DividerSnapAlgorithm getSnapAlgorithm(Context context, Rect rootBounds) { + final Rect insets = getDisplayStableInsets(context); // Make split axis insets value same as the larger one to avoid bounds1 and bounds2 // have difference for avoiding size-compat mode when switching unresizable apps in @@ -889,14 +601,13 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange insets.set(insets.left, largerInsets, insets.right, largerInsets); } - mDividerSnapAlgorithm = new DividerSnapAlgorithm( - mContext.getResources(), - mRootBounds.width(), - mRootBounds.height(), + return new DividerSnapAlgorithm( + context.getResources(), + rootBounds.width(), + rootBounds.height(), mDividerSize, - mIsLeftRightSplit, + !mIsLeftRightSplit, insets, - mPinnedTaskbarInsets.toRect(), mIsLeftRightSplit ? DOCKED_LEFT : DOCKED_TOP /* dockSide */); } @@ -904,53 +615,30 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange public void flingDividerToDismiss(boolean toEnd, int reason) { final int target = toEnd ? mDividerSnapAlgorithm.getDismissEndTarget().position : mDividerSnapAlgorithm.getDismissStartTarget().position; - flingDividerPosition(getDividerPosition(), target, FLING_EXIT_DURATION, FAST_OUT_SLOW_IN, + flingDividerPosition(getDividerPosition(), target, FLING_EXIT_DURATION, () -> mSplitLayoutHandler.onSnappedToDismiss(toEnd, reason)); } /** Fling divider from current position to center position. */ public void flingDividerToCenter(@Nullable Runnable finishCallback) { - final SnapTarget target = mDividerSnapAlgorithm.getMiddleTarget(); - final int pos = target.position; - flingDividerPosition(getDividerPosition(), pos, FLING_ENTER_DURATION, FAST_OUT_SLOW_IN, + final int pos = mDividerSnapAlgorithm.getMiddleTarget().position; + flingDividerPosition(getDividerPosition(), pos, FLING_ENTER_DURATION, () -> { setDividerPosition(pos, true /* applyLayoutChange */); - mSplitState.set(target.snapPosition); if (finishCallback != null) { finishCallback.run(); } }); } - /** - * Moves the divider to the other side of the screen. Does nothing if the divider is in the - * center. - * TODO (b/349828130): Currently only supports the two-app case. For n-apps, - * DividerSnapAlgorithm will need to be refactored, and this function will change as well. - */ - public void flingDividerToOtherSide(@PersistentSnapPosition int currentSnapPosition) { - // If a fling animation is already running, just return. - if (mDividerFlingAnimator != null) return; - - mSplitState.set(ANIMATING_OFFSCREEN_TAP); - switch (currentSnapPosition) { - case SNAP_TO_2_10_90 -> - snapToTarget(mDividerPosition, mDividerSnapAlgorithm.getLastSplitTarget(), - FLING_OFFSCREEN_DURATION, EMPHASIZED); - case SNAP_TO_2_90_10 -> - snapToTarget(mDividerPosition, mDividerSnapAlgorithm.getFirstSplitTarget(), - FLING_OFFSCREEN_DURATION, EMPHASIZED); - } - } - @VisibleForTesting - void flingDividerPosition(int from, int to, int duration, Interpolator interpolator, + void flingDividerPosition(int from, int to, int duration, @Nullable Runnable flingFinishedCallback) { if (from == to) { if (flingFinishedCallback != null) { flingFinishedCallback.run(); } - mInteractionJankMonitor.end( + InteractionJankMonitorUtils.endTracing( CUJ_SPLIT_SCREEN_RESIZE); return; } @@ -962,100 +650,65 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange mDividerFlingAnimator = ValueAnimator .ofInt(from, to) .setDuration(duration); - mDividerFlingAnimator.setInterpolator(interpolator); - - // If the divider is being physically controlled by the user, we use a cool parallax effect - // on the task windows. So if this "snap" animation is an extension of a user-controlled - // movement, we pass in true here to continue the parallax effect smoothly. - boolean isBeingMovedByUser = mSplitWindowManager.getDividerView() != null - && mSplitWindowManager.getDividerView().isMoving(); - boolean isAnimatingOffscreenTap = mSplitState.get() == ANIMATING_OFFSCREEN_TAP; - boolean needsParallax = isBeingMovedByUser || isAnimatingOffscreenTap; - + mDividerFlingAnimator.setInterpolator(Interpolators.FAST_OUT_SLOW_IN); mDividerFlingAnimator.addUpdateListener( animation -> updateDividerBounds( - (int) animation.getAnimatedValue(), - needsParallax /* shouldUseParallaxEffect */ - ) + (int) animation.getAnimatedValue(), false /* shouldUseParallaxEffect */) ); mDividerFlingAnimator.addListener(new AnimatorListenerAdapter() { - @Override - public void onAnimationStart(Animator animation) { - super.onAnimationStart(animation); - mParentContainerCallbacks.onSplitLayoutAnimating(true /*animating*/); - } - @Override public void onAnimationEnd(Animator animation) { if (flingFinishedCallback != null) { flingFinishedCallback.run(); } - mInteractionJankMonitor.end( + InteractionJankMonitorUtils.endTracing( CUJ_SPLIT_SCREEN_RESIZE); mDividerFlingAnimator = null; - mParentContainerCallbacks.onSplitLayoutAnimating(false /*animating*/); } @Override public void onAnimationCancel(Animator animation) { mDividerFlingAnimator = null; - mParentContainerCallbacks.onSplitLayoutAnimating(false /*animating*/); } }); mDividerFlingAnimator.start(); } /** Switch both surface position with animation. */ - public void playSwapAnimation(SurfaceControl.Transaction t, StageTaskListener topLeftStage, - StageTaskListener bottomRightStage, Consumer<Rect> finishCallback) { + public void splitSwitching(SurfaceControl.Transaction t, SurfaceControl leash1, + SurfaceControl leash2, Consumer<Rect> finishCallback) { final Rect insets = getDisplayStableInsets(mContext); - // If we have insets in the direction of the swap, the animation won't look correct because - // window contents will shift and redraw again at the end. So we show a veil to hide that. insets.set(mIsLeftRightSplit ? insets.left : 0, mIsLeftRightSplit ? 0 : insets.top, mIsLeftRightSplit ? insets.right : 0, mIsLeftRightSplit ? 0 : insets.bottom); - final boolean shouldVeil = - insets.left != 0 || insets.top != 0 || insets.right != 0 || insets.bottom != 0; - - // Find the "left/top"-most position of the app surface -- usually 0, but sometimes negative - // if the left/top app is offscreen. - int leftTop = 0; - if (Flags.enableFlexibleTwoAppSplit()) { - leftTop = mIsLeftRightSplit ? getTopLeftBounds().left : getTopLeftBounds().top; - } final int dividerPos = mDividerSnapAlgorithm.calculateNonDismissingSnapTarget( - leftTop + (mIsLeftRightSplit - ? getBottomRightBounds().width() : getBottomRightBounds().height()) - ).position; - final Rect endBounds1 = new Rect(); - final Rect endBounds2 = new Rect(); - final Rect endDividerBounds = new Rect(); - // Compute destination bounds. - updateBounds(dividerPos, endBounds2, endBounds1, endDividerBounds, + mIsLeftRightSplit ? mBounds2.width() : mBounds2.height()).position; + final Rect distBounds1 = new Rect(); + final Rect distBounds2 = new Rect(); + final Rect distDividerBounds = new Rect(); + // Compute dist bounds. + updateBounds(dividerPos, distBounds2, distBounds1, distDividerBounds, false /* setEffectBounds */); // Offset to real position under root container. - endBounds1.offset(-mRootBounds.left, -mRootBounds.top); - endBounds2.offset(-mRootBounds.left, -mRootBounds.top); - endDividerBounds.offset(-mRootBounds.left, -mRootBounds.top); + distBounds1.offset(-mRootBounds.left, -mRootBounds.top); + distBounds2.offset(-mRootBounds.left, -mRootBounds.top); + distDividerBounds.offset(-mRootBounds.left, -mRootBounds.top); - ValueAnimator animator1 = moveSurface(t, topLeftStage, getTopLeftRefBounds(), endBounds1, - -insets.left, -insets.top, true /* roundCorners */, true /* isGoingBehind */, - shouldVeil); - ValueAnimator animator2 = moveSurface(t, bottomRightStage, getBottomRightRefBounds(), - endBounds2, insets.left, insets.top, true /* roundCorners */, - false /* isGoingBehind */, shouldVeil); - ValueAnimator animator3 = moveSurface(t, null /* stage */, getRefDividerBounds(), - endDividerBounds, 0 /* offsetX */, 0 /* offsetY */, false /* roundCorners */, - false /* isGoingBehind */, false /* addVeil */); + ValueAnimator animator1 = moveSurface(t, leash1, getRefBounds1(), distBounds1, + -insets.left, -insets.top); + ValueAnimator animator2 = moveSurface(t, leash2, getRefBounds2(), distBounds2, + insets.left, insets.top); + ValueAnimator animator3 = moveSurface(t, getDividerLeash(), getRefDividerBounds(), + distDividerBounds, 0 /* offsetX */, 0 /* offsetY */); - mSwapAnimator = new AnimatorSet(); - mSwapAnimator.playTogether(animator1, animator2, animator3); - mSwapAnimator.setDuration(SWAP_ANIMATION_TOTAL_DURATION); - mSwapAnimator.addListener(new AnimatorListenerAdapter() { + AnimatorSet set = new AnimatorSet(); + set.playTogether(animator1, animator2, animator3); + set.setDuration(FLING_SWITCH_DURATION); + set.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationStart(Animator animation) { - mInteractionJankMonitor.begin(getDividerLeash(), - mContext, mHandler, CUJ_SPLIT_SCREEN_DOUBLE_TAP_DIVIDER); + InteractionJankMonitorUtils.beginTracing(CUJ_SPLIT_SCREEN_DOUBLE_TAP_DIVIDER, + mContext, getDividerLeash(), null /*tag*/); } @Override @@ -1063,182 +716,45 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange mDividerPosition = dividerPos; updateBounds(mDividerPosition); finishCallback.accept(insets); - mInteractionJankMonitor.end(CUJ_SPLIT_SCREEN_DOUBLE_TAP_DIVIDER); + InteractionJankMonitorUtils.endTracing(CUJ_SPLIT_SCREEN_DOUBLE_TAP_DIVIDER); } @Override public void onAnimationCancel(Animator animation) { - mInteractionJankMonitor.cancel(CUJ_SPLIT_SCREEN_DOUBLE_TAP_DIVIDER); + InteractionJankMonitorUtils.cancelTracing(CUJ_SPLIT_SCREEN_DOUBLE_TAP_DIVIDER); } }); - mSwapAnimator.start(); + set.start(); } - /** Returns true if a swap animation is currently playing. */ - public boolean isCurrentlySwapping() { - return mSwapAnimator != null && mSwapAnimator.isRunning(); - } - - /** - * Animates a task leash across the screen. Currently used only for the swap animation. - * - * @param stage The stage holding the task being animated. If null, it is the divider. - * @param roundCorners Whether we should round the corners of the task while animating. - * @param isGoingBehind Whether we should a shrink-and-grow effect to the task while it is - * moving. (Simulates moving behind the divider.) - */ - private ValueAnimator moveSurface(SurfaceControl.Transaction t, StageTaskListener stage, - Rect start, Rect end, float offsetX, float offsetY, boolean roundCorners, - boolean isGoingBehind, boolean addVeil) { - final boolean isApp = stage != null; // check if this is an app or a divider - final SurfaceControl leash = isApp ? stage.getRootLeash() : getDividerLeash(); - final ActivityManager.RunningTaskInfo taskInfo = isApp ? stage.getRunningTaskInfo() : null; - final SplitDecorManager decorManager = isApp ? stage.getDecorManager() : null; - final SurfaceControl dimLayer = isApp ? stage.getDimLayer() : null; - boolean goingOffscreen = Flags.enableFlexibleTwoAppSplit() - ? !mSplitState.isOffscreen(start) && mSplitState.isOffscreen(end) : false; - boolean comingOnscreen = Flags.enableFlexibleTwoAppSplit() - ? mSplitState.isOffscreen(start) && !mSplitState.isOffscreen(end) : false; - + private ValueAnimator moveSurface(SurfaceControl.Transaction t, SurfaceControl leash, + Rect start, Rect end, float offsetX, float offsetY) { Rect tempStart = new Rect(start); Rect tempEnd = new Rect(end); final float diffX = tempEnd.left - tempStart.left; final float diffY = tempEnd.top - tempStart.top; final float diffWidth = tempEnd.width() - tempStart.width(); final float diffHeight = tempEnd.height() - tempStart.height(); - - // Get display measurements (for possible shrink animation). - final RoundedCorner roundedCorner = mSplitWindowManager.getDividerView().getDisplay() - .getRoundedCorner(0 /* position */); - float cornerRadius = roundedCorner == null ? 0 : roundedCorner.getRadius(); - float shrinkMarginPx = PipUtils.dpToPx( - SWAP_ANIMATION_SHRINK_MARGIN_DP, mContext.getResources().getDisplayMetrics()); - float shrinkAmountPx = shrinkMarginPx * 2; - - // Timing calculations - float shrinkPortion = SWAP_ANIMATION_SHRINK_DURATION / SWAP_ANIMATION_TOTAL_DURATION; - float growPortion = 1 - shrinkPortion; - ValueAnimator animator = ValueAnimator.ofFloat(0, 1); - // Set the base animation to proceed linearly. Each component of the animation (movement, - // shrinking, growing) overrides it with a different interpolator later. - animator.setInterpolator(LINEAR); animator.addUpdateListener(animation -> { if (leash == null) return; - if (roundCorners) { - // Add rounded corners to the task leash while it is animating. - t.setCornerRadius(leash, cornerRadius); - } - - final float progress = (float) animation.getAnimatedValue(); - final float moveProgress = EMPHASIZED.getInterpolation(progress); - float instantaneousX = tempStart.left + moveProgress * diffX; - float instantaneousY = tempStart.top + moveProgress * diffY; - int width = (int) (tempStart.width() + moveProgress * diffWidth); - int height = (int) (tempStart.height() + moveProgress * diffHeight); - - if (isGoingBehind) { - float shrinkDiffX; // the position adjustments needed for this frame - float shrinkDiffY; - float shrinkScaleX; // the scale adjustments needed for this frame - float shrinkScaleY; - - // Find the max amount we will be shrinking this leash, as a proportion (e.g. 0.1f). - float maxShrinkX = shrinkAmountPx / height; - float maxShrinkY = shrinkAmountPx / width; - - // Find if we are in the shrinking part of the animation, or the growing part. - boolean shrinking = progress <= shrinkPortion; - - if (shrinking) { - // Find how far into the shrink portion we are (e.g. 0.5f). - float shrinkProgress = progress / shrinkPortion; - // Find how much we should have progressed in shrinking the leash (e.g. 0.8f). - float interpolatedShrinkProgress = - SHRINK_INTERPOLATOR.getInterpolation(shrinkProgress); - // Find how much width proportion we should be taking off (e.g. 0.1f) - float widthProportionLost = maxShrinkX * interpolatedShrinkProgress; - shrinkScaleX = 1 - widthProportionLost; - // Find how much height proportion we should be taking off (e.g. 0.1f) - float heightProportionLost = maxShrinkY * interpolatedShrinkProgress; - shrinkScaleY = 1 - heightProportionLost; - // Add a small amount to the leash's position to keep the task centered. - shrinkDiffX = (width * widthProportionLost) / 2; - shrinkDiffY = (height * heightProportionLost) / 2; - } else { - // Find how far into the grow portion we are (e.g. 0.5f). - float growProgress = (progress - shrinkPortion) / growPortion; - // Find how much we should have progressed in growing the leash (e.g. 0.8f). - float interpolatedGrowProgress = - GROW_INTERPOLATOR.getInterpolation(growProgress); - // Find how much width proportion we should be taking off (e.g. 0.1f) - float widthProportionLost = maxShrinkX * (1 - interpolatedGrowProgress); - shrinkScaleX = 1 - widthProportionLost; - // Find how much height proportion we should be taking off (e.g. 0.1f) - float heightProportionLost = maxShrinkY * (1 - interpolatedGrowProgress); - shrinkScaleY = 1 - heightProportionLost; - // Add a small amount to the leash's position to keep the task centered. - shrinkDiffX = (width * widthProportionLost) / 2; - shrinkDiffY = (height * heightProportionLost) / 2; - } - - instantaneousX += shrinkDiffX; - instantaneousY += shrinkDiffY; - width *= shrinkScaleX; - height *= shrinkScaleY; - // Set scale on the leash's contents. - t.setScale(leash, shrinkScaleX, shrinkScaleY); - } - - // Set layers - if (taskInfo != null) { - t.setLayer(leash, isGoingBehind - ? ANIMATING_BACK_APP_LAYER - : ANIMATING_FRONT_APP_LAYER); - } else { - t.setLayer(leash, ANIMATING_DIVIDER_LAYER); - } + final float scale = (float) animation.getAnimatedValue(); + final float distX = tempStart.left + scale * diffX; + final float distY = tempStart.top + scale * diffY; + final int width = (int) (tempStart.width() + scale * diffWidth); + final int height = (int) (tempStart.height() + scale * diffHeight); if (offsetX == 0 && offsetY == 0) { - t.setPosition(leash, instantaneousX, instantaneousY); - mTempRect.set((int) instantaneousX, (int) instantaneousY, - (int) (instantaneousX + width), (int) (instantaneousY + height)); + t.setPosition(leash, distX, distY); t.setWindowCrop(leash, width, height); - if (addVeil) { - decorManager.drawNextVeilFrameForSwapAnimation( - taskInfo, mTempRect, t, isGoingBehind, leash, 0, 0); - } } else { - final int diffOffsetX = (int) (moveProgress * offsetX); - final int diffOffsetY = (int) (moveProgress * offsetY); - t.setPosition(leash, instantaneousX + diffOffsetX, instantaneousY + diffOffsetY); + final int diffOffsetX = (int) (scale * offsetX); + final int diffOffsetY = (int) (scale * offsetY); + t.setPosition(leash, distX + diffOffsetX, distY + diffOffsetY); mTempRect.set(0, 0, width, height); mTempRect.offsetTo(-diffOffsetX, -diffOffsetY); t.setCrop(leash, mTempRect); - if (addVeil) { - decorManager.drawNextVeilFrameForSwapAnimation( - taskInfo, mTempRect, t, isGoingBehind, leash, diffOffsetX, diffOffsetY); - } } - - // App surfaces are dimmed when offscreen. So if the app is moving from onscreen to - // offscreen or vice versa, we set the dim layer's alpha on every frame for a smooth - // transition. - if (Flags.enableFlexibleTwoAppSplit() - && mSplitState.currentStateSupportsOffscreenApps() - && dimLayer != null) { - float instantaneousAlpha = 0f; - if (goingOffscreen) { - instantaneousAlpha = moveProgress * ResizingEffectPolicy.DEFAULT_OFFSCREEN_DIM; - } - if (comingOnscreen) { - instantaneousAlpha = - (1f - moveProgress) * ResizingEffectPolicy.DEFAULT_OFFSCREEN_DIM; - } - t.setAlpha(dimLayer, instantaneousAlpha); - t.setVisibility(dimLayer, instantaneousAlpha > 0.001f); - } - t.apply(); }); return animator; @@ -1274,18 +790,12 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange getRefDividerBounds(mTempRect); t.setPosition(dividerLeash, mTempRect.left, mTempRect.top); // Resets layer of divider bar to make sure it is always on top. - t.setLayer(dividerLeash, RESTING_DIVIDER_LAYER); + t.setLayer(dividerLeash, Integer.MAX_VALUE); } - if (dimLayer1 != null) { - t.setLayer(dimLayer1, RESTING_DIM_LAYER); - } - if (dimLayer2 != null) { - t.setLayer(dimLayer2, RESTING_DIM_LAYER); - } - copyTopLeftRefBounds(mTempRect); + getRefBounds1(mTempRect); t.setPosition(leash1, mTempRect.left, mTempRect.top) .setWindowCrop(leash1, mTempRect.width(), mTempRect.height()); - copyBottomRightRefBounds(mTempRect); + getRefBounds2(mTempRect); t.setPosition(leash2, mTempRect.left, mTempRect.top) .setWindowCrop(leash2, mTempRect.width(), mTempRect.height()); @@ -1307,17 +817,15 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange public boolean applyTaskChanges(WindowContainerTransaction wct, ActivityManager.RunningTaskInfo task1, ActivityManager.RunningTaskInfo task2) { boolean boundsChanged = false; - if (!getTopLeftBounds().equals(getTopLeftContentBounds()) - || !task1.token.equals(mWinToken1)) { - setTaskBounds(wct, task1, getTopLeftBounds()); - getTopLeftContentBounds().set(getTopLeftBounds()); + if (!mBounds1.equals(mWinBounds1) || !task1.token.equals(mWinToken1)) { + setTaskBounds(wct, task1, mBounds1); + mWinBounds1.set(mBounds1); mWinToken1 = task1.token; boundsChanged = true; } - if (!getBottomRightBounds().equals(getBottomRightContentBounds()) - || !task2.token.equals(mWinToken2)) { - setTaskBounds(wct, task2, getBottomRightBounds()); - getBottomRightContentBounds().set(getBottomRightBounds()); + if (!mBounds2.equals(mWinBounds2) || !task2.token.equals(mWinToken2)) { + setTaskBounds(wct, task2, mBounds2); + mWinBounds2.set(mBounds2); mWinToken2 = task2.token; boundsChanged = true; } @@ -1329,8 +837,6 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange ActivityManager.RunningTaskInfo task, Rect bounds) { wct.setBounds(task.token, bounds); wct.setSmallestScreenWidthDp(task.token, getSmallestWidthDp(bounds)); - wct.setScreenSizeDp(task.token, task.configuration.screenWidthDp, - task.configuration.screenHeightDp); } private int getSmallestWidthDp(Rect bounds) { @@ -1341,14 +847,6 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange return (int) (minWidth / density); } - public int getDisplayWidth() { - return mRootBounds.width(); - } - - public int getDisplayHeight() { - return mRootBounds.height(); - } - /** * Shift configuration bounds to prevent client apps get configuration changed or relaunch. And * restore shifted configuration bounds if it's no longer shifted. @@ -1356,22 +854,22 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange public void applyLayoutOffsetTarget(WindowContainerTransaction wct, int offsetX, int offsetY, ActivityManager.RunningTaskInfo taskInfo1, ActivityManager.RunningTaskInfo taskInfo2) { if (offsetX == 0 && offsetY == 0) { - wct.setBounds(taskInfo1.token, getTopLeftBounds()); + wct.setBounds(taskInfo1.token, mBounds1); wct.setScreenSizeDp(taskInfo1.token, SCREEN_WIDTH_DP_UNDEFINED, SCREEN_HEIGHT_DP_UNDEFINED); - wct.setBounds(taskInfo2.token, getBottomRightBounds()); + wct.setBounds(taskInfo2.token, mBounds2); wct.setScreenSizeDp(taskInfo2.token, SCREEN_WIDTH_DP_UNDEFINED, SCREEN_HEIGHT_DP_UNDEFINED); } else { - copyTopLeftBounds(mTempRect); + getBounds1(mTempRect); mTempRect.offset(offsetX, offsetY); wct.setBounds(taskInfo1.token, mTempRect); wct.setScreenSizeDp(taskInfo1.token, taskInfo1.configuration.screenWidthDp, taskInfo1.configuration.screenHeightDp); - copyBottomRightBounds(mTempRect); + getBounds2(mTempRect); mTempRect.offset(offsetX, offsetY); wct.setBounds(taskInfo2.token, mTempRect); wct.setScreenSizeDp(taskInfo2.token, @@ -1389,9 +887,9 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange pw.println(innerPrefix + "mFreezeDividerWindow=" + mFreezeDividerWindow); pw.println(innerPrefix + "mDimNonImeSide=" + mDimNonImeSide); pw.println(innerPrefix + "mDividerPosition=" + mDividerPosition); - pw.println(innerPrefix + "bounds1=" + getTopLeftBounds().toShortString()); + pw.println(innerPrefix + "bounds1=" + mBounds1.toShortString()); pw.println(innerPrefix + "dividerBounds=" + mDividerBounds.toShortString()); - pw.println(innerPrefix + "bounds2=" + getBottomRightBounds().toShortString()); + pw.println(innerPrefix + "bounds2=" + mBounds2.toShortString()); } /** Handles layout change event. */ @@ -1443,16 +941,173 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange default void onDoubleTappedDivider() { } - /** - * Sets the excludedInsetsTypes for the IME in the root WindowContainer. - */ - void setExcludeImeInsets(boolean exclude); - /** Returns split position of the token. */ @SplitPosition int getSplitItemPosition(WindowContainerToken token); } + /** + * Calculates and applies proper dismissing parallax offset and dimming value to hint users + * dismissing gesture. + */ + private class ResizingEffectPolicy { + /** Indicates whether to offset splitting bounds to hint dismissing progress or not. */ + private final int mParallaxType; + + int mShrinkSide = DOCKED_INVALID; + + // The current dismissing side. + int mDismissingSide = DOCKED_INVALID; + + // The parallax offset to hint the dismissing side and progress. + final Point mParallaxOffset = new Point(); + + // The dimming value to hint the dismissing side and progress. + float mDismissingDimValue = 0.0f; + final Rect mContentBounds = new Rect(); + final Rect mSurfaceBounds = new Rect(); + + ResizingEffectPolicy(int parallaxType) { + mParallaxType = parallaxType; + } + + /** + * Applies a parallax to the task to hint dismissing progress. + * + * @param position the split position to apply dismissing parallax effect + * @param isLeftRightSplit indicates whether it's splitting horizontally or vertically + */ + void applyDividerPosition(int position, boolean isLeftRightSplit) { + mDismissingSide = DOCKED_INVALID; + mParallaxOffset.set(0, 0); + mDismissingDimValue = 0; + + int totalDismissingDistance = 0; + if (position < mDividerSnapAlgorithm.getFirstSplitTarget().position) { + mDismissingSide = isLeftRightSplit ? DOCKED_LEFT : DOCKED_TOP; + totalDismissingDistance = mDividerSnapAlgorithm.getDismissStartTarget().position + - mDividerSnapAlgorithm.getFirstSplitTarget().position; + } else if (position > mDividerSnapAlgorithm.getLastSplitTarget().position) { + mDismissingSide = isLeftRightSplit ? DOCKED_RIGHT : DOCKED_BOTTOM; + totalDismissingDistance = mDividerSnapAlgorithm.getLastSplitTarget().position + - mDividerSnapAlgorithm.getDismissEndTarget().position; + } + + final boolean topLeftShrink = isLeftRightSplit + ? position < mWinBounds1.right : position < mWinBounds1.bottom; + if (topLeftShrink) { + mShrinkSide = isLeftRightSplit ? DOCKED_LEFT : DOCKED_TOP; + mContentBounds.set(mWinBounds1); + mSurfaceBounds.set(mBounds1); + } else { + mShrinkSide = isLeftRightSplit ? DOCKED_RIGHT : DOCKED_BOTTOM; + mContentBounds.set(mWinBounds2); + mSurfaceBounds.set(mBounds2); + } + + if (mDismissingSide != DOCKED_INVALID) { + float fraction = Math.max(0, + Math.min(mDividerSnapAlgorithm.calculateDismissingFraction(position), 1f)); + mDismissingDimValue = DIM_INTERPOLATOR.getInterpolation(fraction); + if (mParallaxType == PARALLAX_DISMISSING) { + fraction = calculateParallaxDismissingFraction(fraction, mDismissingSide); + if (isLeftRightSplit) { + mParallaxOffset.x = (int) (fraction * totalDismissingDistance); + } else { + mParallaxOffset.y = (int) (fraction * totalDismissingDistance); + } + } + } + + if (mParallaxType == PARALLAX_ALIGN_CENTER) { + if (isLeftRightSplit) { + mParallaxOffset.x = + (mSurfaceBounds.width() - mContentBounds.width()) / 2; + } else { + mParallaxOffset.y = + (mSurfaceBounds.height() - mContentBounds.height()) / 2; + } + } + } + + /** + * @return for a specified {@code fraction}, this returns an adjusted value that simulates a + * slowing down parallax effect + */ + private float calculateParallaxDismissingFraction(float fraction, int dockSide) { + float result = SLOWDOWN_INTERPOLATOR.getInterpolation(fraction) / 3.5f; + + // Less parallax at the top, just because. + if (dockSide == WindowManager.DOCKED_TOP) { + result /= 2f; + } + return result; + } + + /** Applies parallax offset and dimming value to the root surface at the dismissing side. */ + void adjustRootSurface(SurfaceControl.Transaction t, + SurfaceControl leash1, SurfaceControl leash2) { + SurfaceControl targetLeash = null; + + if (mParallaxType == PARALLAX_DISMISSING) { + switch (mDismissingSide) { + case DOCKED_TOP: + case DOCKED_LEFT: + targetLeash = leash1; + mTempRect.set(mBounds1); + break; + case DOCKED_BOTTOM: + case DOCKED_RIGHT: + targetLeash = leash2; + mTempRect.set(mBounds2); + break; + } + } else if (mParallaxType == PARALLAX_ALIGN_CENTER) { + switch (mShrinkSide) { + case DOCKED_TOP: + case DOCKED_LEFT: + targetLeash = leash1; + mTempRect.set(mBounds1); + break; + case DOCKED_BOTTOM: + case DOCKED_RIGHT: + targetLeash = leash2; + mTempRect.set(mBounds2); + break; + } + } + if (mParallaxType != PARALLAX_NONE && targetLeash != null) { + t.setPosition(targetLeash, + mTempRect.left + mParallaxOffset.x, mTempRect.top + mParallaxOffset.y); + // Transform the screen-based split bounds to surface-based crop bounds. + mTempRect.offsetTo(-mParallaxOffset.x, -mParallaxOffset.y); + t.setWindowCrop(targetLeash, mTempRect); + } + } + + void adjustDimSurface(SurfaceControl.Transaction t, + SurfaceControl dimLayer1, SurfaceControl dimLayer2) { + SurfaceControl targetDimLayer; + switch (mDismissingSide) { + case DOCKED_TOP: + case DOCKED_LEFT: + targetDimLayer = dimLayer1; + break; + case DOCKED_BOTTOM: + case DOCKED_RIGHT: + targetDimLayer = dimLayer2; + break; + case DOCKED_INVALID: + default: + t.setAlpha(dimLayer1, 0).hide(dimLayer1); + t.setAlpha(dimLayer2, 0).hide(dimLayer2); + return; + } + t.setAlpha(targetDimLayer, mDismissingDimValue) + .setVisibility(targetDimLayer, mDismissingDimValue > 0.001f); + } + } + /** Records IME top offset changes and updates SplitLayout correspondingly. */ private class ImePositionProcessor implements DisplayImeController.ImePositionProcessor { /** @@ -1484,14 +1139,6 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange mDisplayId = displayId; } - @Override - public void onImeRequested(int displayId, boolean isRequested) { - if (displayId != mDisplayId) return; - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "IME was set to requested=%s", - isRequested); - mSplitLayoutHandler.setExcludeImeInsets(true); - } - @Override public int onImeStartPositioning(int displayId, int hiddenTop, int shownTop, boolean showing, boolean isFloating, SurfaceControl.Transaction t) { @@ -1499,12 +1146,10 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange return 0; } - final int imeLayeringTargetPosition = getImeLayeringTargetPosition(); - mHasImeFocus = imeLayeringTargetPosition != SPLIT_POSITION_UNDEFINED; + final int imeTargetPosition = getImeTargetPosition(); + mHasImeFocus = imeTargetPosition != SPLIT_POSITION_UNDEFINED; if (!mHasImeFocus) { - if (showing) { - return 0; - } + return 0; } mStartImeTop = showing ? hiddenTop : shownTop; @@ -1513,15 +1158,15 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange // Update target dim values mLastDim1 = mDimValue1; - mTargetDim1 = imeLayeringTargetPosition == SPLIT_POSITION_BOTTOM_OR_RIGHT && mImeShown + mTargetDim1 = imeTargetPosition == SPLIT_POSITION_BOTTOM_OR_RIGHT && mImeShown && mDimNonImeSide ? ADJUSTED_NONFOCUS_DIM : 0.0f; mLastDim2 = mDimValue2; - mTargetDim2 = imeLayeringTargetPosition == SPLIT_POSITION_TOP_OR_LEFT && mImeShown + mTargetDim2 = imeTargetPosition == SPLIT_POSITION_TOP_OR_LEFT && mImeShown && mDimNonImeSide ? ADJUSTED_NONFOCUS_DIM : 0.0f; // Calculate target bounds offset for IME mLastYOffset = mYOffsetForIme; - final boolean needOffset = imeLayeringTargetPosition == SPLIT_POSITION_BOTTOM_OR_RIGHT + final boolean needOffset = imeTargetPosition == SPLIT_POSITION_BOTTOM_OR_RIGHT && !isFloating && !mIsLeftRightSplit && mImeShown; mTargetYOffset = needOffset ? getTargetYOffset() : 0; @@ -1532,7 +1177,11 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange // Freeze the configuration size with offset to prevent app get a configuration // changed or relaunch. This is required to make sure client apps will calculate // insets properly after layout shifted. - mSplitLayoutHandler.setLayoutOffsetTarget(0, mTargetYOffset, SplitLayout.this); + if (mTargetYOffset == 0) { + mSplitLayoutHandler.setLayoutOffsetTarget(0, 0, SplitLayout.this); + } else { + mSplitLayoutHandler.setLayoutOffsetTarget(0, mTargetYOffset, SplitLayout.this); + } } // Make {@link DividerView} non-interactive while IME showing in split mode. Listen to @@ -1542,20 +1191,12 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange setDividerInteractive(!mImeShown || !mHasImeFocus || isFloating, true, "onImeStartPositioning"); - if (mImeShown) { - mSplitLayoutHandler.setExcludeImeInsets(false); - } - return mTargetYOffset != mLastYOffset ? IME_ANIMATION_NO_ALPHA : 0; } @Override public void onImePositionChanged(int displayId, int imeTop, SurfaceControl.Transaction t) { - if (displayId != mDisplayId || !mHasImeFocus) { - if (mImeShown) { - return; - } - } + if (displayId != mDisplayId || !mHasImeFocus) return; onProgress(getProgress(imeTop)); mSplitLayoutHandler.onLayoutPositionChanging(SplitLayout.this); } @@ -1563,24 +1204,11 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange @Override public void onImeEndPositioning(int displayId, boolean cancel, SurfaceControl.Transaction t) { - if (displayId != mDisplayId || cancel) return; - if (!mHasImeFocus) { - if (mImeShown) { - return; - } - } + if (displayId != mDisplayId || !mHasImeFocus || cancel) return; ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Split IME animation ending, canceled=%b", cancel); onProgress(1.0f); mSplitLayoutHandler.onLayoutPositionChanging(SplitLayout.this); - if (!mImeShown) { - // The IME hide animation is started immediately and at that point, the IME - // insets are not yet set to hidden. Therefore only resetting the - // excludedTypes at the end of the animation. Note: InsetsPolicy will only - // set the IME height to zero, when it is visible. When it becomes invisible, - // we dispatch the insets (the height there is zero as well) - mSplitLayoutHandler.setExcludeImeInsets(false); - } } @Override @@ -1595,33 +1223,16 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange } } - /** - * When IME is triggered on the bottom app in split screen, we want to translate the bottom - * app up by a certain amount so that it's not covered too much by the IME. But there's also - * an upper limit to the amount we want to translate (since we still need some of the top - * app to be visible too). So this function essentially says "try to translate the bottom - * app up, but stop before you make the top app too small." - */ private int getTargetYOffset() { - // We want to translate up the bottom app by this amount. - final int desiredOffset = Math.abs(mEndImeTop - mStartImeTop); - - // But we also want to keep this much of the top app visible. - final float amountOfTopAppToKeepVisible = - getTopLeftBounds().height() * (1 - ADJUSTED_SPLIT_FRACTION_MAX); - - // So the current onscreen size of the top app, minus the minimum size, is the max - // translation we will allow. - final float currentOnScreenSizeOfTopApp = getTopLeftBounds().bottom; - final int maxOffset = - (int) Math.max(currentOnScreenSizeOfTopApp - amountOfTopAppToKeepVisible, 0); - - return -Math.min(desiredOffset, maxOffset); + final int desireOffset = Math.abs(mEndImeTop - mStartImeTop); + // Make sure to keep at least 30% visible for the top split. + final int maxOffset = (int) (mBounds1.height() * ADJUSTED_SPLIT_FRACTION_MAX); + return -Math.min(desireOffset, maxOffset); } @SplitPosition - private int getImeLayeringTargetPosition() { - final WindowContainerToken token = mTaskOrganizer.getImeLayeringTarget(mDisplayId); + private int getImeTargetPosition() { + final WindowContainerToken token = mTaskOrganizer.getImeTarget(mDisplayId); return mSplitLayoutHandler.getSplitItemPosition(token); } @@ -1665,11 +1276,11 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange t.setPosition(dividerLeash, mTempRect.left, mTempRect.top); } - copyTopLeftRefBounds(mTempRect); + getRefBounds1(mTempRect); mTempRect.offset(0, mYOffsetForIme); t.setPosition(leash1, mTempRect.left, mTempRect.top); - copyBottomRightRefBounds(mTempRect); + getRefBounds2(mTempRect); mTempRect.offset(0, mYOffsetForIme); t.setPosition(leash2, mTempRect.left, mTempRect.top); adjusted = true; diff --git a/wmshell/src/com/android/wm/shell/common/split/SplitScreenUtils.java b/wmshell/src/com/android/wm/shell/common/split/SplitScreenUtils.java index 84c30a52e8..e8226051b6 100644 --- a/wmshell/src/com/android/wm/shell/common/split/SplitScreenUtils.java +++ b/wmshell/src/com/android/wm/shell/common/split/SplitScreenUtils.java @@ -16,30 +16,28 @@ package com.android.wm.shell.common.split; -import static com.android.wm.shell.shared.split.SplitScreenConstants.CONTROLLED_ACTIVITY_TYPES; -import static com.android.wm.shell.shared.split.SplitScreenConstants.CONTROLLED_WINDOWING_MODES; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_10_90; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_90_10; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_3_10_45_45; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_3_45_45_10; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.common.split.SplitScreenConstants.CONTROLLED_ACTIVITY_TYPES; +import static com.android.wm.shell.common.split.SplitScreenConstants.CONTROLLED_WINDOWING_MODES; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; import android.app.ActivityManager; +import android.app.PendingIntent; +import android.content.Intent; import android.content.res.Configuration; import android.content.res.Resources; +import android.graphics.Color; import android.graphics.Rect; +import androidx.annotation.Nullable; + import com.android.internal.util.ArrayUtils; import com.android.wm.shell.Flags; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.shared.split.SplitScreenConstants; /** Helper utility class for split screen components to use. */ public class SplitScreenUtils { - private static final int LARGE_SCREEN_MIN_EDGE_DP = 600; - /** Reverse the split position. */ @SplitScreenConstants.SplitPosition public static int reverseSplitPosition(@SplitScreenConstants.SplitPosition int position) { @@ -61,6 +59,31 @@ public class SplitScreenUtils { && ArrayUtils.contains(CONTROLLED_WINDOWING_MODES, taskInfo.getWindowingMode()); } + /** Retrieve package name from an intent */ + @Nullable + public static String getPackageName(Intent intent) { + if (intent == null || intent.getComponent() == null) { + return null; + } + return intent.getComponent().getPackageName(); + } + + /** Retrieve package name from a PendingIntent */ + @Nullable + public static String getPackageName(PendingIntent pendingIntent) { + if (pendingIntent == null || pendingIntent.getIntent() == null) { + return null; + } + return getPackageName(pendingIntent.getIntent()); + } + + /** Retrieve package name from a taskId */ + @Nullable + public static String getPackageName(int taskId, ShellTaskOrganizer taskOrganizer) { + final ActivityManager.RunningTaskInfo taskInfo = taskOrganizer.getRunningTaskInfo(taskId); + return taskInfo != null ? getPackageName(taskInfo.baseIntent) : null; + } + /** Retrieve user id from a taskId */ public static int getUserId(int taskId, ShellTaskOrganizer taskOrganizer) { final ActivityManager.RunningTaskInfo taskInfo = taskOrganizer.getRunningTaskInfo(taskId); @@ -76,7 +99,8 @@ public class SplitScreenUtils { * Returns whether left/right split is allowed in portrait. */ public static boolean allowLeftRightSplitInPortrait(Resources res) { - return res.getBoolean(com.android.internal.R.bool.config_leftRightSplitInPortrait); + return Flags.enableLeftRightSplitInPortrait() && res.getBoolean( + com.android.internal.R.bool.config_leftRightSplitInPortrait); } /** @@ -86,9 +110,10 @@ public class SplitScreenUtils { Configuration config) { // Compare the max bounds sizes as on near-square devices, the insets may result in a // configuration in the other orientation + final boolean isLargeScreen = config.smallestScreenWidthDp >= 600; final Rect maxBounds = config.windowConfiguration.getMaxBounds(); final boolean isLandscape = maxBounds.width() >= maxBounds.height(); - return isLeftRightSplit(allowLeftRightSplitInPortrait, isLargeScreen(config), isLandscape); + return isLeftRightSplit(allowLeftRightSplitInPortrait, isLargeScreen, isLandscape); } /** @@ -104,52 +129,9 @@ public class SplitScreenUtils { } } - /** - * Returns whether the current config is a large screen (tablet or unfolded foldable) - */ - public static boolean isLargeScreen(Configuration config) { - return config.smallestScreenWidthDp >= LARGE_SCREEN_MIN_EDGE_DP; - } - - /** - * Convenience function for {@link #isLargeScreen(Configuration)}. - */ - public static boolean isLargeScreen(Resources res) { - return isLargeScreen(res.getConfiguration()); - } - - /** - * Returns whether the current device is a foldable - */ - public static boolean isFoldable(Resources res) { - return res.getIntArray(com.android.internal.R.array.config_foldedDeviceStates).length != 0; - } - - /** - * Returns whether we should allow split ratios to go offscreen or not. If the device is a phone - * or a foldable (either screen), we allow it. - */ - public static boolean allowOffscreenRatios(Resources res) { - return Flags.enableFlexibleTwoAppSplit() && (!isLargeScreen(res) || isFoldable(res)); - } - - /** - * Within a particular split layout, we label the stages numerically: 0, 1, 2... from left to - * right (or top to bottom). This function takes in a stage index (0th, 1st, 2nd...) and a - * PersistentSnapPosition and returns if that particular stage is offscreen in that layout. - */ - public static boolean isPartiallyOffscreen(int stageIndex, - @SplitScreenConstants.PersistentSnapPosition int snapPosition) { - switch(snapPosition) { - case SNAP_TO_2_10_90: - case SNAP_TO_3_10_45_45: - return stageIndex == 0; - case SNAP_TO_2_90_10: - return stageIndex == 1; - case SNAP_TO_3_45_45_10: - return stageIndex == 2; - default: - return false; - } + /** Returns the specified background color that matches a RunningTaskInfo. */ + public static Color getResizingBackgroundColor(ActivityManager.RunningTaskInfo taskInfo) { + final int taskBgColor = taskInfo.taskDescription.getBackgroundColor(); + return Color.valueOf(taskBgColor == -1 ? Color.WHITE : taskBgColor); } } diff --git a/wmshell/src/com/android/wm/shell/common/split/SplitWindowManager.java b/wmshell/src/com/android/wm/shell/common/split/SplitWindowManager.java index eead2dc309..5d121c23c6 100644 --- a/wmshell/src/com/android/wm/shell/common/split/SplitWindowManager.java +++ b/wmshell/src/com/android/wm/shell/common/split/SplitWindowManager.java @@ -18,6 +18,8 @@ package com.android.wm.shell.common.split; import static android.view.WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE; import static android.view.WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL; +import static android.view.WindowManager.LayoutParams.FLAG_SLIPPERY; +import static android.view.WindowManager.LayoutParams.FLAG_SPLIT_TOUCH; import static android.view.WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH; import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_NO_MOVE_ANIMATION; import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERLAY; @@ -34,6 +36,8 @@ import android.view.InsetsState; import android.view.LayoutInflater; import android.view.SurfaceControl; import android.view.SurfaceControlViewHost; +import android.view.SurfaceSession; +import android.view.View; import android.view.WindowManager; import android.view.WindowlessWindowManager; @@ -41,7 +45,6 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.wm.shell.R; -import com.android.wm.shell.shared.desktopmode.DesktopState; /** * Holds view hierarchy of a root surface and helps to inflate {@link DividerView} for a split. @@ -66,10 +69,6 @@ public final class SplitWindowManager extends WindowlessWindowManager { public interface ParentContainerCallbacks { void attachToParentSurface(SurfaceControl.Builder b); void onLeashReady(SurfaceControl leash); - /** Inflates the given touch zone on the appropriate stage root. */ - void inflateOnStageRoot(OffscreenTouchZone touchZone); - /** Called when any visual animations w/ split layout are happening. */ - void onSplitLayoutAnimating(boolean animating); } public SplitWindowManager(String windowName, Context context, Configuration config, @@ -100,7 +99,7 @@ public final class SplitWindowManager extends WindowlessWindowManager { @Override protected SurfaceControl getParentSurface(IWindow window, WindowManager.LayoutParams attrs) { // Can't set position for the ViewRootImpl SC directly. Create a leash to manipulate later. - final SurfaceControl.Builder builder = new SurfaceControl.Builder() + final SurfaceControl.Builder builder = new SurfaceControl.Builder(new SurfaceSession()) .setContainerLayer() .setName(TAG) .setHidden(true) @@ -112,8 +111,7 @@ public final class SplitWindowManager extends WindowlessWindowManager { } /** Inflates {@link DividerView} on to the root surface. */ - void init(SplitLayout splitLayout, InsetsState insetsState, boolean isRestoring, - DesktopState desktopState) { + void init(SplitLayout splitLayout, InsetsState insetsState, boolean isRestoring) { if (mDividerView != null || mViewHost != null) { throw new UnsupportedOperationException( "Try to inflate divider view again without release first"); @@ -127,14 +125,15 @@ public final class SplitWindowManager extends WindowlessWindowManager { final Rect dividerBounds = splitLayout.getDividerBounds(); WindowManager.LayoutParams lp = new WindowManager.LayoutParams( dividerBounds.width(), dividerBounds.height(), TYPE_DOCK_DIVIDER, - FLAG_NOT_FOCUSABLE | FLAG_NOT_TOUCH_MODAL | FLAG_WATCH_OUTSIDE_TOUCH, + FLAG_NOT_FOCUSABLE | FLAG_NOT_TOUCH_MODAL | FLAG_WATCH_OUTSIDE_TOUCH + | FLAG_SPLIT_TOUCH | FLAG_SLIPPERY, PixelFormat.TRANSLUCENT); lp.token = new Binder(); lp.setTitle(mWindowName); lp.privateFlags |= PRIVATE_FLAG_NO_MOVE_ANIMATION | PRIVATE_FLAG_TRUSTED_OVERLAY; lp.accessibilityTitle = mContext.getResources().getString(R.string.accessibility_divider); mViewHost.setView(mDividerView, lp); - mDividerView.setup(splitLayout, this, mViewHost, insetsState, desktopState); + mDividerView.setup(splitLayout, this, mViewHost, insetsState); if (isRestoring) { mDividerView.setInteractive(mLastDividerInteractive, mLastDividerHandleHidden, "restore_setup"); @@ -193,7 +192,7 @@ public final class SplitWindowManager extends WindowlessWindowManager { mDividerView.setInteractive(interactive, hideHandle, from); } - DividerView getDividerView() { + View getDividerView() { return mDividerView; } diff --git a/wmshell/src/com/android/wm/shell/compatui/CompatUIController.java b/wmshell/src/com/android/wm/shell/compatui/CompatUIController.java index a1b9d4830e..2520c25613 100644 --- a/wmshell/src/com/android/wm/shell/compatui/CompatUIController.java +++ b/wmshell/src/com/android/wm/shell/compatui/CompatUIController.java @@ -18,10 +18,9 @@ package com.android.wm.shell.compatui; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; -import static com.android.wm.shell.compatui.impl.CompatUIRequestsKt.DISPLAY_COMPAT_SHOW_RESTART_DIALOG; - import android.annotation.NonNull; import android.annotation.Nullable; +import android.app.CameraCompatTaskInfo.CameraCompatControlState; import android.app.TaskInfo; import android.content.ComponentName; import android.content.Context; @@ -39,7 +38,6 @@ import android.view.Display; import android.view.InsetsSourceControl; import android.view.InsetsState; import android.view.accessibility.AccessibilityManager; -import android.window.DesktopModeFlags; import com.android.internal.annotations.VisibleForTesting; import com.android.wm.shell.ShellTaskOrganizer; @@ -52,14 +50,6 @@ import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.DockStateReader; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.compatui.api.CompatUIEvent; -import com.android.wm.shell.compatui.api.CompatUIHandler; -import com.android.wm.shell.compatui.api.CompatUIInfo; -import com.android.wm.shell.compatui.api.CompatUIRequest; -import com.android.wm.shell.compatui.impl.CompatUIEvents.SizeCompatRestartButtonClicked; -import com.android.wm.shell.compatui.impl.CompatUIRequests; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.sysui.KeyguardChangeListener; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; @@ -71,7 +61,6 @@ import java.lang.ref.WeakReference; import java.util.ArrayList; import java.util.HashSet; import java.util.List; -import java.util.Optional; import java.util.Set; import java.util.function.Consumer; import java.util.function.Function; @@ -82,7 +71,17 @@ import java.util.function.Predicate; * activities are in compatibility mode. */ public class CompatUIController implements OnDisplaysChangedListener, - DisplayImeController.ImePositionProcessor, KeyguardChangeListener, CompatUIHandler { + DisplayImeController.ImePositionProcessor, KeyguardChangeListener { + + /** Callback for compat UI interaction. */ + public interface CompatUICallback { + /** Called when the size compat restart button appears. */ + void onSizeCompatRestartButtonAppeared(int taskId); + /** Called when the size compat restart button is clicked. */ + void onSizeCompatRestartButtonClicked(int taskId); + /** Called when the camera compat control state is updated. */ + void onCameraControlStateUpdated(int taskId, @CameraCompatControlState int state); + } private static final String TAG = "CompatUIController"; @@ -111,12 +110,6 @@ public class CompatUIController implements OnDisplaysChangedListener, private final SparseArray<RestartDialogWindowManager> mTaskIdToRestartDialogWindowManagerMap = new SparseArray<>(0); - /** - * {@link SparseArray} that maps task ids to {@link CompatUIInfo}. - */ - private final SparseArray<CompatUIInfo> mTaskIdToCompatUIInfoMap = - new SparseArray<>(0); - /** * {@link Set} of task ids for which we need to display a restart confirmation dialog */ @@ -177,7 +170,7 @@ public class CompatUIController implements OnDisplaysChangedListener, private final Function<Integer, Integer> mDisappearTimeSupplier; @Nullable - private Consumer<CompatUIEvent> mCallback; + private CompatUICallback mCompatUICallback; // Indicates if the keyguard is currently showing, in which case compat UIs shouldn't // be shown. @@ -200,17 +193,6 @@ public class CompatUIController implements OnDisplaysChangedListener, */ private boolean mIsFirstReachabilityEducationRunning; - private boolean mIsInDesktopMode; - - @NonNull - private final CompatUIStatusManager mCompatUIStatusManager; - - @NonNull - private final Optional<DesktopUserRepositories> mDesktopUserRepositories; - - @NonNull - private final DesktopState mDesktopState; - public CompatUIController(@NonNull Context context, @NonNull ShellInit shellInit, @NonNull ShellController shellController, @@ -223,10 +205,7 @@ public class CompatUIController implements OnDisplaysChangedListener, @NonNull DockStateReader dockStateReader, @NonNull CompatUIConfiguration compatUIConfiguration, @NonNull CompatUIShellCommandHandler compatUIShellCommandHandler, - @NonNull AccessibilityManager accessibilityManager, - @NonNull CompatUIStatusManager compatUIStatusManager, - @NonNull Optional<DesktopUserRepositories> desktopUserRepositories, - @NonNull DesktopState desktopState) { + @NonNull AccessibilityManager accessibilityManager) { mContext = context; mShellController = shellController; mDisplayController = displayController; @@ -241,9 +220,6 @@ public class CompatUIController implements OnDisplaysChangedListener, mCompatUIShellCommandHandler = compatUIShellCommandHandler; mDisappearTimeSupplier = flags -> accessibilityManager.getRecommendedTimeoutMillis( DISAPPEAR_DELAY_MS, flags); - mCompatUIStatusManager = compatUIStatusManager; - mDesktopUserRepositories = desktopUserRepositories; - mDesktopState = desktopState; shellInit.addInitCallback(this::onInit, this); } @@ -254,86 +230,55 @@ public class CompatUIController implements OnDisplaysChangedListener, mCompatUIShellCommandHandler.onInit(); } - /** Sets the callback for UI interactions. */ - @Override - public void setCallback(@Nullable Consumer<CompatUIEvent> callback) { - mCallback = callback; - } - - @Override - public void sendCompatUIRequest(CompatUIRequest compatUIRequest) { - switch(compatUIRequest.getRequestId()) { - case DISPLAY_COMPAT_SHOW_RESTART_DIALOG: - handleDisplayCompatShowRestartDialog(compatUIRequest.asType()); - break; - default: - } - } - - private void handleDisplayCompatShowRestartDialog( - CompatUIRequests.DisplayCompatShowRestartDialog request) { - final CompatUIInfo compatUIInfo = mTaskIdToCompatUIInfoMap.get(request.getTaskId()); - if (compatUIInfo == null) { - return; - } - onRestartButtonClicked(new Pair<>(compatUIInfo.getTaskInfo(), compatUIInfo.getListener())); + /** Sets the callback for Compat UI interactions. */ + public void setCompatUICallback(@NonNull CompatUICallback compatUiCallback) { + mCompatUICallback = compatUiCallback; } /** * Called when the Task info changed. Creates and updates the compat UI if there is an * activity in size compat, or removes the UI if there is no size compat activity. * - * @param compatUIInfo {@link CompatUIInfo} encapsulates information about the task and listener + * @param taskInfo {@link TaskInfo} task the activity is in. + * @param taskListener listener to handle the Task Surface placement. */ - public void onCompatInfoChanged(@NonNull CompatUIInfo compatUIInfo) { - final TaskInfo taskInfo = compatUIInfo.getTaskInfo(); - final ShellTaskOrganizer.TaskListener taskListener = compatUIInfo.getListener(); - if (taskListener == null) { - mTaskIdToCompatUIInfoMap.delete(taskInfo.taskId); - } else { - mTaskIdToCompatUIInfoMap.put(taskInfo.taskId, compatUIInfo); - } - final boolean isInDisplayCompatMode = - taskInfo.appCompatTaskInfo.isRestartMenuEnabledForDisplayMove(); - if (taskInfo != null && !taskInfo.appCompatTaskInfo.isTopActivityInSizeCompat() - && !isInDisplayCompatMode) { + public void onCompatInfoChanged(@NonNull TaskInfo taskInfo, + @Nullable ShellTaskOrganizer.TaskListener taskListener) { + if (taskInfo != null && !taskInfo.appCompatTaskInfo.topActivityInSizeCompat) { mSetOfTaskIdsShowingRestartDialog.remove(taskInfo.taskId); } - mIsInDesktopMode = isInDesktopMode(taskInfo); - // We close all the Compat UI educations in case TaskInfo has no configuration or - // TaskListener or in desktop mode. - if (taskInfo.configuration == null || taskListener == null - || (mIsInDesktopMode && !isInDisplayCompatMode)) { - // Null token means the current foreground activity is not in compatibility mode. - removeLayouts(taskInfo.taskId); - return; - } + if (taskInfo != null && taskListener != null) { updateActiveTaskInfo(taskInfo); } + if (taskInfo.configuration == null || taskListener == null) { + // Null token means the current foreground activity is not in compatibility mode. + removeLayouts(taskInfo.taskId); + return; + } // We're showing the first reachability education so we ignore incoming TaskInfo // until the education flow has completed or we double tap. The double-tap // basically cancel all the onboarding flow. We don't have to ignore events in case // the app is in size compat mode. if (mIsFirstReachabilityEducationRunning) { - if (!taskInfo.appCompatTaskInfo.isFromLetterboxDoubleTap() - && !taskInfo.appCompatTaskInfo.isTopActivityInSizeCompat()) { + if (!taskInfo.appCompatTaskInfo.isFromLetterboxDoubleTap + && !taskInfo.appCompatTaskInfo.topActivityInSizeCompat) { return; } mIsFirstReachabilityEducationRunning = false; } - if (taskInfo.appCompatTaskInfo.isTopActivityLetterboxed()) { - if (taskInfo.appCompatTaskInfo.isLetterboxEducationEnabled()) { + if (taskInfo.appCompatTaskInfo.topActivityBoundsLetterboxed) { + if (taskInfo.appCompatTaskInfo.isLetterboxEducationEnabled) { createOrUpdateLetterboxEduLayout(taskInfo, taskListener); - } else if (!taskInfo.appCompatTaskInfo.isFromLetterboxDoubleTap()) { + } else if (!taskInfo.appCompatTaskInfo.isFromLetterboxDoubleTap) { // In this case the app is letterboxed and the letterbox education // is disabled. In this case we need to understand if it's the first // time we show the reachability education. When this is happening // we need to ignore all the incoming TaskInfo until the education // completes. If we come from a double tap we follow the normal flow. final boolean topActivityPillarboxed = - taskInfo.appCompatTaskInfo.isTopActivityPillarboxShaped(); + taskInfo.appCompatTaskInfo.isTopActivityPillarboxed(); final boolean isFirstTimeHorizontalReachabilityEdu = topActivityPillarboxed && !mCompatUIConfiguration.hasSeenHorizontalReachabilityEducation(taskInfo); final boolean isFirstTimeVerticalReachabilityEdu = !topActivityPillarboxed @@ -343,7 +288,7 @@ public class CompatUIController implements OnDisplaysChangedListener, // We activate the first reachability education if the double-tap is enabled. // If the double tap is not enabled (e.g. thin letterbox) we just set the value // of the education being seen. - if (taskInfo.appCompatTaskInfo.isLetterboxDoubleTapEnabled()) { + if (taskInfo.appCompatTaskInfo.isLetterboxDoubleTapEnabled) { mIsFirstReachabilityEducationRunning = true; createOrUpdateReachabilityEduLayout(taskInfo, taskListener); return; @@ -354,7 +299,7 @@ public class CompatUIController implements OnDisplaysChangedListener, createOrUpdateCompatLayout(taskInfo, taskListener); createOrUpdateRestartDialogLayout(taskInfo, taskListener); if (mCompatUIConfiguration.getHasSeenLetterboxEducation(taskInfo.userId)) { - if (taskInfo.appCompatTaskInfo.isLetterboxDoubleTapEnabled()) { + if (taskInfo.appCompatTaskInfo.isLetterboxDoubleTapEnabled) { createOrUpdateReachabilityEduLayout(taskInfo, taskListener); } // The user aspect ratio button should not be handled when a new TaskInfo is @@ -366,7 +311,7 @@ public class CompatUIController implements OnDisplaysChangedListener, } return; } - if (!taskInfo.appCompatTaskInfo.isFromLetterboxDoubleTap()) { + if (!taskInfo.appCompatTaskInfo.isFromLetterboxDoubleTap) { createOrUpdateUserAspectRatioSettingsLayout(taskInfo, taskListener); } } @@ -406,6 +351,7 @@ public class CompatUIController implements OnDisplaysChangedListener, mOnInsetsChangedListeners.remove(displayId); } + @Override public void onDisplayConfigurationChanged(int displayId, Configuration newConfig) { updateDisplayLayout(displayId); @@ -490,7 +436,7 @@ public class CompatUIController implements OnDisplaysChangedListener, @Nullable ShellTaskOrganizer.TaskListener taskListener) { CompatUIWindowManager layout = mActiveCompatLayouts.get(taskInfo.taskId); if (layout != null) { - if (layout.needsToBeRecreated(taskInfo, taskListener) || mIsInDesktopMode) { + if (layout.needsToBeRecreated(taskInfo, taskListener)) { mActiveCompatLayouts.remove(taskInfo.taskId); layout.release(); } else { @@ -503,10 +449,7 @@ public class CompatUIController implements OnDisplaysChangedListener, return; } } - if (mIsInDesktopMode) { - // Return if in desktop mode. - return; - } + // Create a new UI layout. final Context context = getOrCreateDisplayContext(taskInfo.displayId); if (context == null) { @@ -523,9 +466,9 @@ public class CompatUIController implements OnDisplaysChangedListener, CompatUIWindowManager createCompatUiWindowManager(Context context, TaskInfo taskInfo, ShellTaskOrganizer.TaskListener taskListener) { return new CompatUIWindowManager(context, - taskInfo, mSyncQueue, mCallback, taskListener, + taskInfo, mSyncQueue, mCompatUICallback, taskListener, mDisplayController.getDisplayLayout(taskInfo.displayId), mCompatUIHintsState, - mCompatUIConfiguration, this::onRestartButtonClicked, mDesktopState); + mCompatUIConfiguration, this::onRestartButtonClicked); } private void onRestartButtonClicked( @@ -535,17 +478,16 @@ public class CompatUIController implements OnDisplaysChangedListener, taskInfoState.first)) { // We need to show the dialog mSetOfTaskIdsShowingRestartDialog.add(taskInfoState.first.taskId); - onCompatInfoChanged(new CompatUIInfo(taskInfoState.first, taskInfoState.second)); + onCompatInfoChanged(taskInfoState.first, taskInfoState.second); } else { - mCallback.accept(new SizeCompatRestartButtonClicked(taskInfoState.first.taskId)); + mCompatUICallback.onSizeCompatRestartButtonClicked(taskInfoState.first.taskId); } } private void createOrUpdateLetterboxEduLayout(@NonNull TaskInfo taskInfo, @Nullable ShellTaskOrganizer.TaskListener taskListener) { if (mActiveLetterboxEduLayout != null) { - if (mActiveLetterboxEduLayout.needsToBeRecreated(taskInfo, taskListener) - || mIsInDesktopMode) { + if (mActiveLetterboxEduLayout.needsToBeRecreated(taskInfo, taskListener)) { mActiveLetterboxEduLayout.release(); mActiveLetterboxEduLayout = null; } else { @@ -558,10 +500,6 @@ public class CompatUIController implements OnDisplaysChangedListener, return; } } - if (mIsInDesktopMode) { - // Return if in desktop mode. - return; - } // Create a new UI layout. final Context context = getOrCreateDisplayContext(taskInfo.displayId); if (context == null) { @@ -588,18 +526,15 @@ public class CompatUIController implements OnDisplaysChangedListener, mSyncQueue, taskListener, mDisplayController.getDisplayLayout(taskInfo.displayId), mTransitionsLazy.get(), stateInfo -> createOrUpdateReachabilityEduLayout(stateInfo.first, stateInfo.second), - mDockStateReader, mCompatUIConfiguration, mCompatUIStatusManager); + mDockStateReader, mCompatUIConfiguration); } private void createOrUpdateRestartDialogLayout(@NonNull TaskInfo taskInfo, @Nullable ShellTaskOrganizer.TaskListener taskListener) { RestartDialogWindowManager layout = mTaskIdToRestartDialogWindowManagerMap.get(taskInfo.taskId); - final boolean isInNonDisplayCompatDesktopMode = mIsInDesktopMode - && !taskInfo.appCompatTaskInfo.isRestartMenuEnabledForDisplayMove(); if (layout != null) { - if (layout.needsToBeRecreated(taskInfo, taskListener) - || isInNonDisplayCompatDesktopMode) { + if (layout.needsToBeRecreated(taskInfo, taskListener)) { mTaskIdToRestartDialogWindowManagerMap.remove(taskInfo.taskId); layout.release(); } else { @@ -614,11 +549,6 @@ public class CompatUIController implements OnDisplaysChangedListener, return; } } - if (isInNonDisplayCompatDesktopMode) { - // No restart dialog can be shown in desktop mode unless the task is in display compat - // mode. - return; - } // Create a new UI layout. final Context context = getOrCreateDisplayContext(taskInfo.displayId); if (context == null) { @@ -645,20 +575,19 @@ public class CompatUIController implements OnDisplaysChangedListener, private void onRestartDialogCallback( Pair<TaskInfo, ShellTaskOrganizer.TaskListener> stateInfo) { mTaskIdToRestartDialogWindowManagerMap.remove(stateInfo.first.taskId); - mCallback.accept(new SizeCompatRestartButtonClicked(stateInfo.first.taskId)); + mCompatUICallback.onSizeCompatRestartButtonClicked(stateInfo.first.taskId); } private void onRestartDialogDismissCallback( Pair<TaskInfo, ShellTaskOrganizer.TaskListener> stateInfo) { mSetOfTaskIdsShowingRestartDialog.remove(stateInfo.first.taskId); - onCompatInfoChanged(new CompatUIInfo(stateInfo.first, stateInfo.second)); + onCompatInfoChanged(stateInfo.first, stateInfo.second); } private void createOrUpdateReachabilityEduLayout(@NonNull TaskInfo taskInfo, @Nullable ShellTaskOrganizer.TaskListener taskListener) { if (mActiveReachabilityEduLayout != null) { - if (mActiveReachabilityEduLayout.needsToBeRecreated(taskInfo, taskListener) - || mIsInDesktopMode) { + if (mActiveReachabilityEduLayout.needsToBeRecreated(taskInfo, taskListener)) { mActiveReachabilityEduLayout.release(); mActiveReachabilityEduLayout = null; } else { @@ -672,10 +601,6 @@ public class CompatUIController implements OnDisplaysChangedListener, return; } } - if (mIsInDesktopMode) { - // Return if in desktop mode. - return; - } // Create a new UI layout. final Context context = getOrCreateDisplayContext(taskInfo.displayId); if (context == null) { @@ -714,10 +639,8 @@ public class CompatUIController implements OnDisplaysChangedListener, private void createOrUpdateUserAspectRatioSettingsLayout(@NonNull TaskInfo taskInfo, @Nullable ShellTaskOrganizer.TaskListener taskListener) { - boolean overridesShowAppHandle = mDesktopState.overridesShowAppHandle(); if (mUserAspectRatioSettingsLayout != null) { - if (mUserAspectRatioSettingsLayout.needsToBeRecreated(taskInfo, taskListener) - || mIsInDesktopMode || overridesShowAppHandle) { + if (mUserAspectRatioSettingsLayout.needsToBeRecreated(taskInfo, taskListener)) { mUserAspectRatioSettingsLayout.release(); mUserAspectRatioSettingsLayout = null; } else { @@ -730,11 +653,7 @@ public class CompatUIController implements OnDisplaysChangedListener, return; } } - if (mIsInDesktopMode || overridesShowAppHandle) { - // Return if in desktop mode or app handle menu is already showing change aspect ratio - // option. - return; - } + // Create a new UI layout. final Context context = getOrCreateDisplayContext(taskInfo.displayId); if (context == null) { @@ -762,12 +681,6 @@ public class CompatUIController implements OnDisplaysChangedListener, private void launchUserAspectRatioSettings( @NonNull TaskInfo taskInfo, @NonNull ShellTaskOrganizer.TaskListener taskListener) { - launchUserAspectRatioSettings(mContext, taskInfo); - } - - /** Launch the user aspect ratio settings for the package of the given task. */ - public static void launchUserAspectRatioSettings( - @NonNull Context context, @NonNull TaskInfo taskInfo) { final Intent intent = new Intent(Settings.ACTION_MANAGE_USER_ASPECT_RATIO_SETTINGS); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK); @@ -777,18 +690,20 @@ public class CompatUIController implements OnDisplaysChangedListener, intent.setData(packageUri); } final UserHandle userHandle = UserHandle.of(taskInfo.userId); - context.startActivityAsUser(intent, userHandle); + mContext.startActivityAsUser(intent, userHandle); } - @VisibleForTesting - void removeLayouts(int taskId) { + private void removeLayouts(int taskId) { final CompatUIWindowManager compatLayout = mActiveCompatLayouts.get(taskId); if (compatLayout != null) { compatLayout.release(); mActiveCompatLayouts.remove(taskId); } - removeLetterboxEdu(taskId); + if (mActiveLetterboxEduLayout != null && mActiveLetterboxEduLayout.getTaskId() == taskId) { + mActiveLetterboxEduLayout.release(); + mActiveLetterboxEduLayout = null; + } final RestartDialogWindowManager restartLayout = mTaskIdToRestartDialogWindowManagerMap.get(taskId); @@ -810,16 +725,6 @@ public class CompatUIController implements OnDisplaysChangedListener, } } - @VisibleForTesting - void removeLetterboxEdu(int taskId) { - // When in desktop windowing the dialog will be removed in any case. - if (mActiveLetterboxEduLayout != null && (mActiveLetterboxEduLayout.getTaskId() == taskId - || mIsInDesktopMode)) { - mActiveLetterboxEduLayout.release(); - mActiveLetterboxEduLayout = null; - } - } - private Context getOrCreateDisplayContext(int displayId) { if (displayId == Display.DEFAULT_DISPLAY) { return mContext; @@ -918,16 +823,7 @@ public class CompatUIController implements OnDisplaysChangedListener, */ static class CompatUIHintsState { boolean mHasShownSizeCompatHint; + boolean mHasShownCameraCompatHint; boolean mHasShownUserAspectRatioSettingsButtonHint; } - - private boolean isInDesktopMode(@Nullable TaskInfo taskInfo) { - if (mDesktopUserRepositories.isEmpty() || taskInfo == null) { - return false; - } - boolean isDesktopModeShowing = mDesktopUserRepositories.get().getCurrent() - .isAnyDeskActive(taskInfo.displayId); - return DesktopModeFlags.ENABLE_DESKTOP_SKIP_COMPAT_UI_EDUCATION_IN_DESKTOP_MODE_BUGFIX - .isTrue() && isDesktopModeShowing; - } } diff --git a/wmshell/src/com/android/wm/shell/compatui/CompatUILayout.java b/wmshell/src/com/android/wm/shell/compatui/CompatUILayout.java index 688f8ca2dc..2b0bd3272e 100644 --- a/wmshell/src/com/android/wm/shell/compatui/CompatUILayout.java +++ b/wmshell/src/com/android/wm/shell/compatui/CompatUILayout.java @@ -16,7 +16,10 @@ package com.android.wm.shell.compatui; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + import android.annotation.IdRes; +import android.app.CameraCompatTaskInfo.CameraCompatControlState; import android.content.Context; import android.util.AttributeSet; import android.view.View; @@ -54,10 +57,28 @@ class CompatUILayout extends LinearLayout { mWindowManager = windowManager; } + void updateCameraTreatmentButton(@CameraCompatControlState int newState) { + int buttonBkgId = newState == CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED + ? R.drawable.camera_compat_treatment_suggested_ripple + : R.drawable.camera_compat_treatment_applied_ripple; + int hintStringId = newState == CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED + ? R.string.camera_compat_treatment_suggested_button_description + : R.string.camera_compat_treatment_applied_button_description; + final ImageButton button = findViewById(R.id.camera_compat_treatment_button); + button.setImageResource(buttonBkgId); + button.setContentDescription(getResources().getString(hintStringId)); + final LinearLayout hint = findViewById(R.id.camera_compat_hint); + ((TextView) hint.findViewById(R.id.compat_mode_hint_text)).setText(hintStringId); + } + void setSizeCompatHintVisibility(boolean show) { setViewVisibility(R.id.size_compat_hint, show); } + void setCameraCompatHintVisibility(boolean show) { + setViewVisibility(R.id.camera_compat_hint, show); + } + void setRestartButtonVisibility(boolean show) { setViewVisibility(R.id.size_compat_restart_button, show); // Hint should never be visible without button. @@ -66,6 +87,14 @@ class CompatUILayout extends LinearLayout { } } + void setCameraControlVisibility(boolean show) { + setViewVisibility(R.id.camera_compat_control, show); + // Hint should never be visible without button. + if (!show) { + setCameraCompatHintVisibility(/* show= */ false); + } + } + private void setViewVisibility(@IdRes int resId, boolean show) { final View view = findViewById(resId); int visibility = show ? View.VISIBLE : View.GONE; @@ -98,5 +127,26 @@ class CompatUILayout extends LinearLayout { ((TextView) sizeCompatHint.findViewById(R.id.compat_mode_hint_text)) .setText(R.string.restart_button_description); sizeCompatHint.setOnClickListener(view -> setSizeCompatHintVisibility(/* show= */ false)); + + final ImageButton cameraTreatmentButton = + findViewById(R.id.camera_compat_treatment_button); + cameraTreatmentButton.setOnClickListener( + view -> mWindowManager.onCameraTreatmentButtonClicked()); + cameraTreatmentButton.setOnLongClickListener(view -> { + mWindowManager.onCameraButtonLongClicked(); + return true; + }); + + final ImageButton cameraDismissButton = findViewById(R.id.camera_compat_dismiss_button); + cameraDismissButton.setOnClickListener( + view -> mWindowManager.onCameraDismissButtonClicked()); + cameraDismissButton.setOnLongClickListener(view -> { + mWindowManager.onCameraButtonLongClicked(); + return true; + }); + + final LinearLayout cameraCompatHint = findViewById(R.id.camera_compat_hint); + cameraCompatHint.setOnClickListener( + view -> setCameraCompatHintVisibility(/* show= */ false)); } } diff --git a/wmshell/src/com/android/wm/shell/compatui/CompatUIShellCommandHandler.java b/wmshell/src/com/android/wm/shell/compatui/CompatUIShellCommandHandler.java index 6bf0c2f047..4fb18e27b1 100644 --- a/wmshell/src/com/android/wm/shell/compatui/CompatUIShellCommandHandler.java +++ b/wmshell/src/com/android/wm/shell/compatui/CompatUIShellCommandHandler.java @@ -27,7 +27,8 @@ import javax.inject.Inject; /** * Handles the shell commands for the CompatUX. * - * <p> Use with {@code adb shell wm shell compatui &lt;command&gt;}. + * <p> Use with {@code adb shell dumpsys activity service SystemUIService WMShell compatui + * &lt;command&gt;}. */ @WMSingleton public final class CompatUIShellCommandHandler implements diff --git a/wmshell/src/com/android/wm/shell/compatui/CompatUIWindowManager.java b/wmshell/src/com/android/wm/shell/compatui/CompatUIWindowManager.java index 875105dd3d..3ab1fad2b2 100644 --- a/wmshell/src/com/android/wm/shell/compatui/CompatUIWindowManager.java +++ b/wmshell/src/com/android/wm/shell/compatui/CompatUIWindowManager.java @@ -16,29 +16,32 @@ package com.android.wm.shell.compatui; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_DISMISSED; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_HIDDEN; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; import static android.view.WindowManager.LARGE_SCREEN_SMALLEST_SCREEN_WIDTH_DP; import static android.window.TaskConstants.TASK_CHILD_LAYER_COMPAT_UI; import android.annotation.NonNull; import android.annotation.Nullable; +import android.app.CameraCompatTaskInfo.CameraCompatControlState; import android.app.TaskInfo; import android.content.Context; import android.graphics.Rect; +import android.util.Log; import android.util.Pair; import android.view.LayoutInflater; -import android.view.SurfaceControl; import android.view.View; -import android.window.DesktopModeFlags; import com.android.internal.annotations.VisibleForTesting; +import com.android.window.flags.Flags; import com.android.wm.shell.R; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.SyncTransactionQueue; +import com.android.wm.shell.compatui.CompatUIController.CompatUICallback; import com.android.wm.shell.compatui.CompatUIController.CompatUIHintsState; -import com.android.wm.shell.compatui.api.CompatUIEvent; -import com.android.wm.shell.compatui.impl.CompatUIEvents.SizeCompatRestartButtonAppeared; -import com.android.wm.shell.shared.desktopmode.DesktopState; import java.util.function.Consumer; @@ -47,13 +50,10 @@ import java.util.function.Consumer; */ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { - @NonNull - private final Consumer<CompatUIEvent> mCallback; + private final CompatUICallback mCallback; - @NonNull private final CompatUIConfiguration mCompatUIConfiguration; - @NonNull private final Consumer<Pair<TaskInfo, ShellTaskOrganizer.TaskListener>> mOnRestartButtonClicked; // Remember the last reported states in case visibility changes due to keyguard or IME updates. @@ -61,7 +61,10 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { boolean mHasSizeCompat; @VisibleForTesting - @NonNull + @CameraCompatControlState + int mCameraCompatControlState = CAMERA_COMPAT_CONTROL_HIDDEN; + + @VisibleForTesting CompatUIHintsState mCompatUIHintsState; @Nullable @@ -70,35 +73,24 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { private final float mHideScmTolerance; - @NonNull - private final Rect mLayoutBounds = new Rect(); - - @NonNull - private final DesktopState mDesktopState; - - CompatUIWindowManager(@NonNull Context context, @NonNull TaskInfo taskInfo, - @NonNull SyncTransactionQueue syncQueue, - @NonNull Consumer<CompatUIEvent> callback, - @Nullable ShellTaskOrganizer.TaskListener taskListener, - @Nullable DisplayLayout displayLayout, - @NonNull CompatUIHintsState compatUIHintsState, - @NonNull CompatUIConfiguration compatUIConfiguration, - @NonNull Consumer<Pair<TaskInfo, ShellTaskOrganizer.TaskListener>> - onRestartButtonClicked, - @NonNull DesktopState desktopState) { + CompatUIWindowManager(Context context, TaskInfo taskInfo, + SyncTransactionQueue syncQueue, CompatUICallback callback, + ShellTaskOrganizer.TaskListener taskListener, DisplayLayout displayLayout, + CompatUIHintsState compatUIHintsState, CompatUIConfiguration compatUIConfiguration, + Consumer<Pair<TaskInfo, ShellTaskOrganizer.TaskListener>> onRestartButtonClicked) { super(context, taskInfo, syncQueue, taskListener, displayLayout); mCallback = callback; - mHasSizeCompat = taskInfo.appCompatTaskInfo.isTopActivityInSizeCompat(); - if (desktopState.canEnterDesktopMode() - && DesktopModeFlags.ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS.isTrue()) { + mHasSizeCompat = taskInfo.appCompatTaskInfo.topActivityInSizeCompat; + if (Flags.enableDesktopWindowingMode() && Flags.enableWindowingDynamicInitialBounds()) { // Don't show the SCM button for freeform tasks mHasSizeCompat &= !taskInfo.isFreeform(); } + mCameraCompatControlState = + taskInfo.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState; mCompatUIHintsState = compatUIHintsState; mCompatUIConfiguration = compatUIConfiguration; mOnRestartButtonClicked = onRestartButtonClicked; mHideScmTolerance = mCompatUIConfiguration.getHideSizeCompatRestartButtonTolerance(); - mDesktopState = desktopState; } @Override @@ -113,13 +105,13 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { @Override protected void removeLayout() { - mLayoutBounds.setEmpty(); mLayout = null; } @Override protected boolean eligibleToShowLayout() { - return mHasSizeCompat && shouldShowSizeCompatRestartButton(getLastTaskInfo()); + return (mHasSizeCompat && shouldShowSizeCompatRestartButton(getLastTaskInfo())) + || shouldShowCameraControl(); } @Override @@ -130,7 +122,7 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { updateVisibilityOfViews(); if (mHasSizeCompat) { - mCallback.accept(new SizeCompatRestartButtonAppeared(mTaskId)); + mCallback.onSizeCompatRestartButtonAppeared(mTaskId); } return mLayout; @@ -146,18 +138,21 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { public boolean updateCompatInfo(TaskInfo taskInfo, ShellTaskOrganizer.TaskListener taskListener, boolean canShow) { final boolean prevHasSizeCompat = mHasSizeCompat; - mHasSizeCompat = taskInfo.appCompatTaskInfo.isTopActivityInSizeCompat(); - if (mDesktopState.canEnterDesktopMode() - && DesktopModeFlags.ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS.isTrue()) { + final int prevCameraCompatControlState = mCameraCompatControlState; + mHasSizeCompat = taskInfo.appCompatTaskInfo.topActivityInSizeCompat; + if (Flags.enableDesktopWindowingMode() && Flags.enableWindowingDynamicInitialBounds()) { // Don't show the SCM button for freeform tasks mHasSizeCompat &= !taskInfo.isFreeform(); } + mCameraCompatControlState = + taskInfo.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState; if (!super.updateCompatInfo(taskInfo, taskListener, canShow)) { return false; } - if (prevHasSizeCompat != mHasSizeCompat) { + if (prevHasSizeCompat != mHasSizeCompat + || prevCameraCompatControlState != mCameraCompatControlState) { updateVisibilityOfViews(); } @@ -169,6 +164,34 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { mOnRestartButtonClicked.accept(Pair.create(getLastTaskInfo(), getTaskListener())); } + /** Called when the camera treatment button is clicked. */ + void onCameraTreatmentButtonClicked() { + if (!shouldShowCameraControl()) { + Log.w(getTag(), "Camera compat shouldn't receive clicks in the hidden state."); + return; + } + // When a camera control is shown, only two states are allowed: "treament applied" and + // "treatment suggested". Clicks on the conrol's treatment button toggle between these + // two states. + mCameraCompatControlState = + mCameraCompatControlState == CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED + ? CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED + : CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + mCallback.onCameraControlStateUpdated(mTaskId, mCameraCompatControlState); + mLayout.updateCameraTreatmentButton(mCameraCompatControlState); + } + + /** Called when the camera dismiss button is clicked. */ + void onCameraDismissButtonClicked() { + if (!shouldShowCameraControl()) { + Log.w(getTag(), "Camera compat shouldn't receive clicks in the hidden state."); + return; + } + mCameraCompatControlState = CAMERA_COMPAT_CONTROL_DISMISSED; + mCallback.onCameraControlStateUpdated(mTaskId, CAMERA_COMPAT_CONTROL_DISMISSED); + mLayout.setCameraControlVisibility(/* show= */ false); + } + /** Called when the restart button is long clicked. */ void onRestartButtonLongClicked() { if (mLayout == null) { @@ -177,30 +200,36 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { mLayout.setSizeCompatHintVisibility(/* show= */ true); } - @Override - @VisibleForTesting - public void updateSurfacePosition() { - updateLayoutBounds(); - if (mLayoutBounds.isEmpty()) { + /** Called when either dismiss or treatment camera buttons is long clicked. */ + void onCameraButtonLongClicked() { + if (mLayout == null) { return; } - updateSurfacePosition(mLayoutBounds.left, mLayoutBounds.top); + mLayout.setCameraCompatHintVisibility(/* show= */ true); } @Override @VisibleForTesting - public void updateSurfacePosition(@NonNull SurfaceControl.Transaction tx) { - updateLayoutBounds(); - if (mLayoutBounds.isEmpty()) { + public void updateSurfacePosition() { + if (mLayout == null) { return; } - updateSurfaceBounds(tx, mLayoutBounds); + // Position of the button in the container coordinate. + final Rect taskBounds = getTaskBounds(); + final Rect taskStableBounds = getTaskStableBounds(); + final int positionX = getLayoutDirection() == View.LAYOUT_DIRECTION_RTL + ? taskStableBounds.left - taskBounds.left + : taskStableBounds.right - taskBounds.left - mLayout.getMeasuredWidth(); + final int positionY = taskStableBounds.bottom - taskBounds.top + - mLayout.getMeasuredHeight(); + updateSurfacePosition(positionX, positionY); } @VisibleForTesting boolean shouldShowSizeCompatRestartButton(@NonNull TaskInfo taskInfo) { // Always show button if display is phone sized. - if (taskInfo.configuration.smallestScreenWidthDp < LARGE_SCREEN_SMALLEST_SCREEN_WIDTH_DP) { + if (!Flags.allowHideScmButton() || taskInfo.configuration.smallestScreenWidthDp + < LARGE_SCREEN_SMALLEST_SCREEN_WIDTH_DP) { return true; } @@ -226,27 +255,9 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { return false; } final float percentageAreaOfLetterboxInTask = (float) letterboxArea / taskArea * 100; - return percentageAreaOfLetterboxInTask < mHideScmTolerance; } - private void updateLayoutBounds() { - if (mLayout == null) { - mLayoutBounds.setEmpty(); - return; - } - // Position of the button in the container coordinate. - final Rect taskBounds = getTaskBounds(); - final Rect taskStableBounds = getTaskStableBounds(); - final int layoutWidth = mLayout.getMeasuredWidth(); - final int layoutHeight = mLayout.getMeasuredHeight(); - final int positionX = getLayoutDirection() == View.LAYOUT_DIRECTION_RTL - ? taskStableBounds.left - taskBounds.left - : taskStableBounds.right - taskBounds.left - layoutWidth; - final int positionY = taskStableBounds.bottom - taskBounds.top - layoutHeight; - mLayoutBounds.set(positionX, positionY, positionX + layoutWidth, positionY + layoutHeight); - } - private void updateVisibilityOfViews() { if (mLayout == null) { return; @@ -258,5 +269,21 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract { mLayout.setSizeCompatHintVisibility(/* show= */ true); mCompatUIHintsState.mHasShownSizeCompatHint = true; } + + // Camera control for stretched issues. + mLayout.setCameraControlVisibility(shouldShowCameraControl()); + // Only show by default for the first time. + if (shouldShowCameraControl() && !mCompatUIHintsState.mHasShownCameraCompatHint) { + mLayout.setCameraCompatHintVisibility(/* show= */ true); + mCompatUIHintsState.mHasShownCameraCompatHint = true; + } + if (shouldShowCameraControl()) { + mLayout.updateCameraTreatmentButton(mCameraCompatControlState); + } + } + + private boolean shouldShowCameraControl() { + return mCameraCompatControlState != CAMERA_COMPAT_CONTROL_HIDDEN + && mCameraCompatControlState != CAMERA_COMPAT_CONTROL_DISMISSED; } } diff --git a/wmshell/src/com/android/wm/shell/compatui/CompatUIWindowManagerAbstract.java b/wmshell/src/com/android/wm/shell/compatui/CompatUIWindowManagerAbstract.java index a0cfdc18cf..0564c95aef 100644 --- a/wmshell/src/com/android/wm/shell/compatui/CompatUIWindowManagerAbstract.java +++ b/wmshell/src/com/android/wm/shell/compatui/CompatUIWindowManagerAbstract.java @@ -38,12 +38,12 @@ import android.util.Log; import android.view.IWindow; import android.view.SurfaceControl; import android.view.SurfaceControlViewHost; +import android.view.SurfaceSession; import android.view.View; import android.view.WindowManager; import android.view.WindowlessWindowManager; import com.android.internal.annotations.VisibleForTesting; -import com.android.window.flags2.Flags; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.SyncTransactionQueue; @@ -173,7 +173,7 @@ public abstract class CompatUIWindowManagerAbstract extends WindowlessWindowMana @Override protected SurfaceControl getParentSurface(IWindow window, WindowManager.LayoutParams attrs) { String className = getClass().getSimpleName(); - final SurfaceControl.Builder builder = new SurfaceControl.Builder() + final SurfaceControl.Builder builder = new SurfaceControl.Builder(new SurfaceSession()) .setContainerLayer() .setName(className + "Leash") .setHidden(false) @@ -328,15 +328,8 @@ public abstract class CompatUIWindowManagerAbstract extends WindowlessWindowMana if (mViewHost == null) { return; } - if (Flags.appCompatAsyncRelayout()) { - mViewHost.relayout(windowLayoutParams, tx -> { - updateSurfacePosition(tx); - tx.apply(); - }); - } else { - mViewHost.relayout(windowLayoutParams); - updateSurfacePosition(); - } + mViewHost.relayout(windowLayoutParams); + updateSurfacePosition(); } @NonNull @@ -357,10 +350,6 @@ public abstract class CompatUIWindowManagerAbstract extends WindowlessWindowMana */ protected abstract void updateSurfacePosition(); - protected void updateSurfacePosition(@NonNull SurfaceControl.Transaction tx) { - - } - /** * Updates the position of the surface with respect to the given {@code positionX} and {@code * positionY}. @@ -378,15 +367,6 @@ public abstract class CompatUIWindowManagerAbstract extends WindowlessWindowMana }); } - protected void updateSurfaceBounds(@NonNull SurfaceControl.Transaction tx, - @NonNull Rect bounds) { - if (mLeash == null) { - return; - } - tx.setPosition(mLeash, bounds.left, bounds.top) - .setWindowCrop(mLeash, bounds.width(), bounds.height()); - } - protected int getLayoutDirection() { return mContext.getResources().getConfiguration().getLayoutDirection(); } diff --git a/wmshell/src/com/android/wm/shell/compatui/DialogAnimationController.java b/wmshell/src/com/android/wm/shell/compatui/DialogAnimationController.java index 7d86063b89..7475feac5b 100644 --- a/wmshell/src/com/android/wm/shell/compatui/DialogAnimationController.java +++ b/wmshell/src/com/android/wm/shell/compatui/DialogAnimationController.java @@ -18,6 +18,7 @@ package com.android.wm.shell.compatui; import static com.android.internal.R.styleable.WindowAnimation_windowEnterAnimation; import static com.android.internal.R.styleable.WindowAnimation_windowExitAnimation; +import static com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; @@ -47,7 +48,9 @@ public class DialogAnimationController<T extends DialogContainerSupplier> { // 204 is simply 255 * 0.8. static final int BACKGROUND_DIM_ALPHA = 204; - private static final int ENTER_ANIM_START_DELAY_MILLIS = 300; + // If shell transitions are enabled, startEnterAnimation will be called after all transitions + // have finished, and therefore the start delay should be shorter. + private static final int ENTER_ANIM_START_DELAY_MILLIS = ENABLE_SHELL_TRANSITIONS ? 300 : 500; private final TransitionAnimation mTransitionAnimation; private final String mPackageName; diff --git a/wmshell/src/com/android/wm/shell/compatui/LetterboxEduWindowManager.java b/wmshell/src/com/android/wm/shell/compatui/LetterboxEduWindowManager.java index 3124a39716..623feada01 100644 --- a/wmshell/src/com/android/wm/shell/compatui/LetterboxEduWindowManager.java +++ b/wmshell/src/com/android/wm/shell/compatui/LetterboxEduWindowManager.java @@ -19,7 +19,6 @@ package com.android.wm.shell.compatui; import static android.provider.Settings.Secure.LAUNCHER_TASKBAR_EDUCATION_SHOWING; import static android.window.TaskConstants.TASK_CHILD_LAYER_COMPAT_UI; -import android.annotation.NonNull; import android.annotation.Nullable; import android.app.TaskInfo; import android.content.Context; @@ -77,19 +76,15 @@ class LetterboxEduWindowManager extends CompatUIWindowManagerAbstract { private final DockStateReader mDockStateReader; - @NonNull - private final CompatUIStatusManager mCompatUIStatusManager; - LetterboxEduWindowManager(Context context, TaskInfo taskInfo, SyncTransactionQueue syncQueue, ShellTaskOrganizer.TaskListener taskListener, DisplayLayout displayLayout, Transitions transitions, Consumer<Pair<TaskInfo, ShellTaskOrganizer.TaskListener>> onDismissCallback, - DockStateReader dockStateReader, CompatUIConfiguration compatUIConfiguration, - @NonNull CompatUIStatusManager compatUIStatusManager) { + DockStateReader dockStateReader, CompatUIConfiguration compatUIConfiguration) { this(context, taskInfo, syncQueue, taskListener, displayLayout, transitions, onDismissCallback, new DialogAnimationController<>(context, /* tag */ "LetterboxEduWindowManager"), - dockStateReader, compatUIConfiguration, compatUIStatusManager); + dockStateReader, compatUIConfiguration); } @VisibleForTesting @@ -98,8 +93,7 @@ class LetterboxEduWindowManager extends CompatUIWindowManagerAbstract { DisplayLayout displayLayout, Transitions transitions, Consumer<Pair<TaskInfo, ShellTaskOrganizer.TaskListener>> onDismissCallback, DialogAnimationController<LetterboxEduDialogLayout> animationController, - DockStateReader dockStateReader, CompatUIConfiguration compatUIConfiguration, - @NonNull CompatUIStatusManager compatUIStatusManager) { + DockStateReader dockStateReader, CompatUIConfiguration compatUIConfiguration) { super(context, taskInfo, syncQueue, taskListener, displayLayout); mTransitions = transitions; mOnDismissCallback = onDismissCallback; @@ -109,9 +103,8 @@ class LetterboxEduWindowManager extends CompatUIWindowManagerAbstract { R.dimen.letterbox_education_dialog_margin); mDockStateReader = dockStateReader; mCompatUIConfiguration = compatUIConfiguration; - mCompatUIStatusManager = compatUIStatusManager; mEligibleForLetterboxEducation = - taskInfo.appCompatTaskInfo.eligibleForLetterboxEducation(); + taskInfo.appCompatTaskInfo.topActivityEligibleForLetterboxEducation; } @Override @@ -146,7 +139,7 @@ class LetterboxEduWindowManager extends CompatUIWindowManagerAbstract { protected View createLayout() { mLayout = inflateLayout(); updateDialogMargins(); - mCompatUIStatusManager.onEducationShown(); + // startEnterAnimation will be called immediately if shell-transitions are disabled. mTransitions.runOnIdle(this::startEnterAnimation); return mLayout; @@ -206,14 +199,14 @@ class LetterboxEduWindowManager extends CompatUIWindowManagerAbstract { @Override public void release() { mAnimationController.cancelAnimation(); - mCompatUIStatusManager.onEducationHidden(); super.release(); } @Override public boolean updateCompatInfo(TaskInfo taskInfo, ShellTaskOrganizer.TaskListener taskListener, boolean canShow) { - mEligibleForLetterboxEducation = taskInfo.appCompatTaskInfo.eligibleForLetterboxEducation(); + mEligibleForLetterboxEducation = + taskInfo.appCompatTaskInfo.topActivityEligibleForLetterboxEducation; return super.updateCompatInfo(taskInfo, taskListener, canShow); } diff --git a/wmshell/src/com/android/wm/shell/compatui/ReachabilityEduWindowManager.java b/wmshell/src/com/android/wm/shell/compatui/ReachabilityEduWindowManager.java index 06f2dd1a3b..07082a5587 100644 --- a/wmshell/src/com/android/wm/shell/compatui/ReachabilityEduWindowManager.java +++ b/wmshell/src/com/android/wm/shell/compatui/ReachabilityEduWindowManager.java @@ -91,7 +91,7 @@ class ReachabilityEduWindowManager extends CompatUIWindowManagerAbstract { Function<Integer, Integer> disappearTimeSupplier) { super(context, taskInfo, syncQueue, taskListener, displayLayout); final AppCompatTaskInfo appCompatTaskInfo = taskInfo.appCompatTaskInfo; - mIsLetterboxDoubleTapEnabled = appCompatTaskInfo.isLetterboxDoubleTapEnabled(); + mIsLetterboxDoubleTapEnabled = appCompatTaskInfo.isLetterboxDoubleTapEnabled; mLetterboxVerticalPosition = appCompatTaskInfo.topActivityLetterboxVerticalPosition; mLetterboxHorizontalPosition = appCompatTaskInfo.topActivityLetterboxHorizontalPosition; mTopActivityLetterboxWidth = appCompatTaskInfo.topActivityLetterboxWidth; @@ -148,12 +148,12 @@ class ReachabilityEduWindowManager extends CompatUIWindowManagerAbstract { final int prevTopActivityLetterboxWidth = mTopActivityLetterboxWidth; final int prevTopActivityLetterboxHeight = mTopActivityLetterboxHeight; final AppCompatTaskInfo appCompatTaskInfo = taskInfo.appCompatTaskInfo; - mIsLetterboxDoubleTapEnabled = appCompatTaskInfo.isLetterboxDoubleTapEnabled(); + mIsLetterboxDoubleTapEnabled = appCompatTaskInfo.isLetterboxDoubleTapEnabled; mLetterboxVerticalPosition = appCompatTaskInfo.topActivityLetterboxVerticalPosition; mLetterboxHorizontalPosition = appCompatTaskInfo.topActivityLetterboxHorizontalPosition; mTopActivityLetterboxWidth = appCompatTaskInfo.topActivityLetterboxWidth; mTopActivityLetterboxHeight = appCompatTaskInfo.topActivityLetterboxHeight; - mHasUserDoubleTapped = appCompatTaskInfo.isFromLetterboxDoubleTap(); + mHasUserDoubleTapped = appCompatTaskInfo.isFromLetterboxDoubleTap; if (!super.updateCompatInfo(taskInfo, taskListener, canShow)) { return false; diff --git a/wmshell/src/com/android/wm/shell/compatui/RestartDialogWindowManager.java b/wmshell/src/com/android/wm/shell/compatui/RestartDialogWindowManager.java index cb4b881c66..a770da28fb 100644 --- a/wmshell/src/com/android/wm/shell/compatui/RestartDialogWindowManager.java +++ b/wmshell/src/com/android/wm/shell/compatui/RestartDialogWindowManager.java @@ -16,19 +16,20 @@ package com.android.wm.shell.compatui; +import static android.provider.Settings.Secure.LAUNCHER_TASKBAR_EDUCATION_SHOWING; import static android.window.TaskConstants.TASK_CHILD_LAYER_COMPAT_UI; import android.annotation.Nullable; import android.app.TaskInfo; import android.content.Context; import android.graphics.Rect; +import android.provider.Settings; import android.util.Pair; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.WindowManager; import android.view.accessibility.AccessibilityEvent; -import android.widget.ImageView; import com.android.internal.annotations.VisibleForTesting; import com.android.wm.shell.R; @@ -118,7 +119,7 @@ class RestartDialogWindowManager extends CompatUIWindowManagerAbstract { @Override protected boolean eligibleToShowLayout() { // We don't show this dialog if the user has explicitly selected so clicking on a checkbox. - return mRequestRestartDialog && (mLayout != null + return mRequestRestartDialog && !isTaskbarEduShowing() && (mLayout != null || mCompatUIConfiguration.shouldShowRestartDialogAgain(getLastTaskInfo())); } @@ -155,16 +156,8 @@ class RestartDialogWindowManager extends CompatUIWindowManagerAbstract { } private RestartDialogLayout inflateLayout() { - final RestartDialogLayout layout = - (RestartDialogLayout) LayoutInflater.from(mContext).inflate( + return (RestartDialogLayout) LayoutInflater.from(mContext).inflate( R.layout.letterbox_restart_dialog_layout, null); - if (getLastTaskInfo().appCompatTaskInfo.isRestartMenuEnabledForDisplayMove()) { - ImageView imageView = layout.findViewById(R.id.letterbox_restart_dialog_title_icon); - // Replace the "size compat" icon with something more general when requested from the - // restart handle menu. - imageView.setImageResource(R.drawable.desktop_mode_ic_handle_menu_restart); - } - return layout; } private void startEnterAnimation() { @@ -241,4 +234,10 @@ class RestartDialogWindowManager extends CompatUIWindowManagerAbstract { return getWindowLayoutParams(/* width= */ taskBounds.width(), /* height= */ taskBounds.height()); } + + @VisibleForTesting + boolean isTaskbarEduShowing() { + return Settings.Secure.getInt(mContext.getContentResolver(), + LAUNCHER_TASKBAR_EDUCATION_SHOWING, /* def= */ 0) == 1; + } } diff --git a/wmshell/src/com/android/wm/shell/compatui/UserAspectRatioSettingsLayout.java b/wmshell/src/com/android/wm/shell/compatui/UserAspectRatioSettingsLayout.java index 3e6b30f431..b141bebbe8 100644 --- a/wmshell/src/com/android/wm/shell/compatui/UserAspectRatioSettingsLayout.java +++ b/wmshell/src/com/android/wm/shell/compatui/UserAspectRatioSettingsLayout.java @@ -32,7 +32,6 @@ import android.widget.ImageButton; import android.widget.LinearLayout; import android.widget.TextView; -import com.android.window.flags2.Flags; import com.android.wm.shell.R; /** @@ -173,7 +172,6 @@ public class UserAspectRatioSettingsLayout extends LinearLayout { @Override public void onAnimationEnd(Animator animation) { view.setVisibility(View.GONE); - mWindowManager.release(); } }); fadeOut.start(); diff --git a/wmshell/src/com/android/wm/shell/compatui/UserAspectRatioSettingsWindowManager.java b/wmshell/src/com/android/wm/shell/compatui/UserAspectRatioSettingsWindowManager.java index 650d2170ce..8fb4bdbea9 100644 --- a/wmshell/src/com/android/wm/shell/compatui/UserAspectRatioSettingsWindowManager.java +++ b/wmshell/src/com/android/wm/shell/compatui/UserAspectRatioSettingsWindowManager.java @@ -27,7 +27,6 @@ import android.content.Intent; import android.graphics.Rect; import android.os.SystemClock; import android.view.LayoutInflater; -import android.view.SurfaceControl; import android.view.View; import android.view.accessibility.AccessibilityManager; @@ -70,9 +69,6 @@ class UserAspectRatioSettingsWindowManager extends CompatUIWindowManagerAbstract @NonNull final CompatUIHintsState mCompatUIHintsState; - @NonNull - private final Rect mLayoutBounds = new Rect(); - @Nullable private UserAspectRatioSettingsLayout mLayout; @@ -112,7 +108,6 @@ class UserAspectRatioSettingsWindowManager extends CompatUIWindowManagerAbstract @Override protected void removeLayout() { - mLayoutBounds.setEmpty(); mLayout = null; } @@ -173,21 +168,18 @@ class UserAspectRatioSettingsWindowManager extends CompatUIWindowManagerAbstract @Override @VisibleForTesting public void updateSurfacePosition() { - updateLayoutBounds(); - if (mLayoutBounds.isEmpty()) { + if (mLayout == null) { return; } - updateSurfacePosition(mLayoutBounds.left, mLayoutBounds.top); - } - - @Override - @VisibleForTesting - public void updateSurfacePosition(@NonNull SurfaceControl.Transaction tx) { - updateLayoutBounds(); - if (mLayoutBounds.isEmpty()) { - return; - } - updateSurfaceBounds(tx, mLayoutBounds); + // Position of the button in the container coordinate. + final Rect taskBounds = getTaskBounds(); + final Rect taskStableBounds = getTaskStableBounds(); + final int positionX = getLayoutDirection() == View.LAYOUT_DIRECTION_RTL + ? taskStableBounds.left - taskBounds.left + : taskStableBounds.right - taskBounds.left - mLayout.getMeasuredWidth(); + final int positionY = taskStableBounds.bottom - taskBounds.top + - mLayout.getMeasuredHeight(); + updateSurfacePosition(positionX, positionY); } @VisibleForTesting @@ -210,23 +202,6 @@ class UserAspectRatioSettingsWindowManager extends CompatUIWindowManagerAbstract && !isHideDelayReached(mNextButtonHideTimeMs)); } - private void updateLayoutBounds() { - if (mLayout == null) { - mLayoutBounds.setEmpty(); - return; - } - // Position of the button in the container coordinate. - final Rect taskBounds = getTaskBounds(); - final Rect taskStableBounds = getTaskStableBounds(); - final int layoutWidth = mLayout.getMeasuredWidth(); - final int layoutHeight = mLayout.getMeasuredHeight(); - final int positionX = getLayoutDirection() == View.LAYOUT_DIRECTION_RTL - ? taskStableBounds.left - taskBounds.left - : taskStableBounds.right - taskBounds.left - layoutWidth; - final int positionY = taskStableBounds.bottom - taskBounds.top - layoutHeight; - mLayoutBounds.set(positionX, positionY, positionX + layoutWidth, positionY + layoutHeight); - } - private void showUserAspectRatioButton() { if (mLayout == null) { return; @@ -263,14 +238,14 @@ class UserAspectRatioSettingsWindowManager extends CompatUIWindowManagerAbstract // App is not visibly letterboxed if it covers status bar/bottom insets or matches the // stable bounds, so don't show the button if (stableBounds.height() <= letterboxHeight && stableBounds.width() <= letterboxWidth - && !taskInfo.isUserFullscreenOverrideEnabled()) { + && !taskInfo.isUserFullscreenOverrideEnabled) { return false; } - return taskInfo.eligibleForUserAspectRatioButton() - && (taskInfo.isTopActivityLetterboxed() - || taskInfo.isUserFullscreenOverrideEnabled()) - && !taskInfo.isSystemFullscreenOverrideEnabled() + return taskInfo.topActivityEligibleForUserAspectRatioButton + && (taskInfo.topActivityBoundsLetterboxed + || taskInfo.isUserFullscreenOverrideEnabled) + && !taskInfo.isSystemFullscreenOverrideEnabled && Intent.ACTION_MAIN.equals(intent.getAction()) && intent.hasCategory(Intent.CATEGORY_LAUNCHER) && (!mUserAspectRatioButtonShownChecker.get() || isShowingButton()); diff --git a/wmshell/src/com/android/wm/shell/dagger/TvWMShellModule.java b/wmshell/src/com/android/wm/shell/dagger/TvWMShellModule.java index 680ae7bedc..0110937186 100644 --- a/wmshell/src/com/android/wm/shell/dagger/TvWMShellModule.java +++ b/wmshell/src/com/android/wm/shell/dagger/TvWMShellModule.java @@ -16,12 +16,10 @@ package com.android.wm.shell.dagger; -import android.app.IActivityTaskManager; import android.content.Context; import android.os.Handler; import com.android.launcher3.icons.IconProvider; -import com.android.wm.shell.RootDisplayAreaOrganizer; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; @@ -32,12 +30,10 @@ import com.android.wm.shell.common.MultiInstanceHelper; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.common.SystemWindows; -import com.android.wm.shell.common.split.SplitState; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.dagger.pip.TvPipModule; import com.android.wm.shell.recents.RecentTasksController; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.splitscreen.tv.TvSplitScreenController; import com.android.wm.shell.startingsurface.StartingWindowTypeAlgorithm; @@ -47,8 +43,6 @@ import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; -import com.google.android.msdl.domain.MSDLPlayer; - import dagger.Module; import dagger.Provides; @@ -95,19 +89,13 @@ public class TvWMShellModule { Optional<RecentTasksController> recentTasks, LaunchAdjacentController launchAdjacentController, MultiInstanceHelper multiInstanceHelper, - SplitState splitState, @ShellMainThread ShellExecutor mainExecutor, - @ShellMainThread Handler mainHandler, - SystemWindows systemWindows, - RootDisplayAreaOrganizer rootDisplayAreaOrganizer, - DesktopState desktopState, - IActivityTaskManager activityTaskManager, - MSDLPlayer msdlPlayer) { + Handler mainHandler, + SystemWindows systemWindows) { return new TvSplitScreenController(context, shellInit, shellCommandHandler, shellController, shellTaskOrganizer, syncQueue, rootTDAOrganizer, displayController, displayImeController, displayInsetsController, transitions, transactionPool, iconProvider, recentTasks, launchAdjacentController, multiInstanceHelper, - splitState, mainExecutor, mainHandler, systemWindows, rootDisplayAreaOrganizer, - desktopState, activityTaskManager, msdlPlayer); + mainExecutor, mainHandler, systemWindows); } } diff --git a/wmshell/src/com/android/wm/shell/dagger/WMShellBaseModule.java b/wmshell/src/com/android/wm/shell/dagger/WMShellBaseModule.java index 73482d22ed..396405091a 100644 --- a/wmshell/src/com/android/wm/shell/dagger/WMShellBaseModule.java +++ b/wmshell/src/com/android/wm/shell/dagger/WMShellBaseModule.java @@ -16,30 +16,20 @@ package com.android.wm.shell.dagger; -import static android.provider.Settings.Secure.COMPAT_UI_EDUCATION_SHOWING; - -import static com.android.wm.shell.compatui.CompatUIStatusManager.COMPAT_UI_EDUCATION_HIDDEN; import static com.android.wm.shell.onehanded.OneHandedController.SUPPORT_ONE_HANDED_MODE; -import android.annotation.NonNull; -import android.annotation.Nullable; import android.app.ActivityTaskManager; import android.content.Context; import android.content.pm.PackageManager; -import android.hardware.display.DisplayManager; import android.os.Handler; import android.os.SystemProperties; -import android.os.UserManager; -import android.os.Vibrator; -import android.provider.Settings; import android.view.IWindowManager; import android.view.accessibility.AccessibilityManager; -import android.window.DesktopModeFlags; import android.window.SystemPerformanceHinter; import com.android.internal.logging.UiEventLogger; import com.android.launcher3.icons.IconProvider; -import com.android.window.flags2.Flags; +import com.android.window.flags.Flags; import com.android.wm.shell.ProtoLogController; import com.android.wm.shell.R; import com.android.wm.shell.RootDisplayAreaOrganizer; @@ -47,8 +37,6 @@ import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.WindowManagerShellWrapper; import com.android.wm.shell.activityembedding.ActivityEmbeddingController; -import com.android.wm.shell.appzoomout.AppZoomOut; -import com.android.wm.shell.appzoomout.AppZoomOutController; import com.android.wm.shell.back.BackAnimation; import com.android.wm.shell.back.BackAnimationBackground; import com.android.wm.shell.back.BackAnimationController; @@ -69,9 +57,9 @@ import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.common.SystemWindows; import com.android.wm.shell.common.TabletopModeController; import com.android.wm.shell.common.TaskStackListenerImpl; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.common.pip.PhonePipKeepClearAlgorithm; import com.android.wm.shell.common.pip.PhoneSizeSpecSource; -import com.android.wm.shell.common.pip.PipAppOpsListener; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; import com.android.wm.shell.common.pip.PipBoundsState; import com.android.wm.shell.common.pip.PipDisplayLayoutState; @@ -80,26 +68,12 @@ import com.android.wm.shell.common.pip.PipPerfHintController; import com.android.wm.shell.common.pip.PipSnapAlgorithm; import com.android.wm.shell.common.pip.PipUiEventLogger; import com.android.wm.shell.common.pip.SizeSpecSource; -import com.android.wm.shell.common.split.SplitState; import com.android.wm.shell.compatui.CompatUIConfiguration; import com.android.wm.shell.compatui.CompatUIController; import com.android.wm.shell.compatui.CompatUIShellCommandHandler; -import com.android.wm.shell.compatui.CompatUIStatusManager; -import com.android.wm.shell.compatui.api.CompatUIComponentFactory; -import com.android.wm.shell.compatui.api.CompatUIComponentIdGenerator; -import com.android.wm.shell.compatui.api.CompatUIHandler; -import com.android.wm.shell.compatui.api.CompatUIRepository; -import com.android.wm.shell.compatui.api.CompatUIState; -import com.android.wm.shell.compatui.components.RestartButtonSpecKt; -import com.android.wm.shell.compatui.impl.DefaultCompatUIComponentFactory; -import com.android.wm.shell.compatui.impl.DefaultCompatUIHandler; -import com.android.wm.shell.compatui.impl.DefaultCompatUIRepository; -import com.android.wm.shell.compatui.impl.DefaultComponentIdGenerator; import com.android.wm.shell.desktopmode.DesktopMode; +import com.android.wm.shell.desktopmode.DesktopModeTaskRepository; import com.android.wm.shell.desktopmode.DesktopTasksController; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.desktopmode.common.DefaultHomePackageSupplier; -import com.android.wm.shell.desktopmode.desktopwallpaperactivity.DesktopWallpaperActivityTokenProvider; import com.android.wm.shell.displayareahelper.DisplayAreaHelper; import com.android.wm.shell.displayareahelper.DisplayAreaHelperController; import com.android.wm.shell.freeform.FreeformComponents; @@ -114,16 +88,12 @@ import com.android.wm.shell.recents.RecentTasks; import com.android.wm.shell.recents.RecentTasksController; import com.android.wm.shell.recents.RecentsTransitionHandler; import com.android.wm.shell.recents.TaskStackTransitionObserver; +import com.android.wm.shell.shared.DesktopModeStatus; import com.android.wm.shell.shared.ShellTransitions; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.shared.annotations.ShellAnimationThread; +import com.android.wm.shell.shared.annotations.ShellBackgroundThread; import com.android.wm.shell.shared.annotations.ShellMainThread; import com.android.wm.shell.shared.annotations.ShellSplashscreenThread; -import com.android.wm.shell.shared.desktopmode.DesktopConfig; -import com.android.wm.shell.shared.desktopmode.DesktopConfigImpl; -import com.android.wm.shell.shared.desktopmode.DesktopModeCompatPolicy; -import com.android.wm.shell.shared.desktopmode.DesktopState; -import com.android.wm.shell.shared.desktopmode.DesktopStateImpl; import com.android.wm.shell.splitscreen.SplitScreen; import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.startingsurface.StartingSurface; @@ -136,9 +106,7 @@ import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.sysui.ShellInterface; import com.android.wm.shell.taskview.TaskViewFactory; import com.android.wm.shell.taskview.TaskViewFactoryController; -import com.android.wm.shell.taskview.TaskViewRepository; import com.android.wm.shell.taskview.TaskViewTransitions; -import com.android.wm.shell.transition.FocusTransitionObserver; import com.android.wm.shell.transition.HomeTransitionObserver; import com.android.wm.shell.transition.MixedTransitionHandler; import com.android.wm.shell.transition.Transitions; @@ -146,10 +114,6 @@ import com.android.wm.shell.unfold.ShellUnfoldProgressProvider; import com.android.wm.shell.unfold.UnfoldAnimationController; import com.android.wm.shell.unfold.UnfoldTransitionHandler; import com.android.wm.shell.windowdecor.WindowDecorViewModel; -import com.android.wm.shell.windowdecor.viewholder.AppHandleNotifier; -import com.android.wm.shell.windowdecor.viewholder.AppHandles; - -import com.google.android.msdl.domain.MSDLPlayer; import dagger.BindsOptionalOf; import dagger.Lazy; @@ -157,7 +121,6 @@ import dagger.Module; import dagger.Provides; import java.util.Optional; -import java.util.concurrent.Executors; /** * Provides basic dependencies from {@link com.android.wm.shell}, these dependencies are only @@ -168,11 +131,7 @@ import java.util.concurrent.Executors; * dependencies that are device/form factor SystemUI implementation specific should go into their * respective modules (ie. {@link WMShellModule} for handheld, {@link TvWMShellModule} for tv, etc.) */ -@Module( - includes = { - WMShellConcurrencyModule.class, - WMShellCoroutinesModule.class - }) +@Module(includes = WMShellConcurrencyModule.class) public abstract class WMShellBaseModule { // @@ -190,11 +149,8 @@ public abstract class WMShellBaseModule { static DisplayController provideDisplayController(Context context, IWindowManager wmService, ShellInit shellInit, - @ShellMainThread ShellExecutor mainExecutor, - DisplayManager displayManager, - DesktopState desktopState) { - return new DisplayController(context, wmService, shellInit, mainExecutor, displayManager, - desktopState); + @ShellMainThread ShellExecutor mainExecutor) { + return new DisplayController(context, wmService, shellInit, mainExecutor); } @WMSingleton @@ -249,23 +205,13 @@ public abstract class WMShellBaseModule { context, shellInit, postureController, displayController, mainExecutor); } - @WMSingleton - @Provides - static MSDLPlayer provideMSDLPlayer(@Nullable Vibrator vibrator) { - return MSDLPlayer.Companion.createPlayer( - vibrator, - Executors.newSingleThreadExecutor(), - null /* useHapticFeedbackForToken */ - ); - } - @WMSingleton @Provides static ShellTaskOrganizer provideShellTaskOrganizer( Context context, ShellInit shellInit, ShellCommandHandler shellCommandHandler, - Optional<CompatUIHandler> compatUI, + Optional<CompatUIController> compatUI, Optional<UnfoldAnimationController> unfoldAnimationController, Optional<RecentTasksController> recentTasksOptional, @ShellMainThread ShellExecutor mainExecutor) { @@ -284,19 +230,7 @@ public abstract class WMShellBaseModule { @WMSingleton @Provides - static DesktopModeCompatPolicy provideDesktopModeCompatPolicy( - Context context, - ShellInit shellInit, - @ShellMainThread Handler mainHandler) { - final DesktopModeCompatPolicy policy = new DesktopModeCompatPolicy(context); - policy.setDefaultHomePackageSupplier(new DefaultHomePackageSupplier( - context, shellInit, mainHandler)); - return policy; - } - - @WMSingleton - @Provides - static Optional<CompatUIHandler> provideCompatUIController( + static Optional<CompatUIController> provideCompatUIController( Context context, ShellInit shellInit, ShellController shellController, @@ -309,22 +243,10 @@ public abstract class WMShellBaseModule { Lazy<DockStateReader> dockStateReader, Lazy<CompatUIConfiguration> compatUIConfiguration, Lazy<CompatUIShellCommandHandler> compatUIShellCommandHandler, - Lazy<AccessibilityManager> accessibilityManager, - CompatUIRepository compatUIRepository, - Optional<DesktopUserRepositories> desktopUserRepositories, - @NonNull CompatUIState compatUIState, - @NonNull CompatUIComponentIdGenerator componentIdGenerator, - @NonNull CompatUIComponentFactory compatUIComponentFactory, - CompatUIStatusManager compatUIStatusManager, - DesktopState desktopState) { + Lazy<AccessibilityManager> accessibilityManager) { if (!context.getResources().getBoolean(R.bool.config_enableCompatUIController)) { return Optional.empty(); } - if (Flags.appCompatUiFramework()) { - return Optional.of( - new DefaultCompatUIHandler(compatUIRepository, compatUIState, - componentIdGenerator, compatUIComponentFactory, mainExecutor)); - } return Optional.of( new CompatUIController( context, @@ -339,54 +261,7 @@ public abstract class WMShellBaseModule { dockStateReader.get(), compatUIConfiguration.get(), compatUIShellCommandHandler.get(), - accessibilityManager.get(), - compatUIStatusManager, - desktopUserRepositories, - desktopState)); - } - - @WMSingleton - @Provides - static CompatUIStatusManager provideCompatUIStatusManager(@NonNull Context context) { - if (DesktopModeFlags.ENABLE_DESKTOP_COMPAT_UI_VISIBILITY_STATUS.isTrue()) { - return new CompatUIStatusManager( - newState -> Settings.Secure.putInt(context.getContentResolver(), - COMPAT_UI_EDUCATION_SHOWING, newState), - () -> Settings.Secure.getInt(context.getContentResolver(), - COMPAT_UI_EDUCATION_SHOWING, COMPAT_UI_EDUCATION_HIDDEN)); - } else { - return new CompatUIStatusManager(); - } - } - - @WMSingleton - @Provides - static CompatUIState provideCompatUIState() { - return new CompatUIState(); - } - - @WMSingleton - @Provides - static CompatUIComponentFactory provideCompatUIComponentFactory( - @NonNull Context context, - @NonNull SyncTransactionQueue syncQueue, - @NonNull DisplayController displayController) { - return new DefaultCompatUIComponentFactory(context, syncQueue, displayController); - } - - @WMSingleton - @Provides - static CompatUIComponentIdGenerator provideCompatUIComponentIdGenerator() { - return new DefaultComponentIdGenerator(); - } - - @WMSingleton - @Provides - static CompatUIRepository provideCompatUIRepository() { - // TODO(b/360288344) Integrate Dagger Multibinding - final CompatUIRepository repository = new DefaultCompatUIRepository(); - repository.addSpec(RestartButtonSpecKt.getRestartButtonSpec()); - return repository; + accessibilityManager.get())); } @WMSingleton @@ -443,6 +318,10 @@ public abstract class WMShellBaseModule { ShellInit shellInit, ShellCommandHandler shellCommandHandler, RootTaskDisplayAreaOrganizer rootTdaOrganizer) { + // LC-Ignored + //if (!com.android.window.flags.Flags.explicitRefreshRateHints()) { + // return Optional.empty(); + //} final PerfHintController perfHintController = new PerfHintController(context, shellInit, shellCommandHandler, rootTdaOrganizer); return Optional.of(perfHintController.getHinter()); @@ -450,13 +329,9 @@ public abstract class WMShellBaseModule { @WMSingleton @Provides - static MultiInstanceHelper provideMultiInstanceHelper( - Context context, - ShellInit shellInit, - ShellCommandHandler shellCommandHandler - ) { + static MultiInstanceHelper provideMultiInstanceHelper(Context context) { return new MultiInstanceHelper(context, context.getPackageManager(), - shellInit, shellCommandHandler, Flags.supportsMultiInstanceSystemUi()); + Flags.supportsMultiInstanceSystemUi()); } // @@ -484,24 +359,24 @@ public abstract class WMShellBaseModule { ShellInit shellInit, ShellController shellController, @ShellMainThread ShellExecutor shellExecutor, + @ShellBackgroundThread Handler backgroundHandler, BackAnimationBackground backAnimationBackground, Optional<ShellBackAnimationRegistry> shellBackAnimationRegistry, - ShellCommandHandler shellCommandHandler, - Transitions transitions, - @ShellMainThread Handler handler - ) { + ShellCommandHandler shellCommandHandler) { + if (BackAnimationController.IS_ENABLED) { return shellBackAnimationRegistry.map( (animations) -> new BackAnimationController( shellInit, shellController, shellExecutor, + backgroundHandler, context, backAnimationBackground, animations, - shellCommandHandler, - transitions, - handler)); + shellCommandHandler)); + } + return Optional.empty(); } @BindsOptionalOf @@ -562,9 +437,8 @@ public abstract class WMShellBaseModule { @WMSingleton @Provides - static PhonePipKeepClearAlgorithm providePhonePipKeepClearAlgorithm(Context context, - PipDisplayLayoutState pipDisplayLayoutState) { - return new PhonePipKeepClearAlgorithm(context, pipDisplayLayoutState); + static PhonePipKeepClearAlgorithm providePhonePipKeepClearAlgorithm(Context context) { + return new PhonePipKeepClearAlgorithm(context); } @WMSingleton @@ -577,13 +451,6 @@ public abstract class WMShellBaseModule { pipKeepClearAlgorithm, pipDisplayLayoutState, sizeSpecSource); } - @WMSingleton - @Provides - static PipAppOpsListener providePipAppOpsListener(Context context, - @ShellMainThread ShellExecutor mainExecutor) { - return new PipAppOpsListener(context, mainExecutor); - } - // // Bubbles (optional feature) // @@ -614,15 +481,12 @@ public abstract class WMShellBaseModule { ShellTaskOrganizer shellTaskOrganizer, SyncTransactionQueue syncQueue, Optional<RecentTasksController> recentTasksOptional, - Optional<WindowDecorViewModel> windowDecorViewModelOptional, - Optional<DesktopWallpaperActivityTokenProvider> - desktopWallpaperActivityTokenProviderOptional) { + Optional<WindowDecorViewModel> windowDecorViewModelOptional) { if (fullscreenTaskListener.isPresent()) { return fullscreenTaskListener.get(); } else { return new FullscreenTaskListener(shellInit, shellTaskOrganizer, syncQueue, - recentTasksOptional, windowDecorViewModelOptional, - desktopWallpaperActivityTokenProviderOptional); + recentTasksOptional, windowDecorViewModelOptional); } } @@ -687,8 +551,8 @@ public abstract class WMShellBaseModule { @Provides static Optional<FreeformComponents> provideFreeformComponents( @DynamicOverride Optional<FreeformComponents> freeformComponents, - DesktopState desktopState) { - if (FreeformComponents.requiresFreeformComponents(desktopState)) { + Context context) { + if (FreeformComponents.isFreeformEnabled(context)) { return freeformComponents; } return Optional.empty(); @@ -756,16 +620,14 @@ public abstract class WMShellBaseModule { ShellCommandHandler shellCommandHandler, TaskStackListenerImpl taskStackListener, ActivityTaskManager activityTaskManager, - Optional<DesktopUserRepositories> desktopUserRepositories, + Optional<DesktopModeTaskRepository> desktopModeTaskRepository, TaskStackTransitionObserver taskStackTransitionObserver, - @ShellMainThread ShellExecutor mainExecutor, - DesktopState desktopState + @ShellMainThread ShellExecutor mainExecutor ) { return Optional.ofNullable( RecentTasksController.create(context, shellInit, shellController, shellCommandHandler, taskStackListener, activityTaskManager, - desktopUserRepositories, taskStackTransitionObserver, mainExecutor, - desktopState)); + desktopModeTaskRepository, taskStackTransitionObserver, mainExecutor)); } @BindsOptionalOf @@ -790,47 +652,31 @@ public abstract class WMShellBaseModule { ShellTaskOrganizer organizer, TransactionPool pool, DisplayController displayController, - DisplayInsetsController displayInsetsController, @ShellMainThread ShellExecutor mainExecutor, @ShellMainThread Handler mainHandler, @ShellAnimationThread ShellExecutor animExecutor, RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - HomeTransitionObserver homeTransitionObserver, - FocusTransitionObserver focusTransitionObserver) { + HomeTransitionObserver homeTransitionObserver) { + if (!context.getResources().getBoolean(R.bool.config_registerShellTransitionsOnInit)) { + // TODO(b/238217847): Force override shell init if registration is disabled + shellInit = new ShellInit(mainExecutor); + } return new Transitions(context, shellInit, shellCommandHandler, shellController, organizer, - pool, displayController, displayInsetsController, mainExecutor, mainHandler, - animExecutor, rootTaskDisplayAreaOrganizer, homeTransitionObserver, - focusTransitionObserver); + pool, displayController, mainExecutor, mainHandler, animExecutor, + rootTaskDisplayAreaOrganizer, homeTransitionObserver); } @WMSingleton @Provides static HomeTransitionObserver provideHomeTransitionObserver(Context context, - @ShellMainThread ShellExecutor mainExecutor, - DisplayInsetsController displayInsetsController, - ShellInit shellInit) { - return new HomeTransitionObserver(context, mainExecutor, displayInsetsController, - shellInit); + @ShellMainThread ShellExecutor mainExecutor) { + return new HomeTransitionObserver(context, mainExecutor); } @WMSingleton @Provides - static FocusTransitionObserver provideFocusTransitionObserver() { - return new FocusTransitionObserver(); - } - - @WMSingleton - @Provides - static TaskViewTransitions provideTaskViewTransitions(Transitions transitions, - TaskViewRepository repository, ShellTaskOrganizer organizer, - SyncTransactionQueue syncQueue) { - return new TaskViewTransitions(transitions, repository, organizer, syncQueue); - } - - @WMSingleton - @Provides - static TaskViewRepository provideTaskViewRepository() { - return new TaskViewRepository(); + static TaskViewTransitions provideTaskViewTransitions(Transitions transitions) { + return new TaskViewTransitions(transitions); } // Workaround for dynamic overriding with a default implementation, see {@link DynamicOverride} @@ -858,15 +704,13 @@ public abstract class WMShellBaseModule { static KeyguardTransitionHandler provideKeyguardTransitionHandler( ShellInit shellInit, ShellController shellController, - DisplayController displayController, Transitions transitions, TaskStackListenerImpl taskStackListener, @ShellMainThread Handler mainHandler, - @ShellMainThread ShellExecutor mainExecutor, - FocusTransitionObserver focusTransitionObserver) { + @ShellMainThread ShellExecutor mainExecutor) { return new KeyguardTransitionHandler( - shellInit, shellController, displayController, transitions, taskStackListener, - mainHandler, mainExecutor, focusTransitionObserver); + shellInit, shellController, transitions, taskStackListener, mainHandler, + mainExecutor); } @WMSingleton @@ -930,12 +774,6 @@ public abstract class WMShellBaseModule { return Optional.empty(); } - @WMSingleton - @Provides - static SplitState provideSplitState() { - return new SplitState(); - } - // // Starting window // @@ -956,11 +794,9 @@ public abstract class WMShellBaseModule { ShellTaskOrganizer shellTaskOrganizer, @ShellSplashscreenThread ShellExecutor splashScreenExecutor, StartingWindowTypeAlgorithm startingWindowTypeAlgorithm, IconProvider iconProvider, - TransactionPool pool, @ShellMainThread ShellExecutor mainExecutor, - Transitions transitions) { + TransactionPool pool) { return new StartingWindowController(context, shellInit, shellController, shellTaskOrganizer, - splashScreenExecutor, startingWindowTypeAlgorithm, iconProvider, pool, mainExecutor, - transitions); + splashScreenExecutor, startingWindowTypeAlgorithm, iconProvider, pool); } // Workaround for dynamic overriding with a default implementation, see {@link DynamicOverride} @@ -1035,10 +871,9 @@ public abstract class WMShellBaseModule { ShellInit shellInit, ShellCommandHandler shellCommandHandler, DisplayInsetsController displayInsetsController, - UserManager userManager, @ShellMainThread ShellExecutor mainExecutor) { return new ShellController(context, shellInit, shellCommandHandler, - displayInsetsController, userManager, mainExecutor); + displayInsetsController, mainExecutor); } // @@ -1059,14 +894,13 @@ public abstract class WMShellBaseModule { @WMSingleton @Provides - static Optional<DesktopTasksController> providesDesktopTasksController( - DesktopState desktopState, + static Optional<DesktopTasksController> providesDesktopTasksController(Context context, @DynamicOverride Optional<Lazy<DesktopTasksController>> desktopTasksController) { // Use optional-of-lazy for the dependency that this provider relies on. // Lazy ensures that this provider will not be the cause the dependency is created // when it will not be returned due to the condition below. - return desktopTasksController.flatMap((lazy) -> { - if (desktopState.canEnterDesktopModeOrShowAppHandle()) { + return desktopTasksController.flatMap((lazy)-> { + if (DesktopModeStatus.canEnterDesktopMode(context)) { return Optional.of(lazy.get()); } return Optional.empty(); @@ -1075,41 +909,23 @@ public abstract class WMShellBaseModule { @BindsOptionalOf @DynamicOverride - abstract DesktopUserRepositories optionalDesktopUserRepositories(); + abstract DesktopModeTaskRepository optionalDesktopModeTaskRepository(); @WMSingleton @Provides - static Optional<DesktopUserRepositories> provideDesktopUserRepositories( - DesktopState desktopState, - @DynamicOverride Optional<Lazy<DesktopUserRepositories>> desktopUserRepositories) { + static Optional<DesktopModeTaskRepository> provideDesktopTaskRepository(Context context, + @DynamicOverride Optional<Lazy<DesktopModeTaskRepository>> desktopModeTaskRepository) { // Use optional-of-lazy for the dependency that this provider relies on. // Lazy ensures that this provider will not be the cause the dependency is created // when it will not be returned due to the condition below. - return desktopUserRepositories.flatMap((lazy) -> { - if (desktopState.canEnterDesktopMode()) { + return desktopModeTaskRepository.flatMap((lazy)-> { + if (DesktopModeStatus.canEnterDesktopMode(context)) { return Optional.of(lazy.get()); } return Optional.empty(); }); } - @BindsOptionalOf - abstract DesktopWallpaperActivityTokenProvider optionalDesktopWallpaperActivityTokenProvider(); - - // - // App zoom out (optional feature) - // - - @WMSingleton - @Provides - static Optional<AppZoomOut> provideAppZoomOut( - Optional<AppZoomOutController> appZoomOutController) { - return appZoomOutController.map((controller) -> controller.asAppZoomOut()); - } - - @BindsOptionalOf - abstract AppZoomOutController optionalAppZoomOutController(); - // // Task Stack // @@ -1117,28 +933,12 @@ public abstract class WMShellBaseModule { @WMSingleton @Provides static TaskStackTransitionObserver provideTaskStackTransitionObserver( - ShellInit shellInit, - Lazy<ShellTaskOrganizer> shellTaskOrganizer, - ShellCommandHandler shellCommandHandler, - Lazy<Transitions> transitions + Lazy<Transitions> transitions, + ShellInit shellInit ) { - return new TaskStackTransitionObserver(shellInit, shellTaskOrganizer, shellCommandHandler, - transitions); + return new TaskStackTransitionObserver(transitions, shellInit); } - // - // AppHandle - // - - @WMSingleton - @Provides - static Optional<AppHandles> provideAppHandles(Optional<AppHandleNotifier> appHandleNotifier) { - return appHandleNotifier.map(AppHandleNotifier::asAppHandleImpl); - } - - @BindsOptionalOf - abstract AppHandleNotifier getAppHandleNotifier(); - // // Misc // @@ -1167,8 +967,6 @@ public abstract class WMShellBaseModule { Optional<RecentTasksController> recentTasksOptional, Optional<RecentsTransitionHandler> recentsTransitionHandlerOptional, Optional<OneHandedController> oneHandedControllerOptional, - Optional<AppZoomOutController> appZoomOutControllerOptional, - Optional<AppHandles> appHandlesOptional, Optional<HideDisplayCutoutController> hideDisplayCutoutControllerOptional, Optional<ActivityEmbeddingController> activityEmbeddingOptional, Optional<MixedTransitionHandler> mixedTransitionHandler, @@ -1198,23 +996,4 @@ public abstract class WMShellBaseModule { ShellCommandHandler shellCommandHandler) { return new ProtoLogController(shellInit, shellCommandHandler); } - - @WMSingleton - @Provides - static DesktopConfig provideDesktopConfig(Context context, - DesktopState features) { - return new DesktopConfigImpl(context, features); - } - - @WMSingleton - @Provides - static DesktopState provideDesktopState(Context context) { - return new DesktopStateImpl(context); - } - - @Provides - static Optional<DesktopState> provideOptionalDesktopState( - DesktopState desktopState) { - return Optional.of(desktopState); - } } diff --git a/wmshell/src/com/android/wm/shell/dagger/WMShellConcurrencyModule.java b/wmshell/src/com/android/wm/shell/dagger/WMShellConcurrencyModule.java index bd23a058e7..c5644a8f68 100644 --- a/wmshell/src/com/android/wm/shell/dagger/WMShellConcurrencyModule.java +++ b/wmshell/src/com/android/wm/shell/dagger/WMShellConcurrencyModule.java @@ -18,7 +18,6 @@ package com.android.wm.shell.dagger; import static android.os.Process.THREAD_PRIORITY_BACKGROUND; import static android.os.Process.THREAD_PRIORITY_DISPLAY; -import static android.os.Process.THREAD_PRIORITY_FOREGROUND; import static android.os.Process.THREAD_PRIORITY_TOP_APP_BOOST; import android.content.Context; @@ -37,7 +36,6 @@ import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.shared.annotations.ExternalMainThread; import com.android.wm.shell.shared.annotations.ShellAnimationThread; import com.android.wm.shell.shared.annotations.ShellBackgroundThread; -import com.android.wm.shell.shared.annotations.ShellDesktopThread; import com.android.wm.shell.shared.annotations.ShellMainThread; import com.android.wm.shell.shared.annotations.ShellSplashscreenThread; @@ -162,31 +160,22 @@ public abstract class WMShellConcurrencyModule { } } - /** Provide a Shell animation-thread Handler. */ - @WMSingleton - @Provides - @ShellAnimationThread - public static Handler provideShellAnimationHandler() { - HandlerThread animThread = new HandlerThread("wmshell.anim", THREAD_PRIORITY_DISPLAY); - animThread.start(); - if (Build.IS_DEBUGGABLE) { - animThread.getLooper().setTraceTag(Trace.TRACE_TAG_WINDOW_MANAGER); - animThread.getLooper().setSlowLogThresholdMs(MSGQ_SLOW_DISPATCH_THRESHOLD_MS, - MSGQ_SLOW_DELIVERY_THRESHOLD_MS); - } - return Handler.createAsync(animThread.getLooper()); - } - /** * Provide a Shell animation-thread Executor. */ @WMSingleton @Provides @ShellAnimationThread - public static ShellExecutor provideShellAnimationExecutor( - @ShellAnimationThread Handler animHandler - ) { - return new HandlerExecutor(animHandler); + public static ShellExecutor provideShellAnimationExecutor() { + HandlerThread shellAnimationThread = new HandlerThread("wmshell.anim", + THREAD_PRIORITY_DISPLAY); + shellAnimationThread.start(); + if (Build.IS_DEBUGGABLE) { + shellAnimationThread.getLooper().setTraceTag(Trace.TRACE_TAG_WINDOW_MANAGER); + shellAnimationThread.getLooper().setSlowLogThresholdMs(MSGQ_SLOW_DISPATCH_THRESHOLD_MS, + MSGQ_SLOW_DELIVERY_THRESHOLD_MS); + } + return new HandlerExecutor(Handler.createAsync(shellAnimationThread.getLooper())); } /** @@ -202,30 +191,6 @@ public abstract class WMShellConcurrencyModule { return new HandlerExecutor(shellSplashscreenThread.getThreadHandler()); } - /** - * Provides a Shell desktop thread Handler for desktop mode related tasks. - */ - @WMSingleton - @Provides - @ShellDesktopThread - public static Handler provideDesktopModeMiscHandler() { - HandlerThread shellDesktopThread = new HandlerThread("wmshell.desktop", - THREAD_PRIORITY_TOP_APP_BOOST); - shellDesktopThread.start(); - return shellDesktopThread.getThreadHandler(); - } - - /** - * Provides a Shell desktop thread Executor for desktop mode related tasks. - */ - @WMSingleton - @Provides - @ShellDesktopThread - public static ShellExecutor provideDesktopModeMiscExecutor( - @ShellDesktopThread Handler handler) { - return new HandlerExecutor(handler); - } - /** * Provides a Shell background thread Handler for low priority background tasks. */ @@ -233,21 +198,20 @@ public abstract class WMShellConcurrencyModule { @Provides @ShellBackgroundThread public static Handler provideSharedBackgroundHandler() { - final HandlerThread shellBackgroundThread = new HandlerThread("wmshell.background", + HandlerThread shellBackgroundThread = new HandlerThread("wmshell.background", THREAD_PRIORITY_BACKGROUND); shellBackgroundThread.start(); return shellBackgroundThread.getThreadHandler(); } /** - * Provides a Shell background thread Executor for low priority background tasks. The thread - * may also be boosted to THREAD_PRIORITY_FOREGROUND if necessary. + * Provides a Shell background thread Executor for low priority background tasks. */ @WMSingleton @Provides @ShellBackgroundThread public static ShellExecutor provideSharedBackgroundExecutor( @ShellBackgroundThread Handler handler) { - return new HandlerExecutor(handler, THREAD_PRIORITY_BACKGROUND, THREAD_PRIORITY_FOREGROUND); + return new HandlerExecutor(handler); } } diff --git a/wmshell/src/com/android/wm/shell/dagger/WMShellModule.java b/wmshell/src/com/android/wm/shell/dagger/WMShellModule.java index 15f669e22d..87bd84017d 100644 --- a/wmshell/src/com/android/wm/shell/dagger/WMShellModule.java +++ b/wmshell/src/com/android/wm/shell/dagger/WMShellModule.java @@ -16,163 +16,76 @@ package com.android.wm.shell.dagger; -import static android.window.DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS; -import static android.window.DesktopModeFlags.ENABLE_DESKTOP_SYSTEM_DIALOGS_TRANSITIONS; -import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_ENTER_TRANSITIONS_BUGFIX; -import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODALS_POLICY; -import static android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_TASK_LIMIT; - -import static com.android.systemui.Flags.enableViewCaptureTracing; -import static com.android.window.flags2.Flags.enableInorderTransitionCallbacksForDesktop; - -import android.annotation.NonNull; import android.annotation.Nullable; -import android.app.IActivityTaskManager; -import android.app.KeyguardManager; import android.content.Context; import android.content.pm.LauncherApps; -import android.content.pm.PackageManager; -import android.hardware.input.InputManager; import android.os.Handler; import android.os.UserManager; import android.view.Choreographer; import android.view.IWindowManager; -import android.view.SurfaceControl; import android.view.WindowManager; -import android.window.DesktopExperienceFlags; -import android.window.DesktopModeFlags; -import androidx.annotation.OptIn; - -import com.android.app.viewcapture.ViewCaptureAwareWindowManagerFactory; import com.android.internal.jank.InteractionJankMonitor; import com.android.internal.logging.UiEventLogger; import com.android.internal.statusbar.IStatusBarService; -import com.android.internal.util.LatencyTracker; import com.android.launcher3.icons.IconProvider; -import com.android.wm.shell.RootDisplayAreaOrganizer; +import com.android.window.flags.Flags; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; +import com.android.wm.shell.WindowManagerShellWrapper; import com.android.wm.shell.activityembedding.ActivityEmbeddingController; -import com.android.wm.shell.apptoweb.AppToWebGenericLinksParser; -import com.android.wm.shell.apptoweb.AssistContentRequester; -import com.android.wm.shell.appzoomout.AppZoomOutController; -import com.android.wm.shell.back.BackAnimationController; import com.android.wm.shell.bubbles.BubbleController; import com.android.wm.shell.bubbles.BubbleData; import com.android.wm.shell.bubbles.BubbleDataRepository; import com.android.wm.shell.bubbles.BubbleEducationController; import com.android.wm.shell.bubbles.BubbleLogger; import com.android.wm.shell.bubbles.BubblePositioner; -import com.android.wm.shell.bubbles.BubbleResizabilityChecker; -import com.android.wm.shell.bubbles.BubbleTaskUnfoldTransitionMerger; -import com.android.wm.shell.bubbles.BubbleTransitions; -import com.android.wm.shell.bubbles.appinfo.BubbleAppInfoProvider; -import com.android.wm.shell.bubbles.appinfo.PackageManagerBubbleAppInfoProvider; -import com.android.wm.shell.bubbles.bar.DragToBubbleController; +import com.android.wm.shell.bubbles.properties.ProdBubbleProperties; import com.android.wm.shell.bubbles.storage.BubblePersistentRepository; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayImeController; import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.FloatingContentCoordinator; -import com.android.wm.shell.common.HomeIntentProvider; import com.android.wm.shell.common.LaunchAdjacentController; -import com.android.wm.shell.common.MultiDisplayDragMoveIndicatorController; -import com.android.wm.shell.common.MultiDisplayDragMoveIndicatorSurface; import com.android.wm.shell.common.MultiInstanceHelper; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.common.TaskStackListenerImpl; -import com.android.wm.shell.common.UserProfileContexts; -import com.android.wm.shell.common.split.SplitState; -import com.android.wm.shell.compatui.api.CompatUIHandler; -import com.android.wm.shell.compatui.letterbox.DelegateLetterboxTransitionObserver; -import com.android.wm.shell.compatui.letterbox.LetterboxCommandHandler; -import com.android.wm.shell.compatui.letterbox.lifecycle.LetterboxCleanupAdapter; -import com.android.wm.shell.compatui.letterbox.state.LetterboxTaskListenerAdapter; -import com.android.wm.shell.crashhandling.ShellCrashHandler; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.dagger.back.ShellBackAnimationModule; import com.android.wm.shell.dagger.pip.PipModule; -import com.android.wm.shell.desktopmode.CloseDesktopTaskTransitionHandler; -import com.android.wm.shell.desktopmode.DefaultDragToDesktopTransitionHandler; -import com.android.wm.shell.desktopmode.DesktopActivityOrientationChangeHandler; -import com.android.wm.shell.desktopmode.DesktopBackNavTransitionObserver; -import com.android.wm.shell.desktopmode.DesktopDisplayEventHandler; -import com.android.wm.shell.desktopmode.DesktopImeHandler; -import com.android.wm.shell.desktopmode.DesktopImmersiveController; -import com.android.wm.shell.desktopmode.DesktopInOrderTransitionObserver; -import com.android.wm.shell.desktopmode.DesktopMinimizationTransitionHandler; -import com.android.wm.shell.desktopmode.DesktopMixedTransitionHandler; -import com.android.wm.shell.desktopmode.DesktopModeDragAndDropAnimatorHelper; -import com.android.wm.shell.desktopmode.DesktopModeDragAndDropTransitionHandler; import com.android.wm.shell.desktopmode.DesktopModeEventLogger; -import com.android.wm.shell.desktopmode.DesktopModeKeyGestureHandler; import com.android.wm.shell.desktopmode.DesktopModeLoggerTransitionObserver; -import com.android.wm.shell.desktopmode.DesktopModeMoveToDisplayTransitionHandler; -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger; -import com.android.wm.shell.desktopmode.DesktopTaskChangeListener; +import com.android.wm.shell.desktopmode.DesktopModeTaskRepository; import com.android.wm.shell.desktopmode.DesktopTasksController; import com.android.wm.shell.desktopmode.DesktopTasksLimiter; import com.android.wm.shell.desktopmode.DesktopTasksTransitionObserver; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.desktopmode.DisplayDisconnectTransitionHandler; import com.android.wm.shell.desktopmode.DragToDesktopTransitionHandler; -import com.android.wm.shell.desktopmode.DragToDisplayTransitionHandler; import com.android.wm.shell.desktopmode.EnterDesktopTaskTransitionHandler; import com.android.wm.shell.desktopmode.ExitDesktopTaskTransitionHandler; -import com.android.wm.shell.desktopmode.OverviewToDesktopTransitionObserver; -import com.android.wm.shell.desktopmode.ReturnToDragStartAnimator; -import com.android.wm.shell.desktopmode.SpringDragToDesktopTransitionHandler; import com.android.wm.shell.desktopmode.ToggleResizeDesktopTaskTransitionHandler; -import com.android.wm.shell.desktopmode.VisualIndicatorUpdateScheduler; -import com.android.wm.shell.desktopmode.WindowDecorCaptionRepository; -import com.android.wm.shell.desktopmode.compatui.SystemModalsTransitionHandler; -import com.android.wm.shell.desktopmode.desktopfirst.DesktopDisplayModeController; -import com.android.wm.shell.desktopmode.desktopfirst.DesktopFirstListenerManager; -import com.android.wm.shell.desktopmode.desktopwallpaperactivity.DesktopWallpaperActivityTokenProvider; -import com.android.wm.shell.desktopmode.education.AppHandleEducationController; -import com.android.wm.shell.desktopmode.education.AppHandleEducationFilter; -import com.android.wm.shell.desktopmode.education.AppToWebEducationController; -import com.android.wm.shell.desktopmode.education.AppToWebEducationFilter; -import com.android.wm.shell.desktopmode.education.data.AppHandleEducationDatastoreRepository; -import com.android.wm.shell.desktopmode.education.data.AppToWebEducationDatastoreRepository; -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer; -import com.android.wm.shell.desktopmode.multidesks.DesksTransitionObserver; -import com.android.wm.shell.desktopmode.multidesks.RootTaskDesksOrganizer; -import com.android.wm.shell.desktopmode.persistence.DesktopPersistentRepository; -import com.android.wm.shell.desktopmode.persistence.DesktopRepositoryInitializer; -import com.android.wm.shell.desktopmode.persistence.DesktopRepositoryInitializerImpl; import com.android.wm.shell.draganddrop.DragAndDropController; import com.android.wm.shell.draganddrop.GlobalDragListener; import com.android.wm.shell.freeform.FreeformComponents; import com.android.wm.shell.freeform.FreeformTaskListener; import com.android.wm.shell.freeform.FreeformTaskTransitionHandler; import com.android.wm.shell.freeform.FreeformTaskTransitionObserver; -import com.android.wm.shell.freeform.FreeformTaskTransitionStarter; -import com.android.wm.shell.freeform.FreeformTaskTransitionStarterInitializer; -import com.android.wm.shell.freeform.TaskChangeListener; import com.android.wm.shell.keyguard.KeyguardTransitionHandler; import com.android.wm.shell.onehanded.OneHandedController; import com.android.wm.shell.pip.PipTransitionController; import com.android.wm.shell.recents.RecentTasksController; import com.android.wm.shell.recents.RecentsTransitionHandler; -import com.android.wm.shell.shared.TransactionPool; +import com.android.wm.shell.shared.DesktopModeStatus; import com.android.wm.shell.shared.annotations.ShellAnimationThread; import com.android.wm.shell.shared.annotations.ShellBackgroundThread; -import com.android.wm.shell.shared.annotations.ShellDesktopThread; import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.desktopmode.DesktopConfig; -import com.android.wm.shell.shared.desktopmode.DesktopModeCompatPolicy; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.taskview.TaskViewRepository; import com.android.wm.shell.taskview.TaskViewTransitions; import com.android.wm.shell.transition.DefaultMixedHandler; -import com.android.wm.shell.transition.FocusTransitionObserver; import com.android.wm.shell.transition.HomeTransitionObserver; import com.android.wm.shell.transition.MixedTransitionHandler; import com.android.wm.shell.transition.Transitions; @@ -188,29 +101,12 @@ import com.android.wm.shell.unfold.qualifier.UnfoldTransition; import com.android.wm.shell.windowdecor.CaptionWindowDecorViewModel; import com.android.wm.shell.windowdecor.DesktopModeWindowDecorViewModel; import com.android.wm.shell.windowdecor.WindowDecorViewModel; -import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalSystemViewContainer; -import com.android.wm.shell.windowdecor.common.AppHandleAndHeaderVisibilityHelper; -import com.android.wm.shell.windowdecor.common.WindowDecorTaskResourceLoader; -import com.android.wm.shell.windowdecor.common.viewhost.DefaultWindowDecorViewHostSupplier; -import com.android.wm.shell.windowdecor.common.viewhost.PooledWindowDecorViewHostSupplier; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHostSupplier; -import com.android.wm.shell.windowdecor.education.DesktopWindowingEducationPromoController; -import com.android.wm.shell.windowdecor.education.DesktopWindowingEducationTooltipController; -import com.android.wm.shell.windowdecor.tiling.DesktopTilingDecorViewModel; -import com.android.wm.shell.windowdecor.viewholder.AppHandleNotifier; - -import com.google.android.msdl.domain.MSDLPlayer; import dagger.Binds; import dagger.Lazy; import dagger.Module; import dagger.Provides; -import kotlinx.coroutines.CoroutineScope; -import kotlinx.coroutines.ExperimentalCoroutinesApi; -import kotlinx.coroutines.MainCoroutineDispatcher; - import java.util.ArrayList; import java.util.List; import java.util.Optional; @@ -223,8 +119,12 @@ import java.util.Optional; * <p>This module only defines Shell dependencies for handheld SystemUI implementation. Common * dependencies should go into {@link WMShellBaseModule}. */ -@Module(includes = {WMShellBaseModule.class, PipModule.class, ShellBackAnimationModule.class, - LetterboxModule.class}) +@Module( + includes = { + WMShellBaseModule.class, + PipModule.class, + ShellBackAnimationModule.class, + }) public abstract class WMShellModule { // @@ -239,7 +139,8 @@ public abstract class WMShellModule { @WMSingleton @Provides - static BubblePositioner provideBubblePositioner(Context context, WindowManager windowManager) { + static BubblePositioner provideBubblePositioner(Context context, + WindowManager windowManager) { return new BubblePositioner(context, windowManager); } @@ -251,73 +152,26 @@ public abstract class WMShellModule { @WMSingleton @Provides - static BubbleData provideBubbleData( - Context context, + static BubbleData provideBubbleData(Context context, BubbleLogger logger, BubblePositioner positioner, BubbleEducationController educationController, - @ShellMainThread ShellExecutor mainExecutor, - @ShellBackgroundThread ShellExecutor bgExecutor) { - return new BubbleData( - context, logger, positioner, educationController, mainExecutor, bgExecutor); - } - - @WMSingleton - @Provides - static Optional<BubbleTaskUnfoldTransitionMerger> provideBubbleTaskUnfoldTransitionMerger( - Optional<BubbleController> bubbleController) { - return bubbleController.map(controller -> controller); - } - - @Binds - abstract BubbleAppInfoProvider bindBubbleAppInfoProvider( - PackageManagerBubbleAppInfoProvider appInfoProvider); - - @WMSingleton - @Provides - static BubbleTransitions provideBubbleTransitions( - @NonNull Context context, - @NonNull Transitions transitions, - @NonNull ShellTaskOrganizer organizer, - @NonNull TaskViewRepository repository, - @NonNull BubbleData bubbleData, - @NonNull @Bubbles TaskViewTransitions taskViewTransitions, - @NonNull BubbleAppInfoProvider appInfoProvider - ) { - return new BubbleTransitions(context, transitions, organizer, repository, - bubbleData, taskViewTransitions, appInfoProvider); - } - - @WMSingleton - @Provides - @Bubbles - static TaskViewTransitions provideBubblesTaskViewTransitions( - @NonNull TaskViewTransitions taskViewTransitions, - @NonNull Transitions transitions, - @NonNull TaskViewRepository repository, - @NonNull ShellTaskOrganizer organizer, - SyncTransactionQueue syncQueue - ) { - return TaskViewTransitions.useRepo() - ? new TaskViewTransitions(transitions, repository, organizer, syncQueue) - : taskViewTransitions; + @ShellMainThread ShellExecutor mainExecutor) { + return new BubbleData(context, logger, positioner, educationController, mainExecutor); } // Note: Handler needed for LauncherApps.register @WMSingleton @Provides - static BubbleController provideBubbleController( - Context context, + static BubbleController provideBubbleController(Context context, ShellInit shellInit, ShellCommandHandler shellCommandHandler, ShellController shellController, BubbleData data, - BubbleTransitions bubbleTransitions, FloatingContentCoordinator floatingContentCoordinator, IStatusBarService statusBarService, WindowManager windowManager, - DisplayInsetsController displayInsetsController, - DisplayImeController displayImeController, + WindowManagerShellWrapper windowManagerShellWrapper, UserManager userManager, LauncherApps launcherApps, TaskStackListenerImpl taskStackListener, @@ -330,54 +184,19 @@ public abstract class WMShellModule { @ShellMainThread ShellExecutor mainExecutor, @ShellMainThread Handler mainHandler, @ShellBackgroundThread ShellExecutor bgExecutor, - @Bubbles TaskViewTransitions taskViewTransitions, + TaskViewTransitions taskViewTransitions, Transitions transitions, SyncTransactionQueue syncQueue, - IWindowManager wmService, - HomeIntentProvider homeIntentProvider, - BubbleAppInfoProvider appInfoProvider, - Lazy<Optional<SplitScreenController>> splitScreenController) { - final WindowManager wm = enableViewCaptureTracing() - ? ViewCaptureAwareWindowManagerFactory.getInstance(context) - : windowManager; - return new BubbleController( - context, - shellInit, - shellCommandHandler, - shellController, - data, - null /* synchronizer */, - floatingContentCoordinator, - new BubbleDataRepository( - launcherApps, - mainExecutor, - bgExecutor, + IWindowManager wmService) { + return new BubbleController(context, shellInit, shellCommandHandler, shellController, data, + null /* synchronizer */, floatingContentCoordinator, + new BubbleDataRepository(launcherApps, mainExecutor, new BubblePersistentRepository(context)), - bubbleTransitions, - statusBarService, - wm, - displayInsetsController, - displayImeController, - userManager, - launcherApps, - logger, - taskStackListener, - organizer, - positioner, - displayController, - oneHandedOptional, - dragAndDropController, - mainExecutor, - mainHandler, - bgExecutor, - taskViewTransitions, - transitions, - syncQueue, - wmService, - new BubbleResizabilityChecker(), - homeIntentProvider, - appInfoProvider, - splitScreenController); + statusBarService, windowManager, windowManagerShellWrapper, userManager, + launcherApps, logger, taskStackListener, organizer, positioner, displayController, + oneHandedOptional, dragAndDropController, mainExecutor, mainHandler, bgExecutor, + taskViewTransitions, transitions, syncQueue, wmService, + ProdBubbleProperties.INSTANCE); } // @@ -391,77 +210,44 @@ public abstract class WMShellModule { @ShellMainThread ShellExecutor mainExecutor, @ShellMainThread Handler mainHandler, @ShellMainThread Choreographer mainChoreographer, - @ShellBackgroundThread ShellExecutor bgExecutor, ShellInit shellInit, IWindowManager windowManager, + ShellCommandHandler shellCommandHandler, ShellTaskOrganizer taskOrganizer, DisplayController displayController, + ShellController shellController, + DisplayInsetsController displayInsetsController, SyncTransactionQueue syncQueue, Transitions transitions, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - FocusTransitionObserver focusTransitionObserver, - WindowDecorViewHostSupplier<WindowDecorViewHost> windowDecorViewHostSupplier, - Optional<DesktopModeWindowDecorViewModel> desktopModeWindowDecorViewModel, - DesktopState desktopState, - DesktopConfig desktopConfig) { - if (desktopModeWindowDecorViewModel.isPresent()) { - return desktopModeWindowDecorViewModel.get(); + Optional<DesktopTasksController> desktopTasksController, + RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer) { + if (DesktopModeStatus.canEnterDesktopMode(context)) { + return new DesktopModeWindowDecorViewModel( + context, + mainExecutor, + mainHandler, + mainChoreographer, + shellInit, + shellCommandHandler, + windowManager, + taskOrganizer, + displayController, + shellController, + displayInsetsController, + syncQueue, + transitions, + desktopTasksController, + rootTaskDisplayAreaOrganizer); } return new CaptionWindowDecorViewModel( context, mainHandler, - mainExecutor, - bgExecutor, mainChoreographer, - windowManager, - shellInit, taskOrganizer, displayController, rootTaskDisplayAreaOrganizer, syncQueue, - transitions, - focusTransitionObserver, - windowDecorViewHostSupplier, - desktopState, - desktopConfig); - } - - @WMSingleton - @Provides - static AppToWebGenericLinksParser provideGenericLinksParser( - Context context, @ShellMainThread ShellExecutor mainExecutor, - DesktopConfig desktopConfig) { - return new AppToWebGenericLinksParser(context, mainExecutor, desktopConfig); - } - - @Provides - static AssistContentRequester provideAssistContentRequester( - Context context, - @ShellMainThread ShellExecutor shellExecutor, - @ShellBackgroundThread ShellExecutor bgExecutor) { - return new AssistContentRequester(context, shellExecutor, bgExecutor); - } - - @Provides - static AdditionalSystemViewContainer.Factory provideAdditionalSystemViewContainerFactory() { - return new AdditionalSystemViewContainer.Factory(); - } - - @WMSingleton - @Provides - static WindowDecorViewHostSupplier<WindowDecorViewHost> provideWindowDecorViewHostSupplier( - @NonNull Context context, - @ShellMainThread @NonNull CoroutineScope mainScope, - @NonNull ShellInit shellInit, - DesktopState desktopState, - DesktopConfig desktopConfig) { - final int poolSize = desktopConfig.getWindowDecorScvhPoolSize(); - final int preWarmSize = desktopConfig.getWindowDecorPreWarmSize(); - if (desktopState.canEnterDesktopModeOrShowAppHandle() && poolSize > 0) { - return new PooledWindowDecorViewHostSupplier( - context, mainScope, shellInit, poolSize, preWarmSize); - } - return new DefaultWindowDecorViewHostSupplier(mainScope); + transitions); } // @@ -474,13 +260,9 @@ public abstract class WMShellModule { static FreeformComponents provideFreeformComponents( FreeformTaskListener taskListener, FreeformTaskTransitionHandler transitionHandler, - FreeformTaskTransitionObserver transitionObserver, - FreeformTaskTransitionStarterInitializer transitionStarterInitializer) { + FreeformTaskTransitionObserver transitionObserver) { return new FreeformComponents( - taskListener, - Optional.of(transitionHandler), - Optional.of(transitionObserver), - Optional.of(transitionStarterInitializer)); + taskListener, Optional.of(transitionHandler), Optional.of(transitionObserver)); } @WMSingleton @@ -489,95 +271,52 @@ public abstract class WMShellModule { Context context, ShellInit shellInit, ShellTaskOrganizer shellTaskOrganizer, - Optional<DesktopUserRepositories> desktopUserRepositories, - Optional<DesktopTasksController> desktopTasksController, - DesktopModeLoggerTransitionObserver desktopModeLoggerTransitionObserver, - LaunchAdjacentController launchAdjacentController, - WindowDecorViewModel windowDecorViewModel, - Optional<TaskChangeListener> taskChangeListener, - DesktopState desktopState) { - return new FreeformTaskListener( - context, - shellInit, - shellTaskOrganizer, - desktopUserRepositories, - desktopTasksController, - desktopModeLoggerTransitionObserver, - launchAdjacentController, - windowDecorViewModel, - taskChangeListener, - desktopState); + Optional<DesktopModeTaskRepository> desktopModeTaskRepository, + WindowDecorViewModel windowDecorViewModel) { + // TODO(b/238217847): Temporarily add this check here until we can remove the dynamic + // override for this controller from the base module + ShellInit init = FreeformComponents.isFreeformEnabled(context) + ? shellInit + : null; + return new FreeformTaskListener(context, init, shellTaskOrganizer, + desktopModeTaskRepository, windowDecorViewModel); } @WMSingleton @Provides static FreeformTaskTransitionHandler provideFreeformTaskTransitionHandler( + ShellInit shellInit, Transitions transitions, + Context context, + WindowDecorViewModel windowDecorViewModel, DisplayController displayController, @ShellMainThread ShellExecutor mainExecutor, - @ShellAnimationThread ShellExecutor animExecutor, - @ShellAnimationThread Handler animHandler) { - return new FreeformTaskTransitionHandler( - transitions, displayController, mainExecutor, animExecutor, animHandler); + @ShellAnimationThread ShellExecutor animExecutor) { + return new FreeformTaskTransitionHandler(shellInit, transitions, context, + windowDecorViewModel, displayController, mainExecutor, animExecutor); } @WMSingleton @Provides static FreeformTaskTransitionObserver provideFreeformTaskTransitionObserver( + Context context, ShellInit shellInit, Transitions transitions, - Optional<DesktopImmersiveController> desktopImmersiveController, - WindowDecorViewModel windowDecorViewModel, - Optional<TaskChangeListener> taskChangeListener, - FocusTransitionObserver focusTransitionObserver, - DesksOrganizer desksOrganizer, - Optional<DesksTransitionObserver> desksTransitionObserver, - DesktopState desktopState, - Optional<DesktopImeHandler> desktopImeHandler, - Optional<DesktopBackNavTransitionObserver> desktopBackNavTransitionObserver, - Optional<DesktopInOrderTransitionObserver> desktopInOrderTransitionObserver) { + WindowDecorViewModel windowDecorViewModel) { return new FreeformTaskTransitionObserver( - shellInit, - transitions, - desktopImmersiveController, - windowDecorViewModel, - taskChangeListener, - focusTransitionObserver, - desksOrganizer, - desksTransitionObserver, - desktopState, - desktopImeHandler, - desktopBackNavTransitionObserver, - desktopInOrderTransitionObserver); - } - - @WMSingleton - @Provides - static FreeformTaskTransitionStarterInitializer provideFreeformTaskTransitionStarterInitializer( - ShellInit shellInit, - WindowDecorViewModel windowDecorViewModel, - FreeformTaskTransitionHandler freeformTaskTransitionHandler, - Optional<DesktopMixedTransitionHandler> desktopMixedTransitionHandler) { - FreeformTaskTransitionStarter transitionStarter; - if (desktopMixedTransitionHandler.isPresent()) { - transitionStarter = desktopMixedTransitionHandler.get(); - } else { - transitionStarter = freeformTaskTransitionHandler; - } - return new FreeformTaskTransitionStarterInitializer( - shellInit, windowDecorViewModel, transitionStarter); + context, shellInit, transitions, windowDecorViewModel); } // // One handed mode // + // Needs the shell main handler for ContentObserver callbacks @WMSingleton @Provides @DynamicOverride - static OneHandedController provideOneHandedController( - Context context, + static OneHandedController provideOneHandedController(Context context, ShellInit shellInit, ShellCommandHandler shellCommandHandler, ShellController shellController, @@ -589,19 +328,9 @@ public abstract class WMShellModule { InteractionJankMonitor jankMonitor, @ShellMainThread ShellExecutor mainExecutor, @ShellMainThread Handler mainHandler) { - return OneHandedController.create( - context, - shellInit, - shellCommandHandler, - shellController, - windowManager, - displayController, - displayLayout, - taskStackListener, - jankMonitor, - uiEventLogger, - mainExecutor, - mainHandler); + return OneHandedController.create(context, shellInit, shellCommandHandler, shellController, + windowManager, displayController, displayLayout, taskStackListener, jankMonitor, + uiEventLogger, mainExecutor, mainHandler); } // @@ -630,44 +359,14 @@ public abstract class WMShellModule { LaunchAdjacentController launchAdjacentController, Optional<WindowDecorViewModel> windowDecorViewModel, Optional<DesktopTasksController> desktopTasksController, - Optional<DesktopUserRepositories> desktopUserRepositories, MultiInstanceHelper multiInstanceHelper, - SplitState splitState, - @ShellMainThread ShellExecutor mainExecutor, - @ShellMainThread Handler mainHandler, - RootDisplayAreaOrganizer rootDisplayAreaOrganizer, - DesktopState desktopState, - IActivityTaskManager activityTaskManager, - MSDLPlayer msdlPlayer) { - return new SplitScreenController( - context, - shellInit, - shellCommandHandler, - shellController, - shellTaskOrganizer, - syncQueue, - rootTaskDisplayAreaOrganizer, - displayController, - displayImeController, - displayInsetsController, - dragAndDropController, - transitions, - transactionPool, - iconProvider, - recentTasks, - launchAdjacentController, - windowDecorViewModel, - desktopTasksController, - desktopUserRepositories, - null /* stageCoordinator */, - multiInstanceHelper, - splitState, - mainExecutor, - mainHandler, - rootDisplayAreaOrganizer, - desktopState, - activityTaskManager, - msdlPlayer); + @ShellMainThread ShellExecutor mainExecutor) { + return new SplitScreenController(context, shellInit, shellCommandHandler, shellController, + shellTaskOrganizer, syncQueue, rootTaskDisplayAreaOrganizer, displayController, + displayImeController, displayInsetsController, dragAndDropController, transitions, + transactionPool, iconProvider, recentTasks, launchAdjacentController, + windowDecorViewModel, desktopTasksController, null /* stageCoordinator */, + multiInstanceHelper, mainExecutor); } // @@ -686,39 +385,22 @@ public abstract class WMShellModule { Optional<DesktopTasksController> desktopTasksController, Optional<UnfoldTransitionHandler> unfoldHandler, Optional<ActivityEmbeddingController> activityEmbeddingController, - BubbleTransitions bubbleTransitions, Transitions transitions) { - return new DefaultMixedHandler( - shellInit, - transitions, - splitScreenOptional, - pipTransitionController, - recentsTransitionHandler, - keyguardTransitionHandler, - desktopTasksController, - unfoldHandler, - activityEmbeddingController, - bubbleTransitions); + return new DefaultMixedHandler(shellInit, transitions, splitScreenOptional, + pipTransitionController, recentsTransitionHandler, + keyguardTransitionHandler, desktopTasksController, + unfoldHandler, activityEmbeddingController); } @WMSingleton @Provides static RecentsTransitionHandler provideRecentsTransitionHandler( ShellInit shellInit, - ShellTaskOrganizer shellTaskOrganizer, Transitions transitions, Optional<RecentTasksController> recentTasksController, - HomeTransitionObserver homeTransitionObserver, - DisplayController displayController, - DesksOrganizer desksOrganizer) { - return new RecentsTransitionHandler( - shellInit, - shellTaskOrganizer, - transitions, - recentTasksController.orElse(null), - homeTransitionObserver, - displayController, - desksOrganizer); + HomeTransitionObserver homeTransitionObserver) { + return new RecentsTransitionHandler(shellInit, transitions, + recentTasksController.orElse(null), homeTransitionObserver); } // @@ -735,7 +417,8 @@ public abstract class WMShellModule { FullscreenUnfoldTaskAnimator fullscreenAnimator, Lazy<Optional<UnfoldTransitionHandler>> unfoldTransitionHandler, ShellInit shellInit, - @ShellMainThread ShellExecutor mainExecutor) { + @ShellMainThread ShellExecutor mainExecutor + ) { final List<UnfoldTaskAnimator> animators = new ArrayList<>(); animators.add(splitAnimator); animators.add(fullscreenAnimator); @@ -746,7 +429,8 @@ public abstract class WMShellModule { progressProvider.get(), animators, unfoldTransitionHandler, - mainExecutor); + mainExecutor + ); } @Provides @@ -754,9 +438,10 @@ public abstract class WMShellModule { Context context, UnfoldBackgroundController unfoldBackgroundController, ShellController shellController, - DisplayInsetsController displayInsetsController) { - return new FullscreenUnfoldTaskAnimator( - context, unfoldBackgroundController, shellController, displayInsetsController); + DisplayInsetsController displayInsetsController + ) { + return new FullscreenUnfoldTaskAnimator(context, unfoldBackgroundController, + shellController, displayInsetsController); } @Provides @@ -766,18 +451,14 @@ public abstract class WMShellModule { ShellController shellController, @ShellMainThread ShellExecutor executor, Lazy<Optional<SplitScreenController>> splitScreenOptional, - DisplayInsetsController displayInsetsController) { + DisplayInsetsController displayInsetsController + ) { // TODO(b/238217847): The lazy reference here causes some dependency issues since it // immediately registers a listener on that controller on init. We should reference the // controller directly once we refactor ShellTaskOrganizer to not depend on the unfold // animation controller directly. - return new SplitTaskUnfoldAnimator( - context, - executor, - splitScreenOptional, - shellController, - backgroundController, - displayInsetsController); + return new SplitTaskUnfoldAnimator(context, executor, splitScreenOptional, + shellController, backgroundController, displayInsetsController); } @WMSingleton @@ -802,19 +483,9 @@ public abstract class WMShellModule { TransactionPool transactionPool, Transitions transitions, @ShellMainThread ShellExecutor executor, - @ShellMainThread Handler handler, - ShellInit shellInit, - Optional<BubbleTaskUnfoldTransitionMerger> bubbleTaskUnfoldTransitionMerger) { - return new UnfoldTransitionHandler( - shellInit, - progressProvider.get(), - animator, - unfoldAnimator, - transactionPool, - executor, - handler, - transitions, - bubbleTaskUnfoldTransitionMerger); + ShellInit shellInit) { + return new UnfoldTransitionHandler(shellInit, progressProvider.get(), animator, + unfoldAnimator, transactionPool, executor, transitions); } @WMSingleton @@ -827,19 +498,6 @@ public abstract class WMShellModule { // Desktop mode (optional feature) // - @WMSingleton - @Provides - static DesksOrganizer provideDesksOrganizer( - @NonNull ShellInit shellInit, - @NonNull ShellCommandHandler shellCommandHandler, - @NonNull ShellTaskOrganizer shellTaskOrganizer, - @NonNull LaunchAdjacentController launchAdjacentController, - @NonNull RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer - ) { - return new RootTaskDesksOrganizer(shellInit, shellCommandHandler, shellTaskOrganizer, - launchAdjacentController, rootTaskDisplayAreaOrganizer); - } - @WMSingleton @Provides @DynamicOverride @@ -854,226 +512,44 @@ public abstract class WMShellModule { RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, DragAndDropController dragAndDropController, Transitions transitions, - KeyguardManager keyguardManager, - ReturnToDragStartAnimator returnToDragStartAnimator, - Optional<DesktopMixedTransitionHandler> desktopMixedTransitionHandler, EnterDesktopTaskTransitionHandler enterDesktopTransitionHandler, ExitDesktopTaskTransitionHandler exitDesktopTransitionHandler, - DesktopModeDragAndDropTransitionHandler desktopModeDragAndDropTransitionHandler, ToggleResizeDesktopTaskTransitionHandler toggleResizeDesktopTaskTransitionHandler, DragToDesktopTransitionHandler dragToDesktopTransitionHandler, - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - DesktopRepositoryInitializer desktopRepositoryInitializer, - Optional<DesktopImmersiveController> desktopImmersiveController, + @DynamicOverride DesktopModeTaskRepository desktopModeTaskRepository, DesktopModeLoggerTransitionObserver desktopModeLoggerTransitionObserver, LaunchAdjacentController launchAdjacentController, RecentsTransitionHandler recentsTransitionHandler, MultiInstanceHelper multiInstanceHelper, @ShellMainThread ShellExecutor mainExecutor, - @ShellMainThread CoroutineScope mainScope, - @ShellMainThread Handler mainHandler, - @ShellDesktopThread ShellExecutor desktopExecutor, Optional<DesktopTasksLimiter> desktopTasksLimiter, - Optional<RecentTasksController> recentTasksController, - InteractionJankMonitor interactionJankMonitor, - InputManager inputManager, - FocusTransitionObserver focusTransitionObserver, - DesktopModeEventLogger desktopModeEventLogger, - DesktopModeUiEventLogger desktopModeUiEventLogger, - DesktopWallpaperActivityTokenProvider desktopWallpaperActivityTokenProvider, - Optional<BubbleController> bubbleController, - OverviewToDesktopTransitionObserver overviewToDesktopTransitionObserver, - DesksOrganizer desksOrganizer, - Optional<DesksTransitionObserver> desksTransitionObserver, - UserProfileContexts userProfileContexts, - DesktopModeCompatPolicy desktopModeCompatPolicy, - DragToDisplayTransitionHandler dragToDisplayTransitionHandler, - DesktopModeMoveToDisplayTransitionHandler moveToDisplayTransitionHandler, - HomeIntentProvider homeIntentProvider, - DesktopState desktopState, - DesktopConfig desktopConfig, - VisualIndicatorUpdateScheduler visualIndicatorUpdateScheduler, - Optional<DesktopFirstListenerManager> desktopFirstListenerManager) { - return new DesktopTasksController( - context, - shellInit, - shellCommandHandler, - shellController, - displayController, - shellTaskOrganizer, - syncQueue, - rootTaskDisplayAreaOrganizer, - dragAndDropController, - transitions, - keyguardManager, - returnToDragStartAnimator, - desktopMixedTransitionHandler.get(), - enterDesktopTransitionHandler, - exitDesktopTransitionHandler, - desktopModeDragAndDropTransitionHandler, - toggleResizeDesktopTaskTransitionHandler, - dragToDesktopTransitionHandler, - desktopImmersiveController.get(), - desktopUserRepositories, - desktopRepositoryInitializer, - recentsTransitionHandler, - multiInstanceHelper, - mainExecutor, - mainScope, - desktopExecutor, - desktopTasksLimiter, - recentTasksController.orElse(null), - interactionJankMonitor, - mainHandler, - focusTransitionObserver, - desktopModeEventLogger, - desktopModeUiEventLogger, - desktopWallpaperActivityTokenProvider, - bubbleController, - overviewToDesktopTransitionObserver, - desksOrganizer, - desksTransitionObserver.get(), - userProfileContexts, - desktopModeCompatPolicy, - dragToDisplayTransitionHandler, - moveToDisplayTransitionHandler, - homeIntentProvider, - desktopState, - desktopConfig, - visualIndicatorUpdateScheduler, - desktopFirstListenerManager); + Optional<RecentTasksController> recentTasksController) { + return new DesktopTasksController(context, shellInit, shellCommandHandler, shellController, + displayController, shellTaskOrganizer, syncQueue, rootTaskDisplayAreaOrganizer, + dragAndDropController, transitions, enterDesktopTransitionHandler, + exitDesktopTransitionHandler, toggleResizeDesktopTaskTransitionHandler, + dragToDesktopTransitionHandler, desktopModeTaskRepository, + desktopModeLoggerTransitionObserver, launchAdjacentController, + recentsTransitionHandler, multiInstanceHelper, + mainExecutor, desktopTasksLimiter, recentTasksController.orElse(null)); } - @WMSingleton - @Provides - static DesktopTilingDecorViewModel provideDesktopTilingViewModel(Context context, - @ShellMainThread MainCoroutineDispatcher mainDispatcher, - @ShellBackgroundThread CoroutineScope bgScope, - DisplayController displayController, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - SyncTransactionQueue syncQueue, - Transitions transitions, - ShellTaskOrganizer shellTaskOrganizer, - ToggleResizeDesktopTaskTransitionHandler toggleResizeDesktopTaskTransitionHandler, - ReturnToDragStartAnimator returnToDragStartAnimator, - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - DesktopModeEventLogger desktopModeEventLogger, - WindowDecorTaskResourceLoader windowDecorTaskResourceLoader, - FocusTransitionObserver focusTransitionObserver, - @ShellMainThread ShellExecutor mainExecutor, - DesktopState desktopState, - ShellInit shellInit) { - return new DesktopTilingDecorViewModel( - context, - mainDispatcher, - bgScope, - displayController, - rootTaskDisplayAreaOrganizer, - syncQueue, - transitions, - shellTaskOrganizer, - toggleResizeDesktopTaskTransitionHandler, - returnToDragStartAnimator, - desktopUserRepositories, - desktopModeEventLogger, - windowDecorTaskResourceLoader, - focusTransitionObserver, - mainExecutor, - desktopState, - shellInit - ); - } - - @WMSingleton - @Provides - static Optional<TaskChangeListener> provideDesktopTaskChangeListener( - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - DesktopState desktopState, - ShellController shellController) { - if (ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() - && desktopState.canEnterDesktopMode()) { - return Optional.of(new DesktopTaskChangeListener( - desktopUserRepositories, desktopState, shellController)); - } - return Optional.empty(); - } - - @WMSingleton - @Provides - static Optional<DesktopInOrderTransitionObserver> provideDesktopInOrderTransitionObserver( - ShellInit shellInit, - Optional<DesktopImmersiveController> desktopImmersiveController, - FocusTransitionObserver focusTransitionObserver, - Optional<DesksTransitionObserver> desksTransitionObserver, - DesktopState desktopState, - Optional<DesktopImeHandler> desktopImeHandler, - Optional<DesktopBackNavTransitionObserver> desktopBackNavTransitionObserver) { - if (enableInorderTransitionCallbacksForDesktop() - && ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() - && desktopState.canEnterDesktopMode()) { - return Optional.of(new DesktopInOrderTransitionObserver( - desktopImmersiveController, - focusTransitionObserver, - desksTransitionObserver, - desktopImeHandler, - desktopBackNavTransitionObserver)); - } - return Optional.empty(); - } @WMSingleton @Provides static Optional<DesktopTasksLimiter> provideDesktopTasksLimiter( + Context context, Transitions transitions, - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - ShellTaskOrganizer shellTaskOrganizer, - DesksOrganizer desksOrganizer, - DesktopConfig desktopConfig, - DesktopState desktopState, - Optional<DesktopMixedTransitionHandler> desktopMixedTransitionHandler) { - if (!desktopState.canEnterDesktopMode() - || !ENABLE_DESKTOP_WINDOWING_TASK_LIMIT.isTrue()) { + @DynamicOverride DesktopModeTaskRepository desktopModeTaskRepository, + ShellTaskOrganizer shellTaskOrganizer) { + if (!DesktopModeStatus.canEnterDesktopMode(context) + || !Flags.enableDesktopWindowingTaskLimit()) { return Optional.empty(); } - int maxTaskLimit = desktopConfig.getMaxTaskLimit(); return Optional.of( new DesktopTasksLimiter( - transitions, - desktopUserRepositories, - shellTaskOrganizer, - desksOrganizer, - desktopMixedTransitionHandler.get(), - maxTaskLimit <= 0 ? null : maxTaskLimit)); + transitions, desktopModeTaskRepository, shellTaskOrganizer)); } - @WMSingleton - @Provides - static Optional<DesktopImmersiveController> provideDesktopImmersiveController( - ShellInit shellInit, - Transitions transitions, - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - DisplayController displayController, - ShellTaskOrganizer shellTaskOrganizer, - ShellCommandHandler shellCommandHandler, - DesktopState desktopState) { - if (desktopState.canEnterDesktopModeOrShowAppHandle()) { - return Optional.of( - new DesktopImmersiveController( - shellInit, - transitions, - desktopUserRepositories, - displayController, - shellTaskOrganizer, - shellCommandHandler)); - } - return Optional.empty(); - } - - @WMSingleton - @Provides - static ReturnToDragStartAnimator provideReturnToDragStartAnimator( - InteractionJankMonitor interactionJankMonitor) { - return new ReturnToDragStartAnimator(interactionJankMonitor); - } @WMSingleton @Provides @@ -1081,445 +557,65 @@ public abstract class WMShellModule { Context context, Transitions transitions, RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - DesksOrganizer desksOrganizer, - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - InteractionJankMonitor interactionJankMonitor, - Optional<BubbleController> bubbleController, - DesktopState desktopState) { - return ENABLE_DESKTOP_WINDOWING_ENTER_TRANSITIONS_BUGFIX.isTrue() - ? new SpringDragToDesktopTransitionHandler( - context, transitions, rootTaskDisplayAreaOrganizer, desksOrganizer, - desktopUserRepositories, interactionJankMonitor, bubbleController, desktopState) - : new DefaultDragToDesktopTransitionHandler( - context, transitions, rootTaskDisplayAreaOrganizer, desksOrganizer, - desktopUserRepositories, interactionJankMonitor, bubbleController, - desktopState); - } - - @WMSingleton - @Provides - static Optional<DisplayDisconnectTransitionHandler> provideDisplayDisconnectTransitionHandler( - ShellInit shellInit, Transitions transitions) { - if (!DesktopExperienceFlags.ENABLE_DISPLAY_DISCONNECT_INTERACTION.isTrue()) { - return Optional.empty(); - } else { - return Optional.of( - new DisplayDisconnectTransitionHandler(transitions, shellInit) - ); - } - } - - @WMSingleton - @Provides - static DesktopWallpaperActivityTokenProvider provideDesktopWallpaperActivityTokenProvider() { - return new DesktopWallpaperActivityTokenProvider(); - } - - @WMSingleton - @Provides - static DragToDisplayTransitionHandler provideDragToDisplayTransitionHandler() { - return new DragToDisplayTransitionHandler(); - } - - @WMSingleton - @Provides - static DesktopModeMoveToDisplayTransitionHandler provideMoveToDisplayTransitionHandler( - InteractionJankMonitor interactionJankMonitor, - @ShellMainThread Handler shellMainHandler, - DisplayController displayController) { - return new DesktopModeMoveToDisplayTransitionHandler( - new SurfaceControl.Transaction(), - interactionJankMonitor, - shellMainHandler, - displayController); - } - - @WMSingleton - @Provides - static Optional<DesktopModeKeyGestureHandler> provideDesktopModeKeyGestureHandler( - Context context, - Optional<DesktopModeWindowDecorViewModel> desktopModeWindowDecorViewModel, - Optional<DesktopTasksController> desktopTasksController, - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - InputManager inputManager, - ShellTaskOrganizer shellTaskOrganizer, - FocusTransitionObserver focusTransitionObserver, - @ShellMainThread ShellExecutor mainExecutor, - DisplayController displayController, - DesktopState desktopState) { - if (desktopState.canEnterDesktopMode() - && (DesktopExperienceFlags.ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT.isTrue() - || DesktopModeFlags.ENABLE_TASK_RESIZING_KEYBOARD_SHORTCUTS.isTrue())) { - return Optional.of(new DesktopModeKeyGestureHandler(context, - desktopModeWindowDecorViewModel, desktopTasksController, - desktopUserRepositories, - inputManager, shellTaskOrganizer, focusTransitionObserver, - mainExecutor, displayController)); - } - return Optional.empty(); - } - - @WMSingleton - @Provides - static Optional<DesktopModeWindowDecorViewModel> provideDesktopModeWindowDecorViewModel( - Context context, - @ShellMainThread ShellExecutor shellExecutor, - @ShellMainThread Handler mainHandler, - @ShellMainThread Choreographer mainChoreographer, - @ShellMainThread MainCoroutineDispatcher mainDispatcher, - @ShellBackgroundThread CoroutineScope bgScope, - @ShellBackgroundThread ShellExecutor bgExecutor, - ShellInit shellInit, - ShellCommandHandler shellCommandHandler, - IWindowManager windowManager, - ShellTaskOrganizer taskOrganizer, - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - DisplayController displayController, - ShellController shellController, - DisplayInsetsController displayInsetsController, - SyncTransactionQueue syncQueue, - Transitions transitions, - Optional<DesktopTasksController> desktopTasksController, - Optional<DesktopImmersiveController> desktopImmersiveController, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - InteractionJankMonitor interactionJankMonitor, - AppToWebGenericLinksParser genericLinksParser, - AssistContentRequester assistContentRequester, - WindowDecorViewHostSupplier<WindowDecorViewHost> windowDecorViewHostSupplier, - MultiInstanceHelper multiInstanceHelper, - Optional<DesktopTasksLimiter> desktopTasksLimiter, - AppHandleEducationController appHandleEducationController, - AppToWebEducationController appToWebEducationController, - AppHandleAndHeaderVisibilityHelper appHandleAndHeaderVisibilityHelper, - WindowDecorCaptionRepository windowDecorCaptionRepository, - Optional<DesktopActivityOrientationChangeHandler> activityOrientationChangeHandler, - FocusTransitionObserver focusTransitionObserver, - DesktopModeEventLogger desktopModeEventLogger, - DesktopModeUiEventLogger desktopModeUiEventLogger, - WindowDecorTaskResourceLoader taskResourceLoader, - RecentsTransitionHandler recentsTransitionHandler, - DesktopModeCompatPolicy desktopModeCompatPolicy, - DesktopTilingDecorViewModel desktopTilingDecorViewModel, - MultiDisplayDragMoveIndicatorController multiDisplayDragMoveIndicatorController, - Optional<CompatUIHandler> compatUI, - DesksOrganizer desksOrganizer, - DesktopState desktopState, - DesktopConfig desktopConfig - ) { - if (!desktopState.canEnterDesktopModeOrShowAppHandle()) { - return Optional.empty(); - } - return Optional.of(new DesktopModeWindowDecorViewModel(context, shellExecutor, mainHandler, - mainChoreographer, mainDispatcher, bgScope, bgExecutor, - shellInit, shellCommandHandler, windowManager, - taskOrganizer, desktopUserRepositories, displayController, shellController, - displayInsetsController, syncQueue, transitions, desktopTasksController, - desktopImmersiveController.get(), - rootTaskDisplayAreaOrganizer, interactionJankMonitor, genericLinksParser, - assistContentRequester, windowDecorViewHostSupplier, multiInstanceHelper, - desktopTasksLimiter, appHandleEducationController, appToWebEducationController, - appHandleAndHeaderVisibilityHelper, windowDecorCaptionRepository, - activityOrientationChangeHandler, focusTransitionObserver, desktopModeEventLogger, - desktopModeUiEventLogger, taskResourceLoader, recentsTransitionHandler, - desktopModeCompatPolicy, desktopTilingDecorViewModel, - multiDisplayDragMoveIndicatorController, compatUI.orElse(null), - desksOrganizer, desktopState, desktopConfig)); - } - - @WMSingleton - @Provides - static MultiDisplayDragMoveIndicatorController - providesMultiDisplayDragMoveIndicatorController( - DisplayController displayController, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - MultiDisplayDragMoveIndicatorSurface.Factory - multiDisplayDragMoveIndicatorSurfaceFactory, - @ShellDesktopThread ShellExecutor desktopExecutor, - DesktopState desktopState - ) { - return new MultiDisplayDragMoveIndicatorController( - displayController, rootTaskDisplayAreaOrganizer, - multiDisplayDragMoveIndicatorSurfaceFactory, desktopExecutor, desktopState); - } - - @WMSingleton - @Provides - static MultiDisplayDragMoveIndicatorSurface.Factory - providesMultiDisplayDragMoveIndicatorSurfaceFactory() { - return new MultiDisplayDragMoveIndicatorSurface.Factory(); - } - - @WMSingleton - @Provides - static AppHandleAndHeaderVisibilityHelper provideAppHandleAndHeaderVisibilityHelper( - @NonNull DisplayController displayController, - @NonNull DesktopModeCompatPolicy desktopModeCompatPolicy, - @NonNull DesktopState desktopState, - Optional<BubbleController> bubbleController) { - return new AppHandleAndHeaderVisibilityHelper(displayController, - desktopModeCompatPolicy, desktopState, bubbleController); - } - - @WMSingleton - @Provides - static WindowDecorTaskResourceLoader provideWindowDecorTaskResourceLoader( - @NonNull Context context, @NonNull ShellInit shellInit, - @NonNull ShellController shellController, - @NonNull ShellCommandHandler shellCommandHandler, - @NonNull UserProfileContexts userProfileContexts) { - return new WindowDecorTaskResourceLoader(context, shellInit, shellController, - shellCommandHandler, userProfileContexts); - } - - @WMSingleton - @Provides - static Optional<SystemModalsTransitionHandler> provideSystemModalsTransitionHandler( - Context context, - @ShellMainThread ShellExecutor mainExecutor, - @ShellAnimationThread ShellExecutor animExecutor, - ShellInit shellInit, - Transitions transitions, - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - DesktopModeCompatPolicy desktopModeCompatPolicy, - DesktopState desktopState) { - if (!desktopState.canEnterDesktopMode() - || !ENABLE_DESKTOP_WINDOWING_MODALS_POLICY.isTrue() - || !ENABLE_DESKTOP_SYSTEM_DIALOGS_TRANSITIONS.isTrue()) { - return Optional.empty(); - } - return Optional.of( - new SystemModalsTransitionHandler( - context, mainExecutor, animExecutor, shellInit, transitions, - desktopUserRepositories, desktopModeCompatPolicy)); + Optional<DesktopTasksLimiter> desktopTasksLimiter) { + return new DragToDesktopTransitionHandler(context, transitions, + rootTaskDisplayAreaOrganizer); } @WMSingleton @Provides static EnterDesktopTaskTransitionHandler provideEnterDesktopModeTaskTransitionHandler( Transitions transitions, - Context context, - Optional<DesktopTasksLimiter> desktopTasksLimiter, - InteractionJankMonitor interactionJankMonitor, - LatencyTracker latencyTracker) { - return new EnterDesktopTaskTransitionHandler( - transitions, context, interactionJankMonitor, latencyTracker); + Optional<DesktopTasksLimiter> desktopTasksLimiter) { + return new EnterDesktopTaskTransitionHandler(transitions); } @WMSingleton @Provides static ToggleResizeDesktopTaskTransitionHandler provideToggleResizeDesktopTaskTransitionHandler( - Transitions transitions, InteractionJankMonitor interactionJankMonitor) { - return new ToggleResizeDesktopTaskTransitionHandler(transitions, interactionJankMonitor); + Transitions transitions) { + return new ToggleResizeDesktopTaskTransitionHandler(transitions); } @WMSingleton @Provides static ExitDesktopTaskTransitionHandler provideExitDesktopTaskTransitionHandler( Transitions transitions, - Context context, - InteractionJankMonitor interactionJankMonitor, - @ShellMainThread Handler handler) { - return new ExitDesktopTaskTransitionHandler( - transitions, context, interactionJankMonitor, handler); - } - - @WMSingleton - @Provides - static CloseDesktopTaskTransitionHandler provideCloseDesktopTaskTransitionHandler( - Context context, - @ShellMainThread ShellExecutor mainExecutor, - @ShellAnimationThread ShellExecutor animExecutor, - @ShellAnimationThread Handler animHandler) { - return new CloseDesktopTaskTransitionHandler(context, mainExecutor, animExecutor, - animHandler); - } - - @WMSingleton - @Provides - static DesktopMinimizationTransitionHandler provideDesktopMinimizationTransitionHandler( - @ShellMainThread ShellExecutor mainExecutor, - @ShellAnimationThread ShellExecutor animExecutor, - DisplayController displayController, - @ShellAnimationThread Handler mainHandler) { - return new DesktopMinimizationTransitionHandler(mainExecutor, animExecutor, - displayController, mainHandler); - } - - @WMSingleton - @Provides - static DesktopModeDragAndDropTransitionHandler provideDesktopModeDragAndDropTransitionHandler( - Transitions transitions, DesktopModeDragAndDropAnimatorHelper animatorHelper) { - return new DesktopModeDragAndDropTransitionHandler(transitions, animatorHelper); - } - - @WMSingleton - @Provides - static DesktopModeDragAndDropAnimatorHelper provideDesktopModeDragAndDropAnimatorHelper( - Context context) { - return new DesktopModeDragAndDropAnimatorHelper(context, SurfaceControl.Transaction::new); + Context context + ) { + return new ExitDesktopTaskTransitionHandler(transitions, context); } @WMSingleton @Provides @DynamicOverride - static DesktopUserRepositories provideDesktopUserRepositories( - ShellInit shellInit, - ShellController shellController, - DesktopPersistentRepository desktopPersistentRepository, - DesktopRepositoryInitializer desktopRepositoryInitializer, - @ShellMainThread CoroutineScope mainScope, - UserManager userManager, - DesktopState desktopState, - DesktopConfig desktopConfig - ) { - return new DesktopUserRepositories(shellInit, shellController, - desktopPersistentRepository, - desktopRepositoryInitializer, - mainScope, userManager, desktopState, desktopConfig); - } - - @WMSingleton - @Provides - static Optional<DesktopActivityOrientationChangeHandler> provideActivityOrientationHandler( - Context context, - ShellInit shellInit, - ShellTaskOrganizer shellTaskOrganizer, - TaskStackListenerImpl taskStackListener, - ToggleResizeDesktopTaskTransitionHandler toggleResizeDesktopTaskTransitionHandler, - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - DisplayController displayController, - DesktopState desktopState) { - if (desktopState.canEnterDesktopMode()) { - return Optional.of( - new DesktopActivityOrientationChangeHandler( - context, - shellInit, - shellTaskOrganizer, - taskStackListener, - toggleResizeDesktopTaskTransitionHandler, - desktopUserRepositories, - displayController, - desktopState)); - } - return Optional.empty(); + static DesktopModeTaskRepository provideDesktopModeTaskRepository() { + return new DesktopModeTaskRepository(); } @WMSingleton @Provides static Optional<DesktopTasksTransitionObserver> provideDesktopTasksTransitionObserver( - Optional<DesktopUserRepositories> desktopUserRepositories, - Transitions transitions, - ShellTaskOrganizer shellTaskOrganizer, - Optional<DesktopMixedTransitionHandler> desktopMixedTransitionHandler, - DesktopWallpaperActivityTokenProvider desktopWallpaperActivityTokenProvider, - DesktopState desktopState, - ShellInit shellInit) { - return desktopUserRepositories.flatMap( - repository -> - Optional.of( - new DesktopTasksTransitionObserver( - repository, - transitions, - shellTaskOrganizer, - desktopMixedTransitionHandler.get(), - desktopWallpaperActivityTokenProvider, - desktopState, - shellInit))); - } - - @WMSingleton - @Provides - static Optional<DesktopBackNavTransitionObserver> provideDesktopBackNavTransitionObserver( - Optional<DesktopUserRepositories> desktopUserRepositories, - Optional<DesktopMixedTransitionHandler> desktopMixedTransitionHandler, - Optional<BackAnimationController> backAnimationController, - DesksOrganizer desksOrganizer, - Transitions transitions, - DesktopState desktopState, - ShellInit shellInit) { - return desktopUserRepositories.flatMap( - repository -> - Optional.of( - new DesktopBackNavTransitionObserver( - repository, - desktopMixedTransitionHandler.get(), - backAnimationController.get(), - desksOrganizer, - transitions, - desktopState, - shellInit))); - } - - @WMSingleton - @Provides - static Optional<DesksTransitionObserver> provideDesksTransitionObserver( - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - @NonNull DesksOrganizer desksOrganizer, - @NonNull Transitions transitions, - @NonNull ShellController shellController, - @NonNull DesktopWallpaperActivityTokenProvider desktopWallpaperActivityTokenProvider, - @NonNull @ShellMainThread CoroutineScope mainScope, - DesktopState desktopState - ) { - if (desktopState.canEnterDesktopModeOrShowAppHandle()) { - return Optional.of( - new DesksTransitionObserver(desktopUserRepositories, desksOrganizer, - transitions, shellController, desktopWallpaperActivityTokenProvider, - mainScope)); - } - return Optional.empty(); - } - - @WMSingleton - @Provides - static Optional<DesktopMixedTransitionHandler> provideDesktopMixedTransitionHandler( Context context, + Optional<DesktopModeTaskRepository> desktopModeTaskRepository, Transitions transitions, - @DynamicOverride DesktopUserRepositories desktopUserRepositories, - FreeformTaskTransitionHandler freeformTaskTransitionHandler, - CloseDesktopTaskTransitionHandler closeDesktopTaskTransitionHandler, - Optional<DesktopImmersiveController> desktopImmersiveController, - DesktopMinimizationTransitionHandler desktopMinimizationTransitionHandler, - DesktopModeDragAndDropTransitionHandler desktopModeDragAndDropTransitionHandler, - Optional<SystemModalsTransitionHandler> systemModalsTransitionHandler, - InteractionJankMonitor interactionJankMonitor, - @ShellMainThread Handler handler, - ShellInit shellInit, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - DesktopState desktopState + ShellInit shellInit ) { - if (!desktopState.canEnterDesktopMode() - && !desktopState.overridesShowAppHandle()) { - return Optional.empty(); - } - return Optional.of( - new DesktopMixedTransitionHandler( - context, - transitions, - desktopUserRepositories, - freeformTaskTransitionHandler, - closeDesktopTaskTransitionHandler, - desktopImmersiveController.get(), - desktopMinimizationTransitionHandler, - desktopModeDragAndDropTransitionHandler, - systemModalsTransitionHandler, - interactionJankMonitor, - handler, - shellInit, - rootTaskDisplayAreaOrganizer)); + return desktopModeTaskRepository.flatMap(repository -> + Optional.of(new DesktopTasksTransitionObserver( + context, repository, transitions, shellInit)) + ); } @WMSingleton @Provides static DesktopModeLoggerTransitionObserver provideDesktopModeLoggerTransitionObserver( + Context context, ShellInit shellInit, Transitions transitions, - DesktopModeEventLogger desktopModeEventLogger, - Optional<DesktopTasksLimiter> desktopTasksLimiter, - DesktopState desktopState) { + DesktopModeEventLogger desktopModeEventLogger) { return new DesktopModeLoggerTransitionObserver( - shellInit, transitions, desktopModeEventLogger, - desktopTasksLimiter, desktopState); + context, shellInit, transitions, desktopModeEventLogger); } @WMSingleton @@ -1528,289 +624,6 @@ public abstract class WMShellModule { return new DesktopModeEventLogger(); } - @WMSingleton - @Provides - static Optional<DesktopDisplayEventHandler> provideDesktopDisplayEventHandler( - ShellInit shellInit, - @ShellMainThread CoroutineScope mainScope, - ShellController shellController, - DisplayController displayController, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - DesksOrganizer desksOrganizer, - Optional<DesktopUserRepositories> desktopUserRepositories, - Optional<DesktopTasksController> desktopTasksController, - Optional<DesktopDisplayModeController> desktopDisplayModeController, - DesktopRepositoryInitializer desktopRepositoryInitializer, - Optional<DesksTransitionObserver> desksTransitionObserver, - DesktopState desktopState - ) { - if (!desktopState.canEnterDesktopMode()) { - return Optional.empty(); - } - return Optional.of( - new DesktopDisplayEventHandler( - shellInit, - mainScope, - shellController, - displayController, - rootTaskDisplayAreaOrganizer, - desksOrganizer, - desktopRepositoryInitializer, - desktopUserRepositories.get(), - desktopTasksController.get(), - desktopDisplayModeController.get(), - desksTransitionObserver.get(), - desktopState)); - } - - @WMSingleton - @Provides - static Optional<DesktopFirstListenerManager> provideDesktopFirstListenerManager( - @NonNull DesktopState desktopState, - @NonNull ShellInit shellInit, - @NonNull RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - @NonNull DisplayController displayController - ) { - if (desktopState.canEnterDesktopMode() - && DesktopExperienceFlags.ENABLE_DESKTOP_FIRST_LISTENER.isTrue()) { - return Optional.of( - new DesktopFirstListenerManager(shellInit, rootTaskDisplayAreaOrganizer, - displayController)); - } - return Optional.empty(); - } - - @WMSingleton - @Provides - static AppHandleNotifier provideAppHandleNotifier( - @ShellMainThread ShellExecutor shellExecutor, - WindowDecorCaptionRepository windowDecorCaptionRepository, - @ShellMainThread CoroutineScope mainScope) { - return new AppHandleNotifier( - shellExecutor, windowDecorCaptionRepository, mainScope); - } - - @WMSingleton - @Provides - static AppHandleEducationDatastoreRepository provideAppHandleEducationDatastoreRepository( - Context context) { - return new AppHandleEducationDatastoreRepository(context); - } - - @WMSingleton - @Provides - static AppHandleEducationFilter provideAppHandleEducationFilter( - Context context, - AppHandleEducationDatastoreRepository appHandleEducationDatastoreRepository) { - return new AppHandleEducationFilter(context, appHandleEducationDatastoreRepository); - } - - @WMSingleton - @Provides - static WindowDecorCaptionRepository provideAppHandleRepository() { - return new WindowDecorCaptionRepository(); - } - - @WMSingleton - @Provides - static DesktopWindowingEducationTooltipController - provideDesktopWindowingEducationTooltipController( - Context context, - AdditionalSystemViewContainer.Factory additionalSystemViewContainerFactory, - DisplayController displayController) { - return new DesktopWindowingEducationTooltipController( - context, additionalSystemViewContainerFactory, displayController); - } - - @WMSingleton - @Provides - static DesktopWindowingEducationPromoController provideDesktopWindowingEducationPromoController( - Context context, - AdditionalSystemViewContainer.Factory additionalSystemViewContainerFactory, - DisplayController displayController - ) { - return new DesktopWindowingEducationPromoController( - context, - additionalSystemViewContainerFactory, - displayController - ); - } - - @OptIn(markerClass = ExperimentalCoroutinesApi.class) - @WMSingleton - @Provides - static AppHandleEducationController provideAppHandleEducationController( - Context context, - AppHandleEducationFilter appHandleEducationFilter, - AppHandleEducationDatastoreRepository appHandleEducationDatastoreRepository, - WindowDecorCaptionRepository windowDecorCaptionRepository, - DesktopWindowingEducationTooltipController desktopWindowingEducationTooltipController, - @ShellMainThread CoroutineScope applicationScope, - @ShellBackgroundThread MainCoroutineDispatcher backgroundDispatcher, - DesktopModeUiEventLogger desktopModeUiEventLogger, - DesktopState desktopState) { - return new AppHandleEducationController( - context, - appHandleEducationFilter, - appHandleEducationDatastoreRepository, - windowDecorCaptionRepository, - desktopWindowingEducationTooltipController, - applicationScope, - backgroundDispatcher, - desktopModeUiEventLogger, - desktopState); - } - - @WMSingleton - @Provides - static AppToWebEducationDatastoreRepository provideAppToWebEducationDatastoreRepository( - Context context) { - return new AppToWebEducationDatastoreRepository(context); - } - - @WMSingleton - @Provides - static AppToWebEducationFilter provideAppToWebEducationFilter( - Context context, - AppToWebEducationDatastoreRepository appToWebEducationDatastoreRepository) { - return new AppToWebEducationFilter(context, appToWebEducationDatastoreRepository); - } - - @OptIn(markerClass = ExperimentalCoroutinesApi.class) - @WMSingleton - @Provides - static AppToWebEducationController provideAppToWebEducationController( - Context context, - AppToWebEducationFilter appToWebEducationFilter, - AppToWebEducationDatastoreRepository appToWebEducationDatastoreRepository, - WindowDecorCaptionRepository windowDecorCaptionRepository, - DesktopWindowingEducationPromoController desktopWindowingEducationPromoController, - @ShellMainThread CoroutineScope applicationScope, - @ShellBackgroundThread MainCoroutineDispatcher backgroundDispatcher, - DesktopState desktopState) { - return new AppToWebEducationController(context, appToWebEducationFilter, - appToWebEducationDatastoreRepository, windowDecorCaptionRepository, - desktopWindowingEducationPromoController, applicationScope, - backgroundDispatcher, desktopState); - } - - @WMSingleton - @Provides - static DesktopPersistentRepository provideDesktopPersistentRepository( - Context context, @ShellBackgroundThread CoroutineScope bgScope) { - return new DesktopPersistentRepository(context, bgScope); - } - - @WMSingleton - @Provides - static DesktopRepositoryInitializer provideDesktopRepositoryInitializer( - Context context, - DesktopPersistentRepository desktopPersistentRepository, - @ShellMainThread CoroutineScope mainScope, - DesktopConfig desktopConfig, - DesktopState desktopState) { - return new DesktopRepositoryInitializerImpl(context, desktopPersistentRepository, - mainScope, desktopConfig, desktopState); - } - - @WMSingleton - @Provides - static DesktopModeUiEventLogger provideDesktopUiEventLogger( - UiEventLogger uiEventLogger, - PackageManager packageManager - ) { - return new DesktopModeUiEventLogger(uiEventLogger, packageManager); - } - - @WMSingleton - @Provides - static Optional<DesktopDisplayModeController> provideDesktopDisplayModeController( - Context context, - ShellInit shellInit, - ShellCommandHandler shellCommandHandler, - Transitions transitions, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - IWindowManager windowManager, - ShellTaskOrganizer shellTaskOrganizer, - DesktopWallpaperActivityTokenProvider desktopWallpaperActivityTokenProvider, - InputManager inputManager, - DisplayController displayController, - @ShellMainThread Handler mainHandler, - DesktopState desktopState - ) { - if (!desktopState.canEnterDesktopMode()) { - return Optional.empty(); - } - return Optional.of( - new DesktopDisplayModeController( - context, - shellInit, - shellCommandHandler, - transitions, - rootTaskDisplayAreaOrganizer, - windowManager, - shellTaskOrganizer, - desktopWallpaperActivityTokenProvider, - inputManager, - displayController, - mainHandler, - desktopState)); - } - - @WMSingleton - @Provides - static Optional<DesktopImeHandler> provideDesktopImeHandler( - Optional<DesktopTasksController> desktopTasksController, - Optional<DesktopUserRepositories> desktopUserRepositories, - FocusTransitionObserver focusTransitionObserver, - DisplayImeController displayImeController, - DisplayController displayController, - ShellTaskOrganizer shellTaskOrganizer, - Transitions transitions, - @ShellMainThread ShellExecutor mainExecutor, - @ShellAnimationThread ShellExecutor animExecutor, - Context context, - ShellInit shellInit, - DesktopState desktopState) { - if (!desktopState.canEnterDesktopMode()) { - return Optional.empty(); - } - return Optional.of( - new DesktopImeHandler(desktopTasksController.get(), desktopUserRepositories.get(), - focusTransitionObserver, shellTaskOrganizer, - displayImeController, displayController, transitions, mainExecutor, - animExecutor, context, shellInit)); - } - - @WMSingleton - @Provides - static VisualIndicatorUpdateScheduler provideVisualIndicatorUpdateScheduler( - ShellInit shellInit, - @ShellMainThread MainCoroutineDispatcher mainDispatcher, - @ShellBackgroundThread CoroutineScope bgScope, - DisplayController displayController) { - return new VisualIndicatorUpdateScheduler(shellInit, mainDispatcher, bgScope, - displayController); - } - - // - // App zoom out - // - - @WMSingleton - @Provides - static AppZoomOutController provideAppZoomOutController( - Context context, - ShellInit shellInit, - ShellTaskOrganizer shellTaskOrganizer, - DisplayController displayController, - DisplayLayout displayLayout, - @ShellMainThread ShellExecutor mainExecutor, - InteractionJankMonitor interactionJankMonitor) { - return AppZoomOutController.create(context, shellInit, shellTaskOrganizer, - displayController, displayLayout, mainExecutor, interactionJankMonitor); - } - // // Drag and drop // @@ -1818,47 +631,26 @@ public abstract class WMShellModule { @WMSingleton @Provides static GlobalDragListener provideGlobalDragListener( - IWindowManager wmService, @ShellMainThread ShellExecutor mainExecutor) { + IWindowManager wmService, + @ShellMainThread ShellExecutor mainExecutor) { return new GlobalDragListener(wmService, mainExecutor); } @WMSingleton @Provides - static DragAndDropController provideDragAndDropController( - Context context, + static DragAndDropController provideDragAndDropController(Context context, ShellInit shellInit, ShellController shellController, ShellCommandHandler shellCommandHandler, - ShellTaskOrganizer shellTaskOrganizer, DisplayController displayController, UiEventLogger uiEventLogger, IconProvider iconProvider, GlobalDragListener globalDragListener, Transitions transitions, - Lazy<DragToBubbleController> dragToBubbleControllerLazy, - @ShellMainThread ShellExecutor mainExecutor, - DesktopState desktopState) { - return new DragAndDropController( - context, - shellInit, - shellController, - shellCommandHandler, - shellTaskOrganizer, - displayController, - uiEventLogger, - iconProvider, - globalDragListener, - transitions, - dragToBubbleControllerLazy, - mainExecutor, - desktopState); - } - - @WMSingleton - @Provides - static DragToBubbleController getDragToBubbleController(Context context, - BubblePositioner bubblePositioner, BubbleController bubbleController) { - return new DragToBubbleController(context, bubblePositioner, bubbleController); + @ShellMainThread ShellExecutor mainExecutor) { + return new DragAndDropController(context, shellInit, shellController, shellCommandHandler, + displayController, uiEventLogger, iconProvider, globalDragListener, transitions, + mainExecutor); } // @@ -1872,51 +664,8 @@ public abstract class WMShellModule { @Provides static Object provideIndependentShellComponentsToCreate( DragAndDropController dragAndDropController, - @NonNull DelegateLetterboxTransitionObserver letterboxTransitionObserver, - @NonNull LetterboxCommandHandler letterboxCommandHandler, - @NonNull LetterboxTaskListenerAdapter letterboxTaskListenerAdapter, - @NonNull LetterboxCleanupAdapter letterboxCleanupAdapter, - Optional<DesktopTasksTransitionObserver> desktopTasksTransitionObserverOptional, - Optional<DesktopDisplayEventHandler> desktopDisplayEventHandler, - Optional<DesktopModeKeyGestureHandler> desktopModeKeyGestureHandler, - Optional<SystemModalsTransitionHandler> systemModalsTransitionHandler, - Optional<DisplayDisconnectTransitionHandler> displayDisconnectTransitionHandler, - Optional<DesktopImeHandler> desktopImeHandler, - ShellCrashHandler shellCrashHandler) { + Optional<DesktopTasksTransitionObserver> desktopTasksTransitionObserverOptional + ) { return new Object(); } - - @WMSingleton - @Provides - static OverviewToDesktopTransitionObserver provideOverviewToDesktopTransitionObserver( - Transitions transitions, ShellInit shellInit) { - return new OverviewToDesktopTransitionObserver(transitions, shellInit); - } - - @WMSingleton - @Provides - static UserProfileContexts provideUserProfilesContexts( - Context context, - ShellController shellController, - ShellInit shellInit) { - return new UserProfileContexts(context, shellController, shellInit); - } - - @WMSingleton - @Provides - static ShellCrashHandler provideShellCrashHandler( - ShellTaskOrganizer shellTaskOrganizer, - HomeIntentProvider homeIntentProvider, - DesktopState desktopState, - ShellInit shellInit) { - return new ShellCrashHandler(shellTaskOrganizer, homeIntentProvider, desktopState, - shellInit); - } - - @WMSingleton - @Provides - static HomeIntentProvider provideHomeIntentProvider(Context context) { - return new HomeIntentProvider(context); - } - } diff --git a/wmshell/src/com/android/wm/shell/dagger/pip/Pip1Module.java b/wmshell/src/com/android/wm/shell/dagger/pip/Pip1Module.java index 8431ee82d1..677fd5deff 100644 --- a/wmshell/src/com/android/wm/shell/dagger/pip/Pip1Module.java +++ b/wmshell/src/com/android/wm/shell/dagger/pip/Pip1Module.java @@ -19,7 +19,6 @@ package com.android.wm.shell.dagger.pip; import android.content.Context; import android.os.Handler; -import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.WindowManagerShellWrapper; import com.android.wm.shell.common.DisplayController; @@ -39,11 +38,12 @@ import com.android.wm.shell.common.pip.PipMediaController; import com.android.wm.shell.common.pip.PipPerfHintController; import com.android.wm.shell.common.pip.PipSnapAlgorithm; import com.android.wm.shell.common.pip.PipUiEventLogger; +import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.common.pip.SizeSpecSource; import com.android.wm.shell.dagger.WMShellBaseModule; import com.android.wm.shell.dagger.WMSingleton; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; import com.android.wm.shell.onehanded.OneHandedController; +import com.android.wm.shell.pip.Pip; import com.android.wm.shell.pip.PipAnimationController; import com.android.wm.shell.pip.PipParamsChangedForwarder; import com.android.wm.shell.pip.PipSurfaceTransactionHelper; @@ -79,7 +79,7 @@ import java.util.Optional; public abstract class Pip1Module { @WMSingleton @Provides - static Optional<PipController.PipImpl> providePip1(Context context, + static Optional<Pip> providePip1(Context context, ShellInit shellInit, ShellCommandHandler shellCommandHandler, ShellController shellController, @@ -103,18 +103,21 @@ public abstract class Pip1Module { DisplayInsetsController displayInsetsController, TabletopModeController pipTabletopController, Optional<OneHandedController> oneHandedController, - @ShellMainThread ShellExecutor mainExecutor, - @ShellMainThread Handler handler) { - return Optional.ofNullable(PipController.create( - context, shellInit, shellCommandHandler, shellController, - displayController, pipAnimationController, pipAppOpsListener, - pipBoundsAlgorithm, - pipKeepClearAlgorithm, pipBoundsState, pipDisplayLayoutState, - pipMotionHelper, pipMediaController, phonePipMenuController, pipTaskOrganizer, - pipTransitionState, pipTouchHandler, pipTransitionController, - windowManagerShellWrapper, taskStackListener, pipParamsChangedForwarder, - displayInsetsController, pipTabletopController, oneHandedController, - mainExecutor, handler)); + @ShellMainThread ShellExecutor mainExecutor) { + if (PipUtils.isPip2ExperimentEnabled()) { + return Optional.empty(); + } else { + return Optional.ofNullable(PipController.create( + context, shellInit, shellCommandHandler, shellController, + displayController, pipAnimationController, pipAppOpsListener, + pipBoundsAlgorithm, + pipKeepClearAlgorithm, pipBoundsState, pipDisplayLayoutState, + pipMotionHelper, pipMediaController, phonePipMenuController, pipTaskOrganizer, + pipTransitionState, pipTouchHandler, pipTransitionController, + windowManagerShellWrapper, taskStackListener, pipParamsChangedForwarder, + displayInsetsController, pipTabletopController, oneHandedController, + mainExecutor)); + } } // Handler is used by Icon.loadDrawableAsync @@ -123,15 +126,11 @@ public abstract class Pip1Module { static PhonePipMenuController providesPipPhoneMenuController(Context context, PipBoundsState pipBoundsState, PipMediaController pipMediaController, SystemWindows systemWindows, - DisplayController displayController, - DisplayInsetsController displayInsetsController, - PipDisplayLayoutState pipDisplayLayoutState, PipUiEventLogger pipUiEventLogger, @ShellMainThread ShellExecutor mainExecutor, @ShellMainThread Handler mainHandler) { return new PhonePipMenuController(context, pipBoundsState, pipMediaController, - systemWindows, displayController, displayInsetsController, pipDisplayLayoutState, - pipUiEventLogger, mainExecutor, mainHandler); + systemWindows, pipUiEventLogger, mainExecutor, mainHandler); } @WMSingleton @@ -163,7 +162,6 @@ public abstract class Pip1Module { @WMSingleton @Provides static PipTaskOrganizer providePipTaskOrganizer(Context context, - ShellInit shellInit, SyncTransactionQueue syncTransactionQueue, PipTransitionState pipTransitionState, PipBoundsState pipBoundsState, @@ -176,17 +174,14 @@ public abstract class Pip1Module { PipParamsChangedForwarder pipParamsChangedForwarder, Optional<SplitScreenController> splitScreenControllerOptional, Optional<PipPerfHintController> pipPerfHintControllerOptional, - Optional<DesktopUserRepositories> desktopUserRepositoriesOptional, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, DisplayController displayController, PipUiEventLogger pipUiEventLogger, ShellTaskOrganizer shellTaskOrganizer, @ShellMainThread ShellExecutor mainExecutor) { - return new PipTaskOrganizer(context, shellInit, + return new PipTaskOrganizer(context, syncTransactionQueue, pipTransitionState, pipBoundsState, pipDisplayLayoutState, pipBoundsAlgorithm, menuPhoneController, pipAnimationController, pipSurfaceTransactionHelper, pipTransitionController, pipParamsChangedForwarder, - splitScreenControllerOptional, pipPerfHintControllerOptional, - desktopUserRepositoriesOptional, rootTaskDisplayAreaOrganizer, displayController, + splitScreenControllerOptional, pipPerfHintControllerOptional, displayController, pipUiEventLogger, shellTaskOrganizer, mainExecutor); } @@ -206,16 +201,23 @@ public abstract class Pip1Module { homeTransitionObserver, splitScreenOptional); } + @WMSingleton + @Provides + static PipAppOpsListener providePipAppOpsListener(Context context, + PipTouchHandler pipTouchHandler, + @ShellMainThread ShellExecutor mainExecutor) { + return new PipAppOpsListener(context, pipTouchHandler.getMotionHelper(), mainExecutor); + } + @WMSingleton @Provides static PipMotionHelper providePipMotionHelper(Context context, - @ShellMainThread ShellExecutor mainExecutor, PipBoundsState pipBoundsState, PipTaskOrganizer pipTaskOrganizer, PhonePipMenuController menuController, PipSnapAlgorithm pipSnapAlgorithm, PipTransitionController pipTransitionController, FloatingContentCoordinator floatingContentCoordinator, Optional<PipPerfHintController> pipPerfHintControllerOptional) { - return new PipMotionHelper(context, mainExecutor, pipBoundsState, pipTaskOrganizer, + return new PipMotionHelper(context, pipBoundsState, pipTaskOrganizer, menuController, pipSnapAlgorithm, pipTransitionController, floatingContentCoordinator, pipPerfHintControllerOptional); } diff --git a/wmshell/src/com/android/wm/shell/dagger/pip/Pip2Module.java b/wmshell/src/com/android/wm/shell/dagger/pip/Pip2Module.java index 4b5b61d9df..6968317478 100644 --- a/wmshell/src/com/android/wm/shell/dagger/pip/Pip2Module.java +++ b/wmshell/src/com/android/wm/shell/dagger/pip/Pip2Module.java @@ -19,58 +19,38 @@ package com.android.wm.shell.dagger.pip; import android.annotation.NonNull; import android.content.Context; import android.os.Handler; -import android.window.DesktopExperienceFlags; -import com.android.internal.jank.InteractionJankMonitor; -import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.FloatingContentCoordinator; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SystemWindows; -import com.android.wm.shell.common.TabletopModeController; import com.android.wm.shell.common.TaskStackListenerImpl; -import com.android.wm.shell.common.pip.PhonePipKeepClearAlgorithm; -import com.android.wm.shell.common.pip.PipAppOpsListener; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; import com.android.wm.shell.common.pip.PipBoundsState; -import com.android.wm.shell.common.pip.PipDesktopState; import com.android.wm.shell.common.pip.PipDisplayLayoutState; import com.android.wm.shell.common.pip.PipMediaController; import com.android.wm.shell.common.pip.PipPerfHintController; import com.android.wm.shell.common.pip.PipSnapAlgorithm; import com.android.wm.shell.common.pip.PipUiEventLogger; +import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.common.pip.SizeSpecSource; import com.android.wm.shell.dagger.WMShellBaseModule; import com.android.wm.shell.dagger.WMSingleton; -import com.android.wm.shell.desktopmode.DesktopPipTransitionController; -import com.android.wm.shell.desktopmode.DesktopTasksController; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.desktopmode.DragToDesktopTransitionHandler; -import com.android.wm.shell.pip2.PipSurfaceTransactionHelper; import com.android.wm.shell.pip2.phone.PhonePipMenuController; import com.android.wm.shell.pip2.phone.PipController; -import com.android.wm.shell.pip2.phone.PipDisplayTransferHandler; -import com.android.wm.shell.pip2.phone.PipInteractionHandler; import com.android.wm.shell.pip2.phone.PipMotionHelper; import com.android.wm.shell.pip2.phone.PipScheduler; -import com.android.wm.shell.pip2.phone.PipTaskListener; import com.android.wm.shell.pip2.phone.PipTouchHandler; import com.android.wm.shell.pip2.phone.PipTransition; import com.android.wm.shell.pip2.phone.PipTransitionState; -import com.android.wm.shell.pip2.phone.PipUiStateChangeController; -import com.android.wm.shell.recents.RecentsTransitionHandler; import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.desktopmode.DesktopState; -import com.android.wm.shell.shared.pip.PipFlags; -import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; -import dagger.BindsOptionalOf; import dagger.Module; import dagger.Provides; @@ -85,38 +65,18 @@ public abstract class Pip2Module { @WMSingleton @Provides static PipTransition providePipTransition(Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, @NonNull ShellInit shellInit, @NonNull ShellTaskOrganizer shellTaskOrganizer, @NonNull Transitions transitions, PipBoundsState pipBoundsState, PipBoundsAlgorithm pipBoundsAlgorithm, - PipTaskListener pipTaskListener, + Optional<PipController> pipController, + PipTouchHandler pipTouchHandler, @NonNull PipScheduler pipScheduler, - @NonNull PipTransitionState pipStackListenerController, - @NonNull PipDisplayLayoutState pipDisplayLayoutState, - @NonNull PipUiStateChangeController pipUiStateChangeController, - DisplayController displayController, - Optional<SplitScreenController> splitScreenControllerOptional, - PipDesktopState pipDesktopState, - Optional<DesktopPipTransitionController> desktopPipTransitionController, - PipInteractionHandler pipInteractionHandler) { - return new PipTransition(context, pipSurfaceTransactionHelper, shellInit, - shellTaskOrganizer, transitions, - pipBoundsState, null, pipBoundsAlgorithm, pipTaskListener, - pipScheduler, pipStackListenerController, pipDisplayLayoutState, - pipUiStateChangeController, displayController, splitScreenControllerOptional, - pipDesktopState, desktopPipTransitionController, pipInteractionHandler); - } - - @WMSingleton - @Provides - static Optional<PipController.PipImpl> providePip2(Optional<PipController> pipController) { - if (pipController.isEmpty()) { - return Optional.empty(); - } else { - return Optional.ofNullable(pipController.get().getPipImpl()); - } + @NonNull PipTransitionState pipStackListenerController) { + return new PipTransition(context, shellInit, shellTaskOrganizer, transitions, + pipBoundsState, null, pipBoundsAlgorithm, pipScheduler, + pipStackListenerController); } @WMSingleton @@ -134,43 +94,25 @@ public abstract class Pip2Module { TaskStackListenerImpl taskStackListener, ShellTaskOrganizer shellTaskOrganizer, PipTransitionState pipTransitionState, - PipTouchHandler pipTouchHandler, - PipAppOpsListener pipAppOpsListener, - PhonePipMenuController pipMenuController, - PipUiEventLogger pipUiEventLogger, - PipMediaController pipMediaController, - TabletopModeController tabletopModeController, - PhonePipKeepClearAlgorithm pipKeepClearAlgorithm, - PipSurfaceTransactionHelper pipSurfaceTransactionHelper, @ShellMainThread ShellExecutor mainExecutor) { - if (!PipFlags.isPip2ExperimentEnabled()) { + if (!PipUtils.isPip2ExperimentEnabled()) { return Optional.empty(); } else { return Optional.ofNullable(PipController.create( context, shellInit, shellCommandHandler, shellController, displayController, displayInsetsController, pipBoundsState, pipBoundsAlgorithm, pipDisplayLayoutState, pipScheduler, taskStackListener, shellTaskOrganizer, - pipTransitionState, pipTouchHandler, pipAppOpsListener, pipMenuController, - pipUiEventLogger, pipMediaController, tabletopModeController, - pipKeepClearAlgorithm, pipSurfaceTransactionHelper, mainExecutor)); + pipTransitionState, mainExecutor)); } } @WMSingleton @Provides static PipScheduler providePipScheduler(Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, PipBoundsState pipBoundsState, @ShellMainThread ShellExecutor mainExecutor, - PipTransitionState pipTransitionState, - Optional<SplitScreenController> splitScreenControllerOptional, - Optional<DesktopPipTransitionController> desktopPipTransitionController, - PipDesktopState pipDesktopState, - DisplayController displayController, - PipDisplayLayoutState pipDisplayLayoutState) { - return new PipScheduler(context, pipSurfaceTransactionHelper, pipBoundsState, mainExecutor, - pipTransitionState, splitScreenControllerOptional, desktopPipTransitionController, - pipDesktopState, displayController, pipDisplayLayoutState); + PipTransitionState pipTransitionState) { + return new PipScheduler(context, pipBoundsState, mainExecutor, pipTransitionState); } @WMSingleton @@ -179,24 +121,16 @@ public abstract class Pip2Module { PipBoundsState pipBoundsState, PipMediaController pipMediaController, SystemWindows systemWindows, PipUiEventLogger pipUiEventLogger, - PipTaskListener pipTaskListener, - @NonNull PipTransitionState pipTransitionState, - @NonNull DisplayController displayController, - @NonNull DisplayInsetsController displayInsetsController, - @NonNull PipDisplayLayoutState pipDisplayLayoutState, @ShellMainThread ShellExecutor mainExecutor, @ShellMainThread Handler mainHandler) { return new PhonePipMenuController(context, pipBoundsState, pipMediaController, - systemWindows, pipUiEventLogger, pipTaskListener, pipTransitionState, - displayController, displayInsetsController, pipDisplayLayoutState, - mainExecutor, mainHandler); + systemWindows, pipUiEventLogger, mainExecutor, mainHandler); } @WMSingleton @Provides static PipTouchHandler providePipTouchHandler(Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, ShellInit shellInit, ShellCommandHandler shellCommandHandler, PhonePipMenuController menuPhoneController, @@ -205,35 +139,15 @@ public abstract class Pip2Module { @NonNull PipTransitionState pipTransitionState, @NonNull PipScheduler pipScheduler, @NonNull SizeSpecSource sizeSpecSource, - @NonNull PipDisplayLayoutState pipDisplayLayoutState, - PipDesktopState pipDesktopState, - DisplayController displayController, PipMotionHelper pipMotionHelper, FloatingContentCoordinator floatingContentCoordinator, PipUiEventLogger pipUiEventLogger, @ShellMainThread ShellExecutor mainExecutor, - Optional<PipPerfHintController> pipPerfHintControllerOptional, - PipDisplayTransferHandler pipDisplayTransferHandler) { - return new PipTouchHandler(context, pipSurfaceTransactionHelper, shellInit, - shellCommandHandler, menuPhoneController, + Optional<PipPerfHintController> pipPerfHintControllerOptional) { + return new PipTouchHandler(context, shellInit, shellCommandHandler, menuPhoneController, pipBoundsAlgorithm, pipBoundsState, pipTransitionState, pipScheduler, - sizeSpecSource, pipDisplayLayoutState, pipDesktopState, displayController, - pipMotionHelper, floatingContentCoordinator, pipUiEventLogger, mainExecutor, - pipPerfHintControllerOptional, pipDisplayTransferHandler); - } - - @WMSingleton - @Provides - static PipDisplayTransferHandler providePipDisplayTransferHandler(Context context, - PipTransitionState pipTransitionState, - PipScheduler pipScheduler, RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - PipBoundsState pipBoundsState, DisplayController displayController, - PipDisplayLayoutState pipDisplayLayoutState, PipBoundsAlgorithm pipBoundsAlgorithm, - PipSurfaceTransactionHelper pipSurfaceTransactionHelper - ) { - return new PipDisplayTransferHandler(context, pipTransitionState, pipScheduler, - rootTaskDisplayAreaOrganizer, pipBoundsState, displayController, - pipDisplayLayoutState, pipBoundsAlgorithm, pipSurfaceTransactionHelper); + sizeSpecSource, pipMotionHelper, floatingContentCoordinator, pipUiEventLogger, + mainExecutor, pipPerfHintControllerOptional); } @WMSingleton @@ -244,92 +158,16 @@ public abstract class Pip2Module { FloatingContentCoordinator floatingContentCoordinator, PipScheduler pipScheduler, Optional<PipPerfHintController> pipPerfHintControllerOptional, - PipTransitionState pipTransitionState, - PipSurfaceTransactionHelper pipSurfaceTransactionHelper, - PipUiEventLogger pipUiEventLogger, PipDisplayLayoutState pipDisplayLayoutState) { + PipBoundsAlgorithm pipBoundsAlgorithm, + PipTransitionState pipTransitionState) { return new PipMotionHelper(context, pipBoundsState, menuController, pipSnapAlgorithm, floatingContentCoordinator, pipScheduler, pipPerfHintControllerOptional, - pipTransitionState, pipSurfaceTransactionHelper, pipUiEventLogger, - pipDisplayLayoutState); + pipBoundsAlgorithm, pipTransitionState); } @WMSingleton @Provides - static PipTransitionState providePipTransitionState(@ShellMainThread Handler handler, - PipDesktopState pipDesktopState) { - return new PipTransitionState(handler, pipDesktopState); - } - - @WMSingleton - @Provides - static PipUiStateChangeController providePipUiStateChangeController( - PipTransitionState pipTransitionState) { - return new PipUiStateChangeController(pipTransitionState); - } - - @WMSingleton - @Provides - static PipTaskListener providePipTaskListener(Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, - ShellTaskOrganizer shellTaskOrganizer, - PipTransitionState pipTransitionState, - PipScheduler pipScheduler, - PipBoundsState pipBoundsState, - PipBoundsAlgorithm pipBoundsAlgorithm, - @ShellMainThread ShellExecutor mainExecutor) { - return new PipTaskListener(context, pipSurfaceTransactionHelper, shellTaskOrganizer, - pipTransitionState, pipScheduler, pipBoundsState, pipBoundsAlgorithm, mainExecutor); - } - - @WMSingleton - @Provides - static PipDesktopState providePipDesktopState( - PipDisplayLayoutState pipDisplayLayoutState, - RecentsTransitionHandler recentsTransitionHandler, - Optional<DesktopUserRepositories> desktopUserRepositoriesOptional, - Optional<DragToDesktopTransitionHandler> dragToDesktopTransitionHandlerOptional, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer - ) { - return new PipDesktopState(pipDisplayLayoutState, recentsTransitionHandler, - desktopUserRepositoriesOptional, dragToDesktopTransitionHandlerOptional, - rootTaskDisplayAreaOrganizer); - } - - @WMSingleton - @Provides - static Optional<DesktopPipTransitionController> provideDesktopPipTransitionController( - Context context, ShellTaskOrganizer shellTaskOrganizer, - Optional<DesktopTasksController> desktopTasksControllerOptional, - Optional<DesktopUserRepositories> desktopUserRepositoriesOptional, - PipDesktopState pipDesktopState, DesktopState desktopState - ) { - if (desktopState.canEnterDesktopMode() - && DesktopExperienceFlags.ENABLE_DESKTOP_WINDOWING_PIP.isTrue()) { - return Optional.of( - new DesktopPipTransitionController(shellTaskOrganizer, - desktopTasksControllerOptional.get(), - desktopUserRepositoriesOptional.get(), pipDesktopState)); - } - return Optional.empty(); - } - - @BindsOptionalOf - abstract DragToDesktopTransitionHandler optionalDragToDesktopTransitionHandler(); - - @WMSingleton - @Provides - static PipInteractionHandler providePipInteractionHandler( - Context context, - @ShellMainThread Handler mainHandler - ) { - return new PipInteractionHandler(context, mainHandler, - InteractionJankMonitor.getInstance()); - } - - @WMSingleton - @Provides - static PipSurfaceTransactionHelper providePipSurfaceTransactionHelper(Context context, - @NonNull ShellInit shellInit, PipDisplayLayoutState pipDisplayLayoutState) { - return new PipSurfaceTransactionHelper(context, shellInit, pipDisplayLayoutState); + static PipTransitionState providePipTransitionState(@ShellMainThread Handler handler) { + return new PipTransitionState(handler); } } diff --git a/wmshell/src/com/android/wm/shell/dagger/pip/PipModule.java b/wmshell/src/com/android/wm/shell/dagger/pip/PipModule.java index d805149ef4..f2631eff89 100644 --- a/wmshell/src/com/android/wm/shell/dagger/pip/PipModule.java +++ b/wmshell/src/com/android/wm/shell/dagger/pip/PipModule.java @@ -16,18 +16,14 @@ package com.android.wm.shell.dagger.pip; +import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.dagger.WMSingleton; -import com.android.wm.shell.pip.Pip; import com.android.wm.shell.pip.PipTransitionController; -import com.android.wm.shell.pip2.phone.PipController; import com.android.wm.shell.pip2.phone.PipTransition; -import com.android.wm.shell.shared.pip.PipFlags; import dagger.Module; import dagger.Provides; -import java.util.Optional; - /** * Provides dependencies for external components / modules reference PiP and extracts away the * selection of legacy and new PiP implementation. @@ -42,23 +38,10 @@ public abstract class PipModule { static PipTransitionController providePipTransitionController( com.android.wm.shell.pip.PipTransition legacyPipTransition, PipTransition newPipTransition) { - if (PipFlags.isPip2ExperimentEnabled()) { + if (PipUtils.isPip2ExperimentEnabled()) { return newPipTransition; } else { return legacyPipTransition; } } - - @WMSingleton - @Provides - static Optional<Pip> providePip( - Optional<com.android.wm.shell.pip.phone.PipController.PipImpl> pip1, - Optional<PipController.PipImpl> pip2) { - if (PipFlags.isPip2ExperimentEnabled()) { - return Optional.ofNullable(pip2.orElse(null)); - - } else { - return Optional.ofNullable(pip1.orElse(null)); - } - } } diff --git a/wmshell/src/com/android/wm/shell/dagger/pip/TvPipModule.java b/wmshell/src/com/android/wm/shell/dagger/pip/TvPipModule.java index e383c8d472..8d1b15c1e6 100644 --- a/wmshell/src/com/android/wm/shell/dagger/pip/TvPipModule.java +++ b/wmshell/src/com/android/wm/shell/dagger/pip/TvPipModule.java @@ -22,7 +22,6 @@ import android.os.SystemClock; import androidx.annotation.NonNull; -import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.WindowManagerShellWrapper; import com.android.wm.shell.common.DisplayController; @@ -203,7 +202,6 @@ public abstract class TvPipModule { @WMSingleton @Provides static PipTaskOrganizer providePipTaskOrganizer(Context context, - ShellInit shellInit, TvPipMenuController tvPipMenuController, SyncTransactionQueue syncTransactionQueue, TvPipBoundsState tvPipBoundsState, @@ -216,17 +214,15 @@ public abstract class TvPipModule { PipSurfaceTransactionHelper pipSurfaceTransactionHelper, Optional<SplitScreenController> splitScreenControllerOptional, Optional<PipPerfHintController> pipPerfHintControllerOptional, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, DisplayController displayController, PipUiEventLogger pipUiEventLogger, ShellTaskOrganizer shellTaskOrganizer, @ShellMainThread ShellExecutor mainExecutor) { - return new TvPipTaskOrganizer(context, shellInit, + return new TvPipTaskOrganizer(context, syncTransactionQueue, pipTransitionState, tvPipBoundsState, pipDisplayLayoutState, tvPipBoundsAlgorithm, tvPipMenuController, pipAnimationController, pipSurfaceTransactionHelper, tvPipTransition, pipParamsChangedForwarder, - splitScreenControllerOptional, pipPerfHintControllerOptional, - rootTaskDisplayAreaOrganizer, displayController, pipUiEventLogger, - shellTaskOrganizer, mainExecutor); + splitScreenControllerOptional, pipPerfHintControllerOptional, displayController, + pipUiEventLogger, shellTaskOrganizer, mainExecutor); } @WMSingleton @@ -234,4 +230,12 @@ public abstract class TvPipModule { static PipParamsChangedForwarder providePipParamsChangedForwarder() { return new PipParamsChangedForwarder(); } + + @WMSingleton + @Provides + static PipAppOpsListener providePipAppOpsListener(Context context, + PipTaskOrganizer pipTaskOrganizer, + @ShellMainThread ShellExecutor mainExecutor) { + return new PipAppOpsListener(context, pipTaskOrganizer::removePip, mainExecutor); + } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopMode.java b/wmshell/src/com/android/wm/shell/desktopmode/DesktopMode.java index 0817e7d009..7724c728a5 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopMode.java +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopMode.java @@ -16,12 +16,10 @@ package com.android.wm.shell.desktopmode; -import android.annotation.NonNull; import android.graphics.Region; -import com.android.wm.shell.shared.annotations.ExternalThread; -import com.android.wm.shell.shared.desktopmode.DesktopFirstListener; import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource; +import com.android.wm.shell.shared.annotations.ExternalThread; import java.util.concurrent.Executor; import java.util.function.Consumer; @@ -38,7 +36,7 @@ public interface DesktopMode { * @param listener the listener to add. * @param callbackExecutor the executor to call the listener on. */ - void addVisibleTasksListener(DesktopRepository.VisibleTasksListener listener, + void addVisibleTasksListener(DesktopModeTaskRepository.VisibleTasksListener listener, Executor callbackExecutor); /** @@ -59,15 +57,4 @@ public interface DesktopMode { /** Called when requested to go to split screen from the current focused desktop app. */ void moveFocusedTaskToStageSplit(int displayId, boolean leftOrTop); - - /** - * Register a listener that will receive callbacks about desktop-first state. Once it's - * registered, the listener immediately receives the current state. - */ - void registerDesktopFirstListener(@NonNull DesktopFirstListener listener); - - /** - * Unregister a registered desktop-first listener - */ - void unregisterDesktopFirstListener(@NonNull DesktopFirstListener listener); } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeEventLogger.kt b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeEventLogger.kt index e1ff0b367a..9192e6ed31 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeEventLogger.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeEventLogger.kt @@ -16,314 +16,67 @@ package com.android.wm.shell.desktopmode -import android.app.ActivityManager.RunningTaskInfo -import android.util.Size -import android.view.InputDevice.SOURCE_MOUSE -import android.view.InputDevice.SOURCE_TOUCHSCREEN -import android.view.MotionEvent -import android.view.MotionEvent.TOOL_TYPE_FINGER -import android.view.MotionEvent.TOOL_TYPE_MOUSE -import android.view.MotionEvent.TOOL_TYPE_STYLUS -import android.window.DesktopModeFlags -import com.android.internal.annotations.VisibleForTesting -import com.android.internal.protolog.ProtoLog import com.android.internal.util.FrameworkStatsLog -import com.android.wm.shell.EventLogTags -import com.android.wm.shell.common.DisplayController -import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE -import java.security.SecureRandom -import java.util.Random -import java.util.concurrent.atomic.AtomicInteger +import com.android.wm.shell.protolog.ShellProtoLogGroup +import com.android.wm.shell.util.KtProtoLog /** Event logger for logging desktop mode session events */ class DesktopModeEventLogger { - private val random: Random = SecureRandom() - - /** The session id for the current desktop mode session */ - @VisibleForTesting val currentSessionId: AtomicInteger = AtomicInteger(NO_SESSION_ID) - - private fun generateSessionId() = 1 + random.nextInt(1 shl 20) - - /** Logs enter into desktop mode with [enterReason] */ - fun logSessionEnter(enterReason: EnterReason) { - val sessionId = generateSessionId() - val previousSessionId = currentSessionId.getAndSet(sessionId) - if (previousSessionId != NO_SESSION_ID) { - ProtoLog.w( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: Existing desktop mode session id: %s found on desktop " + - "mode enter", - previousSessionId, - ) - } - - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, + /** + * Logs the enter of desktop mode having session id [sessionId] and the reason [enterReason] for + * entering desktop mode + */ + fun logSessionEnter(sessionId: Int, enterReason: EnterReason) { + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, "DesktopModeLogger: Logging session enter, session: %s reason: %s", sessionId, - enterReason.name, + enterReason.name ) FrameworkStatsLog.write( DESKTOP_MODE_ATOM_ID, /* event */ FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EVENT__ENTER, /* enterReason */ enterReason.reason, /* exitReason */ 0, - /* session_id */ sessionId, + /* session_id */ sessionId ) - EventLogTags.writeWmShellEnterDesktopMode(enterReason.reason, sessionId) } - /** Logs exit from desktop mode session with [exitReason] */ - fun logSessionExit(exitReason: ExitReason) { - val sessionId = currentSessionId.getAndSet(NO_SESSION_ID) - if (sessionId == NO_SESSION_ID) { - ProtoLog.w( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: No session id found for logging exit from desktop mode", - ) - return - } - - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, + /** + * Logs the exit of desktop mode having session id [sessionId] and the reason [exitReason] for + * exiting desktop mode + */ + fun logSessionExit(sessionId: Int, exitReason: ExitReason) { + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, "DesktopModeLogger: Logging session exit, session: %s reason: %s", sessionId, - exitReason.name, + exitReason.name ) FrameworkStatsLog.write( DESKTOP_MODE_ATOM_ID, /* event */ FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EVENT__EXIT, /* enterReason */ 0, /* exitReason */ exitReason.reason, - /* session_id */ sessionId, + /* session_id */ sessionId ) - EventLogTags.writeWmShellExitDesktopMode(exitReason.reason, sessionId) } - /** Logs that a task with [taskUpdate] was added in a desktop mode session */ - fun logTaskAdded(taskUpdate: TaskUpdate) { - val sessionId = currentSessionId.get() - if (sessionId == NO_SESSION_ID) { - ProtoLog.w( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: No session id found for logging task added", - ) - return - } - - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, + /** + * Logs that the task with update [taskUpdate] was added in the desktop mode session having + * session id [sessionId] + */ + fun logTaskAdded(sessionId: Int, taskUpdate: TaskUpdate) { + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, "DesktopModeLogger: Logging task added, session: %s taskId: %s", sessionId, - taskUpdate.instanceId, + taskUpdate.instanceId ) - logTaskUpdate( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_ADDED, - sessionId, - taskUpdate, - ) - } - - /** Logs that a task with [taskUpdate] was removed from a desktop mode session */ - fun logTaskRemoved(taskUpdate: TaskUpdate) { - val sessionId = currentSessionId.get() - if (sessionId == NO_SESSION_ID) { - ProtoLog.w( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: No session id found for logging task removed", - ) - return - } - - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: Logging task remove, session: %s taskId: %s", - sessionId, - taskUpdate.instanceId, - ) - logTaskUpdate( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_REMOVED, - sessionId, - taskUpdate, - ) - } - - /** Logs that a task with [taskUpdate] had it's info changed in a desktop mode session */ - fun logTaskInfoChanged(taskUpdate: TaskUpdate) { - val sessionId = currentSessionId.get() - if (sessionId == NO_SESSION_ID) { - ProtoLog.w( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: No session id found for logging task info changed", - ) - return - } - - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: Logging task info changed, session: %s taskId: %s", - sessionId, - taskUpdate.instanceId, - ) - logTaskUpdate( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED, - sessionId, - taskUpdate, - ) - } - - /** - * Logs that a task resize event is starting with [taskSizeUpdate] within a Desktop mode - * session. - */ - fun logTaskResizingStarted( - resizeTrigger: ResizeTrigger, - inputMethod: InputMethod, - taskInfo: RunningTaskInfo, - taskWidth: Int? = null, - taskHeight: Int? = null, - displayController: DisplayController? = null, - displayLayoutSize: Size? = null, - ) { - if (!DesktopModeFlags.ENABLE_RESIZING_METRICS.isTrue) return - - val sessionId = currentSessionId.get() - if (sessionId == NO_SESSION_ID) { - ProtoLog.w( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: No session id found for logging start of task resizing", - ) - return - } - - val taskSizeUpdate = - createTaskSizeUpdate( - resizeTrigger, - inputMethod, - taskInfo, - taskWidth, - taskHeight, - displayController = displayController, - displayLayoutSize = displayLayoutSize, - ) - - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: Logging task resize is starting, session: %s, taskSizeUpdate: %s", - sessionId, - taskSizeUpdate, - ) - logTaskSizeUpdated( - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZING_STAGE__START_RESIZING_STAGE, - sessionId, - taskSizeUpdate, - ) - } - - /** - * Logs that a task resize event is ending with [taskSizeUpdate] within a Desktop mode session. - */ - fun logTaskResizingEnded( - resizeTrigger: ResizeTrigger, - inputMethod: InputMethod, - taskInfo: RunningTaskInfo, - taskWidth: Int? = null, - taskHeight: Int? = null, - displayController: DisplayController? = null, - displayLayoutSize: Size? = null, - ) { - if (!DesktopModeFlags.ENABLE_RESIZING_METRICS.isTrue) return - - val sessionId = currentSessionId.get() - if (sessionId == NO_SESSION_ID) { - ProtoLog.w( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: No session id found for logging end of task resizing", - ) - return - } - - val taskSizeUpdate = - createTaskSizeUpdate( - resizeTrigger, - inputMethod, - taskInfo, - taskWidth, - taskHeight, - displayController, - displayLayoutSize, - ) - - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: Logging task resize is ending, session: %s, taskSizeUpdate: %s", - sessionId, - taskSizeUpdate, - ) - - logTaskSizeUpdated( - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZING_STAGE__END_RESIZING_STAGE, - sessionId, - taskSizeUpdate, - ) - } - - private fun createTaskSizeUpdate( - resizeTrigger: ResizeTrigger, - inputMethod: InputMethod, - taskInfo: RunningTaskInfo, - taskWidth: Int? = null, - taskHeight: Int? = null, - displayController: DisplayController? = null, - displayLayoutSize: Size? = null, - ): TaskSizeUpdate { - val taskBounds = taskInfo.configuration.windowConfiguration.bounds - - val height = taskHeight ?: taskBounds.height() - val width = taskWidth ?: taskBounds.width() - - val displaySize = - when { - displayLayoutSize != null -> displayLayoutSize.height * displayLayoutSize.width - displayController != null -> - displayController.getDisplayLayout(taskInfo.displayId)?.let { - it.height() * it.width() - } - else -> null - } - - return TaskSizeUpdate( - resizeTrigger, - inputMethod, - taskInfo.taskId, - taskInfo.effectiveUid, - height, - width, - displaySize, - ) - } - - fun logTaskInfoStateInit() { - logTaskUpdate( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INIT_STATSD, - sessionId = 0, - TaskUpdate( - visibleTaskCount = 0, - instanceId = 0, - uid = 0, - taskHeight = 0, - taskWidth = 0, - taskX = 0, - taskY = 0, - ), - ) - } - - private fun logTaskUpdate(taskEvent: Int, sessionId: Int, taskUpdate: TaskUpdate) { FrameworkStatsLog.write( DESKTOP_MODE_TASK_UPDATE_ATOM_ID, /* task_event */ - taskEvent, + FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_ADDED, /* instance_id */ taskUpdate.instanceId, /* uid */ @@ -337,193 +90,84 @@ class DesktopModeEventLogger { /* task_y */ taskUpdate.taskY, /* session_id */ - sessionId, - taskUpdate.minimizeReason?.reason ?: UNSET_MINIMIZE_REASON, - taskUpdate.unminimizeReason?.reason ?: UNSET_UNMINIMIZE_REASON, - /* visible_task_count */ - taskUpdate.visibleTaskCount, - taskUpdate.focusReason?.reason ?: UNSET_FOCUS_REASON, - ) - EventLogTags.writeWmShellDesktopModeTaskUpdate( - /* task_event */ - taskEvent, - /* instance_id */ - taskUpdate.instanceId, - /* uid */ - taskUpdate.uid, - /* task_height */ - taskUpdate.taskHeight, - /* task_width */ - taskUpdate.taskWidth, - /* task_x */ - taskUpdate.taskX, - /* task_y */ - taskUpdate.taskY, - /* session_id */ - sessionId, - taskUpdate.minimizeReason?.reason ?: UNSET_MINIMIZE_REASON, - taskUpdate.unminimizeReason?.reason ?: UNSET_UNMINIMIZE_REASON, - /* visible_task_count */ - taskUpdate.visibleTaskCount, - taskUpdate.focusReason?.reason ?: UNSET_FOCUS_REASON, + sessionId ) } - private fun logTaskSizeUpdated( - resizingStage: Int, - sessionId: Int, - taskSizeUpdate: TaskSizeUpdate, - ) { - FrameworkStatsLog.write( - DESKTOP_MODE_TASK_SIZE_UPDATED_ATOM_ID, - /* resize_trigger */ - taskSizeUpdate.resizeTrigger?.trigger ?: ResizeTrigger.UNKNOWN_RESIZE_TRIGGER.trigger, - /* resizing_stage */ - resizingStage, - /* input_method */ - taskSizeUpdate.inputMethod?.method ?: InputMethod.UNKNOWN_INPUT_METHOD.method, - /* desktop_mode_session_id */ + /** + * Logs that the task with update [taskUpdate] was removed in the desktop mode session having + * session id [sessionId] + */ + fun logTaskRemoved(sessionId: Int, taskUpdate: TaskUpdate) { + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "DesktopModeLogger: Logging task remove, session: %s taskId: %s", sessionId, + taskUpdate.instanceId + ) + FrameworkStatsLog.write( + DESKTOP_MODE_TASK_UPDATE_ATOM_ID, + /* task_event */ + FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_REMOVED, /* instance_id */ - taskSizeUpdate.instanceId, + taskUpdate.instanceId, /* uid */ - taskSizeUpdate.uid, + taskUpdate.uid, /* task_height */ - taskSizeUpdate.taskHeight, + taskUpdate.taskHeight, /* task_width */ - taskSizeUpdate.taskWidth, - /* display_area */ - taskSizeUpdate.displayArea ?: -1, + taskUpdate.taskWidth, + /* task_x */ + taskUpdate.taskX, + /* task_y */ + taskUpdate.taskY, + /* session_id */ + sessionId + ) + } + + /** + * Logs that the task with update [taskUpdate] had it's info changed in the desktop mode session + * having session id [sessionId] + */ + fun logTaskInfoChanged(sessionId: Int, taskUpdate: TaskUpdate) { + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "DesktopModeLogger: Logging task info changed, session: %s taskId: %s", + sessionId, + taskUpdate.instanceId + ) + FrameworkStatsLog.write( + DESKTOP_MODE_TASK_UPDATE_ATOM_ID, + /* task_event */ + FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED, + /* instance_id */ + taskUpdate.instanceId, + /* uid */ + taskUpdate.uid, + /* task_height */ + taskUpdate.taskHeight, + /* task_width */ + taskUpdate.taskWidth, + /* task_x */ + taskUpdate.taskX, + /* task_y */ + taskUpdate.taskY, + /* session_id */ + sessionId ) } companion object { - - /** - * Describes a task position and dimensions. - * - * @property instanceId instance id of the task - * @property uid uid of the app associated with the task - * @property taskHeight height of the task in px - * @property taskWidth width of the task in px - * @property taskX x-coordinate of the top-left corner - * @property taskY y-coordinate of the top-left corner - * @property minimizeReason the reason the task was minimized - * @property unminimizeReason the reason the task was unminimized - * @property visibleTaskCount the number of visible tasks after this update - * @property focusReason the reason the task was focused - */ data class TaskUpdate( val instanceId: Int, val uid: Int, - val taskHeight: Int, - val taskWidth: Int, - val taskX: Int, - val taskY: Int, - val minimizeReason: MinimizeReason? = null, - val unminimizeReason: UnminimizeReason? = null, - val visibleTaskCount: Int, - val focusReason: FocusReason? = null, + val taskHeight: Int = Int.MIN_VALUE, + val taskWidth: Int = Int.MIN_VALUE, + val taskX: Int = Int.MIN_VALUE, + val taskY: Int = Int.MIN_VALUE, ) - /** - * Describes a task size update (resizing, snapping or maximizing to stable bounds). - * - * @property resizeTrigger the trigger for task resize - * @property inputMethod the input method for resizing this task - * @property instanceId instance id of the task - * @property uid uid of the app associated with the task - * @property taskHeight height of the task in dp - * @property taskWidth width of the task in dp - * @property displayArea the display size of the screen in dp - */ - data class TaskSizeUpdate( - val resizeTrigger: ResizeTrigger? = null, - val inputMethod: InputMethod? = null, - val instanceId: Int, - val uid: Int, - val taskHeight: Int, - val taskWidth: Int, - val displayArea: Int?, - ) - - @JvmStatic - fun getInputMethodFromMotionEvent(e: MotionEvent?): InputMethod { - if (e == null) return InputMethod.UNKNOWN_INPUT_METHOD - - val toolType = e.getToolType(e.findPointerIndex(e.getPointerId(0))) - return when { - toolType == TOOL_TYPE_STYLUS -> InputMethod.STYLUS - toolType == TOOL_TYPE_MOUSE -> InputMethod.MOUSE - toolType == TOOL_TYPE_FINGER && e.source == SOURCE_MOUSE -> InputMethod.TOUCHPAD - toolType == TOOL_TYPE_FINGER && e.source == SOURCE_TOUCHSCREEN -> InputMethod.TOUCH - else -> InputMethod.UNKNOWN_INPUT_METHOD - } - } - - // Default value used when the task was not minimized. - @VisibleForTesting - const val UNSET_MINIMIZE_REASON = - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__MINIMIZE_REASON__UNSET_MINIMIZE - - /** The reason a task was minimized. */ - enum class MinimizeReason(val reason: Int) { - TASK_LIMIT( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__MINIMIZE_REASON__MINIMIZE_TASK_LIMIT - ), - MINIMIZE_BUTTON( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__MINIMIZE_REASON__MINIMIZE_BUTTON - ), - KEY_GESTURE( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__MINIMIZE_REASON__MINIMIZE_KEY_GESTURE - ), - } - - // Default value used when the task was not unminimized. - @VisibleForTesting - const val UNSET_UNMINIMIZE_REASON = - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__UNMINIMIZE_REASON__UNSET_UNMINIMIZE - - /** The reason a task was unminimized. */ - enum class UnminimizeReason(val reason: Int) { - UNKNOWN( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__UNMINIMIZE_REASON__UNMINIMIZE_UNKNOWN - ), - TASKBAR_TAP( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__UNMINIMIZE_REASON__UNMINIMIZE_TASKBAR_TAP - ), - ALT_TAB( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__UNMINIMIZE_REASON__UNMINIMIZE_ALT_TAB - ), - TASK_LAUNCH( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__UNMINIMIZE_REASON__UNMINIMIZE_TASK_LAUNCH - ), - APP_HANDLE_MENU_BUTTON( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__UNMINIMIZE_REASON__UNMINIMIZE_APP_HANDLE_MENU_BUTTON - ), - TASKBAR_MANAGE_WINDOW( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__UNMINIMIZE_REASON__UNMINIMIZE_TASKBAR_MANAGE_WINDOW - ), - } - - // Default value used when the task was not unminimized. - @VisibleForTesting - const val UNSET_FOCUS_REASON = - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__FOCUS_REASON__UNSET_FOCUS - - /** The reason a task was unminimized. */ - enum class FocusReason(val reason: Int) { - UNKNOWN(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__FOCUS_REASON__FOCUS_UNKNOWN) - } - /** * Enum EnterReason mapped to the EnterReason definition in * stats/atoms/desktopmode/desktopmode_extensions_atoms.proto @@ -566,104 +210,11 @@ class DesktopModeEventLogger { FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EXIT_REASON__RETURN_HOME_OR_OVERVIEW ), TASK_FINISHED(FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EXIT_REASON__TASK_FINISHED), - SCREEN_OFF(FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EXIT_REASON__SCREEN_OFF), - TASK_MINIMIZED(FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EXIT_REASON__TASK_MINIMIZED), - TASK_MOVED_TO_BACK( - FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EXIT_REASON__TASK_MOVED_TO_BACK - ), - } - - /** - * Enum ResizeTrigger mapped to the ResizeTrigger definition in - * stats/atoms/desktopmode/desktopmode_extensions_atoms.proto - */ - enum class ResizeTrigger(val trigger: Int) { - UNKNOWN_RESIZE_TRIGGER( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__UNKNOWN_RESIZE_TRIGGER - ), - CORNER( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__CORNER_RESIZE_TRIGGER - ), - EDGE( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__EDGE_RESIZE_TRIGGER - ), - TILING_DIVIDER( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__TILING_DIVIDER_RESIZE_TRIGGER - ), - MAXIMIZE_BUTTON( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__MAXIMIZE_BUTTON_RESIZE_TRIGGER - ), - DOUBLE_TAP_APP_HEADER( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__DOUBLE_TAP_APP_HEADER_RESIZE_TRIGGER - ), - DRAG_LEFT( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__DRAG_LEFT_RESIZE_TRIGGER - ), - DRAG_RIGHT( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__DRAG_RIGHT_RESIZE_TRIGGER - ), - SNAP_LEFT_MENU( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__SNAP_LEFT_MENU_RESIZE_TRIGGER - ), - SNAP_RIGHT_MENU( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__SNAP_RIGHT_MENU_RESIZE_TRIGGER - ), - MAXIMIZE_MENU( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__MAXIMIZE_MENU_RESIZE_TRIGGER - ), - DRAG_TO_TOP_RESIZE_TRIGGER( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__DRAG_TO_TOP_RESIZE_TRIGGER - ), - } - - /** - * Enum InputMethod mapped to the InputMethod definition in - * stats/atoms/desktopmode/desktopmode_extensions_atoms.proto - */ - enum class InputMethod(val method: Int) { - UNKNOWN_INPUT_METHOD( - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__INPUT_METHOD__UNKNOWN_INPUT_METHOD - ), - TOUCH( - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__INPUT_METHOD__TOUCH_INPUT_METHOD - ), - STYLUS( - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__INPUT_METHOD__STYLUS_INPUT_METHOD - ), - MOUSE( - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__INPUT_METHOD__MOUSE_INPUT_METHOD - ), - TOUCHPAD( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__INPUT_METHOD__TOUCHPAD_INPUT_METHOD - ), - KEYBOARD( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__INPUT_METHOD__KEYBOARD_INPUT_METHOD - ), - ACCESSIBILITY( - FrameworkStatsLog - .DESKTOP_MODE_TASK_SIZE_UPDATED__INPUT_METHOD__ACCESSIBILITY_INPUT_METHOD - ), + SCREEN_OFF(FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EXIT_REASON__SCREEN_OFF) } private const val DESKTOP_MODE_ATOM_ID = FrameworkStatsLog.DESKTOP_MODE_UI_CHANGED private const val DESKTOP_MODE_TASK_UPDATE_ATOM_ID = FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE - private const val DESKTOP_MODE_TASK_SIZE_UPDATED_ATOM_ID = - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED - @VisibleForTesting const val NO_SESSION_ID = 0 } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserver.kt b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserver.kt index 9f0d4161eb..641952b28b 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserver.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserver.kt @@ -20,15 +20,12 @@ import android.app.ActivityManager.RunningTaskInfo import android.app.ActivityTaskManager.INVALID_TASK_ID import android.app.TaskInfo import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM +import android.content.Context import android.os.IBinder -import android.os.SystemProperties -import android.os.Trace import android.util.SparseArray import android.view.SurfaceControl import android.view.WindowManager -import android.view.WindowManager.TRANSIT_OPEN import android.window.TransitionInfo -import android.window.TransitionInfo.FLAG_MOVED_TO_TOP import androidx.annotation.VisibleForTesting import androidx.core.util.containsKey import androidx.core.util.forEach @@ -36,15 +33,12 @@ import androidx.core.util.isEmpty import androidx.core.util.isNotEmpty import androidx.core.util.plus import androidx.core.util.putAll -import com.android.internal.protolog.ProtoLog +import com.android.internal.logging.InstanceId +import com.android.internal.logging.InstanceIdSequence +import com.android.internal.protolog.common.ProtoLog import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.EnterReason import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.ExitReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.FocusReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.MinimizeReason import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.TaskUpdate -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UnminimizeReason -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_TASK_LIMIT_MINIMIZE import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_KEYBOARD_SHORTCUT @@ -52,12 +46,11 @@ import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_ import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_DESKTOP_MODE_KEYBOARD_SHORTCUT import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_DESKTOP_MODE_TASK_DRAG import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE +import com.android.wm.shell.shared.DesktopModeStatus import com.android.wm.shell.shared.TransitionUtil -import com.android.wm.shell.shared.desktopmode.DesktopState import com.android.wm.shell.sysui.ShellInit import com.android.wm.shell.transition.Transitions -import java.util.Optional -import kotlin.jvm.optionals.getOrNull +import com.android.wm.shell.util.KtProtoLog /** * A [Transitions.TransitionObserver] that observes transitions and the proposed changes to log @@ -65,15 +58,18 @@ import kotlin.jvm.optionals.getOrNull * and other transitions that originate both within and outside shell. */ class DesktopModeLoggerTransitionObserver( + context: Context, shellInit: ShellInit, private val transitions: Transitions, - private val desktopModeEventLogger: DesktopModeEventLogger, - private val desktopTasksLimiter: Optional<DesktopTasksLimiter>, - desktopState: DesktopState, + private val desktopModeEventLogger: DesktopModeEventLogger ) : Transitions.TransitionObserver { + private val idSequence: InstanceIdSequence by lazy { InstanceIdSequence(Int.MAX_VALUE) } + init { - if (desktopState.canEnterDesktopMode) { + if ( + Transitions.ENABLE_SHELL_TRANSITIONS && DesktopModeStatus.canEnterDesktopMode(context) + ) { shellInit.addInitCallback(this::onInit, this) } } @@ -88,34 +84,31 @@ class DesktopModeLoggerTransitionObserver( // Caching whether the previous transition was exit to overview. private var wasPreviousTransitionExitToOverview: Boolean = false - // Caching whether the previous transition was exit due to screen off. This helps check if a - // following enter reason could be Screen On - private var wasPreviousTransitionExitByScreenOff: Boolean = false + // The instanceId for the current logging session + private var loggerInstanceId: InstanceId? = null - private var focusedFreeformTask: TaskInfo? = null + private val isSessionActive: Boolean + get() = loggerInstanceId != null - @VisibleForTesting var isSessionActive: Boolean = false + private fun setSessionInactive() { + loggerInstanceId = null + } fun onInit() { transitions.registerObserver(this) - SystemProperties.set( - VISIBLE_TASKS_COUNTER_SYSTEM_PROPERTY, - VISIBLE_TASKS_COUNTER_SYSTEM_PROPERTY_DEFAULT_VALUE, - ) - desktopModeEventLogger.logTaskInfoStateInit() } override fun onTransitionReady( transition: IBinder, info: TransitionInfo, startTransaction: SurfaceControl.Transaction, - finishTransaction: SurfaceControl.Transaction, + finishTransaction: SurfaceControl.Transaction ) { // this was a new recents animation if (info.isExitToRecentsTransition() && tasksSavedForRecents.isEmpty()) { - ProtoLog.v( + KtProtoLog.v( WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: Recents animation running, saving tasks for later", + "DesktopModeLogger: Recents animation running, saving tasks for later" ) // TODO (b/326391303) - avoid logging session exit if we can identify a cancelled // recents animation @@ -139,9 +132,9 @@ class DesktopModeLoggerTransitionObserver( info.flags == 0 && tasksSavedForRecents.isNotEmpty() ) { - ProtoLog.v( + KtProtoLog.v( WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: Canceled recents animation, restoring tasks", + "DesktopModeLogger: Canceled recents animation, restoring tasks" ) // restore saved tasks in the updated set and clear for next use postTransitionVisibleFreeformTasks += tasksSavedForRecents @@ -150,11 +143,9 @@ class DesktopModeLoggerTransitionObserver( // identify if we need to log any changes and update the state of visible freeform tasks identifyLogEventAndUpdateState( - transition = transition, transitionInfo = info, preTransitionVisibleFreeformTasks = visibleFreeformTaskInfos, - postTransitionVisibleFreeformTasks = postTransitionVisibleFreeformTasks, - newFocusedFreeformTask = getNewFocusedFreeformTask(info), + postTransitionVisibleFreeformTasks = postTransitionVisibleFreeformTasks ) wasPreviousTransitionExitToOverview = info.isExitToRecentsTransition() } @@ -165,42 +156,6 @@ class DesktopModeLoggerTransitionObserver( override fun onTransitionFinished(transition: IBinder, aborted: Boolean) {} - fun onTaskVanished(taskInfo: RunningTaskInfo) { - // At this point the task should have been cleared up due to transition. If it's not yet - // cleared up, it might be one of the edge cases where transitions don't give the correct - // signal. - if (visibleFreeformTaskInfos.containsKey(taskInfo.taskId)) { - val postTransitionFreeformTasks: SparseArray<TaskInfo> = SparseArray() - postTransitionFreeformTasks.putAll(visibleFreeformTaskInfos) - postTransitionFreeformTasks.remove(taskInfo.taskId) - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "DesktopModeLogger: processing tasks after task vanished %s", - postTransitionFreeformTasks.size(), - ) - identifyLogEventAndUpdateState( - transition = null, - transitionInfo = null, - preTransitionVisibleFreeformTasks = visibleFreeformTaskInfos, - postTransitionVisibleFreeformTasks = postTransitionFreeformTasks, - newFocusedFreeformTask = null, - ) - } - } - - // Returns null if there was no change in focused task - private fun getNewFocusedFreeformTask(info: TransitionInfo): TaskInfo? { - val freeformWindowChanges = - info.changes - .filter { it.taskInfo != null && it.requireTaskInfo().taskId != INVALID_TASK_ID } - .filter { it.requireTaskInfo().isFreeformWindow() } - return freeformWindowChanges - .findLast { change -> - change.hasFlags(FLAG_MOVED_TO_TOP) || change.mode == TRANSIT_OPEN - } - ?.taskInfo - } - private fun getPostTransitionVisibleFreeformTaskInfos( info: TransitionInfo ): SparseArray<TaskInfo> { @@ -247,10 +202,10 @@ class DesktopModeLoggerTransitionObserver( } } - ProtoLog.v( + KtProtoLog.v( WM_SHELL_DESKTOP_MODE, "DesktopModeLogger: taskInfo map after processing changes %s", - postTransitionFreeformTasks.size(), + postTransitionFreeformTasks.size() ) return postTransitionFreeformTasks @@ -274,11 +229,9 @@ class DesktopModeLoggerTransitionObserver( * state and update it */ private fun identifyLogEventAndUpdateState( - transition: IBinder?, - transitionInfo: TransitionInfo?, + transitionInfo: TransitionInfo, preTransitionVisibleFreeformTasks: SparseArray<TaskInfo>, - postTransitionVisibleFreeformTasks: SparseArray<TaskInfo>, - newFocusedFreeformTask: TaskInfo?, + postTransitionVisibleFreeformTasks: SparseArray<TaskInfo> ) { if ( postTransitionVisibleFreeformTasks.isEmpty() && @@ -287,255 +240,127 @@ class DesktopModeLoggerTransitionObserver( ) { // Sessions is finishing, log task updates followed by an exit event identifyAndLogTaskUpdates( - transition, - transitionInfo, + loggerInstanceId!!.id, preTransitionVisibleFreeformTasks, - postTransitionVisibleFreeformTasks, - newFocusedFreeformTask, + postTransitionVisibleFreeformTasks ) - desktopModeEventLogger.logSessionExit(getExitReason(transitionInfo)) - isSessionActive = false + desktopModeEventLogger.logSessionExit( + loggerInstanceId!!.id, + getExitReason(transitionInfo) + ) + + setSessionInactive() } else if ( postTransitionVisibleFreeformTasks.isNotEmpty() && preTransitionVisibleFreeformTasks.isEmpty() && !isSessionActive ) { // Session is starting, log enter event followed by task updates - isSessionActive = true - desktopModeEventLogger.logSessionEnter(getEnterReason(transitionInfo)) + loggerInstanceId = idSequence.newInstanceId() + desktopModeEventLogger.logSessionEnter( + loggerInstanceId!!.id, + getEnterReason(transitionInfo) + ) identifyAndLogTaskUpdates( - transition, - transitionInfo, + loggerInstanceId!!.id, preTransitionVisibleFreeformTasks, - postTransitionVisibleFreeformTasks, - newFocusedFreeformTask, + postTransitionVisibleFreeformTasks ) } else if (isSessionActive) { // Session is neither starting, nor finishing, log task updates if there are any identifyAndLogTaskUpdates( - transition, - transitionInfo, + loggerInstanceId!!.id, preTransitionVisibleFreeformTasks, - postTransitionVisibleFreeformTasks, - newFocusedFreeformTask, + postTransitionVisibleFreeformTasks ) } // update the state to the new version visibleFreeformTaskInfos.clear() visibleFreeformTaskInfos.putAll(postTransitionVisibleFreeformTasks) - focusedFreeformTask = newFocusedFreeformTask } + // TODO(b/326231724) - Add logging around taskInfoChanges Updates /** Compare the old and new state of taskInfos and identify and log the changes */ private fun identifyAndLogTaskUpdates( - transition: IBinder?, - transitionInfo: TransitionInfo?, + sessionId: Int, preTransitionVisibleFreeformTasks: SparseArray<TaskInfo>, - postTransitionVisibleFreeformTasks: SparseArray<TaskInfo>, - newFocusedFreeformTask: TaskInfo?, + postTransitionVisibleFreeformTasks: SparseArray<TaskInfo> ) { + // find new tasks that were added postTransitionVisibleFreeformTasks.forEach { taskId, taskInfo -> - val focusChangedReason = getFocusChangedReason(taskId, newFocusedFreeformTask) - val currentTaskUpdate = - buildTaskUpdateForTask( - taskInfo, - postTransitionVisibleFreeformTasks.size(), - focusChangedReason = focusChangedReason, - ) - val previousTaskInfo = preTransitionVisibleFreeformTasks[taskId] - when { - // new tasks added - previousTaskInfo == null -> { - // The current task is now visible while before it wasn't - this might be the - // result of an unminimize action. - val unminimizeReason = getUnminimizeReason(transition, taskInfo) - desktopModeEventLogger.logTaskAdded( - currentTaskUpdate.copy(unminimizeReason = unminimizeReason) - ) - Trace.setCounter( - Trace.TRACE_TAG_WINDOW_MANAGER, - VISIBLE_TASKS_COUNTER_NAME, - postTransitionVisibleFreeformTasks.size().toLong(), - ) - SystemProperties.set( - VISIBLE_TASKS_COUNTER_SYSTEM_PROPERTY, - postTransitionVisibleFreeformTasks.size().toString(), - ) - } - focusChangedReason != null -> - desktopModeEventLogger.logTaskInfoChanged(currentTaskUpdate) - // old tasks that were resized or repositioned - // TODO(b/347935387): Log changes only once they are stable. - buildTaskUpdateForTask( - previousTaskInfo, - postTransitionVisibleFreeformTasks.size(), - focusChangedReason = focusChangedReason, - ) != currentTaskUpdate -> - desktopModeEventLogger.logTaskInfoChanged(currentTaskUpdate) + if (!preTransitionVisibleFreeformTasks.containsKey(taskId)) { + desktopModeEventLogger.logTaskAdded(sessionId, buildTaskUpdateForTask(taskInfo)) } } // find old tasks that were removed preTransitionVisibleFreeformTasks.forEach { taskId, taskInfo -> if (!postTransitionVisibleFreeformTasks.containsKey(taskId)) { - // The task is no longer visible, it might have been minimized, get the minimize - // reason (if any) - val minimizeReason = getMinimizeReason(transition, transitionInfo, taskInfo) - val taskUpdate = - buildTaskUpdateForTask( - taskInfo, - postTransitionVisibleFreeformTasks.size(), - minimizeReason, - ) - desktopModeEventLogger.logTaskRemoved(taskUpdate) - Trace.setCounter( - Trace.TRACE_TAG_WINDOW_MANAGER, - VISIBLE_TASKS_COUNTER_NAME, - postTransitionVisibleFreeformTasks.size().toLong(), - ) - SystemProperties.set( - VISIBLE_TASKS_COUNTER_SYSTEM_PROPERTY, - postTransitionVisibleFreeformTasks.size().toString(), - ) + desktopModeEventLogger.logTaskRemoved(sessionId, buildTaskUpdateForTask(taskInfo)) } } } - private fun getMinimizeReason( - transition: IBinder?, - transitionInfo: TransitionInfo?, - taskInfo: TaskInfo, - ): MinimizeReason? { - if (transitionInfo?.type == Transitions.TRANSIT_MINIMIZE) { - return MinimizeReason.MINIMIZE_BUTTON - } - if (transitionInfo?.type == TRANSIT_DESKTOP_MODE_TASK_LIMIT_MINIMIZE) { - return MinimizeReason.TASK_LIMIT - } - val minimizingTask = - transition?.let { desktopTasksLimiter.getOrNull()?.getMinimizingTask(transition) } - if (minimizingTask?.taskId == taskInfo.taskId) { - return minimizingTask.minimizeReason - } - return null - } + // TODO(b/326231724: figure out how to get taskWidth and taskHeight from TaskInfo + private fun buildTaskUpdateForTask(taskInfo: TaskInfo): TaskUpdate { + val taskUpdate = TaskUpdate(taskInfo.taskId, taskInfo.userId) + // add task x, y if available + taskInfo.positionInParent?.let { taskUpdate.copy(taskX = it.x, taskY = it.y) } - private fun getUnminimizeReason(transition: IBinder?, taskInfo: TaskInfo): UnminimizeReason? { - val unminimizingTask = - transition?.let { desktopTasksLimiter.getOrNull()?.getUnminimizingTask(transition) } - if (unminimizingTask?.taskId == taskInfo.taskId) { - return unminimizingTask.unminimizeReason - } - return null - } - - private fun getFocusChangedReason( - taskId: Int, - newFocusedFreeformTask: TaskInfo?, - ): FocusReason? { - val newFocusedTask = newFocusedFreeformTask ?: return null - if (taskId != newFocusedTask.taskId) return null - return if (newFocusedTask != focusedFreeformTask) FocusReason.UNKNOWN else null - } - - private fun buildTaskUpdateForTask( - taskInfo: TaskInfo, - visibleTasks: Int, - minimizeReason: MinimizeReason? = null, - unminimizeReason: UnminimizeReason? = null, - focusChangedReason: FocusReason? = null, - ): TaskUpdate { - val screenBounds = taskInfo.configuration.windowConfiguration.bounds - val positionInParent = taskInfo.positionInParent - // We can't both minimize and unminimize the same task in one go. - assert(minimizeReason == null || unminimizeReason == null) - return TaskUpdate( - instanceId = taskInfo.taskId, - uid = taskInfo.effectiveUid, - taskHeight = screenBounds.height(), - taskWidth = screenBounds.width(), - taskX = positionInParent.x, - taskY = positionInParent.y, - visibleTaskCount = visibleTasks, - minimizeReason = minimizeReason, - unminimizeReason = unminimizeReason, - focusReason = focusChangedReason, - ) + return taskUpdate } /** Get [EnterReason] for this session enter */ - private fun getEnterReason(transitionInfo: TransitionInfo?): EnterReason { - val enterReason = - when { - transitionInfo?.type == WindowManager.TRANSIT_WAKE - // If there is a screen lock, desktop window entry is after dismissing keyguard - || - (transitionInfo?.type == WindowManager.TRANSIT_TO_BACK && - wasPreviousTransitionExitByScreenOff) -> EnterReason.SCREEN_ON - transitionInfo?.type == TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP -> - EnterReason.APP_HANDLE_DRAG - transitionInfo?.type == TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON -> - EnterReason.APP_HANDLE_MENU_BUTTON - transitionInfo?.type == TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW -> - EnterReason.APP_FROM_OVERVIEW - transitionInfo?.type == TRANSIT_ENTER_DESKTOP_FROM_KEYBOARD_SHORTCUT -> - EnterReason.KEYBOARD_SHORTCUT_ENTER - // NOTE: the below condition also applies for EnterReason quickswitch - transitionInfo?.type == WindowManager.TRANSIT_TO_FRONT -> EnterReason.OVERVIEW - // Enter desktop mode from cancelled recents has no transition. Enter is detected on - // the - // next transition involving freeform windows. - // TODO(b/346564416): Modify logging for cancelled recents once it transition is - // changed. Also see how to account to time difference between actual enter time - // and - // time of this log. Also account for the missed session when exit happens just - // after - // a cancelled recents. - wasPreviousTransitionExitToOverview -> EnterReason.OVERVIEW - transitionInfo?.type == WindowManager.TRANSIT_OPEN -> - EnterReason.APP_FREEFORM_INTENT - else -> { - ProtoLog.w( - WM_SHELL_DESKTOP_MODE, - "Unknown enter reason for transition type: %s", - transitionInfo?.type, - ) - EnterReason.UNKNOWN_ENTER - } - } - wasPreviousTransitionExitByScreenOff = false - return enterReason - } - - /** Get [ExitReason] for this session exit */ - private fun getExitReason(transitionInfo: TransitionInfo?): ExitReason = + private fun getEnterReason(transitionInfo: TransitionInfo): EnterReason = when { - transitionInfo?.type == WindowManager.TRANSIT_SLEEP -> { - wasPreviousTransitionExitByScreenOff = true - ExitReason.SCREEN_OFF - } - // TODO(b/384490301): differentiate back gesture / button exit from clicking the close - // button located in the window top corner. - transitionInfo?.type == WindowManager.TRANSIT_TO_BACK -> ExitReason.TASK_MOVED_TO_BACK - transitionInfo?.type == WindowManager.TRANSIT_CLOSE -> ExitReason.TASK_FINISHED - transitionInfo?.type == TRANSIT_EXIT_DESKTOP_MODE_TASK_DRAG -> ExitReason.DRAG_TO_EXIT - transitionInfo?.type == TRANSIT_EXIT_DESKTOP_MODE_HANDLE_MENU_BUTTON -> - ExitReason.APP_HANDLE_MENU_BUTTON_EXIT - - transitionInfo?.type == TRANSIT_EXIT_DESKTOP_MODE_KEYBOARD_SHORTCUT -> - ExitReason.KEYBOARD_SHORTCUT_EXIT - - transitionInfo?.isExitToRecentsTransition() == true -> - ExitReason.RETURN_HOME_OR_OVERVIEW - transitionInfo?.type == Transitions.TRANSIT_MINIMIZE -> ExitReason.TASK_MINIMIZED + transitionInfo.type == WindowManager.TRANSIT_WAKE -> EnterReason.SCREEN_ON + transitionInfo.type == Transitions.TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP -> + EnterReason.APP_HANDLE_DRAG + transitionInfo.type == TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON -> + EnterReason.APP_HANDLE_MENU_BUTTON + transitionInfo.type == TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW -> + EnterReason.APP_FROM_OVERVIEW + transitionInfo.type == TRANSIT_ENTER_DESKTOP_FROM_KEYBOARD_SHORTCUT -> + EnterReason.KEYBOARD_SHORTCUT_ENTER + // NOTE: the below condition also applies for EnterReason quickswitch + transitionInfo.type == WindowManager.TRANSIT_TO_FRONT -> EnterReason.OVERVIEW + // Enter desktop mode from cancelled recents has no transition. Enter is detected on the + // next transition involving freeform windows. + // TODO(b/346564416): Modify logging for cancelled recents once it transition is + // changed. Also see how to account to time difference between actual enter time and + // time of this log. Also account for the missed session when exit happens just after + // a cancelled recents. + wasPreviousTransitionExitToOverview -> EnterReason.OVERVIEW + transitionInfo.type == WindowManager.TRANSIT_OPEN -> EnterReason.APP_FREEFORM_INTENT else -> { ProtoLog.w( WM_SHELL_DESKTOP_MODE, - "Unknown exit reason for transition type: %s", - transitionInfo?.type, + "Unknown enter reason for transition type ${transitionInfo.type}", + transitionInfo.type + ) + EnterReason.UNKNOWN_ENTER + } + } + + /** Get [ExitReason] for this session exit */ + private fun getExitReason(transitionInfo: TransitionInfo): ExitReason = + when { + transitionInfo.type == WindowManager.TRANSIT_SLEEP -> ExitReason.SCREEN_OFF + transitionInfo.type == WindowManager.TRANSIT_CLOSE -> ExitReason.TASK_FINISHED + transitionInfo.type == TRANSIT_EXIT_DESKTOP_MODE_TASK_DRAG -> ExitReason.DRAG_TO_EXIT + transitionInfo.type == TRANSIT_EXIT_DESKTOP_MODE_HANDLE_MENU_BUTTON -> + ExitReason.APP_HANDLE_MENU_BUTTON_EXIT + transitionInfo.type == TRANSIT_EXIT_DESKTOP_MODE_KEYBOARD_SHORTCUT -> + ExitReason.KEYBOARD_SHORTCUT_EXIT + transitionInfo.isExitToRecentsTransition() -> ExitReason.RETURN_HOME_OR_OVERVIEW + else -> { + ProtoLog.w( + WM_SHELL_DESKTOP_MODE, + "Unknown exit reason for transition type ${transitionInfo.type}", + transitionInfo.type ) ExitReason.UNKNOWN_EXIT } @@ -547,26 +372,23 @@ class DesktopModeLoggerTransitionObserver( visibleFreeformTaskInfos.set(taskInfo.taskId, taskInfo) } - /** Sets the focused task - only used for testing. */ + @VisibleForTesting fun getLoggerSessionId(): Int? = loggerInstanceId?.id + @VisibleForTesting - fun setFocusedTaskForTesting(taskInfo: TaskInfo) { - focusedFreeformTask = taskInfo + fun setLoggerSessionId(id: Int) { + loggerInstanceId = InstanceId.fakeInstanceId(id) } - private fun TransitionInfo.Change.requireTaskInfo(): RunningTaskInfo = - this.taskInfo ?: throw IllegalStateException("Expected TaskInfo in the Change") + private fun TransitionInfo.Change.requireTaskInfo(): RunningTaskInfo { + return this.taskInfo ?: throw IllegalStateException("Expected TaskInfo in the Change") + } - private fun TaskInfo.isFreeformWindow(): Boolean = this.windowingMode == WINDOWING_MODE_FREEFORM + private fun TaskInfo.isFreeformWindow(): Boolean { + return this.windowingMode == WINDOWING_MODE_FREEFORM + } - private fun TransitionInfo.isExitToRecentsTransition(): Boolean = - this.type == WindowManager.TRANSIT_TO_FRONT && + private fun TransitionInfo.isExitToRecentsTransition(): Boolean { + return this.type == WindowManager.TRANSIT_TO_FRONT && this.flags == WindowManager.TRANSIT_FLAG_IS_RECENTS - - companion object { - @VisibleForTesting const val VISIBLE_TASKS_COUNTER_NAME = "desktop_mode_visible_tasks" - @VisibleForTesting - const val VISIBLE_TASKS_COUNTER_SYSTEM_PROPERTY = - "debug.tracing." + VISIBLE_TASKS_COUNTER_NAME - const val VISIBLE_TASKS_COUNTER_SYSTEM_PROPERTY_DEFAULT_VALUE = "0" } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt index 38fb51a35b..a0c6eb0b56 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeShellCommandHandler.kt @@ -16,46 +16,47 @@ package com.android.wm.shell.desktopmode -import android.app.ActivityTaskManager.INVALID_TASK_ID -import android.window.DesktopExperienceFlags -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UnminimizeReason -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.ADB_COMMAND import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.UNKNOWN import com.android.wm.shell.sysui.ShellCommandHandler -import com.android.wm.shell.transition.FocusTransitionObserver import java.io.PrintWriter /** Handles the shell commands for the DesktopTasksController. */ -class DesktopModeShellCommandHandler( - private val controller: DesktopTasksController, - private val focusTransitionObserver: FocusTransitionObserver, -) : ShellCommandHandler.ShellCommandActionHandler { +class DesktopModeShellCommandHandler(private val controller: DesktopTasksController) : + ShellCommandHandler.ShellCommandActionHandler { - override fun onShellCommand(args: Array<String>, pw: PrintWriter): Boolean = - when (args[0]) { - "moveTaskToDesk" -> runMoveTaskToDesk(args, pw) - "moveToNextDisplay" -> runMoveToNextDisplay(args, pw) - "createDesk" -> runCreateDesk(args, pw) - "activateDesk" -> runActivateDesk(args, pw) - "removeDesk" -> runRemoveDesk(args, pw) - "removeAllDesks" -> runRemoveAllDesks(args, pw) - "moveTaskToFront" -> runMoveTaskToFront(args, pw) - "moveTaskOutOfDesk" -> runMoveTaskOutOfDesk(args, pw) - "canCreateDesk" -> runCanCreateDesk(args, pw) - "getActiveDeskId" -> runGetActiveDeskId(args, pw) + override fun onShellCommand(args: Array<String>, pw: PrintWriter): Boolean { + return when (args[0]) { + "moveToDesktop" -> { + if (!runMoveToDesktop(args, pw)) { + pw.println("Task not found. Please enter a valid taskId.") + false + } else { + true + } + } + "moveToNextDisplay" -> { + if (!runMoveToNextDisplay(args, pw)) { + pw.println("Task not found. Please enter a valid taskId.") + false + } else { + true + } + } else -> { pw.println("Invalid command: ${args[0]}") false } } + } - private fun runMoveTaskToDesk(args: Array<String>, pw: PrintWriter): Boolean { + private fun runMoveToDesktop(args: Array<String>, pw: PrintWriter): Boolean { if (args.size < 2) { // First argument is the action name. pw.println("Error: task id should be provided as arguments") return false } - var taskId = + + val taskId = try { args[1].toInt() } catch (e: NumberFormatException) { @@ -63,241 +64,32 @@ class DesktopModeShellCommandHandler( return false } - if (taskId == 0) { - taskId = focusTransitionObserver.globallyFocusedTaskId - } - - if (taskId == INVALID_TASK_ID) { - pw.println("Error: no appropriate task found") - return false - } - - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - return controller.moveTaskToDefaultDeskAndActivate(taskId, transitionSource = UNKNOWN) - } - if (args.size < 3) { - pw.println("Error: desk id should be provided as arguments") - return false - } - val deskId = - try { - args[2].toInt() - } catch (e: NumberFormatException) { - pw.println("Error: desk id should be an integer") - return false - } - controller.moveTaskToDesk(taskId = taskId, deskId = deskId, transitionSource = ADB_COMMAND) - return true + return controller.moveToDesktop(taskId, transitionSource = UNKNOWN) } private fun runMoveToNextDisplay(args: Array<String>, pw: PrintWriter): Boolean { - var taskId = INVALID_TASK_ID if (args.size < 2) { - taskId = focusTransitionObserver.globallyFocusedTaskId - } else { + // First argument is the action name. + pw.println("Error: task id should be provided as arguments") + return false + } + + val taskId = try { - taskId = args[1].toInt() + args[1].toInt() } catch (e: NumberFormatException) { pw.println("Error: task id should be an integer") return false } - } - if (taskId == INVALID_TASK_ID) { - pw.println("Error: no appropriate task found") - return false - } + controller.moveToNextDisplay(taskId) return true } - private fun runCreateDesk(args: Array<String>, pw: PrintWriter): Boolean { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - pw.println("Not supported.") - return false - } - if (args.size < 2) { - // First argument is the action name. - pw.println("Error: desk id should be provided as arguments") - return false - } - val displayId = - try { - args[1].toInt() - } catch (e: NumberFormatException) { - pw.println("Error: display id should be an integer") - return false - } - controller.createDesk(displayId) - return true - } - - private fun runActivateDesk(args: Array<String>, pw: PrintWriter): Boolean { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - pw.println("Not supported.") - return false - } - if (args.size < 2) { - // First argument is the action name. - pw.println("Error: desk id should be provided as arguments") - return false - } - val deskId = - try { - args[1].toInt() - } catch (e: NumberFormatException) { - pw.println("Error: desk id should be an integer") - return false - } - controller.activateDesk(deskId) - return true - } - - private fun runRemoveDesk(args: Array<String>, pw: PrintWriter): Boolean { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - pw.println("Not supported.") - return false - } - if (args.size < 2) { - // First argument is the action name. - pw.println("Error: desk id should be provided as arguments") - return false - } - val deskId = - try { - args[1].toInt() - } catch (e: NumberFormatException) { - pw.println("Error: desk id should be an integer") - return false - } - controller.removeDesk(deskId) - return true - } - - private fun runRemoveAllDesks(args: Array<String>, pw: PrintWriter): Boolean { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - pw.println("Not supported.") - return false - } - pw.println("Not implemented.") - return false - } - - private fun runMoveTaskToFront(args: Array<String>, pw: PrintWriter): Boolean { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - pw.println("Not supported.") - return false - } - if (args.size < 2) { - // First argument is the action name. - pw.println("Error: task id should be provided as arguments") - return false - } - val taskId = - try { - args[1].toInt() - } catch (e: NumberFormatException) { - pw.println("Error: task id should be an integer") - return false - } - controller.moveTaskToFront( - /* taskId= */ taskId, - /* remoteTransition= */ null, - /* unminimizeReason= */ UnminimizeReason.UNKNOWN, - ) - return true - } - - private fun runMoveTaskOutOfDesk(args: Array<String>, pw: PrintWriter): Boolean { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - pw.println("Not supported.") - return false - } - if (args.size < 2) { - // First argument is the action name. - pw.println("Error: task id should be provided as arguments") - return false - } - val taskId = - try { - args[1].toInt() - } catch (e: NumberFormatException) { - pw.println("Error: task id should be an integer") - return false - } - controller.moveToFullscreen(taskId, transitionSource = UNKNOWN) - return true - } - - private fun runCanCreateDesk(args: Array<String>, pw: PrintWriter): Boolean { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - pw.println("Not supported.") - return false - } - val displayId = - try { - args[1].toInt() - } catch (e: NumberFormatException) { - pw.println("Error: display id should be an integer") - return false - } - pw.println("Not implemented.") - return false - } - - private fun runGetActiveDeskId(args: Array<String>, pw: PrintWriter): Boolean { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - pw.println("Not supported.") - return false - } - if (args.size < 2) { - // First argument is the action name. - pw.println("Error: task id should be provided as arguments") - return false - } - val displayId = - try { - args[1].toInt() - } catch (e: NumberFormatException) { - pw.println("Error: display id should be an integer") - return false - } - pw.println("Not implemented.") - return false - } - override fun printShellCommandHelp(pw: PrintWriter, prefix: String) { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - pw.println("$prefix moveTaskToDesk <taskId|0>") - pw.println( - "$prefix Move a task with given id to desktop mode. " + - "TaskId 0 means focused task on the default display." - ) - pw.println("$prefix moveToNextDisplay <taskId> ") - pw.println("$prefix Move a task with given id to next display.") - return - } - pw.println("$prefix moveTaskToDesk <taskId|0> <deskId>") - pw.println( - "$prefix Move a task with given id to the given desk and activate it. " + - "TaskId 0 means focused task on the default display." - ) - pw.println("$prefix moveToNextDisplay <taskId>") + pw.println("$prefix moveToDesktop <taskId> ") + pw.println("$prefix Move a task with given id to desktop mode.") + pw.println("$prefix moveToNextDisplay <taskId> ") pw.println("$prefix Move a task with given id to next display.") - pw.println("$prefix createDesk <displayId>") - pw.println("$prefix Creates a desk on the given display.") - pw.println("$prefix activateDesk <deskId>") - pw.println("$prefix Activates the given desk.") - pw.println("$prefix removeDesk <deskId> ") - pw.println("$prefix Removes the given desk and all of its windows.") - pw.println("$prefix removeAllDesks") - pw.println("$prefix Removes all the desks and their windows across all displays") - pw.println("$prefix moveTaskToFront <taskId>") - pw.println("$prefix Moves a task in front of its siblings.") - pw.println("$prefix moveTaskOutOfDesk <taskId>") - pw.println("$prefix Moves the given desktop task out of the desk into fullscreen mode.") - pw.println("$prefix canCreateDesk <displayId>") - pw.println("$prefix Whether creating a new desk in the given display is allowed.") - pw.println("$prefix getActivateDeskId <displayId>") - pw.println("$prefix Print the id of the active desk in the given display.") } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeTransitionTypes.kt b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeTransitionTypes.kt index 250af71dda..d6fccd1160 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeTransitionTypes.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeTransitionTypes.kt @@ -35,21 +35,6 @@ object DesktopModeTransitionTypes { const val TRANSIT_EXIT_DESKTOP_MODE_KEYBOARD_SHORTCUT = TRANSIT_DESKTOP_MODE_TYPES + 7 const val TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN = TRANSIT_DESKTOP_MODE_TYPES + 8 - /** Transition type for starting the drag to desktop mode. */ - const val TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP = TRANSIT_DESKTOP_MODE_TYPES + 9 - - /** Transition type for finalizing the drag to desktop mode. */ - const val TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP = TRANSIT_DESKTOP_MODE_TYPES + 10 - - /** Transition type to cancel the drag to desktop mode. */ - const val TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP = TRANSIT_DESKTOP_MODE_TYPES + 11 - - /** Transition type to animate the toggle resize between the max and default desktop sizes. */ - const val TRANSIT_DESKTOP_MODE_TOGGLE_RESIZE = TRANSIT_DESKTOP_MODE_TYPES + 12 - - /** Transition type to animate the minimization triggered when reaching the task limit. */ - const val TRANSIT_DESKTOP_MODE_TASK_LIMIT_MINIMIZE = TRANSIT_DESKTOP_MODE_TYPES + 13 - /** Return whether the [TransitionType] corresponds to a transition to enter desktop mode. */ @JvmStatic fun @receiver:TransitionType Int.isEnterDesktopModeTransition(): Boolean { @@ -58,7 +43,7 @@ object DesktopModeTransitionTypes { TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON, TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW, TRANSIT_ENTER_DESKTOP_FROM_KEYBOARD_SHORTCUT, - TRANSIT_ENTER_DESKTOP_FROM_UNKNOWN, + TRANSIT_ENTER_DESKTOP_FROM_UNKNOWN ) } @@ -88,7 +73,7 @@ object DesktopModeTransitionTypes { TRANSIT_EXIT_DESKTOP_MODE_TASK_DRAG, TRANSIT_EXIT_DESKTOP_MODE_HANDLE_MENU_BUTTON, TRANSIT_EXIT_DESKTOP_MODE_KEYBOARD_SHORTCUT, - TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN, + TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN ) } @@ -107,19 +92,4 @@ object DesktopModeTransitionTypes { else -> TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN } } - - /** - * Returns a string representing the [TransitionType]. If not supported, returns an empty - * string. - */ - @JvmStatic - fun transitTypeToString(transitType: Int): String = - when (transitType) { - TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP -> "DESKTOP_MODE_START_DRAG_TO_DESKTOP" - TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP -> "DESKTOP_MODE_END_DRAG_TO_DESKTOP" - TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP -> "DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP" - TRANSIT_DESKTOP_MODE_TOGGLE_RESIZE -> "DESKTOP_MODE_TOGGLE_RESIZE" - TRANSIT_DESKTOP_MODE_TASK_LIMIT_MINIMIZE -> "DESKTOP_MODE_TASK_LIMIT_MINIMIZE" - else -> "" - } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeUiEventLogger.kt b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeUiEventLogger.kt index e0300d6883..a9d4e5f321 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeUiEventLogger.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeUiEventLogger.kt @@ -16,23 +16,22 @@ package com.android.wm.shell.desktopmode -import android.app.ActivityManager.RunningTaskInfo -import android.content.pm.PackageManager +import android.util.Log import com.android.internal.logging.InstanceId import com.android.internal.logging.InstanceIdSequence import com.android.internal.logging.UiEvent import com.android.internal.logging.UiEventLogger -import com.android.internal.logging.UiEventLogger.UiEventEnum -import com.android.internal.protolog.ProtoLog -import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE +import com.android.wm.shell.dagger.WMSingleton +import javax.inject.Inject /** Log Aster UIEvents for desktop windowing mode. */ -class DesktopModeUiEventLogger( - private val uiEventLogger: UiEventLogger, - private val packageManager: PackageManager, +@WMSingleton +class DesktopModeUiEventLogger +@Inject +constructor( + private val mUiEventLogger: UiEventLogger, + private val mInstanceIdSequence: InstanceIdSequence ) { - private val instanceIdSequence = InstanceIdSequence(Integer.MAX_VALUE) - /** * Logs an event for a CUI, on a particular package. * @@ -42,25 +41,14 @@ class DesktopModeUiEventLogger( */ fun log(uid: Int, packageName: String, event: DesktopUiEventEnum) { if (packageName.isEmpty() || uid < 0) { - logD("Skip logging since package name is empty or bad uid") + Log.d(TAG, "Skip logging since package name is empty or bad uid") return } - uiEventLogger.log(event, uid, packageName) - } - - /** Logs an event for a CUI on a particular task. */ - fun log(taskInfo: RunningTaskInfo, event: DesktopUiEventEnum) { - val packageName = taskInfo.baseActivity?.packageName - if (packageName == null) { - logD("Skip logging due to null base activity") - return - } - val uid = getUid(packageName, taskInfo.userId) - log(uid, packageName, event) + mUiEventLogger.log(event, uid, packageName) } /** Retrieves a new instance id for a new interaction. */ - fun getNewInstanceId(): InstanceId = instanceIdSequence.newInstanceId() + fun getNewInstanceId(): InstanceId = mInstanceIdSequence.newInstanceId() /** * Logs an event as part of a particular CUI, on a particular package. @@ -75,133 +63,31 @@ class DesktopModeUiEventLogger( instanceId: InstanceId, uid: Int, packageName: String, - event: DesktopUiEventEnum, + event: DesktopUiEventEnum ) { if (packageName.isEmpty() || uid < 0) { - logD("Skip logging since package name is empty or bad uid") + Log.d(TAG, "Skip logging since package name is empty or bad uid") return } - uiEventLogger.logWithInstanceId(event, uid, packageName, instanceId) - } - - private fun getUid(packageName: String, userId: Int): Int = - try { - packageManager.getApplicationInfoAsUser(packageName, /* flags= */ 0, userId).uid - } catch (e: PackageManager.NameNotFoundException) { - INVALID_PACKAGE_UID - } - - private fun logD(msg: String, vararg arguments: Any?) { - ProtoLog.d(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) - } - - /** Enums for logging desktop windowing mode UiEvents. */ - enum class DesktopUiEventEnum(private val mId: Int) : UiEventEnum { - - @UiEvent(doc = "Resize the window in desktop windowing mode by dragging the edge") - DESKTOP_WINDOW_EDGE_DRAG_RESIZE(1721), - @UiEvent(doc = "Resize the window in desktop windowing mode by dragging the corner") - DESKTOP_WINDOW_CORNER_DRAG_RESIZE(1722), - @UiEvent(doc = "Tap on the window header maximize button in desktop windowing mode") - DESKTOP_WINDOW_MAXIMIZE_BUTTON_TAP(1723), - @UiEvent(doc = "Tap on the window header restore button in desktop windowing mode") - DESKTOP_WINDOW_RESTORE_BUTTON_TAP(2017), - @UiEvent(doc = "Double tap on window header to maximize it in desktop windowing mode") - DESKTOP_WINDOW_HEADER_DOUBLE_TAP_TO_MAXIMIZE(1724), - @UiEvent(doc = "Double tap on window header to restore from maximize in desktop windowing") - DESKTOP_WINDOW_HEADER_DOUBLE_TAP_TO_RESTORE(2018), - @UiEvent(doc = "Tap on the window Handle to open the Handle Menu") - DESKTOP_WINDOW_APP_HANDLE_TAP(1998), - @UiEvent(doc = "Tap on the desktop mode option under app handle menu") - DESKTOP_WINDOW_APP_HANDLE_MENU_TAP_TO_DESKTOP_MODE(1999), - @UiEvent(doc = "Tap on the split screen option under app handle menu") - DESKTOP_WINDOW_APP_HANDLE_MENU_TAP_TO_SPLIT_SCREEN(2000), - @UiEvent(doc = "Tap on the full screen option under app handle menu") - DESKTOP_WINDOW_APP_HANDLE_MENU_TAP_TO_FULL_SCREEN(2001), - @UiEvent(doc = "When user successfully drags the app handle to desktop mode") - DESKTOP_WINDOW_APP_HANDLE_DRAG_TO_DESKTOP_MODE(2002), - @UiEvent(doc = "When user successfully drags the app handle to split screen") - DESKTOP_WINDOW_APP_HANDLE_DRAG_TO_SPLIT_SCREEN(2003), - @UiEvent(doc = "When user successfully drags the app handle to full screen") - DESKTOP_WINDOW_APP_HANDLE_DRAG_TO_FULL_SCREEN(2004), - @UiEvent(doc = "Drag the window header to the top to switch to full screen mode") - DESKTOP_WINDOW_APP_HEADER_DRAG_TO_FULL_SCREEN(2005), - @UiEvent(doc = "Drag the window header to an edge to tile it to the left side") - DESKTOP_WINDOW_APP_HEADER_DRAG_TO_TILE_TO_LEFT(2006), - @UiEvent(doc = "Drag the window header to an edge to tile it to the right side") - DESKTOP_WINDOW_APP_HEADER_DRAG_TO_TILE_TO_RIGHT(2007), - @UiEvent(doc = "Hover or long press the maximize button to reveal the menu") - DESKTOP_WINDOW_MAXIMIZE_BUTTON_REVEAL_MENU(2015), - @UiEvent(doc = "Tap on the maximize option in the maximize button menu") - DESKTOP_WINDOW_MAXIMIZE_BUTTON_MENU_TAP_TO_MAXIMIZE(2009), - @UiEvent(doc = "Tap on the immersive option in the maximize button menu") - DESKTOP_WINDOW_MAXIMIZE_BUTTON_MENU_TAP_TO_IMMERSIVE(2010), - @UiEvent(doc = "Tap on the restore option in the maximize button menu") - DESKTOP_WINDOW_MAXIMIZE_BUTTON_MENU_TAP_TO_RESTORE(2011), - @UiEvent(doc = "Tap on the tile to left option in the maximize button menu") - DESKTOP_WINDOW_MAXIMIZE_BUTTON_MENU_TAP_TO_TILE_TO_LEFT(2012), - @UiEvent(doc = "Tap on the tile to right option in the maximize button menu") - DESKTOP_WINDOW_MAXIMIZE_BUTTON_MENU_TAP_TO_TILE_TO_RIGHT(2013), - @UiEvent(doc = "Moving the desktop window by dragging the header") - DESKTOP_WINDOW_MOVE_BY_HEADER_DRAG(2021), - @UiEvent(doc = "Double tap on the window header to refocus a desktop window") - DESKTOP_WINDOW_HEADER_TAP_TO_REFOCUS(2022), - @UiEvent(doc = "Enter multi-instance by using the New Window button") - DESKTOP_WINDOW_MULTI_INSTANCE_NEW_WINDOW_CLICK(2069), - @UiEvent(doc = "Enter multi-instance by clicking an icon in the Manage Windows menu") - DESKTOP_WINDOW_MULTI_INSTANCE_MANAGE_WINDOWS_ICON_CLICK(2070), - @UiEvent(doc = "Education tooltip on the app handle is shown") - APP_HANDLE_EDUCATION_TOOLTIP_SHOWN(2097), - @UiEvent(doc = "Education tooltip on the app handle is clicked") - APP_HANDLE_EDUCATION_TOOLTIP_CLICKED(2098), - @UiEvent(doc = "Education tooltip on the app handle is dismissed by the user") - APP_HANDLE_EDUCATION_TOOLTIP_DISMISSED(2099), - @UiEvent(doc = "Enter desktop mode education tooltip on the app handle menu is shown") - ENTER_DESKTOP_MODE_EDUCATION_TOOLTIP_SHOWN(2100), - @UiEvent(doc = "Enter desktop mode education tooltip on the app handle menu is clicked") - ENTER_DESKTOP_MODE_EDUCATION_TOOLTIP_CLICKED(2101), - @UiEvent(doc = "Enter desktop mode education tooltip is dismissed by the user") - ENTER_DESKTOP_MODE_EDUCATION_TOOLTIP_DISMISSED(2102), - @UiEvent(doc = "Exit desktop mode education tooltip on the app header menu is shown") - EXIT_DESKTOP_MODE_EDUCATION_TOOLTIP_SHOWN(2103), - @UiEvent(doc = "Exit desktop mode education tooltip on the app header menu is clicked") - EXIT_DESKTOP_MODE_EDUCATION_TOOLTIP_CLICKED(2104), - @UiEvent(doc = "Exit desktop mode education tooltip is dismissed by the user") - EXIT_DESKTOP_MODE_EDUCATION_TOOLTIP_DISMISSED(2105), - @UiEvent(doc = "A11y service opened app handle menu by selecting handle from fullscreen") - A11Y_APP_HANDLE_MENU_OPENED(2156), - @UiEvent(doc = "A11y service opened app handle menu through Switch Access actions menu ") - A11Y_SYSTEM_ACTION_APP_HANDLE_MENU(2157), - @UiEvent(doc = "A11y service selected desktop mode from app handle menu") - A11Y_APP_HANDLE_MENU_DESKTOP_VIEW(2158), - @UiEvent(doc = "A11y service selected fullscreen mode from app handle menu") - A11Y_APP_HANDLE_MENU_FULLSCREEN(2159), - @UiEvent(doc = "A11y service selected split screen mode from app handle menu") - A11Y_APP_HANDLE_MENU_SPLIT_SCREEN(2160), - @UiEvent(doc = "A11y service selected maximize/restore button from app header") - A11Y_APP_WINDOW_MAXIMIZE_RESTORE_BUTTON(2161), - @UiEvent(doc = "A11y service selected minimize button from app header") - A11Y_APP_WINDOW_MINIMIZE_BUTTON(2162), - @UiEvent(doc = "A11y service selected close button from app header") - A11Y_APP_WINDOW_CLOSE_BUTTON(2163), - @UiEvent(doc = "A11y service selected maximize button from app header maximize menu") - A11Y_MAXIMIZE_MENU_MAXIMIZE(2164), - @UiEvent(doc = "A11y service selected resize left button from app header maximize menu") - A11Y_MAXIMIZE_MENU_RESIZE_LEFT(2165), - @UiEvent(doc = "A11y service selected resize right button from app header maximize menu") - A11Y_MAXIMIZE_MENU_RESIZE_RIGHT(2166), - @UiEvent(doc = "A11y service triggered a11y action to maximize/restore app window") - A11Y_ACTION_MAXIMIZE_RESTORE(2167), - @UiEvent(doc = "A11y service triggered a11y action to resize app window left") - A11Y_ACTION_RESIZE_LEFT(2168), - @UiEvent(doc = "A11y service triggered a11y action to resize app window right") - A11Y_ACTION_RESIZE_RIGHT(2169); - - override fun getId(): Int = mId + mUiEventLogger.logWithInstanceId(event, uid, packageName, instanceId) } companion object { + /** Enums for logging desktop windowing mode UiEvents. */ + enum class DesktopUiEventEnum(private val mId: Int) : UiEventLogger.UiEventEnum { + + @UiEvent(doc = "Resize the window in desktop windowing mode by dragging the edge") + DESKTOP_WINDOW_EDGE_DRAG_RESIZE(1721), + @UiEvent(doc = "Resize the window in desktop windowing mode by dragging the corner") + DESKTOP_WINDOW_CORNER_DRAG_RESIZE(1722), + @UiEvent(doc = "Tap on the window header maximize button in desktop windowing mode") + DESKTOP_WINDOW_MAXIMIZE_BUTTON_TAP(1723), + @UiEvent(doc = "Double tap on window header to maximize it in desktop windowing mode") + DESKTOP_WINDOW_HEADER_DOUBLE_TAP_TO_MAXIMIZE(1724); + + override fun getId(): Int = mId + } + private const val TAG = "DesktopModeUiEventLogger" - private const val INVALID_PACKAGE_UID = -1 } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeUtils.kt b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeUtils.kt index 18a50a2503..217b1d3561 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeUtils.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeUtils.kt @@ -19,14 +19,6 @@ package com.android.wm.shell.desktopmode import android.app.ActivityManager.RunningTaskInfo -import android.app.TaskInfo -import android.content.Intent.FLAG_ACTIVITY_CLEAR_TASK -import android.content.Intent.FLAG_ACTIVITY_MULTIPLE_TASK -import android.content.pm.ActivityInfo.LAUNCH_MULTIPLE -import android.content.pm.ActivityInfo.LAUNCH_SINGLE_INSTANCE -import android.content.pm.ActivityInfo.LAUNCH_SINGLE_INSTANCE_PER_TASK -import android.content.pm.ActivityInfo.LAUNCH_SINGLE_TASK -import android.content.pm.ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED import android.content.pm.ActivityInfo.isFixedOrientationLandscape import android.content.pm.ActivityInfo.isFixedOrientationPortrait import android.content.res.Configuration.ORIENTATION_LANDSCAPE @@ -34,12 +26,7 @@ import android.content.res.Configuration.ORIENTATION_PORTRAIT import android.graphics.Rect import android.os.SystemProperties import android.util.Size -import android.window.DesktopModeFlags -import com.android.internal.policy.DesktopModeCompatUtils -import com.android.wm.shell.ShellTaskOrganizer -import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.DisplayLayout -import kotlin.math.ceil val DESKTOP_MODE_INITIAL_BOUNDS_SCALE: Float = SystemProperties.getInt("persist.wm.debug.desktop_mode_initial_bounds_scale", 75) / 100f @@ -47,112 +34,62 @@ val DESKTOP_MODE_INITIAL_BOUNDS_SCALE: Float = val DESKTOP_MODE_LANDSCAPE_APP_PADDING: Int = SystemProperties.getInt("persist.wm.debug.desktop_mode_landscape_app_padding", 25) -/** Calculates the initial bounds to enter desktop, centered on the display. */ -fun calculateDefaultDesktopTaskBounds(displayLayout: DisplayLayout): Rect { - // TODO(b/319819547): Account for app constraints so apps do not become letterboxed - val desiredWidth = (displayLayout.width() * DESKTOP_MODE_INITIAL_BOUNDS_SCALE).toInt() - val desiredHeight = (displayLayout.height() * DESKTOP_MODE_INITIAL_BOUNDS_SCALE).toInt() - val heightOffset = (displayLayout.height() - desiredHeight) / 2 - val widthOffset = (displayLayout.width() - desiredWidth) / 2 - return Rect(widthOffset, heightOffset, desiredWidth + widthOffset, desiredHeight + heightOffset) -} - /** * Calculates the initial bounds required for an application to fill a scale of the display bounds * without any letterboxing. This is done by taking into account the applications fullscreen size, * aspect ratio, orientation and resizability to calculate an area this is compatible with the * applications previous configuration. */ -@JvmOverloads fun calculateInitialBounds( displayLayout: DisplayLayout, taskInfo: RunningTaskInfo, - scale: Float = DESKTOP_MODE_INITIAL_BOUNDS_SCALE, - captionInsets: Int = 0, - requestedScreenOrientation: Int? = null, + scale: Float = DESKTOP_MODE_INITIAL_BOUNDS_SCALE ): Rect { val screenBounds = Rect(0, 0, displayLayout.width(), displayLayout.height()) val appAspectRatio = calculateAspectRatio(taskInfo) val idealSize = calculateIdealSize(screenBounds, scale) // If no top activity exists, apps fullscreen bounds and aspect ratio cannot be calculated. // Instead default to the desired initial bounds. - val stableBounds = Rect() - displayLayout.getStableBoundsForDesktopMode(stableBounds) - if (hasFullscreenOverride(taskInfo)) { - // If the activity has a fullscreen override applied, it should be treated as - // resizeable and match the device orientation. Thus the ideal size can be - // applied. - return positionInScreen(idealSize, stableBounds) - } val topActivityInfo = - taskInfo.topActivityInfo ?: return positionInScreen(idealSize, stableBounds) - val screenOrientation = requestedScreenOrientation ?: topActivityInfo.screenOrientation - val stableBoundsOrientation = DesktopModeCompatUtils.computeConfigOrientation(stableBounds) + taskInfo.topActivityInfo ?: return positionInScreen(idealSize, screenBounds) val initialSize: Size = - when (stableBoundsOrientation) { + when (taskInfo.configuration.orientation) { ORIENTATION_LANDSCAPE -> { - if (taskInfo.canChangeAspectRatio) { - if (isFixedOrientationPortrait(screenOrientation)) { - // For portrait resizeable activities, respect apps fullscreen width but - // apply ideal size height. - Size( - taskInfo.appCompatTaskInfo.topActivityAppBounds.width(), - idealSize.height, - ) + if (taskInfo.isResizeable) { + if (isFixedOrientationPortrait(topActivityInfo.screenOrientation)) { + // Respect apps fullscreen width + Size(taskInfo.appCompatTaskInfo.topActivityLetterboxWidth, idealSize.height) } else { - // For landscape resizeable activities, simply apply ideal size. idealSize } } else { - // If activity is unresizeable, regardless of orientation, calculate maximum - // size (within the ideal size) maintaining original aspect ratio. - maximizeSizeGivenAspectRatio( - taskInfo, - idealSize, - appAspectRatio, - captionInsets, - screenOrientation, - ) + maximumSizeMaintainingAspectRatio(taskInfo, idealSize, appAspectRatio) } } ORIENTATION_PORTRAIT -> { val customPortraitWidthForLandscapeApp = screenBounds.width() - (DESKTOP_MODE_LANDSCAPE_APP_PADDING * 2) - if (taskInfo.canChangeAspectRatio) { - if (isFixedOrientationLandscape(screenOrientation)) { - // For landscape resizeable activities, respect apps fullscreen height and - // apply custom app width. + if (taskInfo.isResizeable) { + if (isFixedOrientationLandscape(topActivityInfo.screenOrientation)) { + // Respect apps fullscreen height and apply custom app width Size( customPortraitWidthForLandscapeApp, - taskInfo.appCompatTaskInfo.topActivityAppBounds.height(), + taskInfo.appCompatTaskInfo.topActivityLetterboxHeight ) } else { - // For portrait resizeable activities, simply apply ideal size. idealSize } } else { - if (isFixedOrientationLandscape(screenOrientation)) { - // For landscape unresizeable activities, apply custom app width to ideal - // size and calculate maximum size with this area while maintaining original - // aspect ratio. - maximizeSizeGivenAspectRatio( + if (isFixedOrientationLandscape(topActivityInfo.screenOrientation)) { + // Apply custom app width and calculate maximum size + maximumSizeMaintainingAspectRatio( taskInfo, Size(customPortraitWidthForLandscapeApp, idealSize.height), - appAspectRatio, - captionInsets, - screenOrientation, + appAspectRatio ) } else { - // For portrait unresizeable activities, calculate maximum size (within the - // ideal size) maintaining original aspect ratio. - maximizeSizeGivenAspectRatio( - taskInfo, - idealSize, - appAspectRatio, - captionInsets, - screenOrientation, - ) + maximumSizeMaintainingAspectRatio(taskInfo, idealSize, appAspectRatio) } } } @@ -161,174 +98,57 @@ fun calculateInitialBounds( } } - return positionInScreen(initialSize, stableBounds) -} - -/** - * Calculates the maximized bounds of a task given in the given [DisplayLayout], taking resizability - * into consideration. - */ -fun calculateMaximizeBounds(displayLayout: DisplayLayout, taskInfo: RunningTaskInfo): Rect { - val stableBounds = Rect() - displayLayout.getStableBounds(stableBounds) - if (taskInfo.isResizeable) { - // if resizable then expand to entire stable bounds (full display minus insets) - return Rect(stableBounds) - } else { - // if non-resizable then calculate max bounds according to aspect ratio - val activityAspectRatio = calculateAspectRatio(taskInfo) - val captionInsets = - taskInfo.configuration.windowConfiguration.appBounds?.let { - it.top - taskInfo.configuration.windowConfiguration.bounds.top - } ?: 0 - val newSize = - maximizeSizeGivenAspectRatio( - taskInfo, - Size(stableBounds.width(), stableBounds.height()), - activityAspectRatio, - captionInsets, - ) - return centerInArea(newSize, stableBounds, stableBounds.left, stableBounds.top) - } + return positionInScreen(initialSize, screenBounds) } /** * Calculates the largest size that can fit in a given area while maintaining a specific aspect * ratio. */ -fun maximizeSizeGivenAspectRatio( +private fun maximumSizeMaintainingAspectRatio( taskInfo: RunningTaskInfo, targetArea: Size, - aspectRatio: Float, - captionInsets: Int = 0, - requestedScreenOrientation: Int? = null, + aspectRatio: Float ): Size { - val targetHeight = targetArea.height - captionInsets + val targetHeight = targetArea.height val targetWidth = targetArea.width val finalHeight: Int val finalWidth: Int - // Get orientation either through top activity or task's orientation - val screenOrientation = - requestedScreenOrientation ?: taskInfo.topActivityInfo?.screenOrientation - if (taskInfo.hasPortraitTopActivity(screenOrientation)) { - val tempWidth = ceil(targetHeight / aspectRatio).toInt() + if (isFixedOrientationPortrait(taskInfo.topActivityInfo!!.screenOrientation)) { + val tempWidth = (targetHeight / aspectRatio).toInt() if (tempWidth <= targetWidth) { finalHeight = targetHeight finalWidth = tempWidth } else { finalWidth = targetWidth - finalHeight = ceil(finalWidth * aspectRatio).toInt() + finalHeight = (finalWidth * aspectRatio).toInt() } } else { - val tempWidth = ceil(targetHeight * aspectRatio).toInt() + val tempWidth = (targetHeight * aspectRatio).toInt() if (tempWidth <= targetWidth) { finalHeight = targetHeight finalWidth = tempWidth } else { finalWidth = targetWidth - finalHeight = ceil(finalWidth / aspectRatio).toInt() + finalHeight = (finalWidth / aspectRatio).toInt() } } - return Size(finalWidth, finalHeight + captionInsets) + return Size(finalWidth, finalHeight) } /** Calculates the aspect ratio of an activity from its fullscreen bounds. */ -fun calculateAspectRatio(taskInfo: RunningTaskInfo): Float { - if (taskInfo.appCompatTaskInfo.topNonResizableActivityAspectRatio > 0) { - return taskInfo.appCompatTaskInfo.topNonResizableActivityAspectRatio +private fun calculateAspectRatio(taskInfo: RunningTaskInfo): Float { + if (taskInfo.appCompatTaskInfo.topActivityBoundsLetterboxed) { + val appLetterboxWidth = taskInfo.appCompatTaskInfo.topActivityLetterboxWidth + val appLetterboxHeight = taskInfo.appCompatTaskInfo.topActivityLetterboxHeight + return maxOf(appLetterboxWidth, appLetterboxHeight) / + minOf(appLetterboxWidth, appLetterboxHeight).toFloat() } - val appBounds = - if (taskInfo.appCompatTaskInfo.topActivityAppBounds.isEmpty) { - taskInfo.configuration.windowConfiguration.appBounds - ?: taskInfo.configuration.windowConfiguration.bounds - } else { - taskInfo.appCompatTaskInfo.topActivityAppBounds - } + val appBounds = taskInfo.configuration.windowConfiguration.appBounds ?: return 1f return maxOf(appBounds.height(), appBounds.width()) / minOf(appBounds.height(), appBounds.width()).toFloat() } -/** Returns whether the task is maximized. */ -fun isTaskMaximized(taskInfo: RunningTaskInfo, displayController: DisplayController): Boolean { - val displayLayout = - displayController.getDisplayLayout(taskInfo.displayId) - ?: error("Could not get display layout for display=${taskInfo.displayId}") - val stableBounds = Rect() - displayLayout.getStableBounds(stableBounds) - return isTaskMaximized(taskInfo, stableBounds) -} - -/** Returns whether the task is maximized. */ -fun isTaskMaximized(taskInfo: RunningTaskInfo, stableBounds: Rect): Boolean { - val currentTaskBounds = taskInfo.configuration.windowConfiguration.bounds - return if (taskInfo.isResizeable) { - isTaskBoundsEqual(currentTaskBounds, stableBounds) - } else { - isTaskWidthOrHeightEqual(currentTaskBounds, stableBounds) - } -} - -/** Returns true if task's width or height is maximized else returns false. */ -fun isTaskWidthOrHeightEqual(taskBounds: Rect, stableBounds: Rect): Boolean { - return taskBounds.width() == stableBounds.width() || - taskBounds.height() == stableBounds.height() -} - -/** Returns true if task bound is equal to stable bounds else returns false. */ -fun isTaskBoundsEqual(taskBounds: Rect, stableBounds: Rect): Boolean { - return taskBounds == stableBounds -} - -/** - * Returns the task bounds a launching task should inherit from an existing running instance. - * Returns null if there are no bounds to inherit. - */ -fun getInheritedExistingTaskBounds( - taskRepository: DesktopRepository, - shellTaskOrganizer: ShellTaskOrganizer, - task: RunningTaskInfo, - deskId: Int, -): Rect? { - if (!DesktopModeFlags.INHERIT_TASK_BOUNDS_FOR_TRAMPOLINE_TASK_LAUNCHES.isTrue) return null - val activeTask = taskRepository.getExpandedTasksIdsInDeskOrdered(deskId).firstOrNull() - if (activeTask == null) return null - val lastTask = shellTaskOrganizer.getRunningTaskInfo(activeTask) - val lastTaskTopActivity = lastTask?.topActivity - val currentTaskTopActivity = task.topActivity - val intentFlags = task.baseIntent.flags - val launchMode = task.topActivityInfo?.launchMode ?: LAUNCH_MULTIPLE - return when { - // No running task activity to inherit bounds from. - lastTaskTopActivity == null -> null - // No current top activity to set bounds for. - currentTaskTopActivity == null -> null - // Top task is not an instance of the launching activity, do not inherit its bounds. - lastTaskTopActivity.packageName != currentTaskTopActivity.packageName -> null - // Top task is an instance of launching activity. Activity will be launching in a new - // task with the existing task also being closed. Inherit existing task bounds to - // prevent new task jumping. - (isLaunchingNewSingleTask(launchMode) && isClosingExitingInstance(intentFlags)) -> - lastTask.configuration.windowConfiguration.bounds - else -> null - } -} - -/** - * Returns true if the launch mode will result in a single new task being created for the activity. - */ -private fun isLaunchingNewSingleTask(launchMode: Int) = - launchMode == LAUNCH_SINGLE_TASK || - launchMode == LAUNCH_SINGLE_INSTANCE || - launchMode == LAUNCH_SINGLE_INSTANCE_PER_TASK - -/** - * Returns true if the intent will result in an existing task instance being closed if a new one - * appears. - */ -private fun isClosingExitingInstance(intentFlags: Int) = - (intentFlags and FLAG_ACTIVITY_CLEAR_TASK) != 0 || - (intentFlags and FLAG_ACTIVITY_MULTIPLE_TASK) == 0 - /** * Calculates the desired initial bounds for applications in desktop windowing. This is done as a * scale of the screen bounds. @@ -340,57 +160,14 @@ private fun calculateIdealSize(screenBounds: Rect, scale: Float): Size { } /** Adjusts bounds to be positioned in the middle of the screen. */ -private fun positionInScreen(desiredSize: Size, stableBounds: Rect): Rect = - Rect(0, 0, desiredSize.width, desiredSize.height).apply { - val offset = DesktopTaskPosition.Center.getTopLeftCoordinates(stableBounds, this) - offsetTo(offset.x, offset.y) - } - -/** - * Whether the activity's aspect ratio can be changed or if it should be maintained as if it was - * unresizeable. - */ -private val TaskInfo.canChangeAspectRatio: Boolean - get() = isResizeable && !appCompatTaskInfo.hasMinAspectRatioOverride() - -/** - * Adjusts bounds to be positioned in the middle of the area provided, not necessarily the entire - * screen, as area can be offset by left and top start. - */ -fun centerInArea(desiredSize: Size, areaBounds: Rect, leftStart: Int, topStart: Int): Rect { - val heightOffset = (areaBounds.height() - desiredSize.height) / 2 - val widthOffset = (areaBounds.width() - desiredSize.width) / 2 - - val newLeft = leftStart + widthOffset - val newTop = topStart + heightOffset - val newRight = newLeft + desiredSize.width - val newBottom = newTop + desiredSize.height - - return Rect(newLeft, newTop, newRight, newBottom) -} - -private fun TaskInfo.hasPortraitTopActivity(screenOrientation: Int?): Boolean { - val topActivityScreenOrientation = screenOrientation ?: SCREEN_ORIENTATION_UNSPECIFIED - val appBounds = configuration.windowConfiguration.appBounds - - return when { - // First check if activity has portrait screen orientation - topActivityScreenOrientation != SCREEN_ORIENTATION_UNSPECIFIED -> { - isFixedOrientationPortrait(topActivityScreenOrientation) - } - - // Then check if the activity is portrait when letterboxed - appCompatTaskInfo.isTopActivityLetterboxed -> appCompatTaskInfo.isTopActivityPillarboxShaped - - // Then check if the activity is portrait - appBounds != null -> appBounds.height() > appBounds.width() - - // Otherwise just take the orientation of the task - else -> isFixedOrientationPortrait(configuration.orientation) - } -} - -private fun hasFullscreenOverride(taskInfo: RunningTaskInfo): Boolean { - return taskInfo.appCompatTaskInfo.isUserFullscreenOverrideEnabled || - taskInfo.appCompatTaskInfo.isSystemFullscreenOverrideEnabled +private fun positionInScreen(desiredSize: Size, screenBounds: Rect): Rect { + // TODO(b/325240051): Position apps with bottom heavy offset + val heightOffset = (screenBounds.height() - desiredSize.height) / 2 + val widthOffset = (screenBounds.width() - desiredSize.width) / 2 + return Rect( + widthOffset, + heightOffset, + desiredSize.width + widthOffset, + desiredSize.height + heightOffset + ) } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicator.java b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicator.java index 624cdf29c7..ed0d2b87b0 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicator.java +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicator.java @@ -16,51 +16,41 @@ package com.android.wm.shell.desktopmode; +import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; +import static android.view.WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE; +import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION; -import static com.android.internal.policy.SystemBarUtils.getDesktopViewAppHeaderHeightPx; -import static com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR; -import static com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType.TO_BUBBLE_LEFT_INDICATOR; -import static com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType.TO_BUBBLE_RIGHT_INDICATOR; -import static com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR; -import static com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR; -import static com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR; -import static com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR; -import static com.android.wm.shell.shared.ShellSharedConstants.SMALL_TABLET_MAX_EDGE_DP; - +import android.animation.Animator; +import android.animation.AnimatorListenerAdapter; +import android.animation.RectEvaluator; +import android.animation.ValueAnimator; import android.annotation.NonNull; -import android.annotation.Nullable; import android.app.ActivityManager; +import android.app.WindowConfiguration; import android.content.Context; +import android.content.res.Resources; +import android.graphics.PixelFormat; import android.graphics.PointF; import android.graphics.Rect; import android.graphics.Region; -import android.util.Pair; -import android.view.Display; +import android.graphics.drawable.LayerDrawable; +import android.util.DisplayMetrics; import android.view.SurfaceControl; -import android.window.DesktopExperienceFlags; -import android.window.DesktopModeFlags; +import android.view.SurfaceControlViewHost; +import android.view.View; +import android.view.WindowManager; +import android.view.WindowlessWindowManager; +import android.view.animation.DecelerateInterpolator; import androidx.annotation.VisibleForTesting; -import com.android.internal.policy.SystemBarUtils; import com.android.wm.shell.R; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayLayout; -import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.common.split.SplitScreenUtils; -import com.android.wm.shell.shared.annotations.ShellDesktopThread; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.shared.bubbles.BubbleDropTargetBoundsProvider; -import com.android.wm.shell.windowdecor.tiling.SnapEventHandler; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; /** * Animated visual indicator for Desktop Mode windowing transitions. @@ -76,193 +66,33 @@ public class DesktopModeVisualIndicator { /** Indicates impending transition into split select on the left side */ TO_SPLIT_LEFT_INDICATOR, /** Indicates impending transition into split select on the right side */ - TO_SPLIT_RIGHT_INDICATOR, - /** Indicates impending transition into bubble on the left side */ - TO_BUBBLE_LEFT_INDICATOR, - /** Indicates impending transition into bubble on the right side */ - TO_BUBBLE_RIGHT_INDICATOR + TO_SPLIT_RIGHT_INDICATOR } - /** - * The conditions surrounding the drag event that led to the indicator's creation. - */ - public enum DragStartState { - /** The indicator is resulting from a freeform task drag. */ - FROM_FREEFORM, - /** The indicator is resulting from a split screen task drag */ - FROM_SPLIT, - /** The indicator is resulting from a fullscreen task drag */ - FROM_FULLSCREEN, - /** The indicator is resulting from an Intent generated during a drag-and-drop event */ - DRAGGED_INTENT; - - /** - * Get the {@link DragStartState} of a drag event based on the windowing mode of the task. - * Note that DRAGGED_INTENT will be specified by the caller if needed and not returned - * here. - */ - public static DesktopModeVisualIndicator.DragStartState getDragStartState( - ActivityManager.RunningTaskInfo taskInfo - ) { - if (taskInfo.getWindowingMode() == WINDOWING_MODE_FULLSCREEN) { - return FROM_FULLSCREEN; - } else if (taskInfo.getWindowingMode() == WINDOWING_MODE_MULTI_WINDOW) { - return FROM_SPLIT; - } else if (taskInfo.isFreeform()) { - return FROM_FREEFORM; - } else { - return null; - } - } - - private static boolean isDragToDesktopStartState(DragStartState startState) { - return startState == FROM_FULLSCREEN || startState == FROM_SPLIT; - } - } - - private final VisualIndicatorViewContainer mVisualIndicatorViewContainer; - private final Context mContext; private final DisplayController mDisplayController; + private final RootTaskDisplayAreaOrganizer mRootTdaOrganizer; private final ActivityManager.RunningTaskInfo mTaskInfo; + private final SurfaceControl mTaskSurface; + private SurfaceControl mLeash; + private final SyncTransactionQueue mSyncQueue; + private SurfaceControlViewHost mViewHost; + + private View mView; private IndicatorType mCurrentType; - private final DragStartState mDragStartState; - private final SnapEventHandler mSnapEventHandler; - private final boolean mUseSmallTabletRegions; - private boolean mIsReleased = false; - /** - * Ordered list of {@link Rect} zones that we will match an input coordinate against. - * List is traversed from first to last element. The first rect that contains the input event - * will be used and the matching {@link IndicatorType} is returned. - * Empty rect matches all. - */ - private final List<Pair<Rect, IndicatorType>> mSortedRegions; - - public DesktopModeVisualIndicator(@ShellDesktopThread ShellExecutor desktopExecutor, - @ShellMainThread ShellExecutor mainExecutor, - SyncTransactionQueue syncQueue, + public DesktopModeVisualIndicator(SyncTransactionQueue syncQueue, ActivityManager.RunningTaskInfo taskInfo, DisplayController displayController, Context context, SurfaceControl taskSurface, - RootTaskDisplayAreaOrganizer taskDisplayAreaOrganizer, - DragStartState dragStartState, - @Nullable BubbleDropTargetBoundsProvider bubbleBoundsProvider, - SnapEventHandler snapEventHandler) { - this(desktopExecutor, mainExecutor, syncQueue, taskInfo, displayController, context, - taskSurface, taskDisplayAreaOrganizer, dragStartState, bubbleBoundsProvider, - snapEventHandler, useSmallTabletRegions(displayController, taskInfo), - isLeftRightSplit(context, displayController, taskInfo)); - } - - @VisibleForTesting - DesktopModeVisualIndicator(@ShellDesktopThread ShellExecutor desktopExecutor, - @ShellMainThread ShellExecutor mainExecutor, - SyncTransactionQueue syncQueue, - ActivityManager.RunningTaskInfo taskInfo, DisplayController displayController, - Context context, SurfaceControl taskSurface, - RootTaskDisplayAreaOrganizer taskDisplayAreaOrganizer, - DragStartState dragStartState, - @Nullable BubbleDropTargetBoundsProvider bubbleBoundsProvider, - SnapEventHandler snapEventHandler, - boolean useSmallTabletRegions, - boolean isLeftRightSplit) { - SurfaceControl.Builder builder = new SurfaceControl.Builder(); - if (!DragStartState.isDragToDesktopStartState(dragStartState) - || !DesktopModeFlags.ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX.isTrue()) { - // In the DragToDesktop transition we attach the indicator to the transition root once - // that is available - for all other cases attach the indicator here. - taskDisplayAreaOrganizer.attachToDisplayArea(taskInfo.displayId, builder); - } - mVisualIndicatorViewContainer = new VisualIndicatorViewContainer( - DesktopModeFlags.ENABLE_DESKTOP_INDICATOR_IN_SEPARATE_THREAD_BUGFIX.isTrue() - ? desktopExecutor : mainExecutor, - mainExecutor, builder, syncQueue, bubbleBoundsProvider, snapEventHandler); + RootTaskDisplayAreaOrganizer taskDisplayAreaOrganizer) { + mSyncQueue = syncQueue; mTaskInfo = taskInfo; mDisplayController = displayController; mContext = context; - mCurrentType = NO_INDICATOR; - mDragStartState = dragStartState; - mSnapEventHandler = snapEventHandler; - Display display = mDisplayController.getDisplay(mTaskInfo.displayId); - DisplayLayout displayLayout = mDisplayController.getDisplayLayout(mTaskInfo.displayId); - mVisualIndicatorViewContainer.createView( - mContext, - display, - displayLayout, - mTaskInfo, - taskSurface - ); - - mUseSmallTabletRegions = useSmallTabletRegions; - - if (useSmallTabletRegions) { - mSortedRegions = initSmallTabletRegions(displayLayout, isLeftRightSplit); - } else { - // TODO(b/401596837): add support for initializing regions for large tablets - mSortedRegions = Collections.emptyList(); - } - } - - private static boolean useSmallTabletRegions(DisplayController displayController, - ActivityManager.RunningTaskInfo taskInfo) { - if (!BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { - // Small tablet regions get enabled with bubbles feature - return false; - } - Display display = displayController.getDisplay(taskInfo.displayId); - DisplayLayout displayLayout = displayController.getDisplayLayout(taskInfo.displayId); - if (displayLayout == null) return false; - return displayLayout.pxToDp(display.getMaximumSizeDimension()) < SMALL_TABLET_MAX_EDGE_DP; - } - - private static boolean isLeftRightSplit(Context context, DisplayController displayController, - ActivityManager.RunningTaskInfo taskInfo) { - DisplayLayout layout = displayController.getDisplayLayout(taskInfo.displayId); - boolean landscape = layout != null && layout.isLandscape(); - boolean leftRightSplitInPortrait = SplitScreenUtils.allowLeftRightSplitInPortrait( - context.getResources()); - return SplitScreenUtils.isLeftRightSplit(leftRightSplitInPortrait, - /* isLargeScreen= */ true, landscape); - } - - /** Start the fade out animation, running the callback on the main thread once it is done. */ - public void fadeOutIndicator( - @NonNull Runnable callback) { - mVisualIndicatorViewContainer.fadeOutIndicator( - mDisplayController.getDisplayLayout(mTaskInfo.displayId), mCurrentType, callback, - mTaskInfo.displayId, mSnapEventHandler - ); - } - - /** Release the visual indicator view and its viewhost. */ - public void releaseVisualIndicator() { - mIsReleased = true; - mVisualIndicatorViewContainer.releaseVisualIndicator(); - } - - /** Reparent the visual indicator to {@code newParent}. */ - void reparentLeash(SurfaceControl.Transaction t, SurfaceControl newParent) { - mVisualIndicatorViewContainer.reparentLeash(t, newParent); - } - - /** Start the fade-in animation. */ - void fadeInIndicator() { - if (mCurrentType == NO_INDICATOR) return; - mVisualIndicatorViewContainer.fadeInIndicator( - mDisplayController.getDisplayLayout(mTaskInfo.displayId), mCurrentType, - mTaskInfo.displayId); - } - - /** - * Based on the coordinates of the current drag event, determine which indicator type we should - * display, including no visible indicator, and update the indicator. - */ - @NonNull - IndicatorType updateIndicatorType(int displayId, PointF inputCoordinates) { - final IndicatorType result = calculateIndicatorType(displayId, inputCoordinates); - updateIndicatorWithType(result); - return result; + mTaskSurface = taskSurface; + mRootTdaOrganizer = taskDisplayAreaOrganizer; + mCurrentType = IndicatorType.NO_INDICATOR; } /** @@ -270,123 +100,62 @@ public class DesktopModeVisualIndicator { * display, including no visible indicator. */ @NonNull - IndicatorType calculateIndicatorType(int displayId, PointF inputCoordinates) { - if (DesktopExperienceFlags.ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG.isTrue() - && mTaskInfo.displayId != displayId) { - // TODO(b/411292927): Allow indicator to show on the target display (`displayId`) - // even if it differs from the task's original display. - return NO_INDICATOR; - } - final IndicatorType result; - if (mUseSmallTabletRegions) { - result = getIndicatorSmallTablet(inputCoordinates); - } else { - result = getIndicatorLargeTablet(inputCoordinates); - } - return result; - } - - /** - * Update the indicator based on IndicatorType. - */ - @NonNull - void updateIndicatorWithType(IndicatorType type) { - if (!mIsReleased && mDragStartState != DragStartState.DRAGGED_INTENT) { - mVisualIndicatorViewContainer.transitionIndicator( - mTaskInfo, mDisplayController, mCurrentType, type - ); - mCurrentType = type; - } - } - - @NonNull - private IndicatorType getIndicatorLargeTablet(PointF inputCoordinates) { - // TODO(b/401596837): cache the regions to avoid recalculating on each motion event + IndicatorType updateIndicatorType(PointF inputCoordinates, int windowingMode) { final DisplayLayout layout = mDisplayController.getDisplayLayout(mTaskInfo.displayId); - // Perform a quick check first: any input off the left edge of the display should be split - // left, and split right for the right edge. This is universal across all drag event types. - if (inputCoordinates.x < 0) return TO_SPLIT_LEFT_INDICATOR; - if (inputCoordinates.x > layout.width()) return TO_SPLIT_RIGHT_INDICATOR; // If we are in freeform, we don't want a visible indicator in the "freeform" drag zone. - // In drags not originating on a freeform caption, we should default to a TO_DESKTOP - // indicator. - IndicatorType result = mDragStartState == DragStartState.FROM_FREEFORM - ? NO_INDICATOR - : TO_DESKTOP_INDICATOR; + IndicatorType result = IndicatorType.NO_INDICATOR; final int transitionAreaWidth = mContext.getResources().getDimensionPixelSize( - com.android.wm.shell.R.dimen.desktop_mode_transition_region_thickness); + com.android.wm.shell.R.dimen.desktop_mode_transition_area_width); // Because drags in freeform use task position for indicator calculation, we need to // account for the possibility of the task going off the top of the screen by captionHeight - final int captionHeight = getDesktopViewAppHeaderHeightPx(mContext); - final Region fullscreenRegion = calculateFullscreenRegion(layout, captionHeight); - final Rect splitLeftRegion = calculateSplitLeftRegion(layout, transitionAreaWidth, + final int captionHeight = mContext.getResources().getDimensionPixelSize( + com.android.wm.shell.R.dimen.desktop_mode_freeform_decor_caption_height); + final Region fullscreenRegion = calculateFullscreenRegion(layout, windowingMode, captionHeight); - final Rect splitRightRegion = calculateSplitRightRegion(layout, transitionAreaWidth, - captionHeight); - final int x = (int) inputCoordinates.x; - final int y = (int) inputCoordinates.y; - if (fullscreenRegion.contains(x, y)) { - result = TO_FULLSCREEN_INDICATOR; + final Region splitLeftRegion = calculateSplitLeftRegion(layout, windowingMode, + transitionAreaWidth, captionHeight); + final Region splitRightRegion = calculateSplitRightRegion(layout, windowingMode, + transitionAreaWidth, captionHeight); + final Region toDesktopRegion = calculateToDesktopRegion(layout, windowingMode, + splitLeftRegion, splitRightRegion, fullscreenRegion); + if (fullscreenRegion.contains((int) inputCoordinates.x, (int) inputCoordinates.y)) { + result = IndicatorType.TO_FULLSCREEN_INDICATOR; } - if (splitLeftRegion.contains(x, y)) { + if (splitLeftRegion.contains((int) inputCoordinates.x, (int) inputCoordinates.y)) { result = IndicatorType.TO_SPLIT_LEFT_INDICATOR; } - if (splitRightRegion.contains(x, y)) { + if (splitRightRegion.contains((int) inputCoordinates.x, (int) inputCoordinates.y)) { result = IndicatorType.TO_SPLIT_RIGHT_INDICATOR; } - if (BubbleAnythingFlagHelper.enableBubbleToFullscreen() - && mDragStartState == DragStartState.FROM_FULLSCREEN) { - if (calculateBubbleLeftRegion(layout).contains(x, y)) { - result = IndicatorType.TO_BUBBLE_LEFT_INDICATOR; - } else if (calculateBubbleRightRegion(layout).contains(x, y)) { - result = TO_BUBBLE_RIGHT_INDICATOR; - } + if (toDesktopRegion.contains((int) inputCoordinates.x, (int) inputCoordinates.y)) { + result = IndicatorType.TO_DESKTOP_INDICATOR; } + transitionIndicator(result); return result; } - @NonNull - private IndicatorType getIndicatorSmallTablet(PointF inputCoordinates) { - for (Pair<Rect, IndicatorType> region : mSortedRegions) { - if (region.first.isEmpty()) return region.second; // empty rect matches all - if (region.first.contains((int) inputCoordinates.x, (int) inputCoordinates.y)) { - return region.second; - } - } - return NO_INDICATOR; - } - - /** - * Returns the [DragStartState] of the visual indicator. - */ - DragStartState getDragStartState() { - return mDragStartState; - } - @VisibleForTesting - Region calculateFullscreenRegion(DisplayLayout layout, int captionHeight) { + Region calculateFullscreenRegion(DisplayLayout layout, + @WindowConfiguration.WindowingMode int windowingMode, int captionHeight) { final Region region = new Region(); - int transitionHeight = mDragStartState == DragStartState.FROM_FREEFORM - || mDragStartState == DragStartState.DRAGGED_INTENT - ? SystemBarUtils.getStatusBarHeight(mContext) + int transitionHeight = windowingMode == WINDOWING_MODE_FREEFORM + ? mContext.getResources().getDimensionPixelSize( + com.android.wm.shell.R.dimen.desktop_mode_fullscreen_from_desktop_height) : 2 * layout.stableInsets().top; - // A Rect at the top of the screen that takes up the center 40%. - if (mDragStartState == DragStartState.FROM_FREEFORM) { - final float toFullscreenScale = mContext.getResources().getFloat( - R.dimen.desktop_mode_fullscreen_region_scale); - final float toFullscreenWidth = (layout.width() * toFullscreenScale); - region.union(new Rect((int) ((layout.width() / 2f) - (toFullscreenWidth / 2f)), - Short.MIN_VALUE, - (int) ((layout.width() / 2f) + (toFullscreenWidth / 2f)), + // A thin, short Rect at the top of the screen. + if (windowingMode == WINDOWING_MODE_FREEFORM) { + int fromFreeformWidth = mContext.getResources().getDimensionPixelSize( + com.android.wm.shell.R.dimen.desktop_mode_fullscreen_from_desktop_width); + region.union(new Rect((layout.width() / 2) - (fromFreeformWidth / 2), + -captionHeight, + (layout.width() / 2) + (fromFreeformWidth / 2), transitionHeight)); } - // A screen-wide Rect if the task is in fullscreen, split, or a dragged intent. - if (mDragStartState == DragStartState.FROM_FULLSCREEN - || mDragStartState == DragStartState.FROM_SPLIT - || mDragStartState == DragStartState.DRAGGED_INTENT - ) { + // A screen-wide, shorter Rect if the task is in fullscreen or split. + if (windowingMode == WINDOWING_MODE_FULLSCREEN + || windowingMode == WINDOWING_MODE_MULTI_WINDOW) { region.union(new Rect(0, - Short.MIN_VALUE, + -captionHeight, layout.width(), transitionHeight)); } @@ -394,106 +163,321 @@ public class DesktopModeVisualIndicator { } @VisibleForTesting - Rect calculateSplitLeftRegion(DisplayLayout layout, + Region calculateToDesktopRegion(DisplayLayout layout, + @WindowConfiguration.WindowingMode int windowingMode, + Region splitLeftRegion, Region splitRightRegion, + Region toFullscreenRegion) { + final Region region = new Region(); + // If in desktop, we need no region. Otherwise it's the same for all windowing modes. + if (windowingMode != WINDOWING_MODE_FREEFORM) { + region.union(new Rect(0, 0, layout.width(), layout.height())); + region.op(splitLeftRegion, Region.Op.DIFFERENCE); + region.op(splitRightRegion, Region.Op.DIFFERENCE); + region.op(toFullscreenRegion, Region.Op.DIFFERENCE); + } + return region; + } + + @VisibleForTesting + Region calculateSplitLeftRegion(DisplayLayout layout, + @WindowConfiguration.WindowingMode int windowingMode, int transitionEdgeWidth, int captionHeight) { + final Region region = new Region(); // In freeform, keep the top corners clear. - int transitionHeight = mDragStartState == DragStartState.FROM_FREEFORM + int transitionHeight = windowingMode == WINDOWING_MODE_FREEFORM ? mContext.getResources().getDimensionPixelSize( com.android.wm.shell.R.dimen.desktop_mode_split_from_desktop_height) : -captionHeight; - return new Rect(0, transitionHeight, transitionEdgeWidth, layout.height()); + region.union(new Rect(0, transitionHeight, transitionEdgeWidth, layout.height())); + return region; } @VisibleForTesting - Rect calculateSplitRightRegion(DisplayLayout layout, + Region calculateSplitRightRegion(DisplayLayout layout, + @WindowConfiguration.WindowingMode int windowingMode, int transitionEdgeWidth, int captionHeight) { + final Region region = new Region(); // In freeform, keep the top corners clear. - int transitionHeight = mDragStartState == DragStartState.FROM_FREEFORM + int transitionHeight = windowingMode == WINDOWING_MODE_FREEFORM ? mContext.getResources().getDimensionPixelSize( com.android.wm.shell.R.dimen.desktop_mode_split_from_desktop_height) : -captionHeight; - return new Rect(layout.width() - transitionEdgeWidth, transitionHeight, - layout.width(), layout.height()); + region.union(new Rect(layout.width() - transitionEdgeWidth, transitionHeight, + layout.width(), layout.height())); + return region; } - @VisibleForTesting - Rect calculateBubbleLeftRegion(DisplayLayout layout) { - int regionSize = getBubbleRegionSize(); - return new Rect(0, layout.height() - regionSize, regionSize, layout.height()); + /** + * Create a fullscreen indicator with no animation + */ + private void createView() { + final SurfaceControl.Transaction t = new SurfaceControl.Transaction(); + final Resources resources = mContext.getResources(); + final DisplayMetrics metrics = resources.getDisplayMetrics(); + final int screenWidth = metrics.widthPixels; + final int screenHeight = metrics.heightPixels; + + mView = new View(mContext); + final SurfaceControl.Builder builder = new SurfaceControl.Builder(); + mRootTdaOrganizer.attachToDisplayArea(mTaskInfo.displayId, builder); + mLeash = builder + .setName("Desktop Mode Visual Indicator") + .setContainerLayer() + .setCallsite("DesktopModeVisualIndicator.createView") + .build(); + t.show(mLeash); + final WindowManager.LayoutParams lp = + new WindowManager.LayoutParams(screenWidth, screenHeight, TYPE_APPLICATION, + FLAG_NOT_FOCUSABLE, PixelFormat.TRANSPARENT); + lp.setTitle("Desktop Mode Visual Indicator"); + lp.setTrustedOverlay(); + final WindowlessWindowManager windowManager = new WindowlessWindowManager( + mTaskInfo.configuration, mLeash, + null /* hostInputToken */); + mViewHost = new SurfaceControlViewHost(mContext, + mDisplayController.getDisplay(mTaskInfo.displayId), windowManager, + "DesktopModeVisualIndicator"); + mViewHost.setView(mView, lp); + // We want this indicator to be behind the dragged task, but in front of all others. + t.setRelativeLayer(mLeash, mTaskSurface, -1); + + mSyncQueue.runInSync(transaction -> { + transaction.merge(t); + t.close(); + }); } - @VisibleForTesting - Rect calculateBubbleRightRegion(DisplayLayout layout) { - int regionSize = getBubbleRegionSize(); - return new Rect(layout.width() - regionSize, layout.height() - regionSize, - layout.width(), layout.height()); + /** + * Fade indicator in as provided type. Animator fades it in while expanding the bounds outwards. + */ + private void fadeInIndicator(IndicatorType type) { + mView.setBackgroundResource(R.drawable.desktop_windowing_transition_background); + final VisualIndicatorAnimator animator = VisualIndicatorAnimator + .fadeBoundsIn(mView, type, + mDisplayController.getDisplayLayout(mTaskInfo.displayId)); + animator.start(); + mCurrentType = type; } - private int getBubbleRegionSize() { - int resId = mUseSmallTabletRegions - ? com.android.wm.shell.shared.R.dimen.drag_zone_bubble_fold - : com.android.wm.shell.shared.R.dimen.drag_zone_bubble_tablet; - return mContext.getResources().getDimensionPixelSize(resId); + /** + * Fade out indicator without fully releasing it. Animator fades it out while shrinking bounds. + */ + private void fadeOutIndicator() { + final VisualIndicatorAnimator animator = VisualIndicatorAnimator + .fadeBoundsOut(mView, mCurrentType, + mDisplayController.getDisplayLayout(mTaskInfo.displayId)); + animator.start(); + mCurrentType = IndicatorType.NO_INDICATOR; } - @VisibleForTesting - Rect getIndicatorBounds() { - return mVisualIndicatorViewContainer.getIndicatorBounds(); + /** + * Takes existing indicator and animates it to bounds reflecting a new indicator type. + */ + private void transitionIndicator(IndicatorType newType) { + if (mCurrentType == newType) return; + if (mView == null) { + createView(); + } + if (mCurrentType == IndicatorType.NO_INDICATOR) { + fadeInIndicator(newType); + } else if (newType == IndicatorType.NO_INDICATOR) { + fadeOutIndicator(); + } else { + final VisualIndicatorAnimator animator = VisualIndicatorAnimator.animateIndicatorType( + mView, mDisplayController.getDisplayLayout(mTaskInfo.displayId), mCurrentType, + newType); + mCurrentType = newType; + animator.start(); + } } - private List<Pair<Rect, IndicatorType>> initSmallTabletRegions(DisplayLayout layout, - boolean isLeftRightSplit) { - return switch (mDragStartState) { - case FROM_FULLSCREEN -> initSmallTabletRegionsFromFullscreen(layout, isLeftRightSplit); - case FROM_SPLIT -> initSmallTabletRegionsFromSplit(layout, isLeftRightSplit); - default -> Collections.emptyList(); - }; - } - - private List<Pair<Rect, IndicatorType>> initSmallTabletRegionsFromFullscreen( - DisplayLayout layout, boolean isLeftRightSplit) { - - List<Pair<Rect, IndicatorType>> result = new ArrayList<>(); - if (BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { - result.add(new Pair<>(calculateBubbleLeftRegion(layout), TO_BUBBLE_LEFT_INDICATOR)); - result.add(new Pair<>(calculateBubbleRightRegion(layout), TO_BUBBLE_RIGHT_INDICATOR)); + /** + * Release the indicator and its components when it is no longer needed. + */ + public void releaseVisualIndicator(SurfaceControl.Transaction t) { + if (mViewHost == null) return; + if (mViewHost != null) { + mViewHost.release(); + mViewHost = null; } - if (isLeftRightSplit) { - int splitRegionWidth = mContext.getResources().getDimensionPixelSize( - com.android.wm.shell.shared.R.dimen.drag_zone_h_split_from_app_width_fold); - result.add(new Pair<>(calculateSplitLeftRegion(layout, splitRegionWidth, - /* captionHeight= */ 0), TO_SPLIT_LEFT_INDICATOR)); - result.add(new Pair<>(calculateSplitRightRegion(layout, splitRegionWidth, - /* captionHeight= */ 0), TO_SPLIT_RIGHT_INDICATOR)); + if (mLeash != null) { + t.remove(mLeash); + mLeash = null; } - // TODO(b/401352409): add support for top/bottom split zones - // default to fullscreen - result.add(new Pair<>(new Rect(), TO_FULLSCREEN_INDICATOR)); - return result; } - private List<Pair<Rect, IndicatorType>> initSmallTabletRegionsFromSplit(DisplayLayout layout, - boolean isLeftRightSplit) { - if (!isLeftRightSplit) { - // Dragging a top/bottom split is not supported on small tablets - return Collections.emptyList(); + /** + * Animator for Desktop Mode transitions which supports bounds and alpha animation. + */ + private static class VisualIndicatorAnimator extends ValueAnimator { + private static final int FULLSCREEN_INDICATOR_DURATION = 200; + private static final float FULLSCREEN_SCALE_ADJUSTMENT_PERCENT = 0.015f; + private static final float INDICATOR_FINAL_OPACITY = 0.35f; + private static final int MAXIMUM_OPACITY = 255; + + /** + * Determines how this animator will interact with the view's alpha: + * Fade in, fade out, or no change to alpha + */ + private enum AlphaAnimType { + ALPHA_FADE_IN_ANIM, ALPHA_FADE_OUT_ANIM, ALPHA_NO_CHANGE_ANIM } - List<Pair<Rect, IndicatorType>> result = new ArrayList<>(); - if (BubbleAnythingFlagHelper.enableBubbleAnything()) { - result.add(new Pair<>(calculateBubbleLeftRegion(layout), TO_BUBBLE_LEFT_INDICATOR)); - result.add(new Pair<>(calculateBubbleRightRegion(layout), TO_BUBBLE_RIGHT_INDICATOR)); + private final View mView; + private final Rect mStartBounds; + private final Rect mEndBounds; + private final RectEvaluator mRectEvaluator; + + private VisualIndicatorAnimator(View view, Rect startBounds, + Rect endBounds) { + mView = view; + mStartBounds = new Rect(startBounds); + mEndBounds = endBounds; + setFloatValues(0, 1); + mRectEvaluator = new RectEvaluator(new Rect()); } - int splitRegionWidth = mContext.getResources().getDimensionPixelSize( - com.android.wm.shell.shared.R.dimen.drag_zone_h_split_from_app_width_fold); - result.add(new Pair<>(calculateSplitLeftRegion(layout, splitRegionWidth, - /* captionHeight= */ 0), TO_SPLIT_LEFT_INDICATOR)); - result.add(new Pair<>(calculateSplitRightRegion(layout, splitRegionWidth, - /* captionHeight= */ 0), TO_SPLIT_RIGHT_INDICATOR)); - // default to fullscreen - result.add(new Pair<>(new Rect(), TO_FULLSCREEN_INDICATOR)); - return result; + private static VisualIndicatorAnimator fadeBoundsIn( + @NonNull View view, IndicatorType type, @NonNull DisplayLayout displayLayout) { + final Rect startBounds = getIndicatorBounds(displayLayout, type); + view.getBackground().setBounds(startBounds); + + final VisualIndicatorAnimator animator = new VisualIndicatorAnimator( + view, startBounds, getMaxBounds(startBounds)); + animator.setInterpolator(new DecelerateInterpolator()); + setupIndicatorAnimation(animator, AlphaAnimType.ALPHA_FADE_IN_ANIM); + return animator; + } + + private static VisualIndicatorAnimator fadeBoundsOut( + @NonNull View view, IndicatorType type, @NonNull DisplayLayout displayLayout) { + final Rect endBounds = getIndicatorBounds(displayLayout, type); + final Rect startBounds = getMaxBounds(endBounds); + view.getBackground().setBounds(startBounds); + + final VisualIndicatorAnimator animator = new VisualIndicatorAnimator( + view, startBounds, endBounds); + animator.setInterpolator(new DecelerateInterpolator()); + setupIndicatorAnimation(animator, AlphaAnimType.ALPHA_FADE_OUT_ANIM); + return animator; + } + + /** + * Create animator for visual indicator changing type (i.e., fullscreen to freeform, + * freeform to split, etc.) + * + * @param view the view for this indicator + * @param displayLayout information about the display the transitioning task is currently on + * @param origType the original indicator type + * @param newType the new indicator type + */ + private static VisualIndicatorAnimator animateIndicatorType(@NonNull View view, + @NonNull DisplayLayout displayLayout, IndicatorType origType, + IndicatorType newType) { + final Rect startBounds = getIndicatorBounds(displayLayout, origType); + final Rect endBounds = getIndicatorBounds(displayLayout, newType); + final VisualIndicatorAnimator animator = new VisualIndicatorAnimator( + view, startBounds, endBounds); + animator.setInterpolator(new DecelerateInterpolator()); + setupIndicatorAnimation(animator, AlphaAnimType.ALPHA_NO_CHANGE_ANIM); + return animator; + } + + private static Rect getIndicatorBounds(DisplayLayout layout, IndicatorType type) { + final int padding = layout.stableInsets().top; + switch (type) { + case TO_FULLSCREEN_INDICATOR: + return new Rect(padding, padding, + layout.width() - padding, + layout.height() - padding); + case TO_DESKTOP_INDICATOR: + final float adjustmentPercentage = 1f + - DesktopTasksController.DESKTOP_MODE_INITIAL_BOUNDS_SCALE; + return new Rect((int) (adjustmentPercentage * layout.width() / 2), + (int) (adjustmentPercentage * layout.height() / 2), + (int) (layout.width() - (adjustmentPercentage * layout.width() / 2)), + (int) (layout.height() - (adjustmentPercentage * layout.height() / 2))); + case TO_SPLIT_LEFT_INDICATOR: + return new Rect(padding, padding, + layout.width() / 2 - padding, + layout.height() - padding); + case TO_SPLIT_RIGHT_INDICATOR: + return new Rect(layout.width() / 2 + padding, padding, + layout.width() - padding, + layout.height() - padding); + default: + throw new IllegalArgumentException("Invalid indicator type provided."); + } + } + + /** + * Add necessary listener for animation of indicator + */ + private static void setupIndicatorAnimation(@NonNull VisualIndicatorAnimator animator, + AlphaAnimType animType) { + animator.addUpdateListener(a -> { + if (animator.mView != null) { + animator.updateBounds(a.getAnimatedFraction(), animator.mView); + if (animType == AlphaAnimType.ALPHA_FADE_IN_ANIM) { + animator.updateIndicatorAlpha(a.getAnimatedFraction(), animator.mView); + } else if (animType == AlphaAnimType.ALPHA_FADE_OUT_ANIM) { + animator.updateIndicatorAlpha(1 - a.getAnimatedFraction(), animator.mView); + } + } else { + animator.cancel(); + } + }); + animator.addListener(new AnimatorListenerAdapter() { + @Override + public void onAnimationEnd(Animator animation) { + animator.mView.getBackground().setBounds(animator.mEndBounds); + } + }); + animator.setDuration(FULLSCREEN_INDICATOR_DURATION); + } + + /** + * Update bounds of view based on current animation fraction. + * Use of delta is to animate bounds independently, in case we need to + * run multiple animations simultaneously. + * + * @param fraction fraction to use, compared against previous fraction + * @param view the view to update + */ + private void updateBounds(float fraction, View view) { + if (mStartBounds.equals(mEndBounds)) { + return; + } + final Rect currentBounds = mRectEvaluator.evaluate(fraction, mStartBounds, mEndBounds); + view.getBackground().setBounds(currentBounds); + } + + /** + * Fade in the fullscreen indicator + * + * @param fraction current animation fraction + */ + private void updateIndicatorAlpha(float fraction, View view) { + final LayerDrawable drawable = (LayerDrawable) view.getBackground(); + drawable.findDrawableByLayerId(R.id.indicator_stroke) + .setAlpha((int) (MAXIMUM_OPACITY * fraction)); + drawable.findDrawableByLayerId(R.id.indicator_solid) + .setAlpha((int) (MAXIMUM_OPACITY * fraction * INDICATOR_FINAL_OPACITY)); + } + + /** + * Return the max bounds of a visual indicator + */ + private static Rect getMaxBounds(Rect startBounds) { + return new Rect((int) (startBounds.left + - (FULLSCREEN_SCALE_ADJUSTMENT_PERCENT * startBounds.width())), + (int) (startBounds.top + - (FULLSCREEN_SCALE_ADJUSTMENT_PERCENT * startBounds.height())), + (int) (startBounds.right + + (FULLSCREEN_SCALE_ADJUSTMENT_PERCENT * startBounds.width())), + (int) (startBounds.bottom + + (FULLSCREEN_SCALE_ADJUSTMENT_PERCENT * startBounds.height()))); + } } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt b/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt index 13c0e4d3c5..ac0f67076d 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksController.kt @@ -16,14 +16,8 @@ package com.android.wm.shell.desktopmode -import android.annotation.UserIdInt -import android.app.ActivityManager -import android.app.ActivityManager.RecentTaskInfo import android.app.ActivityManager.RunningTaskInfo import android.app.ActivityOptions -import android.app.ActivityTaskManager.INVALID_TASK_ID -import android.app.AppOpsManager -import android.app.KeyguardManager import android.app.PendingIntent import android.app.TaskInfo import android.app.WindowConfiguration.ACTIVITY_TYPE_HOME @@ -35,162 +29,72 @@ import android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED import android.app.WindowConfiguration.WindowingMode import android.content.Context import android.content.Intent -import android.content.pm.PackageManager import android.graphics.Point import android.graphics.PointF import android.graphics.Rect import android.graphics.Region -import android.os.Binder -import android.os.Bundle -import android.os.Handler import android.os.IBinder import android.os.SystemProperties -import android.os.UserHandle -import android.os.UserManager -import android.util.Slog -import android.view.Display import android.view.Display.DEFAULT_DISPLAY -import android.view.Display.INVALID_DISPLAY -import android.view.DragEvent -import android.view.MotionEvent import android.view.SurfaceControl -import android.view.SurfaceControl.Transaction -import android.view.WindowManager import android.view.WindowManager.TRANSIT_CHANGE -import android.view.WindowManager.TRANSIT_CLOSE import android.view.WindowManager.TRANSIT_NONE import android.view.WindowManager.TRANSIT_OPEN -import android.view.WindowManager.TRANSIT_PIP import android.view.WindowManager.TRANSIT_TO_BACK import android.view.WindowManager.TRANSIT_TO_FRONT -import android.view.WindowManager.transitTypeToString -import android.widget.Toast -import android.window.DesktopExperienceFlags -import android.window.DesktopExperienceFlags.DesktopExperienceFlag -import android.window.DesktopExperienceFlags.ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY -import android.window.DesktopExperienceFlags.ENABLE_NON_DEFAULT_DISPLAY_SPLIT -import android.window.DesktopExperienceFlags.ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY -import android.window.DesktopModeFlags -import android.window.DesktopModeFlags.DISABLE_NON_RESIZABLE_APP_SNAP_RESIZE -import android.window.DesktopModeFlags.ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER -import android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY -import android.window.DesktopModeFlags.ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS import android.window.RemoteTransition -import android.window.SplashScreen.SPLASH_SCREEN_STYLE_ICON import android.window.TransitionInfo -import android.window.TransitionInfo.Change import android.window.TransitionRequestInfo import android.window.WindowContainerTransaction import androidx.annotation.BinderThread import com.android.internal.annotations.VisibleForTesting -import com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD -import com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE -import com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_SNAP_RESIZE -import com.android.internal.jank.InteractionJankMonitor -import com.android.internal.policy.SystemBarUtils.getDesktopViewAppHeaderHeightPx -import com.android.internal.protolog.ProtoLog -import com.android.internal.util.LatencyTracker -import com.android.window.flags2.Flags -import com.android.wm.shell.Flags.enableFlexibleSplit -import com.android.wm.shell.R +import com.android.internal.policy.ScreenDecorationsUtils +import com.android.window.flags.Flags import com.android.wm.shell.RootTaskDisplayAreaOrganizer import com.android.wm.shell.ShellTaskOrganizer -import com.android.wm.shell.bubbles.BubbleController import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.DisplayLayout import com.android.wm.shell.common.ExternalInterfaceBinder -import com.android.wm.shell.common.HomeIntentProvider +import com.android.wm.shell.common.LaunchAdjacentController import com.android.wm.shell.common.MultiInstanceHelper import com.android.wm.shell.common.MultiInstanceHelper.Companion.getComponent import com.android.wm.shell.common.RemoteCallable import com.android.wm.shell.common.ShellExecutor import com.android.wm.shell.common.SingleInstanceRemoteListener import com.android.wm.shell.common.SyncTransactionQueue -import com.android.wm.shell.common.UserProfileContexts -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.InputMethod -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.MinimizeReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.ResizeTrigger -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UnminimizeReason -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum -import com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.DragStartState -import com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType -import com.android.wm.shell.desktopmode.DesktopRepository.DeskChangeListener -import com.android.wm.shell.desktopmode.DesktopRepository.VisibleTasksListener -import com.android.wm.shell.desktopmode.DragToDesktopTransitionHandler.Companion.DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS +import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource +import com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT +import com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT +import com.android.wm.shell.compatui.isSingleTopActivityTranslucent +import com.android.wm.shell.desktopmode.DesktopModeTaskRepository.VisibleTasksListener import com.android.wm.shell.desktopmode.DragToDesktopTransitionHandler.DragToDesktopStateListener -import com.android.wm.shell.desktopmode.ExitDesktopTaskTransitionHandler.FULLSCREEN_ANIMATION_DURATION -import com.android.wm.shell.desktopmode.common.ToggleTaskSizeInteraction -import com.android.wm.shell.desktopmode.desktopfirst.DesktopFirstListenerManager -import com.android.wm.shell.desktopmode.desktopfirst.isDisplayDesktopFirst -import com.android.wm.shell.desktopmode.desktopwallpaperactivity.DesktopWallpaperActivityTokenProvider -import com.android.wm.shell.desktopmode.minimize.DesktopWindowLimitRemoteHandler -import com.android.wm.shell.desktopmode.multidesks.DeskTransition -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer -import com.android.wm.shell.desktopmode.multidesks.DesksTransitionObserver -import com.android.wm.shell.desktopmode.multidesks.OnDeskRemovedListener -import com.android.wm.shell.desktopmode.multidesks.PreserveDisplayRequestHandler -import com.android.wm.shell.desktopmode.persistence.DesktopRepositoryInitializer -import com.android.wm.shell.desktopmode.persistence.DesktopRepositoryInitializer.DeskRecreationFactory import com.android.wm.shell.draganddrop.DragAndDropController -import com.android.wm.shell.freeform.FreeformTaskTransitionStarter import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE import com.android.wm.shell.recents.RecentTasksController import com.android.wm.shell.recents.RecentsTransitionHandler import com.android.wm.shell.recents.RecentsTransitionStateListener -import com.android.wm.shell.recents.RecentsTransitionStateListener.RecentsTransitionState -import com.android.wm.shell.recents.RecentsTransitionStateListener.TRANSITION_STATE_NOT_RUNNING -import com.android.wm.shell.shared.R as SharedR -import com.android.wm.shell.shared.TransitionUtil +import com.android.wm.shell.shared.DesktopModeStatus +import com.android.wm.shell.shared.DesktopModeStatus.DESKTOP_DENSITY_OVERRIDE +import com.android.wm.shell.shared.DesktopModeStatus.useDesktopOverrideDensity import com.android.wm.shell.shared.annotations.ExternalThread -import com.android.wm.shell.shared.annotations.ShellDesktopThread import com.android.wm.shell.shared.annotations.ShellMainThread -import com.android.wm.shell.shared.desktopmode.DesktopConfig -import com.android.wm.shell.shared.desktopmode.DesktopFirstListener -import com.android.wm.shell.shared.desktopmode.DesktopModeCompatPolicy -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource -import com.android.wm.shell.shared.desktopmode.DesktopState -import com.android.wm.shell.shared.desktopmode.DesktopTaskToFrontReason -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_INDEX_UNDEFINED -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT import com.android.wm.shell.splitscreen.SplitScreenController import com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DESKTOP_MODE import com.android.wm.shell.sysui.ShellCommandHandler import com.android.wm.shell.sysui.ShellController import com.android.wm.shell.sysui.ShellInit -import com.android.wm.shell.sysui.UserChangeListener -import com.android.wm.shell.transition.FocusTransitionObserver +import com.android.wm.shell.sysui.ShellSharedConstants import com.android.wm.shell.transition.OneShotRemoteHandler import com.android.wm.shell.transition.Transitions -import com.android.wm.shell.transition.Transitions.TransitionFinishCallback -import com.android.wm.shell.transition.Transitions.TransitionHandler +import com.android.wm.shell.util.KtProtoLog import com.android.wm.shell.windowdecor.DragPositioningCallbackUtility import com.android.wm.shell.windowdecor.MoveToDesktopAnimator -import com.android.wm.shell.windowdecor.OnTaskRepositionAnimationListener import com.android.wm.shell.windowdecor.OnTaskResizeAnimationListener import com.android.wm.shell.windowdecor.extension.isFullscreen -import com.android.wm.shell.windowdecor.extension.isMultiWindow -import com.android.wm.shell.windowdecor.extension.requestingImmersive -import com.android.wm.shell.windowdecor.tiling.SnapEventHandler import java.io.PrintWriter import java.util.Optional import java.util.concurrent.Executor -import java.util.concurrent.TimeUnit import java.util.function.Consumer -import kotlin.coroutines.suspendCoroutine -import kotlin.jvm.optionals.getOrNull -import kotlinx.coroutines.CoroutineScope -import kotlinx.coroutines.launch - -/** - * A callback to be invoked when a transition is started via |Transitions.startTransition| with the - * transition binder token that it produces. - * - * Useful when multiple components are appending WCT operations to a single transition that is - * started outside of their control, and each of them wants to track the transition lifecycle - * independently by cross-referencing the transition token with future ready-transitions. - */ -typealias RunOnTransitStart = (IBinder) -> Unit /** Handles moving tasks in and out of desktop */ class DesktopTasksController( @@ -204,145 +108,103 @@ class DesktopTasksController( private val rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer, private val dragAndDropController: DragAndDropController, private val transitions: Transitions, - private val keyguardManager: KeyguardManager, - private val returnToDragStartAnimator: ReturnToDragStartAnimator, - private val desktopMixedTransitionHandler: DesktopMixedTransitionHandler, private val enterDesktopTaskTransitionHandler: EnterDesktopTaskTransitionHandler, private val exitDesktopTaskTransitionHandler: ExitDesktopTaskTransitionHandler, - private val desktopModeDragAndDropTransitionHandler: DesktopModeDragAndDropTransitionHandler, private val toggleResizeDesktopTaskTransitionHandler: ToggleResizeDesktopTaskTransitionHandler, private val dragToDesktopTransitionHandler: DragToDesktopTransitionHandler, - private val desktopImmersiveController: DesktopImmersiveController, - private val userRepositories: DesktopUserRepositories, - desktopRepositoryInitializer: DesktopRepositoryInitializer, + private val desktopModeTaskRepository: DesktopModeTaskRepository, + private val desktopModeLoggerTransitionObserver: DesktopModeLoggerTransitionObserver, + private val launchAdjacentController: LaunchAdjacentController, private val recentsTransitionHandler: RecentsTransitionHandler, private val multiInstanceHelper: MultiInstanceHelper, @ShellMainThread private val mainExecutor: ShellExecutor, - @ShellMainThread private val mainScope: CoroutineScope, - @ShellDesktopThread private val desktopExecutor: ShellExecutor, private val desktopTasksLimiter: Optional<DesktopTasksLimiter>, - private val recentTasksController: RecentTasksController?, - private val interactionJankMonitor: InteractionJankMonitor, - @ShellMainThread private val handler: Handler, - private val focusTransitionObserver: FocusTransitionObserver, - private val desktopModeEventLogger: DesktopModeEventLogger, - private val desktopModeUiEventLogger: DesktopModeUiEventLogger, - private val desktopWallpaperActivityTokenProvider: DesktopWallpaperActivityTokenProvider, - private val bubbleController: Optional<BubbleController>, - private val overviewToDesktopTransitionObserver: OverviewToDesktopTransitionObserver, - private val desksOrganizer: DesksOrganizer, - private val desksTransitionObserver: DesksTransitionObserver, - private val userProfileContexts: UserProfileContexts, - private val desktopModeCompatPolicy: DesktopModeCompatPolicy, - private val dragToDisplayTransitionHandler: DragToDisplayTransitionHandler, - private val moveToDisplayTransitionHandler: DesktopModeMoveToDisplayTransitionHandler, - private val homeIntentProvider: HomeIntentProvider, - private val desktopState: DesktopState, - private val desktopConfig: DesktopConfig, - private val visualIndicatorUpdateScheduler: VisualIndicatorUpdateScheduler, - private val desktopFirstListenerManager: Optional<DesktopFirstListenerManager>, + private val recentTasksController: RecentTasksController? ) : RemoteCallable<DesktopTasksController>, Transitions.TransitionHandler, - DragAndDropController.DragAndDropListener, - UserChangeListener { + DragAndDropController.DragAndDropListener { private val desktopMode: DesktopModeImpl - private var taskRepository: DesktopRepository private var visualIndicator: DesktopModeVisualIndicator? = null - private var userId: Int private val desktopModeShellCommandHandler: DesktopModeShellCommandHandler = - DesktopModeShellCommandHandler(this, focusTransitionObserver) - private val latencyTracker: LatencyTracker - - private val mOnAnimationFinishedCallback = { releaseVisualIndicator() } - private lateinit var snapEventHandler: SnapEventHandler - private val dragToDesktopStateListener = - object : DragToDesktopStateListener { - override fun onCommitToDesktopAnimationStart() { - removeVisualIndicator() - } - - override fun onCancelToDesktopAnimationEnd() { - removeVisualIndicator() - } - - override fun onTransitionInterrupted() { - removeVisualIndicator() - } - - private fun removeVisualIndicator() { - visualIndicator?.fadeOutIndicator { releaseVisualIndicator() } + DesktopModeShellCommandHandler(this) + private val mOnAnimationFinishedCallback = + Consumer<SurfaceControl.Transaction> { t: SurfaceControl.Transaction -> + visualIndicator?.releaseVisualIndicator(t) + visualIndicator = null + } + private val taskVisibilityListener = + object : VisibleTasksListener { + override fun onTasksVisibilityChanged(displayId: Int, visibleTasksCount: Int) { + launchAdjacentController.launchAdjacentEnabled = visibleTasksCount == 0 } } + private val dragToDesktopStateListener = + object : DragToDesktopStateListener { + override fun onCommitToDesktopAnimationStart(tx: SurfaceControl.Transaction) { + removeVisualIndicator(tx) + } - @VisibleForTesting var taskbarDesktopTaskListener: TaskbarDesktopTaskListener? = null + override fun onCancelToDesktopAnimationEnd(tx: SurfaceControl.Transaction) { + removeVisualIndicator(tx) + } - @VisibleForTesting - var desktopModeEnterExitTransitionListener: DesktopModeEntryExitTransitionListener? = null + private fun removeVisualIndicator(tx: SurfaceControl.Transaction) { + visualIndicator?.releaseVisualIndicator(tx) + visualIndicator = null + } + } + private val sysUIPackageName = context.resources.getString( + com.android.internal.R.string.config_systemUi) + + private val transitionAreaHeight + get() = + context.resources.getDimensionPixelSize( + com.android.wm.shell.R.dimen.desktop_mode_fullscreen_from_desktop_height + ) + + private val transitionAreaWidth + get() = + context.resources.getDimensionPixelSize( + com.android.wm.shell.R.dimen.desktop_mode_transition_area_width + ) /** Task id of the task currently being dragged from fullscreen/split. */ val draggingTaskId get() = dragToDesktopTransitionHandler.draggingTaskId - @RecentsTransitionState private var recentsTransitionState = TRANSITION_STATE_NOT_RUNNING - + private var recentsAnimationRunning = false private lateinit var splitScreenController: SplitScreenController - lateinit var freeformTaskTransitionStarter: FreeformTaskTransitionStarter - // Launch cookie used to identify a drag and drop transition to fullscreen after it has begun. - // Used to prevent handleRequest from moving the new fullscreen task to freeform. - private var dragAndDropFullscreenCookie: Binder? = null - - // A listener that is invoked after a desk has been remove from the system. */ - var onDeskRemovedListener: OnDeskRemovedListener? = null - - // A handler for requests to preserve a disconnected display to potentially restore later. - var preserveDisplayRequestHandler: PreserveDisplayRequestHandler? = null - - private val toDesktopAnimationDurationMs = - context.resources.getInteger(SharedR.integer.to_desktop_animation_duration_ms) init { desktopMode = DesktopModeImpl() - if (desktopState.canEnterDesktopMode) { + if (DesktopModeStatus.canEnterDesktopMode(context)) { shellInit.addInitCallback({ onInit() }, this) } - userId = ActivityManager.getCurrentUser() - taskRepository = userRepositories.getProfile(userId) - latencyTracker = LatencyTracker.getInstance(context) - - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - desktopRepositoryInitializer.deskRecreationFactory = - DeskRecreationFactory { deskUserId, destinationDisplayId, _ -> - // TODO: b/393978539 - One of the recreated desks may need to be activated by - // default in desktop-first. - createDeskRootSuspending(displayId = destinationDisplayId, userId = deskUserId) - } - } } private fun onInit() { - logD("onInit") + KtProtoLog.d(WM_SHELL_DESKTOP_MODE, "Initialize DesktopTasksController") shellCommandHandler.addDumpCallback(this::dump, this) shellCommandHandler.addCommandCallback("desktopmode", desktopModeShellCommandHandler, this) shellController.addExternalInterface( - IDesktopMode.DESCRIPTOR, + ShellSharedConstants.KEY_EXTRA_SHELL_DESKTOP_MODE, { createExternalInterface() }, - this, + this ) - shellController.addUserChangeListener(this) - // Update the current user id again because it might be updated between init and onInit(). - updateCurrentUser(ActivityManager.getCurrentUser()) transitions.addHandler(this) - dragToDesktopTransitionHandler.dragToDesktopStateListener = dragToDesktopStateListener + desktopModeTaskRepository.addVisibleTasksListener(taskVisibilityListener, mainExecutor) + dragToDesktopTransitionHandler.setDragToDesktopStateListener(dragToDesktopStateListener) recentsTransitionHandler.addTransitionStateListener( object : RecentsTransitionStateListener { - override fun onTransitionStateChanged(@RecentsTransitionState state: Int) { - logV( - "Recents transition state changed: %s", - RecentsTransitionStateListener.stateToString(state), + override fun onAnimationStateChanged(running: Boolean) { + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: recents animation state changed running=%b", + running ) - recentsTransitionState = state + recentsAnimationRunning = running } } ) @@ -354,15 +216,15 @@ class DesktopTasksController( return visualIndicator } + // TODO(b/347289970): Consider replacing with API + private fun isSystemUIApplication(taskInfo: RunningTaskInfo): Boolean { + return taskInfo.baseActivity?.packageName == sysUIPackageName + } + fun setOnTaskResizeAnimationListener(listener: OnTaskResizeAnimationListener) { toggleResizeDesktopTaskTransitionHandler.setOnTaskResizeAnimationListener(listener) enterDesktopTaskTransitionHandler.setOnTaskResizeAnimationListener(listener) - dragToDesktopTransitionHandler.onTaskResizeAnimationListener = listener - desktopImmersiveController.onTaskResizeAnimationListener = listener - } - - fun setOnTaskRepositionAnimationListener(listener: OnTaskRepositionAnimationListener) { - returnToDragStartAnimator.setTaskRepositionAnimationListener(listener) + dragToDesktopTransitionHandler.setOnTaskResizeAnimatorListener(listener) } /** Setter needed to avoid cyclic dependency. */ @@ -371,676 +233,153 @@ class DesktopTasksController( dragToDesktopTransitionHandler.setSplitScreenController(controller) } - /** Setter to handle snap events */ - fun setSnapEventHandler(handler: SnapEventHandler) { - snapEventHandler = handler - desktopTasksLimiter.ifPresent { it.snapEventHandler = snapEventHandler } - } + /** Show all tasks, that are part of the desktop, on top of launcher */ + fun showDesktopApps(displayId: Int, remoteTransition: RemoteTransition? = null) { + KtProtoLog.v(WM_SHELL_DESKTOP_MODE, "DesktopTasksController: showDesktopApps") + val wct = WindowContainerTransaction() + bringDesktopAppsToFront(displayId, wct) - /** Returns the transition type for the given remote transition. */ - private fun transitionType(remoteTransition: RemoteTransition?): Int { - if (remoteTransition == null) { - logV("RemoteTransition is null") - return TRANSIT_NONE + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + // TODO(b/309014605): ensure remote transition is supplied once state is introduced + val transitionType = if (remoteTransition == null) TRANSIT_NONE else TRANSIT_TO_FRONT + val handler = + remoteTransition?.let { + OneShotRemoteHandler(transitions.mainExecutor, remoteTransition) + } + transitions.startTransition(transitionType, wct, handler).also { t -> + handler?.setTransition(t) + } + } else { + shellTaskOrganizer.applyTransaction(wct) } - return TRANSIT_TO_FRONT } - /** - * Shows all tasks, that are part of the desktop, on top of launcher. Brings the task with id - * [taskIdToReorderToFront] to front if provided and is already on the default desk on the given - * display. - */ - @Deprecated("Use activateDesk() instead.", ReplaceWith("activateDesk()")) - fun showDesktopApps( - displayId: Int, - remoteTransition: RemoteTransition? = null, - taskIdToReorderToFront: Int? = null, - ) { - logV("showDesktopApps") - activateDefaultDeskInDisplay(displayId, remoteTransition, taskIdToReorderToFront) + /** Get number of tasks that are marked as visible */ + fun getVisibleTaskCount(displayId: Int): Int { + return desktopModeTaskRepository.getVisibleTaskCount(displayId) } - /** Returns whether the given display has an active desk. */ - fun isAnyDeskActive(displayId: Int): Boolean = taskRepository.isAnyDeskActive(displayId) - - /** Returns the id of the active desk in [displayId]. */ - fun getActiveDeskId(displayId: Int): Int? = taskRepository.getActiveDeskId(displayId) - - /** - * Moves focused task to desktop mode for given [displayId]. - * - * TODO(b/405381458): use focusTransitionObserver to get the focused task on a certain display - */ + /** Enter desktop by using the focused task in given `displayId` */ fun moveFocusedTaskToDesktop(displayId: Int, transitionSource: DesktopModeTransitionSource) { - val allFocusedTasks = getFocusedNonDesktopTasks(displayId) - when (allFocusedTasks.size) { - 0 -> return - // Full screen case - 1 -> { - if ( - desktopModeCompatPolicy.shouldDisableDesktopEntryPoints( - allFocusedTasks.single() + val allFocusedTasks = + shellTaskOrganizer.getRunningTasks(displayId).filter { taskInfo -> + taskInfo.isFocused && + (taskInfo.windowingMode == WINDOWING_MODE_FULLSCREEN || + taskInfo.windowingMode == WINDOWING_MODE_MULTI_WINDOW) && + taskInfo.activityType != ACTIVITY_TYPE_HOME + } + if (allFocusedTasks.isNotEmpty()) { + when (allFocusedTasks.size) { + 2 -> { + // Split-screen case where there are two focused tasks, then we find the child + // task to move to desktop. + val splitFocusedTask = + if (allFocusedTasks[0].taskId == allFocusedTasks[1].parentTaskId) { + allFocusedTasks[1] + } else { + allFocusedTasks[0] + } + moveToDesktop(splitFocusedTask, transitionSource = transitionSource) + } + 1 -> { + // Fullscreen case where we move the current focused task. + moveToDesktop(allFocusedTasks[0].taskId, transitionSource = transitionSource) + } + else -> { + KtProtoLog.w( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: Cannot enter desktop, expected less " + + "than 3 focused tasks but found %d", + allFocusedTasks.size ) - ) { - return } - moveTaskToDefaultDeskAndActivate( - allFocusedTasks.single().taskId, - transitionSource = transitionSource, - ) } - // Split-screen case where there are two focused tasks, then we find the child - // task to move to desktop. - 2 -> { - val focusedTask = getSplitFocusedTask(allFocusedTasks[0], allFocusedTasks[1]) - if (desktopModeCompatPolicy.shouldDisableDesktopEntryPoints(focusedTask)) { - return - } - moveTaskToDefaultDeskAndActivate( - focusedTask.taskId, - transitionSource = transitionSource, - ) - } - else -> - logW( - "DesktopTasksController: Cannot enter desktop, expected less " + - "than 3 focused tasks but found %d", - allFocusedTasks.size, - ) } } - /** - * Returns all focused tasks in full screen or split screen mode in [displayId] when it is not - * the home activity. - */ - private fun getFocusedNonDesktopTasks(displayId: Int): List<RunningTaskInfo> = - shellTaskOrganizer.getRunningTasks(displayId).filter { taskInfo -> - val focused = taskInfo.isFocused - val isNotDesktop = - if (DesktopExperienceFlags.EXCLUDE_DESK_ROOTS_FROM_DESKTOP_TASKS.isTrue) { - !taskRepository.isActiveTask(taskInfo.taskId) - } else { - taskInfo.windowingMode == WINDOWING_MODE_FULLSCREEN || - taskInfo.windowingMode == WINDOWING_MODE_MULTI_WINDOW - } - val isHome = taskInfo.activityType == ACTIVITY_TYPE_HOME - return@filter focused && isNotDesktop && !isHome + /** Move a task with given `taskId` to desktop */ + fun moveToDesktop( + taskId: Int, + wct: WindowContainerTransaction = WindowContainerTransaction(), + transitionSource: DesktopModeTransitionSource, + ): Boolean { + shellTaskOrganizer.getRunningTaskInfo(taskId)?.let { + moveToDesktop(it, wct, transitionSource) } + ?: moveToDesktopFromNonRunningTask(taskId, wct, transitionSource) + return true + } - /** Returns child task from two focused tasks in split screen mode. */ - private fun getSplitFocusedTask(task1: RunningTaskInfo, task2: RunningTaskInfo) = - if (task1.taskId == task2.parentTaskId) task2 else task1 - - @Deprecated("Use isDisplayDesktopFirst() instead.", ReplaceWith("isDisplayDesktopFirst()")) - private fun forceEnterDesktop(displayId: Int): Boolean { - if (DesktopExperienceFlags.ENABLE_DESKTOP_FIRST_BASED_DEFAULT_TO_DESKTOP_BUGFIX.isTrue) { - return rootTaskDisplayAreaOrganizer.isDisplayDesktopFirst(displayId) - } - - if (!desktopState.enterDesktopByDefaultOnFreeformDisplay) { - return false - } - - // Secondary displays are always desktop-first - if (displayId != DEFAULT_DISPLAY) { + private fun moveToDesktopFromNonRunningTask( + taskId: Int, + wct: WindowContainerTransaction, + transitionSource: DesktopModeTransitionSource, + ): Boolean { + recentTasksController?.findTaskInBackground(taskId)?.let { + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: moveToDesktopFromNonRunningTask taskId=%d", + taskId + ) + // TODO(342378842): Instead of using default display, support multiple displays + val taskToMinimize = + bringDesktopAppsToFrontBeforeShowingNewTask(DEFAULT_DISPLAY, wct, taskId) + addMoveToDesktopChangesNonRunningTask(wct, taskId) + // TODO(343149901): Add DPI changes for task launch + val transition = enterDesktopTaskTransitionHandler.moveToDesktop(wct, transitionSource) + addPendingMinimizeTransition(transition, taskToMinimize) return true } - - val tdaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(displayId) - // A non-organized display (e.g., non-trusted virtual displays used in CTS) doesn't have - // TDA. - if (tdaInfo == null) { - logW( - "forceEnterDesktop cannot find DisplayAreaInfo for displayId=%d. This could happen" + - " when the display is a non-trusted virtual display.", - displayId, - ) - return false - } - val tdaWindowingMode = tdaInfo.configuration.windowConfiguration.windowingMode - val isFreeformDisplay = tdaWindowingMode == WINDOWING_MODE_FREEFORM - return isFreeformDisplay + ?: return false } - /** Called when the recents transition that started while in desktop is finishing. */ - fun onRecentsInDesktopAnimationFinishing( - transition: IBinder, - finishWct: WindowContainerTransaction, - returnToApp: Boolean, - activeDeskIdOnRecentsStart: Int?, - ) { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) return - logV( - "onRecentsInDesktopAnimationFinishing returnToApp=%b activeDeskIdOnRecentsStart=%d", - returnToApp, - activeDeskIdOnRecentsStart, - ) - - if (returnToApp) { - // Returning to the same desk, notify the snap event handler of recents animation - // ending to the same desk. - snapEventHandler.onRecentsAnimationEndedToSameDesk() - return - } - if ( - activeDeskIdOnRecentsStart == null || - !taskRepository.isDeskActive(activeDeskIdOnRecentsStart) - ) { - // No desk was active or it is already inactive. - return - } - // At this point the recents transition is either finishing to home, to another non-desktop - // task or to a different desk than the one that was active when recents started. For all - // of those the desk that was active needs to be deactivated. - val runOnTransitStart = - performDesktopExitCleanUp( - wct = finishWct, - deskId = activeDeskIdOnRecentsStart, - displayId = DEFAULT_DISPLAY, - willExitDesktop = true, - // No need to clean up the wallpaper / home when coming from a recents transition. - skipWallpaperAndHomeOrdering = true, - // This is a recents-finish, so taskbar animation on transit start does not apply. - skipUpdatingExitDesktopListener = true, - ) - runOnTransitStart?.invoke(transition) - } - - /** Returns whether a new desk can be created. */ - fun canCreateDesks(repository: DesktopRepository = this.taskRepository): Boolean { - val deskLimit = desktopConfig.maxDeskLimit - return deskLimit == 0 || repository.getNumberOfDesks() < deskLimit - } - - /** - * Adds a new desk to the given display for the given user and invokes [onResult] once the desk - * is created, but necessarily activated. - */ - fun createDesk( - displayId: Int, - userId: Int = this.userId, - enforceDeskLimit: Boolean = true, - activateDesk: Boolean = false, - onResult: ((Int) -> Unit) = {}, - ) { - logV( - "createDesk displayId=%d, userId=%d enforceDeskLimit=%b", - displayId, - userId, - enforceDeskLimit, - ) - if (!desktopState.isDesktopModeSupportedOnDisplay(displayId)) { - // Display does not support desktops, no-op. - logW("createDesk displayId $displayId does not support desktops, ignoring request") - return - } - val repository = userRepositories.getProfile(userId) - if (enforceDeskLimit && !canCreateDesks(repository)) { - // At the limit, no-op. - logW("createDesk already at desk-limit, ignoring request") - return - } - createDeskRoot(displayId, userId) { deskId -> - if (deskId == null) { - logW("Failed to add desk in displayId=%d for userId=%d", displayId, userId) - } else { - repository.addDesk(displayId = displayId, deskId = deskId) - onResult(deskId) - if (activateDesk) { - activateDesk(deskId) - } - } - } - } - - @Deprecated("Use createDeskSuspending() instead.", ReplaceWith("createDeskSuspending()")) - private fun createDeskImmediate(displayId: Int, userId: Int = this.userId): Int? { - logV("createDeskImmediate displayId=%d, userId=%d", displayId, userId) - val repository = userRepositories.getProfile(userId) - val deskId = createDeskRootImmediate(displayId, userId) - if (deskId == null) { - logW("Failed to add desk in displayId=%d for userId=%d", displayId, userId) - return null - } - repository.addDesk(displayId = displayId, deskId = deskId) - return deskId - } - - private suspend fun createDeskSuspending( - displayId: Int, - userId: Int, - enforceDeskLimit: Boolean, - ): Int = suspendCoroutine { cont -> - createDesk(displayId = displayId, userId = userId, enforceDeskLimit = enforceDeskLimit) { - deskId -> - cont.resumeWith(Result.success(deskId)) - } - } - - private fun createDeskRoot( - displayId: Int, - userId: Int = this.userId, - onResult: (Int?) -> Unit, - ) { - if (displayId == Display.INVALID_DISPLAY) { - logW("createDesk attempt with invalid displayId", displayId) - onResult(null) - return - } - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - // In single-desk, the desk reuses the display id. - logD("createDesk reusing displayId=%d for single-desk", displayId) - onResult(displayId) - return - } - if ( - DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_HSUM.isTrue && - UserManager.isHeadlessSystemUserMode() && - UserHandle.USER_SYSTEM == userId - ) { - logW("createDesk ignoring attempt for system user") - onResult(null) - return - } - desksOrganizer.createDesk(displayId, userId) { deskId -> - logD( - "createDesk obtained deskId=%d for displayId=%d and userId=%d", - deskId, - displayId, - userId, - ) - onResult(deskId) - } - } - - @Deprecated( - "Use createDeskRootSuspending() instead.", - ReplaceWith("createDeskRootSuspending()"), - ) - private fun createDeskRootImmediate(displayId: Int, userId: Int): Int? { - if (displayId == Display.INVALID_DISPLAY) { - logW("createDeskRootImmediate attempt with invalid displayId", displayId) - return null - } - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - // In single-desk, the desk reuses the display id. - logD("createDeskRootImmediate reusing displayId=%d for single-desk", displayId) - return displayId - } - if ( - DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_HSUM.isTrue && - UserManager.isHeadlessSystemUserMode() && - UserHandle.USER_SYSTEM == userId - ) { - logW("createDeskRootImmediate ignoring attempt for system user") - return null - } - return desksOrganizer.createDeskImmediate(displayId, userId) - } - - private suspend fun createDeskRootSuspending(displayId: Int, userId: Int = this.userId): Int? = - suspendCoroutine { cont -> - createDeskRoot(displayId, userId) { deskId -> cont.resumeWith(Result.success(deskId)) } - } - - private fun onDisplayDisconnect( - disconnectedDisplayId: Int, - destinationDisplayId: Int, - transition: IBinder, - ): WindowContainerTransaction { - preserveDisplayRequestHandler?.requestPreserveDisplay(disconnectedDisplayId) - // TODO: b/406320371 - Verify this works with non-system users once the underlying bug is - // resolved. - val wct = WindowContainerTransaction() - // TODO: b/391652399 - Investigate why sometimes disconnect results in a black background. - // Additionally, investigate why wallpaper goes to front for inactive users. - val desktopModeSupportedOnDisplay = - desktopState.isDesktopModeSupportedOnDisplay(destinationDisplayId) - snapEventHandler.onDisplayDisconnected(disconnectedDisplayId, desktopModeSupportedOnDisplay) - removeWallpaperTask(wct, disconnectedDisplayId) - removeHomeTask(wct, disconnectedDisplayId) - userRepositories.forAllRepositories { desktopRepository -> - val deskIds = desktopRepository.getDeskIds(disconnectedDisplayId).toList() - if (desktopModeSupportedOnDisplay) { - // Desktop supported on display; reparent desks, focused desk on top. - for (deskId in deskIds) { - val deskTasks = desktopRepository.getActiveTaskIdsInDesk(deskId) - // Remove desk if it's empty. - if (deskTasks.isEmpty()) { - desksOrganizer.removeDesk(wct, deskId, desktopRepository.userId) - desksTransitionObserver.addPendingTransition( - DeskTransition.RemoveDesk( - token = transition, - displayId = disconnectedDisplayId, - deskId = deskId, - tasks = emptySet(), - onDeskRemovedListener = onDeskRemovedListener, - runOnTransitEnd = { snapEventHandler.onDeskRemoved(deskId) }, - ) - ) - } else { - // Otherwise, reparent it to the destination display. - val toTop = - deskTasks.contains(focusTransitionObserver.globallyFocusedTaskId) - desksOrganizer.moveDeskToDisplay(wct, deskId, destinationDisplayId, toTop) - desksTransitionObserver.addPendingTransition( - DeskTransition.ChangeDeskDisplay( - transition, - deskId, - destinationDisplayId, - ) - ) - updateDesksActivationOnDisconnection( - deskId, - destinationDisplayId, - wct, - toTop, - ) - ?.invoke(transition) - } - } - } else { - // Desktop not supported on display; reparent tasks to display area, remove desk. - val tdaInfo = - checkNotNull( - rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(destinationDisplayId) - ) { - "Expected to find displayAreaInfo for displayId=$destinationDisplayId" - } - for (deskId in deskIds) { - val taskIds = desktopRepository.getActiveTaskIdsInDesk(deskId) - for (taskId in taskIds) { - val task = shellTaskOrganizer.getRunningTaskInfo(taskId) ?: continue - wct.reparent( - task.token, - tdaInfo.token, - focusTransitionObserver.globallyFocusedTaskId == task.taskId, - ) - } - desksOrganizer.removeDesk(wct, deskId, userId) - desksTransitionObserver.addPendingTransition( - DeskTransition.RemoveDesk( - token = transition, - displayId = disconnectedDisplayId, - deskId = deskId, - tasks = emptySet(), - onDeskRemovedListener = onDeskRemovedListener, - runOnTransitEnd = { snapEventHandler.onDeskRemoved(deskId) }, - ) - ) - desksTransitionObserver.addPendingTransition( - DeskTransition.RemoveDisplay(transition, disconnectedDisplayId) - ) - } - } - } - return wct - } - - /** - * Handle desk operations when disconnecting a display and all desks on that display are moving - * to a display that supports desks. The previously focused display will determine which desk - * will move to the front. - * - * @param disconnectedDisplayActiveDesk the id of the active desk on the disconnected display - * @param toTop whether this desk was reordered to the top - */ - @VisibleForTesting - fun updateDesksActivationOnDisconnection( - disconnectedDisplayActiveDesk: Int, - destinationDisplayId: Int, + private fun addMoveToDesktopChangesNonRunningTask( wct: WindowContainerTransaction, - toTop: Boolean, - ): RunOnTransitStart? { - val runOnTransitStart = - if (toTop) { - // The disconnected display's active desk was reparented to the top, activate it - // here. - addDeskActivationChanges( - deskId = disconnectedDisplayActiveDesk, - wct = wct, - displayId = destinationDisplayId, - ) - } else { - // The disconnected display's active desk was reparented to the back, ensure it is - // no longer an active launch root. - prepareDeskDeactivationIfNeeded(wct, disconnectedDisplayActiveDesk) - } - return runOnTransitStart + taskId: Int + ) { + val options = ActivityOptions.makeBasic() + options.launchWindowingMode = WINDOWING_MODE_FREEFORM + wct.startTask(taskId, options.toBundle()) } - private fun getDisplayIdForTaskOrDefault(task: TaskInfo?): Int { - // First, try to get the display already associated with the task. - if ( - task != null && - task.displayId != INVALID_DISPLAY && - desktopState.isDesktopModeSupportedOnDisplay(displayId = task.displayId) - ) { - return task.displayId - } - // Second, try to use the globally focused display. - val globallyFocusedDisplayId = focusTransitionObserver.globallyFocusedDisplayId - if ( - globallyFocusedDisplayId != INVALID_DISPLAY && - desktopState.isDesktopModeSupportedOnDisplay(displayId = globallyFocusedDisplayId) - ) { - return globallyFocusedDisplayId - } - // Fallback to any display that supports desktop. - val supportedDisplayId = - rootTaskDisplayAreaOrganizer.displayIds.firstOrNull { displayId -> - desktopState.isDesktopModeSupportedOnDisplay(displayId) - } - if (supportedDisplayId != null) { - return supportedDisplayId - } - // Use the default display as the last option even if it does not support desktop. Callers - // should handle this case. - return DEFAULT_DISPLAY - } - - /** Moves task to desktop mode if task is running, else launches it in desktop mode. */ - @JvmOverloads - fun moveTaskToDefaultDeskAndActivate( - taskId: Int, - wct: WindowContainerTransaction = WindowContainerTransaction(), - transitionSource: DesktopModeTransitionSource, - remoteTransition: RemoteTransition? = null, - callback: IMoveToDesktopCallback? = null, - ): Boolean { - val task = - shellTaskOrganizer.getRunningTaskInfo(taskId) - ?: recentTasksController?.findTaskInBackground(taskId) - if (task == null) { - logW("moveTaskToDefaultDeskAndActivate taskId=%d not found", taskId) - return false - } - val displayId = getDisplayIdForTaskOrDefault(task) - if ( - DesktopExperienceFlags.ENABLE_PROJECTED_DISPLAY_DESKTOP_MODE.isTrue && - !desktopState.isDesktopModeSupportedOnDisplay(displayId) && - transitionSource != DesktopModeTransitionSource.ADB_COMMAND && - transitionSource != DesktopModeTransitionSource.APP_FROM_OVERVIEW - ) { - logW("moveTaskToDefaultDeskAndActivate display=$displayId does not support desk") - return false - } - if ( - !DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue || - !DesktopExperienceFlags.ENABLE_DEFAULT_DESK_WITHOUT_WARMUP_MIGRATION.isTrue - ) { - val deskId = getOrCreateDefaultDeskId(displayId) ?: return false - return moveTaskToDesk( - taskId = taskId, - deskId = deskId, - wct = wct, - transitionSource = transitionSource, - remoteTransition = remoteTransition, - ) - } - mainScope.launch { - try { - moveTaskToDesk( - taskId = taskId, - deskId = getOrCreateDefaultDeskIdSuspending(displayId), - wct = wct, - transitionSource = transitionSource, - remoteTransition = remoteTransition, - ) - } catch (t: Throwable) { - logE("Failed to move task to default desk: %s", t.message) - } - } - return true - } - - /** Moves task to desktop mode if task is running, else launches it in desktop mode. */ - fun moveTaskToDesk( - taskId: Int, - deskId: Int, - wct: WindowContainerTransaction = WindowContainerTransaction(), - transitionSource: DesktopModeTransitionSource, - remoteTransition: RemoteTransition? = null, - callback: IMoveToDesktopCallback? = null, - ): Boolean { - logV("moveTaskToDesk taskId=%d deskId=%d source=%s", taskId, deskId, transitionSource) - val runningTask = shellTaskOrganizer.getRunningTaskInfo(taskId) - if (runningTask != null) { - return moveRunningTaskToDesk( - task = runningTask, - deskId = deskId, - wct = wct, - transitionSource = transitionSource, - remoteTransition = remoteTransition, - callback = callback, - ) - } - val backgroundTask = recentTasksController?.findTaskInBackground(taskId) - if (backgroundTask != null) { - return moveBackgroundTaskToDesktop( - taskId, - deskId, - wct, - transitionSource, - remoteTransition, - callback, - ) - } - logW("moveTaskToDesk taskId=%d not found", taskId) - return false - } - - private fun moveBackgroundTaskToDesktop( - taskId: Int, - deskId: Int, - wct: WindowContainerTransaction, - transitionSource: DesktopModeTransitionSource, - remoteTransition: RemoteTransition? = null, - callback: IMoveToDesktopCallback? = null, - ): Boolean { - val task = recentTasksController?.findTaskInBackground(taskId) - if (task == null) { - logW("moveBackgroundTaskToDesktop taskId=%d not found", taskId) - return false - } - logV("moveBackgroundTaskToDesktop with taskId=%d to deskId=%d", taskId, deskId) - - val runOnTransitStart = addDeskActivationChanges(deskId, wct, task) - val exitResult = - desktopImmersiveController.exitImmersiveIfApplicable( - wct = wct, - displayId = DEFAULT_DISPLAY, - excludeTaskId = taskId, - reason = DesktopImmersiveController.ExitReason.TASK_LAUNCH, - ) - wct.startTask( - taskId, - ActivityOptions.makeBasic() - .apply { launchWindowingMode = WINDOWING_MODE_FREEFORM } - .toBundle(), - ) - - val transition: IBinder - if (remoteTransition != null) { - val transitionType = transitionType(remoteTransition) - val remoteTransitionHandler = OneShotRemoteHandler(mainExecutor, remoteTransition) - transition = transitions.startTransition(transitionType, wct, remoteTransitionHandler) - remoteTransitionHandler.setTransition(transition) - } else { - // TODO(343149901): Add DPI changes for task launch - transition = enterDesktopTaskTransitionHandler.moveToDesktop(wct, transitionSource) - invokeCallbackToOverview(transition, callback) - } - // Replaced by |IDesktopTaskListener#onActiveDeskChanged|. - if (!desktopState.enableMultipleDesktops) { - desktopModeEnterExitTransitionListener?.onEnterDesktopModeTransitionStarted( - toDesktopAnimationDurationMs - ) - } - runOnTransitStart?.invoke(transition) - exitResult.asExit()?.runOnTransitionStart?.invoke(transition) - return true - } - - /** Moves a running task to desktop. */ - private fun moveRunningTaskToDesk( + /** Move a task to desktop */ + fun moveToDesktop( task: RunningTaskInfo, - deskId: Int, wct: WindowContainerTransaction = WindowContainerTransaction(), transitionSource: DesktopModeTransitionSource, - remoteTransition: RemoteTransition? = null, - callback: IMoveToDesktopCallback? = null, - ): Boolean { - val displayId = taskRepository.getDisplayForDesk(deskId) - logV( - "moveRunningTaskToDesk taskId=%d deskId=%d displayId=%d", - task.taskId, - deskId, - displayId, + ) { + if (Flags.enableDesktopWindowingModalsPolicy() && isSingleTopActivityTranslucent(task)) { + KtProtoLog.w( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: Cannot enter desktop, " + + "translucent top activity found. This is likely a modal dialog." + ) + return + } + if (isSystemUIApplication(task)) { + KtProtoLog.w( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: Cannot enter desktop, " + + "systemUI top activity found." + ) + return + } + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: moveToDesktop taskId=%d", + task.taskId ) exitSplitIfApplicable(wct, task) - val exitResult = - desktopImmersiveController.exitImmersiveIfApplicable( - wct = wct, - displayId = displayId, - excludeTaskId = task.taskId, - reason = DesktopImmersiveController.ExitReason.TASK_LAUNCH, - ) + // Bring other apps to front first + val taskToMinimize = + bringDesktopAppsToFrontBeforeShowingNewTask(task.displayId, wct, task.taskId) + addMoveToDesktopChanges(wct, task) - val runOnTransitStart = addDeskActivationWithMovingTaskChanges(deskId, wct, task) - - val transition: IBinder - if (remoteTransition != null) { - val transitionType = transitionType(remoteTransition) - val remoteTransitionHandler = OneShotRemoteHandler(mainExecutor, remoteTransition) - transition = transitions.startTransition(transitionType, wct, remoteTransitionHandler) - remoteTransitionHandler.setTransition(transition) + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + val transition = enterDesktopTaskTransitionHandler.moveToDesktop(wct, transitionSource) + addPendingMinimizeTransition(transition, taskToMinimize) } else { - transition = enterDesktopTaskTransitionHandler.moveToDesktop(wct, transitionSource) - invokeCallbackToOverview(transition, callback) - } - // Replaced by |IDesktopTaskListener#onActiveDeskChanged|. - if (!desktopState.enableMultipleDesktops) { - desktopModeEnterExitTransitionListener?.onEnterDesktopModeTransitionStarted( - toDesktopAnimationDurationMs - ) - } - runOnTransitStart?.invoke(transition) - exitResult.asExit()?.runOnTransitionStart?.invoke(transition) - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - taskRepository.setActiveDesk(displayId = displayId, deskId = deskId) - } - return true - } - - private fun invokeCallbackToOverview(transition: IBinder, callback: IMoveToDesktopCallback?) { - // TODO: b/333524374 - Remove this later. - // This is a temporary implementation for adding CUJ end and - // should be removed when animation is moved to launcher through remote transition. - if (callback != null) { - overviewToDesktopTransitionObserver.addPendingOverviewTransition(transition, callback) + shellTaskOrganizer.applyTransaction(wct) } } @@ -1051,24 +390,15 @@ class DesktopTasksController( fun startDragToDesktop( taskInfo: RunningTaskInfo, dragToDesktopValueAnimator: MoveToDesktopAnimator, - taskSurface: SurfaceControl, - dragInterruptedCallback: Runnable, ) { - logV("startDragToDesktop taskId=%d", taskInfo.taskId) - val jankConfigBuilder = - InteractionJankMonitor.Configuration.Builder.withSurface( - CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD, - context, - taskSurface, - handler, - ) - .setTimeout(APP_HANDLE_DRAG_HOLD_CUJ_TIMEOUT_MS) - interactionJankMonitor.begin(jankConfigBuilder) + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: startDragToDesktop taskId=%d", + taskInfo.taskId + ) dragToDesktopTransitionHandler.startDragToDesktopTransition( - taskInfo, - dragToDesktopValueAnimator, - visualIndicator, - dragInterruptedCallback, + taskInfo.taskId, + dragToDesktopValueAnimator ) } @@ -1076,49 +406,21 @@ class DesktopTasksController( * The second part of the animated drag to desktop transition, called after * [startDragToDesktop]. */ - private fun finalizeDragToDesktop(taskInfo: RunningTaskInfo) { - val deskId = getOrCreateDefaultDeskId(taskInfo.displayId) ?: return - ProtoLog.v( + private fun finalizeDragToDesktop(taskInfo: RunningTaskInfo, freeformBounds: Rect) { + KtProtoLog.v( WM_SHELL_DESKTOP_MODE, - "DesktopTasksController: finalizeDragToDesktop taskId=%d deskId=%d", - taskInfo.taskId, - deskId, + "DesktopTasksController: finalizeDragToDesktop taskId=%d", + taskInfo.taskId ) val wct = WindowContainerTransaction() exitSplitIfApplicable(wct, taskInfo) - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - // |moveHomeTask| is also called in |bringDesktopAppsToFrontBeforeShowingNewTask|, so - // this shouldn't be necessary at all. - if (ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY.isTrue) { - moveHomeTaskToTop(taskInfo.displayId, wct) - } else { - moveHomeTaskToTop(context.displayId, wct) - } - } - val runOnTransitStart = addDeskActivationWithMovingTaskChanges(deskId, wct, taskInfo) - val exitResult = - desktopImmersiveController.exitImmersiveIfApplicable( - wct = wct, - displayId = taskInfo.displayId, - excludeTaskId = null, - reason = DesktopImmersiveController.ExitReason.TASK_LAUNCH, - ) + moveHomeTaskToFront(wct) + val taskToMinimize = + bringDesktopAppsToFrontBeforeShowingNewTask(taskInfo.displayId, wct, taskInfo.taskId) + addMoveToDesktopChanges(wct, taskInfo) + wct.setBounds(taskInfo.token, freeformBounds) val transition = dragToDesktopTransitionHandler.finishDragToDesktopTransition(wct) - // Replaced by |IDesktopTaskListener#onActiveDeskChanged|. - if (!desktopState.enableMultipleDesktops) { - desktopModeEnterExitTransitionListener?.onEnterDesktopModeTransitionStarted( - DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS.toInt() - ) - } - if (transition != null) { - runOnTransitStart?.invoke(transition) - exitResult.asExit()?.runOnTransitionStart?.invoke(transition) - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - taskRepository.setActiveDesk(displayId = taskInfo.displayId, deskId = deskId) - } - } else { - latencyTracker.onActionCancel(LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG) - } + transition?.let { addPendingMinimizeTransition(it, taskToMinimize) } } /** @@ -1131,9 +433,7 @@ class DesktopTasksController( fun onDesktopSplitSelectAnimComplete(taskInfo: RunningTaskInfo) { val wct = WindowContainerTransaction() wct.setBounds(taskInfo.token, Rect()) - if (!DesktopModeFlags.ENABLE_INPUT_LAYER_TRANSITION_FIX.isTrue) { - wct.setWindowingMode(taskInfo.token, WINDOWING_MODE_UNDEFINED) - } + wct.setWindowingMode(taskInfo.token, WINDOWING_MODE_UNDEFINED) shellTaskOrganizer.applyTransaction(wct) } @@ -1142,276 +442,53 @@ class DesktopTasksController( * active task. * * @param wct transaction to modify if the last active task is closed - * @param displayId display id of the window that's being closed * @param taskId task id of the window that's being closed */ - fun onDesktopWindowClose( - wct: WindowContainerTransaction, - displayId: Int, - taskInfo: RunningTaskInfo, - ): ((IBinder) -> Unit) { - val taskId = taskInfo.taskId - val deskId = taskRepository.getDeskIdForTask(taskInfo.taskId) - if (deskId == null && DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - error("Did not find desk for task: $taskId") - } - snapEventHandler.removeTaskIfTiled(displayId, taskId) - val shouldExitDesktop = - willExitDesktop( - triggerTaskId = taskInfo.taskId, - displayId = displayId, - forceExitDesktop = false, - ) - val desktopExitRunnable = - performDesktopExitCleanUp( - wct = wct, - deskId = deskId, - displayId = displayId, - willExitDesktop = shouldExitDesktop, - shouldEndUpAtHome = true, - ) - - taskRepository.addClosingTask(displayId = displayId, deskId = deskId, taskId = taskId) - taskbarDesktopTaskListener?.onTaskbarCornerRoundingUpdate( - doesAnyTaskRequireTaskbarRounding(displayId, taskId) - ) - - val immersiveRunnable = - desktopImmersiveController - .exitImmersiveIfApplicable( - wct = wct, - taskInfo = taskInfo, - reason = DesktopImmersiveController.ExitReason.CLOSED, - ) - .asExit() - ?.runOnTransitionStart - return { transitionToken -> - immersiveRunnable?.invoke(transitionToken) - desktopExitRunnable?.invoke(transitionToken) + fun onDesktopWindowClose(wct: WindowContainerTransaction, taskId: Int) { + if (desktopModeTaskRepository.isOnlyActiveTask(taskId)) { + removeWallpaperActivity(wct) } } - /** - * Returns the task that will be focused next after the current task (the given [taskInfo]) is - * removed, due to being minimized or closed. - * - * @param taskInfo the task that is being removed. - * @return the taskId of the next focused task, or [INVALID_TASK_ID] if no task is found. - */ - fun getNextFocusedTask(taskInfo: RunningTaskInfo): Int { - val deskId = getOrCreateDefaultDeskId(taskInfo.displayId) ?: return INVALID_TASK_ID - return taskRepository - .getExpandedTasksIdsInDeskOrdered(deskId) - // exclude current task since maximize/restore transition has not taken place yet. - .filterNot { it == taskInfo.taskId } - .firstOrNull { !taskRepository.isClosingTask(it) } ?: INVALID_TASK_ID - } - - fun minimizeTask(taskInfo: RunningTaskInfo, minimizeReason: MinimizeReason) { - val wct = WindowContainerTransaction() - val taskId = taskInfo.taskId - val displayId = taskInfo.displayId - val deskId = - taskRepository.getDeskIdForTask(taskInfo.taskId) - ?: if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - logW("minimizeTask: desk not found for task: ${taskInfo.taskId}") - return - } else { - getOrCreateDefaultDeskId(taskInfo.displayId) - } - val isLastTask = - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - taskRepository.isOnlyVisibleNonClosingTaskInDesk( - taskId = taskId, - deskId = checkNotNull(deskId) { "Expected non-null deskId" }, - displayId = displayId, - ) - } else { - taskRepository.isOnlyVisibleNonClosingTask(taskId = taskId, displayId = displayId) - } - snapEventHandler.removeTaskIfTiled(displayId, taskId) - val isMinimizingToPip = - DesktopExperienceFlags.ENABLE_DESKTOP_WINDOWING_PIP.isTrue && - (taskInfo.pictureInPictureParams?.isAutoEnterEnabled ?: false) && - isPipAllowedInAppOps(taskInfo) - logD( - "minimizeTask isMinimizingToPip=%b isAutoEnterEnabled=%b isPipAllowedInAppOps=%b", - isMinimizingToPip, - (taskInfo.pictureInPictureParams?.isAutoEnterEnabled ?: false), - isPipAllowedInAppOps(taskInfo), - ) - // If task is going to PiP, start a PiP transition instead of a minimize transition - if (isMinimizingToPip) { - val requestInfo = - TransitionRequestInfo( - TRANSIT_PIP, - /* triggerTask= */ null, - taskInfo, - /* remoteTransition= */ null, - /* displayChange= */ null, - /* flags= */ 0, - ) - val requestRes = - transitions.dispatchRequest(SYNTHETIC_TRANSITION, requestInfo, /* skip= */ null) - wct.merge(requestRes.second, true) - - // In multi-activity case, we either explicitly minimize the parent task, or reorder the - // parent task to the back so that it is not brought to the front and shown when the - // child task breaks off into PiP. - val isMultiActivityPip = taskInfo.numActivities > 1 - if (isMultiActivityPip) { - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - desksOrganizer.minimizeTask( - wct = wct, - deskId = checkNotNull(deskId) { "Expected non-null deskId" }, - task = taskInfo, - ) - } else { - wct.reorder(taskInfo.token, /* onTop= */ false) - } - } - - // If the task minimizing to PiP is the last task, modify wct to perform Desktop cleanup - var desktopExitRunnable: RunOnTransitStart? = null - if (isLastTask) { - desktopExitRunnable = - performDesktopExitCleanUp( - wct = wct, - deskId = deskId, - displayId = displayId, - willExitDesktop = true, - ) - } - val transition = freeformTaskTransitionStarter.startPipTransition(wct) - if (isMultiActivityPip) { - desktopTasksLimiter.ifPresent { - it.addPendingMinimizeChange( - transition = transition, - displayId = displayId, - taskId = taskId, - minimizeReason = minimizeReason, - ) - } - } - desktopExitRunnable?.invoke(transition) - } else { - val willExitDesktop = - if ( - DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue && - DesktopExperienceFlags.ENABLE_EMPTY_DESK_ON_MINIMIZE.isTrue - ) - false - else willExitDesktop(taskId, displayId, forceExitDesktop = false) - val desktopExitRunnable = - performDesktopExitCleanUp( - wct = wct, - deskId = deskId, - displayId = displayId, - willExitDesktop = willExitDesktop, - ) - // Notify immersive handler as it might need to exit immersive state. - val exitResult = - desktopImmersiveController.exitImmersiveIfApplicable( - wct = wct, - taskInfo = taskInfo, - reason = DesktopImmersiveController.ExitReason.MINIMIZED, - ) - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - desksOrganizer.minimizeTask( - wct = wct, - deskId = checkNotNull(deskId) { "Expected non-null deskId" }, - task = taskInfo, - ) - } else { - wct.reorder(taskInfo.token, /* onTop= */ false) - } - val transition = - freeformTaskTransitionStarter.startMinimizedModeTransition(wct, taskId, isLastTask) - desktopTasksLimiter.ifPresent { - it.addPendingMinimizeChange( - transition = transition, - displayId = displayId, - taskId = taskId, - minimizeReason = minimizeReason, - ) - } - exitResult.asExit()?.runOnTransitionStart?.invoke(transition) - desktopExitRunnable?.invoke(transition) - } - taskbarDesktopTaskListener?.onTaskbarCornerRoundingUpdate( - doesAnyTaskRequireTaskbarRounding(displayId, taskId) - ) - } - - /** Checks whether the given [taskInfo] is allowed to enter PiP in AppOps. */ - private fun isPipAllowedInAppOps(taskInfo: RunningTaskInfo): Boolean { - val packageName = - taskInfo.baseActivity?.packageName - ?: taskInfo.topActivity?.packageName - ?: taskInfo.origActivity?.packageName - ?: taskInfo.realActivity?.packageName - ?: return false - - val appOpsManager = - checkNotNull(context.getSystemService(Context.APP_OPS_SERVICE) as AppOpsManager) - try { - val appInfo = - context.packageManager.getApplicationInfoAsUser(packageName, /* flags= */ 0, userId) - return appOpsManager.checkOpNoThrow( - AppOpsManager.OP_PICTURE_IN_PICTURE, - appInfo.uid, - packageName, - ) == AppOpsManager.MODE_ALLOWED - } catch (_: PackageManager.NameNotFoundException) { - logW( - "isPipAllowedInAppOps: Failed to find applicationInfo for packageName=%s " + - "and userId=%d", - packageName, - userId, - ) - } - return false - } - - /** Move or launch a task with given [taskId] to fullscreen */ - @JvmOverloads - fun moveToFullscreen( - taskId: Int, - transitionSource: DesktopModeTransitionSource, - remoteTransition: RemoteTransition? = null, - ) { - val taskInfo: TaskInfo? = - shellTaskOrganizer.getRunningTaskInfo(taskId) - ?: if (enableAltTabKqsFlatenning.isTrue) { - recentTasksController?.findTaskInBackground(taskId) - } else { - null - } - taskInfo?.let { task -> - snapEventHandler.removeTaskIfTiled(task.displayId, taskId) - moveToFullscreenWithAnimation( - task, - task.positionInParent, - transitionSource, - remoteTransition, - ) + /** Move a task with given `taskId` to fullscreen */ + fun moveToFullscreen(taskId: Int, transitionSource: DesktopModeTransitionSource) { + shellTaskOrganizer.getRunningTaskInfo(taskId)?.let { task -> + moveToFullscreenWithAnimation(task, task.positionInParent, transitionSource) } } /** Enter fullscreen by moving the focused freeform task in given `displayId` to fullscreen. */ fun enterFullscreen(displayId: Int, transitionSource: DesktopModeTransitionSource) { - getFocusedDesktopTask(displayId)?.let { - snapEventHandler.removeTaskIfTiled(displayId, it.taskId) + getFocusedFreeformTask(displayId)?.let { moveToFullscreenWithAnimation(it, it.positionInParent, transitionSource) } } + /** Move a desktop app to split screen. */ + fun moveToSplit(task: RunningTaskInfo) { + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: moveToSplit taskId=%d", + task.taskId + ) + val wct = WindowContainerTransaction() + wct.setBounds(task.token, Rect()) + // Rather than set windowing mode to multi-window at task level, set it to + // undefined and inherit from split stage. + wct.setWindowingMode(task.token, WINDOWING_MODE_UNDEFINED) + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + transitions.startTransition(TRANSIT_CHANGE, wct, null /* handler */) + } else { + shellTaskOrganizer.applyTransaction(wct) + } + } + private fun exitSplitIfApplicable(wct: WindowContainerTransaction, taskInfo: RunningTaskInfo) { if (splitScreenController.isTaskInSplitScreen(taskInfo.taskId)) { splitScreenController.prepareExitSplitScreen( wct, splitScreenController.getStageOfTask(taskInfo.taskId), - EXIT_REASON_DESKTOP_MODE, + EXIT_REASON_DESKTOP_MODE ) splitScreenController.transitionHandler?.onSplitToDesktop() } @@ -1422,567 +499,135 @@ class DesktopTasksController( * [startDragToDesktop]. */ fun cancelDragToDesktop(task: RunningTaskInfo) { - logV("cancelDragToDesktop taskId=%d", task.taskId) + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: cancelDragToDesktop taskId=%d", + task.taskId + ) dragToDesktopTransitionHandler.cancelDragToDesktopTransition( DragToDesktopTransitionHandler.CancelState.STANDARD_CANCEL ) } private fun moveToFullscreenWithAnimation( - task: TaskInfo, + task: RunningTaskInfo, position: Point, - transitionSource: DesktopModeTransitionSource, - remoteTransition: RemoteTransition? = null, + transitionSource: DesktopModeTransitionSource ) { - logV("moveToFullscreenWithAnimation taskId=%d", task.taskId) - val displayId = - when { - task.displayId != INVALID_DISPLAY -> task.displayId - focusTransitionObserver.globallyFocusedDisplayId != INVALID_DISPLAY -> - focusTransitionObserver.globallyFocusedDisplayId - else -> DEFAULT_DISPLAY - } + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: moveToFullscreen with animation taskId=%d", + task.taskId + ) val wct = WindowContainerTransaction() + addMoveToFullscreenChanges(wct, task) - // When a task is background, update wct to start task. - if ( - enableAltTabKqsFlatenning.isTrue && - shellTaskOrganizer.getRunningTaskInfo(task.taskId) == null && - task is RecentTaskInfo - ) { - wct.startTask( - task.taskId, - // TODO(b/400817258): Use ActivityOptions Utils when available. - ActivityOptions.makeBasic() - .apply { - launchWindowingMode = WINDOWING_MODE_FULLSCREEN - launchDisplayId = displayId - pendingIntentBackgroundActivityStartMode = - ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS - } - .toBundle(), + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + exitDesktopTaskTransitionHandler.startTransition( + transitionSource, + wct, + position, + mOnAnimationFinishedCallback ) - } - val willExitDesktop = willExitDesktop(task.taskId, displayId, forceExitDesktop = true) - val deactivationRunnable = addMoveToFullscreenChanges(wct, task, willExitDesktop, displayId) - - // We are moving a freeform task to fullscreen, put the home task under the fullscreen task. - if (!forceEnterDesktop(displayId)) { - moveHomeTaskToTop(displayId, wct) - wct.reorder(task.token, /* onTop= */ true) - } - - val transition = - if (remoteTransition != null) { - val transitionType = transitionType(remoteTransition) - val remoteTransitionHandler = OneShotRemoteHandler(mainExecutor, remoteTransition) - transitions.startTransition(transitionType, wct, remoteTransitionHandler).also { - remoteTransitionHandler.setTransition(it) - } - } else { - exitDesktopTaskTransitionHandler.startTransition( - transitionSource, - wct, - position, - mOnAnimationFinishedCallback, - ) - } - deactivationRunnable?.invoke(transition) - - // handles case where we are moving to full screen without closing all DW tasks. - if ( - !taskRepository.isOnlyVisibleNonClosingTask(task.taskId) - // This callback is already invoked by |addMoveToFullscreenChanges| when this flag is - // enabled. - && - !DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue - // Replaced by |IDesktopTaskListener#onActiveDeskChanged|. - && - !desktopState.enableMultipleDesktops - ) { - desktopModeEnterExitTransitionListener?.onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - } - } - - /** - * Move a task to the front, using [remoteTransition]. - * - * Note: beyond moving a task to the front, this method will minimize a task if we reach the - * Desktop task limit, so [remoteTransition] should also handle any such minimize change. - */ - @JvmOverloads - fun moveTaskToFront( - taskId: Int, - remoteTransition: RemoteTransition? = null, - unminimizeReason: UnminimizeReason, - ) { - val task = shellTaskOrganizer.getRunningTaskInfo(taskId) - if (task == null) { - moveBackgroundTaskToFront(taskId, remoteTransition, unminimizeReason) } else { - moveTaskToFront(task, remoteTransition, unminimizeReason) + shellTaskOrganizer.applyTransaction(wct) + releaseVisualIndicator() } } - /** - * Launch a background task in desktop. Note that this should be used when we are already in - * desktop. If outside of desktop and want to launch a background task in desktop, use - * [moveBackgroundTaskToDesktop] instead. - */ - private fun moveBackgroundTaskToFront( - taskId: Int, - remoteTransition: RemoteTransition?, - unminimizeReason: UnminimizeReason, - ) { - logV("moveBackgroundTaskToFront taskId=%s unminimizeReason=%s", taskId, unminimizeReason) - val wct = WindowContainerTransaction() - val deskIdForTask = taskRepository.getDeskIdForTask(taskId) - val deskId = - if (deskIdForTask != null) { - deskIdForTask - } else { - val task = recentTasksController?.findTaskInBackground(taskId) - val displayId = getDisplayIdForTaskOrDefault(task) - logV( - "background taskId=%s did not have desk associated, " + - "using default desk of displayId=%d", - taskId, - displayId, - ) - getOrCreateDefaultDeskId(displayId) ?: return - } - val displayId = - if (ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY.isTrue) - taskRepository.getDisplayForDesk(deskId) - else DEFAULT_DISPLAY - wct.startTask( - taskId, - ActivityOptions.makeBasic() - .apply { - launchWindowingMode = WINDOWING_MODE_FREEFORM - launchDisplayId = displayId - } - .toBundle(), - ) - startLaunchTransition( - TRANSIT_OPEN, - wct, - taskId, - deskId = deskId, - displayId = displayId, - remoteTransition = remoteTransition, - unminimizeReason = unminimizeReason, - ) + /** Move a task to the front */ + fun moveTaskToFront(taskId: Int) { + shellTaskOrganizer.getRunningTaskInfo(taskId)?.let { task -> moveTaskToFront(task) } } - /** - * Move a task to the front, using [remoteTransition]. - * - * Note: beyond moving a task to the front, this method will minimize a task if we reach the - * Desktop task limit, so [remoteTransition] should also handle any such minimize change. - */ - @JvmOverloads - fun moveTaskToFront( - taskInfo: RunningTaskInfo, - remoteTransition: RemoteTransition? = null, - unminimizeReason: UnminimizeReason = UnminimizeReason.UNKNOWN, - ) { - val deskId = taskRepository.getDeskIdForTask(taskInfo.taskId) - logV("moveTaskToFront taskId=%s deskId=%s", taskInfo.taskId, deskId) - val wct = WindowContainerTransaction() - addMoveTaskToFrontChanges(wct = wct, deskId = deskId, taskInfo = taskInfo) - startLaunchTransition( - transitionType = TRANSIT_TO_FRONT, - wct = wct, - launchingTaskId = taskInfo.taskId, - remoteTransition = remoteTransition, - deskId = deskId, - displayId = taskInfo.displayId, - unminimizeReason = unminimizeReason, + /** Move a task to the front */ + fun moveTaskToFront(taskInfo: RunningTaskInfo) { + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: moveTaskToFront taskId=%d", + taskInfo.taskId ) - } - /** Applies the necessary [wct] changes to move [taskInfo] to front. */ - fun addMoveTaskToFrontChanges( - wct: WindowContainerTransaction, - deskId: Int?, - taskInfo: RunningTaskInfo, - ) { - logV("addMoveTaskToFrontChanges taskId=%s deskId=%s", taskInfo.taskId, deskId) - // If a task is tiled, another task should be brought to foreground with it so let - // tiling controller handle the request. - if (snapEventHandler.moveTaskToFrontIfTiled(taskInfo)) { - return - } - if (deskId == null || !DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - // Not a desktop task, just move to the front. - wct.reorder(taskInfo.token, /* onTop= */ true, /* includingParents= */ true) + val wct = WindowContainerTransaction() + wct.reorder(taskInfo.token, true) + val taskToMinimize = addAndGetMinimizeChangesIfNeeded(taskInfo.displayId, wct, taskInfo) + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + val transition = transitions.startTransition(TRANSIT_TO_FRONT, wct, null /* handler */) + addPendingMinimizeTransition(transition, taskToMinimize) } else { - // A desktop task with multiple desks enabled, reorder it within its desk. - desksOrganizer.reorderTaskToFront(wct, deskId, taskInfo) + shellTaskOrganizer.applyTransaction(wct) } } - /** - * Starts a launch transition with [transitionType] using [wct]. - * - * @param transitionType the type of transition to start. - * @param wct the wct to use in the transition, which may already container changes. - * @param launchingTaskId the id of task launching, may be null if starting the task through an - * intent in the [wct]. - * @param remoteTransition the remote transition associated with this transition start. - * @param deskId may be null if the launching task isn't launching into a desk, such as when - * fullscreen or split tasks are just moved to front. - * @param displayId the display in which the launch is happening. - * @param unminimizeReason the reason to unminimize. - */ - @VisibleForTesting - fun startLaunchTransition( - transitionType: Int, - wct: WindowContainerTransaction, - launchingTaskId: Int?, - remoteTransition: RemoteTransition? = null, - deskId: Int?, - displayId: Int, - unminimizeReason: UnminimizeReason = UnminimizeReason.UNKNOWN, - dragEvent: DragEvent? = null, - ): IBinder { - logV( - "startLaunchTransition type=%s launchingTaskId=%d deskId=%d displayId=%d", - transitTypeToString(transitionType), - launchingTaskId, - deskId, - displayId, - ) - // TODO: b/397619806 - Consolidate sharable logic with [handleFreeformTaskLaunch]. - var launchTransaction = wct - // TODO: b/32994943 - remove dead code when cleaning up task_limit_separate_transition flag - val taskIdToMinimize = - deskId?.let { - addAndGetMinimizeChanges( - deskId = it, - wct = launchTransaction, - newTaskId = launchingTaskId, - launchingNewIntent = launchingTaskId == null, - ) - } - val closingTopTransparentTaskId = - deskId?.let { taskRepository.getTopTransparentFullscreenTaskData(it)?.taskId } - val exitImmersiveResult = - desktopImmersiveController.exitImmersiveIfApplicable( - wct = launchTransaction, - displayId = displayId, - excludeTaskId = launchingTaskId, - reason = DesktopImmersiveController.ExitReason.TASK_LAUNCH, - ) - var activationRunOnTransitStart: RunOnTransitStart? = null - val shouldActivateDesk = - when { - deskId == null -> false - DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue -> - !taskRepository.isDeskActive(deskId) - DesktopExperienceFlags.ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING.isTrue -> - !isAnyDeskActive(displayId) - else -> false - } - if (shouldActivateDesk) { - val activateDeskWct = WindowContainerTransaction() - // TODO: b/391485148 - pass in the launching task here to apply task-limit policy, - // but make sure to not do it twice since it is also done at the start of this - // function. - activationRunOnTransitStart = - addDeskActivationChanges( - deskId = checkNotNull(deskId) { "Desk id must be non-null when activating" }, - wct = activateDeskWct, - ) - // Desk activation must be handled before app launch-related transactions. - activateDeskWct.merge(launchTransaction, /* transfer= */ true) - launchTransaction = activateDeskWct - // Replaced by |IDesktopTaskListener#onActiveDeskChanged|. - if (!desktopState.enableMultipleDesktops) { - desktopModeEnterExitTransitionListener?.onEnterDesktopModeTransitionStarted( - toDesktopAnimationDurationMs - ) - } - } - // Remove top transparent fullscreen task if needed. - deskId?.let { closeTopTransparentFullscreenTask(launchTransaction, it) } - val t = - if (remoteTransition == null) { - logV("startLaunchTransition -- no remoteTransition -- wct = $launchTransaction") - desktopMixedTransitionHandler.startLaunchTransition( - transitionType = transitionType, - wct = launchTransaction, - taskId = launchingTaskId, - minimizingTaskId = taskIdToMinimize, - closingTopTransparentTaskId = closingTopTransparentTaskId, - exitingImmersiveTask = exitImmersiveResult.asExit()?.exitingTask, - dragEvent = dragEvent, - ) - } else if (taskIdToMinimize == null) { - // TODO(b/412761429): Move OneShotRemoteHandler call to within - // DesktopMixedTransitionHandler. - val remoteTransitionHandler = OneShotRemoteHandler(mainExecutor, remoteTransition) - transitions - .startTransition(transitionType, launchTransaction, remoteTransitionHandler) - .also { remoteTransitionHandler.setTransition(it) } - } else { - val remoteTransitionHandler = - DesktopWindowLimitRemoteHandler( - mainExecutor, - rootTaskDisplayAreaOrganizer, - remoteTransition, - taskIdToMinimize, - ) - transitions - .startTransition(transitionType, launchTransaction, remoteTransitionHandler) - .also { remoteTransitionHandler.setTransition(it) } - } - if (taskIdToMinimize != null) { - addPendingMinimizeTransition(t, taskIdToMinimize, MinimizeReason.TASK_LIMIT) - } - if (deskId != null) { - addPendingTaskLimitTransition(t, deskId, launchingTaskId) - } - if (launchingTaskId != null && taskRepository.isMinimizedTask(launchingTaskId)) { - addPendingUnminimizeTransition(t, displayId, launchingTaskId, unminimizeReason) - } - activationRunOnTransitStart?.invoke(t) - exitImmersiveResult.asExit()?.runOnTransitionStart?.invoke(t) - return t - } - /** * Move task to the next display. * - * Queries all currently known display IDs and checks if they match the predicate. The check is - * performed in an order such that display IDs greater than the passed task's displayId are - * considered before display IDs less than or equal to the passed task's displayID. Within each - * of these two groups, the check is performed in ascending order. + * Queries all current known display ids and sorts them in ascending order. Then iterates + * through the list and looks for the display id that is larger than the display id for the + * passed in task. If a display with a higher id is not found, iterates through the list and + * finds the first display id that is not the display id for the passed in task. * - * If a display ID matches predicate is found, re-parents the task to that display. No-op if no - * such display is found. + * If a display matching the above criteria is found, re-parents the task to that display. No-op + * if no such display is found. */ - fun moveToNextDisplay(taskId: Int, predicate: (Int) -> Boolean = { true }) { + fun moveToNextDisplay(taskId: Int) { val task = shellTaskOrganizer.getRunningTaskInfo(taskId) if (task == null) { - logW("moveToNextDisplay: taskId=%d not found", taskId) + KtProtoLog.w(WM_SHELL_DESKTOP_MODE, "moveToNextDisplay: taskId=%d not found", taskId) return } + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "moveToNextDisplay: taskId=%d taskDisplayId=%d", + taskId, + task.displayId + ) - val newDisplayId = - rootTaskDisplayAreaOrganizer.displayIds - .sortedBy { (it - task.displayId - 1).mod(Int.MAX_VALUE) } - .find(predicate) + val displayIds = rootTaskDisplayAreaOrganizer.displayIds.sorted() + // Get the first display id that is higher than current task display id + var newDisplayId = displayIds.firstOrNull { displayId -> displayId > task.displayId } if (newDisplayId == null) { - logW("moveToNextDisplay: next display not found") + // No display with a higher id, get the first display id that is not the task display id + newDisplayId = displayIds.firstOrNull { displayId -> displayId < task.displayId } + } + if (newDisplayId == null) { + KtProtoLog.w(WM_SHELL_DESKTOP_MODE, "moveToNextDisplay: next display not found") return } - // moveToDisplay is no-op if newDisplayId is same with task.displayId. moveToDisplay(task, newDisplayId) } - /** Move task to the next display which can host desktop tasks. */ - fun moveToNextDesktopDisplay(taskId: Int) = - moveToNextDisplay(taskId) { displayId -> - desktopState.isDesktopModeSupportedOnDisplay(displayId) - } - /** - * Start an intent through a launch transition for starting tasks whose transition does not get - * handled by [handleRequest] + * Move [task] to display with [displayId]. + * + * No-op if task is already on that display per [RunningTaskInfo.displayId]. */ - fun startLaunchIntentTransition(intent: Intent, options: Bundle, displayId: Int) { - val wct = WindowContainerTransaction() - val displayLayout = displayController.getDisplayLayout(displayId) ?: return - val bounds = calculateDefaultDesktopTaskBounds(displayLayout) - val deskId = getOrCreateDefaultDeskId(displayId) ?: return - if (DesktopModeFlags.ENABLE_CASCADING_WINDOWS.isTrue) { - val stableBounds = Rect().also { displayLayout.getStableBounds(it) } - cascadeWindow(bounds, displayLayout, deskId, stableBounds) - } - val pendingIntent = - PendingIntent.getActivityAsUser( - context, - /* requestCode= */ 0, - intent, - PendingIntent.FLAG_IMMUTABLE or PendingIntent.FLAG_ONE_SHOT, - /* options= */ null, - UserHandle.of(userId), - ) - val ops = - ActivityOptions.fromBundle(options).apply { - launchWindowingMode = WINDOWING_MODE_FREEFORM - pendingIntentBackgroundActivityStartMode = - ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS - launchBounds = bounds - launchDisplayId = displayId - if (DesktopModeFlags.ENABLE_SHELL_INITIAL_BOUNDS_REGRESSION_BUG_FIX.isTrue) { - // Sets launch bounds size as flexible so core can recalculate. - flexibleLaunchSize = true - } - } - - wct.sendPendingIntent(pendingIntent, intent, ops.toBundle()) - startLaunchTransition( - TRANSIT_OPEN, - wct, - launchingTaskId = null, - deskId = deskId, - displayId = displayId, + private fun moveToDisplay(task: RunningTaskInfo, displayId: Int) { + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "moveToDisplay: taskId=%d displayId=%d", + task.taskId, + displayId ) - } - /** - * Move [task] to display with [displayId]. When [bounds] is not null, it will be used as the - * bounds on the new display. When [transitionHandler] is not null, it will be used instead of - * the default [DesktopModeMoveToDisplayTransitionHandler]. - * - * No-op if task is already on that display per [RunningTaskInfo.displayId]. - * - * TODO: b/399411604 - split this up into smaller functions. - */ - private fun moveToDisplay( - task: RunningTaskInfo, - displayId: Int, - bounds: Rect? = null, - transitionHandler: TransitionHandler? = null, - ) { - logV("moveToDisplay: taskId=%d displayId=%d", task.taskId, displayId) if (task.displayId == displayId) { - logD("moveToDisplay: task already on display %d", displayId) + KtProtoLog.d(WM_SHELL_DESKTOP_MODE, "moveToDisplay: task already on display") return } - if (splitScreenController.isTaskInSplitScreen(task.taskId)) { - moveSplitPairToDisplay(task, displayId) + val displayAreaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(displayId) + if (displayAreaInfo == null) { + KtProtoLog.w(WM_SHELL_DESKTOP_MODE, "moveToDisplay: display not found") return } val wct = WindowContainerTransaction() - val displayAreaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(displayId) - if (displayAreaInfo == null) { - logW("moveToDisplay: display not found") - return - } - - val destinationDeskId = taskRepository.getDefaultDeskId(displayId) - if (destinationDeskId == null) { - logW("moveToDisplay: desk not found for display: $displayId") - return - } - snapEventHandler.removeTaskIfTiled(task.displayId, task.taskId) - // TODO: b/393977830 and b/397437641 - do not assume that freeform==desktop. - if (!task.isFreeform) { - addMoveToDeskTaskChanges(wct = wct, task = task, deskId = destinationDeskId) + wct.reparent(task.token, displayAreaInfo.token, true /* onTop */) + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + transitions.startTransition(TRANSIT_CHANGE, wct, null /* handler */) } else { - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - desksOrganizer.moveTaskToDesk(wct, destinationDeskId, task) - } - if (bounds != null) { - wct.setBounds(task.token, bounds) - } else if (DesktopExperienceFlags.ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT.isTrue) { - applyFreeformDisplayChange(wct, task, displayId, destinationDeskId) - } + shellTaskOrganizer.applyTransaction(wct) } - - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - wct.reparent(task.token, displayAreaInfo.token, /* onTop= */ true) - } - - val activationRunnable = addDeskActivationChanges(destinationDeskId, wct, task) - - val sourceDisplayId = task.displayId - val sourceDeskId = taskRepository.getDeskIdForTask(task.taskId) - val shouldExitDesktopIfNeeded = - ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY.isTrue || - DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue - val deactivationRunnable = - if (shouldExitDesktopIfNeeded) { - performDesktopExitCleanupIfNeeded( - taskId = task.taskId, - deskId = sourceDeskId, - displayId = sourceDisplayId, - wct = wct, - forceToFullscreen = false, - ) - } else { - null - } - if (DesktopExperienceFlags.ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS.isTrue) { - // Bring the destination display to top with includingParents=true, so that the - // destination display gains the display focus, which makes the top task in the display - // gains the global focus. This must be done after performDesktopExitCleanupIfNeeded. - // The method launches Launcher on the source display when the last task is moved, which - // brings the source display to the top. Calling reorder after - // performDesktopExitCleanupIfNeeded ensures that the destination display becomes the - // top (focused) display. - wct.reorder(task.token, /* onTop= */ true, /* includingParents= */ true) - } - val transition = - transitions.startTransition( - TRANSIT_CHANGE, - wct, - transitionHandler ?: moveToDisplayTransitionHandler, - ) - deactivationRunnable?.invoke(transition) - activationRunnable?.invoke(transition) - } - - /** - * Move split pair associated with the [task] to display with [displayId]. - * - * No-op if task is already on that display per [RunningTaskInfo.displayId]. - */ - private fun moveSplitPairToDisplay(task: RunningTaskInfo, displayId: Int) { - if (!splitScreenController.isTaskInSplitScreen(task.taskId)) { - return - } - - if ( - !ENABLE_NON_DEFAULT_DISPLAY_SPLIT.isTrue || - !DesktopExperienceFlags.ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT.isTrue - ) { - return - } - - val wct = WindowContainerTransaction() - val displayAreaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(displayId) - if (displayAreaInfo == null) { - logW("moveSplitPairToDisplay: display not found") - return - } - - val activeDeskId = taskRepository.getActiveDeskId(displayId) - logV("moveSplitPairToDisplay: moving split root to displayId=%d", displayId) - - val stageCoordinatorRootTaskToken = - splitScreenController.multiDisplayProvider.getDisplayRootForDisplayId(DEFAULT_DISPLAY) - if (stageCoordinatorRootTaskToken == null) { - return - } - wct.reparent(stageCoordinatorRootTaskToken, displayAreaInfo.token, true /* onTop */) - - val deactivationRunnable = - if (activeDeskId != null) { - // Split is being placed on top of an existing desk in the target display. Make - // sure it is cleaned up. - performDesktopExitCleanUp( - wct = wct, - deskId = activeDeskId, - displayId = displayId, - willExitDesktop = true, - shouldEndUpAtHome = false, - ) - } else { - null - } - val transition = transitions.startTransition(TRANSIT_CHANGE, wct, /* handler= */ null) - deactivationRunnable?.invoke(transition) - return } /** @@ -1990,311 +635,80 @@ class DesktopTasksController( * bounds) and a free floating state (either the last saved bounds if available or the default * bounds otherwise). */ - fun toggleDesktopTaskSize(taskInfo: RunningTaskInfo, interaction: ToggleTaskSizeInteraction) { - val currentTaskBounds = taskInfo.configuration.windowConfiguration.bounds - desktopModeEventLogger.logTaskResizingStarted( - interaction.resizeTrigger, - interaction.inputMethod, - taskInfo, - currentTaskBounds.width(), - currentTaskBounds.height(), - displayController, - ) + fun toggleDesktopTaskSize(taskInfo: RunningTaskInfo) { val displayLayout = displayController.getDisplayLayout(taskInfo.displayId) ?: return + + val stableBounds = Rect() + displayLayout.getStableBounds(stableBounds) val destinationBounds = Rect() - val isMaximized = interaction.direction == ToggleTaskSizeInteraction.Direction.RESTORE - // If the task is currently maximized, we will toggle it not to be and vice versa. This is - // helpful to eliminate the current task from logic to calculate taskbar corner rounding. - val willMaximize = interaction.direction == ToggleTaskSizeInteraction.Direction.MAXIMIZE - if (isMaximized) { - // The desktop task is at the maximized width and/or height of the stable bounds. - // If the task's pre-maximize stable bounds were saved, toggle the task to those bounds. - // Otherwise, toggle to the default bounds. + if (taskInfo.configuration.windowConfiguration.bounds == stableBounds) { + // The desktop task is currently occupying the whole stable bounds. If the bounds + // before the task was toggled to stable bounds were saved, toggle the task to those + // bounds. Otherwise, toggle to the default bounds. val taskBoundsBeforeMaximize = - taskRepository.removeBoundsBeforeMaximize(taskInfo.taskId) + desktopModeTaskRepository.removeBoundsBeforeMaximize(taskInfo.taskId) if (taskBoundsBeforeMaximize != null) { destinationBounds.set(taskBoundsBeforeMaximize) } else { - if (ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS.isTrue()) { + if (Flags.enableWindowingDynamicInitialBounds()) { destinationBounds.set(calculateInitialBounds(displayLayout, taskInfo)) } else { - destinationBounds.set(calculateDefaultDesktopTaskBounds(displayLayout)) + destinationBounds.set(getDefaultDesktopTaskBounds(displayLayout)) } } } else { // Save current bounds so that task can be restored back to original bounds if necessary // and toggle to the stable bounds. - snapEventHandler.removeTaskIfTiled(taskInfo.displayId, taskInfo.taskId) - taskRepository.saveBoundsBeforeMaximize(taskInfo.taskId, currentTaskBounds) - destinationBounds.set(calculateMaximizeBounds(displayLayout, taskInfo)) + val taskBounds = taskInfo.configuration.windowConfiguration.bounds + desktopModeTaskRepository.saveBoundsBeforeMaximize(taskInfo.taskId, taskBounds) + destinationBounds.set(stableBounds) } - val shouldRestoreToSnap = - isMaximized && isTaskSnappedToHalfScreen(taskInfo, destinationBounds) - - logD("willMaximize = %s", willMaximize) - logD("shouldRestoreToSnap = %s", shouldRestoreToSnap) - - val doesAnyTaskRequireTaskbarRounding = - willMaximize || - shouldRestoreToSnap || - doesAnyTaskRequireTaskbarRounding(taskInfo.displayId, taskInfo.taskId) - - taskbarDesktopTaskListener?.onTaskbarCornerRoundingUpdate(doesAnyTaskRequireTaskbarRounding) val wct = WindowContainerTransaction().setBounds(taskInfo.token, destinationBounds) - interaction.uiEvent?.let { uiEvent -> desktopModeUiEventLogger.log(taskInfo, uiEvent) } - desktopModeEventLogger.logTaskResizingEnded( - interaction.resizeTrigger, - interaction.inputMethod, - taskInfo, - destinationBounds.width(), - destinationBounds.height(), - displayController, - ) - toggleResizeDesktopTaskTransitionHandler.startTransition( - wct, - interaction.animationStartBounds, - ) - } - - private fun dragToMaximizeDesktopTask( - taskInfo: RunningTaskInfo, - taskSurface: SurfaceControl, - currentDragBounds: Rect, - motionEvent: MotionEvent, - ) { - if (isTaskMaximized(taskInfo, displayController)) { - // Handle the case where we attempt to drag-to-maximize when already maximized: the task - // position won't need to change but we want to animate the surface going back to the - // maximized position. - val containerBounds = taskInfo.configuration.windowConfiguration.bounds - if (containerBounds != currentDragBounds) { - returnToDragStartAnimator.start( - taskInfo.taskId, - taskSurface, - startBounds = currentDragBounds, - endBounds = containerBounds, - ) - } - return + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + toggleResizeDesktopTaskTransitionHandler.startTransition(wct) + } else { + shellTaskOrganizer.applyTransaction(wct) } - - toggleDesktopTaskSize( - taskInfo, - ToggleTaskSizeInteraction( - direction = ToggleTaskSizeInteraction.Direction.MAXIMIZE, - source = ToggleTaskSizeInteraction.Source.HEADER_DRAG_TO_TOP, - inputMethod = DesktopModeEventLogger.getInputMethodFromMotionEvent(motionEvent), - animationStartBounds = currentDragBounds, - ), - ) - } - - private fun isMaximizedToStableBoundsEdges( - taskInfo: RunningTaskInfo, - stableBounds: Rect, - ): Boolean { - val currentTaskBounds = taskInfo.configuration.windowConfiguration.bounds - return isTaskBoundsEqual(currentTaskBounds, stableBounds) - } - - /** Returns if current task bound is snapped to half screen */ - private fun isTaskSnappedToHalfScreen( - taskInfo: RunningTaskInfo, - taskBounds: Rect = taskInfo.configuration.windowConfiguration.bounds, - ): Boolean = - getSnapBounds(taskInfo.displayId, SnapPosition.LEFT) == taskBounds || - getSnapBounds(taskInfo.displayId, SnapPosition.RIGHT) == taskBounds - - @VisibleForTesting - fun doesAnyTaskRequireTaskbarRounding(displayId: Int, excludeTaskId: Int? = null): Boolean { - val doesAnyTaskRequireTaskbarRounding = - taskRepository - .getExpandedTasksOrdered(displayId) - // exclude current task since maximize/restore transition has not taken place yet. - .filterNot { taskId -> taskId == excludeTaskId } - .any { taskId -> - val taskInfo = shellTaskOrganizer.getRunningTaskInfo(taskId) ?: return false - val displayLayout = displayController.getDisplayLayout(taskInfo.displayId) - val stableBounds = Rect().also { displayLayout?.getStableBounds(it) } - logD("taskInfo = %s", taskInfo) - logD( - "isTaskSnappedToHalfScreen(taskInfo) = %s", - isTaskSnappedToHalfScreen(taskInfo), - ) - logD( - "isMaximizedToStableBoundsEdges(taskInfo, stableBounds) = %s", - isMaximizedToStableBoundsEdges(taskInfo, stableBounds), - ) - isTaskSnappedToHalfScreen(taskInfo) || - isMaximizedToStableBoundsEdges(taskInfo, stableBounds) - } - - logD("doesAnyTaskRequireTaskbarRounding = %s", doesAnyTaskRequireTaskbarRounding) - return doesAnyTaskRequireTaskbarRounding } /** * Quick-resize to the right or left half of the stable bounds. * - * @param taskInfo current task that is being snap-resized via dragging or maximize menu button - * @param taskSurface the leash of the task being dragged - * @param currentDragBounds current position of the task leash being dragged (or current task - * bounds if being snapped resize via maximize menu button) * @param position the portion of the screen (RIGHT or LEFT) we want to snap the task to. */ - fun snapToHalfScreen( - taskInfo: RunningTaskInfo, - taskSurface: SurfaceControl?, - currentDragBounds: Rect, - position: SnapPosition, - resizeTrigger: ResizeTrigger, - inputMethod: InputMethod, - ) { - desktopModeEventLogger.logTaskResizingStarted( - resizeTrigger, - inputMethod, - taskInfo, - currentDragBounds.width(), - currentDragBounds.height(), - displayController, - ) + fun snapToHalfScreen(taskInfo: RunningTaskInfo, position: SnapPosition) { + val destinationBounds = getSnapBounds(taskInfo, position) - val destinationBounds = getSnapBounds(taskInfo.displayId, position) - desktopModeEventLogger.logTaskResizingEnded( - resizeTrigger, - inputMethod, - taskInfo, - destinationBounds.width(), - destinationBounds.height(), - displayController, - ) + if (destinationBounds == taskInfo.configuration.windowConfiguration.bounds) return - if (DesktopExperienceFlags.ENABLE_TILE_RESIZING.isTrue()) { - val isTiled = snapEventHandler.snapToHalfScreen(taskInfo, currentDragBounds, position) - if (isTiled) { - taskbarDesktopTaskListener?.onTaskbarCornerRoundingUpdate(true) - } - return - } - - if (destinationBounds == taskInfo.configuration.windowConfiguration.bounds) { - // Handle the case where we attempt to snap resize when already snap resized: the task - // position won't need to change but we want to animate the surface going back to the - // snapped position from the "dragged-to-the-edge" position. - if (destinationBounds != currentDragBounds && taskSurface != null) { - returnToDragStartAnimator.start( - taskInfo.taskId, - taskSurface, - startBounds = currentDragBounds, - endBounds = destinationBounds, - ) - } - return - } - - taskbarDesktopTaskListener?.onTaskbarCornerRoundingUpdate(true) val wct = WindowContainerTransaction().setBounds(taskInfo.token, destinationBounds) - - toggleResizeDesktopTaskTransitionHandler.startTransition(wct, currentDragBounds) + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + toggleResizeDesktopTaskTransitionHandler.startTransition(wct) + } else { + shellTaskOrganizer.applyTransaction(wct) + } } - /** - * Handles snap resizing a [taskInfo] to [position] instantaneously, for example when the - * [resizeTrigger] is the snap resize menu using any [motionEvent] or a keyboard shortcut. - */ - fun handleInstantSnapResizingTask( - taskInfo: RunningTaskInfo, - position: SnapPosition, - resizeTrigger: ResizeTrigger, - inputMethod: InputMethod, - ) { - if (!isSnapResizingAllowed(taskInfo)) { - Toast.makeText( - getContext(), - R.string.desktop_mode_non_resizable_snap_text, - Toast.LENGTH_SHORT, - ) - .show() - return - } - - snapToHalfScreen( - taskInfo, - null, - taskInfo.configuration.windowConfiguration.bounds, - position, - resizeTrigger, - inputMethod, + private fun getDefaultDesktopTaskBounds(displayLayout: DisplayLayout): Rect { + // TODO(b/319819547): Account for app constraints so apps do not become letterboxed + val desiredWidth = (displayLayout.width() * DESKTOP_MODE_INITIAL_BOUNDS_SCALE).toInt() + val desiredHeight = (displayLayout.height() * DESKTOP_MODE_INITIAL_BOUNDS_SCALE).toInt() + val heightOffset = (displayLayout.height() - desiredHeight) / 2 + val widthOffset = (displayLayout.width() - desiredWidth) / 2 + return Rect( + widthOffset, + heightOffset, + desiredWidth + widthOffset, + desiredHeight + heightOffset ) } - @VisibleForTesting - fun handleSnapResizingTaskOnDrag( - taskInfo: RunningTaskInfo, - position: SnapPosition, - taskSurface: SurfaceControl, - currentDragBounds: Rect, - dragStartBounds: Rect, - motionEvent: MotionEvent, - ) { - releaseVisualIndicator() - if (!isSnapResizingAllowed(taskInfo)) { - interactionJankMonitor.begin( - taskSurface, - context, - handler, - CUJ_DESKTOP_MODE_SNAP_RESIZE, - "drag_non_resizable", - ) + private fun getSnapBounds(taskInfo: RunningTaskInfo, position: SnapPosition): Rect { + val displayLayout = displayController.getDisplayLayout(taskInfo.displayId) ?: return Rect() - // reposition non-resizable app back to its original position before being dragged - returnToDragStartAnimator.start( - taskInfo.taskId, - taskSurface, - startBounds = currentDragBounds, - endBounds = dragStartBounds, - doOnEnd = { - Toast.makeText( - context, - com.android.wm.shell.R.string.desktop_mode_non_resizable_snap_text, - Toast.LENGTH_SHORT, - ) - .show() - }, - ) - } else { - val resizeTrigger = - if (position == SnapPosition.LEFT) { - ResizeTrigger.DRAG_LEFT - } else { - ResizeTrigger.DRAG_RIGHT - } - interactionJankMonitor.begin( - taskSurface, - context, - handler, - CUJ_DESKTOP_MODE_SNAP_RESIZE, - "drag_resizable", - ) - snapToHalfScreen( - taskInfo, - taskSurface, - currentDragBounds, - position, - resizeTrigger, - DesktopModeEventLogger.getInputMethodFromMotionEvent(motionEvent), - ) - } - } - - private fun isSnapResizingAllowed(taskInfo: RunningTaskInfo) = - taskInfo.isResizeable || !DISABLE_NON_RESIZABLE_APP_SNAP_RESIZE.isTrue() - - private fun getSnapBounds(displayId: Int, position: SnapPosition): Rect { - val displayLayout = displayController.getDisplayLayout(displayId) ?: return Rect() - - val stableBounds = Rect().also { displayLayout.getStableBounds(it) } + val stableBounds = Rect() + displayLayout.getStableBounds(stableBounds) val destinationWidth = stableBounds.width() / 2 return when (position) { @@ -2303,7 +717,7 @@ class DesktopTasksController( stableBounds.left, stableBounds.top, stableBounds.left + destinationWidth, - stableBounds.bottom, + stableBounds.bottom ) } SnapPosition.RIGHT -> { @@ -2311,7 +725,7 @@ class DesktopTasksController( stableBounds.right - destinationWidth, stableBounds.top, stableBounds.right, - stableBounds.bottom, + stableBounds.bottom ) } } @@ -2328,355 +742,154 @@ class DesktopTasksController( ?: WINDOWING_MODE_UNDEFINED } - private fun prepareForDeskActivation(displayId: Int, wct: WindowContainerTransaction) { - logD( - "prepareForDeskActivation displayId=%d shouldShowHomeBehindDesktop=%b", - displayId, - desktopState.shouldShowHomeBehindDesktop, - ) - // Move home to front, ensures that we go back home when all desktop windows are closed - val useParamDisplayId = - DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue || - ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY.isTrue - moveHomeTaskToTop( - displayId = if (useParamDisplayId) displayId else context.displayId, - wct = wct, - ) - // Currently, we only handle the desktop on the default display really. - if ( - (displayId == DEFAULT_DISPLAY || - ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY.isTrue) && - ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY.isTrue() && - !desktopState.shouldShowHomeBehindDesktop - ) { - // Add translucent wallpaper activity to show the wallpaper underneath. - addWallpaperActivity(displayId, wct) - } - } + private fun bringDesktopAppsToFrontBeforeShowingNewTask( + displayId: Int, + wct: WindowContainerTransaction, + newTaskIdInFront: Int + ): RunningTaskInfo? = bringDesktopAppsToFront(displayId, wct, newTaskIdInFront) - @Deprecated( - "Use addDeskActivationChanges() instead.", - ReplaceWith("addDeskActivationChanges()"), - ) private fun bringDesktopAppsToFront( displayId: Int, wct: WindowContainerTransaction, - newTaskIdInFront: Int? = null, - ): Int? { - logV("bringDesktopAppsToFront, newTaskId=%d", newTaskIdInFront) - prepareForDeskActivation(displayId, wct) + newTaskIdInFront: Int? = null + ): RunningTaskInfo? { + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: bringDesktopAppsToFront, newTaskIdInFront=%s", + newTaskIdInFront ?: "null" + ) - val expandedTasksOrderedFrontToBack = taskRepository.getExpandedTasksOrdered(displayId) + if (Flags.enableDesktopWindowingWallpaperActivity()) { + // Add translucent wallpaper activity to show the wallpaper underneath + addWallpaperActivity(wct) + } else { + // Move home to front + moveHomeTaskToFront(wct) + } + + val nonMinimizedTasksOrderedFrontToBack = + desktopModeTaskRepository.getActiveNonMinimizedTasksOrderedFrontToBack(displayId) // If we're adding a new Task we might need to minimize an old one - // TODO(b/365725441): Handle non running task minimization - // TODO: b/32994943 - remove dead code when cleaning up task_limit_separate_transition flag - val taskIdToMinimize: Int? = - if (newTaskIdInFront != null) { - getTaskIdToMinimize(expandedTasksOrderedFrontToBack, newTaskIdInFront) + val taskToMinimize: RunningTaskInfo? = + if (newTaskIdInFront != null && desktopTasksLimiter.isPresent) { + desktopTasksLimiter + .get() + .getTaskToMinimizeIfNeeded( + nonMinimizedTasksOrderedFrontToBack, + newTaskIdInFront + ) } else { null } - - expandedTasksOrderedFrontToBack + nonMinimizedTasksOrderedFrontToBack // If there is a Task to minimize, let it stay behind the Home Task - .filter { taskId -> taskId != taskIdToMinimize } + .filter { taskId -> taskId != taskToMinimize?.taskId } + .mapNotNull { taskId -> shellTaskOrganizer.getRunningTaskInfo(taskId) } .reversed() // Start from the back so the front task is brought forward last - .forEach { taskId -> - val runningTaskInfo = shellTaskOrganizer.getRunningTaskInfo(taskId) - if (runningTaskInfo != null) { - // Task is already running, reorder it to the front - wct.reorder(runningTaskInfo.token, /* onTop= */ true) - } else if (DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_PERSISTENCE.isTrue()) { - // Task is not running, start it - wct.startTask(taskId, createActivityOptionsForStartTask().toBundle()) - } + .forEach { task -> wct.reorder(task.token, true /* onTop */) } + return taskToMinimize + } + + private fun moveHomeTaskToFront(wct: WindowContainerTransaction) { + shellTaskOrganizer + .getRunningTasks(context.displayId) + .firstOrNull { task -> task.activityType == ACTIVITY_TYPE_HOME } + ?.let { homeTask -> wct.reorder(homeTask.getToken(), true /* onTop */) } + } + + private fun addWallpaperActivity(wct: WindowContainerTransaction) { + KtProtoLog.v(WM_SHELL_DESKTOP_MODE, "DesktopTasksController: addWallpaper") + val intent = Intent(context, DesktopWallpaperActivity::class.java) + val options = + ActivityOptions.makeBasic().apply { + isPendingIntentBackgroundActivityLaunchAllowedByPermission = true + pendingIntentBackgroundActivityStartMode = + ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED } - - taskbarDesktopTaskListener?.onTaskbarCornerRoundingUpdate( - doesAnyTaskRequireTaskbarRounding(displayId) - ) - - return taskIdToMinimize + val pendingIntent = + PendingIntent.getActivity( + context, + /* requestCode = */ 0, + intent, + PendingIntent.FLAG_IMMUTABLE + ) + wct.sendPendingIntent(pendingIntent, intent, options.toBundle()) } - private fun moveHomeTaskToTop(displayId: Int, wct: WindowContainerTransaction) { - logV("moveHomeTaskToTop in displayId=%d", displayId) - getHomeTask(displayId)?.let { homeTask -> - wct.reorder(homeTask.getToken(), /* onTop= */ true) - } - } - - private fun removeHomeTask(wct: WindowContainerTransaction, displayId: Int) { - logV("removeHomeTask in displayId=%d", displayId) - getHomeTask(displayId)?.let { homeTask -> wct.removeRootTask(homeTask.getToken()) } - } - - private fun getHomeTask(displayId: Int): RunningTaskInfo? { - return shellTaskOrganizer.getRunningTasks(displayId).firstOrNull { task -> - task.activityType == ACTIVITY_TYPE_HOME - } - } - - private fun addLaunchHomePendingIntent(wct: WindowContainerTransaction, displayId: Int) { - homeIntentProvider.addLaunchHomePendingIntent(wct, displayId, userId) - } - - private fun addWallpaperActivity(displayId: Int, wct: WindowContainerTransaction) { - logV("addWallpaperActivity") - if (ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER.isTrue) { - - // If the wallpaper activity for this display already exists, let's reorder it to top. - val wallpaperActivityToken = desktopWallpaperActivityTokenProvider.getToken(displayId) - if (wallpaperActivityToken != null) { - wct.reorder(wallpaperActivityToken, /* onTop= */ true) - return - } - val intent = Intent(context, DesktopWallpaperActivity::class.java) - if (ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY.isTrue) { - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) - intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK) - } - val options = - ActivityOptions.makeBasic().apply { - launchWindowingMode = WINDOWING_MODE_FULLSCREEN - pendingIntentBackgroundActivityStartMode = - ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS - if (ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY.isTrue) { - launchDisplayId = displayId - } - } - val pendingIntent = - PendingIntent.getActivity( - context, - /* requestCode = */ 0, - intent, - PendingIntent.FLAG_IMMUTABLE, - ) - wct.sendPendingIntent(pendingIntent, intent, options.toBundle()) - } else { - val userHandle = UserHandle.of(userId) - val userContext = context.createContextAsUser(userHandle, /* flags= */ 0) - val intent = Intent(userContext, DesktopWallpaperActivity::class.java) - if ( - desktopWallpaperActivityTokenProvider.getToken(displayId) == null && - ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY.isTrue - ) { - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) - intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK) - } - intent.putExtra(Intent.EXTRA_USER_HANDLE, userId) - val options = - ActivityOptions.makeBasic().apply { - launchWindowingMode = WINDOWING_MODE_FULLSCREEN - pendingIntentBackgroundActivityStartMode = - ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS - if (ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY.isTrue) { - launchDisplayId = displayId - } - } - val pendingIntent = - PendingIntent.getActivityAsUser( - userContext, - /* requestCode= */ 0, - intent, - PendingIntent.FLAG_IMMUTABLE, - /* options= */ null, - userHandle, - ) - wct.sendPendingIntent(pendingIntent, intent, options.toBundle()) - } - } - - private fun moveWallpaperActivityToBack(wct: WindowContainerTransaction, displayId: Int) { - desktopWallpaperActivityTokenProvider.getToken(displayId)?.let { token -> - logV("moveWallpaperActivityToBack") - wct.reorder(token, /* onTop= */ false) - } - } - - private fun removeWallpaperTask(wct: WindowContainerTransaction, displayId: Int) { - desktopWallpaperActivityTokenProvider.getToken(displayId)?.let { token -> - logV("removeWallpaperTask") + private fun removeWallpaperActivity(wct: WindowContainerTransaction) { + desktopModeTaskRepository.wallpaperActivityToken?.let { token -> + KtProtoLog.v(WM_SHELL_DESKTOP_MODE, "DesktopTasksController: removeWallpaper") wct.removeTask(token) } } - private fun willExitDesktop( - triggerTaskId: Int, - displayId: Int, - forceExitDesktop: Boolean, - ): Boolean { - if (forceExitDesktop && DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - // |forceExitDesktop| is true when the callers knows we'll exit desktop, such as when - // explicitly going fullscreen, so there's no point in checking the desktop state. - return true - } - if (ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY.isTrue) { - if (!taskRepository.isOnlyVisibleNonClosingTask(triggerTaskId, displayId)) { - return false - } - } else { - if (!taskRepository.isOnlyVisibleNonClosingTask(triggerTaskId)) { - return false - } - } - return true - } - - private fun performDesktopExitCleanupIfNeeded( - taskId: Int, - deskId: Int? = null, - displayId: Int, - wct: WindowContainerTransaction, - forceToFullscreen: Boolean, - ): RunOnTransitStart? { - if (!willExitDesktop(taskId, displayId, forceToFullscreen)) { - return null - } - // TODO: b/394268248 - update remaining callers to pass in a |deskId| and apply the - // |RunOnTransitStart| when the transition is started. - return performDesktopExitCleanUp( - wct = wct, - deskId = deskId, - displayId = displayId, - willExitDesktop = true, - shouldEndUpAtHome = true, - ) - } - - /** TODO: b/394268248 - update [deskId] to be non-null. */ - fun performDesktopExitCleanUp( - wct: WindowContainerTransaction, - deskId: Int?, - displayId: Int, - willExitDesktop: Boolean, - shouldEndUpAtHome: Boolean = true, - skipWallpaperAndHomeOrdering: Boolean = false, - skipUpdatingExitDesktopListener: Boolean = false, - ): RunOnTransitStart? { - if (!willExitDesktop) return null - if ( - !skipUpdatingExitDesktopListener && - // Replaced by |IDesktopTaskListener#onActiveDeskChanged|. - !desktopState.enableMultipleDesktops - ) { - desktopModeEnterExitTransitionListener?.onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome, - ) - } - if ( - !skipWallpaperAndHomeOrdering || - !DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue - ) { - if (ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER.isTrue) { - moveWallpaperActivityToBack(wct, displayId) - } else { - removeWallpaperTask(wct, displayId) - } - if (shouldEndUpAtHome) { - // If the transition should end up with user going to home, launch home with a - // pending intent. - addLaunchHomePendingIntent(wct, displayId) - } - } - return prepareDeskDeactivationIfNeeded(wct, deskId) - } - fun releaseVisualIndicator() { - visualIndicator?.releaseVisualIndicator() + val t = SurfaceControl.Transaction() + visualIndicator?.releaseVisualIndicator(t) visualIndicator = null + syncQueue.runInSync { transaction -> + transaction.merge(t) + t.close() + } } - override fun getContext(): Context = context + override fun getContext(): Context { + return context + } - override fun getRemoteCallExecutor(): ShellExecutor = mainExecutor + override fun getRemoteCallExecutor(): ShellExecutor { + return mainExecutor + } override fun startAnimation( transition: IBinder, info: TransitionInfo, startTransaction: SurfaceControl.Transaction, finishTransaction: SurfaceControl.Transaction, - finishCallback: Transitions.TransitionFinishCallback, + finishCallback: Transitions.TransitionFinishCallback ): Boolean { // This handler should never be the sole handler, so should not animate anything. return false } - private fun taskDisplaySupportDesktopMode(triggerTask: RunningTaskInfo) = - desktopState.isDesktopModeSupportedOnDisplay(triggerTask.displayId) - override fun handleRequest( transition: IBinder, - request: TransitionRequestInfo, + request: TransitionRequestInfo ): WindowContainerTransaction? { - logV("handleRequest request=%s", request) - // First, check if this is a display disconnect request. - val displayChange = request.displayChange - if ( - DesktopExperienceFlags.ENABLE_DISPLAY_DISCONNECT_INTERACTION.isTrue && - displayChange != null && - displayChange.disconnectReparentDisplay != INVALID_DISPLAY - ) { - return onDisplayDisconnect( - displayChange.displayId, - displayChange.disconnectReparentDisplay, - transition, - ) - } + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: handleRequest request=%s", + request + ) // Check if we should skip handling this transition var reason = "" val triggerTask = request.triggerTask - // Skipping early if the trigger task is null - if (triggerTask == null) { - logV("skipping handleRequest reason=%s", "triggerTask is null") - return null - } - val recentsAnimationRunning = - RecentsTransitionStateListener.isAnimating(recentsTransitionState) - val shouldHandleMidRecentsFreeformLaunch = - recentsAnimationRunning && isFreeformRelaunch(triggerTask, request) - val isDragAndDropFullscreenTransition = taskContainsDragAndDropCookie(triggerTask) val shouldHandleRequest = when { - !taskDisplaySupportDesktopMode(triggerTask) -> { - reason = "triggerTask's display doesn't support desktop mode" - false - } - // Handle freeform relaunch during recents animation - shouldHandleMidRecentsFreeformLaunch -> true recentsAnimationRunning -> { reason = "recents animation is running" false } - // Don't handle request if this was a tear to fullscreen transition. - // handleFullscreenTaskLaunch moves fullscreen intents to freeform; - // this is an exception to the rule - isDragAndDropFullscreenTransition -> { - dragAndDropFullscreenCookie = null - false - } - // Handle task closing for the last window if wallpaper is available - shouldHandleTaskClosing(request) -> true + // Handle back navigation for the last window if wallpaper available + shouldRemoveWallpaper(request) -> true // Only handle open or to front transitions request.type != TRANSIT_OPEN && request.type != TRANSIT_TO_FRONT -> { reason = "transition type not handled (${request.type})" false } - // Home launches are only handled with multiple desktops enabled. - triggerTask.activityType == ACTIVITY_TYPE_HOME && - !DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue -> { - reason = "ACTIVITY_TYPE_HOME not handled" + // Only handle when it is a task transition + triggerTask == null -> { + reason = "triggerTask is null" false } - // Only handle standard and home tasks types. - triggerTask.activityType != ACTIVITY_TYPE_STANDARD && - triggerTask.activityType != ACTIVITY_TYPE_HOME -> { + // Only handle standard type tasks + triggerTask.activityType != ACTIVITY_TYPE_STANDARD -> { reason = "activityType not handled (${triggerTask.activityType})" false } // Only handle fullscreen or freeform tasks - !triggerTask.isFullscreen && !triggerTask.isFreeform -> { + triggerTask.windowingMode != WINDOWING_MODE_FULLSCREEN && + triggerTask.windowingMode != WINDOWING_MODE_FREEFORM -> { reason = "windowingMode not handled (${triggerTask.windowingMode})" false } @@ -2685,97 +898,39 @@ class DesktopTasksController( } if (!shouldHandleRequest) { - logV("skipping handleRequest reason=%s", reason) + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: skipping handleRequest reason=%s", + reason + ) return null } val result = - when { - triggerTask.activityType == ACTIVITY_TYPE_HOME -> - handleHomeTaskLaunch(triggerTask, transition) - // Check if freeform task launch during recents should be handled - shouldHandleMidRecentsFreeformLaunch -> - handleMidRecentsFreeformTaskLaunch(triggerTask, transition) - // Check if the closing task needs to be handled - TransitionUtil.isClosingType(request.type) -> - handleTaskClosing(triggerTask, transition, request.type) - // Check if the top task shouldn't be allowed to enter desktop mode - isIncompatibleTask(triggerTask) -> - handleIncompatibleTaskLaunch(triggerTask, transition) - // Check if fullscreen task should be updated - triggerTask.isFullscreen -> - handleFullscreenTaskLaunch(triggerTask, transition, request.type) - // Check if freeform task should be updated - triggerTask.isFreeform -> handleFreeformTaskLaunch(triggerTask, transition) - else -> { - null + triggerTask?.let { task -> + when { + request.type == TRANSIT_TO_BACK -> handleBackNavigation(task) + // Check if the task has a top transparent activity + shouldLaunchAsModal(task) -> handleIncompatibleTaskLaunch(task) + // Check if the task has a top systemUI activity + isSystemUIApplication(task) -> handleIncompatibleTaskLaunch(task) + // Check if fullscreen task should be updated + task.isFullscreen -> handleFullscreenTaskLaunch(task, transition) + // Check if freeform task should be updated + task.isFreeform -> handleFreeformTaskLaunch(task, transition) + else -> { + null + } } } - logV("handleRequest result=%s", result) + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: handleRequest result=%s", + result ?: "null" + ) return result } - /** Whether the given [change] in the [transition] is a known desktop change. */ - fun isDesktopChange(transition: IBinder, change: TransitionInfo.Change): Boolean { - // Only the immersive controller is currently involved in mixed transitions. - return DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue && - desktopImmersiveController.isImmersiveChange(transition, change) - } - - /** - * Whether the given transition [info] will potentially include a desktop change, in which case - * the transition should be treated as mixed so that the change is in part animated by one of - * the desktop transition handlers. - */ - fun shouldPlayDesktopAnimation(info: TransitionRequestInfo): Boolean { - // Only immersive mixed transition are currently supported. - if (!DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue) return false - val triggerTask = info.triggerTask ?: return false - if (!isAnyDeskActive(triggerTask.displayId)) { - return false - } - if (!TransitionUtil.isOpeningType(info.type)) { - return false - } - taskRepository.getTaskInFullImmersiveState(displayId = triggerTask.displayId) - ?: return false - return when { - triggerTask.isFullscreen -> { - // Trigger fullscreen task will enter desktop, so any existing immersive task - // should exit. - shouldFullscreenTaskLaunchSwitchToDesktop(triggerTask, info.type) - } - triggerTask.isFreeform -> { - // Trigger freeform task will enter desktop, so any existing immersive task should - // exit. - !shouldFreeformTaskLaunchSwitchToFullscreen(triggerTask) - } - else -> false - } - } - - /** Animate a desktop change found in a mixed transitions. */ - fun animateDesktopChange( - transition: IBinder, - change: Change, - startTransaction: Transaction, - finishTransaction: Transaction, - finishCallback: TransitionFinishCallback, - ) { - if (!desktopImmersiveController.isImmersiveChange(transition, change)) { - throw IllegalStateException("Only immersive changes support desktop mixed transitions") - } - desktopImmersiveController.animateResizeChange( - change, - startTransaction, - finishTransaction, - finishCallback, - ) - } - - private fun taskContainsDragAndDropCookie(taskInfo: RunningTaskInfo) = - taskInfo.launchCookies?.any { it == dragAndDropFullscreenCookie } ?: false - /** * Applies the proper surface states (rounded corners) to tasks when desktop mode is active. * This is intended to be used when desktop mode is part of another animation but isn't, itself, @@ -2783,805 +938,134 @@ class DesktopTasksController( */ fun syncSurfaceState(info: TransitionInfo, finishTransaction: SurfaceControl.Transaction) { // Add rounded corners to freeform windows - if (!desktopConfig.useRoundedCorners) { + if (!DesktopModeStatus.useRoundedCorners()) { return } - val cornerRadius = - context.resources - .getDimensionPixelSize( - SharedR.dimen.desktop_windowing_freeform_rounded_corner_radius - ) - .toFloat() + val cornerRadius = ScreenDecorationsUtils.getWindowCornerRadius(context) info.changes .filter { it.taskInfo?.windowingMode == WINDOWING_MODE_FREEFORM } .forEach { finishTransaction.setCornerRadius(it.leash, cornerRadius) } } - /** Returns whether an existing desktop task is being relaunched in freeform or not. */ - private fun isFreeformRelaunch(triggerTask: RunningTaskInfo, request: TransitionRequestInfo) = - (triggerTask.windowingMode == WINDOWING_MODE_FREEFORM && - TransitionUtil.isOpeningType(request.type) && - taskRepository.isActiveTask(triggerTask.taskId)) + // TODO(b/347289970): Consider replacing with API + private fun shouldLaunchAsModal(task: TaskInfo) = + Flags.enableDesktopWindowingModalsPolicy() && isSingleTopActivityTranslucent(task) - /** Returns whether a fullscreen task is being relaunched on the same display or not. */ - private fun isFullscreenRelaunch( - triggerTask: RunningTaskInfo, - @WindowManager.TransitionType requestType: Int, - ): Boolean { - // Do not treat fullscreen-in-desktop as fullscreen. - if (taskRepository.isActiveTask(triggerTask.taskId)) return false - - val existingTask = shellTaskOrganizer.getRunningTaskInfo(triggerTask.taskId) ?: return false - return triggerTask.isFullscreen && - TransitionUtil.isOpeningType(requestType) && - existingTask.isFullscreen && - existingTask.displayId == triggerTask.displayId - } - - private fun isIncompatibleTask(task: RunningTaskInfo) = - desktopModeCompatPolicy.isTopActivityExemptFromDesktopWindowing(task) - - private fun shouldHandleTaskClosing(request: TransitionRequestInfo): Boolean = - ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY.isTrue() && - TransitionUtil.isClosingType(request.type) && - request.triggerTask != null && - request.triggerTask?.activityType != ACTIVITY_TYPE_HOME - - /** Open an existing instance of an app. */ - fun openInstance(callingTask: RunningTaskInfo, requestedTaskId: Int) { - val deskId = getOrCreateDefaultDeskId(callingTask.displayId) ?: return - if (callingTask.isFreeform) { - val requestedTaskInfo = shellTaskOrganizer.getRunningTaskInfo(requestedTaskId) - if (requestedTaskInfo?.isFreeform == true) { - // If requested task is an already open freeform task, just move it to front. - moveTaskToFront( - requestedTaskId, - unminimizeReason = UnminimizeReason.APP_HANDLE_MENU_BUTTON, - ) - } else { - moveTaskToDesk( - requestedTaskId, - deskId, - WindowContainerTransaction(), - DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON, - ) + private fun shouldRemoveWallpaper(request: TransitionRequestInfo): Boolean { + return Flags.enableDesktopWindowingWallpaperActivity() && + request.type == TRANSIT_TO_BACK && + request.triggerTask?.let { task -> + desktopModeTaskRepository.isOnlyActiveTask(task.taskId) } - } else { - val options = createNewWindowOptions(callingTask, deskId) - val splitPosition = splitScreenController.determineNewInstancePosition(callingTask) - splitScreenController.startTask( - requestedTaskId, - splitPosition, - options.toBundle(), - /* hideTaskToken= */ null, - if (enableFlexibleSplit()) - splitScreenController.determineNewInstanceIndex(callingTask) - else SPLIT_INDEX_UNDEFINED, - ) - } - } - - /** Create an Intent to open a new window of a task. */ - fun openNewWindow(callingTaskInfo: RunningTaskInfo) { - // TODO(b/337915660): Add a transition handler for these; animations - // need updates in some cases. - val baseActivity = callingTaskInfo.baseActivity ?: return - val userHandle = UserHandle.of(callingTaskInfo.userId) - val fillIn: Intent = - userProfileContexts - .getOrCreate(callingTaskInfo.userId) - .packageManager - .getLaunchIntentForPackage(baseActivity.packageName) ?: return - fillIn.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_MULTIPLE_TASK) - val launchIntent = - PendingIntent.getActivityAsUser( - context, - /* requestCode= */ 0, - fillIn, - PendingIntent.FLAG_IMMUTABLE or PendingIntent.FLAG_ONE_SHOT, - /* options= */ null, - userHandle, - ) - val deskId = - taskRepository.getDeskIdForTask(callingTaskInfo.taskId) - ?: getOrCreateDefaultDeskId(callingTaskInfo.displayId) - ?: return - val options = createNewWindowOptions(callingTaskInfo, deskId) - when (options.launchWindowingMode) { - WINDOWING_MODE_MULTI_WINDOW -> { - val splitPosition = - splitScreenController.determineNewInstancePosition(callingTaskInfo) - // TODO(b/349828130) currently pass in index_undefined until we can revisit these - // specific cases in the future. - val splitIndex = - if (enableFlexibleSplit()) - splitScreenController.determineNewInstanceIndex(callingTaskInfo) - else SPLIT_INDEX_UNDEFINED - splitScreenController.startIntent( - launchIntent, - context.userId, - fillIn, - splitPosition, - options.toBundle(), - /* hideTaskToken= */ null, - /* forceLaunchNewTask= */ true, - splitIndex, - if (ENABLE_NON_DEFAULT_DISPLAY_SPLIT.isTrue) callingTaskInfo.displayId - else DEFAULT_DISPLAY, - ) - } - WINDOWING_MODE_FREEFORM -> { - val wct = WindowContainerTransaction() - wct.sendPendingIntent(launchIntent, fillIn, options.toBundle()) - startLaunchTransition( - transitionType = TRANSIT_OPEN, - wct = wct, - launchingTaskId = null, - deskId = deskId, - displayId = callingTaskInfo.displayId, - ) - } - } - } - - private fun createNewWindowOptions(callingTask: RunningTaskInfo, deskId: Int): ActivityOptions { - val newTaskWindowingMode = - when { - callingTask.isFreeform -> { - WINDOWING_MODE_FREEFORM - } - callingTask.isFullscreen || callingTask.isMultiWindow -> { - WINDOWING_MODE_MULTI_WINDOW - } - else -> { - error("Invalid windowing mode: ${callingTask.windowingMode}") - } - } - val bounds = - when (newTaskWindowingMode) { - WINDOWING_MODE_FREEFORM -> { - displayController.getDisplayLayout(callingTask.displayId)?.let { - getInitialBounds(it, callingTask, deskId) - } - } - WINDOWING_MODE_MULTI_WINDOW -> { - Rect() - } - else -> { - error("Invalid windowing mode: $newTaskWindowingMode") - } - } - val displayId = - if (ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY.isTrue) - taskRepository.getDisplayForDesk(deskId) - else DEFAULT_DISPLAY - return ActivityOptions.makeBasic().apply { - launchWindowingMode = newTaskWindowingMode - pendingIntentBackgroundActivityStartMode = - ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS - launchBounds = bounds - launchDisplayId = displayId - } - } - - private fun handleHomeTaskLaunch( - task: RunningTaskInfo, - transition: IBinder, - ): WindowContainerTransaction? { - logV( - "DesktopTasksController: handleHomeTaskLaunch taskId=%s userId=%s currentUserId=%d", - task.taskId, - task.userId, - userId, - ) - // On user-switches, the home task is launched and the request is dispatched before the - // user-switch is known by SysUI/Shell, so don't use the "current" repository. - val repository = userRepositories.getProfile(task.userId) - val activeDeskId = repository.getActiveDeskId(task.displayId) ?: return null - val wct = WindowContainerTransaction() - // TODO: b/393978539 - desktop-first displays may need to keep the desk active. - // TODO: b/415381304 - pass in the correct |userId| to |performDesktopExitCleanUp| to - // ensure desk deactivation updates are applied to the right repository. - val runOnTransitStart = - performDesktopExitCleanUp( - wct = wct, - deskId = activeDeskId, - displayId = task.displayId, - willExitDesktop = true, - shouldEndUpAtHome = true, - // No need to clean up the wallpaper / home order if Home is launching directly. - skipWallpaperAndHomeOrdering = true, - ) - runOnTransitStart?.invoke(transition) - return wct - } - - /** - * Handles the case where a freeform task is launched from recents. - * - * This is a special case where we want to launch the task in fullscreen instead of freeform. - */ - private fun handleMidRecentsFreeformTaskLaunch( - task: RunningTaskInfo, - transition: IBinder, - ): WindowContainerTransaction? { - logV("DesktopTasksController: handleMidRecentsFreeformTaskLaunch") - val wct = WindowContainerTransaction() - val runOnTransitStart = - addMoveToFullscreenChanges( - wct = wct, - taskInfo = task, - willExitDesktop = - willExitDesktop( - triggerTaskId = task.taskId, - displayId = task.displayId, - forceExitDesktop = true, - ), - ) - runOnTransitStart?.invoke(transition) - wct.reorder(task.token, true) - return wct + ?: false } private fun handleFreeformTaskLaunch( task: RunningTaskInfo, - transition: IBinder, + transition: IBinder ): WindowContainerTransaction? { - val anyDeskActive = taskRepository.isAnyDeskActive(task.displayId) - val forceEnterDesktop = forceEnterDesktop(task.displayId) - logV( - "handleFreeformTaskLaunch taskId=%d displayId=%d anyDeskActive=%b forceEnterDesktop=%b", - task.taskId, - task.displayId, - anyDeskActive, - forceEnterDesktop, - ) - if (keyguardManager.isKeyguardLocked) { - // Do NOT handle freeform task launch when locked. - // It will be launched in fullscreen windowing mode (Details: b/160925539) - logV("skip keyguard is locked") - return null - } - val deskId = getOrCreateDefaultDeskId(task.displayId) ?: return null - val isKnownDesktopTask = taskRepository.isActiveTask(task.taskId) - val shouldEnterDesktop = - forceEnterDesktop - // New tasks should be forced into desktop, while known desktop tasks should - // be moved outside of desktop. - || !isKnownDesktopTask - logV( - "handleFreeformTaskLaunch taskId=%d displayId=%d anyDeskActive=%b" + - " isKnownDesktopTask=%b shouldEnterDesktop=%b", - task.taskId, - task.displayId, - anyDeskActive, - isKnownDesktopTask, - shouldEnterDesktop, - ) - val wct = WindowContainerTransaction() - if (!anyDeskActive && !shouldEnterDesktop) { - // We are outside of desktop mode and an already existing desktop task is being - // launched. We should make this task go to fullscreen instead of freeform. Note - // that this means any re-launch of a freeform window outside of desktop will be in - // fullscreen as long as default-desktop flag is disabled. - val runOnTransitStart = - addMoveToFullscreenChanges( - wct = wct, - taskInfo = task, - willExitDesktop = false, // Already outside desktop. - ) - runOnTransitStart?.invoke(transition) - return wct - } - // At this point we're either already in desktop and this task is moving to it, or we're - // about to enter desktop with this task in it. - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - // Make sure the launching task is moved into the desk. - desksOrganizer.moveTaskToDesk(wct, deskId, task) - } - if (!anyDeskActive) { - // We are outside of desktop and should enter desktop. - val runOnTransitStart = addDeskActivationChanges(deskId, wct, task) - runOnTransitStart?.invoke(transition) - wct.reorder(task.token, true) - return wct - } - // We were already in desktop. - val inheritedTaskBounds = - getInheritedExistingTaskBounds(taskRepository, shellTaskOrganizer, task, deskId) - if (!taskRepository.isActiveTask(task.taskId) && inheritedTaskBounds != null) { - // Inherit bounds from closing task instance to prevent application jumping different - // cascading positions. - wct.setBounds(task.token, inheritedTaskBounds) - } - // TODO(b/365723620): Handle non running tasks that were launched after reboot. - // If task is already visible, it must have been handled already and added to desktop mode. - // Cascade task only if it's not visible yet and has no inherited bounds. - if ( - inheritedTaskBounds == null && - DesktopModeFlags.ENABLE_CASCADING_WINDOWS.isTrue() && - !taskRepository.isVisibleTask(task.taskId) - ) { - val displayLayout = displayController.getDisplayLayout(task.displayId) - if (displayLayout != null) { - val stableBounds = Rect().also { displayLayout.getStableBounds(it) } - val initialBounds = Rect(task.configuration.windowConfiguration.bounds) - cascadeWindow(initialBounds, displayLayout, deskId, stableBounds) - wct.setBounds(task.token, initialBounds) + KtProtoLog.v(WM_SHELL_DESKTOP_MODE, "DesktopTasksController: handleFreeformTaskLaunch") + if (!desktopModeTaskRepository.isDesktopModeShowing(task.displayId)) { + KtProtoLog.d( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: switch freeform task to fullscreen oon transition" + + " taskId=%d", + task.taskId + ) + return WindowContainerTransaction().also { wct -> + bringDesktopAppsToFrontBeforeShowingNewTask(task.displayId, wct, task.taskId) + wct.reorder(task.token, true) } } - if (desktopConfig.useDesktopOverrideDensity) { - wct.setDensityDpi(task.token, desktopConfig.desktopDensityOverride) + val wct = WindowContainerTransaction() + if (useDesktopOverrideDensity()) { + wct.setDensityDpi(task.token, DESKTOP_DENSITY_OVERRIDE) } - // The task that is launching might have been minimized before - in which case this is an - // unminimize action. - if (taskRepository.isMinimizedTask(task.taskId)) { - addPendingUnminimizeTransition( - transition, - task.displayId, - task.taskId, - UnminimizeReason.TASK_LAUNCH, - ) - } - // Desktop Mode is showing and we're launching a new Task: - // 1) Exit immersive if needed. - desktopImmersiveController.exitImmersiveIfApplicable( - transition = transition, - wct = wct, - displayId = task.displayId, - reason = DesktopImmersiveController.ExitReason.TASK_LAUNCH, - ) - // 2) minimize a Task if needed. - // TODO: b/32994943 - remove dead code when cleaning up task_limit_separate_transition flag - val taskIdToMinimize = addAndGetMinimizeChanges(deskId, wct, task.taskId) - // 3) Remove top transparent fullscreen task if needed. - val closingTopTransparentTaskId = - taskRepository.getTopTransparentFullscreenTaskData(deskId)?.taskId - closeTopTransparentFullscreenTask(wct, deskId) - addPendingAppLaunchTransition( - transition, - task.taskId, - taskIdToMinimize, - closingTopTransparentTaskId, - ) - if (taskIdToMinimize != null) { - addPendingMinimizeTransition(transition, taskIdToMinimize, MinimizeReason.TASK_LIMIT) - snapEventHandler.removeTaskIfTiled(task.displayId, taskIdToMinimize) + // Desktop Mode is showing and we're launching a new Task - we might need to minimize + // a Task. + val taskToMinimize = addAndGetMinimizeChangesIfNeeded(task.displayId, wct, task) + if (taskToMinimize != null) { + addPendingMinimizeTransition(transition, taskToMinimize) return wct } - addPendingTaskLimitTransition(transition, deskId, task.taskId) - if (!wct.isEmpty) { - return wct - } - return null + return if (wct.isEmpty) null else wct } private fun handleFullscreenTaskLaunch( task: RunningTaskInfo, - transition: IBinder, - @WindowManager.TransitionType requestType: Int, + transition: IBinder ): WindowContainerTransaction? { - logV("handleFullscreenTaskLaunch") - if (shouldFullscreenTaskLaunchSwitchToDesktop(task, requestType)) { - logD("Switch fullscreen task to freeform on transition: taskId=%d", task.taskId) + KtProtoLog.v(WM_SHELL_DESKTOP_MODE, "DesktopTasksController: handleFullscreenTaskLaunch") + if (desktopModeTaskRepository.isDesktopModeShowing(task.displayId)) { + KtProtoLog.d( + WM_SHELL_DESKTOP_MODE, + "DesktopTasksController: switch fullscreen task to freeform on transition" + + " taskId=%d", + task.taskId + ) return WindowContainerTransaction().also { wct -> - val deskId = getOrCreateDefaultDeskId(task.displayId) ?: return@also - addMoveToDeskTaskChanges(wct = wct, task = task, deskId = deskId) - val runOnTransitStart: RunOnTransitStart? = - if ( - task.baseIntent.flags.and(Intent.FLAG_ACTIVITY_TASK_ON_HOME) != 0 || - !isAnyDeskActive(task.displayId) - ) { - // In some launches home task is moved behind new task being launched. Make - // sure that's not the case for launches in desktop. Also, if this launch is - // the first one to trigger the desktop mode (e.g., when - // [forceEnterDesktop()]), activate the desk here. - val activationRunnable = - addDeskActivationChanges( - deskId = deskId, - wct = wct, - newTask = task, - addPendingLaunchTransition = true, - ) - wct.reorder(task.token, true) - activationRunnable - } else { - { transition: IBinder -> - // The desk was already showing and we're launching a new Task - we - // might need to minimize another Task. - // TODO: b/32994943 - remove dead code when cleaning up - // task_limit_separate_transition flag - val taskIdToMinimize = - addAndGetMinimizeChanges(deskId, wct, task.taskId) - taskIdToMinimize?.let { minimizingTaskId -> - addPendingMinimizeTransition( - transition, - minimizingTaskId, - MinimizeReason.TASK_LIMIT, - ) - } - addPendingTaskLimitTransition(transition, deskId, task.taskId) - // Remove top transparent fullscreen task if needed. - val closingTopTransparentTaskId = - taskRepository.getTopTransparentFullscreenTaskData(deskId)?.taskId - closeTopTransparentFullscreenTask(wct, deskId) - // Also track the pending launching task. - addPendingAppLaunchTransition( - transition, - task.taskId, - taskIdToMinimize, - closingTopTransparentTaskId, - ) - } - } - runOnTransitStart?.invoke(transition) - desktopImmersiveController.exitImmersiveIfApplicable( - transition, - wct, - task.displayId, - reason = DesktopImmersiveController.ExitReason.TASK_LAUNCH, - ) + addMoveToDesktopChanges(wct, task) + // Desktop Mode is already showing and we're launching a new Task - we might need to + // minimize another Task. + val taskToMinimize = addAndGetMinimizeChangesIfNeeded(task.displayId, wct, task) + addPendingMinimizeTransition(transition, taskToMinimize) } - } else if (taskRepository.isActiveTask(task.taskId)) { - // If a freeform task receives a request for a fullscreen launch, apply the same - // changes we do for similar transitions. The task not having WINDOWING_MODE_UNDEFINED - // set when needed can interfere with future split / multi-instance transitions. - val wct = WindowContainerTransaction() - val runOnTransitStart = - addMoveToFullscreenChanges( - wct = wct, - taskInfo = task, - willExitDesktop = - willExitDesktop( - triggerTaskId = task.taskId, - displayId = task.displayId, - forceExitDesktop = true, - ), - ) - runOnTransitStart?.invoke(transition) - return wct } return null } - private fun shouldFreeformTaskLaunchSwitchToFullscreen(task: RunningTaskInfo): Boolean = - !isAnyDeskActive(task.displayId) - - private fun shouldFullscreenTaskLaunchSwitchToDesktop( - task: RunningTaskInfo, - @WindowManager.TransitionType requestType: Int, - ): Boolean { - val isDesktopFirst = rootTaskDisplayAreaOrganizer.isDisplayDesktopFirst(task.displayId) - if ( - DesktopExperienceFlags.ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX.isTrue && - isDesktopFirst && - isFullscreenRelaunch(task, requestType) - ) { - logV( - "shouldFullscreenTaskLaunchSwitchToDesktop: no switch as fullscreen relaunch on" + - " desktop-first display#%s", - task.displayId, - ) - return false - } - - val isAnyDeskActive = isAnyDeskActive(task.displayId) - logV( - "shouldFullscreenTaskLaunchSwitchToDesktop, isAnyDeskActive=%s, isDesktopFirst=%s", - isAnyDeskActive, - isDesktopFirst, - ) - return isAnyDeskActive || isDesktopFirst - } - /** * If a task is not compatible with desktop mode freeform, it should always be launched in * fullscreen. */ - private fun handleIncompatibleTaskLaunch( - task: RunningTaskInfo, - transition: IBinder, - ): WindowContainerTransaction? { - val taskId = task.taskId - val displayId = task.displayId - val inDesktop = isAnyDeskActive(displayId) - val isTransparentTask = desktopModeCompatPolicy.isTransparentTask(task) - val isFreeform = task.isFreeform - logV( - "handleIncompatibleTaskLaunch taskId=%d displayId=%d isTransparent=%b inDesktop=%b" + - " isFreeform=%b", - taskId, - displayId, - isTransparentTask, - inDesktop, - isFreeform, - ) - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - if (!inDesktop && !forceEnterDesktop(displayId)) return null - if ( - isTransparentTask && - (DesktopExperienceFlags.FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK.isTrue || - DesktopModeFlags - .INCLUDE_TOP_TRANSPARENT_FULLSCREEN_TASK_IN_DESKTOP_HEURISTIC - .isTrue) - ) { - // Only update task repository for transparent task. - val deskId = taskRepository.getActiveDeskId(displayId) - deskId?.let { taskRepository.setTopTransparentFullscreenTaskData(it, task) } - } - // Already fullscreen, no-op. - if (task.isFullscreen) return null - val wct = WindowContainerTransaction() - val runOnTransitStart = - addMoveToFullscreenChanges( - wct = wct, - taskInfo = task, - willExitDesktop = - willExitDesktop( - triggerTaskId = taskId, - displayId = displayId, - forceExitDesktop = true, - ), - ) - runOnTransitStart?.invoke(transition) - return wct - } - if (!inDesktop && !isFreeform) { - logD("handleIncompatibleTaskLaunch not in desktop, not a freeform task, nothing to do") + private fun handleIncompatibleTaskLaunch(task: RunningTaskInfo): WindowContainerTransaction? { + // Already fullscreen, no-op. + if (task.isFullscreen) return null + return WindowContainerTransaction().also { wct -> addMoveToFullscreenChanges(wct, task) } + } + + /** Handle back navigation by removing wallpaper activity if it's the last active task */ + private fun handleBackNavigation(task: RunningTaskInfo): WindowContainerTransaction? { + if ( + desktopModeTaskRepository.isOnlyActiveTask(task.taskId) && + desktopModeTaskRepository.wallpaperActivityToken != null + ) { + // Remove wallpaper activity when the last active task is removed + return WindowContainerTransaction().also { wct -> removeWallpaperActivity(wct) } + } else { return null } - if ( - isTransparentTask && - (DesktopExperienceFlags.FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK.isTrue || - DesktopModeFlags.INCLUDE_TOP_TRANSPARENT_FULLSCREEN_TASK_IN_DESKTOP_HEURISTIC - .isTrue) - ) { - // Only update task repository for transparent task. - val deskId = taskRepository.getActiveDeskId(displayId) - deskId?.let { taskRepository.setTopTransparentFullscreenTaskData(it, task) } - } - // Both opaque and transparent incompatible tasks need to be forced to fullscreen, but - // opaque ones force-exit the desktop while transparent ones are just shown on top of the - // desktop while keeping it active. - val willExitDesktop = inDesktop && !isTransparentTask - if (willExitDesktop) { - logD("handleIncompatibleTaskLaunch forcing task to fullscreen and exiting desktop") - } else { - logD("handleIncompatibleTaskLaunch forcing task to fullscreen and staying in desktop") - } - val wct = WindowContainerTransaction() - val runOnTransitStart = - addMoveToFullscreenChanges( - wct = wct, - taskInfo = task, - willExitDesktop = willExitDesktop, - ) - runOnTransitStart?.invoke(transition) - return wct } - /** - * Handles a closing task. This usually means deactivating and cleaning up the desk if it was - * the last task in it. It also handles to-back transitions of the last desktop task as a - * minimize operation. - */ - private fun handleTaskClosing( - task: RunningTaskInfo, - transition: IBinder, - @WindowManager.TransitionType requestType: Int, - ): WindowContainerTransaction? { - logV( - "handleTaskClosing taskId=%d closingType=%s", - task.taskId, - transitTypeToString(requestType), - ) - if (!isAnyDeskActive(task.displayId)) return null - val deskId = taskRepository.getDeskIdForTask(task.taskId) - if (deskId == null && DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - return null - } - val wct = WindowContainerTransaction() - if ( - DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue && - requestType == TRANSIT_TO_BACK - ) { - val isLastTask = taskRepository.isOnlyVisibleTask(task.taskId, task.displayId) - logV( - "Handling to-back of taskId=%d (isLast=%b) as minimize in deskId=%d", - task.taskId, - isLastTask, - deskId, - ) - desksOrganizer.minimizeTask( - wct = wct, - deskId = checkNotNull(deskId) { "Expected non-null deskId" }, - task = task, - ) - } - - // TODO(b/416014060): Check if task is really receiving a back gesture - if ( - !(DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue && - DesktopExperienceFlags.ENABLE_EMPTY_DESK_ON_MINIMIZE.isTrue) - ) { - val deactivationRunnable = - performDesktopExitCleanupIfNeeded( - taskId = task.taskId, - deskId = deskId, - displayId = task.displayId, - wct = wct, - forceToFullscreen = false, - ) - deactivationRunnable?.invoke(transition) - } - - if (!DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION.isTrue()) { - taskRepository.addClosingTask( - displayId = task.displayId, - deskId = deskId, - taskId = task.taskId, - ) - snapEventHandler.removeTaskIfTiled(task.displayId, task.taskId) - } - - taskbarDesktopTaskListener?.onTaskbarCornerRoundingUpdate( - doesAnyTaskRequireTaskbarRounding(task.displayId, task.taskId) - ) - return if (wct.isEmpty) null else wct - } - - /** - * Applies the [wct] changes need when a task is first moving to a desk and the desk needs to be - * activated. - */ - private fun addDeskActivationWithMovingTaskChanges( - deskId: Int, + private fun addMoveToDesktopChanges( wct: WindowContainerTransaction, - task: RunningTaskInfo, - ): RunOnTransitStart? { - val runOnTransitStart = addDeskActivationChanges(deskId, wct, task) - addMoveToDeskTaskChanges(wct = wct, task = task, deskId = deskId) - return runOnTransitStart - } - - /** - * Applies the [wct] changes needed when a task is first moving to a desk. - * - * Note that this recalculates the initial bounds of the task, so it should not be used when - * transferring a task between desks. - * - * TODO: b/362720497 - this should be improved to be reusable by desk-to-desk CUJs where - * [DesksOrganizer.moveTaskToDesk] needs to be called and even cross-display CUJs where - * [applyFreeformDisplayChange] needs to be called. Potentially by comparing source vs - * destination desk ids and display ids, or adding extra arguments to the function. - */ - fun addMoveToDeskTaskChanges( - wct: WindowContainerTransaction, - task: RunningTaskInfo, - deskId: Int, + taskInfo: RunningTaskInfo ) { - val targetDisplayId = taskRepository.getDisplayForDesk(deskId) - val displayLayout = displayController.getDisplayLayout(targetDisplayId) ?: return - logV( - "addMoveToDeskTaskChanges taskId=%d deskId=%d displayId=%d", - task.taskId, - deskId, - targetDisplayId, - ) - val inheritedTaskBounds = - getInheritedExistingTaskBounds(taskRepository, shellTaskOrganizer, task, deskId) - if (inheritedTaskBounds != null) { - // Inherit bounds from closing task instance to prevent application jumping different - // cascading positions. - wct.setBounds(task.token, inheritedTaskBounds) - } else { - val initialBounds = getInitialBounds(displayLayout, task, deskId) - if (canChangeTaskPosition(task)) { - wct.setBounds(task.token, initialBounds) + val displayLayout = displayController.getDisplayLayout(taskInfo.displayId) ?: return + val tdaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(taskInfo.displayId)!! + val tdaWindowingMode = tdaInfo.configuration.windowConfiguration.windowingMode + val targetWindowingMode = + if (tdaWindowingMode == WINDOWING_MODE_FREEFORM) { + // Display windowing is freeform, set to undefined and inherit it + WINDOWING_MODE_UNDEFINED + } else { + WINDOWING_MODE_FREEFORM } + if (Flags.enableWindowingDynamicInitialBounds()) { + wct.setBounds(taskInfo.token, calculateInitialBounds(displayLayout, taskInfo)) } - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - desksOrganizer.moveTaskToDesk(wct = wct, deskId = deskId, task = task) - } else { - val tdaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(targetDisplayId)!! - val tdaWindowingMode = tdaInfo.configuration.windowConfiguration.windowingMode - val targetWindowingMode = - if (tdaWindowingMode == WINDOWING_MODE_FREEFORM) { - // Display windowing is freeform, set to undefined and inherit it - WINDOWING_MODE_UNDEFINED - } else { - WINDOWING_MODE_FREEFORM - } - wct.setWindowingMode(task.token, targetWindowingMode) - wct.reorder(task.token, /* onTop= */ true) - } - if (desktopConfig.useDesktopOverrideDensity) { - wct.setDensityDpi(task.token, desktopConfig.desktopDensityOverride) + wct.setWindowingMode(taskInfo.token, targetWindowingMode) + wct.reorder(taskInfo.token, true /* onTop */) + if (useDesktopOverrideDensity()) { + wct.setDensityDpi(taskInfo.token, DESKTOP_DENSITY_OVERRIDE) } } - /** - * Apply changes to move a freeform task from one display to another, which includes handling - * density changes between displays. - */ - private fun applyFreeformDisplayChange( - wct: WindowContainerTransaction, - taskInfo: RunningTaskInfo, - destDisplayId: Int, - destDeskId: Int, - ) { - val sourceLayout = displayController.getDisplayLayout(taskInfo.displayId) ?: return - val destLayout = displayController.getDisplayLayout(destDisplayId) ?: return - val bounds = taskInfo.configuration.windowConfiguration.bounds - val scaledWidth = bounds.width() * destLayout.densityDpi() / sourceLayout.densityDpi() - val scaledHeight = bounds.height() * destLayout.densityDpi() / sourceLayout.densityDpi() - val sourceWidthMargin = sourceLayout.width() - bounds.width() - val sourceHeightMargin = sourceLayout.height() - bounds.height() - val destWidthMargin = destLayout.width() - scaledWidth - val destHeightMargin = destLayout.height() - scaledHeight - val scaledLeft = - if (sourceWidthMargin != 0) { - bounds.left * destWidthMargin / sourceWidthMargin - } else { - destWidthMargin / 2 - } - val scaledTop = - if (sourceHeightMargin != 0) { - bounds.top * destHeightMargin / sourceHeightMargin - } else { - destHeightMargin / 2 - } - val boundsWithinDisplay = - if (destWidthMargin >= 0 && destHeightMargin >= 0) { - Rect(0, 0, scaledWidth, scaledHeight).apply { - offsetTo( - scaledLeft.coerceIn(0, destWidthMargin), - scaledTop.coerceIn(0, destHeightMargin), - ) - } - } else { - getInitialBounds(destLayout, taskInfo, destDeskId) - } - wct.setBounds(taskInfo.token, boundsWithinDisplay) - } - - private fun getInitialBounds( - displayLayout: DisplayLayout, - taskInfo: RunningTaskInfo, - deskId: Int, - ): Rect { - val bounds = - if (ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS.isTrue) { - // If caption insets should be excluded from app bounds, ensure caption insets - // are excluded from the ideal initial bounds when scaling non-resizeable apps. - // Caption insets stay fixed and don't scale with bounds. - val displayId = taskRepository.getDisplayForDesk(deskId) - val displayContext = displayController.getDisplayContext(displayId) ?: context - val captionInsets = - if (desktopModeCompatPolicy.shouldExcludeCaptionFromAppBounds(taskInfo)) { - getDesktopViewAppHeaderHeightPx(displayContext) - } else { - 0 - } - calculateInitialBounds(displayLayout, taskInfo, captionInsets = captionInsets) - } else { - calculateDefaultDesktopTaskBounds(displayLayout) - } - - if (DesktopModeFlags.ENABLE_CASCADING_WINDOWS.isTrue) { - cascadeWindow(bounds, displayLayout, deskId) - } - return bounds - } - - /** Applies the changes needed to enter fullscreen and clean up the desktop if needed. */ private fun addMoveToFullscreenChanges( wct: WindowContainerTransaction, - taskInfo: TaskInfo, - willExitDesktop: Boolean, - displayId: Int = taskInfo.displayId, - ): RunOnTransitStart? { - val tdaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(displayId)!! + taskInfo: RunningTaskInfo + ) { + val tdaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(taskInfo.displayId)!! val tdaWindowingMode = tdaInfo.configuration.windowConfiguration.windowingMode val targetWindowingMode = if (tdaWindowingMode == WINDOWING_MODE_FULLSCREEN) { @@ -3592,57 +1076,9 @@ class DesktopTasksController( } wct.setWindowingMode(taskInfo.token, targetWindowingMode) wct.setBounds(taskInfo.token, Rect()) - if (desktopConfig.useDesktopOverrideDensity) { + if (useDesktopOverrideDensity()) { wct.setDensityDpi(taskInfo.token, getDefaultDensityDpi()) } - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - wct.reparent(taskInfo.token, tdaInfo.token, /* onTop= */ true) - } else if (enableAltTabKqsFlatenning.isTrue) { - // Until multiple desktops is enabled, we still want to reorder the task to top so that - // if the task is not on top we can still switch to it using Alt+Tab. - wct.reorder(taskInfo.token, /* onTop= */ true) - } - - val deskId = - taskRepository.getDeskIdForTask(taskInfo.taskId) - ?: if (enableAltTabKqsFlatenning.isTrue) { - taskRepository.getActiveDeskId(displayId) - } else { - null - } - - return performDesktopExitCleanUp( - wct = wct, - deskId = deskId, - displayId = displayId, - willExitDesktop = willExitDesktop, - shouldEndUpAtHome = false, - ) - } - - private fun cascadeWindow( - bounds: Rect, - displayLayout: DisplayLayout, - deskId: Int, - stableBounds: Rect = Rect(), - ) { - if (stableBounds.isEmpty) { - displayLayout.getStableBoundsForDesktopMode(stableBounds) - } - - val activeTasks = taskRepository.getExpandedTasksIdsInDeskOrdered(deskId) - activeTasks - .firstOrNull { !taskRepository.isClosingTask(it) } - ?.let { activeTask -> - shellTaskOrganizer.getRunningTaskInfo(activeTask)?.let { - cascadeWindow( - context.resources, - stableBounds, - it.configuration.windowConfiguration.bounds, - bounds, - ) - } - } } /** @@ -3650,541 +1086,46 @@ class DesktopTasksController( * animation; see {@link onDesktopSplitSelectAnimComplete} */ private fun addMoveToSplitChanges(wct: WindowContainerTransaction, taskInfo: RunningTaskInfo) { - if (!DesktopModeFlags.ENABLE_INPUT_LAYER_TRANSITION_FIX.isTrue) { - // This windowing mode is to get the transition animation started; once we complete - // split select, we will change windowing mode to undefined and inherit from split - // stage. - // Going to undefined here causes task to flicker to the top left. - // Cancelling the split select flow will revert it to fullscreen. - wct.setWindowingMode(taskInfo.token, WINDOWING_MODE_MULTI_WINDOW) - } + // This windowing mode is to get the transition animation started; once we complete + // split select, we will change windowing mode to undefined and inherit from split stage. + // Going to undefined here causes task to flicker to the top left. + // Cancelling the split select flow will revert it to fullscreen. + wct.setWindowingMode(taskInfo.token, WINDOWING_MODE_MULTI_WINDOW) // The task's density may have been overridden in freeform; revert it here as we don't // want it overridden in multi-window. wct.setDensityDpi(taskInfo.token, getDefaultDensityDpi()) } /** Returns the ID of the Task that will be minimized, or null if no task will be minimized. */ - private fun addAndGetMinimizeChanges( - deskId: Int, + private fun addAndGetMinimizeChangesIfNeeded( + displayId: Int, wct: WindowContainerTransaction, - newTaskId: Int?, - launchingNewIntent: Boolean = false, - ): Int? { - if (DesktopExperienceFlags.ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION.isTrue) return null - val limiter = desktopTasksLimiter.getOrNull() ?: return null - require(newTaskId == null || !launchingNewIntent) - return limiter.addAndGetMinimizeTaskChanges(deskId, wct, newTaskId, launchingNewIntent) - } - - private fun getTaskIdToMinimize( - expandedTasksOrderedFrontToBack: List<Int>, - newTaskIdInFront: Int?, - ): Int? { - if (DesktopExperienceFlags.ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION.isTrue) return null - val limiter = desktopTasksLimiter.getOrNull() ?: return null - return limiter.getTaskIdToMinimize(expandedTasksOrderedFrontToBack, newTaskIdInFront) + newTaskInfo: RunningTaskInfo + ): RunningTaskInfo? { + if (!desktopTasksLimiter.isPresent) return null + return desktopTasksLimiter + .get() + .addAndGetMinimizeTaskChangesIfNeeded(displayId, wct, newTaskInfo) } private fun addPendingMinimizeTransition( transition: IBinder, - taskIdToMinimize: Int, - minimizeReason: MinimizeReason, + taskToMinimize: RunningTaskInfo? ) { - val taskToMinimize = shellTaskOrganizer.getRunningTaskInfo(taskIdToMinimize) + if (taskToMinimize == null) return desktopTasksLimiter.ifPresent { - it.addPendingMinimizeChange( - transition = transition, - displayId = taskToMinimize?.displayId ?: DEFAULT_DISPLAY, - taskId = taskIdToMinimize, - minimizeReason = minimizeReason, - ) - } - } - - private fun addPendingTaskLimitTransition( - transition: IBinder, - deskId: Int, - launchTaskId: Int?, - ) { - if (!DesktopExperienceFlags.ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION.isTrue) return - desktopTasksLimiter.ifPresent { - it.addPendingTaskLimitTransition( - transition = transition, - deskId = deskId, - taskId = launchTaskId, - ) - } - } - - private fun addPendingUnminimizeTransition( - transition: IBinder, - displayId: Int, - taskIdToUnminimize: Int, - unminimizeReason: UnminimizeReason, - ) { - desktopTasksLimiter.ifPresent { - it.addPendingUnminimizeChange( - transition, - displayId = displayId, - taskId = taskIdToUnminimize, - unminimizeReason, - ) - } - } - - private fun addPendingAppLaunchTransition( - transition: IBinder, - launchTaskId: Int, - minimizeTaskId: Int?, - closingTopTransparentTaskId: Int?, - ) { - if (!DesktopModeFlags.ENABLE_DESKTOP_APP_LAUNCH_TRANSITIONS_BUGFIX.isTrue) { - return - } - // TODO b/359523924: pass immersive task here? - desktopMixedTransitionHandler.addPendingMixedTransition( - DesktopMixedTransitionHandler.PendingMixedTransition.Launch( - transition, - launchTaskId, - minimizeTaskId, - closingTopTransparentTaskId, - /* exitingImmersiveTask= */ null, - ) - ) - } - - private fun activateDefaultDeskInDisplay( - displayId: Int, - remoteTransition: RemoteTransition? = null, - taskIdToReorderToFront: Int? = null, - ) { - val deskId = getOrCreateDefaultDeskId(displayId) ?: return - activateDesk(deskId, remoteTransition, taskIdToReorderToFront) - } - - /** - * Applies the necessary [wct] changes to activate the given desk. - * - * When a task is being brought into a desk together with the activation, then [newTask] is not - * null and may be used to run other desktop policies, such as minimizing another task if the - * task limit has been exceeded. - */ - fun addDeskActivationChanges( - deskId: Int, - wct: WindowContainerTransaction, - newTask: TaskInfo? = null, - // TODO: b/362720497 - should this be true in other places? Can it be calculated locally - // without having to specify the value? - addPendingLaunchTransition: Boolean = false, - displayId: Int = taskRepository.getDisplayForDesk(deskId), - ): RunOnTransitStart { - val newTaskIdInFront = newTask?.taskId - logV( - "addDeskActivationChanges newTaskId=%d deskId=%d displayId=%d", - newTask?.taskId, - deskId, - displayId, - ) - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - val taskIdToMinimize = bringDesktopAppsToFront(displayId, wct, newTask?.taskId) - return { transition -> - // TODO: b/32994943 - remove dead code when cleaning up - // task_limit_separate_transition flag - taskIdToMinimize?.let { minimizingTaskId -> - addPendingMinimizeTransition( - transition = transition, - taskIdToMinimize = minimizingTaskId, - minimizeReason = MinimizeReason.TASK_LIMIT, - ) - } - addPendingTaskLimitTransition( - transition = transition, - deskId = deskId, - launchTaskId = newTask?.taskId, - ) - if (newTask != null && addPendingLaunchTransition) { - // Remove top transparent fullscreen task if needed. - val closingTopTransparentTaskId = - taskRepository.getTopTransparentFullscreenTaskData(deskId)?.taskId - closeTopTransparentFullscreenTask(wct, deskId) - addPendingAppLaunchTransition( - transition, - newTask.taskId, - taskIdToMinimize, - closingTopTransparentTaskId, - ) - } - } - } - prepareForDeskActivation(displayId, wct) - desksOrganizer.activateDesk(wct, deskId) - taskbarDesktopTaskListener?.onTaskbarCornerRoundingUpdate( - doesAnyTaskRequireTaskbarRounding(displayId) - ) - val expandedTasksOrderedFrontToBack = - taskRepository.getExpandedTasksIdsInDeskOrdered(deskId = deskId) - // If we're adding a new Task we might need to minimize an old one - // TODO: b/32994943 - remove dead code when cleaning up task_limit_separate_transition flag - val taskIdToMinimize = - getTaskIdToMinimize(expandedTasksOrderedFrontToBack, newTaskIdInFront) - if (taskIdToMinimize != null) { - val taskToMinimize = shellTaskOrganizer.getRunningTaskInfo(taskIdToMinimize) - // TODO(b/365725441): Handle non running task minimization - if (taskToMinimize != null) { - desksOrganizer.minimizeTask(wct, deskId, taskToMinimize) - } - } - if (DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_PERSISTENCE.isTrue) { - expandedTasksOrderedFrontToBack - .filter { taskId -> taskId != taskIdToMinimize } - .reversed() - .forEach { taskId -> - val runningTaskInfo = shellTaskOrganizer.getRunningTaskInfo(taskId) - if (runningTaskInfo == null) { - wct.startTask(taskId, createActivityOptionsForStartTask().toBundle()) - } else { - desksOrganizer.reorderTaskToFront(wct, deskId, runningTaskInfo) - } - } - } - val deactivatingDesk = taskRepository.getActiveDeskId(displayId)?.takeIf { it != deskId } - val deactivationRunnable = prepareDeskDeactivationIfNeeded(wct, deactivatingDesk) - return { transition -> - val activateDeskTransition = - if (newTaskIdInFront != null) { - DeskTransition.ActivateDeskWithTask( - token = transition, - displayId = displayId, - deskId = deskId, - enterTaskId = newTaskIdInFront, - runOnTransitEnd = { snapEventHandler.onDeskActivated(deskId, displayId) }, - ) - } else { - DeskTransition.ActivateDesk( - token = transition, - displayId = displayId, - deskId = deskId, - runOnTransitEnd = { snapEventHandler.onDeskActivated(deskId, displayId) }, - ) - } - desksTransitionObserver.addPendingTransition(activateDeskTransition) - taskIdToMinimize?.let { minimizingTask -> - addPendingMinimizeTransition(transition, minimizingTask, MinimizeReason.TASK_LIMIT) - } - addPendingTaskLimitTransition(transition, deskId, newTask?.taskId) - deactivationRunnable?.invoke(transition) - } - } - - private fun closeTopTransparentFullscreenTask(wct: WindowContainerTransaction, deskId: Int) { - if (!DesktopExperienceFlags.FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK.isTrue) return - val data = taskRepository.getTopTransparentFullscreenTaskData(deskId) - if (data != null) { - logD("closeTopTransparentFullscreenTask: taskId=%d, deskId=%d", data.taskId, deskId) - wct.removeTask(data.token) - } - } - - /** Activates the desk at the given index if it exists. */ - fun activatePreviousDesk(displayId: Int) { - if ( - !DesktopExperienceFlags.ENABLE_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS.isTrue || - !DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue - ) { - return - } - val validDisplay = - when { - displayId != INVALID_DISPLAY -> displayId - focusTransitionObserver.globallyFocusedDisplayId != INVALID_DISPLAY -> - focusTransitionObserver.globallyFocusedDisplayId - else -> { - logW("activatePreviousDesk no valid display found") - return - } - } - val activeDeskId = taskRepository.getActiveDeskId(validDisplay) - if (activeDeskId == null) { - logV("activatePreviousDesk no active desk in display=%d", validDisplay) - return - } - val destinationDeskId = taskRepository.getPreviousDeskId(activeDeskId) - if (destinationDeskId == null) { - logV( - "activatePreviousDesk no previous desk before deskId=%d in display=%d", - activeDeskId, - validDisplay, - ) - // TODO: b/389957556 - add animation. - return - } - logV("activatePreviousDesk from deskId=%d to deskId=%d", activeDeskId, destinationDeskId) - activateDesk(destinationDeskId) - } - - /** Activates the desk at the given index if it exists. */ - fun activateNextDesk(displayId: Int) { - if ( - !DesktopExperienceFlags.ENABLE_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS.isTrue || - !DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue - ) { - return - } - val validDisplay = - when { - displayId != INVALID_DISPLAY -> displayId - focusTransitionObserver.globallyFocusedDisplayId != INVALID_DISPLAY -> - focusTransitionObserver.globallyFocusedDisplayId - else -> { - logW("activateNextDesk no valid display found") - return - } - } - val activeDeskId = taskRepository.getActiveDeskId(validDisplay) - if (activeDeskId == null) { - logV("activateNextDesk no active desk in display=%d", validDisplay) - return - } - val destinationDeskId = taskRepository.getNextDeskId(activeDeskId) - if (destinationDeskId == null) { - logV( - "activateNextDesk no next desk before deskId=%d in display=%d", - activeDeskId, - validDisplay, - ) - // TODO: b/389957556 - add animation. - return - } - logV("activateNextDesk from deskId=%d to deskId=%d", activeDeskId, destinationDeskId) - activateDesk(destinationDeskId) - } - - /** - * Activates the given desk and brings [taskIdToReorderToFront] to front if provided and is - * already on the given desk. - */ - fun activateDesk( - deskId: Int, - remoteTransition: RemoteTransition? = null, - taskIdToReorderToFront: Int? = null, - ) { - logD( - "activateDesk deskId=%d taskIdToReorderToFront=%d remoteTransition=%s", - deskId, - taskIdToReorderToFront, - remoteTransition, - ) - if (!taskRepository.getAllDeskIds().contains(deskId)) { - logW( - "Request to activate desk=%d but desk not found for user=%d", - deskId, - taskRepository.userId, - ) - return - } - if ( - taskIdToReorderToFront != null && - taskRepository.getDeskIdForTask(taskIdToReorderToFront) != deskId - ) { - logW( - "activeDesk taskIdToReorderToFront=%d not on the desk %d", - taskIdToReorderToFront, - deskId, - ) - return - } - - val newTaskInFront = - taskIdToReorderToFront?.let { taskId -> - shellTaskOrganizer.getRunningTaskInfo(taskId) - ?: recentTasksController?.findTaskInBackground(taskId) - } - - val wct = WindowContainerTransaction() - val runOnTransitStart = addDeskActivationChanges(deskId, wct, newTaskInFront) - - // Put task with [taskIdToReorderToFront] to front. - when (newTaskInFront) { - is RunningTaskInfo -> { - // Task is running, reorder it. - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - desksOrganizer.reorderTaskToFront(wct, deskId, newTaskInFront) - } else { - wct.reorder(newTaskInFront.token, /* onTop= */ true) - } - } - is RecentTaskInfo -> { - // Task is not running, start it. - wct.startTask( - taskIdToReorderToFront, - createActivityOptionsForStartTask().toBundle(), - ) - } - else -> { - logW("activateDesk taskIdToReorderToFront=%d not found", taskIdToReorderToFront) - } - } - - val transitionType = transitionType(remoteTransition) - val handler = - remoteTransition?.let { - OneShotRemoteHandler(transitions.mainExecutor, remoteTransition) - } - - val transition = transitions.startTransition(transitionType, wct, handler) - handler?.setTransition(transition) - runOnTransitStart?.invoke(transition) - - // Replaced by |IDesktopTaskListener#onActiveDeskChanged|. - if (!desktopState.enableMultipleDesktops) { - desktopModeEnterExitTransitionListener?.onEnterDesktopModeTransitionStarted( - toDesktopAnimationDurationMs - ) - } - } - - /** - * TODO: b/393978539 - Deactivation should not happen in desktop-first devices when going home. - */ - private fun prepareDeskDeactivationIfNeeded( - wct: WindowContainerTransaction, - deskId: Int?, - ): RunOnTransitStart? { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) return null - if (deskId == null) return null - desksOrganizer.deactivateDesk(wct, deskId) - return { transition -> - desksTransitionObserver.addPendingTransition( - DeskTransition.DeactivateDesk( - token = transition, - deskId = deskId, - runOnTransitEnd = { snapEventHandler.onDeskDeactivated(deskId) }, - ) - ) - } - } - - /** Removes the default desk in the given display. */ - @Deprecated("Deprecated with multi-desks.", ReplaceWith("removeDesk()")) - fun removeDefaultDeskInDisplay(displayId: Int) { - val deskId = getOrCreateDefaultDeskId(displayId) ?: return - removeDesk(displayId = displayId, deskId = deskId) - } - - /** - * Returns the default desk if it exists, or creates it if needed. - * - * Note: [DesktopDisplayEventHandler] is responsible for creating a default desk in - * desktop-first displays or warming up a desk-root in touch-first displays. This guarantees - * that a non-null desk can be returned by this function because even if one does not exist yet, - * [createDeskImmediate] should succeed. - * - * TODO: b/406890311 - replace callers with [getOrCreateDefaultDeskIdSuspending], which is safer - * because it does not depend on pre-creating desk roots. - */ - @Deprecated( - "Use getOrCreateDefaultDeskIdSuspending() instead", - ReplaceWith("getOrCreateDefaultDeskIdSuspending()"), - ) - private fun getOrCreateDefaultDeskId(displayId: Int): Int? { - val existingDefaultDeskId = taskRepository.getDefaultDeskId(displayId) - if (existingDefaultDeskId != null) { - return existingDefaultDeskId - } - val immediateDeskId = createDeskImmediate(displayId, userId) - if (immediateDeskId == null) { - logE( - "Failed to create immediate desk in displayId=%s for userId=%s:\n%s", - displayId, - userId, - Throwable().stackTraceToString(), - ) - } - return immediateDeskId - } - - private suspend fun getOrCreateDefaultDeskIdSuspending(displayId: Int): Int = - taskRepository.getDefaultDeskId(displayId) - ?: createDeskSuspending(displayId, userId, enforceDeskLimit = false) - - /** Removes the given desk. */ - fun removeDesk(deskId: Int, desktopRepository: DesktopRepository = taskRepository) { - if (!desktopRepository.getAllDeskIds().contains(deskId)) { - logW("Request to remove desk=%d but desk not found for user=%d", deskId, userId) - return - } - val displayId = desktopRepository.getDisplayForDesk(deskId) - removeDesk(displayId = displayId, deskId = deskId, desktopRepository = desktopRepository) - } - - /** Removes all the available desks on all displays. */ - fun removeAllDesks() { - taskRepository.getAllDeskIds().forEach { deskId -> removeDesk(deskId) } - } - - private fun removeDesk( - displayId: Int, - deskId: Int, - desktopRepository: DesktopRepository = taskRepository, - ) { - if (!DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION.isTrue()) return - logV("removeDesk deskId=%d from displayId=%d", deskId, displayId) - - val tasksToRemove = - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - desktopRepository.getActiveTaskIdsInDesk(deskId) - } else { - // TODO: 362720497 - make sure minimized windows are also removed in WM - // and the repository. - desktopRepository.removeDesk(deskId) - } - - val wct = WindowContainerTransaction() - tasksToRemove.forEach { - // TODO: b/404595635 - consider moving this block into [DesksOrganizer]. - val task = shellTaskOrganizer.getRunningTaskInfo(it) - if (task != null) { - wct.removeTask(task.token) - } else { - recentTasksController?.removeBackgroundTask(it) - } - } - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - desksOrganizer.removeDesk(wct, deskId, userId) - } - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue && wct.isEmpty) return - val transition = transitions.startTransition(TRANSIT_CLOSE, wct, /* handler= */ null) - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - desksTransitionObserver.addPendingTransition( - DeskTransition.RemoveDesk( - token = transition, - displayId = displayId, - deskId = deskId, - tasks = tasksToRemove, - onDeskRemovedListener = onDeskRemovedListener, - runOnTransitEnd = { snapEventHandler.onDeskRemoved(deskId) }, - ) - ) + it.addPendingMinimizeChange(transition, taskToMinimize.displayId, taskToMinimize.taskId) } } /** Enter split by using the focused desktop task in given `displayId`. */ fun enterSplit(displayId: Int, leftOrTop: Boolean) { - getFocusedDesktopTask(displayId)?.let { requestSplit(it, leftOrTop) } + getFocusedFreeformTask(displayId)?.let { requestSplit(it, leftOrTop) } } - private fun getFocusedDesktopTask(displayId: Int): RunningTaskInfo? { - if ( - !DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue || - !DesktopExperienceFlags.EXCLUDE_DESK_ROOTS_FROM_DESKTOP_TASKS.isTrue - ) { - return shellTaskOrganizer.getRunningTasks(displayId).find { taskInfo -> - taskInfo.isFocused && taskInfo.windowingMode == WINDOWING_MODE_FREEFORM - } - } - val deskId = taskRepository.getActiveDeskId(displayId) ?: return null + private fun getFocusedFreeformTask(displayId: Int): RunningTaskInfo? { return shellTaskOrganizer.getRunningTasks(displayId).find { taskInfo -> - taskInfo.isFocused && taskRepository.isActiveTaskInDesk(taskInfo.taskId, deskId) + taskInfo.isFocused && taskInfo.windowingMode == WINDOWING_MODE_FREEFORM } } @@ -4193,7 +1134,10 @@ class DesktopTasksController( * changes if this transition is enabled. */ @JvmOverloads - fun requestSplit(taskInfo: RunningTaskInfo, leftOrTop: Boolean = false) { + fun requestSplit( + taskInfo: RunningTaskInfo, + leftOrTop: Boolean = false + ) { // If a drag to desktop is in progress, we want to enter split select // even if the requesting task is already in split. val isDragging = dragToDesktopTransitionHandler.inProgress @@ -4201,53 +1145,33 @@ class DesktopTasksController( if (shouldRequestSplit) { if (isDragging) { releaseVisualIndicator() - val cancelState = - if (leftOrTop) { - DragToDesktopTransitionHandler.CancelState.CANCEL_SPLIT_LEFT - } else { - DragToDesktopTransitionHandler.CancelState.CANCEL_SPLIT_RIGHT - } + val cancelState = if (leftOrTop) { + DragToDesktopTransitionHandler.CancelState.CANCEL_SPLIT_LEFT + } else { + DragToDesktopTransitionHandler.CancelState.CANCEL_SPLIT_RIGHT + } dragToDesktopTransitionHandler.cancelDragToDesktopTransition(cancelState) } else { - val deskId = taskRepository.getDeskIdForTask(taskInfo.taskId) - logV("Split requested for task=%d in desk=%d", taskInfo.taskId, deskId) val wct = WindowContainerTransaction() addMoveToSplitChanges(wct, taskInfo) splitScreenController.requestEnterSplitSelect( taskInfo, + wct, if (leftOrTop) SPLIT_POSITION_TOP_OR_LEFT else SPLIT_POSITION_BOTTOM_OR_RIGHT, - taskInfo.configuration.windowConfiguration.bounds, - /* startRecents = */ true, - /* withRecentsWct = */ wct, + taskInfo.configuration.windowConfiguration.bounds ) } } } - /** Requests a task be transitioned from whatever mode it's in to a bubble. */ - @JvmOverloads - fun requestFloat(taskInfo: RunningTaskInfo, left: Boolean? = null) { - val isDragging = dragToDesktopTransitionHandler.inProgress - val shouldRequestFloat = - taskInfo.isFullscreen || taskInfo.isFreeform || isDragging || taskInfo.isMultiWindow - if (!shouldRequestFloat) return - if (isDragging) { - releaseVisualIndicator() - val cancelState = - if (left == true) DragToDesktopTransitionHandler.CancelState.CANCEL_BUBBLE_LEFT - else DragToDesktopTransitionHandler.CancelState.CANCEL_BUBBLE_RIGHT - dragToDesktopTransitionHandler.cancelDragToDesktopTransition(cancelState) - } else { - bubbleController.ifPresent { - it.expandStackAndSelectBubble(taskInfo, /* dragData= */ null) - } - } + private fun getDefaultDensityDpi(): Int { + return context.resources.displayMetrics.densityDpi } - private fun getDefaultDensityDpi(): Int = context.resources.displayMetrics.densityDpi - /** Creates a new instance of the external interface to pass to another process. */ - private fun createExternalInterface(): ExternalInterfaceBinder = IDesktopModeImpl(this) + private fun createExternalInterface(): ExternalInterfaceBinder { + return IDesktopModeImpl(this) + } /** Get connection interface between sysui and shell */ fun asDesktopMode(): DesktopMode { @@ -4262,93 +1186,38 @@ class DesktopTasksController( * * @param taskInfo the task being dragged. * @param taskSurface SurfaceControl of dragged task. - * @param displayId displayId of the input event. * @param inputX x coordinate of input. Used for checks against left/right edge of screen. - * @param inputY y coordinate of input. Used for checks about cross display drag. * @param taskBounds bounds of dragged task. Used for checks against status bar height. */ fun onDragPositioningMove( taskInfo: RunningTaskInfo, taskSurface: SurfaceControl, - displayId: Int, inputX: Float, - inputY: Float, - taskBounds: Rect, + taskBounds: Rect ) { if (taskInfo.windowingMode != WINDOWING_MODE_FREEFORM) return - snapEventHandler.removeTaskIfTiled(taskInfo.displayId, taskInfo.taskId) - if (!DesktopExperienceFlags.ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG.isTrue()) { - updateVisualIndicator( - taskInfo, - taskSurface, - displayId, - inputX, - taskBounds.top.toFloat(), - DragStartState.FROM_FREEFORM, - ) - return - } - - val indicator = - getOrCreateVisualIndicator(taskInfo, taskSurface, DragStartState.FROM_FREEFORM) - val indicatorType = - indicator.calculateIndicatorType(displayId, PointF(inputX, taskBounds.top.toFloat())) - visualIndicatorUpdateScheduler.schedule( - taskInfo.displayId, - indicatorType, - inputX, - inputY, - taskBounds, - indicator, - ) + updateVisualIndicator(taskInfo, taskSurface, inputX, taskBounds.top.toFloat()) } fun updateVisualIndicator( taskInfo: RunningTaskInfo, - taskSurface: SurfaceControl?, - displayId: Int, + taskSurface: SurfaceControl, inputX: Float, - taskTop: Float, - dragStartState: DragStartState, - ): IndicatorType { - return getOrCreateVisualIndicator(taskInfo, taskSurface, dragStartState) - .updateIndicatorType(displayId, PointF(inputX, taskTop)) - } - - @VisibleForTesting - fun getOrCreateVisualIndicator( - taskInfo: RunningTaskInfo, - taskSurface: SurfaceControl?, - dragStartState: DragStartState, - ): DesktopModeVisualIndicator { - // If the visual indicator has the wrong start state, it was never cleared from a previous - // drag event and needs to be cleared - if (visualIndicator != null && visualIndicator?.dragStartState != dragStartState) { - Slog.e(TAG, "Visual indicator from previous motion event was never released") - releaseVisualIndicator() - } + taskTop: Float + ): DesktopModeVisualIndicator.IndicatorType { // If the visual indicator does not exist, create it. val indicator = visualIndicator ?: DesktopModeVisualIndicator( - desktopExecutor, - mainExecutor, syncQueue, taskInfo, displayController, - if (ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY.isTrue) { - displayController.getDisplayContext(taskInfo.displayId) - } else { - context - }, + context, taskSurface, - rootTaskDisplayAreaOrganizer, - dragStartState, - bubbleController.getOrNull()?.bubbleDropTargetBoundsProvider, - snapEventHandler, + rootTaskDisplayAreaOrganizer ) if (visualIndicator == null) visualIndicator = indicator - return indicator + return indicator.updateIndicatorType(PointF(inputX, taskTop), taskInfo.windowingMode) } /** @@ -4356,137 +1225,59 @@ class DesktopTasksController( * that change. Otherwise, ensure bounds are up to date. * * @param taskInfo the task being dragged. - * @param taskSurface the leash of the task being dragged. - * @param displayId the displayId of the input event. + * @param position position of surface when drag ends. * @param inputCoordinate the coordinates of the motion event - * @param currentDragBounds the current bounds of where the visible task is (might be actual - * task bounds or just task leash) - * @param validDragArea the bounds of where the task can be dragged within the display. - * @param dragStartBounds the bounds of the task before starting dragging. + * @param taskBounds the updated bounds of the task being dragged. */ fun onDragPositioningEnd( taskInfo: RunningTaskInfo, - taskSurface: SurfaceControl, - displayId: Int, + position: Point, inputCoordinate: PointF, - currentDragBounds: Rect, - validDragArea: Rect, - dragStartBounds: Rect, - motionEvent: MotionEvent, + taskBounds: Rect, + validDragArea: Rect ) { if (taskInfo.configuration.windowConfiguration.windowingMode != WINDOWING_MODE_FREEFORM) { return } - val indicator = getVisualIndicator() ?: return + val indicator = visualIndicator ?: return val indicatorType = indicator.updateIndicatorType( - displayId, - PointF(inputCoordinate.x, currentDragBounds.top.toFloat()), + PointF(inputCoordinate.x, taskBounds.top.toFloat()), + taskInfo.windowingMode ) when (indicatorType) { - IndicatorType.TO_FULLSCREEN_INDICATOR -> { - val shouldMaximizeWhenDragToTopEdge = - if (DesktopExperienceFlags.ENABLE_DESKTOP_FIRST_BASED_DRAG_TO_MAXIMIZE.isTrue) - rootTaskDisplayAreaOrganizer.isDisplayDesktopFirst( - motionEvent.getDisplayId() - ) - else desktopConfig.shouldMaximizeWhenDragToTopEdge - if (shouldMaximizeWhenDragToTopEdge) { - dragToMaximizeDesktopTask(taskInfo, taskSurface, currentDragBounds, motionEvent) - } else { - desktopModeUiEventLogger.log( - taskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HEADER_DRAG_TO_FULL_SCREEN, - ) - moveToFullscreenWithAnimation( - taskInfo, - Point(currentDragBounds.left, currentDragBounds.top), - DesktopModeTransitionSource.TASK_DRAG, - ) - } - } - IndicatorType.TO_SPLIT_LEFT_INDICATOR -> { - desktopModeUiEventLogger.log( + DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR -> { + moveToFullscreenWithAnimation( taskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HEADER_DRAG_TO_TILE_TO_LEFT, - ) - handleSnapResizingTaskOnDrag( - taskInfo, - SnapPosition.LEFT, - taskSurface, - currentDragBounds, - dragStartBounds, - motionEvent, + position, + DesktopModeTransitionSource.TASK_DRAG ) } - IndicatorType.TO_SPLIT_RIGHT_INDICATOR -> { - desktopModeUiEventLogger.log( - taskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HEADER_DRAG_TO_TILE_TO_RIGHT, - ) - handleSnapResizingTaskOnDrag( - taskInfo, - SnapPosition.RIGHT, - taskSurface, - currentDragBounds, - dragStartBounds, - motionEvent, - ) + DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR -> { + releaseVisualIndicator() + snapToHalfScreen(taskInfo, SnapPosition.LEFT) } - IndicatorType.NO_INDICATOR, - IndicatorType.TO_BUBBLE_LEFT_INDICATOR, - IndicatorType.TO_BUBBLE_RIGHT_INDICATOR -> { - // TODO(b/391928049): add support fof dragging desktop apps to a bubble - - // Create a copy so that we can animate from the current bounds if we end up having - // to snap the surface back without a WCT change. - val destinationBounds = Rect(currentDragBounds) - // If task bounds are outside valid drag area, snap them inward - DragPositioningCallbackUtility.snapTaskBoundsIfNecessary( - destinationBounds, - validDragArea, - ) - - if (destinationBounds == dragStartBounds) { - // There's no actual difference between the start and end bounds, so while a - // WCT change isn't needed, the dragged surface still needs to be snapped back - // to its original location. - releaseVisualIndicator() - returnToDragStartAnimator.start( - taskInfo.taskId, - taskSurface, - startBounds = currentDragBounds, - endBounds = dragStartBounds, + DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR -> { + releaseVisualIndicator() + snapToHalfScreen(taskInfo, SnapPosition.RIGHT) + } + DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR -> { + // If task bounds are outside valid drag area, snap them inward and perform a + // transaction to set bounds. + if ( + DragPositioningCallbackUtility.snapTaskBoundsIfNecessary( + taskBounds, + validDragArea ) - return - } - - val newDisplayId = motionEvent.getDisplayId() - val displayAreaInfo = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(newDisplayId) - val isCrossDisplayDrag = - DesktopExperienceFlags.ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG.isTrue() && - newDisplayId != taskInfo.getDisplayId() && - displayAreaInfo != null - - if (isCrossDisplayDrag) { - moveToDisplay( - taskInfo, - newDisplayId, - destinationBounds, - dragToDisplayTransitionHandler, - ) - } else { - // Update task bounds so that the task position will match the position of its - // leash + ) { val wct = WindowContainerTransaction() - wct.setBounds(taskInfo.token, destinationBounds) - transitions.startTransition(TRANSIT_CHANGE, wct, /* handler= */ null) + wct.setBounds(taskInfo.token, taskBounds) + transitions.startTransition(TRANSIT_CHANGE, wct, null) } - releaseVisualIndicator() } - IndicatorType.TO_DESKTOP_INDICATOR -> { + DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR -> { throw IllegalArgumentException( "Should not be receiving TO_DESKTOP_INDICATOR for " + "a freeform task." ) @@ -4494,98 +1285,50 @@ class DesktopTasksController( } // A freeform drag-move ended, remove the indicator immediately. releaseVisualIndicator() - taskbarDesktopTaskListener?.onTaskbarCornerRoundingUpdate( - doesAnyTaskRequireTaskbarRounding(taskInfo.displayId) - ) - } - - /** - * Cancel the drag-to-desktop transition. - * - * @param taskInfo the task being dragged. - */ - fun onDragPositioningCancelThroughStatusBar(taskInfo: RunningTaskInfo) { - interactionJankMonitor.cancel(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD) - cancelDragToDesktop(taskInfo) } /** * Perform checks required when drag ends under status bar area. * - * @param displayId the displayId of the input event. * @param taskInfo the task being dragged. * @param y height of drag, to be checked against status bar height. - * @return the [IndicatorType] used for the resulting transition */ fun onDragPositioningEndThroughStatusBar( - displayId: Int, inputCoordinates: PointF, taskInfo: RunningTaskInfo, - taskSurface: SurfaceControl, - ): IndicatorType { - // End the drag_hold CUJ interaction. - interactionJankMonitor.end(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD) - val indicator = getVisualIndicator() ?: return IndicatorType.NO_INDICATOR - val indicatorType = indicator.updateIndicatorType(displayId, inputCoordinates) + ) { + val indicator = getVisualIndicator() ?: return + val indicatorType = indicator.updateIndicatorType(inputCoordinates, taskInfo.windowingMode) when (indicatorType) { - IndicatorType.TO_DESKTOP_INDICATOR -> { - latencyTracker.onActionStart( - LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG - ) - // Start a new jank interaction for the drag release to desktop window animation. - interactionJankMonitor.begin( - taskSurface, - context, - handler, - CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE, - "to_desktop", - ) - desktopModeUiEventLogger.log( - taskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HANDLE_DRAG_TO_DESKTOP_MODE, - ) - finalizeDragToDesktop(taskInfo) + DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR -> { + val displayLayout = displayController.getDisplayLayout(taskInfo.displayId) ?: return + if (Flags.enableWindowingDynamicInitialBounds()) { + finalizeDragToDesktop(taskInfo, calculateInitialBounds(displayLayout, taskInfo)) + } else { + finalizeDragToDesktop(taskInfo, getDefaultDesktopTaskBounds(displayLayout)) + } } - IndicatorType.NO_INDICATOR, - IndicatorType.TO_FULLSCREEN_INDICATOR -> { - desktopModeUiEventLogger.log( - taskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HANDLE_DRAG_TO_FULL_SCREEN, - ) + DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR, + DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR -> { cancelDragToDesktop(taskInfo) } - IndicatorType.TO_SPLIT_LEFT_INDICATOR -> { - desktopModeUiEventLogger.log( - taskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HANDLE_DRAG_TO_SPLIT_SCREEN, - ) + DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR -> { requestSplit(taskInfo, leftOrTop = true) } - IndicatorType.TO_SPLIT_RIGHT_INDICATOR -> { - desktopModeUiEventLogger.log( - taskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HANDLE_DRAG_TO_SPLIT_SCREEN, - ) + DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR -> { requestSplit(taskInfo, leftOrTop = false) } - IndicatorType.TO_BUBBLE_LEFT_INDICATOR -> { - requestFloat(taskInfo, left = true) - } - IndicatorType.TO_BUBBLE_RIGHT_INDICATOR -> { - requestFloat(taskInfo, left = false) - } } - return indicatorType } /** Update the exclusion region for a specified task */ fun onExclusionRegionChanged(taskId: Int, exclusionRegion: Region) { - taskRepository.updateTaskExclusionRegions(taskId, exclusionRegion) + desktopModeTaskRepository.updateTaskExclusionRegions(taskId, exclusionRegion) } /** Remove a previously tracked exclusion region for a specified task. */ fun removeExclusionRegionForTask(taskId: Int) { - taskRepository.removeExclusionRegion(taskId) + desktopModeTaskRepository.removeExclusionRegion(taskId) } /** @@ -4595,7 +1338,7 @@ class DesktopTasksController( * @param callbackExecutor the executor to call the listener on. */ fun addVisibleTasksListener(listener: VisibleTasksListener, callbackExecutor: Executor) { - taskRepository.addVisibleTasksListener(listener, callbackExecutor) + desktopModeTaskRepository.addVisibleTasksListener(listener, callbackExecutor) } /** @@ -4605,125 +1348,43 @@ class DesktopTasksController( * @param callbackExecutor the executor to call the listener on. */ fun setTaskRegionListener(listener: Consumer<Region>, callbackExecutor: Executor) { - taskRepository.setExclusionRegionListener(listener, callbackExecutor) + desktopModeTaskRepository.setExclusionRegionListener(listener, callbackExecutor) } - // TODO(b/358114479): Move this implementation into a separate class. override fun onUnhandledDrag( launchIntent: PendingIntent, - @UserIdInt userId: Int, - dragEvent: DragEvent, - onFinishCallback: Consumer<Boolean>, + dragSurface: SurfaceControl, + onFinishCallback: Consumer<Boolean> ): Boolean { - val destinationDisplay = dragEvent.displayId - if ( - !desktopState.isDesktopModeSupportedOnDisplay(destinationDisplay) || - getFocusedNonDesktopTasks(destinationDisplay).isNotEmpty() - ) { - // Destination display does not support desktop or has focused - // non-freeform task; ignore the drop. + // TODO(b/320797628): Pass through which display we are dropping onto + val activeTasks = desktopModeTaskRepository.getActiveTasks(DEFAULT_DISPLAY) + if (!activeTasks.any { desktopModeTaskRepository.isVisibleTask(it) }) { + // Not currently in desktop mode, ignore the drop return false } val launchComponent = getComponent(launchIntent) - if (!multiInstanceHelper.supportsMultiInstanceSplit(launchComponent, userId)) { + if (!multiInstanceHelper.supportsMultiInstanceSplit(launchComponent)) { // TODO(b/320797628): Should only return early if there is an existing running task, and // notify the user as well. But for now, just ignore the drop. - logV("Dropped intent does not support multi-instance") + KtProtoLog.v(WM_SHELL_DESKTOP_MODE, "Dropped intent does not support multi-instance") return false } - val taskInfo = - shellTaskOrganizer.getRunningTaskInfo(focusTransitionObserver.globallyFocusedTaskId) - ?: return false - // TODO(b/358114479): Update drag and drop handling to give us visibility into when another - // window will accept a drag event. This way, we can hide the indicator when we won't - // be handling the transition here, allowing us to display the indicator accurately. - // For now, we create the indicator only on drag end and immediately dispose it. - val indicatorType = - updateVisualIndicator( - taskInfo, - dragEvent.dragSurface, - destinationDisplay, - dragEvent.x, - dragEvent.y, - DragStartState.DRAGGED_INTENT, - ) - releaseVisualIndicator() - val windowingMode = - when (indicatorType) { - IndicatorType.TO_FULLSCREEN_INDICATOR -> { - WINDOWING_MODE_FULLSCREEN - } - // NO_INDICATOR can result from a cross-display drag. - IndicatorType.TO_SPLIT_LEFT_INDICATOR, - IndicatorType.TO_SPLIT_RIGHT_INDICATOR, - IndicatorType.TO_DESKTOP_INDICATOR, - IndicatorType.NO_INDICATOR -> { - WINDOWING_MODE_FREEFORM - } - else -> error("Invalid indicator type: $indicatorType") - } - val displayLayout = displayController.getDisplayLayout(destinationDisplay) ?: return false - val newWindowBounds = Rect() - when (indicatorType) { - IndicatorType.TO_DESKTOP_INDICATOR, - IndicatorType.NO_INDICATOR -> { - // Use default bounds, but with the top-center at the drop point. - newWindowBounds.set(calculateDefaultDesktopTaskBounds(displayLayout)) - newWindowBounds.offsetTo( - dragEvent.x.toInt() - (newWindowBounds.width() / 2), - dragEvent.y.toInt(), - ) - } - IndicatorType.TO_SPLIT_RIGHT_INDICATOR -> { - newWindowBounds.set(getSnapBounds(destinationDisplay, SnapPosition.RIGHT)) - } - IndicatorType.TO_SPLIT_LEFT_INDICATOR -> { - newWindowBounds.set(getSnapBounds(destinationDisplay, SnapPosition.LEFT)) - } - else -> { - // Use empty bounds for the fullscreen case. - } - } // Start a new transition to launch the app val opts = ActivityOptions.makeBasic().apply { - launchWindowingMode = windowingMode - launchBounds = newWindowBounds - pendingIntentBackgroundActivityStartMode = - ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS + launchWindowingMode = WINDOWING_MODE_FREEFORM pendingIntentLaunchFlags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_MULTIPLE_TASK - splashScreenStyle = SPLASH_SCREEN_STYLE_ICON - launchDisplayId = destinationDisplay +// setPendingIntentBackgroundActivityStartMode( +// ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_DENIED +// ) + isPendingIntentBackgroundActivityLaunchAllowedByPermission = true } - if (windowingMode == WINDOWING_MODE_FULLSCREEN) { - dragAndDropFullscreenCookie = Binder() - opts.launchCookie = dragAndDropFullscreenCookie - } val wct = WindowContainerTransaction() wct.sendPendingIntent(launchIntent, null, opts.toBundle()) - if (windowingMode == WINDOWING_MODE_FREEFORM) { - if ( - DesktopModeFlags.ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX.isTrue || - DesktopExperienceFlags.ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION.isTrue - ) { - val deskId = getOrCreateDefaultDeskId(destinationDisplay) ?: return false - startLaunchTransition( - TRANSIT_OPEN, - wct, - launchingTaskId = null, - deskId = deskId, - displayId = destinationDisplay, - dragEvent = dragEvent, - ) - } else { - desktopModeDragAndDropTransitionHandler.handleDropEvent(wct, dragEvent) - } - } else { - transitions.startTransition(TRANSIT_OPEN, wct, null) - } + transitions.startTransition(TRANSIT_OPEN, wct, null /* handler */) // Report that this is handled by the listener onFinishCallback.accept(true) @@ -4731,97 +1392,15 @@ class DesktopTasksController( // We've assumed responsibility of cleaning up the drag surface, so do that now // TODO(b/320797628): Do an actual animation here for the drag surface val t = SurfaceControl.Transaction() - t.remove(dragEvent.dragSurface) + t.remove(dragSurface) t.apply() return true } - // TODO(b/366397912): Support full multi-user mode in Windowing. - override fun onUserChanged(newUserId: Int, userContext: Context) { - logV("onUserChanged previousUserId=%d, newUserId=%d", userId, newUserId) - updateCurrentUser(newUserId) - } - - private fun updateCurrentUser(newUserId: Int) { - userId = newUserId - taskRepository = userRepositories.getProfile(userId) - if (this::snapEventHandler.isInitialized) { - snapEventHandler.onUserChange(userId) - } - } - - /** Called when a task's info changes. */ - fun onTaskInfoChanged(taskInfo: RunningTaskInfo) { - if (!DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue) return - val inImmersive = taskRepository.isTaskInFullImmersiveState(taskInfo.taskId) - val requestingImmersive = taskInfo.requestingImmersive - if ( - inImmersive && - !requestingImmersive && - !RecentsTransitionStateListener.isRunning(recentsTransitionState) - ) { - // Exit immersive if the app is no longer requesting it. - desktopImmersiveController.moveTaskToNonImmersive( - taskInfo, - DesktopImmersiveController.ExitReason.APP_NOT_IMMERSIVE, - ) - } - } - - private fun createActivityOptionsForStartTask(): ActivityOptions { - return ActivityOptions.makeBasic().apply { - launchWindowingMode = WINDOWING_MODE_FREEFORM - splashScreenStyle = SPLASH_SCREEN_STYLE_ICON - } - } - private fun dump(pw: PrintWriter, prefix: String) { val innerPrefix = "$prefix " pw.println("${prefix}DesktopTasksController") - desktopConfig.dump(pw, innerPrefix) - userRepositories.dump(pw, innerPrefix) - focusTransitionObserver.dump(pw, innerPrefix) - if (Flags.showDesktopExperienceDevOption()) { - dumpFlags(pw, prefix) - } - } - - private fun dumpFlags(pw: PrintWriter, prefix: String) { - val flagPrefix = "$prefix " - fun dumpFlag( - name: String, - flagNameWidth: Int, - value: Boolean, - flagValue: Boolean, - overridable: Boolean, - ) { - val spaces = " ".repeat(flagNameWidth - name.length) - pw.println( - "${flagPrefix}Flag $name$spaces - $value (default: $flagValue, overridable: $overridable)" - ) - } - - fun dumpFlag(flag: DesktopExperienceFlags, flagNameWidth: Int) { - dumpFlag(flag.flagName, flagNameWidth, flag.isTrue, flag.flagValue, flag.isOverridable) - } - - fun dumpFlag(flag: DesktopExperienceFlag, flagNameWidth: Int) { - dumpFlag(flag.flagName, flagNameWidth, flag.isTrue, flag.flagValue, flag.isOverridable) - } - pw.println("${prefix}DesktopExperienceFlags") - pw.println( - "$prefix Status: ${if (DesktopExperienceFlags.getToggleOverride()) "enabled" else "disabled"}" - ) - val maxEnumFlagName = DesktopExperienceFlags.entries.maxOf { it.flagName.length } - for (flag in DesktopExperienceFlags.entries) { - dumpFlag(flag, maxEnumFlagName + 1) - } - val registeredFlags = DesktopExperienceFlags.getRegisteredFlags() - val maxRegisteredFlagName = registeredFlags.maxOf { it.flagName.length } - pw.println("${prefix}DesktopExperienceFlags.DesktopExperienceFlag") - for (flag in registeredFlags) { - dumpFlag(flag, maxRegisteredFlagName + 1) - } + desktopModeTaskRepository.dump(pw, innerPrefix) } /** The interface for calls from outside the shell, within the host process. */ @@ -4829,7 +1408,7 @@ class DesktopTasksController( private inner class DesktopModeImpl : DesktopMode { override fun addVisibleTasksListener( listener: VisibleTasksListener, - callbackExecutor: Executor, + callbackExecutor: Executor ) { mainExecutor.execute { this@DesktopTasksController.addVisibleTasksListener(listener, callbackExecutor) @@ -4838,7 +1417,7 @@ class DesktopTasksController( override fun addDesktopGestureExclusionRegionListener( listener: Consumer<Region>, - callbackExecutor: Executor, + callbackExecutor: Executor ) { mainExecutor.execute { this@DesktopTasksController.setTaskRegionListener(listener, callbackExecutor) @@ -4847,9 +1426,8 @@ class DesktopTasksController( override fun moveFocusedTaskToDesktop( displayId: Int, - transitionSource: DesktopModeTransitionSource, + transitionSource: DesktopModeTransitionSource ) { - logV("moveFocusedTaskToDesktop") mainExecutor.execute { this@DesktopTasksController.moveFocusedTaskToDesktop(displayId, transitionSource) } @@ -4857,38 +1435,16 @@ class DesktopTasksController( override fun moveFocusedTaskToFullscreen( displayId: Int, - transitionSource: DesktopModeTransitionSource, + transitionSource: DesktopModeTransitionSource ) { - logV("moveFocusedTaskToFullscreen") mainExecutor.execute { this@DesktopTasksController.enterFullscreen(displayId, transitionSource) } } override fun moveFocusedTaskToStageSplit(displayId: Int, leftOrTop: Boolean) { - logV("moveFocusedTaskToStageSplit") mainExecutor.execute { this@DesktopTasksController.enterSplit(displayId, leftOrTop) } } - - override fun registerDesktopFirstListener(listener: DesktopFirstListener) { - logV("registerDesktopFirstListener") - if (desktopFirstListenerManager.isEmpty) { - throw UnsupportedOperationException( - "DesktopFirstListenerManager is not available on this device" - ) - } - mainExecutor.execute { desktopFirstListenerManager.get().registerListener(listener) } - } - - override fun unregisterDesktopFirstListener(listener: DesktopFirstListener) { - logV("unregisterDesktopFirstListener") - if (desktopFirstListenerManager.isEmpty) { - throw UnsupportedOperationException( - "DesktopFirstListenerManager is not available on this device" - ) - } - mainExecutor.execute { desktopFirstListenerManager.get().unregisterListener(listener) } - } } /** The interface for calls from outside the host process. */ @@ -4899,63 +1455,14 @@ class DesktopTasksController( private lateinit var remoteListener: SingleInstanceRemoteListener<DesktopTasksController, IDesktopTaskListener> - private val deskChangeListener: DeskChangeListener = - object : DeskChangeListener { - override fun onDeskAdded(displayId: Int, deskId: Int) { - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "IDesktopModeImpl: onDeskAdded display=%d deskId=%d", - displayId, - deskId, - ) - remoteListener.call { l -> l.onDeskAdded(displayId, deskId) } - } - - override fun onDeskRemoved(displayId: Int, deskId: Int) { - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "IDesktopModeImpl: onDeskRemoved display=%d deskId=%d", - displayId, - deskId, - ) - remoteListener.call { l -> l.onDeskRemoved(displayId, deskId) } - } - - override fun onActiveDeskChanged( - displayId: Int, - newActiveDeskId: Int, - oldActiveDeskId: Int, - ) { - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "IDesktopModeImpl: onActiveDeskChanged display=%d new=%d old=%d", - displayId, - newActiveDeskId, - oldActiveDeskId, - ) - remoteListener.call { l -> - l.onActiveDeskChanged(displayId, newActiveDeskId, oldActiveDeskId) - } - } - - override fun onCanCreateDesksChanged(canCreateDesks: Boolean) { - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "IDesktopModeImpl: onCanCreateDesksChanged canCreateDesks=%b", - canCreateDesks, - ) - remoteListener.call { l -> l.onCanCreateDesksChanged(canCreateDesks) } - } - } - - private val visibleTasksListener: VisibleTasksListener = + private val listener: VisibleTasksListener = object : VisibleTasksListener { override fun onTasksVisibilityChanged(displayId: Int, visibleTasksCount: Int) { - ProtoLog.v( + KtProtoLog.v( WM_SHELL_DESKTOP_MODE, "IDesktopModeImpl: onVisibilityChanged display=%d visible=%d", displayId, - visibleTasksCount, + visibleTasksCount ) remoteListener.call { l -> l.onTasksVisibilityChanged(displayId, visibleTasksCount) @@ -4963,64 +1470,17 @@ class DesktopTasksController( } } - private val taskbarDesktopTaskListener: TaskbarDesktopTaskListener = - object : TaskbarDesktopTaskListener { - override fun onTaskbarCornerRoundingUpdate( - hasTasksRequiringTaskbarRounding: Boolean - ) { - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "IDesktopModeImpl: onTaskbarCornerRoundingUpdate " + - "doesAnyTaskRequireTaskbarRounding=%s", - hasTasksRequiringTaskbarRounding, - ) - - remoteListener.call { l -> - l.onTaskbarCornerRoundingUpdate(hasTasksRequiringTaskbarRounding) - } - } - } - - private val desktopModeEntryExitTransitionListener: DesktopModeEntryExitTransitionListener = - object : DesktopModeEntryExitTransitionListener { - override fun onEnterDesktopModeTransitionStarted(transitionDuration: Int) { - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "IDesktopModeImpl: onEnterDesktopModeTransitionStarted transitionTime=%s", - transitionDuration, - ) - remoteListener.call { l -> - l.onEnterDesktopModeTransitionStarted(transitionDuration) - } - } - - override fun onExitDesktopModeTransitionStarted( - transitionDuration: Int, - shouldEndUpAtHome: Boolean, - ) { - ProtoLog.v( - WM_SHELL_DESKTOP_MODE, - "IDesktopModeImpl: onExitDesktopModeTransitionStarted transitionTime=%s shouldEndUpAtHome=%b", - transitionDuration, - shouldEndUpAtHome, - ) - remoteListener.call { l -> - l.onExitDesktopModeTransitionStarted(transitionDuration, shouldEndUpAtHome) - } - } - } - init { remoteListener = SingleInstanceRemoteListener<DesktopTasksController, IDesktopTaskListener>( controller, { c -> - run { - syncInitialState(c) - registerListeners(c) - } + c.desktopModeTaskRepository.addVisibleTasksListener( + listener, + c.mainExecutor + ) }, - { c -> run { unregisterListeners(c) } }, + { c -> c.desktopModeTaskRepository.removeVisibleTasksListener(listener) } ) } @@ -5030,231 +1490,76 @@ class DesktopTasksController( controller = null } - override fun createDesk(displayId: Int) { - executeRemoteCallWithTaskPermission(controller, "createDesk") { c -> - c.createDesk(displayId) - } - } - - override fun removeDesk(deskId: Int) { - executeRemoteCallWithTaskPermission(controller, "removeDesk") { c -> - c.removeDesk(deskId) - } - } - - override fun removeAllDesks() { - executeRemoteCallWithTaskPermission(controller, "removeAllDesks") { c -> - c.removeAllDesks() - } - } - - override fun activateDesk( - deskId: Int, - remoteTransition: RemoteTransition?, - taskIdInFront: Int, - ) { - executeRemoteCallWithTaskPermission(controller, "activateDesk") { c -> - c.activateDesk( - deskId, - remoteTransition, - if (taskIdInFront != INVALID_TASK_ID) taskIdInFront else null, - ) - } - } - - override fun showDesktopApps( - displayId: Int, - remoteTransition: RemoteTransition?, - taskIdInFront: Int, - ) { + override fun showDesktopApps(displayId: Int, remoteTransition: RemoteTransition?) { executeRemoteCallWithTaskPermission(controller, "showDesktopApps") { c -> - c.showDesktopApps( - displayId, - remoteTransition, - if (taskIdInFront != INVALID_TASK_ID) taskIdInFront else null, - ) + c.showDesktopApps(displayId, remoteTransition) } } - override fun showDesktopApp( - taskId: Int, - remoteTransition: RemoteTransition?, - toFrontReason: DesktopTaskToFrontReason, - ) { + override fun showDesktopApp(taskId: Int) { executeRemoteCallWithTaskPermission(controller, "showDesktopApp") { c -> - c.moveTaskToFront(taskId, remoteTransition, toFrontReason.toUnminimizeReason()) - } - } - - override fun moveToFullscreen( - taskId: Int, - transitionSource: DesktopModeTransitionSource, - remoteTransition: RemoteTransition?, - ) { - executeRemoteCallWithTaskPermission(controller, "moveToFullscreen") { c -> - c.moveToFullscreen(taskId, transitionSource, remoteTransition) + c.moveTaskToFront(taskId) } } override fun stashDesktopApps(displayId: Int) { - ProtoLog.w(WM_SHELL_DESKTOP_MODE, "IDesktopModeImpl: stashDesktopApps is deprecated") + KtProtoLog.w(WM_SHELL_DESKTOP_MODE, "IDesktopModeImpl: stashDesktopApps is deprecated") } override fun hideStashedDesktopApps(displayId: Int) { - ProtoLog.w( + KtProtoLog.w( WM_SHELL_DESKTOP_MODE, - "IDesktopModeImpl: hideStashedDesktopApps is deprecated", + "IDesktopModeImpl: hideStashedDesktopApps is deprecated" ) } + override fun getVisibleTaskCount(displayId: Int): Int { + val result = IntArray(1) + executeRemoteCallWithTaskPermission( + controller, + "getVisibleTaskCount", + { controller -> result[0] = controller.getVisibleTaskCount(displayId) }, + true /* blocking */ + ) + return result[0] + } + override fun onDesktopSplitSelectAnimComplete(taskInfo: RunningTaskInfo) { - executeRemoteCallWithTaskPermission(controller, "onDesktopSplitSelectAnimComplete") { c - -> + executeRemoteCallWithTaskPermission( + controller, + "onDesktopSplitSelectAnimComplete" + ) { c -> c.onDesktopSplitSelectAnimComplete(taskInfo) } } override fun setTaskListener(listener: IDesktopTaskListener?) { - ProtoLog.v(WM_SHELL_DESKTOP_MODE, "IDesktopModeImpl: set task listener=%s", listener) + KtProtoLog.v( + WM_SHELL_DESKTOP_MODE, + "IDesktopModeImpl: set task listener=%s", + listener ?: "null" + ) executeRemoteCallWithTaskPermission(controller, "setTaskListener") { _ -> listener?.let { remoteListener.register(it) } ?: remoteListener.unregister() } } - override fun moveToDesktop( - taskId: Int, - transitionSource: DesktopModeTransitionSource, - remoteTransition: RemoteTransition?, - callback: IMoveToDesktopCallback?, - ) { - executeRemoteCallWithTaskPermission(controller, "moveTaskToDesktop") { c -> - c.moveTaskToDefaultDeskAndActivate( - taskId, - transitionSource = transitionSource, - remoteTransition = remoteTransition, - callback = callback, - ) + override fun moveToDesktop(taskId: Int, transitionSource: DesktopModeTransitionSource) { + executeRemoteCallWithTaskPermission(controller, "moveToDesktop") { c -> + c.moveToDesktop(taskId, transitionSource = transitionSource) } } - - override fun removeDefaultDeskInDisplay(displayId: Int) { - executeRemoteCallWithTaskPermission(controller, "removeDefaultDeskInDisplay") { c -> - c.removeDefaultDeskInDisplay(displayId) - } - } - - override fun moveToExternalDisplay(taskId: Int) { - executeRemoteCallWithTaskPermission(controller, "moveTaskToExternalDisplay") { c -> - c.moveToNextDisplay(taskId) - } - } - - override fun startLaunchIntentTransition(intent: Intent, options: Bundle, displayId: Int) { - executeRemoteCallWithTaskPermission(controller, "startLaunchIntentTransition") { c -> - c.startLaunchIntentTransition(intent, options, displayId) - } - } - - private fun syncInitialState(c: DesktopTasksController) { - remoteListener.call { l -> - l.onListenerConnected( - c.taskRepository.getDeskDisplayStateForRemote(), - c.canCreateDesks(), - ) - } - } - - private fun registerListeners(c: DesktopTasksController) { - if (c.desktopState.enableMultipleDesktops) { - c.taskRepository.addDeskChangeListener(deskChangeListener, c.mainExecutor) - } - c.taskRepository.addVisibleTasksListener(visibleTasksListener, c.mainExecutor) - c.taskbarDesktopTaskListener = taskbarDesktopTaskListener - c.desktopModeEnterExitTransitionListener = desktopModeEntryExitTransitionListener - } - - private fun unregisterListeners(c: DesktopTasksController) { - if (c.desktopState.enableMultipleDesktops) { - c.taskRepository.removeDeskChangeListener(deskChangeListener) - } - c.taskRepository.removeVisibleTasksListener(visibleTasksListener) - c.taskbarDesktopTaskListener = null - c.desktopModeEnterExitTransitionListener = null - } - } - - private fun logV(msg: String, vararg arguments: Any?) { - ProtoLog.v(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) - } - - private fun logD(msg: String, vararg arguments: Any?) { - ProtoLog.d(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) - } - - private fun logW(msg: String, vararg arguments: Any?) { - ProtoLog.w(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) - } - - private fun logE(msg: String, vararg arguments: Any?) { - ProtoLog.e(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) } companion object { @JvmField val DESKTOP_MODE_INITIAL_BOUNDS_SCALE = SystemProperties.getInt("persist.wm.debug.desktop_mode_initial_bounds_scale", 75) / 100f - - // Timeout used for CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD, this is longer than the - // default timeout to avoid timing out in the middle of a drag action. - private val APP_HANDLE_DRAG_HOLD_CUJ_TIMEOUT_MS: Long = TimeUnit.SECONDS.toMillis(10L) - - private const val TAG = "DesktopTasksController" - - private fun DesktopTaskToFrontReason.toUnminimizeReason(): UnminimizeReason = - when (this) { - DesktopTaskToFrontReason.UNKNOWN -> UnminimizeReason.UNKNOWN - DesktopTaskToFrontReason.TASKBAR_TAP -> UnminimizeReason.TASKBAR_TAP - DesktopTaskToFrontReason.ALT_TAB -> UnminimizeReason.ALT_TAB - DesktopTaskToFrontReason.TASKBAR_MANAGE_WINDOW -> - UnminimizeReason.TASKBAR_MANAGE_WINDOW - } - - @JvmField - /** - * A placeholder for a synthetic transition that isn't backed by a true system transition. - */ - val SYNTHETIC_TRANSITION: IBinder = Binder() - - private val enableAltTabKqsFlatenning: DesktopExperienceFlag = - DesktopExperienceFlag( - com.android.launcher3.Flags::enableAltTabKqsFlatenning, - /* shouldOverrideByDevOption= */ true, - com.android.launcher3.Flags.FLAG_ENABLE_ALT_TAB_KQS_FLATENNING, - ) - } - - /** Defines interface for classes that can listen to changes for task resize. */ - // TODO(b/343931111): Migrate to using TransitionObservers when ready - interface TaskbarDesktopTaskListener { - /** - * [hasTasksRequiringTaskbarRounding] is true when a task is either maximized or snapped - * left/right and rounded corners are enabled. - */ - fun onTaskbarCornerRoundingUpdate(hasTasksRequiringTaskbarRounding: Boolean) - } - - /** Defines interface for entering and exiting desktop windowing mode. */ - interface DesktopModeEntryExitTransitionListener { - /** [transitionDuration] time it takes to run enter desktop mode transition */ - fun onEnterDesktopModeTransitionStarted(transitionDuration: Int) - - /** [transitionDuration] time it takes to run exit desktop mode transition */ - fun onExitDesktopModeTransitionStarted(transitionDuration: Int, shouldEndUpAtHome: Boolean) } /** The positions on a screen that a task can snap to. */ enum class SnapPosition { RIGHT, - LEFT, + LEFT } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksLimiter.kt b/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksLimiter.kt index ecf116c41b..0f88384ec2 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksLimiter.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksLimiter.kt @@ -16,476 +16,203 @@ package com.android.wm.shell.desktopmode -import android.app.ActivityManager import android.app.ActivityManager.RunningTaskInfo -import android.content.Context import android.os.IBinder import android.view.SurfaceControl -import android.view.WindowManager.TRANSIT_CLOSE import android.view.WindowManager.TRANSIT_TO_BACK -import android.window.DesktopExperienceFlags -import android.window.DesktopModeFlags import android.window.TransitionInfo import android.window.WindowContainerTransaction import androidx.annotation.VisibleForTesting -import com.android.internal.protolog.ProtoLog import com.android.wm.shell.ShellTaskOrganizer -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.MinimizeReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UnminimizeReason -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer -import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE -import com.android.wm.shell.sysui.UserChangeListener +import com.android.wm.shell.protolog.ShellProtoLogGroup +import com.android.wm.shell.shared.DesktopModeStatus import com.android.wm.shell.transition.Transitions import com.android.wm.shell.transition.Transitions.TransitionObserver -import com.android.wm.shell.windowdecor.tiling.SnapEventHandler +import com.android.wm.shell.util.KtProtoLog /** - * Keeps track of minimized tasks and limits the number of tasks shown in Desktop Mode. + * Limits the number of tasks shown in Desktop Mode. * - * [maxTasksLimit] must be strictly greater than 0 if it's given. - * - * TODO(b/400634379): Separate two responsibilities of this class into two classes. + * This class should only be used if + * [com.android.window.flags.Flags.enableDesktopWindowingTaskLimit()] is true. */ -class DesktopTasksLimiter( - private val transitions: Transitions, - private val desktopUserRepositories: DesktopUserRepositories, - private val shellTaskOrganizer: ShellTaskOrganizer, - private val desksOrganizer: DesksOrganizer, - private val desktopMixedTransitionHandler: DesktopMixedTransitionHandler, - private val maxTasksLimit: Int?, +class DesktopTasksLimiter ( + transitions: Transitions, + private val taskRepository: DesktopModeTaskRepository, + private val shellTaskOrganizer: ShellTaskOrganizer, ) { private val minimizeTransitionObserver = MinimizeTransitionObserver() - @VisibleForTesting val leftoverMinimizedTasksRemover = LeftoverMinimizedTasksRemover() - - private var userId: Int - lateinit var snapEventHandler: SnapEventHandler init { - maxTasksLimit?.let { - require(it > 0) { - "DesktopTasksLimiter: maxTasksLimit should be greater than 0. Current value: $it." - } - } transitions.registerObserver(minimizeTransitionObserver) - userId = ActivityManager.getCurrentUser() - desktopUserRepositories.current.addActiveTaskListener(leftoverMinimizedTasksRemover) - if (maxTasksLimit != null) { - logV("Starting limiter with a maximum of %d tasks", maxTasksLimit) - } else { - logV("Starting limiter without the task limit") - } } - /** Describes a task launch that might trigger a task limit minimize transition. */ - data class LaunchDetails(val deskId: Int, val taskId: Int?) - - data class TaskDetails( - val displayId: Int, - val taskId: Int, - var transitionInfo: TransitionInfo? = null, - val minimizeReason: MinimizeReason? = null, - val unminimizeReason: UnminimizeReason? = null, - ) - - /** - * Returns the task being minimized in the given transition if that transition is a pending or - * active minimize transition. - */ - fun getMinimizingTask(transition: IBinder): TaskDetails? { - return minimizeTransitionObserver.getMinimizingTask(transition) - } - - /** - * Returns the task being unminimized in the given transition if that transition is a pending or - * active unminimize transition. - */ - fun getUnminimizingTask(transition: IBinder): TaskDetails? { - return minimizeTransitionObserver.getUnminimizingTask(transition) - } + private data class TaskDetails (val displayId: Int, val taskId: Int) // TODO(b/333018485): replace this observer when implementing the minimize-animation private inner class MinimizeTransitionObserver : TransitionObserver { - private val pendingTaskLimitTransitionTokens = mutableMapOf<IBinder, LaunchDetails>() - private val pendingTransitionTokensAndTasks = mutableMapOf<IBinder, TaskDetails>() - private val activeTransitionTokensAndTasks = mutableMapOf<IBinder, TaskDetails>() - private val pendingUnminimizeTransitionTokensAndTasks = mutableMapOf<IBinder, TaskDetails>() - private val activeUnminimizeTransitionTokensAndTasks = mutableMapOf<IBinder, TaskDetails>() + private val mPendingTransitionTokensAndTasks = mutableMapOf<IBinder, TaskDetails>() fun addPendingTransitionToken(transition: IBinder, taskDetails: TaskDetails) { - pendingTransitionTokensAndTasks[transition] = taskDetails - } - - fun addPendingTaskLimitTransitionToken(transition: IBinder, details: LaunchDetails) { - pendingTaskLimitTransitionTokens[transition] = details - } - - fun addPendingUnminimizeTransitionToken(transition: IBinder, taskDetails: TaskDetails) { - pendingUnminimizeTransitionTokensAndTasks[transition] = taskDetails - } - - fun getMinimizingTask(transition: IBinder): TaskDetails? { - return pendingTransitionTokensAndTasks[transition] - ?: activeTransitionTokensAndTasks[transition] - } - - fun hasTaskLimitTransition(transition: IBinder): Boolean = - pendingTaskLimitTransitionTokens.contains(transition) - - fun getUnminimizingTask(transition: IBinder): TaskDetails? { - return pendingUnminimizeTransitionTokensAndTasks[transition] - ?: activeUnminimizeTransitionTokensAndTasks[transition] + mPendingTransitionTokensAndTasks[transition] = taskDetails } override fun onTransitionReady( - transition: IBinder, - info: TransitionInfo, - startTransaction: SurfaceControl.Transaction, - finishTransaction: SurfaceControl.Transaction, + transition: IBinder, + info: TransitionInfo, + startTransaction: SurfaceControl.Transaction, + finishTransaction: SurfaceControl.Transaction ) { - val taskRepository = desktopUserRepositories.current - handleTaskLimitTransitionReady(taskRepository, transition, info) - handleMinimizeTransitionReady(taskRepository, transition, info) - handleUnminimizeTransitionReady(transition) - } + val taskToMinimize = mPendingTransitionTokensAndTasks.remove(transition) ?: return - /** - * Handles [#onTransitionReady()] for transitions that might trigger task limit minimize. - */ - private fun handleTaskLimitTransitionReady( - taskRepository: DesktopRepository, - transition: IBinder, - info: TransitionInfo, - ) { - val launchDetails = pendingTaskLimitTransitionTokens.remove(transition) ?: return - logV("handleTaskLimitTransitionReady, transition=$transition, info=$info") - markClosingTasks(taskRepository, info, launchDetails) - transitions.runOnIdle { - val expandedTaskIds = - taskRepository.getExpandedTasksIdsInDeskOrdered(launchDetails.deskId).filter { - !taskRepository.isClosingTask(it) - } - logV("runOnIdle, expandedTasks=$expandedTaskIds, after transition=$transition") - triggerMinimizeTransition(launchDetails.deskId, expandedTaskIds) - } - } - - private fun markClosingTasks( - taskRepository: DesktopRepository, - info: TransitionInfo, - launchDetails: LaunchDetails, - ) { - // markClosingTasks() is a workaround while - // ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS is ramping up, so don't run this - // logic when that flag has been enabled. - if (DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue) { - return - } - info.changes.forEach { change -> - val taskInfo = change.taskInfo ?: return@forEach - if (change.mode != TRANSIT_CLOSE || !taskInfo.isFreeform) { - return@forEach - } - taskRepository.addClosingTask( - taskInfo.displayId, - launchDetails.deskId, - taskInfo.taskId, - ) - } - } - - private fun triggerMinimizeTransition(deskId: Int, expandedTaskIds: List<Int>) { - val task = getRunningTaskToMinimize(expandedTaskIds) ?: return - logV("triggerMinimizeTransition, found running task -> start transition, %s", task) - val wct = WindowContainerTransaction() - addMinimizeChange(deskId, task, wct) - snapEventHandler.removeTaskIfTiled(task.displayId, task.taskId) - val transition = - desktopMixedTransitionHandler.startTaskLimitMinimizeTransition(wct, task.taskId) - addPendingMinimizeChange( - transition, - task.displayId, - task.taskId, - MinimizeReason.TASK_LIMIT, - ) - } - - private fun getRunningTaskToMinimize(expandedTaskIds: List<Int>): RunningTaskInfo? { - var taskIds = expandedTaskIds - for (i in 1..expandedTaskIds.size) { - val taskIdToMinimize = - getTaskIdToMinimize(taskIds, /* launchingNewIntent= */ false) ?: return null - val task = shellTaskOrganizer.getRunningTaskInfo(taskIdToMinimize) - if (task != null) { - return task - } else { - logW( - "Tried to minimize non-running task#%s, Try next task instead.", - taskIdToMinimize, - ) - } - // Ignore the non-existing task - taskIds = taskIds.minus(taskIdToMinimize) - } - return null - } - - private fun handleMinimizeTransitionReady( - taskRepository: DesktopRepository, - transition: IBinder, - info: TransitionInfo, - ) { - val taskToMinimize = pendingTransitionTokensAndTasks.remove(transition) ?: return if (!taskRepository.isActiveTask(taskToMinimize.taskId)) return - if (!isTaskReadyForMinimize(info, taskToMinimize)) { - logV("task %d is not reordered to back nor invis", taskToMinimize.taskId) + + if (!isTaskReorderedToBackOrInvisible(info, taskToMinimize)) { + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "DesktopTasksLimiter: task %d is not reordered to back nor invis", + taskToMinimize.taskId) return } - taskToMinimize.transitionInfo = info - activeTransitionTokensAndTasks[transition] = taskToMinimize - - // Save current bounds before minimizing in case we need to restore to it later. - val boundsBeforeMinimize = - info.changes - .find { change -> change.taskInfo?.taskId == taskToMinimize.taskId } - ?.startAbsBounds - taskRepository.saveBoundsBeforeMinimize(taskToMinimize.taskId, boundsBeforeMinimize) - - this@DesktopTasksLimiter.minimizeTask(taskToMinimize.displayId, taskToMinimize.taskId) - } - - private fun handleUnminimizeTransitionReady(transition: IBinder) { - val taskToUnminimize = - pendingUnminimizeTransitionTokensAndTasks.remove(transition) ?: return - activeUnminimizeTransitionTokensAndTasks[transition] = taskToUnminimize + this@DesktopTasksLimiter.markTaskMinimized( + taskToMinimize.displayId, taskToMinimize.taskId) } /** - * Returns whether the Task [taskDetails] is being reordered to the back in the transition - * [info], or is already invisible. + * Returns whether the given Task is being reordered to the back in the given transition, or + * is already invisible. * - * This check confirms a task should be minimized before minimizing it. + * <p> This check can be used to double-check that a task was indeed minimized before + * marking it as such. */ - private fun isTaskReadyForMinimize( - info: TransitionInfo, - taskDetails: TaskDetails, + private fun isTaskReorderedToBackOrInvisible( + info: TransitionInfo, + taskDetails: TaskDetails ): Boolean { - val taskChange = - info.changes.find { change -> change.taskInfo?.taskId == taskDetails.taskId } - val taskRepository = desktopUserRepositories.current - if (taskChange == null) return !taskRepository.isVisibleTask(taskDetails.taskId) + val taskChange = info.changes.find { change -> + change.taskInfo?.taskId == taskDetails.taskId } + if (taskChange == null) { + return !taskRepository.isVisibleTask(taskDetails.taskId) + } return taskChange.mode == TRANSIT_TO_BACK } - private fun getMinimizeChange(info: TransitionInfo, taskId: Int): TransitionInfo.Change? = - info.changes.find { change -> - change.taskInfo?.taskId == taskId && change.mode == TRANSIT_TO_BACK - } + override fun onTransitionStarting(transition: IBinder) {} override fun onTransitionMerged(merged: IBinder, playing: IBinder) { - activeTransitionTokensAndTasks.remove(merged) - pendingTransitionTokensAndTasks.remove(merged)?.let { taskToTransfer -> - pendingTransitionTokensAndTasks[playing] = taskToTransfer - } - - activeUnminimizeTransitionTokensAndTasks.remove(merged) - pendingUnminimizeTransitionTokensAndTasks.remove(merged)?.let { taskToTransfer -> - pendingUnminimizeTransitionTokensAndTasks[playing] = taskToTransfer + mPendingTransitionTokensAndTasks.remove(merged)?.let { taskToTransfer -> + mPendingTransitionTokensAndTasks[playing] = taskToTransfer } } override fun onTransitionFinished(transition: IBinder, aborted: Boolean) { - pendingTransitionTokensAndTasks.remove(transition) - activeUnminimizeTransitionTokensAndTasks.remove(transition) - pendingUnminimizeTransitionTokensAndTasks.remove(transition) - } - } - - @VisibleForTesting - inner class LeftoverMinimizedTasksRemover : - DesktopRepository.ActiveTasksListener, UserChangeListener { - override fun onActiveTasksChanged(displayId: Int) { - // If back navigation is enabled, we shouldn't remove the leftover tasks - if (DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION.isTrue()) return - val wct = WindowContainerTransaction() - removeLeftoverMinimizedTasks(displayId, wct) - shellTaskOrganizer.applyTransaction(wct) - } - - fun removeLeftoverMinimizedTasks(displayId: Int, wct: WindowContainerTransaction) { - val taskRepository = desktopUserRepositories.current - if (taskRepository.getExpandedTasksOrdered(displayId).isNotEmpty()) return - val remainingMinimizedTasks = taskRepository.getMinimizedTasks(displayId) - if (remainingMinimizedTasks.isEmpty()) return - - logV("Removing leftover minimized tasks: %s", remainingMinimizedTasks) - remainingMinimizedTasks.forEach { taskIdToRemove -> - val taskToRemove = shellTaskOrganizer.getRunningTaskInfo(taskIdToRemove) - if (taskToRemove != null) { - wct.removeTask(taskToRemove.token) - } - } - } - - override fun onUserChanged(newUserId: Int, userContext: Context) { - // Removes active task listener for the previous repository - desktopUserRepositories.getProfile(userId).removeActiveTasksListener(this) - - // Sets active listener for the current repository. - userId = newUserId - desktopUserRepositories.getProfile(newUserId).addActiveTaskListener(this) + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "DesktopTasksLimiter: transition %s finished", transition) + mPendingTransitionTokensAndTasks.remove(transition) } } /** - * Mark task with [taskId] on [displayId] as minimized. - * - * This should be after the corresponding transition has finished so we don't minimize the task - * if the transition fails. + * Mark a task as minimized, this should only be done after the corresponding transition has + * finished so we don't minimize the task if the transition fails. */ - private fun minimizeTask(displayId: Int, taskId: Int) { - logV("Minimize taskId=%d, displayId=%d", taskId, displayId) - val taskRepository = desktopUserRepositories.current + private fun markTaskMinimized(displayId: Int, taskId: Int) { + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "DesktopTasksLimiter: marking %d as minimized", taskId) taskRepository.minimizeTask(displayId, taskId) } /** - * Adds a minimize-transition to [wct] if adding [newFrontTaskInfo] crosses task limit, - * returning the task to minimize. + * Add a minimize-transition to [wct] if adding [newFrontTaskInfo] brings us over the task + * limit. + * + * @param transition the transition that the minimize-transition will be appended to, or null if + * the transition will be started later. + * @return the ID of the minimized task, or null if no task is being minimized. */ - fun addAndGetMinimizeTaskChanges( - deskId: Int, - wct: WindowContainerTransaction, - newFrontTaskId: Int?, - launchingNewIntent: Boolean = false, - ): Int? { - logV("addAndGetMinimizeTaskChanges, newFrontTask=%d", newFrontTaskId) - val taskRepository = desktopUserRepositories.current - val taskIdToMinimize = - getTaskIdToMinimize( - taskRepository.getExpandedTasksIdsInDeskOrdered(deskId), - newFrontTaskId, - launchingNewIntent, - ) - taskIdToMinimize - ?.let { shellTaskOrganizer.getRunningTaskInfo(it) } - ?.let { task -> addMinimizeChange(deskId, task, wct) } - return taskIdToMinimize + fun addAndGetMinimizeTaskChangesIfNeeded( + displayId: Int, + wct: WindowContainerTransaction, + newFrontTaskInfo: RunningTaskInfo, + ): RunningTaskInfo? { + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "DesktopTasksLimiter: addMinimizeBackTaskChangesIfNeeded, newFrontTask=%d", + newFrontTaskInfo.taskId) + val newTaskListOrderedFrontToBack = createOrderedTaskListWithGivenTaskInFront( + taskRepository.getActiveNonMinimizedTasksOrderedFrontToBack(displayId), + newFrontTaskInfo.taskId) + val taskToMinimize = getTaskToMinimizeIfNeeded(newTaskListOrderedFrontToBack) + if (taskToMinimize != null) { + wct.reorder(taskToMinimize.token, false /* onTop */) + return taskToMinimize + } + return null } - private fun addMinimizeChange( - deskId: Int, - task: ActivityManager.RunningTaskInfo, - wct: WindowContainerTransaction, - ) = - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) { - desksOrganizer.minimizeTask(wct, deskId, task) - } else { - wct.reorder(task.token, /* onTop= */ false) - } - /** - * Add a pending transition to trigger a new minimize transition in case the pending transition - * takes us over the task limit. - */ - fun addPendingTaskLimitTransition(transition: IBinder, deskId: Int, taskId: Int?) = - minimizeTransitionObserver.addPendingTaskLimitTransitionToken( - transition, - LaunchDetails(deskId, taskId), - ) - - /** For testing only: returns whether there are any pending task limit transitions. */ - @VisibleForTesting - fun hasTaskLimitTransitionForTesting(transition: IBinder) = - minimizeTransitionObserver.hasTaskLimitTransition(transition) - - /** - * Add a pending minimize transition change to update the list of minimized apps once the + * Add a pending minimize transition change, to update the list of minimized apps once the * transition goes through. */ - fun addPendingMinimizeChange( - transition: IBinder, - displayId: Int, - taskId: Int, - minimizeReason: MinimizeReason, - ) { + fun addPendingMinimizeChange(transition: IBinder, displayId: Int, taskId: Int) { minimizeTransitionObserver.addPendingTransitionToken( - transition, - TaskDetails(displayId, taskId, transitionInfo = null, minimizeReason = minimizeReason), - ) + transition, TaskDetails(displayId, taskId)) } /** - * Add a pending unminimize transition change to allow tracking unminimizing transitions / - * tasks. + * Returns the maximum number of tasks that should ever be displayed at the same time in Desktop + * Mode. */ - fun addPendingUnminimizeChange( - transition: IBinder, - displayId: Int, - taskId: Int, - unminimizeReason: UnminimizeReason, - ) = - minimizeTransitionObserver.addPendingUnminimizeTransitionToken( - transition, - TaskDetails(displayId, taskId, unminimizeReason = unminimizeReason), - ) + fun getMaxTaskLimit(): Int = DesktopModeStatus.getMaxTaskLimit() /** - * Returns the minimized task from the list of visible tasks ordered from front to back with the - * new task placed in front of other tasks. + * Returns the Task to minimize given 1. a list of visible tasks ordered from front to back and + * 2. a new task placed in front of all the others. */ - fun getTaskIdToMinimize( - visibleOrderedTasks: List<Int>, - newTaskIdInFront: Int? = null, - launchingNewIntent: Boolean = false, - ): Int? { - return getTaskIdToMinimize( - createOrderedTaskListWithGivenTaskInFront(visibleOrderedTasks, newTaskIdInFront), - launchingNewIntent, - ) + fun getTaskToMinimizeIfNeeded( + visibleFreeformTaskIdsOrderedFrontToBack: List<Int>, + newTaskIdInFront: Int + ): RunningTaskInfo? { + return getTaskToMinimizeIfNeeded( + createOrderedTaskListWithGivenTaskInFront( + visibleFreeformTaskIdsOrderedFrontToBack, newTaskIdInFront)) } /** Returns the Task to minimize given a list of visible tasks ordered from front to back. */ - private fun getTaskIdToMinimize( - visibleOrderedTasks: List<Int>, - launchingNewIntent: Boolean, - ): Int? { - val newTasksOpening = if (launchingNewIntent) 1 else 0 - val taskLimit = (maxTasksLimit ?: Int.MAX_VALUE) - if (visibleOrderedTasks.size + newTasksOpening <= taskLimit) { - logV( - "No need to minimize; tasks below limit, " + - " visible tasks: %s, new task: %s, task limit: %s", - visibleOrderedTasks, - launchingNewIntent, - taskLimit, - ) + fun getTaskToMinimizeIfNeeded( + visibleFreeformTaskIdsOrderedFrontToBack: List<Int> + ): RunningTaskInfo? { + if (visibleFreeformTaskIdsOrderedFrontToBack.size <= getMaxTaskLimit()) { + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "DesktopTasksLimiter: no need to minimize; tasks below limit") // No need to minimize anything return null } - return visibleOrderedTasks.last() + val taskToMinimize = + shellTaskOrganizer.getRunningTaskInfo( + visibleFreeformTaskIdsOrderedFrontToBack.last()) + if (taskToMinimize == null) { + KtProtoLog.e( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "DesktopTasksLimiter: taskToMinimize == null") + return null + } + return taskToMinimize } private fun createOrderedTaskListWithGivenTaskInFront( - existingTaskIdsOrderedFrontToBack: List<Int>, - newTaskId: Int?, + existingTaskIdsOrderedFrontToBack: List<Int>, + newTaskId: Int ): List<Int> { - return if (newTaskId == null) existingTaskIdsOrderedFrontToBack - else - listOf(newTaskId) + + return listOf(newTaskId) + existingTaskIdsOrderedFrontToBack.filter { taskId -> taskId != newTaskId } } - @VisibleForTesting fun getTransitionObserver(): TransitionObserver = minimizeTransitionObserver - - private fun logV(msg: String, vararg arguments: Any?) { - ProtoLog.v(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) + @VisibleForTesting + fun getTransitionObserver(): TransitionObserver { + return minimizeTransitionObserver } - - private fun logW(msg: String, vararg arguments: Any?) { - ProtoLog.w(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) - } - - private companion object { - const val TAG = "DesktopTasksLimiter" - } -} +} \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksTransitionObserver.kt b/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksTransitionObserver.kt index 87742848ef..dae75f90e3 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksTransitionObserver.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopTasksTransitionObserver.kt @@ -16,59 +16,40 @@ package com.android.wm.shell.desktopmode -import android.app.ActivityManager -import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM +import android.content.Context import android.os.IBinder import android.view.SurfaceControl -import android.view.WindowManager.TRANSIT_CLOSE -import android.view.WindowManager.TRANSIT_OPEN -import android.view.WindowManager.TRANSIT_TO_BACK -import android.window.DesktopExperienceFlags -import android.window.DesktopModeFlags -import android.window.DesktopModeFlags.ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER -import android.window.DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY +import android.view.WindowManager import android.window.TransitionInfo -import android.window.WindowContainerTransaction -import com.android.internal.protolog.ProtoLog -import com.android.wm.shell.ShellTaskOrganizer -import com.android.wm.shell.desktopmode.desktopwallpaperactivity.DesktopWallpaperActivityTokenProvider +import com.android.window.flags.Flags.enableDesktopWindowingWallpaperActivity import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE -import com.android.wm.shell.shared.TransitionUtil.isClosingMode -import com.android.wm.shell.shared.TransitionUtil.isOpeningMode -import com.android.wm.shell.shared.desktopmode.DesktopState +import com.android.wm.shell.shared.DesktopModeStatus import com.android.wm.shell.sysui.ShellInit import com.android.wm.shell.transition.Transitions +import com.android.wm.shell.util.KtProtoLog /** - * A [Transitions.TransitionObserver] that observes shell transitions and updates the - * [DesktopRepository] state TODO: b/332682201 This observes transitions related to desktop mode and - * other transitions that originate both within and outside shell. + * A [Transitions.TransitionObserver] that observes shell transitions and updates + * the [DesktopModeTaskRepository] state TODO: b/332682201 + * This observes transitions related to desktop mode + * and other transitions that originate both within and outside shell. */ class DesktopTasksTransitionObserver( - private val desktopUserRepositories: DesktopUserRepositories, + context: Context, + private val desktopModeTaskRepository: DesktopModeTaskRepository, private val transitions: Transitions, - private val shellTaskOrganizer: ShellTaskOrganizer, - private val desktopMixedTransitionHandler: DesktopMixedTransitionHandler, - private val desktopWallpaperActivityTokenProvider: DesktopWallpaperActivityTokenProvider, - desktopState: DesktopState, - shellInit: ShellInit, + shellInit: ShellInit ) : Transitions.TransitionObserver { - data class CloseWallpaperTransition(val transition: IBinder, val displayId: Int) - - private var transitionToCloseWallpaper: CloseWallpaperTransition? = null - private var closingTransitionToTransitionInfo = HashMap<IBinder, TransitionInfo>() - private var currentProfileId: Int - init { - if (desktopState.canEnterDesktopMode) { + if (Transitions.ENABLE_SHELL_TRANSITIONS && + DesktopModeStatus.canEnterDesktopMode(context)) { shellInit.addInitCallback(::onInit, this) } - currentProfileId = ActivityManager.getCurrentUser() } fun onInit() { - ProtoLog.d(WM_SHELL_DESKTOP_MODE, "DesktopTasksTransitionObserver: onInit") + KtProtoLog.d(WM_SHELL_DESKTOP_MODE, "DesktopTasksTransitionObserver: onInit") transitions.registerObserver(this) } @@ -76,73 +57,10 @@ class DesktopTasksTransitionObserver( transition: IBinder, info: TransitionInfo, startTransaction: SurfaceControl.Transaction, - finishTransaction: SurfaceControl.Transaction, + finishTransaction: SurfaceControl.Transaction ) { // TODO: b/332682201 Update repository state - if ( - DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MODALS_POLICY.isTrue && - (DesktopModeFlags.INCLUDE_TOP_TRANSPARENT_FULLSCREEN_TASK_IN_DESKTOP_HEURISTIC - .isTrue || - DesktopExperienceFlags.FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK.isTrue) - ) { - updateTopTransparentFullscreenTaskId(info) - } updateWallpaperToken(info) - if ( - DesktopExperienceFlags.ENABLE_DESKTOP_CLOSE_TASK_ANIMATION_IN_DTC_BUGFIX.isTrue && - !desktopMixedTransitionHandler.hasTransition(transition) && - isCloseTransition(info) - ) { - desktopMixedTransitionHandler.addPendingMixedTransition( - DesktopMixedTransitionHandler.PendingMixedTransition.Close(transition) - ) - closingTransitionToTransitionInfo.put(transition, info) - } - removeWallpaperOnLastTaskClosingIfNeeded(transition, info) - } - - private fun isCloseTransition(info: TransitionInfo): Boolean { - for (change in info.changes) { - val taskInfo = change.taskInfo - if (taskInfo == null || taskInfo.taskId == -1) { - continue - } - val desktopRepository = desktopUserRepositories.getProfile(taskInfo.userId) - val isInDesktop = desktopRepository.isAnyDeskActive(taskInfo.displayId) - if ( - isInDesktop && - change.mode == TRANSIT_CLOSE && - taskInfo.windowingMode == WINDOWING_MODE_FREEFORM - ) { - return true - } - } - return false - } - - private fun removeWallpaperOnLastTaskClosingIfNeeded( - transition: IBinder, - info: TransitionInfo, - ) { - // TODO: 380868195 - Smooth animation for wallpaper activity closing just by itself - for (change in info.changes) { - val taskInfo = change.taskInfo - if (taskInfo == null || taskInfo.taskId == -1) { - continue - } - - val desktopRepository = desktopUserRepositories.getProfile(taskInfo.userId) - if ( - !desktopRepository.isAnyDeskActive(taskInfo.displayId) && - change.mode == TRANSIT_CLOSE && - taskInfo.windowingMode == WINDOWING_MODE_FREEFORM && - desktopWallpaperActivityTokenProvider.getToken(taskInfo.displayId) != null - ) { - transitionToCloseWallpaper = - CloseWallpaperTransition(transition, taskInfo.displayId) - currentProfileId = taskInfo.userId - } - } } override fun onTransitionStarting(transition: IBinder) { @@ -154,119 +72,25 @@ class DesktopTasksTransitionObserver( } override fun onTransitionFinished(transition: IBinder, aborted: Boolean) { - val lastSeenTransitionToCloseWallpaper = transitionToCloseWallpaper // TODO: b/332682201 Update repository state - if (lastSeenTransitionToCloseWallpaper?.transition == transition) { - // TODO: b/362469671 - Handle merging the animation when desktop is also closing. - desktopWallpaperActivityTokenProvider - .getToken(lastSeenTransitionToCloseWallpaper.displayId) - ?.let { wallpaperActivityToken -> - if (ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER.isTrue()) { - transitions.startTransition( - TRANSIT_TO_BACK, - WindowContainerTransaction() - .reorder(wallpaperActivityToken, /* onTop= */ false), - null, - ) - } else { - transitions.startTransition( - TRANSIT_CLOSE, - WindowContainerTransaction().removeTask(wallpaperActivityToken), - null, - ) - } - } - transitionToCloseWallpaper = null - } - - // If a task is closing and is not handled by back navigation logic, remove it here with a - // follow up transition fully so it doesn't show up on recents. - // - // The reason that this is done here and not on [DesktopTasksController#handleRequest] is - // because for closing tasks we first need to check whether it's because of back navigation - // so that we can minimize it if needed. - val info = closingTransitionToTransitionInfo.remove(transition) ?: return - removeClosingTasks(info) - } - - /** - * Finds the closing tasks in the change and removes them full by a [TRANSIT_CLOSE] transition. - */ - private fun removeClosingTasks(info: TransitionInfo) { - val wct = WindowContainerTransaction() - info.changes - .filter { it.mode == TRANSIT_CLOSE } - .mapNotNull { it.taskInfo } - .forEach { taskInfo -> - if (taskInfo.windowingMode != WINDOWING_MODE_FREEFORM) return@forEach - wct.removeTask(taskInfo.token) - ProtoLog.d( - WM_SHELL_DESKTOP_MODE, - "DesktopTasksTransitionObserver: removing closing task=%d fully", - taskInfo.taskId, - ) - } - - if (!wct.isEmpty) transitions.startTransition(TRANSIT_CLOSE, wct, null) } private fun updateWallpaperToken(info: TransitionInfo) { - if (!ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY.isTrue()) { + if (!enableDesktopWindowingWallpaperActivity()) { return } info.changes.forEach { change -> change.taskInfo?.let { taskInfo -> if (DesktopWallpaperActivity.isWallpaperTask(taskInfo)) { when (change.mode) { - TRANSIT_OPEN -> { - desktopWallpaperActivityTokenProvider.setToken( - taskInfo.token, - taskInfo.displayId, - ) - // After the task for the wallpaper is created, set it non-trimmable. - // This is important to prevent recents from trimming and removing the - // task. - shellTaskOrganizer.applyTransaction( - WindowContainerTransaction() - .setTaskTrimmableFromRecents(taskInfo.token, false) - ) - } - TRANSIT_CLOSE -> - desktopWallpaperActivityTokenProvider.removeToken(taskInfo.displayId) + WindowManager.TRANSIT_OPEN -> + desktopModeTaskRepository.wallpaperActivityToken = taskInfo.token + WindowManager.TRANSIT_CLOSE -> + desktopModeTaskRepository.wallpaperActivityToken = null else -> {} } } } } } - - private fun updateTopTransparentFullscreenTaskId(info: TransitionInfo) { - run forEachLoop@{ - info.changes.forEach { change -> - change.taskInfo?.let { task -> - val desktopRepository = desktopUserRepositories.getProfile(task.userId) - val displayId = task.displayId - val deskId = desktopRepository.getActiveDeskId(displayId) ?: return@forEachLoop - val transparentTaskId = - desktopRepository.getTopTransparentFullscreenTaskData(deskId)?.taskId - if (transparentTaskId == null) return@forEachLoop - val changeMode = change.mode - val taskId = task.taskId - val isTopTransparentFullscreenTaskClosing = - taskId == transparentTaskId && isClosingMode(changeMode) - val isNonTopTransparentFullscreenTaskOpening = - taskId != transparentTaskId && isOpeningMode(changeMode) - // Clear `topTransparentFullscreenTask` information from repository if task - // is closed, sent to back or if a different task is opened, brought to front. - if ( - isTopTransparentFullscreenTaskClosing || - isNonTopTransparentFullscreenTaskOpening - ) { - desktopRepository.clearTopTransparentFullscreenTaskData(deskId) - return@forEachLoop - } - } - } - } - } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DesktopWallpaperActivity.kt b/wmshell/src/com/android/wm/shell/desktopmode/DesktopWallpaperActivity.kt index 6d23e3d770..c4a4474689 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DesktopWallpaperActivity.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DesktopWallpaperActivity.kt @@ -17,12 +17,12 @@ package com.android.wm.shell.desktopmode import android.app.Activity -import android.app.TaskInfo +import android.app.ActivityManager import android.content.ComponentName import android.os.Bundle -import android.util.Log import android.view.WindowManager -import android.window.DesktopExperienceFlags +import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE +import com.android.wm.shell.util.KtProtoLog /** * A transparent activity used in the desktop mode to show the wallpaper under the freeform windows. @@ -36,48 +36,22 @@ import android.window.DesktopExperienceFlags class DesktopWallpaperActivity : Activity() { override fun onCreate(savedInstanceState: Bundle?) { + KtProtoLog.d(WM_SHELL_DESKTOP_MODE, "DesktopWallpaperActivity: onCreate") super.onCreate(savedInstanceState) - Log.d(TAG, "onCreate") - // Set to |false| by default. This shouldn't matter because - // [Activity#onTopResumedActivityChanged] is supposed to be called after [onResume] which - // should set the correct state. However, there's a lifecycle bug that causes it not to - // be called after [onCreate] (see b/416700931) and may leave the wallpaper touchable after - // entering desktop mode with another app. To prevent this make it not focusable by - // default, as it is more likely a user will enter desktop with a task than without one - // (entering through an empty desk may result in a reversed bug: unfocusable when we wanted - // it to be focusable). - updateFocusableFlag(focusable = false) - } - - override fun onTopResumedActivityChanged(isTopResumedActivity: Boolean) { - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue) return - Log.d(TAG, "onTopResumedActivityChanged: $isTopResumedActivity") - // Let the activity be focusable when it is top-resumed (e.g. empty desk), otherwise input - // events will result in an ANR because the focused app would have no focusable window. - updateFocusableFlag(focusable = isTopResumedActivity) - } - - private fun updateFocusableFlag(focusable: Boolean) { - if (focusable) { - window.clearFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE) - } else { - window.addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE) - } + window.addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE) } companion object { - private const val TAG = "DesktopWallpaperActivity" private const val SYSTEM_UI_PACKAGE_NAME = "com.android.systemui" - - @JvmStatic - val wallpaperActivityComponent = + private val wallpaperActivityComponent = ComponentName(SYSTEM_UI_PACKAGE_NAME, DesktopWallpaperActivity::class.java.name) @JvmStatic - fun isWallpaperTask(taskInfo: TaskInfo) = + fun isWallpaperTask(taskInfo: ActivityManager.RunningTaskInfo) = taskInfo.baseIntent.component?.let(::isWallpaperComponent) ?: false @JvmStatic - fun isWallpaperComponent(component: ComponentName) = component == wallpaperActivityComponent + fun isWallpaperComponent(component: ComponentName) = + component == wallpaperActivityComponent } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt b/wmshell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt index f5b55ddf53..d99b724c93 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandler.kt @@ -2,7 +2,6 @@ package com.android.wm.shell.desktopmode import android.animation.Animator import android.animation.AnimatorListenerAdapter -import android.animation.AnimatorSet import android.animation.RectEvaluator import android.animation.ValueAnimator import android.app.ActivityManager.RunningTaskInfo @@ -20,86 +19,65 @@ import android.content.Intent import android.content.Intent.FILL_IN_COMPONENT import android.graphics.PointF import android.graphics.Rect +import android.os.Bundle import android.os.IBinder import android.os.SystemClock -import android.os.SystemProperties -import android.os.UserHandle -import android.util.Size -import android.view.Choreographer import android.view.SurfaceControl -import android.view.SurfaceControl.Transaction -import android.view.WindowManager.TRANSIT_CHANGE import android.view.WindowManager.TRANSIT_CLOSE -import android.window.DesktopExperienceFlags -import android.window.DesktopModeFlags -import android.window.DesktopModeFlags.ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX import android.window.TransitionInfo import android.window.TransitionInfo.Change import android.window.TransitionRequestInfo +import android.window.WindowContainerToken import android.window.WindowContainerTransaction -import com.android.internal.annotations.VisibleForTesting -import com.android.internal.dynamicanimation.animation.SpringForce -import com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD -import com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE -import com.android.internal.jank.InteractionJankMonitor -import com.android.internal.protolog.ProtoLog -import com.android.internal.util.LatencyTracker import com.android.wm.shell.RootTaskDisplayAreaOrganizer -import com.android.wm.shell.animation.FloatProperties -import com.android.wm.shell.bubbles.BubbleController -import com.android.wm.shell.bubbles.BubbleTransitions -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer -import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE +import com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT +import com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT +import com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED +import com.android.wm.shell.common.split.SplitScreenConstants.SplitPosition +import com.android.wm.shell.protolog.ShellProtoLogGroup import com.android.wm.shell.shared.TransitionUtil -import com.android.wm.shell.shared.animation.Interpolators -import com.android.wm.shell.shared.animation.PhysicsAnimator -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper -import com.android.wm.shell.shared.desktopmode.DesktopState -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED -import com.android.wm.shell.shared.split.SplitScreenConstants.SplitPosition import com.android.wm.shell.splitscreen.SplitScreenController import com.android.wm.shell.transition.Transitions -import com.android.wm.shell.transition.Transitions.TRANSIT_CONVERT_TO_BUBBLE +import com.android.wm.shell.transition.Transitions.TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP +import com.android.wm.shell.transition.Transitions.TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP +import com.android.wm.shell.transition.Transitions.TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP import com.android.wm.shell.transition.Transitions.TransitionHandler +import com.android.wm.shell.util.KtProtoLog import com.android.wm.shell.windowdecor.MoveToDesktopAnimator import com.android.wm.shell.windowdecor.MoveToDesktopAnimator.Companion.DRAG_FREEFORM_SCALE import com.android.wm.shell.windowdecor.OnTaskResizeAnimationListener -import java.util.Optional import java.util.function.Supplier -import kotlin.math.max /** * Handles the transition to enter desktop from fullscreen by dragging on the handle bar. It also * handles the cancellation case where the task is dragged back to the status bar area in the same * gesture. - * - * It's a base sealed class that delegates flag dependant logic to its subclasses: - * [DefaultDragToDesktopTransitionHandler] and [SpringDragToDesktopTransitionHandler] - * - * TODO(b/356764679): Clean up after the full flag rollout */ -sealed class DragToDesktopTransitionHandler( +class DragToDesktopTransitionHandler( private val context: Context, private val transitions: Transitions, private val taskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer, - private val desksOrganizer: DesksOrganizer, - private val desktopUserRepositories: DesktopUserRepositories, - protected val interactionJankMonitor: InteractionJankMonitor, - private val bubbleController: Optional<BubbleController>, - protected val transactionSupplier: Supplier<SurfaceControl.Transaction>, - private val desktopState: DesktopState, + private val transactionSupplier: Supplier<SurfaceControl.Transaction> ) : TransitionHandler { - protected val rectEvaluator = RectEvaluator(Rect()) + constructor( + context: Context, + transitions: Transitions, + rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer + ) : this( + context, + transitions, + rootTaskDisplayAreaOrganizer, + Supplier { SurfaceControl.Transaction() } + ) + + private val rectEvaluator = RectEvaluator(Rect()) private val launchHomeIntent = Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_HOME) + private var dragToDesktopStateListener: DragToDesktopStateListener? = null private lateinit var splitScreenController: SplitScreenController private var transitionState: TransitionState? = null + private lateinit var onTaskResizeAnimationListener: OnTaskResizeAnimationListener /** Whether a drag-to-desktop transition is in progress. */ val inProgress: Boolean @@ -108,18 +86,20 @@ sealed class DragToDesktopTransitionHandler( /** The task id of the task currently being dragged from fullscreen/split. */ val draggingTaskId: Int get() = transitionState?.draggedTaskId ?: INVALID_TASK_ID - - /** Listener to receive callback about events during the transition animation. */ - var dragToDesktopStateListener: DragToDesktopStateListener? = null - - /** Task listener for animation start, task bounds resize, and the animation finish */ - lateinit var onTaskResizeAnimationListener: OnTaskResizeAnimationListener + /** Sets a listener to receive callback about events during the transition animation. */ + fun setDragToDesktopStateListener(listener: DragToDesktopStateListener) { + dragToDesktopStateListener = listener + } /** Setter needed to avoid cyclic dependency. */ fun setSplitScreenController(controller: SplitScreenController) { splitScreenController = controller } + fun setOnTaskResizeAnimatorListener(listener: OnTaskResizeAnimationListener) { + onTaskResizeAnimationListener = listener + } + /** * Starts a transition that performs a transient launch of Home so that Home is brought to the * front while still keeping the currently focused task that is being dragged resumed. This @@ -130,13 +110,14 @@ sealed class DragToDesktopTransitionHandler( * after one of the "end" or "cancel" transitions is merged into this transition. */ fun startDragToDesktopTransition( - taskInfo: RunningTaskInfo, + taskId: Int, dragToDesktopAnimator: MoveToDesktopAnimator, - visualIndicator: DesktopModeVisualIndicator?, - dragCancelCallback: Runnable, ) { if (inProgress) { - logV("Drag to desktop transition already in progress.") + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "DragToDesktop: Drag to desktop transition already in progress." + ) return } @@ -146,52 +127,36 @@ sealed class DragToDesktopTransitionHandler( setSourceInfo(SourceInfo.TYPE_DESKTOP_ANIMATION, SystemClock.uptimeMillis()) pendingIntentCreatorBackgroundActivityStartMode = ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED - if (DesktopExperienceFlags.ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY.isTrue) { - launchDisplayId = taskInfo.displayId - } } - // If we are launching home for a profile of a user, just use the [userId] of that user - // instead of the [profileId] to create the context. - val userToLaunchWith = - UserHandle.of(desktopUserRepositories.getUserIdForProfile(taskInfo.userId)) val pendingIntent = - PendingIntent.getActivityAsUser( - context.createContextAsUser(userToLaunchWith, /* flags= */ 0), - /* requestCode= */ 0, + PendingIntent.getActivity( + context, + 0 /* requestCode */, launchHomeIntent, FLAG_MUTABLE or FLAG_ALLOW_UNSAFE_IMPLICIT_INTENT or FILL_IN_COMPONENT, - options.toBundle(), - userToLaunchWith, + options.toBundle() ) val wct = WindowContainerTransaction() - // The app that is being dragged into desktop mode might cause new transitions, make this - // launch transient to make sure those transitions can execute in parallel and thus won't - // block the end-drag transition. - val intentOptions = ActivityOptions.makeBasic().setTransientLaunch() - wct.sendPendingIntent(pendingIntent, launchHomeIntent, intentOptions.toBundle()) + wct.sendPendingIntent(pendingIntent, launchHomeIntent, Bundle()) val startTransitionToken = transitions.startTransition(TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP, wct, this) transitionState = - if (isSplitTask(taskInfo.taskId)) { + if (isSplitTask(taskId)) { val otherTask = - getOtherSplitTask(taskInfo.taskId) + getOtherSplitTask(taskId) ?: throw IllegalStateException("Expected split task to have a counterpart.") TransitionState.FromSplit( - draggedTaskId = taskInfo.taskId, + draggedTaskId = taskId, dragAnimator = dragToDesktopAnimator, startTransitionToken = startTransitionToken, - otherSplitTask = otherTask, - visualIndicator = visualIndicator, - dragCancelCallback = dragCancelCallback, + otherSplitTask = otherTask ) } else { TransitionState.FromFullscreen( - draggedTaskId = taskInfo.taskId, + draggedTaskId = taskId, dragAnimator = dragToDesktopAnimator, - startTransitionToken = startTransitionToken, - visualIndicator = visualIndicator, - dragCancelCallback = dragCancelCallback, + startTransitionToken = startTransitionToken ) } } @@ -204,30 +169,18 @@ sealed class DragToDesktopTransitionHandler( */ fun finishDragToDesktopTransition(wct: WindowContainerTransaction): IBinder? { if (!inProgress) { - logV("finishDragToDesktop: not in progress, returning") // Don't attempt to finish a drag to desktop transition since there is no transition in // progress which means that the drag to desktop transition was never successfully // started. return null } - val state = requireTransitionState() - if (state.startAborted) { - logV("finishDragToDesktop: start was aborted, clearing state") + if (requireTransitionState().startAborted) { // Don't attempt to complete the drag-to-desktop since the start transition didn't // succeed as expected. Just reset the state as if nothing happened. clearState() return null } - if (state.startInterrupted) { - logV("finishDragToDesktop: start was interrupted, returning") - // If start was interrupted we've either already requested a cancel/end transition - so - // we should let that request play out, or we're cancelling the drag-to-desktop - // transition altogether, so just return here. - return null - } - state.endTransitionToken = - transitions.startTransition(TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, wct, this) - return state.endTransitionToken + return transitions.startTransition(TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, wct, this) } /** @@ -238,9 +191,7 @@ sealed class DragToDesktopTransitionHandler( * means the user wants to remain in their current windowing mode. */ fun cancelDragToDesktopTransition(cancelState: CancelState) { - logV("cancelDragToDesktop cancel=%s", cancelState) if (!inProgress) { - logV("cancelDragToDesktop: not in progress, returning") // Don't attempt to cancel a drag to desktop transition since there is no transition in // progress which means that the drag to desktop transition was never successfully // started. @@ -248,19 +199,11 @@ sealed class DragToDesktopTransitionHandler( } val state = requireTransitionState() if (state.startAborted) { - logV("cancelDragToDesktop: start was aborted, clearing state") // Don't attempt to cancel the drag-to-desktop since the start transition didn't // succeed as expected. Just reset the state as if nothing happened. clearState() return } - if (state.startInterrupted) { - logV("cancelDragToDesktop: start was interrupted, returning") - // If start was interrupted we've either already requested a cancel/end transition - so - // we should let that request play out, or we're cancelling the drag-to-desktop - // transition altogether, so just return here. - return - } state.cancelState = cancelState if (state.draggedTaskChange != null && cancelState == CancelState.STANDARD_CANCEL) { @@ -268,47 +211,25 @@ sealed class DragToDesktopTransitionHandler( // transient to start and merge. Animate the cancellation (scale back to original // bounds) first before actually starting the cancel transition so that the wallpaper // is visible behind the animating task. - state.activeCancelAnimation = startCancelAnimation() + startCancelAnimation() } else if ( state.draggedTaskChange != null && - (cancelState == CancelState.CANCEL_SPLIT_LEFT || + (cancelState == CancelState.CANCEL_SPLIT_LEFT || cancelState == CancelState.CANCEL_SPLIT_RIGHT) - ) { + ) { // We have a valid dragged task, but the animation will be handled by // SplitScreenController; request the transition here. - @SplitPosition - val splitPosition = - if (cancelState == CancelState.CANCEL_SPLIT_LEFT) { - SPLIT_POSITION_TOP_OR_LEFT - } else { - SPLIT_POSITION_BOTTOM_OR_RIGHT - } - logV( - "cancelDragToDesktop finishing start-transition and starting split-select " + - "request to position=%s with state=%s", - splitPosition, - state, - ) - state.startTransitionFinishTransaction?.apply() - val finishWCT = WindowContainerTransaction() - val taskInfo = state.draggedTaskChange?.taskInfo ?: error("Expected non-null taskInfo") - finishWCT.setDoNotPip(taskInfo.token) - state.startTransitionFinishCb?.onTransitionFinished(finishWCT) - requestSplitFromScaledTask(splitPosition, homeRunning = true) - clearState() - } else if ( - state.draggedTaskChange != null && - (cancelState == CancelState.CANCEL_BUBBLE_LEFT || - cancelState == CancelState.CANCEL_BUBBLE_RIGHT) - ) { - if (bubbleController.isEmpty || state !is TransitionState.FromFullscreen) { - // TODO(b/388853233): add support for dragging split task to bubble - state.activeCancelAnimation = startCancelAnimation() + @SplitPosition val splitPosition = if (cancelState == CancelState.CANCEL_SPLIT_LEFT) { + SPLIT_POSITION_TOP_OR_LEFT } else { - // Animation is handled by BubbleController - val onLeft = cancelState == CancelState.CANCEL_BUBBLE_LEFT - requestBubbleFromScaledTask(onLeft) + SPLIT_POSITION_BOTTOM_OR_RIGHT } + val wct = WindowContainerTransaction() + restoreWindowOrder(wct, state) + state.startTransitionFinishTransaction?.apply() + state.startTransitionFinishCb?.onTransitionFinished(null /* wct */) + requestSplitFromScaledTask(splitPosition, wct) + clearState() } else { // There's no dragged task, this can happen when the "cancel" happened too quickly // before the "start" transition is even ready (like on a fling gesture). The @@ -322,81 +243,48 @@ sealed class DragToDesktopTransitionHandler( /** Calculate the bounds of a scaled task, then use those bounds to request split select. */ private fun requestSplitFromScaledTask( @SplitPosition splitPosition: Int, - homeRunning: Boolean, + wct: WindowContainerTransaction ) { val state = requireTransitionState() - val taskInfo = state.draggedTaskChange?.taskInfo ?: error("Expected non-null taskInfo") - val animatedTaskBounds = getAnimatedTaskBounds() - state.dragAnimator.cancelAnimator() - requestSplitSelect(taskInfo, splitPosition, animatedTaskBounds, homeRunning) - } - - private fun getAnimatedTaskBounds(): Rect { - val state = requireTransitionState() - val taskInfo = state.draggedTaskChange?.taskInfo ?: error("Expected non-null taskInfo") + val taskInfo = state.draggedTaskChange?.taskInfo + ?: error("Expected non-null taskInfo") val taskBounds = Rect(taskInfo.configuration.windowConfiguration.bounds) val taskScale = state.dragAnimator.scale val scaledWidth = taskBounds.width() * taskScale val scaledHeight = taskBounds.height() * taskScale val dragPosition = PointF(state.dragAnimator.position) - return Rect( + state.dragAnimator.cancelAnimator() + val animatedTaskBounds = Rect( dragPosition.x.toInt(), dragPosition.y.toInt(), (dragPosition.x + scaledWidth).toInt(), - (dragPosition.y + scaledHeight).toInt(), + (dragPosition.y + scaledHeight).toInt() ) + requestSplitSelect(wct, taskInfo, splitPosition, animatedTaskBounds) } private fun requestSplitSelect( + wct: WindowContainerTransaction, taskInfo: RunningTaskInfo, @SplitPosition splitPosition: Int, - taskBounds: Rect = Rect(taskInfo.configuration.windowConfiguration.bounds), - homeRunning: Boolean, + taskBounds: Rect = Rect(taskInfo.configuration.windowConfiguration.bounds) ) { - val wct = WindowContainerTransaction() - if (!DesktopModeFlags.ENABLE_INPUT_LAYER_TRANSITION_FIX.isTrue) { - wct.setWindowingMode(taskInfo.token, WINDOWING_MODE_MULTI_WINDOW) + // Prepare to exit split in order to enter split select. + if (taskInfo.windowingMode == WINDOWING_MODE_MULTI_WINDOW) { + splitScreenController.prepareExitSplitScreen( + wct, + splitScreenController.getStageOfTask(taskInfo.taskId), + SplitScreenController.EXIT_REASON_DESKTOP_MODE + ) + splitScreenController.transitionHandler.onSplitToDesktop() } + wct.setWindowingMode(taskInfo.token, WINDOWING_MODE_MULTI_WINDOW) wct.setDensityDpi(taskInfo.token, context.resources.displayMetrics.densityDpi) - - val startRecents = !homeRunning - val delegateWctToRecents = startRecents && !wct.isEmpty - if (!startRecents && !wct.isEmpty) { - // Split-select won't start a transition, so apply |wct| here. - transitions.startTransition(TRANSIT_CHANGE, wct, /* handler= */ null) - } splitScreenController.requestEnterSplitSelect( taskInfo, + wct, splitPosition, - taskBounds, - startRecents, - /* withRecentsWct= */ if (delegateWctToRecents) wct else null, - ) - } - - private fun requestBubbleFromScaledTask(onLeft: Boolean) { - // TODO(b/391928049): update density once we can drag from desktop to bubble - val state = requireTransitionState() - val taskInfo = state.draggedTaskChange?.taskInfo ?: error("Expected non-null taskInfo") - val dragPosition = PointF(state.dragAnimator.position) - val scale = state.dragAnimator.scale - val cornerRadius = state.dragAnimator.cornerRadius - state.dragAnimator.cancelAnimator() - requestBubble(taskInfo, onLeft, scale, cornerRadius, dragPosition) - } - - private fun requestBubble( - taskInfo: RunningTaskInfo, - onLeft: Boolean, - taskScale: Float = 1f, - cornerRadius: Float = 0f, - dragPosition: PointF = PointF(0f, 0f), - ) { - val controller = - bubbleController.orElseThrow { IllegalStateException("BubbleController not set") } - controller.expandStackAndSelectBubble( - taskInfo, - BubbleTransitions.DragData(onLeft, taskScale, cornerRadius, dragPosition), + taskBounds ) } @@ -405,23 +293,10 @@ sealed class DragToDesktopTransitionHandler( info: TransitionInfo, startTransaction: SurfaceControl.Transaction, finishTransaction: SurfaceControl.Transaction, - finishCallback: Transitions.TransitionFinishCallback, + finishCallback: Transitions.TransitionFinishCallback ): Boolean { val state = requireTransitionState() - if ( - handleCancelOrExitAfterInterrupt( - transition, - info, - startTransaction, - finishTransaction, - finishCallback, - state, - ) - ) { - return true - } - val isStartDragToDesktop = info.type == TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP && transition == state.startTransitionToken @@ -429,28 +304,29 @@ sealed class DragToDesktopTransitionHandler( return false } - logV("startAnimation: state=${state.toSimpleString()}") - - val layers = calculateStartDragLayers(info) + // Layering: non-wallpaper, non-home tasks excluding the dragged task go at the bottom, + // then Home on top of that, wallpaper on top of that and finally the dragged task on top + // of everything. + val appLayers = info.changes.size + val homeLayers = info.changes.size * 2 + val wallpaperLayers = info.changes.size * 3 + val dragLayer = wallpaperLayers val leafTaskFilter = TransitionUtil.LeafTaskFilter() info.changes.withIndex().forEach { (i, change) -> if (TransitionUtil.isWallpaper(change)) { - logV("Wallpaper change: change=$change") - val layer = layers.topWallpaperLayer - i + val layer = wallpaperLayers - i startTransaction.apply { setLayer(change.leash, layer) show(change.leash) } } else if (isHomeChange(change)) { - logV("Home change: change=$change") - state.homeChange = change - val layer = layers.topHomeLayer - i + state.homeToken = change.container + val layer = homeLayers - i startTransaction.apply { setLayer(change.leash, layer) show(change.leash) } } else if (TransitionInfo.isIndependent(change, info)) { - logV("Independent change: taskId=${change.taskInfo?.taskId}, change=$change") // Root(s). when (state) { is TransitionState.FromSplit -> { @@ -459,11 +335,11 @@ sealed class DragToDesktopTransitionHandler( if (state.cancelState == CancelState.NO_CANCEL) { // Normal case, split root goes to the bottom behind everything // else. - layers.topAppLayer - i + appLayers - i } else { // Cancel-early case, pretend nothing happened so split root stays // top. - layers.dragLayer + dragLayer } startTransaction.apply { setLayer(change.leash, layer) @@ -478,7 +354,7 @@ sealed class DragToDesktopTransitionHandler( state.draggedTaskChange = change val bounds = change.endAbsBounds startTransaction.apply { - setLayer(change.leash, layers.dragLayer) + setLayer(change.leash, dragLayer) setWindowCrop(change.leash, bounds.width(), bounds.height()) show(change.leash) } @@ -491,7 +367,7 @@ sealed class DragToDesktopTransitionHandler( state.otherRootChanges.add(change) val bounds = change.endAbsBounds startTransaction.apply { - setLayer(change.leash, layers.topAppLayer - i) + setLayer(change.leash, appLayers - i) setWindowCrop(change.leash, bounds.width(), bounds.height()) show(change.leash) } @@ -499,7 +375,6 @@ sealed class DragToDesktopTransitionHandler( } } } else if (leafTaskFilter.test(change)) { - logV("Leaf task: taskId=${change.taskInfo?.taskId}, change=$change") // When dragging one of the split tasks, the dragged leaf needs to be re-parented // so that it can be layered separately from the rest of the split root/stages. // The split root including the other split side was layered behind the wallpaper @@ -509,7 +384,7 @@ sealed class DragToDesktopTransitionHandler( // occurred. if ( change.taskInfo?.taskId == state.draggedTaskId && - state.cancelState != CancelState.STANDARD_CANCEL + state.cancelState != CancelState.STANDARD_CANCEL ) { // We need access to the dragged task's change in both non-cancel and split // cancel cases. @@ -517,32 +392,24 @@ sealed class DragToDesktopTransitionHandler( } if ( change.taskInfo?.taskId == state.draggedTaskId && - state.cancelState == CancelState.NO_CANCEL - ) { + state.cancelState == CancelState.NO_CANCEL + ) { taskDisplayAreaOrganizer.reparentToDisplayArea( change.endDisplayId, change.leash, - startTransaction, + startTransaction ) val bounds = change.endAbsBounds startTransaction.apply { - setLayer(change.leash, layers.dragLayer) + setLayer(change.leash, dragLayer) setWindowCrop(change.leash, bounds.width(), bounds.height()) show(change.leash) } } } } - state.surfaceLayers = layers state.startTransitionFinishCb = finishCallback state.startTransitionFinishTransaction = finishTransaction - - val taskChange = state.draggedTaskChange ?: error("Expected non-null task change.") - val taskInfo = taskChange.taskInfo ?: error("Expected non-null task info.") - - if (DesktopModeFlags.ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX.isTrue) { - attachIndicatorToTransitionRoot(state, info, taskInfo, startTransaction) - } startTransaction.apply() if (state.cancelState == CancelState.NO_CANCEL) { @@ -559,163 +426,39 @@ sealed class DragToDesktopTransitionHandler( startCancelDragToDesktopTransition() } else if ( state.cancelState == CancelState.CANCEL_SPLIT_LEFT || - state.cancelState == CancelState.CANCEL_SPLIT_RIGHT - ) { + state.cancelState == CancelState.CANCEL_SPLIT_RIGHT + ){ // Cancel-early case for split-cancel. The state was flagged already as a cancel for // requesting split select. Similar to the above, this can happen due to quick fling // gestures. We can simply request split here without needing to calculate animated // task bounds as the task has not shrunk at all. - val splitPosition = - if (state.cancelState == CancelState.CANCEL_SPLIT_LEFT) { - SPLIT_POSITION_TOP_OR_LEFT - } else { - SPLIT_POSITION_BOTTOM_OR_RIGHT - } + val splitPosition = if (state.cancelState == CancelState.CANCEL_SPLIT_LEFT) { + SPLIT_POSITION_TOP_OR_LEFT + } else { + SPLIT_POSITION_BOTTOM_OR_RIGHT + } + val taskInfo = state.draggedTaskChange?.taskInfo + ?: error("Expected non-null task info.") + val wct = WindowContainerTransaction() + restoreWindowOrder(wct) state.startTransitionFinishTransaction?.apply() - state.startTransitionFinishCb?.onTransitionFinished(/* wct= */ null) - requestSplitSelect(taskInfo, splitPosition, homeRunning = true) - } else if ( - state.cancelState == CancelState.CANCEL_BUBBLE_LEFT || - state.cancelState == CancelState.CANCEL_BUBBLE_RIGHT - ) { - if (bubbleController.isEmpty || state !is TransitionState.FromFullscreen) { - // TODO(b/388853233): add support for dragging split task to bubble - startCancelDragToDesktopTransition() - return true - } - val taskInfo = - state.draggedTaskChange?.taskInfo ?: error("Expected non-null task info.") - val onLeft = state.cancelState == CancelState.CANCEL_BUBBLE_LEFT - requestBubble(taskInfo, onLeft) + state.startTransitionFinishCb?.onTransitionFinished(null /* wct */) + requestSplitSelect(wct, taskInfo, splitPosition) } return true } - private fun attachIndicatorToTransitionRoot( - state: TransitionState, - info: TransitionInfo, - taskInfo: RunningTaskInfo, - t: SurfaceControl.Transaction, - ) { - val transitionRoot = info.getRoot(info.findRootIndex(taskInfo.displayId)) - state.visualIndicator?.let { - // Attach the indicator to the transition root so that it's removed at the end of the - // transition regardless of whether we managed to release the indicator. - it.reparentLeash(t, transitionRoot.leash) - it.fadeInIndicator() - } - } - - private fun handleCancelOrExitAfterInterrupt( - transition: IBinder, - info: TransitionInfo, - startTransaction: Transaction, - finishTransaction: Transaction, - finishCallback: Transitions.TransitionFinishCallback, - state: TransitionState, - ): Boolean { - if (!ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX.isTrue) { - return false - } - val isCancelDragToDesktop = - info.type == TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP && - transition == state.cancelTransitionToken - val isEndDragToDesktop = - info.type == TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP && - transition == state.endTransitionToken - // We should only receive cancel or end transitions through startAnimation() if the - // start transition was interrupted while a cancel- or end-transition had already - // been requested. Finish the cancel/end transition to avoid having to deal with more - // incoming transitions, and clear the state for the next start-drag transition. - if (!isCancelDragToDesktop && !isEndDragToDesktop) { - return false - } - if (!state.startInterrupted) { - logW( - "Not interrupted, but received startAnimation for cancel/end drag." + - "isCancel=$isCancelDragToDesktop, isEnd=$isEndDragToDesktop" - ) - return false - } - logV( - "startAnimation: interrupted -> " + - "isCancel=$isCancelDragToDesktop, isEnd=$isEndDragToDesktop" - ) - if (isEndDragToDesktop) { - setupEndDragToDesktop(info, startTransaction, finishTransaction) - animateEndDragToDesktop(startTransaction = startTransaction, finishCallback) - } else { // isCancelDragToDesktop - // Similar to when we merge the cancel transition: ensure all tasks involved in the - // cancel transition are shown, and finish the transition immediately. - info.changes.forEach { change -> - startTransaction.show(change.leash) - finishTransaction.show(change.leash) - } - } - startTransaction.apply() - finishCallback.onTransitionFinished(/* wct= */ null) - clearState() - return true - } - - /** - * Calculates start drag layers for transition [info]. The leash layer is calculated based on - * its change position in the transition, e.g. `appLayer = appLayers - i`, where i is the change - * index. - */ - protected fun calculateStartDragLayers(info: TransitionInfo): DragToDesktopLayers { - if (BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { - val hasDesktop = desktopState.isDesktopModeSupportedOnDisplay(info.getRoot(0).displayId) - if (!hasDesktop) { - return calculateStartDragLayersWithoutDesktop(info) - } - } - return calculateStartDragLayersWithDesktop(info) - } - - protected abstract fun calculateStartDragLayersWithDesktop( - info: TransitionInfo - ): DragToDesktopLayers - - /** - * @return layers in order: - * - appLayers - below everything z < 0, effectively hides the leash - * - wallpaperLayers - wallpaper on top of apps, z in 0..<size - * - homeLayers - home task on top of wallpaper, z in size..<size*2 - * - dragLayer - the dragged task on top of everything, z == size*2 - */ - private fun calculateStartDragLayersWithoutDesktop(info: TransitionInfo): DragToDesktopLayers { - return DragToDesktopLayers( - topAppLayer = -1, - topWallpaperLayer = info.changes.size - 1, - topHomeLayer = info.changes.size * 2 - 1, - dragLayer = info.changes.size * 2, - ) - } - override fun mergeAnimation( transition: IBinder, info: TransitionInfo, - startT: SurfaceControl.Transaction, - finishT: SurfaceControl.Transaction, + t: SurfaceControl.Transaction, mergeTarget: IBinder, - finishCallback: Transitions.TransitionFinishCallback, + finishCallback: Transitions.TransitionFinishCallback ) { val state = requireTransitionState() // We don't want to merge the split select animation if that's what we requested. - if ( - state.cancelState == CancelState.CANCEL_SPLIT_LEFT || - state.cancelState == CancelState.CANCEL_SPLIT_RIGHT - ) { - logV("mergeAnimation: cancel through split") - clearState() - return - } - // In case of bubble animation, finish the initial desktop drag animation, but keep the - // current animation running and have bubbles take over - if (info.type == TRANSIT_CONVERT_TO_BUBBLE) { - logV("mergeAnimation: convert-to-bubble") - state.startTransitionFinishCb?.onTransitionFinished(/* wct= */ null) + if (state.cancelState == CancelState.CANCEL_SPLIT_LEFT || + state.cancelState == CancelState.CANCEL_SPLIT_RIGHT) { clearState() return } @@ -734,248 +477,116 @@ sealed class DragToDesktopTransitionHandler( state.startTransitionFinishCb ?: error("Start transition expected to be waiting for merge but wasn't") if (isEndTransition) { - logV("mergeAnimation: end-transition, target=$mergeTarget") - state.mergedEndTransition = true - setupEndDragToDesktop( - info, - startTransaction = startT, - finishTransaction = startTransactionFinishT, - ) - // Call finishCallback to merge animation before startTransitionFinishCb is called - finishCallback.onTransitionFinished(/* wct= */ null) - LatencyTracker.getInstance(context) - .onActionEnd(LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG) - animateEndDragToDesktop(startTransaction = startT, startTransitionFinishCb) - return - } - if (isCancelTransition) { - logV("mergeAnimation: cancel-transition, target=$mergeTarget") - LatencyTracker.getInstance(context) - .onActionCancel(LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG) - info.changes.forEach { change -> - startT.show(change.leash) - startTransactionFinishT.show(change.leash) - } - startT.apply() - finishCallback.onTransitionFinished(/* wct= */ null) - startTransitionFinishCb.onTransitionFinished(/* wct= */ null) - clearState() - return - } - logW("unhandled merge transition: transitionInfo=$info") - // Handle unknown incoming transitions by finishing the start transition. For now, only do - // this if we've already requested a cancel- or end transition. If we've already merged the - // end-transition, or if the end-transition is running on its own, then just wait until that - // finishes instead. If we've merged the cancel-transition we've finished the - // start-transition and won't reach this code. - if (mergeTarget == state.startTransitionToken && !state.mergedEndTransition) { - interruptStartTransition(state) - } - } - - private fun isCancelOrEndTransitionRequested(state: TransitionState): Boolean = - state.cancelTransitionToken != null || state.endTransitionToken != null - - private fun interruptStartTransition(state: TransitionState) { - if (!ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX.isTrue) { - return - } - if (isCancelOrEndTransitionRequested(state)) { - logV("interruptStartTransition, bookend requested -> finish start transition") - // Finish the start-drag transition, we will finish the overall transition properly when - // receiving #startAnimation for Cancel/End. - state.startTransitionFinishCb?.onTransitionFinished(/* wct= */ null) - state.dragAnimator.cancelAnimator() - } else { - logV("interruptStartTransition, bookend not requested -> animate to Home") - // Animate to Home, and then finish the start-drag transition. Since there is no other - // (end/cancel) transition requested that will be the end of the overall transition. - state.dragAnimator.cancelAnimator() - state.dragCancelCallback?.run() - createInterruptToHomeAnimator(transactionSupplier.get(), state) { - state.startTransitionFinishCb?.onTransitionFinished(/* wct= */ null) - clearState() - } - } - state.activeCancelAnimation?.removeAllListeners() - state.activeCancelAnimation?.cancel() - state.activeCancelAnimation = null - // Keep the transition state so we can deal with Cancel/End properly in #startAnimation. - state.startInterrupted = true - dragToDesktopStateListener?.onTransitionInterrupted() - // Cancel CUJs here as they won't be accurate now that an incoming transition is playing. - interactionJankMonitor.cancel(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD) - interactionJankMonitor.cancel(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE) - LatencyTracker.getInstance(context) - .onActionCancel(LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG) - } - - private fun createInterruptToHomeAnimator( - transaction: Transaction, - state: TransitionState, - endCallback: Runnable, - ) { - val homeLeash = state.homeChange?.leash ?: error("Expected home leash to be non-null") - val draggedTaskLeash = - state.draggedTaskChange?.leash ?: error("Expected dragged leash to be non-null") - val homeAnimator = createInterruptAlphaAnimator(transaction, homeLeash, toShow = true) - val draggedTaskAnimator = - createInterruptAlphaAnimator(transaction, draggedTaskLeash, toShow = false) - val animatorSet = AnimatorSet() - animatorSet.playTogether(homeAnimator, draggedTaskAnimator) - animatorSet.addListener( - object : AnimatorListenerAdapter() { - override fun onAnimationEnd(animation: Animator) { - endCallback.run() + info.changes.withIndex().forEach { (i, change) -> + // If we're exiting split, hide the remaining split task. + if ( + state is TransitionState.FromSplit && + change.taskInfo?.taskId == state.otherSplitTask + ) { + t.hide(change.leash) + startTransactionFinishT.hide(change.leash) } - } - ) - animatorSet.start() - } - - private fun createInterruptAlphaAnimator( - transaction: Transaction, - leash: SurfaceControl, - toShow: Boolean, - ) = - ValueAnimator.ofFloat(if (toShow) 0f else 1f, if (toShow) 1f else 0f).apply { - transaction.show(leash) - duration = DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS - interpolator = Interpolators.LINEAR - addUpdateListener { animation -> - transaction - .setAlpha(leash, animation.animatedValue as Float) - .setFrameTimeline(Choreographer.getInstance().vsyncId) - .apply() - } - } - - protected open fun setupEndDragToDesktop( - info: TransitionInfo, - startTransaction: SurfaceControl.Transaction, - finishTransaction: SurfaceControl.Transaction, - ) { - val state = requireTransitionState() - val freeformTaskChanges = mutableListOf<Change>() - info.changes.forEachIndexed { i, change -> - when { - state is TransitionState.FromSplit && - change.taskInfo?.taskId == state.otherSplitTask -> { - // If we're exiting split, hide the remaining split task. - startTransaction.hide(change.leash) - finishTransaction.hide(change.leash) - } - change.mode == TRANSIT_CLOSE -> { - startTransaction.hide(change.leash) - finishTransaction.hide(change.leash) - } - change.taskInfo?.taskId == state.draggedTaskId -> { - startTransaction.show(change.leash) - finishTransaction.show(change.leash) + if (change.mode == TRANSIT_CLOSE) { + t.hide(change.leash) + startTransactionFinishT.hide(change.leash) + } else if (change.taskInfo?.taskId == state.draggedTaskId) { + t.show(change.leash) + startTransactionFinishT.show(change.leash) state.draggedTaskChange = change - // Restoring the dragged leash layer as it gets reset in the merge transition - state.surfaceLayers?.let { - startTransaction.setLayer(change.leash, it.dragLayer) - } - } - // Other desktop tasks that are being restored go behind the dragged task. - change.taskInfo?.windowingMode == WINDOWING_MODE_FREEFORM - // Except for the desk root, that should not be sent back or it might - // take the dragged task surface back with it. - && !desksOrganizer.isDeskChange(change) -> { + } else if (change.taskInfo?.windowingMode == WINDOWING_MODE_FREEFORM) { + // Other freeform tasks that are being restored go behind the dragged task. val draggedTaskLeash = state.draggedTaskChange?.leash ?: error("Expected dragged leash to be non-null") - startTransaction.setRelativeLayer(change.leash, draggedTaskLeash, -i) - finishTransaction.setRelativeLayer(change.leash, draggedTaskLeash, -i) - freeformTaskChanges.add(change) + t.setRelativeLayer(change.leash, draggedTaskLeash, -i) + startTransactionFinishT.setRelativeLayer(change.leash, draggedTaskLeash, -i) } } - } - state.freeformTaskChanges = freeformTaskChanges - } + val draggedTaskChange = + state.draggedTaskChange + ?: throw IllegalStateException("Expected non-null change of dragged task") + val draggedTaskLeash = draggedTaskChange.leash + val startBounds = draggedTaskChange.startAbsBounds + val endBounds = draggedTaskChange.endAbsBounds - protected open fun animateEndDragToDesktop( - startTransaction: SurfaceControl.Transaction, - startTransitionFinishCb: Transitions.TransitionFinishCallback, - ) { - val state = requireTransitionState() - val draggedTaskChange = - state.draggedTaskChange ?: error("Expected non-null change of dragged task") - val draggedTaskLeash = draggedTaskChange.leash - val startBounds = draggedTaskChange.startAbsBounds - val endBounds = draggedTaskChange.endAbsBounds - - // Cancel any animation that may be currently playing; we will use the relevant - // details of that animation here. - state.dragAnimator.cancelAnimator() - // We still apply scale to task bounds; as we animate the bounds to their - // end value, animate scale to 1. - val startScale = state.dragAnimator.scale - val startPosition = state.dragAnimator.position - val unscaledStartWidth = startBounds.width() - val unscaledStartHeight = startBounds.height() - val unscaledStartBounds = - Rect( - startPosition.x.toInt(), - startPosition.y.toInt(), - startPosition.x.toInt() + unscaledStartWidth, - startPosition.y.toInt() + unscaledStartHeight, - ) - - dragToDesktopStateListener?.onCommitToDesktopAnimationStart() - // Accept the merge by applying the merging transaction (applied by #showResizeVeil) - // and finish callback. Show the veil and position the task at the first frame before - // starting the final animation. - onTaskResizeAnimationListener.onAnimationStart( - state.draggedTaskId, - startTransaction, - unscaledStartBounds, - ) - val tx: SurfaceControl.Transaction = transactionSupplier.get() - ValueAnimator.ofObject(rectEvaluator, unscaledStartBounds, endBounds) - .setDuration(DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS) - .apply { - addUpdateListener { animator -> - val animBounds = animator.animatedValue as Rect - val animFraction = animator.animatedFraction - // Progress scale from starting value to 1 as animation plays. - val animScale = startScale + animFraction * (1 - startScale) - tx.apply { - setScale(draggedTaskLeash, animScale, animScale) - setPosition( - draggedTaskLeash, - animBounds.left.toFloat(), - animBounds.top.toFloat(), - ) - setWindowCrop(draggedTaskLeash, animBounds.width(), animBounds.height()) - } - onTaskResizeAnimationListener.onBoundsChange( - state.draggedTaskId, - tx, - animBounds, - ) - } - addListener( - object : AnimatorListenerAdapter() { - override fun onAnimationEnd(animation: Animator) { - onTaskResizeAnimationListener.onAnimationEnd(state.draggedTaskId) - startTransitionFinishCb.onTransitionFinished(/* wct= */ null) - clearState() - interactionJankMonitor.end( - CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE - ) - } - } + // Pause any animation that may be currently playing; we will use the relevant + // details of that animation here. + state.dragAnimator.cancelAnimator() + // We still apply scale to task bounds; as we animate the bounds to their + // end value, animate scale to 1. + val startScale = state.dragAnimator.scale + val startPosition = state.dragAnimator.position + val unscaledStartWidth = startBounds.width() + val unscaledStartHeight = startBounds.height() + val unscaledStartBounds = + Rect( + startPosition.x.toInt(), + startPosition.y.toInt(), + startPosition.x.toInt() + unscaledStartWidth, + startPosition.y.toInt() + unscaledStartHeight ) - start() + + dragToDesktopStateListener?.onCommitToDesktopAnimationStart(t) + // Accept the merge by applying the merging transaction (applied by #showResizeVeil) + // and finish callback. Show the veil and position the task at the first frame before + // starting the final animation. + onTaskResizeAnimationListener.onAnimationStart( + state.draggedTaskId, + t, + unscaledStartBounds + ) + finishCallback.onTransitionFinished(null /* wct */) + val tx: SurfaceControl.Transaction = transactionSupplier.get() + ValueAnimator.ofObject(rectEvaluator, unscaledStartBounds, endBounds) + .setDuration(DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS) + .apply { + addUpdateListener { animator -> + val animBounds = animator.animatedValue as Rect + val animFraction = animator.animatedFraction + // Progress scale from starting value to 1 as animation plays. + val animScale = startScale + animFraction * (1 - startScale) + tx.apply { + setScale(draggedTaskLeash, animScale, animScale) + setPosition( + draggedTaskLeash, + animBounds.left.toFloat(), + animBounds.top.toFloat() + ) + setWindowCrop(draggedTaskLeash, animBounds.width(), animBounds.height()) + } + onTaskResizeAnimationListener.onBoundsChange( + state.draggedTaskId, + tx, + animBounds + ) + } + addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationEnd(animation: Animator) { + onTaskResizeAnimationListener.onAnimationEnd(state.draggedTaskId) + startTransitionFinishCb.onTransitionFinished(null /* null */) + clearState() + } + } + ) + start() + } + } else if (isCancelTransition) { + info.changes.forEach { change -> + t.show(change.leash) + startTransactionFinishT.show(change.leash) } + t.apply() + finishCallback.onTransitionFinished(null /* wct */) + startTransitionFinishCb.onTransitionFinished(null /* wct */) + clearState() + } } override fun handleRequest( transition: IBinder, - request: TransitionRequestInfo, + request: TransitionRequestInfo ): WindowContainerTransaction? { // Only handle transitions started from shell. return null @@ -984,40 +595,23 @@ sealed class DragToDesktopTransitionHandler( override fun onTransitionConsumed( transition: IBinder, aborted: Boolean, - finishTransaction: SurfaceControl.Transaction?, + finishTransaction: SurfaceControl.Transaction? ) { val state = transitionState ?: return - if (!aborted) { - return - } - if (state.startTransitionToken == transition) { - logV("onTransitionConsumed() start transition aborted") + if (aborted && state.startTransitionToken == transition) { + KtProtoLog.v( + ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "DragToDesktop: onTransitionConsumed() start transition aborted" + ) state.startAborted = true - // The start-transition (DRAG_HOLD) is aborted, cancel its jank interaction. - interactionJankMonitor.cancel(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD) - } else if (state.cancelTransitionToken == transition) { - state.draggedTaskChange?.leash?.let { state.startTransitionFinishTransaction?.show(it) } - state.startTransitionFinishCb?.onTransitionFinished(/* wct= */ null) - clearState() - } else { - // This transition being aborted is neither the start, nor the cancel transition, so - // it must be the finish transition (DRAG_RELEASE); cancel its jank interaction. - interactionJankMonitor.cancel(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE) } } - /** Checks if the change is a home task change */ - @VisibleForTesting - fun isHomeChange(change: Change): Boolean { - return change.taskInfo?.let { - it.activityType == ACTIVITY_TYPE_HOME && - // Skip translucent wizard task with type home - // TODO(b/368334295): Remove when the multiple home changes issue is resolved - !(it.isTopActivityTransparent && it.numActivities == 1) - } ?: false + private fun isHomeChange(change: Change): Boolean { + return change.taskInfo?.activityType == ACTIVITY_TYPE_HOME } - private fun startCancelAnimation(): Animator { + private fun startCancelAnimation() { val state = requireTransitionState() val dragToDesktopAnimator = state.dragAnimator @@ -1034,7 +628,7 @@ sealed class DragToDesktopTransitionHandler( val dx = targetX - x val dy = targetY - y val tx: SurfaceControl.Transaction = transactionSupplier.get() - return ValueAnimator.ofFloat(DRAG_FREEFORM_SCALE, 1f) + ValueAnimator.ofFloat(DRAG_FREEFORM_SCALE, 1f) .setDuration(DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS) .apply { addUpdateListener { animator -> @@ -1052,8 +646,7 @@ sealed class DragToDesktopTransitionHandler( addListener( object : AnimatorListenerAdapter() { override fun onAnimationEnd(animation: Animator) { - state.activeCancelAnimation = null - dragToDesktopStateListener?.onCancelToDesktopAnimationEnd() + dragToDesktopStateListener?.onCancelToDesktopAnimationEnd(tx) // Start the cancel transition to restore order. startCancelDragToDesktopTransition() } @@ -1068,12 +661,14 @@ sealed class DragToDesktopTransitionHandler( val wct = WindowContainerTransaction() restoreWindowOrder(wct, state) state.cancelTransitionToken = - transitions.startTransition(TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP, wct, this) + transitions.startTransition( + TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP, wct, this + ) } private fun restoreWindowOrder( wct: WindowContainerTransaction, - state: TransitionState = requireTransitionState(), + state: TransitionState = requireTransitionState() ) { when (state) { is TransitionState.FromFullscreen -> { @@ -1086,32 +681,32 @@ sealed class DragToDesktopTransitionHandler( // TODO(b/322852244): investigate why even though these "other" tasks are // reordered in front of home and behind the translucent dragged task, its // surface is not visible on screen. - wct.reorder(wc, /* onTop= */ true) + wct.reorder(wc, true /* toTop */) } val wc = state.draggedTaskChange?.container ?: error("Dragged task should be non-null before cancelling") // Then the dragged task a the very top. - wct.reorder(wc, /* onTop= */ true) + wct.reorder(wc, true /* toTop */) } is TransitionState.FromSplit -> { val wc = state.splitRootChange?.container ?: error("Split root should be non-null before cancelling") - wct.reorder(wc, /* onTop= */ true) + wct.reorder(wc, true /* toTop */) } } - val homeWc = - state.homeChange?.container ?: error("Home task should be non-null before cancelling") + val homeWc = state.homeToken ?: error("Home task should be non-null before cancelling") wct.restoreTransientOrder(homeWc) } - protected fun clearState() { + private fun clearState() { transitionState = null } - private fun isSplitTask(taskId: Int): Boolean = - splitScreenController.isTaskInSplitScreen(taskId) + private fun isSplitTask(taskId: Int): Boolean { + return splitScreenController.isTaskInSplitScreen(taskId) + } private fun getOtherSplitTask(taskId: Int): Int? { val splitPos = splitScreenController.getSplitPosition(taskId) @@ -1125,36 +720,14 @@ sealed class DragToDesktopTransitionHandler( return splitScreenController.getTaskInfo(otherTaskPos)?.taskId } - protected fun requireTransitionState(): TransitionState = - transitionState ?: error("Expected non-null transition state") + private fun requireTransitionState(): TransitionState { + return transitionState ?: error("Expected non-null transition state") + } - /** - * Represents the layering (Z order) that will be given to any window based on its type during - * the "start" transition of the drag-to-desktop transition. - * - * @param topAppLayer Used to calculate the app layer z-order = `topAppLayer - changeIndex`. - * @param topHomeLayer Used to calculate the home layer z-order = `topHomeLayer - changeIndex`. - * @param topWallpaperLayer Used to calculate the wallpaper layer z-order = `topWallpaperLayer - - * changeIndex` - * @param dragLayer Defines the drag layer z-order - */ - data class DragToDesktopLayers( - val topAppLayer: Int, - val topHomeLayer: Int, - val topWallpaperLayer: Int, - val dragLayer: Int, - ) - - /** Listener for various events happening during the DragToDesktop transition. */ interface DragToDesktopStateListener { - /** Indicates that the animation into Desktop has started. */ - fun onCommitToDesktopAnimationStart() + fun onCommitToDesktopAnimationStart(tx: SurfaceControl.Transaction) - /** Called when the animation to cancel the desktop-drag has finished. */ - fun onCancelToDesktopAnimationEnd() - - /** Indicates that the drag-to-desktop transition has been interrupted. */ - fun onTransitionInterrupted() + fun onCancelToDesktopAnimationEnd(tx: SurfaceControl.Transaction) } sealed class TransitionState { @@ -1164,18 +737,10 @@ sealed class DragToDesktopTransitionHandler( abstract var startTransitionFinishCb: Transitions.TransitionFinishCallback? abstract var startTransitionFinishTransaction: SurfaceControl.Transaction? abstract var cancelTransitionToken: IBinder? - abstract var homeChange: Change? + abstract var homeToken: WindowContainerToken? abstract var draggedTaskChange: Change? - abstract var freeformTaskChanges: List<Change> - abstract var surfaceLayers: DragToDesktopLayers? abstract var cancelState: CancelState abstract var startAborted: Boolean - abstract val visualIndicator: DesktopModeVisualIndicator? - abstract var startInterrupted: Boolean - abstract var endTransitionToken: IBinder? - abstract var mergedEndTransition: Boolean - abstract var activeCancelAnimation: Animator? - abstract var dragCancelCallback: Runnable? data class FromFullscreen( override val draggedTaskId: Int, @@ -1184,19 +749,11 @@ sealed class DragToDesktopTransitionHandler( override var startTransitionFinishCb: Transitions.TransitionFinishCallback? = null, override var startTransitionFinishTransaction: SurfaceControl.Transaction? = null, override var cancelTransitionToken: IBinder? = null, - override var homeChange: Change? = null, + override var homeToken: WindowContainerToken? = null, override var draggedTaskChange: Change? = null, - override var freeformTaskChanges: List<Change> = emptyList(), - override var surfaceLayers: DragToDesktopLayers? = null, override var cancelState: CancelState = CancelState.NO_CANCEL, override var startAborted: Boolean = false, - override val visualIndicator: DesktopModeVisualIndicator?, - override var startInterrupted: Boolean = false, - override var endTransitionToken: IBinder? = null, - override var mergedEndTransition: Boolean = false, - override var activeCancelAnimation: Animator? = null, - override var dragCancelCallback: Runnable? = null, - var otherRootChanges: MutableList<Change> = mutableListOf(), + var otherRootChanges: MutableList<Change> = mutableListOf() ) : TransitionState() data class FromSplit( @@ -1206,34 +763,13 @@ sealed class DragToDesktopTransitionHandler( override var startTransitionFinishCb: Transitions.TransitionFinishCallback? = null, override var startTransitionFinishTransaction: SurfaceControl.Transaction? = null, override var cancelTransitionToken: IBinder? = null, - override var homeChange: Change? = null, + override var homeToken: WindowContainerToken? = null, override var draggedTaskChange: Change? = null, - override var freeformTaskChanges: List<Change> = emptyList(), - override var surfaceLayers: DragToDesktopLayers? = null, override var cancelState: CancelState = CancelState.NO_CANCEL, override var startAborted: Boolean = false, - override val visualIndicator: DesktopModeVisualIndicator?, - override var startInterrupted: Boolean = false, - override var endTransitionToken: IBinder? = null, - override var mergedEndTransition: Boolean = false, - override var activeCancelAnimation: Animator? = null, - override var dragCancelCallback: Runnable? = null, var splitRootChange: Change? = null, - var otherSplitTask: Int, + var otherSplitTask: Int ) : TransitionState() - - fun toSimpleString(): String { - val origin = - when (this) { - is FromSplit -> "FromSplit" - is FromFullscreen -> "FromFullscreen" - } - val draggedTask = "draggedTaskId=$draggedTaskId" - val aborted = "aborted=$startAborted:" - val interrupted = "interrupted=$startInterrupted" - val cancelState = "cancelState=$cancelState" - return "$origin: $draggedTask, $aborted, $interrupted, $cancelState" - } } /** Enum to provide context on cancelling a drag to desktop event. */ @@ -1245,350 +781,11 @@ sealed class DragToDesktopTransitionHandler( /** A cancel event where the task will request to enter split on the left side. */ CANCEL_SPLIT_LEFT, /** A cancel event where the task will request to enter split on the right side. */ - CANCEL_SPLIT_RIGHT, - /** A cancel event where the task will request to bubble on the left side. */ - CANCEL_BUBBLE_LEFT, - /** A cancel event where the task will request to bubble on the right side. */ - CANCEL_BUBBLE_RIGHT, - } - - private fun logV(msg: String, vararg arguments: Any?) { - ProtoLog.v(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) - } - - private fun logW(msg: String, vararg arguments: Any?) { - ProtoLog.w(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) + CANCEL_SPLIT_RIGHT } companion object { - private const val TAG = "DragToDesktopTransitionHandler" /** The duration of the animation to commit or cancel the drag-to-desktop gesture. */ - @VisibleForTesting(visibility = VisibleForTesting.Visibility.PACKAGE) - const val DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS = 336L - } -} - -/** Enables flagged rollout of the [SpringDragToDesktopTransitionHandler] */ -class DefaultDragToDesktopTransitionHandler -@JvmOverloads -constructor( - context: Context, - transitions: Transitions, - taskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer, - desksOrganizer: DesksOrganizer, - desktopUserRepositories: DesktopUserRepositories, - interactionJankMonitor: InteractionJankMonitor, - bubbleController: Optional<BubbleController>, - transactionSupplier: Supplier<SurfaceControl.Transaction> = Supplier { - SurfaceControl.Transaction() - }, - desktopState: DesktopState, -) : - DragToDesktopTransitionHandler( - context, - transitions, - taskDisplayAreaOrganizer, - desksOrganizer, - desktopUserRepositories, - interactionJankMonitor, - bubbleController, - transactionSupplier, - desktopState, - ) { - - /** - * @return layers in order: - * - appLayers - non-wallpaper, non-home tasks excluding the dragged task go at the bottom - * - homeLayers - home task on top of apps - * - wallpaperLayers - wallpaper on top of home - * - dragLayer - the dragged task on top of everything, there's only 1 dragged task - */ - override fun calculateStartDragLayersWithDesktop(info: TransitionInfo): DragToDesktopLayers = - DragToDesktopLayers( - topAppLayer = info.changes.size, - topHomeLayer = info.changes.size * 2, - topWallpaperLayer = info.changes.size * 3, - dragLayer = info.changes.size * 3, - ) -} - -/** Desktop transition handler with spring based animation for the end drag to desktop transition */ -class SpringDragToDesktopTransitionHandler -@JvmOverloads -constructor( - context: Context, - transitions: Transitions, - taskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer, - desksOrganizer: DesksOrganizer, - desktopUserRepositories: DesktopUserRepositories, - interactionJankMonitor: InteractionJankMonitor, - bubbleController: Optional<BubbleController>, - transactionSupplier: Supplier<SurfaceControl.Transaction> = Supplier { - SurfaceControl.Transaction() - }, - desktopState: DesktopState, -) : - DragToDesktopTransitionHandler( - context, - transitions, - taskDisplayAreaOrganizer, - desksOrganizer, - desktopUserRepositories, - interactionJankMonitor, - bubbleController, - transactionSupplier, - desktopState, - ) { - - private val positionSpringConfig = - PhysicsAnimator.SpringConfig(POSITION_SPRING_STIFFNESS, POSITION_SPRING_DAMPING_RATIO) - - private val sizeSpringConfig = - PhysicsAnimator.SpringConfig(SIZE_SPRING_STIFFNESS, SIZE_SPRING_DAMPING_RATIO) - - /** - * @return layers in order: - * - appLayers - below everything z < 0, effectively hides the leash - * - homeLayers - home task on top of apps, z in 0..<size - * - wallpaperLayers - wallpaper on top of home, z in size..<size*2 - * - dragLayer - the dragged task on top of everything, z == size*2 - */ - override fun calculateStartDragLayersWithDesktop(info: TransitionInfo): DragToDesktopLayers = - DragToDesktopLayers( - topAppLayer = -1, - topHomeLayer = info.changes.size - 1, - topWallpaperLayer = info.changes.size * 2 - 1, - dragLayer = info.changes.size * 2, - ) - - override fun setupEndDragToDesktop( - info: TransitionInfo, - startTransaction: SurfaceControl.Transaction, - finishTransaction: SurfaceControl.Transaction, - ) { - super.setupEndDragToDesktop(info, startTransaction, finishTransaction) - - val state = requireTransitionState() - val homeLeash = state.homeChange?.leash - if (homeLeash == null) { - logE("home leash is null") - } else { - // Hide home on finish to prevent flickering when wallpaper activity flag is enabled - finishTransaction.hide(homeLeash) - } - // Setup freeform tasks before animation - state.freeformTaskChanges.forEach { change -> - val startScale = FREEFORM_TASKS_INITIAL_SCALE - val startX = - change.endAbsBounds.left + change.endAbsBounds.width() * (1 - startScale) / 2 - val startY = - change.endAbsBounds.top + change.endAbsBounds.height() * (1 - startScale) / 2 - startTransaction.setPosition(change.leash, startX, startY) - startTransaction.setScale(change.leash, startScale, startScale) - startTransaction.setAlpha(change.leash, 0f) - } - } - - override fun animateEndDragToDesktop( - startTransaction: SurfaceControl.Transaction, - startTransitionFinishCb: Transitions.TransitionFinishCallback, - ) { - val state = requireTransitionState() - val draggedTaskChange = - state.draggedTaskChange ?: error("Expected non-null change of dragged task") - val draggedTaskLeash = draggedTaskChange.leash - val freeformTaskChanges = state.freeformTaskChanges - val startSize = - Size( - draggedTaskChange.startAbsBounds.width(), - draggedTaskChange.startAbsBounds.height(), - ) - val endBounds = draggedTaskChange.endAbsBounds - val currentVelocity = state.dragAnimator.computeCurrentVelocity() - - // Cancel any animation that may be currently playing; we will use the relevant - // details of that animation here. - state.dragAnimator.cancelAnimator() - // We still apply scale to task bounds; as we animate the bounds to their - // end value, animate scale to 1. - val startScale = state.dragAnimator.scale - val startPosition = state.dragAnimator.position - val startBounds = - Rect( - startPosition.x.toInt(), - startPosition.y.toInt(), - startPosition.x.toInt() + startSize.width, - startPosition.x.toInt() + startSize.height, - ) - - logV( - "animateEndDragToDesktop: startSize=$startSize, endBounds=$endBounds, " + - "startScale=$startScale, startPosition=$startPosition, " + - "startBounds=$startBounds" - ) - - dragToDesktopStateListener?.onCommitToDesktopAnimationStart() - // Accept the merge by applying the merging transaction (applied by #showResizeVeil) - // and finish callback. Show the veil and position the task at the first frame before - // starting the final animation. - onTaskResizeAnimationListener.onAnimationStart( - state.draggedTaskId, - startTransaction, - startBounds, - ) - - val tx: SurfaceControl.Transaction = transactionSupplier.get() - PhysicsAnimator.getInstance(startBounds) - .spring( - FloatProperties.RECT_X, - endBounds.left.toFloat(), - currentVelocity.x, - positionSpringConfig, - ) - .spring( - FloatProperties.RECT_Y, - endBounds.top.toFloat(), - currentVelocity.y, - positionSpringConfig, - ) - .spring(FloatProperties.RECT_WIDTH, endBounds.width().toFloat(), sizeSpringConfig) - .spring(FloatProperties.RECT_HEIGHT, endBounds.height().toFloat(), sizeSpringConfig) - .addUpdateListener { animBounds, _ -> - val animFraction = - getAnimationFraction( - startBounds = startBounds, - endBounds = endBounds, - animBounds = animBounds, - ) - val animScale = startScale + animFraction * (1 - startScale) - // Freeform animation starts with freeform animation offset relative to the commit - // animation and plays until the commit animation ends. For instance: - // - if the freeform animation offset is `0.0` the freeform tasks animate alongside - // - if the freeform animation offset is `0.6` the freeform tasks will - // start animating at 60% fraction of the commit animation and will complete when - // the commit animation fraction is 100%. - // - if the freeform animation offset is `1.0` then freeform tasks will appear - // without animation after commit animation finishes. - val freeformAnimFraction = - if (FREEFORM_TASKS_ANIM_OFFSET != 1f) { - max(animFraction - FREEFORM_TASKS_ANIM_OFFSET, 0f) / - (1f - FREEFORM_TASKS_ANIM_OFFSET) - } else { - 0f - } - val freeformStartScale = FREEFORM_TASKS_INITIAL_SCALE - val freeformAnimScale = - freeformStartScale + freeformAnimFraction * (1 - freeformStartScale) - tx.apply { - // Update dragged task - setScale(draggedTaskLeash, animScale, animScale) - setPosition( - draggedTaskLeash, - animBounds.left.toFloat(), - animBounds.top.toFloat(), - ) - // Update freeform tasks - freeformTaskChanges.forEach { - val startX = - it.endAbsBounds.left + - it.endAbsBounds.width() * (1 - freeformAnimScale) / 2 - val startY = - it.endAbsBounds.top + - it.endAbsBounds.height() * (1 - freeformAnimScale) / 2 - setPosition(it.leash, startX, startY) - setScale(it.leash, freeformAnimScale, freeformAnimScale) - setAlpha(it.leash, freeformAnimFraction) - } - } - onTaskResizeAnimationListener.onBoundsChange(state.draggedTaskId, tx, animBounds) - } - .withEndActions({ - onTaskResizeAnimationListener.onAnimationEnd(state.draggedTaskId) - startTransitionFinishCb.onTransitionFinished(/* wct= */ null) - clearState() - interactionJankMonitor.end(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE) - }) - .start() - } - - companion object { - private const val TAG = "SpringDragToDesktopTransitionHandler" - - fun getAnimationFraction(startBounds: Rect, endBounds: Rect, animBounds: Rect): Float { - if (startBounds.width() != endBounds.width()) { - return (animBounds.width() - startBounds.width()).toFloat() / - (endBounds.width() - startBounds.width()) - } - if (startBounds.height() != endBounds.height()) { - return (animBounds.height() - startBounds.height()).toFloat() / - (endBounds.height() - startBounds.height()) - } - logW( - "same start and end sizes, returning 0: " + - "startBounds=$startBounds, endBounds=$endBounds, animBounds=$animBounds" - ) - return 0f - } - - private fun logV(msg: String, vararg arguments: Any?) { - ProtoLog.v(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) - } - - private fun logW(msg: String, vararg arguments: Any?) { - ProtoLog.v(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) - } - - private fun logE(msg: String, vararg arguments: Any?) { - ProtoLog.e(WM_SHELL_DESKTOP_MODE, "%s: $msg", TAG, *arguments) - } - - /** The freeform tasks initial scale when committing the drag-to-desktop gesture. */ - private val FREEFORM_TASKS_INITIAL_SCALE = - propertyValue("freeform_tasks_initial_scale", scale = 100f, default = 0.9f) - - /** The freeform tasks animation offset relative to the whole animation duration. */ - private val FREEFORM_TASKS_ANIM_OFFSET = - propertyValue("freeform_tasks_anim_offset", scale = 100f, default = 0.5f) - - /** The spring force stiffness used to place the window into the final position. */ - val POSITION_SPRING_STIFFNESS = - propertyValue("position_stiffness", default = SpringForce.STIFFNESS_LOW) - - /** The spring force damping ratio used to place the window into the final position. */ - val POSITION_SPRING_DAMPING_RATIO = - propertyValue( - "position_damping_ratio", - scale = 100f, - default = SpringForce.DAMPING_RATIO_LOW_BOUNCY, - ) - - /** The spring force stiffness used to resize the window into the final bounds. */ - val SIZE_SPRING_STIFFNESS = - propertyValue("size_stiffness", default = SpringForce.STIFFNESS_LOW) - - /** The spring force damping ratio used to resize the window into the final bounds. */ - val SIZE_SPRING_DAMPING_RATIO = - propertyValue( - "size_damping_ratio", - scale = 100f, - default = SpringForce.DAMPING_RATIO_NO_BOUNCY, - ) - - /** Drag to desktop transition system properties group. */ - @VisibleForTesting - const val SYSTEM_PROPERTIES_GROUP = "persist.wm.debug.desktop_transitions.drag_to_desktop" - - /** - * Drag to desktop transition system property value with [name]. - * - * @param scale an optional scale to apply to the value read from the system property. - * @param default a default value to return if the system property isn't set. - */ - @VisibleForTesting - fun propertyValue(name: String, scale: Float = 1f, default: Float = 0f): Float = - SystemProperties.getInt( - /* key= */ "$SYSTEM_PROPERTIES_GROUP.$name", - /* def= */ (default * scale).toInt(), - ) / scale + private const val DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS = 336L } } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/EnterDesktopTaskTransitionHandler.java b/wmshell/src/com/android/wm/shell/desktopmode/EnterDesktopTaskTransitionHandler.java index 219a407895..5710bcbf9b 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/EnterDesktopTaskTransitionHandler.java +++ b/wmshell/src/com/android/wm/shell/desktopmode/EnterDesktopTaskTransitionHandler.java @@ -18,7 +18,6 @@ package com.android.wm.shell.desktopmode; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; -import static com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_ENTER_MODE_APP_HANDLE_MENU; import static com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.getEnterTransitionType; import static com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.isEnterDesktopModeTransition; @@ -27,7 +26,6 @@ import android.animation.AnimatorListenerAdapter; import android.animation.RectEvaluator; import android.animation.ValueAnimator; import android.app.ActivityManager; -import android.content.Context; import android.graphics.Rect; import android.os.IBinder; import android.util.Slog; @@ -41,9 +39,6 @@ import android.window.WindowContainerTransaction; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.android.internal.jank.InteractionJankMonitor; -import com.android.internal.util.LatencyTracker; -import com.android.wm.shell.shared.R; import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource; import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.windowdecor.OnTaskResizeAnimationListener; @@ -59,40 +54,25 @@ import java.util.function.Supplier; public class EnterDesktopTaskTransitionHandler implements Transitions.TransitionHandler { private static final String TAG = "EnterDesktopTaskTransitionHandler"; - private final Context mContext; private final Transitions mTransitions; private final Supplier<SurfaceControl.Transaction> mTransactionSupplier; + public static final int FREEFORM_ANIMATION_DURATION = 336; + private final List<IBinder> mPendingTransitionTokens = new ArrayList<>(); - private final InteractionJankMonitor mInteractionJankMonitor; - private final LatencyTracker mLatencyTracker; private OnTaskResizeAnimationListener mOnTaskResizeAnimationListener; - private int mToDesktopAnimationDurationMs; - public EnterDesktopTaskTransitionHandler( - Transitions transitions, - Context context, - InteractionJankMonitor interactionJankMonitor, - LatencyTracker latencyTracker) { - this(transitions, context, interactionJankMonitor, latencyTracker, - SurfaceControl.Transaction::new); + Transitions transitions) { + this(transitions, SurfaceControl.Transaction::new); } public EnterDesktopTaskTransitionHandler( Transitions transitions, - Context context, - InteractionJankMonitor interactionJankMonitor, - LatencyTracker latencyTracker, Supplier<SurfaceControl.Transaction> supplier) { - mContext = context; mTransitions = transitions; - mInteractionJankMonitor = interactionJankMonitor; - mLatencyTracker = latencyTracker; mTransactionSupplier = supplier; - mToDesktopAnimationDurationMs = - mContext.getResources().getInteger(R.integer.to_desktop_animation_duration_ms); } void setOnTaskResizeAnimationListener(OnTaskResizeAnimationListener listener) { @@ -137,13 +117,6 @@ public class EnterDesktopTaskTransitionHandler implements Transitions.Transition } } - if (transitionHandled - && info.getType() - == DesktopModeTransitionTypes - .TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON) { - mLatencyTracker.onActionEnd(LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU); - } - mPendingTransitionTokens.remove(transition); return transitionHandled; @@ -187,7 +160,7 @@ public class EnterDesktopTaskTransitionHandler implements Transitions.Transition mOnTaskResizeAnimationListener.onAnimationStart(taskInfo.taskId, startT, startBounds); final ValueAnimator animator = ValueAnimator.ofObject(new RectEvaluator(), change.getStartAbsBounds(), change.getEndAbsBounds()); - animator.setDuration(mToDesktopAnimationDurationMs); + animator.setDuration(FREEFORM_ANIMATION_DURATION); SurfaceControl.Transaction t = mTransactionSupplier.get(); animator.addUpdateListener(animation -> { final Rect animationValue = (Rect) animator.getAnimatedValue(); @@ -202,7 +175,6 @@ public class EnterDesktopTaskTransitionHandler implements Transitions.Transition mOnTaskResizeAnimationListener.onAnimationEnd(taskInfo.taskId); mTransitions.getMainExecutor().execute( () -> finishCallback.onTransitionFinished(null)); - mInteractionJankMonitor.end(CUJ_DESKTOP_MODE_ENTER_MODE_APP_HANDLE_MENU); } }); animator.start(); diff --git a/wmshell/src/com/android/wm/shell/desktopmode/ExitDesktopTaskTransitionHandler.java b/wmshell/src/com/android/wm/shell/desktopmode/ExitDesktopTaskTransitionHandler.java index f382632ff7..8b6b70e186 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/ExitDesktopTaskTransitionHandler.java +++ b/wmshell/src/com/android/wm/shell/desktopmode/ExitDesktopTaskTransitionHandler.java @@ -29,10 +29,8 @@ import android.content.Context; import android.content.res.Resources; import android.graphics.Point; import android.graphics.Rect; -import android.os.Handler; import android.os.IBinder; import android.util.DisplayMetrics; -import android.view.Choreographer; import android.view.SurfaceControl; import android.view.WindowManager; import android.view.WindowManager.TransitionType; @@ -44,18 +42,12 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.jank.Cuj; -import com.android.internal.jank.InteractionJankMonitor; -import com.android.internal.util.LatencyTracker; -import com.android.wm.shell.shared.annotations.ShellMainThread; import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource; import com.android.wm.shell.transition.Transitions; -import kotlin.Unit; -import kotlin.jvm.functions.Function0; - import java.util.ArrayList; import java.util.List; +import java.util.function.Consumer; import java.util.function.Supplier; @@ -64,41 +56,28 @@ import java.util.function.Supplier; * entering and exiting freeform. */ public class ExitDesktopTaskTransitionHandler implements Transitions.TransitionHandler { - public static final int FULLSCREEN_ANIMATION_DURATION = 336; + private static final int FULLSCREEN_ANIMATION_DURATION = 336; private final Context mContext; private final Transitions mTransitions; - private final InteractionJankMonitor mInteractionJankMonitor; - private final LatencyTracker mLatencyTracker; - @ShellMainThread - private final Handler mHandler; private final List<IBinder> mPendingTransitionTokens = new ArrayList<>(); - private Function0<Unit> mOnAnimationFinishedCallback; + private Consumer<SurfaceControl.Transaction> mOnAnimationFinishedCallback; private final Supplier<SurfaceControl.Transaction> mTransactionSupplier; private Point mPosition; public ExitDesktopTaskTransitionHandler( Transitions transitions, - Context context, - InteractionJankMonitor interactionJankMonitor, - @ShellMainThread Handler handler - ) { - this(transitions, SurfaceControl.Transaction::new, context, interactionJankMonitor, - handler); + Context context) { + this(transitions, SurfaceControl.Transaction::new, context); } private ExitDesktopTaskTransitionHandler( Transitions transitions, Supplier<SurfaceControl.Transaction> supplier, - Context context, - InteractionJankMonitor interactionJankMonitor, - @ShellMainThread Handler handler) { + Context context) { mTransitions = transitions; mTransactionSupplier = supplier; mContext = context; - mInteractionJankMonitor = interactionJankMonitor; - mLatencyTracker = LatencyTracker.getInstance(mContext); - mHandler = handler; } /** @@ -109,16 +88,14 @@ public class ExitDesktopTaskTransitionHandler implements Transitions.TransitionH * @param position Position of the task when transition is started * @param onAnimationEndCallback to be called after animation */ - public IBinder startTransition(@NonNull DesktopModeTransitionSource transitionSource, + public void startTransition(@NonNull DesktopModeTransitionSource transitionSource, @NonNull WindowContainerTransaction wct, Point position, - Function0<Unit> onAnimationEndCallback) { - mLatencyTracker.onActionStart(LatencyTracker.ACTION_DESKTOP_MODE_EXIT_MODE); + Consumer<SurfaceControl.Transaction> onAnimationEndCallback) { mPosition = position; mOnAnimationFinishedCallback = onAnimationEndCallback; final IBinder token = mTransitions.startTransition(getExitTransitionType(transitionSource), wct, this); mPendingTransitionTokens.add(token); - return token; } @Override @@ -145,11 +122,6 @@ public class ExitDesktopTaskTransitionHandler implements Transitions.TransitionH mPendingTransitionTokens.remove(transition); - - if (transitionHandled) { - mLatencyTracker.onActionEnd(LatencyTracker.ACTION_DESKTOP_MODE_EXIT_MODE); - } - return transitionHandled; } @@ -174,8 +146,6 @@ public class ExitDesktopTaskTransitionHandler implements Transitions.TransitionH final int screenHeight = metrics.heightPixels; final SurfaceControl sc = change.getLeash(); final Rect endBounds = change.getEndAbsBounds(); - mInteractionJankMonitor - .begin(sc, mContext, mHandler, Cuj.CUJ_DESKTOP_MODE_EXIT_MODE); // Hide the first (fullscreen) frame because the animation will start from the freeform // size. startT.hide(sc) @@ -197,16 +167,14 @@ public class ExitDesktopTaskTransitionHandler implements Transitions.TransitionH t.setPosition(sc, mPosition.x * (1 - fraction), mPosition.y * (1 - fraction)) .setScale(sc, currentScaleX, currentScaleY) .show(sc) - .setFrameTimeline(Choreographer.getInstance().getVsyncId()) .apply(); }); animator.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { if (mOnAnimationFinishedCallback != null) { - mOnAnimationFinishedCallback.invoke(); + mOnAnimationFinishedCallback.accept(finishT); } - mInteractionJankMonitor.end(Cuj.CUJ_DESKTOP_MODE_EXIT_MODE); mTransitions.getMainExecutor().execute( () -> finishCallback.onTransitionFinished(null)); } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/IDesktopMode.aidl b/wmshell/src/com/android/wm/shell/desktopmode/IDesktopMode.aidl index 26f240f59a..de650f3652 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/IDesktopMode.aidl +++ b/wmshell/src/com/android/wm/shell/desktopmode/IDesktopMode.aidl @@ -17,40 +17,17 @@ package com.android.wm.shell.desktopmode; import android.app.ActivityManager.RunningTaskInfo; -import android.content.Intent; -import android.os.Bundle; import android.window.RemoteTransition; -import com.android.wm.shell.desktopmode.IDesktopTaskListener; import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource; -import com.android.wm.shell.shared.desktopmode.DesktopTaskToFrontReason; -import com.android.wm.shell.desktopmode.IMoveToDesktopCallback; +import com.android.wm.shell.desktopmode.IDesktopTaskListener; /** * Interface that is exposed to remote callers to manipulate desktop mode features. */ interface IDesktopMode { - /** If possible, creates a new desk on the display whose ID is `displayId`. */ - oneway void createDesk(int displayId); - /** - * Activates the desk whose ID is [deskId] on whatever display it currently exists on. - * If [taskIdToReorderToFront] is a valid id (not [INVALID_TASK_ID]) and is already on the given - * desk, bring it to the front. - */ - oneway void activateDesk(int deskId, in RemoteTransition remoteTransition, int taskIdToReorderToFront); - - /** Removes the desk with the given `deskId`. */ - oneway void removeDesk(int deskId); - - /** Removes all the available desks on all displays. */ - oneway void removeAllDesks(); - - /** - * Show apps on the desktop on the given display and bring [taskIdToReorderToFront] to front if - * it's provided and already on the default desk on the given display. If the provided - * [taskIdToReorderToFront]'s value is [INVALID_TASK_ID], do not change the windows' activation. - */ - void showDesktopApps(int displayId, in RemoteTransition remoteTransition, int taskIdToReorderToFront); + /** Show apps on the desktop on the given display */ + void showDesktopApps(int displayId, in RemoteTransition remoteTransition); /** @deprecated use {@link #showDesktopApps} instead. */ void stashDesktopApps(int displayId); @@ -58,26 +35,11 @@ interface IDesktopMode { /** @deprecated this is no longer supported. */ void hideStashedDesktopApps(int displayId); - /** - * Bring task with the given id to front, using the given remote transition. - * - * <p> Note: beyond moving a task to the front, this method will minimize a task if we reach the - * Desktop task limit, so {@code remoteTransition} should also handle any such minimize change. - */ - oneway void showDesktopApp(int taskId, in @nullable RemoteTransition remoteTransition, - in DesktopTaskToFrontReason toFrontReason); + /** Bring task with the given id to front */ + oneway void showDesktopApp(int taskId); - /** - * Move or launch a given task {@code taskId} to fullscreen. - * - * <p> Note: In non-desktop by default environment this will mean to exit desktop mode. This API - * is also used to move to existing (or launch a background) fullscreen task while on desktop as - * startActivity will open the fullscreen task in freeform in current desktop. This is because - * in tablet desktop mode, system intercepts the transition and converts fullscreen to freeform - * task when the display has a desktop active. - */ - oneway void moveToFullscreen(int taskId, in DesktopModeTransitionSource transitionSource, - in @nullable RemoteTransition remoteTransition); + /** Get count of visible desktop tasks on the given display */ + int getVisibleTaskCount(int displayId); /** Perform cleanup transactions after the animation to split select is complete */ oneway void onDesktopSplitSelectAnimComplete(in RunningTaskInfo taskInfo); @@ -86,19 +48,5 @@ interface IDesktopMode { oneway void setTaskListener(IDesktopTaskListener listener); /** Move a task with given `taskId` to desktop */ - void moveToDesktop(int taskId, in DesktopModeTransitionSource transitionSource, - in @nullable RemoteTransition remoteTransition, - in @nullable IMoveToDesktopCallback callback); - - /** - * Removes the default desktop on the given display. - * @deprecated with multi-desks, we should use `removeDesk()`. - */ - oneway void removeDefaultDeskInDisplay(int displayId); - - /** Move a task with given `taskId` to external display */ - void moveToExternalDisplay(int taskId); - - /** Start a transition when launching an intent in desktop mode */ - void startLaunchIntentTransition(in Intent intent, in Bundle options, in int displayId); + void moveToDesktop(int taskId, in DesktopModeTransitionSource transitionSource); } diff --git a/wmshell/src/com/android/wm/shell/desktopmode/IDesktopTaskListener.aidl b/wmshell/src/com/android/wm/shell/desktopmode/IDesktopTaskListener.aidl index 6070fc5ebc..8ebdfdcf47 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/IDesktopTaskListener.aidl +++ b/wmshell/src/com/android/wm/shell/desktopmode/IDesktopTaskListener.aidl @@ -16,59 +16,15 @@ package com.android.wm.shell.desktopmode; -import com.android.wm.shell.desktopmode.DisplayDeskState; - /** * Allows external processes to register a listener in WMShell to get updates about desktop task * state. */ -oneway interface IDesktopTaskListener { - - /** - * Called once when the listener first gets connected to initialize it with the current state of - * desks in Shell. - */ - void onListenerConnected(in DisplayDeskState[] displayDeskStates, boolean canCreateDesks); +interface IDesktopTaskListener { /** Desktop tasks visibility has changed. Visible if at least 1 task is visible. */ - void onTasksVisibilityChanged(int displayId, int visibleTasksCount); + oneway void onTasksVisibilityChanged(int displayId, int visibleTasksCount); /** @deprecated this is no longer supported. */ - void onStashedChanged(int displayId, boolean stashed); - - /** - * Shows taskbar corner radius when running desktop tasks are updated if - * [hasTasksRequiringTaskbarRounding] is true. - */ - void onTaskbarCornerRoundingUpdate(boolean hasTasksRequiringTaskbarRounding); - - /** Entering desktop mode transition is started, send the signal with transition duration. */ - void onEnterDesktopModeTransitionStarted(int transitionDuration); - - /** Exiting desktop mode transition is started, send the signal with transition duration - * and whether the display will end up at the home activity (as opposed to an app's full screen - * mode). - */ - void onExitDesktopModeTransitionStarted(int transitionDuration, boolean shouldEndUpAtHome); - - /** - * Called when the conditions that allow the creation of a new desk changes. This is a global - * state for the entire device. - */ - void onCanCreateDesksChanged(boolean canCreateDesks); - - /** Called when a desk whose ID is `deskId` is added to the display whose ID is `displayId`. */ - void onDeskAdded(int displayId, int deskId); - - /** - * Called when a desk whose ID is `deskId` is removed from the display whose ID is `displayId`. - */ - void onDeskRemoved(int displayId, int deskId); - - /** - * Called when the active desk changes on the display whose ID is `displayId`. - * If `newActiveDesk` is -1, it means a desk is no longer active on the display. - * If `oldActiveDesk` is -1, it means a desk was not active on the display. - */ - void onActiveDeskChanged(int displayId, int newActiveDesk, int oldActiveDesk); + oneway void onStashedChanged(int displayId, boolean stashed); } \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/desktopmode/OWNERS b/wmshell/src/com/android/wm/shell/desktopmode/OWNERS index 2a563cce3e..1385f42bc6 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/OWNERS +++ b/wmshell/src/com/android/wm/shell/desktopmode/OWNERS @@ -2,11 +2,6 @@ atsjenk@google.com jorgegil@google.com madym@google.com +nmusgrave@google.com pbdr@google.com -vaniadesmonda@google.com -pragyabajoria@google.com -uysalorhan@google.com -gsennton@google.com -yhanada@google.com -toshikikikuchi@google.com -hirono@google.com +tkachenkoi@google.com diff --git a/wmshell/src/com/android/wm/shell/desktopmode/ToggleResizeDesktopTaskTransitionHandler.kt b/wmshell/src/com/android/wm/shell/desktopmode/ToggleResizeDesktopTaskTransitionHandler.kt index 1a66ca808d..88d0554669 100644 --- a/wmshell/src/com/android/wm/shell/desktopmode/ToggleResizeDesktopTaskTransitionHandler.kt +++ b/wmshell/src/com/android/wm/shell/desktopmode/ToggleResizeDesktopTaskTransitionHandler.kt @@ -21,55 +21,35 @@ import android.animation.RectEvaluator import android.animation.ValueAnimator import android.graphics.Rect import android.os.IBinder -import android.view.Choreographer import android.view.SurfaceControl import android.view.WindowManager.TRANSIT_CHANGE import android.window.TransitionInfo import android.window.TransitionRequestInfo import android.window.WindowContainerTransaction import androidx.core.animation.addListener -import com.android.internal.jank.Cuj -import com.android.internal.jank.InteractionJankMonitor -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_TOGGLE_RESIZE import com.android.wm.shell.transition.Transitions +import com.android.wm.shell.transition.Transitions.TRANSIT_DESKTOP_MODE_TOGGLE_RESIZE import com.android.wm.shell.windowdecor.OnTaskResizeAnimationListener import java.util.function.Supplier /** Handles the animation of quick resizing of desktop tasks. */ class ToggleResizeDesktopTaskTransitionHandler( private val transitions: Transitions, - private val transactionSupplier: Supplier<SurfaceControl.Transaction>, - private val interactionJankMonitor: InteractionJankMonitor, + private val transactionSupplier: Supplier<SurfaceControl.Transaction> ) : Transitions.TransitionHandler { private val rectEvaluator = RectEvaluator(Rect()) private lateinit var onTaskResizeAnimationListener: OnTaskResizeAnimationListener private var boundsAnimator: Animator? = null - private var initialBounds: Rect? = null - private var callback: (() -> Unit)? = null constructor( - transitions: Transitions, - interactionJankMonitor: InteractionJankMonitor, - ) : this(transitions, Supplier { SurfaceControl.Transaction() }, interactionJankMonitor) + transitions: Transitions + ) : this(transitions, Supplier { SurfaceControl.Transaction() }) - /** - * Starts a quick resize transition. - * - * @param wct WindowContainerTransaction that will update core about the task changes applied - * @param taskLeashBounds current bounds of the task leash (Note: not guaranteed to be the - * bounds of the actual task). This is provided so that the animation resizing can begin where - * the task leash currently is for smoother UX. - */ - fun startTransition( - wct: WindowContainerTransaction, - taskLeashBounds: Rect? = null, - callback: (() -> Unit)? = null, - ) { + /** Starts a quick resize transition. */ + fun startTransition(wct: WindowContainerTransaction) { transitions.startTransition(TRANSIT_DESKTOP_MODE_TOGGLE_RESIZE, wct, this) - initialBounds = taskLeashBounds - this.callback = callback } fun setOnTaskResizeAnimationListener(listener: OnTaskResizeAnimationListener) { @@ -81,12 +61,12 @@ class ToggleResizeDesktopTaskTransitionHandler( info: TransitionInfo, startTransaction: SurfaceControl.Transaction, finishTransaction: SurfaceControl.Transaction, - finishCallback: Transitions.TransitionFinishCallback, + finishCallback: Transitions.TransitionFinishCallback ): Boolean { val change = findRelevantChange(info) val leash = change.leash val taskId = checkNotNull(change.taskInfo).taskId - val startBounds = initialBounds ?: change.startAbsBounds + val startBounds = change.startAbsBounds val endBounds = change.endAbsBounds val tx = transactionSupplier.get() @@ -101,14 +81,14 @@ class ToggleResizeDesktopTaskTransitionHandler( .setPosition( leash, startBounds.left.toFloat(), - startBounds.top.toFloat(), + startBounds.top.toFloat() ) .setWindowCrop(leash, startBounds.width(), startBounds.height()) .show(leash) onTaskResizeAnimationListener.onAnimationStart( taskId, startTransaction, - startBounds, + startBounds ) }, onEnd = { @@ -116,27 +96,20 @@ class ToggleResizeDesktopTaskTransitionHandler( .setPosition( leash, endBounds.left.toFloat(), - endBounds.top.toFloat(), + endBounds.top.toFloat() ) .setWindowCrop(leash, endBounds.width(), endBounds.height()) .show(leash) onTaskResizeAnimationListener.onAnimationEnd(taskId) finishCallback.onTransitionFinished(null) - initialBounds = null boundsAnimator = null - interactionJankMonitor.end(Cuj.CUJ_DESKTOP_MODE_MAXIMIZE_WINDOW) - interactionJankMonitor.end(Cuj.CUJ_DESKTOP_MODE_UNMAXIMIZE_WINDOW) - interactionJankMonitor.end(Cuj.CUJ_DESKTOP_MODE_SNAP_RESIZE) - callback?.invoke() - callback = null - }, + } ) addUpdateListener { anim -> val rect = anim.animatedValue as Rect tx.setPosition(leash, rect.left.toFloat(), rect.top.toFloat()) .setWindowCrop(leash, rect.width(), rect.height()) .show(leash) - .setFrameTimeline(Choreographer.getInstance().getVsyncId()) onTaskResizeAnimationListener.onBoundsChange(taskId, tx, rect) } start() @@ -146,7 +119,7 @@ class ToggleResizeDesktopTaskTransitionHandler( override fun handleRequest( transition: IBinder, - request: TransitionRequestInfo, + request: TransitionRequestInfo ): WindowContainerTransaction? { return null } @@ -164,11 +137,13 @@ class ToggleResizeDesktopTaskTransitionHandler( return matchingChanges.first() } - private fun isWallpaper(change: TransitionInfo.Change): Boolean = - (change.flags and TransitionInfo.FLAG_IS_WALLPAPER) != 0 + private fun isWallpaper(change: TransitionInfo.Change): Boolean { + return (change.flags and TransitionInfo.FLAG_IS_WALLPAPER) != 0 + } - private fun isValidTaskChange(change: TransitionInfo.Change): Boolean = - change.taskInfo != null && change.taskInfo?.taskId != -1 + private fun isValidTaskChange(change: TransitionInfo.Change): Boolean { + return change.taskInfo != null && change.taskInfo?.taskId != -1 + } companion object { private const val RESIZE_DURATION_MS = 300L diff --git a/wmshell/src/com/android/wm/shell/docs/README.md b/wmshell/src/com/android/wm/shell/docs/README.md index 05c8264de2..3fad28ad23 100644 --- a/wmshell/src/com/android/wm/shell/docs/README.md +++ b/wmshell/src/com/android/wm/shell/docs/README.md @@ -1,7 +1,5 @@ # Window Manager Shell Readme -go/wmshell - The following docs present more detail about the implementation of the WMShell library (in no particular order): @@ -11,7 +9,6 @@ particular order): 4) [Threading model in the Shell](threading.md) 5) [Making changes in the Shell](changes.md) 6) [Extending the Shell for Products/OEMs](extending.md) -6) [Shell transitions](transitions.md) 7) [Debugging in the Shell](debugging.md) 8) [Testing in the Shell](testing.md) diff --git a/wmshell/src/com/android/wm/shell/docs/changes.md b/wmshell/src/com/android/wm/shell/docs/changes.md index f50d253ddf..0acc7df98d 100644 --- a/wmshell/src/com/android/wm/shell/docs/changes.md +++ b/wmshell/src/com/android/wm/shell/docs/changes.md @@ -1,5 +1,4 @@ # Making changes in the Shell -[Back to home](README.md) --- @@ -99,8 +98,9 @@ Don't: ### Exposing shared code for use in Launcher Launcher doesn't currently build against the Shell library, but needs to have access to some shared AIDL interfaces and constants. Currently, all AIDL files, and classes under the -`com.android.wm.shell.shared` package are automatically built into the `SystemUISharedLib` that +`com.android.wm.shell.util` package are automatically built into the `SystemUISharedLib` that Launcher uses. -If the new code doesn't fall into those categories, they should be moved to the Shell shared -package (`com.android.wm.shell.shared`) under the `WindowManager-Shell-shared` library. \ No newline at end of file +If the new code doesn't fall into those categories, they can be added explicitly in the Shell's +[Android.bp](/libs/WindowManager/Shell/Android.bp) file under the +`wm_shell_util-sources` filegroup. \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/docs/dagger.md b/wmshell/src/com/android/wm/shell/docs/dagger.md index 84525a7414..7070dead99 100644 --- a/wmshell/src/com/android/wm/shell/docs/dagger.md +++ b/wmshell/src/com/android/wm/shell/docs/dagger.md @@ -1,7 +1,5 @@ # Usage of Dagger in the Shell library -[Back to home](README.md) - --- ## Dependencies @@ -17,69 +15,36 @@ As such, the Shell also tries to provide some reasonable out-of-the-box modules ## Modules All the Dagger related code in the Shell can be found in the `com.android.wm.shell.dagger` package, -this is intentional as it keeps the "magic" in a single location. The explicit nature of how +this is intentional as it keeps the "magic" in a single location. The explicit nature of how components in the shell are provided is as a result a bit more verbose, but it makes it easy for developers to jump into a few select files and understand how different components are provided (especially as products override components). The module dependency tree looks a bit like: - - [WMShellConcurrencyModule](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellConcurrencyModule.java) (provides threading-related components) - - [WMShellBaseModule](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java) - (provides components that are common to many products, ie. DisplayController, Transactions, - etc.) - - [WMShellModule](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellModule.java) - (phone/tablet specific components only) - - [TvPipModule](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/TvPipModule.java) - (PIP specific components for TV) - - [TvWMShellModule](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/TvWMShellModule.java) - (TV specific components only) - - etc. + - [WMShellBaseModule](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java) + (provides components that are likely common to all products, ie. DisplayController, + Transactions, etc.) + - [WMShellModule](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellModule.java) + (phone/tablet specific components only) + - [TvPipModule](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/TvPipModule.java) + (PIP specific components for TV) + - [TvWMShellModule](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/TvWMShellModule.java) + (TV specific components only) + - etc. Ideally features could be abstracted out into their own modules and included as needed by each product. -## Changing WMShellBaseModule - -Because all products will include WMShellBaseModule, we don't want it to provide instances for -features that aren't used across multiple products (ie. Handheld, TV, Auto, Wear). This module -should generally only provide: - -- Concrete implementations that are needed for startup - (see `provideIndependentShellComponentsToCreate()`) -- Things used directly/indirectly by interfaces - exposed to SysUI - in [WMComponent.java](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMComponent.java). - -For the latter, not every feature will be enabled on the SysUI form factor including the base -module, so the recommendation is to have an `@BindsOptionalOf` for the interface, and have the -actual implementation provided in the form-factor specific module (ie. `WMShellModule`). - ## Overriding base components In some rare cases, there are base components that can change behavior depending on which -product it runs on. If there are hooks that can be added to the component, that is the +product it runs on. If there are hooks that can be added to the component, that is the preferable approach. -The alternative is to use -the [@DynamicOverride](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/DynamicOverride.java) +The alternative is to use the [@DynamicOverride](/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/DynamicOverride.java) annotation to allow the product module to provide an implementation that the base module can -reference. This is most useful if the existence of the entire component is controlled by the -product and the override implementation is optional (there is a default implementation). More -details can be found in the class's javadoc. - -## Starting up Shell components aren't dependencies for other components - -With Dagger, objects are created in dependency order and individual components can register with -`ShellInit` (see [Component initialization](changes.md#component-initialization)) to initialize in -dependency order as well. However, if there is code that needs to run on startup but has nothing -dependent on it (imagine a background error detector for example), then -`provideIndependentShellComponentsToCreate()` can serve as the artificial dependent object (itself -a dependency for `ShellInterface`) to trigger creation of such a component. - -This can be declared within each module, so if a product includes `WMShellModule`, all the -components in `provideIndependentShellComponentsToCreate()` for both it and `WMShellBaseModule` will -be created. - -Note that long term we are looking to move to a `CoreStartable` like infrastructure. \ No newline at end of file +reference. This is most useful if the existence of the entire component is controlled by the +product and the override implementation is optional (there is a default implementation). More +details can be found in the class's javadoc. \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/docs/debugging.md b/wmshell/src/com/android/wm/shell/docs/debugging.md index 5906263d92..438aa76816 100644 --- a/wmshell/src/com/android/wm/shell/docs/debugging.md +++ b/wmshell/src/com/android/wm/shell/docs/debugging.md @@ -1,5 +1,4 @@ # Debugging in the Shell -[Back to home](README.md) --- @@ -28,32 +27,24 @@ building to check the log state (is enabled) before printing the print format st traces in Winscope) ### Kotlin -Kotlin protologging is supported, but with some differences compared to Java. The ProtoLog tool -currently does not process Kotlin code. This means that while ProtoLogs in Kotlin will still be -traced to Perfetto, they are not pre-processed to extract static strings like in Java. Consequently, -using ProtoLogging in Kotlin does not provide the same memory gains as in Java, and log calls may be -slightly less performant due to additional string interning at runtime. + +Protolog tool does not yet have support for Kotlin code (see [b/168581922](https://b.corp.google.com/issues/168581922)). +For logging in Kotlin, use the [KtProtoLog](/libs/WindowManager/Shell/src/com/android/wm/shell/util/KtProtoLog.kt) +class which has a similar API to the Java ProtoLog class. ### Enabling ProtoLog command line logging -Run these commands to enable protologs (in logcat) for WM Core ([list of all core groups](/core/java/com/android/internal/protolog/WmProtoLogGroups.java)) or WM Shell ([list of all shell groups](/libs/WindowManager/Shell/src/com/android/wm/shell/protolog/ShellProtoLogGroup.java)): +Run these commands to enable protologs (in logcat) for WM Core ([list of all core tags](/core/java/com/android/internal/protolog/ProtoLogGroup.java)): ```shell -# Note: prior to 25Q2, you may need to use: -# adb shell dumpsys activity service SystemUIService WMShell protolog enable-text TAG -adb shell cmd protolog_configuration logcat enable <group> -adb shell cmd protolog_configuration logcat disable <group> +adb shell wm logging enable-text TAG +adb shell wm logging disable-text TAG ``` -Use these commands to print protolog groups and their status: +And these commands to enable protologs (in logcat) for WM Shell ([list of all shell tags](/libs/WindowManager/Shell/src/com/android/wm/shell/protolog/ShellProtoLogGroup.java)): ```shell -adb shell cmd protolog_configuration groups list -adb shell cmd protolog_configuration groups status <group> +adb shell dumpsys activity service SystemUIService WMShell protolog enable-text TAG +adb shell dumpsys activity service SystemUIService WMShell protolog enable-text TAG ``` -### R8 optimizations & ProtoLog - -If the APK that the Shell library is included into has R8 optimizations enabled, then you may need -to update the proguard flags to keep the generated protolog classes (ie. AOSP SystemUI's [proguard.flags](/packages/SystemUI/proguard_common.flags)). - ## Winscope Tracing The Winscope tool is extremely useful in determining what is happening on-screen in both @@ -61,45 +52,28 @@ WindowManager and SurfaceFlinger. Follow [go/winscope](http://go/winscope-help) use the tool. This trace will contain all the information about the windows/activities/surfaces on screen. -## WindowManager/SurfaceFlinger/InputDispatcher information +## WindowManager/SurfaceFlinger hierarchy dump A quick way to view the WindowManager hierarchy without a winscope trace is via the wm dumps: ```shell adb shell dumpsys activity containers -# The output lists the containers in the hierarchy from top -> bottom in z-order -``` - -To get more information about windows on the screen: -```shell -# All windows in WM -adb shell dumpsys window -a -# The windows are listed from top -> bottom in z-order - -# Visible windows only -adb shell dumpsys window -a visible ``` Likewise, the SurfaceFlinger hierarchy can be dumped for inspection by running: ```shell adb shell dumpsys SurfaceFlinger -# Search output for "Layer Hierarchy", the surfaces in the table are listed bottom -> top in z-order -``` - -And the visible input windows can be dumped via: -```shell -adb shell dumpsys input -# Search output for "Windows:", they are ordered top -> bottom in z-order +# Search output for "Layer Hierarchy" ``` ## Tracing global SurfaceControl transaction updates While Winscope traces are very useful, it sometimes doesn't give you enough information about which -part of the code is initiating the transaction updates. In such cases, it can be helpful to get -stack traces when specific surface transaction calls are made (regardless of process), which is -possible by enabling the following system properties for example: +part of the code is initiating the transaction updates. In such cases, it can be helpful to get +stack traces when specific surface transaction calls are made, which is possible by enabling the +following system properties for example: ```shell # Enabling -adb shell setprop persist.wm.debug.sc.tx.log_match_call setAlpha,setPosition # matches the name of the SurfaceControlTransaction methods +adb shell setprop persist.wm.debug.sc.tx.log_match_call setAlpha # matches the name of the SurfaceControlTransaction method adb shell setprop persist.wm.debug.sc.tx.log_match_name com.android.systemui # matches the name of the surface adb reboot adb logcat -s "SurfaceControlRegistry" @@ -107,41 +81,17 @@ adb logcat -s "SurfaceControlRegistry" # Disabling logging adb shell setprop persist.wm.debug.sc.tx.log_match_call \"\" adb shell setprop persist.wm.debug.sc.tx.log_match_name \"\" +adb reboot ``` -A reboot is required to enable the logging. Once enabled, reboot is not needed to update the -properties. - It is not necessary to set both `log_match_call` and `log_match_name`, but note logs can be quite noisy if unfiltered. -### Tracing transaction merge & apply - -Tracing the method calls on SurfaceControl.Transaction tells you where a change is requested, but -the changes are not actually committed until the transaction itself is applied. And because -transactions can be passed across processes, or prepared in advance for later application (ie. -when restoring state after a Transition), the ordering of the change logs is not always clear -by itself. - -In such cases, you can also enable the "merge" and "apply" calls to get additional information -about how/when transactions are respectively merged/applied: -```shell -# Enabling -adb shell setprop persist.wm.debug.sc.tx.log_match_call setAlpha,merge,apply # apply will dump logs of each setAlpha or merge call on that tx -adb reboot -adb logcat -s "SurfaceControlRegistry" -``` - -Using those logs, you can first look at where the desired change is called, note the transaction -id, and then search the logs for where that transaction id is used. If it is merged into another -transaction, you can continue the search using the merged transaction until you find the final -transaction which is applied. - -## Tracing activity starts & finishes in the app process +## Tracing activity starts in the app process It's sometimes useful to know when to see a stack trace of when an activity starts in the app code -or via a `WindowContainerTransaction` (ie. if you are repro'ing a bug related to activity starts). -You can enable this system property to get this trace: +(ie. if you are repro'ing a bug related to activity starts). You can enable this system property to +get this trace: ```shell # Enabling adb shell setprop persist.wm.debug.start_activity true @@ -153,37 +103,6 @@ adb shell setprop persist.wm.debug.start_activity \"\" adb reboot ``` -Likewise, to trace where a finish() call may be made in the app process, you can enable this system -property: -```shell -# Enabling -adb shell setprop persist.wm.debug.finish_activity true -adb reboot -adb logcat -s "Instrumentation" - -# Disabling -adb shell setprop persist.wm.debug.finish_activity \"\" -adb reboot -``` - -## Tracing transition starts/finishes in the Shell - -To trace where a new WM transition is started and finished in the Shell, you can enable these system -properties respectively: -```shell -# Enabling -adb shell setprop persist.wm.debug.start_shell_transition true -adb shell setprop persist.wm.debug.finish_shell_transition true -adb reboot -adb logcat -s "ShellTransitions" - -# Disabling -adb shell setprop persist.wm.debug.start_shell_transition \"\" -adb shell setprop persist.wm.debug.finish_shell_transition \"\" -adb reboot -``` - - ## Dumps Because the Shell library is built as a part of SystemUI, dumping the state is currently done as a @@ -191,9 +110,7 @@ part of dumping the SystemUI service. Dumping the Shell specific data can be do WMShell SysUI service: ```shell -# Note: prior to 25Q2, you may need to use: -# adb shell dumpsys activity service SystemUIService WMShell dump -adb shell wm shell dump +adb shell dumpsys activity service SystemUIService WMShell ``` If information should be added to the dump, either: @@ -209,14 +126,10 @@ shell command handler in your controller. ```shell # List all available commands -# Note: prior to 25Q2, you may need to use: -# adb shell dumpsys activity service SystemUIService WMShell help -adb shell wm shell help +adb shell dumpsys activity service SystemUIService WMShell help # Run a specific command -# Note: prior to 25Q2, you may need to use: -# adb shell dumpsys activity service SystemUIService WMShell <cmd> <args> ... -adb shell wm shell <cmd> <args> ... +adb shell dumpsys activity service SystemUIService WMShell <cmd> <args> ... ``` ## Debugging in Android Studio diff --git a/wmshell/src/com/android/wm/shell/docs/extending.md b/wmshell/src/com/android/wm/shell/docs/extending.md index f7707da331..061ae00e2b 100644 --- a/wmshell/src/com/android/wm/shell/docs/extending.md +++ b/wmshell/src/com/android/wm/shell/docs/extending.md @@ -1,5 +1,4 @@ # Extending the Shell for Products/OEMs -[Back to home](README.md) --- diff --git a/wmshell/src/com/android/wm/shell/docs/overview.md b/wmshell/src/com/android/wm/shell/docs/overview.md index bed0fba453..b489fe8ea1 100644 --- a/wmshell/src/com/android/wm/shell/docs/overview.md +++ b/wmshell/src/com/android/wm/shell/docs/overview.md @@ -1,5 +1,4 @@ # What is the WindowManager Shell -[Back to home](README.md) --- diff --git a/wmshell/src/com/android/wm/shell/docs/sysui.md b/wmshell/src/com/android/wm/shell/docs/sysui.md index 47383b0a81..30ff6691f5 100644 --- a/wmshell/src/com/android/wm/shell/docs/sysui.md +++ b/wmshell/src/com/android/wm/shell/docs/sysui.md @@ -1,5 +1,4 @@ # Shell & SystemUI -[Back to home](README.md) --- @@ -72,6 +71,15 @@ they will need to post to the Shell main thread to run. ## Shell commands & Dumps Since the Shell library is a part of the SysUI process, it relies on SysUI to trigger commands -on individual Shell components. +on individual Shell components, or to dump individual shell components. -More detail can be found in [Debugging in the Shell](debugging.md#shell-commands) section. \ No newline at end of file +```shell +# Dump everything +adb shell dumpsys activity service SystemUIService WMShell + +# Run a specific command +adb shell dumpsys activity service SystemUIService WMShell help +adb shell dumpsys activity service SystemUIService WMShell <cmd> <args> ... +``` + +More detail can be found in [Debugging in the Shell](debugging.md) section. \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/docs/testing.md b/wmshell/src/com/android/wm/shell/docs/testing.md index b455313128..98af930c44 100644 --- a/wmshell/src/com/android/wm/shell/docs/testing.md +++ b/wmshell/src/com/android/wm/shell/docs/testing.md @@ -1,5 +1,4 @@ # Testing -[Back to home](README.md) --- diff --git a/wmshell/src/com/android/wm/shell/docs/threading.md b/wmshell/src/com/android/wm/shell/docs/threading.md index bde7223573..9d015357b6 100644 --- a/wmshell/src/com/android/wm/shell/docs/threading.md +++ b/wmshell/src/com/android/wm/shell/docs/threading.md @@ -1,5 +1,4 @@ # Threading -[Back to home](README.md) --- @@ -37,8 +36,7 @@ the product. thread) - This is always another thread even if config_enableShellMainThread is not set true - **Note**: - - This thread runs with `THREAD_PRIORITY_BACKGROUND` priority but can be requested to be boosted - to `THREAD_PRIORITY_FOREGROUND` + - This thread runs with `THREAD_PRIORITY_BACKGROUND` priority - `ShellAnimationThread` (currently only used for Transitions and Splitscreen, but potentially all animations could be offloaded here) - `ShellSplashScreenThread` (only for use with splashscreens) diff --git a/wmshell/src/com/android/wm/shell/draganddrop/DragAndDropController.java b/wmshell/src/com/android/wm/shell/draganddrop/DragAndDropController.java index 48c26465fa..c374eb8e8f 100644 --- a/wmshell/src/com/android/wm/shell/draganddrop/DragAndDropController.java +++ b/wmshell/src/com/android/wm/shell/draganddrop/DragAndDropController.java @@ -26,12 +26,14 @@ import static android.view.DragEvent.ACTION_DROP; import static android.view.WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED; import static android.view.WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE; import static android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS; +import static android.view.WindowManager.LayoutParams.MATCH_PARENT; import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_INTERCEPT_GLOBAL_DRAG_AND_DROP; import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_NO_MOVE_ANIMATION; import static android.view.WindowManager.LayoutParams.SYSTEM_FLAG_SHOW_FOR_ALL_USERS; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY; -import android.annotation.UserIdInt; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_DRAG_AND_DROP; + import android.app.ActivityManager; import android.app.ActivityTaskManager; import android.app.PendingIntent; @@ -50,7 +52,6 @@ import android.view.View; import android.view.ViewGroup; import android.view.WindowManager; import android.widget.FrameLayout; -import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import androidx.annotation.BinderThread; @@ -58,26 +59,21 @@ import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; import com.android.internal.logging.UiEventLogger; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.launcher3.icons.IconProvider; import com.android.wm.shell.R; -import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.bubbles.bar.DragToBubbleController; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.ExternalInterfaceBinder; import com.android.wm.shell.common.RemoteCallable; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.shared.annotations.ExternalMainThread; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; -import dagger.Lazy; - import java.io.PrintWriter; import java.util.ArrayList; import java.util.function.Consumer; @@ -89,7 +85,6 @@ import java.util.function.Function; public class DragAndDropController implements RemoteCallable<DragAndDropController>, GlobalDragListener.GlobalDragListenerCallback, DisplayController.OnDisplaysChangedListener, - ShellTaskOrganizer.TaskVanishedListener, View.OnDragListener, ComponentCallbacks2 { private static final String TAG = DragAndDropController.class.getSimpleName(); @@ -97,15 +92,12 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll private final Context mContext; private final ShellController mShellController; private final ShellCommandHandler mShellCommandHandler; - private final ShellTaskOrganizer mShellTaskOrganizer; private final DisplayController mDisplayController; private final DragAndDropEventLogger mLogger; private final IconProvider mIconProvider; private final GlobalDragListener mGlobalDragListener; private final Transitions mTransitions; - private final DesktopState mDesktopState; private SplitScreenController mSplitScreen; - private Lazy<DragToBubbleController> mDragToBubbleController; private ShellExecutor mMainExecutor; private ArrayList<DragAndDropListener> mListeners = new ArrayList<>(); @@ -131,8 +123,7 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll * drag. */ default boolean onUnhandledDrag(@NonNull PendingIntent launchIntent, - @UserIdInt int userId, - @NonNull DragEvent dragEvent, + @NonNull SurfaceControl dragSurface, @NonNull Consumer<Boolean> onFinishCallback) { return false; } @@ -142,27 +133,21 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll ShellInit shellInit, ShellController shellController, ShellCommandHandler shellCommandHandler, - ShellTaskOrganizer shellTaskOrganizer, DisplayController displayController, UiEventLogger uiEventLogger, IconProvider iconProvider, GlobalDragListener globalDragListener, Transitions transitions, - Lazy<DragToBubbleController> dragToBubbleControllerLazy, - ShellExecutor mainExecutor, - DesktopState desktopState) { + ShellExecutor mainExecutor) { mContext = context; mShellController = shellController; mShellCommandHandler = shellCommandHandler; - mShellTaskOrganizer = shellTaskOrganizer; mDisplayController = displayController; mLogger = new DragAndDropEventLogger(uiEventLogger); mIconProvider = iconProvider; mGlobalDragListener = globalDragListener; mTransitions = transitions; - mDragToBubbleController = dragToBubbleControllerLazy; mMainExecutor = mainExecutor; - mDesktopState = desktopState; shellInit.addInitCallback(this::onInit, this); } @@ -176,12 +161,10 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll mMainExecutor.executeDelayed(() -> { mDisplayController.addDisplayWindowListener(this); }, 0); - mShellController.addExternalInterface(IDragAndDrop.DESCRIPTOR, + mShellController.addExternalInterface(KEY_EXTRA_SHELL_DRAG_AND_DROP, this::createExternalInterface, this); - mShellTaskOrganizer.addTaskVanishedListener(this); mShellCommandHandler.addDumpCallback(this::dump, this); mGlobalDragListener.setListener(this); - addListener(mDragToBubbleController.get()); } private ExternalInterfaceBinder createExternalInterface() { @@ -251,20 +234,14 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll layoutParams.layoutInDisplayCutoutMode = LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS; layoutParams.setFitInsetsTypes(0); layoutParams.setTitle("ShellDropTarget"); + FrameLayout rootView = (FrameLayout) LayoutInflater.from(context).inflate( R.layout.global_drop_target, null); rootView.setOnDragListener(this); rootView.setVisibility(View.INVISIBLE); - DragToBubbleController dragToBubbleController = null; - boolean isPrimaryDisplay = context.getDisplayId() == displayId; - // only add bubble bar drop targets on primary display - if (isPrimaryDisplay) { - dragToBubbleController = mDragToBubbleController.get(); - rootView.addView(dragToBubbleController.getDropTargetContainer()); - } - DragLayoutProvider dragLayout = new DragLayout(context, mSplitScreen, - dragToBubbleController, mIconProvider); - dragLayout.addDraggingView(rootView); + DragLayout dragLayout = new DragLayout(context, mSplitScreen, mIconProvider); + rootView.addView(dragLayout, + new FrameLayout.LayoutParams(MATCH_PARENT, MATCH_PARENT)); try { wm.addView(rootView, layoutParams); addDisplayDropTarget(displayId, context, wm, rootView, dragLayout); @@ -276,7 +253,7 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll @VisibleForTesting void addDisplayDropTarget(int displayId, Context context, WindowManager wm, - FrameLayout rootView, DragLayoutProvider dragLayout) { + FrameLayout rootView, DragLayout dragLayout) { mDisplayDropTargets.put(displayId, new PerDisplay(displayId, context, wm, rootView, dragLayout)); } @@ -303,34 +280,6 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll mDisplayDropTargets.remove(displayId); } - @Override - public void onTaskVanished(ActivityManager.RunningTaskInfo taskInfo) { - if (taskInfo.baseIntent == null) { - // Invalid info - return; - } - // Find the active drag - PerDisplay pd = null; - for (int i = 0; i < mDisplayDropTargets.size(); i++) { - final PerDisplay iPd = mDisplayDropTargets.valueAt(i); - if (iPd.isHandlingDrag) { - pd = iPd; - break; - } - } - if (pd == null || pd.activeDragCount <= 0 || !pd.isHandlingDrag) { - // Not currently dragging - return; - } - - // Update the drag session - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, - "Handling vanished task: id=%d component=%s", taskInfo.taskId, - taskInfo.baseIntent.getComponent()); - pd.dragSession.updateRunningTask(); - pd.dragLayout.updateSession(pd.dragSession); - } - @Override public boolean onDrag(View target, DragEvent event) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, @@ -345,26 +294,13 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll return false; } - DragSession dragSession = null; if (event.getAction() == ACTION_DRAG_STARTED) { mActiveDragDisplay = displayId; - dragSession = new DragSession(ActivityTaskManager.getInstance(), - mDisplayController.getDisplayLayout(displayId), event.getClipData(), - event.getDragFlags()); - // Only update the running task for now to determine if we should defer to desktop to - // handle the drag - dragSession.updateRunningTask(); - final ActivityManager.RunningTaskInfo taskInfo = dragSession.runningTaskInfo; - // Desktop tasks will have their own drag handling. - final boolean isDesktopDrag = taskInfo != null && taskInfo.isFreeform() - && mDesktopState.canEnterDesktopMode(); - pd.isHandlingDrag = DragUtils.canHandleDrag(event) && !isDesktopDrag; + pd.isHandlingDrag = DragUtils.canHandleDrag(event); ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, - "Clip description: handlingDrag=%b itemCount=%d mimeTypes=%s flags=%s", - pd.isHandlingDrag, - event.getClipData() != null ? event.getClipData().getItemCount() : -1, - DragUtils.getMimeTypesConcatenated(description), - DragUtils.dragFlagsToString(event.getDragFlags())); + "Clip description: handlingDrag=%b itemCount=%d mimeTypes=%s", + pd.isHandlingDrag, event.getClipData().getItemCount(), + DragUtils.getMimeTypesConcatenated(description)); } if (!pd.isHandlingDrag) { @@ -377,17 +313,13 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll Slog.w(TAG, "Unexpected drag start during an active drag"); return false; } - // Only initialize the session after we've checked that we're handling the drag - dragSession.initialize(true /* skipUpdateRunningTask */); - pd.dragSession = dragSession; + // TODO(b/290391688): Also update the session data with task stack changes + pd.dragSession = new DragSession(ActivityTaskManager.getInstance(), + mDisplayController.getDisplayLayout(displayId), event.getClipData(), + event.getDragFlags()); + pd.dragSession.update(); pd.activeDragCount++; pd.dragLayout.prepare(pd.dragSession, mLogger.logStart(pd.dragSession)); - if (pd.dragSession.hideDragSourceTaskId != -1) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, - "Hiding task surface: taskId=%d", pd.dragSession.hideDragSourceTaskId); - mShellTaskOrganizer.setTaskSurfaceVisibility( - pd.dragSession.hideDragSourceTaskId, false /* visible */); - } setDropTargetWindowVisibility(pd, View.VISIBLE); notifyListeners(l -> { l.onDragStarted(); @@ -417,13 +349,6 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll if (pd.dragLayout.hasDropped()) { mLogger.logDrop(); } else { - if (pd.dragSession.hideDragSourceTaskId != -1) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, - "Re-showing task surface: taskId=%d", - pd.dragSession.hideDragSourceTaskId); - mShellTaskOrganizer.setTaskSurfaceVisibility( - pd.dragSession.hideDragSourceTaskId, true /* visible */); - } pd.activeDragCount--; pd.dragLayout.hide(event, () -> { if (pd.activeDragCount == 0) { @@ -463,10 +388,8 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll return; } - // TODO(b/391624027): Consider piping through launch intent user if needed later - final int userId = launchIntent.getCreatorUserHandle().getIdentifier(); final boolean handled = notifyListeners( - l -> l.onUnhandledDrag(launchIntent, userId, dragEvent, onFinishCallback)); + l -> l.onUnhandledDrag(launchIntent, dragEvent.getDragSurface(), onFinishCallback)); if (!handled) { // Nobody handled this, we still have to notify WM onFinishCallback.accept(false); @@ -479,16 +402,7 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll private boolean handleDrop(DragEvent event, PerDisplay pd) { final SurfaceControl dragSurface = event.getDragSurface(); pd.activeDragCount--; - // Find the token of the task to hide as a part of entering split - WindowContainerToken hideTaskToken = null; - if (pd.dragSession.hideDragSourceTaskId != -1) { - ActivityManager.RunningTaskInfo info = mShellTaskOrganizer.getRunningTaskInfo( - pd.dragSession.hideDragSourceTaskId); - if (info != null) { - hideTaskToken = info.token; - } - } - return pd.dragLayout.drop(event, dragSurface, hideTaskToken, () -> { + return pd.dragLayout.drop(event, dragSurface, () -> { if (pd.activeDragCount == 0) { // Hide the window if another drag hasn't been started while animating the drop setDropTargetWindowVisibility(pd, View.INVISIBLE); @@ -586,7 +500,7 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll final Context context; final WindowManager wm; final FrameLayout rootView; - final DragLayoutProvider dragLayout; + final DragLayout dragLayout; // Tracks whether the window has fully drawn since it was last made visible boolean hasDrawn; @@ -597,7 +511,7 @@ public class DragAndDropController implements RemoteCallable<DragAndDropControll // The active drag session DragSession dragSession; - PerDisplay(int dispId, Context c, WindowManager w, FrameLayout rv, DragLayoutProvider dl) { + PerDisplay(int dispId, Context c, WindowManager w, FrameLayout rv, DragLayout dl) { displayId = dispId; context = c; wm = w; diff --git a/wmshell/src/com/android/wm/shell/draganddrop/DragLayout.java b/wmshell/src/com/android/wm/shell/draganddrop/DragLayout.java index b2186e6014..4bb10dfdf8 100644 --- a/wmshell/src/com/android/wm/shell/draganddrop/DragLayout.java +++ b/wmshell/src/com/android/wm/shell/draganddrop/DragLayout.java @@ -20,87 +20,65 @@ import static android.app.StatusBarManager.DISABLE_NONE; import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD; import static android.content.pm.ActivityInfo.CONFIG_ASSETS_PATHS; import static android.content.pm.ActivityInfo.CONFIG_UI_MODE; +import static android.content.res.Configuration.ORIENTATION_LANDSCAPE; import static android.view.ViewGroup.LayoutParams.MATCH_PARENT; import static android.view.ViewTreeObserver.InternalInsetsInfo.TOUCHABLE_INSETS_REGION; -import static com.android.wm.shell.Flags.enableFlexibleSplit; -import static com.android.wm.shell.draganddrop.SplitDragPolicy.Target.TYPE_SPLIT_BOTTOM; -import static com.android.wm.shell.draganddrop.SplitDragPolicy.Target.TYPE_SPLIT_LEFT; -import static com.android.wm.shell.draganddrop.SplitDragPolicy.Target.TYPE_SPLIT_RIGHT; -import static com.android.wm.shell.draganddrop.SplitDragPolicy.Target.TYPE_SPLIT_TOP; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenUtils.getResizingBackgroundColor; +import static com.android.wm.shell.draganddrop.DragAndDropPolicy.Target.TYPE_SPLIT_BOTTOM; +import static com.android.wm.shell.draganddrop.DragAndDropPolicy.Target.TYPE_SPLIT_LEFT; +import static com.android.wm.shell.draganddrop.DragAndDropPolicy.Target.TYPE_SPLIT_RIGHT; +import static com.android.wm.shell.draganddrop.DragAndDropPolicy.Target.TYPE_SPLIT_TOP; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.ValueAnimator; import android.annotation.SuppressLint; import android.app.ActivityManager; -import android.app.PendingIntent; import android.app.StatusBarManager; -import android.content.ClipDescription; import android.content.Context; -import android.content.Intent; -import android.content.pm.ShortcutInfo; import android.content.res.Configuration; import android.content.res.Resources; -import android.graphics.Color; import android.graphics.Insets; -import android.graphics.Point; import android.graphics.Rect; import android.graphics.Region; import android.graphics.drawable.Drawable; -import android.os.UserHandle; import android.view.DragEvent; import android.view.SurfaceControl; -import android.view.View; -import android.view.ViewGroup; import android.view.ViewTreeObserver; import android.view.WindowInsets; import android.view.WindowInsets.Type; -import android.widget.FrameLayout; import android.widget.LinearLayout; -import android.window.WindowContainerToken; import androidx.annotation.NonNull; -import androidx.annotation.Nullable; import com.android.internal.logging.InstanceId; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.launcher3.icons.IconProvider; import com.android.wm.shell.R; -import com.android.wm.shell.bubbles.bar.DragToBubbleController; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.common.split.SplitScreenUtils; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.animation.Interpolators; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.shared.draganddrop.DragAndDropConstants; import com.android.wm.shell.splitscreen.SplitScreenController; import java.io.PrintWriter; -import java.util.Arrays; -import java.util.Collection; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.function.BiConsumer; +import java.util.ArrayList; /** * Coordinates the visible drop targets for the current drag within a single display. */ public class DragLayout extends LinearLayout - implements ViewTreeObserver.OnComputeInternalInsetsListener, DragLayoutProvider, - DragZoneAnimator{ + implements ViewTreeObserver.OnComputeInternalInsetsListener { - static final boolean DEBUG_LAYOUT = false; // While dragging the status bar is hidden. private static final int HIDE_STATUS_BAR_FLAGS = StatusBarManager.DISABLE_NOTIFICATION_ICONS | StatusBarManager.DISABLE_NOTIFICATION_ALERTS | StatusBarManager.DISABLE_CLOCK | StatusBarManager.DISABLE_SYSTEM_INFO; - private final DropTarget mPolicy; + private final DragAndDropPolicy mPolicy; private final SplitScreenController mSplitScreenController; private final IconProvider mIconProvider; private final StatusBarManager mStatusBarManager; @@ -111,11 +89,10 @@ public class DragLayout extends LinearLayout // Whether the device is currently in left/right split mode private boolean mIsLeftRightSplit; - private SplitDragPolicy.Target mCurrentTarget = null; - private final @Nullable DragToBubbleController mDragToBubbleController; - private boolean mIsOverBubblesDropZone = false; + private DragAndDropPolicy.Target mCurrentTarget = null; private DropZoneView mDropZoneView1; private DropZoneView mDropZoneView2; + private int mDisplayMargin; private int mDividerSize; private int mLaunchIntentEdgeMargin; @@ -125,25 +102,14 @@ public class DragLayout extends LinearLayout private boolean mIsShowing; private boolean mHasDropped; private DragSession mSession; - // The last position that was handled by the drag layout - private final Point mLastPosition = new Point(); - - // Used with enableFlexibleSplit() flag - private List<SplitDragPolicy.Target> mTargets; - private Map<SplitDragPolicy.Target, DropZoneView> mTargetDropMap = new HashMap<>(); - private FrameLayout mAnimatingRootLayout; - // Used with enableFlexibleSplit() flag @SuppressLint("WrongConstant") - public DragLayout(Context context, - SplitScreenController splitScreenController, - @Nullable DragToBubbleController dragToBubbleController, + public DragLayout(Context context, SplitScreenController splitScreenController, IconProvider iconProvider) { super(context); mSplitScreenController = splitScreenController; mIconProvider = iconProvider; - mDragToBubbleController = dragToBubbleController; - mPolicy = new SplitDragPolicy(context, splitScreenController, this); + mPolicy = new DragAndDropPolicy(context, splitScreenController); mStatusBarManager = context.getSystemService(StatusBarManager.class); mLastConfiguration.setTo(context.getResources().getConfiguration()); @@ -240,26 +206,11 @@ public class DragLayout extends LinearLayout boolean isLeftRightSplit = mSplitScreenController != null && mSplitScreenController.isLeftRightSplit(); if (isLeftRightSplit) { - if (enableFlexibleSplit()) { - mTargetDropMap.values().forEach(dzv -> dzv.setBottomInset(mInsets.bottom)); - } else { - mDropZoneView1.setBottomInset(mInsets.bottom); - mDropZoneView2.setBottomInset(mInsets.bottom); - } + mDropZoneView1.setBottomInset(mInsets.bottom); + mDropZoneView2.setBottomInset(mInsets.bottom); } else { - if (enableFlexibleSplit()) { - Collection<DropZoneView> dropViews = mTargetDropMap.values(); - final DropZoneView[] bottomView = {null}; - dropViews.forEach(dropZoneView -> { - bottomView[0] = dropZoneView; - dropZoneView.setBottomInset(0); - }); - // TODO(b/349828130): necessary? maybe with UI polish - // bottomView[0].setBottomInset(mInsets.bottom); - } else { - mDropZoneView1.setBottomInset(0); - mDropZoneView2.setBottomInset(mInsets.bottom); - } + mDropZoneView1.setBottomInset(0); + mDropZoneView2.setBottomInset(mInsets.bottom); } return super.onApplyWindowInsets(insets); } @@ -277,31 +228,17 @@ public class DragLayout extends LinearLayout final boolean themeChanged = (diff & CONFIG_ASSETS_PATHS) != 0 || (diff & CONFIG_UI_MODE) != 0; if (themeChanged) { - if (enableFlexibleSplit()) { - mTargetDropMap.values().forEach(DropZoneView::onThemeChange); - } else { - mDropZoneView1.onThemeChange(); - mDropZoneView2.onThemeChange(); - } + mDropZoneView1.onThemeChange(); + mDropZoneView2.onThemeChange(); } mLastConfiguration.setTo(newConfig); requestLayout(); } private void updateContainerMarginsForSingleTask() { - if (enableFlexibleSplit()) { - DropZoneView firstDropZone = mTargetDropMap.values().stream().findFirst().get(); - mTargetDropMap.values().stream() - .filter(dropZoneView -> dropZoneView != firstDropZone) - .forEach(dropZoneView -> dropZoneView.setContainerMargin(0, 0, 0, 0)); - firstDropZone.setContainerMargin( - mDisplayMargin, mDisplayMargin, mDisplayMargin, mDisplayMargin - ); - } else { - mDropZoneView1.setContainerMargin( - mDisplayMargin, mDisplayMargin, mDisplayMargin, mDisplayMargin); - mDropZoneView2.setContainerMargin(0, 0, 0, 0); - } + mDropZoneView1.setContainerMargin( + mDisplayMargin, mDisplayMargin, mDisplayMargin, mDisplayMargin); + mDropZoneView2.setContainerMargin(0, 0, 0, 0); } private void updateContainerMargins(boolean isLeftRightSplit) { @@ -328,15 +265,6 @@ public class DragLayout extends LinearLayout */ public void prepare(DragSession session, InstanceId loggerSessionId) { mPolicy.start(session, loggerSessionId); - updateSession(session); - } - - /** - * Updates the drag layout based on the diven drag session. - */ - public void updateSession(DragSession session) { - // Note: The policy currently just keeps a reference to the session - boolean updatingExistingSession = mSession != null; mSession = session; mHasDropped = false; mCurrentTarget = null; @@ -349,11 +277,9 @@ public class DragLayout extends LinearLayout final int activityType = taskInfo1.getActivityType(); if (activityType == ACTIVITY_TYPE_STANDARD) { Drawable icon1 = mIconProvider.getIcon(taskInfo1.topActivityInfo); - int bgColor1 = getResizingBackgroundColor(taskInfo1); + int bgColor1 = getResizingBackgroundColor(taskInfo1).toArgb(); mDropZoneView1.setAppInfo(bgColor1, icon1); mDropZoneView2.setAppInfo(bgColor1, icon1); - mDropZoneView1.setForceIgnoreBottomMargin(false); - mDropZoneView2.setForceIgnoreBottomMargin(false); updateDropZoneSizes(null, null); // passing null splits the views evenly } else { // We use the first drop zone to show the fullscreen highlight, and don't need @@ -364,35 +290,19 @@ public class DragLayout extends LinearLayout } } } else { - ActivityManager.RunningTaskInfo[] taskInfos = mSplitScreenController.getAllTaskInfos(); - boolean anyTasksNull = Arrays.stream(taskInfos).anyMatch(Objects::isNull); - if (enableFlexibleSplit() && taskInfos != null && !anyTasksNull) { - int i = 0; - for (DropZoneView v : mTargetDropMap.values()) { - if (i >= taskInfos.length) { - // TODO(b/349828130) Support once we add 3 StageRoots - continue; - } - ActivityManager.RunningTaskInfo task = taskInfos[i]; - v.setAppInfo(getResizingBackgroundColor(task), - mIconProvider.getIcon(task.topActivityInfo)); - i++; - } - } else { - // We're already in split so get taskInfo from the controller to populate icon / color. - ActivityManager.RunningTaskInfo topOrLeftTask = - mSplitScreenController.getTaskInfo(SPLIT_POSITION_TOP_OR_LEFT); - ActivityManager.RunningTaskInfo bottomOrRightTask = - mSplitScreenController.getTaskInfo(SPLIT_POSITION_BOTTOM_OR_RIGHT); - if (topOrLeftTask != null && bottomOrRightTask != null) { - Drawable topOrLeftIcon = mIconProvider.getIcon(topOrLeftTask.topActivityInfo); - int topOrLeftColor = getResizingBackgroundColor(topOrLeftTask); - Drawable bottomOrRightIcon = mIconProvider.getIcon( - bottomOrRightTask.topActivityInfo); - int bottomOrRightColor = getResizingBackgroundColor(bottomOrRightTask); - mDropZoneView1.setAppInfo(topOrLeftColor, topOrLeftIcon); - mDropZoneView2.setAppInfo(bottomOrRightColor, bottomOrRightIcon); - } + // We're already in split so get taskInfo from the controller to populate icon / color. + ActivityManager.RunningTaskInfo topOrLeftTask = + mSplitScreenController.getTaskInfo(SPLIT_POSITION_TOP_OR_LEFT); + ActivityManager.RunningTaskInfo bottomOrRightTask = + mSplitScreenController.getTaskInfo(SPLIT_POSITION_BOTTOM_OR_RIGHT); + if (topOrLeftTask != null && bottomOrRightTask != null) { + Drawable topOrLeftIcon = mIconProvider.getIcon(topOrLeftTask.topActivityInfo); + int topOrLeftColor = getResizingBackgroundColor(topOrLeftTask).toArgb(); + Drawable bottomOrRightIcon = mIconProvider.getIcon( + bottomOrRightTask.topActivityInfo); + int bottomOrRightColor = getResizingBackgroundColor(bottomOrRightTask).toArgb(); + mDropZoneView1.setAppInfo(topOrLeftColor, topOrLeftIcon); + mDropZoneView2.setAppInfo(bottomOrRightColor, bottomOrRightIcon); } // Update the dropzones to match existing split sizes @@ -402,16 +312,9 @@ public class DragLayout extends LinearLayout updateDropZoneSizes(topOrLeftBounds, bottomOrRightBounds); } requestLayout(); - if (updatingExistingSession) { - // Update targets if we are already currently dragging - recomputeDropTargets(); - update(mLastPosition.x, mLastPosition.y); - } } private void updateDropZoneSizesForSingleTask() { - resetDropZoneTranslations(); - final LinearLayout.LayoutParams dropZoneView1 = (LayoutParams) mDropZoneView1.getLayoutParams(); final LinearLayout.LayoutParams dropZoneView2 = @@ -426,19 +329,6 @@ public class DragLayout extends LinearLayout mDropZoneView2.setLayoutParams(dropZoneView2); } - /** Zeroes out translationX and translationY on all drop zone views. */ - void resetDropZoneTranslations() { - setDropZoneTranslations(0, 0); - } - - /** Sets translationX and translationY on all drop zone views. */ - void setDropZoneTranslations(int x, int y) { - mDropZoneView1.setTranslationX(x); - mDropZoneView1.setTranslationY(y); - mDropZoneView2.setTranslationX(x); - mDropZoneView2.setTranslationY(y); - } - /** * Sets the size of the two drop zones based on the provided bounds. The divider sits between * the views and its size is included in the calculations. @@ -447,15 +337,6 @@ public class DragLayout extends LinearLayout * @param bounds2 bounds to apply to the second dropzone view, null if split in half. */ private void updateDropZoneSizes(Rect bounds1, Rect bounds2) { - if (bounds1 == null || bounds2 == null) { - // We're entering 50:50 split screen from a single app, no need for any translations. - resetDropZoneTranslations(); - } else { - // We're already in split, so align our drop zones to match the left/top app edge. This - // is necessary because the left/top app can be offscreen. - setDropZoneTranslations(bounds1.left, bounds1.top); - } - final int halfDivider = mDividerSize / 2; final LinearLayout.LayoutParams dropZoneView1 = (LayoutParams) mDropZoneView1.getLayoutParams(); @@ -478,28 +359,11 @@ public class DragLayout extends LinearLayout mDropZoneView2.setLayoutParams(dropZoneView2); } - /** - * Shows the drag layout. - */ public void show() { mIsShowing = true; recomputeDropTargets(); } - @NonNull - @Override - public void addDraggingView(ViewGroup rootView) { - if (enableFlexibleSplit()) { - removeAllViews(); - mAnimatingRootLayout = new FrameLayout(getContext()); - addView(mAnimatingRootLayout, - new LinearLayout.LayoutParams(MATCH_PARENT, MATCH_PARENT)); - ((LayoutParams) mAnimatingRootLayout.getLayoutParams()).weight = 1; - } - - rootView.addView(this, new ViewGroup.LayoutParams(MATCH_PARENT, MATCH_PARENT)); - } - /** * Recalculates the drop targets based on the current policy. */ @@ -507,59 +371,31 @@ public class DragLayout extends LinearLayout if (!mIsShowing) { return; } - final List<SplitDragPolicy.Target> targets = mPolicy.getTargets(mInsets); + final ArrayList<DragAndDropPolicy.Target> targets = mPolicy.getTargets(mInsets); for (int i = 0; i < targets.size(); i++) { - final SplitDragPolicy.Target target = targets.get(i); + final DragAndDropPolicy.Target target = targets.get(i); ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, "Add target: %s", target); // Inset the draw region by a little bit target.drawRegion.inset(mDisplayMargin, mDisplayMargin); } - - if (enableFlexibleSplit()) { - mTargets = targets; - mTargetDropMap.clear(); - for (int i = 0; i < mTargets.size(); i++) { - DropZoneView v = new DropZoneView(getContext()); - SplitDragPolicy.Target t = mTargets.get(i); - FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(t.drawRegion.width(), - t.drawRegion.height()); - mAnimatingRootLayout.addView(v, params); - v.setTranslationX(t.drawRegion.left); - v.setTranslationY(t.drawRegion.top); - mTargetDropMap.put(t, v); - if (DEBUG_LAYOUT) { - v.setDebugIndex(t.index); - } - } - } } /** * Updates the visible drop target as the user drags. */ public void update(DragEvent event) { - update((int) event.getX(), (int) event.getY()); - } - - /** - * Updates the visible drop target as the user drags to the given coordinates. - */ - private void update(int x, int y) { if (mHasDropped) { return; } - // if event is over the bubble don't let split handle it - if (interceptBubbleBarEvent(x, y)) { - mLastPosition.set(x, y); - return; - } // Find containing region, if the same as mCurrentRegion, then skip, otherwise, animate the // visibility of the current region - SplitDragPolicy.Target target = mPolicy.getTargetAtLocation(x, y); + DragAndDropPolicy.Target target = mPolicy.getTargetAtLocation( + (int) event.getX(), (int) event.getY()); if (mCurrentTarget != target) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, "Current target: %s", target); if (target == null) { - animateToNoTarget(); + // Animating to no target + animateSplitContainers(false, null /* animCompleteCallback */); } else if (mCurrentTarget == null) { if (mPolicy.getNumTargets() == 1) { animateFullscreenContainer(true); @@ -567,14 +403,10 @@ public class DragLayout extends LinearLayout animateSplitContainers(true, null /* animCompleteCallback */); animateHighlight(target); } - } else if (mCurrentTarget.type != target.type || enableFlexibleSplit()) { + } else if (mCurrentTarget.type != target.type) { // Switching between targets - if (enableFlexibleSplit()) { - animateHighlight(target); - } else { - mDropZoneView1.animateSwitch(); - mDropZoneView2.animateSwitch(); - } + mDropZoneView1.animateSwitch(); + mDropZoneView2.animateSwitch(); // Announce for accessibility. switch (target.type) { case TYPE_SPLIT_LEFT: @@ -597,27 +429,6 @@ public class DragLayout extends LinearLayout } mCurrentTarget = target; } - mLastPosition.set(x, y); - } - - private boolean interceptBubbleBarEvent(int x, int y) { - boolean interceptBubbleBarEvent = mDragToBubbleController != null - && mDragToBubbleController.onDragUpdate(x, y); - if (interceptBubbleBarEvent && !mIsOverBubblesDropZone && mCurrentTarget != null) { - // only animate for no target if we first enter bubble bar drop zone and have a target - animateToNoTarget(); - mCurrentTarget = null; - } - mIsOverBubblesDropZone = interceptBubbleBarEvent; - return interceptBubbleBarEvent; - } - - private void animateToNoTarget() { - // Animating to no target - animateSplitContainers(false, null /* animCompleteCallback */); - if (enableFlexibleSplit()) { - animateHighlight(null); - } } /** @@ -625,7 +436,6 @@ public class DragLayout extends LinearLayout */ public void hide(DragEvent event, Runnable hideCompleteCallback) { mIsShowing = false; - mLastPosition.set(-1, -1); animateSplitContainers(false, () -> { if (hideCompleteCallback != null) { hideCompleteCallback.run(); @@ -636,39 +446,23 @@ public class DragLayout extends LinearLayout mSession = null; } }); - if (mIsOverBubblesDropZone) { - // bubble bar is still showing drop target, notify bubbles of drag cancel - mIsOverBubblesDropZone = false; - Objects.requireNonNull(mDragToBubbleController).onDragEnded(); - } // Reset the state if we previously force-ignore the bottom margin mDropZoneView1.setForceIgnoreBottomMargin(false); mDropZoneView2.setForceIgnoreBottomMargin(false); updateContainerMargins(mIsLeftRightSplit); mCurrentTarget = null; - if (enableFlexibleSplit()) { - mAnimatingRootLayout.removeAllViews(); - } } /** * Handles the drop onto a target and animates out the visible drop targets. */ - public boolean drop(DragEvent event, @NonNull SurfaceControl dragSurface, - @Nullable WindowContainerToken hideTaskToken, Runnable dropCompleteCallback) { - final boolean handledDrop = mCurrentTarget != null || mIsOverBubblesDropZone; + public boolean drop(DragEvent event, SurfaceControl dragSurface, + Runnable dropCompleteCallback) { + final boolean handledDrop = mCurrentTarget != null; mHasDropped = true; - Intent appData = mSession.appData; - // Process the drop exclusive by DropTarget OR by the BubbleBar - if (mCurrentTarget != null) { - mPolicy.onDropped(mCurrentTarget, hideTaskToken); - } else if (appData != null - && mIsOverBubblesDropZone - && BubbleAnythingFlagHelper.enableCreateAnyBubble()) { - handleDropOnBubbleBar(appData, Objects.requireNonNull(mDragToBubbleController)); - } - mIsOverBubblesDropZone = false; + // Process the drop + mPolicy.handleDrop(mCurrentTarget); // Start animating the drop UI out with the drag surface hide(event, dropCompleteCallback); @@ -678,27 +472,7 @@ public class DragLayout extends LinearLayout return handledDrop; } - private void handleDropOnBubbleBar(Intent appData, - DragToBubbleController dragToBubbleController) { - ShortcutInfo shortcutInfo = appData.getParcelableExtra( - DragAndDropConstants.EXTRA_SHORTCUT_INFO, - ShortcutInfo.class - ); - if (shortcutInfo != null) { - dragToBubbleController.onItemDropped(shortcutInfo); - return; - } - UserHandle user = appData.getParcelableExtra(Intent.EXTRA_USER, UserHandle.class); - PendingIntent pendingIntent = appData.getParcelableExtra( - ClipDescription.EXTRA_PENDING_INTENT, - PendingIntent.class - ); - if (pendingIntent != null && user != null) { - dragToBubbleController.onItemDropped(pendingIntent, user); - } - } - - private void hideDragSurface(@NonNull SurfaceControl dragSurface) { + private void hideDragSurface(SurfaceControl dragSurface) { final SurfaceControl.Transaction tx = new SurfaceControl.Transaction(); final ValueAnimator dragSurfaceAnimator = ValueAnimator.ofFloat(0f, 1f); // Currently the splash icon animation runs with the default ValueAnimator duration of @@ -753,20 +527,9 @@ public class DragLayout extends LinearLayout mStatusBarManager.disable(visible ? HIDE_STATUS_BAR_FLAGS : DISABLE_NONE); - Animator animator; - if (enableFlexibleSplit()) { - DropZoneView anyDropZoneView = null; - for (DropZoneView dz : mTargetDropMap.values()) { - dz.setShowingMargin(visible); - anyDropZoneView = dz; - } - animator = anyDropZoneView != null ? anyDropZoneView.getAnimator() : null; - } else { - mDropZoneView1.setShowingMargin(visible); - mDropZoneView2.setShowingMargin(visible); - animator = mDropZoneView1.getAnimator(); - } - + mDropZoneView1.setShowingMargin(visible); + mDropZoneView2.setShowingMargin(visible); + Animator animator = mDropZoneView1.getAnimator(); if (animCompleteCallback != null) { if (animator != null) { animator.addListener(new AnimatorListenerAdapter() { @@ -782,24 +545,7 @@ public class DragLayout extends LinearLayout } } - @Override - public void animateDragTargets( - @NonNull List<? extends BiConsumer<SplitDragPolicy.Target, View>> viewsToAnimate) { - for (Map.Entry<SplitDragPolicy.Target, DropZoneView> entry : mTargetDropMap.entrySet()) { - viewsToAnimate.get(0).accept(entry.getKey(), entry.getValue()); - } - } - - private void animateHighlight(SplitDragPolicy.Target target) { - if (enableFlexibleSplit()) { - for (Map.Entry<SplitDragPolicy.Target, DropZoneView> dzv : mTargetDropMap.entrySet()) { - // Highlight the view w/ the matching target, unhighlight the rest - dzv.getValue().setShowingHighlight(dzv.getKey() == target); - } - mPolicy.onHoveringOver(target); - return; - } - + private void animateHighlight(DragAndDropPolicy.Target target) { if (target.type == TYPE_SPLIT_LEFT || target.type == TYPE_SPLIT_TOP) { mDropZoneView1.setShowingHighlight(true); mDropZoneView2.setShowingHighlight(false); @@ -809,11 +555,6 @@ public class DragLayout extends LinearLayout } } - private static int getResizingBackgroundColor(ActivityManager.RunningTaskInfo taskInfo) { - final int taskBgColor = taskInfo.taskDescription.getBackgroundColor(); - return Color.valueOf(taskBgColor == -1 ? Color.WHITE : taskBgColor).toArgb(); - } - /** * Dumps information about this drag layout. */ diff --git a/wmshell/src/com/android/wm/shell/draganddrop/DragSession.java b/wmshell/src/com/android/wm/shell/draganddrop/DragSession.java index b03388f059..0addd432af 100644 --- a/wmshell/src/com/android/wm/shell/draganddrop/DragSession.java +++ b/wmshell/src/com/android/wm/shell/draganddrop/DragSession.java @@ -17,9 +17,7 @@ package com.android.wm.shell.draganddrop; import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD; -import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; -import static android.content.ClipDescription.EXTRA_HIDE_DRAG_SOURCE_TASK_ID; import android.app.ActivityManager; import android.app.ActivityTaskManager; @@ -32,9 +30,7 @@ import android.content.pm.ActivityInfo; import androidx.annotation.Nullable; -import com.android.internal.protolog.ProtoLog; import com.android.wm.shell.common.DisplayLayout; -import com.android.wm.shell.protolog.ShellProtoLogGroup; import java.util.List; @@ -43,7 +39,6 @@ import java.util.List; */ public class DragSession { private final ActivityTaskManager mActivityTaskManager; - @Nullable private final ClipData mInitialDragData; private final int mInitialDragFlags; @@ -66,7 +61,6 @@ public class DragSession { @WindowConfiguration.ActivityType int runningTaskActType = ACTIVITY_TYPE_STANDARD; boolean dragItemSupportsSplitscreen; - final int hideDragSourceTaskId; DragSession(ActivityTaskManager activityTaskManager, DisplayLayout dispLayout, ClipData data, int dragFlags) { @@ -74,70 +68,34 @@ public class DragSession { mInitialDragData = data; mInitialDragFlags = dragFlags; displayLayout = dispLayout; - hideDragSourceTaskId = data != null && data.getDescription().getExtras() != null - ? data.getDescription().getExtras().getInt(EXTRA_HIDE_DRAG_SOURCE_TASK_ID, -1) - : -1; - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, - "Extracting drag source taskId: taskId=%d", hideDragSourceTaskId); } /** * Returns the clip description associated with the drag. + * @return */ ClipDescription getClipDescription() { return mInitialDragData.getDescription(); } /** - * Updates the running task for this drag session. + * Updates the session data based on the current state of the system. */ - void updateRunningTask() { - final boolean hideDragSourceTask = hideDragSourceTaskId != -1; - final List<ActivityManager.RunningTaskInfo> tasks = - mActivityTaskManager.getTasks(5, false /* filterOnlyVisibleRecents */); - for (int i = 0; i < tasks.size(); i++) { - final ActivityManager.RunningTaskInfo task = tasks.get(i); - if (hideDragSourceTask && hideDragSourceTaskId == task.taskId) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, - "Skipping running task: id=%d component=%s", task.taskId, - task.baseIntent != null ? task.baseIntent.getComponent() : "null"); - continue; - } - if (!task.isVisible) { - // Skip invisible tasks - continue; - } - if (task.configuration.windowConfiguration.isAlwaysOnTop()) { - // Skip always-on-top floating tasks - continue; - } + void update() { + List<ActivityManager.RunningTaskInfo> tasks = + mActivityTaskManager.getTasks(1, false /* filterOnlyVisibleRecents */); + if (!tasks.isEmpty()) { + final ActivityManager.RunningTaskInfo task = tasks.get(0); runningTaskInfo = task; runningTaskWinMode = task.getWindowingMode(); runningTaskActType = task.getActivityType(); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, - "Running task: id=%d component=%s", task.taskId, - task.baseIntent != null ? task.baseIntent.getComponent() : "null"); - break; - } - } - - /** - * Updates the session data based on the current state of the system at the start of the drag. - */ - void initialize(boolean skipUpdateRunningTask) { - if (!skipUpdateRunningTask) { - updateRunningTask(); } activityInfo = mInitialDragData.getItemAt(0).getActivityInfo(); // TODO: This should technically check & respect config_supportsNonResizableMultiWindow dragItemSupportsSplitscreen = activityInfo == null || ActivityInfo.isResizeableMode(activityInfo.resizeMode); - appData = DragUtils.isAppDrag(getClipDescription()) - ? mInitialDragData.getItemAt(0).getIntent() - : null; - launchableIntent = appData != null - ? null - : DragUtils.getLaunchIntent(mInitialDragData, mInitialDragFlags); + appData = mInitialDragData.getItemAt(0).getIntent(); + launchableIntent = DragUtils.getLaunchIntent(mInitialDragData, mInitialDragFlags); } } diff --git a/wmshell/src/com/android/wm/shell/draganddrop/DragUtils.java b/wmshell/src/com/android/wm/shell/draganddrop/DragUtils.java index 0f049a7df6..e215870f18 100644 --- a/wmshell/src/com/android/wm/shell/draganddrop/DragUtils.java +++ b/wmshell/src/com/android/wm/shell/draganddrop/DragUtils.java @@ -19,28 +19,16 @@ package com.android.wm.shell.draganddrop; import static android.content.ClipDescription.MIMETYPE_APPLICATION_ACTIVITY; import static android.content.ClipDescription.MIMETYPE_APPLICATION_SHORTCUT; import static android.content.ClipDescription.MIMETYPE_APPLICATION_TASK; -import static android.view.View.DRAG_FLAG_ACCESSIBILITY_ACTION; -import static android.view.View.DRAG_FLAG_GLOBAL; -import static android.view.View.DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION; -import static android.view.View.DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION; -import static android.view.View.DRAG_FLAG_GLOBAL_SAME_APPLICATION; -import static android.view.View.DRAG_FLAG_GLOBAL_URI_READ; -import static android.view.View.DRAG_FLAG_GLOBAL_URI_WRITE; -import static android.view.View.DRAG_FLAG_HIDE_CALLING_TASK_ON_DRAG_START; -import static android.view.View.DRAG_FLAG_OPAQUE; -import static android.view.View.DRAG_FLAG_REQUEST_SURFACE_FOR_RETURN_ANIMATION; -import static android.view.View.DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG; import android.app.PendingIntent; import android.content.ClipData; import android.content.ClipDescription; import android.view.DragEvent; +import android.view.View; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import java.util.StringJoiner; - /** Collection of utility classes for handling drag and drop. */ public class DragUtils { private static final String TAG = "DragUtils"; @@ -49,7 +37,7 @@ public class DragUtils { * Returns whether we can handle this particular drag. */ public static boolean canHandleDrag(DragEvent event) { - if (event.getClipData() == null || event.getClipData().getItemCount() <= 0) { + if (event.getClipData().getItemCount() <= 0) { // No clip data, ignore this drag return false; } @@ -57,7 +45,7 @@ public class DragUtils { // Clip data contains an app drag initiated from SysUI, handle it return true; } - if (com.android.window.flags2.Flags.delegateUnhandledDrags() + if (com.android.window.flags.Flags.delegateUnhandledDrags() && getLaunchIntent(event) != null) { // Clip data contains a launchable intent drag, handle it return true; @@ -88,7 +76,7 @@ public class DragUtils { */ @Nullable public static PendingIntent getLaunchIntent(@NonNull ClipData data, int dragFlags) { - if ((dragFlags & DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG) == 0) { + if ((dragFlags & View.DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG) == 0) { // Disallow launching the intent if the app does not want to delegate it to the system return null; } @@ -107,11 +95,8 @@ public class DragUtils { /** * Returns a list of the mime types provided in the clip description. */ - public static String getMimeTypesConcatenated(@Nullable ClipDescription description) { + public static String getMimeTypesConcatenated(ClipDescription description) { String mimeTypes = ""; - if (description == null) { - return mimeTypes; - } for (int i = 0; i < description.getMimeTypeCount(); i++) { if (i > 0) { mimeTypes += ", "; @@ -120,45 +105,4 @@ public class DragUtils { } return mimeTypes; } - - /** - * Returns the string description of the given {@param dragFlags}. - */ - public static String dragFlagsToString(int dragFlags) { - StringJoiner str = new StringJoiner("|"); - if ((dragFlags & DRAG_FLAG_GLOBAL) != 0) { - str.add("GLOBAL"); - } - if ((dragFlags & DRAG_FLAG_GLOBAL_URI_READ) != 0) { - str.add("GLOBAL_URI_READ"); - } - if ((dragFlags & DRAG_FLAG_GLOBAL_URI_WRITE) != 0) { - str.add("GLOBAL_URI_WRITE"); - } - if ((dragFlags & DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION) != 0) { - str.add("GLOBAL_PERSISTABLE_URI_PERMISSION"); - } - if ((dragFlags & DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION) != 0) { - str.add("GLOBAL_PREFIX_URI_PERMISSION"); - } - if ((dragFlags & DRAG_FLAG_OPAQUE) != 0) { - str.add("OPAQUE"); - } - if ((dragFlags & DRAG_FLAG_ACCESSIBILITY_ACTION) != 0) { - str.add("ACCESSIBILITY_ACTION"); - } - if ((dragFlags & DRAG_FLAG_REQUEST_SURFACE_FOR_RETURN_ANIMATION) != 0) { - str.add("REQUEST_SURFACE_FOR_RETURN_ANIMATION"); - } - if ((dragFlags & DRAG_FLAG_GLOBAL_SAME_APPLICATION) != 0) { - str.add("GLOBAL_SAME_APPLICATION"); - } - if ((dragFlags & DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG) != 0) { - str.add("START_INTENT_SENDER_ON_UNHANDLED_DRAG"); - } - if ((dragFlags & DRAG_FLAG_HIDE_CALLING_TASK_ON_DRAG_START) != 0) { - str.add("HIDE_CALLING_TASK_ON_DRAG_START"); - } - return str.toString(); - } } diff --git a/wmshell/src/com/android/wm/shell/draganddrop/DropZoneView.java b/wmshell/src/com/android/wm/shell/draganddrop/DropZoneView.java index e503b8c612..724a130ef5 100644 --- a/wmshell/src/com/android/wm/shell/draganddrop/DropZoneView.java +++ b/wmshell/src/com/android/wm/shell/draganddrop/DropZoneView.java @@ -16,18 +16,16 @@ package com.android.wm.shell.draganddrop; -import static com.android.wm.shell.shared.animation.Interpolators.FAST_OUT_SLOW_IN; +import static com.android.wm.shell.animation.Interpolators.FAST_OUT_SLOW_IN; import android.animation.Animator; import android.animation.ObjectAnimator; -import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Path; import android.graphics.drawable.ColorDrawable; import android.graphics.drawable.Drawable; -import android.graphics.drawable.GradientDrawable; import android.util.AttributeSet; import android.util.FloatProperty; import android.view.Gravity; @@ -35,21 +33,17 @@ import android.view.View; import android.view.ViewGroup; import android.widget.FrameLayout; import android.widget.ImageView; -import android.widget.TextView; import androidx.annotation.Nullable; import com.android.internal.policy.ScreenDecorationsUtils; -import com.android.internal.protolog.ProtoLog; import com.android.wm.shell.R; -import com.android.wm.shell.protolog.ShellProtoLogGroup; /** * Renders a drop zone area for items being dragged. */ public class DropZoneView extends FrameLayout { - private static final boolean DEBUG_LAYOUT = false; private static final float SPLASHSCREEN_ALPHA = 0.90f; private static final float HIGHLIGHT_ALPHA = 1f; private static final int MARGIN_ANIMATION_ENTER_DURATION = 400; @@ -83,10 +77,8 @@ public class DropZoneView extends FrameLayout { private int mHighlightColor; private ObjectAnimator mBackgroundAnimator; - private int mTargetBackgroundColor; private ObjectAnimator mMarginAnimator; private float mMarginPercent; - private TextView mDebugIndex; // Renders a highlight or neutral transparent color private ColorDrawable mColorDrawable; @@ -129,22 +121,6 @@ public class DropZoneView extends FrameLayout { mMarginView = new MarginView(context); addView(mMarginView, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); - - if (DEBUG_LAYOUT) { - mDebugIndex = new TextView(context); - mDebugIndex.setVisibility(GONE); - mDebugIndex.setTextColor(Color.YELLOW); - addView(mDebugIndex, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, - ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.START | Gravity.TOP)); - - View borderView = new View(context); - addView(borderView, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, - ViewGroup.LayoutParams.MATCH_PARENT)); - GradientDrawable border = new GradientDrawable(); - border.setShape(GradientDrawable.RECTANGLE); - border.setStroke(5, Color.RED); - borderView.setBackground(border); - } } public void onThemeChange() { @@ -170,10 +146,6 @@ public class DropZoneView extends FrameLayout { /** Ignores the bottom margin provided by the insets. */ public void setForceIgnoreBottomMargin(boolean ignoreBottomMargin) { - if (DEBUG_LAYOUT) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, - "setForceIgnoreBottomMargin: ignore=%b", ignoreBottomMargin); - } mIgnoreBottomMargin = ignoreBottomMargin; if (mMarginPercent > 0) { mMarginView.invalidate(); @@ -182,14 +154,8 @@ public class DropZoneView extends FrameLayout { /** Sets the bottom inset so the drop zones are above bottom navigation. */ public void setBottomInset(float bottom) { - if (DEBUG_LAYOUT) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, "setBottomInset: inset=%f", - bottom); - } mBottomInset = bottom; - final LayoutParams lp = (LayoutParams) mSplashScreenView.getLayoutParams(); - lp.bottomMargin = (int) bottom; - mSplashScreenView.setLayoutParams(lp); + ((LayoutParams) mSplashScreenView.getLayoutParams()).bottomMargin = (int) bottom; if (mMarginPercent > 0) { mMarginView.invalidate(); } @@ -215,9 +181,6 @@ public class DropZoneView extends FrameLayout { /** Animates between highlight and splashscreen depending on current state. */ public void animateSwitch() { - if (DEBUG_LAYOUT) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, "animateSwitch"); - } mShowingHighlight = !mShowingHighlight; mShowingSplash = !mShowingHighlight; final int newColor = mShowingHighlight ? mHighlightColor : mSplashScreenColor; @@ -227,10 +190,6 @@ public class DropZoneView extends FrameLayout { /** Animates the highlight indicating the zone is hovered on or not. */ public void setShowingHighlight(boolean showingHighlight) { - if (DEBUG_LAYOUT) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, "setShowingHighlight: showing=%b", - showingHighlight); - } mShowingHighlight = showingHighlight; mShowingSplash = !mShowingHighlight; final int newColor = mShowingHighlight ? mHighlightColor : mSplashScreenColor; @@ -240,10 +199,6 @@ public class DropZoneView extends FrameLayout { /** Animates the margins around the drop zone to show or hide. */ public void setShowingMargin(boolean visible) { - if (DEBUG_LAYOUT) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, "setShowingMargin: visible=%b", - visible); - } if (mShowingMargin != visible) { mShowingMargin = visible; animateMarginToState(); @@ -256,26 +211,7 @@ public class DropZoneView extends FrameLayout { } } - @SuppressLint("SetTextI18n") - public void setDebugIndex(int index) { - if (!DEBUG_LAYOUT) { - return; - } - - mDebugIndex.setText("Index:\n" + index); - mDebugIndex.setVisibility(VISIBLE); - } - private void animateBackground(int startColor, int endColor) { - if (DEBUG_LAYOUT) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, - "animateBackground: start=%s end=%s", - Integer.toHexString(startColor), Integer.toHexString(endColor)); - } - if (endColor == mTargetBackgroundColor) { - // Already at, or animating to, that background color - return; - } if (mBackgroundAnimator != null) { mBackgroundAnimator.cancel(); } @@ -287,7 +223,6 @@ public class DropZoneView extends FrameLayout { mBackgroundAnimator.setInterpolator(FAST_OUT_SLOW_IN); } mBackgroundAnimator.start(); - mTargetBackgroundColor = endColor; } private void animateSplashScreenIcon() { diff --git a/wmshell/src/com/android/wm/shell/draganddrop/GlobalDragListener.kt b/wmshell/src/com/android/wm/shell/draganddrop/GlobalDragListener.kt index ffcfe6447e..31214eba8d 100644 --- a/wmshell/src/com/android/wm/shell/draganddrop/GlobalDragListener.kt +++ b/wmshell/src/com/android/wm/shell/draganddrop/GlobalDragListener.kt @@ -25,7 +25,7 @@ import android.view.IWindowManager import android.window.IGlobalDragListener import android.window.IUnhandledDragCallback import androidx.annotation.VisibleForTesting -import com.android.internal.protolog.ProtoLog +import com.android.internal.protolog.common.ProtoLog import com.android.wm.shell.common.ShellExecutor import com.android.wm.shell.protolog.ShellProtoLogGroup import java.util.function.Consumer diff --git a/wmshell/src/com/android/wm/shell/freeform/FreeformComponents.java b/wmshell/src/com/android/wm/shell/freeform/FreeformComponents.java index e83b7136cc..eee5aaee3e 100644 --- a/wmshell/src/com/android/wm/shell/freeform/FreeformComponents.java +++ b/wmshell/src/com/android/wm/shell/freeform/FreeformComponents.java @@ -16,8 +16,13 @@ package com.android.wm.shell.freeform; +import static android.content.pm.PackageManager.FEATURE_FREEFORM_WINDOW_MANAGEMENT; +import static android.provider.Settings.Global.DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT; + +import android.content.Context; +import android.provider.Settings; + import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.transition.Transitions; import java.util.Optional; @@ -30,7 +35,6 @@ public class FreeformComponents { public final ShellTaskOrganizer.TaskListener mTaskListener; public final Optional<Transitions.TransitionHandler> mTransitionHandler; public final Optional<Transitions.TransitionObserver> mTransitionObserver; - public final Optional<FreeformTaskTransitionStarterInitializer> mTransitionStarterInitializer; /** * Creates an instance with the given components. @@ -38,19 +42,18 @@ public class FreeformComponents { public FreeformComponents( ShellTaskOrganizer.TaskListener taskListener, Optional<Transitions.TransitionHandler> transitionHandler, - Optional<Transitions.TransitionObserver> transitionObserver, - Optional<FreeformTaskTransitionStarterInitializer> transitionStarterInitializer) { + Optional<Transitions.TransitionObserver> transitionObserver) { mTaskListener = taskListener; mTransitionHandler = transitionHandler; mTransitionObserver = transitionObserver; - mTransitionStarterInitializer = transitionStarterInitializer; } /** - * Freeform is enabled or we need the components to enable the app handle when desktop mode is - * not enabled + * Returns if this device supports freeform. */ - public static boolean requiresFreeformComponents(DesktopState desktopState) { - return desktopState.isFreeformEnabled() || desktopState.overridesShowAppHandle(); + public static boolean isFreeformEnabled(Context context) { + return context.getPackageManager().hasSystemFeature(FEATURE_FREEFORM_WINDOW_MANAGEMENT) + || Settings.Global.getInt(context.getContentResolver(), + DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT, 0) != 0; } } diff --git a/wmshell/src/com/android/wm/shell/freeform/FreeformTaskListener.java b/wmshell/src/com/android/wm/shell/freeform/FreeformTaskListener.java index d2c283b2ce..7d2aa275a6 100644 --- a/wmshell/src/com/android/wm/shell/freeform/FreeformTaskListener.java +++ b/wmshell/src/com/android/wm/shell/freeform/FreeformTaskListener.java @@ -24,19 +24,14 @@ import android.app.ActivityManager.RunningTaskInfo; import android.content.Context; import android.util.SparseArray; import android.view.SurfaceControl; -import android.window.DesktopExperienceFlags; -import android.window.DesktopModeFlags; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.common.LaunchAdjacentController; -import com.android.wm.shell.desktopmode.DesktopModeLoggerTransitionObserver; -import com.android.wm.shell.desktopmode.DesktopRepository; -import com.android.wm.shell.desktopmode.DesktopTasksController; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; +import com.android.wm.shell.desktopmode.DesktopModeTaskRepository; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.desktopmode.DesktopState; +import com.android.wm.shell.shared.DesktopModeStatus; import com.android.wm.shell.sysui.ShellInit; +import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.windowdecor.WindowDecorViewModel; import java.io.PrintWriter; @@ -52,44 +47,34 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, private final Context mContext; private final ShellTaskOrganizer mShellTaskOrganizer; - private final Optional<DesktopUserRepositories> mDesktopUserRepositories; - private final Optional<DesktopTasksController> mDesktopTasksController; - private final DesktopModeLoggerTransitionObserver mDesktopModeLoggerTransitionObserver; + private final Optional<DesktopModeTaskRepository> mDesktopModeTaskRepository; private final WindowDecorViewModel mWindowDecorationViewModel; - private final LaunchAdjacentController mLaunchAdjacentController; - private final Optional<TaskChangeListener> mTaskChangeListener; - private final DesktopState mDesktopState; private final SparseArray<State> mTasks = new SparseArray<>(); + private static class State { + RunningTaskInfo mTaskInfo; + SurfaceControl mLeash; + } + public FreeformTaskListener( Context context, ShellInit shellInit, ShellTaskOrganizer shellTaskOrganizer, - Optional<DesktopUserRepositories> desktopUserRepositories, - Optional<DesktopTasksController> desktopTasksController, - DesktopModeLoggerTransitionObserver desktopModeLoggerTransitionObserver, - LaunchAdjacentController launchAdjacentController, - WindowDecorViewModel windowDecorationViewModel, - Optional<TaskChangeListener> taskChangeListener, - DesktopState desktopState) { + Optional<DesktopModeTaskRepository> desktopModeTaskRepository, + WindowDecorViewModel windowDecorationViewModel) { mContext = context; mShellTaskOrganizer = shellTaskOrganizer; mWindowDecorationViewModel = windowDecorationViewModel; - mDesktopUserRepositories = desktopUserRepositories; - mDesktopTasksController = desktopTasksController; - mDesktopModeLoggerTransitionObserver = desktopModeLoggerTransitionObserver; - mLaunchAdjacentController = launchAdjacentController; - mTaskChangeListener = taskChangeListener; - mDesktopState = desktopState; - if (FreeformComponents.requiresFreeformComponents(desktopState)) { + mDesktopModeTaskRepository = desktopModeTaskRepository; + if (shellInit != null) { shellInit.addInitCallback(this::onInit, this); } } private void onInit() { mShellTaskOrganizer.addListenerForType(this, TASK_LISTENER_TYPE_FREEFORM); - if (mDesktopState.canEnterDesktopMode()) { + if (DesktopModeStatus.canEnterDesktopMode(mContext)) { mShellTaskOrganizer.addFocusListener(this); } } @@ -105,16 +90,26 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, state.mTaskInfo = taskInfo; state.mLeash = leash; mTasks.put(taskInfo.taskId, state); + if (!Transitions.ENABLE_SHELL_TRANSITIONS) { + SurfaceControl.Transaction t = new SurfaceControl.Transaction(); + mWindowDecorationViewModel.onTaskOpening(taskInfo, leash, t, t); + t.apply(); + } - if (!DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() - && mDesktopState.canEnterDesktopMode()) { - mDesktopUserRepositories.ifPresent(userRepositories -> { - DesktopRepository currentRepo = userRepositories.getProfile(taskInfo.userId); - currentRepo.addTask(taskInfo.displayId, taskInfo.taskId, taskInfo.isVisible, - taskInfo.configuration.windowConfiguration.getBounds()); + if (DesktopModeStatus.canEnterDesktopMode(mContext)) { + mDesktopModeTaskRepository.ifPresent(repository -> { + repository.addOrMoveFreeformTaskToTop(taskInfo.displayId, taskInfo.taskId); + repository.unminimizeTask(taskInfo.displayId, taskInfo.taskId); + if (taskInfo.isVisible) { + if (repository.addActiveTask(taskInfo.displayId, taskInfo.taskId)) { + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "Adding active freeform task: #%d", taskInfo.taskId); + } + repository.updateVisibleFreeformTasks(taskInfo.displayId, taskInfo.taskId, + true); + } }); } - updateLaunchAdjacentController(); } @Override @@ -123,31 +118,21 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, taskInfo.taskId); mTasks.remove(taskInfo.taskId); - if (!DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue() - && mDesktopState.canEnterDesktopMode() - && mDesktopUserRepositories.isPresent()) { - DesktopRepository repository = - mDesktopUserRepositories.get().getProfile(taskInfo.userId); - boolean isMinimized = repository.isMinimizedTask(taskInfo.taskId); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, - "Freeform Task Vanished: #%d, isMinimized=%b", - taskInfo.taskId, isMinimized); - // TODO: b/370038902 - Handle Activity#finishAndRemoveTask. - if (!DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION.isTrue() - || !isMinimized) { - // A task that's vanishing should be removed: - // - If it's not yet minimized. It can be minimized when a back navigation is - // triggered on a task and the task is closing. It will be marked as minimized in - // [DesktopTasksTransitionObserver] before it gets here. - repository.removeClosingTask(taskInfo.taskId); - repository.removeTask(taskInfo.taskId); - } + if (DesktopModeStatus.canEnterDesktopMode(mContext)) { + mDesktopModeTaskRepository.ifPresent(repository -> { + repository.removeFreeformTask(taskInfo.displayId, taskInfo.taskId); + repository.unminimizeTask(taskInfo.displayId, taskInfo.taskId); + if (repository.removeActiveTask(taskInfo.taskId)) { + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "Removing active freeform task: #%d", taskInfo.taskId); + } + repository.updateVisibleFreeformTasks(taskInfo.displayId, taskInfo.taskId, false); + }); } - // TODO: b/367268649 - This listener shouldn't need to call the transition observer directly - // for logging once the logic in the observer is moved. - mDesktopModeLoggerTransitionObserver.onTaskVanished(taskInfo); mWindowDecorationViewModel.onTaskVanished(taskInfo); - updateLaunchAdjacentController(); + if (!Transitions.ENABLE_SHELL_TRANSITIONS) { + mWindowDecorationViewModel.destroyWindowDecoration(taskInfo); + } } @Override @@ -156,56 +141,35 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TASK_ORG, "Freeform Task Info Changed: #%d", taskInfo.taskId); - mDesktopTasksController.ifPresent(c -> c.onTaskInfoChanged(taskInfo)); mWindowDecorationViewModel.onTaskInfoChanged(taskInfo); state.mTaskInfo = taskInfo; - if (mDesktopState.canEnterDesktopMode()) { - if (DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue()) { - // Pass task info changes to the [TaskChangeListener] since [TransitionsObserver] - // does not propagate all task info changes. - mTaskChangeListener.ifPresent(listener -> - listener.onNonTransitionTaskChanging(taskInfo)); - } else if (mDesktopUserRepositories.isPresent()) { - DesktopRepository currentRepo = - mDesktopUserRepositories.get().getProfile(taskInfo.userId); - currentRepo.updateTask(taskInfo.displayId, taskInfo.taskId, - taskInfo.isVisible, - taskInfo.configuration.windowConfiguration.getBounds()); - } + if (DesktopModeStatus.canEnterDesktopMode(mContext)) { + mDesktopModeTaskRepository.ifPresent(repository -> { + if (taskInfo.isVisible) { + if (repository.addActiveTask(taskInfo.displayId, taskInfo.taskId)) { + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE, + "Adding active freeform task: #%d", taskInfo.taskId); + } + } + repository.updateVisibleFreeformTasks(taskInfo.displayId, taskInfo.taskId, + taskInfo.isVisible); + }); } - updateLaunchAdjacentController(); - } - - private void updateLaunchAdjacentController() { - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue()) { - // With multiple desks, freeform tasks are children of a root task controlled by - // DesksOrganizer, so toggling launch-adjacent should be managed there. - return; - } - for (int i = 0; i < mTasks.size(); i++) { - if (mTasks.valueAt(i).mTaskInfo.isVisible) { - mLaunchAdjacentController.setLaunchAdjacentEnabled(false); - return; - } - } - mLaunchAdjacentController.setLaunchAdjacentEnabled(true); } @Override public void onFocusTaskChanged(RunningTaskInfo taskInfo) { - if (taskInfo.getWindowingMode() != WINDOWING_MODE_FREEFORM - || DesktopExperienceFlags.ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS.isTrue()) { + if (taskInfo.getWindowingMode() != WINDOWING_MODE_FREEFORM) { return; } ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TASK_ORG, "Freeform Task Focus Changed: #%d focused=%b", taskInfo.taskId, taskInfo.isFocused); - if (mDesktopState.canEnterDesktopMode() && taskInfo.isFocused - && mDesktopUserRepositories.isPresent()) { - DesktopRepository repository = - mDesktopUserRepositories.get().getProfile(taskInfo.userId); - repository.addTask(taskInfo.displayId, taskInfo.taskId, taskInfo.isVisible, - taskInfo.configuration.windowConfiguration.getBounds()); + if (DesktopModeStatus.canEnterDesktopMode(mContext) && taskInfo.isFocused) { + mDesktopModeTaskRepository.ifPresent(repository -> { + repository.addOrMoveFreeformTaskToTop(taskInfo.displayId, taskInfo.taskId); + repository.unminimizeTask(taskInfo.displayId, taskInfo.taskId); + }); } } @@ -238,9 +202,4 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener, public String toString() { return TAG; } - - private static class State { - RunningTaskInfo mTaskInfo; - SurfaceControl mLeash; - } } diff --git a/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionHandler.java b/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionHandler.java index 16e411e1fc..8402775343 100644 --- a/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionHandler.java +++ b/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionHandler.java @@ -18,7 +18,6 @@ package com.android.wm.shell.freeform; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; -import static android.view.WindowManager.TRANSIT_PIP; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; @@ -27,10 +26,8 @@ import android.app.ActivityManager; import android.app.WindowConfiguration; import android.content.Context; import android.graphics.Rect; -import android.os.Handler; import android.os.IBinder; import android.util.ArrayMap; -import android.util.Log; import android.view.SurfaceControl; import android.view.WindowManager; import android.window.TransitionInfo; @@ -40,11 +37,11 @@ import android.window.WindowContainerTransaction; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.android.internal.jank.InteractionJankMonitor; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.animation.MinimizeAnimator; +import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; +import com.android.wm.shell.windowdecor.WindowDecorViewModel; import java.util.ArrayList; import java.util.List; @@ -55,29 +52,39 @@ import java.util.List; */ public class FreeformTaskTransitionHandler implements Transitions.TransitionHandler, FreeformTaskTransitionStarter { - private static final String TAG = "FreeformTaskTransitionHandler"; private static final int CLOSE_ANIM_DURATION = 400; + private final Context mContext; private final Transitions mTransitions; + private final WindowDecorViewModel mWindowDecorViewModel; private final DisplayController mDisplayController; private final ShellExecutor mMainExecutor; private final ShellExecutor mAnimExecutor; - private final Handler mAnimHandler; private final List<IBinder> mPendingTransitionTokens = new ArrayList<>(); private final ArrayMap<IBinder, ArrayList<Animator>> mAnimations = new ArrayMap<>(); public FreeformTaskTransitionHandler( + ShellInit shellInit, Transitions transitions, + Context context, + WindowDecorViewModel windowDecorViewModel, DisplayController displayController, ShellExecutor mainExecutor, - ShellExecutor animExecutor, - Handler animHandler) { + ShellExecutor animExecutor) { mTransitions = transitions; + mContext = context; + mWindowDecorViewModel = windowDecorViewModel; mDisplayController = displayController; mMainExecutor = mainExecutor; mAnimExecutor = animExecutor; - mAnimHandler = animHandler; + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + shellInit.addInitCallback(this::onInit, this); + } + } + + private void onInit() { + mWindowDecorViewModel.setFreeformTaskTransitionStarter(this); } @Override @@ -100,27 +107,16 @@ public class FreeformTaskTransitionHandler } @Override - public IBinder startMinimizedModeTransition( - WindowContainerTransaction wct, int taskId, boolean isLastTask) { - final int type = Transitions.TRANSIT_MINIMIZE; - final IBinder token = mTransitions.startTransition(type, wct, this); - mPendingTransitionTokens.add(token); - return token; + public void startMinimizedModeTransition(WindowContainerTransaction wct) { + final int type = WindowManager.TRANSIT_TO_BACK; + mPendingTransitionTokens.add(mTransitions.startTransition(type, wct, this)); } - @Override - public IBinder startPipTransition(WindowContainerTransaction wct) { - final IBinder token = mTransitions.startTransition(TRANSIT_PIP, wct, null); - mPendingTransitionTokens.add(token); - return token; - } @Override - public IBinder startRemoveTransition(WindowContainerTransaction wct) { + public void startRemoveTransition(WindowContainerTransaction wct) { final int type = WindowManager.TRANSIT_CLOSE; - final IBinder transition = mTransitions.startTransition(type, wct, this); - mPendingTransitionTokens.add(transition); - return transition; + mPendingTransitionTokens.add(mTransitions.startTransition(type, wct, this)); } @Override @@ -130,11 +126,13 @@ public class FreeformTaskTransitionHandler @NonNull Transitions.TransitionFinishCallback finishCallback) { boolean transitionHandled = false; final ArrayList<Animator> animations = new ArrayList<>(); - final Runnable onAnimFinish = () -> mMainExecutor.execute(() -> { + final Runnable onAnimFinish = () -> { if (!animations.isEmpty()) return; - mAnimations.remove(transition); - finishCallback.onTransitionFinished(null /* wct */); - }); + mMainExecutor.execute(() -> { + mAnimations.remove(transition); + finishCallback.onTransitionFinished(null /* wct */); + }); + }; for (TransitionInfo.Change change : info.getChanges()) { if ((change.getFlags() & TransitionInfo.FLAG_IS_WALLPAPER) != 0) { continue; @@ -151,8 +149,7 @@ public class FreeformTaskTransitionHandler transition, info.getType(), change); break; case WindowManager.TRANSIT_TO_BACK: - transitionHandled |= startMinimizeTransition( - transition, info.getType(), change, finishT, animations, onAnimFinish); + transitionHandled |= startMinimizeTransition(transition); break; case WindowManager.TRANSIT_CLOSE: if (change.getTaskInfo().getWindowingMode() == WINDOWING_MODE_FREEFORM) { @@ -181,9 +178,7 @@ public class FreeformTaskTransitionHandler @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { ArrayList<Animator> animations = mAnimations.get(mergeTarget); if (animations == null) return; @@ -220,46 +215,8 @@ public class FreeformTaskTransitionHandler return handled; } - private boolean startMinimizeTransition( - IBinder transition, - int type, - TransitionInfo.Change change, - SurfaceControl.Transaction finishT, - ArrayList<Animator> animations, - Runnable onAnimFinish) { - if (!mPendingTransitionTokens.contains(transition)) { - return false; - } - - final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); - if (type != Transitions.TRANSIT_MINIMIZE) { - return false; - } - - SurfaceControl.Transaction t = new SurfaceControl.Transaction(); - SurfaceControl sc = change.getLeash(); - finishT.hide(sc); - final Context displayContext = - mDisplayController.getDisplayContext(taskInfo.displayId); - if (displayContext == null) { - Log.w(TAG, "No displayContext for displayId=" + taskInfo.displayId); - return false; - } - final Animator animator = MinimizeAnimator.create( - displayContext, - change, - t, - (anim) -> { - mMainExecutor.execute(() -> { - animations.remove(anim); - onAnimFinish.run(); - }); - return null; - }, - InteractionJankMonitor.getInstance(), - mAnimHandler); - animations.add(animator); - return true; + private boolean startMinimizeTransition(IBinder transition) { + return mPendingTransitionTokens.contains(transition); } private boolean startCloseTransition(IBinder transition, TransitionInfo.Change change, @@ -274,27 +231,20 @@ public class FreeformTaskTransitionHandler SurfaceControl.Transaction t = new SurfaceControl.Transaction(); SurfaceControl sc = change.getLeash(); finishT.hide(sc); - final Rect startBounds = new Rect(change.getStartAbsBounds()); + Rect startBounds = new Rect(change.getTaskInfo().configuration.windowConfiguration + .getBounds()); animator.addUpdateListener(animation -> { - final float newTop = startBounds.top + (animation.getAnimatedFraction() * screenHeight); - t.setPosition(sc, startBounds.left, newTop); - if (newTop > screenHeight) { - // At this point the task surface is off-screen, so hide it to prevent flicker - // failures. See b/377651666. - t.hide(sc); - } + t.setPosition(sc, startBounds.left, + startBounds.top + (animation.getAnimatedFraction() * screenHeight)); t.apply(); }); - animator.addListener( - new AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(Animator animation) { - mMainExecutor.execute(() -> { - animations.remove(animator); - onAnimFinish.run(); - }); - } - }); + animator.addListener(new AnimatorListenerAdapter() { + @Override + public void onAnimationEnd(Animator animation) { + animations.remove(animator); + onAnimFinish.run(); + } + }); animations.add(animator); return true; } diff --git a/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionObserver.java b/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionObserver.java index aa230c86d1..ffcc526eac 100644 --- a/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionObserver.java +++ b/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionObserver.java @@ -16,30 +16,18 @@ package com.android.wm.shell.freeform; -import static com.android.wm.shell.transition.Transitions.TRANSIT_START_RECENTS_TRANSITION; - import android.app.ActivityManager; +import android.content.Context; import android.os.IBinder; import android.view.SurfaceControl; import android.view.WindowManager; -import android.window.DesktopExperienceFlags; -import android.window.DesktopModeFlags; import android.window.TransitionInfo; import android.window.WindowContainerToken; import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; -import com.android.window.flags2.Flags; -import com.android.wm.shell.desktopmode.DesktopBackNavTransitionObserver; -import com.android.wm.shell.desktopmode.DesktopImeHandler; -import com.android.wm.shell.desktopmode.DesktopImmersiveController; -import com.android.wm.shell.desktopmode.DesktopInOrderTransitionObserver; -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer; -import com.android.wm.shell.desktopmode.multidesks.DesksTransitionObserver; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.transition.FocusTransitionObserver; import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.windowdecor.WindowDecorViewModel; @@ -48,55 +36,27 @@ import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.Optional; /** - * The {@link Transitions.TransitionHandler} that handles freeform task launches, closes, maximizing - * and restoring transitions. It also reports transitions so that window decorations can be a part - * of transitions. + * The {@link Transitions.TransitionHandler} that handles freeform task launches, closes, + * maximizing and restoring transitions. It also reports transitions so that window decorations can + * be a part of transitions. */ public class FreeformTaskTransitionObserver implements Transitions.TransitionObserver { private final Transitions mTransitions; - private final Optional<DesktopImmersiveController> mDesktopImmersiveController; private final WindowDecorViewModel mWindowDecorViewModel; - private final Optional<TaskChangeListener> mTaskChangeListener; - private final FocusTransitionObserver mFocusTransitionObserver; - private final DesksOrganizer mDesksOrganizer; - private final Optional<DesksTransitionObserver> mDesksTransitionObserver; - private final Optional<DesktopImeHandler> mDesktopImeHandler; - private final Optional<DesktopBackNavTransitionObserver> mDesktopBackNavTransitionObserver; - private final Optional<DesktopInOrderTransitionObserver> mDesktopInOrderTransitionObserver; private final Map<IBinder, List<ActivityManager.RunningTaskInfo>> mTransitionToTaskInfo = new HashMap<>(); - private final Map<Integer, ActivityManager.RunningTaskInfo> mPendingHiddenTasks = - new HashMap<>(); - private IBinder mTransientTransition; public FreeformTaskTransitionObserver( + Context context, ShellInit shellInit, Transitions transitions, - Optional<DesktopImmersiveController> desktopImmersiveController, - WindowDecorViewModel windowDecorViewModel, - Optional<TaskChangeListener> taskChangeListener, - FocusTransitionObserver focusTransitionObserver, - DesksOrganizer desksOrganizer, - Optional<DesksTransitionObserver> desksTransitionObserver, - DesktopState desktopState, - Optional<DesktopImeHandler> desktopImeHandler, - Optional<DesktopBackNavTransitionObserver> desktopBackNavTransitionObserver, - Optional<DesktopInOrderTransitionObserver> desktopInOrderTransitionObserver) { + WindowDecorViewModel windowDecorViewModel) { mTransitions = transitions; - mDesktopImmersiveController = desktopImmersiveController; mWindowDecorViewModel = windowDecorViewModel; - mTaskChangeListener = taskChangeListener; - mFocusTransitionObserver = focusTransitionObserver; - mDesksOrganizer = desksOrganizer; - mDesksTransitionObserver = desksTransitionObserver; - mDesktopImeHandler = desktopImeHandler; - mDesktopBackNavTransitionObserver = desktopBackNavTransitionObserver; - mDesktopInOrderTransitionObserver = desktopInOrderTransitionObserver; - if (FreeformComponents.requiresFreeformComponents(desktopState)) { + if (Transitions.ENABLE_SHELL_TRANSITIONS && FreeformComponents.isFreeformEnabled(context)) { shellInit.addInitCallback(this::onInit, this); } } @@ -112,134 +72,62 @@ public class FreeformTaskTransitionObserver implements Transitions.TransitionObs @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startT, @NonNull SurfaceControl.Transaction finishT) { - if (Flags.enableInorderTransitionCallbacksForDesktop()) { - mDesktopInOrderTransitionObserver.ifPresent( - o -> o.onTransitionReady(transition, info, startT, finishT)); - } else { - // Update desk state first, otherwise [TaskChangeListener] may update desktop task state - // under an outdated active desk if a desk switch and a task update happen in the same - // transition, such as when unminimizing a task from an inactive desk. - mDesksTransitionObserver.ifPresent(o -> o.onTransitionReady(transition, info)); - if (DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue()) { - // TODO(b/367268953): Remove when DesktopTaskListener is introduced and the - // repository - // is updated from there **before** the |mWindowDecorViewModel| methods are - // invoked. - // Otherwise window decoration relayout won't run with the immersive state up to - // date. - mDesktopImmersiveController.ifPresent( - h -> h.onTransitionReady(transition, info, startT, finishT)); - } - // Update focus state first to ensure the correct state can be queried from listeners. - // TODO(371503964): Remove this once the unified task repository is ready. - mFocusTransitionObserver.updateFocusState(info); - - // Call after the focus state update to have the correct focused window. - mDesktopImeHandler.ifPresent(o -> o.onTransitionReady(transition, info)); - mDesktopBackNavTransitionObserver.ifPresent(o -> o.onTransitionReady(transition, info)); - - } final ArrayList<ActivityManager.RunningTaskInfo> taskInfoList = new ArrayList<>(); final ArrayList<WindowContainerToken> taskParents = new ArrayList<>(); - final ArrayList<TransitionInfo.Change> filteredChanges = new ArrayList<>(); - for (TransitionInfo.Change change : info.getChanges()) { - if (shouldSkipChange(info, change, taskParents)) continue; - filteredChanges.add(change); - } - - if (DesktopExperienceFlags.ENABLE_WINDOWING_TASK_STACK_ORDER_BUGFIX.isTrue()) { - for (TransitionInfo.Change change : filteredChanges.reversed()) { - notifyChange(transition, info, startT, finishT, change, taskInfoList); + if ((change.getFlags() & TransitionInfo.FLAG_IS_WALLPAPER) != 0) { + continue; } - } else { - for (TransitionInfo.Change change : filteredChanges) { - notifyChange(transition, info, startT, finishT, change, taskInfoList); + + final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); + if (taskInfo == null || taskInfo.taskId == -1) { + continue; + } + // Filter out non-leaf tasks. Freeform/fullscreen don't nest tasks, but split-screen + // does, so this prevents adding duplicate captions in that scenario. + if (change.getParent() != null + && info.getChange(change.getParent()).getTaskInfo() != null) { + // This logic relies on 2 assumptions: 1 is that child tasks will be visited before + // parents (due to how z-order works). 2 is that no non-tasks are interleaved + // between tasks (hierarchically). + taskParents.add(change.getParent()); + } + if (taskParents.contains(change.getContainer())) { + continue; } - } - mTransitionToTaskInfo.put(transition, taskInfoList); - } - - private void notifyChange( - @NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - TransitionInfo.Change change, - ArrayList<ActivityManager.RunningTaskInfo> taskInfoList) { - switch (change.getMode()) { - case WindowManager.TRANSIT_OPEN: - onOpenTransitionReady(change, startT, finishT); - break; - case WindowManager.TRANSIT_TO_FRONT: - onToFrontTransitionReady(change, startT, finishT); - break; - case WindowManager.TRANSIT_CHANGE: - onChangeTransitionReady(change, startT, finishT); - break; - case WindowManager.TRANSIT_TO_BACK: { - if (info.getType() == TRANSIT_START_RECENTS_TRANSITION) { - mTransientTransition = transition; + switch (change.getMode()) { + case WindowManager.TRANSIT_OPEN: + onOpenTransitionReady(change, startT, finishT); + break; + case WindowManager.TRANSIT_TO_FRONT: + onToFrontTransitionReady(change, startT, finishT); + break; + case WindowManager.TRANSIT_CLOSE: { + taskInfoList.add(change.getTaskInfo()); + onCloseTransitionReady(change, startT, finishT); + break; } - onToBackTransitionReady(change, startT, finishT); - break; + case WindowManager.TRANSIT_CHANGE: + onChangeTransitionReady(change, startT, finishT); + break; } - case WindowManager.TRANSIT_CLOSE: { - taskInfoList.add(change.getTaskInfo()); - onCloseTransitionReady(change, startT, finishT); - break; - } - default: - break; } - } - - private boolean shouldSkipChange( - @NonNull TransitionInfo info, - TransitionInfo.Change change, - ArrayList<WindowContainerToken> taskParents) { - if ((change.getFlags() & TransitionInfo.FLAG_IS_WALLPAPER) != 0) { - return true; - } - - // Skip desk changes so that window decorations are not added to desk root tasks - if (DesktopExperienceFlags.ENABLE_NO_WINDOW_DECORATION_FOR_DESKS.isTrue() - && mDesksOrganizer.isDeskChange(change)) { - return true; - } - - final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); - if (taskInfo == null || taskInfo.taskId == -1) { - return true; - } - // Filter out non-leaf tasks. Freeform/fullscreen don't nest tasks, but split-screen - // does, so this prevents adding duplicate captions in that scenario. - if (change.getParent() != null - && info.getChange(change.getParent()).getTaskInfo() != null) { - // This logic relies on 2 assumptions: 1 is that child tasks will be visited before - // parents (due to how z-order works). 2 is that no non-tasks are interleaved - // between tasks (hierarchically). - taskParents.add(change.getParent()); - } - return taskParents.contains(change.getContainer()); + mTransitionToTaskInfo.put(transition, taskInfoList); } private void onOpenTransitionReady( TransitionInfo.Change change, SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT) { - mTaskChangeListener.ifPresent(listener -> listener.onTaskOpening(change.getTaskInfo())); mWindowDecorViewModel.onTaskOpening( change.getTaskInfo(), change.getLeash(), startT, finishT); - mPendingHiddenTasks.remove(change.getTaskInfo().taskId); } private void onCloseTransitionReady( TransitionInfo.Change change, SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT) { - mTaskChangeListener.ifPresent(listener -> listener.onTaskClosing(change.getTaskInfo())); mWindowDecorViewModel.onTaskClosing(change.getTaskInfo(), startT, finishT); } @@ -247,62 +135,23 @@ public class FreeformTaskTransitionObserver implements Transitions.TransitionObs TransitionInfo.Change change, SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT) { - mTaskChangeListener.ifPresent(listener -> listener.onTaskChanging(change.getTaskInfo())); mWindowDecorViewModel.onTaskChanging( change.getTaskInfo(), change.getLeash(), startT, finishT); - mPendingHiddenTasks.remove(change.getTaskInfo().taskId); } private void onToFrontTransitionReady( TransitionInfo.Change change, SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT) { - mTaskChangeListener.ifPresent( - listener -> listener.onTaskMovingToFront(change.getTaskInfo())); - mWindowDecorViewModel.onTaskChanging( - change.getTaskInfo(), change.getLeash(), startT, finishT); - mPendingHiddenTasks.remove(change.getTaskInfo().taskId); - } - - private void onToBackTransitionReady( - TransitionInfo.Change change, - SurfaceControl.Transaction startT, - SurfaceControl.Transaction finishT) { - if (mTransientTransition != null) { - // The tasks will be transiently hidden, which means they are still visible. - mPendingHiddenTasks.put(change.getTaskInfo().taskId, change.getTaskInfo()); - } else { - mTaskChangeListener.ifPresent( - listener -> listener.onTaskMovingToBack(change.getTaskInfo())); - } mWindowDecorViewModel.onTaskChanging( change.getTaskInfo(), change.getLeash(), startT, finishT); } @Override - public void onTransitionStarting(@NonNull IBinder transition) { - if (Flags.enableInorderTransitionCallbacksForDesktop()) { - mDesktopInOrderTransitionObserver.ifPresent(o -> o.onTransitionStarting(transition)); - } else { - if (DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue()) { - // TODO(b/367268953): Remove when DesktopTaskListener is introduced. - mDesktopImmersiveController.ifPresent(h -> h.onTransitionStarting(transition)); - } - } - } + public void onTransitionStarting(@NonNull IBinder transition) {} @Override public void onTransitionMerged(@NonNull IBinder merged, @NonNull IBinder playing) { - if (Flags.enableInorderTransitionCallbacksForDesktop()) { - mDesktopInOrderTransitionObserver.ifPresent(o -> o.onTransitionMerged(merged, playing)); - } else { - mDesksTransitionObserver.ifPresent(o -> o.onTransitionMerged(merged, playing)); - if (DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue()) { - // TODO(b/367268953): Remove when DesktopTaskListener is introduced. - mDesktopImmersiveController.ifPresent(h -> h.onTransitionMerged(merged, playing)); - } - } - final List<ActivityManager.RunningTaskInfo> infoOfMerged = mTransitionToTaskInfo.get(merged); if (infoOfMerged == null) { @@ -323,31 +172,11 @@ public class FreeformTaskTransitionObserver implements Transitions.TransitionObs @Override public void onTransitionFinished(@NonNull IBinder transition, boolean aborted) { - if (Flags.enableInorderTransitionCallbacksForDesktop()) { - mDesktopInOrderTransitionObserver.ifPresent( - o -> o.onTransitionFinished(transition, aborted)); - } else { - mDesksTransitionObserver.ifPresent(o -> o.onTransitionFinished(transition)); - if (DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue()) { - // TODO(b/367268953): Remove when DesktopTaskListener is introduced. - mDesktopImmersiveController.ifPresent( - h -> h.onTransitionFinished(transition, aborted)); - } - } - final List<ActivityManager.RunningTaskInfo> taskInfo = mTransitionToTaskInfo.getOrDefault(transition, Collections.emptyList()); mTransitionToTaskInfo.remove(transition); for (int i = 0; i < taskInfo.size(); ++i) { mWindowDecorViewModel.destroyWindowDecoration(taskInfo.get(i)); } - - if (transition == mTransientTransition) { - for (ActivityManager.RunningTaskInfo task : mPendingHiddenTasks.values()) { - mTaskChangeListener.ifPresent(it -> it.onTaskMovingToBack(task)); - } - mPendingHiddenTasks.clear(); - mTransientTransition = null; - } } -} +} \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionStarter.java b/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionStarter.java index 822934c1e6..8da4c6ab4b 100644 --- a/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionStarter.java +++ b/wmshell/src/com/android/wm/shell/freeform/FreeformTaskTransitionStarter.java @@ -16,7 +16,6 @@ package com.android.wm.shell.freeform; -import android.os.IBinder; import android.window.WindowContainerTransaction; /** @@ -38,29 +37,15 @@ public interface FreeformTaskTransitionStarter { * Starts window minimization transition * * @param wct the {@link WindowContainerTransaction} that changes the windowing mode - * @param taskId the task id of the task being minimized - * @param isLastTask true if the task being minimized is the last visible task * - * @return the started transition */ - IBinder startMinimizedModeTransition( - WindowContainerTransaction wct, int taskId, boolean isLastTask); + void startMinimizedModeTransition(WindowContainerTransaction wct); /** * Starts close window transition * * @param wct the {@link WindowContainerTransaction} that closes the task * - * @return the started transition */ - IBinder startRemoveTransition(WindowContainerTransaction wct); - - /** - * Starts PiP transition - * - * @param wct the {@link WindowContainerTransaction} that launches the PiP - * - * @return the started transition - */ - IBinder startPipTransition(WindowContainerTransaction wct); -} + void startRemoveTransition(WindowContainerTransaction wct); +} \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/freeform/OWNERS b/wmshell/src/com/android/wm/shell/freeform/OWNERS index 7a63ec5eed..8a0eea0a9b 100644 --- a/wmshell/src/com/android/wm/shell/freeform/OWNERS +++ b/wmshell/src/com/android/wm/shell/freeform/OWNERS @@ -2,10 +2,6 @@ atsjenk@google.com jorgegil@google.com madym@google.com +nmusgrave@google.com pbdr@google.com -vaniadesmonda@google.com -pragyabajoria@google.com -uysalorhan@google.com -gsennton@google.com -mattsziklay@google.com -mdehaini@google.com +tkachenkoi@google.com diff --git a/wmshell/src/com/android/wm/shell/fullscreen/FullscreenTaskListener.java b/wmshell/src/com/android/wm/shell/fullscreen/FullscreenTaskListener.java index 86cbd67c36..2626e73801 100644 --- a/wmshell/src/com/android/wm/shell/fullscreen/FullscreenTaskListener.java +++ b/wmshell/src/com/android/wm/shell/fullscreen/FullscreenTaskListener.java @@ -27,14 +27,13 @@ import android.view.SurfaceControl; import androidx.annotation.NonNull; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.desktopmode.DesktopWallpaperActivity; -import com.android.wm.shell.desktopmode.desktopwallpaperactivity.DesktopWallpaperActivityTokenProvider; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.recents.RecentTasksController; import com.android.wm.shell.sysui.ShellInit; +import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.windowdecor.WindowDecorViewModel; import java.io.PrintWriter; @@ -58,30 +57,23 @@ public class FullscreenTaskListener implements ShellTaskOrganizer.TaskListener { private final SyncTransactionQueue mSyncQueue; private final Optional<RecentTasksController> mRecentTasksOptional; private final Optional<WindowDecorViewModel> mWindowDecorViewModelOptional; - private final Optional<DesktopWallpaperActivityTokenProvider> - mDesktopWallpaperActivityTokenProviderOptional; - /** * This constructor is used by downstream products. */ public FullscreenTaskListener(SyncTransactionQueue syncQueue) { this(null /* shellInit */, null /* shellTaskOrganizer */, syncQueue, Optional.empty(), - Optional.empty(), Optional.empty()); + Optional.empty()); } public FullscreenTaskListener(ShellInit shellInit, ShellTaskOrganizer shellTaskOrganizer, SyncTransactionQueue syncQueue, Optional<RecentTasksController> recentTasksOptional, - Optional<WindowDecorViewModel> windowDecorViewModelOptional, - Optional<DesktopWallpaperActivityTokenProvider> - desktopWallpaperActivityTokenProviderOptional) { + Optional<WindowDecorViewModel> windowDecorViewModelOptional) { mShellTaskOrganizer = shellTaskOrganizer; mSyncQueue = syncQueue; mRecentTasksOptional = recentTasksOptional; mWindowDecorViewModelOptional = windowDecorViewModelOptional; - mDesktopWallpaperActivityTokenProviderOptional = - desktopWallpaperActivityTokenProviderOptional; // Note: Some derivative FullscreenTaskListener implementations do not use ShellInit if (shellInit != null) { shellInit.addInitCallback(this::onInit, this); @@ -104,6 +96,33 @@ public class FullscreenTaskListener implements ShellTaskOrganizer.TaskListener { state.mLeash = leash; state.mTaskInfo = taskInfo; mTasks.put(taskInfo.taskId, state); + + if (Transitions.ENABLE_SHELL_TRANSITIONS) return; + updateRecentsForVisibleFullscreenTask(taskInfo); + boolean createdWindowDecor = false; + if (mWindowDecorViewModelOptional.isPresent()) { + SurfaceControl.Transaction t = new SurfaceControl.Transaction(); + createdWindowDecor = mWindowDecorViewModelOptional.get() + .onTaskOpening(taskInfo, leash, t, t); + t.apply(); + } + if (!createdWindowDecor) { + mSyncQueue.runInSync(t -> { + if (!leash.isValid()) { + // Task vanished before sync completion + return; + } + // Reset several properties back to fullscreen (PiP, for example, leaves all these + // properties in a bad state). + t.setWindowCrop(leash, null); + t.setPosition(leash, positionInParent.x, positionInParent.y); + t.setAlpha(leash, 1f); + t.setMatrix(leash, 1, 0, 0, 1); + if (taskInfo.isVisible) { + t.show(leash); + } + }); + } } @Override @@ -116,6 +135,25 @@ public class FullscreenTaskListener implements ShellTaskOrganizer.TaskListener { mWindowDecorViewModelOptional.get().onTaskInfoChanged(taskInfo); } state.mTaskInfo = taskInfo; + if (Transitions.ENABLE_SHELL_TRANSITIONS) return; + updateRecentsForVisibleFullscreenTask(taskInfo); + + final Point positionInParent = state.mTaskInfo.positionInParent; + boolean positionInParentChanged = !oldPositionInParent.equals(positionInParent); + boolean becameVisible = !oldVisible && state.mTaskInfo.isVisible; + + if (becameVisible || positionInParentChanged) { + mSyncQueue.runInSync(t -> { + if (!state.mLeash.isValid()) { + // Task vanished before sync completion + return; + } + if (becameVisible) { + t.show(state.mLeash); + } + t.setPosition(state.mLeash, positionInParent.x, positionInParent.y); + }); + } } @Override @@ -124,12 +162,10 @@ public class FullscreenTaskListener implements ShellTaskOrganizer.TaskListener { taskInfo.taskId); mTasks.remove(taskInfo.taskId); mWindowDecorViewModelOptional.ifPresent(v -> v.onTaskVanished(taskInfo)); - mDesktopWallpaperActivityTokenProviderOptional.ifPresent( - provider -> { - if (DesktopWallpaperActivity.isWallpaperTask(taskInfo)) { - provider.removeToken(taskInfo.getToken()); - } - }); + if (Transitions.ENABLE_SHELL_TRANSITIONS) return; + if (mWindowDecorViewModelOptional.isPresent()) { + mWindowDecorViewModelOptional.get().destroyWindowDecoration(taskInfo); + } } private void updateRecentsForVisibleFullscreenTask(RunningTaskInfo taskInfo) { diff --git a/wmshell/src/com/android/wm/shell/keyguard/KeyguardTransitionHandler.java b/wmshell/src/com/android/wm/shell/keyguard/KeyguardTransitionHandler.java index d702abe8de..cd478e5bd5 100644 --- a/wmshell/src/com/android/wm/shell/keyguard/KeyguardTransitionHandler.java +++ b/wmshell/src/com/android/wm/shell/keyguard/KeyguardTransitionHandler.java @@ -22,15 +22,12 @@ import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.service.dreams.Flags.dismissDreamOnKeyguardDismiss; import static android.view.WindowManager.KEYGUARD_VISIBILITY_TRANSIT_FLAGS; -import static android.view.WindowManager.TRANSIT_FLAG_AOD_APPEARING; import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_APPEARING; import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_GOING_AWAY; import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_LOCKED; import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_OCCLUDING; import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_UNOCCLUDING; import static android.view.WindowManager.TRANSIT_SLEEP; -import static android.view.WindowManager.TRANSIT_TO_BACK; -import static android.view.WindowManager.TRANSIT_TO_FRONT; import static com.android.wm.shell.shared.TransitionUtil.isOpeningType; @@ -47,15 +44,12 @@ import android.view.SurfaceControl; import android.view.WindowManager; import android.window.IRemoteTransition; import android.window.IRemoteTransitionFinishedCallback; -import android.window.KeyguardState; import android.window.TransitionInfo; import android.window.TransitionRequestInfo; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; -import com.android.internal.protolog.ProtoLog; -import com.android.window.flags2.Flags; -import com.android.wm.shell.common.DisplayController; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.TaskStackListenerCallback; import com.android.wm.shell.common.TaskStackListenerImpl; @@ -64,7 +58,6 @@ import com.android.wm.shell.shared.annotations.ExternalThread; import com.android.wm.shell.sysui.KeyguardChangeListener; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.transition.FocusTransitionObserver; import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.transition.Transitions.TransitionFinishCallback; @@ -76,21 +69,15 @@ import com.android.wm.shell.transition.Transitions.TransitionFinishCallback; public class KeyguardTransitionHandler implements Transitions.TransitionHandler, KeyguardChangeListener, TaskStackListenerCallback { - private static final boolean ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS = - Flags.ensureKeyguardDoesTransitionStarting(); - private static final String TAG = "KeyguardTransition"; private final Transitions mTransitions; private final ShellController mShellController; - - private final DisplayController mDisplayController; private final Handler mMainHandler; private final ShellExecutor mMainExecutor; private final ArrayMap<IBinder, StartedTransition> mStartedTransitions = new ArrayMap<>(); private final TaskStackListenerImpl mTaskStackListener; - private final FocusTransitionObserver mFocusTransitionObserver; /** * Local IRemoteTransition implementations registered by the keyguard service. @@ -127,20 +114,16 @@ public class KeyguardTransitionHandler public KeyguardTransitionHandler( @NonNull ShellInit shellInit, @NonNull ShellController shellController, - @NonNull DisplayController displayController, @NonNull Transitions transitions, @NonNull TaskStackListenerImpl taskStackListener, @NonNull Handler mainHandler, - @NonNull ShellExecutor mainExecutor, - @NonNull FocusTransitionObserver focusTransitionObserver) { + @NonNull ShellExecutor mainExecutor) { mTransitions = transitions; mShellController = shellController; - mDisplayController = displayController; mMainHandler = mainHandler; mMainExecutor = mainExecutor; mTaskStackListener = taskStackListener; shellInit.addInitCallback(this::onInit, this); - mFocusTransitionObserver = focusTransitionObserver; } private void onInit() { @@ -177,10 +160,6 @@ public class KeyguardTransitionHandler return mKeyguardShowing; } - public boolean isKeyguardAnimating() { - return !mStartedTransitions.isEmpty(); - } - @Override public void onTaskMovedToFront(ActivityManager.RunningTaskInfo taskInfo) { mDreamToken = taskInfo.getActivityType() == ACTIVITY_TYPE_DREAM ? taskInfo.token : null; @@ -191,7 +170,7 @@ public class KeyguardTransitionHandler @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull TransitionFinishCallback finishCallback) { - if (!handles(info)) { + if (!handles(info) || mIsLaunchingActivityOverLockscreen) { return false; } @@ -201,19 +180,15 @@ public class KeyguardTransitionHandler transition, info, startTransaction, finishTransaction, finishCallback); } - if ((info.getFlags() & TRANSIT_FLAG_KEYGUARD_APPEARING) != 0 - || (info.getFlags() & TRANSIT_FLAG_AOD_APPEARING) != 0) { + if ((info.getFlags() & TRANSIT_FLAG_KEYGUARD_APPEARING) != 0) { return startAnimation(mAppearTransition, "appearing", transition, info, startTransaction, finishTransaction, finishCallback); } - if (mIsLaunchingActivityOverLockscreen) { - return false; - } // Occlude/unocclude animations are only played if the keyguard is locked. if ((info.getFlags() & TRANSIT_FLAG_KEYGUARD_LOCKED) != 0) { - if (isKeyguardOccluding(info)) { + if ((info.getFlags() & TRANSIT_FLAG_KEYGUARD_OCCLUDING) != 0) { if (hasOpeningDream(info)) { return startAnimation(mOccludeByDreamTransition, "occlude-by-dream", transition, info, startTransaction, finishTransaction, finishCallback); @@ -221,7 +196,7 @@ public class KeyguardTransitionHandler return startAnimation(mOccludeTransition, "occlude", transition, info, startTransaction, finishTransaction, finishCallback); } - } else if (isKeyguardUnoccluding(info)) { + } else if ((info.getFlags() & TRANSIT_FLAG_KEYGUARD_UNOCCLUDING) != 0) { return startAnimation(mUnoccludeTransition, "unocclude", transition, info, startTransaction, finishTransaction, finishCallback); } @@ -279,8 +254,7 @@ public class KeyguardTransitionHandler @Override public void mergeAnimation(@NonNull IBinder nextTransition, @NonNull TransitionInfo nextInfo, - @NonNull SurfaceControl.Transaction nextT, @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder currentTransition, + @NonNull SurfaceControl.Transaction nextT, @NonNull IBinder currentTransition, @NonNull TransitionFinishCallback nextFinishCallback) { final StartedTransition playing = mStartedTransitions.get(currentTransition); if (playing == null) { @@ -345,36 +319,6 @@ public class KeyguardTransitionHandler return false; } - private static boolean isKeyguardOccluding(@NonNull TransitionInfo info) { - if (!ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS) { - return (info.getFlags() & TRANSIT_FLAG_KEYGUARD_OCCLUDING) != 0; - } - - for (int i = 0; i < info.getChanges().size(); i++) { - TransitionInfo.Change change = info.getChanges().get(i); - if (change.hasFlags(TransitionInfo.FLAG_IS_TASK_DISPLAY_AREA) - && change.getMode() == TRANSIT_TO_FRONT) { - return true; - } - } - return false; - } - - private static boolean isKeyguardUnoccluding(@NonNull TransitionInfo info) { - if (!ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS) { - return (info.getFlags() & TRANSIT_FLAG_KEYGUARD_UNOCCLUDING) != 0; - } - - for (int i = 0; i < info.getChanges().size(); i++) { - TransitionInfo.Change change = info.getChanges().get(i); - if (change.hasFlags(TransitionInfo.FLAG_IS_TASK_DISPLAY_AREA) - && change.getMode() == TRANSIT_TO_BACK) { - return true; - } - } - return false; - } - private void finishAnimationImmediately(IBinder transition, StartedTransition playing) { final IBinder fakeTransition = new Binder(); final TransitionInfo fakeInfo = new TransitionInfo(TRANSIT_SLEEP, 0x0); @@ -402,8 +346,7 @@ public class KeyguardTransitionHandler final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); if (taskInfo != null && taskInfo.taskId != INVALID_TASK_ID && taskInfo.getWindowingMode() == WINDOWING_MODE_FREEFORM - && mFocusTransitionObserver.hasGlobalFocus(taskInfo) - && change.getContainer() != null) { + && taskInfo.isFocused && change.getContainer() != null) { wct.setWindowingMode(change.getContainer(), WINDOWING_MODE_FULLSCREEN); wct.setBounds(change.getContainer(), null); return; @@ -442,16 +385,5 @@ public class KeyguardTransitionHandler mMainExecutor.execute(() -> mIsLaunchingActivityOverLockscreen = isLaunchingActivityOverLockscreen); } - - @Override - public void startKeyguardTransition(boolean keyguardShowing, boolean aodShowing) { - final WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.addKeyguardState(new KeyguardState.Builder().setKeyguardShowing(keyguardShowing) - .setAodShowing(aodShowing).build()); - mMainExecutor.execute(() -> { - mTransitions.startTransition(keyguardShowing ? TRANSIT_TO_FRONT : TRANSIT_TO_BACK, - wct, KeyguardTransitionHandler.this); - }); - } } } diff --git a/wmshell/src/com/android/wm/shell/keyguard/KeyguardTransitions.java b/wmshell/src/com/android/wm/shell/keyguard/KeyguardTransitions.java index 1d349e6c96..b7245b91f3 100644 --- a/wmshell/src/com/android/wm/shell/keyguard/KeyguardTransitions.java +++ b/wmshell/src/com/android/wm/shell/keyguard/KeyguardTransitions.java @@ -44,11 +44,4 @@ public interface KeyguardTransitions { * Notify whether keyguard has created a remote animation runner for next app launch. */ default void setLaunchingActivityOverLockscreen(boolean isLaunchingActivityOverLockscreen) {} - - /** - * Notifies Shell to start a keyguard transition directly. - * @param keyguardShowing whether keyguard is showing or not. - * @param aodShowing whether aod is showing or not. - */ - default void startKeyguardTransition(boolean keyguardShowing, boolean aodShowing) {} } diff --git a/wmshell/src/com/android/wm/shell/onehanded/BackgroundWindowManager.java b/wmshell/src/com/android/wm/shell/onehanded/BackgroundWindowManager.java index 422656c6d3..71cc8df80c 100644 --- a/wmshell/src/com/android/wm/shell/onehanded/BackgroundWindowManager.java +++ b/wmshell/src/com/android/wm/shell/onehanded/BackgroundWindowManager.java @@ -38,6 +38,7 @@ import android.view.IWindow; import android.view.LayoutInflater; import android.view.SurfaceControl; import android.view.SurfaceControlViewHost; +import android.view.SurfaceSession; import android.view.View; import android.view.WindowManager; import android.view.WindowlessWindowManager; @@ -104,7 +105,7 @@ public final class BackgroundWindowManager extends WindowlessWindowManager { @Override protected SurfaceControl getParentSurface(IWindow window, WindowManager.LayoutParams attrs) { - final SurfaceControl.Builder builder = new SurfaceControl.Builder() + final SurfaceControl.Builder builder = new SurfaceControl.Builder(new SurfaceSession()) .setColorLayer() .setBufferSize(mDisplayBounds.width(), mDisplayBounds.height()) .setFormat(PixelFormat.RGB_888) diff --git a/wmshell/src/com/android/wm/shell/onehanded/OneHandedController.java b/wmshell/src/com/android/wm/shell/onehanded/OneHandedController.java index 862520208d..962309f7c5 100644 --- a/wmshell/src/com/android/wm/shell/onehanded/OneHandedController.java +++ b/wmshell/src/com/android/wm/shell/onehanded/OneHandedController.java @@ -23,6 +23,7 @@ import static com.android.wm.shell.onehanded.OneHandedState.STATE_ACTIVE; import static com.android.wm.shell.onehanded.OneHandedState.STATE_ENTERING; import static com.android.wm.shell.onehanded.OneHandedState.STATE_EXITING; import static com.android.wm.shell.onehanded.OneHandedState.STATE_NONE; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_ONE_HANDED; import android.annotation.BinderThread; import android.content.ComponentName; @@ -54,7 +55,6 @@ import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.TaskStackListenerCallback; import com.android.wm.shell.common.TaskStackListenerImpl; import com.android.wm.shell.shared.annotations.ExternalThread; -import com.android.wm.shell.shared.annotations.ShellMainThread; import com.android.wm.shell.sysui.ConfigurationChangeListener; import com.android.wm.shell.sysui.KeyguardChangeListener; import com.android.wm.shell.sysui.ShellCommandHandler; @@ -203,7 +203,7 @@ public class OneHandedController implements RemoteCallable<OneHandedController>, DisplayController displayController, DisplayLayout displayLayout, TaskStackListenerImpl taskStackListener, InteractionJankMonitor jankMonitor, UiEventLogger uiEventLogger, - ShellExecutor mainExecutor, @ShellMainThread Handler mainHandler) { + ShellExecutor mainExecutor, Handler mainHandler) { OneHandedSettingsUtil settingsUtil = new OneHandedSettingsUtil(); OneHandedAccessibilityUtil accessibilityUtil = new OneHandedAccessibilityUtil(context); OneHandedTimeoutHandler timeoutHandler = new OneHandedTimeoutHandler(mainExecutor); @@ -217,7 +217,7 @@ public class OneHandedController implements RemoteCallable<OneHandedController>, mainExecutor); OneHandedDisplayAreaOrganizer organizer = new OneHandedDisplayAreaOrganizer( context, displayLayout, settingsUtil, animationController, tutorialHandler, - jankMonitor, mainExecutor, mainHandler); + jankMonitor, mainExecutor); OneHandedUiEventLogger oneHandedUiEventsLogger = new OneHandedUiEventLogger(uiEventLogger); return new OneHandedController(context, shellInit, shellCommandHandler, shellController, displayController, organizer, touchHandler, tutorialHandler, settingsUtil, @@ -297,7 +297,7 @@ public class OneHandedController implements RemoteCallable<OneHandedController>, mShellController.addConfigurationChangeListener(this); mShellController.addKeyguardChangeListener(this); mShellController.addUserChangeListener(this); - mShellController.addExternalInterface(IOneHanded.DESCRIPTOR, + mShellController.addExternalInterface(KEY_EXTRA_SHELL_ONE_HANDED, this::createExternalInterface, this); } diff --git a/wmshell/src/com/android/wm/shell/onehanded/OneHandedDisplayAreaOrganizer.java b/wmshell/src/com/android/wm/shell/onehanded/OneHandedDisplayAreaOrganizer.java index 95e633d0b5..d157ca8376 100644 --- a/wmshell/src/com/android/wm/shell/onehanded/OneHandedDisplayAreaOrganizer.java +++ b/wmshell/src/com/android/wm/shell/onehanded/OneHandedDisplayAreaOrganizer.java @@ -23,7 +23,6 @@ import static com.android.wm.shell.onehanded.OneHandedAnimationController.TRANSI import android.content.Context; import android.graphics.Rect; -import android.os.Handler; import android.os.SystemProperties; import android.text.TextUtils; import android.util.ArrayMap; @@ -43,7 +42,6 @@ import com.android.internal.jank.InteractionJankMonitor; import com.android.wm.shell.R; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.annotations.ShellMainThread; import java.io.PrintWriter; import java.util.ArrayList; @@ -72,8 +70,6 @@ public class OneHandedDisplayAreaOrganizer extends DisplayAreaOrganizer { private final OneHandedSettingsUtil mOneHandedSettingsUtil; private final InteractionJankMonitor mJankMonitor; private final Context mContext; - @ShellMainThread - private final Handler mHandler; private boolean mIsReady; private float mLastVisualOffset = 0; @@ -140,11 +136,9 @@ public class OneHandedDisplayAreaOrganizer extends DisplayAreaOrganizer { OneHandedAnimationController animationController, OneHandedTutorialHandler tutorialHandler, InteractionJankMonitor jankMonitor, - ShellExecutor mainExecutor, - @ShellMainThread Handler handler) { + ShellExecutor mainExecutor) { super(mainExecutor); mContext = context; - mHandler = handler; setDisplayLayout(displayLayout); mOneHandedSettingsUtil = oneHandedSettingsUtil; mAnimationController = animationController; @@ -339,7 +333,7 @@ public class OneHandedDisplayAreaOrganizer extends DisplayAreaOrganizer { getDisplayAreaTokenMap().entrySet().iterator().next(); final InteractionJankMonitor.Configuration.Builder builder = InteractionJankMonitor.Configuration.Builder.withSurface( - cujType, mContext, firstEntry.getValue(), mHandler); + cujType, mContext, firstEntry.getValue()); if (!TextUtils.isEmpty(tag)) { builder.setTag(tag); } diff --git a/wmshell/src/com/android/wm/shell/performance/PerfHintController.kt b/wmshell/src/com/android/wm/shell/performance/PerfHintController.kt index c655d86c3e..f7977f8800 100644 --- a/wmshell/src/com/android/wm/shell/performance/PerfHintController.kt +++ b/wmshell/src/com/android/wm/shell/performance/PerfHintController.kt @@ -45,15 +45,9 @@ class PerfHintController(private val mContext: Context, private fun onInit() { mShellCommandHandler.addDumpCallback(this::dump, this) val perfHintMgr = mContext.getSystemService(PerformanceHintManager::class.java) - if (perfHintMgr != null) { - val adpfSession = perfHintMgr.createHintSession( - intArrayOf(Process.myTid()), - TimeUnit.SECONDS.toNanos(1) - ) - if (adpfSession != null) { - hinter.setAdpfSession(adpfSession) - } - } + val adpfSession = perfHintMgr!!.createHintSession(intArrayOf(Process.myTid()), + TimeUnit.SECONDS.toNanos(1)) + hinter.setAdpfSession(adpfSession) } fun dump(pw: PrintWriter, prefix: String?) { diff --git a/wmshell/src/com/android/wm/shell/pip/PinnedStackListenerForwarder.java b/wmshell/src/com/android/wm/shell/pip/PinnedStackListenerForwarder.java index 93ede7a8b7..ce98458c05 100644 --- a/wmshell/src/com/android/wm/shell/pip/PinnedStackListenerForwarder.java +++ b/wmshell/src/com/android/wm/shell/pip/PinnedStackListenerForwarder.java @@ -16,6 +16,7 @@ package com.android.wm.shell.pip; +import android.content.ComponentName; import android.os.RemoteException; import android.view.IPinnedTaskListener; import android.view.WindowManagerGlobal; @@ -69,6 +70,12 @@ public class PinnedStackListenerForwarder { } } + private void onActivityHidden(ComponentName componentName) { + for (PinnedTaskListener listener : mListeners) { + listener.onActivityHidden(componentName); + } + } + @BinderThread private class PinnedTaskListenerImpl extends IPinnedTaskListener.Stub { @Override @@ -84,6 +91,13 @@ public class PinnedStackListenerForwarder { PinnedStackListenerForwarder.this.onImeVisibilityChanged(imeVisible, imeHeight); }); } + + @Override + public void onActivityHidden(ComponentName componentName) { + mMainExecutor.execute(() -> { + PinnedStackListenerForwarder.this.onActivityHidden(componentName); + }); + } } /** @@ -94,5 +108,7 @@ public class PinnedStackListenerForwarder { public void onMovementBoundsChanged(boolean fromImeAdjustment) {} public void onImeVisibilityChanged(boolean imeVisible, int imeHeight) {} + + public void onActivityHidden(ComponentName componentName) {} } } diff --git a/wmshell/src/com/android/wm/shell/pip/Pip.java b/wmshell/src/com/android/wm/shell/pip/Pip.java index 0154d0455e..a749019046 100644 --- a/wmshell/src/com/android/wm/shell/pip/Pip.java +++ b/wmshell/src/com/android/wm/shell/pip/Pip.java @@ -16,12 +16,10 @@ package com.android.wm.shell.pip; -import android.annotation.NonNull; import android.graphics.Rect; import com.android.wm.shell.shared.annotations.ExternalThread; -import java.util.concurrent.Executor; import java.util.function.Consumer; /** @@ -45,17 +43,12 @@ public interface Pip { } /** - * Set the callback when isInPip state is changed. + * Set the callback when {@link PipTaskOrganizer#isInPip()} state is changed. * - * @param callback The callback accepts the state of isInPip when it's changed. + * @param callback The callback accepts the result of {@link PipTaskOrganizer#isInPip()} + * when it's changed. */ - default void addOnIsInPipStateChangedListener(@NonNull Consumer<Boolean> callback) {} - - /** - * Remove the callback when isInPip state is changed. - * @param callback The callback accepts the state of isInPip when it's changed. - */ - default void removeOnIsInPipStateChangedListener(@NonNull Consumer<Boolean> callback) {} + default void setOnIsInPipStateChangedListener(Consumer<Boolean> callback) {} /** * Called when showing Pip menu. @@ -76,10 +69,9 @@ public interface Pip { default void removePipExclusionBoundsChangeListener(Consumer<Rect> listener) { } /** - * Register {@link PipTransitionController.PipTransitionCallback} to listen on PiP transition - * started / finished callbacks. + * @return {@link PipTransitionController} instance. */ - default void registerPipTransitionCallback( - @NonNull PipTransitionController.PipTransitionCallback callback, - @NonNull Executor executor) { } + default PipTransitionController getPipTransitionController() { + return null; + } } diff --git a/wmshell/src/com/android/wm/shell/pip/PipAnimationController.java b/wmshell/src/com/android/wm/shell/pip/PipAnimationController.java index 864ca502f2..0a3c15b605 100644 --- a/wmshell/src/com/android/wm/shell/pip/PipAnimationController.java +++ b/wmshell/src/com/android/wm/shell/pip/PipAnimationController.java @@ -17,23 +17,18 @@ package com.android.wm.shell.pip; import static android.util.RotationUtils.rotateBounds; -import static android.view.Surface.ROTATION_0; import static android.view.Surface.ROTATION_270; import static android.view.Surface.ROTATION_90; -import static com.android.wm.shell.pip.PipTransitionController.ANIM_TYPE_ALPHA; -import static com.android.wm.shell.pip.PipTransitionController.ANIM_TYPE_BOUNDS; - +import android.animation.AnimationHandler; import android.animation.Animator; import android.animation.RectEvaluator; import android.animation.ValueAnimator; import android.annotation.IntDef; import android.annotation.NonNull; -import android.app.AppCompatTaskInfo; import android.app.TaskInfo; import android.content.Context; import android.content.pm.ActivityInfo; -import android.graphics.Point; import android.graphics.Rect; import android.os.SystemClock; import android.view.Surface; @@ -41,12 +36,12 @@ import android.view.SurfaceControl; import android.window.TaskSnapshot; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.graphics.SfVsyncFrameCallbackProvider; +import com.android.internal.protolog.common.ProtoLog; import com.android.launcher3.icons.IconProvider; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.animation.Interpolators; -import com.android.wm.shell.shared.pip.PipContentOverlay; import com.android.wm.shell.transition.Transitions; import java.lang.annotation.Retention; @@ -60,6 +55,16 @@ public class PipAnimationController { static final float FRACTION_START = 0f; static final float FRACTION_END = 1f; + public static final int ANIM_TYPE_BOUNDS = 0; + public static final int ANIM_TYPE_ALPHA = 1; + + @IntDef(prefix = { "ANIM_TYPE_" }, value = { + ANIM_TYPE_BOUNDS, + ANIM_TYPE_ALPHA + }) + @Retention(RetentionPolicy.SOURCE) + public @interface AnimationType {} + /** * The alpha type is set for swiping to home. But the swiped task may not enter PiP. And if * another task enters PiP by non-swipe ways, e.g. call API in foreground or switch to 3-button @@ -108,8 +113,15 @@ public class PipAnimationController { private final PipSurfaceTransactionHelper mSurfaceTransactionHelper; + private final ThreadLocal<AnimationHandler> mSfAnimationHandlerThreadLocal = + ThreadLocal.withInitial(() -> { + AnimationHandler handler = new AnimationHandler(); + handler.setProvider(new SfVsyncFrameCallbackProvider()); + return handler; + }); + private PipTransitionAnimator mCurrentAnimator; - @PipTransitionController.AnimationType + @AnimationType private int mOneShotAnimationType = ANIM_TYPE_BOUNDS; private long mLastOneShotAlphaAnimationTime; @@ -138,12 +150,13 @@ public class PipAnimationController { return mCurrentAnimator; } + @SuppressWarnings("unchecked") /** * Construct and return an animator that animates from the {@param startBounds} to the * {@param endBounds} with the given {@param direction}. If {@param direction} is type - * {@link PipTransitionController#ANIM_TYPE_BOUNDS}, then {@param sourceHintRect} will be used - * to animate in a better, more smooth manner. If the original bound was rotated and a reset - * needs to happen, pass in {@param startingAngle}. + * {@link ANIM_TYPE_BOUNDS}, then {@param sourceHintRect} will be used to animate + * in a better, more smooth manner. If the original bound was rotated and a reset needs to + * happen, pass in {@param startingAngle}. * * In the case where one wants to start animation during an intermediate animation (for example, * if the user is currently doing a pinch-resize, and upon letting go now PiP needs to animate @@ -156,17 +169,16 @@ public class PipAnimationController { * leaving PiP to fullscreen, and the {@param endBounds} is the fullscreen bounds before the * rotation change. */ - @SuppressWarnings("unchecked") @VisibleForTesting public PipTransitionAnimator getAnimator(TaskInfo taskInfo, SurfaceControl leash, Rect baseBounds, Rect startBounds, Rect endBounds, Rect sourceHintRect, @PipAnimationController.TransitionDirection int direction, float startingAngle, - @Surface.Rotation int rotationDelta, boolean alwaysAnimateTaskBounds) { + @Surface.Rotation int rotationDelta) { if (mCurrentAnimator == null) { mCurrentAnimator = setupPipTransitionAnimator( PipTransitionAnimator.ofBounds(taskInfo, leash, startBounds, startBounds, endBounds, sourceHintRect, direction, 0 /* startingAngle */, - rotationDelta, alwaysAnimateTaskBounds)); + rotationDelta)); } else if (mCurrentAnimator.getAnimationType() == ANIM_TYPE_ALPHA && mCurrentAnimator.isRunning()) { // If we are still animating the fade into pip, then just move the surface and ensure @@ -182,8 +194,7 @@ public class PipAnimationController { mCurrentAnimator.cancel(); mCurrentAnimator = setupPipTransitionAnimator( PipTransitionAnimator.ofBounds(taskInfo, leash, baseBounds, startBounds, - endBounds, sourceHintRect, direction, startingAngle, rotationDelta, - alwaysAnimateTaskBounds)); + endBounds, sourceHintRect, direction, startingAngle, rotationDelta)); } return mCurrentAnimator; } @@ -201,6 +212,7 @@ public class PipAnimationController { animator.setSurfaceTransactionHelper(mSurfaceTransactionHelper); animator.setInterpolator(Interpolators.FAST_OUT_SLOW_IN); animator.setFloatValues(FRACTION_START, FRACTION_END); + animator.setAnimationHandler(mSfAnimationHandlerThreadLocal.get()); return animator; } @@ -217,7 +229,6 @@ public class PipAnimationController { /** * Quietly cancel the animator by removing the listeners first. - * TODO(b/275003573): deprecate this, cancelling without the proper callbacks is problematic. */ static void quietCancel(@NonNull ValueAnimator animator) { animator.removeAllUpdateListeners(); @@ -227,13 +238,12 @@ public class PipAnimationController { /** * Sets the preferred enter animation type for one time. This is typically used to set the - * animation type to {@link PipTransitionController#ANIM_TYPE_ALPHA}. + * animation type to {@link PipAnimationController#ANIM_TYPE_ALPHA}. * <p> * For example, gesture navigation would first fade out the PiP activity, and the transition * should be responsible to animate in (such as fade in) the PiP. */ - public void setOneShotEnterAnimationType( - @PipTransitionController.AnimationType int animationType) { + public void setOneShotEnterAnimationType(@AnimationType int animationType) { mOneShotAnimationType = animationType; if (animationType == ANIM_TYPE_ALPHA) { mLastOneShotAlphaAnimationTime = SystemClock.uptimeMillis(); @@ -241,7 +251,7 @@ public class PipAnimationController { } /** Returns the preferred animation type and consumes the one-shot type if needed. */ - @PipTransitionController.AnimationType + @AnimationType public int takeOneShotEnterAnimationType() { final int type = mOneShotAnimationType; if (type == ANIM_TYPE_ALPHA) { @@ -305,11 +315,9 @@ public class PipAnimationController { ValueAnimator.AnimatorListener { private final TaskInfo mTaskInfo; private final SurfaceControl mLeash; - private final @PipTransitionController.AnimationType int mAnimationType; + private final @AnimationType int mAnimationType; private final Rect mDestinationBounds = new Rect(); - private final Point mLeashOffset = new Point(); - private T mBaseValue; protected T mCurrentValue; protected T mStartValue; @@ -324,23 +332,13 @@ public class PipAnimationController { // Flag to avoid double-end private boolean mHasRequestedEnd; - private PipTransitionAnimator(@NonNull TaskInfo taskInfo, @NonNull SurfaceControl leash, - @PipTransitionController.AnimationType int animationType, - @NonNull Rect destinationBounds, @NonNull T baseValue, @NonNull T startValue, - @NonNull T endValue) { - this(taskInfo, leash, animationType, destinationBounds, new Point(), baseValue, - startValue, endValue); - } - - private PipTransitionAnimator(@NonNull TaskInfo taskInfo, @NonNull SurfaceControl leash, - @PipTransitionController.AnimationType int animationType, - @NonNull Rect destinationBounds, @NonNull Point leashOffset, - @NonNull T baseValue, @NonNull T startValue, @NonNull T endValue) { + private PipTransitionAnimator(TaskInfo taskInfo, SurfaceControl leash, + @AnimationType int animationType, + Rect destinationBounds, T baseValue, T startValue, T endValue) { mTaskInfo = taskInfo; mLeash = leash; mAnimationType = animationType; mDestinationBounds.set(destinationBounds); - mLeashOffset.set(leashOffset); mBaseValue = baseValue; mStartValue = startValue; mEndValue = endValue; @@ -393,8 +391,7 @@ public class PipAnimationController { @Override public void onAnimationRepeat(Animator animation) {} @VisibleForTesting - @PipTransitionController.AnimationType - public int getAnimationType() { + @AnimationType public int getAnimationType() { return mAnimationType; } @@ -419,7 +416,7 @@ public class PipAnimationController { } SurfaceControl getContentOverlayLeash() { - return mContentOverlay == null ? null : mContentOverlay.getLeash(); + return mContentOverlay == null ? null : mContentOverlay.mLeash; } void setColorContentOverlay(Context context) { @@ -493,21 +490,17 @@ public class PipAnimationController { } } - /** - * Returns the offset of the {@link #mLeash}. - */ - @NonNull - Point getLeashOffset() { - // Use copy to prevent the leash to be modified unexpectedly. - return new Point(mLeashOffset); - } - void setCurrentValue(T value) { mCurrentValue = value; } + boolean shouldApplyCornerRadius() { + return !isOutPipDirection(mTransitionDirection); + } + boolean shouldApplyShadowRadius() { - return !isRemovePipDirection(mTransitionDirection); + return !isOutPipDirection(mTransitionDirection) + && !isRemovePipDirection(mTransitionDirection); } boolean inScaleTransition() { @@ -560,7 +553,7 @@ public class PipAnimationController { final float alpha = getStartValue() * (1 - fraction) + getEndValue() * fraction; setCurrentValue(alpha); getSurfaceTransactionHelper().alpha(tx, leash, alpha) - .round(tx, leash, true /* applyCornerRadius */) + .round(tx, leash, shouldApplyCornerRadius()) .shadow(tx, leash, shouldApplyShadowRadius()); if (!handlePipTransaction(leash, tx, destinationBounds, alpha)) { tx.apply(); @@ -575,8 +568,8 @@ public class PipAnimationController { } getSurfaceTransactionHelper() .resetScale(tx, leash, getDestinationBounds()) - .cropAndPosition(tx, leash, getDestinationBounds()) - .round(tx, leash, true /* applyCornerRadius */) + .crop(tx, leash, getDestinationBounds()) + .round(tx, leash, shouldApplyCornerRadius()) .shadow(tx, leash, shouldApplyShadowRadius()); tx.show(leash); tx.apply(); @@ -593,75 +586,27 @@ public class PipAnimationController { static PipTransitionAnimator<Rect> ofBounds(TaskInfo taskInfo, SurfaceControl leash, Rect baseValue, Rect startValue, Rect endValue, Rect sourceRectHint, @PipAnimationController.TransitionDirection int direction, float startingAngle, - @Surface.Rotation int rotationDelta, boolean alwaysAnimateTaskBounds) { + @Surface.Rotation int rotationDelta) { final boolean isOutPipDirection = isOutPipDirection(direction); final boolean isInPipDirection = isInPipDirection(direction); // Just for simplicity we'll interpolate between the source rect hint insets and empty // insets to calculate the window crop final Rect initialSourceValue; - final Rect mainWindowFrame = taskInfo.topActivityMainWindowFrame; - final AppCompatTaskInfo compatInfo = taskInfo.appCompatTaskInfo; - final boolean isSizeCompatOrLetterboxed = compatInfo.isTopActivityInSizeCompat() - || compatInfo.isTopActivityLetterboxed(); - // For the animation to swipe PIP to home or restore a PIP task from home, we don't - // override to the main window frame since we should animate the whole task. - final boolean shouldUseMainWindowFrame = mainWindowFrame != null - && !alwaysAnimateTaskBounds && !isSizeCompatOrLetterboxed; - final boolean changeOrientation = - rotationDelta == ROTATION_90 || rotationDelta == ROTATION_270; - final Rect baseBounds = new Rect(baseValue); - final Rect startBounds = new Rect(startValue); - final Rect endBounds = new Rect(endValue); if (isOutPipDirection) { - if (shouldUseMainWindowFrame && !changeOrientation) { - endBounds.set(mainWindowFrame); - } - initialSourceValue = new Rect(endBounds); - } else if (isInPipDirection) { - if (shouldUseMainWindowFrame) { - baseBounds.set(mainWindowFrame); - if (startValue.equals(baseValue)) { - // If the start value is at initial state as in PIP animation, also override - // the start bounds with nonMatchParentBounds. - startBounds.set(mainWindowFrame); - } - } - initialSourceValue = new Rect(baseBounds); + initialSourceValue = new Rect(endValue); } else { - // Note that we assume the window bounds always match task bounds in PIP mode. - initialSourceValue = new Rect(baseBounds); - } - - final Point leashOffset; - if (isInPipDirection) { - leashOffset = new Point(baseValue.left, baseValue.top); - } else if (isOutPipDirection) { - leashOffset = new Point(endValue.left, endValue.top); - } else { - leashOffset = new Point(baseValue.left, baseValue.top); + initialSourceValue = new Rect(baseValue); } final Rect rotatedEndRect; final Rect lastEndRect; final Rect initialContainerRect; - if (changeOrientation) { - lastEndRect = new Rect(endBounds); - rotatedEndRect = new Rect(endBounds); - // TODO(b/375977163): polish the animation to restoring the PIP task back from - // swipe-pip-to-home. Ideally we should send the transitionInfo after reparenting - // the PIP activity back to the original task. - if (shouldUseMainWindowFrame && isOutPipDirection) { - // If we should animate the main window frame, set it to the rotatedRect - // instead. The end bounds reported by transitionInfo is the bounds before - // rotation, while main window frame is calculated after the rotation. - // Note that we only override main window frame for leaving pip animation as - // the pip activity should match parent. - rotatedEndRect.set(mainWindowFrame); - } else { - // Rotate the end bounds according to the rotation delta because the display - // will be rotated to the same orientation. - rotateBounds(rotatedEndRect, initialSourceValue, rotationDelta); - } + if (rotationDelta == ROTATION_90 || rotationDelta == ROTATION_270) { + lastEndRect = new Rect(endValue); + rotatedEndRect = new Rect(endValue); + // Rotate the end bounds according to the rotation delta because the display will + // be rotated to the same orientation. + rotateBounds(rotatedEndRect, initialSourceValue, rotationDelta); // Use the rect that has the same orientation as the hint rect. initialContainerRect = isOutPipDirection ? rotatedEndRect : initialSourceValue; } else { @@ -674,20 +619,12 @@ public class PipAnimationController { // Crop a Rect matches the aspect ratio and pivots at the center point. // This is done for entering case only. if (isInPipDirection(direction)) { - final float aspectRatio = endBounds.width() / (float) endBounds.height(); - adjustedSourceRectHint.set(PipUtils.getPseudoSourceRectHint( - startBounds, aspectRatio)); + final float aspectRatio = endValue.width() / (float) endValue.height(); + adjustedSourceRectHint.set(PipUtils.getEnterPipWithOverlaySrcRectHint( + startValue, aspectRatio)); } } else { adjustedSourceRectHint.set(sourceRectHint); - if (isInPipDirection(direction) - && rotationDelta == ROTATION_0 - && taskInfo.displayCutoutInsets != null) { - // TODO: this is to special case the issues on Foldable device - // with display cutout. This aligns with what's in SwipePipToHomeAnimator. - adjustedSourceRectHint.offset(taskInfo.displayCutoutInsets.left, - taskInfo.displayCutoutInsets.top); - } } final Rect sourceHintRectInsets = new Rect(); if (!adjustedSourceRectHint.isEmpty()) { @@ -700,8 +637,8 @@ public class PipAnimationController { final Rect zeroInsets = new Rect(0, 0, 0, 0); // construct new Rect instances in case they are recycled - return new PipTransitionAnimator<Rect>(taskInfo, leash, ANIM_TYPE_BOUNDS, endBounds, - leashOffset, new Rect(baseBounds), new Rect(startBounds), new Rect(endBounds)) { + return new PipTransitionAnimator<Rect>(taskInfo, leash, ANIM_TYPE_BOUNDS, + endValue, new Rect(baseValue), new Rect(startValue), new Rect(endValue)) { private final RectEvaluator mRectEvaluator = new RectEvaluator(new Rect()); private final RectEvaluator mInsetsEvaluator = new RectEvaluator(new Rect()); @@ -725,23 +662,11 @@ public class PipAnimationController { setCurrentValue(bounds); if (inScaleTransition() || adjustedSourceRectHint.isEmpty()) { if (isOutPipDirection) { - // Use the bounds relative to the task leash in case the leash does not - // start from (0, 0). - final Rect relativeEndBounds = new Rect(end); - final Point leashOffset = getLeashOffset(); - relativeEndBounds.offset(-leashOffset.x, -leashOffset.y); - getSurfaceTransactionHelper() - .crop(tx, leash, relativeEndBounds) - .scale(tx, leash, relativeEndBounds, bounds, - false /* shouldOffset */); + getSurfaceTransactionHelper().crop(tx, leash, end) + .scale(tx, leash, end, bounds); } else { - // TODO(b/356277166): add support to specify sourceRectHint with - // non-match parent activity. - // If there's a PIP resize animation, we should offset the bounds to - // (0, 0) since the window bounds should match the leash bounds in PIP - // mode. - getSurfaceTransactionHelper().cropAndPosition(tx, leash, base) - .scale(tx, leash, base, bounds, angle, inScaleTransition()) + getSurfaceTransactionHelper().crop(tx, leash, base) + .scale(tx, leash, base, bounds, angle) .round(tx, leash, base, bounds) .shadow(tx, leash, shouldApplyShadowRadius()); } @@ -749,12 +674,14 @@ public class PipAnimationController { final Rect insets = computeInsets(fraction); getSurfaceTransactionHelper().scaleAndCrop(tx, leash, adjustedSourceRectHint, initialSourceValue, bounds, insets, - isInPipDirection, fraction, leashOffset); - final Rect sourceBounds = new Rect(initialContainerRect); - sourceBounds.inset(insets); - getSurfaceTransactionHelper() - .round(tx, leash, sourceBounds, bounds) - .shadow(tx, leash, shouldApplyShadowRadius()); + isInPipDirection, fraction); + if (shouldApplyCornerRadius()) { + final Rect sourceBounds = new Rect(initialContainerRect); + sourceBounds.inset(insets); + getSurfaceTransactionHelper() + .round(tx, leash, sourceBounds, bounds) + .shadow(tx, leash, shouldApplyShadowRadius()); + } } if (!handlePipTransaction(leash, tx, bounds, /* alpha= */ 1f)) { tx.apply(); @@ -798,21 +725,16 @@ public class PipAnimationController { } } final Rect sourceBounds = new Rect(initialContainerRect); - Rect relativeEndWindowFrame = null; - if (isOutPipDirection) { - relativeEndWindowFrame = rotatedEndRect; - } - if (relativeEndWindowFrame != null) { - relativeEndWindowFrame.offset(leashOffset.x, leashOffset.y); - } sourceBounds.inset(insets); getSurfaceTransactionHelper() .rotateAndScaleWithCrop(tx, leash, initialContainerRect, bounds, insets, degree, x, y, isOutPipDirection, - rotationDelta == ROTATION_270 /* clockwise */, - relativeEndWindowFrame) - .round(tx, leash, sourceBounds, bounds) - .shadow(tx, leash, shouldApplyShadowRadius()); + rotationDelta == ROTATION_270 /* clockwise */); + if (shouldApplyCornerRadius()) { + getSurfaceTransactionHelper() + .round(tx, leash, sourceBounds, bounds) + .shadow(tx, leash, shouldApplyShadowRadius()); + } if (!handlePipTransaction(leash, tx, bounds, 1f /* alpha */)) { tx.apply(); } @@ -828,7 +750,7 @@ public class PipAnimationController { void onStartTransaction(SurfaceControl leash, SurfaceControl.Transaction tx) { getSurfaceTransactionHelper() .alpha(tx, leash, 1f) - .round(tx, leash, true /* applyCornerRadius */) + .round(tx, leash, shouldApplyCornerRadius()) .shadow(tx, leash, shouldApplyShadowRadius()); tx.show(leash); tx.apply(); @@ -848,7 +770,7 @@ public class PipAnimationController { tx.setPosition(leash, 0, 0); tx.setWindowCrop(leash, 0, 0); } else { - getSurfaceTransactionHelper().cropAndPosition(tx, leash, destBounds); + getSurfaceTransactionHelper().crop(tx, leash, destBounds); } if (mContentOverlay != null) { clearContentOverlay(); diff --git a/wmshell/src/com/android/wm/shell/pip/PipSurfaceTransactionHelper.java b/wmshell/src/com/android/wm/shell/pip/PipSurfaceTransactionHelper.java index 912aa11a3b..202f60dad8 100644 --- a/wmshell/src/com/android/wm/shell/pip/PipSurfaceTransactionHelper.java +++ b/wmshell/src/com/android/wm/shell/pip/PipSurfaceTransactionHelper.java @@ -16,23 +16,14 @@ package com.android.wm.shell.pip; -import android.annotation.NonNull; import android.content.Context; import android.graphics.Matrix; -import android.graphics.Point; import android.graphics.Rect; import android.graphics.RectF; -import android.gui.BorderSettings; -import android.gui.BoxShadowSettings; import android.view.Choreographer; import android.view.SurfaceControl; -import androidx.annotation.Nullable; - -import com.android.wm.shell.Flags; import com.android.wm.shell.R; -import com.android.wm.shell.common.BoxShadowHelper; -import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.transition.Transitions; /** @@ -49,12 +40,8 @@ public class PipSurfaceTransactionHelper { private int mCornerRadius; private int mShadowRadius; - private BoxShadowSettings mBoxShadowSettings; - private BorderSettings mBorderSettings; - public PipSurfaceTransactionHelper(Context context) { onDensityOrFontScaleChanged(context); - onThemeChanged(context); } /** @@ -81,28 +68,13 @@ public class PipSurfaceTransactionHelper { * Operates the crop (and position) on a given transaction and leash * @return same {@link PipSurfaceTransactionHelper} instance for method chaining */ - public PipSurfaceTransactionHelper cropAndPosition(@NonNull SurfaceControl.Transaction tx, - @NonNull SurfaceControl leash, @NonNull Rect destinationBounds) { + public PipSurfaceTransactionHelper crop(SurfaceControl.Transaction tx, SurfaceControl leash, + Rect destinationBounds) { tx.setWindowCrop(leash, destinationBounds.width(), destinationBounds.height()) .setPosition(leash, destinationBounds.left, destinationBounds.top); return this; } - /** - * Operates {@link SurfaceControl.Transaction#setCrop} on a given transaction and leash. - * - * @param tx the transaction to apply - * @param leash the leash to crop - * @param relativeDestinationBounds the bounds to crop, which is relative to the leash - * coordinate - * @return same {@link PipSurfaceTransactionHelper} instance for method chaining - */ - public PipSurfaceTransactionHelper crop(@NonNull SurfaceControl.Transaction tx, - @NonNull SurfaceControl leash, @NonNull Rect relativeDestinationBounds) { - tx.setCrop(leash, relativeDestinationBounds); - return this; - } - /** * Operates the scale (setMatrix) on a given transaction and leash * @return same {@link PipSurfaceTransactionHelper} instance for method chaining @@ -110,73 +82,38 @@ public class PipSurfaceTransactionHelper { public PipSurfaceTransactionHelper scale(SurfaceControl.Transaction tx, SurfaceControl leash, Rect sourceBounds, Rect destinationBounds) { mTmpDestinationRectF.set(destinationBounds); - return scale(tx, leash, sourceBounds, mTmpDestinationRectF, 0 /* degrees */, - true /* shouldOffset */); + return scale(tx, leash, sourceBounds, mTmpDestinationRectF, 0 /* degrees */); } /** * Operates the scale (setMatrix) on a given transaction and leash * @return same {@link PipSurfaceTransactionHelper} instance for method chaining */ - public PipSurfaceTransactionHelper scale(@NonNull SurfaceControl.Transaction tx, - @NonNull SurfaceControl leash, @NonNull Rect sourceBounds, - @NonNull RectF destinationBounds) { - return scale(tx, leash, sourceBounds, destinationBounds, 0 /* degrees */, - true /* shouldOffset */); + public PipSurfaceTransactionHelper scale(SurfaceControl.Transaction tx, SurfaceControl leash, + Rect sourceBounds, RectF destinationBounds) { + return scale(tx, leash, sourceBounds, destinationBounds, 0 /* degrees */); } /** - * Operates the scale (setMatrix) on a given transaction and leash. - * - * @param shouldOffset {@code true} to offset the leash to (0, 0) + * Operates the scale (setMatrix) on a given transaction and leash * @return same {@link PipSurfaceTransactionHelper} instance for method chaining */ - public PipSurfaceTransactionHelper scale(@NonNull SurfaceControl.Transaction tx, - @NonNull SurfaceControl leash, @NonNull Rect sourceBounds, - @NonNull Rect destinationBounds, boolean shouldOffset) { + public PipSurfaceTransactionHelper scale(SurfaceControl.Transaction tx, SurfaceControl leash, + Rect sourceBounds, Rect destinationBounds, float degrees) { mTmpDestinationRectF.set(destinationBounds); - return scale(tx, leash, sourceBounds, mTmpDestinationRectF, 0 /* degrees */, shouldOffset); - } - - /** - * Operates the scale (setMatrix) on a given transaction and leash. - * - * @return same {@link PipSurfaceTransactionHelper} instance for method chaining - */ - public PipSurfaceTransactionHelper scale(@NonNull SurfaceControl.Transaction tx, - @NonNull SurfaceControl leash, @NonNull Rect sourceBounds, - @NonNull Rect destinationBounds, float degrees) { - return scale(tx, leash, sourceBounds, destinationBounds, degrees, true /* shouldOffset */); - } - - /** - * Operates the scale (setMatrix) on a given transaction and leash. - * - * @param shouldOffset {@code true} to offset the leash to (0, 0) - * @return same {@link PipSurfaceTransactionHelper} instance for method chaining - */ - public PipSurfaceTransactionHelper scale(@NonNull SurfaceControl.Transaction tx, - @NonNull SurfaceControl leash, @NonNull Rect sourceBounds, - @NonNull Rect destinationBounds, float degrees, boolean shouldOffset) { - mTmpDestinationRectF.set(destinationBounds); - return scale(tx, leash, sourceBounds, mTmpDestinationRectF, degrees, shouldOffset); + return scale(tx, leash, sourceBounds, mTmpDestinationRectF, degrees); } /** * Operates the scale (setMatrix) on a given transaction and leash, along with a rotation. - * - * @param shouldOffset {@code true} to offset the leash to (0, 0) * @return same {@link PipSurfaceTransactionHelper} instance for method chaining */ - public PipSurfaceTransactionHelper scale(@NonNull SurfaceControl.Transaction tx, - @NonNull SurfaceControl leash, @NonNull Rect sourceBounds, - @NonNull RectF destinationBounds, float degrees, boolean shouldOffset) { + public PipSurfaceTransactionHelper scale(SurfaceControl.Transaction tx, SurfaceControl leash, + Rect sourceBounds, RectF destinationBounds, float degrees) { mTmpSourceRectF.set(sourceBounds); // We want the matrix to position the surface relative to the screen coordinates so offset - // the source to (0, 0) if {@code shouldOffset} is true. - if (shouldOffset) { - mTmpSourceRectF.offsetTo(0, 0); - } + // the source to 0,0 + mTmpSourceRectF.offsetTo(0, 0); mTmpDestinationRectF.set(destinationBounds); mTmpTransform.setRectToRect(mTmpSourceRectF, mTmpDestinationRectF, Matrix.ScaleToFit.FILL); mTmpTransform.postRotate(degrees, @@ -186,23 +123,21 @@ public class PipSurfaceTransactionHelper { } /** - * Operates the scale (setMatrix) on a given transaction and leash. - * - * @param leashOffset the offset of the leash bounds relative to the screen coordinate + * Operates the scale (setMatrix) on a given transaction and leash * @return same {@link PipSurfaceTransactionHelper} instance for method chaining */ - public PipSurfaceTransactionHelper scaleAndCrop(@NonNull SurfaceControl.Transaction tx, - @NonNull SurfaceControl leash, @NonNull Rect sourceRectHint, @NonNull Rect sourceBounds, - @NonNull Rect destinationBounds, @NonNull Rect insets, boolean isInPipDirection, - float fraction, @NonNull Point leashOffset) { + public PipSurfaceTransactionHelper scaleAndCrop(SurfaceControl.Transaction tx, + SurfaceControl leash, Rect sourceRectHint, + Rect sourceBounds, Rect destinationBounds, Rect insets, + boolean isInPipDirection, float fraction) { mTmpDestinationRect.set(sourceBounds); // Similar to {@link #scale}, we want to position the surface relative to the screen - // coordinates so offset the bounds relative to the leash. - mTmpDestinationRect.offset(-leashOffset.x, -leashOffset.y); + // coordinates so offset the bounds to 0,0 + mTmpDestinationRect.offsetTo(0, 0); mTmpDestinationRect.inset(insets); // Scale to the bounds no smaller than the destination and offset such that the top/left // of the scaled inset source rect aligns with the top/left of the destination bounds - final float scale; + final float scale, left, top; if (isInPipDirection && sourceRectHint != null && sourceRectHint.width() < sourceBounds.width()) { // scale by sourceRectHint if it's not edge-to-edge, for entering PiP transition only. @@ -213,17 +148,14 @@ public class PipSurfaceTransactionHelper { ? (float) destinationBounds.width() / sourceBounds.width() : (float) destinationBounds.height() / sourceBounds.height(); scale = (1 - fraction) * startScale + fraction * endScale; + left = destinationBounds.left - insets.left * scale; + top = destinationBounds.top - insets.top * scale; } else { scale = Math.max((float) destinationBounds.width() / sourceBounds.width(), (float) destinationBounds.height() / sourceBounds.height()); - } - float left = destinationBounds.left - mTmpDestinationRect.left * scale; - float top = destinationBounds.top - mTmpDestinationRect.top * scale; - if (scale == 1) { - // Work around the 1 pixel off error by rounding the position down at very beginning. - // We noticed such error from flicker tests, not visually. - left = leashOffset.x; - top = leashOffset.y; + // Work around the rounding error by fix the position at very beginning. + left = scale == 1 ? 0 : destinationBounds.left - insets.left * scale; + top = scale == 1 ? 0 : destinationBounds.top - insets.top * scale; } mTmpTransform.setScale(scale, scale); tx.setMatrix(leash, mTmpTransform, mTmpFloat9) @@ -235,17 +167,12 @@ public class PipSurfaceTransactionHelper { /** * Operates the rotation according to the given degrees and scale (setMatrix) according to the * source bounds and rotated destination bounds. The crop will be the unscaled source bounds. - * - * @param relativeEndWindowFrame specified if - * {@link android.app.TaskInfo#topActivityMainWindowFrame} is provided. It's only applied for - * the animation that {@code isExpanding} PIP to original task. * @return same {@link PipSurfaceTransactionHelper} instance for method chaining */ - public PipSurfaceTransactionHelper rotateAndScaleWithCrop( - @NonNull SurfaceControl.Transaction tx, @NonNull SurfaceControl leash, - @NonNull Rect sourceBounds, @NonNull Rect destinationBounds, @NonNull Rect insets, + public PipSurfaceTransactionHelper rotateAndScaleWithCrop(SurfaceControl.Transaction tx, + SurfaceControl leash, Rect sourceBounds, Rect destinationBounds, Rect insets, float degrees, float positionX, float positionY, boolean isExpanding, - boolean clockwise, @Nullable Rect relativeEndWindowFrame) { + boolean clockwise) { mTmpDestinationRect.set(sourceBounds); mTmpDestinationRect.inset(insets); final int srcW = mTmpDestinationRect.width(); @@ -256,31 +183,23 @@ public class PipSurfaceTransactionHelper { // destination are different. final float scale = srcW <= srcH ? (float) destW / srcW : (float) destH / srcH; final Rect crop = mTmpDestinationRect; - if (isExpanding && relativeEndWindowFrame != null) { - // If relative end window frame is provided, it usually means the top activity chooses - // a customized layout which may not match parent. In this case, we should crop the - // task surface with the window frame. Note that we don't need to consider the insets - // because the main window frame excludes the insets. - crop.set(relativeEndWindowFrame); + crop.set(0, 0, Transitions.SHELL_TRANSITIONS_ROTATION ? destH + : destW, Transitions.SHELL_TRANSITIONS_ROTATION ? destW : destH); + // Inverse scale for crop to fit in screen coordinates. + crop.scale(1 / scale); + crop.offset(insets.left, insets.top); + if (isExpanding) { + // Expand bounds (shrink insets) in source orientation. + positionX -= insets.left * scale; + positionY -= insets.top * scale; } else { - crop.set(0, 0, Transitions.SHELL_TRANSITIONS_ROTATION ? destH - : destW, Transitions.SHELL_TRANSITIONS_ROTATION ? destW : destH); - // Inverse scale for crop to fit in screen coordinates. - crop.scale(1 / scale); - crop.offset(insets.left, insets.top); - if (isExpanding) { - // Expand bounds (shrink insets) in source orientation. - positionX -= insets.left * scale; - positionY -= insets.top * scale; + // Shrink bounds (expand insets) in destination orientation. + if (clockwise) { + positionX -= insets.top * scale; + positionY += insets.left * scale; } else { - // Shrink bounds (expand insets) in destination orientation. - if (clockwise) { - positionX -= insets.top * scale; - positionY += insets.left * scale; - } else { - positionX += insets.top * scale; - positionY -= insets.left * scale; - } + positionX += insets.top * scale; + positionY -= insets.left * scale; } } mTmpTransform.setScale(scale, scale); @@ -331,43 +250,10 @@ public class PipSurfaceTransactionHelper { */ public PipSurfaceTransactionHelper shadow(SurfaceControl.Transaction tx, SurfaceControl leash, boolean applyShadowRadius) { - if (Flags.enablePipBoxShadows()) { - if (applyShadowRadius) { - tx.setBoxShadowSettings(leash, mBoxShadowSettings); - tx.setBorderSettings(leash, mBorderSettings); - } else { - tx.setBoxShadowSettings(leash, new BoxShadowSettings()); - tx.setBorderSettings(leash, new BorderSettings()); - } - } else { - tx.setShadowRadius(leash, applyShadowRadius ? mShadowRadius : 0); - } + tx.setShadowRadius(leash, applyShadowRadius ? mShadowRadius : 0); return this; } - /** - * Called when theme changes. - * - * @param context the current context - */ - public void onThemeChanged(Context context) { - if (PipUtils.isDarkSystemTheme(context)) { - mBoxShadowSettings = BoxShadowHelper.getBoxShadowSettings(context, - new int[]{R.style.BoxShadowParamsPIPDark1, - R.style.BoxShadowParamsPIPDark2}); - mBorderSettings = BoxShadowHelper.getBorderSettings(context, - R.style.BorderSettingsPIPDark); - } else { - - mBoxShadowSettings = BoxShadowHelper.getBoxShadowSettings(context, - new int[]{R.style.BoxShadowParamsPIPLight1, - R.style.BoxShadowParamsPIPLight2}); - - mBorderSettings = BoxShadowHelper.getBorderSettings(context, - R.style.BorderSettingsPIPLight); - } - } - public interface SurfaceControlTransactionFactory { SurfaceControl.Transaction getTransaction(); } diff --git a/wmshell/src/com/android/wm/shell/pip/PipTaskOrganizer.java b/wmshell/src/com/android/wm/shell/pip/PipTaskOrganizer.java index a2adeb3c8f..7004b713cf 100644 --- a/wmshell/src/com/android/wm/shell/pip/PipTaskOrganizer.java +++ b/wmshell/src/com/android/wm/shell/pip/PipTaskOrganizer.java @@ -16,16 +16,20 @@ package com.android.wm.shell.pip; -import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; +import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; +import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; import static android.util.RotationUtils.deltaRotation; import static android.util.RotationUtils.rotateBounds; import static com.android.wm.shell.ShellTaskOrganizer.TASK_LISTENER_TYPE_PIP; import static com.android.wm.shell.ShellTaskOrganizer.taskListenerTypeToString; -import static com.android.wm.shell.desktopmode.DesktopModeUtils.calculateInitialBounds; -import static com.android.wm.shell.desktopmode.DesktopTasksController.DESKTOP_MODE_INITIAL_BOUNDS_SCALE; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.pip.PipAnimationController.ANIM_TYPE_ALPHA; +import static com.android.wm.shell.pip.PipAnimationController.ANIM_TYPE_BOUNDS; +import static com.android.wm.shell.pip.PipAnimationController.FRACTION_START; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_EXPAND_OR_UNEXPAND; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_LEAVE_PIP; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_LEAVE_PIP_TO_SPLIT_SCREEN; @@ -38,10 +42,7 @@ import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTI import static com.android.wm.shell.pip.PipAnimationController.isInPipDirection; import static com.android.wm.shell.pip.PipAnimationController.isOutPipDirection; import static com.android.wm.shell.pip.PipAnimationController.isRemovePipDirection; -import static com.android.wm.shell.pip.PipTransitionController.ANIM_TYPE_ALPHA; -import static com.android.wm.shell.pip.PipTransitionController.ANIM_TYPE_BOUNDS; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS; import static com.android.wm.shell.transition.Transitions.TRANSIT_EXIT_PIP; import static com.android.wm.shell.transition.Transitions.TRANSIT_EXIT_PIP_TO_SPLIT; import static com.android.wm.shell.transition.Transitions.TRANSIT_REMOVE_PIP; @@ -52,6 +53,7 @@ import android.animation.ValueAnimator; import android.annotation.NonNull; import android.annotation.Nullable; import android.app.ActivityManager; +import android.app.ActivityTaskManager; import android.app.PictureInPictureParams; import android.app.TaskInfo; import android.content.ComponentName; @@ -59,23 +61,22 @@ import android.content.Context; import android.content.pm.ActivityInfo; import android.content.res.Configuration; import android.graphics.Rect; +import android.os.RemoteException; import android.os.SystemProperties; import android.view.Choreographer; import android.view.Display; import android.view.Surface; import android.view.SurfaceControl; -import android.window.DesktopExperienceFlags; -import android.window.DisplayAreaInfo; import android.window.TaskOrganizer; import android.window.TaskSnapshot; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; -import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.ScreenshotUtils; import com.android.wm.shell.common.ShellExecutor; @@ -87,23 +88,16 @@ import com.android.wm.shell.common.pip.PipMenuController; import com.android.wm.shell.common.pip.PipPerfHintController; import com.android.wm.shell.common.pip.PipUiEventLogger; import com.android.wm.shell.common.pip.PipUtils; -import com.android.wm.shell.desktopmode.DesktopRepository; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; import com.android.wm.shell.pip.phone.PipMotionHelper; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.animation.Interpolators; import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.pip.PipContentOverlay; -import com.android.wm.shell.shared.pip.PipFlags; import com.android.wm.shell.splitscreen.SplitScreenController; -import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; import java.io.PrintWriter; import java.lang.ref.WeakReference; import java.util.Objects; import java.util.Optional; -import java.util.StringJoiner; import java.util.function.Consumer; import java.util.function.IntConsumer; @@ -149,9 +143,6 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, private final PipSurfaceTransactionHelper mSurfaceTransactionHelper; private final Optional<SplitScreenController> mSplitScreenOptional; @Nullable private final PipPerfHintController mPipPerfHintController; - private final Optional<DesktopUserRepositories> mDesktopUserRepositoriesOptional; - private final RootTaskDisplayAreaOrganizer mRootTaskDisplayAreaOrganizer; - private final DisplayController mDisplayController; protected final ShellTaskOrganizer mTaskOrganizer; protected final ShellExecutor mMainExecutor; @@ -218,9 +209,14 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, } if (mWaitForFixedRotation && animationType == ANIM_TYPE_BOUNDS && direction == TRANSITION_DIRECTION_TO_PIP) { + // Notify the display to continue the deferred orientation change. + final WindowContainerTransaction wct = new WindowContainerTransaction(); + wct.scheduleFinishEnterPip(mToken, destinationBounds); + mTaskOrganizer.applyTransaction(wct); // The final task bounds will be applied by onFixedRotationFinished so // that all coordinates are in new rotation. mSurfaceTransactionHelper.round(tx, mLeash, isInPip()); + mDeferredAnimEndTransaction = tx; return; } final boolean isExitPipDirection = isOutPipDirection(direction) @@ -336,6 +332,13 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, mSurfaceControlTransactionFactory; protected PictureInPictureParams mPictureInPictureParams; private IntConsumer mOnDisplayIdChangeCallback; + /** + * The end transaction of PiP animation for switching between PiP and fullscreen with + * orientation change. The transaction should be applied after the display is rotated. + */ + private SurfaceControl.Transaction mDeferredAnimEndTransaction; + /** Whether the existing PiP is hidden by alpha. */ + private boolean mHasFadeOut; /** * If set to {@code true}, the entering animation will be skipped and we will wait for @@ -358,7 +361,8 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, SurfaceControl mPipOverlay; /** - * The app bounds used for the buffer size of the {@link PipContentOverlay.PipAppIconOverlay}. + * The app bounds used for the buffer size of the + * {@link com.android.wm.shell.pip.PipContentOverlay.PipAppIconOverlay}. * * Note that this is empty if the overlay is removed or if it's some other type of overlay * defined in {@link PipContentOverlay}. @@ -371,7 +375,6 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, private Rect mSwipeSourceRectHint; public PipTaskOrganizer(Context context, - @NonNull ShellInit shellInit, @NonNull SyncTransactionQueue syncTransactionQueue, @NonNull PipTransitionState pipTransitionState, @NonNull PipBoundsState pipBoundsState, @@ -384,8 +387,6 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, @NonNull PipParamsChangedForwarder pipParamsChangedForwarder, Optional<SplitScreenController> splitScreenOptional, Optional<PipPerfHintController> pipPerfHintControllerOptional, - Optional<DesktopUserRepositories> desktopUserRepositoriesOptional, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, @NonNull DisplayController displayController, @NonNull PipUiEventLogger pipUiEventLogger, @NonNull ShellTaskOrganizer shellTaskOrganizer, @@ -412,26 +413,18 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, new PipSurfaceTransactionHelper.VsyncSurfaceControlTransactionFactory(); mSplitScreenOptional = splitScreenOptional; mPipPerfHintController = pipPerfHintControllerOptional.orElse(null); - mDesktopUserRepositoriesOptional = desktopUserRepositoriesOptional; - mRootTaskDisplayAreaOrganizer = rootTaskDisplayAreaOrganizer; - mDisplayController = displayController; mTaskOrganizer = shellTaskOrganizer; mMainExecutor = mainExecutor; - if (!PipFlags.isPip2ExperimentEnabled()) { - shellInit.addInitCallback(this::onInit, this); - } - } - - @VisibleForTesting - void onInit() { // TODO: Can be removed once wm components are created on the shell-main thread - mMainExecutor.execute(() -> mTaskOrganizer.addListenerForType( - this, TASK_LISTENER_TYPE_PIP)); - mPipTransitionController.setPipOrganizer(this); - mDisplayController.addDisplayWindowListener(this); - mPipTransitionController.registerPipTransitionCallback( - mPipTransitionCallback, mMainExecutor); + if (!PipUtils.isPip2ExperimentEnabled()) { + mMainExecutor.execute(() -> { + mTaskOrganizer.addListenerForType(this, TASK_LISTENER_TYPE_PIP); + }); + mPipTransitionController.setPipOrganizer(this); + displayController.addDisplayWindowListener(this); + pipTransitionController.registerPipTransitionCallback(mPipTransitionCallback); + } } public PipTransitionController getTransitionController() { @@ -502,7 +495,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "startSwipePipToHome: %s, state=%s", componentName, mPipTransitionState); mPipTransitionState.setInSwipePipToHomeTransition(true); - mPipTransitionController.onStartSwipePipToHome(); + sendOnPipTransitionStarted(TRANSITION_DIRECTION_TO_PIP); setBoundsStateForEntry(componentName, pictureInPictureParams, activityInfo); return mPipBoundsAlgorithm.getEntryDestinationBounds(); } @@ -522,7 +515,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, mPipBoundsState.setBounds(destinationBounds); setContentOverlay(overlay, appBounds); mSwipeSourceRectHint = sourceRectHint; - if (overlay != null) { + if (ENABLE_SHELL_TRANSITIONS && overlay != null) { // With Shell transition, the overlay was attached to the remote transition leash, which // will be removed when the current transition is finished, so we need to reparent it // to the actual Task surface now. @@ -612,7 +605,6 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, public void exitPip(int animationDurationMs, boolean requestEnterSplit) { if (!mPipTransitionState.isInPip() || mPipTransitionState.getTransitionState() == PipTransitionState.EXITING_PIP - || mPipTransitionState.getInSwipePipToHomeTransition() || mToken == null) { ProtoLog.wtf(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: Not allowed to exitPip in current state" @@ -688,62 +680,64 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, // won't be interrupted by alpha animation for existing PiP. mPipTransitionState.setTransitionState(PipTransitionState.EXITING_PIP); - if (requestEnterSplit && mSplitScreenOptional.isPresent()) { - wct.setWindowingMode(mToken, WINDOWING_MODE_UNDEFINED); - mSplitScreenOptional.get().onPipExpandToSplit(wct, mTaskInfo); - mPipTransitionController.startExitTransition( - TRANSIT_EXIT_PIP_TO_SPLIT, wct, destinationBounds); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + if (requestEnterSplit && mSplitScreenOptional.isPresent()) { + wct.setWindowingMode(mToken, WINDOWING_MODE_UNDEFINED); + mSplitScreenOptional.get().onPipExpandToSplit(wct, mTaskInfo); + mPipTransitionController.startExitTransition( + TRANSIT_EXIT_PIP_TO_SPLIT, wct, destinationBounds); + return; + } + + if (mSplitScreenOptional.isPresent()) { + // If pip activity will reparent to origin task case and if the origin task still + // under split root, apply exit split transaction to make it expand to fullscreen. + SplitScreenController split = mSplitScreenOptional.get(); + if (split.isTaskInSplitScreen(mTaskInfo.lastParentTaskIdBeforePip)) { + split.prepareExitSplitScreen(wct, split.getStageOfTask( + mTaskInfo.lastParentTaskIdBeforePip), + SplitScreenController.EXIT_REASON_APP_FINISHED); + } + } + mPipTransitionController.startExitTransition(TRANSIT_EXIT_PIP, wct, destinationBounds); return; } if (mSplitScreenOptional.isPresent()) { // If pip activity will reparent to origin task case and if the origin task still under - // split root, apply exit split transaction to make it expand to fullscreen. + // split root, just exit split screen here to ensure it could expand to fullscreen. SplitScreenController split = mSplitScreenOptional.get(); if (split.isTaskInSplitScreen(mTaskInfo.lastParentTaskIdBeforePip)) { - split.prepareExitSplitScreen(wct, split.getStageOfTask( - mTaskInfo.lastParentTaskIdBeforePip), + split.exitSplitScreen(INVALID_TASK_ID, SplitScreenController.EXIT_REASON_APP_FINISHED); } } - mPipTransitionController.startExitTransition(TRANSIT_EXIT_PIP, wct, destinationBounds); + mSyncTransactionQueue.queue(wct); + mSyncTransactionQueue.runInSync(t -> { + // Make sure to grab the latest source hint rect as it could have been + // updated right after applying the windowing mode change. + final Rect sourceHintRect = PipBoundsAlgorithm.getValidSourceHintRect( + mPictureInPictureParams, destinationBounds); + final PipAnimationController.PipTransitionAnimator<?> animator = + animateResizePip(mPipBoundsState.getBounds(), destinationBounds, sourceHintRect, + direction, animationDurationMs, 0 /* startingAngle */); + if (animator != null) { + // Even though the animation was started above, re-apply the transaction for the + // first frame using the SurfaceControl.Transaction supplied by the + // SyncTransactionQueue. This is necessary because the initial surface transform + // may not be applied until the next frame if a different Transaction than the one + // supplied is used, resulting in 1 frame not being cropped to the source rect + // hint during expansion that causes a visible jank/flash. See b/184166183. + animator.applySurfaceControlTransaction(mLeash, t, FRACTION_START); + } + }); } /** Returns the bounds to restore to when exiting PIP mode. */ - // TODO(b/377581840): Instead of manually tracking bounds, use bounds from Core. public Rect getExitDestinationBounds() { - if (isPipExitingToDesktopMode()) { - // If we are exiting PiP while device is in Desktop mode: - // 1) If PiP was entered via Desktop minimize (e.g. via minimize button), restore to the - // previous freeform bounds that is saved in DesktopRepository. - // 2) If PiP was entered through other means (e.g. user swipe up), exit to initial - // freeform bounds. Note that this case has a flicker at the moment (b/379984108). - Rect freeformBounds = getCurrentRepo().removeBoundsBeforeMinimize( - mTaskInfo.taskId); - return freeformBounds != null - ? freeformBounds - : calculateInitialBounds( - mDisplayController.getDisplayLayout(mTaskInfo.displayId), - mTaskInfo, - DESKTOP_MODE_INITIAL_BOUNDS_SCALE); - } return mPipBoundsState.getDisplayBounds(); } - /** Returns whether PiP is exiting while we're in desktop mode. */ - // TODO(b/377581840): Update this check to include non-minimized cases, e.g. split to PiP etc. - private boolean isPipExitingToDesktopMode() { - DesktopRepository currentRepo = getCurrentRepo(); - return DesktopExperienceFlags.ENABLE_DESKTOP_WINDOWING_PIP.isTrue() && currentRepo != null - && (currentRepo.isAnyDeskActive(mTaskInfo.displayId) - || isDisplayInFreeform()); - } - - private DesktopRepository getCurrentRepo() { - return mDesktopUserRepositoriesOptional.map(DesktopUserRepositories::getCurrent).orElse( - null); - } - private void exitLaunchIntoPipTask(WindowContainerTransaction wct) { wct.startTask(mTaskInfo.launchIntoPipHostTaskId, null /* ActivityOptions */); mTaskOrganizer.applyTransaction(wct); @@ -789,12 +783,29 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, private void removePipImmediately() { ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "removePipImmediately: %s, state=%s", mTaskInfo.topActivity, mPipTransitionState); - final WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.setBounds(mToken, null); - wct.setWindowingMode(mToken, getOutPipWindowingMode()); - wct.reorder(mToken, false); - mPipTransitionController.startExitTransition(TRANSIT_REMOVE_PIP, wct, - null /* destinationBounds */); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + final WindowContainerTransaction wct = new WindowContainerTransaction(); + wct.setBounds(mToken, null); + wct.setWindowingMode(mToken, getOutPipWindowingMode()); + wct.reorder(mToken, false); + mPipTransitionController.startExitTransition(TRANSIT_REMOVE_PIP, wct, + null /* destinationBounds */); + return; + } + + try { + // Reset the task bounds first to ensure the activity configuration is reset as well + final WindowContainerTransaction wct = new WindowContainerTransaction(); + wct.setBounds(mToken, null); + mTaskOrganizer.applyTransaction(wct); + + ActivityTaskManager.getService().removeRootTasksInWindowingModes( + new int[]{ WINDOWING_MODE_PINNED }); + } catch (RemoteException e) { + ProtoLog.e(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, + "%s: Failed to remove PiP, %s", + TAG, e); + } } @Override @@ -814,7 +825,6 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, mPictureInPictureParams.getTitle()); mPipParamsChangedForwarder.notifySubtitleChanged( mPictureInPictureParams.getSubtitle()); - logRemoteActions(mPictureInPictureParams); } mPipUiEventLoggerLogger.setTaskInfo(mTaskInfo); @@ -841,7 +851,9 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, "onTaskAppeared: %s, state=%s, taskId=%s", mTaskInfo.topActivity, mPipTransitionState, mTaskInfo.taskId); if (mPipTransitionState.getInSwipePipToHomeTransition()) { - if (mWaitForFixedRotation) { + if (!mWaitForFixedRotation) { + onEndOfSwipePipToHomeTransition(); + } else { ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: Defer onTaskAppeared-SwipePipToHome until end of fixed rotation.", TAG); @@ -852,7 +864,64 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, final int animationType = shouldAlwaysFadeIn() ? ANIM_TYPE_ALPHA : mPipAnimationController.takeOneShotEnterAnimationType(); - mPipTransitionController.setEnterAnimationType(animationType); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + mPipTransitionController.setEnterAnimationType(animationType); + // For Shell transition, we will animate the window in PipTransition#startAnimation + // instead of #onTaskAppeared. + return; + } + + if (mWaitForFixedRotation) { + onTaskAppearedWithFixedRotation(animationType); + return; + } + + if (shouldAttachMenuEarly()) { + mPipMenuController.attach(mLeash); + } + final Rect destinationBounds = mPipBoundsAlgorithm.getEntryDestinationBounds(); + Objects.requireNonNull(destinationBounds, "Missing destination bounds"); + final Rect currentBounds = mTaskInfo.configuration.windowConfiguration.getBounds(); + + if (animationType == ANIM_TYPE_BOUNDS) { + if (!shouldAttachMenuEarly()) { + mPipMenuController.attach(mLeash); + } + final Rect sourceHintRect = PipBoundsAlgorithm.getValidSourceHintRect( + info.pictureInPictureParams, currentBounds); + scheduleAnimateResizePip(currentBounds, destinationBounds, 0 /* startingAngle */, + sourceHintRect, TRANSITION_DIRECTION_TO_PIP, mEnterAnimationDuration, + null /* updateBoundsCallback */); + mPipTransitionState.setTransitionState(PipTransitionState.ENTERING_PIP); + } else if (animationType == ANIM_TYPE_ALPHA) { + enterPipWithAlphaAnimation(destinationBounds, mEnterAnimationDuration); + } else { + throw new RuntimeException("Unrecognized animation type: " + animationType); + } + } + + private void onTaskAppearedWithFixedRotation(int animationType) { + ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, + "onTaskAppearedWithFixedRotation: %s, state=%s animationType=%d", + mTaskInfo.topActivity, mPipTransitionState, animationType); + if (animationType == ANIM_TYPE_ALPHA) { + ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, + "%s: Defer entering PiP alpha animation, fixed rotation is ongoing", TAG); + // If deferred, hside the surface till fixed rotation is completed. + final SurfaceControl.Transaction tx = + mSurfaceControlTransactionFactory.getTransaction(); + tx.setAlpha(mLeash, 0f); + tx.show(mLeash); + tx.apply(); + return; + } + final Rect currentBounds = mTaskInfo.configuration.windowConfiguration.getBounds(); + final Rect sourceHintRect = PipBoundsAlgorithm.getValidSourceHintRect( + mPictureInPictureParams, currentBounds); + final Rect destinationBounds = mPipBoundsAlgorithm.getEntryDestinationBounds(); + animateResizePip(currentBounds, destinationBounds, sourceHintRect, + TRANSITION_DIRECTION_TO_PIP, mEnterAnimationDuration, 0 /* startingAngle */); + mPipTransitionState.setTransitionState(PipTransitionState.ENTERING_PIP); } /** @@ -883,7 +952,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, final SurfaceControl.Transaction boundsChangeTx = mSurfaceControlTransactionFactory.getTransaction(); mSurfaceTransactionHelper - .cropAndPosition(boundsChangeTx, mLeash, destinationBounds) + .crop(boundsChangeTx, mLeash, destinationBounds) .round(boundsChangeTx, mLeash, true /* applyCornerRadius */); mPipTransitionState.setTransitionState(PipTransitionState.ENTRY_SCHEDULED); @@ -901,6 +970,34 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, }, boundsChangeTx); } + private void onEndOfSwipePipToHomeTransition() { + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + return; + } + + final Rect destinationBounds = mPipBoundsState.getBounds(); + final SurfaceControl swipeToHomeOverlay = mPipOverlay; + final SurfaceControl.Transaction tx = mSurfaceControlTransactionFactory.getTransaction(); + mSurfaceTransactionHelper + .resetScale(tx, mLeash, destinationBounds) + .crop(tx, mLeash, destinationBounds) + .round(tx, mLeash, isInPip()); + // The animation is finished in the Launcher and here we directly apply the final touch. + applyEnterPipSyncTransaction(destinationBounds, () -> { + // Ensure menu's settled in its final bounds first. + finishResizeForMenu(destinationBounds); + sendOnPipTransitionFinished(TRANSITION_DIRECTION_TO_PIP); + + // Remove the swipe to home overlay + if (swipeToHomeOverlay != null) { + fadeOutAndRemoveOverlay(swipeToHomeOverlay, + null /* callback */, false /* withStartDelay */); + } + }, tx); + mPipTransitionState.setInSwipePipToHomeTransition(false); + mPipOverlay = null; + } + private void applyEnterPipSyncTransaction(Rect destinationBounds, Runnable runnable, @Nullable SurfaceControl.Transaction boundsChangeTransaction) { // PiP menu is attached late in the process here to avoid any artifacts on the leash @@ -957,7 +1054,8 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, if (mPipTransitionState.getTransitionState() == PipTransitionState.UNDEFINED) { return; } - if (mPipTransitionState.getTransitionState() == PipTransitionState.EXITING_PIP) { + if (Transitions.ENABLE_SHELL_TRANSITIONS + && mPipTransitionState.getTransitionState() == PipTransitionState.EXITING_PIP) { // With Shell transition, we do the cleanup in PipTransition after exiting PIP. return; } @@ -972,7 +1070,9 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, cancelAnimationOnTaskVanished(); onExitPipFinished(info); - mPipTransitionController.forceFinishTransition(); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + mPipTransitionController.forceFinishTransition(); + } } protected void cancelAnimationOnTaskVanished() { @@ -1006,7 +1106,6 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, } applyNewPictureInPictureParams(newParams); mPictureInPictureParams = newParams; - logRemoteActions(mPictureInPictureParams); } @Override @@ -1040,12 +1139,20 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, mNextRotation = newRotation; mWaitForFixedRotation = true; - // The fixed rotation will also be included in the transition info. However, if it is - // not a PIP transition (such as open another app to different orientation), - // PIP transition handler may not be aware of the fixed rotation start. - // Notify the PIP transition handler so that it can fade out the PIP window early for - // fixed transition of other windows. - mPipTransitionController.onFixedRotationStarted(); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + // The fixed rotation will also be included in the transition info. However, if it is + // not a PIP transition (such as open another app to different orientation), + // PIP transition handler may not be aware of the fixed rotation start. + // Notify the PIP transition handler so that it can fade out the PIP window early for + // fixed transition of other windows. + mPipTransitionController.onFixedRotationStarted(); + return; + } + + if (mPipTransitionState.isInPip()) { + // Fade out the existing PiP to avoid jump cut during seamless rotation. + fadeExistingPip(false /* show */); + } } @Override @@ -1055,7 +1162,33 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, if (!mWaitForFixedRotation) { return; } - mPipTransitionController.onFixedRotationFinished(); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + mPipTransitionController.onFixedRotationFinished(); + clearWaitForFixedRotation(); + return; + } + if (mPipTransitionState.getTransitionState() == PipTransitionState.TASK_APPEARED) { + if (mPipTransitionState.getInSwipePipToHomeTransition()) { + onEndOfSwipePipToHomeTransition(); + } else { + // Schedule a regular animation to ensure all the callbacks are still being sent. + enterPipWithAlphaAnimation(mPipBoundsAlgorithm.getEntryDestinationBounds(), + mEnterAnimationDuration); + } + } else if (mPipTransitionState.getTransitionState() == PipTransitionState.ENTERED_PIP + && mHasFadeOut) { + fadeExistingPip(true /* show */); + } else if (mPipTransitionState.getTransitionState() == PipTransitionState.ENTERING_PIP + && mDeferredAnimEndTransaction != null) { + final PipAnimationController.PipTransitionAnimator<?> animator = + mPipAnimationController.getCurrentAnimator(); + final Rect destinationBounds = animator.getDestinationBounds(); + mPipBoundsState.setBounds(destinationBounds); + applyEnterPipSyncTransaction(destinationBounds, () -> { + finishResizeForMenu(destinationBounds); + sendOnPipTransitionFinished(TRANSITION_DIRECTION_TO_PIP); + }, mDeferredAnimEndTransaction); + } clearWaitForFixedRotation(); } @@ -1091,8 +1224,26 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, } } + private void fadeExistingPip(boolean show) { + if (mLeash == null || !mLeash.isValid()) { + ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, + "%s: Invalid leash on fadeExistingPip: %s", TAG, mLeash); + return; + } + final float alphaStart = show ? 0 : 1; + final float alphaEnd = show ? 1 : 0; + mPipAnimationController + .getAnimator(mTaskInfo, mLeash, mPipBoundsState.getBounds(), alphaStart, alphaEnd) + .setTransitionDirection(TRANSITION_DIRECTION_SAME) + .setPipTransactionHandler(mPipTransactionHandler) + .setDuration(show ? mEnterAnimationDuration : mExitAnimationDuration) + .start(); + mHasFadeOut = !show; + } + private void clearWaitForFixedRotation() { mWaitForFixedRotation = false; + mDeferredAnimEndTransaction = null; } /** Explicitly set the visibility of PiP window. */ @@ -1155,9 +1306,12 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, if (animator == null || !animator.isRunning() || animator.getTransitionDirection() != TRANSITION_DIRECTION_TO_PIP) { final boolean rotatingPip = mPipTransitionState.isInPip() && fromRotation; - if (rotatingPip) { + if (rotatingPip && Transitions.ENABLE_SHELL_TRANSITIONS) { // The animation and surface update will be handled by the shell transition handler. mPipBoundsState.setBounds(destinationBoundsOut); + } else if (rotatingPip && mWaitForFixedRotation && mHasFadeOut) { + // The position will be used by fade-in animation when the fixed rotation is done. + mPipBoundsState.setBounds(destinationBoundsOut); } else if (rotatingPip) { // Update bounds state to final destination first. It's important to do this // before finishing & cancelling the transition animation so that the MotionHelper @@ -1260,16 +1414,6 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, } } - private void logRemoteActions(@NonNull PictureInPictureParams params) { - StringJoiner sj = new StringJoiner("|", "[", "]"); - if (params.hasSetActions()) { - params.getActions().forEach((action) -> sj.add(action.getTitle())); - } - - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s: PIP remote actions=%s", TAG, sj.toString()); - } - /** * Animates resizing of the pinned stack given the duration. */ @@ -1362,7 +1506,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, mPipBoundsState.setBounds(toBounds); final SurfaceControl.Transaction tx = mSurfaceControlTransactionFactory.getTransaction(); mSurfaceTransactionHelper - .cropAndPosition(tx, mLeash, toBounds) + .crop(tx, mLeash, toBounds) .round(tx, mLeash, mPipTransitionState.isInPip()); if (shouldSyncPipTransactionWithMenu()) { mPipMenuController.resizePipMenu(mLeash, tx, toBounds); @@ -1465,7 +1609,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, Rect destinationBounds) { final SurfaceControl.Transaction tx = mSurfaceControlTransactionFactory.getTransaction(); mSurfaceTransactionHelper - .cropAndPosition(tx, mLeash, destinationBounds) + .crop(tx, mLeash, destinationBounds) .resetScale(tx, mLeash, destinationBounds) .round(tx, mLeash, mPipTransitionState.isInPip()); return tx; @@ -1507,7 +1651,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, private void finishResize(SurfaceControl.Transaction tx, Rect destinationBounds, @PipAnimationController.TransitionDirection int direction, - @PipTransitionController.AnimationType int type) { + @PipAnimationController.AnimationType int type) { final Rect preResizeBounds = new Rect(mPipBoundsState.getBounds()); mPipBoundsState.setBounds(destinationBounds); if (direction == TRANSITION_DIRECTION_REMOVE_STACK) { @@ -1640,35 +1784,12 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, == SPLIT_POSITION_TOP_OR_LEFT; } - private boolean isDisplayInFreeform() { - final DisplayAreaInfo tdaInfo = mRootTaskDisplayAreaOrganizer.getDisplayAreaInfo( - mTaskInfo.displayId); - if (tdaInfo != null) { - return tdaInfo.configuration.windowConfiguration.getWindowingMode() - == WINDOWING_MODE_FREEFORM; - } - return false; - } - /** * The windowing mode to restore to when resizing out of PIP direction. Defaults to undefined * and can be overridden to restore to an alternate windowing mode. */ public int getOutPipWindowingMode() { - // If we are exiting PiP while the device is in Desktop mode (the task should expand to - // freeform windowing mode): - // 1) If the display windowing mode is freeform, set windowing mode to undefined so it will - // resolve the windowing mode to the display's windowing mode. - // 2) If the display windowing mode is not freeform, set windowing mode to freeform. - if (isPipExitingToDesktopMode()) { - if (isDisplayInFreeform()) { - return WINDOWING_MODE_UNDEFINED; - } else { - return WINDOWING_MODE_FREEFORM; - } - } - - // By default, or if the task is going to fullscreen, reset the windowing mode to undefined. + // By default, simply reset the windowing mode to undefined. return WINDOWING_MODE_UNDEFINED; } @@ -1698,11 +1819,9 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, ? mPipBoundsState.getBounds() : currentBounds; final boolean existingAnimatorRunning = mPipAnimationController.getCurrentAnimator() != null && mPipAnimationController.getCurrentAnimator().isRunning(); - // For resize animation, we always animate the whole PIP task bounds. final PipAnimationController.PipTransitionAnimator<?> animator = mPipAnimationController .getAnimator(mTaskInfo, mLeash, baseBounds, currentBounds, destinationBounds, - sourceHintRect, direction, startingAngle, rotationDelta, - true /* alwaysAnimateTaskBounds */); + sourceHintRect, direction, startingAngle, rotationDelta); animator.setTransitionDirection(direction) .setPipTransactionHandler(mPipTransactionHandler) .setDuration(durationMs); @@ -1860,6 +1979,12 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, } clearContentOverlay(); } + if (mPipTransitionState.getTransitionState() == PipTransitionState.UNDEFINED) { + // Avoid double removal, which is fatal. + ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, + "%s: trying to remove overlay (%s) while in UNDEFINED state", TAG, surface); + return; + } if (surface == null || !surface.isValid()) { ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: trying to remove invalid content overlay (%s)", TAG, surface); @@ -1891,14 +2016,11 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, return; } final SurfaceControl.Transaction tx = mSurfaceControlTransactionFactory.getTransaction(); - mSurfaceTransactionHelper.shadow(tx, mLeash, false /* applyShadowRadius */); + tx.setShadowRadius(mLeash, 0f); tx.apply(); } - /** - * Cancels the currently running animator if there is one and removes an overlay if present. - */ - public void cancelCurrentAnimator() { + private void cancelCurrentAnimator() { final PipAnimationController.PipTransitionAnimator<?> animator = mPipAnimationController.getCurrentAnimator(); // remove any overlays if present @@ -1906,7 +2028,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, removeContentOverlay(mPipOverlay, null /* callback */); } if (animator != null) { - animator.cancel(); + PipAnimationController.quietCancel(animator); mPipAnimationController.resetAnimatorState(); } } @@ -1946,16 +2068,4 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener, public String toString() { return TAG + ":" + taskListenerTypeToString(TASK_LISTENER_TYPE_PIP); } - - /** - * Called when the theme changes. - */ - public void onThemeChanged(Context context) { - if (isInPip()) { - mSurfaceTransactionHelper.onThemeChanged(context); - SurfaceControl.Transaction tx = mSurfaceControlTransactionFactory.getTransaction(); - mSurfaceTransactionHelper.shadow(tx, mLeash, true /* applyShadowRadius */); - tx.apply(); - } - } } diff --git a/wmshell/src/com/android/wm/shell/pip/PipTransition.java b/wmshell/src/com/android/wm/shell/pip/PipTransition.java index 9a73361a4e..3cae72d89e 100644 --- a/wmshell/src/com/android/wm/shell/pip/PipTransition.java +++ b/wmshell/src/com/android/wm/shell/pip/PipTransition.java @@ -21,28 +21,27 @@ import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; import static android.util.RotationUtils.deltaRotation; import static android.util.RotationUtils.rotateBounds; -import static android.view.Surface.ROTATION_0; import static android.view.Surface.ROTATION_270; import static android.view.Surface.ROTATION_90; import static android.view.WindowManager.TRANSIT_CHANGE; -import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManager.TRANSIT_OPEN; import static android.view.WindowManager.TRANSIT_PIP; import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.view.WindowManager.TRANSIT_TO_FRONT; +import static android.view.WindowManager.transitTypeToString; import static android.window.TransitionInfo.FLAG_IS_DISPLAY; +import static com.android.wm.shell.pip.PipAnimationController.ANIM_TYPE_ALPHA; +import static com.android.wm.shell.pip.PipAnimationController.ANIM_TYPE_BOUNDS; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_LEAVE_PIP; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_SAME; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_TO_PIP; import static com.android.wm.shell.pip.PipAnimationController.isInPipDirection; import static com.android.wm.shell.pip.PipAnimationController.isOutPipDirection; import static com.android.wm.shell.pip.PipTransitionState.ENTERED_PIP; -import static com.android.wm.shell.transition.Transitions.TRANSIT_CLEANUP_PIP_EXIT; import static com.android.wm.shell.transition.Transitions.TRANSIT_EXIT_PIP; import static com.android.wm.shell.transition.Transitions.TRANSIT_EXIT_PIP_TO_SPLIT; import static com.android.wm.shell.transition.Transitions.TRANSIT_REMOVE_PIP; -import static com.android.wm.shell.transition.Transitions.transitTypeToString; import android.annotation.IntDef; import android.app.ActivityManager; @@ -63,10 +62,9 @@ import android.window.WindowContainerTransaction; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.common.ComponentUtils; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; import com.android.wm.shell.common.pip.PipBoundsState; import com.android.wm.shell.common.pip.PipDisplayLayoutState; @@ -74,8 +72,6 @@ import com.android.wm.shell.common.pip.PipMenuController; import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.pip.PipContentOverlay; -import com.android.wm.shell.shared.pip.PipFlags; import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.CounterRotatorHelper; @@ -115,7 +111,7 @@ public class PipTransition extends PipTransitionController { private final HomeTransitionObserver mHomeTransitionObserver; private final Optional<SplitScreenController> mSplitScreenOptional; private final PipAnimationController mPipAnimationController; - private @AnimationType int mEnterAnimationType = ANIM_TYPE_BOUNDS; + private @PipAnimationController.AnimationType int mEnterAnimationType = ANIM_TYPE_BOUNDS; private Transitions.TransitionFinishCallback mFinishCallback; private SurfaceControl.Transaction mFinishTransaction; private final Rect mExitDestinationBounds = new Rect(); @@ -124,8 +120,6 @@ public class PipTransition extends PipTransitionController { @Nullable private IBinder mMoveToBackTransition; private IBinder mRequestedEnterTransition; - private IBinder mCleanupTransition; - private WindowContainerToken mRequestedEnterTask; /** The Task window that is currently in PIP windowing mode. */ @Nullable @@ -189,16 +183,11 @@ public class PipTransition extends PipTransitionController { @Override protected void onInit() { - if (!PipFlags.isPip2ExperimentEnabled()) { + if (!PipUtils.isPip2ExperimentEnabled()) { mTransitions.addHandler(this); } } - @Override - protected boolean isInSwipePipToHomeTransition() { - return mPipTransitionState.getInSwipePipToHomeTransition(); - } - @Override public void startExitTransition(int type, WindowContainerTransaction out, @Nullable Rect destinationBounds) { @@ -236,12 +225,10 @@ public class PipTransition extends PipTransitionController { // Exiting PIP. final int type = info.getType(); - if (transition.equals(mExitTransition) || transition.equals(mMoveToBackTransition) - || transition.equals(mCleanupTransition)) { + if (transition.equals(mExitTransition) || transition.equals(mMoveToBackTransition)) { mExitDestinationBounds.setEmpty(); mExitTransition = null; mMoveToBackTransition = null; - mCleanupTransition = null; mHasFadeOut = false; if (mFinishCallback != null) { callFinishCallback(null /* wct */); @@ -275,9 +262,6 @@ public class PipTransition extends PipTransitionController { removePipImmediately(info, startTransaction, finishTransaction, finishCallback, pipTaskInfo); break; - case TRANSIT_CLEANUP_PIP_EXIT: - cleanupPipExitTransition(startTransaction, finishCallback); - break; default: throw new IllegalStateException("mExitTransition with unexpected transit type=" + transitTypeToString(type)); @@ -299,20 +283,6 @@ public class PipTransition extends PipTransitionController { // Entering PIP. if (isEnteringPip(info)) { - if (!mPipTransitionState.isInPip() && TransitionUtil.hasDisplayChange(info)) { - final TransitionInfo.Change pipChange = getPipChange(info); - if (pipChange != null) { - // Clear old crop. - updatePipForUnhandledTransition(pipChange, startTransaction, finishTransaction); - } - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s: ignore exited PiP with display change", TAG); - // This should be an exited pip. E.g. a display change transition happens when - // the exiting pip is animating, then mergeAnimation -> end -> onFinishResize -> - // onExitPipFinished was called, i.e. pip state is UNDEFINED. So do not handle - // the incoming transition as entering pip. - return false; - } if (handleEnteringPipWithDisplayChange(transition, info, startTransaction, finishTransaction, finishCallback)) { // The destination position is applied directly and let default transition handler @@ -330,10 +300,6 @@ public class PipTransition extends PipTransitionController { finishTransaction); } - if (isCurrentPipActivityClosed(info)) { - mPipBoundsState.setLastPipComponentName(null /* componentName */); - } - return false; } @@ -356,26 +322,9 @@ public class PipTransition extends PipTransitionController { return true; } - private boolean isCurrentPipActivityClosed(TransitionInfo info) { - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - TransitionInfo.Change change = info.getChanges().get(i); - boolean isTaskChange = change.getTaskInfo() != null; - boolean hasComponentNameOfPip = change.getActivityComponent() != null - && change.getActivityComponent().equals( - mPipBoundsState.getLastPipComponentName()); - if (!isTaskChange && change.getMode() == TRANSIT_CLOSE && hasComponentNameOfPip) { - return true; - } - } - return false; - } - - @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { end(); } @@ -440,15 +389,6 @@ public class PipTransition extends PipTransitionController { } } - @Override - public void cleanUpState() { - ActivityManager.RunningTaskInfo taskInfo = mPipOrganizer.getTaskInfo(); - if (taskInfo != null) { - mPipOrganizer.onExitPipFinished(taskInfo); - mPipBoundsState.setLastPipComponentName(null); - } - } - @Override public boolean handleRotateDisplay(int startRotation, int endRotation, WindowContainerTransaction wct) { @@ -474,7 +414,7 @@ public class PipTransition extends PipTransitionController { // so update fixed rotation state to default. mFixedRotationState = FIXED_ROTATION_UNDEFINED; - if (transition != mExitTransition && transition != mMoveToBackTransition) { + if (transition != mExitTransition) { return; } // This means an expand happened before enter-pip finished and we are now "merging" a @@ -488,10 +428,8 @@ public class PipTransition extends PipTransitionController { cancelled = true; } - // Unset both exitTransition and moveToBackTransition AFTER cancel so that - // finishResize knows we are merging. + // Unset exitTransition AFTER cancel so that finishResize knows we are merging. mExitTransition = null; - mMoveToBackTransition = null; if (!cancelled) return; final ActivityManager.RunningTaskInfo taskInfo = mPipOrganizer.getTaskInfo(); if (taskInfo != null) { @@ -517,8 +455,8 @@ public class PipTransition extends PipTransitionController { } @Override - public void onFinishResize(@NonNull TaskInfo taskInfo, @NonNull Rect destinationBounds, - @NonNull Point leashOffset, @PipAnimationController.TransitionDirection int direction, + public void onFinishResize(TaskInfo taskInfo, Rect destinationBounds, + @PipAnimationController.TransitionDirection int direction, @NonNull SurfaceControl.Transaction tx) { final boolean enteringPip = isInPipDirection(direction); if (enteringPip) { @@ -528,8 +466,7 @@ public class PipTransition extends PipTransitionController { // means we're expecting the exit transition will be "merged" into another transition // (likely a remote like launcher), so don't fire the finish-callback here -- wait until // the exit transition is merged. - if ((mExitTransition == null || mMoveToBackTransition == null || isAnimatingLocally()) - && mFinishCallback != null) { + if ((mExitTransition == null || isAnimatingLocally()) && mFinishCallback != null) { final SurfaceControl leash = mPipOrganizer.getSurfaceControl(); final boolean hasValidLeash = leash != null && leash.isValid(); WindowContainerTransaction wct = null; @@ -541,17 +478,6 @@ public class PipTransition extends PipTransitionController { if (mFixedRotationState != FIXED_ROTATION_TRANSITION && mFinishTransaction != null) { mFinishTransaction.merge(tx); - // Set crop and position to destination bounds to avoid flickering. - if (hasValidLeash) { - final Rect relativeDestinationBounds = new Rect(destinationBounds); - relativeDestinationBounds.offset(-leashOffset.x, -leashOffset.y); - mFinishTransaction - .setCrop(leash, relativeDestinationBounds) - // Note that we should set the position to the start position of - // leash then the visible region will be at the same place even if - // the crop region doesn't start at (0, 0). - .setPosition(leash, leashOffset.x, leashOffset.y); - } } } else { wct = new WindowContainerTransaction(); @@ -573,7 +499,7 @@ public class PipTransition extends PipTransitionController { } // Reset the scale with bounds change synchronously. if (hasValidLeash) { - mSurfaceTransactionHelper.cropAndPosition(tx, leash, destinationBounds) + mSurfaceTransactionHelper.crop(tx, leash, destinationBounds) .resetScale(tx, leash, destinationBounds) .round(tx, leash, true /* applyCornerRadius */); final Rect appBounds = mPipOrganizer.mAppBounds; @@ -610,8 +536,7 @@ public class PipTransition extends PipTransitionController { ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: Destination bounds were changed during animation", TAG); rotateBounds(finishBounds, displayBounds, mEndFixedRotation, displayRotation); - mSurfaceTransactionHelper.cropAndPosition(mFinishTransaction, leash, - finishBounds); + mSurfaceTransactionHelper.crop(mFinishTransaction, leash, finishBounds); } } mFinishTransaction = null; @@ -691,6 +616,17 @@ public class PipTransition extends PipTransitionController { return null; } + @Nullable + private TransitionInfo.Change findFixedRotationChange(@NonNull TransitionInfo info) { + for (int i = info.getChanges().size() - 1; i >= 0; --i) { + final TransitionInfo.Change change = info.getChanges().get(i); + if (change.getEndFixedRotation() != ROTATION_UNDEFINED) { + return change; + } + } + return null; + } + private void startExitAnimation(@NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @@ -792,19 +728,7 @@ public class PipTransition extends PipTransitionController { mPipAnimationController.resetAnimatorState(); finishTransaction.remove(pipLeash); } - - if (mFixedRotationState == FIXED_ROTATION_TRANSITION) { - // TODO(b/358226697): start a new transition with the WCT instead of applying it in - // the {@link finishCallback}, to ensure shell creates a transition for it. - finishCallback.onTransitionFinished(wct); - } else { - // Apply wct in separate transition so that it can be correctly handled by the - // {@link FreeformTaskTransitionObserver} when desktop windowing (which does not - // utilize fixed rotation transitions for exiting pip) is enabled (See b/288910069). - mCleanupTransition = mTransitions.startTransition( - TRANSIT_CLEANUP_PIP_EXIT, wct, this); - finishCallback.onTransitionFinished(null); - } + finishCallback.onTransitionFinished(wct); }; mFinishTransaction = finishTransaction; @@ -854,8 +778,7 @@ public class PipTransition extends PipTransitionController { } mSurfaceTransactionHelper.rotateAndScaleWithCrop(finishTransaction, pipLeash, endBounds, endBounds, new Rect(), degree, x, y, - true /* isExpanding */, rotationDelta == ROTATION_270 /* clockwise */, - null /* relativeEndWindowFrame */); + true /* isExpanding */, rotationDelta == ROTATION_270 /* clockwise */); } else { rotationDelta = Surface.ROTATION_0; } @@ -879,9 +802,7 @@ public class PipTransition extends PipTransitionController { // Get the start bounds in new orientation. final Rect startBounds = new Rect(pipChange.getStartAbsBounds()); rotateBounds(startBounds, displayRotationChange.getStartAbsBounds(), rotateDelta); - final Rect windowFrame = taskInfo.topActivityMainWindowFrame; - final Rect endBounds = new Rect(windowFrame != null - ? windowFrame : pipChange.getEndAbsBounds()); + final Rect endBounds = new Rect(pipChange.getEndAbsBounds()); startBounds.offset(-offset.x, -offset.y); endBounds.offset(-offset.x, -offset.y); @@ -901,7 +822,7 @@ public class PipTransition extends PipTransitionController { } mSurfaceTransactionHelper.rotateAndScaleWithCrop(startTransaction, pipChange.getLeash(), endBounds, startBounds, new Rect(), degree, x, y, true /* isExpanding */, - pipRotateDelta == ROTATION_270 /* clockwise */, null /* relativeEndWindowFrame */); + pipRotateDelta == ROTATION_270 /* clockwise */); startTransaction.apply(); rotator.cleanUp(finishTransaction); @@ -909,8 +830,7 @@ public class PipTransition extends PipTransitionController { final PipAnimationController.PipTransitionAnimator animator = mPipAnimationController.getAnimator(taskInfo, pipChange.getLeash(), startBounds, startBounds, endBounds, null, TRANSITION_DIRECTION_LEAVE_PIP, - 0 /* startingAngle */, pipRotateDelta, - false /* alwaysAnimateTaskBounds */); + 0 /* startingAngle */, pipRotateDelta); animator.setTransitionDirection(TRANSITION_DIRECTION_LEAVE_PIP) .setPipAnimationCallback(mPipAnimationCallback) .setDuration(mEnterExitAnimationDuration) @@ -925,7 +845,7 @@ public class PipTransition extends PipTransitionController { final PipAnimationController.PipTransitionAnimator animator = mPipAnimationController.getAnimator(taskInfo, leash, baseBounds, startBounds, endBounds, sourceHintRect, TRANSITION_DIRECTION_LEAVE_PIP, - 0 /* startingAngle */, rotationDelta, false /* alwaysAnimateTaskBounds */); + 0 /* startingAngle */, rotationDelta); animator.setTransitionDirection(TRANSITION_DIRECTION_LEAVE_PIP) .setDuration(mEnterExitAnimationDuration); if (startTransaction != null) { @@ -954,16 +874,6 @@ public class PipTransition extends PipTransitionController { finishCallback.onTransitionFinished(null); } - /** - * For {@link Transitions#TRANSIT_CLEANUP_PIP_EXIT} which applies final config changes needed - * after the exit from pip transition animation finishes. - */ - private void cleanupPipExitTransition(@NonNull SurfaceControl.Transaction startTransaction, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - startTransaction.apply(); - finishCallback.onTransitionFinished(null); - } - /** Whether we should handle the given {@link TransitionInfo} animation as entering PIP. */ private boolean isEnteringPip(@NonNull TransitionInfo info) { for (int i = info.getChanges().size() - 1; i >= 0; --i) { @@ -1002,7 +912,7 @@ public class PipTransition extends PipTransitionController { } @Override - public void setEnterAnimationType(@AnimationType int type) { + public void setEnterAnimationType(@PipAnimationController.AnimationType int type) { mEnterAnimationType = type; } @@ -1090,16 +1000,8 @@ public class PipTransition extends PipTransitionController { mPipMenuController.attach(leash); } - // Make sure we have the launcher shelf into destination bounds calculation - // before the animator starts. - mPipBoundsState.mayUseCachedLauncherShelfHeight(); final Rect destinationBounds = mPipBoundsAlgorithm.getEntryDestinationBounds(); final Rect currentBounds = pipChange.getStartAbsBounds(); - // The app bounds should offset relative to the task leash to make the center calculation - // correctly. - final Rect relativeAppBounds = new Rect(taskInfo.topActivityMainWindowFrame != null - ? taskInfo.topActivityMainWindowFrame : currentBounds); - relativeAppBounds.offset(-currentBounds.left, -currentBounds.top); int rotationDelta = deltaRotation(startRotation, endRotation); Rect sourceHintRect = mPipOrganizer.takeSwipeSourceRectHint(); @@ -1126,8 +1028,6 @@ public class PipTransition extends PipTransitionController { return; } - // NOTE(b/365300020): Legacy enter PiP path, clear the swipe state. - mPipTransitionState.setInSwipePipToHomeTransition(false); final int enterAnimationType = mEnterAnimationType; if (enterAnimationType == ANIM_TYPE_ALPHA) { startTransaction.setAlpha(leash, 0f); @@ -1142,7 +1042,7 @@ public class PipTransition extends PipTransitionController { if (enterAnimationType == ANIM_TYPE_BOUNDS) { animator = mPipAnimationController.getAnimator(taskInfo, leash, currentBounds, currentBounds, destinationBounds, sourceHintRect, TRANSITION_DIRECTION_TO_PIP, - 0 /* startingAngle */, rotationDelta, false /* alwaysAnimateTaskBounds */); + 0 /* startingAngle */, rotationDelta); if (sourceHintRect == null) { // We use content overlay when there is no source rect hint to enter PiP use bounds // animation. We also temporarily disallow app icon overlay and use color overlay @@ -1151,8 +1051,8 @@ public class PipTransition extends PipTransitionController { // TODO(b/272819817): cleanup the null-check and extra logging. final boolean hasTopActivityInfo = taskInfo.topActivityInfo != null; if (hasTopActivityInfo && mFixedRotationState != FIXED_ROTATION_TRANSITION) { - animator.setAppIconContentOverlay(mContext, relativeAppBounds, - destinationBounds, taskInfo.topActivityInfo, + animator.setAppIconContentOverlay( + mContext, currentBounds, destinationBounds, taskInfo.topActivityInfo, mPipBoundsState.getLauncherState().getAppIconSizePx()); } else { ProtoLog.w(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, @@ -1181,14 +1081,14 @@ public class PipTransition extends PipTransitionController { animationDuration = 0; } mSurfaceTransactionHelper - .cropAndPosition(finishTransaction, leash, destinationBounds) + .crop(finishTransaction, leash, destinationBounds) .round(finishTransaction, leash, true /* applyCornerRadius */); // Always reset to bounds animation type afterwards. setEnterAnimationType(ANIM_TYPE_BOUNDS); } else { throw new RuntimeException("Unrecognized animation type: " + enterAnimationType); } - mPipOrganizer.setContentOverlay(animator.getContentOverlayLeash(), relativeAppBounds); + mPipOrganizer.setContentOverlay(animator.getContentOverlayLeash(), currentBounds); animator.setTransitionDirection(TRANSITION_DIRECTION_TO_PIP) .setPipAnimationCallback(mPipAnimationCallback) .setDuration(animationDuration); @@ -1253,26 +1153,11 @@ public class PipTransition extends PipTransitionController { .setLayer(swipePipToHomeOverlay, Integer.MAX_VALUE); } - sendOnPipTransitionStarted(TRANSITION_DIRECTION_TO_PIP); - // Both Shell and Launcher calculate their own "adjusted" source-rect-hint values based on - // appBounds being source bounds when entering PiP. - final Rect sourceBounds = swipePipToHomeOverlay == null - ? pipTaskInfo.configuration.windowConfiguration.getBounds() - : mPipOrganizer.mAppBounds; - - // Populate the final surface control transactions from PipTransitionAnimator, - // display cutout insets is handled in the swipe pip to home animator, empty it out here - // to avoid flicker. - final Rect savedDisplayCutoutInsets = new Rect(pipTaskInfo.displayCutoutInsets); - pipTaskInfo.displayCutoutInsets.setEmpty(); - // Always use the task bounds even if the PIP activity doesn't match parent because the app - // and the whole task will move behind. We should animate the whole task bounds in this - // case. + final Rect sourceBounds = pipTaskInfo.configuration.windowConfiguration.getBounds(); final PipAnimationController.PipTransitionAnimator animator = mPipAnimationController.getAnimator(pipTaskInfo, leash, sourceBounds, sourceBounds, destinationBounds, sourceHintRect, TRANSITION_DIRECTION_TO_PIP, - 0 /* startingAngle */, ROTATION_0 /* rotationDelta */, - true /* alwaysAnimateTaskBounds */) + 0 /* startingAngle */, 0 /* rotationDelta */) .setPipTransactionHandler(mTransactionConsumer) .setTransitionDirection(TRANSITION_DIRECTION_TO_PIP); // The start state is the end state for swipe-auto-pip. @@ -1280,12 +1165,10 @@ public class PipTransition extends PipTransitionController { animator.applySurfaceControlTransaction(leash, startTransaction, PipAnimationController.FRACTION_END); startTransaction.apply(); - pipTaskInfo.displayCutoutInsets.set(savedDisplayCutoutInsets); mPipBoundsState.setBounds(destinationBounds); final SurfaceControl.Transaction tx = new SurfaceControl.Transaction(); - onFinishResize(pipTaskInfo, destinationBounds, animator.getLeashOffset(), - TRANSITION_DIRECTION_TO_PIP, tx); + onFinishResize(pipTaskInfo, destinationBounds, TRANSITION_DIRECTION_TO_PIP, tx); sendOnPipTransitionFinished(TRANSITION_DIRECTION_TO_PIP); if (swipePipToHomeOverlay != null) { mPipOrganizer.fadeOutAndRemoveOverlay(swipePipToHomeOverlay, @@ -1365,19 +1248,6 @@ public class PipTransition extends PipTransitionController { return true; } - @Override - public boolean isPackageActiveInPip(@Nullable String packageName) { - final TaskInfo inPipTask = mPipOrganizer.getTaskInfo(); - return packageName != null && inPipTask != null && mPipOrganizer.isInPip() - && packageName.equals(ComponentUtils.getPackageName(inPipTask.baseIntent)); - } - - @Override - public boolean isTaskActiveInPip(int taskId) { - final TaskInfo inPipTask = mPipOrganizer.getTaskInfo(); - return inPipTask != null && mPipOrganizer.isInPip() && taskId == inPipTask.taskId; - } - private void updatePipForUnhandledTransition(@NonNull TransitionInfo.Change pipChange, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction) { @@ -1386,15 +1256,12 @@ public class PipTransition extends PipTransitionController { final SurfaceControl leash = pipChange.getLeash(); final Rect destBounds = mPipOrganizer.getCurrentOrAnimatingBounds(); final boolean isInPip = mPipTransitionState.isInPip(); - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s: Update pip for unhandled transition, change=%s, destBounds=%s, isInPip=%b", - TAG, pipChange, destBounds, isInPip); mSurfaceTransactionHelper - .cropAndPosition(startTransaction, leash, destBounds) + .crop(startTransaction, leash, destBounds) .round(startTransaction, leash, isInPip) .shadow(startTransaction, leash, isInPip); mSurfaceTransactionHelper - .cropAndPosition(finishTransaction, leash, destBounds) + .crop(finishTransaction, leash, destBounds) .round(finishTransaction, leash, isInPip) .shadow(finishTransaction, leash, isInPip); // Make sure the PiP keeps invisible if it was faded out. If it needs to fade in, that will diff --git a/wmshell/src/com/android/wm/shell/pip/PipTransitionController.java b/wmshell/src/com/android/wm/shell/pip/PipTransitionController.java index 10596a5ed9..6eefdcfc4d 100644 --- a/wmshell/src/com/android/wm/shell/pip/PipTransitionController.java +++ b/wmshell/src/com/android/wm/shell/pip/PipTransitionController.java @@ -16,14 +16,12 @@ package com.android.wm.shell.pip; -import static android.app.WindowConfiguration.ROTATION_UNDEFINED; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; import static android.view.WindowManager.TRANSIT_PIP; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_REMOVE_STACK; import static com.android.wm.shell.pip.PipAnimationController.isInPipDirection; -import android.annotation.IntDef; import android.annotation.Nullable; import android.app.ActivityTaskManager; import android.app.Flags; @@ -32,7 +30,6 @@ import android.app.PictureInPictureUiState; import android.app.TaskInfo; import android.content.ComponentName; import android.content.pm.ActivityInfo; -import android.graphics.Point; import android.graphics.Rect; import android.os.IBinder; import android.os.RemoteException; @@ -44,22 +41,20 @@ import android.window.WindowContainerTransaction; import androidx.annotation.NonNull; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; import com.android.wm.shell.common.pip.PipBoundsState; import com.android.wm.shell.common.pip.PipMenuController; +import com.android.wm.shell.common.split.SplitScreenUtils; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.DefaultMixedHandler; import com.android.wm.shell.transition.Transitions; import java.io.PrintWriter; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.util.HashMap; -import java.util.Map; -import java.util.concurrent.Executor; +import java.util.ArrayList; +import java.util.List; /** * Responsible supplying PiP Transitions. @@ -71,21 +66,10 @@ public abstract class PipTransitionController implements Transitions.TransitionH protected final ShellTaskOrganizer mShellTaskOrganizer; protected final PipMenuController mPipMenuController; protected final Transitions mTransitions; - private final Map<PipTransitionCallback, Executor> mPipTransitionCallbacks = new HashMap<>(); + private final List<PipTransitionCallback> mPipTransitionCallbacks = new ArrayList<>(); protected PipTaskOrganizer mPipOrganizer; protected DefaultMixedHandler mMixedHandler; - public static final int ANIM_TYPE_BOUNDS = 0; - public static final int ANIM_TYPE_ALPHA = 1; - - @IntDef(prefix = { "ANIM_TYPE_" }, value = { - ANIM_TYPE_BOUNDS, - ANIM_TYPE_ALPHA - }) - @Retention(RetentionPolicy.SOURCE) - public @interface AnimationType {} - - protected final PipAnimationController.PipAnimationCallback mPipAnimationCallback = new PipAnimationController.PipAnimationCallback() { @Override @@ -107,8 +91,7 @@ public abstract class PipTransitionController implements Transitions.TransitionH mPipOrganizer.fadeOutAndRemoveOverlay(mPipOrganizer.mPipOverlay, null /* callback */, true /* withStartDelay*/); } - onFinishResize(taskInfo, animator.getDestinationBounds(), - animator.getLeashOffset(), direction, tx); + onFinishResize(taskInfo, animator.getDestinationBounds(), direction, tx); sendOnPipTransitionFinished(direction); } @@ -128,9 +111,9 @@ public abstract class PipTransitionController implements Transitions.TransitionH * Called when transition is about to finish. This is usually for performing tasks such as * applying WindowContainerTransaction to finalize the PiP bounds and send to the framework. */ - public void onFinishResize(@NonNull TaskInfo taskInfo, @NonNull Rect destinationBounds, - @NonNull Point leashOffset, @PipAnimationController.TransitionDirection int direction, - @NonNull SurfaceControl.Transaction tx) { + public void onFinishResize(TaskInfo taskInfo, Rect destinationBounds, + @PipAnimationController.TransitionDirection int direction, + SurfaceControl.Transaction tx) { } /** @@ -142,25 +125,9 @@ public abstract class PipTransitionController implements Transitions.TransitionH } /** - * Called when the Shell wants to start an exit-via-expand from Pip transition/animation. + * Called when the Shell wants to start resizing Pip transition/animation. */ - public void startExpandTransition(WindowContainerTransaction wct, boolean toSplit) { - // Default implementation does nothing. - } - - /** - * Called when the Shell wants to start a remove Pip transition/animation. - */ - public void startRemoveTransition(WindowContainerTransaction wct, boolean withFadeout) { - // Default implementation does nothing. - } - - /** - * Called when the Shell wants to start changing the Pip bounds transition/animation. - * - * @param duration the suggested duration for bounds change animation. - */ - public void startPipBoundsChangeTransition(WindowContainerTransaction wct, int duration) { + public void startResizeTransition(WindowContainerTransaction wct) { // Default implementation does nothing. } @@ -190,7 +157,9 @@ public abstract class PipTransitionController implements Transitions.TransitionH mShellTaskOrganizer = shellTaskOrganizer; mPipBoundsAlgorithm = pipBoundsAlgorithm; mTransitions = transitions; - shellInit.addInitCallback(this::onInit, this); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + shellInit.addInitCallback(this::onInit, this); + } } protected void onInit() { @@ -212,49 +181,18 @@ public abstract class PipTransitionController implements Transitions.TransitionH /** * Registers {@link PipTransitionCallback} to receive transition callbacks. */ - public void registerPipTransitionCallback( - @NonNull PipTransitionCallback callback, @NonNull Executor executor) { - mPipTransitionCallbacks.put(callback, executor); - } - - protected void onStartSwipePipToHome() { - if (Flags.enablePipUiStateCallbackOnEntering()) { - try { - ActivityTaskManager.getService().onPictureInPictureUiStateChanged( - new PictureInPictureUiState.Builder() - .setTransitioningToPip(true) - .build()); - } catch (RemoteException | IllegalStateException e) { - ProtoLog.e(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "Failed to set alert PiP state change."); - } - } - } - - /** - * Used in {@link #sendOnPipTransitionStarted(int)} to decide whether we should send the - * PictureInPictureUiState change callback on transition start. - * For instance, in auto-enter-pip case, {@link #onStartSwipePipToHome()} should have signaled - * the app, and we can return {@code true} here to avoid double callback. - * - * @return {@code true} if there is a ongoing swipe pip to home transition. - */ - protected boolean isInSwipePipToHomeTransition() { - return false; + public void registerPipTransitionCallback(PipTransitionCallback callback) { + mPipTransitionCallbacks.add(callback); } protected void sendOnPipTransitionStarted( @PipAnimationController.TransitionDirection int direction) { final Rect pipBounds = mPipBoundsState.getBounds(); - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "sendOnPipTransitionStarted direction=%d, bounds=%s", direction, pipBounds); - for (Map.Entry<PipTransitionCallback, Executor> entry - : mPipTransitionCallbacks.entrySet()) { - entry.getValue().execute( - () -> entry.getKey().onPipTransitionStarted(direction, pipBounds)); + for (int i = mPipTransitionCallbacks.size() - 1; i >= 0; i--) { + final PipTransitionCallback callback = mPipTransitionCallbacks.get(i); + callback.onPipTransitionStarted(direction, pipBounds); } - if (isInPipDirection(direction) && Flags.enablePipUiStateCallbackOnEntering() - && !isInSwipePipToHomeTransition()) { + if (isInPipDirection(direction) && Flags.enablePipUiStateCallbackOnEntering()) { try { ActivityTaskManager.getService().onPictureInPictureUiStateChanged( new PictureInPictureUiState.Builder() @@ -269,12 +207,9 @@ public abstract class PipTransitionController implements Transitions.TransitionH protected void sendOnPipTransitionFinished( @PipAnimationController.TransitionDirection int direction) { - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "sendOnPipTransitionFinished direction=%d", direction); - for (Map.Entry<PipTransitionCallback, Executor> entry - : mPipTransitionCallbacks.entrySet()) { - entry.getValue().execute( - () -> entry.getKey().onPipTransitionFinished(direction)); + for (int i = mPipTransitionCallbacks.size() - 1; i >= 0; i--) { + final PipTransitionCallback callback = mPipTransitionCallbacks.get(i); + callback.onPipTransitionFinished(direction); } if (isInPipDirection(direction) && Flags.enablePipUiStateCallbackOnEntering()) { try { @@ -291,12 +226,9 @@ public abstract class PipTransitionController implements Transitions.TransitionH protected void sendOnPipTransitionCancelled( @PipAnimationController.TransitionDirection int direction) { - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "sendOnPipTransitionCancelled direction=%d", direction); - for (Map.Entry<PipTransitionCallback, Executor> entry - : mPipTransitionCallbacks.entrySet()) { - entry.getValue().execute( - () -> entry.getKey().onPipTransitionCanceled(direction)); + for (int i = mPipTransitionCallbacks.size() - 1; i >= 0; i--) { + final PipTransitionCallback callback = mPipTransitionCallbacks.get(i); + callback.onPipTransitionCanceled(direction); } } @@ -339,15 +271,10 @@ public abstract class PipTransitionController implements Transitions.TransitionH } /** Whether a particular package is same as current pip package. */ - public boolean isPackageActiveInPip(@Nullable String packageName) { - // No-op, to be handled differently in PIP1 and PIP2 - return false; - } - - /** Whether a particular task id the current pip task id. */ - public boolean isTaskActiveInPip(int taskId) { - // No-op, to be handled differently in PIP1 and PIP2 - return false; + public boolean isPackageActiveInPip(String packageName) { + final TaskInfo inPipTask = mPipOrganizer.getTaskInfo(); + return packageName != null && inPipTask != null && mPipOrganizer.isInPip() + && packageName.equals(SplitScreenUtils.getPackageName(inPipTask.baseIntent)); } /** Add PiP-related changes to `outWCT` for the given request. */ @@ -357,7 +284,7 @@ public abstract class PipTransitionController implements Transitions.TransitionH } /** Sets the type of animation when a PiP task appears. */ - public void setEnterAnimationType(@AnimationType int type) { + public void setEnterAnimationType(@PipAnimationController.AnimationType int type) { } /** Play a transition animation for entering PiP on a specific PiP change. */ @@ -379,35 +306,16 @@ public abstract class PipTransitionController implements Transitions.TransitionH return false; } - /** - * Gets a change amongst the transition targets that is in a different final orientation than - * the display, signalling a potential fixed rotation transition. - */ - @Nullable - public TransitionInfo.Change findFixedRotationChange(@NonNull TransitionInfo info) { - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - final TransitionInfo.Change change = info.getChanges().get(i); - if (change.getEndFixedRotation() != ROTATION_UNDEFINED) { - return change; - } - } - return null; - } - /** End the currently-playing PiP animation. */ public void end() { } /** * Finish the current transition if possible. + * + * @param tx transaction to be applied with a potentially new draw after finishing. */ - public void finishTransition() { - } - - /** - * Callback when the transition is aborted. - */ - public void onTransitionAborted() { + public void finishTransition(@Nullable SurfaceControl.Transaction tx) { } /** @@ -418,14 +326,6 @@ public abstract class PipTransitionController implements Transitions.TransitionH public void end(@Nullable Runnable onTransitionEnd) { } - /** - * Clean up stored PIP state. - * <p> - * Should only be called after a task has exited due to external reasons. Does not modify the - * task itself or move it out of PIP. - */ - public void cleanUpState() {} - /** Starts the {@link android.window.SystemPerformanceHinter.HighPerfSession}. */ public void startHighPerfSession() {} diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PhonePipMenuController.java b/wmshell/src/com/android/wm/shell/pip/phone/PhonePipMenuController.java index c00e9fbff0..0169e8c40f 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PhonePipMenuController.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PhonePipMenuController.java @@ -32,14 +32,10 @@ import android.view.View; import android.view.ViewRootImpl; import android.view.WindowManagerGlobal; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayInsetsController; -import com.android.wm.shell.common.ImeListener; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SystemWindows; import com.android.wm.shell.common.pip.PipBoundsState; -import com.android.wm.shell.common.pip.PipDisplayLayoutState; import com.android.wm.shell.common.pip.PipMediaController; import com.android.wm.shell.common.pip.PipMediaController.ActionListener; import com.android.wm.shell.common.pip.PipMenuController; @@ -110,7 +106,6 @@ public class PhonePipMenuController implements PipMenuController { private final ArrayList<Listener> mListeners = new ArrayList<>(); private final SystemWindows mSystemWindows; private final PipUiEventLogger mPipUiEventLogger; - private final PipDisplayLayoutState mPipDisplayLayoutState; private List<RemoteAction> mAppActions; private RemoteAction mCloseAction; @@ -122,8 +117,6 @@ public class PhonePipMenuController implements PipMenuController { private SurfaceControl mLeash; - private boolean mIsImeVisible; - private ActionListener mMediaActionListener = new ActionListener() { @Override public void onMediaActionsChanged(List<RemoteAction> mediaActions) { @@ -134,27 +127,15 @@ public class PhonePipMenuController implements PipMenuController { public PhonePipMenuController(Context context, PipBoundsState pipBoundsState, PipMediaController mediaController, SystemWindows systemWindows, - DisplayController displayController, - DisplayInsetsController displayInsetsController, - PipDisplayLayoutState pipDisplayLayoutState, PipUiEventLogger pipUiEventLogger, ShellExecutor mainExecutor, Handler mainHandler) { mContext = context; mPipBoundsState = pipBoundsState; mMediaController = mediaController; mSystemWindows = systemWindows; - mPipDisplayLayoutState = pipDisplayLayoutState; mMainExecutor = mainExecutor; mMainHandler = mainHandler; mPipUiEventLogger = pipUiEventLogger; - - displayInsetsController.addInsetsChangedListener(mPipDisplayLayoutState.getDisplayId(), - new ImeListener(displayController, mPipDisplayLayoutState.getDisplayId()) { - @Override - protected void onImeVisibilityChanged(boolean imeVisible, int imeHeight) { - mIsImeVisible = imeVisible; - } - }); } public boolean isMenuVisible() { @@ -525,12 +506,10 @@ public class PhonePipMenuController implements PipMenuController { mMediaController.removeActionListener(mMediaActionListener); } - // Do not grant focus if IME is visible, which can cause the focus being granted - // back and forth in between the IME and PiP menu, and causes flicker. - final boolean grantFocus = !mIsImeVisible && (menuState != MENU_STATE_NONE); try { WindowManagerGlobal.getWindowSession().grantEmbeddedWindowFocus(null /* window */, - mSystemWindows.getFocusGrantToken(mPipMenuView), grantFocus); + mSystemWindows.getFocusGrantToken(mPipMenuView), + menuState != MENU_STATE_NONE /* grantFocus */); } catch (RemoteException e) { ProtoLog.e(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: Unable to update focus as menu appears/disappears, %s", TAG, e); diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PipAccessibilityInteractionConnection.java b/wmshell/src/com/android/wm/shell/pip/phone/PipAccessibilityInteractionConnection.java index fa14bc91c8..eefd9e431e 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PipAccessibilityInteractionConnection.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PipAccessibilityInteractionConnection.java @@ -30,7 +30,6 @@ import android.view.accessibility.AccessibilityNodeInfo; import android.view.accessibility.AccessibilityWindowInfo; import android.view.accessibility.IAccessibilityInteractionConnection; import android.view.accessibility.IAccessibilityInteractionConnectionCallback; -import android.view.accessibility.IWindowSurfaceInfoCallback; import android.window.ScreenCapture; import androidx.annotation.BinderThread; @@ -373,13 +372,6 @@ public class PipAccessibilityInteractionConnection { // so do nothing here. } - @Override - public void getWindowSurfaceInfo(IWindowSurfaceInfoCallback callback) { - // AbstractAccessibilityServiceConnection uses the standard - // IAccessibilityInteractionConnection for takeScreenshotOfWindow for Pip windows, - // so do nothing here. - } - @Override public void clearAccessibilityFocus() throws RemoteException { // Do nothing @@ -396,4 +388,4 @@ public class PipAccessibilityInteractionConnection { int interactionId, IAccessibilityInteractionConnectionCallback callback) {} } -} \ No newline at end of file +} diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PipController.java b/wmshell/src/com/android/wm/shell/pip/phone/PipController.java index c6fd433e5a..8c4bf76200 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PipController.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PipController.java @@ -22,6 +22,7 @@ import static android.content.pm.PackageManager.FEATURE_PICTURE_IN_PICTURE; import static android.view.WindowManager.INPUT_CONSUMER_PIP; import static com.android.internal.jank.InteractionJankMonitor.CUJ_PIP_TRANSITION; +import static com.android.wm.shell.pip.PipAnimationController.ANIM_TYPE_ALPHA; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_EXPAND_OR_UNEXPAND; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_LEAVE_PIP; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_LEAVE_PIP_TO_SPLIT_SCREEN; @@ -31,7 +32,7 @@ import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTI import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_TO_PIP; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_USER_RESIZE; import static com.android.wm.shell.pip.PipAnimationController.isOutPipDirection; -import static com.android.wm.shell.pip.PipTransitionController.ANIM_TYPE_ALPHA; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_PIP; import android.app.ActivityManager; import android.app.ActivityTaskManager; @@ -43,7 +44,6 @@ import android.content.pm.ActivityInfo; import android.content.res.Configuration; import android.graphics.Point; import android.graphics.Rect; -import android.os.Handler; import android.os.RemoteException; import android.os.SystemProperties; import android.util.Pair; @@ -59,8 +59,7 @@ import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.jank.InteractionJankMonitor; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.Flags; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.WindowManagerShellWrapper; import com.android.wm.shell.common.DisplayChangeController; @@ -94,22 +93,19 @@ import com.android.wm.shell.pip.PipTaskOrganizer; import com.android.wm.shell.pip.PipTransitionController; import com.android.wm.shell.pip.PipTransitionState; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.pip.PipFlags; import com.android.wm.shell.sysui.ConfigurationChangeListener; import com.android.wm.shell.sysui.KeyguardChangeListener; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.sysui.UserChangeListener; +import com.android.wm.shell.transition.Transitions; import java.io.PrintWriter; -import java.util.ArrayList; import java.util.List; import java.util.Objects; import java.util.Optional; import java.util.Set; -import java.util.concurrent.Executor; import java.util.function.Consumer; /** @@ -149,8 +145,6 @@ public class PipController implements PipTransitionController.PipTransitionCallb private Optional<OneHandedController> mOneHandedController; private final ShellCommandHandler mShellCommandHandler; private final ShellController mShellController; - @ShellMainThread - private final Handler mHandler; protected final PipImpl mImpl; private final Rect mTmpInsetBounds = new Rect(); @@ -216,7 +210,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb private boolean mIsKeyguardShowingOrAnimating; - private final List<Consumer<Boolean>> mOnIsInPipStateChangedListeners = new ArrayList<>(); + private Consumer<Boolean> mOnIsInPipStateChangedListener; @VisibleForTesting interface PipAnimationListener { @@ -245,12 +239,6 @@ public class PipController implements PipTransitionController.PipTransitionCallb */ private final DisplayChangeController.OnDisplayChangingListener mRotationController = ( displayId, fromRotation, toRotation, newDisplayAreaInfo, t) -> { - if (fromRotation == toRotation) { - // OnDisplayChangingListener also gets triggered upon Display size changes; - // in PiP1, those are handled separately by OnDisplaysChangedListener callbacks. - return; - } - if (mPipTransitionController.handleRotateDisplay(fromRotation, toRotation, t)) { return; } @@ -283,7 +271,6 @@ public class PipController implements PipTransitionController.PipTransitionCallb final boolean changed = onDisplayRotationChanged(mContext, outBounds, currentBounds, mTmpInsetBounds, displayId, fromRotation, toRotation, t); if (changed) { - mMenuController.hideMenu(); // If the pip was in the offset zone earlier, adjust the new bounds to the bottom of the // movement bounds mTouchHandler.adjustBoundsForRotation(outBounds, mPipBoundsState.getBounds(), @@ -329,7 +316,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb return; } onDisplayChanged(mDisplayController.getDisplayLayout(displayId), - true /* saveRestoreSnapFraction */); + false /* saveRestoreSnapFraction */); } @Override @@ -380,13 +367,22 @@ public class PipController implements PipTransitionController.PipTransitionCallb false /* fromRotation */, fromImeAdjustment, false /* fromShelfAdjustment */, null /* windowContainerTransaction */); } + + @Override + public void onActivityHidden(ComponentName componentName) { + if (componentName.equals(mPipBoundsState.getLastPipComponentName())) { + // The activity was removed, we don't want to restore to the reentry state + // saved for this component anymore. + mPipBoundsState.setLastPipComponentName(null); + } + } } /** * Instantiates {@link PipController}, returns {@code null} if the feature not supported. */ @Nullable - public static PipImpl create(Context context, + public static Pip create(Context context, ShellInit shellInit, ShellCommandHandler shellCommandHandler, ShellController shellController, @@ -410,8 +406,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb DisplayInsetsController displayInsetsController, TabletopModeController pipTabletopController, Optional<OneHandedController> oneHandedController, - ShellExecutor mainExecutor, - Handler handler) { + ShellExecutor mainExecutor) { if (!context.getPackageManager().hasSystemFeature(FEATURE_PICTURE_IN_PICTURE)) { ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: Device doesn't support Pip feature", TAG); @@ -424,8 +419,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb pipDisplayLayoutState, pipMotionHelper, pipMediaController, phonePipMenuController, pipTaskOrganizer, pipTransitionState, pipTouchHandler, pipTransitionController, windowManagerShellWrapper, taskStackListener, pipParamsChangedForwarder, - displayInsetsController, pipTabletopController, oneHandedController, mainExecutor, - handler) + displayInsetsController, pipTabletopController, oneHandedController, mainExecutor) .mImpl; } @@ -453,13 +447,11 @@ public class PipController implements PipTransitionController.PipTransitionCallb DisplayInsetsController displayInsetsController, TabletopModeController tabletopModeController, Optional<OneHandedController> oneHandedController, - ShellExecutor mainExecutor, - @ShellMainThread Handler handler + ShellExecutor mainExecutor ) { mContext = context; mShellCommandHandler = shellCommandHandler; mShellController = shellController; - mHandler = handler; mImpl = new PipImpl(); mWindowManagerShellWrapper = windowManagerShellWrapper; mDisplayController = displayController; @@ -486,28 +478,27 @@ public class PipController implements PipTransitionController.PipTransitionCallb mDisplayInsetsController = displayInsetsController; mTabletopModeController = tabletopModeController; - if (!PipFlags.isPip2ExperimentEnabled()) { + if (!PipUtils.isPip2ExperimentEnabled()) { shellInit.addInitCallback(this::onInit, this); } } - @VisibleForTesting - void onInit() { + private void onInit() { mShellCommandHandler.addDumpCallback(this::dump, this); mPipInputConsumer = new PipInputConsumer(WindowManagerGlobal.getWindowManagerService(), INPUT_CONSUMER_PIP, mMainExecutor); - mPipTransitionController.registerPipTransitionCallback(this, mMainExecutor); + mPipTransitionController.registerPipTransitionCallback(this); mPipTaskOrganizer.registerOnDisplayIdChangeCallback((int displayId) -> { mPipDisplayLayoutState.setDisplayId(displayId); onDisplayChanged(mDisplayController.getDisplayLayout(displayId), false /* saveRestoreSnapFraction */); }); mPipTransitionState.addOnPipTransitionStateChangedListener((oldState, newState) -> { - final boolean wasInPip = PipTransitionState.isInPip(oldState); - final boolean nowInPip = PipTransitionState.isInPip(newState); - if (nowInPip != wasInPip) { - for (Consumer<Boolean> listener : mOnIsInPipStateChangedListeners) { - listener.accept(nowInPip); + if (mOnIsInPipStateChangedListener != null) { + final boolean wasInPip = PipTransitionState.isInPip(oldState); + final boolean nowInPip = PipTransitionState.isInPip(newState); + if (nowInPip != wasInPip) { + mOnIsInPipStateChangedListener.accept(nowInPip); } } }); @@ -564,8 +555,6 @@ public class PipController implements PipTransitionController.PipTransitionCallb e.printStackTrace(); } - mAppOpsListener.setCallback(mTouchHandler.getMotionHelper()); - // Handle for system task stack changes. mTaskStackListener.addListener( new TaskStackListenerCallback() { @@ -596,9 +585,8 @@ public class PipController implements PipTransitionController.PipTransitionCallb public void onActivityRestartAttempt(ActivityManager.RunningTaskInfo task, boolean homeTaskVisible, boolean clearedTask, boolean wasVisible) { ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "onActivityRestartAttempt: topActivity=%s, wasVisible=%b", - task.topActivity, wasVisible); - if (task.getWindowingMode() != WINDOWING_MODE_PINNED || !wasVisible) { + "onActivityRestartAttempt: %s", task.topActivity); + if (task.getWindowingMode() != WINDOWING_MODE_PINNED) { return; } if (mPipTaskOrganizer.isLaunchToSplit(task)) { @@ -651,12 +639,6 @@ public class PipController implements PipTransitionController.PipTransitionCallb public void insetsChanged(InsetsState insetsState) { DisplayLayout pendingLayout = mDisplayController .getDisplayLayout(mPipDisplayLayoutState.getDisplayId()); - if (pendingLayout == null) { - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "insetsChanged: no display layout for displayId=%d", - mPipDisplayLayoutState.getDisplayId()); - return; - } if (mIsInFixedRotation || mIsKeyguardShowingOrAnimating || pendingLayout.rotation() @@ -665,18 +647,16 @@ public class PipController implements PipTransitionController.PipTransitionCallb // there's a keyguard present return; } - mMainExecutor.executeDelayed(() -> { - onDisplayChangedUncheck(mDisplayController.getDisplayLayout( - mPipDisplayLayoutState.getDisplayId()), - false /* saveRestoreSnapFraction */); - }, PIP_KEEP_CLEAR_AREAS_DELAY); + onDisplayChangedUncheck(mDisplayController + .getDisplayLayout(mPipDisplayLayoutState.getDisplayId()), + false /* saveRestoreSnapFraction */); } }); mTabletopModeController.registerOnTabletopModeChangedListener((isInTabletopMode) -> { + final String tag = "tabletop-mode"; if (!isInTabletopMode) { - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_TABLETOP_MODE, null); + mPipBoundsState.removeNamedUnrestrictedKeepClearArea(tag); return; } @@ -685,16 +665,14 @@ public class PipController implements PipTransitionController.PipTransitionCallb if (mTabletopModeController.getPreferredHalfInTabletopMode() == TabletopModeController.PREFERRED_TABLETOP_HALF_TOP) { // Prefer top, avoid the bottom half of the display. - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_TABLETOP_MODE, new Rect( - displayBounds.left, displayBounds.centerY(), - displayBounds.right, displayBounds.bottom)); + mPipBoundsState.addNamedUnrestrictedKeepClearArea(tag, new Rect( + displayBounds.left, displayBounds.centerY(), + displayBounds.right, displayBounds.bottom)); } else { // Prefer bottom, avoid the top half of the display. - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_TABLETOP_MODE, new Rect( - displayBounds.left, displayBounds.top, - displayBounds.right, displayBounds.centerY())); + mPipBoundsState.addNamedUnrestrictedKeepClearArea(tag, new Rect( + displayBounds.left, displayBounds.top, + displayBounds.right, displayBounds.centerY())); } // Try to move the PiP window if we have entered PiP mode. @@ -725,14 +703,12 @@ public class PipController implements PipTransitionController.PipTransitionCallb }); }); - if (!ShellController.FIX_MISSING_USER_CHANGE_CALLBACKS_FLAG.isTrue()) { - mMediaController.registerSessionListenerForCurrentUser(); - } + mMediaController.registerSessionListenerForCurrentUser(); mShellController.addConfigurationChangeListener(this); mShellController.addKeyguardChangeListener(this); mShellController.addUserChangeListener(this); - mShellController.addExternalInterface(IPip.DESCRIPTOR, + mShellController.addExternalInterface(KEY_EXTRA_SHELL_PIP, this::createExternalInterface, this); } @@ -775,10 +751,6 @@ public class PipController implements PipTransitionController.PipTransitionCallb mTouchHandler.onOverlayChanged(); onDisplayChanged(new DisplayLayout(mContext, mContext.getDisplay()), false /* saveRestoreSnapFraction */); - - if (Flags.enablePipBoxShadows()) { - mPipTaskOrganizer.onThemeChanged(mContext); - } } private void onDisplayChanged(DisplayLayout layout, boolean saveRestoreSnapFraction) { @@ -789,7 +761,6 @@ public class PipController implements PipTransitionController.PipTransitionCallb // cancel any running animator, as it is using stale display layout information animator.cancel(); } - mMenuController.hideMenu(); onDisplayChangedUncheck(layout, saveRestoreSnapFraction); } } @@ -804,8 +775,8 @@ public class PipController implements PipTransitionController.PipTransitionCallb return; } Runnable updateDisplayLayout = () -> { - final boolean fromRotation = - mPipDisplayLayoutState.getDisplayLayout().rotation() != layout.rotation(); + final boolean fromRotation = Transitions.ENABLE_SHELL_TRANSITIONS + && mPipDisplayLayoutState.getDisplayLayout().rotation() != layout.rotation(); // update the internal state of objects subscribed to display changes mPipDisplayLayoutState.setDisplayLayout(layout); @@ -822,7 +793,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb } }; - if (mPipTransitionState.hasEnteredPip() && saveRestoreSnapFraction) { + if (mPipTaskOrganizer.isInPip() && saveRestoreSnapFraction) { mMenuController.attachPipMenuView(); // Calculate the snap fraction of the current stack along the old movement bounds final PipSnapAlgorithm pipSnapAlgorithm = mPipBoundsAlgorithm.getSnapAlgorithm(); @@ -843,8 +814,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb // Calculate the PiP bounds in the new orientation based on same fraction along the // rotated movement bounds. final Rect postChangeMovementBounds = mPipBoundsAlgorithm.getMovementBounds( - postChangeBounds, false /* adjustForIme */, - mPipDisplayLayoutState.getDisplayLayout()); + postChangeBounds, false /* adjustForIme */); pipSnapAlgorithm.applySnapFraction(postChangeBounds, postChangeMovementBounds, snapFraction, mPipBoundsState.getStashedState(), mPipBoundsState.getStashOffset(), @@ -954,12 +924,10 @@ public class PipController implements PipTransitionController.PipTransitionCallb 0, mPipBoundsState.getDisplayBounds().bottom - height, mPipBoundsState.getDisplayBounds().right, mPipBoundsState.getDisplayBounds().bottom); - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_LAUNCHER_SHELF, rect); + mPipBoundsState.addNamedUnrestrictedKeepClearArea(LAUNCHER_KEEP_CLEAR_AREA_TAG, rect); updatePipPositionForKeepClearAreas(); } else { - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_LAUNCHER_SHELF, null); + mPipBoundsState.removeNamedUnrestrictedKeepClearArea(LAUNCHER_KEEP_CLEAR_AREA_TAG); // postpone moving in response to hide of Launcher in case there's another change mMainExecutor.removeCallbacks(mMovePipInResponseToKeepClearAreasChangeCallback); mMainExecutor.executeDelayed( @@ -972,19 +940,13 @@ public class PipController implements PipTransitionController.PipTransitionCallb mPipBoundsState.getLauncherState().setAppIconSizePx(iconSizePx); } - private void addOnIsInPipStateChangedListener(@NonNull Consumer<Boolean> callback) { - if (callback != null) { - mOnIsInPipStateChangedListeners.add(callback); + private void setOnIsInPipStateChangedListener(Consumer<Boolean> callback) { + mOnIsInPipStateChangedListener = callback; + if (mOnIsInPipStateChangedListener != null) { callback.accept(mPipTransitionState.isInPip()); } } - private void removeOnIsInPipStateChangedListener(@NonNull Consumer<Boolean> callback) { - if (callback != null) { - mOnIsInPipStateChangedListeners.remove(callback); - } - } - private void setShelfHeightLocked(boolean visible, int height) { final int shelfHeight = visible ? height : 0; mPipBoundsState.setShelfVisibility(visible, shelfHeight); @@ -1014,8 +976,8 @@ public class PipController implements PipTransitionController.PipTransitionCallb int launcherRotation, Rect hotseatKeepClearArea) { // preemptively add the keep clear area for Hotseat, so that it is taken into account // when calculating the entry destination bounds of PiP window - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_LAUNCHER_SHELF, hotseatKeepClearArea); + mPipBoundsState.addNamedUnrestrictedKeepClearArea(LAUNCHER_KEEP_CLEAR_AREA_TAG, + hotseatKeepClearArea); onDisplayRotationChangedNotInPip(mContext, launcherRotation); // cache current min/max size Point minSize = mPipBoundsState.getMinSize(); @@ -1074,8 +1036,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb // Begin InteractionJankMonitor with PIP transition CUJs final InteractionJankMonitor.Configuration.Builder builder = InteractionJankMonitor.Configuration.Builder.withSurface( - CUJ_PIP_TRANSITION, mContext, mPipTaskOrganizer.getSurfaceControl(), - mHandler) + CUJ_PIP_TRANSITION, mContext, mPipTaskOrganizer.getSurfaceControl()) .setTag(getTransitionTag(direction)) .setTimeout(2000); InteractionJankMonitor.getInstance().begin(builder); @@ -1197,8 +1158,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb // Calculate the stack bounds in the new orientation based on same fraction along the // rotated movement bounds. final Rect postChangeMovementBounds = mPipBoundsAlgorithm.getMovementBounds( - postChangeStackBounds, false /* adjustForIme */, - mPipDisplayLayoutState.getDisplayLayout()); + postChangeStackBounds, false /* adjustForIme */); pipSnapAlgorithm.applySnapFraction(postChangeStackBounds, postChangeMovementBounds, snapFraction, mPipBoundsState.getStashedState(), mPipBoundsState.getStashOffset(), mPipDisplayLayoutState.getDisplayBounds(), @@ -1225,7 +1185,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb /** * The interface for calls from outside the Shell, within the host process. */ - public class PipImpl implements Pip { + private class PipImpl implements Pip { @Override public void expandPip() { mMainExecutor.execute(() -> { @@ -1241,16 +1201,9 @@ public class PipController implements PipTransitionController.PipTransitionCallb } @Override - public void addOnIsInPipStateChangedListener(@NonNull Consumer<Boolean> callback) { + public void setOnIsInPipStateChangedListener(Consumer<Boolean> callback) { mMainExecutor.execute(() -> { - PipController.this.addOnIsInPipStateChangedListener(callback); - }); - } - - @Override - public void removeOnIsInPipStateChangedListener(@NonNull Consumer<Boolean> callback) { - mMainExecutor.execute(() -> { - PipController.this.removeOnIsInPipStateChangedListener(callback); + PipController.this.setOnIsInPipStateChangedListener(callback); }); } @@ -1276,11 +1229,8 @@ public class PipController implements PipTransitionController.PipTransitionCallb } @Override - public void registerPipTransitionCallback( - PipTransitionController.PipTransitionCallback callback, - Executor executor) { - mMainExecutor.execute(() -> mPipTransitionController.registerPipTransitionCallback( - callback, executor)); + public PipTransitionController getPipTransitionController() { + return mPipTransitionController; } } @@ -1327,14 +1277,14 @@ public class PipController implements PipTransitionController.PipTransitionCallb } @Override - public Rect startSwipePipToHome(ActivityManager.RunningTaskInfo taskInfo, - int launcherRotation, Rect keepClearArea) { + public Rect startSwipePipToHome(ComponentName componentName, ActivityInfo activityInfo, + PictureInPictureParams pictureInPictureParams, int launcherRotation, + Rect keepClearArea) { Rect[] result = new Rect[1]; executeRemoteCallWithTaskPermission(mController, "startSwipePipToHome", (controller) -> { - result[0] = controller.startSwipePipToHome(taskInfo.topActivity, - taskInfo.topActivityInfo, taskInfo.pictureInPictureParams, - launcherRotation, keepClearArea); + result[0] = controller.startSwipePipToHome(componentName, activityInfo, + pictureInPictureParams, launcherRotation, keepClearArea); }, true /* blocking */); return result[0]; } diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PipDismissTargetHandler.java b/wmshell/src/com/android/wm/shell/pip/phone/PipDismissTargetHandler.java index 06d231144d..e5d23d4ce8 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PipDismissTargetHandler.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PipDismissTargetHandler.java @@ -35,10 +35,10 @@ import androidx.annotation.NonNull; import com.android.wm.shell.R; import com.android.wm.shell.bubbles.DismissViewUtils; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.common.pip.PipUiEventLogger; -import com.android.wm.shell.shared.bubbles.DismissCircleView; -import com.android.wm.shell.shared.bubbles.DismissView; +import com.android.wm.shell.common.bubbles.DismissCircleView; +import com.android.wm.shell.common.bubbles.DismissView; import com.android.wm.shell.shared.magnetictarget.MagnetizedObject; +import com.android.wm.shell.common.pip.PipUiEventLogger; import kotlin.Unit; diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PipInputConsumer.java b/wmshell/src/com/android/wm/shell/pip/phone/PipInputConsumer.java index d1978c30ee..f6cab485fa 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PipInputConsumer.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PipInputConsumer.java @@ -28,7 +28,7 @@ import android.view.IWindowManager; import android.view.InputChannel; import android.view.InputEvent; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.protolog.ShellProtoLogGroup; diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PipMenuActionView.java b/wmshell/src/com/android/wm/shell/pip/phone/PipMenuActionView.java index e50226ce57..7f84500e84 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PipMenuActionView.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PipMenuActionView.java @@ -53,9 +53,4 @@ public class PipMenuActionView extends FrameLayout { public void setCustomCloseBackgroundVisibility(@View.Visibility int visibility) { mCustomCloseBackground.setVisibility(visibility); } - - @Override - public CharSequence getAccessibilityClassName() { - return android.widget.Button.class.getName(); - } } diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PipMenuView.java b/wmshell/src/com/android/wm/shell/pip/phone/PipMenuView.java index c8b52c6b00..15342be0e8 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PipMenuView.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PipMenuView.java @@ -34,13 +34,11 @@ import android.animation.ValueAnimator; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; -import android.app.ActivityManager; import android.app.PendingIntent; import android.app.RemoteAction; import android.content.ComponentName; import android.content.Context; import android.content.Intent; -import android.content.pm.PackageManager; import android.graphics.Color; import android.graphics.Rect; import android.graphics.drawable.Drawable; @@ -61,13 +59,13 @@ import android.view.accessibility.AccessibilityNodeInfo; import android.widget.FrameLayout; import android.widget.LinearLayout; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.pip.PipUiEventLogger; import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.animation.Interpolators; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @@ -153,10 +151,6 @@ public class PipMenuView extends FrameLayout { // How long the shell will wait for the app to close the PiP if a custom action is set. private final int mPipForceCloseDelay; - // Context for the currently active user. This may differ from the regular systemui Context - // in cases such as secondary users or HSUM. - private Context mContextForUser; - public PipMenuView(Context context, PhonePipMenuController controller, ShellExecutor mainExecutor, Handler mainHandler, PipUiEventLogger pipUiEventLogger) { @@ -208,7 +202,6 @@ public class PipMenuView extends FrameLayout { .getInteger(R.integer.config_pipExitAnimationDuration); initAccessibility(); - setContextForUser(); } private void initAccessibility() { @@ -483,7 +476,7 @@ public class PipMenuView extends FrameLayout { actionView.setImageDrawable(null); } else { // TODO: Check if the action drawable has changed before we reload it - action.getIcon().loadDrawableAsync(mContextForUser, d -> { + action.getIcon().loadDrawableAsync(mContext, d -> { if (d != null) { d.setTint(Color.WHITE); actionView.setImageDrawable(d); @@ -517,33 +510,6 @@ public class PipMenuView extends FrameLayout { expandContainer.requestLayout(); } - /** - * Sets the Context for the current user. If the user is the same as systemui, then simply - * use systemui Context. - */ - private void setContextForUser() { - int userId = ActivityManager.getCurrentUser(); - - if (mContext.getUserId() != userId) { - try { - mContextForUser = mContext.createPackageContextAsUser(mContext.getPackageName(), - Context.CONTEXT_RESTRICTED, new UserHandle(userId)); - } catch (PackageManager.NameNotFoundException e) { - // Shouldn't happen, use systemui context as backup - ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s: Failed to get context for user. Sysui userid=%d," - + " current userid=%d, error=%s", - TAG, - mContext.getUserId(), - userId, - e); - mContextForUser = mContext; - } - } else { - mContextForUser = mContext; - } - } - private void notifyMenuStateChangeStart(int menuState, boolean resize, Runnable callback) { mController.onMenuStateChangeStart(menuState, resize, callback); } diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PipMotionHelper.java b/wmshell/src/com/android/wm/shell/pip/phone/PipMotionHelper.java index 5710af645a..43a3b9b89f 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PipMotionHelper.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PipMotionHelper.java @@ -34,11 +34,11 @@ import android.graphics.PointF; import android.graphics.Rect; import android.os.Debug; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.animation.FloatProperties; import com.android.wm.shell.common.FloatingContentCoordinator; -import com.android.wm.shell.common.ShellExecutor; +import com.android.wm.shell.shared.magnetictarget.MagnetizedObject; import com.android.wm.shell.common.pip.PipAppOpsListener; import com.android.wm.shell.common.pip.PipBoundsState; import com.android.wm.shell.common.pip.PipPerfHintController; @@ -47,8 +47,6 @@ import com.android.wm.shell.pip.PipTaskOrganizer; import com.android.wm.shell.pip.PipTransitionController; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.shared.animation.PhysicsAnimator; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.magnetictarget.MagnetizedObject; import kotlin.Unit; import kotlin.jvm.functions.Function0; @@ -173,9 +171,7 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, public void onPipTransitionCanceled(int direction) {} }; - public PipMotionHelper(Context context, - @ShellMainThread ShellExecutor mainExecutor, - @NonNull PipBoundsState pipBoundsState, + public PipMotionHelper(Context context, @NonNull PipBoundsState pipBoundsState, PipTaskOrganizer pipTaskOrganizer, PhonePipMenuController menuController, PipSnapAlgorithm snapAlgorithm, PipTransitionController pipTransitionController, FloatingContentCoordinator floatingContentCoordinator, @@ -187,7 +183,7 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, mSnapAlgorithm = snapAlgorithm; mFloatingContentCoordinator = floatingContentCoordinator; mPipPerfHintController = pipPerfHintControllerOptional.orElse(null); - pipTransitionController.registerPipTransitionCallback(mPipTransitionCallback, mainExecutor); + pipTransitionController.registerPipTransitionCallback(mPipTransitionCallback); mResizePipUpdateListener = (target, values) -> { if (mPipBoundsState.getMotionBoundsState().isInMotion()) { mPipTaskOrganizer.scheduleUserResizePip(getBounds(), @@ -204,7 +200,8 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, @NonNull @Override public Rect getFloatingBoundsOnScreen() { - return getBounds(); + return !mPipBoundsState.getMotionBoundsState().getAnimatingToBounds().isEmpty() + ? mPipBoundsState.getMotionBoundsState().getAnimatingToBounds() : getBounds(); } @NonNull @@ -415,17 +412,6 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, // location now. mSpringingToTouch = false; - // Boost the velocityX if it's zero to forcefully push it towards the nearest edge. - // We don't simply change the xEndValue below since the PhysicsAnimator would rely on the - // same velocityX to find out which edge to snap to. - if (velocityX == 0) { - final int motionCenterX = mPipBoundsState - .getMotionBoundsState().getBoundsInMotion().centerX(); - final int displayCenterX = mPipBoundsState - .getDisplayBounds().centerX(); - velocityX = (motionCenterX < displayCenterX) ? -0.001f : 0.001f; - } - mTemporaryBoundsPhysicsAnimator .spring(FloatProperties.RECT_WIDTH, getBounds().width(), mSpringConfig) .spring(FloatProperties.RECT_HEIGHT, getBounds().height(), mSpringConfig) @@ -615,7 +601,7 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, cancelPhysicsAnimation(); } - mPipBoundsState.getMotionBoundsState().setAnimatingToBounds(new Rect( + setAnimatingToBounds(new Rect( (int) toX, (int) toY, (int) toX + getBounds().width(), @@ -659,9 +645,6 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, // All motion operations have actually finished. mPipBoundsState.setBounds( mPipBoundsState.getMotionBoundsState().getBoundsInMotion()); - // Notifies the floating coordinator that we moved, so we return these bounds from - // {@link FloatingContentCoordinator.FloatingContent#getFloatingBoundsOnScreen()}. - mFloatingContentCoordinator.onContentMoved(this); mPipBoundsState.getMotionBoundsState().onAllAnimationsEnded(); if (!mDismissalPending) { // do not schedule resize if PiP is dismissing, which may cause app re-open to @@ -675,6 +658,16 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, cleanUpHighPerfSessionMaybe(); } + /** + * Notifies the floating coordinator that we're moving, and sets the animating to bounds so + * we return these bounds from + * {@link FloatingContentCoordinator.FloatingContent#getFloatingBoundsOnScreen()}. + */ + private void setAnimatingToBounds(Rect bounds) { + mPipBoundsState.getMotionBoundsState().setAnimatingToBounds(bounds); + mFloatingContentCoordinator.onContentMoved(this); + } + /** * Directly resizes the PiP to the given {@param bounds}. */ @@ -704,7 +697,7 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, // This is so all the proper callbacks are performed. mPipTaskOrganizer.scheduleAnimateResizePip(toBounds, duration, TRANSITION_DIRECTION_EXPAND_OR_UNEXPAND, null /* updateBoundsCallback */); - mPipBoundsState.getMotionBoundsState().setAnimatingToBounds(toBounds); + setAnimatingToBounds(toBounds); } /** diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PipResizeGestureHandler.java b/wmshell/src/com/android/wm/shell/pip/phone/PipResizeGestureHandler.java index b49745afca..89d3dd63a0 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PipResizeGestureHandler.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PipResizeGestureHandler.java @@ -15,12 +15,7 @@ */ package com.android.wm.shell.pip.phone; -import static com.android.internal.policy.TaskResizingAlgorithm.CTRL_BOTTOM; -import static com.android.internal.policy.TaskResizingAlgorithm.CTRL_LEFT; import static com.android.internal.policy.TaskResizingAlgorithm.CTRL_NONE; -import static com.android.internal.policy.TaskResizingAlgorithm.CTRL_RIGHT; -import static com.android.internal.policy.TaskResizingAlgorithm.CTRL_TOP; -import static com.android.wm.shell.pip.phone.PipMenuView.ANIM_TYPE_NONE; import android.annotation.Nullable; import android.content.Context; @@ -28,7 +23,6 @@ import android.content.res.Resources; import android.graphics.Point; import android.graphics.PointF; import android.graphics.Rect; -import android.graphics.Region; import android.hardware.input.InputManager; import android.os.Looper; import android.view.BatchedInputEventReceiver; @@ -39,11 +33,9 @@ import android.view.InputEventReceiver; import android.view.InputMonitor; import android.view.MotionEvent; import android.view.ViewConfiguration; -import android.window.DesktopExperienceFlags; import androidx.annotation.VisibleForTesting; -import com.android.internal.policy.TaskResizingAlgorithm; import com.android.wm.shell.R; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; @@ -56,7 +48,6 @@ import com.android.wm.shell.pip.PipTaskOrganizer; import java.io.PrintWriter; import java.util.function.Consumer; -import java.util.function.Function; /** * Helper on top of PipTouchHandler that handles inputs OUTSIDE of the PIP window, which is used to @@ -80,7 +71,6 @@ public class PipResizeGestureHandler { private final PipPinchResizingAlgorithm mPinchResizingAlgorithm; private final int mDisplayId; private final ShellExecutor mMainExecutor; - private final Region mTmpRegion = new Region(); private final PointF mDownPoint = new PointF(); private final PointF mDownSecondPoint = new PointF(); @@ -91,24 +81,15 @@ public class PipResizeGestureHandler { private final Rect mLastResizeBounds = new Rect(); private final Rect mUserResizeBounds = new Rect(); private final Rect mDownBounds = new Rect(); - private final Rect mDragCornerSize = new Rect(); - private final Rect mTmpTopLeftCorner = new Rect(); - private final Rect mTmpTopRightCorner = new Rect(); - private final Rect mTmpBottomLeftCorner = new Rect(); - private final Rect mTmpBottomRightCorner = new Rect(); - private final Rect mDisplayBounds = new Rect(); - private final Function<Rect, Rect> mMovementBoundsSupplier; private final Runnable mUpdateMovementBoundsRunnable; private final Consumer<Rect> mUpdateResizeBoundsCallback; - private int mDelta; private float mTouchSlop; private boolean mAllowGesture; private boolean mIsAttached; private boolean mIsEnabled; private boolean mEnablePinchResize; - private boolean mEnableDragCornerResize; private boolean mIsSysUiStateValid; private boolean mThresholdCrossed; private boolean mOngoingPinchToResize = false; @@ -132,7 +113,7 @@ public class PipResizeGestureHandler { PipBoundsState pipBoundsState, PipMotionHelper motionHelper, PipTouchState pipTouchState, PipTaskOrganizer pipTaskOrganizer, PipDismissTargetHandler pipDismissTargetHandler, - Function<Rect, Rect> movementBoundsSupplier, Runnable updateMovementBoundsRunnable, + Runnable updateMovementBoundsRunnable, PipUiEventLogger pipUiEventLogger, PhonePipMenuController menuActivityController, ShellExecutor mainExecutor, @Nullable PipPerfHintController pipPerfHintController) { mContext = context; @@ -145,7 +126,6 @@ public class PipResizeGestureHandler { mPipTouchState = pipTouchState; mPipTaskOrganizer = pipTaskOrganizer; mPipDismissTargetHandler = pipDismissTargetHandler; - mMovementBoundsSupplier = movementBoundsSupplier; mUpdateMovementBoundsRunnable = updateMovementBoundsRunnable; mPhonePipMenuController = menuActivityController; mPipUiEventLogger = pipUiEventLogger; @@ -181,20 +161,9 @@ public class PipResizeGestureHandler { } private void reloadResources() { - final Resources res = mContext.getResources(); - mDelta = res.getDimensionPixelSize(R.dimen.pip_resize_edge_size); - mEnableDragCornerResize = DesktopExperienceFlags.ENABLE_DESKTOP_WINDOWING_PIP.isTrue(); mTouchSlop = ViewConfiguration.get(mContext).getScaledTouchSlop(); } - private void resetDragCorners() { - mDragCornerSize.set(0, 0, mDelta, mDelta); - mTmpTopLeftCorner.set(mDragCornerSize); - mTmpTopRightCorner.set(mDragCornerSize); - mTmpBottomLeftCorner.set(mDragCornerSize); - mTmpBottomRightCorner.set(mDragCornerSize); - } - private void disposeInputChannel() { if (mInputEventReceiver != null) { mInputEventReceiver.dispose(); @@ -242,7 +211,7 @@ public class PipResizeGestureHandler { @VisibleForTesting void onInputEvent(InputEvent ev) { - if (!mEnableDragCornerResize && !mEnablePinchResize) { + if (!mEnablePinchResize) { // No need to handle anything if neither form of resizing is enabled. return; } @@ -270,8 +239,6 @@ public class PipResizeGestureHandler { if (mEnablePinchResize && mOngoingPinchToResize) { onPinchResize(mv); - } else if (mEnableDragCornerResize) { - onDragCornerResize(mv); } } } @@ -283,48 +250,6 @@ public class PipResizeGestureHandler { return mCtrlType != CTRL_NONE || mOngoingPinchToResize; } - /** - * Check whether the current x,y coordinate is within the region in which drag-resize should - * start. - * This consists of 4 small squares on the 4 corners of the PIP window, a quarter of which - * overlaps with the PIP window while the rest goes outside of the PIP window. - * _ _ _ _ - * |_|_|_________|_|_| - * |_|_| |_|_| - * | PIP | - * | WINDOW | - * _|_ _|_ - * |_|_|_________|_|_| - * |_|_| |_|_| - */ - public boolean isWithinDragResizeRegion(int x, int y) { - if (!mEnableDragCornerResize) { - return false; - } - - final Rect currentPipBounds = mPipBoundsState.getBounds(); - if (currentPipBounds == null) { - return false; - } - resetDragCorners(); - mTmpTopLeftCorner.offset(currentPipBounds.left - mDelta / 2, - currentPipBounds.top - mDelta / 2); - mTmpTopRightCorner.offset(currentPipBounds.right - mDelta / 2, - currentPipBounds.top - mDelta / 2); - mTmpBottomLeftCorner.offset(currentPipBounds.left - mDelta / 2, - currentPipBounds.bottom - mDelta / 2); - mTmpBottomRightCorner.offset(currentPipBounds.right - mDelta / 2, - currentPipBounds.bottom - mDelta / 2); - - mTmpRegion.setEmpty(); - mTmpRegion.op(mTmpTopLeftCorner, Region.Op.UNION); - mTmpRegion.op(mTmpTopRightCorner, Region.Op.UNION); - mTmpRegion.op(mTmpBottomLeftCorner, Region.Op.UNION); - mTmpRegion.op(mTmpBottomRightCorner, Region.Op.UNION); - - return mTmpRegion.contains(x, y); - } - public boolean isUsingPinchToZoom() { return mEnablePinchResize; } @@ -335,62 +260,17 @@ public class PipResizeGestureHandler { public boolean willStartResizeGesture(MotionEvent ev) { if (isInValidSysUiState()) { - switch (ev.getActionMasked()) { - case MotionEvent.ACTION_DOWN: - if (isWithinDragResizeRegion((int) ev.getRawX(), (int) ev.getRawY())) { - return true; - } - break; - - case MotionEvent.ACTION_POINTER_DOWN: - if (mEnablePinchResize && ev.getPointerCount() == 2) { - onPinchResize(ev); - mOngoingPinchToResize = mAllowGesture; - return mAllowGesture; - } - break; - - default: - break; + if (ev.getActionMasked() == MotionEvent.ACTION_POINTER_DOWN) { + if (mEnablePinchResize && ev.getPointerCount() == 2) { + onPinchResize(ev); + mOngoingPinchToResize = mAllowGesture; + return mAllowGesture; + } } } return false; } - private void setCtrlType(int x, int y) { - final Rect currentPipBounds = mPipBoundsState.getBounds(); - - Rect movementBounds = mMovementBoundsSupplier.apply(currentPipBounds); - - mDisplayBounds.set(movementBounds.left, - movementBounds.top, - movementBounds.right + currentPipBounds.width(), - movementBounds.bottom + currentPipBounds.height()); - - if (mTmpTopLeftCorner.contains(x, y) && currentPipBounds.top != mDisplayBounds.top - && currentPipBounds.left != mDisplayBounds.left) { - mCtrlType |= CTRL_LEFT; - mCtrlType |= CTRL_TOP; - } - if (mTmpTopRightCorner.contains(x, y) && currentPipBounds.top != mDisplayBounds.top - && currentPipBounds.right != mDisplayBounds.right) { - mCtrlType |= CTRL_RIGHT; - mCtrlType |= CTRL_TOP; - } - if (mTmpBottomRightCorner.contains(x, y) - && currentPipBounds.bottom != mDisplayBounds.bottom - && currentPipBounds.right != mDisplayBounds.right) { - mCtrlType |= CTRL_RIGHT; - mCtrlType |= CTRL_BOTTOM; - } - if (mTmpBottomLeftCorner.contains(x, y) - && currentPipBounds.bottom != mDisplayBounds.bottom - && currentPipBounds.left != mDisplayBounds.left) { - mCtrlType |= CTRL_LEFT; - mCtrlType |= CTRL_BOTTOM; - } - } - private boolean isInValidSysUiState() { return mIsSysUiStateValid; } @@ -484,61 +364,21 @@ public class PipResizeGestureHandler { } } - private void onDragCornerResize(MotionEvent ev) { - int action = ev.getActionMasked(); - float x = ev.getX(); - float y = ev.getY() - mOhmOffset; - if (action == MotionEvent.ACTION_DOWN) { - mLastResizeBounds.setEmpty(); - mAllowGesture = isInValidSysUiState() && isWithinDragResizeRegion((int) x, (int) y); - if (mAllowGesture) { - setCtrlType((int) x, (int) y); - mDownPoint.set(x, y); - mDownBounds.set(mPipBoundsState.getBounds()); - } - } else if (mAllowGesture) { - switch (action) { - case MotionEvent.ACTION_POINTER_DOWN: - // We do not support multi touch for resizing via drag - mAllowGesture = false; - break; - case MotionEvent.ACTION_MOVE: - // Capture inputs - if (!mThresholdCrossed - && Math.hypot(x - mDownPoint.x, y - mDownPoint.y) > mTouchSlop) { - mThresholdCrossed = true; - // Reset the down to begin resizing from this point - mDownPoint.set(x, y); - mInputMonitor.pilferPointers(); - } - if (mThresholdCrossed) { - if (mPhonePipMenuController.isMenuVisible()) { - mPhonePipMenuController.hideMenu(ANIM_TYPE_NONE, - false /* resize */); - } - final Rect currentPipBounds = mPipBoundsState.getBounds(); - mLastResizeBounds.set(TaskResizingAlgorithm.resizeDrag(x, y, - mDownPoint.x, mDownPoint.y, currentPipBounds, mCtrlType, mMinSize.x, - mMinSize.y, mMaxSize, true, - mDownBounds.width() > mDownBounds.height())); - mPipBoundsAlgorithm.transformBoundsToAspectRatio(mLastResizeBounds, - mPipBoundsState.getAspectRatio(), false /* useCurrentMinEdgeSize */, - true /* useCurrentSize */); - mPipTaskOrganizer.scheduleUserResizePip(mDownBounds, mLastResizeBounds, - null); - mPipBoundsState.setHasUserResizedPip(true); - } - break; - case MotionEvent.ACTION_UP: - case MotionEvent.ACTION_CANCEL: - finishResize(); - break; - } - } + private void snapToMovementBoundsEdge(Rect bounds, Rect movementBounds) { + final int leftEdge = bounds.left; + + + final int fromLeft = Math.abs(leftEdge - movementBounds.left); + final int fromRight = Math.abs(movementBounds.right - leftEdge); + + // The PIP will be snapped to either the right or left edge, so calculate which one + // is closest to the current position. + final int newLeft = fromLeft < fromRight + ? movementBounds.left : movementBounds.right; + + bounds.offsetTo(newLeft, mLastResizeBounds.top); } - - /** * Resizes the pip window and updates user-resized bounds. * @@ -548,8 +388,11 @@ public class PipResizeGestureHandler { void userResizeTo(Rect bounds, float snapFraction) { Rect finalBounds = new Rect(bounds); + // get the current movement bounds + final Rect movementBounds = mPipBoundsAlgorithm.getMovementBounds(finalBounds); + // snap the target bounds to the either left or right edge, by choosing the closer one - mPipBoundsAlgorithm.snapToMovementBoundsEdge(bounds); + snapToMovementBoundsEdge(finalBounds, movementBounds); // apply the requested snap fraction onto the target bounds mPipBoundsAlgorithm.applySnapFraction(finalBounds, snapFraction); @@ -581,10 +424,15 @@ public class PipResizeGestureHandler { resizeRectAboutCenter(mLastResizeBounds, mMinSize.x, mMinSize.y); } - // snap mLastResizeBounds to the correct edge based on movement bounds - mPipBoundsAlgorithm.snapToMovementBoundsEdge(mLastResizeBounds); + // get the current movement bounds + final Rect movementBounds = mPipBoundsAlgorithm + .getMovementBounds(mLastResizeBounds); - final float snapFraction = mPipBoundsAlgorithm.getSnapFraction(mLastResizeBounds); + // snap mLastResizeBounds to the correct edge based on movement bounds + snapToMovementBoundsEdge(mLastResizeBounds, movementBounds); + + final float snapFraction = mPipBoundsAlgorithm.getSnapFraction( + mLastResizeBounds, movementBounds); mPipBoundsAlgorithm.applySnapFraction(mLastResizeBounds, snapFraction); // disable any touch events beyond resizing too diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PipTouchHandler.java b/wmshell/src/com/android/wm/shell/pip/phone/PipTouchHandler.java index d378ede042..d8ac8e948a 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PipTouchHandler.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PipTouchHandler.java @@ -48,7 +48,7 @@ import android.view.accessibility.AccessibilityNodeInfo; import android.view.accessibility.AccessibilityWindowInfo; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.common.FloatingContentCoordinator; import com.android.wm.shell.common.ShellExecutor; @@ -57,11 +57,11 @@ import com.android.wm.shell.common.pip.PipBoundsState; import com.android.wm.shell.common.pip.PipDoubleTapHelper; import com.android.wm.shell.common.pip.PipPerfHintController; import com.android.wm.shell.common.pip.PipUiEventLogger; +import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.common.pip.SizeSpecSource; import com.android.wm.shell.pip.PipAnimationController; import com.android.wm.shell.pip.PipTaskOrganizer; import com.android.wm.shell.pip.PipTransitionController; -import com.android.wm.shell.shared.pip.PipFlags; import com.android.wm.shell.sysui.ShellInit; import java.io.PrintWriter; @@ -213,7 +213,7 @@ public class PipTouchHandler { mPipResizeGestureHandler = new PipResizeGestureHandler(context, pipBoundsAlgorithm, pipBoundsState, mMotionHelper, mTouchState, pipTaskOrganizer, mPipDismissTargetHandler, - this::getMovementBounds, this::updateMovementBounds, pipUiEventLogger, + this::updateMovementBounds, pipUiEventLogger, menuController, mainExecutor, mPipPerfHintController); mConnection = new PipAccessibilityInteractionConnection(mContext, pipBoundsState, mMotionHelper, pipTaskOrganizer, mPipBoundsAlgorithm.getSnapAlgorithm(), @@ -224,7 +224,7 @@ public class PipTouchHandler { // TODO(b/181599115): This should really be initializes as part of the pip controller, but // until all PIP implementations derive from the controller, just initialize the touch handler // if it is needed - if (!PipFlags.isPip2ExperimentEnabled()) { + if (!PipUtils.isPip2ExperimentEnabled()) { shellInit.addInitCallback(this::onInit, this); } } @@ -909,6 +909,10 @@ public class PipTouchHandler { && mMenuState != MENU_STATE_FULL) { // If using pinch to zoom, double-tap functions as resizing between max/min size if (mPipResizeGestureHandler.isUsingPinchToZoom()) { + final boolean toExpand = mPipBoundsState.getBounds().width() + < mPipBoundsState.getMaxSize().x + && mPipBoundsState.getBounds().height() + < mPipBoundsState.getMaxSize().y; if (mMenuController.isMenuVisible()) { mMenuController.hideMenu(ANIM_TYPE_NONE, false /* resize */); } @@ -927,7 +931,6 @@ public class PipTouchHandler { } else { animateToUnexpandedState(getUserResizeBounds()); } - mPipBoundsState.setHasUserResizedPip(true); } else { // Expand to fullscreen if this is a double tap // the PiP should be frozen until the transition ends diff --git a/wmshell/src/com/android/wm/shell/pip/phone/PipTouchState.java b/wmshell/src/com/android/wm/shell/pip/phone/PipTouchState.java index cb82db6307..5d858fa9aa 100644 --- a/wmshell/src/com/android/wm/shell/pip/phone/PipTouchState.java +++ b/wmshell/src/com/android/wm/shell/pip/phone/PipTouchState.java @@ -23,7 +23,7 @@ import android.view.VelocityTracker; import android.view.ViewConfiguration; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.protolog.ShellProtoLogGroup; diff --git a/wmshell/src/com/android/wm/shell/pip/tv/OWNERS b/wmshell/src/com/android/wm/shell/pip/tv/OWNERS index 245669b644..5aa3c4e2ab 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/OWNERS +++ b/wmshell/src/com/android/wm/shell/pip/tv/OWNERS @@ -1,2 +1,3 @@ # WM shell sub-module TV pip owner +galinap@google.com bronger@google.com diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipActionsProvider.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipActionsProvider.java index 50d22ad00b..6b890c49b7 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipActionsProvider.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipActionsProvider.java @@ -33,7 +33,7 @@ import android.app.RemoteAction; import android.content.Context; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.common.pip.PipMediaController; import com.android.wm.shell.common.pip.PipUtils; diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipBackgroundView.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipBackgroundView.java index eb7a10cc9d..0221db836d 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipBackgroundView.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipBackgroundView.java @@ -28,7 +28,7 @@ import android.widget.FrameLayout; import androidx.annotation.NonNull; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.protolog.ShellProtoLogGroup; diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipBoundsAlgorithm.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipBoundsAlgorithm.java index 188c35ff35..72c0cd71f1 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipBoundsAlgorithm.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipBoundsAlgorithm.java @@ -33,7 +33,7 @@ import android.view.Gravity; import androidx.annotation.NonNull; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipBoundsController.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipBoundsController.java index 1afb470c5e..8a215b4b2e 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipBoundsController.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipBoundsController.java @@ -26,7 +26,7 @@ import android.graphics.Rect; import android.os.Handler; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.pip.tv.TvPipKeepClearAlgorithm.Placement; import com.android.wm.shell.protolog.ShellProtoLogGroup; diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipController.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipController.java index 56a158b0c1..3d286461ef 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipController.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipController.java @@ -39,7 +39,7 @@ import android.view.Gravity; import androidx.annotation.NonNull; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.WindowManagerShellWrapper; import com.android.wm.shell.common.DisplayController; @@ -257,7 +257,7 @@ public class TvPipController implements PipTransitionController.PipTransitionCal } private void onInit() { - mPipTransitionController.registerPipTransitionCallback(this, mMainExecutor); + mPipTransitionController.registerPipTransitionCallback(this); reloadResources(); @@ -269,8 +269,6 @@ public class TvPipController implements PipTransitionController.PipTransitionCal mShellController.addConfigurationChangeListener(this); mShellController.addUserChangeListener(this); - - mAppOpsListener.setCallback(mPipTaskOrganizer::removePip); } @Override @@ -478,7 +476,6 @@ public class TvPipController implements PipTransitionController.PipTransitionCal } mPipTaskOrganizer.removePip(); mTvPipMenuController.closeMenu(); - mPipNotificationController.dismiss(); } @Override diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipCustomAction.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipCustomAction.java index 327ceef00e..977aad4a89 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipCustomAction.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipCustomAction.java @@ -27,7 +27,7 @@ import android.content.Context; import android.os.Bundle; import android.os.Handler; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.TvWindowMenuActionButton; import com.android.wm.shell.protolog.ShellProtoLogGroup; diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuController.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuController.java index 5894ea8d0b..6b5bdd2299 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuController.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuController.java @@ -32,13 +32,12 @@ import android.view.View; import android.view.ViewRootImpl; import android.view.WindowManager; import android.view.WindowManagerGlobal; -import android.view.accessibility.AccessibilityManager; import android.window.SurfaceSyncGroup; import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.common.SystemWindows; import com.android.wm.shell.common.pip.PipMenuController; @@ -64,8 +63,6 @@ public class TvPipMenuController implements PipMenuController, TvPipMenuView.Lis private TvPipMenuView mPipMenuView; private TvPipBackgroundView mPipBackgroundView; - private final AccessibilityManager mA11yManager; - private boolean mIsReloading; private static final int PIP_MENU_FORCE_CLOSE_DELAY_MS = 10_000; private final Runnable mClosePipMenuRunnable = this::closeMenu; @@ -110,8 +107,6 @@ public class TvPipMenuController implements PipMenuController, TvPipMenuView.Lis mSystemWindows = systemWindows; mMainHandler = mainHandler; - mA11yManager = context.getSystemService(AccessibilityManager.class); - // We need to "close" the menu the platform call for all the system dialogs to close (for // example, on the Home button press). final BroadcastReceiver closeSystemDialogsBroadcastReceiver = new BroadcastReceiver() { @@ -504,9 +499,7 @@ public class TvPipMenuController implements PipMenuController, TvPipMenuView.Lis switchToMenuMode(menuMode); } else { if (isMenuOpen(menuMode)) { - if (!mA11yManager.isEnabled()) { - mMainHandler.postDelayed(mClosePipMenuRunnable, PIP_MENU_FORCE_CLOSE_DELAY_MS); - } + mMainHandler.postDelayed(mClosePipMenuRunnable, PIP_MENU_FORCE_CLOSE_DELAY_MS); mMenuModeOnFocus = menuMode; } // Send a request to gain window focus if the menu is open, or lose window focus @@ -601,10 +594,8 @@ public class TvPipMenuController implements PipMenuController, TvPipMenuView.Lis public void onUserInteracting() { ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: onUserInteracting - mCurrentMenuMode=%s", TAG, getMenuModeString()); - if (mMainHandler.hasCallbacks(mClosePipMenuRunnable)) { - mMainHandler.removeCallbacks(mClosePipMenuRunnable); - mMainHandler.postDelayed(mClosePipMenuRunnable, PIP_MENU_FORCE_CLOSE_DELAY_MS); - } + mMainHandler.removeCallbacks(mClosePipMenuRunnable); + mMainHandler.postDelayed(mClosePipMenuRunnable, PIP_MENU_FORCE_CLOSE_DELAY_MS); } @Override diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuEduTextDrawer.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuEduTextDrawer.java index eabf1b0b30..adc03cf5c4 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuEduTextDrawer.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuEduTextDrawer.java @@ -39,7 +39,7 @@ import android.widget.TextView; import androidx.annotation.NonNull; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import java.util.Arrays; diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuView.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuView.java index c7704f0b4e..4a767ef2a1 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuView.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipMenuView.java @@ -50,7 +50,7 @@ import android.widget.ImageView; import androidx.annotation.NonNull; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.widget.LinearLayoutManager; import com.android.internal.widget.RecyclerView; import com.android.wm.shell.R; diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipNotificationController.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipNotificationController.java index ce5079227b..54e162bba2 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipNotificationController.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipNotificationController.java @@ -33,7 +33,7 @@ import android.os.Bundle; import android.text.TextUtils; import com.android.internal.messages.nano.SystemMessageProto.SystemMessage; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.ImageUtils; import com.android.wm.shell.R; import com.android.wm.shell.common.pip.PipMediaController; diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipTaskOrganizer.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipTaskOrganizer.java index de012741d9..614ef2ab98 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipTaskOrganizer.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipTaskOrganizer.java @@ -21,7 +21,6 @@ import android.content.Context; import androidx.annotation.NonNull; -import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.ShellExecutor; @@ -39,7 +38,6 @@ import com.android.wm.shell.pip.PipSurfaceTransactionHelper; import com.android.wm.shell.pip.PipTaskOrganizer; import com.android.wm.shell.pip.PipTransitionState; import com.android.wm.shell.splitscreen.SplitScreenController; -import com.android.wm.shell.sysui.ShellInit; import java.util.Objects; import java.util.Optional; @@ -51,7 +49,6 @@ public class TvPipTaskOrganizer extends PipTaskOrganizer { private final TvPipTransition mTvPipTransition; public TvPipTaskOrganizer(Context context, - @NonNull ShellInit shellInit, @NonNull SyncTransactionQueue syncTransactionQueue, @NonNull PipTransitionState pipTransitionState, @NonNull PipBoundsState pipBoundsState, @@ -64,17 +61,15 @@ public class TvPipTaskOrganizer extends PipTaskOrganizer { @NonNull PipParamsChangedForwarder pipParamsChangedForwarder, Optional<SplitScreenController> splitScreenOptional, Optional<PipPerfHintController> pipPerfHintControllerOptional, - @NonNull RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, @NonNull DisplayController displayController, @NonNull PipUiEventLogger pipUiEventLogger, @NonNull ShellTaskOrganizer shellTaskOrganizer, ShellExecutor mainExecutor) { - super(context, shellInit, syncTransactionQueue, pipTransitionState, pipBoundsState, + super(context, syncTransactionQueue, pipTransitionState, pipBoundsState, pipDisplayLayoutState, boundsHandler, pipMenuController, pipAnimationController, surfaceTransactionHelper, tvPipTransition, pipParamsChangedForwarder, - splitScreenOptional, pipPerfHintControllerOptional, Optional.empty(), - rootTaskDisplayAreaOrganizer, displayController, pipUiEventLogger, - shellTaskOrganizer, mainExecutor); + splitScreenOptional, pipPerfHintControllerOptional, displayController, + pipUiEventLogger, shellTaskOrganizer, mainExecutor); mTvPipTransition = tvPipTransition; } diff --git a/wmshell/src/com/android/wm/shell/pip/tv/TvPipTransition.java b/wmshell/src/com/android/wm/shell/pip/tv/TvPipTransition.java index 0962519720..ca0d61f8fc 100644 --- a/wmshell/src/com/android/wm/shell/pip/tv/TvPipTransition.java +++ b/wmshell/src/com/android/wm/shell/pip/tv/TvPipTransition.java @@ -23,6 +23,7 @@ import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManager.TRANSIT_OPEN; import static android.view.WindowManager.TRANSIT_PIP; import static android.view.WindowManager.TRANSIT_TO_BACK; +import static android.view.WindowManager.transitTypeToString; import static com.android.wm.shell.common.pip.PipMenuController.ALPHA_NO_CHANGE; import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_LEAVE_PIP; @@ -34,7 +35,6 @@ import static com.android.wm.shell.pip.PipTransitionState.EXITING_PIP; import static com.android.wm.shell.pip.PipTransitionState.UNDEFINED; import static com.android.wm.shell.transition.Transitions.TRANSIT_EXIT_PIP; import static com.android.wm.shell.transition.Transitions.TRANSIT_REMOVE_PIP; -import static com.android.wm.shell.transition.Transitions.transitTypeToString; import android.animation.AnimationHandler; import android.animation.Animator; @@ -62,7 +62,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.internal.graphics.SfVsyncFrameCallbackProvider; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.pip.PipDisplayLayoutState; @@ -338,13 +338,12 @@ public class TvPipTransition extends PipTransitionController { final Rect pipBounds = mPipBoundsState.getBounds(); mSurfaceTransactionHelper .resetScale(startTransaction, pipLeash, pipBounds) - .cropAndPosition(startTransaction, pipLeash, pipBounds) + .crop(startTransaction, pipLeash, pipBounds) .shadow(startTransaction, pipLeash, false); final SurfaceControl.Transaction transaction = mTransactionFactory.getTransaction(); for (SurfaceControl leash : closeLeashes) { - mSurfaceTransactionHelper.shadow(startTransaction, leash, - false /* applyShadowRadius */); + startTransaction.setShadowRadius(leash, 0f); } ValueAnimator closeFadeOutAnimator = createAnimator(); @@ -362,8 +361,7 @@ public class TvPipTransition extends PipTransitionController { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: close animation: start", TAG); for (SurfaceControl leash : closeLeashes) { - mSurfaceTransactionHelper.shadow(startTransaction, leash, - false /* applyShadowRadius */); + startTransaction.setShadowRadius(leash, 0f); } startTransaction.apply(); @@ -422,7 +420,7 @@ public class TvPipTransition extends PipTransitionController { mSurfaceTransactionHelper .resetScale(finishTransaction, leash, pipBounds) - .cropAndPosition(finishTransaction, leash, pipBounds) + .crop(finishTransaction, leash, pipBounds) .shadow(finishTransaction, leash, false); final Rect currentBounds = pipChange.getStartAbsBounds(); @@ -445,7 +443,7 @@ public class TvPipTransition extends PipTransitionController { SurfaceControl.Transaction tx = mTransactionFactory.getTransaction(); mSurfaceTransactionHelper .resetScale(tx, leash, pipBounds) - .cropAndPosition(tx, leash, pipBounds) + .crop(tx, leash, pipBounds) .shadow(tx, leash, false); mShellTaskOrganizer.applyTransaction(resizePipWct); tx.apply(); @@ -655,9 +653,7 @@ public class TvPipTransition extends PipTransitionController { @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: merge animation", TAG); if (mCurrentAnimator != null && mCurrentAnimator.isRunning()) { diff --git a/wmshell/src/com/android/wm/shell/pip2/PipSurfaceTransactionHelper.java b/wmshell/src/com/android/wm/shell/pip2/PipSurfaceTransactionHelper.java index b7f0c767b6..24077a35d4 100644 --- a/wmshell/src/com/android/wm/shell/pip2/PipSurfaceTransactionHelper.java +++ b/wmshell/src/com/android/wm/shell/pip2/PipSurfaceTransactionHelper.java @@ -19,94 +19,107 @@ package com.android.wm.shell.pip2; import android.content.Context; import android.graphics.Matrix; import android.graphics.Rect; -import android.gui.BorderSettings; -import android.gui.BoxShadowSettings; +import android.graphics.RectF; import android.view.Choreographer; import android.view.SurfaceControl; -import androidx.annotation.NonNull; - -import com.android.wm.shell.Flags; import com.android.wm.shell.R; -import com.android.wm.shell.common.BoxShadowHelper; -import com.android.wm.shell.common.pip.PipDisplayLayoutState; -import com.android.wm.shell.common.pip.PipUtils; -import com.android.wm.shell.sysui.ShellInit; +import com.android.wm.shell.transition.Transitions; /** * Abstracts the common operations on {@link SurfaceControl.Transaction} for PiP transition. */ -public class PipSurfaceTransactionHelper implements PipDisplayLayoutState.DisplayIdListener { +public class PipSurfaceTransactionHelper { + /** for {@link #scale(SurfaceControl.Transaction, SurfaceControl, Rect, Rect)} operation */ private final Matrix mTmpTransform = new Matrix(); private final float[] mTmpFloat9 = new float[9]; + private final RectF mTmpSourceRectF = new RectF(); + private final RectF mTmpDestinationRectF = new RectF(); private final Rect mTmpDestinationRect = new Rect(); private int mCornerRadius; private int mShadowRadius; - private float mMirrorOpacity; - private BoxShadowSettings mBoxShadowSettings; - private BorderSettings mBorderSettings; - private Context mContext; - private PipDisplayLayoutState mPipDisplayLayoutState; - - public PipSurfaceTransactionHelper(Context context, @NonNull ShellInit shellInit, - PipDisplayLayoutState pipDisplayLayoutState) { - mContext = context; - mPipDisplayLayoutState = pipDisplayLayoutState; - shellInit.addInitCallback(this::onInit, this); - } - - /** Called when Shell is done initializing. */ - public void onInit() { - mPipDisplayLayoutState.addDisplayIdListener(this); - onThemeChanged(mContext); - reloadResources(); - } - - private void reloadResources() { - mCornerRadius = mContext.getResources().getDimensionPixelSize(R.dimen.pip_corner_radius); - mShadowRadius = mContext.getResources().getDimensionPixelSize(R.dimen.pip_shadow_radius); - mMirrorOpacity = mContext.getResources().getFloat( - R.dimen.config_pipDraggingAcrossDisplaysOpacity); + public PipSurfaceTransactionHelper(Context context) { + onDensityOrFontScaleChanged(context); } /** - * Called when theme changes. + * Called when display size or font size of settings changed * * @param context the current context */ - public void onThemeChanged(Context context) { - if (Flags.enablePipBoxShadows()) { - if (PipUtils.isDarkSystemTheme(context)) { - mBoxShadowSettings = BoxShadowHelper.getBoxShadowSettings(context, - new int[]{R.style.BoxShadowParamsPIPDark1, - R.style.BoxShadowParamsPIPDark2}); - mBorderSettings = BoxShadowHelper.getBorderSettings(context, - R.style.BorderSettingsPIPDark); - } else { - mBoxShadowSettings = BoxShadowHelper.getBoxShadowSettings(context, - new int[]{R.style.BoxShadowParamsPIPLight1, - R.style.BoxShadowParamsPIPLight2}); - - mBorderSettings = BoxShadowHelper.getBorderSettings(context, - R.style.BorderSettingsPIPLight); - } - } - } - - @Override - public void onDisplayIdChanged(@NonNull Context context) { - mContext = context; - reloadResources(); + public void onDensityOrFontScaleChanged(Context context) { + mCornerRadius = context.getResources().getDimensionPixelSize(R.dimen.pip_corner_radius); + mShadowRadius = context.getResources().getDimensionPixelSize(R.dimen.pip_shadow_radius); } /** - * Gets corner radius which is loaded from resources. - * @return the corner radius. + * Operates the alpha on a given transaction and leash + * @return same {@link PipSurfaceTransactionHelper} instance for method chaining */ - public int getCornerRadius() { - return mCornerRadius; + public PipSurfaceTransactionHelper alpha(SurfaceControl.Transaction tx, SurfaceControl leash, + float alpha) { + tx.setAlpha(leash, alpha); + return this; + } + + /** + * Operates the crop (and position) on a given transaction and leash + * @return same {@link PipSurfaceTransactionHelper} instance for method chaining + */ + public PipSurfaceTransactionHelper crop(SurfaceControl.Transaction tx, SurfaceControl leash, + Rect destinationBounds) { + tx.setWindowCrop(leash, destinationBounds.width(), destinationBounds.height()) + .setPosition(leash, destinationBounds.left, destinationBounds.top); + return this; + } + + /** + * Operates the scale (setMatrix) on a given transaction and leash + * @return same {@link PipSurfaceTransactionHelper} instance for method chaining + */ + public PipSurfaceTransactionHelper scale(SurfaceControl.Transaction tx, SurfaceControl leash, + Rect sourceBounds, Rect destinationBounds) { + mTmpDestinationRectF.set(destinationBounds); + return scale(tx, leash, sourceBounds, mTmpDestinationRectF, 0 /* degrees */); + } + + /** + * Operates the scale (setMatrix) on a given transaction and leash + * @return same {@link PipSurfaceTransactionHelper} instance for method chaining + */ + public PipSurfaceTransactionHelper scale(SurfaceControl.Transaction tx, SurfaceControl leash, + Rect sourceBounds, RectF destinationBounds) { + return scale(tx, leash, sourceBounds, destinationBounds, 0 /* degrees */); + } + + /** + * Operates the scale (setMatrix) on a given transaction and leash + * @return same {@link PipSurfaceTransactionHelper} instance for method chaining + */ + public PipSurfaceTransactionHelper scale(SurfaceControl.Transaction tx, SurfaceControl leash, + Rect sourceBounds, Rect destinationBounds, float degrees) { + mTmpDestinationRectF.set(destinationBounds); + return scale(tx, leash, sourceBounds, mTmpDestinationRectF, degrees); + } + + /** + * Operates the scale (setMatrix) on a given transaction and leash, along with a rotation. + * @return same {@link PipSurfaceTransactionHelper} instance for method chaining + */ + public PipSurfaceTransactionHelper scale(SurfaceControl.Transaction tx, SurfaceControl leash, + Rect sourceBounds, RectF destinationBounds, float degrees) { + mTmpSourceRectF.set(sourceBounds); + // We want the matrix to position the surface relative to the screen coordinates so offset + // the source to 0,0 + mTmpSourceRectF.offsetTo(0, 0); + mTmpDestinationRectF.set(destinationBounds); + mTmpTransform.setRectToRect(mTmpSourceRectF, mTmpDestinationRectF, Matrix.ScaleToFit.FILL); + mTmpTransform.postRotate(degrees, + mTmpDestinationRectF.centerX(), mTmpDestinationRectF.centerY()); + tx.setMatrix(leash, mTmpTransform, mTmpFloat9); + return this; } /** @@ -167,7 +180,8 @@ public class PipSurfaceTransactionHelper implements PipDisplayLayoutState.Displa // destination are different. final float scale = srcW <= srcH ? (float) destW / srcW : (float) destH / srcH; final Rect crop = mTmpDestinationRect; - crop.set(0, 0, destW, destH); + crop.set(0, 0, Transitions.SHELL_TRANSITIONS_ROTATION ? destH + : destW, Transitions.SHELL_TRANSITIONS_ROTATION ? destW : destH); // Inverse scale for crop to fit in screen coordinates. crop.scale(1 / scale); crop.offset(insets.left, insets.top); @@ -186,12 +200,25 @@ public class PipSurfaceTransactionHelper implements PipDisplayLayoutState.Displa } } mTmpTransform.setScale(scale, scale); - mTmpTransform.postTranslate(positionX, positionY); mTmpTransform.postRotate(degrees); + mTmpTransform.postTranslate(positionX, positionY); tx.setMatrix(leash, mTmpTransform, mTmpFloat9).setCrop(leash, crop); return this; } + /** + * Resets the scale (setMatrix) on a given transaction and leash if there's any + * + * @return same {@link PipSurfaceTransactionHelper} instance for method chaining + */ + public PipSurfaceTransactionHelper resetScale(SurfaceControl.Transaction tx, + SurfaceControl leash, + Rect destinationBounds) { + tx.setMatrix(leash, Matrix.IDENTITY_MATRIX, mTmpFloat9) + .setPosition(leash, destinationBounds.left, destinationBounds.top); + return this; + } + /** * Operates the round corner radius on a given transaction and leash * @return same {@link PipSurfaceTransactionHelper} instance for method chaining @@ -220,54 +247,7 @@ public class PipSurfaceTransactionHelper implements PipDisplayLayoutState.Displa */ public PipSurfaceTransactionHelper shadow(SurfaceControl.Transaction tx, SurfaceControl leash, boolean applyShadowRadius) { - if (Flags.enablePipBoxShadows()) { - if (applyShadowRadius) { - tx.setBoxShadowSettings(leash, mBoxShadowSettings); - tx.setBorderSettings(leash, mBorderSettings); - } else { - tx.setBoxShadowSettings(leash, new BoxShadowSettings()); - tx.setBorderSettings(leash, new BorderSettings()); - } - } else { - tx.setShadowRadius(leash, applyShadowRadius ? mShadowRadius : 0); - } - return this; - } - - /** - * Sets default transformations for mirrors a given mirror root of a PiP {@param leash}. - */ - public PipSurfaceTransactionHelper setMirrorTransformations(SurfaceControl.Transaction tx, - SurfaceControl leash) { - tx.setAlpha(leash, mMirrorOpacity); - tx.setLayer(leash, Integer.MAX_VALUE); - tx.show(leash); - return this; - } - - /** - * Sets PiP translational, scaling and rotational transformations on a given transaction. - * - * @param leash PiP leash to apply the transformations on - * @param outTransaction transaction to set the matrix on - * @param baseBounds base bounds from PipBoundsState - * @param toBounds bounds to position the PiP to - * @param degrees the angle to rotate the bounds to - */ - public PipSurfaceTransactionHelper setPipTransformations(SurfaceControl leash, - SurfaceControl.Transaction outTransaction, Rect baseBounds, Rect toBounds, - float degrees) { - final float scale = (float) toBounds.width() / baseBounds.width(); - - mTmpTransform.setScale(scale, scale); - mTmpTransform.postTranslate(toBounds.left, toBounds.top); - mTmpTransform.postRotate(degrees, toBounds.centerX(), toBounds.centerY()); - - round(outTransaction, leash, baseBounds, toBounds); - outTransaction.setMatrix(leash, mTmpTransform, mTmpFloat9); - // Note: Put this at layer=MAX_VALUE-2 since the input consumer for PIP is placed at - // MAX_VALUE-1 - outTransaction.setLayer(leash, Integer.MAX_VALUE - 2); + tx.setShadowRadius(leash, applyShadowRadius ? mShadowRadius : 0); return this; } diff --git a/wmshell/src/com/android/wm/shell/pip2/animation/PipAlphaAnimator.java b/wmshell/src/com/android/wm/shell/pip2/animation/PipAlphaAnimator.java index 37a1193295..895c2aeba9 100644 --- a/wmshell/src/com/android/wm/shell/pip2/animation/PipAlphaAnimator.java +++ b/wmshell/src/com/android/wm/shell/pip2/animation/PipAlphaAnimator.java @@ -17,7 +17,6 @@ package com.android.wm.shell.pip2.animation; import android.animation.Animator; -import android.animation.AnimatorListenerAdapter; import android.animation.ValueAnimator; import android.annotation.IntDef; import android.content.Context; @@ -26,7 +25,6 @@ import android.view.SurfaceControl; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.android.internal.annotations.VisibleForTesting; import com.android.wm.shell.R; import com.android.wm.shell.pip2.PipSurfaceTransactionHelper; @@ -36,7 +34,8 @@ import java.lang.annotation.RetentionPolicy; /** * Animator that handles the alpha animation for entering PIP */ -public class PipAlphaAnimator extends ValueAnimator { +public class PipAlphaAnimator extends ValueAnimator implements ValueAnimator.AnimatorUpdateListener, + ValueAnimator.AnimatorListener { @IntDef(prefix = {"FADE_"}, value = { FADE_IN, FADE_OUT @@ -48,76 +47,35 @@ public class PipAlphaAnimator extends ValueAnimator { public static final int FADE_IN = 0; public static final int FADE_OUT = 1; + private final int mEnterAnimationDuration; private final SurfaceControl mLeash; private final SurfaceControl.Transaction mStartTransaction; - private final SurfaceControl.Transaction mFinishTransaction; - - private final int mDirection; - private final Animator.AnimatorListener mAnimatorListener = new AnimatorListenerAdapter() { - @Override - public void onAnimationStart(Animator animation) { - super.onAnimationStart(animation); - if (mAnimationStartCallback != null) { - mAnimationStartCallback.run(); - } - if (mStartTransaction != null) { - onAlphaAnimationUpdate(getStartAlphaValue(), mStartTransaction); - mStartTransaction.apply(); - } - } - - @Override - public void onAnimationEnd(Animator animation) { - super.onAnimationEnd(animation); - if (mFinishTransaction != null) { - onAlphaAnimationUpdate(getEndAlphaValue(), mFinishTransaction); - mFinishTransaction.apply(); - } - if (mAnimationEndCallback != null) { - mAnimationEndCallback.run(); - } - } - }; - - private final ValueAnimator.AnimatorUpdateListener mAnimatorUpdateListener = - new AnimatorUpdateListener() { - @Override - public void onAnimationUpdate(@NonNull ValueAnimator animation) { - final float alpha = (Float) animation.getAnimatedValue(); - final SurfaceControl.Transaction tx = - mSurfaceControlTransactionFactory.getTransaction(); - onAlphaAnimationUpdate(alpha, tx); - } - }; // optional callbacks for tracking animation start and end @Nullable private Runnable mAnimationStartCallback; @Nullable private Runnable mAnimationEndCallback; - @NonNull private PipSurfaceTransactionHelper.SurfaceControlTransactionFactory + private final PipSurfaceTransactionHelper.SurfaceControlTransactionFactory mSurfaceControlTransactionFactory; - @NonNull private final PipSurfaceTransactionHelper mSurfaceTransactionHelper; public PipAlphaAnimator(Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, SurfaceControl leash, - SurfaceControl.Transaction startTransaction, - SurfaceControl.Transaction finishTransaction, + SurfaceControl.Transaction tx, @Fade int direction) { mLeash = leash; - mStartTransaction = startTransaction; - mFinishTransaction = finishTransaction; - mSurfaceTransactionHelper = pipSurfaceTransactionHelper; - - mDirection = direction; - setFloatValues(getStartAlphaValue(), getEndAlphaValue()); + mStartTransaction = tx; + if (direction == FADE_IN) { + setFloatValues(0f, 1f); + } else { // direction == FADE_OUT + setFloatValues(1f, 0f); + } mSurfaceControlTransactionFactory = new PipSurfaceTransactionHelper.VsyncSurfaceControlTransactionFactory(); - final int enterAnimationDuration = context.getResources() + mEnterAnimationDuration = context.getResources() .getInteger(R.integer.config_pipEnterAnimationDuration); - setDuration(enterAnimationDuration); - addListener(mAnimatorListener); - addUpdateListener(mAnimatorUpdateListener); + setDuration(mEnterAnimationDuration); + addListener(this); + addUpdateListener(this); } public void setAnimationStartCallback(@NonNull Runnable runnable) { @@ -128,25 +86,32 @@ public class PipAlphaAnimator extends ValueAnimator { mAnimationEndCallback = runnable; } - private void onAlphaAnimationUpdate(float alpha, SurfaceControl.Transaction tx) { - // only set shadow radius on fade in - tx.setAlpha(mLeash, alpha); - mSurfaceTransactionHelper.round(tx, mLeash, true /* applyCornerRadius */); - mSurfaceTransactionHelper.shadow(tx, mLeash, mDirection == FADE_IN /* applyCornerRadius */); - tx.apply(); + @Override + public void onAnimationStart(@NonNull Animator animation) { + if (mAnimationStartCallback != null) { + mAnimationStartCallback.run(); + } + if (mStartTransaction != null) { + mStartTransaction.apply(); + } } - private float getStartAlphaValue() { - return mDirection == FADE_IN ? 0f : 1f; + @Override + public void onAnimationUpdate(@NonNull ValueAnimator animation) { + final float alpha = (Float) animation.getAnimatedValue(); + mSurfaceControlTransactionFactory.getTransaction().setAlpha(mLeash, alpha).apply(); } - private float getEndAlphaValue() { - return mDirection == FADE_IN ? 1f : 0f; + @Override + public void onAnimationEnd(@NonNull Animator animation) { + if (mAnimationEndCallback != null) { + mAnimationEndCallback.run(); + } } - @VisibleForTesting - void setSurfaceControlTransactionFactory( - @NonNull PipSurfaceTransactionHelper.SurfaceControlTransactionFactory factory) { - mSurfaceControlTransactionFactory = factory; - } + @Override + public void onAnimationCancel(@NonNull Animator animation) {} + + @Override + public void onAnimationRepeat(@NonNull Animator animation) {} } diff --git a/wmshell/src/com/android/wm/shell/pip2/animation/PipResizeAnimator.java b/wmshell/src/com/android/wm/shell/pip2/animation/PipResizeAnimator.java index 27629061b9..5c561fed89 100644 --- a/wmshell/src/com/android/wm/shell/pip2/animation/PipResizeAnimator.java +++ b/wmshell/src/com/android/wm/shell/pip2/animation/PipResizeAnimator.java @@ -17,7 +17,6 @@ package com.android.wm.shell.pip2.animation; import android.animation.Animator; -import android.animation.AnimatorListenerAdapter; import android.animation.RectEvaluator; import android.animation.ValueAnimator; import android.content.Context; @@ -28,14 +27,13 @@ import android.view.SurfaceControl; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.android.internal.annotations.VisibleForTesting; import com.android.wm.shell.pip2.PipSurfaceTransactionHelper; -import com.android.wm.shell.shared.animation.Interpolators; /** * Animator that handles any resize related animation for PIP. */ -public class PipResizeAnimator extends ValueAnimator { +public class PipResizeAnimator extends ValueAnimator + implements ValueAnimator.AnimatorUpdateListener, Animator.AnimatorListener{ @NonNull private final Context mContext; @NonNull @@ -49,68 +47,16 @@ public class PipResizeAnimator extends ValueAnimator { @Nullable private Runnable mAnimationEndCallback; private RectEvaluator mRectEvaluator; - - // Bounds relative to which scaling/cropping must be done. private final Rect mBaseBounds = new Rect(); - - // Bounds to animate from. private final Rect mStartBounds = new Rect(); - - // Target bounds. private final Rect mEndBounds = new Rect(); - - // Bounds updated by the evaluator as animator is running. private final Rect mAnimatedRect = new Rect(); private final float mDelta; - private PipSurfaceTransactionHelper.SurfaceControlTransactionFactory + private final PipSurfaceTransactionHelper.SurfaceControlTransactionFactory mSurfaceControlTransactionFactory; - private final @NonNull PipSurfaceTransactionHelper mSurfaceTransactionHelper; - - private final Animator.AnimatorListener mAnimatorListener = new AnimatorListenerAdapter() { - @Override - public void onAnimationStart(Animator animation) { - super.onAnimationStart(animation); - if (mAnimationStartCallback != null) { - mAnimationStartCallback.run(); - } - if (mStartTx != null) { - setBoundsAndRotation(mStartTx, mLeash, mBaseBounds, mStartBounds, mDelta, - mSurfaceTransactionHelper); - mStartTx.apply(); - } - } - - @Override - public void onAnimationEnd(Animator animation) { - super.onAnimationEnd(animation); - if (mFinishTx != null) { - setBoundsAndRotation(mFinishTx, mLeash, mBaseBounds, mEndBounds, 0f, - mSurfaceTransactionHelper); - } - if (mAnimationEndCallback != null) { - mAnimationEndCallback.run(); - } - } - }; - - private final ValueAnimator.AnimatorUpdateListener mAnimatorUpdateListener = - new AnimatorUpdateListener() { - @Override - public void onAnimationUpdate(@NonNull ValueAnimator animation) { - final SurfaceControl.Transaction tx = - mSurfaceControlTransactionFactory.getTransaction(); - final float fraction = getAnimatedFraction(); - final float degrees = (1.0f - fraction) * mDelta; - setBoundsAndRotation(tx, mLeash, mBaseBounds, mAnimatedRect, degrees, - mSurfaceTransactionHelper); - tx.apply(); - } - }; - public PipResizeAnimator(@NonNull Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, @NonNull SurfaceControl leash, @Nullable SurfaceControl.Transaction startTransaction, @Nullable SurfaceControl.Transaction finishTransaction, @@ -131,15 +77,14 @@ public class PipResizeAnimator extends ValueAnimator { mAnimatedRect.set(startBounds); mEndBounds.set(endBounds); mDelta = delta; - mSurfaceTransactionHelper = pipSurfaceTransactionHelper; mRectEvaluator = new RectEvaluator(mAnimatedRect); setObjectValues(startBounds, endBounds); - setInterpolator(Interpolators.FAST_OUT_SLOW_IN); - addListener(mAnimatorListener); - addUpdateListener(mAnimatorUpdateListener); + addListener(this); + addUpdateListener(this); setEvaluator(mRectEvaluator); + // TODO: change this setDuration(duration); } @@ -151,6 +96,26 @@ public class PipResizeAnimator extends ValueAnimator { mAnimationEndCallback = runnable; } + @Override + public void onAnimationStart(@NonNull Animator animation) { + if (mAnimationStartCallback != null) { + mAnimationStartCallback.run(); + } + if (mStartTx != null) { + setBoundsAndRotation(mStartTx, mLeash, mBaseBounds, mStartBounds, mDelta); + mStartTx.apply(); + } + } + + @Override + public void onAnimationUpdate(@NonNull ValueAnimator animation) { + final SurfaceControl.Transaction tx = mSurfaceControlTransactionFactory.getTransaction(); + final float fraction = getAnimatedFraction(); + final float degrees = (1.0f - fraction) * mDelta; + setBoundsAndRotation(tx, mLeash, mBaseBounds, mAnimatedRect, degrees); + tx.apply(); + } + /** * Set a proper transform matrix for a leash to move it to given bounds with a certain rotation. * @@ -158,26 +123,32 @@ public class PipResizeAnimator extends ValueAnimator { * @param targetBounds bounds to which we are scaling the leash. * @param degrees degrees of rotation - counter-clockwise is positive by convention. */ - private static void setBoundsAndRotation(SurfaceControl.Transaction tx, SurfaceControl leash, - Rect baseBounds, Rect targetBounds, float degrees, - @NonNull PipSurfaceTransactionHelper helper) { + public static void setBoundsAndRotation(SurfaceControl.Transaction tx, SurfaceControl leash, + Rect baseBounds, Rect targetBounds, float degrees) { Matrix transformTensor = new Matrix(); final float[] mMatrixTmp = new float[9]; - final float scaleX = (float) targetBounds.width() / baseBounds.width(); - final float scaleY = (float) targetBounds.height() / baseBounds.height(); + final float scale = (float) targetBounds.width() / baseBounds.width(); - transformTensor.setScale(scaleX, scaleY); + transformTensor.setScale(scale, scale); transformTensor.postTranslate(targetBounds.left, targetBounds.top); transformTensor.postRotate(degrees, targetBounds.centerX(), targetBounds.centerY()); - tx.setMatrix(leash, transformTensor, mMatrixTmp) - .setCornerRadius(leash, helper.getCornerRadius() / scaleX); - helper.shadow(tx, leash, true /* applyShadowRadius */); + tx.setMatrix(leash, transformTensor, mMatrixTmp); } - @VisibleForTesting - void setSurfaceControlTransactionFactory(@NonNull - PipSurfaceTransactionHelper.SurfaceControlTransactionFactory factory) { - mSurfaceControlTransactionFactory = factory; + @Override + public void onAnimationEnd(@NonNull Animator animation) { + if (mFinishTx != null) { + setBoundsAndRotation(mFinishTx, mLeash, mBaseBounds, mEndBounds, 0f); + } + if (mAnimationEndCallback != null) { + mAnimationEndCallback.run(); + } } + + @Override + public void onAnimationCancel(@NonNull Animator animation) {} + + @Override + public void onAnimationRepeat(@NonNull Animator animation) {} } diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PhonePipMenuController.java b/wmshell/src/com/android/wm/shell/pip2/phone/PhonePipMenuController.java index 2ddaaee093..6e36a32ac9 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PhonePipMenuController.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PhonePipMenuController.java @@ -18,12 +18,10 @@ package com.android.wm.shell.pip2.phone; import static android.view.WindowManager.SHELL_ROOT_LAYER_PIP; -import android.annotation.NonNull; import android.annotation.Nullable; import android.app.RemoteAction; import android.content.Context; import android.graphics.Rect; -import android.os.Bundle; import android.os.Debug; import android.os.Handler; import android.os.RemoteException; @@ -34,20 +32,15 @@ import android.view.View; import android.view.ViewRootImpl; import android.view.WindowManagerGlobal; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayInsetsController; -import com.android.wm.shell.common.ImeListener; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SystemWindows; import com.android.wm.shell.common.pip.PipBoundsState; -import com.android.wm.shell.common.pip.PipDisplayLayoutState; import com.android.wm.shell.common.pip.PipMediaController; import com.android.wm.shell.common.pip.PipMediaController.ActionListener; import com.android.wm.shell.common.pip.PipMenuController; import com.android.wm.shell.common.pip.PipUiEventLogger; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.pip.PipFlags; import java.io.PrintWriter; import java.util.ArrayList; @@ -59,8 +52,7 @@ import java.util.List; * The current media session provides actions whenever there are no valid actions provided by the * current PiP activity. Otherwise, those actions always take precedence. */ -public class PhonePipMenuController implements PipMenuController, - PipTransitionState.PipTransitionStateChangedListener { +public class PhonePipMenuController implements PipMenuController { private static final String TAG = "PhonePipMenuController"; private static final boolean DEBUG = false; @@ -121,18 +113,8 @@ public class PhonePipMenuController implements PipMenuController, private PipMenuView mPipMenuView; - private final PipTaskListener mPipTaskListener; - - @NonNull - private final PipTransitionState mPipTransitionState; - - @NonNull - private final PipDisplayLayoutState mPipDisplayLayoutState; - private SurfaceControl mLeash; - private boolean mIsImeVisible; - private ActionListener mMediaActionListener = new ActionListener() { @Override public void onMediaActionsChanged(List<RemoteAction> mediaActions) { @@ -143,43 +125,15 @@ public class PhonePipMenuController implements PipMenuController, public PhonePipMenuController(Context context, PipBoundsState pipBoundsState, PipMediaController mediaController, SystemWindows systemWindows, - PipUiEventLogger pipUiEventLogger, PipTaskListener pipTaskListener, - @NonNull PipTransitionState pipTransitionState, - @NonNull DisplayController displayController, - @NonNull DisplayInsetsController displayInsetsController, - @NonNull PipDisplayLayoutState pipDisplayLayoutState, ShellExecutor mainExecutor, - Handler mainHandler) { + PipUiEventLogger pipUiEventLogger, + ShellExecutor mainExecutor, Handler mainHandler) { mContext = context; mPipBoundsState = pipBoundsState; mMediaController = mediaController; mSystemWindows = systemWindows; - mPipTaskListener = pipTaskListener; - mPipTransitionState = pipTransitionState; - mPipDisplayLayoutState = pipDisplayLayoutState; mMainExecutor = mainExecutor; mMainHandler = mainHandler; mPipUiEventLogger = pipUiEventLogger; - - mPipTransitionState.addPipTransitionStateChangedListener(this); - // Clear actions after exit PiP. Otherwise, next PiP could accidentally inherit the - // actions provided by the previous app in PiP mode. - mPipBoundsState.addOnPipComponentChangedListener(((oldPipComponent, newPipComponent) -> { - if (mAppActions != null) mAppActions.clear(); - mCloseAction = null; - })); - mPipTaskListener.addParamsChangedListener(new PipTaskListener.PipParamsChangedCallback() { - @Override - public void onActionsChanged(List<RemoteAction> actions, RemoteAction closeAction) { - setAppActions(actions, closeAction); - } - }); - displayInsetsController.addInsetsChangedListener(mPipDisplayLayoutState.getDisplayId(), - new ImeListener(displayController, mPipDisplayLayoutState.getDisplayId()) { - @Override - protected void onImeVisibilityChanged(boolean imeVisible, int imeHeight) { - mIsImeVisible = imeVisible; - } - }); } public boolean isMenuVisible() { @@ -210,8 +164,7 @@ public class PhonePipMenuController implements PipMenuController, if (mPipMenuView != null) { detachPipMenuView(); } - final Context uiContext = mPipDisplayLayoutState.getCurrentUiContext(); - mPipMenuView = new PipMenuView(uiContext, this, mMainExecutor, mMainHandler, + mPipMenuView = new PipMenuView(mContext, this, mMainExecutor, mMainHandler, mPipUiEventLogger); mPipMenuView.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() { @Override @@ -244,8 +197,8 @@ public class PhonePipMenuController implements PipMenuController, }); mSystemWindows.addView(mPipMenuView, - getPipMenuLayoutParams(uiContext, MENU_WINDOW_TITLE, 0 /* width */, 0 /* height */), - mPipDisplayLayoutState.getDisplayId(), SHELL_ROOT_LAYER_PIP); + getPipMenuLayoutParams(mContext, MENU_WINDOW_TITLE, 0 /* width */, 0 /* height */), + 0, SHELL_ROOT_LAYER_PIP); setShellRootAccessibilityWindow(); // Make sure the initial actions are set @@ -270,6 +223,7 @@ public class PhonePipMenuController implements PipMenuController, mSystemWindows.updateViewLayout(mPipMenuView, getPipMenuLayoutParams(mContext, MENU_WINDOW_TITLE, destinationBounds.width(), destinationBounds.height())); + updateMenuLayout(destinationBounds); } /** @@ -484,7 +438,8 @@ public class PhonePipMenuController implements PipMenuController, * Sets the menu actions to the actions provided by the current PiP menu. */ @Override - public void setAppActions(List<RemoteAction> appActions, RemoteAction closeAction) { + public void setAppActions(List<RemoteAction> appActions, + RemoteAction closeAction) { mAppActions = appActions; mCloseAction = closeAction; updateMenuActions(); @@ -502,12 +457,6 @@ public class PhonePipMenuController implements PipMenuController, * @return the best set of actions to show in the PiP menu. */ private List<RemoteAction> resolveMenuActions() { - // If UMO Experience is enabled, default to MediaSession actions if present. - // Note that mMediaActions can be pulled asynchronously, we use the active media session - // check here instead. - if (PipFlags.isPipUmoExperienceEnabled() && mMediaController.hasActiveMediaSession()) { - return mMediaActions; - } if (isValidActions(mAppActions)) { return mAppActions; } @@ -519,8 +468,8 @@ public class PhonePipMenuController implements PipMenuController, */ private void updateMenuActions() { if (mPipMenuView != null) { - mPipMenuView.setActions(mPipBoundsState.getBounds(), resolveMenuActions(), - mCloseAction); + mPipMenuView.setActions(mPipBoundsState.getBounds(), + resolveMenuActions(), mCloseAction); } } @@ -555,13 +504,10 @@ public class PhonePipMenuController implements PipMenuController, mMediaController.removeActionListener(mMediaActionListener); } - // Do not grant focus if IME is visible, which can cause the focus being granted - // back and forth in between the IME and PiP menu, and causes flicker. - final boolean grantFocus = !mIsImeVisible && (menuState != MENU_STATE_NONE); - if (mIsImeVisible) return; try { WindowManagerGlobal.getWindowSession().grantEmbeddedWindowFocus(null /* window */, - mSystemWindows.getFocusGrantToken(mPipMenuView), grantFocus); + mSystemWindows.getFocusGrantToken(mPipMenuView), + menuState != MENU_STATE_NONE /* grantFocus */); } catch (RemoteException e) { ProtoLog.e(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: Unable to update focus as menu appears/disappears, %s", TAG, e); @@ -604,25 +550,20 @@ public class PhonePipMenuController implements PipMenuController, } } - @Override - public void onPipTransitionStateChanged(@PipTransitionState.TransitionState int oldState, - @PipTransitionState.TransitionState int newState, Bundle extra) { - switch (newState) { - case PipTransitionState.ENTERED_PIP: - attach(mPipTransitionState.getPinnedTaskLeash()); - break; - case PipTransitionState.EXITED_PIP: - detach(); - break; - case PipTransitionState.CHANGED_PIP_BOUNDS: - hideMenu(); - break; - case PipTransitionState.CHANGING_PIP_BOUNDS: - hideMenu(); - break; - case PipTransitionState.SCHEDULED_BOUNDS_CHANGE: - hideMenu(); - break; + /** + * Tell the PIP Menu to recalculate its layout given its current position on the display. + */ + public void updateMenuLayout(Rect bounds) { + final boolean isMenuVisible = isMenuVisible(); + if (DEBUG) { + ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, + "%s: updateMenuLayout() state=%s" + + " isMenuVisible=%s" + + " callers=\n%s", TAG, mMenuState, isMenuVisible, + Debug.getCallers(5, " ")); + } + if (isMenuVisible) { + mPipMenuView.updateMenuLayout(bounds); } } diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipController.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipController.java index 36bfb22716..fc0d36d13b 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipController.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipController.java @@ -16,90 +16,64 @@ package com.android.wm.shell.pip2.phone; -import static android.app.WindowConfiguration.ROTATION_UNDEFINED; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.content.pm.PackageManager.FEATURE_PICTURE_IN_PICTURE; -import static android.view.Display.DEFAULT_DISPLAY; -import android.annotation.NonNull; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_PIP; + import android.app.ActivityManager; import android.app.PictureInPictureParams; -import android.app.TaskInfo; import android.content.ComponentName; import android.content.Context; import android.content.pm.ActivityInfo; import android.content.res.Configuration; -import android.graphics.Insets; -import android.graphics.Point; import android.graphics.Rect; import android.os.Bundle; -import android.util.Log; +import android.view.InsetsState; import android.view.SurfaceControl; -import android.window.DesktopExperienceFlags; -import android.window.DisplayAreaInfo; -import android.window.WindowContainerTransaction; import androidx.annotation.BinderThread; import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.Preconditions; -import com.android.wm.shell.Flags; import com.android.wm.shell.R; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.common.DisplayChangeController; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.ExternalInterfaceBinder; -import com.android.wm.shell.common.ImeListener; -import com.android.wm.shell.common.NavigationBarsListener; import com.android.wm.shell.common.RemoteCallable; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SingleInstanceRemoteListener; -import com.android.wm.shell.common.TabletopModeController; import com.android.wm.shell.common.TaskStackListenerCallback; import com.android.wm.shell.common.TaskStackListenerImpl; import com.android.wm.shell.common.pip.IPip; import com.android.wm.shell.common.pip.IPipAnimationListener; -import com.android.wm.shell.common.pip.PipAppOpsListener; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; import com.android.wm.shell.common.pip.PipBoundsState; import com.android.wm.shell.common.pip.PipDisplayLayoutState; -import com.android.wm.shell.common.pip.PipKeepClearAlgorithmInterface; -import com.android.wm.shell.common.pip.PipMediaController; -import com.android.wm.shell.common.pip.PipUiEventLogger; import com.android.wm.shell.common.pip.PipUtils; -import com.android.wm.shell.pip.Pip; -import com.android.wm.shell.pip2.PipSurfaceTransactionHelper; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.pip.PipFlags; import com.android.wm.shell.sysui.ConfigurationChangeListener; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; import java.io.PrintWriter; -import java.util.ArrayList; -import java.util.List; -import java.util.function.Consumer; /** * Manages the picture-in-picture (PIP) UI and states for Phones. */ public class PipController implements ConfigurationChangeListener, PipTransitionState.PipTransitionStateChangedListener, - DisplayController.OnDisplaysChangedListener, - DisplayChangeController.OnDisplayChangingListener, RemoteCallable<PipController>, - PipDisplayLayoutState.DisplayIdListener { + DisplayController.OnDisplaysChangedListener, RemoteCallable<PipController> { private static final String TAG = PipController.class.getSimpleName(); private static final String SWIPE_TO_PIP_APP_BOUNDS = "pip_app_bounds"; private static final String SWIPE_TO_PIP_OVERLAY = "swipe_to_pip_overlay"; - private static final String DISPLAY_CHANGE_PIP_BOUNDS_UPDATE = - "display_change_pip_bounds_update"; - private Context mContext; + private final Context mContext; private final ShellCommandHandler mShellCommandHandler; private final ShellController mShellController; private final DisplayController mDisplayController; @@ -111,25 +85,10 @@ public class PipController implements ConfigurationChangeListener, private final TaskStackListenerImpl mTaskStackListener; private final ShellTaskOrganizer mShellTaskOrganizer; private final PipTransitionState mPipTransitionState; - private final PipTouchHandler mPipTouchHandler; - private final PipAppOpsListener mPipAppOpsListener; - private final PhonePipMenuController mPipMenuController; - private final TabletopModeController mTabletopModeController; - private final PipKeepClearAlgorithmInterface mPipKeepClearAlgorithm; - private final PipUiEventLogger mPipUiEventLogger; private final ShellExecutor mMainExecutor; - private final PipImpl mImpl; - private final List<Consumer<Boolean>> mOnIsInPipStateChangedListeners = new ArrayList<>(); - private final PipMediaController mMediaController; // Wrapper for making Binder calls into PiP animation listener hosted in launcher's Recents. - @Nullable private PipAnimationListener mPipRecentsAnimationListener; - - private final PipSurfaceTransactionHelper.SurfaceControlTransactionFactory - mSurfaceControlTransactionFactory; - private final PipSurfaceTransactionHelper mPipSurfaceTransactionHelper; - - private boolean mWaitingToPlayDisplayChangeBoundsUpdate; + private PipAnimationListener mPipRecentsAnimationListener; @VisibleForTesting interface PipAnimationListener { @@ -166,14 +125,6 @@ public class PipController implements ConfigurationChangeListener, TaskStackListenerImpl taskStackListener, ShellTaskOrganizer shellTaskOrganizer, PipTransitionState pipTransitionState, - PipTouchHandler pipTouchHandler, - PipAppOpsListener pipAppOpsListener, - PhonePipMenuController pipMenuController, - PipUiEventLogger pipUiEventLogger, - PipMediaController pipMediaController, - TabletopModeController tabletopModeController, - PipKeepClearAlgorithmInterface pipKeepClearAlgorithm, - PipSurfaceTransactionHelper pipSurfaceTransactionHelper, ShellExecutor mainExecutor) { mContext = context; mShellCommandHandler = shellCommandHandler; @@ -183,26 +134,14 @@ public class PipController implements ConfigurationChangeListener, mPipBoundsState = pipBoundsState; mPipBoundsAlgorithm = pipBoundsAlgorithm; mPipDisplayLayoutState = pipDisplayLayoutState; - mPipDisplayLayoutState.addDisplayIdListener(this); mPipScheduler = pipScheduler; mTaskStackListener = taskStackListener; mShellTaskOrganizer = shellTaskOrganizer; mPipTransitionState = pipTransitionState; mPipTransitionState.addPipTransitionStateChangedListener(this); - mPipTouchHandler = pipTouchHandler; - mPipAppOpsListener = pipAppOpsListener; - mPipMenuController = pipMenuController; - mPipUiEventLogger = pipUiEventLogger; - mMediaController = pipMediaController; - mTabletopModeController = tabletopModeController; - mPipKeepClearAlgorithm = pipKeepClearAlgorithm; - mPipSurfaceTransactionHelper = pipSurfaceTransactionHelper; mMainExecutor = mainExecutor; - mImpl = new PipImpl(); - mSurfaceControlTransactionFactory = - new PipSurfaceTransactionHelper.VsyncSurfaceControlTransactionFactory(); - if (PipFlags.isPip2ExperimentEnabled()) { + if (PipUtils.isPip2ExperimentEnabled()) { shellInit.addInitCallback(this::onInit, this); } } @@ -223,14 +162,6 @@ public class PipController implements ConfigurationChangeListener, TaskStackListenerImpl taskStackListener, ShellTaskOrganizer shellTaskOrganizer, PipTransitionState pipTransitionState, - PipTouchHandler pipTouchHandler, - PipAppOpsListener pipAppOpsListener, - PhonePipMenuController pipMenuController, - PipUiEventLogger pipUiEventLogger, - PipMediaController pipMediaController, - TabletopModeController tabletopModeController, - PipKeepClearAlgorithmInterface pipKeepClearAlgorithm, - PipSurfaceTransactionHelper pipSurfaceTransactionHelper, ShellExecutor mainExecutor) { if (!context.getPackageManager().hasSystemFeature(FEATURE_PICTURE_IN_PICTURE)) { ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, @@ -240,13 +171,7 @@ public class PipController implements ConfigurationChangeListener, return new PipController(context, shellInit, shellCommandHandler, shellController, displayController, displayInsetsController, pipBoundsState, pipBoundsAlgorithm, pipDisplayLayoutState, pipScheduler, taskStackListener, shellTaskOrganizer, - pipTransitionState, pipTouchHandler, pipAppOpsListener, pipMenuController, - pipUiEventLogger, pipMediaController, tabletopModeController, - pipKeepClearAlgorithm, pipSurfaceTransactionHelper, mainExecutor); - } - - public PipImpl getPipImpl() { - return mImpl; + pipTransitionState, mainExecutor); } private void onInit() { @@ -257,27 +182,18 @@ public class PipController implements ConfigurationChangeListener, DisplayLayout layout = new DisplayLayout(mContext, mContext.getDisplay()); mPipDisplayLayoutState.setDisplayLayout(layout); - mDisplayController.addDisplayChangingController(this); mDisplayController.addDisplayWindowListener(this); mDisplayInsetsController.addInsetsChangedListener(mPipDisplayLayoutState.getDisplayId(), - new ImeListener(mDisplayController, mPipDisplayLayoutState.getDisplayId()) { + new DisplayInsetsController.OnInsetsChangedListener() { @Override - public void onImeVisibilityChanged(boolean imeVisible, int imeHeight) { - mPipTouchHandler.onImeVisibilityChanged(imeVisible, imeHeight); - } - }); - mDisplayInsetsController.addInsetsChangedListener(mPipDisplayLayoutState.getDisplayId(), - new NavigationBarsListener(mDisplayController, - mPipDisplayLayoutState.getDisplayId()) { - @Override - protected void onNavigationBarsVisibilityChanged( - @NonNull Insets insets) { - mPipDisplayLayoutState.setNavigationBarsInsets(insets); + public void insetsChanged(InsetsState insetsState) { + onDisplayChanged(mDisplayController + .getDisplayLayout(mPipDisplayLayoutState.getDisplayId())); } }); // Allow other outside processes to bind to PiP controller using the key below. - mShellController.addExternalInterface(IPip.DESCRIPTOR, + mShellController.addExternalInterface(KEY_EXTRA_SHELL_PIP, this::createExternalInterface, this); mShellController.addConfigurationChangeListener(this); @@ -285,61 +201,12 @@ public class PipController implements ConfigurationChangeListener, @Override public void onActivityRestartAttempt(ActivityManager.RunningTaskInfo task, boolean homeTaskVisible, boolean clearedTask, boolean wasVisible) { - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "onActivityRestartAttempt: topActivity=%s, wasVisible=%b", - task.topActivity, wasVisible); - if (task.getWindowingMode() != WINDOWING_MODE_PINNED || !wasVisible) { + if (task.getWindowingMode() != WINDOWING_MODE_PINNED) { return; } mPipScheduler.scheduleExitPipViaExpand(); } }); - - mTabletopModeController.registerOnTabletopModeChangedListener((isInTabletopMode) -> { - if (!isInTabletopMode) { - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_TABLETOP_MODE, null); - return; - } - - // To prepare for the entry bounds. - final Rect displayBounds = mPipBoundsState.getDisplayBounds(); - if (mTabletopModeController.getPreferredHalfInTabletopMode() - == TabletopModeController.PREFERRED_TABLETOP_HALF_TOP) { - // Prefer top, avoid the bottom half of the display. - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_TABLETOP_MODE, new Rect( - displayBounds.left, displayBounds.centerY(), - displayBounds.right, displayBounds.bottom)); - } else { - // Prefer bottom, avoid the top half of the display. - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_TABLETOP_MODE, new Rect( - displayBounds.left, displayBounds.top, - displayBounds.right, displayBounds.centerY())); - } - - // Try to move the PiP window if we have entered PiP mode. - if (mPipTransitionState.isInPip()) { - final Rect pipBounds = mPipBoundsState.getBounds(); - final Point edgeInsets = mPipDisplayLayoutState.getScreenEdgeInsets(); - if ((pipBounds.height() + 2 * edgeInsets.y) > (displayBounds.height() / 2)) { - // PiP bounds is too big to fit either half, bail early. - return; - } - Rect destBounds = mPipKeepClearAlgorithm.adjust(mPipBoundsState, - mPipBoundsAlgorithm); - // only move if the bounds are actually different - if (!destBounds.equals(mPipBoundsState.getBounds())) { - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "Move PiP from %s to %s on tabletop mode change", - mPipBoundsState.getBounds(), destBounds); - mPipTouchHandler.getMotionHelper().moveToBounds(destBounds); - } - } - }); - - mPipAppOpsListener.setCallback(mPipTouchHandler.getMotionHelper()); } private ExternalInterfaceBinder createExternalInterface() { @@ -367,7 +234,6 @@ public class PipController implements ConfigurationChangeListener, @Override public void onConfigurationChanged(Configuration newConfiguration) { mPipDisplayLayoutState.onConfigurationChanged(); - mPipTouchHandler.onConfigurationChanged(); } @Override @@ -377,21 +243,11 @@ public class PipController implements ConfigurationChangeListener, @Override public void onThemeChanged() { - setDisplayLayout(new DisplayLayout(mContext, mContext.getDisplay())); - if (Flags.enablePipBoxShadows()) { - if (mPipTransitionState.isInPip()) { - SurfaceControl pipLeash = mPipTransitionState.getPinnedTaskLeash(); - mPipSurfaceTransactionHelper.onThemeChanged(mContext); - SurfaceControl.Transaction tx = mSurfaceControlTransactionFactory.getTransaction(); - mPipSurfaceTransactionHelper.shadow(tx, pipLeash, true /* applyShadowRadius */); - tx.apply(); - } - } + onDisplayChanged(new DisplayLayout(mContext, mContext.getDisplay())); } // - // DisplayController.OnDisplaysChangedListener and - // DisplayChangeController.OnDisplayChangingListener implementations + // DisplayController.OnDisplaysChangedListener implementations // @Override @@ -399,143 +255,32 @@ public class PipController implements ConfigurationChangeListener, if (displayId != mPipDisplayLayoutState.getDisplayId()) { return; } - setDisplayLayout(mDisplayController.getDisplayLayout(displayId)); + onDisplayChanged(mDisplayController.getDisplayLayout(displayId)); } @Override - public void onDisplayRemoved(int displayId) { - // If PiP was active on an external display that is removed, clean up states and set - // {@link PipDisplayLayoutState} to DEFAULT_DISPLAY. - if (DesktopExperienceFlags.ENABLE_CONNECTED_DISPLAYS_PIP.isTrue() - && mPipTransitionState.isInPip() - && displayId == mPipDisplayLayoutState.getDisplayId() - && displayId != DEFAULT_DISPLAY) { - mPipTransitionState.setState(PipTransitionState.EXITING_PIP); - mPipTransitionState.setState(PipTransitionState.EXITED_PIP); - - mPipDisplayLayoutState.setDisplayId(DEFAULT_DISPLAY); - mPipDisplayLayoutState.setDisplayLayout( - mDisplayController.getDisplayLayout(DEFAULT_DISPLAY)); - } - } - - /** - * A callback for any observed transition that contains a display change in its - * {@link android.window.TransitionRequestInfo}, - */ - @Override - public void onDisplayChange(int displayId, int fromRotation, int toRotation, - @Nullable DisplayAreaInfo newDisplayAreaInfo, WindowContainerTransaction t) { + public void onDisplayConfigurationChanged(int displayId, Configuration newConfig) { if (displayId != mPipDisplayLayoutState.getDisplayId()) { return; } - final float snapFraction = mPipBoundsAlgorithm.getSnapFraction(mPipBoundsState.getBounds()); - - // Update the display layout caches even if we are not in PiP. - setDisplayLayout(mDisplayController.getDisplayLayout(displayId)); - if (toRotation != ROTATION_UNDEFINED) { - // Make sure we rotate to final rotation ourselves in case display change is coming - // from the remote rotation as a part of an already collecting transition. - mPipDisplayLayoutState.rotateTo(toRotation); - } - - if (!shouldUpdatePipStateOnDisplayChange()) { - // Skip the PiP-relevant updates if we aren't in a valid PiP state. - if (mPipTransitionState.isInFixedRotation()) { - ProtoLog.e(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, - "Fixed rotation flag shouldn't be set while in an invalid PiP state"); - } - return; - } - - mPipMenuController.hideMenu(); - - if (mPipTransitionState.isInFixedRotation()) { - // Do not change the bounds when in fixed rotation, but do update the movement bounds - // based on the current bounds state and potentially new display layout. - mPipTouchHandler.updateMovementBounds(); - mPipTransitionState.setInFixedRotation(false); - } else { - final float boundsScale = mPipBoundsState.getBoundsScale(); - // Before calculating the PiP bounds, the PiP minimum and maximum sizes - // need to be recalculated for the current display. - mPipBoundsState.updateMinMaxSize(mPipBoundsState.getAspectRatio()); - Rect toBounds = new Rect(0, 0, - (int) Math.ceil(mPipBoundsState.getMaxSize().x * boundsScale), - (int) Math.ceil(mPipBoundsState.getMaxSize().y * boundsScale)); - // Update the caches to reflect the new display layout in the movement bounds; - // temporarily update bounds to be at the top left for the movement bounds calculation. - mPipBoundsState.setBounds(toBounds); - mPipTouchHandler.updateMovementBounds(); - // The policy is to keep PiP snap fraction invariant. - mPipBoundsAlgorithm.applySnapFraction(toBounds, snapFraction); - mPipBoundsState.setBounds(toBounds); - mPipTouchHandler.setUserResizeBounds(toBounds); - } - if (mPipTransitionState.getPipTaskToken() == null) { - Log.d(TAG, "PipController.onDisplayChange no PiP task token" - + " state=" + mPipTransitionState.getState()); - mPipTransitionState.setOnIdlePipTransitionStateRunnable(() -> { - final Bundle extra = new Bundle(); - extra.putBoolean(DISPLAY_CHANGE_PIP_BOUNDS_UPDATE, true); - mPipTransitionState.setState(PipTransitionState.SCHEDULED_BOUNDS_CHANGE, extra); - }); - } else { - mPipTransitionState.setIsPipBoundsChangingWithDisplay(true); - t.setBounds(mPipTransitionState.getPipTaskToken(), mPipBoundsState.getBounds()); - } - // Update the size spec in PipBoundsState afterwards. - mPipBoundsState.updateMinMaxSize(mPipBoundsState.getAspectRatio()); + onDisplayChanged(mDisplayController.getDisplayLayout(displayId)); } - private void setDisplayLayout(DisplayLayout layout) { + private void onDisplayChanged(DisplayLayout layout) { mPipDisplayLayoutState.setDisplayLayout(layout); } - private boolean shouldUpdatePipStateOnDisplayChange() { - // We should at least update internal PiP state, such as PiP bounds state or movement bounds - // if we are either in PiP or about to enter PiP. - return mPipTransitionState.isInPip() - || mPipTransitionState.getState() == PipTransitionState.ENTERING_PIP - || mPipTransitionState.getState() == PipTransitionState.SCHEDULED_ENTER_PIP; - } - // // IPip Binder stub helpers // private Rect getSwipePipToHomeBounds(ComponentName componentName, ActivityInfo activityInfo, - int displayId, PictureInPictureParams pictureInPictureParams, + PictureInPictureParams pictureInPictureParams, int launcherRotation, Rect hotseatKeepClearArea) { ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "getSwipePipToHomeBounds: %s", componentName); - - // If PiP is enabled on Connected Displays, update PipDisplayLayoutState to have the correct - // display info that PiP is entering in. - if (DesktopExperienceFlags.ENABLE_CONNECTED_DISPLAYS_PIP.isTrue()) { - final DisplayLayout displayLayout = mDisplayController.getDisplayLayout(displayId); - if (displayLayout != null) { - mPipDisplayLayoutState.setDisplayId(displayId); - mPipDisplayLayoutState.setDisplayLayout(displayLayout); - } - } - - // Preemptively add the keep clear area for Hotseat, so that it is taken into account - // when calculating the entry destination bounds of PiP window. - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_LAUNCHER_SHELF, hotseatKeepClearArea); - - // Set the display layout rotation early to calculate final orientation bounds that - // the animator expects, this will also be used to detect the fixed rotation when - // Shell resolves the type of the animation we are undergoing. - mPipDisplayLayoutState.rotateTo(launcherRotation); - mPipBoundsState.setBoundsStateForEntry(componentName, activityInfo, pictureInPictureParams, mPipBoundsAlgorithm); - - // Update the size spec in case aspect ratio is invariant, but display has changed - // since the last PiP session, or this is the first PiP session altogether. - mPipBoundsState.updateMinMaxSize(mPipBoundsState.getAspectRatio()); return mPipBoundsAlgorithm.getEntryDestinationBounds(); } @@ -559,118 +304,31 @@ public class PipController implements ConfigurationChangeListener, tx.setLayer(overlay, Integer.MAX_VALUE); tx.apply(); } - if (mPipRecentsAnimationListener != null) { - mPipRecentsAnimationListener.onPipAnimationStarted(); - } - } - - private void setLauncherKeepClearAreaHeight(boolean visible, int height) { - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "setLauncherKeepClearAreaHeight: visible=%b, height=%d", visible, height); - mPipTransitionState.setOnIdlePipTransitionStateRunnable(() -> { - if (visible) { - Rect rect = new Rect( - 0, mPipDisplayLayoutState.getDisplayBounds().bottom - height, - mPipDisplayLayoutState.getDisplayBounds().right, - mPipDisplayLayoutState.getDisplayBounds().bottom); - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_LAUNCHER_SHELF, rect); - } else { - mPipBoundsState.setNamedUnrestrictedKeepClearArea( - PipBoundsState.NAMED_KCA_LAUNCHER_SHELF, null); - } - mPipTouchHandler.onShelfVisibilityChanged(visible, height); - }); + mPipRecentsAnimationListener.onPipAnimationStarted(); } @Override public void onPipTransitionStateChanged(@PipTransitionState.TransitionState int oldState, @PipTransitionState.TransitionState int newState, @Nullable Bundle extra) { - switch (newState) { - case PipTransitionState.SWIPING_TO_PIP: - Preconditions.checkState(extra != null, - "No extra bundle for " + mPipTransitionState); + if (newState == PipTransitionState.SWIPING_TO_PIP) { + Preconditions.checkState(extra != null, + "No extra bundle for " + mPipTransitionState); - SurfaceControl overlay = extra.getParcelable( - SWIPE_TO_PIP_OVERLAY, SurfaceControl.class); - Rect appBounds = extra.getParcelable( - SWIPE_TO_PIP_APP_BOUNDS, Rect.class); + SurfaceControl overlay = extra.getParcelable( + SWIPE_TO_PIP_OVERLAY, SurfaceControl.class); + Rect appBounds = extra.getParcelable( + SWIPE_TO_PIP_APP_BOUNDS, Rect.class); - Preconditions.checkState(appBounds != null, - "App bounds can't be null for " + mPipTransitionState); - mPipTransitionState.setSwipePipToHomeState(overlay, appBounds); - break; - case PipTransitionState.ENTERED_PIP: - final TaskInfo taskInfo = mPipTransitionState.getPipTaskInfo(); - if (taskInfo != null && taskInfo.topActivity != null) { - mPipAppOpsListener.onActivityPinned(taskInfo.topActivity.getPackageName()); - mPipUiEventLogger.setTaskInfo(taskInfo); - mMediaController.onActivityPinned(); - } - if (mPipTransitionState.isInSwipePipToHomeTransition()) { - mPipUiEventLogger.log( - PipUiEventLogger.PipUiEventEnum.PICTURE_IN_PICTURE_AUTO_ENTER); - mPipTransitionState.resetSwipePipToHomeState(); - } else if (PipUtils.isContentPip(taskInfo)) { - mPipUiEventLogger.log( - PipUiEventLogger.PipUiEventEnum.PICTURE_IN_PICTURE_ENTER_CONTENT_PIP); - } else { - mPipUiEventLogger.log(PipUiEventLogger.PipUiEventEnum.PICTURE_IN_PICTURE_ENTER); - } - for (Consumer<Boolean> listener : mOnIsInPipStateChangedListeners) { - listener.accept(true /* inPip */); - } - break; - case PipTransitionState.EXITED_PIP: - mPipAppOpsListener.onActivityUnpinned(); - mPipUiEventLogger.setTaskInfo(null); - for (Consumer<Boolean> listener : mOnIsInPipStateChangedListeners) { - listener.accept(false /* inPip */); - } - break; - case PipTransitionState.SCHEDULED_BOUNDS_CHANGE: - mWaitingToPlayDisplayChangeBoundsUpdate = - extra.getBoolean(DISPLAY_CHANGE_PIP_BOUNDS_UPDATE); - if (mWaitingToPlayDisplayChangeBoundsUpdate) { - // If we reach this point, it means display change did not send through a WCT to - // update the pinned task bounds in Core. Instead, the local Shell-side - // PiP-relevant bounds state and movement bounds were updated. - // So schedule a jumpcut animation to those bounds now. - mPipScheduler.scheduleAnimateResizePip(mPipBoundsState.getBounds()); - } - break; - case PipTransitionState.CHANGING_PIP_BOUNDS: - if (!mWaitingToPlayDisplayChangeBoundsUpdate) { - break; - } - mWaitingToPlayDisplayChangeBoundsUpdate = false; - final SurfaceControl.Transaction startTx = extra.getParcelable( - PipTransition.PIP_START_TX, SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishTx = extra.getParcelable( - PipTransition.PIP_FINISH_TX, SurfaceControl.Transaction.class); - final Rect destinationBounds = extra.getParcelable( - PipTransition.PIP_DESTINATION_BOUNDS, Rect.class); - handleJumpcutBoundsUpdate(startTx, finishTx, destinationBounds); - break; + Preconditions.checkState(appBounds != null, + "App bounds can't be null for " + mPipTransitionState); + mPipTransitionState.setSwipePipToHomeState(overlay, appBounds); + } else if (newState == PipTransitionState.ENTERED_PIP) { + if (mPipTransitionState.isInSwipePipToHomeTransition()) { + mPipTransitionState.resetSwipePipToHomeState(); + } } } - private void handleJumpcutBoundsUpdate(SurfaceControl.Transaction startTx, - SurfaceControl.Transaction finishTx, Rect destinationBounds) { - SurfaceControl pipLeash = mPipTransitionState.getPinnedTaskLeash(); - - startTx.merge(finishTx); - startTx.setPosition(pipLeash, destinationBounds.left, destinationBounds.top); - mPipSurfaceTransactionHelper.round(startTx, pipLeash, true /* applyCornerRadius */) - .shadow(startTx, pipLeash, true /* applyShadowRadius */); - mPipSurfaceTransactionHelper.round(finishTx, pipLeash, true /* applyCornerRadius */) - .shadow(finishTx, pipLeash, true /* applyShadowRadius */); - startTx.apply(); - - // Signal that the transition is done - should update transition state by default. - mPipScheduler.scheduleFinishPipBoundsChange(destinationBounds); - } - // // IPipAnimationListener Binder proxy helpers // @@ -688,79 +346,12 @@ public class PipController implements ConfigurationChangeListener, } } - @Override - public void onDisplayIdChanged(@NonNull Context context) { - mContext = context; - onPipResourceDimensionsChanged(); - } - private void dump(PrintWriter pw, String prefix) { final String innerPrefix = " "; pw.println(TAG); - PipUtils.dump(pw, innerPrefix); mPipBoundsAlgorithm.dump(pw, innerPrefix); mPipBoundsState.dump(pw, innerPrefix); mPipDisplayLayoutState.dump(pw, innerPrefix); - mPipTransitionState.dump(pw, innerPrefix); - } - - private void addOnIsInPipStateChangedListener(@NonNull Consumer<Boolean> callback) { - if (callback != null) { - mOnIsInPipStateChangedListeners.add(callback); - callback.accept(mPipTransitionState.isInPip()); - } - } - - private void removeOnIsInPipStateChangedListener(@NonNull Consumer<Boolean> callback) { - if (callback != null) { - mOnIsInPipStateChangedListeners.remove(callback); - } - } - - private void setLauncherAppIconSize(int iconSizePx) { - mPipBoundsState.getLauncherState().setAppIconSizePx(iconSizePx); - } - - /** - * The interface for calls from outside the Shell, within the host process. - */ - public class PipImpl implements Pip { - @Override - public void expandPip() {} - - @Override - public void onSystemUiStateChanged(boolean isSysUiStateValid, long flag) {} - - @Override - public void addOnIsInPipStateChangedListener(@NonNull Consumer<Boolean> callback) { - mMainExecutor.execute(() -> { - PipController.this.addOnIsInPipStateChangedListener(callback); - }); - } - - @Override - public void removeOnIsInPipStateChangedListener(@NonNull Consumer<Boolean> callback) { - mMainExecutor.execute(() -> { - PipController.this.removeOnIsInPipStateChangedListener(callback); - }); - } - - @Override - public void addPipExclusionBoundsChangeListener(Consumer<Rect> listener) { - mMainExecutor.execute(() -> { - mPipBoundsState.addPipExclusionBoundsChangeCallback(listener); - }); - } - - @Override - public void removePipExclusionBoundsChangeListener(Consumer<Rect> listener) { - mMainExecutor.execute(() -> { - mPipBoundsState.removePipExclusionBoundsChangeCallback(listener); - }); - } - - @Override - public void showPictureInPictureMenu() {} } /** @@ -805,14 +396,14 @@ public class PipController implements ConfigurationChangeListener, } @Override - public Rect startSwipePipToHome(ActivityManager.RunningTaskInfo taskInfo, - int launcherRotation, Rect keepClearArea) { + public Rect startSwipePipToHome(ComponentName componentName, ActivityInfo activityInfo, + PictureInPictureParams pictureInPictureParams, int launcherRotation, + Rect keepClearArea) { Rect[] result = new Rect[1]; executeRemoteCallWithTaskPermission(mController, "startSwipePipToHome", (controller) -> { - result[0] = controller.getSwipePipToHomeBounds(taskInfo.topActivity, - taskInfo.topActivityInfo, taskInfo.displayId, - taskInfo.pictureInPictureParams, launcherRotation, keepClearArea); + result[0] = controller.getSwipePipToHomeBounds(componentName, activityInfo, + pictureInPictureParams, launcherRotation, keepClearArea); }, true /* blocking */); return result[0]; } @@ -837,16 +428,10 @@ public class PipController implements ConfigurationChangeListener, public void setShelfHeight(boolean visible, int height) {} @Override - public void setLauncherKeepClearAreaHeight(boolean visible, int height) { - executeRemoteCallWithTaskPermission(mController, "setLauncherKeepClearAreaHeight", - (controller) -> controller.setLauncherKeepClearAreaHeight(visible, height)); - } + public void setLauncherKeepClearAreaHeight(boolean visible, int height) {} @Override - public void setLauncherAppIconSize(int iconSizePx) { - executeRemoteCallWithTaskPermission(mController, "setLauncherAppIconSize", - (controller) -> controller.setLauncherAppIconSize(iconSizePx)); - } + public void setLauncherAppIconSize(int iconSizePx) {} @Override public void setPipAnimationListener(IPipAnimationListener listener) { diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipDismissTargetHandler.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipDismissTargetHandler.java index c1d5254506..fdbddb9933 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipDismissTargetHandler.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipDismissTargetHandler.java @@ -35,26 +35,21 @@ import androidx.annotation.NonNull; import com.android.wm.shell.R; import com.android.wm.shell.bubbles.DismissViewUtils; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.common.pip.PipDisplayLayoutState; -import com.android.wm.shell.common.pip.PipUiEventLogger; -import com.android.wm.shell.shared.bubbles.DismissCircleView; -import com.android.wm.shell.shared.bubbles.DismissView; +import com.android.wm.shell.common.bubbles.DismissCircleView; +import com.android.wm.shell.common.bubbles.DismissView; import com.android.wm.shell.shared.magnetictarget.MagnetizedObject; +import com.android.wm.shell.common.pip.PipUiEventLogger; import kotlin.Unit; /** * Handler of all Magnetized Object related code for PiP. */ -public class PipDismissTargetHandler implements ViewTreeObserver.OnPreDrawListener, - PipDisplayLayoutState.DisplayIdListener { +public class PipDismissTargetHandler implements ViewTreeObserver.OnPreDrawListener { /* The multiplier to apply scale the target size by when applying the magnetic field radius */ private static final float MAGNETIC_FIELD_RADIUS_MULTIPLIER = 1.25f; - /* The window type to apply to the display */ - private static final int WINDOW_TYPE = WindowManager.LayoutParams.TYPE_NAVIGATION_BAR_PANEL; - /** * MagnetizedObject wrapper for PIP. This allows the magnetic target library to locate and move * PIP. @@ -86,38 +81,31 @@ public class PipDismissTargetHandler implements ViewTreeObserver.OnPreDrawListen private SurfaceControl mTaskLeash; private boolean mHasDismissTargetSurface; - private Context mContext; + private final Context mContext; private final PipMotionHelper mMotionHelper; private final PipUiEventLogger mPipUiEventLogger; - private WindowManager mWindowManager; + private final WindowManager mWindowManager; private final ShellExecutor mMainExecutor; public PipDismissTargetHandler(Context context, PipUiEventLogger pipUiEventLogger, - PipMotionHelper motionHelper, PipDisplayLayoutState pipDisplayLayoutState, - ShellExecutor mainExecutor) { + PipMotionHelper motionHelper, ShellExecutor mainExecutor) { mContext = context; mPipUiEventLogger = pipUiEventLogger; mMotionHelper = motionHelper; mMainExecutor = mainExecutor; - mWindowManager = mContext.getSystemService(WindowManager.class); - - pipDisplayLayoutState.addDisplayIdListener(this); - } - - private void maybeCleanUpDismissTarget() { - if (mTargetViewContainer != null) { - // Remove the old view from view hierarchy - cleanUpDismissTarget(); - } + mWindowManager = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE); } void init() { - maybeCleanUpDismissTarget(); - Resources res = mContext.getResources(); mEnableDismissDragToEdge = res.getBoolean(R.bool.config_pipEnableDismissDragToEdge); mDismissAreaHeight = res.getDimensionPixelSize(R.dimen.floating_dismiss_gradient_height); + if (mTargetViewContainer != null) { + // init can be called multiple times, remove the old one from view hierarchy first. + cleanUpDismissTarget(); + } + mTargetViewContainer = new DismissView(mContext); DismissViewUtils.setup(mTargetViewContainer); mTargetView = mTargetViewContainer.getCircle(); @@ -190,16 +178,6 @@ public class PipDismissTargetHandler implements ViewTreeObserver.OnPreDrawListen return true; } - @Override - public void onDisplayIdChanged(@NonNull Context context) { - maybeCleanUpDismissTarget(); - - mContext = context; - mWindowManager = mContext.getSystemService(WindowManager.class); - // If the displayId has changed, reset the UI for the current display - init(); - } - /** * Potentially start consuming future motion events if PiP is currently near the magnetized * object. @@ -284,7 +262,7 @@ public class PipDismissTargetHandler implements ViewTreeObserver.OnPreDrawListen WindowManager.LayoutParams.MATCH_PARENT, height, 0, windowSize.y - height, - WINDOW_TYPE, + WindowManager.LayoutParams.TYPE_NAVIGATION_BAR_PANEL, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN | WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, @@ -304,7 +282,6 @@ public class PipDismissTargetHandler implements ViewTreeObserver.OnPreDrawListen return; } - mMagneticTarget.updateLocationOnScreen(); createOrUpdateDismissTarget(); if (mTargetViewContainer.getVisibility() != View.VISIBLE) { diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipInputConsumer.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipInputConsumer.java index 7b127e6b56..b757b00f16 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipInputConsumer.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipInputConsumer.java @@ -16,6 +16,8 @@ package com.android.wm.shell.pip2.phone; +import static android.view.Display.DEFAULT_DISPLAY; + import android.os.Binder; import android.os.IBinder; import android.os.Looper; @@ -26,9 +28,8 @@ import android.view.IWindowManager; import android.view.InputChannel; import android.view.InputEvent; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.common.pip.PipDisplayLayoutState; import com.android.wm.shell.protolog.ShellProtoLogGroup; import java.io.PrintWriter; @@ -83,7 +84,6 @@ public class PipInputConsumer { private final IWindowManager mWindowManager; private final IBinder mToken; private final String mName; - private final PipDisplayLayoutState mPipDisplayLayoutState; private final ShellExecutor mMainExecutor; private InputEventReceiver mInputEventReceiver; @@ -94,11 +94,10 @@ public class PipInputConsumer { * @param name the name corresponding to the input consumer that is defined in the system. */ public PipInputConsumer(IWindowManager windowManager, String name, - PipDisplayLayoutState pipDisplayLayoutState, ShellExecutor mainExecutor) { + ShellExecutor mainExecutor) { mWindowManager = windowManager; mToken = new Binder(); mName = name; - mPipDisplayLayoutState = pipDisplayLayoutState; mMainExecutor = mainExecutor; } @@ -139,11 +138,9 @@ public class PipInputConsumer { } final InputChannel inputChannel = new InputChannel(); try { - final int displayId = mPipDisplayLayoutState.getDisplayId(); - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s: Creating input consumer on displayID: %d", TAG, displayId); - mWindowManager.destroyInputConsumer(mToken, displayId); - mWindowManager.createInputConsumer(mToken, mName, displayId, inputChannel); + // TODO(b/113087003): Support Picture-in-picture in multi-display. + mWindowManager.destroyInputConsumer(mToken, DEFAULT_DISPLAY); + mWindowManager.createInputConsumer(mToken, mName, DEFAULT_DISPLAY, inputChannel); } catch (RemoteException e) { ProtoLog.e(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: Failed to create input consumer, %s", TAG, e); @@ -165,10 +162,8 @@ public class PipInputConsumer { return; } try { - final int displayId = mPipDisplayLayoutState.getDisplayId(); - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s: Destroying input consumer on displayID: %d", TAG, displayId); - mWindowManager.destroyInputConsumer(mToken, displayId); + // TODO(b/113087003): Support Picture-in-picture in multi-display. + mWindowManager.destroyInputConsumer(mToken, DEFAULT_DISPLAY); } catch (RemoteException e) { ProtoLog.e(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: Failed to destroy input consumer, %s", TAG, e); diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipMenuActionView.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipMenuActionView.java index e2ed71e2ae..7252675dc5 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipMenuActionView.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipMenuActionView.java @@ -53,9 +53,4 @@ public class PipMenuActionView extends FrameLayout { public void setCustomCloseBackgroundVisibility(@Visibility int visibility) { mCustomCloseBackground.setVisibility(visibility); } - - @Override - public CharSequence getAccessibilityClassName() { - return android.widget.Button.class.getName(); - } } diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipMenuView.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipMenuView.java index 161af05e52..42b8e9f5a3 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipMenuView.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipMenuView.java @@ -34,13 +34,11 @@ import android.animation.ValueAnimator; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; -import android.app.ActivityManager; import android.app.PendingIntent; import android.app.RemoteAction; import android.content.ComponentName; import android.content.Context; import android.content.Intent; -import android.content.pm.PackageManager; import android.graphics.Color; import android.graphics.Rect; import android.graphics.drawable.Drawable; @@ -61,13 +59,13 @@ import android.view.accessibility.AccessibilityNodeInfo; import android.widget.FrameLayout; import android.widget.LinearLayout; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; +import com.android.wm.shell.animation.Interpolators; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.pip.PipUiEventLogger; import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.animation.Interpolators; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @@ -147,14 +145,11 @@ public class PipMenuView extends FrameLayout { protected View mSettingsButton; protected View mDismissButton; protected View mTopEndContainer; + protected PipMenuIconsAlgorithm mPipMenuIconsAlgorithm; // How long the shell will wait for the app to close the PiP if a custom action is set. private final int mPipForceCloseDelay; - // Context for the currently active user. This may differ from the regular systemui Context - // in cases such as secondary users or HSUM. - private Context mContextForUser; - public PipMenuView(Context context, PhonePipMenuController controller, ShellExecutor mainExecutor, Handler mainHandler, PipUiEventLogger pipUiEventLogger) { super(context, null, 0); @@ -198,11 +193,13 @@ public class PipMenuView extends FrameLayout { mActionsGroup = findViewById(R.id.actions_group); mBetweenActionPaddingLand = getResources().getDimensionPixelSize( R.dimen.pip_between_action_padding_land); + mPipMenuIconsAlgorithm = new PipMenuIconsAlgorithm(mContext); + mPipMenuIconsAlgorithm.bindViews((ViewGroup) mViewRoot, (ViewGroup) mTopEndContainer, + findViewById(R.id.resize_handle), mSettingsButton, mDismissButton); mDismissFadeOutDurationMs = context.getResources() .getInteger(R.integer.config_pipExitAnimationDuration); initAccessibility(); - setContextForUser(); } private void initAccessibility() { @@ -342,6 +339,10 @@ public class PipMenuView extends FrameLayout { cancelDelayedHide(); } + void updateMenuLayout(Rect bounds) { + mPipMenuIconsAlgorithm.onBoundsChanged(bounds); + } + void hideMenu() { hideMenu(null); } @@ -446,7 +447,7 @@ public class PipMenuView extends FrameLayout { final LayoutInflater inflater = LayoutInflater.from(mContext); while (mActionsGroup.getChildCount() < mActions.size()) { final PipMenuActionView actionView = (PipMenuActionView) inflater.inflate( - R.layout.pip2_menu_action, mActionsGroup, false); + R.layout.pip_menu_action, mActionsGroup, false); mActionsGroup.addView(actionView); } @@ -473,7 +474,7 @@ public class PipMenuView extends FrameLayout { actionView.setImageDrawable(null); } else { // TODO: Check if the action drawable has changed before we reload it - action.getIcon().loadDrawableAsync(mContextForUser, d -> { + action.getIcon().loadDrawableAsync(mContext, d -> { if (d != null) { d.setTint(Color.WHITE); actionView.setImageDrawable(d); @@ -507,33 +508,6 @@ public class PipMenuView extends FrameLayout { expandContainer.requestLayout(); } - /** - * Sets the Context for the current user. If the user is the same as systemui, then simply - * use systemui Context. - */ - private void setContextForUser() { - int userId = ActivityManager.getCurrentUser(); - - if (mContext.getUserId() != userId) { - try { - mContextForUser = mContext.createPackageContextAsUser(mContext.getPackageName(), - Context.CONTEXT_RESTRICTED, new UserHandle(userId)); - } catch (PackageManager.NameNotFoundException e) { - // Shouldn't happen, use systemui context as backup - ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s: Failed to get context for user. Sysui userid=%d," - + " current userid=%d, error=%s", - TAG, - mContext.getUserId(), - userId, - e); - mContextForUser = mContext; - } - } else { - mContextForUser = mContext; - } - } - private void notifyMenuStateChangeStart(int menuState, boolean resize, Runnable callback) { mController.onMenuStateChangeStart(menuState, resize, callback); } diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipMotionHelper.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipMotionHelper.java index 9be61ddcdd..1c108a7df7 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipMotionHelper.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipMotionHelper.java @@ -16,7 +16,6 @@ package com.android.wm.shell.pip2.phone; -import static androidx.dynamicanimation.animation.SpringForce.DAMPING_RATIO_LOW_BOUNCY; import static androidx.dynamicanimation.animation.SpringForce.DAMPING_RATIO_NO_BOUNCY; import static androidx.dynamicanimation.animation.SpringForce.STIFFNESS_LOW; import static androidx.dynamicanimation.animation.SpringForce.STIFFNESS_MEDIUM; @@ -26,7 +25,6 @@ import static com.android.wm.shell.common.pip.PipBoundsState.STASH_TYPE_NONE; import static com.android.wm.shell.common.pip.PipBoundsState.STASH_TYPE_RIGHT; import static com.android.wm.shell.pip2.phone.PipMenuView.ANIM_TYPE_DISMISS; import static com.android.wm.shell.pip2.phone.PipMenuView.ANIM_TYPE_NONE; -import static com.android.wm.shell.pip2.phone.PipTransition.ANIMATING_BOUNDS_CHANGE_DURATION; import android.annotation.NonNull; import android.annotation.Nullable; @@ -37,39 +35,33 @@ import android.os.Bundle; import android.os.Debug; import android.view.SurfaceControl; -import com.android.internal.protolog.ProtoLog; -import com.android.internal.util.Preconditions; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.animation.FloatProperties; import com.android.wm.shell.common.FloatingContentCoordinator; +import com.android.wm.shell.shared.magnetictarget.MagnetizedObject; import com.android.wm.shell.common.pip.PipAppOpsListener; +import com.android.wm.shell.common.pip.PipBoundsAlgorithm; import com.android.wm.shell.common.pip.PipBoundsState; -import com.android.wm.shell.common.pip.PipDisplayLayoutState; import com.android.wm.shell.common.pip.PipPerfHintController; import com.android.wm.shell.common.pip.PipSnapAlgorithm; -import com.android.wm.shell.common.pip.PipUiEventLogger; -import com.android.wm.shell.common.pip.PipUtils; -import com.android.wm.shell.pip2.PipSurfaceTransactionHelper; -import com.android.wm.shell.pip2.animation.PipResizeAnimator; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.shared.animation.PhysicsAnimator; -import com.android.wm.shell.shared.magnetictarget.MagnetizedObject; import kotlin.Unit; import kotlin.jvm.functions.Function0; import java.util.Optional; +import java.util.function.Consumer; /** * A helper to animate and manipulate the PiP. */ public class PipMotionHelper implements PipAppOpsListener.Callback, FloatingContentCoordinator.FloatingContent, - PipTransitionState.PipTransitionStateChangedListener, - PipDisplayLayoutState.DisplayIdListener { + PipTransitionState.PipTransitionStateChangedListener { private static final String TAG = "PipMotionHelper"; private static final String FLING_BOUNDS_CHANGE = "fling_bounds_change"; - private static final String ANIMATING_BOUNDS_CHANGE = "animating_bounds_change"; private static final boolean DEBUG = false; private static final int SHRINK_STACK_FROM_MENU_DURATION = 250; @@ -83,14 +75,13 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, /** How much of the dismiss circle size to use when scaling down PIP. **/ private static final float DISMISS_CIRCLE_PERCENT = 0.85f; - private Context mContext; - @NonNull private final PipBoundsState mPipBoundsState; - @NonNull private final PipDisplayLayoutState mPipDisplayLayoutState; - @NonNull private final PipScheduler mPipScheduler; - @NonNull private final PipTransitionState mPipTransitionState; - @NonNull private final PipUiEventLogger mPipUiEventLogger; - private final PhonePipMenuController mMenuController; - private final PipSnapAlgorithm mSnapAlgorithm; + private final Context mContext; + private @NonNull PipBoundsState mPipBoundsState; + private @NonNull PipBoundsAlgorithm mPipBoundsAlgorithm; + private @NonNull PipScheduler mPipScheduler; + private @NonNull PipTransitionState mPipTransitionState; + private PhonePipMenuController mMenuController; + private PipSnapAlgorithm mSnapAlgorithm; /** The region that all of PIP must stay within. */ private final Rect mFloatingAllowedArea = new Rect(); @@ -122,7 +113,7 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, /** SpringConfig to use for fling-then-spring animations. */ private final PhysicsAnimator.SpringConfig mSpringConfig = - new PhysicsAnimator.SpringConfig(300f, DAMPING_RATIO_LOW_BOUNCY); + new PhysicsAnimator.SpringConfig(700f, DAMPING_RATIO_NO_BOUNCY); /** SpringConfig used for animating into the dismiss region, matches the one in * {@link MagnetizedObject}. */ @@ -138,6 +129,15 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, private final PhysicsAnimator.SpringConfig mConflictResolutionSpringConfig = new PhysicsAnimator.SpringConfig(STIFFNESS_LOW, DAMPING_RATIO_NO_BOUNCY); + private final Consumer<Rect> mUpdateBoundsCallback = (Rect newBounds) -> { + if (mPipBoundsState.getBounds().equals(newBounds)) { + return; + } + + mMenuController.updateMenuLayout(newBounds); + mPipBoundsState.setBounds(newBounds); + }; + /** * Whether we're springing to the touch event location (vs. moving it to that position * instantly). We spring-to-touch after PIP is dragged out of the magnetic target, since it was @@ -152,16 +152,9 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, private boolean mDismissalPending = false; /** - * Set to true if bounds change transition has been scheduled from PipMotionHelper - * after animating is over. + * Set to true if bounds change transition has been scheduled from PipMotionHelper. */ - private boolean mWaitingForFlingTransition = false; - - /** - * Set to true if bounds change transition has been scheduled from PipMotionHelper, - * and if the animation is supposed to run while transition is playing. - */ - private boolean mWaitingToPlayBoundsChangeTransition = false; + private boolean mWaitingForBoundsChangeTransition = false; /** * Gets set in {@link #animateToExpandedState(Rect, Rect, Rect, Runnable)}, this callback is @@ -169,18 +162,14 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, */ private Runnable mPostPipTransitionCallback; - private final @NonNull PipSurfaceTransactionHelper mSurfaceTransactionHelper; - public PipMotionHelper(Context context, @NonNull PipBoundsState pipBoundsState, PhonePipMenuController menuController, PipSnapAlgorithm snapAlgorithm, FloatingContentCoordinator floatingContentCoordinator, PipScheduler pipScheduler, Optional<PipPerfHintController> pipPerfHintControllerOptional, - PipTransitionState pipTransitionState, - PipSurfaceTransactionHelper pipSurfaceTransactionHelper, - PipUiEventLogger pipUiEventLogger, - PipDisplayLayoutState pipDisplayLayoutState) { + PipBoundsAlgorithm pipBoundsAlgorithm, PipTransitionState pipTransitionState) { mContext = context; mPipBoundsState = pipBoundsState; + mPipBoundsAlgorithm = pipBoundsAlgorithm; mPipScheduler = pipScheduler; mMenuController = menuController; mSnapAlgorithm = snapAlgorithm; @@ -194,10 +183,6 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, }; mPipTransitionState = pipTransitionState; mPipTransitionState.addPipTransitionStateChangedListener(this); - mPipUiEventLogger = pipUiEventLogger; - mSurfaceTransactionHelper = pipSurfaceTransactionHelper; - mPipDisplayLayoutState = pipDisplayLayoutState; - mPipDisplayLayoutState.addDisplayIdListener(this); } void init() { @@ -238,32 +223,20 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, } /** - * Tries to move the pinned stack to the given {@param toBounds} on the current display ID. + * Tries to move the pinned stack to the given {@param bounds}. */ void movePip(Rect toBounds) { - movePip(toBounds, false /* isDragging */, - mPipDisplayLayoutState.getDisplayId() /* focusedDisplayId */); - } - - - /** - * Tries to move the pinned stack to {@param toBounds} on the {@param focusedDisplayId} which - * follows the cursor's focus. - */ - void movePip(Rect toBounds, int focusedDisplayId) { - movePip(toBounds, false /* isDragging */, focusedDisplayId /* focusedDisplayId */); + movePip(toBounds, false /* isDragging */); } /** - * Tries to move the pinned stack to the given bounds. + * Tries to move the pinned stack to the given {@param bounds}. * - * @param toBounds bounds to move the pinned stack to - * @param isDragging Whether this movement is the result of a drag touch gesture. If - * so, we won't notify the floating content coordinator of this move, - * since that will happen when the gesture ends. - * @param focusedDisplayId the display ID of where the cursor currently is + * @param isDragging Whether this movement is the result of a drag touch gesture. If so, we + * won't notify the floating content coordinator of this move, since that will + * happen when the gesture ends. */ - void movePip(Rect toBounds, boolean isDragging, int focusedDisplayId) { + void movePip(Rect toBounds, boolean isDragging) { if (!isDragging) { mFloatingContentCoordinator.onContentMoved(this); } @@ -278,7 +251,7 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, mPipBoundsState.setBounds(toBounds); } else { mPipBoundsState.getMotionBoundsState().setBoundsInMotion(toBounds); - mPipScheduler.scheduleUserResizePip(toBounds, focusedDisplayId); + mPipScheduler.scheduleUserResizePip(toBounds); } } else { // If PIP is 'catching up' after being stuck in the dismiss target, update the animation @@ -361,12 +334,7 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, } cancelPhysicsAnimation(); mMenuController.hideMenu(ANIM_TYPE_NONE, false /* resize */); - - if (PipUtils.isContentPip(mPipTransitionState.getPipTaskInfo())) { - mPipScheduler.scheduleRemovePip(true /* withFadeout */); - } else { - mPipScheduler.scheduleExitPipViaExpand(); - } + // mPipTaskOrganizer.exitPip(skipAnimation ? 0 : LEAVE_PIP_DURATION, enterSplit); } /** @@ -374,22 +342,13 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, */ @Override public void dismissPip() { - dismissPip(true /* withFadeout */); - } - - /** - * Dismisses the pinned stack. - * - * @param withFadeout should animate with fadeout for the removal - */ - public void dismissPip(boolean withFadeout) { if (DEBUG) { ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: removePip: callers=\n%s", TAG, Debug.getCallers(5, " ")); } cancelPhysicsAnimation(); mMenuController.hideMenu(ANIM_TYPE_DISMISS, false /* resize */); - mPipScheduler.scheduleRemovePip(withFadeout); + // mPipTaskOrganizer.removePip(); } /** Sets the movement bounds to use to constrain PIP position animations. */ @@ -445,17 +404,6 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, // location now. mSpringingToTouch = false; - // Boost the velocityX if it's zero to forcefully push it towards the nearest edge. - // We don't simply change the xEndValue below since the PhysicsAnimator would rely on the - // same velocityX to find out which edge to snap to. - if (velocityX == 0) { - final int motionCenterX = mPipBoundsState - .getMotionBoundsState().getBoundsInMotion().centerX(); - final int displayCenterX = mPipBoundsState - .getDisplayBounds().centerX(); - velocityX = (motionCenterX < displayCenterX) ? -0.001f : 0.001f; - } - mTemporaryBoundsPhysicsAnimator .spring(FloatProperties.RECT_WIDTH, getBounds().width(), mSpringConfig) .spring(FloatProperties.RECT_HEIGHT, getBounds().height(), mSpringConfig) @@ -512,7 +460,7 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, mPipBoundsState.getMovementBounds().bottom + getBounds().height() * 2, 0, mSpringConfig) - .withEndActions(() -> dismissPip(false /* withFadeout */)); + .withEndActions(this::dismissPip); startBoundsAnimator( getBounds().left /* toX */, getBounds().bottom + getBounds().height() /* toY */); @@ -595,20 +543,11 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, + " callers=\n%s", TAG, originalBounds, offset, Debug.getCallers(5, " ")); } - if (offset == 0) { - return; - } - cancelPhysicsAnimation(); - - Rect adjustedBounds = new Rect(originalBounds); - adjustedBounds.offset(0, offset); - - setAnimatingToBounds(adjustedBounds); - Bundle extra = new Bundle(); - extra.putBoolean(ANIMATING_BOUNDS_CHANGE, true); - extra.putInt(ANIMATING_BOUNDS_CHANGE_DURATION, SHIFT_DURATION); - mPipTransitionState.setState(PipTransitionState.SCHEDULED_BOUNDS_CHANGE, extra); + /* + mPipTaskOrganizer.scheduleOffsetPip(originalBounds, offset, SHIFT_DURATION, + mUpdateBoundsCallback); + */ } /** @@ -623,11 +562,11 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, /** Set new fling configs whose min/max values respect the given movement bounds. */ private void rebuildFlingConfigs() { mFlingConfigX = new PhysicsAnimator.FlingConfig(DEFAULT_FRICTION, - mPipBoundsState.getMovementBounds().left, - mPipBoundsState.getMovementBounds().right); + mPipBoundsAlgorithm.getMovementBounds(getBounds()).left, + mPipBoundsAlgorithm.getMovementBounds(getBounds()).right); mFlingConfigY = new PhysicsAnimator.FlingConfig(DEFAULT_FRICTION, - mPipBoundsState.getMovementBounds().top, - mPipBoundsState.getMovementBounds().bottom); + mPipBoundsAlgorithm.getMovementBounds(getBounds()).top, + mPipBoundsAlgorithm.getMovementBounds(getBounds()).bottom); final Rect insetBounds = mPipBoundsState.getDisplayLayout().stableInsets(); mStashConfigX = new PhysicsAnimator.FlingConfig( DEFAULT_FRICTION, @@ -695,9 +634,6 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, // The physics animation ended, though we may not necessarily be done animating, such as // when we're still dragging after moving out of the magnetic target. if (!mDismissalPending && !mSpringingToTouch && !mMagnetizedPip.getObjectStuckToTarget()) { - // Update the earlier estimate on bounds we are animating towards, since physics - // animator is non-deterministic. - setAnimatingToBounds(mPipBoundsState.getMotionBoundsState().getBoundsInMotion()); // do not schedule resize if PiP is dismissing, which may cause app re-open to // mBounds instead of its normal bounds. Bundle extra = new Bundle(); @@ -736,12 +672,7 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, /** * Directly resizes the PiP to the given {@param bounds}. */ - void resizeAndAnimatePipUnchecked(Rect toBounds, int duration) { - if (mPipBoundsState.getMotionBoundsState().isInMotion()) { - // Do not carry out any resizing if we are dragging or physics animator is running. - return; - } - + private void resizeAndAnimatePipUnchecked(Rect toBounds, int duration) { if (DEBUG) { ProtoLog.d(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, "%s: resizeAndAnimatePipUnchecked: toBounds=%s" @@ -751,16 +682,10 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, // Intentionally resize here even if the current bounds match the destination bounds. // This is so all the proper callbacks are performed. - setAnimatingToBounds(toBounds); - Bundle extra = new Bundle(); - extra.putBoolean(ANIMATING_BOUNDS_CHANGE, true); - extra.putInt(ANIMATING_BOUNDS_CHANGE_DURATION, duration); - mPipTransitionState.setState(PipTransitionState.SCHEDULED_BOUNDS_CHANGE, extra); - } - @Override - public void onDisplayIdChanged(@NonNull Context context) { - mContext = context; + // mPipTaskOrganizer.scheduleAnimateResizePip(toBounds, duration, + // TRANSITION_DIRECTION_EXPAND_OR_UNEXPAND, null /* updateBoundsCallback */); + // setAnimatingToBounds(toBounds); } @Override @@ -769,11 +694,7 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, @Nullable Bundle extra) { switch (newState) { case PipTransitionState.SCHEDULED_BOUNDS_CHANGE: - mWaitingForFlingTransition = extra.getBoolean(FLING_BOUNDS_CHANGE); - mWaitingToPlayBoundsChangeTransition = extra.getBoolean(ANIMATING_BOUNDS_CHANGE); - if (!mWaitingForFlingTransition && !mWaitingToPlayBoundsChangeTransition) { - break; - } + if (!extra.getBoolean(FLING_BOUNDS_CHANGE)) break; if (mPipBoundsState.getBounds().equals( mPipBoundsState.getMotionBoundsState().getBoundsInMotion())) { @@ -788,106 +709,46 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, break; } - // Delay config until the end, if we are animating after scheduling the transition. + // If touch is turned off and we are in a fling animation, schedule a transition. + mWaitingForBoundsChangeTransition = true; mPipScheduler.scheduleAnimateResizePip( - mPipBoundsState.getMotionBoundsState().getAnimatingToBounds(), - mWaitingToPlayBoundsChangeTransition, - extra.getInt(ANIMATING_BOUNDS_CHANGE_DURATION, - PipTransition.BOUNDS_CHANGE_JUMPCUT_DURATION)); + mPipBoundsState.getMotionBoundsState().getBoundsInMotion()); break; case PipTransitionState.CHANGING_PIP_BOUNDS: - final SurfaceControl.Transaction startTx = extra.getParcelable( - PipTransition.PIP_START_TX, SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishTx = extra.getParcelable( - PipTransition.PIP_FINISH_TX, SurfaceControl.Transaction.class); - final Rect destinationBounds = extra.getParcelable( - PipTransition.PIP_DESTINATION_BOUNDS, Rect.class); - final int duration = extra.getInt(ANIMATING_BOUNDS_CHANGE_DURATION, - PipTransition.BOUNDS_CHANGE_JUMPCUT_DURATION); + if (!mWaitingForBoundsChangeTransition) break; - if (mWaitingForFlingTransition) { - mWaitingForFlingTransition = false; - handleFlingTransition(startTx, finishTx, destinationBounds); - settlePipBoundsAfterFling(); - } else if (mWaitingToPlayBoundsChangeTransition) { - mWaitingToPlayBoundsChangeTransition = false; - startResizeAnimation(startTx, finishTx, destinationBounds, duration); - } + // If bounds change transition was scheduled from this class, handle leash updates. + mWaitingForBoundsChangeTransition = false; + SurfaceControl.Transaction startTx = extra.getParcelable( + PipTransition.PIP_START_TX, SurfaceControl.Transaction.class); + Rect destinationBounds = extra.getParcelable( + PipTransition.PIP_DESTINATION_BOUNDS, Rect.class); + startTx.setPosition(mPipTransitionState.mPinnedTaskLeash, + destinationBounds.left, destinationBounds.top); + startTx.apply(); + + // All motion operations have actually finished, so make bounds cache updates. + settlePipBoundsAfterPhysicsAnimation(false /* animatingAfter */); + cleanUpHighPerfSessionMaybe(); + + // Signal that the transition is done - should update transition state by default. + mPipScheduler.scheduleFinishResizePip(false /* configAtEnd */); break; case PipTransitionState.EXITING_PIP: // We need to force finish any local animators if about to leave PiP, to avoid // breaking the state (e.g. leashes are cleaned up upon exit). + if (!mPipBoundsState.getMotionBoundsState().isInMotion()) break; cancelPhysicsAnimation(); settlePipBoundsAfterPhysicsAnimation(false /* animatingAfter */); - break; - case PipTransitionState.CHANGED_PIP_BOUNDS: - // Check whether changed bounds imply we need to update stash state too. - stashEndActionIfNeeded(); - settlePipBoundsAfterPhysicsAnimation(false /* animatingAfter */); - break; } } - private void handleFlingTransition(SurfaceControl.Transaction startTx, - SurfaceControl.Transaction finishTx, Rect destinationBounds) { - SurfaceControl pipLeash = mPipTransitionState.getPinnedTaskLeash(); - - // merge transactions so everything is done on startTx - startTx.merge(finishTx); - - startTx.setPosition(pipLeash, destinationBounds.left, destinationBounds.top); - mSurfaceTransactionHelper.round(startTx, pipLeash, true /* applyCornerRadius */); - mSurfaceTransactionHelper.shadow(startTx, pipLeash, true /* applyShadow */); - startTx.apply(); - - // All motion operations have actually finished, so make bounds cache updates. - settlePipBoundsAfterPhysicsAnimation(false /* animatingAfter */); - cleanUpHighPerfSessionMaybe(); - - // Signal that the transition is done - should update transition state by default. - mPipScheduler.scheduleFinishPipBoundsChange(destinationBounds); - } - - private void settlePipBoundsAfterFling() { - mPipTransitionState.setOnIdlePipTransitionStateRunnable(() -> { - final int delta = - mPipBoundsState.getMovementBounds().bottom - mPipBoundsState.getBounds().top; - if (delta < 0) { - // Move the PiP window to the movementBounds. - animateToOffset(mPipBoundsState.getBounds(), delta); - } - }); - } - - private void startResizeAnimation(SurfaceControl.Transaction startTx, - SurfaceControl.Transaction finishTx, Rect destinationBounds, int duration) { - SurfaceControl pipLeash = mPipTransitionState.getPinnedTaskLeash(); - Preconditions.checkState(pipLeash != null, - "No leash cached by mPipTransitionState=" + mPipTransitionState); - - PipResizeAnimator animator = new PipResizeAnimator(mContext, mSurfaceTransactionHelper, - pipLeash, - startTx, finishTx, destinationBounds, mPipBoundsState.getBounds(), - destinationBounds, duration, 0f /* angle */); - animator.setAnimationEndCallback(() -> { - // In case an ongoing drag/fling was present before a deterministic resize transition - // kicked in, we need to update the update bounds properly before cleaning in-motion - // state. - mPipBoundsState.getMotionBoundsState().setBoundsInMotion(destinationBounds); - settlePipBoundsAfterPhysicsAnimation(false /* animatingAfter */); - - cleanUpHighPerfSessionMaybe(); - // Signal that we are done with bounds change transition - mPipScheduler.scheduleFinishPipBoundsChange(destinationBounds); - }); - animator.start(); - } - private void settlePipBoundsAfterPhysicsAnimation(boolean animatingAfter) { - if (!animatingAfter && mPipBoundsState.getMotionBoundsState().isInMotion()) { + if (!animatingAfter) { // The physics animation ended, though we may not necessarily be done animating, such as // when we're still dragging after moving out of the magnetic target. Only set the final // bounds state and clear motion bounds completely if the whole animation is over. + mPipBoundsState.setBounds(mPipBoundsState.getMotionBoundsState().getBoundsInMotion()); mPipBoundsState.getMotionBoundsState().onAllAnimationsEnded(); } mPipBoundsState.getMotionBoundsState().onPhysicsAnimationEnded(); @@ -895,25 +756,6 @@ public class PipMotionHelper implements PipAppOpsListener.Callback, mDismissalPending = false; } - private void stashEndActionIfNeeded() { - boolean isStashing = mPipBoundsState.getBounds().right > mPipBoundsState - .getDisplayBounds().width() || mPipBoundsState.getBounds().left < 0; - if (!isStashing) { - return; - } - - if (mPipBoundsState.getBounds().left < 0 - && mPipBoundsState.getStashedState() != STASH_TYPE_LEFT) { - mPipBoundsState.setStashed(STASH_TYPE_LEFT); - mPipUiEventLogger.log(PipUiEventLogger.PipUiEventEnum.PICTURE_IN_PICTURE_STASH_LEFT); - } else if (mPipBoundsState.getBounds().left >= 0 - && mPipBoundsState.getStashedState() != STASH_TYPE_RIGHT) { - mPipBoundsState.setStashed(STASH_TYPE_RIGHT); - mPipUiEventLogger.log(PipUiEventLogger.PipUiEventEnum.PICTURE_IN_PICTURE_STASH_RIGHT); - } - mMenuController.hideMenu(); - } - /** * Returns a MagnetizedObject wrapper for PIP's animated bounds. This is provided to the * magnetic dismiss target so it can calculate PIP's size and position. diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipResizeGestureHandler.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipResizeGestureHandler.java index c7ab7c5359..33e80bd809 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipResizeGestureHandler.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipResizeGestureHandler.java @@ -16,9 +16,7 @@ package com.android.wm.shell.pip2.phone; import static com.android.internal.policy.TaskResizingAlgorithm.CTRL_NONE; -import static com.android.wm.shell.pip2.phone.PipTransition.ANIMATING_BOUNDS_CHANGE_DURATION; -import android.annotation.NonNull; import android.annotation.Nullable; import android.content.Context; import android.content.res.Resources; @@ -45,49 +43,50 @@ import com.android.wm.shell.R; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; import com.android.wm.shell.common.pip.PipBoundsState; -import com.android.wm.shell.common.pip.PipDesktopState; -import com.android.wm.shell.common.pip.PipDisplayLayoutState; import com.android.wm.shell.common.pip.PipPerfHintController; +import com.android.wm.shell.common.pip.PipPinchResizingAlgorithm; import com.android.wm.shell.common.pip.PipUiEventLogger; -import com.android.wm.shell.pip2.PipSurfaceTransactionHelper; import com.android.wm.shell.pip2.animation.PipResizeAnimator; import java.io.PrintWriter; -import java.util.function.Function; +import java.util.function.Consumer; /** * Helper on top of PipTouchHandler that handles inputs OUTSIDE of the PIP window, which is used to * trigger dynamic resize. */ public class PipResizeGestureHandler implements - PipTransitionState.PipTransitionStateChangedListener, - PipDisplayLayoutState.DisplayIdListener { + PipTransitionState.PipTransitionStateChangedListener { private static final String TAG = "PipResizeGestureHandler"; private static final int PINCH_RESIZE_SNAP_DURATION = 250; private static final float PINCH_RESIZE_AUTO_MAX_RATIO = 0.9f; private static final String RESIZE_BOUNDS_CHANGE = "resize_bounds_change"; - private Context mContext; + private final Context mContext; private final PipBoundsAlgorithm mPipBoundsAlgorithm; private final PipBoundsState mPipBoundsState; private final PipTouchState mPipTouchState; private final PipScheduler mPipScheduler; private final PipTransitionState mPipTransitionState; private final PhonePipMenuController mPhonePipMenuController; - private final PipDisplayLayoutState mPipDisplayLayoutState; - private final PipDesktopState mPipDesktopState; private final PipUiEventLogger mPipUiEventLogger; + private final PipPinchResizingAlgorithm mPinchResizingAlgorithm; + private final int mDisplayId; private final ShellExecutor mMainExecutor; private final PointF mDownPoint = new PointF(); private final PointF mDownSecondPoint = new PointF(); private final PointF mLastPoint = new PointF(); private final PointF mLastSecondPoint = new PointF(); + private final Point mMaxSize = new Point(); + private final Point mMinSize = new Point(); private final Rect mLastResizeBounds = new Rect(); private final Rect mUserResizeBounds = new Rect(); private final Rect mDownBounds = new Rect(); private final Rect mStartBoundsAfterRelease = new Rect(); + private final Runnable mUpdateMovementBoundsRunnable; + private final Consumer<Rect> mUpdateResizeBoundsCallback; private float mTouchSlop; @@ -95,17 +94,16 @@ public class PipResizeGestureHandler implements private boolean mIsAttached; private boolean mIsEnabled; private boolean mEnablePinchResize; - private boolean mEnableDragCornerResize; + private boolean mIsSysUiStateValid; private boolean mThresholdCrossed; private boolean mOngoingPinchToResize = false; private boolean mWaitingForBoundsChangeTransition = false; private float mAngle = 0; - + int mFirstIndex = -1; + int mSecondIndex = -1; private InputMonitor mInputMonitor; private InputEventReceiver mInputEventReceiver; - private PipDragToResizeHandler mPipDragToResizeHandler; - private PipPinchToResizeHandler mPipPinchToResizeHandler; @Nullable private final PipPerfHintController mPipPerfHintController; @@ -116,24 +114,19 @@ public class PipResizeGestureHandler implements private int mCtrlType; private int mOhmOffset; - private final @NonNull PipSurfaceTransactionHelper mSurfaceTransactionHelper; - public PipResizeGestureHandler(Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, PipBoundsAlgorithm pipBoundsAlgorithm, PipBoundsState pipBoundsState, PipTouchState pipTouchState, PipScheduler pipScheduler, PipTransitionState pipTransitionState, + Runnable updateMovementBoundsRunnable, PipUiEventLogger pipUiEventLogger, PhonePipMenuController menuActivityController, - Function<Rect, Rect> movementBoundsSupplier, - PipDisplayLayoutState pipDisplayLayoutState, - PipDesktopState pipDesktopState, ShellExecutor mainExecutor, @Nullable PipPerfHintController pipPerfHintController) { mContext = context; - mSurfaceTransactionHelper = pipSurfaceTransactionHelper; + mDisplayId = context.getDisplayId(); mMainExecutor = mainExecutor; mPipPerfHintController = pipPerfHintController; mPipBoundsAlgorithm = pipBoundsAlgorithm; @@ -144,20 +137,22 @@ public class PipResizeGestureHandler implements mPipTransitionState = pipTransitionState; mPipTransitionState.addPipTransitionStateChangedListener(this); + mUpdateMovementBoundsRunnable = updateMovementBoundsRunnable; mPhonePipMenuController = menuActivityController; - mPipDisplayLayoutState = pipDisplayLayoutState; - mPipDisplayLayoutState.addDisplayIdListener(this); - mPipDesktopState = pipDesktopState; mPipUiEventLogger = pipUiEventLogger; + mPinchResizingAlgorithm = new PipPinchResizingAlgorithm(); - mPipDragToResizeHandler = new PipDragToResizeHandler(context, this, pipBoundsState, - menuActivityController, pipBoundsAlgorithm, pipScheduler, movementBoundsSupplier); - mPipPinchToResizeHandler = new PipPinchToResizeHandler(this, pipBoundsState, - menuActivityController, pipScheduler); - + mUpdateResizeBoundsCallback = (rect) -> { + mUserResizeBounds.set(rect); + // mMotionHelper.synchronizePinnedStackBounds(); + mUpdateMovementBoundsRunnable.run(); + mPipBoundsState.setBounds(rect); + resetState(); + }; } void init() { + mContext.getDisplay().getRealSize(mMaxSize); reloadResources(); final Resources res = mContext.getResources(); @@ -168,15 +163,17 @@ public class PipResizeGestureHandler implements reloadResources(); } - private void reloadResources() { - mPipDragToResizeHandler.reloadResources(mContext); - mTouchSlop = ViewConfiguration.get(mContext).getScaledTouchSlop(); + /** + * Called when SysUI state changed. + * + * @param isSysUiStateValid Is SysUI valid or not. + */ + public void onSystemUiStateChanged(boolean isSysUiStateValid) { + mIsSysUiStateValid = isSysUiStateValid; } - @Override - public void onDisplayIdChanged(@NonNull Context context) { - mContext = context; - reloadResources(); + private void reloadResources() { + mTouchSlop = ViewConfiguration.get(mContext).getScaledTouchSlop(); } private void disposeInputChannel() { @@ -193,8 +190,6 @@ public class PipResizeGestureHandler implements void onActivityPinned() { mIsAttached = true; updateIsEnabled(); - // Only enable drag-corner-to-resize if PiP was entered when Desktop Mode session is active. - mEnableDragCornerResize = mPipDesktopState.isPipInDesktopMode(); } void onActivityUnpinned() { @@ -214,7 +209,7 @@ public class PipResizeGestureHandler implements if (mIsEnabled) { // Register input event receiver mInputMonitor = mContext.getSystemService(InputManager.class).monitorGestureInput( - "pip-resize", mPipDisplayLayoutState.getDisplayId()); + "pip-resize", mDisplayId); try { mMainExecutor.executeBlocking(() -> { mInputEventReceiver = new PipResizeInputEventReceiver( @@ -226,44 +221,9 @@ public class PipResizeGestureHandler implements } } - boolean getAllowGesture() { - return mAllowGesture; - } - - void setAllowGesture(boolean allowGesture) { - mAllowGesture = allowGesture; - } - - boolean getThresholdCrossed() { - return mThresholdCrossed; - } - - void setThresholdCrossed(boolean thresholdCrossed) { - mThresholdCrossed = thresholdCrossed; - } - - int getCtrlType() { - return mCtrlType; - } - - void setCtrlType(int ctrlType) { - mCtrlType = ctrlType; - } - - void setAngle(float angle) { - mAngle = angle; - } - - void startHighPerfSession() { - if (mPipPerfHintController != null) { - mPipHighPerfSession = mPipPerfHintController.startSession( - this::onHighPerfSessionTimeout, "onPinchResize"); - } - } - @VisibleForTesting void onInputEvent(InputEvent ev) { - if (!mEnableDragCornerResize && !mEnablePinchResize) { + if (!mEnablePinchResize) { // No need to handle anything if resizing isn't enabled. return; } @@ -289,15 +249,8 @@ public class PipResizeGestureHandler implements } } - final Point minSize = mPipBoundsState.getMinSize(); - final Point maxSize = mPipBoundsState.getMaxSize(); if (mOngoingPinchToResize) { - mPipPinchToResizeHandler.onPinchResize(mv, mDownPoint, mDownSecondPoint, - mDownBounds, mLastPoint, mLastSecondPoint, mLastResizeBounds, mTouchSlop, - minSize, maxSize); - } else if (mEnableDragCornerResize) { - mPipDragToResizeHandler.onDragCornerResize(mv, mLastResizeBounds, mDownPoint, - mDownBounds, minSize, maxSize, mTouchSlop); + onPinchResize(mv); } } } @@ -318,31 +271,20 @@ public class PipResizeGestureHandler implements } boolean willStartResizeGesture(MotionEvent ev) { - switch (ev.getActionMasked()) { - case MotionEvent.ACTION_DOWN: - if (mEnableDragCornerResize && mPipDragToResizeHandler.isWithinDragResizeRegion( - (int) ev.getRawX(), - (int) ev.getRawY())) { - return true; - } - break; - - case MotionEvent.ACTION_POINTER_DOWN: - if (mEnablePinchResize && ev.getPointerCount() == 2) { - mPipPinchToResizeHandler.onPinchResize(ev, mDownPoint, mDownSecondPoint, - mDownBounds, mLastPoint, mLastSecondPoint, mLastResizeBounds, - mTouchSlop, mPipBoundsState.getMinSize(), mPipBoundsState.getMaxSize()); - mOngoingPinchToResize = mAllowGesture; - return mAllowGesture; - } - break; - - default: - break; + if (ev.getActionMasked() == MotionEvent.ACTION_POINTER_DOWN) { + if (mEnablePinchResize && ev.getPointerCount() == 2) { + onPinchResize(ev); + mOngoingPinchToResize = mAllowGesture; + return mAllowGesture; + } } return false; } + private boolean isInValidSysUiState() { + return mIsSysUiStateValid; + } + private void onHighPerfSessionTimeout(PipPerfHintController.PipHighPerfSession session) {} private void cleanUpHighPerfSessionMaybe() { @@ -353,6 +295,83 @@ public class PipResizeGestureHandler implements } } + @VisibleForTesting + void onPinchResize(MotionEvent ev) { + int action = ev.getActionMasked(); + + if (action == MotionEvent.ACTION_UP || action == MotionEvent.ACTION_CANCEL) { + mFirstIndex = -1; + mSecondIndex = -1; + mAllowGesture = false; + finishResize(); + } + + if (ev.getPointerCount() != 2) { + return; + } + + final Rect pipBounds = mPipBoundsState.getBounds(); + if (action == MotionEvent.ACTION_POINTER_DOWN) { + if (mFirstIndex == -1 && mSecondIndex == -1 + && pipBounds.contains((int) ev.getRawX(0), (int) ev.getRawY(0)) + && pipBounds.contains((int) ev.getRawX(1), (int) ev.getRawY(1))) { + mAllowGesture = true; + mFirstIndex = 0; + mSecondIndex = 1; + mDownPoint.set(ev.getRawX(mFirstIndex), ev.getRawY(mFirstIndex)); + mDownSecondPoint.set(ev.getRawX(mSecondIndex), ev.getRawY(mSecondIndex)); + mDownBounds.set(pipBounds); + + mLastPoint.set(mDownPoint); + mLastSecondPoint.set(mLastSecondPoint); + mLastResizeBounds.set(mDownBounds); + + // start the high perf session as the second pointer gets detected + if (mPipPerfHintController != null) { + mPipHighPerfSession = mPipPerfHintController.startSession( + this::onHighPerfSessionTimeout, "onPinchResize"); + } + } + } + + if (action == MotionEvent.ACTION_MOVE) { + if (mFirstIndex == -1 || mSecondIndex == -1) { + return; + } + + float x0 = ev.getRawX(mFirstIndex); + float y0 = ev.getRawY(mFirstIndex); + float x1 = ev.getRawX(mSecondIndex); + float y1 = ev.getRawY(mSecondIndex); + mLastPoint.set(x0, y0); + mLastSecondPoint.set(x1, y1); + + // Capture inputs + if (!mThresholdCrossed + && (distanceBetween(mDownSecondPoint, mLastSecondPoint) > mTouchSlop + || distanceBetween(mDownPoint, mLastPoint) > mTouchSlop)) { + pilferPointers(); + mThresholdCrossed = true; + // Reset the down to begin resizing from this point + mDownPoint.set(mLastPoint); + mDownSecondPoint.set(mLastSecondPoint); + + if (mPhonePipMenuController.isMenuVisible()) { + mPhonePipMenuController.hideMenu(); + } + } + + if (mThresholdCrossed) { + mAngle = mPinchResizingAlgorithm.calculateBoundsAndAngle(mDownPoint, + mDownSecondPoint, mLastPoint, mLastSecondPoint, mMinSize, mMaxSize, + mDownBounds, mLastResizeBounds); + + mPipScheduler.scheduleUserResizePip(mLastResizeBounds, mAngle); + mPipBoundsState.setHasUserResizedPip(true); + } + } + } + private void snapToMovementBoundsEdge(Rect bounds, Rect movementBounds) { final int leftEdge = bounds.left; @@ -395,35 +414,27 @@ public class PipResizeGestureHandler implements // mPipTaskOrganizer.scheduleFinishResizePip(finalBounds, mUpdateResizeBoundsCallback); } - /** Handles additional resizing and state changes after gesture resizing is done. */ - void finishResize() { + private void finishResize() { if (mLastResizeBounds.isEmpty()) { resetState(); + } + if (!mOngoingPinchToResize) { return; } // Cache initial bounds after release for animation before mLastResizeBounds are modified. mStartBoundsAfterRelease.set(mLastResizeBounds); - // Drag-corner-to-resize - we don't need to adjust the bounds at this point - if (!mOngoingPinchToResize) { - scheduleBoundsChange(); - return; - } - - final Point minSize = mPipBoundsState.getMinSize(); - final Point maxSize = mPipBoundsState.getMaxSize(); - // If user resize is pretty close to max size, just auto resize to max. - if (mLastResizeBounds.width() >= PINCH_RESIZE_AUTO_MAX_RATIO * maxSize.x - || mLastResizeBounds.height() >= PINCH_RESIZE_AUTO_MAX_RATIO * maxSize.y) { - resizeRectAboutCenter(mLastResizeBounds, maxSize.x, maxSize.y); + if (mLastResizeBounds.width() >= PINCH_RESIZE_AUTO_MAX_RATIO * mMaxSize.x + || mLastResizeBounds.height() >= PINCH_RESIZE_AUTO_MAX_RATIO * mMaxSize.y) { + resizeRectAboutCenter(mLastResizeBounds, mMaxSize.x, mMaxSize.y); } // If user resize is smaller than min size, auto resize to min - if (mLastResizeBounds.width() < minSize.x - || mLastResizeBounds.height() < minSize.y) { - resizeRectAboutCenter(mLastResizeBounds, minSize.x, minSize.y); + if (mLastResizeBounds.width() < mMinSize.x + || mLastResizeBounds.height() < mMinSize.y) { + resizeRectAboutCenter(mLastResizeBounds, mMinSize.x, mMinSize.y); } // get the current movement bounds @@ -437,10 +448,6 @@ public class PipResizeGestureHandler implements mLastResizeBounds, movementBounds); mPipBoundsAlgorithm.applySnapFraction(mLastResizeBounds, snapFraction); - scheduleBoundsChange(); - } - - private void scheduleBoundsChange() { // Update the transition state to schedule a resize transition. Bundle extra = new Bundle(); extra.putBoolean(RESIZE_BOUNDS_CHANGE, true); @@ -479,10 +486,23 @@ public class PipResizeGestureHandler implements mInputMonitor.pilferPointers(); } + + void updateMaxSize(int maxX, int maxY) { + mMaxSize.set(maxX, maxY); + } + + void updateMinSize(int minX, int minY) { + mMinSize.set(minX, minY); + } + void setOhmOffset(int offset) { mOhmOffset = offset; } + private float distanceBetween(PointF p1, PointF p2) { + return (float) Math.hypot(p2.x - p1.x, p2.y - p1.y); + } + private void resizeRectAboutCenter(Rect rect, int w, int h) { int cx = rect.centerX(); int cy = rect.centerY(); @@ -515,39 +535,34 @@ public class PipResizeGestureHandler implements mWaitingForBoundsChangeTransition = true; // Schedule PiP resize transition, but delay any config updates until very end. - mPipScheduler.scheduleAnimateResizePip(mLastResizeBounds, - true /* configAtEnd */, PINCH_RESIZE_SNAP_DURATION); + mPipScheduler.scheduleAnimateResizePip(mLastResizeBounds, true /* configAtEnd */); break; case PipTransitionState.CHANGING_PIP_BOUNDS: if (!mWaitingForBoundsChangeTransition) break; // If resize transition was scheduled from this component, handle leash updates. mWaitingForBoundsChangeTransition = false; - SurfaceControl pipLeash = mPipTransitionState.getPinnedTaskLeash(); + SurfaceControl pipLeash = mPipTransitionState.mPinnedTaskLeash; Preconditions.checkState(pipLeash != null, "No leash cached by mPipTransitionState=" + mPipTransitionState); - final SurfaceControl.Transaction startTx = extra.getParcelable( + SurfaceControl.Transaction startTx = extra.getParcelable( PipTransition.PIP_START_TX, SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishTx = extra.getParcelable( + SurfaceControl.Transaction finishTx = extra.getParcelable( PipTransition.PIP_FINISH_TX, SurfaceControl.Transaction.class); - final Rect destinationBounds = extra.getParcelable( - PipTransition.PIP_DESTINATION_BOUNDS, Rect.class); - final int duration = extra.getInt(ANIMATING_BOUNDS_CHANGE_DURATION, - PipTransition.BOUNDS_CHANGE_JUMPCUT_DURATION); + startTx.setWindowCrop(pipLeash, mPipBoundsState.getBounds().width(), + mPipBoundsState.getBounds().height()); - PipResizeAnimator animator = new PipResizeAnimator(mContext, - mSurfaceTransactionHelper, pipLeash, - startTx, finishTx, destinationBounds, mStartBoundsAfterRelease, - destinationBounds, duration, mAngle); + PipResizeAnimator animator = new PipResizeAnimator(mContext, pipLeash, + startTx, finishTx, mPipBoundsState.getBounds(), mStartBoundsAfterRelease, + mLastResizeBounds, PINCH_RESIZE_SNAP_DURATION, mAngle); animator.setAnimationEndCallback(() -> { // All motion operations have actually finished, so make bounds cache updates. - mUserResizeBounds.set(destinationBounds); - resetState(); + mUpdateResizeBoundsCallback.accept(mLastResizeBounds); cleanUpHighPerfSessionMaybe(); - // Signal that we are done with bounds change transition - mPipScheduler.scheduleFinishPipBoundsChange(destinationBounds); + // Signal that we are done with resize transition + mPipScheduler.scheduleFinishResizePip(true /* configAtEnd */); }); animator.start(); break; @@ -564,9 +579,10 @@ public class PipResizeGestureHandler implements pw.println(innerPrefix + "mIsAttached=" + mIsAttached); pw.println(innerPrefix + "mIsEnabled=" + mIsEnabled); pw.println(innerPrefix + "mEnablePinchResize=" + mEnablePinchResize); - pw.println(innerPrefix + "mEnableDragCornerResize=" + mEnableDragCornerResize); pw.println(innerPrefix + "mThresholdCrossed=" + mThresholdCrossed); pw.println(innerPrefix + "mOhmOffset=" + mOhmOffset); + pw.println(innerPrefix + "mMinSize=" + mMinSize); + pw.println(innerPrefix + "mMaxSize=" + mMaxSize); } class PipResizeInputEventReceiver extends BatchedInputEventReceiver { diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipScheduler.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipScheduler.java index 03fb254d97..9c1e321a12 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipScheduler.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipScheduler.java @@ -18,103 +18,99 @@ package com.android.wm.shell.pip2.phone; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; -import android.app.PictureInPictureParams; -import android.app.TaskInfo; +import static com.android.wm.shell.transition.Transitions.TRANSIT_EXIT_PIP; + +import android.content.BroadcastReceiver; import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.graphics.Matrix; import android.graphics.Rect; -import android.os.Bundle; -import android.os.SystemProperties; import android.view.SurfaceControl; -import android.window.DisplayAreaInfo; -import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; -import androidx.annotation.NonNull; +import androidx.annotation.IntDef; import androidx.annotation.Nullable; +import androidx.core.content.ContextCompat; -import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.ScreenshotUtils; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.pip.PipBoundsState; -import com.android.wm.shell.common.pip.PipDesktopState; -import com.android.wm.shell.common.pip.PipDisplayLayoutState; import com.android.wm.shell.common.pip.PipUtils; -import com.android.wm.shell.desktopmode.DesktopPipTransitionController; import com.android.wm.shell.pip.PipTransitionController; -import com.android.wm.shell.pip2.PipSurfaceTransactionHelper; -import com.android.wm.shell.pip2.animation.PipAlphaAnimator; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.split.SplitScreenConstants; -import com.android.wm.shell.splitscreen.SplitScreenController; -import java.util.Optional; -import java.util.function.Supplier; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; /** * Scheduler for Shell initiated PiP transitions and animations. */ -public class PipScheduler implements PipTransitionState.PipTransitionStateChangedListener { +public class PipScheduler { private static final String TAG = PipScheduler.class.getSimpleName(); - - /** - * The fixed start delay in ms when fading out the content overlay from bounds animation. - * The fadeout animation is guaranteed to start after the client has drawn under the new config. - */ - public static final int EXTRA_CONTENT_OVERLAY_FADE_OUT_DELAY_MS = - SystemProperties.getInt( - "persist.wm.debug.extra_content_overlay_fade_out_delay_ms", 400); - private static final int CONTENT_OVERLAY_FADE_OUT_DURATION_MS = 500; - private static final int DISPLAY_TRANSFER_DURATION_MS = 250; + private static final String BROADCAST_FILTER = PipScheduler.class.getCanonicalName(); private final Context mContext; private final PipBoundsState mPipBoundsState; - private final PipDisplayLayoutState mPipDisplayLayoutState; private final ShellExecutor mMainExecutor; private final PipTransitionState mPipTransitionState; - private final DisplayController mDisplayController; - private final PipDesktopState mPipDesktopState; - private final Optional<DesktopPipTransitionController> mDesktopPipTransitionController; - private final Optional<SplitScreenController> mSplitScreenControllerOptional; + private PipSchedulerReceiver mSchedulerReceiver; private PipTransitionController mPipTransitionController; - private PipSurfaceTransactionHelper.SurfaceControlTransactionFactory - mSurfaceControlTransactionFactory; - @NonNull private final PipSurfaceTransactionHelper mPipSurfaceTransactionHelper; + /** + * Temporary PiP CUJ codes to schedule PiP related transitions directly from Shell. + * This is used for a broadcast receiver to resolve intents. This should be removed once + * there is an equivalent of PipTouchHandler and PipResizeGestureHandler for PiP2. + */ + private static final int PIP_EXIT_VIA_EXPAND_CODE = 0; + private static final int PIP_DOUBLE_TAP = 1; - @Nullable private Runnable mUpdateMovementBoundsRunnable; - @Nullable private PipAlphaAnimator mOverlayFadeoutAnimator; + @IntDef(value = { + PIP_EXIT_VIA_EXPAND_CODE, + PIP_DOUBLE_TAP + }) + @Retention(RetentionPolicy.SOURCE) + @interface PipUserJourneyCode {} - private PipAlphaAnimatorSupplier mPipAlphaAnimatorSupplier; - private Supplier<PictureInPictureParams> mPipParamsSupplier; - private int mLastFocusedDisplayId; + /** + * A temporary broadcast receiver to initiate PiP CUJs. + */ + private class PipSchedulerReceiver extends BroadcastReceiver { + @Override + public void onReceive(Context context, Intent intent) { + int userJourneyCode = intent.getIntExtra("cuj_code_extra", 0); + switch (userJourneyCode) { + case PIP_EXIT_VIA_EXPAND_CODE: + scheduleExitPipViaExpand(); + break; + case PIP_DOUBLE_TAP: + scheduleDoubleTapToResize(); + break; + default: + throw new IllegalStateException("unexpected CUJ code=" + userJourneyCode); + } + } + } public PipScheduler(Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, PipBoundsState pipBoundsState, ShellExecutor mainExecutor, - PipTransitionState pipTransitionState, - Optional<SplitScreenController> splitScreenControllerOptional, - Optional<DesktopPipTransitionController> desktopPipTransitionController, - PipDesktopState pipDesktopState, - DisplayController displayController, - PipDisplayLayoutState pipDisplayLayoutState) { + PipTransitionState pipTransitionState) { mContext = context; mPipBoundsState = pipBoundsState; mMainExecutor = mainExecutor; mPipTransitionState = pipTransitionState; - mPipTransitionState.addPipTransitionStateChangedListener(this); - mPipDesktopState = pipDesktopState; - mDesktopPipTransitionController = desktopPipTransitionController; - mSplitScreenControllerOptional = splitScreenControllerOptional; - mDisplayController = displayController; - mPipDisplayLayoutState = pipDisplayLayoutState; - mSurfaceControlTransactionFactory = - new PipSurfaceTransactionHelper.VsyncSurfaceControlTransactionFactory(); - mPipSurfaceTransactionHelper = pipSurfaceTransactionHelper; - mPipAlphaAnimatorSupplier = PipAlphaAnimator::new; - mLastFocusedDisplayId = mPipDisplayLayoutState.getDisplayId(); + + if (PipUtils.isPip2ExperimentEnabled()) { + // temporary broadcast receiver to initiate exit PiP via expand + mSchedulerReceiver = new PipSchedulerReceiver(); + ContextCompat.registerReceiver(mContext, mSchedulerReceiver, + new IntentFilter(BROADCAST_FILTER), ContextCompat.RECEIVER_EXPORTED); + } + } + + ShellExecutor getMainExecutor() { + return mMainExecutor; } void setPipTransitionController(PipTransitionController pipTransitionController) { @@ -123,45 +119,15 @@ public class PipScheduler implements PipTransitionState.PipTransitionStateChange @Nullable private WindowContainerTransaction getExitPipViaExpandTransaction() { - WindowContainerToken pipTaskToken = mPipTransitionState.getPipTaskToken(); - if (pipTaskToken == null) { + if (mPipTransitionState.mPipTaskToken == null) { return null; } WindowContainerTransaction wct = new WindowContainerTransaction(); // final expanded bounds to be inherited from the parent - wct.setBounds(pipTaskToken, null); - wct.setWindowingMode(pipTaskToken, mPipDesktopState.getOutPipWindowingMode()); - - final TaskInfo pipTaskInfo = mPipTransitionState.getPipTaskInfo(); - mDesktopPipTransitionController.ifPresent(c -> { - // In multi-activity case, windowing mode change will reparent to original host task, so - // we have to update the parent windowing mode to what is expected. - c.maybeUpdateParentInWct(wct, - pipTaskInfo.lastParentTaskIdBeforePip); - // In multi-desks case, we have to reparent the task to the root desk. - c.maybeReparentTaskToDesk(wct, pipTaskInfo.taskId); - }); - - return wct; - } - - @Nullable - private WindowContainerTransaction getRemovePipTransaction() { - WindowContainerToken pipTaskToken = mPipTransitionState.getPipTaskToken(); - if (pipTaskToken == null) { - return null; - } - WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.setBounds(pipTaskToken, null); - wct.setWindowingMode(pipTaskToken, WINDOWING_MODE_UNDEFINED); - wct.reorder(pipTaskToken, false); - - final TaskInfo pipTaskInfo = mPipTransitionState.getPipTaskInfo(); - if (PipUtils.isContentPip(pipTaskInfo)) { - // If the current PiP session was entered through content-PiP, - // then relaunch the original host task too. - wct.startTask(pipTaskInfo.launchIntoPipHostTaskId, null /* ActivityOptions */); - } + wct.setBounds(mPipTransitionState.mPipTaskToken, null); + // if we are hitting a multi-activity case + // windowing mode change will reparent to original host task + wct.setWindowingMode(mPipTransitionState.mPipTaskToken, WINDOWING_MODE_UNDEFINED); return wct; } @@ -169,34 +135,19 @@ public class PipScheduler implements PipTransitionState.PipTransitionStateChange * Schedules exit PiP via expand transition. */ public void scheduleExitPipViaExpand() { - mMainExecutor.execute(() -> { - if (!mPipTransitionState.isInPip()) return; - - final WindowContainerTransaction expandWct = getExitPipViaExpandTransaction(); - if (expandWct == null) return; - - final WindowContainerTransaction wct = new WindowContainerTransaction(); - mSplitScreenControllerOptional.ifPresent(splitScreenController -> { - int lastParentTaskId = mPipTransitionState.getPipTaskInfo() - .lastParentTaskIdBeforePip; - if (splitScreenController.isTaskInSplitScreen(lastParentTaskId)) { - splitScreenController.prepareEnterSplitScreen(wct, - null /* taskInfo */, SplitScreenConstants.SPLIT_POSITION_UNDEFINED); - } + WindowContainerTransaction wct = getExitPipViaExpandTransaction(); + if (wct != null) { + mMainExecutor.execute(() -> { + mPipTransitionController.startExitTransition(TRANSIT_EXIT_PIP, wct, + null /* destinationBounds */); }); - boolean toSplit = !wct.isEmpty(); - wct.merge(expandWct, true /* transfer */); - mPipTransitionController.startExpandTransition(wct, toSplit); - }); + } } - /** Schedules remove PiP transition. */ - public void scheduleRemovePip(boolean withFadeout) { - mMainExecutor.execute(() -> { - if (!mPipTransitionState.isInPip()) return; - mPipTransitionController.startRemoveTransition(getRemovePipTransaction(), withFadeout); - }); - } + /** + * Schedules resize PiP via double tap. + */ + public void scheduleDoubleTapToResize() {} /** * Animates resizing of the pinned stack given the duration. @@ -211,236 +162,68 @@ public class PipScheduler implements PipTransitionState.PipTransitionStateChange * @param configAtEnd true if we are delaying config updates until the transition ends. */ public void scheduleAnimateResizePip(Rect toBounds, boolean configAtEnd) { - scheduleAnimateResizePip(toBounds, configAtEnd, - PipTransition.BOUNDS_CHANGE_JUMPCUT_DURATION); - } - - /** - * Animates resizing of the pinned stack given the duration. - * - * @param configAtEnd true if we are delaying config updates until the transition ends. - * @param duration the suggested duration to run the animation; the component responsible - * for running the animator will get this as an extra. - */ - public void scheduleAnimateResizePip(Rect toBounds, boolean configAtEnd, int duration) { - WindowContainerToken pipTaskToken = mPipTransitionState.getPipTaskToken(); - if (pipTaskToken == null || !mPipTransitionState.isInPip()) { + if (mPipTransitionState.mPipTaskToken == null || !mPipTransitionState.isInPip()) { return; } WindowContainerTransaction wct = new WindowContainerTransaction(); + wct.setBounds(mPipTransitionState.mPipTaskToken, toBounds); if (configAtEnd) { - wct.deferConfigToTransitionEnd(pipTaskToken); + wct.deferConfigToTransitionEnd(mPipTransitionState.mPipTaskToken); } - wct.setBounds(pipTaskToken, toBounds); - mPipTransitionController.startPipBoundsChangeTransition(wct, duration); + mPipTransitionController.startResizeTransition(wct); } /** - * Schedules moving PiP window to another display. - * - * @param targetDisplayId the target display ID where the PiP window should be parented to. - */ - public void scheduleMoveToDisplay(int targetDisplayId, Rect pipBounds) { - WindowContainerToken pipTaskToken = mPipTransitionState.getPipTaskToken(); - DisplayAreaInfo displayAreaInfo = - mPipDesktopState.getRootTaskDisplayAreaOrganizer().getDisplayAreaInfo( - targetDisplayId); - if (pipTaskToken == null || !mPipTransitionState.isInPip() || displayAreaInfo == null) { - return; - } - - WindowContainerTransaction wct = new WindowContainerTransaction(); - WindowContainerToken displayToken = displayAreaInfo.token; - wct.setBounds(pipTaskToken, pipBounds); - wct.reparent(pipTaskToken, displayToken, /* onTop= */ true); - - mPipTransitionController.startPipBoundsChangeTransition(wct, DISPLAY_TRANSFER_DURATION_MS); - } - - /** - * Signals to Core to finish the PiP bounds change transition. + * Signals to Core to finish the PiP resize transition. * Note that we do not allow any actual WM Core changes at this point. * - * @param toBounds destination bounds used only for internal state updates - not sent to Core. + * @param configAtEnd true if we are waiting for config updates at the end of the transition. */ - public void scheduleFinishPipBoundsChange(Rect toBounds) { - // Make updates to the internal state to reflect new bounds before updating any transitions - // related state; transition state updates can trigger callbacks that use the cached bounds. - onFinishingPipBoundsChange(toBounds); - mPipTransitionController.finishTransition(); + public void scheduleFinishResizePip(boolean configAtEnd) { + SurfaceControl.Transaction tx = null; + if (configAtEnd) { + tx = new SurfaceControl.Transaction(); + tx.addTransactionCommittedListener(mMainExecutor, () -> { + mPipTransitionState.setState(PipTransitionState.CHANGED_PIP_BOUNDS); + }); + } else { + mPipTransitionState.setState(PipTransitionState.CHANGED_PIP_BOUNDS); + } + mPipTransitionController.finishTransition(tx); } /** * Directly perform a scaled matrix transformation on the leash. This will not perform any * {@link WindowContainerTransaction}. - * - * @param toBounds the bounds to transform the PiP leash to. */ public void scheduleUserResizePip(Rect toBounds) { - scheduleUserResizePip(toBounds, 0f /* degrees */, - mPipDisplayLayoutState.getDisplayId() /* focusedDisplayId */); + scheduleUserResizePip(toBounds, 0f /* degrees */); } /** * Directly perform a scaled matrix transformation on the leash. This will not perform any * {@link WindowContainerTransaction}. * - * @param toBounds the bounds to transform the PiP leash to. - * @param focusedDisplayId the display ID of where the cursor currently is. - */ - public void scheduleUserResizePip(Rect toBounds, int focusedDisplayId) { - scheduleUserResizePip(toBounds, 0f /* degrees */, focusedDisplayId); - } - - /** - * Directly perform a scaled matrix transformation on the leash. This will not perform any - * {@link WindowContainerTransaction}. - * - * @param toBounds the bounds to transform the PiP leash to. - * @param degrees the angle to rotate the bounds to. + * @param degrees the angle to rotate the bounds to. */ public void scheduleUserResizePip(Rect toBounds, float degrees) { - scheduleUserResizePip(toBounds, degrees, - mPipDisplayLayoutState.getDisplayId() /* focusedDisplayId */); - } - - /** - * Directly perform a scaled matrix transformation on the leash. This will not perform any - * {@link WindowContainerTransaction}. - * - * @param toBounds the bounds to transform the PiP leash to. - * @param degrees the angle to rotate the bounds to. - * @param focusedDisplayId the display ID of where the cursor currently is. - */ - public void scheduleUserResizePip(Rect toBounds, float degrees, int focusedDisplayId) { - if (toBounds.isEmpty() || !mPipTransitionState.isInPip()) { + if (toBounds.isEmpty()) { ProtoLog.w(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s: Attempted to user resize PIP in invalid state, aborting;" - + "toBounds=%s, mPipTransitionState=%s", - TAG, toBounds, mPipTransitionState); + "%s: Attempted to user resize PIP to empty bounds, aborting.", TAG); return; } - SurfaceControl leash = mPipTransitionState.getPinnedTaskLeash(); - final SurfaceControl.Transaction tx = mSurfaceControlTransactionFactory.getTransaction(); + SurfaceControl leash = mPipTransitionState.mPinnedTaskLeash; + final SurfaceControl.Transaction tx = new SurfaceControl.Transaction(); - mPipSurfaceTransactionHelper.setPipTransformations(leash, tx, mPipBoundsState.getBounds(), - toBounds, degrees); - // Reparent PiP leash to the display where the cursor is currently on. - if (mPipDesktopState.isDraggingPipAcrossDisplaysEnabled() - && focusedDisplayId != mLastFocusedDisplayId) { - mPipDesktopState.getRootTaskDisplayAreaOrganizer().reparentToDisplayArea( - focusedDisplayId, leash, tx); - mLastFocusedDisplayId = focusedDisplayId; - } + Matrix transformTensor = new Matrix(); + final float[] mMatrixTmp = new float[9]; + final float scale = (float) toBounds.width() / mPipBoundsState.getBounds().width(); + + transformTensor.setScale(scale, scale); + transformTensor.postTranslate(toBounds.left, toBounds.top); + transformTensor.postRotate(degrees, toBounds.centerX(), toBounds.centerY()); + + tx.setMatrix(leash, transformTensor, mMatrixTmp); tx.apply(); } - - void startOverlayFadeoutAnimation(@NonNull SurfaceControl overlayLeash, - boolean withStartDelay, @NonNull Runnable onAnimationEnd) { - mOverlayFadeoutAnimator = mPipAlphaAnimatorSupplier.get(mContext, - mPipSurfaceTransactionHelper, overlayLeash, - null /* startTx */, null /* finishTx */, PipAlphaAnimator.FADE_OUT); - mOverlayFadeoutAnimator.setDuration(CONTENT_OVERLAY_FADE_OUT_DURATION_MS); - mOverlayFadeoutAnimator.setStartDelay(withStartDelay - ? EXTRA_CONTENT_OVERLAY_FADE_OUT_DELAY_MS : 0); - mOverlayFadeoutAnimator.setAnimationEndCallback(() -> { - onAnimationEnd.run(); - mOverlayFadeoutAnimator = null; - }); - mOverlayFadeoutAnimator.start(); - } - - void setUpdateMovementBoundsRunnable(@Nullable Runnable updateMovementBoundsRunnable) { - mUpdateMovementBoundsRunnable = updateMovementBoundsRunnable; - } - - private void maybeUpdateMovementBounds() { - if (mUpdateMovementBoundsRunnable != null) { - mUpdateMovementBoundsRunnable.run(); - } - } - - private void onFinishingPipBoundsChange(Rect newBounds) { - if (mPipBoundsState.getBounds().equals(newBounds)) { - return; - } - - // Take a screenshot of PiP and fade it out after resize is finished if seamless resize - // is off and if the PiP size is changing. - boolean animateCrossFadeResize = !getPipParams().isSeamlessResizeEnabled() - && !(mPipBoundsState.getBounds().width() == newBounds.width() - && mPipBoundsState.getBounds().height() == newBounds.height()); - if (animateCrossFadeResize) { - final Rect crop = new Rect(newBounds); - crop.offsetTo(0, 0); - // Note: Put this at layer=MAX_VALUE-2 since the input consumer for PIP is placed at - // MAX_VALUE-1 - final SurfaceControl snapshotSurface = ScreenshotUtils.takeScreenshot( - mSurfaceControlTransactionFactory.getTransaction(), - mPipTransitionState.getPinnedTaskLeash(), crop, Integer.MAX_VALUE - 2); - startOverlayFadeoutAnimation(snapshotSurface, false /* withStartDelay */, () -> { - mSurfaceControlTransactionFactory.getTransaction().remove(snapshotSurface).apply(); - }); - } - - mPipBoundsState.setBounds(newBounds); - maybeUpdateMovementBounds(); - } - - @VisibleForTesting - void setSurfaceControlTransactionFactory( - @NonNull PipSurfaceTransactionHelper.SurfaceControlTransactionFactory factory) { - mSurfaceControlTransactionFactory = factory; - } - - @Override - public void onPipTransitionStateChanged(@PipTransitionState.TransitionState int oldState, - @PipTransitionState.TransitionState int newState, - @android.annotation.Nullable Bundle extra) { - switch (newState) { - case PipTransitionState.EXITING_PIP: - case PipTransitionState.SCHEDULED_BOUNDS_CHANGE: - if (mOverlayFadeoutAnimator != null && mOverlayFadeoutAnimator.isStarted()) { - mOverlayFadeoutAnimator.end(); - mOverlayFadeoutAnimator = null; - } - break; - } - } - - @VisibleForTesting - interface PipAlphaAnimatorSupplier { - PipAlphaAnimator get(@NonNull Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, - SurfaceControl leash, - SurfaceControl.Transaction startTransaction, - SurfaceControl.Transaction finishTransaction, - @PipAlphaAnimator.Fade int direction); - } - - @VisibleForTesting - void setPipAlphaAnimatorSupplier(@NonNull PipAlphaAnimatorSupplier supplier) { - mPipAlphaAnimatorSupplier = supplier; - } - - @VisibleForTesting - void setOverlayFadeoutAnimator(@NonNull PipAlphaAnimator animator) { - mOverlayFadeoutAnimator = animator; - } - - @VisibleForTesting - @Nullable - PipAlphaAnimator getOverlayFadeoutAnimator() { - return mOverlayFadeoutAnimator; - } - - void setPipParamsSupplier(@NonNull Supplier<PictureInPictureParams> pipParamsSupplier) { - mPipParamsSupplier = pipParamsSupplier; - } - - @NonNull - private PictureInPictureParams getPipParams() { - if (mPipParamsSupplier == null) return new PictureInPictureParams.Builder().build(); - return mPipParamsSupplier.get(); - } } diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipTouchHandler.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipTouchHandler.java index 19ea69d210..56a465a488 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipTouchHandler.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipTouchHandler.java @@ -23,6 +23,7 @@ import static com.android.internal.config.sysui.SystemUiDeviceConfigFlags.PIP_ST import static com.android.wm.shell.common.pip.PipBoundsState.STASH_TYPE_LEFT; import static com.android.wm.shell.common.pip.PipBoundsState.STASH_TYPE_NONE; import static com.android.wm.shell.common.pip.PipBoundsState.STASH_TYPE_RIGHT; +import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTION_TO_PIP; import static com.android.wm.shell.pip2.phone.PhonePipMenuController.MENU_STATE_FULL; import static com.android.wm.shell.pip2.phone.PhonePipMenuController.MENU_STATE_NONE; import static com.android.wm.shell.pip2.phone.PipMenuView.ANIM_TYPE_NONE; @@ -33,15 +34,13 @@ import android.annotation.Nullable; import android.annotation.SuppressLint; import android.content.Context; import android.content.res.Resources; +import android.graphics.Point; import android.graphics.PointF; import android.graphics.Rect; -import android.graphics.RectF; import android.os.Bundle; -import android.os.SystemProperties; import android.provider.DeviceConfig; import android.util.Size; import android.view.DisplayCutout; -import android.view.InputDevice; import android.view.InputEvent; import android.view.MotionEvent; import android.view.ViewConfiguration; @@ -52,23 +51,19 @@ import android.view.accessibility.AccessibilityNodeInfo; import android.view.accessibility.AccessibilityWindowInfo; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; -import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.FloatingContentCoordinator; -import com.android.wm.shell.common.MultiDisplayDragMoveBoundsCalculator; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; import com.android.wm.shell.common.pip.PipBoundsState; -import com.android.wm.shell.common.pip.PipDesktopState; -import com.android.wm.shell.common.pip.PipDisplayLayoutState; import com.android.wm.shell.common.pip.PipDoubleTapHelper; import com.android.wm.shell.common.pip.PipPerfHintController; import com.android.wm.shell.common.pip.PipUiEventLogger; +import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.common.pip.SizeSpecSource; -import com.android.wm.shell.pip2.PipSurfaceTransactionHelper; -import com.android.wm.shell.shared.pip.PipFlags; +import com.android.wm.shell.pip.PipAnimationController; +import com.android.wm.shell.pip.PipTransitionController; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellInit; @@ -79,44 +74,41 @@ import java.util.Optional; * Manages all the touch handling for PIP on the Phone, including moving, dismissing and expanding * the PIP. */ -public class PipTouchHandler implements PipTransitionState.PipTransitionStateChangedListener, - PipDisplayLayoutState.DisplayIdListener { +public class PipTouchHandler implements PipTransitionState.PipTransitionStateChangedListener { private static final String TAG = "PipTouchHandler"; private static final float DEFAULT_STASH_VELOCITY_THRESHOLD = 18000.f; - private static final long PIP_KEEP_CLEAR_AREAS_DELAY = - SystemProperties.getLong("persist.wm.debug.pip_keep_clear_areas_delay", 200); // Allow PIP to resize to a slightly bigger state upon touch private boolean mEnableResize; - private Context mContext; + private final Context mContext; private final ShellCommandHandler mShellCommandHandler; private final PipBoundsAlgorithm mPipBoundsAlgorithm; - private final PipDesktopState mPipDesktopState; @NonNull private final PipBoundsState mPipBoundsState; @NonNull private final PipTransitionState mPipTransitionState; @NonNull private final PipScheduler mPipScheduler; @NonNull private final SizeSpecSource mSizeSpecSource; - @NonNull private final PipDisplayLayoutState mPipDisplayLayoutState; private final PipUiEventLogger mPipUiEventLogger; - private PipDismissTargetHandler mPipDismissTargetHandler; + private final PipDismissTargetHandler mPipDismissTargetHandler; private final ShellExecutor mMainExecutor; @Nullable private final PipPerfHintController mPipPerfHintController; private PipResizeGestureHandler mPipResizeGestureHandler; - private final PipDisplayTransferHandler mPipDisplayTransferHandler; + private final PhonePipMenuController mMenuController; private final AccessibilityManager mAccessibilityManager; - private final DisplayController mDisplayController; /** * Whether PIP stash is enabled or not. When enabled, if the user flings toward the edge of the * screen, it will be shown in "stashed" mode, where PIP will only show partially. */ - @VisibleForTesting boolean mEnableStash = true; + private boolean mEnableStash = true; private float mStashVelocityThreshold; + // The reference inset bounds, used to determine the dismiss fraction + private final Rect mInsetBounds = new Rect(); + // Used to workaround an issue where the WM rotation happens before we are notified, allowing // us to send stale bounds private int mDeferResizeToNormalBoundsUntilRotation = -1; @@ -136,7 +128,7 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha private boolean mMovementWithinDismiss; // Touch state - private PipTouchState mTouchState; + private final PipTouchState mTouchState; private final FloatingContentCoordinator mFloatingContentCoordinator; private PipMotionHelper mMotionHelper; private PipTouchGesture mGesture; @@ -145,11 +137,6 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha // Temp vars private final Rect mTmpBounds = new Rect(); - // Callbacks - private final Runnable mMoveOnShelVisibilityChanged; - - private final @NonNull PipSurfaceTransactionHelper mSurfaceTransactionHelper; - /** * A listener for the PIP menu activity. */ @@ -184,7 +171,6 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha @SuppressLint("InflateParams") public PipTouchHandler(Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, ShellInit shellInit, ShellCommandHandler shellCommandHandler, PhonePipMenuController menuController, @@ -193,77 +179,54 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha @NonNull PipTransitionState pipTransitionState, @NonNull PipScheduler pipScheduler, @NonNull SizeSpecSource sizeSpecSource, - @NonNull PipDisplayLayoutState pipDisplayLayoutState, - PipDesktopState pipDesktopState, - DisplayController displayController, PipMotionHelper pipMotionHelper, FloatingContentCoordinator floatingContentCoordinator, PipUiEventLogger pipUiEventLogger, ShellExecutor mainExecutor, - Optional<PipPerfHintController> pipPerfHintControllerOptional, - PipDisplayTransferHandler pipDisplayTransferHandler) { + Optional<PipPerfHintController> pipPerfHintControllerOptional) { mContext = context; - mSurfaceTransactionHelper = pipSurfaceTransactionHelper; mShellCommandHandler = shellCommandHandler; mMainExecutor = mainExecutor; mPipPerfHintController = pipPerfHintControllerOptional.orElse(null); mAccessibilityManager = context.getSystemService(AccessibilityManager.class); mPipBoundsAlgorithm = pipBoundsAlgorithm; mPipBoundsState = pipBoundsState; - mPipDesktopState = pipDesktopState; - mDisplayController = displayController; mPipTransitionState = pipTransitionState; mPipTransitionState.addPipTransitionStateChangedListener(this::onPipTransitionStateChanged); mPipScheduler = pipScheduler; mSizeSpecSource = sizeSpecSource; - mPipDisplayLayoutState = pipDisplayLayoutState; - mPipDisplayLayoutState.addDisplayIdListener(this); mMenuController = menuController; mPipUiEventLogger = pipUiEventLogger; mFloatingContentCoordinator = floatingContentCoordinator; mMenuController.addListener(new PipMenuListener()); mGesture = new DefaultPipTouchGesture(); mMotionHelper = pipMotionHelper; - mPipDisplayTransferHandler = pipDisplayTransferHandler; - mPipScheduler.setUpdateMovementBoundsRunnable(this::updateMovementBounds); mPipDismissTargetHandler = new PipDismissTargetHandler(context, pipUiEventLogger, - mMotionHelper, mPipDisplayLayoutState, mainExecutor); + mMotionHelper, mainExecutor); mTouchState = new PipTouchState(ViewConfiguration.get(context), () -> { - mMenuController.showMenuWithPossibleDelay(MENU_STATE_FULL, - mPipBoundsState.getBounds(), true /* allowMenuTimeout */, - willResizeMenu(), - shouldShowResizeHandle()); + if (mPipBoundsState.isStashed()) { + animateToUnStashedState(); + mPipUiEventLogger.log( + PipUiEventLogger.PipUiEventEnum.PICTURE_IN_PICTURE_STASH_UNSTASHED); + mPipBoundsState.setStashed(STASH_TYPE_NONE); + } else { + mMenuController.showMenuWithPossibleDelay(MENU_STATE_FULL, + mPipBoundsState.getBounds(), true /* allowMenuTimeout */, + willResizeMenu(), + shouldShowResizeHandle()); + } }, menuController::hideMenu, mainExecutor); - mPipResizeGestureHandler = new PipResizeGestureHandler(context, mSurfaceTransactionHelper, - pipBoundsAlgorithm, - pipBoundsState, mTouchState, mPipScheduler, mPipTransitionState, pipUiEventLogger, - menuController, this::getMovementBounds, mPipDisplayLayoutState, pipDesktopState, - mainExecutor, mPipPerfHintController); - mPipBoundsState.addOnAspectRatioChangedCallback(aspectRatio -> onAspectRatioChanged()); + mPipResizeGestureHandler = new PipResizeGestureHandler(context, pipBoundsAlgorithm, + pipBoundsState, mTouchState, mPipScheduler, mPipTransitionState, + this::updateMovementBounds, pipUiEventLogger, menuController, mainExecutor, + mPipPerfHintController); + mPipBoundsState.addOnAspectRatioChangedCallback(this::updateMinMaxSize); - mMoveOnShelVisibilityChanged = () -> { - if (mIsImeShowing && mImeHeight > mShelfHeight) { - // Early bail-out if IME is visible with a larger height present; - // this should block unnecessary PiP movement since we delay checking for - // KCA triggered movement to wait for other transitions (e.g. due to IME changes). - return; - } - boolean hasUserInteracted = (mPipBoundsState.hasUserMovedPip() - || mPipBoundsState.hasUserResizedPip()); - int delta = mPipBoundsAlgorithm.getEntryDestinationBounds().top - - mPipBoundsState.getBounds().top; - - if (!mIsImeShowing && !hasUserInteracted && delta != 0) { - // If the user hasn't interacted with PiP, we respect the keep clear areas - mMotionHelper.animateToOffset(mPipBoundsState.getBounds(), delta); - } - }; - - if (PipFlags.isPip2ExperimentEnabled()) { + if (PipUtils.isPip2ExperimentEnabled()) { shellInit.addInitCallback(this::onInit, this); } } @@ -282,7 +245,7 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha mPipDismissTargetHandler.init(); mPipInputConsumer = new PipInputConsumer(WindowManagerGlobal.getWindowManagerService(), - INPUT_CONSUMER_PIP, mPipDisplayLayoutState, mMainExecutor); + INPUT_CONSUMER_PIP, mMainExecutor); mPipInputConsumer.setInputListener(this::handleTouchEvent); mPipInputConsumer.setRegistrationListener(this::onRegistrationChanged); @@ -313,6 +276,11 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha }); } + public PipTransitionController getTransitionHandler() { + // return mPipTaskOrganizer.getTransitionController(); + return null; + } + private void reloadResources() { final Resources res = mContext.getResources(); mBottomOffsetBufferPx = res.getDimensionPixelSize(R.dimen.pip_bottom_offset_buffer); @@ -320,12 +288,6 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha mPipDismissTargetHandler.updateMagneticTargetSize(); } - @Override - public void onDisplayIdChanged(@NonNull Context context) { - mContext = context; - reloadResources(); - } - void onOverlayChanged() { // onOverlayChanged is triggered upon theme change, update the dismiss target accordingly. mPipDismissTargetHandler.init(); @@ -339,10 +301,6 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha mGesture = gesture; } - @VisibleForTesting PipTouchGesture getTouchGesture() { - return mGesture; - } - void setTouchEnabled(boolean enabled) { mTouchState.setAllowTouches(enabled); } @@ -369,8 +327,17 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha mFloatingContentCoordinator.onContentRemoved(mMotionHelper); mPipResizeGestureHandler.onActivityUnpinned(); mPipInputConsumer.unregisterInputConsumer(); - mPipBoundsState.setHasUserMovedPip(false); - mPipBoundsState.setHasUserResizedPip(false); + } + + void onPinnedStackAnimationEnded( + @PipAnimationController.TransitionDirection int direction) { + // Always synchronize the motion helper bounds once PiP animations finish + mMotionHelper.synchronizePinnedStackBounds(); + updateMovementBounds(); + if (direction == TRANSITION_DIRECTION_TO_PIP) { + // Set the initial bounds as the user resize bounds. + mPipResizeGestureHandler.setUserResizeBounds(mPipBoundsState.getBounds()); + } } void onConfigurationChanged() { @@ -378,52 +345,31 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha mMotionHelper.synchronizePinnedStackBounds(); reloadResources(); - if (mPipTransitionState.isInPip()) { + /* + if (mPipTaskOrganizer.isInPip()) { // Recreate the dismiss target for the new orientation. mPipDismissTargetHandler.createOrUpdateDismissTarget(); } + */ } void onImeVisibilityChanged(boolean imeVisible, int imeHeight) { mIsImeShowing = imeVisible; mImeHeight = imeHeight; - - // Cache new movement bounds using the new potential IME height. - updateMovementBounds(); - mPipTransitionState.setOnIdlePipTransitionStateRunnable(() -> { - if (imeVisible && mPipBoundsState.getMotionBoundsState().isInMotion()) { - // Skip updating bounds now as it will be done after the animation settles - return; - } - - int delta = mPipBoundsState.getMovementBounds().bottom - - mPipBoundsState.getBounds().top; - boolean hasUserInteracted = (mPipBoundsState.hasUserMovedPip() - || mPipBoundsState.hasUserResizedPip()); - - if (!imeVisible && !hasUserInteracted) { - delta = mPipBoundsAlgorithm.getEntryDestinationBounds().top - - mPipBoundsState.getBounds().top; - } - - if ((imeVisible && delta < 0) || (!imeVisible && !hasUserInteracted)) { - // The policy is to ignore an IME disappearing if user has interacted with PiP. - // Otherwise, only offset due to an appearing IME if PiP occludes it. - mMotionHelper.animateToOffset(mPipBoundsState.getBounds(), delta); - } - }); } void onShelfVisibilityChanged(boolean shelfVisible, int shelfHeight) { mIsShelfShowing = shelfVisible; mShelfHeight = shelfHeight; + } - // We need to remove the callback even if the shelf is visible, in case it the delayed - // callback hasn't been executed yet to avoid the wrong final state. - mMainExecutor.removeCallbacks(mMoveOnShelVisibilityChanged); - - // Postpone moving in response to hide of Launcher in case there's another change - mMainExecutor.executeDelayed(mMoveOnShelVisibilityChanged, PIP_KEEP_CLEAR_AREAS_DELAY); + /** + * Called when SysUI state changed. + * + * @param isSysUiStateValid Is SysUI valid or not. + */ + public void onSystemUiStateChanged(boolean isSysUiStateValid) { + mPipResizeGestureHandler.onSystemUiStateChanged(isSysUiStateValid); } void adjustBoundsForRotation(Rect outBounds, Rect curBounds, Rect insetBounds) { @@ -479,6 +425,8 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha mPipBoundsState.getExpandedBounds(), insetBounds, expandedMovementBounds, bottomOffset); + updatePipSizeConstraints(normalBounds, aspectRatio); + // The extra offset does not really affect the movement bounds, but are applied based on the // current state (ime showing, or shelf offset) when we need to actually shift int extraOffset = Math.max( @@ -490,6 +438,7 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha mPipBoundsState.setNormalMovementBounds(normalMovementBounds); mPipBoundsState.setExpandedMovementBounds(expandedMovementBounds); mDisplayRotation = displayRotation; + mInsetBounds.set(insetBounds); updateMovementBounds(); mMovementBoundsExtraOffsets = extraOffset; @@ -503,6 +452,35 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha } } + /** + * Update the values for min/max allowed size of picture in picture window based on the aspect + * ratio. + * @param aspectRatio aspect ratio to use for the calculation of min/max size + */ + public void updateMinMaxSize(float aspectRatio) { + updatePipSizeConstraints(mPipBoundsState.getNormalBounds(), + aspectRatio); + } + + private void updatePipSizeConstraints(Rect normalBounds, + float aspectRatio) { + if (mPipResizeGestureHandler.isUsingPinchToZoom()) { + updatePinchResizeSizeConstraints(aspectRatio); + } else { + mPipResizeGestureHandler.updateMinSize(normalBounds.width(), normalBounds.height()); + mPipResizeGestureHandler.updateMaxSize(mPipBoundsState.getExpandedBounds().width(), + mPipBoundsState.getExpandedBounds().height()); + } + } + + private void updatePinchResizeSizeConstraints(float aspectRatio) { + mPipBoundsState.updateMinMaxSize(aspectRatio); + mPipResizeGestureHandler.updateMinSize(mPipBoundsState.getMinSize().x, + mPipBoundsState.getMinSize().y); + mPipResizeGestureHandler.updateMaxSize(mPipBoundsState.getMaxSize().x, + mPipBoundsState.getMaxSize().y); + } + /** * TODO Add appropriate description */ @@ -554,8 +532,8 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha return true; } + /* if ((ev.getAction() == MotionEvent.ACTION_DOWN || mTouchState.isUserInteracting()) - && isDismissTargetEnabled(ev) && mPipDismissTargetHandler.maybeConsumeMotionEvent(ev)) { // If the first touch event occurs within the magnetic field, pass the ACTION_DOWN event // to the touch state. Touch state needs a DOWN event in order to later process MOVE @@ -571,7 +549,6 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha return true; } - /* // Ignore the motion event When the entry animation is waiting to be started if (!mTouchState.isUserInteracting() && mPipTaskOrganizer.isEntryScheduled()) { ProtoLog.wtf(WM_SHELL_PICTURE_IN_PICTURE, @@ -609,9 +586,6 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha } // Fall through to clean up case MotionEvent.ACTION_CANCEL: { - if (mPipDesktopState.isDraggingPipAcrossDisplaysEnabled()) { - mPipDisplayTransferHandler.removeMirrors(); - } shouldDeliverToMenu = !mTouchState.startedDragging() && !mTouchState.isDragging(); mTouchState.reset(); break; @@ -739,35 +713,38 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha } } - private void animateToMaximizedState() { + private void animateToMaximizedState(Runnable callback) { + Rect maxMovementBounds = new Rect(); Rect maxBounds = new Rect(0, 0, mPipBoundsState.getMaxSize().x, mPipBoundsState.getMaxSize().y); - + mPipBoundsAlgorithm.getMovementBounds(maxBounds, mInsetBounds, maxMovementBounds, + mIsImeShowing ? mImeHeight : 0); mSavedSnapFraction = mMotionHelper.animateToExpandedState(maxBounds, - getMovementBounds(mPipBoundsState.getBounds()), - getMovementBounds(maxBounds), null /* callback */); + mPipBoundsState.getMovementBounds(), maxMovementBounds, + callback); } private void animateToNormalSize(Runnable callback) { // Save the current bounds as the user-resize bounds. mPipResizeGestureHandler.setUserResizeBounds(mPipBoundsState.getBounds()); - final Rect adjustedNormalBounds = getAdjustedNormalBounds(); - mSavedSnapFraction = mMotionHelper.animateToExpandedState(adjustedNormalBounds, - getMovementBounds(mPipBoundsState.getBounds()), - getMovementBounds(adjustedNormalBounds), callback /* callback */); - } - private Rect getAdjustedNormalBounds() { final Size minMenuSize = mMenuController.getEstimatedMinMenuSize(); - final Size defaultSize = mSizeSpecSource.getDefaultSize(mPipBoundsState.getAspectRatio()); - final Rect normalBounds = new Rect(0, 0, defaultSize.getWidth(), defaultSize.getHeight()); - return mPipBoundsAlgorithm.adjustNormalBoundsToFitMenu(normalBounds, minMenuSize); + final Rect normalBounds = mPipBoundsState.getNormalBounds(); + final Rect destBounds = mPipBoundsAlgorithm.adjustNormalBoundsToFitMenu(normalBounds, + minMenuSize); + Rect restoredMovementBounds = new Rect(); + mPipBoundsAlgorithm.getMovementBounds(destBounds, + mInsetBounds, restoredMovementBounds, mIsImeShowing ? mImeHeight : 0); + mSavedSnapFraction = mMotionHelper.animateToExpandedState(destBounds, + mPipBoundsState.getMovementBounds(), restoredMovementBounds, callback); } private void animateToUnexpandedState(Rect restoreBounds) { + Rect restoredMovementBounds = new Rect(); + mPipBoundsAlgorithm.getMovementBounds(restoreBounds, + mInsetBounds, restoredMovementBounds, mIsImeShowing ? mImeHeight : 0); mMotionHelper.animateToUnexpandedState(restoreBounds, mSavedSnapFraction, - getMovementBounds(restoreBounds), - getMovementBounds(mPipBoundsState.getBounds()), false /* immediate */); + restoredMovementBounds, mPipBoundsState.getMovementBounds(), false /* immediate */); mSavedSnapFraction = -1f; } @@ -775,13 +752,10 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha final Rect pipBounds = mPipBoundsState.getBounds(); final boolean onLeftEdge = pipBounds.left < mPipBoundsState.getDisplayBounds().left; final Rect unStashedBounds = new Rect(0, pipBounds.top, 0, pipBounds.bottom); - - Rect insetBounds = new Rect(); - mPipBoundsAlgorithm.getInsetBounds(insetBounds); - unStashedBounds.left = onLeftEdge ? insetBounds.left - : insetBounds.right - pipBounds.width(); - unStashedBounds.right = onLeftEdge ? insetBounds.left + pipBounds.width() - : insetBounds.right; + unStashedBounds.left = onLeftEdge ? mInsetBounds.left + : mInsetBounds.right - pipBounds.width(); + unStashedBounds.right = onLeftEdge ? mInsetBounds.left + pipBounds.width() + : mInsetBounds.right; mMotionHelper.animateToUnStashedBounds(unStashedBounds); } @@ -792,32 +766,21 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha return mMotionHelper; } - @VisibleForTesting PipResizeGestureHandler getPipResizeGestureHandler() { + @VisibleForTesting + public PipResizeGestureHandler getPipResizeGestureHandler() { return mPipResizeGestureHandler; } @VisibleForTesting - void setPipResizeGestureHandler(PipResizeGestureHandler pipResizeGestureHandler) { + public void setPipResizeGestureHandler(PipResizeGestureHandler pipResizeGestureHandler) { mPipResizeGestureHandler = pipResizeGestureHandler; } - @VisibleForTesting PipDismissTargetHandler getPipDismissTargetHandler() { - return mPipDismissTargetHandler; - } - @VisibleForTesting - void setPipDismissTargetHandler(PipDismissTargetHandler pipDismissTargetHandler) { - mPipDismissTargetHandler = pipDismissTargetHandler; - } - - @VisibleForTesting void setPipMotionHelper(PipMotionHelper pipMotionHelper) { + public void setPipMotionHelper(PipMotionHelper pipMotionHelper) { mMotionHelper = pipMotionHelper; } - @VisibleForTesting void setPipTouchState(PipTouchState pipTouchState) { - mTouchState = pipTouchState; - } - Rect getUserResizeBounds() { return mPipResizeGestureHandler.getUserResizeBounds(); } @@ -833,11 +796,9 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha * Gesture controlling normal movement of the PIP. */ private class DefaultPipTouchGesture extends PipTouchGesture { + private final Point mStartPosition = new Point(); private final PointF mDelta = new PointF(); - private final PointF mPointerPositionOnDown = new PointF(); - private int mDisplayIdOnDown; private boolean mShouldHideMenuAfterFling; - private final Rect mStartBounds = new Rect(); @Nullable private PipPerfHintController.PipHighPerfSession mPipHighPerfSession; @@ -866,13 +827,12 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha Rect bounds = getPossiblyMotionBounds(); mDelta.set(0f, 0f); - mStartBounds.set(bounds); - final PointF touchPosition = touchState.getDownTouchPosition(); - mPointerPositionOnDown.set(touchPosition.x, touchPosition.y); - mMovementWithinDismiss = touchPosition.y >= mPipBoundsState.getMovementBounds().bottom; + mStartPosition.set(bounds.left, bounds.top); + mMovementWithinDismiss = touchState.getDownTouchPosition().y + >= mPipBoundsState.getMovementBounds().bottom; mMotionHelper.setSpringingToTouch(false); - mPipDismissTargetHandler.setTaskLeash(mPipTransitionState.getPinnedTaskLeash()); - mDisplayIdOnDown = touchState.getLastTouchDisplayId(); + mPipDismissTargetHandler.setTaskLeash(mPipTransitionState.mPinnedTaskLeash); + // If the menu is still visible then just poke the menu // so that it will timeout after the user stops touching it if (mMenuState != MENU_STATE_NONE && !mPipBoundsState.isStashed()) { @@ -888,59 +848,28 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha if (touchState.startedDragging()) { mSavedSnapFraction = -1f; - if (isDismissTargetEnabled(touchState.getLatestMotionEvent())) { - mPipDismissTargetHandler.showDismissTargetMaybe(); - } + mPipDismissTargetHandler.showDismissTargetMaybe(); } if (touchState.isDragging()) { mPipBoundsState.setHasUserMovedPip(true); + + // Move the pinned stack freely + final PointF lastDelta = touchState.getLastTouchDelta(); + float lastX = mStartPosition.x + mDelta.x; + float lastY = mStartPosition.y + mDelta.y; + float left = lastX + lastDelta.x; + float top = lastY + lastDelta.y; + + // Add to the cumulative delta after bounding the position + mDelta.x += left - lastX; + mDelta.y += top - lastY; + + mTmpBounds.set(getPossiblyMotionBounds()); + mTmpBounds.offsetTo((int) left, (int) top); + mMotionHelper.movePip(mTmpBounds, true /* isDragging */); + final PointF curPos = touchState.getLastTouchPosition(); - - if (mPipDesktopState.isDraggingPipAcrossDisplaysEnabled()) { - DisplayLayout currentDisplayLayout = mDisplayController.getDisplayLayout( - touchState.getLastTouchDisplayId()); - DisplayLayout displayLayoutOnDown = mDisplayController.getDisplayLayout( - mDisplayIdOnDown); - - if (displayLayoutOnDown == null || currentDisplayLayout == null) { - ProtoLog.w(WM_SHELL_PICTURE_IN_PICTURE, - "%s: Failed to show drag mirror on connected displays because " - + "displayLayout is null", TAG); - return false; - } - - RectF globalDpPipBounds = - MultiDisplayDragMoveBoundsCalculator.calculateGlobalDpBoundsForDrag( - displayLayoutOnDown, mPointerPositionOnDown, mStartBounds, - currentDisplayLayout, curPos.x, curPos.y); - - // Create mirrors on connected displays to simulate dragging PiP across displays - mPipDisplayTransferHandler.showDragMirrorOnConnectedDisplays(globalDpPipBounds, - touchState.getLastTouchDisplayId()); - // Set PiP bounds on the focused display in display topology-aware local px - mTmpBounds.set( - MultiDisplayDragMoveBoundsCalculator.convertGlobalDpToLocalPxForRect( - globalDpPipBounds, currentDisplayLayout)); - } else { - // Move the pinned stack freely - final PointF lastDelta = touchState.getLastTouchDelta(); - float lastX = mStartBounds.left + mDelta.x; - float lastY = mStartBounds.top + mDelta.y; - float left = lastX + lastDelta.x; - float top = lastY + lastDelta.y; - - // Add to the cumulative delta after bounding the position - mDelta.x += left - lastX; - mDelta.y += top - lastY; - - mTmpBounds.set(getPossiblyMotionBounds()); - mTmpBounds.offsetTo((int) left, (int) top); - } - - mMotionHelper.movePip(mTmpBounds, true /* isDragging */, - touchState.getLastTouchDisplayId()); - if (mMovementWithinDismiss) { // Track if movement remains near the bottom edge to identify swipe to dismiss mMovementWithinDismiss = curPos.y >= mPipBoundsState.getMovementBounds().bottom; @@ -954,16 +883,12 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha public boolean onUp(PipTouchState touchState) { mPipDismissTargetHandler.hideDismissTargetMaybe(); mPipDismissTargetHandler.setTaskLeash(null); - if (mPipDesktopState.isDraggingPipAcrossDisplaysEnabled()) { - mPipDisplayTransferHandler.removeMirrors(); - } if (!touchState.isUserInteracting()) { return false; } final PointF vel = touchState.getVelocity(); - int displayIdOnUp = touchState.getLastTouchDisplayId(); if (touchState.isDragging()) { if (mMenuState != MENU_STATE_NONE) { @@ -977,8 +902,9 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha // Reset the touch state on up before the fling settles mTouchState.reset(); - if (mEnableStash && shouldStash(vel, getPossiblyMotionBounds(), displayIdOnUp)) { - mMotionHelper.stashToEdge(vel.x, vel.y, null /* endAction */); + if (mEnableStash && shouldStash(vel, getPossiblyMotionBounds())) { + // mMotionHelper.stashToEdge(vel.x, vel.y, + // this::stashEndAction /* endAction */); } else { if (mPipBoundsState.isStashed()) { // Reset stashed state if previously stashed @@ -986,40 +912,35 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha PipUiEventLogger.PipUiEventEnum.PICTURE_IN_PICTURE_STASH_UNSTASHED); mPipBoundsState.setStashed(STASH_TYPE_NONE); } - - if (mPipDesktopState.isDraggingPipAcrossDisplaysEnabled() - && mDisplayIdOnDown != displayIdOnUp) { - mPipDisplayTransferHandler.scheduleMovePipToDisplay(mDisplayIdOnDown, - displayIdOnUp, getPossiblyMotionBounds()); - } else { - mMotionHelper.flingToSnapTarget(vel.x, vel.y, - this::flingEndAction /* endAction */); - } + mMotionHelper.flingToSnapTarget(vel.x, vel.y, + this::flingEndAction /* endAction */); } } else if (mTouchState.isDoubleTap() && !mPipBoundsState.isStashed() && mMenuState != MENU_STATE_FULL) { // If using pinch to zoom, double-tap functions as resizing between max/min size if (mPipResizeGestureHandler.isUsingPinchToZoom()) { + final boolean toExpand = mPipBoundsState.getBounds().width() + < mPipBoundsState.getMaxSize().x + && mPipBoundsState.getBounds().height() + < mPipBoundsState.getMaxSize().y; if (mMenuController.isMenuVisible()) { mMenuController.hideMenu(ANIM_TYPE_NONE, false /* resize */); } // the size to toggle to after a double tap - mPipBoundsState.setNormalBounds(getAdjustedNormalBounds()); int nextSize = PipDoubleTapHelper .nextSizeSpec(mPipBoundsState, getUserResizeBounds()); // actually toggle to the size chosen if (nextSize == PipDoubleTapHelper.SIZE_SPEC_MAX) { mPipResizeGestureHandler.setUserResizeBounds(mPipBoundsState.getBounds()); - animateToMaximizedState(); + animateToMaximizedState(null); } else if (nextSize == PipDoubleTapHelper.SIZE_SPEC_DEFAULT) { mPipResizeGestureHandler.setUserResizeBounds(mPipBoundsState.getBounds()); animateToNormalSize(null); } else { animateToUnexpandedState(getUserResizeBounds()); } - mPipBoundsState.setHasUserResizedPip(true); } else { // Expand to fullscreen if this is a double tap // the PiP should be frozen until the transition ends @@ -1051,6 +972,21 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha return true; } + private void stashEndAction() { + if (mPipBoundsState.getBounds().left < 0 + && mPipBoundsState.getStashedState() != STASH_TYPE_LEFT) { + mPipUiEventLogger.log( + PipUiEventLogger.PipUiEventEnum.PICTURE_IN_PICTURE_STASH_LEFT); + mPipBoundsState.setStashed(STASH_TYPE_LEFT); + } else if (mPipBoundsState.getBounds().left >= 0 + && mPipBoundsState.getStashedState() != STASH_TYPE_RIGHT) { + mPipUiEventLogger.log( + PipUiEventLogger.PipUiEventEnum.PICTURE_IN_PICTURE_STASH_RIGHT); + mPipBoundsState.setStashed(STASH_TYPE_RIGHT); + } + mMenuController.hideMenu(); + } + private void flingEndAction() { if (mShouldHideMenuAfterFling) { // If the menu is not visible, then we can still be showing the activity for the @@ -1059,7 +995,7 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha } } - private boolean shouldStash(PointF vel, Rect motionBounds, int displayIdOnUp) { + private boolean shouldStash(PointF vel, Rect motionBounds) { final boolean flingToLeft = vel.x < -mStashVelocityThreshold; final boolean flingToRight = vel.x > mStashVelocityThreshold; final int offset = motionBounds.width() / 2; @@ -1093,44 +1029,23 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha // PIP into stashed mode. final boolean stashFromDroppingOnEdge = droppingOnLeft || droppingOnRight; - // If dragging PiP across displays is allowed, then ensure that stashing only occurs - // when no drag mirrors of the window are shown, and the display ID on down and up are - // the same, meaning that we don't allow stashing while moving PiP across displays - return (stashFromFlingToEdge || stashFromDroppingOnEdge) - && !mPipDisplayTransferHandler.isMirrorShown() - && mDisplayIdOnDown == displayIdOnUp; + return stashFromFlingToEdge || stashFromDroppingOnEdge; } } - private boolean isDismissTargetEnabled(MotionEvent ev) { - // Only allow dismiss target to be shown and enabled on touch screen and stylus input - return !mPipDesktopState.isDraggingPipAcrossDisplaysEnabled() - || ev.getSource() == InputDevice.SOURCE_TOUCHSCREEN - || ev.getSource() == InputDevice.SOURCE_STYLUS; - } - /** * Updates the current movement bounds based on whether the menu is currently visible and * resized. */ - void updateMovementBounds() { - Rect insetBounds = new Rect(); - mPipBoundsState.setImeVisibility(mIsImeShowing, mIsImeShowing ? mImeHeight : 0); - mPipBoundsAlgorithm.getInsetBounds(insetBounds); + private void updateMovementBounds() { mPipBoundsAlgorithm.getMovementBounds(mPipBoundsState.getBounds(), - insetBounds, mPipBoundsState.getMovementBounds(), mIsImeShowing ? mImeHeight : 0); + mInsetBounds, mPipBoundsState.getMovementBounds(), mIsImeShowing ? mImeHeight : 0); mMotionHelper.onMovementBoundsChanged(); - - if (mPipResizeGestureHandler.getUserResizeBounds().isEmpty()) { - mPipResizeGestureHandler.setUserResizeBounds(getAdjustedNormalBounds()); - } } private Rect getMovementBounds(Rect curBounds) { Rect movementBounds = new Rect(); - Rect insetBounds = new Rect(); - mPipBoundsAlgorithm.getInsetBounds(insetBounds); - mPipBoundsAlgorithm.getMovementBounds(curBounds, insetBounds, + mPipBoundsAlgorithm.getMovementBounds(curBounds, mInsetBounds, movementBounds, mIsImeShowing ? mImeHeight : 0); return movementBounds; } @@ -1175,9 +1090,7 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha switch (newState) { case PipTransitionState.ENTERED_PIP: onActivityPinned(); - updateMovementBounds(); mTouchState.setAllowInputEvents(true); - mTouchState.reset(); break; case PipTransitionState.EXITED_PIP: mTouchState.setAllowInputEvents(false); @@ -1188,7 +1101,6 @@ public class PipTouchHandler implements PipTransitionState.PipTransitionStateCha break; case PipTransitionState.CHANGED_PIP_BOUNDS: mTouchState.setAllowInputEvents(true); - mTouchState.reset(); break; } } diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipTouchState.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipTouchState.java index 3139b3eea6..d093f1e5cc 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipTouchState.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipTouchState.java @@ -23,7 +23,7 @@ import android.view.VelocityTracker; import android.view.ViewConfiguration; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.protolog.ShellProtoLogGroup; @@ -54,7 +54,6 @@ public class PipTouchState { private final PointF mLastTouch = new PointF(); private final PointF mLastDelta = new PointF(); private final PointF mVelocity = new PointF(); - private MotionEvent mLatestMotionEvent; private boolean mAllowTouches = true; // Set to false to block both PipTouchHandler and PipResizeGestureHandler's input processing @@ -120,7 +119,6 @@ public class PipTouchState { initOrResetVelocityTracker(); addMovementToVelocityTracker(ev); - mLatestMotionEvent = ev; mActivePointerId = ev.getPointerId(0); if (DEBUG) { ProtoLog.e(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, @@ -249,13 +247,6 @@ public class PipTouchState { return mLastTouch; } - /** - * @return the motion event of the latest touch event. - */ - public MotionEvent getLatestMotionEvent() { - return mLatestMotionEvent; - } - /** * @return the movement delta between the last handled touch event and the previous touch * position. @@ -428,7 +419,6 @@ public class PipTouchState { pw.println(innerPrefix + "mLastTouch=" + mLastTouch); pw.println(innerPrefix + "mLastDelta=" + mLastDelta); pw.println(innerPrefix + "mVelocity=" + mVelocity); - pw.println(innerPrefix + "mLatestMotionEvent=" + mLatestMotionEvent); pw.println(innerPrefix + "mIsUserInteracting=" + mIsUserInteracting); pw.println(innerPrefix + "mIsDragging=" + mIsDragging); pw.println(innerPrefix + "mStartedDragging=" + mStartedDragging); diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipTransition.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipTransition.java index d582a87076..57dc5f92b2 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipTransition.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipTransition.java @@ -16,46 +16,27 @@ package com.android.wm.shell.pip2.phone; -import static android.app.WindowConfiguration.ROTATION_UNDEFINED; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; -import static android.view.Surface.ROTATION_0; -import static android.view.Surface.ROTATION_270; -import static android.view.Surface.ROTATION_90; -import static android.view.WindowManager.TRANSIT_CHANGE; import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManager.TRANSIT_OPEN; import static android.view.WindowManager.TRANSIT_PIP; import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.view.WindowManager.TRANSIT_TO_FRONT; -import static com.android.wm.shell.pip2.phone.transition.PipTransitionUtils.getChangeByToken; -import static com.android.wm.shell.pip2.phone.transition.PipTransitionUtils.getFixedRotationDelta; -import static com.android.wm.shell.pip2.phone.transition.PipTransitionUtils.getLeash; -import static com.android.wm.shell.pip2.phone.transition.PipTransitionUtils.getPipChange; -import static com.android.wm.shell.pip2.phone.transition.PipTransitionUtils.getPipParams; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE; import static com.android.wm.shell.transition.Transitions.TRANSIT_EXIT_PIP; -import static com.android.wm.shell.transition.Transitions.TRANSIT_EXIT_PIP_TO_SPLIT; -import static com.android.wm.shell.transition.Transitions.TRANSIT_PIP_BOUNDS_CHANGE; -import static com.android.wm.shell.transition.Transitions.TRANSIT_REMOVE_PIP; -import static com.android.wm.shell.transition.Transitions.transitTypeToString; +import static com.android.wm.shell.transition.Transitions.TRANSIT_RESIZE_PIP; +import android.animation.Animator; +import android.animation.AnimatorListenerAdapter; import android.animation.ValueAnimator; import android.annotation.NonNull; import android.app.ActivityManager; import android.app.PictureInPictureParams; -import android.app.TaskInfo; import android.content.Context; -import android.graphics.Matrix; -import android.graphics.Point; -import android.graphics.PointF; import android.graphics.Rect; import android.os.Bundle; -import android.os.Debug; import android.os.IBinder; -import android.util.Log; import android.view.SurfaceControl; -import android.view.WindowManager; import android.window.TransitionInfo; import android.window.TransitionRequestInfo; import android.window.WindowContainerToken; @@ -63,73 +44,50 @@ import android.window.WindowContainerTransaction; import androidx.annotation.Nullable; -import com.android.internal.protolog.ProtoLog; import com.android.internal.util.Preconditions; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.common.ComponentUtils; -import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; import com.android.wm.shell.common.pip.PipBoundsState; -import com.android.wm.shell.common.pip.PipDesktopState; -import com.android.wm.shell.common.pip.PipDisplayLayoutState; import com.android.wm.shell.common.pip.PipMenuController; import com.android.wm.shell.common.pip.PipUtils; -import com.android.wm.shell.desktopmode.DesktopPipTransitionController; +import com.android.wm.shell.pip.PipContentOverlay; import com.android.wm.shell.pip.PipTransitionController; -import com.android.wm.shell.pip2.PipSurfaceTransactionHelper; import com.android.wm.shell.pip2.animation.PipAlphaAnimator; -import com.android.wm.shell.pip2.animation.PipEnterAnimator; -import com.android.wm.shell.pip2.phone.transition.ContentPipHandler; -import com.android.wm.shell.pip2.phone.transition.PipDisplayChangeObserver; -import com.android.wm.shell.pip2.phone.transition.PipExpandHandler; -import com.android.wm.shell.pip2.phone.transition.PipTransitionUtils; -import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.pip.PipFlags; -import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; -import java.util.Optional; - /** * Implementation of transitions for PiP on phone. */ public class PipTransition extends PipTransitionController implements - PipTransitionState.PipTransitionStateChangedListener, - PipDisplayLayoutState.DisplayIdListener { + PipTransitionState.PipTransitionStateChangedListener { private static final String TAG = PipTransition.class.getSimpleName(); // Used when for ENTERING_PIP state update. + private static final String PIP_TASK_TOKEN = "pip_task_token"; private static final String PIP_TASK_LEASH = "pip_task_leash"; - private static final String PIP_TASK_INFO = "pip_task_info"; // Used for PiP CHANGING_BOUNDS state update. static final String PIP_START_TX = "pip_start_tx"; static final String PIP_FINISH_TX = "pip_finish_tx"; static final String PIP_DESTINATION_BOUNDS = "pip_dest_bounds"; - static final String ANIMATING_BOUNDS_CHANGE_DURATION = - "animating_bounds_change_duration"; - static final int BOUNDS_CHANGE_JUMPCUT_DURATION = 0; + + /** + * The fixed start delay in ms when fading out the content overlay from bounds animation. + * The fadeout animation is guaranteed to start after the client has drawn under the new config. + */ + private static final int CONTENT_OVERLAY_FADE_OUT_DELAY_MS = 400; // // Dependencies // - private Context mContext; - private final PipTaskListener mPipTaskListener; + private final Context mContext; private final PipScheduler mPipScheduler; private final PipTransitionState mPipTransitionState; - private final PipDisplayLayoutState mPipDisplayLayoutState; - private final DisplayController mDisplayController; - private final Optional<SplitScreenController> mSplitScreenControllerOptional; - private final PipSurfaceTransactionHelper mPipSurfaceTransactionHelper; - private final PipDesktopState mPipDesktopState; - private final Optional<DesktopPipTransitionController> mDesktopPipTransitionController; - private final PipInteractionHandler mPipInteractionHandler; // - // Transition caches + // Transition tokens // @Nullable @@ -137,143 +95,77 @@ public class PipTransition extends PipTransitionController implements @Nullable private IBinder mExitViaExpandTransition; @Nullable - private IBinder mBoundsChangeTransition; - private int mBoundsChangeDuration = BOUNDS_CHANGE_JUMPCUT_DURATION; - private boolean mPendingRemoveWithFadeout; - + private IBinder mResizeTransition; // // Internal state and relevant cached info // - private final PipExpandHandler mExpandHandler; - private final ContentPipHandler mContentPipHandler; - private final PipDisplayChangeObserver mPipDisplayChangeObserver; + @Nullable + private WindowContainerToken mPipTaskToken; + @Nullable + private SurfaceControl mPipLeash; + @Nullable private Transitions.TransitionFinishCallback mFinishCallback; - private ValueAnimator mTransitionAnimator; - - private @AnimationType int mEnterAnimationType = ANIM_TYPE_BOUNDS; - public PipTransition( Context context, - @NonNull PipSurfaceTransactionHelper pipSurfaceTransactionHelper, @NonNull ShellInit shellInit, @NonNull ShellTaskOrganizer shellTaskOrganizer, @NonNull Transitions transitions, PipBoundsState pipBoundsState, PipMenuController pipMenuController, PipBoundsAlgorithm pipBoundsAlgorithm, - PipTaskListener pipTaskListener, PipScheduler pipScheduler, - PipTransitionState pipTransitionState, - PipDisplayLayoutState pipDisplayLayoutState, - PipUiStateChangeController pipUiStateChangeController, - DisplayController displayController, - Optional<SplitScreenController> splitScreenControllerOptional, - PipDesktopState pipDesktopState, - Optional<DesktopPipTransitionController> desktopPipTransitionController, - PipInteractionHandler pipInteractionHandler) { + PipTransitionState pipTransitionState) { super(shellInit, shellTaskOrganizer, transitions, pipBoundsState, pipMenuController, pipBoundsAlgorithm); mContext = context; - mPipTaskListener = pipTaskListener; mPipScheduler = pipScheduler; mPipScheduler.setPipTransitionController(this); mPipTransitionState = pipTransitionState; mPipTransitionState.addPipTransitionStateChangedListener(this); - mPipDisplayLayoutState = pipDisplayLayoutState; - mPipDisplayLayoutState.addDisplayIdListener(this); - mDisplayController = displayController; - mSplitScreenControllerOptional = splitScreenControllerOptional; - mPipSurfaceTransactionHelper = pipSurfaceTransactionHelper; - mPipDesktopState = pipDesktopState; - mDesktopPipTransitionController = desktopPipTransitionController; - mPipInteractionHandler = pipInteractionHandler; - - mExpandHandler = new PipExpandHandler(mContext, mPipSurfaceTransactionHelper, - pipBoundsState, pipBoundsAlgorithm, - pipTransitionState, pipDisplayLayoutState, pipDesktopState, pipInteractionHandler, - splitScreenControllerOptional); - mContentPipHandler = new ContentPipHandler(mContext, mPipSurfaceTransactionHelper, - pipTransitionState); - mPipDisplayChangeObserver = new PipDisplayChangeObserver(pipTransitionState, - pipBoundsState); } @Override protected void onInit() { - if (PipFlags.isPip2ExperimentEnabled()) { + if (PipUtils.isPip2ExperimentEnabled()) { mTransitions.addHandler(this); - mTransitions.registerObserver(mPipDisplayChangeObserver); } } - @Override - public void onDisplayIdChanged(@NonNull Context context) { - mContext = context; - mExpandHandler.onDisplayIdChanged(context); - } - - @Override - protected boolean isInSwipePipToHomeTransition() { - return mPipTransitionState.isInSwipePipToHomeTransition(); - } - // // Transition collection stage lifecycle hooks // @Override - public void startExpandTransition(WindowContainerTransaction wct, boolean toSplit) { - if (wct == null) return; - mPipTransitionState.setState(PipTransitionState.EXITING_PIP); - mExitViaExpandTransition = mTransitions.startTransition(toSplit ? TRANSIT_EXIT_PIP_TO_SPLIT - : TRANSIT_EXIT_PIP, wct, this); + public void startExitTransition(int type, WindowContainerTransaction out, + @Nullable Rect destinationBounds) { + if (out == null) { + return; + } + IBinder transition = mTransitions.startTransition(type, out, this); + if (type == TRANSIT_EXIT_PIP) { + mExitViaExpandTransition = transition; + } } @Override - public void startRemoveTransition(WindowContainerTransaction wct, boolean withFadeout) { - if (wct == null) return; - mPipTransitionState.setState(PipTransitionState.EXITING_PIP); - mPendingRemoveWithFadeout = withFadeout; - mTransitions.startTransition(TRANSIT_REMOVE_PIP, wct, this); - } - - @Override - public void startPipBoundsChangeTransition(WindowContainerTransaction wct, int duration) { + public void startResizeTransition(WindowContainerTransaction wct) { if (wct == null) { return; } - mBoundsChangeTransition = mTransitions.startTransition(TRANSIT_PIP_BOUNDS_CHANGE, wct, - this); - mBoundsChangeDuration = duration; + mResizeTransition = mTransitions.startTransition(TRANSIT_RESIZE_PIP, wct, this); } @Nullable @Override public WindowContainerTransaction handleRequest(@NonNull IBinder transition, @NonNull TransitionRequestInfo request) { - if (mPipTransitionState.getState() == PipTransitionState.SCHEDULED_ENTER_PIP) { - // An enter PiP transition has already been scheduled and is waiting to be played. - return null; - } if (isAutoEnterInButtonNavigation(request) || isEnterPictureInPictureModeRequest(request)) { mEnterTransition = transition; - mPipTransitionState.setState(PipTransitionState.SCHEDULED_ENTER_PIP); - final WindowContainerTransaction wct = getEnterPipTransaction(transition, - request.getPipChange()); - - mDesktopPipTransitionController.ifPresent( - desktopPipTransitionController -> - desktopPipTransitionController.handlePipTransition( - wct, - transition, - request.getPipChange().getTaskInfo() - ) - ); - return wct; + return getEnterPipTransaction(transition, request); } return null; } @@ -282,10 +174,8 @@ public class PipTransition extends PipTransitionController implements public void augmentRequest(@NonNull IBinder transition, @NonNull TransitionRequestInfo request, @NonNull WindowContainerTransaction outWct) { if (isAutoEnterInButtonNavigation(request) || isEnterPictureInPictureModeRequest(request)) { - outWct.merge(getEnterPipTransaction(transition, request.getPipChange()), - true /* transfer */); + outWct.merge(getEnterPipTransaction(transition, request), true /* transfer */); mEnterTransition = transition; - mPipTransitionState.setState(PipTransitionState.SCHEDULED_ENTER_PIP); } } @@ -295,24 +185,12 @@ public class PipTransition extends PipTransitionController implements @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - if (info.getType() == TRANSIT_EXIT_PIP) { - end(); - } - mExpandHandler.mergeAnimation(transition, info, startT, finishT, mergeTarget, - finishCallback); - } + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, + @NonNull Transitions.TransitionFinishCallback finishCallback) {} @Override public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, - @Nullable SurfaceControl.Transaction finishT) { - if ((transition == mBoundsChangeTransition || transition == mEnterTransition) && aborted) { - onTransitionAborted(); - } - } + @Nullable SurfaceControl.Transaction finishT) {} @Override public boolean startAnimation(@NonNull IBinder transition, @@ -329,158 +207,45 @@ public class PipTransition extends PipTransitionController implements // If there is no PiP change, exit this transition handler and potentially try others. if (pipChange == null) return false; - // Other targets might have default transforms applied that are not relevant when - // playing PiP transitions, so reset those transforms if needed. - prepareOtherTargetTransforms(info, startTransaction, finishTransaction); - - // This PiP transition might have caused a previous PiP to be dismissed. If so, we need - // to clean up the PiP state. - cleanUpPrevPipIfPresent(info, startTransaction, finishTransaction); - - // Update the PipTransitionState while supplying the PiP leash and token to be cached. Bundle extra = new Bundle(); + extra.putParcelable(PIP_TASK_TOKEN, pipChange.getContainer()); extra.putParcelable(PIP_TASK_LEASH, pipChange.getLeash()); - extra.putParcelable(PIP_TASK_INFO, pipChange.getTaskInfo()); mPipTransitionState.setState(PipTransitionState.ENTERING_PIP, extra); - if (isInSwipePipToHomeTransition()) { + if (mPipTransitionState.isInSwipePipToHomeTransition()) { // If this is the second transition as a part of swipe PiP to home cuj, // handle this transition as a special case with no-op animation. return handleSwipePipToHomeTransition(info, startTransaction, finishTransaction, finishCallback); } - if (mContentPipHandler.startAnimation(transition, info, - startTransaction, finishTransaction, finishCallback)) { - return true; - } if (isLegacyEnter(info)) { // If this is a legacy-enter-pip (auto-enter is off and PiP activity went to pause), // then we should run an ALPHA type (cross-fade) animation. return startAlphaTypeEnterAnimation(info, startTransaction, finishTransaction, finishCallback); } - - TransitionInfo.Change pipActivityChange = PipTransitionUtils - .getDeferConfigActivityChange(info, pipChange.getTaskInfo().getToken()); - if (pipActivityChange == null) { - // Legacy-enter and swipe-pip-to-home filters did not resolve a scheduled PiP entry. - // Bounds-type enter animation is the last resort, and it requires a config-at-end - // activity amongst the list of changes. If no such change, something went wrong. - Log.wtf(TAG, String.format(""" - PipTransition.startAnimation didn't handle a scheduled PiP entry - transitionInfo=%s, - callers=%s""", info, Debug.getCallers(4))); - return false; - } - return startBoundsTypeEnterAnimation(info, startTransaction, finishTransaction, finishCallback); } else if (transition == mExitViaExpandTransition) { mExitViaExpandTransition = null; - return mExpandHandler.startAnimation(transition, info, startTransaction, - finishTransaction, finishCallback); - } else if (transition == mBoundsChangeTransition) { - mBoundsChangeTransition = null; - return startBoundsChangeAnimation(info, startTransaction, finishTransaction, - finishCallback); + mPipTransitionState.setState(PipTransitionState.EXITING_PIP); + return startExpandAnimation(info, startTransaction, finishTransaction, finishCallback); + } else if (transition == mResizeTransition) { + mResizeTransition = null; + return startResizeAnimation(info, startTransaction, finishTransaction, finishCallback); } if (isRemovePipTransition(info)) { - mPipTransitionState.setState(PipTransitionState.EXITING_PIP); - return startRemoveAnimation(info, startTransaction, finishTransaction, finishCallback); - } - - if (shouldCleanUp(info)) { - ProtoLog.d(WM_SHELL_PICTURE_IN_PICTURE, - "Cleaning up previously pinned task since in a different windowing mode: %s", - mPipTransitionState); - cleanUpState(finishCallback); - return true; - } - - // For any unhandled transition, make sure the PiP surface is properly updated, - // i.e. corner and shadow radius. - syncPipSurfaceState(info, startTransaction, finishTransaction); - return false; - } - - private boolean shouldCleanUp(TransitionInfo info) { - // Clean up state if task no longer in PIP windowing mode. - TransitionInfo.Change pipChange = getChangeByToken(info, - mPipTransitionState.getPipTaskToken()); - return pipChange != null && pipChange.getTaskInfo() != null - && pipChange.getTaskInfo().getWindowingMode() != WINDOWING_MODE_PINNED; - } - - @Override - public void cleanUpState() { - cleanUpState(/* finishCallback= */ null); - } - - private void cleanUpState(@Nullable Transitions.TransitionFinishCallback finishCallback) { - mFinishCallback = finishCallback; - mPipBoundsState.setLastPipComponentName(null /* lastPipComponentName */); - mPipTransitionState.setState(PipTransitionState.EXITING_PIP); - finishTransition(); - } - - @Override - public boolean isEnteringPip(@NonNull TransitionInfo.Change change, - @WindowManager.TransitionType int transitType) { - if (change.getTaskInfo() != null - && change.getTaskInfo().getWindowingMode() == WINDOWING_MODE_PINNED) { - // TRANSIT_TO_FRONT, though uncommon with triggering PiP, should semantically also - // be allowed to animate if the task in question is pinned already - see b/308054074. - if (transitType == TRANSIT_PIP || transitType == TRANSIT_OPEN - || transitType == TRANSIT_TO_FRONT) { - return true; - } - // This can happen if the request to enter PIP happens when we are collecting for - // another transition, such as TRANSIT_CHANGE (display rotation). - if (transitType == TRANSIT_CHANGE) { - return true; - } - - // Please file a bug to handle the unexpected transition type. - android.util.Slog.e(TAG, "Found new PIP in transition with mis-matched type=" - + transitTypeToString(transitType), new Throwable()); + return removePipImmediately(info, startTransaction, finishTransaction, finishCallback); } return false; } - - @Override - public void end() { - if (mTransitionAnimator != null && mTransitionAnimator.isRunning()) { - mTransitionAnimator.end(); - mTransitionAnimator = null; - } - } - - @Override - public boolean syncPipSurfaceState(@NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction) { - final TransitionInfo.Change pipChange = getPipChange(info); - if (pipChange == null) return false; - - // add shadow and corner radii - final SurfaceControl leash = pipChange.getLeash(); - final boolean isInPip = mPipTransitionState.isInPip(); - - mPipSurfaceTransactionHelper.round(startTransaction, leash, isInPip) - .shadow(startTransaction, leash, isInPip); - mPipSurfaceTransactionHelper.round(finishTransaction, leash, isInPip) - .shadow(finishTransaction, leash, isInPip); - - return true; - } - // // Animation schedulers and entry points // - private boolean startBoundsChangeAnimation(@NonNull TransitionInfo info, + private boolean startResizeAnimation(@NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull Transitions.TransitionFinishCallback finishCallback) { @@ -488,35 +253,27 @@ public class PipTransition extends PipTransitionController implements if (pipChange == null) { return false; } - mFinishCallback = finishCallback; - // We expect the PiP activity as a separate change in a config-at-end transition; - // only flings are not using config-at-end for resize bounds changes - TransitionInfo.Change pipActivityChange = PipTransitionUtils.getDeferConfigActivityChange( - info, pipChange.getTaskInfo().getToken()); - if (pipActivityChange != null) { - // Transform calculations use PiP params by default, so make sure they are null to - // default to using bounds for scaling calculations instead. - pipChange.getTaskInfo().pictureInPictureParams = null; - prepareConfigAtEndActivity(startTransaction, finishTransaction, pipChange, - pipActivityChange); - } - SurfaceControl pipLeash = pipChange.getLeash(); + + // Even though the final bounds and crop are applied with finishTransaction since + // this is a visible change, we still need to handle the app draw coming in. Snapshot + // covering app draw during collection will be removed by startTransaction. So we make + // the crop equal to the final bounds and then let the current + // animator scale the leash back to starting bounds. + // Note: animator is responsible for applying the startTx but NOT finishTx. startTransaction.setWindowCrop(pipLeash, pipChange.getEndAbsBounds().width(), pipChange.getEndAbsBounds().height()); + // TODO: b/275910498 Couple this routine with a new implementation of the PiP animator. // Classes interested in continuing the animation would subscribe to this state update - // getting info such as endBounds, startTx, and finishTx as an extra Bundle - // Once done state needs to be updated to CHANGED_PIP_BOUNDS via {@link PipScheduler#}. + // getting info such as endBounds, startTx, and finishTx as an extra Bundle once + // animators are in place. Once done state needs to be updated to CHANGED_PIP_BOUNDS. Bundle extra = new Bundle(); extra.putParcelable(PIP_START_TX, startTransaction); extra.putParcelable(PIP_FINISH_TX, finishTransaction); extra.putParcelable(PIP_DESTINATION_BOUNDS, pipChange.getEndAbsBounds()); - if (mBoundsChangeDuration > BOUNDS_CHANGE_JUMPCUT_DURATION) { - extra.putInt(ANIMATING_BOUNDS_CHANGE_DURATION, mBoundsChangeDuration); - mBoundsChangeDuration = BOUNDS_CHANGE_JUMPCUT_DURATION; - } + mFinishCallback = finishCallback; mPipTransitionState.setState(PipTransitionState.CHANGING_PIP_BOUNDS, extra); return true; } @@ -529,69 +286,80 @@ public class PipTransition extends PipTransitionController implements if (pipChange == null) { return false; } + WindowContainerToken pipTaskToken = pipChange.getContainer(); + SurfaceControl pipLeash = pipChange.getLeash(); - // We expect the PiP activity as a separate change in a config-at-end transition. - TransitionInfo.Change pipActivityChange = PipTransitionUtils.getDeferConfigActivityChange( - info, pipChange.getTaskInfo().getToken()); - if (pipActivityChange == null) { + if (pipTaskToken == null || pipLeash == null) { return false; } - mFinishCallback = finishCallback; - final SurfaceControl pipLeash = getLeash(pipChange); - final Rect destinationBounds = pipChange.getEndAbsBounds(); - final SurfaceControl swipePipToHomeOverlay = mPipTransitionState.getSwipePipToHomeOverlay(); - if (swipePipToHomeOverlay != null) { - final int overlaySize = PipAppIconOverlay.getOverlaySize( + SurfaceControl overlayLeash = mPipTransitionState.getSwipePipToHomeOverlay(); + PictureInPictureParams params = pipChange.getTaskInfo().pictureInPictureParams; + + Rect appBounds = mPipTransitionState.getSwipePipToHomeAppBounds(); + Rect destinationBounds = pipChange.getEndAbsBounds(); + + float aspectRatio = pipChange.getTaskInfo().pictureInPictureParams.getAspectRatioFloat(); + + // We fake the source rect hint when the one prvided by the app is invalid for + // the animation with an app icon overlay. + Rect animationSrcRectHint = overlayLeash == null ? params.getSourceRectHint() + : PipUtils.getEnterPipWithOverlaySrcRectHint(appBounds, aspectRatio); + + WindowContainerTransaction finishWct = new WindowContainerTransaction(); + SurfaceControl.Transaction tx = new SurfaceControl.Transaction(); + + final float scale = (float) destinationBounds.width() / animationSrcRectHint.width(); + startTransaction.setWindowCrop(pipLeash, animationSrcRectHint); + startTransaction.setPosition(pipLeash, + destinationBounds.left - animationSrcRectHint.left * scale, + destinationBounds.top - animationSrcRectHint.top * scale); + startTransaction.setScale(pipLeash, scale, scale); + + if (overlayLeash != null) { + final int overlaySize = PipContentOverlay.PipAppIconOverlay.getOverlaySize( mPipTransitionState.getSwipePipToHomeAppBounds(), destinationBounds); - // It is possible we reparent the PIP activity to a new PIP task (in multi-activity - // apps), so we should also reparent the overlay to the final PIP task. - startTransaction.reparent(swipePipToHomeOverlay, pipLeash) - .setLayer(swipePipToHomeOverlay, Integer.MAX_VALUE) - .setScale(swipePipToHomeOverlay, 1f, 1f) - .setPosition(swipePipToHomeOverlay, - (destinationBounds.width() - overlaySize) / 2f, - (destinationBounds.height() - overlaySize) / 2f); + + // Overlay needs to be adjusted once a new draw comes in resetting surface transform. + tx.setScale(overlayLeash, 1f, 1f); + tx.setPosition(overlayLeash, (destinationBounds.width() - overlaySize) / 2f, + (destinationBounds.height() - overlaySize) / 2f); } - - final int delta = getFixedRotationDelta(info, pipChange, mPipDisplayLayoutState); - if (delta != ROTATION_0) { - // Update transition target changes in place to prepare for fixed rotation. - updatePipChangesForFixedRotation(info, pipChange, pipActivityChange); - } - - // Update the src-rect-hint in params in place, to set up initial animator transform. - Rect sourceRectHint = getAdjustedSourceRectHint(info, pipChange, pipActivityChange); - final PictureInPictureParams params = getPipParams(pipChange); - params.copyOnlySet( - new PictureInPictureParams.Builder().setSourceRectHint(sourceRectHint).build()); - - // Config-at-end transitions need to have their activities transformed before starting - // the animation; this makes the buffer seem like it's been updated to final size. - prepareConfigAtEndActivity(startTransaction, finishTransaction, pipChange, - pipActivityChange); - - startTransaction.merge(finishTransaction); - PipEnterAnimator animator = new PipEnterAnimator(mContext, mPipSurfaceTransactionHelper, - pipLeash, - startTransaction, finishTransaction, destinationBounds, delta); - animator.setEnterStartState(pipChange); - animator.onEnterAnimationUpdate(1.0f /* fraction */, startTransaction); startTransaction.apply(); - if (swipePipToHomeOverlay != null) { - // fadeout the overlay if needed. - mPipScheduler.startOverlayFadeoutAnimation(swipePipToHomeOverlay, - true /* withStartDelay */, () -> { - SurfaceControl.Transaction tx = new SurfaceControl.Transaction(); - tx.remove(swipePipToHomeOverlay); - tx.apply(); - }); - } - finishTransition(); + tx.addTransactionCommittedListener(mPipScheduler.getMainExecutor(), + this::onClientDrawAtTransitionEnd); + finishWct.setBoundsChangeTransaction(pipTaskToken, tx); + + // Note that finishWct should be free of any actual WM state changes; we are using + // it for syncing with the client draw after delayed configuration changes are dispatched. + finishCallback.onTransitionFinished(finishWct.isEmpty() ? null : finishWct); return true; } + private void startOverlayFadeoutAnimation() { + ValueAnimator animator = ValueAnimator.ofFloat(1f, 0f); + animator.setDuration(CONTENT_OVERLAY_FADE_OUT_DELAY_MS); + animator.addListener(new AnimatorListenerAdapter() { + @Override + public void onAnimationEnd(Animator animation) { + super.onAnimationEnd(animation); + SurfaceControl.Transaction tx = new SurfaceControl.Transaction(); + tx.remove(mPipTransitionState.getSwipePipToHomeOverlay()); + tx.apply(); + + // We have fully completed enter-PiP animation after the overlay is gone. + mPipTransitionState.setState(PipTransitionState.ENTERED_PIP); + } + }); + animator.addUpdateListener(animation -> { + float alpha = (float) animation.getAnimatedValue(); + SurfaceControl.Transaction tx = new SurfaceControl.Transaction(); + tx.setAlpha(mPipTransitionState.getSwipePipToHomeOverlay(), alpha).apply(); + }); + animator.start(); + } + private boolean startBoundsTypeEnterAnimation(@NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @@ -600,111 +368,15 @@ public class PipTransition extends PipTransitionController implements if (pipChange == null) { return false; } + // cache the PiP task token and leash + WindowContainerToken pipTaskToken = pipChange.getContainer(); - // We expect the PiP activity as a separate change in a config-at-end transition. - TransitionInfo.Change pipActivityChange = PipTransitionUtils.getDeferConfigActivityChange( - info, pipChange.getTaskInfo().getToken()); - if (pipActivityChange == null) { - return false; - } - - // In multi-activity case, set the parent's leash to invisible while we're animating to PiP - TransitionInfo.Change parentBeforePip = pipActivityChange.getLastParent() != null - ? getChangeByToken(info, pipActivityChange.getLastParent()) : null; - if (parentBeforePip != null && TransitionUtil.isClosingMode(parentBeforePip.getMode())) { - startTransaction.setAlpha(parentBeforePip.getLeash(), 0); - } - - mFinishCallback = finishCallback; - - final SurfaceControl pipLeash = getLeash(pipChange); - final Rect startBounds = pipChange.getStartAbsBounds(); - final Rect endBounds = pipChange.getEndAbsBounds(); - final PictureInPictureParams params = getPipParams(pipChange); - final Rect adjustedSourceRectHint = getAdjustedSourceRectHint(info, pipChange, - pipActivityChange); - - final int delta = getFixedRotationDelta(info, pipChange, mPipDisplayLayoutState); - if (delta != ROTATION_0) { - // Update transition target changes in place to prepare for fixed rotation. - updatePipChangesForFixedRotation(info, pipChange, pipActivityChange); - } - - PipEnterAnimator animator = new PipEnterAnimator(mContext, mPipSurfaceTransactionHelper, - pipLeash, - startTransaction, finishTransaction, endBounds, delta); - if (PipBoundsAlgorithm.getValidSourceHintRect(params, startBounds, endBounds) == null) { - // If app provided src-rect-hint is invalid, use app icon overlay. - animator.setAppIconContentOverlay( - mContext, startBounds, endBounds, pipChange.getTaskInfo().topActivityInfo, - mPipBoundsState.getLauncherState().getAppIconSizePx()); - } - - // Update the src-rect-hint in params in place, to set up initial animator transform. - params.copyOnlySet(new PictureInPictureParams.Builder() - .setSourceRectHint(adjustedSourceRectHint).build()); - - // Config-at-end transitions need to have their activities transformed before starting - // the animation; this makes the buffer seem like it's been updated to final size. - prepareConfigAtEndActivity(startTransaction, finishTransaction, pipChange, - pipActivityChange); - - animator.setAnimationStartCallback(() -> animator.setEnterStartState(pipChange)); - animator.setAnimationEndCallback(() -> { - if (animator.getContentOverlayLeash() != null) { - mPipScheduler.startOverlayFadeoutAnimation(animator.getContentOverlayLeash(), - true /* withStartDelay */, animator::clearAppIconOverlay); - } - finishTransition(); - }); - cacheAndStartTransitionAnimator(animator); + startTransaction.apply(); + // TODO: b/275910498 Use a new implementation of the PiP animator here. + finishCallback.onTransitionFinished(null); return true; } - private void updatePipChangesForFixedRotation(TransitionInfo info, - TransitionInfo.Change outPipTaskChange, - TransitionInfo.Change outPipActivityChange) { - final TransitionInfo.Change fixedRotationChange = findFixedRotationChange(info); - final Rect endBounds = outPipTaskChange.getEndAbsBounds(); - final Rect endActivityBounds = outPipActivityChange.getEndAbsBounds(); - int startRotation = outPipTaskChange.getStartRotation(); - int endRotation = fixedRotationChange != null - ? fixedRotationChange.getEndFixedRotation() : mPipDisplayLayoutState.getRotation(); - - if (startRotation == endRotation) { - return; - } - - // This is used by display change listeners to respond properly to fixed rotation. - mPipTransitionState.setInFixedRotation(true); - - // Cache the task to activity offset to potentially restore later. - Point activityEndOffset = new Point(endActivityBounds.left - endBounds.left, - endActivityBounds.top - endBounds.top); - - // If we are running a fixed rotation bounds enter PiP animation, - // then update the display layout rotation, and recalculate the end rotation bounds. - // Update the endBounds in place, so that the PiP change is up-to-date. - mPipDisplayLayoutState.rotateTo(endRotation); - float snapFraction = mPipBoundsAlgorithm.getSnapFraction( - mPipBoundsAlgorithm.getEntryDestinationBounds()); - mPipBoundsAlgorithm.applySnapFraction(endBounds, snapFraction); - mPipBoundsState.setBounds(endBounds); - - // Display bounds were already updated to represent the final orientation, - // so we just need to readjust the origin, and perform rotation about (0, 0). - boolean isClockwise = (endRotation - startRotation) == -ROTATION_270; - Rect displayBounds = mPipDisplayLayoutState.getDisplayBounds(); - int originTranslateX = isClockwise ? 0 : -displayBounds.width(); - int originTranslateY = isClockwise ? -displayBounds.height() : 0; - endBounds.offset(originTranslateX, originTranslateY); - - // Update the activity end bounds in place as well, as this is used for transform - // calculation later. - endActivityBounds.offsetTo(endBounds.left + activityEndOffset.x, - endBounds.top + activityEndOffset.y); - } - private boolean startAlphaTypeEnterAnimation(@NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @@ -713,89 +385,46 @@ public class PipTransition extends PipTransitionController implements if (pipChange == null) { return false; } - mFinishCallback = finishCallback; - final Rect destinationBounds = pipChange.getEndAbsBounds(); - if (pipChange.getEndRotation() != ROTATION_UNDEFINED - && pipChange.getStartRotation() != pipChange.getEndRotation()) { - // If we are playing an enter PiP animation with display change collected together - // in the same transition, then PipController#onDisplayChange() must have already - // updated the PiP bounds state to reflect the final desired destination bounds. - // This might not be in the WM state yet as PiP task token might have been null then. - // WM state will be updated via a follow-up bounds change transition after. - destinationBounds.set(mPipBoundsState.getBounds()); - } - - final SurfaceControl pipLeash = mPipTransitionState.getPinnedTaskLeash(); + Rect destinationBounds = pipChange.getEndAbsBounds(); + SurfaceControl pipLeash = mPipTransitionState.mPinnedTaskLeash; Preconditions.checkNotNull(pipLeash, "Leash is null for alpha transition."); - // Note that fixed rotation is different from the same transition display change rotation; - // with fixed rotation, we expect a follow-up async rotation transition after this one. - final int delta = getFixedRotationDelta(info, pipChange, mPipDisplayLayoutState); - if (delta != ROTATION_0) { - updatePipChangesForFixedRotation(info, pipChange, - // We don't have an activity change to animate in legacy enter, - // so just use a placeholder one as the outPipActivityChange. - new TransitionInfo.Change(null /* container */, new SurfaceControl())); - } - startTransaction.setWindowCrop(pipLeash, - destinationBounds.width(), destinationBounds.height()); - if (delta != ROTATION_0) { - // In a fixed rotation case, rotate PiP leash in the old orientation to its final - // position, but keep the bounds visually invariant until async rotation changes - // the display rotation after - int normalizedRotation = delta; - if (normalizedRotation == ROTATION_270) { - normalizedRotation = -ROTATION_90; - } - Matrix transformTensor = new Matrix(); - final float[] matrixTmp = new float[9]; - transformTensor.setTranslate(destinationBounds.left, destinationBounds.top); - transformTensor.postRotate(-normalizedRotation * 90f); + // Start transition with 0 alpha at the entry bounds. + startTransaction.setPosition(pipLeash, destinationBounds.left, destinationBounds.top) + .setWindowCrop(pipLeash, destinationBounds.width(), destinationBounds.height()) + .setAlpha(pipLeash, 0f); - startTransaction.setMatrix(pipLeash, transformTensor, matrixTmp); - finishTransaction.setMatrix(pipLeash, transformTensor, matrixTmp); - } else { - startTransaction.setPosition(pipLeash, destinationBounds.left, destinationBounds.top); - finishTransaction.setPosition(pipLeash, destinationBounds.left, destinationBounds.top); - } + PipAlphaAnimator animator = new PipAlphaAnimator(mContext, pipLeash, startTransaction, + PipAlphaAnimator.FADE_IN); + animator.setAnimationEndCallback(() -> { + finishCallback.onTransitionFinished(null); + // This should update the pip transition state accordingly after we stop playing. + onClientDrawAtTransitionEnd(); + }); - PipAlphaAnimator animator = new PipAlphaAnimator(mContext, mPipSurfaceTransactionHelper, - pipLeash, startTransaction, - finishTransaction, PipAlphaAnimator.FADE_IN); - // This should update the pip transition state accordingly after we stop playing. - animator.setAnimationEndCallback(this::finishTransition); - cacheAndStartTransitionAnimator(animator); + animator.start(); return true; } - private boolean startRemoveAnimation(@NonNull TransitionInfo info, + private boolean startExpandAnimation(@NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull Transitions.TransitionFinishCallback finishCallback) { - TransitionInfo.Change pipChange = getChangeByToken(info, - mPipTransitionState.getPipTaskToken()); - mFinishCallback = finishCallback; + startTransaction.apply(); + // TODO: b/275910498 Use a new implementation of the PiP animator here. + finishCallback.onTransitionFinished(null); + mPipTransitionState.setState(PipTransitionState.EXITED_PIP); + return true; + } - if (isPipClosing(info)) { - // If PiP is removed via a close (e.g. finishing of the activity), then - // clear out the PiP cache related to that activity component (e.g. reentry state). - mPipBoundsState.setLastPipComponentName(null /* lastPipComponentName */); - } - - finishTransaction.setAlpha(pipChange.getLeash(), 0f); - if (mPendingRemoveWithFadeout) { - PipAlphaAnimator animator = new PipAlphaAnimator(mContext, mPipSurfaceTransactionHelper, - pipChange.getLeash(), - startTransaction, finishTransaction, PipAlphaAnimator.FADE_OUT); - animator.setAnimationEndCallback(this::finishTransition); - animator.start(); - } else { - // Jumpcut to a faded-out PiP if no fadeout animation was requested. - startTransaction.setAlpha(pipChange.getLeash(), 0f); - startTransaction.apply(); - finishTransition(); - } + private boolean removePipImmediately(@NonNull TransitionInfo info, + @NonNull SurfaceControl.Transaction startTransaction, + @NonNull SurfaceControl.Transaction finishTransaction, + @NonNull Transitions.TransitionFinishCallback finishCallback) { + startTransaction.apply(); + finishCallback.onTransitionFinished(null); + mPipTransitionState.setState(PipTransitionState.EXITED_PIP); return true; } @@ -803,107 +432,37 @@ public class PipTransition extends PipTransitionController implements // Various helpers to resolve transition requests and infos // - @NonNull - private Rect getAdjustedSourceRectHint(@NonNull TransitionInfo info, - @NonNull TransitionInfo.Change pipTaskChange, - @NonNull TransitionInfo.Change pipActivityChange) { - final Rect startBounds = pipTaskChange.getStartAbsBounds(); - final Rect endBounds = pipTaskChange.getEndAbsBounds(); - final PictureInPictureParams params = pipTaskChange.getTaskInfo().pictureInPictureParams; - - // Get the source-rect-hint provided by the app and check its validity; null if invalid. - final Rect sourceRectHint = PipBoundsAlgorithm.getValidSourceHintRect(params, startBounds, - endBounds); - - final Rect adjustedSourceRectHint = new Rect(); - if (sourceRectHint != null) { - adjustedSourceRectHint.set(sourceRectHint); - // If multi-activity PiP, use the parent task before PiP to retrieve display cutouts; - // then, offset the valid app provided source rect hint by the cutout insets. - // For single-activity PiP, just use the pinned task to get the cutouts instead. - TransitionInfo.Change parentBeforePip = pipActivityChange.getLastParent() != null - ? getChangeByToken(info, pipActivityChange.getLastParent()) : null; - Rect cutoutInsets = parentBeforePip != null - ? parentBeforePip.getTaskInfo().displayCutoutInsets - : pipTaskChange.getTaskInfo().displayCutoutInsets; - if (cutoutInsets != null && getFixedRotationDelta(info, pipTaskChange, - mPipDisplayLayoutState) == ROTATION_90) { - adjustedSourceRectHint.offset(cutoutInsets.left, cutoutInsets.top); - } - if (mPipDesktopState.isDesktopWindowingPipEnabled()) { - adjustedSourceRectHint.offset(-pipActivityChange.getStartAbsBounds().left, - -pipActivityChange.getStartAbsBounds().top); - } - } else { - // For non-valid app provided src-rect-hint, calculate one to crop into during - // app icon overlay animation. - float aspectRatio = mPipBoundsAlgorithm.getAspectRatioOrDefault(params); - adjustedSourceRectHint.set( - PipUtils.getPseudoSourceRectHint(startBounds, aspectRatio)); - } - return adjustedSourceRectHint; - } - - private void prepareOtherTargetTransforms(TransitionInfo info, - SurfaceControl.Transaction startTransaction, - SurfaceControl.Transaction finishTransaction) { - // For opening type transitions, if there is a change of mode TO_FRONT/OPEN, - // make sure that change has alpha of 1f, since it's init state might be set to alpha=0f - // by the Transitions framework to simplify Task opening transitions. - if (TransitionUtil.isOpeningType(info.getType())) { - for (TransitionInfo.Change change : info.getChanges()) { - if (change.getLeash() == null) continue; - if (TransitionUtil.isOpeningMode(change.getMode())) { - startTransaction.setAlpha(change.getLeash(), 1f); - } + @Nullable + private TransitionInfo.Change getPipChange(TransitionInfo info) { + for (TransitionInfo.Change change : info.getChanges()) { + if (change.getTaskInfo() != null + && change.getTaskInfo().getWindowingMode() == WINDOWING_MODE_PINNED) { + return change; } } + return null; } private WindowContainerTransaction getEnterPipTransaction(@NonNull IBinder transition, - @NonNull TransitionRequestInfo.PipChange pipChange) { + @NonNull TransitionRequestInfo request) { // cache the original task token to check for multi-activity case later - final ActivityManager.RunningTaskInfo pipTask = pipChange.getTaskInfo(); + final ActivityManager.RunningTaskInfo pipTask = request.getPipTask(); PictureInPictureParams pipParams = pipTask.pictureInPictureParams; - mPipTaskListener.setPictureInPictureParams(pipParams); mPipBoundsState.setBoundsStateForEntry(pipTask.topActivity, pipTask.topActivityInfo, pipParams, mPipBoundsAlgorithm); - // If PiP is enabled on Connected Displays, update PipDisplayLayoutState to have the correct - // display info that PiP is entering in. - if (mPipDesktopState.isConnectedDisplaysPipEnabled() - && pipTask.displayId != mPipDisplayLayoutState.getDisplayId()) { - final DisplayLayout displayLayout = mDisplayController.getDisplayLayout( - pipTask.displayId); - if (displayLayout != null) { - mPipDisplayLayoutState.setDisplayId(pipTask.displayId); - mPipDisplayLayoutState.setDisplayLayout(displayLayout); - } - } - - if (!mPipTransitionState.isInSwipePipToHomeTransition()) { - // Update the size spec in case aspect ratio is invariant, but display has changed - // since the last PiP session, or this is the first PiP session altogether. - // Skip the update if in swipe PiP to home, as this has already been done. - mPipBoundsState.updateMinMaxSize(mPipBoundsState.getAspectRatio()); - } - // calculate the entry bounds and notify core to move task to pinned with final bounds final Rect entryBounds = mPipBoundsAlgorithm.getEntryDestinationBounds(); mPipBoundsState.setBounds(entryBounds); - // Operate on the TF token in case we are dealing with AE case; this should avoid marking - // activities in other TFs as config-at-end. - WindowContainerToken token = pipChange.getTaskFragmentToken(); WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.movePipActivityToPinnedRootTask(token, entryBounds); - wct.deferConfigToTransitionEnd(token); + wct.movePipActivityToPinnedRootTask(pipTask.token, entryBounds); + wct.deferConfigToTransitionEnd(pipTask.token); return wct; } private boolean isAutoEnterInButtonNavigation(@NonNull TransitionRequestInfo requestInfo) { - final ActivityManager.RunningTaskInfo pipTask = requestInfo.getPipChange() != null - ? requestInfo.getPipChange().getTaskInfo() : null; + final ActivityManager.RunningTaskInfo pipTask = requestInfo.getPipTask(); if (pipTask == null) { return false; } @@ -911,13 +470,6 @@ public class PipTransition extends PipTransitionController implements return false; } - // Since opening a new task while in Desktop Mode always first open in Fullscreen - // until DesktopMode Shell code resolves it to Freeform, PipTransition will get a - // possibility to handle it also. In this case return false to not have it enter PiP. - if (mPipDesktopState.isPipInDesktopMode()) { - return false; - } - // Assuming auto-enter is enabled and pipTask is non-null, the TRANSIT_OPEN request type // implies that we are entering PiP in button navigation mode. This is guaranteed by // TaskFragment#startPausing()` in Core which wouldn't get called in gesture nav. @@ -931,33 +483,18 @@ public class PipTransition extends PipTransitionController implements private boolean isLegacyEnter(@NonNull TransitionInfo info) { TransitionInfo.Change pipChange = getPipChange(info); - if (pipChange != null) { - if (mEnterAnimationType == ANIM_TYPE_ALPHA) { - // If enter animation type is force overridden to an alpha type, - // treat this as legacy, and reset the animation type to default (i.e. bounds type). - setEnterAnimationType(ANIM_TYPE_BOUNDS); - return true; - } - - // #getEnterPipTransaction() always attempts to mark PiP activity as config-at-end one. - // However, the activity will only actually be marked config-at-end by Core if it is - // both isVisible and isVisibleRequested, which is when we can't run bounds animation. - // - // So we can use the absence of a config-at-end activity as a signal that we should run - // a legacy-enter PiP animation instead. - return TransitionUtil.isOpeningMode(pipChange.getMode()) - && PipTransitionUtils.getDeferConfigActivityChange( - info, pipChange.getContainer()) == null; - } - return false; + // If the only change in the changes list is a opening type PiP task, + // then this is legacy-enter PiP. + return pipChange != null && info.getChanges().size() == 1 + && (pipChange.getMode() == TRANSIT_TO_FRONT || pipChange.getMode() == TRANSIT_OPEN); } private boolean isRemovePipTransition(@NonNull TransitionInfo info) { - if (mPipTransitionState.getPipTaskToken() == null) { + if (mPipTransitionState.mPipTaskToken == null) { // PiP removal makes sense if enter-PiP has cached a valid pinned task token. return false; } - TransitionInfo.Change pipChange = info.getChange(mPipTransitionState.getPipTaskToken()); + TransitionInfo.Change pipChange = info.getChange(mPipTransitionState.mPipTaskToken); if (pipChange == null) { // Search for the PiP change by token since the windowing mode might be FULLSCREEN now. return false; @@ -965,173 +502,39 @@ public class PipTransition extends PipTransitionController implements boolean isPipMovedToBack = info.getType() == TRANSIT_TO_BACK && pipChange.getMode() == TRANSIT_TO_BACK; - // If PiP is dismissed by user (i.e. via dismiss button in PiP menu) - boolean isPipDismissed = info.getType() == TRANSIT_REMOVE_PIP - && pipChange.getMode() == TRANSIT_TO_BACK; - // PiP is being removed if the pinned task is either moved to back, closed, or dismissed. - return isPipMovedToBack || isPipClosing(info) || isPipDismissed; - } - - private boolean isPipClosing(@NonNull TransitionInfo info) { - if (mPipTransitionState.getPipTaskToken() == null) { - // PiP removal makes sense if enter-PiP has cached a valid pinned task token. - return false; - } - TransitionInfo.Change pipChange = info.getChange(mPipTransitionState.getPipTaskToken()); - TransitionInfo.Change pipActivityChange = info.getChanges().stream().filter(change -> - change.getTaskInfo() == null && change.getParent() != null - && change.getParent() == mPipTransitionState.getPipTaskToken()) - .findFirst().orElse(null); - - boolean isPipTaskClosed = pipChange != null + boolean isPipClosed = info.getType() == TRANSIT_CLOSE && pipChange.getMode() == TRANSIT_CLOSE; - boolean isPipActivityClosed = pipActivityChange != null - && pipActivityChange.getMode() == TRANSIT_CLOSE; - return isPipTaskClosed || isPipActivityClosed; - } - - private void prepareConfigAtEndActivity(@NonNull SurfaceControl.Transaction startTx, - @NonNull SurfaceControl.Transaction finishTx, - @NonNull TransitionInfo.Change pipChange, - @NonNull TransitionInfo.Change pipActivityChange) { - PointF initActivityScale = new PointF(); - PointF initActivityPos = new PointF(); - PipUtils.calcEndTransform(pipActivityChange, pipChange, initActivityScale, - initActivityPos); - if (pipActivityChange.getLeash() != null) { - startTx.setCrop(pipActivityChange.getLeash(), null); - startTx.setScale(pipActivityChange.getLeash(), initActivityScale.x, - initActivityScale.y); - startTx.setPosition(pipActivityChange.getLeash(), initActivityPos.x, - initActivityPos.y); - - finishTx.setCrop(pipActivityChange.getLeash(), null); - finishTx.setScale(pipActivityChange.getLeash(), initActivityScale.x, - initActivityScale.y); - finishTx.setPosition(pipActivityChange.getLeash(), initActivityPos.x, - initActivityPos.y); - } - } - - /** - * This is called by [startAnimation] when a enter PiP transition is received, and before - * mPipTransitionState is updated with the incoming PiP task info. If a change is found - * for the previous PiP with change TO_BACK, the previous PiP was dismissed by Core. We want to - * update the state in PipTransitionState so everything is cleaned up and also ensure the - * previous PiP is no longer visible. - */ - private void cleanUpPrevPipIfPresent(@NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTx, - @NonNull SurfaceControl.Transaction finishTx) { - TransitionInfo.Change previousPipChange = null; - TaskInfo previousPipTaskInfo = mPipTransitionState.getPipTaskInfo(); - if (previousPipTaskInfo == null) { - return; - } - - for (TransitionInfo.Change change : info.getChanges()) { - if (change.getTaskInfo() != null - && change.getTaskInfo().getTaskId() == previousPipTaskInfo.getTaskId() - && TransitionUtil.isClosingMode(change.getMode())) { - previousPipChange = change; - break; - } - } - - if (previousPipChange == null) { - return; - } - - ProtoLog.d(WM_SHELL_PICTURE_IN_PICTURE, - "cleanUpPrevPipIfPresent: Previous PiP with taskId=%d found with closing mode, " - + "clean up PiP state", - previousPipTaskInfo.getTaskId()); - - mPipTransitionState.setState(PipTransitionState.EXITING_PIP); - mPipTransitionState.setState(PipTransitionState.EXITED_PIP); - startTx.setAlpha(previousPipChange.getLeash(), 0); - finishTx.setAlpha(previousPipChange.getLeash(), 0); - } - - /** - * Sets the type of animation to run upon entering PiP. - * - * By default, {@link PipTransition} uses various signals from Transitions to figure out - * the animation type. But we should provide the ability to override this animation type to - * mixed handlers, for instance, as they can split up and modify incoming {@link TransitionInfo} - * to pass it onto multiple {@link Transitions.TransitionHandler}s. - */ - @Override - public void setEnterAnimationType(@AnimationType int type) { - mEnterAnimationType = type; - } - - void cacheAndStartTransitionAnimator(@NonNull ValueAnimator animator) { - mTransitionAnimator = animator; - mTransitionAnimator.start(); + // PiP is being removed if the pinned task is either moved to back or closed. + return isPipMovedToBack || isPipClosed; } // // Miscellaneous callbacks and listeners // - @Override - public void finishTransition() { - final int currentState = mPipTransitionState.getState(); - int nextState = PipTransitionState.UNDEFINED; - switch (currentState) { - case PipTransitionState.ENTERING_PIP: - nextState = PipTransitionState.ENTERED_PIP; - break; - case PipTransitionState.CHANGING_PIP_BOUNDS: - nextState = PipTransitionState.CHANGED_PIP_BOUNDS; - break; - case PipTransitionState.EXITING_PIP: - nextState = PipTransitionState.EXITED_PIP; - break; - } - - if (nextState == PipTransitionState.UNDEFINED) { - Log.wtf(TAG, String.format(""" - PipTransitionState resolved to an undefined state in finishTransition(). - callers=%s""", Debug.getCallers(4))); - } - - mPipTransitionState.setState(nextState); - - if (mFinishCallback != null) { - // Need to unset mFinishCallback first because onTransitionFinished can re-enter this - // handler if there is a pending PiP animation. - final Transitions.TransitionFinishCallback finishCallback = mFinishCallback; - mFinishCallback = null; - finishCallback.onTransitionFinished(null /* finishWct */); + private void onClientDrawAtTransitionEnd() { + if (mPipTransitionState.getSwipePipToHomeOverlay() != null) { + startOverlayFadeoutAnimation(); + } else if (mPipTransitionState.getState() == PipTransitionState.ENTERING_PIP) { + // If we were entering PiP (i.e. playing the animation) with a valid srcRectHint, + // and then we get a signal on client finishing its draw after the transition + // has ended, then we have fully entered PiP. + mPipTransitionState.setState(PipTransitionState.ENTERED_PIP); } } @Override - public void onTransitionAborted() { - final int currentState = mPipTransitionState.getState(); - int nextState = PipTransitionState.UNDEFINED; - switch (currentState) { - case PipTransitionState.SCHEDULED_BOUNDS_CHANGE: - nextState = PipTransitionState.CHANGED_PIP_BOUNDS; - break; - case PipTransitionState.SCHEDULED_ENTER_PIP: - if (mPipTransitionState.getPipTaskToken() != null) { - nextState = PipTransitionState.ENTERED_PIP; - } else { - nextState = PipTransitionState.EXITED_PIP; - } - break; + public void finishTransition(@Nullable SurfaceControl.Transaction tx) { + WindowContainerTransaction wct = null; + if (tx != null && mPipTransitionState.mPipTaskToken != null) { + // Outside callers can only provide a transaction to be applied with the final draw. + // So no actual WM changes can be applied for this transition after this point. + wct = new WindowContainerTransaction(); + wct.setBoundsChangeTransaction(mPipTransitionState.mPipTaskToken, tx); } - - if (nextState == PipTransitionState.UNDEFINED) { - Log.wtf(TAG, String.format(""" - PipTransitionState resolved to an undefined state in abortTransition(). - callers=%s""", Debug.getCallers(4))); + if (mFinishCallback != null) { + mFinishCallback.onTransitionFinished(wct); } - - mPipTransitionState.setState(nextState); } @Override @@ -1142,35 +545,20 @@ public class PipTransition extends PipTransitionController implements Preconditions.checkState(extra != null, "No extra bundle for " + mPipTransitionState); - mPipTransitionState.setPinnedTaskLeash(extra.getParcelable( - PIP_TASK_LEASH, SurfaceControl.class)); - mPipTransitionState.setPipTaskInfo(extra.getParcelable( - PIP_TASK_INFO, TaskInfo.class)); - boolean hasValidTokenAndLeash = mPipTransitionState.getPipTaskToken() != null - && mPipTransitionState.getPinnedTaskLeash() != null; + mPipTransitionState.mPipTaskToken = extra.getParcelable( + PIP_TASK_TOKEN, WindowContainerToken.class); + mPipTransitionState.mPinnedTaskLeash = extra.getParcelable( + PIP_TASK_LEASH, SurfaceControl.class); + boolean hasValidTokenAndLeash = mPipTransitionState.mPipTaskToken != null + && mPipTransitionState.mPinnedTaskLeash != null; Preconditions.checkState(hasValidTokenAndLeash, "Unexpected bundle for " + mPipTransitionState); break; case PipTransitionState.EXITED_PIP: - mPipTransitionState.setPinnedTaskLeash(null); - mPipTransitionState.setPipTaskInfo(null); - mPendingRemoveWithFadeout = false; + mPipTransitionState.mPipTaskToken = null; + mPipTransitionState.mPinnedTaskLeash = null; break; } } - - @Override - public boolean isPackageActiveInPip(@Nullable String packageName) { - final TaskInfo inPipTask = mPipTransitionState.getPipTaskInfo(); - return packageName != null && inPipTask != null && mPipTransitionState.isInPip() - && packageName.equals(ComponentUtils.getPackageName(inPipTask.baseIntent)); - } - - @Override - public boolean isTaskActiveInPip(int taskId) { - final TaskInfo inPipTask = mPipTransitionState.getPipTaskInfo(); - return inPipTask != null && mPipTransitionState.isInPip() - && taskId == inPipTask.getTaskId(); - } } diff --git a/wmshell/src/com/android/wm/shell/pip2/phone/PipTransitionState.java b/wmshell/src/com/android/wm/shell/pip2/phone/PipTransitionState.java index fff9d10a92..9d599caf13 100644 --- a/wmshell/src/com/android/wm/shell/pip2/phone/PipTransitionState.java +++ b/wmshell/src/com/android/wm/shell/pip2/phone/PipTransitionState.java @@ -17,25 +17,18 @@ package com.android.wm.shell.pip2.phone; import android.annotation.IntDef; -import android.app.TaskInfo; import android.graphics.Rect; import android.os.Bundle; import android.os.Handler; -import android.os.Message; import android.view.SurfaceControl; import android.window.WindowContainerToken; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.annotation.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; import com.android.internal.util.Preconditions; -import com.android.wm.shell.common.pip.PipDesktopState; -import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.shared.annotations.ShellMainThread; -import java.io.PrintWriter; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; @@ -69,37 +62,32 @@ import java.util.List; * and throw an <code>IllegalStateException</code> otherwise.</p> */ public class PipTransitionState { - private static final String TAG = PipTransitionState.class.getSimpleName(); - public static final int UNDEFINED = 0; // State for Launcher animating the swipe PiP to home animation. public static final int SWIPING_TO_PIP = 1; - // State for scheduling enter PiP transition; could be after SWIPING_TO_PIP - public static final int SCHEDULED_ENTER_PIP = 2; - // State for Shell animating enter PiP or jump-cutting to PiP mode after Launcher animation. - public static final int ENTERING_PIP = 3; + public static final int ENTERING_PIP = 2; // State for app finishing drawing in PiP mode as a final step in enter PiP flow. - public static final int ENTERED_PIP = 4; + public static final int ENTERED_PIP = 3; // State to indicate we have scheduled a PiP bounds change transition. - public static final int SCHEDULED_BOUNDS_CHANGE = 5; + public static final int SCHEDULED_BOUNDS_CHANGE = 4; // State for the start of playing a transition to change PiP bounds. At this point, WM Core // is aware of the new PiP bounds, but Shell might still be continuing animating. - public static final int CHANGING_PIP_BOUNDS = 6; + public static final int CHANGING_PIP_BOUNDS = 5; // State for finishing animating into new PiP bounds after resize is complete. - public static final int CHANGED_PIP_BOUNDS = 7; + public static final int CHANGED_PIP_BOUNDS = 6; // State for starting exiting PiP. - public static final int EXITING_PIP = 8; + public static final int EXITING_PIP = 7; // State for finishing exit PiP flow. - public static final int EXITED_PIP = 9; + public static final int EXITED_PIP = 8; private static final int FIRST_CUSTOM_STATE = 1000; @@ -108,7 +96,6 @@ public class PipTransitionState { @IntDef(prefix = { "TRANSITION_STATE_" }, value = { UNDEFINED, SWIPING_TO_PIP, - SCHEDULED_ENTER_PIP, ENTERING_PIP, ENTERED_PIP, SCHEDULED_BOUNDS_CHANGE, @@ -130,8 +117,6 @@ public class PipTransitionState { @ShellMainThread private final Handler mMainHandler; - private final PipDesktopState mPipDesktopState; - // // Swipe up to enter PiP related state // @@ -145,32 +130,22 @@ public class PipTransitionState { private final Rect mSwipePipToHomeAppBounds = new Rect(); // - // Task related caches + // Tokens and leashes // + // pinned PiP task's WC token + @Nullable + WindowContainerToken mPipTaskToken; + // pinned PiP task's leash @Nullable - private SurfaceControl mPinnedTaskLeash; - - // pinned PiP task info - @Nullable - private TaskInfo mPipTaskInfo; + SurfaceControl mPinnedTaskLeash; // Overlay leash potentially used during swipe PiP to home transition; // if null while mInSwipePipToHomeTransition is true, then srcRectHint was invalid. @Nullable private SurfaceControl mSwipePipToHomeOverlay; - // - // Scheduling-related state - // - @Nullable - private Runnable mOnIdlePipTransitionStateRunnable; - - private boolean mInFixedRotation = false; - - private boolean mIsPipBoundsChangingWithDisplay = false; - /** * An interface to track state updates as we progress through PiP transitions. */ @@ -183,9 +158,8 @@ public class PipTransitionState { private final List<PipTransitionStateChangedListener> mCallbacks = new ArrayList<>(); - public PipTransitionState(@ShellMainThread Handler handler, PipDesktopState pipDesktopState) { + public PipTransitionState(@ShellMainThread Handler handler) { mMainHandler = handler; - mPipDesktopState = pipDesktopState; } /** @@ -215,22 +189,10 @@ public class PipTransitionState { Preconditions.checkArgument(extra != null && !extra.isEmpty(), "No extra bundle for " + stateToString(state) + " state."); } - if (!shouldTransitionToState(state)) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s: Attempted to transition to an invalid state=%s, while in %s", - TAG, stateToString(state), this); - return; - } - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s setState from=%s to=%s", - TAG, stateToString(mState), stateToString(state)); if (mState != state) { - final int prevState = mState; + dispatchPipTransitionStateChanged(mState, state, extra); mState = state; - dispatchPipTransitionStateChanged(prevState, mState, extra); } - - maybeRunOnIdlePipTransitionStateCallback(); } /** @@ -264,38 +226,6 @@ public class PipTransitionState { mCallbacks.forEach(l -> l.onPipTransitionStateChanged(oldState, newState, extra)); } - /** - * Schedule a callback to run when in a valid idle PiP state. - * - * <p>We only allow for one callback to be scheduled to avoid cases with multiple transitions - * being scheduled. For instance, if user double taps and IME shows, this would - * schedule a bounds change transition for IME appearing.</p> - * - * <p>Only on-idle runnable can be scheduled at a time, so attempting to schedule a new one - * in quick succession should remove the previous one from the message queue.</p> - */ - public void setOnIdlePipTransitionStateRunnable( - @Nullable Runnable onIdlePipTransitionStateRunnable) { - mMainHandler.removeMessages(PipTransitionState.class.hashCode()); - mOnIdlePipTransitionStateRunnable = onIdlePipTransitionStateRunnable; - maybeRunOnIdlePipTransitionStateCallback(); - } - - private void maybeRunOnIdlePipTransitionStateCallback() { - if (mOnIdlePipTransitionStateRunnable != null && isPipStateIdle()) { - final Message msg = mMainHandler.obtainMessage(PipTransitionState.class.hashCode()); - msg.setCallback(mOnIdlePipTransitionStateRunnable); - mMainHandler.sendMessage(msg); - mOnIdlePipTransitionStateRunnable = null; - } - } - - @VisibleForTesting - @Nullable - Runnable getOnIdlePipTransitionStateRunnable() { - return mOnIdlePipTransitionStateRunnable; - } - /** * Adds a {@link PipTransitionStateChangedListener} for future PiP transition state updates. */ @@ -337,63 +267,6 @@ public class PipTransitionState { mSwipePipToHomeAppBounds.setEmpty(); } - @Nullable - public WindowContainerToken getPipTaskToken() { - return mPipTaskInfo != null ? mPipTaskInfo.getToken() : null; - } - - @Nullable SurfaceControl getPinnedTaskLeash() { - return mPinnedTaskLeash; - } - - void setPinnedTaskLeash(@Nullable SurfaceControl leash) { - mPinnedTaskLeash = leash; - } - - @Nullable TaskInfo getPipTaskInfo() { - return mPipTaskInfo; - } - - void setPipTaskInfo(@Nullable TaskInfo pipTaskInfo) { - mPipTaskInfo = pipTaskInfo; - } - - /** - * @return true if either in swipe or button-nav fixed rotation. - */ - public boolean isInFixedRotation() { - return mInFixedRotation; - } - - /** - * Sets the fixed rotation flag. - */ - public void setInFixedRotation(boolean inFixedRotation) { - mInFixedRotation = inFixedRotation; - if (!inFixedRotation) { - maybeRunOnIdlePipTransitionStateCallback(); - } - } - - /** - * @return true if a display change is ungoing with a PiP bounds change. - */ - public boolean isPipBoundsChangingWithDisplay() { - return mIsPipBoundsChangingWithDisplay; - } - - /** - * Sets the PiP bounds change with display change flag. - */ - public void setIsPipBoundsChangingWithDisplay(boolean isPipBoundsChangingWithDisplay) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_PICTURE_IN_PICTURE, - "%s: Set mIsPipBoundsChangingWithDisplay=%b", TAG, isPipBoundsChangingWithDisplay); - mIsPipBoundsChangingWithDisplay = isPipBoundsChangingWithDisplay; - if (!isPipBoundsChangingWithDisplay) { - maybeRunOnIdlePipTransitionStateCallback(); - } - } - /** * @return true if in swipe PiP to home. Note that this is true until overlay fades if used too. */ @@ -426,32 +299,10 @@ public class PipTransitionState { return ++mPrevCustomState; } - @VisibleForTesting - boolean shouldTransitionToState(@TransitionState int newState) { - switch (newState) { - case SCHEDULED_ENTER_PIP: - // This state only makes sense when we are not initially in PiP or not entering PiP. - // PiP can also be replaced upon direct enter, but scheduling like this can happen - // while an animation is running if PiP is not idle, so we should not - // disrupt the state machine while an animation is in between its state updates. - return (!isInPip() && mState != ENTERING_PIP) || isPipStateIdle(); - case SCHEDULED_BOUNDS_CHANGE: - // Allow scheduling bounds change only when both of these are true: - // - while in PiP, except for if another bounds change was scheduled but hasn't - // started playing yet - // - there is no drag-to-desktop gesture in progress; otherwise the PiP resize - // transition will block the drag-to-desktop transitions from finishing - return isPipStateIdle() && !mPipDesktopState.isDragToDesktopInProgress(); - default: - return true; - } - } - private static String stateToString(int state) { switch (state) { case UNDEFINED: return "undefined"; case SWIPING_TO_PIP: return "swiping_to_pip"; - case SCHEDULED_ENTER_PIP: return "scheduled_enter_pip"; case ENTERING_PIP: return "entering-pip"; case ENTERED_PIP: return "entered-pip"; case SCHEDULED_BOUNDS_CHANGE: return "scheduled_bounds_change"; @@ -459,31 +310,13 @@ public class PipTransitionState { case CHANGED_PIP_BOUNDS: return "changed-bounds"; case EXITING_PIP: return "exiting-pip"; case EXITED_PIP: return "exited-pip"; - default: return "custom-state(" + state + ")"; } - } - - public boolean isPipStateIdle() { - // This needs to be a valid in-PiP state that isn't a transient state. - return (mState == ENTERED_PIP || mState == CHANGED_PIP_BOUNDS) - && !isInFixedRotation() && !isPipBoundsChangingWithDisplay(); + throw new IllegalStateException("Unknown state: " + state); } @Override public String toString() { - return String.format("PipTransitionState(mState=%s, mInSwipePipToHomeTransition=%b, " - + "mIsPipBoundsChangingWithDisplay=%b, mInFixedRotation=%b", - stateToString(mState), mInSwipePipToHomeTransition, mIsPipBoundsChangingWithDisplay, - mInFixedRotation); - } - - /** Dumps internal state. */ - public void dump(PrintWriter pw, String prefix) { - final String innerPrefix = prefix + " "; - pw.println(prefix + TAG); - pw.println(innerPrefix + "mState=" + stateToString(mState)); - pw.println(innerPrefix + "mInFixedRotation=" + mInFixedRotation); - pw.println(innerPrefix + "mIsPipBoundsChangingWithDisplay=" - + mIsPipBoundsChangingWithDisplay); + return String.format("PipTransitionState(mState=%s, mInSwipePipToHomeTransition=%b)", + stateToString(mState), mInSwipePipToHomeTransition); } } diff --git a/wmshell/src/com/android/wm/shell/protolog/ShellProtoLogGroup.java b/wmshell/src/com/android/wm/shell/protolog/ShellProtoLogGroup.java index 54ecf4be2b..497c3f704c 100644 --- a/wmshell/src/com/android/wm/shell/protolog/ShellProtoLogGroup.java +++ b/wmshell/src/com/android/wm/shell/protolog/ShellProtoLogGroup.java @@ -33,25 +33,19 @@ public enum ShellProtoLogGroup implements IProtoLogGroup { WM_SHELL_INIT(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, Consts.TAG_WM_SHELL), WM_SHELL_TASK_ORG(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, - "ShellTaskOrganizer"), + Consts.TAG_WM_SHELL), WM_SHELL_TRANSITIONS(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, Consts.TAG_WM_SHELL), - WM_SHELL_IME_CONTROLLER(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, - "ShellIme"), WM_SHELL_RECENTS_TRANSITION(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, "ShellRecents"), WM_SHELL_DRAG_AND_DROP(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, "ShellDragAndDrop"), WM_SHELL_STARTING_WINDOW(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, Consts.TAG_WM_STARTING_WINDOW), - WM_SHELL_REMOVE_STARTING_TRACKER(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, - Consts.TAG_WM_STARTING_WINDOW), WM_SHELL_BACK_PREVIEW(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, "ShellBackPreview"), WM_SHELL_RECENT_TASKS(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, Consts.TAG_WM_SHELL), - WM_SHELL_TASK_OBSERVER(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, - Consts.TAG_WM_SHELL), // TODO(b/282232877): turn logToLogcat to false. WM_SHELL_PICTURE_IN_PICTURE(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, Consts.TAG_WM_SHELL), @@ -61,22 +55,12 @@ public enum ShellProtoLogGroup implements IProtoLogGroup { Consts.TAG_WM_SHELL), WM_SHELL_DESKTOP_MODE(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, Consts.TAG_WM_DESKTOP_MODE), - WM_SHELL_WINDOW_DECORATION(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, - Consts.TAG_WM_WINDOW_DECORATION), WM_SHELL_FLOATING_APPS(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, Consts.TAG_WM_SHELL), WM_SHELL_FOLDABLE(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, Consts.TAG_WM_SHELL), - WM_SHELL_BUBBLES_NOISY(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, - Consts.TAG_WM_BUBBLES), - WM_SHELL_BUBBLES(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, - Consts.TAG_WM_BUBBLES), - WM_SHELL_COMPAT_UI(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, - Consts.TAG_WM_COMPAT_UI), - WM_SHELL_APP_COMPAT(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, - Consts.TAG_WM_APP_COMPAT), - WM_SHELL_APP_HANDLES(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, - Consts.TAG_WM_APP_HANDLES), + WM_SHELL_BUBBLES(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, + "Bubbles"), TEST_GROUP(true, true, false, "WindowManagerShellProtoLogTest"); private final boolean mEnabled; @@ -144,11 +128,6 @@ public enum ShellProtoLogGroup implements IProtoLogGroup { private static final String TAG_WM_STARTING_WINDOW = "ShellStartingWindow"; private static final String TAG_WM_SPLIT_SCREEN = "ShellSplitScreen"; private static final String TAG_WM_DESKTOP_MODE = "ShellDesktopMode"; - private static final String TAG_WM_WINDOW_DECORATION = "ShellWindowDecoration"; - private static final String TAG_WM_COMPAT_UI = "CompatUi"; - private static final String TAG_WM_APP_COMPAT = "AppCompat"; - private static final String TAG_WM_BUBBLES = "Bubbles"; - private static final String TAG_WM_APP_HANDLES = "AppHandles"; private static final boolean ENABLE_DEBUG = true; private static final boolean ENABLE_LOG_TO_PROTO_DEBUG = true; diff --git a/wmshell/src/com/android/wm/shell/recents/IRecentTasks.aidl b/wmshell/src/com/android/wm/shell/recents/IRecentTasks.aidl index 23457eb3cc..4048c5b8fe 100644 --- a/wmshell/src/com/android/wm/shell/recents/IRecentTasks.aidl +++ b/wmshell/src/com/android/wm/shell/recents/IRecentTasks.aidl @@ -21,11 +21,10 @@ import android.app.IApplicationThread; import android.app.PendingIntent; import android.content.Intent; import android.os.Bundle; -import android.window.WindowContainerTransaction; +import android.view.IRecentsAnimationRunner; -import com.android.wm.shell.recents.IRecentsAnimationRunner; import com.android.wm.shell.recents.IRecentTasksListener; -import com.android.wm.shell.shared.GroupedTaskInfo; +import com.android.wm.shell.util.GroupedRecentTaskInfo; /** * Interface that is exposed to remote callers to fetch recent tasks. @@ -45,7 +44,7 @@ interface IRecentTasks { /** * Gets the set of recent tasks. */ - GroupedTaskInfo[] getRecentTasks(int maxNum, int flags, int userId) = 3; + GroupedRecentTaskInfo[] getRecentTasks(int maxNum, int flags, int userId) = 3; /** * Gets the set of running tasks. @@ -56,6 +55,5 @@ interface IRecentTasks { * Starts a recents transition. */ oneway void startRecentsTransition(in PendingIntent intent, in Intent fillIn, in Bundle options, - in @nullable WindowContainerTransaction wct, IApplicationThread appThread, - IRecentsAnimationRunner listener) = 5; + IApplicationThread appThread, IRecentsAnimationRunner listener) = 5; } diff --git a/wmshell/src/com/android/wm/shell/recents/IRecentTasksListener.aidl b/wmshell/src/com/android/wm/shell/recents/IRecentTasksListener.aidl index 68dc0f27bc..245829ecaf 100644 --- a/wmshell/src/com/android/wm/shell/recents/IRecentTasksListener.aidl +++ b/wmshell/src/com/android/wm/shell/recents/IRecentTasksListener.aidl @@ -18,8 +18,6 @@ package com.android.wm.shell.recents; import android.app.ActivityManager.RunningTaskInfo; -import com.android.wm.shell.shared.GroupedTaskInfo; - /** * Listener interface that Launcher attaches to SystemUI to get split-screen callbacks. */ @@ -45,15 +43,6 @@ oneway interface IRecentTasksListener { */ void onRunningTaskChanged(in RunningTaskInfo taskInfo); - /** A task has moved to front. Only used if enableShellTopTaskTracking() is disabled. */ - void onTaskMovedToFront(in GroupedTaskInfo taskToFront); - - /** A task info has changed. Only used if enableShellTopTaskTracking() is disabled. */ - void onTaskInfoChanged(in RunningTaskInfo taskInfo); - - /** - * If enableShellTopTaskTracking() is enabled, this reports the set of all visible tasks. - * Otherwise, this reports only the new top most visible task. - */ - void onVisibleTasksChanged(in GroupedTaskInfo[] visibleTasks); + /** A task has moved to front. */ + oneway void onTaskMovedToFront(in RunningTaskInfo taskInfo); } \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/recents/RecentTasks.java b/wmshell/src/com/android/wm/shell/recents/RecentTasks.java index 364a087211..77b8663861 100644 --- a/wmshell/src/com/android/wm/shell/recents/RecentTasks.java +++ b/wmshell/src/com/android/wm/shell/recents/RecentTasks.java @@ -19,8 +19,8 @@ package com.android.wm.shell.recents; import android.annotation.Nullable; import android.graphics.Color; -import com.android.wm.shell.shared.GroupedTaskInfo; import com.android.wm.shell.shared.annotations.ExternalThread; +import com.android.wm.shell.util.GroupedRecentTaskInfo; import java.util.List; import java.util.concurrent.Executor; @@ -35,7 +35,7 @@ public interface RecentTasks { * Gets the set of recent tasks. */ default void getRecentTasks(int maxNum, int flags, int userId, Executor callbackExecutor, - Consumer<List<GroupedTaskInfo>> callback) { + Consumer<List<GroupedRecentTaskInfo>> callback) { } /** diff --git a/wmshell/src/com/android/wm/shell/recents/RecentTasksController.java b/wmshell/src/com/android/wm/shell/recents/RecentTasksController.java index b1fb107f91..03c8cf8cc7 100644 --- a/wmshell/src/com/android/wm/shell/recents/RecentTasksController.java +++ b/wmshell/src/com/android/wm/shell/recents/RecentTasksController.java @@ -17,100 +17,77 @@ package com.android.wm.shell.recents; import static android.app.ActivityTaskManager.INVALID_TASK_ID; -import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.content.pm.PackageManager.FEATURE_PC; -import static android.view.Display.INVALID_DISPLAY; -import static com.android.wm.shell.Flags.enableShellTopTaskTracking; -import static com.android.wm.shell.desktopmode.DesktopWallpaperActivity.isWallpaperTask; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_TASK_OBSERVER; +import static com.android.window.flags.Flags.enableDesktopWindowingTaskbarRunningApps; +import static com.android.window.flags.Flags.enableTaskStackObserverInShell; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_RECENT_TASKS; -import android.Manifest; -import android.annotation.RequiresPermission; import android.app.ActivityManager; -import android.app.ActivityManager.RecentTaskInfo; -import android.app.ActivityManager.RunningTaskInfo; import android.app.ActivityTaskManager; import android.app.IApplicationThread; -import android.app.KeyguardManager; import android.app.PendingIntent; -import android.app.TaskInfo; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.graphics.Color; -import android.graphics.Point; import android.os.Bundle; import android.os.RemoteException; import android.util.Slog; +import android.util.SparseArray; import android.util.SparseIntArray; -import android.window.DesktopModeFlags; -import android.window.WindowContainerToken; -import android.window.WindowContainerTransaction; +import android.view.IRecentsAnimationRunner; import androidx.annotation.BinderThread; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ExternalInterfaceBinder; import com.android.wm.shell.common.RemoteCallable; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SingleInstanceRemoteListener; import com.android.wm.shell.common.TaskStackListenerCallback; import com.android.wm.shell.common.TaskStackListenerImpl; -import com.android.wm.shell.desktopmode.DesktopRepository; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; +import com.android.wm.shell.desktopmode.DesktopModeTaskRepository; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.GroupedTaskInfo; +import com.android.wm.shell.shared.DesktopModeStatus; import com.android.wm.shell.shared.annotations.ExternalThread; import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.desktopmode.DesktopState; -import com.android.wm.shell.shared.split.SplitBounds; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.sysui.UserChangeListener; +import com.android.wm.shell.transition.Transitions; +import com.android.wm.shell.util.GroupedRecentTaskInfo; +import com.android.wm.shell.util.SplitBounds; import java.io.PrintWriter; import java.util.ArrayList; import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Optional; -import java.util.Set; import java.util.concurrent.Executor; import java.util.function.Consumer; -import java.util.stream.Collectors; /** * Manages the recent task list from the system, caching it as necessary. */ public class RecentTasksController implements TaskStackListenerCallback, - RemoteCallable<RecentTasksController>, DesktopRepository.ActiveTasksListener, - TaskStackTransitionObserver.TaskStackTransitionObserverListener, UserChangeListener, - DesktopRepository.DeskChangeListener { + RemoteCallable<RecentTasksController>, DesktopModeTaskRepository.ActiveTasksListener, + TaskStackTransitionObserver.TaskStackTransitionObserverListener { private static final String TAG = RecentTasksController.class.getSimpleName(); - // When the multiple desktops feature is disabled, all freeform tasks are lumped together into - // a single `GroupedTaskInfo` whose type is `TYPE_DESK`, and its `mDeskId` doesn't matter, so - // we pick the below arbitrary value. - private static final int INVALID_DESK_ID = -1; - private final Context mContext; private final ShellController mShellController; private final ShellCommandHandler mShellCommandHandler; - private final Optional<DesktopUserRepositories> mDesktopUserRepositories; - + private final Optional<DesktopModeTaskRepository> mDesktopModeTaskRepository; private final ShellExecutor mMainExecutor; private final TaskStackListenerImpl mTaskStackListener; private final RecentTasksImpl mImpl = new RecentTasksImpl(); private final ActivityTaskManager mActivityTaskManager; private final TaskStackTransitionObserver mTaskStackTransitionObserver; - private final RecentsShellCommandHandler mRecentsShellCommandHandler; - private final DesktopState mDesktopState; private RecentsTransitionHandler mTransitionHandler = null; private IRecentTasksListener mListener; private final boolean mPcFeatureEnabled; @@ -118,8 +95,6 @@ public class RecentTasksController implements TaskStackListenerCallback, // Mapping of split task ids, mappings are symmetrical (ie. if t1 is the taskid of a task in a // pair, then mSplitTasks[t1] = t2, and mSplitTasks[t2] = t1) private final SparseIntArray mSplitTasks = new SparseIntArray(); - - private int mUserId; /** * Maps taskId to {@link SplitBounds} for both taskIDs. * Meaning there will be two taskId integers mapping to the same object. @@ -128,16 +103,6 @@ public class RecentTasksController implements TaskStackListenerCallback, */ private final Map<Integer, SplitBounds> mTaskSplitBoundsMap = new HashMap<>(); - /** - * Cached list of the visible tasks, sorted from top most to bottom most. - */ - private final List<RunningTaskInfo> mVisibleTasks = new ArrayList<>(); - private final Map<Integer, TaskInfo> mVisibleTasksMap = new HashMap<>(); - - // Temporary vars used in `generateList()` - private final Map<Integer, TaskInfo> mTmpRemaining = new HashMap<>(); - private final Map<Integer, Desk> mTmpDesks = new HashMap<>(); - /** * Creates {@link RecentTasksController}, returns {@code null} if the feature is not * supported. @@ -150,17 +115,16 @@ public class RecentTasksController implements TaskStackListenerCallback, ShellCommandHandler shellCommandHandler, TaskStackListenerImpl taskStackListener, ActivityTaskManager activityTaskManager, - Optional<DesktopUserRepositories> desktopUserRepositories, + Optional<DesktopModeTaskRepository> desktopModeTaskRepository, TaskStackTransitionObserver taskStackTransitionObserver, - @ShellMainThread ShellExecutor mainExecutor, - DesktopState desktopState + @ShellMainThread ShellExecutor mainExecutor ) { if (!context.getResources().getBoolean(com.android.internal.R.bool.config_hasRecents)) { return null; } return new RecentTasksController(context, shellInit, shellController, shellCommandHandler, - taskStackListener, activityTaskManager, desktopUserRepositories, - taskStackTransitionObserver, mainExecutor, desktopState); + taskStackListener, activityTaskManager, desktopModeTaskRepository, + taskStackTransitionObserver, mainExecutor); } RecentTasksController(Context context, @@ -169,21 +133,18 @@ public class RecentTasksController implements TaskStackListenerCallback, ShellCommandHandler shellCommandHandler, TaskStackListenerImpl taskStackListener, ActivityTaskManager activityTaskManager, - Optional<DesktopUserRepositories> desktopUserRepositories, + Optional<DesktopModeTaskRepository> desktopModeTaskRepository, TaskStackTransitionObserver taskStackTransitionObserver, - ShellExecutor mainExecutor, - DesktopState desktopState) { + ShellExecutor mainExecutor) { mContext = context; mShellController = shellController; mShellCommandHandler = shellCommandHandler; mActivityTaskManager = activityTaskManager; mPcFeatureEnabled = mContext.getPackageManager().hasSystemFeature(FEATURE_PC); mTaskStackListener = taskStackListener; - mDesktopUserRepositories = desktopUserRepositories; + mDesktopModeTaskRepository = desktopModeTaskRepository; mTaskStackTransitionObserver = taskStackTransitionObserver; mMainExecutor = mainExecutor; - mRecentsShellCommandHandler = new RecentsShellCommandHandler(this); - mDesktopState = desktopState; shellInit.addInitCallback(this::onInit, this); } @@ -195,26 +156,16 @@ public class RecentTasksController implements TaskStackListenerCallback, return new IRecentTasksImpl(this); } - @RequiresPermission(Manifest.permission.SUBSCRIBE_TO_KEYGUARD_LOCKED_STATE) - void onInit() { - mShellController.addExternalInterface(IRecentTasks.DESCRIPTOR, + private void onInit() { + mShellController.addExternalInterface(KEY_EXTRA_SHELL_RECENT_TASKS, this::createExternalInterface, this); mShellCommandHandler.addDumpCallback(this::dump, this); - mShellCommandHandler.addCommandCallback("recents", mRecentsShellCommandHandler, this); - mUserId = ActivityManager.getCurrentUser(); - mDesktopUserRepositories.ifPresent( - desktopUserRepositories -> { - desktopUserRepositories.getCurrent().addActiveTaskListener(this); - if (mDesktopState.enableMultipleDesktops()) { - desktopUserRepositories.getCurrent().addDeskChangeListener(this, - mMainExecutor); - } - }); mTaskStackListener.addListener(this); - mTaskStackTransitionObserver.addTaskStackTransitionObserverListener(this, - mMainExecutor); - mContext.getSystemService(KeyguardManager.class).addKeyguardLockedStateListener( - mMainExecutor, isKeyguardLocked -> notifyRecentTasksChanged()); + mDesktopModeTaskRepository.ifPresent(it -> it.addActiveTaskListener(this)); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + mTaskStackTransitionObserver.addTaskStackTransitionObserverListener(this, + mMainExecutor); + } } void setTransitionHandler(RecentsTransitionHandler handler) { @@ -244,7 +195,7 @@ public class RecentTasksController implements TaskStackListenerCallback, mTaskSplitBoundsMap.put(taskId1, splitBounds); mTaskSplitBoundsMap.put(taskId2, splitBounds); notifyRecentTasksChanged(); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Add split pair: %d, %d, %s", + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENT_TASKS, "Add split pair: %d, %d, %s", taskId1, taskId2, splitBounds); return true; } @@ -260,7 +211,7 @@ public class RecentTasksController implements TaskStackListenerCallback, mTaskSplitBoundsMap.remove(taskId); mTaskSplitBoundsMap.remove(pairedTaskId); notifyRecentTasksChanged(); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Remove split pair: %d, %d", + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENT_TASKS, "Remove split pair: %d, %d", taskId, pairedTaskId); } } @@ -273,17 +224,7 @@ public class RecentTasksController implements TaskStackListenerCallback, // We could do extra verification of requiring both taskIds of a pair and verifying that // the same split bounds object is returned... but meh. Seems unnecessary. - SplitBounds splitBounds = mTaskSplitBoundsMap.get(taskId); - if (splitBounds != null) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, - "getSplitBoundsForTaskId: taskId=%d splitBoundsTasks=[%d, %d]", taskId, - splitBounds.leftTopTaskId, splitBounds.rightBottomTaskId); - } else { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, - "getSplitBoundsForTaskId: expected split bounds for taskId=%d but not found", - taskId); - } - return splitBounds; + return mTaskSplitBoundsMap.get(taskId); } @Override @@ -298,10 +239,7 @@ public class RecentTasksController implements TaskStackListenerCallback, @Override public void onTaskStackChanged() { - if (!enableShellTopTaskTracking()) { - // Skip notifying recent tasks changed whenever task stack changes - notifyRecentTasksChanged(); - } + notifyRecentTasksChanged(); } @Override @@ -315,31 +253,15 @@ public class RecentTasksController implements TaskStackListenerCallback, notifyRecentTasksChanged(); } - /** - * This method only gets notified when a task is removed from recents as a result of another - * task being added to recent tasks. - */ - @Override - public void onRecentTaskRemovedForAddTask(int taskId) { - mDesktopUserRepositories.ifPresent( - desktopUserRepositories -> desktopUserRepositories.getCurrent().removeTask(taskId)); - } - - public void onTaskAdded(RunningTaskInfo taskInfo) { + public void onTaskAdded(ActivityManager.RunningTaskInfo taskInfo) { notifyRunningTaskAppeared(taskInfo); - if (!enableShellTopTaskTracking()) { - notifyRecentTasksChanged(); - } } - public void onTaskRemoved(RunningTaskInfo taskInfo) { + public void onTaskRemoved(ActivityManager.RunningTaskInfo taskInfo) { // Remove any split pairs associated with this task removeSplitPair(taskInfo.taskId); + notifyRecentTasksChanged(); notifyRunningTaskVanished(taskInfo); - if (!enableShellTopTaskTracking()) { - // Only notify recent tasks changed if we aren't already notifying the visible tasks - notifyRecentTasksChanged(); - } } /** @@ -347,7 +269,7 @@ public class RecentTasksController implements TaskStackListenerCallback, * * This currently includes windowing mode and visibility. */ - public void onTaskRunningInfoChanged(RunningTaskInfo taskInfo) { + public void onTaskRunningInfoChanged(ActivityManager.RunningTaskInfo taskInfo) { notifyRecentTasksChanged(); notifyRunningTaskChanged(taskInfo); } @@ -358,26 +280,11 @@ public class RecentTasksController implements TaskStackListenerCallback, } @Override - public void onTaskMovedToFrontThroughTransition(RunningTaskInfo runningTaskInfo) { + public void onTaskMovedToFrontThroughTransition( + ActivityManager.RunningTaskInfo runningTaskInfo) { notifyTaskMovedToFront(runningTaskInfo); } - @Override - public void onTaskChangedThroughTransition(@NonNull ActivityManager.RunningTaskInfo taskInfo) { - notifyTaskInfoChanged(taskInfo); - } - - @Override - public void onVisibleTasksChanged(@NonNull List<? extends RunningTaskInfo> visibleTasks) { - mVisibleTasks.clear(); - mVisibleTasks.addAll(visibleTasks); - mVisibleTasksMap.clear(); - mVisibleTasksMap.putAll(mVisibleTasks.stream().collect( - Collectors.toMap(TaskInfo::getTaskId, task -> task))); - // Notify with all the info and not just the running task info - notifyVisibleTasksChanged(mVisibleTasks); - } - @VisibleForTesting void notifyRecentTasksChanged() { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENT_TASKS, "Notify recent tasks changed"); @@ -394,11 +301,10 @@ public class RecentTasksController implements TaskStackListenerCallback, /** * Notify the running task listener that a task appeared on desktop environment. */ - private void notifyRunningTaskAppeared(RunningTaskInfo taskInfo) { + private void notifyRunningTaskAppeared(ActivityManager.RunningTaskInfo taskInfo) { if (mListener == null || !shouldEnableRunningTasksForDesktopMode() - || taskInfo.realActivity == null - || excludeTaskFromGeneratedList(taskInfo)) { + || taskInfo.realActivity == null) { return; } try { @@ -408,31 +314,13 @@ public class RecentTasksController implements TaskStackListenerCallback, } } - /** - * Notify the running task listener that a task was changed on desktop environment. - */ - private void notifyRunningTaskChanged(RunningTaskInfo taskInfo) { - if (mListener == null - || !shouldEnableRunningTasksForDesktopMode() - || taskInfo.realActivity == null - || excludeTaskFromGeneratedList(taskInfo)) { - return; - } - try { - mListener.onRunningTaskChanged(taskInfo); - } catch (RemoteException e) { - Slog.w(TAG, "Failed call onRunningTaskChanged", e); - } - } - /** * Notify the running task listener that a task was removed on desktop environment. */ - private void notifyRunningTaskVanished(RunningTaskInfo taskInfo) { + private void notifyRunningTaskVanished(ActivityManager.RunningTaskInfo taskInfo) { if (mListener == null || !shouldEnableRunningTasksForDesktopMode() - || taskInfo.realActivity == null - || excludeTaskFromGeneratedList(taskInfo)) { + || taskInfo.realActivity == null) { return; } try { @@ -443,73 +331,43 @@ public class RecentTasksController implements TaskStackListenerCallback, } /** - * Notify the recents task listener that a task moved to front via a transition. + * Notify the running task listener that a task was changed on desktop environment. */ - private void notifyTaskMovedToFront(ActivityManager.RunningTaskInfo taskInfo) { + private void notifyRunningTaskChanged(ActivityManager.RunningTaskInfo taskInfo) { if (mListener == null - || !DesktopModeFlags.ENABLE_TASK_STACK_OBSERVER_IN_SHELL.isTrue() - || taskInfo.realActivity == null - || enableShellTopTaskTracking() - || excludeTaskFromGeneratedList(taskInfo)) { + || !shouldEnableRunningTasksForDesktopMode() + || taskInfo.realActivity == null) { return; } try { - mListener.onTaskMovedToFront(GroupedTaskInfo.forFullscreenTasks(taskInfo)); + mListener.onRunningTaskChanged(taskInfo); + } catch (RemoteException e) { + Slog.w(TAG, "Failed call onRunningTaskChanged", e); + } + } + + private void notifyTaskMovedToFront(ActivityManager.RunningTaskInfo taskInfo) { + if (mListener == null + || !enableTaskStackObserverInShell() + || taskInfo.realActivity == null) { + return; + } + try { + mListener.onTaskMovedToFront(taskInfo); } catch (RemoteException e) { Slog.w(TAG, "Failed call onTaskMovedToFront", e); } } - /** - * Notify the recents task listener that a task changed via a transition. - */ - private void notifyTaskInfoChanged(ActivityManager.RunningTaskInfo taskInfo) { - if (mListener == null - || !DesktopModeFlags.ENABLE_TASK_STACK_OBSERVER_IN_SHELL.isTrue() - || taskInfo.realActivity == null - || enableShellTopTaskTracking() - || excludeTaskFromGeneratedList(taskInfo)) { - return; - } - try { - mListener.onTaskInfoChanged(taskInfo); - } catch (RemoteException e) { - Slog.w(TAG, "Failed call onTaskInfoChanged", e); - } - } - - /** - * Notifies that the test of visible tasks have changed. - */ - private void notifyVisibleTasksChanged(@NonNull List<? extends RunningTaskInfo> visibleTasks) { - if (mListener == null - || !DesktopModeFlags.ENABLE_TASK_STACK_OBSERVER_IN_SHELL.isTrue() - || !enableShellTopTaskTracking()) { - return; - } - try { - // Compute the visible recent tasks in order, and move the task to the top - mListener.onVisibleTasksChanged(generateList(visibleTasks, "visibleTasksChanged") - .toArray(new GroupedTaskInfo[0])); - } catch (RemoteException e) { - Slog.w(TAG, "Failed call onVisibleTasksChanged", e); - } - } - private boolean shouldEnableRunningTasksForDesktopMode() { return mPcFeatureEnabled - || (mDesktopState.canEnterDesktopMode() - && DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_TASKBAR_RUNNING_APPS.isTrue()); + || (DesktopModeStatus.canEnterDesktopMode(mContext) + && enableDesktopWindowingTaskbarRunningApps()); } @VisibleForTesting void registerRecentTasksListener(IRecentTasksListener listener) { mListener = listener; - if (enableShellTopTaskTracking()) { - ProtoLog.v(WM_SHELL_TASK_OBSERVER, "registerRecentTasksListener"); - // Post a notification for the current set of visible tasks - mMainExecutor.executeDelayed(() -> notifyVisibleTasksChanged(mVisibleTasks), 0); - } } @VisibleForTesting @@ -523,358 +381,94 @@ public class RecentTasksController implements TaskStackListenerCallback, } @VisibleForTesting - ArrayList<GroupedTaskInfo> getRecentTasks(int maxNum, int flags, int userId) { - // Note: the returned task list is ordered from the most-recent to least-recent order - return generateList(mActivityTaskManager.getRecentTasks(maxNum, flags, userId), - "getRecentTasks"); - } + ArrayList<GroupedRecentTaskInfo> getRecentTasks(int maxNum, int flags, int userId) { + // Note: the returned task list is from the most-recent to least-recent order + final List<ActivityManager.RecentTaskInfo> rawList = mActivityTaskManager.getRecentTasks( + maxNum, flags, userId); - /** - * Returns whether the given task should be excluded from the generated list. - */ - private boolean excludeTaskFromGeneratedList(TaskInfo taskInfo) { - if (taskInfo.getWindowingMode() == WINDOWING_MODE_PINNED) { - // We don't current send pinned tasks as a part of recent or running tasks - return true; - } - if (isWallpaperTask(taskInfo)) { - // Don't add the fullscreen wallpaper task as an entry in grouped tasks - return true; - } - return false; - } - - /** - * Represents a desk whose ID is `mDeskId` inside the display with `mDisplayId` and contains - * the tasks in `mDeskTasks`. Some of these tasks are minimized and their IDs are contained - * in the `mMinimizedDeskTasks` set. - */ - private static class Desk { - final int mDeskId; - final int mDisplayId; - boolean mHasVisibleTasks = false; - final ArrayList<TaskInfo> mDeskTasks = new ArrayList<>(); - final Set<Integer> mMinimizedDeskTasks = new HashSet<>(); - - Desk(int deskId, int displayId) { - mDeskId = deskId; - mDisplayId = displayId; + // Make a mapping of task id -> task info + final SparseArray<ActivityManager.RecentTaskInfo> rawMapping = new SparseArray<>(); + for (int i = 0; i < rawList.size(); i++) { + final ActivityManager.RecentTaskInfo taskInfo = rawList.get(i); + rawMapping.put(taskInfo.taskId, taskInfo); } - void addTask(TaskInfo taskInfo, boolean isMinimized, boolean isVisible) { - mDeskTasks.add(taskInfo); - if (isMinimized) { - mMinimizedDeskTasks.add(taskInfo.taskId); - } - mHasVisibleTasks |= isVisible; - } + ArrayList<ActivityManager.RecentTaskInfo> freeformTasks = new ArrayList<>(); - boolean hasTasks() { - return !mDeskTasks.isEmpty(); - } + int mostRecentFreeformTaskIndex = Integer.MAX_VALUE; - GroupedTaskInfo createDeskTaskInfo() { - return GroupedTaskInfo.forDeskTasks(mDeskId, mDisplayId, mDeskTasks, - mMinimizedDeskTasks); - } - } - - /** - * Clears the `mTmpDesks` map, and re-initializes it with the current state of desks from all - * displays, without adding any desk tasks. This is a preparation step so that tasks can be - * added to these desks in `generateList()`. - * - * This is needed since with the multiple-desktops flags, we want to include desk even if - * they're empty (i.e. have no tasks). - * - * @param multipleDesktopsEnabled whether the multiple desktops feature is enabled. - */ - private void initializeDesksMap(boolean multipleDesktopsEnabled) { - mTmpDesks.clear(); - - if (mDesktopState.canEnterDesktopMode() - && mDesktopUserRepositories.isPresent()) { - if (multipleDesktopsEnabled) { - for (var deskId : mDesktopUserRepositories.get().getCurrent().getAllDeskIds()) { - getOrCreateDesk(deskId); - } - } else { - // When the multiple desks feature is disabled, we lump all freeform windows in a - // single `GroupedTaskInfo` regardless of their display. The `deskId` in this case - // doesn't matter and can be any arbitrary value. - getOrCreateDesk(/* deskId = */ INVALID_DESK_ID); - } - } - } - - /** - * Returns the `Desk` whose ID is `deskId` from the `mTmpDesks` map if it exists, or it creates - * one and adds it to the map and then returns it. - */ - private Desk getOrCreateDesk(int deskId) { - var desk = mTmpDesks.get(deskId); - if (desk == null) { - final int displayId; - if (deskId == INVALID_DESK_ID) { - displayId = INVALID_DISPLAY; - } else { - displayId = mDesktopUserRepositories.get().getCurrent().getDisplayForDesk(deskId); - } - desk = new Desk(deskId, displayId); - mTmpDesks.put(deskId, desk); - } - return desk; - } - - /** - * Generates a list of GroupedTaskInfos for the given raw list of tasks (either recents or - * running tasks). - * - * The general flow is: - * - Collect the desktop tasks - * - Collect the visible tasks (in order), including the desktop tasks if visible - * - Construct the final list with the visible tasks, followed by the subsequent tasks - * - if enableShellTopTaskTracking() is enabled, the visible tasks will be grouped into - * a single mixed task - * - if the desktop tasks are not visible, they will be appended to the end of the list - * - * TODO(346588978): Generate list in per-display order - * - * @param tasks The list of tasks ordered from most recent to least recent - */ - @VisibleForTesting - <T extends TaskInfo> ArrayList<GroupedTaskInfo> generateList(@NonNull List<T> tasks, - String reason) { - if (tasks.isEmpty()) { - return new ArrayList<>(); - } - - if (enableShellTopTaskTracking()) { - ProtoLog.v(WM_SHELL_TASK_OBSERVER, "RecentTasksController.generateList(%s)", reason); - } - - final boolean multipleDesktopsEnabled = mDesktopState.enableMultipleDesktops(); - initializeDesksMap(multipleDesktopsEnabled); - - // When the multiple desktops feature is enabled, we include all desks even if they're - // empty. - final boolean shouldIncludeEmptyDesktops = multipleDesktopsEnabled; - - // Make a mapping of task id -> task info for the remaining tasks to be processed, this - // mapping is used to keep track of split tasks that may exist later in the task list that - // should be ignored because they've already been grouped - mTmpRemaining.clear(); - mTmpRemaining.putAll(tasks.stream().collect( - Collectors.toMap(TaskInfo::getTaskId, task -> task))); - - // The final grouped tasks - ArrayList<GroupedTaskInfo> groupedTasks = new ArrayList<>(tasks.size()); - ArrayList<GroupedTaskInfo> visibleGroupedTasks = new ArrayList<>(); - - // Phase 1: Extract the desktops and visible fullscreen/split tasks. - for (int i = 0; i < tasks.size(); i++) { - final TaskInfo taskInfo = tasks.get(i); - final int taskId = taskInfo.taskId; - - if (!mTmpRemaining.containsKey(taskInfo.taskId)) { - // Skip if we've already processed it + // Pull out the pairs as we iterate back in the list + ArrayList<GroupedRecentTaskInfo> recentTasks = new ArrayList<>(); + for (int i = 0; i < rawList.size(); i++) { + final ActivityManager.RecentTaskInfo taskInfo = rawList.get(i); + if (!rawMapping.contains(taskInfo.taskId)) { + // If it's not in the mapping, then it was already paired with another task continue; } - if (excludeTaskFromGeneratedList(taskInfo)) { - // Skip and update the list if we are excluding this task - mTmpRemaining.remove(taskId); + if (DesktopModeStatus.canEnterDesktopMode(mContext) + && mDesktopModeTaskRepository.isPresent() + && mDesktopModeTaskRepository.get().isActiveTask(taskInfo.taskId)) { + if (mDesktopModeTaskRepository.get().isMinimizedTask(taskInfo.taskId)) { + // Minimized freeform tasks should not be shown at all. + continue; + } + // Freeform tasks will be added as a separate entry + if (mostRecentFreeformTaskIndex == Integer.MAX_VALUE) { + mostRecentFreeformTaskIndex = recentTasks.size(); + } + freeformTasks.add(taskInfo); continue; } - // Desktop tasks - if (mDesktopState.canEnterDesktopMode() - && mDesktopUserRepositories.isPresent() - && mDesktopUserRepositories.get().getCurrent().isActiveTask(taskId)) { - // If task has their app bounds set to null which happens after reboot, set the - // app bounds to persisted lastFullscreenBounds. Also set the position in parent - // to the top left of the bounds. - if (DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_PERSISTENCE.isTrue() - && taskInfo.configuration.windowConfiguration.getAppBounds() == null - && taskInfo.lastNonFullscreenBounds != null) { - taskInfo.configuration.windowConfiguration.setAppBounds( - taskInfo.lastNonFullscreenBounds); - taskInfo.positionInParent = new Point(taskInfo.lastNonFullscreenBounds.left, - taskInfo.lastNonFullscreenBounds.top); - } - // Lump all freeform tasks together as if they were all in a single desk whose ID is - // `INVALID_DESK_ID` when the multiple desktops feature is disabled. - final int deskId = multipleDesktopsEnabled - ? mDesktopUserRepositories.get().getCurrent().getDeskIdForTask(taskId) - : INVALID_DESK_ID; - final Desk desk = getOrCreateDesk(deskId); - desk.addTask(taskInfo, - mDesktopUserRepositories.get().getCurrent().isMinimizedTask(taskId), - mVisibleTasksMap.containsKey(taskId)); - mTmpRemaining.remove(taskId); - continue; - } - - if (enableShellTopTaskTracking()) { - // Visible tasks - if (mVisibleTasksMap.containsKey(taskId)) { - // Split tasks - if (extractAndAddSplitGroupedTask(taskInfo, mTmpRemaining, - visibleGroupedTasks)) { - continue; - } - - // Fullscreen tasks - visibleGroupedTasks.add(GroupedTaskInfo.forFullscreenTasks(taskInfo)); - mTmpRemaining.remove(taskId); - } + final int pairedTaskId = mSplitTasks.get(taskInfo.taskId, INVALID_TASK_ID); + if (pairedTaskId != INVALID_TASK_ID && rawMapping.contains( + pairedTaskId)) { + final ActivityManager.RecentTaskInfo pairedTaskInfo = rawMapping.get(pairedTaskId); + rawMapping.remove(pairedTaskId); + recentTasks.add(GroupedRecentTaskInfo.forSplitTasks(taskInfo, pairedTaskInfo, + mTaskSplitBoundsMap.get(pairedTaskId))); } else { - // Split tasks - if (extractAndAddSplitGroupedTask(taskInfo, mTmpRemaining, groupedTasks)) { - continue; - } - - // Fullscreen tasks - groupedTasks.add(GroupedTaskInfo.forFullscreenTasks(taskInfo)); + recentTasks.add(GroupedRecentTaskInfo.forSingleTask(taskInfo)); } } - if (enableShellTopTaskTracking()) { - // Phase 2: If there were desktop tasks and they are visible, add them to the visible - // list as well (the actual order doesn't matter for Overview) - for (var desk : mTmpDesks.values()) { - if (desk.mHasVisibleTasks) { - visibleGroupedTasks.add(desk.createDeskTaskInfo()); - } - } - - if (!visibleGroupedTasks.isEmpty()) { - // Phase 3: Combine the visible tasks into a single mixed grouped task, only if - // there are > 1 tasks to group, and add them to the final list - if (visibleGroupedTasks.size() > 1) { - groupedTasks.add(GroupedTaskInfo.forMixed(visibleGroupedTasks)); - } else { - groupedTasks.addAll(visibleGroupedTasks); - } - } - dumpGroupedTasks(groupedTasks, "Phase 3"); - - // Phase 4: For the remaining non-visible split and fullscreen tasks, add grouped tasks - // in order to the final list - for (int i = 0; i < tasks.size(); i++) { - final TaskInfo taskInfo = tasks.get(i); - if (!mTmpRemaining.containsKey(taskInfo.taskId)) { - // Skip if we've already processed it - continue; - } - - // Split tasks - if (extractAndAddSplitGroupedTask(taskInfo, mTmpRemaining, groupedTasks)) { - continue; - } - - // Fullscreen tasks - groupedTasks.add(GroupedTaskInfo.forFullscreenTasks(taskInfo)); - } - dumpGroupedTasks(groupedTasks, "Phase 4"); - - // Phase 5: If there were desktop tasks and they are not visible (ie. weren't added - // above), add them to the end of the final list (the actual order doesn't - // matter for Overview) - for (var desk : mTmpDesks.values()) { - if (!desk.mHasVisibleTasks && (desk.hasTasks() || shouldIncludeEmptyDesktops)) { - groupedTasks.add(desk.createDeskTaskInfo()); - } - } - dumpGroupedTasks(groupedTasks, "Phase 5"); - } else { - // Add the desktop tasks at the end of the list - for (var desk : mTmpDesks.values()) { - if (desk.hasTasks() || shouldIncludeEmptyDesktops) { - groupedTasks.add(desk.createDeskTaskInfo()); - } - } + // Add a special entry for freeform tasks + if (!freeformTasks.isEmpty()) { + recentTasks.add(mostRecentFreeformTaskIndex, GroupedRecentTaskInfo.forFreeformTasks( + freeformTasks.toArray(new ActivityManager.RecentTaskInfo[0]))); } - return groupedTasks; + return recentTasks; } /** - * Only to be called from `generateList()`. If the given {@param taskInfo} has a paired task, - * then a split grouped task with the pair is added to {@param tasksOut}. - * - * @return whether a split task was extracted and added to the given list - */ - private boolean extractAndAddSplitGroupedTask(@NonNull TaskInfo taskInfo, - @NonNull Map<Integer, TaskInfo> remainingTasks, - @NonNull ArrayList<GroupedTaskInfo> tasksOut) { - final int pairedTaskId = mSplitTasks.get(taskInfo.taskId, INVALID_TASK_ID); - if (pairedTaskId == INVALID_TASK_ID || !remainingTasks.containsKey(pairedTaskId)) { - return false; - } - - // Add both this task and its pair to the list, and mark the paired task to be - // skipped when it is encountered in the list - final TaskInfo pairedTaskInfo = remainingTasks.get(pairedTaskId); - remainingTasks.remove(taskInfo.taskId); - remainingTasks.remove(pairedTaskId); - tasksOut.add(GroupedTaskInfo.forSplitTasks(taskInfo, pairedTaskInfo, - mTaskSplitBoundsMap.get(pairedTaskId))); - return true; - } - - /** Dumps the set of tasks to protolog */ - private void dumpGroupedTasks(List<GroupedTaskInfo> groupedTasks, String reason) { - if (!WM_SHELL_TASK_OBSERVER.isEnabled()) { - return; - } - ProtoLog.v(WM_SHELL_TASK_OBSERVER, " Tasks (%s):", reason); - for (GroupedTaskInfo task : groupedTasks) { - ProtoLog.v(WM_SHELL_TASK_OBSERVER, " %s", task); - } - } - - /** - * Returns the top running leaf task ignoring {@param ignoreTaskToken} if it is specified. - * NOTE: This path currently makes assumptions that ignoreTaskToken is for the top task. + * Returns the top running leaf task. */ @Nullable - public RunningTaskInfo getTopRunningTask( - @Nullable WindowContainerToken ignoreTaskToken) { - final List<RunningTaskInfo> tasks = enableShellTopTaskTracking() - ? mVisibleTasks - : mActivityTaskManager.getTasks(2, false /* filterOnlyVisibleRecents */); - for (int i = 0; i < tasks.size(); i++) { - final RunningTaskInfo task = tasks.get(i); - if (task.token.equals(ignoreTaskToken)) { - continue; - } - return task; - } - return null; + public ActivityManager.RunningTaskInfo getTopRunningTask() { + List<ActivityManager.RunningTaskInfo> tasks = mActivityTaskManager.getTasks(1, + false /* filterOnlyVisibleRecents */); + return tasks.isEmpty() ? null : tasks.get(0); } /** - * Find the background task that match the given component. Ignores tasks match - * {@param ignoreTaskToken} if it is non-null. + * Find the background task that match the given component. */ @Nullable - public RecentTaskInfo findTaskInBackground(ComponentName componentName, - int userId, @Nullable WindowContainerToken ignoreTaskToken) { + public ActivityManager.RecentTaskInfo findTaskInBackground(ComponentName componentName, + int userId) { if (componentName == null) { return null; } - List<RecentTaskInfo> tasks = mActivityTaskManager.getRecentTasks( + List<ActivityManager.RecentTaskInfo> tasks = mActivityTaskManager.getRecentTasks( Integer.MAX_VALUE, ActivityManager.RECENT_IGNORE_UNAVAILABLE, ActivityManager.getCurrentUser()); for (int i = 0; i < tasks.size(); i++) { - final RecentTaskInfo task = tasks.get(i); + final ActivityManager.RecentTaskInfo task = tasks.get(i); if (task.isVisible) { continue; } - if (task.token.equals(ignoreTaskToken)) { - continue; - } if (componentName.equals(task.baseIntent.getComponent()) && userId == task.userId) { return task; } @@ -883,15 +477,15 @@ public class RecentTasksController implements TaskStackListenerCallback, } /** - * Find the background task (in the recent tasks list) that matches the given taskId. + * Find the background task that match the given taskId. */ @Nullable - public RecentTaskInfo findTaskInBackground(int taskId) { - List<RecentTaskInfo> tasks = mActivityTaskManager.getRecentTasks( + public ActivityManager.RecentTaskInfo findTaskInBackground(int taskId) { + List<ActivityManager.RecentTaskInfo> tasks = mActivityTaskManager.getRecentTasks( Integer.MAX_VALUE, ActivityManager.RECENT_IGNORE_UNAVAILABLE, ActivityManager.getCurrentUser()); for (int i = 0; i < tasks.size(); i++) { - final RecentTaskInfo task = tasks.get(i); + final ActivityManager.RecentTaskInfo task = tasks.get(i); if (task.isVisible) { continue; } @@ -902,25 +496,12 @@ public class RecentTasksController implements TaskStackListenerCallback, return null; } - /** - * Remove the background task that match the given taskId. This will remove the task regardless - * of whether it's active or recent. - */ - public boolean removeBackgroundTask(int taskId) { - return mActivityTaskManager.removeTask(taskId); - } - - /** Removes all recent tasks that are visible. */ - public void removeAllVisibleRecentTasks() throws RemoteException { - ActivityTaskManager.getService().removeAllVisibleRecentTasks(); - } - public void dump(@NonNull PrintWriter pw, String prefix) { final String innerPrefix = prefix + " "; pw.println(prefix + TAG); pw.println(prefix + " mListener=" + mListener); pw.println(prefix + "Tasks:"); - ArrayList<GroupedTaskInfo> recentTasks = getRecentTasks(Integer.MAX_VALUE, + ArrayList<GroupedRecentTaskInfo> recentTasks = getRecentTasks(Integer.MAX_VALUE, ActivityManager.RECENT_IGNORE_UNAVAILABLE, ActivityManager.getCurrentUser()); for (int i = 0; i < recentTasks.size(); i++) { pw.println(innerPrefix + recentTasks.get(i)); @@ -934,9 +515,9 @@ public class RecentTasksController implements TaskStackListenerCallback, private class RecentTasksImpl implements RecentTasks { @Override public void getRecentTasks(int maxNum, int flags, int userId, Executor executor, - Consumer<List<GroupedTaskInfo>> callback) { + Consumer<List<GroupedRecentTaskInfo>> callback) { mMainExecutor.execute(() -> { - List<GroupedTaskInfo> tasks = + List<GroupedRecentTaskInfo> tasks = RecentTasksController.this.getRecentTasks(maxNum, flags, userId); executor.execute(() -> callback.accept(tasks)); }); @@ -950,10 +531,8 @@ public class RecentTasksController implements TaskStackListenerCallback, } mTransitionHandler.addTransitionStateListener(new RecentsTransitionStateListener() { @Override - public void onTransitionStateChanged(@RecentsTransitionState int state) { - executor.execute(() -> { - listener.accept(RecentsTransitionStateListener.isAnimating(state)); - }); + public void onAnimationStateChanged(boolean running) { + executor.execute(() -> listener.accept(running)); } }); }); @@ -970,41 +549,6 @@ public class RecentTasksController implements TaskStackListenerCallback, } } - @Override - public void onUserChanged(int newUserId, @NonNull Context userContext) { - if (mDesktopUserRepositories.isEmpty()) return; - - DesktopRepository previousUserRepository = - mDesktopUserRepositories.get().getProfile(mUserId); - mUserId = newUserId; - DesktopRepository currentUserRepository = - mDesktopUserRepositories.get().getProfile(newUserId); - - // No-op if both profile ids map to the same user. - if (previousUserRepository.getUserId() == currentUserRepository.getUserId()) return; - previousUserRepository.removeActiveTasksListener(this); - currentUserRepository.addActiveTaskListener(this); - } - - @Override - public void onDeskAdded(int displayId, int deskId) { - notifyRecentTasksChanged(); - } - - @Override - public void onDeskRemoved(int displayId, int deskId) { - notifyRecentTasksChanged(); - } - - @Override - public void onActiveDeskChanged(int displayId, int newActiveDeskId, int oldActiveDeskId) { - // No-op for now, as only desk additions/removals affect the recent tasks list directly. - } - - @Override - public void onCanCreateDesksChanged(boolean canCreateDesks) { - // No-op for now. - } /** * The interface for calls from outside the host process. @@ -1022,33 +566,23 @@ public class RecentTasksController implements TaskStackListenerCallback, } @Override - public void onRunningTaskAppeared(RunningTaskInfo taskInfo) { + public void onRunningTaskAppeared(ActivityManager.RunningTaskInfo taskInfo) { mListener.call(l -> l.onRunningTaskAppeared(taskInfo)); } @Override - public void onRunningTaskVanished(RunningTaskInfo taskInfo) { + public void onRunningTaskVanished(ActivityManager.RunningTaskInfo taskInfo) { mListener.call(l -> l.onRunningTaskVanished(taskInfo)); } @Override - public void onRunningTaskChanged(RunningTaskInfo taskInfo) { + public void onRunningTaskChanged(ActivityManager.RunningTaskInfo taskInfo) { mListener.call(l -> l.onRunningTaskChanged(taskInfo)); } @Override - public void onTaskMovedToFront(GroupedTaskInfo taskToFront) { - mListener.call(l -> l.onTaskMovedToFront(taskToFront)); - } - - @Override - public void onTaskInfoChanged(ActivityManager.RunningTaskInfo taskInfo) { - mListener.call(l -> l.onTaskInfoChanged(taskInfo)); - } - - @Override - public void onVisibleTasksChanged(GroupedTaskInfo[] visibleTasks) { - mListener.call(l -> l.onVisibleTasksChanged(visibleTasks)); + public void onTaskMovedToFront(ActivityManager.RunningTaskInfo taskInfo) { + mListener.call(l -> l.onTaskMovedToFront(taskInfo)); } }; @@ -1084,38 +618,34 @@ public class RecentTasksController implements TaskStackListenerCallback, } @Override - public GroupedTaskInfo[] getRecentTasks(int maxNum, int flags, int userId) + public GroupedRecentTaskInfo[] getRecentTasks(int maxNum, int flags, int userId) throws RemoteException { if (mController == null) { // The controller is already invalidated -- just return an empty task list for now - return new GroupedTaskInfo[0]; + return new GroupedRecentTaskInfo[0]; } - final GroupedTaskInfo[][] out = new GroupedTaskInfo[][]{null}; + final GroupedRecentTaskInfo[][] out = new GroupedRecentTaskInfo[][]{null}; executeRemoteCallWithTaskPermission(mController, "getRecentTasks", - (controller) -> { - List<GroupedTaskInfo> tasks = controller.getRecentTasks( - maxNum, flags, userId); - out[0] = tasks.toArray(new GroupedTaskInfo[0]); - }, + (controller) -> out[0] = controller.getRecentTasks(maxNum, flags, userId) + .toArray(new GroupedRecentTaskInfo[0]), true /* blocking */); return out[0]; } @Override - public RunningTaskInfo[] getRunningTasks(int maxNum) { - final RunningTaskInfo[][] tasks = - new RunningTaskInfo[][]{null}; + public ActivityManager.RunningTaskInfo[] getRunningTasks(int maxNum) { + final ActivityManager.RunningTaskInfo[][] tasks = + new ActivityManager.RunningTaskInfo[][] {null}; executeRemoteCallWithTaskPermission(mController, "getRunningTasks", (controller) -> tasks[0] = ActivityTaskManager.getInstance().getTasks(maxNum) - .toArray(new RunningTaskInfo[0]), + .toArray(new ActivityManager.RunningTaskInfo[0]), true /* blocking */); return tasks[0]; } @Override public void startRecentsTransition(PendingIntent intent, Intent fillIn, Bundle options, - @Nullable WindowContainerTransaction wct, IApplicationThread appThread, IRecentsAnimationRunner listener) { if (mController.mTransitionHandler == null) { Slog.e(TAG, "Used shell-transitions startRecentsTransition without" @@ -1124,7 +654,7 @@ public class RecentTasksController implements TaskStackListenerCallback, } executeRemoteCallWithTaskPermission(mController, "startRecentsTransition", (controller) -> controller.mTransitionHandler.startRecentsTransition( - intent, fillIn, options, wct, appThread, listener)); + intent, fillIn, options, appThread, listener)); } } } diff --git a/wmshell/src/com/android/wm/shell/recents/RecentsTransitionHandler.java b/wmshell/src/com/android/wm/shell/recents/RecentsTransitionHandler.java index eb8c56ffd6..3a266d9bb3 100644 --- a/wmshell/src/com/android/wm/shell/recents/RecentsTransitionHandler.java +++ b/wmshell/src/com/android/wm/shell/recents/RecentsTransitionHandler.java @@ -19,42 +19,26 @@ package com.android.wm.shell.recents; import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; import static android.app.WindowConfiguration.ACTIVITY_TYPE_RECENTS; -import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; -import static android.view.Display.DEFAULT_DISPLAY; -import static android.view.Display.INVALID_DISPLAY; import static android.view.WindowManager.KEYGUARD_VISIBILITY_TRANSIT_FLAGS; import static android.view.WindowManager.TRANSIT_CHANGE; -import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_LOCKED; -import static android.view.WindowManager.TRANSIT_OPEN; import static android.view.WindowManager.TRANSIT_PIP; import static android.view.WindowManager.TRANSIT_SLEEP; import static android.view.WindowManager.TRANSIT_TO_FRONT; -import static android.window.DesktopModeFlags.ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX; -import static android.window.TransitionInfo.FLAG_MOVED_TO_TOP; import static android.window.TransitionInfo.FLAG_TRANSLUCENT; -import static com.android.wm.shell.recents.RecentsTransitionStateListener.TRANSITION_STATE_ANIMATING; -import static com.android.wm.shell.recents.RecentsTransitionStateListener.TRANSITION_STATE_NOT_RUNNING; -import static com.android.wm.shell.recents.RecentsTransitionStateListener.TRANSITION_STATE_REQUESTED; -import static com.android.wm.shell.shared.ShellSharedConstants.KEY_EXTRA_SHELL_CAN_HAND_OFF_ANIMATION; -import static com.android.wm.shell.shared.split.SplitBounds.KEY_EXTRA_SPLIT_BOUNDS; -import static com.android.wm.shell.transition.Transitions.TRANSIT_END_RECENTS_TRANSITION; -import static com.android.wm.shell.transition.Transitions.TRANSIT_REMOVE_PIP; -import static com.android.wm.shell.transition.Transitions.TRANSIT_START_RECENTS_TRANSITION; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_CAN_HAND_OFF_ANIMATION; +import static com.android.wm.shell.util.SplitBounds.KEY_EXTRA_SPLIT_BOUNDS; import android.annotation.Nullable; import android.annotation.SuppressLint; import android.app.ActivityManager; -import android.app.ActivityOptions; import android.app.ActivityTaskManager; import android.app.IApplicationThread; import android.app.PendingIntent; -import android.content.Context; import android.content.Intent; import android.graphics.Color; import android.graphics.Rect; -import android.os.Binder; import android.os.Bundle; import android.os.IBinder; import android.os.RemoteException; @@ -62,9 +46,11 @@ import android.util.ArrayMap; import android.util.IntArray; import android.util.Pair; import android.util.Slog; +import android.view.Display; +import android.view.IRecentsAnimationController; +import android.view.IRecentsAnimationRunner; import android.view.RemoteAnimationTarget; import android.view.SurfaceControl; -import android.window.DesktopExperienceFlags; import android.window.PictureInPictureSurfaceTransaction; import android.window.TaskSnapshot; import android.window.TransitionInfo; @@ -77,45 +63,32 @@ import androidx.annotation.NonNull; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.os.IResultReceiver; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.Flags; -import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.common.DisplayController; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer; +import com.android.wm.shell.common.pip.PipUtils; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.R; import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.pip.PipFlags; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.HomeTransitionObserver; import com.android.wm.shell.transition.Transitions; import java.util.ArrayList; -import java.util.List; import java.util.function.Consumer; -import java.util.function.Supplier; /** * Handles the Recents (overview) animation. Only one of these can run at a time. A recents * transition must be created via {@link #startRecentsTransition}. Anything else will be ignored. */ -public class RecentsTransitionHandler implements Transitions.TransitionHandler, - Transitions.TransitionObserver { +public class RecentsTransitionHandler implements Transitions.TransitionHandler { private static final String TAG = "RecentsTransitionHandler"; - // A placeholder for a synthetic transition that isn't backed by a true system transition - public static final IBinder SYNTHETIC_TRANSITION = new Binder(); - private final Transitions mTransitions; - private final ShellTaskOrganizer mShellTaskOrganizer; private final ShellExecutor mExecutor; @Nullable private final RecentTasksController mRecentTasksController; private IApplicationThread mAnimApp = null; private final ArrayList<RecentsController> mControllers = new ArrayList<>(); private final ArrayList<RecentsTransitionStateListener> mStateListeners = new ArrayList<>(); - private Supplier<SurfaceControl.Transaction> mFinishTransactionSupplier = null; /** * List of other handlers which might need to mix recents with other things. These are checked @@ -125,32 +98,20 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, private final HomeTransitionObserver mHomeTransitionObserver; private @Nullable Color mBackgroundColor; - private final DisplayController mDisplayController; - private final DesksOrganizer mDesksOrganizer; - public RecentsTransitionHandler( - @NonNull ShellInit shellInit, - @NonNull ShellTaskOrganizer shellTaskOrganizer, - @NonNull Transitions transitions, + public RecentsTransitionHandler(ShellInit shellInit, Transitions transitions, @Nullable RecentTasksController recentTasksController, - @NonNull HomeTransitionObserver homeTransitionObserver, - @NonNull DisplayController displayController, - @NonNull DesksOrganizer desksOrganizer) { - mShellTaskOrganizer = shellTaskOrganizer; + HomeTransitionObserver homeTransitionObserver) { mTransitions = transitions; mExecutor = transitions.getMainExecutor(); mRecentTasksController = recentTasksController; mHomeTransitionObserver = homeTransitionObserver; - mDisplayController = displayController; - mDesksOrganizer = desksOrganizer; + if (!Transitions.ENABLE_SHELL_TRANSITIONS) return; if (recentTasksController == null) return; - shellInit.addInitCallback(this::onInit, this); - } - - private void onInit() { - mRecentTasksController.setTransitionHandler(this); - mTransitions.addHandler(this); - mTransitions.registerObserver(this); + shellInit.addInitCallback(() -> { + recentTasksController.setTransitionHandler(this); + transitions.addHandler(this); + }, this); } /** Register a mixer handler. {@see RecentsMixedHandler}*/ @@ -177,104 +138,34 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, mBackgroundColor = color; } - /** - * Used for testing to provide a supplier for the transaction used in - * RecentsController#finishInner() which later gets merged into the final finish transaction. - */ - @VisibleForTesting - public void setFinishTransactionSupplier( - Supplier<SurfaceControl.Transaction> finishTransactionSupplier) { - mFinishTransactionSupplier = finishTransactionSupplier; - } - - /** - * Starts a new real/synthetic recents transition. - */ @VisibleForTesting public IBinder startRecentsTransition(PendingIntent intent, Intent fillIn, Bundle options, - @Nullable WindowContainerTransaction wct, IApplicationThread appThread, IRecentsAnimationRunner listener) { + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, + "RecentsTransitionHandler.startRecentsTransition"); + // only care about latest one. mAnimApp = appThread; - - for (int i = 0; i < mStateListeners.size(); i++) { - mStateListeners.get(i).onTransitionStateChanged(TRANSITION_STATE_REQUESTED); - } - // TODO(b/366021931): Formalize this later - final boolean isSyntheticRequest = options.getBoolean( - "is_synthetic_recents_transition", /* defaultValue= */ false); - final IBinder transition; - ActivityOptions activityOptions = ActivityOptions.fromBundle(options); - int displayId = activityOptions.getLaunchDisplayId(); - if (displayId == INVALID_DISPLAY) { - displayId = DEFAULT_DISPLAY; - } - if (isSyntheticRequest) { - transition = startSyntheticRecentsTransition(listener, displayId); - } else { - transition = startRealRecentsTransition(intent, fillIn, options, wct, listener, - displayId); - } - return transition; - } - - /** - * Starts a synthetic recents transition that is not backed by a real WM transition. - */ - private IBinder startSyntheticRecentsTransition(@NonNull IRecentsAnimationRunner listener, - int displayId) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "RecentsTransitionHandler.startRecentsTransition(synthetic)"); - final RecentsController lastController = getLastController(); - if (lastController != null) { - lastController.cancel(lastController.isSyntheticTransition() - ? "existing_running_synthetic_transition" - : "existing_running_transition"); - return null; - } - - // Create a new synthetic transition and start it immediately - final RecentsController controller = new RecentsController(listener); - controller.startSyntheticTransition(displayId); - mControllers.add(controller); - return SYNTHETIC_TRANSITION; - } - - /** - * Starts a real WM-backed recents transition. - */ - private IBinder startRealRecentsTransition(PendingIntent intent, Intent fillIn, Bundle options, - @Nullable WindowContainerTransaction requestWct, IRecentsAnimationRunner listener, - int displayId) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "RecentsTransitionHandler.startRecentsTransition, displayId=%d", displayId); - - final WindowContainerTransaction wct = requestWct != null - ? requestWct : new WindowContainerTransaction(); + WindowContainerTransaction wct = new WindowContainerTransaction(); wct.sendPendingIntent(intent, fillIn, options); - - // Find the mixed handler which should handle this request (if we are in a state where a - // mixed handler is needed). This is slightly convoluted because starting the transition - // requires the handler, but the mixed handler also needs a reference to the transition. + final RecentsController controller = new RecentsController(listener); RecentsMixedHandler mixer = null; Consumer<IBinder> setTransitionForMixer = null; for (int i = 0; i < mMixers.size(); ++i) { - setTransitionForMixer = mMixers.get(i).handleRecentsRequest(displayId); + setTransitionForMixer = mMixers.get(i).handleRecentsRequest(wct); if (setTransitionForMixer != null) { mixer = mMixers.get(i); break; } } - final int transitionType = Flags.enableRecentsBookendTransition() - ? TRANSIT_START_RECENTS_TRANSITION - : TRANSIT_TO_FRONT; - final IBinder transition = mTransitions.startTransition(transitionType, - wct, mixer == null ? this : mixer); + final IBinder transition = mTransitions.startTransition(TRANSIT_TO_FRONT, wct, + mixer == null ? this : mixer); + for (int i = 0; i < mStateListeners.size(); i++) { + mStateListeners.get(i).onTransitionStarted(transition); + } if (mixer != null) { setTransitionForMixer.accept(transition); } - - final RecentsController controller = new RecentsController(listener); if (transition != null) { controller.setTransition(transition); mControllers.add(controller); @@ -296,28 +187,11 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, return null; } - /** - * Returns if there is currently a pending or active recents transition. - */ - @Nullable - private RecentsController getLastController() { - return !mControllers.isEmpty() ? mControllers.getLast() : null; - } - - /** - * Finds an existing controller for the provided {@param transition}, or {@code null} if none - * exists. - */ - @Nullable - @VisibleForTesting - RecentsController findController(@NonNull IBinder transition) { + private int findController(IBinder transition) { for (int i = mControllers.size() - 1; i >= 0; --i) { - final RecentsController controller = mControllers.get(i); - if (controller.mTransition == transition) { - return controller; - } + if (mControllers.get(i).mTransition == transition) return i; } - return null; + return -1; } @Override @@ -325,12 +199,13 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, SurfaceControl.Transaction startTransaction, SurfaceControl.Transaction finishTransaction, Transitions.TransitionFinishCallback finishCallback) { - final RecentsController controller = findController(transition); - if (controller == null) { + final int controllerIdx = findController(transition); + if (controllerIdx < 0) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "RecentsTransitionHandler.startAnimation: no controller found"); return false; } + final RecentsController controller = mControllers.get(controllerIdx); final IApplicationThread animApp = mAnimApp; mAnimApp = null; if (!controller.start(info, startTransaction, finishTransaction, finishCallback)) { @@ -344,17 +219,16 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, @Override public void mergeAnimation(IBinder transition, TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - IBinder mergeTarget, + SurfaceControl.Transaction t, IBinder mergeTarget, Transitions.TransitionFinishCallback finishCallback) { - final RecentsController controller = findController(mergeTarget); - if (controller == null) { + final int targetIdx = findController(mergeTarget); + if (targetIdx < 0) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "RecentsTransitionHandler.mergeAnimation: no controller found"); return; } - controller.merge(info, startT, finishT, finishCallback); + final RecentsController controller = mControllers.get(targetIdx); + controller.merge(info, t, finishCallback); } @Override @@ -370,21 +244,8 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, } } - @Override - public void onTransitionReady(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction) { - RecentsController controller = findController(SYNTHETIC_TRANSITION); - if (controller != null) { - // Cancel the existing synthetic transition if there is one - controller.cancel("incoming_transition"); - } - } - /** There is only one of these and it gets reset on finish. */ - @VisibleForTesting - class RecentsController extends IRecentsAnimationController.Stub { - + private class RecentsController extends IRecentsAnimationController.Stub { private final int mInstanceId; private IRecentsAnimationRunner mListener; @@ -393,16 +254,11 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, private SurfaceControl.Transaction mFinishTransaction = null; /** - * List of tasks that we are switching away from via this transition, ordered from top most - * to bottom most in z-order. Upon finish, these pausing tasks will become invisible. + * List of tasks that we are switching away from via this transition. Upon finish, these + * pausing tasks will become invisible. * These need to be ordered since the order must be restored if there is no task-switch. */ private ArrayList<TaskState> mPausingTasks = null; - /** - * The desk that we are switching away from via this transition. Upon finish it will become - * invisible. It may be included in {@link RecentsController#mPausingTasks}. - */ - private WindowContainerToken mPausingDesk = null; /** * List of tasks were pausing but closed in a subsequent merged transition. If a @@ -426,8 +282,6 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, private boolean mPausingSeparateHome = false; private ArrayMap<SurfaceControl, SurfaceControl> mLeashMap = null; private PictureInPictureSurfaceTransaction mPipTransaction = null; - // This is the transition that backs the entire recents transition, and the one that the - // pending finish transition below will be merged into private IBinder mTransition = null; private boolean mKeyguardLocked = false; private boolean mWillFinishToHome = false; @@ -447,23 +301,13 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, // next called. private Pair<int[], TaskSnapshot[]> mPendingPauseSnapshotsForCancel; - // Used to track a pending finish transition, this is only non-null if - // enableRecentsBookendTransition() is enabled - private IBinder mPendingFinishTransition; - private IResultReceiver mPendingRunnerFinishCb; - // This stores the pending finish transaction to merge with the actual finish transaction - private SurfaceControl.Transaction mPendingFinishTransaction; - RecentsController(IRecentsAnimationRunner listener) { mInstanceId = System.identityHashCode(this); mListener = listener; mDeathHandler = () -> { - mExecutor.execute(() -> { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.DeathRecipient: binder died", mInstanceId); - finishInner(mWillFinishToHome, false /* leaveHint */, null /* finishCb */, - "deathRecipient"); - }); + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, + "[%d] RecentsController.DeathRecipient: binder died", mInstanceId); + finish(mWillFinishToHome, false /* leaveHint */, null /* finishCb */); }; try { mListener.asBinder().linkToDeath(mDeathHandler, 0 /* flags */); @@ -473,9 +317,6 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, } } - /** - * Sets the started transition for this instance of the recents transition. - */ void setTransition(IBinder transition) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "[%d] RecentsController.setTransition: id=%s", mInstanceId, transition); @@ -489,10 +330,6 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, } void cancel(boolean toHome, boolean withScreenshots, String reason) { - if (cancelSyntheticTransition(reason)) { - return; - } - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "[%d] RecentsController.cancel: toHome=%b reason=%s", mInstanceId, toHome, reason); @@ -504,7 +341,7 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, } } if (mFinishCB != null) { - finishInner(toHome, false /* userLeave */, null /* finishCb */, "cancel"); + finishInner(toHome, false /* userLeave */, null /* finishCb */); } else { cleanUp(); } @@ -588,125 +425,17 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, } mFinishTransaction = null; mPausingTasks = null; - mPausingDesk = null; mClosingTasks = null; mOpeningTasks = null; mInfo = null; mTransition = null; mPendingPauseSnapshotsForCancel = null; - mPipTaskId = -1; - mPipTask = null; - mPipTransaction = null; - mPendingRunnerFinishCb = null; - mPendingFinishTransition = null; - if (mPendingFinishTransaction != null) { - mPendingFinishTransaction.close(); - } - mPendingFinishTransaction = null; mControllers.remove(this); for (int i = 0; i < mStateListeners.size(); i++) { - mStateListeners.get(i).onTransitionStateChanged(TRANSITION_STATE_NOT_RUNNING); + mStateListeners.get(i).onAnimationStateChanged(false); } } - /** - * Starts a new transition that is not backed by a system transition. - */ - void startSyntheticTransition(int displayId) { - mTransition = SYNTHETIC_TRANSITION; - - // TODO(b/366021931): Update mechanism for pulling the home task, for now add home as - // both opening and closing since there's some pre-existing - // dependencies on having a closing task - final ActivityManager.RunningTaskInfo homeTask = - mShellTaskOrganizer.getRunningTasks(displayId).stream() - .filter(task -> task.getActivityType() == ACTIVITY_TYPE_HOME) - .findFirst() - .get(); - final RemoteAnimationTarget openingTarget = TransitionUtil.newSyntheticTarget( - homeTask, mShellTaskOrganizer.getHomeTaskSurface(displayId), TRANSIT_OPEN, - 0, true /* isTranslucent */); - final RemoteAnimationTarget closingTarget = TransitionUtil.newSyntheticTarget( - homeTask, mShellTaskOrganizer.getHomeTaskSurface(displayId), TRANSIT_CLOSE, - 0, true /* isTranslucent */); - final ArrayList<RemoteAnimationTarget> apps = new ArrayList<>(); - apps.add(openingTarget); - apps.add(closingTarget); - try { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.start: calling onAnimationStart with %d apps, " - + "displayId=%d", - mInstanceId, apps.size(), displayId); - mListener.onAnimationStart(this, - apps.toArray(new RemoteAnimationTarget[apps.size()]), - new RemoteAnimationTarget[0], - new Rect(0, 0, 0, 0), new Rect(), new Bundle(), - null); - for (int i = 0; i < mStateListeners.size(); i++) { - mStateListeners.get(i).onTransitionStateChanged(TRANSITION_STATE_ANIMATING); - } - } catch (RemoteException e) { - Slog.e(TAG, "Error starting recents animation", e); - cancel("startSynthetricTransition() failed"); - } - } - - /** - * Returns whether this transition is backed by a real system transition or not. - */ - boolean isSyntheticTransition() { - return mTransition == SYNTHETIC_TRANSITION; - } - - /** - * Called when a synthetic transition is canceled. - */ - boolean cancelSyntheticTransition(String reason) { - if (!isSyntheticTransition()) { - return false; - } - - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.cancelSyntheticTransition: reason=%s", - mInstanceId, reason); - try { - // TODO(b/366021931): Notify the correct tasks once we build actual targets, and - // clean up leashes accordingly - mListener.onAnimationCanceled(new int[0], new TaskSnapshot[0]); - } catch (RemoteException e) { - Slog.e(TAG, "Error canceling previous recents animation", e); - } - cleanUp(); - return true; - } - - /** - * Called when a synthetic transition is finished. - * @return - */ - boolean finishSyntheticTransition(IResultReceiver runnerFinishCb, String reason) { - if (!isSyntheticTransition()) { - return false; - } - - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.finishSyntheticTransition: reason=%s", mInstanceId, - reason); - if (runnerFinishCb != null) { - try { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.finishInner: calling finish callback", - mInstanceId); - runnerFinishCb.send(0, null); - } catch (RemoteException e) { - Slog.e(TAG, "Failed to report transition finished", e); - } - } - // TODO(b/366021931): Clean up leashes accordingly - cleanUp(); - return true; - } - boolean start(TransitionInfo info, SurfaceControl.Transaction t, SurfaceControl.Transaction finishT, Transitions.TransitionFinishCallback finishCB) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, @@ -747,7 +476,6 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, mFinishCB = finishCB; mFinishTransaction = finishT; mPausingTasks = new ArrayList<>(); - mPausingDesk = null; mClosingTasks = new ArrayList<>(); mOpeningTasks = new ArrayList<>(); mLeashMap = new ArrayMap<>(); @@ -817,8 +545,6 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, // the pausing apps. t.setLayer(target.leash, layer); } else if (taskInfo != null && taskInfo.topActivityType == ACTIVITY_TYPE_HOME) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - " not handling home taskId=%d", taskInfo.taskId); // do nothing } else if (TransitionUtil.isOpeningType(change.getMode())) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, @@ -829,19 +555,11 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, // Root tasks if (TransitionUtil.isClosingType(change.getMode())) { final int layer = aboveLayers - i; + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, + " adding pausing taskId=%d at layer=%d", taskInfo.taskId, layer); // raise closing (pausing) task to "above" layer so it isn't covered t.setLayer(change.getLeash(), layer); mPausingTasks.add(new TaskState(change, null /* leash */)); - if (mDesksOrganizer.isDeskChange(change)) { - mPausingDesk = change.getContainer(); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - " adding pausing deskId=%d at layer=%d", taskInfo.taskId, - layer); - } else { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - " adding pausing taskId=%d at layer=%d", taskInfo.taskId, - layer); - } } else if (TransitionUtil.isOpeningType(change.getMode())) { final int layer = belowLayers - i; ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, @@ -853,8 +571,7 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, " unhandled root taskId=%d", taskInfo.taskId); } - } else if (TransitionUtil.isDividerBar(change) - || TransitionUtil.isDimLayer(change)) { + } else if (TransitionUtil.isDividerBar(change)) { final RemoteAnimationTarget target = TransitionUtil.newTarget(change, belowLayers - i, info, t, mLeashMap); // Add this as a app and we will separate them on launcher side by window type. @@ -882,9 +599,9 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, mListener.onAnimationStart(this, apps.toArray(new RemoteAnimationTarget[apps.size()]), wallpapers.toArray(new RemoteAnimationTarget[wallpapers.size()]), - new Rect(0, 0, 0, 0), new Rect(), b, info); + new Rect(0, 0, 0, 0), new Rect(), b); for (int i = 0; i < mStateListeners.size(); i++) { - mStateListeners.get(i).onTransitionStateChanged(TRANSITION_STATE_ANIMATING); + mStateListeners.get(i).onAnimationStateChanged(true); } } catch (RemoteException e) { Slog.e(TAG, "Error starting recents animation", e); @@ -945,7 +662,7 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, // Set the callback once again so we can finish correctly. mFinishCB = finishCB; finishInner(true /* toHome */, false /* userLeave */, - null /* finishCb */, "takeOverAnimation"); + null /* finishCb */); }, updatedStates); }); } @@ -966,45 +683,16 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, } } - /** - * Note: because we use a book-end transition to finish the recents transition, we must - * either always merge the incoming transition, or always cancel the recents transition - * if we don't handle the incoming transition to ensure that the end transition is queued - * before any unhandled transitions. - */ @SuppressLint("NewApi") - void merge(TransitionInfo info, SurfaceControl.Transaction startT, - SurfaceControl.Transaction finishT, + void merge(TransitionInfo info, SurfaceControl.Transaction t, Transitions.TransitionFinishCallback finishCallback) { if (mFinishCB == null) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "[%d] RecentsController.merge: skip, no finish callback", mInstanceId); - // This was no-op'd (likely a repeated start) and we've already completed finish. + // This was no-op'd (likely a repeated start) and we've already sent finish. return; } - - if (Flags.enableRecentsBookendTransition()) { - if (info.getType() == TRANSIT_END_RECENTS_TRANSITION) { - // This is a pending finish, so merge the end transition to trigger completing - // the cleanup of the recents transition - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.merge: TRANSIT_END_RECENTS_TRANSITION", - mInstanceId); - consumeMerge(info, startT, finishT, finishCallback); - return; - } else if (mPendingFinishTransition != null) { - // This transition is interrupting a pending finish that was already sent, so - // pre-empt the pending finish transition since the state has already changed - // in the core - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.merge: Awaiting TRANSIT_END_RECENTS_TRANSITION", - mInstanceId); - onFinishInner(null /* wct */); - return; - } - } - if (info.getType() == TRANSIT_SLEEP) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "[%d] RecentsController.merge: transit_sleep", mInstanceId); @@ -1012,28 +700,17 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, cancel("transit_sleep"); return; } - - if (info.getType() == TRANSIT_REMOVE_PIP) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.merge: transit_remove_pip", mInstanceId); - // Cancel the merge if transition is removing PiP; PiP is on top of everything else. - cancel(true /* toHome */, mWillFinishToHome /* withScreenshots */, - "transit_remove_pip"); - return; - } - if (mKeyguardLocked || (info.getFlags() & KEYGUARD_VISIBILITY_TRANSIT_FLAGS) != 0) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "[%d] RecentsController.merge: keyguard is locked", mInstanceId); // We will not accept new changes if we are swiping over the keyguard. - cancel("keyguard_locked"); + cancel(true /* toHome */, false /* withScreenshots */, "keyguard_locked"); return; } ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "[%d] RecentsController.merge", mInstanceId); // Keep all tasks in one list because order matters. ArrayList<TransitionInfo.Change> openingTasks = null; - TransitionInfo.Change openingDesk = null; IntArray openingTaskIsLeafs = null; ArrayList<TransitionInfo.Change> closingTasks = null; mOpeningSeparateHome = false; @@ -1048,20 +725,10 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); if (taskInfo != null && taskInfo.configuration.windowConfiguration.isAlwaysOnTop()) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] Canceling due to always on top task", mInstanceId); // Tasks that are always on top (e.g. bubbles), will handle their own transition // as they are on top of everything else. So cancel the merge here. - cancel("task #" + taskInfo.taskId + " is always_on_top"); - return; - } - if (TransitionUtil.isClosingType(change.getMode()) - && taskInfo != null && taskInfo.lastParentTaskIdBeforePip > 0) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] Canceling due to restoring PIP activity", mInstanceId); - // Pinned task is closing as a side effect of the removal of its original Task, - // such transition should be handled by PiP. So cancel the merge here. - cancel("task #" + taskInfo.taskId + " is removed with its original parent"); + cancel(false /* toHome */, false /* withScreenshots */, + "task #" + taskInfo.taskId + " is always_on_top"); return; } final boolean isRootTask = taskInfo != null @@ -1072,14 +739,9 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, final boolean isLeafTask = leafTaskFilter.test(change); if (TransitionUtil.isOpeningType(change.getMode()) || TransitionUtil.isOrderOnly(change)) { - final String chgTypeMsg = TransitionUtil.isOpeningType(change.getMode()) - ? "Opening" : "Changing"; if (isRecentsTask) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] %s recents", mInstanceId, chgTypeMsg); recentsOpening = change; } else if (isRootTask || isLeafTask) { - String containerTypeMsg = "task"; if (isLeafTask && taskInfo.topActivityType == ACTIVITY_TYPE_HOME) { // This is usually a 3p launcher mOpeningSeparateHome = true; @@ -1089,22 +751,12 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, openingTaskIsLeafs = new IntArray(); } openingTasks.add(change); - if (mDesksOrganizer.isDeskChange(change)) { - openingDesk = change; - containerTypeMsg = "desk"; - } openingTaskIsLeafs.add(isLeafTask ? 1 : 0); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] %s %s", mInstanceId, chgTypeMsg, containerTypeMsg); } } else if (TransitionUtil.isClosingType(change.getMode())) { if (isRecentsTask) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] Closing recents", mInstanceId); foundRecentsClosing = true; } else if (isRootTask || isLeafTask) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] Closing task", mInstanceId); if (closingTasks == null) { closingTasks = new ArrayList<>(); } @@ -1115,36 +767,16 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, // transition handler can play the animation such as rotation effect. if (change.hasFlags(TransitionInfo.FLAG_IS_DISPLAY) && info.getType() == TRANSIT_CHANGE) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] Canceling due to display change", mInstanceId); // This call to cancel will use the screenshots taken preemptively in // handleMidTransitionRequest() prior to the display changing - cancel(true /* toHome */, true /* withScreenshots */, "display change"); + cancel(mWillFinishToHome, true /* withScreenshots */, "display change"); return; } // Don't consider order-only & non-leaf changes as changing apps. if (!TransitionUtil.isOrderOnly(change) && isLeafTask) { hasChangingApp = true; - // Check if the changing app is moving to top and fullscreen. This handles - // the case where we moved from desktop to recents and launching a desktop - // task in fullscreen. - if ((change.getFlags() & FLAG_MOVED_TO_TOP) != 0 - && taskInfo != null - && taskInfo.getWindowingMode() - == WINDOWING_MODE_FULLSCREEN) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] Moving task to fullscreen", mInstanceId); - if (openingTasks == null) { - openingTasks = new ArrayList<>(); - openingTaskIsLeafs = new IntArray(); - } - openingTasks.add(change); - openingTaskIsLeafs.add(1); - } } else if (isLeafTask && taskInfo.topActivityType == ACTIVITY_TYPE_HOME - && !isRecentsTask) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] Opening home", mInstanceId); + && !isRecentsTask ) { // Unless it is a 3p launcher. This means that the 3p launcher was already // visible (eg. the "pausing" task is translucent over the 3p launcher). // Treat it as if we are "re-opening" the 3p launcher. @@ -1164,7 +796,7 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, sendCancelWithSnapshots(); mExecutor.executeDelayed( () -> finishInner(true /* toHome */, false /* userLeaveHint */, - null /* finishCb */, "merge"), 0); + null /* finishCb */), 0); return; } if (recentsOpening != null) { @@ -1177,8 +809,8 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, Slog.e(TAG, "Returning to recents without closing any opening tasks."); } // Setup may hide it initially since it doesn't know that overview was still active. - startT.show(recentsOpening.getLeash()); - startT.setAlpha(recentsOpening.getLeash(), 1.f); + t.show(recentsOpening.getLeash()); + t.setAlpha(recentsOpening.getLeash(), 1.f); mState = STATE_NORMAL; } boolean didMergeThings = false; @@ -1212,27 +844,19 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, didMergeThings = true; } } - ArrayList<RemoteAnimationTarget> appearedTargets = null; + RemoteAnimationTarget[] appearedTargets = null; if (openingTasks != null && openingTasks.size() > 0) { // Switching to some new tasks, add to mOpening and remove from mPausing. Also, // enter NEW_TASK state since this will start the switch-to animation. final int layer = mInfo.getChanges().size() * 3; + int openingLeafCount = 0; for (int i = 0; i < openingTaskIsLeafs.size(); ++i) { - if (openingTaskIsLeafs.get(i) > 0) { - // There is at least one opening leaf task, so initialize the appeared - // targets list - appearedTargets = new ArrayList<>(); - break; - } + openingLeafCount += openingTaskIsLeafs.get(i); } - - // An initially paused and now opening desk means we're returning to the desk. We - // save it here to identify whether any of the opening tasks below belong to the - // desk, and are thus part of a returning-to-desk operation. - final TransitionInfo.Change openingPausedDesk = mPausingDesk != null - && openingDesk != null - && mPausingDesk.equals(openingDesk.getContainer()) ? openingDesk : null; - boolean onlyOpeningPausedTasksOrPausedDesk = true; + if (openingLeafCount > 0) { + appearedTargets = new RemoteAnimationTarget[openingLeafCount]; + } + int nextTargetIdx = 0; for (int i = 0; i < openingTasks.size(); ++i) { final TransitionInfo.Change change = openingTasks.get(i); final boolean isLeaf = openingTaskIsLeafs.get(i) == 1; @@ -1245,89 +869,55 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, if (pausingIdx >= 0) { // Something is showing/opening a previously-pausing app. if (isLeaf) { - appearedTargets.add(TransitionUtil.newTarget( - change, layer, mPausingTasks.get(pausingIdx).mLeash)); - // In multi-desk mode, we can have a root task which the leaf tasks are - // relative to, but if both the root and leaf are a part of the - // transition then Transitions#setupStartState() will incorrectly apply - // an offset to the task surface which is already leashed. Unlike the - // start of the transition, we don't end up going through - // TransitionUtil#createLeash(), which normally resets the position of - // the task within the leash, so we have to do it manually here - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue()) { - startT.setPosition(change.getLeash(), /* x= */ 0, /* y= */ 0); - } + appearedTargets[nextTargetIdx++] = TransitionUtil.newTarget( + change, layer, mPausingTasks.get(pausingIdx).mLeash); } final TaskState pausingTask = mPausingTasks.remove(pausingIdx); ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - " opening pausing %staskId=%d", isLeaf ? "leaf " : "non-leaf ", + " opening pausing %staskId=%d", isLeaf ? "leaf " : "", pausingTask.mTaskInfo.taskId); mOpeningTasks.add(pausingTask); // Setup hides opening tasks initially, so make it visible again (since we // are already showing it). - startT.show(change.getLeash()); - startT.setAlpha(change.getLeash(), 1.f); + t.show(change.getLeash()); + t.setAlpha(change.getLeash(), 1.f); } else if (isLeaf) { // We are receiving new opening leaf tasks, so convert to onTasksAppeared. final RemoteAnimationTarget target = TransitionUtil.newTarget( - change, layer, info, startT, mLeashMap); - appearedTargets.add(target); + change, layer, info, t, mLeashMap); + appearedTargets[nextTargetIdx++] = target; // reparent into the original `mInfo` since that's where we are animating. - final TransitionInfo.Root root = TransitionUtil.getRootFor(change, mInfo); + final int rootIdx = TransitionUtil.rootIndexFor(change, mInfo); final boolean wasClosing = closingIdx >= 0; - startT.reparent(target.leash, root.getLeash()); - startT.setPosition(target.leash, - change.getStartAbsBounds().left - root.getOffset().x, - change.getStartAbsBounds().top - root.getOffset().y); - startT.setLayer(target.leash, layer); + t.reparent(target.leash, mInfo.getRoot(rootIdx).getLeash()); + t.setLayer(target.leash, layer); if (wasClosing) { // App was previously visible and is closing - startT.show(target.leash); - startT.setAlpha(target.leash, 1f); + t.show(target.leash); + t.setAlpha(target.leash, 1f); // Also override the task alpha as it was set earlier when dispatching // the transition and setting up the leash to hide the - startT.setAlpha(change.getLeash(), 1f); + t.setAlpha(change.getLeash(), 1f); } else { // Hide the animation leash, let the listener show it - startT.hide(target.leash); + t.hide(target.leash); } + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, + " opening new leaf taskId=%d wasClosing=%b", + target.taskId, wasClosing); mOpeningTasks.add(new TaskState(change, target.leash)); - if (!DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue()) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - " opening new leaf taskId=%d wasClosing=%b", - target.taskId, wasClosing); - onlyOpeningPausedTasksOrPausedDesk = false; - } else { - final boolean childOfOpeningPausedDesk = openingPausedDesk != null - && change.getTaskInfo().parentTaskId - == openingPausedDesk.getTaskInfo().taskId; - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - " opening new leaf taskId=%d wasClosing=%b " - + "childOfOpeningPausedDesk=%b", - target.taskId, wasClosing, childOfOpeningPausedDesk); - if (!childOfOpeningPausedDesk) { - onlyOpeningPausedTasksOrPausedDesk = false; - } - } } else { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, " opening new taskId=%d", change.getTaskInfo().taskId); - startT.setLayer(change.getLeash(), layer); + t.setLayer(change.getLeash(), layer); // Setup hides opening tasks initially, so make it visible since recents // is only animating the leafs. - startT.show(change.getLeash()); + t.show(change.getLeash()); mOpeningTasks.add(new TaskState(change, null)); - onlyOpeningPausedTasksOrPausedDesk = false; } } didMergeThings = true; - if (!onlyOpeningPausedTasksOrPausedDesk) { - // If we are only opening paused leaf tasks, then we aren't actually quick - // switching or launching a new task from overview, and if Launcher requests to - // finish(toHome=false) as a response to the pausing tasks being opened again, - // we should allow that to be considered returningToApp - mState = STATE_NEW_TASK; - } + mState = STATE_NEW_TASK; } if (mPausingTasks.isEmpty()) { // The pausing tasks may be removed by the incoming closing tasks. @@ -1338,55 +928,30 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, // Activity only transition, so consume the merge as it doesn't affect the rest of // recents. Slog.d(TAG, "Got an activity only transition during recents, so apply directly"); - mergeActivityOnly(info, startT); + mergeActivityOnly(info, t); } else if (!didMergeThings) { // Didn't recognize anything in incoming transition so don't merge it. Slog.w(TAG, "Don't know how to merge this transition, foundRecentsClosing=" + foundRecentsClosing + " recentsTaskId=" + mRecentsTaskId); if (foundRecentsClosing || mRecentsTaskId < 0) { mWillFinishToHome = false; - cancel("didn't merge"); + cancel(false /* toHome */, false /* withScreenshots */, "didn't merge"); } return; } - // At this point, we are accepting the merge. - consumeMerge(info, startT, finishT, finishCallback); - - // Notify Launcher of the new opening tasks if necessary - boolean passTransitionInfo = ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX.isTrue(); + t.apply(); + // not using the incoming anim-only surfaces + info.releaseAnimSurfaces(); if (appearedTargets != null) { try { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "[%d] RecentsController.merge: calling onTasksAppeared", mInstanceId); - final RemoteAnimationTarget[] targets = appearedTargets.toArray( - new RemoteAnimationTarget[0]); - mListener.onTasksAppeared(targets, passTransitionInfo ? info : null); + mListener.onTasksAppeared(appearedTargets); } catch (RemoteException e) { Slog.e(TAG, "Error sending appeared tasks to recents animation", e); } } - } - - /** - * Consumes the merge of the other given transition. - */ - private void consumeMerge(TransitionInfo info, SurfaceControl.Transaction startT, - SurfaceControl.Transaction finishT, - Transitions.TransitionFinishCallback finishCallback) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.merge: consuming merge", - mInstanceId); - - startT.apply(); - // Since we're accepting the merge, update the finish transaction so that changes via - // that transaction will be applied on top of those of the merged transitions - mFinishTransaction = finishT; - boolean passTransitionInfo = ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX.isTrue(); - if (!passTransitionInfo) { - // not using the incoming anim-only surfaces - info.releaseAnimSurfaces(); - } finishCallback.onTransitionFinished(null /* wct */); } @@ -1403,6 +968,19 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, } } + @Override + public TaskSnapshot screenshotTask(int taskId) { + try { + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, + "[%d] RecentsController.screenshotTask: taskId=%d", mInstanceId, taskId); + return ActivityTaskManager.getService().takeTaskSnapshot(taskId, + true /* updateCache */); + } catch (RemoteException e) { + Slog.e(TAG, "Failed to screenshot task", e); + } + return null; + } + @Override public void setInputConsumerEnabled(boolean enabled) { mExecutor.execute(() -> { @@ -1413,7 +991,7 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, return; } final int displayId = mInfo.getRootCount() > 0 ? mInfo.getRoot(0).getDisplayId() - : DEFAULT_DISPLAY; + : Display.DEFAULT_DISPLAY; // transient launches don't receive focus automatically. Since we are taking over // the gesture now, take focus explicitly. // This also moves recents back to top if the user gestured before a switch @@ -1429,6 +1007,10 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, }); } + @Override + public void setAnimationTargetsBehindSystemBars(boolean behindSystemBars) { + } + @Override public void setFinishTaskTransaction(int taskId, PictureInPictureSurfaceTransaction finishTransaction, SurfaceControl overlay) { @@ -1446,113 +1028,54 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, @Override @SuppressLint("NewApi") public void finish(boolean toHome, boolean sendUserLeaveHint, IResultReceiver finishCb) { - mExecutor.execute(() -> finishInner(toHome, sendUserLeaveHint, finishCb, - "requested")); + mExecutor.execute(() -> finishInner(toHome, sendUserLeaveHint, finishCb)); } - /** - * @param runnerFinishCb The remote finish callback to run after finish is complete, this is - * not the same as mFinishCb which reports the transition is finished - * to WM. - */ private void finishInner(boolean toHome, boolean sendUserLeaveHint, - IResultReceiver runnerFinishCb, String reason) { - if (finishSyntheticTransition(runnerFinishCb, reason)) { - return; - } - - if (mFinishCB == null || (Flags.enableRecentsBookendTransition() - && mPendingFinishTransition != null)) { + IResultReceiver runnerFinishCb) { + if (mFinishCB == null) { Slog.e(TAG, "Duplicate call to finish"); - if (runnerFinishCb != null) { - try { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.finishInner: calling finish callback", - mInstanceId); - runnerFinishCb.send(0, null); - } catch (RemoteException e) { - Slog.e(TAG, "Failed to report transition finished", e); - } - } return; } - // Note: returning to a desk tile, whether it be by clicking the tile or one of the - // existing exploded tasks is considered to be returning to app. boolean returningToApp = !toHome && !mWillFinishToHome && mPausingTasks != null && mState == STATE_NORMAL; - if (!Flags.enableRecentsBookendTransition()) { - // This is only necessary when the recents transition is finished using a finishWCT, - // otherwise a new transition will notify the relevant observers - if (returningToApp && allAppsAreTranslucent(mPausingTasks)) { - mHomeTransitionObserver.notifyHomeVisibilityChanged(true); - } else if (!toHome && mState == STATE_NEW_TASK - && allAppsAreTranslucent(mOpeningTasks)) { - // We are opening a translucent app. Launcher is still visible so we do nothing. - } else if (!toHome) { - // For some transitions, we may have notified home activity that it became - // visible. We need to notify the observer that we are no longer going home. - mHomeTransitionObserver.notifyHomeVisibilityChanged(false); - } + if (returningToApp && allAppsAreTranslucent(mPausingTasks)) { + mHomeTransitionObserver.notifyHomeVisibilityChanged(true); + } else if (!toHome) { + // For some transitions, we may have notified home activity that it became visible. + // We need to notify the observer that we are no longer going home. + mHomeTransitionObserver.notifyHomeVisibilityChanged(false); } - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "[%d] RecentsController.finishInner: toHome=%b userLeave=%b " - + "willFinishToHome=%b state=%d hasPausingTasks=%b reason=%s", - mInstanceId, toHome, sendUserLeaveHint, mWillFinishToHome, mState, - mPausingTasks != null, reason); + + "willFinishToHome=%b state=%d", + mInstanceId, toHome, sendUserLeaveHint, mWillFinishToHome, mState); + final Transitions.TransitionFinishCallback finishCB = mFinishCB; + mFinishCB = null; - final SurfaceControl.Transaction t = mFinishTransactionSupplier != null - ? mFinishTransactionSupplier.get() - : new SurfaceControl.Transaction(); + final SurfaceControl.Transaction t = mFinishTransaction; final WindowContainerTransaction wct = new WindowContainerTransaction(); - // The following code must set this if it is changing anything in core that might affect - // transitions as a part of finishing the recents transition - boolean requiresBookendTransition = false; - if (mKeyguardLocked && mRecentsTask != null) { if (toHome) wct.reorder(mRecentsTask, true /* toTop */); else wct.restoreTransientOrder(mRecentsTask); - // We are manipulating the window hierarchy, which should only be done with the - // bookend transition - requiresBookendTransition = true; } if (returningToApp) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, " returning to app"); // The gesture is returning to the pausing-task(s) rather than continuing with - // recents, so end the transition by moving the app(s) back to the top (and also - // re-showing their tasks). - final List<TaskState> tasksToShowFrontToBack = new ArrayList<>(); - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue()) { - // Opening tasks can also exist in a |returningToApp| case, such as when - // returning to the desk tile by clicking on one of the exploded view tasks. - // These are really "pausing" tasks that became "opening" because they were - // re-brought to front. They should be on top of pausing tasks, so insert them - // first. - tasksToShowFrontToBack.addAll(mOpeningTasks); - } - // The remaining pausing tasks should also be moved back to top, but below the - // opening ones. - tasksToShowFrontToBack.addAll(mPausingTasks); - for (int i = tasksToShowFrontToBack.size() - 1; i >= 0; --i) { + // recents, so end the transition by moving the app back to the top (and also + // re-showing it's task). + for (int i = mPausingTasks.size() - 1; i >= 0; --i) { // reverse order so that index 0 ends up on top - final TaskState taskState = tasksToShowFrontToBack.get(i); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - " reorder task#%d to top", taskState.mTaskInfo.taskId); - wct.reorder(taskState.mToken, true /* onTop */); - t.show(taskState.mTaskSurface); + wct.reorder(mPausingTasks.get(i).mToken, true /* onTop */); + t.show(mPausingTasks.get(i).mTaskSurface); } - setCornerRadiusForFreeformTasks(mRecentTasksController.getContext(), t, - tasksToShowFrontToBack); if (!mKeyguardLocked && mRecentsTask != null) { wct.restoreTransientOrder(mRecentsTask); } - // We are manipulating the window hierarchy, which should only be done with the - // bookend transition - requiresBookendTransition = true; } else if (toHome && mOpeningSeparateHome && mPausingTasks != null) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, " 3p launching home"); // Special situation where 3p launcher was changed during recents (this happens @@ -1572,9 +1095,6 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, if (!mKeyguardLocked && mRecentsTask != null) { wct.restoreTransientOrder(mRecentsTask); } - // We are manipulating the window hierarchy, which should only be done with the - // bookend transition - requiresBookendTransition = true; } else { if (mPausingSeparateHome) { if (mOpeningTasks.isEmpty()) { @@ -1590,15 +1110,12 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, for (int i = 0; i < mOpeningTasks.size(); ++i) { t.show(mOpeningTasks.get(i).mTaskSurface); } - setCornerRadiusForFreeformTasks( - mRecentTasksController.getContext(), t, mOpeningTasks); for (int i = 0; i < mPausingTasks.size(); ++i) { cleanUpPausingOrClosingTask(mPausingTasks.get(i), wct, t, sendUserLeaveHint); } for (int i = 0; i < mClosingTasks.size(); ++i) { cleanUpPausingOrClosingTask(mClosingTasks.get(i), wct, t, sendUserLeaveHint); } - if (mPipTransaction != null && sendUserLeaveHint) { SurfaceControl pipLeash = null; TransitionInfo.Change pipChange = null; @@ -1629,7 +1146,7 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "RecentsController.finishInner: PiP transaction %s merged", mPipTransaction); - if (PipFlags.isPip2ExperimentEnabled()) { + if (PipUtils.isPip2ExperimentEnabled()) { // If this path is triggered, we are in auto-enter PiP flow in gesture // navigation mode, which means "Recents" transition should be followed // by a TRANSIT_PIP. Hence, we take the WCT was about to be sent @@ -1650,78 +1167,15 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, mTransitions.startTransition(TRANSIT_PIP, wct, null /* handler */); // We need to clear the WCT to send finishWCT=null for Recents. wct.clear(); - - if (Flags.enableRecentsBookendTransition()) { - // Notify the mixers of the pending finish - for (int i = 0; i < mMixers.size(); ++i) { - mMixers.get(i).handleFinishRecents(returningToApp, wct, t); - } - - // In this case, we've already started the PIP transition, so we can - // clean up immediately - mPendingRunnerFinishCb = runnerFinishCb; - mPendingFinishTransaction = t; - onFinishInner(null); - return; - } } } + mPipTaskId = -1; + mPipTask = null; + mPipTransaction = null; } } - - // Notify the mixers of the pending finish - for (int i = 0; i < mMixers.size(); ++i) { - mMixers.get(i).handleFinishRecents(returningToApp, wct, t); - } - - if (Flags.enableRecentsBookendTransition()) { - if (!wct.isEmpty()) { - if (requiresBookendTransition) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.finishInner: " - + "Queuing TRANSIT_END_RECENTS_TRANSITION", mInstanceId); - mPendingRunnerFinishCb = runnerFinishCb; - mPendingFinishTransaction = t; - mPendingFinishTransition = mTransitions.startTransition( - TRANSIT_END_RECENTS_TRANSITION, wct, - new PendingFinishTransitionHandler()); - } else { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.finishInner: Non-transition affecting wct", - mInstanceId); - mPendingRunnerFinishCb = runnerFinishCb; - mPendingFinishTransaction = t; - onFinishInner(wct); - } - } else { - // If there's no work to do, just go ahead and clean up - mPendingRunnerFinishCb = runnerFinishCb; - mPendingFinishTransaction = t; - onFinishInner(null /* wct */); - } - } else { - mPendingRunnerFinishCb = runnerFinishCb; - mPendingFinishTransaction = t; - onFinishInner(wct); - } - } - - /** - * Runs the actual logic to finish the recents transition. - */ - private void onFinishInner(@Nullable WindowContainerTransaction wct) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] RecentsController.finishInner: Completing finish", mInstanceId); - final Transitions.TransitionFinishCallback finishCb = mFinishCB; - final IResultReceiver runnerFinishCb = mPendingRunnerFinishCb; - - // We merge the cleanup transaction (prepared in finishInner()) with the last accepted - // finish transaction to ensure that it's applied after the default finish transaction - // created for the bookend transition (if it's used) - mFinishTransaction.merge(mPendingFinishTransaction); - cleanUp(); - finishCb.onTransitionFinished(wct); + finishCB.onTransitionFinished(wct.isEmpty() ? null : wct); if (runnerFinishCb != null) { try { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, @@ -1734,31 +1188,6 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, } } - private void setCornerRadiusForFreeformTasks( - Context context, - SurfaceControl.Transaction t, - List<TaskState> tasks) { - if (!ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX.isTrue()) { - return; - } - for (int i = 0; i < tasks.size(); ++i) { - TaskState task = tasks.get(i); - if (task.mTaskInfo != null && task.mTaskInfo.isFreeform()) { - int cornerRadius = getCornerRadius(context, task.mTaskInfo.displayId); - t.setCornerRadius(task.mTaskSurface, cornerRadius); - } - } - } - - private int getCornerRadius(Context context, int displayId) { - Context displayContext = mDisplayController.getDisplayContext(displayId); - if (displayContext == null) { - displayContext = context; - } - return displayContext.getResources().getDimensionPixelSize( - R.dimen.desktop_windowing_freeform_rounded_corner_radius); - } - private boolean allAppsAreTranslucent(ArrayList<TaskState> tasks) { if (tasks == null) { return false; @@ -1808,6 +1237,14 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, finishTransaction.hide(task.mTaskSurface); } + @Override + public void setDeferCancelUntilNextTransition(boolean defer, boolean screenshot) { + } + + @Override + public void cleanupScreenshot() { + } + @Override public void setWillFinishToHome(boolean willFinishToHome) { mExecutor.execute(() -> { @@ -1815,6 +1252,14 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, }); } + /** + * @see IRecentsAnimationController#removeTask + */ + @Override + public boolean removeTask(int taskId) { + return false; + } + /** * @see IRecentsAnimationController#detachNavigationBarFromApp */ @@ -1833,46 +1278,11 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, } /** - * A temporary transition handler used with the pending finish transition, which runs the - * cleanup/finish logic once the pending transition is merged/handled. - * This is only initialized if Flags.enableRecentsBookendTransition() is enabled. + * @see IRecentsAnimationController#animateNavigationBarToApp(long) */ - private class PendingFinishTransitionHandler implements Transitions.TransitionHandler { - @Override - public boolean startAnimation(@NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] PendingFinishTransitionHandler.startAnimation: " - + "Started pending finish transition", mInstanceId); - return false; - } - - @Nullable - @Override - public WindowContainerTransaction handleRequest(@NonNull IBinder transition, - @NonNull TransitionRequestInfo request) { - return null; - } - - @Override - public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, - @Nullable SurfaceControl.Transaction finishTransaction) { - if (mPendingFinishTransition == null) { - // The cleanup was pre-empted by an earlier transition, nothing there is nothing - // to do here - return; - } - // Once we have merged (or not if the WCT didn't result in any changes), then we can - // run the pending finish logic - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, - "[%d] PendingFinishTransitionHandler.onTransitionConsumed: " - + "Consumed pending finish transition", mInstanceId); - onFinishInner(null /* wct */); - } - }; + @Override + public void animateNavigationBarToApp(long duration) { + } }; /** Utility class to track the state of a task as-seen by recents. */ @@ -1922,22 +1332,15 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, */ public interface RecentsMixedHandler extends Transitions.TransitionHandler { /** - * Called when a recents request comes in. If the handler wants to "accept" the transition, - * it should return a Consumer accepting the IBinder for the transition. If not, it should - * return `null`. + * Called when a recents request comes in. The handler can add operations to outWCT. If + * the handler wants to "accept" the transition, it should return a Consumer accepting the + * IBinder for the transition. If not, it should return `null`. * * If a mixed-handler accepts this recents, it will be the de-facto handler for this * transition and is required to call the associated {@link #startAnimation}, * {@link #mergeAnimation}, and {@link #onTransitionConsumed} methods. */ @Nullable - Consumer<IBinder> handleRecentsRequest(int displayId); - - /** - * Called when a recents transition has finished, with a WCT and SurfaceControl Transaction - * that can be used to add to any changes needed to restore the state. - */ - void handleFinishRecents(boolean returnToApp, @NonNull WindowContainerTransaction finishWct, - @NonNull SurfaceControl.Transaction finishT); + Consumer<IBinder> handleRecentsRequest(WindowContainerTransaction outWCT); } } diff --git a/wmshell/src/com/android/wm/shell/recents/RecentsTransitionStateListener.java b/wmshell/src/com/android/wm/shell/recents/RecentsTransitionStateListener.java index ea7cfd374f..e8733ebd8f 100644 --- a/wmshell/src/com/android/wm/shell/recents/RecentsTransitionStateListener.java +++ b/wmshell/src/com/android/wm/shell/recents/RecentsTransitionStateListener.java @@ -16,47 +16,15 @@ package com.android.wm.shell.recents; -import android.annotation.IntDef; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; +import android.os.IBinder; /** The listener for the events from {@link RecentsTransitionHandler}. */ public interface RecentsTransitionStateListener { - @IntDef(prefix = { "TRANSITION_STATE_" }, value = { - TRANSITION_STATE_NOT_RUNNING, - TRANSITION_STATE_REQUESTED, - TRANSITION_STATE_ANIMATING, - }) - @Retention(RetentionPolicy.SOURCE) - @interface RecentsTransitionState {} - - int TRANSITION_STATE_NOT_RUNNING = 1; - int TRANSITION_STATE_REQUESTED = 2; - int TRANSITION_STATE_ANIMATING = 3; - - /** Notifies whether the recents transition state changes. */ - default void onTransitionStateChanged(@RecentsTransitionState int state) { + /** Notifies whether the recents animation is running. */ + default void onAnimationStateChanged(boolean running) { } - /** Returns whether the recents transition is running. */ - static boolean isRunning(@RecentsTransitionState int state) { - return state >= TRANSITION_STATE_REQUESTED; - } - - /** Returns whether the recents transition is animating. */ - static boolean isAnimating(@RecentsTransitionState int state) { - return state >= TRANSITION_STATE_ANIMATING; - } - - /** Returns a string representation of the given state. */ - static String stateToString(@RecentsTransitionState int state) { - return switch (state) { - case TRANSITION_STATE_NOT_RUNNING -> "TRANSITION_STATE_NOT_RUNNING"; - case TRANSITION_STATE_REQUESTED -> "TRANSITION_STATE_REQUESTED"; - case TRANSITION_STATE_ANIMATING -> "TRANSITION_STATE_ANIMATING"; - default -> "UNKNOWN"; - }; - } + /** Notifies that a recents shell transition has started. */ + default void onTransitionStarted(IBinder transition) {} } diff --git a/wmshell/src/com/android/wm/shell/recents/TaskStackTransitionObserver.kt b/wmshell/src/com/android/wm/shell/recents/TaskStackTransitionObserver.kt index 11cd4031e8..7c5f10a5bc 100644 --- a/wmshell/src/com/android/wm/shell/recents/TaskStackTransitionObserver.kt +++ b/wmshell/src/com/android/wm/shell/recents/TaskStackTransitionObserver.kt @@ -17,162 +17,43 @@ package com.android.wm.shell.recents import android.app.ActivityManager.RunningTaskInfo -import android.app.WindowConfiguration.WINDOWING_MODE_PINNED +import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM import android.os.IBinder import android.util.ArrayMap import android.view.SurfaceControl -import android.view.WindowManager.TRANSIT_CHANGE -import android.window.DesktopModeFlags +import android.view.WindowManager import android.window.TransitionInfo -import com.android.internal.protolog.ProtoLog -import com.android.wm.shell.Flags.enableShellTopTaskTracking -import com.android.wm.shell.ShellTaskOrganizer -import com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_TASK_OBSERVER +import com.android.window.flags.Flags.enableTaskStackObserverInShell import com.android.wm.shell.shared.TransitionUtil -import com.android.wm.shell.sysui.ShellCommandHandler import com.android.wm.shell.sysui.ShellInit import com.android.wm.shell.transition.Transitions import dagger.Lazy -import java.io.PrintWriter -import java.util.StringJoiner import java.util.concurrent.Executor /** - * A [Transitions.TransitionObserver] that observes shell transitions, tracks the visible tasks - * and notifies listeners whenever the visible tasks change (at the start and end of a transition). + * A [Transitions.TransitionObserver] that observes shell transitions and sends updates to listeners + * about task stack changes. * - * This can be replaced once we have a generalized task repository tracking visible tasks. + * TODO(346588978) Move split/pip signals here as well so that launcher don't need to handle it */ class TaskStackTransitionObserver( - shellInit: ShellInit, - private val shellTaskOrganizer: Lazy<ShellTaskOrganizer>, - private val shellCommandHandler: ShellCommandHandler, private val transitions: Lazy<Transitions>, -) : Transitions.TransitionObserver, ShellTaskOrganizer.TaskVanishedListener { + shellInit: ShellInit +) : Transitions.TransitionObserver { - // List of currently visible tasks sorted in z-order from top-most to bottom-most, only used - // when Flags.enableShellTopTaskTracking() is enabled. - private var visibleTasks: MutableList<RunningTaskInfo> = mutableListOf() - private val pendingCloseTasks: MutableList<RunningTaskInfo> = mutableListOf() - // Set of listeners to notify when the visible tasks change + private val transitionToTransitionChanges: MutableMap<IBinder, TransitionChanges> = + mutableMapOf() private val taskStackTransitionObserverListeners = ArrayMap<TaskStackTransitionObserverListener, Executor>() - // Used to filter out leaf-tasks - private val leafTaskFilter: TransitionUtil.LeafTaskFilter = TransitionUtil.LeafTaskFilter() init { - shellInit.addInitCallback(::onInit, this) + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + shellInit.addInitCallback(::onInit, this) + } } fun onInit() { - shellTaskOrganizer.get().addTaskVanishedListener(this) - shellCommandHandler.addDumpCallback(::dump, this) transitions.get().registerObserver(this) - - // TODO(346588978): We need to update the running tasks once the ShellTaskOrganizer is - // registered since there is no existing transition (yet) corresponding for the already - // visible tasks - } - - /** - * This method handles transition ready when only - * DesktopModeFlags.ENABLE_TASK_STACK_OBSERVER_IN_SHELL is set. - */ - private fun onDesktopOnlyFlagTransitionReady(info: TransitionInfo) { - for (change in info.changes) { - if (change.flags and TransitionInfo.FLAG_IS_WALLPAPER != 0) { - continue - } - - val taskInfo = change.taskInfo - if (taskInfo == null || taskInfo.taskId == -1) { - continue - } - - // Find the first task that is opening, this should be the one at the front after - // the transition - if (TransitionUtil.isOpeningType(change.mode)) { - notifyOnTaskMovedToFront(taskInfo) - break - } else if (change.mode == TRANSIT_CHANGE) { - notifyOnTaskChanged(taskInfo) - } - } - } - - /** - * This method handles transition ready when Flags.enableShellTopTaskTracking() is set. - */ - private fun onShellTopTaskTrackerFlagTransitionReady(info: TransitionInfo) { - ProtoLog.v(WM_SHELL_TASK_OBSERVER, "Transition ready: %d", info.debugId) - - // Filter out non-leaf tasks (we will likely need them later, but visible task tracking - // is currently used only for visible leaf tasks) - val changesReversed = mutableListOf<TransitionInfo.Change>() - for (change in info.changes) { - if (!leafTaskFilter.test(change)) { - // Not a leaf task - continue - } - changesReversed.add(0, change) - } - - // We iterate the change list in reverse order because changes are sorted top to bottom and - // we want to update the lists such that the top most tasks are inserted at the front last - var notifyChanges = false - for (change in changesReversed) { - val taskInfo = change.taskInfo - if (taskInfo == null || taskInfo.taskId == -1) { - // Not a valid task - continue - } - - if (TransitionUtil.isClosingMode(change.mode)) { - ProtoLog.v(WM_SHELL_TASK_OBSERVER, "\tClosing task=%d", taskInfo.taskId) - - // Closing task's visibilities are not committed until after the transition - // completes, so track such tasks so that we can notify on finish - if (!pendingCloseTasks.any { it.taskId == taskInfo.taskId }) { - pendingCloseTasks.add(taskInfo) - } - } else if (TransitionUtil.isOpeningMode(change.mode) - || TransitionUtil.isOrderOnly(change)) { - ProtoLog.v(WM_SHELL_TASK_OBSERVER, "\tOpening task=%d", taskInfo.taskId) - - // Remove from pending close tasks list if it's being opened again - pendingCloseTasks.removeIf { it.taskId == taskInfo.taskId } - // Move the task to the front of the visible tasks list - visibleTasks.removeIf { it.taskId == taskInfo.taskId } - visibleTasks.add(0, taskInfo) - notifyChanges = true - } - } - - // TODO(346588978): We should verify the task list has actually changed before notifying - // (ie. starting an activity that's already top-most would result in no visible change) - if (notifyChanges) { - updateVisibleTasksList("transition-start") - } - } - - private fun updateVisibleTasksList(reason: String) { - // This simply constructs a list of visible tasks, where the always-on-top tasks are moved - // to the front of the list in-order, to ensure that they match the visible z order - val orderedVisibleTasks = mutableListOf<RunningTaskInfo>() - var numAlwaysOnTop = 0 - for (info in visibleTasks) { - if (info.windowingMode == WINDOWING_MODE_PINNED - || info.configuration.windowConfiguration.isAlwaysOnTop) { - orderedVisibleTasks.add(numAlwaysOnTop, info) - numAlwaysOnTop++ - } else { - orderedVisibleTasks.add(info) - } - } - visibleTasks = orderedVisibleTasks - - dumpVisibleTasks(reason) - notifyVisibleTasksChanged(visibleTasks) } override fun onTransitionReady( @@ -181,10 +62,29 @@ class TaskStackTransitionObserver( startTransaction: SurfaceControl.Transaction, finishTransaction: SurfaceControl.Transaction ) { - if (enableShellTopTaskTracking()) { - onShellTopTaskTrackerFlagTransitionReady(info) - } else if (DesktopModeFlags.ENABLE_TASK_STACK_OBSERVER_IN_SHELL.isTrue) { - onDesktopOnlyFlagTransitionReady(info) + if (enableTaskStackObserverInShell()) { + val taskInfoList = mutableListOf<RunningTaskInfo>() + val transitionTypeList = mutableListOf<Int>() + + for (change in info.changes) { + if (change.flags and TransitionInfo.FLAG_IS_WALLPAPER != 0) { + continue + } + + val taskInfo = change.taskInfo + if (taskInfo == null || taskInfo.taskId == -1) { + continue + } + + if (change.mode == WindowManager.TRANSIT_OPEN) { + change.taskInfo?.let { taskInfoList.add(it) } + transitionTypeList.add(change.mode) + } + } + transitionToTransitionChanges.put( + transition, + TransitionChanges(taskInfoList, transitionTypeList) + ) } } @@ -193,36 +93,24 @@ class TaskStackTransitionObserver( override fun onTransitionMerged(merged: IBinder, playing: IBinder) {} override fun onTransitionFinished(transition: IBinder, aborted: Boolean) { - if (!enableShellTopTaskTracking()) { - return - } + val taskInfoList = + transitionToTransitionChanges.getOrDefault(transition, TransitionChanges()).taskInfoList + val typeList = + transitionToTransitionChanges + .getOrDefault(transition, TransitionChanges()) + .transitionTypeList + transitionToTransitionChanges.remove(transition) - if (pendingCloseTasks.isNotEmpty()) { - // Update the visible task list based on the pending close tasks - for (change in pendingCloseTasks) { - visibleTasks.removeIf { - it.taskId == change.taskId - } + for ((index, taskInfo) in taskInfoList.withIndex()) { + if ( + TransitionUtil.isOpeningType(typeList[index]) && + taskInfo.windowingMode == WINDOWING_MODE_FREEFORM + ) { + notifyTaskStackTransitionObserverListeners(taskInfo) } - updateVisibleTasksList("transition-finished") } } - override fun onTaskVanished(taskInfo: RunningTaskInfo?) { - if (!enableShellTopTaskTracking()) { - return - } - ProtoLog.v(WM_SHELL_TASK_OBSERVER, "Task vanished: task=%d", taskInfo?.taskId) - pendingCloseTasks.removeIf { it.taskId == taskInfo?.taskId } - if (visibleTasks.any { it.taskId == taskInfo?.taskId }) { - visibleTasks.removeIf { it.taskId == taskInfo?.taskId } - updateVisibleTasksList("task-vanished") - } - } - - /** - * Adds a new task stack observer. - */ fun addTaskStackTransitionObserverListener( taskStackTransitionObserverListener: TaskStackTransitionObserverListener, executor: Executor @@ -230,76 +118,26 @@ class TaskStackTransitionObserver( taskStackTransitionObserverListeners[taskStackTransitionObserverListener] = executor } - /** - * Removes an existing task stack observer. - */ fun removeTaskStackTransitionObserverListener( taskStackTransitionObserverListener: TaskStackTransitionObserverListener ) { taskStackTransitionObserverListeners.remove(taskStackTransitionObserverListener) } - private fun notifyOnTaskMovedToFront(taskInfo: RunningTaskInfo) { - if (enableShellTopTaskTracking()) { - return - } + private fun notifyTaskStackTransitionObserverListeners(taskInfo: RunningTaskInfo) { taskStackTransitionObserverListeners.forEach { (listener, executor) -> executor.execute { listener.onTaskMovedToFrontThroughTransition(taskInfo) } } } - private fun notifyOnTaskChanged(taskInfo: RunningTaskInfo) { - if (enableShellTopTaskTracking()) { - return - } - taskStackTransitionObserverListeners.forEach { (listener, executor) -> - executor.execute { listener.onTaskChangedThroughTransition(taskInfo) } - } - } - - private fun notifyVisibleTasksChanged(visibleTasks: List<RunningTaskInfo>) { - taskStackTransitionObserverListeners.forEach { (listener, executor) -> - executor.execute { listener.onVisibleTasksChanged(visibleTasks) } - } - } - - fun dump(pw: PrintWriter, prefix: String) { - pw.println("${prefix}$TAG:") - - if (visibleTasks.isEmpty()) { - pw.println("$prefix visibleTasks=[]") - } else { - val stringJoiner = StringJoiner(",\n\t", "[\n\t", "\n]") - visibleTasks.forEach { - stringJoiner.add("id=${it.taskId} cmp=${it.baseIntent.component}") - } - pw.println("$prefix visibleTasks=$stringJoiner") - } - } - - /** Dumps the set of visible tasks to protolog */ - private fun dumpVisibleTasks(reason: String) { - if (!WM_SHELL_TASK_OBSERVER.isEnabled) { - return - } - ProtoLog.v(WM_SHELL_TASK_OBSERVER, "\tVisible tasks (%s)", reason) - for (task in visibleTasks) { - ProtoLog.v(WM_SHELL_TASK_OBSERVER, "\t\ttaskId=%d package=%s", task.taskId, - task.baseIntent.component?.packageName) - } - } - /** Listener to use to get updates regarding task stack from this observer */ interface TaskStackTransitionObserverListener { /** Called when a task is moved to front. */ fun onTaskMovedToFrontThroughTransition(taskInfo: RunningTaskInfo) {} - /** Called when the set of visible tasks have changed. */ - fun onVisibleTasksChanged(visibleTasks: List<RunningTaskInfo>) {} - /** Called when a task info has changed. */ - fun onTaskChangedThroughTransition(taskInfo: RunningTaskInfo) {} } - companion object { - const val TAG = "TaskStackTransitionObserver" - } + private data class TransitionChanges( + val taskInfoList: MutableList<RunningTaskInfo> = ArrayList(), + val transitionTypeList: MutableList<Int> = ArrayList() + ) } diff --git a/wmshell/src/com/android/wm/shell/splitscreen/ISplitScreen.aidl b/wmshell/src/com/android/wm/shell/splitscreen/ISplitScreen.aidl index cf2c3dafed..0ca244c4b9 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/ISplitScreen.aidl +++ b/wmshell/src/com/android/wm/shell/splitscreen/ISplitScreen.aidl @@ -54,6 +54,11 @@ interface ISplitScreen { */ oneway void unregisterSplitSelectListener(in ISplitSelectListener listener) = 21; + /** + * Removes a task from the side stage. + */ + oneway void removeFromSideStage(int taskId) = 4; + /** * Removes the split-screen stages and leaving indicated task to top. Passing INVALID_TASK_ID * to indicate leaving no top task after leaving split-screen. @@ -103,6 +108,35 @@ interface ISplitScreen { in Bundle options2, int splitPosition, int snapPosition, in RemoteTransition remoteTransition, in InstanceId instanceId) = 17; + /** + * Version of startTasks using legacy transition system. + */ + oneway void startTasksWithLegacyTransition(int taskId1, in Bundle options1, int taskId2, + in Bundle options2, int splitPosition, int snapPosition, + in RemoteAnimationAdapter adapter, in InstanceId instanceId) = 11; + + /** + * Starts a pair of intent and task using legacy transition system. + */ + oneway void startIntentAndTaskWithLegacyTransition(in PendingIntent pendingIntent, int userId1, + in Bundle options1, int taskId, in Bundle options2, int splitPosition, int snapPosition, + in RemoteAnimationAdapter adapter, in InstanceId instanceId) = 12; + + /** + * Starts a pair of shortcut and task using legacy transition system. + */ + oneway void startShortcutAndTaskWithLegacyTransition(in ShortcutInfo shortcutInfo, + in Bundle options1, int taskId, in Bundle options2, int splitPosition, int snapPosition, + in RemoteAnimationAdapter adapter, in InstanceId instanceId) = 15; + + /** + * Start a pair of intents using legacy transition system. + */ + oneway void startIntentsWithLegacyTransition(in PendingIntent pendingIntent1, int userId1, + in ShortcutInfo shortcutInfo1, in Bundle options1, in PendingIntent pendingIntent2, + int userId2, in ShortcutInfo shortcutInfo2, in Bundle options2, int splitPosition, + int snapPosition, in RemoteAnimationAdapter adapter, in InstanceId instanceId) = 18; + /** * Start a pair of intents in one transition. */ @@ -111,6 +145,20 @@ interface ISplitScreen { int userId2, in ShortcutInfo shortcutInfo2, in Bundle options2, int splitPosition, int snapPosition, in RemoteTransition remoteTransition, in InstanceId instanceId) = 19; + /** + * Blocking call that notifies and gets additional split-screen targets when entering + * recents (for example: the dividerBar). + * @param appTargets apps that will be re-parented to display area + */ + RemoteAnimationTarget[] onGoingToRecentsLegacy(in RemoteAnimationTarget[] appTargets) = 13; + + /** + * Blocking call that notifies and gets additional split-screen targets when entering + * recents (for example: the dividerBar). Different than the method above in that this one + * does not expect split to currently be running. + */ + RemoteAnimationTarget[] onStartingSplitLegacy(in RemoteAnimationTarget[] appTargets) = 14; + /** * Reverse the split. */ diff --git a/wmshell/src/com/android/wm/shell/splitscreen/ISplitSelectListener.aidl b/wmshell/src/com/android/wm/shell/splitscreen/ISplitSelectListener.aidl index 09b8cb858a..a25f39148b 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/ISplitSelectListener.aidl +++ b/wmshell/src/com/android/wm/shell/splitscreen/ISplitSelectListener.aidl @@ -18,22 +18,12 @@ package com.android.wm.shell.splitscreen; import android.app.ActivityManager.RunningTaskInfo; import android.graphics.Rect; -import android.window.WindowContainerTransaction; - /** * Listener interface that Launcher attaches to SystemUI to get split-select callbacks. */ interface ISplitSelectListener { /** - * Called when a task requests to enter split select. - * - * @param taskInfo the task requesting to enter split select - * @param splitPosition the position in which to place it - * @param taskBounds the bounds of the task prior to entering split select - * @param startRecents whether Launcher should start recents prior to entering split select - * @param withRecentsWct the wct to include with the recents start, if appplicable + * Called when a task requests to enter split select */ - boolean onRequestSplitSelect(in RunningTaskInfo taskInfo, - int splitPosition, in Rect taskBounds, boolean startRecents, - in @nullable WindowContainerTransaction withRecentsWct); + boolean onRequestSplitSelect(in RunningTaskInfo taskInfo, int splitPosition, in Rect taskBounds); } \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/splitscreen/SplitScreen.java b/wmshell/src/com/android/wm/shell/splitscreen/SplitScreen.java index f449cab23e..8df287d12c 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/SplitScreen.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/SplitScreen.java @@ -23,12 +23,11 @@ import android.app.ActivityManager; import android.graphics.Rect; import android.os.Bundle; import android.window.RemoteTransition; -import android.window.WindowContainerTransaction; import com.android.internal.logging.InstanceId; +import com.android.wm.shell.common.split.SplitScreenConstants.PersistentSnapPosition; +import com.android.wm.shell.common.split.SplitScreenConstants.SplitPosition; import com.android.wm.shell.shared.annotations.ExternalThread; -import com.android.wm.shell.shared.split.SplitScreenConstants.PersistentSnapPosition; -import com.android.wm.shell.shared.split.SplitScreenConstants.SplitPosition; import java.util.concurrent.Executor; @@ -45,37 +44,20 @@ public interface SplitScreen { int STAGE_TYPE_UNDEFINED = -1; /** * The main stage type. - * @see StageTaskListener + * @see MainStage */ int STAGE_TYPE_MAIN = 0; /** * The side stage type. - * @see StageTaskListener + * @see SideStage */ int STAGE_TYPE_SIDE = 1; - /** - * Position independent stage identifier for a given Stage - */ - int STAGE_TYPE_A = 2; - /** - * Position independent stage identifier for a given Stage - */ - int STAGE_TYPE_B = 3; - /** - * Position independent stage identifier for a given Stage - */ - int STAGE_TYPE_C = 4; - @IntDef(prefix = { "STAGE_TYPE_" }, value = { STAGE_TYPE_UNDEFINED, STAGE_TYPE_MAIN, - STAGE_TYPE_SIDE, - // Used for flexible split - STAGE_TYPE_A, - STAGE_TYPE_B, - STAGE_TYPE_C + STAGE_TYPE_SIDE }) @interface StageType {} @@ -91,12 +73,8 @@ public interface SplitScreen { * Callback interface for listening to requests to enter split select. Used for desktop -> split */ interface SplitSelectListener { - /** - * Called when split-select is requested. - */ default boolean onRequestEnterSplitSelect(ActivityManager.RunningTaskInfo taskInfo, - int splitPosition, Rect taskBounds, boolean startRecents, - @Nullable WindowContainerTransaction withRecentsWct) { + int splitPosition, Rect taskBounds) { return false; } } @@ -132,11 +110,8 @@ public interface SplitScreen { void registerSplitAnimationListener(@NonNull SplitInvocationListener listener, @NonNull Executor executor); - /** Called when device starts going to sleep (screen off). */ - void onStartedGoingToSleep(); - - /** Called when device wakes up. */ - void onStartedWakingUp(); + /** Called when device waking up finished. */ + void onFinishedWakingUp(); /** Called when requested to go to fullscreen from the current active split app. */ void goToFullscreenFromSplit(); @@ -150,9 +125,6 @@ public interface SplitScreen { case STAGE_TYPE_UNDEFINED: return "UNDEFINED"; case STAGE_TYPE_MAIN: return "MAIN"; case STAGE_TYPE_SIDE: return "SIDE"; - case STAGE_TYPE_A: return "STAGE_A"; - case STAGE_TYPE_B: return "STAGE_B"; - case STAGE_TYPE_C: return "STAGE_C"; default: return "UNKNOWN(" + stage + ")"; } } diff --git a/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenController.java b/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenController.java index b9e8bb263a..dd219d32bb 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenController.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenController.java @@ -19,32 +19,28 @@ package com.android.wm.shell.splitscreen; import static android.app.ActivityManager.START_SUCCESS; import static android.app.ActivityManager.START_TASK_TO_FRONT; import static android.app.ActivityTaskManager.INVALID_TASK_ID; -import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.content.Intent.FLAG_ACTIVITY_MULTIPLE_TASK; import static android.content.Intent.FLAG_ACTIVITY_NO_USER_ACTION; import static android.view.Display.DEFAULT_DISPLAY; +import static android.view.RemoteAnimationTarget.MODE_OPENING; -import static com.android.wm.shell.Flags.enableFlexibleSplit; import static com.android.wm.shell.common.MultiInstanceHelper.getComponent; import static com.android.wm.shell.common.MultiInstanceHelper.getShortcutComponent; import static com.android.wm.shell.common.MultiInstanceHelper.samePackage; +import static com.android.wm.shell.common.split.SplitScreenConstants.KEY_EXTRA_WIDGET_INTENT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; import static com.android.wm.shell.common.split.SplitScreenUtils.isValidToSplit; import static com.android.wm.shell.common.split.SplitScreenUtils.reverseSplitPosition; import static com.android.wm.shell.common.split.SplitScreenUtils.splitFailureMessage; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN; -import static com.android.wm.shell.shared.split.SplitScreenConstants.KEY_EXTRA_WIDGET_INTENT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_INDEX_0; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_INDEX_1; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_INDEX_UNDEFINED; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_UNDEFINED; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_SPLIT_SCREEN; +import static com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS; import android.app.ActivityManager; import android.app.ActivityOptions; import android.app.ActivityTaskManager; -import android.app.IActivityTaskManager; import android.app.PendingIntent; import android.app.TaskInfo; import android.content.ComponentName; @@ -54,7 +50,6 @@ import android.content.pm.LauncherApps; import android.content.pm.ShortcutInfo; import android.graphics.Rect; import android.os.Bundle; -import android.os.Handler; import android.os.RemoteException; import android.os.UserHandle; import android.util.ArrayMap; @@ -65,10 +60,10 @@ import android.view.IRemoteAnimationRunner; import android.view.RemoteAnimationAdapter; import android.view.RemoteAnimationTarget; import android.view.SurfaceControl; +import android.view.SurfaceSession; import android.view.WindowManager; import android.widget.Toast; import android.window.RemoteTransition; -import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import androidx.annotation.BinderThread; @@ -78,13 +73,11 @@ import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.logging.InstanceId; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.launcher3.icons.IconProvider; import com.android.wm.shell.R; -import com.android.wm.shell.RootDisplayAreaOrganizer; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.common.ComponentUtils; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayImeController; import com.android.wm.shell.common.DisplayInsetsController; @@ -95,20 +88,16 @@ import com.android.wm.shell.common.RemoteCallable; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SingleInstanceRemoteListener; import com.android.wm.shell.common.SyncTransactionQueue; +import com.android.wm.shell.common.TransactionPool; +import com.android.wm.shell.common.split.SplitScreenConstants.PersistentSnapPosition; +import com.android.wm.shell.common.split.SplitScreenConstants.SplitPosition; import com.android.wm.shell.common.split.SplitScreenUtils; -import com.android.wm.shell.common.split.SplitState; import com.android.wm.shell.desktopmode.DesktopTasksController; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; import com.android.wm.shell.draganddrop.DragAndDropController; -import com.android.wm.shell.draganddrop.SplitDragPolicy; +import com.android.wm.shell.draganddrop.DragAndDropPolicy; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.recents.RecentTasksController; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.shared.annotations.ExternalThread; -import com.android.wm.shell.shared.desktopmode.DesktopState; -import com.android.wm.shell.shared.split.SplitScreenConstants.PersistentSnapPosition; -import com.android.wm.shell.shared.split.SplitScreenConstants.SplitIndex; -import com.android.wm.shell.shared.split.SplitScreenConstants.SplitPosition; import com.android.wm.shell.splitscreen.SplitScreen.StageType; import com.android.wm.shell.sysui.KeyguardChangeListener; import com.android.wm.shell.sysui.ShellCommandHandler; @@ -117,8 +106,6 @@ import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.windowdecor.WindowDecorViewModel; -import com.google.android.msdl.domain.MSDLPlayer; - import java.io.PrintWriter; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @@ -133,7 +120,7 @@ import java.util.concurrent.atomic.AtomicBoolean; * @see StageCoordinator */ // TODO(b/198577848): Implement split screen flicker test to consolidate CUJ of split screen. -public class SplitScreenController implements SplitDragPolicy.Starter, +public class SplitScreenController implements DragAndDropPolicy.Starter, RemoteCallable<SplitScreenController>, KeyguardChangeListener { private static final String TAG = SplitScreenController.class.getSimpleName(); @@ -151,7 +138,6 @@ public class SplitScreenController implements SplitDragPolicy.Starter, public static final int EXIT_REASON_FULLSCREEN_SHORTCUT = 11; public static final int EXIT_REASON_DESKTOP_MODE = 12; public static final int EXIT_REASON_FULLSCREEN_REQUEST = 13; - public static final int EXIT_REASON_CHILD_TASK_ENTER_BUBBLE = 14; @IntDef(value = { EXIT_REASON_UNKNOWN, EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW, @@ -166,8 +152,7 @@ public class SplitScreenController implements SplitDragPolicy.Starter, EXIT_REASON_RECREATE_SPLIT, EXIT_REASON_FULLSCREEN_SHORTCUT, EXIT_REASON_DESKTOP_MODE, - EXIT_REASON_FULLSCREEN_REQUEST, - EXIT_REASON_CHILD_TASK_ENTER_BUBBLE + EXIT_REASON_FULLSCREEN_REQUEST }) @Retention(RetentionPolicy.SOURCE) @interface ExitReason{} @@ -194,7 +179,6 @@ public class SplitScreenController implements SplitDragPolicy.Starter, private final LauncherApps mLauncherApps; private final RootTaskDisplayAreaOrganizer mRootTDAOrganizer; private final ShellExecutor mMainExecutor; - private final Handler mMainHandler; private final SplitScreenImpl mImpl = new SplitScreenImpl(); private final DisplayController mDisplayController; private final DisplayImeController mDisplayImeController; @@ -207,18 +191,17 @@ public class SplitScreenController implements SplitDragPolicy.Starter, private final LaunchAdjacentController mLaunchAdjacentController; private final Optional<WindowDecorViewModel> mWindowDecorViewModel; private final Optional<DesktopTasksController> mDesktopTasksController; - private final Optional<DesktopUserRepositories> mDesktopUserRepositories; private final MultiInstanceHelper mMultiInstanceHelpher; - private final SplitState mSplitState; - private final RootDisplayAreaOrganizer mRootDisplayAreaOrganizer; - private final IActivityTaskManager mActivityTaskManager; private final SplitScreenShellCommandHandler mSplitScreenShellCommandHandler; - private final DesktopState mDesktopState; - private final MSDLPlayer mMSDLPlayer; @VisibleForTesting StageCoordinator mStageCoordinator; + // Only used for the legacy recents animation from splitscreen to allow the tasks to be animated + // outside the bounds of the roots by being reparented into a higher level fullscreen container + private SurfaceControl mGoingToRecentsTasksLayer; + private SurfaceControl mStartingSplitTasksLayer; + /** * @param stageCoordinator if null, a stage coordinator will be created when this controller is * initialized. Can be non-null for testing purposes. @@ -241,16 +224,9 @@ public class SplitScreenController implements SplitDragPolicy.Starter, LaunchAdjacentController launchAdjacentController, Optional<WindowDecorViewModel> windowDecorViewModel, Optional<DesktopTasksController> desktopTasksController, - Optional<DesktopUserRepositories> desktopUserRepositories, @Nullable StageCoordinator stageCoordinator, MultiInstanceHelper multiInstanceHelper, - SplitState splitState, - ShellExecutor mainExecutor, - Handler mainHandler, - RootDisplayAreaOrganizer rootDisplayAreaOrganizer, - DesktopState desktopState, - IActivityTaskManager activityTaskManager, - MSDLPlayer msdlPlayer) { + ShellExecutor mainExecutor) { mShellCommandHandler = shellCommandHandler; mShellController = shellController; mTaskOrganizer = shellTaskOrganizer; @@ -259,7 +235,6 @@ public class SplitScreenController implements SplitDragPolicy.Starter, mLauncherApps = context.getSystemService(LauncherApps.class); mRootTDAOrganizer = rootTDAOrganizer; mMainExecutor = mainExecutor; - mMainHandler = mainHandler; mDisplayController = displayController; mDisplayImeController = displayImeController; mDisplayInsetsController = displayInsetsController; @@ -271,15 +246,9 @@ public class SplitScreenController implements SplitDragPolicy.Starter, mLaunchAdjacentController = launchAdjacentController; mWindowDecorViewModel = windowDecorViewModel; mDesktopTasksController = desktopTasksController; - mDesktopUserRepositories = desktopUserRepositories; mStageCoordinator = stageCoordinator; mMultiInstanceHelpher = multiInstanceHelper; - mSplitState = splitState; - mRootDisplayAreaOrganizer = rootDisplayAreaOrganizer; - mActivityTaskManager = activityTaskManager; mSplitScreenShellCommandHandler = new SplitScreenShellCommandHandler(this); - mDesktopState = desktopState; - mMSDLPlayer = msdlPlayer; // TODO(b/238217847): Temporarily add this check here until we can remove the dynamic // override for this controller from the base module if (ActivityTaskManager.supportsSplitScreenMultiWindow(context)) { @@ -305,7 +274,7 @@ public class SplitScreenController implements SplitDragPolicy.Starter, mShellCommandHandler.addCommandCallback("splitscreen", mSplitScreenShellCommandHandler, this); mShellController.addKeyguardChangeListener(this); - mShellController.addExternalInterface(ISplitScreen.DESCRIPTOR, + mShellController.addExternalInterface(KEY_EXTRA_SHELL_SPLIT_SCREEN, this::createExternalInterface, this); if (mStageCoordinator == null) { // TODO: Multi-display @@ -322,10 +291,8 @@ public class SplitScreenController implements SplitDragPolicy.Starter, return new StageCoordinator(mContext, DEFAULT_DISPLAY, mSyncQueue, mTaskOrganizer, mDisplayController, mDisplayImeController, mDisplayInsetsController, mTransitions, mTransactionPool, mIconProvider, - mMainExecutor, mMainHandler, mRecentTasksOptional, mLaunchAdjacentController, - mWindowDecorViewModel, mSplitState, mDesktopTasksController, - mDesktopUserRepositories, mRootTDAOrganizer, - mRootDisplayAreaOrganizer, mDesktopState, mActivityTaskManager, mMSDLPlayer); + mMainExecutor, mRecentTasksOptional, mLaunchAdjacentController, + mWindowDecorViewModel); } @Override @@ -333,10 +300,6 @@ public class SplitScreenController implements SplitDragPolicy.Starter, return mContext; } - protected DesktopState getDesktopState() { - return mDesktopState; - } - @Override public ShellExecutor getRemoteCallExecutor() { return mMainExecutor; @@ -350,10 +313,6 @@ public class SplitScreenController implements SplitDragPolicy.Starter, return mStageCoordinator; } - public SplitMultiDisplayProvider getMultiDisplayProvider() { - return mStageCoordinator; - } - @Nullable public ActivityManager.RunningTaskInfo getTaskInfo(@SplitPosition int splitPosition) { if (!isSplitScreenVisible() || splitPosition == SPLIT_POSITION_UNDEFINED) { @@ -364,21 +323,6 @@ public class SplitScreenController implements SplitDragPolicy.Starter, return mTaskOrganizer.getRunningTaskInfo(taskId); } - /** - * @return an Array of RunningTaskInfo's ordered by leftToRight or topTopBottom - */ - public ActivityManager.RunningTaskInfo[] getAllTaskInfos() { - // TODO(b/349828130) Add the third stage task info and not rely on positions - ActivityManager.RunningTaskInfo topLeftTask = getTaskInfo(SPLIT_POSITION_TOP_OR_LEFT); - ActivityManager.RunningTaskInfo bottomRightTask = - getTaskInfo(SPLIT_POSITION_BOTTOM_OR_RIGHT); - if (topLeftTask != null && bottomRightTask != null) { - return new ActivityManager.RunningTaskInfo[]{topLeftTask, bottomRightTask}; - } - - return new ActivityManager.RunningTaskInfo[0]; - } - /** Check task is under split or not by taskId. */ public boolean isTaskInSplitScreen(int taskId) { return mStageCoordinator.getStageOfTask(taskId) != STAGE_TYPE_UNDEFINED; @@ -435,6 +379,10 @@ public class SplitScreenController implements SplitDragPolicy.Starter, return mStageCoordinator.moveToStage(task, stagePosition, wct); } + public boolean removeFromSideStage(int taskId) { + return mStageCoordinator.removeFromSideStage(taskId); + } + public void setSideStagePosition(@SplitPosition int sideStagePosition) { mStageCoordinator.setSideStagePosition(sideStagePosition, null /* wct */); } @@ -446,7 +394,7 @@ public class SplitScreenController implements SplitDragPolicy.Starter, public void prepareEnterSplitScreen(WindowContainerTransaction wct, ActivityManager.RunningTaskInfo taskInfo, int startPosition) { mStageCoordinator.prepareEnterSplitScreen(wct, taskInfo, startPosition, - false /* resizeAnim */, SPLIT_INDEX_UNDEFINED); + false /* resizeAnim */); } /** @@ -474,43 +422,10 @@ public class SplitScreenController implements SplitDragPolicy.Starter, */ public void prepareExitSplitScreen(WindowContainerTransaction wct, @StageType int stageToTop, @ExitReason int reason) { - mStageCoordinator.prepareExitSplitScreen(stageToTop, wct, reason); - mStageCoordinator.setDividerVisibility(false, null); + mStageCoordinator.prepareExitSplitScreen(stageToTop, wct); mStageCoordinator.clearSplitPairedInRecents(reason); } - /** - * Determines which split position a new instance of a task should take. - * @param callingTask The task requesting a new instance. - * @return the split position of the new instance - */ - public int determineNewInstancePosition(@NonNull ActivityManager.RunningTaskInfo callingTask) { - if (callingTask.getWindowingMode() == WINDOWING_MODE_FULLSCREEN - || getSplitPosition(callingTask.taskId) == SPLIT_POSITION_TOP_OR_LEFT) { - return SPLIT_POSITION_BOTTOM_OR_RIGHT; - } else { - return SPLIT_POSITION_TOP_OR_LEFT; - } - } - - /** - * Determines which split index a new instance of a task should take. - * @param callingTask The task requesting a new instance. - * @return the split index of the new instance - */ - @SplitIndex - public int determineNewInstanceIndex(@NonNull ActivityManager.RunningTaskInfo callingTask) { - if (!enableFlexibleSplit()) { - throw new IllegalStateException("Use determineNewInstancePosition"); - } - if (callingTask.getWindowingMode() == WINDOWING_MODE_FULLSCREEN - || getSplitPosition(callingTask.taskId) == SPLIT_POSITION_TOP_OR_LEFT) { - return SPLIT_INDEX_1; - } else { - return SPLIT_INDEX_0; - } - } - public void enterSplitScreen(int taskId, boolean leftOrTop) { enterSplitScreen(taskId, leftOrTop, new WindowContainerTransaction()); } @@ -522,21 +437,21 @@ public class SplitScreenController implements SplitDragPolicy.Starter, } public void exitSplitScreen(int toTopTaskId, @ExitReason int exitReason) { - mStageCoordinator.dismissSplitScreen(toTopTaskId, exitReason); + if (ENABLE_SHELL_TRANSITIONS) { + mStageCoordinator.dismissSplitScreen(toTopTaskId, exitReason); + } else { + mStageCoordinator.exitSplitScreen(toTopTaskId, exitReason); + } } @Override public void onKeyguardVisibilityChanged(boolean visible, boolean occluded, boolean animatingDismiss) { - mStageCoordinator.onKeyguardStateChanged(visible, occluded); + mStageCoordinator.onKeyguardVisibilityChanged(visible); } - public void onStartedGoingToSleep() { - mStageCoordinator.onStartedGoingToSleep(); - } - - public void onStartedWakingUp() { - mStageCoordinator.onStartedWakingUp(); + public void onFinishedWakingUp() { + mStageCoordinator.onFinishedWakingUp(); } public void exitSplitScreenOnHide(boolean exitSplitScreenOnHide) { @@ -547,11 +462,6 @@ public class SplitScreenController implements SplitDragPolicy.Starter, mStageCoordinator.getStageBounds(outTopOrLeftBounds, outBottomOrRightBounds); } - /** Get the parent-based coordinates for split stages. */ - public void getRefStageBounds(Rect outTopOrLeftBounds, Rect outBottomOrRightBounds) { - mStageCoordinator.getRefStageBounds(outTopOrLeftBounds, outBottomOrRightBounds); - } - public void registerSplitScreenListener(SplitScreen.SplitScreenListener listener) { mStageCoordinator.registerSplitScreenListener(listener); } @@ -607,31 +517,16 @@ public class SplitScreenController implements SplitDragPolicy.Starter, /** * Move a task to split select * @param taskInfo the task being moved to split select + * @param wct transaction to apply if this is a valid request * @param splitPosition the split position this task should move to * @param taskBounds current freeform bounds of the task entering split - * @param startRecents whether this request should start a recents transition - * @param withRecentsWct a wct so include in the recents transition */ public void requestEnterSplitSelect(ActivityManager.RunningTaskInfo taskInfo, - int splitPosition, Rect taskBounds, boolean startRecents, - @Nullable WindowContainerTransaction withRecentsWct) { - if (!startRecents && withRecentsWct != null) { - throw new IllegalArgumentException("Must be starting recents to include a wct"); - } - mStageCoordinator.requestEnterSplitSelect(taskInfo, splitPosition, taskBounds, - startRecents, withRecentsWct); + WindowContainerTransaction wct, int splitPosition, Rect taskBounds) { + mStageCoordinator.requestEnterSplitSelect(taskInfo, wct, splitPosition, taskBounds); } - /** - * Starts an existing task into split. - * TODO(b/351900580): We should remove this path and use StageCoordinator#startTask() instead - * @param hideTaskToken is not supported. - */ - public void startTask(int taskId, @SplitPosition int position, @Nullable Bundle options, - @Nullable WindowContainerToken hideTaskToken) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_DRAG_AND_DROP, - "Legacy startTask does not support hide task token"); - if (isTaskInSplitScreenForeground(taskId)) return; + public void startTask(int taskId, @SplitPosition int position, @Nullable Bundle options) { final int[] result = new int[1]; IRemoteAnimationRunner wrapper = new IRemoteAnimationRunner.Stub() { @Override @@ -673,22 +568,13 @@ public class SplitScreenController implements SplitDragPolicy.Starter, } } - /** - * Starts an existing task via StageCoordinator. - */ - public void startTask(int taskId, @SplitPosition int position, @Nullable Bundle options, - @Nullable WindowContainerToken hideTaskToken, @SplitIndex int index) { - mStageCoordinator.startTask(taskId, position, options, hideTaskToken, index); - } - /** * See {@link #startShortcut(String, String, int, Bundle, UserHandle)} * @param instanceId to be used by {@link SplitscreenEventLogger} */ public void startShortcut(String packageName, String shortcutId, @SplitPosition int position, @Nullable Bundle options, UserHandle user, @NonNull InstanceId instanceId) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "startShortcut: reason=%d", ENTER_REASON_LAUNCHER); - mStageCoordinator.getLogger().enterRequested(instanceId, ENTER_REASON_LAUNCHER); + mStageCoordinator.onRequestToSplit(instanceId, ENTER_REASON_LAUNCHER); startShortcut(packageName, shortcutId, position, options, user); } @@ -697,12 +583,11 @@ public class SplitScreenController implements SplitDragPolicy.Starter, @Nullable Bundle options, UserHandle user) { if (options == null) options = new Bundle(); final ActivityOptions activityOptions = ActivityOptions.fromBundle(options); - final int userId = user.getIdentifier(); - if (samePackage(packageName, getPackageName(reverseSplitPosition(position), null), - userId, getUserId(reverseSplitPosition(position), null))) { + if (samePackage(packageName, getPackageName(reverseSplitPosition(position)), + user.getIdentifier(), getUserId(reverseSplitPosition(position)))) { if (mMultiInstanceHelpher.supportsMultiInstanceSplit( - getShortcutComponent(packageName, shortcutId, user, mLauncherApps), userId)) { + getShortcutComponent(packageName, shortcutId, user, mLauncherApps))) { activityOptions.setApplyMultipleTaskFlagForShortcut(true); ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Adding MULTIPLE_TASK"); } else if (isSplitScreenVisible()) { @@ -723,6 +608,37 @@ public class SplitScreenController implements SplitDragPolicy.Starter, activityOptions.toBundle(), user); } + void startShortcutAndTaskWithLegacyTransition(@NonNull ShortcutInfo shortcutInfo, + @Nullable Bundle options1, int taskId, @Nullable Bundle options2, + @SplitPosition int splitPosition, @PersistentSnapPosition int snapPosition, + RemoteAnimationAdapter adapter, InstanceId instanceId) { + if (options1 == null) options1 = new Bundle(); + final ActivityOptions activityOptions = ActivityOptions.fromBundle(options1); + + final String packageName1 = shortcutInfo.getPackage(); + final String packageName2 = SplitScreenUtils.getPackageName(taskId, mTaskOrganizer); + final int userId1 = shortcutInfo.getUserId(); + final int userId2 = SplitScreenUtils.getUserId(taskId, mTaskOrganizer); + if (samePackage(packageName1, packageName2, userId1, userId2)) { + if (mMultiInstanceHelpher.supportsMultiInstanceSplit(shortcutInfo.getActivity())) { + activityOptions.setApplyMultipleTaskFlagForShortcut(true); + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Adding MULTIPLE_TASK"); + } else { + taskId = INVALID_TASK_ID; + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, + "Cancel entering split as not supporting multi-instances"); + Log.w(TAG, splitFailureMessage("startShortcutAndTaskWithLegacyTransition", + "app package " + packageName1 + " does not support multi-instance")); + Toast.makeText(mContext, R.string.dock_multi_instances_not_supported_text, + Toast.LENGTH_SHORT).show(); + } + } + + mStageCoordinator.startShortcutAndTaskWithLegacyTransition(shortcutInfo, + activityOptions.toBundle(), taskId, options2, splitPosition, snapPosition, adapter, + instanceId); + } + void startShortcutAndTask(@NonNull ShortcutInfo shortcutInfo, @Nullable Bundle options1, int taskId, @Nullable Bundle options2, @SplitPosition int splitPosition, @PersistentSnapPosition int snapPosition, @Nullable RemoteTransition remoteTransition, @@ -732,12 +648,11 @@ public class SplitScreenController implements SplitDragPolicy.Starter, final String packageName1 = shortcutInfo.getPackage(); // NOTE: This doesn't correctly pull out packageName2 if taskId is referring to a task in // recents that hasn't launched and is not being organized - final String packageName2 = ComponentUtils.getPackageName(taskId, mTaskOrganizer); + final String packageName2 = SplitScreenUtils.getPackageName(taskId, mTaskOrganizer); final int userId1 = shortcutInfo.getUserId(); final int userId2 = SplitScreenUtils.getUserId(taskId, mTaskOrganizer); if (samePackage(packageName1, packageName2, userId1, userId2)) { - if (mMultiInstanceHelpher.supportsMultiInstanceSplit(shortcutInfo.getActivity(), - userId1)) { + if (mMultiInstanceHelpher.supportsMultiInstanceSplit(shortcutInfo.getActivity())) { activityOptions.setApplyMultipleTaskFlagForShortcut(true); ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Adding MULTIPLE_TASK"); } else { @@ -761,16 +676,37 @@ public class SplitScreenController implements SplitDragPolicy.Starter, * See {@link #startIntent(PendingIntent, int, Intent, int, Bundle)} * @param instanceId to be used by {@link SplitscreenEventLogger} */ - public void startIntentWithInstanceId(PendingIntent intent, int userId, - @Nullable Intent fillInIntent, @SplitPosition int position, @Nullable Bundle options, - @NonNull InstanceId instanceId) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "startIntentWithInstanceId: reason=%d", - ENTER_REASON_LAUNCHER); - mStageCoordinator.getLogger().enterRequested(instanceId, ENTER_REASON_LAUNCHER); - // TODO(b/349828130) currently pass in index_undefined until we can revisit these - // specific cases in the future. Only focusing on parity with starting intent/task - startIntent(intent, userId, fillInIntent, position, options, null /* hideTaskToken */, - SPLIT_INDEX_UNDEFINED); + public void startIntent(PendingIntent intent, int userId, @Nullable Intent fillInIntent, + @SplitPosition int position, @Nullable Bundle options, @NonNull InstanceId instanceId) { + mStageCoordinator.onRequestToSplit(instanceId, ENTER_REASON_LAUNCHER); + startIntent(intent, userId, fillInIntent, position, options); + } + + private void startIntentAndTaskWithLegacyTransition(PendingIntent pendingIntent, int userId1, + @Nullable Bundle options1, int taskId, @Nullable Bundle options2, + @SplitPosition int splitPosition, @PersistentSnapPosition int snapPosition, + RemoteAnimationAdapter adapter, InstanceId instanceId) { + Intent fillInIntent = null; + final String packageName1 = SplitScreenUtils.getPackageName(pendingIntent); + final String packageName2 = SplitScreenUtils.getPackageName(taskId, mTaskOrganizer); + final int userId2 = SplitScreenUtils.getUserId(taskId, mTaskOrganizer); + if (samePackage(packageName1, packageName2, userId1, userId2)) { + if (mMultiInstanceHelpher.supportsMultiInstanceSplit(getComponent(pendingIntent))) { + fillInIntent = new Intent(); + fillInIntent.addFlags(FLAG_ACTIVITY_MULTIPLE_TASK); + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Adding MULTIPLE_TASK"); + } else { + taskId = INVALID_TASK_ID; + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, + "Cancel entering split as not supporting multi-instances"); + Log.w(TAG, splitFailureMessage("startIntentAndTaskWithLegacyTransition", + "app package " + packageName1 + " does not support multi-instance")); + Toast.makeText(mContext, R.string.dock_multi_instances_not_supported_text, + Toast.LENGTH_SHORT).show(); + } + } + mStageCoordinator.startIntentAndTaskWithLegacyTransition(pendingIntent, fillInIntent, + options1, taskId, options2, splitPosition, snapPosition, adapter, instanceId); } private void startIntentAndTask(PendingIntent pendingIntent, int userId1, @@ -778,15 +714,14 @@ public class SplitScreenController implements SplitDragPolicy.Starter, @SplitPosition int splitPosition, @PersistentSnapPosition int snapPosition, @Nullable RemoteTransition remoteTransition, InstanceId instanceId) { Intent fillInIntent = null; - final String packageName1 = ComponentUtils.getPackageName(pendingIntent); + final String packageName1 = SplitScreenUtils.getPackageName(pendingIntent); // NOTE: This doesn't correctly pull out packageName2 if taskId is referring to a task in // recents that hasn't launched and is not being organized - final String packageName2 = ComponentUtils.getPackageName(taskId, mTaskOrganizer); + final String packageName2 = SplitScreenUtils.getPackageName(taskId, mTaskOrganizer); final int userId2 = SplitScreenUtils.getUserId(taskId, mTaskOrganizer); boolean setSecondIntentMultipleTask = false; if (samePackage(packageName1, packageName2, userId1, userId2)) { - if (mMultiInstanceHelpher.supportsMultiInstanceSplit(getComponent(pendingIntent), - userId1)) { + if (mMultiInstanceHelpher.supportsMultiInstanceSplit(getComponent(pendingIntent))) { setSecondIntentMultipleTask = true; ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Adding MULTIPLE_TASK"); } else { @@ -810,6 +745,38 @@ public class SplitScreenController implements SplitDragPolicy.Starter, options2, splitPosition, snapPosition, remoteTransition, instanceId); } + private void startIntentsWithLegacyTransition(PendingIntent pendingIntent1, int userId1, + @Nullable ShortcutInfo shortcutInfo1, @Nullable Bundle options1, + PendingIntent pendingIntent2, int userId2, @Nullable ShortcutInfo shortcutInfo2, + @Nullable Bundle options2, @SplitPosition int splitPosition, + @PersistentSnapPosition int snapPosition, RemoteAnimationAdapter adapter, + InstanceId instanceId) { + Intent fillInIntent1 = null; + Intent fillInIntent2 = null; + final String packageName1 = SplitScreenUtils.getPackageName(pendingIntent1); + final String packageName2 = SplitScreenUtils.getPackageName(pendingIntent2); + if (samePackage(packageName1, packageName2, userId1, userId2)) { + if (mMultiInstanceHelpher.supportsMultiInstanceSplit(getComponent(pendingIntent1))) { + fillInIntent1 = new Intent(); + fillInIntent1.addFlags(FLAG_ACTIVITY_MULTIPLE_TASK); + fillInIntent2 = new Intent(); + fillInIntent2.addFlags(FLAG_ACTIVITY_MULTIPLE_TASK); + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Adding MULTIPLE_TASK"); + } else { + pendingIntent2 = null; + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, + "Cancel entering split as not supporting multi-instances"); + Log.w(TAG, splitFailureMessage("startIntentsWithLegacyTransition", + "app package " + packageName1 + " does not support multi-instance")); + Toast.makeText(mContext, R.string.dock_multi_instances_not_supported_text, + Toast.LENGTH_SHORT).show(); + } + } + mStageCoordinator.startIntentsWithLegacyTransition(pendingIntent1, fillInIntent1, + shortcutInfo1, options1, pendingIntent2, fillInIntent2, shortcutInfo2, options2, + splitPosition, snapPosition, adapter, instanceId); + } + private void startIntents(PendingIntent pendingIntent1, int userId1, @Nullable ShortcutInfo shortcutInfo1, @Nullable Bundle options1, PendingIntent pendingIntent2, int userId2, @Nullable ShortcutInfo shortcutInfo2, @@ -818,16 +785,15 @@ public class SplitScreenController implements SplitDragPolicy.Starter, InstanceId instanceId) { Intent fillInIntent1 = null; Intent fillInIntent2 = null; - final String packageName1 = ComponentUtils.getPackageName(pendingIntent1); - final String packageName2 = ComponentUtils.getPackageName(pendingIntent2); + final String packageName1 = SplitScreenUtils.getPackageName(pendingIntent1); + final String packageName2 = SplitScreenUtils.getPackageName(pendingIntent2); final ActivityOptions activityOptions1 = options1 != null ? ActivityOptions.fromBundle(options1) : ActivityOptions.makeBasic(); final ActivityOptions activityOptions2 = options2 != null ? ActivityOptions.fromBundle(options2) : ActivityOptions.makeBasic(); boolean setSecondIntentMultipleTask = false; if (samePackage(packageName1, packageName2, userId1, userId2)) { - if (mMultiInstanceHelpher.supportsMultiInstanceSplit(getComponent(pendingIntent1), - userId1)) { + if (mMultiInstanceHelpher.supportsMultiInstanceSplit(getComponent(pendingIntent1))) { fillInIntent1 = new Intent(); fillInIntent1.addFlags(FLAG_ACTIVITY_MULTIPLE_TASK); setSecondIntentMultipleTask = true; @@ -861,24 +827,7 @@ public class SplitScreenController implements SplitDragPolicy.Starter, @Override public void startIntent(PendingIntent intent, int userId1, @Nullable Intent fillInIntent, - @SplitPosition int position, @Nullable Bundle options, - @Nullable WindowContainerToken hideTaskToken, @SplitIndex int index) { - startIntent(intent, userId1, fillInIntent, position, options, hideTaskToken, - false /* forceLaunchNewTask */, index, DEFAULT_DISPLAY); - } - - /** - * Starts the given intent into split. - * - * @param hideTaskToken If non-null, a task matching this token will be moved to back in the - * same window container transaction as the starting of the intent. - * @param forceLaunchNewTask If true, this method will skip the check for a background task - * matching the intent and launch a new task. - */ - public void startIntent(PendingIntent intent, int userId1, @Nullable Intent fillInIntent, - @SplitPosition int position, @Nullable Bundle options, - @Nullable WindowContainerToken hideTaskToken, boolean forceLaunchNewTask, - @SplitIndex int index, int displayId) { + @SplitPosition int position, @Nullable Bundle options) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "startIntent(): intent=%s user=%d fillInIntent=%s position=%d", intent, userId1, fillInIntent, position); @@ -888,29 +837,30 @@ public class SplitScreenController implements SplitDragPolicy.Starter, if (fillInIntent == null) fillInIntent = new Intent(); fillInIntent.addFlags(FLAG_ACTIVITY_NO_USER_ACTION); - final String packageName1 = ComponentUtils.getPackageName(intent); - final String packageName2 = getPackageName(reverseSplitPosition(position), hideTaskToken); - final int userId2 = getUserId(reverseSplitPosition(position), hideTaskToken); + final String packageName1 = SplitScreenUtils.getPackageName(intent); + final String packageName2 = getPackageName(reverseSplitPosition(position)); + final int userId2 = getUserId(reverseSplitPosition(position)); final ComponentName component = intent.getIntent().getComponent(); // To prevent accumulating large number of instances in the background, reuse task // in the background. If we don't explicitly reuse, new may be created even if the app // isn't multi-instance because WM won't automatically remove/reuse the previous instance - final ActivityManager.RecentTaskInfo taskInfo = forceLaunchNewTask ? null : - mRecentTasksOptional - .map(recentTasks -> recentTasks.findTaskInBackground(component, userId1, - hideTaskToken)) + final ActivityManager.RecentTaskInfo taskInfo = mRecentTasksOptional + .map(recentTasks -> recentTasks.findTaskInBackground(component, userId1)) .orElse(null); if (taskInfo != null) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Found suitable background task=%s", taskInfo); - mStageCoordinator.startTask(taskInfo.taskId, position, options, hideTaskToken, index); - + if (ENABLE_SHELL_TRANSITIONS) { + mStageCoordinator.startTask(taskInfo.taskId, position, options); + } else { + startTask(taskInfo.taskId, position, options); + } ProtoLog.v(ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN, "Start task in background"); return; } if (samePackage(packageName1, packageName2, userId1, userId2)) { - if (mMultiInstanceHelpher.supportsMultiInstanceSplit(getComponent(intent), userId1)) { + if (mMultiInstanceHelpher.supportsMultiInstanceSplit(getComponent(intent))) { // Flag with MULTIPLE_TASK if this is launching the same activity into both sides of // the split and there is no reusable background task. fillInIntent.addFlags(FLAG_ACTIVITY_MULTIPLE_TASK); @@ -929,46 +879,37 @@ public class SplitScreenController implements SplitDragPolicy.Starter, } } - mStageCoordinator.startIntent(intent, fillInIntent, position, options, hideTaskToken, - index, displayId); + mStageCoordinator.startIntent(intent, fillInIntent, position, options); } - /** - * Retrieve package name of a specific split position if split screen is activated, otherwise - * returns the package name of the top running task. - * TODO(b/351900580): Merge this with getUserId() so we don't make multiple binder calls - */ + /** Retrieve package name of a specific split position if split screen is activated, otherwise + * returns the package name of the top running task. */ @Nullable - private String getPackageName(@SplitPosition int position, - @Nullable WindowContainerToken ignoreTaskToken) { + private String getPackageName(@SplitPosition int position) { ActivityManager.RunningTaskInfo taskInfo; if (isSplitScreenVisible()) { taskInfo = getTaskInfo(position); } else { taskInfo = mRecentTasksOptional - .map(recentTasks -> recentTasks.getTopRunningTask(ignoreTaskToken)) + .map(recentTasks -> recentTasks.getTopRunningTask()) .orElse(null); if (!isValidToSplit(taskInfo)) { return null; } } - return taskInfo != null ? ComponentUtils.getPackageName(taskInfo.baseIntent) : null; + return taskInfo != null ? SplitScreenUtils.getPackageName(taskInfo.baseIntent) : null; } - /** - * Retrieve user id of a specific split position if split screen is activated, otherwise - * returns the user id of the top running task. - * TODO: Merge this with getPackageName() so we don't make multiple binder calls - */ - private int getUserId(@SplitPosition int position, - @Nullable WindowContainerToken ignoreTaskToken) { + /** Retrieve user id of a specific split position if split screen is activated, otherwise + * returns the user id of the top running task. */ + private int getUserId(@SplitPosition int position) { ActivityManager.RunningTaskInfo taskInfo; if (isSplitScreenVisible()) { taskInfo = getTaskInfo(position); } else { taskInfo = mRecentTasksOptional - .map(recentTasks -> recentTasks.getTopRunningTask(ignoreTaskToken)) + .map(recentTasks -> recentTasks.getTopRunningTask()) .orElse(null); if (!isValidToSplit(taskInfo)) { return -1; @@ -1006,9 +947,66 @@ public class SplitScreenController implements SplitDragPolicy.Starter, return fillInIntent2; } + RemoteAnimationTarget[] onGoingToRecentsLegacy(RemoteAnimationTarget[] apps) { + if (ENABLE_SHELL_TRANSITIONS) return null; + + if (isSplitScreenVisible()) { + // Evict child tasks except the top visible one under split root to ensure it could be + // launched as full screen when switching to it on recents. + final WindowContainerTransaction wct = new WindowContainerTransaction(); + mStageCoordinator.prepareEvictInvisibleChildTasks(wct); + mSyncQueue.queue(wct); + } else { + return null; + } + + SurfaceControl.Transaction t = mTransactionPool.acquire(); + if (mGoingToRecentsTasksLayer != null) { + t.remove(mGoingToRecentsTasksLayer); + } + mGoingToRecentsTasksLayer = reparentSplitTasksForAnimation(apps, t, + "SplitScreenController#onGoingToRecentsLegacy" /* callsite */); + t.apply(); + mTransactionPool.release(t); + + return new RemoteAnimationTarget[]{mStageCoordinator.getDividerBarLegacyTarget()}; + } + + RemoteAnimationTarget[] onStartingSplitLegacy(RemoteAnimationTarget[] apps) { + if (ENABLE_SHELL_TRANSITIONS) return null; + + int openingApps = 0; + for (int i = 0; i < apps.length; ++i) { + if (apps[i].mode == MODE_OPENING) openingApps++; + } + if (openingApps < 2) { + // Not having enough apps to enter split screen + return null; + } + + SurfaceControl.Transaction t = mTransactionPool.acquire(); + if (mStartingSplitTasksLayer != null) { + t.remove(mStartingSplitTasksLayer); + } + mStartingSplitTasksLayer = reparentSplitTasksForAnimation(apps, t, + "SplitScreenController#onStartingSplitLegacy" /* callsite */); + t.apply(); + mTransactionPool.release(t); + + try { + return new RemoteAnimationTarget[]{mStageCoordinator.getDividerBarLegacyTarget()}; + } finally { + for (RemoteAnimationTarget appTarget : apps) { + if (appTarget.leash != null) { + appTarget.leash.release(); + } + } + } + } + private SurfaceControl reparentSplitTasksForAnimation(RemoteAnimationTarget[] apps, SurfaceControl.Transaction t, String callsite) { - final SurfaceControl.Builder builder = new SurfaceControl.Builder() + final SurfaceControl.Builder builder = new SurfaceControl.Builder(new SurfaceSession()) .setContainerLayer() .setName("RecentsAnimationSplitTasks") .setHidden(false) @@ -1173,13 +1171,8 @@ public class SplitScreenController implements SplitDragPolicy.Starter, } @Override - public void onStartedGoingToSleep() { - mMainExecutor.execute(SplitScreenController.this::onStartedGoingToSleep); - } - - @Override - public void onStartedWakingUp() { - mMainExecutor.execute(SplitScreenController.this::onStartedWakingUp); + public void onFinishedWakingUp() { + mMainExecutor.execute(SplitScreenController.this::onFinishedWakingUp); } @Override @@ -1223,11 +1216,10 @@ public class SplitScreenController implements SplitDragPolicy.Starter, @Override public boolean onRequestEnterSplitSelect( ActivityManager.RunningTaskInfo taskInfo, int splitPosition, - Rect taskBounds, boolean startRecents, - @Nullable WindowContainerTransaction withRecentsWct) { + Rect taskBounds) { AtomicBoolean result = new AtomicBoolean(false); mSelectListener.call(l -> result.set(l.onRequestSplitSelect(taskInfo, - splitPosition, taskBounds, startRecents, withRecentsWct))); + splitPosition, taskBounds))); return result.get(); } }; @@ -1289,11 +1281,51 @@ public class SplitScreenController implements SplitDragPolicy.Starter, (controller) -> controller.exitSplitScreenOnHide(exitSplitScreenOnHide)); } + @Override + public void removeFromSideStage(int taskId) { + executeRemoteCallWithTaskPermission(mController, "removeFromSideStage", + (controller) -> controller.removeFromSideStage(taskId)); + } + @Override public void startTask(int taskId, int position, @Nullable Bundle options) { executeRemoteCallWithTaskPermission(mController, "startTask", - (controller) -> controller.startTask(taskId, position, options, - null /* hideTaskToken */)); + (controller) -> controller.startTask(taskId, position, options)); + } + + @Override + public void startTasksWithLegacyTransition(int taskId1, @Nullable Bundle options1, + int taskId2, @Nullable Bundle options2, @SplitPosition int splitPosition, + @PersistentSnapPosition int snapPosition, RemoteAnimationAdapter adapter, + InstanceId instanceId) { + executeRemoteCallWithTaskPermission(mController, "startTasks", + (controller) -> controller.mStageCoordinator.startTasksWithLegacyTransition( + taskId1, options1, taskId2, options2, splitPosition, snapPosition, + adapter, instanceId)); + } + + @Override + public void startIntentAndTaskWithLegacyTransition(PendingIntent pendingIntent, int userId1, + Bundle options1, int taskId, Bundle options2, int splitPosition, + @PersistentSnapPosition int snapPosition, RemoteAnimationAdapter adapter, + InstanceId instanceId) { + executeRemoteCallWithTaskPermission(mController, + "startIntentAndTaskWithLegacyTransition", (controller) -> + controller.startIntentAndTaskWithLegacyTransition(pendingIntent, + userId1, options1, taskId, options2, splitPosition, + snapPosition, adapter, instanceId)); + } + + @Override + public void startShortcutAndTaskWithLegacyTransition(ShortcutInfo shortcutInfo, + @Nullable Bundle options1, int taskId, @Nullable Bundle options2, + @SplitPosition int splitPosition, @PersistentSnapPosition int snapPosition, + RemoteAnimationAdapter adapter, InstanceId instanceId) { + executeRemoteCallWithTaskPermission(mController, + "startShortcutAndTaskWithLegacyTransition", (controller) -> + controller.startShortcutAndTaskWithLegacyTransition( + shortcutInfo, options1, taskId, options2, splitPosition, + snapPosition, adapter, instanceId)); } @Override @@ -1328,6 +1360,21 @@ public class SplitScreenController implements SplitDragPolicy.Starter, options2, splitPosition, snapPosition, remoteTransition, instanceId)); } + @Override + public void startIntentsWithLegacyTransition(PendingIntent pendingIntent1, int userId1, + @Nullable ShortcutInfo shortcutInfo1, @Nullable Bundle options1, + PendingIntent pendingIntent2, int userId2, @Nullable ShortcutInfo shortcutInfo2, + @Nullable Bundle options2, @SplitPosition int splitPosition, + @PersistentSnapPosition int snapPosition, RemoteAnimationAdapter adapter, + InstanceId instanceId) { + executeRemoteCallWithTaskPermission(mController, "startIntentsWithLegacyTransition", + (controller) -> + controller.startIntentsWithLegacyTransition(pendingIntent1, userId1, + shortcutInfo1, options1, pendingIntent2, userId2, shortcutInfo2, + options2, splitPosition, snapPosition, adapter, instanceId) + ); + } + @Override public void startIntents(PendingIntent pendingIntent1, int userId1, @Nullable ShortcutInfo shortcutInfo1, @Nullable Bundle options1, @@ -1355,8 +1402,26 @@ public class SplitScreenController implements SplitDragPolicy.Starter, public void startIntent(PendingIntent intent, int userId, Intent fillInIntent, int position, @Nullable Bundle options, InstanceId instanceId) { executeRemoteCallWithTaskPermission(mController, "startIntent", - (controller) -> controller.startIntentWithInstanceId(intent, userId, - fillInIntent, position, options, instanceId)); + (controller) -> controller.startIntent(intent, userId, fillInIntent, position, + options, instanceId)); + } + + @Override + public RemoteAnimationTarget[] onGoingToRecentsLegacy(RemoteAnimationTarget[] apps) { + final RemoteAnimationTarget[][] out = new RemoteAnimationTarget[][]{null}; + executeRemoteCallWithTaskPermission(mController, "onGoingToRecentsLegacy", + (controller) -> out[0] = controller.onGoingToRecentsLegacy(apps), + true /* blocking */); + return out[0]; + } + + @Override + public RemoteAnimationTarget[] onStartingSplitLegacy(RemoteAnimationTarget[] apps) { + final RemoteAnimationTarget[][] out = new RemoteAnimationTarget[][]{null}; + executeRemoteCallWithTaskPermission(mController, "onStartingSplitLegacy", + (controller) -> out[0] = controller.onStartingSplitLegacy(apps), + true /* blocking */); + return out[0]; } @Override diff --git a/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenShellCommandHandler.java b/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenShellCommandHandler.java index a016a84616..af11ebc515 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenShellCommandHandler.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenShellCommandHandler.java @@ -16,7 +16,7 @@ package com.android.wm.shell.splitscreen; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_UNKNOWN; import com.android.wm.shell.sysui.ShellCommandHandler; @@ -40,6 +40,8 @@ public class SplitScreenShellCommandHandler implements switch (args[0]) { case "moveToSideStage": return runMoveToSideStage(args, pw); + case "removeFromSideStage": + return runRemoveFromSideStage(args, pw); case "setSideStagePosition": return runSetSideStagePosition(args, pw); case "switchSplitPosition": @@ -65,6 +67,17 @@ public class SplitScreenShellCommandHandler implements return true; } + private boolean runRemoveFromSideStage(String[] args, PrintWriter pw) { + if (args.length < 2) { + // First argument is the action name. + pw.println("Error: task id should be provided as arguments"); + return false; + } + final int taskId = new Integer(args[1]); + mController.removeFromSideStage(taskId); + return true; + } + private boolean runSetSideStagePosition(String[] args, PrintWriter pw) { if (args.length < 2) { // First argument is the action name. @@ -96,6 +109,8 @@ public class SplitScreenShellCommandHandler implements public void printShellCommandHelp(PrintWriter pw, String prefix) { pw.println(prefix + "moveToSideStage <taskId> <SideStagePosition>"); pw.println(prefix + " Move a task with given id in split-screen mode."); + pw.println(prefix + "removeFromSideStage <taskId>"); + pw.println(prefix + " Remove a task with given id in split-screen mode."); pw.println(prefix + "setSideStagePosition <SideStagePosition>"); pw.println(prefix + " Sets the position of the side-stage."); pw.println(prefix + "switchSplitPosition"); diff --git a/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java b/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java index e65cf70556..b31ef2b6ad 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java @@ -21,13 +21,12 @@ import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManager.TRANSIT_OPEN; import static android.view.WindowManager.TRANSIT_TO_BACK; -import static com.android.wm.shell.Flags.enableFlexibleSplit; +import static com.android.wm.shell.animation.Interpolators.ALPHA_IN; +import static com.android.wm.shell.animation.Interpolators.ALPHA_OUT; +import static com.android.wm.shell.common.split.SplitScreenConstants.FADE_DURATION; +import static com.android.wm.shell.common.split.SplitScreenConstants.FLAG_IS_DIVIDER_BAR; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_TRANSITIONS; -import static com.android.wm.shell.shared.animation.Interpolators.ALPHA_IN; -import static com.android.wm.shell.shared.animation.Interpolators.ALPHA_OUT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.FADE_DURATION; -import static com.android.wm.shell.shared.split.SplitScreenConstants.FLAG_IS_DIVIDER_BAR; import static com.android.wm.shell.splitscreen.SplitScreen.stageTypeToString; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DRAG_DIVIDER; import static com.android.wm.shell.splitscreen.SplitScreenController.exitReasonToString; @@ -47,19 +46,15 @@ import android.window.TransitionInfo; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.common.split.SplitDecorManager; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.split.SplitScreenConstants; import com.android.wm.shell.transition.OneShotRemoteHandler; import com.android.wm.shell.transition.Transitions; import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; import java.util.concurrent.Executor; /** Manages transition animations for split-screen. */ @@ -150,7 +145,7 @@ class SplitScreenTransitions { final int rootIdx = TransitionUtil.rootIndexFor(change, info); if (mode == TRANSIT_CHANGE) { - if (change.getParent() != null && change.getTaskInfo() != null) { + if (change.getParent() != null) { // This is probably reparented, so we want the parent to be immediately visible final TransitionInfo.Change parentChange = info.getChange(change.getParent()); t.show(parentChange.getLeash()); @@ -273,21 +268,22 @@ class SplitScreenTransitions { @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull Transitions.TransitionFinishCallback finishCallback, - @NonNull Map<WindowContainerToken, SplitDecorManager> rootDecorMap) { + @NonNull WindowContainerToken mainRoot, @NonNull WindowContainerToken sideRoot, + @NonNull SplitDecorManager mainDecor, @NonNull SplitDecorManager sideDecor) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "playResizeAnimation: transition=%d", info.getDebugId()); initTransition(transition, finishTransaction, finishCallback); - Set<WindowContainerToken> rootDecorKeys = rootDecorMap.keySet(); for (int i = info.getChanges().size() - 1; i >= 0; --i) { final TransitionInfo.Change change = info.getChanges().get(i); - if (rootDecorKeys.contains(change.getContainer())) { + if (mainRoot.equals(change.getContainer()) || sideRoot.equals(change.getContainer())) { final SurfaceControl leash = change.getLeash(); startTransaction.setPosition(leash, change.getEndAbsBounds().left, change.getEndAbsBounds().top); startTransaction.setWindowCrop(leash, change.getEndAbsBounds().width(), change.getEndAbsBounds().height()); - SplitDecorManager decor = rootDecorMap.get(change.getContainer()); + SplitDecorManager decor = mainRoot.equals(change.getContainer()) + ? mainDecor : sideDecor; // This is to ensure onFinished be called after all animations ended. ValueAnimator va = new ValueAnimator(); @@ -363,8 +359,7 @@ class SplitScreenTransitions { WindowContainerTransaction wct, @Nullable RemoteTransition remoteTransition, Transitions.TransitionHandler handler, - int extraTransitType, boolean resizeAnim, - @SplitScreenConstants.PersistentSnapPosition int snapPosition) { + int extraTransitType, boolean resizeAnim) { if (mPendingEnter != null) { ProtoLog.v(WM_SHELL_TRANSITIONS, " splitTransition " + " skip to start enter split transition since it already exist. "); @@ -375,20 +370,19 @@ class SplitScreenTransitions { .onSplitAnimationInvoked(true /*animationRunning*/)); } final IBinder transition = mTransitions.startTransition(transitType, wct, handler); - setEnterTransition(transition, remoteTransition, extraTransitType, resizeAnim, - snapPosition); + setEnterTransition(transition, remoteTransition, extraTransitType, resizeAnim); return transition; } /** Sets a transition to enter split. */ void setEnterTransition(@NonNull IBinder transition, @Nullable RemoteTransition remoteTransition, - int extraTransitType, boolean resizeAnim, - int snapPosition) { + int extraTransitType, boolean resizeAnim) { mPendingEnter = new EnterSession( - transition, remoteTransition, extraTransitType, resizeAnim, snapPosition); + transition, remoteTransition, extraTransitType, resizeAnim); - ProtoLog.v(WM_SHELL_TRANSITIONS, " splitTransition deduced Enter split screen"); + ProtoLog.v(WM_SHELL_TRANSITIONS, " splitTransition " + + " deduced Enter split screen"); ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "setEnterTransition: transitType=%d resize=%b", extraTransitType, resizeAnim); } @@ -439,22 +433,15 @@ class SplitScreenTransitions { Transitions.TransitionHandler handler, @Nullable TransitionConsumedCallback consumedCallback, @Nullable TransitionFinishedCallback finishCallback, - @Nullable SplitDecorManager mainDecor, @Nullable SplitDecorManager sideDecor, - @Nullable List<SplitDecorManager> decorManagers) { + @NonNull SplitDecorManager mainDecor, @NonNull SplitDecorManager sideDecor) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " splitTransition deduced Resize split screen."); ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "setResizeTransition: hasPendingResize=%b", mPendingResize != null); if (mPendingResize != null) { + mainDecor.cancelRunningAnimations(); + sideDecor.cancelRunningAnimations(); mPendingResize.cancel(null); - if (enableFlexibleSplit()) { - for (SplitDecorManager stage : decorManagers) { - stage.cancelRunningAnimations(); - } - } else { - mainDecor.cancelRunningAnimations(); - sideDecor.cancelRunningAnimations(); - } mAnimations.clear(); onFinish(null /* wct */); } @@ -464,14 +451,12 @@ class SplitScreenTransitions { return transition; } - void mergeAnimation(IBinder transition, TransitionInfo info, - SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT, + void mergeAnimation(IBinder transition, TransitionInfo info, SurfaceControl.Transaction t, IBinder mergeTarget, Transitions.TransitionFinishCallback finishCallback) { if (mergeTarget != mAnimatingTransition) return; if (mActiveRemoteHandler != null) { - mActiveRemoteHandler.mergeAnimation(transition, info, startT, - finishT, mergeTarget, finishCallback); + mActiveRemoteHandler.mergeAnimation(transition, info, t, mergeTarget, finishCallback); } else { for (int i = mAnimations.size() - 1; i >= 0; --i) { final Animator anim = mAnimations.get(i); @@ -501,7 +486,7 @@ class SplitScreenTransitions { mPendingEnter.onConsumed(aborted); mPendingEnter = null; - mStageCoordinator.notifySplitAnimationStatus(false /*animationRunning*/); + mStageCoordinator.notifySplitAnimationFinished(); ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTransitionConsumed for enter transition"); } else if (isPendingDismiss(transition)) { mPendingDismiss.onConsumed(aborted); @@ -519,9 +504,7 @@ class SplitScreenTransitions { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTransitionConsumed for passThrough transition"); } - if (mActiveRemoteHandler != null) { - mActiveRemoteHandler.onTransitionConsumed(transition, aborted, finishT); - } + // TODO: handle transition consumed for active remote handler } void onFinish(WindowContainerTransaction wct) { @@ -678,18 +661,13 @@ class SplitScreenTransitions { /** Bundled information of enter transition. */ class EnterSession extends TransitSession { final boolean mResizeAnim; - /** The starting snap position we'll enter into with this transition. */ - final @SplitScreenConstants.PersistentSnapPosition int mEnteringPosition; - final boolean mRequireRootsInTransition; EnterSession(IBinder transition, @Nullable RemoteTransition remoteTransition, - int extraTransitType, boolean resizeAnim, int snapPosition) { + int extraTransitType, boolean resizeAnim) { super(transition, null /* consumedCallback */, null /* finishedCallback */, remoteTransition, extraTransitType); this.mResizeAnim = resizeAnim; - this.mEnteringPosition = snapPosition; - this.mRequireRootsInTransition = remoteTransition != null; } } diff --git a/wmshell/src/com/android/wm/shell/splitscreen/SplitscreenEventLogger.java b/wmshell/src/com/android/wm/shell/splitscreen/SplitscreenEventLogger.java index 2033902f03..a0bf843444 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/SplitscreenEventLogger.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/SplitscreenEventLogger.java @@ -24,7 +24,6 @@ import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED_ import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__CHILD_TASK_ENTER_PIP; import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__DEVICE_FOLDED; import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__DRAG_DIVIDER; -import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__FULLSCREEN_REQUEST; import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__FULLSCREEN_SHORTCUT; import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__DESKTOP_MODE; import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__RECREATE_SPLIT; @@ -33,9 +32,8 @@ import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED_ import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__SCREEN_LOCKED; import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__SCREEN_LOCKED_SHOW_ON_TOP; import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__UNKNOWN_EXIT; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; import static com.android.wm.shell.splitscreen.SplitScreenController.ENTER_REASON_DRAG; import static com.android.wm.shell.splitscreen.SplitScreenController.ENTER_REASON_LAUNCHER; import static com.android.wm.shell.splitscreen.SplitScreenController.ENTER_REASON_MULTI_INSTANCE; @@ -46,7 +44,6 @@ import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DEVICE_FOLDED; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DRAG_DIVIDER; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DESKTOP_MODE; -import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_FULLSCREEN_REQUEST; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_FULLSCREEN_SHORTCUT; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_RECREATE_SPLIT; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_RETURN_HOME; @@ -60,9 +57,8 @@ import android.util.Slog; import com.android.internal.logging.InstanceId; import com.android.internal.logging.InstanceIdSequence; -import com.android.internal.protolog.ProtoLog; import com.android.internal.util.FrameworkStatsLog; -import com.android.wm.shell.shared.split.SplitScreenConstants.SplitPosition; +import com.android.wm.shell.common.split.SplitScreenConstants.SplitPosition; import com.android.wm.shell.splitscreen.SplitScreenController.ExitReason; /** @@ -137,11 +133,6 @@ public class SplitscreenEventLogger { @SplitPosition int mainStagePosition, int mainStageUid, @SplitPosition int sideStagePosition, int sideStageUid, boolean isLandscape) { - if (hasStartedSession()) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "logEnter: no-op, previous session has not ended"); - return; - } - mLoggerSessionId = mIdSequence.newInstanceId(); int enterReason = getLoggerEnterReason(isLandscape); updateMainStageState(getMainStagePositionFromSplitPosition(mainStagePosition, isLandscape), @@ -149,14 +140,6 @@ public class SplitscreenEventLogger { updateSideStageState(getSideStagePositionFromSplitPosition(sideStagePosition, isLandscape), sideStageUid); updateSplitRatioState(splitRatio); - - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "logEnter: enterReason=%d splitRatio=%f " - + "mainStagePosition=%d mainStageUid=%d sideStagePosition=%d " - + "sideStageUid=%d isLandscape=%b mEnterSessionId=%d mLoggerSessionId=%d", - enterReason, splitRatio, mLastMainStagePosition, mLastMainStageUid, - mLastSideStagePosition, mLastSideStageUid, isLandscape, - mEnterSessionId != null ? mEnterSessionId.getId() : 0, mLoggerSessionId.getId()); - FrameworkStatsLog.write(FrameworkStatsLog.SPLITSCREEN_UI_CHANGED, FrameworkStatsLog.SPLITSCREEN_UICHANGED__ACTION__ENTER, enterReason, @@ -213,8 +196,6 @@ public class SplitscreenEventLogger { return SPLITSCREEN_UICHANGED__EXIT_REASON__FULLSCREEN_SHORTCUT; case EXIT_REASON_DESKTOP_MODE: return SPLITSCREEN_UICHANGED__EXIT_REASON__DESKTOP_MODE; - case EXIT_REASON_FULLSCREEN_REQUEST: - return SPLITSCREEN_UICHANGED__EXIT_REASON__FULLSCREEN_REQUEST; case EXIT_REASON_UNKNOWN: // Fall through default: @@ -231,25 +212,14 @@ public class SplitscreenEventLogger { @SplitPosition int mainStagePosition, int mainStageUid, @SplitPosition int sideStagePosition, int sideStageUid, boolean isLandscape) { if (mLoggerSessionId == null) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "logExit: no-op, mLoggerSessionId is null"); // Ignore changes until we've started logging the session return; } if ((mainStagePosition != SPLIT_POSITION_UNDEFINED && sideStagePosition != SPLIT_POSITION_UNDEFINED) || (mainStageUid != 0 && sideStageUid != 0)) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, - "logExit: no-op, only main or side stage should be set, not both/none"); throw new IllegalArgumentException("Only main or side stage should be set"); } - - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "logExit: exitReason=%d mainStagePosition=%d" - + " mainStageUid=%d sideStagePosition=%d sideStageUid=%d isLandscape=%b" - + " mLoggerSessionId=%d", getLoggerExitReason(exitReason), - getMainStagePositionFromSplitPosition(mainStagePosition, isLandscape), mainStageUid, - getSideStagePositionFromSplitPosition(sideStagePosition, isLandscape), sideStageUid, - isLandscape, mLoggerSessionId.getId()); - FrameworkStatsLog.write(FrameworkStatsLog.SPLITSCREEN_UI_CHANGED, FrameworkStatsLog.SPLITSCREEN_UICHANGED__ACTION__EXIT, 0 /* enterReason */, @@ -334,34 +304,25 @@ public class SplitscreenEventLogger { */ public void logResize(float splitRatio) { if (mLoggerSessionId == null) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "logResize: no-op, mLoggerSessionId is null"); // Ignore changes until we've started logging the session return; } if (splitRatio <= 0f || splitRatio >= 1f) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, - "logResize: no-op, splitRatio indicates that user is dismissing, not resizing"); // Don't bother reporting resizes that end up dismissing the split, that will be logged // via the exit event return; } if (!updateSplitRatioState(splitRatio)) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "logResize: no-op, split ratio was not changed"); // Ignore if there are no user perceived changes return; } - - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "logResize: splitRatio=%f mLoggerSessionId=%d", - mLastSplitRatio, mLoggerSessionId.getId()); FrameworkStatsLog.write(FrameworkStatsLog.SPLITSCREEN_UI_CHANGED, FrameworkStatsLog.SPLITSCREEN_UICHANGED__ACTION__RESIZE, 0 /* enterReason */, 0 /* exitReason */, mLastSplitRatio, - mLastMainStagePosition, - mLastMainStageUid, - mLastSideStagePosition, - mLastSideStageUid, + 0 /* mainStagePosition */, 0 /* mainStageUid */, + 0 /* sideStagePosition */, 0 /* sideStageUid */, 0 /* dragInstanceId */, mLoggerSessionId.getId()); } @@ -372,7 +333,6 @@ public class SplitscreenEventLogger { public void logSwap(@SplitPosition int mainStagePosition, int mainStageUid, @SplitPosition int sideStagePosition, int sideStageUid, boolean isLandscape) { if (mLoggerSessionId == null) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "logSwap: no-op, mLoggerSessionId is null"); // Ignore changes until we've started logging the session return; } @@ -381,11 +341,6 @@ public class SplitscreenEventLogger { mainStageUid); updateSideStageState(getSideStagePositionFromSplitPosition(sideStagePosition, isLandscape), sideStageUid); - - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "logSwap: mainStagePosition=%d mainStageUid=%d " - + "sideStagePosition=%d sideStageUid=%d mLoggerSessionId=%d", - mLastMainStagePosition, mLastMainStageUid, mLastSideStagePosition, - mLastSideStageUid, mLoggerSessionId.getId()); FrameworkStatsLog.write(FrameworkStatsLog.SPLITSCREEN_UI_CHANGED, FrameworkStatsLog.SPLITSCREEN_UICHANGED__ACTION__SWAP, 0 /* enterReason */, diff --git a/wmshell/src/com/android/wm/shell/splitscreen/StageCoordinator.java b/wmshell/src/com/android/wm/shell/splitscreen/StageCoordinator.java index 5cbd371f03..4287daa032 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/StageCoordinator.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/StageCoordinator.java @@ -16,76 +16,60 @@ package com.android.wm.shell.splitscreen; -import static android.app.ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS; +import static android.app.ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED; import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; import static android.app.WindowConfiguration.ACTIVITY_TYPE_RECENTS; -import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; -import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; import static android.content.Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT; import static android.content.res.Configuration.SMALLEST_SCREEN_WIDTH_DP_UNDEFINED; import static android.view.Display.DEFAULT_DISPLAY; -import static android.view.Display.INVALID_DISPLAY; +import static android.view.RemoteAnimationTarget.MODE_OPENING; +import static android.view.WindowManager.LayoutParams.TYPE_DOCK_DIVIDER; import static android.view.WindowManager.TRANSIT_CHANGE; import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManager.TRANSIT_KEYGUARD_OCCLUDE; import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.view.WindowManager.TRANSIT_TO_FRONT; +import static android.view.WindowManager.transitTypeToString; import static android.window.TransitionInfo.FLAG_IS_DISPLAY; import static android.window.WindowContainerTransaction.HierarchyOp.HIERARCHY_OP_TYPE_REORDER; -import static com.android.window.flags2.Flags.enableFullScreenWindowOnRemovingSplitScreenStageBugfix; -import static com.android.window.flags2.Flags.enableMultiDisplaySplit; -import static com.android.window.flags2.Flags.enableNonDefaultDisplaySplit; -import static com.android.wm.shell.Flags.enableEnterSplitRemoveBubble; -import static com.android.wm.shell.Flags.enableFlexibleSplit; -import static com.android.wm.shell.Flags.enableFlexibleTwoAppSplit; import static com.android.wm.shell.common.split.SplitLayout.PARALLAX_ALIGN_CENTER; -import static com.android.wm.shell.common.split.SplitLayout.PARALLAX_FLEX; -import static com.android.wm.shell.common.split.SplitLayout.RESTING_DIM_LAYER; +import static com.android.wm.shell.common.split.SplitScreenConstants.FLAG_IS_DIVIDER_BAR; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.common.split.SplitScreenConstants.splitPositionToString; +import static com.android.wm.shell.common.split.SplitScreenUtils.getResizingBackgroundColor; import static com.android.wm.shell.common.split.SplitScreenUtils.reverseSplitPosition; import static com.android.wm.shell.common.split.SplitScreenUtils.splitFailureMessage; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN; import static com.android.wm.shell.shared.TransitionUtil.isClosingType; import static com.android.wm.shell.shared.TransitionUtil.isOpeningType; -import static com.android.wm.shell.shared.split.SplitScreenConstants.FLAG_IS_DIVIDER_BAR; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_10_90; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_90_10; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_INDEX_0; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_INDEX_1; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_INDEX_UNDEFINED; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; -import static com.android.wm.shell.shared.split.SplitScreenConstants.splitPositionToString; -import static com.android.wm.shell.shared.split.SplitScreenConstants.splitStateToSnapPosition; -import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_A; -import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_B; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_MAIN; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_SIDE; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_UNDEFINED; -import static com.android.wm.shell.splitscreen.SplitScreen.stageTypeToString; import static com.android.wm.shell.splitscreen.SplitScreenController.ENTER_REASON_LAUNCHER; +import static com.android.wm.shell.splitscreen.SplitScreenController.ENTER_REASON_MULTI_INSTANCE; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_APP_FINISHED; -import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_CHILD_TASK_ENTER_BUBBLE; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_CHILD_TASK_ENTER_PIP; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DESKTOP_MODE; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DEVICE_FOLDED; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DRAG_DIVIDER; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_FULLSCREEN_REQUEST; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_FULLSCREEN_SHORTCUT; +import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_RECREATE_SPLIT; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_RETURN_HOME; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_ROOT_TASK_VANISHED; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_SCREEN_LOCKED_SHOW_ON_TOP; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_UNKNOWN; import static com.android.wm.shell.splitscreen.SplitScreenController.exitReasonToString; import static com.android.wm.shell.transition.MixedTransitionHelper.getPipReplacingChange; +import static com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS; import static com.android.wm.shell.transition.Transitions.TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE; import static com.android.wm.shell.transition.Transitions.TRANSIT_SPLIT_SCREEN_PAIR_OPEN; -import static com.android.wm.shell.transition.Transitions.transitTypeToString; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; @@ -93,11 +77,12 @@ import android.animation.ValueAnimator; import android.annotation.CallSuper; import android.annotation.NonNull; import android.annotation.Nullable; -import android.app.ActivityManager.RunningTaskInfo; +import android.app.ActivityManager; import android.app.ActivityOptions; import android.app.IActivityTaskManager; import android.app.PendingIntent; import android.app.TaskInfo; +import android.app.WindowConfiguration; import android.content.ActivityNotFoundException; import android.content.Context; import android.content.Intent; @@ -105,31 +90,28 @@ import android.content.pm.LauncherApps; import android.content.pm.ShortcutInfo; import android.graphics.Rect; import android.hardware.devicestate.DeviceStateManager; -import android.hardware.display.DisplayManager; import android.os.Bundle; import android.os.Debug; -import android.os.Handler; import android.os.IBinder; import android.os.RemoteException; +import android.os.ServiceManager; import android.os.UserHandle; import android.util.ArrayMap; import android.util.ArraySet; import android.util.IntArray; import android.util.Log; import android.util.Slog; -import android.util.SparseIntArray; import android.view.Choreographer; import android.view.IRemoteAnimationFinishedCallback; import android.view.IRemoteAnimationRunner; import android.view.RemoteAnimationAdapter; import android.view.RemoteAnimationTarget; import android.view.SurfaceControl; +import android.view.SurfaceSession; import android.view.WindowManager; import android.widget.Toast; -import android.window.DesktopExperienceFlags; import android.window.DisplayAreaInfo; import android.window.RemoteTransition; -import android.window.TaskOrganizer; import android.window.TransitionInfo; import android.window.TransitionRequestInfo; import android.window.WindowContainerToken; @@ -137,101 +119,85 @@ import android.window.WindowContainerTransaction; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.logging.InstanceId; -import com.android.internal.policy.FoldLockSettingsObserver; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; +import com.android.internal.util.ArrayUtils; import com.android.launcher3.icons.IconProvider; import com.android.wm.shell.R; -import com.android.wm.shell.RootDisplayAreaOrganizer; -import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.common.ComponentUtils; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayImeController; import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.LaunchAdjacentController; +import com.android.wm.shell.common.ScreenshotUtils; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.common.split.OffscreenTouchZone; -import com.android.wm.shell.common.split.SplitDecorManager; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.common.split.SplitLayout; -import com.android.wm.shell.common.split.SplitState; +import com.android.wm.shell.common.split.SplitScreenConstants.PersistentSnapPosition; +import com.android.wm.shell.common.split.SplitScreenConstants.SplitPosition; +import com.android.wm.shell.common.split.SplitScreenUtils; import com.android.wm.shell.common.split.SplitWindowManager; -import com.android.wm.shell.desktopmode.DesktopRepository; -import com.android.wm.shell.desktopmode.DesktopTasksController; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.recents.RecentTasksController; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.desktopmode.DesktopState; -import com.android.wm.shell.shared.pip.PipFlags; -import com.android.wm.shell.shared.split.SplitBounds; -import com.android.wm.shell.shared.split.SplitScreenConstants.PersistentSnapPosition; -import com.android.wm.shell.shared.split.SplitScreenConstants.SplitIndex; -import com.android.wm.shell.shared.split.SplitScreenConstants.SplitPosition; import com.android.wm.shell.splitscreen.SplitScreen.StageType; import com.android.wm.shell.splitscreen.SplitScreenController.ExitReason; +import com.android.wm.shell.splitscreen.SplitScreenController.SplitEnterReason; import com.android.wm.shell.transition.DefaultMixedHandler; +import com.android.wm.shell.transition.LegacyTransitions; import com.android.wm.shell.transition.Transitions; +import com.android.wm.shell.util.SplitBounds; import com.android.wm.shell.windowdecor.WindowDecorViewModel; import dalvik.annotation.optimization.NeverCompile; -import com.google.android.msdl.domain.MSDLPlayer; - import java.io.PrintWriter; import java.util.ArrayList; -import java.util.HashMap; import java.util.HashSet; import java.util.List; -import java.util.Map; -import java.util.Objects; import java.util.Optional; import java.util.Set; import java.util.concurrent.Executor; -import java.util.function.Consumer; -import java.util.function.Predicate; /** - * Coordinates the staging (visibility, sizing, ...) of the split-screen stages. + * Coordinates the staging (visibility, sizing, ...) of the split-screen {@link MainStage} and + * {@link SideStage} stages. * Some high-level rules: - * - The {@link StageCoordinator} is only considered active if the other stages contain at + * - The {@link StageCoordinator} is only considered active if the {@link SideStage} contains at * least one child task. - * - The {@link SplitLayout} divider is only visible if multiple {@link StageTaskListener}s are - * visible + * - The {@link MainStage} should only have children if the coordinator is active. + * - The {@link SplitLayout} divider is only visible if both the {@link MainStage} + * and {@link SideStage} are visible. * - Both stages are put under a single-top root task. + * This rules are mostly implemented in {@link #onStageVisibilityChanged(StageListenerImpl)} and + * {@link #onStageHasChildrenChanged(StageListenerImpl).} */ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, DisplayController.OnDisplaysChangedListener, Transitions.TransitionHandler, - ShellTaskOrganizer.TaskListener, StageTaskListener.StageListenerCallbacks, - SplitMultiDisplayProvider { + ShellTaskOrganizer.TaskListener { private static final String TAG = StageCoordinator.class.getSimpleName(); - // The duration in ms to prevent launch-adjacent from working after split screen is first - // entered - private static final int DISABLE_LAUNCH_ADJACENT_AFTER_ENTER_TIMEOUT_MS = 1000; + private final SurfaceSession mSurfaceSession = new SurfaceSession(); - private StageTaskListener mMainStage; - private StageTaskListener mSideStage; + private final MainStage mMainStage; + private final StageListenerImpl mMainStageListener = new StageListenerImpl(); + private final SideStage mSideStage; + private final StageListenerImpl mSideStageListener = new StageListenerImpl(); @SplitPosition private int mSideStagePosition = SPLIT_POSITION_BOTTOM_OR_RIGHT; - private StageOrderOperator mStageOrderOperator; private final int mDisplayId; private SplitLayout mSplitLayout; - private final IActivityTaskManager mActivityTaskManager; private ValueAnimator mDividerFadeInAnimator; private boolean mDividerVisible; - private boolean mKeyguardActive; + private boolean mKeyguardShowing; private boolean mShowDecorImmediately; private final SyncTransactionQueue mSyncQueue; private final ShellTaskOrganizer mTaskOrganizer; - private final RootDisplayAreaOrganizer mRootDisplayAreaOrganizer; private final Context mContext; private final List<SplitScreen.SplitScreenListener> mListeners = new ArrayList<>(); private final Set<SplitScreen.SplitSelectListener> mSelectListeners = new HashSet<>(); - private final Transitions mTransitions; private final DisplayController mDisplayController; private final DisplayImeController mDisplayImeController; private final DisplayInsetsController mDisplayInsetsController; @@ -239,29 +205,27 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, private SplitScreenTransitions mSplitTransitions; private final SplitscreenEventLogger mLogger; private final ShellExecutor mMainExecutor; - private final Handler mMainHandler; - private final RootTaskDisplayAreaOrganizer mRootTDAOrganizer; // Cache live tile tasks while entering recents, evict them from stages in finish transaction // if user is opening another task(s). private final ArrayList<Integer> mPausingTasks = new ArrayList<>(); private final Optional<RecentTasksController> mRecentTasks; private final LaunchAdjacentController mLaunchAdjacentController; private final Optional<WindowDecorViewModel> mWindowDecorViewModel; - private final Optional<DesktopTasksController> mDesktopTasksController; - private final Optional<DesktopUserRepositories> mDesktopUserRepositories; - /** Singleton source of truth for the current state of split screen on this device. */ - private final SplitState mSplitState; - private final SplitStatusBarHider mStatusBarHider; - private final DesktopState mDesktopState; - /** A haptics controller that plays haptic effects. */ - private final MSDLPlayer mMSDLPlayer; private final Rect mTempRect1 = new Rect(); private final Rect mTempRect2 = new Rect(); + /** + * A single-top root task which the split divider attached to. + */ + @VisibleForTesting + ActivityManager.RunningTaskInfo mRootTaskInfo; + + private SurfaceControl mRootTaskLeash; + // Tracks whether we should update the recent tasks. Only allow this to happen in between enter // and exit, since exit itself can trigger a number of changes that update the stages. - private boolean mShouldUpdateRecents = true; + private boolean mShouldUpdateRecents; private boolean mExitSplitScreenOnHide; private boolean mIsDividerRemoteAnimating; private boolean mIsDropEntering; @@ -269,10 +233,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, private boolean mIsExiting; private boolean mIsRootTranslucent; @VisibleForTesting - @StageType int mLastActiveStage; - private boolean mBreakOnNextWake; - /** Used to get the Settings value for "Continue using apps on fold". */ - private FoldLockSettingsObserver mFoldLockSettingsObserver; + int mTopStageAfterFoldDismiss; private DefaultMixedHandler mMixedHandler; private final Toast mSplitUnsupportedToast; @@ -281,15 +242,6 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, private SplitScreen.SplitInvocationListener mSplitInvocationListener; private Executor mSplitInvocationListenerExecutor; - // Re-enables launch-adjacent handling on the split root task. This needs to be a member - // because we will be posting and removing it from the handler. - private final Runnable mReEnableLaunchAdjacentOnRoot = () -> setLaunchAdjacentDisabled(false); - - @VisibleForTesting - SplitMultiDisplayHelper mSplitMultiDisplayHelper; - private final SplitTransitionModifier mSplitTransitionModifier; - - /** * Since StageCoordinator only coordinates MainStage and SideStage, it shouldn't support * CompatUI layouts. CompatUI is handled separately by MainStage and SideStage. @@ -307,13 +259,6 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mSplitTransitions.registerSplitAnimListener(listener, executor); } - @Override - public WindowContainerToken getDisplayRootForDisplayId(int displayId) { - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(displayId); - return rootTaskInfo != null ? rootTaskInfo.token : null; - } - class SplitRequest { @SplitPosition int mActivatePosition; @@ -322,7 +267,6 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, Intent mStartIntent; Intent mStartIntent2; - SplitRequest(int taskId, Intent startIntent, int position) { mActivateTaskId = taskId; mStartIntent = startIntent; @@ -352,9 +296,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, new SplitWindowManager.ParentContainerCallbacks() { @Override public void attachToParentSurface(SurfaceControl.Builder b) { - // TODO: b/393217881 - replace DEFAULT_DISPLAY with the current display id - // after making SplitLayout display aware. - b.setParent(mSplitMultiDisplayHelper.getDisplayRootTaskLeash(DEFAULT_DISPLAY)); + b.setParent(mRootTaskLeash); } @Override @@ -365,114 +307,48 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mSyncQueue.runInSync(t -> applyDividerVisibility(t)); } } - - @Override - public void inflateOnStageRoot(OffscreenTouchZone touchZone) { - SurfaceControl topLeftLeash = - mSideStagePosition == SPLIT_POSITION_BOTTOM_OR_RIGHT - ? mMainStage.mRootLeash : mSideStage.mRootLeash; - SurfaceControl bottomRightLeash = - mSideStagePosition == SPLIT_POSITION_BOTTOM_OR_RIGHT - ? mSideStage.mRootLeash : mMainStage.mRootLeash; - // TODO: b/393217881 - replace DEFAULT_DISPLAY with the current display id - // after making SplitLayout display aware. - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); - touchZone.inflate( - mContext.createConfigurationContext(rootTaskInfo.configuration), - rootTaskInfo.configuration, mSyncQueue, - touchZone.isTopLeft() ? topLeftLeash : bottomRightLeash); - } - - @Override - public void onSplitLayoutAnimating(boolean animating) { - notifySplitAnimationStatus(animating); - } }; protected StageCoordinator(Context context, int displayId, SyncTransactionQueue syncQueue, ShellTaskOrganizer taskOrganizer, DisplayController displayController, DisplayImeController displayImeController, DisplayInsetsController displayInsetsController, Transitions transitions, - TransactionPool transactionPool, IconProvider iconProvider, ShellExecutor mainExecutor, - Handler mainHandler, Optional<RecentTasksController> recentTasks, + TransactionPool transactionPool, + IconProvider iconProvider, ShellExecutor mainExecutor, + Optional<RecentTasksController> recentTasks, LaunchAdjacentController launchAdjacentController, - Optional<WindowDecorViewModel> windowDecorViewModel, SplitState splitState, - Optional<DesktopTasksController> desktopTasksController, - Optional<DesktopUserRepositories> desktopUserRepositories, - RootTaskDisplayAreaOrganizer rootTDAOrganizer, - RootDisplayAreaOrganizer rootDisplayAreaOrganizer, DesktopState desktopState, - IActivityTaskManager activityTaskManager, MSDLPlayer msdlPlayer) { + Optional<WindowDecorViewModel> windowDecorViewModel) { mContext = context; mDisplayId = displayId; mSyncQueue = syncQueue; mTaskOrganizer = taskOrganizer; - mRootDisplayAreaOrganizer = rootDisplayAreaOrganizer; mLogger = new SplitscreenEventLogger(); mMainExecutor = mainExecutor; - mMainHandler = mainHandler; mRecentTasks = recentTasks; mLaunchAdjacentController = launchAdjacentController; mWindowDecorViewModel = windowDecorViewModel; - mSplitState = splitState; - mDesktopTasksController = desktopTasksController; - mDesktopUserRepositories = desktopUserRepositories; - mRootTDAOrganizer = rootTDAOrganizer; - mDesktopState = desktopState; - mMSDLPlayer = msdlPlayer; - DisplayManager displayManager = context.getSystemService(DisplayManager.class); - - mSplitMultiDisplayHelper = new SplitMultiDisplayHelper( - Objects.requireNonNull(displayManager)); - - if (enableMultiDisplaySplit()) { - ArrayList<Integer> displayIds = mSplitMultiDisplayHelper.getCachedOrSystemDisplayIds(); - displayIds.forEach(id -> { - taskOrganizer.createRootTask( - new TaskOrganizer.CreateRootTaskRequest() - .setName("SplitRoot") - .setDisplayId(id) - .setWindowingMode(WINDOWING_MODE_FULLSCREEN), - this); - }); - } else { - taskOrganizer.createRootTask( - new TaskOrganizer.CreateRootTaskRequest() - .setName("SplitRoot") - .setDisplayId(displayId) - .setWindowingMode(WINDOWING_MODE_FULLSCREEN), - this); - } + taskOrganizer.createRootTask(displayId, WINDOWING_MODE_FULLSCREEN, this /* listener */); ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Creating main/side root task"); - if (enableFlexibleSplit()) { - mStageOrderOperator = new StageOrderOperator(mContext, - mTaskOrganizer, - mDisplayId, - this /*stageListenerCallbacks*/, - mSyncQueue, - iconProvider, - mWindowDecorViewModel); - } else { - mMainStage = new StageTaskListener( - mContext, - mTaskOrganizer, - mDisplayId, - this /*stageListenerCallbacks*/, - mSyncQueue, - iconProvider, - mWindowDecorViewModel, STAGE_TYPE_MAIN); - mSideStage = new StageTaskListener( - mContext, - mTaskOrganizer, - mDisplayId, - this /*stageListenerCallbacks*/, - mSyncQueue, - iconProvider, - mWindowDecorViewModel, STAGE_TYPE_SIDE); - } - mTransitions = transitions; + mMainStage = new MainStage( + mContext, + mTaskOrganizer, + mDisplayId, + mMainStageListener, + mSyncQueue, + mSurfaceSession, + iconProvider, + mWindowDecorViewModel); + mSideStage = new SideStage( + mContext, + mTaskOrganizer, + mDisplayId, + mSideStageListener, + mSyncQueue, + mSurfaceSession, + iconProvider, + mWindowDecorViewModel); mDisplayController = displayController; mDisplayImeController = displayImeController; mDisplayInsetsController = displayInsetsController; @@ -487,71 +363,43 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, transitions.addHandler(this); mSplitUnsupportedToast = Toast.makeText(mContext, R.string.dock_non_resizeble_failed_to_dock_text, Toast.LENGTH_SHORT); - mFoldLockSettingsObserver = new FoldLockSettingsObserver(mainHandler, context); - mFoldLockSettingsObserver.register(); - mStatusBarHider = new SplitStatusBarHider(taskOrganizer, splitState, - rootDisplayAreaOrganizer); - mSplitTransitionModifier = new SplitTransitionModifier(); - mActivityTaskManager = activityTaskManager; + // With shell transition, we should update recents tile each callback so set this to true by + // default. + mShouldUpdateRecents = ENABLE_SHELL_TRANSITIONS; } @VisibleForTesting StageCoordinator(Context context, int displayId, SyncTransactionQueue syncQueue, - ShellTaskOrganizer taskOrganizer, StageTaskListener mainStage, - StageTaskListener sideStage, DisplayController displayController, - DisplayImeController displayImeController, + ShellTaskOrganizer taskOrganizer, MainStage mainStage, SideStage sideStage, + DisplayController displayController, DisplayImeController displayImeController, DisplayInsetsController displayInsetsController, SplitLayout splitLayout, - Transitions transitions, TransactionPool transactionPool, ShellExecutor mainExecutor, - Handler mainHandler, Optional<RecentTasksController> recentTasks, + Transitions transitions, TransactionPool transactionPool, + ShellExecutor mainExecutor, + Optional<RecentTasksController> recentTasks, LaunchAdjacentController launchAdjacentController, - Optional<WindowDecorViewModel> windowDecorViewModel, SplitState splitState, - Optional<DesktopTasksController> desktopTasksController, - Optional<DesktopUserRepositories> desktopUserRepositories, - RootTaskDisplayAreaOrganizer rootTDAOrganizer, - RootDisplayAreaOrganizer rootDisplayAreaOrganizer, DesktopState desktopState, - IActivityTaskManager activityTaskManager, MSDLPlayer msdlPlayer) { + Optional<WindowDecorViewModel> windowDecorViewModel) { mContext = context; mDisplayId = displayId; mSyncQueue = syncQueue; mTaskOrganizer = taskOrganizer; mMainStage = mainStage; mSideStage = sideStage; - mTransitions = transitions; mDisplayController = displayController; mDisplayImeController = displayImeController; mDisplayInsetsController = displayInsetsController; mTransactionPool = transactionPool; mSplitLayout = splitLayout; - mActivityTaskManager = activityTaskManager; mSplitTransitions = new SplitScreenTransitions(transactionPool, transitions, this::onTransitionAnimationComplete, this); mLogger = new SplitscreenEventLogger(); mMainExecutor = mainExecutor; - mMainHandler = mainHandler; mRecentTasks = recentTasks; mLaunchAdjacentController = launchAdjacentController; mWindowDecorViewModel = windowDecorViewModel; - mSplitState = splitState; - mDesktopTasksController = desktopTasksController; - mDesktopUserRepositories = desktopUserRepositories; - mRootTDAOrganizer = rootTDAOrganizer; - mDesktopState = desktopState; - mMSDLPlayer = msdlPlayer; - mDisplayController.addDisplayWindowListener(this); transitions.addHandler(this); mSplitUnsupportedToast = Toast.makeText(mContext, R.string.dock_non_resizeble_failed_to_dock_text, Toast.LENGTH_SHORT); - mFoldLockSettingsObserver = - new FoldLockSettingsObserver(context.getMainThreadHandler(), context); - mFoldLockSettingsObserver.register(); - DisplayManager displayManager = context.getSystemService(DisplayManager.class); - mSplitMultiDisplayHelper = new SplitMultiDisplayHelper( - Objects.requireNonNull(displayManager)); - mRootDisplayAreaOrganizer = rootDisplayAreaOrganizer; - mStatusBarHider = new SplitStatusBarHider(taskOrganizer, splitState, - rootDisplayAreaOrganizer); - mSplitTransitionModifier = new SplitTransitionModifier(); } public void setMixedHandler(DefaultMixedHandler mixedHandler) { @@ -569,80 +417,41 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } public boolean isSplitScreenVisible() { - if (enableFlexibleSplit()) { - return runForActiveStagesAllMatch((stage) -> stage.mVisible); - } else { - return mSideStage.mVisible && mMainStage.mVisible; - } - } - - /** - * @param includingTopTask reparents the current top task into the stage defined by index - * (or mainStage in legacy split) - * @param index the index to move the current visible task into, if undefined will arbitrarily - * choose a stage to launch into - */ - private void activateSplit(WindowContainerTransaction wct, boolean includingTopTask, - int index) { - if (enableFlexibleSplit()) { - mStageOrderOperator.onEnteringSplit(SNAP_TO_2_50_50); - if (index == SPLIT_INDEX_UNDEFINED || !includingTopTask) { - // If we aren't includingTopTask, then the call to activate on the stage is - // effectively a no-op. Previously the stage kept track of the "isActive" state, - // but now that gets set in the "onEnteringSplit" call above. - // - // index == UNDEFINED case might change, but as of now no use case where we activate - // without an index specified. - return; - } - @SplitIndex int oppositeIndex = index == SPLIT_INDEX_0 ? SPLIT_INDEX_1 : SPLIT_INDEX_0; - StageTaskListener activatingStage = mStageOrderOperator.getStageForIndex(oppositeIndex); - activatingStage.activate(wct, includingTopTask); - } else { - mMainStage.activate(wct, includingTopTask); - } + return mSideStageListener.mVisible && mMainStageListener.mVisible; } public boolean isSplitActive() { - if (enableFlexibleSplit()) { - return mStageOrderOperator.isActive(); - } else { - return mMainStage.isActive(); - } - } - - /** - * Deactivates main stage by removing the stage from the top level split root (usually when a - * task underneath gets removed from the stage root). - * This function should always be called as part of exiting split screen. - * @param stageToTop stage which we want to put on top - */ - private void deactivateSplit(WindowContainerTransaction wct, @StageType int stageToTop) { - if (enableFlexibleSplit()) { - StageTaskListener stageToDeactivate = mStageOrderOperator.getAllStages().stream() - .filter(stage -> stage.getId() == stageToTop) - .findFirst().orElse(null); - if (stageToDeactivate != null) { - stageToDeactivate.deactivate(wct, true /*toTop*/); - } else { - // If no one stage is meant to go to the top, deactivate all stages to move any - // child tasks out from under their respective stage root tasks. - mStageOrderOperator.getAllStages().forEach(stage -> - stage.deactivate(wct, false /*reparentTasksToTop*/)); - } - mStageOrderOperator.onExitingSplit(); - } else { - mMainStage.deactivate(wct, stageToTop == STAGE_TYPE_MAIN); - } + return mMainStage.isActive(); } /** @return whether this transition-request has the launch-adjacent flag. */ public boolean requestHasLaunchAdjacentFlag(TransitionRequestInfo request) { - final RunningTaskInfo triggerTask = request.getTriggerTask(); + final ActivityManager.RunningTaskInfo triggerTask = request.getTriggerTask(); return triggerTask != null && triggerTask.baseIntent != null && (triggerTask.baseIntent.getFlags() & FLAG_ACTIVITY_LAUNCH_ADJACENT) != 0; } + /** @return whether the transition-request implies entering pip from split. */ + public boolean requestImpliesSplitToPip(TransitionRequestInfo request) { + if (!isSplitActive() || !mMixedHandler.requestHasPipEnter(request)) { + return false; + } + + if (request.getTriggerTask() != null && getSplitPosition( + request.getTriggerTask().taskId) != SPLIT_POSITION_UNDEFINED) { + return true; + } + + // If one of the splitting tasks support auto-pip, wm-core might reparent the task to TDA + // and file a TRANSIT_PIP transition when finishing transitions. + // @see com.android.server.wm.RootWindowContainer#moveActivityToPinnedRootTask + if (mMainStage.getChildCount() == 0 || mSideStage.getChildCount() == 0) { + return true; + } + + return false; + } + /** Checks if `transition` is a pending enter-split transition. */ public boolean isPendingEnter(IBinder transition) { return mSplitTransitions.isPendingEnter(transition); @@ -650,80 +459,73 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, @StageType int getStageOfTask(int taskId) { - if (enableFlexibleSplit()) { - StageTaskListener stageTaskListener = mStageOrderOperator.getActiveStages().stream() - .filter(stage -> stage.containsTask(taskId)) - .findFirst().orElse(null); - if (stageTaskListener != null) { - return stageTaskListener.getId(); - } - } else { - if (mMainStage.containsTask(taskId)) { - return STAGE_TYPE_MAIN; - } else if (mSideStage.containsTask(taskId)) { - return STAGE_TYPE_SIDE; - } + if (mMainStage.containsTask(taskId)) { + return STAGE_TYPE_MAIN; + } else if (mSideStage.containsTask(taskId)) { + return STAGE_TYPE_SIDE; } return STAGE_TYPE_UNDEFINED; } boolean isRootOrStageRoot(int taskId) { - if (enableMultiDisplaySplit()) { - ArrayList<Integer> displayIds = mSplitMultiDisplayHelper.getCachedOrSystemDisplayIds(); - for (int displayId : displayIds) { - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(displayId); - if (rootTaskInfo != null && rootTaskInfo.taskId == taskId) { - return true; - } - } - } else { - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); - if (rootTaskInfo != null && rootTaskInfo.taskId == taskId) { - return true; - } - } - - if (enableFlexibleSplit()) { - return mStageOrderOperator.getActiveStages().stream() - .anyMatch((stage) -> stage.isRootTaskId(taskId)); - } else { - return mMainStage.isRootTaskId(taskId) || mSideStage.isRootTaskId(taskId); + if (mRootTaskInfo != null && mRootTaskInfo.taskId == taskId) { + return true; } + return mMainStage.isRootTaskId(taskId) || mSideStage.isRootTaskId(taskId); } - boolean moveToStage(RunningTaskInfo task, @SplitPosition int stagePosition, + boolean moveToStage(ActivityManager.RunningTaskInfo task, @SplitPosition int stagePosition, WindowContainerTransaction wct) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "moveToStage: task=%d position=%d", task.taskId, stagePosition); - // TODO(b/349828130) currently pass in index_undefined until we can revisit these - // specific cases in the future. Only focusing on parity with starting intent/task - prepareEnterSplitScreen(wct, task, stagePosition, false /* resizeAnim */, - SPLIT_INDEX_UNDEFINED); - mSplitTransitions.startEnterTransition(TRANSIT_TO_FRONT, wct, - null, this, - isSplitScreenVisible() - ? TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE : TRANSIT_SPLIT_SCREEN_PAIR_OPEN, - !mIsDropEntering, SNAP_TO_2_50_50); - + prepareEnterSplitScreen(wct, task, stagePosition, false /* resizeAnim */); + if (ENABLE_SHELL_TRANSITIONS) { + mSplitTransitions.startEnterTransition(TRANSIT_TO_FRONT, wct, + null, this, + isSplitScreenVisible() + ? TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE : TRANSIT_SPLIT_SCREEN_PAIR_OPEN, + !mIsDropEntering); + } else { + mSyncQueue.queue(wct); + mSyncQueue.runInSync(t -> { + updateSurfaceBounds(mSplitLayout, t, false /* applyResizingOffset */); + }); + } // Due to drag already pip task entering split by this method so need to reset flag here. mIsDropEntering = false; mSkipEvictingMainStageChildren = false; return true; } + boolean removeFromSideStage(int taskId) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "removeFromSideStage: task=%d", taskId); + final WindowContainerTransaction wct = new WindowContainerTransaction(); + + /** + * {@link MainStage} will be deactivated in {@link #onStageHasChildrenChanged} if the + * {@link SideStage} no longer has children. + */ + final boolean result = mSideStage.removeTask(taskId, + mMainStage.isActive() ? mMainStage.mRootTaskInfo.token : null, + wct); + mTaskOrganizer.applyTransaction(wct); + return result; + } + SplitscreenEventLogger getLogger() { return mLogger; } - void requestEnterSplitSelect(RunningTaskInfo taskInfo, - int splitPosition, Rect taskBounds, boolean startRecents, - @Nullable WindowContainerTransaction withRecentsWct) { + void requestEnterSplitSelect(ActivityManager.RunningTaskInfo taskInfo, + WindowContainerTransaction wct, int splitPosition, Rect taskBounds) { + boolean enteredSplitSelect = false; for (SplitScreen.SplitSelectListener listener : mSelectListeners) { - listener.onRequestEnterSplitSelect(taskInfo, splitPosition, taskBounds, - startRecents, withRecentsWct); + enteredSplitSelect |= listener.onRequestEnterSplitSelect(taskInfo, splitPosition, + taskBounds); + } + if (enteredSplitSelect) { + mTaskOrganizer.applyTransaction(wct); } } @@ -790,27 +592,13 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } } - /** - * Use this method to launch an existing Task via a taskId. - * @param hideTaskToken If non-null, a task matching this token will be moved to back in the - * same window container transaction as the starting of the intent. - */ - void startTask(int taskId, @SplitPosition int position, @Nullable Bundle options, - @Nullable WindowContainerToken hideTaskToken, @SplitIndex int index) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "startTask: task=%d position=%d index=%d", - taskId, position, index); + /** Use this method to launch an existing Task via a taskId */ + void startTask(int taskId, @SplitPosition int position, @Nullable Bundle options) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "startTask: task=%d position=%d", taskId, position); mSplitRequest = new SplitRequest(taskId, position); final WindowContainerTransaction wct = new WindowContainerTransaction(); - options = enableFlexibleSplit() - ? resolveStartStageForIndex(options, null /*wct*/, index) - : resolveStartStage(STAGE_TYPE_UNDEFINED, position, options, null /* wct */); - if (hideTaskToken != null) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Reordering hide-task to bottom"); - wct.reorder(hideTaskToken, false /* onTop */); - } - Bundle[] outOptions = new Bundle[]{options}; - prepareTasksForSplitScreen(new int[]{taskId}, wct, outOptions); - wct.startTask(taskId, outOptions[0]); + options = resolveStartStage(STAGE_TYPE_UNDEFINED, position, options, null /* wct */); + wct.startTask(taskId, options); // If this should be mixed, send the task to avoid split handle transition directly. if (mMixedHandler != null && mMixedHandler.isTaskInPip(taskId, mTaskOrganizer)) { mTaskOrganizer.applyTransaction(wct); @@ -827,38 +615,27 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } // If split screen is not activated, we're expecting to open a pair of apps to split. - final int extraTransitType = isSplitActive() + final int extraTransitType = mMainStage.isActive() ? TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE : TRANSIT_SPLIT_SCREEN_PAIR_OPEN; - prepareEnterSplitScreen(wct, null /* taskInfo */, position, !mIsDropEntering, index); + prepareEnterSplitScreen(wct, null /* taskInfo */, position, !mIsDropEntering); mSplitTransitions.startEnterTransition(TRANSIT_TO_FRONT, wct, null, this, - extraTransitType, !mIsDropEntering, SNAP_TO_2_50_50); + extraTransitType, !mIsDropEntering); } - /** - * Launches an activity into split. - * @param hideTaskToken If non-null, a task matching this token will be moved to back in the - * same window container transaction as the starting of the intent. - */ + /** Launches an activity into split. */ void startIntent(PendingIntent intent, Intent fillInIntent, @SplitPosition int position, - @Nullable Bundle options, @Nullable WindowContainerToken hideTaskToken, - @SplitIndex int index, int displayId) { + @Nullable Bundle options) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "startIntent: intent=%s position=%d", intent.getIntent(), position); mSplitRequest = new SplitRequest(intent.getIntent(), position); + if (!ENABLE_SHELL_TRANSITIONS) { + startIntentLegacy(intent, fillInIntent, position, options); + return; + } final WindowContainerTransaction wct = new WindowContainerTransaction(); - options = enableFlexibleSplit() - ? resolveStartStageForIndex(options, null /*wct*/, index) - : resolveStartStage(STAGE_TYPE_UNDEFINED, position, options, null /* wct */); - if (hideTaskToken != null) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Reordering hide-task to bottom"); - wct.reorder(hideTaskToken, false /* onTop */); - } - // For now, the only CUJ that can use this is LaunchAdjacent while on non-default displays. - if (enableNonDefaultDisplaySplit()) { - prepareMovingSplitscreenRoot(wct, displayId); - } + options = resolveStartStage(STAGE_TYPE_UNDEFINED, position, options, null /* wct */); wct.sendPendingIntent(intent, fillInIntent, options); // If this should be mixed, just send the intent to avoid split handle transition directly. @@ -877,19 +654,72 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } // If split screen is not activated, we're expecting to open a pair of apps to split. - final int extraTransitType = isSplitActive() + final int extraTransitType = mMainStage.isActive() ? TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE : TRANSIT_SPLIT_SCREEN_PAIR_OPEN; - prepareEnterSplitScreen(wct, null /* taskInfo */, position, !mIsDropEntering, index); + prepareEnterSplitScreen(wct, null /* taskInfo */, position, !mIsDropEntering); mSplitTransitions.startEnterTransition(TRANSIT_TO_FRONT, wct, null, this, - extraTransitType, !mIsDropEntering, SNAP_TO_2_50_50); + extraTransitType, !mIsDropEntering); } - /** - * Starts 2 tasks in one transition. - * @param taskId1 starts in the mSideStage - * @param taskId2 starts in the mainStage #startWithTask() - */ + /** Launches an activity into split by legacy transition. */ + void startIntentLegacy(PendingIntent intent, Intent fillInIntent, @SplitPosition int position, + @Nullable Bundle options) { + final boolean isEnteringSplit = !isSplitActive(); + + LegacyTransitions.ILegacyTransition transition = new LegacyTransitions.ILegacyTransition() { + @Override + public void onAnimationStart(int transit, RemoteAnimationTarget[] apps, + RemoteAnimationTarget[] wallpapers, RemoteAnimationTarget[] nonApps, + IRemoteAnimationFinishedCallback finishedCallback, + SurfaceControl.Transaction t) { + if (isEnteringSplit && mSideStage.getChildCount() == 0) { + mMainExecutor.execute(() -> exitSplitScreen( + null /* childrenToTop */, EXIT_REASON_UNKNOWN)); + Log.w(TAG, splitFailureMessage("startIntentLegacy", + "side stage was not populated")); + handleUnsupportedSplitStart(); + } + + if (apps != null) { + for (int i = 0; i < apps.length; ++i) { + if (apps[i].mode == MODE_OPENING) { + t.show(apps[i].leash); + } + } + } + t.apply(); + + if (finishedCallback != null) { + try { + finishedCallback.onAnimationFinished(); + } catch (RemoteException e) { + Slog.e(TAG, "Error finishing legacy transition: ", e); + } + } + + + if (!isEnteringSplit && apps != null) { + final WindowContainerTransaction evictWct = new WindowContainerTransaction(); + prepareEvictNonOpeningChildTasks(position, apps, evictWct); + mSyncQueue.queue(evictWct); + } + } + }; + + final WindowContainerTransaction wct = new WindowContainerTransaction(); + options = resolveStartStage(STAGE_TYPE_UNDEFINED, position, options, wct); + + // If split still not active, apply windows bounds first to avoid surface reset to + // wrong pos by SurfaceAnimator from wms. + if (isEnteringSplit && mLogger.isEnterRequestedByDrag()) { + updateWindowBounds(mSplitLayout, wct); + } + wct.sendPendingIntent(intent, fillInIntent, options); + mSyncQueue.queue(transition, WindowManager.TRANSIT_OPEN, wct); + } + + /** Starts 2 tasks in one transition. */ void startTasks(int taskId1, @Nullable Bundle options1, int taskId2, @Nullable Bundle options2, @SplitPosition int splitPosition, @PersistentSnapPosition int snapPosition, @Nullable RemoteTransition remoteTransition, InstanceId instanceId) { @@ -897,28 +727,6 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, "startTasks: task1=%d task2=%d position=%d snapPosition=%d", taskId1, taskId2, splitPosition, snapPosition); final WindowContainerTransaction wct = new WindowContainerTransaction(); - - // If the two tasks are already in split screen on external display, only reparent the - // split root to the default display if the app pair is clicked on default display. - // TODO(b/393217881): cover more cases and extract this to a new method when split screen - // in connected display is fully supported. - if (DesktopExperienceFlags.ENABLE_NON_DEFAULT_DISPLAY_SPLIT.isTrue()) { - DisplayAreaInfo displayAreaInfo = mRootTDAOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY); - RunningTaskInfo taskInfo1 = mTaskOrganizer.getRunningTaskInfo(taskId1); - RunningTaskInfo taskInfo2 = mTaskOrganizer.getRunningTaskInfo(taskId2); - - if (displayAreaInfo != null && taskInfo1 != null && taskInfo2 != null - && getStageOfTask(taskId1) != STAGE_TYPE_UNDEFINED - && getStageOfTask(taskId2) != STAGE_TYPE_UNDEFINED - && taskInfo1.displayId != DEFAULT_DISPLAY - && taskInfo1.displayId == taskInfo2.displayId) { - wct.reparent(mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY).token, - displayAreaInfo.token, true); - mTaskOrganizer.applyTransaction(wct); - return; - } - } - if (taskId2 == INVALID_TASK_ID) { startSingleTask(taskId1, options1, wct, remoteTransition); return; @@ -926,20 +734,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, setSideStagePosition(splitPosition, wct); options1 = options1 != null ? options1 : new Bundle(); - StageTaskListener stageForTask1; - if (enableFlexibleSplit()) { - stageForTask1 = mStageOrderOperator.getStageForLegacyPosition(splitPosition, - true /*checkAllStagesIfNotActive*/); - } else { - stageForTask1 = mSideStage; - } - addActivityOptions(options1, stageForTask1); - Bundle[] outOptions = new Bundle[]{options1, options2}; - prepareTasksForSplitScreen(new int[]{taskId1, taskId2}, wct, outOptions); - wct.startTask(taskId1, outOptions[0]); + addActivityOptions(options1, mSideStage); + wct.startTask(taskId1, options1); - startWithTask(wct, taskId2, outOptions[1], snapPosition, remoteTransition, instanceId, - splitPosition); + startWithTask(wct, taskId2, options2, snapPosition, remoteTransition, instanceId); } /** Start an intent and a task to a split pair in one transition. */ @@ -965,20 +763,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, setSideStagePosition(splitPosition, wct); options1 = options1 != null ? options1 : new Bundle(); - StageTaskListener stageForTask1; - if (enableFlexibleSplit()) { - stageForTask1 = mStageOrderOperator.getStageForLegacyPosition(splitPosition, - true /*checkAllStagesIfNotActive*/); - } else { - stageForTask1 = mSideStage; - } - addActivityOptions(options1, stageForTask1); + addActivityOptions(options1, mSideStage); wct.sendPendingIntent(pendingIntent, fillInIntent, options1); - Bundle[] outOptions = new Bundle[]{options2}; - prepareTasksForSplitScreen(new int[]{taskId}, wct, outOptions); - startWithTask(wct, taskId, outOptions[0], snapPosition, remoteTransition, instanceId, - splitPosition); + startWithTask(wct, taskId, options2, snapPosition, remoteTransition, instanceId); } /** @@ -988,31 +776,14 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, private void startSingleTask(int taskId, Bundle options, WindowContainerTransaction wct, RemoteTransition remoteTransition) { if (mMainStage.containsTask(taskId) || mSideStage.containsTask(taskId)) { - prepareExitSplitScreen(STAGE_TYPE_UNDEFINED, wct, EXIT_REASON_FULLSCREEN_REQUEST); + prepareExitSplitScreen(STAGE_TYPE_UNDEFINED, wct); } if (mRecentTasks.isPresent()) { mRecentTasks.get().removeSplitPair(taskId); } options = options != null ? options : new Bundle(); addActivityOptions(options, null); - Bundle[] outOptions = new Bundle[]{options}; - RunningTaskInfo taskInfo = mTaskOrganizer.getRunningTaskInfo(taskId); - if (enableFullScreenWindowOnRemovingSplitScreenStageBugfix() && taskInfo != null - && taskInfo.getWindowingMode() == WINDOWING_MODE_FREEFORM) { - RunningTaskInfo task = mTaskOrganizer.getRunningTaskInfo(taskId); - prepareTasksForSplitScreen(new int[]{taskId}, wct, outOptions); - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue()) { - // TODO: b/422176395 - Use options#setReparentLeafTaskToTda instead once it can work - // with wct#startTask. - DesktopRepository currentDesktopRepo = mDesktopUserRepositories.map( - DesktopUserRepositories::getCurrent).orElse( - null); - if (currentDesktopRepo != null && currentDesktopRepo.isActiveTask(taskId)) { - wct.reparent(task.getToken(), null, true); - } - } - } - wct.startTask(taskId, outOptions[0]); + wct.startTask(taskId, options); mSplitTransitions.startFullscreenTransition(wct, remoteTransition); } @@ -1035,56 +806,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, setSideStagePosition(splitPosition, wct); options1 = options1 != null ? options1 : new Bundle(); - StageTaskListener stageForTask1; - if (enableFlexibleSplit()) { - stageForTask1 = mStageOrderOperator.getStageForLegacyPosition(splitPosition, - true /*checkAllStagesIfNotActive*/); - } else { - stageForTask1 = mSideStage; - } - addActivityOptions(options1, stageForTask1); + addActivityOptions(options1, mSideStage); wct.startShortcut(mContext.getPackageName(), shortcutInfo, options1); - Bundle[] outOptions = new Bundle[]{options2}; - prepareTasksForSplitScreen(new int[]{taskId}, wct, outOptions); - startWithTask(wct, taskId, outOptions[0], snapPosition, remoteTransition, instanceId, - splitPosition); - } - - /** - * Prepares the tasks whose IDs are provided in `taskIds` for split screen by clearing their - * bounds and windowing mode so that they can inherit the bounds and the windowing mode of - * their root stages. - * - * @param taskIds an array of task IDs whose bounds will be cleared. - * @param wct transaction to clear the bounds on the tasks. - * @param bundles an array of Bundle that can be used to clear the bounds on the tasks. It - * should have the same length as {@code taskIds}. - */ - private void prepareTasksForSplitScreen(int[] taskIds, WindowContainerTransaction wct, - Bundle[] bundles) { - if (com.android.window.flags.Flags.fixLayoutRestoredTask() - && taskIds.length != bundles.length) { - Slog.w(TAG, "The length of taskIds and bundles are not the same."); - return; - } - - for (int i = 0; i < taskIds.length; i++) { - final int taskId = taskIds[i]; - RunningTaskInfo task = mTaskOrganizer.getRunningTaskInfo(taskId); - if (task != null) { - wct.setWindowingMode(task.getToken(), WINDOWING_MODE_UNDEFINED) - .setBounds(task.getToken(), null /* bounds */); - } else if (com.android.window.flags.Flags.fixLayoutRestoredTask()) { - // Clear the task bounds via Bundle once the Task is restored. - ActivityOptions options = ActivityOptions.fromBundle(bundles[i]); - if (options == null) { - options = ActivityOptions.makeBasic(); - } - options.setLaunchBounds(new Rect()); - bundles[i] = options.toBundle(); - } - } + startWithTask(wct, taskId, options2, snapPosition, remoteTransition, instanceId); } /** @@ -1096,41 +821,22 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, */ private void startWithTask(WindowContainerTransaction wct, int mainTaskId, @Nullable Bundle mainOptions, @PersistentSnapPosition int snapPosition, - @Nullable RemoteTransition remoteTransition, InstanceId instanceId, - @SplitPosition int splitPosition) { - if (!isSplitActive()) { + @Nullable RemoteTransition remoteTransition, InstanceId instanceId) { + if (!mMainStage.isActive()) { // Build a request WCT that will launch both apps such that task 0 is on the main stage // while task 1 is on the side stage. - // TODO(b/349828130) currently pass in index_undefined until we can revisit these - // specific cases in the future. Only focusing on parity with starting intent/task - activateSplit(wct, false /* reparentToTop */, SPLIT_INDEX_UNDEFINED); + mMainStage.activate(wct, false /* reparent */); } mSplitLayout.setDivideRatio(snapPosition); updateWindowBounds(mSplitLayout, wct); - - int displayId = DEFAULT_DISPLAY; - if (mTaskOrganizer.getRunningTaskInfo(mainTaskId) != null) { - displayId = mTaskOrganizer.getRunningTaskInfo(mainTaskId).displayId; - } - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(displayId); - wct.reorder(rootTaskInfo.token, true); - wct.setReparentLeafTaskIfRelaunch(rootTaskInfo.token, + wct.reorder(mRootTaskInfo.token, true); + wct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, false /* reparentLeafTaskIfRelaunch */); setRootForceTranslucent(false, wct); - // All callers of this method set the correct activity options on mSideStage, - // so we choose the opposite stage for this method - StageTaskListener stage; - if (enableFlexibleSplit()) { - stage = mStageOrderOperator - .getStageForLegacyPosition(reverseSplitPosition(splitPosition), - false /*checkAllStagesIfNotActive*/); - } else { - stage = mMainStage; - } + // Make sure the launch options will put tasks in the corresponding split roots mainOptions = mainOptions != null ? mainOptions : new Bundle(); - addActivityOptions(mainOptions, stage); + addActivityOptions(mainOptions, mMainStage); // Add task launch requests wct.startTask(mainTaskId, mainOptions); @@ -1140,7 +846,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mPausingTasks.clear(); } mSplitTransitions.startEnterTransition(TRANSIT_TO_FRONT, wct, remoteTransition, this, - TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false, snapPosition); + TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false); setEnterInstanceId(instanceId); } @@ -1183,63 +889,29 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, return; } - if (!isSplitActive()) { + if (!mMainStage.isActive()) { // Build a request WCT that will launch both apps such that task 0 is on the main stage // while task 1 is on the side stage. - // TODO(b/349828130) currently pass in index_undefined until we can revisit these - // specific cases in the future. Only focusing on parity with starting intent/task - activateSplit(wct, false /* reparentToTop */, SPLIT_INDEX_UNDEFINED); + mMainStage.activate(wct, false /* reparent */); } setSideStagePosition(splitPosition, wct); mSplitLayout.setDivideRatio(snapPosition); updateWindowBounds(mSplitLayout, wct); - // TODO: b/393217881 - pass displayId from launcher side to this method. - int displayId = DEFAULT_DISPLAY; - if (options1 != null) { - ActivityOptions activityOptions1 = ActivityOptions.fromBundle(options1); - int id1 = activityOptions1.getLaunchDisplayId(); - if (id1 != INVALID_DISPLAY) { - displayId = id1; - } - } else if (options2 != null) { - ActivityOptions activityOptions2 = ActivityOptions.fromBundle(options2); - int id2 = activityOptions2.getLaunchDisplayId(); - if (id2 != INVALID_DISPLAY) { - displayId = id2; - } - } - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(displayId); - wct.reorder(rootTaskInfo.token, true); - wct.setReparentLeafTaskIfRelaunch(rootTaskInfo.token, + wct.reorder(mRootTaskInfo.token, true); + wct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, false /* reparentLeafTaskIfRelaunch */); setRootForceTranslucent(false, wct); options1 = options1 != null ? options1 : new Bundle(); - StageTaskListener stageForTask1; - if (enableFlexibleSplit()) { - stageForTask1 = mStageOrderOperator.getStageForLegacyPosition(splitPosition, - true /*checkAllStagesIfNotActive*/); - } else { - stageForTask1 = mSideStage; - } - addActivityOptions(options1, stageForTask1); + addActivityOptions(options1, mSideStage); if (shortcutInfo1 != null) { wct.startShortcut(mContext.getPackageName(), shortcutInfo1, options1); } else { wct.sendPendingIntent(pendingIntent1, fillInIntent1, options1); } - - StageTaskListener stageForTask2; - if (enableFlexibleSplit()) { - stageForTask2 = mStageOrderOperator.getStageForLegacyPosition( - reverseSplitPosition(splitPosition), true /*checkAllStagesIfNotActive*/); - } else { - stageForTask2 = mMainStage; - } options2 = options2 != null ? options2 : new Bundle(); - addActivityOptions(options2, stageForTask2); + addActivityOptions(options2, mMainStage); if (shortcutInfo2 != null) { wct.startShortcut(mContext.getPackageName(), shortcutInfo2, options2); } else { @@ -1247,28 +919,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } mSplitTransitions.startEnterTransition(TRANSIT_TO_FRONT, wct, remoteTransition, this, - TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false, snapPosition); + TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false); setEnterInstanceId(instanceId); } - - @Override - public void setExcludeImeInsets(boolean exclude) { - final WindowContainerTransaction wct = new WindowContainerTransaction(); - // TODO: b/393217881 - replace DEFAULT DISPLAY with the current display id - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); - if (rootTaskInfo == null) { - ProtoLog.e(WM_SHELL_SPLIT_SCREEN, "setExcludeImeInsets: rootTaskInfo is null"); - return; - } - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, - "setExcludeImeInsets: root taskId=%s exclude=%s", - rootTaskInfo.taskId, exclude); - wct.setExcludeImeInsets(rootTaskInfo.token, exclude); - mTaskOrganizer.applyTransaction(wct); - } - /** * Checks if either of the apps in the desired split launch is currently in Pip. If so, it will * launch the non-pipped app as a fullscreen app, otherwise no-op. @@ -1304,17 +958,378 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, WindowContainerTransaction wct, RemoteTransition remoteTransition) { Bundle optionsToLaunch = options != null ? options : new Bundle(); - addActivityOptions(optionsToLaunch, null, WINDOWING_MODE_FULLSCREEN); + addActivityOptions(optionsToLaunch, null); wct.sendPendingIntent(pendingIntent, fillInIntent, optionsToLaunch); mSplitTransitions.startFullscreenTransition(wct, remoteTransition); } + /** Starts a pair of tasks using legacy transition. */ + void startTasksWithLegacyTransition(int taskId1, @Nullable Bundle options1, + int taskId2, @Nullable Bundle options2, @SplitPosition int splitPosition, + @PersistentSnapPosition int snapPosition, RemoteAnimationAdapter adapter, + InstanceId instanceId) { + final WindowContainerTransaction wct = new WindowContainerTransaction(); + if (options1 == null) options1 = new Bundle(); + if (taskId2 == INVALID_TASK_ID) { + // Launching a solo task. + // Exit split first if this task under split roots. + if (mMainStage.containsTask(taskId1) || mSideStage.containsTask(taskId1)) { + exitSplitScreen(null /* childrenToTop */, EXIT_REASON_RECREATE_SPLIT); + } + ActivityOptions activityOptions = ActivityOptions.fromBundle(options1); + activityOptions.update(ActivityOptions.makeRemoteAnimation(adapter)); + options1 = activityOptions.toBundle(); + addActivityOptions(options1, null /* launchTarget */); + wct.startTask(taskId1, options1); + mSyncQueue.queue(wct); + return; + } + + addActivityOptions(options1, mSideStage); + wct.startTask(taskId1, options1); + mSplitRequest = new SplitRequest(taskId1, taskId2, splitPosition); + startWithLegacyTransition(wct, taskId2, options2, splitPosition, snapPosition, adapter, + instanceId); + } + + /** Starts a pair of intents using legacy transition. */ + void startIntentsWithLegacyTransition(PendingIntent pendingIntent1, Intent fillInIntent1, + @Nullable ShortcutInfo shortcutInfo1, @Nullable Bundle options1, + @Nullable PendingIntent pendingIntent2, Intent fillInIntent2, + @Nullable ShortcutInfo shortcutInfo2, @Nullable Bundle options2, + @SplitPosition int splitPosition, @PersistentSnapPosition int snapPosition, + RemoteAnimationAdapter adapter, InstanceId instanceId) { + final WindowContainerTransaction wct = new WindowContainerTransaction(); + if (options1 == null) options1 = new Bundle(); + if (pendingIntent2 == null) { + // Launching a solo intent or shortcut as fullscreen. + launchAsFullscreenWithRemoteAnimation(pendingIntent1, fillInIntent1, shortcutInfo1, + options1, adapter, wct); + return; + } + + addActivityOptions(options1, mSideStage); + if (shortcutInfo1 != null) { + wct.startShortcut(mContext.getPackageName(), shortcutInfo1, options1); + } else { + wct.sendPendingIntent(pendingIntent1, fillInIntent1, options1); + mSplitRequest = new SplitRequest(pendingIntent1.getIntent(), + pendingIntent2 != null ? pendingIntent2.getIntent() : null, splitPosition); + } + startWithLegacyTransition(wct, pendingIntent2, fillInIntent2, shortcutInfo2, options2, + splitPosition, snapPosition, adapter, instanceId); + } + + void startIntentAndTaskWithLegacyTransition(PendingIntent pendingIntent, Intent fillInIntent, + @Nullable Bundle options1, int taskId, @Nullable Bundle options2, + @SplitPosition int splitPosition, @PersistentSnapPosition int snapPosition, + RemoteAnimationAdapter adapter, InstanceId instanceId) { + final WindowContainerTransaction wct = new WindowContainerTransaction(); + if (options1 == null) options1 = new Bundle(); + if (taskId == INVALID_TASK_ID) { + // Launching a solo intent as fullscreen. + launchAsFullscreenWithRemoteAnimation(pendingIntent, fillInIntent, null, options1, + adapter, wct); + return; + } + + addActivityOptions(options1, mSideStage); + wct.sendPendingIntent(pendingIntent, fillInIntent, options1); + mSplitRequest = new SplitRequest(taskId, pendingIntent.getIntent(), splitPosition); + startWithLegacyTransition(wct, taskId, options2, splitPosition, snapPosition, adapter, + instanceId); + } + + /** Starts a pair of shortcut and task using legacy transition. */ + void startShortcutAndTaskWithLegacyTransition(ShortcutInfo shortcutInfo, + @Nullable Bundle options1, int taskId, @Nullable Bundle options2, + @SplitPosition int splitPosition, @PersistentSnapPosition int snapPosition, + RemoteAnimationAdapter adapter, InstanceId instanceId) { + final WindowContainerTransaction wct = new WindowContainerTransaction(); + if (options1 == null) options1 = new Bundle(); + if (taskId == INVALID_TASK_ID) { + // Launching a solo shortcut as fullscreen. + launchAsFullscreenWithRemoteAnimation(null, null, shortcutInfo, options1, adapter, wct); + return; + } + + addActivityOptions(options1, mSideStage); + wct.startShortcut(mContext.getPackageName(), shortcutInfo, options1); + startWithLegacyTransition(wct, taskId, options2, splitPosition, snapPosition, adapter, + instanceId); + } + + private void launchAsFullscreenWithRemoteAnimation(@Nullable PendingIntent pendingIntent, + @Nullable Intent fillInIntent, @Nullable ShortcutInfo shortcutInfo, + @Nullable Bundle options, RemoteAnimationAdapter adapter, + WindowContainerTransaction wct) { + LegacyTransitions.ILegacyTransition transition = + (transit, apps, wallpapers, nonApps, finishedCallback, t) -> { + if (apps == null || apps.length == 0) { + onRemoteAnimationFinished(apps); + t.apply(); + try { + adapter.getRunner().onAnimationCancelled(); + } catch (RemoteException e) { + Slog.e(TAG, "Error starting remote animation", e); + } + return; + } + + for (int i = 0; i < apps.length; ++i) { + if (apps[i].mode == MODE_OPENING) { + t.show(apps[i].leash); + } + } + t.apply(); + + try { + adapter.getRunner().onAnimationStart( + transit, apps, wallpapers, nonApps, finishedCallback); + } catch (RemoteException e) { + Slog.e(TAG, "Error starting remote animation", e); + } + }; + + addActivityOptions(options, null /* launchTarget */); + if (shortcutInfo != null) { + wct.startShortcut(mContext.getPackageName(), shortcutInfo, options); + } else if (pendingIntent != null) { + wct.sendPendingIntent(pendingIntent, fillInIntent, options); + } else { + Slog.e(TAG, "Pending intent and shortcut are null is invalid case."); + } + mSyncQueue.queue(transition, WindowManager.TRANSIT_OPEN, wct); + } + + private void startWithLegacyTransition(WindowContainerTransaction wct, + @Nullable PendingIntent mainPendingIntent, @Nullable Intent mainFillInIntent, + @Nullable ShortcutInfo mainShortcutInfo, @Nullable Bundle mainOptions, + @SplitPosition int sidePosition, @PersistentSnapPosition int snapPosition, + RemoteAnimationAdapter adapter, InstanceId instanceId) { + startWithLegacyTransition(wct, INVALID_TASK_ID, mainPendingIntent, mainFillInIntent, + mainShortcutInfo, mainOptions, sidePosition, snapPosition, adapter, instanceId); + } + + private void startWithLegacyTransition(WindowContainerTransaction wct, int mainTaskId, + @Nullable Bundle mainOptions, @SplitPosition int sidePosition, + @PersistentSnapPosition int snapPosition, RemoteAnimationAdapter adapter, + InstanceId instanceId) { + startWithLegacyTransition(wct, mainTaskId, null /* mainPendingIntent */, + null /* mainFillInIntent */, null /* mainShortcutInfo */, mainOptions, sidePosition, + snapPosition, adapter, instanceId); + } + + /** + * @param wct transaction to start the first task + * @param instanceId if {@code null}, will not log. Otherwise it will be used in + * {@link SplitscreenEventLogger#logEnter(float, int, int, int, int, boolean)} + */ + private void startWithLegacyTransition(WindowContainerTransaction wct, int mainTaskId, + @Nullable PendingIntent mainPendingIntent, @Nullable Intent mainFillInIntent, + @Nullable ShortcutInfo mainShortcutInfo, @Nullable Bundle options, + @SplitPosition int sidePosition, @PersistentSnapPosition int snapPosition, + RemoteAnimationAdapter adapter, InstanceId instanceId) { + if (!isSplitScreenVisible()) { + exitSplitScreen(null /* childrenToTop */, EXIT_REASON_RECREATE_SPLIT); + } + + // Init divider first to make divider leash for remote animation target. + mSplitLayout.init(); + mSplitLayout.setDivideRatio(snapPosition); + + // Apply surface bounds before animation start. + SurfaceControl.Transaction startT = mTransactionPool.acquire(); + updateSurfaceBounds(mSplitLayout, startT, false /* applyResizingOffset */); + startT.apply(); + mTransactionPool.release(startT); + + // Set false to avoid record new bounds with old task still on top; + mShouldUpdateRecents = false; + mIsDividerRemoteAnimating = true; + if (mSplitRequest == null) { + mSplitRequest = new SplitRequest(mainTaskId, + mainPendingIntent != null ? mainPendingIntent.getIntent() : null, + sidePosition); + } + setSideStagePosition(sidePosition, wct); + if (!mMainStage.isActive()) { + mMainStage.activate(wct, false /* reparent */); + } + + if (options == null) options = new Bundle(); + addActivityOptions(options, mMainStage); + + updateWindowBounds(mSplitLayout, wct); + wct.reorder(mRootTaskInfo.token, true); + setRootForceTranslucent(false, wct); + + // TODO(b/268008375): Merge APIs to start a split pair into one. + if (mainTaskId != INVALID_TASK_ID) { + options = wrapAsSplitRemoteAnimation(adapter, options); + wct.startTask(mainTaskId, options); + mSyncQueue.queue(wct); + } else { + if (mainShortcutInfo != null) { + wct.startShortcut(mContext.getPackageName(), mainShortcutInfo, options); + } else { + wct.sendPendingIntent(mainPendingIntent, mainFillInIntent, options); + } + mSyncQueue.queue(wrapAsSplitRemoteAnimation(adapter), WindowManager.TRANSIT_OPEN, wct); + } + + setEnterInstanceId(instanceId); + } + + private Bundle wrapAsSplitRemoteAnimation(RemoteAnimationAdapter adapter, Bundle options) { + final WindowContainerTransaction evictWct = new WindowContainerTransaction(); + if (isSplitScreenVisible()) { + mMainStage.evictAllChildren(evictWct); + mSideStage.evictAllChildren(evictWct); + } + + IRemoteAnimationRunner wrapper = new IRemoteAnimationRunner.Stub() { + @Override + public void onAnimationStart(@WindowManager.TransitionOldType int transit, + RemoteAnimationTarget[] apps, + RemoteAnimationTarget[] wallpapers, + RemoteAnimationTarget[] nonApps, + final IRemoteAnimationFinishedCallback finishedCallback) { + IRemoteAnimationFinishedCallback wrapCallback = + new IRemoteAnimationFinishedCallback.Stub() { + @Override + public void onAnimationFinished() throws RemoteException { + onRemoteAnimationFinishedOrCancelled(evictWct); + finishedCallback.onAnimationFinished(); + } + }; + Transitions.setRunningRemoteTransitionDelegate(adapter.getCallingApplication()); + try { + adapter.getRunner().onAnimationStart(transit, apps, wallpapers, + ArrayUtils.appendElement(RemoteAnimationTarget.class, nonApps, + getDividerBarLegacyTarget()), wrapCallback); + } catch (RemoteException e) { + Slog.e(TAG, "Error starting remote animation", e); + } + } + + @Override + public void onAnimationCancelled() { + onRemoteAnimationFinishedOrCancelled(evictWct); + setDividerVisibility(true, null); + try { + adapter.getRunner().onAnimationCancelled(); + } catch (RemoteException e) { + Slog.e(TAG, "Error starting remote animation", e); + } + } + }; + RemoteAnimationAdapter wrappedAdapter = new RemoteAnimationAdapter( + wrapper, adapter.getDuration(), adapter.getStatusBarTransitionDelay()); + ActivityOptions activityOptions = ActivityOptions.fromBundle(options); + activityOptions.update(ActivityOptions.makeRemoteAnimation(wrappedAdapter)); + return activityOptions.toBundle(); + } + + private LegacyTransitions.ILegacyTransition wrapAsSplitRemoteAnimation( + RemoteAnimationAdapter adapter) { + LegacyTransitions.ILegacyTransition transition = + (transit, apps, wallpapers, nonApps, finishedCallback, t) -> { + if (apps == null || apps.length == 0) { + onRemoteAnimationFinished(apps); + t.apply(); + try { + adapter.getRunner().onAnimationCancelled(); + } catch (RemoteException e) { + Slog.e(TAG, "Error starting remote animation", e); + } + return; + } + + // Wrap the divider bar into non-apps target to animate together. + nonApps = ArrayUtils.appendElement(RemoteAnimationTarget.class, nonApps, + getDividerBarLegacyTarget()); + + for (int i = 0; i < apps.length; ++i) { + if (apps[i].mode == MODE_OPENING) { + t.show(apps[i].leash); + // Reset the surface position of the opening app to prevent offset. + t.setPosition(apps[i].leash, 0, 0); + } + } + setDividerVisibility(true, t); + t.apply(); + + IRemoteAnimationFinishedCallback wrapCallback = + new IRemoteAnimationFinishedCallback.Stub() { + @Override + public void onAnimationFinished() throws RemoteException { + onRemoteAnimationFinished(apps); + finishedCallback.onAnimationFinished(); + } + }; + Transitions.setRunningRemoteTransitionDelegate(adapter.getCallingApplication()); + try { + adapter.getRunner().onAnimationStart( + transit, apps, wallpapers, nonApps, wrapCallback); + } catch (RemoteException e) { + Slog.e(TAG, "Error starting remote animation", e); + } + }; + + return transition; + } + private void setEnterInstanceId(InstanceId instanceId) { if (instanceId != null) { mLogger.enterRequested(instanceId, ENTER_REASON_LAUNCHER); } } + private void onRemoteAnimationFinishedOrCancelled(WindowContainerTransaction evictWct) { + mIsDividerRemoteAnimating = false; + mShouldUpdateRecents = true; + clearRequestIfPresented(); + // If any stage has no child after animation finished, it means that split will display + // nothing, such status will happen if task and intent is same app but not support + // multi-instance, we should exit split and expand that app as full screen. + if (mMainStage.getChildCount() == 0 || mSideStage.getChildCount() == 0) { + mMainExecutor.execute(() -> + exitSplitScreen(mMainStage.getChildCount() == 0 + ? mSideStage : mMainStage, EXIT_REASON_UNKNOWN)); + Log.w(TAG, splitFailureMessage("onRemoteAnimationFinishedOrCancelled", + "main or side stage was not populated.")); + handleUnsupportedSplitStart(); + } else { + mSyncQueue.queue(evictWct); + mSyncQueue.runInSync(t -> { + updateSurfaceBounds(mSplitLayout, t, false /* applyResizingOffset */); + }); + } + } + + private void onRemoteAnimationFinished(RemoteAnimationTarget[] apps) { + mIsDividerRemoteAnimating = false; + mShouldUpdateRecents = true; + clearRequestIfPresented(); + // If any stage has no child after finished animation, that side of the split will display + // nothing. This might happen if starting the same app on the both sides while not + // supporting multi-instance. Exit the split screen and expand that app to full screen. + if (mMainStage.getChildCount() == 0 || mSideStage.getChildCount() == 0) { + mMainExecutor.execute(() -> exitSplitScreen(mMainStage.getChildCount() == 0 + ? mSideStage : mMainStage, EXIT_REASON_UNKNOWN)); + Log.w(TAG, splitFailureMessage("onRemoteAnimationFinished", + "main or side stage was not populated")); + handleUnsupportedSplitStart(); + return; + } + + final WindowContainerTransaction evictWct = new WindowContainerTransaction(); + mMainStage.evictNonOpeningChildren(apps, evictWct); + mSideStage.evictNonOpeningChildren(apps, evictWct); + mSyncQueue.queue(evictWct); + } + void prepareEvictNonOpeningChildTasks(@SplitPosition int position, RemoteAnimationTarget[] apps, WindowContainerTransaction wct) { if (position == mSideStagePosition) { @@ -1329,31 +1344,6 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mSideStage.evictInvisibleChildren(wct); } - /** - * @param index for the new stage that will be opening. Ex. if app is dragged to - * index=1, then this will tell the stage at index=1 to launch the task - * in the wct in that stage. This doesn't verify that the non-specified - * indices' stages have their tasks correctly set/re-parented. - */ - Bundle resolveStartStageForIndex(@Nullable Bundle options, - @Nullable WindowContainerTransaction wct, - @SplitIndex int index) { - StageTaskListener oppositeStage; - if (index == SPLIT_INDEX_UNDEFINED) { - // Arbitrarily choose a stage - oppositeStage = mStageOrderOperator.getStageForIndex(SPLIT_INDEX_1); - } else { - oppositeStage = mStageOrderOperator.getStageForIndex(index); - } - if (options == null) { - options = new Bundle(); - } - updateStageWindowBoundsForIndex(wct, index); - addActivityOptions(options, oppositeStage); - - return options; - } - Bundle resolveStartStage(@StageType int stage, @SplitPosition int position, @Nullable Bundle options, @Nullable WindowContainerTransaction wct) { switch (stage) { @@ -1421,112 +1411,72 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, return INVALID_TASK_ID; } - if (enableFlexibleSplit()) { - StageTaskListener stage = mStageOrderOperator.getStageForLegacyPosition(splitPosition, - true /*checkAllStagesIfNotActive*/); - return stage != null ? stage.getTopVisibleChildTaskId() : INVALID_TASK_ID; - } else { - return mSideStagePosition == splitPosition - ? mSideStage.getTopVisibleChildTaskId() - : mMainStage.getTopVisibleChildTaskId(); - } + return mSideStagePosition == splitPosition + ? mSideStage.getTopVisibleChildTaskId() + : mMainStage.getTopVisibleChildTaskId(); } void switchSplitPosition(String reason) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "switchSplitPosition"); final SurfaceControl.Transaction t = mTransactionPool.acquire(); mTempRect1.setEmpty(); - final StageTaskListener topLeftStage; - final StageTaskListener bottomRightStage; - if (enableFlexibleSplit()) { - topLeftStage = mStageOrderOperator.getStageForLegacyPosition(SPLIT_POSITION_TOP_OR_LEFT, - false /*checkAllStagesIfNotActive*/); - bottomRightStage = mStageOrderOperator - .getStageForLegacyPosition(SPLIT_POSITION_BOTTOM_OR_RIGHT, - false /*checkAllStagesIfNotActive*/); - } else { - topLeftStage = - mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT ? mSideStage : mMainStage; - bottomRightStage = - mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT ? mMainStage : mSideStage; - } - // Don't allow windows or divider to be focused during animation (mRootTaskInfo is the - // parent of all 3 leaves). We don't want the user to be able to tap and focus a window - // while it is moving across the screen, because granting focus also recalculates the - // layering order, which is in delicate balance during this animation. - WindowContainerTransaction noFocus = new WindowContainerTransaction(); - // TODO: b/393217881 - replace DEFAULT DISPLAY with the current display id - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); - noFocus.setFocusable(rootTaskInfo.token, false); - mSyncQueue.queue(noFocus); - // Remove touch layers, since offscreen apps coming onscreen will not need their touch - // layers anymore. populateTouchZones() is called in the end callback to inflate new touch - // layers in the appropriate places. - mSplitLayout.removeTouchZones(); - notifySplitAnimationStatus(true /*animationRunning*/); - - mSplitLayout.playSwapAnimation(t, topLeftStage, bottomRightStage, + final StageTaskListener topLeftStage = + mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT ? mSideStage : mMainStage; + final SurfaceControl topLeftScreenshot = ScreenshotUtils.takeScreenshot(t, + topLeftStage.mRootLeash, mTempRect1, Integer.MAX_VALUE - 1); + final StageTaskListener bottomRightStage = + mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT ? mMainStage : mSideStage; + final SurfaceControl bottomRightScreenshot = ScreenshotUtils.takeScreenshot(t, + bottomRightStage.mRootLeash, mTempRect1, Integer.MAX_VALUE - 1); + mSplitLayout.splitSwitching(t, topLeftStage.mRootLeash, bottomRightStage.mRootLeash, insets -> { - // Runs at the end of the swap animation - SplitDecorManager decorManager1 = topLeftStage.getDecorManager(); - SplitDecorManager decorManager2 = bottomRightStage.getDecorManager(); - WindowContainerTransaction wct = new WindowContainerTransaction(); - - // Restore focus-ability to the windows and divider - wct.setFocusable(rootTaskInfo.token, true); - - if (enableFlexibleSplit()) { - mStageOrderOperator.onDoubleTappedDivider(); - } setSideStagePosition(reverseSplitPosition(mSideStagePosition), wct); mSyncQueue.queue(wct); mSyncQueue.runInSync(st -> { - mSplitLayout.updateStateWithCurrentPosition(); updateSurfaceBounds(mSplitLayout, st, false /* applyResizingOffset */); - mSplitLayout.populateTouchZones(); - notifySplitAnimationStatus(false /*animationRunning*/); + st.setPosition(topLeftScreenshot, -insets.left, -insets.top); + st.setPosition(bottomRightScreenshot, insets.left, insets.top); - if (enableFlexibleTwoAppSplit() && - mSplitState.currentStateSupportsOffscreenApps()) { - // Stages have changed positions, but layout hasn't so update - // focus on the same layout type as before. NOTE: this needs to happen - // AFTER we make the window's focusable, otherwise it's a no-op - grantFocusForSnapPosition(splitStateToSnapPosition(mSplitState.get())); - } - - // updateSurfaceBounds(), above, officially puts the two apps in their new - // stages. Starting on the next frame, all calculations are made using the - // new layouts/insets. So any follow-up animations on the same leashes below - // should contain some cleanup/repositioning to prevent jank. - - // Play follow-up animations if needed - decorManager1.fadeOutVeilAndCleanUp(st); - decorManager2.fadeOutVeilAndCleanUp(st); + final ValueAnimator va = ValueAnimator.ofFloat(1, 0); + va.addUpdateListener(valueAnimator-> { + final float progress = (float) valueAnimator.getAnimatedValue(); + t.setAlpha(topLeftScreenshot, progress); + t.setAlpha(bottomRightScreenshot, progress); + t.apply(); + }); + va.addListener(new AnimatorListenerAdapter() { + @Override + public void onAnimationEnd( + @androidx.annotation.NonNull Animator animation) { + t.remove(topLeftScreenshot); + t.remove(bottomRightScreenshot); + t.apply(); + mTransactionPool.release(t); + } + }); + va.start(); }); }); ProtoLog.v(WM_SHELL_SPLIT_SCREEN, "Switch split position: %s", reason); - if (enableFlexibleSplit()) { - // TODO(b/374825718) update logging for 2+ apps - } else { - mLogger.logSwap(getMainStagePosition(), mMainStage.getTopChildTaskUid(), - getSideStagePosition(), mSideStage.getTopChildTaskUid(), isLeftRightSplit()); - } + mLogger.logSwap(getMainStagePosition(), mMainStage.getTopChildTaskUid(), + getSideStagePosition(), mSideStage.getTopChildTaskUid(), + mSplitLayout.isLeftRightSplit()); } void setSideStagePosition(@SplitPosition int sideStagePosition, @Nullable WindowContainerTransaction wct) { + setSideStagePosition(sideStagePosition, true /* updateBounds */, wct); + } + + private void setSideStagePosition(@SplitPosition int sideStagePosition, boolean updateBounds, + @Nullable WindowContainerTransaction wct) { if (mSideStagePosition == sideStagePosition) return; mSideStagePosition = sideStagePosition; sendOnStagePositionChanged(); - StageTaskListener stage = enableFlexibleSplit() - ? mStageOrderOperator.getStageForLegacyPosition(mSideStagePosition, - true /*checkAllStagesIfNotActive*/) - : mSideStage; - if (stage.mVisible) { + if (mSideStageListener.mVisible && updateBounds) { if (wct == null) { // onLayoutChanged builds/applies a wct with the contents of updateWindowBounds. onLayoutSizeChanged(mSplitLayout); @@ -1537,105 +1487,83 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } } - private void updateStageWindowBoundsForIndex(@Nullable WindowContainerTransaction wct, - @SplitIndex int index) { - StageTaskListener stage = mStageOrderOperator.getStageForIndex(index); - if (stage.mVisible) { - if (wct == null) { - // onLayoutChanged builds/applies a wct with the contents of updateWindowBounds. - onLayoutSizeChanged(mSplitLayout); + void onKeyguardVisibilityChanged(boolean showing) { + mKeyguardShowing = showing; + if (!mMainStage.isActive()) { + return; + } + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onKeyguardVisibilityChanged: showing=%b", showing); + setDividerVisibility(!mKeyguardShowing, null); + } + + void onFinishedWakingUp() { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onFinishedWakingUp"); + if (!mMainStage.isActive()) { + return; + } + + // Check if there's only one stage visible while keyguard occluded. + final boolean mainStageVisible = mMainStage.mRootTaskInfo.isVisible; + final boolean oneStageVisible = + mMainStage.mRootTaskInfo.isVisible != mSideStage.mRootTaskInfo.isVisible; + if (oneStageVisible && !ENABLE_SHELL_TRANSITIONS) { + // Dismiss split because there's show-when-locked activity showing on top of keyguard. + // Also make sure the task contains show-when-locked activity remains on top after split + // dismissed. + final StageTaskListener toTop = mainStageVisible ? mMainStage : mSideStage; + exitSplitScreen(toTop, EXIT_REASON_SCREEN_LOCKED_SHOW_ON_TOP); + } + + // Dismiss split if the flag record any side of stages. + if (mTopStageAfterFoldDismiss != STAGE_TYPE_UNDEFINED) { + if (ENABLE_SHELL_TRANSITIONS) { + // Need manually clear here due to this transition might be aborted due to keyguard + // on top and lead to no visible change. + clearSplitPairedInRecents(EXIT_REASON_DEVICE_FOLDED); + final WindowContainerTransaction wct = new WindowContainerTransaction(); + prepareExitSplitScreen(mTopStageAfterFoldDismiss, wct); + mSplitTransitions.startDismissTransition(wct, this, + mTopStageAfterFoldDismiss, EXIT_REASON_DEVICE_FOLDED); + setSplitsVisible(false); } else { - updateWindowBounds(mSplitLayout, wct); - sendOnBoundsChanged(); + exitSplitScreen( + mTopStageAfterFoldDismiss == STAGE_TYPE_MAIN ? mMainStage : mSideStage, + EXIT_REASON_DEVICE_FOLDED); } + mTopStageAfterFoldDismiss = STAGE_TYPE_UNDEFINED; } } - /** - * Runs when keyguard state changes. The booleans here are a bit complicated, so for reference: - * @param active {@code true} if we are in a state where the keyguard *should* be shown - * -- still true when keyguard is "there" but is behind an app, or - * screen is off. - * @param occludingTaskRunning {@code true} when there is a running task that has - * FLAG_SHOW_WHEN_LOCKED -- also true when the task is - * just running on its own and keyguard is not active - * at all. - */ - void onKeyguardStateChanged(boolean active, boolean occludingTaskRunning) { - mKeyguardActive = active; - if (!isSplitActive()) { - return; - } - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, - "onKeyguardVisibilityChanged: active=%b occludingTaskRunning=%b", - active, occludingTaskRunning); - setDividerVisibility(!mKeyguardActive, null); - } - - void onStartedWakingUp() { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onStartedWakingUp"); - if (mBreakOnNextWake) { - dismissSplitKeepingLastActiveStage(EXIT_REASON_DEVICE_FOLDED); - } - } - - void onStartedGoingToSleep() { - recordLastActiveStage(); - } - - /** - * Records the user's last focused stage -- main stage or side stage. Used to determine which - * stage of a split pair should be kept, in cases where system focus has moved elsewhere. - */ - void recordLastActiveStage() { - if (!isSplitActive() || !isSplitScreenVisible()) { - mLastActiveStage = STAGE_TYPE_UNDEFINED; - } else if (enableFlexibleSplit()) { - mStageOrderOperator.getActiveStages().stream() - .filter(StageTaskListener::isFocused) - .findFirst() - .ifPresent(stage -> mLastActiveStage = stage.getId()); - } else { - if (mMainStage.isFocused()) { - mLastActiveStage = STAGE_TYPE_MAIN; - } else if (mSideStage.isFocused()) { - mLastActiveStage = STAGE_TYPE_SIDE; - } - } - } - - /** - * Dismisses split, keeping the app that the user focused last in split screen. If the user was - * not in split screen, {@link #mLastActiveStage} should be set to STAGE_TYPE_UNDEFINED, and we - * will do a no-op. - */ - void dismissSplitKeepingLastActiveStage(@ExitReason int reason) { - if (!isSplitActive() || mLastActiveStage == STAGE_TYPE_UNDEFINED) { - // no-op - return; - } - - // Need manually clear here due to this transition might be aborted due to keyguard - // on top and lead to no visible change. - clearSplitPairedInRecents(reason); - final WindowContainerTransaction wct = new WindowContainerTransaction(); - prepareExitSplitScreen(mLastActiveStage, wct, reason); - mSplitTransitions.startDismissTransition(wct, this, mLastActiveStage, reason); - setSplitsVisible(false); - mBreakOnNextWake = false; - logExit(reason); - } - void exitSplitScreenOnHide(boolean exitSplitScreenOnHide) { mExitSplitScreenOnHide = exitSplitScreenOnHide; } + /** Exits split screen with legacy transition */ + void exitSplitScreen(int toTopTaskId, @ExitReason int exitReason) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "exitSplitScreen: topTaskId=%d reason=%s active=%b", + toTopTaskId, exitReasonToString(exitReason), mMainStage.isActive()); + if (!mMainStage.isActive()) return; + + StageTaskListener childrenToTop = null; + if (mMainStage.containsTask(toTopTaskId)) { + childrenToTop = mMainStage; + } else if (mSideStage.containsTask(toTopTaskId)) { + childrenToTop = mSideStage; + } + + final WindowContainerTransaction wct = new WindowContainerTransaction(); + if (childrenToTop != null) { + childrenToTop.reorderChild(toTopTaskId, true /* onTop */, wct); + } + applyExitSplitScreen(childrenToTop, wct, exitReason); + } + /** Exits split screen with legacy transition */ private void exitSplitScreen(@Nullable StageTaskListener childrenToTop, @ExitReason int exitReason) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "exitSplitScreen: mainStageToTop=%b reason=%s active=%b", - childrenToTop == mMainStage, exitReasonToString(exitReason), isSplitActive()); - if (!isSplitActive()) return; + childrenToTop == mMainStage, exitReasonToString(exitReason), mMainStage.isActive()); + if (!mMainStage.isActive()) return; final WindowContainerTransaction wct = new WindowContainerTransaction(); applyExitSplitScreen(childrenToTop, wct, exitReason); @@ -1645,10 +1573,9 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, WindowContainerTransaction wct, @ExitReason int exitReason) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "applyExitSplitScreen: reason=%s", exitReasonToString(exitReason)); - if (!isSplitActive() || mIsExiting) return; + if (!mMainStage.isActive() || mIsExiting) return; onSplitScreenExit(); - mSplitState.exit(); clearSplitPairedInRecents(exitReason); mShouldUpdateRecents = false; @@ -1656,13 +1583,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mSplitRequest = null; mSplitLayout.getInvisibleBounds(mTempRect1); - // TODO: b/393217881 - replace DEFAULT DISPLAY with the current display id - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); if (childrenToTop == null || childrenToTop.getTopVisibleChildTaskId() == INVALID_TASK_ID) { mSideStage.removeAllTasks(wct, false /* toTop */); - deactivateSplit(wct, STAGE_TYPE_UNDEFINED); - wct.reorder(rootTaskInfo.token, false /* onTop */); + mMainStage.deactivate(wct, false /* toTop */); + wct.reorder(mRootTaskInfo.token, false /* onTop */); setRootForceTranslucent(true, wct); wct.setBounds(mSideStage.mRootTaskInfo.token, mTempRect1); onTransitionAnimationComplete(); @@ -1673,7 +1597,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, childrenToTop.resetBounds(wct); wct.reorder(childrenToTop.mRootTaskInfo.token, true); } - wct.setReparentLeafTaskIfRelaunch(rootTaskInfo.token, + wct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, false /* reparentLeafTaskIfRelaunch */); mSyncQueue.queue(wct); mSyncQueue.runInSync(t -> { @@ -1690,9 +1614,9 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, childrenToTop.fadeOutDecor(() -> { WindowContainerTransaction finishedWCT = new WindowContainerTransaction(); mIsExiting = false; - deactivateSplit(finishedWCT, childrenToTop.getId()); + mMainStage.deactivate(finishedWCT, childrenToTop == mMainStage /* toTop */); mSideStage.removeAllTasks(finishedWCT, childrenToTop == mSideStage /* toTop */); - finishedWCT.reorder(rootTaskInfo.token, false /* toTop */); + finishedWCT.reorder(mRootTaskInfo.token, false /* toTop */); setRootForceTranslucent(true, finishedWCT); finishedWCT.setBounds(mSideStage.mRootTaskInfo.token, mTempRect1); mSyncQueue.queue(finishedWCT); @@ -1713,14 +1637,11 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } void dismissSplitScreen(int toTopTaskId, @ExitReason int exitReason) { - if (!isSplitActive()) return; + if (!mMainStage.isActive()) return; final int stage = getStageOfTask(toTopTaskId); final WindowContainerTransaction wct = new WindowContainerTransaction(); - prepareExitSplitScreen(stage, wct, exitReason); + prepareExitSplitScreen(stage, wct); mSplitTransitions.startDismissTransition(wct, this, stage, exitReason); - // reset stages to their default sides. - setSideStagePosition(SPLIT_POSITION_BOTTOM_OR_RIGHT, null); - logExit(exitReason); } /** @@ -1748,8 +1669,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, * Grants focus to the main or the side stages. */ protected void grantFocusToStage(@SplitPosition int stageToFocus) { + IActivityTaskManager activityTaskManagerService = IActivityTaskManager.Stub.asInterface( + ServiceManager.getService(Context.ACTIVITY_TASK_SERVICE)); try { - mActivityTaskManager.setFocusedTask(getTaskId(stageToFocus)); + activityTaskManagerService.setFocusedTask(getTaskId(stageToFocus)); } catch (RemoteException | NullPointerException e) { ProtoLog.e(WM_SHELL_SPLIT_SCREEN, "Unable to update focus on the chosen stage: %s", e.getMessage()); @@ -1766,18 +1689,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, grantFocusToStage(stageToFocus); } - private void grantFocusForSnapPosition(@PersistentSnapPosition int enteringPosition) { - switch (enteringPosition) { - case SNAP_TO_2_90_10 -> grantFocusToPosition(true /*leftOrTop*/); - case SNAP_TO_2_10_90 -> grantFocusToPosition(false /*leftOrTop*/); - default -> { /*no-op*/ } - } - } - private void clearRequestIfPresented() { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "clearRequestIfPresented"); - if (mSideStage.mVisible && mSideStage.mHasChildren - && mMainStage.mVisible && mSideStage.mHasChildren) { + if (mSideStageListener.mVisible && mSideStageListener.mHasChildren + && mMainStageListener.mVisible && mSideStageListener.mHasChildren) { mSplitRequest = null; } } @@ -1813,87 +1728,35 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } void clearSplitPairedInRecents(@ExitReason int exitReason) { - if (!shouldBreakPairedTaskInRecents(exitReason) || !mShouldUpdateRecents) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "clearSplitPairedInRecents: skipping reason=%s", - !mShouldUpdateRecents ? "shouldn't update" : exitReasonToString(exitReason)); - return; - } + if (!shouldBreakPairedTaskInRecents(exitReason) || !mShouldUpdateRecents) return; ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "clearSplitPairedInRecents: reason=%s", exitReasonToString(exitReason)); mRecentTasks.ifPresent(recentTasks -> { // Notify recents if we are exiting in a way that breaks the pair, and disable further // updates to splits in the recents until we enter split again - if (enableFlexibleSplit()) { - runForActiveStages((stage) -> - stage.doForAllChildTasks(taskId -> recentTasks.removeSplitPair(taskId))); - } else { - mMainStage.doForAllChildTasks(taskId -> recentTasks.removeSplitPair(taskId)); - mSideStage.doForAllChildTasks(taskId -> recentTasks.removeSplitPair(taskId)); - } + mMainStage.doForAllChildTasks(taskId -> recentTasks.removeSplitPair(taskId)); + mSideStage.doForAllChildTasks(taskId -> recentTasks.removeSplitPair(taskId)); }); - logExit(exitReason); } /** * Unlike exitSplitScreen, this takes a stagetype vs an actual stage-reference and populates * an existing WindowContainerTransaction (rather than applying immediately). This is intended * to be used when exiting split might be bundled with other window operations. - * - * @param stageToTop The stage to move to the top */ void prepareExitSplitScreen(@StageType int stageToTop, - @NonNull WindowContainerTransaction wct, @ExitReason int exitReason) { - if (!isSplitActive()) return; - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareExitSplitScreen: stageToTop=%s reason=%s", - stageTypeToString(stageToTop), exitReasonToString(exitReason)); - if (enableFlexibleSplit()) { - mStageOrderOperator.getActiveStages().stream() - .filter(stage -> stage.getId() != stageToTop) - .forEach(stage -> stage.removeAllTasks(wct, false /*toTop*/)); - } else { - mSideStage.removeAllTasks(wct, stageToTop == STAGE_TYPE_SIDE); - } - - if (exitReason != EXIT_REASON_DESKTOP_MODE) { - StageTaskListener toTopStage = stageToTop == STAGE_TYPE_MAIN ? mMainStage : mSideStage; - if (enableFlexibleSplit()) { - toTopStage = mStageOrderOperator.getAllStages().stream() - .filter(stage -> stage.getId() == stageToTop) - .findFirst().orElse(null); - } - final DisplayAreaInfo tdaInfo = mRootTDAOrganizer.getDisplayAreaInfo(mDisplayId); - Objects.requireNonNull(tdaInfo); - final int displayWindowingMode = - tdaInfo.configuration.windowConfiguration.getWindowingMode(); - // In freeform-first env, we need to explicitly set the windowing mode when leaving - // the split-screen to be fullscreen. - final int targetWindowingMode = displayWindowingMode == WINDOWING_MODE_FREEFORM - ? WINDOWING_MODE_FULLSCREEN : WINDOWING_MODE_UNDEFINED; - toTopStage.doForAllChildTaskInfos(taskInfo -> { - wct.setWindowingMode(taskInfo.token, targetWindowingMode); - }); - } - // Reparent root task to default display if non default display split is enabled. - // TODO: b/393217881 - add displayId from the caller and replace DEFAULT_DISPLAY with the - // current displayId when multi split is supported. - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); - if (DesktopExperienceFlags.ENABLE_NON_DEFAULT_DISPLAY_SPLIT.isTrue() - && rootTaskInfo.displayId != DEFAULT_DISPLAY) { - DisplayAreaInfo displayAreaInfo = mRootTDAOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY); - if (displayAreaInfo != null) { - wct.reparent(rootTaskInfo.token, displayAreaInfo.token, false /* onTop */); - } - } - deactivateSplit(wct, stageToTop); - mSplitState.exit(); + @NonNull WindowContainerTransaction wct) { + if (!mMainStage.isActive()) return; + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareExitSplitScreen: stageToTop=%d", stageToTop); + mSideStage.removeAllTasks(wct, stageToTop == STAGE_TYPE_SIDE); + mMainStage.deactivate(wct, stageToTop == STAGE_TYPE_MAIN); } private void prepareEnterSplitScreen(WindowContainerTransaction wct) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareEnterSplitScreen"); prepareEnterSplitScreen(wct, null /* taskInfo */, SPLIT_POSITION_UNDEFINED, - !mIsDropEntering, SPLIT_INDEX_UNDEFINED); + !mIsDropEntering); } /** @@ -1901,27 +1764,25 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, * into side stage. */ void prepareEnterSplitScreen(WindowContainerTransaction wct, - @Nullable RunningTaskInfo taskInfo, @SplitPosition int startPosition, - boolean resizeAnim, @SplitIndex int index) { + @Nullable ActivityManager.RunningTaskInfo taskInfo, @SplitPosition int startPosition, + boolean resizeAnim) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareEnterSplitScreen: position=%d resize=%b", startPosition, resizeAnim); onSplitScreenEnter(); // Preemptively reset the reparenting behavior if we know that we are entering, as starting // split tasks with activity trampolines can inadvertently trigger the task to be // reparented out of the split root mid-launch - int displayId = taskInfo != null ? taskInfo.displayId : DEFAULT_DISPLAY; - wct.setReparentLeafTaskIfRelaunch(mSplitMultiDisplayHelper - .getDisplayRootTaskInfo(displayId).token, + wct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, false /* setReparentLeafTaskIfRelaunch */); if (isSplitActive()) { prepareBringSplit(wct, taskInfo, startPosition, resizeAnim); } else { - prepareActiveSplit(wct, taskInfo, startPosition, resizeAnim, index); + prepareActiveSplit(wct, taskInfo, startPosition, resizeAnim); } } private void prepareBringSplit(WindowContainerTransaction wct, - @Nullable RunningTaskInfo taskInfo, @SplitPosition int startPosition, + @Nullable ActivityManager.RunningTaskInfo taskInfo, @SplitPosition int startPosition, boolean resizeAnim) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareBringSplit: task=%d isSplitVisible=%b", taskInfo != null ? taskInfo.taskId : -1, isSplitScreenVisible()); @@ -1937,32 +1798,30 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, if (!mSkipEvictingMainStageChildren) { mMainStage.evictAllChildren(wct); } - // TODO(b/349828130) revisit bring split from BG to FG scenarios - if (enableFlexibleSplit()) { - runForActiveStages(stage -> stage.reparentTopTask(wct)); - } else { - mMainStage.reparentTopTask(wct); - } + mMainStage.reparentTopTask(wct); prepareSplitLayout(wct, resizeAnim); } } - /** - * @param index The index that has already been assigned a stage - */ private void prepareActiveSplit(WindowContainerTransaction wct, - @Nullable RunningTaskInfo taskInfo, @SplitPosition int startPosition, - boolean resizeAnim, @SplitIndex int index) { + @Nullable ActivityManager.RunningTaskInfo taskInfo, @SplitPosition int startPosition, + boolean resizeAnim) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareActiveSplit: task=%d isSplitVisible=%b", taskInfo != null ? taskInfo.taskId : -1, isSplitScreenVisible()); - // We handle split visibility itself on shell transition, but sometimes we didn't - // reset it correctly after dismiss by some reason, so just set invisible before active. - setSplitsVisible(false); + if (!ENABLE_SHELL_TRANSITIONS) { + // Legacy transition we need to create divider here, shell transition case we will + // create it on #finishEnterSplitScreen + mSplitLayout.init(); + } else { + // We handle split visibility itself on shell transition, but sometimes we didn't + // reset it correctly after dismiss by some reason, so just set invisible before active. + setSplitsVisible(false); + } if (taskInfo != null) { setSideStagePosition(startPosition, wct); mSideStage.addTask(taskInfo, wct); } - activateSplit(wct, true /* reparentToTop */, index); + mMainStage.activate(wct, true /* includingTopTask */); prepareSplitLayout(wct, resizeAnim); } @@ -1982,82 +1841,38 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mSplitLayout.getInvisibleBounds(mTempRect1); mSplitLayout.setTaskBounds(wct, mSideStage.mRootTaskInfo, mTempRect1); } - // TODO: b/393217881 - replace DEFAULT_DISPLAY with the current displayId after making - // split layout display aware. - wct.reorder(mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY).token, true); + wct.reorder(mRootTaskInfo.token, true); setRootForceTranslucent(false, wct); } - private void prepareMovingSplitscreenRoot(WindowContainerTransaction wct, int displayId) { - if (!enableMultiDisplaySplit()) { - final DisplayAreaInfo displayAreaInfo = mRootTDAOrganizer.getDisplayAreaInfo(displayId); - final WindowContainerToken token = getDisplayRootForDisplayId(DEFAULT_DISPLAY); - if (token != null && displayAreaInfo != null) { - wct.reparent(token, displayAreaInfo.token, true /* onTop */); - } - } - } - void finishEnterSplitScreen(SurfaceControl.Transaction finishT) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "finishEnterSplitScreen"); - mSplitLayout.updateStateWithCurrentPosition(); mSplitLayout.update(null, true /* resetImePosition */); - if (enableFlexibleSplit()) { - runForActiveStages((stage) -> - stage.getSplitDecorManager().inflate(mContext, stage.mRootLeash)); - } else { - mMainStage.getSplitDecorManager().inflate(mContext, mMainStage.mRootLeash); - mSideStage.getSplitDecorManager().inflate(mContext, mSideStage.mRootLeash); - } + mMainStage.getSplitDecorManager().inflate(mContext, mMainStage.mRootLeash); + mSideStage.getSplitDecorManager().inflate(mContext, mSideStage.mRootLeash); setDividerVisibility(true, finishT); // Ensure divider surface are re-parented back into the hierarchy at the end of the // transition. See Transition#buildFinishTransaction for more detail. - // TODO: b/393217881 - replace DEFAULT DISPLAY with the current display id - finishT.reparent(mSplitLayout.getDividerLeash(), - mSplitMultiDisplayHelper.getDisplayRootTaskLeash(DEFAULT_DISPLAY)); - if (enableFlexibleSplit()) { - mStageOrderOperator.getActiveStages().forEach(stage -> { - finishT.reparent(stage.mDimLayer, stage.mRootLeash); - }); - } else if (enableFlexibleTwoAppSplit()) { - finishT.reparent(mMainStage.mDimLayer, mMainStage.mRootLeash); - finishT.reparent(mSideStage.mDimLayer, mSideStage.mRootLeash); - } + finishT.reparent(mSplitLayout.getDividerLeash(), mRootTaskLeash); updateSurfaceBounds(mSplitLayout, finishT, false /* applyResizingOffset */); - finishT.show(mSplitMultiDisplayHelper.getDisplayRootTaskLeash(DEFAULT_DISPLAY)); + finishT.show(mRootTaskLeash); setSplitsVisible(true); mIsDropEntering = false; mSkipEvictingMainStageChildren = false; mSplitRequest = null; updateRecentTasksSplitPair(); - - if (enableFlexibleSplit()) { - // TODO(b/374825718) log 2+ apps - return; + if (!mLogger.hasStartedSession()) { + mLogger.logEnter(mSplitLayout.getDividerPositionAsFraction(), + getMainStagePosition(), mMainStage.getTopChildTaskUid(), + getSideStagePosition(), mSideStage.getTopChildTaskUid(), + mSplitLayout.isLeftRightSplit()); } - mLogger.logEnter(mSplitLayout.getDividerPositionAsFraction(), - getMainStagePosition(), mMainStage.getTopChildTaskUid(), - getSideStagePosition(), mSideStage.getTopChildTaskUid(), isLeftRightSplit()); } void getStageBounds(Rect outTopOrLeftBounds, Rect outBottomOrRightBounds) { - outTopOrLeftBounds.set(mSplitLayout.getTopLeftBounds()); - outBottomOrRightBounds.set(mSplitLayout.getBottomRightBounds()); - } - - void getRefStageBounds(Rect outTopOrLeftBounds, Rect outBottomOrRightBounds) { - outTopOrLeftBounds.set(mSplitLayout.getTopLeftRefBounds()); - outBottomOrRightBounds.set(mSplitLayout.getBottomRightRefBounds()); - } - - private void runForActiveStages(Consumer<StageTaskListener> consumer) { - mStageOrderOperator.getActiveStages().forEach(consumer); - } - - private boolean runForActiveStagesAllMatch(Predicate<StageTaskListener> predicate) { - List<StageTaskListener> activeStages = mStageOrderOperator.getActiveStages(); - return !activeStages.isEmpty() && activeStages.stream().allMatch(predicate); + outTopOrLeftBounds.set(mSplitLayout.getBounds1()); + outBottomOrRightBounds.set(mSplitLayout.getBounds2()); } @SplitPosition @@ -2073,42 +1888,19 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, private void addActivityOptions(Bundle opts, @Nullable StageTaskListener launchTarget) { ActivityOptions options = ActivityOptions.fromBundle(opts); if (launchTarget != null) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, - "addActivityOptions setting launch root for stage=%s", - stageTypeToString(launchTarget.getId())); options.setLaunchRootTask(launchTarget.mRootTaskInfo.token); } // Put BAL flags to avoid activity start aborted. Otherwise, flows like shortcut to split // will be canceled. - options.setPendingIntentBackgroundActivityStartMode( - MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS); + options.setPendingIntentBackgroundActivityStartMode(MODE_BACKGROUND_ACTIVITY_START_ALLOWED); + options.setPendingIntentBackgroundActivityLaunchAllowedByPermission(true); // TODO (b/336477473): Disallow enter PiP when launching a task in split by default; // this might have to be changed as more split-to-pip cujs are defined. options.setDisallowEnterPictureInPictureWhileLaunching(true); - if (enableEnterSplitRemoveBubble()) { - // Set an empty rect as the requested launch bounds. This ensures that if an existing - // task is reused, and it has bounds set, they are cleared. - options.setLaunchBounds(new Rect()); - } - opts.putAll(options.toBundle()); } - private void addActivityOptions(Bundle opts, @Nullable StageTaskListener launchTarget, - int targetWindowingMode) { - ActivityOptions options = ActivityOptions.fromBundle(opts); - options.setLaunchWindowingMode(targetWindowingMode); - // We are trying to move to fullscreen, reparent the task to tda to prevent it from being - // launched in a previously existing root task. - if (DesktopExperienceFlags.ENABLE_MULTIPLE_DESKTOPS_BACKEND.isTrue() - && targetWindowingMode == WINDOWING_MODE_FULLSCREEN) { - options.setReparentLeafTaskToTda(true); - } - opts.putAll(options.toBundle()); - addActivityOptions(opts, launchTarget); - } - void updateActivityOptions(Bundle opts, @SplitPosition int position) { addActivityOptions(opts, position == mSideStagePosition ? mSideStage : mMainStage); } @@ -2139,15 +1931,8 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, listener.onSplitBoundsChanged(mSplitLayout.getRootBounds(), getMainStageBounds(), getSideStageBounds()); } - if (enableFlexibleSplit()) { - // TODO(b/349828130) replace w/ stageID - mStageOrderOperator.getAllStages().forEach( - stage -> stage.onSplitScreenListenerRegistered(listener, STAGE_TYPE_UNDEFINED) - ); - } else { - mSideStage.onSplitScreenListenerRegistered(listener, STAGE_TYPE_SIDE); - mMainStage.onSplitScreenListenerRegistered(listener, STAGE_TYPE_MAIN); - } + mSideStage.onSplitScreenListenerRegistered(listener, STAGE_TYPE_SIDE); + mMainStage.onSplitScreenListenerRegistered(listener, STAGE_TYPE_MAIN); } private void sendOnStagePositionChanged() { @@ -2166,46 +1951,24 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } } - @Override - public void onChildTaskStatusChanged(StageTaskListener stageListener, int taskId, + private void onStageChildTaskStatusChanged(StageListenerImpl stageListener, int taskId, boolean present, boolean visible) { int stage; if (present) { - if (enableFlexibleSplit()) { - stage = stageListener.getId(); - } else { - stage = stageListener == mSideStage ? STAGE_TYPE_SIDE : STAGE_TYPE_MAIN; - } + stage = stageListener == mSideStageListener ? STAGE_TYPE_SIDE : STAGE_TYPE_MAIN; } else { // No longer on any stage stage = STAGE_TYPE_UNDEFINED; } - if (!enableFlexibleSplit()) { - if (stage == STAGE_TYPE_MAIN) { - mLogger.logMainStageAppChange(getMainStagePosition(), - mMainStage.getTopChildTaskUid(), isLeftRightSplit()); - } else if (stage == STAGE_TYPE_SIDE) { - mLogger.logSideStageAppChange(getSideStagePosition(), - mSideStage.getTopChildTaskUid(), isLeftRightSplit()); - } + if (stage == STAGE_TYPE_MAIN) { + mLogger.logMainStageAppChange(getMainStagePosition(), mMainStage.getTopChildTaskUid(), + mSplitLayout.isLeftRightSplit()); + } else { + mLogger.logSideStageAppChange(getSideStagePosition(), mSideStage.getTopChildTaskUid(), + mSplitLayout.isLeftRightSplit()); } if (present) { updateRecentTasksSplitPair(); - } else { - // TODO (b/349828130): Test b/333270112 for flex split (launch adjacent for flex - // currently not working) - boolean allRootsEmpty = enableFlexibleSplit() - ? runForActiveStagesAllMatch(stageTaskListener -> - stageTaskListener.getChildCount() == 0) - : mMainStage.getChildCount() == 0 && mSideStage.getChildCount() == 0; - if (allRootsEmpty) { - mRecentTasks.ifPresent(recentTasks -> { - // remove the split pair mapping from recentTasks, and disable further updates - // to splits in the recents until we enter split again. - recentTasks.removeSplitPair(taskId); - }); - dismissSplitScreen(INVALID_TASK_ID, EXIT_REASON_ROOT_TASK_VANISHED); - } } for (int i = mListeners.size() - 1; i >= 0; --i) { @@ -2216,166 +1979,81 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, private void updateRecentTasksSplitPair() { // Preventing from single task update while processing recents. if (!mShouldUpdateRecents || !mPausingTasks.isEmpty()) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "updateRecentTasksSplitPair: skipping reason=%s", - !mShouldUpdateRecents ? "shouldn't update" : "no pausing tasks"); return; } mRecentTasks.ifPresent(recentTasks -> { - Rect topLeftBounds = new Rect(); - mSplitLayout.copyTopLeftBounds(topLeftBounds); - Rect bottomRightBounds = new Rect(); - mSplitLayout.copyBottomRightBounds(bottomRightBounds); - - RunningTaskInfo mainStageRootTaskInfo = null; - RunningTaskInfo sideStageRootTaskInfo = null; - List<Integer> mainStageTaskIds = new ArrayList<>(); - List<Integer> sideStageTaskIds = new ArrayList<>(); - int mainStageTopTaskId = INVALID_TASK_ID; - int sideStageTopTaskId = INVALID_TASK_ID; - if (enableFlexibleSplit()) { - List<StageTaskListener> activeStages = mStageOrderOperator.getActiveStages(); - if (activeStages.size() == 2) { - // doesn't matter which one we assign to? What matters is the order of 0 and 1? - mainStageRootTaskInfo = activeStages.get(0).mRootTaskInfo; - sideStageRootTaskInfo = activeStages.get(1).mRootTaskInfo; - mainStageTaskIds = activeStages.get(0).getAllVisibleChildTaskIds(); - sideStageTaskIds = activeStages.get(1).getAllVisibleChildTaskIds(); - mainStageTopTaskId = activeStages.get(0).getTopVisibleChildTaskId(); - sideStageTopTaskId = activeStages.get(1).getTopVisibleChildTaskId(); - } - } else { - mainStageRootTaskInfo = mMainStage.mRootTaskInfo; - sideStageRootTaskInfo = mSideStage.mRootTaskInfo; - mainStageTaskIds = mMainStage.getAllVisibleChildTaskIds(); - sideStageTaskIds = mSideStage.getAllVisibleChildTaskIds(); - mainStageTopTaskId = mMainStage.getTopVisibleChildTaskId(); - sideStageTopTaskId = mSideStage.getTopVisibleChildTaskId(); - } - - if (mainStageTopTaskId == INVALID_TASK_ID || sideStageTopTaskId == INVALID_TASK_ID - || mainStageRootTaskInfo == null || sideStageRootTaskInfo == null - || mainStageTaskIds.isEmpty() || sideStageTaskIds.isEmpty()) { - return; - } - - List<Integer> leftTopTaskIds = mainStageTaskIds; - List<Integer> rightBottomTaskIds = sideStageTaskIds; - int leftTopTaskId = mainStageTopTaskId; - int rightBottomTaskId = sideStageTopTaskId; - if (!enableFlexibleSplit() && (mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT)) { - leftTopTaskIds = sideStageTaskIds; - rightBottomTaskIds = mainStageTaskIds; + Rect topLeftBounds = mSplitLayout.getBounds1(); + Rect bottomRightBounds = mSplitLayout.getBounds2(); + int mainStageTopTaskId = mMainStage.getTopVisibleChildTaskId(); + int sideStageTopTaskId = mSideStage.getTopVisibleChildTaskId(); + boolean sideStageTopLeft = mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT; + int leftTopTaskId; + int rightBottomTaskId; + if (sideStageTopLeft) { leftTopTaskId = sideStageTopTaskId; rightBottomTaskId = mainStageTopTaskId; - } - - // If all stages are filled, create new SplitBounds and update Recents. - int currentSnapPosition = mSplitLayout.calculateCurrentSnapPosition(); - if (enableFlexibleTwoAppSplit()) { - // Split screen can be laid out in such a way that some of the apps are - // offscreen. For the purposes of passing SplitBounds up to launcher (for use in - // thumbnails etc.), we crop the bounds down to the screen size. - topLeftBounds.left = - Math.max(topLeftBounds.left, 0); - topLeftBounds.top = - Math.max(topLeftBounds.top, 0); - bottomRightBounds.right = - Math.min(bottomRightBounds.right, mSplitLayout.getDisplayWidth()); - bottomRightBounds.bottom = - Math.min(bottomRightBounds.bottom, mSplitLayout.getDisplayHeight()); - - // TODO (b/349828130): Can change to getState() fully after brief soak time. - if (mSplitState.get() != currentSnapPosition) { - Log.wtf(TAG, "SplitState is " + mSplitState.get() - + ", expected " + currentSnapPosition); - currentSnapPosition = mSplitState.get(); - } + } else { + leftTopTaskId = mainStageTopTaskId; + rightBottomTaskId = sideStageTopTaskId; } SplitBounds splitBounds = new SplitBounds(topLeftBounds, bottomRightBounds, - leftTopTaskId, rightBottomTaskId, leftTopTaskIds, rightBottomTaskIds, - currentSnapPosition); - - // Update the pair for the top tasks - boolean added = recentTasks.addSplitPair(mainStageTopTaskId, - sideStageTopTaskId, splitBounds); - if (added) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, - "updateRecentTasksSplitPair: adding split pair ltTask=" - + leftTopTaskIds + " rbTask=" + rightBottomTaskIds); + leftTopTaskId, rightBottomTaskId, mSplitLayout.calculateCurrentSnapPosition()); + if (mainStageTopTaskId != INVALID_TASK_ID && sideStageTopTaskId != INVALID_TASK_ID) { + // Update the pair for the top tasks + boolean added = recentTasks.addSplitPair(mainStageTopTaskId, sideStageTopTaskId, + splitBounds); + if (added) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, + "updateRecentTasksSplitPair: adding split pair ltTask=%d rbTask=%d", + leftTopTaskId, rightBottomTaskId); + } } }); } - /** Notify external parties when split is visible or not. NOT related to split activation. */ - private void sendSplitVisibilityChanged(boolean visible) { + private void sendSplitVisibilityChanged() { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "sendSplitVisibilityChanged: dividerVisible=%b", mDividerVisible); for (int i = mListeners.size() - 1; i >= 0; --i) { final SplitScreen.SplitScreenListener l = mListeners.get(i); - l.onSplitVisibilityChanged(visible); + l.onSplitVisibilityChanged(mDividerVisible); } sendOnBoundsChanged(); } @Override @CallSuper - public void onTaskAppeared(RunningTaskInfo taskInfo, SurfaceControl leash) { - if (mSplitMultiDisplayHelper.getDisplayRootTaskInfo(taskInfo.displayId) != null - || taskInfo.hasParentTask()) { + public void onTaskAppeared(ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash) { + if (mRootTaskInfo != null || taskInfo.hasParentTask()) { throw new IllegalArgumentException(this + "\n Unknown task appeared: " + taskInfo); } ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskAppeared: task=%s", taskInfo); - - mSplitMultiDisplayHelper.setDisplayRootTaskInfo(taskInfo.displayId, taskInfo); - mSplitMultiDisplayHelper.setDisplayRootTaskLeash(taskInfo.displayId, leash); + mRootTaskInfo = taskInfo; + mRootTaskLeash = leash; if (mSplitLayout == null) { - int parallaxType = enableFlexibleTwoAppSplit() ? PARALLAX_FLEX : PARALLAX_ALIGN_CENTER; mSplitLayout = new SplitLayout(TAG + "SplitDivider", mContext, - taskInfo.configuration, this, mParentContainerCallbacks, - mDisplayController, mDisplayImeController, mTaskOrganizer, parallaxType, - mSplitState, mMainHandler, mStatusBarHider, mDesktopState, mMSDLPlayer); + mRootTaskInfo.configuration, this, mParentContainerCallbacks, + mDisplayController, mDisplayImeController, mTaskOrganizer, + PARALLAX_ALIGN_CENTER /* parallaxType */); mDisplayInsetsController.addInsetsChangedListener(mDisplayId, mSplitLayout); } - onRootTaskAppeared(taskInfo); + onRootTaskAppeared(); } @Override @CallSuper - public void onTaskInfoChanged(RunningTaskInfo taskInfo) { - if (enableMultiDisplaySplit()) { - ArrayList<Integer> displayIds = mSplitMultiDisplayHelper.getCachedOrSystemDisplayIds(); - boolean allRootsNull = true; - boolean taskIsNotRootTask = true; - for (int displayId : displayIds) { - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(displayId); - if (rootTaskInfo != null) { - allRootsNull = false; - } - if (rootTaskInfo != null && rootTaskInfo.taskId == taskInfo.taskId) { - taskIsNotRootTask = false; - } - } - if (allRootsNull || taskIsNotRootTask) { - throw new IllegalArgumentException(this + "\n Unknown task info changed: " - + taskInfo); - } - } else { - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); - if (rootTaskInfo == null || rootTaskInfo.taskId != taskInfo.taskId) { - throw new IllegalArgumentException(this + "\n Unknown task info changed: " - + taskInfo); - } + public void onTaskInfoChanged(ActivityManager.RunningTaskInfo taskInfo) { + if (mRootTaskInfo == null || mRootTaskInfo.taskId != taskInfo.taskId) { + throw new IllegalArgumentException(this + "\n Unknown task info changed: " + taskInfo); } - mSplitMultiDisplayHelper.setDisplayRootTaskInfo(taskInfo.displayId, taskInfo); - + mWindowDecorViewModel.ifPresent(viewModel -> viewModel.onTaskInfoChanged(taskInfo)); + mRootTaskInfo = taskInfo; if (mSplitLayout != null - && mSplitLayout.updateConfiguration(taskInfo.configuration) - && isSplitActive()) { + && mSplitLayout.updateConfiguration(mRootTaskInfo.configuration) + && mMainStage.isActive()) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskInfoChanged: task=%d updating", taskInfo.taskId); // Clear the divider remote animating flag as the divider will be re-rendered to apply @@ -2389,116 +2067,105 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, @Override @CallSuper - public void onTaskVanished(RunningTaskInfo taskInfo) { + public void onTaskVanished(ActivityManager.RunningTaskInfo taskInfo) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskVanished: task=%s", taskInfo); - if (mSplitMultiDisplayHelper.getDisplayRootTaskInfo(taskInfo.displayId) == null) { + if (mRootTaskInfo == null) { throw new IllegalArgumentException(this + "\n Unknown task vanished: " + taskInfo); } - onRootTaskVanished(taskInfo); + onRootTaskVanished(); if (mSplitLayout != null) { mSplitLayout.release(); mSplitLayout = null; } - mSplitMultiDisplayHelper.setDisplayRootTaskInfo(taskInfo.displayId, null); - mSplitMultiDisplayHelper.setDisplayRootTaskLeash(taskInfo.displayId, null); + mRootTaskInfo = null; + mRootTaskLeash = null; mIsRootTranslucent = false; } @VisibleForTesting - @Override - public void onRootTaskAppeared(RunningTaskInfo taskInfo) { - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(taskInfo.displayId); - if (enableFlexibleSplit()) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onRootTaskAppeared: rootTask=%s", - rootTaskInfo); - mStageOrderOperator.getAllStages().forEach(stage -> { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, - " onRootStageAppeared stageId=%s hasRoot=%b", - stageTypeToString(stage.getId()), stage.mHasRootTask); - }); - } else { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, - "onRootTaskAppeared: rootTask=%s mainRoot=%b sideRoot=%b", - rootTaskInfo, mMainStage.mHasRootTask, mSideStage.mHasRootTask); - } - boolean notAllStagesHaveRootTask; - if (enableFlexibleSplit()) { - notAllStagesHaveRootTask = mStageOrderOperator.getAllStages().stream() - .anyMatch((stage) -> !stage.mHasRootTask); - } else { - notAllStagesHaveRootTask = !mMainStage.mHasRootTask - || !mSideStage.mHasRootTask; - } + void onRootTaskAppeared() { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onRootTaskAppeared: rootTask=%s mainRoot=%b sideRoot=%b", + mRootTaskInfo, mMainStageListener.mHasRootTask, mSideStageListener.mHasRootTask); // Wait unit all root tasks appeared. - if (rootTaskInfo == null || notAllStagesHaveRootTask) { + if (mRootTaskInfo == null + || !mMainStageListener.mHasRootTask + || !mSideStageListener.mHasRootTask) { return; } final WindowContainerTransaction wct = new WindowContainerTransaction(); - if (enableFlexibleSplit()) { - mStageOrderOperator.getAllStages().forEach(stage -> - wct.reparent(stage.mRootTaskInfo.token, rootTaskInfo.token, true)); - } else { - wct.reparent(mMainStage.mRootTaskInfo.token, rootTaskInfo.token, true); - wct.reparent(mSideStage.mRootTaskInfo.token, rootTaskInfo.token, true); - } - + wct.reparent(mMainStage.mRootTaskInfo.token, mRootTaskInfo.token, true); + wct.reparent(mSideStage.mRootTaskInfo.token, mRootTaskInfo.token, true); + // Make the stages adjacent to each other so they occlude what's behind them. + wct.setAdjacentRoots(mMainStage.mRootTaskInfo.token, mSideStage.mRootTaskInfo.token); setRootForceTranslucent(true, wct); - if (!enableFlexibleSplit()) { - // TODO: consider support 3 splits - - // Make the stages adjacent to each other so they occlude what's behind them. - wct.setAdjacentRootSet(mMainStage.mRootTaskInfo.token, mSideStage.mRootTaskInfo.token); - mSplitLayout.getInvisibleBounds(mTempRect1); - wct.setBounds(mSideStage.mRootTaskInfo.token, mTempRect1); - } + mSplitLayout.getInvisibleBounds(mTempRect1); + wct.setBounds(mSideStage.mRootTaskInfo.token, mTempRect1); mSyncQueue.queue(wct); - if (!enableFlexibleSplit()) { + mSyncQueue.runInSync(t -> { + t.setPosition(mSideStage.mRootLeash, mTempRect1.left, mTempRect1.top); + }); + mLaunchAdjacentController.setLaunchAdjacentRoot(mSideStage.mRootTaskInfo.token); + } + + /** Callback when split roots have child task appeared under it, this is a little different from + * #onStageHasChildrenChanged because this would be called every time child task appeared. + * NOTICE: This only be called on legacy transition. */ + private void onChildTaskAppeared(StageListenerImpl stageListener, int taskId) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onChildTaskAppeared: isMainStage=%b task=%d", + stageListener == mMainStageListener, taskId); + // Handle entering split screen while there is a split pair running in the background. + if (stageListener == mSideStageListener && !isSplitScreenVisible() && isSplitActive() + && mSplitRequest == null) { + final WindowContainerTransaction wct = new WindowContainerTransaction(); + prepareEnterSplitScreen(wct); + mMainStage.evictAllChildren(wct); + mSideStage.evictOtherChildren(wct, taskId); + + mSyncQueue.queue(wct); mSyncQueue.runInSync(t -> { - t.setPosition(mSideStage.mRootLeash, mTempRect1.left, mTempRect1.top); + if (mIsDropEntering) { + updateSurfaceBounds(mSplitLayout, t, false /* applyResizingOffset */); + mIsDropEntering = false; + mSkipEvictingMainStageChildren = false; + } else { + mShowDecorImmediately = true; + mSplitLayout.flingDividerToCenter(/*finishCallback*/ null); + } }); - mLaunchAdjacentController.setLaunchAdjacentRoot(mSideStage.mRootTaskInfo.token); - } else { - // TODO: consider support 3 splits } } - @Override - public void onRootTaskVanished(RunningTaskInfo taskInfo) { + private void onRootTaskVanished() { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onRootTaskVanished"); final WindowContainerTransaction wct = new WindowContainerTransaction(); mLaunchAdjacentController.clearLaunchAdjacentRoot(); applyExitSplitScreen(null /* childrenToTop */, wct, EXIT_REASON_ROOT_TASK_VANISHED); - // TODO: b/393217881 - replace mSplitLayout after making SplitLayout display aware. - mDisplayInsetsController.removeInsetsChangedListener(taskInfo.displayId, mSplitLayout); + mDisplayInsetsController.removeInsetsChangedListener(mDisplayId, mSplitLayout); } private void setRootForceTranslucent(boolean translucent, WindowContainerTransaction wct) { if (mIsRootTranslucent == translucent) return; mIsRootTranslucent = translucent; - // TODO: b/393217881 - replace DEFAULT DISPLAY with the current display id - wct.setForceTranslucent(mSplitMultiDisplayHelper - .getDisplayRootTaskInfo(DEFAULT_DISPLAY).token, translucent); + wct.setForceTranslucent(mRootTaskInfo.token, translucent); } /** Callback when split roots visiblility changed. * NOTICE: This only be called on legacy transition. */ - @Override - public void onStageVisibilityChanged(StageTaskListener stageListener) { + private void onStageVisibilityChanged(StageListenerImpl stageListener) { // If split didn't active, just ignore this callback because we should already did these // on #applyExitSplitScreen. if (!isSplitActive()) { return; } - final boolean sideStageVisible = mSideStage.mVisible; - final boolean mainStageVisible = mMainStage.mVisible; + final boolean sideStageVisible = mSideStageListener.mVisible; + final boolean mainStageVisible = mMainStageListener.mVisible; // Wait for both stages having the same visibility to prevent causing flicker. if (mainStageVisible != sideStageVisible) { @@ -2514,17 +2181,14 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } final WindowContainerTransaction wct = new WindowContainerTransaction(); - // TODO: b/393217881 - replace DEFAULT DISPLAY with the current display id - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); if (!mainStageVisible) { // Split entering background. - wct.setReparentLeafTaskIfRelaunch(rootTaskInfo.token, + wct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, true /* setReparentLeafTaskIfRelaunch */); setRootForceTranslucent(true, wct); } else { clearRequestIfPresented(); - wct.setReparentLeafTaskIfRelaunch(rootTaskInfo.token, + wct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, false /* setReparentLeafTaskIfRelaunch */); setRootForceTranslucent(false, wct); } @@ -2533,28 +2197,27 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, setDividerVisibility(mainStageVisible, null); } - /** - * Set divider visibility flag and try to apply it, the param transaction is used to apply. - * See applyDividerVisibility for more detail. - */ - public void setDividerVisibility(boolean visible, @Nullable SurfaceControl.Transaction t) { + // Set divider visibility flag and try to apply it, the param transaction is used to apply. + // See applyDividerVisibility for more detail. + private void setDividerVisibility(boolean visible, @Nullable SurfaceControl.Transaction t) { if (visible == mDividerVisible) { return; } ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "setDividerVisibility: visible=%b keyguardShowing=%b dividerAnimating=%b caller=%s", - visible, mKeyguardActive, mIsDividerRemoteAnimating, Debug.getCaller()); + visible, mKeyguardShowing, mIsDividerRemoteAnimating, Debug.getCaller()); // Defer showing divider bar after keyguard dismissed, so it won't interfere with keyguard // dismissing animation. - if (visible && mKeyguardActive) { + if (visible && mKeyguardShowing) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, " Defer showing divider bar due to keyguard showing."); return; } mDividerVisible = visible; + sendSplitVisibilityChanged(); if (mIsDividerRemoteAnimating) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, @@ -2585,9 +2248,11 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mDividerFadeInAnimator.cancel(); } + mSplitLayout.getRefDividerBounds(mTempRect1); if (t != null) { - updateSurfaceBounds(mSplitLayout, t, false /* applyResizingOffset */); t.setVisibility(dividerLeash, mDividerVisible); + t.setLayer(dividerLeash, Integer.MAX_VALUE); + t.setPosition(dividerLeash, mTempRect1.left, mTempRect1.top); } else if (mDividerVisible) { final SurfaceControl.Transaction transaction = mTransactionPool.acquire(); mDividerFadeInAnimator = ValueAnimator.ofFloat(0f, 1f); @@ -2607,9 +2272,11 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mDividerFadeInAnimator.cancel(); return; } - updateSurfaceBounds(mSplitLayout, transaction, false /* applyResizingOffset */); + mSplitLayout.getRefDividerBounds(mTempRect1); transaction.show(dividerLeash); transaction.setAlpha(dividerLeash, 0); + transaction.setLayer(dividerLeash, Integer.MAX_VALUE); + transaction.setPosition(dividerLeash, mTempRect1.left, mTempRect1.top); transaction.apply(); } @@ -2633,61 +2300,81 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } } - @Override - public void onNoLongerSupportMultiWindow(StageTaskListener stageTaskListener, - RunningTaskInfo taskInfo) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onNoLongerSupportMultiWindow: task=%s", taskInfo); - if (isSplitActive()) { - final boolean isMainStage = mMainStage == stageTaskListener; - - // If visible, we preserve the app and keep it running. If an app becomes - // unsupported in the bg, break split without putting anything on top - boolean splitScreenVisible = isSplitScreenVisible(); - int stageType = STAGE_TYPE_UNDEFINED; - if (splitScreenVisible) { - stageType = isMainStage ? STAGE_TYPE_MAIN : STAGE_TYPE_SIDE; + /** Callback when split roots have child or haven't under it. + * NOTICE: This only be called on legacy transition. */ + private void onStageHasChildrenChanged(StageListenerImpl stageListener) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onStageHasChildrenChanged: isMainStage=%b", + stageListener == mMainStageListener); + final boolean hasChildren = stageListener.mHasChildren; + final boolean isSideStage = stageListener == mSideStageListener; + if (!hasChildren && !mIsExiting && mMainStage.isActive()) { + if (isSideStage && mMainStageListener.mVisible) { + // Exit to main stage if side stage no longer has children. + mSplitLayout.flingDividerToDismiss( + mSideStagePosition == SPLIT_POSITION_BOTTOM_OR_RIGHT, + EXIT_REASON_APP_FINISHED); + } else if (!isSideStage && mSideStageListener.mVisible) { + // Exit to side stage if main stage no longer has children. + mSplitLayout.flingDividerToDismiss( + mSideStagePosition != SPLIT_POSITION_BOTTOM_OR_RIGHT, + EXIT_REASON_APP_FINISHED); + } else if (!isSplitScreenVisible() && mSplitRequest == null) { + // Dismiss split screen in the background once any sides of the split become empty. + exitSplitScreen(null /* childrenToTop */, EXIT_REASON_APP_FINISHED); } + } else if (isSideStage && hasChildren && !mMainStage.isActive()) { final WindowContainerTransaction wct = new WindowContainerTransaction(); - prepareExitSplitScreen(stageType, wct, EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW); - clearSplitPairedInRecents(EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW); - mSplitTransitions.startDismissTransition(wct, StageCoordinator.this, stageType, - EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW); - Log.w(TAG, splitFailureMessage("onNoLongerSupportMultiWindow", - "app package " + taskInfo.baseIntent.getComponent() - + " does not support splitscreen, or is a controlled activity" - + " type")); - if (splitScreenVisible) { - handleUnsupportedSplitStart(); + prepareEnterSplitScreen(wct); + + mSyncQueue.queue(wct); + mSyncQueue.runInSync(t -> { + if (mIsDropEntering) { + updateSurfaceBounds(mSplitLayout, t, false /* applyResizingOffset */); + mIsDropEntering = false; + mSkipEvictingMainStageChildren = false; + } else { + mShowDecorImmediately = true; + mSplitLayout.flingDividerToCenter(/*finishCallback*/ null); + } + }); + } + if (mMainStageListener.mHasChildren && mSideStageListener.mHasChildren) { + mShouldUpdateRecents = true; + clearRequestIfPresented(); + updateRecentTasksSplitPair(); + + if (!mLogger.hasStartedSession()) { + if (!mLogger.hasValidEnterSessionId()) { + mLogger.enterRequested(null /*enterSessionId*/, ENTER_REASON_MULTI_INSTANCE); + } + mLogger.logEnter(mSplitLayout.getDividerPositionAsFraction(), + getMainStagePosition(), mMainStage.getTopChildTaskUid(), + getSideStagePosition(), mSideStage.getTopChildTaskUid(), + mSplitLayout.isLeftRightSplit()); } } } @Override - public void onSnappedToDismiss(boolean closedBottomRightStage, @ExitReason int exitReason) { + public void onSnappedToDismiss(boolean bottomOrRight, @ExitReason int exitReason) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onSnappedToDismiss: bottomOrRight=%b reason=%s", - closedBottomRightStage, exitReasonToString(exitReason)); - boolean mainStageToTop = - closedBottomRightStage ? mSideStagePosition == SPLIT_POSITION_BOTTOM_OR_RIGHT + bottomOrRight, exitReasonToString(exitReason)); + final boolean mainStageToTop = + bottomOrRight ? mSideStagePosition == SPLIT_POSITION_BOTTOM_OR_RIGHT : mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT; - StageTaskListener toTopStage = mainStageToTop ? mMainStage : mSideStage; - int dismissTop = mainStageToTop ? STAGE_TYPE_MAIN : STAGE_TYPE_SIDE; - if (enableFlexibleSplit()) { - toTopStage = mStageOrderOperator.getStageForLegacyPosition(closedBottomRightStage - ? SPLIT_POSITION_TOP_OR_LEFT - : SPLIT_POSITION_BOTTOM_OR_RIGHT, - false /*checkAllStagesIfNotActive*/); - dismissTop = toTopStage.getId(); - } - final WindowContainerTransaction wct = new WindowContainerTransaction(); - toTopStage.resetBounds(wct); - prepareExitSplitScreen(dismissTop, wct, EXIT_REASON_DRAG_DIVIDER); - // TODO: b/393217881 - replace DEFAULT DISPLAY with the current display id - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); - if (rootTaskInfo != null) { - wct.setDoNotPip(rootTaskInfo.token); + final StageTaskListener toTopStage = mainStageToTop ? mMainStage : mSideStage; + if (!ENABLE_SHELL_TRANSITIONS) { + exitSplitScreen(toTopStage, exitReason); + return; } + final int dismissTop = mainStageToTop ? STAGE_TYPE_MAIN : STAGE_TYPE_SIDE; + final WindowContainerTransaction wct = new WindowContainerTransaction(); + toTopStage.resetBounds(wct); + prepareExitSplitScreen(dismissTop, wct); + if (mRootTaskInfo != null) { + wct.setDoNotPip(mRootTaskInfo.token); + } mSplitTransitions.startDismissTransition(wct, this, dismissTop, EXIT_REASON_DRAG_DIVIDER); } @@ -2713,25 +2400,13 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, updateSurfaceBounds(layout, t, shouldUseParallaxEffect); getMainStageBounds(mTempRect1); getSideStageBounds(mTempRect2); - Rect displayBounds = mSplitLayout.getRootBounds(); - - if (enableFlexibleSplit()) { - StageTaskListener ltStage = - mStageOrderOperator.getStageForLegacyPosition(SPLIT_POSITION_TOP_OR_LEFT, - false /*checkAllStagesIfNotActive*/); - StageTaskListener brStage = - mStageOrderOperator.getStageForLegacyPosition(SPLIT_POSITION_BOTTOM_OR_RIGHT, - false /*checkAllStagesIfNotActive*/); - ltStage.onResizing(mTempRect1, mTempRect2, displayBounds, t, offsetX, offsetY, - mShowDecorImmediately); - brStage.onResizing(mTempRect2, mTempRect1, displayBounds, t, offsetX, offsetY, - mShowDecorImmediately); - } else { - mMainStage.onResizing(mTempRect1, mTempRect2, displayBounds, t, offsetX, offsetY, - mShowDecorImmediately); - mSideStage.onResizing(mTempRect2, mTempRect1, displayBounds, t, offsetX, offsetY, - mShowDecorImmediately); - } + // TODO (b/307490004): "commonColor" below is a temporary fix to ensure the colors on both + // sides match. When b/307490004 is fixed, this code can be reverted. + float[] commonColor = getResizingBackgroundColor(mSideStage.mRootTaskInfo).getComponents(); + mMainStage.onResizing( + mTempRect1, mTempRect2, t, offsetX, offsetY, mShowDecorImmediately, commonColor); + mSideStage.onResizing( + mTempRect2, mTempRect1, t, offsetX, offsetY, mShowDecorImmediately, commonColor); t.apply(); mTransactionPool.release(t); } @@ -2747,42 +2422,35 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, if (!sizeChanged) { // We still need to resize on decor for ensure all current status clear. final SurfaceControl.Transaction t = mTransactionPool.acquire(); - if (enableFlexibleSplit()) { - runForActiveStages(stage -> stage.onResized(t)); - } else { - mMainStage.onResized(t); - mSideStage.onResized(t); - } + mMainStage.onResized(t); + mSideStage.onResized(t); mTransactionPool.release(t); return; } - List<SplitDecorManager> decorManagers = new ArrayList<>(); - SplitDecorManager mainDecor = null; - SplitDecorManager sideDecor = null; - if (enableFlexibleSplit()) { - decorManagers = mStageOrderOperator.getActiveStages().stream() - .map(StageTaskListener::getSplitDecorManager) - .toList(); - } else { - mainDecor = mMainStage.getSplitDecorManager(); - sideDecor = mSideStage.getSplitDecorManager(); - } + sendOnBoundsChanged(); - mSplitLayout.setDividerInteractive(false, false, "onSplitResizeStart"); - mSplitTransitions.startResizeTransition(wct, this, (aborted) -> { - mSplitLayout.setDividerInteractive(true, false, "onSplitResizeConsumed"); - }, (finishWct, t) -> { - mSplitLayout.setDividerInteractive(true, false, "onSplitResizeFinish"); - mSplitLayout.populateTouchZones(); - }, mainDecor, sideDecor, decorManagers); + if (ENABLE_SHELL_TRANSITIONS) { + mSplitLayout.setDividerInteractive(false, false, "onSplitResizeStart"); + mSplitTransitions.startResizeTransition(wct, this, (aborted) -> { + mSplitLayout.setDividerInteractive(true, false, "onSplitResizeConsumed"); + }, (finishWct, t) -> { + mSplitLayout.setDividerInteractive(true, false, "onSplitResizeFinish"); + }, mMainStage.getSplitDecorManager(), mSideStage.getSplitDecorManager()); + } else { + // Only need screenshot for legacy case because shell transition should screenshot + // itself during transition. + final SurfaceControl.Transaction startT = mTransactionPool.acquire(); + mMainStage.screenshotIfNeeded(startT); + mSideStage.screenshotIfNeeded(startT); + mTransactionPool.release(startT); - if (enableFlexibleTwoAppSplit()) { - switch (layout.calculateCurrentSnapPosition()) { - case SNAP_TO_2_10_90 -> grantFocusToPosition(false /* leftOrTop */); - case SNAP_TO_2_90_10 -> grantFocusToPosition(true /* leftOrTop */); - } + mSyncQueue.queue(wct); + mSyncQueue.runInSync(t -> { + updateSurfaceBounds(layout, t, false /* applyResizingOffset */); + mMainStage.onResized(t); + mSideStage.onResized(t); + }); } - mLogger.logResize(mSplitLayout.getDividerPositionAsFraction()); } @@ -2801,55 +2469,29 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, * @return true if stage bounds actually . */ private boolean updateWindowBounds(SplitLayout layout, WindowContainerTransaction wct) { - final StageTaskListener topLeftStage; - final StageTaskListener bottomRightStage; - if (enableFlexibleSplit()) { - topLeftStage = mStageOrderOperator - .getStageForLegacyPosition(SPLIT_POSITION_TOP_OR_LEFT, - true /*checkAllStagesIfNotActive*/); - bottomRightStage = mStageOrderOperator - .getStageForLegacyPosition(SPLIT_POSITION_BOTTOM_OR_RIGHT, - true /*checkAllStagesIfNotActive*/); - } else { - topLeftStage = mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT - ? mSideStage - : mMainStage; - bottomRightStage = mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT - ? mMainStage - : mSideStage; - } + final StageTaskListener topLeftStage = + mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT ? mSideStage : mMainStage; + final StageTaskListener bottomRightStage = + mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT ? mMainStage : mSideStage; boolean updated = layout.applyTaskChanges(wct, topLeftStage.mRootTaskInfo, bottomRightStage.mRootTaskInfo); ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "updateWindowBounds: topLeftStage=%s bottomRightStage=%s", - layout.getTopLeftBounds(), layout.getBottomRightBounds()); + layout.getBounds1(), layout.getBounds2()); return updated; } void updateSurfaceBounds(@Nullable SplitLayout layout, @NonNull SurfaceControl.Transaction t, boolean applyResizingOffset) { - final StageTaskListener topLeftStage; - final StageTaskListener bottomRightStage; - if (enableFlexibleSplit()) { - topLeftStage = mStageOrderOperator - .getStageForLegacyPosition(SPLIT_POSITION_TOP_OR_LEFT, - true /*checkAllStagesIfNotActive*/); - bottomRightStage = mStageOrderOperator - .getStageForLegacyPosition(SPLIT_POSITION_BOTTOM_OR_RIGHT, - true /*checkAllStagesIfNotActive*/); - } else { - topLeftStage = mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT - ? mSideStage - : mMainStage; - bottomRightStage = mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT - ? mMainStage - : mSideStage; - } + final StageTaskListener topLeftStage = + mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT ? mSideStage : mMainStage; + final StageTaskListener bottomRightStage = + mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT ? mMainStage : mSideStage; (layout != null ? layout : mSplitLayout).applySurfaceChanges(t, topLeftStage.mRootLeash, bottomRightStage.mRootLeash, topLeftStage.mDimLayer, bottomRightStage.mDimLayer, applyResizingOffset); ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "updateSurfaceBounds: topLeftStage=%s bottomRightStage=%s", - layout.getTopLeftBounds(), layout.getBottomRightBounds()); + layout.getBounds1(), layout.getBounds2()); } @Override @@ -2858,23 +2500,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, return SPLIT_POSITION_UNDEFINED; } - if (enableFlexibleSplit()) { - // We could migrate to/return the new INDEX enums here since most callers just care that - // this value isn't SPLIT_POSITION_UNDEFINED, but - // ImePositionProcessor#getImeLayeringTargetPosition actually uses the - // leftTop/bottomRight value - StageTaskListener stageForToken = mStageOrderOperator.getAllStages().stream() - .filter(stage -> stage.containsToken(token)) - .findFirst().orElse(null); - return stageForToken == null - ? SPLIT_POSITION_UNDEFINED - : mStageOrderOperator.getLegacyPositionForStage(stageForToken); - } else { - if (mMainStage.containsToken(token)) { - return getMainStagePosition(); - } else if (mSideStage.containsToken(token)) { - return getSideStagePosition(); - } + if (mMainStage.containsToken(token)) { + return getMainStagePosition(); + } else if (mSideStage.containsToken(token)) { + return getSideStagePosition(); } return SPLIT_POSITION_UNDEFINED; @@ -2932,7 +2561,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, private void onDisplayChange(int displayId, int fromRotation, int toRotation, @Nullable DisplayAreaInfo newDisplayAreaInfo, WindowContainerTransaction wct) { - if (displayId != DEFAULT_DISPLAY || !isSplitActive()) { + if (displayId != DEFAULT_DISPLAY || !mMainStage.isActive()) { return; } @@ -2951,69 +2580,44 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, @VisibleForTesting void onFoldedStateChanged(boolean folded) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onFoldedStateChanged: folded=%b", folded); + mTopStageAfterFoldDismiss = STAGE_TYPE_UNDEFINED; + if (!folded) return; - if (folded) { - recordLastActiveStage(); - // If user folds and has the setting "Continue using apps on fold = NEVER", we assume - // they don't want to continue using split on the outer screen (i.e. we break split if - // they wake the device in its folded state). - mBreakOnNextWake = willSleepOnFold(); - } else { - mBreakOnNextWake = false; + if (!isSplitActive() || !isSplitScreenVisible()) return; + + // To avoid split dismiss when user fold the device and unfold to use later, we only + // record the flag here and try to dismiss on wakeUp callback to ensure split dismiss + // when user interact on phone folded. + if (mMainStage.isFocused()) { + mTopStageAfterFoldDismiss = STAGE_TYPE_MAIN; + } else if (mSideStage.isFocused()) { + mTopStageAfterFoldDismiss = STAGE_TYPE_SIDE; } } - /** Returns true if the phone will sleep when it folds. */ - @VisibleForTesting - boolean willSleepOnFold() { - return mFoldLockSettingsObserver != null && mFoldLockSettingsObserver.isSleepOnFold(); - } - private Rect getSideStageBounds() { return mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT - ? mSplitLayout.getTopLeftBounds() : mSplitLayout.getBottomRightBounds(); + ? mSplitLayout.getBounds1() : mSplitLayout.getBounds2(); } private Rect getMainStageBounds() { return mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT - ? mSplitLayout.getBottomRightBounds() : mSplitLayout.getTopLeftBounds(); + ? mSplitLayout.getBounds2() : mSplitLayout.getBounds1(); } - /** - * TODO(b/349828130) Currently the way this is being used is only to to get the bottomRight - * stage. Eventually we'll need to rename and for now we'll repurpose the method to return - * the bottomRight bounds under the flex split flag - */ private void getSideStageBounds(Rect rect) { - if (enableFlexibleSplit()) { - // Split Layout doesn't actually keep track of the bounds based on the stage, - // it only knows that bounds1 is leftTop position and bounds2 is bottomRight position - // We'll then assume this method is to get bounds of bottomRight stage - mSplitLayout.copyBottomRightBounds(rect); - } else if (mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT) { - mSplitLayout.copyTopLeftBounds(rect); + if (mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT) { + mSplitLayout.getBounds1(rect); } else { - mSplitLayout.copyBottomRightBounds(rect); + mSplitLayout.getBounds2(rect); } } - /** - * TODO(b/349828130) Currently the way this is being used is only to to get the leftTop - * stage. Eventually we'll need to rename and for now we'll repurpose the method to return - * the leftTop bounds under the flex split flag - */ private void getMainStageBounds(Rect rect) { - if (enableFlexibleSplit()) { - // Split Layout doesn't actually keep track of the bounds based on the stage, - // it only knows that bounds1 is leftTop position and bounds2 is bottomRight position - // We'll then assume this method is to get bounds of topLeft stage - mSplitLayout.copyTopLeftBounds(rect); + if (mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT) { + mSplitLayout.getBounds2(rect); } else { - if (mSideStagePosition == SPLIT_POSITION_TOP_OR_LEFT) { - mSplitLayout.copyBottomRightBounds(rect); - } else { - mSplitLayout.copyTopLeftBounds(rect); - } + mSplitLayout.getBounds1(rect); } } @@ -3021,24 +2625,15 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, * Get the stage that should contain this `taskInfo`. The stage doesn't necessarily contain * this task (yet) so this can also be used to identify which stage to put a task into. */ - private StageTaskListener getStageOfTask(RunningTaskInfo taskInfo) { - if (enableFlexibleSplit()) { - return mStageOrderOperator.getActiveStages().stream() - .filter((stage) -> stage.mRootTaskInfo != null && - taskInfo.parentTaskId == stage.mRootTaskInfo.taskId - ) - .findFirst() - .orElse(null); - } else { - // TODO(b/184679596): Find a way to either include task-org information in the - // transition, or synchronize task-org callbacks so we can use stage.containsTask - if (mMainStage.mRootTaskInfo != null - && taskInfo.parentTaskId == mMainStage.mRootTaskInfo.taskId) { - return mMainStage; - } else if (mSideStage.mRootTaskInfo != null - && taskInfo.parentTaskId == mSideStage.mRootTaskInfo.taskId) { - return mSideStage; - } + private StageTaskListener getStageOfTask(ActivityManager.RunningTaskInfo taskInfo) { + // TODO(b/184679596): Find a way to either include task-org information in the transition, + // or synchronize task-org callbacks so we can use stage.containsTask + if (mMainStage.mRootTaskInfo != null + && taskInfo.parentTaskId == mMainStage.mRootTaskInfo.taskId) { + return mMainStage; + } else if (mSideStage.mRootTaskInfo != null + && taskInfo.parentTaskId == mSideStage.mRootTaskInfo.taskId) { + return mSideStage; } return null; } @@ -3046,17 +2641,13 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, @StageType private int getStageType(StageTaskListener stage) { if (stage == null) return STAGE_TYPE_UNDEFINED; - if (enableFlexibleSplit()) { - return stage.getId(); - } else { - return stage == mMainStage ? STAGE_TYPE_MAIN : STAGE_TYPE_SIDE; - } + return stage == mMainStage ? STAGE_TYPE_MAIN : STAGE_TYPE_SIDE; } @Override public WindowContainerTransaction handleRequest(@NonNull IBinder transition, @Nullable TransitionRequestInfo request) { - final RunningTaskInfo triggerTask = request.getTriggerTask(); + final ActivityManager.RunningTaskInfo triggerTask = request.getTriggerTask(); if (triggerTask == null) { if (isSplitActive()) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "handleRequest: transition=%d display rotation", @@ -3086,45 +2677,37 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, final @WindowManager.TransitionType int type = request.getType(); final boolean isOpening = isOpeningType(type); final boolean inFullscreen = triggerTask.getWindowingMode() == WINDOWING_MODE_FULLSCREEN; - final boolean inDesktopMode = mDesktopTasksController.isPresent() - && mDesktopTasksController.get().isAnyDeskActive(mDisplayId); - final boolean isLaunchingDesktopTask = - isOpening && mDesktopState.canEnterDesktopMode() - && triggerTask.getWindowingMode() == WINDOWING_MODE_FREEFORM; - final StageTaskListener stage = getStageOfTask(triggerTask); - if (inDesktopMode || isLaunchingDesktopTask) { - // Don't handle request when desktop mode is showing (since they don't coexist), or - // when launching a desktop task (defer to DesktopTasksController) - return null; - } else if (isOpening && inFullscreen) { + if (isOpening && inFullscreen) { // One task is opening into fullscreen mode, remove the corresponding split record. mRecentTasks.ifPresent(recentTasks -> recentTasks.removeSplitPair(triggerTask.taskId)); - logExit(EXIT_REASON_FULLSCREEN_REQUEST); } if (isSplitActive()) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "handleRequest: transition=%d split active", request.getDebugId()); - StageTaskListener primaryStage = enableFlexibleSplit() - ? mStageOrderOperator.getActiveStages().get(0) - : mMainStage; - StageTaskListener secondaryStage = enableFlexibleSplit() - ? mStageOrderOperator.getActiveStages().get(1) - : mSideStage; // Try to handle everything while in split-screen, so return a WCT even if it's empty. ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " split is active so using split" + "Transition to handle request. triggerTask=%d type=%s mainChildren=%d" + " sideChildren=%d", triggerTask.taskId, transitTypeToString(type), - primaryStage.getChildCount(), secondaryStage.getChildCount()); + mMainStage.getChildCount(), mSideStage.getChildCount()); out = new WindowContainerTransaction(); + final StageTaskListener stage = getStageOfTask(triggerTask); if (stage != null) { if (isClosingType(type) && stage.getChildCount() == 1) { // Dismiss split if the last task in one of the stages is going away // The top should be the opposite side that is closing: int dismissTop = getStageType(stage) == STAGE_TYPE_MAIN ? STAGE_TYPE_SIDE : STAGE_TYPE_MAIN; - prepareExitSplitScreen(dismissTop, out, EXIT_REASON_APP_FINISHED); + prepareExitSplitScreen(dismissTop, out); + mSplitTransitions.setDismissTransition(transition, dismissTop, + EXIT_REASON_APP_FINISHED); + } else if (isOpening && !mPausingTasks.isEmpty()) { + // One of the splitting task is opening while animating the split pair in + // recents, which means to dismiss the split pair to this task. + int dismissTop = getStageType(stage) == STAGE_TYPE_MAIN + ? STAGE_TYPE_MAIN : STAGE_TYPE_SIDE; + prepareExitSplitScreen(dismissTop, out); mSplitTransitions.setDismissTransition(transition, dismissTop, EXIT_REASON_APP_FINISHED); } else if (!isSplitScreenVisible() && isOpening) { @@ -3132,23 +2715,12 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // split, prepare to enter split screen. prepareEnterSplitScreen(out); mSplitTransitions.setEnterTransition(transition, request.getRemoteTransition(), - TRANSIT_SPLIT_SCREEN_PAIR_OPEN, !mIsDropEntering, SNAP_TO_2_50_50); - } else if (enableFlexibleTwoAppSplit() && isSplitScreenVisible() && isOpening) { - // launching into an existing split stage; possibly launchAdjacent - // If we're replacing a pip-able app, we need to let mixed handler take care of - // it. Otherwise we'll just treat it as an enter+resize - if (mSplitLayout.calculateCurrentSnapPosition() != SNAP_TO_2_50_50) { - // updated layout will get applied in startAnimation pendingResize - mSplitTransitions.setEnterTransition(transition, - request.getRemoteTransition(), - TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE, true /*resizeAnim*/, - SNAP_TO_2_50_50); - } + TRANSIT_SPLIT_SCREEN_PAIR_OPEN, !mIsDropEntering); } else if (inFullscreen && isSplitScreenVisible()) { // If the trigger task is in fullscreen and in split, exit split and place // task on top final int stageType = getStageOfTask(triggerTask.taskId); - prepareExitSplitScreen(stageType, out, EXIT_REASON_FULLSCREEN_REQUEST); + prepareExitSplitScreen(stageType, out); mSplitTransitions.setDismissTransition(transition, stageType, EXIT_REASON_FULLSCREEN_REQUEST); } @@ -3159,25 +2731,14 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // the remote handler. return null; } - boolean anyStageContainsSingleFullscreenTask; - if (enableFlexibleSplit()) { - anyStageContainsSingleFullscreenTask = - mStageOrderOperator.getActiveStages().stream() - .anyMatch(stageListener -> - stageListener.containsTask(triggerTask.taskId) - && stageListener.getChildCount() == 1); - } else { - anyStageContainsSingleFullscreenTask = - (mMainStage.containsTask(triggerTask.taskId) - && mMainStage.getChildCount() == 1) - || (mSideStage.containsTask(triggerTask.taskId) - && mSideStage.getChildCount() == 1); - } - if (anyStageContainsSingleFullscreenTask) { + + if ((mMainStage.containsTask(triggerTask.taskId) + && mMainStage.getChildCount() == 1) + || (mSideStage.containsTask(triggerTask.taskId) + && mSideStage.getChildCount() == 1)) { // A splitting task is opening to fullscreen causes one side of the split empty, // so appends operations to exit split. - prepareExitSplitScreen(STAGE_TYPE_UNDEFINED, out, - EXIT_REASON_FULLSCREEN_REQUEST); + prepareExitSplitScreen(STAGE_TYPE_UNDEFINED, out); } } else if (type == TRANSIT_KEYGUARD_OCCLUDE && triggerTask.topActivity != null && isSplitScreenVisible()) { @@ -3185,7 +2746,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // stage and move it to the top. int top = triggerTask.topActivity.equals(mMainStage.mRootTaskInfo.topActivity) ? STAGE_TYPE_MAIN : STAGE_TYPE_SIDE; - prepareExitSplitScreen(top, out, EXIT_REASON_SCREEN_LOCKED_SHOW_ON_TOP); + prepareExitSplitScreen(top, out); mSplitTransitions.setDismissTransition(transition, top, EXIT_REASON_SCREEN_LOCKED_SHOW_ON_TOP); } @@ -3194,127 +2755,62 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // One of the cases above handled it return out; } else if (isSplitScreenVisible()) { - boolean allStagesHaveChildren; - if (enableFlexibleSplit()) { - allStagesHaveChildren = runForActiveStagesAllMatch(stageTaskListener -> - stageTaskListener.getChildCount() != 0); - } else { - allStagesHaveChildren = mMainStage.getChildCount() != 0 - && mSideStage.getChildCount() != 0; - } // If split is visible, only defer handling this transition if it's launching // adjacent while there is already a split pair -- this may trigger PIP and // that should be handled by the mixed handler. final boolean deferTransition = requestHasLaunchAdjacentFlag(request) - && allStagesHaveChildren; + && mMainStage.getChildCount() != 0 && mSideStage.getChildCount() != 0; return !deferTransition ? out : null; } // Don't intercept the transition if we are not handling it as a part of one of the // cases above and it is not already visible return null; - } else if (stage != null) { - if (isOpening) { + } else { + if (triggerTask.parentTaskId == mMainStage.mRootTaskInfo.taskId + || triggerTask.parentTaskId == mSideStage.mRootTaskInfo.taskId) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "handleRequest: transition=%d " + + "restoring to split", request.getDebugId()); + out = new WindowContainerTransaction(); + mSplitTransitions.setEnterTransition(transition, request.getRemoteTransition(), + TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE, false /* resizeAnim */); + } + if (isOpening && getStageOfTask(triggerTask) != null) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "handleRequest: transition=%d enter split", request.getDebugId()); // One task is appearing into split, prepare to enter split screen. out = new WindowContainerTransaction(); prepareEnterSplitScreen(out); mSplitTransitions.setEnterTransition(transition, request.getRemoteTransition(), - TRANSIT_SPLIT_SCREEN_PAIR_OPEN, !mIsDropEntering, SNAP_TO_2_50_50); - return out; + TRANSIT_SPLIT_SCREEN_PAIR_OPEN, !mIsDropEntering); } - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "handleRequest: transition=%d " - + "restoring to split", request.getDebugId()); - out = new WindowContainerTransaction(); - mSplitTransitions.setEnterTransition(transition, request.getRemoteTransition(), - TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE, false /* resizeAnim */, - SNAP_TO_2_50_50); - } - return out; - } - - /** @return whether the transition-request implies entering pip from split. */ - public boolean requestImpliesSplitToPip(TransitionRequestInfo request) { - final TaskInfo triggerTask = request.getTriggerTask(); - if (!isSplitActive() - || (triggerTask != null && triggerTask.displayId != mDisplayId) - || !mMixedHandler.requestHasPipEnter(request)) { - return false; - } - - if (request.getTriggerTask() != null && getSplitPosition( - request.getTriggerTask().taskId) != SPLIT_POSITION_UNDEFINED) { - return true; - } - - if (PipFlags.isPip2ExperimentEnabled() - && request.getPipChange() != null && getSplitPosition( - request.getPipChange().getTaskInfo().taskId) != SPLIT_POSITION_UNDEFINED) { - // In PiP2, PiP-able task can also come in through the pip change request field. - return true; - } - - // If one of the splitting tasks support auto-pip, wm-core might reparent the task to TDA - // and file a TRANSIT_PIP transition when finishing transitions. - // @see com.android.server.wm.RootWindowContainer#moveActivityToPinnedRootTask - if (enableFlexibleSplit()) { - return mStageOrderOperator.getActiveStages().stream() - .anyMatch(stage -> stage.getChildCount() == 0); - } else { - return mMainStage.getChildCount() == 0 || mSideStage.getChildCount() == 0; + return out; } } /** - * This is used for mixed-transition scenarios (specifically when transitioning one split task - * into PIP). For such scenarios, just make sure to include exiting split or entering split when - * appropriate. This is an addition to - * {@link #addEnterOrExitForPipIfNeeded(TransitionRequestInfo, WindowContainerTransaction)}, - * for PiP2 where PiP-able task can also come in through the pip change request field, - * and this method is provided to explicitly prepare an exit in that case. - * - * This is only called if requestImpliesSplitToPip() returns `true`. + * This is used for mixed scenarios. For such scenarios, just make sure to include exiting + * split or entering split when appropriate. */ - public void removePipFromSplitIfNeeded(@NonNull TransitionRequestInfo request, - @NonNull WindowContainerTransaction outWCT) { - if (request.getPipChange() == null || request.getPipChange().getTaskInfo() == null) { - return; - } - final TaskInfo info = request.getPipChange().getTaskInfo(); - @StageType int topStage = STAGE_TYPE_UNDEFINED; - @StageType int pipStage = getStageOfTask(info.taskId); - if (pipStage == STAGE_TYPE_MAIN) { - topStage = STAGE_TYPE_SIDE; - } else if (pipStage == STAGE_TYPE_SIDE) { - topStage = STAGE_TYPE_MAIN; - } - prepareExitSplitScreen(topStage, outWCT, EXIT_REASON_CHILD_TASK_ENTER_PIP); - } - - /** - * This is used for mixed-transition scenarios (specifically when transitioning one split task - * into PIP). For such scenarios, just make sure to include exiting split or entering split when - * appropriate. - * - * This is only called if requestImpliesSplitToPip() returns `true`. - */ - public void addEnterOrExitForPipIfNeeded(@Nullable TransitionRequestInfo request, + public void addEnterOrExitIfNeeded(@Nullable TransitionRequestInfo request, @NonNull WindowContainerTransaction outWCT) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "addEnterOrExitIfNeeded: transition=%d", request.getDebugId()); - + final ActivityManager.RunningTaskInfo triggerTask = request.getTriggerTask(); + if (triggerTask != null && triggerTask.displayId != mDisplayId) { + // Skip handling task on the other display. + return; + } final @WindowManager.TransitionType int type = request.getType(); if (isSplitActive() && !isOpeningType(type) && (mMainStage.getChildCount() == 0 || mSideStage.getChildCount() == 0)) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " One of the splits became " - + "empty during a mixed transition (to PIP), so make sure split-screen " - + "state is cleaned-up. mainStageCount=%d sideStageCount=%d", - mMainStage.getChildCount(), mSideStage.getChildCount()); - final RunningTaskInfo triggerTask = request.getTriggerTask(); + + "empty during a mixed transition (one not handled by split)," + + " so make sure split-screen state is cleaned-up. " + + "mainStageCount=%d sideStageCount=%d", mMainStage.getChildCount(), + mSideStage.getChildCount()); if (triggerTask != null) { mRecentTasks.ifPresent( recentTasks -> recentTasks.removeSplitPair(triggerTask.taskId)); - logExit(EXIT_REASON_CHILD_TASK_ENTER_PIP); } @StageType int topStage = STAGE_TYPE_UNDEFINED; if (isSplitScreenVisible()) { @@ -3325,72 +2821,16 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, topStage = STAGE_TYPE_SIDE; } } - prepareExitSplitScreen(topStage, outWCT, EXIT_REASON_UNKNOWN); + prepareExitSplitScreen(topStage, outWCT); } } - /** @return whether the transition-request implies entering bubbles from split. */ - public boolean requestImpliesSplitToBubble(TransitionRequestInfo request) { - final TaskInfo triggerTask = request.getTriggerTask(); - if (!isSplitActive() - || triggerTask == null - || triggerTask.displayId != mDisplayId) { - return false; - } - - int stageForTask = getStageOfTask(triggerTask.taskId); - if (stageForTask == STAGE_TYPE_UNDEFINED) { - return false; - } - - boolean removingLast; - if (enableFlexibleSplit()) { - removingLast = mStageOrderOperator.getActiveStages().stream() - .anyMatch(stage -> stage.getId() == stageForTask && stage.getChildCount() == 1); - } else { - removingLast = (stageForTask == STAGE_TYPE_MAIN && mMainStage.getChildCount() == 1) - || (stageForTask == STAGE_TYPE_SIDE && mSideStage.getChildCount() == 1); - } - if (removingLast) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Trigger task will break split"); - return true; - } - return false; - } - - /** - * This is used for mixed-transition scenarios, specifically when transitioning one split task - * into a bubble. For such scenarios, just make sure to include exiting split or entering split - * when appropriate. - * - * This is only called if requestImpliesSplitToBubble() returns `true`. - */ - public void addExitForBubblesIfNeeded(@Nullable TransitionRequestInfo request, - @NonNull WindowContainerTransaction outWCT) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "addEnterOrExitIfNeeded: transition=%d", - request.getDebugId()); - final RunningTaskInfo triggerTask = request.getTriggerTask(); - - mRecentTasks.ifPresent( - recentTasks -> recentTasks.removeSplitPair(triggerTask.taskId)); - logExit(EXIT_REASON_CHILD_TASK_ENTER_BUBBLE); - - int stage = getStageOfTask(triggerTask.taskId); - int topStage = (stage == STAGE_TYPE_MAIN) - ? STAGE_TYPE_SIDE - : STAGE_TYPE_MAIN; - prepareExitSplitScreen(topStage, outWCT, EXIT_REASON_UNKNOWN); - } - @Override public void mergeAnimation(IBinder transition, TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - IBinder mergeTarget, + SurfaceControl.Transaction t, IBinder mergeTarget, Transitions.TransitionFinishCallback finishCallback) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "mergeAnimation: transition=%d", info.getDebugId()); - mSplitTransitions.mergeAnimation(transition, info, startT, finishT, mergeTarget, - finishCallback); + mSplitTransitions.mergeAnimation(transition, info, t, mergeTarget, finishCallback); } /** Jump the current transition animation to the end. */ @@ -3415,27 +2855,13 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // Not entering or exiting, so just do some house-keeping and validation. // If we're not in split-mode, just abort so something else can handle it. - if (!isSplitActive()) return false; + if (!mMainStage.isActive()) return false; ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "startAnimation: transition=%d", info.getDebugId()); mSplitLayout.setFreezeDividerWindow(false); final StageChangeRecord record = new StageChangeRecord(); final int transitType = info.getType(); TransitionInfo.Change pipChange = null; - int closingSplitTaskId = -1; - // This array tracks if we are sending stages TO_BACK/TO_FRONT in this transition. - // TODO (b/349828130): Also make sure having multiple changes per stage (2+ tasks in - // one stage) is being handled properly. - SparseIntArray stageChanges = new SparseIntArray(); - if (enableFlexibleSplit()) { - mStageOrderOperator.getActiveStages() - .forEach(stage -> stageChanges.put(stage.getId(), -1)); - } else { - stageChanges.put(STAGE_TYPE_MAIN, -1); - stageChanges.put(STAGE_TYPE_SIDE, -1); - } - - for (int iC = 0; iC < info.getChanges().size(); ++iC) { final TransitionInfo.Change change = info.getChanges().get(iC); if (change.getMode() == TRANSIT_CHANGE @@ -3445,18 +2871,13 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mSplitLayout.update(startTransaction, false /* resetImePosition */); } - if (mMixedHandler.isEnteringPip(change, transitType) - && getSplitItemStage(change.getLastParent()) != STAGE_TYPE_UNDEFINED) { + if (mMixedHandler.isEnteringPip(change, transitType)) { pipChange = change; } - final RunningTaskInfo taskInfo = change.getTaskInfo(); + final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); if (taskInfo == null) continue; - int displayId = change.getStartDisplayId() != INVALID_DISPLAY - ? change.getStartDisplayId() : DEFAULT_DISPLAY; - RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(displayId); - if (taskInfo.token.equals(rootTaskInfo.token)) { + if (taskInfo.token.equals(mRootTaskInfo.token)) { if (isOpeningType(change.getMode())) { // Split is opened by someone so set it as visible. setSplitsVisible(true); @@ -3464,7 +2885,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // This is setting the flag to a task and not interfering with the // transition. final WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.setReparentLeafTaskIfRelaunch(rootTaskInfo.token, + wct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, false /* reparentLeafTaskIfRelaunch */); mTaskOrganizer.applyTransaction(wct); } else if (isClosingType(change.getMode())) { @@ -3474,7 +2895,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // This is setting the flag to a task and not interfering with the // transition. final WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.setReparentLeafTaskIfRelaunch(rootTaskInfo.token, + wct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, true /* reparentLeafTaskIfRelaunch */); mTaskOrganizer.applyTransaction(wct); } @@ -3488,87 +2909,41 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } continue; } - final int taskId = taskInfo.taskId; if (isOpeningType(change.getMode())) { - if (!stage.containsTask(taskId)) { + if (!stage.containsTask(taskInfo.taskId)) { Log.w(TAG, "Expected onTaskAppeared on " + stage + " to have been called" - + " with " + taskId + " before startAnimation()."); - record.addRecord(stage, true, taskId); + + " with " + taskInfo.taskId + " before startAnimation()."); + record.addRecord(stage, true, taskInfo.taskId); } } else if (change.getMode() == TRANSIT_CLOSE) { - if (stage.containsTask(taskId)) { - record.addRecord(stage, false, taskId); + if (stage.containsTask(taskInfo.taskId)) { + record.addRecord(stage, false, taskInfo.taskId); Log.w(TAG, "Expected onTaskVanished on " + stage + " to have been called" - + " with " + taskId + " before startAnimation()."); + + " with " + taskInfo.taskId + " before startAnimation()."); } } - - final int stageOfTaskId = getStageOfTask(taskId); - if (stageOfTaskId == STAGE_TYPE_UNDEFINED) { - continue; - } - if (isClosingType(change.getMode())) { - // (For PiP transitions) If either one of the 2 stages is closing we're assuming - // we'll break split - closingSplitTaskId = taskId; - } - // Record which stages are receiving which changes - if ((change.getMode() == TRANSIT_TO_BACK - || change.getMode() == TRANSIT_TO_FRONT) - && (stageOfTaskId == STAGE_TYPE_MAIN - || stageOfTaskId == STAGE_TYPE_SIDE)) { - stageChanges.put(getStageOfTask(taskId), change.getMode()); - } } if (pipChange != null) { TransitionInfo.Change pipReplacingChange = getPipReplacingChange(info, pipChange, mMainStage.mRootTaskInfo.taskId, mSideStage.mRootTaskInfo.taskId, getSplitItemStage(pipChange.getLastParent())); - boolean keepSplitWithPip = pipReplacingChange != null && closingSplitTaskId == -1; - if (keepSplitWithPip) { + if (pipReplacingChange != null) { // Set an enter transition for when startAnimation gets called again mSplitTransitions.setEnterTransition(transition, /*remoteTransition*/ null, - TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE, /*resizeAnim*/ false, - SNAP_TO_2_50_50); - } else { - int finalClosingTaskId = closingSplitTaskId; - mRecentTasks.ifPresent(recentTasks -> - recentTasks.removeSplitPair(finalClosingTaskId)); - logExit(EXIT_REASON_FULLSCREEN_REQUEST); + TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE, /*resizeAnim*/ false); } mMixedHandler.animatePendingEnterPipFromSplit(transition, info, - startTransaction, finishTransaction, finishCallback, keepSplitWithPip); - notifySplitAnimationStatus(false /*animationRunning*/); + startTransaction, finishTransaction, finishCallback, + pipReplacingChange != null); + notifySplitAnimationFinished(); return true; } - // If keyguard is active, check to see if we have all our stages showing. If one stage - // was moved but not the other (which can happen with SHOW_ABOVE_LOCKED apps), we should - // break split. - if (mKeyguardActive && stageChanges.size() > 0) { - int firstChangeMode = stageChanges.valueAt(0); - for (int i = 0; i < stageChanges.size(); i++) { - int changeMode = stageChanges.valueAt(i); - // Compare each changeMode to the first one. If any are different, break split. - if (changeMode != firstChangeMode) { - dismissSplitKeepingLastActiveStage(EXIT_REASON_SCREEN_LOCKED_SHOW_ON_TOP); - break; - } - } - } - final ArraySet<StageTaskListener> dismissStages = record.getShouldDismissedStage(); - boolean anyStageHasNoChildren; - if (enableFlexibleSplit()) { - anyStageHasNoChildren = mStageOrderOperator.getActiveStages().stream() - .anyMatch(stage -> stage.getChildCount() == 0); - } else { - anyStageHasNoChildren = mMainStage.getChildCount() == 0 - || mSideStage.getChildCount() == 0; - } - if (anyStageHasNoChildren || dismissStages.size() == 1) { + if (mMainStage.getChildCount() == 0 || mSideStage.getChildCount() == 0 + || dismissStages.size() == 1) { // If the size of dismissStages == 1, one of the task is closed without prepare // pending transition, which could happen if all activities were finished after // finish top activity in a task, so the trigger task is null when handleRequest. @@ -3586,7 +2961,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // If there is a fullscreen opening change, we should not bring stage to top. prepareExitSplitScreen( !record.mContainShowFullscreenChange && isSplitScreenVisible() - ? dismissTop : STAGE_TYPE_UNDEFINED, wct, EXIT_REASON_APP_FINISHED); + ? dismissTop : STAGE_TYPE_UNDEFINED, wct); mSplitTransitions.startDismissTransition(wct, this, dismissTop, EXIT_REASON_APP_FINISHED); // This can happen in some pathological cases. For example: @@ -3597,7 +2972,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // the transition, or synchronize task-org callbacks. } // Use normal animations. - notifySplitAnimationStatus(false /*animationRunning*/); + notifySplitAnimationFinished(); return false; } else if (mMixedHandler != null && TransitionUtil.hasDisplayChange(info)) { // A display-change has been un-expectedly inserted into the transition. Redirect @@ -3611,7 +2986,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mSplitLayout.update(startTransaction, true /* resetImePosition */); startTransaction.apply(); } - notifySplitAnimationStatus(false /*animationRunning*/); + notifySplitAnimationFinished(); return true; } } else if (mSplitTransitions.isPendingPassThrough(transition)) { @@ -3619,7 +2994,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, "startAnimation: passThrough transition=%d", info.getDebugId()); mSplitTransitions.mPendingRemotePassthrough.mRemoteHandler.startAnimation(transition, info, startTransaction, finishTransaction, finishCallback); - notifySplitAnimationStatus(false /*animationRunning*/); + notifySplitAnimationFinished(); return true; } @@ -3679,18 +3054,6 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } } - /** - * Sets whether launch-adjacent is disabled or enabled. - */ - private void setLaunchAdjacentDisabled(boolean disabled) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "setLaunchAdjacentDisabled: disabled=%b", disabled); - final WindowContainerTransaction wct = new WindowContainerTransaction(); - // TODO: b/393217881 - replace DEFAULT DISPLAY with the current display id - wct.setDisableLaunchAdjacent(mSplitMultiDisplayHelper - .getDisplayRootTaskInfo(DEFAULT_DISPLAY).token, disabled); - mTaskOrganizer.applyTransaction(wct); - } - /** Starts the pending transition animation. */ public boolean startPendingAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, @@ -3700,75 +3063,33 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "startPendingAnimation: transition=%d", info.getDebugId()); boolean shouldAnimate = true; - int displayId = SplitMultiDisplayHelper.getTransitionDisplayId(info); - RunningTaskInfo displayRootTaskInfo = mSplitMultiDisplayHelper - .getDisplayRootTaskInfo(displayId); if (mSplitTransitions.isPendingEnter(transition)) { shouldAnimate = startPendingEnterAnimation(transition, mSplitTransitions.mPendingEnter, info, startTransaction, finishTransaction); - - // Disable launch adjacent after an enter animation to prevent cases where apps are - // incorrectly trampolining and incorrectly triggering a double launch-adjacent task - // launch (ie. main -> split -> main). See b/344216031 - setLaunchAdjacentDisabled(true); - mMainHandler.removeCallbacks(mReEnableLaunchAdjacentOnRoot); - mMainHandler.postDelayed(mReEnableLaunchAdjacentOnRoot, - DISABLE_LAUNCH_ADJACENT_AFTER_ENTER_TIMEOUT_MS); - if (shouldAnimate && mSplitTransitions.mPendingEnter.mRequireRootsInTransition) { - mSplitTransitionModifier.addStageRootsToTransition(info, - mMainStage, mSideStage, getMainStageBounds(), getSideStageBounds(), - displayRootTaskInfo, - mSplitMultiDisplayHelper.getDisplayRootTaskLeash(displayId), - mSplitLayout.getRootBounds()); - } } else if (mSplitTransitions.isPendingDismiss(transition)) { final SplitScreenTransitions.DismissSession dismiss = mSplitTransitions.mPendingDismiss; shouldAnimate = startPendingDismissAnimation( dismiss, info, startTransaction, finishTransaction); if (shouldAnimate && dismiss.mReason == EXIT_REASON_DRAG_DIVIDER) { - StageTaskListener toTopStage; - if (enableFlexibleSplit()) { - toTopStage = mStageOrderOperator.getAllStages().stream() - .filter(stage -> stage.getId() == dismiss.mDismissTop) - .findFirst().orElseThrow(); - } else { - toTopStage = dismiss.mDismissTop == STAGE_TYPE_MAIN ? mMainStage : mSideStage; - } + final StageTaskListener toTopStage = + dismiss.mDismissTop == STAGE_TYPE_MAIN ? mMainStage : mSideStage; mSplitTransitions.playDragDismissAnimation(transition, info, startTransaction, finishTransaction, finishCallback, toTopStage.mRootTaskInfo.token, - toTopStage.getSplitDecorManager(), displayRootTaskInfo.token); + toTopStage.getSplitDecorManager(), mRootTaskInfo.token); return true; } } else if (mSplitTransitions.isPendingResize(transition)) { - Map<WindowContainerToken, SplitDecorManager> tokenDecorMap = new HashMap<>(); - if (enableFlexibleSplit()) { - runForActiveStages(stageTaskListener -> - tokenDecorMap.put(stageTaskListener.mRootTaskInfo.getToken(), - stageTaskListener.getSplitDecorManager())); - } else { - tokenDecorMap.put(mMainStage.mRootTaskInfo.getToken(), - mMainStage.getSplitDecorManager()); - tokenDecorMap.put(mSideStage.mRootTaskInfo.getToken(), - mSideStage.getSplitDecorManager()); - } mSplitTransitions.playResizeAnimation(transition, info, startTransaction, - finishTransaction, finishCallback, tokenDecorMap); + finishTransaction, finishCallback, mMainStage.mRootTaskInfo.token, + mSideStage.mRootTaskInfo.token, mMainStage.getSplitDecorManager(), + mSideStage.getSplitDecorManager()); return true; } if (!shouldAnimate) return false; - WindowContainerToken mainToken; - WindowContainerToken sideToken; - if (enableFlexibleSplit()) { - mainToken = mStageOrderOperator.getActiveStages().get(0).mRootTaskInfo.token; - sideToken = mStageOrderOperator.getActiveStages().get(1).mRootTaskInfo.token; - } else { - mainToken = mMainStage.mRootTaskInfo.token; - sideToken = mSideStage.mRootTaskInfo.token; - } mSplitTransitions.playAnimation(transition, info, startTransaction, finishTransaction, - finishCallback, mainToken, sideToken, - displayRootTaskInfo.token); + finishCallback, mMainStage.mRootTaskInfo.token, mSideStage.mRootTaskInfo.token, + mRootTaskInfo.token); return true; } @@ -3776,7 +3097,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, public void onTransitionAnimationComplete() { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTransitionAnimationComplete"); // If still playing, let it finish. - if (!isSplitActive() && !mIsExiting) { + if (!mMainStage.isActive() && !mIsExiting) { // Update divider state after animation so that it is still around and positioned // properly for the animation itself. mSplitLayout.release(); @@ -3792,47 +3113,26 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // First, verify that we actually have opened apps in both splits. TransitionInfo.Change mainChild = null; TransitionInfo.Change sideChild = null; - // Tracks the set of opening tasks in the transition - final Set<Integer> openingMainTaskIds = new HashSet<>(); - final Set<Integer> openingSideTaskIds = new HashSet<>(); - StageTaskListener firstAppStage = null; - StageTaskListener secondAppStage = null; - boolean foundPausingTask = false; final WindowContainerTransaction evictWct = new WindowContainerTransaction(); for (int iC = 0; iC < info.getChanges().size(); ++iC) { final TransitionInfo.Change change = info.getChanges().get(iC); - final RunningTaskInfo taskInfo = change.getTaskInfo(); + final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); if (taskInfo == null || !taskInfo.hasParentTask()) continue; if (mPausingTasks.contains(taskInfo.taskId)) { - foundPausingTask = true; continue; } - StageTaskListener stage = getStageOfTask(taskInfo); - final @StageType int stageType = getStageType(stage); - final boolean isMainStage = stageType - == (enableFlexibleSplit() ? STAGE_TYPE_A : STAGE_TYPE_MAIN); - final boolean isSideStage = stageType - == (enableFlexibleSplit() ? STAGE_TYPE_B : STAGE_TYPE_SIDE); - final boolean isVisibleTask = isOpeningType(change.getMode()) - || change.getMode() == TRANSIT_CHANGE; - if (mainChild == null && isMainStage && isVisibleTask) { + final @StageType int stageType = getStageType(getStageOfTask(taskInfo)); + if (mainChild == null && stageType == STAGE_TYPE_MAIN + && (isOpeningType(change.getMode()) || change.getMode() == TRANSIT_CHANGE)) { // Includes TRANSIT_CHANGE to cover reparenting top-most task to split. mainChild = change; - firstAppStage = getStageOfTask(taskInfo); - } else if (sideChild == null && isSideStage && isVisibleTask) { + } else if (sideChild == null && stageType == STAGE_TYPE_SIDE + && (isOpeningType(change.getMode()) || change.getMode() == TRANSIT_CHANGE)) { sideChild = change; - secondAppStage = stage; } else if (stageType != STAGE_TYPE_UNDEFINED && change.getMode() == TRANSIT_TO_BACK) { // Collect all to back task's and evict them when transition finished. evictWct.reparent(taskInfo.token, null /* parent */, false /* onTop */); } - if (isVisibleTask) { - if (isMainStage) { - openingMainTaskIds.add(taskInfo.taskId); - } else if (isSideStage) { - openingSideTaskIds.add(taskInfo.taskId); - } - } } SplitScreenTransitions.EnterSession pendingEnter = mSplitTransitions.mPendingEnter; @@ -3852,13 +3152,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, final int dismissTop = mainChild != null ? STAGE_TYPE_MAIN : (sideChild != null ? STAGE_TYPE_SIDE : STAGE_TYPE_UNDEFINED); pendingEnter.cancel( - (cancelWct, cancelT) -> { - prepareExitSplitScreen(dismissTop, cancelWct, EXIT_REASON_UNKNOWN); - logExit(EXIT_REASON_UNKNOWN); - }); - Log.w(TAG, splitFailureMessage("startPendingEnterAnimation", "launched 2 tasks in " - + "split, but didn't receive 2 tasks in transition. Possibly one of them " - + "failed to launch (foundPausingTask=" + foundPausingTask + ")")); + (cancelWct, cancelT) -> prepareExitSplitScreen(dismissTop, cancelWct)); + Log.w(TAG, splitFailureMessage("startPendingEnterAnimation", + "launched 2 tasks in split, but didn't receive " + + "2 tasks in transition. Possibly one of them failed to launch")); if (mRecentTasks.isPresent() && mainChild != null) { mRecentTasks.get().removeSplitPair(mainChild.getTaskInfo().taskId); } @@ -3884,9 +3181,9 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // TODO(b/184679596): Find a way to either include task-org information in // the transition, or synchronize task-org callbacks. final boolean mainNotContainOpenTask = - mainChild != null && !firstAppStage.containsTask(mainChild.getTaskInfo().taskId); + mainChild != null && !mMainStage.containsTask(mainChild.getTaskInfo().taskId); final boolean sideNotContainOpenTask = - sideChild != null && !secondAppStage.containsTask(sideChild.getTaskInfo().taskId); + sideChild != null && !mSideStage.containsTask(sideChild.getTaskInfo().taskId); if (mainNotContainOpenTask) { Log.w(TAG, "Expected onTaskAppeared on " + mMainStage + " to have been called with " + mainChild.getTaskInfo().taskId @@ -3899,25 +3196,23 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } final TransitionInfo.Change finalMainChild = mainChild; final TransitionInfo.Change finalSideChild = sideChild; - final StageTaskListener finalFirstAppStage = firstAppStage; - final StageTaskListener finalSecondAppStage = secondAppStage; enterTransition.setFinishedCallback((callbackWct, callbackT) -> { if (!enterTransition.mResizeAnim) { // If resizing, we'll call notify at the end of the resizing animation (below) - notifySplitAnimationStatus(false /*animationRunning*/); + notifySplitAnimationFinished(); } if (finalMainChild != null) { if (!mainNotContainOpenTask) { - finalFirstAppStage.evictOtherChildren(callbackWct, openingMainTaskIds); + mMainStage.evictOtherChildren(callbackWct, finalMainChild.getTaskInfo().taskId); } else { - finalFirstAppStage.evictInvisibleChildren(callbackWct); + mMainStage.evictInvisibleChildren(callbackWct); } } if (finalSideChild != null) { if (!sideNotContainOpenTask) { - finalSecondAppStage.evictOtherChildren(callbackWct, openingSideTaskIds); + mSideStage.evictOtherChildren(callbackWct, finalSideChild.getTaskInfo().taskId); } else { - finalSecondAppStage.evictInvisibleChildren(callbackWct); + mSideStage.evictInvisibleChildren(callbackWct); } } if (!evictWct.isEmpty()) { @@ -3925,37 +3220,22 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } if (enterTransition.mResizeAnim) { mShowDecorImmediately = true; - mSplitLayout.flingDividerToCenter(() -> { - notifySplitAnimationStatus(false /*animationRunning*/); - }); + mSplitLayout.flingDividerToCenter(this::notifySplitAnimationFinished); } - int displayId = SplitMultiDisplayHelper.getTransitionDisplayId(info); - callbackWct.setReparentLeafTaskIfRelaunch(mSplitMultiDisplayHelper - .getDisplayRootTaskInfo(displayId).token, false); - mWindowDecorViewModel.ifPresent(viewModel -> { - if (finalMainChild != null) { - viewModel.onTaskInfoChanged(finalMainChild.getTaskInfo()); - } - if (finalSideChild != null) { - viewModel.onTaskInfoChanged(finalSideChild.getTaskInfo()); - } - }); + callbackWct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, false); mPausingTasks.clear(); - if (enableFlexibleTwoAppSplit()) { - grantFocusForSnapPosition(enterTransition.mEnteringPosition); - } }); if (info.getType() == TRANSIT_CHANGE && !isSplitActive() && pendingEnter.mExtraTransitType == TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE) { if (finalMainChild != null && finalSideChild == null) { requestEnterSplitSelect(finalMainChild.getTaskInfo(), - getMainStagePosition(), finalMainChild.getStartAbsBounds(), - true /* startRecents */, null /* withRecentsWct */); + new WindowContainerTransaction(), + getMainStagePosition(), finalMainChild.getStartAbsBounds()); } else if (finalSideChild != null && finalMainChild == null) { requestEnterSplitSelect(finalSideChild.getTaskInfo(), - getSideStagePosition(), finalSideChild.getStartAbsBounds(), - true /* startRecents */, null /* withRecentsWct */); + new WindowContainerTransaction(), + getSideStagePosition(), finalSideChild.getStartAbsBounds()); } else { throw new IllegalStateException( "Attempting to restore to split but reparenting change not found"); @@ -3964,7 +3244,6 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, finishEnterSplitScreen(finishT); addDividerBarToTransition(info, true /* show */); - addAllDimLayersToTransition(info, true /* show */); return true; } @@ -4005,20 +3284,17 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, * @param taskInfo TaskInfo of the pip task */ public void onPipExpandToSplit(WindowContainerTransaction wct, - RunningTaskInfo taskInfo) { + ActivityManager.RunningTaskInfo taskInfo) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onPipExpandToSplit: task=%s", taskInfo); - // TODO(b/349828130) currently pass in index_undefined until we can revisit these - // flex split + pip interactions in the future prepareEnterSplitScreen(wct, taskInfo, getActivateSplitPosition(taskInfo), - false /*resizeAnim*/, SPLIT_INDEX_UNDEFINED); + false /*resizeAnim*/); if (!isSplitScreenVisible() || mSplitRequest == null) { return; } boolean replacingMainStage = getMainStagePosition() == mSplitRequest.mActivatePosition; - (replacingMainStage ? mMainStage : mSideStage).evictOtherChildren(wct, - Set.of(taskInfo.taskId)); + (replacingMainStage ? mMainStage : mSideStage).evictOtherChildren(wct, taskInfo.taskId); } boolean isLaunchToSplit(TaskInfo taskInfo) { @@ -4036,12 +3312,12 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, if (mSplitRequest.mActivateTaskId == taskInfo.taskId) { return mSplitRequest.mActivatePosition; } - final String packageName1 = ComponentUtils.getPackageName(mSplitRequest.mStartIntent); - final String basePackageName = ComponentUtils.getPackageName(taskInfo.baseIntent); + final String packageName1 = SplitScreenUtils.getPackageName(mSplitRequest.mStartIntent); + final String basePackageName = SplitScreenUtils.getPackageName(taskInfo.baseIntent); if (packageName1 != null && packageName1.equals(basePackageName)) { return mSplitRequest.mActivatePosition; } - final String packageName2 = ComponentUtils.getPackageName(mSplitRequest.mStartIntent2); + final String packageName2 = SplitScreenUtils.getPackageName(mSplitRequest.mStartIntent2); if (packageName2 != null && packageName2.equals(basePackageName)) { return mSplitRequest.mActivatePosition; } @@ -4056,7 +3332,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, public void prepareDismissAnimation(@StageType int toStage, @ExitReason int dismissReason, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction t, @NonNull SurfaceControl.Transaction finishT) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "prepareDismissAnimation: transition=%d toStage=%d reason=%s", info.getDebugId(), toStage, exitReasonToString(dismissReason)); // Make some noise if things aren't totally expected. These states shouldn't effect @@ -4091,7 +3367,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, final ArrayMap<Integer, SurfaceControl> dismissingTasks = new ArrayMap<>(); for (int i = info.getChanges().size() - 1; i >= 0; --i) { final TransitionInfo.Change change = info.getChanges().get(i); - final RunningTaskInfo taskInfo = change.getTaskInfo(); + final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); if (taskInfo == null) continue; if (getStageOfTask(taskInfo) != null || getSplitItemPosition(change.getLastParent()) != SPLIT_POSITION_UNDEFINED) { @@ -4116,28 +3392,13 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // Wait until after animation to update divider // Reset crops so they don't interfere with subsequent launches - if (enableFlexibleSplit()) { - runForActiveStages(stage -> t.setCrop(stage.mRootLeash, null /*crop*/)); - } else { - t.setCrop(mMainStage.mRootLeash, null); - t.setCrop(mSideStage.mRootLeash, null); - } + t.setCrop(mMainStage.mRootLeash, null); + t.setCrop(mSideStage.mRootLeash, null); // Hide the non-top stage and set the top one to the fullscreen position. if (toStage != STAGE_TYPE_UNDEFINED) { - if (enableFlexibleSplit()) { - StageTaskListener stageToKeep = mStageOrderOperator.getAllStages().stream() - .filter(stage -> stage.getId() == toStage) - .findFirst().orElseThrow(); - List<StageTaskListener> stagesToHide = mStageOrderOperator.getAllStages().stream() - .filter(stage -> stage.getId() != toStage) - .toList(); - stagesToHide.forEach(stage -> t.hide(stage.mRootLeash)); - t.setPosition(stageToKeep.mRootLeash, 0, 0); - } else { - t.hide(toStage == STAGE_TYPE_MAIN ? mSideStage.mRootLeash : mMainStage.mRootLeash); - t.setPosition(toStage == STAGE_TYPE_MAIN - ? mMainStage.mRootLeash : mSideStage.mRootLeash, 0, 0); - } + t.hide(toStage == STAGE_TYPE_MAIN ? mSideStage.mRootLeash : mMainStage.mRootLeash); + t.setPosition(toStage == STAGE_TYPE_MAIN + ? mMainStage.mRootLeash : mSideStage.mRootLeash, 0, 0); } else { for (int i = dismissingTasks.keySet().size() - 1; i >= 0; --i) { finishT.hide(dismissingTasks.valueAt(i)); @@ -4152,12 +3413,8 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // Hide divider and dim layer on transition finished. setDividerVisibility(false, t); - if (enableFlexibleSplit()) { - runForActiveStages(stage -> finishT.hide(stage.mRootLeash)); - } else { - finishT.hide(mMainStage.mDimLayer); - finishT.hide(mSideStage.mDimLayer); - } + finishT.hide(mMainStage.mDimLayer); + finishT.hide(mSideStage.mDimLayer); } private boolean startPendingDismissAnimation( @@ -4178,15 +3435,9 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, return false; } dismissTransition.setFinishedCallback((callbackWct, callbackT) -> { - if (enableFlexibleSplit()) { - runForActiveStages(stage -> stage.getSplitDecorManager().release(callbackT)); - } else { - mMainStage.getSplitDecorManager().release(callbackT); - mSideStage.getSplitDecorManager().release(callbackT); - } - int displayId = SplitMultiDisplayHelper.getTransitionDisplayId(info); - callbackWct.setReparentLeafTaskIfRelaunch(mSplitMultiDisplayHelper - .getDisplayRootTaskInfo(displayId).token, false); + mMainStage.getSplitDecorManager().release(callbackT); + mSideStage.getSplitDecorManager().release(callbackT); + callbackWct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, false); }); return true; } @@ -4199,18 +3450,11 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // Cache tasks on live tile. for (int i = 0; i < info.getChanges().size(); ++i) { final TransitionInfo.Change change = info.getChanges().get(i); - if (isClosingType(change.getMode()) + if (TransitionUtil.isClosingType(change.getMode()) && change.getTaskInfo() != null) { final int taskId = change.getTaskInfo().taskId; - boolean anyStagesHaveTask; - if (enableFlexibleSplit()) { - anyStagesHaveTask = mStageOrderOperator.getActiveStages().stream() - .anyMatch(stage -> stage.getTopVisibleChildTaskId() == taskId); - } else { - anyStagesHaveTask = mMainStage.getTopVisibleChildTaskId() == taskId - || mSideStage.getTopVisibleChildTaskId() == taskId; - } - if (anyStagesHaveTask) { + if (mMainStage.getTopVisibleChildTaskId() == taskId + || mSideStage.getTopVisibleChildTaskId() == taskId) { mPausingTasks.add(taskId); } } @@ -4218,80 +3462,43 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } addDividerBarToTransition(info, false /* show */); - addAllDimLayersToTransition(info, false /* show */); } /** Call this when the recents animation canceled during split-screen. */ public void onRecentsInSplitAnimationCanceled() { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onRecentsInSplitAnimationCanceled"); mPausingTasks.clear(); setSplitsVisible(false); final WindowContainerTransaction wct = new WindowContainerTransaction(); - // TODO: b/393217881 - replace DEFAULT DISPLAY with the current display id - wct.setReparentLeafTaskIfRelaunch(mSplitMultiDisplayHelper - .getDisplayRootTaskInfo(DEFAULT_DISPLAY).token, + wct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, true /* reparentLeafTaskIfRelaunch */); mTaskOrganizer.applyTransaction(wct); } - /** - * Returns whether the given WCT is reordering any of the split tasks to top. - */ - public boolean wctIsReorderingSplitToTop(@NonNull WindowContainerTransaction finishWct) { + /** Call this when the recents animation during split-screen finishes. */ + public void onRecentsInSplitAnimationFinish(WindowContainerTransaction finishWct, + SurfaceControl.Transaction finishT) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onRecentsInSplitAnimationFinish"); + mPausingTasks.clear(); + // Check if the recent transition is finished by returning to the current + // split, so we can restore the divider bar. for (int i = 0; i < finishWct.getHierarchyOps().size(); ++i) { final WindowContainerTransaction.HierarchyOp op = finishWct.getHierarchyOps().get(i); final IBinder container = op.getContainer(); - boolean anyStageContainsContainer; - if (enableFlexibleSplit()) { - anyStageContainsContainer = mStageOrderOperator.getActiveStages().stream() - .anyMatch(stage -> stage.containsContainer(container)); - } else { - anyStageContainsContainer = mMainStage.containsContainer(container) - || mSideStage.containsContainer(container); - } if (op.getType() == HIERARCHY_OP_TYPE_REORDER && op.getToTop() - && anyStageContainsContainer) { - return true; + && (mMainStage.containsContainer(container) + || mSideStage.containsContainer(container))) { + updateSurfaceBounds(mSplitLayout, finishT, + false /* applyResizingOffset */); + finishT.reparent(mSplitLayout.getDividerLeash(), mRootTaskLeash); + setDividerVisibility(true, finishT); + return; } } - return false; - } - - /** Called when the recents animation during split-screen finishes. */ - public void onRecentsInSplitAnimationFinishing(boolean returnToApp, - @NonNull WindowContainerTransaction finishWct, - @NonNull SurfaceControl.Transaction finishT) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onRecentsInSplitAnimationFinish: returnToApp=%b", - returnToApp); - mPausingTasks.clear(); - if (returnToApp) { - // Reparent auxiliary surfaces (divider bar and dim layers) back onto their - // original roots. - if (enableFlexibleSplit()) { - mStageOrderOperator.getActiveStages().forEach(stage -> { - finishT.reparent(stage.mDimLayer, stage.mRootLeash); - finishT.setLayer(stage.mDimLayer, RESTING_DIM_LAYER); - }); - } else if (enableFlexibleTwoAppSplit()) { - finishT.reparent(mMainStage.mDimLayer, mMainStage.mRootLeash); - finishT.reparent(mSideStage.mDimLayer, mSideStage.mRootLeash); - finishT.setLayer(mMainStage.mDimLayer, RESTING_DIM_LAYER); - finishT.setLayer(mSideStage.mDimLayer, RESTING_DIM_LAYER); - } - updateSurfaceBounds(mSplitLayout, finishT, - false /* applyResizingOffset */); - // TODO: b/393217881 - replace DEFAULT DISPLAY with the current display id - finishT.reparent(mSplitLayout.getDividerLeash(), - mSplitMultiDisplayHelper.getDisplayRootTaskLeash(DEFAULT_DISPLAY)); - setDividerVisibility(true, finishT); - return; - } setSplitsVisible(false); - finishWct.setReparentLeafTaskIfRelaunch(mSplitMultiDisplayHelper - .getDisplayRootTaskInfo(DEFAULT_DISPLAY).token, + finishWct.setReparentLeafTaskIfRelaunch(mRootTaskInfo.token, true /* reparentLeafTaskIfRelaunch */); } @@ -4308,18 +3515,10 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, // user entering recents. for (int i = mPausingTasks.size() - 1; i >= 0; --i) { final int taskId = mPausingTasks.get(i); - if (enableFlexibleSplit()) { - mStageOrderOperator.getActiveStages().stream() - .filter(stage -> stage.containsTask(taskId)) - .findFirst() - .ifPresent(stageToEvict -> - stageToEvict.evictChild(finishWct, taskId, "recentsPairToPair")); - } else { - if (mMainStage.containsTask(taskId)) { - mMainStage.evictChild(finishWct, taskId, "recentsPairToPair"); - } else if (mSideStage.containsTask(taskId)) { - mSideStage.evictChild(finishWct, taskId, "recentsPairToPair"); - } + if (mMainStage.containsTask(taskId)) { + mMainStage.evictChildren(finishWct, taskId); + } else if (mSideStage.containsTask(taskId)) { + mSideStage.evictChildren(finishWct, taskId); } } // If pending enter hasn't consumed, the mix handler will invoke start pending @@ -4339,8 +3538,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, final TransitionInfo.Change barChange = new TransitionInfo.Change(null /* token */, leash); mSplitLayout.getRefDividerBounds(mTempRect1); - int displayId = SplitMultiDisplayHelper.getTransitionDisplayId(info); - barChange.setParent(mSplitMultiDisplayHelper.getDisplayRootTaskInfo(displayId).token); + barChange.setParent(mRootTaskInfo.token); barChange.setStartAbsBounds(mTempRect1); barChange.setEndAbsBounds(mTempRect1); barChange.setMode(show ? TRANSIT_TO_FRONT : TRANSIT_TO_BACK); @@ -4350,31 +3548,14 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, info.addChange(barChange); } - /** - * Add dim layers to the transition, so that they can be hidden/shown when animation starts. - * They're only added if there is at least one offscreen app. - */ - private void addAllDimLayersToTransition(@NonNull TransitionInfo info, boolean show) { - if (!mSplitState.currentStateSupportsOffscreenApps()) { - return; - } - int displayId = SplitMultiDisplayHelper.getTransitionDisplayId(info); - WindowContainerToken rootToken = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(displayId).token; - if (enableFlexibleSplit()) { - List<StageTaskListener> stages = mStageOrderOperator.getActiveStages(); - for (int i = 0; i < stages.size(); i++) { - final StageTaskListener stage = stages.get(i); - mSplitState.getCurrentLayout().get(i).roundOut(mTempRect1); - mSplitTransitionModifier.addDimLayerToTransition(info, show, stage, - mTempRect1, rootToken); - } - } else if (enableFlexibleTwoAppSplit()) { - mSplitTransitionModifier.addDimLayerToTransition(info, show, mMainStage, - getMainStageBounds(), rootToken); - mSplitTransitionModifier.addDimLayerToTransition(info, show, mSideStage, - getSideStageBounds(), rootToken); - } + RemoteAnimationTarget getDividerBarLegacyTarget() { + final Rect bounds = mSplitLayout.getDividerBounds(); + return new RemoteAnimationTarget(-1 /* taskId */, -1 /* mode */, + mSplitLayout.getDividerLeash(), false /* isTranslucent */, null /* clipRect */, + null /* contentInsets */, Integer.MAX_VALUE /* prefixOrderIndex */, + new android.graphics.Point(0, 0) /* position */, bounds, bounds, + new WindowConfiguration(), true, null /* startLeash */, null /* startBounds */, + null /* taskInfo */, false /* allowEnterPip */, TYPE_DOCK_DIVIDER); } @NeverCompile @@ -4386,24 +3567,19 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, pw.println(innerPrefix + "mDividerVisible=" + mDividerVisible); pw.println(innerPrefix + "isSplitActive=" + isSplitActive()); pw.println(innerPrefix + "isSplitVisible=" + isSplitScreenVisible()); - pw.println(innerPrefix + "isLeftRightSplit=" - + (mSplitLayout != null ? isLeftRightSplit() : "null")); - pw.println(childPrefix + "isActive=" + isSplitActive()); - if (mMainStage != null) { - pw.println(innerPrefix + "MainStage"); - pw.println( - childPrefix + "stagePosition=" + splitPositionToString(getMainStagePosition())); - mMainStage.dump(pw, childPrefix); - } - if (mSideStage != null) { - pw.println(innerPrefix + "SideStage"); - pw.println( - childPrefix + "stagePosition=" + splitPositionToString(getSideStagePosition())); - mSideStage.dump(pw, childPrefix); - } - if (mSplitLayout != null) { - mSplitLayout.dump(pw, childPrefix); - } + pw.println(innerPrefix + "isLeftRightSplit=" + mSplitLayout.isLeftRightSplit()); + pw.println(innerPrefix + "MainStage"); + pw.println(childPrefix + "stagePosition=" + splitPositionToString(getMainStagePosition())); + pw.println(childPrefix + "isActive=" + mMainStage.isActive()); + mMainStage.dump(pw, childPrefix); + pw.println(innerPrefix + "MainStageListener"); + mMainStageListener.dump(pw, childPrefix); + pw.println(innerPrefix + "SideStage"); + pw.println(childPrefix + "stagePosition=" + splitPositionToString(getSideStagePosition())); + mSideStage.dump(pw, childPrefix); + pw.println(innerPrefix + "SideStageListener"); + mSideStageListener.dump(pw, childPrefix); + mSplitLayout.dump(pw, childPrefix); if (!mPausingTasks.isEmpty()) { pw.println(childPrefix + "mPausingTasks=" + mPausingTasks); } @@ -4416,18 +3592,8 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, */ private void setSplitsVisible(boolean visible) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "setSplitsVisible: visible=%b", visible); - if (enableFlexibleSplit()) { - runForActiveStages(stage -> { - stage.mVisible = visible; - stage.mHasChildren = visible; - }); - } else { - mMainStage.mVisible = mSideStage.mVisible = visible; - mMainStage.mHasChildren = mSideStage.mHasChildren = visible; - } - - mStatusBarHider.onSplitVisibilityChanged(visible); - sendSplitVisibilityChanged(visible); + mMainStageListener.mVisible = mSideStageListener.mVisible = visible; + mMainStageListener.mHasChildren = mSideStageListener.mHasChildren = visible; } /** @@ -4439,9 +3605,29 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mIsDropEntering = true; mSkipEvictingMainStageChildren = true; } + if (!isSplitScreenVisible() && !ENABLE_SHELL_TRANSITIONS) { + // If split running background, exit split first. + // Skip this on shell transition due to we could evict existing tasks on transition + // finished. + exitSplitScreen(null /* childrenToTop */, EXIT_REASON_RECREATE_SPLIT); + } mLogger.enterRequestedByDrag(position, dragSessionId); } + /** + * Sets info to be logged when splitscreen is next entered. + */ + public void onRequestToSplit(InstanceId sessionId, @SplitEnterReason int enterReason) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onRequestToSplit: reason=%d", enterReason); + if (!isSplitScreenVisible() && !ENABLE_SHELL_TRANSITIONS) { + // If split running background, exit split first. + // Skip this on shell transition due to we could evict existing tasks on transition + // finished. + exitSplitScreen(null /* childrenToTop */, EXIT_REASON_RECREATE_SPLIT); + } + mLogger.enterRequested(sessionId, enterReason); + } + /** * Logs the exit of splitscreen. */ @@ -4449,20 +3635,20 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, mLogger.logExit(exitReason, SPLIT_POSITION_UNDEFINED, 0 /* mainStageUid */, SPLIT_POSITION_UNDEFINED, 0 /* sideStageUid */, - isLeftRightSplit()); + mSplitLayout.isLeftRightSplit()); } private void handleUnsupportedSplitStart() { mSplitUnsupportedToast.show(); - notifySplitAnimationStatus(false /*animationRunning*/); + notifySplitAnimationFinished(); } - void notifySplitAnimationStatus(boolean animationRunning) { + void notifySplitAnimationFinished() { if (mSplitInvocationListener == null || mSplitInvocationListenerExecutor == null) { return; } mSplitInvocationListenerExecutor.execute(() -> - mSplitInvocationListener.onSplitAnimationInvoked(animationRunning)); + mSplitInvocationListener.onSplitAnimationInvoked(false /*animationRunning*/)); } /** @@ -4470,15 +3656,98 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, * executed. */ private void logExitToStage(@ExitReason int exitReason, boolean toMainStage) { - if (enableFlexibleSplit()) { - // TODO(b/374825718) update logging for 2+ apps - return; - } mLogger.logExit(exitReason, toMainStage ? getMainStagePosition() : SPLIT_POSITION_UNDEFINED, toMainStage ? mMainStage.getTopChildTaskUid() : 0 /* mainStageUid */, !toMainStage ? getSideStagePosition() : SPLIT_POSITION_UNDEFINED, !toMainStage ? mSideStage.getTopChildTaskUid() : 0 /* sideStageUid */, - isLeftRightSplit()); + mSplitLayout.isLeftRightSplit()); + } + + class StageListenerImpl implements StageTaskListener.StageListenerCallbacks { + boolean mHasRootTask = false; + boolean mVisible = false; + boolean mHasChildren = false; + + @Override + public void onRootTaskAppeared() { + mHasRootTask = true; + StageCoordinator.this.onRootTaskAppeared(); + } + + @Override + public void onChildTaskAppeared(int taskId) { + StageCoordinator.this.onChildTaskAppeared(this, taskId); + } + + @Override + public void onStatusChanged(boolean visible, boolean hasChildren) { + if (!mHasRootTask) return; + + if (mHasChildren != hasChildren) { + mHasChildren = hasChildren; + StageCoordinator.this.onStageHasChildrenChanged(this); + } + if (mVisible != visible) { + mVisible = visible; + StageCoordinator.this.onStageVisibilityChanged(this); + } + } + + @Override + public void onChildTaskStatusChanged(int taskId, boolean present, boolean visible) { + StageCoordinator.this.onStageChildTaskStatusChanged(this, taskId, present, visible); + } + + @Override + public void onRootTaskVanished() { + reset(); + StageCoordinator.this.onRootTaskVanished(); + } + + @Override + public void onNoLongerSupportMultiWindow(ActivityManager.RunningTaskInfo taskInfo) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onNoLongerSupportMultiWindow: task=%s", taskInfo); + if (mMainStage.isActive()) { + final boolean isMainStage = mMainStageListener == this; + if (!ENABLE_SHELL_TRANSITIONS) { + StageCoordinator.this.exitSplitScreen(isMainStage ? mMainStage : mSideStage, + EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW); + handleUnsupportedSplitStart(); + return; + } + + // If visible, we preserve the app and keep it running. If an app becomes + // unsupported in the bg, break split without putting anything on top + boolean splitScreenVisible = isSplitScreenVisible(); + int stageType = STAGE_TYPE_UNDEFINED; + if (splitScreenVisible) { + stageType = isMainStage ? STAGE_TYPE_MAIN : STAGE_TYPE_SIDE; + } + final WindowContainerTransaction wct = new WindowContainerTransaction(); + prepareExitSplitScreen(stageType, wct); + clearSplitPairedInRecents(EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW); + mSplitTransitions.startDismissTransition(wct, StageCoordinator.this, stageType, + EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW); + Log.w(TAG, splitFailureMessage("onNoLongerSupportMultiWindow", + "app package " + taskInfo.baseActivity.getPackageName() + + " does not support splitscreen, or is a controlled activity type")); + if (splitScreenVisible) { + handleUnsupportedSplitStart(); + } + } + } + + private void reset() { + mHasRootTask = false; + mVisible = false; + mHasChildren = false; + } + + public void dump(@NonNull PrintWriter pw, String prefix) { + pw.println(prefix + "mHasRootTask=" + mHasRootTask); + pw.println(prefix + "mVisible=" + mVisible); + pw.println(prefix + "mHasChildren=" + mHasChildren); + } } } diff --git a/wmshell/src/com/android/wm/shell/splitscreen/StageTaskListener.java b/wmshell/src/com/android/wm/shell/splitscreen/StageTaskListener.java index d5ee71dcf9..0f3d6cade9 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/StageTaskListener.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/StageTaskListener.java @@ -17,38 +17,35 @@ package com.android.wm.shell.splitscreen; import static android.app.ActivityTaskManager.INVALID_TASK_ID; -import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; -import static android.content.res.Configuration.SCREEN_HEIGHT_DP_UNDEFINED; -import static android.content.res.Configuration.SCREEN_WIDTH_DP_UNDEFINED; import static android.content.res.Configuration.SMALLEST_SCREEN_WIDTH_DP_UNDEFINED; import static android.view.RemoteAnimationTarget.MODE_OPENING; -import static com.android.wm.shell.Flags.enableFlexibleSplit; +import static com.android.wm.shell.common.split.SplitScreenConstants.CONTROLLED_ACTIVITY_TYPES; +import static com.android.wm.shell.common.split.SplitScreenConstants.CONTROLLED_WINDOWING_MODES; +import static com.android.wm.shell.common.split.SplitScreenConstants.CONTROLLED_WINDOWING_MODES_WHEN_ACTIVE; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_SPLIT_SCREEN; -import static com.android.wm.shell.shared.split.SplitScreenConstants.CONTROLLED_ACTIVITY_TYPES; -import static com.android.wm.shell.shared.split.SplitScreenConstants.CONTROLLED_WINDOWING_MODES; -import static com.android.wm.shell.shared.split.SplitScreenConstants.CONTROLLED_WINDOWING_MODES_WHEN_ACTIVE; -import static com.android.wm.shell.splitscreen.SplitScreen.stageTypeToString; +import static com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS; import android.annotation.CallSuper; import android.annotation.Nullable; import android.app.ActivityManager; -import android.app.TaskInfo; import android.content.Context; +import android.graphics.Point; import android.graphics.Rect; import android.os.IBinder; +import android.util.Slog; import android.util.SparseArray; import android.view.RemoteAnimationTarget; import android.view.SurfaceControl; -import android.window.TaskOrganizer; +import android.view.SurfaceSession; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import androidx.annotation.NonNull; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.ArrayUtils; import com.android.launcher3.icons.IconProvider; import com.android.wm.shell.ShellTaskOrganizer; @@ -59,13 +56,9 @@ import com.android.wm.shell.splitscreen.SplitScreen.StageType; import com.android.wm.shell.windowdecor.WindowDecorViewModel; import java.io.PrintWriter; -import java.util.ArrayList; -import java.util.List; import java.util.Optional; -import java.util.Set; import java.util.function.Consumer; import java.util.function.Predicate; -import java.util.stream.Collectors; /** * Base class that handle common task org. related for split-screen stages. @@ -76,44 +69,31 @@ import java.util.stream.Collectors; * * @see StageCoordinator */ -public class StageTaskListener implements ShellTaskOrganizer.TaskListener { +class StageTaskListener implements ShellTaskOrganizer.TaskListener { private static final String TAG = StageTaskListener.class.getSimpleName(); - // No current way to enforce this but if enableFlexibleSplit() is enabled, then only 1 of the - // stages should have this be set/being used - private boolean mIsActive; - /** Unique identifier for this state, > 0 */ - @StageType private final int mId; /** Callback interface for listening to changes in a split-screen stage. */ public interface StageListenerCallbacks { - /** Called when the root task on current display appears. */ - void onRootTaskAppeared(ActivityManager.RunningTaskInfo taskInfo); + void onRootTaskAppeared(); - void onStageVisibilityChanged(StageTaskListener stageTaskListener); + void onChildTaskAppeared(int taskId); - void onChildTaskStatusChanged(StageTaskListener stage, int taskId, boolean present, - boolean visible); + void onStatusChanged(boolean visible, boolean hasChildren); + void onChildTaskStatusChanged(int taskId, boolean present, boolean visible); - /** Called when the root task on current display vanishes. */ - void onRootTaskVanished(ActivityManager.RunningTaskInfo taskInfo); + void onRootTaskVanished(); - void onNoLongerSupportMultiWindow(StageTaskListener stageTaskListener, - ActivityManager.RunningTaskInfo taskInfo); + void onNoLongerSupportMultiWindow(ActivityManager.RunningTaskInfo taskInfo); } private final Context mContext; private final StageListenerCallbacks mCallbacks; + private final SurfaceSession mSurfaceSession; private final SyncTransactionQueue mSyncQueue; private final IconProvider mIconProvider; private final Optional<WindowDecorViewModel> mWindowDecorViewModel; - /** Whether or not the root task has been created. */ - boolean mHasRootTask = false; - /** Whether or not the root task is visible. */ - boolean mVisible = false; - /** Whether or not the root task has any children or not. */ - boolean mHasChildren = false; protected ActivityManager.RunningTaskInfo mRootTaskInfo; protected SurfaceControl mRootLeash; protected SurfaceControl mDimLayer; @@ -124,20 +104,15 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { StageTaskListener(Context context, ShellTaskOrganizer taskOrganizer, int displayId, StageListenerCallbacks callbacks, SyncTransactionQueue syncQueue, - IconProvider iconProvider, - Optional<WindowDecorViewModel> windowDecorViewModel, int id) { + SurfaceSession surfaceSession, IconProvider iconProvider, + Optional<WindowDecorViewModel> windowDecorViewModel) { mContext = context; mCallbacks = callbacks; mSyncQueue = syncQueue; + mSurfaceSession = surfaceSession; mIconProvider = iconProvider; mWindowDecorViewModel = windowDecorViewModel; - taskOrganizer.createRootTask( - new TaskOrganizer.CreateRootTaskRequest() - .setName(stageTypeToString(id).toLowerCase()) - .setDisplayId(displayId) - .setWindowingMode(WINDOWING_MODE_MULTI_WINDOW), - this); - mId = id; + taskOrganizer.createRootTask(displayId, WINDOWING_MODE_MULTI_WINDOW, this); } int getChildCount() { @@ -160,28 +135,15 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { * Returns the top visible child task's id. */ int getTopVisibleChildTaskId() { - // TODO(b/378601156): This doesn't get the top task (translucent tasks are also - // visible-requested) final ActivityManager.RunningTaskInfo taskInfo = getChildTaskInfo(t -> t.isVisible && t.isVisibleRequested); return taskInfo != null ? taskInfo.taskId : INVALID_TASK_ID; } - /** - * Returns all visible child task's ids. - */ - List<Integer> getAllVisibleChildTaskIds() { - return getAllChildTaskInfos(t -> t.isVisible - && t.isVisibleRequested && t.taskId != INVALID_TASK_ID).stream() - .map(runningTaskInfo -> runningTaskInfo.taskId) - .collect(Collectors.toList()); - } - /** * Returns the top activity uid for the top child task. */ int getTopChildTaskUid() { - // TODO(b/378601156): This doesn't get the top task final ActivityManager.RunningTaskInfo taskInfo = getChildTaskInfo(t -> t.topActivityInfo != null); return taskInfo != null ? taskInfo.topActivityInfo.applicationInfo.uid : 0; @@ -192,11 +154,6 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { return contains(t -> t.isFocused); } - @StageType - int getId() { - return mId; - } - private boolean contains(Predicate<ActivityManager.RunningTaskInfo> predicate) { if (mRootTaskInfo != null && predicate.test(mRootTaskInfo)) { return true; @@ -205,26 +162,6 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { return getChildTaskInfo(predicate) != null; } - public SurfaceControl getRootLeash() { - return mRootLeash; - } - - public ActivityManager.RunningTaskInfo getRunningTaskInfo() { - return mRootTaskInfo; - } - - public SplitDecorManager getDecorManager() { - return mSplitDecorManager; - } - - /** - * Gets the leash for this task's dim layer. We manipulate this surface's alpha to dim the app - * when it's moving offscreen or toward dismissal. - */ - public SurfaceControl getDimLayer() { - return mDimLayer; - } - @Nullable private ActivityManager.RunningTaskInfo getChildTaskInfo( Predicate<ActivityManager.RunningTaskInfo> predicate) { @@ -237,46 +174,38 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { return null; } - private List<ActivityManager.RunningTaskInfo> getAllChildTaskInfos( - Predicate<ActivityManager.RunningTaskInfo> predicate) { - List<ActivityManager.RunningTaskInfo> matchingTasks = new ArrayList<>(); - for (int i = mChildrenTaskInfo.size() - 1; i >= 0; --i) { - final ActivityManager.RunningTaskInfo taskInfo = mChildrenTaskInfo.valueAt(i); - if (predicate.test(taskInfo)) { - matchingTasks.add(taskInfo); - } - } - return matchingTasks; - } - @Override @CallSuper public void onTaskAppeared(ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash) { ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskAppeared: taskId=%d taskParent=%d rootTask=%d " - + "stageId=%s taskActivity=%s", + + "taskActivity=%s", taskInfo.taskId, taskInfo.parentTaskId, mRootTaskInfo != null ? mRootTaskInfo.taskId : -1, - stageTypeToString(mId), taskInfo.baseActivity); + taskInfo.baseActivity); if (mRootTaskInfo == null) { mRootLeash = leash; mRootTaskInfo = taskInfo; mSplitDecorManager = new SplitDecorManager( mRootTaskInfo.configuration, - mIconProvider); - mHasRootTask = true; - mCallbacks.onRootTaskAppeared(taskInfo); - if (mVisible != mRootTaskInfo.isVisible) { - mVisible = mRootTaskInfo.isVisible; - mCallbacks.onStageVisibilityChanged(this); - } + mIconProvider, + mSurfaceSession); + mCallbacks.onRootTaskAppeared(); + sendStatusChanged(); mSyncQueue.runInSync(t -> mDimLayer = - SurfaceUtils.makeDimLayer(t, mRootLeash, "Dim layer")); + SurfaceUtils.makeDimLayer(t, mRootLeash, "Dim layer", mSurfaceSession)); } else if (taskInfo.parentTaskId == mRootTaskInfo.taskId) { final int taskId = taskInfo.taskId; mChildrenLeashes.put(taskId, leash); mChildrenTaskInfo.put(taskId, taskInfo); - mCallbacks.onChildTaskStatusChanged(this, taskId, true /* present */, + mCallbacks.onChildTaskStatusChanged(taskId, true /* present */, taskInfo.isVisible && taskInfo.isVisibleRequested); + if (ENABLE_SHELL_TRANSITIONS) { + // Status is managed/synchronized by the transition lifecycle. + return; + } + updateChildTaskSurface(taskInfo, leash, true /* firstAppeared */); + mCallbacks.onChildTaskAppeared(taskId); + sendStatusChanged(); } else { throw new IllegalArgumentException(this + "\n Unknown task: " + taskInfo + "\n mRootTaskInfo: " + mRootTaskInfo); @@ -286,11 +215,18 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { @Override @CallSuper public void onTaskInfoChanged(ActivityManager.RunningTaskInfo taskInfo) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskInfoChanged: taskId=%d taskAct=%s " - + "stageId=%s", - taskInfo.taskId, taskInfo.baseActivity, stageTypeToString(mId)); + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskInfoChanged: taskId=%d taskAct=%s", + taskInfo.taskId, taskInfo.baseActivity); mWindowDecorViewModel.ifPresent(viewModel -> viewModel.onTaskInfoChanged(taskInfo)); if (mRootTaskInfo.taskId == taskInfo.taskId) { + // Inflates split decor view only when the root task is visible. + if (!ENABLE_SHELL_TRANSITIONS && mRootTaskInfo.isVisible != taskInfo.isVisible) { + if (taskInfo.isVisible) { + mSplitDecorManager.inflate(mContext, mRootLeash); + } else { + mSyncQueue.runInSync(t -> mSplitDecorManager.release(t)); + } + } mRootTaskInfo = taskInfo; } else if (taskInfo.parentTaskId == mRootTaskInfo.taskId) { if (!taskInfo.supportsMultiWindow @@ -302,30 +238,35 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { taskInfo.taskId); // Leave split screen if the task no longer supports multi window or have // uncontrolled task. - mCallbacks.onNoLongerSupportMultiWindow(this, taskInfo); + mCallbacks.onNoLongerSupportMultiWindow(taskInfo); return; } mChildrenTaskInfo.put(taskInfo.taskId, taskInfo); - mCallbacks.onChildTaskStatusChanged(this, taskInfo.taskId, true /* present */, + mCallbacks.onChildTaskStatusChanged(taskInfo.taskId, true /* present */, taskInfo.isVisible && taskInfo.isVisibleRequested); + if (!ENABLE_SHELL_TRANSITIONS) { + updateChildTaskSurface( + taskInfo, mChildrenLeashes.get(taskInfo.taskId), false /* firstAppeared */); + } } else { throw new IllegalArgumentException(this + "\n Unknown task: " + taskInfo + "\n mRootTaskInfo: " + mRootTaskInfo); } + if (ENABLE_SHELL_TRANSITIONS) { + // Status is managed/synchronized by the transition lifecycle. + return; + } + sendStatusChanged(); } @Override @CallSuper public void onTaskVanished(ActivityManager.RunningTaskInfo taskInfo) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskVanished: task=%d stageId=%s", - taskInfo.taskId, stageTypeToString(mId)); + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "onTaskVanished: task=%d", taskInfo.taskId); final int taskId = taskInfo.taskId; mWindowDecorViewModel.ifPresent(vm -> vm.onTaskVanished(taskInfo)); if (mRootTaskInfo.taskId == taskId) { - mHasRootTask = false; - mVisible = false; - mHasChildren = false; - mCallbacks.onRootTaskVanished(taskInfo); + mCallbacks.onRootTaskVanished(); mRootTaskInfo = null; mRootLeash = null; mSyncQueue.runInSync(t -> { @@ -335,8 +276,12 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { } else if (mChildrenTaskInfo.contains(taskId)) { mChildrenTaskInfo.remove(taskId); mChildrenLeashes.remove(taskId); - mCallbacks.onChildTaskStatusChanged(this, taskId, false /* present */, - taskInfo.isVisible); + mCallbacks.onChildTaskStatusChanged(taskId, false /* present */, taskInfo.isVisible); + if (ENABLE_SHELL_TRANSITIONS) { + // Status is managed/synchronized by the transition lifecycle. + return; + } + sendStatusChanged(); } else { throw new IllegalArgumentException(this + "\n Unknown task: " + taskInfo + "\n mRootTaskInfo: " + mRootTaskInfo); @@ -368,11 +313,11 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { return mRootTaskInfo != null && mRootTaskInfo.taskId == taskId; } - void onResizing(Rect newBounds, Rect sideBounds, Rect displayBounds, - SurfaceControl.Transaction t, int offsetX, int offsetY, boolean immediately) { + void onResizing(Rect newBounds, Rect sideBounds, SurfaceControl.Transaction t, int offsetX, + int offsetY, boolean immediately, float[] veilColor) { if (mSplitDecorManager != null && mRootTaskInfo != null) { - mSplitDecorManager.onResizing(mRootTaskInfo, newBounds, sideBounds, displayBounds, t, - offsetX, offsetY, immediately); + mSplitDecorManager.onResizing(mRootTaskInfo, newBounds, sideBounds, t, offsetX, + offsetY, immediately, veilColor); } } @@ -390,7 +335,7 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { void fadeOutDecor(Runnable finishedCallback) { if (mSplitDecorManager != null) { - mSplitDecorManager.fadeOutDecor(finishedCallback, false /* addDelay */); + mSplitDecorManager.fadeOutDecor(finishedCallback); } else { finishedCallback.run(); } @@ -425,30 +370,26 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { } } - void doForAllChildTaskInfos(Consumer<ActivityManager.RunningTaskInfo> consumer) { - for (int i = mChildrenTaskInfo.size() - 1; i >= 0; i--) { - final ActivityManager.RunningTaskInfo taskInfo = mChildrenTaskInfo.valueAt(i); - consumer.accept(taskInfo); - } - } - /** Collects all the current child tasks and prepares transaction to evict them to display. */ void evictAllChildren(WindowContainerTransaction wct) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Evicting all children"); for (int i = mChildrenTaskInfo.size() - 1; i >= 0; i--) { final ActivityManager.RunningTaskInfo taskInfo = mChildrenTaskInfo.valueAt(i); - evictChild(wct, taskInfo, "all"); + wct.reparent(taskInfo.token, null /* parent */, false /* onTop */); } } - void evictOtherChildren(WindowContainerTransaction wct, Set<Integer> keepTaskIds) { + void evictOtherChildren(WindowContainerTransaction wct, int taskId) { for (int i = mChildrenTaskInfo.size() - 1; i >= 0; i--) { final ActivityManager.RunningTaskInfo taskInfo = mChildrenTaskInfo.valueAt(i); - if (keepTaskIds.contains(taskInfo.taskId)) continue; - evictChild(wct, taskInfo, "other_" + stageTypeToString(mId)); + if (taskId == taskInfo.taskId) continue; + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Evict other child: task=%d", taskId); + wct.reparent(taskInfo.token, null /* parent */, false /* onTop */); } } void evictNonOpeningChildren(RemoteAnimationTarget[] apps, WindowContainerTransaction wct) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "evictNonOpeningChildren"); final SparseArray<ActivityManager.RunningTaskInfo> toBeEvict = mChildrenTaskInfo.clone(); for (int i = 0; i < apps.length; i++) { if (apps[i].mode == MODE_OPENING) { @@ -457,7 +398,8 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { } for (int i = toBeEvict.size() - 1; i >= 0; i--) { final ActivityManager.RunningTaskInfo taskInfo = toBeEvict.valueAt(i); - evictChild(wct, taskInfo, "non-opening"); + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Evict non-opening child: task=%d", taskInfo.taskId); + wct.reparent(taskInfo.token, null /* parent */, false /* onTop */); } } @@ -465,30 +407,21 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { for (int i = mChildrenTaskInfo.size() - 1; i >= 0; i--) { final ActivityManager.RunningTaskInfo taskInfo = mChildrenTaskInfo.valueAt(i); if (!taskInfo.isVisible) { - evictChild(wct, taskInfo, "invisible"); + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Evict invisible child: task=%d", + taskInfo.taskId); + wct.reparent(taskInfo.token, null /* parent */, false /* onTop */); } } } - void evictChild(WindowContainerTransaction wct, int taskId, String reason) { + void evictChildren(WindowContainerTransaction wct, int taskId) { + ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Evict child: task=%d", taskId); final ActivityManager.RunningTaskInfo taskInfo = mChildrenTaskInfo.get(taskId); if (taskInfo != null) { - evictChild(wct, taskInfo, reason); + wct.reparent(taskInfo.token, null /* parent */, false /* onTop */); } } - private void evictChild(@NonNull WindowContainerTransaction wct, @NonNull TaskInfo taskInfo, - @NonNull String reason) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "Evict child: task=%d reason=%s", taskInfo.taskId, - reason); - // We are reparenting the task, but not removing the task from mChildrenTaskInfo, so to - // prevent this task from being considered as a top task for the roots, we need to override - // the visibility of the soon-to-be-hidden task - taskInfo.isVisible = false; - taskInfo.isVisibleRequested = false; - wct.reparent(taskInfo.token, null /* parent */, false /* onTop */); - } - void reparentTopTask(WindowContainerTransaction wct) { wct.reparentTasks(null /* currentParent */, mRootTaskInfo.token, CONTROLLED_WINDOWING_MODES, CONTROLLED_ACTIVITY_TYPES, @@ -499,8 +432,6 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { wct.setBounds(mRootTaskInfo.token, null); wct.setAppBounds(mRootTaskInfo.token, null); wct.setSmallestScreenWidthDp(mRootTaskInfo.token, SMALLEST_SCREEN_WIDTH_DP_UNDEFINED); - wct.setScreenSizeDp(mRootTaskInfo.token, SCREEN_WIDTH_DP_UNDEFINED, - SCREEN_HEIGHT_DP_UNDEFINED); } void onSplitScreenListenerRegistered(SplitScreen.SplitScreenListener listener, @@ -512,82 +443,28 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { } } - // --------- - // Previously only used in MainStage - boolean isActive() { - return mIsActive; + private void updateChildTaskSurface(ActivityManager.RunningTaskInfo taskInfo, + SurfaceControl leash, boolean firstAppeared) { + final Point taskPositionInParent = taskInfo.positionInParent; + mSyncQueue.runInSync(t -> { + // The task surface might be released before running in the sync queue for the case like + // trampoline launch, so check if the surface is valid before processing it. + if (!leash.isValid()) { + Slog.w(TAG, "Skip updating invalid child task surface of task#" + taskInfo.taskId); + return; + } + t.setCrop(leash, null); + t.setPosition(leash, taskPositionInParent.x, taskPositionInParent.y); + if (firstAppeared) { + t.setAlpha(leash, 1f); + t.setMatrix(leash, 1, 0, 0, 1); + t.show(leash); + } + }); } - void activate(WindowContainerTransaction wct, boolean includingTopTask) { - if (mIsActive && !enableFlexibleSplit()) return; - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "activate: includingTopTask=%b stage=%s", - includingTopTask, stageTypeToString(mId)); - - if (includingTopTask) { - reparentTopTask(wct); - } - - if (enableFlexibleSplit()) { - return; - } - mIsActive = true; - } - - void deactivate(WindowContainerTransaction wct) { - deactivate(wct, false /* toTop */); - } - - void deactivate(WindowContainerTransaction wct, boolean reparentTasksToTop) { - if (!mIsActive && !enableFlexibleSplit()) return; - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "deactivate: reparentTasksToTop=%b " - + "rootTaskInfo=%s stage=%s", - reparentTasksToTop, mRootTaskInfo, stageTypeToString(mId)); - if (!enableFlexibleSplit()) { - mIsActive = false; - } - - if (mRootTaskInfo == null) return; - final WindowContainerToken rootToken = mRootTaskInfo.token; - wct.reparentTasks( - rootToken, - null /* newParent */, - null /* windowingModes */, - null /* activityTypes */, - reparentTasksToTop); - } - - // -------- - // Previously only used in SideStage. With flexible split this is called for all stages - boolean removeAllTasks(WindowContainerTransaction wct, boolean toTop) { - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "remove all side stage tasks: childCount=%d toTop=%b " - + " stageI=%s", - mChildrenTaskInfo.size(), toTop, stageTypeToString(mId)); - if (mChildrenTaskInfo.size() == 0) return false; - wct.reparentTasks( - mRootTaskInfo.token, - null /* newParent */, - null /* windowingModes */, - null /* activityTypes */, - toTop); - return true; - } - - boolean removeTask(int taskId, WindowContainerToken newParent, WindowContainerTransaction wct) { - final ActivityManager.RunningTaskInfo task = mChildrenTaskInfo.get(taskId); - ProtoLog.d(WM_SHELL_SPLIT_SCREEN, "remove side stage task: task=%d exists=%b", taskId, - task != null); - if (task == null) return false; - wct.reparent(task.token, newParent, false /* onTop */); - return true; - } - - @Override - public String toString() { - return "mId: " + stageTypeToString(mId) - + " mVisible: " + mVisible - + " mActive: " + mIsActive - + " mHasRootTask: " + mHasRootTask - + " childSize: " + mChildrenTaskInfo.size(); + private void sendStatusChanged() { + mCallbacks.onStatusChanged(mRootTaskInfo.isVisible, mChildrenTaskInfo.size() > 0); } @Override @@ -603,8 +480,5 @@ public class StageTaskListener implements ShellTaskOrganizer.TaskListener { + " baseActivity=" + taskInfo.baseActivity); } } - pw.println(prefix + "mHasRootTask=" + mHasRootTask); - pw.println(prefix + "mVisible=" + mVisible); - pw.println(prefix + "mHasChildren=" + mHasChildren); } } diff --git a/wmshell/src/com/android/wm/shell/splitscreen/tv/OWNERS b/wmshell/src/com/android/wm/shell/splitscreen/tv/OWNERS index 9dc0ebbb8e..28be0efc38 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/tv/OWNERS +++ b/wmshell/src/com/android/wm/shell/splitscreen/tv/OWNERS @@ -1,2 +1,3 @@ # WM shell sub-module TV splitscreen owner +galinap@google.com bronger@google.com diff --git a/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitMenuController.java b/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitMenuController.java index bb2f60b64a..1d8a8d506c 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitMenuController.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitMenuController.java @@ -36,11 +36,11 @@ import android.view.LayoutInflater; import android.view.WindowManager; import android.view.WindowManagerGlobal; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.R; import com.android.wm.shell.common.SystemWindows; +import com.android.wm.shell.common.split.SplitScreenConstants; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.split.SplitScreenConstants; /** * Handles the interaction logic with the {@link TvSplitMenuView}. diff --git a/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitMenuView.java b/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitMenuView.java index b758b53107..88e9757a9b 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitMenuView.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitMenuView.java @@ -19,8 +19,8 @@ package com.android.wm.shell.splitscreen.tv; import static android.view.KeyEvent.ACTION_DOWN; import static android.view.KeyEvent.KEYCODE_BACK; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; import android.content.Context; import android.util.AttributeSet; @@ -31,7 +31,7 @@ import android.widget.LinearLayout; import androidx.annotation.Nullable; import com.android.wm.shell.R; -import com.android.wm.shell.shared.split.SplitScreenConstants; +import com.android.wm.shell.common.split.SplitScreenConstants; /** * A View for the Menu Window. diff --git a/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitScreenController.java b/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitScreenController.java index 96c5872670..e330f3ab65 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitScreenController.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/tv/TvSplitScreenController.java @@ -18,12 +18,10 @@ package com.android.wm.shell.splitscreen.tv; import static android.view.Display.DEFAULT_DISPLAY; -import android.app.IActivityTaskManager; import android.content.Context; import android.os.Handler; import com.android.launcher3.icons.IconProvider; -import com.android.wm.shell.RootDisplayAreaOrganizer; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; @@ -34,10 +32,9 @@ import com.android.wm.shell.common.MultiInstanceHelper; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.common.SystemWindows; -import com.android.wm.shell.common.split.SplitState; +import com.android.wm.shell.common.TransactionPool; +import com.android.wm.shell.draganddrop.DragAndDropController; import com.android.wm.shell.recents.RecentTasksController; -import com.android.wm.shell.shared.TransactionPool; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.splitscreen.StageCoordinator; import com.android.wm.shell.sysui.ShellCommandHandler; @@ -45,8 +42,6 @@ import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; -import com.google.android.msdl.domain.MSDLPlayer; - import java.util.Optional; /** @@ -66,14 +61,9 @@ public class TvSplitScreenController extends SplitScreenController { private final IconProvider mIconProvider; private final Optional<RecentTasksController> mRecentTasksOptional; private final LaunchAdjacentController mLaunchAdjacentController; - private final SplitState mSplitState; - private final MSDLPlayer mMSDLPlayer; - private final RootTaskDisplayAreaOrganizer mRootTDAOrganizer; - private final RootDisplayAreaOrganizer mRootDisplayAreaOrganizer; private final Handler mMainHandler; private final SystemWindows mSystemWindows; - private final IActivityTaskManager mActivityTaskManager; public TvSplitScreenController(Context context, ShellInit shellInit, @@ -91,22 +81,14 @@ public class TvSplitScreenController extends SplitScreenController { Optional<RecentTasksController> recentTasks, LaunchAdjacentController launchAdjacentController, MultiInstanceHelper multiInstanceHelper, - SplitState splitState, ShellExecutor mainExecutor, Handler mainHandler, - SystemWindows systemWindows, - RootDisplayAreaOrganizer rootDisplayAreaOrganizer, - DesktopState desktopState, - IActivityTaskManager activityTaskManager, - MSDLPlayer msdlPlayer) { + SystemWindows systemWindows) { super(context, shellInit, shellCommandHandler, shellController, shellTaskOrganizer, syncQueue, rootTDAOrganizer, displayController, displayImeController, displayInsetsController, null, transitions, transactionPool, iconProvider, recentTasks, launchAdjacentController, Optional.empty(), - Optional.empty(), Optional.empty(), null /* stageCoordinator */, - multiInstanceHelper, splitState, - mainExecutor, mainHandler, rootDisplayAreaOrganizer, desktopState, - activityTaskManager, msdlPlayer); + Optional.empty(), null /* stageCoordinator */, multiInstanceHelper, mainExecutor); mTaskOrganizer = shellTaskOrganizer; mSyncQueue = syncQueue; @@ -120,14 +102,9 @@ public class TvSplitScreenController extends SplitScreenController { mIconProvider = iconProvider; mRecentTasksOptional = recentTasks; mLaunchAdjacentController = launchAdjacentController; - mSplitState = splitState; - mMSDLPlayer = msdlPlayer; mMainHandler = mainHandler; mSystemWindows = systemWindows; - mRootTDAOrganizer = rootTDAOrganizer; - mRootDisplayAreaOrganizer = rootDisplayAreaOrganizer; - mActivityTaskManager = activityTaskManager; } /** @@ -140,9 +117,7 @@ public class TvSplitScreenController extends SplitScreenController { mTaskOrganizer, mDisplayController, mDisplayImeController, mDisplayInsetsController, mTransitions, mTransactionPool, mIconProvider, mMainExecutor, mMainHandler, - mRecentTasksOptional, mLaunchAdjacentController, mSplitState, mSystemWindows, - mRootTDAOrganizer, mRootDisplayAreaOrganizer, getDesktopState(), - mActivityTaskManager, mMSDLPlayer); + mRecentTasksOptional, mLaunchAdjacentController, mSystemWindows); } } diff --git a/wmshell/src/com/android/wm/shell/splitscreen/tv/TvStageCoordinator.java b/wmshell/src/com/android/wm/shell/splitscreen/tv/TvStageCoordinator.java index b9e1f22d64..7947691922 100644 --- a/wmshell/src/com/android/wm/shell/splitscreen/tv/TvStageCoordinator.java +++ b/wmshell/src/com/android/wm/shell/splitscreen/tv/TvStageCoordinator.java @@ -16,13 +16,10 @@ package com.android.wm.shell.splitscreen.tv; -import android.app.IActivityTaskManager; import android.content.Context; import android.os.Handler; import com.android.launcher3.icons.IconProvider; -import com.android.wm.shell.RootDisplayAreaOrganizer; -import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayImeController; @@ -31,16 +28,12 @@ import com.android.wm.shell.common.LaunchAdjacentController; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.common.SystemWindows; -import com.android.wm.shell.common.split.SplitState; +import com.android.wm.shell.common.TransactionPool; +import com.android.wm.shell.common.split.SplitScreenConstants; import com.android.wm.shell.recents.RecentTasksController; -import com.android.wm.shell.shared.TransactionPool; -import com.android.wm.shell.shared.desktopmode.DesktopState; -import com.android.wm.shell.shared.split.SplitScreenConstants; import com.android.wm.shell.splitscreen.StageCoordinator; import com.android.wm.shell.transition.Transitions; -import com.google.android.msdl.domain.MSDLPlayer; - import java.util.Optional; /** @@ -60,15 +53,10 @@ public class TvStageCoordinator extends StageCoordinator Handler mainHandler, Optional<RecentTasksController> recentTasks, LaunchAdjacentController launchAdjacentController, - SplitState splitState, - SystemWindows systemWindows, RootTaskDisplayAreaOrganizer rootTDAOrganizer, - RootDisplayAreaOrganizer rootDisplayAreaOrganizer, DesktopState desktopState, - IActivityTaskManager activityTaskManager, MSDLPlayer msdlPlayer) { + SystemWindows systemWindows) { super(context, displayId, syncQueue, taskOrganizer, displayController, displayImeController, displayInsetsController, transitions, transactionPool, iconProvider, - mainExecutor, mainHandler, recentTasks, launchAdjacentController, - Optional.empty(), splitState, Optional.empty(), Optional.empty(), rootTDAOrganizer, - rootDisplayAreaOrganizer, desktopState, activityTaskManager, msdlPlayer); + mainExecutor, recentTasks, launchAdjacentController, Optional.empty()); mTvSplitMenuController = new TvSplitMenuController(context, this, systemWindows, mainHandler); diff --git a/wmshell/src/com/android/wm/shell/startingsurface/SplashScreenExitAnimation.java b/wmshell/src/com/android/wm/shell/startingsurface/SplashScreenExitAnimation.java index 42b8b73cfb..edb5aba1e4 100644 --- a/wmshell/src/com/android/wm/shell/startingsurface/SplashScreenExitAnimation.java +++ b/wmshell/src/com/android/wm/shell/startingsurface/SplashScreenExitAnimation.java @@ -29,8 +29,7 @@ import android.window.SplashScreenView; import com.android.internal.jank.InteractionJankMonitor; import com.android.wm.shell.R; -import com.android.wm.shell.shared.TransactionPool; -import com.android.wm.shell.shared.startingsurface.SplashScreenExitAnimationUtils; +import com.android.wm.shell.common.TransactionPool; /** * Default animation for exiting the splash screen window. diff --git a/wmshell/src/com/android/wm/shell/startingsurface/SplashscreenContentDrawer.java b/wmshell/src/com/android/wm/shell/startingsurface/SplashscreenContentDrawer.java index e132c5ee7c..2b12a22f90 100644 --- a/wmshell/src/com/android/wm/shell/startingsurface/SplashscreenContentDrawer.java +++ b/wmshell/src/com/android/wm/shell/startingsurface/SplashscreenContentDrawer.java @@ -17,7 +17,6 @@ package com.android.wm.shell.startingsurface; import static android.content.Context.CONTEXT_RESTRICTED; -import static android.content.res.Configuration.UI_MODE_NIGHT_MASK; import static android.os.Process.THREAD_PRIORITY_TOP_APP_BOOST; import static android.os.Trace.TRACE_TAG_WINDOW_MANAGER; import static android.view.Display.DEFAULT_DISPLAY; @@ -75,11 +74,11 @@ import com.android.internal.graphics.palette.Palette; import com.android.internal.graphics.palette.Quantizer; import com.android.internal.graphics.palette.VariationalKMeansQuantizer; import com.android.internal.policy.PhoneWindow; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.launcher3.icons.BaseIconFactory; import com.android.launcher3.icons.IconProvider; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.TransactionPool; import java.util.List; import java.util.function.Consumer; @@ -192,15 +191,31 @@ public class SplashscreenContentDrawer { } final Configuration taskConfig = taskInfo.getConfiguration(); - final Configuration contextConfig = context.getResources().getConfiguration(); - if ((taskConfig.uiMode & UI_MODE_NIGHT_MASK) - != (contextConfig.uiMode & UI_MODE_NIGHT_MASK)) { + if (taskConfig.diffPublicOnly(context.getResources().getConfiguration()) != 0) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_STARTING_WINDOW, "addSplashScreen: creating context based on task Configuration %s", taskConfig); final Context overrideContext = context.createConfigurationContext(taskConfig); overrideContext.setTheme(theme); - context = overrideContext; + final TypedArray typedArray = overrideContext.obtainStyledAttributes( + com.android.internal.R.styleable.Window); + final int resId = typedArray.getResourceId(R.styleable.Window_windowBackground, 0); + try { + if (resId != 0 && overrideContext.getDrawable(resId) != null) { + // We want to use the windowBackground for the override context if it is + // available, otherwise we use the default one to make sure a themed starting + // window is displayed for the app. + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_STARTING_WINDOW, + "addSplashScreen: apply overrideConfig %s", + taskConfig); + context = overrideContext; + } + } catch (Resources.NotFoundException e) { + Slog.w(TAG, "failed creating starting window for overrideConfig at taskId: " + + taskId, e); + return null; + } + typedArray.recycle(); } return context; } @@ -352,17 +367,12 @@ public class SplashscreenContentDrawer { /** Extract the window background color from {@code attrs}. */ private static int peekWindowBGColor(Context context, SplashScreenWindowAttrs attrs) { Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "peekWindowBGColor"); - Drawable themeBGDrawable = null; + final Drawable themeBGDrawable; if (attrs.mWindowBgColor != 0) { themeBGDrawable = new ColorDrawable(attrs.mWindowBgColor); } else if (attrs.mWindowBgResId != 0) { - try { - themeBGDrawable = context.getDrawable(attrs.mWindowBgResId); - } catch (Resources.NotFoundException e) { - Slog.w(TAG, "Unable get drawable from resource", e); - } - } - if (themeBGDrawable == null) { + themeBGDrawable = context.getDrawable(attrs.mWindowBgResId); + } else { themeBGDrawable = createDefaultBackgroundDrawable(); Slog.w(TAG, "Window background does not exist, using " + themeBGDrawable); } @@ -633,7 +643,7 @@ public class SplashscreenContentDrawer { private class ShapeIconFactory extends BaseIconFactory { protected ShapeIconFactory(Context context, int fillResIconDpi, int iconBitmapSize) { - super(context, fillResIconDpi, iconBitmapSize); + super(context, fillResIconDpi, iconBitmapSize, true /* shapeDetection */); } } @@ -681,8 +691,7 @@ public class SplashscreenContentDrawer { // C. The background of the adaptive icon is grayscale, and the foreground of the // adaptive icon forms a certain contrast with the theme color. // D. Didn't specify icon background color. - if (iconForeground != null - && !iconColor.mIsBgComplex && mTmpAttrs.mIconBgColor == Color.TRANSPARENT + if (!iconColor.mIsBgComplex && mTmpAttrs.mIconBgColor == Color.TRANSPARENT && (isRgbSimilarInHsv(mThemeColor, iconColor.mBgColor) || (iconColor.mIsBgGrayscale && !isRgbSimilarInHsv(mThemeColor, iconColor.mFgColor)))) { diff --git a/wmshell/src/com/android/wm/shell/startingsurface/SplashscreenWindowCreator.java b/wmshell/src/com/android/wm/shell/startingsurface/SplashscreenWindowCreator.java index caed194c5f..e552e6cdac 100644 --- a/wmshell/src/com/android/wm/shell/startingsurface/SplashscreenWindowCreator.java +++ b/wmshell/src/com/android/wm/shell/startingsurface/SplashscreenWindowCreator.java @@ -53,7 +53,7 @@ import android.window.SplashScreenView; import android.window.StartingWindowInfo; import android.window.StartingWindowRemovalInfo; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.util.ContrastColorUtil; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.protolog.ShellProtoLogGroup; @@ -368,14 +368,9 @@ class SplashscreenWindowCreator extends AbsSplashWindowCreator { mStartingWindowRecordManager.addRecord(taskId, tView); } - private void removeWindowInner(@NonNull View decorView, StartingWindowRemovalInfo info, - boolean hideView) { + private void removeWindowInner(@NonNull View decorView, boolean hideView) { requestTopUi(false); - if (info.windowAnimationLeash != null && info.windowAnimationLeash.isValid()) { - info.windowAnimationLeash.release(); - } - if (decorView.getParent() == null) { - Slog.w(TAG, "This root view has no parent, never been added to a ViewRootImpl?"); + if (!decorView.isAttachedToWindow()) { return; } if (hideView) { @@ -456,22 +451,22 @@ class SplashscreenWindowCreator extends AbsSplashWindowCreator { if (mSplashView == null) { // shouldn't happen, the app window may be drawn earlier than starting window? Slog.e(TAG, "Found empty splash screen, remove!"); - removeWindowInner(mRootView, info, false); + removeWindowInner(mRootView, false); return true; } if (immediately || mSuggestType == STARTING_WINDOW_TYPE_LEGACY_SPLASH_SCREEN) { - removeWindowInner(mRootView, info, false); + removeWindowInner(mRootView, false); } else { if (info.playRevealAnimation) { mSplashscreenContentDrawer.applyExitAnimation(mSplashView, info.windowAnimationLeash, info.mainFrame, - () -> removeWindowInner(mRootView, info, true), + () -> removeWindowInner(mRootView, true), mCreateTime, info.roundedCornerRadius); } else { // the SplashScreenView has been copied to client, hide the view to skip // default exit animation - removeWindowInner(mRootView, info, true); + removeWindowInner(mRootView, true); } } return true; diff --git a/wmshell/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawer.java b/wmshell/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawer.java index cbe770b0eb..3353c7bd81 100644 --- a/wmshell/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawer.java +++ b/wmshell/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawer.java @@ -33,6 +33,7 @@ import android.hardware.display.DisplayManager; import android.util.SparseArray; import android.view.IWindow; import android.view.SurfaceControl; +import android.view.SurfaceSession; import android.view.WindowManager; import android.view.WindowlessWindowManager; import android.window.SplashScreenView; @@ -42,11 +43,11 @@ import android.window.StartingWindowRemovalInfo; import android.window.TaskSnapshot; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.launcher3.icons.IconProvider; import com.android.wm.shell.common.ShellExecutor; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.shared.annotations.ShellSplashscreenThread; /** @@ -95,12 +96,6 @@ public class StartingSurfaceDrawer { mWindowlessSplashWindowCreator.setSysuiProxy(sysuiProxy); } - boolean hasStartingWindow(int taskId, boolean windowless) { - if (windowless) { - return mWindowlessRecords.getRecord(taskId) != null; - } - return mWindowRecords.getRecord(taskId) != null; - } /** * Called when a task need a splash screen starting window. * @@ -209,7 +204,7 @@ public class StartingSurfaceDrawer { @Override protected SurfaceControl getParentSurface(IWindow window, WindowManager.LayoutParams attrs) { - final SurfaceControl.Builder builder = new SurfaceControl.Builder() + final SurfaceControl.Builder builder = new SurfaceControl.Builder(new SurfaceSession()) .setContainerLayer() .setName("Windowless window") .setHidden(false) diff --git a/wmshell/src/com/android/wm/shell/startingsurface/StartingWindowController.java b/wmshell/src/com/android/wm/shell/startingsurface/StartingWindowController.java index 6002011825..fa084c585a 100644 --- a/wmshell/src/com/android/wm/shell/startingsurface/StartingWindowController.java +++ b/wmshell/src/com/android/wm/shell/startingsurface/StartingWindowController.java @@ -22,50 +22,35 @@ import static android.window.StartingWindowInfo.STARTING_WINDOW_TYPE_SNAPSHOT; import static android.window.StartingWindowInfo.STARTING_WINDOW_TYPE_SOLID_COLOR_SPLASH_SCREEN; import static android.window.StartingWindowInfo.STARTING_WINDOW_TYPE_SPLASH_SCREEN; import static android.window.StartingWindowInfo.STARTING_WINDOW_TYPE_WINDOWLESS; -import static android.window.TransitionInfo.FLAG_BACK_GESTURE_ANIMATED; -import static android.window.TransitionInfo.FLAG_IS_BEHIND_STARTING_WINDOW; -import android.annotation.NonNull; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_STARTING_WINDOW; + import android.app.ActivityManager.RunningTaskInfo; import android.app.TaskInfo; import android.content.Context; import android.graphics.Color; -import android.os.IBinder; import android.os.Trace; -import android.util.ArrayMap; -import android.util.ArraySet; -import android.util.SparseArray; import android.util.SparseIntArray; -import android.view.SurfaceControl; import android.window.StartingWindowInfo; import android.window.StartingWindowInfo.StartingWindowType; import android.window.StartingWindowRemovalInfo; import android.window.TaskOrganizer; import android.window.TaskSnapshot; -import android.window.TransitionInfo; import androidx.annotation.BinderThread; import androidx.annotation.VisibleForTesting; import com.android.internal.annotations.GuardedBy; -import com.android.internal.protolog.ProtoLog; import com.android.internal.util.function.TriConsumer; import com.android.launcher3.icons.IconProvider; -import com.android.window.flags2.Flags; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.ExternalInterfaceBinder; import com.android.wm.shell.common.RemoteCallable; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SingleInstanceRemoteListener; -import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.TransactionPool; -import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.annotations.ShellMainThread; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.transition.Transitions; - -import java.util.ArrayList; /** * Implementation to draw the starting window to an application, and remove the starting window @@ -97,15 +82,11 @@ public class StartingWindowController implements RemoteCallable<StartingWindowCo private final ShellController mShellController; private final ShellTaskOrganizer mShellTaskOrganizer; private final ShellExecutor mSplashScreenExecutor; - private final ShellExecutor mShellMainExecutor; - private final Transitions mTransitions; /** * Need guarded because it has exposed to StartingSurface */ @GuardedBy("mTaskBackgroundColors") private final SparseIntArray mTaskBackgroundColors = new SparseIntArray(); - @VisibleForTesting - final RemoveStartingObserver mRemoveStartingObserver = new RemoveStartingObserver(); public StartingWindowController(Context context, ShellInit shellInit, @@ -114,9 +95,7 @@ public class StartingWindowController implements RemoteCallable<StartingWindowCo ShellExecutor splashScreenExecutor, StartingWindowTypeAlgorithm startingWindowTypeAlgorithm, IconProvider iconProvider, - TransactionPool pool, - ShellExecutor mainExecutor, - Transitions transitions) { + TransactionPool pool) { mContext = context; mShellController = shellController; mShellTaskOrganizer = shellTaskOrganizer; @@ -124,8 +103,6 @@ public class StartingWindowController implements RemoteCallable<StartingWindowCo iconProvider, pool); mStartingWindowTypeAlgorithm = startingWindowTypeAlgorithm; mSplashScreenExecutor = splashScreenExecutor; - mShellMainExecutor = mainExecutor; - mTransitions = transitions; shellInit.addInitCallback(this::onInit, this); } @@ -142,196 +119,8 @@ public class StartingWindowController implements RemoteCallable<StartingWindowCo private void onInit() { mShellTaskOrganizer.initStartingWindow(this); - mShellController.addExternalInterface(IStartingWindow.DESCRIPTOR, + mShellController.addExternalInterface(KEY_EXTRA_SHELL_STARTING_WINDOW, this::createExternalInterface, this); - if (Flags.removeStartingInTransition()) { - mTransitions.registerObserver(mRemoveStartingObserver); - } - } - - @VisibleForTesting - @ShellMainThread - class RemoveStartingObserver implements Transitions.TransitionObserver { - /** Task id -> removal info */ - private final SparseArray<WindowRecord> mWindowRecords = new SparseArray<>(); - /** Transition -> removal */ - private final ArrayMap<IBinder, UncertainTracker> mUncertainTrackers = new ArrayMap<>(); - - @Override - public void onTransitionReady(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction) { - if (!hasPendingRemoval()) { - return; - } - final ArrayList<WindowRecord> records = findRecords(transition); - if (records != null) { - startTransaction.addTransactionCommittedListener(mShellMainExecutor, () -> { - for (int i = records.size() - 1; i >= 0; --i) { - final int taskId = records.get(i).mTaskId; - final WindowRecord wr = mWindowRecords.get(taskId); - if (wr == null) { - return; - } - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_REMOVE_STARTING_TRACKER, - "RSO:Transaction applied for task=%d", taskId); - wr.mTransactionApplied = true; - executeRemovalIfPossible(wr); - } - }); - return; - } - - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - final TransitionInfo.Change c = info.getChanges().get(i); - if ((c.hasFlags(FLAG_IS_BEHIND_STARTING_WINDOW) - || c.hasFlags(FLAG_BACK_GESTURE_ANIMATED)) - && TransitionUtil.isOpeningMode(c.getMode())) { - // Uncertain condition, this is activity transition so we don't know which - // task the starting window belongs. - final UncertainTracker tracker = new UncertainTracker( - () -> uncertainTrackComplete(transition)); - mUncertainTrackers.put(transition, tracker); - startTransaction.addTransactionCommittedListener(mShellMainExecutor, - tracker); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_REMOVE_STARTING_TRACKER, - "RSO:Create uncertain transition tracker=%s", tracker); - break; - } - } - } - - @Override - public void onTransitionFinished(@NonNull IBinder transition, boolean aborted) { - if (!hasPendingRemoval()) { - return; - } - // Ensure nothing left. - final ArrayList<WindowRecord> records = findRecords(transition); - if (records != null) { - for (int i = records.size() - 1; i >= 0; --i) { - final WindowRecord r = records.get(i); - r.mTransactionApplied = true; - executeRemovalIfPossible(r); - } - } else { - uncertainTrackComplete(transition); - } - } - - void onAddingWindow(int taskId, IBinder transitionToken, IBinder appToken) { - final WindowRecord wr = mWindowRecords.get(taskId); - if (wr != null) { - wr.addAppToken(appToken); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_REMOVE_STARTING_TRACKER, - "RSO:Start tracking appToken=%s for task=%d", appToken, taskId); - } else { - mWindowRecords.put(taskId, new WindowRecord(taskId, transitionToken, appToken)); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_REMOVE_STARTING_TRACKER, - "RSO:Start tracking for task=%d", taskId); - } - } - - // Stop tracking because the window is not created. - void forceRemoveWindow(int taskId, IBinder appToken) { - final WindowRecord wr = mWindowRecords.get(taskId); - if (wr == null || !wr.removeAppToken(appToken)) { - return; - } - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_REMOVE_STARTING_TRACKER, - "RSO:Window wasn't created, removal record task=%d", taskId); - mWindowRecords.remove(taskId); - } - - boolean hasPendingRemoval() { - return mWindowRecords.size() != 0; - } - - ArrayList<WindowRecord> findRecords(IBinder transition) { - ArrayList<WindowRecord> records = null; - for (int i = mWindowRecords.size() - 1; i >= 0; --i) { - final WindowRecord record = mWindowRecords.valueAt(i); - if (record.mTransition == transition) { - if (records == null) { - records = new ArrayList<>(); - } - records.add(record); - } - } - return records; - } - - void requestRemoval(int taskId, StartingWindowRemovalInfo removalInfo) { - final WindowRecord wr = mWindowRecords.get(taskId); - if (wr == null) { - return; - } - wr.mStartingWindowRemovalInfo = removalInfo; - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_REMOVE_STARTING_TRACKER, - "RSO:Receive removal info for task=%d", taskId); - executeRemovalIfPossible(wr); - } - - void executeRemovalIfPossible(WindowRecord record) { - if (record.mStartingWindowRemovalInfo == null) { - return; - } - if (record.mTransition == null - || (record.mTransactionApplied && mUncertainTrackers.isEmpty())) { - mWindowRecords.remove(record.mTaskId); - removeStartingWindowInner(record.mStartingWindowRemovalInfo); - } - } - - private void uncertainTrackComplete(IBinder transition) { - final boolean hasRemove = mUncertainTrackers.remove(transition) != null; - if (!hasRemove || !mUncertainTrackers.isEmpty()) { - return; - } - // check if anything task left due to uncertain transition. - for (int i = mWindowRecords.size() - 1; i >= 0; --i) { - final WindowRecord record = mWindowRecords.valueAt(i); - executeRemovalIfPossible(record); - } - } - - static class UncertainTracker implements SurfaceControl.TransactionCommittedListener { - private final Runnable mCleanUp; - UncertainTracker(Runnable cleanUp) { - mCleanUp = cleanUp; - } - - @Override - public void onTransactionCommitted() { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_REMOVE_STARTING_TRACKER, - "RSO:Uncertain transition tracker complete=%s", this); - mCleanUp.run(); - } - } - - private static class WindowRecord { - final int mTaskId; - final IBinder mTransition; - boolean mTransactionApplied; - StartingWindowRemovalInfo mStartingWindowRemovalInfo; - - final ArraySet<IBinder> mAppTokens = new ArraySet<>(); - - WindowRecord(int taskId, IBinder transition, IBinder appToken) { - mTaskId = taskId; - mTransition = transition; - addAppToken(appToken); - } - - void addAppToken(IBinder token) { - mAppTokens.add(token); - } - - boolean removeAppToken(IBinder token) { - mAppTokens.remove(token); - return mAppTokens.isEmpty(); - } - } } @Override @@ -363,19 +152,13 @@ public class StartingWindowController implements RemoteCallable<StartingWindowCo * Called when a task need a starting window. */ public void addStartingWindow(StartingWindowInfo windowInfo) { - if (Flags.removeStartingInTransition()) { - mShellMainExecutor.execute(() -> mRemoveStartingObserver.onAddingWindow( - windowInfo.taskInfo.taskId, windowInfo.transitionToken, windowInfo.appToken)); - } mSplashScreenExecutor.execute(() -> { Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "addStartingWindow"); final int suggestionType = mStartingWindowTypeAlgorithm.getSuggestedWindowType( windowInfo); final RunningTaskInfo runningTaskInfo = windowInfo.taskInfo; - final int taskId = runningTaskInfo.taskId; - final boolean isWindowless = suggestionType == STARTING_WINDOW_TYPE_WINDOWLESS; - if (isWindowless) { + if (suggestionType == STARTING_WINDOW_TYPE_WINDOWLESS) { mStartingSurfaceDrawer.addWindowlessStartingSurface(windowInfo); } else if (isSplashScreenType(suggestionType)) { mStartingSurfaceDrawer.addSplashScreenStartingWindow(windowInfo, suggestionType); @@ -385,6 +168,7 @@ public class StartingWindowController implements RemoteCallable<StartingWindowCo } if (suggestionType != STARTING_WINDOW_TYPE_NONE && suggestionType != STARTING_WINDOW_TYPE_WINDOWLESS) { + int taskId = runningTaskInfo.taskId; int color = mStartingSurfaceDrawer .getStartingWindowBackgroundColorForTask(taskId); if (color != Color.TRANSPARENT) { @@ -396,12 +180,7 @@ public class StartingWindowController implements RemoteCallable<StartingWindowCo mTaskLaunchingCallback.accept(taskId, suggestionType, color); } } - if (Flags.removeStartingInTransition()) { - if (!mStartingSurfaceDrawer.hasStartingWindow(taskId, isWindowless)) { - mShellMainExecutor.execute(() -> - mRemoveStartingObserver.forceRemoveWindow(taskId, windowInfo.appToken)); - } - } + Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER); }); } @@ -437,16 +216,6 @@ public class StartingWindowController implements RemoteCallable<StartingWindowCo * Called when the content of a task is ready to show, starting window can be removed. */ public void removeStartingWindow(StartingWindowRemovalInfo removalInfo) { - final int taskId = removalInfo.taskId; - if (Flags.removeStartingInTransition()) { - mShellMainExecutor.execute(() -> - mRemoveStartingObserver.requestRemoval(taskId, removalInfo)); - } else { - removeStartingWindowInner(removalInfo); - } - } - - void removeStartingWindowInner(StartingWindowRemovalInfo removalInfo) { mSplashScreenExecutor.execute(() -> mStartingSurfaceDrawer.removeStartingWindow( removalInfo)); if (!removalInfo.windowlessSurface) { diff --git a/wmshell/src/com/android/wm/shell/startingsurface/TaskSnapshotWindow.java b/wmshell/src/com/android/wm/shell/startingsurface/TaskSnapshotWindow.java index 3112452e01..66b3553bea 100644 --- a/wmshell/src/com/android/wm/shell/startingsurface/TaskSnapshotWindow.java +++ b/wmshell/src/com/android/wm/shell/startingsurface/TaskSnapshotWindow.java @@ -21,11 +21,16 @@ import static android.graphics.Color.WHITE; import static android.os.Trace.TRACE_TAG_WINDOW_MANAGER; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_STARTING; +import static com.android.window.flags.Flags.windowSessionRelayoutInfo; + import android.annotation.BinderThread; import android.annotation.NonNull; +import android.annotation.Nullable; import android.app.ActivityManager; import android.app.ActivityManager.TaskDescription; import android.graphics.Paint; +import android.graphics.Rect; +import android.os.Bundle; import android.os.IBinder; import android.os.RemoteException; import android.os.Trace; @@ -40,12 +45,13 @@ import android.view.View; import android.view.WindowManager; import android.view.WindowManagerGlobal; import android.view.WindowRelayoutResult; +import android.window.ActivityWindowInfo; import android.window.ClientWindowFrames; import android.window.SnapshotDrawerUtils; import android.window.StartingWindowInfo; import android.window.TaskSnapshot; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.internal.view.BaseIWindow; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.protolog.ShellProtoLogGroup; @@ -86,6 +92,8 @@ public class TaskSnapshotWindow { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_STARTING_WINDOW, "create taskSnapshot surface for task: %d", taskId); + final InsetsState topWindowInsetsState = info.topOpaqueWindowInsetsState; + final WindowManager.LayoutParams layoutParams = SnapshotDrawerUtils.createLayoutParameters( info, TITLE_FORMAT + taskId, TYPE_APPLICATION_STARTING, snapshot.getHardwareBuffer().getFormat(), appToken); @@ -114,13 +122,13 @@ public class TaskSnapshotWindow { final InsetsState tmpInsetsState = new InsetsState(); final InputChannel tmpInputChannel = new InputChannel(); + final float[] sizeCompatScale = { 1f }; try { Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "TaskSnapshot#addToDisplay"); - final WindowRelayoutResult addRes = new WindowRelayoutResult(new ClientWindowFrames(), - new MergedConfiguration(), tmpInsetsState, tmpControls); final int res = session.addToDisplay(window, layoutParams, View.GONE, displayId, - info.requestedVisibleTypes, tmpInputChannel, addRes); + info.requestedVisibleTypes, tmpInputChannel, tmpInsetsState, tmpControls, + new Rect(), sizeCompatScale); Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER); if (res < 0) { Slog.w(TAG, "Failed to add snapshot starting window res=" + res); @@ -131,24 +139,25 @@ public class TaskSnapshotWindow { } try { Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "TaskSnapshot#relayout"); - final WindowRelayoutResult outRelayoutResult = new WindowRelayoutResult(tmpFrames, - tmpMergedConfiguration, tmpInsetsState, tmpControls); - session.relayout(window, layoutParams, -1, -1, View.VISIBLE, 0, 0, 0, - outRelayoutResult, surfaceControl); + if (windowSessionRelayoutInfo()) { + final WindowRelayoutResult outRelayoutResult = new WindowRelayoutResult(tmpFrames, + tmpMergedConfiguration, surfaceControl, tmpInsetsState, tmpControls); + session.relayout(window, layoutParams, -1, -1, View.VISIBLE, 0, 0, 0, + outRelayoutResult); + } else { + session.relayoutLegacy(window, layoutParams, -1, -1, View.VISIBLE, 0, 0, 0, + tmpFrames, tmpMergedConfiguration, surfaceControl, tmpInsetsState, + tmpControls, new Bundle()); + } Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER); } catch (RemoteException e) { snapshotSurface.clearWindowSynced(); Slog.w(TAG, "Failed to relayout snapshot starting window"); return null; } - if (!surfaceControl.isValid()) { - snapshotSurface.clearWindowSynced(); - Slog.w(TAG, "Unable to draw snapshot, no valid surface"); - return null; - } - SnapshotDrawerUtils.drawSnapshotOnSurface(layoutParams, surfaceControl, snapshot, - info.taskBounds, true /* releaseAfterDraw */); + SnapshotDrawerUtils.drawSnapshotOnSurface(info, layoutParams, surfaceControl, snapshot, + info.taskBounds, topWindowInsetsState, true /* releaseAfterDraw */); snapshotSurface.mHasDrawn = true; snapshotSurface.reportDrawn(); @@ -211,17 +220,18 @@ public class TaskSnapshotWindow { @BinderThread @Override - public void resized(WindowRelayoutResult layout, boolean reportDraw, boolean forceLayout, - int displayId, boolean syncWithBuffers, boolean dragResizing) { + public void resized(ClientWindowFrames frames, boolean reportDraw, + MergedConfiguration mergedConfiguration, InsetsState insetsState, + boolean forceLayout, boolean alwaysConsumeSystemBars, int displayId, int seqId, + boolean dragResizing, @Nullable ActivityWindowInfo activityWindowInfo) { final TaskSnapshotWindow snapshot = mOuter.get(); if (snapshot == null) { return; } snapshot.mSplashScreenExecutor.execute(() -> { - final boolean clearSnapshot = layout.mergedConfiguration != null - && (snapshot.mOrientationOnCreation != layout.mergedConfiguration - .getMergedConfiguration().orientation); - if (clearSnapshot) { + if (mergedConfiguration != null + && snapshot.mOrientationOnCreation + != mergedConfiguration.getMergedConfiguration().orientation) { // The orientation of the screen is changing. We better remove the snapshot // ASAP as we are going to wait on the new window in any case to unfreeze // the screen, and the starting window is not needed anymore. diff --git a/wmshell/src/com/android/wm/shell/startingsurface/WindowlessSnapshotWindowCreator.java b/wmshell/src/com/android/wm/shell/startingsurface/WindowlessSnapshotWindowCreator.java index f652e3149d..5c814dcc9b 100644 --- a/wmshell/src/com/android/wm/shell/startingsurface/WindowlessSnapshotWindowCreator.java +++ b/wmshell/src/com/android/wm/shell/startingsurface/WindowlessSnapshotWindowCreator.java @@ -26,6 +26,7 @@ import android.content.Context; import android.graphics.Rect; import android.hardware.display.DisplayManager; import android.view.Display; +import android.view.InsetsState; import android.view.SurfaceControl; import android.view.SurfaceControlViewHost; import android.view.WindowManager; @@ -35,7 +36,7 @@ import android.window.StartingWindowInfo; import android.window.TaskSnapshot; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.TransactionPool; +import com.android.wm.shell.common.TransactionPool; class WindowlessSnapshotWindowCreator { private static final int DEFAULT_FADEOUT_DURATION = 233; @@ -72,21 +73,22 @@ class WindowlessSnapshotWindowCreator { final Display display = mDisplayManager.getDisplay(runningTaskInfo.displayId); final StartingSurfaceDrawer.WindowlessStartingWindow wlw = new StartingSurfaceDrawer.WindowlessStartingWindow( - mContext.getResources().getConfiguration(), rootSurface); + runningTaskInfo.configuration, rootSurface); final SurfaceControlViewHost mViewHost = new SurfaceControlViewHost( mContext, display, wlw, "WindowlessSnapshotWindowCreator"); final Rect windowBounds = runningTaskInfo.configuration.windowConfiguration.getBounds(); + final InsetsState topWindowInsetsState = info.topOpaqueWindowInsetsState; final FrameLayout rootLayout = new FrameLayout( mSplashscreenContentDrawer.createViewContextWrapper(mContext)); mViewHost.setView(rootLayout, lp); - SnapshotDrawerUtils.drawSnapshotOnSurface(lp, wlw.mChildSurface, snapshot, - windowBounds, false /* releaseAfterDraw */); + SnapshotDrawerUtils.drawSnapshotOnSurface(info, lp, wlw.mChildSurface, snapshot, + windowBounds, topWindowInsetsState, false /* releaseAfterDraw */); final ActivityManager.TaskDescription taskDescription = SnapshotDrawerUtils.getOrCreateTaskDescription(runningTaskInfo); - final SnapshotWindowRecord record = new SnapshotWindowRecord(mViewHost, rootSurface, - wlw.mChildSurface, taskDescription.getBackgroundColor(), snapshot.hasImeSurface(), + final SnapshotWindowRecord record = new SnapshotWindowRecord(mViewHost, wlw.mChildSurface, + taskDescription.getBackgroundColor(), snapshot.hasImeSurface(), runningTaskInfo.topActivityType, removeExecutor, taskId, mStartingWindowRecordManager); mStartingWindowRecordManager.addRecord(taskId, record); @@ -96,16 +98,14 @@ class WindowlessSnapshotWindowCreator { private class SnapshotWindowRecord extends StartingSurfaceDrawer.SnapshotRecord { private SurfaceControlViewHost mViewHost; private SurfaceControl mChildSurface; - private SurfaceControl mRootSurface; private final boolean mHasImeSurface; - SnapshotWindowRecord(SurfaceControlViewHost viewHost, SurfaceControl rootSurface, - SurfaceControl childSurface, int bgColor, boolean hasImeSurface, int activityType, + SnapshotWindowRecord(SurfaceControlViewHost viewHost, SurfaceControl childSurface, + int bgColor, boolean hasImeSurface, int activityType, ShellExecutor removeExecutor, int id, StartingSurfaceDrawer.StartingWindowRecordManager recordManager) { super(activityType, removeExecutor, id, recordManager); mViewHost = viewHost; - mRootSurface = rootSurface; mChildSurface = childSurface; mBGColor = bgColor; mHasImeSurface = hasImeSurface; @@ -147,10 +147,6 @@ class WindowlessSnapshotWindowCreator { mTransactionPool.release(t); mChildSurface = null; } - if (mRootSurface != null && mRootSurface.isValid()) { - mRootSurface.release(); - } - mRootSurface = null; if (mViewHost != null) { mViewHost.release(); mViewHost = null; diff --git a/wmshell/src/com/android/wm/shell/startingsurface/WindowlessSplashWindowCreator.java b/wmshell/src/com/android/wm/shell/startingsurface/WindowlessSplashWindowCreator.java index e1d7600587..98a8031285 100644 --- a/wmshell/src/com/android/wm/shell/startingsurface/WindowlessSplashWindowCreator.java +++ b/wmshell/src/com/android/wm/shell/startingsurface/WindowlessSplashWindowCreator.java @@ -16,6 +16,7 @@ package com.android.wm.shell.startingsurface; +import static android.graphics.Color.WHITE; import static android.window.StartingWindowInfo.STARTING_WINDOW_TYPE_SPLASH_SCREEN; import android.app.ActivityManager; @@ -36,7 +37,7 @@ import android.window.StartingWindowInfo; import android.window.StartingWindowRemovalInfo; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.TransactionPool; +import com.android.wm.shell.common.TransactionPool; class WindowlessSplashWindowCreator extends AbsSplashWindowCreator { @@ -68,15 +69,14 @@ class WindowlessSplashWindowCreator extends AbsSplashWindowCreator { // Can't show splash screen on requested display, so skip showing at all. return; } - final int theme = getSplashScreenTheme(0 /* splashScreenThemeResId */, activityInfo); final Context myContext = SplashscreenContentDrawer.createContext(mContext, windowInfo, - theme, STARTING_WINDOW_TYPE_SPLASH_SCREEN, mDisplayManager); + 0 /* theme */, STARTING_WINDOW_TYPE_SPLASH_SCREEN, mDisplayManager); if (myContext == null) { return; } final StartingSurfaceDrawer.WindowlessStartingWindow wlw = new StartingSurfaceDrawer.WindowlessStartingWindow( - mContext.getResources().getConfiguration(), rootSurface); + taskInfo.configuration, rootSurface); final SurfaceControlViewHost viewHost = new SurfaceControlViewHost( myContext, display, wlw, "WindowlessSplashWindowCreator"); final String title = "Windowless Splash " + taskInfo.taskId; @@ -86,11 +86,19 @@ class WindowlessSplashWindowCreator extends AbsSplashWindowCreator { final Rect windowBounds = taskInfo.configuration.windowConfiguration.getBounds(); lp.width = windowBounds.width(); lp.height = windowBounds.height(); + final ActivityManager.TaskDescription taskDescription; + if (taskInfo.taskDescription != null) { + taskDescription = taskInfo.taskDescription; + } else { + taskDescription = new ActivityManager.TaskDescription(); + taskDescription.setBackgroundColor(WHITE); + } final FrameLayout rootLayout = new FrameLayout( - mSplashscreenContentDrawer.createViewContextWrapper(myContext)); + mSplashscreenContentDrawer.createViewContextWrapper(mContext)); viewHost.setView(rootLayout, lp); - final int bgColor = mSplashscreenContentDrawer.estimateTaskBackgroundColor(myContext); + + final int bgColor = taskDescription.getBackgroundColor(); final SplashScreenView splashScreenView = mSplashscreenContentDrawer .makeSimpleSplashScreenContentView(myContext, windowInfo, bgColor); rootLayout.addView(splashScreenView); diff --git a/wmshell/src/com/android/wm/shell/startingsurface/phone/PhoneStartingWindowTypeAlgorithm.java b/wmshell/src/com/android/wm/shell/startingsurface/phone/PhoneStartingWindowTypeAlgorithm.java index 2036d9c13f..72fc8686f6 100644 --- a/wmshell/src/com/android/wm/shell/startingsurface/phone/PhoneStartingWindowTypeAlgorithm.java +++ b/wmshell/src/com/android/wm/shell/startingsurface/phone/PhoneStartingWindowTypeAlgorithm.java @@ -35,7 +35,7 @@ import static android.window.StartingWindowInfo.TYPE_PARAMETER_WINDOWLESS; import android.window.StartingWindowInfo; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.startingsurface.StartingWindowTypeAlgorithm; diff --git a/wmshell/src/com/android/wm/shell/sysui/ShellCommandHandler.java b/wmshell/src/com/android/wm/shell/sysui/ShellCommandHandler.java index aeb65c00a5..2e6ddc3639 100644 --- a/wmshell/src/com/android/wm/shell/sysui/ShellCommandHandler.java +++ b/wmshell/src/com/android/wm/shell/sysui/ShellCommandHandler.java @@ -18,7 +18,7 @@ package com.android.wm.shell.sysui; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_INIT; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import java.io.PrintWriter; import java.util.Arrays; @@ -28,7 +28,7 @@ import java.util.function.BiConsumer; /** * An entry point into the shell for dumping shell internal state and running adb commands. * - * Use with {@code adb shell wm shell <args>}. + * Use with {@code adb shell dumpsys activity service SystemUIService WMShell ...}. */ public final class ShellCommandHandler { private static final String TAG = ShellCommandHandler.class.getSimpleName(); @@ -121,6 +121,8 @@ public final class ShellCommandHandler { } pw.println(" help"); pw.println(" Print this help text."); + pw.println(" <no arguments provided>"); + pw.println(" Dump all Window Manager Shell internal state"); return true; } } diff --git a/wmshell/src/com/android/wm/shell/sysui/ShellController.java b/wmshell/src/com/android/wm/shell/sysui/ShellController.java index 299ef2ee6f..5ced1fb41a 100644 --- a/wmshell/src/com/android/wm/shell/sysui/ShellController.java +++ b/wmshell/src/com/android/wm/shell/sysui/ShellController.java @@ -22,20 +22,16 @@ import static android.content.pm.ActivityInfo.CONFIG_LAYOUT_DIRECTION; import static android.content.pm.ActivityInfo.CONFIG_LOCALE; import static android.content.pm.ActivityInfo.CONFIG_SMALLEST_SCREEN_SIZE; import static android.content.pm.ActivityInfo.CONFIG_UI_MODE; -import static android.window.DesktopExperienceFlags.DesktopExperienceFlag; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_INIT; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_SYSUI_EVENTS; -import android.app.ActivityManager; import android.content.Context; import android.content.pm.ActivityInfo; import android.content.pm.UserInfo; import android.content.res.Configuration; import android.graphics.Rect; import android.os.Bundle; -import android.os.UserHandle; -import android.os.UserManager; import android.util.ArrayMap; import android.view.InsetsSource; import android.view.InsetsState; @@ -44,18 +40,15 @@ import android.view.SurfaceControlRegistry; import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.Flags; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.DisplayInsetsController.OnInsetsChangedListener; import com.android.wm.shell.common.ExternalInterfaceBinder; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.shared.annotations.ExternalThread; -import com.android.wm.shell.sysui.ShellCommandHandler.ShellCommandActionHandler; import java.io.PrintWriter; import java.util.List; -import java.util.Objects; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.Executor; @@ -67,16 +60,11 @@ import java.util.function.Supplier; public class ShellController { private static final String TAG = ShellController.class.getSimpleName(); - public static final DesktopExperienceFlag FIX_MISSING_USER_CHANGE_CALLBACKS_FLAG = - new DesktopExperienceFlag(Flags::fixMissingUserChangeCallbacks, true, - Flags.FLAG_FIX_MISSING_USER_CHANGE_CALLBACKS); - private final Context mContext; private final ShellInit mShellInit; private final ShellCommandHandler mShellCommandHandler; private final ShellExecutor mMainExecutor; private final DisplayInsetsController mDisplayInsetsController; - private final UserManager mUserManager; private final ShellInterfaceImpl mImpl = new ShellInterfaceImpl(); private final CopyOnWriteArrayList<ConfigurationChangeListener> mConfigChangeListeners = @@ -94,9 +82,6 @@ public class ShellController { private ArrayMap<String, ExternalInterfaceBinder> mExternalInterfaces = new ArrayMap<>(); private Configuration mLastConfiguration; - private int mUserId; - private Context mUserContext; - private List<UserInfo> mProfiles; private OnInsetsChangedListener mInsetsChangeListener = new OnInsetsChangedListener() { private InsetsState mInsetsState = new InsetsState(); @@ -127,51 +112,24 @@ public class ShellController { } }; - private ShellCommandActionHandler mDumpCommandHandler = new ShellCommandActionHandler() { - @Override - public boolean onShellCommand(String[] args, PrintWriter pw) { - handleDump(pw); - return true; - } - - @Override - public void printShellCommandHelp(PrintWriter pw, String prefix) { - pw.println(prefix + "Dump all Window Manager Shell internal state"); - } - }; - public ShellController(Context context, ShellInit shellInit, ShellCommandHandler shellCommandHandler, DisplayInsetsController displayInsetsController, - UserManager userManager, ShellExecutor mainExecutor) { mContext = context; mShellInit = shellInit; mShellCommandHandler = shellCommandHandler; mDisplayInsetsController = displayInsetsController; - mUserManager = userManager; mMainExecutor = mainExecutor; shellInit.addInitCallback(this::onInit, this); - if (FIX_MISSING_USER_CHANGE_CALLBACKS_FLAG.isTrue()) { - final int currentUserId = ActivityManager.getCurrentUser(); - updateCurrentUser(currentUserId, getOrCreateUserContext(currentUserId)); - updateProfiles(getUserProfiles(currentUserId)); - } } private void onInit() { - mShellCommandHandler.addCommandCallback("dump", mDumpCommandHandler, this); mShellCommandHandler.addDumpCallback(this::dump, this); mDisplayInsetsController.addInsetsChangedListener( mContext.getDisplayId(), mInsetsChangeListener); - if (FIX_MISSING_USER_CHANGE_CALLBACKS_FLAG.isTrue()) { - // Update current user again, in case it changed between the constructor and |onInit|. - final int currentUserId = ActivityManager.getCurrentUser(); - updateCurrentUser(currentUserId, getOrCreateUserContext(currentUserId)); - updateProfiles(getUserProfiles(currentUserId)); - } } /** @@ -220,10 +178,6 @@ public class ShellController { public void addUserChangeListener(UserChangeListener listener) { mUserChangeListeners.remove(listener); mUserChangeListeners.add(listener); - if (FIX_MISSING_USER_CHANGE_CALLBACKS_FLAG.isTrue()) { - listener.onUserChanged(mUserId, mUserContext); - listener.onUserProfilesChanged(mProfiles); - } } /** @@ -262,10 +216,7 @@ public class ShellController { public void createExternalInterfaces(Bundle output) { // Invalidate the old binders for (int i = 0; i < mExternalInterfaces.size(); i++) { - final ExternalInterfaceBinder extInterface = mExternalInterfaces.valueAt(i); - ProtoLog.v(WM_SHELL_SYSUI_EVENTS, "Invalidating external interface: %s", - extInterface.getClass().getSimpleName()); - extInterface.invalidate(); + mExternalInterfaces.valueAt(i).invalidate(); } mExternalInterfaces.clear(); @@ -278,18 +229,6 @@ public class ShellController { } } - /** Returns the current user id. */ - public int getCurrentUserId() { - return mUserId; - } - - /** Returns the current user id. */ - @VisibleForTesting - @NonNull - List<UserInfo> getCurrentUserProfiles() { - return mProfiles; - } - @VisibleForTesting void onConfigurationChanged(Configuration newConfig) { // The initial config is send on startup and doesn't trigger listener callbacks @@ -349,11 +288,6 @@ public class ShellController { @VisibleForTesting void onUserChanged(int newUserId, @NonNull Context userContext) { - if (FIX_MISSING_USER_CHANGE_CALLBACKS_FLAG.isTrue() - && !updateCurrentUser(newUserId, userContext)) { - // No change, do not notify listeners. - return; - } ProtoLog.v(WM_SHELL_SYSUI_EVENTS, "User changed: id=%d", newUserId); for (UserChangeListener listener : mUserChangeListeners) { listener.onUserChanged(newUserId, userContext); @@ -362,10 +296,6 @@ public class ShellController { @VisibleForTesting void onUserProfilesChanged(@NonNull List<UserInfo> profiles) { - if (FIX_MISSING_USER_CHANGE_CALLBACKS_FLAG.isTrue() && !updateProfiles(profiles)) { - // No change, do not notify listeners. - return; - } ProtoLog.v(WM_SHELL_SYSUI_EVENTS, "User profiles changed"); for (UserChangeListener listener : mUserChangeListeners) { listener.onUserProfilesChanged(profiles); @@ -401,42 +331,9 @@ public class ShellController { SurfaceControlRegistry.dump(100 /* limit */, false /* runGc */, pw); } - /** Updates the current user and returns {@code true} if it changed. */ - private boolean updateCurrentUser(int newUserId, @NonNull Context userContext) { - if (mUserId == newUserId && mUserContext != null - && mUserContext.getUserId() == userContext.getUserId()) { - return false; - } - mUserId = newUserId; - mUserContext = userContext; - return true; - } - - /** Updates the current user profiles and returns {@code true} if they changed. */ - private boolean updateProfiles(@NonNull List<UserInfo> profiles) { - if (Objects.equals(mProfiles, profiles)) return false; - mProfiles = profiles; - return true; - } - - @NonNull - private Context getOrCreateUserContext(int userId) { - if (mUserContext != null && mUserContext.getUserId() == userId) { - return mUserContext; - } - return mContext.createContextAsUser(UserHandle.of(userId), 0 /* flags */); - } - - @NonNull - private List<UserInfo> getUserProfiles(int userId) { - return mUserManager.getProfiles(userId); - } - public void dump(@NonNull PrintWriter pw, String prefix) { final String innerPrefix = prefix + " "; pw.println(prefix + TAG); - pw.println(innerPrefix + "mUserId=" + mUserId); - pw.println(innerPrefix + "mProfiles=" + mProfiles); pw.println(innerPrefix + "mConfigChangeListeners=" + mConfigChangeListeners.size()); pw.println(innerPrefix + "mLastConfiguration=" + mLastConfiguration); pw.println(innerPrefix + "mKeyguardChangeListeners=" + mKeyguardChangeListeners.size()); diff --git a/wmshell/src/com/android/wm/shell/sysui/ShellInit.java b/wmshell/src/com/android/wm/shell/sysui/ShellInit.java index 1140c82a7a..2e2f569a52 100644 --- a/wmshell/src/com/android/wm/shell/sysui/ShellInit.java +++ b/wmshell/src/com/android/wm/shell/sysui/ShellInit.java @@ -25,9 +25,8 @@ import android.view.SurfaceControl; import androidx.annotation.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.protolog.ShellProtoLogGroup; import java.util.ArrayList; @@ -48,7 +47,6 @@ public class ShellInit { public ShellInit(ShellExecutor mainExecutor) { mMainExecutor = mainExecutor; - ProtoLog.init(ShellProtoLogGroup.values()); } /** diff --git a/wmshell/src/com/android/wm/shell/taskview/TaskView.java b/wmshell/src/com/android/wm/shell/taskview/TaskView.java index 67242a661a..a85188a9e0 100644 --- a/wmshell/src/com/android/wm/shell/taskview/TaskView.java +++ b/wmshell/src/com/android/wm/shell/taskview/TaskView.java @@ -29,7 +29,6 @@ import android.content.pm.ShortcutInfo; import android.graphics.Insets; import android.graphics.Rect; import android.graphics.Region; -import android.os.Binder; import android.os.Handler; import android.view.SurfaceControl; import android.view.SurfaceHolder; @@ -55,12 +54,6 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, */ default void onInitialized() {} - /** - * Only called when the surface has been created, and the task view has already been - * initialized (and onInitialized has been called) - */ - default void onSurfaceAlreadyCreated() {} - /** Called when the container can no longer launch activities. */ default void onReleased() {} @@ -73,9 +66,6 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, /** Called when a task is about to be removed from the stack inside the container. */ default void onTaskRemovalStarted(int taskId) {} - /** Called when the task's info has changed. */ - default void onTaskInfoChanged(ActivityManager.RunningTaskInfo taskInfo) {} - /** Called when a task is created inside the container. */ default void onBackPressedOnTaskRoot(int taskId) {} } @@ -84,17 +74,13 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, private final Rect mTmpRootRect = new Rect(); private final int[] mTmpLocation = new int[2]; private final Rect mBoundsOnScreen = new Rect(); - private final TaskViewController mTaskViewController; private final TaskViewTaskController mTaskViewTaskController; private Region mObscuredTouchRegion; private Insets mCaptionInsets; private Handler mHandler; - private boolean mIsMovingWindows; - public TaskView(Context context, TaskViewController taskViewController, - TaskViewTaskController taskViewTaskController) { + public TaskView(Context context, TaskViewTaskController taskViewTaskController) { super(context, null, 0, 0, true /* disableBackgroundLayer */); - mTaskViewController = taskViewController; mTaskViewTaskController = taskViewTaskController; // TODO(b/266736992): Think about a better way to set the TaskViewBase on the // TaskViewTaskController and vice-versa @@ -103,38 +89,6 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, getHolder().addCallback(this); } - public TaskViewTaskController getController() { - return mTaskViewTaskController; - } - - /** - * Sets whether this task view is starting to move windows or just finished moving windows. - * - * <p>This is intended to be used temporarily while the task view is moving between windows to - * avoid having its surface destroyed. Call this method with {@code true} before removing it - * from the old window and again with {@code false} before adding it to the new window. - */ - public void setIsMovingWindows(boolean isMovingWindows) { - mIsMovingWindows = isMovingWindows; - if (isMovingWindows) { - getViewTreeObserver().removeOnComputeInternalInsetsListener(this); - mHandler = Handler.getMain(); - } else { - getViewTreeObserver().addOnComputeInternalInsetsListener(this); - mHandler = getHandler(); - } - } - - /** - * Whether this task view is temporarily marked for moving windows. - * - * @see #setIsMovingWindows(boolean) - */ - @VisibleForTesting - public boolean isMovingWindows() { - return mIsMovingWindows; - } - /** * Launch a new activity. * @@ -146,8 +100,7 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, */ public void startActivity(@NonNull PendingIntent pendingIntent, @Nullable Intent fillInIntent, @NonNull ActivityOptions options, @Nullable Rect launchBounds) { - mTaskViewController.startActivity(mTaskViewTaskController, pendingIntent, fillInIntent, - options, launchBounds); + mTaskViewTaskController.startActivity(pendingIntent, fillInIntent, options, launchBounds); } /** @@ -162,15 +115,21 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, */ public void startShortcutActivity(@NonNull ShortcutInfo shortcut, @NonNull ActivityOptions options, @Nullable Rect launchBounds) { - mTaskViewController.startShortcutActivity(mTaskViewTaskController, shortcut, options, - launchBounds); + mTaskViewTaskController.startShortcutActivity(shortcut, options, launchBounds); } - /** - * Moves the current task in taskview out of the view and back to fullscreen. - */ - public void moveToFullscreen() { - mTaskViewController.moveTaskViewToFullscreen(mTaskViewTaskController); + @Override + public void onTaskAppeared(ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash) { + if (mTaskViewTaskController.isUsingShellTransitions()) { + // No need for additional work as it is already taken care of during + // prepareOpenAnimation(). + return; + } + onLocationChanged(); + if (taskInfo.taskDescription != null) { + final int bgColor = taskInfo.taskDescription.getBackgroundColor(); + runOnViewThread(() -> setResizeBackgroundColor(bgColor)); + } } @Override @@ -220,7 +179,6 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, */ public void setObscuredTouchRect(Rect obscuredRect) { mObscuredTouchRegion = obscuredRect != null ? new Region(obscuredRect) : null; - invalidate(); } /** @@ -251,33 +209,19 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, } } - /** - * Call to get the owner of the caption insets source. - */ - @Nullable public Binder getCaptionInsetsOwner() { - return mTaskViewTaskController.getCaptionInsetsOwner(); - } - /** * Call when view position or size has changed. Do not call when animating. */ public void onLocationChanged() { getBoundsOnScreen(mTmpRect); - mTaskViewController.setTaskBounds(mTaskViewTaskController, mTmpRect); + mTaskViewTaskController.setWindowBounds(mTmpRect); } /** * Call to remove the task from window manager. This task will not appear in recents. */ public void removeTask() { - mTaskViewController.removeTaskView(mTaskViewTaskController, null /* token */); - } - - /** - * Call to unregister the task from the controller. - */ - public void unregisterTask() { - mTaskViewController.unregisterTaskView(mTaskViewTaskController); + mTaskViewTaskController.removeTask(); } /** @@ -302,7 +246,7 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, public void surfaceChanged(@androidx.annotation.NonNull SurfaceHolder holder, int format, int width, int height) { getBoundsOnScreen(mTmpRect); - mTaskViewController.setTaskBounds(mTaskViewTaskController, mTmpRect); + mTaskViewTaskController.setWindowBounds(mTmpRect); } @Override @@ -343,19 +287,8 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, } } - @Override - protected void onWindowVisibilityChanged(int visibility) { - if (mIsMovingWindows) { - return; - } - super.onWindowVisibilityChanged(visibility); - } - @Override protected void onAttachedToWindow() { - if (mIsMovingWindows) { - return; - } super.onAttachedToWindow(); getViewTreeObserver().addOnComputeInternalInsetsListener(this); mHandler = getHandler(); @@ -363,9 +296,6 @@ public class TaskView extends SurfaceView implements SurfaceHolder.Callback, @Override protected void onDetachedFromWindow() { - if (mIsMovingWindows) { - return; - } super.onDetachedFromWindow(); getViewTreeObserver().removeOnComputeInternalInsetsListener(this); mHandler = Handler.getMain(); diff --git a/wmshell/src/com/android/wm/shell/taskview/TaskViewFactoryController.java b/wmshell/src/com/android/wm/shell/taskview/TaskViewFactoryController.java index b2813bb382..e4fcff0c37 100644 --- a/wmshell/src/com/android/wm/shell/taskview/TaskViewFactoryController.java +++ b/wmshell/src/com/android/wm/shell/taskview/TaskViewFactoryController.java @@ -32,16 +32,16 @@ public class TaskViewFactoryController { private final ShellTaskOrganizer mTaskOrganizer; private final ShellExecutor mShellExecutor; private final SyncTransactionQueue mSyncQueue; - private final TaskViewController mTaskViewController; + private final TaskViewTransitions mTaskViewTransitions; private final TaskViewFactory mImpl = new TaskViewFactoryImpl(); public TaskViewFactoryController(ShellTaskOrganizer taskOrganizer, ShellExecutor shellExecutor, SyncTransactionQueue syncQueue, - TaskViewController taskViewController) { + TaskViewTransitions taskViewTransitions) { mTaskOrganizer = taskOrganizer; mShellExecutor = shellExecutor; mSyncQueue = syncQueue; - mTaskViewController = taskViewController; + mTaskViewTransitions = taskViewTransitions; } public TaskViewFactoryController(ShellTaskOrganizer taskOrganizer, @@ -49,7 +49,7 @@ public class TaskViewFactoryController { mTaskOrganizer = taskOrganizer; mShellExecutor = shellExecutor; mSyncQueue = syncQueue; - mTaskViewController = null; + mTaskViewTransitions = null; } /** @@ -61,8 +61,8 @@ public class TaskViewFactoryController { /** Creates an {@link TaskView} */ public void create(@UiContext Context context, Executor executor, Consumer<TaskView> onCreate) { - TaskView taskView = new TaskView(context, mTaskViewController, new TaskViewTaskController( - context, mTaskOrganizer, mTaskViewController, mSyncQueue)); + TaskView taskView = new TaskView(context, new TaskViewTaskController(context, + mTaskOrganizer, mTaskViewTransitions, mSyncQueue)); executor.execute(() -> { onCreate.accept(taskView); }); diff --git a/wmshell/src/com/android/wm/shell/taskview/TaskViewTaskController.java b/wmshell/src/com/android/wm/shell/taskview/TaskViewTaskController.java index 5ecb131d24..a126cbe41b 100644 --- a/wmshell/src/com/android/wm/shell/taskview/TaskViewTaskController.java +++ b/wmshell/src/com/android/wm/shell/taskview/TaskViewTaskController.java @@ -16,40 +16,57 @@ package com.android.wm.shell.taskview; -import static android.view.InsetsSource.FLAG_FORCE_CONSUMING; -import static android.view.InsetsSource.FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR; - -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES_NOISY; +import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; +import static android.view.WindowManager.TRANSIT_CHANGE; import android.annotation.NonNull; import android.annotation.Nullable; import android.app.ActivityManager; +import android.app.ActivityOptions; +import android.app.PendingIntent; import android.content.ComponentName; import android.content.Context; -import android.graphics.Insets; +import android.content.Intent; +import android.content.pm.LauncherApps; +import android.content.pm.ShortcutInfo; import android.graphics.Rect; import android.gui.TrustedOverlay; import android.os.Binder; import android.util.CloseGuard; +import android.util.Slog; import android.view.SurfaceControl; import android.view.WindowInsets; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; -import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; import java.io.PrintWriter; import java.util.concurrent.Executor; /** - * This class represents the visible aspect of a task in a {@link TaskView}. All the {@link + * This class implements the core logic to show a task on the {@link TaskView}. All the {@link * TaskView} to {@link TaskViewTaskController} interactions are done via direct method calls. * * The reverse communication is done via the {@link TaskViewBase} interface. + * + * <ul> + * <li>The entry point for an activity based task view is {@link + * TaskViewTaskController#startActivity(PendingIntent, Intent, ActivityOptions, Rect)}</li> + * + * <li>The entry point for an activity (represented by {@link ShortcutInfo}) based task view + * is {@link TaskViewTaskController#startShortcutActivity(ShortcutInfo, ActivityOptions, Rect)} + * </li> + * + * <li>The entry point for a root-task based task view is {@link + * TaskViewTaskController#startRootTask(ActivityManager.RunningTaskInfo, SurfaceControl, + * WindowContainerTransaction)}. + * This method is special as it doesn't create a root task and instead expects that the + * launch root task is already created and started. This method just attaches the taskInfo to + * the TaskView. + * </li> + * </ul> */ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { @@ -59,11 +76,10 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { private final SurfaceControl.Transaction mTransaction = new SurfaceControl.Transaction(); /** Used to inset the activity content to allow space for a caption bar. */ private final Binder mCaptionInsetsOwner = new Binder(); - @NonNull private final ShellTaskOrganizer mTaskOrganizer; private final Executor mShellExecutor; private final SyncTransactionQueue mSyncQueue; - private final TaskViewController mTaskViewController; + private final TaskViewTransitions mTaskViewTransitions; private final Context mContext; /** @@ -89,16 +105,16 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { private Executor mListenerExecutor; private Rect mCaptionInsets; - public TaskViewTaskController(Context context, @NonNull ShellTaskOrganizer organizer, - TaskViewController taskViewController, SyncTransactionQueue syncQueue) { + public TaskViewTaskController(Context context, ShellTaskOrganizer organizer, + TaskViewTransitions taskViewTransitions, SyncTransactionQueue syncQueue) { mContext = context; mTaskOrganizer = organizer; mShellExecutor = organizer.getExecutor(); mSyncQueue = syncQueue; - mTaskViewController = taskViewController; + mTaskViewTransitions = taskViewTransitions; mShellExecutor.execute(() -> { - if (mTaskViewController != null) { - mTaskViewController.registerTaskView(this); + if (mTaskViewTransitions != null) { + mTaskViewTransitions.addTaskView(this); } }); mGuard.open("release"); @@ -112,33 +128,20 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { * surface is destroyed, {@code true} otherwise. */ public void setHideTaskWithSurface(boolean hideTaskWithSurface) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.setHideTaskWithSurface(): taskView=%d " - + "hideTask=%b", hashCode(), hideTaskWithSurface); // TODO(b/299535374): Remove mHideTaskWithSurface once the taskviews with launch root tasks // are moved to a window in SystemUI in auto. mHideTaskWithSurface = hideTaskWithSurface; } - @VisibleForTesting - SurfaceControl getTaskLeash() { - return mTaskLeash; - } - SurfaceControl getSurfaceControl() { return mSurfaceControl; } - Context getContext() { - return mContext; - } - /** * Sets the provided {@link TaskViewBase}, which is used to notify the client part about the * task related changes and getting the current bounds. */ public void setTaskViewBase(TaskViewBase taskViewBase) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.setTaskViewBase(): taskView=%d base=%s", - hashCode(), taskViewBase.hashCode()); mTaskViewBase = taskViewBase; } @@ -149,15 +152,9 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { return mIsInitialized; } - /** Returns the task token for the task in the TaskView. */ - public WindowContainerToken getTaskToken() { - return mTaskToken; - } - - void setResizeBgColor(SurfaceControl.Transaction t, int bgColor) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.setResizeBgColor(): taskView=%d " - + "bgColor=%s", hashCode(), Integer.toHexString(bgColor)); - mTaskViewBase.setResizeBgColor(t, bgColor); + /** Until all users are converted, we may have mixed-use (eg. Car). */ + public boolean isUsingShellTransitions() { + return mTaskViewTransitions != null && mTaskViewTransitions.isEnabled(); } /** @@ -172,11 +169,108 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { mListenerExecutor = executor; } + /** + * Launch an activity represented by {@link ShortcutInfo}. + * <p>The owner of this container must be allowed to access the shortcut information, + * as defined in {@link LauncherApps#hasShortcutHostPermission()} to use this method. + * + * @param shortcut the shortcut used to launch the activity. + * @param options options for the activity. + * @param launchBounds the bounds (window size and position) that the activity should be + * launched in, in pixels and in screen coordinates. + */ + public void startShortcutActivity(@NonNull ShortcutInfo shortcut, + @NonNull ActivityOptions options, @Nullable Rect launchBounds) { + prepareActivityOptions(options, launchBounds); + LauncherApps service = mContext.getSystemService(LauncherApps.class); + if (isUsingShellTransitions()) { + mShellExecutor.execute(() -> { + final WindowContainerTransaction wct = new WindowContainerTransaction(); + wct.startShortcut(mContext.getPackageName(), shortcut, options.toBundle()); + mTaskViewTransitions.startTaskView(wct, this, options.getLaunchCookie()); + }); + return; + } + try { + service.startShortcut(shortcut, null /* sourceBounds */, options.toBundle()); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + + /** + * Launch a new activity. + * + * @param pendingIntent Intent used to launch an activity. + * @param fillInIntent Additional Intent data, see {@link Intent#fillIn Intent.fillIn()} + * @param options options for the activity. + * @param launchBounds the bounds (window size and position) that the activity should be + * launched in, in pixels and in screen coordinates. + */ + public void startActivity(@NonNull PendingIntent pendingIntent, @Nullable Intent fillInIntent, + @NonNull ActivityOptions options, @Nullable Rect launchBounds) { + prepareActivityOptions(options, launchBounds); + if (isUsingShellTransitions()) { + mShellExecutor.execute(() -> { + WindowContainerTransaction wct = new WindowContainerTransaction(); + wct.sendPendingIntent(pendingIntent, fillInIntent, options.toBundle()); + mTaskViewTransitions.startTaskView(wct, this, options.getLaunchCookie()); + }); + return; + } + try { + pendingIntent.send(mContext, 0 /* code */, fillInIntent, + null /* onFinished */, null /* handler */, null /* requiredPermission */, + options.toBundle()); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + + + /** + * Attaches the given root task {@code taskInfo} in the task view. + * + * <p> Since {@link ShellTaskOrganizer#createRootTask(int, int, + * ShellTaskOrganizer.TaskListener)} does not use the shell transitions flow, this method is + * used as an entry point for an already-created root-task in the task view. + * + * @param taskInfo the task info of the root task. + * @param leash the {@link android.content.pm.ShortcutInfo.Surface} of the root task + * @param wct The Window container work that should happen as part of this set up. + */ + public void startRootTask(ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash, + @Nullable WindowContainerTransaction wct) { + if (wct == null) { + wct = new WindowContainerTransaction(); + } + // This method skips the regular flow where an activity task is launched as part of a new + // transition in taskview and then transition is intercepted using the launchcookie. + // The task here is already created and running, it just needs to be reparented, resized + // and tracked correctly inside taskview. Which is done by calling + // prepareOpenAnimationInternal() and then manually enqueuing the resulting window container + // transaction. + prepareOpenAnimationInternal(true /* newTask */, mTransaction /* startTransaction */, + null /* finishTransaction */, taskInfo, leash, wct); + mTransaction.apply(); + mTaskViewTransitions.startInstantTransition(TRANSIT_CHANGE, wct); + } + + private void prepareActivityOptions(ActivityOptions options, Rect launchBounds) { + final Binder launchCookie = new Binder(); + mShellExecutor.execute(() -> { + mTaskOrganizer.setPendingLaunchCookieListener(launchCookie, this); + }); + options.setLaunchBounds(launchBounds); + options.setLaunchCookie(launchCookie); + options.setLaunchWindowingMode(WINDOWING_MODE_MULTI_WINDOW); + options.setRemoveWithTaskOrganizer(true); + } + /** * Release this container if it is initialized. */ public void release() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.release(): taskView=%d", hashCode()); performRelease(); } @@ -194,8 +288,8 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { private void performRelease() { mShellExecutor.execute(() -> { - if (mTaskViewController != null) { - mTaskViewController.unregisterTaskView(this); + if (mTaskViewTransitions != null) { + mTaskViewTransitions.removeTaskView(this); } mTaskOrganizer.removeListener(this); resetTaskInfo(); @@ -218,10 +312,7 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { private void resetTaskInfo() { mTaskInfo = null; mTaskToken = null; - if (mTaskLeash != null) { - mTaskLeash.release(); - mTaskLeash = null; - } + mTaskLeash = null; mPendingInfo = null; mTaskNotFound = false; } @@ -230,12 +321,8 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { private void updateTaskVisibility() { boolean visible = mSurfaceCreated; if (!visible && !mHideTaskWithSurface) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.updateTaskVisibility(): taskView=%d " - + "Not visible, skip hide", hashCode()); return; } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.updateTaskVisibility(): taskView=%d " - + "visible=%b", hashCode(), visible); WindowContainerTransaction wct = new WindowContainerTransaction(); wct.setHidden(mTaskToken, !visible /* hidden */); if (!visible) { @@ -256,55 +343,65 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { @Override public void onTaskAppeared(ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.onTaskAppeared(): taskView=%d task=%s", - hashCode(), taskInfo); - mPendingInfo = taskInfo; - if (mTaskNotFound) { - // If we were already notified by shell transit that we don't have the - // the task, clean it up now. - cleanUpPendingTask(); + if (isUsingShellTransitions()) { + mPendingInfo = taskInfo; + if (mTaskNotFound) { + // If we were already notified by shell transit that we don't have the + // the task, clean it up now. + cleanUpPendingTask(); + } + // Everything else handled by enter transition. + return; + } + mTaskInfo = taskInfo; + mTaskToken = taskInfo.token; + mTaskLeash = leash; + + if (mSurfaceCreated) { + // Surface is ready, so just reparent the task to this surface control + mTransaction.reparent(mTaskLeash, mSurfaceControl) + .show(mTaskLeash) + .apply(); + } else { + // The surface has already been destroyed before the task has appeared, + // so go ahead and hide the task entirely + updateTaskVisibility(); + } + mTaskOrganizer.setInterceptBackPressedOnTaskRoot(mTaskToken, true); + mSyncQueue.runInSync((t) -> { + mTaskViewBase.onTaskAppeared(taskInfo, leash); + }); + + if (mListener != null) { + final int taskId = taskInfo.taskId; + final ComponentName baseActivity = taskInfo.baseActivity; + mListenerExecutor.execute(() -> { + mListener.onTaskCreated(taskId, baseActivity); + }); } - // Everything else handled by enter transition. } @Override public void onTaskVanished(ActivityManager.RunningTaskInfo taskInfo) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.onTaskVanished(): taskView=%d task=%s", - hashCode(), taskInfo); // Unlike Appeared, we can't yet guarantee that vanish will happen within a transition that // we know about -- so leave clean-up here even if shell transitions are enabled. if (mTaskToken == null || !mTaskToken.equals(taskInfo.token)) return; - if (BubbleAnythingFlagHelper.enableCreateAnyBubble()) { - handleAndNotifyTaskRemoval(taskInfo); - } else { - handleAndNotifyTaskRemoval(mTaskInfo); - } + final SurfaceControl taskLeash = mTaskLeash; + handleAndNotifyTaskRemoval(mTaskInfo); + mTransaction.reparent(taskLeash, null).apply(); resetTaskInfo(); } @Override public void onTaskInfoChanged(ActivityManager.RunningTaskInfo taskInfo) { mTaskViewBase.onTaskInfoChanged(taskInfo); - if (BubbleAnythingFlagHelper.enableCreateAnyBubble()) { - if (mListener != null) { - mListenerExecutor.execute(() -> { - mListener.onTaskInfoChanged(taskInfo); - }); - } - } } @Override public void onBackPressedOnTaskRoot(ActivityManager.RunningTaskInfo taskInfo) { - if (mTaskToken == null || !mTaskToken.equals(taskInfo.token)) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.onBackPressedOnTaskRoot(): " - + "taskView=%d Ignored", hashCode()); - return; - } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.onBackPressedOnTaskRoot(): taskView=%d " - + "task=%s", hashCode(), taskInfo); + if (mTaskToken == null || !mTaskToken.equals(taskInfo.token)) return; if (mListener != null) { final int taskId = taskInfo.taskId; mListenerExecutor.execute(() -> { @@ -315,20 +412,12 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { @Override public void attachChildSurfaceToTask(int taskId, SurfaceControl.Builder b) { - if (BubbleAnythingFlagHelper.enableCreateAnyBubble()) { - // TODO(b/419342398): Add a notifier when the surface is ready for this to be called. - if (!mIsInitialized) return; - } b.setParent(findTaskSurface(taskId)); } @Override public void reparentChildSurfaceToTask(int taskId, SurfaceControl sc, SurfaceControl.Transaction t) { - if (BubbleAnythingFlagHelper.enableCreateAnyBubble()) { - // TODO(b/419342398): Add a notifier when the surface is ready for this to be called. - if (!mIsInitialized) return; - } t.reparent(sc, findTaskSurface(taskId)); } @@ -357,8 +446,6 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { * @param surfaceControl the {@link SurfaceControl} for the underlying surface. */ public void surfaceCreated(SurfaceControl surfaceControl) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.surfaceCreated(): taskView=%d", - hashCode()); mSurfaceCreated = true; mIsInitialized = true; mSurfaceControl = surfaceControl; @@ -370,17 +457,63 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { mTransaction.setTrustedOverlay(surfaceControl, TrustedOverlay.DISABLED) .apply(); } - if (!mNotifiedForInitialized) { - notifyInitialized(); - } else { - notifySurfaceAlreadyCreated(); - } + notifyInitialized(); mShellExecutor.execute(() -> { if (mTaskToken == null) { // Nothing to update, task is not yet available return; } - mTaskViewController.setTaskViewVisible(this, true /* visible */); + if (isUsingShellTransitions()) { + mTaskViewTransitions.setTaskViewVisible(this, true /* visible */); + return; + } + // Reparent the task when this surface is created + mTransaction.reparent(mTaskLeash, mSurfaceControl) + .show(mTaskLeash) + .apply(); + updateTaskVisibility(); + }); + } + + /** + * Sets the window bounds to {@code boundsOnScreen}. + * Call when view position or size has changed. Can also be called before the animation when + * the final bounds are known. + * Do not call during the animation. + * + * @param boundsOnScreen the on screen bounds of the surface view. + */ + public void setWindowBounds(Rect boundsOnScreen) { + if (mTaskToken == null) { + return; + } + + if (isUsingShellTransitions()) { + mShellExecutor.execute(() -> { + // Sync Transactions can't operate simultaneously with shell transition collection. + mTaskViewTransitions.setTaskBounds(this, boundsOnScreen); + }); + return; + } + + WindowContainerTransaction wct = new WindowContainerTransaction(); + wct.setBounds(mTaskToken, boundsOnScreen); + mSyncQueue.queue(wct); + } + + /** + * Call to remove the task from window manager. This task will not appear in recents. + */ + void removeTask() { + if (mTaskToken == null) { + // Call to remove task before we have one, do nothing + Slog.w(TAG, "Trying to remove a task that was never added? (no taskToken)"); + return; + } + mShellExecutor.execute(() -> { + WindowContainerTransaction wct = new WindowContainerTransaction(); + wct.removeTask(mTaskToken); + mTaskViewTransitions.closeTaskView(wct, this); }); } @@ -393,35 +526,16 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { if (mCaptionInsets != null && mCaptionInsets.equals(captionInsets)) { return; } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.setCaptionInsets(): taskView=%d " - + "captionInsets=%s", hashCode(), captionInsets); mCaptionInsets = captionInsets; applyCaptionInsetsIfNeeded(); } - @Nullable Binder getCaptionInsetsOwner() { - return mCaptionInsetsOwner; - } - void applyCaptionInsetsIfNeeded() { if (mTaskToken == null) return; WindowContainerTransaction wct = new WindowContainerTransaction(); if (mCaptionInsets != null) { - int flags = 0; - if (BubbleAnythingFlagHelper.enableCreateAnyBubbleWithAppCompatFixes()) { - // When the bubble bar app handle is visible, the caption insets will be set and - // should always be consumed, otherwise the handle may block app content. - flags = FLAG_FORCE_CONSUMING | FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR; - } - if (com.android.window.flags2.Flags.relativeInsets()) { - wct.addInsetsSource(mTaskToken, mCaptionInsetsOwner, 0, - WindowInsets.Type.captionBar(), Insets.of(0, mCaptionInsets.height(), 0, 0), - null /* boundingRects */, flags); - } else { - wct.addInsetsSource(mTaskToken, mCaptionInsetsOwner, 0, - WindowInsets.Type.captionBar(), mCaptionInsets, null /* boundingRects */, - flags); - } + wct.addInsetsSource(mTaskToken, mCaptionInsetsOwner, 0, + WindowInsets.Type.captionBar(), mCaptionInsets, null /* boundingRects */); } else { wct.removeInsetsSource(mTaskToken, mCaptionInsetsOwner, 0, WindowInsets.Type.captionBar()); @@ -431,8 +545,6 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { /** Should be called when the client surface is destroyed. */ public void surfaceDestroyed() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.surfaceDestroyed(): taskView=%d", - hashCode()); mSurfaceCreated = false; mSurfaceControl = null; mShellExecutor.execute(() -> { @@ -441,7 +553,14 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { return; } - mTaskViewController.setTaskViewVisible(this, false /* visible */); + if (isUsingShellTransitions()) { + mTaskViewTransitions.setTaskViewVisible(this, false /* visible */); + return; + } + + // Unparent the task when this surface is destroyed + mTransaction.reparent(mTaskLeash, null).apply(); + updateTaskVisibility(); }); } @@ -455,43 +574,17 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { } } - /** Called when the surface is created, only when the task view is alreayd initialized. */ - protected void notifySurfaceAlreadyCreated() { - if (mListener != null) { - mListenerExecutor.execute(() -> { - mListener.onSurfaceAlreadyCreated(); - }); - } - } - - /** Notifies listeners of a task being removed. */ - public void notifyTaskRemovalStarted(@NonNull ActivityManager.RunningTaskInfo taskInfo) { - if (mListener == null) return; - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.notifyTaskRemovalStarted(): taskView=%d " - + "task=%s", hashCode(), taskInfo); - - if (BubbleAnythingFlagHelper.enableCreateAnyBubble()) { - // Update mTaskInfo to reflect the latest task state before notifying the listener, as - // it may have been changed by ShellTaskOrganizer#onTaskInfoChanged(), which triggers - // task listener updates via ShellTaskOrganizer#updateTaskListenerIfNeeded() when a - // task's info changes, resulting in onTaskVanished() being called on the old listener; - // without updating mTaskInfo here would leave it with outdated information (e.g., - // windowing mode), potentially causing incorrect state checks and unintended cleanup - // actions in consumers of TaskViewTaskController, such as task removal in - // BubbleTaskView#cleanup. - mTaskInfo = taskInfo; - mTaskToken = mTaskInfo.token; - } - - final int taskId = taskInfo.taskId; - mListenerExecutor.execute(() -> mListener.onTaskRemovalStarted(taskId)); - } - /** Notifies listeners of a task being removed and stops intercepting back presses on it. */ private void handleAndNotifyTaskRemoval(ActivityManager.RunningTaskInfo taskInfo) { if (taskInfo != null) { - notifyTaskRemovalStarted(taskInfo); + if (mListener != null) { + final int taskId = taskInfo.taskId; + mListenerExecutor.execute(() -> { + mListener.onTaskRemovalStarted(taskId); + }); + } mTaskViewBase.onTaskVanished(taskInfo); + mTaskOrganizer.setInterceptBackPressedOnTaskRoot(taskInfo.token, false); } } @@ -501,26 +594,13 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { return mTaskInfo; } - /** Returns the task organizer for the task in the TaskView. */ - @NonNull - public ShellTaskOrganizer getTaskOrganizer() { - return mTaskOrganizer; - } - - @VisibleForTesting - ActivityManager.RunningTaskInfo getPendingInfo() { - return mPendingInfo; - } - /** * Indicates that the task was not found in the start animation for the transition. * In this case we should clean up the task if we have the pending info. If we don't * have the pending info, we'll do it when we receive it in * {@link #onTaskAppeared(ActivityManager.RunningTaskInfo, SurfaceControl)}. */ - public void setTaskNotFound() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.setTaskNotFound(): taskView=%d", - hashCode()); + void setTaskNotFound() { mTaskNotFound = true; if (mPendingInfo != null) { cleanUpPendingTask(); @@ -532,14 +612,14 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { * notify users of task view. */ void cleanUpPendingTask() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.cleanUpPendingTask(): taskView=%d " - + "pending=%s", hashCode(), mPendingInfo); if (mPendingInfo != null) { final ActivityManager.RunningTaskInfo pendingInfo = mPendingInfo; handleAndNotifyTaskRemoval(pendingInfo); // Make sure the task is removed - mTaskViewController.removeTaskView(this, pendingInfo.token); + WindowContainerTransaction wct = new WindowContainerTransaction(); + wct.removeTask(pendingInfo.token); + mTaskViewTransitions.closeTaskView(wct, this); } resetTaskInfo(); } @@ -550,8 +630,6 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { return; } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.prepareHideAnimation(): taskView=%d", - hashCode()); finishTransaction.reparent(mTaskLeash, null); if (mListener != null) { @@ -565,30 +643,61 @@ public class TaskViewTaskController implements ShellTaskOrganizer.TaskListener { * is used instead. */ void prepareCloseAnimation() { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.prepareCloseAnimation(): taskView=%d", - hashCode()); handleAndNotifyTaskRemoval(mTaskInfo); resetTaskInfo(); } - /** - * Prepare this taskview to open {@param taskInfo}. - * @return The bounds of the task or {@code null} on failure (surface is destroyed) - */ - Rect prepareOpen(ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "TaskController.prepareOpen(): taskView=%d", hashCode()); + void prepareOpenAnimation(final boolean newTask, + @NonNull SurfaceControl.Transaction startTransaction, + @NonNull SurfaceControl.Transaction finishTransaction, + ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash, + WindowContainerTransaction wct) { + prepareOpenAnimationInternal(newTask, startTransaction, finishTransaction, taskInfo, leash, + wct); + } + + private void prepareOpenAnimationInternal(final boolean newTask, + SurfaceControl.Transaction startTransaction, + SurfaceControl.Transaction finishTransaction, + ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash, + WindowContainerTransaction wct) { mPendingInfo = null; mTaskInfo = taskInfo; mTaskToken = mTaskInfo.token; - mTaskLeash = new SurfaceControl(leash, "TaskController.prepareOpen"); - if (!mSurfaceCreated) { - return null; + mTaskLeash = leash; + if (mSurfaceCreated) { + // Surface is ready, so just reparent the task to this surface control + startTransaction.reparent(mTaskLeash, mSurfaceControl) + .show(mTaskLeash); + // Also reparent on finishTransaction since the finishTransaction will reparent back + // to its "original" parent by default. + Rect boundsOnScreen = mTaskViewBase.getCurrentBoundsOnScreen(); + if (finishTransaction != null) { + finishTransaction.reparent(mTaskLeash, mSurfaceControl) + .setPosition(mTaskLeash, 0, 0) + // TODO: maybe once b/280900002 is fixed this will be unnecessary + .setWindowCrop(mTaskLeash, boundsOnScreen.width(), boundsOnScreen.height()); + } + mTaskViewTransitions.updateBoundsState(this, boundsOnScreen); + mTaskViewTransitions.updateVisibilityState(this, true /* visible */); + wct.setBounds(mTaskToken, boundsOnScreen); + applyCaptionInsetsIfNeeded(); + } else { + // The surface has already been destroyed before the task has appeared, + // so go ahead and hide the task entirely + wct.setHidden(mTaskToken, true /* hidden */); + mTaskViewTransitions.updateVisibilityState(this, false /* visible */); + // listener callback is below + } + if (newTask) { + mTaskOrganizer.setInterceptBackPressedOnTaskRoot(mTaskToken, true /* intercept */); + } + + if (mTaskInfo.taskDescription != null) { + int backgroundColor = mTaskInfo.taskDescription.getBackgroundColor(); + mTaskViewBase.setResizeBgColor(startTransaction, backgroundColor); } - return mTaskViewBase.getCurrentBoundsOnScreen(); - } - /** Notify that the associated task has appeared. This will call appropriate listeners. */ - void notifyAppeared(final boolean newTask) { mTaskViewBase.onTaskAppeared(mTaskInfo, mTaskLeash); if (mListener != null) { final int taskId = mTaskInfo.taskId; diff --git a/wmshell/src/com/android/wm/shell/taskview/TaskViewTransitions.java b/wmshell/src/com/android/wm/shell/taskview/TaskViewTransitions.java index 549c87eec3..e6d1b4593a 100644 --- a/wmshell/src/com/android/wm/shell/taskview/TaskViewTransitions.java +++ b/wmshell/src/com/android/wm/shell/taskview/TaskViewTransitions.java @@ -16,86 +16,44 @@ package com.android.wm.shell.taskview; -import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; import static android.view.WindowManager.TRANSIT_CHANGE; import static android.view.WindowManager.TRANSIT_CLOSE; -import static android.view.WindowManager.TRANSIT_NONE; import static android.view.WindowManager.TRANSIT_OPEN; import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.view.WindowManager.TRANSIT_TO_FRONT; -import static com.android.window.flags2.Flags.FLAG_EXCLUDE_TASK_FROM_RECENTS; -import static com.android.window.flags2.Flags.enableHandlersDebuggingMode; -import static com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE; -import static com.android.wm.shell.bubbles.util.BubbleUtils.getExitBubbleTransaction; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_BUBBLES_NOISY; -import static com.android.wm.shell.transition.TransitionDispatchState.CAPTURED_CHANGE_IN_WRONG_TRANSITION; -import static com.android.wm.shell.transition.TransitionDispatchState.CAPTURED_UNRELATED_CHANGE; -import static com.android.wm.shell.transition.TransitionDispatchState.LOST_RELEVANT_CHANGE; -import static com.android.wm.shell.transition.Transitions.transitTypeToString; - import android.annotation.NonNull; import android.annotation.Nullable; import android.app.ActivityManager; -import android.app.ActivityOptions; -import android.app.PendingIntent; -import android.content.Context; -import android.content.Intent; -import android.content.pm.ShortcutInfo; import android.graphics.Rect; -import android.os.Binder; import android.os.IBinder; +import android.util.ArrayMap; import android.util.Slog; import android.view.SurfaceControl; import android.view.WindowManager; import android.window.TransitionInfo; import android.window.TransitionRequestInfo; -import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import androidx.annotation.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.Flags; -import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.transition.TransitionDispatchState; import com.android.wm.shell.transition.Transitions; -import java.io.PrintWriter; import java.util.ArrayList; -import java.util.Map; import java.util.Objects; -import java.util.WeakHashMap; -import java.util.concurrent.Executor; /** * Handles Shell Transitions that involve TaskView tasks. */ -public class TaskViewTransitions implements Transitions.TransitionHandler, TaskViewController { +public class TaskViewTransitions implements Transitions.TransitionHandler { static final String TAG = "TaskViewTransitions"; - /** - * Map of {@link TaskViewTaskController} to {@link TaskViewRepository.TaskViewState}. - * <p> - * {@link TaskView} keeps a reference to the {@link TaskViewTaskController} instance and - * manages its lifecycle. - * Only keep a weak reference to the controller instance here to allow for it to be cleaned - * up when its TaskView is no longer used. - */ - private final Map<TaskViewTaskController, TaskViewRepository.TaskViewState> mTaskViews; - private final TaskViewRepository mTaskViewRepo; + private final ArrayMap<TaskViewTaskController, TaskViewRequestedState> mTaskViews = + new ArrayMap<>(); private final ArrayList<PendingTransition> mPending = new ArrayList<>(); private final Transitions mTransitions; private final boolean[] mRegistered = new boolean[]{false}; - private final ShellTaskOrganizer mTaskOrganizer; - private final Executor mShellExecutor; - private final SyncTransactionQueue mSyncQueue; - - /** A temp transaction used for quick things. */ - private final SurfaceControl.Transaction mTransaction = new SurfaceControl.Transaction(); /** * TaskView makes heavy use of startTransition. Only one shell-initiated transition can be @@ -107,7 +65,6 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV final @WindowManager.TransitionType int mType; final WindowContainerTransaction mWct; final @NonNull TaskViewTaskController mTaskView; - ExternalTransition mExternalTransition; IBinder mClaimed; /** @@ -126,71 +83,58 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV mTaskView = taskView; mLaunchCookie = launchCookie; } - /** Dumps PendingTransition state. */ - public void dump(PrintWriter pw, String prefix) { - pw.print(prefix); pw.println("Pending transition:"); - pw.print(prefix); pw.println(" task view: " + mTaskView); - pw.print(prefix); pw.println(" transition type: " + mType); - pw.print(prefix); pw.println(" external transition: " + mExternalTransition); - pw.print(prefix); pw.println(" claim token: " + mClaimed); - } } - public TaskViewTransitions(Transitions transitions, TaskViewRepository repository, - ShellTaskOrganizer taskOrganizer, SyncTransactionQueue syncQueue) { + /** + * Visibility and bounds state that has been requested for a {@link TaskViewTaskController}. + */ + private static class TaskViewRequestedState { + boolean mVisible; + Rect mBounds = new Rect(); + } + + public TaskViewTransitions(Transitions transitions) { mTransitions = transitions; - mTaskOrganizer = taskOrganizer; - mShellExecutor = taskOrganizer.getExecutor(); - mSyncQueue = syncQueue; - if (useRepo()) { - mTaskViews = null; - } else { - mTaskViews = new WeakHashMap<>(); - } - mTaskViewRepo = repository; // Defer registration until the first TaskView because we want this to be the "first" in // priority when handling requests. // TODO(210041388): register here once we have an explicit ordering mechanism. } - /** @return whether the shared taskview repository is being used. */ - public static boolean useRepo() { - return Flags.taskViewRepository() || Flags.enableBubbleAnything(); - } - - public TaskViewRepository getRepository() { - return mTaskViewRepo; - } - - @Override - public void registerTaskView(TaskViewTaskController tv) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.registerTaskView(): taskView=%d", - tv.hashCode()); + void addTaskView(TaskViewTaskController tv) { synchronized (mRegistered) { if (!mRegistered[0]) { mRegistered[0] = true; mTransitions.addHandler(this); } } - if (useRepo()) { - mTaskViewRepo.add(tv); - } else { - mTaskViews.put(tv, new TaskViewRepository.TaskViewState(null)); - } + mTaskViews.put(tv, new TaskViewRequestedState()); } - @Override - public void unregisterTaskView(TaskViewTaskController tv) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.unregisterTaskView: taskView=%d", - tv.hashCode()); - if (useRepo()) { - mTaskViewRepo.remove(tv); - } else { - mTaskViews.remove(tv); - } + void removeTaskView(TaskViewTaskController tv) { + mTaskViews.remove(tv); // Note: Don't unregister handler since this is a singleton with lifetime bound to Shell } + boolean isEnabled() { + return mTransitions.isRegistered(); + } + + /** + * Looks through the pending transitions for a closing transaction that matches the provided + * `taskView`. + * + * @param taskView the pending transition should be for this. + */ + private PendingTransition findPendingCloseTransition(TaskViewTaskController taskView) { + for (int i = mPending.size() - 1; i >= 0; --i) { + if (mPending.get(i).mTaskView != taskView) continue; + if (TransitionUtil.isClosingType(mPending.get(i).mType)) { + return mPending.get(i); + } + } + return null; + } + /** * Starts a transition outside of the handler associated with {@link TaskViewTransitions}. */ @@ -199,40 +143,6 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV mTransitions.startTransition(type, wct, null); } - /** - * Starts or queues an "external" runnable into the pending queue. This means it will run - * in order relative to the local transitions. - * - * The external operation *must* call {@link #onExternalDone} once it has finished. - * - * In practice, the external is usually another transition on a different handler. - */ - public void enqueueExternal(@NonNull TaskViewTaskController taskView, ExternalTransition ext) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.enqueueExternal(): taskView=%d pending=%d", - taskView.hashCode(), mPending.size()); - final PendingTransition pending = new PendingTransition( - TRANSIT_NONE, null /* wct */, taskView, null /* cookie */); - pending.mExternalTransition = ext; - mPending.add(pending); - startNextTransition(); - } - - /** - * An external transition run in this "queue" is required to call this once it becomes ready. - */ - public void onExternalDone(IBinder key) { - final PendingTransition pending = findPending(key); - if (pending == null) { - ProtoLog.w(WM_SHELL_BUBBLES_NOISY, - "Transitions.onExternalDone(): unknown transition=%s", key); - return; - } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.onExternalDone(): taskView=%d " - + "transition=%s", pending.mTaskView.hashCode(), key); - mPending.remove(pending); - startNextTransition(); - } - /** * Looks through the pending transitions for a opening transaction that matches the provided * `taskView`. @@ -243,7 +153,6 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV PendingTransition findPendingOpeningTransition(TaskViewTaskController taskView) { for (int i = mPending.size() - 1; i >= 0; --i) { if (mPending.get(i).mTaskView != taskView) continue; - if (mPending.get(i).mExternalTransition != null) continue; if (TransitionUtil.isOpeningType(mPending.get(i).mType)) { return mPending.get(i); } @@ -260,7 +169,6 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV PendingTransition findPending(TaskViewTaskController taskView, int type) { for (int i = mPending.size() - 1; i >= 0; --i) { if (mPending.get(i).mTaskView != taskView) continue; - if (mPending.get(i).mExternalTransition != null) continue; if (mPending.get(i).mType == type) { return mPending.get(i); } @@ -268,9 +176,7 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV return null; } - /** Looks through the pending transitions for one matching {@param claimed} */ - @VisibleForTesting - public PendingTransition findPending(IBinder claimed) { + private PendingTransition findPending(IBinder claimed) { for (int i = 0; i < mPending.size(); ++i) { if (mPending.get(i).mClaimed != claimed) continue; return mPending.get(i); @@ -283,15 +189,6 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV return !mPending.isEmpty(); } - /** Removes all pending transitions for the given {@code taskView}. */ - public void removePendingTransitions(TaskViewTaskController taskView) { - for (int i = mPending.size() - 1; i >= 0; --i) { - if (mPending.get(i).mTaskView != taskView) continue; - if (mPending.get(i).mExternalTransition != null) continue; - mPending.remove(i); - } - } - @Override public WindowContainerTransaction handleRequest(@NonNull IBinder transition, @Nullable TransitionRequestInfo request) { @@ -301,15 +198,8 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV } final TaskViewTaskController taskView = findTaskView(triggerTask); if (taskView == null) return null; - // Opening types should all be initiated by shell - if (!TransitionUtil.isClosingType(request.getType())) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.handleRequest(): taskView=%d " - + "skipping transition=%d", taskView.hashCode(), transition.hashCode()); - return null; - } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.handleRequest(): taskView=%d " - + "handling transition=%d", taskView.hashCode(), transition.hashCode()); + if (!TransitionUtil.isClosingType(request.getType())) return null; PendingTransition pending = new PendingTransition(request.getType(), null, taskView, null /* cookie */); pending.mClaimed = transition; @@ -318,196 +208,61 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV } private TaskViewTaskController findTaskView(ActivityManager.RunningTaskInfo taskInfo) { - if (useRepo()) { - final TaskViewRepository.TaskViewState state = mTaskViewRepo.byToken(taskInfo.token); - return state != null ? state.getTaskView() : null; - } - for (TaskViewTaskController controller : mTaskViews.keySet()) { - if (controller.getTaskInfo() == null) continue; - if (taskInfo.token.equals(controller.getTaskInfo().token)) { - return controller; + for (int i = 0; i < mTaskViews.size(); ++i) { + if (mTaskViews.keyAt(i).getTaskInfo() == null) continue; + if (taskInfo.token.equals(mTaskViews.keyAt(i).getTaskInfo().token)) { + return mTaskViews.keyAt(i); } } return null; } - /** Returns true if the given {@code taskInfo} belongs to a task view. */ - public boolean isTaskViewTask(ActivityManager.RunningTaskInfo taskInfo) { - return findTaskView(taskInfo) != null; - } - - private void prepareActivityOptions(ActivityOptions options, Rect launchBounds, - @NonNull TaskViewTaskController destination) { - final Binder launchCookie = new Binder(); - mShellExecutor.execute(() -> { - mTaskOrganizer.setPendingLaunchCookieListener(launchCookie, destination); - }); - options.setLaunchBounds(launchBounds); - options.setLaunchCookie(launchCookie); - options.setLaunchWindowingMode(WINDOWING_MODE_MULTI_WINDOW); - options.setRemoveWithTaskOrganizer(true); - } - - @Override - public void startShortcutActivity(@NonNull TaskViewTaskController destination, - @NonNull ShortcutInfo shortcut, @NonNull ActivityOptions options, - @Nullable Rect launchBounds) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.startShortcutActivity(): taskView=%d " - + "shortcut=%s bounds=%s", destination.hashCode(), shortcut, launchBounds); - prepareActivityOptions(options, launchBounds, destination); - final Context context = destination.getContext(); - mShellExecutor.execute(() -> { - final WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.startShortcut(context.getPackageName(), shortcut, options.toBundle()); - startTaskView(wct, destination, options.getLaunchCookie()); - }); - } - - @Override - public void startActivity(@NonNull TaskViewTaskController destination, - @NonNull PendingIntent pendingIntent, @Nullable Intent fillInIntent, - @NonNull ActivityOptions options, @Nullable Rect launchBounds) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.startActivity(): taskView=%d intent=%s", - destination.hashCode(), pendingIntent.getIntent()); - prepareActivityOptions(options, launchBounds, destination); - mShellExecutor.execute(() -> { - WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.sendPendingIntent(pendingIntent, fillInIntent, options.toBundle()); - startTaskView(wct, destination, options.getLaunchCookie()); - }); - } - - @Override - public void startRootTask(@NonNull TaskViewTaskController destination, - ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash, - @Nullable WindowContainerTransaction wct) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.startRootTask(): taskView=%d task=%s", - destination.hashCode(), taskInfo); - if (wct == null) { - wct = new WindowContainerTransaction(); - } - // This method skips the regular flow where an activity task is launched as part of a new - // transition in taskview and then transition is intercepted using the launchcookie. - // The task here is already created and running, it just needs to be reparented, resized - // and tracked correctly inside taskview. Which is done by calling - // prepareOpenAnimation() and then manually enqueuing the resulting window container - // transaction. - prepareOpenAnimation(destination, true /* newTask */, mTransaction /* startTransaction */, - null /* finishTransaction */, taskInfo, leash, wct); - mTransaction.apply(); - mTransitions.startTransition(TRANSIT_CHANGE, wct, null); - } - - @VisibleForTesting void startTaskView(@NonNull WindowContainerTransaction wct, @NonNull TaskViewTaskController taskView, @NonNull IBinder launchCookie) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.startTaskView(): taskView=%d", - taskView.hashCode()); updateVisibilityState(taskView, true /* visible */); mPending.add(new PendingTransition(TRANSIT_OPEN, wct, taskView, launchCookie)); startNextTransition(); } - @Override - public void removeTaskView(@NonNull TaskViewTaskController taskView, - @Nullable WindowContainerToken taskToken) { - final WindowContainerToken token = taskToken != null ? taskToken : taskView.getTaskToken(); - if (token == null) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.removeTaskView(): taskView=%d no token", - taskView.hashCode()); - // We don't have a task yet, so just clean up records - unregisterTaskView(taskView); - return; - } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.removeTaskView(): taskView=%d", - taskView.hashCode()); - final WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.removeTask(token); + void closeTaskView(@NonNull WindowContainerTransaction wct, + @NonNull TaskViewTaskController taskView) { updateVisibilityState(taskView, false /* visible */); - mShellExecutor.execute(() -> { - mPending.add(new PendingTransition(TRANSIT_CLOSE, wct, taskView, null /* cookie */)); - startNextTransition(); - }); + mPending.add(new PendingTransition(TRANSIT_CLOSE, wct, taskView, null /* cookie */)); + startNextTransition(); } - @Override - public void moveTaskViewToFullscreen(@NonNull TaskViewTaskController taskView) { - final WindowContainerToken taskToken = taskView.getTaskToken(); - if (taskToken == null) return; - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.moveTaskViewToFullscreen(): taskView=%d", - taskView.hashCode()); - final WindowContainerTransaction wct = - getExitBubbleTransaction(taskToken, taskView.getCaptionInsetsOwner()); - mShellExecutor.execute(() -> { - mPending.add(new PendingTransition(TRANSIT_CHANGE, wct, taskView, null /* cookie */)); - startNextTransition(); - taskView.notifyTaskRemovalStarted(taskView.getTaskInfo()); - }); - } - - @Override + /** Starts a new transition to make the given {@code taskView} visible. */ public void setTaskViewVisible(TaskViewTaskController taskView, boolean visible) { setTaskViewVisible(taskView, visible, false /* reorder */); } - /** See {@link #setTaskViewVisible(TaskViewTaskController, boolean, boolean, boolean)}. */ - public void setTaskViewVisible(TaskViewTaskController taskView, boolean visible, - boolean reorder) { - setTaskViewVisible(taskView, visible, reorder, - true /* syncHiddenWithVisibilityOnReorder */); - } - /** - * Starts a new transition to make the given {@code taskView} visible and optionally - * reordering it. + * Starts a new transition to make the given {@code taskView} visible and optionally change + * the task order. * - * @param reorder Whether to reorder the task or not. If this is {@code true}, the task will - * be reordered as per the given {@code visible}. For {@code visible = true}, - * task will be reordered to top. For {@code visible = false}, task will be - * reordered to the bottom - * @param syncHiddenWithVisibilityOnReorder Whether to also synchronize the hidden state of - * the task with the target visibility when - * reordering. This only takes effect if {@code - * reorder} is {@code true}. - * @throws IllegalStateException If the flag {@link FLAG_ENABLE_CREATE_ANY_BUBBLE} and - * {@link FLAG_EXCLUDE_TASK_FROM_RECENTS} are not enabled. + * @param taskView the task view which the visibility is being changed for + * @param visible the new visibility of the task view + * @param reorder whether to reorder the task or not. If this is {@code true}, the task will be + * reordered as per the given {@code visible}. For {@code visible = true}, task + * will be reordered to top. For {@code visible = false}, task will be reordered + * to the bottom */ public void setTaskViewVisible(TaskViewTaskController taskView, boolean visible, - boolean reorder, boolean syncHiddenWithVisibilityOnReorder) { - final TaskViewRepository.TaskViewState state = useRepo() - ? mTaskViewRepo.byTaskView(taskView) - : mTaskViews.get(taskView); - if (state == null) return; - if (state.mVisible == visible) return; + boolean reorder) { + if (mTaskViews.get(taskView) == null) return; + if (mTaskViews.get(taskView).mVisible == visible) return; if (taskView.getTaskInfo() == null) { // Nothing to update, task is not yet available return; } - state.mVisible = visible; - + mTaskViews.get(taskView).mVisible = visible; final WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.setBounds(taskView.getTaskInfo().token, state.mBounds); - if (reorder && !syncHiddenWithVisibilityOnReorder) { - if (!BubbleAnythingFlagHelper.enableCreateAnyBubbleWithForceExcludedFromRecents()) { - throw new IllegalStateException( - "Flag " + FLAG_ENABLE_CREATE_ANY_BUBBLE + " and " - + FLAG_EXCLUDE_TASK_FROM_RECENTS + " are not enabled"); - } - // Reset hidden state to fix corner case where surface was destroyed before task - // appeared in #prepareOpenAnimation. - wct.setHidden(taskView.getTaskInfo().token, false /* hidden */); - // Order of setAlwaysOnTop() and reorder() matters; hierarchy ops apply sequentially. - wct.setAlwaysOnTop(taskView.getTaskInfo().token, visible /* alwaysOnTop */); - } else { - wct.setHidden(taskView.getTaskInfo().token, !visible /* hidden */); - } + wct.setHidden(taskView.getTaskInfo().token, !visible /* hidden */); + wct.setBounds(taskView.getTaskInfo().token, mTaskViews.get(taskView).mBounds); if (reorder) { wct.reorder(taskView.getTaskInfo().token, visible /* onTop */); } - - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.setTaskViewVisible(): taskView=%d " - + "visible=%b", taskView.hashCode(), visible); - final PendingTransition pending = new PendingTransition( + PendingTransition pending = new PendingTransition( visible ? TRANSIT_TO_FRONT : TRANSIT_TO_BACK, wct, taskView, null /* cookie */); mPending.add(pending); startNextTransition(); @@ -516,16 +271,11 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV /** Starts a new transition to reorder the given {@code taskView}'s task. */ public void reorderTaskViewTask(TaskViewTaskController taskView, boolean onTop) { - final TaskViewRepository.TaskViewState state = useRepo() - ? mTaskViewRepo.byTaskView(taskView) - : mTaskViews.get(taskView); - if (state == null) return; + if (mTaskViews.get(taskView) == null) return; if (taskView.getTaskInfo() == null) { // Nothing to update, task is not yet available return; } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.reorderTaskViewTask(): taskView=%d " - + "onTop=%b", taskView.hashCode(), onTop); final WindowContainerTransaction wct = new WindowContainerTransaction(); wct.reorder(taskView.getTaskInfo().token, onTop /* onTop */); PendingTransition pending = new PendingTransition( @@ -536,62 +286,32 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV } void updateBoundsState(TaskViewTaskController taskView, Rect boundsOnScreen) { - if (useRepo()) return; - final TaskViewRepository.TaskViewState state = mTaskViews.get(taskView); + TaskViewRequestedState state = mTaskViews.get(taskView); if (state == null) return; - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.updateBoundsState(): taskView=%d bounds=%s", - taskView.hashCode(), boundsOnScreen); state.mBounds.set(boundsOnScreen); } void updateVisibilityState(TaskViewTaskController taskView, boolean visible) { - final TaskViewRepository.TaskViewState state = useRepo() - ? mTaskViewRepo.byTaskView(taskView) - : mTaskViews.get(taskView); + TaskViewRequestedState state = mTaskViews.get(taskView); if (state == null) return; - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.updateVisibilityState(): taskView=%d " - + "visible=%b", taskView.hashCode(), visible); state.mVisible = visible; } - @Override - public void setTaskBounds(TaskViewTaskController taskView, Rect boundsOnScreen) { - if (taskView.getTaskToken() == null) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.setTaskBounds(): null token"); - return; - } - - mShellExecutor.execute(() -> { - // Sync Transactions can't operate simultaneously with shell transition collection. - setTaskBoundsInTransition(taskView, boundsOnScreen); - }); - } - - private void setTaskBoundsInTransition(TaskViewTaskController taskView, Rect boundsOnScreen) { - final TaskViewRepository.TaskViewState state = useRepo() - ? mTaskViewRepo.byTaskView(taskView) - : mTaskViews.get(taskView); + void setTaskBounds(TaskViewTaskController taskView, Rect boundsOnScreen) { + TaskViewRequestedState state = mTaskViews.get(taskView); if (state == null || Objects.equals(boundsOnScreen, state.mBounds)) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.setTaskBoundsInTransition(): " - + "Skipping, same bounds"); return; } state.mBounds.set(boundsOnScreen); if (!state.mVisible) { // Task view isn't visible, the bounds will next visibility update. - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.setTaskBoundsInTransition(): " - + "Skipping, not visible"); return; } if (hasPending()) { // There is already a transition in-flight, the window bounds will be set in // prepareOpenAnimation. - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.setTaskBoundsInTransition(): " - + "Skipping, pending transition"); return; } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.setTaskBoundsInTransition(): taskView=%d " - + "bounds=%s", taskView.hashCode(), boundsOnScreen); WindowContainerTransaction wct = new WindowContainerTransaction(); wct.setBounds(taskView.getTaskInfo().token, boundsOnScreen); mPending.add(new PendingTransition(TRANSIT_CHANGE, wct, taskView, null /* cookie */)); @@ -599,35 +319,13 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV } private void startNextTransition() { - if (mPending.isEmpty()) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.startNextTransition(): None pending"); - return; - } + if (mPending.isEmpty()) return; final PendingTransition pending = mPending.get(0); if (pending.mClaimed != null) { // Wait for this to start animating. - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.startNextTransition(): " - + "taskView=%d pending type=%s transition=%s", pending.mTaskView.hashCode(), - transitTypeToString(pending.mType), pending.mClaimed); return; } - if (pending.mExternalTransition != null) { - pending.mClaimed = pending.mExternalTransition.start(); - if (pending.mClaimed == null) { - ProtoLog.w(WM_SHELL_BUBBLES_NOISY, "TaskViewTransitions.startNextTransition(): " - + "taskView=%d starting the external transition returned a null claim " - + "token. it may have already finished. removing it so that it does not " - + "block other transitions.", pending.mTaskView.hashCode()); - mPending.remove(pending); - startNextTransition(); - return; - } - } else { - pending.mClaimed = mTransitions.startTransition(pending.mType, pending.mWct, this); - } - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.startNextTransition(): " - + "taskView=%d starting type=%s transition=%s", pending.mTaskView.hashCode(), - transitTypeToString(pending.mType), pending.mClaimed); + pending.mClaimed = mTransitions.startTransition(pending.mType, pending.mWct, this); } @Override @@ -636,228 +334,21 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV if (!aborted) return; final PendingTransition pending = findPending(transition); if (pending == null) return; - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.onTransitionConsumed(): taskView=%d " - + "consumed type=%s transition=%s", pending.mTaskView.hashCode(), - transitTypeToString(pending.mType), transition); mPending.remove(pending); startNextTransition(); } - /** - * @param change the change to examine - * @param pending the pending tansition - * @return whether this is a TaskView that this handler will be able to handle - */ - private boolean isValidTaskView(TransitionInfo.Change change, PendingTransition pending) { - final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); - if (taskInfo == null) { - // Not a task, so ignore - return false; - } - - if (change.getMode() == TRANSIT_OPEN) { - // Ignore tasks that are launched in the wrong transition - return pending != null && taskInfo.containsLaunchCookie(pending.mLaunchCookie); - } - if (isTaskViewTask(taskInfo)) { - return true; - } - - // In some cases, findTaskView returns null but the change is still a task view: - if (change.getMode() == TRANSIT_CLOSE) { - // TaskView can be null when closing - return true; - } - if (change.getMode() == TRANSIT_TO_FRONT && pending != null) { - // Accept if an existing task, not currently in TaskView, is - // brought to the front to be moved into TaskView - return isTaskToTaskView(change, pending); - } - return false; - } - - /** - * @return if an existing task, not currently in TaskView, is brought to the front to be moved - * into TaskView (e.g task being moved into a bubble) - */ - private boolean isTaskToTaskView(TransitionInfo.Change change, PendingTransition pending) { - return BubbleAnythingFlagHelper.enableCreateAnyBubble() - && change.getMode() == TRANSIT_TO_FRONT - && pending.mTaskView.getPendingInfo() != null - && pending.mTaskView.getPendingInfo().taskId == change.getTaskInfo().taskId; - } - @Override public boolean startAnimation(@NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - return startAnimation(transition, info, TransitionDispatchState.getDummyInstance(), - startTransaction, finishTransaction, finishCallback); - } - - @Override - public boolean startAnimation(@NonNull IBinder transition, - @Nullable TransitionInfo transitionInfo, - @NonNull TransitionDispatchState dispatchState, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - if (!Flags.taskViewTransitionsRefactor() && !enableHandlersDebuggingMode()) { - return startAnimationLegacy(transition, transitionInfo, startTransaction, - finishTransaction, finishCallback); - } - final boolean inDataCollectionModeOnly = - enableHandlersDebuggingMode() && transitionInfo == null; - final boolean inAnimationMode = !inDataCollectionModeOnly; - final TransitionInfo info = inDataCollectionModeOnly ? dispatchState.mInfo : transitionInfo; - - final PendingTransition pending = findPending(transition); - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.startAnimation(): taskView=%d " - + "type=%s transition=%s", pending != null ? pending.mTaskView.hashCode() : -1, - pending != null ? transitTypeToString(pending.mType) : "unknown", transition); - if (pending != null) { - mPending.remove(pending); - } - if (useRepo() ? mTaskViewRepo.isEmpty() : mTaskViews.isEmpty()) { - if (pending != null) { - Slog.e(TAG, "Pending taskview transition but no task-views"); - } - return false; - } - boolean stillNeedsMatchingLaunch = pending != null && pending.mLaunchCookie != null; - WindowContainerTransaction wct = null; - - // Collect all the tasks views that this handler can handle - ArrayList<TransitionInfo.Change> taskViews = new ArrayList<>(); - ArrayList<TransitionInfo.Change> alienChanges = new ArrayList<>(); - for (int i = 0; i < info.getChanges().size(); ++i) { - final TransitionInfo.Change chg = info.getChanges().get(i); - if (isValidTaskView(chg, pending)) { - taskViews.add(chg); - if (inDataCollectionModeOnly) { - dispatchState.addError(this, chg, LOST_RELEVANT_CHANGE); - } - } else { - alienChanges.add(chg); - } - } - if (inDataCollectionModeOnly) { - return false; - } - - // Prepare taskViews for animation - for (int i = 0; i < taskViews.size(); ++i) { - final TransitionInfo.Change task = taskViews.get(i); - final ActivityManager.RunningTaskInfo taskInfo = task.getTaskInfo(); - final SurfaceControl leash = task.getLeash(); - final TaskViewTaskController infoTv = findTaskView(taskInfo); - - switch (task.getMode()) { - case TRANSIT_TO_BACK: - if (pending != null && pending.mType == TRANSIT_TO_BACK) { - // TO_BACK is only used when setting the task view visibility immediately, - // so in that case we can also hide the surface immediately - startTransaction.hide(leash); - } - infoTv.prepareHideAnimation(finishTransaction); - break; - case TRANSIT_CLOSE: - // TaskView can be null when closing - if (infoTv != null) { - infoTv.prepareCloseAnimation(); - } - break; - case TRANSIT_OPEN: - stillNeedsMatchingLaunch = false; - if (wct == null) wct = new WindowContainerTransaction(); - prepareOpenAnimation(pending.mTaskView, true /* isNewInTaskView */, - startTransaction, finishTransaction, taskInfo, leash, wct); - break; - case TRANSIT_TO_FRONT: - boolean isNewInTaskView = false; - if (wct == null) wct = new WindowContainerTransaction(); - if (infoTv == null && pending != null && isTaskToTaskView(task, pending)) { - // The task is being moved into taskView, so it is still "new" from - // TaskView's perspective (e.g. task being moved into a bubble) - stillNeedsMatchingLaunch = false; - isNewInTaskView = true; - prepareOpenAnimation(pending.mTaskView, isNewInTaskView, startTransaction, - finishTransaction, taskInfo, leash, wct); - } else { - prepareOpenAnimation(infoTv, isNewInTaskView, startTransaction, - finishTransaction, taskInfo, leash, wct); - } - break; - case TRANSIT_CHANGE: - final Rect boundsOnScreen = infoTv.prepareOpen(task.getTaskInfo(), leash); - if (boundsOnScreen != null) { - if (wct == null) wct = new WindowContainerTransaction(); - updateBounds(infoTv, boundsOnScreen, startTransaction, finishTransaction, - taskInfo, leash, wct); - } else { - startTransaction.reparent(leash, infoTv.getSurfaceControl()); - finishTransaction.reparent(leash, infoTv.getSurfaceControl()) - .setPosition(leash, 0, 0); - } - break; - default: - break; - } - } - - // Check for unexpected changes in transition - for (int i = 0; i < alienChanges.size(); ++i) { - final TransitionInfo.Change change = alienChanges.get(i); - final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); - if (taskInfo == null) { - // Silently ignore non-tasks - continue; - } - if (change.getMode() == TRANSIT_OPEN - && (pending == null || !taskInfo.containsLaunchCookie(pending.mLaunchCookie))) { - Slog.e(TAG, "Found a launching TaskView in the wrong transition. All " - + "TaskView launches should be initiated by shell and in their " - + "own transition: " + taskInfo.taskId); - dispatchState.addError(this, change, CAPTURED_CHANGE_IN_WRONG_TRANSITION); - } else { - Slog.w(TAG, "Found a non-TaskView task in a TaskView Transition. This " - + "shouldn't happen, so there may be a visual artifact: " - + taskInfo.taskId); - dispatchState.addError(this, change, CAPTURED_UNRELATED_CHANGE); - } - } - - if (stillNeedsMatchingLaunch) { - Slog.w(TAG, "Expected a TaskView launch in this transition but didn't get one, " - + "cleaning up the task view"); - // Didn't find a task so the task must have never launched - pending.mTaskView.setTaskNotFound(); - } else if (wct == null && pending == null && taskViews.size() != info.getChanges().size()) { - // Just some house-keeping, let another handler animate. - return false; - } - // No animation, just show it immediately. - startTransaction.apply(); - finishCallback.onTransitionFinished(wct); - startNextTransition(); - return true; - } - - private boolean startAnimationLegacy(@NonNull IBinder transition, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull Transitions.TransitionFinishCallback finishCallback) { - final PendingTransition pending = findPending(transition); - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.startAnimation(): taskView=%d " - + "type=%s transition=%s", pending != null ? pending.mTaskView.hashCode() : -1, - pending != null ? transitTypeToString(pending.mType) : "unknown", transition); + PendingTransition pending = findPending(transition); if (pending != null) { mPending.remove(pending); } - if (useRepo() ? mTaskViewRepo.isEmpty() : mTaskViews.isEmpty()) { + if (mTaskViews.isEmpty()) { if (pending != null) { Slog.e(TAG, "Pending taskview transition but no task-views"); } @@ -868,11 +359,10 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV WindowContainerTransaction wct = null; for (int i = 0; i < info.getChanges().size(); ++i) { final TransitionInfo.Change chg = info.getChanges().get(i); - final ActivityManager.RunningTaskInfo taskInfo = chg.getTaskInfo(); - if (taskInfo == null) continue; + if (chg.getTaskInfo() == null) continue; if (TransitionUtil.isClosingType(chg.getMode())) { final boolean isHide = chg.getMode() == TRANSIT_TO_BACK; - TaskViewTaskController tv = findTaskView(taskInfo); + TaskViewTaskController tv = findTaskView(chg.getTaskInfo()); if (tv == null && !isHide) { // TaskView can be null when closing changesHandled++; @@ -882,7 +372,7 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV if (pending != null) { Slog.w(TAG, "Found a non-TaskView task in a TaskView Transition. This " + "shouldn't happen, so there may be a visual artifact: " - + taskInfo.taskId); + + chg.getTaskInfo().taskId); } continue; } @@ -898,64 +388,46 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV } changesHandled++; } else if (TransitionUtil.isOpeningType(chg.getMode())) { - boolean isNewInTaskView = false; - TaskViewTaskController tv; - if (chg.getMode() == TRANSIT_OPEN) { - isNewInTaskView = true; - if (pending == null || !taskInfo.containsLaunchCookie(pending.mLaunchCookie)) { + final boolean taskIsNew = chg.getMode() == TRANSIT_OPEN; + final TaskViewTaskController tv; + if (taskIsNew) { + if (pending == null + || !chg.getTaskInfo().containsLaunchCookie(pending.mLaunchCookie)) { Slog.e(TAG, "Found a launching TaskView in the wrong transition. All " + "TaskView launches should be initiated by shell and in their " - + "own transition: " + taskInfo.taskId); + + "own transition: " + chg.getTaskInfo().taskId); continue; } stillNeedsMatchingLaunch = false; tv = pending.mTaskView; } else { - tv = findTaskView(taskInfo); - if (tv == null && pending != null) { - if (BubbleAnythingFlagHelper.enableCreateAnyBubble() - && chg.getMode() == TRANSIT_TO_FRONT - && pending.mTaskView.getPendingInfo() != null - && pending.mTaskView.getPendingInfo().taskId == taskInfo.taskId) { - // In this case an existing task, not currently in TaskView, is - // brought to the front to be moved into TaskView. This is still - // "new" from TaskView's perspective. (e.g. task being moved into a - // bubble) - isNewInTaskView = true; - stillNeedsMatchingLaunch = false; - tv = pending.mTaskView; - } else { - Slog.w(TAG, "Found a non-TaskView task in a TaskView Transition. " - + "This shouldn't happen, so there may be a visual " - + "artifact: " + taskInfo.taskId); + tv = findTaskView(chg.getTaskInfo()); + if (tv == null) { + if (pending != null) { + Slog.w(TAG, "Found a non-TaskView task in a TaskView Transition. This " + + "shouldn't happen, so there may be a visual artifact: " + + chg.getTaskInfo().taskId); } + continue; } - if (tv == null) continue; } if (wct == null) wct = new WindowContainerTransaction(); - prepareOpenAnimation(tv, isNewInTaskView, startTransaction, finishTransaction, - taskInfo, chg.getLeash(), wct); + tv.prepareOpenAnimation(taskIsNew, startTransaction, finishTransaction, + chg.getTaskInfo(), chg.getLeash(), wct); changesHandled++; } else if (chg.getMode() == TRANSIT_CHANGE) { - TaskViewTaskController tv = findTaskView(taskInfo); + TaskViewTaskController tv = findTaskView(chg.getTaskInfo()); if (tv == null) { if (pending != null) { Slog.w(TAG, "Found a non-TaskView task in a TaskView Transition. This " + "shouldn't happen, so there may be a visual artifact: " - + taskInfo.taskId); + + chg.getTaskInfo().taskId); } continue; } - final Rect boundsOnScreen = tv.prepareOpen(chg.getTaskInfo(), chg.getLeash()); - if (boundsOnScreen != null) { - if (wct == null) wct = new WindowContainerTransaction(); - updateBounds(tv, boundsOnScreen, startTransaction, finishTransaction, - chg.getTaskInfo(), chg.getLeash(), wct); - } else { - startTransaction.reparent(chg.getLeash(), tv.getSurfaceControl()); - finishTransaction.reparent(chg.getLeash(), tv.getSurfaceControl()) - .setPosition(chg.getLeash(), 0, 0); - } + startTransaction.reparent(chg.getLeash(), tv.getSurfaceControl()); + finishTransaction.reparent(chg.getLeash(), tv.getSurfaceControl()) + .setPosition(chg.getLeash(), 0, 0); changesHandled++; } } @@ -974,132 +446,4 @@ public class TaskViewTransitions implements Transitions.TransitionHandler, TaskV startNextTransition(); return true; } - - @VisibleForTesting - public void prepareOpenAnimation(TaskViewTaskController taskView, - final boolean newTask, - SurfaceControl.Transaction startTransaction, - SurfaceControl.Transaction finishTransaction, - ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash, - WindowContainerTransaction wct) { - final Rect boundsOnScreen = taskView.prepareOpen(taskInfo, leash); - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.prepareOpenAnimation(): taskView=%d " - + "newTask=%b bounds=%s", taskView.hashCode(), newTask, boundsOnScreen); - if (boundsOnScreen != null) { - updateBounds(taskView, boundsOnScreen, startTransaction, finishTransaction, taskInfo, - leash, wct); - } else { - // The surface has already been destroyed before the task has appeared, - // so go ahead and hide the task entirely - wct.setHidden(taskInfo.token, true /* hidden */); - updateVisibilityState(taskView, false /* visible */); - // listener callback is below - } - if (newTask) { - wct.setInterceptBackPressedOnTaskRoot(taskInfo.token, true /* intercept */); - } - - if (taskInfo.taskDescription != null) { - int backgroundColor = taskInfo.taskDescription.getBackgroundColor(); - taskView.setResizeBgColor(startTransaction, backgroundColor); - } - - // After the embedded task has appeared, set it to non-trimmable. This is important - // to prevent recents from trimming and removing the embedded task. - wct.setTaskTrimmableFromRecents(taskInfo.token, false /* isTrimmableFromRecents */); - - taskView.notifyAppeared(newTask); - } - - /** - * Updates bounds for the task view during an unfold transition. - * - * @return true if the task was found and a transition for this task is pending. false - * otherwise. - */ - public boolean updateBoundsForUnfold(Rect bounds, SurfaceControl.Transaction startTransaction, - SurfaceControl.Transaction finishTransaction, - ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash) { - final TaskViewTaskController taskView = findTaskView(taskInfo); - if (taskView == null) { - return false; - } - - final PendingTransition pendingTransition = findPending(taskView, TRANSIT_CHANGE); - if (pendingTransition == null) { - return false; - } - - mPending.remove(pendingTransition); - - // reparent the task under the task view surface and set the bounds on it - startTransaction.reparent(leash, taskView.getSurfaceControl()) - .setPosition(leash, 0, 0) - .setWindowCrop(leash, bounds.width(), bounds.height()) - .show(leash); - // the finish transaction would reparent the task back to the transition root, so reparent - // it again to the task view surface - finishTransaction.reparent(leash, taskView.getSurfaceControl()) - .setPosition(leash, 0, 0) - .setWindowCrop(leash, bounds.width(), bounds.height()); - if (useRepo()) { - final TaskViewRepository.TaskViewState state = mTaskViewRepo.byTaskView(taskView); - if (state != null) { - state.mBounds.set(bounds); - } - } else { - updateBoundsState(taskView, bounds); - } - return true; - } - - private void updateBounds(TaskViewTaskController taskView, Rect boundsOnScreen, - SurfaceControl.Transaction startTransaction, - SurfaceControl.Transaction finishTransaction, - ActivityManager.RunningTaskInfo taskInfo, SurfaceControl leash, - WindowContainerTransaction wct) { - ProtoLog.d(WM_SHELL_BUBBLES_NOISY, "Transitions.updateBounds(): taskView=%d bounds=%s", - taskView.hashCode(), boundsOnScreen); - final SurfaceControl tvSurface = taskView.getSurfaceControl(); - // Surface is ready, so just reparent the task to this surface control - startTransaction.reparent(leash, tvSurface) - .show(leash); - // Also reparent on finishTransaction since the finishTransaction will reparent back - // to its "original" parent by default. - if (finishTransaction != null) { - finishTransaction.reparent(leash, tvSurface) - .setPosition(leash, 0, 0) - .setWindowCrop(leash, boundsOnScreen.width(), boundsOnScreen.height()); - } - if (useRepo()) { - final TaskViewRepository.TaskViewState state = mTaskViewRepo.byTaskView(taskView); - if (state != null) { - state.mBounds.set(boundsOnScreen); - state.mVisible = true; - } - } else { - updateBoundsState(taskView, boundsOnScreen); - updateVisibilityState(taskView, true /* visible */); - } - wct.setBounds(taskInfo.token, boundsOnScreen); - taskView.applyCaptionInsetsIfNeeded(); - } - - /** Dumps TaskViewTransitions state. */ - public void dump(PrintWriter pw) { - pw.println("TaskViewTransitions state:"); - pw.println(" Pending transitions count: " + mPending.size()); - for (PendingTransition pendingTransition : mPending) { - pendingTransition.dump(pw, " "); - } - if (useRepo()) { - mTaskViewRepo.dump(pw, " "); - } - } - - /** Interface for running an external transition in this object's pending queue. */ - public interface ExternalTransition { - /** Starts a transition and returns an identifying key for lookup. */ - IBinder start(); - } } diff --git a/wmshell/src/com/android/wm/shell/transition/CounterRotatorHelper.java b/wmshell/src/com/android/wm/shell/transition/CounterRotatorHelper.java index 35427b93ac..b03daaafd7 100644 --- a/wmshell/src/com/android/wm/shell/transition/CounterRotatorHelper.java +++ b/wmshell/src/com/android/wm/shell/transition/CounterRotatorHelper.java @@ -94,11 +94,6 @@ public class CounterRotatorHelper { return rotatedBounds; } - /** Returns true if the change is put on a surface in previous rotation. */ - public boolean isRotated(@NonNull TransitionInfo.Change change) { - return mLastRotationDelta != 0 && mRotatorMap.containsKey(change.getParent()); - } - /** * Removes the counter rotation surface in the finish transaction. No need to reparent the * children as the finish transaction should have already taken care of that. diff --git a/wmshell/src/com/android/wm/shell/transition/DefaultMixedHandler.java b/wmshell/src/com/android/wm/shell/transition/DefaultMixedHandler.java index 71f3bc1fc5..8ee1efa90a 100644 --- a/wmshell/src/com/android/wm/shell/transition/DefaultMixedHandler.java +++ b/wmshell/src/com/android/wm/shell/transition/DefaultMixedHandler.java @@ -19,49 +19,41 @@ package com.android.wm.shell.transition; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; import static android.app.WindowConfiguration.ACTIVITY_TYPE_RECENTS; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; +import static android.view.Display.DEFAULT_DISPLAY; import static android.view.WindowManager.TRANSIT_CHANGE; import static android.view.WindowManager.TRANSIT_PIP; import static android.window.TransitionInfo.FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY; import static com.android.wm.shell.shared.TransitionUtil.isOpeningType; -import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.app.PendingIntent; import android.os.IBinder; -import android.os.RemoteException; import android.util.ArrayMap; -import android.util.Log; import android.util.Pair; import android.view.SurfaceControl; import android.view.WindowManager; -import android.window.RemoteTransition; import android.window.TransitionInfo; import android.window.TransitionRequestInfo; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.activityembedding.ActivityEmbeddingController; -import com.android.wm.shell.bubbles.BubbleTransitions; -import com.android.wm.shell.common.ComponentUtils; +import com.android.wm.shell.common.split.SplitScreenUtils; import com.android.wm.shell.desktopmode.DesktopTasksController; import com.android.wm.shell.keyguard.KeyguardTransitionHandler; import com.android.wm.shell.pip.PipTransitionController; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.recents.RecentsTransitionHandler; import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.shared.pip.PipFlags; import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.splitscreen.StageCoordinator; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.unfold.UnfoldTransitionHandler; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.Map; import java.util.Optional; @@ -81,25 +73,18 @@ public class DefaultMixedHandler implements MixedTransitionHandler, private StageCoordinator mSplitHandler; private final KeyguardTransitionHandler mKeyguardHandler; private DesktopTasksController mDesktopTasksController; - private BubbleTransitions mBubbleTransitions; private UnfoldTransitionHandler mUnfoldHandler; private ActivityEmbeddingController mActivityEmbeddingController; abstract static class MixedTransition { - - // Mixed transition types - /** Entering Pip from split, breaks split. */ static final int TYPE_ENTER_PIP_FROM_SPLIT = 1; /** Both the display and split-state (enter/exit) is changing */ static final int TYPE_DISPLAY_AND_SPLIT_CHANGE = 2; - /** - * While handling an intent with its own remoteTransition, a PIP enter or Desktop immersive - * exit change is found. - */ - static final int TYPE_OPTIONS_REMOTE_AND_PIP_OR_DESKTOP_CHANGE = 3; + /** Pip was entered while handling an intent with its own remoteTransition. */ + static final int TYPE_OPTIONS_REMOTE_AND_PIP_CHANGE = 3; /** Recents transition while split-screen foreground. */ static final int TYPE_RECENTS_DURING_SPLIT = 4; @@ -125,48 +110,6 @@ public class DefaultMixedHandler implements MixedTransitionHandler, /** The display changes when pip is entering. */ static final int TYPE_ENTER_PIP_WITH_DISPLAY_CHANGE = 11; - /** Open transition during a desktop session. */ - static final int TYPE_OPEN_IN_DESKTOP = 12; - - /** Transition of a visible app into a bubble. */ - static final int TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE = 13; - - /** Transition of a visible app in a split pair into a bubble. */ - static final int TYPE_LAUNCH_OR_CONVERT_SPLIT_TASK_TO_BUBBLE = 14; - - /** Transition of a visible app in Pip into a bubble. */ - static final int TYPE_LAUNCH_OR_CONVERT_PIP_TASK_TO_BUBBLE = 15; - - /** - * Transition of a visible app into a bubble when launched from another bubble or for an - * existing bubble. - */ - static final int TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE_FROM_EXISTING_BUBBLE = 16; - - @IntDef(prefix = {"TYPE_"}, value = { - TYPE_ENTER_PIP_FROM_SPLIT, - TYPE_DISPLAY_AND_SPLIT_CHANGE, - TYPE_OPTIONS_REMOTE_AND_PIP_OR_DESKTOP_CHANGE, - TYPE_RECENTS_DURING_SPLIT, - TYPE_KEYGUARD, - TYPE_RECENTS_DURING_KEYGUARD, - TYPE_RECENTS_DURING_DESKTOP, - TYPE_UNFOLD, - TYPE_ENTER_PIP_FROM_ACTIVITY_EMBEDDING, - TYPE_ENTER_PIP_REPLACE_FROM_SPLIT, - TYPE_ENTER_PIP_WITH_DISPLAY_CHANGE, - TYPE_OPEN_IN_DESKTOP, - TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE, - TYPE_LAUNCH_OR_CONVERT_SPLIT_TASK_TO_BUBBLE, - TYPE_LAUNCH_OR_CONVERT_PIP_TASK_TO_BUBBLE, - TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE_FROM_EXISTING_BUBBLE, - }) - @Retention(RetentionPolicy.SOURCE) - @interface MixedTransitionType { - } - - // Mixed transition sub-animation types - /** The default animation for this mixed transition. */ static final int ANIM_TYPE_DEFAULT = 0; @@ -174,19 +117,9 @@ public class DefaultMixedHandler implements MixedTransitionHandler, static final int ANIM_TYPE_GOING_HOME = 1; /** For RECENTS_DURING_SPLIT, is set when this turns into a pair->pair task switch. */ - static final int ANIM_TYPE_PAIR_TO_PAIR = 2; + static final int ANIM_TYPE_PAIR_TO_PAIR = 1; - @IntDef(prefix = {"ANIM_TYPE_"}, value = { - ANIM_TYPE_DEFAULT, - ANIM_TYPE_GOING_HOME, - ANIM_TYPE_PAIR_TO_PAIR, - }) - @interface SubAnimationType { - } - - @MixedTransitionType final int mType; - @SubAnimationType int mAnimType = ANIM_TYPE_DEFAULT; final IBinder mTransition; @@ -216,7 +149,7 @@ public class DefaultMixedHandler implements MixedTransitionHandler, */ int mInFlightSubAnimations = 0; - MixedTransition(@MixedTransitionType int type, IBinder transition, Transitions player, + MixedTransition(int type, IBinder transition, Transitions player, MixedTransitionHandler mixedHandler, PipTransitionController pipHandler, StageCoordinator splitHandler, KeyguardTransitionHandler keyguardHandler) { mType = type; @@ -236,9 +169,7 @@ public class DefaultMixedHandler implements MixedTransitionHandler, abstract void mergeAnimation( @NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback); abstract void onTransitionConsumed( @@ -296,11 +227,11 @@ public class DefaultMixedHandler implements MixedTransitionHandler, KeyguardTransitionHandler keyguardHandler, Optional<DesktopTasksController> desktopTasksControllerOptional, Optional<UnfoldTransitionHandler> unfoldHandler, - Optional<ActivityEmbeddingController> activityEmbeddingController, - BubbleTransitions bubbleTransitions) { + Optional<ActivityEmbeddingController> activityEmbeddingController) { mPlayer = player; mKeyguardHandler = keyguardHandler; - if (pipTransitionController != null + if (Transitions.ENABLE_SHELL_TRANSITIONS + && pipTransitionController != null && splitScreenControllerOptional.isPresent()) { // Add after dependencies because it is higher priority shellInit.addInitCallback(() -> { @@ -318,7 +249,6 @@ public class DefaultMixedHandler implements MixedTransitionHandler, mDesktopTasksController = desktopTasksControllerOptional.orElse(null); mUnfoldHandler = unfoldHandler.orElse(null); mActivityEmbeddingController = activityEmbeddingController.orElse(null); - mBubbleTransitions = bubbleTransitions; }, this); } } @@ -327,55 +257,6 @@ public class DefaultMixedHandler implements MixedTransitionHandler, @Override public WindowContainerTransaction handleRequest(@NonNull IBinder transition, @NonNull TransitionRequestInfo request) { - // Transitions involving a task that is being bubbled - if (requestHasBubbleEnter(request)) { - consumeRemoteTransitionIfNecessary(transition, request.getRemoteTransition()); - - if (mSplitHandler.requestImpliesSplitToBubble(request)) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, - " Got a Bubble-enter request from a split task"); - mBubbleTransitions.storePendingEnterTransition(transition, request); - mActiveTransitions.add(createDefaultMixedTransition( - MixedTransition.TYPE_LAUNCH_OR_CONVERT_SPLIT_TASK_TO_BUBBLE, transition)); - - WindowContainerTransaction out = new WindowContainerTransaction(); - mSplitHandler.addExitForBubblesIfNeeded(request, out); - return out; - } else if (request.getTriggerTask() != null - && mPipHandler.isTaskActiveInPip(request.getTriggerTask().taskId)) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, - " Got a Bubble-enter request from a pip task"); - mBubbleTransitions.storePendingEnterTransition(transition, request); - mActiveTransitions.add(createDefaultMixedTransition( - MixedTransition.TYPE_LAUNCH_OR_CONVERT_PIP_TASK_TO_BUBBLE, transition)); - return new WindowContainerTransaction(); - } else { - // This check should happen after we've checked for split + bubble enter - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, - " Got a Bubble-enter request"); - mBubbleTransitions.storePendingEnterTransition(transition, request); - mActiveTransitions.add(createDefaultMixedTransition( - MixedTransition.TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE, transition)); - return new WindowContainerTransaction(); - } - } else if (requestHasBubbleEnterFromAppBubbleOrExistingBubble(request)) { - consumeRemoteTransitionIfNecessary(transition, request.getRemoteTransition()); - - if (mSplitHandler.requestImpliesSplitToBubble(request)) { - // TODO: Handle from split - } else { - // Note: This will currently "intercept" launches even while the bubble is collapsed - // but we will not actually play any animation in DefaultMixedTransition unless the - // launch contains an appBubble task as well - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Got a Bubble-enter request " - + "from an app bubble or for an existing bubble"); - mActiveTransitions.add(createDefaultMixedTransition( - MixedTransition.TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE_FROM_EXISTING_BUBBLE, - transition)); - return new WindowContainerTransaction(); - } - } - if (mSplitHandler.requestImpliesSplitToPip(request)) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Got a PiP-enter request while " + "Split-Screen is active, so treat it as Mixed."); @@ -388,10 +269,7 @@ public class DefaultMixedHandler implements MixedTransitionHandler, WindowContainerTransaction out = new WindowContainerTransaction(); mPipHandler.augmentRequest(transition, request, out); - if (PipFlags.isPip2ExperimentEnabled() && mSplitHandler.isSplitScreenVisible()) { - mSplitHandler.removePipFromSplitIfNeeded(request, out); - } - mSplitHandler.addEnterOrExitForPipIfNeeded(request, out); + mSplitHandler.addEnterOrExitIfNeeded(request, out); return out; } else if (request.getType() == TRANSIT_PIP && (request.getFlags() & FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY) != 0 && ( @@ -402,7 +280,6 @@ public class DefaultMixedHandler implements MixedTransitionHandler, MixedTransition.TYPE_ENTER_PIP_FROM_ACTIVITY_EMBEDDING, transition)); // Postpone transition splitting to later. WindowContainerTransaction out = new WindowContainerTransaction(); - mPipHandler.augmentRequest(transition, request, out); return out; } else if (request.getRemoteTransition() != null && TransitionUtil.isOpeningType(request.getType()) @@ -419,7 +296,7 @@ public class DefaultMixedHandler implements MixedTransitionHandler, return null; } final MixedTransition mixed = createDefaultMixedTransition( - MixedTransition.TYPE_OPTIONS_REMOTE_AND_PIP_OR_DESKTOP_CHANGE, transition); + MixedTransition.TYPE_OPTIONS_REMOTE_AND_PIP_CHANGE, transition); mixed.mLeftoversHandler = handler.first; mActiveTransitions.add(mixed); if (mixed.mLeftoversHandler != mPlayer.getRemoteTransitionHandler()) { @@ -445,8 +322,7 @@ public class DefaultMixedHandler implements MixedTransitionHandler, new WindowContainerTransaction()); } final MixedTransition mixed = createRecentsMixedTransition( - MixedTransition.TYPE_RECENTS_DURING_SPLIT, transition, - request.getTriggerTask().displayId); + MixedTransition.TYPE_RECENTS_DURING_SPLIT, transition); mixed.mLeftoversHandler = handler.first; mActiveTransitions.add(mixed); return handler.second; @@ -456,100 +332,58 @@ public class DefaultMixedHandler implements MixedTransitionHandler, if (wct != null) { mActiveTransitions.add(createDefaultMixedTransition( MixedTransition.TYPE_UNFOLD, transition)); - mBubbleTransitions.notifyUnfoldTransitionStarting(transition); } return wct; - } else if (mDesktopTasksController != null - && mDesktopTasksController.shouldPlayDesktopAnimation(request)) { - final Pair<Transitions.TransitionHandler, WindowContainerTransaction> handler = - mPlayer.dispatchRequest(transition, request, /* skip= */ this); - if (handler == null) { - return null; - } - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Got a desktop request, so" - + " treat it as Mixed. handler=%s", handler.first); - final MixedTransition mixed = createDefaultMixedTransition( - MixedTransition.TYPE_OPEN_IN_DESKTOP, transition); - mixed.mLeftoversHandler = handler.first; - mActiveTransitions.add(mixed); - return handler.second; } return null; } - private DefaultMixedTransition createDefaultMixedTransition( - @MixedTransition.MixedTransitionType int type, IBinder transition) { + private DefaultMixedTransition createDefaultMixedTransition(int type, IBinder transition) { return new DefaultMixedTransition( type, transition, mPlayer, this, mPipHandler, mSplitHandler, mKeyguardHandler, - mUnfoldHandler, mActivityEmbeddingController, mDesktopTasksController, - mBubbleTransitions); + mUnfoldHandler, mActivityEmbeddingController); } @Override - public Consumer<IBinder> handleRecentsRequest(int displayId) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, - " handleRecentsRequest displayId=%d deskActive=%b", - displayId, - mDesktopTasksController != null && mDesktopTasksController.isAnyDeskActive( - displayId)); + public Consumer<IBinder> handleRecentsRequest(WindowContainerTransaction outWCT) { if (mRecentsHandler != null) { if (mSplitHandler.isSplitScreenVisible()) { - return transition -> setRecentsTransitionDuringSplit(transition, displayId); - } else if (mKeyguardHandler.isKeyguardShowing() - && !mKeyguardHandler.isKeyguardAnimating()) { - return transition -> setRecentsTransitionDuringKeyguard(transition, displayId); + return this::setRecentsTransitionDuringSplit; + } else if (mKeyguardHandler.isKeyguardShowing()) { + return this::setRecentsTransitionDuringKeyguard; } else if (mDesktopTasksController != null - && mDesktopTasksController.isAnyDeskActive(displayId)) { - return transition -> setRecentsTransitionDuringDesktop(transition, displayId); + // Check on the default display. Recents/gesture nav is only available there + && mDesktopTasksController.getVisibleTaskCount(DEFAULT_DISPLAY) > 0) { + return this::setRecentsTransitionDuringDesktop; } } return null; } - @Override - public void handleFinishRecents(boolean returnToApp, - @NonNull WindowContainerTransaction finishWct, - @NonNull SurfaceControl.Transaction finishT) { - if (mRecentsHandler != null) { - for (int i = mActiveTransitions.size() - 1; i >= 0; --i) { - final MixedTransition mixed = mActiveTransitions.get(i); - if (mixed.mType == MixedTransition.TYPE_RECENTS_DURING_SPLIT) { - ((RecentsMixedTransition) mixed).onAnimateRecentsDuringSplitFinishing( - returnToApp, finishWct, finishT); - } else if (mixed.mType == MixedTransition.TYPE_RECENTS_DURING_DESKTOP) { - ((RecentsMixedTransition) mixed).onAnimateRecentsDuringDesktopFinishing( - returnToApp, finishWct); - } - } - } - } - - private void setRecentsTransitionDuringSplit(IBinder transition, int displayId) { + private void setRecentsTransitionDuringSplit(IBinder transition) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Got a recents request while " + "Split-Screen is foreground, so treat it as Mixed."); mActiveTransitions.add(createRecentsMixedTransition( - MixedTransition.TYPE_RECENTS_DURING_SPLIT, transition, displayId)); + MixedTransition.TYPE_RECENTS_DURING_SPLIT, transition)); } - private void setRecentsTransitionDuringKeyguard(IBinder transition, int displayId) { + private void setRecentsTransitionDuringKeyguard(IBinder transition) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Got a recents request while " + "keyguard is visible, so treat it as Mixed."); mActiveTransitions.add(createRecentsMixedTransition( - MixedTransition.TYPE_RECENTS_DURING_KEYGUARD, transition, displayId)); + MixedTransition.TYPE_RECENTS_DURING_KEYGUARD, transition)); } - private void setRecentsTransitionDuringDesktop(IBinder transition, int displayId) { + private void setRecentsTransitionDuringDesktop(IBinder transition) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Got a recents request while " + "desktop mode is active, so treat it as Mixed."); mActiveTransitions.add(createRecentsMixedTransition( - MixedTransition.TYPE_RECENTS_DURING_DESKTOP, transition, displayId)); + MixedTransition.TYPE_RECENTS_DURING_DESKTOP, transition)); } - private MixedTransition createRecentsMixedTransition(int type, IBinder transition, - int displayId) { + private MixedTransition createRecentsMixedTransition(int type, IBinder transition) { return new RecentsMixedTransition(type, transition, mPlayer, this, mPipHandler, - mSplitHandler, mKeyguardHandler, mRecentsHandler, mDesktopTasksController, - displayId); + mSplitHandler, mKeyguardHandler, mRecentsHandler, mDesktopTasksController); } static TransitionInfo subCopy(@NonNull TransitionInfo info, @@ -565,6 +399,7 @@ public class DefaultMixedHandler implements MixedTransitionHandler, for (int i = 0; i < info.getRootCount(); ++i) { out.addRoot(info.getRoot(i)); } + out.setAnimationOptions(info.getAnimationOptions()); return out; } @@ -785,7 +620,7 @@ public class DefaultMixedHandler implements MixedTransitionHandler, // task enter split. if (mPipHandler != null) { return mPipHandler - .isPackageActiveInPip(ComponentUtils.getPackageName(intent.getIntent())); + .isPackageActiveInPip(SplitScreenUtils.getPackageName(intent.getIntent())); } return false; } @@ -797,7 +632,7 @@ public class DefaultMixedHandler implements MixedTransitionHandler, // task enter split. if (mPipHandler != null) { return mPipHandler.isPackageActiveInPip( - ComponentUtils.getPackageName(taskId, shellTaskOrganizer)); + SplitScreenUtils.getPackageName(taskId, shellTaskOrganizer)); } return false; } @@ -814,48 +649,9 @@ public class DefaultMixedHandler implements MixedTransitionHandler, return mPipHandler.isEnteringPip(change, transitType); } - /** - * Returns whether the given request for a launching bubble and should be handled by the - * bubbles transition. - */ - public boolean requestHasBubbleEnter(@NonNull TransitionRequestInfo request) { - return BubbleAnythingFlagHelper.enableCreateAnyBubble() - && request.getTriggerTask() != null - && mBubbleTransitions.hasPendingEnterTransition(request); - } - - /** - * Returns whether the given request for a launching task is from an app bubble or for an - * existing bubble and should be handled by the bubbles transition. - */ - public boolean requestHasBubbleEnterFromAppBubbleOrExistingBubble( - @NonNull TransitionRequestInfo request) { - return BubbleAnythingFlagHelper.enableCreateAnyBubble() - && request.getTriggerTask() != null - && mBubbleTransitions.shouldBeAppBubble(request.getTriggerTask()); - } - - /** - * Notifies the remote transition that it will not be played and is consumed by another - * transition (and it can clean up accordingly). - */ - private void consumeRemoteTransitionIfNecessary(@NonNull IBinder transition, - @Nullable RemoteTransition remote) { - if (remote != null) { - try { - remote.getRemoteTransition().onTransitionConsumed(transition, false /* aborted */); - } catch (RemoteException e) { - Log.e(ShellProtoLogGroup.WM_SHELL_TRANSITIONS.getTag(), - "Error notifying remote onTransitionConsumed()", e); - } - } - } - @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { for (int i = 0; i < mActiveTransitions.size(); ++i) { if (mActiveTransitions.get(i).mTransition != mergeTarget) continue; @@ -865,7 +661,7 @@ public class DefaultMixedHandler implements MixedTransitionHandler, // Already done, so no need to end it. return; } - mixed.mergeAnimation(transition, info, startT, finishT, mergeTarget, finishCallback); + mixed.mergeAnimation(transition, info, t, mergeTarget, finishCallback); } } diff --git a/wmshell/src/com/android/wm/shell/transition/DefaultMixedTransition.java b/wmshell/src/com/android/wm/shell/transition/DefaultMixedTransition.java index 32c01919b3..c33fb80fde 100644 --- a/wmshell/src/com/android/wm/shell/transition/DefaultMixedTransition.java +++ b/wmshell/src/com/android/wm/shell/transition/DefaultMixedTransition.java @@ -16,9 +16,6 @@ package com.android.wm.shell.transition; -import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD; -import static android.view.WindowManager.TRANSIT_CHANGE; -import static android.view.WindowManager.TRANSIT_PIP; import static android.view.WindowManager.TRANSIT_TO_BACK; import static com.android.wm.shell.transition.DefaultMixedHandler.subCopy; @@ -27,51 +24,40 @@ import static com.android.wm.shell.transition.MixedTransitionHelper.animateKeygu import android.annotation.NonNull; import android.annotation.Nullable; -import android.app.ActivityManager; import android.os.IBinder; import android.view.SurfaceControl; import android.window.TransitionInfo; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.activityembedding.ActivityEmbeddingController; -import com.android.wm.shell.bubbles.BubbleTransitions; -import com.android.wm.shell.desktopmode.DesktopTasksController; import com.android.wm.shell.keyguard.KeyguardTransitionHandler; import com.android.wm.shell.pip.PipTransitionController; -import com.android.wm.shell.pip2.phone.transition.PipTransitionUtils; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.splitscreen.SplitScreen; -import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.splitscreen.StageCoordinator; import com.android.wm.shell.unfold.UnfoldTransitionHandler; -import java.util.List; - class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { private final UnfoldTransitionHandler mUnfoldHandler; private final ActivityEmbeddingController mActivityEmbeddingController; - @Nullable - private final DesktopTasksController mDesktopTasksController; - private final BubbleTransitions mBubbleTransitions; DefaultMixedTransition(int type, IBinder transition, Transitions player, MixedTransitionHandler mixedHandler, PipTransitionController pipHandler, StageCoordinator splitHandler, KeyguardTransitionHandler keyguardHandler, UnfoldTransitionHandler unfoldHandler, - ActivityEmbeddingController activityEmbeddingController, - @Nullable DesktopTasksController desktopTasksController, - BubbleTransitions bubbleTransitions) { + ActivityEmbeddingController activityEmbeddingController) { super(type, transition, player, mixedHandler, pipHandler, splitHandler, keyguardHandler); mUnfoldHandler = unfoldHandler; mActivityEmbeddingController = activityEmbeddingController; - mDesktopTasksController = desktopTasksController; - mBubbleTransitions = bubbleTransitions; switch (type) { case TYPE_UNFOLD: mLeftoversHandler = mUnfoldHandler; break; + case TYPE_DISPLAY_AND_SPLIT_CHANGE: + case TYPE_ENTER_PIP_FROM_ACTIVITY_EMBEDDING: + case TYPE_ENTER_PIP_FROM_SPLIT: + case TYPE_KEYGUARD: + case TYPE_OPTIONS_REMOTE_AND_PIP_CHANGE: default: break; } @@ -96,30 +82,14 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { animateEnterPipFromSplit(this, info, startTransaction, finishTransaction, finishCallback, mPlayer, mMixedHandler, mPipHandler, mSplitHandler, /*replacingPip*/ true); - case TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE -> - animateEnterBubbles(transition, info, startTransaction, finishTransaction, - finishCallback, mBubbleTransitions); - case TYPE_LAUNCH_OR_CONVERT_SPLIT_TASK_TO_BUBBLE -> - animateEnterBubblesFromSplit(this, transition, info, startTransaction, - finishTransaction, finishCallback, mSplitHandler, mBubbleTransitions); - case TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE_FROM_EXISTING_BUBBLE -> - animateEnterBubblesFromBubble(transition, info, startTransaction, - finishTransaction, finishCallback, mBubbleTransitions); - case TYPE_LAUNCH_OR_CONVERT_PIP_TASK_TO_BUBBLE -> - animateEnterBubblesFromPip(this, transition, info, startTransaction, - finishTransaction, finishCallback, mPipHandler, mBubbleTransitions); case TYPE_KEYGUARD -> animateKeyguard(this, info, startTransaction, finishTransaction, finishCallback, mKeyguardHandler, mPipHandler); - case TYPE_OPTIONS_REMOTE_AND_PIP_OR_DESKTOP_CHANGE -> - animateOpenIntentWithRemoteAndPipOrDesktop(transition, info, startTransaction, + case TYPE_OPTIONS_REMOTE_AND_PIP_CHANGE -> + animateOpenIntentWithRemoteAndPip(transition, info, startTransaction, finishTransaction, finishCallback); case TYPE_UNFOLD -> - animateUnfold(transition, info, startTransaction, finishTransaction, - finishCallback); - case TYPE_OPEN_IN_DESKTOP -> - animateOpenInDesktop( - transition, info, startTransaction, finishTransaction, finishCallback); + animateUnfold(info, startTransaction, finishTransaction, finishCallback); default -> throw new IllegalStateException( "Starting default mixed animation with unknown or illegal type: " + mType); }; @@ -148,13 +118,6 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { } } - TransitionInfo.Change pipActivityChange = null; - if (pipChange != null) { - pipActivityChange = PipTransitionUtils.getDeferConfigActivityChange( - info, pipChange.getContainer()); - everythingElse.getChanges().remove(pipActivityChange); - } - final Transitions.TransitionFinishCallback finishCB = (wct) -> { --mInFlightSubAnimations; joinFinishArgs(wct); @@ -167,23 +130,13 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { return false; } - if (pipChange != null && pipActivityChange == null) { - // We are operating on a single PiP task for the enter animation here. + // PIP window should always be on the highest Z order. + if (pipChange != null) { mInFlightSubAnimations = 2; - // PIP window should always be on the highest Z order. mPipHandler.startEnterAnimation( pipChange, startTransaction.setLayer(pipChange.getLeash(), Integer.MAX_VALUE), finishTransaction, finishCB); - } else if (pipActivityChange != null) { - // If there is both a PiP task and a PiP config-at-end activity change, - // put them into a separate TransitionInfo, and send to be animated as TRANSIT_PIP. - mInFlightSubAnimations = 2; - TransitionInfo pipInfo = subCopy(info, TRANSIT_PIP, false /* withChanges */); - pipInfo.getChanges().addAll(List.of(pipChange, pipActivityChange)); - mPipHandler.startAnimation(mTransition, pipInfo, - startTransaction.setLayer(pipChange.getLeash(), Integer.MAX_VALUE), - finishTransaction, finishCB); } else { mInFlightSubAnimations = 1; } @@ -193,36 +146,32 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { return true; } - private boolean animateOpenIntentWithRemoteAndPipOrDesktop( + private boolean animateOpenIntentWithRemoteAndPip( @NonNull IBinder transition, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull Transitions.TransitionFinishCallback finishCallback) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Mixed transition for opening an intent" - + " with a remote transition and PIP or Desktop #%d", info.getDebugId()); - boolean handledToPipOrDesktop = tryAnimateOpenIntentWithRemoteAndPipOrDesktop( + + " with a remote transition and PIP #%d", info.getDebugId()); + boolean handledToPip = tryAnimateOpenIntentWithRemoteAndPip( info, startTransaction, finishTransaction, finishCallback); // Consume the transition on remote handler if the leftover handler already handle this // transition. And if it cannot, the transition will be handled by remote handler, so don't // consume here. - // Need to check leftOverHandler as it may change in - // #animateOpenIntentWithRemoteAndPipOrDesktop - if (handledToPipOrDesktop && mHasRequestToRemote + // Need to check leftOverHandler as it may change in #animateOpenIntentWithRemoteAndPip + if (handledToPip && mHasRequestToRemote && mLeftoversHandler != mPlayer.getRemoteTransitionHandler()) { mPlayer.getRemoteTransitionHandler().onTransitionConsumed(transition, false, null); } - return handledToPipOrDesktop; + return handledToPip; } - private boolean tryAnimateOpenIntentWithRemoteAndPipOrDesktop( + private boolean tryAnimateOpenIntentWithRemoteAndPip( @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull Transitions.TransitionFinishCallback finishCallback) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, - "tryAnimateOpenIntentWithRemoteAndPipOrDesktop"); TransitionInfo.Change pipChange = null; - TransitionInfo.Change pipActivityChange = null; for (int i = info.getChanges().size() - 1; i >= 0; --i) { TransitionInfo.Change change = info.getChanges().get(i); if (mPipHandler.isEnteringPip(change, info.getType())) { @@ -232,25 +181,6 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { } pipChange = change; info.getChanges().remove(i); - } else if (change.getTaskInfo() == null && change.getParent() != null - && pipChange != null && change.getParent().equals(pipChange.getContainer())) { - // Cache the PiP activity if it's a target and cached pip task change is its parent; - // note that we are bottom-to-top, so if such activity has a task - // that is also a target, then it must have been cached already as pipChange. - pipActivityChange = change; - } - } - TransitionInfo.Change desktopChange = null; - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - TransitionInfo.Change change = info.getChanges().get(i); - if (mDesktopTasksController != null - && mDesktopTasksController.isDesktopChange(mTransition, change)) { - if (desktopChange != null) { - throw new IllegalStateException("More than 1 desktop changes in one" - + " transition? " + info); - } - desktopChange = change; - info.getChanges().remove(i); } } Transitions.TransitionFinishCallback finishCB = (wct) -> { @@ -259,12 +189,7 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { if (mInFlightSubAnimations > 0) return; finishCallback.onTransitionFinished(mFinishWCT); }; - if ((pipChange == null && desktopChange == null) - || (pipChange != null && desktopChange != null)) { - // Don't split the transition. Let the leftovers handler handle it all. - // TODO: b/? - split the transition into three pieces when there's both a PIP and a - // desktop change are present. For example, during remote intent open over a desktop - // with both a PIP capable task and an immersive task. + if (pipChange == null) { if (mLeftoversHandler != null) { mInFlightSubAnimations = 1; if (mLeftoversHandler.startAnimation( @@ -273,197 +198,30 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { } } return false; - } else if (pipChange != null && desktopChange == null) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Splitting PIP into a separate" - + " animation because remote-animation likely doesn't support it #%d", - info.getDebugId()); - // Split the transition into 2 parts: the pip part and the rest. - mInFlightSubAnimations = 2; - // make a new startTransaction because pip's startEnterAnimation "consumes" it so - // we need a separate one to send over to launcher. - SurfaceControl.Transaction otherStartT = new SurfaceControl.Transaction(); - if (pipActivityChange == null) { - mPipHandler.startEnterAnimation(pipChange, otherStartT, finishTransaction, - finishCB); - } else { - info.getChanges().remove(pipActivityChange); - TransitionInfo pipInfo = subCopy(info, TRANSIT_PIP, false /* withChanges */); - pipInfo.getChanges().addAll(List.of(pipChange, pipActivityChange)); - mPipHandler.startAnimation(mTransition, pipInfo, startTransaction, - finishTransaction, finishCB); - } + } + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Splitting PIP into a separate" + + " animation because remote-animation likely doesn't support it #%d", + info.getDebugId()); + // Split the transition into 2 parts: the pip part and the rest. + mInFlightSubAnimations = 2; + // make a new startTransaction because pip's startEnterAnimation "consumes" it so + // we need a separate one to send over to launcher. + SurfaceControl.Transaction otherStartT = new SurfaceControl.Transaction(); - // Dispatch the rest of the transition normally. - if (mLeftoversHandler != null - && mLeftoversHandler.startAnimation(mTransition, info, - startTransaction, finishTransaction, finishCB)) { - return true; - } - mLeftoversHandler = mPlayer.dispatchTransition( - mTransition, info, startTransaction, finishTransaction, finishCB, - mMixedHandler); + mPipHandler.startEnterAnimation(pipChange, otherStartT, finishTransaction, finishCB); + + // Dispatch the rest of the transition normally. + if (mLeftoversHandler != null + && mLeftoversHandler.startAnimation(mTransition, info, + startTransaction, finishTransaction, finishCB)) { return true; - } else if (pipChange == null && desktopChange != null) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Splitting desktop change into a" - + "separate animation because remote-animation likely doesn't support" - + "it #%d", info.getDebugId()); - mInFlightSubAnimations = 2; - SurfaceControl.Transaction otherStartT = new SurfaceControl.Transaction(); - - mDesktopTasksController.animateDesktopChange( - mTransition, desktopChange, otherStartT, finishTransaction, finishCB); - - // Dispatch the rest of the transition normally. - if (mLeftoversHandler != null - && mLeftoversHandler.startAnimation(mTransition, info, - startTransaction, finishTransaction, finishCB)) { - return true; - } - mLeftoversHandler = mPlayer.dispatchTransition( - mTransition, info, startTransaction, finishTransaction, finishCB, - mMixedHandler); - return true; - } else { - throw new IllegalStateException( - "All PIP and Immersive combinations should've been handled"); } - } - - static boolean animateEnterBubbles( - @NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull Transitions.TransitionFinishCallback finishCallback, - @NonNull BubbleTransitions bubbleTransitions) { - final Transitions.TransitionHandler handler = bubbleTransitions.getRunningEnterTransition( - transition); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Animating a mixed transition for " - + "entering Bubbles while an app is in the foreground by %s", handler); - // TODO(b/408328557): Migrate to checking transition token - handler.startAnimation(transition, info, startTransaction, finishTransaction, - finishCallback); + mLeftoversHandler = mPlayer.dispatchTransition( + mTransition, info, startTransaction, finishTransaction, finishCB, mMixedHandler); return true; } - static boolean animateEnterBubblesFromSplit( - @NonNull DefaultMixedHandler.MixedTransition mixed, - @NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull Transitions.TransitionFinishCallback finishCallback, - @NonNull StageCoordinator splitHandler, - @NonNull BubbleTransitions bubbleTransitions) { - final Transitions.TransitionHandler handler = bubbleTransitions.getRunningEnterTransition( - transition); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Animating a mixed transition for " - + "entering Bubbles while Split-Screen is foreground by %s", handler); - - TransitionInfo.Change bubblingTask = getChangeForBubblingTask(info, bubbleTransitions); - // find previous split location for other task - @SplitScreen.StageType int topSplitStageToKeep = SplitScreen.STAGE_TYPE_UNDEFINED; - for (int i = info.getChanges().size() - 1; i >= 0; i--) { - TransitionInfo.Change change = info.getChanges().get(i); - if (change == bubblingTask) continue; - int prevStage = splitHandler.getSplitItemStage(change.getLastParent()); - if (prevStage != SplitScreen.STAGE_TYPE_UNDEFINED) { - topSplitStageToKeep = prevStage; - break; - } - } - splitHandler.prepareDismissAnimation(topSplitStageToKeep, - SplitScreenController.EXIT_REASON_CHILD_TASK_ENTER_BUBBLE, info, startTransaction, - finishTransaction); - - // TODO(b/408328557): Migrate to checking transition token - handler.startAnimation(transition, info, startTransaction, finishTransaction, - finishCallback); - return true; - } - - static boolean animateEnterBubblesFromPip( - @NonNull DefaultMixedHandler.MixedTransition mixed, - @NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull Transitions.TransitionFinishCallback finishCallback, - @NonNull PipTransitionController pipHandler, - @NonNull BubbleTransitions bubbleTransitions) { - final Transitions.TransitionHandler handler = bubbleTransitions.getRunningEnterTransition( - transition); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Animating a mixed transition for " - + "entering Bubbles while PIP is foreground by %s", handler); - pipHandler.cleanUpState(); - handler.startAnimation(transition, info, startTransaction, finishTransaction, - finishCallback); - return true; - } - - static boolean animateEnterBubblesFromBubble( - @NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull Transitions.TransitionFinishCallback finishCallback, - @NonNull BubbleTransitions bubbleTransitions) { - // Identify the task being launched into a bubble - final TransitionInfo.Change change = getChangeForBubblingTask(info, bubbleTransitions); - if (change == null) { - // Fallback to remote transition scenarios, ex: - // 1. Move bubble'd app to fullscreen for launcher icon clicked - // 2. Launch activity in expanded and selected bubble for notification clicked - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " No bubbling task found"); - return false; - } - - // Task transition scenarios, ex: - // 1. Start a new task from a bubbled task - // 2. Expand the collapsed bubble for notification launch - // 3. Switch the expanded bubble for notification launch - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Animating a mixed transition for " - + "entering bubble from another bubbled task or for an existing bubble"); - final boolean started = bubbleTransitions.startBubbleToBubbleLaunchOrExistingBubbleConvert( - transition, change.getTaskInfo(), handler -> { - final Transitions.TransitionHandler h = bubbleTransitions - .getRunningEnterTransition(transition); - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Animation played by %s", - h); - h.startAnimation( - transition, info, startTransaction, finishTransaction, finishCallback); - }); - if (!started) { - // If nothing started, we are still consuming it since nothing else should handle it - finishCallback.onTransitionFinished(null); - } - return true; - } - - private static @Nullable TransitionInfo.Change getChangeForBubblingTask( - @NonNull TransitionInfo info, BubbleTransitions bubbleTransitions) { - for (int i = 0; i < info.getChanges().size(); i++) { - final TransitionInfo.Change chg = info.getChanges().get(i); - final ActivityManager.RunningTaskInfo taskInfo = chg.getTaskInfo(); - // Exclude activity transition scenarios. - if (taskInfo == null || taskInfo.getActivityType() != ACTIVITY_TYPE_STANDARD) { - continue; - } - // Only process opening or change transitions. - if (!TransitionUtil.isOpeningMode(chg.getMode()) && chg.getMode() != TRANSIT_CHANGE) { - continue; - } - // Skip non-app-bubble tasks (e.g., a reused task in a bubble-to-fullscreen scenario). - if (!bubbleTransitions.shouldBeAppBubble(taskInfo)) { - continue; - } - return chg; - } - return null; - } - private boolean animateUnfold( - @NonNull IBinder transition, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @@ -475,7 +233,6 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { mInFlightSubAnimations--; if (mInFlightSubAnimations > 0) return; finishCallback.onTransitionFinished(wct); - mBubbleTransitions.notifyUnfoldTransitionFinished(transition); }; mInFlightSubAnimations = 1; // Sync pip state. @@ -489,56 +246,10 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { mTransition, info, startTransaction, finishTransaction, finishCB); } - private boolean animateOpenInDesktop( - @NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "animateOpenInDesktop"); - TransitionInfo.Change desktopChange = null; - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - TransitionInfo.Change change = info.getChanges().get(i); - if (mDesktopTasksController.isDesktopChange(mTransition, change)) { - if (desktopChange != null) { - throw new IllegalStateException("More than 1 desktop changes in one" - + " transition? " + info); - } - desktopChange = change; - info.getChanges().remove(i); - } - } - final Transitions.TransitionFinishCallback finishCB = (wct) -> { - --mInFlightSubAnimations; - joinFinishArgs(wct); - if (mInFlightSubAnimations > 0) return; - finishCallback.onTransitionFinished(mFinishWCT); - }; - if (desktopChange == null) { - if (mLeftoversHandler != null) { - mInFlightSubAnimations = 1; - if (mLeftoversHandler.startAnimation( - mTransition, info, startTransaction, finishTransaction, finishCB)) { - return true; - } - } - return false; - } - ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Splitting desktop change into a" - + "separate animation #%d", info.getDebugId()); - mInFlightSubAnimations = 2; - mDesktopTasksController.animateDesktopChange( - transition, desktopChange, startTransaction, finishTransaction, finishCB); - mLeftoversHandler = mPlayer.dispatchTransition( - mTransition, info, startTransaction, finishTransaction, finishCB, mMixedHandler); - return true; - } - @Override void mergeAnimation( @NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { switch (mType) { case TYPE_DISPLAY_AND_SPLIT_CHANGE: @@ -548,7 +259,7 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { case TYPE_ENTER_PIP_FROM_ACTIVITY_EMBEDDING: mPipHandler.end(); mActivityEmbeddingController.mergeAnimation( - transition, info, startT, finishT, mergeTarget, finishCallback); + transition, info, t, mergeTarget, finishCallback); return; case TYPE_ENTER_PIP_FROM_SPLIT: if (mAnimType == ANIM_TYPE_GOING_HOME) { @@ -559,39 +270,24 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { mPipHandler.end(); if (mLeftoversHandler != null) { mLeftoversHandler.mergeAnimation( - transition, info, startT, finishT, mergeTarget, finishCallback); + transition, info, t, mergeTarget, finishCallback); } + } else { + mPipHandler.end(); } return; case TYPE_KEYGUARD: - mKeyguardHandler.mergeAnimation(transition, info, startT, finishT, mergeTarget, - finishCallback); + mKeyguardHandler.mergeAnimation(transition, info, t, mergeTarget, finishCallback); return; - case TYPE_OPTIONS_REMOTE_AND_PIP_OR_DESKTOP_CHANGE: + case TYPE_OPTIONS_REMOTE_AND_PIP_CHANGE: mPipHandler.end(); if (mLeftoversHandler != null) { mLeftoversHandler.mergeAnimation( - transition, info, startT, finishT, mergeTarget, finishCallback); + transition, info, t, mergeTarget, finishCallback); } return; case TYPE_UNFOLD: - mUnfoldHandler.mergeAnimation(transition, info, startT, finishT, mergeTarget, - finishCallback); - return; - case TYPE_OPEN_IN_DESKTOP: - mDesktopTasksController.mergeAnimation( - transition, info, startT, finishT, mergeTarget, finishCallback); - return; - case TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE: - case TYPE_LAUNCH_OR_CONVERT_SPLIT_TASK_TO_BUBBLE: - case TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE_FROM_EXISTING_BUBBLE: - case TYPE_LAUNCH_OR_CONVERT_PIP_TASK_TO_BUBBLE: - final Transitions.TransitionHandler handler = - mBubbleTransitions.getRunningEnterTransition(transition); - if (handler != null) { - handler.mergeAnimation(transition, info, startT, finishT, mergeTarget, - finishCallback); - } + mUnfoldHandler.mergeAnimation(transition, info, t, mergeTarget, finishCallback); return; default: throw new IllegalStateException("Playing a default mixed transition with unknown or" @@ -614,25 +310,12 @@ class DefaultMixedTransition extends DefaultMixedHandler.MixedTransition { case TYPE_KEYGUARD: mKeyguardHandler.onTransitionConsumed(transition, aborted, finishT); break; - case TYPE_OPTIONS_REMOTE_AND_PIP_OR_DESKTOP_CHANGE: + case TYPE_OPTIONS_REMOTE_AND_PIP_CHANGE: mLeftoversHandler.onTransitionConsumed(transition, aborted, finishT); break; case TYPE_UNFOLD: mUnfoldHandler.onTransitionConsumed(transition, aborted, finishT); break; - case TYPE_OPEN_IN_DESKTOP: - mDesktopTasksController.onTransitionConsumed(transition, aborted, finishT); - break; - case TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE: - case TYPE_LAUNCH_OR_CONVERT_SPLIT_TASK_TO_BUBBLE: - case TYPE_LAUNCH_OR_CONVERT_TO_BUBBLE_FROM_EXISTING_BUBBLE: - case TYPE_LAUNCH_OR_CONVERT_PIP_TASK_TO_BUBBLE: - final Transitions.TransitionHandler handler = - mBubbleTransitions.getRunningEnterTransition(transition); - if (handler != null) { - handler.onTransitionConsumed(transition, aborted, finishT); - } - break; default: break; } diff --git a/wmshell/src/com/android/wm/shell/transition/DefaultTransitionHandler.java b/wmshell/src/com/android/wm/shell/transition/DefaultTransitionHandler.java index 708863e409..018c9044e2 100644 --- a/wmshell/src/com/android/wm/shell/transition/DefaultTransitionHandler.java +++ b/wmshell/src/com/android/wm/shell/transition/DefaultTransitionHandler.java @@ -18,7 +18,6 @@ package com.android.wm.shell.transition; import static android.app.ActivityOptions.ANIM_CLIP_REVEAL; import static android.app.ActivityOptions.ANIM_CUSTOM; -import static android.app.ActivityOptions.ANIM_FROM_STYLE; import static android.app.ActivityOptions.ANIM_NONE; import static android.app.ActivityOptions.ANIM_OPEN_CROSS_PROFILE_APPS; import static android.app.ActivityOptions.ANIM_SCALE_UP; @@ -39,12 +38,8 @@ import static android.view.WindowManager.LayoutParams.ROTATION_ANIMATION_ROTATE; import static android.view.WindowManager.LayoutParams.ROTATION_ANIMATION_SEAMLESS; import static android.view.WindowManager.LayoutParams.ROTATION_ANIMATION_UNSPECIFIED; import static android.view.WindowManager.TRANSIT_CHANGE; -import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManager.TRANSIT_KEYGUARD_UNOCCLUDE; -import static android.view.WindowManager.TRANSIT_OPEN; import static android.view.WindowManager.TRANSIT_RELAUNCH; -import static android.view.WindowManager.TRANSIT_TO_BACK; -import static android.view.WindowManager.TRANSIT_TO_FRONT; import static android.window.TransitionInfo.FLAG_CROSS_PROFILE_OWNER_THUMBNAIL; import static android.window.TransitionInfo.FLAG_CROSS_PROFILE_WORK_THUMBNAIL; import static android.window.TransitionInfo.FLAG_DISPLAY_HAS_ALERT_WINDOWS; @@ -58,21 +53,18 @@ import static android.window.TransitionInfo.FLAG_SHOW_WALLPAPER; import static android.window.TransitionInfo.FLAG_STARTING_WINDOW_TRANSFER_RECIPIENT; import static android.window.TransitionInfo.FLAG_TRANSLUCENT; -import static com.android.internal.jank.Cuj.CUJ_DEFAULT_TASK_TO_TASK_ANIMATION; -import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_CHANGE; import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_CLOSE; import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_INTRA_CLOSE; import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_INTRA_OPEN; import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_NONE; import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_OPEN; -import static com.android.wm.shell.Flags.enableDynamicInsetsForAppLaunch; -import static com.android.wm.shell.transition.DefaultSurfaceAnimator.buildSurfaceAnimation; +import static com.android.wm.shell.transition.TransitionAnimationHelper.edgeExtendWindow; import static com.android.wm.shell.transition.TransitionAnimationHelper.getTransitionBackgroundColorIfSet; import static com.android.wm.shell.transition.TransitionAnimationHelper.getTransitionTypeFromInfo; -import static com.android.wm.shell.transition.TransitionAnimationHelper.isCoveredByOpaqueFullscreenChange; import static com.android.wm.shell.transition.TransitionAnimationHelper.loadAttributeAnimation; import android.animation.Animator; +import android.animation.AnimatorListenerAdapter; import android.animation.ValueAnimator; import android.annotation.ColorInt; import android.annotation.NonNull; @@ -85,6 +77,7 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.graphics.Color; +import android.graphics.Insets; import android.graphics.Point; import android.graphics.Rect; import android.graphics.drawable.Drawable; @@ -93,9 +86,13 @@ import android.os.Handler; import android.os.IBinder; import android.os.UserHandle; import android.util.ArrayMap; +import android.view.Choreographer; import android.view.SurfaceControl; +import android.view.SurfaceSession; import android.view.WindowManager; +import android.view.animation.AlphaAnimation; import android.view.animation.Animation; +import android.view.animation.Transformation; import android.window.TransitionInfo; import android.window.TransitionMetrics; import android.window.TransitionRequestInfo; @@ -103,29 +100,26 @@ import android.window.WindowContainerTransaction; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.jank.InteractionJankMonitor; import com.android.internal.policy.ScreenDecorationsUtils; import com.android.internal.policy.TransitionAnimation; -import com.android.internal.protolog.ProtoLog; -import com.android.window.flags2.Flags; +import com.android.internal.protolog.common.ProtoLog; +import com.android.window.flags.Flags; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; -import com.android.wm.shell.animation.SizeChangeAnimation; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.ShellExecutor; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.animation.Interpolators; import com.android.wm.shell.sysui.ShellInit; import java.util.ArrayList; +import java.util.List; +import java.util.function.Consumer; /** The default handler that handles anything not already handled. */ public class DefaultTransitionHandler implements Transitions.TransitionHandler { private static final int MAX_ANIMATION_DURATION = 3000; - private static final int SIZE_CHANGE_ANIMATION_DURATION = 400; private final TransactionPool mTransactionPool; private final DisplayController mDisplayController; @@ -135,7 +129,8 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { private final ShellExecutor mAnimExecutor; private final TransitionAnimation mTransitionAnimation; private final DevicePolicyManager mDevicePolicyManager; - private final TransitionAnimationHelper.RoundedContentTracker mRoundedContentBounds; + + private final SurfaceSession mSurfaceSession = new SurfaceSession(); /** Keeps track of the currently-running animations associated with each transition. */ private final ArrayMap<IBinder, ArrayList<Animator>> mAnimations = new ArrayMap<>(); @@ -149,8 +144,6 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { private Drawable mEnterpriseThumbnailDrawable; - final InteractionJankMonitor mInteractionJankMonitor; - private BroadcastReceiver mEnterpriseResourceUpdatedReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { @@ -165,12 +158,10 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { DefaultTransitionHandler(@NonNull Context context, @NonNull ShellInit shellInit, @NonNull DisplayController displayController, - @NonNull DisplayInsetsController displayInsetsController, @NonNull TransactionPool transactionPool, @NonNull ShellExecutor mainExecutor, @NonNull Handler mainHandler, @NonNull ShellExecutor animExecutor, - @NonNull RootTaskDisplayAreaOrganizer rootTDAOrganizer, - @NonNull InteractionJankMonitor interactionJankMonitor) { + @NonNull RootTaskDisplayAreaOrganizer rootTDAOrganizer) { mDisplayController = displayController; mTransactionPool = transactionPool; mContext = context; @@ -182,9 +173,6 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { mDevicePolicyManager = mContext.getSystemService(DevicePolicyManager.class); shellInit.addInitCallback(this::onInit, this); mRootTDAOrganizer = rootTDAOrganizer; - mRoundedContentBounds = new TransitionAnimationHelper.RoundedContentTracker( - displayController, displayInsetsController); - mInteractionJankMonitor = interactionJankMonitor; } private void onInit() { @@ -196,7 +184,6 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { mMainHandler); TransitionAnimation.initAttributeCache(mContext, mMainHandler); - mRoundedContentBounds.init(); } private void updateEnterpriseThumbnailDrawable() { @@ -303,34 +290,6 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { return ROTATION_ANIMATION_SEAMLESS; } - @Nullable - final TransitionAnimationHelper.RoundedContentPerDisplay getRoundedContentBounds( - TransitionInfo.Change change) { - if (!enableDynamicInsetsForAppLaunch()) { - return null; - } - if (change.getTaskInfo() == null && change.getActivityComponent() == null) { - return null; - } - return mRoundedContentBounds.forDisplay(change.getEndDisplayId()); - } - - @Override - public boolean startAnimation(@NonNull IBinder transition, - @Nullable TransitionInfo info, - @NonNull TransitionDispatchState dispatchState, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull Transitions.TransitionFinishCallback finishCallback) { - if (info == null) { - // In data collection mode: there can't be errors - nothing to do - return false; - } - // In animation mode: always play everything - return startAnimation( - transition, info, startTransaction, finishTransaction, finishCallback); - } - @Override public boolean startAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @@ -347,10 +306,10 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { } // Early check if the transition doesn't warrant an animation. - if (TransitionUtil.isAllNoAnimation(info) || TransitionUtil.isAllOrderOnly(info) + if (Transitions.isAllNoAnimation(info) || Transitions.isAllOrderOnly(info) || (info.getFlags() & WindowManager.TRANSIT_FLAG_INVISIBLE) != 0) { startTransaction.apply(); - // As a contract, finishTransaction should only be applied in Transitions#onFinish + finishTransaction.apply(); finishCallback.onTransitionFinished(null /* wct */); return true; } @@ -362,24 +321,18 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { final ArrayList<Animator> animations = new ArrayList<>(); mAnimations.put(transition, animations); - final boolean isTaskTransition = com.android.window.flags2.Flags.transitionHandlerCujTags() - && isTaskTransition(info); - final Runnable onAnimFinish = () -> { if (!animations.isEmpty()) return; - if (isTaskTransition) { - mInteractionJankMonitor.end(CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); - } mAnimations.remove(transition); - if (Flags.releaseSurfaceOnTransitionFinish()) { - info.releaseAllSurfaces(); - } finishCallback.onTransitionFinished(null /* wct */); }; + final List<Consumer<SurfaceControl.Transaction>> postStartTransactionCallbacks = + new ArrayList<>(); + @ColorInt int backgroundColorForTransition = 0; final int wallpaperTransit = getWallpaperTransitType(info); - int animatingDisplayId = Integer.MIN_VALUE; + boolean isDisplayRotationAnimationStarted = false; final boolean isDreamTransition = isDreamTransition(info); final boolean isOnlyTranslucent = isOnlyTranslucent(info); final boolean isActivityLevel = isActivityLevelOnly(info); @@ -398,20 +351,17 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { continue; } final boolean isTask = change.getTaskInfo() != null; - final boolean isFreeform = isTask && change.getTaskInfo().isFreeform(); final int mode = change.getMode(); boolean isSeamlessDisplayChange = false; if (mode == TRANSIT_CHANGE && change.hasFlags(FLAG_IS_DISPLAY)) { - if (info.getType() == TRANSIT_CHANGE || isOnlyTranslucent) { + if (info.getType() == TRANSIT_CHANGE) { final int anim = getRotationAnimationHint(change, info, mDisplayController); isSeamlessDisplayChange = anim == ROTATION_ANIMATION_SEAMLESS; if (!(isSeamlessDisplayChange || anim == ROTATION_ANIMATION_JUMPCUT)) { - final int flags = wallpaperTransit != WALLPAPER_TRANSITION_NONE - ? ScreenRotationAnimation.FLAG_HAS_WALLPAPER : 0; - startRotationAnimation(startTransaction, change, info, anim, flags, - animations, onAnimFinish); - animatingDisplayId = change.getEndDisplayId(); + startRotationAnimation(startTransaction, change, info, anim, animations, + onAnimFinish); + isDisplayRotationAnimationStarted = true; continue; } } else { @@ -445,17 +395,10 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { continue; } // No default animation for this, so just update bounds/position. - if (change.getParent() == null) { - // For independent change without a parent, we have reparented it to the root - // leash in Transitions#setupAnimHierarchy. - final int rootIdx = TransitionUtil.rootIndexFor(change, info); - startTransaction.setPosition(change.getLeash(), - change.getEndAbsBounds().left - info.getRoot(rootIdx).getOffset().x, - change.getEndAbsBounds().top - info.getRoot(rootIdx).getOffset().y); - } else { - startTransaction.setPosition(change.getLeash(), - change.getEndRelOffset().x, change.getEndRelOffset().y); - } + final int rootIdx = TransitionUtil.rootIndexFor(change, info); + startTransaction.setPosition(change.getLeash(), + change.getEndAbsBounds().left - info.getRoot(rootIdx).getOffset().x, + change.getEndAbsBounds().top - info.getRoot(rootIdx).getOffset().y); // Seamless display transition doesn't need to animate. if (isSeamlessDisplayChange) continue; if (isTask || (change.hasFlags(FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY) @@ -469,26 +412,15 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { if (change.getParent() == null && !change.hasFlags(FLAG_IS_DISPLAY) && change.getStartRotation() != change.getEndRotation()) { startRotationAnimation(startTransaction, change, info, - ROTATION_ANIMATION_ROTATE, 0 /* flags */, animations, onAnimFinish); - continue; - } - - if (Flags.portWindowSizeAnimation() && isTask - && TransitionInfo.isIndependent(change, info) - && change.getSnapshot() != null) { - startBoundsChangeAnimation(startTransaction, animations, change, onAnimFinish, - mMainExecutor); + ROTATION_ANIMATION_ROTATE, animations, onAnimFinish); continue; } } // Hide the invisible surface directly without animating it if there is a display // rotation animation playing. - if (animatingDisplayId == change.getEndDisplayId()) { - if (TransitionUtil.isClosingType(mode)) { - startTransaction.hide(change.getLeash()); - } - // Only need to play display level animation. + if (isDisplayRotationAnimationStarted && TransitionUtil.isClosingType(mode)) { + startTransaction.hide(change.getLeash()); continue; } @@ -498,17 +430,6 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { final int type = getTransitionTypeFromInfo(info); Animation a = loadAnimation(type, info, change, wallpaperTransit, isDreamTransition); if (a != null) { - final int displayId = isTask ? change.getTaskInfo().displayId - : info.getRoot(TransitionUtil.rootIndexFor(change, info)) - .getDisplayId(); - final Context displayContext = - mDisplayController.getDisplayContext(displayId); - if (displayContext != null - && displayContext.getResources().getConfiguration().isScreenRound()) { - // ensure that any animation on a round display is using rounded corners - a.setHasRoundedCorners(true); - } - if (isTask) { final boolean isTranslucent = (change.getFlags() & FLAG_TRANSLUCENT) != 0; if (!isTranslucent && TransitionUtil.isOpenOrCloseMode(mode) @@ -536,18 +457,8 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { final int layer = zSplitLine + numChanges - i; startTransaction.setLayer(change.getLeash(), layer); } - } else if (!isCoveredByOpaqueFullscreenChange(info, change) - && isFreeform - && TransitionUtil.isOpeningMode(type) - && change.getMode() == TRANSIT_TO_BACK) { - // Reparent the minimize-change to the root task so the minimizing Task - // isn't shown in front of other Tasks. - mRootTDAOrganizer.reparentToDisplayArea( - change.getTaskInfo().displayId, - change.getLeash(), - startTransaction); } else if (isOnlyTranslucent && TransitionUtil.isOpeningType(info.getType()) - && TransitionUtil.isClosingType(mode)) { + && TransitionUtil.isClosingType(mode)) { // If there is a closing translucent task in an OPENING transition, we will // actually select a CLOSING animation, so move the closing task into // the animating part of the z-order. @@ -562,15 +473,32 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { final float cornerRadius; if (a.hasRoundedCorners()) { + final int displayId = isTask ? change.getTaskInfo().displayId + : info.getRoot(TransitionUtil.rootIndexFor(change, info)) + .getDisplayId(); + final Context displayContext = + mDisplayController.getDisplayContext(displayId); cornerRadius = displayContext == null ? 0 : ScreenDecorationsUtils.getWindowCornerRadius(displayContext); } else { cornerRadius = 0; } - backgroundColorForTransition = getTransitionBackgroundColorIfSet(change, a, + backgroundColorForTransition = getTransitionBackgroundColorIfSet(info, change, a, backgroundColorForTransition); + if (!isTask && a.hasExtension()) { + if (!TransitionUtil.isOpeningType(mode)) { + // Can screenshot now (before startTransaction is applied) + edgeExtendWindow(change, a, startTransaction, finishTransaction); + } else { + // Need to screenshot after startTransaction is applied otherwise activity + // may not be visible or ready yet. + postStartTransactionCallbacks + .add(t -> edgeExtendWindow(change, a, t, finishTransaction)); + } + } + final Rect clipRect = TransitionUtil.isClosingType(mode) ? new Rect(mRotator.getEndBoundsInStartRotation(change)) : new Rect(change.getEndAbsBounds()); @@ -581,24 +509,15 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { change.getEndAbsBounds().left - animRoot.getOffset().x, change.getEndAbsBounds().top - animRoot.getOffset().y); - final boolean isActivity = change.getActivityComponent() != null; - if (isActivity) { + if (change.getActivityComponent() != null) { // For appcompat letterbox: we intentionally report the task-bounds so that we // can animate as-if letterboxes are "part of" the activity. This means we can't // always rely solely on endAbsBounds and need to also max with endRelOffset. animRelOffset.x = Math.max(animRelOffset.x, change.getEndRelOffset().x); animRelOffset.y = Math.max(animRelOffset.y, change.getEndRelOffset().y); } - if (!isTask && a.getExtensionEdges() != 0x0 - && (change.hasFlags(FLAG_FILLS_TASK - | FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY))) { - startTransaction.setEdgeExtensionEffect( - change.getLeash(), a.getExtensionEdges()); - finishTransaction.setEdgeExtensionEffect(change.getLeash(), /* edge */ 0); - } - if (isActivity && !isActivityLevel - && !mRotator.isRotated(change)) { + if (change.getActivityComponent() != null && !isActivityLevel) { // At this point, this is an independent activity change in a non-activity // transition. This means that an activity transition got erroneously combined // with another ongoing transition. This then means that the animation root may @@ -622,14 +541,18 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { } buildSurfaceAnimation(animations, a, change.getLeash(), onAnimFinish, - mTransactionPool, mMainExecutor, animRelOffset, cornerRadius, clipRect, - isTask || isActivity - ? mRoundedContentBounds.forDisplay(change.getEndDisplayId()) - : null); + mTransactionPool, mMainExecutor, animRelOffset, cornerRadius, + clipRect); - final TransitionInfo.AnimationOptions options = change.getAnimationOptions(); + final TransitionInfo.AnimationOptions options; + if (Flags.moveAnimationOptionsToChange()) { + options = info.getAnimationOptions(); + } else { + options = change.getAnimationOptions(); + } if (options != null) { - attachThumbnail(animations, onAnimFinish, change, options, cornerRadius); + attachThumbnail(animations, onAnimFinish, change, info.getAnimationOptions(), + cornerRadius); } } } @@ -639,30 +562,30 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { finishTransaction); } + if (postStartTransactionCallbacks.size() > 0) { + // postStartTransactionCallbacks require that the start transaction is already + // applied to run otherwise they may result in flickers and UI inconsistencies. + startTransaction.apply(true /* sync */); + // startTransaction is empty now, so fill it with the edge-extension setup + for (Consumer<SurfaceControl.Transaction> postStartTransactionCallback : + postStartTransactionCallbacks) { + postStartTransactionCallback.accept(startTransaction); + } + } startTransaction.apply(); - final boolean hasAnimations = !animations.isEmpty(); - if (hasAnimations) { - if (isTaskTransition) { - mInteractionJankMonitor.begin(info.getRoot(0).getLeash(), mContext, - mMainHandler, CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); + // now start animations. they are started on another thread, so we have to post them + // *after* applying the startTransaction + mAnimExecutor.execute(() -> { + for (int i = 0; i < animations.size(); ++i) { + animations.get(i).start(); } - - // now start animations. they are started on another thread, so we have to post them - // *after* applying the startTransaction - mAnimExecutor.execute(() -> { - for (int i = 0; i < animations.size(); ++i) { - animations.get(i).start(); - } - }); - } + }); mRotator.cleanUp(finishTransaction); TransitionMetrics.getInstance().reportAnimationStart(transition); // run finish now in-case there are no animations - if (!hasAnimations) { - onAnimFinish.run(); - } + onAnimFinish.run(); return true; } @@ -674,16 +597,10 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { for (int i = 0; i < info.getRootCount(); ++i) { final int displayId = info.getRoot(i).getDisplayId(); - final SurfaceControl backgroundSurface = new SurfaceControl.Builder() - .setName("animation-background for #" + info.getDebugId()) + final SurfaceControl.Builder colorLayerBuilder = new SurfaceControl.Builder() + .setName("animation-background") .setCallsite("DefaultTransitionHandler") - .setColorLayer() - .setParent(info.getRoot(i).getLeash()) - .build(); - - startTransaction.setColor(backgroundSurface, colorArray) - .setLayer(backgroundSurface, -1) - .show(backgroundSurface); + .setColorLayer(); // Attaching the background surface to the transition root could unexpectedly make it // cover one of the split root tasks. To avoid this, put the background surface just @@ -692,10 +609,15 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { info.getChanges().stream().anyMatch(c-> c.getTaskInfo() != null && c.getTaskInfo().getWindowingMode() == WINDOWING_MODE_MULTI_WINDOW); if (isSplitTaskInvolved) { - mRootTDAOrganizer.relZToDisplayArea(displayId, backgroundSurface, startTransaction, - -1); + mRootTDAOrganizer.attachToDisplayArea(displayId, colorLayerBuilder); + } else { + colorLayerBuilder.setParent(info.getRootLeash()); } + final SurfaceControl backgroundSurface = colorLayerBuilder.build(); + startTransaction.setColor(backgroundSurface, colorArray) + .setLayer(backgroundSurface, -1) + .show(backgroundSurface); finishTransaction.remove(backgroundSurface); } } @@ -712,30 +634,6 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { return false; } - /** - * A task transition is defined as a transition where there is exaclty one open/to_front task - * and one close/to_back task. Nothing else is allowed to be included in the transition - */ - public static boolean isTaskTransition(@NonNull TransitionInfo info) { - if (info.getChanges().size() != 2) { - return false; - } - boolean hasOpeningTask = false; - boolean hasClosingTask = false; - - for (int i = info.getChanges().size() - 1; i >= 0; --i) { - final TransitionInfo.Change change = info.getChanges().get(i); - if (change.getTaskInfo() == null) { - // A non-task is in the transition - return false; - } - int mode = change.getMode(); - hasOpeningTask |= mode == TRANSIT_OPEN || mode == TRANSIT_TO_FRONT; - hasClosingTask |= mode == TRANSIT_CLOSE || mode == TRANSIT_TO_BACK; - } - return hasOpeningTask && hasClosingTask; - } - /** * Does `info` only contain translucent visibility changes (CHANGEs are ignored). We select * different animations and z-orders for these @@ -773,9 +671,7 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { ArrayList<Animator> anims = mAnimations.get(mergeTarget); if (anims == null) return; @@ -786,12 +682,12 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { } private void startRotationAnimation(SurfaceControl.Transaction startTransaction, - TransitionInfo.Change change, TransitionInfo info, int animHint, int flags, + TransitionInfo.Change change, TransitionInfo info, int animHint, ArrayList<Animator> animations, Runnable onAnimFinish) { final int rootIdx = TransitionUtil.rootIndexFor(change, info); - final ScreenRotationAnimation anim = new ScreenRotationAnimation(mContext, + final ScreenRotationAnimation anim = new ScreenRotationAnimation(mContext, mSurfaceSession, mTransactionPool, startTransaction, change, info.getRoot(rootIdx).getLeash(), - animHint, flags); + animHint); // The rotation animation may consist of 3 animations: fade-out screenshot, fade-in real // content, and background color. The item of "animGroup" will be removed if the sub // animation is finished. Then if the list becomes empty, the rotation animation is done. @@ -812,22 +708,6 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { } } - private void startBoundsChangeAnimation(@NonNull SurfaceControl.Transaction startT, - @NonNull ArrayList<Animator> animations, @NonNull TransitionInfo.Change change, - @NonNull Runnable finishCb, @NonNull ShellExecutor mainExecutor) { - final SizeChangeAnimation sca = new SizeChangeAnimation(change.getStartAbsBounds(), - change.getEndAbsBounds(), /* initialScale= */ 1f, /* scaleFactor= */ 1f); - sca.initialize(change.getLeash(), change.getSnapshot(), startT); - final ValueAnimator va = sca.buildAnimator(change.getLeash(), change.getSnapshot(), - (animator) -> mainExecutor.execute(() -> { - animations.remove(animator); - finishCb.run(); - })); - va.setDuration(SIZE_CHANGE_ANIMATION_DURATION); - va.setInterpolator(Interpolators.EMPHASIZED); - animations.add(va); - } - @Nullable @Override public WindowContainerTransaction handleRequest(@NonNull IBinder transition, @@ -852,9 +732,13 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { final boolean isOpeningType = TransitionUtil.isOpeningType(type); final boolean enter = TransitionUtil.isOpeningType(changeMode); final boolean isTask = change.getTaskInfo() != null; - final TransitionInfo.AnimationOptions options = change.getAnimationOptions(); + final TransitionInfo.AnimationOptions options; + if (Flags.moveAnimationOptionsToChange()) { + options = change.getAnimationOptions(); + } else { + options = info.getAnimationOptions(); + } final int overrideType = options != null ? options.getType() : ANIM_NONE; - final int userId = options != null ? options.getUserId() : UserHandle.USER_CURRENT; final Rect endBounds = TransitionUtil.isClosingType(changeMode) ? mRotator.getEndBoundsInStartRotation(change) : change.getEndAbsBounds(); @@ -863,24 +747,25 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { a = mTransitionAnimation.loadKeyguardExitAnimation(flags, (changeFlags & FLAG_SHOW_WALLPAPER) != 0); } else if (type == TRANSIT_KEYGUARD_UNOCCLUDE) { - a = mTransitionAnimation.loadKeyguardUnoccludeAnimation(userId); + a = mTransitionAnimation.loadKeyguardUnoccludeAnimation(); } else if ((changeFlags & FLAG_IS_VOICE_INTERACTION) != 0) { if (isOpeningType) { - a = mTransitionAnimation.loadVoiceActivityOpenAnimation(enter, userId); + a = mTransitionAnimation.loadVoiceActivityOpenAnimation(enter); } else { - a = mTransitionAnimation.loadVoiceActivityExitAnimation(enter, userId); + a = mTransitionAnimation.loadVoiceActivityExitAnimation(enter); } } else if (changeMode == TRANSIT_CHANGE) { - // Apply end state directly by default. - return null; + // In the absence of a specific adapter, we just want to keep everything stationary. + a = new AlphaAnimation(1.f, 1.f); + a.setDuration(TransitionAnimation.DEFAULT_APP_TRANSITION_DURATION); } else if (type == TRANSIT_RELAUNCH) { a = mTransitionAnimation.createRelaunchAnimation(endBounds, mInsets, endBounds); } else if (overrideType == ANIM_CUSTOM && (!isTask || options.getOverrideTaskTransition())) { a = mTransitionAnimation.loadAnimationRes(options.getPackageName(), enter - ? options.getEnterResId() : options.getExitResId(), userId); + ? options.getEnterResId() : options.getExitResId()); } else if (overrideType == ANIM_OPEN_CROSS_PROFILE_APPS && enter) { - a = mTransitionAnimation.loadCrossProfileAppEnterAnimation(userId); + a = mTransitionAnimation.loadCrossProfileAppEnterAnimation(); } else if (overrideType == ANIM_CLIP_REVEAL) { a = mTransitionAnimation.createClipRevealAnimationLocked(type, wallpaperTransit, enter, endBounds, endBounds, options.getTransitionBounds()); @@ -917,6 +802,67 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { return a; } + /** Builds an animator for the surface and adds it to the `animations` list. */ + static void buildSurfaceAnimation(@NonNull ArrayList<Animator> animations, + @NonNull Animation anim, @NonNull SurfaceControl leash, + @NonNull Runnable finishCallback, @NonNull TransactionPool pool, + @NonNull ShellExecutor mainExecutor, @Nullable Point position, float cornerRadius, + @Nullable Rect clipRect) { + final SurfaceControl.Transaction transaction = pool.acquire(); + final ValueAnimator va = ValueAnimator.ofFloat(0f, 1f); + final Transformation transformation = new Transformation(); + final float[] matrix = new float[9]; + // Animation length is already expected to be scaled. + va.overrideDurationScale(1.0f); + va.setDuration(anim.computeDurationHint()); + final ValueAnimator.AnimatorUpdateListener updateListener = animation -> { + final long currentPlayTime = Math.min(va.getDuration(), va.getCurrentPlayTime()); + + applyTransformation(currentPlayTime, transaction, leash, anim, transformation, matrix, + position, cornerRadius, clipRect); + }; + va.addUpdateListener(updateListener); + + final Runnable finisher = () -> { + applyTransformation(va.getDuration(), transaction, leash, anim, transformation, matrix, + position, cornerRadius, clipRect); + + pool.release(transaction); + mainExecutor.execute(() -> { + animations.remove(va); + finishCallback.run(); + }); + }; + va.addListener(new AnimatorListenerAdapter() { + // It is possible for the end/cancel to be called more than once, which may cause + // issues if the animating surface has already been released. Track the finished + // state here to skip duplicate callbacks. See b/252872225. + private boolean mFinished = false; + + @Override + public void onAnimationEnd(Animator animation) { + onFinish(); + } + + @Override + public void onAnimationCancel(Animator animation) { + onFinish(); + } + + private void onFinish() { + if (mFinished) return; + mFinished = true; + finisher.run(); + // The update listener can continue to be called after the animation has ended if + // end() is called manually again before the finisher removes the animation. + // Remove it manually here to prevent animating a released surface. + // See b/252872225. + va.removeUpdateListener(updateListener); + } + }); + animations.add(va); + } + private void attachThumbnail(@NonNull ArrayList<Animator> animations, @NonNull Runnable finishCallback, TransitionInfo.Change change, TransitionInfo.AnimationOptions options, float cornerRadius) { @@ -939,9 +885,9 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { final Rect bounds = change.getEndAbsBounds(); // Show the right drawable depending on the user we're transitioning to. final Drawable thumbnailDrawable = change.hasFlags(FLAG_CROSS_PROFILE_OWNER_THUMBNAIL) - ? mContext.getDrawable(R.drawable.ic_account_circle) - : change.hasFlags(FLAG_CROSS_PROFILE_WORK_THUMBNAIL) - ? mEnterpriseThumbnailDrawable : null; + ? mContext.getDrawable(R.drawable.ic_account_circle) + : change.hasFlags(FLAG_CROSS_PROFILE_WORK_THUMBNAIL) + ? mEnterpriseThumbnailDrawable : null; if (thumbnailDrawable == null) { return; } @@ -952,7 +898,7 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { } final SurfaceControl.Transaction transaction = mTransactionPool.acquire(); - final WindowThumbnail wt = WindowThumbnail.createAndAttach( + final WindowThumbnail wt = WindowThumbnail.createAndAttach(mSurfaceSession, change.getLeash(), thumbnail, transaction); final Animation a = mTransitionAnimation.createCrossProfileAppsThumbnailAnimationLocked(bounds); @@ -969,15 +915,14 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { a.restrictDuration(MAX_ANIMATION_DURATION); a.scaleCurrentDuration(mTransitionAnimationScaleSetting); buildSurfaceAnimation(animations, a, wt.getSurface(), finisher, mTransactionPool, - mMainExecutor, change.getEndRelOffset(), cornerRadius, change.getEndAbsBounds(), - getRoundedContentBounds(change)); + mMainExecutor, change.getEndRelOffset(), cornerRadius, change.getEndAbsBounds()); } private void attachThumbnailAnimation(@NonNull ArrayList<Animator> animations, @NonNull Runnable finishCallback, TransitionInfo.Change change, TransitionInfo.AnimationOptions options, float cornerRadius) { final SurfaceControl.Transaction transaction = mTransactionPool.acquire(); - final WindowThumbnail wt = WindowThumbnail.createAndAttach( + final WindowThumbnail wt = WindowThumbnail.createAndAttach(mSurfaceSession, change.getLeash(), options.getThumbnail(), transaction); final Rect bounds = change.getEndAbsBounds(); final int orientation = mContext.getResources().getConfiguration().orientation; @@ -994,20 +939,16 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { a.restrictDuration(MAX_ANIMATION_DURATION); a.scaleCurrentDuration(mTransitionAnimationScaleSetting); buildSurfaceAnimation(animations, a, wt.getSurface(), finisher, mTransactionPool, - mMainExecutor, change.getEndRelOffset(), cornerRadius, change.getEndAbsBounds(), - getRoundedContentBounds(change)); + mMainExecutor, change.getEndRelOffset(), cornerRadius, change.getEndAbsBounds()); } private static int getWallpaperTransitType(TransitionInfo info) { - boolean hasWallpaper = false; boolean hasOpenWallpaper = false; boolean hasCloseWallpaper = false; for (int i = info.getChanges().size() - 1; i >= 0; --i) { final TransitionInfo.Change change = info.getChanges().get(i); - if ((change.getFlags() & FLAG_SHOW_WALLPAPER) != 0 - || (change.getFlags() & FLAG_IS_WALLPAPER) != 0) { - hasWallpaper = true; + if ((change.getFlags() & FLAG_SHOW_WALLPAPER) != 0) { if (TransitionUtil.isOpeningType(change.getMode())) { hasOpenWallpaper = true; } else if (TransitionUtil.isClosingType(change.getMode())) { @@ -1023,8 +964,6 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { return WALLPAPER_TRANSITION_OPEN; } else if (hasCloseWallpaper) { return WALLPAPER_TRANSITION_CLOSE; - } else if (hasWallpaper) { - return WALLPAPER_TRANSITION_CHANGE; } else { return WALLPAPER_TRANSITION_NONE; } @@ -1039,13 +978,35 @@ public class DefaultTransitionHandler implements Transitions.TransitionHandler { final int animType = options.getType(); return animType == ANIM_CUSTOM || animType == ANIM_SCALE_UP || animType == ANIM_THUMBNAIL_SCALE_UP || animType == ANIM_THUMBNAIL_SCALE_DOWN - || animType == ANIM_CLIP_REVEAL || animType == ANIM_OPEN_CROSS_PROFILE_APPS - || animType == ANIM_FROM_STYLE; + || animType == ANIM_CLIP_REVEAL || animType == ANIM_OPEN_CROSS_PROFILE_APPS; } - @Override - public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, - @Nullable SurfaceControl.Transaction finishTransaction) { - mInteractionJankMonitor.cancel(CUJ_DEFAULT_TASK_TO_TASK_ANIMATION); + private static void applyTransformation(long time, SurfaceControl.Transaction t, + SurfaceControl leash, Animation anim, Transformation tmpTransformation, float[] matrix, + Point position, float cornerRadius, @Nullable Rect immutableClipRect) { + tmpTransformation.clear(); + anim.getTransformation(time, tmpTransformation); + if (position != null) { + tmpTransformation.getMatrix().postTranslate(position.x, position.y); + } + t.setMatrix(leash, tmpTransformation.getMatrix(), matrix); + t.setAlpha(leash, tmpTransformation.getAlpha()); + + final Rect clipRect = immutableClipRect == null ? null : new Rect(immutableClipRect); + Insets extensionInsets = Insets.min(tmpTransformation.getInsets(), Insets.NONE); + if (!extensionInsets.equals(Insets.NONE) && clipRect != null && !clipRect.isEmpty()) { + // Clip out any overflowing edge extension + clipRect.inset(extensionInsets); + t.setCrop(leash, clipRect); + } + + if (anim.hasRoundedCorners() && cornerRadius > 0 && clipRect != null) { + // We can only apply rounded corner if a crop is set + t.setCrop(leash, clipRect); + t.setCornerRadius(leash, cornerRadius); + } + + t.setFrameTimelineVsync(Choreographer.getInstance().getVsyncId()); + t.apply(); } } diff --git a/wmshell/src/com/android/wm/shell/transition/HomeTransitionObserver.java b/wmshell/src/com/android/wm/shell/transition/HomeTransitionObserver.java index c71458dec5..9b27e413b5 100644 --- a/wmshell/src/com/android/wm/shell/transition/HomeTransitionObserver.java +++ b/wmshell/src/com/android/wm/shell/transition/HomeTransitionObserver.java @@ -18,29 +18,23 @@ package com.android.wm.shell.transition; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; import static android.view.Display.DEFAULT_DISPLAY; -import static android.window.DesktopModeFlags.ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX; import static android.window.TransitionInfo.FLAG_BACK_GESTURE_ANIMATED; -import static com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP; -import static com.android.wm.shell.transition.Transitions.TRANSIT_CONVERT_TO_BUBBLE; +import static com.android.wm.shell.transition.Transitions.TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP; import static com.android.wm.shell.transition.Transitions.TransitionObserver; import android.annotation.NonNull; import android.app.ActivityManager; import android.content.Context; import android.os.IBinder; -import android.view.InsetsState; import android.view.SurfaceControl; import android.window.TransitionInfo; -import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.RemoteCallable; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SingleInstanceRemoteListener; import com.android.wm.shell.shared.IHomeTransitionListener; import com.android.wm.shell.shared.TransitionUtil; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.sysui.ShellInit; /** * The {@link TransitionObserver} that observes for transitions involving the home @@ -54,30 +48,10 @@ public class HomeTransitionObserver implements TransitionObserver, private @NonNull final Context mContext; private @NonNull final ShellExecutor mMainExecutor; - private @NonNull final DisplayInsetsController mDisplayInsetsController; - private IBinder mPendingStartDragTransition; - private Boolean mPendingHomeVisibilityUpdate; - public HomeTransitionObserver(@NonNull Context context, - @NonNull ShellExecutor mainExecutor, - @NonNull DisplayInsetsController displayInsetsController, - @NonNull ShellInit shellInit) { + @NonNull ShellExecutor mainExecutor) { mContext = context; mMainExecutor = mainExecutor; - mDisplayInsetsController = displayInsetsController; - - shellInit.addInitCallback(this::onInit, this); - } - - private void onInit() { - mDisplayInsetsController.addInsetsChangedListener(DEFAULT_DISPLAY, - new DisplayInsetsController.OnInsetsChangedListener() { - @Override - public void insetsChanged(InsetsState insetsState) { - if (mListener == null) return; - mListener.call(l -> l.onDisplayInsetsChanged(insetsState)); - } - }); } @Override @@ -85,72 +59,23 @@ public class HomeTransitionObserver implements TransitionObserver, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction) { - Boolean homeVisibilityUpdate = getHomeVisibilityUpdate(info); - - if (info.getType() == TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP) { - // Do not apply at the start of desktop drag as that updates launcher UI visibility. - // Store the value and apply with a next transition or when cancelling the - // desktop-drag transition. - storePendingHomeVisibilityUpdate(transition, homeVisibilityUpdate); - return; - } - - if (BubbleAnythingFlagHelper.enableBubbleToFullscreen() - && info.getType() == TRANSIT_CONVERT_TO_BUBBLE - && homeVisibilityUpdate == null) { - // We are converting to bubble and we did not get a change to home visibility in this - // transition. Apply the value from start of drag. - homeVisibilityUpdate = mPendingHomeVisibilityUpdate; - } - - if (homeVisibilityUpdate != null) { - mPendingHomeVisibilityUpdate = null; - mPendingStartDragTransition = null; - notifyHomeVisibilityChanged(homeVisibilityUpdate); - } - } - - private void storePendingHomeVisibilityUpdate( - IBinder transition, Boolean homeVisibilityUpdate) { - if (!BubbleAnythingFlagHelper.enableBubbleToFullscreen() - && !ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX.isTrue()) { - return; - } - mPendingHomeVisibilityUpdate = homeVisibilityUpdate; - mPendingStartDragTransition = transition; - } - - private Boolean getHomeVisibilityUpdate(TransitionInfo info) { - Boolean homeVisibilityUpdate = null; for (TransitionInfo.Change change : info.getChanges()) { final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); - if (taskInfo == null + if (info.getType() == TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP + || taskInfo == null || taskInfo.displayId != DEFAULT_DISPLAY || taskInfo.taskId == -1 || !taskInfo.isRunning) { continue; } - Boolean update = getHomeVisibilityUpdate(info, change, taskInfo); - if (update != null) { - homeVisibilityUpdate = update; - } - } - return homeVisibilityUpdate; - } - private Boolean getHomeVisibilityUpdate(TransitionInfo info, - TransitionInfo.Change change, ActivityManager.RunningTaskInfo taskInfo) { - final int mode = change.getMode(); - final boolean isBackGesture = change.hasFlags(FLAG_BACK_GESTURE_ANIMATED); - if (taskInfo.getActivityType() == ACTIVITY_TYPE_HOME) { - final boolean gestureToHomeTransition = isBackGesture - && TransitionUtil.isClosingType(info.getType()); - if (gestureToHomeTransition || TransitionUtil.isClosingMode(mode) - || (!isBackGesture && TransitionUtil.isOpeningMode(mode))) { - return gestureToHomeTransition || TransitionUtil.isOpeningType(mode); + final int mode = change.getMode(); + final boolean isBackGesture = change.hasFlags(FLAG_BACK_GESTURE_ANIMATED); + if (taskInfo.getActivityType() == ACTIVITY_TYPE_HOME + && (TransitionUtil.isOpenOrCloseMode(mode) || isBackGesture)) { + notifyHomeVisibilityChanged(TransitionUtil.isOpeningType(mode) || isBackGesture); } } - return null; } @Override @@ -162,23 +87,7 @@ public class HomeTransitionObserver implements TransitionObserver, @Override public void onTransitionFinished(@NonNull IBinder transition, - boolean aborted) { - if (!ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX.isTrue()) { - return; - } - // Handle the case where the DragToDesktop START transition is interrupted and we never - // receive a CANCEL/END transition. - if (mPendingStartDragTransition == null - || mPendingStartDragTransition != transition) { - return; - } - mPendingStartDragTransition = null; - - if (mPendingHomeVisibilityUpdate != null) { - notifyHomeVisibilityChanged(mPendingHomeVisibilityUpdate); - mPendingHomeVisibilityUpdate = null; - } - } + boolean aborted) {} /** * Sets the home transition listener that receives any transitions resulting in a change of diff --git a/wmshell/src/com/android/wm/shell/transition/MixedTransitionHelper.java b/wmshell/src/com/android/wm/shell/transition/MixedTransitionHelper.java index 1e14b7cf93..e8b01b5880 100644 --- a/wmshell/src/com/android/wm/shell/transition/MixedTransitionHelper.java +++ b/wmshell/src/com/android/wm/shell/transition/MixedTransitionHelper.java @@ -17,14 +17,13 @@ package com.android.wm.shell.transition; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; -import static android.view.WindowManager.TRANSIT_PIP; import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.window.TransitionInfo.FLAG_IS_WALLPAPER; -import static com.android.wm.shell.pip.PipTransitionController.ANIM_TYPE_ALPHA; +import static com.android.wm.shell.common.split.SplitScreenConstants.FLAG_IS_DIVIDER_BAR; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.pip.PipAnimationController.ANIM_TYPE_ALPHA; import static com.android.wm.shell.shared.TransitionUtil.isOpeningMode; -import static com.android.wm.shell.shared.split.SplitScreenConstants.FLAG_IS_DIVIDER_BAR; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_MAIN; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_SIDE; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_UNDEFINED; @@ -36,11 +35,10 @@ import android.annotation.Nullable; import android.view.SurfaceControl; import android.window.TransitionInfo; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.keyguard.KeyguardTransitionHandler; import com.android.wm.shell.pip.PipTransitionController; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.pip.PipFlags; import com.android.wm.shell.splitscreen.SplitScreen; import com.android.wm.shell.splitscreen.StageCoordinator; @@ -56,7 +54,6 @@ public class MixedTransitionHelper { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Animating a mixed transition for " + "entering PIP while Split-Screen is foreground."); TransitionInfo.Change pipChange = null; - TransitionInfo.Change pipActivityChange = null; TransitionInfo.Change wallpaper = null; final TransitionInfo everythingElse = subCopy(info, TRANSIT_TO_BACK, true /* changes */); @@ -71,13 +68,6 @@ public class MixedTransitionHelper { pipChange = change; // going backwards, so remove-by-index is fine. everythingElse.getChanges().remove(i); - } else if (change.getTaskInfo() == null && change.getParent() != null - && pipChange != null && change.getParent().equals(pipChange.getContainer())) { - // Cache the PiP activity if it's a target and cached pip task change is its parent; - // note that we are bottom-to-top, so if such activity has a task - // that is also a target, then it must have been cached already as pipChange. - pipActivityChange = change; - everythingElse.getChanges().remove(i); } else if (isHomeOpening(change)) { homeIsOpening = true; } else if (isWallpaper(change)) { @@ -149,18 +139,8 @@ public class MixedTransitionHelper { } pipHandler.setEnterAnimationType(ANIM_TYPE_ALPHA); - if (PipFlags.isPip2ExperimentEnabled()) { - TransitionInfo pipInfo = subCopy(info, TRANSIT_PIP, false /* withChanges */); - pipInfo.getChanges().add(pipChange); - if (pipActivityChange != null) { - pipInfo.getChanges().add(pipActivityChange); - } - pipHandler.startAnimation(mixed.mTransition, pipInfo, startTransaction, - finishTransaction, finishCB); - } else { - pipHandler.startEnterAnimation(pipChange, startTransaction, finishTransaction, - finishCB); - } + pipHandler.startEnterAnimation(pipChange, startTransaction, finishTransaction, + finishCB); // Dispatch the rest of the transition normally. This will most-likely be taken by // recents or default handler. mixed.mLeftoversHandler = player.dispatchTransition(mixed.mTransition, everythingElse, @@ -204,8 +184,7 @@ public class MixedTransitionHelper { for (int i = info.getChanges().size() - 1; i >= 0; --i) { TransitionInfo.Change change = info.getChanges().get(i); - if (change == pipChange || !isOpeningMode(change.getMode()) || - change.getTaskInfo() == null) { + if (change == pipChange || !isOpeningMode(change.getMode())) { // Ignore the change/task that's going into Pip or not opening continue; } diff --git a/wmshell/src/com/android/wm/shell/transition/OneShotRemoteHandler.java b/wmshell/src/com/android/wm/shell/transition/OneShotRemoteHandler.java index ec737389c3..69c41675e9 100644 --- a/wmshell/src/com/android/wm/shell/transition/OneShotRemoteHandler.java +++ b/wmshell/src/com/android/wm/shell/transition/OneShotRemoteHandler.java @@ -30,7 +30,7 @@ import android.window.TransitionRequestInfo; import android.window.WindowAnimationState; import android.window.WindowContainerTransaction; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.protolog.ShellProtoLogGroup; @@ -96,9 +96,7 @@ public class OneShotRemoteHandler implements Transitions.TransitionHandler { @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Merging registered One-shot remote" + " transition %s for (#%d).", mRemote, info.getDebugId()); @@ -113,9 +111,10 @@ public class OneShotRemoteHandler implements Transitions.TransitionHandler { // process won't be cleared if the remote applied it. We don't actually know if the // remote applied the transaction, but applying twice will break surfaceflinger // so just assume the worst-case and clear the local transaction. - startT.clear(); + t.clear(); mMainExecutor.execute(() -> { finishCallback.onTransitionFinished(wct); + mRemote = null; }); } }; @@ -123,8 +122,8 @@ public class OneShotRemoteHandler implements Transitions.TransitionHandler { // If the remote is actually in the same process, then make a copy of parameters since // remote impls assume that they have to clean-up native references. final SurfaceControl.Transaction remoteT = - RemoteTransitionHandler.copyIfLocal(startT, mRemote.getRemoteTransition()); - final TransitionInfo remoteInfo = remoteT == startT ? info : info.localRemoteCopy(); + RemoteTransitionHandler.copyIfLocal(t, mRemote.getRemoteTransition()); + final TransitionInfo remoteInfo = remoteT == t ? info : info.localRemoteCopy(); mRemote.getRemoteTransition().mergeAnimation( transition, remoteInfo, remoteT, mergeTarget, cb); } catch (RemoteException e) { @@ -194,8 +193,6 @@ public class OneShotRemoteHandler implements Transitions.TransitionHandler { public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishTransaction) { try { - ProtoLog.d(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, - "OneShot onTransitionConsumed for %s", mRemote); mRemote.getRemoteTransition().onTransitionConsumed(transition, aborted); } catch (RemoteException e) { Log.e(Transitions.TAG, "Error calling onTransitionConsumed()", e); diff --git a/wmshell/src/com/android/wm/shell/transition/RecentsMixedTransition.java b/wmshell/src/com/android/wm/shell/transition/RecentsMixedTransition.java index 67e4f55686..9fc6702562 100644 --- a/wmshell/src/com/android/wm/shell/transition/RecentsMixedTransition.java +++ b/wmshell/src/com/android/wm/shell/transition/RecentsMixedTransition.java @@ -18,7 +18,7 @@ package com.android.wm.shell.transition; import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_UNOCCLUDING; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; import static com.android.wm.shell.transition.DefaultMixedHandler.handoverTransitionLeashes; import static com.android.wm.shell.transition.MixedTransitionHelper.animateEnterPipFromSplit; import static com.android.wm.shell.transition.MixedTransitionHelper.animateKeyguard; @@ -30,7 +30,7 @@ import android.view.SurfaceControl; import android.window.TransitionInfo; import android.window.WindowContainerTransaction; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.desktopmode.DesktopTasksController; import com.android.wm.shell.keyguard.KeyguardTransitionHandler; import com.android.wm.shell.pip.PipTransitionController; @@ -42,25 +42,15 @@ class RecentsMixedTransition extends DefaultMixedHandler.MixedTransition { private final RecentsTransitionHandler mRecentsHandler; private final DesktopTasksController mDesktopTasksController; - /** - * The id of the desk that was active when the transition started. Only set when {@link #mType} - * is {@link DefaultMixedHandler.MixedTransition#TYPE_RECENTS_DURING_DESKTOP}. - */ - @Nullable - private final Integer mActiveDeskIdOnStart; - RecentsMixedTransition(int type, IBinder transition, Transitions player, MixedTransitionHandler mixedHandler, PipTransitionController pipHandler, StageCoordinator splitHandler, KeyguardTransitionHandler keyguardHandler, RecentsTransitionHandler recentsHandler, - DesktopTasksController desktopTasksController, - int displayId) { + DesktopTasksController desktopTasksController) { super(type, transition, player, mixedHandler, pipHandler, splitHandler, keyguardHandler); mRecentsHandler = recentsHandler; mDesktopTasksController = desktopTasksController; mLeftoversHandler = mRecentsHandler; - mActiveDeskIdOnStart = mType == TYPE_RECENTS_DURING_DESKTOP - ? mDesktopTasksController.getActiveDeskId(displayId) : null; } @Override @@ -127,11 +117,6 @@ class RecentsMixedTransition extends DefaultMixedHandler.MixedTransition { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Mixed transition for Recents during" + " Keyguard #%d", info.getDebugId()); - if (!mKeyguardHandler.isKeyguardShowing() || mKeyguardHandler.isKeyguardAnimating()) { - ProtoLog.w(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Cancel mixed transition because " - + "keyguard state was changed #%d", info.getDebugId()); - return false; - } if (mInfo == null) { mInfo = info; mFinishT = finishTransaction; @@ -169,17 +154,7 @@ class RecentsMixedTransition extends DefaultMixedHandler.MixedTransition { // If pair-to-pair switching, the post-recents clean-up isn't needed. wct = wct != null ? wct : new WindowContainerTransaction(); if (mAnimType != ANIM_TYPE_PAIR_TO_PAIR) { - // We've dispatched to the mLeftoversHandler to handle the rest of the transition - // and called onRecentsInSplitAnimationStart(), but if the recents handler is not - // actually handling the transition, then onRecentsInSplitAnimationFinishing() - // won't actually get called by the recents handler. In such cases, we still need - // to clean up after the changes from the start call. - boolean splitNotifiedByRecents = mRecentsHandler == mLeftoversHandler; - if (!splitNotifiedByRecents) { - mSplitHandler.onRecentsInSplitAnimationFinishing( - mSplitHandler.wctIsReorderingSplitToTop(wct), - wct, finishTransaction); - } + mSplitHandler.onRecentsInSplitAnimationFinish(wct, finishTransaction); } else { // notify pair-to-pair recents animation finish mSplitHandler.onRecentsPairToPairAnimationFinish(wct); @@ -197,47 +172,24 @@ class RecentsMixedTransition extends DefaultMixedHandler.MixedTransition { return handled; } - /** - * Called when the recents animation during split is about to finish. - */ - void onAnimateRecentsDuringSplitFinishing(boolean returnToApp, - @NonNull WindowContainerTransaction finishWct, - @NonNull SurfaceControl.Transaction finishT) { - if (mAnimType != ANIM_TYPE_PAIR_TO_PAIR) { - mSplitHandler.onRecentsInSplitAnimationFinishing(returnToApp, finishWct, finishT); - } - } - - /** - * Called when the recents animation during desktop is about to finish. - */ - void onAnimateRecentsDuringDesktopFinishing(boolean returnToApp, - @NonNull WindowContainerTransaction finishWct) { - mDesktopTasksController.onRecentsInDesktopAnimationFinishing(mTransition, finishWct, - returnToApp, mActiveDeskIdOnStart); - } - @Override void mergeAnimation( @NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { switch (mType) { case TYPE_RECENTS_DURING_DESKTOP: - mLeftoversHandler.mergeAnimation(transition, info, startT, finishT, mergeTarget, - finishCallback); + mLeftoversHandler.mergeAnimation(transition, info, t, mergeTarget, finishCallback); return; case TYPE_RECENTS_DURING_KEYGUARD: if ((info.getFlags() & TRANSIT_FLAG_KEYGUARD_UNOCCLUDING) != 0) { - handoverTransitionLeashes(mInfo, info, startT, finishT); + handoverTransitionLeashes(mInfo, info, t, mFinishT); if (animateKeyguard( - this, info, startT, finishT, mFinishCB, mKeyguardHandler, - mPipHandler)) { + this, info, t, mFinishT, mFinishCB, mKeyguardHandler, mPipHandler)) { finishCallback.onTransitionFinished(null); } } - mLeftoversHandler.mergeAnimation(transition, info, startT, finishT, mergeTarget, + mLeftoversHandler.mergeAnimation(transition, info, t, mergeTarget, finishCallback); return; case TYPE_RECENTS_DURING_SPLIT: @@ -246,8 +198,7 @@ class RecentsMixedTransition extends DefaultMixedHandler.MixedTransition { // another pair. mAnimType = DefaultMixedHandler.MixedTransition.ANIM_TYPE_PAIR_TO_PAIR; } - mLeftoversHandler.mergeAnimation(transition, info, startT, finishT, mergeTarget, - finishCallback); + mLeftoversHandler.mergeAnimation(transition, info, t, mergeTarget, finishCallback); return; default: throw new IllegalStateException("Playing a Recents mixed transition with unknown or" diff --git a/wmshell/src/com/android/wm/shell/transition/RemoteTransitionHandler.java b/wmshell/src/com/android/wm/shell/transition/RemoteTransitionHandler.java index c4a410b0e2..d6860464d0 100644 --- a/wmshell/src/com/android/wm/shell/transition/RemoteTransitionHandler.java +++ b/wmshell/src/com/android/wm/shell/transition/RemoteTransitionHandler.java @@ -16,7 +16,7 @@ package com.android.wm.shell.transition; -import static com.android.systemui.shared.Flags.returnAnimationFrameworkLongLived; +import static com.android.systemui.shared.Flags.returnAnimationFrameworkLibrary; import android.annotation.NonNull; import android.annotation.Nullable; @@ -39,7 +39,7 @@ import android.window.WindowContainerTransaction; import androidx.annotation.BinderThread; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.shared.TransitionUtil; @@ -211,9 +211,7 @@ public class RemoteTransitionHandler implements Transitions.TransitionHandler { @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { final RemoteTransition remoteTransition = mRequestedRemotes.get(mergeTarget); if (remoteTransition == null) return; @@ -232,7 +230,7 @@ public class RemoteTransitionHandler implements Transitions.TransitionHandler { // process won't be cleared if the remote applied it. We don't actually know if the // remote applied the transaction, but applying twice will break surfaceflinger // so just assume the worst-case and clear the local transaction. - startT.clear(); + t.clear(); mMainExecutor.execute(() -> { if (!mRequestedRemotes.containsKey(mergeTarget)) { Log.e(TAG, "Merged transition finished after it's mergeTarget (the " @@ -247,8 +245,8 @@ public class RemoteTransitionHandler implements Transitions.TransitionHandler { try { // If the remote is actually in the same process, then make a copy of parameters since // remote impls assume that they have to clean-up native references. - final SurfaceControl.Transaction remoteT = copyIfLocal(startT, remote); - final TransitionInfo remoteInfo = remoteT == startT ? info : info.localRemoteCopy(); + final SurfaceControl.Transaction remoteT = copyIfLocal(t, remote); + final TransitionInfo remoteInfo = remoteT == t ? info : info.localRemoteCopy(); remote.mergeAnimation(transition, remoteInfo, remoteT, mergeTarget, cb); } catch (RemoteException e) { Log.e(Transitions.TAG, "Error attempting to merge remote transition.", e); @@ -259,7 +257,7 @@ public class RemoteTransitionHandler implements Transitions.TransitionHandler { @Override public Transitions.TransitionHandler getHandlerForTakeover( @NonNull IBinder transition, @NonNull TransitionInfo info) { - if (!returnAnimationFrameworkLongLived()) { + if (!returnAnimationFrameworkLibrary()) { return null; } diff --git a/wmshell/src/com/android/wm/shell/transition/ScreenRotationAnimation.java b/wmshell/src/com/android/wm/shell/transition/ScreenRotationAnimation.java index 4e4d9da347..e196254628 100644 --- a/wmshell/src/com/android/wm/shell/transition/ScreenRotationAnimation.java +++ b/wmshell/src/com/android/wm/shell/transition/ScreenRotationAnimation.java @@ -21,13 +21,16 @@ import static android.view.WindowManager.LayoutParams.ROTATION_ANIMATION_CROSSFA import static android.view.WindowManager.LayoutParams.ROTATION_ANIMATION_JUMPCUT; import static android.view.WindowManagerPolicyConstants.SCREEN_FREEZE_LAYER_BASE; -import static com.android.wm.shell.transition.DefaultSurfaceAnimator.buildSurfaceAnimation; +import static com.android.wm.shell.transition.DefaultTransitionHandler.buildSurfaceAnimation; import static com.android.wm.shell.transition.Transitions.TAG; import android.animation.Animator; +import android.animation.AnimatorListenerAdapter; +import android.animation.ArgbEvaluator; import android.animation.ValueAnimator; import android.annotation.NonNull; import android.content.Context; +import android.graphics.Color; import android.graphics.Matrix; import android.graphics.Rect; import android.hardware.HardwareBuffer; @@ -35,7 +38,7 @@ import android.util.Slog; import android.view.Surface; import android.view.SurfaceControl; import android.view.SurfaceControl.Transaction; -import android.view.animation.AccelerateInterpolator; +import android.view.SurfaceSession; import android.view.animation.Animation; import android.view.animation.AnimationUtils; import android.window.ScreenCapture; @@ -44,7 +47,7 @@ import android.window.TransitionInfo; import com.android.internal.R; import com.android.internal.policy.TransitionAnimation; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.TransactionPool; +import com.android.wm.shell.common.TransactionPool; import java.util.ArrayList; @@ -72,14 +75,12 @@ import java.util.ArrayList; */ class ScreenRotationAnimation { static final int MAX_ANIMATION_DURATION = 10 * 1000; - static final int FLAG_HAS_WALLPAPER = 1; private final Context mContext; private final TransactionPool mTransactionPool; private final float[] mTmpFloats = new float[9]; /** The leash of the changing window container. */ private final SurfaceControl mSurfaceControl; - private final SurfaceControl mRootLeash; private final int mAnimHint; private final int mStartWidth; @@ -98,12 +99,6 @@ class ScreenRotationAnimation { private SurfaceControl mBackColorSurface; /** The leash using to animate screenshot layer. */ private final SurfaceControl mAnimLeash; - /** - * The container with background color for {@link #mSurfaceControl}. It is only created if - * {@link #mSurfaceControl} may be translucent. E.g. visible wallpaper with alpha < 1 (dimmed). - * That prevents flickering of alpha blending. - */ - private SurfaceControl mBackEffectSurface; // The current active animation to move from the old to the new rotated // state. Which animation is run here will depend on the old and new @@ -117,14 +112,13 @@ class ScreenRotationAnimation { /** Intensity of light/whiteness of the layout after rotation occurs. */ private float mEndLuma; - ScreenRotationAnimation(Context context, TransactionPool pool, Transaction t, - TransitionInfo.Change change, SurfaceControl rootLeash, int animHint, int flags) { + ScreenRotationAnimation(Context context, SurfaceSession session, TransactionPool pool, + Transaction t, TransitionInfo.Change change, SurfaceControl rootLeash, int animHint) { mContext = context; mTransactionPool = pool; mAnimHint = animHint; mSurfaceControl = change.getLeash(); - mRootLeash = rootLeash; mStartWidth = change.getStartAbsBounds().width(); mStartHeight = change.getStartAbsBounds().height(); mEndWidth = change.getEndAbsBounds().width(); @@ -132,7 +126,7 @@ class ScreenRotationAnimation { mStartRotation = change.getStartRotation(); mEndRotation = change.getEndRotation(); - mAnimLeash = new SurfaceControl.Builder() + mAnimLeash = new SurfaceControl.Builder(session) .setParent(rootLeash) .setEffectLayer() .setCallsite("ShellRotationAnimation") @@ -159,7 +153,7 @@ class ScreenRotationAnimation { return; } - mScreenshotLayer = new SurfaceControl.Builder() + mScreenshotLayer = new SurfaceControl.Builder(session) .setParent(mAnimLeash) .setBLASTLayer() .setSecure(screenshotBuffer.containsSecureLayers()) @@ -177,23 +171,14 @@ class ScreenRotationAnimation { } hardwareBuffer.close(); } - if ((flags & FLAG_HAS_WALLPAPER) != 0) { - mBackEffectSurface = new SurfaceControl.Builder() - .setCallsite("ShellRotationAnimation").setParent(rootLeash) - .setEffectLayer().setOpaque(true).setName("BackEffect").build(); - t.reparent(mSurfaceControl, mBackEffectSurface) - .setColor(mBackEffectSurface, - new float[] {mStartLuma, mStartLuma, mStartLuma}) - .show(mBackEffectSurface); - } t.setLayer(mAnimLeash, SCREEN_FREEZE_LAYER_BASE); t.show(mAnimLeash); // Crop the real content in case it contains a larger child layer, e.g. wallpaper. - t.setCrop(getEnterSurface(), new Rect(0, 0, mEndWidth, mEndHeight)); + t.setCrop(mSurfaceControl, new Rect(0, 0, mEndWidth, mEndHeight)); if (!isCustomRotate()) { - mBackColorSurface = new SurfaceControl.Builder() + mBackColorSurface = new SurfaceControl.Builder(session) .setParent(rootLeash) .setColorLayer() .setOpaque(true) @@ -218,11 +203,6 @@ class ScreenRotationAnimation { return mAnimHint == ROTATION_ANIMATION_CROSSFADE || mAnimHint == ROTATION_ANIMATION_JUMPCUT; } - /** Returns the surface which contains the real content to animate enter. */ - private SurfaceControl getEnterSurface() { - return mBackEffectSurface != null ? mBackEffectSurface : mSurfaceControl; - } - private void setScreenshotTransform(SurfaceControl.Transaction t) { if (mScreenshotLayer == null) { return; @@ -335,11 +315,7 @@ class ScreenRotationAnimation { } else { startDisplayRotation(animations, finishCallback, mainExecutor); startScreenshotRotationAnimation(animations, finishCallback, mainExecutor); - if (mBackEffectSurface != null && mStartLuma > 0.1f) { - // Animate from the color of background to black for smooth alpha blending. - buildLumaAnimation(animations, mStartLuma, 0f /* endLuma */, mBackEffectSurface, - animationScale, finishCallback, mainExecutor); - } + //startColorAnimation(mTransaction, animationScale); } return true; @@ -347,36 +323,59 @@ class ScreenRotationAnimation { private void startDisplayRotation(@NonNull ArrayList<Animator> animations, @NonNull Runnable finishCallback, @NonNull ShellExecutor mainExecutor) { - buildSurfaceAnimation(animations, mRotateEnterAnimation, getEnterSurface(), finishCallback, + buildSurfaceAnimation(animations, mRotateEnterAnimation, mSurfaceControl, finishCallback, mTransactionPool, mainExecutor, null /* position */, 0 /* cornerRadius */, - null /* clipRect */, null); + null /* clipRect */); } private void startScreenshotRotationAnimation(@NonNull ArrayList<Animator> animations, @NonNull Runnable finishCallback, @NonNull ShellExecutor mainExecutor) { buildSurfaceAnimation(animations, mRotateExitAnimation, mAnimLeash, finishCallback, mTransactionPool, mainExecutor, null /* position */, 0 /* cornerRadius */, - null /* clipRect */, null); + null /* clipRect */); } private void buildScreenshotAlphaAnimation(@NonNull ArrayList<Animator> animations, @NonNull Runnable finishCallback, @NonNull ShellExecutor mainExecutor) { buildSurfaceAnimation(animations, mRotateAlphaAnimation, mAnimLeash, finishCallback, mTransactionPool, mainExecutor, null /* position */, 0 /* cornerRadius */, - null /* clipRect */, null); + null /* clipRect */); } - private void buildLumaAnimation(@NonNull ArrayList<Animator> animations, - float startLuma, float endLuma, SurfaceControl surface, float animationScale, - @NonNull Runnable finishCallback, @NonNull ShellExecutor mainExecutor) { - final long durationMillis = (long) (mContext.getResources().getInteger( - R.integer.config_screen_rotation_color_transition) * animationScale); - final LumaAnimation animation = new LumaAnimation(durationMillis); - // Align the end with the enter animation. - animation.setStartOffset(mRotateEnterAnimation.getDuration() - durationMillis); - final LumaAnimationAdapter adapter = new LumaAnimationAdapter(surface, startLuma, endLuma); - DefaultSurfaceAnimator.buildSurfaceAnimation(animations, animation, finishCallback, - mTransactionPool, mainExecutor, adapter); + private void startColorAnimation(float animationScale, @NonNull ShellExecutor animExecutor) { + int colorTransitionMs = mContext.getResources().getInteger( + R.integer.config_screen_rotation_color_transition); + final float[] rgbTmpFloat = new float[3]; + final int startColor = Color.rgb(mStartLuma, mStartLuma, mStartLuma); + final int endColor = Color.rgb(mEndLuma, mEndLuma, mEndLuma); + final long duration = colorTransitionMs * (long) animationScale; + final Transaction t = mTransactionPool.acquire(); + + final ValueAnimator va = ValueAnimator.ofFloat(0f, 1f); + // Animation length is already expected to be scaled. + va.overrideDurationScale(1.0f); + va.setDuration(duration); + va.addUpdateListener(animation -> { + final long currentPlayTime = Math.min(va.getDuration(), va.getCurrentPlayTime()); + final float fraction = currentPlayTime / va.getDuration(); + applyColor(startColor, endColor, rgbTmpFloat, fraction, mBackColorSurface, t); + }); + va.addListener(new AnimatorListenerAdapter() { + @Override + public void onAnimationCancel(Animator animation) { + applyColor(startColor, endColor, rgbTmpFloat, 1f /* fraction */, mBackColorSurface, + t); + mTransactionPool.release(t); + } + + @Override + public void onAnimationEnd(Animator animation) { + applyColor(startColor, endColor, rgbTmpFloat, 1f /* fraction */, mBackColorSurface, + t); + mTransactionPool.release(t); + } + }); + animExecutor.execute(va::start); } public void kill() { @@ -391,51 +390,21 @@ class ScreenRotationAnimation { if (mBackColorSurface != null && mBackColorSurface.isValid()) { t.remove(mBackColorSurface); } - if (mBackEffectSurface != null && mBackEffectSurface.isValid()) { - // Restore the content surface to transition root because it was moved to BackEffect. - if (mSurfaceControl.isValid() && mRootLeash.isValid()) { - t.reparent(mSurfaceControl, mRootLeash); - } - t.remove(mBackEffectSurface); - } t.apply(); mTransactionPool.release(t); } - /** A no-op wrapper to provide animation duration. */ - private static class LumaAnimation extends Animation { - LumaAnimation(long durationMillis) { - setDuration(durationMillis); - } - } - - private static class LumaAnimationAdapter extends DefaultSurfaceAnimator.AnimationAdapter { - final float[] mColorArray = new float[3]; - final float mStartLuma; - final float mEndLuma; - final AccelerateInterpolator mInterpolation; - - LumaAnimationAdapter(@NonNull SurfaceControl leash, float startLuma, float endLuma) { - super(leash); - mStartLuma = startLuma; - mEndLuma = endLuma; - // Make the initial progress color lighter if the background is light. That avoids - // darker content when fading into the entering surface. - final float factor = Math.min(3f, (Math.max(0.5f, mStartLuma) - 0.5f) * 10); - Slog.d(TAG, "Luma=" + mStartLuma + " factor=" + factor); - mInterpolation = factor > 0.5f ? new AccelerateInterpolator(factor) : null; - } - - @Override - void applyTransformation(ValueAnimator animator, long currentPlayTime) { - final float fraction = mInterpolation != null - ? mInterpolation.getInterpolation(animator.getAnimatedFraction()) - : animator.getAnimatedFraction(); - final float luma = mStartLuma + fraction * (mEndLuma - mStartLuma); - mColorArray[0] = luma; - mColorArray[1] = luma; - mColorArray[2] = luma; - mTransaction.setColor(mLeash, mColorArray); + private static void applyColor(int startColor, int endColor, float[] rgbFloat, + float fraction, SurfaceControl surface, SurfaceControl.Transaction t) { + final int color = (Integer) ArgbEvaluator.getInstance().evaluate(fraction, startColor, + endColor); + Color middleColor = Color.valueOf(color); + rgbFloat[0] = middleColor.red(); + rgbFloat[1] = middleColor.green(); + rgbFloat[2] = middleColor.blue(); + if (surface.isValid()) { + t.setColor(surface, rgbFloat); } + t.apply(); } } diff --git a/wmshell/src/com/android/wm/shell/transition/TransitionAnimationHelper.java b/wmshell/src/com/android/wm/shell/transition/TransitionAnimationHelper.java index cc83029a4a..2047b5a886 100644 --- a/wmshell/src/com/android/wm/shell/transition/TransitionAnimationHelper.java +++ b/wmshell/src/com/android/wm/shell/transition/TransitionAnimationHelper.java @@ -19,42 +19,43 @@ package com.android.wm.shell.transition; import static android.app.ActivityOptions.ANIM_FROM_STYLE; import static android.app.ActivityOptions.ANIM_NONE; import static android.view.WindowManager.TRANSIT_CLOSE; -import static android.view.WindowManager.TRANSIT_CLOSE_PREPARE_BACK_NAVIGATION; import static android.view.WindowManager.TRANSIT_OPEN; -import static android.view.WindowManager.TRANSIT_PREPARE_BACK_NAVIGATION; import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.view.WindowManager.TRANSIT_TO_FRONT; +import static android.view.WindowManager.transitTypeToString; import static android.window.TransitionInfo.FLAGS_IS_NON_APP_WINDOW; import static android.window.TransitionInfo.FLAG_IS_DISPLAY; +import static android.window.TransitionInfo.FLAG_STARTING_WINDOW_TRANSFER_RECIPIENT; import static android.window.TransitionInfo.FLAG_TRANSLUCENT; import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_CLOSE; import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_INTRA_CLOSE; import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_INTRA_OPEN; import static com.android.internal.policy.TransitionAnimation.WALLPAPER_TRANSITION_OPEN; -import static com.android.wm.shell.transition.Transitions.transitTypeToString; import android.annotation.ColorInt; import android.annotation.NonNull; import android.annotation.Nullable; -import android.app.WindowConfiguration; +import android.graphics.BitmapShader; +import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Insets; +import android.graphics.Paint; +import android.graphics.PixelFormat; import android.graphics.Rect; -import android.util.SparseArray; -import android.view.InsetsSource; -import android.view.InsetsState; +import android.graphics.Shader; +import android.view.Surface; import android.view.SurfaceControl; import android.view.WindowManager; import android.view.animation.Animation; +import android.view.animation.Transformation; +import android.window.ScreenCapture; import android.window.TransitionInfo; import com.android.internal.R; import com.android.internal.policy.TransitionAnimation; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayInsetsController; -import com.android.wm.shell.common.DisplayLayout; +import com.android.internal.protolog.common.ProtoLog; +import com.android.window.flags.Flags; import com.android.wm.shell.protolog.ShellProtoLogGroup; import com.android.wm.shell.shared.TransitionUtil; @@ -71,10 +72,12 @@ public class TransitionAnimationHelper { final int changeFlags = change.getFlags(); final boolean enter = TransitionUtil.isOpeningType(changeMode); final boolean isTask = change.getTaskInfo() != null; - final boolean isFreeform = isTask && change.getTaskInfo().isFreeform(); - final boolean isCoveredByOpaqueFullscreenChange = - isCoveredByOpaqueFullscreenChange(info, change); - final TransitionInfo.AnimationOptions options = change.getAnimationOptions(); + final TransitionInfo.AnimationOptions options; + if (Flags.moveAnimationOptionsToChange()) { + options = change.getAnimationOptions(); + } else { + options = info.getAnimationOptions(); + } final int overrideType = options != null ? options.getType() : ANIM_NONE; int animAttr = 0; boolean translucent = false; @@ -104,24 +107,6 @@ public class TransitionAnimationHelper { animAttr = enter ? R.styleable.WindowAnimation_wallpaperCloseEnterAnimation : R.styleable.WindowAnimation_wallpaperCloseExitAnimation; - } else if (!isCoveredByOpaqueFullscreenChange - && isFreeform - && TransitionUtil.isOpeningMode(type) - && change.getMode() == TRANSIT_TO_BACK) { - // Set translucent here so TransitionAnimation loads the appropriate animations for - // translucent activities and tasks later - translucent = (changeFlags & FLAG_TRANSLUCENT) != 0; - // The main Task is launching or being brought to front, this Task is being minimized - animAttr = R.styleable.WindowAnimation_activityCloseExitAnimation; - } else if (!isCoveredByOpaqueFullscreenChange - && isFreeform - && type == TRANSIT_TO_FRONT - && change.getMode() == TRANSIT_TO_FRONT) { - // Set translucent here so TransitionAnimation loads the appropriate animations for - // translucent activities and tasks later - translucent = (changeFlags & FLAG_TRANSLUCENT) != 0; - // Bring the minimized Task back to front - animAttr = R.styleable.WindowAnimation_activityOpenEnterAnimation; } else if (type == TRANSIT_OPEN) { // We will translucent open animation for translucent activities and tasks. Choose // WindowAnimation_activityOpenEnterAnimation and set translucent here, then @@ -214,15 +199,6 @@ public class TransitionAnimationHelper { */ public static int getTransitionTypeFromInfo(@NonNull TransitionInfo info) { final int type = info.getType(); - // This back navigation is canceled, check whether the transition should be open or close - if (type == TRANSIT_PREPARE_BACK_NAVIGATION - || type == TRANSIT_CLOSE_PREPARE_BACK_NAVIGATION) { - if (!info.getChanges().isEmpty()) { - final TransitionInfo.Change change = info.getChanges().get(0); - return TransitionUtil.isOpeningMode(change.getMode()) - ? TRANSIT_OPEN : TRANSIT_CLOSE; - } - } // If the info transition type is opening transition, iterate its changes to see if it // has any opening change, if none, returns TRANSIT_CLOSE type for closing animation. if (type == TRANSIT_OPEN) { @@ -270,10 +246,16 @@ public class TransitionAnimationHelper { * the given transition animation. */ @ColorInt - public static int getTransitionBackgroundColorIfSet(@NonNull TransitionInfo.Change change, - @NonNull Animation a, @ColorInt int defaultColor) { + public static int getTransitionBackgroundColorIfSet(@NonNull TransitionInfo info, + @NonNull TransitionInfo.Change change, @NonNull Animation a, + @ColorInt int defaultColor) { if (!a.getShowBackdrop()) { return defaultColor; + } + if (!Flags.moveAnimationOptionsToChange() && info.getAnimationOptions() != null + && info.getAnimationOptions().getBackgroundColor() != 0) { + // If available use the background color provided through AnimationOptions + return info.getAnimationOptions().getBackgroundColor(); } else if (a.getBackdropColor() != 0) { // Otherwise fallback on the background color provided through the animation // definition. @@ -314,97 +296,125 @@ public class TransitionAnimationHelper { } /** - * Returns whether there is an opaque fullscreen Change positioned in front of the given Change - * in the given TransitionInfo. + * Adds edge extension surface to the given {@code change} for edge extension animation. */ - static boolean isCoveredByOpaqueFullscreenChange( - TransitionInfo info, TransitionInfo.Change change) { - // TransitionInfo#getChanges() are ordered from front to back - for (TransitionInfo.Change coveringChange : info.getChanges()) { - if (coveringChange == change) { - return false; - } - if ((coveringChange.getFlags() & FLAG_TRANSLUCENT) == 0 - && coveringChange.getTaskInfo() != null - && coveringChange.getTaskInfo().getWindowingMode() - == WindowConfiguration.WINDOWING_MODE_FULLSCREEN) { - return true; - } + public static void edgeExtendWindow(@NonNull TransitionInfo.Change change, + @NonNull Animation a, @NonNull SurfaceControl.Transaction startTransaction, + @NonNull SurfaceControl.Transaction finishTransaction) { + // Do not create edge extension surface for transfer starting window change. + // The app surface could be empty thus nothing can draw on the hardware renderer, which will + // block this thread when calling Surface#unlockCanvasAndPost. + if ((change.getFlags() & FLAG_STARTING_WINDOW_TRANSFER_RECIPIENT) != 0) { + return; } - return false; - } + final Transformation transformationAtStart = new Transformation(); + a.getTransformationAt(0, transformationAtStart); + final Transformation transformationAtEnd = new Transformation(); + a.getTransformationAt(1, transformationAtEnd); - /** - * In some situations (eg. TaskBar) the content area of a display appears to be rounded. For - * these situations, we may want the animation to also express the same rounded corners (even - * though in steady-state, the app internally manages the insets). This class Keeps track of, - * and provides, the bounds of rounded-corner display content. - * - * This is used to enable already-running animations to adapt to changes in taskbar/navbar - * position live. - */ - public static class RoundedContentPerDisplay implements - DisplayInsetsController.OnInsetsChangedListener { + // We want to create an extension surface that is the maximal size and the animation will + // take care of cropping any part that overflows. + final Insets maxExtensionInsets = Insets.min( + transformationAtStart.getInsets(), transformationAtEnd.getInsets()); - /** The current bounds of the display content (post-inset). */ - final Rect mBounds = new Rect(); + final int targetSurfaceHeight = Math.max(change.getStartAbsBounds().height(), + change.getEndAbsBounds().height()); + final int targetSurfaceWidth = Math.max(change.getStartAbsBounds().width(), + change.getEndAbsBounds().width()); + if (maxExtensionInsets.left < 0) { + final Rect edgeBounds = new Rect(0, 0, 1, targetSurfaceHeight); + final Rect extensionRect = new Rect(0, 0, + -maxExtensionInsets.left, targetSurfaceHeight); + final int xPos = maxExtensionInsets.left; + final int yPos = 0; + createExtensionSurface(change.getLeash(), edgeBounds, extensionRect, xPos, yPos, + "Left Edge Extension", startTransaction, finishTransaction); + } - @Override - public void insetsChanged(InsetsState insetsState) { - Insets insets = Insets.NONE; - for (int i = insetsState.sourceSize() - 1; i >= 0; i--) { - final InsetsSource source = insetsState.sourceAt(i); - if (!source.hasFlags(InsetsSource.FLAG_INSETS_ROUNDED_CORNER)) { - continue; - } - Rect displayFrame = insetsState.getDisplayFrame(); - insets = Insets.max(source.calculateInsets(displayFrame, displayFrame, false), - insets); - } - mBounds.set(insetsState.getDisplayFrame()); - mBounds.inset(insets); + if (maxExtensionInsets.top < 0) { + final Rect edgeBounds = new Rect(0, 0, targetSurfaceWidth, 1); + final Rect extensionRect = new Rect(0, 0, + targetSurfaceWidth, -maxExtensionInsets.top); + final int xPos = 0; + final int yPos = maxExtensionInsets.top; + createExtensionSurface(change.getLeash(), edgeBounds, extensionRect, xPos, yPos, + "Top Edge Extension", startTransaction, finishTransaction); + } + + if (maxExtensionInsets.right < 0) { + final Rect edgeBounds = new Rect(targetSurfaceWidth - 1, 0, + targetSurfaceWidth, targetSurfaceHeight); + final Rect extensionRect = new Rect(0, 0, + -maxExtensionInsets.right, targetSurfaceHeight); + final int xPos = targetSurfaceWidth; + final int yPos = 0; + createExtensionSurface(change.getLeash(), edgeBounds, extensionRect, xPos, yPos, + "Right Edge Extension", startTransaction, finishTransaction); + } + + if (maxExtensionInsets.bottom < 0) { + final Rect edgeBounds = new Rect(0, targetSurfaceHeight - 1, + targetSurfaceWidth, targetSurfaceHeight); + final Rect extensionRect = new Rect(0, 0, + targetSurfaceWidth, -maxExtensionInsets.bottom); + final int xPos = maxExtensionInsets.left; + final int yPos = targetSurfaceHeight; + createExtensionSurface(change.getLeash(), edgeBounds, extensionRect, xPos, yPos, + "Bottom Edge Extension", startTransaction, finishTransaction); } } /** - * Keeps track of the bounds of rounded-corner display content (post-inset). - * - * @see RoundedContentPerDisplay + * Takes a screenshot of {@code surfaceToExtend}'s edge and extends it for edge extension + * animation. */ - public static class RoundedContentTracker implements - DisplayController.OnDisplaysChangedListener { - final DisplayController mDisplayController; - final DisplayInsetsController mDisplayInsetsController; - final SparseArray<RoundedContentPerDisplay> mPerDisplay = new SparseArray<>(); + private static SurfaceControl createExtensionSurface(@NonNull SurfaceControl surfaceToExtend, + @NonNull Rect edgeBounds, @NonNull Rect extensionRect, int xPos, int yPos, + @NonNull String layerName, @NonNull SurfaceControl.Transaction startTransaction, + @NonNull SurfaceControl.Transaction finishTransaction) { + final SurfaceControl edgeExtensionLayer = new SurfaceControl.Builder() + .setName(layerName) + .setParent(surfaceToExtend) + .setHidden(true) + .setCallsite("TransitionAnimationHelper#createExtensionSurface") + .setOpaque(true) + .setBufferSize(extensionRect.width(), extensionRect.height()) + .build(); - RoundedContentTracker(DisplayController dc, DisplayInsetsController dic) { - mDisplayController = dc; - mDisplayInsetsController = dic; + final ScreenCapture.LayerCaptureArgs captureArgs = + new ScreenCapture.LayerCaptureArgs.Builder(surfaceToExtend) + .setSourceCrop(edgeBounds) + .setFrameScale(1) + .setPixelFormat(PixelFormat.RGBA_8888) + .setChildrenOnly(true) + .setAllowProtected(false) + .setCaptureSecureLayers(true) + .build(); + final ScreenCapture.ScreenshotHardwareBuffer edgeBuffer = + ScreenCapture.captureLayers(captureArgs); + + if (edgeBuffer == null) { + ProtoLog.e(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, + "Failed to capture edge of window."); + return null; } - void init() { - mDisplayController.addDisplayWindowListener(this); - } + final BitmapShader shader = new BitmapShader(edgeBuffer.asBitmap(), + Shader.TileMode.CLAMP, Shader.TileMode.CLAMP); + final Paint paint = new Paint(); + paint.setShader(shader); - RoundedContentPerDisplay forDisplay(int displayId) { - return mPerDisplay.get(displayId); - } + final Surface surface = new Surface(edgeExtensionLayer); + final Canvas c = surface.lockHardwareCanvas(); + c.drawRect(extensionRect, paint); + surface.unlockCanvasAndPost(c); + surface.release(); - @Override - public void onDisplayAdded(int displayId) { - final RoundedContentPerDisplay perDisplay = new RoundedContentPerDisplay(); - mDisplayInsetsController.addInsetsChangedListener(displayId, perDisplay); - mPerDisplay.put(displayId, perDisplay); - final DisplayLayout dl = mDisplayController.getDisplayLayout(displayId); - perDisplay.mBounds.set(0, 0, dl.width(), dl.height()); - } + startTransaction.setLayer(edgeExtensionLayer, Integer.MIN_VALUE); + startTransaction.setPosition(edgeExtensionLayer, xPos, yPos); + startTransaction.setVisibility(edgeExtensionLayer, true); + finishTransaction.remove(edgeExtensionLayer); - @Override - public void onDisplayRemoved(int displayId) { - final RoundedContentPerDisplay listener = mPerDisplay.removeReturnOld(displayId); - if (listener != null) { - mDisplayInsetsController.removeInsetsChangedListener(displayId, listener); - } - } + return edgeExtensionLayer; } } diff --git a/wmshell/src/com/android/wm/shell/transition/Transitions.java b/wmshell/src/com/android/wm/shell/transition/Transitions.java index 41056d7a06..d2e6a12c58 100644 --- a/wmshell/src/com/android/wm/shell/transition/Transitions.java +++ b/wmshell/src/com/android/wm/shell/transition/Transitions.java @@ -18,7 +18,6 @@ package com.android.wm.shell.transition; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; -import static android.os.Trace.TRACE_TAG_WINDOW_MANAGER; import static android.view.WindowManager.TRANSIT_CHANGE; import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManager.TRANSIT_FIRST_CUSTOM; @@ -30,33 +29,33 @@ import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.view.WindowManager.TRANSIT_TO_FRONT; import static android.view.WindowManager.fixScale; import static android.window.TransitionInfo.FLAGS_IS_NON_APP_WINDOW; +import static android.window.TransitionInfo.FLAG_BACK_GESTURE_ANIMATED; import static android.window.TransitionInfo.FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY; import static android.window.TransitionInfo.FLAG_IS_BEHIND_STARTING_WINDOW; -import static android.window.TransitionInfo.FLAG_IS_DISPLAY; import static android.window.TransitionInfo.FLAG_IS_OCCLUDED; import static android.window.TransitionInfo.FLAG_IS_WALLPAPER; import static android.window.TransitionInfo.FLAG_NO_ANIMATION; import static android.window.TransitionInfo.FLAG_STARTING_WINDOW_TRANSFER_RECIPIENT; -import static com.android.systemui.shared.Flags.returnAnimationFrameworkLongLived; -import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_TRANSITIONS; -import static com.android.wm.shell.shared.TransitionUtil.FLAG_IS_DESKTOP_WALLPAPER_ACTIVITY; +import static com.android.window.flags.Flags.ensureWallpaperInTransitions; +import static com.android.systemui.shared.Flags.returnAnimationFrameworkLibrary; import static com.android.wm.shell.shared.TransitionUtil.isClosingType; import static com.android.wm.shell.shared.TransitionUtil.isOpeningType; +import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_SHELL_TRANSITIONS; import android.annotation.NonNull; import android.annotation.Nullable; import android.app.ActivityTaskManager; +import android.app.AppGlobals; import android.app.IApplicationThread; import android.content.ContentResolver; import android.content.Context; +import android.content.pm.PackageManager; import android.database.ContentObserver; -import android.os.Build; import android.os.Handler; import android.os.IBinder; import android.os.RemoteException; import android.os.SystemProperties; -import android.os.Trace; import android.provider.Settings; import android.util.ArrayMap; import android.util.Log; @@ -65,7 +64,6 @@ import android.view.SurfaceControl; import android.view.WindowManager; import android.window.ITransitionPlayer; import android.window.RemoteTransition; -import android.window.StartingWindowRemovalInfo; import android.window.TaskFragmentOrganizer; import android.window.TransitionFilter; import android.window.TransitionInfo; @@ -78,37 +76,32 @@ import androidx.annotation.BinderThread; import com.android.internal.R; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.jank.InteractionJankMonitor; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; +import com.android.window.flags.Flags; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.ExternalInterfaceBinder; import com.android.wm.shell.common.RemoteCallable; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes; -import com.android.wm.shell.desktopmode.DesktopWallpaperActivity; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.keyguard.KeyguardTransitionHandler; import com.android.wm.shell.protolog.ShellProtoLogGroup; -import com.android.wm.shell.shared.FocusTransitionListener; -import com.android.wm.shell.shared.IFocusTransitionListener; import com.android.wm.shell.shared.IHomeTransitionListener; import com.android.wm.shell.shared.IShellTransitions; import com.android.wm.shell.shared.ShellTransitions; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.shared.TransitionUtil; import com.android.wm.shell.shared.annotations.ExternalThread; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; +import com.android.wm.shell.transition.tracing.LegacyTransitionTracer; import com.android.wm.shell.transition.tracing.PerfettoTransitionTracer; import com.android.wm.shell.transition.tracing.TransitionTracer; import java.io.PrintWriter; import java.util.ArrayList; import java.util.Arrays; -import java.util.concurrent.Executor; /** * Plays transition animations. Within this player, each transition has a lifecycle. @@ -139,16 +132,10 @@ public class Transitions implements RemoteCallable<Transitions>, ShellCommandHandler.ShellCommandActionHandler { static final String TAG = "ShellTransitions"; - // If set, will print the stack trace for transition starts/finishes within the process - static final boolean DEBUG_START_TRANSITION = Build.IS_DEBUGGABLE && - SystemProperties.getBoolean("persist.wm.debug.start_shell_transition", false); - static final boolean DEBUG_FINISH_TRANSITION = Build.IS_DEBUGGABLE && - SystemProperties.getBoolean("persist.wm.debug.finish_shell_transition", false); - /** Set to {@code true} to enable shell transitions. */ - public static final boolean ENABLE_SHELL_TRANSITIONS = true; - public static final boolean SHELL_TRANSITIONS_ROTATION = - SystemProperties.getBoolean("persist.wm.debug.shell_transit_rotate", false); + public static final boolean ENABLE_SHELL_TRANSITIONS = getShellTransitEnabled(); + public static final boolean SHELL_TRANSITIONS_ROTATION = ENABLE_SHELL_TRANSITIONS + && SystemProperties.getBoolean("persist.wm.debug.shell_transit_rotate", false); /** Transition type for exiting PIP via the Shell, via pressing the expand button. */ public static final int TRANSIT_EXIT_PIP = TRANSIT_FIRST_CUSTOM + 1; @@ -176,11 +163,24 @@ public class Transitions implements RemoteCallable<Transitions>, /** Transition type for maximize to freeform transition. */ public static final int TRANSIT_RESTORE_FROM_MAXIMIZE = WindowManager.TRANSIT_FIRST_CUSTOM + 9; - /** - * Transition to change the bounds of a PiP task, either by resizing or moving to another - * display. - */ - public static final int TRANSIT_PIP_BOUNDS_CHANGE = TRANSIT_FIRST_CUSTOM + 16; + /** Transition type for starting the drag to desktop mode. */ + public static final int TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP = + WindowManager.TRANSIT_FIRST_CUSTOM + 10; + + /** Transition type for finalizing the drag to desktop mode. */ + public static final int TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP = + WindowManager.TRANSIT_FIRST_CUSTOM + 11; + + /** Transition type to cancel the drag to desktop mode. */ + public static final int TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP = + WindowManager.TRANSIT_FIRST_CUSTOM + 13; + + /** Transition type to animate the toggle resize between the max and default desktop sizes. */ + public static final int TRANSIT_DESKTOP_MODE_TOGGLE_RESIZE = + WindowManager.TRANSIT_FIRST_CUSTOM + 14; + + /** Transition to resize PiP task. */ + public static final int TRANSIT_RESIZE_PIP = TRANSIT_FIRST_CUSTOM + 16; /** * The task fragment drag resize transition used by activity embedding. @@ -192,27 +192,6 @@ public class Transitions implements RemoteCallable<Transitions>, /** Remote Transition that split accepts but ultimately needs to be animated by the remote. */ public static final int TRANSIT_SPLIT_PASSTHROUGH = TRANSIT_FIRST_CUSTOM + 18; - /** Transition to set windowing mode after exit pip transition is finished animating. */ - public static final int TRANSIT_CLEANUP_PIP_EXIT = WindowManager.TRANSIT_FIRST_CUSTOM + 19; - - /** Transition type to minimize a task. */ - public static final int TRANSIT_MINIMIZE = WindowManager.TRANSIT_FIRST_CUSTOM + 20; - - /** Transition to start the recents transition */ - public static final int TRANSIT_START_RECENTS_TRANSITION = TRANSIT_FIRST_CUSTOM + 21; - - /** Transition to end the recents transition */ - public static final int TRANSIT_END_RECENTS_TRANSITION = TRANSIT_FIRST_CUSTOM + 22; - - /** Transition type for app compat reachability. */ - public static final int TRANSIT_MOVE_LETTERBOX_REACHABILITY = TRANSIT_FIRST_CUSTOM + 23; - - /** Transition type for converting a task to a bubble. */ - public static final int TRANSIT_CONVERT_TO_BUBBLE = TRANSIT_FIRST_CUSTOM + 24; - - /** Transition type for converting a floating bubble to a bar bubble. */ - public static final int TRANSIT_BUBBLE_CONVERT_FLOATING_TO_BAR = TRANSIT_FIRST_CUSTOM + 25; - /** Transition type for desktop mode transitions. */ public static final int TRANSIT_DESKTOP_MODE_TYPES = WindowManager.TRANSIT_FIRST_CUSTOM + 100; @@ -230,6 +209,7 @@ public class Transitions implements RemoteCallable<Transitions>, private final ShellTransitionImpl mImpl = new ShellTransitionImpl(); private final SleepHandler mSleepHandler = new SleepHandler(); private final TransitionTracer mTransitionTracer; + private boolean mIsRegistered = false; /** List of possible handlers. Ordered by specificity (eg. tapped back to front). */ private final ArrayList<TransitionHandler> mHandlers = new ArrayList<>(); @@ -237,7 +217,6 @@ public class Transitions implements RemoteCallable<Transitions>, private final ArrayList<TransitionObserver> mObservers = new ArrayList<>(); private HomeTransitionObserver mHomeTransitionObserver; - private FocusTransitionObserver mFocusTransitionObserver; /** List of {@link Runnable} instances to run when the last active transition has finished. */ private final ArrayList<Runnable> mRunWhenIdleQueue = new ArrayList<>(); @@ -320,16 +299,13 @@ public class Transitions implements RemoteCallable<Transitions>, @NonNull ShellTaskOrganizer organizer, @NonNull TransactionPool pool, @NonNull DisplayController displayController, - @NonNull DisplayInsetsController displayInsetsController, @NonNull ShellExecutor mainExecutor, @NonNull Handler mainHandler, @NonNull ShellExecutor animExecutor, - @NonNull HomeTransitionObserver homeTransitionObserver, - @NonNull FocusTransitionObserver focusTransitionObserver) { + @NonNull HomeTransitionObserver observer) { this(context, shellInit, new ShellCommandHandler(), shellController, organizer, pool, - displayController, displayInsetsController, mainExecutor, mainHandler, animExecutor, - new RootTaskDisplayAreaOrganizer(mainExecutor, context, shellInit), - homeTransitionObserver, focusTransitionObserver); + displayController, mainExecutor, mainHandler, animExecutor, + new RootTaskDisplayAreaOrganizer(mainExecutor, context, shellInit), observer); } public Transitions(@NonNull Context context, @@ -339,13 +315,11 @@ public class Transitions implements RemoteCallable<Transitions>, @NonNull ShellTaskOrganizer organizer, @NonNull TransactionPool pool, @NonNull DisplayController displayController, - @NonNull DisplayInsetsController displayInsetsController, @NonNull ShellExecutor mainExecutor, @NonNull Handler mainHandler, @NonNull ShellExecutor animExecutor, @NonNull RootTaskDisplayAreaOrganizer rootTDAOrganizer, - @NonNull HomeTransitionObserver homeTransitionObserver, - @NonNull FocusTransitionObserver focusTransitionObserver) { + @NonNull HomeTransitionObserver observer) { mOrganizer = organizer; mContext = context; mMainExecutor = mainExecutor; @@ -353,27 +327,31 @@ public class Transitions implements RemoteCallable<Transitions>, mDisplayController = displayController; mPlayerImpl = new TransitionPlayerImpl(); mDefaultTransitionHandler = new DefaultTransitionHandler(context, shellInit, - displayController, displayInsetsController, pool, mainExecutor, mainHandler, - animExecutor, rootTDAOrganizer, InteractionJankMonitor.getInstance()); + displayController, pool, mainExecutor, mainHandler, animExecutor, rootTDAOrganizer); mRemoteTransitionHandler = new RemoteTransitionHandler(mMainExecutor); mShellCommandHandler = shellCommandHandler; mShellController = shellController; // The very last handler (0 in the list) should be the default one. mHandlers.add(mDefaultTransitionHandler); - ProtoLog.v(WM_SHELL_TRANSITIONS, "addHandler: Default"); + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "addHandler: Default"); // Next lowest priority is remote transitions. mHandlers.add(mRemoteTransitionHandler); - ProtoLog.v(WM_SHELL_TRANSITIONS, "addHandler: Remote"); + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "addHandler: Remote"); shellInit.addInitCallback(this::onInit, this); - mHomeTransitionObserver = homeTransitionObserver; - mFocusTransitionObserver = focusTransitionObserver; + mHomeTransitionObserver = observer; - mTransitionTracer = new PerfettoTransitionTracer(); + if (android.tracing.Flags.perfettoTransitionTracing()) { + mTransitionTracer = new PerfettoTransitionTracer(); + } else { + mTransitionTracer = new LegacyTransitionTracer(); + } } private void onInit() { - mOrganizer.shareTransactionQueue(); - mShellController.addExternalInterface(IShellTransitions.DESCRIPTOR, + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + mOrganizer.shareTransactionQueue(); + } + mShellController.addExternalInterface(KEY_EXTRA_SHELL_SHELL_TRANSITIONS, this::createExternalInterface, this); ContentResolver resolver = mContext.getContentResolver(); @@ -384,19 +362,27 @@ public class Transitions implements RemoteCallable<Transitions>, Settings.Global.getUriFor(Settings.Global.TRANSITION_ANIMATION_SCALE), false, new SettingsObserver()); - // Register this transition handler with Core - try { - mOrganizer.registerTransitionPlayer(mPlayerImpl); - } catch (RuntimeException e) { - throw e; + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + mIsRegistered = true; + // Register this transition handler with Core + try { + mOrganizer.registerTransitionPlayer(mPlayerImpl); + } catch (RuntimeException e) { + mIsRegistered = false; + throw e; + } + // Pre-load the instance. + TransitionMetrics.getInstance(); } - // Pre-load the instance. - TransitionMetrics.getInstance(); mShellCommandHandler.addCommandCallback("transitions", this, this); mShellCommandHandler.addDumpCallback(this::dump, this); } + public boolean isRegistered() { + return mIsRegistered; + } + private float getTransitionAnimationScaleSetting() { return fixScale(Settings.Global.getFloat(mContext.getContentResolver(), Settings.Global.TRANSITION_ANIMATION_SCALE, mContext.getResources().getFloat( @@ -439,7 +425,7 @@ public class Transitions implements RemoteCallable<Transitions>, mHandlers.add(handler); // Set initial scale settings. handler.setAnimScaleSetting(mTransitionAnimationScaleSetting); - ProtoLog.v(WM_SHELL_TRANSITIONS, "addHandler: %s", + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "addHandler: %s", handler.getClass().getSimpleName()); } @@ -542,6 +528,11 @@ public class Transitions implements RemoteCallable<Transitions>, // transition animation. continue; } + if (change.hasFlags(FLAG_IS_WALLPAPER) && !ensureWallpaperInTransitions()) { + // Wallpaper is always z-ordered at bottom, and historically is not animated by + // transition handlers. + continue; + } final SurfaceControl leash = change.getLeash(); final int mode = info.getChanges().get(i).getMode(); @@ -549,13 +540,8 @@ public class Transitions implements RemoteCallable<Transitions>, // When the window is moved to front, make sure the crop is updated to prevent it // from using the old crop. t.setPosition(leash, change.getEndRelOffset().x, change.getEndRelOffset().y); - if (change.getContainer() != null) { - // We don't want to crop on non-remotable (activity), because it can have - // letterbox child surface that is position at a negative position related to - // the activity's surface. - t.setWindowCrop(leash, change.getEndAbsBounds().width(), - change.getEndAbsBounds().height()); - } + t.setWindowCrop(leash, change.getEndAbsBounds().width(), + change.getEndAbsBounds().height()); } // Don't move anything that isn't independent within its parents @@ -565,13 +551,8 @@ public class Transitions implements RemoteCallable<Transitions>, t.setMatrix(leash, 1, 0, 0, 1); t.setAlpha(leash, 1.f); t.setPosition(leash, change.getEndRelOffset().x, change.getEndRelOffset().y); - if (change.getContainer() != null) { - // We don't want to crop on non-remotable (activity), because it can have - // letterbox child surface that is position at a negative position related - // to the activity's surface. - t.setWindowCrop(leash, change.getEndAbsBounds().width(), - change.getEndAbsBounds().height()); - } + t.setWindowCrop(leash, change.getEndAbsBounds().width(), + change.getEndAbsBounds().height()); } continue; } @@ -591,11 +572,6 @@ public class Transitions implements RemoteCallable<Transitions>, // Just in case there is a race with another animation (eg. recents finish()). // Changes are visible->visible so it's a problem if it isn't visible. t.show(leash); - // If there is a transient launch followed by a launch of one of the pausing tasks, - // we may end up with TRANSIT_TO_BACK followed by a CHANGE (w/ flag MOVE_TO_TOP), - // but since we are hiding the leash in the finish transaction above, we should also - // update the finish transaction here to reflect the change in visibility - finishT.show(leash); } } } @@ -607,6 +583,14 @@ public class Transitions implements RemoteCallable<Transitions>, final boolean isOpening = isOpeningType(transitType); final boolean isClosing = isClosingType(transitType); final int mode = change.getMode(); + // Ensure wallpapers stay in the back + if (change.hasFlags(FLAG_IS_WALLPAPER) && Flags.ensureWallpaperInTransitions()) { + if (mode == TRANSIT_OPEN || mode == TRANSIT_TO_FRONT) { + return -zSplitLine + numChanges - i; + } else { + return -zSplitLine - i; + } + } // Put all the OPEN/SHOW on top if (mode == TRANSIT_OPEN || mode == TRANSIT_TO_FRONT) { if (isOpening) { @@ -658,11 +642,6 @@ public class Transitions implements RemoteCallable<Transitions>, if (!TransitionInfo.isIndependent(change, info)) { continue; } - // Don't reparent display level if only changing order (since root will be inside it). - if (change.hasFlags(FLAG_IS_DISPLAY) && TransitionUtil.isOrderOnly(change) - && change.getStartRotation() == change.getEndRotation()) { - continue; - } boolean hasParent = change.getParent() != null; @@ -685,6 +664,46 @@ public class Transitions implements RemoteCallable<Transitions>, return -1; } + /** + * Look through a transition and see if all non-closing changes are no-animation. If so, no + * animation should play. + */ + static boolean isAllNoAnimation(TransitionInfo info) { + if (isClosingType(info.getType())) { + // no-animation is only relevant for launching (open) activities. + return false; + } + boolean hasNoAnimation = false; + final int changeSize = info.getChanges().size(); + for (int i = changeSize - 1; i >= 0; --i) { + final TransitionInfo.Change change = info.getChanges().get(i); + if (isClosingType(change.getMode())) { + // ignore closing apps since they are a side-effect of the transition and don't + // animate. + continue; + } + if (change.hasFlags(FLAG_NO_ANIMATION)) { + hasNoAnimation = true; + } else if (!TransitionUtil.isOrderOnly(change) && !change.hasFlags(FLAG_IS_OCCLUDED)) { + // Ignore the order only or occluded changes since they shouldn't be visible during + // animation. For anything else, we need to animate if at-least one relevant + // participant *is* animated, + return false; + } + } + return hasNoAnimation; + } + + /** + * Check if all changes in this transition are only ordering changes. If so, we won't animate. + */ + static boolean isAllOrderOnly(TransitionInfo info) { + for (int i = info.getChanges().size() - 1; i >= 0; --i) { + if (!TransitionUtil.isOrderOnly(info.getChanges().get(i))) return false; + } + return true; + } + private Track getOrCreateTrack(int trackId) { while (trackId >= mTracks.size()) { mTracks.add(new Track()); @@ -696,8 +715,8 @@ public class Transitions implements RemoteCallable<Transitions>, void onTransitionReady(@NonNull IBinder transitionToken, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction t, @NonNull SurfaceControl.Transaction finishT) { info.setUnreleasedWarningCallSiteForAllSurfaces("Transitions.onTransitionReady"); - ProtoLog.v(WM_SHELL_TRANSITIONS, "onTransitionReady (#%d) %s: %s", - info.getDebugId(), transitionToken, info.toString(" " /* prefix */)); + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "onTransitionReady (#%d) %s: %s", + info.getDebugId(), transitionToken, info); int activeIdx = findByToken(mPendingTransitions, transitionToken); if (activeIdx < 0) { final ActiveTransition existing = mKnownTransitions.get(transitionToken); @@ -705,11 +724,7 @@ public class Transitions implements RemoteCallable<Transitions>, Log.e(TAG, "Got duplicate transitionReady for " + transitionToken); // The transition is already somewhere else in the pipeline, so just return here. t.apply(); - if (existing.mFinishT != null) { - existing.mFinishT.merge(finishT); - } else { - existing.mFinishT = finishT; - } + existing.mFinishT.merge(finishT); return; } // This usually means the system is in a bad state and may not recover; however, @@ -758,7 +773,7 @@ public class Transitions implements RemoteCallable<Transitions>, if (tr.isIdle()) continue; hadPreceding = true; // Sleep starts a process of forcing all prior transitions to finish immediately - ProtoLog.v(WM_SHELL_TRANSITIONS, + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Start finish-for-sync track %d", i); finishForSync(active.mToken, i, null /* forceFinish */); } @@ -770,29 +785,12 @@ public class Transitions implements RemoteCallable<Transitions>, mReadyDuringSync.remove(active); } - // If any of the changes are on DesktopWallpaperActivity, add the flag to the change. - for (TransitionInfo.Change change : info.getChanges()) { - if (change.getTaskInfo() != null - && DesktopWallpaperActivity.isWallpaperTask(change.getTaskInfo())) { - change.setFlags(change.getFlags() | FLAG_IS_DESKTOP_WALLPAPER_ACTIVITY); - } - } - final Track track = getOrCreateTrack(info.getTrack()); track.mReadyTransitions.add(active); for (int i = 0; i < mObservers.size(); ++i) { - final boolean useTrace = Trace.isTagEnabled(TRACE_TAG_WINDOW_MANAGER); - if (useTrace) { - Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, - mObservers.get(i).getClass().getSimpleName() + "#onTransitionReady: " - + transitTypeToString(info.getType())); - } mObservers.get(i).onTransitionReady( active.mToken, info, active.mStartT, active.mFinishT); - if (useTrace) { - Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER); - } } /* @@ -802,7 +800,7 @@ public class Transitions implements RemoteCallable<Transitions>, if (info.getRootCount() == 0 && !KeyguardTransitionHandler.handles(info)) { // No root-leashes implies that the transition is empty/no-op, so just do // housekeeping and return. - ProtoLog.v(WM_SHELL_TRANSITIONS, "No transition roots in %s so" + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "No transition roots in %s so" + " abort", active); onAbort(active); return true; @@ -829,6 +827,11 @@ public class Transitions implements RemoteCallable<Transitions>, info.getChanges().remove(i); continue; } + // The change has already animated by back gesture, don't need to play transition + // animation on it. + if (change.hasFlags(FLAG_BACK_GESTURE_ANIMATED)) { + info.getChanges().remove(i); + } } // There does not need animation when: // A. Transfer starting window. Apply transfer starting window directly if there is no other @@ -844,7 +847,7 @@ public class Transitions implements RemoteCallable<Transitions>, && allOccluded)) { // Treat this as an abort since we are bypassing any merge logic and effectively // finishing immediately. - ProtoLog.v(WM_SHELL_TRANSITIONS, + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Non-visible anim so abort: %s", active); onAbort(active); return true; @@ -878,7 +881,7 @@ public class Transitions implements RemoteCallable<Transitions>, void processReadyQueue(Track track) { if (track.mReadyTransitions.isEmpty()) { if (track.mActiveTransition == null) { - ProtoLog.v(WM_SHELL_TRANSITIONS, "Track %d became idle", + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Track %d became idle", mTracks.indexOf(track)); if (areTracksIdle()) { if (!mReadyDuringSync.isEmpty()) { @@ -890,7 +893,7 @@ public class Transitions implements RemoteCallable<Transitions>, if (!success) break; } } else if (mPendingTransitions.isEmpty()) { - ProtoLog.v(WM_SHELL_TRANSITIONS, "All active transition " + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "All active transition " + "animations finished"); mKnownTransitions.clear(); // Run all runnables from the run-when-idle queue. @@ -916,51 +919,33 @@ public class Transitions implements RemoteCallable<Transitions>, onFinish(ready.mToken, null); return; } - playTransitionWithTracing(ready); + playTransition(ready); // Attempt to merge any more queued-up transitions. processReadyQueue(track); return; } // An existing animation is playing, so see if we can merge. final ActiveTransition playing = track.mActiveTransition; - final IBinder playingToken = playing.mToken; - final IBinder readyToken = ready.mToken; - if (ready.mAborted) { // record as merged since it is no-op. Calls back into processReadyQueue - onMerged(playingToken, readyToken); + onMerged(playing, ready); return; } - ProtoLog.v(WM_SHELL_TRANSITIONS, "Transition %s ready while" + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Transition %s ready while" + " %s is still animating. Notify the animating transition" + " in case they can be merged", ready, playing); mTransitionTracer.logMergeRequested(ready.mInfo.getDebugId(), playing.mInfo.getDebugId()); - playing.mHandler.mergeAnimation(ready.mToken, ready.mInfo, ready.mStartT, ready.mFinishT, - playing.mToken, (wct) -> onMerged(playingToken, readyToken)); + playing.mHandler.mergeAnimation(ready.mToken, ready.mInfo, ready.mStartT, + playing.mToken, (wct) -> onMerged(playing, ready)); } - private void onMerged(@NonNull IBinder playingToken, @NonNull IBinder mergedToken) { - mMainExecutor.assertCurrentThread(); - - ActiveTransition playing = mKnownTransitions.get(playingToken); - if (playing == null) { - Log.e(TAG, "Merging into a non-existent transition: " + playingToken); - return; - } - - ActiveTransition merged = mKnownTransitions.get(mergedToken); - if (merged == null) { - Log.e(TAG, "Merging a non-existent transition: " + mergedToken); - return; - } - + private void onMerged(@NonNull ActiveTransition playing, @NonNull ActiveTransition merged) { if (playing.getTrack() != merged.getTrack()) { throw new IllegalStateException("Can't merge across tracks: " + merged + " into " + playing); } - final Track track = mTracks.get(playing.getTrack()); - ProtoLog.v(WM_SHELL_TRANSITIONS, "Transition was merged: %s into %s", + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Transition was merged: %s into %s", merged, playing); int readyIdx = 0; if (track.mReadyTransitions.isEmpty() || track.mReadyTransitions.get(0) != merged) { @@ -988,20 +973,8 @@ public class Transitions implements RemoteCallable<Transitions>, processReadyQueue(track); } - private void playTransitionWithTracing(@NonNull ActiveTransition active) { - final boolean useTrace = Trace.isTagEnabled(TRACE_TAG_WINDOW_MANAGER); - if (useTrace) { - Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, - "playTransition: " + transitTypeToString(active.mInfo.getType())); - } - playTransition(active); - if (useTrace) { - Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER); - } - } - private void playTransition(@NonNull ActiveTransition active) { - ProtoLog.v(WM_SHELL_TRANSITIONS, "Playing animation for %s", active); + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Playing animation for %s", active); final var token = active.mToken; for (int i = 0; i < mObservers.size(); ++i) { @@ -1012,19 +985,13 @@ public class Transitions implements RemoteCallable<Transitions>, // If a handler already chose to run this animation, try delegating to it first. if (active.mHandler != null) { - ProtoLog.v(WM_SHELL_TRANSITIONS, " try firstHandler %s", + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " try firstHandler %s", active.mHandler); boolean consumed = active.mHandler.startAnimation(token, active.mInfo, active.mStartT, active.mFinishT, (wct) -> onFinish(token, wct)); if (consumed) { - ProtoLog.v(WM_SHELL_TRANSITIONS, " animated by firstHandler"); + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " animated by firstHandler"); mTransitionTracer.logDispatched(active.mInfo.getDebugId(), active.mHandler); - if (Trace.isTagEnabled(TRACE_TAG_WINDOW_MANAGER)) { - Trace.instant(TRACE_TAG_WINDOW_MANAGER, - active.mHandler.getClass().getSimpleName() - + "#startAnimation animated " - + transitTypeToString(active.mInfo.getType())); - } return; } } @@ -1037,32 +1004,19 @@ public class Transitions implements RemoteCallable<Transitions>, * Gives every handler (in order) a chance to animate until one consumes the transition. * @return the handler which consumed the transition. */ - public TransitionHandler dispatchTransition( - @NonNull IBinder transition, - @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull TransitionFinishCallback finishCB, - @Nullable TransitionHandler skip - ) { + TransitionHandler dispatchTransition(@NonNull IBinder transition, @NonNull TransitionInfo info, + @NonNull SurfaceControl.Transaction startT, @NonNull SurfaceControl.Transaction finishT, + @NonNull TransitionFinishCallback finishCB, @Nullable TransitionHandler skip) { for (int i = mHandlers.size() - 1; i >= 0; --i) { - if (mHandlers.get(i) == skip) { - ProtoLog.v(WM_SHELL_TRANSITIONS, " skip handler %s", - mHandlers.get(i)); - continue; - } + if (mHandlers.get(i) == skip) continue; + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " try handler %s", + mHandlers.get(i)); boolean consumed = mHandlers.get(i).startAnimation(transition, info, startT, finishT, finishCB); if (consumed) { - ProtoLog.v(WM_SHELL_TRANSITIONS, " animated by %s", + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " animated by %s", mHandlers.get(i)); mTransitionTracer.logDispatched(info.getDebugId(), mHandlers.get(i)); - if (Trace.isTagEnabled(TRACE_TAG_WINDOW_MANAGER)) { - Trace.instant(TRACE_TAG_WINDOW_MANAGER, - mHandlers.get(i).getClass().getSimpleName() - + "#startAnimation animated " - + transitTypeToString(info.getType())); - } return mHandlers.get(i); } } @@ -1070,26 +1024,6 @@ public class Transitions implements RemoteCallable<Transitions>, "This shouldn't happen, maybe the default handler is broken."); } - private Pair<TransitionHandler, WindowContainerTransaction> dispatchRequestWithTracing( - @NonNull IBinder transition, @NonNull TransitionRequestInfo request, - @Nullable TransitionHandler skip) { - final boolean useTrace = Trace.isTagEnabled(TRACE_TAG_WINDOW_MANAGER); - if (useTrace) { - Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, - "dispatchRequest: " + transitTypeToString(request.getType())); - } - Pair<TransitionHandler, WindowContainerTransaction> result = - dispatchRequest(transition, request, skip); - if (useTrace) { - if (result != null) { - Trace.instant(TRACE_TAG_WINDOW_MANAGER, result.first.getClass().getSimpleName() - + "#handleRequest handled " + transitTypeToString(request.getType())); - } - Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER); - } - return result; - } - /** * Gives every handler (in order) a chance to handle request until one consumes the transition. * @return the WindowContainerTransaction given by the handler which consumed the transition. @@ -1139,21 +1073,13 @@ public class Transitions implements RemoteCallable<Transitions>, info.releaseAnimSurfaces(); } - private void onFinish(IBinder token, @Nullable WindowContainerTransaction wct) { - mMainExecutor.assertCurrentThread(); - + private void onFinish(IBinder token, + @Nullable WindowContainerTransaction wct) { final ActiveTransition active = mKnownTransitions.get(token); if (active == null) { Log.e(TAG, "Trying to finish a non-existent transition: " + token); return; } - if (DEBUG_FINISH_TRANSITION) { - final String name = active.mHandler != null - ? active.mHandler.getClass().getName() : "null"; - Log.d(TAG, "finishTransition: type=" + transitTypeToString(active.mInfo.getType()) - + " wct=" + wct + " handler=" + name, new Throwable()); - } - final Track track = mTracks.get(active.getTrack()); if (track == null || track.mActiveTransition != active) { Log.e(TAG, "Trying to finish a non-running transition. Either remote crashed or " @@ -1166,7 +1092,7 @@ public class Transitions implements RemoteCallable<Transitions>, for (int i = 0; i < mObservers.size(); ++i) { mObservers.get(i).onTransitionFinished(active.mToken, active.mAborted); } - ProtoLog.v(WM_SHELL_TRANSITIONS, "Transition animation finished " + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Transition animation finished " + "(aborted=%b), notifying core %s", active.mAborted, active); if (active.mStartT != null) { // Applied by now, so clear immediately to remove any references. Do not set to null @@ -1220,7 +1146,7 @@ public class Transitions implements RemoteCallable<Transitions>, void requestStartTransition(@NonNull IBinder transitionToken, @Nullable TransitionRequestInfo request) { - ProtoLog.v(WM_SHELL_TRANSITIONS, "Transition requested (#%d): %s %s", + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Transition requested (#%d): %s %s", request.getDebugId(), transitionToken, request); if (mKnownTransitions.containsKey(transitionToken)) { throw new RuntimeException("Transition already started " + transitionToken); @@ -1234,25 +1160,21 @@ public class Transitions implements RemoteCallable<Transitions>, mSleepHandler.handleRequest(transitionToken, request); active.mHandler = mSleepHandler; } else { - Pair<TransitionHandler, WindowContainerTransaction> requestResult = - dispatchRequestWithTracing(transitionToken, request, /* skip= */ null); - if (requestResult != null) { - active.mHandler = requestResult.first; - wct = requestResult.second; - ProtoLog.v(WM_SHELL_TRANSITIONS, "Transition (#%d): request handled by %s", - request.getDebugId(), active.mHandler.getClass().getSimpleName()); + for (int i = mHandlers.size() - 1; i >= 0; --i) { + wct = mHandlers.get(i).handleRequest(transitionToken, request); + if (wct != null) { + active.mHandler = mHandlers.get(i); + break; + } } if (request.getDisplayChange() != null) { TransitionRequestInfo.DisplayChange change = request.getDisplayChange(); - if (change.getStartRotation() != change.getEndRotation() - || (change.getStartAbsBounds() != null - && !change.getStartAbsBounds().equals(change.getEndAbsBounds()))) { - // Is a display change, so dispatch to all displayChange listeners + if (change.getEndRotation() != change.getStartRotation()) { + // Is a rotation, so dispatch to all displayChange listeners if (wct == null) { wct = new WindowContainerTransaction(); } - mDisplayController.onDisplayChangeRequested(wct, change.getDisplayId(), - change.getStartAbsBounds(), change.getEndAbsBounds(), + mDisplayController.onDisplayRotateRequested(wct, change.getDisplayId(), change.getStartRotation(), change.getEndRotation()); } } @@ -1279,10 +1201,6 @@ public class Transitions implements RemoteCallable<Transitions>, mPendingTransitions.add(0, active); } - void removeStartingWindow(StartingWindowRemovalInfo removalInfo) { - mOrganizer.removeStartingWindow(removalInfo); - } - /** * Start a new transition directly. * @param handler if null, the transition will be dispatched to the registered set of transition @@ -1290,13 +1208,8 @@ public class Transitions implements RemoteCallable<Transitions>, */ public IBinder startTransition(@WindowManager.TransitionType int type, @NonNull WindowContainerTransaction wct, @Nullable TransitionHandler handler) { - ProtoLog.v(WM_SHELL_TRANSITIONS, "Directly starting a new transition " - + "type=%s wct=%s handler=%s", transitTypeToString(type), wct, handler); - if (DEBUG_START_TRANSITION) { - Log.d(TAG, "startTransition: type=" + transitTypeToString(type) - + " wct=" + wct + " handler=" - + (handler != null ? handler.getClass().getName() : null), new Throwable()); - } + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "Directly starting a new transition " + + "type=%d wct=%s handler=%s", type, wct, handler); final ActiveTransition active = new ActiveTransition(mOrganizer.startNewTransition(type, wct)); active.mHandler = handler; @@ -1312,7 +1225,7 @@ public class Transitions implements RemoteCallable<Transitions>, @Nullable public TransitionHandler getHandlerForTakeover( @NonNull IBinder transition, @NonNull TransitionInfo info) { - if (!returnAnimationFrameworkLongLived()) { + if (!returnAnimationFrameworkLibrary()) { ProtoLog.v(ShellProtoLogGroup.WM_SHELL_RECENTS_TRANSITION, "Trying to get a handler for takeover but the flag is disabled"); return null; @@ -1384,9 +1297,9 @@ public class Transitions implements RemoteCallable<Transitions>, } // Attempt to merge a SLEEP info to signal that the playing transition needs to // fast-forward. - ProtoLog.v(WM_SHELL_TRANSITIONS, " Attempt to merge sync %s" + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, " Attempt to merge sync %s" + " into %s via a SLEEP proxy", nextSync, playing); - playing.mHandler.mergeAnimation(nextSync.mToken, dummyInfo, dummyT, dummyT, + playing.mHandler.mergeAnimation(nextSync.mToken, dummyInfo, dummyT, playing.mToken, (wct) -> {}); // it's possible to complete immediately. If that happens, just repeat the signal // loop until we either finish everything or start playing an animation that isn't @@ -1434,9 +1347,7 @@ public class Transitions implements RemoteCallable<Transitions>, * @param finishTransaction the transaction given to the handler to be applied after the * transition animation. Unlike startTransaction, the handler is NOT * expected to apply this transaction. The Transition system will - * apply it when finishCallback is called. If additional transitions - * are merged, then the finish transactions for those transitions - * will be applied after this transaction. + * apply it when finishCallback is called. * @param finishCallback Call this when finished. This MUST be called on main thread. * @return true if transition was handled, false if not (falls-back to default). */ @@ -1445,37 +1356,6 @@ public class Transitions implements RemoteCallable<Transitions>, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull TransitionFinishCallback finishCallback); - /** - * Like {@link #startAnimation(IBinder, TransitionInfo, SurfaceControl.Transaction, - * SurfaceControl.Transaction, TransitionFinishCallback)} when {@param info} is not null. - * When {@param info} is null, startAnimation won't do any active animation, but will just - * collect information about the compatibility of the handler and the transition in - * {@param dispatchState}. - */ - default boolean startAnimation(@NonNull IBinder transition, - @Nullable TransitionInfo consumableInfo, - @NonNull TransitionDispatchState dispatchState, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull TransitionFinishCallback finishCallback) { - if (consumableInfo != null) { - return startAnimation(transition, consumableInfo, startTransaction, - finishTransaction, finishCallback); - } - return false; - } - - /** - * See {@link #mergeAnimation(IBinder, TransitionInfo, SurfaceControl.Transaction, SurfaceControl.Transaction, IBinder, TransitionFinishCallback)} - * - * This deprecated method header is provided until downstream implementation can migrate to - * the call that takes both start & finish transactions. - */ - @Deprecated - default void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull IBinder mergeTarget, @NonNull TransitionFinishCallback finishCallback) { } - /** * Attempts to merge a different transition's animation into an animation that this handler * is currently playing. If a merge is not possible/supported, this should be a no-op. @@ -1493,25 +1373,14 @@ public class Transitions implements RemoteCallable<Transitions>, * * @param transition This is the transition that wants to be merged. * @param info Information about what is changing in the transition. - * @param startTransaction The start transaction containing surface changes that resulted - * from the incoming transition. This should be applied by this - * active handler only if it chooses to merge the transition. - * @param finishTransaction The finish transaction for the incoming transition. Unlike - * startTransaction, the handler is NOT expected to apply this - * transaction. If the transition is merged, the Transition system - * will apply after finishCallback is called following the finish - * transaction provided in `#startAnimation()`. + * @param t Contains surface changes that resulted from the transition. * @param mergeTarget This is the transition that we are attempting to merge with (ie. the * one this handler is currently already animating). * @param finishCallback Call this if merged. This MUST be called on main thread. */ default void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction, - @NonNull IBinder mergeTarget, @NonNull TransitionFinishCallback finishCallback) { - // Call the legacy implementation by default - mergeAnimation(transition, info, startTransaction, mergeTarget, finishCallback); - } + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, + @NonNull TransitionFinishCallback finishCallback) { } /** * Checks whether this handler is capable of taking over a transition matching `info`. @@ -1605,16 +1474,16 @@ public class Transitions implements RemoteCallable<Transitions>, * transition animation. The Transition system will apply it when * finishCallback is called by the transition handler. */ - default void onTransitionReady(@NonNull IBinder transition, @NonNull TransitionInfo info, + void onTransitionReady(@NonNull IBinder transition, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, - @NonNull SurfaceControl.Transaction finishTransaction) {} + @NonNull SurfaceControl.Transaction finishTransaction); /** * Called when the transition is starting to play. It isn't called for merged transitions. * * @param transition the unique token of this transition */ - default void onTransitionStarting(@NonNull IBinder transition) {} + void onTransitionStarting(@NonNull IBinder transition); /** * Called when a transition is merged into another transition. There won't be any following @@ -1623,7 +1492,7 @@ public class Transitions implements RemoteCallable<Transitions>, * @param merged the unique token of the transition that's merged to another one * @param playing the unique token of the transition that accepts the merge */ - default void onTransitionMerged(@NonNull IBinder merged, @NonNull IBinder playing) {} + void onTransitionMerged(@NonNull IBinder merged, @NonNull IBinder playing); /** * Called when the transition is finished. This isn't called for merged transitions. @@ -1631,7 +1500,7 @@ public class Transitions implements RemoteCallable<Transitions>, * @param transition the unique token of this transition * @param aborted {@code true} if this transition is aborted; {@code false} otherwise. */ - default void onTransitionFinished(@NonNull IBinder transition, boolean aborted) {} + void onTransitionFinished(@NonNull IBinder transition, boolean aborted); } @BinderThread @@ -1640,7 +1509,7 @@ public class Transitions implements RemoteCallable<Transitions>, public void onTransitionReady(IBinder iBinder, TransitionInfo transitionInfo, SurfaceControl.Transaction t, SurfaceControl.Transaction finishT) throws RemoteException { - ProtoLog.v(WM_SHELL_TRANSITIONS, "onTransitionReady(transaction=%d)", + ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TRANSITIONS, "onTransitionReady(transaction=%d)", t.getId()); mMainExecutor.execute(() -> Transitions.this.onTransitionReady( iBinder, transitionInfo, t, finishT)); @@ -1651,11 +1520,6 @@ public class Transitions implements RemoteCallable<Transitions>, TransitionRequestInfo request) throws RemoteException { mMainExecutor.execute(() -> Transitions.this.requestStartTransition(iBinder, request)); } - - @Override - public void removeStartingWindow(StartingWindowRemovalInfo removalInfo) { - mMainExecutor.execute(() -> Transitions.this.removeStartingWindow(removalInfo)); - } } /** @@ -1682,21 +1546,6 @@ public class Transitions implements RemoteCallable<Transitions>, mMainExecutor.execute( () -> mRemoteTransitionHandler.removeFiltered(remoteTransition)); } - - @Override - public void setFocusTransitionListener(FocusTransitionListener listener, - Executor executor) { - mMainExecutor.execute(() -> - mFocusTransitionObserver.setLocalFocusTransitionListener(listener, executor)); - - } - - @Override - public void unsetFocusTransitionListener(FocusTransitionListener listener) { - mMainExecutor.execute(() -> - mFocusTransitionObserver.unsetLocalFocusTransitionListener(listener)); - - } } /** @@ -1757,15 +1606,6 @@ public class Transitions implements RemoteCallable<Transitions>, }); } - @Override - public void setFocusTransitionListener(IFocusTransitionListener listener) { - executeRemoteCallWithTaskPermission(mTransitions, "setFocusTransitionListener", - (transitions) -> { - transitions.mFocusTransitionObserver.setRemoteFocusTransitionListener( - transitions, listener); - }); - } - @Override public SurfaceControl getHomeTaskOverlayContainer() { SurfaceControl[] result = new SurfaceControl[1]; @@ -1773,10 +1613,6 @@ public class Transitions implements RemoteCallable<Transitions>, (controller) -> { result[0] = controller.getHomeTaskOverlayContainer(); }, true /* blocking */); - if (result[0] == null) { - Log.wtf("WindowManagerShell", "Null home task overlay surface, " - + "mTransitions=%s" + (mTransitions != null)); - } // Return a copy as writing to parcel releases the original surface return new SurfaceControl(result[0], "Transitions.HomeOverlay"); } @@ -1799,15 +1635,17 @@ public class Transitions implements RemoteCallable<Transitions>, @Override public boolean onShellCommand(String[] args, PrintWriter pw) { - if (args.length == 0) { - printShellCommandHelp(pw, ""); - return false; - } switch (args[0]) { case "tracing": { - pw.println("Command not supported. Use the Perfetto command instead to start " - + "and stop this trace instead."); - return false; + if (!android.tracing.Flags.perfettoTransitionTracing()) { + ((LegacyTransitionTracer) mTransitionTracer) + .onShellCommand(Arrays.copyOfRange(args, 1, args.length), pw); + } else { + pw.println("Command not supported. Use the Perfetto command instead to start " + + "and stop this trace instead."); + return false; + } + return true; } default: { pw.println("Invalid command: " + args[0]); @@ -1818,15 +1656,19 @@ public class Transitions implements RemoteCallable<Transitions>, } @Override - public void printShellCommandHelp(PrintWriter pw, String prefix) {} + public void printShellCommandHelp(PrintWriter pw, String prefix) { + if (!android.tracing.Flags.perfettoTransitionTracing()) { + pw.println(prefix + "tracing"); + ((LegacyTransitionTracer) mTransitionTracer).printShellCommandHelp(pw, prefix + " "); + } + } private void dump(@NonNull PrintWriter pw, String prefix) { pw.println(prefix + TAG); final String innerPrefix = prefix + " "; - pw.println(prefix + "Handlers (ordered by priority):"); - for (int i = mHandlers.size() - 1; i >= 0; i--) { - final TransitionHandler handler = mHandlers.get(i); + pw.println(prefix + "Handlers:"); + for (TransitionHandler handler : mHandlers) { pw.print(innerPrefix); pw.print(handler.getClass().getSimpleName()); pw.println(" (" + Integer.toHexString(System.identityHashCode(handler)) + ")"); @@ -1887,39 +1729,15 @@ public class Transitions implements RemoteCallable<Transitions>, } } - /** - * Like WindowManager#transitTypeToString(), but also covers known custom transition types as - * well. - */ - public static String transitTypeToString(int transitType) { - if (transitType < TRANSIT_FIRST_CUSTOM) { - return WindowManager.transitTypeToString(transitType); + private static boolean getShellTransitEnabled() { + try { + if (AppGlobals.getPackageManager().hasSystemFeature( + PackageManager.FEATURE_AUTOMOTIVE, 0)) { + return SystemProperties.getBoolean("persist.wm.debug.shell_transit", true); + } + } catch (RemoteException re) { + Log.w(TAG, "Error getting system features"); } - - String typeStr = switch (transitType) { - case TRANSIT_EXIT_PIP -> "EXIT_PIP"; - case TRANSIT_EXIT_PIP_TO_SPLIT -> "EXIT_PIP_TO_SPLIT"; - case TRANSIT_REMOVE_PIP -> "REMOVE_PIP"; - case TRANSIT_SPLIT_SCREEN_PAIR_OPEN -> "SPLIT_SCREEN_PAIR_OPEN"; - case TRANSIT_SPLIT_SCREEN_OPEN_TO_SIDE -> "SPLIT_SCREEN_OPEN_TO_SIDE"; - case TRANSIT_SPLIT_DISMISS_SNAP -> "SPLIT_DISMISS_SNAP"; - case TRANSIT_SPLIT_DISMISS -> "SPLIT_DISMISS"; - case TRANSIT_MAXIMIZE -> "MAXIMIZE"; - case TRANSIT_RESTORE_FROM_MAXIMIZE -> "RESTORE_FROM_MAXIMIZE"; - case TRANSIT_PIP_BOUNDS_CHANGE -> "PIP_BOUNDS_CHANGE"; - case TRANSIT_TASK_FRAGMENT_DRAG_RESIZE -> "TASK_FRAGMENT_DRAG_RESIZE"; - case TRANSIT_SPLIT_PASSTHROUGH -> "SPLIT_PASSTHROUGH"; - case TRANSIT_CLEANUP_PIP_EXIT -> "CLEANUP_PIP_EXIT"; - case TRANSIT_MINIMIZE -> "MINIMIZE"; - case TRANSIT_START_RECENTS_TRANSITION -> "START_RECENTS_TRANSITION"; - case TRANSIT_END_RECENTS_TRANSITION -> "END_RECENTS_TRANSITION"; - case TRANSIT_CONVERT_TO_BUBBLE -> "CONVERT_TO_BUBBLE"; - case TRANSIT_BUBBLE_CONVERT_FLOATING_TO_BAR -> "BUBBLE_CONVERT_FLOATING_TO_BAR"; - default -> ""; - }; - if (typeStr.isEmpty()) { - typeStr = DesktopModeTransitionTypes.transitTypeToString(transitType); - } - return typeStr + "(FIRST_CUSTOM+" + (transitType - TRANSIT_FIRST_CUSTOM) + ")"; + return true; } } diff --git a/wmshell/src/com/android/wm/shell/transition/WindowThumbnail.java b/wmshell/src/com/android/wm/shell/transition/WindowThumbnail.java index 341f2bc667..2c668ed3d8 100644 --- a/wmshell/src/com/android/wm/shell/transition/WindowThumbnail.java +++ b/wmshell/src/com/android/wm/shell/transition/WindowThumbnail.java @@ -21,6 +21,7 @@ import android.graphics.GraphicBuffer; import android.graphics.PixelFormat; import android.hardware.HardwareBuffer; import android.view.SurfaceControl; +import android.view.SurfaceSession; /** * Represents a surface that is displayed over a transition surface. @@ -32,10 +33,10 @@ class WindowThumbnail { private WindowThumbnail() {} /** Create a thumbnail surface and attach it over a parent surface. */ - static WindowThumbnail createAndAttach(SurfaceControl parent, + static WindowThumbnail createAndAttach(SurfaceSession surfaceSession, SurfaceControl parent, HardwareBuffer thumbnailHeader, SurfaceControl.Transaction t) { WindowThumbnail windowThumbnail = new WindowThumbnail(); - windowThumbnail.mSurfaceControl = new SurfaceControl.Builder() + windowThumbnail.mSurfaceControl = new SurfaceControl.Builder(surfaceSession) .setParent(parent) .setName("WindowThumanil : " + parent.toString()) .setCallsite("WindowThumanil") diff --git a/wmshell/src/com/android/wm/shell/transition/tracing/PerfettoTransitionTracer.java b/wmshell/src/com/android/wm/shell/transition/tracing/PerfettoTransitionTracer.java index d127329ffa..456658c54f 100644 --- a/wmshell/src/com/android/wm/shell/transition/tracing/PerfettoTransitionTracer.java +++ b/wmshell/src/com/android/wm/shell/transition/tracing/PerfettoTransitionTracer.java @@ -24,7 +24,6 @@ import android.internal.perfetto.protos.ShellTransitionOuterClass.ShellTransitio import android.internal.perfetto.protos.TracePacketOuterClass.TracePacket; import android.os.SystemClock; import android.os.Trace; -import android.tracing.TracingUtils; import android.tracing.perfetto.DataSourceParams; import android.tracing.perfetto.InitArguments; import android.tracing.perfetto.Producer; @@ -70,8 +69,7 @@ public class PerfettoTransitionTracer implements TransitionTracer { return; } - Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, - TracingUtils.uiTracingSliceName("Transition::logDispatched")); + Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "logDispatched"); try { doLogDispatched(transitionId, handler); } finally { @@ -118,8 +116,7 @@ public class PerfettoTransitionTracer implements TransitionTracer { return; } - Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, - TracingUtils.uiTracingSliceName("Transition::logMergeRequested")); + Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "logMergeRequested"); try { doLogMergeRequested(mergeRequestedTransitionId, playingTransitionId); } finally { @@ -151,8 +148,7 @@ public class PerfettoTransitionTracer implements TransitionTracer { return; } - Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, - TracingUtils.uiTracingSliceName("Transition::logMerged")); + Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "logMerged"); try { doLogMerged(mergedTransitionId, playingTransitionId); } finally { @@ -183,8 +179,7 @@ public class PerfettoTransitionTracer implements TransitionTracer { return; } - Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, - TracingUtils.uiTracingSliceName("Transition::logAborted-shellSide")); + Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "logAborted"); try { doLogAborted(transitionId); } finally { diff --git a/wmshell/src/com/android/wm/shell/unfold/UnfoldAnimationController.java b/wmshell/src/com/android/wm/shell/unfold/UnfoldAnimationController.java index 2ca749c276..e6d35e8311 100644 --- a/wmshell/src/com/android/wm/shell/unfold/UnfoldAnimationController.java +++ b/wmshell/src/com/android/wm/shell/unfold/UnfoldAnimationController.java @@ -23,7 +23,7 @@ import android.util.SparseArray; import android.view.SurfaceControl; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.TransactionPool; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.unfold.ShellUnfoldProgressProvider.UnfoldListener; import com.android.wm.shell.unfold.animation.UnfoldTaskAnimator; diff --git a/wmshell/src/com/android/wm/shell/unfold/UnfoldTransitionHandler.java b/wmshell/src/com/android/wm/shell/unfold/UnfoldTransitionHandler.java index 82ed97db62..7c2ba455c0 100644 --- a/wmshell/src/com/android/wm/shell/unfold/UnfoldTransitionHandler.java +++ b/wmshell/src/com/android/wm/shell/unfold/UnfoldTransitionHandler.java @@ -16,31 +16,25 @@ package com.android.wm.shell.unfold; -import static android.view.Display.DEFAULT_DISPLAY; import static android.view.WindowManager.KEYGUARD_VISIBILITY_TRANSIT_FLAGS; import static android.view.WindowManager.TRANSIT_CHANGE; +import static android.view.WindowManager.TRANSIT_FLAG_PHYSICAL_DISPLAY_SWITCH; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_TRANSITIONS; -import static com.android.wm.shell.transition.Transitions.TRANSIT_BUBBLE_CONVERT_FLOATING_TO_BAR; import android.animation.ValueAnimator; import android.app.ActivityManager; -import android.os.Handler; import android.os.IBinder; -import android.util.Slog; import android.view.SurfaceControl; import android.window.TransitionInfo; import android.window.TransitionRequestInfo; import android.window.WindowContainerTransaction; -import androidx.annotation.IntDef; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.annotation.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; -import com.android.wm.shell.bubbles.BubbleTaskUnfoldTransitionMerger; -import com.android.wm.shell.shared.TransactionPool; +import com.android.internal.protolog.common.ProtoLog; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.shared.TransitionUtil; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; @@ -51,11 +45,8 @@ import com.android.wm.shell.unfold.animation.FullscreenUnfoldTaskAnimator; import com.android.wm.shell.unfold.animation.SplitTaskUnfoldAnimator; import com.android.wm.shell.unfold.animation.UnfoldTaskAnimator; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.List; -import java.util.Optional; import java.util.concurrent.Executor; /** @@ -65,67 +56,37 @@ import java.util.concurrent.Executor; */ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListener { - private static final String TAG = "UnfoldTransitionHandler"; - @VisibleForTesting - static final int FINISH_ANIMATION_TIMEOUT_MILLIS = 5_000; - - @Retention(RetentionPolicy.SOURCE) - @IntDef({ - DefaultDisplayChange.DEFAULT_DISPLAY_NO_CHANGE, - DefaultDisplayChange.DEFAULT_DISPLAY_UNFOLD, - DefaultDisplayChange.DEFAULT_DISPLAY_FOLD, - }) - private @interface DefaultDisplayChange { - int DEFAULT_DISPLAY_NO_CHANGE = 0; - int DEFAULT_DISPLAY_UNFOLD = 1; - int DEFAULT_DISPLAY_FOLD = 2; - } - private final ShellUnfoldProgressProvider mUnfoldProgressProvider; private final Transitions mTransitions; - private final Optional<BubbleTaskUnfoldTransitionMerger> mBubbleTaskUnfoldTransitionMerger; private final Executor mExecutor; private final TransactionPool mTransactionPool; - private final Handler mHandler; @Nullable private TransitionFinishCallback mFinishCallback; @Nullable private IBinder mTransition; - // TODO: b/318803244 - remove when we could guarantee finishing the animation - // after startAnimation callback private boolean mAnimationFinished = false; - private float mLastAnimationProgress = 0.0f; private final List<UnfoldTaskAnimator> mAnimators = new ArrayList<>(); - private final Runnable mAnimationPlayingTimeoutRunnable = () -> { - Slog.wtf(TAG, "Timeout occurred when playing the unfold animation, " - + "force finishing the transition"); - finishTransitionIfNeeded(); - }; - public UnfoldTransitionHandler(ShellInit shellInit, ShellUnfoldProgressProvider unfoldProgressProvider, FullscreenUnfoldTaskAnimator fullscreenUnfoldAnimator, SplitTaskUnfoldAnimator splitUnfoldTaskAnimator, TransactionPool transactionPool, Executor executor, - Handler handler, - Transitions transitions, - Optional<BubbleTaskUnfoldTransitionMerger> bubbleTaskUnfoldTransitionMerger) { + Transitions transitions) { mUnfoldProgressProvider = unfoldProgressProvider; mTransitions = transitions; mTransactionPool = transactionPool; mExecutor = executor; - mHandler = handler; - mBubbleTaskUnfoldTransitionMerger = bubbleTaskUnfoldTransitionMerger; mAnimators.add(splitUnfoldTaskAnimator); mAnimators.add(fullscreenUnfoldAnimator); // TODO(b/238217847): Temporarily add this check here until we can remove the dynamic // override for this controller from the base module - if (unfoldProgressProvider != ShellUnfoldProgressProvider.NO_PROVIDER) { + if (unfoldProgressProvider != ShellUnfoldProgressProvider.NO_PROVIDER + && Transitions.ENABLE_SHELL_TRANSITIONS) { shellInit.addInitCallback(this::onInit, this); } } @@ -146,6 +107,16 @@ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListene @NonNull SurfaceControl.Transaction startTransaction, @NonNull SurfaceControl.Transaction finishTransaction, @NonNull TransitionFinishCallback finishCallback) { + if (shouldPlayUnfoldAnimation(info) && transition != mTransition) { + // Take over transition that has unfold, we might receive it if no other handler + // accepted request in handleRequest, e.g. for rotation + unfold or + // TRANSIT_NONE + unfold transitions + mTransition = transition; + + ProtoLog.v(WM_SHELL_TRANSITIONS, "UnfoldTransitionHandler: " + + "take over startAnimation"); + } + if (transition != mTransition) return false; for (int i = 0; i < mAnimators.size(); i++) { @@ -180,11 +151,6 @@ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListene // finish shell transition immediately if (mAnimationFinished) { finishTransitionIfNeeded(); - } else { - // TODO: b/318803244 - remove timeout handling when we could guarantee that - // the animation will be always finished after receiving startAnimation - mHandler.removeCallbacks(mAnimationPlayingTimeoutRunnable); - mHandler.postDelayed(mAnimationPlayingTimeoutRunnable, FINISH_ANIMATION_TIMEOUT_MILLIS); } return true; @@ -192,8 +158,6 @@ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListene @Override public void onStateChangeProgress(float progress) { - mLastAnimationProgress = progress; - if (mTransition == null) return; SurfaceControl.Transaction transaction = null; @@ -218,24 +182,15 @@ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListene @Override public void onStateChangeFinished() { + mAnimationFinished = true; finishTransitionIfNeeded(); - - // mLastAnimationProgress is guaranteed to be 0f when folding finishes, see - // {@link PhysicsBasedUnfoldTransitionProgressProvider#cancelTransition}. - // We can use it as an indication that the next animation progress events will be related - // to unfolding, so let's reset mAnimationFinished to 'false' in this case. - final boolean isFoldingFinished = mLastAnimationProgress == 0f; - mAnimationFinished = !isFoldingFinished; } @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull TransitionFinishCallback finishCallback) { - if (info.getType() != TRANSIT_CHANGE - && info.getType() != TRANSIT_BUBBLE_CONVERT_FLOATING_TO_BAR) { + if (info.getType() != TRANSIT_CHANGE) { return; } if ((info.getFlags() & KEYGUARD_VISIBILITY_TRANSIT_FLAGS) != 0) { @@ -243,37 +198,19 @@ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListene } // TODO (b/286928742) unfold transition handler should be part of mixed handler to // handle merges better. - for (int i = 0; i < info.getChanges().size(); ++i) { final TransitionInfo.Change change = info.getChanges().get(i); final ActivityManager.RunningTaskInfo taskInfo = change.getTaskInfo(); if (taskInfo != null && taskInfo.configuration.windowConfiguration.isAlwaysOnTop()) { - // Tasks that are always on top, excluding bubbles, will handle their own transition - // as they are on top of everything else. If this is a transition for a bubble task, - // attempt to merge it. Otherwise skip merging transitions. - if (mBubbleTaskUnfoldTransitionMerger.isPresent()) { - boolean merged = - mBubbleTaskUnfoldTransitionMerger - .get() - .mergeTaskWithUnfold(taskInfo, info, change, startT, finishT); - if (!merged) { - return; - } - } else { - return; - } + // Tasks that are always on top (e.g. bubbles), will handle their own transition + // as they are on top of everything else. So skip merging transitions here. + return; } } // Apply changes happening during the unfold animation immediately - startT.apply(); + t.apply(); finishCallback.onTransitionFinished(null); - - if (getDefaultDisplayChange(info) == DefaultDisplayChange.DEFAULT_DISPLAY_FOLD) { - // Force-finish current unfold animation as we are processing folding now which doesn't - // have any animations on the Shell side - finishTransitionIfNeeded(); - } } /** Whether `request` contains an unfold action. */ @@ -282,25 +219,18 @@ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListene if (!ValueAnimator.areAnimatorsEnabled()) return false; return (request.getType() == TRANSIT_CHANGE - && getDefaultDisplayChange(request.getDisplayChange()) - == DefaultDisplayChange.DEFAULT_DISPLAY_UNFOLD); + && request.getDisplayChange() != null + && isUnfoldDisplayChange(request.getDisplayChange())); } - @DefaultDisplayChange - private int getDefaultDisplayChange( - @Nullable TransitionRequestInfo.DisplayChange displayChange) { - if (displayChange == null) return DefaultDisplayChange.DEFAULT_DISPLAY_NO_CHANGE; - - if (displayChange.getDisplayId() != DEFAULT_DISPLAY) { - return DefaultDisplayChange.DEFAULT_DISPLAY_NO_CHANGE; - } - + private boolean isUnfoldDisplayChange( + @NonNull TransitionRequestInfo.DisplayChange displayChange) { if (!displayChange.isPhysicalDisplayChanged()) { - return DefaultDisplayChange.DEFAULT_DISPLAY_NO_CHANGE; + return false; } if (displayChange.getStartAbsBounds() == null || displayChange.getEndAbsBounds() == null) { - return DefaultDisplayChange.DEFAULT_DISPLAY_NO_CHANGE; + return false; } // Handle only unfolding, currently we don't have an animation when folding @@ -309,11 +239,17 @@ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListene final int startArea = displayChange.getStartAbsBounds().width() * displayChange.getStartAbsBounds().height(); - return endArea > startArea ? DefaultDisplayChange.DEFAULT_DISPLAY_UNFOLD - : DefaultDisplayChange.DEFAULT_DISPLAY_FOLD; + return endArea > startArea; } - private int getDefaultDisplayChange(@NonNull TransitionInfo transitionInfo) { + /** Whether `transitionInfo` contains an unfold action. */ + public boolean shouldPlayUnfoldAnimation(@NonNull TransitionInfo transitionInfo) { + // Unfold animation won't play when animations are disabled + if (!ValueAnimator.areAnimatorsEnabled()) return false; + // Only handle transitions that are marked as physical display switch + // See PhysicalDisplaySwitchTransitionLauncher for the conditions + if ((transitionInfo.getFlags() & TRANSIT_FLAG_PHYSICAL_DISPLAY_SWITCH) == 0) return false; + for (int i = 0; i < transitionInfo.getChanges().size(); i++) { final TransitionInfo.Change change = transitionInfo.getChanges().get(i); // We are interested only in display container changes @@ -332,13 +268,11 @@ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListene * change.getStartAbsBounds().height(); if (afterArea > beforeArea) { - return DefaultDisplayChange.DEFAULT_DISPLAY_UNFOLD; - } else { - return DefaultDisplayChange.DEFAULT_DISPLAY_FOLD; + return true; } } - return DefaultDisplayChange.DEFAULT_DISPLAY_NO_CHANGE; + return false; } @Nullable @@ -359,6 +293,10 @@ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListene @Override public void onFoldStateChanged(boolean isFolded) { if (isFolded) { + // Reset unfold animation finished flag on folding, so it could be used next time + // when we unfold the device as an indication that animation hasn't finished yet + mAnimationFinished = false; + // If we are currently animating unfold animation we should finish it because // the animation might not start and finish as the device was folded finishTransitionIfNeeded(); @@ -374,7 +312,6 @@ public class UnfoldTransitionHandler implements TransitionHandler, UnfoldListene animator.stop(); } - mHandler.removeCallbacks(mAnimationPlayingTimeoutRunnable); mFinishCallback.onTransitionFinished(null); mFinishCallback = null; mTransition = null; diff --git a/wmshell/src/com/android/wm/shell/unfold/animation/FullscreenUnfoldTaskAnimator.java b/wmshell/src/com/android/wm/shell/unfold/animation/FullscreenUnfoldTaskAnimator.java index 2080d9bf6c..6bba0d1386 100644 --- a/wmshell/src/com/android/wm/shell/unfold/animation/FullscreenUnfoldTaskAnimator.java +++ b/wmshell/src/com/android/wm/shell/unfold/animation/FullscreenUnfoldTaskAnimator.java @@ -231,8 +231,7 @@ public class FullscreenUnfoldTaskAnimator implements UnfoldTaskAnimator, mStartCropRect.set(mTaskInfo.getConfiguration().windowConfiguration.getBounds()); if (taskBarInsetsSource != null) { - mStartCropRect.inset(taskBarInsetsSource.calculateVisibleInsets(mStartCropRect, - mStartCropRect)); + mStartCropRect.inset(taskBarInsetsSource.calculateVisibleInsets(mStartCropRect)); } mEndCropRect.set(mStartCropRect); diff --git a/wmshell/src/com/android/wm/shell/unfold/animation/SplitTaskUnfoldAnimator.java b/wmshell/src/com/android/wm/shell/unfold/animation/SplitTaskUnfoldAnimator.java index be299ff7da..bb5d546524 100644 --- a/wmshell/src/com/android/wm/shell/unfold/animation/SplitTaskUnfoldAnimator.java +++ b/wmshell/src/com/android/wm/shell/unfold/animation/SplitTaskUnfoldAnimator.java @@ -19,8 +19,8 @@ package com.android.wm.shell.unfold.animation; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; import static android.view.Display.DEFAULT_DISPLAY; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_MAIN; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_UNDEFINED; @@ -41,7 +41,7 @@ import android.view.WindowInsets; import com.android.internal.policy.ScreenDecorationsUtils; import com.android.wm.shell.common.DisplayInsetsController; -import com.android.wm.shell.shared.split.SplitScreenConstants.SplitPosition; +import com.android.wm.shell.common.split.SplitScreenConstants.SplitPosition; import com.android.wm.shell.splitscreen.SplitScreen; import com.android.wm.shell.splitscreen.SplitScreen.SplitScreenListener; import com.android.wm.shell.splitscreen.SplitScreenController; @@ -321,7 +321,7 @@ public class SplitTaskUnfoldAnimator implements UnfoldTaskAnimator, if (taskbarExpanded) { // Only insets the cropping window with taskbar when taskbar is expanded mStartCropRect.inset(mExpandedTaskbarInsetsSource.calculateVisibleInsets( - mStartCropRect, mStartCropRect)); + mStartCropRect)); } // Offset to surface coordinates as layout bounds are in screen coordinates @@ -334,8 +334,8 @@ public class SplitTaskUnfoldAnimator implements UnfoldTaskAnimator, // Sides adjacent to split bar or task bar are not be animated. Insets margins; - final boolean isLeftRightSplit = mSplitScreenController.get().get().isLeftRightSplit(); - if (isLeftRightSplit) { + final boolean isLandscape = mRootStageBounds.width() > mRootStageBounds.height(); + if (isLandscape) { // Left and right splits. margins = getLandscapeMargins(margin, taskbarExpanded); } else { // Top and bottom splits. margins = getPortraitMargins(margin, taskbarExpanded); diff --git a/wmshell/src/com/android/wm/shell/windowdecor/CaptionWindowDecorViewModel.java b/wmshell/src/com/android/wm/shell/windowdecor/CaptionWindowDecorViewModel.java index 7f85a02d53..95e0d79c21 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/CaptionWindowDecorViewModel.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/CaptionWindowDecorViewModel.java @@ -19,34 +19,22 @@ package com.android.wm.shell.windowdecor; import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; -import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.content.pm.PackageManager.FEATURE_PC; import static android.provider.Settings.Global.DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS; import static android.view.WindowManager.TRANSIT_CHANGE; -import static android.window.DesktopExperienceFlags.ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS; -import android.annotation.NonNull; import android.app.ActivityManager.RunningTaskInfo; import android.content.ContentResolver; import android.content.Context; -import android.graphics.Point; import android.graphics.Rect; -import android.graphics.Region; -import android.hardware.input.InputManager; import android.os.Handler; -import android.os.RemoteException; -import android.os.UserHandle; import android.provider.Settings; -import android.util.Log; import android.util.SparseArray; import android.view.Choreographer; import android.view.Display; -import android.view.ISystemGestureExclusionListener; -import android.view.IWindowManager; import android.view.MotionEvent; import android.view.SurfaceControl; import android.view.View; -import android.view.ViewConfiguration; import android.window.DisplayAreaInfo; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; @@ -57,131 +45,53 @@ import com.android.wm.shell.R; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.freeform.FreeformTaskTransitionStarter; -import com.android.wm.shell.shared.FocusTransitionListener; -import com.android.wm.shell.shared.annotations.ShellBackgroundThread; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.desktopmode.DesktopConfig; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.splitscreen.SplitScreenController; -import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.transition.FocusTransitionObserver; import com.android.wm.shell.transition.Transitions; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHostSupplier; -import com.android.wm.shell.windowdecor.extension.TaskInfoKt; /** * View model for the window decoration with a caption and shadows. Works with * {@link CaptionWindowDecoration}. */ -public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusTransitionListener { - private static final String TAG = "CaptionWindowDecorViewModel"; - +public class CaptionWindowDecorViewModel implements WindowDecorViewModel { private final ShellTaskOrganizer mTaskOrganizer; - private final IWindowManager mWindowManager; private final Context mContext; private final Handler mMainHandler; - private final @ShellBackgroundThread ShellExecutor mBgExecutor; - private final ShellExecutor mMainExecutor; private final Choreographer mMainChoreographer; private final DisplayController mDisplayController; private final RootTaskDisplayAreaOrganizer mRootTaskDisplayAreaOrganizer; private final SyncTransactionQueue mSyncQueue; private final Transitions mTransitions; - private final Region mExclusionRegion = Region.obtain(); - private final InputManager mInputManager; - private final WindowDecorViewHostSupplier<WindowDecorViewHost> mWindowDecorViewHostSupplier; - private final DesktopConfig mDesktopConfig; - private final DesktopState mDesktopState; private TaskOperations mTaskOperations; - private FocusTransitionObserver mFocusTransitionObserver; - - /** - * Whether to pilfer the next motion event to send cancellations to the windows below. - * Useful when the caption window is spy and the gesture should be handled by the system - * instead of by the app for their custom header content. - */ - private boolean mShouldPilferCaptionEvents; private final SparseArray<CaptionWindowDecoration> mWindowDecorByTaskId = new SparseArray<>(); - private final ISystemGestureExclusionListener mGestureExclusionListener = - new ISystemGestureExclusionListener.Stub() { - @Override - public void onSystemGestureExclusionChanged(int displayId, - Region systemGestureExclusion, Region systemGestureExclusionUnrestricted) { - if (mContext.getDisplayId() != displayId) { - return; - } - mMainExecutor.execute(() -> { - mExclusionRegion.set(systemGestureExclusion); - onExclusionRegionChanged(displayId, mExclusionRegion); - }); - } - }; - public CaptionWindowDecorViewModel( Context context, Handler mainHandler, - @ShellMainThread ShellExecutor shellExecutor, - @ShellBackgroundThread ShellExecutor bgExecutor, Choreographer mainChoreographer, - IWindowManager windowManager, - ShellInit shellInit, ShellTaskOrganizer taskOrganizer, DisplayController displayController, RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, SyncTransactionQueue syncQueue, - Transitions transitions, - FocusTransitionObserver focusTransitionObserver, - WindowDecorViewHostSupplier<WindowDecorViewHost> windowDecorViewHostSupplier, - DesktopState desktopState, - DesktopConfig desktopConfig) { + Transitions transitions) { mContext = context; - mMainExecutor = shellExecutor; mMainHandler = mainHandler; - mBgExecutor = bgExecutor; - mWindowManager = windowManager; mMainChoreographer = mainChoreographer; mTaskOrganizer = taskOrganizer; mDisplayController = displayController; mRootTaskDisplayAreaOrganizer = rootTaskDisplayAreaOrganizer; mSyncQueue = syncQueue; mTransitions = transitions; - mFocusTransitionObserver = focusTransitionObserver; - mWindowDecorViewHostSupplier = windowDecorViewHostSupplier; - mInputManager = mContext.getSystemService(InputManager.class); - mDesktopState = desktopState; - mDesktopConfig = desktopConfig; - - shellInit.addInitCallback(this::onInit, this); - } - - private void onInit() { - try { - mWindowManager.registerSystemGestureExclusionListener(mGestureExclusionListener, - mContext.getDisplayId()); - } catch (RemoteException e) { - Log.e(TAG, "Failed to register window manager callbacks", e); - } - mFocusTransitionObserver.setLocalFocusTransitionListener(this, mMainExecutor); - } - - @Override - public void onFocusedTaskChanged(RunningTaskInfo taskInfo, boolean isFocusedOnDisplay, - boolean isFocusedGlobally) { - final WindowDecoration decor = mWindowDecorByTaskId.get(taskInfo.taskId); - if (decor != null) { - decor.relayout(decor.mTaskInfo, isFocusedGlobally, decor.mExclusionRegion); + if (!Transitions.ENABLE_SHELL_TRANSITIONS) { + mTaskOperations = new TaskOperations(null, mContext, mSyncQueue); } } @Override public void setFreeformTaskTransitionStarter(FreeformTaskTransitionStarter transitionStarter) { - mTaskOperations = new TaskOperations(transitionStarter, mContext); + mTaskOperations = new TaskOperations(transitionStarter, mContext, mSyncQueue); } @Override @@ -204,17 +114,8 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT if (decoration == null) return; - if (!shouldShowWindowDecor(taskInfo)) { - destroyWindowDecoration(taskInfo); - return; - } - - if (ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS.isTrue()) { - // Pass the current global focus status to avoid updates outside of a ShellTransition. - decoration.relayout(taskInfo, decoration.mHasGlobalFocus, decoration.mExclusionRegion); - } else { - decoration.relayout(taskInfo, taskInfo.isFocused, decoration.mExclusionRegion); - } + decoration.relayout(taskInfo); + setupCaptionColor(taskInfo, decoration); } @Override @@ -251,9 +152,7 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT createWindowDecoration(taskInfo, taskSurface, startT, finishT); } else { decoration.relayout(taskInfo, startT, finishT, false /* applyStartTransactionOnDraw */, - false /* setTaskCropAndPosition */, - mFocusTransitionObserver.hasGlobalFocus(taskInfo), mExclusionRegion, - /* inSyncWithTransition= */ true); + false /* setTaskCropAndPosition */); } } @@ -266,9 +165,7 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT if (decoration == null) return; decoration.relayout(taskInfo, startT, finishT, false /* applyStartTransactionOnDraw */, - false /* setTaskCropAndPosition */, - mFocusTransitionObserver.hasGlobalFocus(taskInfo), mExclusionRegion, - /* inSyncWithTransition= */ true); + false /* setTaskCropAndPosition */); } @Override @@ -280,26 +177,15 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT decoration.close(); } - private void onExclusionRegionChanged(int displayId, @NonNull Region exclusionRegion) { - final int decorCount = mWindowDecorByTaskId.size(); - for (int i = 0; i < decorCount; i++) { - final CaptionWindowDecoration decoration = mWindowDecorByTaskId.valueAt(i); - if (decoration.mTaskInfo.displayId != displayId) continue; - decoration.onExclusionRegionChanged(exclusionRegion); - } + private void setupCaptionColor(RunningTaskInfo taskInfo, CaptionWindowDecoration decoration) { + final int statusBarColor = taskInfo.taskDescription.getStatusBarColor(); + decoration.setCaptionColor(statusBarColor); } private boolean shouldShowWindowDecor(RunningTaskInfo taskInfo) { - if (mDisplayController.getDisplay(taskInfo.displayId) == null) { - // If DisplayController doesn't have it tracked, it could be a private/managed display. - return false; - } if (taskInfo.getWindowingMode() == WINDOWING_MODE_FREEFORM) { return true; } - if (taskInfo.getWindowingMode() == WINDOWING_MODE_PINNED) { - return false; - } if (taskInfo.getActivityType() != ACTIVITY_TYPE_STANDARD) { return false; } @@ -339,33 +225,27 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT final CaptionWindowDecoration windowDecoration = new CaptionWindowDecoration( mContext, - mContext.createContextAsUser(UserHandle.of(taskInfo.userId), 0 /* flags */), mDisplayController, mTaskOrganizer, taskInfo, taskSurface, mMainHandler, - mTransitions, - mMainExecutor, - mBgExecutor, mMainChoreographer, - mSyncQueue, - mWindowDecorViewHostSupplier, - mDesktopConfig); + mSyncQueue); mWindowDecorByTaskId.put(taskInfo.taskId, windowDecoration); final FluidResizeTaskPositioner taskPositioner = new FluidResizeTaskPositioner(mTaskOrganizer, mTransitions, windowDecoration, - mDisplayController, mDesktopState); + mDisplayController); final CaptionTouchEventListener touchEventListener = new CaptionTouchEventListener(taskInfo, taskPositioner); windowDecoration.setCaptionListeners(touchEventListener, touchEventListener); windowDecoration.setDragPositioningCallback(taskPositioner); + windowDecoration.setDragDetector(touchEventListener.mDragDetector); windowDecoration.setTaskDragResizer(taskPositioner); windowDecoration.relayout(taskInfo, startT, finishT, - false /* applyStartTransactionOnDraw */, false /* setTaskCropAndPosition */, - mFocusTransitionObserver.hasGlobalFocus(taskInfo), mExclusionRegion, - /* inSyncWithTransition= */ true); + false /* applyStartTransactionOnDraw */, false /* setTaskCropAndPosition */); + setupCaptionColor(taskInfo, windowDecoration); } private class CaptionTouchEventListener implements @@ -386,8 +266,7 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT mTaskId = taskInfo.taskId; mTaskToken = taskInfo.token; mDragPositioningCallback = dragPositioningCallback; - mDragDetector = new DragDetector(this, 0 /* holdToDragMinDurationMs */, - ViewConfiguration.get(mContext).getScaledTouchSlop()); + mDragDetector = new DragDetector(this); mDisplayId = taskInfo.displayId; } @@ -399,9 +278,7 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT } else if (id == R.id.back_button) { mTaskOperations.injectBackKey(mDisplayId); } else if (id == R.id.minimize_window) { - // This minimize button uses the same effect for any minimization. The last argument - // doesn't matter. - mTaskOperations.minimizeTask(mTaskToken, mTaskId, /* isLastTask= */ false); + mTaskOperations.minimizeTask(mTaskToken); } else if (id == R.id.maximize_window) { RunningTaskInfo taskInfo = mTaskOrganizer.getRunningTaskInfo(mTaskId); final DisplayAreaInfo rootDisplayAreaInfo = @@ -418,55 +295,12 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT } if (e.getAction() == MotionEvent.ACTION_DOWN) { final RunningTaskInfo taskInfo = mTaskOrganizer.getRunningTaskInfo(mTaskId); - if (!mFocusTransitionObserver.hasGlobalFocus(taskInfo)) { + if (!taskInfo.isFocused) { final WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.reorder(mTaskToken, true /* onTop */, true /* includingParents */); + wct.reorder(mTaskToken, true /* onTop */); mSyncQueue.queue(wct); } } - final CaptionWindowDecoration decoration = mWindowDecorByTaskId.get(mTaskId); - - final int actionMasked = e.getActionMasked(); - final boolean isDown = actionMasked == MotionEvent.ACTION_DOWN; - final boolean isUpOrCancel = actionMasked == MotionEvent.ACTION_CANCEL - || actionMasked == MotionEvent.ACTION_UP; - if (isDown) { - final boolean downInCustomizableCaptionRegion = - decoration.checkTouchEventInCustomizableRegion(e); - final boolean downInExclusionRegion = mExclusionRegion.contains( - (int) e.getRawX(), (int) e.getRawY()); - final boolean isTransparentCaption = - TaskInfoKt.isTransparentCaptionBarAppearance(decoration.mTaskInfo); - // MotionEvent's coordinates are relative to view, we want location in window - // to offset position relative to caption as a whole. - int[] viewLocation = new int[2]; - v.getLocationInWindow(viewLocation); - final boolean isResizeEvent = decoration.shouldResizeListenerHandleEvent(e, - new Point(viewLocation[0], viewLocation[1])); - // The caption window may be a spy window when the caption background is - // transparent, which means events will fall through to the app window. Make - // sure to cancel these events if they do not happen in the intersection of the - // customizable region and what the app reported as exclusion areas, because - // the drag-move or other caption gestures should take priority outside those - // regions. - mShouldPilferCaptionEvents = !(downInCustomizableCaptionRegion - && downInExclusionRegion && isTransparentCaption) && !isResizeEvent; - } - - if (!mShouldPilferCaptionEvents) { - // The event will be handled by a window below or pilfered by resize handler. - return false; - } - // Otherwise pilfer so that windows below receive cancellations for this gesture, and - // continue normal handling as a caption gesture. - if (mInputManager != null) { - // TODO(b/352127475): Only pilfer once per gesture - mInputManager.pilferPointers(v.getViewRootImpl().getInputToken()); - } - if (isUpOrCancel) { - // Gesture is finished, reset state. - mShouldPilferCaptionEvents = false; - } return mDragDetector.onMotionEvent(e); } @@ -484,7 +318,7 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT case MotionEvent.ACTION_DOWN: { mDragPointerId = e.getPointerId(0); mDragPositioningCallback.onDragPositioningStart( - 0 /* ctrlType */, e.getDisplayId(), e.getRawX(0), e.getRawY(0)); + 0 /* ctrlType */, e.getRawX(0), e.getRawY(0)); mIsDragging = false; return false; } @@ -497,7 +331,6 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT if (decoration.isHandlingDragResize()) break; final int dragPointerIdx = e.findPointerIndex(mDragPointerId); mDragPositioningCallback.onDragPositioningMove( - e.getDisplayId(), e.getRawX(dragPointerIdx), e.getRawY(dragPointerIdx)); mIsDragging = true; return true; @@ -509,7 +342,6 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT } final int dragPointerIdx = e.findPointerIndex(mDragPointerId); final Rect newTaskBounds = mDragPositioningCallback.onDragPositioningEnd( - e.getDisplayId(), e.getRawX(dragPointerIdx), e.getRawY(dragPointerIdx)); DragPositioningCallbackUtility.snapTaskBoundsIfNecessary(newTaskBounds, mWindowDecorByTaskId.get(mTaskId).calculateValidDragArea()); @@ -539,4 +371,4 @@ public class CaptionWindowDecorViewModel implements WindowDecorViewModel, FocusT return Settings.Global.getInt(resolver, DEVELOPMENT_FORCE_DESKTOP_MODE_ON_EXTERNAL_DISPLAYS, 0) != 0; } -} +} \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/windowdecor/CaptionWindowDecoration.java b/wmshell/src/com/android/wm/shell/windowdecor/CaptionWindowDecoration.java index 5f01ef9add..d0ca5b0fdc 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/CaptionWindowDecoration.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/CaptionWindowDecoration.java @@ -16,16 +16,11 @@ package com.android.wm.shell.windowdecor; -import static android.window.DesktopModeFlags.ENABLE_WINDOWING_SCALED_RESIZING; - import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.getFineResizeCornerSize; import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.getLargeResizeCornerSize; import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.getResizeEdgeHandleSize; -import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.getResizeHandleEdgeInset; import android.annotation.NonNull; -import android.annotation.SuppressLint; -import android.app.ActivityManager; import android.app.ActivityManager.RunningTaskInfo; import android.app.WindowConfiguration; import android.app.WindowConfiguration.WindowingMode; @@ -33,43 +28,22 @@ import android.content.Context; import android.content.res.ColorStateList; import android.content.res.Resources; import android.graphics.Color; -import android.graphics.Insets; -import android.graphics.Point; import android.graphics.Rect; -import android.graphics.Region; import android.graphics.drawable.GradientDrawable; +import android.graphics.drawable.VectorDrawable; import android.os.Handler; import android.util.Size; import android.view.Choreographer; -import android.view.Display; -import android.view.InsetsState; -import android.view.MotionEvent; import android.view.SurfaceControl; import android.view.View; import android.view.ViewConfiguration; -import android.view.WindowInsets; -import android.view.WindowManager; -import android.view.WindowManagerGlobal; -import android.window.DesktopExperienceFlags; -import android.window.DesktopModeFlags; import android.window.WindowContainerTransaction; -import com.android.internal.annotations.VisibleForTesting; import com.android.wm.shell.R; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayLayout; -import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.shared.annotations.ShellBackgroundThread; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.desktopmode.DesktopConfig; -import com.android.wm.shell.transition.Transitions; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHostSupplier; -import com.android.wm.shell.windowdecor.extension.TaskInfoKt; - -import java.util.function.BiFunction; /** * Defines visuals and behaviors of a window decoration of a caption bar and shadows. It works with @@ -78,16 +52,14 @@ import java.util.function.BiFunction; */ public class CaptionWindowDecoration extends WindowDecoration<WindowDecorLinearLayout> { private final Handler mHandler; - private final @ShellMainThread ShellExecutor mMainExecutor; - private final @ShellBackgroundThread ShellExecutor mBgExecutor; private final Choreographer mChoreographer; private final SyncTransactionQueue mSyncQueue; - private final DesktopConfig mDesktopConfig; private View.OnClickListener mOnCaptionButtonClickListener; private View.OnTouchListener mOnCaptionTouchListener; private DragPositioningCallback mDragPositioningCallback; private DragResizeInputListener mDragResizeListener; + private DragDetector mDragDetector; private RelayoutParams mRelayoutParams = new RelayoutParams(); private final RelayoutResult<WindowDecorLinearLayout> mResult = @@ -95,27 +67,17 @@ public class CaptionWindowDecoration extends WindowDecoration<WindowDecorLinearL CaptionWindowDecoration( Context context, - @NonNull Context userContext, DisplayController displayController, ShellTaskOrganizer taskOrganizer, RunningTaskInfo taskInfo, SurfaceControl taskSurface, Handler handler, - @NonNull Transitions transitions, - @ShellMainThread ShellExecutor mainExecutor, - @ShellBackgroundThread ShellExecutor bgExecutor, Choreographer choreographer, - SyncTransactionQueue syncQueue, - @NonNull WindowDecorViewHostSupplier<WindowDecorViewHost> windowDecorViewHostSupplier, - DesktopConfig desktopConfig) { - super(context, handler, transitions, userContext, displayController, taskOrganizer, - taskInfo, taskSurface, windowDecorViewHostSupplier); + SyncTransactionQueue syncQueue) { + super(context, displayController, taskOrganizer, taskInfo, taskSurface); mHandler = handler; - mMainExecutor = mainExecutor; - mBgExecutor = bgExecutor; mChoreographer = choreographer; mSyncQueue = syncQueue; - mDesktopConfig = desktopConfig; } void setCaptionListeners( @@ -194,111 +156,53 @@ public class CaptionWindowDecoration extends WindowDecoration<WindowDecorLinearL return stableBounds.bottom - requiredEmptySpace; } + + void setDragDetector(DragDetector dragDetector) { + mDragDetector = dragDetector; + mDragDetector.setTouchSlop(ViewConfiguration.get(mContext).getScaledTouchSlop()); + } + @Override - void relayout(RunningTaskInfo taskInfo, boolean hasGlobalFocus, - @NonNull Region displayExclusionRegion) { + void relayout(RunningTaskInfo taskInfo) { final SurfaceControl.Transaction t = new SurfaceControl.Transaction(); // The crop and position of the task should only be set when a task is fluid resizing. In // all other cases, it is expected that the transition handler positions and crops the task // in order to allow the handler time to animate before the task before the final // position and crop are set. - final boolean shouldSetTaskVisibilityPositionAndCrop = - mTaskDragResizer.isResizingOrAnimating(); + final boolean shouldSetTaskPositionAndCrop = mTaskDragResizer.isResizingOrAnimating(); // Use |applyStartTransactionOnDraw| so that the transaction (that applies task crop) is // synced with the buffer transaction (that draws the View). Both will be shown on screen // at the same, whereas applying them independently causes flickering. See b/270202228. relayout(taskInfo, t, t, true /* applyStartTransactionOnDraw */, - shouldSetTaskVisibilityPositionAndCrop, hasGlobalFocus, displayExclusionRegion, - /* inSyncWithTransition= */ false); + shouldSetTaskPositionAndCrop); } - @VisibleForTesting - static void updateRelayoutParams( - RelayoutParams relayoutParams, - @NonNull Context context, - ActivityManager.RunningTaskInfo taskInfo, - boolean applyStartTransactionOnDraw, - boolean shouldSetTaskVisibilityPositionAndCrop, - boolean isStatusBarVisible, - boolean isKeyguardVisibleAndOccluded, - InsetsState displayInsetsState, - boolean hasGlobalFocus, - @NonNull Region globalExclusionRegion, - boolean shouldSetBackground, - boolean inSyncWithTransition) { - relayoutParams.reset(); - relayoutParams.mRunningTaskInfo = taskInfo; - relayoutParams.mLayoutResId = R.layout.caption_window_decor; - relayoutParams.mCaptionHeightCalculator = getCaptionHeightCalculator(); - if (DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue()) { - relayoutParams.mShadowRadiusId = hasGlobalFocus - ? R.dimen.freeform_decor_shadow_focused_thickness - : R.dimen.freeform_decor_shadow_unfocused_thickness; - } else { - relayoutParams.mShadowRadius = hasGlobalFocus - ? context.getResources().getDimensionPixelSize( - R.dimen.freeform_decor_shadow_focused_thickness) - : context.getResources().getDimensionPixelSize( - R.dimen.freeform_decor_shadow_unfocused_thickness); - } - relayoutParams.mApplyStartTransactionOnDraw = applyStartTransactionOnDraw; - relayoutParams.mSetTaskVisibilityPositionAndCrop = shouldSetTaskVisibilityPositionAndCrop; - relayoutParams.mIsCaptionVisible = taskInfo.isFreeform() - || (isStatusBarVisible && !isKeyguardVisibleAndOccluded); - relayoutParams.mDisplayExclusionRegion.set(globalExclusionRegion); - relayoutParams.mInSyncWithTransition = inSyncWithTransition; - - if (TaskInfoKt.isTransparentCaptionBarAppearance(taskInfo)) { - // If the app is requesting to customize the caption bar, allow input to fall - // through to the windows below so that the app can respond to input events on - // their custom content. - relayoutParams.mInputFeatures |= WindowManager.LayoutParams.INPUT_FEATURE_SPY; - } - final RelayoutParams.OccludingCaptionElement backButtonElement = - new RelayoutParams.OccludingCaptionElement(); - backButtonElement.mWidthResId = R.dimen.caption_left_buttons_width; - backButtonElement.mAlignment = RelayoutParams.OccludingCaptionElement.Alignment.START; - relayoutParams.mOccludingCaptionElements.add(backButtonElement); - // Then, the right-aligned section (minimize, maximize and close buttons). - final RelayoutParams.OccludingCaptionElement controlsElement = - new RelayoutParams.OccludingCaptionElement(); - controlsElement.mWidthResId = R.dimen.caption_right_buttons_width; - controlsElement.mAlignment = RelayoutParams.OccludingCaptionElement.Alignment.END; - relayoutParams.mOccludingCaptionElements.add(controlsElement); - relayoutParams.mCaptionTopPadding = getTopPadding(relayoutParams, - taskInfo.getConfiguration().windowConfiguration.getBounds(), displayInsetsState); - // Set opaque background for all freeform tasks to prevent freeform tasks below - // from being visible if freeform task window above is translucent. - // Otherwise if fluid resize is enabled, add a background to freeform tasks. - relayoutParams.mShouldSetBackground = shouldSetBackground; - } - - @SuppressLint("MissingPermission") void relayout(RunningTaskInfo taskInfo, SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT, - boolean applyStartTransactionOnDraw, boolean shouldSetTaskVisibilityPositionAndCrop, - boolean hasGlobalFocus, - @NonNull Region globalExclusionRegion, boolean inSyncWithTransition) { + boolean applyStartTransactionOnDraw, boolean setTaskCropAndPosition) { + final int shadowRadiusID = taskInfo.isFocused + ? R.dimen.freeform_decor_shadow_focused_thickness + : R.dimen.freeform_decor_shadow_unfocused_thickness; final boolean isFreeform = taskInfo.getWindowingMode() == WindowConfiguration.WINDOWING_MODE_FREEFORM; - final boolean isDragResizeable = ENABLE_WINDOWING_SCALED_RESIZING.isTrue() - ? isFreeform : isFreeform && taskInfo.isResizeable; + final boolean isDragResizeable = isFreeform && taskInfo.isResizeable; final WindowDecorLinearLayout oldRootView = mResult.mRootView; final SurfaceControl oldDecorationSurface = mDecorationContainerSurface; final WindowContainerTransaction wct = new WindowContainerTransaction(); - updateRelayoutParams(mRelayoutParams, mContext, taskInfo, applyStartTransactionOnDraw, - shouldSetTaskVisibilityPositionAndCrop, mIsStatusBarVisible, - mIsKeyguardVisibleAndOccluded, - mDisplayController.getInsetsState(taskInfo.displayId), hasGlobalFocus, - globalExclusionRegion, mDesktopConfig.shouldSetBackground(taskInfo), - inSyncWithTransition); + mRelayoutParams.reset(); + mRelayoutParams.mRunningTaskInfo = taskInfo; + mRelayoutParams.mLayoutResId = R.layout.caption_window_decor; + mRelayoutParams.mCaptionHeightId = getCaptionHeightId(taskInfo.getWindowingMode()); + mRelayoutParams.mShadowRadiusId = shadowRadiusID; + mRelayoutParams.mApplyStartTransactionOnDraw = applyStartTransactionOnDraw; + mRelayoutParams.mSetTaskPositionAndCrop = setTaskCropAndPosition; relayout(mRelayoutParams, startT, finishT, wct, oldRootView, mResult); // After this line, mTaskInfo is up-to-date and should be used instead of taskInfo - mBgExecutor.execute(() -> mTaskOrganizer.applyTransaction(wct)); + mTaskOrganizer.applyTransaction(wct); if (mResult.mRootView == null) { // This means something blocks the window decor from showing, e.g. the task is hidden. @@ -309,8 +213,6 @@ public class CaptionWindowDecoration extends WindowDecoration<WindowDecorLinearL setupRootView(); } - bindData(mResult.mRootView, taskInfo); - if (!isDragResizeable) { closeDragResizeListener(); return; @@ -318,15 +220,8 @@ public class CaptionWindowDecoration extends WindowDecoration<WindowDecorLinearL if (oldDecorationSurface != mDecorationContainerSurface || mDragResizeListener == null) { closeDragResizeListener(); - final ShellExecutor bgExecutor = - DesktopModeFlags.ENABLE_DRAG_RESIZE_SET_UP_IN_BG_THREAD.isTrue() - ? mBgExecutor : mMainExecutor; mDragResizeListener = new DragResizeInputListener( mContext, - WindowManagerGlobal.getWindowSession(), - mMainExecutor, - bgExecutor, - mTaskInfo, mHandler, mChoreographer, mDisplay.getDisplayId(), @@ -336,19 +231,15 @@ public class CaptionWindowDecoration extends WindowDecoration<WindowDecorLinearL mSurfaceControlTransactionSupplier, mDisplayController); } - final DragResizeInputListener newListener = mDragResizeListener; + final int touchSlop = ViewConfiguration.get(mResult.mRootView.getContext()) .getScaledTouchSlop(); + mDragDetector.setTouchSlop(touchSlop); + final Resources res = mResult.mRootView.getResources(); - final DragResizeWindowGeometry newGeometry = new DragResizeWindowGeometry( - 0 /* taskCornerRadius */, - new Size(mResult.mWidth, mResult.mHeight), - getResizeEdgeHandleSize(res), - getResizeHandleEdgeInset(res), getFineResizeCornerSize(res), - getLargeResizeCornerSize(res), DragResizeWindowGeometry.DisabledEdge.NONE); - newListener.addInitializedCallback(() -> { - mDragResizeListener.setGeometry(newGeometry, touchSlop); - }); + mDragResizeListener.setGeometry(new DragResizeWindowGeometry(0 /* taskCornerRadius */, + new Size(mResult.mWidth, mResult.mHeight), getResizeEdgeHandleSize(res), + getFineResizeCornerSize(res), getLargeResizeCornerSize(res)), touchSlop); } /** @@ -367,27 +258,7 @@ public class CaptionWindowDecoration extends WindowDecoration<WindowDecorLinearL maximize.setOnClickListener(mOnCaptionButtonClickListener); } - private void bindData(View rootView, RunningTaskInfo taskInfo) { - // Set up the tint first so that the drawable can be stylized when loaded. - setupCaptionColor(taskInfo); - - final boolean isFullscreen = - taskInfo.getWindowingMode() == WindowConfiguration.WINDOWING_MODE_FULLSCREEN; - rootView.findViewById(R.id.maximize_window) - .setBackgroundResource(isFullscreen ? R.drawable.decor_restore_button_dark - : R.drawable.decor_maximize_button_dark); - } - - private void setupCaptionColor(RunningTaskInfo taskInfo) { - if (TaskInfoKt.isTransparentCaptionBarAppearance(taskInfo)) { - setCaptionColor(Color.TRANSPARENT); - } else { - final int statusBarColor = taskInfo.taskDescription.getStatusBarColor(); - setCaptionColor(statusBarColor); - } - } - - private void setCaptionColor(int captionColor) { + void setCaptionColor(int captionColor) { if (mResult.mRootView == null) { return; } @@ -404,16 +275,20 @@ public class CaptionWindowDecoration extends WindowDecoration<WindowDecorLinearL caption.getResources().getColorStateList(buttonTintColorRes, null /* theme */); final View back = caption.findViewById(R.id.back_button); - back.setBackgroundTintList(buttonTintColor); + final VectorDrawable backBackground = (VectorDrawable) back.getBackground(); + backBackground.setTintList(buttonTintColor); final View minimize = caption.findViewById(R.id.minimize_window); - minimize.setBackgroundTintList(buttonTintColor); + final VectorDrawable minimizeBackground = (VectorDrawable) minimize.getBackground(); + minimizeBackground.setTintList(buttonTintColor); final View maximize = caption.findViewById(R.id.maximize_window); - maximize.setBackgroundTintList(buttonTintColor); + final VectorDrawable maximizeBackground = (VectorDrawable) maximize.getBackground(); + maximizeBackground.setTintList(buttonTintColor); final View close = caption.findViewById(R.id.close_window); - close.setBackgroundTintList(buttonTintColor); + final VectorDrawable closeBackground = (VectorDrawable) close.getBackground(); + closeBackground.setTintList(buttonTintColor); } boolean isHandlingDragResize() { @@ -428,29 +303,6 @@ public class CaptionWindowDecoration extends WindowDecoration<WindowDecorLinearL mDragResizeListener = null; } - private static int getTopPadding(RelayoutParams params, Rect taskBounds, - InsetsState insetsState) { - if (!params.mRunningTaskInfo.isFreeform()) { - Insets systemDecor = insetsState.calculateInsets(taskBounds, taskBounds, - WindowInsets.Type.systemBars() & ~WindowInsets.Type.captionBar(), - false /* ignoreVisibility */); - return systemDecor.top; - } else { - return 0; - } - } - - /** - * Checks whether the touch event falls inside the customizable caption region. - */ - boolean checkTouchEventInCustomizableRegion(MotionEvent ev) { - return mResult.mCustomizableCaptionRegion.contains((int) ev.getRawX(), (int) ev.getRawY()); - } - - boolean shouldResizeListenerHandleEvent(@NonNull MotionEvent e, @NonNull Point offset) { - return mDragResizeListener != null && mDragResizeListener.shouldHandleEvent(e, offset); - } - @Override public void close() { closeDragResizeListener(); @@ -458,13 +310,8 @@ public class CaptionWindowDecoration extends WindowDecoration<WindowDecorLinearL } @Override - int getCaptionHeight(@WindowingMode int windowingMode) { - return getCaptionHeightCalculator().apply(mContext, mDisplay); - } - - private static BiFunction<Context, Display, Integer> getCaptionHeightCalculator() { - return (ctx, display) -> loadDimensionPixelSize(ctx.getResources(), - R.dimen.freeform_decor_caption_height); + int getCaptionHeightId(@WindowingMode int windowingMode) { + return R.dimen.freeform_decor_caption_height; } @Override diff --git a/wmshell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModel.java b/wmshell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModel.java index 87b35abc4b..e9cdf88ee3 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModel.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModel.java @@ -17,164 +17,94 @@ package com.android.wm.shell.windowdecor; import static android.app.ActivityTaskManager.INVALID_TASK_ID; +import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; +import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.view.InputDevice.SOURCE_TOUCHSCREEN; import static android.view.MotionEvent.ACTION_CANCEL; import static android.view.MotionEvent.ACTION_HOVER_ENTER; import static android.view.MotionEvent.ACTION_HOVER_EXIT; +import static android.view.MotionEvent.ACTION_HOVER_MOVE; import static android.view.MotionEvent.ACTION_MOVE; import static android.view.MotionEvent.ACTION_UP; import static android.view.WindowInsets.Type.statusBars; -import static android.window.DesktopExperienceFlags.ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS; -import static com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_ENTER_MODE_APP_HANDLE_MENU; -import static com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.InputMethod; -import static com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.MinimizeReason; -import static com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.ResizeTrigger; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.compatui.AppCompatUtils.isSingleTopActivityTranslucent; import static com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR; -import static com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR; -import static com.android.wm.shell.desktopmode.DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE; -import static com.android.wm.shell.shared.multiinstance.ManageWindowsViewContainer.MANAGE_WINDOWS_MINIMUM_INSTANCES; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_UNDEFINED; import android.annotation.NonNull; import android.app.ActivityManager; import android.app.ActivityManager.RunningTaskInfo; -import android.app.ActivityOptions; import android.app.ActivityTaskManager; -import android.app.IActivityManager; -import android.app.IActivityTaskManager; import android.content.Context; -import android.content.Intent; import android.graphics.Point; import android.graphics.PointF; import android.graphics.Rect; import android.graphics.Region; import android.hardware.input.InputManager; import android.os.Handler; -import android.os.IBinder; import android.os.Looper; import android.os.RemoteException; -import android.os.UserHandle; +import android.util.Log; import android.util.SparseArray; import android.view.Choreographer; import android.view.GestureDetector; +import android.view.ISystemGestureExclusionListener; import android.view.IWindowManager; import android.view.InputChannel; import android.view.InputEvent; import android.view.InputEventReceiver; import android.view.InputMonitor; +import android.view.InsetsSource; import android.view.InsetsState; import android.view.MotionEvent; -import android.view.PointerIcon; import android.view.SurfaceControl; import android.view.SurfaceControl.Transaction; import android.view.View; -import android.view.ViewConfiguration; -import android.view.ViewRootImpl; -import android.window.DesktopExperienceFlags; -import android.window.DesktopModeFlags; -import android.window.TaskSnapshot; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import androidx.annotation.Nullable; -import androidx.annotation.OptIn; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.jank.Cuj; -import com.android.internal.jank.InteractionJankMonitor; -import com.android.internal.protolog.ProtoLog; -import com.android.internal.util.LatencyTracker; -import com.android.window.flags2.Flags; +import com.android.internal.protolog.common.ProtoLog; +import com.android.window.flags.Flags; import com.android.wm.shell.R; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.apptoweb.AppToWebGenericLinksParser; -import com.android.wm.shell.apptoweb.AssistContentRequester; -import com.android.wm.shell.common.ComponentUtils; -import com.android.wm.shell.common.DisplayChangeController; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.DisplayLayout; -import com.android.wm.shell.common.MultiDisplayDragMoveIndicatorController; -import com.android.wm.shell.common.MultiInstanceHelper; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.compatui.CompatUIController; -import com.android.wm.shell.compatui.api.CompatUIHandler; -import com.android.wm.shell.compatui.impl.CompatUIRequests; -import com.android.wm.shell.desktopmode.DesktopActivityOrientationChangeHandler; -import com.android.wm.shell.desktopmode.DesktopImmersiveController; -import com.android.wm.shell.desktopmode.DesktopModeEventLogger; -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger; -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum; -import com.android.wm.shell.desktopmode.DesktopModeUtils; +import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource; +import com.android.wm.shell.common.split.SplitScreenConstants.SplitPosition; import com.android.wm.shell.desktopmode.DesktopModeVisualIndicator; -import com.android.wm.shell.desktopmode.DesktopRepository; import com.android.wm.shell.desktopmode.DesktopTasksController; import com.android.wm.shell.desktopmode.DesktopTasksController.SnapPosition; -import com.android.wm.shell.desktopmode.DesktopTasksLimiter; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.desktopmode.WindowDecorCaptionRepository; -import com.android.wm.shell.desktopmode.common.ToggleTaskSizeInteraction; -import com.android.wm.shell.desktopmode.common.ToggleTaskSizeUtilsKt; -import com.android.wm.shell.desktopmode.education.AppHandleEducationController; -import com.android.wm.shell.desktopmode.education.AppToWebEducationController; -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer; +import com.android.wm.shell.desktopmode.DesktopWallpaperActivity; import com.android.wm.shell.freeform.FreeformTaskTransitionStarter; -import com.android.wm.shell.recents.RecentsTransitionHandler; -import com.android.wm.shell.recents.RecentsTransitionStateListener; -import com.android.wm.shell.shared.FocusTransitionListener; -import com.android.wm.shell.shared.annotations.ShellBackgroundThread; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.shared.desktopmode.DesktopConfig; -import com.android.wm.shell.shared.desktopmode.DesktopModeCompatPolicy; -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource; -import com.android.wm.shell.shared.desktopmode.DesktopState; -import com.android.wm.shell.shared.split.SplitScreenConstants.SplitPosition; +import com.android.wm.shell.shared.DesktopModeStatus; +import com.android.wm.shell.splitscreen.SplitScreen; +import com.android.wm.shell.splitscreen.SplitScreen.StageType; import com.android.wm.shell.splitscreen.SplitScreenController; import com.android.wm.shell.sysui.KeyguardChangeListener; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.transition.FocusTransitionObserver; import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.windowdecor.DesktopModeWindowDecoration.ExclusionRegionListener; -import com.android.wm.shell.windowdecor.common.AppHandleAndHeaderVisibilityHelper; -import com.android.wm.shell.windowdecor.common.WindowDecorTaskResourceLoader; -import com.android.wm.shell.windowdecor.common.WindowDecorationGestureExclusionTracker; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHostSupplier; -import com.android.wm.shell.windowdecor.extension.InsetsStateKt; import com.android.wm.shell.windowdecor.extension.TaskInfoKt; -import com.android.wm.shell.windowdecor.tiling.DesktopTilingDecorViewModel; -import com.android.wm.shell.windowdecor.tiling.SnapEventHandler; -import com.android.wm.shell.windowdecor.viewholder.AppHandleViewHolder; -import com.android.wm.shell.windowdecor.viewholder.AppHeaderViewHolder; - -import kotlin.Pair; -import kotlin.Unit; -import kotlin.jvm.functions.Function1; - -import kotlinx.coroutines.CoroutineScope; -import kotlinx.coroutines.ExperimentalCoroutinesApi; -import kotlinx.coroutines.MainCoroutineDispatcher; - -import org.jetbrains.annotations.NotNull; import java.io.PrintWriter; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; +import java.util.Objects; import java.util.Optional; -import java.util.Set; import java.util.function.Supplier; /** @@ -182,8 +112,7 @@ import java.util.function.Supplier; * {@link DesktopModeWindowDecoration}. */ -public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, - FocusTransitionListener, SnapEventHandler { +public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel { private static final String TAG = "DesktopModeWindowDecorViewModel"; private final DesktopModeWindowDecoration.Factory mDesktopModeWindowDecorFactory; @@ -192,31 +121,14 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, private final ActivityTaskManager mActivityTaskManager; private final ShellCommandHandler mShellCommandHandler; private final ShellTaskOrganizer mTaskOrganizer; - private final DesktopUserRepositories mDesktopUserRepositories; private final ShellController mShellController; private final Context mContext; - private final @ShellMainThread Handler mMainHandler; - private final @ShellMainThread MainCoroutineDispatcher mMainDispatcher; - private final @ShellBackgroundThread CoroutineScope mBgScope; - private final @ShellBackgroundThread ShellExecutor mBgExecutor; + private final Handler mMainHandler; private final Choreographer mMainChoreographer; private final DisplayController mDisplayController; private final SyncTransactionQueue mSyncQueue; private final DesktopTasksController mDesktopTasksController; - private final DesktopImmersiveController mDesktopImmersiveController; private final InputManager mInputManager; - private final InteractionJankMonitor mInteractionJankMonitor; - private final MultiInstanceHelper mMultiInstanceHelper; - private final WindowDecorCaptionRepository mWindowDecorCaptionRepository; - private final Optional<DesktopTasksLimiter> mDesktopTasksLimiter; - private final AppHandleEducationController mAppHandleEducationController; - private final AppToWebEducationController mAppToWebEducationController; - private final AppHandleAndHeaderVisibilityHelper mAppHandleAndHeaderVisibilityHelper; - private final AppHeaderViewHolder.Factory mAppHeaderViewHolderFactory; - private final AppHandleViewHolder.Factory mAppHandleViewHolderFactory; - private final DesksOrganizer mDesksOrganizer; - private final DesktopState mDesktopState; - private final DesktopConfig mDesktopConfig; private boolean mTransitionDragActive; private SparseArray<EventReceiver> mEventReceiversByDisplay = new SparseArray<>(); @@ -225,12 +137,11 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, new ExclusionRegionListenerImpl(); private final SparseArray<DesktopModeWindowDecoration> mWindowDecorByTaskId; + private final DragStartListenerImpl mDragStartListener = new DragStartListenerImpl(); private final InputMonitorFactory mInputMonitorFactory; private TaskOperations mTaskOperations; private final Supplier<SurfaceControl.Transaction> mTransactionFactory; private final Transitions mTransitions; - private final Optional<DesktopActivityOrientationChangeHandler> - mActivityOrientationChangeHandler; private SplitScreenController mSplitScreenController; @@ -239,324 +150,145 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, private final DesktopModeKeyguardChangeListener mDesktopModeKeyguardChangeListener = new DesktopModeKeyguardChangeListener(); private final RootTaskDisplayAreaOrganizer mRootTaskDisplayAreaOrganizer; - private final AppToWebGenericLinksParser mGenericLinksParser; private final DisplayInsetsController mDisplayInsetsController; - - private final WindowDecorationGestureExclusionTracker mGestureExclusionTracker; + private final Region mExclusionRegion = Region.obtain(); private boolean mInImmersiveMode; private final String mSysUIPackageName; - private final AssistContentRequester mAssistContentRequester; - private final WindowDecorViewHostSupplier<WindowDecorViewHost> mWindowDecorViewHostSupplier; - private final DisplayChangeController.OnDisplayChangingListener mOnDisplayChangingListener; - private final WindowDecorationActions mWindowDecorationActions; - private final TaskPositionerFactory mTaskPositionerFactory; - private final FocusTransitionObserver mFocusTransitionObserver; - private final DesktopModeEventLogger mDesktopModeEventLogger; - private final DesktopModeUiEventLogger mDesktopModeUiEventLogger; - private final WindowDecorTaskResourceLoader mTaskResourceLoader; - private final RecentsTransitionHandler mRecentsTransitionHandler; - private final DesktopModeCompatPolicy mDesktopModeCompatPolicy; - private final DesktopTilingDecorViewModel mDesktopTilingDecorViewModel; - private final MultiDisplayDragMoveIndicatorController mMultiDisplayDragMoveIndicatorController; - private final LatencyTracker mLatencyTracker; - private final CompatUIHandler mCompatUI; + private final ISystemGestureExclusionListener mGestureExclusionListener = + new ISystemGestureExclusionListener.Stub() { + @Override + public void onSystemGestureExclusionChanged(int displayId, + Region systemGestureExclusion, Region systemGestureExclusionUnrestricted) { + if (mContext.getDisplayId() != displayId) { + return; + } + mMainExecutor.execute(() -> { + mExclusionRegion.set(systemGestureExclusion); + }); + } + }; public DesktopModeWindowDecorViewModel( Context context, ShellExecutor shellExecutor, - @ShellMainThread Handler mainHandler, + Handler mainHandler, Choreographer mainChoreographer, - @ShellMainThread MainCoroutineDispatcher mainDispatcher, - @ShellBackgroundThread CoroutineScope bgScope, - @ShellBackgroundThread ShellExecutor bgExecutor, ShellInit shellInit, ShellCommandHandler shellCommandHandler, IWindowManager windowManager, ShellTaskOrganizer taskOrganizer, - DesktopUserRepositories desktopUserRepositories, DisplayController displayController, ShellController shellController, DisplayInsetsController displayInsetsController, SyncTransactionQueue syncQueue, Transitions transitions, Optional<DesktopTasksController> desktopTasksController, - DesktopImmersiveController desktopImmersiveController, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - InteractionJankMonitor interactionJankMonitor, - AppToWebGenericLinksParser genericLinksParser, - AssistContentRequester assistContentRequester, - @NonNull WindowDecorViewHostSupplier<WindowDecorViewHost> windowDecorViewHostSupplier, - MultiInstanceHelper multiInstanceHelper, - Optional<DesktopTasksLimiter> desktopTasksLimiter, - AppHandleEducationController appHandleEducationController, - AppToWebEducationController appToWebEducationController, - AppHandleAndHeaderVisibilityHelper appHandleAndHeaderVisibilityHelper, - WindowDecorCaptionRepository windowDecorCaptionRepository, - Optional<DesktopActivityOrientationChangeHandler> activityOrientationChangeHandler, - FocusTransitionObserver focusTransitionObserver, - DesktopModeEventLogger desktopModeEventLogger, - DesktopModeUiEventLogger desktopModeUiEventLogger, - WindowDecorTaskResourceLoader taskResourceLoader, - RecentsTransitionHandler recentsTransitionHandler, - DesktopModeCompatPolicy desktopModeCompatPolicy, - DesktopTilingDecorViewModel desktopTilingDecorViewModel, - MultiDisplayDragMoveIndicatorController multiDisplayDragMoveIndicatorController, - CompatUIHandler compatUI, - DesksOrganizer desksOrganizer, - DesktopState desktopState, - DesktopConfig desktopConfig) { + RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer + ) { this( context, shellExecutor, mainHandler, mainChoreographer, - mainDispatcher, - bgScope, - bgExecutor, shellInit, shellCommandHandler, windowManager, taskOrganizer, - desktopUserRepositories, displayController, shellController, displayInsetsController, syncQueue, transitions, desktopTasksController, - desktopImmersiveController, - genericLinksParser, - assistContentRequester, - windowDecorViewHostSupplier, - multiInstanceHelper, new DesktopModeWindowDecoration.Factory(), new InputMonitorFactory(), SurfaceControl.Transaction::new, - new AppHeaderViewHolder.Factory(), - new AppHandleViewHolder.Factory(), rootTaskDisplayAreaOrganizer, - new SparseArray<>(), - interactionJankMonitor, - desktopTasksLimiter, - appHandleEducationController, - appToWebEducationController, - appHandleAndHeaderVisibilityHelper, - windowDecorCaptionRepository, - activityOrientationChangeHandler, - new TaskPositionerFactory(), - focusTransitionObserver, - desktopModeEventLogger, - desktopModeUiEventLogger, - taskResourceLoader, - recentsTransitionHandler, - desktopModeCompatPolicy, - desktopTilingDecorViewModel, - multiDisplayDragMoveIndicatorController, - compatUI, - desksOrganizer, - desktopState, - desktopConfig); + new SparseArray<>()); } @VisibleForTesting DesktopModeWindowDecorViewModel( Context context, ShellExecutor shellExecutor, - @ShellMainThread Handler mainHandler, + Handler mainHandler, Choreographer mainChoreographer, - @ShellMainThread MainCoroutineDispatcher mainDispatcher, - @ShellBackgroundThread CoroutineScope bgScope, - @ShellBackgroundThread ShellExecutor bgExecutor, ShellInit shellInit, ShellCommandHandler shellCommandHandler, IWindowManager windowManager, ShellTaskOrganizer taskOrganizer, - DesktopUserRepositories desktopUserRepositories, DisplayController displayController, ShellController shellController, DisplayInsetsController displayInsetsController, SyncTransactionQueue syncQueue, Transitions transitions, Optional<DesktopTasksController> desktopTasksController, - DesktopImmersiveController desktopImmersiveController, - AppToWebGenericLinksParser genericLinksParser, - AssistContentRequester assistContentRequester, - @NonNull WindowDecorViewHostSupplier<WindowDecorViewHost> windowDecorViewHostSupplier, - MultiInstanceHelper multiInstanceHelper, DesktopModeWindowDecoration.Factory desktopModeWindowDecorFactory, InputMonitorFactory inputMonitorFactory, Supplier<SurfaceControl.Transaction> transactionFactory, - AppHeaderViewHolder.Factory appHeaderViewHolderFactory, - AppHandleViewHolder.Factory appHandleViewHolderFactory, RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - SparseArray<DesktopModeWindowDecoration> windowDecorByTaskId, - InteractionJankMonitor interactionJankMonitor, - Optional<DesktopTasksLimiter> desktopTasksLimiter, - AppHandleEducationController appHandleEducationController, - AppToWebEducationController appToWebEducationController, - AppHandleAndHeaderVisibilityHelper appHandleAndHeaderVisibilityHelper, - WindowDecorCaptionRepository windowDecorCaptionRepository, - Optional<DesktopActivityOrientationChangeHandler> activityOrientationChangeHandler, - TaskPositionerFactory taskPositionerFactory, - FocusTransitionObserver focusTransitionObserver, - DesktopModeEventLogger desktopModeEventLogger, - DesktopModeUiEventLogger desktopModeUiEventLogger, - WindowDecorTaskResourceLoader taskResourceLoader, - RecentsTransitionHandler recentsTransitionHandler, - DesktopModeCompatPolicy desktopModeCompatPolicy, - DesktopTilingDecorViewModel desktopTilingDecorViewModel, - MultiDisplayDragMoveIndicatorController multiDisplayDragMoveIndicatorController, - CompatUIHandler compatUI, - DesksOrganizer desksOrganizer, - DesktopState desktopState, - DesktopConfig desktopConfig) { + SparseArray<DesktopModeWindowDecoration> windowDecorByTaskId) { mContext = context; mMainExecutor = shellExecutor; mMainHandler = mainHandler; mMainChoreographer = mainChoreographer; - mMainDispatcher = mainDispatcher; - mBgScope = bgScope; - mBgExecutor = bgExecutor; mActivityTaskManager = mContext.getSystemService(ActivityTaskManager.class); mTaskOrganizer = taskOrganizer; - mDesktopUserRepositories = desktopUserRepositories; mShellController = shellController; mDisplayController = displayController; mDisplayInsetsController = displayInsetsController; mSyncQueue = syncQueue; mTransitions = transitions; mDesktopTasksController = desktopTasksController.get(); - mDesktopImmersiveController = desktopImmersiveController; - mMultiInstanceHelper = multiInstanceHelper; mShellCommandHandler = shellCommandHandler; mWindowManager = windowManager; mDesktopModeWindowDecorFactory = desktopModeWindowDecorFactory; mInputMonitorFactory = inputMonitorFactory; mTransactionFactory = transactionFactory; - mAppHeaderViewHolderFactory = appHeaderViewHolderFactory; - mAppHandleViewHolderFactory = appHandleViewHolderFactory; mRootTaskDisplayAreaOrganizer = rootTaskDisplayAreaOrganizer; - mGenericLinksParser = genericLinksParser; mInputManager = mContext.getSystemService(InputManager.class); mWindowDecorByTaskId = windowDecorByTaskId; mSysUIPackageName = mContext.getResources().getString( com.android.internal.R.string.config_systemUi); - mInteractionJankMonitor = interactionJankMonitor; - mDesktopTasksLimiter = desktopTasksLimiter; - mAppHandleEducationController = appHandleEducationController; - mAppToWebEducationController = appToWebEducationController; - mAppHandleAndHeaderVisibilityHelper = appHandleAndHeaderVisibilityHelper; - mWindowDecorCaptionRepository = windowDecorCaptionRepository; - mActivityOrientationChangeHandler = activityOrientationChangeHandler; - mAssistContentRequester = assistContentRequester; - mWindowDecorViewHostSupplier = windowDecorViewHostSupplier; - mCompatUI = compatUI; - mOnDisplayChangingListener = (displayId, fromRotation, toRotation, displayAreaInfo, t) -> { - DesktopModeWindowDecoration decoration; - RunningTaskInfo taskInfo; - for (int i = 0; i < mWindowDecorByTaskId.size(); i++) { - decoration = mWindowDecorByTaskId.valueAt(i); - if (decoration == null) { - continue; - } else { - taskInfo = decoration.mTaskInfo; - } - // Check if display has been rotated between portrait & landscape - if (displayId == taskInfo.displayId && taskInfo.isFreeform() - && (fromRotation % 2 != toRotation % 2)) { - // Check if the task bounds on the rotated display will be out of bounds. - // If so, then update task bounds to be within reachable area. - final Rect taskBounds = new Rect( - taskInfo.configuration.windowConfiguration.getBounds()); - if (DragPositioningCallbackUtility.snapTaskBoundsIfNecessary( - taskBounds, decoration.calculateValidDragArea())) { - t.setBounds(taskInfo.token, taskBounds); - } - } - } - }; - mTaskPositionerFactory = taskPositionerFactory; - mFocusTransitionObserver = focusTransitionObserver; - mDesktopModeEventLogger = desktopModeEventLogger; - mDesktopModeUiEventLogger = desktopModeUiEventLogger; - mTaskResourceLoader = taskResourceLoader; - mRecentsTransitionHandler = recentsTransitionHandler; - mDesktopModeCompatPolicy = desktopModeCompatPolicy; - mDesktopTilingDecorViewModel = desktopTilingDecorViewModel; - mDesktopTasksController.setSnapEventHandler(this); - mMultiDisplayDragMoveIndicatorController = multiDisplayDragMoveIndicatorController; - mLatencyTracker = LatencyTracker.getInstance(mContext); - mDesksOrganizer = desksOrganizer; - mDesktopState = desktopState; - mDesktopConfig = desktopConfig; - mWindowDecorationActions = - new DefaultWindowDecorationActions(this, mDesktopTasksController, - mContext, mDesktopModeUiEventLogger, mCompatUI); - mGestureExclusionTracker = - new WindowDecorationGestureExclusionTracker(mContext, mWindowManager, - mDisplayController, mMainExecutor, shellInit, (displayId, region) -> { - onExclusionRegionChanged(displayId, region); - return Unit.INSTANCE; - }); shellInit.addInitCallback(this::onInit, this); } - @OptIn(markerClass = ExperimentalCoroutinesApi.class) private void onInit() { mShellController.addKeyguardChangeListener(mDesktopModeKeyguardChangeListener); mShellCommandHandler.addDumpCallback(this::dump, this); - mDisplayInsetsController.addGlobalInsetsChangedListener( + mDisplayInsetsController.addInsetsChangedListener(mContext.getDisplayId(), new DesktopModeOnInsetsChangedListener()); mDesktopTasksController.setOnTaskResizeAnimationListener( - new DesktopModeOnTaskResizeAnimationListener()); - mDesktopTasksController.setOnTaskRepositionAnimationListener( - new DesktopModeOnTaskRepositionAnimationListener()); - if (DesktopModeFlags.ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX.isTrue() - || DesktopModeFlags.ENABLE_INPUT_LAYER_TRANSITION_FIX.isTrue()) { - mRecentsTransitionHandler.addTransitionStateListener( - new DesktopModeRecentsTransitionStateListener()); - } - mDisplayController.addDisplayChangingController(mOnDisplayChangingListener); - if (mDesktopState.canEnterDesktopModeOrShowAppHandle() - && Flags.enableDesktopWindowingAppHandleEducation()) { - mAppHandleEducationController.setAppHandleEducationTooltipCallbacks( - /* appHandleTooltipClickCallback= */(taskId) -> { - openHandleMenu(taskId); - return Unit.INSTANCE; - }, - /* onToDesktopClickCallback= */(taskId, desktopModeTransitionSource) -> { - moveToDesktop(taskId, desktopModeTransitionSource); - return Unit.INSTANCE; - }); - } - mFocusTransitionObserver.setLocalFocusTransitionListener(this, mMainExecutor); - mDesksOrganizer.setOnDesktopTaskInfoChangedListener((taskInfo) -> { - onTaskInfoChanged(taskInfo); - return Unit.INSTANCE; - }); - } - - @Override - public void onFocusedTaskChanged(RunningTaskInfo taskInfo, boolean isFocusedOnDisplay, - boolean isFocusedGlobally) { - final WindowDecoration decor = mWindowDecorByTaskId.get(taskInfo.taskId); - if (decor != null) { - decor.relayout(decor.mTaskInfo, isFocusedGlobally, decor.mExclusionRegion); + new DeskopModeOnTaskResizeAnimationListener()); + try { + mWindowManager.registerSystemGestureExclusionListener(mGestureExclusionListener, + mContext.getDisplayId()); + } catch (RemoteException e) { + Log.e(TAG, "Failed to register window manager callbacks", e); } } @Override public void setFreeformTaskTransitionStarter(FreeformTaskTransitionStarter transitionStarter) { - mTaskOperations = new TaskOperations(transitionStarter, mContext); - mDesktopTasksController.setFreeformTaskTransitionStarter(transitionStarter); + mTaskOperations = new TaskOperations(transitionStarter, mContext, mSyncQueue); } @Override public void setSplitScreenController(SplitScreenController splitScreenController) { mSplitScreenController = splitScreenController; - mAppHandleAndHeaderVisibilityHelper.setSplitScreenController(splitScreenController); + mSplitScreenController.registerSplitScreenListener(new SplitScreen.SplitScreenListener() { + @Override + public void onTaskStageChanged(int taskId, @StageType int stage, boolean visible) { + if (visible && stage != STAGE_TYPE_UNDEFINED) { + DesktopModeWindowDecoration decor = mWindowDecorByTaskId.get(taskId); + if (decor != null && DesktopModeStatus.canEnterDesktopMode(mContext)) { + mDesktopTasksController.moveToSplit(decor.mTaskInfo); + } + } + } + }); } @Override @@ -576,20 +308,11 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, if (decoration == null) return; final RunningTaskInfo oldTaskInfo = decoration.mTaskInfo; - if (taskInfo.displayId != oldTaskInfo.displayId - && !DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) { + if (taskInfo.displayId != oldTaskInfo.displayId) { removeTaskFromEventReceiver(oldTaskInfo.displayId); incrementEventReceiverTasks(taskInfo.displayId); } - if (ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS.isTrue()) { - // Pass the current global focus status to avoid updates outside of a ShellTransition. - decoration.relayout(taskInfo, decoration.mHasGlobalFocus, decoration.mExclusionRegion); - } else { - decoration.relayout(taskInfo, taskInfo.isFocused, decoration.mExclusionRegion); - } - mDesktopTilingDecorViewModel.onTaskInfoChange(taskInfo); - mActivityOrientationChangeHandler.ifPresent(handler -> - handler.handleActivityOrientationChange(oldTaskInfo, taskInfo)); + decoration.relayout(taskInfo); } @Override @@ -624,41 +347,9 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, if (decoration == null) { createWindowDecoration(taskInfo, taskSurface, startT, finishT); - initializeTiling(taskInfo); } else { decoration.relayout(taskInfo, startT, finishT, false /* applyStartTransactionOnDraw */, - false /* shouldSetTaskPositionAndCrop */, - mFocusTransitionObserver.hasGlobalFocus(taskInfo), - mGestureExclusionTracker.getExclusionRegion(taskInfo.displayId), - /* inSyncWithTransition= */ true); - } - } - - private void initializeTiling(RunningTaskInfo taskInfo) { - DesktopRepository taskRepository = mDesktopUserRepositories.getCurrent(); - Integer deskId = taskRepository.getActiveDeskId(taskInfo.displayId); - if (deskId == null) { - return; - } - Integer leftTiledTaskId = taskRepository.getLeftTiledTask(deskId); - Integer rightTiledTaskId = taskRepository.getRightTiledTask(deskId); - boolean tilingAndPersistenceEnabled = DesktopExperienceFlags.ENABLE_TILE_RESIZING.isTrue() - && DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_PERSISTENCE.isTrue(); - if (leftTiledTaskId != null && leftTiledTaskId == taskInfo.taskId - && tilingAndPersistenceEnabled) { - snapPersistedTaskToHalfScreen( - taskInfo, - taskInfo.configuration.windowConfiguration.getBounds(), - SnapPosition.LEFT - ); - } - if (rightTiledTaskId != null && rightTiledTaskId == taskInfo.taskId - && tilingAndPersistenceEnabled) { - snapPersistedTaskToHalfScreen( - taskInfo, - taskInfo.configuration.windowConfiguration.getBounds(), - SnapPosition.RIGHT - ); + false /* shouldSetTaskPositionAndCrop */); } } @@ -671,10 +362,7 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, if (decoration == null) return; decoration.relayout(taskInfo, startT, finishT, false /* applyStartTransactionOnDraw */, - false /* shouldSetTaskPositionAndCrop */, - mFocusTransitionObserver.hasGlobalFocus(taskInfo), - mGestureExclusionTracker.getExclusionRegion(taskInfo.displayId), - /* inSyncWithTransition= */ true); + false /* shouldSetTaskPositionAndCrop */); } @Override @@ -684,8 +372,7 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, decoration.close(); final int displayId = taskInfo.displayId; - if (mEventReceiversByDisplay.contains(displayId) - && !DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) { + if (mEventReceiversByDisplay.contains(displayId)) { removeTaskFromEventReceiver(displayId); } // Remove the decoration from the cache last because WindowDecoration#close could still @@ -694,379 +381,29 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, mWindowDecorByTaskId.remove(taskInfo.taskId); } - private void onExclusionRegionChanged(int displayId, @NonNull Region exclusionRegion) { - final int decorCount = mWindowDecorByTaskId.size(); - for (int i = 0; i < decorCount; i++) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.valueAt(i); - if (decoration.mTaskInfo.displayId != displayId) continue; - decoration.onExclusionRegionChanged(exclusionRegion); - } - } - - private void openHandleMenu(int taskId) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - // TODO(b/379873022): Run the instance check and the AssistContent request in - // createHandleMenu on the same bg thread dispatch. - mBgExecutor.execute(() -> { - final int numOfInstances = checkNumberOfOtherInstances(decoration.mTaskInfo); - mMainExecutor.execute(() -> { - decoration.createHandleMenu( - numOfInstances >= MANAGE_WINDOWS_MINIMUM_INSTANCES - ); - }); - }); - } - - private void onToggleSizeInteraction( - int taskId, @NonNull ToggleTaskSizeInteraction.AmbiguousSource source, - @Nullable InputMethod inputMethod) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration == null) { - return; - } - final ToggleTaskSizeInteraction interaction = - createToggleSizeInteraction(decoration, source, inputMethod); - if (interaction == null) { - return; - } - if (interaction.getCujTracing() != null) { - mInteractionJankMonitor.begin( - decoration.mTaskSurface, mContext, mMainHandler, - interaction.getCujTracing(), interaction.getJankTag()); - } - mDesktopTasksController.toggleDesktopTaskSize(decoration.mTaskInfo, interaction); - } - - private ToggleTaskSizeInteraction createToggleSizeInteraction( - @NonNull DesktopModeWindowDecoration decoration, - @NonNull ToggleTaskSizeInteraction.AmbiguousSource source, - @Nullable InputMethod inputMethod) { - final RunningTaskInfo taskInfo = decoration.mTaskInfo; - - final DisplayLayout displayLayout = mDisplayController.getDisplayLayout(taskInfo.displayId); - if (displayLayout == null) { - return null; - } - final Rect stableBounds = new Rect(); - displayLayout.getStableBounds(stableBounds); - boolean isMaximized = DesktopModeUtils.isTaskMaximized(taskInfo, stableBounds); - - return new ToggleTaskSizeInteraction( - isMaximized - ? ToggleTaskSizeInteraction.Direction.RESTORE - : ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeUtilsKt.toSource(source, isMaximized), - inputMethod - ); - } - - private void onEnterOrExitImmersive(RunningTaskInfo taskInfo) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskInfo.taskId); - if (decoration == null) { - return; - } - final DesktopRepository desktopRepository = mDesktopUserRepositories.getProfile( - taskInfo.userId); - if (desktopRepository.isTaskInFullImmersiveState(taskInfo.taskId)) { - mDesktopModeUiEventLogger.log(decoration.mTaskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_MAXIMIZE_BUTTON_MENU_TAP_TO_RESTORE); - mDesktopImmersiveController.moveTaskToNonImmersive( - decoration.mTaskInfo, DesktopImmersiveController.ExitReason.USER_INTERACTION); - } else { - mDesktopModeUiEventLogger.log(decoration.mTaskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_MAXIMIZE_BUTTON_MENU_TAP_TO_IMMERSIVE); - removeTaskIfTiled(decoration.mTaskInfo.displayId, decoration.mTaskInfo.taskId); - mDesktopImmersiveController.moveTaskToImmersive(decoration.mTaskInfo); - } - } - - /** Snap-resize a task to the left or right side of the desktop. */ - public void onSnapResize(int taskId, boolean left, InputMethod inputMethod, boolean fromMenu) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration == null) { - return; - } - - if (fromMenu) { - final DesktopModeUiEventLogger.DesktopUiEventEnum event = left - ? DesktopUiEventEnum.DESKTOP_WINDOW_MAXIMIZE_BUTTON_MENU_TAP_TO_TILE_TO_LEFT - : DesktopUiEventEnum.DESKTOP_WINDOW_MAXIMIZE_BUTTON_MENU_TAP_TO_TILE_TO_RIGHT; - mDesktopModeUiEventLogger.log(decoration.mTaskInfo, event); - } - - mInteractionJankMonitor.begin(decoration.mTaskSurface, mContext, mMainHandler, - Cuj.CUJ_DESKTOP_MODE_SNAP_RESIZE, "maximize_menu_resizable"); - mDesktopTasksController.handleInstantSnapResizingTask( - decoration.mTaskInfo, - left ? SnapPosition.LEFT : SnapPosition.RIGHT, - left ? ResizeTrigger.SNAP_LEFT_MENU : ResizeTrigger.SNAP_RIGHT_MENU, - inputMethod); - } - - private void openInBrowser(int taskId, @NonNull Intent intent) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration == null) { - return; - } - openInBrowser(intent, decoration.getUser(), decoration.mTaskInfo.displayId); - } - - private void openInBrowser( - @NonNull Intent intent, @NonNull UserHandle userHandle, int displayId) { - final ActivityOptions options = ActivityOptions.makeBasic().setLaunchDisplayId(displayId); - mContext.startActivityAsUser(intent, options.toBundle(), userHandle); - } - - private void moveToDesktop(int taskId, DesktopModeTransitionSource source) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration == null) { - return; - } - final WindowContainerTransaction wct = new WindowContainerTransaction(); - mInteractionJankMonitor.begin(decoration.mTaskSurface, mContext, mMainHandler, - CUJ_DESKTOP_MODE_ENTER_MODE_APP_HANDLE_MENU); - mLatencyTracker.onActionStart(LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU); - // App sometimes draws before the insets from WindowDecoration#relayout have - // been added, so they must be added here - decoration.addCaptionInset(wct); - if (!mDesktopTasksController.moveTaskToDefaultDeskAndActivate( - taskId, - wct, - source, - /* remoteTransition= */ null, - /* moveToDesktopCallback= */ null)) { - mLatencyTracker.onActionCancel( - LatencyTracker.ACTION_DESKTOP_MODE_ENTER_APP_HANDLE_MENU); - } - - if (source == DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON) { - mDesktopModeUiEventLogger.log(decoration.mTaskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HANDLE_MENU_TAP_TO_DESKTOP_MODE); - } - } - - private void onManageWindows(int taskId) { - final DesktopModeWindowDecoration decor = mWindowDecorByTaskId.get(taskId); - mBgExecutor.execute(() -> { - final ArrayList<Pair<Integer, TaskSnapshot>> snapshotList = - getTaskSnapshots(decor.mTaskInfo); - if (!snapshotList.isEmpty()) { - mMainExecutor.execute(() -> decor.createManageWindowsMenu(snapshotList)); - } - }); - } - - private void moveToFullscreen(int taskId) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration == null) { - return; - } - if (isTaskInSplitScreen(taskId)) { - mSplitScreenController.moveTaskToFullscreen(taskId, - SplitScreenController.EXIT_REASON_DESKTOP_MODE); - } else { - mDesktopTasksController.moveToFullscreen(taskId, - DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON, - /* remoteTransition= */ null); - } - mDesktopModeUiEventLogger.log(decoration.mTaskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HANDLE_MENU_TAP_TO_FULL_SCREEN); - } - - private void moveToSplit(int taskId) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration == null) { - return; - } - mDesktopTasksController.requestSplit(decoration.mTaskInfo, false /* leftOrTop */); - mDesktopModeUiEventLogger.log(decoration.mTaskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HANDLE_MENU_TAP_TO_SPLIT_SCREEN); - } - - private void moveToFloat(int taskId) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration == null) { - return; - } - // When the app enters float, the handle will no longer be visible, meaning - // we shouldn't receive input for it any longer. - decoration.disposeStatusBarInputLayer(); - mDesktopTasksController.requestFloat(decoration.mTaskInfo); - } - - private void launchNewWindow(int taskId) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration == null) { - return; - } - mDesktopTasksController.openNewWindow(decoration.mTaskInfo); - mDesktopModeUiEventLogger.log(decoration.mTaskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_MULTI_INSTANCE_NEW_WINDOW_CLICK); - } - - private ArrayList<Pair<Integer, TaskSnapshot>> getTaskSnapshots( - @NonNull RunningTaskInfo callerTaskInfo - ) { - final ArrayList<Pair<Integer, TaskSnapshot>> snapshotList = new ArrayList<>(); - final IActivityManager activityManager = ActivityManager.getService(); - final IActivityTaskManager activityTaskManagerService = ActivityTaskManager.getService(); - final List<ActivityManager.RecentTaskInfo> recentTasks; - try { - recentTasks = mActivityTaskManager.getRecentTasks( - Integer.MAX_VALUE, - ActivityManager.RECENT_WITH_EXCLUDED, - activityManager.getCurrentUser().id); - } catch (RemoteException e) { - ProtoLog.e(WM_SHELL_DESKTOP_MODE, - "%s: Error getting recent tasks: %s", TAG, e); - return new ArrayList<>(); - } - final String callerPackageName = callerTaskInfo.baseActivity.getPackageName(); - for (ActivityManager.RecentTaskInfo info : recentTasks) { - if (info.baseActivity == null) continue; - final String infoPackageName = info.baseActivity.getPackageName(); - if (!infoPackageName.equals(callerPackageName)) { - continue; - } - // TODO(b/337903443): Fix this returning null for freeform tasks. - try { - TaskSnapshot screenshot = activityTaskManagerService - .getTaskSnapshot(info.taskId, false); - if (screenshot == null) { - screenshot = activityTaskManagerService - .takeTaskSnapshot(info.taskId, false); - } - snapshotList.add(new Pair(info.taskId, screenshot)); - } catch (RemoteException e) { - ProtoLog.e(WM_SHELL_DESKTOP_MODE, - "%s: Error getting task snapshot for task %d: %s", TAG, info.taskId, e); - return new ArrayList<>(); - } - } - return snapshotList; - } - - @Override - public boolean snapToHalfScreen(@NonNull RunningTaskInfo taskInfo, - @NonNull Rect currentDragBounds, @NonNull SnapPosition position) { - return mDesktopTilingDecorViewModel.snapToHalfScreen(taskInfo, - mWindowDecorByTaskId.get(taskInfo.taskId), position, currentDragBounds, null); - } - - @Override - public boolean snapPersistedTaskToHalfScreen(@NotNull RunningTaskInfo taskInfo, - @NotNull Rect currentDragBounds, @NotNull SnapPosition position) { - return mDesktopTilingDecorViewModel.snapToHalfScreen(taskInfo, - mWindowDecorByTaskId.get(taskInfo.taskId), position, currentDragBounds, - currentDragBounds); - } - - @Override - public void onDeskActivated(int deskId, int displayId) { - if (!mDesktopTilingDecorViewModel.onDeskActivated(deskId)) { - return; - } - - final DesktopRepository repository = mDesktopUserRepositories.getCurrent(); - final Integer leftTaskId = repository.getLeftTiledTask(deskId); - final Integer rightTaskId = repository.getRightTiledTask(deskId); - if (leftTaskId != null) { - final DesktopModeWindowDecoration decor = mWindowDecorByTaskId.get(leftTaskId); - final RunningTaskInfo taskInfo = decor.mTaskInfo; - final Rect currentBounds = taskInfo.configuration.windowConfiguration.getBounds(); - snapPersistedTaskToHalfScreen(taskInfo, currentBounds, SnapPosition.LEFT); - } - - if (rightTaskId != null) { - final DesktopModeWindowDecoration decor = mWindowDecorByTaskId.get(rightTaskId); - final RunningTaskInfo taskInfo = decor.mTaskInfo; - final Rect currentBounds = taskInfo.configuration.windowConfiguration.getBounds(); - snapPersistedTaskToHalfScreen(taskInfo, currentBounds, SnapPosition.RIGHT); - } - } - - @Override - public void removeTaskIfTiled(int displayId, int taskId) { - mDesktopTilingDecorViewModel.removeTaskIfTiled(displayId, taskId); - } - - @Override - public void onUserChange(int userId) { - mDesktopTilingDecorViewModel.onUserChange(userId); - } - - @Override - public void onRecentsAnimationEndedToSameDesk() { - mDesktopTilingDecorViewModel.onOverviewAnimationEndedToSameDesk(); - } - - @Override - public boolean moveTaskToFrontIfTiled(@NonNull RunningTaskInfo taskInfo) { - return mDesktopTilingDecorViewModel.moveTaskToFrontIfTiled(taskInfo); - } - - @Override - @NotNull - public Rect getLeftSnapBoundsIfTiled(int displayId) { - return mDesktopTilingDecorViewModel.getLeftSnapBoundsIfTiled(displayId); - } - - @Override - @NotNull - public Rect getRightSnapBoundsIfTiled(int displayId) { - return mDesktopTilingDecorViewModel.getRightSnapBoundsIfTiled(displayId); - } - - @Override - public void onDeskDeactivated(int deskId) { - mDesktopTilingDecorViewModel.onDeskDeactivated(deskId); - } - - @Override - public void onDisplayDisconnected(int disconnectedDisplayId, - boolean desktopModeSupportedOnNewDisplay) { - mDesktopTilingDecorViewModel.onDisplayDisconnected(disconnectedDisplayId, - desktopModeSupportedOnNewDisplay); - } - - @Override - public void onDeskRemoved(int deskId) { - mDesktopTilingDecorViewModel.onDeskRemoved(deskId); - } - - @VisibleForTesting - public class DesktopModeTouchEventListener extends GestureDetector.SimpleOnGestureListener + private class DesktopModeTouchEventListener extends GestureDetector.SimpleOnGestureListener implements View.OnClickListener, View.OnTouchListener, View.OnLongClickListener, View.OnGenericMotionListener, DragDetector.MotionEventHandler { - private static final long APP_HANDLE_HOLD_TO_DRAG_DURATION_MS = 100; - private static final long APP_HEADER_HOLD_TO_DRAG_DURATION_MS = 0; + private static final int CLOSE_MAXIMIZE_MENU_DELAY_MS = 150; private final int mTaskId; private final WindowContainerToken mTaskToken; private final DragPositioningCallback mDragPositioningCallback; - private final DragDetector mHandleDragDetector; - private final DragDetector mHeaderDragDetector; + private final DragDetector mDragDetector; private final GestureDetector mGestureDetector; private final int mDisplayId; - private final Rect mOnDragStartInitialBounds = new Rect(); - private final Rect mCurrentBounds = new Rect(); /** * Whether to pilfer the next motion event to send cancellations to the windows below. - * Useful when the caption window is spy and the gesture should be handled by the system + * Useful when the caption window is spy and the gesture should be handle by the system * instead of by the app for their custom header content. - * Should not have any effect when - * {@link DesktopModeFlags#ENABLE_ACCESSIBLE_CUSTOM_HEADERS}, because a spy window is not - * used then. */ - private boolean mIsCustomHeaderGesture; - private boolean mIsResizeGesture; + private boolean mShouldPilferCaptionEvents; private boolean mIsDragging; - private boolean mDragInterrupted; - private boolean mLongClickDisabled; + private boolean mTouchscreenInUse; + private boolean mHasLongClicked; private int mDragPointerId = -1; - private MotionEvent mMotionEvent; - private int mCurrentPointerIconType = PointerIcon.TYPE_ARROW; + private final Runnable mCloseMaximizeWindowRunnable; private DesktopModeTouchEventListener( RunningTaskInfo taskInfo, @@ -1074,16 +411,14 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, mTaskId = taskInfo.taskId; mTaskToken = taskInfo.token; mDragPositioningCallback = dragPositioningCallback; - final int touchSlop = ViewConfiguration.get(mContext).getScaledTouchSlop(); - final long appHandleHoldToDragDuration = - DesktopModeFlags.ENABLE_HOLD_TO_DRAG_APP_HANDLE.isTrue() - ? APP_HANDLE_HOLD_TO_DRAG_DURATION_MS : 0; - mHandleDragDetector = new DragDetector(this, appHandleHoldToDragDuration, - touchSlop); - mHeaderDragDetector = new DragDetector(this, APP_HEADER_HOLD_TO_DRAG_DURATION_MS, - touchSlop); + mDragDetector = new DragDetector(this); mGestureDetector = new GestureDetector(mContext, this); mDisplayId = taskInfo.displayId; + mCloseMaximizeWindowRunnable = () -> { + final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(mTaskId); + if (decoration == null) return; + decoration.closeMaximizeMenu(); + }; } @Override @@ -1099,117 +434,95 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, mSplitScreenController.moveTaskToFullscreen(getOtherSplitTask(mTaskId).taskId, SplitScreenController.EXIT_REASON_DESKTOP_MODE); } else { - if (DesktopExperienceFlags - .ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS.isTrue()) { - final int nextFocusedTaskId = - mDesktopTasksController.getNextFocusedTask(decoration.mTaskInfo); - DesktopModeWindowDecoration nextFocusedWindow = - mWindowDecorByTaskId.get(nextFocusedTaskId); - if (nextFocusedWindow != null) { - nextFocusedWindow.a11yAnnounceNewFocusedWindow(); - } - } WindowContainerTransaction wct = new WindowContainerTransaction(); - final Function1<IBinder, Unit> runOnTransitionStart = - mDesktopTasksController.onDesktopWindowClose( - wct, mDisplayId, decoration.mTaskInfo); - final IBinder transition = mTaskOperations.closeTask(mTaskToken, wct); - if (transition != null) { - runOnTransitionStart.invoke(transition); - } + mDesktopTasksController.onDesktopWindowClose(wct, mTaskId); + mTaskOperations.closeTask(mTaskToken, wct); } } else if (id == R.id.back_button) { mTaskOperations.injectBackKey(mDisplayId); } else if (id == R.id.caption_handle || id == R.id.open_menu_button) { - if (id == R.id.caption_handle && !decoration.mTaskInfo.isFreeform()) { - // Clicking the App Handle. - mDesktopModeUiEventLogger.log(decoration.mTaskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_APP_HANDLE_TAP); - } if (!decoration.isHandleMenuActive()) { moveTaskToFront(decoration.mTaskInfo); - openHandleMenu(mTaskId); - } - } else if (id == R.id.maximize_window) { - // TODO(b/346441962): move click detection logic into the decor's - // {@link AppHeaderViewHolder}. Let it encapsulate the that and have it report - // back to the decoration using - // {@link DesktopModeWindowDecoration#setOnMaximizeOrRestoreClickListener}, which - // should shared with the maximize menu's maximize/restore actions. - final DesktopRepository desktopRepository = mDesktopUserRepositories.getProfile( - decoration.mTaskInfo.userId); - if (DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue() - && desktopRepository.isTaskInFullImmersiveState( - decoration.mTaskInfo.taskId)) { - // Task is in immersive and should exit. - onEnterOrExitImmersive(decoration.mTaskInfo); + decoration.createHandleMenu(mSplitScreenController); } else { - // Full immersive is disabled or task doesn't request/support it, so just - // toggle between maximize/restore states. - onToggleSizeInteraction(decoration.mTaskInfo.taskId, - ToggleTaskSizeInteraction.AmbiguousSource.HEADER_BUTTON, - getInputMethod(mMotionEvent)); + decoration.closeHandleMenu(); } - } else if (id == R.id.minimize_window) { - if (DesktopExperienceFlags - .ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS.isTrue()) { - final int nextFocusedTaskId = mDesktopTasksController - .getNextFocusedTask(decoration.mTaskInfo); - DesktopModeWindowDecoration nextFocusedWindow = - mWindowDecorByTaskId.get(nextFocusedTaskId); - if (nextFocusedWindow != null) { - nextFocusedWindow.a11yAnnounceNewFocusedWindow(); - } + } else if (id == R.id.desktop_button) { + final WindowContainerTransaction wct = new WindowContainerTransaction(); + // App sometimes draws before the insets from WindowDecoration#relayout have + // been added, so they must be added here + mWindowDecorByTaskId.get(mTaskId).addCaptionInset(wct); + mDesktopTasksController.moveToDesktop(mTaskId, wct, + DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON); + decoration.closeHandleMenu(); + } else if (id == R.id.fullscreen_button) { + decoration.closeHandleMenu(); + if (isTaskInSplitScreen(mTaskId)) { + mSplitScreenController.moveTaskToFullscreen(mTaskId, + SplitScreenController.EXIT_REASON_DESKTOP_MODE); + } else { + mDesktopTasksController.moveToFullscreen(mTaskId, + DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON); } - mDesktopTasksController.minimizeTask( - decoration.mTaskInfo, MinimizeReason.MINIMIZE_BUTTON); + } else if (id == R.id.split_screen_button) { + decoration.closeHandleMenu(); + mDesktopTasksController.requestSplit(decoration.mTaskInfo); + } else if (id == R.id.collapse_menu_button) { + decoration.closeHandleMenu(); + } else if (id == R.id.maximize_window) { + final RunningTaskInfo taskInfo = decoration.mTaskInfo; + decoration.closeHandleMenu(); + decoration.closeMaximizeMenu(); + mDesktopTasksController.toggleDesktopTaskSize(taskInfo); + } else if (id == R.id.maximize_menu_maximize_button) { + final RunningTaskInfo taskInfo = decoration.mTaskInfo; + mDesktopTasksController.toggleDesktopTaskSize(taskInfo); + decoration.closeHandleMenu(); + decoration.closeMaximizeMenu(); + } else if (id == R.id.maximize_menu_snap_left_button) { + final RunningTaskInfo taskInfo = decoration.mTaskInfo; + mDesktopTasksController.snapToHalfScreen(taskInfo, SnapPosition.LEFT); + decoration.closeHandleMenu(); + decoration.closeMaximizeMenu(); + } else if (id == R.id.maximize_menu_snap_right_button) { + final RunningTaskInfo taskInfo = decoration.mTaskInfo; + mDesktopTasksController.snapToHalfScreen(taskInfo, SnapPosition.RIGHT); + decoration.closeHandleMenu(); + decoration.closeMaximizeMenu(); } } @Override public boolean onTouch(View v, MotionEvent e) { - mMotionEvent = e; final int id = v.getId(); - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(mTaskId); - final boolean touchscreenSource = - (e.getSource() & SOURCE_TOUCHSCREEN) == SOURCE_TOUCHSCREEN; - // Disable long click during events from a non-touchscreen source - mLongClickDisabled = !touchscreenSource && e.getActionMasked() != ACTION_UP - && e.getActionMasked() != ACTION_CANCEL; - + if ((e.getSource() & SOURCE_TOUCHSCREEN) == SOURCE_TOUCHSCREEN) { + mTouchscreenInUse = e.getActionMasked() != ACTION_UP + && e.getActionMasked() != ACTION_CANCEL; + } if (id != R.id.caption_handle && id != R.id.desktop_mode_caption && id != R.id.open_menu_button && id != R.id.close_window - && id != R.id.maximize_window && id != R.id.minimize_window) { + && id != R.id.maximize_window) { return false; } - final boolean isAppHandle = !getTaskInfo().isFreeform(); + final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(mTaskId); + moveTaskToFront(decoration.mTaskInfo); + final int actionMasked = e.getActionMasked(); final boolean isDown = actionMasked == MotionEvent.ACTION_DOWN; final boolean isUpOrCancel = actionMasked == MotionEvent.ACTION_CANCEL || actionMasked == MotionEvent.ACTION_UP; if (isDown) { - // Only move to front on down to prevent 2+ tasks from fighting - // (and thus flickering) for front status when drag-moving them simultaneously with - // two pointers. - // TODO(b/356962065): during a drag-move, this shouldn't be a WCT - just move the - // task surface to the top of other tasks and reorder once the user releases the - // gesture together with the bounds' WCT. This is probably still valid for other - // gestures like simple clicks. - moveTaskToFront(decoration.mTaskInfo); - final boolean downInCustomizableCaptionRegion = decoration.checkTouchEventInCustomizableRegion(e); - final Region exclusionRegion = mGestureExclusionTracker - .getExclusionRegion(e.getDisplayId()); - final boolean downInExclusionRegion = - exclusionRegion.contains((int) e.getRawX(), (int) e.getRawY()); + final boolean downInExclusionRegion = mExclusionRegion.contains( + (int) e.getRawX(), (int) e.getRawY()); final boolean isTransparentCaption = TaskInfoKt.isTransparentCaptionBarAppearance(decoration.mTaskInfo); // MotionEvent's coordinates are relative to view, we want location in window // to offset position relative to caption as a whole. int[] viewLocation = new int[2]; v.getLocationInWindow(viewLocation); - mIsResizeGesture = decoration.shouldResizeListenerHandleEvent(e, + final boolean isResizeEvent = decoration.shouldResizeListenerHandleEvent(e, new Point(viewLocation[0], viewLocation[1])); // The caption window may be a spy window when the caption background is // transparent, which means events will fall through to the app window. Make @@ -1217,41 +530,39 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, // customizable region and what the app reported as exclusion areas, because // the drag-move or other caption gestures should take priority outside those // regions. - mIsCustomHeaderGesture = downInCustomizableCaptionRegion - && downInExclusionRegion && isTransparentCaption; + mShouldPilferCaptionEvents = !(downInCustomizableCaptionRegion + && downInExclusionRegion && isTransparentCaption) && !isResizeEvent; } - if (mIsCustomHeaderGesture || mIsResizeGesture) { - // The event will be handled by the custom window below or pilfered by resize - // handler. + + if (!mShouldPilferCaptionEvents) { + // The event will be handled by a window below or pilfered by resize handler. return false; } - if (mInputManager != null - && !DesktopModeFlags.ENABLE_ACCESSIBLE_CUSTOM_HEADERS.isTrue()) { - ViewRootImpl viewRootImpl = v.getViewRootImpl(); - if (viewRootImpl != null) { - // Pilfer so that windows below receive cancellations for this gesture. - mInputManager.pilferPointers(viewRootImpl.getInputToken()); - } + // Otherwise pilfer so that windows below receive cancellations for this gesture, and + // continue normal handling as a caption gesture. + if (mInputManager != null) { + mInputManager.pilferPointers(v.getViewRootImpl().getInputToken()); } if (isUpOrCancel) { // Gesture is finished, reset state. - mIsCustomHeaderGesture = false; - mIsResizeGesture = false; + mShouldPilferCaptionEvents = false; } - if (isAppHandle) { - return mHandleDragDetector.onMotionEvent(v, e); - } else { - return mHeaderDragDetector.onMotionEvent(v, e); + if (!mHasLongClicked && id != R.id.maximize_window) { + decoration.closeMaximizeMenuIfNeeded(e); } + return mDragDetector.onMotionEvent(v, e); } @Override public boolean onLongClick(View v) { final int id = v.getId(); - if (id == R.id.maximize_window && !mLongClickDisabled) { + if (id == R.id.maximize_window && mTouchscreenInUse) { final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(mTaskId); moveTaskToFront(decoration.mTaskInfo); - if (!decoration.isMaximizeMenuActive()) { + if (decoration.isMaximizeMenuActive()) { + decoration.closeMaximizeMenu(); + } else { + mHasLongClicked = true; decoration.createMaximizeMenu(); } return true; @@ -1259,27 +570,40 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, return false; } - /** - * TODO(b/346441962): move this hover detection logic into the decor's - * {@link AppHeaderViewHolder}. - */ @Override public boolean onGenericMotion(View v, MotionEvent ev) { - mMotionEvent = ev; final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(mTaskId); final int id = v.getId(); - if (ev.getAction() == ACTION_HOVER_ENTER && id == R.id.maximize_window) { - decoration.setAppHeaderMaximizeButtonHovered(true); - if (!decoration.isMaximizeMenuActive()) { - decoration.onMaximizeButtonHoverEnter(); + if (ev.getAction() == ACTION_HOVER_ENTER) { + if (!decoration.isMaximizeMenuActive() && id == R.id.maximize_window) { + decoration.onMaximizeWindowHoverEnter(); + } else if (id == R.id.maximize_window + || MaximizeMenu.Companion.isMaximizeMenuView(id)) { + // Re-hovering over any of the maximize menu views should keep the menu open by + // cancelling any attempts to close the menu. + mMainHandler.removeCallbacks(mCloseMaximizeWindowRunnable); + if (id != R.id.maximize_window) { + decoration.onMaximizeMenuHoverEnter(id, ev); + } } return true; - } - if (ev.getAction() == ACTION_HOVER_EXIT && id == R.id.maximize_window) { - decoration.setAppHeaderMaximizeButtonHovered(false); - decoration.onMaximizeHoverStateChanged(); - if (!decoration.isMaximizeMenuActive()) { - decoration.onMaximizeButtonHoverExit(); + } else if (ev.getAction() == ACTION_HOVER_MOVE + && MaximizeMenu.Companion.isMaximizeMenuView(id)) { + decoration.onMaximizeMenuHoverMove(id, ev); + mMainHandler.removeCallbacks(mCloseMaximizeWindowRunnable); + } else if (ev.getAction() == ACTION_HOVER_EXIT) { + if (!decoration.isMaximizeMenuActive() && id == R.id.maximize_window) { + decoration.onMaximizeWindowHoverExit(); + } else if (id == R.id.maximize_window + || MaximizeMenu.Companion.isMaximizeMenuView(id)) { + // Close menu if not hovering over maximize menu or maximize button after a + // delay to give user a chance to re-enter view or to move from one maximize + // menu view to another. + mMainHandler.postDelayed(mCloseMaximizeWindowRunnable, + CLOSE_MAXIMIZE_MENU_DELAY_MS); + if (id != R.id.maximize_window) { + decoration.onMaximizeMenuHoverExit(id, ev); + } } return true; } @@ -1287,15 +611,7 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, } private void moveTaskToFront(RunningTaskInfo taskInfo) { - if (!mFocusTransitionObserver.hasGlobalFocus(taskInfo)) { - ProtoLog.d(WM_SHELL_DESKTOP_MODE, - "%s: task#%d in display#%d does not have global focus, moving to front " - + "globallyFocusedTaskId=%d globallyFocusedDisplayId=%d", - TAG, taskInfo.taskId, taskInfo.displayId, - mFocusTransitionObserver.getGloballyFocusedTaskId(), - mFocusTransitionObserver.getGloballyFocusedDisplayId()); - mDesktopModeUiEventLogger.log(taskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_HEADER_TAP_TO_REFOCUS); + if (!taskInfo.isFocused) { mDesktopTasksController.moveTaskToFront(taskInfo); } } @@ -1308,77 +624,24 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, public boolean handleMotionEvent(@Nullable View v, MotionEvent e) { final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(mTaskId); final RunningTaskInfo taskInfo = decoration.mTaskInfo; - if (mDesktopState.canEnterDesktopModeOrShowAppHandle() - && !taskInfo.isFreeform()) { - return handleNonFreeformMotionEvent(decoration, v, e); - } else { - return handleFreeformMotionEvent(decoration, taskInfo, v, e); + if (DesktopModeStatus.canEnterDesktopMode(mContext) + && taskInfo.getWindowingMode() == WINDOWING_MODE_FULLSCREEN) { + return false; } - } - - @NonNull - private RunningTaskInfo getTaskInfo() { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(mTaskId); - return decoration.mTaskInfo; - } - - private boolean handleNonFreeformMotionEvent(DesktopModeWindowDecoration decoration, - View v, MotionEvent e) { - final int id = v.getId(); - if (id == R.id.caption_handle) { - handleCaptionThroughStatusBar(e, decoration, - /* interruptDragCallback= */ - () -> { - mDragInterrupted = true; - setIsDragging(decoration, /* isDragging= */ false); - }); - final boolean wasDragging = mIsDragging; - updateDragStatus(decoration, e); - final boolean upOrCancel = e.getActionMasked() == ACTION_UP - || e.getActionMasked() == ACTION_CANCEL; - if (wasDragging && upOrCancel) { - // When finishing a drag the event will be consumed, which means the pressed - // state of the App Handle must be manually reset to scale its drawable back to - // its original shape. This is necessary for drag gestures of the Handle that - // result in a cancellation (dragging back to the top). - v.setPressed(false); - } - // Only prevent onClick from receiving this event if it's a drag. - return wasDragging; - } - return false; - } - - private void setIsDragging( - @Nullable DesktopModeWindowDecoration decor, boolean isDragging) { - mIsDragging = isDragging; - if (decor == null) return; - decor.setIsDragging(isDragging); - } - - private boolean handleFreeformMotionEvent(DesktopModeWindowDecoration decoration, - RunningTaskInfo taskInfo, View v, MotionEvent e) { - final int id = v.getId(); if (mGestureDetector.onTouchEvent(e)) { return true; } + final int id = v.getId(); final boolean touchingButton = (id == R.id.close_window || id == R.id.maximize_window - || id == R.id.open_menu_button || id == R.id.minimize_window); - final DesktopRepository desktopRepository = mDesktopUserRepositories.getProfile( - taskInfo.userId); - final boolean dragAllowed = - !desktopRepository.isTaskInFullImmersiveState(taskInfo.taskId); + || id == R.id.open_menu_button); switch (e.getActionMasked()) { case MotionEvent.ACTION_DOWN: { - if (dragAllowed) { - mDragPointerId = e.getPointerId(0); - final Rect initialBounds = mDragPositioningCallback.onDragPositioningStart( - 0 /* ctrlType */, e.getDisplayId(), e.getRawX(0), - e.getRawY(0)); - updateDragStatus(decoration, e); - mOnDragStartInitialBounds.set(initialBounds); - mCurrentBounds.set(initialBounds); - } + mDragPointerId = e.getPointerId(0); + mDragPositioningCallback.onDragPositioningStart( + 0 /* ctrlType */, e.getRawX(0), + e.getRawY(0)); + mIsDragging = false; + mHasLongClicked = false; // Do not consume input event if a button is touched, otherwise it would // prevent the button's ripple effect from showing. return !touchingButton; @@ -1386,45 +649,18 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, case ACTION_MOVE: { // If a decor's resize drag zone is active, don't also try to reposition it. if (decoration.isHandlingDragResize()) break; - // Dragging the header isn't allowed, so skip the positioning work. - if (!dragAllowed) break; - + decoration.closeMaximizeMenu(); if (e.findPointerIndex(mDragPointerId) == -1) { mDragPointerId = e.getPointerId(0); } final int dragPointerIdx = e.findPointerIndex(mDragPointerId); - - if (DesktopExperienceFlags - .ENABLE_BLOCK_NON_DESKTOP_DISPLAY_WINDOW_DRAG_BUGFIX.isTrue()) { - final boolean inDesktopModeDisplay = isDisplayInDesktopMode( - e.getDisplayId()); - // TODO: b/418651425 - Use a more specific pointer icon when available. - updatePointerIcon(e, dragPointerIdx, v.getViewRootImpl().getInputToken(), - inDesktopModeDisplay ? PointerIcon.TYPE_ARROW - : PointerIcon.TYPE_NO_DROP); - // Allow bounds update only when cursor is on desktop-mode displays. - // Otherwise, ignore the MOVE event and the window holds its current bounds. - if (inDesktopModeDisplay) { - mCurrentBounds.set(mDragPositioningCallback.onDragPositioningMove( - e.getDisplayId(), - e.getRawX(dragPointerIdx), e.getRawY(dragPointerIdx))); - } - } else { - mCurrentBounds.set(mDragPositioningCallback.onDragPositioningMove( - e.getDisplayId(), - e.getRawX(dragPointerIdx), e.getRawY(dragPointerIdx))); - } - + final Rect newTaskBounds = mDragPositioningCallback.onDragPositioningMove( + e.getRawX(dragPointerIdx), e.getRawY(dragPointerIdx)); mDesktopTasksController.onDragPositioningMove(taskInfo, - decoration.getLeash(), - e.getDisplayId(), + decoration.mTaskSurface, e.getRawX(dragPointerIdx), - e.getRawY(dragPointerIdx), - mCurrentBounds); - // Flip mIsDragging only if the bounds actually changed. - if (mIsDragging || !mCurrentBounds.equals(mOnDragStartInitialBounds)) { - updateDragStatus(decoration, e); - } + newTaskBounds); + mIsDragging = true; return true; } case MotionEvent.ACTION_UP: @@ -1433,43 +669,28 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, if (!wasDragging) { return false; } - mDesktopModeUiEventLogger.log(taskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_MOVE_BY_HEADER_DRAG); if (e.findPointerIndex(mDragPointerId) == -1) { mDragPointerId = e.getPointerId(0); } final int dragPointerIdx = e.findPointerIndex(mDragPointerId); + // Position of the task is calculated by subtracting the raw location of the + // motion event (the location of the motion relative to the display) by the + // location of the motion event relative to the task's bounds + final Point position = new Point( + (int) (e.getRawX(dragPointerIdx) - e.getX(dragPointerIdx)), + (int) (e.getRawY(dragPointerIdx) - e.getY(dragPointerIdx))); final Rect newTaskBounds = mDragPositioningCallback.onDragPositioningEnd( - e.getDisplayId(), e.getRawX(dragPointerIdx), e.getRawY(dragPointerIdx)); - - if (DesktopExperienceFlags - .ENABLE_BLOCK_NON_DESKTOP_DISPLAY_WINDOW_DRAG_BUGFIX.isTrue()) { - updatePointerIcon(e, dragPointerIdx, v.getViewRootImpl().getInputToken(), - PointerIcon.TYPE_ARROW); - // If the cursor ends on a non-desktop-mode display, revert the window - // to its initial bounds prior to the drag starting. - if (!isDisplayInDesktopMode(e.getDisplayId())) { - newTaskBounds.set(mOnDragStartInitialBounds); - } - } - - // Tasks bounds haven't actually been updated (only its leash), so pass to - // DesktopTasksController to allow secondary transformations (i.e. snap resizing - // or transforming to fullscreen) before setting new task bounds. - mDesktopTasksController.onDragPositioningEnd( - taskInfo, decoration.getLeash(), - e.getDisplayId(), + mDesktopTasksController.onDragPositioningEnd(taskInfo, position, new PointF(e.getRawX(dragPointerIdx), e.getRawY(dragPointerIdx)), - newTaskBounds, decoration.calculateValidDragArea(), - new Rect(mOnDragStartInitialBounds), e); - if (touchingButton) { + newTaskBounds, decoration.calculateValidDragArea()); + if (touchingButton && !mHasLongClicked) { // We need the input event to not be consumed here to end the ripple // effect on the touched button. We will reset drag state in the ensuing // onClick call that results. return false; } else { - updateDragStatus(decoration, e); + mIsDragging = false; return true; } } @@ -1477,43 +698,9 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, return true; } - private void updatePointerIcon(MotionEvent e, int dragPointerIdx, IBinder inputToken, - int iconType) { - if (mCurrentPointerIconType == iconType) { - return; - } - mInputManager.setPointerIcon(PointerIcon.getSystemIcon(mContext, iconType), - e.getDisplayId(), e.getDeviceId(), e.getPointerId(dragPointerIdx), inputToken); - mCurrentPointerIconType = iconType; - } - - private boolean isDisplayInDesktopMode(int displayId) { - return mDesktopState.isDesktopModeSupportedOnDisplay(displayId) - && mDesktopTasksController.getActiveDeskId(displayId) != null; - } - - private void updateDragStatus(DesktopModeWindowDecoration decor, MotionEvent e) { - switch (e.getActionMasked()) { - case MotionEvent.ACTION_DOWN: - case MotionEvent.ACTION_UP: - case MotionEvent.ACTION_CANCEL: { - mDragInterrupted = false; - setIsDragging(decor, false /* isDragging */); - break; - } - case MotionEvent.ACTION_MOVE: { - if (!mDragInterrupted) { - setIsDragging(decor, true /* isDragging */); - } - break; - } - } - } - /** * Perform a task size toggle on release of the double-tap, assuming no drag event * was handled during the double-tap. - * * @param e The motion event that occurred during the double-tap gesture. * @return true if the event should be consumed, false if not */ @@ -1524,14 +711,8 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, && action != MotionEvent.ACTION_CANCEL)) { return false; } - final DesktopRepository desktopRepository = mDesktopUserRepositories.getCurrent(); - if (desktopRepository.isTaskInFullImmersiveState(mTaskId)) { - // Disallow double-tap to resize when in full immersive. - return false; - } - onToggleSizeInteraction(mTaskId, - ToggleTaskSizeInteraction.AmbiguousSource.DOUBLE_TAP, - getInputMethod(mMotionEvent)); + final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(mTaskId); + mDesktopTasksController.toggleDesktopTaskSize(decoration.mTaskInfo); return true; } } @@ -1540,7 +721,6 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, class EventReceiver extends InputEventReceiver { private InputMonitor mInputMonitor; private int mTasksOnDisplay; - EventReceiver(InputMonitor inputMonitor, InputChannel channel, Looper looper) { super(channel, looper); mInputMonitor = inputMonitor; @@ -1592,7 +772,6 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, /** * Check if an EventReceiver exists on a particular display. * If it does, increment its task count. Otherwise, create one for that display. - * * @param displayId the display to check against */ private void incrementEventReceiverTasks(int displayId) { @@ -1622,17 +801,16 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, */ private void handleReceivedMotionEvent(MotionEvent ev, InputMonitor inputMonitor) { final DesktopModeWindowDecoration relevantDecor = getRelevantWindowDecor(ev); - if (mDesktopState.canEnterDesktopMode()) { + if (DesktopModeStatus.canEnterDesktopMode(mContext)) { if (!mInImmersiveMode && (relevantDecor == null || relevantDecor.mTaskInfo.getWindowingMode() != WINDOWING_MODE_FREEFORM || mTransitionDragActive)) { - handleCaptionThroughStatusBar(ev, relevantDecor, - /* interruptDragCallback= */ () -> {}); + handleCaptionThroughStatusBar(ev, relevantDecor); } } handleEventOutsideCaption(ev, relevantDecor); // Prevent status bar from reacting to a caption drag. - if (mDesktopState.canEnterDesktopMode()) { + if (DesktopModeStatus.canEnterDesktopMode(mContext)) { if (mTransitionDragActive) { inputMonitor.pilferPointers(); } @@ -1653,6 +831,13 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, return; } relevantDecor.updateHoverAndPressStatus(ev); + final int action = ev.getActionMasked(); + if (action == MotionEvent.ACTION_UP || action == MotionEvent.ACTION_CANCEL) { + if (!mTransitionDragActive) { + relevantDecor.closeHandleMenuIfNeeded(ev); + relevantDecor.closeMaximizeMenuIfNeeded(ev); + } + } } @@ -1661,7 +846,7 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, * Turn on desktop mode if handle is dragged below status bar. */ private void handleCaptionThroughStatusBar(MotionEvent ev, - DesktopModeWindowDecoration relevantDecor, Runnable interruptDragCallback) { + DesktopModeWindowDecoration relevantDecor) { if (relevantDecor == null) { if (ev.getActionMasked() == ACTION_UP) { mMoveToDesktopAnimator = null; @@ -1683,43 +868,31 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, mDragToDesktopAnimationStartBounds.set( relevantDecor.mTaskInfo.configuration.windowConfiguration.getBounds()); boolean dragFromStatusBarAllowed = false; - final int windowingMode = relevantDecor.mTaskInfo.getWindowingMode(); - if (mDesktopState.canEnterDesktopMode() - || BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { + if (DesktopModeStatus.canEnterDesktopMode(mContext)) { // In proto2 any full screen or multi-window task can be dragged to // freeform. + final int windowingMode = relevantDecor.mTaskInfo.getWindowingMode(); dragFromStatusBarAllowed = windowingMode == WINDOWING_MODE_FULLSCREEN || windowingMode == WINDOWING_MODE_MULTI_WINDOW; } - final boolean shouldStartTransitionDrag = - relevantDecor.checkTouchEventInFocusedCaptionHandle(ev) - || DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue(); - if (dragFromStatusBarAllowed && shouldStartTransitionDrag) { + + if (dragFromStatusBarAllowed + && relevantDecor.checkTouchEventInFocusedCaptionHandle(ev)) { mTransitionDragActive = true; } break; } - case MotionEvent.ACTION_CANCEL: case MotionEvent.ACTION_UP: { if (mTransitionDragActive) { - final DesktopModeVisualIndicator.DragStartState dragStartState = - DesktopModeVisualIndicator.DragStartState - .getDragStartState(relevantDecor.mTaskInfo); - if (dragStartState == null) return; mDesktopTasksController.updateVisualIndicator(relevantDecor.mTaskInfo, - relevantDecor.mTaskSurface, ev.getDisplayId(), ev.getRawX(), - ev.getRawY(), dragStartState); + relevantDecor.mTaskSurface, ev.getRawX(), ev.getRawY()); mTransitionDragActive = false; if (mMoveToDesktopAnimator != null) { // Though this isn't a hover event, we need to update handle's hover state // as it likely will change. relevantDecor.updateHoverAndPressStatus(ev); - if (ev.getActionMasked() == ACTION_CANCEL) { - mDesktopTasksController.onDragPositioningCancelThroughStatusBar( - relevantDecor.mTaskInfo); - } else { - endDragToDesktop(ev, relevantDecor); - } + mDesktopTasksController.onDragPositioningEndThroughStatusBar( + new PointF(ev.getRawX(), ev.getRawY()), relevantDecor.mTaskInfo); mMoveToDesktopAnimator = null; return; } else { @@ -1731,6 +904,7 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, relevantDecor.checkTouchEvent(ev); break; } + case ACTION_MOVE: { if (relevantDecor == null) { return; @@ -1739,40 +913,21 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, // Do not create an indicator at all if we're not past transition height. DisplayLayout layout = mDisplayController .getDisplayLayout(relevantDecor.mTaskInfo.displayId); - // It's possible task is not at the top of the screen (e.g. bottom of vertical - // Splitscreen) - final int taskTop = relevantDecor.mTaskInfo.configuration.windowConfiguration - .getBounds().top; - if (ev.getRawY() < 2 * layout.stableInsets().top + taskTop + if (ev.getRawY() < 2 * layout.stableInsets().top && mMoveToDesktopAnimator == null) { return; } - final DesktopModeVisualIndicator.DragStartState dragStartState = - DesktopModeVisualIndicator.DragStartState - .getDragStartState(relevantDecor.mTaskInfo); - if (dragStartState == null) return; final DesktopModeVisualIndicator.IndicatorType indicatorType = mDesktopTasksController.updateVisualIndicator( - relevantDecor.mTaskInfo, relevantDecor.mTaskSurface, - ev.getDisplayId(), ev.getRawX(), ev.getRawY(), - dragStartState); - if (indicatorType != TO_FULLSCREEN_INDICATOR - || BubbleAnythingFlagHelper.enableBubbleToFullscreen()) { + relevantDecor.mTaskInfo, + relevantDecor.mTaskSurface, ev.getRawX(), ev.getRawY()); + if (indicatorType != TO_FULLSCREEN_INDICATOR) { if (mMoveToDesktopAnimator == null) { mMoveToDesktopAnimator = new MoveToDesktopAnimator( mContext, mDragToDesktopAnimationStartBounds, relevantDecor.mTaskInfo, relevantDecor.mTaskSurface); mDesktopTasksController.startDragToDesktop(relevantDecor.mTaskInfo, - mMoveToDesktopAnimator, relevantDecor.mTaskSurface, - /* dragInterruptedCallback= */ () -> { - // Don't call into DesktopTasksController to cancel the - // transition here - the transition handler already handles - // that (including removing the visual indicator). - mTransitionDragActive = false; - mMoveToDesktopAnimator = null; - relevantDecor.handleDragInterrupted(); - interruptDragCallback.run(); - }); + mMoveToDesktopAnimator); } } if (mMoveToDesktopAnimator != null) { @@ -1781,36 +936,10 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, } break; } - } - } - private void endDragToDesktop(MotionEvent ev, DesktopModeWindowDecoration relevantDecor) { - DesktopModeVisualIndicator.IndicatorType resultType = - mDesktopTasksController.onDragPositioningEndThroughStatusBar( - ev.getDisplayId(), - new PointF(ev.getRawX(), ev.getRawY()), - relevantDecor.mTaskInfo, - relevantDecor.mTaskSurface); - // If we are entering split select, handle will no longer be visible and - // should not be receiving any input. - if (resultType == TO_SPLIT_LEFT_INDICATOR - || resultType == TO_SPLIT_RIGHT_INDICATOR) { - relevantDecor.disposeStatusBarInputLayer(); - // We should also dispose the other split task's input layer if - // applicable. - final int splitPosition = mSplitScreenController - .getSplitPosition(relevantDecor.mTaskInfo.taskId); - if (splitPosition != SPLIT_POSITION_UNDEFINED) { - final int oppositePosition = - splitPosition == SPLIT_POSITION_TOP_OR_LEFT - ? SPLIT_POSITION_BOTTOM_OR_RIGHT - : SPLIT_POSITION_TOP_OR_LEFT; - final RunningTaskInfo oppositeTaskInfo = - mSplitScreenController.getTaskInfo(oppositePosition); - if (oppositeTaskInfo != null) { - mWindowDecorByTaskId.get(oppositeTaskInfo.taskId) - .disposeStatusBarInputLayer(); - } + case MotionEvent.ACTION_CANCEL: { + mTransitionDragActive = false; + mMoveToDesktopAnimator = null; } } } @@ -1887,7 +1016,7 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, private void createInputChannel(int displayId) { final InputManager inputManager = mContext.getSystemService(InputManager.class); final InputMonitor inputMonitor = - mInputMonitorFactory.create(inputManager, displayId); + mInputMonitorFactory.create(inputManager, mContext); final EventReceiver eventReceiver = new EventReceiver(inputMonitor, inputMonitor.getInputChannel(), Looper.myLooper()); mEventReceiversByDisplay.put(displayId, eventReceiver); @@ -1901,7 +1030,28 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, } private boolean shouldShowWindowDecor(RunningTaskInfo taskInfo) { - return mAppHandleAndHeaderVisibilityHelper.shouldShowAppHandleOrHeader(taskInfo); + if (taskInfo.getWindowingMode() == WINDOWING_MODE_FREEFORM) return true; + if (mSplitScreenController != null + && mSplitScreenController.isTaskRootOrStageRoot(taskInfo.taskId)) { + return false; + } + if (mDesktopModeKeyguardChangeListener.isKeyguardVisibleAndOccluded() + && taskInfo.isFocused) { + return false; + } + // TODO(b/347289970): Consider replacing with API + if (Flags.enableDesktopWindowingModalsPolicy() + && isSingleTopActivityTranslucent(taskInfo)) { + return false; + } + if (isSystemUIApplication(taskInfo)) { + return false; + } + return DesktopModeStatus.canEnterDesktopMode(mContext) + && !DesktopWallpaperActivity.isWallpaperTask(taskInfo) + && taskInfo.getWindowingMode() != WINDOWING_MODE_PINNED + && taskInfo.getActivityType() == ACTIVITY_TYPE_STANDARD + && !taskInfo.configuration.windowConfiguration.isAlwaysOnTop(); } private void createWindowDecoration( @@ -1916,71 +1066,45 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, } final DesktopModeWindowDecoration windowDecoration = mDesktopModeWindowDecorFactory.create( - DesktopExperienceFlags.ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY.isTrue() - ? mDisplayController.getDisplayContext(taskInfo.displayId) - : mContext, - mContext.createContextAsUser(UserHandle.of(taskInfo.userId), 0 /* flags */), + mContext, mDisplayController, - mTaskResourceLoader, - mSplitScreenController, - mDesktopUserRepositories, mTaskOrganizer, taskInfo, taskSurface, mMainHandler, - mMainExecutor, - mMainDispatcher, - mBgScope, - mBgExecutor, - mTransitions, mMainChoreographer, mSyncQueue, - mAppHeaderViewHolderFactory, - mAppHandleViewHolderFactory, - mRootTaskDisplayAreaOrganizer, - mGenericLinksParser, - mAssistContentRequester, - mWindowDecorViewHostSupplier, - mMultiInstanceHelper, - mWindowDecorCaptionRepository, - mDesktopModeEventLogger, - mDesktopModeUiEventLogger, - mDesktopModeCompatPolicy, - mDesktopState, - mDesktopConfig, - mWindowDecorationActions); + mRootTaskDisplayAreaOrganizer); mWindowDecorByTaskId.put(taskInfo.taskId, windowDecoration); - final TaskPositioner taskPositioner = mTaskPositionerFactory.create( - mTaskOrganizer, - windowDecoration, - mDisplayController, - mTransitions, - mInteractionJankMonitor, - mTransactionFactory, - mMainHandler, - mMultiDisplayDragMoveIndicatorController, - mDesktopState, - mDesktopConfig); - windowDecoration.setTaskDragResizer(taskPositioner); + final DragPositioningCallback dragPositioningCallback; + if (!DesktopModeStatus.isVeiledResizeEnabled()) { + dragPositioningCallback = new FluidResizeTaskPositioner( + mTaskOrganizer, mTransitions, windowDecoration, mDisplayController, + mDragStartListener, mTransactionFactory); + windowDecoration.setTaskDragResizer( + (FluidResizeTaskPositioner) dragPositioningCallback); + } else { + dragPositioningCallback = new VeiledResizeTaskPositioner( + mTaskOrganizer, windowDecoration, mDisplayController, + mDragStartListener, mTransitions); + windowDecoration.setTaskDragResizer( + (VeiledResizeTaskPositioner) dragPositioningCallback); + } final DesktopModeTouchEventListener touchEventListener = - new DesktopModeTouchEventListener(taskInfo, taskPositioner); + new DesktopModeTouchEventListener(taskInfo, dragPositioningCallback); + windowDecoration.setCaptionListeners( touchEventListener, touchEventListener, touchEventListener, touchEventListener); windowDecoration.setExclusionRegionListener(mExclusionRegionListener); - windowDecoration.setDragPositioningCallback(taskPositioner); + windowDecoration.setDragPositioningCallback(dragPositioningCallback); + windowDecoration.setDragDetector(touchEventListener.mDragDetector); windowDecoration.relayout(taskInfo, startT, finishT, - false /* applyStartTransactionOnDraw */, false /* shouldSetTaskPositionAndCrop */, - mFocusTransitionObserver.hasGlobalFocus(taskInfo), - mGestureExclusionTracker.getExclusionRegion(taskInfo.displayId), - /* inSyncWithTransition= */ true); - if (!DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) { - incrementEventReceiverTasks(taskInfo.displayId); - } + false /* applyStartTransactionOnDraw */, false /* shouldSetTaskPositionAndCrop */); + incrementEventReceiverTasks(taskInfo.displayId); } - @Nullable private RunningTaskInfo getOtherSplitTask(int taskId) { @SplitPosition int remainingTaskPosition = mSplitScreenController .getSplitPosition(taskId) == SPLIT_POSITION_BOTTOM_OR_RIGHT @@ -1993,47 +1117,35 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, && mSplitScreenController.isTaskInSplitScreen(taskId); } + // TODO(b/347289970): Consider replacing with API + private boolean isSystemUIApplication(RunningTaskInfo taskInfo) { + if (taskInfo.baseActivity != null) { + return (Objects.equals(taskInfo.baseActivity.getPackageName(), mSysUIPackageName)); + } + return false; + } + private void dump(PrintWriter pw, String prefix) { final String innerPrefix = prefix + " "; pw.println(prefix + "DesktopModeWindowDecorViewModel"); pw.println(innerPrefix + "DesktopModeStatus=" - + mDesktopState.canEnterDesktopMode()); + + DesktopModeStatus.canEnterDesktopMode(mContext)); pw.println(innerPrefix + "mTransitionDragActive=" + mTransitionDragActive); pw.println(innerPrefix + "mEventReceiversByDisplay=" + mEventReceiversByDisplay); - pw.println(innerPrefix + "mGestureExclusionTracker=" - + mGestureExclusionTracker); + pw.println(innerPrefix + "mWindowDecorByTaskId=" + mWindowDecorByTaskId); } - private class DesktopModeOnTaskRepositionAnimationListener - implements OnTaskRepositionAnimationListener { - @Override - public void onAnimationStart(int taskId) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration != null) { - decoration.setAnimatingTaskResizeOrReposition(true); - } - } - - @Override - public void onAnimationEnd(int taskId) { - final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration != null) { - decoration.setAnimatingTaskResizeOrReposition(false); - } - } - } - - private class DesktopModeOnTaskResizeAnimationListener + private class DeskopModeOnTaskResizeAnimationListener implements OnTaskResizeAnimationListener { @Override public void onAnimationStart(int taskId, Transaction t, Rect bounds) { final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration == null) { + if (decoration == null) { t.apply(); return; } decoration.showResizeVeil(t, bounds); - decoration.setAnimatingTaskResizeOrReposition(true); + decoration.setAnimatingTaskResize(true); } @Override @@ -2048,74 +1160,23 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); if (decoration == null) return; decoration.hideResizeVeil(); - decoration.setAnimatingTaskResizeOrReposition(false); + decoration.setAnimatingTaskResize(false); } } - private class DesktopModeRecentsTransitionStateListener - implements RecentsTransitionStateListener { - final Set<Integer> mAnimatingTaskIds = new HashSet<>(); + private class DragStartListenerImpl + implements DragPositioningCallbackUtility.DragStartListener { @Override - public void onTransitionStateChanged(int state) { - switch (state) { - case RecentsTransitionStateListener.TRANSITION_STATE_REQUESTED: - for (int n = 0; n < mWindowDecorByTaskId.size(); n++) { - int taskId = mWindowDecorByTaskId.keyAt(n); - mAnimatingTaskIds.add(taskId); - setIsRecentsTransitionRunningForTask(taskId, true); - } - return; - case RecentsTransitionStateListener.TRANSITION_STATE_NOT_RUNNING: - // No Recents transition running - clean up window decorations - for (int taskId : mAnimatingTaskIds) { - setIsRecentsTransitionRunningForTask(taskId, false); - } - mAnimatingTaskIds.clear(); - return; - default: - } - } - - private void setIsRecentsTransitionRunningForTask(int taskId, boolean isRecentsRunning) { + public void onDragStart(int taskId) { final DesktopModeWindowDecoration decoration = mWindowDecorByTaskId.get(taskId); - if (decoration == null) return; - decoration.setIsRecentsTransitionRunning(isRecentsRunning); - } - } - - /** - * Gets the number of instances of a task running, not including the specified task itself. - */ - private int checkNumberOfOtherInstances(@NonNull RunningTaskInfo info) { - // TODO(b/336289597): Rather than returning number of instances, return a list of valid - // instances, then refer to the list's size and reuse the list for Manage Windows menu. - final IActivityTaskManager activityTaskManager = ActivityTaskManager.getService(); - try { - // TODO(b/389184897): Move the following into a helper method of - // RecentsTasksController, similar to #findTaskInBackground. - final String packageName = ComponentUtils.getPackageName(info); - return activityTaskManager.getRecentTasks(Integer.MAX_VALUE, - ActivityManager.RECENT_WITH_EXCLUDED, - info.userId).getList().stream().filter( - recentTaskInfo -> { - if (recentTaskInfo.taskId == info.taskId) { - return false; - } - final String recentTaskPackageName = - ComponentUtils.getPackageName(recentTaskInfo); - return packageName != null - && packageName.equals(recentTaskPackageName); - } - ).toList().size(); - } catch (RemoteException e) { - throw new RuntimeException(e); + decoration.closeHandleMenu(); } } static class InputMonitorFactory { - InputMonitor create(InputManager inputManager, int displayId) { - return inputManager.monitorGestureInput("caption-touch", displayId); + InputMonitor create(InputManager inputManager, Context context) { + return inputManager.monitorGestureInput("caption-touch", context.getDisplayId()); } } @@ -2133,17 +1194,19 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, } } - class DesktopModeKeyguardChangeListener implements KeyguardChangeListener { + static class DesktopModeKeyguardChangeListener implements KeyguardChangeListener { + private boolean mIsKeyguardVisible; + private boolean mIsKeyguardOccluded; + @Override public void onKeyguardVisibilityChanged(boolean visible, boolean occluded, boolean animatingDismiss) { - final int size = mWindowDecorByTaskId.size(); - for (int i = size - 1; i >= 0; i--) { - final DesktopModeWindowDecoration decor = mWindowDecorByTaskId.valueAt(i); - if (decor != null) { - decor.onKeyguardStateChanged(visible, occluded); - } - } + mIsKeyguardVisible = visible; + mIsKeyguardOccluded = occluded; + } + + public boolean isKeyguardVisibleAndOccluded() { + return mIsKeyguardVisible && mIsKeyguardOccluded; } } @@ -2151,197 +1214,31 @@ public class DesktopModeWindowDecorViewModel implements WindowDecorViewModel, class DesktopModeOnInsetsChangedListener implements DisplayInsetsController.OnInsetsChangedListener { @Override - public void insetsChanged(int displayId, @NonNull InsetsState insetsState) { - final int size = mWindowDecorByTaskId.size(); - for (int i = size - 1; i >= 0; i--) { - final DesktopModeWindowDecoration decor = mWindowDecorByTaskId.valueAt(i); - if (decor == null) { + public void insetsChanged(InsetsState insetsState) { + for (int i = 0; i < insetsState.sourceSize(); i++) { + final InsetsSource source = insetsState.sourceAt(i); + if (source.getType() != statusBars()) { continue; } - if (decor.mTaskInfo.displayId == displayId - && DesktopModeFlags - .ENABLE_DESKTOP_WINDOWING_IMMERSIVE_HANDLE_HIDING.isTrue()) { - decor.onInsetsStateChanged(insetsState); + + final DesktopModeWindowDecoration decor = getFocusedDecor(); + if (decor == null) { + return; } - if (!DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) { - // If status bar inset is visible, top task is not in immersive mode. - // This value is only needed when the App Handle input is being handled - // through the global input monitor (hence the flag check) to ignore gestures - // when the app is in immersive mode. When disabled, the view itself handles - // input, and since it's removed when in immersive there's no need to track - // this here. - mInImmersiveMode = !InsetsStateKt.isVisible(insetsState, statusBars()); + // If status bar inset is visible, top task is not in immersive mode + final boolean inImmersiveMode = !source.isVisible(); + // Calls WindowDecoration#relayout if decoration visibility needs to be updated + if (inImmersiveMode != mInImmersiveMode) { + if (Flags.enableDesktopWindowingImmersiveHandleHiding()) { + decor.relayout(decor.mTaskInfo); + } + mInImmersiveMode = inImmersiveMode; } + + return; } } } - - private InputMethod getInputMethod(MotionEvent ev) { - return DesktopModeEventLogger.getInputMethodFromMotionEvent(ev); - } - - private static class DefaultWindowDecorationActions implements WindowDecorationActions { - private final DesktopModeWindowDecorViewModel mViewModel; - private final DesktopTasksController mDesktopTasksController; - private final DesktopModeUiEventLogger mDesktopModeUiEventLogger; - private final CompatUIHandler mCompatUI; - private final Context mContext; - - DefaultWindowDecorationActions( - @NonNull DesktopModeWindowDecorViewModel viewModel, - @NonNull DesktopTasksController desktopTasksController, - @NonNull Context context, - @NonNull DesktopModeUiEventLogger desktopModeUiEventLogger, - @NonNull CompatUIHandler compatUI - ) { - mViewModel = viewModel; - mDesktopTasksController = desktopTasksController; - mDesktopModeUiEventLogger = desktopModeUiEventLogger; - mCompatUI = compatUI; - mContext = context; - } - - @Override - public void onMaximizeOrRestore(int taskId, - @NonNull DesktopModeEventLogger.Companion.InputMethod inputMethod) { - mViewModel.onToggleSizeInteraction(taskId, - ToggleTaskSizeInteraction.AmbiguousSource.MAXIMIZE_MENU, - inputMethod); - } - - @Override - public void onMinimize(@NonNull RunningTaskInfo taskInfo) { - if (DesktopExperienceFlags - .ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS.isTrue()) { - final int nextFocusedTaskId = mDesktopTasksController.getNextFocusedTask(taskInfo); - DesktopModeWindowDecoration nextFocusedWindow = - mViewModel.mWindowDecorByTaskId.get(nextFocusedTaskId); - if (nextFocusedWindow != null) { - nextFocusedWindow.a11yAnnounceNewFocusedWindow(); - } - } - mDesktopTasksController.minimizeTask(taskInfo, MinimizeReason.MINIMIZE_BUTTON); - } - - @Override - public void onImmersiveOrRestore(@NonNull ActivityManager.RunningTaskInfo taskInfo) { - mViewModel.onEnterOrExitImmersive(taskInfo); - } - - @Override - public void onLeftSnap(int taskId, - @NonNull DesktopModeEventLogger.Companion.InputMethod inputMethod) { - mViewModel.onSnapResize(taskId, /* isLeft= */ true, inputMethod, /* fromMenu= */ true); - } - - @Override - public void onRightSnap(int taskId, - @NonNull DesktopModeEventLogger.Companion.InputMethod inputMethod) { - mViewModel.onSnapResize(taskId, /* isLeft= */ false, inputMethod, /* fromMenu= */ true); - } - - @Override - public void onToFullscreen(int taskId) { - mViewModel.moveToFullscreen(taskId); - } - - @Override - public void onToSplitScreen(int taskId) { - mViewModel.moveToSplit(taskId); - } - - @Override - public void onToDesktop(int taskId, @NonNull DesktopModeTransitionSource transitionSource) { - mViewModel.moveToDesktop(taskId, transitionSource); - } - - @Override - public void onToFloat(int taskId) { - mViewModel.moveToFloat(taskId); - } - - @Override - public void onOpenInBrowser(int taskId, @NonNull Intent intent) { - mViewModel.openInBrowser(taskId, intent); - } - - @Override - public void onOpenInstance(@NonNull ActivityManager.RunningTaskInfo taskInfo, - int requestedTaskId) { - mDesktopTasksController.openInstance(taskInfo, requestedTaskId); - mDesktopModeUiEventLogger.log(taskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_MULTI_INSTANCE_MANAGE_WINDOWS_ICON_CLICK); - } - - @Override - public void onManageWindows(int taskId) { - mViewModel.onManageWindows(taskId); - } - - @Override - public void onRestart(int taskId) { - mCompatUI.sendCompatUIRequest(new CompatUIRequests.DisplayCompatShowRestartDialog( - taskId)); - } - - @Override - public void onChangeAspectRatio(@NonNull ActivityManager.RunningTaskInfo taskInfo) { - CompatUIController.launchUserAspectRatioSettings(mContext, taskInfo); - } - - @Override - public void onNewWindow(int taskId) { - mViewModel.launchNewWindow(taskId); - } - } - - - @VisibleForTesting - static class TaskPositionerFactory { - TaskPositioner create( - ShellTaskOrganizer taskOrganizer, - DesktopModeWindowDecoration windowDecoration, - DisplayController displayController, - Transitions transitions, - InteractionJankMonitor interactionJankMonitor, - Supplier<SurfaceControl.Transaction> transactionFactory, - Handler handler, - MultiDisplayDragMoveIndicatorController multiDisplayDragMoveIndicatorController, - DesktopState desktopState, - DesktopConfig desktopConfig) { - final TaskPositioner taskPositioner = desktopConfig.isVeiledResizeEnabled() - // TODO(b/383632995): Update when the flag is launched. - ? (DesktopExperienceFlags.ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG.isTrue() - ? new MultiDisplayVeiledResizeTaskPositioner( - taskOrganizer, - windowDecoration, - displayController, - transitions, - interactionJankMonitor, - handler, - multiDisplayDragMoveIndicatorController, - desktopState) - : new VeiledResizeTaskPositioner( - taskOrganizer, - windowDecoration, - displayController, - transitions, - interactionJankMonitor, - handler, - desktopState)) - : new FluidResizeTaskPositioner( - taskOrganizer, - transitions, - windowDecoration, - displayController, - transactionFactory, - desktopState); - - if (DesktopModeFlags.ENABLE_WINDOWING_SCALED_RESIZING.isTrue()) { - return new FixedAspectRatioTaskPositionerDecorator(windowDecoration, - taskPositioner); - } - return taskPositioner; - } - } } + + diff --git a/wmshell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecoration.java b/wmshell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecoration.java index 35be3e6e21..4d597cac88 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecoration.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecoration.java @@ -19,117 +19,63 @@ package com.android.wm.shell.windowdecor; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.windowingModeToString; -import static android.view.InsetsSource.FLAG_FORCE_CONSUMING; -import static android.view.InsetsSource.FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR; import static android.view.MotionEvent.ACTION_CANCEL; import static android.view.MotionEvent.ACTION_DOWN; import static android.view.MotionEvent.ACTION_UP; -import static android.view.WindowManager.TRANSIT_CHANGE; -import static android.window.DesktopModeFlags.ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION; -import static android.window.DesktopModeFlags.ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS; -import static com.android.internal.policy.SystemBarUtils.getDesktopViewAppHeaderHeightId; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.windowdecor.DragPositioningCallbackUtility.DragEventListener; -import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.DisabledEdge; -import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.DisabledEdge.NONE; +import static com.android.launcher3.icons.BaseIconFactory.MODE_DEFAULT; import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.getFineResizeCornerSize; import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.getLargeResizeCornerSize; import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.getResizeEdgeHandleSize; -import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.getResizeHandleEdgeInset; -import static com.android.wm.shell.windowdecor.viewholder.AppHandleIdentifier.AppHandleWindowingMode; import android.annotation.NonNull; -import android.annotation.Nullable; import android.app.ActivityManager; import android.app.WindowConfiguration.WindowingMode; -import android.app.assist.AssistContent; -import android.content.ComponentName; import android.content.Context; -import android.content.Intent; +import android.content.pm.ActivityInfo; +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageManager; import android.content.res.Configuration; import android.content.res.Resources; import android.graphics.Bitmap; -import android.graphics.Insets; import android.graphics.Point; import android.graphics.PointF; import android.graphics.Rect; import android.graphics.Region; -import android.net.Uri; +import android.graphics.drawable.Drawable; import android.os.Handler; import android.os.Trace; -import android.os.UserHandle; +import android.util.Log; import android.util.Size; import android.view.Choreographer; -import android.view.Display; -import android.view.InsetsState; import android.view.MotionEvent; import android.view.SurfaceControl; import android.view.View; import android.view.ViewConfiguration; -import android.view.WindowInsets; import android.view.WindowManager; -import android.view.WindowManagerGlobal; import android.widget.ImageButton; -import android.window.DesktopExperienceFlags; -import android.window.DesktopModeFlags; -import android.window.TaskSnapshot; import android.window.WindowContainerTransaction; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.policy.SystemBarUtils; -import com.android.window.flags2.Flags; +import com.android.internal.policy.ScreenDecorationsUtils; +import com.android.launcher3.icons.BaseIconFactory; +import com.android.launcher3.icons.IconProvider; +import com.android.window.flags.Flags; import com.android.wm.shell.R; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.apptoweb.AppToWebGenericLinksParser; -import com.android.wm.shell.apptoweb.AppToWebUtils; -import com.android.wm.shell.apptoweb.AssistContentRequester; -import com.android.wm.shell.apptoweb.OpenByDefaultDialog; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayLayout; -import com.android.wm.shell.common.MultiInstanceHelper; -import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.desktopmode.CaptionState; -import com.android.wm.shell.desktopmode.DesktopModeEventLogger; -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger; -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum; -import com.android.wm.shell.desktopmode.DesktopModeUtils; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.desktopmode.WindowDecorCaptionRepository; -import com.android.wm.shell.shared.annotations.ShellBackgroundThread; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; -import com.android.wm.shell.shared.desktopmode.DesktopConfig; -import com.android.wm.shell.shared.desktopmode.DesktopModeCompatPolicy; -import com.android.wm.shell.shared.desktopmode.DesktopState; -import com.android.wm.shell.shared.multiinstance.ManageWindowsViewContainer; +import com.android.wm.shell.shared.DesktopModeStatus; import com.android.wm.shell.splitscreen.SplitScreenController; -import com.android.wm.shell.transition.Transitions; -import com.android.wm.shell.windowdecor.common.DecorThemeUtil; -import com.android.wm.shell.windowdecor.common.Theme; -import com.android.wm.shell.windowdecor.common.WindowDecorTaskResourceLoader; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHostSupplier; import com.android.wm.shell.windowdecor.extension.TaskInfoKt; -import com.android.wm.shell.windowdecor.viewholder.AppHandleIdentifier; import com.android.wm.shell.windowdecor.viewholder.AppHandleViewHolder; import com.android.wm.shell.windowdecor.viewholder.AppHeaderViewHolder; import com.android.wm.shell.windowdecor.viewholder.WindowDecorationViewHolder; -import kotlin.Pair; import kotlin.Unit; -import kotlin.jvm.functions.Function0; -import kotlin.jvm.functions.Function1; -import kotlinx.coroutines.CoroutineScope; -import kotlinx.coroutines.MainCoroutineDispatcher; - -import java.util.List; -import java.util.function.BiConsumer; -import java.util.function.BiFunction; -import java.util.function.Consumer; import java.util.function.Supplier; /** @@ -141,23 +87,9 @@ import java.util.function.Supplier; public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLinearLayout> { private static final String TAG = "DesktopModeWindowDecoration"; - @VisibleForTesting - static final long CLOSE_MAXIMIZE_MENU_DELAY_MS = 150L; - - private final @ShellMainThread Handler mHandler; - private final @ShellMainThread ShellExecutor mMainExecutor; - private final @ShellMainThread MainCoroutineDispatcher mMainDispatcher; - private final @ShellBackgroundThread CoroutineScope mBgScope; - private final @ShellBackgroundThread ShellExecutor mBgExecutor; - private final Transitions mTransitions; + private final Handler mHandler; private final Choreographer mChoreographer; private final SyncTransactionQueue mSyncQueue; - private final SplitScreenController mSplitScreenController; - private final WindowManagerWrapper mWindowManagerWrapper; - private final @NonNull WindowDecorTaskResourceLoader mTaskResourceLoader; - private final DesktopState mDesktopState; - private final DesktopConfig mDesktopConfig; - private final WindowDecorationActions mWindowDecorationActions; private WindowDecorationViewHolder mWindowDecorViewHolder; private View.OnClickListener mOnCaptionButtonClickListener; @@ -166,204 +98,69 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin private View.OnGenericMotionListener mOnCaptionGenericMotionListener; private DragPositioningCallback mDragPositioningCallback; private DragResizeInputListener mDragResizeListener; + private DragDetector mDragDetector; + private Runnable mCurrentViewHostRunnable = null; private RelayoutParams mRelayoutParams = new RelayoutParams(); - private DisabledEdge mDisabledResizingEdge = - NONE; private final WindowDecoration.RelayoutResult<WindowDecorLinearLayout> mResult = new WindowDecoration.RelayoutResult<>(); + private final Runnable mViewHostRunnable = + () -> updateViewHost(mRelayoutParams, null /* onDrawTransaction */, mResult); private final Point mPositionInParent = new Point(); private HandleMenu mHandleMenu; - private boolean mMinimumInstancesFound; - private ManageWindowsViewContainer mManageWindowsMenu; private MaximizeMenu mMaximizeMenu; - private OpenByDefaultDialog mOpenByDefaultDialog; - private ResizeVeil mResizeVeil; + private Bitmap mAppIconBitmap; + private Bitmap mResizeVeilBitmap; - private CapturedLink mCapturedLink; - private Uri mGenericLink; - private Uri mWebUri; + private CharSequence mAppName; private ExclusionRegionListener mExclusionRegionListener; - private final AppHeaderViewHolder.Factory mAppHeaderViewHolderFactory; - private final AppHandleViewHolder.Factory mAppHandleViewHolderFactory; private final RootTaskDisplayAreaOrganizer mRootTaskDisplayAreaOrganizer; - private final MaximizeMenuFactory mMaximizeMenuFactory; - private final HandleMenuFactory mHandleMenuFactory; - private final AppToWebGenericLinksParser mGenericLinksParser; - private final AssistContentRequester mAssistContentRequester; - private final DesktopModeCompatPolicy mDesktopModeCompatPolicy; - // Hover state for the maximize menu and button. The menu will remain open as long as either of - // these is true. See {@link #onMaximizeHoverStateChanged()}. - private boolean mIsAppHeaderMaximizeButtonHovered = false; - private boolean mIsMaximizeMenuHovered = false; - // Used to schedule the closing of the maximize menu when neither of the button or menu are - // being hovered. There's a small delay after stopping the hover, to allow a quick reentry - // to cancel the close. - private final Runnable mCloseMaximizeWindowRunnable = this::closeMaximizeMenu; - private final MultiInstanceHelper mMultiInstanceHelper; - private final WindowDecorCaptionRepository mWindowDecorCaptionRepository; - private final DesktopUserRepositories mDesktopUserRepositories; - private final DesktopModeUiEventLogger mDesktopModeUiEventLogger; - private boolean mIsRecentsTransitionRunning = false; - private boolean mIsDragging = false; - private Runnable mLoadAppInfoRunnable; - private Runnable mSetAppInfoRunnable; - - private final Function0<Unit> mCloseMaximizeMenuFunction = () -> { - closeMaximizeMenu(); - return Unit.INSTANCE; - }; - - private final Function0<Unit> mCloseHandleMenuFunction = () -> { - closeHandleMenu(); - return Unit.INSTANCE; - }; - - public DesktopModeWindowDecoration( + DesktopModeWindowDecoration( Context context, - @NonNull Context userContext, DisplayController displayController, - @NonNull WindowDecorTaskResourceLoader taskResourceLoader, - SplitScreenController splitScreenController, - DesktopUserRepositories desktopUserRepositories, ShellTaskOrganizer taskOrganizer, ActivityManager.RunningTaskInfo taskInfo, SurfaceControl taskSurface, - @ShellMainThread Handler handler, - @ShellMainThread ShellExecutor mainExecutor, - @ShellMainThread MainCoroutineDispatcher mainDispatcher, - @ShellBackgroundThread CoroutineScope bgScope, - @ShellBackgroundThread ShellExecutor bgExecutor, - Transitions transitions, + Handler handler, Choreographer choreographer, SyncTransactionQueue syncQueue, - AppHeaderViewHolder.Factory appHeaderViewHolderFactory, - AppHandleViewHolder.Factory appHandleViewHolderFactory, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - AppToWebGenericLinksParser genericLinksParser, - AssistContentRequester assistContentRequester, - @NonNull WindowDecorViewHostSupplier<WindowDecorViewHost> windowDecorViewHostSupplier, - MultiInstanceHelper multiInstanceHelper, - WindowDecorCaptionRepository windowDecorCaptionRepository, - DesktopModeEventLogger desktopModeEventLogger, - DesktopModeUiEventLogger desktopModeUiEventLogger, - DesktopModeCompatPolicy desktopModeCompatPolicy, - DesktopState desktopState, - DesktopConfig desktopConfig, - WindowDecorationActions windowDecorationActions) { - this (context, userContext, displayController, taskResourceLoader, splitScreenController, - desktopUserRepositories, taskOrganizer, taskInfo, taskSurface, handler, - mainExecutor, mainDispatcher, bgScope, bgExecutor, transitions, choreographer, - syncQueue, appHeaderViewHolderFactory, appHandleViewHolderFactory, - rootTaskDisplayAreaOrganizer, genericLinksParser, assistContentRequester, + RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer) { + this (context, displayController, taskOrganizer, taskInfo, taskSurface, + handler, choreographer, syncQueue, rootTaskDisplayAreaOrganizer, SurfaceControl.Builder::new, SurfaceControl.Transaction::new, - WindowContainerTransaction::new, SurfaceControl::new, new WindowManagerWrapper( - context.getSystemService(WindowManager.class)), - new SurfaceControlViewHostFactory() {}, - windowDecorViewHostSupplier, - DefaultMaximizeMenuFactory.INSTANCE, - DefaultHandleMenuFactory.INSTANCE, multiInstanceHelper, - windowDecorCaptionRepository, desktopModeEventLogger, - desktopModeUiEventLogger, desktopModeCompatPolicy, - desktopState, desktopConfig, windowDecorationActions); + WindowContainerTransaction::new, SurfaceControl::new, + new SurfaceControlViewHostFactory() {}); } DesktopModeWindowDecoration( Context context, - @NonNull Context userContext, DisplayController displayController, - @NonNull WindowDecorTaskResourceLoader taskResourceLoader, - SplitScreenController splitScreenController, - DesktopUserRepositories desktopUserRepositories, ShellTaskOrganizer taskOrganizer, ActivityManager.RunningTaskInfo taskInfo, SurfaceControl taskSurface, - @ShellMainThread Handler handler, - @ShellMainThread ShellExecutor mainExecutor, - @ShellMainThread MainCoroutineDispatcher mainDispatcher, - @ShellBackgroundThread CoroutineScope bgScope, - @ShellBackgroundThread ShellExecutor bgExecutor, - Transitions transitions, + Handler handler, Choreographer choreographer, SyncTransactionQueue syncQueue, - AppHeaderViewHolder.Factory appHeaderViewHolderFactory, - AppHandleViewHolder.Factory appHandleViewHolderFactory, RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - AppToWebGenericLinksParser genericLinksParser, - AssistContentRequester assistContentRequester, Supplier<SurfaceControl.Builder> surfaceControlBuilderSupplier, Supplier<SurfaceControl.Transaction> surfaceControlTransactionSupplier, Supplier<WindowContainerTransaction> windowContainerTransactionSupplier, Supplier<SurfaceControl> surfaceControlSupplier, - WindowManagerWrapper windowManagerWrapper, - SurfaceControlViewHostFactory surfaceControlViewHostFactory, - @NonNull WindowDecorViewHostSupplier<WindowDecorViewHost> windowDecorViewHostSupplier, - MaximizeMenuFactory maximizeMenuFactory, - HandleMenuFactory handleMenuFactory, - MultiInstanceHelper multiInstanceHelper, - WindowDecorCaptionRepository windowDecorCaptionRepository, - DesktopModeEventLogger desktopModeEventLogger, - DesktopModeUiEventLogger desktopModeUiEventLogger, - DesktopModeCompatPolicy desktopModeCompatPolicy, - DesktopState desktopState, - DesktopConfig desktopConfig, - WindowDecorationActions windowDecorationActions) { - super(context, handler, transitions, userContext, displayController, taskOrganizer, - taskInfo, taskSurface, surfaceControlBuilderSupplier, - surfaceControlTransactionSupplier, windowContainerTransactionSupplier, - surfaceControlSupplier, surfaceControlViewHostFactory, windowDecorViewHostSupplier, - desktopModeEventLogger); - mSplitScreenController = splitScreenController; + SurfaceControlViewHostFactory surfaceControlViewHostFactory) { + super(context, displayController, taskOrganizer, taskInfo, taskSurface, + surfaceControlBuilderSupplier, surfaceControlTransactionSupplier, + windowContainerTransactionSupplier, surfaceControlSupplier, + surfaceControlViewHostFactory); mHandler = handler; - mMainExecutor = mainExecutor; - mMainDispatcher = mainDispatcher; - mBgScope = bgScope; - mBgExecutor = bgExecutor; - mTransitions = transitions; mChoreographer = choreographer; mSyncQueue = syncQueue; - mAppHeaderViewHolderFactory = appHeaderViewHolderFactory; - mAppHandleViewHolderFactory = appHandleViewHolderFactory; mRootTaskDisplayAreaOrganizer = rootTaskDisplayAreaOrganizer; - mGenericLinksParser = genericLinksParser; - mAssistContentRequester = assistContentRequester; - mMaximizeMenuFactory = maximizeMenuFactory; - mHandleMenuFactory = handleMenuFactory; - mMultiInstanceHelper = multiInstanceHelper; - mWindowManagerWrapper = windowManagerWrapper; - mWindowDecorCaptionRepository = windowDecorCaptionRepository; - mDesktopUserRepositories = desktopUserRepositories; - mTaskResourceLoader = taskResourceLoader; - mTaskResourceLoader.onWindowDecorCreated(taskInfo); - mDesktopModeCompatPolicy = desktopModeCompatPolicy; - mDesktopModeUiEventLogger = desktopModeUiEventLogger; - mDesktopState = desktopState; - mDesktopConfig = desktopConfig; - mWindowDecorationActions = windowDecorationActions; - } - - /** - * Adds a drag resize observer that gets notified on the task being drag resized. - * - * @param dragResizeListener The observing object to be added. - */ - public void addDragResizeListener(DragEventListener dragResizeListener) { - mTaskDragResizer.addDragEventListener(dragResizeListener); - } - - /** - * Removes an already existing drag resize observer. - * - * @param dragResizeListener observer to be removed. - */ - public void removeDragResizeListener(DragEventListener dragResizeListener) { - mTaskDragResizer.removeDragEventListener(dragResizeListener); } void setCaptionListeners( @@ -385,306 +182,161 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin mDragPositioningCallback = dragPositioningCallback; } - @Override - void onExclusionRegionChanged(@NonNull Region exclusionRegion) { - if (Flags.appHandleNoRelayoutOnExclusionChange() && isAppHandle(mWindowDecorViewHolder)) { - // Avoid unnecessary relayouts for app handle. See b/383672263 - return; - } - relayout(mTaskInfo, mHasGlobalFocus, exclusionRegion); + void setDragDetector(DragDetector dragDetector) { + mDragDetector = dragDetector; + mDragDetector.setTouchSlop(ViewConfiguration.get(mContext).getScaledTouchSlop()); } @Override - void relayout(ActivityManager.RunningTaskInfo taskInfo, boolean hasGlobalFocus, - @NonNull Region displayExclusionRegion) { + void relayout(ActivityManager.RunningTaskInfo taskInfo) { final SurfaceControl.Transaction t = mSurfaceControlTransactionSupplier.get(); - // The visibility, crop and position of the task should only be set when a task is - // fluid resizing. In all other cases, it is expected that the transition handler sets - // those task properties to allow the handler time to animate with full control of the task - // leash. In general, allowing the window decoration to set any of these is likely to cause - // incorrect frames and flickering because relayouts from TaskListener#onTaskInfoChanged - // aren't synchronized with shell transition callbacks, so if they come too early it - // might show/hide or crop the task at a bad time. - // Fluid resizing is exempt from this because it intentionally doesn't use shell - // transitions to resize the task, so onTaskInfoChanged relayouts is the only way to make - // sure the crop is set correctly. - final boolean shouldSetTaskVisibilityPositionAndCrop = - !mDesktopConfig.isVeiledResizeEnabled() - && mTaskDragResizer.isResizingOrAnimating(); + // The crop and position of the task should only be set when a task is fluid resizing. In + // all other cases, it is expected that the transition handler positions and crops the task + // in order to allow the handler time to animate before the task before the final + // position and crop are set. + final boolean shouldSetTaskPositionAndCrop = !DesktopModeStatus.isVeiledResizeEnabled() + && mTaskDragResizer.isResizingOrAnimating(); // For headers only (i.e. in freeform): use |applyStartTransactionOnDraw| so that the // transaction (that applies task crop) is synced with the buffer transaction (that draws // the View). Both will be shown on screen at the same, whereas applying them independently // causes flickering. See b/270202228. - final boolean applyTransactionOnDraw = taskInfo.isFreeform(); - relayout(taskInfo, t, t, applyTransactionOnDraw, shouldSetTaskVisibilityPositionAndCrop, - hasGlobalFocus, displayExclusionRegion, /* inSyncWithTransition= */ false); + final boolean applyTransactionOnDraw = + taskInfo.getWindowingMode() == WINDOWING_MODE_FREEFORM; + relayout(taskInfo, t, t, applyTransactionOnDraw, shouldSetTaskPositionAndCrop); if (!applyTransactionOnDraw) { t.apply(); } } - /** - * Disables resizing for the given edge. - * - * @param disabledResizingEdge edge to disable. - * @param shouldDelayUpdate whether the update should be executed immediately or delayed. - */ - public void updateDisabledResizingEdge( - DragResizeWindowGeometry.DisabledEdge disabledResizingEdge, boolean shouldDelayUpdate) { - mDisabledResizingEdge = disabledResizingEdge; - final boolean inFullImmersive = mDesktopUserRepositories.getCurrent() - .isTaskInFullImmersiveState(mTaskInfo.taskId); - if (shouldDelayUpdate) { - return; - } - updateDragResizeListenerIfNeeded(mDecorationContainerSurface, inFullImmersive); - } - void relayout(ActivityManager.RunningTaskInfo taskInfo, SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT, - boolean applyStartTransactionOnDraw, boolean shouldSetTaskVisibilityPositionAndCrop, - boolean hasGlobalFocus, @NonNull Region displayExclusionRegion, - boolean inSyncWithTransition) { + boolean applyStartTransactionOnDraw, boolean shouldSetTaskPositionAndCrop) { Trace.beginSection("DesktopModeWindowDecoration#relayout"); - - if (DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_APP_TO_WEB.isTrue()) { - setCapturedLink(taskInfo.capturedLink, taskInfo.capturedLinkTimestamp); + if (taskInfo.getWindowingMode() == WINDOWING_MODE_FREEFORM) { + // The Task is in Freeform mode -> show its header in sync since it's an integral part + // of the window itself - a delayed header might cause bad UX. + relayoutInSync(taskInfo, startT, finishT, applyStartTransactionOnDraw, + shouldSetTaskPositionAndCrop); + } else { + // The Task is outside Freeform mode -> allow the handle view to be delayed since the + // handle is just a small addition to the window. + relayoutWithDelayedViewHost(taskInfo, startT, finishT, applyStartTransactionOnDraw, + shouldSetTaskPositionAndCrop); } + Trace.endSection(); + } - if (DesktopExperienceFlags.ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY.isTrue()) { - final Context dc = mDisplayController.getDisplayContext(taskInfo.displayId); - if (dc != null) { - mWindowManagerWrapper.updateWindowManager(dc.getSystemService(WindowManager.class)); - } + /** Run the whole relayout phase immediately without delay. */ + private void relayoutInSync(ActivityManager.RunningTaskInfo taskInfo, + SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT, + boolean applyStartTransactionOnDraw, boolean shouldSetTaskPositionAndCrop) { + // Clear the current ViewHost runnable as we will update the ViewHost here + clearCurrentViewHostRunnable(); + updateRelayoutParamsAndSurfaces(taskInfo, startT, finishT, applyStartTransactionOnDraw, + shouldSetTaskPositionAndCrop); + if (mResult.mRootView != null) { + updateViewHost(mRelayoutParams, startT, mResult); } + } + /** + * Clear the current ViewHost runnable - to ensure it doesn't run once relayout params have been + * updated. + */ + private void clearCurrentViewHostRunnable() { + if (mCurrentViewHostRunnable != null) { + mHandler.removeCallbacks(mCurrentViewHostRunnable); + mCurrentViewHostRunnable = null; + } + } + + /** + * Relayout the window decoration but repost some of the work, to unblock the current callstack. + */ + private void relayoutWithDelayedViewHost(ActivityManager.RunningTaskInfo taskInfo, + SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT, + boolean applyStartTransactionOnDraw, boolean shouldSetTaskPositionAndCrop) { + if (applyStartTransactionOnDraw) { + throw new IllegalArgumentException( + "We cannot both sync viewhost ondraw and delay viewhost creation."); + } + // Clear the current ViewHost runnable as we will update the ViewHost here + clearCurrentViewHostRunnable(); + updateRelayoutParamsAndSurfaces(taskInfo, startT, finishT, + false /* applyStartTransactionOnDraw */, shouldSetTaskPositionAndCrop); + if (mResult.mRootView == null) { + // This means something blocks the window decor from showing, e.g. the task is hidden. + // Nothing is set up in this case including the decoration surface. + return; + } + // Store the current runnable so it can be removed if we start a new relayout. + mCurrentViewHostRunnable = mViewHostRunnable; + mHandler.post(mCurrentViewHostRunnable); + } + + private void updateRelayoutParamsAndSurfaces(ActivityManager.RunningTaskInfo taskInfo, + SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT, + boolean applyStartTransactionOnDraw, boolean shouldSetTaskPositionAndCrop) { + Trace.beginSection("DesktopModeWindowDecoration#updateRelayoutParamsAndSurfaces"); if (isHandleMenuActive()) { - mHandleMenu.relayout( - startT, - mResult.mCaptionX, - // Add top padding to the caption Y so that the menu is shown over what is the - // actual contents of the caption, ignoring padding. This is currently relevant - // to the Header in desktop immersive. - mResult.mCaptionY + mResult.mCaptionTopPadding); + mHandleMenu.relayout(startT); } - if (isOpenByDefaultDialogActive()) { - mOpenByDefaultDialog.relayout(taskInfo); - } - - final boolean inFullImmersive = mDesktopUserRepositories.getProfile(taskInfo.userId) - .isTaskInFullImmersiveState(taskInfo.taskId); - updateRelayoutParams(mRelayoutParams, mContext, taskInfo, mSplitScreenController, - applyStartTransactionOnDraw, shouldSetTaskVisibilityPositionAndCrop, - mIsStatusBarVisible, mIsKeyguardVisibleAndOccluded, inFullImmersive, - mIsDragging, mDisplayController.getInsetsState(taskInfo.displayId), hasGlobalFocus, - displayExclusionRegion, - /* shouldIgnoreCornerRadius= */ mIsRecentsTransitionRunning - && DesktopModeFlags - .ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX.isTrue(), - mDesktopModeCompatPolicy.shouldExcludeCaptionFromAppBounds(taskInfo), - mDesktopConfig, inSyncWithTransition); + updateRelayoutParams(mRelayoutParams, mContext, taskInfo, applyStartTransactionOnDraw, + shouldSetTaskPositionAndCrop); final WindowDecorLinearLayout oldRootView = mResult.mRootView; final SurfaceControl oldDecorationSurface = mDecorationContainerSurface; final WindowContainerTransaction wct = new WindowContainerTransaction(); - relayout(mRelayoutParams, startT, finishT, wct, oldRootView, mResult); + Trace.beginSection("DesktopModeWindowDecoration#relayout-updateViewsAndSurfaces"); + updateViewsAndSurfaces(mRelayoutParams, startT, finishT, wct, oldRootView, mResult); + Trace.endSection(); // After this line, mTaskInfo is up-to-date and should be used instead of taskInfo - if (!wct.isEmpty()) { - if (DesktopExperienceFlags.ENABLE_DESKTOP_WINDOWING_PIP.isTrue() - && mRelayoutParams.mShouldSetAppBounds) { - // When expanding from PiP to freeform, we need to start a Transition for applying - // the inset changes so that PiP receives the insets for the final bounds. This is - // because |mShouldSetAppBounds| applies the insets by modifying app bounds, which - // can cause a bounds offset that needs to be reported to transition handlers. - Trace.beginSection("DesktopModeWindowDecoration#relayout-startTransition"); - mHandler.post(() -> mTransitions.startTransition(TRANSIT_CHANGE, wct, - /* handler= */ null)); - } else { - Trace.beginSection("DesktopModeWindowDecoration#relayout-applyWCT"); - mBgExecutor.execute(() -> mTaskOrganizer.applyTransaction(wct)); - } - Trace.endSection(); - } + Trace.beginSection("DesktopModeWindowDecoration#relayout-applyWCT"); + mTaskOrganizer.applyTransaction(wct); + Trace.endSection(); if (mResult.mRootView == null) { // This means something blocks the window decor from showing, e.g. the task is hidden. // Nothing is set up in this case including the decoration surface. - if (mDesktopState.canEnterDesktopMode() && isEducationOrHandleReportingEnabled()) { - notifyNoCaptionHandle(); - } - mExclusionRegionListener.onExclusionRegionDismissed(mTaskInfo.taskId); - disposeStatusBarInputLayer(); - Trace.endSection(); // DesktopModeWindowDecoration#relayout + Trace.endSection(); // DesktopModeWindowDecoration#updateRelayoutParamsAndSurfaces return; } - if (DesktopModeFlags.SKIP_DECOR_VIEW_RELAYOUT_WHEN_CLOSING_BUGFIX.isTrue() - ? (oldRootView != mResult.mRootView && taskInfo.isVisibleRequested) - : oldRootView != mResult.mRootView) { - disposeStatusBarInputLayer(); + if (oldRootView != mResult.mRootView) { mWindowDecorViewHolder = createViewHolder(); - // Load these only when first creating the view. - loadTaskNameAndIconInBackground((name, icon) -> { - final AppHeaderViewHolder appHeader = asAppHeader(mWindowDecorViewHolder); - if (appHeader != null) { - appHeader.setAppName(name); - appHeader.setAppIcon(icon); - if (mDesktopState.canEnterDesktopMode() - && isEducationOrHandleReportingEnabled()) { - notifyCaptionStateChanged(); - } - } - }); - } - - if (mDesktopState.canEnterDesktopMode() && isEducationOrHandleReportingEnabled()) { - notifyCaptionStateChanged(); - } - - Trace.beginSection("DesktopModeWindowDecoration#relayout-bindData"); - if (isAppHandle(mWindowDecorViewHolder)) { - updateAppHandleViewHolder(); - } else { - updateAppHeaderViewHolder(inFullImmersive, hasGlobalFocus); } + Trace.beginSection("DesktopModeWindowDecoration#relayout-binding"); + mWindowDecorViewHolder.bindData(mTaskInfo); Trace.endSection(); - if (!hasGlobalFocus) { + if (!mTaskInfo.isFocused) { closeHandleMenu(); - closeManageWindowsMenu(); closeMaximizeMenu(); - if (!DesktopExperienceFlags.ENABLE_APP_HANDLE_POSITION_REPORTING.isTrue()) { - notifyNoCaptionHandle(); - } - } - updateDragResizeListenerIfNeeded(oldDecorationSurface, inFullImmersive); - updateMaximizeMenu(startT, inFullImmersive); - Trace.endSection(); // DesktopModeWindowDecoration#relayout - } - - /** - * Loads the task's name and icon in a background thread and posts the results back in the - * main thread. - */ - private void loadTaskNameAndIconInBackground(BiConsumer<CharSequence, Bitmap> onResult) { - if (mWindowDecorViewHolder == null) return; - if (asAppHeader(mWindowDecorViewHolder) == null) { - // Only needed when drawing a header. - return; - } - if (mLoadAppInfoRunnable != null) { - mBgExecutor.removeCallbacks(mLoadAppInfoRunnable); - } - if (mSetAppInfoRunnable != null) { - mMainExecutor.removeCallbacks(mSetAppInfoRunnable); - } - mLoadAppInfoRunnable = () -> { - final CharSequence name = mTaskResourceLoader.getName(mTaskInfo); - final Bitmap icon = mTaskResourceLoader.getHeaderIcon(mTaskInfo); - mSetAppInfoRunnable = () -> { - onResult.accept(name, icon); - }; - mMainExecutor.execute(mSetAppInfoRunnable); - }; - mBgExecutor.execute(mLoadAppInfoRunnable); - } - - private boolean showInputLayer() { - if (!DesktopModeFlags.ENABLE_INPUT_LAYER_TRANSITION_FIX.isTrue()) { - return isCaptionVisible(); - } - // Don't show the input layer during the recents transition, otherwise it could become - // touchable while in overview, during quick-switch or even for a short moment after going - // Home. - return isCaptionVisible() && !mIsRecentsTransitionRunning; - } - - private boolean isCaptionVisible() { - return mTaskInfo.isVisible && mIsCaptionVisible; - } - - private void setCapturedLink(Uri capturedLink, long timeStamp) { - if (capturedLink == null - || (mCapturedLink != null && mCapturedLink.mTimeStamp == timeStamp)) { - return; - } - mCapturedLink = new CapturedLink(capturedLink, timeStamp); - } - - @Nullable - private Intent getBrowserLink() { - final Uri browserLink; - if (mWebUri != null) { - browserLink = mWebUri; - } else if (isCapturedLinkAvailable()) { - browserLink = mCapturedLink.mUri; - } else { - browserLink = mGenericLink; } - if (browserLink == null) return null; - return AppToWebUtils.getBrowserIntent(browserLink, mContext.getPackageManager(), - mUserContext.getUserId()); - + updateDragResizeListener(oldDecorationSurface); + updateMaximizeMenu(startT); + Trace.endSection(); // DesktopModeWindowDecoration#updateRelayoutParamsAndSurfaces } - @Nullable - private Intent getAppLink() { - return mWebUri == null ? null - : AppToWebUtils.getAppIntent(mWebUri, mContext.getPackageManager(), - mUserContext.getUserId()); - } - - private boolean isBrowserApp() { - final ComponentName baseActivity = mTaskInfo.baseActivity; - return baseActivity != null && AppToWebUtils.isBrowserApp(mContext, - baseActivity.getPackageName(), mUserContext.getUserId()); - } - - UserHandle getUser() { - return mUserContext.getUser(); - } - - private void updateDragResizeListenerIfNeeded(@Nullable SurfaceControl containerSurface, - boolean inFullImmersive) { - final boolean taskPositionChanged = !mTaskInfo.positionInParent.equals(mPositionInParent); - if (!isDragResizable(mTaskInfo, inFullImmersive)) { - if (taskPositionChanged) { + private void updateDragResizeListener(SurfaceControl oldDecorationSurface) { + if (!isDragResizable(mTaskInfo)) { + if (!mTaskInfo.positionInParent.equals(mPositionInParent)) { // We still want to track caption bar's exclusion region on a non-resizeable task. - updateExclusionRegion(inFullImmersive); + updateExclusionRegion(); } closeDragResizeListener(); return; } - updateDragResizeListener(containerSurface, - (geometryChanged) -> { - if (geometryChanged || taskPositionChanged) { - updateExclusionRegion(inFullImmersive); - } - }); - } - private void updateDragResizeListener(@Nullable SurfaceControl containerSurface, - Consumer<Boolean> onUpdateFinished) { - final boolean containerSurfaceChanged = containerSurface != mDecorationContainerSurface; - final boolean isFirstDragResizeListener = mDragResizeListener == null; - final boolean shouldCreateListener = containerSurfaceChanged || isFirstDragResizeListener; - if (containerSurfaceChanged) { + if (oldDecorationSurface != mDecorationContainerSurface || mDragResizeListener == null) { closeDragResizeListener(); - } - if (shouldCreateListener) { - final ShellExecutor bgExecutor = - DesktopModeFlags.ENABLE_DRAG_RESIZE_SET_UP_IN_BG_THREAD.isTrue() - ? mBgExecutor : mMainExecutor; + Trace.beginSection("DesktopModeWindowDecoration#relayout-DragResizeInputListener"); mDragResizeListener = new DragResizeInputListener( mContext, - WindowManagerGlobal.getWindowSession(), - mMainExecutor, - bgExecutor, - mTaskInfo, mHandler, mChoreographer, mDisplay.getDisplayId(), @@ -692,309 +344,78 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin mDragPositioningCallback, mSurfaceControlBuilderSupplier, mSurfaceControlTransactionSupplier, - mDisplayController, - mDesktopModeEventLogger); + mDisplayController); + Trace.endSection(); } - final DragResizeInputListener newListener = mDragResizeListener; + final int touchSlop = ViewConfiguration.get(mResult.mRootView.getContext()) .getScaledTouchSlop(); + mDragDetector.setTouchSlop(touchSlop); + + // If either task geometry or position have changed, update this task's + // exclusion region listener final Resources res = mResult.mRootView.getResources(); - final DragResizeWindowGeometry newGeometry = new DragResizeWindowGeometry( - DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue() - ? mResult.mCornerRadius : mRelayoutParams.mCornerRadius, - new Size(mResult.mWidth, mResult.mHeight), - getResizeEdgeHandleSize(res), getResizeHandleEdgeInset(res), - getFineResizeCornerSize(res), getLargeResizeCornerSize(res), - mDisabledResizingEdge); - newListener.addInitializedCallback(() -> { - onUpdateFinished.accept(newListener.setGeometry(newGeometry, touchSlop)); - }); - } - - private static boolean isDragResizable(ActivityManager.RunningTaskInfo taskInfo, - boolean inFullImmersive) { - if (inFullImmersive) { - // Task cannot be resized in full immersive. - return false; - } - if (DesktopModeFlags.ENABLE_WINDOWING_SCALED_RESIZING.isTrue()) { - return taskInfo.isFreeform(); - } - return taskInfo.isFreeform() && taskInfo.isResizeable; - } - - private void notifyCaptionStateChanged() { - if (!mDesktopState.canEnterDesktopMode() || !isEducationOrHandleReportingEnabled()) { - return; - } - if (!isCaptionVisible()) { - notifyNoCaptionHandle(); - } else if (isAppHandle(mWindowDecorViewHolder)) { - // App handle is visible since `mWindowDecorViewHolder` is of type - // [AppHandleViewHolder]. - final CaptionState captionState = new CaptionState.AppHandle(mTaskInfo, - isHandleMenuActive(), getCurrentAppHandleBounds(), isCapturedLinkAvailable(), - getAppHandleIdentifier(), mHasGlobalFocus); - mWindowDecorCaptionRepository.notifyCaptionChanged(captionState); - } else { - // App header is visible since `mWindowDecorViewHolder` is of type - // [AppHeaderViewHolder]. - final AppHeaderViewHolder appHeader = asAppHeader(mWindowDecorViewHolder); - if (appHeader != null) { - appHeader.runOnAppChipGlobalLayout( - () -> { - notifyAppHeaderStateChanged(); - return Unit.INSTANCE; - }); - } + if (mDragResizeListener.setGeometry( + new DragResizeWindowGeometry(mRelayoutParams.mCornerRadius, + new Size(mResult.mWidth, mResult.mHeight), getResizeEdgeHandleSize(res), + getFineResizeCornerSize(res), getLargeResizeCornerSize(res)), touchSlop) + || !mTaskInfo.positionInParent.equals(mPositionInParent)) { + updateExclusionRegion(); } } - private boolean isCapturedLinkAvailable() { - return mCapturedLink != null && !mCapturedLink.mUsed; + private static boolean isDragResizable(ActivityManager.RunningTaskInfo taskInfo) { + final boolean isFreeform = + taskInfo.getWindowingMode() == WINDOWING_MODE_FREEFORM; + return isFreeform && taskInfo.isResizeable; } - private void onCapturedLinkUsed() { - if (mCapturedLink != null) { - mCapturedLink.setUsed(); - } - } - - private void notifyNoCaptionHandle() { - if (!mDesktopState.canEnterDesktopMode() || !isEducationOrHandleReportingEnabled()) { - return; - } - mWindowDecorCaptionRepository.notifyCaptionChanged( - new CaptionState.NoCaption(mTaskInfo.taskId)); - } - - /** - * Returns app handle bounds if app handle is visible. Otherwise, returns empty Rect. - */ - private Rect getCurrentAppHandleBounds() { - if (!DesktopExperienceFlags.ENABLE_APP_HANDLE_POSITION_REPORTING.isTrue()) { - return new Rect( - mResult.mCaptionX, - /* top= */ 0, - mResult.mCaptionX + mResult.mCaptionWidth, - mResult.mCaptionHeight); - } - - if (!isAppHandle(mWindowDecorViewHolder) || !isCaptionVisible()) { - return new Rect(); - } - - final Rect handleBounds = new Rect( - mResult.mCaptionX, - mResult.mCaptionY, - mResult.mCaptionX + mResult.mCaptionWidth, - mResult.mCaptionY + mResult.mCaptionHeight); - if (mSplitScreenController.getSplitPosition(mTaskInfo.taskId) - == SPLIT_POSITION_BOTTOM_OR_RIGHT - ) { - if (mSplitScreenController.isLeftRightSplit()) { - final Rect rightStageBounds = new Rect(); - mSplitScreenController.getStageBounds(new Rect(), rightStageBounds); - handleBounds.offset(rightStageBounds.left, 0); - } else { - final Rect bottomStageBounds = new Rect(); - mSplitScreenController.getRefStageBounds(new Rect(), bottomStageBounds); - handleBounds.offset(0, bottomStageBounds.top); - } - } - - return handleBounds; - } - - private void notifyAppHeaderStateChanged() { - final AppHeaderViewHolder appHeader = asAppHeader(mWindowDecorViewHolder); - if (appHeader == null) { - return; - } - final Rect appChipPositionInWindow = appHeader.getAppChipLocationInWindow(); - final Rect taskBounds = mTaskInfo.configuration.windowConfiguration.getBounds(); - final Rect appChipGlobalPosition = new Rect( - taskBounds.left + appChipPositionInWindow.left, - taskBounds.top + appChipPositionInWindow.top, - taskBounds.left + appChipPositionInWindow.right, - taskBounds.top + appChipPositionInWindow.bottom); - final CaptionState captionState = new CaptionState.AppHeader( - mTaskInfo, - isHandleMenuActive(), - appChipGlobalPosition, - isCapturedLinkAvailable(), - mHasGlobalFocus); - - mWindowDecorCaptionRepository.notifyCaptionChanged(captionState); - } - - /** Updates app handle position and notifies [AppHandleNotifier] of any changes. */ - private AppHandleIdentifier getAppHandleIdentifier() { - return new AppHandleIdentifier( - getCurrentAppHandleBounds(), - mTaskInfo.displayId, - mTaskInfo.taskId, - getAppHandleIdentifierWindowingMode() - ); - } - - /** - * Returns the windowing mode of the App Handle. Throws an {@link IllegalArgumentException} if - * task does not have an app handle - */ - private AppHandleWindowingMode getAppHandleIdentifierWindowingMode() { - if (BubbleAnythingFlagHelper.enableBubbleToFullscreen() - && !mDesktopState.isDesktopModeSupportedOnDisplay(mDisplay)) { - return AppHandleWindowingMode.APP_HANDLE_WINDOWING_MODE_BUBBLE; - } - if (mSplitScreenController.isTaskInSplitScreen(mTaskInfo.taskId)) { - return AppHandleWindowingMode.APP_HANDLE_WINDOWING_MODE_SPLIT_SCREEN; - } - if (isAppHandle(mWindowDecorViewHolder)) { - return AppHandleWindowingMode.APP_HANDLE_WINDOWING_MODE_FULLSCREEN; - } - throw new IllegalArgumentException("Attempting to get the AppHandleWindowingMode of a task " - + "that does not have an app handle"); - } - - private void updateMaximizeMenu(SurfaceControl.Transaction startT, boolean inFullImmersive) { - if (!isDragResizable(mTaskInfo, inFullImmersive) || !isMaximizeMenuActive()) { + private void updateMaximizeMenu(SurfaceControl.Transaction startT) { + if (!isDragResizable(mTaskInfo) || !isMaximizeMenuActive()) { return; } if (!mTaskInfo.isVisible()) { closeMaximizeMenu(); } else { - mMaximizeMenu.positionMenu(startT); + mMaximizeMenu.positionMenu(calculateMaximizeMenuPosition(), startT); } } - private Point determineHandlePosition() { - final Point position = new Point(mResult.mCaptionX, 0); - if (mSplitScreenController.getSplitPosition(mTaskInfo.taskId) - == SPLIT_POSITION_BOTTOM_OR_RIGHT - ) { - if (mSplitScreenController.isLeftRightSplit()) { - // If this is the right split task, add left stage's width. - final Rect leftStageBounds = new Rect(); - mSplitScreenController.getStageBounds(leftStageBounds, new Rect()); - position.x += leftStageBounds.width(); - } else { - final Rect bottomStageBounds = new Rect(); - mSplitScreenController.getRefStageBounds(new Rect(), bottomStageBounds); - position.y += bottomStageBounds.top; - } - } - return position; - } - - /** - * Dispose of the view used to forward inputs in status bar region. Intended to be - * used any time handle is no longer visible. - */ - void disposeStatusBarInputLayer() { - if (!isAppHandle(mWindowDecorViewHolder) - || !DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) { - return; - } - asAppHandle(mWindowDecorViewHolder).disposeStatusBarInputLayer(); - } - - /** Update the view holder for app handle. */ - private void updateAppHandleViewHolder() { - if (!isAppHandle(mWindowDecorViewHolder)) return; - asAppHandle(mWindowDecorViewHolder).bindData(new AppHandleViewHolder.HandleData( - mTaskInfo, determineHandlePosition(), mResult.mCaptionWidth, - mResult.mCaptionHeight, /* showInputLayer= */ showInputLayer(), - /* isCaptionVisible= */ isCaptionVisible() - )); - } - - /** Update the view holder for app header. */ - private void updateAppHeaderViewHolder(boolean inFullImmersive, boolean hasGlobalFocus) { - if (!isAppHeader(mWindowDecorViewHolder)) return; - asAppHeader(mWindowDecorViewHolder).bindData(new AppHeaderViewHolder.HeaderData( - mTaskInfo, - DesktopModeUtils.isTaskMaximized(mTaskInfo, mDisplayController), - inFullImmersive, - hasGlobalFocus, - /* maximizeHoverEnabled= */ canOpenMaximizeMenu( - /* animatingTaskResizeOrReposition= */ false), - isCaptionVisible() - )); - } - private WindowDecorationViewHolder createViewHolder() { if (mRelayoutParams.mLayoutResId == R.layout.desktop_mode_app_handle) { - return mAppHandleViewHolderFactory.create( + return new AppHandleViewHolder( mResult.mRootView, - mDecorWindowContext, mOnCaptionTouchListener, - mOnCaptionButtonClickListener, - mWindowManagerWrapper, - mHandler, - mDesktopModeUiEventLogger + mOnCaptionButtonClickListener ); - } else if (mRelayoutParams.mLayoutResId == R.layout.desktop_mode_app_header) { - return mAppHeaderViewHolderFactory.create( + } else if (mRelayoutParams.mLayoutResId + == R.layout.desktop_mode_app_header) { + loadAppInfoIfNeeded(); + return new AppHeaderViewHolder( mResult.mRootView, - mDecorWindowContext, - mWindowDecorationActions, mOnCaptionTouchListener, mOnCaptionButtonClickListener, mOnCaptionLongClickListener, mOnCaptionGenericMotionListener, - /* onMaximizeHoverAnimationFinishedListener= */ () -> { - createMaximizeMenu(); + mAppName, + mAppIconBitmap, + () -> { + if (!isMaximizeMenuActive()) { + createMaximizeMenu(); + } return Unit.INSTANCE; - }, - mDesktopModeUiEventLogger); + }); } throw new IllegalArgumentException("Unexpected layout resource id"); } - private boolean isAppHandle(WindowDecorationViewHolder viewHolder) { - return viewHolder instanceof AppHandleViewHolder; - } - - private boolean isAppHeader(WindowDecorationViewHolder viewHolder) { - return viewHolder instanceof AppHeaderViewHolder; - } - - @Nullable - private AppHandleViewHolder asAppHandle(WindowDecorationViewHolder viewHolder) { - if (viewHolder instanceof AppHandleViewHolder) { - return (AppHandleViewHolder) viewHolder; - } - return null; - } - - @Nullable - private AppHeaderViewHolder asAppHeader(WindowDecorationViewHolder viewHolder) { - if (viewHolder instanceof AppHeaderViewHolder) { - return (AppHeaderViewHolder) viewHolder; - } - return null; - } - @VisibleForTesting static void updateRelayoutParams( RelayoutParams relayoutParams, Context context, ActivityManager.RunningTaskInfo taskInfo, - SplitScreenController splitScreenController, boolean applyStartTransactionOnDraw, - boolean shouldSetTaskVisibilityPositionAndCrop, - boolean isStatusBarVisible, - boolean isKeyguardVisibleAndOccluded, - boolean inFullImmersiveMode, - boolean isDragging, - @NonNull InsetsState displayInsetsState, - boolean hasGlobalFocus, - @NonNull Region displayExclusionRegion, - boolean shouldIgnoreCornerRadius, - boolean shouldExcludeCaptionFromAppBounds, - DesktopConfig desktopConfig, - boolean inSyncWithTransition) { + boolean shouldSetTaskPositionAndCrop) { final int captionLayoutId = getDesktopModeWindowDecorLayoutId(taskInfo.getWindowingMode()); final boolean isAppHeader = captionLayoutId == R.layout.desktop_mode_app_header; @@ -1002,89 +423,15 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin relayoutParams.reset(); relayoutParams.mRunningTaskInfo = taskInfo; relayoutParams.mLayoutResId = captionLayoutId; - relayoutParams.mCaptionHeightCalculator = getCaptionHeightCalculator( - taskInfo.getWindowingMode()); + relayoutParams.mCaptionHeightId = getCaptionHeightIdStatic(taskInfo.getWindowingMode()); relayoutParams.mCaptionWidthId = getCaptionWidthId(relayoutParams.mLayoutResId); - relayoutParams.mHasGlobalFocus = hasGlobalFocus; - relayoutParams.mDisplayExclusionRegion.set(displayExclusionRegion); - // Allow the handle view to be delayed since the handle is just a small addition to the - // window, whereas the header cannot be delayed because it is expected to be visible from - // the first frame. - relayoutParams.mAsyncViewHost = isAppHandle; - boolean showCaption; - if (DesktopModeFlags.ENABLE_DESKTOP_IMMERSIVE_DRAG_BUGFIX.isTrue() && isDragging) { - // If the task is being dragged, the caption should not be hidden so that it continues - // receiving input - showCaption = true; - } else if (DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue()) { - if (inFullImmersiveMode) { - showCaption = (isStatusBarVisible && !isKeyguardVisibleAndOccluded); - } else { - showCaption = taskInfo.isFreeform() - || (isStatusBarVisible && !isKeyguardVisibleAndOccluded); - } - } else { - // Caption should always be visible in freeform mode. When not in freeform, - // align with the status bar except when showing over keyguard (where it should not - // shown). - // TODO(b/356405803): Investigate how it's possible for the status bar visibility to - // be false while a freeform window is open if the status bar is always - // forcibly-shown. It may be that the InsetsState (from which |mIsStatusBarVisible| - // is set) still contains an invisible insets source in immersive cases even if the - // status bar is shown? - showCaption = taskInfo.isFreeform() - || (isStatusBarVisible && !isKeyguardVisibleAndOccluded); - } - relayoutParams.mIsCaptionVisible = showCaption; - final boolean isBottomSplit = !splitScreenController.isLeftRightSplit() - && splitScreenController.getSplitPosition(taskInfo.taskId) - == SPLIT_POSITION_BOTTOM_OR_RIGHT; - relayoutParams.mIsInsetSource = (isAppHeader && !inFullImmersiveMode) || isBottomSplit; if (isAppHeader) { if (TaskInfoKt.isTransparentCaptionBarAppearance(taskInfo)) { - // The app is requesting to customize the caption bar, which means input on - // customizable/exclusion regions must go to the app instead of to the system. - // This may be accomplished with spy windows or custom touchable regions: - if (DesktopModeFlags.ENABLE_ACCESSIBLE_CUSTOM_HEADERS.isTrue()) { - // Set the touchable region of the caption to only the areas where input should - // be handled by the system (i.e. non custom-excluded areas). The region will - // be calculated based on occluding caption elements and exclusion areas - // reported by the app. - relayoutParams.mLimitTouchRegionToSystemAreas = true; - } else { - // Allow input to fall through to the windows below so that the app can respond - // to input events on their custom content. - relayoutParams.mInputFeatures |= WindowManager.LayoutParams.INPUT_FEATURE_SPY; - } - } else { - if (ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION.isTrue()) { - if (shouldExcludeCaptionFromAppBounds) { - relayoutParams.mShouldSetAppBounds = true; - } else { - // Force-consume the caption bar insets when the app tries to hide the - // caption. This improves app compatibility of immersive apps. - relayoutParams.mInsetSourceFlags |= FLAG_FORCE_CONSUMING; - } - } - } - if (ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS.isTrue()) { - if (shouldExcludeCaptionFromAppBounds) { - relayoutParams.mShouldSetAppBounds = true; - } else { - // Always force-consume the caption bar insets for maximum app compatibility, - // including non-immersive apps that just don't handle caption insets properly. - relayoutParams.mInsetSourceFlags |= FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR; - } - } - if (DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue() - && inFullImmersiveMode) { - final Rect taskBounds = taskInfo.getConfiguration().windowConfiguration.getBounds(); - final Insets systemBarInsets = displayInsetsState.calculateInsets( - taskBounds, taskBounds, - WindowInsets.Type.systemBars() & ~WindowInsets.Type.captionBar(), - false /* ignoreVisibility */); - relayoutParams.mCaptionTopPadding = systemBarInsets.top; + // If the app is requesting to customize the caption bar, allow input to fall + // through to the windows below so that the app can respond to input events on + // their custom content. + relayoutParams.mInputFeatures |= WindowManager.LayoutParams.INPUT_FEATURE_SPY; } // Report occluding elements as bounding rects to the insets system so that apps can // draw in the empty space in the center: @@ -1098,68 +445,21 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin final RelayoutParams.OccludingCaptionElement controlsElement = new RelayoutParams.OccludingCaptionElement(); controlsElement.mWidthResId = R.dimen.desktop_mode_customizable_caption_margin_end; - if (DesktopModeFlags.ENABLE_MINIMIZE_BUTTON.isTrue()) { - controlsElement.mWidthResId = - R.dimen.desktop_mode_customizable_caption_with_minimize_button_margin_end; - } controlsElement.mAlignment = RelayoutParams.OccludingCaptionElement.Alignment.END; relayoutParams.mOccludingCaptionElements.add(controlsElement); - - relayoutParams.mInputFeatures |= - WindowManager.LayoutParams.INPUT_FEATURE_DISPLAY_TOPOLOGY_AWARE; - } else if (isAppHandle && !DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) { + } else if (isAppHandle) { // The focused decor (fullscreen/split) does not need to handle input because input in // the App Handle is handled by the InputMonitor in DesktopModeWindowDecorViewModel. - // Note: This does not apply with the above flag enabled as the status bar input layer - // will forward events to the handle directly. relayoutParams.mInputFeatures |= WindowManager.LayoutParams.INPUT_FEATURE_NO_INPUT_CHANNEL; } - if (isAppHeader - && desktopConfig.useWindowShadow(/* isFocusedWindow= */ hasGlobalFocus)) { - if (DesktopExperienceFlags.ENABLE_FREEFORM_BOX_SHADOWS.isTrue()) { - // Shadows are same for light and dark theme. - relayoutParams.mBoxShadowSettingsIds = hasGlobalFocus - ? new int[]{R.style.BoxShadowParamsKeyFocused, - R.style.BoxShadowParamsAmbientFocused} - : new int[]{R.style.BoxShadowParamsKeyUnfocused, - R.style.BoxShadowParamsAmbientUnfocused}; - - final DecorThemeUtil decorThemeUtil = new DecorThemeUtil(context); - if (decorThemeUtil.getAppTheme(taskInfo) == Theme.DARK) { - relayoutParams.mBorderSettingsId = hasGlobalFocus - ? R.style.BorderSettingsFocusedDark - : R.style.BorderSettingsUnfocusedDark; - } else { - relayoutParams.mBorderSettingsId = hasGlobalFocus - ? R.style.BorderSettingsFocusedLight - : R.style.BorderSettingsUnfocusedLight; - } - } else if (DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue()) { - relayoutParams.mShadowRadiusId = hasGlobalFocus - ? R.dimen.freeform_decor_shadow_focused_thickness - : R.dimen.freeform_decor_shadow_unfocused_thickness; - - } else { - relayoutParams.mShadowRadius = hasGlobalFocus - ? context.getResources().getDimensionPixelSize( - R.dimen.freeform_decor_shadow_focused_thickness) - : context.getResources().getDimensionPixelSize( - R.dimen.freeform_decor_shadow_unfocused_thickness); - } - } else { - if (DesktopExperienceFlags.ENABLE_FREEFORM_BOX_SHADOWS.isTrue()) { - relayoutParams.mBoxShadowSettingsIds = null; - relayoutParams.mBorderSettingsId = Resources.ID_NULL; - } else if (DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue()) { - relayoutParams.mShadowRadiusId = Resources.ID_NULL; - } else { - relayoutParams.mShadowRadius = INVALID_SHADOW_RADIUS; - } + if (DesktopModeStatus.useWindowShadow(/* isFocusedWindow= */ taskInfo.isFocused)) { + relayoutParams.mShadowRadiusId = taskInfo.isFocused + ? R.dimen.freeform_decor_shadow_focused_thickness + : R.dimen.freeform_decor_shadow_unfocused_thickness; } relayoutParams.mApplyStartTransactionOnDraw = applyStartTransactionOnDraw; - relayoutParams.mSetTaskVisibilityPositionAndCrop = shouldSetTaskVisibilityPositionAndCrop; - relayoutParams.mInSyncWithTransition = inSyncWithTransition; + relayoutParams.mSetTaskPositionAndCrop = shouldSetTaskPositionAndCrop; // The configuration used to layout the window decoration. A copy is made instead of using // the original reference so that the configuration isn't mutated on config changes and @@ -1168,11 +468,11 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin // TODO(b/301119301): consider moving the config data needed for diffs to relayout params // instead of using a whole Configuration as a parameter. final Configuration windowDecorConfig = new Configuration(); - if (DesktopModeFlags.ENABLE_APP_HEADER_WITH_TASK_DENSITY.isTrue() && isAppHeader) { + if (Flags.enableAppHeaderWithTaskDensity() && isAppHeader) { // Should match the density of the task. The task may have had its density overridden // to be different that SysUI's. windowDecorConfig.setTo(taskInfo.configuration); - } else if (desktopConfig.useDesktopOverrideDensity()) { + } else if (DesktopModeStatus.useDesktopOverrideDensity()) { // The task has had its density overridden, but keep using the system's density to // layout the header. windowDecorConfig.setTo(context.getResources().getConfiguration()); @@ -1181,37 +481,10 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin } relayoutParams.mWindowDecorConfig = windowDecorConfig; - if (desktopConfig.useRoundedCorners()) { - if (DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue()) { - relayoutParams.mCornerRadiusId = shouldIgnoreCornerRadius ? Resources.ID_NULL : - getCornerRadiusId(relayoutParams.mLayoutResId); - } else { - relayoutParams.mCornerRadius = shouldIgnoreCornerRadius ? INVALID_CORNER_RADIUS : - getCornerRadius(context, relayoutParams.mLayoutResId); - } + if (DesktopModeStatus.useRoundedCorners()) { + relayoutParams.mCornerRadius = + (int) ScreenDecorationsUtils.getWindowCornerRadius(context); } - // Set opaque background for all freeform tasks to prevent freeform tasks below - // from being visible if freeform task window above is translucent. - // Otherwise if fluid resize is enabled, add a background to freeform tasks. - relayoutParams.mShouldSetBackground = desktopConfig.shouldSetBackground(taskInfo); - } - - @Deprecated - private static int getCornerRadius(@NonNull Context context, int layoutResId) { - if (layoutResId == R.layout.desktop_mode_app_header) { - return loadDimensionPixelSize(context.getResources(), - com.android.wm.shell.shared.R.dimen - .desktop_windowing_freeform_rounded_corner_radius); - } - return INVALID_CORNER_RADIUS; - } - - private static int getCornerRadiusId(int layoutResId) { - if (layoutResId == R.layout.desktop_mode_app_header) { - return com.android.wm.shell.shared.R.dimen - .desktop_windowing_freeform_rounded_corner_radius; - } - return Resources.ID_NULL; } /** @@ -1225,8 +498,9 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin return Resources.ID_NULL; } - private Point calculateMaximizeMenuPosition(int menuWidth, int menuHeight) { - final Point position = new Point(); + + private PointF calculateMaximizeMenuPosition() { + final PointF position = new PointF(); final Resources resources = mContext.getResources(); final DisplayLayout displayLayout = mDisplayController.getDisplayLayout(mTaskInfo.displayId); @@ -1241,58 +515,32 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin final int[] maximizeButtonLocation = new int[2]; maximizeWindowButton.getLocationInWindow(maximizeButtonLocation); - int menuLeft = (mPositionInParent.x + maximizeButtonLocation[0] - (menuWidth - - maximizeWindowButton.getWidth()) / 2); - int menuTop = (mPositionInParent.y + captionHeight); - final int menuRight = menuLeft + menuWidth; - final int menuBottom = menuTop + menuHeight; + final int menuWidth = loadDimensionPixelSize( + resources, R.dimen.desktop_mode_maximize_menu_width); + final int menuHeight = loadDimensionPixelSize( + resources, R.dimen.desktop_mode_maximize_menu_height); - // If the menu is out of screen bounds, shift it as needed - if (menuLeft < 0) { - menuLeft = 0; - } else if (menuRight > displayWidth) { + float menuLeft = (mPositionInParent.x + maximizeButtonLocation[0] - ((float) (menuWidth + - maximizeWindowButton.getWidth()) / 2)); + float menuTop = (mPositionInParent.y + captionHeight); + final float menuRight = menuLeft + menuWidth; + final float menuBottom = menuTop + menuHeight; + + // If the menu is out of screen bounds, shift it up/left as needed + if (menuRight > displayWidth) { menuLeft = (displayWidth - menuWidth); } if (menuBottom > displayHeight) { menuTop = (displayHeight - menuHeight); } - return new Point(menuLeft, menuTop); + return new PointF(menuLeft, menuTop); } boolean isHandleMenuActive() { return mHandleMenu != null; } - boolean isOpenByDefaultDialogActive() { - return mOpenByDefaultDialog != null; - } - - void createOpenByDefaultDialog() { - if (isOpenByDefaultDialogActive()) return; - mOpenByDefaultDialog = new OpenByDefaultDialog( - mContext, - mTaskInfo, - mTaskSurface, - mDisplayController, - mTaskResourceLoader, - mSurfaceControlTransactionSupplier, - mMainDispatcher, - mBgScope, - new OpenByDefaultDialog.DialogLifecycleListener() { - @Override - public void onDialogCreated() { - closeHandleMenu(); - } - - @Override - public void onDialogDismissed() { - mOpenByDefaultDialog = null; - } - } - ); - } - boolean shouldResizeListenerHandleEvent(@NonNull MotionEvent e, @NonNull Point offset) { return mDragResizeListener != null && mDragResizeListener.shouldHandleEvent(e, offset); } @@ -1301,6 +549,44 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin return mDragResizeListener != null && mDragResizeListener.isHandlingDragResize(); } + private void loadAppInfoIfNeeded() { + // TODO(b/337370277): move this to another thread. + try { + Trace.beginSection("DesktopModeWindowDecoration#loadAppInfoIfNeeded"); + if (mAppIconBitmap != null && mAppName != null) { + return; + } + final ActivityInfo activityInfo = mTaskInfo.topActivityInfo; + if (activityInfo == null) { + Log.e(TAG, "Top activity info not found in task"); + return; + } + PackageManager pm = mContext.getApplicationContext().getPackageManager(); + final IconProvider provider = new IconProvider(mContext); + final Drawable appIconDrawable = provider.getIcon(activityInfo); + final BaseIconFactory headerIconFactory = createIconFactory(mContext, + R.dimen.desktop_mode_caption_icon_radius); + mAppIconBitmap = headerIconFactory.createScaledBitmap(appIconDrawable, MODE_DEFAULT); + + final BaseIconFactory resizeVeilIconFactory = createIconFactory(mContext, + R.dimen.desktop_mode_resize_veil_icon_size); + mResizeVeilBitmap = resizeVeilIconFactory + .createScaledBitmap(appIconDrawable, MODE_DEFAULT); + + final ApplicationInfo applicationInfo = activityInfo.applicationInfo; + mAppName = pm.getApplicationLabel(applicationInfo); + } finally { + Trace.endSection(); + } + } + + private BaseIconFactory createIconFactory(Context context, int dimensions) { + final Resources resources = context.getResources(); + final int densityDpi = resources.getDisplayMetrics().densityDpi; + final int iconSize = resources.getDimensionPixelSize(dimensions); + return new BaseIconFactory(context, densityDpi, iconSize); + } + private void closeDragResizeListener() { if (mDragResizeListener == null) { return; @@ -1315,9 +601,9 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin */ private void createResizeVeilIfNeeded() { if (mResizeVeil != null) return; - mResizeVeil = new ResizeVeil(mContext, mDisplayController, mTaskResourceLoader, - mMainDispatcher, mBgScope, mTaskSurface, - mSurfaceControlTransactionSupplier, mTaskInfo); + loadAppInfoIfNeeded(); + mResizeVeil = new ResizeVeil(mContext, mDisplayController, mResizeVeilBitmap, + mTaskSurface, mSurfaceControlTransactionSupplier, mTaskInfo); } /** @@ -1417,7 +703,7 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin } /** - * Determine the highest y coordinate of a freeform task. Used for restricting drag inputs.fmdra + * Determine the highest y coordinate of a freeform task. Used for restricting drag inputs. */ private int determineMaxY(int requiredEmptySpace, Rect stableBounds) { return stableBounds.bottom - requiredEmptySpace; @@ -1428,70 +714,19 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin * Create and display maximize menu window */ void createMaximizeMenu() { - if (isMaximizeMenuActive()) return; - mDesktopModeUiEventLogger.log(mTaskInfo, - DesktopUiEventEnum.DESKTOP_WINDOW_MAXIMIZE_BUTTON_REVEAL_MENU); - mMaximizeMenu = mMaximizeMenuFactory.create(mSyncQueue, mRootTaskDisplayAreaOrganizer, - mDisplayController, mWindowDecorationActions, mTaskInfo, mContext, - (width, height) -> calculateMaximizeMenuPosition(width, height), - mSurfaceControlTransactionSupplier, mDesktopModeUiEventLogger); - - mMaximizeMenu.show( - /* isTaskInImmersiveMode= */ - DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue() - && mDesktopUserRepositories.getProfile(mTaskInfo.userId) - .isTaskInFullImmersiveState(mTaskInfo.taskId), - /* showImmersiveOption= */ - DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue() - && TaskInfoKt.getRequestingImmersive(mTaskInfo), - /* showSnapOptions= */ mTaskInfo.isResizeable, - hovered -> { - mIsMaximizeMenuHovered = hovered; - onMaximizeHoverStateChanged(); - return null; - }, - /* onOutsideTouchListener= */ mCloseMaximizeMenuFunction, - /* onMaximizeMenuClickedListener= */ mCloseMaximizeMenuFunction - ); - } - - /** Set whether the app header's maximize button is hovered. */ - void setAppHeaderMaximizeButtonHovered(boolean hovered) { - mIsAppHeaderMaximizeButtonHovered = hovered; - onMaximizeHoverStateChanged(); - } - - /** - * Called when either one of the maximize button in the app header or the maximize menu has - * changed its hover state. - */ - void onMaximizeHoverStateChanged() { - if (!mIsMaximizeMenuHovered && !mIsAppHeaderMaximizeButtonHovered) { - // Neither is hovered, close the menu. - if (isMaximizeMenuActive()) { - mHandler.postDelayed(mCloseMaximizeWindowRunnable, CLOSE_MAXIMIZE_MENU_DELAY_MS); - } - return; - } - // At least one of the two is hovered, cancel the close if needed. - mHandler.removeCallbacks(mCloseMaximizeWindowRunnable); + mMaximizeMenu = new MaximizeMenu(mSyncQueue, mRootTaskDisplayAreaOrganizer, + mDisplayController, mTaskInfo, mOnCaptionButtonClickListener, + mOnCaptionGenericMotionListener, mOnCaptionTouchListener, mContext, + calculateMaximizeMenuPosition(), mSurfaceControlTransactionSupplier); + mMaximizeMenu.show(); } /** * Close the maximize menu window */ - @VisibleForTesting void closeMaximizeMenu() { if (!isMaximizeMenuActive()) return; - mMaximizeMenu.close(() -> { - // Request the accessibility service to refocus on the maximize button after closing - // the menu. - final AppHeaderViewHolder appHeader = asAppHeader(mWindowDecorViewHolder); - if (appHeader != null) { - appHeader.requestAccessibilityFocus(); - } - return Unit.INSTANCE; - }); + mMaximizeMenu.close(); mMaximizeMenu = null; } @@ -1500,184 +735,38 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin } /** - * Updates app info and creates and displays handle menu window. + * Create and display handle menu window. */ - void createHandleMenu(boolean minimumInstancesFound) { - if (isHandleMenuActive()) return; - mMinimumInstancesFound = minimumInstancesFound; - if (AppToWebUtils.canShowAppLinks(mDisplay, mDesktopState)) { - // Requests assist content. When content is received, calls - // {@link #onAssistContentReceived} which sets app info and creates the handle menu. - mAssistContentRequester.requestAssistContent( - mTaskInfo.taskId, this::onAssistContentReceived); - } else { - // Skip request for assist content as it is only used for links, which are not supported - onAssistContentReceived(null); - } - } - - /** - * Called when assist content is received. updates the saved links and creates the handle menu. - */ - @VisibleForTesting - void onAssistContentReceived(@Nullable AssistContent assistContent) { - mWebUri = assistContent == null ? null : AppToWebUtils.getSessionWebUri(assistContent); - updateGenericLink(); - final boolean supportsMultiInstance = mMultiInstanceHelper - .supportsMultiInstanceSplit(mTaskInfo.baseActivity, mTaskInfo.userId) - && DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES.isTrue(); - final boolean shouldShowManageWindowsButton = supportsMultiInstance - && mMinimumInstancesFound; - final boolean shouldShowChangeAspectRatioButton = HandleMenu.Companion - .shouldShowChangeAspectRatioButton(mTaskInfo); - final boolean shouldShowRestartButton = HandleMenu.Companion - .shouldShowRestartButton(mTaskInfo); - final boolean inDesktopImmersive = mDesktopUserRepositories.getProfile(mTaskInfo.userId) - .isTaskInFullImmersiveState(mTaskInfo.taskId); - final boolean isBrowserApp; - final Intent openInAppOrBrowserIntent; - if (AppToWebUtils.canShowAppLinks(mDisplay, mDesktopState)) { - isBrowserApp = isBrowserApp(); - openInAppOrBrowserIntent = isBrowserApp ? getAppLink() : getBrowserLink(); - } else { - isBrowserApp = false; - openInAppOrBrowserIntent = null; - } - mHandleMenu = mHandleMenuFactory.create( - mMainDispatcher, - mBgScope, - this, - mWindowManagerWrapper, - mWindowDecorationActions, - mTaskResourceLoader, - mRelayoutParams.mLayoutResId, - mSplitScreenController, - mDesktopState.canEnterDesktopModeOrShowAppHandle(), - supportsMultiInstance, - shouldShowManageWindowsButton, - shouldShowChangeAspectRatioButton, - mDesktopState.isDesktopModeSupportedOnDisplay(mDisplay), - shouldShowRestartButton, - isBrowserApp, - openInAppOrBrowserIntent, - mDesktopModeUiEventLogger, - mResult.mCaptionWidth, - mResult.mCaptionHeight, - mResult.mCaptionX, - // Add top padding to the caption Y so that the menu is shown over what is the - // actual contents of the caption, ignoring padding. This is currently relevant - // to the Header in desktop immersive. - mResult.mCaptionY + mResult.mCaptionTopPadding - ); + void createHandleMenu(SplitScreenController splitScreenController) { + loadAppInfoIfNeeded(); + mHandleMenu = new HandleMenu.Builder(this) + .setAppIcon(mAppIconBitmap) + .setAppName(mAppName) + .setOnClickListener(mOnCaptionButtonClickListener) + .setOnTouchListener(mOnCaptionTouchListener) + .setLayoutId(mRelayoutParams.mLayoutResId) + .setWindowingButtonsVisible(DesktopModeStatus.canEnterDesktopMode(mContext)) + .setCaptionHeight(mResult.mCaptionHeight) + .setDisplayController(mDisplayController) + .setSplitScreenController(splitScreenController) + .build(); mWindowDecorViewHolder.onHandleMenuOpened(); - mHandleMenu.show( - /* openInBrowserClickListener= */ (intent) -> { - mWindowDecorationActions.onOpenInBrowser(mTaskInfo.taskId, intent); - onCapturedLinkUsed(); - if (Flags.enableDesktopWindowingAppToWebEducationIntegration()) { - mWindowDecorCaptionRepository.onAppToWebUsage(); - } - return Unit.INSTANCE; - }, - /* onOpenByDefaultClickListener= */ () -> { - createOpenByDefaultDialog(); - return Unit.INSTANCE; - }, - /* onCloseMenuClickListener= */ mCloseHandleMenuFunction, - /* onOutsideTouchListener= */ mCloseHandleMenuFunction, - /* onHandleMenuClickedListener= */ mCloseHandleMenuFunction, - /* forceShowSystemBars= */ inDesktopImmersive - ); - if (mDesktopState.canEnterDesktopMode() && isEducationOrHandleReportingEnabled()) { - notifyCaptionStateChanged(); - } - mMinimumInstancesFound = false; - } - - void createManageWindowsMenu(@NonNull List<Pair<Integer, TaskSnapshot>> snapshotList) { - final Function1<Integer, Unit> onOpenInstanceListener = (requestedTaskId) -> { - closeManageWindowsMenu(); - if (mTaskInfo.taskId != requestedTaskId) { - mWindowDecorationActions.onOpenInstance(mTaskInfo, requestedTaskId); - } - return Unit.INSTANCE; - }; - if (mTaskInfo.isFreeform()) { - // The menu uses display-wide coordinates for positioning, so make position the sum - // of task position and caption position. - final Rect taskBounds = mTaskInfo.configuration.windowConfiguration.getBounds(); - mManageWindowsMenu = new DesktopHeaderManageWindowsMenu( - mTaskInfo, - /* x= */ taskBounds.left + mResult.mCaptionX, - /* y= */ taskBounds.top + mResult.mCaptionY + mResult.mCaptionTopPadding, - mDisplayController, - mRootTaskDisplayAreaOrganizer, - mContext, - mDesktopUserRepositories, - mSurfaceControlBuilderSupplier, - mSurfaceControlTransactionSupplier, - snapshotList, - onOpenInstanceListener, - /* onOutsideClickListener= */ () -> { - closeManageWindowsMenu(); - return Unit.INSTANCE; - } - ); - } else { - mManageWindowsMenu = new DesktopHandleManageWindowsMenu( - mTaskInfo, - mSplitScreenController, - getCaptionX(), - mResult.mCaptionWidth, - mWindowManagerWrapper, - mDesktopState, - mContext, - snapshotList, - onOpenInstanceListener, - /* onOutsideClickListener= */ () -> { - closeManageWindowsMenu(); - return Unit.INSTANCE; - } - ); - } - } - - void closeManageWindowsMenu() { - if (mManageWindowsMenu != null) { - mManageWindowsMenu.animateClose(); - } - mManageWindowsMenu = null; - } - - private void updateGenericLink() { - final ComponentName baseActivity = mTaskInfo.baseActivity; - if (baseActivity == null) { - return; - } - - final String genericLink = - mGenericLinksParser.getGenericLink(baseActivity.getPackageName()); - mGenericLink = genericLink == null ? null : Uri.parse(genericLink); + mHandleMenu.show(); } /** * Close the handle menu window. */ - @VisibleForTesting void closeHandleMenu() { if (!isHandleMenuActive()) return; mWindowDecorViewHolder.onHandleMenuClosed(); mHandleMenu.close(); mHandleMenu = null; - if (mDesktopState.canEnterDesktopMode() && isEducationOrHandleReportingEnabled()) { - notifyCaptionStateChanged(); - } } @Override void releaseViews(WindowContainerTransaction wct) { closeHandleMenu(); - closeManageWindowsMenu(); closeMaximizeMenu(); super.releaseViews(wct); } @@ -1704,8 +793,21 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin } } + /** + * Close an open maximize menu if input is outside of menu coordinates + * + * @param ev the tapped point to compare against + */ + void closeMaximizeMenuIfNeeded(MotionEvent ev) { + if (!isMaximizeMenuActive()) return; + + if (!mMaximizeMenu.isValidMenuInput(ev)) { + closeMaximizeMenu(); + } + } + boolean isFocused() { - return mHasGlobalFocus; + return mTaskInfo.isFocused; } /** @@ -1733,17 +835,10 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin * @return {@code true} if event is inside caption handle view, {@code false} if not */ boolean checkTouchEventInFocusedCaptionHandle(MotionEvent ev) { - if (isHandleMenuActive() || !isAppHandle(mWindowDecorViewHolder) - || DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) { + if (isHandleMenuActive() || !(mWindowDecorViewHolder + instanceof AppHandleViewHolder)) { return false; } - // The status bar input layer can only receive input in handle coordinates to begin with, - // so checking coordinates is unnecessary as input is always within handle bounds. - if (isAppHandle(mWindowDecorViewHolder) - && DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue() - && isCaptionVisible()) { - return true; - } return checkTouchEventInCaption(ev); } @@ -1777,7 +872,7 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin * @param ev the MotionEvent to compare */ void checkTouchEvent(MotionEvent ev) { - if (mResult.mRootView == null || DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) return; + if (mResult.mRootView == null) return; final View caption = mResult.mRootView.findViewById(R.id.desktop_mode_caption); final View handle = caption.findViewById(R.id.caption_handle); final boolean inHandle = !isHandleMenuActive() @@ -1787,13 +882,8 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin handle.performClick(); } if (isHandleMenuActive()) { - // If the whole handle menu can be touched directly, rely on FLAG_WATCH_OUTSIDE_TOUCH. - // This is for the case that some of the handle menu is underneath the status bar. - if (isAppHandle(mWindowDecorViewHolder) - && !DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) { - mHandleMenu.checkMotionEvent(ev); - closeHandleMenuIfNeeded(ev); - } + mHandleMenu.checkMotionEvent(ev); + closeHandleMenuIfNeeded(ev); } } @@ -1804,7 +894,7 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin * @param ev the MotionEvent to compare against. */ void updateHoverAndPressStatus(MotionEvent ev) { - if (mResult.mRootView == null || DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) return; + if (mResult.mRootView == null) return; final View handle = mResult.mRootView.findViewById(R.id.caption_handle); final boolean inHandle = !isHandleMenuActive() && checkTouchEventInFocusedCaptionHandle(ev); @@ -1814,20 +904,13 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin // We want handle to remain pressed if the pointer moves outside of it during a drag. handle.setPressed((inHandle && action == ACTION_DOWN) || (handle.isPressed() && action != ACTION_UP && action != ACTION_CANCEL)); - if (isHandleMenuActive()) { + if (isHandleMenuActive() && !isHandleMenuAboveStatusBar()) { mHandleMenu.checkMotionEvent(ev); } } - /** - * Indicates that an app handle drag has been interrupted, this can happen e.g. if we receive an - * unknown transition during the drag-to-desktop transition. - */ - void handleDragInterrupted() { - if (mResult.mRootView == null) return; - final View handle = mResult.mRootView.findViewById(R.id.caption_handle); - handle.setHovered(false); - handle.setPressed(false); + private boolean isHandleMenuAboveStatusBar() { + return Flags.enableAdditionalWindowsAboveStatusBar() && !mTaskInfo.isFreeform(); } private boolean pointInView(View v, float x, float y) { @@ -1835,38 +918,13 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin && v.getTop() <= y && v.getBottom() >= y; } - /** - * Returns true if caption state should be updated either due to education or app handle - * reporting being enabled. - */ - private boolean isEducationOrHandleReportingEnabled() { - return Flags.enableDesktopWindowingAppHandleEducation() - || Flags.enableDesktopWindowingAppToWebEducationIntegration() - || DesktopExperienceFlags.ENABLE_APP_HANDLE_POSITION_REPORTING.isTrue(); - } - @Override public void close() { - if (mLoadAppInfoRunnable != null) { - mBgExecutor.removeCallbacks(mLoadAppInfoRunnable); - } - if (mSetAppInfoRunnable != null) { - mMainExecutor.removeCallbacks(mSetAppInfoRunnable); - } - mTaskResourceLoader.onWindowDecorClosed(mTaskInfo); closeDragResizeListener(); closeHandleMenu(); - closeManageWindowsMenu(); mExclusionRegionListener.onExclusionRegionDismissed(mTaskInfo.taskId); disposeResizeVeil(); - disposeStatusBarInputLayer(); - if (mWindowDecorViewHolder != null) { - mWindowDecorViewHolder.close(); - mWindowDecorViewHolder = null; - } - if (mDesktopState.canEnterDesktopMode() && isEducationOrHandleReportingEnabled()) { - notifyNoCaptionHandle(); - } + clearCurrentViewHostRunnable(); super.close(); } @@ -1880,30 +938,24 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin mPositionInParent.set(mTaskInfo.positionInParent); } - private void updateExclusionRegion(boolean inFullImmersive) { + private void updateExclusionRegion() { // An outdated position in parent is one reason for this to be called; update it here. updatePositionInParent(); mExclusionRegionListener - .onExclusionRegionChanged(mTaskInfo.taskId, - getGlobalExclusionRegion(inFullImmersive)); + .onExclusionRegionChanged(mTaskInfo.taskId, getGlobalExclusionRegion()); } /** * Create a new exclusion region from the corner rects (if resizeable) and caption bounds * of this task. */ - private Region getGlobalExclusionRegion(boolean inFullImmersive) { + private Region getGlobalExclusionRegion() { Region exclusionRegion; - if (mDragResizeListener != null - && isDragResizable(mTaskInfo, inFullImmersive)) { + if (mDragResizeListener != null && mTaskInfo.isResizeable) { exclusionRegion = mDragResizeListener.getCornersRegion(); } else { exclusionRegion = new Region(); } - if (inFullImmersive) { - // Task can't be moved in full immersive, so skip excluding the caption region. - return exclusionRegion; - } exclusionRegion.union(new Rect(0, 0, mResult.mWidth, getCaptionHeight(mTaskInfo.getWindowingMode()))); exclusionRegion.translate(mPositionInParent.x, mPositionInParent.y); @@ -1914,21 +966,19 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin return mResult.mCaptionX; } - private static BiFunction<Context, Display, Integer> getCaptionHeightCalculator( - @WindowingMode int windowingMode) { - return (ctx, display) -> { - if (windowingMode == WINDOWING_MODE_FULLSCREEN) { - return SystemBarUtils.getStatusBarHeight(ctx.getResources(), display.getCutout()); - } else { - return loadDimensionPixelSize(ctx.getResources(), - getDesktopViewAppHeaderHeightId()); - } - }; + @Override + int getCaptionHeightId(@WindowingMode int windowingMode) { + return getCaptionHeightIdStatic(windowingMode); } - @Override - int getCaptionHeight(@WindowingMode int windowingMode) { - return getCaptionHeightCalculator(windowingMode).apply(mContext, mDisplay); + private static int getCaptionHeightIdStatic(@WindowingMode int windowingMode) { + return windowingMode == WINDOWING_MODE_FULLSCREEN + ? R.dimen.desktop_mode_fullscreen_decor_caption_height + : R.dimen.desktop_mode_freeform_decor_caption_height; + } + + private int getCaptionHeight(@WindowingMode int windowingMode) { + return loadDimensionPixelSize(mContext.getResources(), getCaptionHeightId(windowingMode)); } @Override @@ -1936,76 +986,39 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin return R.id.desktop_mode_caption; } - void setAnimatingTaskResizeOrReposition(boolean animatingTaskResizeOrReposition) { - if (!isAppHeader(mWindowDecorViewHolder)) return; - final boolean inFullImmersive = - mDesktopUserRepositories.getProfile(mTaskInfo.userId) - .isTaskInFullImmersiveState(mTaskInfo.taskId); - asAppHeader(mWindowDecorViewHolder).bindData(new AppHeaderViewHolder.HeaderData( - mTaskInfo, - DesktopModeUtils.isTaskMaximized(mTaskInfo, mDisplayController), - inFullImmersive, - isFocused(), - /* maximizeHoverEnabled= */ canOpenMaximizeMenu(animatingTaskResizeOrReposition), - isCaptionVisible())); + void setAnimatingTaskResize(boolean animatingTaskResize) { + if (mRelayoutParams.mLayoutResId == R.layout.desktop_mode_app_handle) return; + ((AppHeaderViewHolder) mWindowDecorViewHolder) + .setAnimatingTaskResize(animatingTaskResize); } - /** - * Announces that the app window is now being focused for accessibility. This is used after a - * window is minimized/closed, and a new app window gains focus. - */ - void a11yAnnounceNewFocusedWindow() { - if (!isAppHeader(mWindowDecorViewHolder)) return; - asAppHeader(mWindowDecorViewHolder).a11yAnnounceFocused(); + /** Called when there is a {@Link ACTION_HOVER_EXIT} on the maximize window button. */ + void onMaximizeWindowHoverExit() { + ((AppHeaderViewHolder) mWindowDecorViewHolder) + .onMaximizeWindowHoverExit(); } - /** - * Declares whether a Recents transition is currently active. - * - * <p> When a Recents transition is active we allow that transition to take ownership of the - * corner radius of its task surfaces, so each window decoration should stop updating the corner - * radius of its task surface during that time. - */ - void setIsRecentsTransitionRunning(boolean isRecentsTransitionRunning) { - mIsRecentsTransitionRunning = isRecentsTransitionRunning; - // TODO (b/415631133): Update this to call on #relayout once b/415631133 is fixed - if (isAppHandle(mWindowDecorViewHolder) - && DesktopModeFlags.ENABLE_INPUT_LAYER_TRANSITION_FIX.isTrue()) { - updateAppHandleViewHolder(); - } + /** Called when there is a {@Link ACTION_HOVER_ENTER} on the maximize window button. */ + void onMaximizeWindowHoverEnter() { + ((AppHeaderViewHolder) mWindowDecorViewHolder) + .onMaximizeWindowHoverEnter(); } - /** - * Declares whether the window decoration is being dragged. - */ - void setIsDragging(boolean isDragging) { - mIsDragging = isDragging; + /** Called when there is a {@Link ACTION_HOVER_ENTER} on a view in the maximize menu. */ + void onMaximizeMenuHoverEnter(int id, MotionEvent ev) { + mMaximizeMenu.onMaximizeMenuHoverEnter(id, ev); } - /** - * Called when there is a {@link MotionEvent#ACTION_HOVER_EXIT} on the maximize window button. - */ - void onMaximizeButtonHoverExit() { - asAppHeader(mWindowDecorViewHolder).onMaximizeWindowHoverExit(); + /** Called when there is a {@Link ACTION_HOVER_MOVE} on a view in the maximize menu. */ + void onMaximizeMenuHoverMove(int id, MotionEvent ev) { + mMaximizeMenu.onMaximizeMenuHoverMove(id, ev); } - /** - * Called when there is a {@link MotionEvent#ACTION_HOVER_ENTER} on the maximize window button. - */ - void onMaximizeButtonHoverEnter() { - asAppHeader(mWindowDecorViewHolder).onMaximizeWindowHoverEnter(); + /** Called when there is a {@Link ACTION_HOVER_EXIT} on a view in the maximize menu. */ + void onMaximizeMenuHoverExit(int id, MotionEvent ev) { + mMaximizeMenu.onMaximizeMenuHoverExit(id, ev); } - private boolean canOpenMaximizeMenu(boolean animatingTaskResizeOrReposition) { - if (!DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue()) { - return !animatingTaskResizeOrReposition; - } - final boolean inImmersiveAndRequesting = - mDesktopUserRepositories.getProfile(mTaskInfo.userId) - .isTaskInFullImmersiveState(mTaskInfo.taskId) - && TaskInfoKt.getRequestingImmersive(mTaskInfo); - return !animatingTaskResizeOrReposition && !inImmersiveAndRequesting; - } @Override public String toString() { @@ -2021,85 +1034,24 @@ public class DesktopModeWindowDecoration extends WindowDecoration<WindowDecorLin DesktopModeWindowDecoration create( Context context, - @NonNull Context userContext, DisplayController displayController, - @NonNull WindowDecorTaskResourceLoader appResourceProvider, - SplitScreenController splitScreenController, - DesktopUserRepositories desktopUserRepositories, ShellTaskOrganizer taskOrganizer, ActivityManager.RunningTaskInfo taskInfo, SurfaceControl taskSurface, - @ShellMainThread Handler handler, - @ShellMainThread ShellExecutor mainExecutor, - @ShellMainThread MainCoroutineDispatcher mainDispatcher, - @ShellBackgroundThread CoroutineScope bgScope, - @ShellBackgroundThread ShellExecutor bgExecutor, - Transitions transitions, + Handler handler, Choreographer choreographer, SyncTransactionQueue syncQueue, - AppHeaderViewHolder.Factory appHeaderViewHolderFactory, - AppHandleViewHolder.Factory appHandleViewHolderFactory, - RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer, - AppToWebGenericLinksParser genericLinksParser, - AssistContentRequester assistContentRequester, - @NonNull WindowDecorViewHostSupplier<WindowDecorViewHost> - windowDecorViewHostSupplier, - MultiInstanceHelper multiInstanceHelper, - WindowDecorCaptionRepository windowDecorCaptionRepository, - DesktopModeEventLogger desktopModeEventLogger, - DesktopModeUiEventLogger desktopModeUiEventLogger, - DesktopModeCompatPolicy desktopModeCompatPolicy, - DesktopState desktopState, - DesktopConfig desktopConfig, - WindowDecorationActions windowDecorationActions) { + RootTaskDisplayAreaOrganizer rootTaskDisplayAreaOrganizer) { return new DesktopModeWindowDecoration( context, - userContext, displayController, - appResourceProvider, - splitScreenController, - desktopUserRepositories, taskOrganizer, taskInfo, taskSurface, handler, - mainExecutor, - mainDispatcher, - bgScope, - bgExecutor, - transitions, choreographer, syncQueue, - appHeaderViewHolderFactory, - appHandleViewHolderFactory, - rootTaskDisplayAreaOrganizer, - genericLinksParser, - assistContentRequester, - windowDecorViewHostSupplier, - multiInstanceHelper, - windowDecorCaptionRepository, - desktopModeEventLogger, - desktopModeUiEventLogger, - desktopModeCompatPolicy, - desktopState, - desktopConfig, - windowDecorationActions); - } - } - - @VisibleForTesting - static class CapturedLink { - private final long mTimeStamp; - private final Uri mUri; - private boolean mUsed; - - CapturedLink(@NonNull Uri uri, long timeStamp) { - mUri = uri; - mTimeStamp = timeStamp; - } - - private void setUsed() { - mUsed = true; + rootTaskDisplayAreaOrganizer); } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/DragDetector.java b/wmshell/src/com/android/wm/shell/windowdecor/DragDetector.java index a9df4bd186..da268988ba 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/DragDetector.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/DragDetector.java @@ -19,16 +19,10 @@ package com.android.wm.shell.windowdecor; import static android.view.InputDevice.SOURCE_TOUCHSCREEN; import static android.view.MotionEvent.ACTION_CANCEL; import static android.view.MotionEvent.ACTION_DOWN; -import static android.view.MotionEvent.ACTION_HOVER_ENTER; -import static android.view.MotionEvent.ACTION_HOVER_EXIT; -import static android.view.MotionEvent.ACTION_HOVER_MOVE; import static android.view.MotionEvent.ACTION_MOVE; -import static android.view.MotionEvent.ACTION_POINTER_UP; import static android.view.MotionEvent.ACTION_UP; -import android.annotation.NonNull; import android.graphics.PointF; -import android.util.Log; import android.view.MotionEvent; import android.view.View; @@ -43,34 +37,19 @@ import androidx.annotation.Nullable; * * All touch events must be passed through this class to track a drag event. */ -public class DragDetector { - private static final String TAG = "DragDetector"; - +class DragDetector { private final MotionEventHandler mEventHandler; private final PointF mInputDownPoint = new PointF(); private int mTouchSlop; private boolean mIsDragEvent; - private int mDragPointerId = -1; - private final long mHoldToDragMinDurationMs; - private boolean mDidStrayBeforeFullHold; - private boolean mDidHoldForMinDuration; + private int mDragPointerId; private boolean mResultOfDownAction; - /** - * Initialises a drag detector. - * - * @param eventHandler drag event handler. - * @param holdToDragMinDurationMs hold to drag duration. - * @param touchSlop touch slope threshold. - */ - public DragDetector(@NonNull MotionEventHandler eventHandler, long holdToDragMinDurationMs, - int touchSlop) { + DragDetector(MotionEventHandler eventHandler) { resetState(); mEventHandler = eventHandler; - mHoldToDragMinDurationMs = holdToDragMinDurationMs; - mTouchSlop = touchSlop; } /** @@ -79,7 +58,7 @@ public class DragDetector { * @return the result returned by {@link #mEventHandler}, or the result when * {@link #mEventHandler} handles the previous down event if the event shouldn't be passed */ - public boolean onMotionEvent(MotionEvent ev) { + boolean onMotionEvent(MotionEvent ev) { return onMotionEvent(null /* view */, ev); } @@ -88,8 +67,8 @@ public class DragDetector { * * @return the result returned by {@link #mEventHandler}, or the result when * {@link #mEventHandler} handles the previous down event if the event shouldn't be passed - */ - public boolean onMotionEvent(View v, MotionEvent ev) { + */ + boolean onMotionEvent(View v, MotionEvent ev) { final boolean isTouchScreen = (ev.getSource() & SOURCE_TOUCHSCREEN) == SOURCE_TOUCHSCREEN; if (!isTouchScreen) { @@ -107,90 +86,35 @@ public class DragDetector { return mResultOfDownAction; } case ACTION_MOVE: { - if (mDragPointerId == -1) { - // The primary pointer was lifted, ignore the rest of the gesture. - return mResultOfDownAction; + if (ev.findPointerIndex(mDragPointerId) == -1) { + mDragPointerId = ev.getPointerId(0); } final int dragPointerIndex = ev.findPointerIndex(mDragPointerId); - // TODO(b/400635953): Separate the app header and its buttons' - // touch listeners so they're not handled by the same DragDetector. - if (dragPointerIndex == -1) { - Log.w(TAG, "Invalid pointer index on ACTION_MOVE. Drag" - + " pointer id: " + mDragPointerId); - return mResultOfDownAction; - } if (!mIsDragEvent) { float dx = ev.getRawX(dragPointerIndex) - mInputDownPoint.x; float dy = ev.getRawY(dragPointerIndex) - mInputDownPoint.y; - final float dt = ev.getEventTime() - ev.getDownTime(); - final boolean pastTouchSlop = Math.hypot(dx, dy) > mTouchSlop; - final boolean withinHoldRegion = !pastTouchSlop; - - if (mHoldToDragMinDurationMs <= 0) { - mDidHoldForMinDuration = true; - } else { - if (!withinHoldRegion && dt < mHoldToDragMinDurationMs) { - // Mark as having strayed so that in case the (x,y) ends up in the - // original position we know it's not actually valid. - mDidStrayBeforeFullHold = true; - } - if (!mDidStrayBeforeFullHold && dt >= mHoldToDragMinDurationMs) { - mDidHoldForMinDuration = true; - } - } - // Touches generate noisy moves, so only once the move is past the touch // slop threshold should it be considered a drag. - mIsDragEvent = mDidHoldForMinDuration && pastTouchSlop; + mIsDragEvent = Math.hypot(dx, dy) > mTouchSlop; } // The event handler should only be notified about 'move' events if a drag has been // detected. - if (!mIsDragEvent) { + if (mIsDragEvent) { + return mEventHandler.handleMotionEvent(v, ev); + } else { return mResultOfDownAction; } - return mEventHandler.handleMotionEvent(v, - getSinglePointerEvent(ev, mDragPointerId)); - } - case ACTION_HOVER_ENTER: - case ACTION_HOVER_MOVE: - case ACTION_HOVER_EXIT: { - return mEventHandler.handleMotionEvent(v, - getSinglePointerEvent(ev, mDragPointerId)); - } - case ACTION_POINTER_UP: { - if (mDragPointerId == -1) { - // The primary pointer was lifted, ignore the rest of the gesture. - return mResultOfDownAction; - } - if (mDragPointerId != ev.getPointerId(ev.getActionIndex())) { - // Ignore a secondary pointer being lifted. - return mResultOfDownAction; - } - // The primary pointer is being lifted. - final int dragPointerId = mDragPointerId; - mDragPointerId = -1; - return mEventHandler.handleMotionEvent(v, getSinglePointerEvent(ev, dragPointerId)); } case ACTION_UP: case ACTION_CANCEL: { - final int dragPointerId = mDragPointerId; resetState(); - if (dragPointerId == -1) { - // The primary pointer was lifted, ignore the rest of the gesture. - return mResultOfDownAction; - } - return mEventHandler.handleMotionEvent(v, getSinglePointerEvent(ev, dragPointerId)); + return mEventHandler.handleMotionEvent(v, ev); } default: - // Ignore other events. - return mResultOfDownAction; + return mEventHandler.handleMotionEvent(v, ev); } } - private static MotionEvent getSinglePointerEvent(MotionEvent ev, int pointerId) { - return ev.getPointerCount() > 1 ? ev.split(1 << pointerId) : ev; - } - void setTouchSlop(int touchSlop) { mTouchSlop = touchSlop; } @@ -200,20 +124,9 @@ public class DragDetector { mInputDownPoint.set(0, 0); mDragPointerId = -1; mResultOfDownAction = false; - mDidStrayBeforeFullHold = false; - mDidHoldForMinDuration = false; } - /** - * Interface to be implemented by the class using the DragDetector for callback. - */ - public interface MotionEventHandler { - /** - * Called back when drag is detected to notify the implementing class to handle drag events. - * @param v view on which the input arrived. - * @param ev motion event that resulted in drag. - * @return whether this was a drag event or not. - */ + interface MotionEventHandler { boolean handleMotionEvent(@Nullable View v, MotionEvent ev); } -} \ No newline at end of file +} diff --git a/wmshell/src/com/android/wm/shell/windowdecor/DragPositioningCallback.java b/wmshell/src/com/android/wm/shell/windowdecor/DragPositioningCallback.java index 3eebdb048f..421ffd929f 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/DragPositioningCallback.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/DragPositioningCallback.java @@ -41,30 +41,25 @@ public interface DragPositioningCallback { * * @param ctrlType {@link CtrlType} indicating the direction of resizing, use * {@code 0} to indicate it's a move - * @param displayId the ID of the display where the drag starts * @param x x coordinate in window decoration coordinate system where the drag starts * @param y y coordinate in window decoration coordinate system where the drag starts * @return the starting task bounds */ - Rect onDragPositioningStart(@CtrlType int ctrlType, int displayId, float x, float y); + Rect onDragPositioningStart(@CtrlType int ctrlType, float x, float y); /** * Called when the pointer moves during a drag-resize or drag-move. - * - * @param displayId the ID of the display where the pointer is currently located * @param x x coordinate in window decoration coordinate system of the new pointer location * @param y y coordinate in window decoration coordinate system of the new pointer location * @return the updated task bounds */ - Rect onDragPositioningMove(int displayId, float x, float y); + Rect onDragPositioningMove(float x, float y); /** * Called when a drag-resize or drag-move stops. - * - * @param displayId the ID of the display where the pointer is located when drag stops * @param x x coordinate in window decoration coordinate system where the drag resize stops * @param y y coordinate in window decoration coordinate system where the drag resize stops * @return the final bounds for the dragged task */ - Rect onDragPositioningEnd(int displayId, float x, float y); + Rect onDragPositioningEnd(float x, float y); } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/DragPositioningCallbackUtility.java b/wmshell/src/com/android/wm/shell/windowdecor/DragPositioningCallbackUtility.java index f762e0456f..fe1c9c3cce 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/DragPositioningCallbackUtility.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/DragPositioningCallbackUtility.java @@ -22,14 +22,16 @@ import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_TOP; import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_UNDEFINED; +import android.content.Context; import android.graphics.PointF; import android.graphics.Rect; import android.util.DisplayMetrics; import android.view.SurfaceControl; -import android.window.DesktopModeFlags; +import com.android.window.flags.Flags; import com.android.wm.shell.R; import com.android.wm.shell.common.DisplayController; +import com.android.wm.shell.shared.DesktopModeStatus; /** * Utility class that contains logic common to classes implementing {@link DragPositioningCallback} @@ -66,7 +68,7 @@ public class DragPositioningCallbackUtility { */ static boolean changeBounds(int ctrlType, Rect repositionTaskBounds, Rect taskBoundsAtDragStart, Rect stableBounds, PointF delta, DisplayController displayController, - WindowDecoration windowDecoration, boolean canEnterDesktopMode) { + WindowDecoration windowDecoration) { // If task is being dragged rather than resized, return since this method only handles // with resizing if (ctrlType == CTRL_TYPE_UNDEFINED) { @@ -78,84 +80,50 @@ public class DragPositioningCallbackUtility { final int oldRight = repositionTaskBounds.right; final int oldBottom = repositionTaskBounds.bottom; + repositionTaskBounds.set(taskBoundsAtDragStart); - boolean isAspectRatioMaintained = true; // Make sure the new resizing destination in any direction falls within the stable bounds. + // If not, set the bounds back to the old location that was valid to avoid conflicts with + // some regions such as the gesture area. if ((ctrlType & CTRL_TYPE_LEFT) != 0) { - repositionTaskBounds.left = Math.max(repositionTaskBounds.left + (int) delta.x, - stableBounds.left); - if (repositionTaskBounds.left == stableBounds.left - && repositionTaskBounds.left + (int) delta.x != stableBounds.left) { - // If the task edge have been set to the stable bounds and not due to the users - // drag, the aspect ratio of the task will not be maintained. - isAspectRatioMaintained = false; - } + final int candidateLeft = repositionTaskBounds.left + (int) delta.x; + repositionTaskBounds.left = (candidateLeft > stableBounds.left) + ? candidateLeft : oldLeft; } if ((ctrlType & CTRL_TYPE_RIGHT) != 0) { - repositionTaskBounds.right = Math.min(repositionTaskBounds.right + (int) delta.x, - stableBounds.right); - if (repositionTaskBounds.right == stableBounds.right - && repositionTaskBounds.right + (int) delta.x != stableBounds.right) { - // If the task edge have been set to the stable bounds and not due to the users - // drag, the aspect ratio of the task will not be maintained. - isAspectRatioMaintained = false; - } + final int candidateRight = repositionTaskBounds.right + (int) delta.x; + repositionTaskBounds.right = (candidateRight < stableBounds.right) + ? candidateRight : oldRight; } if ((ctrlType & CTRL_TYPE_TOP) != 0) { - repositionTaskBounds.top = Math.max(repositionTaskBounds.top + (int) delta.y, - stableBounds.top); - if (repositionTaskBounds.top == stableBounds.top - && repositionTaskBounds.top + (int) delta.y != stableBounds.top) { - // If the task edge have been set to the stable bounds and not due to the users - // drag, the aspect ratio of the task will not be maintained. - isAspectRatioMaintained = false; - } + final int candidateTop = repositionTaskBounds.top + (int) delta.y; + repositionTaskBounds.top = (candidateTop > stableBounds.top) + ? candidateTop : oldTop; } if ((ctrlType & CTRL_TYPE_BOTTOM) != 0) { - repositionTaskBounds.bottom = Math.min(repositionTaskBounds.bottom + (int) delta.y, - stableBounds.bottom); - if (repositionTaskBounds.bottom == stableBounds.bottom - && repositionTaskBounds.bottom + (int) delta.y != stableBounds.bottom) { - // If the task edge have been set to the stable bounds and not due to the users - // drag, the aspect ratio of the task will not be maintained. - isAspectRatioMaintained = false; - } + final int candidateBottom = repositionTaskBounds.bottom + (int) delta.y; + repositionTaskBounds.bottom = (candidateBottom < stableBounds.bottom) + ? candidateBottom : oldBottom; } - - // If width or height are negative or exceeding the width or height constraints, revert the + // If width or height are negative or less than the minimum width or height, revert the // respective bounds to use previous bound dimensions. - if (isExceedingWidthConstraint(repositionTaskBounds.width(), - /* startingWidth= */ oldRight - oldLeft, stableBounds, displayController, - windowDecoration, canEnterDesktopMode)) { - repositionTaskBounds.right = oldRight; - repositionTaskBounds.left = oldLeft; - isAspectRatioMaintained = false; - } - if (isExceedingHeightConstraint(repositionTaskBounds.height(), - /* startingHeight= */oldBottom - oldTop, stableBounds, displayController, - windowDecoration, canEnterDesktopMode)) { - repositionTaskBounds.top = oldTop; - repositionTaskBounds.bottom = oldBottom; - isAspectRatioMaintained = false; - } - - // If the application is unresizeable and any bounds have been set back to their old - // location or to a stable bound edge, reset all the bounds to maintain the applications - // aspect ratio. - if (DesktopModeFlags.ENABLE_WINDOWING_SCALED_RESIZING.isTrue() - && !isAspectRatioMaintained && !windowDecoration.mTaskInfo.isResizeable) { - repositionTaskBounds.top = oldTop; - repositionTaskBounds.bottom = oldBottom; + if (repositionTaskBounds.width() < getMinWidth(displayController, windowDecoration)) { repositionTaskBounds.right = oldRight; repositionTaskBounds.left = oldLeft; } - - // If there are no changes to the bounds after checking new bounds against minimum and - // maximum width and height, do not set bounds and return false - return oldLeft != repositionTaskBounds.left || oldTop != repositionTaskBounds.top - || oldRight != repositionTaskBounds.right - || oldBottom != repositionTaskBounds.bottom; + if (repositionTaskBounds.height() < getMinHeight(displayController, windowDecoration)) { + repositionTaskBounds.top = oldTop; + repositionTaskBounds.bottom = oldBottom; + } + // If there are no changes to the bounds after checking new bounds against minimum width + // and height, do not set bounds and return false + if (oldLeft == repositionTaskBounds.left && oldTop == repositionTaskBounds.top + && oldRight == repositionTaskBounds.right + && oldBottom == repositionTaskBounds.bottom) { + return false; + } + return true; } /** @@ -206,75 +174,23 @@ public class DragPositioningCallbackUtility { return result; } - /** - * Checks whether the new task bounds exceed the allowed width. - * - * @param repositionedWidth task width after repositioning. - * @param startingWidth task width before repositioning. - * @param maxResizeBounds stable bounds for display. - * @param displayController display controller for the task being checked. - * @param windowDecoration contains decor info and helpers for the task. - * @return whether the task is exceeding any of the width constrains, minimum or maximum. - */ - public static boolean isExceedingWidthConstraint(int repositionedWidth, int startingWidth, - Rect maxResizeBounds, DisplayController displayController, - WindowDecoration windowDecoration, boolean canEnterDesktopMode) { - boolean isSizeIncreasing = (repositionedWidth - startingWidth) > 0; - // Check if width is less than the minimum width constraint. - if (repositionedWidth < getMinWidth(displayController, windowDecoration, - canEnterDesktopMode)) { - // Only allow width to be increased if it is already below minimum. - return !isSizeIncreasing; - } - // Check if width is more than the maximum resize bounds on desktop windowing mode. - // Only allow width to be decreased if it already exceeds maximum. - return isSizeConstraintForDesktopModeEnabled(canEnterDesktopMode) - && repositionedWidth > maxResizeBounds.width() && isSizeIncreasing; - } - - /** - * Checks whether the new task bounds exceed the allowed height. - * - * @param repositionedHeight task's height after repositioning. - * @param startingHeight task's height before repositioning. - * @param maxResizeBounds stable bounds for display. - * @param displayController display controller for the task being checked. - * @param windowDecoration contains decor info and helpers for the task. - * @return whether the task is exceeding any of the height constrains, minimum or maximum. - */ - public static boolean isExceedingHeightConstraint(int repositionedHeight, int startingHeight, - Rect maxResizeBounds, DisplayController displayController, - WindowDecoration windowDecoration, boolean canEnterDesktopMode) { - boolean isSizeIncreasing = (repositionedHeight - startingHeight) > 0; - // Check if height is less than the minimum height constraint. - if (repositionedHeight < getMinHeight(displayController, windowDecoration, - canEnterDesktopMode)) { - // Only allow height to be increased if it is already below minimum. - return !isSizeIncreasing; - } - // Check if height is more than the maximum resize bounds on desktop windowing mode. - // Only allow height to be decreased if it already exceeds maximum. - return isSizeConstraintForDesktopModeEnabled(canEnterDesktopMode) - && repositionedHeight > maxResizeBounds.height() && isSizeIncreasing; - } - private static float getMinWidth(DisplayController displayController, - WindowDecoration windowDecoration, boolean canEnterDesktopMode) { + WindowDecoration windowDecoration) { return windowDecoration.mTaskInfo.minWidth < 0 ? getDefaultMinWidth(displayController, - windowDecoration, canEnterDesktopMode) + windowDecoration) : windowDecoration.mTaskInfo.minWidth; } private static float getMinHeight(DisplayController displayController, - WindowDecoration windowDecoration, boolean canEnterDesktopMode) { + WindowDecoration windowDecoration) { return windowDecoration.mTaskInfo.minHeight < 0 ? getDefaultMinHeight(displayController, - windowDecoration, canEnterDesktopMode) + windowDecoration) : windowDecoration.mTaskInfo.minHeight; } private static float getDefaultMinWidth(DisplayController displayController, - WindowDecoration windowDecoration, boolean canEnterDesktopMode) { - if (isSizeConstraintForDesktopModeEnabled(canEnterDesktopMode)) { + WindowDecoration windowDecoration) { + if (isSizeConstraintForDesktopModeEnabled(windowDecoration.mDecorWindowContext)) { return WindowDecoration.loadDimensionPixelSize( windowDecoration.mDecorWindowContext.getResources(), R.dimen.desktop_mode_minimum_window_width); @@ -283,8 +199,8 @@ public class DragPositioningCallbackUtility { } private static float getDefaultMinHeight(DisplayController displayController, - WindowDecoration windowDecoration, boolean canEnterDesktopMode) { - if (isSizeConstraintForDesktopModeEnabled(canEnterDesktopMode)) { + WindowDecoration windowDecoration) { + if (isSizeConstraintForDesktopModeEnabled(windowDecoration.mDecorWindowContext)) { return WindowDecoration.loadDimensionPixelSize( windowDecoration.mDecorWindowContext.getResources(), R.dimen.desktop_mode_minimum_window_height); @@ -294,22 +210,22 @@ public class DragPositioningCallbackUtility { private static float getDefaultMinSize(DisplayController displayController, WindowDecoration windowDecoration) { - float density = displayController.getDisplayLayout(windowDecoration.mTaskInfo.displayId) + float density = displayController.getDisplayLayout(windowDecoration.mTaskInfo.displayId) .densityDpi() * DisplayMetrics.DENSITY_DEFAULT_SCALE; return windowDecoration.mTaskInfo.defaultMinSize * density; } - private static boolean isSizeConstraintForDesktopModeEnabled(boolean canEnterDesktopMode) { - return canEnterDesktopMode - && DesktopModeFlags.ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS.isTrue(); + private static boolean isSizeConstraintForDesktopModeEnabled(Context context) { + return DesktopModeStatus.canEnterDesktopMode(context) + && Flags.enableDesktopWindowingSizeConstraints(); } - public interface DragEventListener { + interface DragStartListener { /** - * Inform the implementing class that a drag move has started. + * Inform the implementing class that a drag resize has started * * @param taskId id of this positioner's {@link WindowDecoration} */ - void onDragMove(int taskId); + void onDragStart(int taskId); } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/DragResizeInputListener.java b/wmshell/src/com/android/wm/shell/windowdecor/DragResizeInputListener.java index 97a47c602b..d902444d4b 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/DragResizeInputListener.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/DragResizeInputListener.java @@ -23,7 +23,6 @@ import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_TRUSTED_OVERL import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION; import static android.view.WindowManager.LayoutParams.TYPE_INPUT_CONSUMER; -import static com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.ResizeTrigger; import static com.android.wm.shell.protolog.ShellProtoLogGroup.WM_SHELL_DESKTOP_MODE; import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_BOTTOM; import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_LEFT; @@ -33,7 +32,6 @@ import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.isEdgeRe import static com.android.wm.shell.windowdecor.DragResizeWindowGeometry.isEventFromTouchscreen; import android.annotation.NonNull; -import android.app.ActivityManager.RunningTaskInfo; import android.content.Context; import android.graphics.Point; import android.graphics.Rect; @@ -43,7 +41,6 @@ import android.os.Binder; import android.os.Handler; import android.os.IBinder; import android.os.RemoteException; -import android.os.Trace; import android.util.Size; import android.view.Choreographer; import android.view.IWindowSession; @@ -55,19 +52,13 @@ import android.view.PointerIcon; import android.view.SurfaceControl; import android.view.View; import android.view.ViewConfiguration; +import android.view.WindowManagerGlobal; import android.window.InputTransferToken; -import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayLayout; -import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.desktopmode.DesktopModeEventLogger; -import com.android.wm.shell.shared.annotations.ShellBackgroundThread; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import java.util.ArrayList; -import java.util.List; import java.util.function.Consumer; import java.util.function.Supplier; @@ -79,154 +70,25 @@ import java.util.function.Supplier; */ class DragResizeInputListener implements AutoCloseable { private static final String TAG = "DragResizeInputListener"; - private final IWindowSession mWindowSession; - private final TaskResizeInputEventReceiverFactory mEventReceiverFactory; - private final Supplier<SurfaceControl.Builder> mSurfaceControlBuilderSupplier; + private final IWindowSession mWindowSession = WindowManagerGlobal.getWindowSession(); private final Supplier<SurfaceControl.Transaction> mSurfaceControlTransactionSupplier; private final int mDisplayId; - @VisibleForTesting - final IBinder mClientToken; + private final IBinder mClientToken; private final SurfaceControl mDecorationSurface; - private InputChannel mInputChannel; - private TaskResizeInputEventReceiver mInputEventReceiver; + private final InputChannel mInputChannel; + private final TaskResizeInputEventReceiver mInputEventReceiver; - private final Context mContext; - private final @ShellBackgroundThread ShellExecutor mBgExecutor; - private final RunningTaskInfo mTaskInfo; - private final Handler mHandler; - private final Choreographer mChoreographer; - private SurfaceControl mInputSinkSurface; - @VisibleForTesting - final IBinder mSinkClientToken; - private InputChannel mSinkInputChannel; + private final SurfaceControl mInputSinkSurface; + private final IBinder mSinkClientToken; + private final InputChannel mSinkInputChannel; private final DisplayController mDisplayController; - /** TODO: b/396490344 - this desktop-specific class should be abstracted out of here. */ - private final DesktopModeEventLogger mDesktopModeEventLogger; - private final DragPositioningCallback mDragPositioningCallback; private final Region mTouchRegion = new Region(); - private final List<Runnable> mOnInitializedCallbacks = new ArrayList<>(); - - private final Runnable mInitInputChannels; - private boolean mClosed = false; DragResizeInputListener( Context context, - IWindowSession windowSession, - @ShellMainThread ShellExecutor mainExecutor, - @ShellBackgroundThread ShellExecutor bgExecutor, - TaskResizeInputEventReceiverFactory eventReceiverFactory, - RunningTaskInfo taskInfo, - Handler handler, - Choreographer choreographer, - int displayId, - SurfaceControl decorationSurface, - DragPositioningCallback callback, - Supplier<SurfaceControl.Builder> surfaceControlBuilderSupplier, - Supplier<SurfaceControl.Transaction> surfaceControlTransactionSupplier, - DisplayController displayController, - DesktopModeEventLogger desktopModeEventLogger, - InputChannel inputChannel, - InputChannel sinkInputChannel) { - mContext = context; - mWindowSession = windowSession; - mBgExecutor = bgExecutor; - mEventReceiverFactory = eventReceiverFactory; - mTaskInfo = taskInfo; - mHandler = handler; - mChoreographer = choreographer; - mDisplayId = displayId; - // Creates a new SurfaceControl pointing the same underlying surface with decorationSurface - // to ensure that mDecorationSurface will not be released while it's used on the background - // thread. Note that the empty name will be overridden by the next copyFrom call. - mDecorationSurface = surfaceControlBuilderSupplier.get().setName("").build(); - mDecorationSurface.copyFrom(decorationSurface, "DragResizeInputListener"); - mDragPositioningCallback = callback; - mSurfaceControlBuilderSupplier = surfaceControlBuilderSupplier; - mSurfaceControlTransactionSupplier = surfaceControlTransactionSupplier; - mDisplayController = displayController; - mDesktopModeEventLogger = desktopModeEventLogger; - mClientToken = new Binder(); - mSinkClientToken = new Binder(); - - // Setting up input channels for both the resize listener and the input sink requires - // multiple blocking binder calls, so it's moved to a bg thread to keep the shell.main - // thread free. - // The input event receiver must be created back in the shell.main thread though because - // its geometry and util methods are updated/queried from the shell.main thread. - mInitInputChannels = () -> { - final InputSetUpResult result = setUpInputChannels(mDisplayId, mWindowSession, - mDecorationSurface, mClientToken, mSinkClientToken, - mSurfaceControlBuilderSupplier, - mSurfaceControlTransactionSupplier, inputChannel, sinkInputChannel); - mainExecutor.execute(() -> { - if (mClosed) { - result.mInputChannel.dispose(); - result.mSinkInputChannel.dispose(); - mSurfaceControlTransactionSupplier.get().remove( - result.mInputSinkSurface).apply(); - return; - } - mInputSinkSurface = result.mInputSinkSurface; - mInputChannel = result.mInputChannel; - mSinkInputChannel = result.mSinkInputChannel; - Trace.beginSection("DragResizeInputListener#ctor-initReceiver"); - mInputEventReceiver = mEventReceiverFactory.create( - mContext, - mTaskInfo, - mInputChannel, - mDragPositioningCallback, - mHandler, - mChoreographer, - () -> { - final DisplayLayout layout = - mDisplayController.getDisplayLayout(mDisplayId); - return new Size(layout.width(), layout.height()); - }, - this::updateSinkInputChannel, - mDesktopModeEventLogger); - mInputEventReceiver.setTouchSlop( - ViewConfiguration.get(mContext).getScaledTouchSlop()); - for (Runnable initCallback : mOnInitializedCallbacks) { - initCallback.run(); - } - mOnInitializedCallbacks.clear(); - Trace.endSection(); - }); - }; - bgExecutor.execute(mInitInputChannels); - } - - DragResizeInputListener( - Context context, - IWindowSession windowSession, - @ShellMainThread ShellExecutor mainExecutor, - @ShellBackgroundThread ShellExecutor bgExecutor, - RunningTaskInfo taskInfo, - Handler handler, - Choreographer choreographer, - int displayId, - SurfaceControl decorationSurface, - DragPositioningCallback callback, - Supplier<SurfaceControl.Builder> surfaceControlBuilderSupplier, - Supplier<SurfaceControl.Transaction> surfaceControlTransactionSupplier, - DisplayController displayController, - DesktopModeEventLogger desktopModeEventLogger) { - this(context, windowSession, mainExecutor, bgExecutor, - new DefaultTaskResizeInputEventReceiverFactory(), taskInfo, - handler, choreographer, displayId, decorationSurface, callback, - surfaceControlBuilderSupplier, surfaceControlTransactionSupplier, - displayController, desktopModeEventLogger, new InputChannel(), new InputChannel()); - } - - DragResizeInputListener( - Context context, - IWindowSession windowSession, - @ShellMainThread ShellExecutor mainExecutor, - @ShellBackgroundThread ShellExecutor bgExecutor, - RunningTaskInfo taskInfo, Handler handler, Choreographer choreographer, int displayId, @@ -235,42 +97,18 @@ class DragResizeInputListener implements AutoCloseable { Supplier<SurfaceControl.Builder> surfaceControlBuilderSupplier, Supplier<SurfaceControl.Transaction> surfaceControlTransactionSupplier, DisplayController displayController) { - this(context, windowSession, mainExecutor, bgExecutor, taskInfo, - handler, choreographer, displayId, decorationSurface, callback, - surfaceControlBuilderSupplier, surfaceControlTransactionSupplier, - displayController, new DesktopModeEventLogger()); - } - - /** - * Registers a callback to be invoked when the input listener has finished initializing. If - * already finished, the callback will be invoked immediately. - */ - void addInitializedCallback(Runnable onReady) { - if (mInputEventReceiver != null) { - onReady.run(); - return; - } - mOnInitializedCallbacks.add(onReady); - } - - @ShellBackgroundThread - private static InputSetUpResult setUpInputChannels( - int displayId, - @NonNull IWindowSession windowSession, - @NonNull SurfaceControl decorationSurface, - @NonNull IBinder clientToken, - @NonNull IBinder sinkClientToken, - @NonNull Supplier<SurfaceControl.Builder> surfaceControlBuilderSupplier, - @NonNull Supplier<SurfaceControl.Transaction> surfaceControlTransactionSupplier, - @NonNull InputChannel inputChannel, - @NonNull InputChannel sinkInputChannel) { - Trace.beginSection("DragResizeInputListener#setUpInputChannels"); + mSurfaceControlTransactionSupplier = surfaceControlTransactionSupplier; + mDisplayId = displayId; + mDecorationSurface = decorationSurface; + mDisplayController = displayController; + mClientToken = new Binder(); final InputTransferToken inputTransferToken = new InputTransferToken(); + mInputChannel = new InputChannel(); try { - windowSession.grantInputChannel( - displayId, - decorationSurface, - clientToken, + mWindowSession.grantInputChannel( + mDisplayId, + mDecorationSurface, + mClientToken, null /* hostInputToken */, FLAG_NOT_FOCUSABLE, PRIVATE_FLAG_TRUSTED_OVERLAY, @@ -278,27 +116,36 @@ class DragResizeInputListener implements AutoCloseable { TYPE_APPLICATION, null /* windowToken */, inputTransferToken, - TAG + " of " + decorationSurface, - inputChannel); + TAG + " of " + decorationSurface.toString(), + mInputChannel); } catch (RemoteException e) { e.rethrowFromSystemServer(); } - final SurfaceControl inputSinkSurface = surfaceControlBuilderSupplier.get() + mInputEventReceiver = new TaskResizeInputEventReceiver(context, mInputChannel, callback, + handler, choreographer, () -> { + final DisplayLayout layout = mDisplayController.getDisplayLayout(mDisplayId); + return new Size(layout.width(), layout.height()); + }, this::updateSinkInputChannel); + mInputEventReceiver.setTouchSlop(ViewConfiguration.get(context).getScaledTouchSlop()); + + mInputSinkSurface = surfaceControlBuilderSupplier.get() .setName("TaskInputSink of " + decorationSurface) .setContainerLayer() - .setParent(decorationSurface) - .setCallsite("DragResizeInputListener.setUpInputChannels") + .setParent(mDecorationSurface) + .setCallsite("DragResizeInputListener.constructor") .build(); - surfaceControlTransactionSupplier.get() - .setLayer(inputSinkSurface, WindowDecoration.INPUT_SINK_Z_ORDER) - .show(inputSinkSurface) + mSurfaceControlTransactionSupplier.get() + .setLayer(mInputSinkSurface, WindowDecoration.INPUT_SINK_Z_ORDER) + .show(mInputSinkSurface) .apply(); + mSinkClientToken = new Binder(); + mSinkInputChannel = new InputChannel(); try { - windowSession.grantInputChannel( - displayId, - inputSinkSurface, - sinkClientToken, + mWindowSession.grantInputChannel( + mDisplayId, + mInputSinkSurface, + mSinkClientToken, null /* hostInputToken */, FLAG_NOT_FOCUSABLE, 0 /* privateFlags */, @@ -307,12 +154,10 @@ class DragResizeInputListener implements AutoCloseable { null /* windowToken */, inputTransferToken, "TaskInputSink of " + decorationSurface, - sinkInputChannel); + mSinkInputChannel); } catch (RemoteException e) { e.rethrowFromSystemServer(); } - Trace.endSection(); - return new InputSetUpResult(inputSinkSurface, inputChannel, sinkInputChannel); } /** @@ -342,7 +187,6 @@ class DragResizeInputListener implements AutoCloseable { try { mWindowSession.updateInputChannel( mInputChannel.getToken(), - null /* hostInputToken */, mDisplayId, mDecorationSurface, FLAG_NOT_FOCUSABLE, @@ -384,7 +228,6 @@ class DragResizeInputListener implements AutoCloseable { try { mWindowSession.updateInputChannel( mSinkInputChannel.getToken(), - null /* hostInputToken */, mDisplayId, mInputSinkSurface, FLAG_NOT_FOCUSABLE, @@ -397,109 +240,37 @@ class DragResizeInputListener implements AutoCloseable { } boolean shouldHandleEvent(@NonNull MotionEvent e, @NonNull Point offset) { - return mInputEventReceiver != null && mInputEventReceiver.shouldHandleEvent(e, offset); + return mInputEventReceiver.shouldHandleEvent(e, offset); } boolean isHandlingDragResize() { - return mInputEventReceiver != null && mInputEventReceiver.isHandlingEvents(); + return mInputEventReceiver.isHandlingEvents(); } @Override public void close() { - mClosed = true; - if (mInitInputChannels != null) { - mBgExecutor.removeCallbacks(mInitInputChannels); - } - if (mInputEventReceiver != null) { - mInputEventReceiver.dispose(); - } - if (mInputChannel != null) { - mInputChannel.dispose(); - } - if (mSinkInputChannel != null) { - mSinkInputChannel.dispose(); + mInputEventReceiver.dispose(); + mInputChannel.dispose(); + try { + mWindowSession.remove(mClientToken); + } catch (RemoteException e) { + e.rethrowFromSystemServer(); } - if (mInputSinkSurface != null) { - mSurfaceControlTransactionSupplier.get() - .remove(mInputSinkSurface) - .apply(); + mSinkInputChannel.dispose(); + try { + mWindowSession.remove(mSinkClientToken); + } catch (RemoteException e) { + e.rethrowFromSystemServer(); } - - mBgExecutor.execute(() -> { - try { - mWindowSession.remove(mClientToken); - mWindowSession.remove(mSinkClientToken); - } catch (RemoteException e) { - e.rethrowFromSystemServer(); - } - // Removing this surface on the background thread to ensure that mInitInputChannels has - // already been finished. - // Do not |remove| the surface, the decoration might still be needed even if - // drag-resizing isn't. - mDecorationSurface.release(); - }); + mSurfaceControlTransactionSupplier.get() + .remove(mInputSinkSurface) + .apply(); } - private static class InputSetUpResult { - final @NonNull SurfaceControl mInputSinkSurface; - final @NonNull InputChannel mInputChannel; - final @NonNull InputChannel mSinkInputChannel; - - InputSetUpResult(@NonNull SurfaceControl inputSinkSurface, - @NonNull InputChannel inputChannel, - @NonNull InputChannel sinkInputChannel) { - mInputSinkSurface = inputSinkSurface; - mInputChannel = inputChannel; - mSinkInputChannel = sinkInputChannel; - } - } - - /** A factory that creates {@link TaskResizeInputEventReceiver}s. */ - interface TaskResizeInputEventReceiverFactory { - @NonNull - TaskResizeInputEventReceiver create( - @NonNull Context context, - @NonNull RunningTaskInfo taskInfo, - @NonNull InputChannel inputChannel, - @NonNull DragPositioningCallback callback, - @NonNull Handler handler, - @NonNull Choreographer choreographer, - @NonNull Supplier<Size> displayLayoutSizeSupplier, - @NonNull Consumer<Region> touchRegionConsumer, - @NonNull DesktopModeEventLogger desktopModeEventLogger - ); - } - - /** A default implementation of {@link TaskResizeInputEventReceiverFactory}. */ - static class DefaultTaskResizeInputEventReceiverFactory - implements TaskResizeInputEventReceiverFactory { - @Override - @NonNull - public TaskResizeInputEventReceiver create( - @NonNull Context context, - @NonNull RunningTaskInfo taskInfo, - @NonNull InputChannel inputChannel, - @NonNull DragPositioningCallback callback, - @NonNull Handler handler, - @NonNull Choreographer choreographer, - @NonNull Supplier<Size> displayLayoutSizeSupplier, - @NonNull Consumer<Region> touchRegionConsumer, - @NonNull DesktopModeEventLogger desktopModeEventLogger) { - return new TaskResizeInputEventReceiver(context, taskInfo, inputChannel, callback, - handler, choreographer, displayLayoutSizeSupplier, touchRegionConsumer, - desktopModeEventLogger); - } - } - - /** - * An input event receiver to handle motion events on the task's corners and edges for - * drag-resizing, as well as keeping the input sink updated. - */ - static class TaskResizeInputEventReceiver extends InputEventReceiver implements + private static class TaskResizeInputEventReceiver extends InputEventReceiver implements DragDetector.MotionEventHandler { @NonNull private final Context mContext; - @NonNull private final RunningTaskInfo mTaskInfo; private final InputManager mInputManager; @NonNull private final InputChannel mInputChannel; @NonNull private final DragPositioningCallback mCallback; @@ -508,7 +279,6 @@ class DragResizeInputListener implements AutoCloseable { @NonNull private final DragDetector mDragDetector; @NonNull private final Supplier<Size> mDisplayLayoutSizeSupplier; @NonNull private final Consumer<Region> mTouchRegionConsumer; - @NonNull private final DesktopModeEventLogger mDesktopModeEventLogger; private final Rect mTmpRect = new Rect(); private boolean mConsumeBatchEventScheduled; private DragResizeWindowGeometry mDragResizeWindowGeometry; @@ -520,24 +290,15 @@ class DragResizeInputListener implements AutoCloseable { // resize events. For example, if multiple fingers are touching the screen, then each one // has a separate pointer id, but we only accept drag input from one. private int mDragPointerId = -1; - // The type of resizing that is currently being done. Used to track the same resize trigger - // on start and end of the resizing action. - private ResizeTrigger mResizeTrigger = ResizeTrigger.UNKNOWN_RESIZE_TRIGGER; - // The last MotionEvent on ACTION_DOWN, used to track the input tool type and source for - // logging the start and end of the resizing action. - private MotionEvent mLastMotionEventOnDown; private TaskResizeInputEventReceiver(@NonNull Context context, - @NonNull RunningTaskInfo taskInfo, @NonNull InputChannel inputChannel, @NonNull DragPositioningCallback callback, @NonNull Handler handler, @NonNull Choreographer choreographer, @NonNull Supplier<Size> displayLayoutSizeSupplier, - @NonNull Consumer<Region> touchRegionConsumer, - @NonNull DesktopModeEventLogger desktopModeEventLogger) { + @NonNull Consumer<Region> touchRegionConsumer) { super(inputChannel, handler.getLooper()); mContext = context; - mTaskInfo = taskInfo; mInputManager = context.getSystemService(InputManager.class); mInputChannel = inputChannel; mCallback = callback; @@ -554,11 +315,9 @@ class DragResizeInputListener implements AutoCloseable { } }; - mDragDetector = new DragDetector(this, 0 /* holdToDragMinDurationMs */, - ViewConfiguration.get(mContext).getScaledTouchSlop()); + mDragDetector = new DragDetector(this); mDisplayLayoutSizeSupplier = displayLayoutSizeSupplier; mTouchRegionConsumer = touchRegionConsumer; - mDesktopModeEventLogger = desktopModeEventLogger; } /** @@ -632,12 +391,11 @@ class DragResizeInputListener implements AutoCloseable { @Override public boolean handleMotionEvent(View v, MotionEvent e) { boolean result = false; - // Check if this is a touch event vs mouse event. // Touch events are tracked in four corners. Other events are tracked in resize edges. switch (e.getActionMasked()) { case MotionEvent.ACTION_DOWN: { - mShouldHandleEvents = mDragResizeWindowGeometry.shouldHandleEvent(mContext, e, + mShouldHandleEvents = mDragResizeWindowGeometry.shouldHandleEvent(e, new Point() /* offset */); if (mShouldHandleEvents) { // Save the id of the pointer for this drag interaction; we will use the @@ -648,21 +406,11 @@ class DragResizeInputListener implements AutoCloseable { float rawX = e.getRawX(0); float rawY = e.getRawY(0); final int ctrlType = mDragResizeWindowGeometry.calculateCtrlType( - isEventFromTouchscreen(e), isEdgeResizePermitted(e), x, - y); + isEventFromTouchscreen(e), isEdgeResizePermitted(e), x, y); ProtoLog.d(WM_SHELL_DESKTOP_MODE, "%s: Handling action down, update ctrlType to %d", TAG, ctrlType); mDragStartTaskBounds = mCallback.onDragPositioningStart(ctrlType, - e.getDisplayId(), rawX, rawY); - mLastMotionEventOnDown = e; - mResizeTrigger = (ctrlType == CTRL_TYPE_BOTTOM || ctrlType == CTRL_TYPE_TOP - || ctrlType == CTRL_TYPE_RIGHT || ctrlType == CTRL_TYPE_LEFT) - ? ResizeTrigger.EDGE : ResizeTrigger.CORNER; - mDesktopModeEventLogger.logTaskResizingStarted(mResizeTrigger, - DesktopModeEventLogger.getInputMethodFromMotionEvent(e), - mTaskInfo, mDragStartTaskBounds.width(), - mDragStartTaskBounds.height(), /* displayController= */ null, - /* displayLayoutSize= */ mDisplayLayoutSizeSupplier.get()); + rawX, rawY); // Increase the input sink region to cover the whole screen; this is to // prevent input and focus from going to other tasks during a drag resize. updateInputSinkRegionForDrag(mDragStartTaskBounds); @@ -688,8 +436,7 @@ class DragResizeInputListener implements AutoCloseable { } final float rawX = e.getRawX(dragPointerIndex); final float rawY = e.getRawY(dragPointerIndex); - final Rect taskBounds = mCallback.onDragPositioningMove(e.getDisplayId(), - rawX, rawY); + final Rect taskBounds = mCallback.onDragPositioningMove(rawX, rawY); updateInputSinkRegionForDrag(taskBounds); result = true; break; @@ -705,20 +452,13 @@ class DragResizeInputListener implements AutoCloseable { TAG, e.getActionMasked()); break; } - final Rect taskBounds = mCallback.onDragPositioningEnd(e.getDisplayId(), + final Rect taskBounds = mCallback.onDragPositioningEnd( e.getRawX(dragPointerIndex), e.getRawY(dragPointerIndex)); // If taskBounds has changed, setGeometry will be called and update the // sink region. Otherwise, we should revert it here. if (taskBounds.equals(mDragStartTaskBounds)) { mTouchRegionConsumer.accept(mTouchRegion); } - - mDesktopModeEventLogger.logTaskResizingEnded(mResizeTrigger, - DesktopModeEventLogger.getInputMethodFromMotionEvent( - mLastMotionEventOnDown), mTaskInfo, taskBounds.width(), - taskBounds.height(), - /* displayController= */ null, - /* displayLayoutSize= */ mDisplayLayoutSizeSupplier.get()); } mShouldHandleEvents = false; mDragPointerId = -1; @@ -728,7 +468,8 @@ class DragResizeInputListener implements AutoCloseable { case MotionEvent.ACTION_HOVER_ENTER: case MotionEvent.ACTION_HOVER_MOVE: { updateCursorType(e.getDisplayId(), e.getDeviceId(), - e.getPointerId(/*pointerIndex=*/0), e.getX(), e.getY()); + e.getPointerId(/*pointerIndex=*/0), e.getXCursorPosition(), + e.getYCursorPosition()); result = true; break; } @@ -756,8 +497,8 @@ class DragResizeInputListener implements AutoCloseable { // Since we are handling cursor, we know that this is not a touchscreen event, and // that edge resizing should always be allowed. @DragPositioningCallback.CtrlType int ctrlType = - mDragResizeWindowGeometry.calculateCtrlType(/* isTouchscreen= */ false, - /* isEdgeResizePermitted= */ true, x, y); + mDragResizeWindowGeometry.calculateCtrlType(/* isTouchscreen= */ + false, /* isEdgeResizePermitted= */ true, x, y); int cursorType = PointerIcon.TYPE_DEFAULT; switch (ctrlType) { @@ -797,7 +538,7 @@ class DragResizeInputListener implements AutoCloseable { } private boolean shouldHandleEvent(MotionEvent e, Point offset) { - return mDragResizeWindowGeometry.shouldHandleEvent(mContext, e, offset); + return mDragResizeWindowGeometry.shouldHandleEvent(e, offset); } } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/DragResizeWindowGeometry.java b/wmshell/src/com/android/wm/shell/windowdecor/DragResizeWindowGeometry.java index 3f89f7d38d..b5d1d4a763 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/DragResizeWindowGeometry.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/DragResizeWindowGeometry.java @@ -16,10 +16,9 @@ package com.android.wm.shell.windowdecor; -import static android.view.InputDevice.SOURCE_MOUSE; import static android.view.InputDevice.SOURCE_TOUCHSCREEN; -import static android.window.DesktopModeFlags.ENABLE_WINDOWING_EDGE_DRAG_RESIZE; +import static com.android.window.flags.Flags.enableWindowingEdgeDragResize; import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_BOTTOM; import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_LEFT; import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_RIGHT; @@ -27,7 +26,6 @@ import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_UNDEFINED; import android.annotation.NonNull; -import android.content.Context; import android.content.res.Resources; import android.graphics.Point; import android.graphics.Rect; @@ -35,6 +33,9 @@ import android.graphics.Region; import android.util.Size; import android.view.MotionEvent; +import androidx.annotation.Nullable; +import androidx.annotation.VisibleForTesting; + import com.android.wm.shell.R; import java.util.Objects; @@ -42,57 +43,53 @@ import java.util.Objects; /** * Geometry for a drag resize region for a particular window. */ -public final class DragResizeWindowGeometry { +final class DragResizeWindowGeometry { + // TODO(b/337264971) clean up when no longer needed + @VisibleForTesting static final boolean DEBUG = true; + // The additional width to apply to edge resize bounds just for logging when a touch is + // close. + @VisibleForTesting static final int EDGE_DEBUG_BUFFER = 15; private final int mTaskCornerRadius; private final Size mTaskSize; - // The size of the handle outside the task window applied to the edges of the window, for the - // user to drag resize. - private final int mResizeHandleEdgeOutset; - // The size of the handle inside the task window applied to the edges of the window, for the - // user to drag resize. - private final int mResizeHandleEdgeInset; + // The size of the handle applied to the edges of the window, for the user to drag resize. + private final int mResizeHandleThickness; // The task corners to permit drag resizing with a course input, such as touch. + private final @NonNull TaskCorners mLargeTaskCorners; // The task corners to permit drag resizing with a fine input, such as stylus or cursor. private final @NonNull TaskCorners mFineTaskCorners; // The bounds for each edge drag region, which can resize the task in one direction. - final @NonNull TaskEdges mTaskEdges; - - private final DisabledEdge mDisabledEdge; + private final @NonNull TaskEdges mTaskEdges; + // Extra-large edge bounds for logging to help debug when an edge resize is ignored. + private final @Nullable TaskEdges mDebugTaskEdges; DragResizeWindowGeometry(int taskCornerRadius, @NonNull Size taskSize, - int resizeHandleEdgeOutset, int resizeHandleEdgeInset, int fineCornerSize, - int largeCornerSize, DisabledEdge disabledEdge) { + int resizeHandleThickness, int fineCornerSize, int largeCornerSize) { mTaskCornerRadius = taskCornerRadius; mTaskSize = taskSize; - mResizeHandleEdgeOutset = resizeHandleEdgeOutset; - mResizeHandleEdgeInset = resizeHandleEdgeInset; - - mDisabledEdge = disabledEdge; + mResizeHandleThickness = resizeHandleThickness; mLargeTaskCorners = new TaskCorners(mTaskSize, largeCornerSize); mFineTaskCorners = new TaskCorners(mTaskSize, fineCornerSize); // Save touch areas for each edge. - mTaskEdges = new TaskEdges(mTaskSize, mResizeHandleEdgeOutset, mDisabledEdge); + mTaskEdges = new TaskEdges(mTaskSize, mResizeHandleThickness); + if (DEBUG) { + mDebugTaskEdges = new TaskEdges(mTaskSize, mResizeHandleThickness + EDGE_DEBUG_BUFFER); + } else { + mDebugTaskEdges = null; + } } /** * Returns the resource value to use for the resize handle on the edge of the window. */ static int getResizeEdgeHandleSize(@NonNull Resources res) { - return ENABLE_WINDOWING_EDGE_DRAG_RESIZE.isTrue() - ? res.getDimensionPixelSize(R.dimen.freeform_edge_handle_outset) + return enableWindowingEdgeDragResize() + ? res.getDimensionPixelSize(R.dimen.desktop_mode_edge_handle) : res.getDimensionPixelSize(R.dimen.freeform_resize_handle); } - /** - * Returns the resource value to use for the edge resize handle inside the task bounds. - */ - static int getResizeHandleEdgeInset(@NonNull Resources res) { - return res.getDimensionPixelSize(R.dimen.freeform_edge_handle_inset); - } - /** * Returns the resource value to use for course input, such as touch, that benefits from a large * square on each of the window's corners. @@ -112,8 +109,7 @@ public final class DragResizeWindowGeometry { /** * Returns the size of the task this geometry is calculated for. */ - @NonNull - Size getTaskSize() { + @NonNull Size getTaskSize() { // Safe to return directly since size is immutable. return mTaskSize; } @@ -124,9 +120,15 @@ public final class DragResizeWindowGeometry { */ void union(@NonNull Region region) { // Apply the edge resize regions. - mTaskEdges.union(region); + if (inDebugMode()) { + // Use the larger edge sizes if we are debugging, to be able to log if we ignored a + // touch due to the size of the edge region. + mDebugTaskEdges.union(region); + } else { + mTaskEdges.union(region); + } - if (ENABLE_WINDOWING_EDGE_DRAG_RESIZE.isTrue()) { + if (enableWindowingEdgeDragResize()) { // Apply the corners as well for the larger corners, to ensure we capture all possible // touches. mLargeTaskCorners.union(region); @@ -139,12 +141,11 @@ public final class DragResizeWindowGeometry { /** * Returns if this MotionEvent should be handled, based on its source and position. */ - boolean shouldHandleEvent(@NonNull Context context, @NonNull MotionEvent e, - @NonNull Point offset) { + boolean shouldHandleEvent(@NonNull MotionEvent e, @NonNull Point offset) { final float x = e.getX(0) + offset.x; final float y = e.getY(0) + offset.y; - if (ENABLE_WINDOWING_EDGE_DRAG_RESIZE.isTrue()) { + if (enableWindowingEdgeDragResize()) { // First check if touch falls within a corner. // Large corner bounds are used for course input like touch, otherwise fine bounds. boolean result = isEventFromTouchscreen(e) @@ -168,16 +169,10 @@ public final class DragResizeWindowGeometry { return (e.getSource() & SOURCE_TOUCHSCREEN) == SOURCE_TOUCHSCREEN; } - /** - * Whether resizing a window from the edge is permitted based on the motion event. - */ - public static boolean isEdgeResizePermitted(@NonNull MotionEvent e) { - if (ENABLE_WINDOWING_EDGE_DRAG_RESIZE.isTrue()) { + static boolean isEdgeResizePermitted(@NonNull MotionEvent e) { + if (enableWindowingEdgeDragResize()) { return e.getToolType(0) == MotionEvent.TOOL_TYPE_STYLUS - || e.getToolType(0) == MotionEvent.TOOL_TYPE_MOUSE - // Touchpad input - || (e.isFromSource(SOURCE_MOUSE) - && e.getToolType(0) == MotionEvent.TOOL_TYPE_FINGER); + || e.getToolType(0) == MotionEvent.TOOL_TYPE_MOUSE; } else { return e.getToolType(0) == MotionEvent.TOOL_TYPE_MOUSE; } @@ -188,21 +183,20 @@ public final class DragResizeWindowGeometry { } private boolean isInEdgeResizeBounds(float x, float y) { - return calculateEdgeResizeCtrlType(x, y) != CTRL_TYPE_UNDEFINED; + return calculateEdgeResizeCtrlType(x, y) != 0; } /** * Returns the control type for the drag-resize, based on the touch regions and this * MotionEvent's coordinates. - * * @param isTouchscreen Controls the size of the corner resize regions; touchscreen events - * (finger & stylus) are eligible for a larger area than cursor events. + * (finger & stylus) are eligible for a larger area than cursor events * @param isEdgeResizePermitted Indicates if the event is eligible for falling into an edge * resize region. */ @DragPositioningCallback.CtrlType int calculateCtrlType(boolean isTouchscreen, boolean isEdgeResizePermitted, float x, float y) { - if (ENABLE_WINDOWING_EDGE_DRAG_RESIZE.isTrue()) { + if (enableWindowingEdgeDragResize()) { // First check if touch falls within a corner. // Large corner bounds are used for course input like touch, otherwise fine bounds. int ctrlType = isTouchscreen @@ -225,6 +219,10 @@ public final class DragResizeWindowGeometry { @DragPositioningCallback.CtrlType private int calculateEdgeResizeCtrlType(float x, float y) { + if (inDebugMode() && (mDebugTaskEdges.contains((int) x, (int) y) + && !mTaskEdges.contains((int) x, (int) y))) { + return CTRL_TYPE_UNDEFINED; + } int ctrlType = CTRL_TYPE_UNDEFINED; // mTaskCornerRadius is only used in comparing with corner regions. Comparisons with // sides will use the bounds specified in setGeometry and not go into task bounds. @@ -241,15 +239,13 @@ public final class DragResizeWindowGeometry { ctrlType |= CTRL_TYPE_BOTTOM; } // If the touch is within one of the four corners, check if it is within the bounds of the - // handle. + // // handle. if ((ctrlType & (CTRL_TYPE_LEFT | CTRL_TYPE_RIGHT)) != 0 && (ctrlType & (CTRL_TYPE_TOP | CTRL_TYPE_BOTTOM)) != 0) { return checkDistanceFromCenter(ctrlType, x, y); } - // Allow a small resize handle inside the task bounds defined by the edge inset. - return (x <= mResizeHandleEdgeInset || y <= mResizeHandleEdgeInset - || x >= mTaskSize.getWidth() - mResizeHandleEdgeInset - || y >= mTaskSize.getHeight() - mResizeHandleEdgeInset) + // Otherwise, we should make sure we don't resize tasks inside task bounds. + return (x < 0 || y < 0 || x >= mTaskSize.getWidth() || y >= mTaskSize.getHeight()) ? ctrlType : CTRL_TYPE_UNDEFINED; } @@ -263,7 +259,7 @@ public final class DragResizeWindowGeometry { final Point cornerRadiusCenter = calculateCenterForCornerRadius(ctrlType); double distanceFromCenter = Math.hypot(x - cornerRadiusCenter.x, y - cornerRadiusCenter.y); - if (distanceFromCenter < mTaskCornerRadius + mResizeHandleEdgeOutset + if (distanceFromCenter < mTaskCornerRadius + mResizeHandleThickness && distanceFromCenter >= mTaskCornerRadius) { return ctrlType; } @@ -314,11 +310,12 @@ public final class DragResizeWindowGeometry { return this.mTaskCornerRadius == other.mTaskCornerRadius && this.mTaskSize.equals(other.mTaskSize) - && this.mResizeHandleEdgeOutset == other.mResizeHandleEdgeOutset - && this.mResizeHandleEdgeInset == other.mResizeHandleEdgeInset + && this.mResizeHandleThickness == other.mResizeHandleThickness && this.mFineTaskCorners.equals(other.mFineTaskCorners) && this.mLargeTaskCorners.equals(other.mLargeTaskCorners) - && this.mTaskEdges.equals(other.mTaskEdges); + && (inDebugMode() + ? this.mDebugTaskEdges.equals(other.mDebugTaskEdges) + : this.mTaskEdges.equals(other.mTaskEdges)); } @Override @@ -326,11 +323,14 @@ public final class DragResizeWindowGeometry { return Objects.hash( mTaskCornerRadius, mTaskSize, - mResizeHandleEdgeOutset, - mResizeHandleEdgeInset, + mResizeHandleThickness, mFineTaskCorners, mLargeTaskCorners, - mTaskEdges); + (inDebugMode() ? mDebugTaskEdges : mTaskEdges)); + } + + private boolean inDebugMode() { + return DEBUG && mDebugTaskEdges != null; } /** @@ -378,10 +378,10 @@ public final class DragResizeWindowGeometry { * Updates the region to include all four corners. */ void union(Region region) { - region.union(mRightTopCornerBounds); - region.union(mRightBottomCornerBounds); region.union(mLeftTopCornerBounds); + region.union(mRightTopCornerBounds); region.union(mLeftBottomCornerBounds); + region.union(mRightBottomCornerBounds); } /** @@ -448,36 +448,35 @@ public final class DragResizeWindowGeometry { private final @NonNull Rect mRightEdgeBounds; private final @NonNull Rect mBottomEdgeBounds; private final @NonNull Region mRegion; - private final @NonNull DisabledEdge mDisabledEdge; - private TaskEdges(@NonNull Size taskSize, int resizeHandleThickness, - DisabledEdge disabledEdge) { - // Save touch areas for each edge. - mDisabledEdge = disabledEdge; + private TaskEdges(@NonNull Size taskSize, int resizeHandleThickness) { // Save touch areas for each edge. mTopEdgeBounds = new Rect( -resizeHandleThickness, -resizeHandleThickness, taskSize.getWidth() + resizeHandleThickness, - resizeHandleThickness); + 0); mLeftEdgeBounds = new Rect( -resizeHandleThickness, 0, - resizeHandleThickness, + 0, taskSize.getHeight()); mRightEdgeBounds = new Rect( - taskSize.getWidth() - resizeHandleThickness, + taskSize.getWidth(), 0, taskSize.getWidth() + resizeHandleThickness, taskSize.getHeight()); mBottomEdgeBounds = new Rect( -resizeHandleThickness, - taskSize.getHeight() - resizeHandleThickness, + taskSize.getHeight(), taskSize.getWidth() + resizeHandleThickness, taskSize.getHeight() + resizeHandleThickness); mRegion = new Region(); - union(mRegion); + mRegion.union(mTopEdgeBounds); + mRegion.union(mLeftEdgeBounds); + mRegion.union(mRightEdgeBounds); + mRegion.union(mBottomEdgeBounds); } /** @@ -491,13 +490,9 @@ public final class DragResizeWindowGeometry { * Updates the region to include all four corners. */ private void union(Region region) { - if (mDisabledEdge != DisabledEdge.RIGHT) { - region.union(mRightEdgeBounds); - } - if (mDisabledEdge != DisabledEdge.LEFT) { - region.union(mLeftEdgeBounds); - } region.union(mTopEdgeBounds); + region.union(mLeftEdgeBounds); + region.union(mRightEdgeBounds); region.union(mBottomEdgeBounds); } @@ -519,8 +514,7 @@ public final class DragResizeWindowGeometry { return this.mTopEdgeBounds.equals(other.mTopEdgeBounds) && this.mLeftEdgeBounds.equals(other.mLeftEdgeBounds) && this.mRightEdgeBounds.equals(other.mRightEdgeBounds) - && this.mBottomEdgeBounds.equals(other.mBottomEdgeBounds) - && this.mDisabledEdge.equals(other.mDisabledEdge); + && this.mBottomEdgeBounds.equals(other.mBottomEdgeBounds); } @Override @@ -532,10 +526,4 @@ public final class DragResizeWindowGeometry { mBottomEdgeBounds); } } - - public enum DisabledEdge { - LEFT, - RIGHT, - NONE - } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositioner.java b/wmshell/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositioner.java index f9def591b1..76096b0c59 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositioner.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositioner.java @@ -33,10 +33,8 @@ import androidx.annotation.Nullable; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.transition.Transitions; -import java.util.ArrayList; import java.util.function.Supplier; /** @@ -51,19 +49,18 @@ import java.util.function.Supplier; * that we send the final shell transition since we still utilize the {@link #onTransitionConsumed} * callback. */ -class FluidResizeTaskPositioner implements TaskPositioner, Transitions.TransitionHandler { +class FluidResizeTaskPositioner implements DragPositioningCallback, + TaskDragResizer, Transitions.TransitionHandler { private final ShellTaskOrganizer mTaskOrganizer; private final Transitions mTransitions; private final WindowDecoration mWindowDecoration; private final Supplier<SurfaceControl.Transaction> mTransactionSupplier; private DisplayController mDisplayController; - private ArrayList<DragPositioningCallbackUtility.DragEventListener> mDragEventListeners = - new ArrayList<>(); + private DragPositioningCallbackUtility.DragStartListener mDragStartListener; private final Rect mStableBounds = new Rect(); private final Rect mTaskBoundsAtDragStart = new Rect(); private final PointF mRepositionStartPoint = new PointF(); private final Rect mRepositionTaskBounds = new Rect(); - private final DesktopState mDesktopState; private boolean mHasDragResized; private boolean mIsResizingOrAnimatingResize; private int mCtrlType; @@ -71,36 +68,35 @@ class FluidResizeTaskPositioner implements TaskPositioner, Transitions.Transitio @Surface.Rotation private int mRotation; FluidResizeTaskPositioner(ShellTaskOrganizer taskOrganizer, Transitions transitions, - WindowDecoration windowDecoration, DisplayController displayController, - DesktopState desktopState) { + WindowDecoration windowDecoration, DisplayController displayController) { this(taskOrganizer, transitions, windowDecoration, displayController, - SurfaceControl.Transaction::new, desktopState); + dragStartListener -> {}, SurfaceControl.Transaction::new); } FluidResizeTaskPositioner(ShellTaskOrganizer taskOrganizer, Transitions transitions, WindowDecoration windowDecoration, DisplayController displayController, - Supplier<SurfaceControl.Transaction> supplier, - DesktopState desktopState) { + DragPositioningCallbackUtility.DragStartListener dragStartListener, + Supplier<SurfaceControl.Transaction> supplier) { mTaskOrganizer = taskOrganizer; mTransitions = transitions; mWindowDecoration = windowDecoration; mDisplayController = displayController; + mDragStartListener = dragStartListener; mTransactionSupplier = supplier; - mDesktopState = desktopState; } @Override - public Rect onDragPositioningStart(int ctrlType, int displayId, float x, float y) { + public Rect onDragPositioningStart(int ctrlType, float x, float y) { mCtrlType = ctrlType; mTaskBoundsAtDragStart.set( mWindowDecoration.mTaskInfo.configuration.windowConfiguration.getBounds()); mRepositionStartPoint.set(x, y); - if (mCtrlType != CTRL_TYPE_UNDEFINED && !mWindowDecoration.mHasGlobalFocus) { + mDragStartListener.onDragStart(mWindowDecoration.mTaskInfo.taskId); + if (mCtrlType != CTRL_TYPE_UNDEFINED && !mWindowDecoration.mTaskInfo.isFocused) { WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.reorder(mWindowDecoration.mTaskInfo.token, true /* onTop */, - true /* includingParents */); + wct.reorder(mWindowDecoration.mTaskInfo.token, true); mTaskOrganizer.applyTransaction(wct); } mRepositionTaskBounds.set(mTaskBoundsAtDragStart); @@ -115,20 +111,15 @@ class FluidResizeTaskPositioner implements TaskPositioner, Transitions.Transitio } @Override - public Rect onDragPositioningMove(int displayId, float x, float y) { + public Rect onDragPositioningMove(float x, float y) { final WindowContainerTransaction wct = new WindowContainerTransaction(); PointF delta = DragPositioningCallbackUtility.calculateDelta(x, y, mRepositionStartPoint); if (isResizing() && DragPositioningCallbackUtility.changeBounds(mCtrlType, mRepositionTaskBounds, mTaskBoundsAtDragStart, mStableBounds, delta, - mDisplayController, mWindowDecoration, - mDesktopState.canEnterDesktopMode())) { + mDisplayController, mWindowDecoration)) { // The task is being resized, send the |dragResizing| hint to core with the first // bounds-change wct. if (!mHasDragResized) { - for (DragPositioningCallbackUtility.DragEventListener listener : - mDragEventListeners) { - listener.onDragMove(mWindowDecoration.mTaskInfo.taskId); - } // This is the first bounds change since drag resize operation started. wct.setDragResizing(mWindowDecoration.mTaskInfo.token, true /* dragResizing */); } @@ -146,7 +137,7 @@ class FluidResizeTaskPositioner implements TaskPositioner, Transitions.Transitio } @Override - public Rect onDragPositioningEnd(int displayId, float x, float y) { + public Rect onDragPositioningEnd(float x, float y) { // If task has been resized or task was dragged into area outside of // mDisallowedAreaForEndBounds, apply WCT to finish it. if (isResizing() && mHasDragResized) { @@ -156,13 +147,16 @@ class FluidResizeTaskPositioner implements TaskPositioner, Transitions.Transitio mRepositionStartPoint); if (DragPositioningCallbackUtility.changeBounds(mCtrlType, mRepositionTaskBounds, mTaskBoundsAtDragStart, mStableBounds, delta, mDisplayController, - mWindowDecoration, mDesktopState.canEnterDesktopMode())) { + mWindowDecoration)) { wct.setBounds(mWindowDecoration.mTaskInfo.token, mRepositionTaskBounds); } mDragResizeEndTransition = mTransitions.startTransition(TRANSIT_CHANGE, wct, this); } else if (mCtrlType == CTRL_TYPE_UNDEFINED) { + final WindowContainerTransaction wct = new WindowContainerTransaction(); DragPositioningCallbackUtility.updateTaskBounds(mRepositionTaskBounds, mTaskBoundsAtDragStart, mRepositionStartPoint, x, y); + wct.setBounds(mWindowDecoration.mTaskInfo.token, mRepositionTaskBounds); + mTransitions.startTransition(TRANSIT_CHANGE, wct, this); } mTaskBoundsAtDragStart.setEmpty(); @@ -172,9 +166,6 @@ class FluidResizeTaskPositioner implements TaskPositioner, Transitions.Transitio return new Rect(mRepositionTaskBounds); } - @Override - public void close() {} - private boolean isResizing() { return (mCtrlType & CTRL_TYPE_TOP) != 0 || (mCtrlType & CTRL_TYPE_BOTTOM) != 0 || (mCtrlType & CTRL_TYPE_LEFT) != 0 || (mCtrlType & CTRL_TYPE_RIGHT) != 0; @@ -228,16 +219,4 @@ class FluidResizeTaskPositioner implements TaskPositioner, Transitions.Transitio public boolean isResizingOrAnimating() { return mIsResizingOrAnimatingResize; } - - @Override - public void addDragEventListener( - DragPositioningCallbackUtility.DragEventListener dragEventListener) { - mDragEventListeners.add(dragEventListener); - } - - @Override - public void removeDragEventListener( - DragPositioningCallbackUtility.DragEventListener dragEventListener) { - mDragEventListeners.remove(dragEventListener); - } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/HandleImageButton.kt b/wmshell/src/com/android/wm/shell/windowdecor/HandleImageButton.kt index 458815d196..b21c3f522e 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/HandleImageButton.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/HandleImageButton.kt @@ -17,12 +17,9 @@ package com.android.wm.shell.windowdecor import android.animation.ValueAnimator -import android.annotation.DimenRes -import android.content.res.Resources; import android.content.Context import android.util.AttributeSet import android.widget.ImageButton -import com.android.wm.shell.R /** * [ImageButton] for the handle at the top of fullscreen apps. Has custom hover @@ -33,23 +30,13 @@ class HandleImageButton (context: Context?, attrs: AttributeSet?) : ImageButton(context, attrs) { private val handleAnimator = ValueAnimator() - /** Final horizontal padding for hover enter. **/ - private val HANDLE_HOVER_ENTER_PADDING = loadDimensionPixelSize( - R.dimen.desktop_mode_fullscreen_decor_caption_horizontal_padding_hovered) - /** Final horizontal padding for press down. **/ - private val HANDLE_PRESS_DOWN_PADDING = loadDimensionPixelSize( - R.dimen.desktop_mode_fullscreen_decor_caption_horizontal_padding_touched) - /** Default horizontal padding. **/ - private val HANDLE_DEFAULT_PADDING = loadDimensionPixelSize( - R.dimen.desktop_mode_fullscreen_decor_caption_horizontal_padding_default) - override fun onHoverChanged(hovered: Boolean) { super.onHoverChanged(hovered) if (hovered) { - animateHandle(HANDLE_HOVER_ANIM_DURATION, HANDLE_HOVER_ENTER_PADDING) + animateHandle(HANDLE_HOVER_ANIM_DURATION, HANDLE_HOVER_ENTER_SCALE) } else { if (!isPressed) { - animateHandle(HANDLE_HOVER_ANIM_DURATION, HANDLE_DEFAULT_PADDING) + animateHandle(HANDLE_HOVER_ANIM_DURATION, HANDLE_DEFAULT_SCALE) } } } @@ -58,37 +45,35 @@ class HandleImageButton (context: Context?, attrs: AttributeSet?) : if (isPressed != pressed) { super.setPressed(pressed) if (pressed) { - animateHandle(HANDLE_PRESS_ANIM_DURATION, HANDLE_PRESS_DOWN_PADDING) + animateHandle(HANDLE_PRESS_ANIM_DURATION, HANDLE_PRESS_DOWN_SCALE) } else { - animateHandle(HANDLE_PRESS_ANIM_DURATION, HANDLE_DEFAULT_PADDING) + animateHandle(HANDLE_PRESS_ANIM_DURATION, HANDLE_DEFAULT_SCALE) } } } - private fun animateHandle(duration: Long, endPadding: Int) { + private fun animateHandle(duration: Long, endScale: Float) { if (handleAnimator.isRunning) { handleAnimator.cancel() } handleAnimator.duration = duration - handleAnimator.setIntValues(paddingLeft, endPadding) + handleAnimator.setFloatValues(scaleX, endScale) handleAnimator.addUpdateListener { animator -> - val padding = animator.animatedValue as Int - setPadding(padding, paddingTop, padding, paddingBottom) + scaleX = animator.animatedValue as Float } handleAnimator.start() } - private fun loadDimensionPixelSize(@DimenRes resourceId: Int): Int { - if (resourceId == Resources.ID_NULL) { - return 0 - } - return context.resources.getDimensionPixelSize(resourceId) - } - companion object { /** The duration of animations related to hover state. **/ private const val HANDLE_HOVER_ANIM_DURATION = 300L /** The duration of animations related to pressed state. **/ private const val HANDLE_PRESS_ANIM_DURATION = 200L + /** Ending scale for hover enter. **/ + private const val HANDLE_HOVER_ENTER_SCALE = 1.2f + /** Ending scale for press down. **/ + private const val HANDLE_PRESS_DOWN_SCALE = 0.85f + /** Default scale for handle. **/ + private const val HANDLE_DEFAULT_SCALE = 1f } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/HandleMenu.java b/wmshell/src/com/android/wm/shell/windowdecor/HandleMenu.java index b741a42f2d..df0836c112 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/HandleMenu.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/HandleMenu.java @@ -49,7 +49,7 @@ import android.window.SurfaceSyncGroup; import androidx.annotation.VisibleForTesting; -import com.android.window.flags2.Flags; +import com.android.window.flags.Flags; import com.android.wm.shell.R; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayLayout; diff --git a/wmshell/src/com/android/wm/shell/windowdecor/HandleMenuAnimator.kt b/wmshell/src/com/android/wm/shell/windowdecor/HandleMenuAnimator.kt index 75f90bb9c3..8c5d4a2c2f 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/HandleMenuAnimator.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/HandleMenuAnimator.kt @@ -26,12 +26,10 @@ import android.view.View.SCALE_Y import android.view.View.TRANSLATION_Y import android.view.View.TRANSLATION_Z import android.view.ViewGroup -import android.view.accessibility.AccessibilityEvent -import android.widget.Button import androidx.core.animation.doOnEnd import androidx.core.view.children import com.android.wm.shell.R -import com.android.wm.shell.shared.animation.Interpolators +import com.android.wm.shell.animation.Interpolators /** Animates the Handle Menu opening. */ class HandleMenuAnimator( @@ -74,8 +72,6 @@ class HandleMenuAnimator( private val appInfoPill: ViewGroup = handleMenu.requireViewById(R.id.app_info_pill) private val windowingPill: ViewGroup = handleMenu.requireViewById(R.id.windowing_pill) private val moreActionsPill: ViewGroup = handleMenu.requireViewById(R.id.more_actions_pill) - private val openInAppOrBrowserPill: ViewGroup = - handleMenu.requireViewById(R.id.open_in_app_or_browser_pill) /** Animates the opening of the handle menu. */ fun animateOpen() { @@ -84,13 +80,7 @@ class HandleMenuAnimator( animateAppInfoPillOpen() animateWindowingPillOpen() animateMoreActionsPillOpen() - animateOpenInAppOrBrowserPill() - runAnimations { - appInfoPill.post { - appInfoPill.requireViewById<View>(R.id.collapse_menu_button).sendAccessibilityEvent( - AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - } + runAnimations() } /** @@ -104,13 +94,7 @@ class HandleMenuAnimator( animateAppInfoPillOpen() animateWindowingPillOpen() animateMoreActionsPillOpen() - animateOpenInAppOrBrowserPill() - runAnimations { - appInfoPill.post { - appInfoPill.requireViewById<View>(R.id.collapse_menu_button).sendAccessibilityEvent( - AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - } + runAnimations() } /** @@ -120,12 +104,11 @@ class HandleMenuAnimator( * * @param after runs after the animation finishes. */ - fun animateCollapseIntoHandleClose(after: () -> Unit) { + fun animateCollapseIntoHandleClose(after: Runnable) { appInfoCollapseToHandle() animateAppInfoPillFadeOut() windowingPillClose() moreActionsPillClose() - openInAppOrBrowserPillClose() runAnimations(after) } @@ -137,12 +120,11 @@ class HandleMenuAnimator( * @param after runs after animation finishes. * */ - fun animateClose(after: () -> Unit) { + fun animateClose(after: Runnable) { appInfoPillCollapse() animateAppInfoPillFadeOut() windowingPillClose() moreActionsPillClose() - openInAppOrBrowserPillClose() runAnimations(after) } @@ -155,7 +137,6 @@ class HandleMenuAnimator( appInfoPill.children.forEach { it.alpha = 0f } windowingPill.alpha = 0f moreActionsPill.alpha = 0f - openInAppOrBrowserPill.alpha = 0f // Setup pivots. handleMenu.pivotX = menuWidth / 2f @@ -166,9 +147,6 @@ class HandleMenuAnimator( moreActionsPill.pivotX = menuWidth / 2f moreActionsPill.pivotY = appInfoPill.measuredHeight.toFloat() - - openInAppOrBrowserPill.pivotX = menuWidth / 2f - openInAppOrBrowserPill.pivotY = appInfoPill.measuredHeight.toFloat() } private fun animateAppInfoPillOpen() { @@ -290,50 +268,12 @@ class HandleMenuAnimator( // More Actions Content Opacity Animation moreActionsPill.children.forEach { animators += - ObjectAnimator.ofFloat(it, ALPHA, 1f).apply { - startDelay = BODY_ALPHA_OPEN_DELAY - duration = BODY_CONTENT_ALPHA_OPEN_DURATION - interpolator = Interpolators.FAST_OUT_SLOW_IN - } - } - } - - private fun animateOpenInAppOrBrowserPill() { - // Open in Browser X & Y Scaling Animation - animators += - ObjectAnimator.ofFloat(openInAppOrBrowserPill, SCALE_X, HALF_INITIAL_SCALE, 1f).apply { - startDelay = BODY_SCALE_OPEN_DELAY - duration = BODY_SCALE_OPEN_DURATION - } - - animators += - ObjectAnimator.ofFloat(openInAppOrBrowserPill, SCALE_Y, HALF_INITIAL_SCALE, 1f).apply { - startDelay = BODY_SCALE_OPEN_DELAY - duration = BODY_SCALE_OPEN_DURATION - } - - // Open in Browser Opacity Animation - animators += - ObjectAnimator.ofFloat(openInAppOrBrowserPill, ALPHA, 1f).apply { - startDelay = BODY_ALPHA_OPEN_DELAY - duration = BODY_ALPHA_OPEN_DURATION - } - - // Open in Browser Elevation Animation - animators += - ObjectAnimator.ofFloat(openInAppOrBrowserPill, TRANSLATION_Z, 1f).apply { - startDelay = ELEVATION_OPEN_DELAY - duration = BODY_ELEVATION_OPEN_DURATION - } - - // Open in Browser Button Opacity Animation - val button = openInAppOrBrowserPill.requireViewById<View>(R.id.open_in_app_or_browser_button) - animators += - ObjectAnimator.ofFloat(button, ALPHA, 1f).apply { + ObjectAnimator.ofFloat(it, ALPHA, 1f).apply { startDelay = BODY_ALPHA_OPEN_DELAY duration = BODY_CONTENT_ALPHA_OPEN_DURATION interpolator = Interpolators.FAST_OUT_SLOW_IN } + } } private fun appInfoPillCollapse() { @@ -439,45 +379,14 @@ class HandleMenuAnimator( } } - private fun openInAppOrBrowserPillClose() { - // Open in Browser X & Y Scaling Animation - animators += - ObjectAnimator.ofFloat(openInAppOrBrowserPill, SCALE_X, HALF_INITIAL_SCALE).apply { - duration = BODY_CLOSE_DURATION - } - - animators += - ObjectAnimator.ofFloat(openInAppOrBrowserPill, SCALE_Y, HALF_INITIAL_SCALE).apply { - duration = BODY_CLOSE_DURATION - } - - // Open in Browser Opacity Animation - animators += - ObjectAnimator.ofFloat(openInAppOrBrowserPill, ALPHA, 0f).apply { - duration = BODY_CLOSE_DURATION - } - - animators += - ObjectAnimator.ofFloat(openInAppOrBrowserPill, ALPHA, 0f).apply { - duration = BODY_CLOSE_DURATION - } - - // Upward Open in Browser y-translation Animation - val yStart: Float = -captionHeight / 2 - animators += - ObjectAnimator.ofFloat(openInAppOrBrowserPill, TRANSLATION_Y, yStart).apply { - duration = BODY_CLOSE_DURATION - } - } - /** * Runs the list of hide animators concurrently. * * @param after runs after animation finishes. */ - private fun runAnimations(after: (() -> Unit)? = null) { + private fun runAnimations(after: Runnable? = null) { runningAnimation?.apply { - // Remove all listeners, so that the after function isn't triggered upon cancel. + // Remove all listeners, so that after runnable isn't triggered upon cancel. removeAllListeners() // If an animation runs while running animation is triggered, gracefully cancel. cancel() @@ -487,7 +396,7 @@ class HandleMenuAnimator( playTogether(animators) animators.clear() doOnEnd { - after?.invoke() + after?.run() runningAnimation = null } start() diff --git a/wmshell/src/com/android/wm/shell/windowdecor/HandleMenuImageButton.kt b/wmshell/src/com/android/wm/shell/windowdecor/HandleMenuImageButton.kt index 8bc56e0807..18757ef6ff 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/HandleMenuImageButton.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/HandleMenuImageButton.kt @@ -16,12 +16,13 @@ package com.android.wm.shell.windowdecor import android.app.ActivityManager.RunningTaskInfo +import com.android.window.flags.Flags +import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalSystemViewContainer + import android.content.Context import android.util.AttributeSet import android.view.MotionEvent import android.widget.ImageButton -import android.window.DesktopModeFlags -import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalSystemViewContainer /** * A custom [ImageButton] for buttons inside handle menu that intentionally doesn't handle hovers. @@ -38,7 +39,7 @@ class HandleMenuImageButton( lateinit var taskInfo: RunningTaskInfo override fun onHoverEvent(motionEvent: MotionEvent): Boolean { - if (DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue() || taskInfo.isFreeform) { + if (Flags.enableAdditionalWindowsAboveStatusBar() || taskInfo.isFreeform) { return super.onHoverEvent(motionEvent) } else { return false diff --git a/wmshell/src/com/android/wm/shell/windowdecor/MaximizeButtonView.kt b/wmshell/src/com/android/wm/shell/windowdecor/MaximizeButtonView.kt index e8aac39a65..4f049015af 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/MaximizeButtonView.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/MaximizeButtonView.kt @@ -18,43 +18,40 @@ package com.android.wm.shell.windowdecor import android.animation.AnimatorSet import android.animation.ObjectAnimator import android.animation.ValueAnimator -import android.annotation.DrawableRes import android.content.Context import android.content.res.ColorStateList import android.graphics.Color -import android.graphics.drawable.Drawable +import android.graphics.drawable.RippleDrawable import android.util.AttributeSet import android.view.LayoutInflater import android.view.View -import android.view.ViewStub import android.widget.FrameLayout import android.widget.ImageButton import android.widget.ProgressBar -import android.window.DesktopModeFlags import androidx.core.animation.doOnEnd import androidx.core.animation.doOnStart import androidx.core.content.ContextCompat +import com.android.window.flags.Flags import com.android.wm.shell.R private const val OPEN_MAXIMIZE_MENU_DELAY_ON_HOVER_MS = 350 private const val MAX_DRAWABLE_ALPHA = 255 -class MaximizeButtonView(context: Context, attrs: AttributeSet) : FrameLayout(context, attrs) { +class MaximizeButtonView( + context: Context, + attrs: AttributeSet +) : FrameLayout(context, attrs) { lateinit var onHoverAnimationFinishedListener: () -> Unit private val hoverProgressAnimatorSet = AnimatorSet() var hoverDisabled = false - private lateinit var stubProgressBarContainer: ViewStub + private val progressBar: ProgressBar private val maximizeWindow: ImageButton - private val progressBar: ProgressBar by lazy { - (stubProgressBarContainer.inflate() as FrameLayout) - .requireViewById(R.id.progress_bar) - } init { LayoutInflater.from(context).inflate(R.layout.maximize_menu_button, this, true) - stubProgressBarContainer = requireViewById(R.id.stub_progress_bar_container) + progressBar = requireViewById(R.id.progress_bar) maximizeWindow = requireViewById(R.id.maximize_window) } @@ -109,50 +106,32 @@ class MaximizeButtonView(context: Context, attrs: AttributeSet) : FrameLayout(co darkMode: Boolean, iconForegroundColor: ColorStateList? = null, baseForegroundColor: Int? = null, - backgroundDrawable: Drawable? = null + rippleDrawable: RippleDrawable? = null ) { - if (DesktopModeFlags.ENABLE_THEMED_APP_HEADERS.isTrue()) { + if (Flags.enableThemedAppHeaders()) { requireNotNull(iconForegroundColor) { "Icon foreground color must be non-null" } requireNotNull(baseForegroundColor) { "Base foreground color must be non-null" } - requireNotNull(backgroundDrawable) { "Background drawable must be non-null" } + requireNotNull(rippleDrawable) { "Ripple drawable must be non-null" } maximizeWindow.imageTintList = iconForegroundColor - maximizeWindow.background = backgroundDrawable - stubProgressBarContainer.setOnInflateListener { _, inflated -> - val progressBar = (inflated as FrameLayout) - .requireViewById(R.id.progress_bar) as ProgressBar - progressBar.progressTintList = ColorStateList.valueOf(baseForegroundColor) - .withAlpha(OPACITY_15) - progressBar.progressBackgroundTintList = ColorStateList.valueOf(Color.TRANSPARENT) - } + maximizeWindow.background = rippleDrawable + progressBar.progressTintList = ColorStateList.valueOf(baseForegroundColor) + .withAlpha(OPACITY_15) + progressBar.progressBackgroundTintList = ColorStateList.valueOf(Color.TRANSPARENT) } else { - val progressTint = if (darkMode) { - ColorStateList.valueOf( + if (darkMode) { + progressBar.progressTintList = ColorStateList.valueOf( resources.getColor(R.color.desktop_mode_maximize_menu_progress_dark)) + maximizeWindow.background?.setTintList(ContextCompat.getColorStateList(context, + R.color.desktop_mode_caption_button_color_selector_dark)) } else { - ColorStateList.valueOf( + progressBar.progressTintList = ColorStateList.valueOf( resources.getColor(R.color.desktop_mode_maximize_menu_progress_light)) + maximizeWindow.background?.setTintList(ContextCompat.getColorStateList(context, + R.color.desktop_mode_caption_button_color_selector_light)) } - val backgroundTint = if (darkMode) { - ContextCompat.getColorStateList(context, - R.color.desktop_mode_caption_button_color_selector_dark) - } else { - ContextCompat.getColorStateList(context, - R.color.desktop_mode_caption_button_color_selector_light) - } - stubProgressBarContainer.setOnInflateListener { _, inflated -> - val progressBar = (inflated as FrameLayout) - .requireViewById(R.id.progress_bar) as ProgressBar - progressBar.progressTintList = progressTint - } - maximizeWindow.background?.setTintList(backgroundTint) } } - /** Set the drawable resource to use for the maximize button. */ - fun setIcon(@DrawableRes icon: Int) { - maximizeWindow.setImageResource(icon) - } - companion object { private const val OPACITY_15 = 38 } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/MaximizeMenu.kt b/wmshell/src/com/android/wm/shell/windowdecor/MaximizeMenu.kt index 0b5f02c5ac..0470367015 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/MaximizeMenu.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/MaximizeMenu.kt @@ -20,86 +20,69 @@ import android.animation.AnimatorSet import android.animation.ObjectAnimator import android.animation.ValueAnimator import android.annotation.ColorInt +import android.annotation.IdRes import android.app.ActivityManager.RunningTaskInfo import android.content.Context import android.content.res.ColorStateList import android.content.res.Resources import android.graphics.Paint import android.graphics.PixelFormat -import android.graphics.Point -import android.graphics.Rect +import android.graphics.PointF import android.graphics.drawable.Drawable import android.graphics.drawable.GradientDrawable import android.graphics.drawable.LayerDrawable import android.graphics.drawable.ShapeDrawable import android.graphics.drawable.StateListDrawable import android.graphics.drawable.shapes.RoundRectShape -import android.os.Bundle import android.util.StateSet import android.view.LayoutInflater import android.view.MotionEvent -import android.view.MotionEvent.ACTION_HOVER_ENTER -import android.view.MotionEvent.ACTION_HOVER_EXIT -import android.view.MotionEvent.ACTION_HOVER_MOVE -import android.view.MotionEvent.ACTION_OUTSIDE import android.view.SurfaceControl import android.view.SurfaceControl.Transaction import android.view.SurfaceControlViewHost import android.view.View import android.view.View.OnClickListener +import android.view.View.OnGenericMotionListener import android.view.View.OnTouchListener import android.view.View.SCALE_Y import android.view.View.TRANSLATION_Y import android.view.View.TRANSLATION_Z import android.view.WindowManager import android.view.WindowlessWindowManager -import android.view.accessibility.AccessibilityEvent -import android.view.accessibility.AccessibilityNodeInfo -import android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction import android.widget.Button import android.widget.TextView import android.window.TaskConstants import androidx.compose.material3.ColorScheme import androidx.compose.ui.graphics.toArgb import androidx.core.animation.addListener -import androidx.core.view.isGone -import androidx.core.view.isVisible import com.android.wm.shell.R import com.android.wm.shell.RootTaskDisplayAreaOrganizer +import com.android.wm.shell.animation.Interpolators.EMPHASIZED_DECELERATE import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.SyncTransactionQueue -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.getInputMethodFromMotionEvent -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.InputMethod -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.A11Y_MAXIMIZE_MENU_MAXIMIZE -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.A11Y_MAXIMIZE_MENU_RESIZE_LEFT -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.A11Y_MAXIMIZE_MENU_RESIZE_RIGHT -import com.android.wm.shell.desktopmode.isTaskMaximized -import com.android.wm.shell.shared.animation.Interpolators.EMPHASIZED_DECELERATE -import com.android.wm.shell.shared.animation.Interpolators.FAST_OUT_LINEAR_IN import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalViewHostViewContainer import com.android.wm.shell.windowdecor.common.DecorThemeUtil import com.android.wm.shell.windowdecor.common.OPACITY_12 import com.android.wm.shell.windowdecor.common.OPACITY_40 -import com.android.wm.shell.windowdecor.common.OPACITY_60 import com.android.wm.shell.windowdecor.common.withAlpha import java.util.function.Supplier + /** * Menu that appears when user long clicks the maximize button. Gives the user the option to - * maximize the task or restore previous task bounds from the maximized state and to snap the task - * to the right or left half of the screen. + * maximize the task or snap the task to the right or left half of the screen. */ class MaximizeMenu( - private val syncQueue: SyncTransactionQueue, - private val rootTdaOrganizer: RootTaskDisplayAreaOrganizer, - private val displayController: DisplayController, - private val windowDecorationActions: WindowDecorationActions, - private val taskInfo: RunningTaskInfo, - private val decorWindowContext: Context, - private val positionSupplier: (Int, Int) -> Point, - private val transactionSupplier: Supplier<Transaction> = Supplier { Transaction() }, - private val desktopModeUiEventLogger: DesktopModeUiEventLogger + private val syncQueue: SyncTransactionQueue, + private val rootTdaOrganizer: RootTaskDisplayAreaOrganizer, + private val displayController: DisplayController, + private val taskInfo: RunningTaskInfo, + private val onClickListener: OnClickListener, + private val onGenericMotionListener: OnGenericMotionListener, + private val onTouchListener: OnTouchListener, + private val decorWindowContext: Context, + private val menuPosition: PointF, + private val transactionSupplier: Supplier<Transaction> = Supplier { Transaction() } ) { private var maximizeMenu: AdditionalViewHostViewContainer? = null private var maximizeMenuView: MaximizeMenuView? = null @@ -108,68 +91,33 @@ class MaximizeMenu( private val cornerRadius = loadDimensionPixelSize( R.dimen.desktop_mode_maximize_menu_corner_radius ).toFloat() - private lateinit var menuPosition: Point + private val menuWidth = loadDimensionPixelSize(R.dimen.desktop_mode_maximize_menu_width) + private val menuHeight = loadDimensionPixelSize(R.dimen.desktop_mode_maximize_menu_height) private val menuPadding = loadDimensionPixelSize(R.dimen.desktop_mode_menu_padding) /** Position the menu relative to the caption's position. */ - fun positionMenu(t: Transaction) { - menuPosition = positionSupplier(maximizeMenuView?.measureWidth() ?: 0, - maximizeMenuView?.measureHeight() ?: 0) - t.setPosition(leash, menuPosition.x.toFloat(), menuPosition.y.toFloat()) + fun positionMenu(position: PointF, t: Transaction) { + menuPosition.set(position) + t.setPosition(leash, menuPosition.x, menuPosition.y) } /** Creates and shows the maximize window. */ - fun show( - isTaskInImmersiveMode: Boolean, - showImmersiveOption: Boolean, - showSnapOptions: Boolean, - onHoverListener: (Boolean) -> Unit, - onOutsideTouchListener: () -> Unit, - onMaximizeMenuClickedListener: () -> Unit, - ) { + fun show() { if (maximizeMenu != null) return - createMaximizeMenu( - isTaskInImmersiveMode = isTaskInImmersiveMode, - showImmersiveOption = showImmersiveOption, - showSnapOptions = showSnapOptions, - windowDecorationActions = windowDecorationActions, - onHoverListener = onHoverListener, - onOutsideTouchListener = onOutsideTouchListener, - onMaximizeMenuClickedListener = onMaximizeMenuClickedListener - ) - maximizeMenuView?.let { view -> - view.animateOpenMenu(onEnd = { - view.requestAccessibilityFocus() - }) - } + createMaximizeMenu() + maximizeMenuView?.animateOpenMenu() } /** Closes the maximize window and releases its view. */ - fun close(onEnd: () -> Unit) { - val view = maximizeMenuView - val menu = maximizeMenu - if (view == null) { - menu?.releaseView() - } else { - view.animateCloseMenu(onEnd = { - menu?.releaseView() - onEnd.invoke() - }) - } + fun close() { + maximizeMenuView?.cancelAnimation() + maximizeMenu?.releaseView() maximizeMenu = null maximizeMenuView = null } /** Create a maximize menu that is attached to the display area. */ - private fun createMaximizeMenu( - isTaskInImmersiveMode: Boolean, - showImmersiveOption: Boolean, - showSnapOptions: Boolean, - windowDecorationActions: WindowDecorationActions, - onHoverListener: (Boolean) -> Unit, - onOutsideTouchListener: () -> Unit, - onMaximizeMenuClickedListener: () -> Unit, - ) { + private fun createMaximizeMenu() { val t = transactionSupplier.get() val builder = SurfaceControl.Builder() rootTdaOrganizer.attachToDisplayArea(taskInfo.displayId, builder) @@ -177,6 +125,15 @@ class MaximizeMenu( .setName("Maximize Menu") .setContainerLayer() .build() + val lp = WindowManager.LayoutParams( + menuWidth, + menuHeight, + WindowManager.LayoutParams.TYPE_APPLICATION, + WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, + PixelFormat.TRANSPARENT + ) + lp.title = "Maximize Menu for Task=" + taskInfo.taskId + lp.setTrustedOverlay() val windowManager = WindowlessWindowManager( taskInfo.configuration, leash, @@ -187,42 +144,19 @@ class MaximizeMenu( "MaximizeMenu") maximizeMenuView = MaximizeMenuView( context = decorWindowContext, - windowDecorationActions = windowDecorationActions, - desktopModeUiEventLogger = desktopModeUiEventLogger, - sizeToggleDirection = getSizeToggleDirection(), - immersiveConfig = if (showImmersiveOption) { - MaximizeMenuView.ImmersiveConfig.Visible( - getImmersiveToggleDirection(isTaskInImmersiveMode) - ) - } else { - MaximizeMenuView.ImmersiveConfig.Hidden - }, - showSnapOptions = showSnapOptions, + menuHeight = menuHeight, menuPadding = menuPadding, + onClickListener = onClickListener, + onTouchListener = onTouchListener, + onGenericMotionListener = onGenericMotionListener, ).also { menuView -> menuView.bind(taskInfo) - menuView.onMenuHoverListener = onHoverListener - menuView.onOutsideTouchListener = onOutsideTouchListener - menuView.onMaximizeMenuClickedListener = onMaximizeMenuClickedListener - val menuWidth = menuView.measureWidth() - val menuHeight = menuView.measureHeight() - menuPosition = positionSupplier(menuWidth, menuHeight) - val lp = WindowManager.LayoutParams( - menuWidth, - menuHeight, - WindowManager.LayoutParams.TYPE_APPLICATION, - WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE - or WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH, - PixelFormat.TRANSPARENT - ) - lp.title = "Maximize Menu for Task=" + taskInfo.taskId - lp.setTrustedOverlay() viewHost.setView(menuView.rootView, lp) } // Bring menu to front when open t.setLayer(leash, TaskConstants.TASK_CHILD_LAYER_FLOATING_MENU) - .setPosition(leash, menuPosition.x.toFloat(), menuPosition.y.toFloat()) + .setPosition(leash, menuPosition.x, menuPosition.y) .setCornerRadius(leash, cornerRadius) .show(leash) maximizeMenu = @@ -234,23 +168,6 @@ class MaximizeMenu( } } - private fun getSizeToggleDirection(): MaximizeMenuView.SizeToggleDirection { - val maximized = isTaskMaximized(taskInfo, displayController) - return if (maximized) - MaximizeMenuView.SizeToggleDirection.RESTORE - else - MaximizeMenuView.SizeToggleDirection.MAXIMIZE - } - - private fun getImmersiveToggleDirection( - isTaskImmersive: Boolean - ): MaximizeMenuView.ImmersiveToggleDirection = - if (isTaskImmersive) { - MaximizeMenuView.ImmersiveToggleDirection.EXIT - } else { - MaximizeMenuView.ImmersiveToggleDirection.ENTER - } - private fun loadDimensionPixelSize(resourceId: Int): Int { return if (resourceId == Resources.ID_NULL) { 0 @@ -259,309 +176,143 @@ class MaximizeMenu( } } + /** + * A valid menu input is one of the following: + * An input that happens in the menu views. + * Any input before the views have been laid out. + * + * @param inputPoint the input to compare against. + */ + fun isValidMenuInput(ev: MotionEvent): Boolean { + val x = ev.rawX + val y = ev.rawY + return !viewsLaidOut() || (menuPosition.x <= x && menuPosition.x + menuWidth >= x && + menuPosition.y <= y && menuPosition.y + menuHeight >= y) + } + + /** + * Check if the views for maximize menu can be seen. + */ + private fun viewsLaidOut(): Boolean { + return maximizeMenu?.view?.isLaidOut ?: false + } + + /** + * Called when a [MotionEvent.ACTION_HOVER_ENTER] is triggered on any of the menu's views. + * + * TODO(b/346440693): this is only needed for the left/right snap options that don't support + * selector states to manage its hover state. Look into whether that can be added to avoid + * manually tracking hover enter/exit motion events. Also because those button colors/states + * aren't updating correctly for pressed, focused and selected states. + * See also [onMaximizeMenuHoverMove] and [onMaximizeMenuHoverExit]. + */ + fun onMaximizeMenuHoverEnter(viewId: Int, ev: MotionEvent) { + setSnapButtonsColorOnHover(viewId, ev) + } + + /** Called when a [MotionEvent.ACTION_HOVER_MOVE] is triggered on any of the menu's views. */ + fun onMaximizeMenuHoverMove(viewId: Int, ev: MotionEvent) { + setSnapButtonsColorOnHover(viewId, ev) + } + + /** Called when a [MotionEvent.ACTION_HOVER_EXIT] is triggered on any of the menu's views. */ + fun onMaximizeMenuHoverExit(id: Int, ev: MotionEvent) { + val snapOptionsWidth = maximizeMenuView?.snapOptionsWidth ?: return + val snapOptionsHeight = maximizeMenuView?.snapOptionsHeight ?: return + val inSnapMenuBounds = ev.x >= 0 && ev.x <= snapOptionsWidth && + ev.y >= 0 && ev.y <= snapOptionsHeight + + if (id == R.id.maximize_menu_snap_menu_layout && !inSnapMenuBounds) { + // After exiting the snap menu layout area, checks to see that user is not still + // hovering within the snap menu layout bounds which would indicate that the user is + // hovering over a snap button within the snap menu layout rather than having exited. + maximizeMenuView?.updateSplitSnapSelection(MaximizeMenuView.SnapToHalfSelection.NONE) + } + } + + private fun setSnapButtonsColorOnHover(viewId: Int, ev: MotionEvent) { + val snapOptionsWidth = maximizeMenuView?.snapOptionsWidth ?: return + val snapMenuCenter = snapOptionsWidth / 2 + when { + viewId == R.id.maximize_menu_snap_left_button || + (viewId == R.id.maximize_menu_snap_menu_layout && ev.x <= snapMenuCenter) -> { + maximizeMenuView + ?.updateSplitSnapSelection(MaximizeMenuView.SnapToHalfSelection.LEFT) + } + viewId == R.id.maximize_menu_snap_right_button || + (viewId == R.id.maximize_menu_snap_menu_layout && ev.x > snapMenuCenter) -> { + maximizeMenuView + ?.updateSplitSnapSelection(MaximizeMenuView.SnapToHalfSelection.RIGHT) + } + } + } + /** * The view within the Maximize Menu, presents maximize, restore and snap-to-side options for * resizing a Task. */ class MaximizeMenuView( context: Context, - private val windowDecorationActions: WindowDecorationActions, - private val desktopModeUiEventLogger: DesktopModeUiEventLogger, - private val sizeToggleDirection: SizeToggleDirection, - immersiveConfig: ImmersiveConfig, - showSnapOptions: Boolean, - private val menuPadding: Int - ) : OnClickListener, OnTouchListener { - val rootView = LayoutInflater.from(context) + private val menuHeight: Int, + private val menuPadding: Int, + onClickListener: OnClickListener, + onTouchListener: OnTouchListener, + onGenericMotionListener: OnGenericMotionListener, + ) { + val rootView: View = LayoutInflater.from(context) .inflate(R.layout.desktop_mode_window_decor_maximize_menu, null /* root */) - as CaptionMenuLayout - private val container = requireViewById(R.id.container) - private val immersiveToggleContainer = - requireViewById(R.id.maximize_menu_immersive_toggle_container) as View - private val immersiveToggleButtonText = - requireViewById(R.id.maximize_menu_immersive_toggle_button_text) as TextView - private val immersiveToggleButton = - requireViewById(R.id.maximize_menu_immersive_toggle_button) as Button - private val sizeToggleContainer = - requireViewById(R.id.maximize_menu_size_toggle_container) as View - private val sizeToggleButtonText = - requireViewById(R.id.maximize_menu_size_toggle_button_text) as TextView - private val sizeToggleButton = - requireViewById(R.id.maximize_menu_size_toggle_button) as Button - private val snapContainer = - requireViewById(R.id.maximize_menu_snap_container) as View + private val maximizeText = + requireViewById(R.id.maximize_menu_maximize_window_text) as TextView + private val maximizeButton = + requireViewById(R.id.maximize_menu_maximize_button) as Button private val snapWindowText = requireViewById(R.id.maximize_menu_snap_window_text) as TextView + private val snapRightButton = + requireViewById(R.id.maximize_menu_snap_right_button) as Button + private val snapLeftButton = + requireViewById(R.id.maximize_menu_snap_left_button) as Button private val snapButtonsLayout = requireViewById(R.id.maximize_menu_snap_menu_layout) - // If layout direction is RTL, maximize menu will be mirrored, switching the order of the - // snap right/left buttons. - val isRtl: Boolean = - (context.resources.configuration.layoutDirection == View.LAYOUT_DIRECTION_RTL) - private val snapRightButton = if (isRtl) { - requireViewById(R.id.maximize_menu_snap_left_button) as Button - } else { - requireViewById(R.id.maximize_menu_snap_right_button) as Button - } - private val snapLeftButton = if (isRtl) { - requireViewById(R.id.maximize_menu_snap_right_button) as Button - } else { - requireViewById(R.id.maximize_menu_snap_left_button) as Button - } - - private val menuButtons = listOf( - snapLeftButton, - snapRightButton, - immersiveToggleButton, - sizeToggleButton - ) - private val decorThemeUtil = DecorThemeUtil(context) private val outlineRadius = context.resources .getDimensionPixelSize(R.dimen.desktop_mode_maximize_menu_buttons_outline_radius) private val outlineStroke = context.resources .getDimensionPixelSize(R.dimen.desktop_mode_maximize_menu_buttons_outline_stroke) + private val fillPadding = context.resources + .getDimensionPixelSize(R.dimen.desktop_mode_maximize_menu_buttons_fill_padding) private val fillRadius = context.resources .getDimensionPixelSize(R.dimen.desktop_mode_maximize_menu_buttons_fill_radius) - private val immersiveFillPadding = context.resources.getDimensionPixelSize(R.dimen - .desktop_mode_maximize_menu_immersive_button_fill_padding) - private val maximizeFillPaddingDefault = context.resources.getDimensionPixelSize(R.dimen - .desktop_mode_maximize_menu_snap_and_maximize_buttons_fill_padding) - private val maximizeRestoreFillPaddingVertical = context.resources.getDimensionPixelSize( - R.dimen.desktop_mode_maximize_menu_restore_button_fill_vertical_padding) - private val maximizeRestoreFillPaddingHorizontal = context.resources.getDimensionPixelSize( - R.dimen.desktop_mode_maximize_menu_restore_button_fill_horizontal_padding) - private val maximizeFillPaddingRect = Rect( - maximizeFillPaddingDefault, - maximizeFillPaddingDefault, - maximizeFillPaddingDefault, - maximizeFillPaddingDefault - ) - private val maximizeRestoreFillPaddingRect = Rect( - maximizeRestoreFillPaddingHorizontal, - maximizeRestoreFillPaddingVertical, - maximizeRestoreFillPaddingHorizontal, - maximizeRestoreFillPaddingVertical, - ) - private val immersiveFillPaddingRect = Rect( - immersiveFillPadding, - immersiveFillPadding, - immersiveFillPadding, - immersiveFillPadding - ) - - private val hoverTempRect = Rect() - private var menuAnimatorSet: AnimatorSet? = null + private val openMenuAnimatorSet = AnimatorSet() private lateinit var taskInfo: RunningTaskInfo private lateinit var style: MenuStyle - /** The last input method used to interact with the menu's view. */ - private var lastInputMethod: InputMethod = InputMethod.UNKNOWN_INPUT_METHOD - /** Invoked whenever the hover state of the menu changes. */ - var onMenuHoverListener: ((Boolean) -> Unit)? = null - /** Invoked whenever a click occurs outside the menu */ - var onOutsideTouchListener: (() -> Unit)? = null - /** Invoked whenever a click occurs outside the menu */ - var onMaximizeMenuClickedListener: (() -> Unit)? = null + /** The width of the snap menu option view, including both left and right snaps. */ + val snapOptionsWidth: Int + get() = snapButtonsLayout.width + /** The height of the snap menu option view, including both left and right snaps .*/ + val snapOptionsHeight: Int + get() = snapButtonsLayout.height init { - rootView.onInterceptHoverListener = { event -> - // The overlay covers the entire menu, so it's a convenient way to monitor whether - // the menu is hovered as a whole or not. - when (event.action) { - ACTION_HOVER_ENTER -> onMenuHoverListener?.invoke(true) - ACTION_HOVER_EXIT -> onMenuHoverListener?.invoke(false) - } - - // Also check if the hover falls within the snap options layout, to manually - // set the left/right state based on the event's position. - // TODO(b/346440693): this manual hover tracking is needed for left/right snap - // because its view/background(s) don't support selector states. Look into whether - // that can be added to avoid manual tracking. Also because these button - // colors/state logic is only being applied on hover events, but there's pressed, - // focused and selected states that should be responsive too. - val snapLayoutBoundsRelToOverlay = hoverTempRect.also { rect -> - snapButtonsLayout.getDrawingRect(rect) - rootView.offsetDescendantRectToMyCoords(snapButtonsLayout, rect) - } - if (event.action == ACTION_HOVER_ENTER || event.action == ACTION_HOVER_MOVE) { - if (snapLayoutBoundsRelToOverlay.contains(event.x.toInt(), event.y.toInt())) { - // Hover is inside the snap layout, anything left of center is the left - // snap, and anything right of center is right snap. - val layoutCenter = snapLayoutBoundsRelToOverlay.centerX() - if (event.x < layoutCenter) { - updateSplitSnapSelection(SnapToHalfSelection.LEFT) - } else { - updateSplitSnapSelection(SnapToHalfSelection.RIGHT) - } - } else { - // Any other hover is outside the snap layout, so neither is selected. - updateSplitSnapSelection(SnapToHalfSelection.NONE) - } - } - } - - immersiveToggleContainer.isGone = immersiveConfig is ImmersiveConfig.Hidden - sizeToggleContainer.isVisible = true - snapContainer.isGone = !showSnapOptions - - menuButtons.forEach { - it.setOnClickListener(this) - it.setOnTouchListener(this) - } - - rootView.setOnTouchListener { _, event -> - if (event.actionMasked == ACTION_OUTSIDE) { - onOutsideTouchListener?.invoke() - return@setOnTouchListener false - } - true - } - - sizeToggleButton.accessibilityDelegate = object : View.AccessibilityDelegate() { - override fun onInitializeAccessibilityNodeInfo( - host: View, - info: AccessibilityNodeInfo - ) { - - super.onInitializeAccessibilityNodeInfo(host, info) - info.addAction(AccessibilityAction( - AccessibilityAction.ACTION_CLICK.id, - context.getString(R.string.maximize_menu_talkback_action_maximize_restore_text) - )) - host.isClickable = true - } - - override fun performAccessibilityAction( - host: View, - action: Int, - args: Bundle? - ): Boolean { - if (action == AccessibilityAction.ACTION_CLICK.id) { - desktopModeUiEventLogger.log(taskInfo, A11Y_MAXIMIZE_MENU_MAXIMIZE) - windowDecorationActions.onMaximizeOrRestore( - taskInfo.taskId, - InputMethod.ACCESSIBILITY - ) - } - return super.performAccessibilityAction(host, action, args) - } - } - - snapLeftButton.accessibilityDelegate = object : View.AccessibilityDelegate() { - override fun onInitializeAccessibilityNodeInfo( - host: View, - info: AccessibilityNodeInfo - ) { - super.onInitializeAccessibilityNodeInfo(host, info) - info.addAction(AccessibilityAction( - AccessibilityAction.ACTION_CLICK.id, - context.getString(R.string.maximize_menu_talkback_action_snap_left_text) - )) - host.isClickable = true - } - - override fun performAccessibilityAction( - host: View, - action: Int, - args: Bundle? - ): Boolean { - if (action == AccessibilityAction.ACTION_CLICK.id) { - desktopModeUiEventLogger.log(taskInfo, A11Y_MAXIMIZE_MENU_RESIZE_LEFT) - windowDecorationActions.onLeftSnap( - taskInfo.taskId, - InputMethod.ACCESSIBILITY - ) - } - return super.performAccessibilityAction(host, action, args) - } - } - - snapRightButton.accessibilityDelegate = object : View.AccessibilityDelegate() { - override fun onInitializeAccessibilityNodeInfo( - host: View, - info: AccessibilityNodeInfo - ) { - super.onInitializeAccessibilityNodeInfo(host, info) - info.addAction(AccessibilityAction( - AccessibilityAction.ACTION_CLICK.id, - context.getString(R.string.maximize_menu_talkback_action_snap_right_text) - )) - host.isClickable = true - } - - override fun performAccessibilityAction( - host: View, - action: Int, - args: Bundle? - ): Boolean { - if (action == AccessibilityAction.ACTION_CLICK.id) { - desktopModeUiEventLogger.log(taskInfo, A11Y_MAXIMIZE_MENU_RESIZE_RIGHT) - windowDecorationActions.onRightSnap( - taskInfo.taskId, - InputMethod.ACCESSIBILITY - ) - } - return super.performAccessibilityAction(host, action, args) - } - } - - // Maximize/restore button. - val sizeToggleBtnTextId = if (sizeToggleDirection == SizeToggleDirection.RESTORE) - R.string.desktop_mode_maximize_menu_restore_button_text - else - R.string.desktop_mode_maximize_menu_maximize_button_text - val sizeToggleBtnText = context.resources.getText(sizeToggleBtnTextId) - sizeToggleButton.contentDescription = sizeToggleBtnText - sizeToggleButtonText.text = sizeToggleBtnText - - // Immersive enter/exit button. - if (immersiveConfig is ImmersiveConfig.Visible) { - val immersiveToggleBtnTextId = when (immersiveConfig.direction) { - ImmersiveToggleDirection.ENTER -> { - R.string.desktop_mode_maximize_menu_immersive_button_text - } - - ImmersiveToggleDirection.EXIT -> { - R.string.desktop_mode_maximize_menu_immersive_restore_button_text - } - } - val immersiveToggleBtnText = context.resources.getText(immersiveToggleBtnTextId) - immersiveToggleButton.contentDescription = immersiveToggleBtnText - immersiveToggleButtonText.text = immersiveToggleBtnText - } + // TODO(b/346441962): encapsulate menu hover enter/exit logic inside this class and + // expose only what is actually relevant to outside classes so that specific checks + // against resource IDs aren't needed outside this class. + rootView.setOnGenericMotionListener(onGenericMotionListener) + rootView.setOnTouchListener(onTouchListener) + maximizeButton.setOnClickListener(onClickListener) + maximizeButton.setOnGenericMotionListener(onGenericMotionListener) + snapRightButton.setOnClickListener(onClickListener) + snapRightButton.setOnGenericMotionListener(onGenericMotionListener) + snapLeftButton.setOnClickListener(onClickListener) + snapLeftButton.setOnGenericMotionListener(onGenericMotionListener) + snapButtonsLayout.setOnGenericMotionListener(onGenericMotionListener) // To prevent aliasing. - sizeToggleButton.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - sizeToggleButtonText.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - immersiveToggleButton.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - immersiveToggleButtonText.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - } - - override fun onClick(v: View) { - when (v.id) { - R.id.maximize_menu_immersive_toggle_button -> { - windowDecorationActions.onImmersiveOrRestore(taskInfo) - } - R.id.maximize_menu_size_toggle_button -> { - windowDecorationActions.onMaximizeOrRestore(taskInfo.taskId, lastInputMethod) - } - R.id.maximize_menu_snap_right_button -> { - windowDecorationActions.onRightSnap(taskInfo.taskId, lastInputMethod) - } - R.id.maximize_menu_snap_left_button -> { - windowDecorationActions.onLeftSnap(taskInfo.taskId, lastInputMethod) - } - } - onMaximizeMenuClickedListener?.invoke() - } - - override fun onTouch(v: View, ev: MotionEvent): Boolean { - lastInputMethod = getInputMethodFromMotionEvent(ev) - return false + maximizeButton.setLayerType(View.LAYER_TYPE_SOFTWARE, null) + maximizeText.setLayerType(View.LAYER_TYPE_SOFTWARE, null) } /** Bind the menu views to the new [RunningTaskInfo] data. */ @@ -572,12 +323,8 @@ class MaximizeMenu( rootView.background.setTint(style.backgroundColor) // Maximize option. - sizeToggleButton.background = style.maximizeOption.drawable - sizeToggleButtonText.setTextColor(style.textColor) - - // Immersive option. - immersiveToggleButton.background = style.immersiveOption.drawable - immersiveToggleButtonText.setTextColor(style.textColor) + maximizeButton.background = style.maximizeOption.drawable + maximizeText.setTextColor(style.textColor) // Snap options. snapWindowText.setTextColor(style.textColor) @@ -585,50 +332,45 @@ class MaximizeMenu( } /** Animate the opening of the menu */ - fun animateOpenMenu(onEnd: () -> Unit) { - sizeToggleButton.setLayerType(View.LAYER_TYPE_HARDWARE, null) - sizeToggleButtonText.setLayerType(View.LAYER_TYPE_HARDWARE, null) - immersiveToggleButton.setLayerType(View.LAYER_TYPE_HARDWARE, null) - immersiveToggleButtonText.setLayerType(View.LAYER_TYPE_HARDWARE, null) - menuAnimatorSet = AnimatorSet() - menuAnimatorSet?.playTogether( + fun animateOpenMenu() { + maximizeButton.setLayerType(View.LAYER_TYPE_HARDWARE, null) + maximizeText.setLayerType(View.LAYER_TYPE_HARDWARE, null) + openMenuAnimatorSet.playTogether( ObjectAnimator.ofFloat(rootView, SCALE_Y, STARTING_MENU_HEIGHT_SCALE, 1f) .apply { - duration = OPEN_MENU_HEIGHT_ANIMATION_DURATION_MS + duration = MENU_HEIGHT_ANIMATION_DURATION_MS interpolator = EMPHASIZED_DECELERATE }, ValueAnimator.ofFloat(STARTING_MENU_HEIGHT_SCALE, 1f) .apply { - duration = OPEN_MENU_HEIGHT_ANIMATION_DURATION_MS + duration = MENU_HEIGHT_ANIMATION_DURATION_MS interpolator = EMPHASIZED_DECELERATE addUpdateListener { // Animate padding so that controls stay pinned to the bottom of // the menu. val value = animatedValue as Float val topPadding = menuPadding - - ((1 - value) * measureHeight()).toInt() - container.setPadding(menuPadding, topPadding, + ((1 - value) * menuHeight).toInt() + rootView.setPadding(menuPadding, topPadding, menuPadding, menuPadding) } }, ValueAnimator.ofFloat(1 / STARTING_MENU_HEIGHT_SCALE, 1f).apply { - duration = OPEN_MENU_HEIGHT_ANIMATION_DURATION_MS + duration = MENU_HEIGHT_ANIMATION_DURATION_MS interpolator = EMPHASIZED_DECELERATE addUpdateListener { // Scale up the children of the maximize menu so that the menu // scale is cancelled out and only the background is scaled. val value = animatedValue as Float - sizeToggleButton.scaleY = value - immersiveToggleButton.scaleY = value + maximizeButton.scaleY = value snapButtonsLayout.scaleY = value - sizeToggleButtonText.scaleY = value - immersiveToggleButtonText.scaleY = value + maximizeText.scaleY = value snapWindowText.scaleY = value } }, ObjectAnimator.ofFloat(rootView, TRANSLATION_Y, - (STARTING_MENU_HEIGHT_SCALE - 1) * measureHeight(), 0f).apply { - duration = OPEN_MENU_HEIGHT_ANIMATION_DURATION_MS + (STARTING_MENU_HEIGHT_SCALE - 1) * menuHeight, 0f).apply { + duration = MENU_HEIGHT_ANIMATION_DURATION_MS interpolator = EMPHASIZED_DECELERATE }, ObjectAnimator.ofInt(rootView.background, "alpha", @@ -638,141 +380,37 @@ class MaximizeMenu( ValueAnimator.ofFloat(0f, 1f) .apply { duration = ALPHA_ANIMATION_DURATION_MS - startDelay = CONTROLS_ALPHA_OPEN_MENU_ANIMATION_DELAY_MS + startDelay = CONTROLS_ALPHA_ANIMATION_DELAY_MS addUpdateListener { val value = animatedValue as Float - sizeToggleButton.alpha = value - immersiveToggleButton.alpha = value + maximizeButton.alpha = value snapButtonsLayout.alpha = value - sizeToggleButtonText.alpha = value - immersiveToggleButtonText.alpha = value + maximizeText.alpha = value snapWindowText.alpha = value } }, ObjectAnimator.ofFloat(rootView, TRANSLATION_Z, MENU_Z_TRANSLATION) .apply { duration = ELEVATION_ANIMATION_DURATION_MS - startDelay = CONTROLS_ALPHA_OPEN_MENU_ANIMATION_DELAY_MS + startDelay = CONTROLS_ALPHA_ANIMATION_DELAY_MS } ) - menuAnimatorSet?.addListener( + openMenuAnimatorSet.addListener( onEnd = { - sizeToggleButton.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - sizeToggleButtonText.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - immersiveToggleButton.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - immersiveToggleButtonText.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - onEnd.invoke() + maximizeButton.setLayerType(View.LAYER_TYPE_SOFTWARE, null) + maximizeText.setLayerType(View.LAYER_TYPE_SOFTWARE, null) } ) - menuAnimatorSet?.start() + openMenuAnimatorSet.start() } - /** Animate the closing of the menu */ - fun animateCloseMenu(onEnd: (() -> Unit)) { - sizeToggleButton.setLayerType(View.LAYER_TYPE_HARDWARE, null) - sizeToggleButtonText.setLayerType(View.LAYER_TYPE_HARDWARE, null) - immersiveToggleButton.setLayerType(View.LAYER_TYPE_HARDWARE, null) - immersiveToggleButtonText.setLayerType(View.LAYER_TYPE_HARDWARE, null) - cancelAnimation() - menuAnimatorSet = AnimatorSet() - menuAnimatorSet?.playTogether( - ObjectAnimator.ofFloat(rootView, SCALE_Y, 1f, STARTING_MENU_HEIGHT_SCALE) - .apply { - duration = CLOSE_MENU_HEIGHT_ANIMATION_DURATION_MS - interpolator = FAST_OUT_LINEAR_IN - }, - ValueAnimator.ofFloat(1f, STARTING_MENU_HEIGHT_SCALE) - .apply { - duration = CLOSE_MENU_HEIGHT_ANIMATION_DURATION_MS - interpolator = FAST_OUT_LINEAR_IN - addUpdateListener { - // Animate padding so that controls stay pinned to the bottom of - // the menu. - val value = animatedValue as Float - val topPadding = menuPadding - - ((1 - value) * measureHeight()).toInt() - container.setPadding(menuPadding, topPadding, - menuPadding, menuPadding) - } - }, - ValueAnimator.ofFloat(1f, 1 / STARTING_MENU_HEIGHT_SCALE).apply { - duration = CLOSE_MENU_HEIGHT_ANIMATION_DURATION_MS - interpolator = FAST_OUT_LINEAR_IN - addUpdateListener { - // Scale up the children of the maximize menu so that the menu - // scale is cancelled out and only the background is scaled. - val value = animatedValue as Float - sizeToggleButton.scaleY = value - immersiveToggleButton.scaleY = value - snapButtonsLayout.scaleY = value - sizeToggleButtonText.scaleY = value - immersiveToggleButtonText.scaleY = value - snapWindowText.scaleY = value - } - }, - ObjectAnimator.ofFloat(rootView, TRANSLATION_Y, - 0f, (STARTING_MENU_HEIGHT_SCALE - 1) * measureHeight()).apply { - duration = CLOSE_MENU_HEIGHT_ANIMATION_DURATION_MS - interpolator = FAST_OUT_LINEAR_IN - }, - ObjectAnimator.ofInt(rootView.background, "alpha", - MAX_DRAWABLE_ALPHA_VALUE, 0).apply { - startDelay = CONTAINER_ALPHA_CLOSE_MENU_ANIMATION_DELAY_MS - duration = ALPHA_ANIMATION_DURATION_MS - }, - ValueAnimator.ofFloat(1f, 0f) - .apply { - duration = ALPHA_ANIMATION_DURATION_MS - addUpdateListener { - val value = animatedValue as Float - sizeToggleButton.alpha = value - immersiveToggleButton.alpha = value - snapButtonsLayout.alpha = value - sizeToggleButtonText.alpha = value - immersiveToggleButtonText.alpha = value - snapWindowText.alpha = value - } - }, - ObjectAnimator.ofFloat(rootView, TRANSLATION_Z, MENU_Z_TRANSLATION, 0f) - .apply { - duration = ELEVATION_ANIMATION_DURATION_MS - } - ) - menuAnimatorSet?.addListener( - onEnd = { - sizeToggleButton.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - sizeToggleButtonText.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - immersiveToggleButton.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - immersiveToggleButtonText.setLayerType(View.LAYER_TYPE_SOFTWARE, null) - onEnd?.invoke() - } - ) - menuAnimatorSet?.start() - } - - /** Request that the accessibility service focus on the menu. */ - fun requestAccessibilityFocus() { - // Focus the first button in the menu by default. - if (immersiveToggleButton.isVisible) { - immersiveToggleButton.post { - immersiveToggleButton.sendAccessibilityEvent( - AccessibilityEvent.TYPE_VIEW_FOCUSED - ) - } - return - } - sizeToggleButton.post { - sizeToggleButton.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - } - - /** Cancel the menu animation. */ - private fun cancelAnimation() { - menuAnimatorSet?.cancel() + /** Cancel the open menu animation. */ + fun cancelAnimation() { + openMenuAnimatorSet.cancel() } /** Update the view state to a new snap to half selection. */ - private fun updateSplitSnapSelection(selection: SnapToHalfSelection) { + fun updateSplitSnapSelection(selection: SnapToHalfSelection) { when (selection) { SnapToHalfSelection.NONE -> deactivateSnapOptions() SnapToHalfSelection.LEFT -> activateSnapOption(activateLeft = true) @@ -787,27 +425,13 @@ class MaximizeMenu( backgroundColor = menuBackgroundColor, textColor = colorScheme.onSurface.toArgb(), maximizeOption = MenuStyle.MaximizeOption( - drawable = createMaximizeOrImmersiveDrawable( - menuBackgroundColor, - colorScheme, - fillPadding = when (sizeToggleDirection) { - SizeToggleDirection.MAXIMIZE -> maximizeFillPaddingRect - SizeToggleDirection.RESTORE -> maximizeRestoreFillPaddingRect - } - ) - ), - immersiveOption = MenuStyle.ImmersiveOption( - drawable = createMaximizeOrImmersiveDrawable( - menuBackgroundColor, - colorScheme, - fillPadding = immersiveFillPaddingRect, - ), + drawable = createMaximizeDrawable(menuBackgroundColor, colorScheme) ), snapOptions = MenuStyle.SnapOptions( inactiveSnapSideColor = colorScheme.outlineVariant.toArgb(), semiActiveSnapSideColor = colorScheme.primary.toArgb().withAlpha(OPACITY_40), activeSnapSideColor = colorScheme.primary.toArgb(), - inactiveStrokeColor = colorScheme.outlineVariant.toArgb().withAlpha(OPACITY_60), + inactiveStrokeColor = colorScheme.outlineVariant.toArgb(), activeStrokeColor = colorScheme.primary.toArgb(), inactiveBackgroundColor = menuBackgroundColor, activeBackgroundColor = colorScheme.primary.toArgb().withAlpha(OPACITY_12) @@ -815,18 +439,6 @@ class MaximizeMenu( ) } - /** Measure width of the root view of this menu. */ - fun measureWidth(): Int { - rootView.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED) - return rootView.measuredWidth - } - - /** Measure height of the root view of this menu. */ - fun measureHeight(): Int { - rootView.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED) - return rootView.measuredHeight - } - private fun deactivateSnapOptions() { // TODO(b/346440693): the background/colorStateList set on these buttons is overridden // to a static resource & color on manually tracked hover events, which defeats the @@ -880,22 +492,19 @@ class MaximizeMenu( } } - private fun createMaximizeOrImmersiveDrawable( + private fun createMaximizeDrawable( @ColorInt menuBackgroundColor: Int, - colorScheme: ColorScheme, - fillPadding: Rect, + colorScheme: ColorScheme ): StateListDrawable { val activeStrokeAndFill = colorScheme.primary.toArgb() val activeBackground = colorScheme.primary.toArgb().withAlpha(OPACITY_12) - val activeDrawable = createMaximizeOrImmersiveButtonDrawable( - strokeColor = activeStrokeAndFill, - fillColor = activeStrokeAndFill, + val activeDrawable = createMaximizeButtonDrawable( + strokeAndFillColor = activeStrokeAndFill, backgroundColor = activeBackground, // Add a mask with the menu background's color because the active background color is // semi transparent, otherwise the transparency will reveal the stroke/fill color // behind it. - backgroundMask = menuBackgroundColor, - fillPadding = fillPadding, + backgroundMask = menuBackgroundColor ) return StateListDrawable().apply { addState(intArrayOf(android.R.attr.state_pressed), activeDrawable) @@ -905,23 +514,19 @@ class MaximizeMenu( // Inactive drawable. addState( StateSet.WILD_CARD, - createMaximizeOrImmersiveButtonDrawable( - strokeColor = colorScheme.outlineVariant.toArgb().withAlpha(OPACITY_60), - fillColor = colorScheme.outlineVariant.toArgb(), + createMaximizeButtonDrawable( + strokeAndFillColor = colorScheme.outlineVariant.toArgb(), backgroundColor = colorScheme.surfaceContainerLow.toArgb(), - backgroundMask = null, // not needed because the bg color is fully opaque - fillPadding = fillPadding, + backgroundMask = null // not needed because the bg color is fully opaque ) ) } } - private fun createMaximizeOrImmersiveButtonDrawable( - @ColorInt strokeColor: Int, - @ColorInt fillColor: Int, + private fun createMaximizeButtonDrawable( + @ColorInt strokeAndFillColor: Int, @ColorInt backgroundColor: Int, - @ColorInt backgroundMask: Int?, - fillPadding: Rect, + @ColorInt backgroundMask: Int? ): LayerDrawable { val layers = mutableListOf<Drawable>() // First (bottom) layer, effectively the button's border ring once its inner shape is @@ -932,7 +537,7 @@ class MaximizeMenu( null /* inset */, null /* innerRadii */ ) - paint.color = strokeColor + paint.color = strokeAndFillColor paint.style = Paint.Style.FILL }) // Second layer, a mask for the next (background) layer if needed because of @@ -967,21 +572,18 @@ class MaximizeMenu( null /* inset */, null /* innerRadii */ ) - paint.color = fillColor + paint.color = strokeAndFillColor paint.style = Paint.Style.FILL }) - return LayerDrawable(layers.toTypedArray()).apply { when (numberOfLayers) { 3 -> { setLayerInset(1, outlineStroke) - setLayerInset(2, fillPadding.left, fillPadding.top, - fillPadding.right, fillPadding.bottom) + setLayerInset(2, fillPadding) } 4 -> { setLayerInset(intArrayOf(1, 2), outlineStroke) - setLayerInset(3, fillPadding.left, fillPadding.top, - fillPadding.right, fillPadding.bottom) + setLayerInset(3, fillPadding) } else -> error("Unexpected number of layers: $numberOfLayers") } @@ -1005,15 +607,11 @@ class MaximizeMenu( @ColorInt val backgroundColor: Int, @ColorInt val textColor: Int, val maximizeOption: MaximizeOption, - val immersiveOption: ImmersiveOption, val snapOptions: SnapOptions, ) { data class MaximizeOption( val drawable: StateListDrawable, ) - data class ImmersiveOption( - val drawable: StateListDrawable, - ) data class SnapOptions( @ColorInt val inactiveSnapSideColor: Int, @ColorInt val semiActiveSnapSideColor: Int, @@ -1029,24 +627,6 @@ class MaximizeMenu( enum class SnapToHalfSelection { NONE, LEFT, RIGHT } - - /** The possible immersive configs for this menu instance. */ - sealed class ImmersiveConfig { - data class Visible( - val direction: ImmersiveToggleDirection, - ) : ImmersiveConfig() - data object Hidden : ImmersiveConfig() - } - - /** The possible selection states of the size toggle button in the maximize menu. */ - enum class SizeToggleDirection { - MAXIMIZE, RESTORE - } - - /** The possible selection states of the immersive toggle button in the maximize menu. */ - enum class ImmersiveToggleDirection { - ENTER, EXIT - } } companion object { @@ -1054,53 +634,17 @@ class MaximizeMenu( private const val ALPHA_ANIMATION_DURATION_MS = 50L private const val MAX_DRAWABLE_ALPHA_VALUE = 255 private const val STARTING_MENU_HEIGHT_SCALE = 0.8f - private const val OPEN_MENU_HEIGHT_ANIMATION_DURATION_MS = 300L - private const val CLOSE_MENU_HEIGHT_ANIMATION_DURATION_MS = 200L + private const val MENU_HEIGHT_ANIMATION_DURATION_MS = 300L private const val ELEVATION_ANIMATION_DURATION_MS = 50L - private const val CONTROLS_ALPHA_OPEN_MENU_ANIMATION_DELAY_MS = 33L - private const val CONTAINER_ALPHA_CLOSE_MENU_ANIMATION_DELAY_MS = 33L + private const val CONTROLS_ALPHA_ANIMATION_DELAY_MS = 33L private const val MENU_Z_TRANSLATION = 1f - } -} - -/** A factory interface to create a [MaximizeMenu]. */ -interface MaximizeMenuFactory { - fun create( - syncQueue: SyncTransactionQueue, - rootTdaOrganizer: RootTaskDisplayAreaOrganizer, - displayController: DisplayController, - windowDecorationActions: WindowDecorationActions, - taskInfo: RunningTaskInfo, - decorWindowContext: Context, - positionSupplier: (Int, Int) -> Point, - transactionSupplier: Supplier<Transaction>, - desktopModeUiEventLogger: DesktopModeUiEventLogger, - ): MaximizeMenu -} - -/** A [MaximizeMenuFactory] implementation that creates a [MaximizeMenu]. */ -object DefaultMaximizeMenuFactory : MaximizeMenuFactory { - override fun create( - syncQueue: SyncTransactionQueue, - rootTdaOrganizer: RootTaskDisplayAreaOrganizer, - displayController: DisplayController, - windowDecorationActions: WindowDecorationActions, - taskInfo: RunningTaskInfo, - decorWindowContext: Context, - positionSupplier: (Int, Int) -> Point, - transactionSupplier: Supplier<Transaction>, - desktopModeUiEventLogger: DesktopModeUiEventLogger, - ): MaximizeMenu { - return MaximizeMenu( - syncQueue, - rootTdaOrganizer, - displayController, - windowDecorationActions, - taskInfo, - decorWindowContext, - positionSupplier, - transactionSupplier, - desktopModeUiEventLogger - ) + fun isMaximizeMenuView(@IdRes viewId: Int): Boolean { + return viewId == R.id.maximize_menu || + viewId == R.id.maximize_menu_maximize_button || + viewId == R.id.maximize_menu_snap_left_button || + viewId == R.id.maximize_menu_snap_right_button || + viewId == R.id.maximize_menu_snap_menu_layout || + viewId == R.id.maximize_menu_snap_menu_layout + } } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/MoveToDesktopAnimator.kt b/wmshell/src/com/android/wm/shell/windowdecor/MoveToDesktopAnimator.kt index cf536eba83..9741667002 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/MoveToDesktopAnimator.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/MoveToDesktopAnimator.kt @@ -5,10 +5,8 @@ import android.app.ActivityManager.RunningTaskInfo import android.content.Context import android.graphics.PointF import android.graphics.Rect -import android.view.Choreographer import android.view.MotionEvent import android.view.SurfaceControl -import android.view.VelocityTracker import com.android.wm.shell.R /** @@ -36,18 +34,19 @@ class MoveToDesktopAnimator @JvmOverloads constructor( val scale: Float get() = dragToDesktopAnimator.animatedValue as Float private val mostRecentInput = PointF() - private val velocityTracker = VelocityTracker.obtain() private val dragToDesktopAnimator: ValueAnimator = ValueAnimator.ofFloat(1f, DRAG_FREEFORM_SCALE) .setDuration(ANIMATION_DURATION.toLong()) .apply { val t = SurfaceControl.Transaction() + val cornerRadius = context.resources + .getDimensionPixelSize(R.dimen.desktop_mode_dragged_task_radius).toFloat() addUpdateListener { setTaskPosition(mostRecentInput.x, mostRecentInput.y) t.setScale(taskSurface, scale, scale) .setCornerRadius(taskSurface, cornerRadius) .setScale(taskSurface, scale, scale) - .setFrameTimeline(Choreographer.getInstance().vsyncId) + .setCornerRadius(taskSurface, cornerRadius) .setPosition(taskSurface, position.x, position.y) .apply() } @@ -55,8 +54,6 @@ class MoveToDesktopAnimator @JvmOverloads constructor( val taskId get() = taskInfo.taskId val position: PointF = PointF(0.0f, 0.0f) - val cornerRadius: Float = context.resources - .getDimensionPixelSize(R.dimen.desktop_mode_dragged_task_radius).toFloat() /** * Whether motion events from the drag gesture should affect the dragged surface or not. Used @@ -93,11 +90,9 @@ class MoveToDesktopAnimator @JvmOverloads constructor( if (!allowSurfaceChangesOnMove || dragToDesktopAnimator.isRunning) { return } - velocityTracker.addMovement(ev) setTaskPosition(ev.rawX, ev.rawY) val t = transactionFactory() t.setPosition(taskSurface, position.x, position.y) - t.setFrameTimeline(Choreographer.getInstance().vsyncId) t.apply() } @@ -114,15 +109,6 @@ class MoveToDesktopAnimator @JvmOverloads constructor( * Cancels the animation, intended to be used when another animator will take over. */ fun cancelAnimator() { - velocityTracker.clear() dragToDesktopAnimator.cancel() } - - /** - * Computes the current velocity per second based on the points that have been collected. - */ - fun computeCurrentVelocity(): PointF { - velocityTracker.computeCurrentVelocity(/* units = */ 1000) - return PointF(velocityTracker.xVelocity, velocityTracker.yVelocity) - } } \ No newline at end of file diff --git a/wmshell/src/com/android/wm/shell/windowdecor/OWNERS b/wmshell/src/com/android/wm/shell/windowdecor/OWNERS index 992402528f..4417209b85 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/OWNERS +++ b/wmshell/src/com/android/wm/shell/windowdecor/OWNERS @@ -1,2 +1 @@ -mattsziklay@google.com -mdehaini@google.com +jorgegil@google.com diff --git a/wmshell/src/com/android/wm/shell/windowdecor/ResizeVeil.kt b/wmshell/src/com/android/wm/shell/windowdecor/ResizeVeil.kt index 5bd42280e7..cd2dac806a 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/ResizeVeil.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/ResizeVeil.kt @@ -20,51 +20,39 @@ import android.animation.AnimatorListenerAdapter import android.animation.ValueAnimator import android.app.ActivityManager.RunningTaskInfo import android.content.Context +import android.graphics.Bitmap import android.graphics.Color import android.graphics.PixelFormat import android.graphics.PointF import android.graphics.Rect import android.os.Trace -import android.view.Choreographer import android.view.Display import android.view.LayoutInflater import android.view.SurfaceControl import android.view.SurfaceControlViewHost +import android.view.SurfaceSession import android.view.WindowManager -import android.view.WindowManager.LayoutParams.INPUT_FEATURE_NO_INPUT_CHANNEL import android.view.WindowlessWindowManager import android.widget.ImageView import android.window.TaskConstants import androidx.compose.material3.dynamicDarkColorScheme import androidx.compose.material3.dynamicLightColorScheme import androidx.compose.ui.graphics.toArgb -import com.android.internal.annotations.VisibleForTesting import com.android.wm.shell.R import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.DisplayController.OnDisplaysChangedListener -import com.android.wm.shell.shared.annotations.ShellBackgroundThread -import com.android.wm.shell.shared.annotations.ShellMainThread import com.android.wm.shell.windowdecor.WindowDecoration.SurfaceControlViewHostFactory -import com.android.wm.shell.windowdecor.common.WindowDecorTaskResourceLoader import com.android.wm.shell.windowdecor.common.DecorThemeUtil import com.android.wm.shell.windowdecor.common.Theme import java.util.function.Supplier -import kotlinx.coroutines.CoroutineDispatcher -import kotlinx.coroutines.CoroutineScope -import kotlinx.coroutines.Job -import kotlinx.coroutines.isActive -import kotlinx.coroutines.launch -import kotlinx.coroutines.withContext /** * Creates and updates a veil that covers task contents on resize. */ -public class ResizeVeil @JvmOverloads constructor( +class ResizeVeil @JvmOverloads constructor( private val context: Context, private val displayController: DisplayController, - private val taskResourceLoader: WindowDecorTaskResourceLoader, - @ShellMainThread private val mainDispatcher: CoroutineDispatcher, - @ShellBackgroundThread private val bgScope: CoroutineScope, + private val appIcon: Bitmap, private var parentSurface: SurfaceControl, private val surfaceControlTransactionSupplier: Supplier<SurfaceControl.Transaction>, private val surfaceControlBuilderFactory: SurfaceControlBuilderFactory = @@ -77,8 +65,8 @@ public class ResizeVeil @JvmOverloads constructor( private val lightColors = dynamicLightColorScheme(context) private val darkColors = dynamicDarkColorScheme(context) - @VisibleForTesting - lateinit var iconView: ImageView + private val surfaceSession = SurfaceSession() + private lateinit var iconView: ImageView private var iconSize = 0 /** A container surface to host the veil background and icon child surfaces. */ @@ -90,8 +78,6 @@ public class ResizeVeil @JvmOverloads constructor( private var viewHost: SurfaceControlViewHost? = null private var display: Display? = null private var veilAnimator: ValueAnimator? = null - private var iconAnimator: ValueAnimator? = null - private var loadAppInfoJob: Job? = null /** * Whether the resize veil is currently visible. @@ -139,7 +125,7 @@ public class ResizeVeil @JvmOverloads constructor( .setCallsite("ResizeVeil#setupResizeVeil") .build() backgroundSurface = surfaceControlBuilderFactory - .create("Resize veil background of Task=" + taskInfo.taskId) + .create("Resize veil background of Task=" + taskInfo.taskId, surfaceSession) .setColorLayer() .setHidden(true) .setParent(veilSurface) @@ -157,6 +143,7 @@ public class ResizeVeil @JvmOverloads constructor( val root = LayoutInflater.from(context) .inflate(R.layout.desktop_mode_resize_veil, null /* root */) iconView = root.requireViewById(R.id.veil_application_icon) + iconView.setImageBitmap(appIcon) val lp = WindowManager.LayoutParams( iconSize, iconSize, @@ -164,20 +151,11 @@ public class ResizeVeil @JvmOverloads constructor( WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, PixelFormat.TRANSPARENT) lp.title = "Resize veil icon window of Task=" + taskInfo.taskId - lp.inputFeatures = INPUT_FEATURE_NO_INPUT_CHANNEL lp.setTrustedOverlay() val wwm = WindowlessWindowManager(taskInfo.configuration, iconSurface, null /* hostInputToken */) viewHost = surfaceControlViewHostFactory.create(context, display, wwm, "ResizeVeil") viewHost?.setView(root, lp) - loadAppInfoJob = bgScope.launch { - if (!isActive) return@launch - val icon = taskResourceLoader.getVeilIcon(taskInfo) - withContext(mainDispatcher) { - if (!isActive) return@withContext - iconView.setImageBitmap(icon) - } - } Trace.endSection() } @@ -210,22 +188,34 @@ public class ResizeVeil @JvmOverloads constructor( t.apply() return } + isVisible = true val background = backgroundSurface val icon = iconSurface - if (background == null || icon == null) return - updateTransactionWithShowVeil( - t, - parent, - taskBounds, - taskInfo, - fadeIn, - ) + val veil = veilSurface + if (background == null || icon == null || veil == null) return + + // Parent surface can change, ensure it is up to date. + if (parent != parentSurface) { + t.reparent(veil, parent) + parentSurface = parent + } + + val backgroundColor = when (decorThemeUtil.getAppTheme(taskInfo)) { + Theme.LIGHT -> lightColors.surfaceContainer + Theme.DARK -> darkColors.surfaceContainer + } + t.show(veil) + .setLayer(veil, VEIL_CONTAINER_LAYER) + .setLayer(icon, VEIL_ICON_LAYER) + .setLayer(background, VEIL_BACKGROUND_LAYER) + .setColor(background, Color.valueOf(backgroundColor.toArgb()).components) + relayout(taskBounds, t) if (fadeIn) { cancelAnimation() val veilAnimT = surfaceControlTransactionSupplier.get() val iconAnimT = surfaceControlTransactionSupplier.get() veilAnimator = ValueAnimator.ofFloat(0f, 1f).apply { - duration = VEIL_ENTRY_ALPHA_ANIMATION_DURATION + duration = RESIZE_ALPHA_DURATION addUpdateListener { veilAnimT.setAlpha(background, animatedValue as Float) .apply() @@ -242,9 +232,8 @@ public class ResizeVeil @JvmOverloads constructor( } }) } - iconAnimator = ValueAnimator.ofFloat(0f, 1f).apply { - duration = ICON_ALPHA_ANIMATION_DURATION - startDelay = ICON_ENTRY_DELAY + val iconAnimator = ValueAnimator.ofFloat(0f, 1f).apply { + duration = RESIZE_ALPHA_DURATION addUpdateListener { iconAnimT.setAlpha(icon, animatedValue as Float) .apply() @@ -267,46 +256,14 @@ public class ResizeVeil @JvmOverloads constructor( .hide(background) .apply() veilAnimator?.start() - iconAnimator?.start() + iconAnimator.start() } else { // Show the veil immediately. - t.apply() - } - } - - fun updateTransactionWithShowVeil( - t: SurfaceControl.Transaction, - parent: SurfaceControl, - taskBounds: Rect, - taskInfo: RunningTaskInfo, - fadeIn: Boolean = false, - ) { - if (!isReady || isVisible) return - isVisible = true - val background = backgroundSurface - val icon = iconSurface - val veil = veilSurface - if (background == null || icon == null || veil == null) return - // Parent surface can change, ensure it is up to date. - if (parent != parentSurface) { - t.reparent(veil, parent) - parentSurface = parent - } - val backgroundColor = when (decorThemeUtil.getAppTheme(taskInfo)) { - Theme.LIGHT -> lightColors.surfaceContainer - Theme.DARK -> darkColors.surfaceContainer - } - t.show(veil) - .setLayer(veil, VEIL_CONTAINER_LAYER) - .setLayer(icon, VEIL_ICON_LAYER) - .setLayer(background, VEIL_BACKGROUND_LAYER) - .setColor(background, Color.valueOf(backgroundColor.toArgb()).components) - relayout(taskBounds, t) - if (!fadeIn) { t.show(icon) - .show(background) - .setAlpha(icon, 1f) - .setAlpha(background, 1f) + .show(background) + .setAlpha(icon, 1f) + .setAlpha(background, 1f) + .apply() } } @@ -334,7 +291,6 @@ public class ResizeVeil @JvmOverloads constructor( .setPosition(icon, iconPosition.x, iconPosition.y) .setPosition(parentSurface, newBounds.left.toFloat(), newBounds.top.toFloat()) .setWindowCrop(parentSurface, newBounds.width(), newBounds.height()) - .setFrameTimeline(Choreographer.getInstance().vsyncId) } /** @@ -358,12 +314,8 @@ public class ResizeVeil @JvmOverloads constructor( * @param newBounds bounds to update veil to. */ fun updateResizeVeil(t: SurfaceControl.Transaction, newBounds: Rect) { - updateTransactionWithResizeVeil(t, newBounds) - t.apply() - } - - fun updateTransactionWithResizeVeil(t: SurfaceControl.Transaction, newBounds: Rect) { if (!isVisible) { + t.apply() return } veilAnimator?.let { animator -> @@ -373,6 +325,7 @@ public class ResizeVeil @JvmOverloads constructor( } } relayout(newBounds, t) + t.apply() } /** @@ -388,38 +341,23 @@ public class ResizeVeil @JvmOverloads constructor( if (background == null || icon == null) return veilAnimator = ValueAnimator.ofFloat(1f, 0f).apply { - duration = VEIL_EXIT_ALPHA_ANIMATION_DURATION - startDelay = VEIL_EXIT_DELAY + duration = RESIZE_ALPHA_DURATION addUpdateListener { surfaceControlTransactionSupplier.get() .setAlpha(background, animatedValue as Float) + .setAlpha(icon, animatedValue as Float) .apply() } addListener(object : AnimatorListenerAdapter() { override fun onAnimationEnd(animation: Animator) { surfaceControlTransactionSupplier.get() .hide(background) + .hide(icon) .apply() } }) } - iconAnimator = ValueAnimator.ofFloat(1f, 0f).apply { - duration = ICON_ALPHA_ANIMATION_DURATION - addUpdateListener { - surfaceControlTransactionSupplier.get() - .setAlpha(icon, animatedValue as Float) - .apply() - } - addListener(object : AnimatorListenerAdapter() { - override fun onAnimationEnd(animation: Animator) { - surfaceControlTransactionSupplier.get() - .hide(icon) - .apply() - } - }) - } veilAnimator?.start() - iconAnimator?.start() isVisible = false } @@ -431,10 +369,6 @@ public class ResizeVeil @JvmOverloads constructor( private fun cancelAnimation() { veilAnimator?.removeAllUpdateListeners() veilAnimator?.cancel() - veilAnimator = null - iconAnimator?.removeAllUpdateListeners() - iconAnimator?.cancel() - iconAnimator = null } /** @@ -442,8 +376,8 @@ public class ResizeVeil @JvmOverloads constructor( */ fun dispose() { cancelAnimation() + veilAnimator = null isVisible = false - loadAppInfoJob?.cancel() viewHost?.release() viewHost = null @@ -463,15 +397,15 @@ public class ResizeVeil @JvmOverloads constructor( fun create(name: String): SurfaceControl.Builder { return SurfaceControl.Builder().setName(name) } + + fun create(name: String, surfaceSession: SurfaceSession): SurfaceControl.Builder { + return SurfaceControl.Builder(surfaceSession).setName(name) + } } companion object { private const val TAG = "ResizeVeil" - private const val ICON_ALPHA_ANIMATION_DURATION = 50L - private const val VEIL_ENTRY_ALPHA_ANIMATION_DURATION = 50L - private const val VEIL_EXIT_ALPHA_ANIMATION_DURATION = 200L - private const val ICON_ENTRY_DELAY = 33L - private const val VEIL_EXIT_DELAY = 33L + private const val RESIZE_ALPHA_DURATION = 100L private const val VEIL_CONTAINER_LAYER = TaskConstants.TASK_CHILD_LAYER_RESIZE_VEIL /** The background is a child of the veil container layer and goes at the bottom. */ diff --git a/wmshell/src/com/android/wm/shell/windowdecor/TaskDragResizer.java b/wmshell/src/com/android/wm/shell/windowdecor/TaskDragResizer.java index 06e5380fa1..40421b5998 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/TaskDragResizer.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/TaskDragResizer.java @@ -19,32 +19,11 @@ package com.android.wm.shell.windowdecor; /** * Holds the state of a drag resize. */ -public interface TaskDragResizer { +interface TaskDragResizer { /** * Returns true if task is currently being resized or animating the final transition after * a resize is complete. */ boolean isResizingOrAnimating(); - - /** - * Adds a drag start listener to be notified of drag start events. - * - * @param dragEventListener Listener to be added. - */ - void addDragEventListener(DragPositioningCallbackUtility.DragEventListener dragEventListener); - - /** - * Removes a drag start listener from the listener set. - * - * @param dragEventListener Listener to be removed. - */ - void removeDragEventListener( - DragPositioningCallbackUtility.DragEventListener dragEventListener); - - /** - * Releases any resources associated with this TaskDragResizer. This should be called when the - * associated window is closed. - */ - void close(); } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/TaskFocusStateConsumer.java b/wmshell/src/com/android/wm/shell/windowdecor/TaskFocusStateConsumer.java index bf36bed6f1..1c61802bbd 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/TaskFocusStateConsumer.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/TaskFocusStateConsumer.java @@ -16,6 +16,6 @@ package com.android.wm.shell.windowdecor; -public interface TaskFocusStateConsumer { +interface TaskFocusStateConsumer { void setTaskFocusState(boolean focused); } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/TaskOperations.java b/wmshell/src/com/android/wm/shell/windowdecor/TaskOperations.java index 683dccf0c5..ad238c35dd 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/TaskOperations.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/TaskOperations.java @@ -23,7 +23,6 @@ import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; import android.app.ActivityManager.RunningTaskInfo; import android.content.Context; import android.hardware.input.InputManager; -import android.os.IBinder; import android.os.SystemClock; import android.util.Log; import android.view.InputDevice; @@ -32,7 +31,9 @@ import android.view.KeyEvent; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; +import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.freeform.FreeformTaskTransitionStarter; +import com.android.wm.shell.transition.Transitions; /** * Utility class to handle task operations performed on a window decoration. @@ -42,10 +43,13 @@ class TaskOperations { private final FreeformTaskTransitionStarter mTransitionStarter; private final Context mContext; + private final SyncTransactionQueue mSyncQueue; - TaskOperations(FreeformTaskTransitionStarter transitionStarter, Context context) { + TaskOperations(FreeformTaskTransitionStarter transitionStarter, Context context, + SyncTransactionQueue syncQueue) { mTransitionStarter = transitionStarter; mContext = context; + mSyncQueue = syncQueue; } void injectBackKey(int displayId) { @@ -71,22 +75,23 @@ class TaskOperations { closeTask(taskToken, new WindowContainerTransaction()); } - IBinder closeTask(WindowContainerToken taskToken, WindowContainerTransaction wct) { + void closeTask(WindowContainerToken taskToken, WindowContainerTransaction wct) { wct.removeTask(taskToken); - return mTransitionStarter.startRemoveTransition(wct); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + mTransitionStarter.startRemoveTransition(wct); + } else { + mSyncQueue.queue(wct); + } } - IBinder minimizeTask(WindowContainerToken taskToken, int taskId, boolean isLastTask) { - return minimizeTask(taskToken, taskId, isLastTask, new WindowContainerTransaction()); - } - - IBinder minimizeTask( - WindowContainerToken taskToken, - int taskId, - boolean isLastTask, - WindowContainerTransaction wct) { + void minimizeTask(WindowContainerToken taskToken) { + WindowContainerTransaction wct = new WindowContainerTransaction(); wct.reorder(taskToken, false); - return mTransitionStarter.startMinimizedModeTransition(wct, taskId, isLastTask); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + mTransitionStarter.startMinimizedModeTransition(wct); + } else { + mSyncQueue.queue(wct); + } } void maximizeTask(RunningTaskInfo taskInfo, int containerWindowingMode) { @@ -99,6 +104,10 @@ class TaskOperations { if (targetWindowingMode == WINDOWING_MODE_FULLSCREEN) { wct.setBounds(taskInfo.token, null); } - mTransitionStarter.startWindowingModeTransition(targetWindowingMode, wct); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + mTransitionStarter.startWindowingModeTransition(targetWindowingMode, wct); + } else { + mSyncQueue.queue(wct); + } } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositioner.java b/wmshell/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositioner.java index 4f78daef7c..5fce5d228d 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositioner.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositioner.java @@ -18,16 +18,10 @@ package com.android.wm.shell.windowdecor; import static android.view.WindowManager.TRANSIT_CHANGE; -import static com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_DRAG_WINDOW; -import static com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_RESIZE_WINDOW; - import android.graphics.Point; import android.graphics.PointF; import android.graphics.Rect; -import android.os.Handler; import android.os.IBinder; -import android.os.Looper; -import android.view.Choreographer; import android.view.Surface; import android.view.SurfaceControl; import android.window.TransitionInfo; @@ -37,16 +31,10 @@ import android.window.WindowContainerTransaction; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.android.internal.jank.Cuj; -import com.android.internal.jank.InteractionJankMonitor; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.transition.Transitions; -import java.util.ArrayList; -import java.util.concurrent.TimeUnit; import java.util.function.Supplier; /** @@ -54,79 +42,60 @@ import java.util.function.Supplier; * {@link com.android.wm.shell.windowdecor.ResizeVeil}. * If the drag is resizing the task, we resize the veil instead. * If the drag is repositioning, we update in the typical manner. - * <p> - * @deprecated This class will be replaced by - * {@link com.android.wm.shell.windowdecor.MultiDisplayVeiledResizeTaskPositioner}. - * TODO(b/383632995): Remove this class after MultiDisplayVeiledResizeTaskPositioner is launched. */ -@Deprecated -public class VeiledResizeTaskPositioner implements TaskPositioner, Transitions.TransitionHandler { - // Timeout used for resize and drag CUJs, this is longer than the default timeout to avoid - // timing out in the middle of a resize or drag action. - private static final long LONG_CUJ_TIMEOUT_MS = TimeUnit.SECONDS.toMillis(10L); +public class VeiledResizeTaskPositioner implements DragPositioningCallback, + TaskDragResizer, Transitions.TransitionHandler { private DesktopModeWindowDecoration mDesktopWindowDecoration; private ShellTaskOrganizer mTaskOrganizer; private DisplayController mDisplayController; - private ArrayList<DragPositioningCallbackUtility.DragEventListener> - mDragEventListeners = new ArrayList<>(); + private DragPositioningCallbackUtility.DragStartListener mDragStartListener; private final Transitions mTransitions; private final Rect mStableBounds = new Rect(); private final Rect mTaskBoundsAtDragStart = new Rect(); private final PointF mRepositionStartPoint = new PointF(); private final Rect mRepositionTaskBounds = new Rect(); private final Supplier<SurfaceControl.Transaction> mTransactionSupplier; - private final InteractionJankMonitor mInteractionJankMonitor; - private final DesktopState mDesktopState; private int mCtrlType; private boolean mIsResizingOrAnimatingResize; @Surface.Rotation private int mRotation; - @ShellMainThread - private final Handler mHandler; public VeiledResizeTaskPositioner(ShellTaskOrganizer taskOrganizer, DesktopModeWindowDecoration windowDecoration, DisplayController displayController, - Transitions transitions, InteractionJankMonitor interactionJankMonitor, - @ShellMainThread Handler handler, DesktopState desktopState) { - this(taskOrganizer, windowDecoration, displayController, - SurfaceControl.Transaction::new, transitions, interactionJankMonitor, handler, - desktopState); + DragPositioningCallbackUtility.DragStartListener dragStartListener, + Transitions transitions) { + this(taskOrganizer, windowDecoration, displayController, dragStartListener, + SurfaceControl.Transaction::new, transitions); } public VeiledResizeTaskPositioner(ShellTaskOrganizer taskOrganizer, DesktopModeWindowDecoration windowDecoration, DisplayController displayController, - Supplier<SurfaceControl.Transaction> supplier, Transitions transitions, - InteractionJankMonitor interactionJankMonitor, @ShellMainThread Handler handler, - DesktopState desktopState) { + DragPositioningCallbackUtility.DragStartListener dragStartListener, + Supplier<SurfaceControl.Transaction> supplier, Transitions transitions) { mDesktopWindowDecoration = windowDecoration; mTaskOrganizer = taskOrganizer; mDisplayController = displayController; + mDragStartListener = dragStartListener; mTransactionSupplier = supplier; mTransitions = transitions; - mInteractionJankMonitor = interactionJankMonitor; - mHandler = handler; - mDesktopState = desktopState; } @Override - public Rect onDragPositioningStart(int ctrlType, int displayId, float x, float y) { + public Rect onDragPositioningStart(int ctrlType, float x, float y) { mCtrlType = ctrlType; mTaskBoundsAtDragStart.set( mDesktopWindowDecoration.mTaskInfo.configuration.windowConfiguration.getBounds()); mRepositionStartPoint.set(x, y); if (isResizing()) { - // Capture CUJ for re-sizing window in DW mode. - mInteractionJankMonitor.begin( - createLongTimeoutJankConfigBuilder(CUJ_DESKTOP_MODE_RESIZE_WINDOW)); - if (!mDesktopWindowDecoration.mHasGlobalFocus) { + if (!mDesktopWindowDecoration.mTaskInfo.isFocused) { WindowContainerTransaction wct = new WindowContainerTransaction(); - wct.reorder(mDesktopWindowDecoration.mTaskInfo.token, true /* onTop */, - true /* includingParents */); + wct.reorder(mDesktopWindowDecoration.mTaskInfo.token, true); mTaskOrganizer.applyTransaction(wct); } } + mDragStartListener.onDragStart(mDesktopWindowDecoration.mTaskInfo.taskId); mRepositionTaskBounds.set(mTaskBoundsAtDragStart); int rotation = mDesktopWindowDecoration .mTaskInfo.configuration.windowConfiguration.getDisplayRotation(); @@ -139,50 +108,35 @@ public class VeiledResizeTaskPositioner implements TaskPositioner, Transitions.T } @Override - public Rect onDragPositioningMove(int displayId, float x, float y) { - if (Looper.myLooper() != mHandler.getLooper()) { - // This method must run on the shell main thread to use the correct Choreographer - // instance below. - throw new IllegalStateException("This method must run on the shell main thread."); - } + public Rect onDragPositioningMove(float x, float y) { PointF delta = DragPositioningCallbackUtility.calculateDelta(x, y, mRepositionStartPoint); if (isResizing() && DragPositioningCallbackUtility.changeBounds(mCtrlType, mRepositionTaskBounds, mTaskBoundsAtDragStart, mStableBounds, delta, - mDisplayController, mDesktopWindowDecoration, - mDesktopState.canEnterDesktopMode())) { + mDisplayController, mDesktopWindowDecoration)) { if (!mIsResizingOrAnimatingResize) { - for (DragPositioningCallbackUtility.DragEventListener dragEventListener : - mDragEventListeners) { - dragEventListener.onDragMove(mDesktopWindowDecoration.mTaskInfo.taskId); - } mDesktopWindowDecoration.showResizeVeil(mRepositionTaskBounds); mIsResizingOrAnimatingResize = true; } else { mDesktopWindowDecoration.updateResizeVeil(mRepositionTaskBounds); } } else if (mCtrlType == CTRL_TYPE_UNDEFINED) { - // Begin window drag CUJ instrumentation only when drag position moves. - mInteractionJankMonitor.begin( - createLongTimeoutJankConfigBuilder(CUJ_DESKTOP_MODE_DRAG_WINDOW)); final SurfaceControl.Transaction t = mTransactionSupplier.get(); DragPositioningCallbackUtility.setPositionOnDrag(mDesktopWindowDecoration, mRepositionTaskBounds, mTaskBoundsAtDragStart, mRepositionStartPoint, t, x, y); - t.setFrameTimeline(Choreographer.getInstance().getVsyncId()); t.apply(); } return new Rect(mRepositionTaskBounds); } @Override - public Rect onDragPositioningEnd(int displayId, float x, float y) { + public Rect onDragPositioningEnd(float x, float y) { PointF delta = DragPositioningCallbackUtility.calculateDelta(x, y, mRepositionStartPoint); if (isResizing()) { if (!mTaskBoundsAtDragStart.equals(mRepositionTaskBounds)) { DragPositioningCallbackUtility.changeBounds( mCtrlType, mRepositionTaskBounds, mTaskBoundsAtDragStart, mStableBounds, - delta, mDisplayController, mDesktopWindowDecoration, - mDesktopState.canEnterDesktopMode()); + delta, mDisplayController, mDesktopWindowDecoration); mDesktopWindowDecoration.updateResizeVeil(mRepositionTaskBounds); final WindowContainerTransaction wct = new WindowContainerTransaction(); wct.setBounds(mDesktopWindowDecoration.mTaskInfo.token, mRepositionTaskBounds); @@ -192,11 +146,12 @@ public class VeiledResizeTaskPositioner implements TaskPositioner, Transitions.T // won't be called. resetVeilIfVisible(); } - mInteractionJankMonitor.end(CUJ_DESKTOP_MODE_RESIZE_WINDOW); } else { + final WindowContainerTransaction wct = new WindowContainerTransaction(); DragPositioningCallbackUtility.updateTaskBounds(mRepositionTaskBounds, mTaskBoundsAtDragStart, mRepositionStartPoint, x, y); - mInteractionJankMonitor.end(CUJ_DESKTOP_MODE_DRAG_WINDOW); + wct.setBounds(mDesktopWindowDecoration.mTaskInfo.token, mRepositionTaskBounds); + mTransitions.startTransition(TRANSIT_CHANGE, wct, this); } mCtrlType = CTRL_TYPE_UNDEFINED; @@ -205,9 +160,6 @@ public class VeiledResizeTaskPositioner implements TaskPositioner, Transitions.T return new Rect(mRepositionTaskBounds); } - @Override - public void close() {} - private boolean isResizing() { return (mCtrlType & CTRL_TYPE_TOP) != 0 || (mCtrlType & CTRL_TYPE_BOTTOM) != 0 || (mCtrlType & CTRL_TYPE_LEFT) != 0 || (mCtrlType & CTRL_TYPE_RIGHT) != 0; @@ -220,14 +172,6 @@ public class VeiledResizeTaskPositioner implements TaskPositioner, Transitions.T } } - private InteractionJankMonitor.Configuration.Builder createLongTimeoutJankConfigBuilder( - @Cuj.CujType int cujType) { - return InteractionJankMonitor.Configuration.Builder - .withSurface(cujType, mDesktopWindowDecoration.mContext, - mDesktopWindowDecoration.mTaskSurface, mHandler) - .setTimeout(LONG_CUJ_TIMEOUT_MS); - } - @Override public boolean startAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction startTransaction, @@ -248,7 +192,6 @@ public class VeiledResizeTaskPositioner implements TaskPositioner, Transitions.T mCtrlType = CTRL_TYPE_UNDEFINED; finishCallback.onTransitionFinished(null); mIsResizingOrAnimatingResize = false; - mInteractionJankMonitor.end(CUJ_DESKTOP_MODE_DRAG_WINDOW); return true; } @@ -267,16 +210,4 @@ public class VeiledResizeTaskPositioner implements TaskPositioner, Transitions.T public boolean isResizingOrAnimating() { return mIsResizingOrAnimatingResize; } - - @Override - public void addDragEventListener( - DragPositioningCallbackUtility.DragEventListener dragEventListener) { - mDragEventListeners.add(dragEventListener); - } - - @Override - public void removeDragEventListener( - DragPositioningCallbackUtility.DragEventListener dragEventListener) { - mDragEventListeners.remove(dragEventListener); - } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/WindowDecorViewModel.java b/wmshell/src/com/android/wm/shell/windowdecor/WindowDecorViewModel.java index 477b12671b..1563259f4a 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/WindowDecorViewModel.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/WindowDecorViewModel.java @@ -30,7 +30,8 @@ import com.android.wm.shell.splitscreen.SplitScreenController; */ public interface WindowDecorViewModel { /** - * Sets the transition starter that starts freeform task transitions. + * Sets the transition starter that starts freeform task transitions. Only called when + * {@link com.android.wm.shell.transition.Transitions#ENABLE_SHELL_TRANSITIONS} is {@code true}. * * @param transitionStarter the transition starter that starts freeform task transitions */ diff --git a/wmshell/src/com/android/wm/shell/windowdecor/WindowDecoration.java b/wmshell/src/com/android/wm/shell/windowdecor/WindowDecoration.java index 9c719189a9..216990c352 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/WindowDecoration.java +++ b/wmshell/src/com/android/wm/shell/windowdecor/WindowDecoration.java @@ -16,12 +16,13 @@ package com.android.wm.shell.windowdecor; +import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; +import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.content.res.Configuration.DENSITY_DPI_UNDEFINED; +import static android.view.WindowInsets.Type.captionBar; +import static android.view.WindowInsets.Type.mandatorySystemGestures; import static android.view.WindowInsets.Type.statusBars; -import static android.view.WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE; -import static android.view.WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH; import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION; -import static android.view.WindowManager.TRANSIT_CHANGE; import android.annotation.NonNull; import android.annotation.Nullable; @@ -35,10 +36,7 @@ import android.graphics.PixelFormat; import android.graphics.Point; import android.graphics.Rect; import android.graphics.Region; -import android.gui.BorderSettings; -import android.gui.BoxShadowSettings; import android.os.Binder; -import android.os.Handler; import android.os.Trace; import android.view.Display; import android.view.InsetsSource; @@ -49,28 +47,22 @@ import android.view.SurfaceControlViewHost; import android.view.View; import android.view.WindowManager; import android.view.WindowlessWindowManager; -import android.window.DesktopExperienceFlags; -import android.window.DesktopModeFlags; import android.window.SurfaceSyncGroup; import android.window.TaskConstants; +import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import com.android.internal.annotations.VisibleForTesting; import com.android.wm.shell.ShellTaskOrganizer; -import com.android.wm.shell.common.BoxShadowHelper; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.desktopmode.DesktopModeEventLogger; -import com.android.wm.shell.shared.annotations.ShellMainThread; -import com.android.wm.shell.transition.Transitions; +import com.android.wm.shell.shared.DesktopModeStatus; import com.android.wm.shell.windowdecor.WindowDecoration.RelayoutParams.OccludingCaptionElement; import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalViewHostViewContainer; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHostSupplier; -import com.android.wm.shell.windowdecor.extension.InsetsStateKt; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; -import java.util.function.BiFunction; +import java.util.Objects; import java.util.function.Supplier; /** @@ -92,10 +84,10 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> implements AutoCloseable { /** - * The Z-order of the caption surface. + * The Z-order of {@link #mCaptionContainerSurface}. * <p> * We use {@link #mDecorationContainerSurface} to define input window for task resizing; by - * layering it in front of the caption surface, we can allow it to handle input + * layering it in front of {@link #mCaptionContainerSurface}, we can allow it to handle input * prior to caption view itself, treating corner inputs as resize events rather than * repositioning. */ @@ -104,36 +96,21 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> * The Z-order of the task input sink in {@link DragPositioningCallback}. * <p> * This task input sink is used to prevent undesired dispatching of motion events out of task - * bounds; by layering it behind the caption surface, we allow captions to handle + * bounds; by layering it behind {@link #mCaptionContainerSurface}, we allow captions to handle * input events first. */ static final int INPUT_SINK_Z_ORDER = -2; - /** - * Invalid corner radius that signifies that corner radius should not be set. - */ - static final int INVALID_CORNER_RADIUS = -1; - /** - * Invalid corner radius that signifies that shadow radius should not be set. - */ - static final int INVALID_SHADOW_RADIUS = -1; - /** * System-wide context. Only used to create context with overridden configurations. */ final Context mContext; - private final @NonNull @ShellMainThread Handler mHandler; - private final @NonNull Transitions mTransitions; - final @NonNull Context mUserContext; - final @NonNull DisplayController mDisplayController; - final @NonNull DesktopModeEventLogger mDesktopModeEventLogger; + final DisplayController mDisplayController; final ShellTaskOrganizer mTaskOrganizer; final Supplier<SurfaceControl.Builder> mSurfaceControlBuilderSupplier; final Supplier<SurfaceControl.Transaction> mSurfaceControlTransactionSupplier; final Supplier<WindowContainerTransaction> mWindowContainerTransactionSupplier; final SurfaceControlViewHostFactory mSurfaceControlViewHostFactory; - @NonNull private final WindowDecorViewHostSupplier<WindowDecorViewHost> - mWindowDecorViewHostSupplier; private final DisplayController.OnDisplaysChangedListener mOnDisplaysChangedListener = new DisplayController.OnDisplaysChangedListener() { @Override @@ -143,30 +120,24 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> } mDisplayController.removeDisplayWindowListener(this); - relayout(mTaskInfo, mHasGlobalFocus, mExclusionRegion); + relayout(mTaskInfo); } }; - @VisibleForTesting(visibility = VisibleForTesting.Visibility.PACKAGE) - public RunningTaskInfo mTaskInfo; - @VisibleForTesting(visibility = VisibleForTesting.Visibility.PACKAGE) - public Context mDecorWindowContext; + RunningTaskInfo mTaskInfo; int mLayoutResId; - @VisibleForTesting(visibility = VisibleForTesting.Visibility.PACKAGE) - public final SurfaceControl mTaskSurface; + final SurfaceControl mTaskSurface; Display mDisplay; + Context mDecorWindowContext; SurfaceControl mDecorationContainerSurface; - private WindowDecorViewHost mViewHost; + SurfaceControl mCaptionContainerSurface; + private WindowlessWindowManager mCaptionWindowManager; + private SurfaceControlViewHost mViewHost; private Configuration mWindowDecorConfig; TaskDragResizer mTaskDragResizer; - boolean mIsCaptionVisible; - - boolean mIsStatusBarVisible; - boolean mIsKeyguardVisibleAndOccluded; - boolean mHasGlobalFocus; - final Region mExclusionRegion = Region.obtain(); + private boolean mIsCaptionVisible; /** The most recent set of insets applied to this window decoration. */ private WindowDecorationInsets mWindowDecorationInsets; @@ -175,27 +146,19 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> WindowDecoration( Context context, - @NonNull @ShellMainThread Handler handler, - @NonNull Transitions transitions, - @NonNull Context userContext, DisplayController displayController, ShellTaskOrganizer taskOrganizer, RunningTaskInfo taskInfo, - SurfaceControl taskSurface, - @NonNull WindowDecorViewHostSupplier<WindowDecorViewHost> windowDecorViewHostSupplier) { - this(context, handler, transitions, userContext, displayController, taskOrganizer, taskInfo, - taskSurface, SurfaceControl.Builder::new, SurfaceControl.Transaction::new, + SurfaceControl taskSurface) { + this(context, displayController, taskOrganizer, taskInfo, taskSurface, + SurfaceControl.Builder::new, SurfaceControl.Transaction::new, WindowContainerTransaction::new, SurfaceControl::new, - new SurfaceControlViewHostFactory() {}, windowDecorViewHostSupplier, - new DesktopModeEventLogger()); + new SurfaceControlViewHostFactory() {}); } WindowDecoration( Context context, - @NonNull @ShellMainThread Handler handler, - @NonNull Transitions transitions, - @NonNull Context userContext, - @NonNull DisplayController displayController, + DisplayController displayController, ShellTaskOrganizer taskOrganizer, RunningTaskInfo taskInfo, @NonNull SurfaceControl taskSurface, @@ -203,36 +166,18 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> Supplier<SurfaceControl.Transaction> surfaceControlTransactionSupplier, Supplier<WindowContainerTransaction> windowContainerTransactionSupplier, Supplier<SurfaceControl> surfaceControlSupplier, - SurfaceControlViewHostFactory surfaceControlViewHostFactory, - @NonNull WindowDecorViewHostSupplier<WindowDecorViewHost> windowDecorViewHostSupplier, - @NonNull DesktopModeEventLogger desktopModeEventLogger - ) { + SurfaceControlViewHostFactory surfaceControlViewHostFactory) { mContext = context; - mHandler = handler; - mTransitions = transitions; - mUserContext = userContext; mDisplayController = displayController; mTaskOrganizer = taskOrganizer; mTaskInfo = taskInfo; mTaskSurface = cloneSurfaceControl(taskSurface, surfaceControlSupplier); - mDesktopModeEventLogger = desktopModeEventLogger; mSurfaceControlBuilderSupplier = surfaceControlBuilderSupplier; mSurfaceControlTransactionSupplier = surfaceControlTransactionSupplier; mWindowContainerTransactionSupplier = windowContainerTransactionSupplier; mSurfaceControlViewHostFactory = surfaceControlViewHostFactory; - mWindowDecorViewHostSupplier = windowDecorViewHostSupplier; - mDisplay = mDisplayController.getDisplay(mTaskInfo.displayId); - final InsetsState insetsState = mDisplayController.getInsetsState(mTaskInfo.displayId); - mIsStatusBarVisible = insetsState != null - && InsetsStateKt.isVisible(insetsState, statusBars()); - } - /** - * Gets the decoration's task leash. - * @return the decoration' task surface used to manipulate the task. - */ - public SurfaceControl getLeash() { - return mTaskSurface; + mDisplay = mDisplayController.getDisplay(mTaskInfo.displayId); } /** @@ -241,10 +186,8 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> * * @param taskInfo The previous {@link RunningTaskInfo} passed into {@link #relayout} or the * constructor. - * @param hasGlobalFocus Whether the task is focused */ - abstract void relayout(RunningTaskInfo taskInfo, boolean hasGlobalFocus, - @NonNull Region displayExclusionRegion); + abstract void relayout(RunningTaskInfo taskInfo); /** * Used by the {@link DragPositioningCallback} associated with the implementing class to @@ -256,132 +199,51 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> void relayout(RelayoutParams params, SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT, WindowContainerTransaction wct, T rootView, RelayoutResult<T> outResult) { - Trace.beginSection("WindowDecoration#relayout"); + updateViewsAndSurfaces(params, startT, finishT, wct, rootView, outResult); + if (outResult.mRootView != null) { + updateViewHost(params, startT, outResult); + } + } + + protected void updateViewsAndSurfaces(RelayoutParams params, + SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT, + WindowContainerTransaction wct, T rootView, RelayoutResult<T> outResult) { outResult.reset(); if (params.mRunningTaskInfo != null) { mTaskInfo = params.mRunningTaskInfo; } - mHasGlobalFocus = params.mHasGlobalFocus; - mExclusionRegion.set(params.mDisplayExclusionRegion); final int oldLayoutResId = mLayoutResId; mLayoutResId = params.mLayoutResId; if (!mTaskInfo.isVisible) { releaseViews(wct); - if (params.mSetTaskVisibilityPositionAndCrop) { - finishT.hide(mTaskSurface); - } - Trace.endSection(); // WindowDecoration#relayout - return; - } - Trace.beginSection("WindowDecoration#relayout-inflateIfNeeded"); - inflateIfNeeded(params, wct, rootView, oldLayoutResId, outResult); - Trace.endSection(); - final boolean hasCaptionView = outResult.mRootView != null; - if (!hasCaptionView) { - Trace.endSection(); // WindowDecoration#relayout + finishT.hide(mTaskSurface); return; } - Trace.beginSection("WindowDecoration#relayout-updateCaptionVisibility"); - updateCaptionVisibility(outResult.mRootView, params); - Trace.endSection(); + inflateIfNeeded(params, wct, rootView, oldLayoutResId, outResult); + if (outResult.mRootView == null) { + // Didn't manage to create a root view, early out. + return; + } + rootView = null; // Clear it just in case we use it accidentally + + updateCaptionVisibility(outResult.mRootView, mTaskInfo.displayId); final Rect taskBounds = mTaskInfo.getConfiguration().windowConfiguration.getBounds(); outResult.mWidth = taskBounds.width(); outResult.mHeight = taskBounds.height(); - outResult.mRootView.setTaskFocusState(mHasGlobalFocus); + outResult.mRootView.setTaskFocusState(mTaskInfo.isFocused); final Resources resources = mDecorWindowContext.getResources(); - outResult.mCaptionHeight = params.mCaptionHeightCalculator.apply(mDecorWindowContext, - mDisplay) + params.mCaptionTopPadding; + outResult.mCaptionHeight = loadDimensionPixelSize(resources, params.mCaptionHeightId); outResult.mCaptionWidth = params.mCaptionWidthId != Resources.ID_NULL ? loadDimensionPixelSize(resources, params.mCaptionWidthId) : taskBounds.width(); outResult.mCaptionX = (outResult.mWidth - outResult.mCaptionWidth) / 2; - outResult.mCaptionY = 0; - outResult.mCaptionTopPadding = params.mCaptionTopPadding; - if (params.mBorderSettingsId != Resources.ID_NULL) { - outResult.mBorderSettings = BoxShadowHelper.getBorderSettings(mDecorWindowContext, - params.mBorderSettingsId); - } - - if (params.mBoxShadowSettingsIds != null) { - outResult.mBoxShadowSettings = BoxShadowHelper.getBoxShadowSettings(mDecorWindowContext, - params.mBoxShadowSettingsIds); - } - - if (DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue()) { - outResult.mCornerRadius = params.mCornerRadiusId == Resources.ID_NULL - ? INVALID_CORNER_RADIUS : loadDimensionPixelSize(resources, - params.mCornerRadiusId); - outResult.mShadowRadius = params.mShadowRadiusId == Resources.ID_NULL - ? INVALID_SHADOW_RADIUS : loadDimensionPixelSize(resources, - params.mShadowRadiusId); - } - - Trace.beginSection("relayout-createViewHostIfNeeded"); - createViewHostIfNeeded(mDecorWindowContext, mDisplay); - Trace.endSection(); - - Trace.beginSection("WindowDecoration#relayout-updateSurfacesAndInsets"); - final SurfaceControl captionSurface = mViewHost.getSurfaceControl(); updateDecorationContainerSurface(startT, outResult); - updateCaptionContainerSurface(captionSurface, startT, outResult); + updateCaptionContainerSurface(startT, outResult); updateCaptionInsets(params, wct, outResult, taskBounds); updateTaskSurface(params, startT, finishT, outResult); - Trace.endSection(); - - Trace.beginSection("WindowDecoration#relayout-updateViewHost"); - outResult.mRootView.setPadding( - outResult.mRootView.getPaddingLeft(), - params.mCaptionTopPadding, - outResult.mRootView.getPaddingRight(), - outResult.mRootView.getPaddingBottom()); - final Rect localCaptionBounds = new Rect( - outResult.mCaptionX, - outResult.mCaptionY, - outResult.mCaptionX + outResult.mCaptionWidth, - outResult.mCaptionY + outResult.mCaptionHeight); - final Region touchableRegion = params.mLimitTouchRegionToSystemAreas - ? calculateLimitedTouchableRegion(params, localCaptionBounds) - : null; - updateViewHierarchy(params, outResult, startT, touchableRegion); - Trace.endSection(); - - Trace.endSection(); // WindowDecoration#relayout - } - - private void createViewHostIfNeeded(@NonNull Context context, @NonNull Display display) { - if (mViewHost == null) { - mViewHost = mWindowDecorViewHostSupplier.acquire(context, display); - } - } - - private void updateViewHierarchy(@NonNull RelayoutParams params, - @NonNull RelayoutResult<T> outResult, @NonNull SurfaceControl.Transaction startT, - @Nullable Region touchableRegion) { - Trace.beginSection("WindowDecoration#updateViewHierarchy"); - final WindowManager.LayoutParams lp = - new WindowManager.LayoutParams( - outResult.mCaptionWidth, - outResult.mCaptionHeight, - TYPE_APPLICATION, - FLAG_NOT_FOCUSABLE, - PixelFormat.TRANSPARENT); - lp.setTitle("Caption of Task=" + mTaskInfo.taskId); - lp.setTrustedOverlay(); - lp.inputFeatures = params.mInputFeatures; - if (params.mAsyncViewHost) { - if (params.mApplyStartTransactionOnDraw) { - throw new IllegalArgumentException("Cannot use sync draw tx with async relayout"); - } - mViewHost.updateViewAsync(outResult.mRootView, lp, mTaskInfo.configuration, - touchableRegion); - } else { - mViewHost.updateView(outResult.mRootView, lp, mTaskInfo.configuration, - touchableRegion, params.mApplyStartTransactionOnDraw ? startT : null); - } - Trace.endSection(); } private void inflateIfNeeded(RelayoutParams params, WindowContainerTransaction wct, @@ -391,11 +253,6 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> } outResult.mRootView = rootView; - final boolean fontScaleChanged = mWindowDecorConfig != null - && mWindowDecorConfig.fontScale != mTaskInfo.configuration.fontScale; - final boolean localeListChanged = mWindowDecorConfig != null - && !mWindowDecorConfig.getLocales() - .equals(mTaskInfo.getConfiguration().getLocales()); final int oldDensityDpi = mWindowDecorConfig != null ? mWindowDecorConfig.densityDpi : DENSITY_DPI_UNDEFINED; final int oldNightMode = mWindowDecorConfig != null @@ -410,9 +267,7 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> || mDisplay.getDisplayId() != mTaskInfo.displayId || oldLayoutResId != mLayoutResId || oldNightMode != newNightMode - || mDecorWindowContext == null - || fontScaleChanged - || localeListChanged) { + || mDecorWindowContext == null) { releaseViews(wct); if (!obtainDisplayOrRegisterListener()) { @@ -422,20 +277,17 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> mDecorWindowContext = mContext.createConfigurationContext(mWindowDecorConfig); mDecorWindowContext.setTheme(mContext.getThemeResId()); if (params.mLayoutResId != 0) { - outResult.mRootView = inflateLayout(mDecorWindowContext, params.mLayoutResId); + outResult.mRootView = (T) LayoutInflater.from(mDecorWindowContext) + .inflate(params.mLayoutResId, null); } } if (outResult.mRootView == null) { - outResult.mRootView = inflateLayout(mDecorWindowContext, params.mLayoutResId); + outResult.mRootView = (T) LayoutInflater.from(mDecorWindowContext) + .inflate(params.mLayoutResId, null); } } - @VisibleForTesting - T inflateLayout(Context context, int layoutResId) { - return (T) LayoutInflater.from(context).inflate(layoutResId, null); - } - private void updateDecorationContainerSurface( SurfaceControl.Transaction startT, RelayoutResult<T> outResult) { if (mDecorationContainerSurface == null) { @@ -456,18 +308,28 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> .show(mDecorationContainerSurface); } - private void updateCaptionContainerSurface(@NonNull SurfaceControl captionSurface, + private void updateCaptionContainerSurface( SurfaceControl.Transaction startT, RelayoutResult<T> outResult) { - startT.reparent(captionSurface, mDecorationContainerSurface) - .setWindowCrop(captionSurface, outResult.mCaptionWidth, outResult.mCaptionHeight) - .setPosition(captionSurface, outResult.mCaptionX, 0 /* y */) - .setLayer(captionSurface, CAPTION_LAYER_Z_ORDER) - .show(captionSurface); + if (mCaptionContainerSurface == null) { + final SurfaceControl.Builder builder = mSurfaceControlBuilderSupplier.get(); + mCaptionContainerSurface = builder + .setName("Caption container of Task=" + mTaskInfo.taskId) + .setContainerLayer() + .setParent(mDecorationContainerSurface) + .setCallsite("WindowDecoration.updateCaptionContainerSurface") + .build(); + } + + startT.setWindowCrop(mCaptionContainerSurface, outResult.mCaptionWidth, + outResult.mCaptionHeight) + .setPosition(mCaptionContainerSurface, outResult.mCaptionX, 0 /* y */) + .setLayer(mCaptionContainerSurface, CAPTION_LAYER_Z_ORDER) + .show(mCaptionContainerSurface); } private void updateCaptionInsets(RelayoutParams params, WindowContainerTransaction wct, RelayoutResult<T> outResult, Rect taskBounds) { - if (!mIsCaptionVisible || !params.mIsInsetSource) { + if (!mIsCaptionVisible) { if (mWindowDecorationInsets != null) { mWindowDecorationInsets.remove(wct); mWindowDecorationInsets = null; @@ -500,7 +362,7 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> final int elementWidthPx = resources.getDimensionPixelSize(element.mWidthResId); boundingRects[i] = - calculateBoundingRectLocal(element, elementWidthPx, captionInsetsRect); + calculateBoundingRect(element, elementWidthPx, captionInsetsRect); // Subtract the regions used by the caption elements, the rest is // customizable. if (params.hasInputFeatureSpy()) { @@ -511,196 +373,132 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> } final WindowDecorationInsets newInsets = new WindowDecorationInsets( - mTaskInfo.token, mOwner, captionInsetsRect, taskBounds, boundingRects, - params.mInsetSourceFlags, params.mIsInsetSource, params.mShouldSetAppBounds); + mTaskInfo.token, mOwner, captionInsetsRect, boundingRects); if (!newInsets.equals(mWindowDecorationInsets)) { // Add or update this caption as an insets source. mWindowDecorationInsets = newInsets; - mWindowDecorationInsets.update(wct); + mWindowDecorationInsets.addOrUpdate(wct); } } private void updateTaskSurface(RelayoutParams params, SurfaceControl.Transaction startT, SurfaceControl.Transaction finishT, RelayoutResult<T> outResult) { - if (params.mSetTaskVisibilityPositionAndCrop) { + if (params.mSetTaskPositionAndCrop) { final Point taskPosition = mTaskInfo.positionInParent; startT.setWindowCrop(mTaskSurface, outResult.mWidth, outResult.mHeight); finishT.setWindowCrop(mTaskSurface, outResult.mWidth, outResult.mHeight) .setPosition(mTaskSurface, taskPosition.x, taskPosition.y); } - if (params.mSetTaskVisibilityPositionAndCrop) { - startT.show(mTaskSurface); - } - - if (params.mShouldSetBackground) { - final int backgroundColorInt = mTaskInfo.taskDescription != null - ? mTaskInfo.taskDescription.getBackgroundColor() : Color.BLACK; - mTmpColor[0] = (float) Color.red(backgroundColorInt) / 255.f; - mTmpColor[1] = (float) Color.green(backgroundColorInt) / 255.f; - mTmpColor[2] = (float) Color.blue(backgroundColorInt) / 255.f; - startT.setColor(mTaskSurface, mTmpColor); + float shadowRadius; + if (mTaskInfo.getWindowingMode() == WINDOWING_MODE_FULLSCREEN) { + // Shadow is not needed for fullscreen tasks + shadowRadius = 0; } else { + shadowRadius = + loadDimension(mDecorWindowContext.getResources(), params.mShadowRadiusId); + } + startT.setShadowRadius(mTaskSurface, shadowRadius).show(mTaskSurface); + finishT.setShadowRadius(mTaskSurface, shadowRadius); + + if (mTaskInfo.getWindowingMode() == WINDOWING_MODE_FREEFORM) { + if (!DesktopModeStatus.isVeiledResizeEnabled()) { + // When fluid resize is enabled, add a background to freeform tasks + int backgroundColorInt = mTaskInfo.taskDescription.getBackgroundColor(); + mTmpColor[0] = (float) Color.red(backgroundColorInt) / 255.f; + mTmpColor[1] = (float) Color.green(backgroundColorInt) / 255.f; + mTmpColor[2] = (float) Color.blue(backgroundColorInt) / 255.f; + startT.setColor(mTaskSurface, mTmpColor); + } + startT.setCornerRadius(mTaskSurface, params.mCornerRadius); + finishT.setCornerRadius(mTaskSurface, params.mCornerRadius); + } else if (!DesktopModeStatus.isVeiledResizeEnabled()) { startT.unsetColor(mTaskSurface); } - - updateTaskSurfaceOutline(params, startT, finishT, outResult); } - private void updateTaskSurfaceOutline( - RelayoutParams params, SurfaceControl.Transaction startT, - SurfaceControl.Transaction finishT, RelayoutResult<T> outResult) { - if ((DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue() - || DesktopExperienceFlags.ENABLE_FREEFORM_BOX_SHADOWS.isTrue()) - && !params.mInSyncWithTransition) { - // Update these outline properties only when the relayout is driven by Transition - // callbacks because they must be updated together with some of other properties (e.g., - // position) which is set by transition handler although the outline properties are - // expected to be set by WindowDecoration instead of the transition handler. - return; + /** + * Updates a {@link SurfaceControlViewHost} to connect the window decoration surfaces with our + * View hierarchy. + * + * @param params parameters to use from the last relayout + * @param onDrawTransaction a transaction to apply in sync with #onDraw + * @param outResult results to use from the last relayout + * + */ + protected void updateViewHost(RelayoutParams params, + SurfaceControl.Transaction onDrawTransaction, RelayoutResult<T> outResult) { + Trace.beginSection("CaptionViewHostLayout"); + if (mCaptionWindowManager == null) { + // Put caption under a container surface because ViewRootImpl sets the destination frame + // of windowless window layers and BLASTBufferQueue#update() doesn't support offset. + mCaptionWindowManager = new WindowlessWindowManager( + mTaskInfo.getConfiguration(), mCaptionContainerSurface, + null /* hostInputToken */); } - - if (outResult.mBorderSettings != null - && outResult.mBorderSettings.strokeWidth > 0) { - startT.setBorderSettings(mTaskSurface, outResult.mBorderSettings); - finishT.setBorderSettings(mTaskSurface, outResult.mBorderSettings); - } - - if (outResult.mBoxShadowSettings != null - && outResult.mBoxShadowSettings.boxShadows.length > 0) { - startT.setBoxShadowSettings(mTaskSurface, outResult.mBoxShadowSettings); - finishT.setBoxShadowSettings(mTaskSurface, outResult.mBoxShadowSettings); - } - - if (DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue()) { - if (outResult.mShadowRadius != INVALID_SHADOW_RADIUS) { - startT.setShadowRadius(mTaskSurface, outResult.mShadowRadius); - finishT.setShadowRadius(mTaskSurface, outResult.mShadowRadius); - } - if (outResult.mCornerRadius != INVALID_CORNER_RADIUS) { - startT.setCornerRadius(mTaskSurface, outResult.mCornerRadius); - finishT.setCornerRadius(mTaskSurface, outResult.mCornerRadius); + mCaptionWindowManager.setConfiguration(mTaskInfo.getConfiguration()); + final WindowManager.LayoutParams lp = + new WindowManager.LayoutParams(outResult.mCaptionWidth, outResult.mCaptionHeight, + TYPE_APPLICATION, + WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, PixelFormat.TRANSPARENT); + lp.setTitle("Caption of Task=" + mTaskInfo.taskId); + lp.setTrustedOverlay(); + lp.inputFeatures = params.mInputFeatures; + if (mViewHost == null) { + Trace.beginSection("CaptionViewHostLayout-new"); + mViewHost = mSurfaceControlViewHostFactory.create(mDecorWindowContext, mDisplay, + mCaptionWindowManager); + if (params.mApplyStartTransactionOnDraw) { + if (onDrawTransaction == null) { + throw new IllegalArgumentException("Trying to sync a null Transaction"); + } + mViewHost.getRootSurfaceControl().applyTransactionOnDraw(onDrawTransaction); } + mViewHost.setView(outResult.mRootView, lp); + Trace.endSection(); } else { - if (params.mShadowRadius != INVALID_SHADOW_RADIUS) { - startT.setShadowRadius(mTaskSurface, params.mShadowRadius); - finishT.setShadowRadius(mTaskSurface, params.mShadowRadius); - } - if (params.mCornerRadius != INVALID_CORNER_RADIUS) { - startT.setCornerRadius(mTaskSurface, params.mCornerRadius); - finishT.setCornerRadius(mTaskSurface, params.mCornerRadius); + Trace.beginSection("CaptionViewHostLayout-relayout"); + if (params.mApplyStartTransactionOnDraw) { + if (onDrawTransaction == null) { + throw new IllegalArgumentException("Trying to sync a null Transaction"); + } + mViewHost.getRootSurfaceControl().applyTransactionOnDraw(onDrawTransaction); } + mViewHost.relayout(lp); + Trace.endSection(); } + Trace.endSection(); // CaptionViewHostLayout } - @NonNull - private Region calculateLimitedTouchableRegion( - RelayoutParams params, - @NonNull Rect localCaptionBounds) { - // Make caption bounds relative to display to align with exclusion region. - final Point positionInParent = params.mRunningTaskInfo.positionInParent; - final Rect captionBoundsInDisplay = new Rect(localCaptionBounds); - captionBoundsInDisplay.offsetTo(positionInParent.x, positionInParent.y); - - final Region boundingRects = calculateBoundingRectsRegion(params, captionBoundsInDisplay); - - final Region customizedRegion = Region.obtain(); - customizedRegion.set(captionBoundsInDisplay); - customizedRegion.op(boundingRects, Region.Op.DIFFERENCE); - customizedRegion.op(params.mDisplayExclusionRegion, Region.Op.INTERSECT); - - final Region touchableRegion = Region.obtain(); - touchableRegion.set(captionBoundsInDisplay); - touchableRegion.op(customizedRegion, Region.Op.DIFFERENCE); - // Return resulting region back to window coordinates. - touchableRegion.translate(-positionInParent.x, -positionInParent.y); - - boundingRects.recycle(); - customizedRegion.recycle(); - return touchableRegion; - } - - @NonNull - private Region calculateBoundingRectsRegion( - @NonNull RelayoutParams params, - @NonNull Rect captionBoundsInDisplay) { - final int numOfElements = params.mOccludingCaptionElements.size(); - final Region region = Region.obtain(); - if (numOfElements == 0) { - // The entire caption is a bounding rect. - region.set(captionBoundsInDisplay); - return region; - } - final Resources resources = mDecorWindowContext.getResources(); - for (int i = 0; i < numOfElements; i++) { - final OccludingCaptionElement element = params.mOccludingCaptionElements.get(i); - final int elementWidthPx = resources.getDimensionPixelSize(element.mWidthResId); - final Rect boundingRect = calculateBoundingRectLocal(element, elementWidthPx, - captionBoundsInDisplay); - // Bounding rect is initially calculated relative to the caption, so offset it to make - // it relative to the display. - boundingRect.offset(captionBoundsInDisplay.left, captionBoundsInDisplay.top); - region.union(boundingRect); - } - return region; - } - - private Rect calculateBoundingRectLocal(@NonNull OccludingCaptionElement element, + private Rect calculateBoundingRect(@NonNull OccludingCaptionElement element, int elementWidthPx, @NonNull Rect captionRect) { - final boolean isRtl = - mDecorWindowContext.getResources().getConfiguration().getLayoutDirection() - == View.LAYOUT_DIRECTION_RTL; switch (element.mAlignment) { case START -> { - if (isRtl) { - return new Rect(captionRect.width() - elementWidthPx, 0, - captionRect.width(), captionRect.height()); - } else { - return new Rect(0, 0, elementWidthPx, captionRect.height()); - } + return new Rect(0, 0, elementWidthPx, captionRect.height()); } case END -> { - if (isRtl) { - return new Rect(0, 0, elementWidthPx, captionRect.height()); - } else { - return new Rect(captionRect.width() - elementWidthPx, 0, - captionRect.width(), captionRect.height()); - } + return new Rect(captionRect.width() - elementWidthPx, 0, + captionRect.width(), captionRect.height()); } } throw new IllegalArgumentException("Unexpected alignment " + element.mAlignment); } - void onKeyguardStateChanged(boolean visible, boolean occluded) { - final boolean prevVisAndOccluded = mIsKeyguardVisibleAndOccluded; - mIsKeyguardVisibleAndOccluded = visible && occluded; - final boolean changed = prevVisAndOccluded != mIsKeyguardVisibleAndOccluded; - if (changed) { - relayout(mTaskInfo, mHasGlobalFocus, mExclusionRegion); - } - } - - void onInsetsStateChanged(@NonNull InsetsState insetsState) { - final boolean prevStatusBarVisibility = mIsStatusBarVisible; - mIsStatusBarVisible = InsetsStateKt.isVisible(insetsState, statusBars()); - final boolean changed = prevStatusBarVisibility != mIsStatusBarVisible; - - if (changed) { - relayout(mTaskInfo, mHasGlobalFocus, mExclusionRegion); - } - } - - void onExclusionRegionChanged(@NonNull Region exclusionRegion) { - relayout(mTaskInfo, mHasGlobalFocus, exclusionRegion); - } - /** - * Update caption visibility state and views. + * Checks if task has entered/exited immersive mode and requires a change in caption visibility. */ - private void updateCaptionVisibility(View rootView, @NonNull RelayoutParams params) { - mIsCaptionVisible = params.mIsCaptionVisible; - if (!DesktopModeFlags.ENABLE_DESKTOP_APP_HANDLE_ANIMATION.isTrue()) { + private void updateCaptionVisibility(View rootView, int displayId) { + final InsetsState insetsState = mDisplayController.getInsetsState(displayId); + for (int i = 0; i < insetsState.sourceSize(); i++) { + final InsetsSource source = insetsState.sourceAt(i); + if (source.getType() != statusBars()) { + continue; + } + + mIsCaptionVisible = source.isVisible(); setCaptionVisibility(rootView, mIsCaptionVisible); + + return; } } @@ -708,8 +506,6 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> mTaskDragResizer = taskDragResizer; } - // TODO(b/346441962): Move these three methods closer to implementing or View-level classes to - // keep implementation details more encapsulated. private void setCaptionVisibility(View rootView, boolean visible) { if (rootView == null) { return; @@ -719,8 +515,8 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> captionView.setVisibility(v); } - int getCaptionHeight(@WindowingMode int windowingMode) { - return 0; + int getCaptionHeightId(@WindowingMode int windowingMode) { + return Resources.ID_NULL; } int getCaptionViewId() { @@ -736,22 +532,25 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> private boolean obtainDisplayOrRegisterListener() { mDisplay = mDisplayController.getDisplay(mTaskInfo.displayId); if (mDisplay == null) { - // Post to the handler to avoid an infinite loop. See b/415631133 for more details. - // TODO(b/419398609): Remove this whole work around once the root timing issue is - // resolved. - mHandler.post( - () -> mDisplayController.addDisplayWindowListener(mOnDisplaysChangedListener)); + mDisplayController.addDisplayWindowListener(mOnDisplaysChangedListener); return false; } return true; } void releaseViews(WindowContainerTransaction wct) { + if (mViewHost != null) { + mViewHost.release(); + mViewHost = null; + } + + mCaptionWindowManager = null; + final SurfaceControl.Transaction t = mSurfaceControlTransactionSupplier.get(); boolean released = false; - if (mViewHost != null) { - mWindowDecorViewHostSupplier.release(mViewHost, t); - mViewHost = null; + if (mCaptionContainerSurface != null) { + t.remove(mCaptionContainerSurface); + mCaptionContainerSurface = null; released = true; } @@ -775,17 +574,9 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> public void close() { Trace.beginSection("WindowDecoration#close"); mDisplayController.removeDisplayWindowListener(mOnDisplaysChangedListener); - if (mTaskDragResizer != null) { - mTaskDragResizer.close(); - } final WindowContainerTransaction wct = mWindowContainerTransactionSupplier.get(); releaseViews(wct); - if (DesktopExperienceFlags.ENABLE_DESKTOP_WINDOWING_PIP.isTrue() && !wct.isEmpty()) { - mHandler.post(() -> mTransitions.startTransition(TRANSIT_CHANGE, wct, - /* handler= */ null)); - } else { - mTaskOrganizer.applyTransaction(wct); - } + mTaskOrganizer.applyTransaction(wct); mTaskSurface.release(); Trace.endSection(); } @@ -815,7 +606,7 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> * Create a window associated with this WindowDecoration. * Note that subclass must dispose of this when the task is hidden/closed. * - * @param v View to attach to the window + * @param layoutId layout to make the window from * @param t the transaction to apply * @param xPos x position of new window * @param yPos y position of new window @@ -823,9 +614,9 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> * @param height height of new window * @return the {@link AdditionalViewHostViewContainer} that was added. */ - AdditionalViewHostViewContainer addWindow(@NonNull View v, @NonNull String namePrefix, - @NonNull SurfaceControl.Transaction t, @NonNull SurfaceSyncGroup ssg, - int xPos, int yPos, int width, int height) { + AdditionalViewHostViewContainer addWindow(int layoutId, String namePrefix, + SurfaceControl.Transaction t, SurfaceSyncGroup ssg, int xPos, int yPos, + int width, int height) { final SurfaceControl.Builder builder = mSurfaceControlBuilderSupplier.get(); SurfaceControl windowSurfaceControl = builder .setName(namePrefix + " of Task=" + mTaskInfo.taskId) @@ -833,15 +624,14 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> .setParent(mDecorationContainerSurface) .setCallsite("WindowDecoration.addWindow") .build(); + View v = LayoutInflater.from(mDecorWindowContext).inflate(layoutId, null); + t.setPosition(windowSurfaceControl, xPos, yPos) .setWindowCrop(windowSurfaceControl, width, height) .show(windowSurfaceControl); final WindowManager.LayoutParams lp = - new WindowManager.LayoutParams( - width, - height, - TYPE_APPLICATION, - FLAG_NOT_FOCUSABLE | FLAG_WATCH_OUTSIDE_TOUCH, + new WindowManager.LayoutParams(width, height, TYPE_APPLICATION, + WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, PixelFormat.TRANSPARENT); lp.setTitle("Additional window of Task=" + mTaskInfo.taskId); lp.setTrustedOverlay(); @@ -854,112 +644,54 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> mSurfaceControlTransactionSupplier); } - /** - * Create a window associated with this WindowDecoration. - * Note that subclass must dispose of this when the task is hidden/closed. - * - * @param layoutId layout to make the window from - * @param t the transaction to apply - * @param xPos x position of new window - * @param yPos y position of new window - * @param width width of new window - * @param height height of new window - * @return the {@link AdditionalViewHostViewContainer} that was added. - */ - AdditionalViewHostViewContainer addWindow(int layoutId, String namePrefix, - SurfaceControl.Transaction t, SurfaceSyncGroup ssg, int xPos, int yPos, - int width, int height) { - final View v = LayoutInflater.from(mDecorWindowContext).inflate(layoutId, null); - return addWindow(v, namePrefix, t, ssg, xPos, yPos, width, height); - } - /** * Adds caption inset source to a WCT */ public void addCaptionInset(WindowContainerTransaction wct) { - final int captionHeight = getCaptionHeight(mTaskInfo.getWindowingMode()); - if (captionHeight == 0 || !mIsCaptionVisible) { + final int captionHeightId = getCaptionHeightId(mTaskInfo.getWindowingMode()); + if (captionHeightId == Resources.ID_NULL || !mIsCaptionVisible) { return; } + final int captionHeight = loadDimensionPixelSize(mContext.getResources(), captionHeightId); final Rect captionInsets = new Rect(0, 0, 0, captionHeight); final WindowDecorationInsets newInsets = new WindowDecorationInsets(mTaskInfo.token, - mOwner, captionInsets, null /* taskFrame */, null /* boundingRects */, - 0 /* flags */, true /* shouldAddCaptionInset */, false /* excludedFromAppBounds */); + mOwner, captionInsets, null /* boundingRets */); if (!newInsets.equals(mWindowDecorationInsets)) { mWindowDecorationInsets = newInsets; - mWindowDecorationInsets.update(wct); + mWindowDecorationInsets.addOrUpdate(wct); } } static class RelayoutParams { RunningTaskInfo mRunningTaskInfo; int mLayoutResId; - BiFunction<Context, Display, Integer> mCaptionHeightCalculator = (ctx, display) -> 0; + int mCaptionHeightId; int mCaptionWidthId; final List<OccludingCaptionElement> mOccludingCaptionElements = new ArrayList<>(); - boolean mLimitTouchRegionToSystemAreas; int mInputFeatures; - boolean mIsInsetSource = true; - @InsetsSource.Flags int mInsetSourceFlags; - final Region mDisplayExclusionRegion = Region.obtain(); - @Deprecated - int mShadowRadius = INVALID_SHADOW_RADIUS; - @Deprecated - int mCornerRadius = INVALID_CORNER_RADIUS; - - int mShadowRadiusId = Resources.ID_NULL; - int mCornerRadiusId = Resources.ID_NULL; - int mBorderSettingsId = Resources.ID_NULL; - int[] mBoxShadowSettingsIds = null; - - int mCaptionTopPadding; - boolean mIsCaptionVisible; + int mShadowRadiusId; + int mCornerRadius; Configuration mWindowDecorConfig; - boolean mAsyncViewHost; boolean mApplyStartTransactionOnDraw; - boolean mSetTaskVisibilityPositionAndCrop; - boolean mHasGlobalFocus; - boolean mShouldSetAppBounds; - boolean mShouldSetBackground; - - boolean mInSyncWithTransition; + boolean mSetTaskPositionAndCrop; void reset() { mLayoutResId = Resources.ID_NULL; - mCaptionHeightCalculator = (ctx, display) -> 0; + mCaptionHeightId = Resources.ID_NULL; mCaptionWidthId = Resources.ID_NULL; mOccludingCaptionElements.clear(); - mLimitTouchRegionToSystemAreas = false; mInputFeatures = 0; - mIsInsetSource = true; - mInsetSourceFlags = 0; - mDisplayExclusionRegion.setEmpty(); - mBorderSettingsId = Resources.ID_NULL; - mBoxShadowSettingsIds = null; - if (DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue()) { - mShadowRadiusId = Resources.ID_NULL; - mCornerRadiusId = Resources.ID_NULL; - } else { - mShadowRadius = INVALID_SHADOW_RADIUS; - mCornerRadius = INVALID_SHADOW_RADIUS; - } - - mCaptionTopPadding = 0; - mIsCaptionVisible = false; + mShadowRadiusId = Resources.ID_NULL; + mCornerRadius = 0; mApplyStartTransactionOnDraw = false; - mSetTaskVisibilityPositionAndCrop = false; + mSetTaskPositionAndCrop = false; mWindowDecorConfig = null; - mAsyncViewHost = false; - mHasGlobalFocus = false; - mShouldSetAppBounds = false; - mShouldSetBackground = false; - mInSyncWithTransition = false; } boolean hasInputFeatureSpy() { @@ -984,16 +716,10 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> int mCaptionHeight; int mCaptionWidth; int mCaptionX; - int mCaptionY; - int mCaptionTopPadding; final Region mCustomizableCaptionRegion = Region.obtain(); int mWidth; int mHeight; T mRootView; - int mCornerRadius; - int mShadowRadius; - BorderSettings mBorderSettings; - BoxShadowSettings mBoxShadowSettings; void reset() { mWidth = 0; @@ -1001,32 +727,12 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> mCaptionHeight = 0; mCaptionWidth = 0; mCaptionX = 0; - mCaptionY = 0; - mCaptionTopPadding = 0; mCustomizableCaptionRegion.setEmpty(); mRootView = null; - mBorderSettings = null; - mBoxShadowSettings = null; - if (DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue()) { - mCornerRadius = INVALID_CORNER_RADIUS; - mShadowRadius = INVALID_SHADOW_RADIUS; - } - } - } - - private static class CaptionWindowlessWindowManager extends WindowlessWindowManager { - CaptionWindowlessWindowManager( - @NonNull Configuration configuration, - @NonNull SurfaceControl rootSurface) { - super(configuration, rootSurface, /* hostInputToken= */ null); - } - - /** Set the view host's touchable region. */ - void setTouchRegion(@NonNull SurfaceControlViewHost viewHost, @NonNull Region region) { - setTouchRegion(viewHost.getWindowToken().asBinder(), region); } } + @VisibleForTesting public interface SurfaceControlViewHostFactory { default SurfaceControlViewHost create(Context c, Display d, WindowlessWindowManager wmm) { return new SurfaceControlViewHost(c, d, wmm, "WindowDecoration"); @@ -1036,4 +742,45 @@ public abstract class WindowDecoration<T extends View & TaskFocusStateConsumer> return new SurfaceControlViewHost(c, d, wmm, callsite); } } + + private static class WindowDecorationInsets { + private static final int INDEX = 0; + private final WindowContainerToken mToken; + private final Binder mOwner; + private final Rect mFrame; + private final Rect[] mBoundingRects; + + private WindowDecorationInsets(WindowContainerToken token, Binder owner, Rect frame, + Rect[] boundingRects) { + mToken = token; + mOwner = owner; + mFrame = frame; + mBoundingRects = boundingRects; + } + + void addOrUpdate(WindowContainerTransaction wct) { + wct.addInsetsSource(mToken, mOwner, INDEX, captionBar(), mFrame, mBoundingRects); + wct.addInsetsSource(mToken, mOwner, INDEX, mandatorySystemGestures(), mFrame, + mBoundingRects); + } + + void remove(WindowContainerTransaction wct) { + wct.removeInsetsSource(mToken, mOwner, INDEX, captionBar()); + wct.removeInsetsSource(mToken, mOwner, INDEX, mandatorySystemGestures()); + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (!(o instanceof WindowDecoration.WindowDecorationInsets that)) return false; + return Objects.equals(mToken, that.mToken) && Objects.equals(mOwner, + that.mOwner) && Objects.equals(mFrame, that.mFrame) + && Objects.deepEquals(mBoundingRects, that.mBoundingRects); + } + + @Override + public int hashCode() { + return Objects.hash(mToken, mOwner, mFrame, Arrays.hashCode(mBoundingRects)); + } + } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/additionalviewcontainer/AdditionalSystemViewContainer.kt b/wmshell/src/com/android/wm/shell/windowdecor/additionalviewcontainer/AdditionalSystemViewContainer.kt index 4a01e8e3d4..6c2c8fd46b 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/additionalviewcontainer/AdditionalSystemViewContainer.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/additionalviewcontainer/AdditionalSystemViewContainer.kt @@ -16,101 +16,44 @@ package com.android.wm.shell.windowdecor.additionalviewcontainer -import android.annotation.LayoutRes import android.content.Context import android.graphics.PixelFormat -import android.view.Gravity import android.view.LayoutInflater import android.view.SurfaceControl import android.view.View -import android.view.WindowInsets import android.view.WindowManager -import android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS -import com.android.wm.shell.windowdecor.WindowManagerWrapper /** * An [AdditionalViewContainer] that uses the system [WindowManager] instance. Intended * for view containers that should be above the status bar layer. */ class AdditionalSystemViewContainer( - private val windowManagerWrapper: WindowManagerWrapper, + private val context: Context, + layoutId: Int, taskId: Int, x: Int, y: Int, width: Int, - height: Int, - flags: Int, - @WindowInsets.Type.InsetsType forciblyShownTypes: Int = 0, - ignoreCutouts: Boolean = false, - override val view: View + height: Int ) : AdditionalViewContainer() { - val lp: WindowManager.LayoutParams = WindowManager.LayoutParams( - width, height, x, y, - WindowManager.LayoutParams.TYPE_STATUS_BAR_ADDITIONAL, - flags, - PixelFormat.TRANSPARENT - ).apply { - title = "Additional view container of Task=$taskId" - gravity = Gravity.LEFT or Gravity.TOP - setTrustedOverlay() - this.forciblyShownTypes = forciblyShownTypes - if (ignoreCutouts) { - fitInsetsTypes = 0 - layoutInDisplayCutoutMode = LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS - } - } - - constructor( - context: Context, - windowManagerWrapper: WindowManagerWrapper, - taskId: Int, - x: Int, - y: Int, - width: Int, - height: Int, - flags: Int, - @LayoutRes layoutId: Int, - ignoreCutouts: Boolean = false - ) : this( - windowManagerWrapper = windowManagerWrapper, - taskId = taskId, - x = x, - y = y, - width = width, - height = height, - flags = flags, - view = LayoutInflater.from(context).inflate(layoutId, null /* parent */), - ignoreCutouts = ignoreCutouts - ) - - constructor( - context: Context, - windowManagerWrapper: WindowManagerWrapper, - taskId: Int, - x: Int, - y: Int, - width: Int, - height: Int, - flags: Int, - ignoreCutouts: Boolean = false - ) : this( - windowManagerWrapper = windowManagerWrapper, - taskId = taskId, - x = x, - y = y, - width = width, - height = height, - flags = flags, - view = View(context), - ignoreCutouts = ignoreCutouts - ) + override val view: View init { - windowManagerWrapper.addView(view, lp) + view = LayoutInflater.from(context).inflate(layoutId, null) + val lp = WindowManager.LayoutParams( + width, height, x, y, + WindowManager.LayoutParams.TYPE_STATUS_BAR_ADDITIONAL, + WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, + PixelFormat.TRANSPARENT + ) + lp.title = "Additional view container of Task=$taskId" + lp.setTrustedOverlay() + val wm: WindowManager? = context.getSystemService(WindowManager::class.java) + wm?.addView(view, lp) } override fun releaseView() { - windowManagerWrapper.removeViewImmediate(view) + context.getSystemService(WindowManager::class.java)?.removeViewImmediate(view) } override fun setPosition(t: SurfaceControl.Transaction, x: Float, y: Float) { @@ -118,29 +61,6 @@ class AdditionalSystemViewContainer( this.x = x.toInt() this.y = y.toInt() } - windowManagerWrapper.updateViewLayout(view, lp) - } - - class Factory { - fun create( - windowManagerWrapper: WindowManagerWrapper, - taskId: Int, - x: Int, - y: Int, - width: Int, - height: Int, - flags: Int, - view: View, - ): AdditionalSystemViewContainer = - AdditionalSystemViewContainer( - windowManagerWrapper = windowManagerWrapper, - taskId = taskId, - x = x, - y = y, - width = width, - height = height, - flags = flags, - view = view - ) + view.layoutParams = lp } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/common/ThemeUtils.kt b/wmshell/src/com/android/wm/shell/windowdecor/common/ThemeUtils.kt index f09f22fb19..f7cfbfa884 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/common/ThemeUtils.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/common/ThemeUtils.kt @@ -52,7 +52,6 @@ const val OPACITY_12 = 31 const val OPACITY_15 = 38 const val OPACITY_40 = 102 const val OPACITY_55 = 140 -const val OPACITY_60 = 153 const val OPACITY_65 = 166 /** @@ -92,7 +91,4 @@ internal class DecorThemeUtil(private val context: Context) { Theme.LIGHT -> lightColors Theme.DARK -> darkColors } - - fun getColorScheme(isDarkMode: Boolean): ColorScheme = - if (isDarkMode) darkColors else lightColors } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/extension/TaskInfo.kt b/wmshell/src/com/android/wm/shell/windowdecor/extension/TaskInfo.kt index 052cfaf2cc..7ade9876d2 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/extension/TaskInfo.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/extension/TaskInfo.kt @@ -18,9 +18,6 @@ package com.android.wm.shell.windowdecor.extension import android.app.TaskInfo import android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN -import android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW -import android.app.WindowConfiguration.WINDOWING_MODE_PINNED -import android.view.WindowInsets import android.view.WindowInsetsController.APPEARANCE_LIGHT_CAPTION_BARS import android.view.WindowInsetsController.APPEARANCE_TRANSPARENT_CAPTION_BAR_BACKGROUND @@ -36,21 +33,5 @@ val TaskInfo.isLightCaptionBarAppearance: Boolean return (appearance and APPEARANCE_LIGHT_CAPTION_BARS) != 0 } -/** Whether the task is in fullscreen windowing mode. */ val TaskInfo.isFullscreen: Boolean get() = windowingMode == WINDOWING_MODE_FULLSCREEN - -/** Whether the task is in pinned windowing mode. */ -val TaskInfo.isPinned: Boolean - get() = windowingMode == WINDOWING_MODE_PINNED - -/** Whether the task is in multi-window windowing mode. */ -val TaskInfo.isMultiWindow: Boolean - get() = windowingMode == WINDOWING_MODE_MULTI_WINDOW - -/** Whether the task is requesting immersive mode. */ -val TaskInfo.requestingImmersive: Boolean - get() { - // Considered to be requesting immersive when requesting to hide the status bar. - return (requestedVisibleTypes and WindowInsets.Type.statusBars()) == 0 - } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/viewholder/AppHandleViewHolder.kt b/wmshell/src/com/android/wm/shell/windowdecor/viewholder/AppHandleViewHolder.kt index bad6dd7906..8d822c2522 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/viewholder/AppHandleViewHolder.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/viewholder/AppHandleViewHolder.kt @@ -15,266 +15,50 @@ */ package com.android.wm.shell.windowdecor.viewholder +import android.animation.ObjectAnimator import android.app.ActivityManager.RunningTaskInfo import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM -import android.content.Context import android.content.res.ColorStateList import android.graphics.Color -import android.graphics.Point -import android.hardware.input.InputManager -import android.os.Bundle -import android.os.Handler -import android.view.LayoutInflater -import android.view.MotionEvent.ACTION_DOWN -import android.view.SurfaceControl import android.view.View -import android.view.View.OnClickListener import android.view.WindowInsetsController.APPEARANCE_LIGHT_STATUS_BARS -import android.view.WindowManager -import android.view.accessibility.AccessibilityEvent -import android.view.accessibility.AccessibilityNodeInfo -import android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction import android.widget.ImageButton -import android.window.DesktopExperienceFlags -import android.window.DesktopModeFlags -import androidx.core.view.ViewCompat -import androidx.core.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat -import com.android.internal.policy.SystemBarUtils -import com.android.window.flags2.Flags import com.android.wm.shell.R -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.A11Y_APP_HANDLE_MENU_OPENED -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper -import com.android.wm.shell.windowdecor.AppHandleAnimator -import com.android.wm.shell.windowdecor.WindowDecorLinearLayout -import com.android.wm.shell.windowdecor.WindowManagerWrapper -import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalSystemViewContainer +import com.android.wm.shell.animation.Interpolators /** * A desktop mode window decoration used when the window is in full "focus" (i.e. fullscreen/split). * It hosts a simple handle bar from which to initiate a drag motion to enter desktop mode. */ -class AppHandleViewHolder( - appHandleView: View?, - private val context: Context, - onCaptionTouchListener: View.OnTouchListener, - onCaptionButtonClickListener: OnClickListener, - private val windowManagerWrapper: WindowManagerWrapper, - private val handler: Handler, - private val desktopModeUiEventLogger: DesktopModeUiEventLogger, -) : WindowDecorationViewHolder<AppHandleViewHolder.HandleData>() { +internal class AppHandleViewHolder( + rootView: View, + onCaptionTouchListener: View.OnTouchListener, + onCaptionButtonClickListener: View.OnClickListener +) : WindowDecorationViewHolder(rootView) { - data class HandleData( - val taskInfo: RunningTaskInfo, - val position: Point, - val width: Int, - val height: Int, - val showInputLayer: Boolean, - val isCaptionVisible: Boolean, - ) : Data() + companion object { + private const val CAPTION_HANDLE_ANIMATION_DURATION: Long = 100 + } - private lateinit var taskInfo: RunningTaskInfo - override val rootView = - appHandleView ?: if (DesktopExperienceFlags.ENABLE_WINDOW_DECORATION_REFACTOR.isTrue) { - LayoutInflater.from(context) - .inflate(R.layout.desktop_mode_app_handle, null) as WindowDecorLinearLayout - } else { - error("App Handle root view should not be null") - } private val captionView: View = rootView.requireViewById(R.id.desktop_mode_caption) private val captionHandle: ImageButton = rootView.requireViewById(R.id.caption_handle) - private val inputManager = context.getSystemService(InputManager::class.java) - private val animator: AppHandleAnimator = AppHandleAnimator(rootView, captionHandle) - private var statusBarInputLayerExists = false - - // An invisible View that takes up the same coordinates as captionHandle but is layered - // above the status bar. The purpose of this View is to receive input intended for - // captionHandle. - private var statusBarInputLayer: AdditionalSystemViewContainer? = null init { captionView.setOnTouchListener(onCaptionTouchListener) captionHandle.setOnTouchListener(onCaptionTouchListener) captionHandle.setOnClickListener(onCaptionButtonClickListener) - captionHandle.accessibilityDelegate = object : View.AccessibilityDelegate() { - override fun sendAccessibilityEvent(host: View, eventType: Int) { - when (eventType) { - AccessibilityEvent.TYPE_VIEW_HOVER_ENTER, - AccessibilityEvent.TYPE_VIEW_HOVER_EXIT -> { - // Caption Handle itself can't get a11y focus because it's under the status - // bar, so pass through TYPE_VIEW_HOVER a11y events to the status bar - // input layer, so that it can get a11y focus on the caption handle's behalf - statusBarInputLayer?.view?.sendAccessibilityEvent(eventType) - } - else -> super.sendAccessibilityEvent(host, eventType) - } - } - } } - override fun bindData(data: HandleData) { - bindData( - data.taskInfo, - data.position, - data.width, - data.height, - data.showInputLayer, - data.isCaptionVisible - ) - } - - private fun bindData( - taskInfo: RunningTaskInfo, - position: Point, - width: Int, - height: Int, - showInputLayer: Boolean, - isCaptionVisible: Boolean - ) { - setVisibility(isCaptionVisible) + override fun bindData(taskInfo: RunningTaskInfo) { captionHandle.imageTintList = ColorStateList.valueOf(getCaptionHandleBarColor(taskInfo)) - this.taskInfo = taskInfo - // If handle is not in status bar region(i.e., bottom stage in vertical split), - // do not create an input layer - if (position.y >= SystemBarUtils.getStatusBarHeight(context) || !showInputLayer) { - disposeStatusBarInputLayer() - return - } - // Input layer view creation / modification takes a significant amount of time; - // post them so we don't hold up DesktopModeWindowDecoration#relayout. - if (statusBarInputLayerExists) { - handler.post { updateStatusBarInputLayer(position) } - } else { - // Input layer is created on a delay; prevent multiple from being created. - statusBarInputLayerExists = true - handler.post { createStatusBarInputLayer(position, width, height) } - } } override fun onHandleMenuOpened() { - animator.animateCaptionHandleAlpha(startValue = 1f, endValue = 0f) + animateCaptionHandleAlpha(startValue = 1f, endValue = 0f) } override fun onHandleMenuClosed() { - animator.animateCaptionHandleAlpha(startValue = 0f, endValue = 1f) - } - - private fun createStatusBarInputLayer(handlePosition: Point, - handleWidth: Int, - handleHeight: Int) { - if (!DesktopModeFlags.ENABLE_HANDLE_INPUT_FIX.isTrue()) return - statusBarInputLayer = AdditionalSystemViewContainer(context, windowManagerWrapper, - taskInfo.taskId, handlePosition.x, handlePosition.y, handleWidth, handleHeight, - WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, - ignoreCutouts = Flags.showAppHandleLargeScreens() - || BubbleAnythingFlagHelper.enableBubbleToFullscreen() - ) - val view = statusBarInputLayer?.view ?: error("Unable to find statusBarInputLayer View") - val lp = statusBarInputLayer?.lp ?: error("Unable to find statusBarInputLayer " + - "LayoutParams") - lp.title = "Handle Input Layer of task " + taskInfo.taskId - lp.setTrustedOverlay() - // Make this window a spy window to enable it to pilfer pointers from the system-wide - // gesture listener that receives events before window. This is to prevent notification - // shade gesture when we swipe down to enter desktop. - lp.inputFeatures = WindowManager.LayoutParams.INPUT_FEATURE_SPY - view.setOnHoverListener { _, event -> - captionHandle.onHoverEvent(event) - } - // Caption handle is located within the status bar region, meaning the - // DisplayPolicy will attempt to transfer this input to status bar if it's - // a swipe down. Pilfer here to keep the gesture in handle alone. - view.setOnTouchListener { v, event -> - if (event.actionMasked == ACTION_DOWN) { - inputManager.pilferPointers(v.viewRootImpl.inputToken) - } - captionHandle.dispatchTouchEvent(event) - return@setOnTouchListener true - } - setupAppHandleA11y(view) - windowManagerWrapper.updateViewLayout(view, lp) - } - - private fun setupAppHandleA11y(view: View) { - view.accessibilityDelegate = object : View.AccessibilityDelegate() { - override fun onInitializeAccessibilityNodeInfo( - host: View, - info: AccessibilityNodeInfo - ) { - // Allow the status bar input layer to be a11y clickable so it can interact with - // a11y services on behalf of caption handle (due to being under status bar) - super.onInitializeAccessibilityNodeInfo(host, info) - info.addAction(AccessibilityAction.ACTION_CLICK) - host.isClickable = true - } - - override fun performAccessibilityAction( - host: View, - action: Int, - args: Bundle? - ): Boolean { - // Passthrough the a11y click action so the caption handle, so that app handle menu - // is opened on a11y click, similar to a real click - if (action == AccessibilityAction.ACTION_CLICK.id) { - desktopModeUiEventLogger.log(taskInfo, A11Y_APP_HANDLE_MENU_OPENED) - captionHandle.performClick() - } - return super.performAccessibilityAction(host, action, args) - } - - override fun onPopulateAccessibilityEvent(host: View, event: AccessibilityEvent) { - super.onPopulateAccessibilityEvent(host, event) - // When the status bar input layer is focused, use the content description of the - // caption handle so that it appears as "App handle" and not "Unlabelled view" - if (event.eventType == AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED) { - event.text.add(captionHandle.contentDescription) - } - } - } - - // Update a11y action text so that Talkback announces "Press double tap to open menu" - // while focused on status bar input layer - ViewCompat.replaceAccessibilityAction( - view, - AccessibilityActionCompat.ACTION_CLICK, - context.getString(R.string.app_handle_chip_accessibility_announce), - null - ) - } - - private fun updateStatusBarInputLayer(globalPosition: Point) { - statusBarInputLayer?.setPosition( - SurfaceControl.Transaction(), - globalPosition.x.toFloat(), - globalPosition.y.toFloat() - ) ?: return - } - - /** - * Remove the input layer from [WindowManager]. Should be used when caption handle - * is not visible. - */ - fun disposeStatusBarInputLayer() { - if (!statusBarInputLayerExists) return - statusBarInputLayerExists = false - statusBarInputLayer?.view?.setOnTouchListener(null) - handler.post { - statusBarInputLayer?.releaseView() - statusBarInputLayer = null - } - } - - private fun setVisibility(visible: Boolean) { - val v = if (visible) View.VISIBLE else View.GONE - if ( - captionView.visibility == v || - !DesktopModeFlags.ENABLE_DESKTOP_APP_HANDLE_ANIMATION.isTrue() - ) { - return - } - // TODO(b/405251465): animate app handle visibility change after creation and animation are - // moved to a background thread. - captionView.visibility = v + animateCaptionHandleAlpha(startValue = 0f, endValue = 1f) } private fun getCaptionHandleBarColor(taskInfo: RunningTaskInfo): Int { @@ -293,8 +77,7 @@ class AppHandleViewHolder( return taskInfo.taskDescription ?.let { taskDescription -> if (Color.alpha(taskDescription.statusBarColor) != 0 && - taskInfo.windowingMode == WINDOWING_MODE_FREEFORM - ) { + taskInfo.windowingMode == WINDOWING_MODE_FREEFORM) { Color.valueOf(taskDescription.statusBarColor).luminance() < 0.5 } else { taskDescription.systemBarsAppearance and APPEARANCE_LIGHT_STATUS_BARS == 0 @@ -302,36 +85,13 @@ class AppHandleViewHolder( } ?: false } - override fun setTaskFocusState(taskFocusState: Boolean) { - (rootView as WindowDecorLinearLayout).setTaskFocusState(taskFocusState) - } - - override fun close() { - animator.cancel() - } - - /** Factory class for creating [AppHandleViewHolder] objects. */ - class Factory { - /** - * Create a [AppHandleViewHolder] object to handle caption view and status bar - * input layer logic. - */ - fun create( - rootView: View?, - context: Context, - onCaptionTouchListener: View.OnTouchListener, - onCaptionButtonClickListener: OnClickListener, - windowManagerWrapper: WindowManagerWrapper, - handler: Handler, - desktopModeUiEventLogger: DesktopModeUiEventLogger, - ): AppHandleViewHolder = AppHandleViewHolder( - rootView, - context, - onCaptionTouchListener, - onCaptionButtonClickListener, - windowManagerWrapper, - handler, - desktopModeUiEventLogger, - ) + /** Animate appearance/disappearance of caption handle as the handle menu is animated. */ + private fun animateCaptionHandleAlpha(startValue: Float, endValue: Float) { + val animator = + ObjectAnimator.ofFloat(captionHandle, View.ALPHA, startValue, endValue).apply { + duration = CAPTION_HANDLE_ANIMATION_DURATION + interpolator = Interpolators.FAST_OUT_SLOW_IN + } + animator.start() } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/viewholder/AppHeaderViewHolder.kt b/wmshell/src/com/android/wm/shell/windowdecor/viewholder/AppHeaderViewHolder.kt index 975a4c0dd7..46127b177b 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/viewholder/AppHeaderViewHolder.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/viewholder/AppHeaderViewHolder.kt @@ -16,60 +16,41 @@ package com.android.wm.shell.windowdecor.viewholder import android.annotation.ColorInt -import android.annotation.DrawableRes import android.app.ActivityManager.RunningTaskInfo -import android.content.Context import android.content.res.ColorStateList import android.content.res.Configuration import android.graphics.Bitmap import android.graphics.Color -import android.graphics.Rect -import android.os.Bundle -import android.view.LayoutInflater +import android.graphics.drawable.LayerDrawable +import android.graphics.drawable.RippleDrawable +import android.graphics.drawable.ShapeDrawable +import android.graphics.drawable.shapes.RoundRectShape import android.view.View import android.view.View.OnLongClickListener -import android.view.ViewTreeObserver.OnGlobalLayoutListener -import android.view.accessibility.AccessibilityEvent -import android.view.accessibility.AccessibilityNodeInfo -import android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction import android.widget.ImageButton import android.widget.ImageView import android.widget.TextView -import android.window.DesktopExperienceFlags -import android.window.DesktopModeFlags import androidx.compose.material3.dynamicDarkColorScheme import androidx.compose.material3.dynamicLightColorScheme import androidx.compose.ui.graphics.toArgb import androidx.core.content.withStyledAttributes -import androidx.core.view.ViewCompat -import androidx.core.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat -import androidx.core.view.isGone import androidx.core.view.isVisible -import com.android.internal.R.color.materialColorOnSecondaryContainer -import com.android.internal.R.color.materialColorOnSurface -import com.android.internal.R.color.materialColorSecondaryContainer -import com.android.internal.R.color.materialColorSurfaceContainerHigh -import com.android.internal.R.color.materialColorSurfaceContainerLow -import com.android.internal.R.color.materialColorSurfaceDim +import com.android.internal.R.attr.materialColorOnSecondaryContainer +import com.android.internal.R.attr.materialColorOnSurface +import com.android.internal.R.attr.materialColorSecondaryContainer +import com.android.internal.R.attr.materialColorSurfaceContainerHigh +import com.android.internal.R.attr.materialColorSurfaceContainerLow +import com.android.internal.R.attr.materialColorSurfaceDim +import com.android.window.flags.Flags import com.android.wm.shell.R -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.InputMethod -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.A11Y_ACTION_MAXIMIZE_RESTORE -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.A11Y_ACTION_RESIZE_LEFT -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.A11Y_ACTION_RESIZE_RIGHT -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.A11Y_APP_WINDOW_CLOSE_BUTTON -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.A11Y_APP_WINDOW_MAXIMIZE_RESTORE_BUTTON -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.A11Y_APP_WINDOW_MINIMIZE_BUTTON import com.android.wm.shell.windowdecor.MaximizeButtonView -import com.android.wm.shell.windowdecor.WindowDecorLinearLayout -import com.android.wm.shell.windowdecor.WindowDecorationActions import com.android.wm.shell.windowdecor.common.DecorThemeUtil -import com.android.wm.shell.windowdecor.common.DrawableInsets import com.android.wm.shell.windowdecor.common.OPACITY_100 +import com.android.wm.shell.windowdecor.common.OPACITY_11 +import com.android.wm.shell.windowdecor.common.OPACITY_15 import com.android.wm.shell.windowdecor.common.OPACITY_55 import com.android.wm.shell.windowdecor.common.OPACITY_65 import com.android.wm.shell.windowdecor.common.Theme -import com.android.wm.shell.windowdecor.common.createBackgroundDrawable import com.android.wm.shell.windowdecor.extension.isLightCaptionBarAppearance import com.android.wm.shell.windowdecor.extension.isTransparentCaptionBarAppearance @@ -78,26 +59,16 @@ import com.android.wm.shell.windowdecor.extension.isTransparentCaptionBarAppeara * finer controls such as a close window button and an "app info" section to pull up additional * controls. */ -class AppHeaderViewHolder( - appHeaderView: View?, - private val context: Context, - windowDecorationActions: WindowDecorationActions, - onCaptionTouchListener: View.OnTouchListener, - onCaptionButtonClickListener: View.OnClickListener, - private val onLongClickListener: OnLongClickListener, - onCaptionGenericMotionListener: View.OnGenericMotionListener, - onMaximizeHoverAnimationFinishedListener: () -> Unit, - private val desktopModeUiEventLogger: DesktopModeUiEventLogger, -) : WindowDecorationViewHolder<AppHeaderViewHolder.HeaderData>() { - - data class HeaderData( - val taskInfo: RunningTaskInfo, - val isTaskMaximized: Boolean, - val inFullImmersiveState: Boolean, - val hasGlobalFocus: Boolean, - val enableMaximizeLongClick: Boolean, - val isCaptionVisible: Boolean, - ) : Data() +internal class AppHeaderViewHolder( + rootView: View, + onCaptionTouchListener: View.OnTouchListener, + onCaptionButtonClickListener: View.OnClickListener, + onLongClickListener: OnLongClickListener, + onCaptionGenericMotionListener: View.OnGenericMotionListener, + appName: CharSequence, + appIconBitmap: Bitmap, + onMaximizeHoverAnimationFinishedListener: () -> Unit +) : WindowDecorationViewHolder(rootView) { private val decorThemeUtil = DecorThemeUtil(context) private val lightColors = dynamicLightColorScheme(context) @@ -110,27 +81,9 @@ class AppHeaderViewHolder( .getDimensionPixelSize(R.dimen.desktop_mode_header_buttons_ripple_radius) /** - * The max width of the app name shown on the app header. - **/ - private val appNameMaxWidth = context.resources - .getDimensionPixelSize(R.dimen.desktop_mode_header_app_name_max_width) - - /** - * The width of the expand menu error image on the app header. - **/ - private val expandMenuErrorImageWidth = context.resources - .getDimensionPixelSize(R.dimen.desktop_mode_header_expand_menu_error_image_width) - - /** - * The margin added between app name and expand menu error image on the app header. - **/ - private val expandMenuErrorImageMargin = context.resources - .getDimensionPixelSize(R.dimen.desktop_mode_header_expand_menu_error_image_margin) - - /** - * The app chip, minimize, maximize and close button's height extends to the top & bottom edges - * of the header, and their width may be larger than their height. This is by design to increase - * the clickable and hover-able bounds of the view as much as possible. However, to prevent the + * The app chip, maximize and close button's height extends to the top & bottom edges of the + * header, and their width may be larger than their height. This is by design to increase the + * clickable and hover-able bounds of the view as much as possible. However, to prevent the * ripple drawable from being as large as the views (and asymmetrical), insets are applied to * the background ripple drawable itself to give the appearance of a smaller button * (with padding between itself and the header edges / sibling buttons) but without affecting @@ -140,12 +93,6 @@ class AppHeaderViewHolder( vertical = context.resources .getDimensionPixelSize(R.dimen.desktop_mode_header_app_chip_ripple_inset_vertical) ) - private val minimizeDrawableInsets = DrawableInsets( - vertical = context.resources - .getDimensionPixelSize(R.dimen.desktop_mode_header_minimize_ripple_inset_vertical), - horizontal = context.resources - .getDimensionPixelSize(R.dimen.desktop_mode_header_minimize_ripple_inset_horizontal) - ) private val maximizeDrawableInsets = DrawableInsets( vertical = context.resources .getDimensionPixelSize(R.dimen.desktop_mode_header_maximize_ripple_inset_vertical), @@ -159,49 +106,19 @@ class AppHeaderViewHolder( .getDimensionPixelSize(R.dimen.desktop_mode_header_close_ripple_inset_horizontal) ) - override val rootView = - appHeaderView ?: if (DesktopExperienceFlags.ENABLE_WINDOW_DECORATION_REFACTOR.isTrue) { - LayoutInflater.from(context) - .inflate(R.layout.desktop_mode_app_header, null) as WindowDecorLinearLayout - } else { - error("App Header root view should not be null") - } private val captionView: View = rootView.requireViewById(R.id.desktop_mode_caption) private val captionHandle: View = rootView.requireViewById(R.id.caption_handle) private val openMenuButton: View = rootView.requireViewById(R.id.open_menu_button) private val closeWindowButton: ImageButton = rootView.requireViewById(R.id.close_window) private val expandMenuButton: ImageButton = rootView.requireViewById(R.id.expand_menu_button) private val maximizeButtonView: MaximizeButtonView = - rootView.requireViewById(R.id.maximize_button_view) + rootView.requireViewById(R.id.maximize_button_view) private val maximizeWindowButton: ImageButton = rootView.requireViewById(R.id.maximize_window) - private val minimizeWindowButton: ImageButton = rootView.requireViewById(R.id.minimize_window) private val appNameTextView: TextView = rootView.requireViewById(R.id.application_name) private val appIconImageView: ImageView = rootView.requireViewById(R.id.application_icon) - private val expandMenuErrorImageView: ImageView = - rootView.requireViewById(R.id.expand_menu_error) - val appNameTextWidth: Int get() = appNameTextView.width - private val a11yAnnounceTextMaximize: String = - context.getString(R.string.app_header_talkback_action_maximize_button_text) - private val a11yAnnounceTextRestore: String = - context.getString(R.string.app_header_talkback_action_restore_button_text) - - private val a11yAnnounceTextOpening: String = - context.getString(R.string.desktop_mode_talkback_state_opening) - private val a11yAnnounceTextMinimizing: String = - context.getString(R.string.desktop_mode_talkback_state_minimizing) - private val a11yAnnounceTextClosing: String = - context.getString(R.string.desktop_mode_talkback_state_closing) - private lateinit var a11yAnnounceTextFocused: String - private lateinit var a11yAnnounceTextNotFocused: String - - private lateinit var sizeToggleDirection: SizeToggleDirection - private lateinit var a11yTextMaximize: String - private lateinit var a11yTextRestore: String - private lateinit var currentTaskInfo: RunningTaskInfo - init { captionView.setOnTouchListener(onCaptionTouchListener) captionHandle.setOnTouchListener(onCaptionTouchListener) @@ -213,285 +130,33 @@ class AppHeaderViewHolder( maximizeWindowButton.setOnGenericMotionListener(onCaptionGenericMotionListener) maximizeWindowButton.onLongClickListener = onLongClickListener closeWindowButton.setOnTouchListener(onCaptionTouchListener) - minimizeWindowButton.setOnClickListener(onCaptionButtonClickListener) - minimizeWindowButton.setOnTouchListener(onCaptionTouchListener) + appNameTextView.text = appName + appIconImageView.setImageBitmap(appIconBitmap) maximizeButtonView.onHoverAnimationFinishedListener = onMaximizeHoverAnimationFinishedListener - - val a11yActionSnapLeft = AccessibilityAction( - R.id.action_snap_left, - context.getString(R.string.desktop_mode_a11y_action_snap_left) - ) - val a11yActionSnapRight = AccessibilityAction( - R.id.action_snap_right, - context.getString(R.string.desktop_mode_a11y_action_snap_right) - ) - val a11yActionMaximizeRestore = AccessibilityAction( - R.id.action_maximize_restore, - context.getString(R.string.desktop_mode_a11y_action_maximize_restore) - ) - - captionHandle.accessibilityDelegate = object : View.AccessibilityDelegate() { - override fun onInitializeAccessibilityNodeInfo( - host: View, - info: AccessibilityNodeInfo - ) { - super.onInitializeAccessibilityNodeInfo(host, info) - info.addAction(a11yActionSnapLeft) - info.addAction(a11yActionSnapRight) - info.addAction(a11yActionMaximizeRestore) - info.liveRegion = View.ACCESSIBILITY_LIVE_REGION_POLITE - info.isScreenReaderFocusable = false - } - - override fun performAccessibilityAction( - host: View, - action: Int, - args: Bundle? - ): Boolean { - when (action) { - R.id.action_snap_left -> { - desktopModeUiEventLogger.log(currentTaskInfo, A11Y_ACTION_RESIZE_LEFT) - windowDecorationActions.onLeftSnap( - currentTaskInfo.taskId, - InputMethod.ACCESSIBILITY - ) - } - R.id.action_snap_right -> { - desktopModeUiEventLogger.log(currentTaskInfo, A11Y_ACTION_RESIZE_RIGHT) - windowDecorationActions.onRightSnap( - currentTaskInfo.taskId, - InputMethod.ACCESSIBILITY - ) - } - R.id.action_maximize_restore -> { - desktopModeUiEventLogger.log(currentTaskInfo, A11Y_ACTION_MAXIMIZE_RESTORE) - windowDecorationActions.onMaximizeOrRestore( - currentTaskInfo.taskId, - InputMethod.ACCESSIBILITY - ) - } - } - - return super.performAccessibilityAction(host, action, args) - } - } - maximizeWindowButton.accessibilityDelegate = object : View.AccessibilityDelegate() { - override fun onInitializeAccessibilityNodeInfo( - host: View, - info: AccessibilityNodeInfo - ) { - super.onInitializeAccessibilityNodeInfo(host, info) - info.addAction(AccessibilityAction.ACTION_CLICK) - info.addAction(a11yActionSnapLeft) - info.addAction(a11yActionSnapRight) - info.addAction(a11yActionMaximizeRestore) - host.isClickable = true - } - - override fun performAccessibilityAction( - host: View, - action: Int, - args: Bundle? - ): Boolean { - when (action) { - AccessibilityAction.ACTION_CLICK.id -> { - desktopModeUiEventLogger.log( - currentTaskInfo, A11Y_APP_WINDOW_MAXIMIZE_RESTORE_BUTTON - ) - host.performClick() - } - R.id.action_snap_left -> { - desktopModeUiEventLogger.log(currentTaskInfo, A11Y_ACTION_RESIZE_LEFT) - windowDecorationActions.onLeftSnap( - currentTaskInfo.taskId, - InputMethod.ACCESSIBILITY - ) - } - R.id.action_snap_right -> { - desktopModeUiEventLogger.log(currentTaskInfo, A11Y_ACTION_RESIZE_RIGHT) - windowDecorationActions.onRightSnap( - currentTaskInfo.taskId, - InputMethod.ACCESSIBILITY - ) - } - R.id.action_maximize_restore -> { - desktopModeUiEventLogger.log(currentTaskInfo, A11Y_ACTION_MAXIMIZE_RESTORE) - windowDecorationActions.onMaximizeOrRestore( - currentTaskInfo.taskId, - InputMethod.ACCESSIBILITY - ) - } - } - - return super.performAccessibilityAction(host, action, args) - } - } - - closeWindowButton.accessibilityDelegate = object : View.AccessibilityDelegate() { - override fun performAccessibilityAction( - host: View, - action: Int, - args: Bundle? - ): Boolean { - when (action) { - AccessibilityAction.ACTION_CLICK.id -> { - captionHandle.stateDescription = a11yAnnounceTextClosing - desktopModeUiEventLogger.log(currentTaskInfo, A11Y_APP_WINDOW_CLOSE_BUTTON) - } - } - - return super.performAccessibilityAction(host, action, args) - } - } - - minimizeWindowButton.accessibilityDelegate = object : View.AccessibilityDelegate() { - override fun performAccessibilityAction( - host: View, - action: Int, - args: Bundle? - ): Boolean { - when (action) { - AccessibilityAction.ACTION_CLICK.id -> { - captionHandle.stateDescription = a11yAnnounceTextMinimizing - desktopModeUiEventLogger.log( - currentTaskInfo, A11Y_APP_WINDOW_MINIMIZE_BUTTON - ) - } - } - - return super.performAccessibilityAction(host, action, args) - } - } - - // Update a11y announcement to say "double tap to open menu" - ViewCompat.replaceAccessibilityAction( - openMenuButton, - AccessibilityActionCompat.ACTION_CLICK, - context.getString(R.string.app_handle_chip_accessibility_announce), - null - ) - - // Update a11y announcement to say "double tap to minimize app window" - ViewCompat.replaceAccessibilityAction( - minimizeWindowButton, - AccessibilityActionCompat.ACTION_CLICK, - context.getString(R.string.app_header_talkback_action_minimize_button_text), - null - ) - - // Update a11y announcement to say "double tap to close app window" - ViewCompat.replaceAccessibilityAction( - closeWindowButton, - AccessibilityActionCompat.ACTION_CLICK, - context.getString(R.string.app_header_talkback_action_close_button_text), - null - ) } - override fun bindData(data: HeaderData) { - bindData( - data.taskInfo, - data.isTaskMaximized, - data.inFullImmersiveState, - data.hasGlobalFocus, - data.enableMaximizeLongClick, - data.isCaptionVisible, - ) - } - - /** Announces app window name as "focused" via Talkback */ - fun a11yAnnounceFocused() { - captionHandle.stateDescription = a11yAnnounceTextFocused - } - - /** Sets the app's name in the header. */ - fun setAppName(name: CharSequence) { - appNameTextView.text = name - populateA11yStrings(name) - - updateMaximizeButtonContentDescription() - } - - /** Populates string variables from string templates which rely on app name */ - private fun populateA11yStrings(name: CharSequence) { - openMenuButton.contentDescription = - context.getString(R.string.desktop_mode_app_header_chip_text, name) - - closeWindowButton.contentDescription = context.getString(R.string.close_button_text, name) - minimizeWindowButton.contentDescription = - context.getString(R.string.minimize_button_text, name) - - a11yTextMaximize = context.getString(R.string.maximize_button_text, name) - a11yTextRestore = context.getString(R.string.restore_button_text, name) - a11yAnnounceTextFocused = - context.getString(R.string.desktop_mode_talkback_state_focused, name) - a11yAnnounceTextNotFocused = - context.getString(R.string.desktop_mode_talkback_state_not_focused, name) - } - - private fun updateMaximizeButtonContentDescription() { - if (this::a11yTextRestore.isInitialized && - this::a11yTextMaximize.isInitialized && - this::sizeToggleDirection.isInitialized) { - maximizeWindowButton.contentDescription = when (sizeToggleDirection) { - SizeToggleDirection.MAXIMIZE -> a11yTextMaximize - SizeToggleDirection.RESTORE -> a11yTextRestore - } - } - } - - /** Sets the app's icon in the header. */ - fun setAppIcon(icon: Bitmap) { - appIconImageView.setImageBitmap(icon) - } - - private fun bindData( - taskInfo: RunningTaskInfo, - isTaskMaximized: Boolean, - inFullImmersiveState: Boolean, - hasGlobalFocus: Boolean, - enableMaximizeLongClick: Boolean, - isCaptionVisible: Boolean, - ) { - currentTaskInfo = taskInfo - if (DesktopModeFlags.ENABLE_THEMED_APP_HEADERS.isTrue) { - bindDataWithThemedHeaders( - taskInfo, - isTaskMaximized, - inFullImmersiveState, - hasGlobalFocus, - enableMaximizeLongClick, - isCaptionVisible, - ) + override fun bindData(taskInfo: RunningTaskInfo) { + if (Flags.enableThemedAppHeaders()) { + bindDataWithThemedHeaders(taskInfo) } else { - bindDataLegacy(taskInfo, hasGlobalFocus, isCaptionVisible) + bindDataLegacy(taskInfo) } } - private fun bindDataLegacy( - taskInfo: RunningTaskInfo, - hasGlobalFocus: Boolean, - isCaptionVisible: Boolean, - ) { - if (DesktopModeFlags.ENABLE_DESKTOP_APP_HANDLE_ANIMATION.isTrue()) { - setCaptionVisibility(isCaptionVisible) - } - captionView.setBackgroundColor(getCaptionBackgroundColor(taskInfo, hasGlobalFocus)) - val color = getAppNameAndButtonColor(taskInfo, hasGlobalFocus) + private fun bindDataLegacy(taskInfo: RunningTaskInfo) { + captionView.setBackgroundColor(getCaptionBackgroundColor(taskInfo)) + val color = getAppNameAndButtonColor(taskInfo) val alpha = Color.alpha(color) closeWindowButton.imageTintList = ColorStateList.valueOf(color) maximizeWindowButton.imageTintList = ColorStateList.valueOf(color) - minimizeWindowButton.imageTintList = ColorStateList.valueOf(color) expandMenuButton.imageTintList = ColorStateList.valueOf(color) appNameTextView.isVisible = !taskInfo.isTransparentCaptionBarAppearance appNameTextView.setTextColor(color) appIconImageView.imageAlpha = alpha maximizeWindowButton.imageAlpha = alpha - minimizeWindowButton.imageAlpha = alpha closeWindowButton.imageAlpha = alpha expandMenuButton.imageAlpha = alpha - expandMenuErrorImageView.imageAlpha = alpha context.withStyledAttributes( set = null, attrs = intArrayOf( @@ -504,27 +169,14 @@ class AppHeaderViewHolder( openMenuButton.background = getDrawable(0) maximizeWindowButton.background = getDrawable(1) closeWindowButton.background = getDrawable(1) - minimizeWindowButton.background = getDrawable(1) } maximizeButtonView.setAnimationTints(isDarkMode()) - minimizeWindowButton.isGone = !DesktopModeFlags.ENABLE_MINIMIZE_BUTTON.isTrue } - private fun bindDataWithThemedHeaders( - taskInfo: RunningTaskInfo, - isTaskMaximized: Boolean, - inFullImmersiveState: Boolean, - hasGlobalFocus: Boolean, - enableMaximizeLongClick: Boolean, - isCaptionVisible: Boolean, - ) { - val header = fillHeaderInfo(taskInfo, hasGlobalFocus) + private fun bindDataWithThemedHeaders(taskInfo: RunningTaskInfo) { + val header = fillHeaderInfo(taskInfo) val headerStyle = getHeaderStyle(header) - if (DesktopModeFlags.ENABLE_DESKTOP_APP_HANDLE_ANIMATION.isTrue()) { - setCaptionVisibility(isCaptionVisible) - } - // Caption Background when (headerStyle.background) { is HeaderStyle.Background.Opaque -> { @@ -541,105 +193,52 @@ class AppHeaderViewHolder( val colorStateList = ColorStateList.valueOf(foregroundColor).withAlpha(foregroundAlpha) // App chip. openMenuButton.apply { - background = createBackgroundDrawable( + background = createRippleDrawable( color = foregroundColor, cornerRadius = headerButtonsRippleRadius, drawableInsets = appChipDrawableInsets, ) expandMenuButton.imageTintList = colorStateList - expandMenuErrorImageView.visibility = - if (currentTaskInfo.appCompatTaskInfo.isRestartMenuEnabledForDisplayMove) - View.VISIBLE else View.GONE appNameTextView.apply { isVisible = header.type == Header.Type.DEFAULT setTextColor(colorStateList) - maxWidth = if (currentTaskInfo.appCompatTaskInfo.isRestartMenuEnabledForDisplayMove) - appNameMaxWidth - expandMenuErrorImageWidth - expandMenuErrorImageMargin else appNameMaxWidth } appIconImageView.imageAlpha = foregroundAlpha - defaultFocusHighlightEnabled = false } - // Minimize button. - minimizeWindowButton.apply { - imageTintList = colorStateList - background = createBackgroundDrawable( + // Maximize button. + maximizeButtonView.setAnimationTints( + darkMode = header.appTheme == Theme.DARK, + iconForegroundColor = colorStateList, + baseForegroundColor = foregroundColor, + rippleDrawable = createRippleDrawable( color = foregroundColor, cornerRadius = headerButtonsRippleRadius, - drawableInsets = minimizeDrawableInsets + drawableInsets = maximizeDrawableInsets ) - } - minimizeWindowButton.isGone = !DesktopModeFlags.ENABLE_MINIMIZE_BUTTON.isTrue - // Maximize button. - maximizeButtonView.apply { - setAnimationTints( - darkMode = header.appTheme == Theme.DARK, - iconForegroundColor = colorStateList, - baseForegroundColor = foregroundColor, - backgroundDrawable = createBackgroundDrawable( - color = foregroundColor, - cornerRadius = headerButtonsRippleRadius, - drawableInsets = maximizeDrawableInsets - ) - ) - val icon = getMaximizeButtonIcon(isTaskMaximized, inFullImmersiveState) - setIcon(icon) - - when (icon) { - R.drawable.decor_desktop_mode_immersive_or_maximize_exit_button_dark -> { - sizeToggleDirection = SizeToggleDirection.RESTORE - - // Update a11y announcement to say "double tap to maximize app window size" - ViewCompat.replaceAccessibilityAction( - maximizeWindowButton, - AccessibilityActionCompat.ACTION_CLICK, - a11yAnnounceTextRestore, - null - ) - } - R.drawable.decor_desktop_mode_maximize_button_dark -> { - sizeToggleDirection = SizeToggleDirection.MAXIMIZE - - // Update a11y announcement to say "double tap to restore app window size" - ViewCompat.replaceAccessibilityAction( - maximizeWindowButton, - AccessibilityActionCompat.ACTION_CLICK, - a11yAnnounceTextMaximize, - null - ) - } - } - updateMaximizeButtonContentDescription() - } + ) // Close button. closeWindowButton.apply { imageTintList = colorStateList - background = createBackgroundDrawable( + background = createRippleDrawable( color = foregroundColor, cornerRadius = headerButtonsRippleRadius, drawableInsets = closeDrawableInsets ) } - if (!enableMaximizeLongClick) { - maximizeButtonView.cancelHoverAnimation() - } - maximizeButtonView.hoverDisabled = !enableMaximizeLongClick - maximizeWindowButton.onLongClickListener = if (enableMaximizeLongClick) { - onLongClickListener - } else { - // Disable long-click to open maximize menu when in immersive. - null - } - } - - private fun setCaptionVisibility(visible: Boolean) { - val v = if (visible) View.VISIBLE else View.GONE - captionView.visibility = v } override fun onHandleMenuOpened() {} override fun onHandleMenuClosed() {} + fun setAnimatingTaskResize(animatingTaskResize: Boolean) { + // If animating a task resize, cancel any running hover animations + if (animatingTaskResize) { + maximizeButtonView.cancelHoverAnimation() + } + maximizeButtonView.hoverDisabled = animatingTaskResize + } + fun onMaximizeWindowHoverExit() { maximizeButtonView.cancelHoverAnimation() } @@ -648,52 +247,6 @@ class AppHeaderViewHolder( maximizeButtonView.startHoverAnimation() } - fun runOnAppChipGlobalLayout(runnable: () -> Unit) { - // Wait for app chip to be inflated before notifying repository. - openMenuButton.viewTreeObserver.addOnGlobalLayoutListener(object : - OnGlobalLayoutListener { - override fun onGlobalLayout() { - runnable() - openMenuButton.viewTreeObserver.removeOnGlobalLayoutListener(this) - } - }) - } - - fun getAppChipLocationInWindow(): Rect { - val appChipBoundsInWindow = IntArray(2) - openMenuButton.getLocationInWindow(appChipBoundsInWindow) - - return Rect( - /* left = */ appChipBoundsInWindow[0], - /* top = */ appChipBoundsInWindow[1], - /* right = */ appChipBoundsInWindow[0] + openMenuButton.width, - /* bottom = */ appChipBoundsInWindow[1] + openMenuButton.height - ) - } - - fun requestAccessibilityFocus() { - maximizeWindowButton.post { - maximizeWindowButton.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED) - } - } - - @DrawableRes - private fun getMaximizeButtonIcon( - isTaskMaximized: Boolean, - inFullImmersiveState: Boolean - ): Int = when { - shouldShowExitFullImmersiveOrMaximizeIcon(isTaskMaximized, inFullImmersiveState) -> { - R.drawable.decor_desktop_mode_immersive_or_maximize_exit_button_dark - } - else -> R.drawable.decor_desktop_mode_maximize_button_dark - } - - private fun shouldShowExitFullImmersiveOrMaximizeIcon( - isTaskMaximized: Boolean, - inFullImmersiveState: Boolean - ): Boolean = (DesktopModeFlags.ENABLE_FULLY_IMMERSIVE_IN_DESKTOP.isTrue && inFullImmersiveState) - || isTaskMaximized - private fun getHeaderStyle(header: Header): HeaderStyle { return HeaderStyle( background = getHeaderBackground(header), @@ -787,7 +340,7 @@ class AppHeaderViewHolder( } } - private fun fillHeaderInfo(taskInfo: RunningTaskInfo, hasGlobalFocus: Boolean): Header { + private fun fillHeaderInfo(taskInfo: RunningTaskInfo): Header { return Header( type = if (taskInfo.isTransparentCaptionBarAppearance) { Header.Type.CUSTOM @@ -795,13 +348,60 @@ class AppHeaderViewHolder( Header.Type.DEFAULT }, appTheme = decorThemeUtil.getAppTheme(taskInfo), - isFocused = hasGlobalFocus, + isFocused = taskInfo.isFocused, isAppearanceCaptionLight = taskInfo.isLightCaptionBarAppearance ) } - private enum class SizeToggleDirection { - MAXIMIZE, RESTORE + @ColorInt + private fun replaceColorAlpha(@ColorInt color: Int, alpha: Int): Int { + return Color.argb( + alpha, + Color.red(color), + Color.green(color), + Color.blue(color) + ) + } + + private fun createRippleDrawable( + @ColorInt color: Int, + cornerRadius: Int, + drawableInsets: DrawableInsets, + ): RippleDrawable { + return RippleDrawable( + ColorStateList( + arrayOf( + intArrayOf(android.R.attr.state_hovered), + intArrayOf(android.R.attr.state_pressed), + intArrayOf(), + ), + intArrayOf( + replaceColorAlpha(color, OPACITY_11), + replaceColorAlpha(color, OPACITY_15), + Color.TRANSPARENT + ) + ), + null /* content */, + LayerDrawable(arrayOf( + ShapeDrawable().apply { + shape = RoundRectShape( + FloatArray(8) { cornerRadius.toFloat() }, + null /* inset */, + null /* innerRadii */ + ) + paint.color = Color.WHITE + } + )).apply { + require(numberOfLayers == 1) { "Must only contain one layer" } + setLayerInset(0 /* index */, + drawableInsets.l, drawableInsets.t, drawableInsets.r, drawableInsets.b) + } + ) + } + + private data class DrawableInsets(val l: Int, val t: Int, val r: Int, val b: Int) { + constructor(vertical: Int = 0, horizontal: Int = 0) : + this(horizontal, vertical, horizontal, vertical) } private data class Header( @@ -829,19 +429,19 @@ class AppHeaderViewHolder( } @ColorInt - private fun getCaptionBackgroundColor(taskInfo: RunningTaskInfo, hasGlobalFocus: Boolean): Int { + private fun getCaptionBackgroundColor(taskInfo: RunningTaskInfo): Int { if (taskInfo.isTransparentCaptionBarAppearance) { return Color.TRANSPARENT } val materialColorAttr: Int = if (isDarkMode()) { - if (!hasGlobalFocus) { + if (!taskInfo.isFocused) { materialColorSurfaceContainerHigh } else { materialColorSurfaceDim } } else { - if (!hasGlobalFocus) { + if (!taskInfo.isFocused) { materialColorSurfaceContainerLow } else { materialColorSecondaryContainer @@ -854,32 +454,34 @@ class AppHeaderViewHolder( } @ColorInt - private fun getAppNameAndButtonColor(taskInfo: RunningTaskInfo, hasGlobalFocus: Boolean): Int { - val materialColor = context.getColor(when { + private fun getAppNameAndButtonColor(taskInfo: RunningTaskInfo): Int { + val materialColorAttr = when { taskInfo.isTransparentCaptionBarAppearance && taskInfo.isLightCaptionBarAppearance -> materialColorOnSecondaryContainer taskInfo.isTransparentCaptionBarAppearance && !taskInfo.isLightCaptionBarAppearance -> materialColorOnSurface isDarkMode() -> materialColorOnSurface else -> materialColorOnSecondaryContainer - }) + } val appDetailsOpacity = when { - isDarkMode() && !hasGlobalFocus -> DARK_THEME_UNFOCUSED_OPACITY - !isDarkMode() && !hasGlobalFocus -> LIGHT_THEME_UNFOCUSED_OPACITY + isDarkMode() && !taskInfo.isFocused -> DARK_THEME_UNFOCUSED_OPACITY + !isDarkMode() && !taskInfo.isFocused -> LIGHT_THEME_UNFOCUSED_OPACITY else -> FOCUSED_OPACITY } - - - return if (appDetailsOpacity == FOCUSED_OPACITY) { - materialColor - } else { - Color.argb( - appDetailsOpacity, - Color.red(materialColor), - Color.green(materialColor), - Color.blue(materialColor) - ) + context.withStyledAttributes(null, intArrayOf(materialColorAttr), 0, 0) { + val color = getColor(0, 0) + return if (appDetailsOpacity == FOCUSED_OPACITY) { + color + } else { + Color.argb( + appDetailsOpacity, + Color.red(color), + Color.green(color), + Color.blue(color) + ) + } } + return 0 } private fun isDarkMode(): Boolean { @@ -888,15 +490,6 @@ class AppHeaderViewHolder( Configuration.UI_MODE_NIGHT_YES } - override fun setTaskFocusState(taskFocusState: Boolean) { - (rootView as WindowDecorLinearLayout).setTaskFocusState(taskFocusState) - } - - override fun close() { - // Should not fire long press events after closing the window decoration. - maximizeWindowButton.cancelLongPress() - } - companion object { private const val TAG = "DesktopModeAppControlsWindowDecorationViewHolder" @@ -904,28 +497,4 @@ class AppHeaderViewHolder( private const val LIGHT_THEME_UNFOCUSED_OPACITY = 166 // 65% private const val FOCUSED_OPACITY = 255 } - - class Factory { - fun create( - rootView: View?, - context: Context, - windowDecorationActions: WindowDecorationActions, - onCaptionTouchListener: View.OnTouchListener, - onCaptionButtonClickListener: View.OnClickListener, - onLongClickListener: OnLongClickListener, - onCaptionGenericMotionListener: View.OnGenericMotionListener, - onMaximizeHoverAnimationFinishedListener: () -> Unit, - desktopModeUiEventLogger: DesktopModeUiEventLogger - ): AppHeaderViewHolder = AppHeaderViewHolder( - rootView, - context, - windowDecorationActions, - onCaptionTouchListener, - onCaptionButtonClickListener, - onLongClickListener, - onCaptionGenericMotionListener, - onMaximizeHoverAnimationFinishedListener, - desktopModeUiEventLogger, - ) - } } diff --git a/wmshell/src/com/android/wm/shell/windowdecor/viewholder/WindowDecorationViewHolder.kt b/wmshell/src/com/android/wm/shell/windowdecor/viewholder/WindowDecorationViewHolder.kt index 601bb51678..5ae8d252a9 100644 --- a/wmshell/src/com/android/wm/shell/windowdecor/viewholder/WindowDecorationViewHolder.kt +++ b/wmshell/src/com/android/wm/shell/windowdecor/viewholder/WindowDecorationViewHolder.kt @@ -16,45 +16,25 @@ package com.android.wm.shell.windowdecor.viewholder import android.app.ActivityManager.RunningTaskInfo +import android.content.Context import android.view.View -import com.android.wm.shell.windowdecor.viewholder.WindowDecorationViewHolder.Data /** * Encapsulates the root [View] of a window decoration and its children to facilitate looking up * children (via findViewById) and updating to the latest data from [RunningTaskInfo]. */ -abstract class WindowDecorationViewHolder<T : Data> : AutoCloseable { - /** The root view of the window decoration. */ - abstract val rootView: View +internal abstract class WindowDecorationViewHolder(rootView: View) { + val context: Context = rootView.context /** * A signal to the view holder that new data is available and that the views should be updated to * reflect it. */ - abstract fun bindData(data: T) + abstract fun bindData(taskInfo: RunningTaskInfo) /** Callback when the handle menu is opened. */ abstract fun onHandleMenuOpened() /** Callback when the handle menu is closed. */ abstract fun onHandleMenuClosed() - - /** Callback when the window decoration is destroyed. */ - abstract override fun close() - - /** Data clas that contains the information needed to update the view holder. */ - abstract class Data - - /** Sets task focused state. */ - abstract fun setTaskFocusState(taskFocusState: Boolean) - - /** Sets the view's top padding. */ - fun setTopPadding(topPadding: Int) { - rootView.setPadding( - rootView.paddingLeft, - topPadding, - rootView.paddingRight, - rootView.paddingBottom - ) - } } diff --git a/wmshell/tests/OWNERS b/wmshell/tests/OWNERS index 0c18bef982..b8a19ad353 100644 --- a/wmshell/tests/OWNERS +++ b/wmshell/tests/OWNERS @@ -1,4 +1,4 @@ -# Bug component: 928594 +# Bug component: 1157642 # includes OWNERS from parent directories natanieljr@google.com pablogamito@google.com @@ -6,18 +6,12 @@ pablogamito@google.com lbill@google.com madym@google.com hwwang@google.com -gabiyev@google.com chenghsiuchang@google.com atsjenk@google.com jorgegil@google.com -vaniadesmonda@google.com +nmusgrave@google.com pbdr@google.com +tkachenkoi@google.com mpodolian@google.com jeremysim@google.com peanutbutter@google.com -pragyabajoria@google.com -uysalorhan@google.com -gsennton@google.com -mattsziklay@google.com -mdehaini@google.com -toshikikikuchi@google.com diff --git a/wmshell/tests/flicker/Android.bp b/wmshell/tests/flicker/Android.bp index 98b0bd0b58..4abaf5bd4a 100644 --- a/wmshell/tests/flicker/Android.bp +++ b/wmshell/tests/flicker/Android.bp @@ -30,6 +30,7 @@ filegroup { java_library { name: "wm-shell-flicker-utils", + platform_apis: true, optimize: { enabled: false, }, @@ -38,15 +39,15 @@ java_library { ], static_libs: [ "androidx.test.ext.junit", - "com_android_wm_shell_flags_lib", + "flickertestapplib", "flickerlib", "flickerlib-helpers", - "flickertestapplib", - "launcher-aosp-tapl", - "launcher-helper-lib", "platform-test-annotations", "wm-flicker-common-app-helpers", "wm-flicker-common-assertions", + "launcher-helper-lib", + "launcher-aosp-tapl", + "com_android_wm_shell_flags_lib", ], } @@ -58,20 +59,19 @@ java_defaults { enabled: false, }, test_suites: ["device-tests"], - libs: ["android.test.runner.stubs.system"], + libs: ["android.test.runner"], static_libs: [ + "wm-shell-flicker-utils", "androidx.test.ext.junit", + "flickertestapplib", "flickerlib", "flickerlib-helpers", "flickerlib-trace_processor_shell", - "flickertestapplib", - "launcher-aosp-tapl", - "launcher-helper-lib", "platform-test-annotations", - "platform-test-rules", "wm-flicker-common-app-helpers", "wm-flicker-common-assertions", - "wm-shell-flicker-utils", + "launcher-helper-lib", + "launcher-aosp-tapl", ], data: [ ":FlickerTestApp", diff --git a/wmshell/tests/flicker/appcompat/Android.bp b/wmshell/tests/flicker/appcompat/Android.bp index b016c9f941..e151ab2c58 100644 --- a/wmshell/tests/flicker/appcompat/Android.bp +++ b/wmshell/tests/flicker/appcompat/Android.bp @@ -15,7 +15,6 @@ // package { - default_team: "trendy_team_lse_app_compat", // See: http://go/android-license-faq // A large-scale-change added 'default_applicable_licenses' to import // all of the 'license_kinds' from "frameworks_base_license" @@ -24,76 +23,21 @@ package { default_applicable_licenses: ["frameworks_base_license"], } +filegroup { + name: "WMShellFlickerTestsAppCompat-src", + srcs: [ + "src/**/*.kt", + ], +} + android_test { - name: "WMShellFlickerTestsAppCompat", + name: "WMShellFlickerTestsOther", defaults: ["WMShellFlickerTestsDefault"], manifest: "AndroidManifest.xml", package_name: "com.android.wm.shell.flicker", instrumentation_target_package: "com.android.wm.shell.flicker", test_config_template: "AndroidTestTemplate.xml", - srcs: ["src/**/*.kt"], + srcs: [":WMShellFlickerTestsAppCompat-src"], static_libs: ["WMShellFlickerTestsBase"], data: ["trace_config/*"], } - -//////////////////////////////////////////////////////////////////////////////// -// Begin breakdowns for WMShellFlickerTestsAppCompat module - -test_module_config { - name: "WMShellFlickerTestsAppCompat-CatchAll", - base: "WMShellFlickerTestsAppCompat", - exclude_filters: [ - "com.android.wm.shell.flicker.appcompat.OpenAppInSizeCompatModeTest", - "com.android.wm.shell.flicker.appcompat.OpenTransparentActivityTest", - "com.android.wm.shell.flicker.appcompat.QuickSwitchLauncherToLetterboxAppTest", - "com.android.wm.shell.flicker.appcompat.RepositionFixedPortraitAppTest", - "com.android.wm.shell.flicker.appcompat.RestartAppInSizeCompatModeTest", - "com.android.wm.shell.flicker.appcompat.RotateImmersiveAppInFullscreenTest", - ], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsAppCompat-OpenAppInSizeCompatModeTest", - base: "WMShellFlickerTestsAppCompat", - include_filters: ["com.android.wm.shell.flicker.appcompat.OpenAppInSizeCompatModeTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsAppCompat-OpenTransparentActivityTest", - base: "WMShellFlickerTestsAppCompat", - include_filters: ["com.android.wm.shell.flicker.appcompat.OpenTransparentActivityTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsAppCompat-QuickSwitchLauncherToLetterboxAppTest", - base: "WMShellFlickerTestsAppCompat", - include_filters: ["com.android.wm.shell.flicker.appcompat.QuickSwitchLauncherToLetterboxAppTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsAppCompat-RepositionFixedPortraitAppTest", - base: "WMShellFlickerTestsAppCompat", - include_filters: ["com.android.wm.shell.flicker.appcompat.RepositionFixedPortraitAppTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsAppCompat-RestartAppInSizeCompatModeTest", - base: "WMShellFlickerTestsAppCompat", - include_filters: ["com.android.wm.shell.flicker.appcompat.RestartAppInSizeCompatModeTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsAppCompat-RotateImmersiveAppInFullscreenTest", - base: "WMShellFlickerTestsAppCompat", - include_filters: ["com.android.wm.shell.flicker.appcompat.RotateImmersiveAppInFullscreenTest"], - test_suites: ["device-tests"], -} - -// End breakdowns for FlickerTestsRotation module -//////////////////////////////////////////////////////////////////////////////// diff --git a/wmshell/tests/flicker/appcompat/AndroidTestTemplate.xml b/wmshell/tests/flicker/appcompat/AndroidTestTemplate.xml index a4ecac9dfe..f69a90cc79 100644 --- a/wmshell/tests/flicker/appcompat/AndroidTestTemplate.xml +++ b/wmshell/tests/flicker/appcompat/AndroidTestTemplate.xml @@ -24,10 +24,6 @@ <option name="run-command" value="setprop debug.wm.disable_deprecated_target_sdk_dialog 1"/> <!-- keeps the screen on during tests --> <option name="screen-always-on" value="on"/> - <!-- Turns off Wi-fi --> - <option name="wifi" value="off"/> - <!-- Turns off Bluetooth --> - <option name="bluetooth" value="off"/> <!-- prevents the phone from restarting --> <option name="force-skip-system-props" value="true"/> <!-- set WM tracing verbose level to all --> @@ -48,10 +44,6 @@ <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer"> <option name="test-user-token" value="%TEST_USER%"/> <option name="run-command" value="rm -rf /data/user/%TEST_USER%/files/*"/> - <!-- Disable AOD --> - <option name="run-command" value="settings put secure doze_always_on 0"/> - <!-- Disable explore hub mode --> - <option name="run-command" value="settings put secure glanceable_hub_enabled 0"/> <option name="run-command" value="settings put secure show_ime_with_hard_keyboard 1"/> <option name="run-command" value="settings put system show_touches 1"/> <option name="run-command" value="settings put system pointer_location 1"/> diff --git a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/OpenAppInSizeCompatModeTest.kt b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/OpenAppInSizeCompatModeTest.kt index 27303c1889..16c2d47f9d 100644 --- a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/OpenAppInSizeCompatModeTest.kt +++ b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/OpenAppInSizeCompatModeTest.kt @@ -31,7 +31,7 @@ import org.junit.runners.Parameterized /** * Test launching app in size compat mode. * - * To run this test: `atest WMShellFlickerTestsAppCompat:OpenAppInSizeCompatModeTest` + * To run this test: `atest WMShellFlickerTestsOther:OpenAppInSizeCompatModeTest` * * Actions: * ``` diff --git a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/OpenTransparentActivityTest.kt b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/OpenTransparentActivityTest.kt index e176f47d40..d85b7718aa 100644 --- a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/OpenTransparentActivityTest.kt +++ b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/OpenTransparentActivityTest.kt @@ -17,6 +17,7 @@ package com.android.wm.shell.flicker.appcompat import android.platform.test.annotations.Postsubmit +import android.tools.Rotation import android.tools.flicker.assertions.FlickerTest import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder @@ -31,7 +32,7 @@ import org.junit.runners.Parameterized /** * Test launching app in size compat mode. * - * To run this test: `atest WMShellFlickerTestsAppCompat:OpenTransparentActivityTest` + * To run this test: `atest WMShellFlickerTestsOther:OpenTransparentActivityTest` * * Actions: * ``` @@ -108,7 +109,9 @@ class OpenTransparentActivityTest(flicker: LegacyFlickerTest) : TransparentBaseA @Parameterized.Parameters(name = "{0}") @JvmStatic fun getParams(): Collection<FlickerTest> { - return LegacyFlickerTestFactory.nonRotationTests() + return LegacyFlickerTestFactory.nonRotationTests( + supportedRotations = listOf(Rotation.ROTATION_90) + ) } } } diff --git a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/QuickSwitchLauncherToLetterboxAppTest.kt b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/QuickSwitchLauncherToLetterboxAppTest.kt index 9b8c949a17..164534c14d 100644 --- a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/QuickSwitchLauncherToLetterboxAppTest.kt +++ b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/QuickSwitchLauncherToLetterboxAppTest.kt @@ -20,6 +20,7 @@ import android.graphics.Rect import android.platform.test.annotations.Postsubmit import android.platform.test.annotations.RequiresDevice import android.tools.NavBar +import android.tools.Rotation import android.tools.flicker.assertions.FlickerTest import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder @@ -35,7 +36,7 @@ import org.junit.runners.Parameterized /** * Test quick switching to letterboxed app from launcher * - * To run this test: `atest WMShellFlickerTestsAppCompat:QuickSwitchLauncherToLetterboxAppTest` + * To run this test: `atest WMShellFlickerTestsOther:QuickSwitchLauncherToLetterboxAppTest` * * Actions: * ``` @@ -265,7 +266,8 @@ class QuickSwitchLauncherToLetterboxAppTest(flicker: LegacyFlickerTest) : BaseAp @JvmStatic fun getParams(): Collection<FlickerTest> { return LegacyFlickerTestFactory.nonRotationTests( - supportedNavigationModes = listOf(NavBar.MODE_GESTURAL) + supportedNavigationModes = listOf(NavBar.MODE_GESTURAL), + supportedRotations = listOf(Rotation.ROTATION_90) ) } } diff --git a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RepositionFixedPortraitAppTest.kt b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RepositionFixedPortraitAppTest.kt index 43ee1866d0..034d54b185 100644 --- a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RepositionFixedPortraitAppTest.kt +++ b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RepositionFixedPortraitAppTest.kt @@ -17,6 +17,7 @@ package com.android.wm.shell.flicker.appcompat import android.platform.test.annotations.Postsubmit +import android.tools.Rotation import android.tools.flicker.assertions.FlickerTest import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder @@ -31,7 +32,7 @@ import org.junit.runners.Parameterized /** * Test launching a fixed portrait letterboxed app in landscape and repositioning to the right. * - * To run this test: `atest WMShellFlickerTestsAppCompat:RepositionFixedPortraitAppTest` + * To run this test: `atest WMShellFlickerTestsOther:RepositionFixedPortraitAppTest` * * Actions: * @@ -90,7 +91,9 @@ class RepositionFixedPortraitAppTest(flicker: LegacyFlickerTest) : BaseAppCompat @Parameterized.Parameters(name = "{0}") @JvmStatic fun getParams(): Collection<FlickerTest> { - return LegacyFlickerTestFactory.nonRotationTests() + return LegacyFlickerTestFactory.nonRotationTests( + supportedRotations = listOf(Rotation.ROTATION_90) + ) } } } diff --git a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RestartAppInSizeCompatModeTest.kt b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RestartAppInSizeCompatModeTest.kt index 5459ef03e3..443fac19c7 100644 --- a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RestartAppInSizeCompatModeTest.kt +++ b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RestartAppInSizeCompatModeTest.kt @@ -31,7 +31,7 @@ import org.junit.runners.Parameterized /** * Test restarting app in size compat mode. * - * To run this test: `atest WMShellFlickerTestsAppCompat:RestartAppInSizeCompatModeTest` + * To run this test: `atest WMShellFlickerTestsOther:RestartAppInSizeCompatModeTest` * * Actions: * ``` diff --git a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RotateImmersiveAppInFullscreenTest.kt b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RotateImmersiveAppInFullscreenTest.kt index 5bb96401bc..22543aa9f7 100644 --- a/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RotateImmersiveAppInFullscreenTest.kt +++ b/wmshell/tests/flicker/appcompat/src/com/android/wm/shell/flicker/appcompat/RotateImmersiveAppInFullscreenTest.kt @@ -45,7 +45,7 @@ import org.junit.runners.Parameterized /** * Test rotating an immersive app in fullscreen. * - * To run this test: `atest WMShellFlickerTestsAppCompat:RotateImmersiveAppInFullscreenTest` + * To run this test: `atest WMShellFlickerTestsOther:RotateImmersiveAppInFullscreenTest` * * Actions: * ``` diff --git a/wmshell/tests/flicker/bubble/Android.bp b/wmshell/tests/flicker/bubble/Android.bp index 2ff7ab231c..f0b4f1faad 100644 --- a/wmshell/tests/flicker/bubble/Android.bp +++ b/wmshell/tests/flicker/bubble/Android.bp @@ -15,7 +15,6 @@ // package { - default_team: "trendy_team_multitasking_windowing", // See: http://go/android-license-faq // A large-scale-change added 'default_applicable_licenses' to import // all of the 'license_kinds' from "frameworks_base_license" @@ -35,57 +34,3 @@ android_test { static_libs: ["WMShellFlickerTestsBase"], data: ["trace_config/*"], } - -//////////////////////////////////////////////////////////////////////////////// -// Begin breakdowns for WMShellFlickerTestsBubbles module - -test_module_config { - name: "WMShellFlickerTestsBubbles-CatchAll", - base: "WMShellFlickerTestsBubbles", - exclude_filters: [ - "com.android.wm.shell.flicker.bubble.ChangeActiveActivityFromBubbleTest", - "com.android.wm.shell.flicker.bubble.DragToDismissBubbleScreenTest", - "com.android.wm.shell.flicker.bubble.OpenActivityFromBubbleOnLocksreenTest", - "com.android.wm.shell.flicker.bubble.OpenActivityFromBubbleTest", - "com.android.wm.shell.flicker.bubble.SendBubbleNotificationTest", - ], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsBubbles-ChangeActiveActivityFromBubbleTest", - base: "WMShellFlickerTestsBubbles", - include_filters: ["com.android.wm.shell.flicker.bubble.ChangeActiveActivityFromBubbleTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsBubbles-DragToDismissBubbleScreenTest", - base: "WMShellFlickerTestsBubbles", - include_filters: ["com.android.wm.shell.flicker.bubble.DragToDismissBubbleScreenTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsBubbles-OpenActivityFromBubbleOnLocksreenTest", - base: "WMShellFlickerTestsBubbles", - include_filters: ["com.android.wm.shell.flicker.bubble.OpenActivityFromBubbleOnLocksreenTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsBubbles-OpenActivityFromBubbleTest", - base: "WMShellFlickerTestsBubbles", - include_filters: ["com.android.wm.shell.flicker.bubble.OpenActivityFromBubbleTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsBubbles-SendBubbleNotificationTest", - base: "WMShellFlickerTestsBubbles", - include_filters: ["com.android.wm.shell.flicker.bubble.SendBubbleNotificationTest"], - test_suites: ["device-tests"], -} - -// End breakdowns for WMShellFlickerTestsBubbles module -//////////////////////////////////////////////////////////////////////////////// diff --git a/wmshell/tests/flicker/bubble/AndroidTestTemplate.xml b/wmshell/tests/flicker/bubble/AndroidTestTemplate.xml index 75ffdc69c7..b76d065657 100644 --- a/wmshell/tests/flicker/bubble/AndroidTestTemplate.xml +++ b/wmshell/tests/flicker/bubble/AndroidTestTemplate.xml @@ -24,10 +24,6 @@ <option name="run-command" value="setprop debug.wm.disable_deprecated_target_sdk_dialog 1"/> <!-- keeps the screen on during tests --> <option name="screen-always-on" value="on"/> - <!-- Turns off Wi-fi --> - <option name="wifi" value="off"/> - <!-- Turns off Bluetooth --> - <option name="bluetooth" value="off"/> <!-- prevents the phone from restarting --> <option name="force-skip-system-props" value="true"/> <!-- set WM tracing verbose level to all --> @@ -48,19 +44,13 @@ <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer"> <option name="test-user-token" value="%TEST_USER%"/> <option name="run-command" value="rm -rf /data/user/%TEST_USER%/files/*"/> - <!-- Disable AOD --> - <option name="run-command" value="settings put secure doze_always_on 0"/> - <!-- Disable explore hub mode --> - <option name="run-command" value="settings put secure glanceable_hub_enabled 0"/> <option name="run-command" value="settings put secure show_ime_with_hard_keyboard 1"/> <option name="run-command" value="settings put system show_touches 1"/> <option name="run-command" value="settings put system pointer_location 1"/> - <option name="run-command" value="settings put secure glanceable_hub_enabled 0"/> <option name="teardown-command" value="settings delete secure show_ime_with_hard_keyboard"/> <option name="teardown-command" value="settings delete system show_touches"/> <option name="teardown-command" value="settings delete system pointer_location"/> - <option name="teardown-command" value="settings delete secure glanceable_hub_enabled"/> <option name="teardown-command" value="cmd overlay enable com.android.internal.systemui.navbar.gestural"/> </target_preparer> diff --git a/wmshell/tests/flicker/bubble/src/com/android/wm/shell/flicker/bubble/OpenActivityFromBubbleOnLocksreenTest.kt b/wmshell/tests/flicker/bubble/src/com/android/wm/shell/flicker/bubble/OpenActivityFromBubbleOnLocksreenTest.kt index d7ea9f3a8f..2ee53f4fce 100644 --- a/wmshell/tests/flicker/bubble/src/com/android/wm/shell/flicker/bubble/OpenActivityFromBubbleOnLocksreenTest.kt +++ b/wmshell/tests/flicker/bubble/src/com/android/wm/shell/flicker/bubble/OpenActivityFromBubbleOnLocksreenTest.kt @@ -100,14 +100,14 @@ class OpenActivityFromBubbleOnLocksreenTest(flicker: LegacyFlickerTest) : @Postsubmit @Test fun navBarLayerIsVisibleAtEnd() { - Assume.assumeFalse(usesTaskbar) + Assume.assumeFalse(flicker.scenario.isTablet) flicker.navBarLayerIsVisibleAtEnd() } @Postsubmit @Test fun navBarLayerPositionAtEnd() { - Assume.assumeFalse(usesTaskbar) + Assume.assumeFalse(flicker.scenario.isTablet) flicker.navBarLayerPositionAtEnd() } @@ -154,7 +154,7 @@ class OpenActivityFromBubbleOnLocksreenTest(flicker: LegacyFlickerTest) : @Postsubmit @Test fun taskBarLayerIsVisibleAtEnd() { - Assume.assumeTrue(usesTaskbar) + Assume.assumeTrue(flicker.scenario.isTablet) flicker.assertLayersEnd { this.isVisible(ComponentNameMatcher.TASK_BAR) } } } diff --git a/wmshell/tests/flicker/pip/Android.bp b/wmshell/tests/flicker/pip/Android.bp index b8ec1d76d5..faeb342a44 100644 --- a/wmshell/tests/flicker/pip/Android.bp +++ b/wmshell/tests/flicker/pip/Android.bp @@ -15,7 +15,6 @@ // package { - default_team: "trendy_team_multitasking_windowing", // See: http://go/android-license-faq // A large-scale-change added 'default_applicable_licenses' to import // all of the 'license_kinds' from "frameworks_base_license" @@ -25,8 +24,27 @@ package { } filegroup { - name: "WMShellFlickerTestsPipApps-src", - srcs: ["src/**/apps/*.kt"], + name: "WMShellFlickerTestsPip1-src", + srcs: [ + "src/**/A*.kt", + "src/**/B*.kt", + "src/**/C*.kt", + "src/**/D*.kt", + "src/**/F*.kt", + "src/**/S*.kt", + ], +} + +filegroup { + name: "WMShellFlickerTestsPip2-src", + srcs: [ + "src/**/E*.kt", + ], +} + +filegroup { + name: "WMShellFlickerTestsPip3-src", + srcs: ["src/**/*.kt"], } filegroup { @@ -34,15 +52,57 @@ filegroup { srcs: ["src/**/common/*.kt"], } +filegroup { + name: "WMShellFlickerTestsPipApps-src", + srcs: ["src/**/apps/*.kt"], +} + android_test { - name: "WMShellFlickerTestsPip", + name: "WMShellFlickerTestsPip1", defaults: ["WMShellFlickerTestsDefault"], manifest: "AndroidManifest.xml", package_name: "com.android.wm.shell.flicker.pip", instrumentation_target_package: "com.android.wm.shell.flicker.pip", test_config_template: "AndroidTestTemplate.xml", - srcs: ["src/**/*.kt"], - exclude_srcs: [":WMShellFlickerTestsPipApps-src"], + srcs: [ + ":WMShellFlickerTestsPip1-src", + ":WMShellFlickerTestsPipCommon-src", + ], + static_libs: ["WMShellFlickerTestsBase"], + data: ["trace_config/*"], +} + +android_test { + name: "WMShellFlickerTestsPip2", + defaults: ["WMShellFlickerTestsDefault"], + manifest: "AndroidManifest.xml", + package_name: "com.android.wm.shell.flicker.pip", + instrumentation_target_package: "com.android.wm.shell.flicker.pip", + test_config_template: "AndroidTestTemplate.xml", + srcs: [ + ":WMShellFlickerTestsPip2-src", + ":WMShellFlickerTestsPipCommon-src", + ], + static_libs: ["WMShellFlickerTestsBase"], + data: ["trace_config/*"], +} + +android_test { + name: "WMShellFlickerTestsPip3", + defaults: ["WMShellFlickerTestsDefault"], + manifest: "AndroidManifest.xml", + package_name: "com.android.wm.shell.flicker.pip", + instrumentation_target_package: "com.android.wm.shell.flicker.pip", + test_config_template: "AndroidTestTemplate.xml", + srcs: [ + ":WMShellFlickerTestsPip3-src", + ":WMShellFlickerTestsPipCommon-src", + ], + exclude_srcs: [ + ":WMShellFlickerTestsPip1-src", + ":WMShellFlickerTestsPip2-src", + ":WMShellFlickerTestsPipApps-src", + ], static_libs: ["WMShellFlickerTestsBase"], data: ["trace_config/*"], } @@ -75,8 +135,8 @@ android_test { ], static_libs: ["WMShellFlickerTestsBase"], test_suites: [ - "csuite", "device-tests", + "csuite", ], data: ["trace_config/*"], } @@ -86,259 +146,3 @@ csuite_test { test_plan_include: "csuitePlan.xml", test_config_template: "csuiteDefaultTemplate.xml", } - -//////////////////////////////////////////////////////////////////////////////// -// Begin breakdowns for WMShellFlickerTestsPip module - -test_module_config { - name: "WMShellFlickerTestsPip-CatchAll", - base: "WMShellFlickerTestsPip", - exclude_filters: [ - "com.android.wm.shell.flicker.pip.AutoEnterPipOnGoToHomeTest", - "com.android.wm.shell.flicker.pip.AutoEnterPipWithSourceRectHintTest", - "com.android.wm.shell.flicker.pip.ClosePipBySwipingDownTest", - "com.android.wm.shell.flicker.pip.ClosePipWithDismissButtonTest", - "com.android.wm.shell.flicker.pip.EnterPipOnUserLeaveHintTest", - "com.android.wm.shell.flicker.pip.EnterPipViaAppUiButtonTest", - "com.android.wm.shell.flicker.pip.ExitPipToAppViaExpandButtonTest", - "com.android.wm.shell.flicker.pip.ExitPipToAppViaIntentTest", - "com.android.wm.shell.flicker.pip.ExpandPipOnDoubleClickTest", - "com.android.wm.shell.flicker.pip.ExpandPipOnPinchOpenTest", - "com.android.wm.shell.flicker.pip.FromSplitScreenAutoEnterPipOnGoToHomeTest", - "com.android.wm.shell.flicker.pip.FromSplitScreenEnterPipOnUserLeaveHintTest", - "com.android.wm.shell.flicker.pip.MovePipDownOnShelfHeightChange", - "com.android.wm.shell.flicker.pip.MovePipOnImeVisibilityChangeTest", - "com.android.wm.shell.flicker.pip.MovePipUpOnShelfHeightChangeTest", - "com.android.wm.shell.flicker.pip.PipAspectRatioChangeTest", - "com.android.wm.shell.flicker.pip.PipDragTest", - "com.android.wm.shell.flicker.pip.PipDragThenSnapTest", - "com.android.wm.shell.flicker.pip.PipPinchInTest", - "com.android.wm.shell.flicker.pip.SetRequestedOrientationWhilePinned", - "com.android.wm.shell.flicker.pip.ShowPipAndRotateDisplay", - "com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfAutoEnterPipOnGoToHomeTest", - "com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfEnterPipOnUserLeaveHintTest", - "com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfEnterPipToOtherOrientation", - "com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfEnterPipViaAppUiButtonTest", - "com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfExitPipToAppViaExpandButtonTest", - "com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfExitPipToAppViaIntentTest", - "com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfSetRequestedOrientationWhilePinned", - "com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfFromSplitScreenAutoEnterPipOnGoToHomeTest", - "com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfFromSplitScreenEnterPipOnUserLeaveHintTest", - ], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-AutoEnterPipOnGoToHomeTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.AutoEnterPipOnGoToHomeTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-AutoEnterPipWithSourceRectHintTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.AutoEnterPipWithSourceRectHintTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-ClosePipBySwipingDownTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.ClosePipBySwipingDownTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-ClosePipWithDismissButtonTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.ClosePipWithDismissButtonTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-EnterPipOnUserLeaveHintTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.EnterPipOnUserLeaveHintTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-EnterPipViaAppUiButtonTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.EnterPipViaAppUiButtonTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-ExitPipToAppViaExpandButtonTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.ExitPipToAppViaExpandButtonTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-ExitPipToAppViaIntentTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.ExitPipToAppViaIntentTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-ExpandPipOnDoubleClickTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.ExpandPipOnDoubleClickTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-ExpandPipOnPinchOpenTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.ExpandPipOnPinchOpenTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-FromSplitScreenAutoEnterPipOnGoToHomeTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.FromSplitScreenAutoEnterPipOnGoToHomeTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-FromSplitScreenEnterPipOnUserLeaveHintTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.FromSplitScreenEnterPipOnUserLeaveHintTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-MovePipDownOnShelfHeightChange", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.MovePipDownOnShelfHeightChange"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-MovePipOnImeVisibilityChangeTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.MovePipOnImeVisibilityChangeTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-MovePipUpOnShelfHeightChangeTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.MovePipUpOnShelfHeightChangeTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-PipAspectRatioChangeTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.PipAspectRatioChangeTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-PipDragTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.PipDragTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-PipDragThenSnapTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.PipDragThenSnapTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-PipPinchInTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.PipPinchInTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-SetRequestedOrientationWhilePinned", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.SetRequestedOrientationWhilePinned"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-ShowPipAndRotateDisplay", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.ShowPipAndRotateDisplay"], - test_suites: ["device-tests"], -} - -// Not-match Parent test cases - -test_module_config { - name: "WMShellFlickerTestsPip-BottomHalfExitPipToAppViaExpandButtonTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfExitPipToAppViaExpandButtonTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-BottomHalfExitPipToAppViaIntentTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfExitPipToAppViaIntentTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-BottomHalfAutoEnterPipOnGoToHomeTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfAutoEnterPipOnGoToHomeTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-BottomHalfEnterPipOnUserLeaveHintTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfEnterPipOnUserLeaveHintTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-BottomHalfEnterPipViaAppUiButtonTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfEnterPipViaAppUiButtonTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-BottomHalfEnterPipToOtherOrientation", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfEnterPipToOtherOrientation"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-BottomHalfSetRequestedOrientationWhilePinned", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfSetRequestedOrientationWhilePinned"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-BottomHalfFromSplitScreenAutoEnterPipOnGoToHomeTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfFromSplitScreenAutoEnterPipOnGoToHomeTest"], - test_suites: ["device-tests"], -} - -test_module_config { - name: "WMShellFlickerTestsPip-BottomHalfFromSplitScreenEnterPipOnUserLeaveHintTest", - base: "WMShellFlickerTestsPip", - include_filters: ["com.android.wm.shell.flicker.pip.nonmatchparent.BottomHalfFromSplitScreenEnterPipOnUserLeaveHintTest"], - test_suites: ["device-tests"], -} - -// End breakdowns for WMShellFlickerTestsPip module -//////////////////////////////////////////////////////////////////////////////// diff --git a/wmshell/tests/flicker/pip/AndroidTestTemplate.xml b/wmshell/tests/flicker/pip/AndroidTestTemplate.xml index 8003cbaada..041978c371 100644 --- a/wmshell/tests/flicker/pip/AndroidTestTemplate.xml +++ b/wmshell/tests/flicker/pip/AndroidTestTemplate.xml @@ -24,10 +24,6 @@ <option name="run-command" value="setprop debug.wm.disable_deprecated_target_sdk_dialog 1"/> <!-- keeps the screen on during tests --> <option name="screen-always-on" value="on"/> - <!-- Turns off Wi-fi --> - <option name="wifi" value="on"/> - <!-- Turns off Bluetooth --> - <option name="bluetooth" value="off"/> <!-- prevents the phone from restarting --> <option name="force-skip-system-props" value="true"/> <!-- set WM tracing verbose level to all --> @@ -48,10 +44,6 @@ <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer"> <option name="test-user-token" value="%TEST_USER%"/> <option name="run-command" value="rm -rf /data/user/%TEST_USER%/files/*"/> - <!-- Disable AOD --> - <option name="run-command" value="settings put secure doze_always_on 0"/> - <!-- Disable explore hub mode --> - <option name="run-command" value="settings put secure glanceable_hub_enabled 0"/> <option name="run-command" value="settings put secure show_ime_with_hard_keyboard 1"/> <option name="run-command" value="settings put system show_touches 1"/> <option name="run-command" value="settings put system pointer_location 1"/> @@ -111,11 +103,4 @@ <option name="collect-on-run-ended-only" value="true"/> <option name="clean-up" value="true"/> </metrics_collector> - <!-- Enable mocking GPS location by the test app --> - <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer"> - <option name="run-command" - value="appops set com.android.shell android:mock_location allow"/> - <option name="teardown-command" - value="appops set com.android.shell android:mock_location deny"/> - </target_preparer> </configuration> diff --git a/wmshell/tests/flicker/pip/csuiteDefaultTemplate.xml b/wmshell/tests/flicker/pip/csuiteDefaultTemplate.xml index 34e4e744da..bf040d2a95 100644 --- a/wmshell/tests/flicker/pip/csuiteDefaultTemplate.xml +++ b/wmshell/tests/flicker/pip/csuiteDefaultTemplate.xml @@ -24,10 +24,6 @@ <option name="run-command" value="setprop debug.wm.disable_deprecated_target_sdk_dialog 1"/> <!-- keeps the screen on during tests --> <option name="screen-always-on" value="on"/> - <!-- Turns off Wi-fi --> - <option name="wifi" value="on"/> - <!-- Turns off Bluetooth --> - <option name="bluetooth" value="on"/> <!-- prevents the phone from restarting --> <option name="force-skip-system-props" value="true"/> <!-- set WM tracing verbose level to all --> @@ -48,8 +44,6 @@ <target_preparer class="com.android.tradefed.targetprep.RunCommandTargetPreparer"> <option name="test-user-token" value="%TEST_USER%"/> <option name="run-command" value="rm -rf /data/user/%TEST_USER%/files/*"/> - <!-- Disable AOD --> - <option name="run-command" value="settings put secure doze_always_on 0"/> <option name="run-command" value="settings put secure show_ime_with_hard_keyboard 1"/> <option name="run-command" value="settings put system show_touches 1"/> <option name="run-command" value="settings put system pointer_location 1"/> diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/AutoEnterPipOnGoToHomeTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/AutoEnterPipOnGoToHomeTest.kt index 597674e5df..b85d7936ef 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/AutoEnterPipOnGoToHomeTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/AutoEnterPipOnGoToHomeTest.kt @@ -16,18 +16,13 @@ package com.android.wm.shell.flicker.pip -import android.platform.test.annotations.FlakyTest -import android.platform.test.annotations.Postsubmit import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresDevice -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest -import com.android.server.wm.flicker.helpers.PipAppHelper -import com.android.wm.shell.Flags +import androidx.test.filters.FlakyTest +import androidx.test.filters.RequiresDevice import com.android.wm.shell.flicker.pip.common.EnterPipTransition -import com.android.wm.shell.flicker.pip.common.widthNotSmallerThan import org.junit.Assume import org.junit.FixMethodOrder import org.junit.Test @@ -38,7 +33,7 @@ import org.junit.runners.Parameterized /** * Test entering pip from an app via auto-enter property when navigating to home. * - * To run this test: `atest WMShellFlickerTestsPip:AutoEnterPipOnGoToHomeTest` + * To run this test: `atest WMShellFlickerTestsPip1:AutoEnterPipOnGoToHomeTest` * * Actions: * ``` @@ -60,10 +55,7 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) open class AutoEnterPipOnGoToHomeTest(flicker: LegacyFlickerTest) : EnterPipTransition(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) - override val thisTransition: FlickerBuilder.() -> Unit = { transitions { tapl.goHome() } } override val defaultEnterPip: FlickerBuilder.() -> Unit = { @@ -73,10 +65,11 @@ open class AutoEnterPipOnGoToHomeTest(flicker: LegacyFlickerTest) : EnterPipTran } } - @Postsubmit + override val defaultTeardown: FlickerBuilder.() -> Unit = { teardown { pipApp.exit(wmHelper) } } + + @FlakyTest(bugId = 293133362) @Test override fun pipLayerReduces() { - Assume.assumeFalse(flicker.scenario.isGesturalNavigation) flicker.assertLayers { val pipLayerList = this.layers { pipApp.layerMatchesAnyOf(it) && it.isVisible } pipLayerList.zipWithNext { previous, current -> @@ -85,36 +78,10 @@ open class AutoEnterPipOnGoToHomeTest(flicker: LegacyFlickerTest) : EnterPipTran } } - /** Checks that [pipApp] window's width is first decreasing then increasing. */ - @Postsubmit - @Test - fun pipLayerWidthDecreasesThenIncreases() { - Assume.assumeTrue(flicker.scenario.isGesturalNavigation) - flicker.assertLayers { - val pipLayerList = this.layers { pipApp.layerMatchesAnyOf(it) && it.isVisible } - var previousLayer = pipLayerList[0] - var currentLayer = previousLayer - var i = 0 - invoke("layer area is decreasing") { - if (i < pipLayerList.size - 1) { - previousLayer = currentLayer - currentLayer = pipLayerList[++i] - previousLayer.widthNotSmallerThan(currentLayer) - } - }.then().invoke("layer are is increasing", true /* isOptional */) { - if (i < pipLayerList.size - 1) { - previousLayer = currentLayer - currentLayer = pipLayerList[++i] - currentLayer.widthNotSmallerThan(previousLayer) - } - } - } - } - /** Checks that [pipApp] window is animated towards default position in right bottom corner */ @FlakyTest(bugId = 255578530) @Test - open fun pipLayerMovesTowardsRightBottomCorner() { + fun pipLayerMovesTowardsRightBottomCorner() { // in gestural nav the swipe makes PiP first go upwards Assume.assumeFalse(flicker.scenario.isGesturalNavigation) flicker.assertLayers { diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/AutoEnterPipWithSourceRectHintTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/AutoEnterPipWithSourceRectHintTest.kt index 5698023240..d059211088 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/AutoEnterPipWithSourceRectHintTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/AutoEnterPipWithSourceRectHintTest.kt @@ -17,13 +17,10 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.traces.component.ComponentNameMatcher -import com.android.server.wm.flicker.helpers.PipAppHelper -import com.android.wm.shell.Flags import org.junit.FixMethodOrder import org.junit.Test import org.junit.runner.RunWith @@ -33,7 +30,7 @@ import org.junit.runners.Parameterized /** * Test auto entering pip using a source rect hint. * - * To run this test: `atest WMShellFlickerTestsPip:AutoEnterPipWithSourceRectHintTest` + * To run this test: `atest WMShellFlickerTestsPip1:AutoEnterPipWithSourceRectHintTest` * * Actions: * ``` @@ -55,11 +52,8 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class AutoEnterPipWithSourceRectHintTest(flicker: LegacyFlickerTest) : AutoEnterPipOnGoToHomeTest(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) - override val defaultEnterPip: FlickerBuilder.() -> Unit = { setup { pipApp.launchViaIntent(wmHelper) diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ClosePipBySwipingDownTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ClosePipBySwipingDownTest.kt index cc6e4b5a90..a5e0550d9c 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ClosePipBySwipingDownTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ClosePipBySwipingDownTest.kt @@ -17,12 +17,10 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.traces.component.ComponentNameMatcher -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.ClosePipTransition import org.junit.FixMethodOrder import org.junit.Test @@ -33,7 +31,7 @@ import org.junit.runners.Parameterized /** * Test closing a pip window by swiping it to the bottom-center of the screen * - * To run this test: `atest WMShellFlickerTestsPip:ClosePipBySwipingDownTest` + * To run this test: `atest WMShellFlickerTestsPip1:ClosePipBySwipingDownTest` * * Actions: * ``` @@ -54,7 +52,6 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class ClosePipBySwipingDownTest(flicker: LegacyFlickerTest) : ClosePipTransition(flicker) { override val thisTransition: FlickerBuilder.() -> Unit = { transitions { @@ -63,7 +60,7 @@ class ClosePipBySwipingDownTest(flicker: LegacyFlickerTest) : ClosePipTransition val pipCenterY = pipRegion.centerY() val displayCenterX = device.displayWidth / 2 val barComponent = - if (flicker.scenario.isTablet || Flags.enableTaskbarOnPhones()) { + if (flicker.scenario.isTablet) { ComponentNameMatcher.TASK_BAR } else { ComponentNameMatcher.NAV_BAR diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ClosePipWithDismissButtonTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ClosePipWithDismissButtonTest.kt index 880e4cd4e5..d177624378 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ClosePipWithDismissButtonTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ClosePipWithDismissButtonTest.kt @@ -17,12 +17,9 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest -import com.android.server.wm.flicker.helpers.PipAppHelper -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.ClosePipTransition import org.junit.FixMethodOrder import org.junit.Test @@ -33,7 +30,7 @@ import org.junit.runners.Parameterized /** * Test closing a pip window via the dismiss button * - * To run this test: `atest WMShellFlickerTestsPip:ClosePipWithDismissButtonTest` + * To run this test: `atest WMShellFlickerTestsPip1:ClosePipWithDismissButtonTest` * * Actions: * ``` @@ -55,10 +52,7 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class ClosePipWithDismissButtonTest(flicker: LegacyFlickerTest) : ClosePipTransition(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) - override val thisTransition: FlickerBuilder.() -> Unit = { transitions { pipApp.closePipWindow(wmHelper) } } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipOnUserLeaveHintTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipOnUserLeaveHintTest.kt index 38f37b4bc1..a86803d058 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipOnUserLeaveHintTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipOnUserLeaveHintTest.kt @@ -17,12 +17,9 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest -import com.android.server.wm.flicker.helpers.PipAppHelper -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.EnterPipTransition import org.junit.Assume import org.junit.FixMethodOrder @@ -34,7 +31,7 @@ import org.junit.runners.Parameterized /** * Test entering pip from an app via [onUserLeaveHint] and by navigating to home. * - * To run this test: `atest WMShellFlickerTestsPip:EnterPipOnUserLeaveHintTest` + * To run this test: `atest WMShellFlickerTestsPip2:EnterPipOnUserLeaveHintTest` * * Actions: * ``` @@ -46,9 +43,7 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class EnterPipOnUserLeaveHintTest(flicker: LegacyFlickerTest) : EnterPipTransition(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) override val thisTransition: FlickerBuilder.() -> Unit = { transitions { tapl.goHome() } } override val defaultEnterPip: FlickerBuilder.() -> Unit = { @@ -88,7 +83,6 @@ class EnterPipOnUserLeaveHintTest(flicker: LegacyFlickerTest) : EnterPipTransiti super.pipOverlayLayerAppearThenDisappear() } - // TODO(b/385086051): check if we can remove optional = true in the test. @Presubmit @Test fun pipAppWindowVisibleChanges() { diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipToOtherOrientation.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipToOtherOrientation.kt index e51fa45c30..a0a61fe2cf 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipToOtherOrientation.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipToOtherOrientation.kt @@ -16,9 +16,9 @@ package com.android.wm.shell.flicker.pip +import android.app.Activity import android.platform.test.annotations.Postsubmit import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.Rotation import android.tools.flicker.assertions.FlickerTest import android.tools.flicker.junit.FlickerParametersRunnerFactory @@ -27,29 +27,26 @@ import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.legacy.LegacyFlickerTestFactory import android.tools.helpers.WindowUtils import android.tools.traces.component.ComponentNameMatcher -import android.view.WindowManagerGlobal import androidx.test.filters.FlakyTest import com.android.server.wm.flicker.entireScreenCovered import com.android.server.wm.flicker.helpers.FixedOrientationAppHelper -import com.android.server.wm.flicker.helpers.PipAppHelper import com.android.server.wm.flicker.testapp.ActivityOptions.Pip.ACTION_ENTER_PIP import com.android.server.wm.flicker.testapp.ActivityOptions.PortraitOnlyActivity.EXTRA_FIXED_ORIENTATION -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.PipTransition import com.android.wm.shell.flicker.pip.common.PipTransition.BroadcastActionTrigger.Companion.ORIENTATION_LANDSCAPE import com.android.wm.shell.flicker.pip.common.PipTransition.BroadcastActionTrigger.Companion.ORIENTATION_PORTRAIT -import org.junit.Assume.assumeFalse +import org.junit.Assume +import org.junit.Before import org.junit.FixMethodOrder import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.MethodSorters import org.junit.runners.Parameterized -import java.lang.AssertionError /** * Test entering pip while changing orientation (from app in landscape to pip window in portrait) * - * To run this test: `atest WMShellFlickerTestsPip:EnterPipToOtherOrientation` + * To run this test: `atest WMShellFlickerTestsPip2:EnterPipToOtherOrientation` * * Actions: * ``` @@ -71,19 +68,9 @@ import java.lang.AssertionError @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) -open class EnterPipToOtherOrientation(flicker: LegacyFlickerTest) : PipTransition(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) - internal val testApp = FixedOrientationAppHelper(instrumentation) - internal val ignoreOrientationRequest = WindowManagerGlobal.getWindowManagerService() - ?.getIgnoreOrientationRequest(WindowUtils.defaultDisplayId) - ?: throw AssertionError("WMS must not be null.") - internal val startingBounds = if (ignoreOrientationRequest) { - // If the device chooses to ignore orientation request, use the current display bounds. - WindowUtils.getDisplayBounds(Rotation.ROTATION_0) - } else { - WindowUtils.getDisplayBounds(Rotation.ROTATION_90) - } +class EnterPipToOtherOrientation(flicker: LegacyFlickerTest) : PipTransition(flicker) { + private val testApp = FixedOrientationAppHelper(instrumentation) + private val startingBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_90) private val endingBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_0) override val thisTransition: FlickerBuilder.() -> Unit = { @@ -119,28 +106,35 @@ open class EnterPipToOtherOrientation(flicker: LegacyFlickerTest) : PipTransitio } } + /** + * This test is not compatible with Tablets. When using [Activity.setRequestedOrientation] to + * fix a orientation, Tablets instead keep the same orientation and add letterboxes + */ + @Before + fun setup() { + Assume.assumeFalse(tapl.isTablet) + } + /** * Checks that all parts of the screen are covered at the start and end of the transition + * + * TODO b/197726599 Prevents all states from being checked */ @Presubmit @Test - fun entireScreenCoveredAtStartAndEnd() { - assumeFalse(tapl.isTablet) - flicker.entireScreenCovered() - } + fun entireScreenCoveredAtStartAndEnd() = flicker.entireScreenCovered(allStates = false) /** Checks [pipApp] window remains visible and on top throughout the transition */ @Presubmit @Test fun pipAppWindowIsAlwaysOnTop() { - assumeFalse(tapl.isTablet) flicker.assertWm { isAppWindowOnTop(pipApp) } } /** Checks that [testApp] window is not visible at the start */ @Presubmit @Test - open fun testAppWindowInvisibleOnStart() { + fun testAppWindowInvisibleOnStart() { flicker.assertWmStart { isAppWindowInvisible(testApp) } } @@ -148,15 +142,13 @@ open class EnterPipToOtherOrientation(flicker: LegacyFlickerTest) : PipTransitio @Presubmit @Test fun testAppWindowVisibleOnEnd() { - assumeFalse(tapl.isTablet) flicker.assertWmEnd { isAppWindowVisible(testApp) } } /** Checks that [testApp] layer is not visible at the start */ @Presubmit @Test - open fun testAppLayerInvisibleOnStart() { - assumeFalse(tapl.isTablet) + fun testAppLayerInvisibleOnStart() { flicker.assertLayersStart { isInvisible(testApp) } } @@ -164,7 +156,6 @@ open class EnterPipToOtherOrientation(flicker: LegacyFlickerTest) : PipTransitio @Presubmit @Test fun testAppLayerVisibleOnEnd() { - assumeFalse(tapl.isTablet) flicker.assertLayersEnd { isVisible(testApp) } } @@ -174,15 +165,21 @@ open class EnterPipToOtherOrientation(flicker: LegacyFlickerTest) : PipTransitio */ @Presubmit @Test - open fun pipAppLayerCoversFullScreenOnStart() { + fun pipAppLayerCoversFullScreenOnStart() { + Assume.assumeFalse(tapl.isTablet) + flicker.assertLayersStart { visibleRegion(pipApp).coversExactly(startingBounds) } + } + + /** + * Checks that the visible region of [pipApp] covers the full display area at the start of the + * transition + */ + @Postsubmit + @Test + fun pipAppLayerPlusLetterboxCoversFullScreenOnStartTablet() { + Assume.assumeFalse(tapl.isTablet) flicker.assertLayersStart { - visibleRegion( - if (ignoreOrientationRequest) { - pipApp.or(ComponentNameMatcher.LETTERBOX) - } else { - pipApp - } - ).coversExactly(startingBounds) + visibleRegion(pipApp.or(ComponentNameMatcher.LETTERBOX)).coversExactly(startingBounds) } } @@ -193,7 +190,6 @@ open class EnterPipToOtherOrientation(flicker: LegacyFlickerTest) : PipTransitio @Presubmit @Test fun testAppPlusPipLayerCoversFullScreenOnEnd() { - assumeFalse(tapl.isTablet) flicker.assertLayersEnd { val pipRegion = visibleRegion(pipApp).region visibleRegion(testApp).plus(pipRegion).coversExactly(endingBounds) @@ -203,7 +199,6 @@ open class EnterPipToOtherOrientation(flicker: LegacyFlickerTest) : PipTransitio @Postsubmit @Test fun menuOverlayMatchesTaskSurface() { - assumeFalse(tapl.isTablet) flicker.assertLayersEnd { val pipAppRegion = visibleRegion(pipApp) val pipMenuRegion = visibleRegion(ComponentNameMatcher.PIP_MENU_OVERLAY) @@ -214,7 +209,6 @@ open class EnterPipToOtherOrientation(flicker: LegacyFlickerTest) : PipTransitio @Presubmit @Test fun pipLayerRemainInsideVisibleBounds() { - assumeFalse(tapl.isTablet) // during the transition we assert the center point is within the display bounds, since it // might go outside of bounds as we resize from landscape fullscreen to destination bounds, // and once the animation is over we assert that it's fully within the display bounds, at diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipViaAppUiButtonTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipViaAppUiButtonTest.kt index 97cc9d2992..d92f55af57 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipViaAppUiButtonTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/EnterPipViaAppUiButtonTest.kt @@ -16,12 +16,9 @@ package com.android.wm.shell.flicker.pip -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest -import com.android.server.wm.flicker.helpers.PipAppHelper -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.EnterPipTransition import org.junit.FixMethodOrder import org.junit.runner.RunWith @@ -31,7 +28,7 @@ import org.junit.runners.Parameterized /** * Test entering pip from an app by interacting with the app UI * - * To run this test: `atest WMShellFlickerTestsPip:EnterPipViaAppUiButtonTest` + * To run this test: `atest WMShellFlickerTestsPip2:EnterPipViaAppUiButtonTest` * * Actions: * ``` @@ -52,10 +49,7 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) open class EnterPipViaAppUiButtonTest(flicker: LegacyFlickerTest) : EnterPipTransition(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) - override val thisTransition: FlickerBuilder.() -> Unit = { transitions { pipApp.clickEnterPipButton(wmHelper) } } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExitPipToAppViaExpandButtonTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExitPipToAppViaExpandButtonTest.kt index 80e4c47a5f..8c0817d6e2 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExitPipToAppViaExpandButtonTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExitPipToAppViaExpandButtonTest.kt @@ -16,13 +16,9 @@ package com.android.wm.shell.flicker.pip -import android.platform.test.annotations.FlakyTest -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest -import com.android.server.wm.flicker.helpers.PipAppHelper -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.ExitPipToAppTransition import org.junit.FixMethodOrder import org.junit.runner.RunWith @@ -32,7 +28,7 @@ import org.junit.runners.Parameterized /** * Test expanding a pip window back to full screen via the expand button * - * To run this test: `atest WMShellFlickerTestsPip:ExitPipToAppViaExpandButtonTest` + * To run this test: `atest WMShellFlickerTestsPip2:ExitPipToAppViaExpandButtonTest` * * Actions: * ``` @@ -52,15 +48,11 @@ import org.junit.runners.Parameterized * apps are running before setup * ``` */ -@FlakyTest(bugId = 391734110) @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class ExitPipToAppViaExpandButtonTest(flicker: LegacyFlickerTest) : ExitPipToAppTransition(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) - override val thisTransition: FlickerBuilder.() -> Unit = { setup { // launch an app behind the pip one diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExitPipToAppViaIntentTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExitPipToAppViaIntentTest.kt index 2f4c8008f2..90a9623056 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExitPipToAppViaIntentTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExitPipToAppViaIntentTest.kt @@ -16,12 +16,9 @@ package com.android.wm.shell.flicker.pip -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest -import com.android.server.wm.flicker.helpers.PipAppHelper -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.ExitPipToAppTransition import org.junit.FixMethodOrder import org.junit.runner.RunWith @@ -31,7 +28,7 @@ import org.junit.runners.Parameterized /** * Test expanding a pip window back to full screen via an intent * - * To run this test: `atest WMShellFlickerTestsPip:ExitPipToAppViaIntentTest` + * To run this test: `atest WMShellFlickerTestsPip2:ExitPipToAppViaIntentTest` * * Actions: * ``` @@ -53,10 +50,7 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class ExitPipToAppViaIntentTest(flicker: LegacyFlickerTest) : ExitPipToAppTransition(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) - override val thisTransition: FlickerBuilder.() -> Unit = { setup { // launch an app behind the pip one @@ -64,7 +58,7 @@ class ExitPipToAppViaIntentTest(flicker: LegacyFlickerTest) : ExitPipToAppTransi } transitions { // This will bring PipApp to fullscreen - pipApp.exitPipToOriginalTaskViaIntent(wmHelper) + pipApp.exitPipToFullScreenViaIntent(wmHelper) // Wait until the other app is no longer visible wmHelper.StateSyncBuilder().withWindowSurfaceDisappeared(testApp).waitForAndVerify() } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExpandPipOnDoubleClickTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExpandPipOnDoubleClickTest.kt index 4f189fc619..9306c77a1c 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExpandPipOnDoubleClickTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExpandPipOnDoubleClickTest.kt @@ -17,14 +17,12 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.Rotation import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.legacy.LegacyFlickerTestFactory import android.tools.traces.component.ComponentNameMatcher -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.PipTransition import org.junit.FixMethodOrder import org.junit.Test @@ -35,7 +33,7 @@ import org.junit.runners.Parameterized /** * Test expanding a pip window by double-clicking it * - * To run this test: `atest WMShellFlickerTestsPip:ExpandPipOnDoubleClickTest` + * To run this test: `atest WMShellFlickerTestsPip2:ExpandPipOnDoubleClickTest` * * Actions: * ``` @@ -56,7 +54,6 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class ExpandPipOnDoubleClickTest(flicker: LegacyFlickerTest) : PipTransition(flicker) { override val thisTransition: FlickerBuilder.() -> Unit = { transitions { pipApp.doubleClickPipWindow(wmHelper) } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExpandPipOnPinchOpenTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExpandPipOnPinchOpenTest.kt index 4d72b03d03..1964e3cebc 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExpandPipOnPinchOpenTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ExpandPipOnPinchOpenTest.kt @@ -17,13 +17,11 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.Rotation import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.legacy.LegacyFlickerTestFactory -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.PipTransition import org.junit.FixMethodOrder import org.junit.Test @@ -35,7 +33,6 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class ExpandPipOnPinchOpenTest(flicker: LegacyFlickerTest) : PipTransition(flicker) { override val thisTransition: FlickerBuilder.() -> Unit = { transitions { pipApp.pinchOpenPipWindow(wmHelper, 0.25f, 30) } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/FromSplitScreenAutoEnterPipOnGoToHomeTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/FromSplitScreenAutoEnterPipOnGoToHomeTest.kt index aa893ed65e..cb8ee27f29 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/FromSplitScreenAutoEnterPipOnGoToHomeTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/FromSplitScreenAutoEnterPipOnGoToHomeTest.kt @@ -16,9 +16,7 @@ package com.android.wm.shell.flicker.pip -import android.platform.test.annotations.FlakyTest import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresDevice import android.tools.Rotation import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder @@ -26,6 +24,8 @@ import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.legacy.LegacyFlickerTestFactory import android.tools.helpers.WindowUtils import android.tools.traces.parsers.toFlickerComponent +import androidx.test.filters.FlakyTest +import androidx.test.filters.RequiresDevice import com.android.server.wm.flicker.helpers.SimpleAppHelper import com.android.server.wm.flicker.testapp.ActivityOptions import com.android.wm.shell.flicker.utils.SplitScreenUtils @@ -39,7 +39,7 @@ import org.junit.runners.Parameterized /** * Test entering pip from an app via auto-enter property when navigating to home from split screen. * - * To run this test: `atest WMShellFlickerTestsPip:FromSplitScreenAutoEnterPipOnGoToHomeTest` + * To run this test: `atest WMShellFlickerTestsPip1:FromSplitScreenAutoEnterPipOnGoToHomeTest` * * Actions: * ``` @@ -62,11 +62,11 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -open class FromSplitScreenAutoEnterPipOnGoToHomeTest(flicker: LegacyFlickerTest) : +class FromSplitScreenAutoEnterPipOnGoToHomeTest(flicker: LegacyFlickerTest) : AutoEnterPipOnGoToHomeTest(flicker) { private val portraitDisplayBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_0) /** Second app used to enter split screen mode */ - internal val secondAppForSplitScreen = + private val secondAppForSplitScreen = SimpleAppHelper( instrumentation, ActivityOptions.SplitScreen.Primary.LABEL, diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/FromSplitScreenEnterPipOnUserLeaveHintTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/FromSplitScreenEnterPipOnUserLeaveHintTest.kt index 8e7cb56c0f..d03d7799d6 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/FromSplitScreenEnterPipOnUserLeaveHintTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/FromSplitScreenEnterPipOnUserLeaveHintTest.kt @@ -16,9 +16,7 @@ package com.android.wm.shell.flicker.pip -import android.platform.test.annotations.FlakyTest import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresDevice import android.tools.Rotation import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder @@ -26,7 +24,8 @@ import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.legacy.LegacyFlickerTestFactory import android.tools.helpers.WindowUtils import android.tools.traces.parsers.toFlickerComponent -import com.android.server.wm.flicker.helpers.PipAppHelper +import androidx.test.filters.FlakyTest +import androidx.test.filters.RequiresDevice import com.android.server.wm.flicker.helpers.SimpleAppHelper import com.android.server.wm.flicker.testapp.ActivityOptions import com.android.wm.shell.flicker.pip.common.EnterPipTransition @@ -41,7 +40,7 @@ import org.junit.runners.Parameterized /** * Test entering pip from an app via auto-enter property when navigating to home from split screen. * - * To run this test: `atest WMShellFlickerTestsPip:FromSplitScreenEnterPipOnUserLeaveHintTest` + * To run this test: `atest WMShellFlickerTestsPip1:FromSplitScreenEnterPipOnUserLeaveHintTest` * * Actions: * ``` @@ -64,13 +63,11 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@FlakyTest(bugId = 386333280) -open class FromSplitScreenEnterPipOnUserLeaveHintTest(flicker: LegacyFlickerTest) : +class FromSplitScreenEnterPipOnUserLeaveHintTest(flicker: LegacyFlickerTest) : EnterPipTransition(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) private val portraitDisplayBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_0) /** Second app used to enter split screen mode */ - internal val secondAppForSplitScreen = + private val secondAppForSplitScreen = SimpleAppHelper( instrumentation, ActivityOptions.SplitScreen.Primary.LABEL, @@ -185,6 +182,12 @@ open class FromSplitScreenEnterPipOnUserLeaveHintTest(flicker: LegacyFlickerTest } } + /** {@inheritDoc} */ + @FlakyTest(bugId = 312446524) + @Test + override fun visibleLayersShownMoreThanOneConsecutiveEntry() = + super.visibleLayersShownMoreThanOneConsecutiveEntry() + /** {@inheritDoc} */ @Test @FlakyTest(bugId = 336510055) diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipDownOnShelfHeightChange.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipDownOnShelfHeightChange.kt index d979b428d8..265eb4416a 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipDownOnShelfHeightChange.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipDownOnShelfHeightChange.kt @@ -17,12 +17,10 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresDevice -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest -import com.android.wm.shell.Flags +import androidx.test.filters.RequiresDevice import com.android.wm.shell.flicker.pip.common.MovePipShelfHeightTransition import com.android.wm.shell.flicker.utils.Direction import org.junit.FixMethodOrder @@ -34,7 +32,7 @@ import org.junit.runners.Parameterized /** * Test Pip movement with Launcher shelf height change (increase). * - * To run this test: `atest WMShellFlickerTestsPip:MovePipDownOnShelfHeightChange` + * To run this test: `atest WMShellFlickerTestsPip3:MovePipDownOnShelfHeightChange` * * Actions: * ``` @@ -58,7 +56,6 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class MovePipDownOnShelfHeightChange(flicker: LegacyFlickerTest) : MovePipShelfHeightTransition(flicker) { override val thisTransition: FlickerBuilder.() -> Unit = { diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipOnImeVisibilityChangeTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipOnImeVisibilityChangeTest.kt index 88d78edae9..04fedf4f25 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipOnImeVisibilityChangeTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipOnImeVisibilityChangeTest.kt @@ -17,7 +17,6 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.Rotation import android.tools.flicker.assertions.FlickerTest import android.tools.flicker.junit.FlickerParametersRunnerFactory @@ -28,7 +27,6 @@ import android.tools.helpers.WindowUtils import android.tools.traces.component.ComponentNameMatcher import com.android.server.wm.flicker.helpers.ImeAppHelper import com.android.server.wm.flicker.helpers.setRotation -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.PipTransition import org.junit.FixMethodOrder import org.junit.Test @@ -43,7 +41,6 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class MovePipOnImeVisibilityChangeTest(flicker: LegacyFlickerTest) : PipTransition(flicker) { private val imeApp = ImeAppHelper(instrumentation) diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipUpOnShelfHeightChangeTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipUpOnShelfHeightChangeTest.kt index c533800b37..8d6be64da2 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipUpOnShelfHeightChangeTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/MovePipUpOnShelfHeightChangeTest.kt @@ -17,12 +17,10 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresDevice -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest -import com.android.wm.shell.Flags +import androidx.test.filters.RequiresDevice import com.android.wm.shell.flicker.pip.common.MovePipShelfHeightTransition import com.android.wm.shell.flicker.utils.Direction import org.junit.FixMethodOrder @@ -34,7 +32,7 @@ import org.junit.runners.Parameterized /** * Test Pip movement with Launcher shelf height change (decrease). * - * To run this test: `atest WMShellFlickerTestsPip:MovePipUpOnShelfHeightChangeTest` + * To run this test: `atest WMShellFlickerTestsPip3:MovePipUpOnShelfHeightChangeTest` * * Actions: * ``` @@ -58,7 +56,6 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) open class MovePipUpOnShelfHeightChangeTest(flicker: LegacyFlickerTest) : MovePipShelfHeightTransition(flicker) { override val thisTransition: FlickerBuilder.() -> Unit = { @@ -68,8 +65,7 @@ open class MovePipUpOnShelfHeightChangeTest(flicker: LegacyFlickerTest) : } /** Checks that the visible region of [pipApp] window always moves up during the animation. */ - @Presubmit - @Test fun pipWindowMovesUp() = pipWindowMoves(Direction.UP) + @Presubmit @Test fun pipWindowMovesUp() = pipWindowMoves(Direction.UP) /** Checks that the visible region of [pipApp] layer always moves up during the animation. */ @Presubmit @Test fun pipLayerMovesUp() = pipLayerMoves(Direction.UP) diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipAspectRatioChangeTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipAspectRatioChangeTest.kt index 14ae93a81c..70be58f065 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipAspectRatioChangeTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipAspectRatioChangeTest.kt @@ -17,14 +17,11 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.Rotation import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.legacy.LegacyFlickerTestFactory -import com.android.server.wm.flicker.helpers.PipAppHelper -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.PipTransition import org.junit.FixMethodOrder import org.junit.Test @@ -36,12 +33,9 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class PipAspectRatioChangeTest(flicker: LegacyFlickerTest) : PipTransition(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) - override val thisTransition: FlickerBuilder.() -> Unit = { - transitions { pipApp.changeAspectRatio(wmHelper) } + transitions { pipApp.changeAspectRatio() } } @Presubmit diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipDragTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipDragTest.kt index 81162c6f53..a4df69fc65 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipDragTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipDragTest.kt @@ -18,13 +18,11 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit import android.platform.test.annotations.RequiresDevice -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.legacy.LegacyFlickerTestFactory import com.android.server.wm.flicker.testapp.ActivityOptions -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.PipTransition import org.junit.FixMethodOrder import org.junit.Test @@ -37,7 +35,6 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class PipDragTest(flicker: LegacyFlickerTest) : PipTransition(flicker) { private var isDraggedLeft: Boolean = true @@ -49,8 +46,7 @@ class PipDragTest(flicker: LegacyFlickerTest) : PipTransition(flicker) { val stringExtras = mapOf(ActivityOptions.Pip.EXTRA_ENTER_PIP to "true") setup { tapl.setEnableRotation(true) - pipApp.launchViaIntent(wmHelper, stringExtras = stringExtras) - pipApp.waitForPip(wmHelper) + pipApp.launchViaIntentAndWaitForPip(wmHelper, stringExtras = stringExtras) // determine the direction of dragging to test for isDraggedLeft = pipApp.isCloserToRightEdge(wmHelper) diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipDragThenSnapTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipDragThenSnapTest.kt index 6118d73796..90b9798c63 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipDragThenSnapTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipDragThenSnapTest.kt @@ -17,18 +17,16 @@ package com.android.wm.shell.flicker.pip import android.graphics.Rect -import android.platform.test.annotations.FlakyTest -import android.platform.test.annotations.RequiresDevice -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.Rotation import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.legacy.LegacyFlickerTestFactory import android.tools.flicker.rules.RemoveAllTasksButHomeRule +import androidx.test.filters.FlakyTest +import androidx.test.filters.RequiresDevice import com.android.server.wm.flicker.helpers.setRotation import com.android.server.wm.flicker.testapp.ActivityOptions -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.PipTransition import org.junit.FixMethodOrder import org.junit.Test @@ -42,7 +40,6 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class PipDragThenSnapTest(flicker: LegacyFlickerTest) : PipTransition(flicker) { // represents the direction in which the pip window should be snapping private var willSnapRight: Boolean = true @@ -59,8 +56,7 @@ class PipDragThenSnapTest(flicker: LegacyFlickerTest) : PipTransition(flicker) { // Launch the PIP activity and wait for it to enter PiP mode setRotation(Rotation.ROTATION_0) RemoveAllTasksButHomeRule.removeAllTasksButHome() - pipApp.launchViaIntent(wmHelper, stringExtras = stringExtras) - pipApp.waitForPip(wmHelper) + pipApp.launchViaIntentAndWaitForPip(wmHelper, stringExtras = stringExtras) // get the initial region bounds and cache them val initRegion = pipApp.getWindowRect(wmHelper) @@ -185,13 +181,6 @@ class PipDragThenSnapTest(flicker: LegacyFlickerTest) : PipTransition(flicker) { super.taskBarWindowIsAlwaysVisible() } - // Overridden to remove @Postsubmit annotation - @Test - @FlakyTest(bugId = 294993100) - override fun pipLayerHasCorrectCornersAtEnd() { - // No rounded corners as we go back to fullscreen in new orientation. - } - companion object { /** * Creates the test configurations. diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipPinchInTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipPinchInTest.kt index 61c59cc455..16d08e5e90 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipPinchInTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/PipPinchInTest.kt @@ -17,16 +17,13 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresDevice -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.Rotation import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.legacy.LegacyFlickerTestFactory import android.tools.flicker.subject.exceptions.IncorrectRegionException -import com.android.server.wm.flicker.helpers.PipAppHelper -import com.android.wm.shell.Flags +import androidx.test.filters.RequiresDevice import com.android.wm.shell.flicker.pip.common.PipTransition import org.junit.FixMethodOrder import org.junit.Test @@ -39,10 +36,7 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class PipPinchInTest(flicker: LegacyFlickerTest) : PipTransition(flicker) { - override val pipApp: PipAppHelper = PipAppHelper(instrumentation) - override val thisTransition: FlickerBuilder.() -> Unit = { transitions { pipApp.pinchInPipWindow(wmHelper, 0.4f, 30) } } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/SetRequestedOrientationWhilePinned.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/SetRequestedOrientationWhilePinned.kt index 86c32de646..ed2a0a718c 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/SetRequestedOrientationWhilePinned.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/SetRequestedOrientationWhilePinned.kt @@ -17,11 +17,8 @@ package com.android.wm.shell.flicker.pip import android.app.Activity -import android.platform.test.annotations.FlakyTest import android.platform.test.annotations.Postsubmit import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresDevice -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.Rotation import android.tools.flicker.assertions.FlickerTest import android.tools.flicker.junit.FlickerParametersRunnerFactory @@ -29,9 +26,10 @@ import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.legacy.LegacyFlickerTestFactory import android.tools.helpers.WindowUtils +import androidx.test.filters.FlakyTest +import androidx.test.filters.RequiresDevice import com.android.server.wm.flicker.testapp.ActivityOptions import com.android.server.wm.flicker.testapp.ActivityOptions.PortraitOnlyActivity.EXTRA_FIXED_ORIENTATION -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.PipTransition import com.android.wm.shell.flicker.pip.common.PipTransition.BroadcastActionTrigger.Companion.ORIENTATION_LANDSCAPE import org.junit.Assume @@ -43,35 +41,16 @@ import org.junit.runners.MethodSorters import org.junit.runners.Parameterized /** - * Test leaving pip while changing orientation (from pip window in portrait to app in landscape) - * - * To run this test: `atest WMShellFlickerTestsPip:SetRequestedOrientationWhilePinned` - * - * Actions: - * ``` - * Launch [pipApp] on a fixed landscape orientation - * Broadcast action [ACTION_ENTER_PIP] to enter pip mode in portrait - * Restore PIP from the original task to landscape - * ``` - * - * Notes: - * ``` - * 1. Some default assertions (e.g., nav bar, status bar and screen covered) - * are inherited [PipTransition] - * 2. Part of the test setup occurs automatically via - * [android.tools.flicker.legacy.runner.TransitionRunner], - * including configuring navigation mode, initial orientation and ensuring no - * apps are running before setup - * ``` + * Test exiting Pip with orientation changes. To run this test: + * `atest WMShellFlickerTestsPip1:SetRequestedOrientationWhilePinned` */ @RequiresDevice @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) open class SetRequestedOrientationWhilePinned(flicker: LegacyFlickerTest) : PipTransition(flicker) { private val startingBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_0) - internal open val endingBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_90) + private val endingBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_90) override val thisTransition: FlickerBuilder.() -> Unit = { transitions { @@ -149,7 +128,7 @@ open class SetRequestedOrientationWhilePinned(flicker: LegacyFlickerTest) : PipT @Presubmit @Test - open fun pipAppLayerCoversDisplayBoundsOnEnd() { + fun pipAppLayerCoversFullScreen() { flicker.assertLayersEnd { visibleRegion(pipApp).coversExactly(endingBounds) } } @@ -168,12 +147,6 @@ open class SetRequestedOrientationWhilePinned(flicker: LegacyFlickerTest) : PipT @Test override fun entireScreenCovered() = super.entireScreenCovered() - @Postsubmit - @Test - override fun pipLayerHasCorrectCornersAtEnd() { - flicker.assertLayersEnd { hasNoRoundedCorners(pipApp) } - } - companion object { @Parameterized.Parameters(name = "{0}") @JvmStatic diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ShowPipAndRotateDisplay.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ShowPipAndRotateDisplay.kt index e72251fb7a..9109eafacf 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ShowPipAndRotateDisplay.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/ShowPipAndRotateDisplay.kt @@ -17,7 +17,6 @@ package com.android.wm.shell.flicker.pip import android.platform.test.annotations.Presubmit -import android.platform.test.annotations.RequiresFlagsDisabled import android.tools.flicker.assertions.FlickerTest import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder @@ -26,7 +25,6 @@ import android.tools.flicker.legacy.LegacyFlickerTestFactory import android.tools.helpers.WindowUtils import com.android.server.wm.flicker.helpers.SimpleAppHelper import com.android.server.wm.flicker.helpers.setRotation -import com.android.wm.shell.Flags import com.android.wm.shell.flicker.pip.common.PipTransition import org.junit.FixMethodOrder import org.junit.Test @@ -37,7 +35,7 @@ import org.junit.runners.Parameterized /** * Test Pip Stack in bounds after rotations. * - * To run this test: `atest WMShellFlickerTestsPip:ShowPipAndRotateDisplay` + * To run this test: `atest WMShellFlickerTestsPip1:ShowPipAndRotateDisplay` * * Actions: * ``` @@ -60,7 +58,6 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RequiresFlagsDisabled(Flags.FLAG_ENABLE_PIP2) class ShowPipAndRotateDisplay(flicker: LegacyFlickerTest) : PipTransition(flicker) { private val testApp = SimpleAppHelper(instrumentation) private val screenBoundsStart = WindowUtils.getDisplayBounds(flicker.scenario.startRotation) diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/AppsEnterPipTransition.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/AppsEnterPipTransition.kt index 0867f654bc..65b60ce102 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/AppsEnterPipTransition.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/AppsEnterPipTransition.kt @@ -18,6 +18,7 @@ package com.android.wm.shell.flicker.pip.apps import android.platform.test.annotations.Postsubmit import android.tools.Rotation +import android.tools.device.apphelpers.StandardAppHelper import android.tools.flicker.junit.FlickerBuilderProvider import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest @@ -28,6 +29,8 @@ import org.junit.Test import org.junit.runners.Parameterized abstract class AppsEnterPipTransition(flicker: LegacyFlickerTest) : EnterPipTransition(flicker) { + protected abstract val standardAppHelper: StandardAppHelper + protected abstract val permissions: Array<String> @FlickerBuilderProvider @@ -36,7 +39,7 @@ abstract class AppsEnterPipTransition(flicker: LegacyFlickerTest) : EnterPipTran instrumentation.uiAutomation.adoptShellPermissionIdentity() for (permission in permissions) { instrumentation.uiAutomation.grantRuntimePermission( - pipApp.packageName, + standardAppHelper.packageName, permission ) } @@ -45,18 +48,18 @@ abstract class AppsEnterPipTransition(flicker: LegacyFlickerTest) : EnterPipTran } } - /** Checks [pipApp] window remains visible throughout the animation */ + /** Checks [standardAppHelper] window remains visible throughout the animation */ @Postsubmit @Test override fun pipAppWindowAlwaysVisible() { - flicker.assertWm { this.isAppWindowVisible(pipApp.packageNameMatcher) } + flicker.assertWm { this.isAppWindowVisible(standardAppHelper.packageNameMatcher) } } - /** Checks [pipApp] layer remains visible throughout the animation */ + /** Checks [standardAppHelper] layer remains visible throughout the animation */ @Postsubmit @Test override fun pipAppLayerAlwaysVisible() { - flicker.assertLayers { this.isVisible(pipApp.packageNameMatcher) } + flicker.assertLayers { this.isVisible(standardAppHelper.packageNameMatcher) } } /** Checks the content overlay appears then disappears during the animation */ @@ -67,39 +70,39 @@ abstract class AppsEnterPipTransition(flicker: LegacyFlickerTest) : EnterPipTran } /** - * Checks that [pipApp] window remains inside the display bounds throughout the whole + * Checks that [standardAppHelper] window remains inside the display bounds throughout the whole * animation */ @Postsubmit @Test override fun pipWindowRemainInsideVisibleBounds() { - flicker.assertWmVisibleRegion(pipApp.packageNameMatcher) { + flicker.assertWmVisibleRegion(standardAppHelper.packageNameMatcher) { coversAtMost(displayBounds) } } /** - * Checks that the [pipApp] layer remains inside the display bounds throughout the + * Checks that the [standardAppHelper] layer remains inside the display bounds throughout the * whole animation */ @Postsubmit @Test override fun pipLayerOrOverlayRemainInsideVisibleBounds() { flicker.assertLayersVisibleRegion( - pipApp.packageNameMatcher.or(ComponentNameMatcher.PIP_CONTENT_OVERLAY) + standardAppHelper.packageNameMatcher.or(ComponentNameMatcher.PIP_CONTENT_OVERLAY) ) { coversAtMost(displayBounds) } } - /** Checks that the visible region of [pipApp] always reduces during the animation */ + /** Checks that the visible region of [standardAppHelper] always reduces during the animation */ @Postsubmit @Test override fun pipLayerReduces() { flicker.assertLayers { val pipLayerList = this.layers { - pipApp.packageNameMatcher.layerMatchesAnyOf(it) && it.isVisible + standardAppHelper.packageNameMatcher.layerMatchesAnyOf(it) && it.isVisible } pipLayerList.zipWithNext { previous, current -> current.visibleRegion.notBiggerThan(previous.visibleRegion.region) @@ -107,14 +110,14 @@ abstract class AppsEnterPipTransition(flicker: LegacyFlickerTest) : EnterPipTran } } - /** Checks that [pipApp] window becomes pinned */ + /** Checks that [standardAppHelper] window becomes pinned */ @Postsubmit @Test override fun pipWindowBecomesPinned() { flicker.assertWm { - invoke("pipWindowIsNotPinned") { it.isNotPinned(pipApp.packageNameMatcher) } + invoke("pipWindowIsNotPinned") { it.isNotPinned(standardAppHelper.packageNameMatcher) } .then() - .invoke("pipWindowIsPinned") { it.isPinned(pipApp.packageNameMatcher) } + .invoke("pipWindowIsPinned") { it.isPinned(standardAppHelper.packageNameMatcher) } } } @@ -126,14 +129,14 @@ abstract class AppsEnterPipTransition(flicker: LegacyFlickerTest) : EnterPipTran } /** - * Checks that the focus changes between the [pipApp] window and the launcher when + * Checks that the focus changes between the [standardAppHelper] window and the launcher when * closing the pip window */ @Postsubmit @Test override fun focusChanges() { flicker.assertEventLog { - this.focusChanges(pipApp.packageName, "NexusLauncherActivity") + this.focusChanges(standardAppHelper.packageName, "NexusLauncherActivity") } } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/MapsEnterPipTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/MapsEnterPipTest.kt index 651c92308c..1fc9d9910a 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/MapsEnterPipTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/MapsEnterPipTest.kt @@ -29,8 +29,6 @@ import android.tools.device.apphelpers.MapsAppHelper import android.tools.flicker.junit.FlickerParametersRunnerFactory import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest -import android.tools.flicker.subject.layers.LayersTraceSubject.Companion.VISIBLE_FOR_MORE_THAN_ONE_ENTRY_IGNORE_LAYERS -import android.tools.traces.component.ComponentRegexMatcher import androidx.test.filters.RequiresDevice import org.junit.Assume import org.junit.FixMethodOrder @@ -42,7 +40,7 @@ import org.junit.runners.Parameterized /** * Test entering pip from Maps app by interacting with the app UI * - * To run this test: `atest WMShellFlickerTestsPipAppsCSuite:MapsEnterPipTest` + * To run this test: `atest WMShellFlickerTests:MapsEnterPipTest` * * Actions: * ``` @@ -65,7 +63,7 @@ import org.junit.runners.Parameterized @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) open class MapsEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransition(flicker) { - override val pipApp: MapsAppHelper = MapsAppHelper(instrumentation) + override val standardAppHelper: MapsAppHelper = MapsAppHelper(instrumentation) override val permissions: Array<String> = arrayOf(Manifest.permission.POST_NOTIFICATIONS, Manifest.permission.ACCESS_FINE_LOCATION) @@ -112,23 +110,23 @@ open class MapsEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransition // normal app open through the Launcher All Apps // var mapsAddressOption = "Golden Gate Bridge" - // pipApp.open() - // pipApp.doSearch(mapsAddressOption) - // pipApp.getDirections() - // pipApp.startNavigation(); + // standardAppHelper.open() + // standardAppHelper.doSearch(mapsAddressOption) + // standardAppHelper.getDirections() + // standardAppHelper.startNavigation(); - pipApp.launchViaIntent( + standardAppHelper.launchViaIntent( wmHelper, MapsAppHelper.getMapIntent(MapsAppHelper.INTENT_NAVIGATION) ) - pipApp.waitForNavigationToStart() + standardAppHelper.waitForNavigationToStart() } } override val defaultTeardown: FlickerBuilder.() -> Unit = { teardown { - pipApp.exit(wmHelper) + standardAppHelper.exit(wmHelper) mainHandler.removeCallbacks(updateLocation) // the main looper callback might have tried to provide a new location after the // provider is no longer in test mode, causing a crash, this prevents it from happening @@ -139,14 +137,14 @@ open class MapsEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransition override val thisTransition: FlickerBuilder.() -> Unit = { transitions { tapl.goHome() } } - /** Checks [pipApp] layer remains visible throughout the animation */ + /** Checks [standardAppHelper] layer remains visible throughout the animation */ @Postsubmit @Test override fun pipAppLayerAlwaysVisible() { // For Maps the transition goes through the UI mode change that adds a snapshot overlay so // we assert only start/end layers matching the app instead. - flicker.assertLayersStart { this.isVisible(pipApp.packageNameMatcher) } - flicker.assertLayersEnd { this.isVisible(pipApp.packageNameMatcher) } + flicker.assertLayersStart { this.isVisible(standardAppHelper.packageNameMatcher) } + flicker.assertLayersEnd { this.isVisible(standardAppHelper.packageNameMatcher) } } @Postsubmit @@ -156,15 +154,4 @@ open class MapsEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransition Assume.assumeFalse(flicker.scenario.isGesturalNavigation) super.focusChanges() } - - @Postsubmit - @Test - override fun visibleLayersShownMoreThanOneConsecutiveEntry() { - flicker.assertLayers { - this.visibleLayersShownMoreThanOneConsecutiveEntry( - ignoreLayers = VISIBLE_FOR_MORE_THAN_ONE_ENTRY_IGNORE_LAYERS - + ComponentRegexMatcher(Regex("Background for .* SurfaceView\\[com\\.google\\.android\\.apps\\.maps/com\\.google\\.android\\.maps\\.MapsActivity\\]\\#\\d+")) - ) - } - } } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/NetflixEnterPipTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/NetflixEnterPipTest.kt index be4cd780e4..3a0eeb6799 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/NetflixEnterPipTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/NetflixEnterPipTest.kt @@ -38,7 +38,7 @@ import org.junit.runners.Parameterized /** * Test entering pip from Netflix app by interacting with the app UI * - * To run this test: `atest WMShellFlickerTestsPipAppsCSuite:NetflixEnterPipTest` + * To run this test: `atest WMShellFlickerTests:NetflixEnterPipTest` * * Actions: * ``` @@ -61,7 +61,7 @@ import org.junit.runners.Parameterized @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) open class NetflixEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransition(flicker) { - override val pipApp: NetflixAppHelper = NetflixAppHelper(instrumentation) + override val standardAppHelper: NetflixAppHelper = NetflixAppHelper(instrumentation) private val startingBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_90) private val endingBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_0) @@ -69,17 +69,17 @@ open class NetflixEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransit override val defaultEnterPip: FlickerBuilder.() -> Unit = { setup { - pipApp.launchViaIntent( + standardAppHelper.launchViaIntent( wmHelper, NetflixAppHelper.getNetflixWatchVideoIntent("81605060"), ComponentNameMatcher(NetflixAppHelper.PACKAGE_NAME, NetflixAppHelper.WATCH_ACTIVITY) ) - pipApp.waitForVideoPlaying() + standardAppHelper.waitForVideoPlaying() } } override val defaultTeardown: FlickerBuilder.() -> Unit = { - teardown { pipApp.exit(wmHelper) } + teardown { standardAppHelper.exit(wmHelper) } } override val thisTransition: FlickerBuilder.() -> Unit = { @@ -103,7 +103,7 @@ open class NetflixEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransit @Postsubmit @Test override fun taskBarLayerIsVisibleAtStartAndEnd() { - Assume.assumeTrue(usesTaskbar) + Assume.assumeTrue(flicker.scenario.isTablet) // Netflix starts in immersive fullscreen mode, so taskbar bar is not visible at start flicker.assertLayersStart { this.isInvisible(ComponentNameMatcher.TASK_BAR) } flicker.assertLayersEnd { this.isVisible(ComponentNameMatcher.TASK_BAR) } @@ -143,7 +143,7 @@ open class NetflixEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransit // might go outside of bounds as we resize from landscape fullscreen to destination bounds, // and once the animation is over we assert that it's fully within the display bounds, at // which point the device also performs orientation change from landscape to portrait - flicker.assertWmVisibleRegion(pipApp.packageNameMatcher) { + flicker.assertWmVisibleRegion(standardAppHelper.packageNameMatcher) { regionsCenterPointInside(startingBounds).then().coversAtMost(endingBounds) } } @@ -156,7 +156,7 @@ open class NetflixEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransit // and once the animation is over we assert that it's fully within the display bounds, at // which point the device also performs orientation change from landscape to portrait // since Netflix uses source rect hint, there is no PiP overlay present - flicker.assertLayersVisibleRegion(pipApp.packageNameMatcher) { + flicker.assertLayersVisibleRegion(standardAppHelper.packageNameMatcher) { regionsCenterPointInside(startingBounds).then().coversAtMost(endingBounds) } } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/YouTubeEnterPipTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/YouTubeEnterPipTest.kt index 3e4ff3075f..35ed8de3a4 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/YouTubeEnterPipTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/YouTubeEnterPipTest.kt @@ -34,7 +34,7 @@ import org.junit.runners.Parameterized /** * Test entering pip from YouTube app by interacting with the app UI * - * To run this test: `atest WMShellFlickerTestsPipAppsCSuite:YouTubeEnterPipTest` + * To run this test: `atest WMShellFlickerTests:YouTubeEnterPipTest` * * Actions: * ``` @@ -57,23 +57,23 @@ import org.junit.runners.Parameterized @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) open class YouTubeEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransition(flicker) { - override val pipApp: YouTubeAppHelper = YouTubeAppHelper(instrumentation) + override val standardAppHelper: YouTubeAppHelper = YouTubeAppHelper(instrumentation) override val permissions: Array<String> = arrayOf(Manifest.permission.POST_NOTIFICATIONS) override val defaultEnterPip: FlickerBuilder.() -> Unit = { setup { - pipApp.launchViaIntent( + standardAppHelper.launchViaIntent( wmHelper, - YouTubeAppHelper.getYoutubeVideoIntent("3KtWfp0UopM"), + YouTubeAppHelper.getYoutubeVideoIntent("HPcEAtoXXLA"), ComponentNameMatcher(YouTubeAppHelper.PACKAGE_NAME, "") ) - pipApp.waitForVideoPlaying() + standardAppHelper.waitForVideoPlaying() } } override val defaultTeardown: FlickerBuilder.() -> Unit = { - teardown { pipApp.exit(wmHelper) } + teardown { standardAppHelper.exit(wmHelper) } } override val thisTransition: FlickerBuilder.() -> Unit = { transitions { tapl.goHome() } } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/YouTubeEnterPipToOtherOrientationTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/YouTubeEnterPipToOtherOrientationTest.kt index 2c6cb50346..879034f325 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/YouTubeEnterPipToOtherOrientationTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/apps/YouTubeEnterPipToOtherOrientationTest.kt @@ -38,7 +38,7 @@ import org.junit.runners.Parameterized /** * Test entering pip from YouTube app by interacting with the app UI * - * To run this test: `atest WMShellFlickerTestsPipAppsCSuite:YouTubeEnterPipTest` + * To run this test: `atest WMShellFlickerTests:YouTubeEnterPipTest` * * Actions: * ``` @@ -63,7 +63,7 @@ import org.junit.runners.Parameterized @FixMethodOrder(MethodSorters.NAME_ASCENDING) open class YouTubeEnterPipToOtherOrientationTest(flicker: LegacyFlickerTest) : YouTubeEnterPipTest(flicker) { - override val pipApp: YouTubeAppHelper = YouTubeAppHelper(instrumentation) + override val standardAppHelper: YouTubeAppHelper = YouTubeAppHelper(instrumentation) private val startingBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_90) private val endingBounds = WindowUtils.getDisplayBounds(Rotation.ROTATION_0) @@ -71,13 +71,13 @@ open class YouTubeEnterPipToOtherOrientationTest(flicker: LegacyFlickerTest) : override val defaultEnterPip: FlickerBuilder.() -> Unit = { setup { - pipApp.launchViaIntent( + standardAppHelper.launchViaIntent( wmHelper, - YouTubeAppHelper.getYoutubeVideoIntent("3KtWfp0UopM"), + YouTubeAppHelper.getYoutubeVideoIntent("HPcEAtoXXLA"), ComponentNameMatcher(YouTubeAppHelper.PACKAGE_NAME, "") ) - pipApp.enterFullscreen() - pipApp.waitForVideoPlaying() + standardAppHelper.enterFullscreen() + standardAppHelper.waitForVideoPlaying() } } @@ -88,7 +88,7 @@ open class YouTubeEnterPipToOtherOrientationTest(flicker: LegacyFlickerTest) : @Postsubmit @Test override fun taskBarLayerIsVisibleAtStartAndEnd() { - Assume.assumeTrue(usesTaskbar) + Assume.assumeTrue(flicker.scenario.isTablet) // YouTube starts in immersive fullscreen mode, so taskbar bar is not visible at start flicker.assertLayersStart { this.isInvisible(ComponentNameMatcher.TASK_BAR) } flicker.assertLayersEnd { this.isVisible(ComponentNameMatcher.TASK_BAR) } @@ -101,7 +101,7 @@ open class YouTubeEnterPipToOtherOrientationTest(flicker: LegacyFlickerTest) : // might go outside of bounds as we resize from landscape fullscreen to destination bounds, // and once the animation is over we assert that it's fully within the display bounds, at // which point the device also performs orientation change from landscape to portrait - flicker.assertWmVisibleRegion(pipApp.packageNameMatcher) { + flicker.assertWmVisibleRegion(standardAppHelper.packageNameMatcher) { regionsCenterPointInside(startingBounds).then().coversAtMost(endingBounds) } } @@ -114,7 +114,7 @@ open class YouTubeEnterPipToOtherOrientationTest(flicker: LegacyFlickerTest) : // and once the animation is over we assert that it's fully within the display bounds, at // which point the device also performs orientation change from landscape to portrait // since YouTube uses source rect hint, there is no PiP overlay present - flicker.assertLayersVisibleRegion(pipApp.packageNameMatcher) { + flicker.assertLayersVisibleRegion(standardAppHelper.packageNameMatcher) { regionsCenterPointInside(startingBounds).then().coversAtMost(endingBounds) } } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/ClosePipTransition.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/ClosePipTransition.kt index f57335c208..8cb81b46cf 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/ClosePipTransition.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/ClosePipTransition.kt @@ -70,11 +70,6 @@ abstract class ClosePipTransition(flicker: LegacyFlickerTest) : PipTransition(fl } } - @Test - override fun pipLayerHasCorrectCornersAtEnd() { - // PiP might have completely faded out by this point, so corner radii not applicable. - } - companion object { /** * Creates the test configurations. diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/EnterPipTransition.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/EnterPipTransition.kt index a72de0f6da..6dd3a175da 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/EnterPipTransition.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/EnterPipTransition.kt @@ -71,9 +71,7 @@ abstract class EnterPipTransition(flicker: LegacyFlickerTest) : PipTransition(fl @Presubmit @Test open fun pipLayerOrOverlayRemainInsideVisibleBounds() { - flicker.assertLayersVisibleRegion( - pipApp.or(ComponentNameMatcher.PIP_CONTENT_OVERLAY) - ) { + flicker.assertLayersVisibleRegion(pipApp.or(ComponentNameMatcher.PIP_CONTENT_OVERLAY)) { coversAtMost(displayBounds) } } @@ -119,9 +117,7 @@ abstract class EnterPipTransition(flicker: LegacyFlickerTest) : PipTransition(fl @Presubmit @Test open fun focusChanges() { - flicker.assertEventLog { - this.focusChanges(pipApp.packageName, "NexusLauncherActivity") - } + flicker.assertEventLog { this.focusChanges(pipApp.packageName, "NexusLauncherActivity") } } companion object { diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/ExitPipToAppTransition.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/ExitPipToAppTransition.kt index ce84eb6440..0742cf9c58 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/ExitPipToAppTransition.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/ExitPipToAppTransition.kt @@ -16,7 +16,6 @@ package com.android.wm.shell.flicker.pip.common -import android.platform.test.annotations.Postsubmit import android.platform.test.annotations.Presubmit import android.tools.Rotation import android.tools.flicker.legacy.LegacyFlickerTest @@ -124,12 +123,6 @@ abstract class ExitPipToAppTransition(flicker: LegacyFlickerTest) : PipTransitio } } - @Postsubmit - @Test - override fun pipLayerHasCorrectCornersAtEnd() { - flicker.assertLayersEnd { hasNoRoundedCorners(pipApp) } - } - /** {@inheritDoc} */ @Presubmit @Test override fun entireScreenCovered() = super.entireScreenCovered() diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/PipTransition.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/PipTransition.kt index 7b6625ddc4..99c1ad2aaa 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/PipTransition.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/common/PipTransition.kt @@ -18,29 +18,22 @@ package com.android.wm.shell.flicker.pip.common import android.app.Instrumentation import android.content.Intent -import android.platform.test.annotations.Postsubmit import android.platform.test.annotations.Presubmit -import android.platform.test.flag.junit.DeviceFlagsValueProvider import android.tools.Rotation import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest import android.tools.flicker.rules.RemoveAllTasksButHomeRule.Companion.removeAllTasksButHome import android.tools.helpers.WindowUtils import android.tools.traces.component.ComponentNameMatcher -import android.tools.device.apphelpers.PipApp import com.android.server.wm.flicker.helpers.PipAppHelper import com.android.server.wm.flicker.helpers.setRotation import com.android.server.wm.flicker.testapp.ActivityOptions import com.android.wm.shell.flicker.BaseTest import com.google.common.truth.Truth -import org.junit.Rule import org.junit.Test abstract class PipTransition(flicker: LegacyFlickerTest) : BaseTest(flicker) { - @JvmField - @Rule - val checkFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule() - + protected val pipApp = PipAppHelper(instrumentation) protected val displayBounds = WindowUtils.getDisplayBounds(flicker.scenario.startRotation) protected val broadcastActionTrigger = BroadcastActionTrigger(instrumentation) @@ -63,11 +56,6 @@ abstract class PipTransition(flicker: LegacyFlickerTest) : BaseTest(flicker) { } } - /** - * Defines the test app to run PIP flicker test. - */ - protected open val pipApp: PipApp = PipAppHelper(instrumentation) - /** Defines the transition used to run the test */ protected open val thisTransition: FlickerBuilder.() -> Unit = {} @@ -90,11 +78,10 @@ abstract class PipTransition(flicker: LegacyFlickerTest) : BaseTest(flicker) { /** Defines the default method of entering PiP */ protected open val defaultEnterPip: FlickerBuilder.() -> Unit = { setup { - pipApp.launchViaIntent( + pipApp.launchViaIntentAndWaitForPip( wmHelper, stringExtras = mapOf(ActivityOptions.Pip.EXTRA_ENTER_PIP to "true") ) - pipApp.waitForPip(wmHelper) } } @@ -118,10 +105,4 @@ abstract class PipTransition(flicker: LegacyFlickerTest) : BaseTest(flicker) { .doesNotContain(false) } } - - @Postsubmit - @Test - open fun pipLayerHasCorrectCornersAtEnd() { - flicker.assertLayersEnd { hasRoundedCorners(pipApp) } - } } diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/tv/TvPipBasicTest.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/tv/TvPipBasicTest.kt index 6a84b2803d..8a073abf03 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/tv/TvPipBasicTest.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/tv/TvPipBasicTest.kt @@ -25,7 +25,7 @@ import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.Parameterized -/** Test Pip Menu on TV. To run this test: `atest WMShellFlickerTestsPip:TvPipBasicTest` */ +/** Test Pip Menu on TV. To run this test: `atest WMShellFlickerTests:TvPipBasicTest` */ @RequiresDevice @RunWith(Parameterized::class) class TvPipBasicTest(private val radioButtonId: String, private val pipWindowRatio: Rational?) : diff --git a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/tv/TvPipMenuTests.kt b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/tv/TvPipMenuTests.kt index 09e8745a02..d4cd6da4ac 100644 --- a/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/tv/TvPipMenuTests.kt +++ b/wmshell/tests/flicker/pip/src/com/android/wm/shell/flicker/pip/tv/TvPipMenuTests.kt @@ -27,7 +27,7 @@ import org.junit.Assert.assertTrue import org.junit.Before import org.junit.Test -/** Test Pip Menu on TV. To run this test: `atest WMShellFlickerTestsPip:TvPipMenuTests` */ +/** Test Pip Menu on TV. To run this test: `atest WMShellFlickerTests:TvPipMenuTests` */ @RequiresDevice class TvPipMenuTests : TvPipTestBase() { diff --git a/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/CloseAllAppsWithAppHeaderExit.kt b/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/CloseAllAppsWithAppHeaderExit.kt index 25f99c0857..e77a457291 100644 --- a/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/CloseAllAppsWithAppHeaderExit.kt +++ b/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/CloseAllAppsWithAppHeaderExit.kt @@ -27,7 +27,7 @@ import com.android.server.wm.flicker.helpers.DesktopModeAppHelper import com.android.server.wm.flicker.helpers.MailAppHelper import com.android.server.wm.flicker.helpers.NonResizeableAppHelper import com.android.server.wm.flicker.helpers.SimpleAppHelper -import com.android.window.flags2.Flags +import com.android.window.flags.Flags import com.android.wm.shell.flicker.service.common.Utils import org.junit.After import org.junit.Assume diff --git a/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/EnterDesktopWithDrag.kt b/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/EnterDesktopWithDrag.kt index 14272f7ade..fe139d2d24 100644 --- a/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/EnterDesktopWithDrag.kt +++ b/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/EnterDesktopWithDrag.kt @@ -25,7 +25,7 @@ import androidx.test.uiautomator.UiDevice import com.android.launcher3.tapl.LauncherInstrumentation import com.android.server.wm.flicker.helpers.DesktopModeAppHelper import com.android.server.wm.flicker.helpers.SimpleAppHelper -import com.android.window.flags2.Flags +import com.android.window.flags.Flags import com.android.wm.shell.flicker.service.common.Utils import org.junit.After import org.junit.Assume diff --git a/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/ResizeAppWithCornerResize.kt b/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/ResizeAppWithCornerResize.kt index ba1eb34f85..ac9089a5c1 100644 --- a/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/ResizeAppWithCornerResize.kt +++ b/wmshell/tests/flicker/service/src/com/android/wm/shell/flicker/service/desktopmode/scenarios/ResizeAppWithCornerResize.kt @@ -25,7 +25,7 @@ import androidx.test.uiautomator.UiDevice import com.android.launcher3.tapl.LauncherInstrumentation import com.android.server.wm.flicker.helpers.DesktopModeAppHelper import com.android.server.wm.flicker.helpers.SimpleAppHelper -import com.android.window.flags2.Flags +import com.android.window.flags.Flags import com.android.wm.shell.flicker.service.common.Utils import org.junit.After import org.junit.Assume diff --git a/wmshell/tests/flicker/src/com/android/wm/shell/flicker/BaseBenchmarkTest.kt b/wmshell/tests/flicker/src/com/android/wm/shell/flicker/BaseBenchmarkTest.kt index 88b1e6adee..d03c2f1077 100644 --- a/wmshell/tests/flicker/src/com/android/wm/shell/flicker/BaseBenchmarkTest.kt +++ b/wmshell/tests/flicker/src/com/android/wm/shell/flicker/BaseBenchmarkTest.kt @@ -20,10 +20,8 @@ import android.app.Instrumentation import android.tools.flicker.junit.FlickerBuilderProvider import android.tools.flicker.legacy.FlickerBuilder import android.tools.flicker.legacy.LegacyFlickerTest -import android.tools.flicker.rules.ClearAppCacheRule import androidx.test.platform.app.InstrumentationRegistry import com.android.launcher3.tapl.LauncherInstrumentation -import org.junit.ClassRule abstract class BaseBenchmarkTest @JvmOverloads @@ -46,8 +44,4 @@ constructor( transition() } } - - companion object { - @ClassRule @JvmField val clearCache = ClearAppCacheRule() - } } diff --git a/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/CommonAssertions.kt b/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/CommonAssertions.kt index 770efbc6d5..509f4f202b 100644 --- a/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/CommonAssertions.kt +++ b/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/CommonAssertions.kt @@ -99,27 +99,6 @@ fun LegacyFlickerTest.splitScreenDividerIsInvisibleAtStart() { assertLayersStart { this.isInvisible(SPLIT_SCREEN_DIVIDER_COMPONENT) } } -fun LegacyFlickerTest.tilingDividerIsVisibleAtStart() { - assertLayersStart { this.isVisible(TILING_SPLIT_DIVIDER) } -} - -fun LegacyFlickerTest.tilingDividerIsVisibleAtEnd() { - assertLayersEnd { this.isVisible(TILING_SPLIT_DIVIDER) } -} - -fun LegacyFlickerTest.tilingDividerIsInvisibleAtEnd() { - assertLayersEnd { this.isInvisible(TILING_SPLIT_DIVIDER) } -} - -fun LegacyFlickerTest.tilingDividerIsInvisibleAtStart() { - assertLayersStart { this.isInvisible(TILING_SPLIT_DIVIDER) } -} - - -fun LegacyFlickerTest.tilingScreenDividerIsInvisibleAtEnd() { - assertLayersEnd { this.isInvisible(TILING_SPLIT_DIVIDER) } -} - fun LegacyFlickerTest.splitScreenDividerIsInvisibleAtEnd() { assertLayersEnd { this.isInvisible(SPLIT_SCREEN_DIVIDER_COMPONENT) } } @@ -275,16 +254,6 @@ fun LayersTraceSubject.splitAppLayerBoundsSnapToDivider( } } -/** - * Checks that surfaces are still within the expected region after snapping to a snap point. - * - * @param component The component we are checking (should be one of the two split apps) - * @param landscapePosLeft If [true], and device is in left/right split, app is on the left side of - * the screen. Has no meaning if device is in top/bottom split. - * @param portraitPosTop If [true], and device is in top/bottom split, app is on the top side of - * the screen. Has no meaning if device is in left/right split. - * @param rotation The rotation state of the display. - */ fun LayerTraceEntrySubject.splitAppLayerBoundsSnapToDivider( component: IComponentMatcher, landscapePosLeft: Boolean, @@ -299,12 +268,10 @@ fun LayerTraceEntrySubject.splitAppLayerBoundsSnapToDivider( visibleRegion(component).isNotEmpty() visibleRegion(component) .coversAtMost( - // TODO (b/403082705): Should use the new method for determining left/right split. if (displayBounds.width() > displayBounds.height()) { if (landscapePosLeft) { Region( - // TODO (b/403304310): Check if we're in an offscreen-enabled mode. - -displayBounds.right, // the receding app can go offscreen + 0, 0, (dividerRegion.left + dividerRegion.right) / 2, displayBounds.bottom @@ -313,7 +280,7 @@ fun LayerTraceEntrySubject.splitAppLayerBoundsSnapToDivider( Region( (dividerRegion.left + dividerRegion.right) / 2, 0, - displayBounds.right * 2, // the receding app can go offscreen + displayBounds.right, displayBounds.bottom ) } @@ -321,7 +288,7 @@ fun LayerTraceEntrySubject.splitAppLayerBoundsSnapToDivider( if (portraitPosTop) { Region( 0, - -displayBounds.bottom, // the receding app can go offscreen + 0, displayBounds.right, (dividerRegion.top + dividerRegion.bottom) / 2 ) @@ -330,7 +297,7 @@ fun LayerTraceEntrySubject.splitAppLayerBoundsSnapToDivider( 0, (dividerRegion.top + dividerRegion.bottom) / 2, displayBounds.right, - displayBounds.bottom * 2 // the receding app can go offscreen + displayBounds.bottom ) } } @@ -370,21 +337,6 @@ fun LegacyFlickerTest.appWindowIsInvisibleAtEnd(component: IComponentMatcher) { assertWmEnd { this.isAppWindowInvisible(component) } } -fun LegacyFlickerTest.appWindowOnTopAtStart(component: IComponentMatcher) { - assertWmStart { this.isAppWindowOnTop(component) } -} - -fun LegacyFlickerTest.appWindowOnTopAtEnd(component: IComponentMatcher) { - assertWmEnd { this.isAppWindowOnTop(component) } -} - -fun LegacyFlickerTest.appWindowInsideDisplayBoundsAtEnd(component: IComponentMatcher) { - assertWmEnd { - val displayBounds = WindowUtils.getDisplayBounds(scenario.endRotation) - visibleRegion(component).coversAtMost(displayBounds) - } -} - fun LegacyFlickerTest.appWindowIsNotContainAtStart(component: IComponentMatcher) { assertWmStart { this.notContains(component) } } diff --git a/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/CommonConstants.kt b/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/CommonConstants.kt index da4c5d3e07..fb21fcceea 100644 --- a/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/CommonConstants.kt +++ b/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/CommonConstants.kt @@ -25,7 +25,6 @@ const val LAUNCHER_UI_PACKAGE_NAME = "com.google.android.apps.nexuslauncher" val APP_PAIR_SPLIT_DIVIDER_COMPONENT = ComponentNameMatcher("", "AppPairSplitDivider#") val DOCKED_STACK_DIVIDER_COMPONENT = ComponentNameMatcher("", "DockedStackDivider#") val SPLIT_SCREEN_DIVIDER_COMPONENT = ComponentNameMatcher("", "StageCoordinatorSplitDivider#") -val TILING_SPLIT_DIVIDER = ComponentNameMatcher("", "DesktopTilingWindowDecoration#") val SPLIT_DECOR_MANAGER = ComponentNameMatcher("", "SplitDecorManager#") enum class Direction { diff --git a/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/ICommonAssertions.kt b/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/ICommonAssertions.kt index acaf021981..4465a16a8e 100644 --- a/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/ICommonAssertions.kt +++ b/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/ICommonAssertions.kt @@ -28,16 +28,12 @@ import com.android.server.wm.flicker.statusBarLayerPositionAtStartAndEnd import com.android.server.wm.flicker.statusBarWindowIsAlwaysVisible import com.android.server.wm.flicker.taskBarLayerIsVisibleAtStartAndEnd import com.android.server.wm.flicker.taskBarWindowIsAlwaysVisible -import com.android.wm.shell.Flags import org.junit.Assume import org.junit.Test interface ICommonAssertions { val flicker: LegacyFlickerTest - val usesTaskbar: Boolean - get() = flicker.scenario.isTablet || Flags.enableTaskbarOnPhones() - /** Checks that all parts of the screen are covered during the transition */ @Presubmit @Test fun entireScreenCovered() = flicker.entireScreenCovered() @@ -47,7 +43,7 @@ interface ICommonAssertions { @Presubmit @Test fun navBarLayerIsVisibleAtStartAndEnd() { - Assume.assumeFalse(usesTaskbar) + Assume.assumeFalse(flicker.scenario.isTablet) flicker.navBarLayerIsVisibleAtStartAndEnd() } @@ -58,7 +54,7 @@ interface ICommonAssertions { @Presubmit @Test fun navBarLayerPositionAtStartAndEnd() { - Assume.assumeFalse(usesTaskbar) + Assume.assumeFalse(flicker.scenario.isTablet) flicker.navBarLayerPositionAtStartAndEnd() } @@ -70,7 +66,7 @@ interface ICommonAssertions { @Presubmit @Test fun navBarWindowIsAlwaysVisible() { - Assume.assumeFalse(usesTaskbar) + Assume.assumeFalse(flicker.scenario.isTablet) flicker.navBarWindowIsAlwaysVisible() } @@ -80,7 +76,7 @@ interface ICommonAssertions { @Presubmit @Test fun taskBarLayerIsVisibleAtStartAndEnd() { - Assume.assumeTrue(usesTaskbar) + Assume.assumeTrue(flicker.scenario.isTablet) flicker.taskBarLayerIsVisibleAtStartAndEnd() } @@ -92,7 +88,7 @@ interface ICommonAssertions { @Presubmit @Test fun taskBarWindowIsAlwaysVisible() { - Assume.assumeTrue(usesTaskbar) + Assume.assumeTrue(flicker.scenario.isTablet) flicker.taskBarWindowIsAlwaysVisible() } diff --git a/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/SplitScreenUtils.kt b/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/SplitScreenUtils.kt index e54930d730..c4954f9017 100644 --- a/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/SplitScreenUtils.kt +++ b/wmshell/tests/flicker/src/com/android/wm/shell/flicker/utils/SplitScreenUtils.kt @@ -17,15 +17,11 @@ package com.android.wm.shell.flicker.utils import android.app.Instrumentation -import android.app.UiAutomation -import android.content.Context import android.graphics.Point import android.os.SystemClock import android.tools.Rotation -import android.tools.device.apphelpers.IStandardAppHelper import android.tools.device.apphelpers.StandardAppHelper import android.tools.flicker.rules.ChangeDisplayOrientationRule -import android.tools.helpers.WindowUtils import android.tools.traces.component.ComponentNameMatcher import android.tools.traces.component.IComponentMatcher import android.tools.traces.component.IComponentNameMatcher @@ -106,8 +102,8 @@ object SplitScreenUtils { wmHelper: WindowManagerStateHelper, tapl: LauncherInstrumentation, device: UiDevice, - primaryApp: IStandardAppHelper, - secondaryApp: IStandardAppHelper, + primaryApp: StandardAppHelper, + secondaryApp: StandardAppHelper, rotation: Rotation ) { primaryApp.launchViaIntent(wmHelper) @@ -121,8 +117,8 @@ object SplitScreenUtils { fun enterSplitViaIntent( wmHelper: WindowManagerStateHelper, - primaryApp: IStandardAppHelper, - secondaryApp: IStandardAppHelper + primaryApp: StandardAppHelper, + secondaryApp: StandardAppHelper ) { val stringExtras = mapOf(Primary.EXTRA_LAUNCH_ADJACENT to "true") primaryApp.launchViaIntent(wmHelper, null, null, stringExtras) @@ -311,18 +307,12 @@ object SplitScreenUtils { } } - /** - * Drags the divider, then releases, making it snap to a new snap point. - */ fun dragDividerToResizeAndWait(device: UiDevice, wmHelper: WindowManagerStateHelper) { - // Find the first display that is turned on (making the assumption that there is only one). val displayBounds = - wmHelper.currentState.layerState.displays.firstOrNull { !it.isVirtual && it.isOn } - ?.layerStackSpace ?: error("Display not found") + wmHelper.currentState.layerState.displays.firstOrNull { !it.isVirtual }?.layerStackSpace + ?: error("Display not found") val dividerBar = device.wait(Until.findObject(dividerBarSelector), TIMEOUT_MS) - // Drag to a point on the lower left of the screen -- this will cause the divider to snap - // to the left- or bottom-side snap point, shrinking the "primary" test app. - dividerBar.drag(Point(displayBounds.width() * 1 / 4, displayBounds.height() * 3 / 4), 200) + dividerBar.drag(Point(displayBounds.width() * 1 / 3, displayBounds.height() * 2 / 3), 200) wmHelper .StateSyncBuilder() @@ -356,40 +346,13 @@ object SplitScreenUtils { ) } - fun doubleTapDividerToSwitch(device: UiDevice, uiAutomation: UiAutomation) { + fun doubleTapDividerToSwitch(device: UiDevice) { val dividerBar = device.wait(Until.findObject(dividerBarSelector), TIMEOUT_MS) - val x = dividerBar.visibleCenter.x.toFloat() - val y = dividerBar.visibleCenter.y.toFloat() - - // To send a double-tap action, we set a DOWN event, then UP, then DOWN, then, UP. - val startTime = SystemClock.uptimeMillis() - val timeOfFirstUp = startTime + ViewConfiguration.getTapTimeout() - // Between the two taps, we wait an arbitrary amount of time between the min and max times - // for a double-tap. - val timeOfSecondDown = timeOfFirstUp + ViewConfiguration.getDoubleTapMinTime() + - ((ViewConfiguration.getDoubleTapTimeout() - - ViewConfiguration.getDoubleTapMinTime()) / 4) - val timeOfSecondUp = timeOfSecondDown + ViewConfiguration.getTapTimeout() - - val downEvent = MotionEvent.obtain(startTime, startTime, MotionEvent.ACTION_DOWN, x, y, - 0 /* metaState */) - downEvent.setSource(InputDevice.SOURCE_TOUCHSCREEN) - uiAutomation.injectInputEvent(downEvent, true) - - val upEvent = MotionEvent.obtain(startTime, timeOfFirstUp, MotionEvent.ACTION_UP, x, y, - 0 /* metaState */) - upEvent.setSource(InputDevice.SOURCE_TOUCHSCREEN) - uiAutomation.injectInputEvent(upEvent, true) - - val downEvent2 = MotionEvent.obtain(timeOfSecondDown, timeOfSecondDown, - MotionEvent.ACTION_DOWN, x, y, 0 /* metaState */) - downEvent2.setSource(InputDevice.SOURCE_TOUCHSCREEN) - uiAutomation.injectInputEvent(downEvent2, true) - - val upEvent2 = MotionEvent.obtain(timeOfSecondDown, timeOfSecondUp, MotionEvent.ACTION_UP, - x, y, 0 /* metaState */) - upEvent2.setSource(InputDevice.SOURCE_TOUCHSCREEN) - uiAutomation.injectInputEvent(upEvent2, true) + val interval = + (ViewConfiguration.getDoubleTapTimeout() + ViewConfiguration.getDoubleTapMinTime()) / 2 + dividerBar.click() + SystemClock.sleep(interval.toLong()) + dividerBar.click() } fun copyContentInSplit( @@ -429,24 +392,4 @@ object SplitScreenUtils { error("Fail to copy content in split") } } - - fun isLeftRightSplit(context: Context, rotation: Rotation, displaySizeDp: Point): Boolean { - val allowLeftRightSplit = context.resources.getBoolean( - com.android.internal.R.bool.config_leftRightSplitInPortrait) - val displayBounds = WindowUtils.getDisplayBounds(rotation) - val isLandscape = displayBounds.width() > displayBounds.height() - if (allowLeftRightSplit && isTablet(displaySizeDp)) { - // Certain devices allow left/right split in portrait, so they end up with top/bottom - // split in landscape - return !isLandscape - } else { - return isLandscape - } - } - - fun isTablet(displaySizeDp: Point): Boolean { - val LARGE_SCREEN_DP_THRESHOLD = 600 - return displaySizeDp.x >= LARGE_SCREEN_DP_THRESHOLD - && displaySizeDp.y >= LARGE_SCREEN_DP_THRESHOLD - } } diff --git a/wmshell/tests/unittest/Android.bp b/wmshell/tests/unittest/Android.bp index ba117c0466..13f95ccea6 100644 --- a/wmshell/tests/unittest/Android.bp +++ b/wmshell/tests/unittest/Android.bp @@ -37,42 +37,33 @@ android_test { ], static_libs: [ - "//frameworks/libs/systemui/mechanics:mechanics-testing", - "TestParameterInjector", - "WMShellTests-utils", "WindowManager-Shell", - "androidx.core_core-animation-testing", - "androidx.datastore_datastore", - "androidx.dynamicanimation_dynamicanimation", - "androidx.test.ext.junit", - "androidx.test.rules", - "androidx.test.runner", - "com.android.window.flags.window-aconfig-java", - "com_android_launcher3_flags_lib", - "com_android_wm_shell_flags_lib", - "dagger2", - "flag-junit", - "frameworks-base-testutils", "junit", - "kotlin-test", + "flag-junit", + "androidx.test.runner", + "androidx.test.rules", + "androidx.test.ext.junit", + "androidx.dynamicanimation_dynamicanimation", + "dagger2", + "frameworks-base-testutils", "kotlinx-coroutines-android", "kotlinx-coroutines-core", - "kotlinx_coroutines_test", "mockito-kotlin2", "mockito-target-extended-minus-junit4", - "platform-compat-test-rules", - "platform-parametric-runner-lib", - "platform-test-annotations", + "truth", + "testables", "platform-test-annotations", "servicestests-utils", - "testables", - "truth", + "com_android_wm_shell_flags_lib", + "guava-android-testlib", + "com.android.window.flags.window-aconfig-java", + "platform-test-annotations", ], libs: [ - "android.test.base.stubs.system", - "android.test.mock.stubs.system", - "android.test.runner.stubs.system", + "android.test.mock", + "android.test.base", + "android.test.runner", ], jni_libs: [ @@ -98,10 +89,3 @@ android_test { "com.android.wm.shell.tests", ], } - -test_module_config { - name: "WMShellUnitTests_shell_back", - base: "WMShellUnitTests", - test_suites: ["device-tests"], - include_filters: ["com.android.wm.shell.back"], -} diff --git a/wmshell/tests/unittest/AndroidTest.xml b/wmshell/tests/unittest/AndroidTest.xml index 90363ee457..21ed2c075d 100644 --- a/wmshell/tests/unittest/AndroidTest.xml +++ b/wmshell/tests/unittest/AndroidTest.xml @@ -27,7 +27,5 @@ <option name="package" value="com.android.wm.shell.tests" /> <option name="runner" value="androidx.test.runner.AndroidJUnitRunner" /> <option name="hidden-api-checks" value="false"/> - <!-- Ignores tests introduced by guava-android-testlib --> - <option name="exclude-annotation" value="org.junit.Ignore"/> </test> </configuration> diff --git a/wmshell/tests/unittest/res/values/dimen.xml b/wmshell/tests/unittest/res/values/dimen.xml index 33ea0baa4f..aa1b241892 100644 --- a/wmshell/tests/unittest/res/values/dimen.xml +++ b/wmshell/tests/unittest/res/values/dimen.xml @@ -18,8 +18,6 @@ <!-- Resources used in WindowDecorationTests --> <dimen name="test_freeform_decor_caption_height">32dp</dimen> <dimen name="test_freeform_decor_caption_menu_width">216dp</dimen> - <dimen name="test_freeform_shadow_radius">20dp</dimen> - <dimen name="test_freeform_corner_radius">16dp</dimen> <dimen name="test_window_decor_left_outset">10dp</dimen> <dimen name="test_window_decor_top_outset">20dp</dimen> <dimen name="test_window_decor_right_outset">30dp</dimen> diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/ShellTaskOrganizerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/ShellTaskOrganizerTests.java index 4a90c7f7b6..f9b4108bc8 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/ShellTaskOrganizerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/ShellTaskOrganizerTests.java @@ -16,9 +16,10 @@ package com.android.wm.shell; -import static android.app.WindowConfiguration.ACTIVITY_TYPE_DREAM; -import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; -import static android.app.WindowConfiguration.ACTIVITY_TYPE_RECENTS; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_DISMISSED; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_HIDDEN; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; @@ -30,31 +31,28 @@ import static com.android.dx.mockito.inline.extended.ExtendedMockito.spy; import static com.android.wm.shell.ShellTaskOrganizer.TASK_LISTENER_TYPE_FULLSCREEN; import static com.android.wm.shell.ShellTaskOrganizer.TASK_LISTENER_TYPE_MULTI_WINDOW; import static com.android.wm.shell.ShellTaskOrganizer.TASK_LISTENER_TYPE_PIP; -import static com.android.wm.shell.ShellTaskOrganizer.isHomeTaskOnDefaultDisplay; +import static com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; +import static org.junit.Assume.assumeFalse; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.clearInvocations; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.never; import android.app.ActivityManager.RunningTaskInfo; -import android.app.TaskInfo; import android.content.LocusId; import android.content.pm.ParceledListSlice; -import android.graphics.Point; -import android.graphics.Rect; import android.os.Binder; import android.os.IBinder; import android.os.RemoteException; import android.util.SparseArray; import android.view.SurfaceControl; +import android.view.SurfaceSession; import android.window.ITaskOrganizer; import android.window.ITaskOrganizerController; import android.window.TaskAppearedInfo; @@ -65,8 +63,6 @@ import androidx.test.filters.SmallTest; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.compatui.CompatUIController; -import com.android.wm.shell.compatui.api.CompatUIInfo; -import com.android.wm.shell.compatui.impl.CompatUIEvents; import com.android.wm.shell.recents.RecentTasksController; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellInit; @@ -74,13 +70,11 @@ import com.android.wm.shell.sysui.ShellInit; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; -import org.mockito.ArgumentCaptor; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import java.util.ArrayList; import java.util.Optional; -import java.util.concurrent.atomic.AtomicInteger; /** * Tests for the shell task organizer. @@ -171,6 +165,19 @@ public class ShellTaskOrganizerTests extends ShellTestCase { verify(mTaskOrganizerController).registerTaskOrganizer(any(ITaskOrganizer.class)); } + @Test + public void testTaskLeashReleasedAfterVanished() throws RemoteException { + assumeFalse(ENABLE_SHELL_TRANSITIONS); + RunningTaskInfo taskInfo = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_MULTI_WINDOW); + SurfaceControl taskLeash = new SurfaceControl.Builder(new SurfaceSession()) + .setName("task").build(); + mOrganizer.registerOrganizer(); + mOrganizer.onTaskAppeared(taskInfo, taskLeash); + assertTrue(taskLeash.isValid()); + mOrganizer.onTaskVanished(taskInfo); + assertTrue(!taskLeash.isValid()); + } + @Test public void testOneListenerPerType() { mOrganizer.addListenerForType(new TrackingTaskListener(), TASK_LISTENER_TYPE_MULTI_WINDOW); @@ -280,50 +287,6 @@ public class ShellTaskOrganizerTests extends ShellTestCase { assertTrue(pipListener.appeared.contains(taskInfo)); } - @Test - public void testAddSameListenerForTaskId() { - RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_MULTI_WINDOW); - TrackingTaskListener task1Listener = new TrackingTaskListener(); - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - - // Add task 1 specific listener - mOrganizer.addListenerForTaskId(task1Listener, 1); - assertTrue(task1Listener.appeared.contains(task1)); - - // Add same listener for the task, assert it doesn't throw and also onTaskAppeared() doesn't - // get called it again - mOrganizer.addListenerForTaskId(task1Listener, 1); - assertEquals(1, task1Listener.appeared.size()); - } - - @Test - public void testAddPendingListenerForTaskId() { - RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_MULTI_WINDOW); - TrackingTaskListener listener = new TrackingTaskListener(); - - // Add the listener first, then report the task to the organizer - mOrganizer.addListenerForTaskId(listener, 1); - assertFalse(mOrganizer.hasTaskListener(1)); - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - - // Verify that the listener got notified anyways - assertTrue(listener.appeared.contains(task1)); - } - - @Test - public void testRemovePendingListenerForTaskId() { - RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_MULTI_WINDOW); - TrackingTaskListener listener = new TrackingTaskListener(); - - // Add the listener, remove the listener, then report the task to the organizer - mOrganizer.addListenerForTaskId(listener, 1); - mOrganizer.removeListener(listener); - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - - // Verify that the pending listener does not get notified - assertFalse(listener.appeared.contains(task1)); - } - @Test public void testAddListenerForTaskId_afterTypeListener() { RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_MULTI_WINDOW); @@ -352,24 +315,6 @@ public class ShellTaskOrganizerTests extends ShellTestCase { assertFalse(mwListener.appeared.contains(task1)); } - @Test - public void testMigrateCookieToTaskOnInfoChanged() { - RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_MULTI_WINDOW); - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - - TrackingTaskListener mwListener = new TrackingTaskListener(); - mOrganizer.addListenerForType(mwListener, TASK_LISTENER_TYPE_MULTI_WINDOW); - - TrackingTaskListener cookieListener = new TrackingTaskListener(); - IBinder cookie = new Binder(); - task1.addLaunchCookie(cookie); - mOrganizer.setPendingLaunchCookieListener(cookie, cookieListener); - - mOrganizer.onTaskInfoChanged(task1); - - assertTrue(mOrganizer.hasTaskListener(task1.taskId)); - } - @Test public void testGetTaskListener() { RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_MULTI_WINDOW); @@ -420,37 +365,37 @@ public class ShellTaskOrganizerTests extends ShellTestCase { final RunningTaskInfo taskInfo1 = createTaskInfo(/* taskId= */ 12, WINDOWING_MODE_FULLSCREEN); taskInfo1.displayId = DEFAULT_DISPLAY; - taskInfo1.appCompatTaskInfo.setTopActivityInSizeCompat(false); + taskInfo1.appCompatTaskInfo.topActivityInSizeCompat = false; final TrackingTaskListener taskListener = new TrackingTaskListener(); mOrganizer.addListenerForType(taskListener, TASK_LISTENER_TYPE_FULLSCREEN); mOrganizer.onTaskAppeared(taskInfo1, /* leash= */ null); // sizeCompatActivity is null if top activity is not in size compat. - verifyOnCompatInfoChangedInvokedWith(taskInfo1, null /* taskListener */); + verify(mCompatUI).onCompatInfoChanged(taskInfo1, null /* taskListener */); // sizeCompatActivity is non-null if top activity is in size compat. clearInvocations(mCompatUI); final RunningTaskInfo taskInfo2 = createTaskInfo(taskInfo1.taskId, taskInfo1.getWindowingMode()); taskInfo2.displayId = taskInfo1.displayId; - taskInfo2.appCompatTaskInfo.setTopActivityInSizeCompat(true); + taskInfo2.appCompatTaskInfo.topActivityInSizeCompat = true; taskInfo2.isVisible = true; mOrganizer.onTaskInfoChanged(taskInfo2); - verifyOnCompatInfoChangedInvokedWith(taskInfo2, taskListener); + verify(mCompatUI).onCompatInfoChanged(taskInfo2, taskListener); // Not show size compat UI if task is not visible. clearInvocations(mCompatUI); final RunningTaskInfo taskInfo3 = createTaskInfo(taskInfo1.taskId, taskInfo1.getWindowingMode()); taskInfo3.displayId = taskInfo1.displayId; - taskInfo3.appCompatTaskInfo.setTopActivityInSizeCompat(true); + taskInfo3.appCompatTaskInfo.topActivityInSizeCompat = true; taskInfo3.isVisible = false; mOrganizer.onTaskInfoChanged(taskInfo3); - verifyOnCompatInfoChangedInvokedWith(taskInfo3, null /* taskListener */); + verify(mCompatUI).onCompatInfoChanged(taskInfo3, null /* taskListener */); clearInvocations(mCompatUI); mOrganizer.onTaskVanished(taskInfo1); - verifyOnCompatInfoChangedInvokedWith(taskInfo1, null /* taskListener */); + verify(mCompatUI).onCompatInfoChanged(taskInfo1, null /* taskListener */); } @Test @@ -458,14 +403,14 @@ public class ShellTaskOrganizerTests extends ShellTestCase { final RunningTaskInfo taskInfo1 = createTaskInfo(/* taskId= */ 12, WINDOWING_MODE_FULLSCREEN); taskInfo1.displayId = DEFAULT_DISPLAY; - taskInfo1.appCompatTaskInfo.setEligibleForLetterboxEducation(false); + taskInfo1.appCompatTaskInfo.topActivityEligibleForLetterboxEducation = false; final TrackingTaskListener taskListener = new TrackingTaskListener(); mOrganizer.addListenerForType(taskListener, TASK_LISTENER_TYPE_FULLSCREEN); mOrganizer.onTaskAppeared(taskInfo1, /* leash= */ null); // Task listener sent to compat UI is null if top activity isn't eligible for letterbox // education. - verifyOnCompatInfoChangedInvokedWith(taskInfo1, null /* taskListener */); + verify(mCompatUI).onCompatInfoChanged(taskInfo1, null /* taskListener */); // Task listener is non-null if top activity is eligible for letterbox education and task // is visible. @@ -473,24 +418,102 @@ public class ShellTaskOrganizerTests extends ShellTestCase { final RunningTaskInfo taskInfo2 = createTaskInfo(taskInfo1.taskId, WINDOWING_MODE_FULLSCREEN); taskInfo2.displayId = taskInfo1.displayId; - taskInfo2.appCompatTaskInfo.setEligibleForLetterboxEducation(true); + taskInfo2.appCompatTaskInfo.topActivityEligibleForLetterboxEducation = true; taskInfo2.isVisible = true; mOrganizer.onTaskInfoChanged(taskInfo2); - verifyOnCompatInfoChangedInvokedWith(taskInfo2, taskListener); + verify(mCompatUI).onCompatInfoChanged(taskInfo2, taskListener); // Task listener is null if task is invisible. clearInvocations(mCompatUI); final RunningTaskInfo taskInfo3 = createTaskInfo(taskInfo1.taskId, WINDOWING_MODE_FULLSCREEN); taskInfo3.displayId = taskInfo1.displayId; - taskInfo3.appCompatTaskInfo.setEligibleForLetterboxEducation(true); + taskInfo3.appCompatTaskInfo.topActivityEligibleForLetterboxEducation = true; taskInfo3.isVisible = false; mOrganizer.onTaskInfoChanged(taskInfo3); - verifyOnCompatInfoChangedInvokedWith(taskInfo3, null /* taskListener */); + verify(mCompatUI).onCompatInfoChanged(taskInfo3, null /* taskListener */); clearInvocations(mCompatUI); mOrganizer.onTaskVanished(taskInfo1); - verifyOnCompatInfoChangedInvokedWith(taskInfo1, null /* taskListener */); + verify(mCompatUI).onCompatInfoChanged(taskInfo1, null /* taskListener */); + } + + @Test + public void testOnCameraCompatActivityChanged() { + final RunningTaskInfo taskInfo1 = createTaskInfo(/* taskId= */ 1, + WINDOWING_MODE_FULLSCREEN); + taskInfo1.displayId = DEFAULT_DISPLAY; + taskInfo1.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState = + CAMERA_COMPAT_CONTROL_HIDDEN; + final TrackingTaskListener taskListener = new TrackingTaskListener(); + mOrganizer.addListenerForType(taskListener, TASK_LISTENER_TYPE_FULLSCREEN); + mOrganizer.onTaskAppeared(taskInfo1, /* leash= */ null); + + // Task listener sent to compat UI is null if top activity doesn't request a camera + // compat control. + verify(mCompatUI).onCompatInfoChanged(taskInfo1, null /* taskListener */); + + // Task listener is non-null when request a camera compat control for a visible task. + clearInvocations(mCompatUI); + final RunningTaskInfo taskInfo2 = + createTaskInfo(taskInfo1.taskId, taskInfo1.getWindowingMode()); + taskInfo2.displayId = taskInfo1.displayId; + taskInfo2.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState = + CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + taskInfo2.isVisible = true; + mOrganizer.onTaskInfoChanged(taskInfo2); + verify(mCompatUI).onCompatInfoChanged(taskInfo2, taskListener); + + // CompatUIController#onCompatInfoChanged is called when requested state for a camera + // compat control changes for a visible task. + clearInvocations(mCompatUI); + final RunningTaskInfo taskInfo3 = + createTaskInfo(taskInfo1.taskId, taskInfo1.getWindowingMode()); + taskInfo3.displayId = taskInfo1.displayId; + taskInfo3.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState = + CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED; + taskInfo3.isVisible = true; + mOrganizer.onTaskInfoChanged(taskInfo3); + verify(mCompatUI).onCompatInfoChanged(taskInfo3, taskListener); + + // CompatUIController#onCompatInfoChanged is called when a top activity goes in size compat + // mode for a visible task that has a compat control. + clearInvocations(mCompatUI); + final RunningTaskInfo taskInfo4 = + createTaskInfo(taskInfo1.taskId, taskInfo1.getWindowingMode()); + taskInfo4.displayId = taskInfo1.displayId; + taskInfo4.appCompatTaskInfo.topActivityInSizeCompat = true; + taskInfo4.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState = + CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED; + taskInfo4.isVisible = true; + mOrganizer.onTaskInfoChanged(taskInfo4); + verify(mCompatUI).onCompatInfoChanged(taskInfo4, taskListener); + + // Task linster is null when a camera compat control is dimissed for a visible task. + clearInvocations(mCompatUI); + final RunningTaskInfo taskInfo5 = + createTaskInfo(taskInfo1.taskId, taskInfo1.getWindowingMode()); + taskInfo5.displayId = taskInfo1.displayId; + taskInfo5.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState = + CAMERA_COMPAT_CONTROL_DISMISSED; + taskInfo5.isVisible = true; + mOrganizer.onTaskInfoChanged(taskInfo5); + verify(mCompatUI).onCompatInfoChanged(taskInfo5, null /* taskListener */); + + // Task linster is null when request a camera compat control for a invisible task. + clearInvocations(mCompatUI); + final RunningTaskInfo taskInfo6 = + createTaskInfo(taskInfo1.taskId, taskInfo1.getWindowingMode()); + taskInfo6.displayId = taskInfo1.displayId; + taskInfo6.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState = + CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + taskInfo6.isVisible = false; + mOrganizer.onTaskInfoChanged(taskInfo6); + verify(mCompatUI).onCompatInfoChanged(taskInfo6, null /* taskListener */); + + clearInvocations(mCompatUI); + mOrganizer.onTaskVanished(taskInfo1); + verify(mCompatUI).onCompatInfoChanged(taskInfo1, null /* taskListener */); } @Test @@ -617,8 +640,7 @@ public class ShellTaskOrganizerTests extends ShellTestCase { mOrganizer.onTaskAppeared(task1, /* leash= */ null); - mOrganizer.onSizeCompatRestartButtonClicked( - new CompatUIEvents.SizeCompatRestartButtonClicked(task1.taskId)); + mOrganizer.onSizeCompatRestartButtonClicked(task1.taskId); verify(mTaskOrganizerController).restartTaskTopActivityProcessIfVisible(task1.token); } @@ -644,9 +666,9 @@ public class ShellTaskOrganizerTests extends ShellTestCase { @Test public void testRecentTasks_visibilityChanges_shouldNotifyTaskController() { - RunningTaskInfo task1 = createFreeformTaskInfo(/* taskId= */ 1); + RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_FREEFORM); mOrganizer.onTaskAppeared(task1, /* leash= */ null); - RunningTaskInfo task2 = createFreeformTaskInfo(/* taskId= */ 1); + RunningTaskInfo task2 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_FREEFORM); task2.isVisible = false; mOrganizer.onTaskInfoChanged(task2); @@ -654,42 +676,6 @@ public class ShellTaskOrganizerTests extends ShellTestCase { verify(mRecentTasksController).onTaskRunningInfoChanged(task2); } - @Test - public void testRecentTasks_sizeChanges_shouldNotifyTaskController() { - RunningTaskInfo task1 = createFreeformTaskInfo(/* taskId= */ 1); - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - RunningTaskInfo task2 = createFreeformTaskInfo(/* taskId= */ 1); - task2.configuration.windowConfiguration.setAppBounds(new Rect(0, 0, 300, 400)); - - mOrganizer.onTaskInfoChanged(task2); - - verify(mRecentTasksController).onTaskRunningInfoChanged(task2); - } - - @Test - public void testRecentTasks_positionChanges_shouldNotifyTaskController() { - RunningTaskInfo task1 = createFreeformTaskInfo(/* taskId= */ 1); - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - RunningTaskInfo task2 = createFreeformTaskInfo(/* taskId= */ 1); - task2.positionInParent = new Point(200, 200); - - mOrganizer.onTaskInfoChanged(task2); - - verify(mRecentTasksController).onTaskRunningInfoChanged(task2); - } - - @Test - public void testRecentTasks_visibilityChanges_notFreeForm_shouldNotNotifyTaskController() { - RunningTaskInfo task1_visible = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_FULLSCREEN); - mOrganizer.onTaskAppeared(task1_visible, /* leash= */ null); - RunningTaskInfo task1_hidden = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_FULLSCREEN); - task1_hidden.isVisible = false; - - mOrganizer.onTaskInfoChanged(task1_hidden); - - verify(mRecentTasksController, never()).onTaskRunningInfoChanged(task1_hidden); - } - @Test public void testRecentTasks_windowingModeChanges_shouldNotifyTaskController() { RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_FULLSCREEN); @@ -701,141 +687,6 @@ public class ShellTaskOrganizerTests extends ShellTestCase { verify(mRecentTasksController).onTaskRunningInfoChanged(task2); } - @Test - public void testTaskAppearedListenerCallback() { - final RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_FULLSCREEN); - - final RunningTaskInfo[] updatedTasks = new RunningTaskInfo[1]; - - final ShellTaskOrganizer.TaskAppearedListener listener = - new ShellTaskOrganizer.TaskAppearedListener() { - @Override - public void onTaskAppeared(RunningTaskInfo taskInfo, SurfaceControl leash) { - updatedTasks[0] = taskInfo; - } - }; - - mOrganizer.addTaskAppearedListener(listener); - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - - assertEquals(updatedTasks[0], task1); - } - - @Test - public void testTaskInfoChangedListenerCallback() { - RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_FULLSCREEN); - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - - RunningTaskInfo[] vanishedTasks = new RunningTaskInfo[1]; - ShellTaskOrganizer.TaskInfoChangedListener listener = - new ShellTaskOrganizer.TaskInfoChangedListener() { - @Override - public void onTaskInfoChanged(RunningTaskInfo taskInfo) { - vanishedTasks[0] = taskInfo; - } - }; - mOrganizer.addTaskInfoChangedListener(listener); - mOrganizer.onTaskInfoChanged(task1); - - assertEquals(vanishedTasks[0], task1); - } - - @Test - public void testTaskVanishedCallback() { - RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_FULLSCREEN); - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - - RunningTaskInfo[] vanishedTasks = new RunningTaskInfo[1]; - ShellTaskOrganizer.TaskVanishedListener listener = - new ShellTaskOrganizer.TaskVanishedListener() { - @Override - public void onTaskVanished(RunningTaskInfo taskInfo) { - vanishedTasks[0] = taskInfo; - } - }; - mOrganizer.addTaskVanishedListener(listener); - mOrganizer.onTaskVanished(task1); - - assertEquals(vanishedTasks[0], task1); - } - - @Test - public void testSelfRemovingVanishedTaskListenersCallback() { - RunningTaskInfo task1 = createTaskInfo(/* taskId= */ 1, WINDOWING_MODE_FULLSCREEN); - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - - AtomicInteger calledListenerCount = new AtomicInteger(0); - ShellTaskOrganizer.TaskVanishedListener listener1 = getSelfRemovingVanishedListener( - mOrganizer, calledListenerCount); - ShellTaskOrganizer.TaskVanishedListener listener2 = getSelfRemovingVanishedListener( - mOrganizer, calledListenerCount); - mOrganizer.addTaskVanishedListener(listener1); - mOrganizer.addTaskVanishedListener(listener2); - mOrganizer.onTaskVanished(task1); - - assertEquals(2, calledListenerCount.get()); - - mOrganizer.onTaskAppeared(task1, /* leash= */ null); - mOrganizer.onTaskVanished(task1); - - // Count should remain the same if no new vanished listeners are added. - assertEquals(2, calledListenerCount.get()); - } - - @Test - public void testHomeTaskOnDefaultDisplay() { - RunningTaskInfo taskInfo = createTaskInfo( - /* taskId= */ 1, ACTIVITY_TYPE_HOME, DEFAULT_DISPLAY); - - assertTrue(isHomeTaskOnDefaultDisplay(taskInfo)); - } - - @Test - public void testNonHomeTaskOnDefaultDisplay() { - RunningTaskInfo taskInfo = createTaskInfo( - /* taskId= */ 1, ACTIVITY_TYPE_DREAM, DEFAULT_DISPLAY); - - assertFalse(isHomeTaskOnDefaultDisplay(taskInfo)); - } - - @Test - public void testHomeTaskOnExternalDisplay() { - RunningTaskInfo taskInfo = createTaskInfo( - /* taskId= */ 1, ACTIVITY_TYPE_HOME, /* displayId= */ 2); - - assertFalse(isHomeTaskOnDefaultDisplay(taskInfo)); - } - - @Test - public void testRecentTaskOnExternalDisplay() { - RunningTaskInfo taskInfo = createTaskInfo( - /* taskId= */ 1, ACTIVITY_TYPE_RECENTS, /* displayId= */ 3); - - assertFalse(isHomeTaskOnDefaultDisplay(taskInfo)); - } - - @Test - public void testGetHomeTaskSurface() { - RunningTaskInfo taskInfo = createTaskInfo( - /* taskId= */ 1, ACTIVITY_TYPE_HOME, /* displayId= */ 2); - SurfaceControl taskLeash = new SurfaceControl.Builder() - .setName("home_task").build(); - mOrganizer.onTaskAppeared(taskInfo, taskLeash); - assertNull(mOrganizer.getHomeTaskSurface(/* displayId= */ 0)); - assertEquals(mOrganizer.getHomeTaskSurface(/* displayId= */ 2), taskLeash); - } - - private static ShellTaskOrganizer.TaskVanishedListener getSelfRemovingVanishedListener( - ShellTaskOrganizer shellTaskOrganizer, AtomicInteger taskVanishedCalls) { - return new ShellTaskOrganizer.TaskVanishedListener() { - @Override - public void onTaskVanished(RunningTaskInfo taskInfo) { - shellTaskOrganizer.removeTaskVanishedListener(this); - taskVanishedCalls.incrementAndGet(); - } - }; - } - private static RunningTaskInfo createTaskInfo(int taskId, int windowingMode) { RunningTaskInfo taskInfo = new RunningTaskInfo(); taskInfo.taskId = taskId; @@ -843,28 +694,4 @@ public class ShellTaskOrganizerTests extends ShellTestCase { taskInfo.isVisible = true; return taskInfo; } - - private static RunningTaskInfo createTaskInfo(int taskId, int activityType, int displayId) { - RunningTaskInfo taskInfo = new RunningTaskInfo(); - taskInfo.taskId = taskId; - taskInfo.configuration.windowConfiguration.setActivityType(activityType); - taskInfo.displayId = displayId; - return taskInfo; - } - - private static RunningTaskInfo createFreeformTaskInfo(int taskId) { - RunningTaskInfo taskInfo = createTaskInfo(taskId, WINDOWING_MODE_FREEFORM); - taskInfo.positionInParent = new Point(100, 100); - taskInfo.configuration.windowConfiguration.setAppBounds(new Rect(0, 0, 200, 200)); - return taskInfo; - } - - private void verifyOnCompatInfoChangedInvokedWith(TaskInfo taskInfo, - ShellTaskOrganizer.TaskListener listener) { - final ArgumentCaptor<CompatUIInfo> capture = ArgumentCaptor.forClass(CompatUIInfo.class); - verify(mCompatUI).onCompatInfoChanged(capture.capture()); - final CompatUIInfo captureValue = capture.getValue(); - assertEquals(captureValue.getTaskInfo(), taskInfo); - assertEquals(captureValue.getListener(), listener); - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/ShellTestCase.java b/wmshell/tests/unittest/src/com/android/wm/shell/ShellTestCase.java index 79f1c4b514..51a20ee9d0 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/ShellTestCase.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/ShellTestCase.java @@ -17,26 +17,19 @@ package com.android.wm.shell; import static android.view.Display.DEFAULT_DISPLAY; - import static org.junit.Assume.assumeTrue; import android.content.Context; import android.content.pm.PackageManager; import android.hardware.display.DisplayManager; -import android.platform.test.flag.junit.CheckFlagsRule; -import android.platform.test.flag.junit.DeviceFlagsValueProvider; -import android.platform.test.flag.junit.SetFlagsRule; import android.testing.TestableContext; -import android.testing.TestableLooper; import androidx.test.platform.app.InstrumentationRegistry; -import com.android.internal.protolog.ProtoLog; +import com.android.internal.protolog.common.ProtoLog; import org.junit.After; import org.junit.Before; -import org.junit.ClassRule; -import org.junit.Rule; import org.mockito.MockitoAnnotations; /** @@ -44,16 +37,6 @@ import org.mockito.MockitoAnnotations; */ public abstract class ShellTestCase { - @ClassRule - public static final SetFlagsRule.ClassRule mClassRule = new SetFlagsRule.ClassRule(); - - @Rule - public final CheckFlagsRule mCheckFlagsRule = - DeviceFlagsValueProvider.createCheckFlagsRule(); - - @Rule - public final SetFlagsRule mSetFlagsRule = mClassRule.createSetFlagsRule(); - protected TestableContext mContext; private PackageManager mPm; @@ -62,9 +45,6 @@ public abstract class ShellTestCase { // Disable protolog tool when running the tests from studio ProtoLog.REQUIRE_PROTOLOGTOOL = false; - // Make sure ProtoLog is initialized before any logging occurs. - ProtoLog.init(); - MockitoAnnotations.initMocks(this); final Context context = InstrumentationRegistry.getInstrumentation().getTargetContext(); @@ -81,16 +61,6 @@ public abstract class ShellTestCase { @After public void shellTearDown() { - // In case someone set up a TestableLooper during the test, get rid of it because - // TestableLooper intrinsically leaks all past test method member fields in a - // big static list. - // - // TODO (b/261039202): don't use TestableLooper in WmShell tests at all. - if (TestableLooper.get(this) != null) { - TestableLooper.get(this).processAllMessages(); - TestableLooper.remove(this); - } - InstrumentationRegistry .getInstrumentation() .getUiAutomation() diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/TestRunningTaskInfoBuilder.java b/wmshell/tests/unittest/src/com/android/wm/shell/TestRunningTaskInfoBuilder.java index 443cbf101e..24f4d92af9 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/TestRunningTaskInfoBuilder.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/TestRunningTaskInfoBuilder.java @@ -20,40 +20,42 @@ import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD; import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.mock; + import android.annotation.NonNull; import android.app.ActivityManager; import android.app.WindowConfiguration; -import android.content.ComponentName; import android.content.Intent; import android.graphics.Point; import android.graphics.Rect; +import android.os.IBinder; import android.view.Display; +import android.window.IWindowContainerToken; import android.window.WindowContainerToken; public final class TestRunningTaskInfoBuilder { static int sNextTaskId = 500; private Rect mBounds = new Rect(0, 0, 100, 100); - private WindowContainerToken mToken = new MockToken().token(); + private WindowContainerToken mToken = createMockWCToken(); private int mParentTaskId = INVALID_TASK_ID; - private int mUid = INVALID_TASK_ID; - private int mTaskId = INVALID_TASK_ID; - private int mUserId = -1; private Intent mBaseIntent = new Intent(); - private ComponentName mBaseActivity = null; private @WindowConfiguration.ActivityType int mActivityType = ACTIVITY_TYPE_STANDARD; private @WindowConfiguration.WindowingMode int mWindowingMode = WINDOWING_MODE_UNDEFINED; - private @WindowConfiguration.ActivityType int mTopActivityType = ACTIVITY_TYPE_STANDARD; private int mDisplayId = Display.DEFAULT_DISPLAY; private ActivityManager.TaskDescription.Builder mTaskDescriptionBuilder = null; private final Point mPositionInParent = new Point(); private boolean mIsVisible = false; - private boolean mIsVisibleRequested = false; - private boolean mIsTopActivityTransparent = false; - private boolean mIsActivityStackTransparent = false; - private int mNumActivities = 1; private long mLastActiveTime; + public static WindowContainerToken createMockWCToken() { + final IWindowContainerToken itoken = mock(IWindowContainerToken.class); + final IBinder asBinder = mock(IBinder.class); + doReturn(asBinder).when(itoken).asBinder(); + return new WindowContainerToken(itoken); + } + public TestRunningTaskInfoBuilder setToken(WindowContainerToken token) { mToken = token; return this; @@ -69,24 +71,6 @@ public final class TestRunningTaskInfoBuilder { return this; } - /** Sets the task info's effective UID. */ - public TestRunningTaskInfoBuilder setUid(int uid) { - mUid = uid; - return this; - } - - /** Sets the task info's UID. */ - public TestRunningTaskInfoBuilder setTaskId(int taskId) { - mTaskId = taskId; - return this; - } - - /** Sets the task info's user id. */ - public TestRunningTaskInfoBuilder setUserId(int userId) { - mUserId = userId; - return this; - } - /** * Set {@link ActivityManager.RunningTaskInfo#baseIntent} for the task info, by default * an empty intent is assigned @@ -96,26 +80,12 @@ public final class TestRunningTaskInfoBuilder { return this; } - /** - * Set {@link ActivityManager.RunningTaskInfo#baseActivity} for the task info. - */ - public TestRunningTaskInfoBuilder setBaseActivity(@NonNull ComponentName activity) { - mBaseActivity = activity; - return this; - } - public TestRunningTaskInfoBuilder setActivityType( @WindowConfiguration.ActivityType int activityType) { mActivityType = activityType; return this; } - public TestRunningTaskInfoBuilder setTopActivityType( - @WindowConfiguration.ActivityType int activityType) { - mTopActivityType = activityType; - return this; - } - public TestRunningTaskInfoBuilder setWindowingMode( @WindowConfiguration.WindowingMode int windowingMode) { mWindowingMode = windowingMode; @@ -143,27 +113,6 @@ public final class TestRunningTaskInfoBuilder { return this; } - public TestRunningTaskInfoBuilder setVisibleRequested(boolean isVisible) { - mIsVisibleRequested = isVisible; - return this; - } - - public TestRunningTaskInfoBuilder setTopActivityTransparent(boolean isTopActivityTransparent) { - mIsTopActivityTransparent = isTopActivityTransparent; - return this; - } - - public TestRunningTaskInfoBuilder setActivityStackTransparent( - boolean isActivityStackTransparent) { - mIsActivityStackTransparent = isActivityStackTransparent; - return this; - } - - public TestRunningTaskInfoBuilder setNumActivities(int numActivities) { - mNumActivities = numActivities; - return this; - } - public TestRunningTaskInfoBuilder setLastActiveTime(long lastActiveTime) { mLastActiveTime = lastActiveTime; return this; @@ -171,15 +120,13 @@ public final class TestRunningTaskInfoBuilder { public ActivityManager.RunningTaskInfo build() { final ActivityManager.RunningTaskInfo info = new ActivityManager.RunningTaskInfo(); - info.taskId = (mTaskId == INVALID_TASK_ID) ? sNextTaskId++ : mTaskId; - info.effectiveUid = mUid; + info.taskId = sNextTaskId++; info.baseIntent = mBaseIntent; info.parentTaskId = mParentTaskId; info.displayId = mDisplayId; info.configuration.windowConfiguration.setBounds(mBounds); info.configuration.windowConfiguration.setActivityType(mActivityType); info.configuration.windowConfiguration.setWindowingMode(mWindowingMode); - info.topActivityType = mTopActivityType; info.token = mToken; info.isResizeable = true; info.supportsMultiWindow = true; @@ -187,13 +134,7 @@ public final class TestRunningTaskInfoBuilder { mTaskDescriptionBuilder != null ? mTaskDescriptionBuilder.build() : null; info.positionInParent = mPositionInParent; info.isVisible = mIsVisible; - info.isVisibleRequested = mIsVisibleRequested; - info.isTopActivityTransparent = mIsTopActivityTransparent; - info.isActivityStackTransparent = mIsActivityStackTransparent; - info.numActivities = mNumActivities; info.lastActiveTime = mLastActiveTime; - info.userId = mUserId; - info.baseActivity = mBaseActivity; return info; } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/TestShellExecutor.java b/wmshell/tests/unittest/src/com/android/wm/shell/TestShellExecutor.java index f31722d3c1..4998702201 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/TestShellExecutor.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/TestShellExecutor.java @@ -19,7 +19,6 @@ package com.android.wm.shell; import com.android.wm.shell.common.ShellExecutor; import java.util.ArrayList; -import java.util.List; /** * Really basic test executor. It just gathers all events in a blob. The only option is to @@ -53,9 +52,4 @@ public class TestShellExecutor implements ShellExecutor { mRunnables.remove(0).run(); } } - - /** Returns the list of callbacks for this executor. */ - public List<Runnable> getCallbacks() { - return mRunnables; - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunnerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunnerTests.java index bc965b9729..bd20c11432 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunnerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationRunnerTests.java @@ -20,13 +20,9 @@ import static android.view.WindowManager.TRANSIT_OPEN; import static android.window.TransitionInfo.FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY; import static android.window.TransitionInfo.FLAG_IS_BEHIND_STARTING_WINDOW; -import static com.android.wm.shell.activityembedding.ActivityEmbeddingAnimationRunner.calculateParentBounds; -import static com.android.wm.shell.activityembedding.ActivityEmbeddingAnimationRunner.shouldUseJumpCutForAnimation; import static com.android.wm.shell.transition.Transitions.TRANSIT_TASK_FRAGMENT_DRAG_RESIZE; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.assertFalse; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.doNothing; @@ -36,27 +32,24 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoMoreInteractions; import android.animation.Animator; -import android.annotation.NonNull; -import android.graphics.Point; -import android.graphics.Rect; -import android.view.animation.AlphaAnimation; -import android.view.animation.Animation; +import android.platform.test.annotations.DisableFlags; +import android.platform.test.annotations.EnableFlags; +import android.platform.test.flag.junit.SetFlagsRule; import android.window.TransitionInfo; +import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; +import com.android.window.flags.Flags; import com.android.wm.shell.transition.TransitionInfoBuilder; -import com.google.testing.junit.testparameterinjector.TestParameter; -import com.google.testing.junit.testparameterinjector.TestParameterInjector; - import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.ArgumentCaptor; import java.util.ArrayList; -import java.util.Arrays; /** * Tests for {@link ActivityEmbeddingAnimationRunner}. @@ -65,15 +58,19 @@ import java.util.Arrays; * atest WMShellUnitTests:ActivityEmbeddingAnimationRunnerTests */ @SmallTest -@RunWith(TestParameterInjector.class) +@RunWith(AndroidJUnit4.class) public class ActivityEmbeddingAnimationRunnerTests extends ActivityEmbeddingAnimationTestBase { + @Rule + public SetFlagsRule mRule = new SetFlagsRule(); + @Before public void setup() { super.setUp(); doNothing().when(mController).onAnimationFinished(any()); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testStartAnimation() { final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_OPEN, 0) @@ -99,6 +96,7 @@ public class ActivityEmbeddingAnimationRunnerTests extends ActivityEmbeddingAnim verify(mController).onAnimationFinished(mTransition); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testChangesBehindStartingWindow() { final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_OPEN, 0) @@ -113,6 +111,7 @@ public class ActivityEmbeddingAnimationRunnerTests extends ActivityEmbeddingAnim assertEquals(0, animator.getDuration()); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testTransitionTypeDragResize() { final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_TASK_FRAGMENT_DRAG_RESIZE, 0) @@ -127,14 +126,15 @@ public class ActivityEmbeddingAnimationRunnerTests extends ActivityEmbeddingAnim assertEquals(0, animator.getDuration()); } + @DisableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test - public void testInvalidCustomAnimation_enableAnimationOptionsPerChange() { + public void testInvalidCustomAnimation_disableAnimationOptionsPerChange() { final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_OPEN, 0) - .addChange(createChange(FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY, TRANSIT_OPEN)) + .addChange(createChange(FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY)) .build(); - info.getChanges().getFirst().setAnimationOptions(TransitionInfo.AnimationOptions - .makeCustomAnimOptions("packageName", 0 /* enterResId */, 0 /* changeResId */, - 0 /* exitResId */, false /* overrideTaskTransition */)); + info.setAnimationOptions(TransitionInfo.AnimationOptions + .makeCustomAnimOptions("packageName", 0 /* enterResId */, 0 /* exitResId */, + 0 /* backgroundColor */, false /* overrideTaskTransition */)); final Animator animator = mAnimRunner.createAnimator( info, mStartTransaction, mFinishTransaction, () -> mFinishCallback.onTransitionFinished(null /* wct */), @@ -144,113 +144,21 @@ public class ActivityEmbeddingAnimationRunnerTests extends ActivityEmbeddingAnim assertEquals(0, animator.getDuration()); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test - public void testCalculateParentBounds_flagEnabled_emptyParentSize() { - TransitionInfo.Change change; - final Rect actualParentBounds = new Rect(); - change = prepareChangeForParentBoundsCalculationTest( - new Point(0, 0) /* endRelOffset */, - new Rect(0, 0, 2000, 2000), - new Point() /* endParentSize */ - ); + public void testInvalidCustomAnimation_enableAnimationOptionsPerChange() { + final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_OPEN, 0) + .addChange(createChange(FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY)) + .build(); + info.getChanges().getFirst().setAnimationOptions(TransitionInfo.AnimationOptions + .makeCustomAnimOptions("packageName", 0 /* enterResId */, 0 /* exitResId */, + 0 /* backgroundColor */, false /* overrideTaskTransition */)); + final Animator animator = mAnimRunner.createAnimator( + info, mStartTransaction, mFinishTransaction, + () -> mFinishCallback.onTransitionFinished(null /* wct */), + new ArrayList<>()); - calculateParentBounds(change, actualParentBounds); - - assertTrue("Parent bounds must be empty because end parent size is not set.", - actualParentBounds.isEmpty()); - } - - @Test - public void testCalculateParentBounds_flagEnabled( - @TestParameter ParentBoundsTestParameters params) { - final Rect parentBounds = params.getParentBounds(); - final Rect endAbsBounds = params.getEndAbsBounds(); - final TransitionInfo.Change change = prepareChangeForParentBoundsCalculationTest( - new Point(endAbsBounds.left - parentBounds.left, - endAbsBounds.top - parentBounds.top), - endAbsBounds, new Point(parentBounds.width(), parentBounds.height())); - final Rect actualParentBounds = new Rect(); - - calculateParentBounds(change, actualParentBounds); - - assertEquals(parentBounds, actualParentBounds); - } - - private enum ParentBoundsTestParameters { - PARENT_START_WITH_0_0( - new int[]{0, 0, 2000, 2000}, - new int[]{0, 0, 2000, 2000}), - CONTAINER_NOT_START_WITH_0_0( - new int[] {0, 0, 2000, 2000}, - new int[] {1000, 500, 1500, 1500}), - PARENT_ON_THE_RIGHT( - new int[] {1000, 0, 2000, 2000}, - new int[] {1000, 500, 1500, 1500}), - PARENT_ON_THE_BOTTOM( - new int[] {0, 1000, 2000, 2000}, - new int[] {500, 1500, 1500, 2000}), - PARENT_IN_THE_MIDDLE( - new int[] {500, 500, 1500, 1500}, - new int[] {1000, 500, 1500, 1000}); - - /** - * An int array to present {left, top, right, bottom} of the parent {@link Rect bounds}. - */ - @NonNull - private final int[] mParentBounds; - - /** - * An int array to present {left, top, right, bottom} of the absolute container - * {@link Rect bounds} after the transition finishes. - */ - @NonNull - private final int[] mEndAbsBounds; - - ParentBoundsTestParameters( - @NonNull int[] parentBounds, @NonNull int[] endAbsBounds) { - mParentBounds = parentBounds; - mEndAbsBounds = endAbsBounds; - } - - @NonNull - private Rect getParentBounds() { - return asRect(mParentBounds); - } - - @NonNull - private Rect getEndAbsBounds() { - return asRect(mEndAbsBounds); - } - - @NonNull - private static Rect asRect(@NonNull int[] bounds) { - if (bounds.length != 4) { - throw new IllegalArgumentException("There must be exactly 4 elements in bounds, " - + "but found " + bounds.length + ": " + Arrays.toString(bounds)); - } - return new Rect(bounds[0], bounds[1], bounds[2], bounds[3]); - } - } - - @Test - public void testShouldUseJumpCutForAnimation() { - final Animation noopAnimation = new AlphaAnimation(0f, 1f); - assertTrue("Animation without duration should use jump cut.", - shouldUseJumpCutForAnimation(noopAnimation)); - - final Animation alphaAnimation = new AlphaAnimation(0f, 1f); - alphaAnimation.setDuration(100); - assertFalse("Animation with duration should not use jump cut.", - shouldUseJumpCutForAnimation(alphaAnimation)); - } - - @NonNull - private static TransitionInfo.Change prepareChangeForParentBoundsCalculationTest( - @NonNull Point endRelOffset, @NonNull Rect endAbsBounds, @NonNull Point endParentSize) { - final TransitionInfo.Change change = createChange(0 /* flags */); - change.setEndRelOffset(endRelOffset.x, endRelOffset.y); - change.setEndAbsBounds(endAbsBounds); - change.setEndParentSize(endParentSize.x, endParentSize.y); - return change; + // An invalid custom animation is equivalent to jump-cut. + assertEquals(0, animator.getDuration()); } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationTestBase.java b/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationTestBase.java index aee88f751b..0b2265d4ce 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationTestBase.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingAnimationTestBase.java @@ -16,13 +16,13 @@ package com.android.wm.shell.activityembedding; -import static android.view.WindowManager.TRANSIT_NONE; import static android.window.TransitionInfo.FLAG_FILLS_TASK; import static android.window.TransitionInfo.FLAG_IN_TASK_WITH_EMBEDDED_ACTIVITY; import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; import static org.junit.Assert.assertNotNull; +import static org.junit.Assume.assumeTrue; import static org.mockito.Mockito.mock; import android.animation.Animator; @@ -31,7 +31,6 @@ import android.annotation.NonNull; import android.graphics.Rect; import android.os.IBinder; import android.view.SurfaceControl; -import android.view.WindowManager; import android.window.TransitionInfo; import android.window.WindowContainerToken; @@ -68,6 +67,7 @@ abstract class ActivityEmbeddingAnimationTestBase extends ShellTestCase { @CallSuper @Before public void setUp() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); MockitoAnnotations.initMocks(this); mController = ActivityEmbeddingController.create(mContext, mShellInit, mTransitions); assertNotNull(mController); @@ -82,27 +82,11 @@ abstract class ActivityEmbeddingAnimationTestBase extends ShellTestCase { spyOn(mFinishCallback); } - /** - * Creates a mock {@link TransitionInfo.Change}. - * - * @param flags the {@link TransitionInfo.ChangeFlags} of the change - */ + /** Creates a mock {@link TransitionInfo.Change}. */ static TransitionInfo.Change createChange(@TransitionInfo.ChangeFlags int flags) { - return createChange(flags, TRANSIT_NONE); - } - - /** - * Creates a mock {@link TransitionInfo.Change}. - * - * @param flags the {@link TransitionInfo.ChangeFlags} of the change - * @param mode the transition mode of the change - */ - static TransitionInfo.Change createChange(@TransitionInfo.ChangeFlags int flags, - @WindowManager.TransitionType int mode) { TransitionInfo.Change c = new TransitionInfo.Change(mock(WindowContainerToken.class), mock(SurfaceControl.class)); c.setFlags(flags); - c.setMode(mode); return c; } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingControllerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingControllerTests.java index da4543b4d9..39d55079ca 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingControllerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/activityembedding/ActivityEmbeddingControllerTests.java @@ -32,6 +32,9 @@ import static org.mockito.Mockito.verifyNoMoreInteractions; import android.animation.Animator; import android.animation.ValueAnimator; import android.graphics.Rect; +import android.platform.test.annotations.DisableFlags; +import android.platform.test.annotations.EnableFlags; +import android.platform.test.flag.junit.SetFlagsRule; import android.view.SurfaceControl; import android.window.TransitionInfo; @@ -39,9 +42,11 @@ import androidx.test.annotation.UiThreadTest; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; +import com.android.window.flags.Flags; import com.android.wm.shell.transition.TransitionInfoBuilder; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; @@ -59,6 +64,9 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation private static final Rect EMBEDDED_LEFT_BOUNDS = new Rect(0, 0, 500, 500); private static final Rect EMBEDDED_RIGHT_BOUNDS = new Rect(500, 0, 1000, 500); + @Rule + public SetFlagsRule mRule = new SetFlagsRule(); + @Before public void setup() { super.setUp(); @@ -66,11 +74,13 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation any()); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testInstantiate() { verify(mShellInit).addInitCallback(any(), any()); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testOnInit() { mController.onInit(); @@ -78,6 +88,7 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation verify(mTransitions).addHandler(mController); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testSetAnimScaleSetting() { mController.setAnimScaleSetting(1.0f); @@ -86,6 +97,7 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation verify(mAnimSpec).setAnimScaleSetting(1.0f); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testStartAnimation_containsNonActivityEmbeddingChange() { final TransitionInfo.Change nonEmbeddedOpen = createChange(0 /* flags */); @@ -122,6 +134,7 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation assertFalse(info2.getChanges().contains(nonEmbeddedClose)); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testStartAnimation_containsOnlyFillTaskActivityEmbeddingChange() { final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_OPEN, 0) @@ -138,6 +151,7 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation verifyNoMoreInteractions(mFinishCallback); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testStartAnimation_containsActivityEmbeddingSplitChange() { // Change that occupies only part of the Task. @@ -155,6 +169,7 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation verifyNoMoreInteractions(mFinishTransaction); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testStartAnimation_containsChangeEnterActivityEmbeddingSplit() { // Change that is entering ActivityEmbedding split. @@ -171,6 +186,7 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation verifyNoMoreInteractions(mFinishTransaction); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testStartAnimation_containsChangeExitActivityEmbeddingSplit() { // Change that is exiting ActivityEmbedding split. @@ -187,6 +203,27 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation verifyNoMoreInteractions(mFinishTransaction); } + @DisableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) + @Test + public void testShouldAnimate_containsAnimationOptions_disableAnimOptionsPerChange() { + final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_CLOSE, 0) + .addChange(createEmbeddedChange(EMBEDDED_RIGHT_BOUNDS, TASK_BOUNDS, TASK_BOUNDS)) + .build(); + + info.setAnimationOptions(TransitionInfo.AnimationOptions + .makeCustomAnimOptions("packageName", 0 /* enterResId */, 0 /* exitResId */, + 0 /* backgroundColor */, false /* overrideTaskTransition */)); + assertTrue(mController.shouldAnimate(info)); + + info.setAnimationOptions(TransitionInfo.AnimationOptions + .makeSceneTransitionAnimOptions()); + assertFalse(mController.shouldAnimate(info)); + + info.setAnimationOptions(TransitionInfo.AnimationOptions.makeCrossProfileAnimOptions()); + assertFalse(mController.shouldAnimate(info)); + } + + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testShouldAnimate_containsAnimationOptions_enableAnimOptionsPerChange() { final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_CLOSE, 0) @@ -195,8 +232,8 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation final TransitionInfo.Change change = info.getChanges().getFirst(); change.setAnimationOptions(TransitionInfo.AnimationOptions - .makeCustomAnimOptions("packageName", 0 /* enterResId */, 0 /* changeResId */, - 0 /* exitResId */, false /* overrideTaskTransition */)); + .makeCustomAnimOptions("packageName", 0 /* enterResId */, 0 /* exitResId */, + 0 /* backgroundColor */, false /* overrideTaskTransition */)); assertTrue(mController.shouldAnimate(info)); change.setAnimationOptions(TransitionInfo.AnimationOptions @@ -207,6 +244,7 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation assertFalse(mController.shouldAnimate(info)); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @UiThreadTest @Test public void testMergeAnimation() { @@ -238,13 +276,12 @@ public class ActivityEmbeddingControllerTests extends ActivityEmbeddingAnimation mController.startAnimation(mTransition, info, mStartTransaction, mFinishTransaction, mFinishCallback); verify(mFinishCallback, never()).onTransitionFinished(any()); - mController.mergeAnimation(mTransition, info, - new SurfaceControl.Transaction(), - new SurfaceControl.Transaction(), + mController.mergeAnimation(mTransition, info, new SurfaceControl.Transaction(), mTransition, (wct) -> {}); verify(mFinishCallback).onTransitionFinished(any()); } + @EnableFlags(Flags.FLAG_MOVE_ANIMATION_OPTIONS_TO_CHANGE) @Test public void testOnAnimationFinished() { // Should not call finish when there is no transition. diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/back/BackAnimationControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/back/BackAnimationControllerTest.java index dfcf357332..57e469d5cb 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/back/BackAnimationControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/back/BackAnimationControllerTest.java @@ -16,30 +16,15 @@ package com.android.wm.shell.back; -import static android.app.ActivityTaskManager.INVALID_TASK_ID; -import static android.view.Display.DEFAULT_DISPLAY; -import static android.view.WindowManager.TRANSIT_CLOSE; -import static android.view.WindowManager.TRANSIT_CLOSE_PREPARE_BACK_NAVIGATION; -import static android.view.WindowManager.TRANSIT_OPEN; -import static android.view.WindowManager.TRANSIT_PREPARE_BACK_NAVIGATION; import static android.window.BackNavigationInfo.KEY_NAVIGATION_FINISHED; -import static android.window.TransitionInfo.FLAG_BACK_GESTURE_ANIMATED; -import static android.window.TransitionInfo.FLAG_MOVED_TO_TOP; -import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; - -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.eq; -import static org.mockito.ArgumentMatchers.isNull; -import static org.mockito.ArgumentMatchers.notNull; import static org.mockito.Mockito.atLeastOnce; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.reset; import static org.mockito.Mockito.spy; @@ -47,48 +32,42 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoMoreInteractions; -import android.app.ActivityManager; import android.app.IActivityTaskManager; import android.app.WindowConfiguration; import android.content.pm.ApplicationInfo; import android.graphics.Point; import android.graphics.Rect; import android.hardware.input.InputManager; -import android.os.Binder; import android.os.Bundle; import android.os.Handler; -import android.os.IBinder; import android.os.RemoteCallback; import android.os.RemoteException; -import android.platform.test.annotations.EnableFlags; +import android.provider.Settings; import android.testing.AndroidTestingRunner; +import android.testing.TestableContentResolver; import android.testing.TestableLooper; import android.view.IRemoteAnimationRunner; import android.view.KeyEvent; import android.view.MotionEvent; import android.view.RemoteAnimationTarget; import android.view.SurfaceControl; -import android.view.WindowManager; import android.window.BackEvent; import android.window.BackMotionEvent; import android.window.BackNavigationInfo; import android.window.IBackAnimationFinishedCallback; import android.window.IOnBackInvokedCallback; -import android.window.IWindowContainerToken; -import android.window.TransitionInfo; -import android.window.TransitionRequestInfo; -import android.window.WindowContainerToken; import androidx.annotation.Nullable; import androidx.test.filters.SmallTest; +import com.android.internal.util.test.FakeSettingsProvider; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestShellExecutor; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.transition.Transitions; +import com.android.wm.shell.sysui.ShellSharedConstants; import org.junit.Before; import org.junit.Test; @@ -105,6 +84,7 @@ import org.mockito.MockitoAnnotations; @RunWith(AndroidTestingRunner.class) public class BackAnimationControllerTest extends ShellTestCase { + private static final String ANIMATION_ENABLED = "1"; private final TestShellExecutor mShellExecutor = new TestShellExecutor(); private ShellInit mShellInit; @@ -134,57 +114,53 @@ public class BackAnimationControllerTest extends ShellTestCase { @Mock private ShellCommandHandler mShellCommandHandler; @Mock - private Transitions mTransitions; - @Mock private RootTaskDisplayAreaOrganizer mRootTaskDisplayAreaOrganizer; - @Mock - private Handler mHandler; - @Mock - private Transitions.TransitionHandler mTakeoverHandler; private BackAnimationController mController; + private TestableContentResolver mContentResolver; + private TestableLooper mTestableLooper; private DefaultCrossActivityBackAnimation mDefaultCrossActivityBackAnimation; private CrossTaskBackAnimation mCrossTaskBackAnimation; private ShellBackAnimationRegistry mShellBackAnimationRegistry; private Rect mTouchableRegion; - private BackAnimationController.BackTransitionHandler mBackTransitionHandler; - @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); mContext.addMockSystemService(InputManager.class, mInputManager); mContext.getApplicationInfo().privateFlags |= ApplicationInfo.PRIVATE_FLAG_PRIVILEGED; + mContentResolver = new TestableContentResolver(mContext); + mContentResolver.addProvider(Settings.AUTHORITY, new FakeSettingsProvider()); + Settings.Global.putString(mContentResolver, Settings.Global.ENABLE_BACK_ANIMATION, + ANIMATION_ENABLED); + mTestableLooper = TestableLooper.get(this); mShellInit = spy(new ShellInit(mShellExecutor)); mDefaultCrossActivityBackAnimation = new DefaultCrossActivityBackAnimation(mContext, - mAnimationBackground, mRootTaskDisplayAreaOrganizer, mHandler); - mCrossTaskBackAnimation = new CrossTaskBackAnimation(mContext, mAnimationBackground, - mHandler); + mAnimationBackground, mRootTaskDisplayAreaOrganizer); + mCrossTaskBackAnimation = new CrossTaskBackAnimation(mContext, mAnimationBackground); mShellBackAnimationRegistry = new ShellBackAnimationRegistry(mDefaultCrossActivityBackAnimation, mCrossTaskBackAnimation, /* dialogCloseAnimation= */ null, new CustomCrossActivityBackAnimation(mContext, mAnimationBackground, - mRootTaskDisplayAreaOrganizer, mHandler), + mRootTaskDisplayAreaOrganizer), /* defaultBackToHomeAnimation= */ null); mController = new BackAnimationController( mShellInit, mShellController, mShellExecutor, + new Handler(mTestableLooper.getLooper()), mActivityTaskManager, mContext, + mContentResolver, mAnimationBackground, mShellBackAnimationRegistry, - mShellCommandHandler, - mTransitions, - mHandler); + mShellCommandHandler); mShellInit.init(); mShellExecutor.flushAll(); mTouchableRegion = new Rect(0, 0, 100, 100); mController.mTouchableArea.set(mTouchableRegion); - mBackTransitionHandler = mController.mBackTransitionHandler; - spyOn(mBackTransitionHandler); } private void createNavigationInfo(int backType, @@ -238,7 +214,7 @@ public class BackAnimationControllerTest extends ShellTestCase { @Test public void instantiateController_addExternalInterface() { verify(mShellController, times(1)).addExternalInterface( - eq(IBackAnimation.DESCRIPTOR), any(), any()); + eq(ShellSharedConstants.KEY_EXTRA_SHELL_BACK_ANIMATION), any(), any()); } @Test @@ -324,6 +300,45 @@ public class BackAnimationControllerTest extends ShellTestCase { verify(mAnimatorCallback).onBackInvoked(); } + @Test + public void animationDisabledFromSettings() throws RemoteException { + // Toggle the setting off + Settings.Global.putString(mContentResolver, Settings.Global.ENABLE_BACK_ANIMATION, "0"); + ShellInit shellInit = new ShellInit(mShellExecutor); + mController = + new BackAnimationController( + shellInit, + mShellController, + mShellExecutor, + new Handler(mTestableLooper.getLooper()), + mActivityTaskManager, + mContext, + mContentResolver, + mAnimationBackground, + mShellBackAnimationRegistry, + mShellCommandHandler); + shellInit.init(); + registerAnimation(BackNavigationInfo.TYPE_RETURN_TO_HOME); + + ArgumentCaptor<BackMotionEvent> backEventCaptor = + ArgumentCaptor.forClass(BackMotionEvent.class); + + createNavigationInfo(BackNavigationInfo.TYPE_RETURN_TO_HOME, + /* enableAnimation = */ false, + /* isAnimationCallback = */ false); + + triggerBackGesture(); + releaseBackGesture(); + + verify(mAppCallback, times(1)).onBackInvoked(); + + verify(mAnimatorCallback, never()).onBackStarted(any()); + verify(mAnimatorCallback, never()).onBackProgressed(backEventCaptor.capture()); + verify(mAnimatorCallback, never()).onBackInvoked(); + verify(mBackAnimationRunner, never()).onAnimationStart( + anyInt(), any(), any(), any(), any()); + } + @Test public void gestureQueued_WhenPreviousTransitionHasNotYetEnded() throws RemoteException { registerAnimation(BackNavigationInfo.TYPE_RETURN_TO_HOME); @@ -556,51 +571,6 @@ public class BackAnimationControllerTest extends ShellTestCase { verify(mAnimatorCallback, never()).onBackInvoked(); } - @EnableFlags({com.android.systemui.shared.Flags.FLAG_RETURN_ANIMATION_FRAMEWORK_LIBRARY, - com.android.systemui.shared.Flags.FLAG_RETURN_ANIMATION_FRAMEWORK_LONG_LIVED, - com.android.window.flags2.Flags.FLAG_UNIFY_BACK_NAVIGATION_TRANSITION}) - @Test - public void appCallback_receivesTakeoverHandler_whenAvailable() throws RemoteException { - registerAnimation(BackNavigationInfo.TYPE_CROSS_TASK); - mBackTransitionHandler.mTakeoverHandler = mTakeoverHandler; - - final int type = BackNavigationInfo.TYPE_CALLBACK; - final ResultListener result = new ResultListener(); - createNavigationInfo(new BackNavigationInfo.Builder() - .setType(type) - .setOnBackInvokedCallback(mAppCallback) - .setOnBackNavigationDone(new RemoteCallback(result)) - .setTouchableRegion(mTouchableRegion) - .setAppProgressAllowed(true)); - - triggerBackGesture(); - mShellExecutor.flushAll(); - releaseBackGesture(); - mShellExecutor.flushAll(); - - verify(mAppCallback).setHandoffHandler(notNull()); - } - - @Test - public void appCallback_doesNotReceiveTakeoverHandler_whenUnavailable() throws RemoteException { - registerAnimation(BackNavigationInfo.TYPE_CROSS_TASK); - - final int type = BackNavigationInfo.TYPE_CALLBACK; - final ResultListener result = new ResultListener(); - createNavigationInfo(new BackNavigationInfo.Builder() - .setType(type) - .setOnBackInvokedCallback(mAppCallback) - .setOnBackNavigationDone(new RemoteCallback(result)) - .setTouchableRegion(mTouchableRegion) - .setAppProgressAllowed(true)); - triggerBackGesture(); - mShellExecutor.flushAll(); - releaseBackGesture(); - mShellExecutor.flushAll(); - - verify(mAppCallback).setHandoffHandler(isNull()); - } - @Test public void skipsCancelWithoutStart() throws RemoteException { final int type = BackNavigationInfo.TYPE_CALLBACK; @@ -631,220 +601,6 @@ public class BackAnimationControllerTest extends ShellTestCase { mCrossTaskBackAnimation.getRunner()); } - @Test - public void testCloseAsExpectTransition() { - final int openTaskId = 1; - final int closeTaskId = 2; - mController.mApps = createAppAnimationTargets(openTaskId, closeTaskId); - final IBinder mockBinder = mock(IBinder.class); - final SurfaceControl.Transaction st = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction ft = mock(SurfaceControl.Transaction.class); - // Single close - final TransitionInfo.Change open = createAppChange(openTaskId, TRANSIT_OPEN, - FLAG_BACK_GESTURE_ANIMATED | FLAG_MOVED_TO_TOP); - final TransitionInfo.Change close = createAppChange(closeTaskId, TRANSIT_CLOSE, - FLAG_BACK_GESTURE_ANIMATED); - - TransitionInfo tInfo = createTransitionInfo(TRANSIT_CLOSE, open, close); - mBackTransitionHandler.mCloseTransitionRequested = true; - Transitions.TransitionFinishCallback callback = - mock(Transitions.TransitionFinishCallback.class); - mBackTransitionHandler.startAnimation(mockBinder, tInfo, st, ft, callback); - verify(mBackTransitionHandler).handleCloseTransition( - eq(tInfo), eq(st), eq(ft), eq(callback)); - mBackTransitionHandler.onAnimationFinished(); - verify(callback).onTransitionFinished(any()); - mBackTransitionHandler.mCloseTransitionRequested = false; - - // PREPARE + CLOSE - tInfo = createTransitionInfo(TRANSIT_PREPARE_BACK_NAVIGATION, open); - callback = mock(Transitions.TransitionFinishCallback.class); - mBackTransitionHandler.startAnimation(mockBinder, tInfo, st, ft, callback); - verify(mBackTransitionHandler).handlePrepareTransition(eq(mockBinder), - eq(tInfo), eq(st), eq(ft), eq(callback)); - mBackTransitionHandler.mCloseTransitionRequested = true; - TransitionInfo tInfo2 = createTransitionInfo(TRANSIT_CLOSE, close); - Transitions.TransitionFinishCallback mergeCallback = - mock(Transitions.TransitionFinishCallback.class); - mBackTransitionHandler.mergeAnimation( - mock(IBinder.class), tInfo2, st, ft, mock(IBinder.class), mergeCallback); - mBackTransitionHandler.onAnimationFinished(); - verify(callback).onTransitionFinished(any()); - verify(mergeCallback).onTransitionFinished(any()); - mBackTransitionHandler.mCloseTransitionRequested = false; - - // PREPARE contains close info - tInfo = createTransitionInfo(TRANSIT_PREPARE_BACK_NAVIGATION, open, close); - callback = mock(Transitions.TransitionFinishCallback.class); - mBackTransitionHandler.mCloseTransitionRequested = true; - mBackTransitionHandler.startAnimation(mockBinder, tInfo, st, ft, callback); - verify(mBackTransitionHandler).handleCloseTransition( - eq(tInfo), eq(st), eq(ft), eq(callback)); - mBackTransitionHandler.onAnimationFinished(); - verify(callback).onTransitionFinished(any()); - mBackTransitionHandler.mCloseTransitionRequested = false; - - // PREPARE then Cancel - tInfo = createTransitionInfo(TRANSIT_PREPARE_BACK_NAVIGATION, open); - callback = mock(Transitions.TransitionFinishCallback.class); - final TransitionRequestInfo requestInfo = new TransitionRequestInfo( - TRANSIT_PREPARE_BACK_NAVIGATION, null /* triggerTask */, - null /* remoteTransition */); - mBackTransitionHandler.handleRequest(mockBinder, requestInfo); - mBackTransitionHandler.startAnimation(mockBinder, tInfo, st, ft, callback); - verify(mBackTransitionHandler).handlePrepareTransition(eq(mockBinder), - eq(tInfo), eq(st), eq(ft), eq(callback)); - - mBackTransitionHandler.onAnimationFinished(); - final TransitionInfo.Change openToClose = createAppChangeFromChange(open, TRANSIT_CLOSE, - FLAG_BACK_GESTURE_ANIMATED); - tInfo2 = createTransitionInfo(TRANSIT_CLOSE_PREPARE_BACK_NAVIGATION, openToClose); - mBackTransitionHandler.mClosePrepareTransition = mock(IBinder.class); - mergeCallback = mock(Transitions.TransitionFinishCallback.class); - mBackTransitionHandler.mergeAnimation(mBackTransitionHandler.mClosePrepareTransition, - tInfo2, st, ft, mock(IBinder.class), mergeCallback); - assertTrue("Change should be consumed", tInfo2.getChanges().isEmpty()); - verify(callback).onTransitionFinished(any()); - } - - @Test - public void testCancelUnexpectedTransition() { - final int openTaskId = 1; - final int closeTaskId = 2; - mController.mApps = createAppAnimationTargets(openTaskId, closeTaskId); - final IBinder mockBinder = mock(IBinder.class); - final SurfaceControl.Transaction st = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction ft = mock(SurfaceControl.Transaction.class); - final TransitionInfo.Change open = createAppChange(openTaskId, TRANSIT_OPEN, - FLAG_BACK_GESTURE_ANIMATED | FLAG_MOVED_TO_TOP); - final TransitionInfo.Change close = createAppChange(closeTaskId, TRANSIT_CLOSE, - FLAG_BACK_GESTURE_ANIMATED); - - // Didn't trigger close transition - mBackTransitionHandler.mCloseTransitionRequested = false; - TransitionInfo prepareInfo = createTransitionInfo(TRANSIT_PREPARE_BACK_NAVIGATION, - open, close); - final Transitions.TransitionFinishCallback callback = - mock(Transitions.TransitionFinishCallback.class); - mBackTransitionHandler.handleRequest(mockBinder, mock(TransitionRequestInfo.class)); - boolean canHandle = mBackTransitionHandler.startAnimation( - mockBinder, prepareInfo, st, ft, callback); - assertFalse("Should not handle transition", canHandle); - assertNull(mBackTransitionHandler.mOnAnimationFinishCallback); - - // Didn't trigger close transition, but receive close target. - final TransitionRequestInfo requestInfo = new TransitionRequestInfo( - TRANSIT_PREPARE_BACK_NAVIGATION, null /* triggerTask */, - null /* remoteTransition */); - prepareInfo = createTransitionInfo(TRANSIT_PREPARE_BACK_NAVIGATION, open); - final Transitions.TransitionFinishCallback callback2 = - mock(Transitions.TransitionFinishCallback.class); - mBackTransitionHandler.handleRequest(mockBinder, requestInfo); - canHandle = mBackTransitionHandler.startAnimation(mockBinder, - prepareInfo, st, ft, callback2); - assertTrue("Handle prepare transition" , canHandle); - verify(mBackTransitionHandler).handlePrepareTransition(eq(mockBinder), - eq(prepareInfo), eq(st), eq(ft), eq(callback2)); - final TransitionInfo closeInfo = createTransitionInfo(TRANSIT_CLOSE, close); - Transitions.TransitionFinishCallback mergeCallback = - mock(Transitions.TransitionFinishCallback.class); - mBackTransitionHandler.mergeAnimation(mock(IBinder.class), closeInfo, st, ft, - mock(IBinder.class), mergeCallback); - verify(callback2).onTransitionFinished(any()); - verify(mergeCallback, never()).onTransitionFinished(any()); - - // Didn't trigger close transition, but contains open target. - final int openTaskId2 = 3; - final Transitions.TransitionFinishCallback callback3 = - mock(Transitions.TransitionFinishCallback.class); - mBackTransitionHandler.handleRequest(mockBinder, requestInfo); - canHandle = mBackTransitionHandler.startAnimation( - mockBinder, prepareInfo, st, ft, callback3); - assertTrue("Handle prepare transition" , canHandle); - verify(mBackTransitionHandler).handlePrepareTransition(eq(mockBinder), - eq(prepareInfo), eq(st), eq(ft), eq(callback3)); - final TransitionInfo.Change open2 = createAppChange( - openTaskId2, TRANSIT_OPEN, FLAG_MOVED_TO_TOP); - final TransitionInfo openInfo = createTransitionInfo(TRANSIT_OPEN, open2, close); - mergeCallback = mock(Transitions.TransitionFinishCallback.class); - mBackTransitionHandler.mergeAnimation(mock(IBinder.class), openInfo, st, ft, - mock(IBinder.class), mergeCallback); - verify(callback3).onTransitionFinished(any()); - verify(mergeCallback, never()).onTransitionFinished(any()); - } - - @Test - public void testBackAnimationControllersRecoversFromBadState() throws RemoteException { - // put controller into bad state (initial state but mBackGestureStarted=true) - mController.mBackGestureStarted = true; - verifySystemBackBehavior(BackNavigationInfo.TYPE_CROSS_ACTIVITY, - mDefaultCrossActivityBackAnimation.getRunner()); - } - - private RemoteAnimationTarget[] createAppAnimationTargets(int openTaskId, int closeTaskId) { - final RemoteAnimationTarget openT = createSingleAnimationTarget(openTaskId, - RemoteAnimationTarget.MODE_OPENING); - final RemoteAnimationTarget closeT = createSingleAnimationTarget(closeTaskId, - RemoteAnimationTarget.MODE_CLOSING); - return new RemoteAnimationTarget[]{openT, closeT}; - } - - private RemoteAnimationTarget createSingleAnimationTarget(int taskId, int mode) { - final Rect fakeR = new Rect(); - final Point fakeP = new Point(); - final ActivityManager.RunningTaskInfo openTaskInfo = new ActivityManager.RunningTaskInfo(); - openTaskInfo.taskId = taskId; - openTaskInfo.token = new WindowContainerToken(mock(IWindowContainerToken.class)); - return new RemoteAnimationTarget( - taskId, mode, mock(SurfaceControl.class), false, fakeR, fakeR, - 0, fakeP, fakeR, fakeR, new WindowConfiguration(), false, - mock(SurfaceControl.class), fakeR, openTaskInfo, false); - } - private TransitionInfo.Change createAppChange( - int taskId, @TransitionInfo.TransitionMode int mode, - @TransitionInfo.ChangeFlags int flags) { - final TransitionInfo.Change change; - SurfaceControl.Builder b = new SurfaceControl.Builder() - .setName("test task"); - if (taskId != INVALID_TASK_ID) { - final ActivityManager.RunningTaskInfo taskInfo = new ActivityManager.RunningTaskInfo(); - taskInfo.taskId = taskId; - final IWindowContainerToken mockT = mock(IWindowContainerToken.class); - Binder binder = new Binder(); - doReturn(binder).when(mockT).asBinder(); - taskInfo.token = new WindowContainerToken(mockT); - change = new TransitionInfo.Change( - taskInfo.token, b.build()); - change.setTaskInfo(taskInfo); - } else { - change = new TransitionInfo.Change( - null, b.build()); - - } - change.setMode(mode); - change.setFlags(flags); - return change; - } - - private TransitionInfo.Change createAppChangeFromChange( - TransitionInfo.Change originalChange, @TransitionInfo.TransitionMode int mode, - @TransitionInfo.ChangeFlags int flags) { - final TransitionInfo.Change change = new TransitionInfo.Change( - originalChange.getTaskInfo().token, originalChange.getLeash()); - change.setMode(mode); - change.setFlags(flags); - return change; - } - - private static TransitionInfo createTransitionInfo( - @WindowManager.TransitionType int type, TransitionInfo.Change ... changes) { - final TransitionInfo info = new TransitionInfo(type, 0); - for (int i = 0; i < changes.length; ++i) { - info.addChange(changes[i]); - } - return info; - } - private void verifySystemBackBehavior(int type, BackAnimationRunner animation) throws RemoteException { final BackAnimationRunner animationRunner = spy(animation); @@ -878,12 +634,17 @@ public class BackAnimationControllerTest extends ShellTestCase { } private void doMotionEvent(int actionDown, int coordinate) { + doMotionEvent(actionDown, coordinate, 0); + } + + private void doMotionEvent(int actionDown, int coordinate, float velocity) { mController.onMotionEvent( /* touchX */ coordinate, /* touchY */ coordinate, + /* velocityX = */ velocity, + /* velocityY = */ velocity, /* keyAction */ actionDown, - /* swipeEdge */ BackEvent.EDGE_LEFT, - /* displayId */ DEFAULT_DISPLAY); + /* swipeEdge */ BackEvent.EDGE_LEFT); } /** @@ -891,8 +652,8 @@ public class BackAnimationControllerTest extends ShellTestCase { */ private void doStartEvents(int startX, int moveX) { doMotionEvent(MotionEvent.ACTION_DOWN, startX); - doMotionEvent(MotionEvent.ACTION_MOVE, moveX); mController.onThresholdCrossed(); + doMotionEvent(MotionEvent.ACTION_MOVE, moveX); } private void simulateRemoteAnimationStart() throws RemoteException { @@ -900,7 +661,7 @@ public class BackAnimationControllerTest extends ShellTestCase { RemoteAnimationTarget[] targets = new RemoteAnimationTarget[]{animationTarget}; if (mController.mBackAnimationAdapter != null) { mController.mBackAnimationAdapter.getRunner().onAnimationStart( - targets, null /* prepareOpenTransition */, mBackAnimationFinishedCallback); + targets, null, null, mBackAnimationFinishedCallback); mShellExecutor.flushAll(); } } @@ -916,8 +677,7 @@ public class BackAnimationControllerTest extends ShellTestCase { new BackAnimationRunner( mAnimatorCallback, mBackAnimationRunner, - mContext, - mHandler)); + mContext)); } private void unregisterAnimation(int type) { diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/back/BackProgressAnimatorTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/back/BackProgressAnimatorTest.java index 2ef6c558b0..4d0348b4f4 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/back/BackProgressAnimatorTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/back/BackProgressAnimatorTest.java @@ -32,8 +32,6 @@ import android.window.BackProgressAnimator; import androidx.test.filters.SmallTest; import androidx.test.platform.app.InstrumentationRegistry; -import com.android.wm.shell.ShellTestCase; - import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -44,7 +42,7 @@ import java.util.concurrent.TimeUnit; @SmallTest @TestableLooper.RunWithLooper @RunWith(AndroidTestingRunner.class) -public class BackProgressAnimatorTest extends ShellTestCase { +public class BackProgressAnimatorTest { private BackProgressAnimator mProgressAnimator; private BackEvent mReceivedBackEvent; private float mTargetProgress = 0.5f; @@ -55,8 +53,9 @@ public class BackProgressAnimatorTest extends ShellTestCase { return new BackMotionEvent( /* touchX = */ touchX, /* touchY = */ 0, - /* frameTime = */ 0, /* progress = */ progress, + /* velocityX = */ 0, + /* velocityY = */ 0, /* triggerBack = */ false, /* swipeEdge = */ BackEvent.EDGE_LEFT, /* departingAnimationTarget = */ null); @@ -64,8 +63,6 @@ public class BackProgressAnimatorTest extends ShellTestCase { @Before public void setUp() throws Exception { - mTargetProgressCalled = new CountDownLatch(1); - mTargetProgress = 0.5f; mMainThreadHandler = new Handler(Looper.getMainLooper()); final BackMotionEvent backEvent = backMotionEventFrom(0, 0); mMainThreadHandler.post( @@ -180,31 +177,6 @@ public class BackProgressAnimatorTest extends ShellTestCase { assertEquals(1, finishCallbackCalled.getCount()); } - @Test - public void testOnBackInvokedFinishCallbackNotInvokedWhenRemoved() throws InterruptedException { - // Give the animator some progress. - final BackMotionEvent backEvent = backMotionEventFrom(100, mTargetProgress); - mMainThreadHandler.post( - () -> mProgressAnimator.onBackProgressed(backEvent)); - mTargetProgressCalled.await(1, TimeUnit.SECONDS); - assertNotNull(mReceivedBackEvent); - - CountDownLatch finishCallbackCalled = new CountDownLatch(1); - // Trigger back invoked animation and remove onBackInvoked finishCallback (while progress - // is still animating to 1) - InstrumentationRegistry.getInstrumentation().runOnMainSync(() -> { - mProgressAnimator.onBackInvoked(finishCallbackCalled::countDown); - mProgressAnimator.removeOnBackInvokedFinishCallback(); - } - ); - - // call reset (which triggers the finishCallback invocation, if one is present) - InstrumentationRegistry.getInstrumentation().runOnMainSync(() -> mProgressAnimator.reset()); - - // verify that finishCallback is not invoked - assertEquals(1, finishCallbackCalled.getCount()); - } - private void onGestureProgress(BackEvent backEvent) { if (mTargetProgress == backEvent.getProgress()) { mReceivedBackEvent = backEvent; diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/back/CustomCrossActivityBackAnimationTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/back/CustomCrossActivityBackAnimationTest.kt index 2cc52c5ab9..080ad901c6 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/back/CustomCrossActivityBackAnimationTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/back/CustomCrossActivityBackAnimationTest.kt @@ -22,7 +22,6 @@ import android.app.WindowConfiguration import android.graphics.Color import android.graphics.Point import android.graphics.Rect -import android.os.Handler import android.os.RemoteException import android.testing.AndroidTestingRunner import android.testing.TestableLooper @@ -67,7 +66,6 @@ class CustomCrossActivityBackAnimationTest : ShellTestCase() { @Mock private lateinit var transitionAnimation: TransitionAnimation @Mock private lateinit var appCompatTaskInfo: AppCompatTaskInfo @Mock private lateinit var transaction: Transaction - @Mock private lateinit var handler: Handler private lateinit var customCrossActivityBackAnimation: CustomCrossActivityBackAnimation private lateinit var customAnimationLoader: CustomAnimationLoader @@ -82,8 +80,7 @@ class CustomCrossActivityBackAnimationTest : ShellTestCase() { backAnimationBackground, rootTaskDisplayAreaOrganizer, transaction, - customAnimationLoader, - handler, + customAnimationLoader ) whenever(transitionAnimation.loadAppTransitionAnimation(eq(PACKAGE_NAME), eq(OPEN_RES_ID))) @@ -221,8 +218,9 @@ class CustomCrossActivityBackAnimationTest : ShellTestCase() { BackMotionEvent( /* touchX = */ touchX, /* touchY = */ 0f, - /* frameTime = */ 0, /* progress = */ progress, + /* velocityX = */ 0f, + /* velocityY = */ 0f, /* triggerBack = */ false, /* swipeEdge = */ BackEvent.EDGE_LEFT, /* departingAnimationTarget = */ null diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleDataRepositoryTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleDataRepositoryTest.kt index 9ec62c965a..e35995775f 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleDataRepositoryTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleDataRepositoryTest.kt @@ -124,7 +124,6 @@ class BubbleDataRepositoryTest : ShellTestCase() { private val testHandler = Handler(Looper.getMainLooper()) private val mainExecutor = HandlerExecutor(testHandler) - private val bgExecutor = HandlerExecutor(testHandler) private val launcherApps = mock<LauncherApps>() private val persistedBubbles = SparseArray<List<BubbleEntity>>() @@ -135,8 +134,7 @@ class BubbleDataRepositoryTest : ShellTestCase() { @Before fun setup() { persistentRepository = BubblePersistentRepository(mContext) - dataRepository = - spy(BubbleDataRepository(launcherApps, mainExecutor, bgExecutor, persistentRepository)) + dataRepository = spy(BubbleDataRepository(launcherApps, mainExecutor, persistentRepository)) persistedBubbles.put(0, user0BubbleEntities) persistedBubbles.put(1, user1BubbleEntities) diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleDataTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleDataTest.java index b3d2db6da6..93e405131a 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleDataTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleDataTest.java @@ -27,7 +27,7 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.reset; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.verifyNoMoreInteractions; +import static org.mockito.Mockito.verifyZeroInteractions; import static org.mockito.Mockito.when; import android.app.Notification; @@ -46,12 +46,11 @@ import android.view.WindowManager; import androidx.test.filters.SmallTest; -import com.android.internal.logging.testing.UiEventLoggerFake; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.bubbles.BubbleData.TimeSource; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.bubbles.BubbleBarLocation; -import com.android.wm.shell.shared.bubbles.BubbleBarUpdate; +import com.android.wm.shell.common.bubbles.BubbleBarLocation; +import com.android.wm.shell.common.bubbles.BubbleBarUpdate; import com.google.common.collect.ImmutableList; @@ -102,7 +101,6 @@ public class BubbleDataTest extends ShellTestCase { private BubbleData mBubbleData; private TestableBubblePositioner mPositioner; - private UiEventLoggerFake mUiEventLogger; @Mock private TimeSource mTimeSource; @@ -113,11 +111,11 @@ public class BubbleDataTest extends ShellTestCase { @Mock private PendingIntent mDeleteIntent; @Mock + private BubbleLogger mBubbleLogger; + @Mock private BubbleEducationController mEducationController; @Mock private ShellExecutor mMainExecutor; - @Mock - private ShellExecutor mBgExecutor; @Captor private ArgumentCaptor<BubbleData.Update> mUpdateCaptor; @@ -145,47 +143,47 @@ public class BubbleDataTest extends ShellTestCase { when(ranking.isTextChanged()).thenReturn(true); mEntryInterruptive = createBubbleEntry(1, "interruptive", "package.d", ranking); mBubbleInterruptive = new Bubble(mEntryInterruptive, mBubbleMetadataFlagListener, null, - mMainExecutor, mBgExecutor); + mMainExecutor); mEntryDismissed = createBubbleEntry(1, "dismissed", "package.d", null); mBubbleDismissed = new Bubble(mEntryDismissed, mBubbleMetadataFlagListener, null, - mMainExecutor, mBgExecutor); + mMainExecutor); mEntryLocusId = createBubbleEntry(1, "keyLocus", "package.e", null, new LocusId("locusId1")); mBubbleLocusId = new Bubble(mEntryLocusId, mBubbleMetadataFlagListener, null /* pendingIntentCanceledListener */, - mMainExecutor, mBgExecutor); + mMainExecutor); mBubbleA1 = new Bubble(mEntryA1, mBubbleMetadataFlagListener, mPendingIntentCanceledListener, - mMainExecutor, mBgExecutor); + mMainExecutor); mBubbleA2 = new Bubble(mEntryA2, mBubbleMetadataFlagListener, mPendingIntentCanceledListener, - mMainExecutor, mBgExecutor); + mMainExecutor); mBubbleA3 = new Bubble(mEntryA3, mBubbleMetadataFlagListener, mPendingIntentCanceledListener, - mMainExecutor, mBgExecutor); + mMainExecutor); mBubbleB1 = new Bubble(mEntryB1, mBubbleMetadataFlagListener, mPendingIntentCanceledListener, - mMainExecutor, mBgExecutor); + mMainExecutor); mBubbleB2 = new Bubble(mEntryB2, mBubbleMetadataFlagListener, mPendingIntentCanceledListener, - mMainExecutor, mBgExecutor); + mMainExecutor); mBubbleB3 = new Bubble(mEntryB3, mBubbleMetadataFlagListener, mPendingIntentCanceledListener, - mMainExecutor, mBgExecutor); + mMainExecutor); mBubbleC1 = new Bubble(mEntryC1, mBubbleMetadataFlagListener, mPendingIntentCanceledListener, - mMainExecutor, mBgExecutor); + mMainExecutor); Intent appBubbleIntent = new Intent(mContext, BubblesTestActivity.class); appBubbleIntent.setPackage(mContext.getPackageName()); @@ -193,14 +191,12 @@ public class BubbleDataTest extends ShellTestCase { appBubbleIntent, new UserHandle(1), mock(Icon.class), - mMainExecutor, mBgExecutor); - - mUiEventLogger = new UiEventLoggerFake(); + mMainExecutor); mPositioner = new TestableBubblePositioner(mContext, mContext.getSystemService(WindowManager.class)); - mBubbleData = new BubbleData(getContext(), new BubbleLogger(mUiEventLogger), mPositioner, - mEducationController, mMainExecutor, mBgExecutor); + mBubbleData = new BubbleData(getContext(), mBubbleLogger, mPositioner, mEducationController, + mMainExecutor); // Used by BubbleData to set lastAccessedTime when(mTimeSource.currentTimeMillis()).thenReturn(1000L); @@ -258,121 +254,6 @@ public class BubbleDataTest extends ShellTestCase { assertBubbleRemoved(mBubbleA1, Bubbles.DISMISS_USER_GESTURE); } - @Test - public void testRemoveBubbleInLauncher_beforeBubbleUpdate_processedAfter_shouldNotBeRemoved() { - sendUpdatedEntryAtTime(mEntryA1, 1000); - sendUpdatedEntryAtTime(mEntryA2, 2000); - mBubbleData.setListener(mListener); - - sendUpdatedEntryAtTime(mEntryA2, 3000); - - verifyUpdateReceived(); - assertThat(mBubbleData.hasBubbleInStackWithKey(mEntryA2.getKey())).isTrue(); - assertThat(mBubbleData.getBubbleInStackWithKey(mEntryA2.getKey()).getLastActivity()) - .isEqualTo(3000); - - // dismiss the bubble with a timestamp in the past - mBubbleData.dismissBubbleWithKey( - mEntryA2.getKey(), Bubbles.DISMISS_USER_GESTURE_FROM_LAUNCHER, 2500); - - verifyNoMoreInteractions(mListener); - assertThat(mBubbleData.hasBubbleInStackWithKey(mEntryA2.getKey())).isTrue(); - } - - @Test - public void testRemoveBubbleInLauncher_isNotSentBackToLauncher() { - sendUpdatedEntryAtTime(mEntryA1, 1000); - sendUpdatedEntryAtTime(mEntryA2, 2000); - mBubbleData.setListener(mListener); - - mBubbleData.dismissBubbleWithKey( - mEntryA2.getKey(), Bubbles.DISMISS_USER_GESTURE_FROM_LAUNCHER, 4000); - verifyUpdateReceived(); - - BubbleData.Update update = mUpdateCaptor.getValue(); - assertThat(update.removedBubbles).hasSize(1); - assertThat(update.removedBubbles.getFirst().first.getKey()).isEqualTo(mBubbleA2.getKey()); - - BubbleBarUpdate bubbleBarUpdate = update.toBubbleBarUpdate(); - assertThat(bubbleBarUpdate.removedBubbles).isEmpty(); - } - - @Test - public void testRemoveBubbleFromBubbleBar_notifCancelled_logEvent() { - mPositioner.setShowingInBubbleBar(true); - - sendUpdatedEntryAtTime(mEntryA1, 1000); - mBubbleData.setListener(mListener); - - mBubbleData.dismissBubbleWithKey(mEntryA1.getKey(), Bubbles.DISMISS_NOTIF_CANCEL); - assertThat(mUiEventLogger.numLogs()).isEqualTo(1); - assertThat(mUiEventLogger.eventId(0)).isEqualTo( - BubbleLogger.Event.BUBBLE_BAR_BUBBLE_REMOVED_CANCELED.getId()); - } - - @Test - public void testRemoveBubbleFromBubbleBar_taskFinished_logEvent() { - mPositioner.setShowingInBubbleBar(true); - - sendUpdatedEntryAtTime(mEntryA1, 1000); - mBubbleData.setListener(mListener); - - mBubbleData.dismissBubbleWithKey(mEntryA1.getKey(), Bubbles.DISMISS_TASK_FINISHED); - assertThat(mUiEventLogger.numLogs()).isEqualTo(1); - assertThat(mUiEventLogger.eventId(0)).isEqualTo( - BubbleLogger.Event.BUBBLE_BAR_BUBBLE_ACTIVITY_FINISH.getId()); - } - - @Test - public void testRemoveBubbleFromBubbleBar_notifBlocked_logEvent() { - mPositioner.setShowingInBubbleBar(true); - - sendUpdatedEntryAtTime(mEntryA1, 1000); - mBubbleData.setListener(mListener); - - mBubbleData.dismissBubbleWithKey(mEntryA1.getKey(), Bubbles.DISMISS_BLOCKED); - assertThat(mUiEventLogger.numLogs()).isEqualTo(1); - assertThat(mUiEventLogger.eventId(0)).isEqualTo( - BubbleLogger.Event.BUBBLE_BAR_BUBBLE_REMOVED_BLOCKED.getId()); - } - - @Test - public void testRemoveBubbleFromBubbleBar_noLongerBubble_logEvent() { - mPositioner.setShowingInBubbleBar(true); - - sendUpdatedEntryAtTime(mEntryA1, 1000); - mBubbleData.setListener(mListener); - - mBubbleData.dismissBubbleWithKey(mEntryA1.getKey(), Bubbles.DISMISS_NO_LONGER_BUBBLE); - assertThat(mUiEventLogger.numLogs()).isEqualTo(1); - assertThat(mUiEventLogger.eventId(0)).isEqualTo( - BubbleLogger.Event.BUBBLE_BAR_BUBBLE_REMOVED_BLOCKED.getId()); - } - - @Test - public void testRemoveBubbleFromBubbleBar_addToOverflow_logEvent() { - mPositioner.setShowingInBubbleBar(true); - - sendUpdatedEntryAtTime(mEntryA1, 1000); - mBubbleData.setListener(mListener); - - mBubbleData.dismissBubbleWithKey(mEntryA1.getKey(), Bubbles.DISMISS_AGED); - assertThat(mUiEventLogger.numLogs()).isEqualTo(1); - assertThat(mUiEventLogger.eventId(0)).isEqualTo( - BubbleLogger.Event.BUBBLE_BAR_OVERFLOW_ADD_AGED.getId()); - } - - @Test - public void testRemoveBubble_notifCancelled_noLog() { - mPositioner.setShowingInBubbleBar(false); - - sendUpdatedEntryAtTime(mEntryA1, 1000); - mBubbleData.setListener(mListener); - - mBubbleData.dismissBubbleWithKey(mEntryA1.getKey(), Bubbles.DISMISS_BLOCKED); - assertThat(mUiEventLogger.numLogs()).isEqualTo(0); - } - @Test public void ifSuppress_hideFlyout() { // Setup @@ -444,15 +325,6 @@ public class BubbleDataTest extends ShellTestCase { assertThat(update.updatedBubble.showFlyout()).isFalse(); } - @Test - public void getOrCreateBubble_withIntent_usesCorrectUser() { - Intent intent = new Intent(); - intent.setPackage(mContext.getPackageName()); - Bubble b = mBubbleData.getOrCreateBubble(intent, UserHandle.of(/* userId= */ 10)); - - assertThat(b.getUser().getIdentifier()).isEqualTo(10); - } - // // Overflow // @@ -571,22 +443,6 @@ public class BubbleDataTest extends ShellTestCase { assertThat(update.shouldShowEducation).isTrue(); } - /** Verifies that the update should contain the bubble bar location. */ - @Test - public void test_shouldUpdateBubbleBarLocation() { - // Setup - mBubbleData.setListener(mListener); - - // Test - mBubbleData.notificationEntryUpdated(mBubbleA1, /* suppressFlyout */ true, /* showInShade */ - true, BubbleBarLocation.LEFT); - - // Verify - verifyUpdateReceived(); - BubbleData.Update update = mUpdateCaptor.getValue(); - assertThat(update.mBubbleBarLocation).isEqualTo(BubbleBarLocation.LEFT); - } - /** * Verifies that the update shouldn't show the user education, if the education is required but * the bubble should auto-expand @@ -803,7 +659,7 @@ public class BubbleDataTest extends ShellTestCase { mBubbleData.setListener(mListener); changeExpandedStateAtTime(true, 2000L); - verifyNoMoreInteractions(mListener); + verifyZeroInteractions(mListener); } /** @@ -1381,20 +1237,6 @@ public class BubbleDataTest extends ShellTestCase { assertExpandedChangedTo(true); } - @Test - public void setSelectedBubbleAndExpandStackWithLocation() { - sendUpdatedEntryAtTime(mEntryA1, 1000); - sendUpdatedEntryAtTime(mEntryA2, 2000); - mBubbleData.setListener(mListener); - - mBubbleData.setSelectedBubbleAndExpandStack(mBubbleA1, BubbleBarLocation.LEFT); - - verifyUpdateReceived(); - assertSelectionChangedTo(mBubbleA1); - assertExpandedChangedTo(true); - assertLocationChangedTo(BubbleBarLocation.LEFT); - } - @Test public void testShowOverflowChanged_hasOverflowBubbles() { assertThat(mBubbleData.getOverflowBubbles()).isEmpty(); @@ -1479,10 +1321,10 @@ public class BubbleDataTest extends ShellTestCase { assertWithMessage("selectedBubble").that(update.selectedBubble).isEqualTo(bubble); } - private void assertLocationChangedTo(BubbleBarLocation location) { + private void assertSelectionCleared() { BubbleData.Update update = mUpdateCaptor.getValue(); - assertWithMessage("locationChanged").that(update.mBubbleBarLocation) - .isEqualTo(location); + assertWithMessage("selectionChanged").that(update.selectionChanged).isTrue(); + assertWithMessage("selectedBubble").that(update.selectedBubble).isNull(); } private void assertExpandedChangedTo(boolean expected) { @@ -1573,13 +1415,15 @@ public class BubbleDataTest extends ShellTestCase { sendUpdatedEntryAtTime(entry, postTime, true /* isTextChanged */); } - private void sendUpdatedEntryAtTime(BubbleEntry entry, long postTime, boolean textChanged) { + private void sendUpdatedEntryAtTime(BubbleEntry entry, long postTime, + boolean textChanged) { setPostTime(entry, postTime); // BubbleController calls this: Bubble b = mBubbleData.getOrCreateBubble(entry, null /* persistedBubble */); b.setTextChangedForTest(textChanged); // And then this - mBubbleData.notificationEntryUpdated(b, false /* suppressFlyout*/, true /* showInShade */); + mBubbleData.notificationEntryUpdated(b, false /* suppressFlyout*/, + true /* showInShade */); } private void changeExpandedStateAtTime(boolean shouldBeExpanded, long time) { diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleTest.java index 6786ba2389..afec1ee123 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleTest.java @@ -16,30 +16,24 @@ package com.android.wm.shell.bubbles; -import static android.app.ActivityTaskManager.INVALID_TASK_ID; - import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNull; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.app.Notification; import android.app.PendingIntent; -import android.app.TaskInfo; -import android.content.ComponentName; import android.content.Intent; import android.content.pm.ShortcutInfo; import android.content.res.Resources; import android.graphics.drawable.Icon; import android.os.Bundle; import android.os.UserHandle; -import android.service.notification.NotificationListenerService; import android.service.notification.StatusBarNotification; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; @@ -49,7 +43,7 @@ import androidx.test.filters.SmallTest; import com.android.wm.shell.R; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.bubbles.BubbleInfo; +import com.android.wm.shell.common.bubbles.BubbleInfo; import org.junit.Before; import org.junit.Test; @@ -66,17 +60,11 @@ public class BubbleTest extends ShellTestCase { @Mock private StatusBarNotification mSbn; @Mock - private NotificationListenerService.Ranking mRanking; - @Mock private ShellExecutor mMainExecutor; - @Mock - private ShellExecutor mBgExecutor; - private Bundle mExtras; - - // This entry / bubble are set up with PendingIntent / Icon API for chat private BubbleEntry mBubbleEntry; - private Bubble mChatBubble; + private Bundle mExtras; + private Bubble mBubble; @Mock private Bubbles.BubbleMetadataFlagListener mBubbleMetadataFlagListener; @@ -93,17 +81,11 @@ public class BubbleTest extends ShellTestCase { PendingIntent.getActivity(mContext, 0, target, PendingIntent.FLAG_MUTABLE), Icon.createWithResource(mContext, R.drawable.bubble_ic_create_bubble)) .build(); - ShortcutInfo shortcutInfo = new ShortcutInfo.Builder(mContext) - .setId("shortcutId") - .build(); when(mSbn.getNotification()).thenReturn(mNotif); when(mNotif.getBubbleMetadata()).thenReturn(metadata); when(mSbn.getKey()).thenReturn("mock"); - when(mRanking.getConversationShortcutInfo()).thenReturn(shortcutInfo); - - mBubbleEntry = new BubbleEntry(mSbn, mRanking, true, false, false, false); - mChatBubble = new Bubble(mBubbleEntry, mBubbleMetadataFlagListener, null, mMainExecutor, - mBgExecutor); + mBubbleEntry = new BubbleEntry(mSbn, null, true, false, false, false); + mBubble = new Bubble(mBubbleEntry, mBubbleMetadataFlagListener, null, mMainExecutor); } @Test @@ -167,115 +149,41 @@ public class BubbleTest extends ShellTestCase { @Test public void testBubbleMetadataFlagListener_change_notified() { - assertThat(mChatBubble.showInShade()).isTrue(); + assertThat(mBubble.showInShade()).isTrue(); - mChatBubble.setSuppressNotification(true); + mBubble.setSuppressNotification(true); - assertThat(mChatBubble.showInShade()).isFalse(); + assertThat(mBubble.showInShade()).isFalse(); - verify(mBubbleMetadataFlagListener).onBubbleMetadataFlagChanged(mChatBubble); + verify(mBubbleMetadataFlagListener).onBubbleMetadataFlagChanged(mBubble); } @Test public void testBubbleMetadataFlagListener_noChange_doesntNotify() { - assertThat(mChatBubble.showInShade()).isTrue(); + assertThat(mBubble.showInShade()).isTrue(); - mChatBubble.setSuppressNotification(false); + mBubble.setSuppressNotification(false); verify(mBubbleMetadataFlagListener, never()).onBubbleMetadataFlagChanged(any()); } @Test - public void testBubbleType_conversationShortcut() { - Bubble bubble = createChatBubble(true /* useShortcut */); - assertThat(bubble.isChat()).isTrue(); + public void testBubbleIsConversation_hasConversationShortcut() { + Bubble bubble = createBubbleWithShortcut(); + assertThat(bubble.getShortcutInfo()).isNotNull(); + assertThat(bubble.isConversation()).isTrue(); } @Test - public void testBubbleType_conversationPendingIntent() { - Bubble bubble = createChatBubble(false /* useShortcut */); - assertThat(bubble.isChat()).isTrue(); - } - - @Test - public void testBubbleType_note() { - Bubble bubble = Bubble.createNotesBubble(createIntent(), UserHandle.of(0), - mock(Icon.class), - mMainExecutor, mBgExecutor); - assertThat(bubble.isNote()).isTrue(); - } - - @Test - public void testBubbleType_shortcut() { - ShortcutInfo shortcutInfo = new ShortcutInfo.Builder(mContext) - .setId("mockShortcutId") - .build(); - Bubble bubble = Bubble.createShortcutBubble(shortcutInfo, mMainExecutor, mBgExecutor); - assertThat(bubble.isShortcut()).isTrue(); - } - - @Test - public void testBubbleType_intent() { - Bubble bubble = Bubble.createAppBubble(createIntent(), UserHandle.of(0), - mock(Icon.class), - mMainExecutor, mBgExecutor); - assertThat(bubble.isApp()).isTrue(); - } - - @Test - public void testBubbleType_taskId() { - TaskInfo info = mock(TaskInfo.class); - ComponentName componentName = mock(ComponentName.class); - when(componentName.getPackageName()).thenReturn(mContext.getPackageName()); - info.taskId = 1; - info.baseActivity = componentName; - info.baseIntent = createIntent(); - Bubble bubble = Bubble.createTaskBubble(info, UserHandle.of(0), - mock(Icon.class), - mMainExecutor, mBgExecutor); - assertThat(bubble.isApp()).isTrue(); - assertThat(bubble.getIntent()).isNotNull(); - } - - @Test - public void testShowAppBadge_chat() { - Bubble bubble = createChatBubble(true /* useShortcut */); - assertThat(bubble.isChat()).isTrue(); - assertThat(bubble.showAppBadge()).isTrue(); - } - - @Test - public void testShowAppBadge_note() { - Bubble bubble = Bubble.createNotesBubble(createIntent(), UserHandle.of(0), - mock(Icon.class), - mMainExecutor, mBgExecutor); - assertThat(bubble.isNote()).isTrue(); - assertThat(bubble.showAppBadge()).isTrue(); - } - - @Test - public void testShowAppBadge_app() { - Bubble bubble = Bubble.createAppBubble(createIntent(), UserHandle.of(0), - mock(Icon.class), - mMainExecutor, mBgExecutor); - assertThat(bubble.isApp()).isTrue(); - assertThat(bubble.showAppBadge()).isFalse(); - } - - @Test - public void testShowAppBadge_shortcut() { - ShortcutInfo shortcutInfo = new ShortcutInfo.Builder(mContext) - .setId("mockShortcutId") - .build(); - Bubble bubble = Bubble.createShortcutBubble(shortcutInfo, - mMainExecutor, mBgExecutor); - assertThat(bubble.isShortcut()).isTrue(); - assertThat(bubble.showAppBadge()).isTrue(); + public void testBubbleIsConversation_hasNoShortcut() { + Bubble bubble = new Bubble(mBubbleEntry, mBubbleMetadataFlagListener, null, mMainExecutor); + assertThat(bubble.getShortcutInfo()).isNull(); + assertThat(bubble.isConversation()).isFalse(); } @Test public void testBubbleAsBubbleBarBubble_withShortcut() { - Bubble bubble = createChatBubble(true /* useShortcut */); + Bubble bubble = createBubbleWithShortcut(); BubbleInfo bubbleInfo = bubble.asBubbleBarBubble(); assertThat(bubble.getShortcutInfo()).isNotNull(); @@ -287,11 +195,11 @@ public class BubbleTest extends ShellTestCase { } @Test - public void testBubbleAsBubbleBarBubble_withIntent() { + public void testBubbleAsBubbleBarBubble_withoutShortcut() { Intent intent = new Intent(mContext, BubblesTestActivity.class); intent.setPackage(mContext.getPackageName()); Bubble bubble = Bubble.createAppBubble(intent, new UserHandle(1 /* userId */), - null /* icon */, mMainExecutor, mBgExecutor); + null /* icon */, mMainExecutor); BubbleInfo bubbleInfo = bubble.asBubbleBarBubble(); assertThat(bubble.getShortcutInfo()).isNull(); @@ -301,37 +209,12 @@ public class BubbleTest extends ShellTestCase { assertThat(bubbleInfo.getPackageName()).isEqualTo(bubble.getPackageName()); } - @Test - public void testCleanupTaskView() { - // Create a bubble with a task id - TaskInfo info = mock(TaskInfo.class); - info.taskId = 123; - info.baseActivity = new ComponentName(mContext, "SomeActivity"); - Bubble bubble = Bubble.createTaskBubble(info, new UserHandle(1), - null /* icon */, mMainExecutor, mBgExecutor); - assertThat(bubble.getTaskId()).isEqualTo(123); - - bubble.cleanupTaskView(); - assertThat(bubble.getTaskId()).isEqualTo(INVALID_TASK_ID); - } - - private Intent createIntent() { - Intent intent = new Intent(mContext, BubblesTestActivity.class); - intent.setPackage(mContext.getPackageName()); - return intent; - } - - private Bubble createChatBubble(boolean useShortcut) { - if (useShortcut) { - ShortcutInfo shortcutInfo = new ShortcutInfo.Builder(mContext) - .setId("mockShortcutId") - .build(); - return new Bubble("mockKey", shortcutInfo, 10, Resources.ID_NULL, - "mockTitle", 0 /* taskId */, "mockLocus", true /* isDismissible */, - mMainExecutor, mBgExecutor, mBubbleMetadataFlagListener); - } else { - return new Bubble(mBubbleEntry, mBubbleMetadataFlagListener, null, mMainExecutor, - mBgExecutor); - } + private Bubble createBubbleWithShortcut() { + ShortcutInfo shortcutInfo = new ShortcutInfo.Builder(mContext) + .setId("mockShortcutId") + .build(); + return new Bubble("mockKey", shortcutInfo, 10, Resources.ID_NULL, + "mockTitle", 0 /* taskId */, "mockLocus", true /* isDismissible */, + mMainExecutor, mBubbleMetadataFlagListener); } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleViewInfoTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleViewInfoTest.kt index e34c590261..4a4c5e860b 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleViewInfoTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubbleViewInfoTest.kt @@ -33,13 +33,12 @@ import com.android.launcher3.icons.BubbleIconFactory import com.android.wm.shell.ShellTaskOrganizer import com.android.wm.shell.ShellTestCase import com.android.wm.shell.TestShellExecutor -import com.android.wm.shell.bubbles.appinfo.PackageManagerBubbleAppInfoProvider +import com.android.wm.shell.WindowManagerShellWrapper import com.android.wm.shell.bubbles.bar.BubbleBarLayerView +import com.android.wm.shell.bubbles.properties.BubbleProperties import com.android.wm.shell.common.DisplayController -import com.android.wm.shell.common.DisplayImeController import com.android.wm.shell.common.DisplayInsetsController import com.android.wm.shell.common.FloatingContentCoordinator -import com.android.wm.shell.common.HomeIntentProvider import com.android.wm.shell.common.ShellExecutor import com.android.wm.shell.common.SyncTransactionQueue import com.android.wm.shell.common.TaskStackListenerImpl @@ -58,7 +57,6 @@ import org.mockito.kotlin.doThrow import org.mockito.kotlin.eq import org.mockito.kotlin.mock import org.mockito.kotlin.whenever -import java.util.Optional import java.util.concurrent.Executor /** Tests for loading / inflating views & icons for a bubble. */ @@ -72,11 +70,10 @@ class BubbleViewInfoTest : ShellTestCase() { private lateinit var bubble: Bubble private lateinit var bubbleController: BubbleController private lateinit var mainExecutor: ShellExecutor - private lateinit var bgExecutor: ShellExecutor private lateinit var bubbleStackView: BubbleStackView private lateinit var bubbleBarLayerView: BubbleBarLayerView private lateinit var bubblePositioner: BubblePositioner - private lateinit var bubbleAppInfoProvider: PackageManagerBubbleAppInfoProvider + private lateinit var expandedViewManager: BubbleExpandedViewManager private val bubbleTaskViewFactory = BubbleTaskViewFactory { BubbleTaskView(mock<TaskView>(), mock<Executor>()) @@ -95,32 +92,21 @@ class BubbleViewInfoTest : ShellTestCase() { ) mainExecutor = TestShellExecutor() - bgExecutor = TestShellExecutor() val windowManager = context.getSystemService(WindowManager::class.java) val shellInit = ShellInit(mainExecutor) val shellCommandHandler = ShellCommandHandler() - val shellController = - ShellController( - context, - shellInit, - shellCommandHandler, - mock<DisplayInsetsController>(), - mock<UserManager>(), - mainExecutor, - ) + val shellController = ShellController(context, shellInit, shellCommandHandler, + mock<DisplayInsetsController>(), mainExecutor) bubblePositioner = BubblePositioner(context, windowManager) - val bubbleLogger = mock<BubbleLogger>() val bubbleData = BubbleData( context, - bubbleLogger, + mock<BubbleLogger>(), bubblePositioner, BubbleEducationController(context), - mainExecutor, - bgExecutor + mainExecutor ) val surfaceSynchronizer = { obj: Runnable -> obj.run() } - bubbleAppInfoProvider = PackageManagerBubbleAppInfoProvider() bubbleController = BubbleController( @@ -132,14 +118,12 @@ class BubbleViewInfoTest : ShellTestCase() { surfaceSynchronizer, FloatingContentCoordinator(), mock<BubbleDataRepository>(), - mock<BubbleTransitions>(), mock<IStatusBarService>(), windowManager, - mock<DisplayInsetsController>(), - mock<DisplayImeController>(), + WindowManagerShellWrapper(mainExecutor), mock<UserManager>(), mock<LauncherApps>(), - bubbleLogger, + mock<BubbleLogger>(), mock<TaskStackListenerImpl>(), ShellTaskOrganizer(mainExecutor), bubblePositioner, @@ -148,15 +132,12 @@ class BubbleViewInfoTest : ShellTestCase() { null, mainExecutor, mock<Handler>(), - bgExecutor, + mock<ShellExecutor>(), mock<TaskViewTransitions>(), mock<Transitions>(), mock<SyncTransactionQueue>(), mock<IWindowManager>(), - BubbleResizabilityChecker(), - mock<HomeIntentProvider>(), - bubbleAppInfoProvider, - { Optional.empty() }, + mock<BubbleProperties>() ) val bubbleStackViewManager = BubbleStackViewManager.fromBubbleController(bubbleController) @@ -171,7 +152,8 @@ class BubbleViewInfoTest : ShellTestCase() { bubbleController, mainExecutor ) - bubbleBarLayerView = BubbleBarLayerView(context, bubbleController, bubbleData, bubbleLogger) + expandedViewManager = BubbleExpandedViewManager.fromBubbleController(bubbleController) + bubbleBarLayerView = BubbleBarLayerView(context, bubbleController, bubbleData) } @Test @@ -180,12 +162,12 @@ class BubbleViewInfoTest : ShellTestCase() { val info = BubbleViewInfoTask.BubbleViewInfo.populate( context, + expandedViewManager, bubbleTaskViewFactory, bubblePositioner, bubbleStackView, iconFactory, bubble, - bubbleAppInfoProvider, false /* skipInflation */ ) assertThat(info!!).isNotNull() @@ -208,11 +190,12 @@ class BubbleViewInfoTest : ShellTestCase() { val info = BubbleViewInfoTask.BubbleViewInfo.populateForBubbleBar( context, + expandedViewManager, bubbleTaskViewFactory, + bubblePositioner, bubbleBarLayerView, iconFactory, bubble, - bubbleAppInfoProvider, false /* skipInflation */ ) assertThat(info!!).isNotNull() @@ -243,11 +226,12 @@ class BubbleViewInfoTest : ShellTestCase() { val info = BubbleViewInfoTask.BubbleViewInfo.populateForBubbleBar( context, + expandedViewManager, bubbleTaskViewFactory, + bubblePositioner, bubbleBarLayerView, iconFactory, bubble, - bubbleAppInfoProvider, true /* skipInflation */ ) assertThat(info).isNotNull() @@ -272,7 +256,7 @@ class BubbleViewInfoTest : ShellTestCase() { "mockLocus", true /* isDismissible */, mainExecutor, - bgExecutor, - metadataFlagListener) + metadataFlagListener + ) } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubblesNavBarMotionEventHandlerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubblesNavBarMotionEventHandlerTest.java index b4b9679129..c4b9c9ba43 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubblesNavBarMotionEventHandlerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/BubblesNavBarMotionEventHandlerTest.java @@ -25,6 +25,7 @@ import static org.mockito.ArgumentMatchers.eq; import static org.mockito.ArgumentMatchers.floatThat; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoMoreInteractions; +import static org.mockito.Mockito.verifyZeroInteractions; import android.os.SystemClock; import android.testing.AndroidTestingRunner; @@ -83,7 +84,7 @@ public class BubblesNavBarMotionEventHandlerTest extends ShellTestCase { verify(mMotionEventListener).onMove(0, -600); // Check that velocity up is about 5000 verify(mMotionEventListener).onUp(eq(0f), floatThat(f -> Math.round(f) == -5000)); - verifyNoMoreInteractions(mMotionEventListener); + verifyZeroInteractions(mMotionEventListener); verify(mInterceptTouchRunnable).run(); } @@ -93,8 +94,8 @@ public class BubblesNavBarMotionEventHandlerTest extends ShellTestCase { mMotionEventHandler.onMotionEvent(newEvent(ACTION_MOVE, 0, 100)); mMotionEventHandler.onMotionEvent(newEvent(ACTION_UP, 0, 100)); - verifyNoMoreInteractions(mMotionEventListener); - verifyNoMoreInteractions(mInterceptTouchRunnable); + verifyZeroInteractions(mMotionEventListener); + verifyZeroInteractions(mInterceptTouchRunnable); } @Test @@ -106,7 +107,7 @@ public class BubblesNavBarMotionEventHandlerTest extends ShellTestCase { verify(mMotionEventListener).onDown(0, 990); verify(mMotionEventListener).onMove(100, 0); verify(mMotionEventListener).onUp(0, 0); - verifyNoMoreInteractions(mMotionEventListener); + verifyZeroInteractions(mMotionEventListener); verify(mInterceptTouchRunnable).run(); } @@ -118,7 +119,7 @@ public class BubblesNavBarMotionEventHandlerTest extends ShellTestCase { verify(mMotionEventListener).onDown(0, 990); verifyNoMoreInteractions(mMotionEventListener); - verifyNoMoreInteractions(mInterceptTouchRunnable); + verifyZeroInteractions(mInterceptTouchRunnable); } @Test @@ -128,7 +129,7 @@ public class BubblesNavBarMotionEventHandlerTest extends ShellTestCase { verify(mMotionEventListener).onDown(0, 990); verify(mMotionEventListener).onCancel(); verifyNoMoreInteractions(mMotionEventListener); - verifyNoMoreInteractions(mInterceptTouchRunnable); + verifyZeroInteractions(mInterceptTouchRunnable); } private MotionEvent newEvent(int actionDown, float x, float y) { diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/animation/ExpandedAnimationControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/animation/ExpandedAnimationControllerTest.java index d829c6afb7..60f1d271c3 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/animation/ExpandedAnimationControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/animation/ExpandedAnimationControllerTest.java @@ -104,7 +104,6 @@ public class ExpandedAnimationControllerTest extends PhysicsAnimationLayoutTestC @Test public void testExpansionAndCollapse() throws Exception { expand(); - waitForAnimation(); testBubblesInCorrectExpandedPositions(); waitForMainThread(); diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/bar/BubbleBarHandleViewTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/bar/BubbleBarHandleViewTest.java index bf03834c70..d38b848fbb 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/bar/BubbleBarHandleViewTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/bubbles/bar/BubbleBarHandleViewTest.java @@ -15,12 +15,10 @@ */ package com.android.wm.shell.bubbles.bar; -import static com.google.common.truth.Truth.assertThat; - import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; -import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; @@ -49,9 +47,10 @@ public class BubbleBarHandleViewTest extends ShellTestCase { public void testUpdateHandleColor_lightBg() { mHandleView.updateHandleColor(false /* isRegionDark */, false /* animated */); - assertFalse(mHandleView.getClipToOutline()); - int handleColor = mHandleView.mHandlePaint.getColor(); - assertEquals(handleColor, + assertTrue(mHandleView.getClipToOutline()); + assertTrue(mHandleView.getBackground() instanceof ColorDrawable); + ColorDrawable bgDrawable = (ColorDrawable) mHandleView.getBackground(); + assertEquals(bgDrawable.getColor(), ContextCompat.getColor(mContext, R.color.bubble_bar_expanded_view_handle_dark)); } @@ -59,23 +58,10 @@ public class BubbleBarHandleViewTest extends ShellTestCase { public void testUpdateHandleColor_darkBg() { mHandleView.updateHandleColor(true /* isRegionDark */, false /* animated */); - assertFalse(mHandleView.getClipToOutline()); - int handleColor = mHandleView.mHandlePaint.getColor(); - assertEquals(handleColor, - ContextCompat.getColor(mContext, R.color.bubble_bar_expanded_view_handle_light)); - } - - @Test - public void testSetHandleInitialColor_beforeUpdateHandleColor_updatesColor() { - mHandleView.setHandleInitialColor(Color.RED); - assertThat(mHandleView.getHandleColor()).isEqualTo(Color.RED); - } - - @Test - public void testSetHandleInitialColor_afterUpdateHandleColor_doesNotUpdateColor() { - mHandleView.updateHandleColor(/* isRegionDark= */ true, /* animated= */ false); - mHandleView.setHandleInitialColor(Color.RED); - assertThat(mHandleView.getHandleColor()).isEqualTo( + assertTrue(mHandleView.getClipToOutline()); + assertTrue(mHandleView.getBackground() instanceof ColorDrawable); + ColorDrawable bgDrawable = (ColorDrawable) mHandleView.getBackground(); + assertEquals(bgDrawable.getColor(), ContextCompat.getColor(mContext, R.color.bubble_bar_expanded_view_handle_light)); } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/DevicePostureControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/common/DevicePostureControllerTest.java index 1472464e81..f8ee300e41 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/DevicePostureControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/DevicePostureControllerTest.java @@ -22,14 +22,13 @@ import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.clearInvocations; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.verifyNoMoreInteractions; +import static org.mockito.Mockito.verifyZeroInteractions; import android.content.Context; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; -import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.sysui.ShellInit; import org.junit.Before; @@ -42,7 +41,7 @@ import org.mockito.MockitoAnnotations; @SmallTest @RunWith(AndroidJUnit4.class) -public class DevicePostureControllerTest extends ShellTestCase { +public class DevicePostureControllerTest { @Mock private Context mContext; @@ -105,6 +104,6 @@ public class DevicePostureControllerTest extends ShellTestCase { int sameDevicePosture = mDevicePostureCaptor.getValue(); mDevicePostureController.onDevicePostureChanged(sameDevicePosture); - verifyNoMoreInteractions(mOnDevicePostureChangedListener); + verifyZeroInteractions(mOnDevicePostureChangedListener); } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayChangeControllerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayChangeControllerTests.java index 84c742626f..b8aa8e7cbc 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayChangeControllerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayChangeControllerTests.java @@ -19,23 +19,10 @@ package com.android.wm.shell.common; import static com.android.dx.mockito.inline.extended.ExtendedMockito.spy; import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.eq; -import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; -import android.app.WindowConfiguration; -import android.graphics.Rect; -import android.os.RemoteException; -import android.util.Size; -import android.view.IDisplayChangeWindowCallback; import android.view.IWindowManager; -import android.view.Surface; -import android.window.DisplayAreaInfo; -import android.window.DisplayAreaOrganizer; -import android.window.WindowContainerToken; -import android.window.WindowContainerTransaction; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; @@ -62,104 +49,16 @@ public class DisplayChangeControllerTests extends ShellTestCase { private @Mock IWindowManager mWM; private @Mock ShellInit mShellInit; private @Mock ShellExecutor mMainExecutor; - private @Mock DisplayController mDisplayController; - - private @Mock DisplayLayout mMockDisplayLayout; - private @Mock DisplayChangeController.OnDisplayChangingListener mMockOnDisplayChangingListener; - private @Mock IDisplayChangeWindowCallback mMockDisplayChangeWindowCallback; private DisplayChangeController mController; - private static final int DISPLAY_ID = 0; - private static final int START_ROTATION = Surface.ROTATION_0; - private static final int END_ROTATION = Surface.ROTATION_90; - private static final Size DISPLAY_START_SIZE = new Size(100, 100); - private static final Size DISPLAY_END_SIZE = new Size(200, 200); - @Before public void setUp() { MockitoAnnotations.initMocks(this); - mController = spy(new DisplayChangeController(mDisplayController, mWM, mShellInit, - mMainExecutor)); - mController.addDisplayChangeListener(mMockOnDisplayChangingListener); + mController = spy(new DisplayChangeController(mWM, mShellInit, mMainExecutor)); } @Test public void instantiate_addInitCallback() { verify(mShellInit, times(1)).addInitCallback(any(), any()); } - - @Test - public void onDisplayChange_sizeChange_updateDisplayLayout_thenContinueDisplayChange() throws - RemoteException { - // set up the init display layout - when(mMockDisplayLayout.width()).thenReturn(DISPLAY_START_SIZE.getWidth()); - when(mMockDisplayLayout.height()).thenReturn(DISPLAY_START_SIZE.getHeight()); - when(mDisplayController.getDisplayLayout(eq(DISPLAY_ID))).thenReturn(mMockDisplayLayout); - - // set up the new display area info - final Rect startBounds = new Rect(0, 0, - DISPLAY_START_SIZE.getWidth(), DISPLAY_START_SIZE.getHeight()); - final Rect endBounds = new Rect(0, 0, - DISPLAY_END_SIZE.getWidth(), DISPLAY_END_SIZE.getHeight()); - - // create a new display area info for size change - final DisplayAreaInfo displayAreaInfo = createDisplayAreaInfo(DISPLAY_ID, endBounds); - - mController.onDisplayChange(DISPLAY_ID, START_ROTATION, START_ROTATION, displayAreaInfo, - mMockDisplayChangeWindowCallback); - - // verify that local display layouts are updated - verify(mDisplayController, times(1)).updateDisplayLayout(eq(DISPLAY_ID), - eq(startBounds), eq(endBounds), eq(START_ROTATION), eq(START_ROTATION)); - - // verify that display changing callbacks are dispatched - verify(mMockOnDisplayChangingListener, times(1)).onDisplayChange( - eq(DISPLAY_ID), eq(START_ROTATION), eq(START_ROTATION), eq(displayAreaInfo), - any(WindowContainerTransaction.class)); - - verify(mMockDisplayChangeWindowCallback, times(1)) - .continueDisplayChange(any(WindowContainerTransaction.class)); - } - - @Test - public void onDisplayChange_rotationChange_updateDisplayLayout_thenContinueDisplayChange() - throws RemoteException { - // set up the init display layout - when(mMockDisplayLayout.width()).thenReturn(DISPLAY_START_SIZE.getWidth()); - when(mMockDisplayLayout.height()).thenReturn(DISPLAY_START_SIZE.getHeight()); - when(mDisplayController.getDisplayLayout(eq(DISPLAY_ID))).thenReturn(mMockDisplayLayout); - - // set up the new display area info - final Rect startBounds = new Rect(0, 0, - DISPLAY_START_SIZE.getWidth(), DISPLAY_START_SIZE.getHeight()); - - // create a new display area info for size change - final DisplayAreaInfo displayAreaInfo = createDisplayAreaInfo(DISPLAY_ID, startBounds); - - mController.onDisplayChange(DISPLAY_ID, START_ROTATION, END_ROTATION, displayAreaInfo, - mMockDisplayChangeWindowCallback); - - // verify that local display layouts are updated - verify(mDisplayController, times(1)).updateDisplayLayout(eq(DISPLAY_ID), - eq(startBounds), eq(startBounds), eq(START_ROTATION), eq(END_ROTATION)); - - // verify that display changing callbacks are dispatched - verify(mMockOnDisplayChangingListener, times(1)).onDisplayChange( - eq(DISPLAY_ID), eq(START_ROTATION), eq(END_ROTATION), eq(displayAreaInfo), - any(WindowContainerTransaction.class)); - - verify(mMockDisplayChangeWindowCallback, times(1)) - .continueDisplayChange(any(WindowContainerTransaction.class)); - } - - private DisplayAreaInfo createDisplayAreaInfo(int displayId, Rect endBounds) { - final WindowContainerToken mMockToken = mock(WindowContainerToken.class); - final WindowConfiguration windowConfiguration = new WindowConfiguration(); - windowConfiguration.setBounds(endBounds); - - final DisplayAreaInfo displayAreaInfo = new DisplayAreaInfo(mMockToken, - displayId, DisplayAreaOrganizer.FEATURE_DEFAULT_TASK_CONTAINER); - displayAreaInfo.configuration.windowConfiguration.setTo(windowConfiguration); - return displayAreaInfo; - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayControllerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayControllerTests.java index c4d75a42f9..1e5e153fdf 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayControllerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayControllerTests.java @@ -16,54 +16,26 @@ package com.android.wm.shell.common; -import static com.android.server.display.feature.flags.Flags.FLAG_ENABLE_DISPLAY_CONTENT_MODE_MANAGEMENT; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNotSame; -import static org.junit.Assert.assertNull; import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.eq; -import static org.mockito.Mockito.doAnswer; -import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.never; -import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; -import android.content.res.Configuration; -import android.graphics.RectF; -import android.hardware.display.DisplayManager; -import android.hardware.display.DisplayTopology; -import android.os.RemoteException; -import android.platform.test.annotations.EnableFlags; -import android.testing.TestableContext; -import android.util.SparseArray; -import android.view.Display; -import android.view.DisplayAdjustments; -import android.view.IDisplayWindowListener; +import android.content.Context; import android.view.IWindowManager; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; -import com.android.window.flags2.Flags; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.TestSyncExecutor; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; import com.android.wm.shell.sysui.ShellInit; -import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.MockitoAnnotations; -import java.util.function.Consumer; - /** * Tests for the display controller. * @@ -73,199 +45,21 @@ import java.util.function.Consumer; @SmallTest @RunWith(AndroidJUnit4.class) public class DisplayControllerTests extends ShellTestCase { - @Mock private IWindowManager mWM; - @Mock private ShellInit mShellInit; - @Mock private DisplayManager mDisplayManager; - @Mock private DisplayTopology mMockTopology; - @Mock private DisplayController.OnDisplaysChangedListener mListener; - private TestSyncExecutor mMainExecutor; - private IDisplayWindowListener mDisplayContainerListener; - private Consumer<DisplayTopology> mCapturedTopologyListener; - private Display mMockDisplay0; - private Display mMockDisplay1; + + private @Mock Context mContext; + private @Mock IWindowManager mWM; + private @Mock ShellInit mShellInit; + private @Mock ShellExecutor mMainExecutor; private DisplayController mController; - private FakeDesktopState mDesktopState; - private static final int DISPLAY_ID_0 = 0; - private static final int DISPLAY_ID_1 = 1; - private static final RectF DISPLAY_ABS_BOUNDS_0 = new RectF(10, 10, 20, 20); - private static final RectF DISPLAY_ABS_BOUNDS_1 = new RectF(11, 11, 22, 22); - private AutoCloseable mMocksInit = null; @Before - public void setUp() throws RemoteException { - mDesktopState = new FakeDesktopState(); - mMocksInit = MockitoAnnotations.openMocks(this); - - mContext = spy(new TestableContext( - androidx.test.platform.app.InstrumentationRegistry.getInstrumentation() - .getContext(), null)); - - mMainExecutor = new TestSyncExecutor(); - mController = new DisplayController( - mContext, mWM, mShellInit, mMainExecutor, mDisplayManager, mDesktopState); - - mMockDisplay0 = mock(Display.class); - when(mMockDisplay0.getDisplayAdjustments()).thenReturn( - new DisplayAdjustments(new Configuration())); - when(mMockDisplay0.getDisplayId()).thenReturn(DISPLAY_ID_0); - when(mDisplayManager.getDisplay(eq(DISPLAY_ID_0))).thenReturn(mMockDisplay0); - - mMockDisplay1 = mock(Display.class); - when(mMockDisplay1.getDisplayAdjustments()).thenReturn( - new DisplayAdjustments(new Configuration())); - when(mMockDisplay1.getDisplayId()).thenReturn(DISPLAY_ID_1); - when(mDisplayManager.getDisplay(eq(DISPLAY_ID_1))).thenReturn(mMockDisplay1); - - when(mDisplayManager.getDisplayTopology()).thenReturn(mMockTopology); - doAnswer(invocation -> { - mDisplayContainerListener = invocation.getArgument(0); - return new int[]{DISPLAY_ID_0}; - }).when(mWM).registerDisplayWindowListener(any()); - doAnswer(invocation -> { - mCapturedTopologyListener = invocation.getArgument(1); - return null; - }).when(mDisplayManager).registerTopologyListener(any(), any()); - when(mWM.isEligibleForDesktopMode(anyInt())).thenReturn(false); - SparseArray<RectF> absoluteBounds = new SparseArray<>(); - absoluteBounds.put(DISPLAY_ID_0, DISPLAY_ABS_BOUNDS_0); - absoluteBounds.put(DISPLAY_ID_1, DISPLAY_ABS_BOUNDS_1); - when(mMockTopology.getAbsoluteBounds()).thenReturn(absoluteBounds); - } - - @After - public void tearDown() throws Exception { - if (mMocksInit != null) { - mMocksInit.close(); - mMocksInit = null; - } + public void setUp() { + MockitoAnnotations.initMocks(this); + mController = new DisplayController(mContext, mWM, mShellInit, mMainExecutor); } @Test public void instantiateController_addInitCallback() { verify(mShellInit, times(1)).addInitCallback(any(), eq(mController)); } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG) - public void onInit_canEnterDesktopMode_registerListeners() throws RemoteException { - mDesktopState.setCanEnterDesktopMode(true); - - mController.onInit(); - - assertNotNull(mController.getDisplayContext(DISPLAY_ID_0)); - verify(mWM).registerDisplayWindowListener(any()); - verify(mDisplayManager).registerTopologyListener(eq(mMainExecutor), any()); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG) - public void onInit_canNotEnterDesktopMode_onlyRegisterDisplayWindowListener() - throws RemoteException { - mDesktopState.setCanEnterDesktopMode(false); - - mController.onInit(); - - assertNotNull(mController.getDisplayContext(DISPLAY_ID_0)); - verify(mWM).registerDisplayWindowListener(any()); - verify(mDisplayManager, never()).registerTopologyListener(any(), any()); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG) - public void addDisplayWindowListener_notifiesExistingDisplaysAndTopology() { - mDesktopState.setCanEnterDesktopMode(true); - - mController.onInit(); - mController.addDisplayWindowListener(mListener); - - verify(mListener).onDisplayAdded(eq(DISPLAY_ID_0)); - verify(mListener).onTopologyChanged(eq(mMockTopology)); - } - - @Test - public void onDisplayAddedAndRemoved_updatesDisplayContexts() throws RemoteException { - mController.onInit(); - mController.addDisplayWindowListener(mListener); - - mDisplayContainerListener.onDisplayAdded(DISPLAY_ID_1); - - verify(mListener).onDisplayAdded(eq(DISPLAY_ID_0)); - verify(mListener).onDisplayAdded(eq(DISPLAY_ID_1)); - assertNotNull(mController.getDisplayContext(DISPLAY_ID_1)); - verify(mContext).createDisplayContext(eq(mMockDisplay1)); - - mDisplayContainerListener.onDisplayRemoved(DISPLAY_ID_1); - - assertNull(mController.getDisplayContext(DISPLAY_ID_1)); - verify(mListener).onDisplayRemoved(eq(DISPLAY_ID_1)); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG) - public void onDisplayTopologyChanged_updateDisplayLayout() throws RemoteException { - mDesktopState.setCanEnterDesktopMode(true); - mController.onInit(); - mController.addDisplayWindowListener(mListener); - mDisplayContainerListener.onDisplayAdded(DISPLAY_ID_1); - - mCapturedTopologyListener.accept(mMockTopology); - - assertEquals(DISPLAY_ABS_BOUNDS_0, mController.getDisplayLayout(DISPLAY_ID_0) - .globalBoundsDp()); - assertEquals(DISPLAY_ABS_BOUNDS_1, mController.getDisplayLayout(DISPLAY_ID_1) - .globalBoundsDp()); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG) - public void onDisplayTopologyChanged_topologyBeforeDisplayAdded_appliesBoundsOnAdd() - throws RemoteException { - mDesktopState.setCanEnterDesktopMode(true); - mController.onInit(); - mController.addDisplayWindowListener(mListener); - - mCapturedTopologyListener.accept(mMockTopology); - - assertNull(mController.getDisplayLayout(DISPLAY_ID_1)); - - mDisplayContainerListener.onDisplayAdded(DISPLAY_ID_1); - - assertEquals(DISPLAY_ABS_BOUNDS_0, - mController.getDisplayLayout(DISPLAY_ID_0).globalBoundsDp()); - assertEquals(DISPLAY_ABS_BOUNDS_1, - mController.getDisplayLayout(DISPLAY_ID_1).globalBoundsDp()); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG) - public void onDisplayConfigurationChanged_reInitDisplayLayout() - throws RemoteException { - mDesktopState.setCanEnterDesktopMode(true); - mController.onInit(); - mController.addDisplayWindowListener(mListener); - - mCapturedTopologyListener.accept(mMockTopology); - - DisplayLayout displayLayoutBefore = mController.getDisplayLayout(DISPLAY_ID_0); - mDisplayContainerListener.onDisplayConfigurationChanged(DISPLAY_ID_0, new Configuration()); - DisplayLayout displayLayoutAfter = mController.getDisplayLayout(DISPLAY_ID_0); - - assertNotSame(displayLayoutBefore, displayLayoutAfter); - assertEquals(DISPLAY_ABS_BOUNDS_0, - mController.getDisplayLayout(DISPLAY_ID_0).globalBoundsDp()); - } - - @Test - @EnableFlags(FLAG_ENABLE_DISPLAY_CONTENT_MODE_MANAGEMENT) - public void onEligibleForDesktopModeChanged_recreateLayout() throws RemoteException { - mController.onInit(); - mDesktopState.getOverrideDesktopModeSupportPerDisplay().put(DISPLAY_ID_1, false); - mDisplayContainerListener.onDisplayAdded(DISPLAY_ID_1); - mDesktopState.getOverrideDesktopModeSupportPerDisplay().put(DISPLAY_ID_1, true); - DisplayLayout initialLayout = mController.getDisplayLayout(DISPLAY_ID_1); - - mDisplayContainerListener.onDesktopModeEligibleChanged(DISPLAY_ID_1); - - assertNotSame(initialLayout, mController.getDisplayLayout(DISPLAY_ID_1)); - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayImeControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayImeControllerTest.java index 3a378de4f8..2c0aa12f22 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayImeControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayImeControllerTest.java @@ -21,21 +21,19 @@ import static android.view.InsetsSource.ID_IME; import static android.view.Surface.ROTATION_0; import static android.view.WindowInsets.Type.ime; +import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyInt; -import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.verifyNoMoreInteractions; +import static org.mockito.Mockito.verifyZeroInteractions; import android.graphics.Insets; import android.graphics.Point; -import android.os.Looper; -import android.view.IWindowManager; import android.view.InsetsSource; import android.view.InsetsSourceControl; import android.view.InsetsState; @@ -45,7 +43,6 @@ import android.view.inputmethod.ImeTracker; import androidx.test.filters.SmallTest; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.sysui.ShellInit; import org.junit.Before; @@ -63,13 +60,11 @@ import java.util.concurrent.Executor; */ @SmallTest public class DisplayImeControllerTest extends ShellTestCase { + @Mock private SurfaceControl.Transaction mT; @Mock private ShellInit mShellInit; - @Mock - private IWindowManager mWm; - private DisplayImeController mDisplayImeController; private DisplayImeController.PerDisplay mPerDisplay; private Executor mExecutor; @@ -77,8 +72,7 @@ public class DisplayImeControllerTest extends ShellTestCase { public void setUp() throws Exception { MockitoAnnotations.initMocks(this); mExecutor = spy(Runnable::run); - mDisplayImeController = new DisplayImeController(mWm, mShellInit, null, null, - new TransactionPool() { + mPerDisplay = new DisplayImeController(null, mShellInit, null, null, new TransactionPool() { @Override public SurfaceControl.Transaction acquire() { return mT; @@ -89,10 +83,8 @@ public class DisplayImeControllerTest extends ShellTestCase { } }, mExecutor) { @Override - void removeImeSurface(int displayId) { - } - }; - mPerDisplay = mDisplayImeController.new PerDisplay(DEFAULT_DISPLAY, ROTATION_0); + void removeImeSurface() { } + }.new PerDisplay(DEFAULT_DISPLAY, ROTATION_0); } @Test @@ -102,33 +94,47 @@ public class DisplayImeControllerTest extends ShellTestCase { @Test public void insetsControlChanged_schedulesNoWorkOnExecutor() { - Looper.prepare(); mPerDisplay.insetsControlChanged(insetsStateWithIme(false), insetsSourceControl()); - verifyNoMoreInteractions(mExecutor); + verifyZeroInteractions(mExecutor); } @Test public void insetsChanged_schedulesNoWorkOnExecutor() { - Looper.prepare(); mPerDisplay.insetsChanged(insetsStateWithIme(false)); - verifyNoMoreInteractions(mExecutor); + verifyZeroInteractions(mExecutor); } @Test public void showInsets_schedulesNoWorkOnExecutor() { - mPerDisplay.showInsets(ime(), ImeTracker.Token.empty()); - verifyNoMoreInteractions(mExecutor); + mPerDisplay.showInsets(ime(), true /* fromIme */, ImeTracker.Token.empty()); + verifyZeroInteractions(mExecutor); } @Test public void hideInsets_schedulesNoWorkOnExecutor() { - mPerDisplay.hideInsets(ime(), ImeTracker.Token.empty()); - verifyNoMoreInteractions(mExecutor); + mPerDisplay.hideInsets(ime(), true /* fromIme */, ImeTracker.Token.empty()); + verifyZeroInteractions(mExecutor); + } + + @Test + public void reappliesVisibilityToChangedLeash() { + verifyZeroInteractions(mT); + mPerDisplay.mImeShowing = true; + + mPerDisplay.insetsControlChanged(insetsStateWithIme(false), insetsSourceControl()); + + assertFalse(mPerDisplay.mImeShowing); + verify(mT).hide(any()); + + mPerDisplay.mImeShowing = true; + mPerDisplay.insetsControlChanged(insetsStateWithIme(true), insetsSourceControl()); + + assertTrue(mPerDisplay.mImeShowing); + verify(mT).show(any()); } @Test public void insetsControlChanged_updateImeSourceControl() { - Looper.prepare(); mPerDisplay.insetsControlChanged(insetsStateWithIme(false), insetsSourceControl()); assertNotNull(mPerDisplay.mImeSourceControl); @@ -136,18 +142,6 @@ public class DisplayImeControllerTest extends ShellTestCase { assertNull(mPerDisplay.mImeSourceControl); } - @Test - public void setImeInputTargetRequestedVisibility_invokeOnImeRequested() { - var mockPp = mock(DisplayImeController.ImePositionProcessor.class); - mDisplayImeController.addPositionProcessor(mockPp); - - mPerDisplay.setImeInputTargetRequestedVisibility(true, null /* statsToken */); - verify(mockPp).onImeRequested(anyInt(), eq(true)); - - mPerDisplay.setImeInputTargetRequestedVisibility(false, null /* statsToken */); - verify(mockPp).onImeRequested(anyInt(), eq(false)); - } - private InsetsSourceControl[] insetsSourceControl() { return new InsetsSourceControl[]{ new InsetsSourceControl( diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayInsetsControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayInsetsControllerTest.java index e35588276a..669e433ba3 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayInsetsControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayInsetsControllerTest.java @@ -18,7 +18,6 @@ package com.android.wm.shell.common; import static android.view.Display.DEFAULT_DISPLAY; -import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.eq; @@ -120,8 +119,10 @@ public class DisplayInsetsControllerTest extends ShellTestCase { WindowInsets.Type.defaultVisible()); mInsetsControllersByDisplayId.get(DEFAULT_DISPLAY).insetsChanged(null); mInsetsControllersByDisplayId.get(DEFAULT_DISPLAY).insetsControlChanged(null, null); - mInsetsControllersByDisplayId.get(DEFAULT_DISPLAY).showInsets(0, ImeTracker.Token.empty()); - mInsetsControllersByDisplayId.get(DEFAULT_DISPLAY).hideInsets(0, ImeTracker.Token.empty()); + mInsetsControllersByDisplayId.get(DEFAULT_DISPLAY).showInsets(0, false, + ImeTracker.Token.empty()); + mInsetsControllersByDisplayId.get(DEFAULT_DISPLAY).hideInsets(0, false, + ImeTracker.Token.empty()); mExecutor.flushAll(); assertTrue(defaultListener.topFocusedWindowChangedCount == 1); @@ -140,8 +141,10 @@ public class DisplayInsetsControllerTest extends ShellTestCase { WindowInsets.Type.defaultVisible()); mInsetsControllersByDisplayId.get(SECOND_DISPLAY).insetsChanged(null); mInsetsControllersByDisplayId.get(SECOND_DISPLAY).insetsControlChanged(null, null); - mInsetsControllersByDisplayId.get(SECOND_DISPLAY).showInsets(0, ImeTracker.Token.empty()); - mInsetsControllersByDisplayId.get(SECOND_DISPLAY).hideInsets(0, ImeTracker.Token.empty()); + mInsetsControllersByDisplayId.get(SECOND_DISPLAY).showInsets(0, false, + ImeTracker.Token.empty()); + mInsetsControllersByDisplayId.get(SECOND_DISPLAY).hideInsets(0, false, + ImeTracker.Token.empty()); mExecutor.flushAll(); assertTrue(defaultListener.topFocusedWindowChangedCount == 1); @@ -157,19 +160,6 @@ public class DisplayInsetsControllerTest extends ShellTestCase { assertTrue(secondListener.hideInsetsCount == 1); } - @Test - public void testGlobalListenerCallback() throws RemoteException { - TrackedListener globalListener = new TrackedListener(); - addDisplay(SECOND_DISPLAY); - mController.addGlobalInsetsChangedListener(globalListener); - - mInsetsControllersByDisplayId.get(DEFAULT_DISPLAY).insetsChanged(null); - mInsetsControllersByDisplayId.get(SECOND_DISPLAY).insetsChanged(null); - mExecutor.flushAll(); - - assertEquals(2, globalListener.insetsChangedCount); - } - private void addDisplay(int displayId) throws RemoteException { mController.onDisplayAdded(displayId); verify(mWm, times(mInsetsControllersByDisplayId.size() + 1)) @@ -213,12 +203,12 @@ public class DisplayInsetsControllerTest extends ShellTestCase { } @Override - public void showInsets(int types, @Nullable ImeTracker.Token statsToken) { + public void showInsets(int types, boolean fromIme, @Nullable ImeTracker.Token statsToken) { showInsetsCount++; } @Override - public void hideInsets(int types, @Nullable ImeTracker.Token statsToken) { + public void hideInsets(int types, boolean fromIme, @Nullable ImeTracker.Token statsToken) { hideInsetsCount++; } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayLayoutTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayLayoutTest.java index b0a455d1bc..d467b399eb 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayLayoutTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/DisplayLayoutTest.java @@ -33,9 +33,7 @@ import static org.mockito.Mockito.when; import android.content.res.Configuration; import android.content.res.Resources; import android.graphics.Insets; -import android.graphics.PointF; import android.graphics.Rect; -import android.graphics.RectF; import android.view.DisplayCutout; import android.view.DisplayInfo; @@ -60,7 +58,6 @@ import org.mockito.quality.Strictness; @SmallTest public class DisplayLayoutTest extends ShellTestCase { private MockitoSession mMockitoSession; - private static final float DELTA = 0.1f; // Constant for assertion delta @Before public void setup() { @@ -133,39 +130,6 @@ public class DisplayLayoutTest extends ShellTestCase { assertEquals(new Rect(40, 0, 60, 0), dl.nonDecorInsets()); } - @Test - public void testDpPxConversion() { - int px = 100; - float dp = 53.33f; - int xPx = 100; - int yPx = 200; - float xDp = 164.33f; - float yDp = 328.66f; - - Resources res = createResources(40, 50, false); - DisplayInfo info = createDisplayInfo(1000, 1500, 0, ROTATION_0); - DisplayLayout dl = new DisplayLayout(info, res, false, false); - dl.setGlobalBoundsDp(new RectF(111f, 222f, 300f, 400f)); - - // Test pxToDp - float resultDp = dl.pxToDp(px); - assertEquals(dp, resultDp, DELTA); - - // Test dpToPx - float resultPx = dl.dpToPx(dp); - assertEquals(px, resultPx, DELTA); - - // Test localPxToGlobalDp - PointF resultGlobalDp = dl.localPxToGlobalDp(xPx, yPx); - assertEquals(xDp, resultGlobalDp.x, DELTA); - assertEquals(yDp, resultGlobalDp.y, DELTA); - - // Test globalDpToLocalPx - PointF resultLocalPx = dl.globalDpToLocalPx(xDp, yDp); - assertEquals(xPx, resultLocalPx.x, DELTA); - assertEquals(yPx, resultLocalPx.y, DELTA); - } - private Resources createResources(int navLand, int navPort, boolean navMoves) { Configuration cfg = new Configuration(); cfg.uiMode = UI_MODE_TYPE_NORMAL; diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/MultiInstanceHelperTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/common/MultiInstanceHelperTest.kt index 6b0c390ac2..bec91e910c 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/MultiInstanceHelperTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/MultiInstanceHelperTest.kt @@ -33,6 +33,8 @@ import org.junit.runner.RunWith import org.mockito.ArgumentMatchers import org.mockito.ArgumentMatchers.eq import org.mockito.kotlin.any +import org.mockito.kotlin.doReturn +import org.mockito.kotlin.doThrow import org.mockito.kotlin.mock import org.mockito.kotlin.never import org.mockito.kotlin.verify @@ -78,19 +80,17 @@ class MultiInstanceHelperTest : ShellTestCase() { @Test fun supportsMultiInstanceSplit_inStaticAllowList() { val allowList = arrayOf(TEST_PACKAGE) - val helper = MultiInstanceHelper(mContext, context.packageManager, allowList, - mock(), mock(), true) + val helper = MultiInstanceHelper(mContext, context.packageManager, allowList, true) val component = ComponentName(TEST_PACKAGE, TEST_ACTIVITY) - assertEquals(true, helper.supportsMultiInstanceSplit(component, TEST_OTHER_USER_ID)) + assertEquals(true, helper.supportsMultiInstanceSplit(component)) } @Test fun supportsMultiInstanceSplit_notInStaticAllowList() { val allowList = arrayOf(TEST_PACKAGE) - val helper = MultiInstanceHelper(mContext, context.packageManager, allowList, - mock(), mock(), true) + val helper = MultiInstanceHelper(mContext, context.packageManager, allowList, true) val component = ComponentName(TEST_NOT_ALLOWED_PACKAGE, TEST_ACTIVITY) - assertEquals(false, helper.supportsMultiInstanceSplit(component, TEST_OTHER_USER_ID)) + assertEquals(false, helper.supportsMultiInstanceSplit(component)) } @Test @@ -99,17 +99,17 @@ class MultiInstanceHelperTest : ShellTestCase() { val component = ComponentName(TEST_PACKAGE, TEST_ACTIVITY) val pm = mock<PackageManager>() val activityProp = PackageManager.Property("", true, "", "") - whenever(pm.getPropertyAsUser(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), - eq(component.packageName), eq(component.className), eq(TEST_OTHER_USER_ID))) + whenever(pm.getProperty(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), + eq(component))) .thenReturn(activityProp) val appProp = PackageManager.Property("", false, "", "") - whenever(pm.getPropertyAsUser(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), - eq(component.packageName), eq(null), eq(TEST_OTHER_USER_ID))) + whenever(pm.getProperty(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), + eq(component.packageName))) .thenReturn(appProp) - val helper = MultiInstanceHelper(mContext, pm, emptyArray(), mock(), mock(), true) + val helper = MultiInstanceHelper(mContext, pm, emptyArray(), true) // Expect activity property to override application property - assertEquals(true, helper.supportsMultiInstanceSplit(component, TEST_OTHER_USER_ID)) + assertEquals(true, helper.supportsMultiInstanceSplit(component)) } @Test @@ -118,17 +118,17 @@ class MultiInstanceHelperTest : ShellTestCase() { val component = ComponentName(TEST_PACKAGE, TEST_ACTIVITY) val pm = mock<PackageManager>() val activityProp = PackageManager.Property("", false, "", "") - whenever(pm.getPropertyAsUser(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), - eq(component.packageName), eq(component.className), eq(TEST_OTHER_USER_ID))) + whenever(pm.getProperty(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), + eq(component))) .thenReturn(activityProp) val appProp = PackageManager.Property("", true, "", "") - whenever(pm.getPropertyAsUser(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), - eq(component.packageName), eq(null), eq(TEST_OTHER_USER_ID))) + whenever(pm.getProperty(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), + eq(component.packageName))) .thenReturn(appProp) - val helper = MultiInstanceHelper(mContext, pm, emptyArray(), mock(), mock(), true) + val helper = MultiInstanceHelper(mContext, pm, emptyArray(), true) // Expect activity property to override application property - assertEquals(false, helper.supportsMultiInstanceSplit(component, TEST_OTHER_USER_ID)) + assertEquals(false, helper.supportsMultiInstanceSplit(component)) } @Test @@ -136,17 +136,17 @@ class MultiInstanceHelperTest : ShellTestCase() { fun supportsMultiInstanceSplit_noActivityPropertyApplicationPropertyTrue() { val component = ComponentName(TEST_PACKAGE, TEST_ACTIVITY) val pm = mock<PackageManager>() - whenever(pm.getPropertyAsUser(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), - eq(component.packageName), eq(component.className), eq(TEST_OTHER_USER_ID))) + whenever(pm.getProperty(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), + eq(component))) .thenThrow(PackageManager.NameNotFoundException()) val appProp = PackageManager.Property("", true, "", "") - whenever(pm.getPropertyAsUser(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), - eq(component.packageName), eq(null), eq(TEST_OTHER_USER_ID))) + whenever(pm.getProperty(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), + eq(component.packageName))) .thenReturn(appProp) - val helper = MultiInstanceHelper(mContext, pm, emptyArray(), mock(), mock(), true) + val helper = MultiInstanceHelper(mContext, pm, emptyArray(), true) // Expect fall through to app property - assertEquals(true, helper.supportsMultiInstanceSplit(component, TEST_OTHER_USER_ID)) + assertEquals(true, helper.supportsMultiInstanceSplit(component)) } @Test @@ -154,15 +154,15 @@ class MultiInstanceHelperTest : ShellTestCase() { fun supportsMultiInstanceSplit_noActivityOrAppProperty() { val component = ComponentName(TEST_PACKAGE, TEST_ACTIVITY) val pm = mock<PackageManager>() - whenever(pm.getPropertyAsUser(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), - eq(component.packageName), eq(component.className), eq(TEST_OTHER_USER_ID))) + whenever(pm.getProperty(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), + eq(component))) .thenThrow(PackageManager.NameNotFoundException()) - whenever(pm.getPropertyAsUser(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), - eq(component.packageName), eq(null), eq(TEST_OTHER_USER_ID))) + whenever(pm.getProperty(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), + eq(component.packageName))) .thenThrow(PackageManager.NameNotFoundException()) - val helper = MultiInstanceHelper(mContext, pm, emptyArray(), mock(), mock(), true) - assertEquals(false, helper.supportsMultiInstanceSplit(component, TEST_OTHER_USER_ID)) + val helper = MultiInstanceHelper(mContext, pm, emptyArray(), true) + assertEquals(false, helper.supportsMultiInstanceSplit(component)) } @Test @@ -171,25 +171,24 @@ class MultiInstanceHelperTest : ShellTestCase() { val component = ComponentName(TEST_PACKAGE, TEST_ACTIVITY) val pm = mock<PackageManager>() val activityProp = PackageManager.Property("", true, "", "") - whenever(pm.getPropertyAsUser(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), - eq(component.packageName), eq(component.className), eq(TEST_OTHER_USER_ID))) + whenever(pm.getProperty(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), + eq(component))) .thenReturn(activityProp) val appProp = PackageManager.Property("", true, "", "") - whenever(pm.getPropertyAsUser(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), - eq(component.packageName), eq(null), eq(TEST_OTHER_USER_ID))) + whenever(pm.getProperty(eq(PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI), + eq(component.packageName))) .thenReturn(appProp) - val helper = MultiInstanceHelper(mContext, pm, emptyArray(), mock(), mock(), false) + val helper = MultiInstanceHelper(mContext, pm, emptyArray(), false) // Expect we only check the static list and not the property - assertEquals(false, helper.supportsMultiInstanceSplit(component, TEST_OTHER_USER_ID)) + assertEquals(false, helper.supportsMultiInstanceSplit(component)) verify(pm, never()).getProperty(any(), any<ComponentName>()) } companion object { val TEST_PACKAGE = "com.android.wm.shell.common" - val TEST_NOT_ALLOWED_PACKAGE = "com.android.wm.shell.common.fake" - val TEST_ACTIVITY = "TestActivity" + val TEST_NOT_ALLOWED_PACKAGE = "com.android.wm.shell.common.fake"; + val TEST_ACTIVITY = "TestActivity"; val TEST_SHORTCUT_ID = "test_shortcut_1" - val TEST_OTHER_USER_ID = 1234 } } \ No newline at end of file diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/TabletopModeControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/common/TabletopModeControllerTest.java index 7d18669758..96d202ce3a 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/TabletopModeControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/TabletopModeControllerTest.java @@ -29,7 +29,7 @@ import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.clearInvocations; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.verifyNoMoreInteractions; +import static org.mockito.Mockito.verifyZeroInteractions; import static org.mockito.Mockito.when; import android.content.Context; @@ -145,7 +145,7 @@ public class TabletopModeControllerTest extends ShellTestCase { mConfiguration.windowConfiguration.setDisplayRotation(Surface.ROTATION_0); mPipTabletopController.onDisplayConfigurationChanged(DEFAULT_DISPLAY, mConfiguration); - verifyNoMoreInteractions(mOnTabletopModeChangedListener); + verifyZeroInteractions(mOnTabletopModeChangedListener); } // Test cases starting from folded state (DEVICE_POSTURE_CLOSED) diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/split/DividerViewTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/common/split/DividerViewTest.java index 544c94394d..636c6326d2 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/split/DividerViewTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/split/DividerViewTest.java @@ -25,7 +25,6 @@ import static org.mockito.Mockito.verify; import android.content.res.Configuration; import android.graphics.Rect; -import android.os.Handler; import android.os.SystemClock; import android.provider.DeviceConfig; import android.view.InputDevice; @@ -36,15 +35,10 @@ import androidx.test.annotation.UiThreadTest; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; -import com.android.wm.shell.R; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayImeController; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; -import com.android.wm.shell.splitscreen.SplitStatusBarHider; - -import com.google.android.msdl.domain.MSDLPlayer; import org.junit.Before; import org.junit.Test; @@ -61,11 +55,6 @@ public class DividerViewTest extends ShellTestCase { private @Mock DisplayController mDisplayController; private @Mock DisplayImeController mDisplayImeController; private @Mock ShellTaskOrganizer mTaskOrganizer; - private @Mock SplitState mSplitState; - private @Mock Handler mHandler; - private @Mock SplitStatusBarHider mStatusBarHider; - private @Mock MSDLPlayer mMSDLPlayer; - private FakeDesktopState mDesktopState; private SplitLayout mSplitLayout; private DividerView mDividerView; @@ -73,17 +62,15 @@ public class DividerViewTest extends ShellTestCase { @UiThreadTest public void setup() { MockitoAnnotations.initMocks(this); - mDesktopState = new FakeDesktopState(); Configuration configuration = getConfiguration(); - mSplitLayout = spy(new SplitLayout("TestSplitLayout", mContext, configuration, + mSplitLayout = new SplitLayout("TestSplitLayout", mContext, configuration, mSplitLayoutHandler, mCallbacks, mDisplayController, mDisplayImeController, - mTaskOrganizer, SplitLayout.PARALLAX_NONE, mSplitState, mHandler, mStatusBarHider, - mDesktopState, mMSDLPlayer)); + mTaskOrganizer, SplitLayout.PARALLAX_NONE); SplitWindowManager splitWindowManager = new SplitWindowManager("TestSplitWindowManager", - mContext, configuration, mCallbacks); - splitWindowManager.init(mSplitLayout, new InsetsState(), false /* isRestoring */, - mDesktopState); - mDividerView = spy(splitWindowManager.getDividerView()); + mContext, + configuration, mCallbacks); + splitWindowManager.init(mSplitLayout, new InsetsState(), false /* isRestoring */); + mDividerView = spy((DividerView) splitWindowManager.getDividerView()); } @Test @@ -108,14 +95,6 @@ public class DividerViewTest extends ShellTestCase { "false", false); } - @Test - public void swapDividerActionForA11y() { - mDividerView.setAccessibilityDelegate(mDividerView.mHandleDelegate); - mDividerView.getAccessibilityDelegate().performAccessibilityAction(mDividerView, - R.id.action_swap_apps, null); - verify(mSplitLayout, times(1)).onDoubleTappedDivider(); - } - private static MotionEvent getMotionEvent(long eventTime, int action, float x, float y) { MotionEvent.PointerProperties properties = new MotionEvent.PointerProperties(); properties.id = 0; diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/split/SplitLayoutTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/common/split/SplitLayoutTests.java index bc4b50e0cc..cfe8e07aa6 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/split/SplitLayoutTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/split/SplitLayoutTests.java @@ -19,7 +19,9 @@ package com.android.wm.shell.common.split; import static android.content.res.Configuration.ORIENTATION_LANDSCAPE; import static android.content.res.Configuration.ORIENTATION_PORTRAIT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_50_50; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_END_AND_DISMISS; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_START_AND_DISMISS; import static com.google.common.truth.Truth.assertThat; @@ -35,7 +37,6 @@ import static org.mockito.Mockito.verify; import android.app.ActivityManager; import android.content.res.Configuration; import android.graphics.Rect; -import android.os.Handler; import android.window.WindowContainerTransaction; import androidx.test.annotation.UiThreadTest; @@ -47,10 +48,6 @@ import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestRunningTaskInfoBuilder; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayImeController; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; -import com.android.wm.shell.splitscreen.SplitStatusBarHider; - -import com.google.android.msdl.domain.MSDLPlayer; import org.junit.Before; import org.junit.Test; @@ -70,18 +67,12 @@ public class SplitLayoutTests extends ShellTestCase { @Mock DisplayImeController mDisplayImeController; @Mock ShellTaskOrganizer mTaskOrganizer; @Mock WindowContainerTransaction mWct; - @Mock SplitState mSplitState; - @Mock SplitStatusBarHider mStatusBarHider; - @Mock Handler mHandler; - @Mock MSDLPlayer mMSDLPlayer; @Captor ArgumentCaptor<Runnable> mRunnableCaptor; private SplitLayout mSplitLayout; - private FakeDesktopState mDesktopState; @Before public void setup() { MockitoAnnotations.initMocks(this); - mDesktopState = new FakeDesktopState(); mSplitLayout = spy(new SplitLayout( "TestSplitLayout", mContext, @@ -91,12 +82,7 @@ public class SplitLayoutTests extends ShellTestCase { mDisplayController, mDisplayImeController, mTaskOrganizer, - SplitLayout.PARALLAX_NONE, - mSplitState, - mHandler, - mStatusBarHider, - mDesktopState, - mMSDLPlayer)); + SplitLayout.PARALLAX_NONE)); } @Test @@ -149,7 +135,7 @@ public class SplitLayoutTests extends ShellTestCase { @Test public void testSetDivideRatio() { mSplitLayout.setDividerPosition(200, false /* applyLayoutChange */); - mSplitLayout.setDivideRatio(SNAP_TO_2_50_50); + mSplitLayout.setDivideRatio(SNAP_TO_50_50); assertThat(mSplitLayout.getDividerPosition()).isEqualTo( mSplitLayout.mDividerSnapAlgorithm.getMiddleTarget().position); } @@ -164,8 +150,8 @@ public class SplitLayoutTests extends ShellTestCase { @UiThreadTest public void testSnapToDismissStart() { // verify it callbacks properly when the snap target indicates dismissing split. - DividerSnapAlgorithm.SnapTarget snapTarget = - mSplitLayout.mDividerSnapAlgorithm.getDismissStartTarget(); + DividerSnapAlgorithm.SnapTarget snapTarget = getSnapTarget(0 /* position */, + SNAP_TO_START_AND_DISMISS); mSplitLayout.snapToTarget(mSplitLayout.getDividerPosition(), snapTarget); waitDividerFlingFinished(); @@ -176,8 +162,8 @@ public class SplitLayoutTests extends ShellTestCase { @UiThreadTest public void testSnapToDismissEnd() { // verify it callbacks properly when the snap target indicates dismissing split. - DividerSnapAlgorithm.SnapTarget snapTarget = - mSplitLayout.mDividerSnapAlgorithm.getDismissEndTarget(); + DividerSnapAlgorithm.SnapTarget snapTarget = getSnapTarget(0 /* position */, + SNAP_TO_END_AND_DISMISS); mSplitLayout.snapToTarget(mSplitLayout.getDividerPosition(), snapTarget); waitDividerFlingFinished(); @@ -203,7 +189,7 @@ public class SplitLayoutTests extends ShellTestCase { } private void waitDividerFlingFinished() { - verify(mSplitLayout).flingDividerPosition(anyInt(), anyInt(), anyInt(), any(), + verify(mSplitLayout).flingDividerPosition(anyInt(), anyInt(), anyInt(), mRunnableCaptor.capture()); mRunnableCaptor.getValue().run(); } @@ -217,4 +203,9 @@ public class SplitLayoutTests extends ShellTestCase { new Rect(0, 0, 1080, 2160)); return configuration; } + + private static DividerSnapAlgorithm.SnapTarget getSnapTarget(int position, int flag) { + return new DividerSnapAlgorithm.SnapTarget( + position /* position */, position /* taskPosition */, flag); + } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/common/split/SplitWindowManagerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/common/split/SplitWindowManagerTests.java index 6d5272fcc7..150aa13f2d 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/common/split/SplitWindowManagerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/common/split/SplitWindowManagerTests.java @@ -29,7 +29,6 @@ import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; import org.junit.Before; import org.junit.Test; @@ -43,7 +42,6 @@ import org.mockito.MockitoAnnotations; public class SplitWindowManagerTests extends ShellTestCase { @Mock SplitLayout mSplitLayout; @Mock SplitWindowManager.ParentContainerCallbacks mCallbacks; - private FakeDesktopState mDesktopState; private SplitWindowManager mSplitWindowManager; @Before @@ -53,7 +51,6 @@ public class SplitWindowManagerTests extends ShellTestCase { configuration.setToDefaults(); mSplitWindowManager = new SplitWindowManager("TestSplitDivider", mContext, configuration, mCallbacks); - mDesktopState = new FakeDesktopState(); when(mSplitLayout.getDividerBounds()).thenReturn( new Rect(0, 0, configuration.windowConfiguration.getBounds().width(), configuration.windowConfiguration.getBounds().height())); @@ -62,8 +59,7 @@ public class SplitWindowManagerTests extends ShellTestCase { @Test @UiThreadTest public void testInitRelease() { - mSplitWindowManager.init(mSplitLayout, new InsetsState(), false /* isRestoring */, - mDesktopState); + mSplitWindowManager.init(mSplitLayout, new InsetsState(), false /* isRestoring */); assertThat(mSplitWindowManager.getSurfaceControl()).isNotNull(); mSplitWindowManager.release(null /* t */); assertThat(mSplitWindowManager.getSurfaceControl()).isNull(); diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUIControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUIControllerTest.java index b6d93ca750..9c00864710 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUIControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUIControllerTest.java @@ -16,6 +16,8 @@ package com.android.wm.shell.compatui; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_HIDDEN; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED; import static android.view.WindowInsets.Type.navigationBars; import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; @@ -30,24 +32,19 @@ import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; import android.app.ActivityManager.RunningTaskInfo; +import android.app.CameraCompatTaskInfo.CameraCompatControlState; import android.app.TaskInfo; import android.content.Context; import android.content.res.Configuration; -import android.platform.test.annotations.DisableFlags; -import android.platform.test.annotations.EnableFlags; -import android.platform.test.annotations.RequiresFlagsDisabled; import android.testing.AndroidTestingRunner; import android.view.InsetsSource; import android.view.InsetsState; import android.view.accessibility.AccessibilityManager; -import androidx.annotation.NonNull; import androidx.test.filters.SmallTest; -import com.android.window.flags2.Flags; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.common.DisplayController; @@ -58,11 +55,6 @@ import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.DockStateReader; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.compatui.api.CompatUIInfo; -import com.android.wm.shell.compatui.impl.CompatUIRequests; -import com.android.wm.shell.desktopmode.DesktopRepository; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.Transitions; @@ -78,20 +70,17 @@ import org.mockito.Captor; import org.mockito.Mock; import org.mockito.MockitoAnnotations; -import java.util.Optional; - /** * Tests for {@link CompatUIController}. * * Build/Install/Run: - * atest WMShellUnitTests:CompatUIControllerTest + * atest WMShellUnitTests:CompatUIControllerTest */ @RunWith(AndroidTestingRunner.class) @SmallTest public class CompatUIControllerTest extends ShellTestCase { private static final int DISPLAY_ID = 0; private static final int TASK_ID = 12; - private static final int TASK_ID_2 = 18; private CompatUIController mController; private ShellInit mShellInit; @@ -125,27 +114,17 @@ public class CompatUIControllerTest extends ShellTestCase { private CompatUIConfiguration mCompatUIConfiguration; @Mock private CompatUIShellCommandHandler mCompatUIShellCommandHandler; + @Mock private AccessibilityManager mAccessibilityManager; - @Mock - private DesktopUserRepositories mDesktopUserRepositories; - @Mock - private DesktopRepository mDesktopRepository; @Captor ArgumentCaptor<OnInsetsChangedListener> mOnInsetsChangedListenerCaptor; - @NonNull - private CompatUIStatusManager mCompatUIStatusManager; - @NonNull - private FakeDesktopState mDesktopState; - - @Before public void setUp() { MockitoAnnotations.initMocks(this); - mDesktopState = new FakeDesktopState(); doReturn(mMockDisplayLayout).when(mMockDisplayController).getDisplayLayout(anyInt()); doReturn(DISPLAY_ID).when(mMockCompatLayout).getDisplayId(); doReturn(TASK_ID).when(mMockCompatLayout).getTaskId(); @@ -155,22 +134,17 @@ public class CompatUIControllerTest extends ShellTestCase { doReturn(TASK_ID).when(mMockLetterboxEduLayout).getTaskId(); doReturn(true).when(mMockLetterboxEduLayout).createLayout(anyBoolean()); doReturn(true).when(mMockLetterboxEduLayout).updateCompatInfo(any(), any(), anyBoolean()); - doReturn(mDesktopRepository).when(mDesktopUserRepositories).getCurrent(); - doReturn(mDesktopRepository).when(mDesktopUserRepositories).getProfile(anyInt()); doReturn(DISPLAY_ID).when(mMockRestartDialogLayout).getDisplayId(); doReturn(TASK_ID).when(mMockRestartDialogLayout).getTaskId(); doReturn(true).when(mMockRestartDialogLayout).createLayout(anyBoolean()); doReturn(true).when(mMockRestartDialogLayout).updateCompatInfo(any(), any(), anyBoolean()); - mCompatUIStatusManager = new CompatUIStatusManager(); mShellInit = spy(new ShellInit(mMockExecutor)); mController = new CompatUIController(mContext, mShellInit, mMockShellController, mMockDisplayController, mMockDisplayInsetsController, mMockImeController, mMockSyncQueue, mMockExecutor, mMockTransitionsLazy, mDockStateReader, - mCompatUIConfiguration, mCompatUIShellCommandHandler, mAccessibilityManager, - mCompatUIStatusManager, Optional.of(mDesktopUserRepositories), - mDesktopState) { + mCompatUIConfiguration, mCompatUIShellCommandHandler, mAccessibilityManager) { @Override CompatUIWindowManager createCompatUiWindowManager(Context context, TaskInfo taskInfo, ShellTaskOrganizer.TaskListener taskListener) { @@ -194,31 +168,28 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void instantiateController_addInitCallback() { verify(mShellInit, times(1)).addInitCallback(any(), any()); } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void instantiateController_registerKeyguardChangeListener() { verify(mMockShellController, times(1)).addKeyguardChangeListener(any()); } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testListenerRegistered() { verify(mMockDisplayController).addDisplayWindowListener(mController); verify(mMockImeController).addPositionProcessor(mController); } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnCompatInfoChanged() { - TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); + TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, + CAMERA_COMPAT_CONTROL_HIDDEN); // Verify that the compat controls are added with non-null task listener. - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mController).createCompatUiWindowManager(any(), eq(taskInfo), eq(mMockTaskListener)); verify(mController).createLetterboxEduWindowManager(any(), eq(taskInfo), @@ -229,8 +200,9 @@ public class CompatUIControllerTest extends ShellTestCase { // Verify that the compat controls and letterbox education are updated with new size compat // info. clearInvocations(mMockCompatLayout, mMockLetterboxEduLayout, mController); - taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, + CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mMockCompatLayout).updateCompatInfo(taskInfo, mMockTaskListener, /* canShow= */ true); @@ -241,9 +213,9 @@ public class CompatUIControllerTest extends ShellTestCase { // Verify that compat controls and letterbox education are removed with null task listener. clearInvocations(mMockCompatLayout, mMockLetterboxEduLayout, mController); - mController.onCompatInfoChanged(new CompatUIInfo(createTaskInfo(DISPLAY_ID, TASK_ID, - /* hasSizeCompat= */ true), - /* taskListener= */ null)); + mController.onCompatInfoChanged(createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN), + /* taskListener= */ null); verify(mMockCompatLayout).release(); verify(mMockLetterboxEduLayout).release(); @@ -251,14 +223,14 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnCompatInfoChanged_createLayoutReturnsFalse() { doReturn(false).when(mMockCompatLayout).createLayout(anyBoolean()); doReturn(false).when(mMockLetterboxEduLayout).createLayout(anyBoolean()); doReturn(false).when(mMockRestartDialogLayout).createLayout(anyBoolean()); - TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, + CAMERA_COMPAT_CONTROL_HIDDEN); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mController).createCompatUiWindowManager(any(), eq(taskInfo), eq(mMockTaskListener)); verify(mController).createLetterboxEduWindowManager(any(), eq(taskInfo), @@ -268,7 +240,7 @@ public class CompatUIControllerTest extends ShellTestCase { // Verify that the layout is created again. clearInvocations(mMockCompatLayout, mMockLetterboxEduLayout, mController); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mMockCompatLayout, never()).updateCompatInfo(any(), any(), anyBoolean()); verify(mMockLetterboxEduLayout, never()).updateCompatInfo(any(), any(), anyBoolean()); @@ -281,14 +253,14 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnCompatInfoChanged_updateCompatInfoReturnsFalse() { doReturn(false).when(mMockCompatLayout).updateCompatInfo(any(), any(), anyBoolean()); doReturn(false).when(mMockLetterboxEduLayout).updateCompatInfo(any(), any(), anyBoolean()); doReturn(false).when(mMockRestartDialogLayout).updateCompatInfo(any(), any(), anyBoolean()); - TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, + CAMERA_COMPAT_CONTROL_HIDDEN); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mController).createCompatUiWindowManager(any(), eq(taskInfo), eq(mMockTaskListener)); verify(mController).createLetterboxEduWindowManager(any(), eq(taskInfo), @@ -298,7 +270,7 @@ public class CompatUIControllerTest extends ShellTestCase { clearInvocations(mMockCompatLayout, mMockLetterboxEduLayout, mMockRestartDialogLayout, mController); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mMockCompatLayout).updateCompatInfo(taskInfo, mMockTaskListener, /* canShow= */ true); @@ -310,7 +282,7 @@ public class CompatUIControllerTest extends ShellTestCase { // Verify that the layout is created again. clearInvocations(mMockCompatLayout, mMockLetterboxEduLayout, mMockRestartDialogLayout, mController); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mMockCompatLayout, never()).updateCompatInfo(any(), any(), anyBoolean()); verify(mMockLetterboxEduLayout, never()).updateCompatInfo(any(), any(), anyBoolean()); @@ -324,7 +296,6 @@ public class CompatUIControllerTest extends ShellTestCase { @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnDisplayAdded() { mController.onDisplayAdded(DISPLAY_ID); mController.onDisplayAdded(DISPLAY_ID + 1); @@ -334,11 +305,11 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnDisplayRemoved() { mController.onDisplayAdded(DISPLAY_ID); - mController.onCompatInfoChanged(new CompatUIInfo(createTaskInfo(DISPLAY_ID, TASK_ID, - /* hasSizeCompat= */ true), mMockTaskListener)); + mController.onCompatInfoChanged(createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN), + mMockTaskListener); mController.onDisplayRemoved(DISPLAY_ID + 1); @@ -357,10 +328,9 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnDisplayConfigurationChanged() { - mController.onCompatInfoChanged(new CompatUIInfo(createTaskInfo(DISPLAY_ID, TASK_ID, - /* hasSizeCompat= */ true), mMockTaskListener)); + mController.onCompatInfoChanged(createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN), mMockTaskListener); mController.onDisplayConfigurationChanged(DISPLAY_ID + 1, new Configuration()); @@ -376,11 +346,10 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testInsetsChanged() { mController.onDisplayAdded(DISPLAY_ID); - mController.onCompatInfoChanged(new CompatUIInfo(createTaskInfo(DISPLAY_ID, TASK_ID, - /* hasSizeCompat= */ true), mMockTaskListener)); + mController.onCompatInfoChanged(createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN), mMockTaskListener); InsetsState insetsState = new InsetsState(); InsetsSource insetsSource = new InsetsSource( InsetsSource.createId(null, 0, navigationBars()), navigationBars()); @@ -404,10 +373,9 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testChangeLayoutsVisibilityOnImeShowHide() { - mController.onCompatInfoChanged(new CompatUIInfo(createTaskInfo(DISPLAY_ID, TASK_ID, - /* hasSizeCompat= */ true), mMockTaskListener)); + mController.onCompatInfoChanged(createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN), mMockTaskListener); // Verify that the restart button is hidden after IME is showing. mController.onImeVisibilityChanged(DISPLAY_ID, /* isShowing= */ true); @@ -417,8 +385,9 @@ public class CompatUIControllerTest extends ShellTestCase { verify(mMockRestartDialogLayout).updateVisibility(false); // Verify button remains hidden while IME is showing. - TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, + CAMERA_COMPAT_CONTROL_HIDDEN); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mMockCompatLayout).updateCompatInfo(taskInfo, mMockTaskListener, /* canShow= */ false); @@ -436,10 +405,9 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testChangeLayoutsVisibilityOnKeyguardShowingChanged() { - mController.onCompatInfoChanged(new CompatUIInfo(createTaskInfo(DISPLAY_ID, TASK_ID, - /* hasSizeCompat= */ true), mMockTaskListener)); + mController.onCompatInfoChanged(createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN), mMockTaskListener); // Verify that the restart button is hidden after keyguard becomes showing. mController.onKeyguardVisibilityChanged(true, false, false); @@ -449,8 +417,9 @@ public class CompatUIControllerTest extends ShellTestCase { verify(mMockRestartDialogLayout).updateVisibility(false); // Verify button remains hidden while keyguard is showing. - TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, + CAMERA_COMPAT_CONTROL_HIDDEN); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mMockCompatLayout).updateCompatInfo(taskInfo, mMockTaskListener, /* canShow= */ false); @@ -468,10 +437,9 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testLayoutsRemainHiddenOnKeyguardShowingFalseWhenImeIsShowing() { - mController.onCompatInfoChanged(new CompatUIInfo(createTaskInfo(DISPLAY_ID, TASK_ID, - /* hasSizeCompat= */ true), mMockTaskListener)); + mController.onCompatInfoChanged(createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN), mMockTaskListener); mController.onImeVisibilityChanged(DISPLAY_ID, /* isShowing= */ true); mController.onKeyguardVisibilityChanged(true, false, false); @@ -498,10 +466,9 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testLayoutsRemainHiddenOnImeHideWhenKeyguardIsShowing() { - mController.onCompatInfoChanged(new CompatUIInfo(createTaskInfo(DISPLAY_ID, TASK_ID, - /* hasSizeCompat= */ true), mMockTaskListener)); + mController.onCompatInfoChanged(createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN), mMockTaskListener); mController.onImeVisibilityChanged(DISPLAY_ID, /* isShowing= */ true); mController.onKeyguardVisibilityChanged(true, false, false); @@ -528,45 +495,45 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testRestartLayoutRecreatedIfNeeded() { - final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); + final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN); doReturn(true).when(mMockRestartDialogLayout) .needsToBeRecreated(any(TaskInfo.class), any(ShellTaskOrganizer.TaskListener.class)); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mMockRestartDialogLayout, times(2)) .createLayout(anyBoolean()); } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testRestartLayoutNotRecreatedIfNotNeeded() { - final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); + final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN); doReturn(false).when(mMockRestartDialogLayout) .needsToBeRecreated(any(TaskInfo.class), any(ShellTaskOrganizer.TaskListener.class)); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mMockRestartDialogLayout, times(1)) .createLayout(anyBoolean()); } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateActiveTaskInfo_newTask_visibleAndFocused_updated() { // Simulate user aspect ratio button being shown for previous task mController.setHasShownUserAspectRatioSettingsButton(true); Assert.assertTrue(mController.hasShownUserAspectRatioSettingsButton()); // Create new task - final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, - /* isVisible */ true, /* isFocused */ true); + final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN, /* isVisible */ true, + /* isFocused */ true); // Simulate new task being shown mController.updateActiveTaskInfo(taskInfo); @@ -578,11 +545,11 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateActiveTaskInfo_newTask_notVisibleOrFocused_notUpdated() { // Create new task - final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, - /* isVisible */ true, /* isFocused */ true); + final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN, /* isVisible */ true, + /* isFocused */ true); // Simulate task being shown mController.updateActiveTaskInfo(taskInfo); @@ -599,8 +566,9 @@ public class CompatUIControllerTest extends ShellTestCase { final int newTaskId = TASK_ID + 1; // Create visible but NOT focused task - final TaskInfo taskInfo1 = createTaskInfo(DISPLAY_ID, newTaskId, /* hasSizeCompat= */ true, - /* isVisible */ true, /* isFocused */ false); + final TaskInfo taskInfo1 = createTaskInfo(DISPLAY_ID, newTaskId, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN, /* isVisible */ true, + /* isFocused */ false); // Simulate new task being shown mController.updateActiveTaskInfo(taskInfo1); @@ -611,8 +579,9 @@ public class CompatUIControllerTest extends ShellTestCase { Assert.assertTrue(mController.hasShownUserAspectRatioSettingsButton()); // Create focused but NOT visible task - final TaskInfo taskInfo2 = createTaskInfo(DISPLAY_ID, newTaskId, /* hasSizeCompat= */ true, - /* isVisible */ false, /* isFocused */ true); + final TaskInfo taskInfo2 = createTaskInfo(DISPLAY_ID, newTaskId, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN, /* isVisible */ false, + /* isFocused */ true); // Simulate new task being shown mController.updateActiveTaskInfo(taskInfo2); @@ -623,8 +592,9 @@ public class CompatUIControllerTest extends ShellTestCase { Assert.assertTrue(mController.hasShownUserAspectRatioSettingsButton()); // Create NOT focused but NOT visible task - final TaskInfo taskInfo3 = createTaskInfo(DISPLAY_ID, newTaskId, /* hasSizeCompat= */ true, - /* isVisible */ false, /* isFocused */ false); + final TaskInfo taskInfo3 = createTaskInfo(DISPLAY_ID, newTaskId, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN, /* isVisible */ false, + /* isFocused */ false); // Simulate new task being shown mController.updateActiveTaskInfo(taskInfo3); @@ -636,11 +606,11 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateActiveTaskInfo_sameTask_notUpdated() { // Create new task - final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, - /* isVisible */ true, /* isFocused */ true); + final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN, /* isVisible */ true, + /* isFocused */ true); // Simulate new task being shown mController.updateActiveTaskInfo(taskInfo); @@ -664,11 +634,11 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateActiveTaskInfo_transparentTask_notUpdated() { // Create new task - final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, - /* isVisible */ true, /* isFocused */ true); + final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN, /* isVisible */ true, + /* isFocused */ true); // Simulate new task being shown mController.updateActiveTaskInfo(taskInfo); @@ -685,9 +655,9 @@ public class CompatUIControllerTest extends ShellTestCase { final int newTaskId = TASK_ID + 1; // Create transparent task - final TaskInfo taskInfo1 = createTaskInfo(DISPLAY_ID, newTaskId, /* hasSizeCompat= */ true, - /* isVisible */ true, /* isFocused */ true, /* isTopActivityTransparent */ true, - /* isRestartMenuEnabledForDisplayMove */ true); + final TaskInfo taskInfo1 = createTaskInfo(DISPLAY_ID, newTaskId, + /* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN, /* isVisible */ true, + /* isFocused */ true, /* isTopActivityTransparent */ true); // Simulate new task being shown mController.updateActiveTaskInfo(taskInfo1); @@ -699,129 +669,45 @@ public class CompatUIControllerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testLetterboxEduLayout_notCreatedWhenLetterboxEducationIsDisabled() { - TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); - taskInfo.appCompatTaskInfo.setLetterboxEducationEnabled(false); + TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, + CAMERA_COMPAT_CONTROL_HIDDEN); + taskInfo.appCompatTaskInfo.isLetterboxEducationEnabled = false; - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); + mController.onCompatInfoChanged(taskInfo, mMockTaskListener); verify(mController, never()).createLetterboxEduWindowManager(any(), eq(taskInfo), eq(mMockTaskListener)); } - @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) - @EnableFlags(Flags.FLAG_SKIP_COMPAT_UI_EDUCATION_IN_DESKTOP_MODE) - public void testUpdateActiveTaskInfo_removeAllComponentWhenInDesktopModeFlagEnabled() { - TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); - when(mDesktopUserRepositories.getCurrent().isAnyDeskActive(DISPLAY_ID)).thenReturn(false); - - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - - verify(mController, never()).removeLayouts(taskInfo.taskId); - - when(mDesktopUserRepositories.getCurrent().isAnyDeskActive(DISPLAY_ID)).thenReturn(true); - - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - - verify(mController).removeLayouts(taskInfo.taskId); - } - - @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) - @EnableFlags(Flags.FLAG_SKIP_COMPAT_UI_EDUCATION_IN_DESKTOP_MODE) - public void testUpdateActiveTaskInfo_alwaysRemoveLetterboxEdu() { - TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); - - // When not in Desktop Mode the LetterboxEdu is removed only if the taskId is the one used - // when created. - when(mDesktopUserRepositories.getCurrent().isAnyDeskActive(DISPLAY_ID)).thenReturn(false); - - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - mController.removeLetterboxEdu(TASK_ID_2); - verify(mMockLetterboxEduLayout, never()).release(); - - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - mController.removeLetterboxEdu(TASK_ID); - verify(mMockLetterboxEduLayout).release(); - - // When in Desktop Mode the LetterboxEdu is always removed - when(mDesktopUserRepositories.getCurrent().isAnyDeskActive(DISPLAY_ID)).thenReturn(true); - - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - mController.removeLetterboxEdu(TASK_ID); - verify(mMockLetterboxEduLayout).release(); - - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - mController.removeLetterboxEdu(TASK_ID_2); - verify(mMockLetterboxEduLayout).release(); - } - - @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) - @DisableFlags(Flags.FLAG_SKIP_COMPAT_UI_EDUCATION_IN_DESKTOP_MODE) - public void testUpdateActiveTaskInfo_removeAllComponentWhenInDesktopModeFlagDisabled() { - when(mDesktopUserRepositories.getCurrent().isAnyDeskActive(DISPLAY_ID)).thenReturn(false); - TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true); - - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - - verify(mController, never()).removeLayouts(taskInfo.taskId); - - when(mDesktopUserRepositories.getCurrent().isAnyDeskActive(DISPLAY_ID)).thenReturn(true); - - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - - verify(mController, never()).removeLayouts(taskInfo.taskId); - } - - @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) - public void testSendCompatUIRequest_createRestartDialog() { - final TaskInfo taskInfo = createTaskInfo(DISPLAY_ID, TASK_ID, /* hasSizeCompat= */ true, - /* isVisible */ true, /* isFocused */ true, /* isTopActivityTransparent */ false, - /* isRestartMenuEnabledForDisplayMove */ true); - doReturn(true).when(mCompatUIConfiguration).isRestartDialogEnabled(); - doReturn(true).when(mCompatUIConfiguration).shouldShowRestartDialogAgain(eq(taskInfo)); - - mController.onCompatInfoChanged(new CompatUIInfo(taskInfo, mMockTaskListener)); - verify(mController).createRestartDialogWindowManager(any(), eq(taskInfo), - eq(mMockTaskListener)); - verify(mMockRestartDialogLayout).setRequestRestartDialog(false); - - mController.sendCompatUIRequest( - new CompatUIRequests.DisplayCompatShowRestartDialog(taskInfo.taskId)); - verify(mMockRestartDialogLayout).setRequestRestartDialog(true); - } - - private static TaskInfo createTaskInfo(int displayId, int taskId, boolean hasSizeCompat) { - return createTaskInfo(displayId, taskId, hasSizeCompat, /* isVisible */ false, - /* isFocused */ false, /* isTopActivityTransparent */ false, - /* isRestartMenuEnabledForDisplayMove */ false); + private static TaskInfo createTaskInfo(int displayId, int taskId, boolean hasSizeCompat, + @CameraCompatControlState int cameraCompatControlState) { + return createTaskInfo(displayId, taskId, hasSizeCompat, cameraCompatControlState, + /* isVisible */ false, /* isFocused */ false, + /* isTopActivityTransparent */ false); } private static TaskInfo createTaskInfo(int displayId, int taskId, boolean hasSizeCompat, - boolean isVisible, boolean isFocused) { - return createTaskInfo(displayId, taskId, hasSizeCompat, - isVisible, isFocused, /* isTopActivityTransparent */ false, - /* isRestartMenuEnabledForDisplayMove */ false); + @CameraCompatControlState int cameraCompatControlState, boolean isVisible, + boolean isFocused) { + return createTaskInfo(displayId, taskId, hasSizeCompat, cameraCompatControlState, + isVisible, isFocused, /* isTopActivityTransparent */ false); } private static TaskInfo createTaskInfo(int displayId, int taskId, boolean hasSizeCompat, - boolean isVisible, boolean isFocused, boolean isTopActivityTransparent, - boolean isRestartMenuEnabledForDisplayMove) { + @CameraCompatControlState int cameraCompatControlState, boolean isVisible, + boolean isFocused, boolean isTopActivityTransparent) { RunningTaskInfo taskInfo = new RunningTaskInfo(); taskInfo.taskId = taskId; taskInfo.displayId = displayId; - taskInfo.appCompatTaskInfo.setTopActivityInSizeCompat(hasSizeCompat); + taskInfo.appCompatTaskInfo.topActivityInSizeCompat = hasSizeCompat; + taskInfo.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState = + cameraCompatControlState; taskInfo.isVisible = isVisible; taskInfo.isFocused = isFocused; taskInfo.isTopActivityTransparent = isTopActivityTransparent; - taskInfo.appCompatTaskInfo.setLetterboxEducationEnabled(true); - taskInfo.appCompatTaskInfo.setTopActivityLetterboxed(true); - taskInfo.appCompatTaskInfo.setRestartMenuEnabledForDisplayMove( - isRestartMenuEnabledForDisplayMove); + taskInfo.appCompatTaskInfo.isLetterboxEducationEnabled = true; + taskInfo.appCompatTaskInfo.topActivityBoundsLetterboxed = true; return taskInfo; } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUILayoutTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUILayoutTest.java index c64d4f1398..cd3e8cb0e8 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUILayoutTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUILayoutTest.java @@ -16,6 +16,11 @@ package com.android.wm.shell.compatui; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_DISMISSED; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_HIDDEN; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; import static org.mockito.Mockito.doNothing; @@ -23,9 +28,9 @@ import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; import android.app.ActivityManager; +import android.app.CameraCompatTaskInfo.CameraCompatControlState; import android.app.TaskInfo; import android.graphics.Rect; -import android.platform.test.annotations.RequiresFlagsDisabled; import android.testing.AndroidTestingRunner; import android.util.Pair; import android.view.LayoutInflater; @@ -35,15 +40,12 @@ import android.widget.LinearLayout; import androidx.test.filters.SmallTest; -import com.android.window.flags.Flags; import com.android.wm.shell.R; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.compatui.CompatUIController.CompatUIHintsState; -import com.android.wm.shell.compatui.api.CompatUIEvent; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; import junit.framework.Assert; @@ -69,7 +71,7 @@ public class CompatUILayoutTest extends ShellTestCase { private static final int TASK_ID = 1; @Mock private SyncTransactionQueue mSyncTransactionQueue; - @Mock private Consumer<CompatUIEvent> mCallback; + @Mock private CompatUIController.CompatUICallback mCallback; @Mock private Consumer<Pair<TaskInfo, ShellTaskOrganizer.TaskListener>> mOnRestartButtonClicked; @Mock private ShellTaskOrganizer.TaskListener mTaskListener; @Mock private SurfaceControlViewHost mViewHost; @@ -78,17 +80,15 @@ public class CompatUILayoutTest extends ShellTestCase { private CompatUIWindowManager mWindowManager; private CompatUILayout mLayout; private TaskInfo mTaskInfo; - private FakeDesktopState mDesktopState; @Before public void setUp() { MockitoAnnotations.initMocks(this); - mDesktopState = new FakeDesktopState(); doReturn(100).when(mCompatUIConfiguration).getHideSizeCompatRestartButtonTolerance(); - mTaskInfo = createTaskInfo(/* hasSizeCompat= */ false); + mTaskInfo = createTaskInfo(/* hasSizeCompat= */ false, CAMERA_COMPAT_CONTROL_HIDDEN); mWindowManager = new CompatUIWindowManager(mContext, mTaskInfo, mSyncTransactionQueue, mCallback, mTaskListener, new DisplayLayout(), new CompatUIHintsState(), - mCompatUIConfiguration, mOnRestartButtonClicked, mDesktopState); + mCompatUIConfiguration, mOnRestartButtonClicked); mLayout = (CompatUILayout) LayoutInflater.from(mContext).inflate(R.layout.compat_ui_layout, null); @@ -101,7 +101,6 @@ public class CompatUILayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnClickForRestartButton() { final ImageButton button = mLayout.findViewById(R.id.size_compat_restart_button); button.performClick(); @@ -118,7 +117,6 @@ public class CompatUILayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnLongClickForRestartButton() { doNothing().when(mWindowManager).onRestartButtonLongClicked(); @@ -129,7 +127,6 @@ public class CompatUILayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(Flags.FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnClickForSizeCompatHint() { mWindowManager.mHasSizeCompat = true; mWindowManager.createLayout(/* canShow= */ true); @@ -139,10 +136,94 @@ public class CompatUILayoutTest extends ShellTestCase { verify(mLayout).setSizeCompatHintVisibility(/* show= */ false); } - private static TaskInfo createTaskInfo(boolean hasSizeCompat) { + @Test + public void testUpdateCameraTreatmentButton_treatmentAppliedByDefault() { + mWindowManager.mCameraCompatControlState = CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED; + mWindowManager.createLayout(/* canShow= */ true); + final ImageButton button = + mLayout.findViewById(R.id.camera_compat_treatment_button); + button.performClick(); + + verify(mWindowManager).onCameraTreatmentButtonClicked(); + verify(mCallback).onCameraControlStateUpdated( + TASK_ID, CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED); + + button.performClick(); + + verify(mCallback).onCameraControlStateUpdated( + TASK_ID, CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED); + } + + @Test + public void testUpdateCameraTreatmentButton_treatmentSuggestedByDefault() { + mWindowManager.mCameraCompatControlState = CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + mWindowManager.createLayout(/* canShow= */ true); + final ImageButton button = + mLayout.findViewById(R.id.camera_compat_treatment_button); + button.performClick(); + + verify(mWindowManager).onCameraTreatmentButtonClicked(); + verify(mCallback).onCameraControlStateUpdated( + TASK_ID, CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED); + + button.performClick(); + + verify(mCallback).onCameraControlStateUpdated( + TASK_ID, CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED); + } + + @Test + public void testOnCameraDismissButtonClicked() { + mWindowManager.mCameraCompatControlState = CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + mWindowManager.createLayout(/* canShow= */ true); + final ImageButton button = + mLayout.findViewById(R.id.camera_compat_dismiss_button); + button.performClick(); + + verify(mWindowManager).onCameraDismissButtonClicked(); + verify(mCallback).onCameraControlStateUpdated( + TASK_ID, CAMERA_COMPAT_CONTROL_DISMISSED); + verify(mLayout).setCameraControlVisibility(/* show */ false); + } + + @Test + public void testOnLongClickForCameraTreatmentButton() { + doNothing().when(mWindowManager).onCameraButtonLongClicked(); + + final ImageButton button = + mLayout.findViewById(R.id.camera_compat_treatment_button); + button.performLongClick(); + + verify(mWindowManager).onCameraButtonLongClicked(); + } + + @Test + public void testOnLongClickForCameraDismissButton() { + doNothing().when(mWindowManager).onCameraButtonLongClicked(); + + final ImageButton button = mLayout.findViewById(R.id.camera_compat_dismiss_button); + button.performLongClick(); + + verify(mWindowManager).onCameraButtonLongClicked(); + } + + @Test + public void testOnClickForCameraCompatHint() { + mWindowManager.mCameraCompatControlState = CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + mWindowManager.createLayout(/* canShow= */ true); + final LinearLayout hint = mLayout.findViewById(R.id.camera_compat_hint); + hint.performClick(); + + verify(mLayout).setCameraCompatHintVisibility(/* show= */ false); + } + + private static TaskInfo createTaskInfo(boolean hasSizeCompat, + @CameraCompatControlState int cameraCompatControlState) { ActivityManager.RunningTaskInfo taskInfo = new ActivityManager.RunningTaskInfo(); taskInfo.taskId = TASK_ID; - taskInfo.appCompatTaskInfo.setTopActivityInSizeCompat(hasSizeCompat); + taskInfo.appCompatTaskInfo.topActivityInSizeCompat = hasSizeCompat; + taskInfo.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState = + cameraCompatControlState; taskInfo.appCompatTaskInfo.topActivityLetterboxHeight = 1000; taskInfo.appCompatTaskInfo.topActivityLetterboxWidth = 1000; taskInfo.configuration.windowConfiguration.setBounds(new Rect(0, 0, 2000, 2000)); diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUIWindowManagerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUIWindowManagerTest.java index aa1e3d360a..41a81c1a99 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUIWindowManagerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/CompatUIWindowManagerTest.java @@ -16,11 +16,15 @@ package com.android.wm.shell.compatui; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_DISMISSED; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_HIDDEN; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; +import static android.platform.test.flag.junit.SetFlagsRule.DefaultInitValueType.DEVICE_DEFAULT; import static android.view.WindowInsets.Type.navigationBars; import static android.view.WindowManager.LARGE_SCREEN_SMALLEST_SCREEN_WIDTH_DP; import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; -import static com.android.window.flags.Flags.FLAG_APP_COMPAT_UI_FRAMEWORK; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; @@ -31,15 +35,14 @@ import static org.mockito.Mockito.clearInvocations; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; -import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import android.app.ActivityManager; +import android.app.CameraCompatTaskInfo; import android.app.TaskInfo; import android.content.res.Configuration; import android.graphics.Rect; -import android.platform.test.annotations.EnableFlags; -import android.platform.test.annotations.RequiresFlagsDisabled; +import android.platform.test.flag.junit.SetFlagsRule; import android.testing.AndroidTestingRunner; import android.util.Pair; import android.view.DisplayInfo; @@ -57,12 +60,11 @@ import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.compatui.CompatUIController.CompatUIHintsState; -import com.android.wm.shell.compatui.api.CompatUIEvent; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; import junit.framework.Assert; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.ArgumentCaptor; @@ -80,13 +82,15 @@ import java.util.function.Consumer; @RunWith(AndroidTestingRunner.class) @SmallTest public class CompatUIWindowManagerTest extends ShellTestCase { + @Rule + public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(DEVICE_DEFAULT); private static final int TASK_ID = 1; private static final int TASK_WIDTH = 2000; private static final int TASK_HEIGHT = 2000; @Mock private SyncTransactionQueue mSyncTransactionQueue; - @Mock private Consumer<CompatUIEvent> mCallback; + @Mock private CompatUIController.CompatUICallback mCallback; @Mock private Consumer<Pair<TaskInfo, ShellTaskOrganizer.TaskListener>> mOnRestartButtonClicked; @Mock private ShellTaskOrganizer.TaskListener mTaskListener; @Mock private CompatUILayout mLayout; @@ -96,14 +100,12 @@ public class CompatUIWindowManagerTest extends ShellTestCase { private CompatUIWindowManager mWindowManager; private TaskInfo mTaskInfo; private DisplayLayout mDisplayLayout; - private FakeDesktopState mDesktopState; @Before public void setUp() { MockitoAnnotations.initMocks(this); - mDesktopState = new FakeDesktopState(); doReturn(100).when(mCompatUIConfiguration).getHideSizeCompatRestartButtonTolerance(); - mTaskInfo = createTaskInfo(/* hasSizeCompat= */ false); + mTaskInfo = createTaskInfo(/* hasSizeCompat= */ false, CAMERA_COMPAT_CONTROL_HIDDEN); final DisplayInfo displayInfo = new DisplayInfo(); displayInfo.logicalWidth = TASK_WIDTH; @@ -119,7 +121,7 @@ public class CompatUIWindowManagerTest extends ShellTestCase { mDisplayLayout.setInsets(mContext.getResources(), insetsState); mWindowManager = new CompatUIWindowManager(mContext, mTaskInfo, mSyncTransactionQueue, mCallback, mTaskListener, mDisplayLayout, new CompatUIHintsState(), - mCompatUIConfiguration, mOnRestartButtonClicked, mDesktopState); + mCompatUIConfiguration, mOnRestartButtonClicked); spyOn(mWindowManager); doReturn(mLayout).when(mWindowManager).inflateLayout(); @@ -127,7 +129,6 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testCreateSizeCompatButton() { // Doesn't create layout if show is false. mWindowManager.mHasSizeCompat = true; @@ -173,7 +174,44 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) + public void testCreateCameraCompatControl() { + // Doesn't create layout if show is false. + mWindowManager.mCameraCompatControlState = CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + assertTrue(mWindowManager.createLayout(/* canShow= */ false)); + + verify(mWindowManager, never()).inflateLayout(); + + // Doesn't create hint popup. + mWindowManager.mCompatUIHintsState.mHasShownCameraCompatHint = true; + assertTrue(mWindowManager.createLayout(/* canShow= */ true)); + + verify(mWindowManager).inflateLayout(); + verify(mLayout).setCameraControlVisibility(/* show= */ true); + verify(mLayout, never()).setCameraCompatHintVisibility(/* show= */ true); + + // Creates hint popup. + clearInvocations(mWindowManager); + clearInvocations(mLayout); + mWindowManager.release(); + mWindowManager.mCompatUIHintsState.mHasShownCameraCompatHint = false; + assertTrue(mWindowManager.createLayout(/* canShow= */ true)); + + verify(mWindowManager).inflateLayout(); + assertNotNull(mLayout); + verify(mLayout).setCameraControlVisibility(/* show= */ true); + verify(mLayout).setCameraCompatHintVisibility(/* show= */ true); + assertTrue(mWindowManager.mCompatUIHintsState.mHasShownCameraCompatHint); + + // Returns false and doesn't create layout if Camera Compat state is hidden + clearInvocations(mWindowManager); + mWindowManager.release(); + mWindowManager.mCameraCompatControlState = CAMERA_COMPAT_CONTROL_HIDDEN; + assertFalse(mWindowManager.createLayout(/* canShow= */ true)); + + verify(mWindowManager, never()).inflateLayout(); + } + + @Test public void testRelease() { mWindowManager.mHasSizeCompat = true; mWindowManager.createLayout(/* canShow= */ true); @@ -186,15 +224,13 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateCompatInfo() { mWindowManager.mHasSizeCompat = true; mWindowManager.createLayout(/* canShow= */ true); - verify(mLayout).setRestartButtonVisibility(/* show= */ true); // No diff clearInvocations(mWindowManager); - TaskInfo taskInfo = createTaskInfo(/* hasSizeCompat= */ true); + TaskInfo taskInfo = createTaskInfo(/* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN); doReturn(true).when(mWindowManager).shouldShowSizeCompatRestartButton(any()); assertTrue(mWindowManager.updateCompatInfo(taskInfo, mTaskListener, /* canShow= */ true)); @@ -211,25 +247,58 @@ public class CompatUIWindowManagerTest extends ShellTestCase { verify(mWindowManager).release(); verify(mWindowManager).createLayout(/* canShow= */ true); - // Change has Size Compat to false, no more CompatIU. + // Change Camera Compat state, show a control. clearInvocations(mWindowManager); clearInvocations(mLayout); - taskInfo = createTaskInfo(/* hasSizeCompat= */ false); - assertFalse(mWindowManager.updateCompatInfo(taskInfo, newTaskListener, - /* canShow= */ true)); + taskInfo = createTaskInfo(/* hasSizeCompat= */ true, + CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED); + assertTrue(mWindowManager.updateCompatInfo(taskInfo, newTaskListener, /* canShow= */ true)); + + verify(mLayout).setCameraControlVisibility(/* show= */ true); + verify(mLayout).updateCameraTreatmentButton( + CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED); + + // Change Camera Compat state, update a control. + clearInvocations(mWindowManager); + clearInvocations(mLayout); + taskInfo = createTaskInfo(/* hasSizeCompat= */ true, + CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED); + assertTrue(mWindowManager.updateCompatInfo(taskInfo, newTaskListener, /* canShow= */ true)); + + verify(mLayout).setCameraControlVisibility(/* show= */ true); + verify(mLayout).updateCameraTreatmentButton( + CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED); + + // Change has Size Compat to false, hides restart button. + clearInvocations(mWindowManager); + clearInvocations(mLayout); + taskInfo = createTaskInfo(/* hasSizeCompat= */ false, + CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED); + assertTrue(mWindowManager.updateCompatInfo(taskInfo, newTaskListener, /* canShow= */ true)); + + verify(mLayout).setRestartButtonVisibility(/* show= */ false); // Change has Size Compat to true, shows restart button. clearInvocations(mWindowManager); clearInvocations(mLayout); - taskInfo = createTaskInfo(/* hasSizeCompat= */ true); + taskInfo = createTaskInfo(/* hasSizeCompat= */ true, + CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED); assertTrue(mWindowManager.updateCompatInfo(taskInfo, newTaskListener, /* canShow= */ true)); - verify(mLayout, times(2)).setRestartButtonVisibility(/* show= */ true); + verify(mLayout).setRestartButtonVisibility(/* show= */ true); + + // Change Camera Compat state to dismissed, hide a control. + clearInvocations(mWindowManager); + clearInvocations(mLayout); + taskInfo = createTaskInfo(/* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_DISMISSED); + assertTrue(mWindowManager.updateCompatInfo(taskInfo, newTaskListener, /* canShow= */ true)); + + verify(mLayout).setCameraControlVisibility(/* show= */ false); // Change task bounds, update position. clearInvocations(mWindowManager); clearInvocations(mLayout); - taskInfo = createTaskInfo(/* hasSizeCompat= */ true); + taskInfo = createTaskInfo(/* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN); taskInfo.configuration.windowConfiguration.setBounds(new Rect(0, 1000, 0, 2000)); assertTrue(mWindowManager.updateCompatInfo(taskInfo, newTaskListener, /* canShow= */ true)); @@ -238,7 +307,7 @@ public class CompatUIWindowManagerTest extends ShellTestCase { // Change has Size Compat to false, release layout. clearInvocations(mWindowManager); clearInvocations(mLayout); - taskInfo = createTaskInfo(/* hasSizeCompat= */ false); + taskInfo = createTaskInfo(/* hasSizeCompat= */ false, CAMERA_COMPAT_CONTROL_HIDDEN); assertFalse( mWindowManager.updateCompatInfo(taskInfo, newTaskListener, /* canShow= */ true)); @@ -246,7 +315,6 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateCompatInfoLayoutNotInflatedYet() { mWindowManager.createLayout(/* canShow= */ false); @@ -255,14 +323,15 @@ public class CompatUIWindowManagerTest extends ShellTestCase { // Change topActivityInSizeCompat to false and pass canShow true, layout shouldn't be // inflated clearInvocations(mWindowManager); - TaskInfo taskInfo = createTaskInfo(/* hasSizeCompat= */ false); + TaskInfo taskInfo = createTaskInfo(/* hasSizeCompat= */ false, + CAMERA_COMPAT_CONTROL_HIDDEN); mWindowManager.updateCompatInfo(taskInfo, mTaskListener, /* canShow= */ true); verify(mWindowManager, never()).inflateLayout(); // Change topActivityInSizeCompat to true and pass canShow true, layout should be inflated. clearInvocations(mWindowManager); - taskInfo = createTaskInfo(/* hasSizeCompat= */ true); + taskInfo = createTaskInfo(/* hasSizeCompat= */ true, CAMERA_COMPAT_CONTROL_HIDDEN); mWindowManager.updateCompatInfo(taskInfo, mTaskListener, /* canShow= */ true); verify(mWindowManager).inflateLayout(); @@ -278,7 +347,6 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateDisplayLayout() { final DisplayInfo displayInfo = new DisplayInfo(); displayInfo.logicalWidth = 1000; @@ -298,7 +366,6 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateDisplayLayoutInsets() { final DisplayInfo displayInfo = new DisplayInfo(); displayInfo.logicalWidth = 1000; @@ -323,7 +390,6 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateVisibility() { // Create button if it is not created. mWindowManager.mLayout = null; @@ -349,7 +415,6 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testAttachToParentSurface() { final SurfaceControl.Builder b = new SurfaceControl.Builder(); mWindowManager.attachToParentSurface(b); @@ -358,7 +423,37 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) + public void testOnCameraDismissButtonClicked() { + mWindowManager.mCameraCompatControlState = CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + mWindowManager.createLayout(/* canShow= */ true); + clearInvocations(mLayout); + mWindowManager.onCameraDismissButtonClicked(); + + verify(mCallback).onCameraControlStateUpdated(TASK_ID, CAMERA_COMPAT_CONTROL_DISMISSED); + verify(mLayout).setCameraControlVisibility(/* show= */ false); + } + + @Test + public void testOnCameraTreatmentButtonClicked() { + mWindowManager.mCameraCompatControlState = CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + mWindowManager.createLayout(/* canShow= */ true); + clearInvocations(mLayout); + mWindowManager.onCameraTreatmentButtonClicked(); + + verify(mCallback).onCameraControlStateUpdated( + TASK_ID, CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED); + verify(mLayout).updateCameraTreatmentButton( + CAMERA_COMPAT_CONTROL_TREATMENT_APPLIED); + + mWindowManager.onCameraTreatmentButtonClicked(); + + verify(mCallback).onCameraControlStateUpdated( + TASK_ID, CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED); + verify(mLayout).updateCameraTreatmentButton( + CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED); + } + + @Test public void testOnRestartButtonClicked() { mWindowManager.onRestartButtonClicked(); @@ -373,9 +468,8 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnRestartButtonLongClicked_showHint() { - // Not create hint popup. + // Not create hint popup. mWindowManager.mHasSizeCompat = true; mWindowManager.mCompatUIHintsState.mHasShownSizeCompatHint = true; mWindowManager.createLayout(/* canShow= */ true); @@ -389,7 +483,21 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) + public void testOnCameraControlLongClicked_showHint() { + // Not create hint popup. + mWindowManager.mCameraCompatControlState = CAMERA_COMPAT_CONTROL_TREATMENT_SUGGESTED; + mWindowManager.mCompatUIHintsState.mHasShownCameraCompatHint = true; + mWindowManager.createLayout(/* canShow= */ true); + + verify(mWindowManager).inflateLayout(); + verify(mLayout, never()).setCameraCompatHintVisibility(/* show= */ true); + + mWindowManager.onCameraButtonLongClicked(); + + verify(mLayout).setCameraCompatHintVisibility(/* show= */ true); + } + + @Test public void testWhenDockedStateHasChanged_needsToBeRecreated() { ActivityManager.RunningTaskInfo newTaskInfo = new ActivityManager.RunningTaskInfo(); newTaskInfo.configuration.uiMode |= Configuration.UI_MODE_TYPE_DESK; @@ -398,15 +506,15 @@ public class CompatUIWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testShouldShowSizeCompatRestartButton() { + mSetFlagsRule.enableFlags(Flags.FLAG_ALLOW_HIDE_SCM_BUTTON); doReturn(85).when(mCompatUIConfiguration).getHideSizeCompatRestartButtonTolerance(); mWindowManager = new CompatUIWindowManager(mContext, mTaskInfo, mSyncTransactionQueue, mCallback, mTaskListener, mDisplayLayout, new CompatUIHintsState(), - mCompatUIConfiguration, mOnRestartButtonClicked, mDesktopState); + mCompatUIConfiguration, mOnRestartButtonClicked); // Simulate rotation of activity in square display - TaskInfo taskInfo = createTaskInfo(true); + TaskInfo taskInfo = createTaskInfo(true, CAMERA_COMPAT_CONTROL_HIDDEN); taskInfo.appCompatTaskInfo.topActivityLetterboxHeight = TASK_HEIGHT; taskInfo.appCompatTaskInfo.topActivityLetterboxWidth = 1850; @@ -435,10 +543,13 @@ public class CompatUIWindowManagerTest extends ShellTestCase { assertTrue(mWindowManager.shouldShowSizeCompatRestartButton(taskInfo)); } - private static TaskInfo createTaskInfo(boolean hasSizeCompat) { + private static TaskInfo createTaskInfo(boolean hasSizeCompat, + @CameraCompatTaskInfo.CameraCompatControlState int cameraCompatControlState) { ActivityManager.RunningTaskInfo taskInfo = new ActivityManager.RunningTaskInfo(); taskInfo.taskId = TASK_ID; - taskInfo.appCompatTaskInfo.setTopActivityInSizeCompat(hasSizeCompat); + taskInfo.appCompatTaskInfo.topActivityInSizeCompat = hasSizeCompat; + taskInfo.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState = + cameraCompatControlState; taskInfo.configuration.uiMode &= ~Configuration.UI_MODE_TYPE_DESK; // Letterboxed activity that takes half the screen should show size compat restart button taskInfo.appCompatTaskInfo.topActivityLetterboxHeight = 1000; diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduDialogLayoutTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduDialogLayoutTest.java index 9b87c36d64..172c263ab0 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduDialogLayoutTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduDialogLayoutTest.java @@ -16,15 +16,12 @@ package com.android.wm.shell.compatui; -import static com.android.window.flags2.Flags.FLAG_APP_COMPAT_UI_FRAMEWORK; - import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; -import android.platform.test.annotations.RequiresFlagsDisabled; import android.testing.AndroidTestingRunner; import android.view.LayoutInflater; import android.view.View; @@ -69,7 +66,6 @@ public class LetterboxEduDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnFinishInflate() { assertEquals(mLayout.getDialogContainerView(), mLayout.findViewById(R.id.letterbox_education_dialog_container)); @@ -80,7 +76,6 @@ public class LetterboxEduDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnDismissButtonClicked() { assertTrue(mDismissButton.performClick()); @@ -88,7 +83,6 @@ public class LetterboxEduDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnBackgroundClicked() { assertTrue(mLayout.performClick()); @@ -96,7 +90,6 @@ public class LetterboxEduDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnDialogContainerClicked() { assertTrue(mDialogContainer.performClick()); @@ -104,7 +97,6 @@ public class LetterboxEduDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testSetDismissOnClickListenerNull() { mLayout.setDismissOnClickListener(null); diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduWindowManagerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduWindowManagerTest.java index cbf5d1bb65..a60a1cbb43 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduWindowManagerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/LetterboxEduWindowManagerTest.java @@ -19,15 +19,9 @@ package com.android.wm.shell.compatui; import static android.content.res.Configuration.UI_MODE_NIGHT_YES; import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; -import static com.android.window.flags.Flags.FLAG_APP_COMPAT_ASYNC_RELAYOUT; -import static com.android.window.flags.Flags.FLAG_APP_COMPAT_UI_FRAMEWORK; -import static com.android.wm.shell.compatui.CompatUIStatusManager.COMPAT_UI_EDUCATION_HIDDEN; -import static com.android.wm.shell.compatui.CompatUIStatusManager.COMPAT_UI_EDUCATION_VISIBLE; import static com.google.common.truth.Truth.assertThat; -import static junit.framework.Assert.assertEquals; - import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; @@ -43,9 +37,6 @@ import android.app.ActivityManager; import android.app.TaskInfo; import android.graphics.Insets; import android.graphics.Rect; -import android.platform.test.annotations.DisableFlags; -import android.platform.test.annotations.EnableFlags; -import android.platform.test.annotations.RequiresFlagsDisabled; import android.testing.AndroidTestingRunner; import android.util.Pair; import android.view.DisplayCutout; @@ -59,7 +50,6 @@ import android.view.accessibility.AccessibilityEvent; import androidx.test.filters.SmallTest; -import com.android.window.flags.Flags; import com.android.wm.shell.R; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; @@ -67,7 +57,6 @@ import com.android.wm.shell.TestShellExecutor; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.DockStateReader; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.compatui.CompatUIStatusManagerTest.FakeCompatUIStatusManagerTest; import com.android.wm.shell.transition.Transitions; import org.junit.After; @@ -126,16 +115,11 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { private CompatUIConfiguration mCompatUIConfiguration; private TestShellExecutor mExecutor; - private FakeCompatUIStatusManagerTest mCompatUIStatus; - private CompatUIStatusManager mCompatUIStatusManager; @Before public void setUp() { MockitoAnnotations.initMocks(this); mExecutor = new TestShellExecutor(); - mCompatUIStatus = new FakeCompatUIStatusManagerTest(); - mCompatUIStatusManager = new CompatUIStatusManager(mCompatUIStatus.mWriter, - mCompatUIStatus.mReader); mCompatUIConfiguration = new CompatUIConfiguration(mContext, mExecutor) { final Set<Integer> mHasSeenSet = new HashSet<>(); @@ -169,7 +153,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testCreateLayout_notEligible_doesNotCreateLayout() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ false); @@ -179,7 +162,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testCreateLayout_eligibleAndDocked_doesNotCreateLayout() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true, /* isDocked */ true); @@ -190,7 +172,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testCreateLayout_taskBarEducationIsShowing_doesNotCreateLayout() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true, USER_ID_1, /* isTaskbarEduShowing= */ true); @@ -201,7 +182,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testCreateLayout_canShowFalse_returnsTrueButDoesNotCreateLayout() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true); @@ -212,7 +192,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testCreateLayout_canShowTrue_createsLayoutCorrectly() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true); @@ -259,7 +238,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testCreateLayout_alreadyShownToUser_createsLayoutForOtherUserOnly() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true, USER_ID_1, /* isTaskbarEduShowing= */ false); @@ -293,7 +271,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testCreateLayout_windowManagerReleasedBeforeTransitionsIsIdle_doesNotStartAnim() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true); @@ -311,8 +288,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) - @DisableFlags(FLAG_APP_COMPAT_ASYNC_RELAYOUT) public void testUpdateCompatInfo_updatesLayoutCorrectly() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true); @@ -341,37 +316,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) - @EnableFlags(FLAG_APP_COMPAT_ASYNC_RELAYOUT) - public void testUpdateCompatInfo_updatesLayoutCorrectlyAsync() { - LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true); - - assertTrue(windowManager.createLayout(/* canShow= */ true)); - LetterboxEduDialogLayout layout = windowManager.mLayout; - assertNotNull(layout); - - assertTrue(windowManager.updateCompatInfo( - createTaskInfo(/* eligible= */ true, USER_ID_1, new Rect(50, 25, 150, 75)), - mTaskListener, /* canShow= */ true)); - - verifyLayout(layout, layout.getLayoutParams(), /* expectedWidth= */ 100, - /* expectedHeight= */ 50, /* expectedExtraTopMargin= */ 0, - /* expectedExtraBottomMargin= */ 0); - verify(mViewHost).relayout(mWindowAttrsCaptor.capture(), any()); - assertThat(mWindowAttrsCaptor.getValue()).isEqualTo(layout.getLayoutParams()); - - // Window manager should be released (without animation) when eligible becomes false. - assertFalse(windowManager.updateCompatInfo(createTaskInfo(/* eligible= */ false), - mTaskListener, /* canShow= */ true)); - - verify(windowManager).release(); - verify(mOnDismissCallback, never()).accept(any()); - verify(mAnimationController, never()).startExitAnimation(any(), any()); - assertNull(windowManager.mLayout); - } - - @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateCompatInfo_notEligibleUntilUpdate_createsLayoutAfterUpdate() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ false); @@ -385,7 +329,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateCompatInfo_canShowFalse_doesNothing() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true); @@ -400,8 +343,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) - @DisableFlags(FLAG_APP_COMPAT_ASYNC_RELAYOUT) public void testUpdateDisplayLayout_updatesLayoutCorrectly() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true); @@ -423,30 +364,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) - @EnableFlags(FLAG_APP_COMPAT_ASYNC_RELAYOUT) - public void testUpdateDisplayLayout_updatesLayoutCorrectlyAsync() { - LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true); - - assertTrue(windowManager.createLayout(/* canShow= */ true)); - LetterboxEduDialogLayout layout = windowManager.mLayout; - assertNotNull(layout); - - int newDisplayCutoutTop = DISPLAY_CUTOUT_TOP + 7; - int newDisplayCutoutBottom = DISPLAY_CUTOUT_BOTTOM + 9; - windowManager.updateDisplayLayout(createDisplayLayout( - Insets.of(DISPLAY_CUTOUT_HORIZONTAL, newDisplayCutoutTop, - DISPLAY_CUTOUT_HORIZONTAL, newDisplayCutoutBottom))); - - verifyLayout(layout, layout.getLayoutParams(), /* expectedWidth= */ TASK_WIDTH, - /* expectedHeight= */ TASK_HEIGHT, /* expectedExtraTopMargin= */ - newDisplayCutoutTop, /* expectedExtraBottomMargin= */ newDisplayCutoutBottom); - verify(mViewHost).relayout(mWindowAttrsCaptor.capture(), any()); - assertThat(mWindowAttrsCaptor.getValue()).isEqualTo(layout.getLayoutParams()); - } - - @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testRelease_animationIsCancelled() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true); @@ -457,7 +374,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testDeviceThemeChange_educationDialogUnseen_recreated() { LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true); ActivityManager.RunningTaskInfo newTaskInfo = new ActivityManager.RunningTaskInfo(); @@ -476,21 +392,6 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { assertFalse(windowManager.needsToBeRecreated(newTaskInfo, mTaskListener)); } - @Test - @EnableFlags(Flags.FLAG_ENABLE_COMPAT_UI_VISIBILITY_STATUS) - public void testCompatUIStatus_dialogIsShown() { - // We display the dialog - LetterboxEduWindowManager windowManager = createWindowManager(/* eligible= */ true, - USER_ID_1, /* isTaskbarEduShowing= */ false); - assertTrue(windowManager.createLayout(/* canShow= */ true)); - assertNotNull(windowManager.mLayout); - assertEquals(/* expected= */ COMPAT_UI_EDUCATION_VISIBLE, mCompatUIStatus.mCurrentStatus); - - // We dismiss - windowManager.release(); - assertEquals(/* expected= */ COMPAT_UI_EDUCATION_HIDDEN, mCompatUIStatus.mCurrentStatus); - } - private void verifyLayout(LetterboxEduDialogLayout layout, ViewGroup.LayoutParams params, int expectedWidth, int expectedHeight, int expectedExtraTopMargin, int expectedExtraBottomMargin) { @@ -541,7 +442,7 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { windowManager = new LetterboxEduWindowManager(mContext, createTaskInfo(eligible, userId), mSyncTransactionQueue, mTaskListener, createDisplayLayout(), mTransitions, mOnDismissCallback, mAnimationController, - mDockStateReader, mCompatUIConfiguration, mCompatUIStatusManager); + mDockStateReader, mCompatUIConfiguration); spyOn(windowManager); doReturn(mViewHost).when(windowManager).createSurfaceViewHost(); doReturn(isTaskbarEduShowing).when(windowManager).isTaskbarEduShowing(); @@ -576,7 +477,7 @@ public class LetterboxEduWindowManagerTest extends ShellTestCase { ActivityManager.RunningTaskInfo taskInfo = new ActivityManager.RunningTaskInfo(); taskInfo.userId = userId; taskInfo.taskId = TASK_ID; - taskInfo.appCompatTaskInfo.setEligibleForLetterboxEducation(eligible); + taskInfo.appCompatTaskInfo.topActivityEligibleForLetterboxEducation = eligible; taskInfo.configuration.windowConfiguration.setBounds(bounds); return taskInfo; } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/ReachabilityEduLayoutTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/ReachabilityEduLayoutTest.java index d375a715b1..4f71b83179 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/ReachabilityEduLayoutTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/ReachabilityEduLayoutTest.java @@ -16,8 +16,6 @@ package com.android.wm.shell.compatui; -import static com.android.window.flags2.Flags.FLAG_APP_COMPAT_UI_FRAMEWORK; - import static junit.framework.Assert.assertEquals; import static junit.framework.Assert.assertNotNull; @@ -25,7 +23,6 @@ import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import android.app.TaskInfo; -import android.platform.test.annotations.RequiresFlagsDisabled; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; import android.view.LayoutInflater; @@ -77,7 +74,6 @@ public class ReachabilityEduLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnFinishInflate() { assertNotNull(mMoveUpButton); assertNotNull(mMoveDownButton); @@ -86,7 +82,6 @@ public class ReachabilityEduLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void handleVisibility_educationNotEnabled_buttonsAreHidden() { mLayout.handleVisibility(/* horizontalEnabled */ false, /* verticalEnabled */ false, /* letterboxVerticalPosition */ @@ -99,7 +94,6 @@ public class ReachabilityEduLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void handleVisibility_horizontalEducationEnableduiConfigurationIsUpdated() { mLayout.handleVisibility(/* horizontalEnabled */ true, /* verticalEnabled */ false, /* letterboxVerticalPosition */ -1, /* letterboxHorizontalPosition */ @@ -112,7 +106,6 @@ public class ReachabilityEduLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void handleVisibility_verticalEducationEnabled_uiConfigurationIsUpdated() { mLayout.handleVisibility(/* horizontalEnabled */ false, /* verticalEnabled */ true, /* letterboxVerticalPosition */ 0, /* letterboxHorizontalPosition */ diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/ReachabilityEduWindowManagerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/ReachabilityEduWindowManagerTest.java index 6543252fac..5867a8553d 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/ReachabilityEduWindowManagerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/ReachabilityEduWindowManagerTest.java @@ -16,15 +16,12 @@ package com.android.wm.shell.compatui; -import static com.android.window.flags2.Flags.FLAG_APP_COMPAT_UI_FRAMEWORK; - import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNull; import android.app.ActivityManager; import android.app.TaskInfo; import android.content.res.Configuration; -import android.platform.test.annotations.RequiresFlagsDisabled; import android.testing.AndroidTestingRunner; import androidx.test.filters.SmallTest; @@ -83,7 +80,6 @@ public class ReachabilityEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testCreateLayout_notEligible_doesNotCreateLayout() { assertFalse(mWindowManager.createLayout(/* canShow= */ true)); @@ -91,7 +87,6 @@ public class ReachabilityEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testWhenDockedStateHasChanged_needsToBeRecreated() { ActivityManager.RunningTaskInfo newTaskInfo = new ActivityManager.RunningTaskInfo(); newTaskInfo.configuration.uiMode = @@ -102,7 +97,6 @@ public class ReachabilityEduWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testWhenDarkLightThemeHasChanged_needsToBeRecreated() { ActivityManager.RunningTaskInfo newTaskInfo = new ActivityManager.RunningTaskInfo(); mTaskInfo.configuration.uiMode = diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/RestartDialogLayoutTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/RestartDialogLayoutTest.java index 707f2e7630..e2dcdb0e91 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/RestartDialogLayoutTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/RestartDialogLayoutTest.java @@ -16,8 +16,6 @@ package com.android.wm.shell.compatui; -import static com.android.window.flags2.Flags.FLAG_APP_COMPAT_UI_FRAMEWORK; - import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -25,7 +23,6 @@ import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; -import android.platform.test.annotations.RequiresFlagsDisabled; import android.testing.AndroidTestingRunner; import android.view.LayoutInflater; import android.view.View; @@ -52,7 +49,7 @@ import java.util.function.Consumer; */ @RunWith(AndroidTestingRunner.class) @SmallTest -public class RestartDialogLayoutTest extends ShellTestCase { +public class RestartDialogLayoutTest extends ShellTestCase { @Mock private Runnable mDismissCallback; @Mock private Consumer<Boolean> mRestartCallback; @@ -79,7 +76,6 @@ public class RestartDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnFinishInflate() { assertEquals(mLayout.getDialogContainerView(), mLayout.findViewById(R.id.letterbox_restart_dialog_container)); @@ -90,7 +86,6 @@ public class RestartDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnDismissButtonClicked() { assertTrue(mDismissButton.performClick()); @@ -98,7 +93,6 @@ public class RestartDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnRestartButtonClickedWithoutCheckbox() { mDontRepeatCheckBox.setChecked(false); assertTrue(mRestartButton.performClick()); @@ -107,7 +101,6 @@ public class RestartDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnRestartButtonClickedWithCheckbox() { mDontRepeatCheckBox.setChecked(true); assertTrue(mRestartButton.performClick()); @@ -116,7 +109,6 @@ public class RestartDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnBackgroundClickedDoesntDismiss() { assertFalse(mLayout.performClick()); @@ -124,7 +116,6 @@ public class RestartDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnDialogContainerClicked() { assertTrue(mDialogContainer.performClick()); @@ -133,7 +124,6 @@ public class RestartDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testSetDismissOnClickListenerNull() { mLayout.setDismissOnClickListener(null); @@ -145,7 +135,6 @@ public class RestartDialogLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testSetRestartOnClickListenerNull() { mLayout.setRestartOnClickListener(null); diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/RestartDialogWindowManagerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/RestartDialogWindowManagerTest.java index 5bd3b11c17..9f109a1d0f 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/RestartDialogWindowManagerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/RestartDialogWindowManagerTest.java @@ -16,12 +16,9 @@ package com.android.wm.shell.compatui; -import static com.android.window.flags2.Flags.FLAG_APP_COMPAT_UI_FRAMEWORK; - import android.app.ActivityManager; import android.app.TaskInfo; import android.content.res.Configuration; -import android.platform.test.annotations.RequiresFlagsDisabled; import android.testing.AndroidTestingRunner; import android.util.Pair; @@ -79,7 +76,6 @@ public class RestartDialogWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testWhenDockedStateHasChanged_needsToBeRecreated() { ActivityManager.RunningTaskInfo newTaskInfo = new ActivityManager.RunningTaskInfo(); newTaskInfo.configuration.uiMode = @@ -90,7 +86,6 @@ public class RestartDialogWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testWhenDarkLightThemeHasChanged_needsToBeRecreated() { ActivityManager.RunningTaskInfo newTaskInfo = new ActivityManager.RunningTaskInfo(); mTaskInfo.configuration.uiMode = diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/UserAspectRatioSettingsLayoutTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/UserAspectRatioSettingsLayoutTest.java index e66faa6471..02316125bc 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/UserAspectRatioSettingsLayoutTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/UserAspectRatioSettingsLayoutTest.java @@ -16,17 +16,18 @@ package com.android.wm.shell.compatui; +import static android.app.CameraCompatTaskInfo.CAMERA_COMPAT_CONTROL_HIDDEN; + import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; -import static com.android.window.flags2.Flags.FLAG_APP_COMPAT_UI_FRAMEWORK; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; import android.app.ActivityManager; +import android.app.CameraCompatTaskInfo.CameraCompatControlState; import android.app.TaskInfo; import android.content.ComponentName; -import android.platform.test.annotations.RequiresFlagsDisabled; import android.testing.AndroidTestingRunner; import android.util.Pair; import android.view.LayoutInflater; @@ -88,7 +89,7 @@ public class UserAspectRatioSettingsLayoutTest extends ShellTestCase { @Before public void setUp() { MockitoAnnotations.initMocks(this); - mTaskInfo = createTaskInfo(/* hasSizeCompat= */ false); + mTaskInfo = createTaskInfo(/* hasSizeCompat= */ false, CAMERA_COMPAT_CONTROL_HIDDEN); mWindowManager = new UserAspectRatioSettingsWindowManager(mContext, mTaskInfo, mSyncTransactionQueue, mTaskListener, new DisplayLayout(), new CompatUIController.CompatUIHintsState(), @@ -106,7 +107,6 @@ public class UserAspectRatioSettingsLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnClickForUserAspectRatioSettingsButton() { final ImageButton button = mLayout.findViewById(R.id.user_aspect_ratio_settings_button); button.performClick(); @@ -123,7 +123,6 @@ public class UserAspectRatioSettingsLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnLongClickForUserAspectRatioButton() { doNothing().when(mWindowManager).onUserAspectRatioSettingsButtonLongClicked(); @@ -134,7 +133,6 @@ public class UserAspectRatioSettingsLayoutTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnClickForUserAspectRatioSettingsHint() { mWindowManager.mHasUserAspectRatioSettingsButton = true; mWindowManager.createLayout(/* canShow= */ true); @@ -145,10 +143,13 @@ public class UserAspectRatioSettingsLayoutTest extends ShellTestCase { verify(mLayout).setUserAspectRatioSettingsHintVisibility(/* show= */ false); } - private static TaskInfo createTaskInfo(boolean hasSizeCompat) { + private static TaskInfo createTaskInfo(boolean hasSizeCompat, + @CameraCompatControlState int cameraCompatControlState) { ActivityManager.RunningTaskInfo taskInfo = new ActivityManager.RunningTaskInfo(); taskInfo.taskId = TASK_ID; - taskInfo.appCompatTaskInfo.setTopActivityInSizeCompat(hasSizeCompat); + taskInfo.appCompatTaskInfo.topActivityInSizeCompat = hasSizeCompat; + taskInfo.appCompatTaskInfo.cameraCompatTaskInfo.cameraCompatControlState = + cameraCompatControlState; taskInfo.realActivity = new ComponentName("com.mypackage.test", "TestActivity"); return taskInfo; } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/UserAspectRatioSettingsWindowManagerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/UserAspectRatioSettingsWindowManagerTest.java index af7c1f5d76..94e168ed70 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/compatui/UserAspectRatioSettingsWindowManagerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/compatui/UserAspectRatioSettingsWindowManagerTest.java @@ -22,7 +22,6 @@ import static android.hardware.usb.UsbManager.ACTION_USB_STATE; import static android.view.WindowInsets.Type.navigationBars; import static com.android.dx.mockito.inline.extended.ExtendedMockito.spyOn; -import static com.android.window.flags.Flags.FLAG_APP_COMPAT_UI_FRAMEWORK; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; @@ -40,7 +39,6 @@ import android.content.ComponentName; import android.content.Intent; import android.content.res.Configuration; import android.graphics.Rect; -import android.platform.test.annotations.RequiresFlagsDisabled; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper.RunWithLooper; import android.util.Pair; @@ -140,7 +138,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testCreateUserAspectRatioButton() { // Doesn't create layout if show is false. mWindowManager.mHasUserAspectRatioSettingsButton = true; @@ -181,7 +178,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testRelease() { mWindowManager.mHasUserAspectRatioSettingsButton = true; mWindowManager.createLayout(/* canShow= */ true); @@ -194,7 +190,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateCompatInfo() { mWindowManager.mHasUserAspectRatioSettingsButton = true; mWindowManager.createLayout(/* canShow= */ true); @@ -247,7 +242,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateCompatInfoLayoutNotInflatedYet() { mWindowManager.mHasUserAspectRatioSettingsButton = true; mWindowManager.createLayout(/* canShow= */ false); @@ -273,7 +267,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testEligibleButtonHiddenIfLetterboxBoundsEqualToStableBounds() { TaskInfo taskInfo = createTaskInfo(/* eligibleForUserAspectRatioButton= */ true, /* topActivityBoundsLetterboxed */ true, ACTION_MAIN, CATEGORY_LAUNCHER); @@ -299,7 +292,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUserFullscreenOverrideEnabled_buttonAlwaysShown() { TaskInfo taskInfo = createTaskInfo(/* eligibleForUserAspectRatioButton= */ true, /* topActivityBoundsLetterboxed */ true, ACTION_MAIN, CATEGORY_LAUNCHER); @@ -310,7 +302,7 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { // layout should be inflated taskInfo.appCompatTaskInfo.topActivityLetterboxHeight = stableBounds.height(); taskInfo.appCompatTaskInfo.topActivityLetterboxWidth = stableBounds.width(); - taskInfo.appCompatTaskInfo.setUserFullscreenOverrideEnabled(true); + taskInfo.appCompatTaskInfo.isUserFullscreenOverrideEnabled = true; mWindowManager.updateCompatInfo(taskInfo, mTaskListener, /* canShow= */ true); @@ -318,7 +310,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateDisplayLayout() { final DisplayInfo displayInfo = new DisplayInfo(); displayInfo.logicalWidth = 1000; @@ -338,7 +329,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateDisplayLayoutInsets() { final DisplayInfo displayInfo = new DisplayInfo(); displayInfo.logicalWidth = 1000; @@ -363,7 +353,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testUpdateVisibility() { // Create button if it is not created. mWindowManager.removeLayout(); @@ -389,7 +378,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testLayoutHasUserAspectRatioSettingsButton() { clearInvocations(mWindowManager); spyOn(mWindowManager); @@ -423,7 +411,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testAttachToParentSurface() { final SurfaceControl.Builder b = new SurfaceControl.Builder(); mWindowManager.attachToParentSurface(b); @@ -432,7 +419,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnUserAspectRatioButtonClicked() { mWindowManager.onUserAspectRatioSettingsButtonClicked(); @@ -447,7 +433,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testOnUserAspectRatioButtonLongClicked_showHint() { // Not create hint popup. mWindowManager.mHasUserAspectRatioSettingsButton = true; @@ -463,7 +448,6 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { } @Test - @RequiresFlagsDisabled(FLAG_APP_COMPAT_UI_FRAMEWORK) public void testWhenDockedStateHasChanged_needsToBeRecreated() { ActivityManager.RunningTaskInfo newTaskInfo = new ActivityManager.RunningTaskInfo(); newTaskInfo.configuration.uiMode |= Configuration.UI_MODE_TYPE_DESK; @@ -475,9 +459,9 @@ public class UserAspectRatioSettingsWindowManagerTest extends ShellTestCase { boolean topActivityBoundsLetterboxed, String action, String category) { ActivityManager.RunningTaskInfo taskInfo = new ActivityManager.RunningTaskInfo(); taskInfo.taskId = TASK_ID; - taskInfo.appCompatTaskInfo.setEligibleForUserAspectRatioButton( - eligibleForUserAspectRatioButton); - taskInfo.appCompatTaskInfo.setTopActivityLetterboxed(topActivityBoundsLetterboxed); + taskInfo.appCompatTaskInfo.topActivityEligibleForUserAspectRatioButton = + eligibleForUserAspectRatioButton; + taskInfo.appCompatTaskInfo.topActivityBoundsLetterboxed = topActivityBoundsLetterboxed; taskInfo.configuration.uiMode &= ~Configuration.UI_MODE_TYPE_DESK; taskInfo.realActivity = new ComponentName("com.mypackage.test", "TestActivity"); taskInfo.baseIntent = new Intent(action).addCategory(category); diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeEventLoggerTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeEventLoggerTest.kt index acda66fa2e..4548fcb06c 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeEventLoggerTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeEventLoggerTest.kt @@ -16,772 +16,154 @@ package com.android.wm.shell.desktopmode -import android.app.ActivityManager.RunningTaskInfo -import android.graphics.Rect -import android.platform.test.annotations.EnableFlags -import com.android.dx.mockito.inline.extended.ExtendedMockito.clearInvocations -import com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn -import com.android.dx.mockito.inline.extended.ExtendedMockito.staticMockMarker -import com.android.dx.mockito.inline.extended.ExtendedMockito.verify -import com.android.dx.mockito.inline.extended.ExtendedMockito.verifyNoMoreInteractions +import com.android.dx.mockito.inline.extended.ExtendedMockito import com.android.internal.util.FrameworkStatsLog import com.android.modules.utils.testing.ExtendedMockitoRule -import com.android.window.flags2.Flags -import com.android.wm.shell.EventLogTags -import com.android.wm.shell.ShellTestCase -import com.android.wm.shell.TestRunningTaskInfoBuilder -import com.android.wm.shell.common.DisplayController -import com.android.wm.shell.common.DisplayLayout import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.EnterReason import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.ExitReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.FocusReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.InputMethod -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.MinimizeReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.NO_SESSION_ID -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.ResizeTrigger -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.TaskSizeUpdate import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.TaskUpdate -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UNSET_FOCUS_REASON -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UNSET_MINIMIZE_REASON -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UNSET_UNMINIMIZE_REASON -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UnminimizeReason -import com.google.common.truth.Truth.assertThat -import org.junit.After +import kotlinx.coroutines.runBlocking import org.junit.Before import org.junit.Rule import org.junit.Test -import org.mockito.ArgumentMatchers.anyInt import org.mockito.kotlin.eq -import org.mockito.kotlin.mock -import org.mockito.kotlin.never -import org.mockito.kotlin.whenever -/** Tests for [DesktopModeEventLogger]. */ -class DesktopModeEventLoggerTest : ShellTestCase() { +/** + * Tests for [DesktopModeEventLogger]. + */ +class DesktopModeEventLoggerTest { - private val desktopModeEventLogger = DesktopModeEventLogger() - val displayController = mock<DisplayController>() - val displayLayout = mock<DisplayLayout>() + private val desktopModeEventLogger = DesktopModeEventLogger() @JvmField - @Rule() - val extendedMockitoRule = - ExtendedMockitoRule.Builder(this) - .mockStatic(FrameworkStatsLog::class.java) - .mockStatic(EventLogTags::class.java) - .build()!! - - @Before - fun setUp() { - doReturn(displayLayout).whenever(displayController).getDisplayLayout(anyInt()) - doReturn(DISPLAY_WIDTH).whenever(displayLayout).width() - doReturn(DISPLAY_HEIGHT).whenever(displayLayout).height() - } - - @After - fun tearDown() { - clearInvocations(staticMockMarker(FrameworkStatsLog::class.java)) - clearInvocations(staticMockMarker(EventLogTags::class.java)) - } + @Rule + val extendedMockitoRule = ExtendedMockitoRule.Builder(this) + .mockStatic(FrameworkStatsLog::class.java).build()!! @Test - fun logSessionEnter_logsEnterReasonWithNewSessionId() { - desktopModeEventLogger.logSessionEnter(EnterReason.KEYBOARD_SHORTCUT_ENTER) + fun logSessionEnter_enterReason() = runBlocking { + desktopModeEventLogger.logSessionEnter(sessionId = SESSION_ID, EnterReason.UNKNOWN_ENTER) - val sessionId = desktopModeEventLogger.currentSessionId.get() - assertThat(sessionId).isNotEqualTo(NO_SESSION_ID) - verifyOnlyOneUiChangedLogging( - FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EVENT__ENTER, - FrameworkStatsLog.DESKTOP_MODE_UICHANGED__ENTER_REASON__KEYBOARD_SHORTCUT_ENTER, - 0, - sessionId, - ) - verify { - EventLogTags.writeWmShellEnterDesktopMode( - eq(EnterReason.KEYBOARD_SHORTCUT_ENTER.reason), - eq(sessionId), - ) - } - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logSessionEnter_ongoingSession_logsEnterReasonWithNewSessionId() { - val previousSessionId = startDesktopModeSession() - - desktopModeEventLogger.logSessionEnter(EnterReason.KEYBOARD_SHORTCUT_ENTER) - - val sessionId = desktopModeEventLogger.currentSessionId.get() - assertThat(sessionId).isNotEqualTo(NO_SESSION_ID) - assertThat(sessionId).isNotEqualTo(previousSessionId) - verifyOnlyOneUiChangedLogging( - FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EVENT__ENTER, - FrameworkStatsLog.DESKTOP_MODE_UICHANGED__ENTER_REASON__KEYBOARD_SHORTCUT_ENTER, - /* exit_reason */ - 0, - sessionId, - ) - verify { - EventLogTags.writeWmShellEnterDesktopMode( - eq(EnterReason.KEYBOARD_SHORTCUT_ENTER.reason), - eq(sessionId), - ) - } - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logSessionExit_noOngoingSession_doesNotLog() { - desktopModeEventLogger.logSessionExit(ExitReason.DRAG_TO_EXIT) - - verifyNoLogging() - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logSessionExit_logsExitReasonAndClearsSessionId() { - val sessionId = startDesktopModeSession() - - desktopModeEventLogger.logSessionExit(ExitReason.DRAG_TO_EXIT) - - verifyOnlyOneUiChangedLogging( - FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EVENT__EXIT, - /* enter_reason */ - 0, - FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EXIT_REASON__DRAG_TO_EXIT, - sessionId, - ) - verify { - EventLogTags.writeWmShellExitDesktopMode( - eq(ExitReason.DRAG_TO_EXIT.reason), - eq(sessionId), - ) - } - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - assertThat(desktopModeEventLogger.currentSessionId.get()).isEqualTo(NO_SESSION_ID) - } - - @Test - fun logTaskAdded_noOngoingSession_doesNotLog() { - desktopModeEventLogger.logTaskAdded(TASK_UPDATE) - - verifyNoLogging() - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logTaskAdded_logsTaskUpdate() { - val sessionId = startDesktopModeSession() - - desktopModeEventLogger.logTaskAdded(TASK_UPDATE) - - verifyOnlyOneTaskUpdateLogging( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_ADDED, - TASK_UPDATE.instanceId, - TASK_UPDATE.uid, - TASK_UPDATE.taskHeight, - TASK_UPDATE.taskWidth, - TASK_UPDATE.taskX, - TASK_UPDATE.taskY, - sessionId, - UNSET_MINIMIZE_REASON, - UNSET_UNMINIMIZE_REASON, - TASK_COUNT, - UNSET_FOCUS_REASON, - ) - verify { - EventLogTags.writeWmShellDesktopModeTaskUpdate( - eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_ADDED), - eq(TASK_UPDATE.instanceId), - eq(TASK_UPDATE.uid), - eq(TASK_UPDATE.taskHeight), - eq(TASK_UPDATE.taskWidth), - eq(TASK_UPDATE.taskX), - eq(TASK_UPDATE.taskY), - eq(sessionId), - eq(UNSET_MINIMIZE_REASON), - eq(UNSET_UNMINIMIZE_REASON), - eq(TASK_COUNT), - eq(UNSET_FOCUS_REASON), - ) - } - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logTaskRemoved_noOngoingSession_doesNotLog() { - desktopModeEventLogger.logTaskRemoved(TASK_UPDATE) - - verifyNoLogging() - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logTaskRemoved_taskUpdate() { - val sessionId = startDesktopModeSession() - - desktopModeEventLogger.logTaskRemoved(TASK_UPDATE) - - verifyOnlyOneTaskUpdateLogging( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_REMOVED, - TASK_UPDATE.instanceId, - TASK_UPDATE.uid, - TASK_UPDATE.taskHeight, - TASK_UPDATE.taskWidth, - TASK_UPDATE.taskX, - TASK_UPDATE.taskY, - sessionId, - UNSET_MINIMIZE_REASON, - UNSET_UNMINIMIZE_REASON, - TASK_COUNT, - UNSET_FOCUS_REASON, - ) - verify { - EventLogTags.writeWmShellDesktopModeTaskUpdate( - eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_REMOVED), - eq(TASK_UPDATE.instanceId), - eq(TASK_UPDATE.uid), - eq(TASK_UPDATE.taskHeight), - eq(TASK_UPDATE.taskWidth), - eq(TASK_UPDATE.taskX), - eq(TASK_UPDATE.taskY), - eq(sessionId), - eq(UNSET_MINIMIZE_REASON), - eq(UNSET_UNMINIMIZE_REASON), - eq(TASK_COUNT), - eq(UNSET_FOCUS_REASON), - ) - } - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logTaskInfoChanged_noOngoingSession_doesNotLog() { - desktopModeEventLogger.logTaskInfoChanged(TASK_UPDATE) - - verifyNoLogging() - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logTaskInfoChanged_taskUpdate() { - val sessionId = startDesktopModeSession() - - desktopModeEventLogger.logTaskInfoChanged(TASK_UPDATE) - - verifyOnlyOneTaskUpdateLogging( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED, - TASK_UPDATE.instanceId, - TASK_UPDATE.uid, - TASK_UPDATE.taskHeight, - TASK_UPDATE.taskWidth, - TASK_UPDATE.taskX, - TASK_UPDATE.taskY, - sessionId, - UNSET_MINIMIZE_REASON, - UNSET_UNMINIMIZE_REASON, - TASK_COUNT, - UNSET_FOCUS_REASON, - ) - verify { - EventLogTags.writeWmShellDesktopModeTaskUpdate( - eq( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED - ), - eq(TASK_UPDATE.instanceId), - eq(TASK_UPDATE.uid), - eq(TASK_UPDATE.taskHeight), - eq(TASK_UPDATE.taskWidth), - eq(TASK_UPDATE.taskX), - eq(TASK_UPDATE.taskY), - eq(sessionId), - eq(UNSET_MINIMIZE_REASON), - eq(UNSET_UNMINIMIZE_REASON), - eq(TASK_COUNT), - eq(UNSET_FOCUS_REASON), - ) - } - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logTaskInfoChanged_logsTaskUpdateWithMinimizeReason() { - val sessionId = startDesktopModeSession() - - desktopModeEventLogger.logTaskInfoChanged( - createTaskUpdate(minimizeReason = MinimizeReason.TASK_LIMIT) - ) - - verifyOnlyOneTaskUpdateLogging( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED, - TASK_UPDATE.instanceId, - TASK_UPDATE.uid, - TASK_UPDATE.taskHeight, - TASK_UPDATE.taskWidth, - TASK_UPDATE.taskX, - TASK_UPDATE.taskY, - sessionId, - MinimizeReason.TASK_LIMIT.reason, - UNSET_UNMINIMIZE_REASON, - TASK_COUNT, - UNSET_FOCUS_REASON, - ) - verify { - EventLogTags.writeWmShellDesktopModeTaskUpdate( - eq( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED - ), - eq(TASK_UPDATE.instanceId), - eq(TASK_UPDATE.uid), - eq(TASK_UPDATE.taskHeight), - eq(TASK_UPDATE.taskWidth), - eq(TASK_UPDATE.taskX), - eq(TASK_UPDATE.taskY), - eq(sessionId), - eq(MinimizeReason.TASK_LIMIT.reason), - eq(UNSET_UNMINIMIZE_REASON), - eq(TASK_COUNT), - eq(UNSET_FOCUS_REASON), - ) - } - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logTaskInfoChanged_logsTaskUpdateWithUnminimizeReason() { - val sessionId = startDesktopModeSession() - - desktopModeEventLogger.logTaskInfoChanged( - createTaskUpdate(unminimizeReason = UnminimizeReason.TASKBAR_TAP) - ) - - verifyOnlyOneTaskUpdateLogging( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED, - TASK_UPDATE.instanceId, - TASK_UPDATE.uid, - TASK_UPDATE.taskHeight, - TASK_UPDATE.taskWidth, - TASK_UPDATE.taskX, - TASK_UPDATE.taskY, - sessionId, - UNSET_MINIMIZE_REASON, - UnminimizeReason.TASKBAR_TAP.reason, - TASK_COUNT, - UNSET_FOCUS_REASON, - ) - verify { - EventLogTags.writeWmShellDesktopModeTaskUpdate( - eq( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED - ), - eq(TASK_UPDATE.instanceId), - eq(TASK_UPDATE.uid), - eq(TASK_UPDATE.taskHeight), - eq(TASK_UPDATE.taskWidth), - eq(TASK_UPDATE.taskX), - eq(TASK_UPDATE.taskY), - eq(sessionId), - eq(UNSET_MINIMIZE_REASON), - eq(UnminimizeReason.TASKBAR_TAP.reason), - eq(TASK_COUNT), - eq(UNSET_FOCUS_REASON), - ) - } - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logTaskInfoChanged_logsTaskUpdateWithFocusReason() { - val sessionId = startDesktopModeSession() - - desktopModeEventLogger.logTaskInfoChanged( - createTaskUpdate(focusChangesReason = FocusReason.UNKNOWN) - ) - - verifyOnlyOneTaskUpdateLogging( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED, - TASK_UPDATE.instanceId, - TASK_UPDATE.uid, - TASK_UPDATE.taskHeight, - TASK_UPDATE.taskWidth, - TASK_UPDATE.taskX, - TASK_UPDATE.taskY, - sessionId, - UNSET_MINIMIZE_REASON, - UNSET_UNMINIMIZE_REASON, - TASK_COUNT, - FocusReason.UNKNOWN.reason, - ) - verify { - EventLogTags.writeWmShellDesktopModeTaskUpdate( - eq( - FrameworkStatsLog - .DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED - ), - eq(TASK_UPDATE.instanceId), - eq(TASK_UPDATE.uid), - eq(TASK_UPDATE.taskHeight), - eq(TASK_UPDATE.taskWidth), - eq(TASK_UPDATE.taskX), - eq(TASK_UPDATE.taskY), - eq(sessionId), - eq(UNSET_MINIMIZE_REASON), - eq(UNSET_UNMINIMIZE_REASON), - eq(TASK_COUNT), - eq(FocusReason.UNKNOWN.reason), - ) - } - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - fun logTaskResizingStarted_noOngoingSession_doesNotLog() { - desktopModeEventLogger.logTaskResizingStarted( - ResizeTrigger.CORNER, - InputMethod.UNKNOWN_INPUT_METHOD, - createTaskInfo(), - ) - - verifyNoLogging() - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_RESIZING_METRICS) - fun logTaskResizingStarted_logsTaskSizeUpdatedWithStartResizingStage() { - val sessionId = startDesktopModeSession() - - desktopModeEventLogger.logTaskResizingStarted( - ResizeTrigger.CORNER, - InputMethod.UNKNOWN_INPUT_METHOD, - createTaskInfo(), - TASK_SIZE_UPDATE.taskWidth, - TASK_SIZE_UPDATE.taskHeight, - displayController, - ) - - verifyOnlyOneTaskSizeUpdatedLogging( - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__CORNER_RESIZE_TRIGGER, - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZING_STAGE__START_RESIZING_STAGE, - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__INPUT_METHOD__UNKNOWN_INPUT_METHOD, - sessionId, - TASK_SIZE_UPDATE.instanceId, - TASK_SIZE_UPDATE.uid, - TASK_SIZE_UPDATE.taskWidth, - TASK_SIZE_UPDATE.taskHeight, - DISPLAY_AREA, - ) - } - - @Test - fun logTaskResizingEnded_noOngoingSession_doesNotLog() { - desktopModeEventLogger.logTaskResizingEnded( - ResizeTrigger.CORNER, - InputMethod.UNKNOWN_INPUT_METHOD, - createTaskInfo(), - ) - - verifyNoLogging() - verifyNoMoreInteractions(staticMockMarker(EventLogTags::class.java)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_RESIZING_METRICS) - fun logTaskResizingEnded_logsTaskSizeUpdatedWithEndResizingStage() { - val sessionId = startDesktopModeSession() - - desktopModeEventLogger.logTaskResizingEnded( - ResizeTrigger.CORNER, - InputMethod.UNKNOWN_INPUT_METHOD, - createTaskInfo(), - displayController = displayController, - ) - - verifyOnlyOneTaskSizeUpdatedLogging( - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZE_TRIGGER__CORNER_RESIZE_TRIGGER, - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__RESIZING_STAGE__END_RESIZING_STAGE, - FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED__INPUT_METHOD__UNKNOWN_INPUT_METHOD, - sessionId, - TASK_SIZE_UPDATE.instanceId, - TASK_SIZE_UPDATE.uid, - TASK_SIZE_UPDATE.taskWidth, - TASK_SIZE_UPDATE.taskHeight, - DISPLAY_AREA, - ) - } - - private fun startDesktopModeSession(): Int { - desktopModeEventLogger.logSessionEnter(EnterReason.KEYBOARD_SHORTCUT_ENTER) - clearInvocations(staticMockMarker(FrameworkStatsLog::class.java)) - clearInvocations(staticMockMarker(EventLogTags::class.java)) - return desktopModeEventLogger.currentSessionId.get() - } - - @Test - fun logTaskInfoStateInit_logsTaskInfoChangedStateInit() { - desktopModeEventLogger.logTaskInfoStateInit() - verify { + ExtendedMockito.verify { FrameworkStatsLog.write( - eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE), + eq(FrameworkStatsLog.DESKTOP_MODE_UI_CHANGED), + /* event */ + eq(FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EVENT__ENTER), + /* enter_reason */ + eq(FrameworkStatsLog.DESKTOP_MODE_UICHANGED__ENTER_REASON__UNKNOWN_ENTER), + /* exit_reason */ + eq(0), + /* sessionId */ + eq(SESSION_ID) + ) + } + } + + @Test + fun logSessionExit_exitReason() = runBlocking { + desktopModeEventLogger.logSessionExit(sessionId = SESSION_ID, ExitReason.UNKNOWN_EXIT) + + ExtendedMockito.verify { + FrameworkStatsLog.write( + eq(FrameworkStatsLog.DESKTOP_MODE_UI_CHANGED), + /* event */ + eq(FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EVENT__EXIT), + /* enter_reason */ + eq(0), + /* exit_reason */ + eq(FrameworkStatsLog.DESKTOP_MODE_UICHANGED__EXIT_REASON__UNKNOWN_EXIT), + /* sessionId */ + eq(SESSION_ID) + ) + } + } + + @Test + fun logTaskAdded_taskUpdate() = runBlocking { + desktopModeEventLogger.logTaskAdded(sessionId = SESSION_ID, TASK_UPDATE) + + ExtendedMockito.verify { + FrameworkStatsLog.write(eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE), /* task_event */ - eq( - FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INIT_STATSD - ), + eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_ADDED), /* instance_id */ - eq(0), + eq(TASK_UPDATE.instanceId), /* uid */ - eq(0), + eq(TASK_UPDATE.uid), /* task_height */ - eq(0), + eq(TASK_UPDATE.taskHeight), /* task_width */ - eq(0), + eq(TASK_UPDATE.taskWidth), /* task_x */ - eq(0), + eq(TASK_UPDATE.taskX), /* task_y */ - eq(0), + eq(TASK_UPDATE.taskY), /* session_id */ - eq(0), - /* minimize_reason */ - eq(UNSET_MINIMIZE_REASON), - /* unminimize_reason */ - eq(UNSET_UNMINIMIZE_REASON), - /* visible_task_count */ - eq(0), - /* focus_reason */ - eq(UNSET_FOCUS_REASON), - ) + eq(SESSION_ID)) } } - private fun createTaskInfo(): RunningTaskInfo = - TestRunningTaskInfoBuilder() - .setTaskId(TASK_ID) - .setUid(TASK_UID) - .setBounds(Rect(TASK_X, TASK_Y, TASK_WIDTH, TASK_HEIGHT)) - .build() + @Test + fun logTaskRemoved_taskUpdate() = runBlocking { + desktopModeEventLogger.logTaskRemoved(sessionId = SESSION_ID, TASK_UPDATE) - private fun verifyNoLogging() { - verify( - { - FrameworkStatsLog.write( - eq(FrameworkStatsLog.DESKTOP_MODE_UI_CHANGED), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - ) - }, - never(), - ) - verify( - { - FrameworkStatsLog.write( - eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - ) - }, - never(), - ) - verify( - { - FrameworkStatsLog.write( - eq(FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - ) - }, - never(), - ) + ExtendedMockito.verify { + FrameworkStatsLog.write(eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE), + /* task_event */ + eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_REMOVED), + /* instance_id */ + eq(TASK_UPDATE.instanceId), + /* uid */ + eq(TASK_UPDATE.uid), + /* task_height */ + eq(TASK_UPDATE.taskHeight), + /* task_width */ + eq(TASK_UPDATE.taskWidth), + /* task_x */ + eq(TASK_UPDATE.taskX), + /* task_y */ + eq(TASK_UPDATE.taskY), + /* session_id */ + eq(SESSION_ID)) + } } - private fun verifyOnlyOneUiChangedLogging( - event: Int, - enterReason: Int, - exitReason: Int, - sessionId: Int, - ) { - verify({ - FrameworkStatsLog.write( - eq(FrameworkStatsLog.DESKTOP_MODE_UI_CHANGED), - eq(event), - eq(enterReason), - eq(exitReason), - eq(sessionId), - ) - }) - verify({ - FrameworkStatsLog.write( - eq(FrameworkStatsLog.DESKTOP_MODE_UI_CHANGED), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - ) - }) + @Test + fun logTaskInfoChanged_taskUpdate() = runBlocking { + desktopModeEventLogger.logTaskInfoChanged(sessionId = SESSION_ID, TASK_UPDATE) + + ExtendedMockito.verify { + FrameworkStatsLog.write(eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE), + /* task_event */ + eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE__TASK_EVENT__TASK_INFO_CHANGED), + /* instance_id */ + eq(TASK_UPDATE.instanceId), + /* uid */ + eq(TASK_UPDATE.uid), + /* task_height */ + eq(TASK_UPDATE.taskHeight), + /* task_width */ + eq(TASK_UPDATE.taskWidth), + /* task_x */ + eq(TASK_UPDATE.taskX), + /* task_y */ + eq(TASK_UPDATE.taskY), + /* session_id */ + eq(SESSION_ID)) + } } - private fun verifyOnlyOneTaskUpdateLogging( - taskEvent: Int, - instanceId: Int, - uid: Int, - taskHeight: Int, - taskWidth: Int, - taskX: Int, - taskY: Int, - sessionId: Int, - minimizeReason: Int, - unminimizeReason: Int, - visibleTaskCount: Int, - focusChangedReason: Int, - ) { - verify({ - FrameworkStatsLog.write( - eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE), - eq(taskEvent), - eq(instanceId), - eq(uid), - eq(taskHeight), - eq(taskWidth), - eq(taskX), - eq(taskY), - eq(sessionId), - eq(minimizeReason), - eq(unminimizeReason), - eq(visibleTaskCount), - eq(focusChangedReason), - ) - }) - verify({ - FrameworkStatsLog.write( - eq(FrameworkStatsLog.DESKTOP_MODE_SESSION_TASK_UPDATE), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - ) - }) - } - - private fun verifyOnlyOneTaskSizeUpdatedLogging( - resizeTrigger: Int, - resizingStage: Int, - inputMethod: Int, - sessionId: Int, - instanceId: Int, - uid: Int, - taskWidth: Int, - taskHeight: Int, - displayArea: Int, - ) { - verify({ - FrameworkStatsLog.write( - eq(FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED), - eq(resizeTrigger), - eq(resizingStage), - eq(inputMethod), - eq(sessionId), - eq(instanceId), - eq(uid), - eq(taskWidth), - eq(taskHeight), - eq(displayArea), - ) - }) - verify({ - FrameworkStatsLog.write( - eq(FrameworkStatsLog.DESKTOP_MODE_TASK_SIZE_UPDATED), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - anyInt(), - ) - }) - } - - private companion object { + companion object { + private const val SESSION_ID = 1 private const val TASK_ID = 1 private const val TASK_UID = 1 private const val TASK_X = 0 private const val TASK_Y = 0 private const val TASK_HEIGHT = 100 private const val TASK_WIDTH = 100 - private const val TASK_COUNT = 1 - private const val DISPLAY_WIDTH = 500 - private const val DISPLAY_HEIGHT = 500 - private const val DISPLAY_AREA = DISPLAY_HEIGHT * DISPLAY_WIDTH - private val TASK_UPDATE = - TaskUpdate( - TASK_ID, - TASK_UID, - TASK_HEIGHT, - TASK_WIDTH, - TASK_X, - TASK_Y, - visibleTaskCount = TASK_COUNT, - ) - - private val TASK_SIZE_UPDATE = - TaskSizeUpdate( - resizeTrigger = ResizeTrigger.UNKNOWN_RESIZE_TRIGGER, - inputMethod = InputMethod.UNKNOWN_INPUT_METHOD, - TASK_ID, - TASK_UID, - TASK_HEIGHT, - TASK_WIDTH, - DISPLAY_AREA, - ) - - private fun createTaskUpdate( - minimizeReason: MinimizeReason? = null, - unminimizeReason: UnminimizeReason? = null, - focusChangesReason: FocusReason? = null, - ) = - TaskUpdate( - TASK_ID, - TASK_UID, - TASK_HEIGHT, - TASK_WIDTH, - TASK_X, - TASK_Y, - minimizeReason, - unminimizeReason, - TASK_COUNT, - focusChangesReason, - ) + private val TASK_UPDATE = TaskUpdate( + TASK_ID, TASK_UID, TASK_HEIGHT, TASK_WIDTH, TASK_X, TASK_Y + ) } -} +} \ No newline at end of file diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserverTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserverTest.kt index 4a5431c79c..fb03f20f93 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserverTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeLoggerTransitionObserverTest.kt @@ -18,11 +18,8 @@ package com.android.wm.shell.desktopmode import android.app.ActivityManager import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM import android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN -import android.graphics.Point -import android.graphics.Rect +import android.content.Context import android.os.IBinder -import android.os.SystemProperties -import android.os.Trace import android.testing.AndroidTestingRunner import android.view.SurfaceControl import android.view.WindowManager.TRANSIT_CHANGE @@ -37,21 +34,13 @@ import android.view.WindowManager.TRANSIT_WAKE import android.window.IWindowContainerToken import android.window.TransitionInfo import android.window.TransitionInfo.Change -import android.window.TransitionInfo.FLAG_MOVED_TO_TOP import android.window.WindowContainerToken import androidx.test.filters.SmallTest -import com.android.dx.mockito.inline.extended.ExtendedMockito +import com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn import com.android.modules.utils.testing.ExtendedMockitoRule -import com.android.wm.shell.ShellTestCase import com.android.wm.shell.common.ShellExecutor import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.EnterReason import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.ExitReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.FocusReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.MinimizeReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.TaskUpdate -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UnminimizeReason -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_TASK_LIMIT_MINIMIZE import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_KEYBOARD_SHORTCUT @@ -60,29 +49,26 @@ import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_ import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_DESKTOP_MODE_KEYBOARD_SHORTCUT import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_DESKTOP_MODE_TASK_DRAG import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN -import com.android.wm.shell.shared.desktopmode.FakeDesktopState +import com.android.wm.shell.shared.DesktopModeStatus import com.android.wm.shell.sysui.ShellInit import com.android.wm.shell.transition.TransitionInfoBuilder import com.android.wm.shell.transition.Transitions -import com.android.wm.shell.transition.Transitions.TRANSIT_MINIMIZE -import java.util.Optional -import kotlin.test.assertFalse -import kotlin.test.assertTrue +import com.google.common.truth.Truth.assertThat import org.junit.Before import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.mockito.ArgumentCaptor -import org.mockito.Mockito.`when` +import org.mockito.Mock +import org.mockito.Mockito +import org.mockito.Mockito.mock +import org.mockito.Mockito.verify import org.mockito.kotlin.any import org.mockito.kotlin.eq -import org.mockito.kotlin.mock import org.mockito.kotlin.never import org.mockito.kotlin.same -import org.mockito.kotlin.spy import org.mockito.kotlin.times -import org.mockito.kotlin.verify -import org.mockito.kotlin.verifyNoMoreInteractions +import org.mockito.kotlin.verifyZeroInteractions /** * Test class for {@link DesktopModeLoggerTransitionObserver} @@ -91,883 +77,561 @@ import org.mockito.kotlin.verifyNoMoreInteractions */ @SmallTest @RunWith(AndroidTestingRunner::class) -class DesktopModeLoggerTransitionObserverTest : ShellTestCase() { +class DesktopModeLoggerTransitionObserverTest { - @JvmField - @Rule - val extendedMockitoRule = - ExtendedMockitoRule.Builder(this) - .mockStatic(SystemProperties::class.java) - .mockStatic(Trace::class.java) - .build()!! + @JvmField + @Rule + val extendedMockitoRule = + ExtendedMockitoRule.Builder(this) + .mockStatic(DesktopModeEventLogger::class.java) + .mockStatic(DesktopModeStatus::class.java) + .build()!! - private val testExecutor = mock<ShellExecutor>() - private val mockShellInit = mock<ShellInit>() - private val transitions = mock<Transitions>() - private val desktopTasksLimiter = mock<DesktopTasksLimiter>() - private val desktopState = FakeDesktopState() + @Mock lateinit var testExecutor: ShellExecutor + @Mock private lateinit var mockShellInit: ShellInit + @Mock private lateinit var transitions: Transitions + @Mock private lateinit var context: Context - private lateinit var transitionObserver: DesktopModeLoggerTransitionObserver - private lateinit var shellInit: ShellInit - private lateinit var desktopModeEventLogger: DesktopModeEventLogger + private lateinit var transitionObserver: DesktopModeLoggerTransitionObserver + private lateinit var shellInit: ShellInit + private lateinit var desktopModeEventLogger: DesktopModeEventLogger - @Before - fun setup() { - desktopState.canEnterDesktopMode = true - shellInit = spy(ShellInit(testExecutor)) - desktopModeEventLogger = mock<DesktopModeEventLogger>() + @Before + fun setup() { + doReturn(true).`when` { DesktopModeStatus.canEnterDesktopMode(any()) } + shellInit = Mockito.spy(ShellInit(testExecutor)) + desktopModeEventLogger = mock(DesktopModeEventLogger::class.java) - transitionObserver = - DesktopModeLoggerTransitionObserver( - mockShellInit, - transitions, - desktopModeEventLogger, - Optional.of(desktopTasksLimiter), - desktopState, - ) - val initRunnableCaptor = ArgumentCaptor.forClass(Runnable::class.java) - verify(mockShellInit) - .addInitCallback(initRunnableCaptor.capture(), same(transitionObserver)) - initRunnableCaptor.value.run() - // verify this initialisation interaction to leave the desktopmodeEventLogger mock in a - // consistent state with no outstanding interactions when test cases start executing. - verify(desktopModeEventLogger).logTaskInfoStateInit() + transitionObserver = + DesktopModeLoggerTransitionObserver( + context, mockShellInit, transitions, desktopModeEventLogger) + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + val initRunnableCaptor = ArgumentCaptor.forClass(Runnable::class.java) + verify(mockShellInit).addInitCallback(initRunnableCaptor.capture(), same(transitionObserver)) + initRunnableCaptor.value.run() + } else { + transitionObserver.onInit() + } + } + + @Test + fun testRegistersObserverAtInit() { + verify(transitions).registerObserver(same(transitionObserver)) + } + + @Test + fun transitOpen_notFreeformWindow_doesNotLogTaskAddedOrSessionEnter() { + val change = createChange(TRANSIT_OPEN, createTaskInfo(1, WINDOWING_MODE_FULLSCREEN)) + val transitionInfo = TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() + + callOnTransitionReady(transitionInfo) + + verify(desktopModeEventLogger, never()).logSessionEnter(any(), any()) + verify(desktopModeEventLogger, never()).logTaskAdded(any(), any()) + } + + @Test + fun transitOpen_logTaskAddedAndEnterReasonAppFreeformIntent() { + val change = createChange(TRANSIT_OPEN, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.APP_FREEFORM_INTENT)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitEndDragToDesktop_logTaskAddedAndEnterReasonAppHandleDrag() { + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + // task change is finalised when drag ends + val transitionInfo = + TransitionInfoBuilder(Transitions.TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, 0) + .addChange(change) + .build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.APP_HANDLE_DRAG)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitEnterDesktopByButtonTap_logTaskAddedAndEnterReasonButtonTap() { + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = + TransitionInfoBuilder(TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON, 0) + .addChange(change) + .build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.APP_HANDLE_MENU_BUTTON)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitEnterDesktopFromAppFromOverview_logTaskAddedAndEnterReasonAppFromOverview() { + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = + TransitionInfoBuilder(TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW, 0) + .addChange(change) + .build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.APP_FROM_OVERVIEW)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitEnterDesktopFromKeyboardShortcut_logTaskAddedAndEnterReasonKeyboardShortcut() { + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = + TransitionInfoBuilder(TRANSIT_ENTER_DESKTOP_FROM_KEYBOARD_SHORTCUT, 0) + .addChange(change) + .build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.KEYBOARD_SHORTCUT_ENTER)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitToFront_logTaskAddedAndEnterReasonOverview() { + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = TransitionInfoBuilder(TRANSIT_TO_FRONT, 0).addChange(change).build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.OVERVIEW)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitToFront_previousTransitionExitToOverview_logTaskAddedAndEnterReasonOverview() { + // previous exit to overview transition + val previousSessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(previousSessionId) + val previousChange = createChange(TRANSIT_TO_BACK, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val previousTransitionInfo = + TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS) + .addChange(previousChange) + .build() + + callOnTransitionReady(previousTransitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(previousSessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(previousSessionId), eq(ExitReason.RETURN_HOME_OR_OVERVIEW)) + + // Enter desktop mode from cancelled recents has no transition. Enter is detected on the + // next transition involving freeform windows + + // TRANSIT_TO_FRONT + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = TransitionInfoBuilder(TRANSIT_TO_FRONT, 0).addChange(change).build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.OVERVIEW)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitChange_previousTransitionExitToOverview_logTaskAddedAndEnterReasonOverview() { + // previous exit to overview transition + val previousSessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(previousSessionId) + val previousChange = createChange(TRANSIT_TO_BACK, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val previousTransitionInfo = + TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS) + .addChange(previousChange) + .build() + + callOnTransitionReady(previousTransitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(previousSessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(previousSessionId), eq(ExitReason.RETURN_HOME_OR_OVERVIEW)) + + // Enter desktop mode from cancelled recents has no transition. Enter is detected on the + // next transition involving freeform windows + + // TRANSIT_CHANGE + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = TransitionInfoBuilder(TRANSIT_CHANGE, 0).addChange(change).build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.OVERVIEW)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitOpen_previousTransitionExitToOverview_logTaskAddedAndEnterReasonOverview() { + // previous exit to overview transition + val previousSessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(previousSessionId) + val previousChange = createChange(TRANSIT_TO_BACK, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val previousTransitionInfo = + TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS) + .addChange(previousChange) + .build() + + callOnTransitionReady(previousTransitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(previousSessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(previousSessionId), eq(ExitReason.RETURN_HOME_OR_OVERVIEW)) + + // Enter desktop mode from cancelled recents has no transition. Enter is detected on the + // next transition involving freeform windows + + // TRANSIT_OPEN + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.OVERVIEW)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + @Suppress("ktlint:standard:max-line-length") + fun transitEnterDesktopFromAppFromOverview_previousTransitionExitToOverview_logTaskAddedAndEnterReasonAppFromOverview() { + // Tests for AppFromOverview precedence in compared to cancelled Overview + + // previous exit to overview transition + val previousSessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(previousSessionId) + val previousChange = createChange(TRANSIT_TO_BACK, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val previousTransitionInfo = + TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS) + .addChange(previousChange) + .build() + + callOnTransitionReady(previousTransitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(previousSessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(previousSessionId), eq(ExitReason.RETURN_HOME_OR_OVERVIEW)) + + // TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = + TransitionInfoBuilder(TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW, 0) + .addChange(change) + .build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.APP_FROM_OVERVIEW)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitEnterDesktopFromUnknown_logTaskAddedAndEnterReasonUnknown() { + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = + TransitionInfoBuilder(TRANSIT_ENTER_DESKTOP_FROM_UNKNOWN, 0).addChange(change).build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.UNKNOWN_ENTER)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitWake_logTaskAddedAndEnterReasonScreenOn() { + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = TransitionInfoBuilder(TRANSIT_WAKE, 0).addChange(change).build() + + callOnTransitionReady(transitionInfo) + val sessionId = transitionObserver.getLoggerSessionId() + + assertThat(sessionId).isNotNull() + verify(desktopModeEventLogger, times(1)) + .logSessionEnter(eq(sessionId!!), eq(EnterReason.SCREEN_ON)) + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verifyZeroInteractions(desktopModeEventLogger) + } + + @Test + fun transitSleep_logTaskAddedAndExitReasonScreenOff_sessionIdNull() { + val sessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(sessionId) + + val transitionInfo = TransitionInfoBuilder(TRANSIT_SLEEP).build() + callOnTransitionReady(transitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(sessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(sessionId), eq(ExitReason.SCREEN_OFF)) + verifyZeroInteractions(desktopModeEventLogger) + assertThat(transitionObserver.getLoggerSessionId()).isNull() + } + + @Test + fun transitExitDesktopTaskDrag_logTaskRemovedAndExitReasonDragToExit_sessionIdNull() { + val sessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(sessionId) + + // window mode changing from FREEFORM to FULLSCREEN + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FULLSCREEN)) + val transitionInfo = + TransitionInfoBuilder(TRANSIT_EXIT_DESKTOP_MODE_TASK_DRAG).addChange(change).build() + callOnTransitionReady(transitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(sessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(sessionId), eq(ExitReason.DRAG_TO_EXIT)) + verifyZeroInteractions(desktopModeEventLogger) + assertThat(transitionObserver.getLoggerSessionId()).isNull() + } + + @Test + fun transitExitDesktopAppHandleButton_logTaskRemovedAndExitReasonButton_sessionIdNull() { + val sessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(sessionId) + + // window mode changing from FREEFORM to FULLSCREEN + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FULLSCREEN)) + val transitionInfo = + TransitionInfoBuilder(TRANSIT_EXIT_DESKTOP_MODE_HANDLE_MENU_BUTTON) + .addChange(change) + .build() + callOnTransitionReady(transitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(sessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(sessionId), eq(ExitReason.APP_HANDLE_MENU_BUTTON_EXIT)) + verifyZeroInteractions(desktopModeEventLogger) + assertThat(transitionObserver.getLoggerSessionId()).isNull() + } + + @Test + fun transitExitDesktopUsingKeyboard_logTaskRemovedAndExitReasonKeyboard_sessionIdNull() { + val sessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(sessionId) + + // window mode changing from FREEFORM to FULLSCREEN + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FULLSCREEN)) + val transitionInfo = + TransitionInfoBuilder(TRANSIT_EXIT_DESKTOP_MODE_KEYBOARD_SHORTCUT).addChange(change).build() + callOnTransitionReady(transitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(sessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(sessionId), eq(ExitReason.KEYBOARD_SHORTCUT_EXIT)) + verifyZeroInteractions(desktopModeEventLogger) + assertThat(transitionObserver.getLoggerSessionId()).isNull() + } + + @Test + fun transitExitDesktopUnknown_logTaskRemovedAndExitReasonUnknown_sessionIdNull() { + val sessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(sessionId) + + // window mode changing from FREEFORM to FULLSCREEN + val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(1, WINDOWING_MODE_FULLSCREEN)) + val transitionInfo = + TransitionInfoBuilder(TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN).addChange(change).build() + callOnTransitionReady(transitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(sessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(sessionId), eq(ExitReason.UNKNOWN_EXIT)) + verifyZeroInteractions(desktopModeEventLogger) + assertThat(transitionObserver.getLoggerSessionId()).isNull() + } + + @Test + fun transitToFrontWithFlagRecents_logTaskRemovedAndExitReasonOverview_sessionIdNull() { + val sessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(sessionId) + + // recents transition + val change = createChange(TRANSIT_TO_BACK, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo = + TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS).addChange(change).build() + callOnTransitionReady(transitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(sessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(sessionId), eq(ExitReason.RETURN_HOME_OR_OVERVIEW)) + verifyZeroInteractions(desktopModeEventLogger) + assertThat(transitionObserver.getLoggerSessionId()).isNull() + } + + @Test + fun transitClose_logTaskRemovedAndExitReasonTaskFinished_sessionIdNull() { + val sessionId = 1 + // add a freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(sessionId) + + // task closing + val change = createChange(TRANSIT_CLOSE, createTaskInfo(1, WINDOWING_MODE_FULLSCREEN)) + val transitionInfo = TransitionInfoBuilder(TRANSIT_CLOSE).addChange(change).build() + callOnTransitionReady(transitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(sessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(sessionId), eq(ExitReason.TASK_FINISHED)) + verifyZeroInteractions(desktopModeEventLogger) + assertThat(transitionObserver.getLoggerSessionId()).isNull() + } + + @Test + fun sessionExitByRecents_cancelledAnimation_sessionRestored() { + val sessionId = 1 + // add a freeform task to an existing session + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(sessionId) + + // recents transition sent freeform window to back + val change = createChange(TRANSIT_TO_BACK, createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + val transitionInfo1 = + TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS).addChange(change).build() + callOnTransitionReady(transitionInfo1) + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(sessionId), any()) + verify(desktopModeEventLogger, times(1)) + .logSessionExit(eq(sessionId), eq(ExitReason.RETURN_HOME_OR_OVERVIEW)) + assertThat(transitionObserver.getLoggerSessionId()).isNull() + + val transitionInfo2 = TransitionInfoBuilder(TRANSIT_NONE).build() + callOnTransitionReady(transitionInfo2) + + verify(desktopModeEventLogger, times(1)).logSessionEnter(any(), any()) + verify(desktopModeEventLogger, times(1)).logTaskAdded(any(), any()) + } + + @Test + fun sessionAlreadyStarted_newFreeformTaskAdded_logsTaskAdded() { + val sessionId = 1 + // add an existing freeform task + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(sessionId) + + // new freeform task added + val change = createChange(TRANSIT_OPEN, createTaskInfo(2, WINDOWING_MODE_FREEFORM)) + val transitionInfo = TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() + callOnTransitionReady(transitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(sessionId), any()) + verify(desktopModeEventLogger, never()).logSessionEnter(any(), any()) + } + + @Test + fun sessionAlreadyStarted_freeformTaskRemoved_logsTaskRemoved() { + val sessionId = 1 + // add two existing freeform tasks + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(1, WINDOWING_MODE_FREEFORM)) + transitionObserver.addTaskInfosToCachedMap(createTaskInfo(2, WINDOWING_MODE_FREEFORM)) + transitionObserver.setLoggerSessionId(sessionId) + + // new freeform task added + val change = createChange(TRANSIT_CLOSE, createTaskInfo(2, WINDOWING_MODE_FREEFORM)) + val transitionInfo = TransitionInfoBuilder(TRANSIT_CLOSE, 0).addChange(change).build() + callOnTransitionReady(transitionInfo) + + verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(sessionId), any()) + verify(desktopModeEventLogger, never()).logSessionExit(any(), any()) + } + + /** Simulate calling the onTransitionReady() method */ + private fun callOnTransitionReady(transitionInfo: TransitionInfo) { + val transition = mock(IBinder::class.java) + val startT = mock(SurfaceControl.Transaction::class.java) + val finishT = mock(SurfaceControl.Transaction::class.java) + + transitionObserver.onTransitionReady(transition, transitionInfo, startT, finishT) + } + + companion object { + fun createTaskInfo(taskId: Int, windowMode: Int): ActivityManager.RunningTaskInfo { + val taskInfo = ActivityManager.RunningTaskInfo() + taskInfo.taskId = taskId + taskInfo.configuration.windowConfiguration.windowingMode = windowMode + + return taskInfo } - @Test - fun testInitialiseVisibleTasksSystemProperty() { - ExtendedMockito.verify { - SystemProperties.set( - eq(DesktopModeLoggerTransitionObserver.VISIBLE_TASKS_COUNTER_SYSTEM_PROPERTY), - eq( - DesktopModeLoggerTransitionObserver - .VISIBLE_TASKS_COUNTER_SYSTEM_PROPERTY_DEFAULT_VALUE - ), - ) - } - } - - @Test - fun testRegistersObserverAtInit() { - verify(transitions).registerObserver(same(transitionObserver)) - } - - @Test - fun transitOpen_notFreeformWindow_doesNotLogTaskAddedOrSessionEnter() { - val change = createChange(TRANSIT_OPEN, createTaskInfo(WINDOWING_MODE_FULLSCREEN)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() - - callOnTransitionReady(transitionInfo) - - verify(desktopModeEventLogger, never()).logSessionEnter(any()) - verify(desktopModeEventLogger, never()).logTaskAdded(any()) - } - - @Test - fun transitOpen_logTaskAddedAndEnterReasonAppFreeformIntent() { - val change = createChange(TRANSIT_OPEN, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.APP_FREEFORM_INTENT, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1, focusReason = FocusReason.UNKNOWN), - ) - } - - @Test - fun transitEndDragToDesktop_logTaskAddedAndEnterReasonAppHandleDrag() { - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - // task change is finalised when drag ends - val transitionInfo = - TransitionInfoBuilder(TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, 0) - .addChange(change) - .build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.APP_HANDLE_DRAG, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitEnterDesktopByButtonTap_logTaskAddedAndEnterReasonButtonTap() { - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON, 0) - .addChange(change) - .build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.APP_HANDLE_MENU_BUTTON, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitEnterDesktopFromAppFromOverview_logTaskAddedAndEnterReasonAppFromOverview() { - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW, 0) - .addChange(change) - .build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.APP_FROM_OVERVIEW, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitEnterDesktopFromKeyboardShortcut_logTaskAddedAndEnterReasonKeyboardShortcut() { - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_ENTER_DESKTOP_FROM_KEYBOARD_SHORTCUT, 0) - .addChange(change) - .build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.KEYBOARD_SHORTCUT_ENTER, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitToFront_logTaskAddedAndEnterReasonOverview() { - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_TO_FRONT, 0).addChange(change).build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.OVERVIEW, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitToFront_previousTransitionExitToOverview_logTaskAddedAndEnterReasonOverview() { - // previous exit to overview transition - // add a freeform task - val previousTaskInfo = createTaskInfo(WINDOWING_MODE_FREEFORM) - transitionObserver.addTaskInfosToCachedMap(previousTaskInfo) - transitionObserver.isSessionActive = true - val previousTransitionInfo = - TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS) - .addChange(createChange(TRANSIT_TO_BACK, previousTaskInfo)) - .build() - - callOnTransitionReady(previousTransitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.RETURN_HOME_OR_OVERVIEW, DEFAULT_TASK_UPDATE) - - // Enter desktop mode from cancelled recents has no transition. Enter is detected on the - // next transition involving freeform windows - - // TRANSIT_TO_FRONT - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_TO_FRONT, 0).addChange(change).build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.OVERVIEW, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitChange_previousTransitionExitToOverview_logTaskAddedAndEnterReasonOverview() { - // previous exit to overview transition - // add a freeform task - val previousTaskInfo = createTaskInfo(WINDOWING_MODE_FREEFORM) - transitionObserver.addTaskInfosToCachedMap(previousTaskInfo) - transitionObserver.isSessionActive = true - val previousTransitionInfo = - TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS) - .addChange(createChange(TRANSIT_TO_BACK, previousTaskInfo)) - .build() - - callOnTransitionReady(previousTransitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.RETURN_HOME_OR_OVERVIEW, DEFAULT_TASK_UPDATE) - - // Enter desktop mode from cancelled recents has no transition. Enter is detected on the - // next transition involving freeform windows - - // TRANSIT_CHANGE - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_CHANGE, 0).addChange(change).build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.OVERVIEW, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitOpen_previousTransitionExitToOverview_logTaskAddedAndEnterReasonOverview() { - // previous exit to overview transition - // add a freeform task - val previousTaskInfo = createTaskInfo(WINDOWING_MODE_FREEFORM) - transitionObserver.addTaskInfosToCachedMap(previousTaskInfo) - transitionObserver.isSessionActive = true - val previousTransitionInfo = - TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS) - .addChange(createChange(TRANSIT_TO_BACK, previousTaskInfo)) - .build() - - callOnTransitionReady(previousTransitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.RETURN_HOME_OR_OVERVIEW, DEFAULT_TASK_UPDATE) - - // Enter desktop mode from cancelled recents has no transition. Enter is detected on the - // next transition involving freeform windows - - // TRANSIT_OPEN - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.OVERVIEW, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - @Suppress("ktlint:standard:max-line-length") - fun transitEnterDesktopFromAppFromOverview_previousTransitionExitToOverview_logTaskAddedAndEnterReasonAppFromOverview() { - // Tests for AppFromOverview precedence in compared to cancelled Overview - - // previous exit to overview transition - // add a freeform task - val previousTaskInfo = createTaskInfo(WINDOWING_MODE_FREEFORM) - transitionObserver.addTaskInfosToCachedMap(previousTaskInfo) - transitionObserver.isSessionActive = true - val previousTransitionInfo = - TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS) - .addChange(createChange(TRANSIT_TO_BACK, previousTaskInfo)) - .build() - - callOnTransitionReady(previousTransitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.RETURN_HOME_OR_OVERVIEW, DEFAULT_TASK_UPDATE) - - // TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW, 0) - .addChange(change) - .build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.APP_FROM_OVERVIEW, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitEnterDesktopFromUnknown_logTaskAddedAndEnterReasonUnknown() { - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_ENTER_DESKTOP_FROM_UNKNOWN, 0).addChange(change).build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.UNKNOWN_ENTER, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitWake_logTaskAddedAndEnterReasonScreenOn() { - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_WAKE, 0).addChange(change).build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.SCREEN_ON, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitBack_previousExitReasonScreenOff_logTaskAddedAndEnterReasonScreenOn() { - val freeformTask = createTaskInfo(WINDOWING_MODE_FREEFORM) - // Previous Exit reason recorded as Screen Off - transitionObserver.addTaskInfosToCachedMap(freeformTask) - transitionObserver.isSessionActive = true - callOnTransitionReady(TransitionInfoBuilder(TRANSIT_SLEEP).build()) - verifyTaskRemovedAndExitLogging(ExitReason.SCREEN_OFF, DEFAULT_TASK_UPDATE) - // Enter desktop through back transition, this happens when user enters after dismissing - // keyguard - val change = createChange(TRANSIT_TO_FRONT, freeformTask) - val transitionInfo = TransitionInfoBuilder(TRANSIT_TO_BACK, 0).addChange(change).build() - - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.SCREEN_ON, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitEndDragToDesktop_previousExitReasonScreenOff_logTaskAddedAndEnterReasonAppDrag() { - val freeformTask = createTaskInfo(WINDOWING_MODE_FREEFORM) - // Previous Exit reason recorded as Screen Off - transitionObserver.addTaskInfosToCachedMap(freeformTask) - transitionObserver.isSessionActive = true - callOnTransitionReady(TransitionInfoBuilder(TRANSIT_SLEEP).build()) - verifyTaskRemovedAndExitLogging(ExitReason.SCREEN_OFF, DEFAULT_TASK_UPDATE) - - // Enter desktop through app handle drag. This represents cases where instead of moving to - // desktop right after turning the screen on, we move to fullscreen then move another task - // to desktop - val transitionInfo = - TransitionInfoBuilder(TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, 0) - .addChange(createChange(TRANSIT_TO_FRONT, freeformTask)) - .build() - callOnTransitionReady(transitionInfo) - - verifyTaskAddedAndEnterLogging( - EnterReason.APP_HANDLE_DRAG, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun transitSleep_logTaskRemovedAndExitReasonScreenOff() { - // add a freeform task - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.isSessionActive = true - - val transitionInfo = TransitionInfoBuilder(TRANSIT_SLEEP).build() - callOnTransitionReady(transitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.SCREEN_OFF, DEFAULT_TASK_UPDATE) - } - - @Test - fun transitExitDesktopTaskDrag_logTaskRemovedAndExitReasonDragToExit() { - // add a freeform task - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.isSessionActive = true - - // window mode changing from FREEFORM to FULLSCREEN - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FULLSCREEN)) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_EXIT_DESKTOP_MODE_TASK_DRAG).addChange(change).build() - callOnTransitionReady(transitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.DRAG_TO_EXIT, DEFAULT_TASK_UPDATE) - } - - @Test - fun transitExitDesktopAppHandleButton_logTaskRemovedAndExitReasonButton() { - // add a freeform task - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.isSessionActive = true - - // window mode changing from FREEFORM to FULLSCREEN - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FULLSCREEN)) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_EXIT_DESKTOP_MODE_HANDLE_MENU_BUTTON) - .addChange(change) - .build() - callOnTransitionReady(transitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.APP_HANDLE_MENU_BUTTON_EXIT, DEFAULT_TASK_UPDATE) - } - - @Test - fun transitExitDesktopUsingKeyboard_logTaskRemovedAndExitReasonKeyboard() { - // add a freeform task - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.isSessionActive = true - - // window mode changing from FREEFORM to FULLSCREEN - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FULLSCREEN)) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_EXIT_DESKTOP_MODE_KEYBOARD_SHORTCUT) - .addChange(change) - .build() - callOnTransitionReady(transitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.KEYBOARD_SHORTCUT_EXIT, DEFAULT_TASK_UPDATE) - } - - @Test - fun transitExitBackGesture_logTaskRemovedAndExitReasonTaskMovedToBack() { - // add a freeform task - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.isSessionActive = true - - // task moved to back - val change = createChange(TRANSIT_TO_BACK, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_TO_BACK).addChange(change).build() - callOnTransitionReady(transitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.TASK_MOVED_TO_BACK, DEFAULT_TASK_UPDATE) - } - - @Test - fun transitExitDesktopUnknown_logTaskRemovedAndExitReasonUnknown() { - // add a freeform task - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.isSessionActive = true - - // window mode changing from FREEFORM to FULLSCREEN - val change = createChange(TRANSIT_TO_FRONT, createTaskInfo(WINDOWING_MODE_FULLSCREEN)) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN).addChange(change).build() - callOnTransitionReady(transitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.UNKNOWN_EXIT, DEFAULT_TASK_UPDATE) - } - - @Test - fun transitToFrontWithFlagRecents_logTaskRemovedAndExitReasonOverview() { - // add a freeform task - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.isSessionActive = true - - // recents transition - val change = createChange(TRANSIT_TO_BACK, createTaskInfo(WINDOWING_MODE_FREEFORM)) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS) - .addChange(change) - .build() - callOnTransitionReady(transitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.RETURN_HOME_OR_OVERVIEW, DEFAULT_TASK_UPDATE) - } - - @Test - fun transitClose_logTaskRemovedAndExitReasonTaskFinished() { - // add a freeform task - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.isSessionActive = true - - // task closing - val change = createChange(TRANSIT_CLOSE, createTaskInfo(WINDOWING_MODE_FULLSCREEN)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_CLOSE).addChange(change).build() - callOnTransitionReady(transitionInfo) - - verifyTaskRemovedAndExitLogging(ExitReason.TASK_FINISHED, DEFAULT_TASK_UPDATE) - } - - @Test - fun transitMinimize_logExitReasongMinimized() { - // add a freeform task - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.isSessionActive = true - - // minimize the task - val change = createChange(TRANSIT_MINIMIZE, createTaskInfo(WINDOWING_MODE_FULLSCREEN)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_MINIMIZE).addChange(change).build() - callOnTransitionReady(transitionInfo) - - assertFalse(transitionObserver.isSessionActive) - verify(desktopModeEventLogger, times(1)).logSessionExit(eq(ExitReason.TASK_MINIMIZED)) - verify(desktopModeEventLogger, times(1)) - .logTaskRemoved( - eq(DEFAULT_TASK_UPDATE.copy(minimizeReason = MinimizeReason.MINIMIZE_BUTTON)) - ) - verifyNoMoreInteractions(desktopModeEventLogger) - } - - @Test - fun sessionExitByRecents_cancelledAnimation_sessionRestored() { - // add a freeform task to an existing session - val taskInfo = createTaskInfo(WINDOWING_MODE_FREEFORM) - transitionObserver.addTaskInfosToCachedMap(taskInfo) - transitionObserver.isSessionActive = true - - // recents transition sent freeform window to back - val change = createChange(TRANSIT_TO_BACK, taskInfo) - val transitionInfo1 = - TransitionInfoBuilder(TRANSIT_TO_FRONT, TRANSIT_FLAG_IS_RECENTS) - .addChange(change) - .build() - callOnTransitionReady(transitionInfo1) - - verifyTaskRemovedAndExitLogging(ExitReason.RETURN_HOME_OR_OVERVIEW, DEFAULT_TASK_UPDATE) - - val transitionInfo2 = TransitionInfoBuilder(TRANSIT_NONE).build() - callOnTransitionReady(transitionInfo2) - - verifyTaskAddedAndEnterLogging( - EnterReason.OVERVIEW, - DEFAULT_TASK_UPDATE.copy(visibleTaskCount = 1), - ) - } - - @Test - fun sessionAlreadyStarted_newFreeformTaskAdded_logsTaskAdded() { - // add an existing freeform task - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.isSessionActive = true - - // new freeform task added - val change = createChange(TRANSIT_OPEN, createTaskInfo(WINDOWING_MODE_FREEFORM, id = 2)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() - callOnTransitionReady(transitionInfo) - - verify(desktopModeEventLogger, times(1)) - .logTaskAdded( - eq( - DEFAULT_TASK_UPDATE.copy( - instanceId = 2, - visibleTaskCount = 2, - focusReason = FocusReason.UNKNOWN, - ) - ) - ) - verify(desktopModeEventLogger, never()).logSessionEnter(any()) - } - - @Test - fun sessionAlreadyStarted_taskPositionChanged_logsTaskUpdate() { - // add an existing freeform task - val taskInfo = createTaskInfo(WINDOWING_MODE_FREEFORM) - transitionObserver.addTaskInfosToCachedMap(taskInfo) - transitionObserver.isSessionActive = true - - // task position changed - val newTaskInfo = createTaskInfo(WINDOWING_MODE_FREEFORM, taskX = DEFAULT_TASK_X + 100) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_CHANGE, 0) - .addChange(createChange(TRANSIT_CHANGE, newTaskInfo)) - .build() - callOnTransitionReady(transitionInfo) - - verify(desktopModeEventLogger, times(1)) - .logTaskInfoChanged( - eq(DEFAULT_TASK_UPDATE.copy(taskX = DEFAULT_TASK_X + 100, visibleTaskCount = 1)) - ) - verifyNoMoreInteractions(desktopModeEventLogger) - } - - @Test - fun sessionAlreadyStarted_taskResized_logsTaskUpdate() { - // add an existing freeform task - val taskInfo = createTaskInfo(WINDOWING_MODE_FREEFORM) - transitionObserver.addTaskInfosToCachedMap(taskInfo) - transitionObserver.isSessionActive = true - - // task resized - val newTaskInfo = - createTaskInfo( - WINDOWING_MODE_FREEFORM, - taskWidth = DEFAULT_TASK_WIDTH + 100, - taskHeight = DEFAULT_TASK_HEIGHT - 100, - ) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_CHANGE, 0) - .addChange(createChange(TRANSIT_CHANGE, newTaskInfo)) - .build() - callOnTransitionReady(transitionInfo) - - verify(desktopModeEventLogger, times(1)) - .logTaskInfoChanged( - eq( - DEFAULT_TASK_UPDATE.copy( - taskWidth = DEFAULT_TASK_WIDTH + 100, - taskHeight = DEFAULT_TASK_HEIGHT - 100, - visibleTaskCount = 1, - ) - ) - ) - verifyNoMoreInteractions(desktopModeEventLogger) - } - - @Test - fun sessionAlreadyStarted_taskFocusChanged_logsTaskUpdate() { - val taskInfo1 = createTaskInfo(WINDOWING_MODE_FREEFORM, id = 1) - val taskInfo2 = createTaskInfo(WINDOWING_MODE_FREEFORM, id = 2) - transitionObserver.addTaskInfosToCachedMap(taskInfo1) - transitionObserver.addTaskInfosToCachedMap(taskInfo2) - transitionObserver.isSessionActive = true - transitionObserver.setFocusedTaskForTesting(taskInfo1) - - val task2FocusedChange = createChange(TRANSIT_CHANGE, taskInfo2) - task2FocusedChange.flags = FLAG_MOVED_TO_TOP - val transitionInfo = - TransitionInfoBuilder(TRANSIT_CHANGE, 0).addChange(task2FocusedChange).build() - callOnTransitionReady(transitionInfo) - - verify(desktopModeEventLogger, times(1)) - .logTaskInfoChanged( - eq( - DEFAULT_TASK_UPDATE.copy( - instanceId = 2, - visibleTaskCount = 2, - focusReason = FocusReason.UNKNOWN, - ) - ) - ) - verifyNoMoreInteractions(desktopModeEventLogger) - } - - @Test - fun sessionAlreadyStarted_multipleTasksUpdated_logsTaskUpdateForCorrectTask() { - // add 2 existing freeform task - val taskInfo1 = createTaskInfo(WINDOWING_MODE_FREEFORM) - val taskInfo2 = createTaskInfo(WINDOWING_MODE_FREEFORM, id = 2) - transitionObserver.addTaskInfosToCachedMap(taskInfo1) - transitionObserver.addTaskInfosToCachedMap(taskInfo2) - transitionObserver.isSessionActive = true - - // task 1 position update - val newTaskInfo1 = createTaskInfo(WINDOWING_MODE_FREEFORM, taskX = DEFAULT_TASK_X + 100) - val transitionInfo1 = - TransitionInfoBuilder(TRANSIT_CHANGE, 0) - .addChange(createChange(TRANSIT_CHANGE, newTaskInfo1)) - .build() - callOnTransitionReady(transitionInfo1) - - verify(desktopModeEventLogger, times(1)) - .logTaskInfoChanged( - eq(DEFAULT_TASK_UPDATE.copy(taskX = DEFAULT_TASK_X + 100, visibleTaskCount = 2)) - ) - verifyNoMoreInteractions(desktopModeEventLogger) - - // task 2 resize - val newTaskInfo2 = - createTaskInfo( - WINDOWING_MODE_FREEFORM, - id = 2, - taskWidth = DEFAULT_TASK_WIDTH + 100, - taskHeight = DEFAULT_TASK_HEIGHT - 100, - ) - val transitionInfo2 = - TransitionInfoBuilder(TRANSIT_CHANGE, 0) - .addChange(createChange(TRANSIT_CHANGE, newTaskInfo2)) - .build() - - callOnTransitionReady(transitionInfo2) - - verify(desktopModeEventLogger, times(1)) - .logTaskInfoChanged( - eq( - DEFAULT_TASK_UPDATE.copy( - instanceId = 2, - taskWidth = DEFAULT_TASK_WIDTH + 100, - taskHeight = DEFAULT_TASK_HEIGHT - 100, - visibleTaskCount = 2, - ) - ) - ) - verifyNoMoreInteractions(desktopModeEventLogger) - } - - @Test - fun sessionAlreadyStarted_freeformTaskRemoved_logsTaskRemoved() { - // add two existing freeform tasks - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM)) - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM, id = 2)) - transitionObserver.isSessionActive = true - - // new freeform task closed - val change = createChange(TRANSIT_CLOSE, createTaskInfo(WINDOWING_MODE_FREEFORM, id = 2)) - val transitionInfo = TransitionInfoBuilder(TRANSIT_CLOSE, 0).addChange(change).build() - callOnTransitionReady(transitionInfo) - - verify(desktopModeEventLogger, times(1)) - .logTaskRemoved(eq(DEFAULT_TASK_UPDATE.copy(instanceId = 2, visibleTaskCount = 1))) - verify(desktopModeEventLogger, never()).logSessionExit(any()) - } - - @Test - fun onTransitionReady_taskIsBeingMinimized_logsTaskMinimized() { - transitionObserver.isSessionActive = true - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM, id = 1)) - val taskInfo2 = createTaskInfo(WINDOWING_MODE_FREEFORM, id = 2) - transitionObserver.addTaskInfosToCachedMap(taskInfo2) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_TO_BACK, 0) - .addChange(createChange(TRANSIT_TO_BACK, taskInfo2)) - .build() - `when`(desktopTasksLimiter.getMinimizingTask(any())) - .thenReturn( - DesktopTasksLimiter.TaskDetails( - taskInfo2.displayId, - taskInfo2.taskId, - minimizeReason = MinimizeReason.TASK_LIMIT, - ) - ) - - callOnTransitionReady(transitionInfo) - - verify(desktopModeEventLogger, times(1)) - .logTaskRemoved( - eq( - DEFAULT_TASK_UPDATE.copy( - instanceId = 2, - visibleTaskCount = 1, - minimizeReason = MinimizeReason.TASK_LIMIT, - ) - ) - ) - } - - @Test - fun onTransitionReady_taskIsBeingUnminimized_logsTaskUnminimized() { - transitionObserver.isSessionActive = true - transitionObserver.addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM, id = 1)) - val taskInfo2 = createTaskInfo(WINDOWING_MODE_FREEFORM, id = 2) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_TO_FRONT, /* flags= */ 0) - .addChange(createChange(TRANSIT_TO_FRONT, taskInfo2)) - .build() - `when`(desktopTasksLimiter.getUnminimizingTask(any())) - .thenReturn( - DesktopTasksLimiter.TaskDetails( - taskInfo2.displayId, - taskInfo2.taskId, - unminimizeReason = UnminimizeReason.TASKBAR_MANAGE_WINDOW, - ) - ) - - callOnTransitionReady(transitionInfo) - - verify(desktopModeEventLogger, times(1)) - .logTaskAdded( - eq( - DEFAULT_TASK_UPDATE.copy( - instanceId = 2, - visibleTaskCount = 2, - unminimizeReason = UnminimizeReason.TASKBAR_MANAGE_WINDOW, - ) - ) - ) - } - - @Test - fun onTransitionReady_taskLimitMinimizeTransitionType_logsTaskMinimized() { - val taskInfo2 = createTaskInfo(WINDOWING_MODE_FREEFORM, id = 2) - transitionObserver.apply { - isSessionActive = true - addTaskInfosToCachedMap(createTaskInfo(WINDOWING_MODE_FREEFORM, id = 1)) - addTaskInfosToCachedMap(taskInfo2) - } - val transitionInfo = - TransitionInfoBuilder(TRANSIT_DESKTOP_MODE_TASK_LIMIT_MINIMIZE, /* flags= */ 0) - .addChange(createChange(TRANSIT_TO_BACK, taskInfo2)) - .build() - - callOnTransitionReady(transitionInfo) - - verify(desktopModeEventLogger, times(1)) - .logTaskRemoved( - eq( - DEFAULT_TASK_UPDATE.copy( - instanceId = 2, - visibleTaskCount = 1, - minimizeReason = MinimizeReason.TASK_LIMIT, - ) - ) - ) - } - - /** Simulate calling the onTransitionReady() method */ - private fun callOnTransitionReady(transitionInfo: TransitionInfo) { - val transition = mock<IBinder>() - val startT = mock<SurfaceControl.Transaction>() - val finishT = mock<SurfaceControl.Transaction>() - - transitionObserver.onTransitionReady(transition, transitionInfo, startT, finishT) - } - - private fun verifyTaskAddedAndEnterLogging(enterReason: EnterReason, taskUpdate: TaskUpdate) { - assertTrue(transitionObserver.isSessionActive) - verify(desktopModeEventLogger, times(1)).logSessionEnter(eq(enterReason)) - verify(desktopModeEventLogger, times(1)).logTaskAdded(eq(taskUpdate)) - ExtendedMockito.verify { - Trace.setCounter( - eq(Trace.TRACE_TAG_WINDOW_MANAGER), - eq(DesktopModeLoggerTransitionObserver.VISIBLE_TASKS_COUNTER_NAME), - eq(taskUpdate.visibleTaskCount.toLong()), - ) - } - ExtendedMockito.verify { - SystemProperties.set( - eq(DesktopModeLoggerTransitionObserver.VISIBLE_TASKS_COUNTER_SYSTEM_PROPERTY), - eq(taskUpdate.visibleTaskCount.toString()), - ) - } - verifyNoMoreInteractions(desktopModeEventLogger) - } - - private fun verifyTaskRemovedAndExitLogging(exitReason: ExitReason, taskUpdate: TaskUpdate) { - assertFalse(transitionObserver.isSessionActive) - verify(desktopModeEventLogger, times(1)).logTaskRemoved(eq(taskUpdate)) - verify(desktopModeEventLogger, times(1)).logSessionExit(eq(exitReason)) - verifyNoMoreInteractions(desktopModeEventLogger) - } - - private companion object { - const val DEFAULT_TASK_ID = 1 - const val DEFAULT_TASK_UID = 2 - const val DEFAULT_TASK_HEIGHT = 100 - const val DEFAULT_TASK_WIDTH = 200 - const val DEFAULT_TASK_X = 30 - const val DEFAULT_TASK_Y = 70 - const val DEFAULT_VISIBLE_TASK_COUNT = 0 - val DEFAULT_TASK_UPDATE = - TaskUpdate( - DEFAULT_TASK_ID, - DEFAULT_TASK_UID, - DEFAULT_TASK_HEIGHT, - DEFAULT_TASK_WIDTH, - DEFAULT_TASK_X, - DEFAULT_TASK_Y, - visibleTaskCount = DEFAULT_VISIBLE_TASK_COUNT, - ) - - fun createTaskInfo( - windowMode: Int, - id: Int = DEFAULT_TASK_ID, - uid: Int = DEFAULT_TASK_UID, - taskHeight: Int = DEFAULT_TASK_HEIGHT, - taskWidth: Int = DEFAULT_TASK_WIDTH, - taskX: Int = DEFAULT_TASK_X, - taskY: Int = DEFAULT_TASK_Y, - ) = - ActivityManager.RunningTaskInfo().apply { - taskId = id - effectiveUid = uid - configuration.windowConfiguration.apply { - windowingMode = windowMode - positionInParent = Point(taskX, taskY) - bounds.set(Rect(taskX, taskY, taskX + taskWidth, taskY + taskHeight)) - } - } - - fun createChange(mode: Int, taskInfo: ActivityManager.RunningTaskInfo): Change { - val change = - Change(WindowContainerToken(mock<IWindowContainerToken>()), mock<SurfaceControl>()) - change.mode = mode - change.taskInfo = taskInfo - return change - } + fun createChange(mode: Int, taskInfo: ActivityManager.RunningTaskInfo): Change { + val change = + Change( + WindowContainerToken(mock(IWindowContainerToken::class.java)), + mock(SurfaceControl::class.java)) + change.mode = mode + change.taskInfo = taskInfo + return change } + } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeTransitionTypesTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeTransitionTypesTest.kt index f6eed5da6c..3a04ddbba0 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeTransitionTypesTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeTransitionTypesTest.kt @@ -18,21 +18,21 @@ package com.android.wm.shell.desktopmode import android.testing.AndroidTestingRunner import androidx.test.filters.SmallTest -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_KEYBOARD_SHORTCUT -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_UNKNOWN +import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON +import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.APP_FROM_OVERVIEW +import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.KEYBOARD_SHORTCUT +import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.TASK_DRAG +import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.UNKNOWN import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_DESKTOP_MODE_HANDLE_MENU_BUTTON import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_DESKTOP_MODE_KEYBOARD_SHORTCUT import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_DESKTOP_MODE_TASK_DRAG import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN +import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW +import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON +import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_KEYBOARD_SHORTCUT +import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_ENTER_DESKTOP_FROM_UNKNOWN import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.getEnterTransitionType import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.getExitTransitionType -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.APP_FROM_OVERVIEW -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.KEYBOARD_SHORTCUT -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.TASK_DRAG -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.UNKNOWN import com.google.common.truth.Truth.assertThat import org.junit.Test import org.junit.runner.RunWith @@ -53,7 +53,8 @@ class DesktopModeTransitionTypesTest { .isEqualTo(TRANSIT_ENTER_DESKTOP_FROM_APP_HANDLE_MENU_BUTTON) assertThat(APP_FROM_OVERVIEW.getEnterTransitionType()) .isEqualTo(TRANSIT_ENTER_DESKTOP_FROM_APP_FROM_OVERVIEW) - assertThat(TASK_DRAG.getEnterTransitionType()).isEqualTo(TRANSIT_ENTER_DESKTOP_FROM_UNKNOWN) + assertThat(TASK_DRAG.getEnterTransitionType()) + .isEqualTo(TRANSIT_ENTER_DESKTOP_FROM_UNKNOWN) assertThat(KEYBOARD_SHORTCUT.getEnterTransitionType()) .isEqualTo(TRANSIT_ENTER_DESKTOP_FROM_KEYBOARD_SHORTCUT) } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeUiEventLoggerTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeUiEventLoggerTest.kt index 72b1fd9af1..51b291c0b7 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeUiEventLoggerTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeUiEventLoggerTest.kt @@ -16,22 +16,18 @@ package com.android.wm.shell.desktopmode -import android.content.ComponentName -import android.content.pm.ApplicationInfo -import android.content.pm.PackageManager + import android.testing.AndroidTestingRunner import androidx.test.filters.SmallTest import com.android.internal.logging.InstanceId +import com.android.internal.logging.InstanceIdSequence import com.android.internal.logging.testing.UiEventLoggerFake import com.android.wm.shell.ShellTestCase -import com.android.wm.shell.TestRunningTaskInfoBuilder -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.DesktopUiEventEnum.DESKTOP_WINDOW_EDGE_DRAG_RESIZE +import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger.Companion.DesktopUiEventEnum.DESKTOP_WINDOW_EDGE_DRAG_RESIZE import com.google.common.truth.Truth.assertThat import org.junit.Before import org.junit.Test import org.junit.runner.RunWith -import org.mockito.kotlin.mock -import org.mockito.kotlin.whenever /** * Test class for [DesktopModeUiEventLogger] @@ -43,13 +39,13 @@ import org.mockito.kotlin.whenever class DesktopModeUiEventLoggerTest : ShellTestCase() { private lateinit var uiEventLoggerFake: UiEventLoggerFake private lateinit var logger: DesktopModeUiEventLogger + private val instanceIdSequence = InstanceIdSequence(/* instanceIdMax */ 1 shl 20) - private val mockPackageManager: PackageManager = mock<PackageManager>() @Before fun setUp() { uiEventLoggerFake = UiEventLoggerFake() - logger = DesktopModeUiEventLogger(uiEventLoggerFake, mockPackageManager) + logger = DesktopModeUiEventLogger(uiEventLoggerFake, instanceIdSequence) } @Test @@ -66,7 +62,8 @@ class DesktopModeUiEventLoggerTest : ShellTestCase() { @Test fun log_eventLogged() { - val event = DESKTOP_WINDOW_EDGE_DRAG_RESIZE + val event = + DESKTOP_WINDOW_EDGE_DRAG_RESIZE logger.log(UID, PACKAGE_NAME, event) assertThat(uiEventLoggerFake.numLogs()).isEqualTo(1) assertThat(uiEventLoggerFake.eventId(0)).isEqualTo(event.id) @@ -95,7 +92,8 @@ class DesktopModeUiEventLoggerTest : ShellTestCase() { @Test fun logWithInstanceId_eventLogged() { - val event = DESKTOP_WINDOW_EDGE_DRAG_RESIZE + val event = + DESKTOP_WINDOW_EDGE_DRAG_RESIZE logger.logWithInstanceId(INSTANCE_ID, UID, PACKAGE_NAME, event) assertThat(uiEventLoggerFake.numLogs()).isEqualTo(1) assertThat(uiEventLoggerFake.eventId(0)).isEqualTo(event.id) @@ -104,28 +102,10 @@ class DesktopModeUiEventLoggerTest : ShellTestCase() { assertThat(uiEventLoggerFake[0].packageName).isEqualTo(PACKAGE_NAME) } - @Test - fun logWithTaskInfo_eventLogged() { - val event = DESKTOP_WINDOW_EDGE_DRAG_RESIZE - val taskInfo = - TestRunningTaskInfoBuilder() - .setUserId(USER_ID) - .setBaseActivity(ComponentName(PACKAGE_NAME, "test")) - .build() - whenever(mockPackageManager.getApplicationInfoAsUser(PACKAGE_NAME, /* flags= */ 0, USER_ID)) - .thenReturn(ApplicationInfo().apply { uid = UID }) - logger.log(taskInfo, event) - assertThat(uiEventLoggerFake.numLogs()).isEqualTo(1) - assertThat(uiEventLoggerFake.eventId(0)).isEqualTo(event.id) - assertThat(uiEventLoggerFake[0].instanceId).isNull() - assertThat(uiEventLoggerFake[0].uid).isEqualTo(UID) - assertThat(uiEventLoggerFake[0].packageName).isEqualTo(PACKAGE_NAME) - } companion object { private val INSTANCE_ID = InstanceId.fakeInstanceId(0) private const val UID = 10 - private const val USER_ID = 2 private const val PACKAGE_NAME = "com.foo" } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicatorTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicatorTest.kt index 12cee62a6c..bd39aa6ace 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicatorTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopModeVisualIndicatorTest.kt @@ -16,585 +16,129 @@ package com.android.wm.shell.desktopmode -import android.animation.AnimatorTestRule import android.app.ActivityManager.RunningTaskInfo -import android.graphics.PointF +import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM +import android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN +import android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW import android.graphics.Rect -import android.platform.test.annotations.DisableFlags -import android.platform.test.annotations.EnableFlags +import android.graphics.Region import android.testing.AndroidTestingRunner -import android.testing.TestableLooper.RunWithLooper -import android.view.Display.DEFAULT_DISPLAY import android.view.SurfaceControl import androidx.test.filters.SmallTest -import com.android.internal.policy.SystemBarUtils -import com.android.window.flags.Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG -import com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE -import com.android.window.flags.Flags.FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX import com.android.wm.shell.R import com.android.wm.shell.RootTaskDisplayAreaOrganizer import com.android.wm.shell.ShellTestCase -import com.android.wm.shell.TestShellExecutor import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.DisplayLayout import com.android.wm.shell.common.SyncTransactionQueue -import com.android.wm.shell.shared.R as sharedR -import com.android.wm.shell.shared.bubbles.BubbleDropTargetBoundsProvider -import com.android.wm.shell.windowdecor.tiling.SnapEventHandler import com.google.common.truth.Truth.assertThat import org.junit.Before -import org.junit.Ignore -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.ArgumentMatchers.anyInt import org.mockito.Mock -import org.mockito.kotlin.any -import org.mockito.kotlin.never -import org.mockito.kotlin.verify import org.mockito.kotlin.whenever -/** - * Test class for [DesktopModeVisualIndicator] - * - * Usage: atest WMShellUnitTests:DesktopModeVisualIndicatorTest - */ @SmallTest -@RunWithLooper @RunWith(AndroidTestingRunner::class) -@EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_MODE) -@Ignore("Non-hermetic test - b/419771302") class DesktopModeVisualIndicatorTest : ShellTestCase() { - - @JvmField @Rule val animatorTestRule = AnimatorTestRule(this) - - private lateinit var taskInfo: RunningTaskInfo + @Mock private lateinit var taskInfo: RunningTaskInfo @Mock private lateinit var syncQueue: SyncTransactionQueue @Mock private lateinit var displayController: DisplayController @Mock private lateinit var taskSurface: SurfaceControl @Mock private lateinit var taskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer @Mock private lateinit var displayLayout: DisplayLayout - @Mock private lateinit var bubbleBoundsProvider: BubbleDropTargetBoundsProvider - @Mock private lateinit var snapEventHandler: SnapEventHandler private lateinit var visualIndicator: DesktopModeVisualIndicator - private val desktopExecutor = TestShellExecutor() - private val mainExecutor = TestShellExecutor() @Before fun setUp() { - setUpDisplayBoundsTablet() - whenever(displayController.getDisplayLayout(anyInt())).thenReturn(displayLayout) - whenever(displayController.getDisplay(anyInt())).thenReturn(mContext.display) - whenever(bubbleBoundsProvider.getBubbleBarExpandedViewDropTargetBounds(any())) - .thenReturn(Rect()) - taskInfo = DesktopTestHelpers.createFullscreenTask() - - mContext.orCreateTestableResources.addOverride( - com.android.internal.R.bool.config_isDesktopModeSupported, - true, - ) - mContext.orCreateTestableResources.addOverride( - com.android.internal.R.bool.config_canInternalDisplayHostDesktops, - true, - ) - } - - private fun setUpDisplayBoundsTablet() { - whenever(displayLayout.width()).thenReturn(TABLET_DISPLAY_BOUNDS.width()) - whenever(displayLayout.height()).thenReturn(TABLET_DISPLAY_BOUNDS.height()) - whenever(displayLayout.stableInsets()).thenReturn(TABLET_STABLE_INSETS) - } - - private fun setUpDisplayBoundsFoldable() { - whenever(displayLayout.width()).thenReturn(FOLDABLE_DISPLAY_BOUNDS.width()) - whenever(displayLayout.height()).thenReturn(FOLDABLE_DISPLAY_BOUNDS.height()) - whenever(displayLayout.stableInsets()).thenReturn(FOLDABLE_STABLE_INSETS) - } - - private fun disableDesktop() { - mContext.orCreateTestableResources.addOverride( - com.android.internal.R.bool.config_canInternalDisplayHostDesktops, - false, - ) - } - - private fun setUpFoldable() { - setUpDisplayBoundsFoldable() - disableDesktop() + visualIndicator = DesktopModeVisualIndicator(syncQueue, taskInfo, displayController, + context, taskSurface, taskDisplayAreaOrganizer) + whenever(displayLayout.width()).thenReturn(DISPLAY_BOUNDS.width()) + whenever(displayLayout.height()).thenReturn(DISPLAY_BOUNDS.height()) + whenever(displayLayout.stableInsets()).thenReturn(STABLE_INSETS) } @Test fun testFullscreenRegionCalculation() { - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - var testRegion = visualIndicator.calculateFullscreenRegion(displayLayout, CAPTION_HEIGHT) - assertThat(testRegion.bounds) - .isEqualTo(Rect(0, Short.MIN_VALUE.toInt(), 2400, 2 * TABLET_STABLE_INSETS.top)) - - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FREEFORM) - testRegion = visualIndicator.calculateFullscreenRegion(displayLayout, CAPTION_HEIGHT) - val transitionHeight = SystemBarUtils.getStatusBarHeight(context) - val toFullscreenScale = - mContext.resources.getFloat(R.dimen.desktop_mode_fullscreen_region_scale) - val toFullscreenWidth = displayLayout.width() * toFullscreenScale - assertThat(testRegion.bounds) - .isEqualTo( - Rect( - (TABLET_DISPLAY_BOUNDS.width() / 2f - toFullscreenWidth / 2f).toInt(), - Short.MIN_VALUE.toInt(), - (TABLET_DISPLAY_BOUNDS.width() / 2f + toFullscreenWidth / 2f).toInt(), - transitionHeight, - ) - ) - - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_SPLIT) - testRegion = visualIndicator.calculateFullscreenRegion(displayLayout, CAPTION_HEIGHT) - assertThat(testRegion.bounds) - .isEqualTo(Rect(0, Short.MIN_VALUE.toInt(), 2400, 2 * TABLET_STABLE_INSETS.top)) - - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.DRAGGED_INTENT) - testRegion = visualIndicator.calculateFullscreenRegion(displayLayout, CAPTION_HEIGHT) - assertThat(testRegion.bounds) - .isEqualTo(Rect(0, Short.MIN_VALUE.toInt(), 2400, transitionHeight)) + val transitionHeight = context.resources.getDimensionPixelSize( + R.dimen.desktop_mode_fullscreen_from_desktop_height) + val fromFreeformWidth = mContext.resources.getDimensionPixelSize( + R.dimen.desktop_mode_fullscreen_from_desktop_width + ) + var testRegion = visualIndicator.calculateFullscreenRegion(displayLayout, + WINDOWING_MODE_FULLSCREEN, CAPTION_HEIGHT) + assertThat(testRegion.bounds).isEqualTo(Rect(0, -50, 2400, 2 * STABLE_INSETS.top)) + testRegion = visualIndicator.calculateFullscreenRegion(displayLayout, + WINDOWING_MODE_FREEFORM, CAPTION_HEIGHT) + assertThat(testRegion.bounds).isEqualTo(Rect( + DISPLAY_BOUNDS.width() / 2 - fromFreeformWidth / 2, + -50, + DISPLAY_BOUNDS.width() / 2 + fromFreeformWidth / 2, + transitionHeight)) + testRegion = visualIndicator.calculateFullscreenRegion(displayLayout, + WINDOWING_MODE_MULTI_WINDOW, CAPTION_HEIGHT) + assertThat(testRegion.bounds).isEqualTo(Rect(0, -50, 2400, 2 * STABLE_INSETS.top)) } @Test fun testSplitLeftRegionCalculation() { - val transitionHeight = - context.resources.getDimensionPixelSize(R.dimen.desktop_mode_split_from_desktop_height) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - var testRegion = - visualIndicator.calculateSplitLeftRegion( - displayLayout, - TRANSITION_AREA_WIDTH, - CAPTION_HEIGHT, - ) - assertThat(testRegion).isEqualTo(Rect(0, -50, 32, 1600)) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FREEFORM) - testRegion = - visualIndicator.calculateSplitLeftRegion( - displayLayout, - TRANSITION_AREA_WIDTH, - CAPTION_HEIGHT, - ) - assertThat(testRegion).isEqualTo(Rect(0, transitionHeight, 32, 1600)) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_SPLIT) - testRegion = - visualIndicator.calculateSplitLeftRegion( - displayLayout, - TRANSITION_AREA_WIDTH, - CAPTION_HEIGHT, - ) - assertThat(testRegion).isEqualTo(Rect(0, -50, 32, 1600)) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.DRAGGED_INTENT) - testRegion = - visualIndicator.calculateSplitLeftRegion( - displayLayout, - TRANSITION_AREA_WIDTH, - CAPTION_HEIGHT, - ) - assertThat(testRegion).isEqualTo(Rect(0, -50, 32, 1600)) + val transitionHeight = context.resources.getDimensionPixelSize( + R.dimen.desktop_mode_split_from_desktop_height) + var testRegion = visualIndicator.calculateSplitLeftRegion(displayLayout, + WINDOWING_MODE_FULLSCREEN, TRANSITION_AREA_WIDTH, CAPTION_HEIGHT) + assertThat(testRegion.bounds).isEqualTo(Rect(0, -50, 32, 1600)) + testRegion = visualIndicator.calculateSplitLeftRegion(displayLayout, + WINDOWING_MODE_FREEFORM, TRANSITION_AREA_WIDTH, CAPTION_HEIGHT) + assertThat(testRegion.bounds).isEqualTo(Rect(0, transitionHeight, 32, 1600)) + testRegion = visualIndicator.calculateSplitLeftRegion(displayLayout, + WINDOWING_MODE_MULTI_WINDOW, TRANSITION_AREA_WIDTH, CAPTION_HEIGHT) + assertThat(testRegion.bounds).isEqualTo(Rect(0, -50, 32, 1600)) } @Test fun testSplitRightRegionCalculation() { - val transitionHeight = - context.resources.getDimensionPixelSize(R.dimen.desktop_mode_split_from_desktop_height) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - var testRegion = - visualIndicator.calculateSplitRightRegion( - displayLayout, - TRANSITION_AREA_WIDTH, - CAPTION_HEIGHT, - ) - assertThat(testRegion).isEqualTo(Rect(2368, -50, 2400, 1600)) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FREEFORM) - testRegion = - visualIndicator.calculateSplitRightRegion( - displayLayout, - TRANSITION_AREA_WIDTH, - CAPTION_HEIGHT, - ) - assertThat(testRegion).isEqualTo(Rect(2368, transitionHeight, 2400, 1600)) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_SPLIT) - testRegion = - visualIndicator.calculateSplitRightRegion( - displayLayout, - TRANSITION_AREA_WIDTH, - CAPTION_HEIGHT, - ) - assertThat(testRegion).isEqualTo(Rect(2368, -50, 2400, 1600)) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.DRAGGED_INTENT) - testRegion = - visualIndicator.calculateSplitRightRegion( - displayLayout, - TRANSITION_AREA_WIDTH, - CAPTION_HEIGHT, - ) - assertThat(testRegion).isEqualTo(Rect(2368, -50, 2400, 1600)) + val transitionHeight = context.resources.getDimensionPixelSize( + R.dimen.desktop_mode_split_from_desktop_height) + var testRegion = visualIndicator.calculateSplitRightRegion(displayLayout, + WINDOWING_MODE_FULLSCREEN, TRANSITION_AREA_WIDTH, CAPTION_HEIGHT) + assertThat(testRegion.bounds).isEqualTo(Rect(2368, -50, 2400, 1600)) + testRegion = visualIndicator.calculateSplitRightRegion(displayLayout, + WINDOWING_MODE_FREEFORM, TRANSITION_AREA_WIDTH, CAPTION_HEIGHT) + assertThat(testRegion.bounds).isEqualTo(Rect(2368, transitionHeight, 2400, 1600)) + testRegion = visualIndicator.calculateSplitRightRegion(displayLayout, + WINDOWING_MODE_MULTI_WINDOW, TRANSITION_AREA_WIDTH, CAPTION_HEIGHT) + assertThat(testRegion.bounds).isEqualTo(Rect(2368, -50, 2400, 1600)) } @Test - fun testBubbleLeftRegionCalculation() { - val bubbleRegionSize = - context.resources.getDimensionPixelSize(sharedR.dimen.drag_zone_bubble_tablet) - val expectedRect = Rect(0, 1600 - bubbleRegionSize, bubbleRegionSize, 1600) - - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - var testRegion = visualIndicator.calculateBubbleLeftRegion(displayLayout) - assertThat(testRegion).isEqualTo(expectedRect) - - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_SPLIT) - testRegion = visualIndicator.calculateBubbleLeftRegion(displayLayout) - assertThat(testRegion).isEqualTo(expectedRect) - } - - @Test - fun testBubbleRightRegionCalculation() { - val bubbleRegionSize = - context.resources.getDimensionPixelSize(sharedR.dimen.drag_zone_bubble_tablet) - val expectedRect = Rect(2400 - bubbleRegionSize, 1600 - bubbleRegionSize, 2400, 1600) - - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - var testRegion = visualIndicator.calculateBubbleRightRegion(displayLayout) - assertThat(testRegion).isEqualTo(expectedRect) - - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_SPLIT) - testRegion = visualIndicator.calculateBubbleRightRegion(displayLayout) - assertThat(testRegion).isEqualTo(expectedRect) - } - - @Test - fun testDefaultIndicators() { - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - var result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(-10000f, 500f)) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_SPLIT) - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(10000f, 500f)) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.DRAGGED_INTENT) - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(500f, 10000f)) - assertThat(result).isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FREEFORM) - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(500f, 10000f)) - assertThat(result).isEqualTo(DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR) - } - - @Test - @EnableFlags( - com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, - com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE, - ) - fun testDefaultIndicators_enableBubbleToFullscreen() { - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - var result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(10f, 1500f)) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_BUBBLE_LEFT_INDICATOR) - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(2390f, 1500f)) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_BUBBLE_RIGHT_INDICATOR) - - // Check that bubble zones are not available from split - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_SPLIT) - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(10f, 1500f)) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR) - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(2390f, 1500f)) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR) - - // Check that bubble zones are not available from desktop - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FREEFORM) - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(10f, 1500f)) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR) - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(2390f, 1500f)) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR) - } - - @Test - @EnableFlags( - com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, - com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE, - ) - fun testDefaultIndicators_foldable_enableBubbleToFullscreen_dragFromFullscreen() { - setUpFoldable() - - createVisualIndicator( - DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN, - isSmallTablet = true, - isLeftRightSplit = true, - ) - var result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldCenter()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) - - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldLeftEdge()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR) - - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldRightEdge()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR) - - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldLeftBottom()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_BUBBLE_LEFT_INDICATOR) - - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldRightBottom()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_BUBBLE_RIGHT_INDICATOR) - } - - @Test - @EnableFlags( - com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, - com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE, - ) - @DisableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_ANYTHING) - fun testDefaultIndicators_foldable_enableBubbleToFullscreen_dragFromSplit() { - setUpFoldable() - - createVisualIndicator( - DesktopModeVisualIndicator.DragStartState.FROM_SPLIT, - isSmallTablet = true, - isLeftRightSplit = true, - ) - var result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldCenter()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) - - // Check that bubbles are not available from split - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldLeftBottom()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR) - - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldRightBottom()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR) - } - - @Test - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_ANYTHING) - fun testDefaultIndicators_foldable_enableBubbleAnything_dragFromSplit() { - setUpFoldable() - - createVisualIndicator( - DesktopModeVisualIndicator.DragStartState.FROM_SPLIT, - isSmallTablet = true, - isLeftRightSplit = true, - ) - var result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldCenter()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) - - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldLeftBottom()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_BUBBLE_LEFT_INDICATOR) - - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldRightBottom()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_BUBBLE_RIGHT_INDICATOR) - } - - @Test - @EnableFlags( - com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, - com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE, - ) - fun testDefaultIndicators_foldable_topBottomSplit() { - setUpFoldable() - - createVisualIndicator( - DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN, - isSmallTablet = true, - isLeftRightSplit = false, - ) - var result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldCenter()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) - - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldLeftEdge()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) - - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldLeftBottom()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_BUBBLE_LEFT_INDICATOR) - - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldRightBottom()) - assertThat(result) - .isEqualTo(DesktopModeVisualIndicator.IndicatorType.TO_BUBBLE_RIGHT_INDICATOR) - - createVisualIndicator( - DesktopModeVisualIndicator.DragStartState.FROM_SPLIT, - isSmallTablet = true, - isLeftRightSplit = false, - ) - // No indicator as top/bottom split apps should not be dragged - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldCenter()) - assertThat(result).isEqualTo(DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR) - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldLeftBottom()) - assertThat(result).isEqualTo(DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR) - result = visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, foldRightBottom()) - assertThat(result).isEqualTo(DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR) - } - - @Test - @EnableFlags(FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG) - fun testDefaultIndicators_crossDisplayDrag_noIndicator() { - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - - // Simulate dragging to a point on a different display. - // Even though this point (-10000f, 500f) would trigger TO_SPLIT_LEFT_INDICATOR - // on the original display, dragging across displays should show no indicator. - val result = visualIndicator.updateIndicatorType(/* displayId= */ 10, PointF(-10000f, 500f)) - - assertThat(result).isEqualTo(DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR) - } - - @Test - @EnableFlags( - com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, - com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE, - ) - fun testBubbleLeftVisualIndicatorSize() { - val dropTargetBounds = Rect(100, 100, 500, 1500) - whenever(bubbleBoundsProvider.getBubbleBarExpandedViewDropTargetBounds(/* onLeft= */ true)) - .thenReturn(dropTargetBounds) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - desktopExecutor.flushAll() - mainExecutor.flushAll() - visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(100f, 1500f)) - desktopExecutor.flushAll() - mainExecutor.flushAll() - - animatorTestRule.advanceTimeBy(200) - - assertThat(visualIndicator.indicatorBounds).isEqualTo(dropTargetBounds) - } - - @Test - @EnableFlags( - com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, - com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE, - ) - fun testBubbleRightVisualIndicatorSize() { - val dropTargetBounds = Rect(1900, 100, 2300, 1500) - whenever(bubbleBoundsProvider.getBubbleBarExpandedViewDropTargetBounds(/* onLeft= */ false)) - .thenReturn(dropTargetBounds) - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - desktopExecutor.flushAll() - mainExecutor.flushAll() - visualIndicator.updateIndicatorType(DEFAULT_DISPLAY, PointF(2300f, 1500f)) - desktopExecutor.flushAll() - mainExecutor.flushAll() - - animatorTestRule.advanceTimeBy(200) - - assertThat(visualIndicator.indicatorBounds).isEqualTo(dropTargetBounds) - } - - @Test - @DisableFlags(FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX) - fun createIndicator_inTransitionFlagDisabled_isAttachedToDisplayArea() { - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - - verify(taskDisplayAreaOrganizer).attachToDisplayArea(anyInt(), any()) - } - - @Test - @EnableFlags(FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX) - fun createIndicator_fromFreeform_inTransitionFlagEnabled_isAttachedToDisplayArea() { - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FREEFORM) - - verify(taskDisplayAreaOrganizer).attachToDisplayArea(anyInt(), any()) - } - - @Test - @EnableFlags(FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX) - fun createIndicator_fromFullscreen_inTransitionFlagEnabled_notAttachedToDisplayArea() { - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_FULLSCREEN) - - verify(taskDisplayAreaOrganizer, never()).attachToDisplayArea(anyInt(), any()) - } - - @Test - @EnableFlags(FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX) - fun createIndicator_fromSplit_inTransitionFlagEnabled_notAttachedToDisplayArea() { - createVisualIndicator(DesktopModeVisualIndicator.DragStartState.FROM_SPLIT) - - verify(taskDisplayAreaOrganizer, never()).attachToDisplayArea(anyInt(), any()) - } - - private fun createVisualIndicator( - dragStartState: DesktopModeVisualIndicator.DragStartState, - isSmallTablet: Boolean = false, - isLeftRightSplit: Boolean = true, - ) { - visualIndicator = - DesktopModeVisualIndicator( - desktopExecutor, - mainExecutor, - syncQueue, - taskInfo, - displayController, - context, - taskSurface, - taskDisplayAreaOrganizer, - dragStartState, - bubbleBoundsProvider, - snapEventHandler, - isSmallTablet, - isLeftRightSplit, - ) - } - - private fun foldCenter(): PointF { - return PointF( - FOLDABLE_DISPLAY_BOUNDS.centerX().toFloat(), - FOLDABLE_DISPLAY_BOUNDS.centerY().toFloat(), - ) - } - - private fun foldLeftEdge(): PointF { - return PointF(0f, 50f) - } - - private fun foldRightEdge(): PointF { - return PointF(750f, 50f) - } - - private fun foldLeftBottom(): PointF { - return PointF(0f, 650f) - } - - private fun foldRightBottom(): PointF { - return PointF(750f, 650f) + fun testToDesktopRegionCalculation() { + val fullscreenRegion = visualIndicator.calculateFullscreenRegion(displayLayout, + WINDOWING_MODE_FULLSCREEN, CAPTION_HEIGHT) + val splitLeftRegion = visualIndicator.calculateSplitLeftRegion(displayLayout, + WINDOWING_MODE_FULLSCREEN, TRANSITION_AREA_WIDTH, CAPTION_HEIGHT) + val splitRightRegion = visualIndicator.calculateSplitRightRegion(displayLayout, + WINDOWING_MODE_FULLSCREEN, TRANSITION_AREA_WIDTH, CAPTION_HEIGHT) + val desktopRegion = visualIndicator.calculateToDesktopRegion(displayLayout, + WINDOWING_MODE_FULLSCREEN, splitLeftRegion, splitRightRegion, fullscreenRegion) + var testRegion = Region() + testRegion.union(DISPLAY_BOUNDS) + testRegion.op(splitLeftRegion, Region.Op.DIFFERENCE) + testRegion.op(splitRightRegion, Region.Op.DIFFERENCE) + testRegion.op(fullscreenRegion, Region.Op.DIFFERENCE) + assertThat(desktopRegion).isEqualTo(testRegion) } companion object { private const val TRANSITION_AREA_WIDTH = 32 private const val CAPTION_HEIGHT = 50 + private val DISPLAY_BOUNDS = Rect(0, 0, 2400, 1600) private const val NAVBAR_HEIGHT = 50 - private val TABLET_DISPLAY_BOUNDS = Rect(0, 0, 2400, 1600) - private val TABLET_STABLE_INSETS = - Rect( - TABLET_DISPLAY_BOUNDS.left, - TABLET_DISPLAY_BOUNDS.top + CAPTION_HEIGHT, - TABLET_DISPLAY_BOUNDS.right, - TABLET_DISPLAY_BOUNDS.bottom - NAVBAR_HEIGHT, - ) - private val FOLDABLE_DISPLAY_BOUNDS = Rect(0, 0, 800, 700) - private val FOLDABLE_STABLE_INSETS = - Rect( - FOLDABLE_DISPLAY_BOUNDS.left, - FOLDABLE_DISPLAY_BOUNDS.top + CAPTION_HEIGHT, - FOLDABLE_DISPLAY_BOUNDS.right, - FOLDABLE_DISPLAY_BOUNDS.bottom - NAVBAR_HEIGHT, - ) + private val STABLE_INSETS = Rect( + DISPLAY_BOUNDS.left, + DISPLAY_BOUNDS.top + CAPTION_HEIGHT, + DISPLAY_BOUNDS.right, + DISPLAY_BOUNDS.bottom - NAVBAR_HEIGHT + ) } -} +} \ No newline at end of file diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt index e7a6112eeb..9e764a9261 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksControllerTest.kt @@ -18,13 +18,6 @@ package com.android.wm.shell.desktopmode import android.app.ActivityManager.RecentTaskInfo import android.app.ActivityManager.RunningTaskInfo -import android.app.ActivityOptions -import android.app.ActivityTaskManager.INVALID_TASK_ID -import android.app.AppOpsManager -import android.app.KeyguardManager -import android.app.PendingIntent -import android.app.PictureInPictureParams -import android.app.WindowConfiguration import android.app.WindowConfiguration.ACTIVITY_TYPE_HOME import android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM @@ -32,51 +25,32 @@ import android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN import android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW import android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED import android.content.ComponentName -import android.content.Context import android.content.Intent import android.content.pm.ActivityInfo import android.content.pm.ActivityInfo.CONFIG_DENSITY -import android.content.pm.ActivityInfo.LAUNCH_SINGLE_INSTANCE import android.content.pm.ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE import android.content.pm.ActivityInfo.SCREEN_ORIENTATION_PORTRAIT import android.content.pm.ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED -import android.content.pm.ApplicationInfo -import android.content.pm.PackageManager import android.content.res.Configuration.ORIENTATION_LANDSCAPE import android.content.res.Configuration.ORIENTATION_PORTRAIT -import android.content.res.Resources import android.graphics.Point import android.graphics.PointF import android.graphics.Rect import android.os.Binder -import android.os.Bundle -import android.os.Handler -import android.os.IBinder -import android.os.UserHandle -import android.os.UserManager import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags -import android.platform.test.flag.junit.FlagsParameterization -import android.testing.TestableContext -import android.view.Display +import android.platform.test.flag.junit.SetFlagsRule +import android.testing.AndroidTestingRunner import android.view.Display.DEFAULT_DISPLAY -import android.view.Display.INVALID_DISPLAY -import android.view.DragEvent -import android.view.Gravity -import android.view.MotionEvent import android.view.SurfaceControl -import android.view.WindowInsets import android.view.WindowManager import android.view.WindowManager.TRANSIT_CHANGE -import android.view.WindowManager.TRANSIT_CLOSE import android.view.WindowManager.TRANSIT_OPEN import android.view.WindowManager.TRANSIT_TO_BACK import android.view.WindowManager.TRANSIT_TO_FRONT -import android.widget.Toast import android.window.DisplayAreaInfo import android.window.IWindowContainerToken import android.window.RemoteTransition -import android.window.TransitionInfo import android.window.TransitionRequestInfo import android.window.WindowContainerToken import android.window.WindowContainerTransaction @@ -90,128 +64,67 @@ import com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn import com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession import com.android.dx.mockito.inline.extended.ExtendedMockito.never import com.android.dx.mockito.inline.extended.StaticMockitoSession -import com.android.internal.jank.InteractionJankMonitor -import com.android.internal.policy.SystemBarUtils.getDesktopViewAppHeaderHeightPx import com.android.window.flags.Flags -import com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE -import com.android.window.flags.Flags.FLAG_ENABLE_DISPLAY_DISCONNECT_INTERACTION -import com.android.window.flags.Flags.FLAG_ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS -import com.android.window.flags.Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP -import com.android.window.flags.Flags.FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT -import com.android.window.flags.Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND -import com.android.window.flags.Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY import com.android.wm.shell.MockToken -import com.android.wm.shell.R import com.android.wm.shell.RootTaskDisplayAreaOrganizer import com.android.wm.shell.ShellTaskOrganizer import com.android.wm.shell.ShellTestCase import com.android.wm.shell.TestRunningTaskInfoBuilder import com.android.wm.shell.TestShellExecutor -import com.android.wm.shell.bubbles.BubbleController import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.DisplayLayout -import com.android.wm.shell.common.HomeIntentProvider +import com.android.wm.shell.common.LaunchAdjacentController import com.android.wm.shell.common.MultiInstanceHelper import com.android.wm.shell.common.ShellExecutor import com.android.wm.shell.common.SyncTransactionQueue -import com.android.wm.shell.common.UserProfileContexts -import com.android.wm.shell.desktopmode.DesktopImmersiveController.ExitResult -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.InputMethod -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.MinimizeReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.ResizeTrigger -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UnminimizeReason -import com.android.wm.shell.desktopmode.DesktopTasksController.DesktopModeEntryExitTransitionListener -import com.android.wm.shell.desktopmode.DesktopTasksController.SnapPosition -import com.android.wm.shell.desktopmode.DesktopTasksController.TaskbarDesktopTaskListener -import com.android.wm.shell.desktopmode.DesktopTestHelpers.createFreeformTask -import com.android.wm.shell.desktopmode.DesktopTestHelpers.createFullscreenTask -import com.android.wm.shell.desktopmode.DesktopTestHelpers.createHomeTask -import com.android.wm.shell.desktopmode.DesktopTestHelpers.createSplitScreenTask -import com.android.wm.shell.desktopmode.ExitDesktopTaskTransitionHandler.FULLSCREEN_ANIMATION_DURATION -import com.android.wm.shell.desktopmode.common.ToggleTaskSizeInteraction -import com.android.wm.shell.desktopmode.desktopfirst.DesktopFirstListenerManager -import com.android.wm.shell.desktopmode.desktopwallpaperactivity.DesktopWallpaperActivityTokenProvider -import com.android.wm.shell.desktopmode.minimize.DesktopWindowLimitRemoteHandler -import com.android.wm.shell.desktopmode.multidesks.DeskTransition -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer -import com.android.wm.shell.desktopmode.multidesks.DesksTransitionObserver -import com.android.wm.shell.desktopmode.multidesks.PreserveDisplayRequestHandler -import com.android.wm.shell.desktopmode.persistence.Desktop -import com.android.wm.shell.desktopmode.persistence.DesktopPersistentRepository -import com.android.wm.shell.desktopmode.persistence.DesktopRepositoryInitializer +import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.UNKNOWN +import com.android.wm.shell.common.split.SplitScreenConstants +import com.android.wm.shell.desktopmode.DesktopTestHelpers.Companion.createFreeformTask +import com.android.wm.shell.desktopmode.DesktopTestHelpers.Companion.createFullscreenTask +import com.android.wm.shell.desktopmode.DesktopTestHelpers.Companion.createHomeTask +import com.android.wm.shell.desktopmode.DesktopTestHelpers.Companion.createSplitScreenTask import com.android.wm.shell.draganddrop.DragAndDropController -import com.android.wm.shell.freeform.FreeformTaskTransitionStarter import com.android.wm.shell.recents.RecentTasksController import com.android.wm.shell.recents.RecentsTransitionHandler import com.android.wm.shell.recents.RecentsTransitionStateListener -import com.android.wm.shell.recents.RecentsTransitionStateListener.TRANSITION_STATE_ANIMATING -import com.android.wm.shell.recents.RecentsTransitionStateListener.TRANSITION_STATE_REQUESTED -import com.android.wm.shell.shared.R as SharedR -import com.android.wm.shell.shared.desktopmode.DesktopModeCompatPolicy -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.ADB_COMMAND -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.APP_FROM_OVERVIEW -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.KEYBOARD_SHORTCUT -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.TASK_DRAG -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource.UNKNOWN -import com.android.wm.shell.shared.desktopmode.FakeDesktopConfig -import com.android.wm.shell.shared.desktopmode.FakeDesktopState -import com.android.wm.shell.shared.split.SplitScreenConstants -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_INDEX_UNDEFINED +import com.android.wm.shell.shared.DesktopModeStatus import com.android.wm.shell.splitscreen.SplitScreenController import com.android.wm.shell.sysui.ShellCommandHandler import com.android.wm.shell.sysui.ShellController import com.android.wm.shell.sysui.ShellInit -import com.android.wm.shell.transition.FocusTransitionObserver import com.android.wm.shell.transition.OneShotRemoteHandler import com.android.wm.shell.transition.TestRemoteTransition import com.android.wm.shell.transition.Transitions +import com.android.wm.shell.transition.Transitions.ENABLE_SHELL_TRANSITIONS import com.android.wm.shell.transition.Transitions.TransitionHandler -import com.android.wm.shell.windowdecor.DesktopModeWindowDecorViewModelTestsBase.Companion.HOME_LAUNCHER_PACKAGE_NAME -import com.android.wm.shell.windowdecor.tiling.SnapEventHandler import com.google.common.truth.Truth.assertThat import com.google.common.truth.Truth.assertWithMessage import java.util.Optional -import java.util.function.Consumer import junit.framework.Assert.assertFalse import junit.framework.Assert.assertTrue -import kotlin.test.assertIs -import kotlin.test.assertNotNull -import kotlin.test.assertNull -import kotlin.test.assertTrue -import kotlinx.coroutines.ExperimentalCoroutinesApi -import kotlinx.coroutines.cancel -import kotlinx.coroutines.runBlocking -import kotlinx.coroutines.test.TestScope -import kotlinx.coroutines.test.runCurrent -import kotlinx.coroutines.test.runTest import org.junit.After import org.junit.Assume.assumeTrue import org.junit.Before +import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith +import org.mockito.ArgumentCaptor +import org.mockito.ArgumentMatchers.eq import org.mockito.ArgumentMatchers.isA import org.mockito.ArgumentMatchers.isNull import org.mockito.Mock import org.mockito.Mockito -import org.mockito.Mockito.anyBoolean +import org.mockito.Mockito.any import org.mockito.Mockito.anyInt import org.mockito.Mockito.clearInvocations import org.mockito.Mockito.mock import org.mockito.Mockito.spy -import org.mockito.Mockito.times import org.mockito.Mockito.verify -import org.mockito.kotlin.any +import org.mockito.Mockito.`when` as whenever import org.mockito.kotlin.anyOrNull -import org.mockito.kotlin.argThat -import org.mockito.kotlin.argumentCaptor import org.mockito.kotlin.atLeastOnce -import org.mockito.kotlin.eq -import org.mockito.kotlin.verifyNoInteractions -import org.mockito.kotlin.whenever +import org.mockito.kotlin.capture import org.mockito.quality.Strictness -import platform.test.runner.parameterized.ParameterizedAndroidJunit4 -import platform.test.runner.parameterized.Parameters /** * Test class for {@link DesktopTasksController} @@ -219,10876 +132,1739 @@ import platform.test.runner.parameterized.Parameters * Usage: atest WMShellUnitTests:DesktopTasksControllerTest */ @SmallTest -@RunWith(ParameterizedAndroidJunit4::class) -@ExperimentalCoroutinesApi -@EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_MODE) -class DesktopTasksControllerTest(flags: FlagsParameterization) : ShellTestCase() { +@RunWith(AndroidTestingRunner::class) +class DesktopTasksControllerTest : ShellTestCase() { - @Mock lateinit var testExecutor: ShellExecutor - @Mock lateinit var shellCommandHandler: ShellCommandHandler - @Mock lateinit var shellController: ShellController - @Mock lateinit var displayController: DisplayController - @Mock lateinit var displayLayout: DisplayLayout - @Mock lateinit var display: Display - @Mock lateinit var shellTaskOrganizer: ShellTaskOrganizer - @Mock lateinit var syncQueue: SyncTransactionQueue - @Mock lateinit var rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer - @Mock lateinit var transitions: Transitions - @Mock lateinit var keyguardManager: KeyguardManager - @Mock lateinit var mReturnToDragStartAnimator: ReturnToDragStartAnimator - @Mock lateinit var desktopMixedTransitionHandler: DesktopMixedTransitionHandler - @Mock lateinit var exitDesktopTransitionHandler: ExitDesktopTaskTransitionHandler - @Mock lateinit var enterDesktopTransitionHandler: EnterDesktopTaskTransitionHandler - @Mock lateinit var dragAndDropTransitionHandler: DesktopModeDragAndDropTransitionHandler - @Mock - lateinit var toggleResizeDesktopTaskTransitionHandler: ToggleResizeDesktopTaskTransitionHandler - @Mock lateinit var dragToDesktopTransitionHandler: DragToDesktopTransitionHandler - @Mock lateinit var mMockDesktopImmersiveController: DesktopImmersiveController - @Mock lateinit var splitScreenController: SplitScreenController - @Mock lateinit var recentsTransitionHandler: RecentsTransitionHandler - @Mock lateinit var dragAndDropController: DragAndDropController - @Mock lateinit var multiInstanceHelper: MultiInstanceHelper - @Mock lateinit var desktopModeVisualIndicator: DesktopModeVisualIndicator - @Mock lateinit var recentTasksController: RecentTasksController - @Mock lateinit var snapEventHandler: SnapEventHandler - @Mock private lateinit var mockInteractionJankMonitor: InteractionJankMonitor - @Mock private lateinit var mockSurface: SurfaceControl - @Mock private lateinit var taskbarDesktopTaskListener: TaskbarDesktopTaskListener - @Mock private lateinit var freeformTaskTransitionStarter: FreeformTaskTransitionStarter - @Mock private lateinit var mockHandler: Handler - @Mock private lateinit var focusTransitionObserver: FocusTransitionObserver - @Mock private lateinit var desktopModeEventLogger: DesktopModeEventLogger - @Mock private lateinit var desktopModeUiEventLogger: DesktopModeUiEventLogger - @Mock lateinit var persistentRepository: DesktopPersistentRepository - @Mock lateinit var motionEvent: MotionEvent - @Mock lateinit var repositoryInitializer: DesktopRepositoryInitializer - @Mock private lateinit var mockToast: Toast - private lateinit var mockitoSession: StaticMockitoSession - @Mock private lateinit var bubbleController: BubbleController - @Mock private lateinit var resources: Resources - @Mock - lateinit var desktopModeEnterExitTransitionListener: DesktopModeEntryExitTransitionListener - @Mock private lateinit var userManager: UserManager - @Mock - private lateinit var desktopWallpaperActivityTokenProvider: - DesktopWallpaperActivityTokenProvider - @Mock - private lateinit var overviewToDesktopTransitionObserver: OverviewToDesktopTransitionObserver - @Mock private lateinit var desksOrganizer: DesksOrganizer - @Mock private lateinit var userProfileContexts: UserProfileContexts - @Mock private lateinit var desksTransitionsObserver: DesksTransitionObserver - @Mock private lateinit var packageManager: PackageManager - @Mock private lateinit var mockDisplayContext: Context - @Mock private lateinit var dragToDisplayTransitionHandler: DragToDisplayTransitionHandler - @Mock - private lateinit var moveToDisplayTransitionHandler: DesktopModeMoveToDisplayTransitionHandler - @Mock private lateinit var mockAppOpsManager: AppOpsManager - @Mock private lateinit var visualIndicatorUpdateScheduler: VisualIndicatorUpdateScheduler - @Mock private lateinit var desktopFirstListenerManager: DesktopFirstListenerManager + @JvmField @Rule val setFlagsRule = SetFlagsRule() - private lateinit var controller: DesktopTasksController - private lateinit var shellInit: ShellInit - private lateinit var taskRepository: DesktopRepository - private lateinit var userRepositories: DesktopUserRepositories - private lateinit var desktopTasksLimiter: DesktopTasksLimiter - private lateinit var recentsTransitionStateListener: RecentsTransitionStateListener - private lateinit var desktopModeCompatPolicy: DesktopModeCompatPolicy - private lateinit var spyContext: TestableContext - private lateinit var homeIntentProvider: HomeIntentProvider - private lateinit var desktopState: FakeDesktopState - private lateinit var desktopConfig: FakeDesktopConfig + @Mock lateinit var testExecutor: ShellExecutor + @Mock lateinit var shellCommandHandler: ShellCommandHandler + @Mock lateinit var shellController: ShellController + @Mock lateinit var displayController: DisplayController + @Mock lateinit var displayLayout: DisplayLayout + @Mock lateinit var shellTaskOrganizer: ShellTaskOrganizer + @Mock lateinit var syncQueue: SyncTransactionQueue + @Mock lateinit var rootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer + @Mock lateinit var transitions: Transitions + @Mock lateinit var exitDesktopTransitionHandler: ExitDesktopTaskTransitionHandler + @Mock lateinit var enterDesktopTransitionHandler: EnterDesktopTaskTransitionHandler + @Mock + lateinit var toggleResizeDesktopTaskTransitionHandler: ToggleResizeDesktopTaskTransitionHandler + @Mock lateinit var dragToDesktopTransitionHandler: DragToDesktopTransitionHandler + @Mock lateinit var launchAdjacentController: LaunchAdjacentController + @Mock lateinit var splitScreenController: SplitScreenController + @Mock lateinit var recentsTransitionHandler: RecentsTransitionHandler + @Mock lateinit var dragAndDropController: DragAndDropController + @Mock lateinit var multiInstanceHelper: MultiInstanceHelper + @Mock lateinit var desktopModeLoggerTransitionObserver: DesktopModeLoggerTransitionObserver + @Mock lateinit var desktopModeVisualIndicator: DesktopModeVisualIndicator + @Mock lateinit var recentTasksController: RecentTasksController - private val shellExecutor = TestShellExecutor() - private val bgExecutor = TestShellExecutor() - private val testScope = TestScope() + private lateinit var mockitoSession: StaticMockitoSession + private lateinit var controller: DesktopTasksController + private lateinit var shellInit: ShellInit + private lateinit var desktopModeTaskRepository: DesktopModeTaskRepository + private lateinit var desktopTasksLimiter: DesktopTasksLimiter + private lateinit var recentsTransitionStateListener: RecentsTransitionStateListener - // Mock running tasks are registered here so we can get the list from mock shell task organizer - private val runningTasks = mutableListOf<RunningTaskInfo>() + private val shellExecutor = TestShellExecutor() - private val SECONDARY_DISPLAY_ID = 1 - private val DISPLAY_DIMENSION_SHORT = 1600 - private val DISPLAY_DIMENSION_LONG = 2560 - private val DEFAULT_LANDSCAPE_BOUNDS = Rect(320, 75, 2240, 1275) - private val DEFAULT_PORTRAIT_BOUNDS = Rect(200, 165, 1400, 2085) - private val RESIZABLE_LANDSCAPE_BOUNDS = Rect(25, 435, 1575, 1635) - private val RESIZABLE_PORTRAIT_BOUNDS = Rect(680, 75, 1880, 1275) - private val UNRESIZABLE_LANDSCAPE_BOUNDS = Rect(25, 448, 1575, 1611) - private val UNRESIZABLE_PORTRAIT_BOUNDS = Rect(830, 75, 1730, 1275) - private val wallpaperToken = MockToken().token() - private val homeComponentName = ComponentName(HOME_LAUNCHER_PACKAGE_NAME, /* class */ "") - private val secondDisplayArea = - DisplayAreaInfo(MockToken().token(), SECOND_DISPLAY, /* featureId= */ 0) + // Mock running tasks are registered here so we can get the list from mock shell task organizer + private val runningTasks = mutableListOf<RunningTaskInfo>() - init { - mSetFlagsRule.setFlagsParameterization(flags) + private val DISPLAY_DIMENSION_SHORT = 1600 + private val DISPLAY_DIMENSION_LONG = 2560 + private val DEFAULT_LANDSCAPE_BOUNDS = Rect(320, 200, 2240, 1400) + private val DEFAULT_PORTRAIT_BOUNDS = Rect(200, 320, 1400, 2240) + private val RESIZABLE_LANDSCAPE_BOUNDS = Rect(25, 680, 1575, 1880) + private val RESIZABLE_PORTRAIT_BOUNDS = Rect(680, 200, 1880, 1400) + private val UNRESIZABLE_LANDSCAPE_BOUNDS = Rect(25, 699, 1575, 1861) + private val UNRESIZABLE_PORTRAIT_BOUNDS = Rect(830, 200, 1730, 1400) + + @Before + fun setUp() { + mockitoSession = + mockitoSession() + .strictness(Strictness.LENIENT) + .spyStatic(DesktopModeStatus::class.java) + .startMocking() + whenever(DesktopModeStatus.isEnabled()).thenReturn(true) + doReturn(true).`when` { DesktopModeStatus.isDesktopModeSupported(any()) } + + shellInit = spy(ShellInit(testExecutor)) + desktopModeTaskRepository = DesktopModeTaskRepository() + desktopTasksLimiter = + DesktopTasksLimiter(transitions, desktopModeTaskRepository, shellTaskOrganizer) + + whenever(shellTaskOrganizer.getRunningTasks(anyInt())).thenAnswer { runningTasks } + whenever(transitions.startTransition(anyInt(), any(), isNull())).thenAnswer { Binder() } + whenever(enterDesktopTransitionHandler.moveToDesktop(any(), any())).thenAnswer { Binder() } + whenever(displayController.getDisplayLayout(anyInt())).thenReturn(displayLayout) + whenever(displayLayout.getStableBounds(any())).thenAnswer { i -> + (i.arguments.first() as Rect).set(STABLE_BOUNDS) } - @Before - fun setUp() { - mockitoSession = - mockitoSession() - .strictness(Strictness.LENIENT) - .spyStatic(Toast::class.java) - .startMocking() + val tda = DisplayAreaInfo(MockToken().token(), DEFAULT_DISPLAY, 0) + tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN + whenever(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)).thenReturn(tda) - desktopState = FakeDesktopState() - desktopConfig = FakeDesktopConfig() - desktopState.canEnterDesktopMode = true + controller = createController() + controller.setSplitScreenController(splitScreenController) - spyContext = spy(mContext) - shellInit = spy(ShellInit(testExecutor)) - userRepositories = - DesktopUserRepositories( - shellInit, - shellController, - persistentRepository, - repositoryInitializer, - testScope.backgroundScope, - userManager, - desktopState, - desktopConfig, - ) - desktopTasksLimiter = - DesktopTasksLimiter( - transitions, - userRepositories, - shellTaskOrganizer, - desksOrganizer, - desktopMixedTransitionHandler, - MAX_TASK_LIMIT, - ) - desktopModeCompatPolicy = spy(DesktopModeCompatPolicy(spyContext)) - homeIntentProvider = HomeIntentProvider(context) + shellInit.init() - mContext - .getOrCreateTestableResources() - .addOverride(SharedR.integer.to_desktop_animation_duration_ms, TO_DESKTOP_ANIM_DURATION) + val captor = ArgumentCaptor.forClass(RecentsTransitionStateListener::class.java) + verify(recentsTransitionHandler).addTransitionStateListener(captor.capture()) + recentsTransitionStateListener = captor.value + } - whenever(shellTaskOrganizer.getRunningTasks(anyInt())).thenAnswer { runningTasks } - whenever(transitions.startTransition(anyInt(), any(), anyOrNull())).thenAnswer { Binder() } - whenever(enterDesktopTransitionHandler.moveToDesktop(any(), any())).thenAnswer { Binder() } - whenever(exitDesktopTransitionHandler.startTransition(any(), any(), any(), any())) - .thenReturn(Binder()) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - any(), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - whenever(displayController.getDisplayLayout(anyInt())).thenReturn(displayLayout) - whenever(displayController.getDisplayContext(anyInt())).thenReturn(mockDisplayContext) - whenever(mockDisplayContext.resources).thenReturn(resources) - whenever(displayController.getDisplay(anyInt())).thenReturn(display) - whenever(displayLayout.getStableBounds(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(STABLE_BOUNDS) - } - whenever(displayLayout.densityDpi()).thenReturn(160) - whenever(runBlocking { persistentRepository.readDesktop(any(), any()) }) - .thenReturn(Desktop.getDefaultInstance()) - whenever(display.type).thenReturn(Display.TYPE_INTERNAL) - doReturn(mockToast).`when` { Toast.makeText(any(), anyInt(), anyInt()) } + private fun createController(): DesktopTasksController { + return DesktopTasksController( + context, + shellInit, + shellCommandHandler, + shellController, + displayController, + shellTaskOrganizer, + syncQueue, + rootTaskDisplayAreaOrganizer, + dragAndDropController, + transitions, + enterDesktopTransitionHandler, + exitDesktopTransitionHandler, + toggleResizeDesktopTaskTransitionHandler, + dragToDesktopTransitionHandler, + desktopModeTaskRepository, + desktopModeLoggerTransitionObserver, + launchAdjacentController, + recentsTransitionHandler, + multiInstanceHelper, + shellExecutor, + Optional.of(desktopTasksLimiter), + recentTasksController) + } - val tda = DisplayAreaInfo(MockToken().token(), DEFAULT_DISPLAY, 0) - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - whenever(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)).thenReturn(tda) - whenever(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(SECONDARY_DISPLAY_ID)) - .thenReturn(tda) - whenever(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(SECOND_DISPLAY)) - .thenReturn(secondDisplayArea) - whenever( - mMockDesktopImmersiveController.exitImmersiveIfApplicable( - any(), - any<RunningTaskInfo>(), - any(), - ) - ) - .thenReturn(ExitResult.NoExit) - whenever( - mMockDesktopImmersiveController.exitImmersiveIfApplicable( - any(), - anyInt(), - anyOrNull(), - any(), - ) - ) - .thenReturn(ExitResult.NoExit) - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(wallpaperToken) - whenever(userProfileContexts[anyInt()]).thenReturn(context) - whenever(userProfileContexts.getOrCreate(anyInt())).thenReturn(context) - whenever(freeformTaskTransitionStarter.startPipTransition(any())).thenReturn(Binder()) - whenever(rootTaskDisplayAreaOrganizer.displayIds).thenReturn(intArrayOf(DEFAULT_DISPLAY)) + @After + fun tearDown() { + mockitoSession.finishMocking() - controller = createController() - controller.setSplitScreenController(splitScreenController) - controller.freeformTaskTransitionStarter = freeformTaskTransitionStarter - controller.desktopModeEnterExitTransitionListener = desktopModeEnterExitTransitionListener + runningTasks.clear() + } - shellInit.init() + @Test + fun instantiate_addInitCallback() { + verify(shellInit).addInitCallback(any(), any<DesktopTasksController>()) + } - val captor = argumentCaptor<RecentsTransitionStateListener>() - verify(recentsTransitionHandler).addTransitionStateListener(captor.capture()) - recentsTransitionStateListener = captor.firstValue + @Test + fun instantiate_flagOff_doNotAddInitCallback() { + whenever(DesktopModeStatus.isEnabled()).thenReturn(false) + clearInvocations(shellInit) - controller.taskbarDesktopTaskListener = taskbarDesktopTaskListener - controller.setSnapEventHandler(snapEventHandler) + createController() - taskRepository = userRepositories.current - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = DEFAULT_DISPLAY) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = DEFAULT_DISPLAY) + verify(shellInit, never()).addInitCallback(any(), any<DesktopTasksController>()) + } - spyContext.setMockPackageManager(packageManager) - whenever(packageManager.getHomeActivities(ArrayList())).thenReturn(homeComponentName) + @Test + @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun showDesktopApps_allAppsInvisible_bringsToFront_desktopWallpaperDisabled() { + val homeTask = setUpHomeTask() + val task1 = setUpFreeformTask() + val task2 = setUpFreeformTask() + markTaskHidden(task1) + markTaskHidden(task2) + + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + assertThat(wct.hierarchyOps).hasSize(3) + // Expect order to be from bottom: home, task1, task2 + wct.assertReorderAt(index = 0, homeTask) + wct.assertReorderAt(index = 1, task1) + wct.assertReorderAt(index = 2, task2) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun showDesktopApps_allAppsInvisible_bringsToFront_desktopWallpaperEnabled() { + val task1 = setUpFreeformTask() + val task2 = setUpFreeformTask() + markTaskHidden(task1) + markTaskHidden(task2) + + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + assertThat(wct.hierarchyOps).hasSize(3) + // Expect order to be from bottom: wallpaper intent, task1, task2 + wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) + wct.assertReorderAt(index = 1, task1) + wct.assertReorderAt(index = 2, task2) + } + + @Test + @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun showDesktopApps_appsAlreadyVisible_bringsToFront_desktopWallpaperDisabled() { + val homeTask = setUpHomeTask() + val task1 = setUpFreeformTask() + val task2 = setUpFreeformTask() + markTaskVisible(task1) + markTaskVisible(task2) + + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + assertThat(wct.hierarchyOps).hasSize(3) + // Expect order to be from bottom: home, task1, task2 + wct.assertReorderAt(index = 0, homeTask) + wct.assertReorderAt(index = 1, task1) + wct.assertReorderAt(index = 2, task2) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun showDesktopApps_appsAlreadyVisible_bringsToFront_desktopWallpaperEnabled() { + val task1 = setUpFreeformTask() + val task2 = setUpFreeformTask() + markTaskVisible(task1) + markTaskVisible(task2) + + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + assertThat(wct.hierarchyOps).hasSize(3) + // Expect order to be from bottom: wallpaper intent, task1, task2 + wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) + wct.assertReorderAt(index = 1, task1) + wct.assertReorderAt(index = 2, task2) + } + + @Test + @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun showDesktopApps_someAppsInvisible_reordersAll_desktopWallpaperDisabled() { + val homeTask = setUpHomeTask() + val task1 = setUpFreeformTask() + val task2 = setUpFreeformTask() + markTaskHidden(task1) + markTaskVisible(task2) + + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + assertThat(wct.hierarchyOps).hasSize(3) + // Expect order to be from bottom: home, task1, task2 + wct.assertReorderAt(index = 0, homeTask) + wct.assertReorderAt(index = 1, task1) + wct.assertReorderAt(index = 2, task2) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun showDesktopApps_someAppsInvisible_reordersAll_desktopWallpaperEnabled() { + val task1 = setUpFreeformTask() + val task2 = setUpFreeformTask() + markTaskHidden(task1) + markTaskVisible(task2) + + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + assertThat(wct.hierarchyOps).hasSize(3) + // Expect order to be from bottom: wallpaper intent, task1, task2 + wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) + wct.assertReorderAt(index = 1, task1) + wct.assertReorderAt(index = 2, task2) + } + + @Test + @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun showDesktopApps_noActiveTasks_reorderHomeToTop_desktopWallpaperDisabled() { + val homeTask = setUpHomeTask() + + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + assertThat(wct.hierarchyOps).hasSize(1) + wct.assertReorderAt(index = 0, homeTask) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun showDesktopApps_noActiveTasks_addDesktopWallpaper_desktopWallpaperEnabled() { + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) + } + + @Test + @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun showDesktopApps_twoDisplays_bringsToFrontOnlyOneDisplay_desktopWallpaperDisabled() { + val homeTaskDefaultDisplay = setUpHomeTask(DEFAULT_DISPLAY) + val taskDefaultDisplay = setUpFreeformTask(DEFAULT_DISPLAY) + setUpHomeTask(SECOND_DISPLAY) + val taskSecondDisplay = setUpFreeformTask(SECOND_DISPLAY) + markTaskHidden(taskDefaultDisplay) + markTaskHidden(taskSecondDisplay) + + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + assertThat(wct.hierarchyOps).hasSize(2) + // Expect order to be from bottom: home, task + wct.assertReorderAt(index = 0, homeTaskDefaultDisplay) + wct.assertReorderAt(index = 1, taskDefaultDisplay) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun showDesktopApps_twoDisplays_bringsToFrontOnlyOneDisplay_desktopWallpaperEnabled() { + val taskDefaultDisplay = setUpFreeformTask(DEFAULT_DISPLAY) + setUpHomeTask(SECOND_DISPLAY) + val taskSecondDisplay = setUpFreeformTask(SECOND_DISPLAY) + markTaskHidden(taskDefaultDisplay) + markTaskHidden(taskSecondDisplay) + + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + assertThat(wct.hierarchyOps).hasSize(2) + // Expect order to be from bottom: wallpaper intent, task + wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) + wct.assertReorderAt(index = 1, taskDefaultDisplay) + } + + @Test + fun showDesktopApps_dontReorderMinimizedTask() { + val homeTask = setUpHomeTask() + val freeformTask = setUpFreeformTask() + val minimizedTask = setUpFreeformTask() + markTaskHidden(freeformTask) + markTaskHidden(minimizedTask) + desktopModeTaskRepository.minimizeTask(DEFAULT_DISPLAY, minimizedTask.taskId) + + controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) + assertThat(wct.hierarchyOps).hasSize(2) + // Reorder home and freeform task to top, don't reorder the minimized task + wct.assertReorderAt(index = 0, homeTask, toTop = true) + wct.assertReorderAt(index = 1, freeformTask, toTop = true) + } + + @Test + fun getVisibleTaskCount_noTasks_returnsZero() { + assertThat(controller.getVisibleTaskCount(DEFAULT_DISPLAY)).isEqualTo(0) + } + + @Test + fun getVisibleTaskCount_twoTasks_bothVisible_returnsTwo() { + setUpHomeTask() + setUpFreeformTask().also(::markTaskVisible) + setUpFreeformTask().also(::markTaskVisible) + assertThat(controller.getVisibleTaskCount(DEFAULT_DISPLAY)).isEqualTo(2) + } + + @Test + fun getVisibleTaskCount_twoTasks_oneVisible_returnsOne() { + setUpHomeTask() + setUpFreeformTask().also(::markTaskVisible) + setUpFreeformTask().also(::markTaskHidden) + assertThat(controller.getVisibleTaskCount(DEFAULT_DISPLAY)).isEqualTo(1) + } + + @Test + fun getVisibleTaskCount_twoTasksVisibleOnDifferentDisplays_returnsOne() { + setUpHomeTask() + setUpFreeformTask(DEFAULT_DISPLAY).also(::markTaskVisible) + setUpFreeformTask(SECOND_DISPLAY).also(::markTaskVisible) + assertThat(controller.getVisibleTaskCount(SECOND_DISPLAY)).isEqualTo(1) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun moveToDesktop_landscapeDevice_resizable_undefinedOrientation_defaultLandscapeBounds() { + val task = setUpFullscreenTask() + setUpLandscapeDisplay() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun moveToDesktop_landscapeDevice_resizable_landscapeOrientation_defaultLandscapeBounds() { + val task = setUpFullscreenTask(screenOrientation = SCREEN_ORIENTATION_LANDSCAPE) + setUpLandscapeDisplay() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun moveToDesktop_landscapeDevice_resizable_portraitOrientation_resizablePortraitBounds() { + val task = + setUpFullscreenTask(screenOrientation = SCREEN_ORIENTATION_PORTRAIT, shouldLetterbox = true) + setUpLandscapeDisplay() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(RESIZABLE_PORTRAIT_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun moveToDesktop_landscapeDevice_unResizable_landscapeOrientation_defaultLandscapeBounds() { + val task = + setUpFullscreenTask(isResizable = false, screenOrientation = SCREEN_ORIENTATION_LANDSCAPE) + setUpLandscapeDisplay() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun moveToDesktop_landscapeDevice_unResizable_portraitOrientation_unResizablePortraitBounds() { + val task = + setUpFullscreenTask( + isResizable = false, + screenOrientation = SCREEN_ORIENTATION_PORTRAIT, + shouldLetterbox = true) + setUpLandscapeDisplay() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(UNRESIZABLE_PORTRAIT_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun moveToDesktop_portraitDevice_resizable_undefinedOrientation_defaultPortraitBounds() { + val task = setUpFullscreenTask(deviceOrientation = ORIENTATION_PORTRAIT) + setUpPortraitDisplay() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun moveToDesktop_portraitDevice_resizable_portraitOrientation_defaultPortraitBounds() { + val task = + setUpFullscreenTask( + deviceOrientation = ORIENTATION_PORTRAIT, + screenOrientation = SCREEN_ORIENTATION_PORTRAIT) + setUpPortraitDisplay() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun moveToDesktop_portraitDevice_resizable_landscapeOrientation_resizableLandscapeBounds() { + val task = + setUpFullscreenTask( + deviceOrientation = ORIENTATION_PORTRAIT, + screenOrientation = SCREEN_ORIENTATION_LANDSCAPE, + shouldLetterbox = true) + setUpPortraitDisplay() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(RESIZABLE_LANDSCAPE_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun moveToDesktop_portraitDevice_unResizable_portraitOrientation_defaultPortraitBounds() { + val task = + setUpFullscreenTask( + isResizable = false, + deviceOrientation = ORIENTATION_PORTRAIT, + screenOrientation = SCREEN_ORIENTATION_PORTRAIT) + setUpPortraitDisplay() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun moveToDesktop_portraitDevice_unResizable_landscapeOrientation_unResizableLandscapeBounds() { + val task = + setUpFullscreenTask( + isResizable = false, + deviceOrientation = ORIENTATION_PORTRAIT, + screenOrientation = SCREEN_ORIENTATION_LANDSCAPE, + shouldLetterbox = true) + setUpPortraitDisplay() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(UNRESIZABLE_LANDSCAPE_BOUNDS) + } + + @Test + fun moveToDesktop_tdaFullscreen_windowingModeSetToFreeform() { + val task = setUpFullscreenTask() + val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! + tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(wct.changes[task.token.asBinder()]?.windowingMode).isEqualTo(WINDOWING_MODE_FREEFORM) + } + + @Test + fun moveToDesktop_tdaFreeform_windowingModeSetToUndefined() { + val task = setUpFullscreenTask() + val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! + tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(wct.changes[task.token.asBinder()]?.windowingMode) + .isEqualTo(WINDOWING_MODE_UNDEFINED) + } + + @Test + fun moveToDesktop_nonExistentTask_doesNothing() { + controller.moveToDesktop(999, transitionSource = UNKNOWN) + verifyEnterDesktopWCTNotExecuted() + } + + @Test + fun moveToDesktop_nonRunningTask_launchesInFreeform() { + whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) + + val task = createTaskInfo(1) + + whenever(recentTasksController.findTaskInBackground(anyInt())).thenReturn(task) + + controller.moveToDesktop(task.taskId, transitionSource = UNKNOWN) + with(getLatestEnterDesktopWct()) { + assertLaunchTaskAt(0, task.taskId, WINDOWING_MODE_FREEFORM) } - - private fun createController() = - DesktopTasksController( - context, - shellInit, - shellCommandHandler, - shellController, - displayController, - shellTaskOrganizer, - syncQueue, - rootTaskDisplayAreaOrganizer, - dragAndDropController, - transitions, - keyguardManager, - mReturnToDragStartAnimator, - desktopMixedTransitionHandler, - enterDesktopTransitionHandler, - exitDesktopTransitionHandler, - dragAndDropTransitionHandler, - toggleResizeDesktopTaskTransitionHandler, - dragToDesktopTransitionHandler, - mMockDesktopImmersiveController, - userRepositories, - repositoryInitializer, - recentsTransitionHandler, - multiInstanceHelper, - shellExecutor, - testScope.backgroundScope, - bgExecutor, - Optional.of(desktopTasksLimiter), - recentTasksController, - mockInteractionJankMonitor, - mockHandler, - focusTransitionObserver, - desktopModeEventLogger, - desktopModeUiEventLogger, - desktopWallpaperActivityTokenProvider, - Optional.of(bubbleController), - overviewToDesktopTransitionObserver, - desksOrganizer, - desksTransitionsObserver, - userProfileContexts, - desktopModeCompatPolicy, - dragToDisplayTransitionHandler, - moveToDisplayTransitionHandler, - homeIntentProvider, - desktopState, - desktopConfig, - visualIndicatorUpdateScheduler, - Optional.of(desktopFirstListenerManager), - ) - - @After - fun tearDown() { - mockitoSession.finishMocking() - - runningTasks.clear() - testScope.cancel() - } - - @Test - fun instantiate_addInitCallback() { - verify(shellInit).addInitCallback(any(), any<DesktopTasksController>()) - } - - @Test - fun doesAnyTaskRequireTaskbarRounding_onlyFreeFormTaskIsRunning_returnFalse() { - setUpFreeformTask() - - assertThat(controller.doesAnyTaskRequireTaskbarRounding(DEFAULT_DISPLAY)).isFalse() - } - - @Test - fun doesAnyTaskRequireTaskbarRounding_toggleResizeOfFreeFormTask_returnTrue() { - val task1 = setUpFreeformTask() - - val argumentCaptor = argumentCaptor<Boolean>() - controller.toggleDesktopTaskSize( - task1, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_MAXIMIZE, - InputMethod.TOUCH, - ), - ) - - verify(taskbarDesktopTaskListener).onTaskbarCornerRoundingUpdate(argumentCaptor.capture()) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.MAXIMIZE_BUTTON, - InputMethod.TOUCH, - task1, - STABLE_BOUNDS.width(), - STABLE_BOUNDS.height(), - displayController, - ) - assertThat(argumentCaptor.firstValue).isTrue() - } - - @Test - fun doesAnyTaskRequireTaskbarRounding_fullScreenTaskIsRunning_returnTrue() { - val stableBounds = Rect().also { displayLayout.getStableBounds(it) } - setUpFreeformTask(bounds = stableBounds, active = true) - assertThat(controller.doesAnyTaskRequireTaskbarRounding(DEFAULT_DISPLAY)).isTrue() - } - - @Test - fun doesAnyTaskRequireTaskbarRounding_toggleResizeOfMaximizedTask_returnFalse() { - val stableBounds = Rect().also { displayLayout.getStableBounds(it) } - val task1 = setUpFreeformTask(bounds = stableBounds, active = true) - - val argumentCaptor = argumentCaptor<Boolean>() - controller.toggleDesktopTaskSize( - task1, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.RESTORE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_RESTORE, - InputMethod.TOUCH, - ), - ) - - verify(taskbarDesktopTaskListener).onTaskbarCornerRoundingUpdate(argumentCaptor.capture()) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - eq(ResizeTrigger.MAXIMIZE_BUTTON), - eq(InputMethod.TOUCH), - eq(task1), - anyOrNull(), - anyOrNull(), - eq(displayController), - anyOrNull(), - ) - assertThat(argumentCaptor.firstValue).isFalse() - } - - @Test - fun doesAnyTaskRequireTaskbarRounding_splitScreenTaskIsRunning_returnTrue() { - val stableBounds = Rect().also { displayLayout.getStableBounds(it) } - setUpFreeformTask( - bounds = Rect(stableBounds.left, stableBounds.top, 500, stableBounds.bottom) - ) - - assertThat(controller.doesAnyTaskRequireTaskbarRounding(DEFAULT_DISPLAY)).isTrue() - } - - @Test - fun getNextFocusedTask_onlyClosingTask_returnInvalidId() { - val closingTask = setUpFreeformTask() - assertThat(controller.getNextFocusedTask(closingTask)).isEqualTo(INVALID_TASK_ID) - } - - @Test - fun getNextFocusedTask_oneNonClosingTask_returnNextFocusedTask() { - val otherTask = setUpFreeformTask() - val closingTask = setUpFreeformTask() - assertThat(controller.getNextFocusedTask(closingTask)).isEqualTo(otherTask.taskId) - } - - @Test - fun getNextFocusedTask_multipleNonClosingTask_returnNextFocusedTask() { - val otherTask = setUpFreeformTask() - val otherTask2 = setUpFreeformTask() - val otherTask3 = setUpFreeformTask() - val closingTask = setUpFreeformTask() - assertThat(controller.getNextFocusedTask(closingTask)).isNotEqualTo(otherTask.taskId) - assertThat(controller.getNextFocusedTask(closingTask)).isNotEqualTo(otherTask2.taskId) - assertThat(controller.getNextFocusedTask(closingTask)).isEqualTo(otherTask3.taskId) - } - - @Test - fun instantiate_cannotEnterDesktopMode_doNotAddInitCallback() { - desktopState.canEnterDesktopMode = false - clearInvocations(shellInit) - - createController() - - verify(shellInit, never()).addInitCallback(any(), any<DesktopTasksController>()) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun showDesktopApps_allAppsInvisible_bringsToFront_desktopWallpaperDisabled() { - val homeTask = setUpHomeTask() - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - markTaskHidden(task1) - markTaskHidden(task2) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(3) - // Expect order to be from bottom: home, task1, task2 - wct.assertReorderAt(index = 0, homeTask) - wct.assertReorderAt(index = 1, task1) - wct.assertReorderAt(index = 2, task2) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun showDesktopApps_allAppsInvisible_bringsToFront_desktopWallpaperEnabled() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - markTaskHidden(task1) - markTaskHidden(task2) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(3) - // Expect order to be from bottom: wallpaper intent, task1, task2 - wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) - wct.assertReorderAt(index = 1, task1) - wct.assertReorderAt(index = 2, task2) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - /** TODO: b/353948437 - add a same test for when the multi-desk flag is enabled. */ - fun showDesktopApps_allAppsInvisible_bringNewTaskInFront_tasksAreInCorrectOrder() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - markTaskHidden(task1) - markTaskHidden(task2) - - controller.showDesktopApps( - DEFAULT_DISPLAY, - RemoteTransition(TestRemoteTransition()), - task1.taskId, - ) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(4) - // Expect order to be from bottom: wallpaper intent, task2, task1. - // Note task1 is reordered twice, once to bring all apps to the front, and once to reoder it - // to top. - wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) - wct.assertReorderAt(index = 1, task1) - wct.assertReorderAt(index = 2, task2) - wct.assertReorderAt(index = 3, task1) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - /** TODO: b/353948437 - add a same test for when the multi-desk flag is enabled. */ - fun showDesktopApps_allAppsInvisible_bringNewTaskInFront_ExceedLimit_tasksAreInCorrectOrder() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val task1 = setUpFreeformTask() - markTaskHidden(task1) - val freeformTasks = (1..MAX_TASK_LIMIT).map { _ -> setUpFreeformTask() } - freeformTasks.forEach { markTaskHidden(it) } - - controller.showDesktopApps( - DEFAULT_DISPLAY, - RemoteTransition(TestRemoteTransition()), - task1.taskId, - ) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(MAX_TASK_LIMIT + 3) - // Expect order to be from bottom: wallpaper intent, freeformTasks[1], ..., - // freeformTasks[MAX_TASK_LIMIT -1], task1. - // Note task1 is reordered twice, once to bring all apps to the front, and once to reoder it - // to top. - wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) - wct.assertReorderAt(index = 1, task1) - wct.assertReorderAt(index = MAX_TASK_LIMIT + 2, task1) - - val taskToMinimize = freeformTasks[0] - wct.assertReorder(taskToMinimize.token, toTop = true) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun showDesktopApps_deskInactive_bringsToFront_multipleDesksEnabled() { - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(Binder()) - val deskId = 0 - // Make desk inactive by activating another desk. - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 1) - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId = 1) - - controller.activateDesk(deskId, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - // Wallpaper is moved to front. - wct.assertReorderAt(index = 0, wallpaperToken) - // Desk is activated. - verify(desksOrganizer).activateDesk(wct, deskId) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun isAnyDeskActive_noTasksVisible_returnsFalse() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - markTaskHidden(task1) - markTaskHidden(task2) - - assertThat(controller.isAnyDeskActive(displayId = 0)).isFalse() - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun isAnyDeskActive_tasksActiveAndVisible_returnsTrue() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - markTaskVisible(task1) - markTaskHidden(task2) - - assertThat(controller.isAnyDeskActive(displayId = 0)).isTrue() - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, - Flags.FLAG_INCLUDE_TOP_TRANSPARENT_FULLSCREEN_TASK_IN_DESKTOP_HEURISTIC, - ) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun isAnyDeskActive_topTransparentFullscreenTask_returnsTrue() { - val topTransparentTask = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - taskRepository.setTopTransparentFullscreenTaskData(DEFAULT_DISPLAY, topTransparentTask) - - assertThat(controller.isAnyDeskActive(displayId = DEFAULT_DISPLAY)).isTrue() - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun showDesktopApps_onSecondaryDisplay_desktopWallpaperEnabled_perDisplayWallpaperEnabled_bringsTasksToFront() { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - setUpHomeTask(SECOND_DISPLAY) - val task1 = setUpFreeformTask(SECOND_DISPLAY) - val task2 = setUpFreeformTask(SECOND_DISPLAY) - markTaskHidden(task1) - markTaskHidden(task2) - - assertThat(taskRepository.getExpandedTasksOrdered(SECOND_DISPLAY)).contains(task1.taskId) - assertThat(taskRepository.getExpandedTasksOrdered(SECOND_DISPLAY)).contains(task2.taskId) - controller.showDesktopApps(SECOND_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - wct.assertReorder(task1) - wct.assertReorder(task2) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun showDesktopApps_onSecondaryDisplay_desktopWallpaperEnabled_perDisplayWallpaperEnabled_multipleDesksEnabled_bringsDeskToFront() { - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(Binder()) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = 2) - setUpHomeTask(SECOND_DISPLAY) - - controller.showDesktopApps(SECOND_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - verify(desksOrganizer).activateDesk(wct, deskId = 2) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - fun showDesktopApps_onSecondaryDisplay_desktopWallpaperEnabled_perDisplayWallpaperEnabled_shouldShowWallpaper() { - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(Binder()) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - setUpHomeTask(SECOND_DISPLAY) - - controller.showDesktopApps(SECOND_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - wct.assertPendingIntent(desktopWallpaperIntent) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY) - fun showDesktopApps_onSecondaryDisplay_desktopWallpaperEnabled_shouldNotShowWallpaper() { - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(Binder()) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val homeTask = setUpHomeTask(SECOND_DISPLAY) - - controller.showDesktopApps(SECOND_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - wct.assertWithoutPendingIntent(desktopWallpaperIntent) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun showDesktopApps_appsAlreadyVisible_bringsToFront_desktopWallpaperDisabled() { - val homeTask = setUpHomeTask() - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - markTaskVisible(task1) - markTaskVisible(task2) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(3) - // Expect order to be from bottom: home, task1, task2 - wct.assertReorderAt(index = 0, homeTask) - wct.assertReorderAt(index = 1, task1) - wct.assertReorderAt(index = 2, task2) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun showDesktopApps_onSecondaryDisplay_desktopWallpaperDisabled_shouldNotMoveLauncher() { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val homeTask = setUpHomeTask(SECOND_DISPLAY) - val task1 = setUpFreeformTask(SECOND_DISPLAY) - val task2 = setUpFreeformTask(SECOND_DISPLAY) - markTaskHidden(task1) - markTaskHidden(task2) - - controller.showDesktopApps(SECOND_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(3) - // Expect order to be from bottom: home, task1, task2 - wct.assertReorderAt(index = 0, homeTask) - wct.assertReorderAt(index = 1, task1) - wct.assertReorderAt(index = 2, task2) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun showDesktopApps_appsAlreadyVisible_bringsToFront_desktopWallpaperEnabled() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - markTaskVisible(task1) - markTaskVisible(task2) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(3) - // Expect order to be from bottom: wallpaper intent, task1, task2 - wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) - wct.assertReorderAt(index = 1, task1) - wct.assertReorderAt(index = 2, task2) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun showDesktopApps_someAppsInvisible_reordersAll_desktopWallpaperDisabled() { - val homeTask = setUpHomeTask() - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - markTaskHidden(task1) - markTaskVisible(task2) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(3) - // Expect order to be from bottom: home, task1, task2 - wct.assertReorderAt(index = 0, homeTask) - wct.assertReorderAt(index = 1, task1) - wct.assertReorderAt(index = 2, task2) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun showDesktopApps_someAppsInvisible_desktopWallpaperEnabled_reordersOnlyFreeformTasks() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - markTaskHidden(task1) - markTaskVisible(task2) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(3) - // Expect order to be from bottom: wallpaper intent, task1, task2 - wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) - wct.assertReorderAt(index = 1, task1) - wct.assertReorderAt(index = 2, task2) - } - - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun showDesktopApps_someAppsInvisible_desktopWallpaperEnabled_reordersAll() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - markTaskHidden(task1) - markTaskVisible(task2) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(3) - // Expect order to be from bottom: wallpaper intent, task1, task2 - wct.assertReorderAt(index = 0, wallpaperToken) - wct.assertReorderAt(index = 1, task1) - wct.assertReorderAt(index = 2, task2) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun showDesktopApps_noActiveTasks_reorderHomeToTop_desktopWallpaperDisabled() { - val homeTask = setUpHomeTask() - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(1) - wct.assertReorderAt(index = 0, homeTask) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun showDesktopApps_noActiveTasks_desktopWallpaperEnabled_addsDesktopWallpaper() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - wct.assertPendingIntentAt(index = 0, desktopWallpaperIntent) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun showDesktopApps_noActiveTasks_desktopWallpaperEnabled_reordersDesktopWallpaper() { - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - wct.assertReorderAt(index = 0, wallpaperToken) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun showDesktopApps_twoDisplays_bringsToFrontOnlyOneDisplay_desktopWallpaperDisabled() { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val homeTaskDefaultDisplay = setUpHomeTask(DEFAULT_DISPLAY) - val taskDefaultDisplay = setUpFreeformTask(DEFAULT_DISPLAY) - setUpHomeTask(SECOND_DISPLAY) - val taskSecondDisplay = setUpFreeformTask(SECOND_DISPLAY) - markTaskHidden(taskDefaultDisplay) - markTaskHidden(taskSecondDisplay) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(2) - // Expect order to be from bottom: home, task - wct.assertReorderAt(index = 0, homeTaskDefaultDisplay) - wct.assertReorderAt(index = 1, taskDefaultDisplay) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun showDesktopApps_twoDisplays_bringsToFrontOnlyOneDisplay_desktopWallpaperEnabled() { - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(Binder()) - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val homeTaskDefaultDisplay = setUpHomeTask(DEFAULT_DISPLAY) - val taskDefaultDisplay = setUpFreeformTask(DEFAULT_DISPLAY) - setUpHomeTask(SECOND_DISPLAY) - val taskSecondDisplay = setUpFreeformTask(SECOND_DISPLAY) - markTaskHidden(taskDefaultDisplay) - markTaskHidden(taskSecondDisplay) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - // Move home to front - wct.assertReorderAt(index = 0, homeTaskDefaultDisplay) - // Add desktop wallpaper activity - wct.assertPendingIntentAt(index = 1, desktopWallpaperIntent) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun showDesktopApps_twoDisplays_bringsToFrontOnlyOneDisplayTasks_desktopWallpaperEnabled_multiDesksDisabled() { - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(Binder()) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val homeTaskDefaultDisplay = setUpHomeTask(DEFAULT_DISPLAY) - val taskDefaultDisplay = setUpFreeformTask(DEFAULT_DISPLAY) - setUpHomeTask(SECOND_DISPLAY) - val taskSecondDisplay = setUpFreeformTask(SECOND_DISPLAY) - markTaskHidden(taskDefaultDisplay) - markTaskHidden(taskSecondDisplay) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - // Move freeform task to front - wct.assertReorderAt(index = 2, taskDefaultDisplay) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun showDesktopApps_twoDisplays_bringsToFrontOnlyOneDisplayTasks_desktopWallpaperEnabled_multiDesksEnabled() { - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(Binder()) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val homeTaskDefaultDisplay = setUpHomeTask(DEFAULT_DISPLAY) - val taskDefaultDisplay = setUpFreeformTask(DEFAULT_DISPLAY) - setUpHomeTask(SECOND_DISPLAY) - val taskSecondDisplay = setUpFreeformTask(SECOND_DISPLAY) - markTaskHidden(taskDefaultDisplay) - markTaskHidden(taskSecondDisplay) - - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - // Move desktop tasks to front - verify(desksOrganizer).activateDesk(wct, deskId = DEFAULT_DISPLAY) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun showDesktopApps_desktopWallpaperDisabled_dontReorderMinimizedTask() { - val homeTask = setUpHomeTask() - val freeformTask = setUpFreeformTask() - val minimizedTask = setUpFreeformTask() - - markTaskHidden(freeformTask) - markTaskHidden(minimizedTask) - taskRepository.minimizeTask(DEFAULT_DISPLAY, minimizedTask.taskId) - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(2) - // Reorder home and freeform task to top, don't reorder the minimized task - wct.assertReorderAt(index = 0, homeTask, toTop = true) - wct.assertReorderAt(index = 1, freeformTask, toTop = true) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - /** TODO: b/362720497 - add multi-desk version when minimization is implemented. */ - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun showDesktopApps_desktopWallpaperEnabled_dontReorderMinimizedTask() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val homeTask = setUpHomeTask() - val freeformTask = setUpFreeformTask() - val minimizedTask = setUpFreeformTask() - - markTaskHidden(freeformTask) - markTaskHidden(minimizedTask) - taskRepository.minimizeTask(DEFAULT_DISPLAY, minimizedTask.taskId) - controller.showDesktopApps(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.hierarchyOps).hasSize(3) - // Move home to front - wct.assertReorderAt(index = 0, homeTask, toTop = true) - // Add desktop wallpaper activity - wct.assertPendingIntentAt(index = 1, desktopWallpaperIntent) - // Reorder freeform task to top, don't reorder the minimized task - wct.assertReorderAt(index = 2, freeformTask, toTop = true) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun isAnyDeskActive_noTasks_returnsFalse() { - assertThat(controller.isAnyDeskActive(DEFAULT_DISPLAY)).isFalse() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun isAnyDeskActive_noActiveDesk_returnsFalse() { - taskRepository.setDeskInactive(deskId = 0) - - assertThat(controller.isAnyDeskActive(DEFAULT_DISPLAY)).isFalse() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun isAnyDeskActive_withActiveDesk_returnsTrue() { - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - - assertThat(controller.isAnyDeskActive(DEFAULT_DISPLAY)).isTrue() - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun isAnyDeskActive_twoTasks_bothVisible_returnsTrue() { - setUpHomeTask() - - setUpFreeformTask().also(::markTaskVisible) - setUpFreeformTask().also(::markTaskVisible) - - assertThat(controller.isAnyDeskActive(DEFAULT_DISPLAY)).isTrue() - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun isInDesktop_twoTasks_oneVisible_returnsTrue() { - setUpHomeTask() - - setUpFreeformTask().also(::markTaskVisible) - setUpFreeformTask().also(::markTaskHidden) - - assertThat(controller.isAnyDeskActive(DEFAULT_DISPLAY)).isTrue() - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun isAnyDeskActive_twoTasksVisibleOnDifferentDisplays_returnsTrue() { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - taskRepository.setActiveDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - setUpHomeTask() - - setUpFreeformTask(DEFAULT_DISPLAY).also(::markTaskVisible) - setUpFreeformTask(SECOND_DISPLAY).also(::markTaskVisible) - - assertThat(controller.isAnyDeskActive(SECOND_DISPLAY)).isTrue() - } - - @Test - fun addMoveToDeskTaskChanges_gravityLeft_noBoundsApplied() { - setUpLandscapeDisplay() - val task = setUpFullscreenTask(gravity = Gravity.LEFT) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(finalBounds).isNull() - } - - @Test - fun addMoveToDeskTaskChanges_gravityRight_noBoundsApplied() { - setUpLandscapeDisplay() - val task = setUpFullscreenTask(gravity = Gravity.RIGHT) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(finalBounds).isNull() - } - - @Test - fun addMoveToDeskTaskChanges_gravityTop_noBoundsApplied() { - setUpLandscapeDisplay() - val task = setUpFullscreenTask(gravity = Gravity.TOP) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(finalBounds).isNull() - } - - @Test - fun addMoveToDeskTaskChanges_gravityBottom_noBoundsApplied() { - setUpLandscapeDisplay() - val task = setUpFullscreenTask(gravity = Gravity.BOTTOM) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(finalBounds).isNull() - } - - @Test - @EnableFlags(Flags.FLAG_INHERIT_TASK_BOUNDS_FOR_TRAMPOLINE_TASK_LAUNCHES) - fun addMoveToDeskTaskChanges_newTaskInstance_inheritsClosingInstanceBounds() { - // Setup existing task. - val existingTask = setUpFreeformTask(active = true) - val testComponent = ComponentName(/* package */ "test.package", /* class */ "test.class") - existingTask.topActivity = testComponent - existingTask.configuration.windowConfiguration.setBounds(Rect(0, 0, 500, 500)) - // Set up new instance of already existing task. - val launchingTask = - setUpFullscreenTask().apply { - topActivityInfo = ActivityInfo().apply { launchMode = LAUNCH_SINGLE_INSTANCE } - } - launchingTask.topActivity = testComponent - - // Move new instance to desktop. By default multi instance is not supported so first - // instance will close. - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, launchingTask, deskId = 0) - - // New instance should inherit task bounds of old instance. - assertThat(findBoundsChange(wct, launchingTask)) - .isEqualTo(existingTask.configuration.windowConfiguration.bounds) - } - - @Test - @EnableFlags(Flags.FLAG_INHERIT_TASK_BOUNDS_FOR_TRAMPOLINE_TASK_LAUNCHES) - fun handleRequest_newTaskInstance_inheritsClosingInstanceBounds() { - setUpLandscapeDisplay() - // Setup existing task. - val existingTask = setUpFreeformTask(active = true) - val testComponent = ComponentName(/* package */ "test.package", /* class */ "test.class") - existingTask.topActivity = testComponent - existingTask.configuration.windowConfiguration.setBounds(Rect(0, 0, 500, 500)) - // Set up new instance of already existing task. - val launchingTask = - setUpFreeformTask(active = false).apply { - topActivityInfo = ActivityInfo().apply { launchMode = LAUNCH_SINGLE_INSTANCE } - } - taskRepository.removeTask(launchingTask.taskId) - launchingTask.topActivity = testComponent - - // Move new instance to desktop. By default multi instance is not supported so first - // instance will close. - val wct = controller.handleRequest(Binder(), createTransition(launchingTask)) - - assertNotNull(wct, "should handle request") - val finalBounds = findBoundsChange(wct, launchingTask) - // New instance should inherit task bounds of old instance. - assertThat(finalBounds).isEqualTo(existingTask.configuration.windowConfiguration.bounds) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun handleRequest_newFreeformTaskLaunch_cascadeApplied() { - val stableBounds = - Rect(0, 0, DISPLAY_DIMENSION_LONG, DISPLAY_DIMENSION_SHORT - TASKBAR_FRAME_HEIGHT) - whenever(displayLayout.getStableBounds(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(stableBounds) - } - setUpLandscapeDisplay() - - setUpFreeformTask(bounds = DEFAULT_LANDSCAPE_BOUNDS) - val freeformTask = setUpFreeformTask(bounds = DEFAULT_LANDSCAPE_BOUNDS, active = false) - - val wct = controller.handleRequest(Binder(), createTransition(freeformTask)) - - assertNotNull(wct, "should handle request") - val finalBounds = findBoundsChange(wct, freeformTask) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.BottomRight) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS, Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_newFreeformTaskLaunch_newDesk_desksCascadeIndependently() { - setUpLandscapeDisplay() - val stableBounds = - Rect(0, 0, DISPLAY_DIMENSION_LONG, DISPLAY_DIMENSION_SHORT - TASKBAR_FRAME_HEIGHT) - whenever(displayLayout.getStableBounds(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(stableBounds) + } + + @Test + fun moveToDesktop_topActivityTranslucent_doesNothing() { + setFlagsRule.enableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) + val task = + setUpFullscreenTask().apply { + isTopActivityTransparent = true + numActivities = 1 } - // Launch freeform tasks in default desk. - setUpFreeformTask(bounds = DEFAULT_LANDSCAPE_BOUNDS) - val freeformTask = setUpFreeformTask(bounds = DEFAULT_LANDSCAPE_BOUNDS, active = false) - controller.handleRequest(Binder(), createTransition(freeformTask)) + controller.moveToDesktop(task, transitionSource = UNKNOWN) + verifyEnterDesktopWCTNotExecuted() + } - // Create new active desk and launch new task. - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 2) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 2) - val newDeskTask = createFullscreenTask(displayId = DEFAULT_DISPLAY) - val wct = controller.handleRequest(Binder(), createTransition(newDeskTask)) + @Test + fun moveToDesktop_systemUIActivity_doesNothing() { + val task = setUpFullscreenTask() - // New task should be cascaded independently of tasks in other desks. - assertNotNull(wct, "should handle request") - val finalBounds = findBoundsChange(wct, newDeskTask) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.Center) + // Set task as systemUI package + val systemUIPackageName = context.resources.getString( + com.android.internal.R.string.config_systemUi) + val baseComponent = ComponentName(systemUIPackageName, /* class */ "") + task.baseActivity = baseComponent + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + verifyEnterDesktopWCTNotExecuted() + } + + @Test + fun moveToDesktop_deviceSupported_taskIsMovedToDesktop() { + val task = setUpFullscreenTask() + + controller.moveToDesktop(task, transitionSource = UNKNOWN) + + val wct = getLatestEnterDesktopWct() + assertThat(wct.changes[task.token.asBinder()]?.windowingMode).isEqualTo(WINDOWING_MODE_FREEFORM) + } + + @Test + @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun moveToDesktop_otherFreeformTasksBroughtToFront_desktopWallpaperDisabled() { + val homeTask = setUpHomeTask() + val freeformTask = setUpFreeformTask() + val fullscreenTask = setUpFullscreenTask() + markTaskHidden(freeformTask) + + controller.moveToDesktop(fullscreenTask, transitionSource = UNKNOWN) + + with(getLatestEnterDesktopWct()) { + // Operations should include home task, freeform task + assertThat(hierarchyOps).hasSize(3) + assertReorderSequence(homeTask, freeformTask, fullscreenTask) + assertThat(changes[fullscreenTask.token.asBinder()]?.windowingMode) + .isEqualTo(WINDOWING_MODE_FREEFORM) } + } - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun handleRequest_freeformTaskAlreadyExistsInDesktopMode_cascadeNotApplied() { - setUpLandscapeDisplay() - val stableBounds = - Rect(0, 0, DISPLAY_DIMENSION_LONG, DISPLAY_DIMENSION_SHORT - TASKBAR_FRAME_HEIGHT) - whenever(displayLayout.getStableBounds(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(stableBounds) + @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun moveToDesktop_otherFreeformTasksBroughtToFront_desktopWallpaperEnabled() { + val freeformTask = setUpFreeformTask() + val fullscreenTask = setUpFullscreenTask() + markTaskHidden(freeformTask) + + controller.moveToDesktop(fullscreenTask, transitionSource = UNKNOWN) + + with(getLatestEnterDesktopWct()) { + // Operations should include wallpaper intent, freeform task, fullscreen task + assertThat(hierarchyOps).hasSize(3) + assertPendingIntentAt(index = 0, desktopWallpaperIntent) + assertReorderAt(index = 1, freeformTask) + assertReorderAt(index = 2, fullscreenTask) + assertThat(changes[fullscreenTask.token.asBinder()]?.windowingMode) + .isEqualTo(WINDOWING_MODE_FREEFORM) + } + } + + @Test + fun moveToDesktop_onlyFreeformTasksFromCurrentDisplayBroughtToFront() { + setUpHomeTask(displayId = DEFAULT_DISPLAY) + val freeformTaskDefault = setUpFreeformTask(displayId = DEFAULT_DISPLAY) + val fullscreenTaskDefault = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) + markTaskHidden(freeformTaskDefault) + + val homeTaskSecond = setUpHomeTask(displayId = SECOND_DISPLAY) + val freeformTaskSecond = setUpFreeformTask(displayId = SECOND_DISPLAY) + markTaskHidden(freeformTaskSecond) + + controller.moveToDesktop(fullscreenTaskDefault, transitionSource = UNKNOWN) + + with(getLatestEnterDesktopWct()) { + // Check that hierarchy operations do not include tasks from second display + assertThat(hierarchyOps.map { it.container }).doesNotContain(homeTaskSecond.token.asBinder()) + assertThat(hierarchyOps.map { it.container }) + .doesNotContain(freeformTaskSecond.token.asBinder()) + } + } + + @Test + fun moveToDesktop_splitTaskExitsSplit() { + val task = setUpSplitScreenTask() + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(wct.changes[task.token.asBinder()]?.windowingMode).isEqualTo(WINDOWING_MODE_FREEFORM) + verify(splitScreenController) + .prepareExitSplitScreen(any(), anyInt(), eq(SplitScreenController.EXIT_REASON_DESKTOP_MODE)) + } + + @Test + fun moveToDesktop_fullscreenTaskDoesNotExitSplit() { + val task = setUpFullscreenTask() + controller.moveToDesktop(task, transitionSource = UNKNOWN) + val wct = getLatestEnterDesktopWct() + assertThat(wct.changes[task.token.asBinder()]?.windowingMode).isEqualTo(WINDOWING_MODE_FREEFORM) + verify(splitScreenController, never()) + .prepareExitSplitScreen(any(), anyInt(), eq(SplitScreenController.EXIT_REASON_DESKTOP_MODE)) + } + + @Test + fun moveToDesktop_bringsTasksOverLimit_dontShowBackTask() { + val taskLimit = desktopTasksLimiter.getMaxTaskLimit() + val homeTask = setUpHomeTask() + val freeformTasks = (1..taskLimit).map { _ -> setUpFreeformTask() } + val newTask = setUpFullscreenTask() + + controller.moveToDesktop(newTask, transitionSource = UNKNOWN) + + val wct = getLatestEnterDesktopWct() + assertThat(wct.hierarchyOps.size).isEqualTo(taskLimit + 1) // visible tasks + home + wct.assertReorderAt(0, homeTask) + for (i in 1..<taskLimit) { // Skipping freeformTasks[0] + wct.assertReorderAt(index = i, task = freeformTasks[i]) + } + wct.assertReorderAt(taskLimit, newTask) + } + + @Test + fun moveToFullscreen_tdaFullscreen_windowingModeSetToUndefined() { + val task = setUpFreeformTask() + val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! + tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN + controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) + val wct = getLatestExitDesktopWct() + assertThat(wct.changes[task.token.asBinder()]?.windowingMode) + .isEqualTo(WINDOWING_MODE_UNDEFINED) + } + + @Test + fun moveToFullscreen_tdaFreeform_windowingModeSetToFullscreen() { + val task = setUpFreeformTask() + val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! + tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM + controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) + val wct = getLatestExitDesktopWct() + assertThat(wct.changes[task.token.asBinder()]?.windowingMode) + .isEqualTo(WINDOWING_MODE_FULLSCREEN) + } + + @Test + fun moveToFullscreen_nonExistentTask_doesNothing() { + controller.moveToFullscreen(999, transitionSource = UNKNOWN) + verifyExitDesktopWCTNotExecuted() + } + + @Test + fun moveToFullscreen_secondDisplayTaskHasFreeform_secondDisplayNotAffected() { + val taskDefaultDisplay = setUpFreeformTask(displayId = DEFAULT_DISPLAY) + val taskSecondDisplay = setUpFreeformTask(displayId = SECOND_DISPLAY) + + controller.moveToFullscreen(taskDefaultDisplay.taskId, transitionSource = UNKNOWN) + + with(getLatestExitDesktopWct()) { + assertThat(changes.keys).contains(taskDefaultDisplay.token.asBinder()) + assertThat(changes.keys).doesNotContain(taskSecondDisplay.token.asBinder()) + } + } + + @Test + fun moveTaskToFront_postsWctWithReorderOp() { + val task1 = setUpFreeformTask() + setUpFreeformTask() + + controller.moveTaskToFront(task1) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT) + assertThat(wct.hierarchyOps).hasSize(1) + wct.assertReorderAt(index = 0, task1) + } + + @Test + fun moveTaskToFront_bringsTasksOverLimit_minimizesBackTask() { + val taskLimit = desktopTasksLimiter.getMaxTaskLimit() + setUpHomeTask() + val freeformTasks = (1..taskLimit + 1).map { _ -> setUpFreeformTask() } + + controller.moveTaskToFront(freeformTasks[0]) + + val wct = getLatestWct(type = TRANSIT_TO_FRONT) + assertThat(wct.hierarchyOps.size).isEqualTo(2) // move-to-front + minimize + wct.assertReorderAt(0, freeformTasks[0], toTop = true) + wct.assertReorderAt(1, freeformTasks[1], toTop = false) + } + + @Test + fun moveToNextDisplay_noOtherDisplays() { + whenever(rootTaskDisplayAreaOrganizer.displayIds).thenReturn(intArrayOf(DEFAULT_DISPLAY)) + val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) + controller.moveToNextDisplay(task.taskId) + verifyWCTNotExecuted() + } + + @Test + fun moveToNextDisplay_moveFromFirstToSecondDisplay() { + // Set up two display ids + whenever(rootTaskDisplayAreaOrganizer.displayIds) + .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) + // Create a mock for the target display area: second display + val secondDisplayArea = DisplayAreaInfo(MockToken().token(), SECOND_DISPLAY, 0) + whenever(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(SECOND_DISPLAY)) + .thenReturn(secondDisplayArea) + + val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) + controller.moveToNextDisplay(task.taskId) + with(getLatestWct(type = TRANSIT_CHANGE)) { + assertThat(hierarchyOps).hasSize(1) + assertThat(hierarchyOps[0].container).isEqualTo(task.token.asBinder()) + assertThat(hierarchyOps[0].isReparent).isTrue() + assertThat(hierarchyOps[0].newParent).isEqualTo(secondDisplayArea.token.asBinder()) + assertThat(hierarchyOps[0].toTop).isTrue() + } + } + + @Test + fun moveToNextDisplay_moveFromSecondToFirstDisplay() { + // Set up two display ids + whenever(rootTaskDisplayAreaOrganizer.displayIds) + .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) + // Create a mock for the target display area: default display + val defaultDisplayArea = DisplayAreaInfo(MockToken().token(), DEFAULT_DISPLAY, 0) + whenever(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) + .thenReturn(defaultDisplayArea) + + val task = setUpFreeformTask(displayId = SECOND_DISPLAY) + controller.moveToNextDisplay(task.taskId) + + with(getLatestWct(type = TRANSIT_CHANGE)) { + assertThat(hierarchyOps).hasSize(1) + assertThat(hierarchyOps[0].container).isEqualTo(task.token.asBinder()) + assertThat(hierarchyOps[0].isReparent).isTrue() + assertThat(hierarchyOps[0].newParent).isEqualTo(defaultDisplayArea.token.asBinder()) + assertThat(hierarchyOps[0].toTop).isTrue() + } + } + + @Test + fun getTaskWindowingMode() { + val fullscreenTask = setUpFullscreenTask() + val freeformTask = setUpFreeformTask() + + assertThat(controller.getTaskWindowingMode(fullscreenTask.taskId)) + .isEqualTo(WINDOWING_MODE_FULLSCREEN) + assertThat(controller.getTaskWindowingMode(freeformTask.taskId)) + .isEqualTo(WINDOWING_MODE_FREEFORM) + assertThat(controller.getTaskWindowingMode(999)).isEqualTo(WINDOWING_MODE_UNDEFINED) + } + + @Test + fun onDesktopWindowClose_noActiveTasks() { + val wct = WindowContainerTransaction() + controller.onDesktopWindowClose(wct, 1 /* taskId */) + // Doesn't modify transaction + assertThat(wct.hierarchyOps).isEmpty() + } + + @Test + fun onDesktopWindowClose_singleActiveTask_noWallpaperActivityToken() { + val task = setUpFreeformTask() + val wct = WindowContainerTransaction() + controller.onDesktopWindowClose(wct, task.taskId) + // Doesn't modify transaction + assertThat(wct.hierarchyOps).isEmpty() + } + + @Test + fun onDesktopWindowClose_singleActiveTask_hasWallpaperActivityToken() { + val task = setUpFreeformTask() + val wallpaperToken = MockToken().token() + desktopModeTaskRepository.wallpaperActivityToken = wallpaperToken + + val wct = WindowContainerTransaction() + controller.onDesktopWindowClose(wct, task.taskId) + // Adds remove wallpaper operation + wct.assertRemoveAt(index = 0, wallpaperToken) + } + + @Test + fun onDesktopWindowClose_multipleActiveTasks() { + val task1 = setUpFreeformTask() + setUpFreeformTask() + val wallpaperToken = MockToken().token() + desktopModeTaskRepository.wallpaperActivityToken = wallpaperToken + + val wct = WindowContainerTransaction() + controller.onDesktopWindowClose(wct, task1.taskId) + // Doesn't modify transaction + assertThat(wct.hierarchyOps).isEmpty() + } + + @Test + fun handleRequest_fullscreenTask_freeformVisible_returnSwitchToFreeformWCT() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val freeformTask = setUpFreeformTask() + markTaskVisible(freeformTask) + val fullscreenTask = createFullscreenTask() + + val result = controller.handleRequest(Binder(), createTransition(fullscreenTask)) + assertThat(result?.changes?.get(fullscreenTask.token.asBinder())?.windowingMode) + .isEqualTo(WINDOWING_MODE_FREEFORM) + } + + @Test + fun handleRequest_fullscreenTaskToFreeform_underTaskLimit_dontMinimize() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val freeformTask = setUpFreeformTask() + markTaskVisible(freeformTask) + val fullscreenTask = createFullscreenTask() + + val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) + + // Make sure we only reorder the new task to top (we don't reorder the old task to bottom) + assertThat(wct?.hierarchyOps?.size).isEqualTo(1) + wct!!.assertReorderAt(0, fullscreenTask, toTop = true) + } + + @Test + fun handleRequest_fullscreenTaskToFreeform_bringsTasksOverLimit_otherTaskIsMinimized() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val taskLimit = desktopTasksLimiter.getMaxTaskLimit() + val freeformTasks = (1..taskLimit).map { _ -> setUpFreeformTask() } + freeformTasks.forEach { markTaskVisible(it) } + val fullscreenTask = createFullscreenTask() + + val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) + + // Make sure we reorder the new task to top, and the back task to the bottom + assertThat(wct!!.hierarchyOps.size).isEqualTo(2) + wct.assertReorderAt(0, fullscreenTask, toTop = true) + wct.assertReorderAt(1, freeformTasks[0], toTop = false) + } + + @Test + fun handleRequest_fullscreenTask_freeformNotVisible_returnNull() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val freeformTask = setUpFreeformTask() + markTaskHidden(freeformTask) + val fullscreenTask = createFullscreenTask() + assertThat(controller.handleRequest(Binder(), createTransition(fullscreenTask))).isNull() + } + + @Test + fun handleRequest_fullscreenTask_noOtherTasks_returnNull() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val fullscreenTask = createFullscreenTask() + assertThat(controller.handleRequest(Binder(), createTransition(fullscreenTask))).isNull() + } + + @Test + fun handleRequest_fullscreenTask_freeformTaskOnOtherDisplay_returnNull() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val fullscreenTaskDefaultDisplay = createFullscreenTask(displayId = DEFAULT_DISPLAY) + createFreeformTask(displayId = SECOND_DISPLAY) + + val result = controller.handleRequest(Binder(), createTransition(fullscreenTaskDefaultDisplay)) + assertThat(result).isNull() + } + + @Test + fun handleRequest_freeformTask_freeformVisible_aboveTaskLimit_minimize() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val taskLimit = desktopTasksLimiter.getMaxTaskLimit() + val freeformTasks = (1..taskLimit).map { _ -> setUpFreeformTask() } + freeformTasks.forEach { markTaskVisible(it) } + val newFreeformTask = createFreeformTask() + + val wct = controller.handleRequest(Binder(), createTransition(newFreeformTask, TRANSIT_OPEN)) + + assertThat(wct?.hierarchyOps?.size).isEqualTo(1) + wct!!.assertReorderAt(0, freeformTasks[0], toTop = false) // Reorder to the bottom + } + + @Test + fun handleRequest_freeformTask_freeformNotVisible_reorderedToTop() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val freeformTask1 = setUpFreeformTask() + markTaskHidden(freeformTask1) + + val freeformTask2 = createFreeformTask() + val result = + controller.handleRequest(Binder(), createTransition(freeformTask2, type = TRANSIT_TO_FRONT)) + + assertThat(result?.hierarchyOps?.size).isEqualTo(2) + result!!.assertReorderAt(1, freeformTask2, toTop = true) + } + + @Test + fun handleRequest_freeformTask_noOtherTasks_reorderedToTop() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val task = createFreeformTask() + val result = controller.handleRequest(Binder(), createTransition(task)) + + assertThat(result?.hierarchyOps?.size).isEqualTo(1) + result!!.assertReorderAt(0, task, toTop = true) + } + + @Test + fun handleRequest_freeformTask_freeformOnOtherDisplayOnly_reorderedToTop() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val taskDefaultDisplay = createFreeformTask(displayId = DEFAULT_DISPLAY) + val taskSecondDisplay = createFreeformTask(displayId = SECOND_DISPLAY) + + val result = controller.handleRequest(Binder(), createTransition(taskDefaultDisplay)) + assertThat(result?.hierarchyOps?.size).isEqualTo(1) + result!!.assertReorderAt(0, taskDefaultDisplay, toTop = true) + } + + @Test + fun handleRequest_freeformTask_alreadyInDesktop_noOverrideDensity_noConfigDensityChange() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + whenever(DesktopModeStatus.useDesktopOverrideDensity()).thenReturn(false) + + val freeformTask1 = setUpFreeformTask() + markTaskVisible(freeformTask1) + + val freeformTask2 = createFreeformTask() + val result = + controller.handleRequest(freeformTask2.token.asBinder(), createTransition(freeformTask2)) + assertFalse(result.anyDensityConfigChange(freeformTask2.token)) + } + + @Test + fun handleRequest_freeformTask_alreadyInDesktop_overrideDensity_hasConfigDensityChange() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + whenever(DesktopModeStatus.useDesktopOverrideDensity()).thenReturn(true) + + val freeformTask1 = setUpFreeformTask() + markTaskVisible(freeformTask1) + + val freeformTask2 = createFreeformTask() + val result = + controller.handleRequest(freeformTask2.token.asBinder(), createTransition(freeformTask2)) + assertTrue(result.anyDensityConfigChange(freeformTask2.token)) + } + + @Test + fun handleRequest_notOpenOrToFrontTransition_returnNull() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val task = + TestRunningTaskInfoBuilder() + .setActivityType(ACTIVITY_TYPE_STANDARD) + .setWindowingMode(WINDOWING_MODE_FULLSCREEN) + .build() + val transition = createTransition(task = task, type = WindowManager.TRANSIT_CLOSE) + val result = controller.handleRequest(Binder(), transition) + assertThat(result).isNull() + } + + @Test + fun handleRequest_noTriggerTask_returnNull() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + assertThat(controller.handleRequest(Binder(), createTransition(task = null))).isNull() + } + + @Test + fun handleRequest_triggerTaskNotStandard_returnNull() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + val task = TestRunningTaskInfoBuilder().setActivityType(ACTIVITY_TYPE_HOME).build() + assertThat(controller.handleRequest(Binder(), createTransition(task))).isNull() + } + + @Test + fun handleRequest_triggerTaskNotFullscreenOrFreeform_returnNull() { + assumeTrue(ENABLE_SHELL_TRANSITIONS) + + val task = + TestRunningTaskInfoBuilder() + .setActivityType(ACTIVITY_TYPE_STANDARD) + .setWindowingMode(WINDOWING_MODE_MULTI_WINDOW) + .build() + assertThat(controller.handleRequest(Binder(), createTransition(task))).isNull() + } + + @Test + fun handleRequest_recentsAnimationRunning_returnNull() { + // Set up a visible freeform task so a fullscreen task should be converted to freeform + val freeformTask = setUpFreeformTask() + markTaskVisible(freeformTask) + + // Mark recents animation running + recentsTransitionStateListener.onAnimationStateChanged(true) + + // Open a fullscreen task, check that it does not result in a WCT with changes to it + val fullscreenTask = createFullscreenTask() + assertThat(controller.handleRequest(Binder(), createTransition(fullscreenTask))).isNull() + } + + @Test + fun handleRequest_shouldLaunchAsModal_returnSwitchToFullscreenWCT() { + setFlagsRule.enableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) + val task = + setUpFreeformTask().apply { + isTopActivityTransparent = true + numActivities = 1 } - setUpFreeformTask(bounds = DEFAULT_LANDSCAPE_BOUNDS) - val freeformTask = setUpFreeformTask(bounds = DEFAULT_LANDSCAPE_BOUNDS) - - val wct = controller.handleRequest(Binder(), createTransition(freeformTask)) - - assertNull(wct, "should not handle request") - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun addMoveToDeskTaskChanges_activeButClosingTask_cascadeNotApplied() { - setUpLandscapeDisplay() - val stableBounds = Rect().also { displayLayout.getStableBoundsForDesktopMode(it) } - - val closingTask = setUpFreeformTask(bounds = DEFAULT_LANDSCAPE_BOUNDS) - taskRepository.addClosingTask( - displayId = DEFAULT_DISPLAY, - deskId = 0, - taskId = closingTask.taskId, - ) - - val task = setUpFullscreenTask() - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.Center) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun addMoveToDeskTaskChanges_positionBottomRight() { - setUpLandscapeDisplay() - val stableBounds = Rect().also { displayLayout.getStableBoundsForDesktopMode(it) } - - setUpFreeformTask(bounds = DEFAULT_LANDSCAPE_BOUNDS) - - val task = setUpFullscreenTask() - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.BottomRight) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun addMoveToDeskTaskChanges_positionTopLeft() { - setUpLandscapeDisplay() - val stableBounds = Rect().also { displayLayout.getStableBoundsForDesktopMode(it) } - - addFreeformTaskAtPosition(DesktopTaskPosition.BottomRight, stableBounds) - - val task = setUpFullscreenTask() - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.TopLeft) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun addMoveToDeskTaskChanges_positionBottomLeft() { - setUpLandscapeDisplay() - val stableBounds = Rect().also { displayLayout.getStableBoundsForDesktopMode(it) } - - addFreeformTaskAtPosition(DesktopTaskPosition.TopLeft, stableBounds) - - val task = setUpFullscreenTask() - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.BottomLeft) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun addMoveToDeskTaskChanges_positionTopRight() { - setUpLandscapeDisplay() - val stableBounds = Rect().also { displayLayout.getStableBoundsForDesktopMode(it) } - - addFreeformTaskAtPosition(DesktopTaskPosition.BottomLeft, stableBounds) - - val task = setUpFullscreenTask() - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.TopRight) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun addMoveToDeskTaskChanges_positionResetsToCenter() { - setUpLandscapeDisplay() - val stableBounds = Rect().also { displayLayout.getStableBoundsForDesktopMode(it) } - - addFreeformTaskAtPosition(DesktopTaskPosition.TopRight, stableBounds) - - val task = setUpFullscreenTask() - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.Center) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun addMoveToDeskTaskChanges_lastWindowSnapLeft_positionResetsToCenter() { - setUpLandscapeDisplay() - val stableBounds = Rect().also { displayLayout.getStableBoundsForDesktopMode(it) } - - // Add freeform task with half display size snap bounds at left side. - setUpFreeformTask( - bounds = Rect(stableBounds.left, stableBounds.top, 500, stableBounds.bottom) - ) - - val task = setUpFullscreenTask() - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.Center) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun addMoveToDeskTaskChanges_lastWindowSnapRight_positionResetsToCenter() { - setUpLandscapeDisplay() - val stableBounds = Rect().also { displayLayout.getStableBoundsForDesktopMode(it) } - - // Add freeform task with half display size snap bounds at right side. - setUpFreeformTask( - bounds = - Rect( - stableBounds.right - 500, - stableBounds.top, - stableBounds.right, - stableBounds.bottom, - ) - ) - - val task = setUpFullscreenTask() - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.Center) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun addMoveToDeskTaskChanges_lastWindowMaximised_positionResetsToCenter() { - setUpLandscapeDisplay() - val stableBounds = Rect().also { displayLayout.getStableBoundsForDesktopMode(it) } - - // Add maximised freeform task. - setUpFreeformTask(bounds = Rect(stableBounds)) - - val task = setUpFullscreenTask() - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.Center) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CASCADING_WINDOWS) - fun addMoveToDeskTaskChanges_defaultToCenterIfFree() { - setUpLandscapeDisplay() - val stableBounds = Rect().also { displayLayout.getStableBoundsForDesktopMode(it) } - - val minTouchTarget = - context.resources.getDimensionPixelSize( - R.dimen.freeform_required_visible_empty_space_in_header - ) - addFreeformTaskAtPosition( - DesktopTaskPosition.Center, - stableBounds, - Rect(0, 0, 1600, 1200), - Point(0, minTouchTarget + 1), - ) - - val task = setUpFullscreenTask() - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertThat(stableBounds.getDesktopTaskPosition(finalBounds!!)) - .isEqualTo(DesktopTaskPosition.Center) - } - - @Test - fun addMoveToDeskTaskChanges_excludeCaptionFromAppBounds_nonResizableLandscape() { - setUpLandscapeDisplay() - val task = - setUpFullscreenTask( - isResizable = false, - screenOrientation = SCREEN_ORIENTATION_LANDSCAPE, - ) - whenever(desktopModeCompatPolicy.shouldExcludeCaptionFromAppBounds(task)).thenReturn(true) - val initialAspectRatio = calculateAspectRatio(task) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - val displayId = taskRepository.getDisplayForDesk(deskId = 0) - val displayContext = displayController.getDisplayContext(displayId) ?: context - val captionInsets = getDesktopViewAppHeaderHeightPx(displayContext) - finalBounds!!.top += captionInsets - val finalAspectRatio = - maxOf(finalBounds.height(), finalBounds.width()) / - minOf(finalBounds.height(), finalBounds.width()).toFloat() - assertThat(finalAspectRatio).isWithin(FLOAT_TOLERANCE).of(initialAspectRatio) - } - - @Test - fun addMoveToDeskTaskChanges_excludeCaptionFromAppBounds_nonResizablePortrait() { - setUpLandscapeDisplay() - val task = - setUpFullscreenTask( - isResizable = false, - screenOrientation = SCREEN_ORIENTATION_PORTRAIT, - ) - whenever(desktopModeCompatPolicy.shouldExcludeCaptionFromAppBounds(task)).thenReturn(true) - val initialAspectRatio = calculateAspectRatio(task) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - val displayId = taskRepository.getDisplayForDesk(deskId = 0) - val displayContext = displayController.getDisplayContext(displayId) ?: context - val captionInsets = getDesktopViewAppHeaderHeightPx(displayContext) - finalBounds!!.top += captionInsets - val finalAspectRatio = - maxOf(finalBounds.height(), finalBounds.width()) / - minOf(finalBounds.height(), finalBounds.width()).toFloat() - assertThat(finalAspectRatio).isWithin(FLOAT_TOLERANCE).of(initialAspectRatio) - } - - @Test - fun launchIntent_taskInDesktopMode_transitionStarted() { - setUpLandscapeDisplay() - val freeformTask = setUpFreeformTask() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.startLaunchIntentTransition( - freeformTask.baseIntent, - Bundle.EMPTY, - DEFAULT_DISPLAY, - ) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - assertThat(wct.hierarchyOps).hasSize(1) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - fun launchIntent_taskInDesktopMode_onSecondaryDisplayNotInDesktopMode_transitionStarted() { - setUpLandscapeDisplay() - taskRepository.addDesk(SECOND_DISPLAY, deskId = 2) // Inactive desk. - val intent = Intent().setComponent(homeComponentName) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.startLaunchIntentTransition(intent, Bundle.EMPTY, SECOND_DISPLAY) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - // We expect two actions: open the app and open the wallpaper. - assertThat(wct.hierarchyOps).hasSize(2) - val hOps0 = wct.hierarchyOps[0] - val hOps1 = wct.hierarchyOps[1] - assertThat(hOps0.type).isEqualTo(HIERARCHY_OP_TYPE_PENDING_INTENT) - val activityOptions0 = ActivityOptions.fromBundle(hOps0.launchOptions) - assertThat(activityOptions0.launchDisplayId).isEqualTo(SECOND_DISPLAY) - assertThat(hOps1.type).isEqualTo(HIERARCHY_OP_TYPE_PENDING_INTENT) - val activityOptions1 = ActivityOptions.fromBundle(hOps1.launchOptions) - assertThat(activityOptions1.launchDisplayId).isEqualTo(SECOND_DISPLAY) - } - - @Test - @EnableFlags(Flags.FLAG_FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK) - fun launchNewTask_topTransparentFullscreenTaskIdPassedToClear() { - setUpLandscapeDisplay() - val topTransparentTask = - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = DEFAULT_DISPLAY) - taskRepository.setTopTransparentFullscreenTaskData(DEFAULT_DISPLAY, topTransparentTask) - - val task = setUpFreeformTask() - controller.startLaunchIntentTransition(task.baseIntent, Bundle.EMPTY, DEFAULT_DISPLAY) - - verify(desktopMixedTransitionHandler) - .startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - eq(topTransparentTask.taskId), - anyOrNull(), - anyOrNull(), - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun addMoveToDeskTaskChanges_landscapeDevice_userFullscreenOverride_defaultPortraitBounds() { - setUpLandscapeDisplay() - val task = setUpFullscreenTask(enableUserFullscreenOverride = true) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun addMoveToDeskTaskChanges_landscapeDevice_systemFullscreenOverride_defaultPortraitBounds() { - setUpLandscapeDisplay() - val task = setUpFullscreenTask(enableSystemFullscreenOverride = true) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun addMoveToDeskTaskChanges_landscapeDevice_portraitResizableApp_aspectRatioOverridden() { - setUpLandscapeDisplay() - val task = - setUpFullscreenTask( - screenOrientation = SCREEN_ORIENTATION_PORTRAIT, - shouldLetterbox = true, - aspectRatioOverrideApplied = true, - ) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - assertThat(findBoundsChange(wct, task)).isEqualTo(UNRESIZABLE_PORTRAIT_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun addMoveToDeskTaskChanges_portraitDevice_userFullscreenOverride_defaultPortraitBounds() { - setUpPortraitDisplay() - val task = setUpFullscreenTask(enableUserFullscreenOverride = true) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun addMoveToDeskTaskChanges_portraitDevice_systemFullscreenOverride_defaultPortraitBounds() { - setUpPortraitDisplay() - val task = setUpFullscreenTask(enableSystemFullscreenOverride = true) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun addMoveToDeskTaskChanges_portraitDevice_landscapeResizableApp_aspectRatioOverridden() { - setUpPortraitDisplay() - val task = - setUpFullscreenTask( - screenOrientation = SCREEN_ORIENTATION_LANDSCAPE, - deviceOrientation = ORIENTATION_PORTRAIT, - shouldLetterbox = true, - aspectRatioOverrideApplied = true, - ) - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - assertThat(findBoundsChange(wct, task)).isEqualTo(UNRESIZABLE_LANDSCAPE_BOUNDS) - } - - @Test - fun addMoveToDeskTaskChanges_inSizeCompatMode_originalAspectRatioMaintained() { - setUpLandscapeDisplay() - val task = - setUpFullscreenTask( - isResizable = false, - screenOrientation = SCREEN_ORIENTATION_PORTRAIT, - deviceOrientation = ORIENTATION_PORTRAIT, - ) - // Simulate floating size compat mode bounds (same aspect ratio as display without insets). - task.appCompatTaskInfo.topActivityAppBounds.set( - 0, - 0, - DISPLAY_DIMENSION_LONG / 2, - DISPLAY_DIMENSION_SHORT / 2, - ) - val originalAspectRatio = 1.5f - task.appCompatTaskInfo.topNonResizableActivityAspectRatio = originalAspectRatio - - val wct = WindowContainerTransaction() - controller.addMoveToDeskTaskChanges(wct, task, deskId = 0) - - val finalBounds = findBoundsChange(wct, task) - assertNotNull(finalBounds, "finalBounds should be resolved") - val finalAspectRatio = - maxOf(finalBounds.height(), finalBounds.width()) / - minOf(finalBounds.height(), finalBounds.width()).toFloat() - assertThat(finalAspectRatio).isWithin(FLOAT_TOLERANCE).of(originalAspectRatio) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_PROJECTED_DISPLAY_DESKTOP_MODE) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToDesktop_displayNotSupported_withOverButtonOrAdb_movesToDesk() { - val spyController = spy(controller) - desktopState.overrideDesktopModeSupportPerDisplay[DEFAULT_DISPLAY] = false - val task = setUpFullscreenTask() - spyController.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = ADB_COMMAND) - verify(spyController, times(1)) - .moveTaskToDesk(anyInt(), anyInt(), any(), eq(ADB_COMMAND), eq(null), eq(null)) - - clearInvocations(desksOrganizer) - - spyController.moveTaskToDefaultDeskAndActivate( - task.taskId, - transitionSource = APP_FROM_OVERVIEW, - ) - verify(spyController, times(1)) - .moveTaskToDesk(anyInt(), anyInt(), any(), eq(APP_FROM_OVERVIEW), eq(null), eq(null)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_PROJECTED_DISPLAY_DESKTOP_MODE) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToDesktop_displayNotSupported_doesNothing() { - val spyController = spy(controller) - desktopState.overrideDesktopModeSupportPerDisplay[DEFAULT_DISPLAY] = false - val task = setUpFullscreenTask() - spyController.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - verify(spyController, times(0)) - .moveTaskToDesk(anyInt(), anyInt(), any(), eq(UNKNOWN), eq(null), eq(null)) - - spyController.moveTaskToDefaultDeskAndActivate( - task.taskId, - transitionSource = KEYBOARD_SHORTCUT, - ) - verify(spyController, times(0)) - .moveTaskToDesk(anyInt(), anyInt(), any(), eq(KEYBOARD_SHORTCUT), eq(null), eq(null)) - - spyController.moveTaskToDefaultDeskAndActivate( - task.taskId, - transitionSource = APP_HANDLE_MENU_BUTTON, - ) - verify(spyController, times(0)) - .moveTaskToDesk( - anyInt(), - anyInt(), - any(), - eq(APP_HANDLE_MENU_BUTTON), - eq(null), - eq(null), - ) - - spyController.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = TASK_DRAG) - verify(spyController, times(0)) - .moveTaskToDesk(anyInt(), anyInt(), any(), eq(TASK_DRAG), eq(null), eq(null)) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToDesktop_tdaFullscreen_windowingModeSetToFreeform() { - val task = setUpFullscreenTask() - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - controller.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - val wct = getLatestEnterDesktopWct() - assertThat(wct.changes[task.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveRunningTaskToDesktop_tdaFreeform_windowingModeSetToUndefined() { - val task = setUpFullscreenTask() - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - controller.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - val wct = getLatestEnterDesktopWct() - assertThat(wct.changes[task.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveRunningTaskToDesktop_movesTaskToDefaultDesk() = - testScope.runTest { - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - - controller.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - runCurrent() - - val wct = getLatestEnterDesktopWct() - verify(desksOrganizer).moveTaskToDesk(wct, deskId = 0, task) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveRunningTaskToDesktop_activatesDesk() = - testScope.runTest { - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - - controller.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - runCurrent() - - val wct = getLatestEnterDesktopWct() - verify(desksOrganizer).activateDesk(wct, deskId = 0) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveRunningTaskToDesktop_triggersEnterDesktopListener() = - testScope.runTest { - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - - controller.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - runCurrent() - - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveTaskToDesk_nonDefaultDesk_movesTaskToDesk() { - val transition = Binder() - whenever(enterDesktopTransitionHandler.moveToDesktop(any(), any())).thenReturn(transition) - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 3) - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - task.isVisible = true - - controller.moveTaskToDesk(taskId = task.taskId, deskId = 3, transitionSource = UNKNOWN) - - val wct = getLatestEnterDesktopWct() - verify(desksOrganizer).moveTaskToDesk(wct, deskId = 3, task) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveTaskToDesk_nonDefaultDesk_activatesDesk() { - val transition = Binder() - whenever(enterDesktopTransitionHandler.moveToDesktop(any(), any())).thenReturn(transition) - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 3) - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - task.isVisible = true - - controller.moveTaskToDesk(taskId = task.taskId, deskId = 3, transitionSource = UNKNOWN) - - val wct = getLatestEnterDesktopWct() - verify(desksOrganizer).activateDesk(wct, deskId = 3) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveTaskToDesk_nonDefaultDesk_triggersEnterDesktopListener() { - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 3) - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - - controller.moveTaskToDesk(taskId = task.taskId, deskId = 3, transitionSource = UNKNOWN) - - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun moveTaskToDesktop_desktopWallpaperDisabled_nonRunningTask_launchesInFreeform() = - testScope.runTest { - val task = createRecentTaskInfo(1) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(anyInt())).thenReturn(task) - - controller.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - runCurrent() - - with(getLatestEnterDesktopWct()) { - assertLaunchTaskAt(0, task.taskId, WINDOWING_MODE_FREEFORM) - } - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun moveTaskToDesktop_desktopWallpaperEnabled_nonRunningTask_launchesInFreeform() = - testScope.runTest { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val task = createRecentTaskInfo(1) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(anyInt())).thenReturn(task) - - controller.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - runCurrent() - - with(getLatestEnterDesktopWct()) { - // Add desktop wallpaper activity - assertPendingIntentAt(index = 0, desktopWallpaperIntent) - // Launch task - assertLaunchTaskAt(index = 1, task.taskId, WINDOWING_MODE_FREEFORM) - } - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun moveBackgroundTaskToDesktop_remoteTransition_usesOneShotHandler() = - testScope.runTest { - val transitionHandlerArgCaptor = argumentCaptor<TransitionHandler>() - whenever( - transitions.startTransition( - anyInt(), - any(), - transitionHandlerArgCaptor.capture(), - ) - ) - .thenReturn(Binder()) - - val task = createRecentTaskInfo(1) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(anyInt())).thenReturn(task) - controller.moveTaskToDefaultDeskAndActivate( - taskId = task.taskId, - transitionSource = UNKNOWN, - remoteTransition = RemoteTransition(spy(TestRemoteTransition())), - ) - runCurrent() - - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - assertIs<OneShotRemoteHandler>(transitionHandlerArgCaptor.firstValue) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - fun moveBackgroundTaskToDesktop_nonDefaultDisplay_reordersHomeAndWallpaperOfNonDefaultDisplay() = - testScope.runTest { - val homeTask = setUpHomeTask(displayId = SECOND_DISPLAY) - val wallpaperToken = MockToken().token() - whenever(desktopWallpaperActivityTokenProvider.getToken(SECOND_DISPLAY)) - .thenReturn(wallpaperToken) - taskRepository.addDesk(SECOND_DISPLAY, deskId = 2) - val task = setUpFreeformTask(displayId = SECOND_DISPLAY, deskId = 2, background = true) - - controller.moveTaskToDefaultDeskAndActivate( - taskId = task.taskId, - transitionSource = UNKNOWN, - remoteTransition = RemoteTransition(spy(TestRemoteTransition())), - ) - runCurrent() - - val wct = getLatestTransition() - val homeReorderIndex = wct.indexOfReorder(homeTask, toTop = true) - val wallpaperReorderIndex = wct.indexOfReorder(wallpaperToken, toTop = true) - assertThat(homeReorderIndex).isNotEqualTo(-1) - assertThat(wallpaperReorderIndex).isNotEqualTo(-1) - // Wallpaper last, to be in front of Home. - assertThat(wallpaperReorderIndex).isGreaterThan(homeReorderIndex) - } - - @Test - fun moveBackgroundTaskToDesktop_invalidDisplay_invalidFocusedDisplay_reordersHomeAndWallpaperInDefaultDisplay() = - testScope.runTest { - val task = createRecentTaskInfo(1, INVALID_DISPLAY) - val homeTask = setUpHomeTask(displayId = DEFAULT_DISPLAY) - val wallpaperToken = MockToken().token() - whenever(focusTransitionObserver.globallyFocusedDisplayId).thenReturn(INVALID_DISPLAY) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(anyInt())).thenReturn(task) - whenever(desktopWallpaperActivityTokenProvider.getToken(DEFAULT_DISPLAY)) - .thenReturn(wallpaperToken) - - controller.moveTaskToDefaultDeskAndActivate( - taskId = task.taskId, - transitionSource = UNKNOWN, - remoteTransition = RemoteTransition(TestRemoteTransition()), - ) - runCurrent() - - val wct = getLatestTransition() - wct.assertReorder(homeTask) - wct.assertReorder(wallpaperToken) - } - - @Test - @EnableFlags(FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY) - fun moveBackgroundTaskToDesktop_invalidDisplay_validFocusedDisplay_reordersHomeAndWallpaperInFocusedDisplay() = - testScope.runTest { - val task = createRecentTaskInfo(1, INVALID_DISPLAY) - val focusedDisplayId = 5 - val homeTask = setUpHomeTask(displayId = focusedDisplayId) - val wallpaperToken = MockToken().token() - taskRepository.addDesk(displayId = focusedDisplayId, deskId = 5) - whenever(focusTransitionObserver.globallyFocusedDisplayId).thenReturn(focusedDisplayId) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(anyInt())).thenReturn(task) - whenever(desktopWallpaperActivityTokenProvider.getToken(focusedDisplayId)) - .thenReturn(wallpaperToken) - - controller.moveTaskToDefaultDeskAndActivate( - taskId = task.taskId, - transitionSource = UNKNOWN, - remoteTransition = RemoteTransition(TestRemoteTransition()), - ) - runCurrent() - - val wct = getLatestTransition() - wct.assertReorder(homeTask) - wct.assertReorder(wallpaperToken) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveBackgroundTaskToDesktop_invalidDisplay_invalidFocusedDisplay_activatesDeskInDefaultDisplay() = - testScope.runTest { - val task = createRecentTaskInfo(1, INVALID_DISPLAY) - val deskId = 2 - whenever(focusTransitionObserver.globallyFocusedDisplayId).thenReturn(INVALID_DISPLAY) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(anyInt())).thenReturn(task) - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - - controller.moveTaskToDefaultDeskAndActivate( - taskId = task.taskId, - transitionSource = UNKNOWN, - remoteTransition = RemoteTransition(TestRemoteTransition()), - ) - runCurrent() - - val wct = getLatestTransition() - verify(desksOrganizer).activateDesk(wct, deskId = deskId) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveBackgroundTaskToDesktop_invalidDisplay_validFocusedDisplay_activatesDeskInFocusedDisplay() = - testScope.runTest { - val task = createRecentTaskInfo(1, INVALID_DISPLAY) - val focusedDisplayId = 5 - val deskId = 2 - whenever(focusTransitionObserver.globallyFocusedDisplayId).thenReturn(focusedDisplayId) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(anyInt())).thenReturn(task) - taskRepository.addDesk(displayId = focusedDisplayId, deskId = deskId) - - controller.moveTaskToDefaultDeskAndActivate( - taskId = task.taskId, - transitionSource = UNKNOWN, - remoteTransition = RemoteTransition(TestRemoteTransition()), - ) - runCurrent() - - val wct = getLatestTransition() - verify(desksOrganizer).activateDesk(wct, deskId = deskId) - } - - @Test - fun moveRunningTaskToDesktop_remoteTransition_usesOneShotHandler() = - testScope.runTest { - val transitionHandlerArgCaptor = argumentCaptor<TransitionHandler>() - whenever( - transitions.startTransition( - anyInt(), - any(), - transitionHandlerArgCaptor.capture(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToDefaultDeskAndActivate( - taskId = setUpFullscreenTask().taskId, - transitionSource = UNKNOWN, - remoteTransition = RemoteTransition(spy(TestRemoteTransition())), - ) - runCurrent() - - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - assertIs<OneShotRemoteHandler>(transitionHandlerArgCaptor.firstValue) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun moveRunningTaskToDesktop_otherFreeformTasksBroughtToFront_desktopWallpaperDisabled() { - val homeTask = setUpHomeTask() - val freeformTask = setUpFreeformTask() - val fullscreenTask = setUpFullscreenTask() - markTaskHidden(freeformTask) - - controller.moveTaskToDefaultDeskAndActivate( - fullscreenTask.taskId, - transitionSource = UNKNOWN, - ) - - with(getLatestEnterDesktopWct()) { - // Operations should include home task, freeform task - assertThat(hierarchyOps).hasSize(3) - assertReorderSequence(homeTask, freeformTask, fullscreenTask) - assertThat(changes[fullscreenTask.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - } - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveRunningTaskToDesktop_otherFreeformTasksBroughtToFront_desktopWallpaperEnabled() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val freeformTask = setUpFreeformTask() - val fullscreenTask = setUpFullscreenTask() - markTaskHidden(freeformTask) - - controller.moveTaskToDefaultDeskAndActivate( - fullscreenTask.taskId, - transitionSource = UNKNOWN, - ) - - with(getLatestEnterDesktopWct()) { - // Operations should include wallpaper intent, freeform task, fullscreen task - assertThat(hierarchyOps).hasSize(3) - assertPendingIntentAt(index = 0, desktopWallpaperIntent) - assertReorderAt(index = 1, freeformTask) - assertReorderAt(index = 2, fullscreenTask) - assertThat(changes[fullscreenTask.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - } - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - fun moveRunningTaskToDesktop_desktopWallpaperEnabled_multiDesksEnabled() = - testScope.runTest { - val freeformTask = setUpFreeformTask() - val fullscreenTask = setUpFullscreenTask() - markTaskHidden(freeformTask) - - controller.moveTaskToDefaultDeskAndActivate( - fullscreenTask.taskId, - transitionSource = UNKNOWN, - ) - runCurrent() - - val wct = getLatestEnterDesktopWct() - wct.assertReorderAt(index = 0, wallpaperToken) - verify(desksOrganizer).moveTaskToDesk(wct, deskId = 0, fullscreenTask) - verify(desksOrganizer).activateDesk(wct, deskId = 0) - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveRunningTaskToDesktop_activatesDesk_desktopWallpaperEnabled_multiDesksDisabled() { - val fullscreenTask = setUpFullscreenTask() - - controller.moveTaskToDefaultDeskAndActivate( - fullscreenTask.taskId, - transitionSource = UNKNOWN, - ) - - assertThat(taskRepository.getActiveDeskId(DEFAULT_DISPLAY)).isEqualTo(DEFAULT_DISPLAY) - } - - @Test - fun moveRunningTaskToDesktop_onlyFreeformTasksFromCurrentDisplayBroughtToFront() = - testScope.runTest { - setUpHomeTask(displayId = DEFAULT_DISPLAY) - val freeformTaskDefault = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val fullscreenTaskDefault = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - markTaskHidden(freeformTaskDefault) - - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val homeTaskSecond = setUpHomeTask(displayId = SECOND_DISPLAY) - val freeformTaskSecond = setUpFreeformTask(displayId = SECOND_DISPLAY) - markTaskHidden(freeformTaskSecond) - - controller.moveTaskToDefaultDeskAndActivate( - fullscreenTaskDefault.taskId, - transitionSource = UNKNOWN, - ) - runCurrent() - - with(getLatestEnterDesktopWct()) { - // Check that hierarchy operations do not include tasks from second display - assertThat(hierarchyOps.map { it.container }) - .doesNotContain(homeTaskSecond.token.asBinder()) - assertThat(hierarchyOps.map { it.container }) - .doesNotContain(freeformTaskSecond.token.asBinder()) - } - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveRunningTaskToDesktop_splitTaskExitsSplit_multiDesksDisabled() = - testScope.runTest { - val task = setUpSplitScreenTask() - - controller.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - runCurrent() - - val wct = getLatestEnterDesktopWct() - assertThat(wct.changes[task.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - verify(splitScreenController) - .prepareExitSplitScreen( - any(), - anyInt(), - eq(SplitScreenController.EXIT_REASON_DESKTOP_MODE), - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveRunningTaskToDesktop_splitTaskExitsSplit_multiDesksEnabled() = - testScope.runTest { - val task = setUpSplitScreenTask() - - controller.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - runCurrent() - - val wct = getLatestEnterDesktopWct() - verify(desksOrganizer).moveTaskToDesk(wct, deskId = 0, task) - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - verify(splitScreenController) - .prepareExitSplitScreen( - any(), - anyInt(), - eq(SplitScreenController.EXIT_REASON_DESKTOP_MODE), - ) - } - - @Test - fun moveRunningTaskToDesktop_fullscreenTaskDoesNotExitSplit() = - testScope.runTest { - val task = setUpFullscreenTask() - - controller.moveTaskToDefaultDeskAndActivate(task.taskId, transitionSource = UNKNOWN) - runCurrent() - - val wct = getLatestEnterDesktopWct() - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - verify(splitScreenController, never()) - .prepareExitSplitScreen( - any(), - anyInt(), - eq(SplitScreenController.EXIT_REASON_DESKTOP_MODE), - ) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun moveRunningTaskToDesktop_desktopWallpaperDisabled_bringsTasksOver_dontShowBackTask() { - val freeformTasks = (1..MAX_TASK_LIMIT).map { _ -> setUpFreeformTask() } - val newTask = setUpFullscreenTask() - val homeTask = setUpHomeTask() - - controller.moveTaskToDefaultDeskAndActivate(newTask.taskId, transitionSource = UNKNOWN) - - val wct = getLatestEnterDesktopWct() - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - assertThat(wct.hierarchyOps.size).isEqualTo(MAX_TASK_LIMIT + 1) // visible tasks + home - wct.assertReorderAt(0, homeTask) - wct.assertReorderSequenceInRange( - range = 1..<(MAX_TASK_LIMIT + 1), - *freeformTasks.drop(1).toTypedArray(), // Skipping freeformTasks[0] - newTask, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun moveRunningTaskToDesktop_desktopWallpaperEnabled_bringsTasksOverLimit_dontShowBackTask() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val freeformTasks = (1..MAX_TASK_LIMIT).map { _ -> setUpFreeformTask() } - val newTask = setUpFullscreenTask() - val homeTask = setUpHomeTask() - - controller.moveTaskToDefaultDeskAndActivate(newTask.taskId, transitionSource = UNKNOWN) - - val wct = getLatestEnterDesktopWct() - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - assertThat(wct.hierarchyOps.size).isEqualTo(MAX_TASK_LIMIT + 2) // tasks + home + wallpaper - // Move home to front - wct.assertReorderAt(0, homeTask) - // Add desktop wallpaper activity - wct.assertPendingIntentAt(1, desktopWallpaperIntent) - // Bring freeform tasks to front - wct.assertReorderSequenceInRange( - range = 2..<(MAX_TASK_LIMIT + 2), - *freeformTasks.drop(1).toTypedArray(), // Skipping freeformTasks[0] - newTask, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToFullscreen_fromDesk_reparentsToTaskDisplayArea() { - val task = setUpFreeformTask() - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - wct.assertHop(ReparentPredicate(token = task.token, parentToken = tda.token, toTop = true)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToFullscreen_fromDesk_deactivatesDesk() { - val task = setUpFreeformTask() - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - verify(desksOrganizer).deactivateDesk(wct, deskId = 0) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToFullscreen_fromDeskWithMultipleTasks_deactivatesDesk() { - val deskId = 1 - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - - controller.moveToFullscreen(task1.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - verify(desksOrganizer).deactivateDesk(wct, deskId = deskId) - } - - @Test - fun moveToFullscreen_tdaFullscreen_windowingModeSetToUndefined() { - val task = setUpFreeformTask() - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - val wct = getLatestExitDesktopWct() - verify(desktopModeEnterExitTransitionListener, times(1)) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - assertThat(wct.changes[task.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER) - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - com.android.launcher3.Flags.FLAG_ENABLE_ALT_TAB_KQS_FLATENNING, - ) - fun moveToFullscreen_tdaFullscreen_windowingModeUndefined_removesWallpaperActivity() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val homeTask = setUpHomeTask() - val task = setUpFreeformTask() - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FULLSCREEN - - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - val taskChange = assertNotNull(wct.changes[task.token.asBinder()]) - verify(desktopModeEnterExitTransitionListener) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - assertThat(taskChange.windowingMode).isEqualTo(WINDOWING_MODE_UNDEFINED) - assertThat(wct.hierarchyOps).hasSize(3) - // Removes wallpaper activity when leaving desktop - wct.assertReorderAt(index = 0, wallpaperToken, toTop = false) - // Moves home task behind the fullscreen task - wct.assertReorderAt(index = 1, homeTask.getToken(), toTop = true) - wct.assertReorderAt(index = 2, task.getToken(), toTop = true) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun moveToFullscreen_tdaFullscreen_windowingModeUndefined_removesWallpaperActivity_multiDesksEnabled() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - setUpHomeTask() - val task = setUpFreeformTask() - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FULLSCREEN - - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - val taskChange = assertNotNull(wct.changes[task.token.asBinder()]) - verify(desktopModeEnterExitTransitionListener) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - assertThat(taskChange.windowingMode).isEqualTo(WINDOWING_MODE_UNDEFINED) - // Removes wallpaper activity when leaving desktop - wct.assertReorder(wallpaperToken, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun moveToFullscreen_tdaFullscreen_windowingModeUndefined_homeBehindFullscreen_multiDesksEnabled() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val homeTask = setUpHomeTask() - val task = setUpFreeformTask() - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FULLSCREEN - - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - val taskChange = assertNotNull(wct.changes[task.token.asBinder()]) - verify(desktopModeEnterExitTransitionListener) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - assertThat(taskChange.windowingMode).isEqualTo(WINDOWING_MODE_UNDEFINED) - // Moves home task behind the fullscreen task - val homeReorderIndex = wct.indexOfReorder(homeTask, toTop = true) - val fullscreenReorderIndex = wct.indexOfReorder(task, toTop = true) - assertThat(homeReorderIndex).isNotEqualTo(-1) - assertThat(fullscreenReorderIndex).isNotEqualTo(-1) - assertThat(fullscreenReorderIndex).isGreaterThan(homeReorderIndex) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER) - fun moveToFullscreen_tdaFreeform_enforcedDesktop_doesNotReorderHome() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val homeTask = setUpHomeTask() - val task = setUpFreeformTask() - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FREEFORM - - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - verify(desktopModeEnterExitTransitionListener) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - // Removes wallpaper activity when leaving desktop but doesn't reorder home or the task - wct.assertReorder(wallpaperToken, toTop = false) - wct.assertWithoutHop(ReorderPredicate(homeTask.token, toTop = null)) - } - - @Test - fun moveToFullscreen_tdaFreeform_windowingModeSetToFullscreen() { - val task = setUpFreeformTask() - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - val wct = getLatestExitDesktopWct() - assertThat(wct.changes[task.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FULLSCREEN) - verify(desktopModeEnterExitTransitionListener) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER) - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - com.android.launcher3.Flags.FLAG_ENABLE_ALT_TAB_KQS_FLATENNING, - Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DEFAULT_TO_DESKTOP_BUGFIX, - ) - fun moveToFullscreen_tdaFreeform_windowingModeFullscreen_removesWallpaperActivity() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = false - val homeTask = setUpHomeTask() - val task = setUpFreeformTask() - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FREEFORM - - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - val taskChange = assertNotNull(wct.changes[task.token.asBinder()]) - assertThat(taskChange.windowingMode).isEqualTo(WINDOWING_MODE_FULLSCREEN) - verify(desktopModeEnterExitTransitionListener) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - assertThat(wct.hierarchyOps).hasSize(3) - // Removes wallpaper activity when leaving desktop - wct.assertReorderAt(index = 0, wallpaperToken, toTop = false) - // Moves home task behind the fullscreen task - wct.assertReorderAt(index = 1, homeTask.getToken(), toTop = true) - wct.assertReorderAt(index = 2, task.getToken(), toTop = true) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun moveToFullscreen_tdaFreeform_windowingModeFullscreen_removesWallpaperActivity_multiDesksEnabled() { - val homeTask = setUpHomeTask() - val task = setUpFreeformTask() - - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FREEFORM - - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - val taskChange = assertNotNull(wct.changes[task.token.asBinder()]) - assertThat(taskChange.windowingMode).isEqualTo(WINDOWING_MODE_FULLSCREEN) - verify(desktopModeEnterExitTransitionListener) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - // Removes wallpaper activity when leaving desktop - wct.assertReorder(wallpaperToken, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DEFAULT_TO_DESKTOP_BUGFIX) - fun moveToFullscreen_tdaFreeform_windowingModeFullscreen_homeBehindFullscreen_multiDesksEnabled() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = false - val homeTask = setUpHomeTask() - val task = setUpFreeformTask() - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FREEFORM - - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - val taskChange = assertNotNull(wct.changes[task.token.asBinder()]) - assertThat(taskChange.windowingMode).isEqualTo(WINDOWING_MODE_FULLSCREEN) - verify(desktopModeEnterExitTransitionListener) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - // Moves home task behind the fullscreen task - val homeReorderIndex = wct.indexOfReorder(homeTask, toTop = true) - val fullscreenReorderIndex = wct.indexOfReorder(task, toTop = true) - assertThat(homeReorderIndex).isNotEqualTo(-1) - assertThat(fullscreenReorderIndex).isNotEqualTo(-1) - assertThat(fullscreenReorderIndex).isGreaterThan(homeReorderIndex) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP, - com.android.launcher3.Flags.FLAG_ENABLE_ALT_TAB_KQS_FLATENNING, - ) - fun moveToFullscreen_multipleVisibleNonMinimizedTasks_doesNotRemoveWallpaperActivity() { - val homeTask = setUpHomeTask() - val task1 = setUpFreeformTask() - // Setup task2 - setUpFreeformTask() - - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FULLSCREEN - - controller.moveToFullscreen(task1.taskId, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - val task1Change = assertNotNull(wct.changes[task1.token.asBinder()]) - assertThat(task1Change.windowingMode).isEqualTo(WINDOWING_MODE_UNDEFINED) - verify(desktopModeEnterExitTransitionListener) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - // Does not remove wallpaper activity, as desktop still has a visible desktop task - assertThat(wct.hierarchyOps).hasSize(2) - // Moves home task behind the fullscreen task - wct.assertReorderAt(index = 0, homeTask.getToken(), toTop = true) - wct.assertReorderAt(index = 1, task1.getToken(), toTop = true) - } - - @Test - fun moveToFullscreen_nonExistentTask_doesNothing() { - controller.moveToFullscreen(999, transitionSource = UNKNOWN) - verifyExitDesktopWCTNotExecuted() - } - - @Test - fun moveToFullscreen_secondDisplayTaskHasFreeform_secondDisplayNotAffected() { - val taskDefaultDisplay = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val taskSecondDisplay = setUpFreeformTask(displayId = SECOND_DISPLAY) - controller.moveToFullscreen(taskDefaultDisplay.taskId, transitionSource = UNKNOWN) - - with(getLatestExitDesktopWct()) { - assertThat(changes.keys).contains(taskDefaultDisplay.token.asBinder()) - assertThat(changes.keys).doesNotContain(taskSecondDisplay.token.asBinder()) - } - verify(desktopModeEnterExitTransitionListener) - .onExitDesktopModeTransitionStarted( - FULLSCREEN_ANIMATION_DURATION, - shouldEndUpAtHome = false, - ) - } - - @Test - @EnableFlags(com.android.launcher3.Flags.FLAG_ENABLE_ALT_TAB_KQS_FLATENNING) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToFullscreen_enforceDesktopWithMultipleDesktopDisabled_taskReorderToTop() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val transitionHandlerArgCaptor = argumentCaptor<TransitionHandler>() - whenever(transitions.startTransition(anyInt(), any(), transitionHandlerArgCaptor.capture())) - .thenReturn(Binder()) - - val task = setUpFullscreenTask() - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FREEFORM - - controller.moveToFullscreen( - task.taskId, - transitionSource = UNKNOWN, - remoteTransition = RemoteTransition(spy(TestRemoteTransition())), - ) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.changes[task.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FULLSCREEN) - wct.assertReorderAt(index = 0, task) - verify(desktopModeEnterExitTransitionListener, never()) - .onEnterDesktopModeTransitionStarted(anyInt()) - assertIs<OneShotRemoteHandler>(transitionHandlerArgCaptor.firstValue) - } - - @Test - @EnableFlags(com.android.launcher3.Flags.FLAG_ENABLE_ALT_TAB_KQS_FLATENNING) - fun moveToFullscreen_fullscreenTaskWithRemoteTransition_transitToFrontUsesRemoteTransition() { - val transitionHandlerArgCaptor = argumentCaptor<TransitionHandler>() - whenever(transitions.startTransition(anyInt(), any(), transitionHandlerArgCaptor.capture())) - .thenReturn(Binder()) - - val task = setUpFullscreenTask() - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FREEFORM - - controller.moveToFullscreen( - task.taskId, - transitionSource = UNKNOWN, - remoteTransition = RemoteTransition(spy(TestRemoteTransition())), - ) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - assertThat(wct.changes[task.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FULLSCREEN) - verify(desktopModeEnterExitTransitionListener, never()) - .onEnterDesktopModeTransitionStarted(anyInt()) - assertIs<OneShotRemoteHandler>(transitionHandlerArgCaptor.firstValue) - } - - @Test - @EnableFlags(com.android.launcher3.Flags.FLAG_ENABLE_ALT_TAB_KQS_FLATENNING) - fun moveToFullscreen_backgroundFullscreenTask_launchesFullscreenTask() { - val task = createRecentTaskInfo(1, INVALID_DISPLAY) - whenever(recentTasksController.findTaskInBackground(task.taskId)).thenReturn(task) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - - whenever(focusTransitionObserver.globallyFocusedDisplayId).thenReturn(SECOND_DISPLAY) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - - val transitionHandlerArgCaptor = argumentCaptor<TransitionHandler>() - whenever(transitions.startTransition(anyInt(), any(), transitionHandlerArgCaptor.capture())) - .thenReturn(Binder()) - - controller.moveToFullscreen( - task.taskId, - transitionSource = UNKNOWN, - remoteTransition = RemoteTransition(spy(TestRemoteTransition())), - ) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - wct.assertLaunchTask(task.taskId, WINDOWING_MODE_FULLSCREEN) - verify(desktopModeEnterExitTransitionListener, never()) - .onEnterDesktopModeTransitionStarted(anyInt()) - assertIs<OneShotRemoteHandler>(transitionHandlerArgCaptor.firstValue) - } - - @Test - @DisableFlags(com.android.launcher3.Flags.FLAG_ENABLE_ALT_TAB_KQS_FLATENNING) - fun moveToFullscreen_backgroundFullscreenTask_ignoredWhenFlagOff() { - val task = createRecentTaskInfo(1, INVALID_DISPLAY) - whenever(recentTasksController.findTaskInBackground(task.taskId)).thenReturn(task) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - - controller.moveToFullscreen(task.taskId, transitionSource = UNKNOWN) - - verify(snapEventHandler, never()).removeTaskIfTiled(anyInt(), anyInt()) - verify(transitions, never()).startTransition(anyInt(), any(), any()) - verify(desktopModeEnterExitTransitionListener, never()) - .onEnterDesktopModeTransitionStarted(anyInt()) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveTaskToFront_postsWctWithReorderOp() { - val task1 = setUpFreeformTask() - setUpFreeformTask() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_TO_FRONT), - any(), - eq(task1.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToFront(task1, remoteTransition = null) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_TO_FRONT) - assertThat(wct.hierarchyOps).hasSize(1) - wct.assertReorderAt(index = 0, task1) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveTaskToFront_desktopTask_reordersToFront() { - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_TO_FRONT), - any(), - eq(task1.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToFront(task1, remoteTransition = null) - - verify(desksOrganizer).reorderTaskToFront(any(), eq(0), eq(task1)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveTaskToFront_nonDesktopTask_reordersToFront() { - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_TO_FRONT), - any(), - eq(task.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToFront(task, remoteTransition = null) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_TO_FRONT) - assertNotNull(wct) - wct.assertReorder(task = task, toTop = true, includingParents = true) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveTaskToFront_nonDesktopTask_doesNotActivateDesk() { - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_TO_FRONT), - any(), - eq(task.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToFront(task, remoteTransition = null) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_TO_FRONT) - assertNotNull(wct) - verify(desksOrganizer, never()).activateDesk(eq(wct), any(), any()) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun moveTaskToFront_bringsTasksOverLimit_multiDesksDisabled_minimizesBackTask() { - setUpHomeTask() - val freeformTasks = - (1..MAX_TASK_LIMIT + 1).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - } - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_TO_FRONT), - any(), - eq(freeformTasks[0].taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToFront(freeformTasks[0], remoteTransition = null) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_TO_FRONT) - assertThat(wct.hierarchyOps.size).isEqualTo(2) // move-to-front + minimize - wct.assertReorderAt(0, freeformTasks[0], toTop = true) - wct.assertReorderAt(1, freeformTasks[1], toTop = false) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun moveTaskToFront_bringsTasksOverLimit_multiDesksEnabled_minimizesBackTask() { - val deskId = 0 - setUpHomeTask() - val freeformTasks = - (1..MAX_TASK_LIMIT + 1).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_TO_FRONT), - any(), - eq(freeformTasks[0].taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToFront(freeformTasks[0], remoteTransition = null) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_TO_FRONT) - verify(desksOrganizer).minimizeTask(wct, deskId, freeformTasks[1]) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun moveTaskToFront_bringsTasksOverLimit_separateTaskLimitTransition_minimizeSeparately() { - val deskId = 0 - setUpHomeTask() - val freeformTasks = - (1..MAX_TASK_LIMIT + 1).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - val transition = Binder() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_TO_FRONT), - any(), - eq(freeformTasks[0].taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - controller.moveTaskToFront(freeformTasks[0], remoteTransition = null) - - verify(desksOrganizer, never()).minimizeTask(any(), any(), any()) - assertThat(desktopTasksLimiter.getMinimizingTask(transition)).isNull() - assertThat(desktopTasksLimiter.hasTaskLimitTransitionForTesting(transition)).isTrue() - } - - @Test - fun moveTaskToFront_minimizedTask_marksTaskAsUnminimized() { - val transition = Binder() - val freeformTask = setUpFreeformTask() - taskRepository.minimizeTask(DEFAULT_DISPLAY, freeformTask.taskId) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_TO_FRONT), - any(), - eq(freeformTask.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - controller.moveTaskToFront(freeformTask, unminimizeReason = UnminimizeReason.ALT_TAB) - - val task = desktopTasksLimiter.getUnminimizingTask(transition) - assertThat(task).isNotNull() - assertThat(task?.taskId).isEqualTo(freeformTask.taskId) - assertThat(task?.unminimizeReason).isEqualTo(UnminimizeReason.ALT_TAB) - } - - @Test - fun handleRequest_minimizedFreeformTask_marksTaskAsUnminimized() { - val transition = Binder() - // Create a visible task so we stay in Desktop Mode when minimizing task under test. - setUpFreeformTask().also { markTaskVisible(it) } - val freeformTask = setUpFreeformTask() - taskRepository.minimizeTask(DEFAULT_DISPLAY, freeformTask.taskId) - - controller.handleRequest(transition, createTransition(freeformTask, TRANSIT_OPEN)) - - val task = desktopTasksLimiter.getUnminimizingTask(transition) - assertThat(task).isNotNull() - assertThat(task?.taskId).isEqualTo(freeformTask.taskId) - assertThat(task?.unminimizeReason).isEqualTo(UnminimizeReason.TASK_LAUNCH) - } - - @Test - fun moveTaskToFront_remoteTransition_usesOneshotHandler() { - setUpHomeTask() - val freeformTasks = List(MAX_TASK_LIMIT) { setUpFreeformTask() } - val transitionHandlerArgCaptor = argumentCaptor<TransitionHandler>() - whenever(transitions.startTransition(anyInt(), any(), transitionHandlerArgCaptor.capture())) - .thenReturn(Binder()) - - controller.moveTaskToFront(freeformTasks[0], RemoteTransition(TestRemoteTransition())) - - assertIs<OneShotRemoteHandler>(transitionHandlerArgCaptor.firstValue) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun moveTaskToFront_bringsTasksOverLimit_remoteTransition_usesWindowLimitHandler() { - setUpHomeTask() - val freeformTasks = List(MAX_TASK_LIMIT + 1) { setUpFreeformTask() } - val transitionHandlerArgCaptor = argumentCaptor<TransitionHandler>() - whenever(transitions.startTransition(anyInt(), any(), transitionHandlerArgCaptor.capture())) - .thenReturn(Binder()) - - controller.moveTaskToFront(freeformTasks[0], RemoteTransition(TestRemoteTransition())) - - assertThat(transitionHandlerArgCaptor.firstValue) - .isInstanceOf(DesktopWindowLimitRemoteHandler::class.java) - } - - @Test - fun moveTaskToFront_backgroundTask_launchesTask() { - val task = createRecentTaskInfo(1) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToFront(task.taskId, unminimizeReason = UnminimizeReason.UNKNOWN) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - wct.assertLaunchTask(task.taskId, WINDOWING_MODE_FREEFORM) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY, - ) - fun moveTaskToFront_backgroundTask_launchesTask_launchesToExistingDisplay() { - val deskId = 2 - val taskId = 1 - val task = createRecentTaskInfo(taskId, displayId = SECOND_DISPLAY) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = SECOND_DISPLAY, deskId = deskId) - taskRepository.addTaskToDesk( - displayId = SECOND_DISPLAY, - deskId = deskId, - taskId = task.taskId, - isVisible = true, - taskBounds = TASK_BOUNDS, - ) - whenever(shellTaskOrganizer.getRunningTaskInfo(anyInt())).thenReturn(null) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToFront(task.taskId, unminimizeReason = UnminimizeReason.UNKNOWN) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - wct.assertLaunchTaskOnDisplay(SECOND_DISPLAY) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY, - ) - fun moveTaskToFront_backgroundTask_notInDesk_launchesInAssociatedDisplay() { - val deskId = 2 - val taskId = 1 - val task = createRecentTaskInfo(taskId, displayId = SECOND_DISPLAY) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = deskId) - whenever(shellTaskOrganizer.getRunningTaskInfo(taskId)).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(taskId)).thenReturn(task) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - desktopState.overrideDesktopModeSupportPerDisplay[SECOND_DISPLAY] = true - - controller.moveTaskToFront(task.taskId, unminimizeReason = UnminimizeReason.UNKNOWN) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - wct.assertLaunchTaskOnDisplay(SECOND_DISPLAY) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY, - ) - fun moveTaskToFront_backgroundTask_notInDesk_unsupportedAssociatedDisplay_launchesInFocused() { - val focusedDisplayId = 10 - val deskId = 2 - val taskId = 1 - val task = createRecentTaskInfo(taskId, displayId = SECOND_DISPLAY) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = deskId) - taskRepository.addDesk(displayId = focusedDisplayId, deskId = focusedDisplayId) - whenever(shellTaskOrganizer.getRunningTaskInfo(taskId)).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(taskId)).thenReturn(task) - whenever(focusTransitionObserver.globallyFocusedDisplayId).thenReturn(focusedDisplayId) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - desktopState.overrideDesktopModeSupportPerDisplay[SECOND_DISPLAY] = false - desktopState.overrideDesktopModeSupportPerDisplay[focusedDisplayId] = true - - controller.moveTaskToFront(task.taskId, unminimizeReason = UnminimizeReason.UNKNOWN) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - wct.assertLaunchTaskOnDisplay(focusedDisplayId) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY, - ) - fun moveTaskToFront_backgroundTask_notInDesk_unsupportedAssociatedAndFocusedDisplay_launchesInSupported() { - val supportedDisplayId = 11 - val focusedDisplayId = 10 - val deskId = 2 - val taskId = 1 - val task = createRecentTaskInfo(taskId, displayId = SECOND_DISPLAY) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = deskId) - taskRepository.addDesk(displayId = focusedDisplayId, deskId = focusedDisplayId) - taskRepository.addDesk(displayId = supportedDisplayId, deskId = supportedDisplayId) - whenever(shellTaskOrganizer.getRunningTaskInfo(taskId)).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(taskId)).thenReturn(task) - whenever(focusTransitionObserver.globallyFocusedDisplayId).thenReturn(focusedDisplayId) - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(SECOND_DISPLAY, focusedDisplayId, supportedDisplayId)) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - desktopState.overrideDesktopModeSupportPerDisplay[SECOND_DISPLAY] = false - desktopState.overrideDesktopModeSupportPerDisplay[focusedDisplayId] = false - desktopState.overrideDesktopModeSupportPerDisplay[supportedDisplayId] = true - - controller.moveTaskToFront(task.taskId, unminimizeReason = UnminimizeReason.UNKNOWN) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - wct.assertLaunchTaskOnDisplay(supportedDisplayId) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun moveTaskToFront_backgroundTaskBringsTasksOverLimit_multiDesksDisabled_minimizesBackTask() { - val deskId = 0 - val freeformTasks = - (1..MAX_TASK_LIMIT).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - val task = createRecentTaskInfo(1001) - whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(null) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - eq(task.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToFront(task.taskId, unminimizeReason = UnminimizeReason.UNKNOWN) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - assertThat(wct.hierarchyOps.size).isEqualTo(2) // launch + minimize - wct.assertLaunchTaskAt(0, task.taskId, WINDOWING_MODE_FREEFORM) - wct.assertReorderAt(1, freeformTasks[0], toTop = false) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun moveTaskToFront_backgroundTaskBringsTasksOverLimit_multiDesksDisabled_separateMinimize() { - val deskId = 0 - val freeformTasks = - (1..MAX_TASK_LIMIT).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - val task = createRecentTaskInfo(1001) - whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(null) - val transition = Binder() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - eq(task.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - controller.moveTaskToFront(task.taskId, unminimizeReason = UnminimizeReason.UNKNOWN) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - assertThat(wct.hierarchyOps.size).isEqualTo(1) - wct.assertLaunchTaskAt(0, task.taskId, WINDOWING_MODE_FREEFORM) - assertThat(desktopTasksLimiter.hasTaskLimitTransitionForTesting(transition)).isTrue() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun moveTaskToFront_backgroundTaskBringsTasksOverLimit_multiDesksEnabled_minimizesBackTask() { - val deskId = 0 - val freeformTasks = - (1..MAX_TASK_LIMIT).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - val task = createRecentTaskInfo(freeformTasks.last().taskId + 10) - whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(null) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - eq(task.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.moveTaskToFront(task.taskId, unminimizeReason = UnminimizeReason.UNKNOWN) - - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - verify(desksOrganizer).minimizeTask(wct, deskId, freeformTasks[0]) - } - - @Test - fun moveToNextDisplay_noOtherDisplays() { - whenever(rootTaskDisplayAreaOrganizer.displayIds).thenReturn(intArrayOf(DEFAULT_DISPLAY)) - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - controller.moveToNextDisplay(task.taskId) - verify(transitions, never()).startTransition(anyInt(), any(), anyOrNull()) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToNextDisplay_moveFromFirstToSecondDisplay_multiDesksDisabled() { - // Set up two display ids - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - controller.moveToNextDisplay(task.taskId) - - val taskChange = - getLatestWct( - type = TRANSIT_CHANGE, - handlerClass = DesktopModeMoveToDisplayTransitionHandler::class.java, - ) - .hierarchyOps - .find { it.container == task.token.asBinder() && it.isReparent } - assertNotNull(taskChange) - assertThat(taskChange.newParent).isEqualTo(secondDisplayArea.token.asBinder()) - assertThat(taskChange.toTop).isTrue() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToNextDisplay_moveFromFirstToSecondDisplay_multiDesksEnabled() { - // Set up two display ids - val targetDeskId = 2 - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = targetDeskId) - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - controller.moveToNextDisplay(task.taskId) - - verify(desksOrganizer).moveTaskToDesk(any(), eq(targetDeskId), eq(task), eq(false)) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToNextDisplay_moveFromSecondToFirstDisplay_multiDesksDisabled() { - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - // Create a mock for the target display area: default display - val defaultDisplayArea = DisplayAreaInfo(MockToken().token(), DEFAULT_DISPLAY, 0) - whenever(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .thenReturn(defaultDisplayArea) - - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val task = setUpFreeformTask(displayId = SECOND_DISPLAY) - controller.moveToNextDisplay(task.taskId) - - val taskChange = - getLatestWct( - type = TRANSIT_CHANGE, - handlerClass = DesktopModeMoveToDisplayTransitionHandler::class.java, - ) - .hierarchyOps - .find { it.container == task.token.asBinder() && it.isReparent } - assertNotNull(taskChange) - assertThat(taskChange.newParent).isEqualTo(defaultDisplayArea.token.asBinder()) - assertThat(taskChange.toTop).isTrue() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToNextDisplay_moveFromSecondToFirstDisplay_multiDesksEnabled() { - // Set up two display ids - val targetDeskId = 0 - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - // Create a mock for the target display area: default display - val defaultDisplayArea = DisplayAreaInfo(MockToken().token(), DEFAULT_DISPLAY, 0) - whenever(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .thenReturn(defaultDisplayArea) - - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val task = setUpFreeformTask(displayId = SECOND_DISPLAY) - controller.moveToNextDisplay(task.taskId) - - verify(desksOrganizer).moveTaskToDesk(any(), eq(targetDeskId), eq(task), eq(false)) - } - - @Test - @EnableFlags( - FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - fun moveToNextDisplay_wallpaperOnSystemUser_reorderWallpaperToBack() { - // Set up two display ids - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - // Add a task and a wallpaper - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - controller.moveToNextDisplay(task.taskId) - - with( - getLatestWct( - type = TRANSIT_CHANGE, - handlerClass = DesktopModeMoveToDisplayTransitionHandler::class.java, - ) - ) { - val wallpaperChange = - hierarchyOps.find { op -> op.container == wallpaperToken.asBinder() } - assertNotNull(wallpaperChange) - assertThat(wallpaperChange.type).isEqualTo(HIERARCHY_OP_TYPE_REORDER) - } - } - - @Test - @EnableFlags(FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER) - fun moveToNextDisplay_wallpaperNotOnSystemUser_removeWallpaper() { - // Set up two display ids - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - // Add a task and a wallpaper - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - controller.moveToNextDisplay(task.taskId) - - val wallpaperChange = - getLatestWct( - type = TRANSIT_CHANGE, - handlerClass = DesktopModeMoveToDisplayTransitionHandler::class.java, - ) - .hierarchyOps - .find { op -> op.container == wallpaperToken.asBinder() } - assertNotNull(wallpaperChange) - assertThat(wallpaperChange.type).isEqualTo(HIERARCHY_OP_TYPE_REMOVE_TASK) - } - - @Test - @EnableFlags(FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT) - fun moveToNextDisplay_sizeInDpPreserved() { - // Set up two display ids - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = 2) - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - // Two displays have different density - whenever(displayLayout.densityDpi()).thenReturn(320) - whenever(displayLayout.width()).thenReturn(2400) - whenever(displayLayout.height()).thenReturn(1600) - val secondaryLayout = mock(DisplayLayout::class.java) - whenever(displayController.getDisplayLayout(SECOND_DISPLAY)).thenReturn(secondaryLayout) - whenever(secondaryLayout.densityDpi()).thenReturn(160) - whenever(secondaryLayout.width()).thenReturn(1280) - whenever(secondaryLayout.height()).thenReturn(720) - - // Place a task with a size of 640x480 at a position where the ratio of the left margin to - // the right margin is 1:3 and the ratio of top margin to the bottom margin is 1:2. - val task = - setUpFreeformTask(displayId = DEFAULT_DISPLAY, bounds = Rect(440, 374, 1080, 854)) - - controller.moveToNextDisplay(task.taskId) - - val taskChange = - getLatestWct( - type = TRANSIT_CHANGE, - handlerClass = DesktopModeMoveToDisplayTransitionHandler::class.java, - ) - .changes[task.token.asBinder()] - assertNotNull(taskChange) - // To preserve DP size, pixel size is changed to 320x240. The ratio of the left margin - // to the right margin and the ratio of the top margin to bottom margin are also - // preserved. - assertThat(taskChange.configuration.windowConfiguration.bounds) - .isEqualTo(Rect(240, 160, 560, 400)) - } - - @Test - @EnableFlags(FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT) - fun moveToNextDisplay_shiftWithinDestinationDisplayBounds() { - // Set up two display ids - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = 2) - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - // Two displays have different density - whenever(displayLayout.densityDpi()).thenReturn(320) - whenever(displayLayout.width()).thenReturn(2400) - whenever(displayLayout.height()).thenReturn(1600) - val secondaryLayout = mock(DisplayLayout::class.java) - whenever(displayController.getDisplayLayout(SECOND_DISPLAY)).thenReturn(secondaryLayout) - whenever(secondaryLayout.densityDpi()).thenReturn(160) - whenever(secondaryLayout.width()).thenReturn(1280) - whenever(secondaryLayout.height()).thenReturn(720) - - // Place a task with a size of 640x480 at a position where the bottom-right corner of the - // window is outside the source display bounds. The destination display still has enough - // space to place the window within its bounds. - val task = - setUpFreeformTask(displayId = DEFAULT_DISPLAY, bounds = Rect(2000, 1200, 2640, 1680)) - - controller.moveToNextDisplay(task.taskId) - - val taskChange = - getLatestWct( - type = TRANSIT_CHANGE, - handlerClass = DesktopModeMoveToDisplayTransitionHandler::class.java, - ) - .changes[task.token.asBinder()] - assertNotNull(taskChange) - assertThat(taskChange.configuration.windowConfiguration.bounds) - .isEqualTo(Rect(960, 480, 1280, 720)) - } - - @Test - @EnableFlags(FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT) - fun moveToNextDisplay_maximizedTask() { - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = 2) - // Two displays have different density - whenever(displayLayout.densityDpi()).thenReturn(320) - whenever(displayLayout.width()).thenReturn(1280) - whenever(displayLayout.height()).thenReturn(960) - val secondaryLayout = mock(DisplayLayout::class.java) - whenever(displayController.getDisplayLayout(SECOND_DISPLAY)).thenReturn(secondaryLayout) - whenever(secondaryLayout.densityDpi()).thenReturn(160) - whenever(secondaryLayout.width()).thenReturn(1280) - whenever(secondaryLayout.height()).thenReturn(720) - - // Place a task with a size equals to display size. - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY, bounds = Rect(0, 0, 1280, 960)) - - controller.moveToNextDisplay(task.taskId) - - val taskChange = - getLatestWct( - type = TRANSIT_CHANGE, - handlerClass = DesktopModeMoveToDisplayTransitionHandler::class.java, - ) - .changes[task.token.asBinder()] - assertNotNull(taskChange) - // DP size is preserved. The window is centered in the destination display. - assertThat(taskChange.configuration.windowConfiguration.bounds) - .isEqualTo(Rect(320, 120, 960, 600)) - } - - @Test - @EnableFlags(FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT) - fun moveToNextDisplay_defaultBoundsWhenDestinationTooSmall() { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - // Two displays have different density - whenever(displayLayout.densityDpi()).thenReturn(320) - whenever(displayLayout.width()).thenReturn(2400) - whenever(displayLayout.height()).thenReturn(1600) - val secondaryLayout = mock(DisplayLayout::class.java) - whenever(displayController.getDisplayLayout(SECOND_DISPLAY)).thenReturn(secondaryLayout) - whenever(secondaryLayout.densityDpi()).thenReturn(160) - whenever(secondaryLayout.width()).thenReturn(640) - whenever(secondaryLayout.height()).thenReturn(480) - whenever(secondaryLayout.getStableBoundsForDesktopMode(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(0, 0, 640, 480) - } - - // A task with a size of 1800x1200 is being placed. To preserve DP size, - // 900x600 pixels are needed, which does not fit in the destination display. - val task = - setUpFreeformTask(displayId = DEFAULT_DISPLAY, bounds = Rect(300, 200, 2100, 1400)) - - controller.moveToNextDisplay(task.taskId) - - val taskChange = - getLatestWct( - type = TRANSIT_CHANGE, - handlerClass = DesktopModeMoveToDisplayTransitionHandler::class.java, - ) - .changes[task.token.asBinder()] - assertNotNull(taskChange) - assertThat(taskChange.configuration.windowConfiguration.bounds.left).isAtLeast(0) - assertThat(taskChange.configuration.windowConfiguration.bounds.top).isAtLeast(0) - assertThat(taskChange.configuration.windowConfiguration.bounds.right).isAtMost(640) - assertThat(taskChange.configuration.windowConfiguration.bounds.bottom).isAtMost(480) - } - - @Test - @EnableFlags( - FLAG_ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS, - FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT, - ) - fun moveToNextDisplay_destinationGainGlobalFocus() { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - controller.moveToNextDisplay(task.taskId) - - val wct = - getLatestWct( - type = TRANSIT_CHANGE, - handlerClass = DesktopModeMoveToDisplayTransitionHandler::class.java, - ) - wct.assertReorderAt( - // Reorder should be the last change so that other hierarchyOps do not change the - // display focus after moving the destination display top. - index = wct.hierarchyOps.size - 1, - task, - toTop = true, - includingParents = true, - ) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToNextDisplay_toDesktopInOtherDisplay_multiDesksDisabled_bringsExistingTasksToFront() { - val transition = Binder() - val sourceDeskId = 0 - val targetDeskId = 2 - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = targetDeskId) - taskRepository.setDeskInactive(deskId = targetDeskId) - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - whenever(transitions.startTransition(eq(TRANSIT_CHANGE), any(), anyOrNull())) - .thenReturn(transition) - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = sourceDeskId) - val task2 = setUpFreeformTask(displayId = SECOND_DISPLAY, deskId = targetDeskId) - - controller.moveToNextDisplay(task1.taskId) - - // Existing desktop task in the target display is moved to front. - val wct = getLatestTransition() - wct.assertReorder(task2.token, /* toTop= */ true) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToNextDisplay_toDesktopInOtherDisplay_multiDesksEnabled_bringsExistingTasksToFront() { - val transition = Binder() - val sourceDeskId = 0 - val targetDeskId = 2 - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = targetDeskId) - taskRepository.setDeskInactive(deskId = targetDeskId) - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - whenever(transitions.startTransition(eq(TRANSIT_CHANGE), any(), anyOrNull())) - .thenReturn(transition) - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = sourceDeskId) - val task2 = setUpFreeformTask(displayId = SECOND_DISPLAY, deskId = targetDeskId) - - controller.moveToNextDisplay(task1.taskId) - - // Existing desktop task in the target display is moved to front. - val wct = getLatestTransition() - assertNotNull(wct) - verify(desksOrganizer).reorderTaskToFront(wct, targetDeskId, task2) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun moveToNextDisplay_toDesktopInOtherDisplay_appliesTaskLimit() { - val transition = Binder() - val sourceDeskId = 0 - val targetDeskId = 2 - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = targetDeskId) - taskRepository.setDeskInactive(deskId = targetDeskId) - val targetDeskTasks = - (1..MAX_TASK_LIMIT + 1).map { _ -> - setUpFreeformTask(displayId = SECOND_DISPLAY, deskId = targetDeskId) - } - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - whenever(transitions.startTransition(eq(TRANSIT_CHANGE), any(), anyOrNull())) - .thenReturn(transition) - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = sourceDeskId) - - controller.moveToNextDisplay(task.taskId) - - val wct = getLatestTransition() - assertNotNull(wct) - verify(desksOrganizer).minimizeTask(wct, targetDeskId, targetDeskTasks[0]) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun moveToNextDisplay_toDesktopInOtherDisplay_appliesTaskLimitSeparate() { - val transition = Binder() - val sourceDeskId = 0 - val targetDeskId = 2 - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = targetDeskId) - taskRepository.setDeskInactive(deskId = targetDeskId) - val targetDeskTasks = - (1..MAX_TASK_LIMIT + 1).map { _ -> - setUpFreeformTask(displayId = SECOND_DISPLAY, deskId = targetDeskId) - } - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - whenever(transitions.startTransition(eq(TRANSIT_CHANGE), any(), anyOrNull())) - .thenReturn(transition) - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = sourceDeskId) - - controller.moveToNextDisplay(task.taskId) - - val wct = getLatestTransition() - assertNotNull(wct) - assertThat(desktopTasksLimiter.hasTaskLimitTransitionForTesting(transition)).isTrue() - verify(desksOrganizer, never()).minimizeTask(wct, targetDeskId, targetDeskTasks[0]) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - fun moveToNextDisplay_toDesktopInOtherDisplay_movesHomeAndWallpaperToFront() { - val homeTask = setUpHomeTask(displayId = SECOND_DISPLAY) - whenever(desktopWallpaperActivityTokenProvider.getToken(SECOND_DISPLAY)) - .thenReturn(wallpaperToken) - val transition = Binder() - val sourceDeskId = 0 - val targetDeskId = 2 - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = targetDeskId) - taskRepository.setDeskInactive(deskId = targetDeskId) - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - whenever(transitions.startTransition(eq(TRANSIT_CHANGE), any(), anyOrNull())) - .thenReturn(transition) - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = sourceDeskId) - - controller.moveToNextDisplay(task1.taskId) - - // Home / Wallpaper should be moved to front as the background of desktop tasks, otherwise - // fullscreen (non-desktop) tasks could remain visible. - val wct = getLatestTransition() - val homeReorderIndex = wct.indexOfReorder(homeTask, toTop = true) - val wallpaperReorderIndex = wct.indexOfReorder(wallpaperToken, toTop = true) - assertThat(homeReorderIndex).isNotEqualTo(-1) - assertThat(wallpaperReorderIndex).isNotEqualTo(-1) - // Wallpaper last, to be in front of Home. - assertThat(wallpaperReorderIndex).isGreaterThan(homeReorderIndex) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToNextDisplay_toDeskInOtherDisplay_movesToDeskAndActivates() { - val transition = Binder() - val targetDeskId = 4 - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = targetDeskId) - taskRepository.setDeskInactive(deskId = targetDeskId) - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - whenever(transitions.startTransition(eq(TRANSIT_CHANGE), any(), anyOrNull())) - .thenReturn(transition) - - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - taskRepository.addTaskToDesk( - displayId = DEFAULT_DISPLAY, - deskId = 0, - taskId = task.taskId, - isVisible = true, - taskBounds = TASK_BOUNDS, - ) - controller.moveToNextDisplay(task.taskId) - - verify(desksOrganizer).moveTaskToDesk(any(), eq(targetDeskId), eq(task), eq(false)) - verify(desksOrganizer).activateDesk(any(), eq(targetDeskId), skipReorder = eq(false)) - verify(desksTransitionsObserver) - .addPendingTransition( - DeskTransition.ActivateDeskWithTask( - token = transition, - displayId = SECOND_DISPLAY, - deskId = targetDeskId, - enterTaskId = task.taskId, - ) - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveToNextDisplay_wasLastTaskInSourceDesk_deactivates() { - val transition = Binder() - val sourceDeskId = 0 - val targetDeskId = 4 - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = targetDeskId) - taskRepository.setDeskInactive(deskId = targetDeskId) - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - whenever(transitions.startTransition(eq(TRANSIT_CHANGE), any(), anyOrNull())) - .thenReturn(transition) - - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - taskRepository.addTaskToDesk( - displayId = DEFAULT_DISPLAY, - deskId = sourceDeskId, - taskId = task.taskId, - isVisible = true, - taskBounds = TASK_BOUNDS, - ) - controller.moveToNextDisplay(task.taskId) - - verify(desksOrganizer).deactivateDesk(any(), eq(sourceDeskId), skipReorder = eq(false)) - verify(desksTransitionsObserver) - .addPendingTransition( - DeskTransition.DeactivateDesk(token = transition, deskId = sourceDeskId) - ) - } - - @Test - @EnableFlags( - FLAG_ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS, - FLAG_ENABLE_MOVE_TO_NEXT_DISPLAY_SHORTCUT, - ) - fun moveToNextDisplay_resetLauncherOnSourceDisplay() { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - controller.moveToNextDisplay(task.taskId) - - val wct = - getLatestWct( - type = TRANSIT_CHANGE, - handlerClass = DesktopModeMoveToDisplayTransitionHandler::class.java, - ) - wct.assertPendingIntent(launchHomeIntent(DEFAULT_DISPLAY)) - wct.assertPendingIntentActivityOptionsLaunchDisplayId(DEFAULT_DISPLAY) - } - - @Test - fun moveToNextDisplay_movingToDesktop_sendsTaskbarRoundingUpdate() { - val transition = Binder() - val sourceDeskId = 0 - val targetDeskId = 2 - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = targetDeskId) - taskRepository.setDeskInactive(deskId = targetDeskId) - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - whenever(transitions.startTransition(eq(TRANSIT_CHANGE), any(), anyOrNull())) - .thenReturn(transition) - - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = sourceDeskId) - taskRepository.addTaskToDesk( - displayId = DEFAULT_DISPLAY, - deskId = sourceDeskId, - taskId = task.taskId, - isVisible = true, - taskBounds = TASK_BOUNDS, - ) - controller.moveToNextDisplay(task.taskId) - - verify(taskbarDesktopTaskListener).onTaskbarCornerRoundingUpdate(anyBoolean()) - } - - private fun moveToNextDesktopDisplay_moveIifDesktopModeSupportedOnDestination( - isDesktopModeSupportedOnDestination: Boolean - ) { - // Set up two display ids - whenever(rootTaskDisplayAreaOrganizer.displayIds) - .thenReturn(intArrayOf(DEFAULT_DISPLAY, SECOND_DISPLAY)) - - // Add desk if destination support desktop - if (isDesktopModeSupportedOnDestination) { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = 2) - } - - // Create a mock for the target display area: second display - val secondDisplayArea = DisplayAreaInfo(MockToken().token(), SECOND_DISPLAY, 0) - whenever(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(SECOND_DISPLAY)) - .thenReturn(secondDisplayArea) - - // Set up external display content - val secondaryDisplay = mock(Display::class.java) - whenever(displayController.getDisplay(SECOND_DISPLAY)).thenReturn(secondaryDisplay) - - desktopState.overrideDesktopModeSupportPerDisplay[SECOND_DISPLAY] = - isDesktopModeSupportedOnDestination - - // Set up a task on the default display - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - controller.moveToNextDesktopDisplay(task.taskId) - - val verificationMode = - if (isDesktopModeSupportedOnDestination) { - times(1) - } else { - never() - } - verify(transitions, verificationMode) - .startTransition( - eq(TRANSIT_CHANGE), - any<WindowContainerTransaction>(), - isA(DesktopModeMoveToDisplayTransitionHandler::class.java), - ) - verify(snapEventHandler, verificationMode).removeTaskIfTiled(task.displayId, task.taskId) - } - - @Test - fun moveToNextDesktopDisplay_moveIfDesktopModeSupportedOnDestination() { - moveToNextDesktopDisplay_moveIifDesktopModeSupportedOnDestination(true) - } - - @Test - fun moveToNextDesktopDisplay_dontMoveIfDesktopModeNotSupportedOnDestination() { - moveToNextDesktopDisplay_moveIifDesktopModeSupportedOnDestination(false) - } - - @Test - fun getTaskWindowingMode() { - val fullscreenTask = setUpFullscreenTask() - val freeformTask = setUpFreeformTask() - - assertThat(controller.getTaskWindowingMode(fullscreenTask.taskId)) - .isEqualTo(WINDOWING_MODE_FULLSCREEN) - assertThat(controller.getTaskWindowingMode(freeformTask.taskId)) - .isEqualTo(WINDOWING_MODE_FREEFORM) - assertThat(controller.getTaskWindowingMode(999)).isEqualTo(WINDOWING_MODE_UNDEFINED) - } - - @Test - fun onDesktopWindowClose_noActiveTasks() { - val task = setUpFreeformTask(active = false) - val wct = WindowContainerTransaction() - controller.onDesktopWindowClose(wct, displayId = DEFAULT_DISPLAY, task) - // Doesn't modify transaction - assertThat(wct.hierarchyOps).isEmpty() - } - - @Test - @EnableFlags(FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY) - fun onDesktopWindowClose_singleActiveTask_noWallpaperActivityToken_launchesHome() { - val task = setUpFreeformTask() - val wct = WindowContainerTransaction() - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - - controller.onDesktopWindowClose(wct, displayId = DEFAULT_DISPLAY, task) - - // Should launch home - wct.assertPendingIntentAt(0, launchHomeIntent(DEFAULT_DISPLAY)) - wct.assertPendingIntentActivityOptionsLaunchDisplayIdAt(0, DEFAULT_DISPLAY) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER) - fun onDesktopWindowClose_singleActiveTask_hasWallpaperActivityToken() { - val task = setUpFreeformTask() - - val wct = WindowContainerTransaction() - controller.onDesktopWindowClose(wct, displayId = DEFAULT_DISPLAY, task) - // Adds remove wallpaper operation - wct.assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - fun onDesktopWindowClose_singleActiveTask_isClosing() { - val task = setUpFreeformTask() - - taskRepository.addClosingTask(displayId = DEFAULT_DISPLAY, deskId = 0, taskId = task.taskId) - - val wct = WindowContainerTransaction() - controller.onDesktopWindowClose(wct, displayId = DEFAULT_DISPLAY, task) - // Doesn't modify transaction - assertThat(wct.hierarchyOps).isEmpty() - } - - @Test - fun onDesktopWindowClose_singleActiveTask_isMinimized() { - val task = setUpFreeformTask() - - taskRepository.minimizeTask(DEFAULT_DISPLAY, task.taskId) - - val wct = WindowContainerTransaction() - controller.onDesktopWindowClose(wct, displayId = DEFAULT_DISPLAY, task) - // Doesn't modify transaction - assertThat(wct.hierarchyOps).isEmpty() - } - - @Test - fun tilingBroken_onTaskMinimised() { - val task = setUpFreeformTask() - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task, MinimizeReason.TASK_LIMIT) - - verify(snapEventHandler, times(1)).removeTaskIfTiled(task.displayId, task.taskId) - } - - @Test - fun onDesktopWindowClose_multipleActiveTasks() { - val task1 = setUpFreeformTask() - setUpFreeformTask() - - val wct = WindowContainerTransaction() - controller.onDesktopWindowClose(wct, displayId = DEFAULT_DISPLAY, task1) - // Doesn't modify transaction - assertThat(wct.hierarchyOps).isEmpty() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER) - fun onDesktopWindowClose_multipleActiveTasks_isOnlyNonClosingTask() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - - taskRepository.addClosingTask( - displayId = DEFAULT_DISPLAY, - deskId = 0, - taskId = task2.taskId, - ) - - val wct = WindowContainerTransaction() - controller.onDesktopWindowClose(wct, displayId = DEFAULT_DISPLAY, task1) - // Adds remove wallpaper operation - wct.assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER) - fun onDesktopWindowClose_multipleActiveTasks_hasMinimized() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - - taskRepository.minimizeTask(DEFAULT_DISPLAY, task2.taskId) - - val wct = WindowContainerTransaction() - controller.onDesktopWindowClose(wct, displayId = DEFAULT_DISPLAY, task1) - // Adds remove wallpaper operation - wct.assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onDesktopWindowClose_lastWindow_deactivatesDesk() { - val task = setUpFreeformTask() - val wct = WindowContainerTransaction() - - controller.onDesktopWindowClose(wct, displayId = DEFAULT_DISPLAY, task) - - verify(desksOrganizer).deactivateDesk(wct, deskId = 0) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onDesktopWindowClose_lastWindow_addsPendingDeactivateTransition() { - val task = setUpFreeformTask() - val wct = WindowContainerTransaction() - - val transition = Binder() - val runOnTransitStart = - controller.onDesktopWindowClose(wct, displayId = DEFAULT_DISPLAY, task) - runOnTransitStart(transition) - - verify(desksTransitionsObserver) - .addPendingTransition(DeskTransition.DeactivateDesk(transition, deskId = 0)) - } - - @Test - fun onDesktopWindowMinimize_noActiveTask_doesntRemoveWallpaper() { - val task = setUpFreeformTask(active = false) - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - val captor = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(captor.capture(), eq(task.taskId), eq(false)) - assertThat( - captor.firstValue.hierarchyOps.none { hop -> - hop.type == HIERARCHY_OP_TYPE_REMOVE_TASK && - hop.container == wallpaperToken.asBinder() - } - ) - .isTrue() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun onDesktopWindowMinimize_lastWindow_deactivatesDesk() { - val task = setUpFreeformTask() - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - val captor = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(captor.capture(), eq(task.taskId), eq(true)) - verify(desksOrganizer).deactivateDesk(captor.firstValue, deskId = 0) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun onDesktopWindowMinimize_lastWindow_dontDeactivateDesk() { - val task = setUpFreeformTask() - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - val captor = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(captor.capture(), eq(task.taskId), eq(true)) - - assertTrue(captor.firstValue.isEmpty) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun onDesktopWindowMinimize_lastWindow_addsPendingDeactivateTransition() { - val task = setUpFreeformTask() - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - verify(desksTransitionsObserver) - .addPendingTransition(DeskTransition.DeactivateDesk(token = transition, deskId = 0)) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun onDesktopWindowMinimize_lastWindow_dontAddPendingDeactivateTransition() { - val task = setUpFreeformTask() - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - verifyNoInteractions(desksTransitionsObserver) - } - - private fun minimizePipTask(task: RunningTaskInfo, appOpsAllowed: Boolean = true) { - val handler = mock(TransitionHandler::class.java) - whenever(transitions.dispatchRequest(any(), any(), anyOrNull())) - .thenReturn(android.util.Pair(handler, WindowContainerTransaction())) - mContext.addMockSystemService(Context.APP_OPS_SERVICE, mockAppOpsManager) - mContext.setMockPackageManager(packageManager) - - whenever( - mockAppOpsManager.checkOpNoThrow( - eq(AppOpsManager.OP_PICTURE_IN_PICTURE), - any(), - any(), - ) - ) - .thenReturn( - if (appOpsAllowed) AppOpsManager.MODE_ALLOWED else AppOpsManager.MODE_IGNORED - ) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP) - fun onPipTaskMinimize_autoEnterEnabled_startPipTransition() { - val task = setUpPipTask(autoEnterEnabled = true) - - minimizePipTask(task) - - verify(freeformTaskTransitionStarter).startPipTransition(any()) - verify(freeformTaskTransitionStarter, never()) - .startMinimizedModeTransition(any(), anyInt(), anyBoolean()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP) - fun onPipTaskMinimize_autoEnterDisabled_startMinimizeTransition() { - val task = setUpPipTask(autoEnterEnabled = false) - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(Binder()) - - minimizePipTask(task) - - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(any(), eq(task.taskId), anyBoolean()) - verify(freeformTaskTransitionStarter, never()).startPipTransition(any()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP) - fun onPipTaskMinimize_pipNotAllowedInAppOps_startMinimizeTransition() { - val task = setUpPipTask(autoEnterEnabled = true) - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(Binder()) - whenever( - mockAppOpsManager.checkOpNoThrow( - eq(AppOpsManager.OP_PICTURE_IN_PICTURE), - any(), - any(), - ) - ) - .thenReturn(AppOpsManager.MODE_IGNORED) - - minimizePipTask(task, appOpsAllowed = false) - - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(any(), eq(task.taskId), anyBoolean()) - verify(freeformTaskTransitionStarter, never()).startPipTransition(any()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP) - fun onPipTaskMinimize_autoEnterEnabled_sendsTaskbarRoundingUpdate() { - val task = setUpPipTask(autoEnterEnabled = true) - - minimizePipTask(task) - - verify(taskbarDesktopTaskListener).onTaskbarCornerRoundingUpdate(anyBoolean()) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun onPipTaskMinimize_isLastTask_deactivatesDesk() { - val deskId = DEFAULT_DISPLAY - val task = setUpPipTask(autoEnterEnabled = true, deskId = deskId) - val transition = Binder() - whenever(freeformTaskTransitionStarter.startPipTransition(any())).thenReturn(transition) - - minimizePipTask(task) - - verify(desksOrganizer).deactivateDesk(any(), eq(deskId), skipReorder = eq(false)) - verify(desksTransitionsObserver) - .addPendingTransition(DeskTransition.DeactivateDesk(transition, deskId)) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - fun onPipTaskMinimize_isLastTask_removesWallpaper() { - val task = setUpPipTask(autoEnterEnabled = true) - - minimizePipTask(task) - - val arg = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter).startPipTransition(arg.capture()) - // Wallpaper is moved to the back - arg.lastValue.assertReorder(wallpaperToken, /* toTop= */ false) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP) - fun onPipTaskMinimize_isLastTask_launchesHome() { - val task = setUpPipTask(autoEnterEnabled = true) - - minimizePipTask(task) - - val arg = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter).startPipTransition(arg.capture()) - arg.lastValue.assertPendingIntent(launchHomeIntent(DEFAULT_DISPLAY)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onPipTaskMinimize_multiActivity_reordersParentToBack() { - val task = setUpPipTask(autoEnterEnabled = true).apply { numActivities = 2 } - // Add a second task so that entering PiP does not trigger Desktop cleanup - setUpFreeformTask(deskId = DEFAULT_DISPLAY) - - minimizePipTask(task) - - val arg = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter).startPipTransition(arg.capture()) - assertThat(arg.lastValue.hierarchyOps.size).isEqualTo(1) - arg.lastValue.assertReorderAt(index = 0, task, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun onPipTaskMinimize_multiActivity_minimizeParent() { - val task = setUpPipTask(autoEnterEnabled = true).apply { numActivities = 2 } - // Add a second task so that entering PiP does not trigger Desktop cleanup - setUpFreeformTask(deskId = DEFAULT_DISPLAY) - - minimizePipTask(task) - - val arg = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter).startPipTransition(arg.capture()) - verify(desksOrganizer) - .minimizeTask(wct = arg.lastValue, deskId = DEFAULT_DISPLAY, task = task) - } - - @Test - fun onDesktopWindowMinimize_singleActiveTask_noWallpaperActivityToken_doesntRemoveWallpaper() { - val task = setUpFreeformTask(active = true) - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - val captor = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(captor.capture(), eq(task.taskId), eq(true)) - assertThat( - captor.firstValue.hierarchyOps.none { hop -> - hop.type == HIERARCHY_OP_TYPE_REMOVE_TASK - } - ) - .isTrue() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun onTaskMinimize_singleActiveTask_hasWallpaperActivityToken_removesWallpaper() { - val task = setUpFreeformTask() - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - // The only active task is being minimized. - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - val captor = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(captor.capture(), eq(task.taskId), eq(true)) - // Adds remove wallpaper operation - captor.firstValue.assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun onTaskMinimize_singleActiveTask_hasWallpaperActivityToken_dontRemoveWallpaper() { - val task = setUpFreeformTask() - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - // The only active task is being minimized. - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - val captor = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(captor.capture(), eq(task.taskId), eq(true)) - - assertThat(captor.firstValue.changes).isEmpty() - } - - @Test - fun onDesktopWindowMinimize_singleActiveTask_alreadyMinimized_doesntRemoveWallpaper() { - val task = setUpFreeformTask() - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - taskRepository.minimizeTask(DEFAULT_DISPLAY, task.taskId) - - // The only active task is already minimized. - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - val captor = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(captor.capture(), eq(task.taskId), eq(false)) - assertThat( - captor.firstValue.hierarchyOps.none { hop -> - hop.type == HIERARCHY_OP_TYPE_REMOVE_TASK && - hop.container == wallpaperToken.asBinder() - } - ) - .isTrue() - } - - @Test - fun onDesktopWindowMinimize_multipleActiveTasks_doesntRemoveWallpaper() { - val task1 = setUpFreeformTask(active = true) - setUpFreeformTask(active = true) - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task1, MinimizeReason.MINIMIZE_BUTTON) - - val captor = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(captor.capture(), eq(task1.taskId), eq(false)) - assertThat( - captor.firstValue.hierarchyOps.none { hop -> - hop.type == HIERARCHY_OP_TYPE_REMOVE_TASK && - hop.container == wallpaperToken.asBinder() - } - ) - .isTrue() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun onDesktopWindowMinimize_multipleActiveTasks_minimizesTheOnlyVisibleTask_removesWallpaper() { - val task1 = setUpFreeformTask(active = true) - val task2 = setUpFreeformTask(active = true) - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - taskRepository.minimizeTask(DEFAULT_DISPLAY, task2.taskId) - - // task1 is the only visible task as task2 is minimized. - controller.minimizeTask(task1, MinimizeReason.MINIMIZE_BUTTON) - // Adds remove wallpaper operation - val captor = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(captor.capture(), eq(task1.taskId), eq(true)) - // Adds remove wallpaper operation - captor.firstValue.assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun onDesktopWindowMinimize_multipleActiveTasks_minimizesTheOnlyVisibleTask_dontRemoveWallpaper() { - val task1 = setUpFreeformTask(active = true) - val task2 = setUpFreeformTask(active = true) - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - taskRepository.minimizeTask(DEFAULT_DISPLAY, task2.taskId) - - // task1 is the only visible task as task2 is minimized. - controller.minimizeTask(task1, MinimizeReason.MINIMIZE_BUTTON) - - val captor = argumentCaptor<WindowContainerTransaction>() - verify(freeformTaskTransitionStarter) - .startMinimizedModeTransition(captor.capture(), eq(task1.taskId), eq(true)) - - assertTrue(captor.firstValue.isEmpty) - } - - @Test - fun onDesktopWindowMinimize_triesToExitImmersive() { - val task = setUpFreeformTask() - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - verify(mMockDesktopImmersiveController).exitImmersiveIfApplicable(any(), eq(task), any()) - } - - @Test - fun onDesktopWindowMinimize_invokesImmersiveTransitionStartCallback() { - val task = setUpFreeformTask() - val transition = Binder() - val runOnTransit = RunOnStartTransitionCallback() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - whenever(mMockDesktopImmersiveController.exitImmersiveIfApplicable(any(), eq(task), any())) - .thenReturn( - ExitResult.Exit(exitingTask = task.taskId, runOnTransitionStart = runOnTransit) - ) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - assertThat(runOnTransit.invocations).isEqualTo(1) - assertThat(runOnTransit.lastInvoked).isEqualTo(transition) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onDesktopWindowMinimize_minimizesTask() { - val task = setUpFreeformTask() - val transition = Binder() - val runOnTransit = RunOnStartTransitionCallback() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - whenever(mMockDesktopImmersiveController.exitImmersiveIfApplicable(any(), eq(task), any())) - .thenReturn( - ExitResult.Exit(exitingTask = task.taskId, runOnTransitionStart = runOnTransit) - ) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - verify(desksOrganizer).minimizeTask(any(), /* deskId= */ eq(0), eq(task)) - } - - @Test - fun onDesktopWindowMinimize_triesToStopTiling() { - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - verify(snapEventHandler).removeTaskIfTiled(eq(DEFAULT_DISPLAY), eq(task.taskId)) - } - - @Test - fun onDesktopWindowMinimize_sendsTaskbarRoundingUpdate() { - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val transition = Binder() - whenever( - freeformTaskTransitionStarter.startMinimizedModeTransition( - any(), - anyInt(), - anyBoolean(), - ) - ) - .thenReturn(transition) - - controller.minimizeTask(task, MinimizeReason.MINIMIZE_BUTTON) - - verify(taskbarDesktopTaskListener).onTaskbarCornerRoundingUpdate(anyBoolean()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTask_switchToDesktop_movesTaskToDesk() { - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = 5) - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 5) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 5) - - val fullscreenTask = createFullscreenTask() - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct, "should handle request") - verify(desksOrganizer).moveTaskToDesk(wct = wct, deskId = 5, task = fullscreenTask) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTaskThatWasInactiveInDesk_tracksDeskDeactivation() { - // Set up and existing desktop task in an active desk. - val inactiveInDeskTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - taskRepository.setDeskInactive(deskId = 0) - - // Now the task is launching as fullscreen. - inactiveInDeskTask.configuration.windowConfiguration.windowingMode = - WINDOWING_MODE_FULLSCREEN - val transition = Binder() - val wct = controller.handleRequest(transition, createTransition(inactiveInDeskTask)) - - // Desk is deactivated. - assertNotNull(wct, "should handle request") - verify(desksTransitionsObserver) - .addPendingTransition(DeskTransition.DeactivateDesk(transition, deskId = 0)) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTask_freeformVisible_multiDesksDisabled_returnSwitchToFreeformWCT() { - val homeTask = setUpHomeTask() - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - val fullscreenTask = createFullscreenTask() - - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct, "should handle request") - assertThat(wct.changes[fullscreenTask.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - - assertThat(wct.hierarchyOps).hasSize(1) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTask_deskActive_multiDesksEnabled_movesToDesk() { - val deskId = 0 - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId = deskId) - setUpHomeTask() - val fullscreenTask = createFullscreenTask() - - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct, "should handle request") - verify(desksOrganizer).moveTaskToDesk(wct, deskId, fullscreenTask) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTaskWithTaskOnHome_freeformVisible_multiDesksDisabled_returnSwitchToFreeformWCT() { - val homeTask = setUpHomeTask() - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - val fullscreenTask = createFullscreenTask() - fullscreenTask.baseIntent.setFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME) - - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct, "should handle request") - assertThat(wct.changes[fullscreenTask.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - - // There are 5 hops that are happening in this case: - // 1. Moving the fullscreen task to top as we add moveToDesktop() changes - // 2. Bringing home task to front - // 3. Pending intent for the wallpaper - // 4. Bringing the existing freeform task to top - // 5. Bringing the fullscreen task back at the top - assertThat(wct.hierarchyOps).hasSize(5) - wct.assertReorderAt(1, homeTask, toTop = true) - wct.assertReorderAt(4, fullscreenTask, toTop = true) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTaskWithTaskOnHome_activeDesk_multiDesksEnabled_movesToDesk() { - val deskId = 0 - setUpHomeTask() - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - val fullscreenTask = createFullscreenTask() - fullscreenTask.baseIntent.setFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME) - - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct, "should handle request") - verify(desksOrganizer).moveTaskToDesk(wct, deskId, fullscreenTask) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTaskToDesk_underTaskLimit_multiDesksDisabled_dontMinimize() { - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - val fullscreenTask = createFullscreenTask() - - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - // Make sure we only reorder the new task to top (we don't reorder the old task to bottom) - assertThat(wct?.hierarchyOps?.size).isEqualTo(1) - wct!!.assertReorderAt(0, fullscreenTask, toTop = true) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTaskToDesk_underTaskLimit_multiDesksEnabled_dontMinimize() { - val deskId = 5 - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - val freeformTask = - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId).also { - markTaskVisible(it) - } - - // Launch a fullscreen task while in the desk. - val fullscreenTask = createFullscreenTask() - val transition = Binder() - val wct = controller.handleRequest(transition, createTransition(fullscreenTask)) - - assertNotNull(wct) - verify(desksOrganizer, never()).minimizeTask(eq(wct), eq(deskId), any()) - assertNull(desktopTasksLimiter.getMinimizingTask(transition)) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun handleRequest_fullscreenTaskToDesk_bringsTasksOverLimit_multiDesksDisabled_otherTaskIsMinimized() { - val freeformTasks = (1..MAX_TASK_LIMIT).map { _ -> setUpFreeformTask() } - freeformTasks.forEach { markTaskVisible(it) } - val fullscreenTask = createFullscreenTask() - - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - // Make sure we reorder the new task to top, and the back task to the bottom - assertThat(wct!!.hierarchyOps.size).isEqualTo(2) - wct.assertReorderAt(0, fullscreenTask, toTop = true) - wct.assertReorderAt(1, freeformTasks[0], toTop = false) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun handleRequest_fullscreenTaskToDesk_bringsTasksOverLimit_multiDesksDisabled_separateMinimize() { - val freeformTasks = (1..MAX_TASK_LIMIT).map { _ -> setUpFreeformTask() } - freeformTasks.forEach { markTaskVisible(it) } - val fullscreenTask = createFullscreenTask() - val transition = Binder() - - val wct = controller.handleRequest(transition, createTransition(fullscreenTask)) - - // Make sure we reorder the new task to top, and the back task to the bottom - assertThat(wct!!.hierarchyOps.size).isEqualTo(1) - wct.assertReorderAt(0, fullscreenTask, toTop = true) - assertThat(desktopTasksLimiter.hasTaskLimitTransitionForTesting(transition)).isTrue() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun handleRequest_fullscreenTaskToDesk_bringsTasksOverLimit_multiDesksEnabled_otherTaskIsMinimized() { - val deskId = 5 - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - val freeformTasks = - (1..MAX_TASK_LIMIT).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId).also { - markTaskVisible(it) - } - } - - // Launch a fullscreen task while in the desk. - setUpHomeTask() - val fullscreenTask = createFullscreenTask() - val transition = Binder() - val wct = controller.handleRequest(transition, createTransition(fullscreenTask)) - - assertNotNull(wct) - verify(desksOrganizer).minimizeTask(wct, deskId, freeformTasks[0]) - val minimizingTask = - assertNotNull(desktopTasksLimiter.getMinimizingTask(transition)?.taskId) - assertThat(minimizingTask).isEqualTo(freeformTasks[0].taskId) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun handleRequest_fullscreenTaskWithTaskOnHome_bringsTasksOverLimit_multiDesksDisabled_otherTaskIsMinimized() { - val freeformTasks = (1..MAX_TASK_LIMIT).map { _ -> setUpFreeformTask() } - freeformTasks.forEach { markTaskVisible(it) } - val fullscreenTask = createFullscreenTask() - fullscreenTask.baseIntent.setFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME) - - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - // Make sure we reorder the new task to top, and the back task to the bottom - assertThat(wct!!.hierarchyOps.size).isEqualTo(8) - wct.assertReorderAt(0, fullscreenTask, toTop = true) - // Oldest task that needs to minimized is never reordered to top over Home. - val taskToMinimize = freeformTasks[0] - wct.assertWithoutHop { hop -> - hop.container == taskToMinimize.token && - hop.type == HIERARCHY_OP_TYPE_REORDER && - hop.toTop == true - } - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun handleRequest_fullscreenTaskWithTaskOnHome_bringsTasksOverLimit_multiDesksEnabled_otherTaskIsMinimized() { - val deskId = 5 - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - val freeformTasks = - (1..MAX_TASK_LIMIT).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - freeformTasks.forEach { markTaskVisible(it) } - val fullscreenTask = createFullscreenTask() - fullscreenTask.baseIntent.setFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME) - - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct) - // The launching task is moved to the desk. - verify(desksOrganizer).moveTaskToDesk(wct, deskId, fullscreenTask) - // The bottom-most task is minimized. - verify(desksOrganizer).minimizeTask(wct, deskId, freeformTasks[0]) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun handleRequest_fullscreenTaskToDesk_bringsTasksOverLimit_separateMinimizeFlagEnabled_minimizeSeparately() { - val freeformTasks = (1..MAX_TASK_LIMIT).map { _ -> setUpFreeformTask() } - freeformTasks.forEach { markTaskVisible(it) } - val fullscreenTask = createFullscreenTask() - val transition = Binder() - - val wct = controller.handleRequest(transition, createTransition(fullscreenTask)) - - assertThat(wct!!.hierarchyOps.size).isAtMost(1) - assertThat(desktopTasksLimiter.hasTaskLimitTransitionForTesting(transition)).isTrue() - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun handleRequest_fullscreenTaskWithTaskOnHome_beyondLimit_multiDesksDisabled_existingAndNewTasksAreMinimized() { - val minimizedTask = setUpFreeformTask() - taskRepository.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = minimizedTask.taskId) - val freeformTasks = (1..MAX_TASK_LIMIT).map { _ -> setUpFreeformTask() } - freeformTasks.forEach { markTaskVisible(it) } - val homeTask = setUpHomeTask() - val fullscreenTask = createFullscreenTask() - fullscreenTask.baseIntent.setFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME) - - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertThat(wct!!.hierarchyOps.size).isEqualTo(9) - wct.assertReorderAt(0, fullscreenTask, toTop = true) - // Make sure we reorder the home task to the top, desktop tasks to top of them and minimized - // task is under the home task. - wct.assertReorderAt(1, homeTask, toTop = true) - // Oldest task that needs to minimized is never reordered to top over Home. - val taskToMinimize = freeformTasks[0] - wct.assertWithoutHop { hop -> - hop.container == taskToMinimize.token && - hop.type == HIERARCHY_OP_TYPE_REORDER && - hop.toTop == true - } - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun handleRequest_fullscreenTaskWithTaskOnHome_beyondLimit_separateMinFlagEnabled_minimizeSeparately() { - val minimizedTask = setUpFreeformTask() - taskRepository.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = minimizedTask.taskId) - val freeformTasks = (1..MAX_TASK_LIMIT).map { _ -> setUpFreeformTask() } - freeformTasks.forEach { markTaskVisible(it) } - val homeTask = setUpHomeTask() - val fullscreenTask = createFullscreenTask() - fullscreenTask.baseIntent.setFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME) - - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertThat(wct!!.hierarchyOps.size).isEqualTo(10) - wct.assertReorderAt(0, fullscreenTask, toTop = true) - // Make sure we reorder the home task to the top, desktop tasks to top of them and minimized - // task is under the home task. - wct.assertReorderAt(1, homeTask, toTop = true) - val taskToMinimize = freeformTasks[0] - wct.assertReorder(taskToMinimize.token, toTop = true) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun handleRequest_fullscreenTaskWithTaskOnHome_beyondLimit_multiDesksEnabled_existingAndNewTasksAreMinimized() { - // A desk with a minimized tasks, and non-minimized tasks already at the task limit. - val deskId = 5 - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - val minimizedTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - taskRepository.minimizeTaskInDesk( - displayId = DEFAULT_DISPLAY, - deskId = deskId, - taskId = minimizedTask.taskId, - ) - val freeformTasks = - (1..MAX_TASK_LIMIT).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId).also { - markTaskVisible(it) - } - } - - // Launch a fullscreen task that brings Home to front with it. - setUpHomeTask() - val fullscreenTask = createFullscreenTask() - fullscreenTask.baseIntent.setFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME) - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct) - verify(desksOrganizer).minimizeTask(wct, deskId, freeformTasks[0]) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTaskWithTaskOnHome_taskAddedToDesk() { - // A desk with a minimized tasks, and non-minimized tasks already at the task limit. - val deskId = 5 - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - - // Launch a fullscreen task that brings Home to front with it. - setUpHomeTask() - val fullscreenTask = createFullscreenTask() - fullscreenTask.baseIntent.setFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME) - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct) - verify(desksOrganizer).moveTaskToDesk(wct, deskId, fullscreenTask) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - fun handleRequest_fullscreenTaskWithTaskOnHome_activatesDesk() { - val deskId = 5 - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - - // Launch a fullscreen task that brings Home to front with it. - val homeTask = setUpHomeTask() - val fullscreenTask = createFullscreenTask() - fullscreenTask.baseIntent.setFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME) - val transition = Binder() - val wct = controller.handleRequest(transition, createTransition(fullscreenTask)) - - assertNotNull(wct) - wct.assertReorder(homeTask, toTop = true) - wct.assertReorder(wallpaperToken, toTop = true) - verify(desksOrganizer).activateDesk(wct, deskId) - verify(desksTransitionsObserver) - .addPendingTransition( - DeskTransition.ActivateDeskWithTask( - token = transition, - displayId = DEFAULT_DISPLAY, - deskId = deskId, - enterTaskId = fullscreenTask.taskId, - ) - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTask_noTasks_enforceDesktop_freeformDisplay_returnFreeformWCT() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - - val fullscreenTask = createFullscreenTask() - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct, "should handle request") - assertThat(wct.changes[fullscreenTask.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) - assertThat(wct.hierarchyOps).hasSize(3) - // There are 3 hops that are happening in this case: - // 1. Moving the fullscreen task to top as we add moveToDesktop() changes - // 2. Pending intent for the wallpaper - // 3. Bringing the fullscreen task back at the top - wct.assertPendingIntentAt(1, desktopWallpaperIntent) - wct.assertReorderAt(2, fullscreenTask, toTop = true) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_fullscreenTask_noInDesk_enforceDesktop_freeformDisplay_movesToDesk() { - val deskId = 0 - taskRepository.setDeskInactive(deskId) - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - - val fullscreenTask = createFullscreenTask() - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct, "should handle request") - verify(desksOrganizer).moveTaskToDesk(wct, deskId, fullscreenTask) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DEFAULT_TO_DESKTOP_BUGFIX, - ) - fun handleRequest_fullscreenTask_noInDesk_enforceDesktop_freeformDisplay_movesToDesk_desktopFirst() { - // Ensure the force enter desktop works when the deprecated flag is off. - desktopState.enterDesktopByDefaultOnFreeformDisplay = false - val deskId = 0 - taskRepository.setDeskInactive(deskId) - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - - val fullscreenTask = createFullscreenTask() - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct, "should handle request") - verify(desksOrganizer).moveTaskToDesk(wct, deskId, fullscreenTask) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_fullscreenTask_noInDesk_enforceDesktop_secondaryDisplay_movesToDesk() { - val deskId = 5 - taskRepository.addDesk(displayId = SECONDARY_DISPLAY_ID, deskId = deskId) - taskRepository.setDeskInactive(deskId) - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - assertNotNull(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)) - .configuration - .windowConfiguration - .windowingMode = WINDOWING_MODE_FREEFORM - - val fullscreenTask = createFullscreenTask(displayId = SECONDARY_DISPLAY_ID) - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertNotNull(wct, "should handle request") - verify(desksOrganizer).moveTaskToDesk(wct, deskId, fullscreenTask) - } - - @Test - fun handleRequest_fullscreenTask_notInDesk_enforceDesktop_fullscreenDisplay_returnNull() { - taskRepository.setDeskInactive(deskId = 0) - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - - val fullscreenTask = createFullscreenTask() - val wct = controller.handleRequest(Binder(), createTransition(fullscreenTask)) - - assertThat(wct).isNull() - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTask_freeformNotVisible_returnNull() { - val freeformTask = setUpFreeformTask() - markTaskHidden(freeformTask) - val fullscreenTask = createFullscreenTask() - assertThat(controller.handleRequest(Binder(), createTransition(fullscreenTask))).isNull() - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTask_noOtherTasks_returnNull() { - val fullscreenTask = createFullscreenTask() - assertThat(controller.handleRequest(Binder(), createTransition(fullscreenTask))).isNull() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTask_notInDesk_returnNull() { - taskRepository.setDeskInactive(deskId = 0) - val fullscreenTask = createFullscreenTask() - - assertThat(controller.handleRequest(Binder(), createTransition(fullscreenTask))).isNull() - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTask_freeformTaskOnOtherDisplay_returnNull() { - val fullscreenTaskDefaultDisplay = createFullscreenTask(displayId = DEFAULT_DISPLAY) - createFreeformTask(displayId = SECOND_DISPLAY) - - val result = - controller.handleRequest(Binder(), createTransition(fullscreenTaskDefaultDisplay)) - assertThat(result).isNull() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_fullscreenTask_deskInOtherDisplayActive_returnNull() { - taskRepository.setDeskInactive(deskId = 0) - val fullscreenTaskDefaultDisplay = createFullscreenTask(displayId = DEFAULT_DISPLAY) - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = 2) - taskRepository.setActiveDesk(displayId = SECOND_DISPLAY, deskId = 2) - - val result = - controller.handleRequest(Binder(), createTransition(fullscreenTaskDefaultDisplay)) - - assertThat(result).isNull() - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun handleRequest_freeformTask_freeformVisible_aboveTaskLimit_multiDesksDisabled_minimize() { - val deskId = 0 - val freeformTasks = - (1..MAX_TASK_LIMIT).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - freeformTasks.forEach { markTaskVisible(it) } - val newFreeformTask = createFreeformTask() - - val wct = - controller.handleRequest(Binder(), createTransition(newFreeformTask, TRANSIT_OPEN)) - - assertThat(wct?.hierarchyOps?.size).isEqualTo(1) - wct!!.assertReorderAt(0, freeformTasks[0], toTop = false) // Reorder to the bottom - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun handleRequest_freeformTask_freeformVisible_aboveTaskLimit_multiDesksEnabled_minimize() { - val deskId = 0 - val freeformTasks = - (1..MAX_TASK_LIMIT).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - freeformTasks.forEach { markTaskVisible(it) } - val newFreeformTask = createFreeformTask() - - val wct = - controller.handleRequest(Binder(), createTransition(newFreeformTask, TRANSIT_OPEN)) - - assertNotNull(wct) - verify(desksOrganizer).minimizeTask(wct, deskId, freeformTasks[0]) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun handleRequest_freeform_aboveTaskLimit_separateMinimizeFlagEnabled_minimizeSeparately() { - val deskId = 0 - val freeformTasks = - (1..MAX_TASK_LIMIT).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - freeformTasks.forEach { markTaskVisible(it) } - val newFreeformTask = createFreeformTask() - val transition = Binder() - - val wct = - controller.handleRequest(transition, createTransition(newFreeformTask, TRANSIT_OPEN)) - - assertNotNull(wct) - assertThat(wct.hierarchyOps).isEmpty() - assertThat(desktopTasksLimiter.hasTaskLimitTransitionForTesting(transition)).isTrue() - } - - @Test - fun handleRequest_freeformTask_relaunchActiveTask_taskBecomesUndefined() { - taskRepository.setDeskInactive(deskId = 0) - val freeformTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - markTaskHidden(freeformTask) - - val wct = controller.handleRequest(Binder(), createTransition(freeformTask)) - - // Should become undefined as the TDA is set to fullscreen. It will inherit from the TDA. - assertNotNull(wct, "should handle request") - assertThat(wct.changes[freeformTask.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) - } - - @Test - fun handleRequest_freeformTask_relaunchTask_enforceDesktop_freeformDisplay_noWinModeChange() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - - val freeformTask = setUpFreeformTask() - markTaskHidden(freeformTask) - val wct = controller.handleRequest(Binder(), createTransition(freeformTask)) - - assertNotNull(wct, "should handle request") - assertFalse(wct.anyWindowingModeChange(freeformTask.token)) - } - - @Test - fun handleRequest_freeformTask_relaunchTask_enforceDesktop_fullscreenDisplay_becomesUndefined() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - taskRepository.setDeskInactive(deskId = 0) - val freeformTask = setUpFreeformTask(DEFAULT_DISPLAY, deskId = 0) - markTaskHidden(freeformTask) - - val wct = controller.handleRequest(Binder(), createTransition(freeformTask)) - - assertNotNull(wct, "should handle request") - assertThat(wct.changes[freeformTask.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_freeformTask_desktopWallpaperDisabled_freeformNotVisible_reorderedToTop() { - val freeformTask1 = setUpFreeformTask() - val freeformTask2 = createFreeformTask() - - markTaskHidden(freeformTask1) - val result = - controller.handleRequest( - Binder(), - createTransition(freeformTask2, type = TRANSIT_TO_FRONT), - ) - - assertNotNull(result, "Should handle request") - assertThat(result.hierarchyOps?.size).isEqualTo(2) - result.assertReorderAt(1, freeformTask2, toTop = true) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_freeformTask_desktopWallpaperEnabled_freeformNotVisible_multiDesksDisabled_reorderedToTop() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val freeformTask1 = setUpFreeformTask() - val freeformTask2 = createFreeformTask() - - markTaskHidden(freeformTask1) - val result = - controller.handleRequest( - Binder(), - createTransition(freeformTask2, type = TRANSIT_TO_FRONT), - ) - - assertNotNull(result, "Should handle request") - assertThat(result.hierarchyOps?.size).isEqualTo(3) - // Add desktop wallpaper activity - result.assertPendingIntentAt(0, desktopWallpaperIntent) - // Bring active desktop tasks to front - result.assertReorderAt(1, freeformTask1, toTop = true) - // Bring new task to front - result.assertReorderAt(2, freeformTask2, toTop = true) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_freeformTask_desktopWallpaperEnabled_notInDesk_reorderedToTop() { - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val deskId = 0 - taskRepository.setDeskInactive(deskId) - val freeformTask1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - val freeformTask2 = createFreeformTask() - - val wct = - controller.handleRequest( - Binder(), - createTransition(freeformTask2, type = TRANSIT_TO_FRONT), - ) - - assertNotNull(wct, "Should handle request") - verify(desksOrganizer).reorderTaskToFront(wct, deskId, freeformTask1) - wct.assertReorder(freeformTask2, toTop = true) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_freeformTask_desktopWallpaperDisabled_noOtherTasks_reorderedToTop() { - val task = createFreeformTask() - val result = controller.handleRequest(Binder(), createTransition(task)) - - assertNotNull(result, "Should handle request") - assertThat(result.hierarchyOps?.size).isEqualTo(1) - result.assertReorderAt(0, task, toTop = true) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_freeformTask_dskWallpaperDisabled_freeformOnOtherDisplayOnly_reorderedToTop() { - val taskDefaultDisplay = createFreeformTask(displayId = DEFAULT_DISPLAY) - // Second display task - createFreeformTask(displayId = SECOND_DISPLAY) - - val result = controller.handleRequest(Binder(), createTransition(taskDefaultDisplay)) - - assertNotNull(result, "Should handle request") - assertThat(result.hierarchyOps?.size).isEqualTo(1) - result.assertReorderAt(0, taskDefaultDisplay, toTop = true) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_freeformTask_dskWallpaperEnabled_freeformOnOtherDisplayOnly_reorderedToTop() { - taskRepository.setDeskInactive(deskId = 0) - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - val taskDefaultDisplay = createFreeformTask(displayId = DEFAULT_DISPLAY) - // Second display task - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = 2) - taskRepository.setActiveDesk(displayId = SECOND_DISPLAY, deskId = 2) - setUpFreeformTask(displayId = SECOND_DISPLAY, deskId = 2) - - val result = controller.handleRequest(Binder(), createTransition(taskDefaultDisplay)) - - assertNotNull(result, "Should handle request") - assertThat(result.hierarchyOps?.size).isEqualTo(2) - // Add desktop wallpaper activity - result.assertPendingIntentAt(0, desktopWallpaperIntent) - // Bring new task to front - result.assertReorderAt(1, taskDefaultDisplay, toTop = true) - } - - @Test - fun handleRequest_freeformTask_alreadyInDesktop_noOverrideDensity_noConfigDensityChange() { - desktopConfig.useDesktopOverrideDensity = false - - val freeformTask1 = setUpFreeformTask() - markTaskVisible(freeformTask1) - - val freeformTask2 = createFreeformTask() - val result = - controller.handleRequest( - freeformTask2.token.asBinder(), - createTransition(freeformTask2), - ) - assertFalse(result.anyDensityConfigChange(freeformTask2.token)) - } - - @Test - fun handleRequest_freeformTask_alreadyInDesktop_overrideDensity_hasConfigDensityChange() { - desktopConfig.useDesktopOverrideDensity = true - - val freeformTask1 = setUpFreeformTask() - markTaskVisible(freeformTask1) - - val freeformTask2 = createFreeformTask() - val result = - controller.handleRequest( - freeformTask2.token.asBinder(), - createTransition(freeformTask2), - ) - assertTrue(result.anyDensityConfigChange(freeformTask2.token)) - } - - @Test - fun handleRequest_freeformTask_keyguardLocked_returnNull() { - whenever(keyguardManager.isKeyguardLocked).thenReturn(true) - val freeformTask = createFreeformTask(displayId = DEFAULT_DISPLAY) - - val result = controller.handleRequest(Binder(), createTransition(freeformTask)) - - assertNull(result, "Should NOT handle request") - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_freeformTask_notInDesktop_noForceEnterDesktop_movesTaskToDesk() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = false - taskRepository.setDeskInactive(deskId = 0) - val freeformTask = createFreeformTask(displayId = DEFAULT_DISPLAY) - - val result = controller.handleRequest(Binder(), createTransition(freeformTask)) - - assertNotNull(result) - verify(desksOrganizer).moveTaskToDesk(result, deskId = 0, freeformTask) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_freeformTask_alreadyInDesktop_noForceEnterDesktop_movesTaskToDesk() { - desktopState.enterDesktopByDefaultOnFreeformDisplay = false - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val freeformTask = createFreeformTask(displayId = DEFAULT_DISPLAY) - - val result = controller.handleRequest(Binder(), createTransition(freeformTask)) - - assertNotNull(result) - verify(desksOrganizer).moveTaskToDesk(result, deskId = 0, freeformTask) - } - - @Test - fun handleRequest_notOpenOrToFrontTransition_returnNull() { - val task = - TestRunningTaskInfoBuilder() - .setActivityType(ACTIVITY_TYPE_STANDARD) - .setWindowingMode(WINDOWING_MODE_FULLSCREEN) - .build() - val transition = createTransition(task = task, type = TRANSIT_CLOSE) - val result = controller.handleRequest(Binder(), transition) - assertThat(result).isNull() - } - - @Test - fun handleRequest_noTriggerTask_returnNull() { - assertThat(controller.handleRequest(Binder(), createTransition(task = null))).isNull() - } - - @Test - fun handleRequest_triggerTaskNotStandard_returnNull() { - val task = TestRunningTaskInfoBuilder().setActivityType(ACTIVITY_TYPE_HOME).build() - assertThat(controller.handleRequest(Binder(), createTransition(task))).isNull() - } - - @Test - fun handleRequest_triggerTaskNotFullscreenOrFreeform_returnNull() { - val task = - TestRunningTaskInfoBuilder() - .setActivityType(ACTIVITY_TYPE_STANDARD) - .setWindowingMode(WINDOWING_MODE_MULTI_WINDOW) - .build() - assertThat(controller.handleRequest(Binder(), createTransition(task))).isNull() - } - - @Test - fun handleRequest_recentsAnimationRunning_returnNull() { - // Set up a visible freeform task so a fullscreen task should be converted to freeform - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - - // Mark recents animation running - recentsTransitionStateListener.onTransitionStateChanged(TRANSITION_STATE_ANIMATING) - - // Open a fullscreen task, check that it does not result in a WCT with changes to it - val fullscreenTask = createFullscreenTask() - assertThat(controller.handleRequest(Binder(), createTransition(fullscreenTask))).isNull() - } - - @Test - fun handleRequest_recentsAnimationRunning_relaunchActiveTask_taskBecomesUndefined() { - // Set up a visible freeform task - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - - // Mark recents animation running - recentsTransitionStateListener.onTransitionStateChanged(TRANSITION_STATE_ANIMATING) - - // Should become undefined as the TDA is set to fullscreen. It will inherit from the TDA. - val result = controller.handleRequest(Binder(), createTransition(freeformTask)) - assertThat(result?.changes?.get(freeformTask.token.asBinder())?.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_recentsAnimationRunning_relaunchActiveTask_tracksDeskDeactivation() { - // Set up a visible freeform task - val freeformTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - markTaskVisible(freeformTask) - - // Mark recents animation running - recentsTransitionStateListener.onTransitionStateChanged(TRANSITION_STATE_ANIMATING) - - val transition = Binder() - controller.handleRequest(transition, createTransition(freeformTask)) - - desksTransitionsObserver.addPendingTransition( - DeskTransition.DeactivateDesk(transition, deskId = 0) - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_topActivityTransparentWithoutDisplay_multiDesksDisabled_returnSwitchToFreeformWCT() { - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - - val task = - createFullscreenTask().apply { - isActivityStackTransparent = true - isTopActivityNoDisplay = true - numActivities = 1 - } - - val result = controller.handleRequest(Binder(), createTransition(task)) - assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_topActivityTransparentWithoutDisplay_multiDesksEnabled_returnSwitchToFreeformWCT() { - val deskId = 0 - val freeformTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - markTaskVisible(freeformTask) - - val task = - createFullscreenTask().apply { - isActivityStackTransparent = true - isTopActivityNoDisplay = true - numActivities = 1 - } - - val wct = controller.handleRequest(Binder(), createTransition(task)) - - assertNotNull(wct) - verify(desksOrganizer).moveTaskToDesk(wct, deskId, task) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_exemptFromDesktopFreeformTask_notInDesktop_returnSwitchToFullscreenWCT() { - taskRepository.setDeskInactive(deskId = 0) - val tda = - DisplayAreaInfo(MockToken().token(), DEFAULT_DISPLAY, /* featureId= */ 0).apply { - configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - } - whenever(rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)).thenReturn(tda) - val freeformExemptTask = - createFreeformTask(displayId = DEFAULT_DISPLAY).apply { - baseActivity = - ComponentName( - context.resources.getString(com.android.internal.R.string.config_systemUi), - /* cls= */ "", - ) - } - - val wct = controller.handleRequest(Binder(), createTransition(freeformExemptTask)) - - assertNotNull(wct, "Should handle request") - val mode = - assertNotNull( - wct.changes[freeformExemptTask.token.asBinder()]?.windowingMode, - "Should have change for freeform task", - ) - assertThat(mode).isEqualTo(WINDOWING_MODE_FULLSCREEN) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - @DisableFlags( - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION, - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE, - ) - fun handleRequest_topActivityTransparentWithDisplay_returnSwitchToFullscreenWCT() { - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - - val task = - setUpFreeformTask().apply { - isActivityStackTransparent = true - isTopActivityNoDisplay = false - numActivities = 1 - baseActivity = ComponentName(/* pkg= */ "", /* cls= */ "") - } - - val result = controller.handleRequest(Binder(), createTransition(task)) - assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode) + val result = controller.handleRequest(Binder(), createTransition(task)) + assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode) + .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN + } + + @Test + fun handleRequest_systemUIActivity_returnSwitchToFullscreenWCT() { + val task = setUpFreeformTask() + + // Set task as systemUI package + val systemUIPackageName = context.resources.getString( + com.android.internal.R.string.config_systemUi) + val baseComponent = ComponentName(systemUIPackageName, /* class */ "") + task.baseActivity = baseComponent + + val result = controller.handleRequest(Binder(), createTransition(task)) + assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode) .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, - Flags.FLAG_INCLUDE_TOP_TRANSPARENT_FULLSCREEN_TASK_IN_DESKTOP_HEURISTIC, - ) - @DisableFlags( - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION, - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE, - ) - fun handleRequest_topActivityTransparentWithDisplay_savedToDesktopRepository() { - val freeformTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - markTaskVisible(freeformTask) - - val topTransparentTask = - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = DEFAULT_DISPLAY).apply { - isActivityStackTransparent = true - isTopActivityNoDisplay = false - numActivities = 1 - baseActivity = ComponentName(/* pkg= */ "", /* cls= */ "") - } - - val topTransparentTaskData = - DesktopRepository.TopTransparentFullscreenTaskData( - topTransparentTask.taskId, - topTransparentTask.token, - ) - controller.handleRequest(Binder(), createTransition(topTransparentTask)) - assertThat(taskRepository.getTopTransparentFullscreenTaskData(DEFAULT_DISPLAY)) - .isEqualTo(topTransparentTaskData) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, - Flags.FLAG_INCLUDE_TOP_TRANSPARENT_FULLSCREEN_TASK_IN_DESKTOP_HEURISTIC, - ) - @DisableFlags( - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION, - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE, - ) - fun handleRequest_desktopNotShowing_topTransparentFullscreenTask_notSavedToDesktopRepository() { - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - - controller.handleRequest(Binder(), createTransition(task)) - assertThat(taskRepository.getTopTransparentFullscreenTaskData(DEFAULT_DISPLAY)).isNull() - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, - Flags.FLAG_INCLUDE_TOP_TRANSPARENT_FULLSCREEN_TASK_IN_DESKTOP_HEURISTIC, - ) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_onlyTopTransparentFullscreenTask_multiDesksDisabled_returnSwitchToFreeformWCT() { - val topTransparentTask = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - taskRepository.setTopTransparentFullscreenTaskData(DEFAULT_DISPLAY, topTransparentTask) - - val task = createFullscreenTask(displayId = DEFAULT_DISPLAY) - - val result = controller.handleRequest(Binder(), createTransition(task)) - assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - } - - @Test - @EnableFlags(Flags.FLAG_FORCE_CLOSE_TOP_TRANSPARENT_FULLSCREEN_TASK) - fun handleRequest_newTaskLaunch_topTransparentFullscreenTaskIdPassedToClear() { - val transition = Binder() - val topTransparentTask = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - taskRepository.setTopTransparentFullscreenTaskData(DEFAULT_DISPLAY, topTransparentTask) - - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - controller.handleRequest(transition, createTransition(task)) - - verify(desktopMixedTransitionHandler) - .addPendingMixedTransition( - DesktopMixedTransitionHandler.PendingMixedTransition.Launch( - transition, - task.taskId, - null, - topTransparentTask.taskId, - null, - ) - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun handleRequest_desktopNotShowing_topTransparentFullscreenTask_returnNull() { - taskRepository.setDeskInactive(deskId = 0) - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - - assertThat(controller.handleRequest(Binder(), createTransition(task))).isNull() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun handleRequest_systemUIActivityWithDisplay_returnSwitchToFullscreenWCT() { - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - - // Set task as systemUI package - val systemUIPackageName = - context.resources.getString(com.android.internal.R.string.config_systemUi) - val baseComponent = ComponentName(systemUIPackageName, /* cls= */ "") - val task = - setUpFreeformTask().apply { - baseActivity = baseComponent - isTopActivityNoDisplay = false - } - - val result = controller.handleRequest(Binder(), createTransition(task)) - assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, - ) - fun handleRequest_systemUIActivityWithDisplayInFreeformTask_inDesktop_tracksDeskDeactivation() { - val deskId = 5 - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = deskId) - val systemUIPackageName = - context.resources.getString(com.android.internal.R.string.config_systemUi) - val baseComponent = ComponentName(systemUIPackageName, /* cls= */ "") - val task = - setUpFreeformTask(displayId = DEFAULT_DISPLAY).apply { - baseActivity = baseComponent - isTopActivityNoDisplay = false - } - - val transition = Binder() - controller.handleRequest(transition, createTransition(task)) - - verify(desksTransitionsObserver) - .addPendingTransition(DeskTransition.DeactivateDesk(transition, deskId)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_systemUIActivityWithoutDisplay_multiDesksDisabled_returnSwitchToFreeformWCT() { - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - - // Set task as systemUI package - val systemUIPackageName = - context.resources.getString(com.android.internal.R.string.config_systemUi) - val baseComponent = ComponentName(systemUIPackageName, /* cls= */ "") - val task = - createFullscreenTask().apply { - baseActivity = baseComponent - isTopActivityNoDisplay = true - } - - val result = controller.handleRequest(Binder(), createTransition(task)) - assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_systemUIActivityWithoutDisplay_multiDesksEnabled_movesTaskToDesk() { - val deskId = 0 - val freeformTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - markTaskVisible(freeformTask) - - // Set task as systemUI package - val systemUIPackageName = - context.resources.getString(com.android.internal.R.string.config_systemUi) - val baseComponent = ComponentName(systemUIPackageName, /* cls= */ "") - val task = - createFullscreenTask(displayId = DEFAULT_DISPLAY).apply { - baseActivity = baseComponent - isTopActivityNoDisplay = true - } - - val wct = controller.handleRequest(Binder(), createTransition(task)) - - assertNotNull(wct) - verify(desksOrganizer).moveTaskToDesk(wct, deskId, task) - } - - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun handleRequest_defaultHomePackageWithDisplay_returnSwitchToFullscreenWCT() { - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - - val task = - setUpFullscreenTask().apply { - baseActivity = homeComponentName - isTopActivityNoDisplay = false - } - - val result = controller.handleRequest(Binder(), createTransition(task)) - assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - } - - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun handleRequest_defaultHomePackageWithoutDisplay_returnSwitchToFreeformWCT() { - val freeformTask = setUpFreeformTask() - markTaskVisible(freeformTask) - - val task = - setUpFullscreenTask().apply { - baseActivity = homeComponentName - isTopActivityNoDisplay = false - } - - val result = controller.handleRequest(Binder(), createTransition(task)) - assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_systemUIActivityWithDisplay_returnSwitchToFullscreenWCT_enforcedDesktop() { - taskRepository.setDeskInactive(deskId = 0) - desktopState.enterDesktopByDefaultOnFreeformDisplay = true - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - // Set task as systemUI package - val systemUIPackageName = - context.resources.getString(com.android.internal.R.string.config_systemUi) - val baseComponent = ComponentName(systemUIPackageName, /* cls= */ "") - val task = - createFreeformTask().apply { - baseActivity = baseComponent - isTopActivityNoDisplay = false - } - - assertThat(controller.isAnyDeskActive(DEFAULT_DISPLAY)).isFalse() - val result = controller.handleRequest(Binder(), createTransition(task)) - assertThat(result?.changes?.get(task.token.asBinder())?.windowingMode) - .isEqualTo(WINDOWING_MODE_FULLSCREEN) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_backTransition_singleTaskNoToken_noWallpaper_doesNotHandle() { - val task = setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_backTransition_singleTaskNoToken_withWallpaper_launchesHome() { - val task = setUpFreeformTask() - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - // Should launch home - assertNotNull(result, "Should handle request") - .assertPendingIntentAt(0, launchHomeIntent(DEFAULT_DISPLAY)) - result!!.assertPendingIntentActivityOptionsLaunchDisplayIdAt(0, DEFAULT_DISPLAY) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_backTransition_singleTaskNoToken_withWallpaper_noChanges() { - val task = setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_backTransition_singleTaskNoToken_withWallpaper_notInDesktop_doesNotHandle() { - val task = setUpFreeformTask() - markTaskHidden(task) - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_backTransition_singleTaskNoToken_launchesHomes() { - val task = setUpFreeformTask() - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - // Should launch home - assertNotNull(result, "Should handle request") - .assertPendingIntentAt(0, launchHomeIntent(DEFAULT_DISPLAY)) - result!!.assertPendingIntentActivityOptionsLaunchDisplayIdAt(0, DEFAULT_DISPLAY) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_backTransition_singleTaskNoToken_noChanges() { - val task = setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_backTransition_singleTaskWithToken_noWallpaper_doesNotHandle() { - val task = setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_backTransition_singleTaskWithToken_removesWallpaper() { - val task = setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - // Should create remove wallpaper transaction - assertNotNull(result, "Should handle request") - .assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_backTransition_singleTaskWithToken_noChanges() { - val task = setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_backTransition_multipleTasks_noWallpaper_doesNotHandle() { - val task1 = setUpFreeformTask() - setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_TO_BACK)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_backTransition_multipleTasks_doesNotHandle() { - val task1 = setUpFreeformTask() - setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_TO_BACK)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_backTransition_multipleTasksSingleNonClosing_removesWallpaperAndTask() { - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - taskRepository.addClosingTask( - displayId = DEFAULT_DISPLAY, - deskId = 0, - taskId = task2.taskId, - ) - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_TO_BACK)) - - // Should create remove wallpaper transaction - assertNotNull(result, "Should handle request") - .assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_backTransition_multipleTasksSingleNonClosing_noChanges() { - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - taskRepository.addClosingTask( - displayId = DEFAULT_DISPLAY, - deskId = 0, - taskId = task2.taskId, - ) - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_TO_BACK)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_backTransition_multipleTasksSingleNonMinimized_removesWallpaperAndTask() { - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - taskRepository.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = task2.taskId) - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_TO_BACK)) - - // Should create remove wallpaper transaction - assertNotNull(result, "Should handle request") - .assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_backTransition_multipleTasksSingleNonMinimized_noChanges() { - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - taskRepository.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = task2.taskId) - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_TO_BACK)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_backTransition_nonMinimizadTask_withWallpaper_removesWallpaper() { - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - taskRepository.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = task2.taskId) - // Task is being minimized so mark it as not visible. - taskRepository.updateTask( - displayId = DEFAULT_DISPLAY, - task2.taskId, - isVisible = false, - taskBounds = TASK_BOUNDS, - ) - val result = - controller.handleRequest(Binder(), createTransition(task2, type = TRANSIT_TO_BACK)) - - assertNull(result, "Should not handle request") - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_closeTransition_singleTaskNoToken_noWallpaper_doesNotHandle() { - val task = setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_CLOSE)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_closeTransition_singleTaskNoToken_launchesHome() { - val task = setUpFreeformTask() - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_CLOSE)) - - // Should launch home - assertNotNull(result, "Should handle request") - .assertPendingIntentAt(0, launchHomeIntent(DEFAULT_DISPLAY)) - result!!.assertPendingIntentActivityOptionsLaunchDisplayIdAt(0, DEFAULT_DISPLAY) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_closeTransition_singleTaskNoToken_noChanges() { - val task = setUpFreeformTask() - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_CLOSE)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - @DisableFlags( - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION, - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_closeTransition_singleTaskNoToken_secondaryDisplay_launchesHome() { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - taskRepository.setActiveDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val task = setUpFreeformTask(displayId = SECOND_DISPLAY) - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_CLOSE)) - - // Should launch home - assertNotNull(result, "Should handle request") - .assertPendingIntentAt(0, launchHomeIntent(SECOND_DISPLAY)) - result!!.assertPendingIntentActivityOptionsLaunchDisplayIdAt(0, SECOND_DISPLAY) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - @DisableFlags( - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PERMISSION, - Flags.FLAG_ENABLE_MODALS_FULLSCREEN_WITH_PLATFORM_SIGNATURE, - ) - fun handleRequest_closeTransition_singleTaskNoToken_secondaryDisplay_noChanges() { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - taskRepository.setActiveDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - val task = setUpFreeformTask(displayId = SECOND_DISPLAY) - whenever(desktopWallpaperActivityTokenProvider.getToken()).thenReturn(null) - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_CLOSE)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_closeTransition_singleTaskWithToken_noWallpaper_doesNotHandle() { - val task = setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_CLOSE)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_closeTransition_singleTaskWithToken_withWallpaper_removesWallpaper() { - val task = setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_CLOSE)) - - // Should create remove wallpaper transaction - assertNotNull(result, "Should handle request") - .assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_closeTransition_singleTaskWithToken_withWallpaper_noChanges() { - val task = setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_CLOSE)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_closeTransition_onlyDesktopTask_deactivatesDesk() { - val task = setUpFreeformTask() - - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_CLOSE)) - - verify(desksOrganizer).deactivateDesk(any(), /* deskId= */ eq(0), skipReorder = eq(false)) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_closeTransition_onlyDesktopTask_dontDeactivateDesk() { - val task = setUpFreeformTask() - - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_CLOSE)) - - verifyNoInteractions(desksOrganizer) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_closeTransition_onlyDesktopTask_addsDeactivatesDeskTransition() { - val transition = Binder() - val task = setUpFreeformTask() - - controller.handleRequest(transition, createTransition(task, type = TRANSIT_CLOSE)) - - verify(desksTransitionsObserver) - .addPendingTransition(DeskTransition.DeactivateDesk(token = transition, deskId = 0)) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_closeTransition_onlyDesktopTask_dontAddDeactivatesDeskTransition() { - val transition = Binder() - val task = setUpFreeformTask() - - controller.handleRequest(transition, createTransition(task, type = TRANSIT_CLOSE)) - - verifyNoInteractions(desksTransitionsObserver) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_closeTransition_multipleTasks_noWallpaper_doesNotHandle() { - val task1 = setUpFreeformTask() - setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_CLOSE)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) - fun handleRequest_closeTransition_multipleTasksFlagEnabled_doesNotHandle() { - val task1 = setUpFreeformTask() - setUpFreeformTask() - - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_CLOSE)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_closeTransition_multipleTasksSingleNonClosing_removesWallpaper() { - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - taskRepository.addClosingTask( - displayId = DEFAULT_DISPLAY, - deskId = 0, - taskId = task2.taskId, - ) - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_CLOSE)) - - // Should create remove wallpaper transaction - assertNotNull(result, "Should handle request") - .assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_closeTransition_multipleTasksSingleNonClosing_noChanges() { - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - taskRepository.addClosingTask( - displayId = DEFAULT_DISPLAY, - deskId = 0, - taskId = task2.taskId, - ) - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_CLOSE)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_closeTransition_multipleTasksSingleNonMinimized_removesWallpaper() { - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - taskRepository.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = task2.taskId) - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_CLOSE)) - - // Should create remove wallpaper transaction - assertNotNull(result, "Should handle request") - .assertReorderAt(index = 0, wallpaperToken, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_closeTransition_multipleTasksSingleNonMinimized_noChanges() { - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - taskRepository.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = task2.taskId) - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_CLOSE)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - fun handleRequest_toBackTransition_noActiveDesk_notHandled() { - taskRepository.setDeskInactive(deskId = 0) - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_toBackTransition_minimizesTask() { - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - assertNotNull(result) { "Should handle request" } - verify(desksOrganizer).minimizeTask(result, deskId = 0, task) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_toBackTransition_minimizesTask_noChanges() { - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - - val result = - controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - @DisableFlags(Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE) - fun handleRequest_toBackTransition_lastTask_deactivatesDesk() { - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - - val transition = Binder() - val result = - controller.handleRequest(transition, createTransition(task, type = TRANSIT_TO_BACK)) - - assertNotNull(result) { "Should handle request" } - verify(desksOrganizer).deactivateDesk(result, deskId = 0) - verify(desksTransitionsObserver) - .addPendingTransition(DeskTransition.DeactivateDesk(token = transition, deskId = 0)) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_EMPTY_DESK_ON_MINIMIZE, - ) - fun handleRequest_toBackTransition_lastTask_noChanges() { - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - - val transition = Binder() - val result = - controller.handleRequest(transition, createTransition(task, type = TRANSIT_TO_BACK)) - - // Should not have any change - result?.run { assertTrue(changes.isEmpty(), "Should not have changes") } - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_PER_DISPLAY_DESKTOP_WALLPAPER_ACTIVITY, - ) - fun handleRequest_toBackTransition_notLastTask_doesNotDeactivateDesk() { - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - - val transition = Binder() - controller.handleRequest(transition, createTransition(task, type = TRANSIT_TO_BACK)) - - verify(desksOrganizer, never()) - .deactivateDesk(any(), deskId = eq(0), skipReorder = eq(false)) - verify(desksTransitionsObserver, never()) - .addPendingTransition( - argThat { - this is DeskTransition.RemoveDesk && - this.token == transition && - this.deskId == 0 - } - ) - } - - @Test - fun handleRequest_freeformTask_displayDoesntHandleDesktop_returnNull() { - desktopState.overrideDesktopModeSupportPerDisplay[SECOND_DISPLAY] = false - val task1 = createFreeformTask(displayId = SECOND_DISPLAY) - - val result = - controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_OPEN)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_fullscreenTaskRelaunch_desktopFirst_returnNull() { - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - val task = setUpFullscreenTask() - // Deactivate desk as fullscreen task is visible on top. - taskRepository.getActiveDeskId(DEFAULT_DISPLAY)?.let { taskRepository.setDeskInactive(it) } - - val result = controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_OPEN)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_backgroundFullscreenTaskRelaunch_desktopFirst_returnNull() { - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - val task = setUpFullscreenTask(visible = false) - - val result = controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_OPEN)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_fullscreenTaskRelaunch_touchFirst_returnNull() { - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - val task = setUpFullscreenTask() - // Deactivate desk as fullscreen task is visible on top. - taskRepository.getActiveDeskId(DEFAULT_DISPLAY)?.let { taskRepository.setDeskInactive(it) } - - val result = controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_OPEN)) - - assertNull(result, "Should not handle request") - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun handleRequest_backgroundFullscreenTaskRelaunch_touchFirst_moveToDesk() { - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - val task = setUpFullscreenTask(visible = false) - - val result = controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_OPEN)) - - verify(desksOrganizer).moveTaskToDesk(result!!, DEFAULT_DISPLAY, task) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun moveFocusedTaskToDesktop_noDisplayActivity_doesNothing() { - val task = setUpFullscreenTask().apply { isTopActivityNoDisplay = true } - - controller.moveFocusedTaskToDesktop(task.taskId, transitionSource = UNKNOWN) - verifyEnterDesktopWCTNotExecuted() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun moveFocusedTaskToDesktop_transparentTask_doesNothing() { - val task = - setUpFullscreenTask().apply { - isActivityStackTransparent = true - numActivities = 1 - } - - controller.moveFocusedTaskToDesktop(task.taskId, transitionSource = UNKNOWN) - verifyEnterDesktopWCTNotExecuted() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun moveFocusedTaskToDesktop_systemUIActivity_doesNothing() { - // Set task as systemUI package - val systemUIPackageName = - context.resources.getString(com.android.internal.R.string.config_systemUi) - val baseComponent = ComponentName(systemUIPackageName, /* cls= */ "") - val task = setUpFullscreenTask().apply { baseActivity = baseComponent } - - controller.moveFocusedTaskToDesktop(task.taskId, transitionSource = UNKNOWN) - verifyEnterDesktopWCTNotExecuted() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun moveFocusedTaskToDesktop_defaultHomePackage_doesNothing() { - val task = setUpFullscreenTask().apply { baseActivity = homeComponentName } - - controller.moveFocusedTaskToDesktop(task.taskId, transitionSource = UNKNOWN) - verifyEnterDesktopWCTNotExecuted() - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveFocusedTaskToDesktop_fullscreenTaskIsMovedToDesktop_multiDesksDisabled() { - val task1 = setUpFullscreenTask() - val task2 = setUpFullscreenTask() - val task3 = setUpFullscreenTask() - - task1.isFocused = true - task2.isFocused = false - task3.isFocused = false - - controller.moveFocusedTaskToDesktop(DEFAULT_DISPLAY, transitionSource = UNKNOWN) - - val wct = getLatestEnterDesktopWct() - assertThat(wct.changes[task1.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveFocusedTaskToDesktop_fullscreenTaskIsMovedToDesktop_multiDesksEnabled() = - testScope.runTest { - val task1 = setUpFullscreenTask() - val task2 = setUpFullscreenTask() - val task3 = setUpFullscreenTask() - - task1.isFocused = true - task2.isFocused = false - task3.isFocused = false - - controller.moveFocusedTaskToDesktop(DEFAULT_DISPLAY, transitionSource = UNKNOWN) - runCurrent() - - val wct = getLatestEnterDesktopWct() - verify(desksOrganizer).moveTaskToDesk(wct, deskId = 0, task1) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun handleRequest_backTransition_singleActiveTask_noToken() { + val task = setUpFreeformTask() + val result = controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) + // Doesn't handle request + assertThat(result).isNull() + } + + @Test + @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun handleRequest_backTransition_singleActiveTask_hasToken_desktopWallpaperDisabled() { + desktopModeTaskRepository.wallpaperActivityToken = MockToken().token() + + val task = setUpFreeformTask() + val result = controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) + // Doesn't handle request + assertThat(result).isNull() + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun handleRequest_backTransition_singleActiveTask_hasToken_desktopWallpaperEnabled() { + val wallpaperToken = MockToken().token() + desktopModeTaskRepository.wallpaperActivityToken = wallpaperToken + + val task = setUpFreeformTask() + val result = controller.handleRequest(Binder(), createTransition(task, type = TRANSIT_TO_BACK)) + assertThat(result).isNotNull() + // Creates remove wallpaper transaction + result!!.assertRemoveAt(index = 0, wallpaperToken) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY) + fun handleRequest_backTransition_multipleActiveTasks() { + desktopModeTaskRepository.wallpaperActivityToken = MockToken().token() + + val task1 = setUpFreeformTask() + setUpFreeformTask() + val result = controller.handleRequest(Binder(), createTransition(task1, type = TRANSIT_TO_BACK)) + // Doesn't handle request + assertThat(result).isNull() + } + + @Test + fun desktopTasksVisibilityChange_visible_setLaunchAdjacentDisabled() { + val task = setUpFreeformTask() + clearInvocations(launchAdjacentController) + + markTaskVisible(task) + shellExecutor.flushAll() + verify(launchAdjacentController).launchAdjacentEnabled = false + } + + @Test + fun desktopTasksVisibilityChange_invisible_setLaunchAdjacentEnabled() { + val task = setUpFreeformTask() + markTaskVisible(task) + clearInvocations(launchAdjacentController) + + markTaskHidden(task) + shellExecutor.flushAll() + verify(launchAdjacentController).launchAdjacentEnabled = true + } + + @Test + fun moveFocusedTaskToDesktop_fullscreenTaskIsMovedToDesktop() { + val task1 = setUpFullscreenTask() + val task2 = setUpFullscreenTask() + val task3 = setUpFullscreenTask() + + task1.isFocused = true + task2.isFocused = false + task3.isFocused = false + + controller.moveFocusedTaskToDesktop(DEFAULT_DISPLAY, transitionSource = UNKNOWN) + + val wct = getLatestEnterDesktopWct() + assertThat(wct.changes[task1.token.asBinder()]?.windowingMode) + .isEqualTo(WINDOWING_MODE_FREEFORM) + } + + @Test + fun moveFocusedTaskToDesktop_splitScreenTaskIsMovedToDesktop() { + val task1 = setUpSplitScreenTask() + val task2 = setUpFullscreenTask() + val task3 = setUpFullscreenTask() + val task4 = setUpSplitScreenTask() + + task1.isFocused = true + task2.isFocused = false + task3.isFocused = false + task4.isFocused = true + + task4.parentTaskId = task1.taskId + + controller.moveFocusedTaskToDesktop(DEFAULT_DISPLAY, transitionSource = UNKNOWN) + + val wct = getLatestEnterDesktopWct() + assertThat(wct.changes[task4.token.asBinder()]?.windowingMode) + .isEqualTo(WINDOWING_MODE_FREEFORM) + verify(splitScreenController) + .prepareExitSplitScreen(any(), anyInt(), eq(SplitScreenController.EXIT_REASON_DESKTOP_MODE)) + } + + @Test + fun moveFocusedTaskToFullscreen() { + val task1 = setUpFreeformTask() + val task2 = setUpFreeformTask() + val task3 = setUpFreeformTask() + + task1.isFocused = false + task2.isFocused = true + task3.isFocused = false + + controller.enterFullscreen(DEFAULT_DISPLAY, transitionSource = UNKNOWN) + + val wct = getLatestExitDesktopWct() + assertThat(wct.changes[task2.token.asBinder()]?.windowingMode) + .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun dragToDesktop_landscapeDevice_resizable_undefinedOrientation_defaultLandscapeBounds() { + val spyController = spy(controller) + whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) + whenever(desktopModeVisualIndicator.updateIndicatorType(anyOrNull(), anyOrNull())) + .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) + + val task = setUpFullscreenTask() + setUpLandscapeDisplay() + + spyController.onDragPositioningEndThroughStatusBar(PointF(800f, 1280f), task) + val wct = getLatestDragToDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun dragToDesktop_landscapeDevice_resizable_landscapeOrientation_defaultLandscapeBounds() { + val spyController = spy(controller) + whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) + whenever(desktopModeVisualIndicator.updateIndicatorType(anyOrNull(), anyOrNull())) + .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) + + val task = setUpFullscreenTask(screenOrientation = SCREEN_ORIENTATION_LANDSCAPE) + setUpLandscapeDisplay() + + spyController.onDragPositioningEndThroughStatusBar(PointF(800f, 1280f), task) + val wct = getLatestDragToDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun dragToDesktop_landscapeDevice_resizable_portraitOrientation_resizablePortraitBounds() { + val spyController = spy(controller) + whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) + whenever(desktopModeVisualIndicator.updateIndicatorType(anyOrNull(), anyOrNull())) + .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) + + val task = + setUpFullscreenTask(screenOrientation = SCREEN_ORIENTATION_PORTRAIT, shouldLetterbox = true) + setUpLandscapeDisplay() + + spyController.onDragPositioningEndThroughStatusBar(PointF(800f, 1280f), task) + val wct = getLatestDragToDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(RESIZABLE_PORTRAIT_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun dragToDesktop_landscapeDevice_unResizable_landscapeOrientation_defaultLandscapeBounds() { + val spyController = spy(controller) + whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) + whenever(desktopModeVisualIndicator.updateIndicatorType(anyOrNull(), anyOrNull())) + .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) + + val task = + setUpFullscreenTask(isResizable = false, screenOrientation = SCREEN_ORIENTATION_LANDSCAPE) + setUpLandscapeDisplay() + + spyController.onDragPositioningEndThroughStatusBar(PointF(800f, 1280f), task) + val wct = getLatestDragToDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun dragToDesktop_landscapeDevice_unResizable_portraitOrientation_unResizablePortraitBounds() { + val spyController = spy(controller) + whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) + whenever(desktopModeVisualIndicator.updateIndicatorType(anyOrNull(), anyOrNull())) + .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) + + val task = + setUpFullscreenTask( + isResizable = false, + screenOrientation = SCREEN_ORIENTATION_PORTRAIT, + shouldLetterbox = true) + setUpLandscapeDisplay() + + spyController.onDragPositioningEndThroughStatusBar(PointF(800f, 1280f), task) + val wct = getLatestDragToDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(UNRESIZABLE_PORTRAIT_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun dragToDesktop_portraitDevice_resizable_undefinedOrientation_defaultPortraitBounds() { + val spyController = spy(controller) + whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) + whenever(desktopModeVisualIndicator.updateIndicatorType(anyOrNull(), anyOrNull())) + .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) + + val task = setUpFullscreenTask(deviceOrientation = ORIENTATION_PORTRAIT) + setUpPortraitDisplay() + + spyController.onDragPositioningEndThroughStatusBar(PointF(800f, 1280f), task) + val wct = getLatestDragToDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun dragToDesktop_portraitDevice_resizable_portraitOrientation_defaultPortraitBounds() { + val spyController = spy(controller) + whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) + whenever(desktopModeVisualIndicator.updateIndicatorType(anyOrNull(), anyOrNull())) + .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) + + val task = + setUpFullscreenTask( + deviceOrientation = ORIENTATION_PORTRAIT, + screenOrientation = SCREEN_ORIENTATION_PORTRAIT) + setUpPortraitDisplay() + + spyController.onDragPositioningEndThroughStatusBar(PointF(800f, 1280f), task) + val wct = getLatestDragToDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun dragToDesktop_portraitDevice_resizable_landscapeOrientation_resizableLandscapeBounds() { + val spyController = spy(controller) + whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) + whenever(desktopModeVisualIndicator.updateIndicatorType(anyOrNull(), anyOrNull())) + .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) + + val task = + setUpFullscreenTask( + deviceOrientation = ORIENTATION_PORTRAIT, + screenOrientation = SCREEN_ORIENTATION_LANDSCAPE, + shouldLetterbox = true) + setUpPortraitDisplay() + + spyController.onDragPositioningEndThroughStatusBar(PointF(800f, 1280f), task) + val wct = getLatestDragToDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(RESIZABLE_LANDSCAPE_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun dragToDesktop_portraitDevice_unResizable_portraitOrientation_defaultPortraitBounds() { + val spyController = spy(controller) + whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) + whenever(desktopModeVisualIndicator.updateIndicatorType(anyOrNull(), anyOrNull())) + .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) + + val task = + setUpFullscreenTask( + isResizable = false, + deviceOrientation = ORIENTATION_PORTRAIT, + screenOrientation = SCREEN_ORIENTATION_PORTRAIT) + setUpPortraitDisplay() + + spyController.onDragPositioningEndThroughStatusBar(PointF(800f, 1280f), task) + val wct = getLatestDragToDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) + } + + @Test + @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) + fun dragToDesktop_portraitDevice_unResizable_landscapeOrientation_unResizableLandscapeBounds() { + val spyController = spy(controller) + whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) + whenever(desktopModeVisualIndicator.updateIndicatorType(anyOrNull(), anyOrNull())) + .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) + + val task = + setUpFullscreenTask( + isResizable = false, + deviceOrientation = ORIENTATION_PORTRAIT, + screenOrientation = SCREEN_ORIENTATION_LANDSCAPE, + shouldLetterbox = true) + setUpPortraitDisplay() + + spyController.onDragPositioningEndThroughStatusBar(PointF(200f, 200f), task) + val wct = getLatestDragToDesktopWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(UNRESIZABLE_LANDSCAPE_BOUNDS) + } + + @Test + fun onDesktopDragMove_endsOutsideValidDragArea_snapsToValidBounds() { + val task = setUpFreeformTask() + val mockSurface = mock(SurfaceControl::class.java) + val mockDisplayLayout = mock(DisplayLayout::class.java) + whenever(displayController.getDisplayLayout(task.displayId)).thenReturn(mockDisplayLayout) + whenever(mockDisplayLayout.stableInsets()).thenReturn(Rect(0, 100, 2000, 2000)) + controller.onDragPositioningMove(task, mockSurface, 200f, Rect(100, -100, 500, 1000)) + + controller.onDragPositioningEnd( + task, + Point(100, -100), /* position */ + PointF(200f, -200f), /* inputCoordinate */ + Rect(100, -100, 500, 1000), /* taskBounds */ + Rect(0, 50, 2000, 2000) /* validDragArea */) + val rectAfterEnd = Rect(100, 50, 500, 1150) + verify(transitions) + .startTransition( + eq(TRANSIT_CHANGE), + Mockito.argThat { wct -> + return@argThat wct.changes.any { (token, change) -> + change.configuration.windowConfiguration.bounds == rectAfterEnd + } + }, + eq(null)) + } + + fun enterSplit_freeformTaskIsMovedToSplit() { + val task1 = setUpFreeformTask() + val task2 = setUpFreeformTask() + val task3 = setUpFreeformTask() + + task1.isFocused = false + task2.isFocused = true + task3.isFocused = false + + controller.enterSplit(DEFAULT_DISPLAY, false) + + verify(splitScreenController) + .requestEnterSplitSelect( + task2, + any(), + SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT, + task2.configuration.windowConfiguration.bounds) + } + + @Test + fun toggleBounds_togglesToStableBounds() { + val bounds = Rect(0, 0, 100, 100) + val task = setUpFreeformTask(DEFAULT_DISPLAY, bounds) + + controller.toggleDesktopTaskSize(task) + // Assert bounds set to stable bounds + val wct = getLatestToggleResizeDesktopTaskWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(STABLE_BOUNDS) + } + + @Test + fun toggleBounds_lastBoundsBeforeMaximizeSaved() { + val bounds = Rect(0, 0, 100, 100) + val task = setUpFreeformTask(DEFAULT_DISPLAY, bounds) + + controller.toggleDesktopTaskSize(task) + assertThat(desktopModeTaskRepository.removeBoundsBeforeMaximize(task.taskId)).isEqualTo(bounds) + } + + @Test + fun toggleBounds_togglesFromStableBoundsToLastBoundsBeforeMaximize() { + val boundsBeforeMaximize = Rect(0, 0, 100, 100) + val task = setUpFreeformTask(DEFAULT_DISPLAY, boundsBeforeMaximize) + + // Maximize + controller.toggleDesktopTaskSize(task) + task.configuration.windowConfiguration.bounds.set(STABLE_BOUNDS) + + // Restore + controller.toggleDesktopTaskSize(task) + + // Assert bounds set to last bounds before maximize + val wct = getLatestToggleResizeDesktopTaskWct() + assertThat(findBoundsChange(wct, task)).isEqualTo(boundsBeforeMaximize) + } + + @Test + fun toggleBounds_removesLastBoundsBeforeMaximizeAfterRestoringBounds() { + val boundsBeforeMaximize = Rect(0, 0, 100, 100) + val task = setUpFreeformTask(DEFAULT_DISPLAY, boundsBeforeMaximize) + + // Maximize + controller.toggleDesktopTaskSize(task) + task.configuration.windowConfiguration.bounds.set(STABLE_BOUNDS) + + // Restore + controller.toggleDesktopTaskSize(task) + + // Assert last bounds before maximize removed after use + assertThat(desktopModeTaskRepository.removeBoundsBeforeMaximize(task.taskId)).isNull() + } + + private val desktopWallpaperIntent: Intent + get() = Intent(context, DesktopWallpaperActivity::class.java) + + private fun setUpFreeformTask( + displayId: Int = DEFAULT_DISPLAY, + bounds: Rect? = null + ): RunningTaskInfo { + val task = createFreeformTask(displayId, bounds) + val activityInfo = ActivityInfo() + task.topActivityInfo = activityInfo + whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(task) + desktopModeTaskRepository.addActiveTask(displayId, task.taskId) + desktopModeTaskRepository.addOrMoveFreeformTaskToTop(displayId, task.taskId) + runningTasks.add(task) + return task + } + + private fun setUpHomeTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo { + val task = createHomeTask(displayId) + whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(task) + runningTasks.add(task) + return task + } + + private fun setUpFullscreenTask( + displayId: Int = DEFAULT_DISPLAY, + isResizable: Boolean = true, + windowingMode: Int = WINDOWING_MODE_FULLSCREEN, + deviceOrientation: Int = ORIENTATION_LANDSCAPE, + screenOrientation: Int = SCREEN_ORIENTATION_UNSPECIFIED, + shouldLetterbox: Boolean = false + ): RunningTaskInfo { + val task = createFullscreenTask(displayId) + val activityInfo = ActivityInfo() + activityInfo.screenOrientation = screenOrientation + with(task) { + topActivityInfo = activityInfo + isResizeable = isResizable + configuration.orientation = deviceOrientation + configuration.windowConfiguration.windowingMode = windowingMode + + if (shouldLetterbox) { + if (deviceOrientation == ORIENTATION_LANDSCAPE && + screenOrientation == SCREEN_ORIENTATION_PORTRAIT) { + // Letterbox to portrait size + appCompatTaskInfo.topActivityBoundsLetterboxed = true + appCompatTaskInfo.topActivityLetterboxWidth = 1200 + appCompatTaskInfo.topActivityLetterboxHeight = 1600 + } else if (deviceOrientation == ORIENTATION_PORTRAIT && + screenOrientation == SCREEN_ORIENTATION_LANDSCAPE) { + // Letterbox to landscape size + appCompatTaskInfo.topActivityBoundsLetterboxed = true + appCompatTaskInfo.topActivityLetterboxWidth = 1600 + appCompatTaskInfo.topActivityLetterboxHeight = 1200 } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveFocusedTaskToDesktop_splitScreenTaskIsMovedToDesktop_multiDesksDisabled() { - val task1 = setUpSplitScreenTask() - val task2 = setUpFullscreenTask() - val task3 = setUpFullscreenTask() - val task4 = setUpSplitScreenTask() - - task1.isFocused = true - task2.isFocused = false - task3.isFocused = false - task4.isFocused = true - - task4.parentTaskId = task1.taskId - - controller.moveFocusedTaskToDesktop(DEFAULT_DISPLAY, transitionSource = UNKNOWN) - - val wct = getLatestEnterDesktopWct() - assertThat(wct.changes[task4.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_FREEFORM) - verify(splitScreenController) - .prepareExitSplitScreen( - any(), - anyInt(), - eq(SplitScreenController.EXIT_REASON_DESKTOP_MODE), - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveFocusedTaskToDesktop_splitScreenTaskIsMovedToDesktop_multiDesksEnabled() = - testScope.runTest { - val task1 = setUpSplitScreenTask() - val task2 = setUpFullscreenTask() - val task3 = setUpFullscreenTask() - val task4 = setUpSplitScreenTask() - - task1.isFocused = true - task2.isFocused = false - task3.isFocused = false - task4.isFocused = true - - task4.parentTaskId = task1.taskId - - controller.moveFocusedTaskToDesktop(DEFAULT_DISPLAY, transitionSource = UNKNOWN) - runCurrent() - - val wct = getLatestEnterDesktopWct() - verify(desksOrganizer).moveTaskToDesk(wct, deskId = 0, task4) - verify(splitScreenController) - .prepareExitSplitScreen( - any(), - anyInt(), - eq(SplitScreenController.EXIT_REASON_DESKTOP_MODE), - ) - } - - @Test - fun moveFocusedTaskToFullscreen() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - val task3 = setUpFreeformTask() - - task1.isFocused = false - task2.isFocused = true - task3.isFocused = false - - controller.enterFullscreen(DEFAULT_DISPLAY, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - assertThat(wct.changes[task2.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER) - fun moveFocusedTaskToFullscreen_onlyVisibleNonMinimizedTask_removesWallpaperActivity() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - val task3 = setUpFreeformTask() - - task1.isFocused = false - task2.isFocused = true - task3.isFocused = false - taskRepository.minimizeTask(DEFAULT_DISPLAY, task1.taskId) - taskRepository.updateTask(DEFAULT_DISPLAY, task3.taskId, isVisible = false, TASK_BOUNDS) - - controller.enterFullscreen(DEFAULT_DISPLAY, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - val taskChange = assertNotNull(wct.changes[task2.token.asBinder()]) - assertThat(taskChange.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN - wct.assertReorder(wallpaperToken, toTop = false) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP, - com.android.launcher3.Flags.FLAG_ENABLE_ALT_TAB_KQS_FLATENNING, - ) - fun moveFocusedTaskToFullscreen_multipleVisibleTasks_doesNotRemoveWallpaperActivity() { - val homeTask = setUpHomeTask() - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - val task3 = setUpFreeformTask() - - task1.isFocused = false - task2.isFocused = true - task3.isFocused = false - controller.enterFullscreen(DEFAULT_DISPLAY, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - val taskChange = assertNotNull(wct.changes[task2.token.asBinder()]) - assertThat(taskChange.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN - // Does not remove wallpaper activity, as desktop still has visible desktop tasks - assertThat(wct.hierarchyOps).hasSize(2) - // Moves home task behind the fullscreen task - wct.assertReorderAt(index = 0, homeTask.getToken(), toTop = true) - wct.assertReorderAt(index = 1, task2.getToken(), toTop = true) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun moveFocusedTaskToFullscreen_multipleVisibleTasks_fullscreenOverHome_multiDesksEnabled() { - val homeTask = setUpHomeTask() - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - val task3 = setUpFreeformTask() - - task1.isFocused = false - task2.isFocused = true - task3.isFocused = false - controller.enterFullscreen(DEFAULT_DISPLAY, transitionSource = UNKNOWN) - - val wct = getLatestExitDesktopWct() - val taskChange = assertNotNull(wct.changes[task2.token.asBinder()]) - assertThat(taskChange.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) // inherited FULLSCREEN - // Moves home task behind the fullscreen task - val homeReorderIndex = wct.indexOfReorder(homeTask, toTop = true) - val fullscreenReorderIndex = wct.indexOfReorder(task2, toTop = true) - assertThat(homeReorderIndex).isNotEqualTo(-1) - assertThat(fullscreenReorderIndex).isNotEqualTo(-1) - assertThat(fullscreenReorderIndex).isGreaterThan(homeReorderIndex) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun removeDesk_multipleTasks_removesAll() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - val task3 = setUpFreeformTask() - taskRepository.minimizeTask(DEFAULT_DISPLAY, task2.taskId) - - controller.removeDefaultDeskInDisplay(displayId = DEFAULT_DISPLAY) - - val wct = getLatestWct(TRANSIT_CLOSE) - assertThat(wct.hierarchyOps).hasSize(3) - wct.assertRemoveAt(index = 0, task1.token) - wct.assertRemoveAt(index = 1, task2.token) - wct.assertRemoveAt(index = 2, task3.token) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun removeDesk_multipleTasksWithBackgroundTask_removesAll() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - val task3 = setUpFreeformTask() - taskRepository.minimizeTask(DEFAULT_DISPLAY, task2.taskId) - whenever(shellTaskOrganizer.getRunningTaskInfo(task3.taskId)).thenReturn(null) - - controller.removeDefaultDeskInDisplay(displayId = DEFAULT_DISPLAY) - - val wct = getLatestWct(TRANSIT_CLOSE) - assertThat(wct.hierarchyOps).hasSize(2) - wct.assertRemoveAt(index = 0, task1.token) - wct.assertRemoveAt(index = 1, task2.token) - verify(recentTasksController).removeBackgroundTask(task3.taskId) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun removeDesk_multipleDesks_addsPendingTransition() { - val transition = Binder() - whenever(transitions.startTransition(eq(TRANSIT_CLOSE), any(), anyOrNull())) - .thenReturn(transition) - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 2) - - controller.removeDesk(deskId = 2) - - verify(desksOrganizer).removeDesk(any(), eq(2), any()) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.RemoveDesk && - this.token == transition && - this.deskId == 2 - } - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun removeDesk_multipleDesks_removesRunningTasks() { - val transition = Binder() - whenever(transitions.startTransition(eq(TRANSIT_CLOSE), any(), anyOrNull())) - .thenReturn(transition) - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 2) - val task1 = setUpFreeformTask(deskId = 2) - val task2 = setUpFreeformTask(deskId = 2) - val task3 = setUpFreeformTask(deskId = 2) - - controller.removeDesk(deskId = 2) - - val wct = getLatestWct(TRANSIT_CLOSE) - wct.assertRemove(task1.token) - wct.assertRemove(task2.token) - wct.assertRemove(task3.token) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun removeDesk_multipleDesks_removesRecentTasks() { - val transition = Binder() - whenever(transitions.startTransition(eq(TRANSIT_CLOSE), any(), anyOrNull())) - .thenReturn(transition) - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 2) - val task1 = setUpFreeformTask(deskId = 2, background = true) - val task2 = setUpFreeformTask(deskId = 2, background = true) - val task3 = setUpFreeformTask(deskId = 2, background = true) - - controller.removeDesk(deskId = 2) - - verify(recentTasksController).removeBackgroundTask(task1.taskId) - verify(recentTasksController).removeBackgroundTask(task2.taskId) - verify(recentTasksController).removeBackgroundTask(task3.taskId) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun activateDesk_multipleDesks_addsPendingTransition() { - val deskId = 0 - val transition = Binder() - val deskChange = mock(TransitionInfo.Change::class.java) - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(transition) - whenever(desksOrganizer.isDeskActiveAtEnd(deskChange, deskId)).thenReturn(true) - // Make desk inactive by activating another desk. - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 1) - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId = 1) - - controller.activateDesk(deskId, RemoteTransition(TestRemoteTransition())) - - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.ActivateDesk && - this.token == transition && - this.deskId == 0 - } - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun activateDesk_hasNonRunningTask_startsTask() { - val deskId = 0 - val nonRunningTask = - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0, background = true) - - val transition = Binder() - val deskChange = mock(TransitionInfo.Change::class.java) - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(transition) - whenever(desksOrganizer.isDeskActiveAtEnd(deskChange, deskId)).thenReturn(true) - // Make desk inactive by activating another desk. - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 1) - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId = 1) - - controller.activateDesk(deskId, RemoteTransition(TestRemoteTransition())) - - val wct = getLatestWct(TRANSIT_TO_FRONT, OneShotRemoteHandler::class.java) - assertNotNull(wct) - wct.assertLaunchTask(nonRunningTask.taskId, WINDOWING_MODE_FREEFORM) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun activateDesk_hasRunningTask_reordersTask() { - val deskId = 0 - val runningTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - - val transition = Binder() - val deskChange = mock(TransitionInfo.Change::class.java) - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(transition) - whenever(desksOrganizer.isDeskActiveAtEnd(deskChange, deskId)).thenReturn(true) - // Make desk inactive by activating another desk. - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 1) - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId = 1) - - controller.activateDesk(deskId, RemoteTransition(TestRemoteTransition())) - - verify(desksOrganizer).reorderTaskToFront(any(), eq(deskId), eq(runningTask)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun activateDesk_otherDeskWasActive_deactivatesOtherDesk() { - val previouslyActiveDeskId = 1 - val activatingDeskId = 0 - val transition = Binder() - val deskChange = mock(TransitionInfo.Change::class.java) - whenever(transitions.startTransition(eq(TRANSIT_TO_FRONT), any(), anyOrNull())) - .thenReturn(transition) - whenever(desksOrganizer.isDeskActiveAtEnd(deskChange, activatingDeskId)).thenReturn(true) - // Make desk inactive by activating another desk. - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = previouslyActiveDeskId) - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId = previouslyActiveDeskId) - - controller.activateDesk(activatingDeskId, RemoteTransition(TestRemoteTransition())) - - verify(desksOrganizer) - .deactivateDesk(any(), eq(previouslyActiveDeskId), skipReorder = eq(false)) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.DeactivateDesk && - this.token == transition && - this.deskId == previouslyActiveDeskId - } - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, - ) - fun activatePreviousDesk_activates() { - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = 1) - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = 2) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 2) - - controller.activatePreviousDesk(DEFAULT_DISPLAY) - - verify(desksOrganizer).activateDesk(any(), eq(1), skipReorder = eq(false)) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, - ) - fun activateNextDesk_activates() { - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = 1) - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = 2) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 1) - - controller.activateNextDesk(DEFAULT_DISPLAY) - - verify(desksOrganizer).activateDesk(any(), eq(2), skipReorder = eq(false)) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, - ) - fun activatePreviousDesk_deskDoesNotExist_doesNotActivate() { - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - - controller.activatePreviousDesk(DEFAULT_DISPLAY) - - verify(desksOrganizer, never()).activateDesk(any(), any(), skipReorder = any()) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, - ) - fun activateNextDesk_deskDoesNotExist_doesNotActivate() { - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = 1) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 1) - - controller.activateNextDesk(DEFAULT_DISPLAY) - - verify(desksOrganizer, never()).activateDesk(any(), any(), skipReorder = any()) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, - ) - fun activatePreviousDesk_noDeskActive_doesNotActivate() { - taskRepository.setDeskInactive(deskId = 0) - - controller.activatePreviousDesk(DEFAULT_DISPLAY) - - verify(desksOrganizer, never()).activateDesk(any(), any(), any()) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, - ) - fun activateNextDesk_noDeskActive_doesNotActivate() { - taskRepository.setDeskInactive(deskId = 0) - - controller.activateNextDesk(DEFAULT_DISPLAY) - - verify(desksOrganizer, never()).activateDesk(any(), any(), any()) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, - ) - fun activatePreviousDesk_invalidDisplay_activatesFocusedDisplayDesk() { - val focusedDisplayId = 5 - whenever(focusTransitionObserver.globallyFocusedDisplayId).thenReturn(focusedDisplayId) - taskRepository.addDesk(displayId = 5, deskId = 1) - taskRepository.addDesk(displayId = 5, deskId = 2) - taskRepository.setActiveDesk(displayId = 5, deskId = 2) - taskRepository.addDesk(displayId = 6, deskId = 3) - taskRepository.addDesk(displayId = 6, deskId = 4) - taskRepository.setActiveDesk(displayId = 6, deskId = 4) - - controller.activatePreviousDesk(INVALID_DISPLAY) - - verify(desksOrganizer).activateDesk(any(), eq(1), skipReorder = eq(false)) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_KEYBOARD_SHORTCUTS_TO_SWITCH_DESKS, - ) - fun activateNextDesk_invalidDisplay_activatesFocusedDisplayDesk() { - val focusedDisplayId = 6 - whenever(focusTransitionObserver.globallyFocusedDisplayId).thenReturn(focusedDisplayId) - taskRepository.addDesk(displayId = 5, deskId = 1) - taskRepository.addDesk(displayId = 5, deskId = 2) - taskRepository.setActiveDesk(displayId = 5, deskId = 1) - taskRepository.addDesk(displayId = 6, deskId = 3) - taskRepository.addDesk(displayId = 6, deskId = 4) - taskRepository.setActiveDesk(displayId = 6, deskId = 3) - - controller.activateNextDesk(INVALID_DISPLAY) - - verify(desksOrganizer).activateDesk(any(), eq(4), skipReorder = eq(false)) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun moveTaskToDesk_multipleDesks_addsPendingTransition() { - val transition = Binder() - whenever(enterDesktopTransitionHandler.moveToDesktop(any(), any())).thenReturn(transition) - taskRepository.addDesk(DEFAULT_DISPLAY, deskId = 3) - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - task.isVisible = true - - controller.moveTaskToDesk(taskId = task.taskId, deskId = 3, transitionSource = UNKNOWN) - - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.ActivateDeskWithTask && - this.token == transition && - this.deskId == 3 && - this.enterTaskId == task.taskId - } - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun dragToDesktop_landscapeDevice_resizable_undefinedOrientation_defaultLandscapeBounds() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - - val task = setUpFullscreenTask() - setUpLandscapeDisplay() - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(800f, 1280f), - task, - mockSurface, - ) - val wct = getLatestDragToDesktopWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun dragToDesktop_landscapeDevice_resizable_landscapeOrientation_defaultLandscapeBounds() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - - val task = setUpFullscreenTask(screenOrientation = SCREEN_ORIENTATION_LANDSCAPE) - setUpLandscapeDisplay() - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(800f, 1280f), - task, - mockSurface, - ) - val wct = getLatestDragToDesktopWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun dragToDesktop_landscapeDevice_resizable_portraitOrientation_resizablePortraitBounds() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - - val task = - setUpFullscreenTask( - screenOrientation = SCREEN_ORIENTATION_PORTRAIT, - shouldLetterbox = true, - ) - setUpLandscapeDisplay() - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(800f, 1280f), - task, - mockSurface, - ) - val wct = getLatestDragToDesktopWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(RESIZABLE_PORTRAIT_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun dragToDesktop_landscapeDevice_unResizable_landscapeOrientation_defaultLandscapeBounds() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - - val task = - setUpFullscreenTask( - isResizable = false, - screenOrientation = SCREEN_ORIENTATION_LANDSCAPE, - ) - setUpLandscapeDisplay() - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(800f, 1280f), - task, - mockSurface, - ) - val wct = getLatestDragToDesktopWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_LANDSCAPE_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun dragToDesktop_landscapeDevice_unResizable_portraitOrientation_unResizablePortraitBounds() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - - val task = - setUpFullscreenTask( - isResizable = false, - screenOrientation = SCREEN_ORIENTATION_PORTRAIT, - shouldLetterbox = true, - ) - setUpLandscapeDisplay() - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(800f, 1280f), - task, - mockSurface, - ) - val wct = getLatestDragToDesktopWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(UNRESIZABLE_PORTRAIT_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun dragToDesktop_portraitDevice_resizable_undefinedOrientation_defaultPortraitBounds() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - - val task = setUpFullscreenTask(deviceOrientation = ORIENTATION_PORTRAIT) - setUpPortraitDisplay() - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(800f, 1280f), - task, - mockSurface, - ) - val wct = getLatestDragToDesktopWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun dragToDesktop_portraitDevice_resizable_portraitOrientation_defaultPortraitBounds() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - - val task = - setUpFullscreenTask( - deviceOrientation = ORIENTATION_PORTRAIT, - screenOrientation = SCREEN_ORIENTATION_PORTRAIT, - ) - setUpPortraitDisplay() - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(800f, 1280f), - task, - mockSurface, - ) - val wct = getLatestDragToDesktopWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun dragToDesktop_portraitDevice_resizable_landscapeOrientation_resizableLandscapeBounds() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - - val task = - setUpFullscreenTask( - deviceOrientation = ORIENTATION_PORTRAIT, - screenOrientation = SCREEN_ORIENTATION_LANDSCAPE, - shouldLetterbox = true, - ) - setUpPortraitDisplay() - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(800f, 1280f), - task, - mockSurface, - ) - val wct = getLatestDragToDesktopWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(RESIZABLE_LANDSCAPE_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun dragToDesktop_portraitDevice_unResizable_portraitOrientation_defaultPortraitBounds() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - - val task = - setUpFullscreenTask( - isResizable = false, - deviceOrientation = ORIENTATION_PORTRAIT, - screenOrientation = SCREEN_ORIENTATION_PORTRAIT, - ) - setUpPortraitDisplay() - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(800f, 1280f), - task, - mockSurface, - ) - val wct = getLatestDragToDesktopWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(DEFAULT_PORTRAIT_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_DYNAMIC_INITIAL_BOUNDS) - fun dragToDesktop_portraitDevice_unResizable_landscapeOrientation_unResizableLandscapeBounds() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - - val task = - setUpFullscreenTask( - isResizable = false, - deviceOrientation = ORIENTATION_PORTRAIT, - screenOrientation = SCREEN_ORIENTATION_LANDSCAPE, - shouldLetterbox = true, - ) - setUpPortraitDisplay() - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(200f, 200f), - task, - mockSurface, - ) - val wct = getLatestDragToDesktopWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(UNRESIZABLE_LANDSCAPE_BOUNDS) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun dragToDesktop_movesTaskToDesk() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(200f, 200f), - task, - mockSurface, - ) - - val wct = getLatestDragToDesktopWct() - verify(desksOrganizer).moveTaskToDesk(wct, deskId = 0, task) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun dragToDesktop_activatesDesk() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(200f, 200f), - task, - mockSurface, - ) - - val wct = getLatestDragToDesktopWct() - verify(desksOrganizer).activateDesk(wct, deskId = 0) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun dragToDesktop_triggersEnterDesktopListener() { - val spyController = spy(controller) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(200f, 200f), - task, - mockSurface, - ) - - verify(desktopModeEnterExitTransitionListener) - .onEnterDesktopModeTransitionStarted(TO_DESKTOP_ANIM_DURATION) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun dragToDesktop_multipleDesks_addsPendingTransition() { - val transition = Binder() - val spyController = spy(controller) - whenever(dragToDesktopTransitionHandler.finishDragToDesktopTransition(any())) - .thenReturn(transition) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR) - val task = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - - spyController.onDragPositioningEndThroughStatusBar( - DEFAULT_DISPLAY, - PointF(200f, 200f), - task, - mockSurface, - ) - - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.ActivateDeskWithTask && - this.token == transition && - this.deskId == 0 && - this.enterTaskId == task.taskId - } - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG) - fun onDesktopDragMove_callVisualIndicatorUpdateScheduler() { - val task = setUpFreeformTask() - val spyController = spy(controller) - val mockSurface = mock(SurfaceControl::class.java) - val mockDisplayLayout = mock(DisplayLayout::class.java) - val indicatorType = DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR - whenever(displayController.getDisplayLayout(task.displayId)).thenReturn(mockDisplayLayout) - whenever(mockDisplayLayout.stableInsets()).thenReturn(Rect(0, 100, 2000, 2000)) - val inputX = 200f - val inputY = 10f - val bounds = Rect(100, -100, 500, 1000) - doReturn(desktopModeVisualIndicator) - .whenever(spyController) - .getOrCreateVisualIndicator( - eq(task), - eq(mockSurface), - eq(DesktopModeVisualIndicator.DragStartState.FROM_FREEFORM), - ) - whenever( - desktopModeVisualIndicator.calculateIndicatorType( - eq(DEFAULT_DISPLAY), - eq(PointF(inputX, bounds.top.toFloat())), - ) - ) - .thenReturn(indicatorType) - - spyController.onDragPositioningMove( - task, - mockSurface, - DEFAULT_DISPLAY, - inputX, - inputY, - bounds, - ) - - verify(visualIndicatorUpdateScheduler) - .schedule( - eq(task.displayId), - eq(indicatorType), - eq(inputX), - eq(inputY), - eq(bounds), - any(), - ) - } - - @Test - fun onDesktopDragMove_endsOutsideValidDragArea_snapsToValidBounds() { - val task = setUpFreeformTask() - val spyController = spy(controller) - val mockSurface = mock(SurfaceControl::class.java) - val mockDisplayLayout = mock(DisplayLayout::class.java) - whenever(displayController.getDisplayLayout(task.displayId)).thenReturn(mockDisplayLayout) - whenever(mockDisplayLayout.stableInsets()).thenReturn(Rect(0, 100, 2000, 2000)) - spyController.onDragPositioningMove( - task, - mockSurface, - DEFAULT_DISPLAY, - 200f, - 10f, - Rect(100, -100, 500, 1000), - ) - - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR) - spyController.onDragPositioningEnd( - task, - mockSurface, - DEFAULT_DISPLAY, - inputCoordinate = PointF(200f, -200f), - currentDragBounds = Rect(100, -100, 500, 1000), - validDragArea = Rect(0, 50, 2000, 2000), - dragStartBounds = Rect(), - motionEvent, - ) - val rectAfterEnd = Rect(100, 50, 500, 1150) - verify(transitions) - .startTransition( - eq(TRANSIT_CHANGE), - Mockito.argThat { wct -> - return@argThat wct.changes.any { (token, change) -> - change.configuration.windowConfiguration.bounds == rectAfterEnd - } - }, - eq(null), - ) - } - - @Test - fun onDesktopDragEnd_noIndicator_updatesTaskBounds() { - val task = setUpFreeformTask() - val spyController = spy(controller) - val mockSurface = mock(SurfaceControl::class.java) - val mockDisplayLayout = mock(DisplayLayout::class.java) - whenever(displayController.getDisplayLayout(task.displayId)).thenReturn(mockDisplayLayout) - whenever(mockDisplayLayout.stableInsets()).thenReturn(Rect(0, 100, 2000, 2000)) - spyController.onDragPositioningMove( - task, - mockSurface, - DEFAULT_DISPLAY, - 200f, - 10f, - Rect(100, 200, 500, 1000), - ) - - val currentDragBounds = Rect(100, 200, 500, 1000) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR) - - spyController.onDragPositioningEnd( - task, - mockSurface, - DEFAULT_DISPLAY, - inputCoordinate = PointF(200f, 300f), - currentDragBounds = currentDragBounds, - validDragArea = Rect(0, 50, 2000, 2000), - dragStartBounds = Rect(), - motionEvent, - ) - - verify(transitions) - .startTransition( - eq(TRANSIT_CHANGE), - Mockito.argThat { wct -> - return@argThat wct.changes.any { (token, change) -> - change.configuration.windowConfiguration.bounds == currentDragBounds - } - }, - eq(null), - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CONNECTED_DISPLAYS_WINDOW_DRAG) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onDesktopDragEnd_noIndicatorAndMoveToNewDisplay_reparent() { - val task = setUpFreeformTask() - val spyController = spy(controller) - val mockSurface = mock(SurfaceControl::class.java) - val mockDisplayLayout = mock(DisplayLayout::class.java) - whenever(displayController.getDisplayLayout(task.displayId)).thenReturn(mockDisplayLayout) - whenever(mockDisplayLayout.stableInsets()).thenReturn(Rect(0, 100, 2000, 2000)) - spyController.onDragPositioningMove( - task, - mockSurface, - DEFAULT_DISPLAY, - 200f, - 10f, - Rect(100, 200, 500, 1000), - ) - - val currentDragBounds = Rect(100, 200, 500, 1000) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR) - whenever(motionEvent.displayId).thenReturn(SECONDARY_DISPLAY_ID) - - spyController.onDragPositioningEnd( - task, - mockSurface, - DEFAULT_DISPLAY, - inputCoordinate = PointF(200f, 300f), - currentDragBounds, - validDragArea = Rect(0, 50, 2000, 2000), - dragStartBounds = Rect(), - motionEvent, - ) - - verify(transitions) - .startTransition( - eq(TRANSIT_CHANGE), - Mockito.argThat { wct -> - return@argThat wct.hierarchyOps[0].isReparent - }, - eq(dragToDisplayTransitionHandler), - ) - } - - @Test - fun onDesktopDragEnd_fullscreenIndicator_dragToExitDesktop() { - val task = setUpFreeformTask(bounds = Rect(0, 0, 100, 100)) - val spyController = spy(controller) - val mockSurface = mock(SurfaceControl::class.java) - val mockDisplayLayout = mock(DisplayLayout::class.java) - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - whenever(displayController.getDisplayLayout(task.displayId)).thenReturn(mockDisplayLayout) - whenever(mockDisplayLayout.stableInsets()).thenReturn(Rect(0, 100, 2000, 2000)) - whenever(mockDisplayLayout.getStableBounds(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(STABLE_BOUNDS) - } - desktopConfig.shouldMaximizeWhenDragToTopEdge = false - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) - - // Drag move the task to the top edge - spyController.onDragPositioningMove( - task, - mockSurface, - DEFAULT_DISPLAY, - 200f, - 10f, - Rect(100, 200, 500, 1000), - ) - spyController.onDragPositioningEnd( - task, - mockSurface, - DEFAULT_DISPLAY, - inputCoordinate = PointF(200f, 300f), - currentDragBounds = Rect(100, 50, 500, 1000), - validDragArea = Rect(0, 50, 2000, 2000), - dragStartBounds = Rect(), - motionEvent, - ) - - // Assert the task exits desktop mode - val wct = getLatestExitDesktopWct() - assertThat(wct.changes[task.token.asBinder()]?.windowingMode) - .isEqualTo(WINDOWING_MODE_UNDEFINED) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DRAG_TO_MAXIMIZE) - fun onDesktopDragEnd_fullscreenIndicator_dragToMaximize_desktopFirstDisabled() { - val task = setUpFreeformTask(bounds = Rect(0, 0, 100, 100)) - val spyController = spy(controller) - val mockSurface = mock(SurfaceControl::class.java) - val mockDisplayLayout = mock(DisplayLayout::class.java) - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - whenever(displayController.getDisplayLayout(task.displayId)).thenReturn(mockDisplayLayout) - whenever(mockDisplayLayout.stableInsets()).thenReturn(Rect(0, 100, 2000, 2000)) - whenever(mockDisplayLayout.getStableBounds(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(STABLE_BOUNDS) - } - desktopConfig.shouldMaximizeWhenDragToTopEdge = true - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) - - // Drag move the task to the top edge - val currentDragBounds = Rect(100, 50, 500, 1000) - spyController.onDragPositioningMove( - task, - mockSurface, - DEFAULT_DISPLAY, - 200f, - 10f, - Rect(100, 200, 500, 1000), - ) - spyController.onDragPositioningEnd( - task, - mockSurface, - DEFAULT_DISPLAY, - inputCoordinate = PointF(200f, 300f), - currentDragBounds, - validDragArea = Rect(0, 50, 2000, 2000), - dragStartBounds = Rect(), - motionEvent, - ) - - // Assert bounds set to stable bounds - val wct = getLatestToggleResizeDesktopTaskWct(currentDragBounds) - assertThat(findBoundsChange(wct, task)).isEqualTo(STABLE_BOUNDS) - // Assert event is properly logged - verify(desktopModeEventLogger, times(1)) - .logTaskResizingStarted( - ResizeTrigger.DRAG_TO_TOP_RESIZE_TRIGGER, - InputMethod.UNKNOWN_INPUT_METHOD, - task, - task.configuration.windowConfiguration.bounds.width(), - task.configuration.windowConfiguration.bounds.height(), - displayController, - ) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.DRAG_TO_TOP_RESIZE_TRIGGER, - InputMethod.UNKNOWN_INPUT_METHOD, - task, - STABLE_BOUNDS.width(), - STABLE_BOUNDS.height(), - displayController, - ) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DRAG_TO_MAXIMIZE) - fun onDesktopDragEnd_fullscreenIndicator_dragToMaximize_alreadyMaximized_noBoundsChange_desktopFirstDisabled() { - val task = setUpFreeformTask(bounds = STABLE_BOUNDS) - val spyController = spy(controller) - val mockSurface = mock(SurfaceControl::class.java) - val mockDisplayLayout = mock(DisplayLayout::class.java) - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FULLSCREEN - whenever(displayController.getDisplayLayout(task.displayId)).thenReturn(mockDisplayLayout) - whenever(mockDisplayLayout.stableInsets()).thenReturn(Rect(0, 100, 2000, 2000)) - whenever(mockDisplayLayout.getStableBounds(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(STABLE_BOUNDS) - } - desktopConfig.shouldMaximizeWhenDragToTopEdge = true - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) - - // Drag move the task to the top edge - val currentDragBounds = Rect(100, 50, 500, 1000) - spyController.onDragPositioningMove( - task, - mockSurface, - DEFAULT_DISPLAY, - 200f, - 10f, - Rect(100, 200, 500, 1000), - ) - spyController.onDragPositioningEnd( - task, - mockSurface, - DEFAULT_DISPLAY, - inputCoordinate = PointF(200f, 300f), - currentDragBounds = currentDragBounds, - validDragArea = Rect(0, 50, 2000, 2000), - dragStartBounds = Rect(), - motionEvent, - ) - - // Assert that task is NOT updated via WCT - verify(toggleResizeDesktopTaskTransitionHandler, never()) - .startTransition(any(), any(), any()) - // Assert that task leash is updated via Surface Animations - verify(mReturnToDragStartAnimator) - .start( - eq(task.taskId), - eq(mockSurface), - eq(currentDragBounds), - eq(STABLE_BOUNDS), - anyOrNull(), - ) - // Assert no event is logged - verify(desktopModeEventLogger, never()) - .logTaskResizingStarted(any(), any(), any(), any(), any(), any(), any()) - verify(desktopModeEventLogger, never()) - .logTaskResizingEnded(any(), any(), any(), any(), any(), any(), any()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DRAG_TO_MAXIMIZE) - fun onDesktopDragEnd_fullscreenIndicator_dragToMaximize() { - val task = setUpFreeformTask(bounds = Rect(0, 0, 100, 100)) - val spyController = spy(controller) - val mockSurface = mock(SurfaceControl::class.java) - val mockDisplayLayout = mock(DisplayLayout::class.java) - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - whenever(displayController.getDisplayLayout(task.displayId)).thenReturn(mockDisplayLayout) - whenever(mockDisplayLayout.stableInsets()).thenReturn(Rect(0, 100, 2000, 2000)) - whenever(mockDisplayLayout.getStableBounds(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(STABLE_BOUNDS) - } - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) - whenever(motionEvent.displayId).thenReturn(DEFAULT_DISPLAY) - - // Drag move the task to the top edge - val currentDragBounds = Rect(100, 50, 500, 1000) - spyController.onDragPositioningMove( - task, - mockSurface, - DEFAULT_DISPLAY, - 200f, - 10f, - Rect(100, 200, 500, 1000), - ) - spyController.onDragPositioningEnd( - task, - mockSurface, - DEFAULT_DISPLAY, - inputCoordinate = PointF(200f, 300f), - currentDragBounds, - validDragArea = Rect(0, 50, 2000, 2000), - dragStartBounds = Rect(), - motionEvent, - ) - - // Assert bounds set to stable bounds - val wct = getLatestToggleResizeDesktopTaskWct(currentDragBounds) - assertThat(findBoundsChange(wct, task)).isEqualTo(STABLE_BOUNDS) - // Assert event is properly logged - verify(desktopModeEventLogger, times(1)) - .logTaskResizingStarted( - ResizeTrigger.DRAG_TO_TOP_RESIZE_TRIGGER, - InputMethod.UNKNOWN_INPUT_METHOD, - task, - task.configuration.windowConfiguration.bounds.width(), - task.configuration.windowConfiguration.bounds.height(), - displayController, - ) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.DRAG_TO_TOP_RESIZE_TRIGGER, - InputMethod.UNKNOWN_INPUT_METHOD, - task, - STABLE_BOUNDS.width(), - STABLE_BOUNDS.height(), - displayController, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DRAG_TO_MAXIMIZE) - fun onDesktopDragEnd_fullscreenIndicator_dragToMaximize_alreadyMaximized_noBoundsChange() { - val task = setUpFreeformTask(bounds = STABLE_BOUNDS) - val spyController = spy(controller) - val mockSurface = mock(SurfaceControl::class.java) - val mockDisplayLayout = mock(DisplayLayout::class.java) - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - tda.configuration.windowConfiguration.windowingMode = WINDOWING_MODE_FREEFORM - whenever(displayController.getDisplayLayout(task.displayId)).thenReturn(mockDisplayLayout) - whenever(mockDisplayLayout.stableInsets()).thenReturn(Rect(0, 100, 2000, 2000)) - whenever(mockDisplayLayout.getStableBounds(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(STABLE_BOUNDS) - } - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - whenever(desktopModeVisualIndicator.updateIndicatorType(any(), anyOrNull())) - .thenReturn(DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) - whenever(motionEvent.displayId).thenReturn(DEFAULT_DISPLAY) - - // Drag move the task to the top edge - val currentDragBounds = Rect(100, 50, 500, 1000) - spyController.onDragPositioningMove( - task, - mockSurface, - DEFAULT_DISPLAY, - 200f, - 10f, - Rect(100, 200, 500, 1000), - ) - spyController.onDragPositioningEnd( - task, - mockSurface, - DEFAULT_DISPLAY, - inputCoordinate = PointF(200f, 300f), - currentDragBounds = currentDragBounds, - validDragArea = Rect(0, 50, 2000, 2000), - dragStartBounds = Rect(), - motionEvent, - ) - - // Assert that task is NOT updated via WCT - verify(toggleResizeDesktopTaskTransitionHandler, never()) - .startTransition(any(), any(), any()) - // Assert that task leash is updated via Surface Animations - verify(mReturnToDragStartAnimator) - .start( - eq(task.taskId), - eq(mockSurface), - eq(currentDragBounds), - eq(STABLE_BOUNDS), - anyOrNull(), - ) - // Assert no event is logged - verify(desktopModeEventLogger, never()) - .logTaskResizingStarted(any(), any(), any(), any(), any(), any(), any()) - verify(desktopModeEventLogger, never()) - .logTaskResizingEnded(any(), any(), any(), any(), any(), any(), any()) - } - - @Test - fun enterSplit_freeformTaskIsMovedToSplit() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - val task3 = setUpFreeformTask() - - task1.isFocused = false - task2.isFocused = true - task3.isFocused = false - - controller.enterSplit(DEFAULT_DISPLAY, leftOrTop = false) - - verify(splitScreenController) - .requestEnterSplitSelect( - eq(task2), - eq(SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT), - eq(task2.configuration.windowConfiguration.bounds), - /* startRecents= */ eq(true), - /* withRecentsWct= */ any(), - ) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP, - ) - fun enterSplit_multipleVisibleNonMinimizedTasks_removesWallpaperActivity() { - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - val task3 = setUpFreeformTask() - - task1.isFocused = false - task2.isFocused = true - task3.isFocused = false - - controller.enterSplit(DEFAULT_DISPLAY, leftOrTop = false) - - val wctArgument = argumentCaptor<WindowContainerTransaction>() - verify(splitScreenController) - .requestEnterSplitSelect( - eq(task2), - eq(SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT), - eq(task2.configuration.windowConfiguration.bounds), - /* startRecents= */ eq(true), - wctArgument.capture(), - ) - // Does not remove wallpaper activity, as desktop still has visible desktop tasks - assertThat(wctArgument.firstValue.hierarchyOps).isEmpty() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES) - fun newWindow_fromFullscreenOpensInSplit() { - setUpLandscapeDisplay() - val task = setUpFullscreenTask() - val optionsCaptor = argumentCaptor<Bundle>() - runOpenNewWindow(task) - verify(splitScreenController) - .startIntent( - any(), - anyInt(), - any(), - any(), - optionsCaptor.capture(), - anyOrNull(), - eq(true), - eq(SPLIT_INDEX_UNDEFINED), - eq(DEFAULT_DISPLAY), - ) - assertThat(ActivityOptions.fromBundle(optionsCaptor.firstValue).launchWindowingMode) - .isEqualTo(WINDOWING_MODE_MULTI_WINDOW) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES) - fun newWindow_fromSplitOpensInSplit() { - setUpLandscapeDisplay() - val task = setUpSplitScreenTask() - val optionsCaptor = argumentCaptor<Bundle>() - runOpenNewWindow(task) - verify(splitScreenController) - .startIntent( - any(), - anyInt(), - any(), - any(), - optionsCaptor.capture(), - anyOrNull(), - eq(true), - eq(SPLIT_INDEX_UNDEFINED), - eq(DEFAULT_DISPLAY), - ) - assertThat(ActivityOptions.fromBundle(optionsCaptor.firstValue).launchWindowingMode) - .isEqualTo(WINDOWING_MODE_MULTI_WINDOW) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES) - fun newWindow_fromFreeformAddsNewWindow() { - setUpLandscapeDisplay() - val task = setUpFreeformTask() - val wctCaptor = argumentCaptor<WindowContainerTransaction>() - val transition = Binder() - whenever( - mMockDesktopImmersiveController.exitImmersiveIfApplicable( - any(), - anyInt(), - anyOrNull(), - any(), - ) - ) - .thenReturn(ExitResult.NoExit) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - anyInt(), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - runOpenNewWindow(task) - - verify(desktopMixedTransitionHandler) - .startLaunchTransition( - anyInt(), - wctCaptor.capture(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - assertThat( - ActivityOptions.fromBundle(wctCaptor.firstValue.hierarchyOps[0].launchOptions) - .launchWindowingMode - ) - .isEqualTo(WINDOWING_MODE_FREEFORM) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY, - ) - fun newWindow_fromFreeformAddsNewWindow_launchesToCallingDisplay() { - setUpLandscapeDisplay() - val deskId = 2 - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = deskId) - taskRepository.setActiveDesk(displayId = SECOND_DISPLAY, deskId = deskId) - val task = setUpFreeformTask(displayId = SECOND_DISPLAY, deskId = deskId) - val wctCaptor = argumentCaptor<WindowContainerTransaction>() - val transition = Binder() - whenever( - mMockDesktopImmersiveController.exitImmersiveIfApplicable( - any(), - anyInt(), - anyOrNull(), - any(), - ) - ) - .thenReturn(ExitResult.NoExit) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - anyInt(), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - runOpenNewWindow(task) - - verify(desktopMixedTransitionHandler) - .startLaunchTransition( - anyInt(), - wctCaptor.capture(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - wctCaptor.firstValue.assertLaunchTaskOnDisplay(SECOND_DISPLAY) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES) - fun newWindow_fromFreeform_exitsImmersiveIfNeeded() { - setUpLandscapeDisplay() - val immersiveTask = setUpFreeformTask() - val task = setUpFreeformTask() - val runOnStart = RunOnStartTransitionCallback() - val transition = Binder() - whenever( - mMockDesktopImmersiveController.exitImmersiveIfApplicable( - any(), - anyInt(), - anyOrNull(), - any(), - ) - ) - .thenReturn(ExitResult.Exit(immersiveTask.taskId, runOnStart)) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - anyInt(), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - runOpenNewWindow(task) - - runOnStart.assertOnlyInvocation(transition) - } - - private fun runOpenNewWindow(task: RunningTaskInfo) { - markTaskVisible(task) - task.baseActivity = mock(ComponentName::class.java) - task.isFocused = true - runningTasks.add(task) - controller.openNewWindow(task) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES) - fun openInstance_fromFullscreenOpensInSplit() { - setUpLandscapeDisplay() - val task = setUpFullscreenTask() - val taskToRequest = setUpFreeformTask() - val optionsCaptor = argumentCaptor<Bundle>() - runOpenInstance(task, taskToRequest.taskId) - verify(splitScreenController) - .startTask(anyInt(), anyInt(), optionsCaptor.capture(), anyOrNull(), any()) - assertThat(ActivityOptions.fromBundle(optionsCaptor.firstValue).launchWindowingMode) - .isEqualTo(WINDOWING_MODE_MULTI_WINDOW) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES) - fun openInstance_fromSplitOpensInSplit() { - setUpLandscapeDisplay() - val task = setUpSplitScreenTask() - val taskToRequest = setUpFreeformTask() - val optionsCaptor = argumentCaptor<Bundle>() - runOpenInstance(task, taskToRequest.taskId) - verify(splitScreenController) - .startTask(anyInt(), anyInt(), optionsCaptor.capture(), anyOrNull(), any()) - assertThat(ActivityOptions.fromBundle(optionsCaptor.firstValue).launchWindowingMode) - .isEqualTo(WINDOWING_MODE_MULTI_WINDOW) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES) - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun openInstance_fromFreeformAddsNewWindow_multiDesksDisabled() { - setUpLandscapeDisplay() - val task = setUpFreeformTask() - val taskToRequest = setUpFreeformTask() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_TO_FRONT), - any(), - eq(taskToRequest.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - runOpenInstance(task, taskToRequest.taskId) - - verify(desktopMixedTransitionHandler) - .startLaunchTransition( - anyInt(), - any(), - anyInt(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - val wct = getLatestDesktopMixedTaskWct(type = TRANSIT_TO_FRONT) - assertThat(wct.hierarchyOps).hasSize(1) - wct.assertReorderAt(index = 0, taskToRequest) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun openInstance_fromFreeformAddsNewWindow_multiDesksEnabled() { - setUpLandscapeDisplay() - val task = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - val taskToRequest = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_TO_FRONT), - any(), - eq(taskToRequest.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - runOpenInstance(task, taskToRequest.taskId) - - verify(desktopMixedTransitionHandler) - .startLaunchTransition( - anyInt(), - any(), - anyInt(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - verify(desksOrganizer).reorderTaskToFront(any(), eq(0), eq(taskToRequest)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES) - @DisableFlags( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun openInstance_fromFreeform_multiDesksDisabled_minimizesIfNeeded() { - setUpLandscapeDisplay() - val deskId = 0 - val freeformTasks = - (1..MAX_TASK_LIMIT + 1).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - val oldestTask = freeformTasks.first() - val newestTask = freeformTasks.last() - - val transition = Binder() - val wctCaptor = argumentCaptor<WindowContainerTransaction>() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - anyInt(), - wctCaptor.capture(), - anyInt(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - runOpenInstance(newestTask, freeformTasks[1].taskId) - - val wct = wctCaptor.firstValue - assertThat(wct.hierarchyOps.size).isEqualTo(2) // move-to-front + minimize - wct.assertReorderAt(0, freeformTasks[1], toTop = true) - wct.assertReorderAt(1, oldestTask, toTop = false) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION) - fun openInstance_fromFreeform_multiDesksEnabled_minimizesIfNeeded() { - setUpLandscapeDisplay() - val deskId = 0 - val freeformTasks = - (1..MAX_TASK_LIMIT + 1).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - val oldestTask = freeformTasks.first() - val newestTask = freeformTasks.last() - - val transition = Binder() - val wctCaptor = argumentCaptor<WindowContainerTransaction>() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - anyInt(), - wctCaptor.capture(), - anyInt(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - runOpenInstance(newestTask, freeformTasks[1].taskId) - - val wct = wctCaptor.firstValue - verify(desksOrganizer).minimizeTask(wct, deskId, oldestTask) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_TASK_LIMIT_SEPARATE_TRANSITION, - ) - fun openInstance_fromFreeform_minimizesSeparately() { - setUpLandscapeDisplay() - val deskId = 0 - val freeformTasks = - (1..MAX_TASK_LIMIT + 1).map { _ -> - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = deskId) - } - val oldestTask = freeformTasks.first() - val newestTask = freeformTasks.last() - - val transition = Binder() - val wctCaptor = argumentCaptor<WindowContainerTransaction>() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - anyInt(), - wctCaptor.capture(), - anyInt(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - runOpenInstance(newestTask, freeformTasks[1].taskId) - - val wct = wctCaptor.firstValue - verify(desksOrganizer, never()).minimizeTask(wct, deskId, oldestTask) - assertThat(desktopTasksLimiter.hasTaskLimitTransitionForTesting(transition)).isTrue() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MULTI_INSTANCE_FEATURES) - fun openInstance_fromFreeform_exitsImmersiveIfNeeded() { - setUpLandscapeDisplay() - val freeformTask = setUpFreeformTask() - val immersiveTask = setUpFreeformTask() - taskRepository.setTaskInFullImmersiveState( - displayId = immersiveTask.displayId, - taskId = immersiveTask.taskId, - immersive = true, - ) - val runOnStartTransit = RunOnStartTransitionCallback() - val transition = Binder() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - anyInt(), - any(), - anyInt(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - whenever( - mMockDesktopImmersiveController.exitImmersiveIfApplicable( - any(), - eq(DEFAULT_DISPLAY), - eq(freeformTask.taskId), - any(), - ) - ) - .thenReturn( - ExitResult.Exit( - exitingTask = immersiveTask.taskId, - runOnTransitionStart = runOnStartTransit, - ) - ) - - runOpenInstance(immersiveTask, freeformTask.taskId) - - verify(mMockDesktopImmersiveController) - .exitImmersiveIfApplicable( - any(), - eq(immersiveTask.displayId), - eq(freeformTask.taskId), - any(), - ) - runOnStartTransit.assertOnlyInvocation(transition) - } - - private fun runOpenInstance(callingTask: RunningTaskInfo, requestedTaskId: Int) { - markTaskVisible(callingTask) - callingTask.baseActivity = mock(ComponentName::class.java) - callingTask.isFocused = true - runningTasks.add(callingTask) - controller.openInstance(callingTask, requestedTaskId) - } - - @Test - fun toggleBounds_togglesToStableBounds() { - val bounds = Rect(0, 0, 100, 100) - val task = setUpFreeformTask(DEFAULT_DISPLAY, bounds) - - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_MAXIMIZE, - InputMethod.TOUCH, - ), - ) - - // Assert bounds set to stable bounds - val wct = getLatestToggleResizeDesktopTaskWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(STABLE_BOUNDS) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.MAXIMIZE_BUTTON, - InputMethod.TOUCH, - task, - STABLE_BOUNDS.width(), - STABLE_BOUNDS.height(), - displayController, - ) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TILE_RESIZING) - fun snapToHalfScreen_getSnapBounds_calculatesBoundsForResizable() { - val bounds = Rect(100, 100, 300, 300) - val task = - setUpFreeformTask(DEFAULT_DISPLAY, bounds).apply { - topActivityInfo = - ActivityInfo().apply { - screenOrientation = SCREEN_ORIENTATION_LANDSCAPE - configuration.windowConfiguration.appBounds = bounds - } - isResizeable = true - } - - val currentDragBounds = Rect(0, 100, 200, 300) - val expectedBounds = - Rect( - STABLE_BOUNDS.left, - STABLE_BOUNDS.top, - STABLE_BOUNDS.right / 2, - STABLE_BOUNDS.bottom, - ) - - controller.snapToHalfScreen( - task, - mockSurface, - currentDragBounds, - SnapPosition.LEFT, - ResizeTrigger.SNAP_LEFT_MENU, - InputMethod.TOUCH, - ) - // Assert bounds set to stable bounds - val wct = getLatestToggleResizeDesktopTaskWct(currentDragBounds) - assertThat(findBoundsChange(wct, task)).isEqualTo(expectedBounds) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.SNAP_LEFT_MENU, - InputMethod.TOUCH, - task, - expectedBounds.width(), - expectedBounds.height(), - displayController, - ) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TILE_RESIZING) - fun snapToHalfScreen_snapBoundsWhenAlreadySnapped_animatesSurfaceWithoutWCT() { - // Set up task to already be in snapped-left bounds - val bounds = - Rect( - STABLE_BOUNDS.left, - STABLE_BOUNDS.top, - STABLE_BOUNDS.right / 2, - STABLE_BOUNDS.bottom, - ) - val task = - setUpFreeformTask(DEFAULT_DISPLAY, bounds).apply { - topActivityInfo = - ActivityInfo().apply { - screenOrientation = SCREEN_ORIENTATION_LANDSCAPE - configuration.windowConfiguration.appBounds = bounds - } - isResizeable = true - } - - // Attempt to snap left again - val currentDragBounds = Rect(bounds).apply { offset(-100, 0) } - controller.snapToHalfScreen( - task, - mockSurface, - currentDragBounds, - SnapPosition.LEFT, - ResizeTrigger.SNAP_LEFT_MENU, - InputMethod.TOUCH, - ) - // Assert that task is NOT updated via WCT - verify(toggleResizeDesktopTaskTransitionHandler, never()) - .startTransition(any(), any(), any()) - - // Assert that task leash is updated via Surface Animations - verify(mReturnToDragStartAnimator) - .start(eq(task.taskId), eq(mockSurface), eq(currentDragBounds), eq(bounds), anyOrNull()) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.SNAP_LEFT_MENU, - InputMethod.TOUCH, - task, - bounds.width(), - bounds.height(), - displayController, - ) - } - - @Test - @DisableFlags( - Flags.FLAG_DISABLE_NON_RESIZABLE_APP_SNAP_RESIZING, - Flags.FLAG_ENABLE_TILE_RESIZING, - ) - fun handleSnapResizingTaskOnDrag_nonResizable_snapsToHalfScreen() { - val task = - setUpFreeformTask(DEFAULT_DISPLAY, Rect(0, 0, 200, 100)).apply { isResizeable = false } - val preDragBounds = Rect(100, 100, 400, 500) - val currentDragBounds = Rect(0, 100, 300, 500) - val expectedBounds = - Rect( - STABLE_BOUNDS.left, - STABLE_BOUNDS.top, - STABLE_BOUNDS.right / 2, - STABLE_BOUNDS.bottom, - ) - - controller.handleSnapResizingTaskOnDrag( - task, - SnapPosition.LEFT, - mockSurface, - currentDragBounds, - preDragBounds, - motionEvent, - ) - val wct = getLatestToggleResizeDesktopTaskWct(currentDragBounds) - assertThat(findBoundsChange(wct, task)).isEqualTo(expectedBounds) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingStarted( - ResizeTrigger.DRAG_LEFT, - InputMethod.UNKNOWN_INPUT_METHOD, - task, - preDragBounds.width(), - preDragBounds.height(), - displayController, - ) - } - - @Test - @EnableFlags(Flags.FLAG_DISABLE_NON_RESIZABLE_APP_SNAP_RESIZING) - fun handleSnapResizingTaskOnDrag_nonResizable_startsRepositionAnimation() { - val task = - setUpFreeformTask(DEFAULT_DISPLAY, Rect(0, 0, 200, 100)).apply { isResizeable = false } - val preDragBounds = Rect(100, 100, 400, 500) - val currentDragBounds = Rect(0, 100, 300, 500) - - controller.handleSnapResizingTaskOnDrag( - task, - SnapPosition.LEFT, - mockSurface, - currentDragBounds, - preDragBounds, - motionEvent, - ) - verify(mReturnToDragStartAnimator) - .start( - eq(task.taskId), - eq(mockSurface), - eq(currentDragBounds), - eq(preDragBounds), - any(), - ) - verify(desktopModeEventLogger, never()) - .logTaskResizingStarted(any(), any(), any(), any(), any(), any(), any()) - } - - @Test - @EnableFlags(Flags.FLAG_DISABLE_NON_RESIZABLE_APP_SNAP_RESIZING) - fun handleInstantSnapResizingTask_nonResizable_animatorNotStartedAndShowsToast() { - val taskBounds = Rect(0, 0, 200, 100) - val task = setUpFreeformTask(DEFAULT_DISPLAY, taskBounds).apply { isResizeable = false } - - controller.handleInstantSnapResizingTask( - task, - SnapPosition.LEFT, - ResizeTrigger.SNAP_LEFT_MENU, - InputMethod.MOUSE, - ) - - // Assert that task is NOT updated via WCT - verify(toggleResizeDesktopTaskTransitionHandler, never()) - .startTransition(any(), any(), any()) - verify(mockToast).show() - } - - @Test - @EnableFlags(Flags.FLAG_DISABLE_NON_RESIZABLE_APP_SNAP_RESIZING) - @DisableFlags(Flags.FLAG_ENABLE_TILE_RESIZING) - fun handleInstantSnapResizingTask_resizable_snapsToHalfScreenAndNotShowToast() { - val taskBounds = Rect(0, 0, 200, 100) - val task = setUpFreeformTask(DEFAULT_DISPLAY, taskBounds).apply { isResizeable = true } - val expectedBounds = - Rect( - STABLE_BOUNDS.left, - STABLE_BOUNDS.top, - STABLE_BOUNDS.right / 2, - STABLE_BOUNDS.bottom, - ) - - controller.handleInstantSnapResizingTask( - task, - SnapPosition.LEFT, - ResizeTrigger.SNAP_LEFT_MENU, - InputMethod.MOUSE, - ) - - // Assert bounds set to half of the stable bounds - val wct = getLatestToggleResizeDesktopTaskWct(taskBounds) - assertThat(findBoundsChange(wct, task)).isEqualTo(expectedBounds) - verify(mockToast, never()).show() - verify(desktopModeEventLogger, times(1)) - .logTaskResizingStarted( - ResizeTrigger.SNAP_LEFT_MENU, - InputMethod.MOUSE, - task, - taskBounds.width(), - taskBounds.height(), - displayController, - ) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.SNAP_LEFT_MENU, - InputMethod.MOUSE, - task, - expectedBounds.width(), - expectedBounds.height(), - displayController, - ) - } - - @Test - fun toggleBounds_togglesToCalculatedBoundsForNonResizable() { - val bounds = Rect(0, 0, 200, 100) - val task = - setUpFreeformTask(DEFAULT_DISPLAY, bounds).apply { - topActivityInfo.apply { - this?.screenOrientation = SCREEN_ORIENTATION_LANDSCAPE - configuration.windowConfiguration.appBounds = bounds - } - appCompatTaskInfo.topActivityAppBounds.set(0, 0, bounds.width(), bounds.height()) - isResizeable = false - } - - // Bounds should be 1000 x 500, vertically centered in the 1000 x 1000 stable bounds - val expectedBounds = Rect(STABLE_BOUNDS.left, 250, STABLE_BOUNDS.right, 750) - - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_MAXIMIZE, - InputMethod.TOUCH, - ), - ) - - // Assert bounds set to stable bounds - val wct = getLatestToggleResizeDesktopTaskWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(expectedBounds) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.MAXIMIZE_BUTTON, - InputMethod.TOUCH, - task, - expectedBounds.width(), - expectedBounds.height(), - displayController, - ) - } - - @Test - fun toggleBounds_lastBoundsBeforeMaximizeSaved() { - val bounds = Rect(0, 0, 100, 100) - val task = setUpFreeformTask(DEFAULT_DISPLAY, bounds) - - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_MAXIMIZE, - InputMethod.TOUCH, - ), - ) - - assertThat(taskRepository.removeBoundsBeforeMaximize(task.taskId)).isEqualTo(bounds) - verify(desktopModeEventLogger, never()) - .logTaskResizingEnded(any(), any(), any(), any(), any(), any(), any()) - } - - @Test - fun toggleBounds_togglesFromStableBoundsToLastBoundsBeforeMaximize() { - val boundsBeforeMaximize = Rect(0, 0, 100, 100) - val task = setUpFreeformTask(DEFAULT_DISPLAY, boundsBeforeMaximize) - - // Maximize - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_MAXIMIZE, - InputMethod.TOUCH, - ), - ) - task.configuration.windowConfiguration.bounds.set(STABLE_BOUNDS) - - // Restore - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.RESTORE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_RESTORE, - InputMethod.TOUCH, - ), - ) - - // Assert bounds set to last bounds before maximize - val wct = getLatestToggleResizeDesktopTaskWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(boundsBeforeMaximize) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.MAXIMIZE_BUTTON, - InputMethod.TOUCH, - task, - boundsBeforeMaximize.width(), - boundsBeforeMaximize.height(), - displayController, - ) - } - - @Test - fun toggleBounds_togglesFromStableBoundsToLastBoundsBeforeMaximize_nonResizeableEqualWidth() { - val boundsBeforeMaximize = Rect(0, 0, 100, 100) - val task = - setUpFreeformTask(DEFAULT_DISPLAY, boundsBeforeMaximize).apply { isResizeable = false } - - // Maximize - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_MAXIMIZE, - InputMethod.TOUCH, - ), - ) - task.configuration.windowConfiguration.bounds.set( - STABLE_BOUNDS.left, - boundsBeforeMaximize.top, - STABLE_BOUNDS.right, - boundsBeforeMaximize.bottom, - ) - - // Restore - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.RESTORE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_RESTORE, - InputMethod.TOUCH, - ), - ) - - // Assert bounds set to last bounds before maximize - val wct = getLatestToggleResizeDesktopTaskWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(boundsBeforeMaximize) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.MAXIMIZE_BUTTON, - InputMethod.TOUCH, - task, - boundsBeforeMaximize.width(), - boundsBeforeMaximize.height(), - displayController, - ) - } - - @Test - fun toggleBounds_togglesFromStableBoundsToLastBoundsBeforeMaximize_nonResizeableEqualHeight() { - val boundsBeforeMaximize = Rect(0, 0, 100, 100) - val task = - setUpFreeformTask(DEFAULT_DISPLAY, boundsBeforeMaximize).apply { isResizeable = false } - - // Maximize - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_MAXIMIZE, - InputMethod.TOUCH, - ), - ) - task.configuration.windowConfiguration.bounds.set( - boundsBeforeMaximize.left, - STABLE_BOUNDS.top, - boundsBeforeMaximize.right, - STABLE_BOUNDS.bottom, - ) - - // Restore - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.RESTORE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_RESTORE, - InputMethod.TOUCH, - ), - ) - - // Assert bounds set to last bounds before maximize - val wct = getLatestToggleResizeDesktopTaskWct() - assertThat(findBoundsChange(wct, task)).isEqualTo(boundsBeforeMaximize) - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.MAXIMIZE_BUTTON, - InputMethod.TOUCH, - task, - boundsBeforeMaximize.width(), - boundsBeforeMaximize.height(), - displayController, - ) - } - - @Test - fun toggleBounds_removesLastBoundsBeforeMaximizeAfterRestoringBounds() { - val boundsBeforeMaximize = Rect(0, 0, 100, 100) - val task = setUpFreeformTask(DEFAULT_DISPLAY, boundsBeforeMaximize) - - // Maximize - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_MAXIMIZE, - InputMethod.TOUCH, - ), - ) - task.configuration.windowConfiguration.bounds.set(STABLE_BOUNDS) - - // Restore - controller.toggleDesktopTaskSize( - task, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.RESTORE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_RESTORE, - InputMethod.TOUCH, - ), - ) - - // Assert last bounds before maximize removed after use - assertThat(taskRepository.removeBoundsBeforeMaximize(task.taskId)).isNull() - verify(desktopModeEventLogger, times(1)) - .logTaskResizingEnded( - ResizeTrigger.MAXIMIZE_BUTTON, - InputMethod.TOUCH, - task, - boundsBeforeMaximize.width(), - boundsBeforeMaximize.height(), - displayController, - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, - ) - fun onUnhandledDrag_newFreeformIntent_tabTearingAnimationBugfixFlagEnabled_tabTearingLaunchAnimationFlagEnabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR, - PointF(1200f, 700f), - Rect(240, 700, 2160, 1900), - tabTearingMinimizeAnimationFlagEnabled = true, - tabTearingLaunchAnimationFlagEnabled = true, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION) - fun onUnhandledDrag_newFreeformIntent_tabTearingAnimationBugfixFlagEnabled_tabTearingLaunchAnimationFlagDisabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR, - PointF(1200f, 700f), - Rect(240, 700, 2160, 1900), - tabTearingMinimizeAnimationFlagEnabled = true, - tabTearingLaunchAnimationFlagEnabled = false, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX) - fun onUnhandledDrag_newFreeformIntent_tabTearingAnimationBugfixFlagDisabled_tabTearingLaunchAnimationFlagEnabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR, - PointF(1200f, 700f), - Rect(240, 700, 2160, 1900), - tabTearingMinimizeAnimationFlagEnabled = false, - tabTearingLaunchAnimationFlagEnabled = true, - ) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, - ) - fun onUnhandledDrag_newFreeformIntent_tabTearingAnimationBugfixFlagDisabled_tabTearingLaunchAnimationFlagDisabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_DESKTOP_INDICATOR, - PointF(1200f, 700f), - Rect(240, 700, 2160, 1900), - tabTearingMinimizeAnimationFlagEnabled = false, - tabTearingLaunchAnimationFlagEnabled = false, - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, - ) - fun onUnhandledDrag_newFreeformIntentSplitLeft_tabTearingAnimationBugfixFlagEnabled_tabTearingLaunchAnimationFlagEnabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR, - PointF(50f, 700f), - Rect(0, 0, 500, 1000), - tabTearingMinimizeAnimationFlagEnabled = true, - tabTearingLaunchAnimationFlagEnabled = true, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION) - fun onUnhandledDrag_newFreeformIntentSplitLeft_tabTearingAnimationBugfixFlagEnabled_tabTearingLaunchAnimationFlagDisabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR, - PointF(50f, 700f), - Rect(0, 0, 500, 1000), - tabTearingMinimizeAnimationFlagEnabled = true, - tabTearingLaunchAnimationFlagEnabled = false, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX) - fun onUnhandledDrag_newFreeformIntentSplitLeft_tabTearingAnimationBugfixFlagDisabled_tabTearingLaunchAnimationFlagEnabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR, - PointF(50f, 700f), - Rect(0, 0, 500, 1000), - tabTearingMinimizeAnimationFlagEnabled = false, - tabTearingLaunchAnimationFlagEnabled = true, - ) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, - ) - fun onUnhandledDrag_newFreeformIntentSplitLeft_tabTearingAnimationBugfixFlagDisabled_tabTearingLaunchAnimationFlagDisabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_LEFT_INDICATOR, - PointF(50f, 700f), - Rect(0, 0, 500, 1000), - tabTearingMinimizeAnimationFlagEnabled = false, - tabTearingLaunchAnimationFlagEnabled = false, - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, - ) - fun onUnhandledDrag_newFreeformIntentSplitRight_tabTearingAnimationBugfixFlagEnabled_tabTearingLaunchAnimationFlagEnabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR, - PointF(2500f, 700f), - Rect(500, 0, 1000, 1000), - tabTearingMinimizeAnimationFlagEnabled = true, - tabTearingLaunchAnimationFlagEnabled = true, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION) - fun onUnhandledDrag_newFreeformIntentSplitRight_tabTearingAnimationBugfixFlagEnabled_tabTearingLaunchAnimationFlagDisabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR, - PointF(2500f, 700f), - Rect(500, 0, 1000, 1000), - tabTearingMinimizeAnimationFlagEnabled = true, - tabTearingLaunchAnimationFlagEnabled = false, - ) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX) - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION) - fun onUnhandledDrag_newFreeformIntentSplitRight_tabTearingAnimationBugfixFlagDisabled_tabTearingLaunchAnimationFlagEnabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR, - PointF(2500f, 700f), - Rect(500, 0, 1000, 1000), - tabTearingMinimizeAnimationFlagEnabled = false, - tabTearingLaunchAnimationFlagEnabled = true, - ) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, - ) - fun onUnhandledDrag_newFreeformIntentSplitRight_tabTearingAnimationBugfixFlagDisabled_tabTearingLaunchAnimationFlagDisabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_SPLIT_RIGHT_INDICATOR, - PointF(2500f, 700f), - Rect(500, 0, 1000, 1000), - tabTearingMinimizeAnimationFlagEnabled = false, - tabTearingLaunchAnimationFlagEnabled = false, - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, - ) - fun onUnhandledDrag_newFullscreenIntent_tabTearingAnimationBugfixFlagEnabled_tabTearingLaunchAnimationFlagEnabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR, - PointF(1200f, 50f), - Rect(), - tabTearingMinimizeAnimationFlagEnabled = true, - tabTearingLaunchAnimationFlagEnabled = true, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION) - fun onUnhandledDrag_newFullscreenIntent_tabTearingAnimationBugfixFlagEnabled_tabTearingLaunchAnimationFlagDisabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR, - PointF(1200f, 50f), - Rect(), - tabTearingMinimizeAnimationFlagEnabled = true, - tabTearingLaunchAnimationFlagEnabled = false, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX) - fun onUnhandledDrag_newFullscreenIntent_tabTearingAnimationBugfixFlagDisabled_tabTearingLaunchAnimationFlagEnabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR, - PointF(1200f, 50f), - Rect(), - tabTearingMinimizeAnimationFlagEnabled = false, - tabTearingLaunchAnimationFlagEnabled = true, - ) - } - - @Test - @DisableFlags( - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, - ) - fun onUnhandledDrag_newFullscreenIntent_tabTearingAnimationBugfixFlagDisabled_tabTearingLaunchAnimationFlagDisabled() { - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR, - PointF(1200f, 50f), - Rect(), - tabTearingMinimizeAnimationFlagEnabled = false, - tabTearingLaunchAnimationFlagEnabled = false, - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_MINIMIZE_ANIMATION_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_TAB_TEARING_LAUNCH_ANIMATION, - ) - fun onUnhandledDrag_crossDisplayDrag() { - taskRepository.addDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - taskRepository.setActiveDesk(displayId = SECOND_DISPLAY, deskId = SECOND_DISPLAY) - setUpFreeformTask(displayId = SECOND_DISPLAY, deskId = 2) - testOnUnhandledDrag( - DesktopModeVisualIndicator.IndicatorType.NO_INDICATOR, - PointF(1200f, 700f), - Rect(240, 700, 2160, 1900), - tabTearingMinimizeAnimationFlagEnabled = true, - tabTearingLaunchAnimationFlagEnabled = true, - destinationDisplayId = SECOND_DISPLAY, - ) - } - - @Test - fun shellController_registersUserChangeListener() { - verify(shellController, times(2)).addUserChangeListener(any()) - } - - @Test - @EnableFlags(FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun onTaskInfoChanged_inImmersiveUnrequestsImmersive_exits() { - val task = setUpFreeformTask(DEFAULT_DISPLAY) - taskRepository.setTaskInFullImmersiveState(DEFAULT_DISPLAY, task.taskId, immersive = true) - - task.requestedVisibleTypes = WindowInsets.Type.statusBars() - controller.onTaskInfoChanged(task) - - verify(mMockDesktopImmersiveController).moveTaskToNonImmersive(eq(task), any()) - } - - @Test - @EnableFlags(FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun onTaskInfoChanged_notInImmersiveUnrequestsImmersive_noReExit() { - val task = setUpFreeformTask(DEFAULT_DISPLAY) - taskRepository.setTaskInFullImmersiveState(DEFAULT_DISPLAY, task.taskId, immersive = false) - - task.requestedVisibleTypes = WindowInsets.Type.statusBars() - controller.onTaskInfoChanged(task) - - verify(mMockDesktopImmersiveController, never()).moveTaskToNonImmersive(eq(task), any()) - } - - @Test - @EnableFlags(FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun onTaskInfoChanged_inImmersiveUnrequestsImmersive_inRecentsTransition_noExit() { - val task = setUpFreeformTask(DEFAULT_DISPLAY) - taskRepository.setTaskInFullImmersiveState(DEFAULT_DISPLAY, task.taskId, immersive = true) - recentsTransitionStateListener.onTransitionStateChanged(TRANSITION_STATE_REQUESTED) - - task.requestedVisibleTypes = WindowInsets.Type.statusBars() - controller.onTaskInfoChanged(task) - - verify(mMockDesktopImmersiveController, never()).moveTaskToNonImmersive(eq(task), any()) - } - - @Test - fun moveTaskToDesktop_background_attemptsImmersiveExit() = - testScope.runTest { - val task = setUpFreeformTask(background = true) - val wct = WindowContainerTransaction() - val runOnStartTransit = RunOnStartTransitionCallback() - val transition = Binder() - whenever( - mMockDesktopImmersiveController.exitImmersiveIfApplicable( - eq(wct), - eq(task.displayId), - eq(task.taskId), - any(), - ) - ) - .thenReturn( - ExitResult.Exit(exitingTask = 5, runOnTransitionStart = runOnStartTransit) - ) - whenever(enterDesktopTransitionHandler.moveToDesktop(wct, UNKNOWN)) - .thenReturn(transition) - - controller.moveTaskToDefaultDeskAndActivate( - taskId = task.taskId, - wct = wct, - transitionSource = UNKNOWN, - ) - runCurrent() - - verify(mMockDesktopImmersiveController) - .exitImmersiveIfApplicable(eq(wct), eq(task.displayId), eq(task.taskId), any()) - runOnStartTransit.assertOnlyInvocation(transition) - } - - @Test - fun moveTaskToDesktop_foreground_attemptsImmersiveExit() = - testScope.runTest { - val task = setUpFreeformTask(background = false) - val wct = WindowContainerTransaction() - val runOnStartTransit = RunOnStartTransitionCallback() - val transition = Binder() - whenever( - mMockDesktopImmersiveController.exitImmersiveIfApplicable( - eq(wct), - eq(task.displayId), - eq(task.taskId), - any(), - ) - ) - .thenReturn( - ExitResult.Exit(exitingTask = 5, runOnTransitionStart = runOnStartTransit) - ) - whenever(enterDesktopTransitionHandler.moveToDesktop(wct, UNKNOWN)) - .thenReturn(transition) - - controller.moveTaskToDefaultDeskAndActivate( - taskId = task.taskId, - wct = wct, - transitionSource = UNKNOWN, - ) - runCurrent() - - verify(mMockDesktopImmersiveController) - .exitImmersiveIfApplicable(eq(wct), eq(task.displayId), eq(task.taskId), any()) - runOnStartTransit.assertOnlyInvocation(transition) - } - - @Test - fun moveTaskToFront_background_attemptsImmersiveExit() = - testScope.runTest { - val task = setUpFreeformTask(background = true) - val runOnStartTransit = RunOnStartTransitionCallback() - val transition = Binder() - whenever( - mMockDesktopImmersiveController.exitImmersiveIfApplicable( - any(), - eq(task.displayId), - eq(task.taskId), - any(), - ) - ) - .thenReturn( - ExitResult.Exit(exitingTask = 5, runOnTransitionStart = runOnStartTransit) - ) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - any(), - any(), - anyInt(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - controller.moveTaskToFront(task.taskId, unminimizeReason = UnminimizeReason.UNKNOWN) - runCurrent() - - verify(mMockDesktopImmersiveController) - .exitImmersiveIfApplicable(any(), eq(task.displayId), eq(task.taskId), any()) - runOnStartTransit.assertOnlyInvocation(transition) - } - - @Test - fun moveTaskToFront_foreground_attemptsImmersiveExit() { - val task = setUpFreeformTask(background = false) - val runOnStartTransit = RunOnStartTransitionCallback() - val transition = Binder() - whenever( - mMockDesktopImmersiveController.exitImmersiveIfApplicable( - any(), - eq(task.displayId), - eq(task.taskId), - any(), - ) - ) - .thenReturn(ExitResult.Exit(exitingTask = 5, runOnTransitionStart = runOnStartTransit)) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - any(), - any(), - eq(task.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - controller.moveTaskToFront(task.taskId, unminimizeReason = UnminimizeReason.UNKNOWN) - - verify(mMockDesktopImmersiveController) - .exitImmersiveIfApplicable(any(), eq(task.displayId), eq(task.taskId), any()) - runOnStartTransit.assertOnlyInvocation(transition) - } - - @Test - fun handleRequest_freeformLaunchToDesktop_attemptsImmersiveExit() { - markTaskVisible(setUpFreeformTask()) - val task = setUpFreeformTask() - markTaskVisible(task) - val binder = Binder() - - controller.handleRequest(binder, createTransition(task)) - - verify(mMockDesktopImmersiveController) - .exitImmersiveIfApplicable(eq(binder), any(), eq(task.displayId), any()) - } - - @Test - fun handleRequest_fullscreenLaunchToDesktop_attemptsImmersiveExit() { - setUpFreeformTask() - val task = createFullscreenTask() - val binder = Binder() - - controller.handleRequest(binder, createTransition(task)) - - verify(mMockDesktopImmersiveController) - .exitImmersiveIfApplicable(eq(binder), any(), eq(task.displayId), any()) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_homeTask_notHandled() { - val home = createHomeTask(DEFAULT_DISPLAY) - - val transition = Binder() - val result = controller.handleRequest(transition, createTransition(home)) - - assertNull(result) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_homeTask_activeDesk_deactivates() { - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId = 0) - val home = createHomeTask(DEFAULT_DISPLAY, userId = taskRepository.userId) - - val transition = Binder() - val result = controller.handleRequest(transition, createTransition(home)) - - assertNotNull(result) - verify(desksOrganizer).deactivateDesk(result, deskId = 0) - verify(desksTransitionsObserver) - .addPendingTransition(DeskTransition.DeactivateDesk(token = transition, deskId = 0)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_homeTask_closing_notHandled() { - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId = 0) - val home = createHomeTask(DEFAULT_DISPLAY) - - val transition = Binder() - val result = controller.handleRequest(transition, createTransition(home, TRANSIT_CLOSE)) - - assertNull(result) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun handleRequest_homeTask_activeDesk_nonCurrentUser_deactivatesDeskOfCorrectUser() { - val currentUserDesk = 0 - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId = currentUserDesk) - val otherUser = 88 - val otherUserDesk = 1 - userRepositories.getProfile(otherUser).apply { - addDesk(DEFAULT_DISPLAY, deskId = otherUserDesk) - setActiveDesk(DEFAULT_DISPLAY, deskId = otherUserDesk) - } - val home = createHomeTask(DEFAULT_DISPLAY, userId = otherUser) - - val transition = Binder() - val result = controller.handleRequest(transition, createTransition(home)) - - assertNotNull(result) - verify(desksOrganizer).deactivateDesk(result, deskId = otherUserDesk) - verify(desksOrganizer, never()).deactivateDesk(result, deskId = currentUserDesk) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun shouldPlayDesktopAnimation_notShowingDesktop_doesNotPlay() { - taskRepository.setDeskInactive(deskId = 0) - val triggerTask = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - taskRepository.setTaskInFullImmersiveState( - displayId = triggerTask.displayId, - taskId = triggerTask.taskId, - immersive = true, - ) - - assertThat( - controller.shouldPlayDesktopAnimation( - TransitionRequestInfo(TRANSIT_OPEN, triggerTask, /* remoteTransition= */ null) - ) - ) - .isFalse() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun shouldPlayDesktopAnimation_notOpening_doesNotPlay() { - val triggerTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - taskRepository.setTaskInFullImmersiveState( - displayId = triggerTask.displayId, - taskId = triggerTask.taskId, - immersive = true, - ) - - assertThat( - controller.shouldPlayDesktopAnimation( - TransitionRequestInfo(TRANSIT_CHANGE, triggerTask, /* remoteTransition= */ null) - ) - ) - .isFalse() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun shouldPlayDesktopAnimation_notImmersive_doesNotPlay() { - val triggerTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - taskRepository.setTaskInFullImmersiveState( - displayId = triggerTask.displayId, - taskId = triggerTask.taskId, - immersive = false, - ) - - assertThat( - controller.shouldPlayDesktopAnimation( - TransitionRequestInfo(TRANSIT_OPEN, triggerTask, /* remoteTransition= */ null) - ) - ) - .isFalse() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun shouldPlayDesktopAnimation_fullscreenEntersDesktop_plays() { - // At least one freeform task to be in a desktop. - val existingTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val triggerTask = createFullscreenTask(displayId = DEFAULT_DISPLAY) - assertThat(controller.isAnyDeskActive(triggerTask.displayId)).isTrue() - taskRepository.setTaskInFullImmersiveState( - displayId = existingTask.displayId, - taskId = existingTask.taskId, - immersive = true, - ) - - assertThat( - controller.shouldPlayDesktopAnimation( - TransitionRequestInfo(TRANSIT_OPEN, triggerTask, /* remoteTransition= */ null) - ) - ) - .isTrue() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun shouldPlayDesktopAnimation_fullscreenStaysFullscreen_doesNotPlay() { - val triggerTask = setUpFullscreenTask(displayId = DEFAULT_DISPLAY) - taskRepository.setDeskInactive(deskId = 0) - assertThat(controller.isAnyDeskActive(triggerTask.displayId)).isFalse() - - assertThat( - controller.shouldPlayDesktopAnimation( - TransitionRequestInfo(TRANSIT_OPEN, triggerTask, /* remoteTransition= */ null) - ) - ) - .isFalse() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun shouldPlayDesktopAnimation_freeformStaysInDesktop_plays() { - // At least one freeform task to be in a desktop. - val existingTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val triggerTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY, active = false) - assertThat(controller.isAnyDeskActive(triggerTask.displayId)).isTrue() - taskRepository.setTaskInFullImmersiveState( - displayId = existingTask.displayId, - taskId = existingTask.taskId, - immersive = true, - ) - - assertThat( - controller.shouldPlayDesktopAnimation( - TransitionRequestInfo(TRANSIT_OPEN, triggerTask, /* remoteTransition= */ null) - ) - ) - .isTrue() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun shouldPlayDesktopAnimation_freeformExitsDesktop_doesNotPlay() { - val triggerTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY, active = false) - taskRepository.setDeskInactive(deskId = 0) - assertThat(controller.isAnyDeskActive(triggerTask.displayId)).isFalse() - - assertThat( - controller.shouldPlayDesktopAnimation( - TransitionRequestInfo(TRANSIT_OPEN, triggerTask, /* remoteTransition= */ null) - ) - ) - .isFalse() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun testCreateDesk() { - desktopState.overrideDesktopModeSupportPerDisplay[DEFAULT_DISPLAY] = true - val currentDeskCount = taskRepository.getNumberOfDesks(DEFAULT_DISPLAY) - whenever(desksOrganizer.createDesk(eq(DEFAULT_DISPLAY), any(), any())).thenAnswer { - invocation -> - (invocation.arguments[2] as DesksOrganizer.OnCreateCallback).onCreated(deskId = 5) - } - - controller.createDesk(DEFAULT_DISPLAY, taskRepository.userId) - - assertThat(taskRepository.getNumberOfDesks(DEFAULT_DISPLAY)).isEqualTo(currentDeskCount + 1) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun testCreateDesk_invalidDisplay_dropsRequest() { - desktopState.overrideDesktopModeSupportPerDisplay[DEFAULT_DISPLAY] = true - controller.createDesk(INVALID_DISPLAY) - - verify(desksOrganizer, never()).createDesk(any(), any(), any()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun testCreateDesk_systemUser_dropsRequest() { - desktopState.overrideDesktopModeSupportPerDisplay[DEFAULT_DISPLAY] = true - assumeTrue(UserManager.isHeadlessSystemUserMode()) - - controller.createDesk(DEFAULT_DISPLAY, UserHandle.USER_SYSTEM) - - verify(desksOrganizer, never()).createDesk(any(), any(), any()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun testCreateDesk_enforceLimitAndOverLimit_dropsRequest() { - desktopState.overrideDesktopModeSupportPerDisplay[DEFAULT_DISPLAY] = true - desktopConfig.maxDeskLimit = 2 - // Add a second desk to bring the number up to the limit. - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = 2) - - controller.createDesk(DEFAULT_DISPLAY) - - verify(desksOrganizer, never()).createDesk(any(), any(), any()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun testCreateDesk_displayDoesNotSupportDesks_dropsRequest() { - desktopState.overrideDesktopModeSupportPerDisplay[DEFAULT_DISPLAY] = false - - controller.createDesk(DEFAULT_DISPLAY) - - verify(desksOrganizer, never()).createDesk(any(), any(), any()) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DISPLAY_DISCONNECT_INTERACTION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun onDisplayDisconnect_desktopModeNotSupported_reparentsDeskTasks_focusedTaskToTop() { - val defaultDisplayTask = setUpFullscreenTask() - val transition = Binder() - taskRepository.addDesk(SECOND_DISPLAY, DISCONNECTED_DESK_ID) - val secondDisplayTask = setUpFreeformTask(SECOND_DISPLAY) - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - - val wct = - performDisplayDisconnectTransition( - transition = transition, - desktopSupportedOnDefaultDisplay = false, - taskOnSecondDisplayHasFocus = true, - defaultDisplayTask = defaultDisplayTask, - secondDisplayTask = secondDisplayTask, - ) - - assertThat(wct).isNotNull() - wct.assertHop( - ReparentPredicate( - token = secondDisplayTask.token, - parentToken = tda.token, - toTop = true, - ) - ) - verify(desksOrganizer).removeDesk(any(), eq(DISCONNECTED_DESK_ID), any()) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.RemoveDesk && - this.token == transition && - this.displayId == SECOND_DISPLAY && - this.deskId == DISCONNECTED_DESK_ID - } - ) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.RemoveDisplay && - this.token == transition && - this.displayId == SECOND_DISPLAY - } - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DISPLAY_DISCONNECT_INTERACTION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun onDisplayDisconnect_desktopModeNotSupported_reparentsDeskTasks_nonFocusedTaskToBottom() { - val defaultDisplayTask = setUpFullscreenTask() - val transition = Binder() - taskRepository.addDesk(SECOND_DISPLAY, DISCONNECTED_DESK_ID) - val secondDisplayTask = setUpFreeformTask(SECOND_DISPLAY) - val tda = rootTaskDisplayAreaOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)!! - val wct = - performDisplayDisconnectTransition( - transition = transition, - desktopSupportedOnDefaultDisplay = false, - taskOnSecondDisplayHasFocus = false, - defaultDisplayTask = defaultDisplayTask, - secondDisplayTask = secondDisplayTask, - ) - wct.assertHop( - ReparentPredicate( - token = secondDisplayTask.token, - parentToken = tda.token, - toTop = false, - ) - ) - verify(desksOrganizer).removeDesk(any(), eq(DISCONNECTED_DESK_ID), any()) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.RemoveDesk && - this.token == transition && - this.displayId == SECOND_DISPLAY && - this.deskId == DISCONNECTED_DESK_ID - } - ) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.RemoveDisplay && - this.token == transition && - this.displayId == SECOND_DISPLAY - } - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DISPLAY_DISCONNECT_INTERACTION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun onDisplayDisconnect_desktopModeSupported_reparentsDesks_nonFocusedDeskDeactivated() { - val defaultDisplayTask = setUpFreeformTask() - val transition = Binder() - taskRepository.addDesk(SECOND_DISPLAY, DISCONNECTED_DESK_ID) - taskRepository.setActiveDesk(displayId = SECOND_DISPLAY, deskId = DISCONNECTED_DESK_ID) - val secondDisplayTask = setUpFreeformTask(SECOND_DISPLAY, deskId = DISCONNECTED_DESK_ID) - - performDisplayDisconnectTransition( - transition = transition, - desktopSupportedOnDefaultDisplay = true, - taskOnSecondDisplayHasFocus = false, - defaultDisplayTask = defaultDisplayTask, - secondDisplayTask = secondDisplayTask, - ) - - verify(desksOrganizer) - .moveDeskToDisplay(any(), eq(DISCONNECTED_DESK_ID), eq(DEFAULT_DISPLAY), eq(false)) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.ChangeDeskDisplay && - this.token == transition && - this.displayId == DEFAULT_DISPLAY && - this.deskId == DISCONNECTED_DESK_ID - } - ) - verify(desksOrganizer) - .deactivateDesk(any(), eq(DISCONNECTED_DESK_ID), skipReorder = eq(false)) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.DeactivateDesk && - this.token == transition && - this.deskId == DISCONNECTED_DESK_ID - } - ) - } - - @Test - @EnableFlags(FLAG_ENABLE_DISPLAY_DISCONNECT_INTERACTION, FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onDisplayDisconnect_desktopModeSupported_reparentsDesks_focusedDeskActivated() { - val defaultDisplayTask = setUpFreeformTask() - val transition = Binder() - taskRepository.addDesk(SECOND_DISPLAY, DISCONNECTED_DESK_ID) - taskRepository.setActiveDesk(displayId = SECOND_DISPLAY, deskId = DISCONNECTED_DESK_ID) - val secondDisplayTask = setUpFreeformTask(SECOND_DISPLAY, deskId = DISCONNECTED_DESK_ID) - - performDisplayDisconnectTransition( - transition = transition, - desktopSupportedOnDefaultDisplay = true, - taskOnSecondDisplayHasFocus = true, - defaultDisplayTask = defaultDisplayTask, - secondDisplayTask = secondDisplayTask, - ) - - verify(desksOrganizer) - .moveDeskToDisplay(any(), eq(DISCONNECTED_DESK_ID), eq(DEFAULT_DISPLAY), eq(true)) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.ChangeDeskDisplay && - this.token == transition && - this.displayId == DEFAULT_DISPLAY && - this.deskId == DISCONNECTED_DESK_ID - } - ) - verify(desksOrganizer) - .activateDesk(any(), eq(DISCONNECTED_DESK_ID), skipReorder = eq(false)) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.ActivateDesk && - this.token == transition && - this.displayId == DEFAULT_DISPLAY && - this.deskId == DISCONNECTED_DESK_ID - } - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DISPLAY_DISCONNECT_INTERACTION, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun onDisplayDisconnect_desktopModeSupported_emptyDeskRemoved() { - val defaultDisplayTask = setUpFreeformTask() - val transition = Binder() - taskRepository.addDesk(SECOND_DISPLAY, DISCONNECTED_DESK_ID) - taskRepository.setActiveDesk(SECOND_DISPLAY, DISCONNECTED_DESK_ID) - - performDisplayDisconnectTransition( - transition = transition, - desktopSupportedOnDefaultDisplay = true, - taskOnSecondDisplayHasFocus = false, - defaultDisplayTask = defaultDisplayTask, - secondDisplayTask = null, - ) - - verify(desksOrganizer).removeDesk(any(), eq(DISCONNECTED_DESK_ID), anyInt()) - verify(desksTransitionsObserver) - .addPendingTransition( - argThat { - this is DeskTransition.RemoveDesk && - this.token == transition && - this.displayId == SECOND_DISPLAY && - this.deskId == DISCONNECTED_DESK_ID - } - ) - } - - private fun performDisplayDisconnectTransition( - transition: IBinder, - desktopSupportedOnDefaultDisplay: Boolean, - taskOnSecondDisplayHasFocus: Boolean, - defaultDisplayTask: RunningTaskInfo, - secondDisplayTask: RunningTaskInfo?, - ): WindowContainerTransaction { - desktopState.overrideDesktopModeSupportPerDisplay[DEFAULT_DISPLAY] = - desktopSupportedOnDefaultDisplay - val displayChange = TransitionRequestInfo.DisplayChange(SECOND_DISPLAY) - displayChange.disconnectReparentDisplay = DEFAULT_DISPLAY - val transitionRequestInfo = - TransitionRequestInfo( - TRANSIT_CLOSE, - /* triggerTask = */ null, - /* remoteTransition= */ null, - ) - .apply { setDisplayChange(displayChange) } - val focusedTaskId = - if (taskOnSecondDisplayHasFocus) { - secondDisplayTask?.taskId ?: error("Cannot have a focused null task") - } else { - defaultDisplayTask.taskId - } - whenever(focusTransitionObserver.globallyFocusedTaskId).thenReturn(focusedTaskId) - var preserveRequested = false - controller.preserveDisplayRequestHandler = PreserveDisplayRequestHandler { - preserveRequested = true - } - - val wct = assertNotNull(controller.handleRequest(transition, transitionRequestInfo)) - assertThat(preserveRequested).isTrue() - - return wct - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_DISPLAY_WINDOWING_MODE_SWITCHING, - ) - fun startLaunchTransition_desktopNotShowing_movesWallpaperToFront() { - taskRepository.setDeskInactive(deskId = 0) - val launchingTask = createFreeformTask(displayId = DEFAULT_DISPLAY) - val wct = WindowContainerTransaction() - wct.reorder(launchingTask.token, /* onTop= */ true) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - controller.startLaunchTransition( - transitionType = TRANSIT_OPEN, - wct = wct, - launchingTaskId = null, - deskId = 0, - displayId = DEFAULT_DISPLAY, - ) - - val latestWct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - val launchingTaskReorderIndex = latestWct.indexOfReorder(launchingTask, toTop = true) - val wallpaperReorderIndex = latestWct.indexOfReorder(wallpaperToken, toTop = true) - assertThat(launchingTaskReorderIndex).isNotEqualTo(-1) - assertThat(wallpaperReorderIndex).isNotEqualTo(-1) - assertThat(launchingTaskReorderIndex).isGreaterThan(wallpaperReorderIndex) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun startLaunchTransition_desktopNotShowing_updatesDesktopEnterExitListener() { - setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = 0) - taskRepository.setDeskInactive(deskId = 0) - - controller.startLaunchTransition( - transitionType = TRANSIT_OPEN, - wct = WindowContainerTransaction(), - launchingTaskId = null, - deskId = 0, - displayId = DEFAULT_DISPLAY, - ) - - verify(desktopModeEnterExitTransitionListener).onEnterDesktopModeTransitionStarted(any()) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - ) - fun startLaunchTransition_launchingTaskFromInactiveDesk_otherDeskActive_activatesDesk() { - val activeDeskId = 4 - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = activeDeskId) - taskRepository.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = activeDeskId) - val inactiveDesk = 5 - taskRepository.addDesk(displayId = DEFAULT_DISPLAY, deskId = inactiveDesk) - val launchingTask = setUpFreeformTask(displayId = DEFAULT_DISPLAY, deskId = inactiveDesk) - val transition = Binder() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - eq(launchingTask.taskId), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(transition) - - val wct = WindowContainerTransaction() - controller.startLaunchTransition( - transitionType = TRANSIT_OPEN, - wct = wct, - launchingTaskId = launchingTask.taskId, - deskId = inactiveDesk, - displayId = DEFAULT_DISPLAY, - ) - - verify(desksOrganizer).activateDesk(any(), eq(inactiveDesk), skipReorder = eq(false)) - verify(desksTransitionsObserver) - .addPendingTransition( - DeskTransition.ActivateDesk( - token = transition, - displayId = DEFAULT_DISPLAY, - deskId = inactiveDesk, - ) - ) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_WALLPAPER_ACTIVITY, - Flags.FLAG_ENABLE_DESKTOP_WALLPAPER_ACTIVITY_FOR_SYSTEM_USER, - ) - fun startLaunchTransition_desktopShowing_doesNotReorderWallpaper() { - val wct = WindowContainerTransaction() - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - ) - .thenReturn(Binder()) - - setUpFreeformTask(deskId = 0, displayId = DEFAULT_DISPLAY) - controller.startLaunchTransition( - transitionType = TRANSIT_OPEN, - wct = wct, - launchingTaskId = null, - deskId = 0, - displayId = DEFAULT_DISPLAY, - ) - - val latestWct = getLatestDesktopMixedTaskWct(type = TRANSIT_OPEN) - assertNull(latestWct.hierarchyOps.find { op -> op.container == wallpaperToken.asBinder() }) - } - - @Test - @EnableFlags(Flags.FLAG_SHOW_HOME_BEHIND_DESKTOP) - fun showHomeBehindDesktop_wallpaperNotPresent() { - desktopState.shouldShowHomeBehindDesktop = true - val homeTask = setUpHomeTask() - val task1 = setUpFreeformTask() - - controller.activateDesk(DEFAULT_DISPLAY, RemoteTransition(TestRemoteTransition())) - - val wct = - getLatestWct(type = TRANSIT_TO_FRONT, handlerClass = OneShotRemoteHandler::class.java) - val wallpaperReorderIndex = wct.indexOfReorder(wallpaperToken, toTop = true) - - // There should be no wallpaper present to reorder. - assertThat(wallpaperReorderIndex).isEqualTo(-1) - } - - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onRecentsInDesktopAnimationFinishing_returningToApp_noDeskDeactivation() { - val deskId = 0 - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId) - - val transition = Binder() - val finishWct = WindowContainerTransaction() - controller.onRecentsInDesktopAnimationFinishing( - transition = transition, - finishWct = finishWct, - returnToApp = true, - activeDeskIdOnRecentsStart = deskId, - ) - - verify(desksOrganizer, never()).deactivateDesk(finishWct, deskId) - verify(desksTransitionsObserver, never()) - .addPendingTransition( - argThat { t -> t.token == transition && t is DeskTransition.DeactivateDesk } - ) - } - - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onRecentsInDesktopAnimationFinishing_returningToApp_snapEventHandlerNotified() { - val deskId = 0 - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId) - - val transition = Binder() - val finishWct = WindowContainerTransaction() - controller.onRecentsInDesktopAnimationFinishing( - transition = transition, - finishWct = finishWct, - returnToApp = true, - activeDeskIdOnRecentsStart = deskId, - ) - - verify(snapEventHandler, times(1)).onRecentsAnimationEndedToSameDesk() - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onRecentsInDesktopAnimationFinishing_deskNoLongerActive_noDeskDeactivation() { - val deskId = 0 - taskRepository.setDeskInactive(deskId) - - val transition = Binder() - val finishWct = WindowContainerTransaction() - controller.onRecentsInDesktopAnimationFinishing( - transition = transition, - finishWct = finishWct, - returnToApp = false, - activeDeskIdOnRecentsStart = deskId, - ) - - verify(desksOrganizer, never()).deactivateDesk(finishWct, deskId) - verify(desksTransitionsObserver, never()) - .addPendingTransition( - argThat { t -> t.token == transition && t is DeskTransition.DeactivateDesk } - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onRecentsInDesktopAnimationFinishing_deskStillActive_notReturningToDesk_deactivatesDesk() { - val deskId = 0 - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId) - - val transition = Binder() - val finishWct = WindowContainerTransaction() - controller.onRecentsInDesktopAnimationFinishing( - transition = transition, - finishWct = finishWct, - returnToApp = false, - activeDeskIdOnRecentsStart = deskId, - ) - - verify(desksOrganizer).deactivateDesk(finishWct, deskId) - verify(desksTransitionsObserver) - .addPendingTransition(DeskTransition.DeactivateDesk(transition, deskId)) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun onRecentsInDesktopAnimationFinishing_deskStillActive_notReturningToDesk_doesNotBringUpWallpaperOrHome() { - val deskId = 0 - taskRepository.setActiveDesk(DEFAULT_DISPLAY, deskId) - - val transition = Binder() - val finishWct = WindowContainerTransaction() - controller.onRecentsInDesktopAnimationFinishing( - transition = transition, - finishWct = finishWct, - returnToApp = false, - activeDeskIdOnRecentsStart = deskId, - ) - - finishWct.assertWithoutHop { hop -> - hop.type == HIERARCHY_OP_TYPE_REORDER && - hop.container == wallpaperToken.asBinder() && - !hop.toTop - } - finishWct.assertWithoutHop { hop -> hop.type == HIERARCHY_OP_TYPE_PENDING_INTENT } - } - - private class RunOnStartTransitionCallback : ((IBinder) -> Unit) { - var invocations = 0 - private set - - var lastInvoked: IBinder? = null - private set - - override fun invoke(transition: IBinder) { - invocations++ - lastInvoked = transition - } - } - - private fun RunOnStartTransitionCallback.assertOnlyInvocation(transition: IBinder) { - assertThat(invocations).isEqualTo(1) - assertThat(lastInvoked).isEqualTo(transition) - } - - /** - * Assert that an unhandled drag event launches a PendingIntent with the windowing mode and - * bounds we are expecting. - */ - private fun testOnUnhandledDrag( - indicatorType: DesktopModeVisualIndicator.IndicatorType, - inputCoordinate: PointF, - expectedBounds: Rect, - tabTearingMinimizeAnimationFlagEnabled: Boolean, - tabTearingLaunchAnimationFlagEnabled: Boolean, - destinationDisplayId: Int = DEFAULT_DISPLAY, - ) { - desktopState.overrideDesktopModeSupportPerDisplay[DEFAULT_DISPLAY] = true - desktopState.overrideDesktopModeSupportPerDisplay[destinationDisplayId] = true - setUpLandscapeDisplay() - val task = setUpFreeformTask() - markTaskVisible(task) - task.isFocused = true - val runningTasks = ArrayList<RunningTaskInfo>() - runningTasks.add(task) - val spyController = spy(controller) - val mockPendingIntent = mock(PendingIntent::class.java) - val mockDragEvent = mock(DragEvent::class.java) - val mockCallback = mock(Consumer::class.java) - val b = SurfaceControl.Builder() - b.setName("test surface") - val dragSurface = b.build() - whenever(focusTransitionObserver.globallyFocusedTaskId).thenReturn(task.taskId) - whenever(mockDragEvent.dragSurface).thenReturn(dragSurface) - whenever(mockDragEvent.x).thenReturn(inputCoordinate.x) - whenever(mockDragEvent.y).thenReturn(inputCoordinate.y) - whenever(mockDragEvent.displayId).thenReturn(destinationDisplayId) - whenever(multiInstanceHelper.supportsMultiInstanceSplit(anyOrNull(), anyInt())) - .thenReturn(true) - whenever(spyController.getVisualIndicator()).thenReturn(desktopModeVisualIndicator) - doReturn(indicatorType) - .whenever(spyController) - .updateVisualIndicator( - eq(task), - anyOrNull(), - any(), - anyOrNull(), - anyOrNull(), - eq(DesktopModeVisualIndicator.DragStartState.DRAGGED_INTENT), - ) - whenever( - desktopMixedTransitionHandler.startLaunchTransition( - eq(TRANSIT_OPEN), - any(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - eq(mockDragEvent), - ) - ) - .thenReturn(Binder()) - - spyController.onUnhandledDrag( - mockPendingIntent, - context.userId, - mockDragEvent, - mockCallback as Consumer<Boolean>, - ) - val arg = argumentCaptor<WindowContainerTransaction>() - var expectedWindowingMode: Int - if (indicatorType == DesktopModeVisualIndicator.IndicatorType.TO_FULLSCREEN_INDICATOR) { - expectedWindowingMode = WINDOWING_MODE_FULLSCREEN - // Fullscreen launches currently use default transitions - verify(transitions).startTransition(any(), arg.capture(), anyOrNull()) - } else { - expectedWindowingMode = WINDOWING_MODE_FREEFORM - if (tabTearingMinimizeAnimationFlagEnabled || tabTearingLaunchAnimationFlagEnabled) { - verify(desktopMixedTransitionHandler) - .startLaunchTransition( - eq(TRANSIT_OPEN), - arg.capture(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - eq(mockDragEvent), - ) - } else { - // All other launches use a special handler. - verify(dragAndDropTransitionHandler) - .handleDropEvent(arg.capture(), eq(mockDragEvent)) - } - } - assertThat( - ActivityOptions.fromBundle(arg.firstValue.hierarchyOps[0].launchOptions) - .launchWindowingMode - ) - .isEqualTo(expectedWindowingMode) - assertThat( - ActivityOptions.fromBundle(arg.firstValue.hierarchyOps[0].launchOptions) - .launchBounds - ) - .isEqualTo(expectedBounds) - } - - private val desktopWallpaperIntent: Intent - get() = Intent(context, DesktopWallpaperActivity::class.java) - - private fun launchHomeIntent(displayId: Int): Intent { - return Intent(Intent.ACTION_MAIN).apply { - if (displayId != DEFAULT_DISPLAY) { - addCategory(Intent.CATEGORY_SECONDARY_HOME) - } else { - addCategory(Intent.CATEGORY_HOME) - } - } - } - - private fun addFreeformTaskAtPosition( - pos: DesktopTaskPosition, - stableBounds: Rect, - bounds: Rect = DEFAULT_LANDSCAPE_BOUNDS, - offsetPos: Point = Point(0, 0), - ): RunningTaskInfo { - val offset = pos.getTopLeftCoordinates(stableBounds, bounds) - val prevTaskBounds = Rect(bounds) - prevTaskBounds.offsetTo(offset.x + offsetPos.x, offset.y + offsetPos.y) - return setUpFreeformTask(bounds = prevTaskBounds) - } - - private fun setUpFreeformTask( - displayId: Int = DEFAULT_DISPLAY, - bounds: Rect? = null, - active: Boolean = true, - background: Boolean = false, - deskId: Int? = null, - ): RunningTaskInfo { - val task = createFreeformTask(displayId, bounds) - val activityInfo = ActivityInfo() - activityInfo.applicationInfo = ApplicationInfo() - task.topActivityInfo = activityInfo - if (background) { - whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(null) - whenever(recentTasksController.findTaskInBackground(task.taskId)) - .thenReturn(createRecentTaskInfo(taskId = task.taskId, displayId = displayId)) - } else { - whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(task) - } - if (deskId != null) { - taskRepository.addTaskToDesk( - displayId, - deskId, - task.taskId, - isVisible = active, - TASK_BOUNDS, - ) - } else { - taskRepository.addTask(displayId, task.taskId, isVisible = active, TASK_BOUNDS) - } - if (!background) { - runningTasks.add(task) - } - return task - } - - private fun setUpPipTask( - autoEnterEnabled: Boolean, - displayId: Int = DEFAULT_DISPLAY, - deskId: Int = DEFAULT_DISPLAY, - ): RunningTaskInfo { - val task = - setUpFreeformTask(displayId = displayId, deskId = deskId).apply { - pictureInPictureParams = - PictureInPictureParams.Builder().setAutoEnterEnabled(autoEnterEnabled).build() - baseActivity = ComponentName("com.test.dummypackage", "TestClass") - } - whenever(packageManager.getApplicationInfoAsUser(any(), anyInt(), anyInt())) - .thenReturn(task.topActivityInfo?.applicationInfo) - return task - } - - private fun setUpHomeTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo { - val task = createHomeTask(displayId) - whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(task) - runningTasks.add(task) - return task - } - - private fun setUpFullscreenTask( - displayId: Int = DEFAULT_DISPLAY, - isResizable: Boolean = true, - windowingMode: Int = WINDOWING_MODE_FULLSCREEN, - deviceOrientation: Int = ORIENTATION_LANDSCAPE, - screenOrientation: Int = SCREEN_ORIENTATION_UNSPECIFIED, - shouldLetterbox: Boolean = false, - gravity: Int = Gravity.NO_GRAVITY, - enableUserFullscreenOverride: Boolean = false, - enableSystemFullscreenOverride: Boolean = false, - aspectRatioOverrideApplied: Boolean = false, - visible: Boolean = true, - ): RunningTaskInfo { - val task = createFullscreenTask(displayId) - val activityInfo = ActivityInfo() - activityInfo.screenOrientation = screenOrientation - activityInfo.windowLayout = ActivityInfo.WindowLayout(0, 0F, 0, 0F, gravity, 0, 0) - activityInfo.applicationInfo = ApplicationInfo() - with(task) { - topActivityInfo = activityInfo - isResizeable = isResizable - configuration.orientation = deviceOrientation - configuration.windowConfiguration.windowingMode = windowingMode - appCompatTaskInfo.isUserFullscreenOverrideEnabled = enableUserFullscreenOverride - appCompatTaskInfo.isSystemFullscreenOverrideEnabled = enableSystemFullscreenOverride - - if (deviceOrientation == ORIENTATION_LANDSCAPE) { - appCompatTaskInfo.topActivityAppBounds.set( - 0, - 0, - DISPLAY_DIMENSION_LONG, - DISPLAY_DIMENSION_SHORT, - ) - } else { - appCompatTaskInfo.topActivityAppBounds.set( - 0, - 0, - DISPLAY_DIMENSION_SHORT, - DISPLAY_DIMENSION_LONG, - ) - } - - if (shouldLetterbox) { - appCompatTaskInfo.setHasMinAspectRatioOverride(aspectRatioOverrideApplied) - if ( - deviceOrientation == ORIENTATION_LANDSCAPE && - screenOrientation == SCREEN_ORIENTATION_PORTRAIT - ) { - // Letterbox to portrait size - appCompatTaskInfo.isTopActivityLetterboxed = true - appCompatTaskInfo.topActivityAppBounds.set(0, 0, 1200, 1600) - } else if ( - deviceOrientation == ORIENTATION_PORTRAIT && - screenOrientation == SCREEN_ORIENTATION_LANDSCAPE - ) { - // Letterbox to landscape size - appCompatTaskInfo.isTopActivityLetterboxed = true - appCompatTaskInfo.topActivityAppBounds.set(0, 0, 1600, 1200) - } - } - isVisible = visible - } - whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(task) - runningTasks.add(task) - return task - } - - private fun setUpLandscapeDisplay() { - whenever(displayLayout.width()).thenReturn(DISPLAY_DIMENSION_LONG) - whenever(displayLayout.height()).thenReturn(DISPLAY_DIMENSION_SHORT) - val stableBounds = - Rect(0, 0, DISPLAY_DIMENSION_LONG, DISPLAY_DIMENSION_SHORT - TASKBAR_FRAME_HEIGHT) - whenever(displayLayout.getStableBoundsForDesktopMode(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(stableBounds) - } - } - - private fun setUpPortraitDisplay() { - whenever(displayLayout.width()).thenReturn(DISPLAY_DIMENSION_SHORT) - whenever(displayLayout.height()).thenReturn(DISPLAY_DIMENSION_LONG) - val stableBounds = - Rect(0, 0, DISPLAY_DIMENSION_SHORT, DISPLAY_DIMENSION_LONG - TASKBAR_FRAME_HEIGHT) - whenever(displayLayout.getStableBoundsForDesktopMode(any())).thenAnswer { i -> - (i.arguments.first() as Rect).set(stableBounds) - } - } - - private fun setUpSplitScreenTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo { - val task = createSplitScreenTask(displayId) - whenever(splitScreenController.isTaskInSplitScreen(task.taskId)).thenReturn(true) - whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(task) - runningTasks.add(task) - return task - } - - private fun markTaskVisible(task: RunningTaskInfo) { - taskRepository.updateTask(task.displayId, task.taskId, isVisible = true, TASK_BOUNDS) - } - - private fun markTaskHidden(task: RunningTaskInfo) { - taskRepository.updateTask(task.displayId, task.taskId, isVisible = false, TASK_BOUNDS) - } - - private fun getLatestWct( - @WindowManager.TransitionType type: Int = TRANSIT_OPEN, - handlerClass: Class<out TransitionHandler>? = null, - ): WindowContainerTransaction { - val arg = argumentCaptor<WindowContainerTransaction>() - if (handlerClass == null) { - verify(transitions).startTransition(eq(type), arg.capture(), isNull()) - } else { - verify(transitions).startTransition(eq(type), arg.capture(), isA(handlerClass)) - } - return arg.lastValue - } - - private fun getLatestToggleResizeDesktopTaskWct( - currentBounds: Rect? = null - ): WindowContainerTransaction { - val arg = argumentCaptor<WindowContainerTransaction>() - verify(toggleResizeDesktopTaskTransitionHandler, atLeastOnce()) - .startTransition(arg.capture(), eq(currentBounds), isNull()) - return arg.lastValue - } - - private fun getLatestDesktopMixedTaskWct( - @WindowManager.TransitionType type: Int = TRANSIT_OPEN - ): WindowContainerTransaction { - val arg = argumentCaptor<WindowContainerTransaction>() - verify(desktopMixedTransitionHandler) - .startLaunchTransition( - eq(type), - arg.capture(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - anyOrNull(), - ) - return arg.lastValue - } - - private fun getLatestTransition(): WindowContainerTransaction { - val arg = argumentCaptor<WindowContainerTransaction>() - verify(transitions).startTransition(any(), arg.capture(), anyOrNull()) - return arg.lastValue - } - - private fun getLatestEnterDesktopWct(): WindowContainerTransaction { - val arg = argumentCaptor<WindowContainerTransaction>() - verify(enterDesktopTransitionHandler).moveToDesktop(arg.capture(), any()) - return arg.lastValue - } - - private fun getLatestDragToDesktopWct(): WindowContainerTransaction { - val arg = argumentCaptor<WindowContainerTransaction>() - verify(dragToDesktopTransitionHandler).finishDragToDesktopTransition(arg.capture()) - return arg.lastValue - } - - private fun getLatestExitDesktopWct(): WindowContainerTransaction { - val arg = argumentCaptor<WindowContainerTransaction>() - verify(exitDesktopTransitionHandler).startTransition(any(), arg.capture(), any(), any()) - return arg.lastValue - } - - private fun findBoundsChange(wct: WindowContainerTransaction, task: RunningTaskInfo): Rect? = - wct.changes.entries - .find { (token, change) -> - token == task.token.asBinder() && - (change.windowSetMask and WindowConfiguration.WINDOW_CONFIG_BOUNDS) != 0 - } - ?.value - ?.configuration - ?.windowConfiguration - ?.bounds - - private fun verifyWCTNotExecuted() { - verify(transitions, never()).startTransition(anyInt(), any(), isNull()) - } - - private fun verifyExitDesktopWCTNotExecuted() { - verify(exitDesktopTransitionHandler, never()).startTransition(any(), any(), any(), any()) - } - - private fun verifyEnterDesktopWCTNotExecuted() { - verify(enterDesktopTransitionHandler, never()).moveToDesktop(any(), any()) - } - - private fun createTransition( - task: RunningTaskInfo?, - @WindowManager.TransitionType type: Int = TRANSIT_OPEN, - ): TransitionRequestInfo { - return TransitionRequestInfo(type, task, /* remoteTransition= */ null) - } - - private companion object { - const val SECOND_DISPLAY = 2 - val STABLE_BOUNDS = Rect(0, 0, 1000, 1000) - const val MAX_TASK_LIMIT = 6 - private const val TASKBAR_FRAME_HEIGHT = 200 - private const val FLOAT_TOLERANCE = 0.005f - private const val DEFAULT_DESK_ID = 100 - // For testing disconnecting a display containing a desk. - private const val DISCONNECTED_DESK_ID = 200 - private val TASK_BOUNDS = Rect(100, 100, 300, 300) - - private const val TO_DESKTOP_ANIM_DURATION = 336 - - @JvmStatic - @Parameters(name = "{0}") - fun getParams(): List<FlagsParameterization> = - FlagsParameterization.allCombinationsOf( - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND, - Flags.FLAG_ENABLE_DESKTOP_FIRST_BASED_DEFAULT_TO_DESKTOP_BUGFIX, - Flags.FLAG_ENABLE_DESKTOP_FIRST_FULLSCREEN_REFOCUS_BUGFIX, - ) - } + } else { + appCompatTaskInfo.topActivityBoundsLetterboxed = false + } + + if (deviceOrientation == ORIENTATION_LANDSCAPE) { + configuration.windowConfiguration.appBounds = + Rect(0, 0, DISPLAY_DIMENSION_LONG, DISPLAY_DIMENSION_SHORT) + } else { + configuration.windowConfiguration.appBounds = + Rect(0, 0, DISPLAY_DIMENSION_SHORT, DISPLAY_DIMENSION_LONG) + } + } + whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(task) + runningTasks.add(task) + return task + } + + private fun setUpLandscapeDisplay() { + whenever(displayLayout.width()).thenReturn(DISPLAY_DIMENSION_LONG) + whenever(displayLayout.height()).thenReturn(DISPLAY_DIMENSION_SHORT) + } + + private fun setUpPortraitDisplay() { + whenever(displayLayout.width()).thenReturn(DISPLAY_DIMENSION_SHORT) + whenever(displayLayout.height()).thenReturn(DISPLAY_DIMENSION_LONG) + } + + private fun setUpSplitScreenTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo { + val task = createSplitScreenTask(displayId) + whenever(splitScreenController.isTaskInSplitScreen(task.taskId)).thenReturn(true) + whenever(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(task) + runningTasks.add(task) + return task + } + + private fun markTaskVisible(task: RunningTaskInfo) { + desktopModeTaskRepository.updateVisibleFreeformTasks( + task.displayId, task.taskId, visible = true) + } + + private fun markTaskHidden(task: RunningTaskInfo) { + desktopModeTaskRepository.updateVisibleFreeformTasks( + task.displayId, task.taskId, visible = false) + } + + private fun getLatestWct( + @WindowManager.TransitionType type: Int = TRANSIT_OPEN, + handlerClass: Class<out TransitionHandler>? = null + ): WindowContainerTransaction { + val arg = ArgumentCaptor.forClass(WindowContainerTransaction::class.java) + if (ENABLE_SHELL_TRANSITIONS) { + if (handlerClass == null) { + verify(transitions).startTransition(eq(type), arg.capture(), isNull()) + } else { + verify(transitions).startTransition(eq(type), arg.capture(), isA(handlerClass)) + } + } else { + verify(shellTaskOrganizer).applyTransaction(arg.capture()) + } + return arg.value + } + + private fun getLatestToggleResizeDesktopTaskWct(): WindowContainerTransaction { + val arg: ArgumentCaptor<WindowContainerTransaction> = + ArgumentCaptor.forClass(WindowContainerTransaction::class.java) + if (ENABLE_SHELL_TRANSITIONS) { + verify(toggleResizeDesktopTaskTransitionHandler, atLeastOnce()).startTransition(capture(arg)) + } else { + verify(shellTaskOrganizer).applyTransaction(capture(arg)) + } + return arg.value + } + + private fun getLatestEnterDesktopWct(): WindowContainerTransaction { + val arg = ArgumentCaptor.forClass(WindowContainerTransaction::class.java) + if (ENABLE_SHELL_TRANSITIONS) { + verify(enterDesktopTransitionHandler).moveToDesktop(arg.capture(), any()) + } else { + verify(shellTaskOrganizer).applyTransaction(arg.capture()) + } + return arg.value + } + + private fun getLatestDragToDesktopWct(): WindowContainerTransaction { + val arg: ArgumentCaptor<WindowContainerTransaction> = + ArgumentCaptor.forClass(WindowContainerTransaction::class.java) + if (ENABLE_SHELL_TRANSITIONS) { + verify(dragToDesktopTransitionHandler).finishDragToDesktopTransition(capture(arg)) + } else { + verify(shellTaskOrganizer).applyTransaction(capture(arg)) + } + return arg.value + } + + private fun getLatestExitDesktopWct(): WindowContainerTransaction { + val arg = ArgumentCaptor.forClass(WindowContainerTransaction::class.java) + if (ENABLE_SHELL_TRANSITIONS) { + verify(exitDesktopTransitionHandler).startTransition(any(), arg.capture(), any(), any()) + } else { + verify(shellTaskOrganizer).applyTransaction(arg.capture()) + } + return arg.value + } + + private fun findBoundsChange(wct: WindowContainerTransaction, task: RunningTaskInfo): Rect? = + wct.changes[task.token.asBinder()]?.configuration?.windowConfiguration?.bounds + + private fun verifyWCTNotExecuted() { + if (ENABLE_SHELL_TRANSITIONS) { + verify(transitions, never()).startTransition(anyInt(), any(), isNull()) + } else { + verify(shellTaskOrganizer, never()).applyTransaction(any()) + } + } + + private fun verifyExitDesktopWCTNotExecuted() { + if (ENABLE_SHELL_TRANSITIONS) { + verify(exitDesktopTransitionHandler, never()).startTransition(any(), any(), any(), any()) + } else { + verify(shellTaskOrganizer, never()).applyTransaction(any()) + } + } + + private fun verifyEnterDesktopWCTNotExecuted() { + if (ENABLE_SHELL_TRANSITIONS) { + verify(enterDesktopTransitionHandler, never()).moveToDesktop(any(), any()) + } else { + verify(shellTaskOrganizer, never()).applyTransaction(any()) + } + } + + private fun createTransition( + task: RunningTaskInfo?, + @WindowManager.TransitionType type: Int = TRANSIT_OPEN + ): TransitionRequestInfo { + return TransitionRequestInfo(type, task, null /* remoteTransition */) + } + + companion object { + const val SECOND_DISPLAY = 2 + private val STABLE_BOUNDS = Rect(0, 0, 1000, 1000) + } } private fun WindowContainerTransaction.assertIndexInBounds(index: Int) { - assertWithMessage("WCT does not have a hierarchy operation at index $index") - .that(hierarchyOps.size) - .isGreaterThan(index) -} - -private fun WindowContainerTransaction.assertHop( - predicate: (WindowContainerTransaction.HierarchyOp) -> Boolean -) { - assertThat(hierarchyOps.any(predicate)).isTrue() -} - -private fun WindowContainerTransaction.assertWithoutHop( - predicate: (WindowContainerTransaction.HierarchyOp) -> Boolean -) { - assertThat(hierarchyOps.none(predicate)).isTrue() -} - -private fun WindowContainerTransaction.indexOfReorder( - token: WindowContainerToken, - toTop: Boolean? = null, -): Int { - val hop = hierarchyOps.singleOrNull(ReorderPredicate(token, toTop)) ?: return -1 - return hierarchyOps.indexOf(hop) -} - -private fun WindowContainerTransaction.indexOfReorder( - task: RunningTaskInfo, - toTop: Boolean? = null, -): Int { - return indexOfReorder(task.token, toTop) -} - -private class ReorderPredicate( - val token: WindowContainerToken, - val toTop: Boolean? = null, - val includingParents: Boolean? = null, -) : ((WindowContainerTransaction.HierarchyOp) -> Boolean) { - override fun invoke(hop: WindowContainerTransaction.HierarchyOp): Boolean = - hop.type == HIERARCHY_OP_TYPE_REORDER && - (toTop == null || hop.toTop == toTop) && - (includingParents == null || hop.includingParents() == includingParents) && - hop.container == token.asBinder() -} - -private class ReparentPredicate( - val token: WindowContainerToken, - val parentToken: WindowContainerToken, - val toTop: Boolean? = null, -) : ((WindowContainerTransaction.HierarchyOp) -> Boolean) { - override fun invoke(hop: WindowContainerTransaction.HierarchyOp): Boolean = - hop.isReparent && - (toTop == null || hop.toTop == toTop) && - hop.container == token.asBinder() && - hop.newParent == parentToken.asBinder() -} - -private fun WindowContainerTransaction.assertReorder( - task: RunningTaskInfo, - toTop: Boolean? = null, - includingParents: Boolean? = null, -) { - assertReorder(task.token, toTop, includingParents) -} - -private fun WindowContainerTransaction.assertReorder( - token: WindowContainerToken, - toTop: Boolean? = null, - includingParents: Boolean? = null, -) { - assertHop(ReorderPredicate(token, toTop, includingParents)) + assertWithMessage("WCT does not have a hierarchy operation at index $index") + .that(hierarchyOps.size) + .isGreaterThan(index) } private fun WindowContainerTransaction.assertReorderAt( index: Int, task: RunningTaskInfo, - toTop: Boolean? = null, - includingParents: Boolean? = null, + toTop: Boolean? = null ) { - assertIndexInBounds(index) - val op = hierarchyOps[index] - assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_REORDER) - assertThat(op.container).isEqualTo(task.token.asBinder()) - toTop?.let { assertThat(op.toTop).isEqualTo(it) } - includingParents?.let { assertThat(op.includingParents()).isEqualTo(it) } -} - -private fun WindowContainerTransaction.assertReorderAt( - index: Int, - token: WindowContainerToken, - toTop: Boolean? = null, -) { - assertIndexInBounds(index) - val op = hierarchyOps[index] - assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_REORDER) - assertThat(op.container).isEqualTo(token.asBinder()) - toTop?.let { assertThat(op.toTop).isEqualTo(it) } + assertIndexInBounds(index) + val op = hierarchyOps[index] + assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_REORDER) + assertThat(op.container).isEqualTo(task.token.asBinder()) + toTop?.let { assertThat(op.toTop).isEqualTo(it) } } private fun WindowContainerTransaction.assertReorderSequence(vararg tasks: RunningTaskInfo) { - for (i in tasks.indices) { - assertReorderAt(i, tasks[i]) - } -} - -/** Checks if the reorder hierarchy operations in [range] correspond to [tasks] list */ -private fun WindowContainerTransaction.assertReorderSequenceInRange( - range: IntRange, - vararg tasks: RunningTaskInfo, -) { - assertThat(hierarchyOps.slice(range).map { it.type to it.container }) - .containsExactlyElementsIn(tasks.map { HIERARCHY_OP_TYPE_REORDER to it.token.asBinder() }) - .inOrder() -} - -private fun WindowContainerTransaction.assertRemove(token: WindowContainerToken) { - assertThat( - hierarchyOps.any { hop -> - hop.container == token.asBinder() && hop.type == HIERARCHY_OP_TYPE_REMOVE_TASK - } - ) - .isTrue() + for (i in tasks.indices) { + assertReorderAt(i, tasks[i]) + } } private fun WindowContainerTransaction.assertRemoveAt(index: Int, token: WindowContainerToken) { - assertIndexInBounds(index) - val op = hierarchyOps[index] - assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_REMOVE_TASK) - assertThat(op.container).isEqualTo(token.asBinder()) -} - -private fun WindowContainerTransaction.assertNoRemoveAt(index: Int, token: WindowContainerToken) { - assertIndexInBounds(index) - val op = hierarchyOps[index] - assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_REMOVE_TASK) - assertThat(op.container).isEqualTo(token.asBinder()) -} - -private fun WindowContainerTransaction.hasRemoveAt(index: Int, token: WindowContainerToken) { - assertIndexInBounds(index) - val op = hierarchyOps[index] - assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_REMOVE_TASK) - assertThat(op.container).isEqualTo(token.asBinder()) -} - -private fun WindowContainerTransaction.assertPendingIntent(intent: Intent) { - assertHop { hop -> - hop.type == HIERARCHY_OP_TYPE_PENDING_INTENT && - hop.pendingIntent?.intent?.component == intent.component && - hop.pendingIntent?.intent?.categories == intent.categories - } -} - -private fun WindowContainerTransaction.assertWithoutPendingIntent(intent: Intent) { - assertWithoutHop { hop -> - hop.type == HIERARCHY_OP_TYPE_PENDING_INTENT && - hop.pendingIntent?.intent?.component == intent.component - } + assertIndexInBounds(index) + val op = hierarchyOps[index] + assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_REMOVE_TASK) + assertThat(op.container).isEqualTo(token.asBinder()) } private fun WindowContainerTransaction.assertPendingIntentAt(index: Int, intent: Intent) { - assertIndexInBounds(index) - val op = hierarchyOps[index] - assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_PENDING_INTENT) - assertThat(op.pendingIntent?.intent?.component).isEqualTo(intent.component) - assertThat(op.pendingIntent?.intent?.categories).isEqualTo(intent.categories) -} - -private fun WindowContainerTransaction.assertPendingIntentActivityOptionsLaunchDisplayId( - displayId: Int -) { - assertHop { hop -> - hop.launchOptions != null && ActivityOptions(hop.launchOptions).launchDisplayId == displayId - } -} - -private fun WindowContainerTransaction.assertPendingIntentActivityOptionsLaunchDisplayIdAt( - index: Int, - displayId: Int, -) { - assertIndexInBounds(index) - val op = hierarchyOps[index] - if (op.launchOptions != null) { - val options = ActivityOptions(op.launchOptions) - assertThat(options.launchDisplayId).isEqualTo(displayId) - } -} - -private fun WindowContainerTransaction.assertLaunchTask(taskId: Int, windowingMode: Int) { - val keyLaunchWindowingMode = "android.activity.windowingMode" - - assertHop { hop -> - hop.type == HIERARCHY_OP_TYPE_LAUNCH_TASK && - hop.launchOptions?.getInt(LAUNCH_KEY_TASK_ID) == taskId && - hop.launchOptions?.getInt(keyLaunchWindowingMode, WINDOWING_MODE_UNDEFINED) == - windowingMode - } -} - -private fun WindowContainerTransaction.assertLaunchTaskOnDisplay(displayId: Int) { - val keyLaunchWindowingMode = "android.activity.windowingMode" - val keyLaunchDisplayId = "android.activity.launchDisplayId" - - assertHop { hop -> hop.launchOptions?.getInt(keyLaunchDisplayId, DEFAULT_DISPLAY) == displayId } + assertIndexInBounds(index) + val op = hierarchyOps[index] + assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_PENDING_INTENT) + assertThat(op.pendingIntent?.intent?.component).isEqualTo(intent.component) } private fun WindowContainerTransaction.assertLaunchTaskAt( index: Int, taskId: Int, - windowingMode: Int, + windowingMode: Int ) { - val keyLaunchWindowingMode = "android.activity.windowingMode" + val keyLaunchWindowingMode = "android.activity.windowingMode" - assertIndexInBounds(index) - val op = hierarchyOps[index] - assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_LAUNCH_TASK) - assertThat(op.launchOptions?.getInt(LAUNCH_KEY_TASK_ID)).isEqualTo(taskId) - assertThat(op.launchOptions?.getInt(keyLaunchWindowingMode, WINDOWING_MODE_UNDEFINED)) - .isEqualTo(windowingMode) + assertIndexInBounds(index) + val op = hierarchyOps[index] + assertThat(op.type).isEqualTo(HIERARCHY_OP_TYPE_LAUNCH_TASK) + assertThat(op.launchOptions?.getInt(LAUNCH_KEY_TASK_ID)).isEqualTo(taskId) + assertThat(op.launchOptions?.getInt(keyLaunchWindowingMode, WINDOWING_MODE_UNDEFINED)) + .isEqualTo(windowingMode) } private fun WindowContainerTransaction?.anyDensityConfigChange( token: WindowContainerToken ): Boolean { - return this?.changes?.any { change -> - change.key == token.asBinder() && ((change.value.configSetMask and CONFIG_DENSITY) != 0) - } ?: false + return this?.changes?.any { change -> + change.key == token.asBinder() && ((change.value.configSetMask and CONFIG_DENSITY) != 0) + } ?: false } -private fun WindowContainerTransaction?.anyWindowingModeChange( - token: WindowContainerToken -): Boolean { - return this?.changes?.any { change -> - change.key == token.asBinder() && change.value.windowingMode >= 0 - } ?: false -} - -private fun createRecentTaskInfo(taskId: Int, displayId: Int = DEFAULT_DISPLAY) = +private fun createTaskInfo(id: Int) = RecentTaskInfo().apply { - this.taskId = taskId - this.displayId = displayId - token = WindowContainerToken(mock(IWindowContainerToken::class.java)) - positionInParent = Point() + taskId = id + token = WindowContainerToken(mock(IWindowContainerToken::class.java)) } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksLimiterTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksLimiterTest.kt index f145f88012..77f917cc28 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksLimiterTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTasksLimiterTest.kt @@ -17,69 +17,36 @@ package com.android.wm.shell.desktopmode import android.app.ActivityManager.RunningTaskInfo -import android.graphics.Rect import android.os.Binder -import android.os.IBinder -import android.os.UserManager -import android.platform.test.annotations.DisableFlags -import android.platform.test.annotations.EnableFlags +import android.platform.test.flag.junit.SetFlagsRule import android.testing.AndroidTestingRunner import android.view.Display.DEFAULT_DISPLAY -import android.view.SurfaceControl -import android.view.WindowManager.TRANSIT_CLOSE import android.view.WindowManager.TRANSIT_OPEN import android.view.WindowManager.TRANSIT_TO_BACK -import android.window.TransitionInfo import android.window.WindowContainerTransaction -import android.window.WindowContainerTransaction.HierarchyOp.HIERARCHY_OP_TYPE_REMOVE_TASK import android.window.WindowContainerTransaction.HierarchyOp.HIERARCHY_OP_TYPE_REORDER import androidx.test.filters.SmallTest -import com.android.window.flags.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION -import com.android.window.flags.Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND -import com.android.window.flags.Flags.FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS +import com.android.dx.mockito.inline.extended.ExtendedMockito +import com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn +import com.android.dx.mockito.inline.extended.StaticMockitoSession import com.android.wm.shell.ShellTaskOrganizer import com.android.wm.shell.ShellTestCase -import com.android.wm.shell.common.ShellExecutor -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.MinimizeReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.UnminimizeReason -import com.android.wm.shell.desktopmode.DesktopTestHelpers.createFreeformTask -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer -import com.android.wm.shell.desktopmode.persistence.DesktopPersistentRepository -import com.android.wm.shell.desktopmode.persistence.DesktopRepositoryInitializer -import com.android.wm.shell.shared.desktopmode.FakeDesktopConfig -import com.android.wm.shell.shared.desktopmode.FakeDesktopState -import com.android.wm.shell.sysui.ShellController -import com.android.wm.shell.sysui.ShellInit +import com.android.wm.shell.desktopmode.DesktopTestHelpers.Companion.createFreeformTask +import com.android.wm.shell.shared.DesktopModeStatus import com.android.wm.shell.transition.TransitionInfoBuilder import com.android.wm.shell.transition.Transitions import com.android.wm.shell.util.StubTransaction -import com.android.wm.shell.windowdecor.tiling.SnapEventHandler import com.google.common.truth.Truth.assertThat -import kotlin.test.assertFailsWith -import kotlinx.coroutines.CoroutineScope -import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.ExperimentalCoroutinesApi -import kotlinx.coroutines.SupervisorJob -import kotlinx.coroutines.cancel -import kotlinx.coroutines.test.StandardTestDispatcher -import kotlinx.coroutines.test.setMain import org.junit.After import org.junit.Before +import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith -import org.mockito.ArgumentCaptor -import org.mockito.ArgumentMatchers.anyInt import org.mockito.Mock -import org.mockito.Mockito.mock -import org.mockito.Mockito.spy -import org.mockito.Mockito.verify +import org.mockito.Mockito.any import org.mockito.Mockito.`when` -import org.mockito.kotlin.any -import org.mockito.kotlin.argumentCaptor -import org.mockito.kotlin.eq -import org.mockito.kotlin.never -import org.mockito.kotlin.times -import org.mockito.kotlin.whenever +import org.mockito.quality.Strictness + /** * Test class for {@link DesktopTasksLimiter} @@ -88,160 +55,99 @@ import org.mockito.kotlin.whenever */ @SmallTest @RunWith(AndroidTestingRunner::class) -@ExperimentalCoroutinesApi class DesktopTasksLimiterTest : ShellTestCase() { - @Mock lateinit var shellTaskOrganizer: ShellTaskOrganizer - @Mock lateinit var desksOrganizer: DesksOrganizer - @Mock lateinit var transitions: Transitions - @Mock lateinit var testExecutor: ShellExecutor - @Mock lateinit var persistentRepository: DesktopPersistentRepository - @Mock lateinit var repositoryInitializer: DesktopRepositoryInitializer - @Mock lateinit var userManager: UserManager - @Mock lateinit var shellController: ShellController - @Mock lateinit var desktopMixedTransitionHandler: DesktopMixedTransitionHandler - @Mock lateinit var snapEventHandler: SnapEventHandler + @JvmField + @Rule + val setFlagsRule = SetFlagsRule() + @Mock lateinit var shellTaskOrganizer: ShellTaskOrganizer + @Mock lateinit var transitions: Transitions + + private lateinit var mockitoSession: StaticMockitoSession private lateinit var desktopTasksLimiter: DesktopTasksLimiter - private lateinit var userRepositories: DesktopUserRepositories - private lateinit var desktopTaskRepo: DesktopRepository - private lateinit var shellInit: ShellInit - private lateinit var testScope: CoroutineScope - private val desktopState = FakeDesktopState() - private val desktopConfig = FakeDesktopConfig() + private lateinit var desktopTaskRepo: DesktopModeTaskRepository @Before fun setUp() { - desktopState.canEnterDesktopMode = true - shellInit = spy(ShellInit(testExecutor)) - Dispatchers.setMain(StandardTestDispatcher()) - testScope = CoroutineScope(Dispatchers.Unconfined + SupervisorJob()) + mockitoSession = ExtendedMockito.mockitoSession().strictness(Strictness.LENIENT) + .spyStatic(DesktopModeStatus::class.java).startMocking() + doReturn(true).`when`{ DesktopModeStatus.canEnterDesktopMode(any()) } - userRepositories = - DesktopUserRepositories( - shellInit, - shellController, - persistentRepository, - repositoryInitializer, - testScope, - userManager, - desktopState, - desktopConfig, - ) - desktopTaskRepo = userRepositories.current - desktopTasksLimiter = - DesktopTasksLimiter( - transitions, - userRepositories, - shellTaskOrganizer, - desksOrganizer, - desktopMixedTransitionHandler, - MAX_TASK_LIMIT, - ) - desktopTasksLimiter.snapEventHandler = snapEventHandler + desktopTaskRepo = DesktopModeTaskRepository() + + desktopTasksLimiter = DesktopTasksLimiter( + transitions, desktopTaskRepo, shellTaskOrganizer) } @After fun tearDown() { - testScope.cancel() + mockitoSession.finishMocking() } + // Currently, the task limit can be overridden through an adb flag. This test ensures the limit + // hasn't been overridden. @Test - fun createDesktopTasksLimiter_withZeroLimit_shouldThrow() { - assertFailsWith<IllegalArgumentException> { - DesktopTasksLimiter( - transitions, - userRepositories, - shellTaskOrganizer, - desksOrganizer, - desktopMixedTransitionHandler, - 0, - ) - } - } - - @Test - fun createDesktopTasksLimiter_withNegativeLimit_shouldThrow() { - assertFailsWith<IllegalArgumentException> { - DesktopTasksLimiter( - transitions, - userRepositories, - shellTaskOrganizer, - desksOrganizer, - desktopMixedTransitionHandler, - -5, - ) - } - } - - @Test - fun createDesktopTasksLimiter_withNoLimit_shouldSucceed() { - // Instantiation should succeed without an error. - DesktopTasksLimiter( - transitions, - userRepositories, - shellTaskOrganizer, - desksOrganizer, - desktopMixedTransitionHandler, - maxTasksLimit = null, - ) + fun getMaxTaskLimit_isSameAsConstant() { + assertThat(desktopTasksLimiter.getMaxTaskLimit()).isEqualTo( + DesktopModeStatus.DEFAULT_MAX_TASK_LIMIT) } @Test fun addPendingMinimizeTransition_taskIsNotMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) val task = setUpFreeformTask() markTaskHidden(task) - addPendingMinimizeChange(Binder(), displayId = 1, taskId = task.taskId) + desktopTasksLimiter.addPendingMinimizeChange(Binder(), displayId = 1, taskId = task.taskId) assertThat(desktopTaskRepo.isMinimizedTask(taskId = task.taskId)).isFalse() } @Test fun onTransitionReady_noPendingTransition_taskIsNotMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) val task = setUpFreeformTask() markTaskHidden(task) - callOnTransitionReady( - Binder(), - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_TO_BACK, task).build(), - ) + desktopTasksLimiter.getTransitionObserver().onTransitionReady( + Binder() /* transition */, + TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_TO_BACK, task).build(), + StubTransaction() /* startTransaction */, + StubTransaction() /* finishTransaction */) assertThat(desktopTaskRepo.isMinimizedTask(taskId = task.taskId)).isFalse() } @Test fun onTransitionReady_differentPendingTransition_taskIsNotMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) val pendingTransition = Binder() val taskTransition = Binder() val task = setUpFreeformTask() markTaskHidden(task) - addPendingMinimizeChange(pendingTransition, taskId = task.taskId) + desktopTasksLimiter.addPendingMinimizeChange( + pendingTransition, displayId = DEFAULT_DISPLAY, taskId = task.taskId) - callOnTransitionReady( - taskTransition, + desktopTasksLimiter.getTransitionObserver().onTransitionReady( + taskTransition /* transition */, TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_TO_BACK, task).build(), - ) + StubTransaction() /* startTransaction */, + StubTransaction() /* finishTransaction */) assertThat(desktopTaskRepo.isMinimizedTask(taskId = task.taskId)).isFalse() } @Test fun onTransitionReady_pendingTransition_noTaskChange_taskVisible_taskIsNotMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) val transition = Binder() val task = setUpFreeformTask() markTaskVisible(task) - addPendingMinimizeChange(transition, taskId = task.taskId) + desktopTasksLimiter.addPendingMinimizeChange( + transition, displayId = DEFAULT_DISPLAY, taskId = task.taskId) - callOnTransitionReady(transition, TransitionInfoBuilder(TRANSIT_OPEN).build()) + desktopTasksLimiter.getTransitionObserver().onTransitionReady( + transition, + TransitionInfoBuilder(TRANSIT_OPEN).build(), + StubTransaction() /* startTransaction */, + StubTransaction() /* finishTransaction */) assertThat(desktopTaskRepo.isMinimizedTask(taskId = task.taskId)).isFalse() } @@ -249,737 +155,166 @@ class DesktopTasksLimiterTest : ShellTestCase() { @Test fun onTransitionReady_pendingTransition_noTaskChange_taskInvisible_taskIsMinimized() { val transition = Binder() - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) val task = setUpFreeformTask() markTaskHidden(task) - addPendingMinimizeChange(transition, taskId = task.taskId) + desktopTasksLimiter.addPendingMinimizeChange( + transition, displayId = DEFAULT_DISPLAY, taskId = task.taskId) - callOnTransitionReady(transition, TransitionInfoBuilder(TRANSIT_OPEN).build()) + desktopTasksLimiter.getTransitionObserver().onTransitionReady( + transition, + TransitionInfoBuilder(TRANSIT_OPEN).build(), + StubTransaction() /* startTransaction */, + StubTransaction() /* finishTransaction */) assertThat(desktopTaskRepo.isMinimizedTask(taskId = task.taskId)).isTrue() } @Test fun onTransitionReady_pendingTransition_changeTaskToBack_taskIsMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) val transition = Binder() val task = setUpFreeformTask() - addPendingMinimizeChange(transition, taskId = task.taskId) + desktopTasksLimiter.addPendingMinimizeChange( + transition, displayId = DEFAULT_DISPLAY, taskId = task.taskId) - callOnTransitionReady( - transition, - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_TO_BACK, task).build(), - ) + desktopTasksLimiter.getTransitionObserver().onTransitionReady( + transition, + TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_TO_BACK, task).build(), + StubTransaction() /* startTransaction */, + StubTransaction() /* finishTransaction */) assertThat(desktopTaskRepo.isMinimizedTask(taskId = task.taskId)).isTrue() } - @Test - fun onTransitionReady_pendingTransition_changeTaskToBack_boundsSaved() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val bounds = Rect(0, 0, 200, 200) - val transition = Binder() - val task = setUpFreeformTask() - addPendingMinimizeChange(transition, taskId = task.taskId) - - val change = - TransitionInfo.Change(task.token, mock(SurfaceControl::class.java)).apply { - mode = TRANSIT_TO_BACK - taskInfo = task - setStartAbsBounds(bounds) - } - callOnTransitionReady( - transition, - TransitionInfo(TRANSIT_OPEN, TransitionInfo.FLAG_NONE).apply { addChange(change) }, - ) - - assertThat(desktopTaskRepo.isMinimizedTask(taskId = task.taskId)).isTrue() - assertThat(desktopTaskRepo.removeBoundsBeforeMinimize(taskId = task.taskId)) - .isEqualTo(bounds) - } - @Test fun onTransitionReady_transitionMergedFromPending_taskIsMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) val mergedTransition = Binder() val newTransition = Binder() val task = setUpFreeformTask() - addPendingMinimizeChange(mergedTransition, taskId = task.taskId) - desktopTasksLimiter - .getTransitionObserver() - .onTransitionMerged(mergedTransition, newTransition) - desktopTasksLimiter - .getTransitionObserver() - .onTransitionMerged(mergedTransition, newTransition) + desktopTasksLimiter.addPendingMinimizeChange( + mergedTransition, displayId = DEFAULT_DISPLAY, taskId = task.taskId) + desktopTasksLimiter.getTransitionObserver().onTransitionMerged( + mergedTransition, newTransition) - callOnTransitionReady( + desktopTasksLimiter.getTransitionObserver().onTransitionReady( newTransition, TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_TO_BACK, task).build(), - ) + StubTransaction() /* startTransaction */, + StubTransaction() /* finishTransaction */) assertThat(desktopTaskRepo.isMinimizedTask(taskId = task.taskId)).isTrue() } @Test - @DisableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION) - fun removeLeftoverMinimizedTasks_activeNonMinimizedTasksStillAround_doesNothing() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.addTask( - displayId = DEFAULT_DISPLAY, - taskId = 1, - isVisible = true, - taskBounds = TASK_BOUNDS, - ) - desktopTaskRepo.addTask( - displayId = DEFAULT_DISPLAY, - taskId = 1, - isVisible = true, - taskBounds = TASK_BOUNDS, - ) - desktopTaskRepo.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = 2) - - val wct = WindowContainerTransaction() - desktopTasksLimiter.leftoverMinimizedTasksRemover.removeLeftoverMinimizedTasks( - DEFAULT_DISPLAY, - wct, - ) - - assertThat(wct.isEmpty).isTrue() - } - - @Test - @DisableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION) - fun removeLeftoverMinimizedTasks_noMinimizedTasks_doesNothing() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val wct = WindowContainerTransaction() - desktopTasksLimiter.leftoverMinimizedTasksRemover.removeLeftoverMinimizedTasks( - DEFAULT_DISPLAY, - wct, - ) - - assertThat(wct.isEmpty).isTrue() - } - - @Test - @DisableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION) - fun removeLeftoverMinimizedTasks_onlyMinimizedTasksLeft_removesAllMinimizedTasks() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - desktopTaskRepo.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = task1.taskId) - desktopTaskRepo.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = task2.taskId) - - val wct = WindowContainerTransaction() - desktopTasksLimiter.leftoverMinimizedTasksRemover.removeLeftoverMinimizedTasks( - DEFAULT_DISPLAY, - wct, - ) - - assertThat(wct.hierarchyOps).hasSize(2) - assertThat(wct.hierarchyOps[0].type).isEqualTo(HIERARCHY_OP_TYPE_REMOVE_TASK) - assertThat(wct.hierarchyOps[0].container).isEqualTo(task1.token.asBinder()) - assertThat(wct.hierarchyOps[1].type).isEqualTo(HIERARCHY_OP_TYPE_REMOVE_TASK) - assertThat(wct.hierarchyOps[1].container).isEqualTo(task2.token.asBinder()) - } - - @Test - @EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION) - fun removeLeftoverMinimizedTasks_onlyMinimizedTasksLeft_backNavEnabled_doesNothing() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val task1 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - val task2 = setUpFreeformTask(displayId = DEFAULT_DISPLAY) - desktopTaskRepo.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = task1.taskId) - desktopTaskRepo.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = task2.taskId) - - val wct = WindowContainerTransaction() - desktopTasksLimiter.leftoverMinimizedTasksRemover.onActiveTasksChanged(DEFAULT_DISPLAY) - - assertThat(wct.hierarchyOps).isEmpty() - } - - @Test - @DisableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun addAndGetMinimizeTaskChanges_tasksWithinLimit_multiDesksDisabled_noTaskMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - (1..<MAX_TASK_LIMIT).forEach { _ -> setUpFreeformTask() } + fun addAndGetMinimizeTaskChangesIfNeeded_tasksWithinLimit_noTaskMinimized() { + val taskLimit = desktopTasksLimiter.getMaxTaskLimit() + (1..<taskLimit).forEach { _ -> setUpFreeformTask() } val wct = WindowContainerTransaction() val minimizedTaskId = - desktopTasksLimiter.addAndGetMinimizeTaskChanges( - deskId = 0, - wct = wct, - newFrontTaskId = setUpFreeformTask().taskId, - ) + desktopTasksLimiter.addAndGetMinimizeTaskChangesIfNeeded( + displayId = DEFAULT_DISPLAY, + wct = wct, + newFrontTaskInfo = setUpFreeformTask()) assertThat(minimizedTaskId).isNull() assertThat(wct.hierarchyOps).isEmpty() // No reordering operations added } @Test - @EnableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun addAndGetMinimizeTaskChanges_tasksWithinLimit_multiDesksEnabled_noTaskMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - (1..<MAX_TASK_LIMIT).forEach { _ -> setUpFreeformTask() } - - val wct = WindowContainerTransaction() - val minimizedTaskId = - desktopTasksLimiter.addAndGetMinimizeTaskChanges( - deskId = 0, - wct = wct, - newFrontTaskId = setUpFreeformTask().taskId, - ) - - assertThat(minimizedTaskId).isNull() - verify(desksOrganizer, never()).minimizeTask(eq(wct), eq(0), any()) - } - - @Test - @DisableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun addAndGetMinimizeTaskChanges_tasksAboveLimit_multiDesksDisabled_backTaskMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) + fun addAndGetMinimizeTaskChangesIfNeeded_tasksAboveLimit_backTaskMinimized() { + val taskLimit = desktopTasksLimiter.getMaxTaskLimit() // The following list will be ordered bottom -> top, as the last task is moved to top last. - val tasks = (1..MAX_TASK_LIMIT).map { setUpFreeformTask() } + val tasks = (1..taskLimit).map { setUpFreeformTask() } val wct = WindowContainerTransaction() val minimizedTaskId = - desktopTasksLimiter.addAndGetMinimizeTaskChanges( - deskId = DEFAULT_DISPLAY, - wct = wct, - newFrontTaskId = setUpFreeformTask().taskId, - ) + desktopTasksLimiter.addAndGetMinimizeTaskChangesIfNeeded( + displayId = DEFAULT_DISPLAY, + wct = wct, + newFrontTaskInfo = setUpFreeformTask()) - assertThat(minimizedTaskId).isEqualTo(tasks.first().taskId) + assertThat(minimizedTaskId).isEqualTo(tasks.first()) assertThat(wct.hierarchyOps.size).isEqualTo(1) assertThat(wct.hierarchyOps[0].type).isEqualTo(HIERARCHY_OP_TYPE_REORDER) assertThat(wct.hierarchyOps[0].toTop).isFalse() // Reorder to bottom } @Test - @EnableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun addAndGetMinimizeTaskChanges_tasksAboveLimit_multiDesksEnabled_backTaskMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - // The following list will be ordered bottom -> top, as the last task is moved to top last. - val tasks = (1..MAX_TASK_LIMIT).map { setUpFreeformTask() } - - val wct = WindowContainerTransaction() - val minimizedTaskId = - desktopTasksLimiter.addAndGetMinimizeTaskChanges( - deskId = DEFAULT_DISPLAY, - wct = wct, - newFrontTaskId = setUpFreeformTask().taskId, - ) - - assertThat(minimizedTaskId).isEqualTo(tasks.first().taskId) - verify(desksOrganizer).minimizeTask(wct, deskId = 0, tasks.first()) - } - - @Test - @DisableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun addAndGetMinimizeTaskChanges_nonMinimizedTasksWithinLimit_multiDesksDisabled_noTaskMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val tasks = (1..MAX_TASK_LIMIT).map { setUpFreeformTask() } + fun addAndGetMinimizeTaskChangesIfNeeded_nonMinimizedTasksWithinLimit_noTaskMinimized() { + val taskLimit = desktopTasksLimiter.getMaxTaskLimit() + val tasks = (1..taskLimit).map { setUpFreeformTask() } desktopTaskRepo.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = tasks[0].taskId) val wct = WindowContainerTransaction() val minimizedTaskId = - desktopTasksLimiter.addAndGetMinimizeTaskChanges( - deskId = 0, - wct = wct, - newFrontTaskId = setUpFreeformTask().taskId, - ) + desktopTasksLimiter.addAndGetMinimizeTaskChangesIfNeeded( + displayId = 0, + wct = wct, + newFrontTaskInfo = setUpFreeformTask()) assertThat(minimizedTaskId).isNull() assertThat(wct.hierarchyOps).isEmpty() // No reordering operations added } @Test - @EnableFlags(FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - fun addAndGetMinimizeTaskChanges_nonMinimizedTasksWithinLimit_multiDesksEnabled_noTaskMinimized() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val tasks = (1..MAX_TASK_LIMIT).map { setUpFreeformTask() } - desktopTaskRepo.minimizeTask(displayId = DEFAULT_DISPLAY, taskId = tasks[0].taskId) + fun getTaskToMinimizeIfNeeded_tasksWithinLimit_returnsNull() { + val taskLimit = desktopTasksLimiter.getMaxTaskLimit() + val tasks = (1..taskLimit).map { setUpFreeformTask() } - val wct = WindowContainerTransaction() - val minimizedTaskId = - desktopTasksLimiter.addAndGetMinimizeTaskChanges( - deskId = 0, - wct = wct, - newFrontTaskId = setUpFreeformTask().taskId, - ) - - assertThat(minimizedTaskId).isNull() - verify(desksOrganizer, never()).minimizeTask(eq(wct), eq(0), any()) - } - - @Test - fun getTaskToMinimize_tasksWithinLimit_returnsNull() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val tasks = (1..MAX_TASK_LIMIT).map { setUpFreeformTask() } - - val minimizedTask = - desktopTasksLimiter.getTaskIdToMinimize(visibleOrderedTasks = tasks.map { it.taskId }) + val minimizedTask = desktopTasksLimiter.getTaskToMinimizeIfNeeded( + visibleFreeformTaskIdsOrderedFrontToBack = tasks.map { it.taskId }) assertThat(minimizedTask).isNull() } @Test - fun getTaskToMinimize_tasksAboveLimit_returnsBackTask() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val tasks = (1..MAX_TASK_LIMIT + 1).map { setUpFreeformTask() } + fun getTaskToMinimizeIfNeeded_tasksAboveLimit_returnsBackTask() { + val taskLimit = desktopTasksLimiter.getMaxTaskLimit() + val tasks = (1..taskLimit + 1).map { setUpFreeformTask() } - val minimizedTask = - desktopTasksLimiter.getTaskIdToMinimize(visibleOrderedTasks = tasks.map { it.taskId }) + val minimizedTask = desktopTasksLimiter.getTaskToMinimizeIfNeeded( + visibleFreeformTaskIdsOrderedFrontToBack = tasks.map { it.taskId }) // first == front, last == back - assertThat(minimizedTask).isEqualTo(tasks.last().taskId) + assertThat(minimizedTask).isEqualTo(tasks.last()) } @Test - fun getTaskToMinimize_tasksAboveLimit_otherLimit_returnsBackTask() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTasksLimiter = - DesktopTasksLimiter( - transitions, - userRepositories, - shellTaskOrganizer, - desksOrganizer, - desktopMixedTransitionHandler, - MAX_TASK_LIMIT2, - ) - val tasks = (1..MAX_TASK_LIMIT2 + 1).map { setUpFreeformTask() } + fun getTaskToMinimizeIfNeeded_withNewTask_tasksAboveLimit_returnsBackTask() { + val taskLimit = desktopTasksLimiter.getMaxTaskLimit() + val tasks = (1..taskLimit).map { setUpFreeformTask() } - val minimizedTask = - desktopTasksLimiter.getTaskIdToMinimize(visibleOrderedTasks = tasks.map { it.taskId }) + val minimizedTask = desktopTasksLimiter.getTaskToMinimizeIfNeeded( + visibleFreeformTaskIdsOrderedFrontToBack = tasks.map { it.taskId }, + newTaskIdInFront = setUpFreeformTask().taskId) // first == front, last == back - assertThat(minimizedTask).isEqualTo(tasks.last().taskId) + assertThat(minimizedTask).isEqualTo(tasks.last()) } - @Test - fun getTaskToMinimize_withNewTask_tasksAboveLimit_returnsBackTask() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val tasks = (1..MAX_TASK_LIMIT).map { setUpFreeformTask() } - - val minimizedTask = - desktopTasksLimiter.getTaskIdToMinimize( - visibleOrderedTasks = tasks.map { it.taskId }, - newTaskIdInFront = setUpFreeformTask().taskId, - ) - - // first == front, last == back - assertThat(minimizedTask).isEqualTo(tasks.last().taskId) - } - - @Test - fun getTaskToMinimize_tasksAtLimit_newIntentReturnsBackTask() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val tasks = (1..MAX_TASK_LIMIT).map { setUpFreeformTask() } - val minimizedTask = - desktopTasksLimiter.getTaskIdToMinimize( - visibleOrderedTasks = tasks.map { it.taskId }, - newTaskIdInFront = null, - launchingNewIntent = true, - ) - - // first == front, last == back - assertThat(minimizedTask).isEqualTo(tasks.last().taskId) - } - - @Test - fun getMinimizingTask_noPendingTransition_returnsNull() { - val transition = Binder() - - assertThat(desktopTasksLimiter.getMinimizingTask(transition)).isNull() - } - - @Test - fun getMinimizingTask_pendingTaskTransition_returnsTask() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition = Binder() - val task = setUpFreeformTask() - addPendingMinimizeChange( - transition, - taskId = task.taskId, - minimizeReason = MinimizeReason.TASK_LIMIT, - ) - - assertThat(desktopTasksLimiter.getMinimizingTask(transition)) - .isEqualTo( - createTaskDetails(taskId = task.taskId, minimizeReason = MinimizeReason.TASK_LIMIT) - ) - } - - @Test - fun getMinimizingTask_activeTaskTransition_returnsTask() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition = Binder() - val task = setUpFreeformTask() - addPendingMinimizeChange( - transition, - taskId = task.taskId, - minimizeReason = MinimizeReason.TASK_LIMIT, - ) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_TO_BACK, task).build() - - callOnTransitionReady(transition, transitionInfo) - - assertThat(desktopTasksLimiter.getMinimizingTask(transition)) - .isEqualTo( - createTaskDetails( - taskId = task.taskId, - transitionInfo = transitionInfo, - minimizeReason = MinimizeReason.TASK_LIMIT, - ) - ) - } - - @Test - fun getUnminimizingTask_noPendingTransition_returnsNull() { - val transition = Binder() - - assertThat(desktopTasksLimiter.getMinimizingTask(transition)).isNull() - } - - @Test - fun getUnminimizingTask_pendingTaskTransition_returnsTask() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition = Binder() - val task = setUpFreeformTask() - addPendingUnminimizeChange( - transition, - taskId = task.taskId, - unminimizeReason = UnminimizeReason.TASKBAR_TAP, - ) - - assertThat(desktopTasksLimiter.getUnminimizingTask(transition)) - .isEqualTo( - createTaskDetails( - taskId = task.taskId, - unminimizeReason = UnminimizeReason.TASKBAR_TAP, - ) - ) - } - - @Test - fun getUnminimizingTask_activeTaskTransition_returnsTask() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition = Binder() - val task = setUpFreeformTask() - addPendingMinimizeChange( - transition, - taskId = task.taskId, - minimizeReason = MinimizeReason.TASK_LIMIT, - ) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_TO_BACK, task).build() - - callOnTransitionReady(transition, transitionInfo) - - assertThat(desktopTasksLimiter.getMinimizingTask(transition)) - .isEqualTo( - createTaskDetails( - taskId = task.taskId, - transitionInfo = transitionInfo, - minimizeReason = MinimizeReason.TASK_LIMIT, - ) - ) - } - - @Test - fun onTransitionReady_taskLimitTransition_tasksOverLimit_startsMinimizeTransitionInRunOnIdle() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition = Binder() - val minimizeTransition = Binder() - val existingTasks = (1..MAX_TASK_LIMIT).map { setUpFreeformTask() } - val launchTask = setUpFreeformTask() - desktopTasksLimiter.addPendingTaskLimitTransition( - transition, - deskId = 0, - taskId = launchTask.taskId, - ) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_OPEN, launchTask).build() - whenever(desktopMixedTransitionHandler.startTaskLimitMinimizeTransition(any(), anyInt())) - .thenReturn(minimizeTransition) - - callOnTransitionReady(transition, transitionInfo) - - val onIdleArgumentCaptor = argumentCaptor<Runnable>() - verify(transitions).runOnIdle(onIdleArgumentCaptor.capture()) - onIdleArgumentCaptor.lastValue.run() - verify(desktopMixedTransitionHandler).startTaskLimitMinimizeTransition(any(), any()) - assertThat(desktopTasksLimiter.getMinimizingTask(minimizeTransition)?.taskId) - .isEqualTo(existingTasks.first().taskId) - verify(snapEventHandler) - .removeTaskIfTiled(existingTasks.first().displayId, existingTasks.first().taskId) - } - - @Test - fun onTransitionReady_taskLimitTransition_taskNotAvailable_minimizesNextTask() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition = Binder() - val minimizeTransition = Binder() - val existingTasks = (1..MAX_TASK_LIMIT + 1).map { setUpFreeformTask() } - // Make the bottom task non-available - `when`(shellTaskOrganizer.getRunningTaskInfo(existingTasks.first().taskId)).thenReturn(null) - val launchTask = setUpFreeformTask() - desktopTasksLimiter.addPendingTaskLimitTransition( - transition, - deskId = 0, - taskId = launchTask.taskId, - ) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_OPEN, launchTask).build() - whenever(desktopMixedTransitionHandler.startTaskLimitMinimizeTransition(any(), anyInt())) - .thenReturn(minimizeTransition) - - callOnTransitionReady(transition, transitionInfo) - - val onIdleArgumentCaptor = argumentCaptor<Runnable>() - verify(transitions).runOnIdle(onIdleArgumentCaptor.capture()) - onIdleArgumentCaptor.lastValue.run() - verify(desktopMixedTransitionHandler).startTaskLimitMinimizeTransition(any(), any()) - // Ensure we minimize the second task, since the first one is not available - assertThat(desktopTasksLimiter.getMinimizingTask(minimizeTransition)?.taskId) - .isEqualTo(existingTasks[1].taskId) - } - - @Test - fun onTransitionReady_taskLimitTransition_taskNotAvailable_nextTaskBelowLimit_doesntMinimize() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition = Binder() - val existingTasks = (1..MAX_TASK_LIMIT).map { setUpFreeformTask() } - // Make the bottom task non-available - `when`(shellTaskOrganizer.getRunningTaskInfo(existingTasks.first().taskId)).thenReturn(null) - val launchTask = setUpFreeformTask() - desktopTasksLimiter.addPendingTaskLimitTransition( - transition, - deskId = 0, - taskId = launchTask.taskId, - ) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_OPEN, launchTask).build() - - callOnTransitionReady(transition, transitionInfo) - - val onIdleArgumentCaptor = argumentCaptor<Runnable>() - verify(transitions).runOnIdle(onIdleArgumentCaptor.capture()) - onIdleArgumentCaptor.lastValue.run() - verify(desktopMixedTransitionHandler, never()) - .startTaskLimitMinimizeTransition(any(), any()) - } - - @Test - fun onTransitionReady_noPendingTaskLimitTransition_doesntTriggerOnIdle() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition = Binder() - (1..MAX_TASK_LIMIT).map { setUpFreeformTask() } - val launchTask = setUpFreeformTask() - val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_OPEN, launchTask).build() - whenever(desktopMixedTransitionHandler.startTaskLimitMinimizeTransition(any(), anyInt())) - .thenReturn(Binder()) - - callOnTransitionReady(transition, transitionInfo) - - verify(transitions, never()).runOnIdle(any()) - verify(desktopMixedTransitionHandler, never()) - .startTaskLimitMinimizeTransition(any(), any()) - } - - @Test - fun onTransitionReady_taskLimitTransition_tasksWithinLimit_doesntStartMinimizeTransition() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition = Binder() - val task = setUpFreeformTask() - desktopTasksLimiter.addPendingTaskLimitTransition( - transition, - deskId = 0, - taskId = task.taskId, - ) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_OPEN, task).build() - whenever(desktopMixedTransitionHandler.startTaskLimitMinimizeTransition(any(), anyInt())) - .thenReturn(Binder()) - - callOnTransitionReady(transition, transitionInfo) - - val onIdleArgumentCaptor = ArgumentCaptor.forClass(Runnable::class.java) - verify(transitions).runOnIdle(onIdleArgumentCaptor.capture()) - onIdleArgumentCaptor.value.run() - verify(desktopMixedTransitionHandler, never()) - .startTaskLimitMinimizeTransition(any(), any()) - } - - @Test - @DisableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - fun onTransitionReady_taskLimitTransition_taskTrampoline_doesntStartMinimizeTransition() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition1 = Binder() - val transition2 = Binder() - (2..MAX_TASK_LIMIT).map { setUpFreeformTask() } - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - desktopTasksLimiter.addPendingTaskLimitTransition( - transition1, - deskId = 0, - taskId = task1.taskId, - ) - desktopTasksLimiter.addPendingTaskLimitTransition( - transition2, - deskId = 0, - taskId = task2.taskId, - ) - val transitionInfo1 = - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_OPEN, task1).build() - val transitionInfo2 = - TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN, task2) - .addChange(TRANSIT_CLOSE, task1) - .build() - - // Start the initial task launch transition - launching a trampoline task - callOnTransitionReady(transition1, transitionInfo1) - // Start the second task launch transition - launching the final task and closing the - // trampoline task - callOnTransitionReady(transition2, transitionInfo2) - - val onIdleArgumentCaptor = argumentCaptor<Runnable>() - verify(transitions, times(2)).runOnIdle(onIdleArgumentCaptor.capture()) - onIdleArgumentCaptor.allValues.forEach { runnable -> runnable.run() } - verify(desktopMixedTransitionHandler, never()) - .startTaskLimitMinimizeTransition(any(), any()) - } - - @Test - @DisableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - fun onTransitionReady_taskLimitTransition_taskTrampoline_marksTramplineAsClosed() { - desktopTaskRepo.addDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - desktopTaskRepo.setActiveDesk(displayId = DEFAULT_DISPLAY, deskId = 0) - val transition1 = Binder() - val transition2 = Binder() - val task1 = setUpFreeformTask() - val task2 = setUpFreeformTask() - desktopTasksLimiter.addPendingTaskLimitTransition( - transition1, - deskId = 0, - taskId = task1.taskId, - ) - desktopTasksLimiter.addPendingTaskLimitTransition( - transition2, - deskId = 0, - taskId = task2.taskId, - ) - val transitionInfo1 = - TransitionInfoBuilder(TRANSIT_OPEN).addChange(TRANSIT_OPEN, task1).build() - val transitionInfo2 = - TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN, task2) - .addChange(TRANSIT_CLOSE, task1) - .build() - - // Start the initial task launch transition - launching a trampoline task - callOnTransitionReady(transition1, transitionInfo1) - // Start the second task launch transition - launching the final task and closing the - // trampoline task - callOnTransitionReady(transition2, transitionInfo2) - - assertThat(desktopTaskRepo.isClosingTask(task1.taskId)).isTrue() - } - - private fun setUpFreeformTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo { + private fun setUpFreeformTask( + displayId: Int = DEFAULT_DISPLAY, + ): RunningTaskInfo { val task = createFreeformTask(displayId) `when`(shellTaskOrganizer.getRunningTaskInfo(task.taskId)).thenReturn(task) - desktopTaskRepo.addTask(displayId, task.taskId, task.isVisible, TASK_BOUNDS) + desktopTaskRepo.addActiveTask(displayId, task.taskId) + desktopTaskRepo.addOrMoveFreeformTaskToTop(displayId, task.taskId) return task } - private fun createTaskDetails( - displayId: Int = DEFAULT_DISPLAY, - taskId: Int, - transitionInfo: TransitionInfo? = null, - minimizeReason: MinimizeReason? = null, - unminimizeReason: UnminimizeReason? = null, - ) = - DesktopTasksLimiter.TaskDetails( - displayId, - taskId, - transitionInfo, - minimizeReason, - unminimizeReason, - ) - - private fun callOnTransitionReady( - transition: IBinder, - info: TransitionInfo, - startTransaction: SurfaceControl.Transaction = StubTransaction(), - finishTransaction: SurfaceControl.Transaction = StubTransaction(), - ) = - desktopTasksLimiter - .getTransitionObserver() - .onTransitionReady(transition, info, startTransaction, finishTransaction) - - private fun addPendingMinimizeChange( - transition: IBinder, - displayId: Int = DEFAULT_DISPLAY, - taskId: Int, - minimizeReason: MinimizeReason = MinimizeReason.TASK_LIMIT, - ) = desktopTasksLimiter.addPendingMinimizeChange(transition, displayId, taskId, minimizeReason) - - private fun addPendingUnminimizeChange( - transition: IBinder, - displayId: Int = DEFAULT_DISPLAY, - taskId: Int, - unminimizeReason: UnminimizeReason, - ) = - desktopTasksLimiter.addPendingUnminimizeChange( - transition, - displayId, - taskId, - unminimizeReason, - ) - private fun markTaskVisible(task: RunningTaskInfo) { - desktopTaskRepo.updateTask(task.displayId, task.taskId, isVisible = true, TASK_BOUNDS) + desktopTaskRepo.updateVisibleFreeformTasks( + task.displayId, + task.taskId, + visible = true + ) } private fun markTaskHidden(task: RunningTaskInfo) { - desktopTaskRepo.updateTask(task.displayId, task.taskId, isVisible = false, TASK_BOUNDS) - } - - private companion object { - const val MAX_TASK_LIMIT = 6 - const val MAX_TASK_LIMIT2 = 9 - val TASK_BOUNDS = Rect(100, 100, 300, 300) + desktopTaskRepo.updateVisibleFreeformTasks( + task.displayId, + task.taskId, + visible = false + ) } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTestHelpers.kt b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTestHelpers.kt index 25f96f8383..52da7fb811 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTestHelpers.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DesktopTestHelpers.kt @@ -22,94 +22,67 @@ import android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM import android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN import android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW -import android.app.WindowConfiguration.WINDOWING_MODE_PINNED -import android.content.ComponentName import android.graphics.Rect import android.view.Display.DEFAULT_DISPLAY import com.android.wm.shell.MockToken import com.android.wm.shell.TestRunningTaskInfoBuilder -object DesktopTestHelpers { - /** Create a task that has windowing mode set to [WINDOWING_MODE_FREEFORM] */ - fun createFreeformTask( - displayId: Int = DEFAULT_DISPLAY, - bounds: Rect? = null, - ): RunningTaskInfo = - TestRunningTaskInfoBuilder() - .setDisplayId(displayId) - .setParentTaskId(displayId) - .setToken(MockToken().token()) - .setActivityType(ACTIVITY_TYPE_STANDARD) - .setWindowingMode(WINDOWING_MODE_FREEFORM) - .setLastActiveTime(100) - .setUserId(DEFAULT_USER_ID) - .apply { bounds?.let { setBounds(it) } } - .build() - - fun createPinnedTask(displayId: Int = DEFAULT_DISPLAY, bounds: Rect? = null): RunningTaskInfo = - TestRunningTaskInfoBuilder() - .setDisplayId(displayId) - .setParentTaskId(displayId) - .setToken(MockToken().token()) - .setActivityType(ACTIVITY_TYPE_STANDARD) - .setWindowingMode(WINDOWING_MODE_PINNED) - .setLastActiveTime(100) - .apply { bounds?.let { setBounds(it) } } - .build() - - fun createFullscreenTaskBuilder(displayId: Int = DEFAULT_DISPLAY): TestRunningTaskInfoBuilder = - TestRunningTaskInfoBuilder() - .setDisplayId(displayId) - .setToken(MockToken().token()) - .setActivityType(ACTIVITY_TYPE_STANDARD) - .setWindowingMode(WINDOWING_MODE_FULLSCREEN) - .setUserId(DEFAULT_USER_ID) - .setLastActiveTime(100) - - /** Create a task that has windowing mode set to [WINDOWING_MODE_FULLSCREEN] */ - fun createFullscreenTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo = - createFullscreenTaskBuilder(displayId).build() - - /** Create a task that has windowing mode set to [WINDOWING_MODE_MULTI_WINDOW] */ - fun createSplitScreenTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo = - TestRunningTaskInfoBuilder() - .setDisplayId(displayId) - .setToken(MockToken().token()) - .setActivityType(ACTIVITY_TYPE_STANDARD) - .setWindowingMode(WINDOWING_MODE_MULTI_WINDOW) - .setUserId(DEFAULT_USER_ID) - .setLastActiveTime(100) - .build() - - fun createHomeTask( - displayId: Int = DEFAULT_DISPLAY, - userId: Int = DEFAULT_USER_ID, - ): RunningTaskInfo = - TestRunningTaskInfoBuilder() - .setDisplayId(displayId) - .setToken(MockToken().token()) - .setActivityType(ACTIVITY_TYPE_HOME) - .setWindowingMode(WINDOWING_MODE_FULLSCREEN) - .setUserId(userId) - .setLastActiveTime(100) - .build() - - /** - * Create a new System Modal task builder, i.e. a builder for a task with only transparent - * activities. - */ - fun createSystemModalTaskBuilder(displayId: Int = DEFAULT_DISPLAY): TestRunningTaskInfoBuilder = - createFullscreenTaskBuilder(displayId).setActivityStackTransparent(true).setNumActivities(1) - - /** Create a new System Modal task, i.e. a task with only transparent activities. */ - fun createSystemModalTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo = - createSystemModalTaskBuilder(displayId).build() - - /** Create a new System Modal task with a base Activity. */ - fun createSystemModalTaskWithBaseActivity() = - createSystemModalTask().apply { - baseActivity = ComponentName("com.test.dummypackage", "TestClass") +class DesktopTestHelpers { + companion object { + /** Create a task that has windowing mode set to [WINDOWING_MODE_FREEFORM] */ + @JvmStatic + @JvmOverloads + fun createFreeformTask( + displayId: Int = DEFAULT_DISPLAY, + bounds: Rect? = null + ): RunningTaskInfo { + return TestRunningTaskInfoBuilder() + .setDisplayId(displayId) + .setToken(MockToken().token()) + .setActivityType(ACTIVITY_TYPE_STANDARD) + .setWindowingMode(WINDOWING_MODE_FREEFORM) + .setLastActiveTime(100) + .apply { bounds?.let { setBounds(it) }} + .build() } - const val DEFAULT_USER_ID = 10 -} + /** Create a task that has windowing mode set to [WINDOWING_MODE_FULLSCREEN] */ + @JvmStatic + @JvmOverloads + fun createFullscreenTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo { + return TestRunningTaskInfoBuilder() + .setDisplayId(displayId) + .setToken(MockToken().token()) + .setActivityType(ACTIVITY_TYPE_STANDARD) + .setWindowingMode(WINDOWING_MODE_FULLSCREEN) + .setLastActiveTime(100) + .build() + } + + /** Create a task that has windowing mode set to [WINDOWING_MODE_MULTI_WINDOW] */ + @JvmStatic + @JvmOverloads + fun createSplitScreenTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo { + return TestRunningTaskInfoBuilder() + .setDisplayId(displayId) + .setToken(MockToken().token()) + .setActivityType(ACTIVITY_TYPE_STANDARD) + .setWindowingMode(WINDOWING_MODE_MULTI_WINDOW) + .setLastActiveTime(100) + .build() + } + + /** Create a new home task */ + @JvmStatic + @JvmOverloads + fun createHomeTask(displayId: Int = DEFAULT_DISPLAY): RunningTaskInfo { + return TestRunningTaskInfoBuilder() + .setDisplayId(displayId) + .setToken(MockToken().token()) + .setActivityType(ACTIVITY_TYPE_HOME) + .setWindowingMode(WINDOWING_MODE_FULLSCREEN) + .setLastActiveTime(100) + .build() + } + } +} \ No newline at end of file diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt index 64504a2477..bbf523bc40 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/DragToDesktopTransitionHandlerTest.kt @@ -1,6 +1,5 @@ package com.android.wm.shell.desktopmode -import android.animation.AnimatorTestRule import android.app.ActivityManager.RunningTaskInfo import android.app.WindowConfiguration.ACTIVITY_TYPE_HOME import android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD @@ -8,170 +7,84 @@ import android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN import android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW import android.app.WindowConfiguration.WindowingMode import android.graphics.PointF -import android.graphics.Rect import android.os.IBinder -import android.os.SystemProperties -import android.platform.test.annotations.DisableFlags -import android.platform.test.annotations.EnableFlags import android.testing.AndroidTestingRunner import android.testing.TestableLooper.RunWithLooper -import android.view.Display import android.view.SurfaceControl -import android.view.WindowManager.TRANSIT_OPEN import android.window.TransitionInfo import android.window.TransitionInfo.FLAG_IS_WALLPAPER import android.window.WindowContainerTransaction import androidx.test.filters.SmallTest -import com.android.dx.mockito.inline.extended.ExtendedMockito -import com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD -import com.android.internal.jank.Cuj.CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE -import com.android.internal.jank.InteractionJankMonitor -import com.android.window.flags.Flags -import com.android.window.flags.Flags.FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX import com.android.wm.shell.RootTaskDisplayAreaOrganizer import com.android.wm.shell.ShellTestCase import com.android.wm.shell.TestRunningTaskInfoBuilder -import com.android.wm.shell.bubbles.BubbleController -import com.android.wm.shell.bubbles.BubbleTransitions -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP -import com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP -import com.android.wm.shell.desktopmode.DragToDesktopTransitionHandler.CancelState -import com.android.wm.shell.desktopmode.DragToDesktopTransitionHandler.Companion.DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer -import com.android.wm.shell.shared.desktopmode.FakeDesktopState -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT +import com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT +import com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT import com.android.wm.shell.splitscreen.SplitScreenController import com.android.wm.shell.transition.Transitions +import com.android.wm.shell.transition.Transitions.TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP +import com.android.wm.shell.transition.Transitions.TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP +import com.android.wm.shell.transition.Transitions.TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP import com.android.wm.shell.windowdecor.MoveToDesktopAnimator -import com.google.common.truth.Truth.assertThat -import java.util.Optional -import java.util.function.Supplier -import junit.framework.Assert.assertEquals import junit.framework.Assert.assertFalse -import junit.framework.Assert.assertTrue import org.junit.Before -import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.mockito.ArgumentMatchers.any -import org.mockito.ArgumentMatchers.anyFloat -import org.mockito.ArgumentMatchers.anyInt -import org.mockito.ArgumentMatchers.anyLong import org.mockito.ArgumentMatchers.eq import org.mockito.Mock -import org.mockito.kotlin.anyOrNull -import org.mockito.kotlin.argThat -import org.mockito.kotlin.argumentCaptor import org.mockito.kotlin.mock import org.mockito.kotlin.never import org.mockito.kotlin.times import org.mockito.kotlin.verify -import org.mockito.kotlin.verifyNoMoreInteractions +import org.mockito.kotlin.verifyZeroInteractions import org.mockito.kotlin.whenever -import org.mockito.quality.Strictness +import java.util.function.Supplier /** Tests of [DragToDesktopTransitionHandler]. */ @SmallTest @RunWithLooper @RunWith(AndroidTestingRunner::class) class DragToDesktopTransitionHandlerTest : ShellTestCase() { - @JvmField @Rule val mAnimatorTestRule = AnimatorTestRule(this) @Mock private lateinit var transitions: Transitions @Mock private lateinit var taskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer - @Mock private lateinit var desksOrganizer: DesksOrganizer @Mock private lateinit var splitScreenController: SplitScreenController @Mock private lateinit var dragAnimator: MoveToDesktopAnimator - @Mock private lateinit var mockInteractionJankMonitor: InteractionJankMonitor - @Mock private lateinit var draggedTaskLeash: SurfaceControl - @Mock private lateinit var homeTaskLeash: SurfaceControl - @Mock private lateinit var wallpaperLeash: SurfaceControl - @Mock private lateinit var desktopUserRepositories: DesktopUserRepositories - @Mock private lateinit var bubbleController: BubbleController - @Mock private lateinit var visualIndicator: DesktopModeVisualIndicator - @Mock private lateinit var dragCancelCallback: Runnable - @Mock - private lateinit var dragToDesktopStateListener: - DragToDesktopTransitionHandler.DragToDesktopStateListener - private lateinit var desktopState: FakeDesktopState - private val transactionSupplier = Supplier { - val transaction = mock<SurfaceControl.Transaction>() - whenever(transaction.setAlpha(any(), anyFloat())).thenReturn(transaction) - whenever(transaction.setFrameTimeline(anyLong())).thenReturn(transaction) - transaction - } + private val transactionSupplier = Supplier { mock<SurfaceControl.Transaction>() } - private lateinit var defaultHandler: DragToDesktopTransitionHandler - private lateinit var springHandler: SpringDragToDesktopTransitionHandler + private lateinit var handler: DragToDesktopTransitionHandler @Before fun setUp() { - desktopState = FakeDesktopState() - desktopState.canEnterDesktopMode = true - defaultHandler = - DefaultDragToDesktopTransitionHandler( + handler = + DragToDesktopTransitionHandler( context, transitions, taskDisplayAreaOrganizer, - desksOrganizer, - desktopUserRepositories, - mockInteractionJankMonitor, - Optional.of(bubbleController), - transactionSupplier, - desktopState, + transactionSupplier ) - .apply { - setSplitScreenController(splitScreenController) - dragToDesktopStateListener = - this@DragToDesktopTransitionHandlerTest.dragToDesktopStateListener - } - springHandler = - SpringDragToDesktopTransitionHandler( - context, - transitions, - taskDisplayAreaOrganizer, - desksOrganizer, - desktopUserRepositories, - mockInteractionJankMonitor, - Optional.of(bubbleController), - transactionSupplier, - desktopState, - ) - .apply { - setSplitScreenController(splitScreenController) - dragToDesktopStateListener = - this@DragToDesktopTransitionHandlerTest.dragToDesktopStateListener - } - whenever( - transitions.startTransition( - eq(TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP), - /* wct= */ any(), - eq(defaultHandler), - ) - ) - .thenReturn(mock<IBinder>()) + .apply { setSplitScreenController(splitScreenController) } } @Test fun startDragToDesktop_animateDragWhenReady() { val task = createTask() // Simulate transition is started. - val transition = startDragToDesktopTransition(defaultHandler, task, dragAnimator) + val transition = startDragToDesktopTransition(task, dragAnimator) // Now it's ready to animate. - defaultHandler.startAnimation( + handler.startAnimation( transition = transition, info = createTransitionInfo( type = TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP, - draggedTask = task, + draggedTask = task ), startTransaction = mock(), finishTransaction = mock(), - finishCallback = {}, + finishCallback = {} ) verify(dragAnimator).startAnimation() @@ -179,108 +92,65 @@ class DragToDesktopTransitionHandlerTest : ShellTestCase() { @Test fun startDragToDesktop_cancelledBeforeReady_startCancelTransition() { - performEarlyCancel( - defaultHandler, - DragToDesktopTransitionHandler.CancelState.STANDARD_CANCEL, - ) + performEarlyCancel(DragToDesktopTransitionHandler.CancelState.STANDARD_CANCEL) verify(transitions) - .startTransition( - eq(TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP), - any(), - eq(defaultHandler), - ) + .startTransition(eq(TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP), any(), eq(handler)) } @Test fun startDragToDesktop_cancelledBeforeReady_verifySplitLeftCancel() { - performEarlyCancel( - defaultHandler, - DragToDesktopTransitionHandler.CancelState.CANCEL_SPLIT_LEFT, + performEarlyCancel(DragToDesktopTransitionHandler.CancelState.CANCEL_SPLIT_LEFT) + verify(splitScreenController).requestEnterSplitSelect( + any(), + any(), + eq(SPLIT_POSITION_TOP_OR_LEFT), + any() ) - verify(splitScreenController) - .requestEnterSplitSelect( - /* taskInfo = */ any(), - /* splitPosition = */ eq(SPLIT_POSITION_TOP_OR_LEFT), - /* taskBounds = */ any(), - /* startRecents = */ eq(false), // Home already running, so recents isn't needed. - /* withRecentsWct = */ anyOrNull(), - ) } @Test fun startDragToDesktop_cancelledBeforeReady_verifySplitRightCancel() { - performEarlyCancel( - defaultHandler, - DragToDesktopTransitionHandler.CancelState.CANCEL_SPLIT_RIGHT, + performEarlyCancel(DragToDesktopTransitionHandler.CancelState.CANCEL_SPLIT_RIGHT) + verify(splitScreenController).requestEnterSplitSelect( + any(), + any(), + eq(SPLIT_POSITION_BOTTOM_OR_RIGHT), + any() ) - verify(splitScreenController) - .requestEnterSplitSelect( - /* taskInfo = */ any(), - /* splitPosition = */ eq(SPLIT_POSITION_BOTTOM_OR_RIGHT), - /* taskBounds = */ any(), - /* startRecents = */ eq(false), // Home already running, so recents isn't needed. - /* withRecentsWct = */ anyOrNull(), - ) - } - - @Test - fun startDragToDesktop_cancelledBeforeReady_verifyBubbleLeftCancel() { - performEarlyCancel( - defaultHandler, - DragToDesktopTransitionHandler.CancelState.CANCEL_BUBBLE_LEFT, - ) - verify(bubbleController) - .expandStackAndSelectBubble( - any<RunningTaskInfo>(), - argThat<BubbleTransitions.DragData> { isReleasedOnLeft }, - ) - } - - @Test - fun startDragToDesktop_cancelledBeforeReady_verifyBubbleRightCancel() { - performEarlyCancel( - defaultHandler, - DragToDesktopTransitionHandler.CancelState.CANCEL_BUBBLE_RIGHT, - ) - verify(bubbleController) - .expandStackAndSelectBubble( - any<RunningTaskInfo>(), - argThat<BubbleTransitions.DragData> { !isReleasedOnLeft }, - ) } @Test fun startDragToDesktop_aborted_finishDropped() { val task = createTask() // Simulate transition is started. - val transition = startDragToDesktopTransition(defaultHandler, task, dragAnimator) + val transition = startDragToDesktopTransition(task, dragAnimator) // But the transition was aborted. - defaultHandler.onTransitionConsumed(transition, aborted = true, mock()) + handler.onTransitionConsumed(transition, aborted = true, mock()) // Attempt to finish the failed drag start. - defaultHandler.finishDragToDesktopTransition(WindowContainerTransaction()) + handler.finishDragToDesktopTransition(WindowContainerTransaction()) // Should not be attempted and state should be reset. verify(transitions, never()) - .startTransition(eq(TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP), any(), any()) - assertFalse(defaultHandler.inProgress) + .startTransition(eq(TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP), any(), any()) + assertFalse(handler.inProgress) } @Test fun startDragToDesktop_aborted_cancelDropped() { val task = createTask() // Simulate transition is started. - val transition = startDragToDesktopTransition(defaultHandler, task, dragAnimator) + val transition = startDragToDesktopTransition(task, dragAnimator) // But the transition was aborted. - defaultHandler.onTransitionConsumed(transition, aborted = true, mock()) + handler.onTransitionConsumed(transition, aborted = true, mock()) // Attempt to finish the failed drag start. - defaultHandler.cancelDragToDesktopTransition( + handler.cancelDragToDesktopTransition( DragToDesktopTransitionHandler.CancelState.STANDARD_CANCEL ) // Should not be attempted and state should be reset. - assertFalse(defaultHandler.inProgress) + assertFalse(handler.inProgress) } @Test @@ -288,946 +158,161 @@ class DragToDesktopTransitionHandlerTest : ShellTestCase() { val task = createTask() // Simulate attempt to start two drag to desktop transitions. - startDragToDesktopTransition(defaultHandler, task, dragAnimator) - startDragToDesktopTransition(defaultHandler, task, dragAnimator) + startDragToDesktopTransition(task, dragAnimator) + startDragToDesktopTransition(task, dragAnimator) // Verify transition only started once. - verify(transitions, times(1)) - .startTransition( + verify(transitions, times(1)).startTransition( eq(TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP), any(), - eq(defaultHandler), - ) + eq(handler) + ) } @Test - fun isHomeChange_withoutTaskInfo_returnsFalse() { - val change = - TransitionInfo.Change(mock(), homeTaskLeash).apply { - parent = null - taskInfo = null - } - - assertFalse(defaultHandler.isHomeChange(change)) - assertFalse(springHandler.isHomeChange(change)) - } - - @Test - fun isHomeChange_withStandardActivityTaskInfo_returnsFalse() { - val change = - TransitionInfo.Change(mock(), homeTaskLeash).apply { - parent = null - taskInfo = - TestRunningTaskInfoBuilder().setActivityType(ACTIVITY_TYPE_STANDARD).build() - } - - assertFalse(defaultHandler.isHomeChange(change)) - assertFalse(springHandler.isHomeChange(change)) - } - - @Test - fun isHomeChange_withHomeActivityTaskInfo_returnsTrue() { - val change = - TransitionInfo.Change(mock(), homeTaskLeash).apply { - parent = null - taskInfo = TestRunningTaskInfoBuilder().setActivityType(ACTIVITY_TYPE_HOME).build() - } - - assertTrue(defaultHandler.isHomeChange(change)) - assertTrue(springHandler.isHomeChange(change)) - } - - @Test - fun isHomeChange_withSingleTranslucentHomeActivityTaskInfo_returnsFalse() { - val change = - TransitionInfo.Change(mock(), homeTaskLeash).apply { - parent = null - taskInfo = - TestRunningTaskInfoBuilder() - .setActivityType(ACTIVITY_TYPE_HOME) - .setTopActivityTransparent(true) - .setNumActivities(1) - .build() - } - - assertFalse(defaultHandler.isHomeChange(change)) - assertFalse(springHandler.isHomeChange(change)) - } - - @Test - fun cancelDragToDesktop_startWasReady_cancel_merged() { - val startToken = startDrag(defaultHandler) + fun cancelDragToDesktop_startWasReady_cancel() { + startDrag() // Then user cancelled after it had already started. - val cancelToken = - cancelDragToDesktopTransition( - defaultHandler, - DragToDesktopTransitionHandler.CancelState.STANDARD_CANCEL, - ) - defaultHandler.mergeAnimation( - cancelToken, - TransitionInfo(TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP, 0), - mock<SurfaceControl.Transaction>(), - mock<SurfaceControl.Transaction>(), - startToken, - mock<Transitions.TransitionFinishCallback>(), + handler.cancelDragToDesktopTransition( + DragToDesktopTransitionHandler.CancelState.STANDARD_CANCEL ) // Cancel animation should run since it had already started. verify(dragAnimator).cancelAnimator() - assertFalse("Drag should not be in progress after cancelling", defaultHandler.inProgress) - } - - @Test - fun cancelDragToDesktop_startWasReady_cancel_aborted() { - val startToken = startDrag(defaultHandler) - - // Then user cancelled after it had already started. - val cancelToken = - cancelDragToDesktopTransition( - defaultHandler, - DragToDesktopTransitionHandler.CancelState.STANDARD_CANCEL, - ) - defaultHandler.onTransitionConsumed(cancelToken, aborted = true, null) - - // Cancel animation should run since it had already started. - verify(dragAnimator).cancelAnimator() - assertFalse("Drag should not be in progress after cancelling", defaultHandler.inProgress) } @Test fun cancelDragToDesktop_splitLeftCancelType_splitRequested() { - startDrag(defaultHandler) + startDrag() // Then user cancelled it, requesting split. - defaultHandler.cancelDragToDesktopTransition( + handler.cancelDragToDesktopTransition( DragToDesktopTransitionHandler.CancelState.CANCEL_SPLIT_LEFT ) // Verify the request went through split controller. - verify(splitScreenController) - .requestEnterSplitSelect( - /* taskInfo = */ any(), - /* splitPosition = */ eq(SPLIT_POSITION_TOP_OR_LEFT), - /* taskBounds = */ any(), - /* startRecents = */ eq(false), // Home already running, so recents isn't needed. - /* withRecentsWct = */ anyOrNull(), - ) + verify(splitScreenController).requestEnterSplitSelect( + any(), + any(), + eq(SPLIT_POSITION_TOP_OR_LEFT), + any() + ) } @Test fun cancelDragToDesktop_splitRightCancelType_splitRequested() { - startDrag(defaultHandler) + startDrag() // Then user cancelled it, requesting split. - defaultHandler.cancelDragToDesktopTransition( + handler.cancelDragToDesktopTransition( DragToDesktopTransitionHandler.CancelState.CANCEL_SPLIT_RIGHT ) // Verify the request went through split controller. - verify(splitScreenController) - .requestEnterSplitSelect( - /* taskInfo = */ any(), - /* splitPosition = */ eq(SPLIT_POSITION_BOTTOM_OR_RIGHT), - /* taskBounds = */ any(), - /* startRecents = */ eq(false), // Home already running, so recents isn't needed. - /* withRecentsWct = */ anyOrNull(), - ) - } - - @Test - fun cancelDragToDesktop_bubbleLeftCancelType_bubbleRequested() { - startDrag(defaultHandler) - - // Then user cancelled it, requesting bubble. - defaultHandler.cancelDragToDesktopTransition( - DragToDesktopTransitionHandler.CancelState.CANCEL_BUBBLE_LEFT + verify(splitScreenController).requestEnterSplitSelect( + any(), + any(), + eq(SPLIT_POSITION_BOTTOM_OR_RIGHT), + any() ) - - // Verify the request went through bubble controller. - verify(bubbleController) - .expandStackAndSelectBubble( - any<RunningTaskInfo>(), - argThat<BubbleTransitions.DragData> { isReleasedOnLeft }, - ) - } - - @Test - fun cancelDragToDesktop_bubbleRightCancelType_bubbleRequested() { - startDrag(defaultHandler) - - // Then user cancelled it, requesting bubble. - defaultHandler.cancelDragToDesktopTransition( - DragToDesktopTransitionHandler.CancelState.CANCEL_BUBBLE_RIGHT - ) - - // Verify the request went through bubble controller. - verify(bubbleController) - .expandStackAndSelectBubble( - any<RunningTaskInfo>(), - argThat<BubbleTransitions.DragData> { !isReleasedOnLeft }, - ) } @Test fun cancelDragToDesktop_startWasNotReady_animateCancel() { val task = createTask() // Simulate transition is started and is ready to animate. - startDragToDesktopTransition(defaultHandler, task, dragAnimator) + startDragToDesktopTransition(task, dragAnimator) // Then user cancelled before the transition was ready and animated. - defaultHandler.cancelDragToDesktopTransition( + handler.cancelDragToDesktopTransition( DragToDesktopTransitionHandler.CancelState.STANDARD_CANCEL ) // No need to animate the cancel since the start animation couldn't even start. - verifyNoMoreInteractions(dragAnimator) + verifyZeroInteractions(dragAnimator) } @Test fun cancelDragToDesktop_transitionNotInProgress_dropCancel() { // Then cancel is called before the transition was started. - defaultHandler.cancelDragToDesktopTransition( + handler.cancelDragToDesktopTransition( DragToDesktopTransitionHandler.CancelState.STANDARD_CANCEL ) // Verify cancel is dropped. - verify(transitions, never()) - .startTransition( + verify(transitions, never()).startTransition( eq(TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP), any(), - eq(defaultHandler), - ) + eq(handler) + ) } @Test fun finishDragToDesktop_transitionNotInProgress_dropFinish() { // Then finish is called before the transition was started. - defaultHandler.finishDragToDesktopTransition(WindowContainerTransaction()) + handler.finishDragToDesktopTransition(WindowContainerTransaction()) // Verify finish is dropped. - verify(transitions, never()) - .startTransition( + verify(transitions, never()).startTransition( eq(TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP), any(), - eq(defaultHandler), - ) + eq(handler) + ) } - @Test - fun mergeAnimation_otherTransition_doesNotMerge() { - val mergedStartTransaction = mock<SurfaceControl.Transaction>() - val mergedFinishTransaction = mock<SurfaceControl.Transaction>() - val finishCallback = mock<Transitions.TransitionFinishCallback>() + private fun startDrag() { val task = createTask() - - startDrag(defaultHandler, task) - defaultHandler.mergeAnimation( - transition = mock<IBinder>(), - info = createTransitionInfo(type = TRANSIT_OPEN, draggedTask = task), - startT = mergedStartTransaction, - finishT = mergedFinishTransaction, - mergeTarget = mock<IBinder>(), - finishCallback = finishCallback, - ) - - // Should NOT have any transaction changes - verifyNoMoreInteractions(mergedStartTransaction) - // Should NOT merge animation - verify(finishCallback, never()).onTransitionFinished(any()) - } - - @Test - fun mergeAnimation_endTransition_mergesAnimation() { - val playingFinishTransaction = mock<SurfaceControl.Transaction>() - val mergedStartTransaction = mock<SurfaceControl.Transaction>() - val mergedFinishTransaction = mock<SurfaceControl.Transaction>() - val finishCallback = mock<Transitions.TransitionFinishCallback>() - val task = createTask() - val startTransition = - startDrag(defaultHandler, task, finishTransaction = playingFinishTransaction) - defaultHandler.onTaskResizeAnimationListener = mock() - - defaultHandler.mergeAnimation( - transition = mock<IBinder>(), - info = - createTransitionInfo( - type = TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, - draggedTask = task, - ), - startT = mergedStartTransaction, - finishT = mergedFinishTransaction, - mergeTarget = startTransition, - finishCallback = finishCallback, - ) - - // Should show dragged task layer in start and finish transaction - verify(mergedStartTransaction).show(draggedTaskLeash) - verify(playingFinishTransaction).show(draggedTaskLeash) - // Should update the dragged task layer - verify(mergedStartTransaction).setLayer(eq(draggedTaskLeash), anyInt()) - // Should merge animation - verify(finishCallback).onTransitionFinished(null) - } - - @Test - fun mergeAnimation_endTransition_hasDeskChange_doesNotMoveBehindDraggedTask() { - val playingFinishTransaction = mock<SurfaceControl.Transaction>() - val mergedStartTransaction = mock<SurfaceControl.Transaction>() - val mergedFinishTransaction = mock<SurfaceControl.Transaction>() - val finishCallback = mock<Transitions.TransitionFinishCallback>() - val deskChange = createDeskChange() - val task = createTask() - val startTransition = - startDrag(defaultHandler, task, finishTransaction = playingFinishTransaction) - defaultHandler.onTaskResizeAnimationListener = mock() - whenever(desksOrganizer.isDeskChange(deskChange)).thenReturn(true) - - defaultHandler.mergeAnimation( - transition = mock<IBinder>(), - info = - createTransitionInfo( - type = TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, - draggedTask = task, - deskChange = deskChange, - ), - startT = mergedStartTransaction, - finishT = mergedFinishTransaction, - mergeTarget = startTransition, - finishCallback = finishCallback, - ) - - // Don't move the desk leash back, or it will take the dragged task with it. - verify(mergedStartTransaction, never()) - .setRelativeLayer(eq(deskChange.leash), eq(draggedTaskLeash), anyInt()) - verify(playingFinishTransaction, never()) - .setRelativeLayer(eq(deskChange.leash), eq(draggedTaskLeash), anyInt()) - } - - @Test - fun mergeAnimation_endTransition_springHandler_hidesHome() { - whenever(dragAnimator.computeCurrentVelocity()).thenReturn(PointF()) - val playingFinishTransaction = mock<SurfaceControl.Transaction>() - val mergedStartTransaction = mock<SurfaceControl.Transaction>() - val mergedFinishTransaction = mock<SurfaceControl.Transaction>() - val finishCallback = mock<Transitions.TransitionFinishCallback>() - val task = createTask() - val startTransition = - startDrag(springHandler, task, finishTransaction = playingFinishTransaction) - springHandler.onTaskResizeAnimationListener = mock() - - springHandler.mergeAnimation( - transition = mock<IBinder>(), - info = - createTransitionInfo( - type = TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, - draggedTask = task, - ), - startT = mergedStartTransaction, - finishT = mergedFinishTransaction, - mergeTarget = startTransition, - finishCallback = finishCallback, - ) - - // Should show dragged task layer in start and finish transaction - verify(mergedStartTransaction).show(draggedTaskLeash) - verify(playingFinishTransaction).show(draggedTaskLeash) - // Should update the dragged task layer - verify(mergedStartTransaction).setLayer(eq(draggedTaskLeash), anyInt()) - // Should hide home task leash in finish transaction - verify(playingFinishTransaction).hide(homeTaskLeash) - // Should merge animation - verify(finishCallback).onTransitionFinished(null) - } - - @Test - fun mergeAnimation_endTransition_springHandler_noStartHomeChange_doesntCrash() { - whenever(dragAnimator.computeCurrentVelocity()).thenReturn(PointF()) - val playingFinishTransaction = mock<SurfaceControl.Transaction>() - val mergedStartTransaction = mock<SurfaceControl.Transaction>() - val mergedFinishTransaction = mock<SurfaceControl.Transaction>() - val finishCallback = mock<Transitions.TransitionFinishCallback>() - val task = createTask() - val startTransition = - startDrag( - springHandler, - task, - finishTransaction = playingFinishTransaction, - homeChange = null, - ) - springHandler.onTaskResizeAnimationListener = mock() - - springHandler.mergeAnimation( - transition = mock<IBinder>(), - info = - createTransitionInfo( - type = TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, - draggedTask = task, - ), - startT = mergedStartTransaction, - finishT = mergedFinishTransaction, - mergeTarget = startTransition, - finishCallback = finishCallback, - ) - - // Should show dragged task layer in start and finish transaction - verify(mergedStartTransaction).show(draggedTaskLeash) - verify(playingFinishTransaction).show(draggedTaskLeash) - // Should update the dragged task layer - verify(mergedStartTransaction).setLayer(eq(draggedTaskLeash), anyInt()) - // Should merge animation - verify(finishCallback).onTransitionFinished(null) - } - - @Test - fun propertyValue_returnsSystemPropertyValue() { - val mockitoSession = - ExtendedMockito.mockitoSession() - .strictness(Strictness.LENIENT) - .mockStatic(SystemProperties::class.java) - .startMocking() - - val name = "property_name" - val value = 10f - - whenever(SystemProperties.getInt(eq(systemPropertiesKey(name)), anyInt())) - .thenReturn(value.toInt()) - - assertEquals( - "Expects to return system properties stored value", - /* expected= */ value, - /* actual= */ SpringDragToDesktopTransitionHandler.propertyValue(name), - ) - - mockitoSession.finishMocking() - } - - @Test - fun propertyValue_withScale_returnsScaledSystemPropertyValue() { - val mockitoSession = - ExtendedMockito.mockitoSession() - .strictness(Strictness.LENIENT) - .mockStatic(SystemProperties::class.java) - .startMocking() - - val name = "property_name" - val value = 10f - val scale = 100f - - whenever(SystemProperties.getInt(eq(systemPropertiesKey(name)), anyInt())) - .thenReturn(value.toInt()) - - assertEquals( - "Expects to return scaled system properties stored value", - /* expected= */ value / scale, - /* actual= */ SpringDragToDesktopTransitionHandler.propertyValue(name, scale = scale), - ) - - mockitoSession.finishMocking() - } - - @Test - fun propertyValue_notSet_returnsDefaultValue() { - val mockitoSession = - ExtendedMockito.mockitoSession() - .strictness(Strictness.LENIENT) - .mockStatic(SystemProperties::class.java) - .startMocking() - - val name = "property_name" - val defaultValue = 50f - - whenever(SystemProperties.getInt(eq(systemPropertiesKey(name)), eq(defaultValue.toInt()))) - .thenReturn(defaultValue.toInt()) - - assertEquals( - "Expects to return the default value", - /* expected= */ defaultValue, - /* actual= */ SpringDragToDesktopTransitionHandler.propertyValue( - name, - default = defaultValue, - ), - ) - - mockitoSession.finishMocking() - } - - @Test - fun propertyValue_withScaleNotSet_returnsDefaultValue() { - val mockitoSession = - ExtendedMockito.mockitoSession() - .strictness(Strictness.LENIENT) - .mockStatic(SystemProperties::class.java) - .startMocking() - - val name = "property_name" - val defaultValue = 0.5f - val scale = 100f - // Default value is multiplied when provided as a default value for [SystemProperties] - val scaledDefault = (defaultValue * scale).toInt() - - whenever(SystemProperties.getInt(eq(systemPropertiesKey(name)), eq(scaledDefault))) - .thenReturn(scaledDefault) - - assertEquals( - "Expects to return the default value", - /* expected= */ defaultValue, - /* actual= */ SpringDragToDesktopTransitionHandler.propertyValue( - name, - default = defaultValue, - scale = scale, - ), - ) - - mockitoSession.finishMocking() - } - - @Test - fun startDragToDesktop_aborted_logsDragHoldCancelled() { - val transition = startDragToDesktopTransition(defaultHandler, createTask(), dragAnimator) - - defaultHandler.onTransitionConsumed(transition, aborted = true, mock()) - - verify(mockInteractionJankMonitor).cancel(eq(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD)) - verify(mockInteractionJankMonitor, times(0)) - .cancel(eq(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE)) - } - - @Test - fun mergeEndDragToDesktop_aborted_logsDragReleaseCancelled() { - val task = createTask() - val startTransition = startDrag(defaultHandler, task) - val endTransition = mock<IBinder>() - defaultHandler.onTaskResizeAnimationListener = mock() - mergeAnimation( - transition = endTransition, - type = TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, - task = task, - mergeTarget = startTransition, - ) - - defaultHandler.onTransitionConsumed(endTransition, aborted = true, mock()) - - verify(mockInteractionJankMonitor) - .cancel(eq(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_RELEASE)) - verify(mockInteractionJankMonitor, times(0)) - .cancel(eq(CUJ_DESKTOP_MODE_ENTER_APP_HANDLE_DRAG_HOLD)) - } - - @Test - @DisableFlags(FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX) - fun mergeOtherTransition_flagDisabled_cancelAndEndNotYetRequested_doesNotInterruptStartDrag() { - val finishCallback = mock<Transitions.TransitionFinishCallback>() - val task = createTask() - defaultHandler.onTaskResizeAnimationListener = mock() - val startTransition = startDrag(defaultHandler, task, finishCallback = finishCallback) - - mergeInterruptingTransition(mergeTarget = startTransition) - - verify(finishCallback, never()).onTransitionFinished(anyOrNull()) - verify(dragAnimator, never()).cancelAnimator() - } - - @Test - @EnableFlags(FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX) - fun mergeOtherTransition_cancelAndEndNotYetRequested_interruptsStartDrag() { - val finishCallback = mock<Transitions.TransitionFinishCallback>() - val task = createTask() - defaultHandler.onTaskResizeAnimationListener = mock() - val startTransition = startDrag(defaultHandler, task, finishCallback = finishCallback) - - mergeInterruptingTransition(mergeTarget = startTransition) - - verify(dragAnimator).cancelAnimator() - verify(dragCancelCallback).run() - verify(dragToDesktopStateListener).onTransitionInterrupted() - assertThat(defaultHandler.inProgress).isTrue() - // Doesn't finish start transition yet - verify(finishCallback, never()).onTransitionFinished(/* wct= */ anyOrNull()) - } - - @Test - @EnableFlags(FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX) - fun mergeOtherTransition_cancelAndEndNotYetRequested_finishesStartAfterAnimation() { - val finishCallback = mock<Transitions.TransitionFinishCallback>() - val task = createTask() - defaultHandler.onTaskResizeAnimationListener = mock() - val startTransition = startDrag(defaultHandler, task, finishCallback = finishCallback) - - mergeInterruptingTransition(mergeTarget = startTransition) - mAnimatorTestRule.advanceTimeBy(DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS) - - verify(finishCallback).onTransitionFinished(/* wct= */ anyOrNull()) - assertThat(defaultHandler.inProgress).isFalse() - } - - @Test - @EnableFlags(FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX) - fun mergeOtherTransition_endDragAlreadyMerged_doesNotInterruptStartDrag() { - val startDragFinishCallback = mock<Transitions.TransitionFinishCallback>() - val task = createTask() - val startTransition = - startDrag(defaultHandler, task, finishCallback = startDragFinishCallback) - defaultHandler.onTaskResizeAnimationListener = mock() - mergeAnimation( - type = TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, - task = task, - mergeTarget = startTransition, - ) - - mergeInterruptingTransition(mergeTarget = startTransition) - - verify(startDragFinishCallback, never()).onTransitionFinished(anyOrNull()) - } - - @Test - @EnableFlags(FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX) - fun startEndAnimation_otherTransitionInterruptedStartAfterEndRequest_finishImmediately() { - val task1 = createTask() - val startTransition = startDrag(defaultHandler, task1) - val endTransition = - defaultHandler.finishDragToDesktopTransition(WindowContainerTransaction()) - val startTransaction = mock<SurfaceControl.Transaction>() - val endDragFinishCallback = mock<Transitions.TransitionFinishCallback>() - defaultHandler.onTaskResizeAnimationListener = mock() - mergeInterruptingTransition(mergeTarget = startTransition) - - val didAnimate = - defaultHandler.startAnimation( - transition = requireNotNull(endTransition), - info = - createTransitionInfo( - type = TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, - draggedTask = task1, - ), - startTransaction = startTransaction, - finishTransaction = mock(), - finishCallback = endDragFinishCallback, - ) - - assertThat(didAnimate).isTrue() - verify(startTransaction).apply() - verify(endDragFinishCallback).onTransitionFinished(anyOrNull()) - } - - @Test - @EnableFlags(FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX) - fun startDrag_otherTransitionInterruptedStartAfterEndRequested_animatesDragWhenReady() { - val task1 = createTask() - val startTransition = startDrag(defaultHandler, task1) - verify(dragAnimator).startAnimation() - val endTransition = - defaultHandler.finishDragToDesktopTransition(WindowContainerTransaction()) - defaultHandler.onTaskResizeAnimationListener = mock() - mergeInterruptingTransition(mergeTarget = startTransition) - defaultHandler.startAnimation( - transition = requireNotNull(endTransition), - info = - createTransitionInfo( - type = TRANSIT_DESKTOP_MODE_END_DRAG_TO_DESKTOP, - draggedTask = task1, - ), - startTransaction = mock(), - finishTransaction = mock(), - finishCallback = mock(), - ) - - startDrag(defaultHandler, createTask()) - - verify(dragAnimator, times(2)).startAnimation() - } - - @Test - @EnableFlags(FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX) - fun startCancelAnimation_otherTransitionInterruptingAfterCancelRequest_finishImmediately() { - val task1 = createTask() - val startTransition = startDrag(defaultHandler, task1) - val cancelTransition = - cancelDragToDesktopTransition(defaultHandler, CancelState.STANDARD_CANCEL) - mergeInterruptingTransition(mergeTarget = startTransition) - val cancelFinishCallback = mock<Transitions.TransitionFinishCallback>() - val startTransaction = mock<SurfaceControl.Transaction>() - - val didAnimate = - defaultHandler.startAnimation( - transition = requireNotNull(cancelTransition), - info = - createTransitionInfo( - type = TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP, - draggedTask = task1, - ), - startTransaction = startTransaction, - finishTransaction = mock(), - finishCallback = cancelFinishCallback, - ) - - assertThat(didAnimate).isTrue() - verify(startTransaction).apply() - verify(cancelFinishCallback).onTransitionFinished(/* wct= */ anyOrNull()) - } - - private fun mergeInterruptingTransition(mergeTarget: IBinder) { - defaultHandler.mergeAnimation( - transition = mock<IBinder>(), - info = createTransitionInfo(type = TRANSIT_OPEN, draggedTask = createTask()), - startT = mock(), - finishT = mock(), - mergeTarget = mergeTarget, - finishCallback = mock(), - ) - } - - private fun mergeAnimation( - transition: IBinder = mock(), - type: Int, - mergeTarget: IBinder, - task: RunningTaskInfo, - ) { - defaultHandler.mergeAnimation( - transition = transition, - info = createTransitionInfo(type = type, draggedTask = task), - startT = mock(), - finishT = mock(), - mergeTarget = mergeTarget, - finishCallback = mock(), - ) - } - - @Test - fun getAnimationFraction_returnsFraction() { - val fraction = - SpringDragToDesktopTransitionHandler.getAnimationFraction( - startBounds = Rect(0, 0, 0, 0), - endBounds = Rect(0, 0, 10, 10), - animBounds = Rect(0, 0, 5, 5), - ) - assertThat(fraction).isWithin(TOLERANCE).of(0.5f) - } - - @Test - fun getAnimationFraction_animBoundsSameAsEnd_returnsOne() { - val fraction = - SpringDragToDesktopTransitionHandler.getAnimationFraction( - startBounds = Rect(0, 0, 0, 0), - endBounds = Rect(0, 0, 10, 10), - animBounds = Rect(0, 0, 10, 10), - ) - assertThat(fraction).isWithin(TOLERANCE).of(1f) - } - - @Test - fun getAnimationFraction_startAndEndBoundsSameWidth_usesHeight() { - val fraction = - SpringDragToDesktopTransitionHandler.getAnimationFraction( - startBounds = Rect(0, 0, 10, 10), - endBounds = Rect(0, 0, 10, 30), - animBounds = Rect(0, 0, 10, 25), - ) - assertThat(fraction).isWithin(TOLERANCE).of(0.75f) - } - - @Test - fun getAnimationFraction_startAndEndBoundsSame_returnsZero() { - val fraction = - SpringDragToDesktopTransitionHandler.getAnimationFraction( - startBounds = Rect(0, 0, 10, 10), - endBounds = Rect(0, 0, 10, 10), - animBounds = Rect(0, 0, 10, 25), - ) - assertThat(fraction).isWithin(TOLERANCE).of(0f) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX) - fun startDrag_indicatorFlagEnabled_attachesIndicatorToTransitionRoot() { - val task = createTask() - val rootLeash = mock<SurfaceControl>() - val startTransaction = mock<SurfaceControl.Transaction>() - startDrag( - defaultHandler, - task, - startTransaction = startTransaction, - transitionRootLeash = rootLeash, - ) - - verify(visualIndicator).reparentLeash(startTransaction, rootLeash) - verify(visualIndicator).fadeInIndicator() - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_VISUAL_INDICATOR_IN_TRANSITION_BUGFIX) - fun startDrag_indicatorFlagDisabled_doesNotAttachIndicatorToTransitionRoot() { - val task = createTask() - val rootLeash = mock<SurfaceControl>() - val startTransaction = mock<SurfaceControl.Transaction>() - startDrag( - defaultHandler, - task, - startTransaction = startTransaction, - transitionRootLeash = rootLeash, - ) - - verify(visualIndicator, never()).reparentLeash(any(), any()) - verify(visualIndicator, never()).fadeInIndicator() - } - - @Test - fun startDrag_hasDesktop_layerOrder_taskOnWallpaperOnHome() { - desktopState.overrideDesktopModeSupportPerDisplay[Display.DEFAULT_DISPLAY] = true - val task = createTask() - val rootLeash = mock<SurfaceControl>() - val startTransaction = mock<SurfaceControl.Transaction>() - startDrag( - defaultHandler, - task, - startTransaction = startTransaction, - transitionRootLeash = rootLeash, - ) - - val draggedTaskLayer = - argumentCaptor<Int> { - verify(startTransaction).setLayer(eq(draggedTaskLeash), capture()) - } - .firstValue - val wallpaperLayer = - argumentCaptor<Int> { verify(startTransaction).setLayer(eq(wallpaperLeash), capture()) } - .firstValue - val homeLayer = - argumentCaptor<Int> { verify(startTransaction).setLayer(eq(homeTaskLeash), capture()) } - .firstValue - - // dragged task -> wallpaper -> home - assertThat(draggedTaskLayer).isGreaterThan(wallpaperLayer) - assertThat(wallpaperLayer).isGreaterThan(homeLayer) - } - - @Test - @EnableFlags( - com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, - com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE, - ) - fun startDrag_noDesktop_layerOrder_taskOnHomeOnWallpaper() { - mContext.orCreateTestableResources.addOverride( - com.android.internal.R.bool.config_canInternalDisplayHostDesktops, - false, - ) - desktopState.overrideDesktopModeSupportPerDisplay[Display.DEFAULT_DISPLAY] = false - val task = createTask() - val rootLeash = mock<SurfaceControl>() - val startTransaction = mock<SurfaceControl.Transaction>() - startDrag( - defaultHandler, - task, - startTransaction = startTransaction, - transitionRootLeash = rootLeash, - ) - - val draggedTaskLayer = - argumentCaptor<Int> { - verify(startTransaction).setLayer(eq(draggedTaskLeash), capture()) - } - .firstValue - val homeLayer = - argumentCaptor<Int> { verify(startTransaction).setLayer(eq(homeTaskLeash), capture()) } - .firstValue - val wallpaperLayer = - argumentCaptor<Int> { verify(startTransaction).setLayer(eq(wallpaperLeash), capture()) } - .firstValue - - // dragged task -> home -> wallpaper - assertThat(draggedTaskLayer).isGreaterThan(homeLayer) - assertThat(homeLayer).isGreaterThan(wallpaperLayer) - } - - private fun startDrag( - handler: DragToDesktopTransitionHandler, - task: RunningTaskInfo = createTask(), - startTransaction: SurfaceControl.Transaction = mock(), - finishTransaction: SurfaceControl.Transaction = mock(), - homeChange: TransitionInfo.Change? = createHomeChange(), - transitionRootLeash: SurfaceControl = mock(), - finishCallback: Transitions.TransitionFinishCallback = mock(), - ): IBinder { whenever(dragAnimator.position).thenReturn(PointF()) // Simulate transition is started and is ready to animate. - val transition = startDragToDesktopTransition(handler, task, dragAnimator) + val transition = startDragToDesktopTransition(task, dragAnimator) handler.startAnimation( transition = transition, info = - createTransitionInfo( - type = TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP, - draggedTask = task, - homeChange = homeChange, - rootLeash = transitionRootLeash, - ), - startTransaction = startTransaction, - finishTransaction = finishTransaction, - finishCallback = finishCallback, + createTransitionInfo( + type = TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP, + draggedTask = task + ), + startTransaction = mock(), + finishTransaction = mock(), + finishCallback = {} ) - return transition } private fun startDragToDesktopTransition( - handler: DragToDesktopTransitionHandler, task: RunningTaskInfo, - dragAnimator: MoveToDesktopAnimator, + dragAnimator: MoveToDesktopAnimator ): IBinder { val token = mock<IBinder>() whenever( transitions.startTransition( eq(TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP), any(), - eq(handler), + eq(handler) ) ) .thenReturn(token) - handler.startDragToDesktopTransition( - task, - dragAnimator, - visualIndicator, - dragCancelCallback, - ) + handler.startDragToDesktopTransition(task.taskId, dragAnimator) return token } - private fun cancelDragToDesktopTransition( - handler: DragToDesktopTransitionHandler, - cancelState: DragToDesktopTransitionHandler.CancelState, - ): IBinder { - val token = mock<IBinder>() - whenever( - transitions.startTransition( - eq(TRANSIT_DESKTOP_MODE_CANCEL_DRAG_TO_DESKTOP), - any(), - eq(handler), - ) - ) - .thenReturn(token) - handler.cancelDragToDesktopTransition(cancelState) - mAnimatorTestRule.advanceTimeBy(DRAG_TO_DESKTOP_FINISH_ANIM_DURATION_MS) - return token - } - - private fun performEarlyCancel( - handler: DragToDesktopTransitionHandler, - cancelState: DragToDesktopTransitionHandler.CancelState, - ) { + private fun performEarlyCancel(cancelState: DragToDesktopTransitionHandler.CancelState) { val task = createTask() // Simulate transition is started and is ready to animate. - val transition = startDragToDesktopTransition(handler, task, dragAnimator) + val transition = startDragToDesktopTransition(task, dragAnimator) handler.cancelDragToDesktopTransition(cancelState) handler.startAnimation( transition = transition, info = - createTransitionInfo( - type = TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP, - draggedTask = task, - ), + createTransitionInfo( + type = TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP, + draggedTask = task + ), startTransaction = mock(), finishTransaction = mock(), - finishCallback = {}, + finishCallback = {} ) // Don't even animate the "drag" since it was already cancelled. @@ -1241,7 +326,6 @@ class DragToDesktopTransitionHandlerTest : ShellTestCase() { return TestRunningTaskInfoBuilder() .setActivityType(if (isHome) ACTIVITY_TYPE_HOME else ACTIVITY_TYPE_STANDARD) .setWindowingMode(windowingMode) - .setUserId(mContext.userId) .build() .also { whenever(splitScreenController.isTaskInSplitScreen(it.taskId)) @@ -1249,49 +333,29 @@ class DragToDesktopTransitionHandlerTest : ShellTestCase() { } } - private fun createTransitionInfo( - type: Int, - draggedTask: RunningTaskInfo, - homeChange: TransitionInfo.Change? = createHomeChange(), - rootLeash: SurfaceControl = mock(), - deskChange: TransitionInfo.Change? = null, - ) = - TransitionInfo(type, /* flags= */ 0).apply { - homeChange?.let { addChange(it) } + private fun createTransitionInfo(type: Int, draggedTask: RunningTaskInfo): TransitionInfo { + return TransitionInfo(type, 0 /* flags */).apply { + addChange( // Home. + TransitionInfo.Change(mock(), mock()).apply { + parent = null + taskInfo = + TestRunningTaskInfoBuilder().setActivityType(ACTIVITY_TYPE_HOME).build() + flags = flags or FLAG_IS_WALLPAPER + } + ) addChange( // Dragged Task. - TransitionInfo.Change(mock(), draggedTaskLeash).apply { + TransitionInfo.Change(mock(), mock()).apply { parent = null taskInfo = draggedTask } ) - deskChange?.let { addChange(it) } addChange( // Wallpaper. - TransitionInfo.Change(mock(), wallpaperLeash).apply { + TransitionInfo.Change(mock(), mock()).apply { parent = null taskInfo = null flags = flags or FLAG_IS_WALLPAPER } ) - addRootLeash(draggedTask.displayId, rootLeash, /* offsetLeft= */ 0, /* offsetTop= */ 0) } - - private fun createHomeChange() = - TransitionInfo.Change(mock(), homeTaskLeash).apply { - parent = null - taskInfo = TestRunningTaskInfoBuilder().setActivityType(ACTIVITY_TYPE_HOME).build() - flags = flags or FLAG_IS_WALLPAPER - } - - private fun createDeskChange() = - TransitionInfo.Change(mock(), mock()).apply { - parent = null - taskInfo = TestRunningTaskInfoBuilder().build() - } - - private fun systemPropertiesKey(name: String) = - "${SpringDragToDesktopTransitionHandler.SYSTEM_PROPERTIES_GROUP}.$name" - - private companion object { - private const val TOLERANCE = 1e-5f } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/ExitDesktopTaskTransitionHandlerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/ExitDesktopTaskTransitionHandlerTest.java index a82e5e8434..2c910cf530 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/ExitDesktopTaskTransitionHandlerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/desktopmode/ExitDesktopTaskTransitionHandlerTest.java @@ -19,6 +19,8 @@ package com.android.wm.shell.desktopmode; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; +import static androidx.test.internal.runner.junit4.statement.UiThreadStatement.runOnUiThread; + import static com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN; import static org.junit.Assert.assertTrue; @@ -26,17 +28,13 @@ import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import android.animation.AnimatorTestRule; import android.annotation.NonNull; import android.app.ActivityManager; import android.app.WindowConfiguration; import android.content.Context; import android.content.res.Resources; import android.graphics.Point; -import android.os.Handler; import android.os.IBinder; -import android.testing.AndroidTestingRunner; -import android.testing.TestableLooper; import android.util.DisplayMetrics; import android.view.SurfaceControl; import android.view.WindowManager; @@ -47,35 +45,26 @@ import android.window.WindowContainerTransaction; import androidx.test.filters.SmallTest; -import com.android.internal.jank.InteractionJankMonitor; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource; import com.android.wm.shell.transition.Transitions; import org.junit.Before; -import org.junit.Rule; import org.junit.Test; -import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.MockitoAnnotations; +import java.util.ArrayList; import java.util.function.Supplier; /** Tests of {@link com.android.wm.shell.desktopmode.ExitDesktopTaskTransitionHandler} */ @SmallTest -@TestableLooper.RunWithLooper -@RunWith(AndroidTestingRunner.class) public class ExitDesktopTaskTransitionHandlerTest extends ShellTestCase { - @Rule - public final AnimatorTestRule mAnimatorTestRule = new AnimatorTestRule(this); - @Mock private Transitions mTransitions; @Mock - private InteractionJankMonitor mInteractionJankMonitor; - @Mock IBinder mToken; @Mock Supplier<SurfaceControl.Transaction> mTransactionFactory; @@ -89,8 +78,6 @@ public class ExitDesktopTaskTransitionHandlerTest extends ShellTestCase { Transitions.TransitionFinishCallback mTransitionFinishCallback; @Mock ShellExecutor mExecutor; - @Mock - Handler mHandler; private Point mPoint; private ExitDesktopTaskTransitionHandler mExitDesktopTaskTransitionHandler; @@ -107,12 +94,12 @@ public class ExitDesktopTaskTransitionHandlerTest extends ShellTestCase { .thenReturn(getContext().getResources().getDisplayMetrics()); mExitDesktopTaskTransitionHandler = new ExitDesktopTaskTransitionHandler(mTransitions, - mContext, mInteractionJankMonitor, mHandler); + mContext); mPoint = new Point(0, 0); } @Test - public void testTransitExitDesktopModeAnimation() { + public void testTransitExitDesktopModeAnimation() throws Throwable { final int transitionType = TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN; final int taskId = 1; WindowContainerTransaction wct = new WindowContainerTransaction(); @@ -125,16 +112,21 @@ public class ExitDesktopTaskTransitionHandlerTest extends ShellTestCase { TransitionInfo.Change change = createChange(WindowManager.TRANSIT_CHANGE, taskId, WINDOWING_MODE_FULLSCREEN); TransitionInfo info = createTransitionInfo(TRANSIT_EXIT_DESKTOP_MODE_UNKNOWN, change); - - final boolean animated = mExitDesktopTaskTransitionHandler - .startAnimation(mToken, info, - new SurfaceControl.Transaction(), - new SurfaceControl.Transaction(), - mTransitionFinishCallback); - mAnimatorTestRule.advanceTimeBy( - ExitDesktopTaskTransitionHandler.FULLSCREEN_ANIMATION_DURATION); - - assertTrue(animated); + ArrayList<Exception> exceptions = new ArrayList<>(); + runOnUiThread(() -> { + try { + assertTrue(mExitDesktopTaskTransitionHandler + .startAnimation(mToken, info, + new SurfaceControl.Transaction(), + new SurfaceControl.Transaction(), + mTransitionFinishCallback)); + } catch (Exception e) { + exceptions.add(e); + } + }); + if (!exceptions.isEmpty()) { + throw exceptions.get(0); + } } private TransitionInfo.Change createChange(@WindowManager.TransitionType int type, int taskId, diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/draganddrop/DragAndDropControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/draganddrop/DragAndDropControllerTest.java index 58ab872ac7..a64ebd301c 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/draganddrop/DragAndDropControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/draganddrop/DragAndDropControllerTest.java @@ -20,8 +20,6 @@ import static android.content.ClipDescription.MIMETYPE_APPLICATION_SHORTCUT; import static android.view.Display.DEFAULT_DISPLAY; import static android.view.DragEvent.ACTION_DRAG_STARTED; -import static com.android.wm.shell.draganddrop.DragTestUtils.createAppClipData; - import static org.junit.Assert.assertFalse; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.doReturn; @@ -32,7 +30,9 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import android.content.ClipData; +import android.content.ClipDescription; import android.content.Context; +import android.content.Intent; import android.os.RemoteException; import android.view.Display; import android.view.DragEvent; @@ -47,10 +47,8 @@ import com.android.internal.logging.UiEventLogger; import com.android.launcher3.icons.IconProvider; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.bubbles.bar.DragToBubbleController; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; @@ -78,8 +76,6 @@ public class DragAndDropControllerTest extends ShellTestCase { @Mock private ShellCommandHandler mShellCommandHandler; @Mock - private ShellTaskOrganizer mShellTaskOrganizer; - @Mock private DisplayController mDisplayController; @Mock private UiEventLogger mUiEventLogger; @@ -94,20 +90,14 @@ public class DragAndDropControllerTest extends ShellTestCase { @Mock private GlobalDragListener mGlobalDragListener; - @Mock - private DragToBubbleController mDragToBubbleController; - private FakeDesktopState mDesktopState; - private DragAndDropController mController; @Before public void setUp() throws RemoteException { - mDesktopState = new FakeDesktopState(); MockitoAnnotations.initMocks(this); mController = new DragAndDropController(mContext, mShellInit, mShellController, - mShellCommandHandler, mShellTaskOrganizer, mDisplayController, mUiEventLogger, - mIconProvider, mGlobalDragListener, mTransitions, () -> mDragToBubbleController, - mMainExecutor, mDesktopState); + mShellCommandHandler, mDisplayController, mUiEventLogger, mIconProvider, + mGlobalDragListener, mTransitions, mMainExecutor); mController.onInit(); } @@ -136,7 +126,7 @@ public class DragAndDropControllerTest extends ShellTestCase { doReturn(display).when(dragLayout).getDisplay(); doReturn(DEFAULT_DISPLAY).when(display).getDisplayId(); - final ClipData clipData = createAppClipData(MIMETYPE_APPLICATION_SHORTCUT); + final ClipData clipData = createClipData(); final DragEvent event = mock(DragEvent.class); doReturn(ACTION_DRAG_STARTED).when(event).getAction(); doReturn(clipData).when(event).getClipData(); @@ -159,23 +149,14 @@ public class DragAndDropControllerTest extends ShellTestCase { verify(mDragAndDropListener, never()).onDragStarted(); } - @Test - public void testOnDragStarted_withNoClipDataOrDescription() { - final View dragLayout = mock(View.class); - final Display display = mock(Display.class); - doReturn(display).when(dragLayout).getDisplay(); - doReturn(DEFAULT_DISPLAY).when(display).getDisplayId(); - - final DragEvent event = mock(DragEvent.class); - doReturn(ACTION_DRAG_STARTED).when(event).getAction(); - doReturn(null).when(event).getClipData(); - doReturn(null).when(event).getClipDescription(); - - // Ensure there's a target so that onDrag will execute - mController.addDisplayDropTarget(0, mContext, mock(WindowManager.class), - mock(FrameLayout.class), mock(DragLayout.class)); - - // Verify the listener is called on a valid drag action. - mController.onDrag(dragLayout, event); + private ClipData createClipData() { + ClipDescription clipDescription = new ClipDescription(MIMETYPE_APPLICATION_SHORTCUT, + new String[] { MIMETYPE_APPLICATION_SHORTCUT }); + Intent i = new Intent(); + i.putExtra(Intent.EXTRA_PACKAGE_NAME, "pkg"); + i.putExtra(Intent.EXTRA_SHORTCUT_ID, "shortcutId"); + i.putExtra(Intent.EXTRA_USER, android.os.Process.myUserHandle()); + ClipData.Item item = new ClipData.Item(i); + return new ClipData(clipDescription, item); } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/draganddrop/GlobalDragListenerTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/draganddrop/GlobalDragListenerTest.kt index 5389c94bc1..d410151b46 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/draganddrop/GlobalDragListenerTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/draganddrop/GlobalDragListenerTest.kt @@ -43,7 +43,7 @@ import org.mockito.kotlin.verify */ @SmallTest @RunWith(AndroidJUnit4::class) -class GlobalDragListenerTest : ShellTestCase() { +class UnhandledDragControllerTest : ShellTestCase() { private val mIWindowManager = mock<IWindowManager>() private val mMainExecutor = mock<ShellExecutor>() @@ -74,7 +74,7 @@ class GlobalDragListenerTest : ShellTestCase() { @Test fun onUnhandledDrop_noListener_expectNotifyUnhandled() { // Simulate an unhandled drop - val dropEvent = DragEvent.obtain(ACTION_DROP, 0f, 0f, 0f, 0f, 0, 0, null, null, null, + val dropEvent = DragEvent.obtain(ACTION_DROP, 0f, 0f, 0f, 0f, 0, null, null, null, null, null, false) val wmCallback = mock<IUnhandledDragCallback>() mController.onUnhandledDrop(dropEvent, wmCallback) @@ -98,7 +98,7 @@ class GlobalDragListenerTest : ShellTestCase() { // Simulate an unhandled drop val dragSurface = mock<SurfaceControl>() - val dropEvent = DragEvent.obtain(ACTION_DROP, 0f, 0f, 0f, 0f, 0, 0, null, null, null, + val dropEvent = DragEvent.obtain(ACTION_DROP, 0f, 0f, 0f, 0f, 0, null, null, null, dragSurface, null, false) val wmCallback = mock<IUnhandledDragCallback>() mController.onUnhandledDrop(dropEvent, wmCallback) diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/freeform/FreeformTaskListenerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/freeform/FreeformTaskListenerTests.java index 61f9915f09..3f3cafcf63 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/freeform/FreeformTaskListenerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/freeform/FreeformTaskListenerTests.java @@ -18,36 +18,25 @@ package com.android.wm.shell.freeform; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; -import static android.view.Display.INVALID_DISPLAY; -import static com.android.window.flags2.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION; -import static com.android.window.flags2.Flags.FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS; -import static com.android.window.flags2.Flags.FLAG_SHOW_DESKTOP_WINDOWING_DEV_OPTION; +import static com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn; +import static com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession; import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; import android.app.ActivityManager; -import android.platform.test.annotations.DisableFlags; -import android.platform.test.annotations.EnableFlags; -import android.view.SurfaceControl; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; -import com.android.window.flags2.Flags; +import com.android.dx.mockito.inline.extended.StaticMockitoSession; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestRunningTaskInfoBuilder; -import com.android.wm.shell.common.LaunchAdjacentController; -import com.android.wm.shell.desktopmode.DesktopModeLoggerTransitionObserver; -import com.android.wm.shell.desktopmode.DesktopRepository; -import com.android.wm.shell.desktopmode.DesktopTasksController; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; +import com.android.wm.shell.desktopmode.DesktopModeTaskRepository; +import com.android.wm.shell.shared.DesktopModeStatus; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.windowdecor.WindowDecorViewModel; @@ -56,13 +45,14 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; -import org.mockito.MockitoAnnotations; +import org.mockito.quality.Strictness; import java.util.Optional; /** - * Tests for {@link FreeformTaskListener} Build/Install/Run: atest - * WMShellUnitTests:FreeformTaskListenerTests + * Tests for {@link FreeformTaskListener} + * Build/Install/Run: + * atest WMShellUnitTests:FreeformTaskListenerTests */ @SmallTest @RunWith(AndroidJUnit4.class) @@ -75,281 +65,50 @@ public final class FreeformTaskListenerTests extends ShellTestCase { @Mock private WindowDecorViewModel mWindowDecorViewModel; @Mock - private SurfaceControl mMockSurfaceControl; - @Mock - private DesktopUserRepositories mDesktopUserRepositories; - @Mock - private DesktopRepository mDesktopRepository; - @Mock - private DesktopTasksController mDesktopTasksController; - @Mock - private DesktopModeLoggerTransitionObserver mDesktopModeLoggerTransitionObserver; - @Mock - private LaunchAdjacentController mLaunchAdjacentController; - @Mock - private TaskChangeListener mTaskChangeListener; - + private DesktopModeTaskRepository mDesktopModeTaskRepository; private FreeformTaskListener mFreeformTaskListener; - private AutoCloseable mMocksInit = null; + private StaticMockitoSession mMockitoSession; @Before public void setup() { - mMocksInit = MockitoAnnotations.openMocks(this); + mMockitoSession = mockitoSession().initMocks(this) + .strictness(Strictness.LENIENT).mockStatic(DesktopModeStatus.class).startMocking(); + doReturn(true).when(() -> DesktopModeStatus.canEnterDesktopMode(any())); - var desktopState = new FakeDesktopState(); - desktopState.setCanEnterDesktopMode(true); - desktopState.setFreeformEnabled(true); - - when(mDesktopUserRepositories.getCurrent()).thenReturn(mDesktopRepository); - when(mDesktopUserRepositories.getProfile(anyInt())).thenReturn(mDesktopRepository); - mFreeformTaskListener = - new FreeformTaskListener( - mContext, - mShellInit, - mTaskOrganizer, - Optional.of(mDesktopUserRepositories), - Optional.of(mDesktopTasksController), - mDesktopModeLoggerTransitionObserver, - mLaunchAdjacentController, - mWindowDecorViewModel, - Optional.of(mTaskChangeListener), - desktopState); - } - - @After - public void tearDown() throws Exception { - if (mMocksInit != null) { - mMocksInit.close(); - mMocksInit = null; - } + mFreeformTaskListener = new FreeformTaskListener( + mContext, + mShellInit, + mTaskOrganizer, + Optional.of(mDesktopModeTaskRepository), + mWindowDecorViewModel); } @Test - @DisableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - public void onTaskAppeared_noTransitionObservers_visibleTask_addsTaskToRepo() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = true; - - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - verify(mDesktopUserRepositories.getCurrent()) - .addTask(task.displayId, task.taskId, task.isVisible = true, - task.configuration.windowConfiguration.getBounds() - ); - } - - @Test - @DisableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - public void onTaskAppeared_noTransitionObservers_nonVisibleTask_addsTaskToRepo() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = false; - - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - verify(mDesktopUserRepositories.getCurrent()) - .addTask(task.displayId, task.taskId, task.isVisible, - task.configuration.windowConfiguration.getBounds()); - } - - @Test - @EnableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - public void onTaskAppeared_useTransitionObserver_noopInRepository() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = true; - - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - verify(mDesktopUserRepositories.getCurrent(), never()) - .addTask(task.displayId, task.taskId, task.isVisible, - task.configuration.windowConfiguration.getBounds()); - } - - @Test - @DisableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - public void focusTaskChanged_noTransitionObserversFlag_addsFreeformTaskToRepo() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); + public void testFocusTaskChanged_freeformTaskIsAddedToRepo() { + ActivityManager.RunningTaskInfo task = new TestRunningTaskInfoBuilder() + .setWindowingMode(WINDOWING_MODE_FREEFORM).build(); task.isFocused = true; mFreeformTaskListener.onFocusTaskChanged(task); - verify(mDesktopUserRepositories.getCurrent()) - .addTask(task.displayId, task.taskId, task.isVisible, - task.configuration.windowConfiguration.getBounds()); + verify(mDesktopModeTaskRepository) + .addOrMoveFreeformTaskToTop(task.displayId, task.taskId); } @Test - @EnableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - public void focusTaskChanged_enableTransitionObservers_freeformTaskNotAddedToRepo() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isFocused = true; - - mFreeformTaskListener.onFocusTaskChanged(task); - - verify(mDesktopUserRepositories.getCurrent(), never()) - .addTask(task.displayId, task.taskId, task.isVisible, - task.configuration.windowConfiguration.getBounds()); - } - - @Test - public void focusTaskChanged_fullscreenTaskNotAddedToRepo() { - ActivityManager.RunningTaskInfo fullscreenTask = - new TestRunningTaskInfoBuilder() - .setWindowingMode(WINDOWING_MODE_FULLSCREEN) - .build(); + public void testFocusTaskChanged_fullscreenTaskIsNotAddedToRepo() { + ActivityManager.RunningTaskInfo fullscreenTask = new TestRunningTaskInfoBuilder() + .setWindowingMode(WINDOWING_MODE_FULLSCREEN).build(); fullscreenTask.isFocused = true; mFreeformTaskListener.onFocusTaskChanged(fullscreenTask); - verify(mDesktopUserRepositories.getCurrent(), never()) - .addTask(fullscreenTask.displayId, fullscreenTask.taskId, fullscreenTask.isVisible, - fullscreenTask.configuration.windowConfiguration.getBounds()); + verify(mDesktopModeTaskRepository, never()) + .addOrMoveFreeformTaskToTop(fullscreenTask.displayId, fullscreenTask.taskId); } - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - public void visibilityTaskChanged_visible_setLaunchAdjacentDisabled() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = true; - - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - verify(mLaunchAdjacentController).setLaunchAdjacentEnabled(false); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND) - public void visibilityTaskChanged_notVisible_setLaunchAdjacentEnabled() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = true; - - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - task.isVisible = false; - mFreeformTaskListener.onTaskInfoChanged(task); - - verify(mLaunchAdjacentController).setLaunchAdjacentEnabled(true); - } - - @Test - @EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION) - @DisableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - public void onTaskVanished_minimizedTask_noTransitionObservers_isNotRemoved() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = true; - when(mDesktopRepository.isMinimizedTask(task.taskId)).thenReturn(true); - - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - task.isVisible = false; - task.displayId = INVALID_DISPLAY; - mFreeformTaskListener.onTaskVanished(task); - - verify(mDesktopUserRepositories.getCurrent(), never()).removeTask(task.taskId); - } - - @Test - @DisableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - @EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_BACK_NAVIGATION) - public void onTaskVanished_closingTask_noTransitionObservers_isNotMinimized() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = true; - - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - when(mDesktopUserRepositories.getCurrent() - .isClosingTask(task.taskId)).thenReturn(true); - task.isVisible = false; - task.displayId = INVALID_DISPLAY; - mFreeformTaskListener.onTaskVanished(task); - - verify(mDesktopUserRepositories.getCurrent(), never()) - .minimizeTask(task.displayId, task.taskId); - verify(mDesktopUserRepositories.getCurrent()).removeClosingTask(task.taskId); - verify(mDesktopUserRepositories.getCurrent()).removeTask(task.taskId); - } - - @Test - @EnableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - public void onTaskVanished_usesTransitionObservers_noopInRepo() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - mFreeformTaskListener.onTaskVanished(task); - - verify(mDesktopUserRepositories.getCurrent(), never()) - .minimizeTask(task.displayId, task.taskId); - verify(mDesktopUserRepositories.getCurrent(), never()) - .removeClosingTask(task.taskId); - verify(mDesktopUserRepositories.getCurrent(), never()).removeTask(task.taskId); - } - - @Test - public void onTaskVanished_withDesktopModeLogger_forwards() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = true; - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - mFreeformTaskListener.onTaskVanished(task); - - verify(mDesktopModeLoggerTransitionObserver).onTaskVanished(task); - } - - - @Test - public void onTaskInfoChanged_withDesktopController_forwards() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = true; - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - mFreeformTaskListener.onTaskInfoChanged(task); - - verify(mDesktopTasksController).onTaskInfoChanged(task); - } - - @Test - @DisableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - public void onTaskInfoChanged_noTransitionObservers_updatesTask() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = true; - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - mFreeformTaskListener.onTaskInfoChanged(task); - - verify(mTaskChangeListener, never()).onTaskChanging(any()); - verify(mDesktopUserRepositories.getCurrent()) - .updateTask(task.displayId, task.taskId, task.isVisible, - task.configuration.windowConfiguration.getBounds() - ); - } - - @Test - @EnableFlags(FLAG_ENABLE_WINDOWING_TRANSITION_HANDLERS_OBSERVERS) - @DisableFlags(FLAG_SHOW_DESKTOP_WINDOWING_DEV_OPTION) - public void onTaskInfoChanged_useTransitionObserver_noopInRepository() { - ActivityManager.RunningTaskInfo task = - new TestRunningTaskInfoBuilder().setWindowingMode(WINDOWING_MODE_FREEFORM).build(); - task.isVisible = true; - mFreeformTaskListener.onTaskAppeared(task, mMockSurfaceControl); - - mFreeformTaskListener.onTaskInfoChanged(task); - - verify(mTaskChangeListener).onNonTransitionTaskChanging(any()); - verify(mDesktopUserRepositories.getCurrent(), never()) - .updateTask(task.displayId, task.taskId, task.isVisible, - task.configuration.windowConfiguration.getBounds() - ); + @After + public void tearDown() { + mMockitoSession.finishMocking(); } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/freeform/FreeformTaskTransitionObserverTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/freeform/FreeformTaskTransitionObserverTest.java index e79169fdee..499e339bc6 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/freeform/FreeformTaskTransitionObserverTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/freeform/FreeformTaskTransitionObserverTest.java @@ -17,16 +17,9 @@ package com.android.wm.shell.freeform; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; -import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; -import static android.view.WindowManager.TRANSIT_CHANGE; import static android.view.WindowManager.TRANSIT_CLOSE; import static android.view.WindowManager.TRANSIT_OPEN; -import static android.view.WindowManager.TRANSIT_TO_BACK; -import static android.view.WindowManager.TRANSIT_TO_FRONT; -import static com.android.wm.shell.transition.Transitions.TRANSIT_START_RECENTS_TRANSITION; - -import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; @@ -37,8 +30,6 @@ import android.app.ActivityManager; import android.content.Context; import android.content.pm.PackageManager; import android.os.IBinder; -import android.platform.test.annotations.DisableFlags; -import android.platform.test.annotations.EnableFlags; import android.view.SurfaceControl; import android.window.IWindowContainerToken; import android.window.TransitionInfo; @@ -46,138 +37,66 @@ import android.window.WindowContainerToken; import androidx.test.filters.SmallTest; -import com.android.window.flags2.Flags; -import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.desktopmode.DesktopBackNavTransitionObserver; -import com.android.wm.shell.desktopmode.DesktopImeHandler; -import com.android.wm.shell.desktopmode.DesktopImmersiveController; -import com.android.wm.shell.desktopmode.DesktopInOrderTransitionObserver; -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer; -import com.android.wm.shell.desktopmode.multidesks.DesksTransitionObserver; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.transition.FocusTransitionObserver; import com.android.wm.shell.transition.TransitionInfoBuilder; import com.android.wm.shell.transition.Transitions; -import com.android.wm.shell.util.StubTransaction; import com.android.wm.shell.windowdecor.WindowDecorViewModel; -import org.junit.After; import org.junit.Before; import org.junit.Test; import org.mockito.ArgumentCaptor; import org.mockito.Mock; import org.mockito.MockitoAnnotations; -import java.util.Optional; - -/** Tests for {@link FreeformTaskTransitionObserver}. */ +/** + * Tests of {@link FreeformTaskTransitionObserver} + */ @SmallTest -public class FreeformTaskTransitionObserverTest extends ShellTestCase { +public class FreeformTaskTransitionObserverTest { + + @Mock + private ShellInit mShellInit; + @Mock + private Transitions mTransitions; + @Mock + private WindowDecorViewModel mWindowDecorViewModel; - @Mock private ShellInit mShellInit; - @Mock private Transitions mTransitions; - @Mock private DesktopImmersiveController mDesktopImmersiveController; - @Mock private WindowDecorViewModel mWindowDecorViewModel; - @Mock private TaskChangeListener mTaskChangeListener; - @Mock private FocusTransitionObserver mFocusTransitionObserver; - @Mock private DesksOrganizer mDesksOrganizer; - @Mock private DesksTransitionObserver mDesksTransitionObserver; - @Mock private DesktopImeHandler mDesktopImeHandler; - @Mock private DesktopBackNavTransitionObserver mDesktopBackNavTransitionObserver; - @Mock private DesktopInOrderTransitionObserver mDesktopInOrderTransitionObserver; - private FakeDesktopState mDesktopState; private FreeformTaskTransitionObserver mTransitionObserver; - private AutoCloseable mMocksInits = null; @Before public void setUp() { - mMocksInits = MockitoAnnotations.openMocks(this); - - mDesktopState = new FakeDesktopState(); - mDesktopState.setFreeformEnabled(true); + MockitoAnnotations.initMocks(this); PackageManager pm = mock(PackageManager.class); - doReturn(true).when(pm).hasSystemFeature(PackageManager.FEATURE_FREEFORM_WINDOW_MANAGEMENT); - doReturn(false).when(mDesksOrganizer).isDeskChange(any()); + doReturn(true).when(pm).hasSystemFeature( + PackageManager.FEATURE_FREEFORM_WINDOW_MANAGEMENT); final Context context = mock(Context.class); doReturn(pm).when(context).getPackageManager(); - mTransitionObserver = - new FreeformTaskTransitionObserver( - mShellInit, - mTransitions, - Optional.of(mDesktopImmersiveController), - mWindowDecorViewModel, - Optional.of(mTaskChangeListener), - mFocusTransitionObserver, - mDesksOrganizer, - Optional.of(mDesksTransitionObserver), - mDesktopState, - Optional.of(mDesktopImeHandler), - Optional.of(mDesktopBackNavTransitionObserver), - Optional.of(mDesktopInOrderTransitionObserver)); - - final ArgumentCaptor<Runnable> initRunnableCaptor = ArgumentCaptor.forClass(Runnable.class); - verify(mShellInit).addInitCallback(initRunnableCaptor.capture(), same(mTransitionObserver)); - initRunnableCaptor.getValue().run(); - } - - @After - public void tearDown() throws Exception { - if (mMocksInits != null) { - mMocksInits.close(); - mMocksInits = null; + mTransitionObserver = new FreeformTaskTransitionObserver( + context, mShellInit, mTransitions, mWindowDecorViewModel); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + final ArgumentCaptor<Runnable> initRunnableCaptor = ArgumentCaptor.forClass( + Runnable.class); + verify(mShellInit).addInitCallback(initRunnableCaptor.capture(), + same(mTransitionObserver)); + initRunnableCaptor.getValue().run(); + } else { + mTransitionObserver.onInit(); } } @Test - public void init_registersObserver() { + public void testRegistersObserverAtInit() { verify(mTransitions).registerObserver(same(mTransitionObserver)); } @Test - public void openTransition_createsWindowDecor() { - final TransitionInfo.Change change = createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build(); - - final IBinder transition = mock(IBinder.class); - final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishT = mock(SurfaceControl.Transaction.class); - mTransitionObserver.onTransitionReady(transition, info, startT, finishT); - mTransitionObserver.onTransitionStarting(transition); - - verify(mWindowDecorViewModel) - .onTaskOpening(change.getTaskInfo(), change.getLeash(), startT, finishT); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_NO_WINDOW_DECORATION_FOR_DESKS) - public void desksChange_windowDecorNotCreatedForDesksTask() { - final TransitionInfo.Change change = createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build(); - doReturn(true).when(mDesksOrganizer).isDeskChange(change); - - final IBinder transition = mock(IBinder.class); - final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishT = mock(SurfaceControl.Transaction.class); - mTransitionObserver.onTransitionReady(transition, info, startT, finishT); - mTransitionObserver.onTransitionStarting(transition); - - verify(mWindowDecorViewModel, never()) - .onTaskOpening(change.getTaskInfo(), change.getLeash(), startT, finishT); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_NO_WINDOW_DECORATION_FOR_DESKS) - public void desksChange_listenerNotNotifiedOfTaskChange() { + public void testCreatesWindowDecorOnOpenTransition_freeform() { final TransitionInfo.Change change = - createChange(TRANSIT_CHANGE, /* taskId= */ 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_CHANGE, /* flags= */ 0).addChange(change).build(); - doReturn(true).when(mDesksOrganizer).isDeskChange(change); + createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_FREEFORM); + final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_OPEN, 0) + .addChange(change).build(); final IBinder transition = mock(IBinder.class); final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); @@ -185,106 +104,16 @@ public class FreeformTaskTransitionObserverTest extends ShellTestCase { mTransitionObserver.onTransitionReady(transition, info, startT, finishT); mTransitionObserver.onTransitionStarting(transition); - verify(mTaskChangeListener, never()).onTaskChanging(change.getTaskInfo()); + verify(mWindowDecorViewModel).onTaskOpening( + change.getTaskInfo(), change.getLeash(), startT, finishT); } @Test - public void openTransition_notifiesOnTaskOpening() { - final TransitionInfo.Change change = createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build(); - - final IBinder transition = mock(IBinder.class); - final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishT = mock(SurfaceControl.Transaction.class); - mTransitionObserver.onTransitionReady(transition, info, startT, finishT); - mTransitionObserver.onTransitionStarting(transition); - - verify(mTaskChangeListener).onTaskOpening(change.getTaskInfo()); - } - - @Test - public void toFrontTransition_notifiesOnTaskMovingToFront() { - final TransitionInfo.Change change = - createChange(TRANSIT_TO_FRONT, /* taskId= */ 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_TO_FRONT, /* flags= */ 0) - .addChange(change) - .build(); - - final IBinder transition = mock(IBinder.class); - final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishT = mock(SurfaceControl.Transaction.class); - mTransitionObserver.onTransitionReady(transition, info, startT, finishT); - mTransitionObserver.onTransitionStarting(transition); - - verify(mTaskChangeListener).onTaskMovingToFront(change.getTaskInfo()); - } - - @Test - public void toBackTransition_notifiesOnTaskMovingToBack() { - final TransitionInfo.Change change = - createChange(TRANSIT_TO_BACK, /* taskId= */ 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_TO_BACK, /* flags= */ 0) - .addChange(change) - .build(); - - final IBinder transition = mock(IBinder.class); - final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishT = mock(SurfaceControl.Transaction.class); - mTransitionObserver.onTransitionReady(transition, info, startT, finishT); - mTransitionObserver.onTransitionStarting(transition); - - verify(mTaskChangeListener).onTaskMovingToBack(change.getTaskInfo()); - } - - @Test - public void recentsTransition_onTransitionFinished_notifiesOnTaskMovingToBack() { - final TransitionInfo.Change change = - createChange(TRANSIT_TO_BACK, /* taskId= */ 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo.Change homeChange = - createChange(TRANSIT_TO_FRONT, /* taskId= */ 2, WINDOWING_MODE_FULLSCREEN); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_START_RECENTS_TRANSITION, /* flags= */ 0) - .addChange(homeChange) - .addChange(change) - .build(); - - final IBinder transition = mock(IBinder.class); - final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishT = mock(SurfaceControl.Transaction.class); - mTransitionObserver.onTransitionReady(transition, info, startT, finishT); - mTransitionObserver.onTransitionStarting(transition); - - verify(mTaskChangeListener, never()).onTaskMovingToBack(change.getTaskInfo()); - - mTransitionObserver.onTransitionFinished(transition, false); - verify(mTaskChangeListener).onTaskMovingToBack(change.getTaskInfo()); - } - - @Test - public void changeTransition_notifiesOnTaskChange() { - final TransitionInfo.Change change = - createChange(TRANSIT_CHANGE, /* taskId= */ 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_CHANGE, /* flags= */ 0).addChange(change).build(); - - final IBinder transition = mock(IBinder.class); - final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishT = mock(SurfaceControl.Transaction.class); - mTransitionObserver.onTransitionReady(transition, info, startT, finishT); - mTransitionObserver.onTransitionStarting(transition); - - verify(mTaskChangeListener).onTaskChanging(change.getTaskInfo()); - } - - @Test - public void closeTransition_preparesWindowDecor() { + public void testPreparesWindowDecorOnCloseTransition_freeform() { final TransitionInfo.Change change = createChange(TRANSIT_CLOSE, 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_CLOSE, 0).addChange(change).build(); + final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_CLOSE, 0) + .addChange(change).build(); final IBinder transition = mock(IBinder.class); final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); @@ -292,31 +121,16 @@ public class FreeformTaskTransitionObserverTest extends ShellTestCase { mTransitionObserver.onTransitionReady(transition, info, startT, finishT); mTransitionObserver.onTransitionStarting(transition); - verify(mWindowDecorViewModel).onTaskClosing(change.getTaskInfo(), startT, finishT); + verify(mWindowDecorViewModel).onTaskClosing( + change.getTaskInfo(), startT, finishT); } @Test - public void closeTransition_notifiesOnTaskClosing() { + public void testDoesntCloseWindowDecorDuringCloseTransition() throws Exception { final TransitionInfo.Change change = createChange(TRANSIT_CLOSE, 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_CLOSE, 0).addChange(change).build(); - - final IBinder transition = mock(IBinder.class); - final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishT = mock(SurfaceControl.Transaction.class); - mTransitionObserver.onTransitionReady(transition, info, startT, finishT); - mTransitionObserver.onTransitionStarting(transition); - - verify(mTaskChangeListener).onTaskClosing(change.getTaskInfo()); - } - - @Test - public void closeTransition_doesntCloseWindowDecorDuringTransition() throws Exception { - final TransitionInfo.Change change = - createChange(TRANSIT_CLOSE, 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_CLOSE, 0).addChange(change).build(); + final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_CLOSE, 0) + .addChange(change).build(); final IBinder transition = mock(IBinder.class); final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); @@ -328,11 +142,11 @@ public class FreeformTaskTransitionObserverTest extends ShellTestCase { } @Test - public void closeTransition_closesWindowDecorAfterTransition() throws Exception { + public void testClosesWindowDecorAfterCloseTransition() throws Exception { final TransitionInfo.Change change = createChange(TRANSIT_CLOSE, 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info = - new TransitionInfoBuilder(TRANSIT_CLOSE, 0).addChange(change).build(); + final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_CLOSE, 0) + .addChange(change).build(); final AutoCloseable windowDecor = mock(AutoCloseable.class); @@ -347,12 +161,12 @@ public class FreeformTaskTransitionObserverTest extends ShellTestCase { } @Test - public void transitionFinished_closesMergedWindowDecoration() throws Exception { + public void testClosesMergedWindowDecorationAfterTransitionFinishes() throws Exception { // The playing transition final TransitionInfo.Change change1 = createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info1 = - new TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change1).build(); + final TransitionInfo info1 = new TransitionInfoBuilder(TRANSIT_OPEN, 0) + .addChange(change1).build(); final IBinder transition1 = mock(IBinder.class); final SurfaceControl.Transaction startT1 = mock(SurfaceControl.Transaction.class); @@ -363,8 +177,8 @@ public class FreeformTaskTransitionObserverTest extends ShellTestCase { // The merged transition final TransitionInfo.Change change2 = createChange(TRANSIT_CLOSE, 2, WINDOWING_MODE_FREEFORM); - final TransitionInfo info2 = - new TransitionInfoBuilder(TRANSIT_CLOSE, 0).addChange(change2).build(); + final TransitionInfo info2 = new TransitionInfoBuilder(TRANSIT_CLOSE, 0) + .addChange(change2).build(); final IBinder transition2 = mock(IBinder.class); final SurfaceControl.Transaction startT2 = mock(SurfaceControl.Transaction.class); @@ -378,12 +192,12 @@ public class FreeformTaskTransitionObserverTest extends ShellTestCase { } @Test - public void closeTransition_closesWindowDecorsOnTransitionMerge() throws Exception { + public void testClosesAllWindowDecorsOnTransitionMergeAfterCloseTransitions() throws Exception { // The playing transition final TransitionInfo.Change change1 = createChange(TRANSIT_CLOSE, 1, WINDOWING_MODE_FREEFORM); - final TransitionInfo info1 = - new TransitionInfoBuilder(TRANSIT_CLOSE, 0).addChange(change1).build(); + final TransitionInfo info1 = new TransitionInfoBuilder(TRANSIT_CLOSE, 0) + .addChange(change1).build(); final IBinder transition1 = mock(IBinder.class); final SurfaceControl.Transaction startT1 = mock(SurfaceControl.Transaction.class); @@ -394,8 +208,8 @@ public class FreeformTaskTransitionObserverTest extends ShellTestCase { // The merged transition final TransitionInfo.Change change2 = createChange(TRANSIT_CLOSE, 2, WINDOWING_MODE_FREEFORM); - final TransitionInfo info2 = - new TransitionInfoBuilder(TRANSIT_CLOSE, 0).addChange(change2).build(); + final TransitionInfo info2 = new TransitionInfoBuilder(TRANSIT_CLOSE, 0) + .addChange(change2).build(); final IBinder transition2 = mock(IBinder.class); final SurfaceControl.Transaction startT2 = mock(SurfaceControl.Transaction.class); @@ -409,134 +223,14 @@ public class FreeformTaskTransitionObserverTest extends ShellTestCase { verify(mWindowDecorViewModel).destroyWindowDecoration(change2.getTaskInfo()); } - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - @DisableFlags(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP) - public void onTransitionReady_forwardsToDesktopImmersiveController() { - final IBinder transition = mock(IBinder.class); - final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_CHANGE, 0).build(); - final SurfaceControl.Transaction startT = mock(SurfaceControl.Transaction.class); - final SurfaceControl.Transaction finishT = mock(SurfaceControl.Transaction.class); - - mTransitionObserver.onTransitionReady(transition, info, startT, finishT); - - verify(mDesktopImmersiveController).onTransitionReady(transition, info, startT, finishT); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - @DisableFlags(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP) - public void onTransitionMerged_forwardsToDesktopImmersiveController() { - final IBinder merged = mock(IBinder.class); - final IBinder playing = mock(IBinder.class); - - mTransitionObserver.onTransitionMerged(merged, playing); - - verify(mDesktopImmersiveController).onTransitionMerged(merged, playing); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - @DisableFlags(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP) - public void onTransitionStarting_forwardsToDesktopImmersiveController() { - final IBinder transition = mock(IBinder.class); - - mTransitionObserver.onTransitionStarting(transition); - - verify(mDesktopImmersiveController).onTransitionStarting(transition); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - @DisableFlags(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP) - public void onTransitionFinished_forwardsToDesktopImmersiveController() { - final IBinder transition = mock(IBinder.class); - - mTransitionObserver.onTransitionFinished(transition, /* aborted= */ false); - - verify(mDesktopImmersiveController).onTransitionFinished(transition, /* aborted= */ false); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP) - public void onTransitionReady_forwardsToDesksTransitionObserver() { - final IBinder transition = mock(IBinder.class); - final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_CLOSE, /* flags= */ 0) - .build(); - - mTransitionObserver.onTransitionReady(transition, info, new StubTransaction(), - new StubTransaction()); - - verify(mDesksTransitionObserver).onTransitionReady(transition, info); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP) - public void onTransitionMerged_forwardsToDesksTransitionObserver() { - final IBinder merged = mock(IBinder.class); - final IBinder playing = mock(IBinder.class); - - mTransitionObserver.onTransitionMerged(merged, playing); - - verify(mDesksTransitionObserver).onTransitionMerged(merged, playing); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP) - public void onTransitionFinished_forwardsToDesksTransitionObserver() { - final IBinder transition = mock(IBinder.class); - - mTransitionObserver.onTransitionFinished(transition, /* aborted = */ false); - - verify(mDesksTransitionObserver).onTransitionFinished(transition); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP) - public void onTransitionReady_forwardsToDesktopInOrderTransitionObserver() { - final IBinder transition = mock(IBinder.class); - final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_CLOSE, /* flags= */ 0) - .build(); - final SurfaceControl.Transaction startT = new StubTransaction(); - final SurfaceControl.Transaction finishT = new StubTransaction(); - - - mTransitionObserver.onTransitionReady(transition, info, startT, finishT); - - verify(mDesktopInOrderTransitionObserver).onTransitionReady(transition, info, startT, - finishT); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP) - public void onTransitionMerged_forwardsToDesktopInOrderTransitionObserver() { - final IBinder merged = mock(IBinder.class); - final IBinder playing = mock(IBinder.class); - - mTransitionObserver.onTransitionMerged(merged, playing); - - verify(mDesktopInOrderTransitionObserver).onTransitionMerged(merged, playing); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_INORDER_TRANSITION_CALLBACKS_FOR_DESKTOP) - public void onTransitionFinished_forwardsToDesktopInOrderTransitionObserver() { - final IBinder transition = mock(IBinder.class); - - mTransitionObserver.onTransitionFinished(transition, /* aborted = */ false); - - verify(mDesktopInOrderTransitionObserver).onTransitionFinished(transition, false); - } - private static TransitionInfo.Change createChange(int mode, int taskId, int windowingMode) { final ActivityManager.RunningTaskInfo taskInfo = new ActivityManager.RunningTaskInfo(); taskInfo.taskId = taskId; taskInfo.configuration.windowConfiguration.setWindowingMode(windowingMode); - final TransitionInfo.Change change = - new TransitionInfo.Change( - new WindowContainerToken(mock(IWindowContainerToken.class)), - mock(SurfaceControl.class)); + final TransitionInfo.Change change = new TransitionInfo.Change( + new WindowContainerToken(mock(IWindowContainerToken.class)), + mock(SurfaceControl.class)); change.setMode(mode); change.setTaskInfo(taskInfo); return change; diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/onehanded/OneHandedControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/onehanded/OneHandedControllerTest.java index 256ed413c2..8ad3d2a726 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/onehanded/OneHandedControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/onehanded/OneHandedControllerTest.java @@ -51,6 +51,7 @@ import com.android.wm.shell.common.TaskStackListenerImpl; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; +import com.android.wm.shell.sysui.ShellSharedConstants; import org.junit.Before; import org.junit.Test; @@ -178,7 +179,7 @@ public class OneHandedControllerTest extends OneHandedTestCase { @Test public void testControllerRegisteresExternalInterface() { verify(mMockShellController, times(1)).addExternalInterface( - eq(IOneHanded.DESCRIPTOR), any(), any()); + eq(ShellSharedConstants.KEY_EXTRA_SHELL_ONE_HANDED), any(), any()); } @Test diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/onehanded/OneHandedDisplayAreaOrganizerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/onehanded/OneHandedDisplayAreaOrganizerTest.java index 9146906b63..9c7f723787 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/onehanded/OneHandedDisplayAreaOrganizerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/onehanded/OneHandedDisplayAreaOrganizerTest.java @@ -37,7 +37,6 @@ import static org.mockito.Mockito.when; import android.content.res.Configuration; import android.graphics.Rect; import android.os.Binder; -import android.os.Handler; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; import android.view.Display; @@ -101,8 +100,6 @@ public class OneHandedDisplayAreaOrganizerTest extends OneHandedTestCase { OneHandedSettingsUtil mMockSettingsUitl; @Mock InteractionJankMonitor mJankMonitor; - @Mock - Handler mMockHandler; List<DisplayAreaAppearedInfo> mDisplayAreaAppearedInfoList = new ArrayList<>(); @@ -145,8 +142,7 @@ public class OneHandedDisplayAreaOrganizerTest extends OneHandedTestCase { mMockAnimationController, mTutorialHandler, mJankMonitor, - mMockShellMainExecutor, - mMockHandler)); + mMockShellMainExecutor)); for (int i = 0; i < DISPLAYAREA_INFO_COUNT; i++) { mDisplayAreaAppearedInfoList.add(getDummyDisplayAreaInfo()); @@ -433,8 +429,7 @@ public class OneHandedDisplayAreaOrganizerTest extends OneHandedTestCase { mMockAnimationController, mTutorialHandler, mJankMonitor, - mMockShellMainExecutor, - mMockHandler)); + mMockShellMainExecutor)); assertThat(testSpiedDisplayAreaOrganizer.isReady()).isFalse(); } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/pip/PipAnimationControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/pip/PipAnimationControllerTest.java index 7e68b68e46..5880ffb0dc 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/pip/PipAnimationControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/pip/PipAnimationControllerTest.java @@ -28,11 +28,8 @@ import static com.android.wm.shell.pip.PipAnimationController.TRANSITION_DIRECTI import static org.junit.Assert.assertEquals; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.eq; -import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import android.app.AppCompatTaskInfo; import android.app.TaskInfo; import android.graphics.Rect; import android.testing.AndroidTestingRunner; @@ -78,7 +75,6 @@ public class PipAnimationControllerTest extends ShellTestCase { .setContainerLayer() .setName("FakeLeash") .build(); - mTaskInfo.appCompatTaskInfo = mock(AppCompatTaskInfo.class); } @Test @@ -87,21 +83,17 @@ public class PipAnimationControllerTest extends ShellTestCase { .getAnimator(mTaskInfo, mLeash, new Rect(), 0f, 1f); assertEquals("Expect ANIM_TYPE_ALPHA animation", - animator.getAnimationType(), PipTransitionController.ANIM_TYPE_ALPHA); + animator.getAnimationType(), PipAnimationController.ANIM_TYPE_ALPHA); } @Test public void getAnimator_withBounds_returnBoundsAnimator() { - final Rect baseValue = new Rect(0, 0, 100, 100); - final Rect startValue = new Rect(0, 0, 100, 100); - final Rect endValue1 = new Rect(100, 100, 200, 200); final PipAnimationController.PipTransitionAnimator animator = mPipAnimationController - .getAnimator(mTaskInfo, mLeash, baseValue, startValue, endValue1, null, - TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); + .getAnimator(mTaskInfo, mLeash, new Rect(), new Rect(), new Rect(), null, + TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0); assertEquals("Expect ANIM_TYPE_BOUNDS animation", - animator.getAnimationType(), PipTransitionController.ANIM_TYPE_BOUNDS); + animator.getAnimationType(), PipAnimationController.ANIM_TYPE_BOUNDS); } @Test @@ -112,16 +104,14 @@ public class PipAnimationControllerTest extends ShellTestCase { final Rect endValue2 = new Rect(200, 200, 300, 300); final PipAnimationController.PipTransitionAnimator oldAnimator = mPipAnimationController .getAnimator(mTaskInfo, mLeash, baseValue, startValue, endValue1, null, - TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); + TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0); oldAnimator.setSurfaceControlTransactionFactory( MockSurfaceControlHelper::createMockSurfaceControlTransaction); oldAnimator.start(); final PipAnimationController.PipTransitionAnimator newAnimator = mPipAnimationController .getAnimator(mTaskInfo, mLeash, baseValue, startValue, endValue2, null, - TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); + TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0); assertEquals("getAnimator with same type returns same animator", oldAnimator, newAnimator); @@ -152,8 +142,7 @@ public class PipAnimationControllerTest extends ShellTestCase { // Fullscreen to PiP. PipAnimationController.PipTransitionAnimator<?> animator = mPipAnimationController .getAnimator(mTaskInfo, mLeash, null, startBounds, endBounds, null, - TRANSITION_DIRECTION_LEAVE_PIP, 0, ROTATION_90, - false /* alwaysAnimateTaskBounds */); + TRANSITION_DIRECTION_LEAVE_PIP, 0, ROTATION_90); // Apply fraction 1 to compute the end value. animator.applySurfaceControlTransaction(mLeash, tx, 1); final Rect rotatedEndBounds = new Rect(endBounds); @@ -165,8 +154,7 @@ public class PipAnimationControllerTest extends ShellTestCase { startBounds.set(0, 0, 1000, 500); endBounds.set(200, 100, 400, 500); animator = mPipAnimationController.getAnimator(mTaskInfo, mLeash, startBounds, startBounds, - endBounds, null, TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_270, - false /* alwaysAnimateTaskBounds */); + endBounds, null, TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_270); animator.applySurfaceControlTransaction(mLeash, tx, 1); rotatedEndBounds.set(endBounds); rotateBounds(rotatedEndBounds, startBounds, ROTATION_270); @@ -174,39 +162,6 @@ public class PipAnimationControllerTest extends ShellTestCase { assertEquals("Expect 270 degree rotated bounds", rotatedEndBounds, animator.mCurrentValue); } - @Test - public void pipTransitionAnimator_rotatedEndValue_overrideMainWindowFrame() { - final SurfaceControl.Transaction tx = createMockSurfaceControlTransaction(); - final Rect startBounds = new Rect(200, 700, 400, 800); - final Rect endBounds = new Rect(0, 0, 500, 1000); - mTaskInfo.topActivityMainWindowFrame = new Rect(0, 250, 1000, 500); - - // Fullscreen task to PiP. - PipAnimationController.PipTransitionAnimator<?> animator = mPipAnimationController - .getAnimator(mTaskInfo, mLeash, null, startBounds, endBounds, null, - TRANSITION_DIRECTION_LEAVE_PIP, 0, ROTATION_90, - false /* alwaysAnimateTaskBounds */); - // Apply fraction 1 to compute the end value. - animator.applySurfaceControlTransaction(mLeash, tx, 1); - - assertEquals("Expect main window frame", mTaskInfo.topActivityMainWindowFrame, - animator.mCurrentValue); - - // PiP to fullscreen. - mTaskInfo.topActivityMainWindowFrame = new Rect(0, 250, 1000, 500); - startBounds.set(0, 0, 1000, 500); - endBounds.set(200, 100, 400, 500); - animator = mPipAnimationController.getAnimator(mTaskInfo, mLeash, startBounds, startBounds, - endBounds, null, TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_270, - false /* alwaysAnimateTaskBounds */); - animator.applySurfaceControlTransaction(mLeash, tx, 1); - final Rect rotatedEndBounds = new Rect(endBounds); - rotateBounds(rotatedEndBounds, startBounds, ROTATION_270); - - assertEquals("Expect rotated bounds. We only use main window frame for " - + "leave-pip animation", rotatedEndBounds, animator.mCurrentValue); - } - @Test @SuppressWarnings("unchecked") public void pipTransitionAnimator_updateEndValue() { @@ -216,8 +171,7 @@ public class PipAnimationControllerTest extends ShellTestCase { final Rect endValue2 = new Rect(200, 200, 300, 300); final PipAnimationController.PipTransitionAnimator animator = mPipAnimationController .getAnimator(mTaskInfo, mLeash, baseValue, startValue, endValue1, null, - TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); + TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0); animator.updateEndValue(endValue2); @@ -231,8 +185,7 @@ public class PipAnimationControllerTest extends ShellTestCase { final Rect endValue = new Rect(100, 100, 200, 200); final PipAnimationController.PipTransitionAnimator animator = mPipAnimationController .getAnimator(mTaskInfo, mLeash, baseValue, startValue, endValue, null, - TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); + TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0); animator.setSurfaceControlTransactionFactory( MockSurfaceControlHelper::createMockSurfaceControlTransaction); @@ -251,126 +204,4 @@ public class PipAnimationControllerTest extends ShellTestCase { verify(mPipAnimationCallback).onPipAnimationEnd(eq(mTaskInfo), any(SurfaceControl.Transaction.class), eq(animator)); } - - @Test - public void pipTransitionAnimator_overrideMainWindowFrame() { - final Rect baseValue = new Rect(0, 0, 100, 100); - final Rect startValue = new Rect(0, 0, 100, 100); - final Rect endValue = new Rect(100, 100, 200, 200); - mTaskInfo.topActivityMainWindowFrame = new Rect(0, 50, 100, 100); - PipAnimationController.PipTransitionAnimator<?> animator = mPipAnimationController - .getAnimator(mTaskInfo, mLeash, baseValue, startValue, endValue, null, - TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); - - assertEquals("Expect base value is overridden for in-PIP transition", - mTaskInfo.topActivityMainWindowFrame, animator.getBaseValue()); - assertEquals("Expect start value is overridden for in-PIP transition", - mTaskInfo.topActivityMainWindowFrame, animator.getStartValue()); - assertEquals("Expect end value is not overridden for in-PIP transition", - endValue, animator.getEndValue()); - - animator = mPipAnimationController.getAnimator(mTaskInfo, mLeash, baseValue, startValue, - endValue, null, TRANSITION_DIRECTION_LEAVE_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); - - assertEquals("Expect base value is not overridden for leave-PIP transition", - baseValue, animator.getBaseValue()); - assertEquals("Expect start value is not overridden for leave-PIP transition", - startValue, animator.getStartValue()); - assertEquals("Expect end value is overridden for leave-PIP transition", - mTaskInfo.topActivityMainWindowFrame, animator.getEndValue()); - } - - @Test - public void pipTransitionAnimator_animateTaskBounds() { - final Rect baseValue = new Rect(0, 0, 100, 100); - final Rect startValue = new Rect(0, 0, 100, 100); - final Rect endValue = new Rect(100, 100, 200, 200); - mTaskInfo.topActivityMainWindowFrame = new Rect(0, 50, 100, 100); - PipAnimationController.PipTransitionAnimator<?> animator = mPipAnimationController - .getAnimator(mTaskInfo, mLeash, baseValue, startValue, endValue, null, - TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0, - true /* alwaysAnimateTaskBounds */); - - assertEquals("Expect base value is not overridden for in-PIP transition", - baseValue, animator.getBaseValue()); - assertEquals("Expect start value is not overridden for in-PIP transition", - startValue, animator.getStartValue()); - assertEquals("Expect end value is not overridden for in-PIP transition", - endValue, animator.getEndValue()); - - animator = mPipAnimationController.getAnimator(mTaskInfo, mLeash, baseValue, startValue, - endValue, null, TRANSITION_DIRECTION_LEAVE_PIP, 0, ROTATION_0, - true /* alwaysAnimateTaskBounds */); - - assertEquals("Expect base value is not overridden for leave-PIP transition", - baseValue, animator.getBaseValue()); - assertEquals("Expect start value is not overridden for leave-PIP transition", - startValue, animator.getStartValue()); - assertEquals("Expect end value is not overridden for leave-PIP transition", - endValue, animator.getEndValue()); - } - - @Test - public void pipTransitionAnimator_letterboxed_animateTaskBounds() { - final Rect baseValue = new Rect(0, 0, 100, 100); - final Rect startValue = new Rect(0, 0, 100, 100); - final Rect endValue = new Rect(100, 100, 200, 200); - mTaskInfo.topActivityMainWindowFrame = new Rect(0, 50, 100, 100); - doReturn(true).when(mTaskInfo.appCompatTaskInfo).isTopActivityLetterboxed(); - PipAnimationController.PipTransitionAnimator<?> animator = mPipAnimationController - .getAnimator(mTaskInfo, mLeash, baseValue, startValue, endValue, null, - TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); - - assertEquals("Expect base value is not overridden for in-PIP transition", - baseValue, animator.getBaseValue()); - assertEquals("Expect start value is not overridden for in-PIP transition", - startValue, animator.getStartValue()); - assertEquals("Expect end value is not overridden for in-PIP transition", - endValue, animator.getEndValue()); - - animator = mPipAnimationController.getAnimator(mTaskInfo, mLeash, baseValue, startValue, - endValue, null, TRANSITION_DIRECTION_LEAVE_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); - - assertEquals("Expect base value is not overridden for leave-PIP transition", - baseValue, animator.getBaseValue()); - assertEquals("Expect start value is not overridden for leave-PIP transition", - startValue, animator.getStartValue()); - assertEquals("Expect end value is not overridden for leave-PIP transition", - endValue, animator.getEndValue()); - } - - @Test - public void pipTransitionAnimator_sizeCompat_animateTaskBounds() { - final Rect baseValue = new Rect(0, 0, 100, 100); - final Rect startValue = new Rect(0, 0, 100, 100); - final Rect endValue = new Rect(100, 100, 200, 200); - mTaskInfo.topActivityMainWindowFrame = new Rect(0, 50, 100, 100); - doReturn(true).when(mTaskInfo.appCompatTaskInfo).isTopActivityInSizeCompat(); - PipAnimationController.PipTransitionAnimator<?> animator = mPipAnimationController - .getAnimator(mTaskInfo, mLeash, baseValue, startValue, endValue, null, - TRANSITION_DIRECTION_TO_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); - - assertEquals("Expect base value is not overridden for in-PIP transition", - baseValue, animator.getBaseValue()); - assertEquals("Expect start value is not overridden for in-PIP transition", - startValue, animator.getStartValue()); - assertEquals("Expect end value is not overridden for in-PIP transition", - endValue, animator.getEndValue()); - - animator = mPipAnimationController.getAnimator(mTaskInfo, mLeash, baseValue, startValue, - endValue, null, TRANSITION_DIRECTION_LEAVE_PIP, 0, ROTATION_0, - false /* alwaysAnimateTaskBounds */); - - assertEquals("Expect base value is not overridden for leave-PIP transition", - baseValue, animator.getBaseValue()); - assertEquals("Expect start value is not overridden for leave-PIP transition", - startValue, animator.getStartValue()); - assertEquals("Expect end value is not overridden for leave-PIP transition", - endValue, animator.getEndValue()); - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/pip/PipTaskOrganizerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/pip/PipTaskOrganizerTest.java index 7c3345fe55..e74c804d4f 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/pip/PipTaskOrganizerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/pip/PipTaskOrganizerTest.java @@ -24,7 +24,6 @@ import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyFloat; import static org.mockito.ArgumentMatchers.anyInt; -import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; @@ -37,7 +36,6 @@ import android.content.ComponentName; import android.content.pm.ActivityInfo; import android.graphics.Rect; import android.os.RemoteException; -import android.platform.test.annotations.DisableFlags; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; import android.util.Rational; @@ -48,14 +46,12 @@ import android.window.WindowContainerToken; import androidx.test.filters.SmallTest; -import com.android.wm.shell.Flags; import com.android.wm.shell.MockSurfaceControlHelper; -import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; +import com.android.wm.shell.TestShellExecutor; import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayLayout; -import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.common.pip.PhoneSizeSpecSource; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; @@ -65,10 +61,8 @@ import com.android.wm.shell.common.pip.PipKeepClearAlgorithmInterface; import com.android.wm.shell.common.pip.PipSnapAlgorithm; import com.android.wm.shell.common.pip.PipUiEventLogger; import com.android.wm.shell.common.pip.SizeSpecSource; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; import com.android.wm.shell.pip.phone.PhonePipMenuController; import com.android.wm.shell.splitscreen.SplitScreenController; -import com.android.wm.shell.sysui.ShellInit; import org.junit.Before; import org.junit.Test; @@ -85,10 +79,8 @@ import java.util.Optional; @SmallTest @RunWith(AndroidTestingRunner.class) @TestableLooper.RunWithLooper -@DisableFlags(Flags.FLAG_ENABLE_PIP2) public class PipTaskOrganizerTest extends ShellTestCase { private PipTaskOrganizer mPipTaskOrganizer; - private ShellInit mShellInit; @Mock private DisplayController mMockDisplayController; @Mock private SyncTransactionQueue mMockSyncTransactionQueue; @@ -98,12 +90,9 @@ public class PipTaskOrganizerTest extends ShellTestCase { @Mock private PipSurfaceTransactionHelper mMockPipSurfaceTransactionHelper; @Mock private PipUiEventLogger mMockPipUiEventLogger; @Mock private Optional<SplitScreenController> mMockOptionalSplitScreen; - @Mock private Optional<DesktopUserRepositories> mMockOptionalDesktopUserRepositories; - @Mock private RootTaskDisplayAreaOrganizer mRootTaskDisplayAreaOrganizer; @Mock private ShellTaskOrganizer mMockShellTaskOrganizer; @Mock private PipParamsChangedForwarder mMockPipParamsChangedForwarder; - @Mock private ShellExecutor mMockExecutor; - @Mock private DisplayController mDisplayController; + private TestShellExecutor mMainExecutor; private PipBoundsState mPipBoundsState; private PipTransitionState mPipTransitionState; private PipBoundsAlgorithm mPipBoundsAlgorithm; @@ -116,34 +105,24 @@ public class PipTaskOrganizerTest extends ShellTestCase { @Before public void setUp() throws RemoteException { MockitoAnnotations.initMocks(this); - doAnswer(invocation -> { - ((Runnable) invocation.getArgument(0)).run(); - return null; - }).when(mMockExecutor).execute(any()); mComponent1 = new ComponentName(mContext, "component1"); mComponent2 = new ComponentName(mContext, "component2"); - mShellInit = new ShellInit(mMockExecutor); - mPipDisplayLayoutState = new PipDisplayLayoutState(mContext, mDisplayController, - mShellInit); - // Directly call onInit instead of using ShellInit - mPipDisplayLayoutState.onInit(); + mPipDisplayLayoutState = new PipDisplayLayoutState(mContext); mSizeSpecSource = new PhoneSizeSpecSource(mContext, mPipDisplayLayoutState); mPipBoundsState = new PipBoundsState(mContext, mSizeSpecSource, mPipDisplayLayoutState); mPipTransitionState = new PipTransitionState(); mPipBoundsAlgorithm = new PipBoundsAlgorithm(mContext, mPipBoundsState, new PipSnapAlgorithm(), new PipKeepClearAlgorithmInterface() {}, mPipDisplayLayoutState, mSizeSpecSource); - mPipTaskOrganizer = new PipTaskOrganizer(mContext, mShellInit, mMockSyncTransactionQueue, + mMainExecutor = new TestShellExecutor(); + mPipTaskOrganizer = new PipTaskOrganizer(mContext, mMockSyncTransactionQueue, mPipTransitionState, mPipBoundsState, mPipDisplayLayoutState, mPipBoundsAlgorithm, mMockPhonePipMenuController, mMockPipAnimationController, mMockPipSurfaceTransactionHelper, mMockPipTransitionController, mMockPipParamsChangedForwarder, mMockOptionalSplitScreen, - Optional.empty() /* pipPerfHintControllerOptional */, - mMockOptionalDesktopUserRepositories, mRootTaskDisplayAreaOrganizer, - mMockDisplayController, mMockPipUiEventLogger, mMockShellTaskOrganizer, - mMockExecutor); - // Directly init mPipTaskOrganizer instead of using ShellInit - mPipTaskOrganizer.onInit(); + Optional.empty() /* pipPerfHintControllerOptional */, mMockDisplayController, + mMockPipUiEventLogger, mMockShellTaskOrganizer, mMainExecutor); + mMainExecutor.flushAll(); preparePipTaskOrg(); preparePipSurfaceTransactionHelper(); } @@ -176,12 +155,10 @@ public class PipTaskOrganizerTest extends ShellTestCase { @Test public void startSwipePipToHome_updatesOverrideMinSize() { - final Rational aspectRatio = new Rational(2, 1); - final Size defaultSize = mSizeSpecSource.getDefaultSize(aspectRatio.floatValue()); - final Size minSize = new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2); + final Size minSize = new Size(400, 320); mPipTaskOrganizer.startSwipePipToHome(mComponent1, createActivityInfo(minSize), - createPipParams(aspectRatio)); + createPipParams(null)); assertEquals(minSize, mPipBoundsState.getOverrideMinSize()); } @@ -206,12 +183,10 @@ public class PipTaskOrganizerTest extends ShellTestCase { @Test public void onTaskAppeared_updatesOverrideMinSize() { - final Rational aspectRatio = new Rational(2, 1); - final Size defaultSize = mSizeSpecSource.getDefaultSize(aspectRatio.floatValue()); - final Size minSize = new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2); + final Size minSize = new Size(400, 320); mPipTaskOrganizer.onTaskAppeared( - createTaskInfo(mComponent1, createPipParams(aspectRatio), minSize), + createTaskInfo(mComponent1, createPipParams(null), minSize), mock(SurfaceControl.class)); assertEquals(minSize, mPipBoundsState.getOverrideMinSize()); @@ -264,15 +239,13 @@ public class PipTaskOrganizerTest extends ShellTestCase { @Test public void onTaskInfoChanged_inPip_updatesOverrideMinSize() { - final Rational aspectRatio = new Rational(2, 1); - final Size defaultSize = mSizeSpecSource.getDefaultSize(aspectRatio.floatValue()); - final Size minSize = new Size(defaultSize.getWidth() / 2, defaultSize.getHeight() / 2); mPipTaskOrganizer.onTaskAppeared(createTaskInfo(mComponent1, - createPipParams(aspectRatio)), mock(SurfaceControl.class)); + createPipParams(null)), mock(SurfaceControl.class)); sendOnPipTransitionFinished(TRANSITION_DIRECTION_TO_PIP); + final Size minSize = new Size(400, 320); mPipTaskOrganizer.onTaskInfoChanged(createTaskInfo(mComponent2, - createPipParams(aspectRatio), minSize)); + createPipParams(null), minSize)); assertEquals(minSize, mPipBoundsState.getOverrideMinSize()); } @@ -299,7 +272,7 @@ public class PipTaskOrganizerTest extends ShellTestCase { DisplayLayout layout = new DisplayLayout(info, mContext.getResources(), true, true); mPipDisplayLayoutState.setDisplayLayout(layout); - doReturn(PipTransitionController.ANIM_TYPE_ALPHA).when(mMockPipAnimationController) + doReturn(PipAnimationController.ANIM_TYPE_ALPHA).when(mMockPipAnimationController) .takeOneShotEnterAnimationType(); mPipTaskOrganizer.setSurfaceControlTransactionFactory( MockSurfaceControlHelper::createMockSurfaceControlTransaction); @@ -307,7 +280,7 @@ public class PipTaskOrganizerTest extends ShellTestCase { private void preparePipSurfaceTransactionHelper() { doReturn(mMockPipSurfaceTransactionHelper).when(mMockPipSurfaceTransactionHelper) - .cropAndPosition(any(), any(), any()); + .crop(any(), any(), any()); doReturn(mMockPipSurfaceTransactionHelper).when(mMockPipSurfaceTransactionHelper) .resetScale(any(), any(), any()); doReturn(mMockPipSurfaceTransactionHelper).when(mMockPipSurfaceTransactionHelper) diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipControllerTest.java index 9a84bf75f0..d38fc6cb64 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipControllerTest.java @@ -34,22 +34,19 @@ import static org.mockito.Mockito.when; import static java.lang.Integer.MAX_VALUE; +import android.content.ComponentName; import android.content.Context; import android.content.pm.PackageManager; import android.content.res.Configuration; import android.graphics.Point; import android.graphics.Rect; import android.os.Bundle; -import android.os.Handler; import android.os.RemoteException; -import android.os.UserManager; -import android.platform.test.annotations.DisableFlags; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; import androidx.test.filters.SmallTest; -import com.android.wm.shell.Flags; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.WindowManagerShellWrapper; import com.android.wm.shell.common.DisplayController; @@ -58,7 +55,6 @@ import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.TabletopModeController; import com.android.wm.shell.common.TaskStackListenerImpl; -import com.android.wm.shell.common.pip.IPip; import com.android.wm.shell.common.pip.PhonePipKeepClearAlgorithm; import com.android.wm.shell.common.pip.PipAppOpsListener; import com.android.wm.shell.common.pip.PipBoundsAlgorithm; @@ -75,6 +71,7 @@ import com.android.wm.shell.pip.PipTransitionState; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; +import com.android.wm.shell.sysui.ShellSharedConstants; import org.junit.Before; import org.junit.Test; @@ -91,7 +88,6 @@ import java.util.Set; @SmallTest @RunWith(AndroidTestingRunner.class) @TestableLooper.RunWithLooper -@DisableFlags(Flags.FLAG_ENABLE_PIP2) public class PipControllerTest extends ShellTestCase { private PipController mPipController; private ShellInit mShellInit; @@ -120,8 +116,6 @@ public class PipControllerTest extends ShellTestCase { @Mock private PipParamsChangedForwarder mMockPipParamsChangedForwarder; @Mock private DisplayInsetsController mMockDisplayInsetsController; @Mock private TabletopModeController mMockTabletopModeController; - @Mock private Handler mMockHandler; - @Mock private UserManager mMockUserManager; @Mock private DisplayLayout mMockDisplayLayout1; @Mock private DisplayLayout mMockDisplayLayout2; @@ -133,9 +127,9 @@ public class PipControllerTest extends ShellTestCase { ((Runnable) invocation.getArgument(0)).run(); return null; }).when(mMockExecutor).execute(any()); - mShellInit = new ShellInit(mMockExecutor); + mShellInit = spy(new ShellInit(mMockExecutor)); mShellController = spy(new ShellController(mContext, mShellInit, mMockShellCommandHandler, - mMockDisplayInsetsController, mMockUserManager, mMockExecutor)); + mMockDisplayInsetsController, mMockExecutor)); mPipController = new PipController(mContext, mShellInit, mMockShellCommandHandler, mShellController, mMockDisplayController, mMockPipAnimationController, mMockPipAppOpsListener, mMockPipBoundsAlgorithm, mMockPipKeepClearAlgorithm, @@ -145,11 +139,15 @@ public class PipControllerTest extends ShellTestCase { mMockPipTransitionController, mMockWindowManagerShellWrapper, mMockTaskStackListener, mMockPipParamsChangedForwarder, mMockDisplayInsetsController, mMockTabletopModeController, - mMockOneHandedController, mMockExecutor, mMockHandler); + mMockOneHandedController, mMockExecutor); + mShellInit.init(); when(mMockPipBoundsAlgorithm.getSnapAlgorithm()).thenReturn(mMockPipSnapAlgorithm); when(mMockPipTouchHandler.getMotionHelper()).thenReturn(mMockPipMotionHelper); - // Directly init mPipController instead of using ShellInit - mPipController.onInit(); + } + + @Test + public void instantiatePipController_addInitCallback() { + verify(mShellInit, times(1)).addInitCallback(any(), eq(mPipController)); } @Test @@ -170,7 +168,7 @@ public class PipControllerTest extends ShellTestCase { @Test public void instantiatePipController_registerExternalInterface() { verify(mShellController, times(1)).addExternalInterface( - eq(IPip.DESCRIPTOR), any(), eq(mPipController)); + eq(ShellSharedConstants.KEY_EXTRA_SHELL_PIP), any(), eq(mPipController)); } @Test @@ -185,7 +183,7 @@ public class PipControllerTest extends ShellTestCase { @Test public void instantiatePipController_registersPipTransitionCallback() { - verify(mMockPipTransitionController).registerPipTransitionCallback(any(), any()); + verify(mMockPipTransitionController).registerPipTransitionCallback(any()); } @Test @@ -233,7 +231,28 @@ public class PipControllerTest extends ShellTestCase { mMockPipTransitionController, mMockWindowManagerShellWrapper, mMockTaskStackListener, mMockPipParamsChangedForwarder, mMockDisplayInsetsController, mMockTabletopModeController, - mMockOneHandedController, mMockExecutor, mMockHandler)); + mMockOneHandedController, mMockExecutor)); + } + + @Test + public void onActivityHidden_isLastPipComponentName_clearLastPipComponent() { + final ComponentName component1 = new ComponentName(mContext, "component1"); + when(mMockPipBoundsState.getLastPipComponentName()).thenReturn(component1); + + mPipController.mPinnedTaskListener.onActivityHidden(component1); + + verify(mMockPipBoundsState).setLastPipComponentName(null); + } + + @Test + public void onActivityHidden_isNotLastPipComponentName_lastPipComponentNotCleared() { + final ComponentName component1 = new ComponentName(mContext, "component1"); + final ComponentName component2 = new ComponentName(mContext, "component2"); + when(mMockPipBoundsState.getLastPipComponentName()).thenReturn(component1); + + mPipController.mPinnedTaskListener.onActivityHidden(component2); + + verify(mMockPipBoundsState, never()).setLastPipComponentName(null); } @Test @@ -259,7 +278,7 @@ public class PipControllerTest extends ShellTestCase { when(mMockPipDisplayLayoutState.getDisplayLayout()).thenReturn(mMockDisplayLayout1); when(mMockDisplayController.getDisplayLayout(displayId)).thenReturn(mMockDisplayLayout2); - when(mMockPipTransitionState.hasEnteredPip()).thenReturn(true); + when(mMockPipTaskOrganizer.isInPip()).thenReturn(true); mPipController.mDisplaysChangedListener.onDisplayConfigurationChanged( displayId, new Configuration()); diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipResizeGestureHandlerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipResizeGestureHandlerTest.java index 4ddbe76775..ace09a82d7 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipResizeGestureHandlerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipResizeGestureHandlerTest.java @@ -36,7 +36,6 @@ import androidx.test.filters.SmallTest; import com.android.wm.shell.R; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.FloatingContentCoordinator; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.pip.PhoneSizeSpecSource; @@ -49,7 +48,6 @@ import com.android.wm.shell.common.pip.PipUiEventLogger; import com.android.wm.shell.common.pip.SizeSpecSource; import com.android.wm.shell.pip.PipTaskOrganizer; import com.android.wm.shell.pip.PipTransitionController; -import com.android.wm.shell.sysui.ShellInit; import org.junit.Before; import org.junit.Test; @@ -91,12 +89,6 @@ public class PipResizeGestureHandlerTest extends ShellTestCase { @Mock private ShellExecutor mMainExecutor; - @Mock - private DisplayController mDisplayController; - - @Mock - private ShellInit mShellInit; - private PipResizeGestureHandler mPipResizeGestureHandler; private PipBoundsState mPipBoundsState; @@ -113,10 +105,7 @@ public class PipResizeGestureHandlerTest extends ShellTestCase { final TestableResources res = mContext.getOrCreateTestableResources(); res.addOverride(R.bool.config_pipEnablePinchResize, true); - mPipDisplayLayoutState = new PipDisplayLayoutState(mContext, mDisplayController, - mShellInit); - // Directly call onInit instead of using ShellInit - mPipDisplayLayoutState.onInit(); + mPipDisplayLayoutState = new PipDisplayLayoutState(mContext); mSizeSpecSource = new PhoneSizeSpecSource(mContext, mPipDisplayLayoutState); mPipBoundsState = new PipBoundsState(mContext, mSizeSpecSource, mPipDisplayLayoutState); final PipSnapAlgorithm pipSnapAlgorithm = new PipSnapAlgorithm(); @@ -125,8 +114,8 @@ public class PipResizeGestureHandlerTest extends ShellTestCase { final PipBoundsAlgorithm pipBoundsAlgorithm = new PipBoundsAlgorithm(mContext, mPipBoundsState, pipSnapAlgorithm, pipKeepClearAlgorithm, mPipDisplayLayoutState, mSizeSpecSource); - final PipMotionHelper motionHelper = new PipMotionHelper(mContext, mMainExecutor, - mPipBoundsState, mPipTaskOrganizer, mPhonePipMenuController, pipSnapAlgorithm, + final PipMotionHelper motionHelper = new PipMotionHelper(mContext, mPipBoundsState, + mPipTaskOrganizer, mPhonePipMenuController, pipSnapAlgorithm, mMockPipTransitionController, mFloatingContentCoordinator, Optional.empty() /* pipPerfHintControllerOptional */); @@ -135,7 +124,7 @@ public class PipResizeGestureHandlerTest extends ShellTestCase { mPipResizeGestureHandler = new PipResizeGestureHandler(mContext, pipBoundsAlgorithm, mPipBoundsState, motionHelper, mPipTouchState, mPipTaskOrganizer, mPipDismissTargetHandler, - (Rect bounds) -> new Rect(), () -> {}, mPipUiEventLogger, mPhonePipMenuController, + () -> {}, mPipUiEventLogger, mPhonePipMenuController, mMainExecutor, null /* pipPerfHintController */) { @Override public void pilferPointers() { diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipTouchHandlerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipTouchHandlerTest.java index bc2185e9a9..92762fa685 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipTouchHandlerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/pip/phone/PipTouchHandlerTest.java @@ -17,6 +17,7 @@ package com.android.wm.shell.pip.phone; import static org.junit.Assert.assertEquals; +import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; @@ -28,7 +29,6 @@ import android.util.Size; import androidx.test.filters.SmallTest; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.FloatingContentCoordinator; import com.android.wm.shell.common.ShellExecutor; @@ -63,6 +63,7 @@ import java.util.Optional; @SmallTest @TestableLooper.RunWithLooper(setAsMainLooper = true) public class PipTouchHandlerTest extends ShellTestCase { + private static final int INSET = 10; private static final int PIP_LENGTH = 100; @@ -89,9 +90,6 @@ public class PipTouchHandlerTest extends ShellTestCase { @Mock private ShellExecutor mMainExecutor; - @Mock - private DisplayController mDisplayController; - private PipBoundsState mPipBoundsState; private PipBoundsAlgorithm mPipBoundsAlgorithm; private PipSnapAlgorithm mPipSnapAlgorithm; @@ -112,17 +110,14 @@ public class PipTouchHandlerTest extends ShellTestCase { @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); - mPipDisplayLayoutState = new PipDisplayLayoutState(mContext, mDisplayController, - mShellInit); - // Directly call onInit instead of using ShellInit - mPipDisplayLayoutState.onInit(); + mPipDisplayLayoutState = new PipDisplayLayoutState(mContext); mSizeSpecSource = new PhoneSizeSpecSource(mContext, mPipDisplayLayoutState); mPipBoundsState = new PipBoundsState(mContext, mSizeSpecSource, mPipDisplayLayoutState); mPipSnapAlgorithm = new PipSnapAlgorithm(); mPipBoundsAlgorithm = new PipBoundsAlgorithm(mContext, mPipBoundsState, mPipSnapAlgorithm, new PipKeepClearAlgorithmInterface() {}, mPipDisplayLayoutState, mSizeSpecSource); - PipMotionHelper pipMotionHelper = new PipMotionHelper(mContext, mMainExecutor, - mPipBoundsState, mPipTaskOrganizer, mPhonePipMenuController, mPipSnapAlgorithm, + PipMotionHelper pipMotionHelper = new PipMotionHelper(mContext, mPipBoundsState, + mPipTaskOrganizer, mPhonePipMenuController, mPipSnapAlgorithm, mMockPipTransitionController, mFloatingContentCoordinator, Optional.empty() /* pipPerfHintControllerOptional */); mPipTouchHandler = new PipTouchHandler(mContext, mShellInit, mPhonePipMenuController, @@ -154,6 +149,11 @@ public class PipTouchHandlerTest extends ShellTestCase { mImeHeight = 100; } + @Test + public void instantiate_addInitCallback() { + verify(mShellInit, times(1)).addInitCallback(any(), any()); + } + @Test public void updateMovementBounds_minMaxBounds() { final int shorterLength = Math.min(mPipBoundsState.getDisplayBounds().width(), diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/pip/tv/OWNERS b/wmshell/tests/unittest/src/com/android/wm/shell/pip/tv/OWNERS index a7d1890a02..736d4cff6c 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/pip/tv/OWNERS +++ b/wmshell/tests/unittest/src/com/android/wm/shell/pip/tv/OWNERS @@ -1,2 +1,3 @@ # WM shell sub-module TV pip owners -bronger@google.com +galinap@google.com +bronger@google.com \ No newline at end of file diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/pip/tv/TvPipGravityTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/pip/tv/TvPipGravityTest.java index ec7a432ed2..974539f23b 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/pip/tv/TvPipGravityTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/pip/tv/TvPipGravityTest.java @@ -26,12 +26,10 @@ import static org.junit.Assert.assertEquals; import android.view.Gravity; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.common.DisplayController; import com.android.wm.shell.common.pip.LegacySizeSpecSource; import com.android.wm.shell.common.pip.PipDisplayLayoutState; import com.android.wm.shell.common.pip.PipSnapAlgorithm; import com.android.wm.shell.common.pip.SizeSpecSource; -import com.android.wm.shell.sysui.ShellInit; import org.junit.Before; import org.junit.Test; @@ -47,10 +45,6 @@ public class TvPipGravityTest extends ShellTestCase { @Mock private PipSnapAlgorithm mMockPipSnapAlgorithm; - @Mock - private DisplayController mDisplayController; - @Mock - private ShellInit mShellInit; private TvPipBoundsState mTvPipBoundsState; private TvPipBoundsAlgorithm mTvPipBoundsAlgorithm; @@ -62,10 +56,7 @@ public class TvPipGravityTest extends ShellTestCase { assumeTelevision(); MockitoAnnotations.initMocks(this); - mPipDisplayLayoutState = new PipDisplayLayoutState(mContext, mDisplayController, - mShellInit); - // Directly call onInit instead of using ShellInit - mPipDisplayLayoutState.onInit(); + mPipDisplayLayoutState = new PipDisplayLayoutState(mContext); mSizeSpecSource = new LegacySizeSpecSource(mContext, mPipDisplayLayoutState); mTvPipBoundsState = new TvPipBoundsState(mContext, mSizeSpecSource, mPipDisplayLayoutState); @@ -250,16 +241,16 @@ public class TvPipGravityTest extends ShellTestCase { @Test public void updateGravity_move_expanded_valid() { + mTvPipBoundsState.setTvPipExpanded(true); + // Vertical expanded PiP. mTvPipBoundsState.setDesiredTvExpandedAspectRatio(VERTICAL_EXPANDED_ASPECT_RATIO, true); - mTvPipBoundsState.setTvPipExpanded(true); mTvPipBoundsState.setTvPipGravity(Gravity.CENTER_VERTICAL | Gravity.RIGHT); moveAndCheckGravity(KEYCODE_DPAD_LEFT, Gravity.CENTER_VERTICAL | Gravity.LEFT, true); moveAndCheckGravity(KEYCODE_DPAD_RIGHT, Gravity.CENTER_VERTICAL | Gravity.RIGHT, true); // Horizontal expanded PiP. mTvPipBoundsState.setDesiredTvExpandedAspectRatio(HORIZONTAL_EXPANDED_ASPECT_RATIO, true); - mTvPipBoundsState.setTvPipExpanded(true); mTvPipBoundsState.setTvPipGravity(Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL); moveAndCheckGravity(KEYCODE_DPAD_UP, Gravity.TOP | Gravity.CENTER_HORIZONTAL, true); moveAndCheckGravity(KEYCODE_DPAD_DOWN, Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL, true); @@ -290,9 +281,10 @@ public class TvPipGravityTest extends ShellTestCase { @Test public void updateGravity_move_expanded_invalid() { + mTvPipBoundsState.setTvPipExpanded(true); + // Vertical expanded PiP. mTvPipBoundsState.setDesiredTvExpandedAspectRatio(VERTICAL_EXPANDED_ASPECT_RATIO, true); - mTvPipBoundsState.setTvPipExpanded(true); mTvPipBoundsState.setTvPipGravity(Gravity.CENTER_VERTICAL | Gravity.RIGHT); moveAndCheckGravity(KEYCODE_DPAD_RIGHT, Gravity.CENTER_VERTICAL | Gravity.RIGHT, false); moveAndCheckGravity(KEYCODE_DPAD_UP, Gravity.CENTER_VERTICAL | Gravity.RIGHT, false); @@ -305,7 +297,6 @@ public class TvPipGravityTest extends ShellTestCase { // Horizontal expanded PiP. mTvPipBoundsState.setDesiredTvExpandedAspectRatio(HORIZONTAL_EXPANDED_ASPECT_RATIO, true); - mTvPipBoundsState.setTvPipExpanded(true); mTvPipBoundsState.setTvPipGravity(Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL); moveAndCheckGravity(KEYCODE_DPAD_DOWN, Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL, false); moveAndCheckGravity(KEYCODE_DPAD_LEFT, Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL, false); diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/recents/RecentTasksControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/recents/RecentTasksControllerTest.java index ae6ba3d6c7..e291c0e1a1 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/recents/RecentTasksControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/recents/RecentTasksControllerTest.java @@ -20,13 +20,9 @@ import static android.app.ActivityManager.RECENT_IGNORE_UNAVAILABLE; import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; -import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; -import static com.android.window.flags2.Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PERSISTENCE; -import static com.android.wm.shell.shared.GroupedTaskInfo.TYPE_DESK; -import static com.android.wm.shell.shared.GroupedTaskInfo.TYPE_FULLSCREEN; -import static com.android.wm.shell.shared.GroupedTaskInfo.TYPE_SPLIT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50; +import static com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_50_50; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; @@ -47,49 +43,46 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static java.lang.Integer.MAX_VALUE; -import static java.util.stream.Collectors.joining; -import android.app.ActivityManager.RecentTaskInfo; -import android.app.ActivityManager.RunningTaskInfo; +import android.app.ActivityManager; import android.app.ActivityTaskManager; -import android.app.KeyguardManager; import android.content.ComponentName; import android.content.Context; -import android.content.Intent; import android.content.pm.PackageManager; -import android.graphics.Point; import android.graphics.Rect; import android.os.Bundle; -import android.os.UserManager; import android.platform.test.annotations.DisableFlags; import android.platform.test.annotations.EnableFlags; +import android.platform.test.flag.junit.SetFlagsRule; import android.view.SurfaceControl; -import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; +import androidx.test.runner.AndroidJUnit4; -import com.android.window.flags2.Flags; +import com.android.dx.mockito.inline.extended.ExtendedMockito; +import com.android.dx.mockito.inline.extended.StaticMockitoSession; +import com.android.window.flags.Flags; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestShellExecutor; import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.TaskStackListenerImpl; -import com.android.wm.shell.desktopmode.DesktopRepository; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.desktopmode.DesktopWallpaperActivity; -import com.android.wm.shell.shared.GroupedTaskInfo; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; -import com.android.wm.shell.shared.split.SplitBounds; +import com.android.wm.shell.desktopmode.DesktopModeTaskRepository; +import com.android.wm.shell.shared.DesktopModeStatus; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; +import com.android.wm.shell.sysui.ShellSharedConstants; +import com.android.wm.shell.util.GroupedRecentTaskInfo; +import com.android.wm.shell.util.SplitBounds; import org.junit.After; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; -import org.mockito.MockitoAnnotations; +import org.mockito.quality.Strictness; import java.util.ArrayList; import java.util.Arrays; @@ -105,7 +98,6 @@ import java.util.function.Consumer; @RunWith(AndroidJUnit4.class) @SmallTest public class RecentTasksControllerTest extends ShellTestCase { - private static final String SYSTEM_UI_PACKAGE_NAME = "com.android.systemui"; @Mock private Context mContext; @@ -114,6 +106,8 @@ public class RecentTasksControllerTest extends ShellTestCase { @Mock private ShellCommandHandler mShellCommandHandler; @Mock + private DesktopModeTaskRepository mDesktopModeTaskRepository; + @Mock private ActivityTaskManager mActivityTaskManager; @Mock private DisplayInsetsController mDisplayInsetsController; @@ -121,13 +115,9 @@ public class RecentTasksControllerTest extends ShellTestCase { private IRecentTasksListener mRecentTasksListener; @Mock private TaskStackTransitionObserver mTaskStackTransitionObserver; - @Mock - private DesktopUserRepositories mDesktopUserRepositories; - @Mock - private DesktopRepository mDesktopRepository; - @Mock - private UserManager mUserManager; - private FakeDesktopState mDesktopState; + + @Rule + public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); private ShellTaskOrganizer mShellTaskOrganizer; private RecentTasksController mRecentTasksController; @@ -135,28 +125,24 @@ public class RecentTasksControllerTest extends ShellTestCase { private ShellInit mShellInit; private ShellController mShellController; private TestShellExecutor mMainExecutor; - private AutoCloseable mMocksInit = null; + private static StaticMockitoSession sMockitoSession; @Before public void setUp() { - mDesktopState = new FakeDesktopState(); - mDesktopState.setCanEnterDesktopMode(true); - - mMocksInit = MockitoAnnotations.openMocks(this); + sMockitoSession = mockitoSession().initMocks(this).strictness(Strictness.LENIENT) + .mockStatic(DesktopModeStatus.class).startMocking(); + ExtendedMockito.doReturn(true) + .when(() -> DesktopModeStatus.canEnterDesktopMode(any())); mMainExecutor = new TestShellExecutor(); - when(mDesktopUserRepositories.getCurrent()).thenReturn(mDesktopRepository); - when(mDesktopUserRepositories.getProfile(anyInt())).thenReturn(mDesktopRepository); when(mContext.getPackageManager()).thenReturn(mock(PackageManager.class)); - when(mContext.getSystemService(KeyguardManager.class)) - .thenReturn(mock(KeyguardManager.class)); mShellInit = spy(new ShellInit(mMainExecutor)); mShellController = spy(new ShellController(mContext, mShellInit, mShellCommandHandler, - mDisplayInsetsController, mUserManager, mMainExecutor)); + mDisplayInsetsController, mMainExecutor)); mRecentTasksControllerReal = new RecentTasksController(mContext, mShellInit, mShellController, mShellCommandHandler, mTaskStackListener, mActivityTaskManager, - Optional.of(mDesktopUserRepositories), mTaskStackTransitionObserver, - mMainExecutor, mDesktopState); + Optional.of(mDesktopModeTaskRepository), mTaskStackTransitionObserver, + mMainExecutor); mRecentTasksController = spy(mRecentTasksControllerReal); mShellTaskOrganizer = new ShellTaskOrganizer(mShellInit, mShellCommandHandler, null /* sizeCompatUI */, Optional.empty(), Optional.of(mRecentTasksController), @@ -165,11 +151,8 @@ public class RecentTasksControllerTest extends ShellTestCase { } @After - public void tearDown() throws Exception { - if (mMocksInit != null) { - mMocksInit.close(); - mMocksInit = null; - } + public void tearDown() { + sMockitoSession.finishMocking(); } @Test @@ -186,13 +169,7 @@ public class RecentTasksControllerTest extends ShellTestCase { @Test public void instantiateController_addExternalInterface() { verify(mShellController, times(1)).addExternalInterface( - eq(IRecentTasks.DESCRIPTOR), any(), any()); - } - - @Test - public void instantiateController_initializesRepository() { - verify(mDesktopUserRepositories, times(1)).getCurrent(); - verify(mDesktopRepository, times(1)).addActiveTaskListener(any()); + eq(ShellSharedConstants.KEY_EXTRA_SHELL_RECENT_TASKS), any(), any()); } @Test @@ -211,9 +188,8 @@ public class RecentTasksControllerTest extends ShellTestCase { @Test public void testAddRemoveSplitNotifyChange() { - reset(mRecentTasksController); - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t2 = makeTaskInfo(2); setRawList(t1, t2); mRecentTasksController.addSplitPair(t1.taskId, t2.taskId, mock(SplitBounds.class)); @@ -226,136 +202,120 @@ public class RecentTasksControllerTest extends ShellTestCase { @Test public void testAddSameSplitBoundsInfoSkipNotifyChange() { - reset(mRecentTasksController); - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t2 = makeTaskInfo(2); setRawList(t1, t2); // Verify only one update if the split info is the same SplitBounds bounds1 = new SplitBounds(new Rect(0, 0, 50, 50), - new Rect(50, 50, 100, 100), t1.taskId, t2.taskId, SNAP_TO_2_50_50); + new Rect(50, 50, 100, 100), t1.taskId, t2.taskId, SNAP_TO_50_50); mRecentTasksController.addSplitPair(t1.taskId, t2.taskId, bounds1); SplitBounds bounds2 = new SplitBounds(new Rect(0, 0, 50, 50), - new Rect(50, 50, 100, 100), t1.taskId, t2.taskId, SNAP_TO_2_50_50); + new Rect(50, 50, 100, 100), t1.taskId, t2.taskId, SNAP_TO_50_50); mRecentTasksController.addSplitPair(t1.taskId, t2.taskId, bounds2); verify(mRecentTasksController, times(1)).notifyRecentTasksChanged(); } @Test public void testGetRecentTasks() { - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); - RecentTaskInfo t3 = makeTaskInfo(3); + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t2 = makeTaskInfo(2); + ActivityManager.RecentTaskInfo t3 = makeTaskInfo(3); setRawList(t1, t2, t3); - ArrayList<GroupedTaskInfo> recentTasks = - mRecentTasksController.getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); - assertGroupedTasksListEquals(recentTasks, List.of( - List.of(t1.taskId), - List.of(t2.taskId), - List.of(t3.taskId))); - } - - @Test - public void testGetRecentTasks_removesDesktopWallpaperActivity() { - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo desktopWallpaperTaskInfo = makeDesktopWallpaperTaskInfo(2); - RecentTaskInfo t3 = makeTaskInfo(3); - setRawList(t1, desktopWallpaperTaskInfo, t3); - - ArrayList<GroupedTaskInfo> recentTasks = - mRecentTasksController.getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); - assertGroupedTasksListEquals(recentTasks, List.of( - List.of(t1.taskId), - List.of(t3.taskId))); + ArrayList<GroupedRecentTaskInfo> recentTasks = mRecentTasksController.getRecentTasks( + MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); + assertGroupedTasksListEquals(recentTasks, + t1.taskId, -1, + t2.taskId, -1, + t3.taskId, -1); } @Test public void testGetRecentTasks_withPairs() { - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); - RecentTaskInfo t3 = makeTaskInfo(3); - RecentTaskInfo t4 = makeTaskInfo(4); - RecentTaskInfo t5 = makeTaskInfo(5); - RecentTaskInfo t6 = makeTaskInfo(6); + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t2 = makeTaskInfo(2); + ActivityManager.RecentTaskInfo t3 = makeTaskInfo(3); + ActivityManager.RecentTaskInfo t4 = makeTaskInfo(4); + ActivityManager.RecentTaskInfo t5 = makeTaskInfo(5); + ActivityManager.RecentTaskInfo t6 = makeTaskInfo(6); setRawList(t1, t2, t3, t4, t5, t6); // Mark a couple pairs [t2, t4], [t3, t5] SplitBounds pair1Bounds = - new SplitBounds(new Rect(), new Rect(), 2, 4, SNAP_TO_2_50_50); + new SplitBounds(new Rect(), new Rect(), 2, 4, SNAP_TO_50_50); SplitBounds pair2Bounds = - new SplitBounds(new Rect(), new Rect(), 3, 5, SNAP_TO_2_50_50); + new SplitBounds(new Rect(), new Rect(), 3, 5, SNAP_TO_50_50); mRecentTasksController.addSplitPair(t2.taskId, t4.taskId, pair1Bounds); mRecentTasksController.addSplitPair(t3.taskId, t5.taskId, pair2Bounds); - ArrayList<GroupedTaskInfo> recentTasks = - mRecentTasksController.getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); - assertGroupedTasksListEquals(recentTasks, List.of( - List.of(t1.taskId), - List.of(t2.taskId, t4.taskId), - List.of(t3.taskId, t5.taskId), - List.of(t6.taskId))); + ArrayList<GroupedRecentTaskInfo> recentTasks = mRecentTasksController.getRecentTasks( + MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); + assertGroupedTasksListEquals(recentTasks, + t1.taskId, -1, + t2.taskId, t4.taskId, + t3.taskId, t5.taskId, + t6.taskId, -1); } @Test public void testGetRecentTasks_ReturnsRecentTasksAsynchronously() { @SuppressWarnings("unchecked") - final List<GroupedTaskInfo>[] recentTasks = new List[1]; - Consumer<List<GroupedTaskInfo>> consumer = argument -> recentTasks[0] = argument; - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); - RecentTaskInfo t3 = makeTaskInfo(3); - RecentTaskInfo t4 = makeTaskInfo(4); - RecentTaskInfo t5 = makeTaskInfo(5); - RecentTaskInfo t6 = makeTaskInfo(6); + final List<GroupedRecentTaskInfo>[] recentTasks = new List[1]; + Consumer<List<GroupedRecentTaskInfo>> consumer = argument -> recentTasks[0] = argument; + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t2 = makeTaskInfo(2); + ActivityManager.RecentTaskInfo t3 = makeTaskInfo(3); + ActivityManager.RecentTaskInfo t4 = makeTaskInfo(4); + ActivityManager.RecentTaskInfo t5 = makeTaskInfo(5); + ActivityManager.RecentTaskInfo t6 = makeTaskInfo(6); setRawList(t1, t2, t3, t4, t5, t6); // Mark a couple pairs [t2, t4], [t3, t5] SplitBounds pair1Bounds = - new SplitBounds(new Rect(), new Rect(), 2, 4, SNAP_TO_2_50_50); + new SplitBounds(new Rect(), new Rect(), 2, 4, SNAP_TO_50_50); SplitBounds pair2Bounds = - new SplitBounds(new Rect(), new Rect(), 3, 5, SNAP_TO_2_50_50); + new SplitBounds(new Rect(), new Rect(), 3, 5, SNAP_TO_50_50); mRecentTasksController.addSplitPair(t2.taskId, t4.taskId, pair1Bounds); mRecentTasksController.addSplitPair(t3.taskId, t5.taskId, pair2Bounds); mRecentTasksController.asRecentTasks() - .getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0, Runnable::run, - consumer); + .getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0, Runnable::run, consumer); mMainExecutor.flushAll(); - assertGroupedTasksListEquals(recentTasks[0], List.of( - List.of(t1.taskId), - List.of(t2.taskId, t4.taskId), - List.of(t3.taskId, t5.taskId), - List.of(t6.taskId))); + assertGroupedTasksListEquals(recentTasks[0], + t1.taskId, -1, + t2.taskId, t4.taskId, + t3.taskId, t5.taskId, + t6.taskId, -1); } @Test public void testGetRecentTasks_hasActiveDesktopTasks_proto2Enabled_groupFreeformTasks() { - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); - RecentTaskInfo t3 = makeTaskInfo(3); - RecentTaskInfo t4 = makeTaskInfo(4); + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t2 = makeTaskInfo(2); + ActivityManager.RecentTaskInfo t3 = makeTaskInfo(3); + ActivityManager.RecentTaskInfo t4 = makeTaskInfo(4); setRawList(t1, t2, t3, t4); - when(mDesktopUserRepositories.getCurrent().isActiveTask(1)).thenReturn(true); - when(mDesktopUserRepositories.getCurrent().isActiveTask(3)).thenReturn(true); + when(mDesktopModeTaskRepository.isActiveTask(1)).thenReturn(true); + when(mDesktopModeTaskRepository.isActiveTask(3)).thenReturn(true); - ArrayList<GroupedTaskInfo> recentTasks = - mRecentTasksController.getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); + ArrayList<GroupedRecentTaskInfo> recentTasks = mRecentTasksController.getRecentTasks( + MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); // 2 freeform tasks should be grouped into one, 3 total recents entries assertEquals(3, recentTasks.size()); - GroupedTaskInfo singleGroup1 = recentTasks.get(0); - GroupedTaskInfo singleGroup2 = recentTasks.get(1); - GroupedTaskInfo freeformGroup = recentTasks.get(2); + GroupedRecentTaskInfo freeformGroup = recentTasks.get(0); + GroupedRecentTaskInfo singleGroup1 = recentTasks.get(1); + GroupedRecentTaskInfo singleGroup2 = recentTasks.get(2); // Check that groups have expected types - assertTrue(freeformGroup.isBaseType(TYPE_DESK)); - assertTrue(singleGroup1.isBaseType(TYPE_FULLSCREEN)); - assertTrue(singleGroup2.isBaseType(TYPE_FULLSCREEN)); + assertEquals(GroupedRecentTaskInfo.TYPE_FREEFORM, freeformGroup.getType()); + assertEquals(GroupedRecentTaskInfo.TYPE_SINGLE, singleGroup1.getType()); + assertEquals(GroupedRecentTaskInfo.TYPE_SINGLE, singleGroup2.getType()); // Check freeform group entries assertEquals(t1, freeformGroup.getTaskInfoList().get(0)); @@ -368,33 +328,33 @@ public class RecentTasksControllerTest extends ShellTestCase { @Test public void testGetRecentTasks_hasActiveDesktopTasks_proto2Enabled_freeformTaskOrder() { - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); - RecentTaskInfo t3 = makeTaskInfo(3); - RecentTaskInfo t4 = makeTaskInfo(4); - RecentTaskInfo t5 = makeTaskInfo(5); + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t2 = makeTaskInfo(2); + ActivityManager.RecentTaskInfo t3 = makeTaskInfo(3); + ActivityManager.RecentTaskInfo t4 = makeTaskInfo(4); + ActivityManager.RecentTaskInfo t5 = makeTaskInfo(5); setRawList(t1, t2, t3, t4, t5); SplitBounds pair1Bounds = - new SplitBounds(new Rect(), new Rect(), 1, 2, SNAP_TO_2_50_50); + new SplitBounds(new Rect(), new Rect(), 1, 2, SNAP_TO_50_50); mRecentTasksController.addSplitPair(t1.taskId, t2.taskId, pair1Bounds); - when(mDesktopUserRepositories.getCurrent().isActiveTask(3)).thenReturn(true); - when(mDesktopUserRepositories.getCurrent().isActiveTask(5)).thenReturn(true); + when(mDesktopModeTaskRepository.isActiveTask(3)).thenReturn(true); + when(mDesktopModeTaskRepository.isActiveTask(5)).thenReturn(true); - ArrayList<GroupedTaskInfo> recentTasks = - mRecentTasksController.getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); + ArrayList<GroupedRecentTaskInfo> recentTasks = mRecentTasksController.getRecentTasks( + MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); // 2 split screen tasks grouped, 2 freeform tasks grouped, 3 total recents entries assertEquals(3, recentTasks.size()); - GroupedTaskInfo splitGroup = recentTasks.get(0); - GroupedTaskInfo singleGroup = recentTasks.get(1); - GroupedTaskInfo freeformGroup = recentTasks.get(2); + GroupedRecentTaskInfo splitGroup = recentTasks.get(0); + GroupedRecentTaskInfo freeformGroup = recentTasks.get(1); + GroupedRecentTaskInfo singleGroup = recentTasks.get(2); // Check that groups have expected types - assertTrue(splitGroup.isBaseType(TYPE_SPLIT)); - assertTrue(freeformGroup.isBaseType(TYPE_DESK)); - assertTrue(singleGroup.isBaseType(TYPE_FULLSCREEN)); + assertEquals(GroupedRecentTaskInfo.TYPE_SPLIT, splitGroup.getType()); + assertEquals(GroupedRecentTaskInfo.TYPE_FREEFORM, freeformGroup.getType()); + assertEquals(GroupedRecentTaskInfo.TYPE_SINGLE, singleGroup.getType()); // Check freeform group entries assertEquals(t3, freeformGroup.getTaskInfoList().get(0)); @@ -410,26 +370,27 @@ public class RecentTasksControllerTest extends ShellTestCase { @Test public void testGetRecentTasks_hasActiveDesktopTasks_proto2Disabled_doNotGroupFreeformTasks() { - mDesktopState.setCanEnterDesktopMode(false); + ExtendedMockito.doReturn(false) + .when(() -> DesktopModeStatus.canEnterDesktopMode(any())); - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); - RecentTaskInfo t3 = makeTaskInfo(3); - RecentTaskInfo t4 = makeTaskInfo(4); + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t2 = makeTaskInfo(2); + ActivityManager.RecentTaskInfo t3 = makeTaskInfo(3); + ActivityManager.RecentTaskInfo t4 = makeTaskInfo(4); setRawList(t1, t2, t3, t4); - when(mDesktopUserRepositories.getCurrent().isActiveTask(1)).thenReturn(true); - when(mDesktopUserRepositories.getCurrent().isActiveTask(3)).thenReturn(true); + when(mDesktopModeTaskRepository.isActiveTask(1)).thenReturn(true); + when(mDesktopModeTaskRepository.isActiveTask(3)).thenReturn(true); - ArrayList<GroupedTaskInfo> recentTasks = - mRecentTasksController.getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); + ArrayList<GroupedRecentTaskInfo> recentTasks = mRecentTasksController.getRecentTasks( + MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); // Expect no grouping of tasks assertEquals(4, recentTasks.size()); - assertTrue(recentTasks.get(0).isBaseType(TYPE_FULLSCREEN)); - assertTrue(recentTasks.get(1).isBaseType(TYPE_FULLSCREEN)); - assertTrue(recentTasks.get(2).isBaseType(TYPE_FULLSCREEN)); - assertTrue(recentTasks.get(3).isBaseType(TYPE_FULLSCREEN)); + assertEquals(GroupedRecentTaskInfo.TYPE_SINGLE, recentTasks.get(0).getType()); + assertEquals(GroupedRecentTaskInfo.TYPE_SINGLE, recentTasks.get(1).getType()); + assertEquals(GroupedRecentTaskInfo.TYPE_SINGLE, recentTasks.get(2).getType()); + assertEquals(GroupedRecentTaskInfo.TYPE_SINGLE, recentTasks.get(3).getType()); assertEquals(t1, recentTasks.get(0).getTaskInfo1()); assertEquals(t2, recentTasks.get(1).getTaskInfo1()); @@ -438,106 +399,60 @@ public class RecentTasksControllerTest extends ShellTestCase { } @Test - public void testGetRecentTasks_proto2Enabled_includesMinimizedFreeformTasks() { - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); - RecentTaskInfo t3 = makeTaskInfo(3); - RecentTaskInfo t4 = makeTaskInfo(4); - RecentTaskInfo t5 = makeTaskInfo(5); + public void testGetRecentTasks_proto2Enabled_ignoresMinimizedFreeformTasks() { + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t2 = makeTaskInfo(2); + ActivityManager.RecentTaskInfo t3 = makeTaskInfo(3); + ActivityManager.RecentTaskInfo t4 = makeTaskInfo(4); + ActivityManager.RecentTaskInfo t5 = makeTaskInfo(5); setRawList(t1, t2, t3, t4, t5); - when(mDesktopRepository.isActiveTask(1)).thenReturn(true); - when(mDesktopRepository.isActiveTask(2)).thenReturn(false); - when(mDesktopRepository.isActiveTask(3)).thenReturn(true); - when(mDesktopRepository.isActiveTask(4)).thenReturn(false); - when(mDesktopRepository.isActiveTask(5)).thenReturn(true); - when(mDesktopRepository.isMinimizedTask(3)).thenReturn(true); + when(mDesktopModeTaskRepository.isActiveTask(1)).thenReturn(true); + when(mDesktopModeTaskRepository.isActiveTask(3)).thenReturn(true); + when(mDesktopModeTaskRepository.isActiveTask(5)).thenReturn(true); + when(mDesktopModeTaskRepository.isMinimizedTask(3)).thenReturn(true); - ArrayList<GroupedTaskInfo> recentTasks = - mRecentTasksController.getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); + ArrayList<GroupedRecentTaskInfo> recentTasks = mRecentTasksController.getRecentTasks( + MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); - // 3 freeform tasks should be grouped into one, 2 single tasks, 3 total recents entries + // 2 freeform tasks should be grouped into one, 1 task should be skipped, 3 total recents + // entries assertEquals(3, recentTasks.size()); - GroupedTaskInfo singleGroup1 = recentTasks.get(0); - GroupedTaskInfo singleGroup2 = recentTasks.get(1); - GroupedTaskInfo freeformGroup = recentTasks.get(2); + GroupedRecentTaskInfo freeformGroup = recentTasks.get(0); + GroupedRecentTaskInfo singleGroup1 = recentTasks.get(1); + GroupedRecentTaskInfo singleGroup2 = recentTasks.get(2); // Check that groups have expected types - assertTrue(freeformGroup.isBaseType(TYPE_DESK)); - assertTrue(singleGroup1.isBaseType(TYPE_FULLSCREEN)); - assertTrue(singleGroup2.isBaseType(TYPE_FULLSCREEN)); + assertEquals(GroupedRecentTaskInfo.TYPE_FREEFORM, freeformGroup.getType()); + assertEquals(GroupedRecentTaskInfo.TYPE_SINGLE, singleGroup1.getType()); + assertEquals(GroupedRecentTaskInfo.TYPE_SINGLE, singleGroup2.getType()); // Check freeform group entries - assertEquals(3, freeformGroup.getTaskInfoList().size()); + assertEquals(2, freeformGroup.getTaskInfoList().size()); assertEquals(t1, freeformGroup.getTaskInfoList().get(0)); - assertEquals(t3, freeformGroup.getTaskInfoList().get(1)); - assertEquals(t5, freeformGroup.getTaskInfoList().get(2)); + assertEquals(t5, freeformGroup.getTaskInfoList().get(1)); // Check single entries assertEquals(t2, singleGroup1.getTaskInfo1()); assertEquals(t4, singleGroup2.getTaskInfo1()); } - @Test - @EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_PERSISTENCE) - public void testGetRecentTasks_hasDesktopTasks_persistenceEnabled_freeformTaskHaveBoundsSet() { - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); - - t1.lastNonFullscreenBounds = new Rect(100, 200, 300, 400); - t2.lastNonFullscreenBounds = new Rect(150, 250, 350, 450); - setRawList(t1, t2); - - when(mDesktopUserRepositories.getCurrent().isActiveTask(1)).thenReturn(true); - when(mDesktopUserRepositories.getCurrent().isActiveTask(2)).thenReturn(true); - - ArrayList<GroupedTaskInfo> recentTasks = - mRecentTasksController.getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); - - assertEquals(1, recentTasks.size()); - GroupedTaskInfo freeformGroup = recentTasks.get(0); - - // Check bounds - assertEquals(t1.lastNonFullscreenBounds, freeformGroup.getTaskInfoList().get( - 0).configuration.windowConfiguration.getAppBounds()); - assertEquals(t2.lastNonFullscreenBounds, freeformGroup.getTaskInfoList().get( - 1).configuration.windowConfiguration.getAppBounds()); - - // Check position in parent - assertEquals(new Point(t1.lastNonFullscreenBounds.left, - t1.lastNonFullscreenBounds.top), - freeformGroup.getTaskInfoList().get(0).positionInParent); - assertEquals(new Point(t2.lastNonFullscreenBounds.left, - t2.lastNonFullscreenBounds.top), - freeformGroup.getTaskInfoList().get(1).positionInParent); - } - - @Test - @EnableFlags(FLAG_ENABLE_DESKTOP_WINDOWING_PERSISTENCE) - public void testGetRecentTasks_lastNonFullscreenBoundsNull_doesNotThrow() { - RecentTaskInfo t1 = makeTaskInfo(1); - t1.lastNonFullscreenBounds = null; - setRawList(t1); - when(mDesktopUserRepositories.getCurrent().isActiveTask(1)).thenReturn(true); - - mRecentTasksController.getRecentTasks(MAX_VALUE, RECENT_IGNORE_UNAVAILABLE, 0); - } @Test public void testRemovedTaskRemovesSplit() { - RecentTaskInfo t1 = makeTaskInfo(1); - RecentTaskInfo t2 = makeTaskInfo(2); - RecentTaskInfo t3 = makeTaskInfo(3); + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t2 = makeTaskInfo(2); + ActivityManager.RecentTaskInfo t3 = makeTaskInfo(3); setRawList(t1, t2, t3); // Add a pair SplitBounds pair1Bounds = - new SplitBounds(new Rect(), new Rect(), 2, 3, SNAP_TO_2_50_50); + new SplitBounds(new Rect(), new Rect(), 2, 3, SNAP_TO_50_50); mRecentTasksController.addSplitPair(t2.taskId, t3.taskId, pair1Bounds); reset(mRecentTasksController); // Remove one of the tasks and ensure the pair is removed SurfaceControl mockLeash = mock(SurfaceControl.class); - RunningTaskInfo rt2 = makeRunningTaskInfo(2); + ActivityManager.RunningTaskInfo rt2 = makeRunningTaskInfo(2); mShellTaskOrganizer.onTaskAppeared(rt2, mockLeash); mShellTaskOrganizer.onTaskVanished(rt2); @@ -546,25 +461,23 @@ public class RecentTasksControllerTest extends ShellTestCase { @Test public void testTaskWindowingModeChangedNotifiesChange() { - reset(mRecentTasksController); - RecentTaskInfo t1 = makeTaskInfo(1); + ActivityManager.RecentTaskInfo t1 = makeTaskInfo(1); setRawList(t1); // Remove one of the tasks and ensure the pair is removed SurfaceControl mockLeash = mock(SurfaceControl.class); - RunningTaskInfo rt2Fullscreen = makeRunningTaskInfo(2); + ActivityManager.RunningTaskInfo rt2Fullscreen = makeRunningTaskInfo(2); rt2Fullscreen.configuration.windowConfiguration.setWindowingMode( WINDOWING_MODE_FULLSCREEN); mShellTaskOrganizer.onTaskAppeared(rt2Fullscreen, mockLeash); // Change the windowing mode and ensure the recent tasks change is notified - RunningTaskInfo rt2MultiWIndow = makeRunningTaskInfo(2); + ActivityManager.RunningTaskInfo rt2MultiWIndow = makeRunningTaskInfo(2); rt2MultiWIndow.configuration.windowConfiguration.setWindowingMode( WINDOWING_MODE_MULTI_WINDOW); mShellTaskOrganizer.onTaskInfoChanged(rt2MultiWIndow); - // One for onTaskAppeared and one for onTaskInfoChanged - verify(mRecentTasksController, times(2)).notifyRecentTasksChanged(); + verify(mRecentTasksController).notifyRecentTasksChanged(); } @Test @@ -573,7 +486,7 @@ public class RecentTasksControllerTest extends ShellTestCase { public void onTaskAdded_desktopModeRunningAppsEnabled_triggersOnRunningTaskAppeared() throws Exception { mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); + ActivityManager.RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); mRecentTasksControllerReal.onTaskAdded(taskInfo); @@ -586,20 +499,7 @@ public class RecentTasksControllerTest extends ShellTestCase { public void onTaskAdded_desktopModeRunningAppsDisabled_doesNotTriggerOnRunningTaskAppeared() throws Exception { mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); - - mRecentTasksControllerReal.onTaskAdded(taskInfo); - - verify(mRecentTasksListener, never()).onRunningTaskAppeared(any()); - } - - @Test - @EnableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_TASKBAR_RUNNING_APPS}) - public void onTaskAdded_orDesktopWallpaperActivity_doesNotTriggerOnRunningTaskAppeared() - throws Exception { - RunningTaskInfo taskInfo = makeDesktopWallpaperActivityTaskInfo(/* taskId= */10); - mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); + ActivityManager.RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); mRecentTasksControllerReal.onTaskAdded(taskInfo); @@ -612,26 +512,13 @@ public class RecentTasksControllerTest extends ShellTestCase { public void taskWindowingModeChanged_desktopRunningAppsEnabled_triggersOnRunningTaskChanged() throws Exception { mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); + ActivityManager.RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); mRecentTasksControllerReal.onTaskRunningInfoChanged(taskInfo); verify(mRecentTasksListener).onRunningTaskChanged(taskInfo); } - @Test - @EnableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_TASKBAR_RUNNING_APPS}) - public void taskInfoChanged_forDesktopWallpaperActivity_doesNotTriggerOnRunningTaskChanged() - throws Exception { - RunningTaskInfo taskInfo = makeDesktopWallpaperActivityTaskInfo(/* taskId= */10); - mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - - mRecentTasksControllerReal.onTaskRunningInfoChanged(taskInfo); - - verify(mRecentTasksListener, never()).onRunningTaskChanged(any()); - } - @Test @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_TASKBAR_RUNNING_APPS) @@ -639,7 +526,7 @@ public class RecentTasksControllerTest extends ShellTestCase { taskWindowingModeChanged_desktopRunningAppsDisabled_doesNotTriggerOnRunningTaskChanged() throws Exception { mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); + ActivityManager.RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); mRecentTasksControllerReal.onTaskRunningInfoChanged(taskInfo); @@ -652,34 +539,20 @@ public class RecentTasksControllerTest extends ShellTestCase { public void onTaskRemoved_desktopModeRunningAppsEnabled_triggersOnRunningTaskVanished() throws Exception { mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); + ActivityManager.RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); mRecentTasksControllerReal.onTaskRemoved(taskInfo); verify(mRecentTasksListener).onRunningTaskVanished(taskInfo); } - - @Test - @EnableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_TASKBAR_RUNNING_APPS}) - public void onTaskRemoved_forDesktopWallpaperActivity_doesNotTriggerOnRunningTaskVanished() - throws Exception { - RunningTaskInfo taskInfo = makeDesktopWallpaperActivityTaskInfo(/* taskId= */10); - mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - - mRecentTasksControllerReal.onTaskRemoved(taskInfo); - - verify(mRecentTasksListener, never()).onRunningTaskVanished(any()); - } - @Test @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_TASKBAR_RUNNING_APPS) public void onTaskRemoved_desktopModeRunningAppsDisabled_doesNotTriggerOnRunningTaskVanished() throws Exception { mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); + ActivityManager.RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); mRecentTasksControllerReal.onTaskRemoved(taskInfo); @@ -688,16 +561,14 @@ public class RecentTasksControllerTest extends ShellTestCase { @Test @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @DisableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) public void onTaskMovedToFront_TaskStackObserverEnabled_triggersOnTaskMovedToFront() throws Exception { mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); + ActivityManager.RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); mRecentTasksControllerReal.onTaskMovedToFrontThroughTransition(taskInfo); - GroupedTaskInfo runningTask = GroupedTaskInfo.forFullscreenTasks(taskInfo); - verify(mRecentTasksListener).onTaskMovedToFront(eq(runningTask)); + verify(mRecentTasksListener).onTaskMovedToFront(taskInfo); } @Test @@ -705,25 +576,13 @@ public class RecentTasksControllerTest extends ShellTestCase { public void onTaskMovedToFront_TaskStackObserverEnabled_doesNotTriggersOnTaskMovedToFront() throws Exception { mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); + ActivityManager.RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); mRecentTasksControllerReal.onTaskMovedToFront(taskInfo); verify(mRecentTasksListener, never()).onTaskMovedToFront(any()); } - @Test - @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - public void onDesktopWallpaperActivityMovedToFront_doesNotTriggerOnTaskMovedToFront() - throws Exception { - RunningTaskInfo taskInfo = makeDesktopWallpaperActivityTaskInfo(/* taskId= */10); - mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - - mRecentTasksControllerReal.onTaskMovedToFrontThroughTransition(taskInfo); - - verify(mRecentTasksListener, never()).onTaskMovedToFront(any()); - } - @Test public void getNullSplitBoundsNonSplitTask() { SplitBounds sb = mRecentTasksController.getSplitBoundsForTaskId(3); @@ -755,211 +614,71 @@ public class RecentTasksControllerTest extends ShellTestCase { assertEquals(splitBounds4, pair2Bounds); } - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - public void shellTopTaskTracker_onTaskStackChanged_expectNoRecentsChanged() throws Exception { - mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - mRecentTasksControllerReal.onTaskStackChanged(); - verify(mRecentTasksListener, never()).onRecentTasksChanged(); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - public void shellTopTaskTracker_onTaskRemoved_expectNoRecentsChanged() throws Exception { - mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); - mRecentTasksControllerReal.onTaskRemoved(taskInfo); - verify(mRecentTasksListener, never()).onRecentTasksChanged(); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - public void shellTopTaskTracker_onVisibleTasksChanged() throws Exception { - mRecentTasksControllerReal.registerRecentTasksListener(mRecentTasksListener); - RunningTaskInfo taskInfo = makeRunningTaskInfo(/* taskId= */10); - mRecentTasksControllerReal.onVisibleTasksChanged(List.of(taskInfo)); - verify(mRecentTasksListener, never()).onVisibleTasksChanged(any()); - } - - @Test - public void generateList_emptyTaskList_expectNoGroupedTasks() throws Exception { - assertTrue(mRecentTasksControllerReal.generateList(List.of(), "test").isEmpty()); - } - - @Test - public void generateList_excludePipTask() throws Exception { - RunningTaskInfo task1 = makeRunningTaskInfo(1); - RunningTaskInfo pipTask = makeRunningTaskInfo(2); - pipTask.configuration.windowConfiguration.setWindowingMode( - WINDOWING_MODE_PINNED); - - ArrayList<GroupedTaskInfo> groupedTasks = mRecentTasksControllerReal.generateList( - List.of(task1, pipTask), - "test"); - - assertGroupedTasksListEquals(groupedTasks, List.of(List.of(task1.taskId))); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - public void generateList_fullscreen_noVisibleTasks_expectNoGrouping() throws Exception { - RunningTaskInfo task1 = makeRunningTaskInfo(1); - RunningTaskInfo task2 = makeRunningTaskInfo(2); - RunningTaskInfo task3 = makeRunningTaskInfo(3); - // Reset visible tasks list - mRecentTasksControllerReal.onVisibleTasksChanged(List.of()); - - // Generate a list with a number of fullscreen tasks - ArrayList<GroupedTaskInfo> groupedTasks = mRecentTasksControllerReal.generateList( - List.of(task1, task2, task3), - "test"); - - assertGroupedTasksListEquals(groupedTasks, List.of( - List.of(task1.taskId), - List.of(task2.taskId), - List.of(task3.taskId))); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - public void generateList_fullscreen_singleVisibleTask_expectNoGrouping() throws Exception { - RunningTaskInfo task1 = makeRunningTaskInfo(1); - RunningTaskInfo task2 = makeRunningTaskInfo(2); - RunningTaskInfo task3 = makeRunningTaskInfo(3); - - // Reset visible tasks list - mRecentTasksControllerReal.onVisibleTasksChanged(List.of(task1)); - - // Generate a list with a number of fullscreen tasks - ArrayList<GroupedTaskInfo> groupedTasks = mRecentTasksControllerReal.generateList( - List.of(task1, task2, task3), - "test"); - - assertGroupedTasksListEquals(groupedTasks, List.of( - List.of(task1.taskId), - List.of(task2.taskId), - List.of(task3.taskId))); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - public void generateList_fullscreen_multipleVisibleTasks_expectGrouping() throws Exception { - RunningTaskInfo task1 = makeRunningTaskInfo(1); - RunningTaskInfo task2 = makeRunningTaskInfo(2); - RunningTaskInfo task3 = makeRunningTaskInfo(3); - - // Reset visible tasks list - mRecentTasksControllerReal.onVisibleTasksChanged(List.of(task1, task2)); - - // Generate a list with a number of fullscreen tasks - ArrayList<GroupedTaskInfo> groupedTasks = mRecentTasksControllerReal.generateList( - List.of(task1, task2, task3), - "test"); - - assertGroupedTasksListEquals(groupedTasks, List.of( - List.of(task1.taskId), - List.of(task2.taskId), - List.of(task3.taskId))); - } - /** * Helper to create a task with a given task id. */ - private RecentTaskInfo makeTaskInfo(int taskId) { - RecentTaskInfo info = new RecentTaskInfo(); + private ActivityManager.RecentTaskInfo makeTaskInfo(int taskId) { + ActivityManager.RecentTaskInfo info = new ActivityManager.RecentTaskInfo(); info.taskId = taskId; - info.realActivity = new ComponentName("testPackage", "testClass"); - Intent intent = new Intent(); - intent.setComponent(new ComponentName("com." + taskId, "Activity" + taskId)); - info.baseIntent = intent; - info.lastNonFullscreenBounds = new Rect(); - return info; - } - - /** - * Helper to create a desktop wallpaper activity with a given task id. - */ - private RecentTaskInfo makeDesktopWallpaperTaskInfo(int taskId) { - RecentTaskInfo info = makeTaskInfo(taskId); - info.baseIntent.setComponent(DesktopWallpaperActivity.getWallpaperActivityComponent()); return info; } /** * Helper to create a running task with a given task id. */ - private RunningTaskInfo makeRunningTaskInfo(int taskId) { - return makeRunningTaskInfo(taskId, new ComponentName("com." + taskId, "Activity" + taskId)); - } - - private RunningTaskInfo makeRunningTaskInfo(int taskId, ComponentName intentComponent) { - RunningTaskInfo info = new RunningTaskInfo(); + private ActivityManager.RunningTaskInfo makeRunningTaskInfo(int taskId) { + ActivityManager.RunningTaskInfo info = new ActivityManager.RunningTaskInfo(); info.taskId = taskId; info.realActivity = new ComponentName("testPackage", "testClass"); - Intent intent = new Intent(); - intent.setComponent(intentComponent); - info.baseIntent = intent; - info.lastNonFullscreenBounds = new Rect(); return info; } - private RunningTaskInfo makeDesktopWallpaperActivityTaskInfo(int taskId) { - return makeRunningTaskInfo(taskId, new ComponentName(SYSTEM_UI_PACKAGE_NAME, - DesktopWallpaperActivity.class.getName())); - } - /** * Helper to set the raw task list on the controller. */ - private void setRawList(RecentTaskInfo... tasks) { - doReturn(Arrays.asList(tasks)).when(mActivityTaskManager).getRecentTasks(anyInt(), anyInt(), + private ArrayList<ActivityManager.RecentTaskInfo> setRawList( + ActivityManager.RecentTaskInfo... tasks) { + ArrayList<ActivityManager.RecentTaskInfo> rawList = new ArrayList<>(); + for (ActivityManager.RecentTaskInfo task : tasks) { + rawList.add(task); + } + doReturn(rawList).when(mActivityTaskManager).getRecentTasks(anyInt(), anyInt(), anyInt()); + return rawList; } /** * Asserts that the recent tasks matches the given task ids. - * TODO(346588978): Separate out specific split verification during the iteration below * - * @param expectedTaskIds a list of expected grouped task ids (itself a list of ints) + * @param expectedTaskIds list of task ids that map to the flattened task ids of the tasks in + * the grouped task list */ - private void assertGroupedTasksListEquals(List<GroupedTaskInfo> groupedTasks, - List<List<Integer>> expectedTaskIds) { - List<List<Integer>> foundTaskIds = new ArrayList<>(); - for (int i = 0; i < groupedTasks.size(); i++) { - GroupedTaskInfo groupedTask = groupedTasks.get(i); - List<Integer> groupedTaskIds = groupedTask.getTaskInfoList().stream() - .map(taskInfo -> taskInfo.taskId) - .toList(); - foundTaskIds.add(groupedTaskIds); + private void assertGroupedTasksListEquals(List<GroupedRecentTaskInfo> recentTasks, + int... expectedTaskIds) { + int[] flattenedTaskIds = new int[recentTasks.size() * 2]; + for (int i = 0; i < recentTasks.size(); i++) { + GroupedRecentTaskInfo pair = recentTasks.get(i); + int taskId1 = pair.getTaskInfo1().taskId; + flattenedTaskIds[2 * i] = taskId1; + flattenedTaskIds[2 * i + 1] = pair.getTaskInfo2() != null + ? pair.getTaskInfo2().taskId + : -1; - if (groupedTask.isBaseType(TYPE_SPLIT)) { - assertNotNull(groupedTask.getSplitBounds()); - int leftTopTaskId = groupedTask.getSplitBounds().leftTopTaskId; - int bottomRightTaskId = groupedTask.getSplitBounds().rightBottomTaskId; + if (pair.getTaskInfo2() != null) { + assertNotNull(pair.getSplitBounds()); + int leftTopTaskId = pair.getSplitBounds().leftTopTaskId; + int bottomRightTaskId = pair.getSplitBounds().rightBottomTaskId; // Unclear if pairs are ordered by split position, most likely not. - assertTrue(leftTopTaskId == groupedTaskIds.getFirst() - || leftTopTaskId == groupedTaskIds.getLast()); - assertTrue(bottomRightTaskId == groupedTaskIds.getFirst() - || bottomRightTaskId == groupedTaskIds.getLast()); + assertTrue(leftTopTaskId == taskId1 + || leftTopTaskId == pair.getTaskInfo2().taskId); + assertTrue(bottomRightTaskId == taskId1 + || bottomRightTaskId == pair.getTaskInfo2().taskId); + } else { + assertNull(pair.getSplitBounds()); } } - List<Integer> flattenedExpectedTaskIds = expectedTaskIds.stream() - .flatMap(List::stream) - .toList(); - List<Integer> flattenedFoundTaskIds = foundTaskIds.stream() - .flatMap(List::stream) - .toList(); - assertEquals("Expected: " - + flattenedExpectedTaskIds.stream().map(String::valueOf).collect(joining()) - + " Received: " - + flattenedFoundTaskIds.stream().map(String::valueOf).collect(joining()), - flattenedExpectedTaskIds, - flattenedFoundTaskIds); + assertTrue("Expected: " + Arrays.toString(expectedTaskIds) + + " Received: " + Arrays.toString(flattenedTaskIds), + Arrays.equals(flattenedTaskIds, expectedTaskIds)); } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/recents/SplitBoundsTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/recents/SplitBoundsTest.java index 856463b0b1..b790aee6fb 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/recents/SplitBoundsTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/recents/SplitBoundsTest.java @@ -1,12 +1,9 @@ package com.android.wm.shell.recents; -import static android.app.ActivityTaskManager.INVALID_TASK_ID; - -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50; +import static com.android.wm.shell.common.split.SplitScreenConstants.SNAP_TO_50_50; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertThrows; import static org.junit.Assert.assertTrue; import android.graphics.Rect; @@ -15,14 +12,12 @@ import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.shared.split.SplitBounds; +import com.android.wm.shell.util.SplitBounds; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; -import java.util.Collections; - @RunWith(AndroidJUnit4.class) @SmallTest public class SplitBoundsTest extends ShellTestCase { @@ -31,7 +26,6 @@ public class SplitBoundsTest extends ShellTestCase { private static final int DIVIDER_SIZE = 20; private static final int TASK_ID_1 = 4; private static final int TASK_ID_2 = 9; - private static final int TASK_ID_ILLEGAL = INVALID_TASK_ID; // Bounds in screen space private final Rect mTopRect = new Rect(); @@ -52,21 +46,21 @@ public class SplitBoundsTest extends ShellTestCase { @Test public void testVerticalStacked() { SplitBounds ssb = new SplitBounds(mTopRect, mBottomRect, - TASK_ID_1, TASK_ID_2, SNAP_TO_2_50_50); + TASK_ID_1, TASK_ID_2, SNAP_TO_50_50); assertTrue(ssb.appsStackedVertically); } @Test public void testHorizontalStacked() { SplitBounds ssb = new SplitBounds(mLeftRect, mRightRect, - TASK_ID_1, TASK_ID_2, SNAP_TO_2_50_50); + TASK_ID_1, TASK_ID_2, SNAP_TO_50_50); assertFalse(ssb.appsStackedVertically); } @Test public void testHorizontalDividerBounds() { SplitBounds ssb = new SplitBounds(mTopRect, mBottomRect, - TASK_ID_1, TASK_ID_2, SNAP_TO_2_50_50); + TASK_ID_1, TASK_ID_2, SNAP_TO_50_50); Rect dividerBounds = ssb.visualDividerBounds; assertEquals(0, dividerBounds.left); assertEquals(DEVICE_LENGTH / 2 - DIVIDER_SIZE / 2, dividerBounds.top); @@ -77,7 +71,7 @@ public class SplitBoundsTest extends ShellTestCase { @Test public void testVerticalDividerBounds() { SplitBounds ssb = new SplitBounds(mLeftRect, mRightRect, - TASK_ID_1, TASK_ID_2, SNAP_TO_2_50_50); + TASK_ID_1, TASK_ID_2, SNAP_TO_50_50); Rect dividerBounds = ssb.visualDividerBounds; assertEquals(DEVICE_WIDTH / 2 - DIVIDER_SIZE / 2, dividerBounds.left); assertEquals(0, dividerBounds.top); @@ -88,7 +82,7 @@ public class SplitBoundsTest extends ShellTestCase { @Test public void testEqualVerticalTaskPercent() { SplitBounds ssb = new SplitBounds(mTopRect, mBottomRect, - TASK_ID_1, TASK_ID_2, SNAP_TO_2_50_50); + TASK_ID_1, TASK_ID_2, SNAP_TO_50_50); float topPercentSpaceTaken = (float) (DEVICE_LENGTH / 2 - DIVIDER_SIZE / 2) / DEVICE_LENGTH; assertEquals(topPercentSpaceTaken, ssb.topTaskPercent, 0.01); } @@ -96,43 +90,8 @@ public class SplitBoundsTest extends ShellTestCase { @Test public void testEqualHorizontalTaskPercent() { SplitBounds ssb = new SplitBounds(mLeftRect, mRightRect, - TASK_ID_1, TASK_ID_2, SNAP_TO_2_50_50); + TASK_ID_1, TASK_ID_2, SNAP_TO_50_50); float leftPercentSpaceTaken = (float) (DEVICE_WIDTH / 2 - DIVIDER_SIZE / 2) / DEVICE_WIDTH; assertEquals(leftPercentSpaceTaken, ssb.leftTaskPercent, 0.01); } - - @Test - public void testIllegalTaskIds() { - assertThrows( - IllegalArgumentException.class, - () -> new SplitBounds(mLeftRect, mRightRect, - TASK_ID_ILLEGAL, TASK_ID_2, SNAP_TO_2_50_50)); - assertThrows( - IllegalArgumentException.class, - () -> new SplitBounds(mLeftRect, mRightRect, - TASK_ID_1, TASK_ID_ILLEGAL, SNAP_TO_2_50_50)); - assertThrows( - IllegalArgumentException.class, - () -> new SplitBounds(mLeftRect, mRightRect, - TASK_ID_ILLEGAL, TASK_ID_ILLEGAL, SNAP_TO_2_50_50)); - assertThrows( - IllegalArgumentException.class, - () -> new SplitBounds(mLeftRect, mRightRect, - TASK_ID_1, TASK_ID_1, SNAP_TO_2_50_50)); - assertThrows( - IllegalArgumentException.class, - () -> new SplitBounds(mLeftRect, mRightRect, - TASK_ID_1, TASK_ID_2, Collections.emptyList(), Collections.emptyList(), - SNAP_TO_2_50_50)); - assertThrows( - IllegalArgumentException.class, - () -> new SplitBounds(mLeftRect, mRightRect, - TASK_ID_1, TASK_ID_2, Collections.singletonList(TASK_ID_1), - Collections.emptyList(), SNAP_TO_2_50_50)); - assertThrows( - IllegalArgumentException.class, - () -> new SplitBounds(mLeftRect, mRightRect, - TASK_ID_1, TASK_ID_2, Collections.emptyList(), - Collections.singletonList(TASK_ID_2), SNAP_TO_2_50_50)); - } -} \ No newline at end of file +} diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/recents/TaskStackTransitionObserverTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/recents/TaskStackTransitionObserverTest.kt index 4d3061b81e..f9599702e7 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/recents/TaskStackTransitionObserverTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/recents/TaskStackTransitionObserverTest.kt @@ -16,43 +16,28 @@ package com.android.wm.shell.recents -import android.app.ActivityManager.RunningTaskInfo -import android.app.TaskInfo +import android.app.ActivityManager import android.app.WindowConfiguration -import android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN -import android.app.WindowConfiguration.WINDOWING_MODE_PINNED -import android.content.ComponentName -import android.content.Intent import android.os.IBinder -import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags +import android.platform.test.flag.junit.SetFlagsRule import android.testing.AndroidTestingRunner import android.view.SurfaceControl import android.view.WindowManager -import android.view.WindowManager.TRANSIT_CHANGE -import android.view.WindowManager.TRANSIT_CLOSE -import android.view.WindowManager.TRANSIT_FIRST_CUSTOM -import android.view.WindowManager.TRANSIT_OPEN -import android.view.WindowManager.TRANSIT_TO_FRONT import android.window.IWindowContainerToken import android.window.TransitionInfo -import android.window.TransitionInfo.FLAG_MOVED_TO_TOP import android.window.WindowContainerToken import androidx.test.filters.SmallTest -import com.android.window.flags2.Flags -import com.android.wm.shell.ShellTaskOrganizer -import com.android.wm.shell.ShellTestCase +import com.android.window.flags.Flags import com.android.wm.shell.TestShellExecutor -import com.android.wm.shell.TestSyncExecutor import com.android.wm.shell.common.ShellExecutor -import com.android.wm.shell.sysui.ShellCommandHandler import com.android.wm.shell.sysui.ShellInit import com.android.wm.shell.transition.TransitionInfoBuilder import com.android.wm.shell.transition.Transitions -import com.android.wm.shell.windowdecor.extension.isFullscreen import com.google.common.truth.Truth.assertThat import dagger.Lazy import org.junit.Before +import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.mockito.ArgumentCaptor @@ -63,6 +48,7 @@ import org.mockito.kotlin.same import org.mockito.kotlin.verify import org.mockito.kotlin.whenever + /** * Test class for {@link TaskStackTransitionObserver} * @@ -70,13 +56,12 @@ import org.mockito.kotlin.whenever */ @SmallTest @RunWith(AndroidTestingRunner::class) -class TaskStackTransitionObserverTest : ShellTestCase() { +class TaskStackTransitionObserverTest { + + @JvmField @Rule val setFlagsRule = SetFlagsRule() @Mock private lateinit var shellInit: ShellInit - @Mock private lateinit var shellTaskOrganizerLazy: Lazy<ShellTaskOrganizer> - @Mock private lateinit var shellTaskOrganizer: ShellTaskOrganizer - @Mock private lateinit var shellCommandHandler: ShellCommandHandler - @Mock private lateinit var testExecutor: ShellExecutor + @Mock lateinit var testExecutor: ShellExecutor @Mock private lateinit var transitionsLazy: Lazy<Transitions> @Mock private lateinit var transitions: Transitions @Mock private lateinit var mockTransitionBinder: IBinder @@ -88,23 +73,24 @@ class TaskStackTransitionObserverTest : ShellTestCase() { MockitoAnnotations.initMocks(this) shellInit = Mockito.spy(ShellInit(testExecutor)) whenever(transitionsLazy.get()).thenReturn(transitions) - whenever(shellTaskOrganizerLazy.get()).thenReturn(shellTaskOrganizer) - transitionObserver = TaskStackTransitionObserver(shellInit, shellTaskOrganizerLazy, - shellCommandHandler, transitionsLazy) - - val initRunnableCaptor = ArgumentCaptor.forClass(Runnable::class.java) - verify(shellInit) - .addInitCallback(initRunnableCaptor.capture(), same(transitionObserver)) - initRunnableCaptor.value.run() + transitionObserver = TaskStackTransitionObserver(transitionsLazy, shellInit) + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + val initRunnableCaptor = ArgumentCaptor.forClass(Runnable::class.java) + verify(shellInit) + .addInitCallback(initRunnableCaptor.capture(), same(transitionObserver)) + initRunnableCaptor.value.run() + } else { + transitionObserver.onInit() + } } @Test + @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) fun testRegistersObserverAtInit() { verify(transitions).registerObserver(same(transitionObserver)) } @Test - @DisableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) fun taskCreated_freeformWindow_listenerNotified() { val listener = TestListener() @@ -112,47 +98,45 @@ class TaskStackTransitionObserverTest : ShellTestCase() { transitionObserver.addTaskStackTransitionObserverListener(listener, executor) val change = createChange( - TRANSIT_OPEN, + WindowManager.TRANSIT_OPEN, createTaskInfo(1, WindowConfiguration.WINDOWING_MODE_FREEFORM) ) val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() + TransitionInfoBuilder(WindowManager.TRANSIT_OPEN, 0).addChange(change).build() callOnTransitionReady(transitionInfo) callOnTransitionFinished() executor.flushAll() - assertThat(listener.taskInfoOnTaskMovedToFront.taskId).isEqualTo(change.taskInfo?.taskId) - assertThat(listener.taskInfoOnTaskMovedToFront.windowingMode) + assertThat(listener.taskInfoToBeNotified.taskId).isEqualTo(change.taskInfo?.taskId) + assertThat(listener.taskInfoToBeNotified.windowingMode) .isEqualTo(change.taskInfo?.windowingMode) } @Test - @DisableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - fun taskCreated_fullscreenWindow_listenerNotified() { + fun taskCreated_fullscreenWindow_listenerNotNotified() { val listener = TestListener() val executor = TestShellExecutor() transitionObserver.addTaskStackTransitionObserverListener(listener, executor) val change = createChange( - TRANSIT_OPEN, - createTaskInfo(1, WINDOWING_MODE_FULLSCREEN) + WindowManager.TRANSIT_OPEN, + createTaskInfo(1, WindowConfiguration.WINDOWING_MODE_FULLSCREEN) ) val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() + TransitionInfoBuilder(WindowManager.TRANSIT_OPEN, 0).addChange(change).build() callOnTransitionReady(transitionInfo) callOnTransitionFinished() executor.flushAll() - assertThat(listener.taskInfoOnTaskMovedToFront.taskId).isEqualTo(1) - assertThat(listener.taskInfoOnTaskMovedToFront.windowingMode) - .isEqualTo(WINDOWING_MODE_FULLSCREEN) + assertThat(listener.taskInfoToBeNotified.taskId).isEqualTo(0) + assertThat(listener.taskInfoToBeNotified.windowingMode) + .isEqualTo(WindowConfiguration.WINDOWING_MODE_UNDEFINED) } @Test - @DisableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) fun taskCreated_freeformWindowOnTopOfFreeform_listenerNotified() { val listener = TestListener() @@ -160,7 +144,7 @@ class TaskStackTransitionObserverTest : ShellTestCase() { transitionObserver.addTaskStackTransitionObserverListener(listener, executor) val freeformOpenChange = createChange( - TRANSIT_OPEN, + WindowManager.TRANSIT_OPEN, createTaskInfo(1, WindowConfiguration.WINDOWING_MODE_FREEFORM) ) val freeformReorderChange = @@ -169,7 +153,7 @@ class TaskStackTransitionObserverTest : ShellTestCase() { createTaskInfo(2, WindowConfiguration.WINDOWING_MODE_FREEFORM) ) val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN, 0) + TransitionInfoBuilder(WindowManager.TRANSIT_OPEN, 0) .addChange(freeformOpenChange) .addChange(freeformReorderChange) .build() @@ -178,489 +162,28 @@ class TaskStackTransitionObserverTest : ShellTestCase() { callOnTransitionFinished() executor.flushAll() - assertThat(listener.taskInfoOnTaskMovedToFront.taskId) + assertThat(listener.taskInfoToBeNotified.taskId) .isEqualTo(freeformOpenChange.taskInfo?.taskId) - assertThat(listener.taskInfoOnTaskMovedToFront.windowingMode) + assertThat(listener.taskInfoToBeNotified.windowingMode) .isEqualTo(freeformOpenChange.taskInfo?.windowingMode) } - @Test - @DisableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - fun transitionMerged_withChange_onlyOpenChangeIsNotified() { - val listener = TestListener() - val executor = TestShellExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - - // Create open transition - val change = - createChange( - TRANSIT_OPEN, - createTaskInfo(1, WindowConfiguration.WINDOWING_MODE_FREEFORM) - ) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() - - // create change transition to be merged to above transition - val mergedChange = - createChange( - WindowManager.TRANSIT_CHANGE, - createTaskInfo(2, WindowConfiguration.WINDOWING_MODE_FREEFORM) - ) - val mergedTransitionInfo = - TransitionInfoBuilder(WindowManager.TRANSIT_CHANGE, 0).addChange(mergedChange).build() - val mergedTransition = Mockito.mock(IBinder::class.java) - - callOnTransitionReady(transitionInfo) - callOnTransitionReady(mergedTransitionInfo, mergedTransition) - callOnTransitionMerged(mergedTransition) - callOnTransitionFinished() - executor.flushAll() - - assertThat(listener.taskInfoOnTaskMovedToFront.taskId).isEqualTo(change.taskInfo?.taskId) - assertThat(listener.taskInfoOnTaskMovedToFront.windowingMode) - .isEqualTo(change.taskInfo?.windowingMode) - - assertThat(listener.taskInfoOnTaskChanged.size).isEqualTo(1) - with(listener.taskInfoOnTaskChanged.last()) { - assertThat(taskId).isEqualTo(mergedChange.taskInfo?.taskId) - assertThat(windowingMode).isEqualTo(mergedChange.taskInfo?.windowingMode) - } - } - - @Test - @DisableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - fun transitionMerged_withOpen_lastOpenChangeIsNotified() { - val listener = TestListener() - val executor = TestShellExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - - // Create open transition - val change = - createChange( - TRANSIT_OPEN, - createTaskInfo(1, WindowConfiguration.WINDOWING_MODE_FREEFORM) - ) - val transitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(change).build() - - // create change transition to be merged to above transition - val mergedChange = - createChange( - TRANSIT_OPEN, - createTaskInfo(2, WindowConfiguration.WINDOWING_MODE_FREEFORM) - ) - val mergedTransitionInfo = - TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(mergedChange).build() - val mergedTransition = Mockito.mock(IBinder::class.java) - - callOnTransitionReady(transitionInfo) - callOnTransitionReady(mergedTransitionInfo, mergedTransition) - callOnTransitionMerged(mergedTransition) - callOnTransitionFinished() - executor.flushAll() - - assertThat(listener.taskInfoOnTaskMovedToFront.taskId) - .isEqualTo(mergedChange.taskInfo?.taskId) - assertThat(listener.taskInfoOnTaskMovedToFront.windowingMode) - .isEqualTo(mergedChange.taskInfo?.windowingMode) - } - - @Test - @DisableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - fun taskChange_freeformWindowToFullscreenWindow_listenerNotified() { - val listener = TestListener() - val executor = TestShellExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - val freeformState = - createChange( - TRANSIT_OPEN, - createTaskInfo(1, WindowConfiguration.WINDOWING_MODE_FREEFORM) - ) - val transitionInfoOpen = - TransitionInfoBuilder(TRANSIT_OPEN, 0).addChange(freeformState).build() - callOnTransitionReady(transitionInfoOpen) - callOnTransitionFinished() - executor.flushAll() - - assertThat(listener.taskInfoOnTaskMovedToFront.taskId) - .isEqualTo(freeformState.taskInfo?.taskId) - assertThat(listener.taskInfoOnTaskMovedToFront.windowingMode) - .isEqualTo(freeformState.taskInfo?.windowingMode) - assertThat(listener.taskInfoOnTaskMovedToFront.isFullscreen).isEqualTo(false) - - // create change transition to update the windowing mode to full screen. - val fullscreenState = - createChange( - WindowManager.TRANSIT_CHANGE, - createTaskInfo(1, WINDOWING_MODE_FULLSCREEN) - ) - val transitionInfoChange = - TransitionInfoBuilder(WindowManager.TRANSIT_CHANGE, 0) - .addChange(fullscreenState) - .build() - - callOnTransitionReady(transitionInfoChange) - callOnTransitionFinished() - executor.flushAll() - - // Asserting whether freeformState remains the same as before the change - assertThat(listener.taskInfoOnTaskMovedToFront.taskId) - .isEqualTo(freeformState.taskInfo?.taskId) - assertThat(listener.taskInfoOnTaskMovedToFront.isFullscreen).isEqualTo(false) - - // Asserting changes - assertThat(listener.taskInfoOnTaskChanged.size).isEqualTo(1) - with(listener.taskInfoOnTaskChanged.last()) { - assertThat(taskId).isEqualTo(fullscreenState.taskInfo?.taskId) - assertThat(isFullscreen).isEqualTo(true) - } - } - - @Test - @DisableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - fun singleTransition_withOpenAndChange_onlyOpenIsNotified() { - val listener = TestListener() - val executor = TestShellExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - - // Creating multiple changes to be fired in a single transition - val freeformState = - createChange( - mode = TRANSIT_OPEN, - taskInfo = createTaskInfo(1, WindowConfiguration.WINDOWING_MODE_FREEFORM) - ) - val fullscreenState = - createChange( - mode = WindowManager.TRANSIT_CHANGE, - taskInfo = createTaskInfo(1, WINDOWING_MODE_FULLSCREEN) - ) - - val transitionInfoWithChanges = - TransitionInfoBuilder(WindowManager.TRANSIT_CHANGE, 0) - .addChange(freeformState) - .addChange(fullscreenState) - .build() - - callOnTransitionReady(transitionInfoWithChanges) - callOnTransitionFinished() - executor.flushAll() - - assertThat(listener.taskInfoOnTaskMovedToFront.taskId) - .isEqualTo(freeformState.taskInfo?.taskId) - assertThat(listener.taskInfoOnTaskMovedToFront.isFullscreen).isEqualTo(false) - assertThat(listener.taskInfoOnTaskChanged.size).isEqualTo(0) - } - - @Test - @DisableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - @EnableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - fun singleTransition_withMultipleChanges_listenerNotified_forEachChange() { - val listener = TestListener() - val executor = TestShellExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - - val taskId = 1 - - // Creating multiple changes to be fired in a single transition - val changes = - listOf( - WindowConfiguration.WINDOWING_MODE_FREEFORM, - WindowConfiguration.WINDOW_CONFIG_DISPLAY_ROTATION, - WINDOWING_MODE_FULLSCREEN - ) - .map { change -> - createChange( - mode = WindowManager.TRANSIT_CHANGE, - taskInfo = createTaskInfo(taskId, change) - ) - } - - val transitionInfoWithChanges = - TransitionInfoBuilder(WindowManager.TRANSIT_CHANGE, 0) - .apply { changes.forEach { c -> this@apply.addChange(c) } } - .build() - - callOnTransitionReady(transitionInfoWithChanges) - callOnTransitionFinished() - executor.flushAll() - - assertThat(listener.taskInfoOnTaskChanged.size).isEqualTo(changes.size) - changes.forEachIndexed { index, change -> - assertThat(listener.taskInfoOnTaskChanged[index].taskId) - .isEqualTo(change.taskInfo?.taskId) - assertThat(listener.taskInfoOnTaskChanged[index].windowingMode) - .isEqualTo(change.taskInfo?.windowingMode) - } - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - fun openTransition_visibleTasksChanged() { - val listener = TestListener() - val executor = TestSyncExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - - // Model an opening task - val firstOpeningTransition = - createTransitionInfo(TRANSIT_OPEN, - listOf( - createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_FULLSCREEN), - ) - ) - - callOnTransitionReady(firstOpeningTransition) - callOnTransitionFinished() - // Assert that the task is reported visible - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(1) - assertVisibleTasks(listener, listOf(1)) - - // Model opening another task - val nextOpeningTransition = - createTransitionInfo(TRANSIT_OPEN, - listOf( - createChange(TRANSIT_OPEN, 2, WINDOWING_MODE_FULLSCREEN), - createChange(TRANSIT_CLOSE, 1, WINDOWING_MODE_FULLSCREEN), - ) - ) - - callOnTransitionReady(nextOpeningTransition) - // Assert that the visible list from top to bottom is valid (opening, closing) - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(2) - assertVisibleTasks(listener, listOf(2, 1)) - - callOnTransitionFinished() - // Assert that after the transition finishes, there is only the opening task remaining - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(3) - assertVisibleTasks(listener, listOf(2)) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - fun toFrontTransition_visibleTasksChanged() { - val listener = TestListener() - val executor = TestSyncExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - - // Model an opening task - val firstOpeningTransition = - createTransitionInfo(TRANSIT_OPEN, - listOf( - createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_FULLSCREEN), - ) - ) - - callOnTransitionReady(firstOpeningTransition) - callOnTransitionFinished() - // Assert that the task is reported visible - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(1) - assertVisibleTasks(listener, listOf(1)) - - // Model opening another task - val nextOpeningTransition = - createTransitionInfo(TRANSIT_OPEN, - listOf( - createChange(TRANSIT_OPEN, 2, WINDOWING_MODE_FULLSCREEN), - ) - ) - - callOnTransitionReady(nextOpeningTransition) - callOnTransitionFinished() - // Assert that the visible list from top to bottom is valid - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(2) - assertVisibleTasks(listener, listOf(2, 1)) - - // Model the first task moving to front - val toFrontTransition = - createTransitionInfo(TRANSIT_TO_FRONT, - listOf( - createChange(TRANSIT_CHANGE, 1, WINDOWING_MODE_FULLSCREEN, - FLAG_MOVED_TO_TOP), - ) - ) - - callOnTransitionReady(toFrontTransition) - callOnTransitionFinished() - // Assert that the visible list from top to bottom is valid - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(3) - assertVisibleTasks(listener, listOf(1, 2)) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - fun closeTransition_visibleTasksChanged() { - val listener = TestListener() - val executor = TestSyncExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - - // Model an opening task - val firstOpeningTransition = - createTransitionInfo(TRANSIT_OPEN, - listOf( - createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_FULLSCREEN), - ) - ) - - callOnTransitionReady(firstOpeningTransition) - callOnTransitionFinished() - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(1) - - // Model a closing task - val nextOpeningTransition = - createTransitionInfo(TRANSIT_OPEN, - listOf( - createChange(TRANSIT_CLOSE, 1, WINDOWING_MODE_FULLSCREEN), - ) - ) - - callOnTransitionReady(nextOpeningTransition) - // Assert that the visible list hasn't changed (the close is pending) - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(1) - - callOnTransitionFinished() - // Assert that after the transition finishes, there is only the opening task remaining - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(2) - assertVisibleTasks(listener, listOf()) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - fun changeTransition_visibleTasksUnchanged() { - val listener = TestListener() - val executor = TestSyncExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - - // Model an opening task - val firstOpeningTransition = - createTransitionInfo(TRANSIT_OPEN, - listOf( - createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_FULLSCREEN), - ) - ) - - callOnTransitionReady(firstOpeningTransition) - callOnTransitionFinished() - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(1) - - // Model a closing task - val nextOpeningTransition = - createTransitionInfo( - TRANSIT_FIRST_CUSTOM, - listOf( - createChange(TRANSIT_CHANGE, 1, WINDOWING_MODE_FULLSCREEN), - ) - ) - - callOnTransitionReady(nextOpeningTransition) - // Assert that the visible list hasn't changed - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(1) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - fun taskVanished_visibleTasksChanged() { - val listener = TestListener() - val executor = TestSyncExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - - // Model an opening task - val firstOpeningTransition = - createTransitionInfo(TRANSIT_OPEN, - listOf( - createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_FULLSCREEN), - ) - ) - - callOnTransitionReady(firstOpeningTransition) - callOnTransitionFinished() - // Assert that the task is reported visible - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(1) - assertVisibleTasks(listener, listOf(1)) - - // Trigger task vanished - val removedTaskInfo = createTaskInfo(1, WINDOWING_MODE_FULLSCREEN) - transitionObserver.onTaskVanished(removedTaskInfo) - - // Assert that the visible list is now empty - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(2) - assertVisibleTasks(listener, listOf()) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_TASK_STACK_OBSERVER_IN_SHELL) - @EnableFlags(com.android.wm.shell.Flags.FLAG_ENABLE_SHELL_TOP_TASK_TRACKING) - fun alwaysOnTop_taskIsTopMostVisible() { - val listener = TestListener() - val executor = TestSyncExecutor() - transitionObserver.addTaskStackTransitionObserverListener(listener, executor) - - // Model an opening PIP task - val pipOpeningTransition = - createTransitionInfo(TRANSIT_OPEN, - listOf( - createChange(TRANSIT_OPEN, 1, WINDOWING_MODE_PINNED), - ) - ) - - callOnTransitionReady(pipOpeningTransition) - callOnTransitionFinished() - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(1) - assertVisibleTasks(listener, listOf(1)) - - // Model an opening fullscreen task - val firstOpeningTransition = - createTransitionInfo(TRANSIT_OPEN, - listOf( - createChange(TRANSIT_OPEN, 2, WINDOWING_MODE_FULLSCREEN), - ) - ) - - callOnTransitionReady(firstOpeningTransition) - callOnTransitionFinished() - assertThat(listener.visibleTasksUpdatedCount).isEqualTo(2) - assertVisibleTasks(listener, listOf(1, 2)) - } - class TestListener : TaskStackTransitionObserver.TaskStackTransitionObserverListener { - // Only used if FLAG_ENABLE_SHELL_TOP_TASK_TRACKING is disabled - var taskInfoOnTaskMovedToFront = RunningTaskInfo() - var taskInfoOnTaskChanged = mutableListOf<RunningTaskInfo>() - // Only used if FLAG_ENABLE_SHELL_TOP_TASK_TRACKING is enabled - var visibleTasks = mutableListOf<TaskInfo>() - var visibleTasksUpdatedCount = 0 + var taskInfoToBeNotified = ActivityManager.RunningTaskInfo() - override fun onTaskMovedToFrontThroughTransition(taskInfo: RunningTaskInfo) { - taskInfoOnTaskMovedToFront = taskInfo - } - - override fun onTaskChangedThroughTransition(taskInfo: RunningTaskInfo) { - taskInfoOnTaskChanged += taskInfo - } - - override fun onVisibleTasksChanged(visibleTasks: List<RunningTaskInfo>) { - this.visibleTasks.clear() - this.visibleTasks.addAll(visibleTasks) - visibleTasksUpdatedCount++ + override fun onTaskMovedToFrontThroughTransition( + taskInfo: ActivityManager.RunningTaskInfo + ) { + taskInfoToBeNotified = taskInfo } } /** Simulate calling the onTransitionReady() method */ - private fun callOnTransitionReady( - transitionInfo: TransitionInfo, - transition: IBinder = mockTransitionBinder - ) { + private fun callOnTransitionReady(transitionInfo: TransitionInfo) { val startT = Mockito.mock(SurfaceControl.Transaction::class.java) val finishT = Mockito.mock(SurfaceControl.Transaction::class.java) - transitionObserver.onTransitionReady(transition, transitionInfo, startT, finishT) + transitionObserver.onTransitionReady(mockTransitionBinder, transitionInfo, startT, finishT) } /** Simulate calling the onTransitionFinished() method */ @@ -668,69 +191,27 @@ class TaskStackTransitionObserverTest : ShellTestCase() { transitionObserver.onTransitionFinished(mockTransitionBinder, false) } - /** Simulate calling the onTransitionMerged() method */ - private fun callOnTransitionMerged(merged: IBinder, playing: IBinder = mockTransitionBinder) { - transitionObserver.onTransitionMerged(merged, playing) - } - - /** - * Asserts that the listener has the given expected task ids (in order). - */ - private fun assertVisibleTasks( - listener: TestListener, - expectedVisibleTaskIds: List<Int> - ) { - assertThat(listener.visibleTasks.size).isEqualTo(expectedVisibleTaskIds.size) - expectedVisibleTaskIds.forEachIndexed { index, taskId -> - assertThat(listener.visibleTasks[index].taskId).isEqualTo(taskId) - } - } - companion object { - fun createTaskInfo(taskId: Int, windowingMode: Int): RunningTaskInfo { - val taskInfo = RunningTaskInfo() - taskInfo.baseIntent = Intent().setComponent( - ComponentName(javaClass.packageName, "Test")) + fun createTaskInfo(taskId: Int, windowingMode: Int): ActivityManager.RunningTaskInfo { + val taskInfo = ActivityManager.RunningTaskInfo() taskInfo.taskId = taskId taskInfo.configuration.windowConfiguration.windowingMode = windowingMode - if (windowingMode == WINDOWING_MODE_PINNED) { - taskInfo.configuration.windowConfiguration.isAlwaysOnTop = true - } + return taskInfo } fun createChange( mode: Int, - taskInfo: RunningTaskInfo, - flags: Int = 0, + taskInfo: ActivityManager.RunningTaskInfo ): TransitionInfo.Change { val change = TransitionInfo.Change( WindowContainerToken(Mockito.mock(IWindowContainerToken::class.java)), Mockito.mock(SurfaceControl::class.java) ) - change.flags = flags change.mode = mode change.taskInfo = taskInfo return change } - - fun createChange( - mode: Int, - taskId: Int, - windowingMode: Int, - flags: Int = 0, - ): TransitionInfo.Change { - return createChange(mode, createTaskInfo(taskId, windowingMode), flags) - } - - fun createTransitionInfo( - transitionType: Int, - changes: List<TransitionInfo.Change> - ): TransitionInfo { - return TransitionInfoBuilder(transitionType, 0) - .apply { changes.forEach { c -> this@apply.addChange(c) } } - .build() - } } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/shared/animation/PhysicsAnimatorTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/shared/animation/PhysicsAnimatorTest.kt index 5370956c92..3fb66be2f9 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/shared/animation/PhysicsAnimatorTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/shared/animation/PhysicsAnimatorTest.kt @@ -31,7 +31,6 @@ import com.android.wm.shell.shared.animation.PhysicsAnimator.EndListener import com.android.wm.shell.shared.animation.PhysicsAnimator.UpdateListener import com.android.wm.shell.shared.animation.PhysicsAnimatorTestUtils.clearAnimationUpdateFrames import com.android.wm.shell.shared.animation.PhysicsAnimatorTestUtils.getAnimationUpdateFrames -import com.android.wm.shell.shared.animation.PhysicsAnimatorTestUtils.timeoutMs import com.android.wm.shell.shared.animation.PhysicsAnimatorTestUtils.verifyAnimationUpdateFrames import org.junit.After import org.junit.Assert @@ -51,8 +50,6 @@ import org.mockito.Mockito.times import org.mockito.Mockito.verify import org.mockito.Mockito.verifyNoMoreInteractions import org.mockito.MockitoAnnotations -import java.util.concurrent.CountDownLatch -import java.util.concurrent.TimeUnit @TestableLooper.RunWithLooper @RunWith(AndroidTestingRunner::class) @@ -71,7 +68,6 @@ class PhysicsAnimatorTest : ShellTestCase() { private lateinit var mockUpdateListener: UpdateListener<View> private lateinit var mockEndListener: EndListener<View> private lateinit var mockEndAction: Runnable - private lateinit var mockEndOrCancelAction: Runnable private fun <T> eq(value: T): T = Mockito.eq(value) ?: value @@ -82,7 +78,6 @@ class PhysicsAnimatorTest : ShellTestCase() { mockUpdateListener = mock(UpdateListener::class.java) as UpdateListener<View> mockEndListener = mock(EndListener::class.java) as EndListener<View> mockEndAction = mock(Runnable::class.java) - mockEndOrCancelAction = mock(Runnable::class.java) viewGroup = FrameLayout(context) testView = View(context) @@ -164,7 +159,6 @@ class PhysicsAnimatorTest : ShellTestCase() { .spring(DynamicAnimation.TRANSLATION_Y, 500f, springConfig) .addEndListener(mockEndListener) .withEndActions(mockEndAction::run) - .withEndOrCancelActions(mockEndOrCancelAction::run) .start() PhysicsAnimatorTestUtils.blockUntilAnimationsEnd(animator, DynamicAnimation.TRANSLATION_X) @@ -189,7 +183,6 @@ class PhysicsAnimatorTest : ShellTestCase() { // The end action should not have been run yet. verify(mockEndAction, times(0)).run() - verify(mockEndOrCancelAction, times(0)).run() // Block until TRANSLATION_Y finishes. PhysicsAnimatorTestUtils.blockUntilAnimationsEnd(animator, DynamicAnimation.TRANSLATION_Y) @@ -212,36 +205,6 @@ class PhysicsAnimatorTest : ShellTestCase() { // Now that all properties are done animating, the end action should have been called. verify(mockEndAction, times(1)).run() - verify(mockEndOrCancelAction, times(1)).run() - } - - @Test - @Throws(InterruptedException::class) - fun testEndOrCancelActions() { - PhysicsAnimatorTestUtils.setAllAnimationsBlock(false) - - var endOrCancelCalled = false; - val latch = CountDownLatch(1) - val endOrCancelRunnable = Runnable { - endOrCancelCalled = true; - latch.countDown() - } - - animator - .spring(DynamicAnimation.TRANSLATION_X, 10f, springConfig) - .spring(DynamicAnimation.TRANSLATION_Y, 500f, springConfig) - .addEndListener(mockEndListener) - .withEndActions(mockEndAction::run) - .withEndOrCancelActions(endOrCancelRunnable) - .start() - animator.cancel() - - // Wait until the end actions are all run - latch.await(timeoutMs, TimeUnit.MILLISECONDS) - - // Verify that the end action was not called, but the endOrCancel action was - verify(mockEndAction, times(0)).run() - assertTrue(endOrCancelCalled) } @Test @@ -269,7 +232,6 @@ class PhysicsAnimatorTest : ShellTestCase() { .addUpdateListener(mockUpdateListener) .addEndListener(mockEndListener) .withEndActions(mockEndAction::run) - .withEndOrCancelActions(mockEndOrCancelAction::run) .start() verifyUpdateListenerCalls(animator, mockUpdateListener) @@ -277,7 +239,6 @@ class PhysicsAnimatorTest : ShellTestCase() { eq(testView), eq(DynamicAnimation.TRANSLATION_X), eq(false), eq(false), anyFloat(), anyFloat(), eq(true)) verify(mockEndAction, times(1)).run() - verify(mockEndOrCancelAction, times(1)).run() animator .spring(DynamicAnimation.TRANSLATION_X, 0f, springConfig) @@ -288,7 +249,6 @@ class PhysicsAnimatorTest : ShellTestCase() { verifyNoMoreInteractions(mockUpdateListener) verifyNoMoreInteractions(mockEndListener) verifyNoMoreInteractions(mockEndAction) - verifyNoMoreInteractions(mockEndOrCancelAction) } @Test @@ -523,7 +483,6 @@ class PhysicsAnimatorTest : ShellTestCase() { .addUpdateListener(mockUpdateListener) .addEndListener(mockEndListener) .withEndActions(mockEndAction::run) - .withEndOrCancelActions(mockEndOrCancelAction::run) .start() // Block until we pass the minimum. @@ -543,7 +502,6 @@ class PhysicsAnimatorTest : ShellTestCase() { // since we're about to begin springing the same property. verifyNoMoreInteractions(mockEndListener) verifyNoMoreInteractions(mockEndAction) - verifyNoMoreInteractions(mockEndOrCancelAction) // Wait for the spring to finish. PhysicsAnimatorTestUtils.blockUntilAnimationsEnd(DynamicAnimation.TRANSLATION_X) @@ -565,7 +523,6 @@ class PhysicsAnimatorTest : ShellTestCase() { // The end action should also have been called once. verify(mockEndAction, times(1)).run() - verify(mockEndOrCancelAction, times(1)).run() verifyNoMoreInteractions(mockEndAction) assertEquals(250f, testView.translationX) diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitScreenControllerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitScreenControllerTests.java index ffb8f1ee66..3c387f0d7c 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitScreenControllerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitScreenControllerTests.java @@ -22,11 +22,9 @@ import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; import static android.content.Intent.FLAG_ACTIVITY_MULTIPLE_TASK; import static android.content.Intent.FLAG_ACTIVITY_NO_USER_ACTION; -import static android.view.Display.DEFAULT_DISPLAY; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_INDEX_0; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; import static org.junit.Assert.assertEquals; import static org.junit.Assume.assumeTrue; @@ -38,7 +36,6 @@ import static org.mockito.ArgumentMatchers.isA; import static org.mockito.ArgumentMatchers.isNull; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; @@ -47,23 +44,17 @@ import static org.mockito.Mockito.when; import android.app.ActivityManager; import android.app.ActivityTaskManager; -import android.app.IActivityTaskManager; import android.app.PendingIntent; import android.content.ComponentName; import android.content.Intent; import android.content.pm.ActivityInfo; import android.os.Bundle; -import android.os.Handler; -import android.os.UserManager; -import android.window.IWindowContainerToken; -import android.window.WindowContainerToken; import androidx.test.annotation.UiThreadTest; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import com.android.launcher3.icons.IconProvider; -import com.android.wm.shell.RootDisplayAreaOrganizer; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; @@ -75,20 +66,17 @@ import com.android.wm.shell.common.LaunchAdjacentController; import com.android.wm.shell.common.MultiInstanceHelper; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.common.split.SplitState; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.desktopmode.DesktopTasksController; import com.android.wm.shell.draganddrop.DragAndDropController; import com.android.wm.shell.recents.RecentTasksController; -import com.android.wm.shell.shared.TransactionPool; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; +import com.android.wm.shell.sysui.ShellSharedConstants; import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.windowdecor.WindowDecorViewModel; -import com.google.android.msdl.domain.MSDLPlayer; - import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -112,7 +100,6 @@ public class SplitScreenControllerTests extends ShellTestCase { @Mock SyncTransactionQueue mSyncQueue; @Mock RootTaskDisplayAreaOrganizer mRootTDAOrganizer; @Mock ShellExecutor mMainExecutor; - @Mock Handler mMainHandler; @Mock DisplayController mDisplayController; @Mock DisplayImeController mDisplayImeController; @Mock DisplayInsetsController mDisplayInsetsController; @@ -126,33 +113,24 @@ public class SplitScreenControllerTests extends ShellTestCase { @Mock WindowDecorViewModel mWindowDecorViewModel; @Mock DesktopTasksController mDesktopTasksController; @Mock MultiInstanceHelper mMultiInstanceHelper; - @Mock SplitState mSplitState; - @Mock UserManager mUserManager; - @Mock RootDisplayAreaOrganizer mRootDisplayAreaOrganizer; - @Mock private IActivityTaskManager activityTaskManager; - @Mock MSDLPlayer mMSDLPlayer; @Captor ArgumentCaptor<Intent> mIntentCaptor; private ShellController mShellController; private SplitScreenController mSplitScreenController; - private FakeDesktopState mDesktopState; @Before public void setup() { assumeTrue(ActivityTaskManager.supportsSplitScreenMultiWindow(mContext)); MockitoAnnotations.initMocks(this); - mDesktopState = new FakeDesktopState(); mShellController = spy(new ShellController(mContext, mShellInit, mShellCommandHandler, - mDisplayInsetsController, mUserManager, mMainExecutor)); + mDisplayInsetsController, mMainExecutor)); mSplitScreenController = spy(new SplitScreenController(mContext, mShellInit, mShellCommandHandler, mShellController, mTaskOrganizer, mSyncQueue, mRootTDAOrganizer, mDisplayController, mDisplayImeController, mDisplayInsetsController, mDragAndDropController, mTransitions, mTransactionPool, mIconProvider, Optional.of(mRecentTasks), mLaunchAdjacentController, Optional.of(mWindowDecorViewModel), Optional.of(mDesktopTasksController), - Optional.empty(), - mStageCoordinator, mMultiInstanceHelper, mSplitState, mMainExecutor, mMainHandler, - mRootDisplayAreaOrganizer, mDesktopState, activityTaskManager, mMSDLPlayer)); + mStageCoordinator, mMultiInstanceHelper, mMainExecutor)); } @Test @@ -194,7 +172,7 @@ public class SplitScreenControllerTests extends ShellTestCase { when(mDisplayController.getDisplayLayout(anyInt())).thenReturn(new DisplayLayout()); mSplitScreenController.onInit(); verify(mShellController, times(1)).addExternalInterface( - eq(ISplitScreen.DESCRIPTOR), any(), any()); + eq(ShellSharedConstants.KEY_EXTRA_SHELL_SPLIT_SCREEN), any(), any()); } @Test @@ -217,87 +195,61 @@ public class SplitScreenControllerTests extends ShellTestCase { PendingIntent.getActivity(mContext, 0, startIntent, FLAG_IMMUTABLE); mSplitScreenController.startIntent(pendingIntent, mContext.getUserId(), null, - SPLIT_POSITION_TOP_OR_LEFT, null /* options */, null /* hideTaskToken */, - SPLIT_INDEX_0); + SPLIT_POSITION_TOP_OR_LEFT, null); verify(mStageCoordinator).startIntent(eq(pendingIntent), mIntentCaptor.capture(), - eq(SPLIT_POSITION_TOP_OR_LEFT), isNull(), isNull(), eq(SPLIT_INDEX_0), - eq(DEFAULT_DISPLAY)); + eq(SPLIT_POSITION_TOP_OR_LEFT), isNull()); assertEquals(FLAG_ACTIVITY_NO_USER_ACTION, mIntentCaptor.getValue().getFlags() & FLAG_ACTIVITY_NO_USER_ACTION); } @Test - public void startIntent_multiInstancesSupported_appendsMultipleTaskFlag() { - doReturn(true).when(mMultiInstanceHelper).supportsMultiInstanceSplit(any(), anyInt()); + public void startIntent_multiInstancesSupported_appendsMultipleTaskFag() { + doReturn(true).when(mMultiInstanceHelper).supportsMultiInstanceSplit(any()); Intent startIntent = createStartIntent("startActivity"); PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, startIntent, FLAG_IMMUTABLE); // Put the same component to the top running task ActivityManager.RunningTaskInfo topRunningTask = createTaskInfo(WINDOWING_MODE_FULLSCREEN, ACTIVITY_TYPE_STANDARD, startIntent); - doReturn(topRunningTask).when(mRecentTasks).getTopRunningTask(any()); + doReturn(topRunningTask).when(mRecentTasks).getTopRunningTask(); mSplitScreenController.startIntent(pendingIntent, mContext.getUserId(), null, - SPLIT_POSITION_TOP_OR_LEFT, null /* options */, null /* hideTaskToken */, - SPLIT_INDEX_0); + SPLIT_POSITION_TOP_OR_LEFT, null); verify(mStageCoordinator).startIntent(eq(pendingIntent), mIntentCaptor.capture(), - eq(SPLIT_POSITION_TOP_OR_LEFT), isNull(), isNull(), eq(SPLIT_INDEX_0), - eq(DEFAULT_DISPLAY)); + eq(SPLIT_POSITION_TOP_OR_LEFT), isNull()); assertEquals(FLAG_ACTIVITY_MULTIPLE_TASK, mIntentCaptor.getValue().getFlags() & FLAG_ACTIVITY_MULTIPLE_TASK); } - @Test - public void startIntent_multiInstancesSupported_appendsDisplayId() { - doReturn(true).when(mMultiInstanceHelper).supportsMultiInstanceSplit(any(), anyInt()); - Intent startIntent = createStartIntent("startActivity"); - PendingIntent pendingIntent = - PendingIntent.getActivity(mContext, 0, startIntent, FLAG_IMMUTABLE); - // Put the same component to the top running task - ActivityManager.RunningTaskInfo topRunningTask = - createTaskInfo(WINDOWING_MODE_FULLSCREEN, ACTIVITY_TYPE_STANDARD, startIntent); - doReturn(topRunningTask).when(mRecentTasks).getTopRunningTask(any()); - - final int secondDisplay = DEFAULT_DISPLAY + 1; - mSplitScreenController.startIntent(pendingIntent, mContext.getUserId(), null, - SPLIT_POSITION_TOP_OR_LEFT, null /* options */, null /* hideTaskToken */, - false, SPLIT_INDEX_0, secondDisplay); - - verify(mStageCoordinator).startIntent(eq(pendingIntent), mIntentCaptor.capture(), - eq(SPLIT_POSITION_TOP_OR_LEFT), isNull(), isNull(), eq(SPLIT_INDEX_0), - eq(secondDisplay)); - } - @Test public void startIntent_multiInstancesNotSupported_startTaskInBackgroundBeforeSplitActivated() { - doNothing().when(mSplitScreenController).startTask(anyInt(), anyInt(), any(), any()); + doNothing().when(mSplitScreenController).startTask(anyInt(), anyInt(), any()); Intent startIntent = createStartIntent("startActivity"); PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, startIntent, FLAG_IMMUTABLE); // Put the same component to the top running task ActivityManager.RunningTaskInfo topRunningTask = createTaskInfo(WINDOWING_MODE_FULLSCREEN, ACTIVITY_TYPE_STANDARD, startIntent); - doReturn(topRunningTask).when(mRecentTasks).getTopRunningTask(any()); + doReturn(topRunningTask).when(mRecentTasks).getTopRunningTask(); // Put the same component into a task in the background ActivityManager.RecentTaskInfo sameTaskInfo = new ActivityManager.RecentTaskInfo(); - doReturn(sameTaskInfo).when(mRecentTasks).findTaskInBackground(any(), anyInt(), any()); + doReturn(sameTaskInfo).when(mRecentTasks).findTaskInBackground(any(), anyInt()); mSplitScreenController.startIntent(pendingIntent, mContext.getUserId(), null, - SPLIT_POSITION_TOP_OR_LEFT, null /* options */, null /* hideTaskToken */, - SPLIT_INDEX_0); + SPLIT_POSITION_TOP_OR_LEFT, null); verify(mStageCoordinator).startTask(anyInt(), eq(SPLIT_POSITION_TOP_OR_LEFT), - isNull(), isNull(), eq(SPLIT_INDEX_0)); - verify(mMultiInstanceHelper, never()).supportsMultiInstanceSplit(any(), anyInt()); + isNull()); + verify(mMultiInstanceHelper, never()).supportsMultiInstanceSplit(any()); verify(mStageCoordinator, never()).switchSplitPosition(any()); } @Test public void startIntent_multiInstancesSupported_startTaskInBackgroundAfterSplitActivated() { - doReturn(true).when(mMultiInstanceHelper).supportsMultiInstanceSplit(any(), anyInt()); - doNothing().when(mSplitScreenController).startTask(anyInt(), anyInt(), any(), any()); + doReturn(true).when(mMultiInstanceHelper).supportsMultiInstanceSplit(any()); + doNothing().when(mSplitScreenController).startTask(anyInt(), anyInt(), any()); Intent startIntent = createStartIntent("startActivity"); PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, startIntent, FLAG_IMMUTABLE); @@ -309,19 +261,18 @@ public class SplitScreenControllerTests extends ShellTestCase { SPLIT_POSITION_BOTTOM_OR_RIGHT); // Put the same component into a task in the background doReturn(new ActivityManager.RecentTaskInfo()).when(mRecentTasks) - .findTaskInBackground(any(), anyInt(), any()); + .findTaskInBackground(any(), anyInt()); mSplitScreenController.startIntent(pendingIntent, mContext.getUserId(), null, - SPLIT_POSITION_TOP_OR_LEFT, null /* options */, null /* hideTaskToken */, - SPLIT_INDEX_0); - verify(mMultiInstanceHelper, never()).supportsMultiInstanceSplit(any(), anyInt()); + SPLIT_POSITION_TOP_OR_LEFT, null); + verify(mMultiInstanceHelper, never()).supportsMultiInstanceSplit(any()); verify(mStageCoordinator).startTask(anyInt(), eq(SPLIT_POSITION_TOP_OR_LEFT), - isNull(), isNull(), eq(SPLIT_INDEX_0)); + isNull()); } @Test public void startIntent_multiInstancesNotSupported_switchesPositionAfterSplitActivated() { - doReturn(false).when(mMultiInstanceHelper).supportsMultiInstanceSplit(any(), anyInt()); + doReturn(false).when(mMultiInstanceHelper).supportsMultiInstanceSplit(any()); Intent startIntent = createStartIntent("startActivity"); PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, startIntent, FLAG_IMMUTABLE); @@ -333,34 +284,11 @@ public class SplitScreenControllerTests extends ShellTestCase { SPLIT_POSITION_BOTTOM_OR_RIGHT); mSplitScreenController.startIntent(pendingIntent, mContext.getUserId(), null, - SPLIT_POSITION_TOP_OR_LEFT, null /* options */, null /* hideTaskToken */, - SPLIT_INDEX_0); + SPLIT_POSITION_TOP_OR_LEFT, null); verify(mStageCoordinator).switchSplitPosition(anyString()); } - @Test - public void startIntent_forceLaunchNewTaskTrue_skipsBackgroundTasks() { - Intent startIntent = createStartIntent("startActivity"); - PendingIntent pendingIntent = - PendingIntent.getActivity(mContext, 0, startIntent, FLAG_IMMUTABLE); - mSplitScreenController.startIntent(pendingIntent, mContext.getUserId(), null, - SPLIT_POSITION_TOP_OR_LEFT, null /* options */, null /* hideTaskToken */, - true /* forceLaunchNewTask */, SPLIT_INDEX_0, DEFAULT_DISPLAY); - verify(mRecentTasks, never()).findTaskInBackground(any(), anyInt(), any()); - } - - @Test - public void startIntent_forceLaunchNewTaskFalse_checksBackgroundTasks() { - Intent startIntent = createStartIntent("startActivity"); - PendingIntent pendingIntent = - PendingIntent.getActivity(mContext, 0, startIntent, FLAG_IMMUTABLE); - mSplitScreenController.startIntent(pendingIntent, mContext.getUserId(), null, - SPLIT_POSITION_TOP_OR_LEFT, null /* options */, null /* hideTaskToken */, - false /* forceLaunchNewTask */, SPLIT_INDEX_0, DEFAULT_DISPLAY); - verify(mRecentTasks).findTaskInBackground(any(), anyInt(), any()); - } - @Test public void testSwitchSplitPosition_checksIsSplitScreenVisible() { final String reason = "test"; @@ -384,8 +312,6 @@ public class SplitScreenControllerTests extends ShellTestCase { info.supportsMultiWindow = true; info.baseIntent = strIntent; info.baseActivity = strIntent.getComponent(); - info.token = new WindowContainerToken(mock(IWindowContainerToken.class)); - info.userId = mContext.getUserId(); ActivityInfo activityInfo = new ActivityInfo(); activityInfo.packageName = info.baseActivity.getPackageName(); activityInfo.name = info.baseActivity.getClassName(); diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTestUtils.java b/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTestUtils.java index f63cd76b6a..a3009a5519 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTestUtils.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTestUtils.java @@ -16,23 +16,16 @@ package com.android.wm.shell.splitscreen; -import static android.view.Display.DEFAULT_DISPLAY; - -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50; - import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; -import android.app.IActivityTaskManager; +import android.app.ActivityManager; import android.content.Context; import android.graphics.Rect; -import android.hardware.display.DisplayManager; -import android.os.Handler; import android.view.SurfaceControl; +import android.view.SurfaceSession; import com.android.dx.mockito.inline.extended.ExtendedMockito; -import com.android.wm.shell.RootDisplayAreaOrganizer; -import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.TestRunningTaskInfoBuilder; import com.android.wm.shell.common.DisplayController; @@ -41,19 +34,12 @@ import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.LaunchAdjacentController; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.common.split.SplitLayout; -import com.android.wm.shell.common.split.SplitState; -import com.android.wm.shell.desktopmode.DesktopTasksController; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; import com.android.wm.shell.recents.RecentTasksController; -import com.android.wm.shell.shared.TransactionPool; -import com.android.wm.shell.shared.desktopmode.DesktopState; import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.windowdecor.WindowDecorViewModel; -import com.google.android.msdl.domain.MSDLPlayer; - -import java.util.Objects; import java.util.Optional; public class SplitTestUtils { @@ -62,16 +48,13 @@ public class SplitTestUtils { final Rect dividerBounds = new Rect(48, 0, 52, 100); final Rect bounds1 = new Rect(0, 0, 40, 100); final Rect bounds2 = new Rect(60, 0, 100, 100); - final Rect rootBounds = new Rect(0, 0, 100, 100); final SurfaceControl leash = createMockSurface(); SplitLayout out = mock(SplitLayout.class); doReturn(dividerBounds).when(out).getDividerBounds(); doReturn(dividerBounds).when(out).getRefDividerBounds(); doReturn(leash).when(out).getDividerLeash(); - doReturn(bounds1).when(out).getTopLeftBounds(); - doReturn(bounds2).when(out).getBottomRightBounds(); - doReturn(rootBounds).when(out).getRootBounds(); - doReturn(SNAP_TO_2_50_50).when(out).calculateCurrentSnapPosition(); + doReturn(bounds1).when(out).getBounds1(); + doReturn(bounds2).when(out).getBounds2(); return out; } @@ -86,40 +69,27 @@ public class SplitTestUtils { } static class TestStageCoordinator extends StageCoordinator { + final ActivityManager.RunningTaskInfo mRootTask; final SurfaceControl mRootLeash; - final SplitMultiDisplayHelper mMultiDisplayHelper; TestStageCoordinator(Context context, int displayId, SyncTransactionQueue syncQueue, - ShellTaskOrganizer taskOrganizer, StageTaskListener mainStage, - StageTaskListener sideStage, DisplayController displayController, - DisplayImeController imeController, DisplayInsetsController insetsController, - SplitLayout splitLayout, Transitions transitions, TransactionPool transactionPool, - ShellExecutor mainExecutor, Handler mainHandler, + ShellTaskOrganizer taskOrganizer, MainStage mainStage, SideStage sideStage, + DisplayController displayController, DisplayImeController imeController, + DisplayInsetsController insetsController, SplitLayout splitLayout, + Transitions transitions, TransactionPool transactionPool, + ShellExecutor mainExecutor, Optional<RecentTasksController> recentTasks, LaunchAdjacentController launchAdjacentController, - Optional<WindowDecorViewModel> windowDecorViewModel, SplitState splitState, - Optional<DesktopTasksController> desktopTasksController, - Optional<DesktopUserRepositories> desktopUserRepositories, - RootTaskDisplayAreaOrganizer rootTDAOrganizer, - RootDisplayAreaOrganizer rootDisplayAreaOrganizer, DesktopState desktopState, - IActivityTaskManager activityTaskManager, MSDLPlayer msdlPlayer) { + Optional<WindowDecorViewModel> windowDecorViewModel) { super(context, displayId, syncQueue, taskOrganizer, mainStage, sideStage, displayController, imeController, insetsController, splitLayout, - transitions, transactionPool, mainExecutor, mainHandler, recentTasks, - launchAdjacentController, windowDecorViewModel, splitState, - desktopTasksController, desktopUserRepositories, rootTDAOrganizer, - rootDisplayAreaOrganizer, - desktopState, activityTaskManager, msdlPlayer); + transitions, transactionPool, mainExecutor, recentTasks, + launchAdjacentController, windowDecorViewModel); // Prepare root task for testing. - mRootLeash = new SurfaceControl.Builder().setName("test").build(); - DisplayManager displayManager = context.getSystemService(DisplayManager.class); - mMultiDisplayHelper = new SplitMultiDisplayHelper( - Objects.requireNonNull(displayManager)); - mMultiDisplayHelper.setDisplayRootTaskInfo( - DEFAULT_DISPLAY, new TestRunningTaskInfoBuilder().build()); - onTaskAppeared(mMultiDisplayHelper.getDisplayRootTaskInfo( - DEFAULT_DISPLAY), mRootLeash); + mRootTask = new TestRunningTaskInfoBuilder().build(); + mRootLeash = new SurfaceControl.Builder(new SurfaceSession()).setName("test").build(); + onTaskAppeared(mRootTask, mRootLeash); } } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTransitionTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTransitionTests.java index cc0f76ed99..ae226b807d 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTransitionTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/SplitTransitionTests.java @@ -27,10 +27,6 @@ import static android.view.WindowManager.TRANSIT_TO_FRONT; import static android.window.WindowContainerTransaction.HierarchyOp.HIERARCHY_OP_TYPE_CHILDREN_TASKS_REPARENT; import static android.window.WindowContainerTransaction.HierarchyOp.HIERARCHY_OP_TYPE_REORDER; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_10_90; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_90_10; -import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_MAIN; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_SIDE; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW; import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DRAG_DIVIDER; @@ -50,22 +46,17 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; import android.annotation.NonNull; import android.app.ActivityManager; -import android.app.IActivityTaskManager; -import android.os.Handler; import android.os.IBinder; import android.os.RemoteException; -import android.platform.test.annotations.EnableFlags; import android.view.SurfaceControl; -import android.window.DisplayAreaInfo; +import android.view.SurfaceSession; import android.window.IRemoteTransition; import android.window.RemoteTransition; import android.window.TransitionInfo; import android.window.TransitionRequestInfo; -import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import androidx.test.annotation.UiThreadTest; @@ -73,9 +64,6 @@ import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; import com.android.launcher3.icons.IconProvider; -import com.android.wm.shell.Flags; -import com.android.wm.shell.MockToken; -import com.android.wm.shell.RootDisplayAreaOrganizer; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; @@ -87,20 +75,15 @@ import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.LaunchAdjacentController; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.common.split.SplitDecorManager; import com.android.wm.shell.common.split.SplitLayout; -import com.android.wm.shell.common.split.SplitState; -import com.android.wm.shell.shared.TransactionPool; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; -import com.android.wm.shell.shared.split.SplitScreenConstants; import com.android.wm.shell.transition.DefaultMixedHandler; import com.android.wm.shell.transition.TestRemoteTransition; import com.android.wm.shell.transition.TransitionInfoBuilder; import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.windowdecor.WindowDecorViewModel; -import com.google.android.msdl.domain.MSDLPlayer; - import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -114,37 +97,27 @@ import java.util.Optional; @SmallTest @RunWith(AndroidJUnit4.class) public class SplitTransitionTests extends ShellTestCase { - private static final int MAIN_TASK_ID = 3; - private static final int SIDE_TASK_ID = 11; - @Mock private ShellTaskOrganizer mTaskOrganizer; @Mock private SyncTransactionQueue mSyncQueue; @Mock private RootTaskDisplayAreaOrganizer mRootTDAOrganizer; - @Mock private RootDisplayAreaOrganizer mRootDisplayAreaOrganizer; @Mock private DisplayController mDisplayController; @Mock private DisplayImeController mDisplayImeController; @Mock private DisplayInsetsController mDisplayInsetsController; @Mock private TransactionPool mTransactionPool; @Mock private Transitions mTransitions; + @Mock private SurfaceSession mSurfaceSession; @Mock private IconProvider mIconProvider; @Mock private WindowDecorViewModel mWindowDecorViewModel; - @Mock private SplitState mSplitState; @Mock private ShellExecutor mMainExecutor; - @Mock private Handler mMainHandler; @Mock private LaunchAdjacentController mLaunchAdjacentController; @Mock private DefaultMixedHandler mMixedHandler; @Mock private SplitScreen.SplitInvocationListener mInvocationListener; - private FakeDesktopState mDesktopState; - @Mock private IActivityTaskManager mActivityTaskManager; - @Mock private MSDLPlayer mMSDLPlayer; private final TestShellExecutor mTestShellExecutor = new TestShellExecutor(); private SplitLayout mSplitLayout; - private StageTaskListener mMainStage; - private StageTaskListener mSideStage; + private MainStage mMainStage; + private SideStage mSideStage; private StageCoordinator mStageCoordinator; private SplitScreenTransitions mSplitScreenTransitions; - private final DisplayAreaInfo mDisplayAreaInfo = new DisplayAreaInfo(new MockToken().token(), - DEFAULT_DISPLAY, 0); private ActivityManager.RunningTaskInfo mMainChild; private ActivityManager.RunningTaskInfo mSideChild; @@ -153,46 +126,32 @@ public class SplitTransitionTests extends ShellTestCase { @UiThreadTest public void setup() { MockitoAnnotations.initMocks(this); - mDesktopState = new FakeDesktopState(); final ShellExecutor mockExecutor = mock(ShellExecutor.class); doReturn(mockExecutor).when(mTransitions).getMainExecutor(); doReturn(mockExecutor).when(mTransitions).getAnimExecutor(); doReturn(mock(SurfaceControl.Transaction.class)).when(mTransactionPool).acquire(); - doReturn(mock(WindowContainerToken.class)) - .when(mRootDisplayAreaOrganizer).getDisplayTokenForDisplay(anyInt()); mSplitLayout = SplitTestUtils.createMockSplitLayout(); - mMainStage = spy(new StageTaskListener(mContext, mTaskOrganizer, DEFAULT_DISPLAY, mock( - StageTaskListener.StageListenerCallbacks.class), mSyncQueue, - mIconProvider, Optional.of(mWindowDecorViewModel), STAGE_TYPE_MAIN)); + mMainStage = spy(new MainStage(mContext, mTaskOrganizer, DEFAULT_DISPLAY, mock( + StageTaskListener.StageListenerCallbacks.class), mSyncQueue, mSurfaceSession, + mIconProvider, Optional.of(mWindowDecorViewModel))); mMainStage.onTaskAppeared(new TestRunningTaskInfoBuilder().build(), createMockSurface()); - mSideStage = spy(new StageTaskListener(mContext, mTaskOrganizer, DEFAULT_DISPLAY, mock( - StageTaskListener.StageListenerCallbacks.class), mSyncQueue, - mIconProvider, Optional.of(mWindowDecorViewModel), STAGE_TYPE_SIDE)); + mSideStage = spy(new SideStage(mContext, mTaskOrganizer, DEFAULT_DISPLAY, mock( + StageTaskListener.StageListenerCallbacks.class), mSyncQueue, mSurfaceSession, + mIconProvider, Optional.of(mWindowDecorViewModel))); mSideStage.onTaskAppeared(new TestRunningTaskInfoBuilder().build(), createMockSurface()); mStageCoordinator = new SplitTestUtils.TestStageCoordinator(mContext, DEFAULT_DISPLAY, mSyncQueue, mTaskOrganizer, mMainStage, mSideStage, mDisplayController, mDisplayImeController, mDisplayInsetsController, mSplitLayout, mTransitions, - mTransactionPool, mMainExecutor, mMainHandler, Optional.empty(), - mLaunchAdjacentController, Optional.empty(), mSplitState, Optional.empty(), - Optional.empty(), - mRootTDAOrganizer, mRootDisplayAreaOrganizer, mDesktopState, mActivityTaskManager, - mMSDLPlayer); - when(mRootTDAOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)).thenReturn(mDisplayAreaInfo); - + mTransactionPool, mMainExecutor, Optional.empty(), + mLaunchAdjacentController, Optional.empty()); mStageCoordinator.setMixedHandler(mMixedHandler); mSplitScreenTransitions = mStageCoordinator.getSplitTransitions(); doAnswer((Answer<IBinder>) invocation -> mock(IBinder.class)) .when(mTransitions).startTransition(anyInt(), any(), any()); mMainChild = new TestRunningTaskInfoBuilder() - .setTaskId(MAIN_TASK_ID) - .setVisible(true) - .setVisibleRequested(true) .setParentTaskId(mMainStage.mRootTaskInfo.taskId).build(); mSideChild = new TestRunningTaskInfoBuilder() - .setTaskId(SIDE_TASK_ID) - .setVisible(true) - .setVisibleRequested(true) .setParentTaskId(mSideStage.mRootTaskInfo.taskId).build(); doReturn(mock(SplitDecorManager.class)).when(mMainStage).getSplitDecorManager(); doReturn(mock(SplitDecorManager.class)).when(mSideStage).getSplitDecorManager(); @@ -242,7 +201,7 @@ public class SplitTransitionTests extends ShellTestCase { IBinder transition = mSplitScreenTransitions.startEnterTransition( TRANSIT_OPEN, new WindowContainerTransaction(), new RemoteTransition(testRemote, "Test"), mStageCoordinator, - TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false, SNAP_TO_2_50_50); + TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false); mMainStage.onTaskAppeared(mMainChild, createMockSurface()); mSideStage.onTaskAppeared(mSideChild, createMockSurface()); boolean accepted = mStageCoordinator.startAnimation(transition, info, @@ -256,29 +215,6 @@ public class SplitTransitionTests extends ShellTestCase { assertTrue(testRemote.isCalled()); } - @Test - @UiThreadTest - public void testRemoteTransitionConsumedForStartAnimation() { - // Omit side child change - TransitionInfo info = new TransitionInfoBuilder(TRANSIT_OPEN, 0) - .addChange(TRANSIT_OPEN, mMainChild) - .build(); - TestRemoteTransition testRemote = new TestRemoteTransition(); - - IBinder transition = mSplitScreenTransitions.startEnterTransition( - TRANSIT_OPEN, new WindowContainerTransaction(), - new RemoteTransition(testRemote, "Test"), mStageCoordinator, - TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false, SNAP_TO_2_50_50); - mMainStage.onTaskAppeared(mMainChild, createMockSurface()); - boolean accepted = mStageCoordinator.startAnimation(transition, info, - mock(SurfaceControl.Transaction.class), - mock(SurfaceControl.Transaction.class), - mock(Transitions.TransitionFinishCallback.class)); - assertTrue(accepted); - - assertTrue(testRemote.isConsumed()); - } - @Test @UiThreadTest public void testRemoteTransitionConsumed() { @@ -291,16 +227,16 @@ public class SplitTransitionTests extends ShellTestCase { IBinder transition = mSplitScreenTransitions.startEnterTransition( TRANSIT_OPEN, new WindowContainerTransaction(), new RemoteTransition(testRemote, "Test"), mStageCoordinator, - TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false, SNAP_TO_2_50_50); + TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false); mMainStage.onTaskAppeared(mMainChild, createMockSurface()); - mStageCoordinator.startAnimation(transition, info, + boolean accepted = mStageCoordinator.startAnimation(transition, info, mock(SurfaceControl.Transaction.class), mock(SurfaceControl.Transaction.class), mock(Transitions.TransitionFinishCallback.class)); - mStageCoordinator.onTransitionConsumed(transition, false /*aborted*/, - mock(SurfaceControl.Transaction.class)); + assertTrue(accepted); assertTrue(testRemote.isConsumed()); + } @Test @@ -385,14 +321,8 @@ public class SplitTransitionTests extends ShellTestCase { // Make sure it cleans-up if recents doesn't restore WindowContainerTransaction commitWCT = new WindowContainerTransaction(); - if (Flags.enableRecentsBookendTransition()) { - mStageCoordinator.onRecentsInSplitAnimationFinishing(false /* returnToApp */, commitWCT, - mock(SurfaceControl.Transaction.class)); - } else { - mStageCoordinator.onRecentsInSplitAnimationFinishing( - mStageCoordinator.wctIsReorderingSplitToTop(commitWCT), commitWCT, - mock(SurfaceControl.Transaction.class)); - } + mStageCoordinator.onRecentsInSplitAnimationFinish(commitWCT, + mock(SurfaceControl.Transaction.class)); assertFalse(mStageCoordinator.isSplitScreenVisible()); } @@ -456,14 +386,8 @@ public class SplitTransitionTests extends ShellTestCase { // simulate the restoreWCT being applied: mMainStage.onTaskAppeared(mMainChild, mock(SurfaceControl.class)); mSideStage.onTaskAppeared(mSideChild, mock(SurfaceControl.class)); - if (Flags.enableRecentsBookendTransition()) { - mStageCoordinator.onRecentsInSplitAnimationFinishing(true /* returnToApp */, restoreWCT, - mock(SurfaceControl.Transaction.class)); - } else { - mStageCoordinator.onRecentsInSplitAnimationFinishing( - mStageCoordinator.wctIsReorderingSplitToTop(restoreWCT), restoreWCT, - mock(SurfaceControl.Transaction.class)); - } + mStageCoordinator.onRecentsInSplitAnimationFinish(restoreWCT, + mock(SurfaceControl.Transaction.class)); assertTrue(mStageCoordinator.isSplitScreenVisible()); } @@ -541,35 +465,6 @@ public class SplitTransitionTests extends ShellTestCase { assertFalse(mStageCoordinator.isSplitScreenVisible()); } - @Test - public void testRequestingFocusForDefaultLaunch() throws RemoteException { - enterSplit(); - verify(mActivityTaskManager, times(0)).setFocusedTask(anyInt()); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FLEXIBLE_TWO_APP_SPLIT) - public void testRequestingFocusFor9010Launch() throws RemoteException { - enterSplit(SNAP_TO_2_90_10); - mSplitScreenTransitions.mPendingEnter.mFinishedCallback.onFinished( - new WindowContainerTransaction(), new SurfaceControl.Transaction()); - // We're assuming main stage is topLeft position, so we use that stage's taskId for focus - verify(mActivityTaskManager, times(1)) - .setFocusedTask(mMainChild.getTaskId()); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FLEXIBLE_TWO_APP_SPLIT) - public void testRequestingFocusFor1090Launch() throws RemoteException { - enterSplit(SNAP_TO_2_10_90); - mSplitScreenTransitions.mPendingEnter.mFinishedCallback.onFinished( - new WindowContainerTransaction(), new SurfaceControl.Transaction()); - // We're assuming side stage is bottomRight position, so we use that stage's taskId for - // focus - verify(mActivityTaskManager, times(1)) - .setFocusedTask(mSideChild.getTaskId()); - } - private TransitionInfo createEnterPairInfo() { return new TransitionInfoBuilder(TRANSIT_OPEN, 0) .addChange(TRANSIT_OPEN, mMainChild) @@ -578,15 +473,11 @@ public class SplitTransitionTests extends ShellTestCase { } private void enterSplit() { - enterSplit(SNAP_TO_2_50_50); - } - - private void enterSplit(@SplitScreenConstants.PersistentSnapPosition int snapPosition) { TransitionInfo enterInfo = createEnterPairInfo(); IBinder enterTransit = mSplitScreenTransitions.startEnterTransition( TRANSIT_OPEN, new WindowContainerTransaction(), new RemoteTransition(new TestRemoteTransition(), "Test"), - mStageCoordinator, TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false, snapPosition); + mStageCoordinator, TRANSIT_SPLIT_SCREEN_PAIR_OPEN, false); mMainStage.onTaskAppeared(mMainChild, createMockSurface()); mSideStage.onTaskAppeared(mSideChild, createMockSurface()); mStageCoordinator.startAnimation(enterTransit, enterInfo, @@ -609,8 +500,7 @@ public class SplitTransitionTests extends ShellTestCase { for (int i = 0; i < wct.getHierarchyOps().size(); ++i) { WindowContainerTransaction.HierarchyOp op = wct.getHierarchyOps().get(i); if (op.getType() == HIERARCHY_OP_TYPE_REORDER - && op.getContainer() == mStageCoordinator.mSplitMultiDisplayHelper - .getDisplayRootTaskInfo(DEFAULT_DISPLAY).token.asBinder()) { + && op.getContainer() == mStageCoordinator.mRootTaskInfo.token.asBinder()) { return true; } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/StageCoordinatorTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/StageCoordinatorTests.java index 81b6a65454..d18fec2f24 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/StageCoordinatorTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/StageCoordinatorTests.java @@ -17,35 +17,24 @@ package com.android.wm.shell.splitscreen; import static android.app.ActivityTaskManager.INVALID_TASK_ID; -import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; -import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; -import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; import static android.view.Display.DEFAULT_DISPLAY; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SNAP_TO_2_50_50; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_INDEX_UNDEFINED; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT; +import static com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_MAIN; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_SIDE; import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_UNDEFINED; -import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DESKTOP_MODE; -import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_DRAG_DIVIDER; +import static com.android.wm.shell.splitscreen.SplitScreenController.EXIT_REASON_RETURN_HOME; import static com.android.wm.shell.transition.Transitions.TRANSIT_SPLIT_DISMISS; import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyBoolean; -import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.ArgumentMatchers.notNull; -import static org.mockito.Mockito.atLeastOnce; import static org.mockito.Mockito.clearInvocations; -import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; @@ -55,35 +44,21 @@ import static org.mockito.Mockito.when; import android.app.ActivityManager; import android.app.ActivityOptions; -import android.app.IActivityTaskManager; import android.app.PendingIntent; import android.content.res.Configuration; import android.graphics.Rect; -import android.hardware.display.DisplayManager; -import android.os.Binder; import android.os.Bundle; import android.os.Handler; -import android.os.IBinder; import android.os.Looper; -import android.platform.test.annotations.DisableFlags; -import android.platform.test.annotations.EnableFlags; -import android.platform.test.flag.junit.SetFlagsRule; import android.view.SurfaceControl; -import android.window.DisplayAreaInfo; +import android.view.SurfaceSession; import android.window.RemoteTransition; -import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; -import androidx.annotation.Nullable; import androidx.test.annotation.UiThreadTest; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; -import com.android.internal.logging.InstanceId; -import com.android.window.flags.Flags; -import com.android.wm.shell.MockToken; -import com.android.wm.shell.RootDisplayAreaOrganizer; -import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestRunningTaskInfoBuilder; @@ -94,33 +69,23 @@ import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.LaunchAdjacentController; import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.common.split.SplitDecorManager; import com.android.wm.shell.common.split.SplitLayout; -import com.android.wm.shell.common.split.SplitState; -import com.android.wm.shell.desktopmode.DesktopRepository; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.shared.TransactionPool; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; import com.android.wm.shell.splitscreen.SplitScreen.SplitScreenListener; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.DefaultMixedHandler; -import com.android.wm.shell.transition.FocusTransitionObserver; import com.android.wm.shell.transition.HomeTransitionObserver; import com.android.wm.shell.transition.Transitions; -import com.google.android.msdl.domain.MSDLPlayer; - import org.junit.Before; -import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; -import org.mockito.ArgumentCaptor; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import java.util.Optional; -import java.util.function.Consumer; /** * Tests for {@link StageCoordinator} @@ -128,17 +93,14 @@ import java.util.function.Consumer; @SmallTest @RunWith(AndroidJUnit4.class) public class StageCoordinatorTests extends ShellTestCase { - @Rule - public final SetFlagsRule setFlagsRule = new SetFlagsRule(); - @Mock private ShellTaskOrganizer mTaskOrganizer; @Mock private SyncTransactionQueue mSyncQueue; @Mock - private StageTaskListener mMainStage; + private MainStage mMainStage; @Mock - private StageTaskListener mSideStage; + private SideStage mSideStage; @Mock private SplitLayout mSplitLayout; @Mock @@ -153,127 +115,60 @@ public class StageCoordinatorTests extends ShellTestCase { private LaunchAdjacentController mLaunchAdjacentController; @Mock private DefaultMixedHandler mDefaultMixedHandler; - @Mock - private SplitState mSplitState; - @Mock - private RootTaskDisplayAreaOrganizer mRootTDAOrganizer; - @Mock - private RootDisplayAreaOrganizer mRootDisplayAreaOrganizer; - @Mock - private MSDLPlayer mMSDLPlayer; - @Mock - private DesktopUserRepositories mDesktopUserRepositories; - @Mock - private DesktopRepository mDesktopRepository; - private FakeDesktopState mDesktopState; - private IActivityTaskManager mIActivityTaskManager; private final Rect mBounds1 = new Rect(10, 20, 30, 40); private final Rect mBounds2 = new Rect(5, 10, 15, 20); private final Rect mRootBounds = new Rect(0, 0, 45, 60); - private final int mTaskId = 18; - private SplitMultiDisplayHelper mSplitMultiDisplayHelper; + private SurfaceSession mSurfaceSession = new SurfaceSession(); + private SurfaceControl mRootLeash; + private SurfaceControl mDividerLeash; + private ActivityManager.RunningTaskInfo mRootTask; private StageCoordinator mStageCoordinator; - private SplitScreenTransitions mSplitScreenTransitions; - private SplitScreenListener mSplitScreenListener; - private IBinder mBinder; - private ActivityManager.RunningTaskInfo mRunningTaskInfo; - private RemoteTransition mRemoteTransition; + private Transitions mTransitions; private final TestShellExecutor mMainExecutor = new TestShellExecutor(); private final ShellExecutor mAnimExecutor = new TestShellExecutor(); private final Handler mMainHandler = new Handler(Looper.getMainLooper()); - private final DisplayAreaInfo mDisplayAreaInfo = new DisplayAreaInfo(new MockToken().token(), - DEFAULT_DISPLAY, 0); - private final ActivityManager.RunningTaskInfo mMainChildTaskInfo = - new TestRunningTaskInfoBuilder().setVisible(true).build(); - private final ArgumentCaptor<WindowContainerTransaction> mWctCaptor = - ArgumentCaptor.forClass(WindowContainerTransaction.class); - private final WindowContainerTransaction mWct = spy(new WindowContainerTransaction()); @Before @UiThreadTest public void setup() { MockitoAnnotations.initMocks(this); - Transitions transitions = createTestTransitions(); - WindowContainerToken token = mock(WindowContainerToken.class); - SurfaceControl dividerLeash = new SurfaceControl.Builder().setName("fakeDivider").build(); - when(mRootDisplayAreaOrganizer.getDisplayTokenForDisplay(anyInt())) - .thenReturn(mock(WindowContainerToken.class)); - mDesktopState = new FakeDesktopState(); - + mTransitions = createTestTransitions(); mStageCoordinator = spy(new StageCoordinator(mContext, DEFAULT_DISPLAY, mSyncQueue, mTaskOrganizer, mMainStage, mSideStage, mDisplayController, mDisplayImeController, - mDisplayInsetsController, mSplitLayout, transitions, mTransactionPool, - mMainExecutor, mMainHandler, Optional.empty(), mLaunchAdjacentController, - Optional.empty(), mSplitState, Optional.empty(), - Optional.of(mDesktopUserRepositories), - mRootTDAOrganizer, - mRootDisplayAreaOrganizer, mDesktopState, mIActivityTaskManager, mMSDLPlayer)); - mSplitScreenTransitions = spy(mStageCoordinator.getSplitTransitions()); - mSplitScreenListener = mock(SplitScreenListener.class); - mStageCoordinator.setSplitTransitions(mSplitScreenTransitions); - mBinder = mock(IBinder.class); - mRunningTaskInfo = mock(ActivityManager.RunningTaskInfo.class); - mRemoteTransition = mock(RemoteTransition.class); - mRunningTaskInfo.token = token; + mDisplayInsetsController, mSplitLayout, mTransitions, mTransactionPool, + mMainExecutor, Optional.empty(), mLaunchAdjacentController, Optional.empty())); + mDividerLeash = new SurfaceControl.Builder(mSurfaceSession).setName("fakeDivider").build(); - when(mRemoteTransition.getDebugName()).thenReturn(""); - when(token.asBinder()).thenReturn(mBinder); - when(mRunningTaskInfo.getToken()).thenReturn(token); - when(mTaskOrganizer.getRunningTaskInfo(mTaskId)).thenReturn(mRunningTaskInfo); - when(mTaskOrganizer.startNewTransition(anyInt(), any())).thenReturn(new Binder()); - when(mRootTDAOrganizer.getDisplayAreaInfo(DEFAULT_DISPLAY)).thenReturn(mDisplayAreaInfo); - mDesktopState.setCanEnterDesktopMode(false); - when(mDesktopUserRepositories.getCurrent()).thenReturn(mDesktopRepository); - - when(mSplitLayout.getTopLeftBounds()).thenReturn(mBounds1); - when(mSplitLayout.getBottomRightBounds()).thenReturn(mBounds2); + when(mSplitLayout.getBounds1()).thenReturn(mBounds1); + when(mSplitLayout.getBounds2()).thenReturn(mBounds2); when(mSplitLayout.getRootBounds()).thenReturn(mRootBounds); when(mSplitLayout.isLeftRightSplit()).thenReturn(false); when(mSplitLayout.applyTaskChanges(any(), any(), any())).thenReturn(true); - when(mSplitLayout.getDividerLeash()).thenReturn(dividerLeash); + when(mSplitLayout.getDividerLeash()).thenReturn(mDividerLeash); - mSplitMultiDisplayHelper = new SplitMultiDisplayHelper( - mContext.getSystemService(DisplayManager.class)); - mSplitMultiDisplayHelper.setDisplayRootTaskInfo( - DEFAULT_DISPLAY, new TestRunningTaskInfoBuilder().build()); - SurfaceControl rootLeash = new SurfaceControl.Builder().setName("splitRoot").build(); - mStageCoordinator.onTaskAppeared(mSplitMultiDisplayHelper.getDisplayRootTaskInfo( - DEFAULT_DISPLAY), rootLeash); + mRootTask = new TestRunningTaskInfoBuilder().build(); + mRootLeash = new SurfaceControl.Builder(mSurfaceSession).setName("test").build(); + mStageCoordinator.onTaskAppeared(mRootTask, mRootLeash); mSideStage.mRootTaskInfo = new TestRunningTaskInfoBuilder().build(); mMainStage.mRootTaskInfo = new TestRunningTaskInfoBuilder().build(); - SurfaceControl mainRootLeash = new SurfaceControl.Builder().setName("mainRoot").build(); - SurfaceControl sideRootLeash = new SurfaceControl.Builder().setName("sideRoot").build(); - mMainStage.mRootLeash = mainRootLeash; - mSideStage.mRootLeash = sideRootLeash; - SurfaceControl mainDimLayer = new SurfaceControl.Builder().setName("mainDim").build(); - SurfaceControl sideDimLayer = new SurfaceControl.Builder().setName("sideDim").build(); - mMainStage.mDimLayer = mainDimLayer; - mSideStage.mDimLayer = sideDimLayer; doReturn(mock(SplitDecorManager.class)).when(mMainStage).getSplitDecorManager(); doReturn(mock(SplitDecorManager.class)).when(mSideStage).getSplitDecorManager(); - - doAnswer(invocation -> { - Consumer<ActivityManager.RunningTaskInfo> consumer = invocation.getArgument(0); - consumer.accept(mMainChildTaskInfo); - return null; - }).when(mMainStage).doForAllChildTaskInfos(any()); } @Test public void testMoveToStage_splitActiveBackground() { when(mStageCoordinator.isSplitActive()).thenReturn(true); - ActivityManager.RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); - mStageCoordinator.moveToStage(rootTaskInfo, SPLIT_POSITION_BOTTOM_OR_RIGHT, mWct); + final ActivityManager.RunningTaskInfo task = new TestRunningTaskInfoBuilder().build(); + final WindowContainerTransaction wct = spy(new WindowContainerTransaction()); - // TODO(b/349828130) Address this once we remove index_undefined called - verify(mStageCoordinator).prepareEnterSplitScreen(eq(mWct), eq(rootTaskInfo), - eq(SPLIT_POSITION_BOTTOM_OR_RIGHT), eq(false), eq(SPLIT_INDEX_UNDEFINED)); - verify(mMainStage).reparentTopTask(eq(mWct)); + mStageCoordinator.moveToStage(task, SPLIT_POSITION_BOTTOM_OR_RIGHT, wct); + verify(mStageCoordinator).prepareEnterSplitScreen(eq(wct), eq(task), + eq(SPLIT_POSITION_BOTTOM_OR_RIGHT), eq(false)); + verify(mMainStage).reparentTopTask(eq(wct)); assertEquals(SPLIT_POSITION_BOTTOM_OR_RIGHT, mStageCoordinator.getSideStagePosition()); assertEquals(SPLIT_POSITION_TOP_OR_LEFT, mStageCoordinator.getMainStagePosition()); } @@ -285,33 +180,30 @@ public class StageCoordinatorTests extends ShellTestCase { // Assume current side stage is top or left. mStageCoordinator.setSideStagePosition(SPLIT_POSITION_TOP_OR_LEFT, null); - ActivityManager.RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); - mStageCoordinator.moveToStage(rootTaskInfo, SPLIT_POSITION_BOTTOM_OR_RIGHT, mWct); + final ActivityManager.RunningTaskInfo task = new TestRunningTaskInfoBuilder().build(); + final WindowContainerTransaction wct = new WindowContainerTransaction(); - // TODO(b/349828130) Address this once we remove index_undefined called - verify(mStageCoordinator).prepareEnterSplitScreen(eq(mWct), eq(rootTaskInfo), - eq(SPLIT_POSITION_BOTTOM_OR_RIGHT), eq(false), eq(SPLIT_INDEX_UNDEFINED)); + mStageCoordinator.moveToStage(task, SPLIT_POSITION_BOTTOM_OR_RIGHT, wct); + verify(mStageCoordinator).prepareEnterSplitScreen(eq(wct), eq(task), + eq(SPLIT_POSITION_BOTTOM_OR_RIGHT), eq(false)); assertEquals(SPLIT_POSITION_BOTTOM_OR_RIGHT, mStageCoordinator.getMainStagePosition()); assertEquals(SPLIT_POSITION_TOP_OR_LEFT, mStageCoordinator.getSideStagePosition()); } @Test - public void testMoveToStage_splitInactive() { - ActivityManager.RunningTaskInfo rootTaskInfo = - mSplitMultiDisplayHelper.getDisplayRootTaskInfo(DEFAULT_DISPLAY); - mStageCoordinator.moveToStage(rootTaskInfo, SPLIT_POSITION_BOTTOM_OR_RIGHT, mWct); + public void testMoveToStage_splitInctive() { + final ActivityManager.RunningTaskInfo task = new TestRunningTaskInfoBuilder().build(); + final WindowContainerTransaction wct = new WindowContainerTransaction(); - // TODO(b/349828130) Address this once we remove index_undefined called - verify(mStageCoordinator).prepareEnterSplitScreen(eq(mWct), eq(rootTaskInfo), - eq(SPLIT_POSITION_BOTTOM_OR_RIGHT), eq(false), eq(SPLIT_INDEX_UNDEFINED)); + mStageCoordinator.moveToStage(task, SPLIT_POSITION_BOTTOM_OR_RIGHT, wct); + verify(mStageCoordinator).prepareEnterSplitScreen(eq(wct), eq(task), + eq(SPLIT_POSITION_BOTTOM_OR_RIGHT), eq(false)); assertEquals(SPLIT_POSITION_BOTTOM_OR_RIGHT, mStageCoordinator.getSideStagePosition()); } @Test public void testRootTaskInfoChanged_updatesSplitLayout() { - mStageCoordinator.onTaskInfoChanged(mSplitMultiDisplayHelper.getDisplayRootTaskInfo( - DEFAULT_DISPLAY)); + mStageCoordinator.onTaskInfoChanged(mRootTask); verify(mSplitLayout).updateConfiguration(any(Configuration.class)); } @@ -319,23 +211,68 @@ public class StageCoordinatorTests extends ShellTestCase { @Test public void testLayoutChanged_topLeftSplitPosition_updatesUnfoldStageBounds() { mStageCoordinator.setSideStagePosition(SPLIT_POSITION_TOP_OR_LEFT, null); - mStageCoordinator.registerSplitScreenListener(mSplitScreenListener); - clearInvocations(mSplitScreenListener); + final SplitScreenListener listener = mock(SplitScreenListener.class); + mStageCoordinator.registerSplitScreenListener(listener); + clearInvocations(listener); mStageCoordinator.onLayoutSizeChanged(mSplitLayout); - verify(mSplitScreenListener).onSplitBoundsChanged(mRootBounds, mBounds2, mBounds1); + verify(listener).onSplitBoundsChanged(mRootBounds, mBounds2, mBounds1); } @Test public void testLayoutChanged_bottomRightSplitPosition_updatesUnfoldStageBounds() { mStageCoordinator.setSideStagePosition(SPLIT_POSITION_BOTTOM_OR_RIGHT, null); - mStageCoordinator.registerSplitScreenListener(mSplitScreenListener); - clearInvocations(mSplitScreenListener); + final SplitScreenListener listener = mock(SplitScreenListener.class); + mStageCoordinator.registerSplitScreenListener(listener); + clearInvocations(listener); mStageCoordinator.onLayoutSizeChanged(mSplitLayout); - verify(mSplitScreenListener).onSplitBoundsChanged(mRootBounds, mBounds1, mBounds2); + verify(listener).onSplitBoundsChanged(mRootBounds, mBounds1, mBounds2); + } + + @Test + public void testRemoveFromSideStage() { + final ActivityManager.RunningTaskInfo task = new TestRunningTaskInfoBuilder().build(); + + doReturn(false).when(mMainStage).isActive(); + mStageCoordinator.removeFromSideStage(task.taskId); + + verify(mSideStage).removeTask( + eq(task.taskId), any(), any(WindowContainerTransaction.class)); + } + + @Test + public void testExitSplitScreen() { + when(mMainStage.isActive()).thenReturn(true); + mStageCoordinator.exitSplitScreen(INVALID_TASK_ID, EXIT_REASON_RETURN_HOME); + verify(mSideStage).removeAllTasks(any(WindowContainerTransaction.class), eq(false)); + verify(mMainStage).deactivate(any(WindowContainerTransaction.class), eq(false)); + } + + @Test + public void testExitSplitScreenToMainStage() { + when(mMainStage.isActive()).thenReturn(true); + final int testTaskId = 12345; + when(mMainStage.containsTask(eq(testTaskId))).thenReturn(true); + when(mSideStage.containsTask(eq(testTaskId))).thenReturn(false); + mStageCoordinator.exitSplitScreen(testTaskId, EXIT_REASON_RETURN_HOME); + verify(mMainStage).reorderChild(eq(testTaskId), eq(true), + any(WindowContainerTransaction.class)); + verify(mMainStage).resetBounds(any(WindowContainerTransaction.class)); + } + + @Test + public void testExitSplitScreenToSideStage() { + when(mMainStage.isActive()).thenReturn(true); + final int testTaskId = 12345; + when(mMainStage.containsTask(eq(testTaskId))).thenReturn(false); + when(mSideStage.containsTask(eq(testTaskId))).thenReturn(true); + mStageCoordinator.exitSplitScreen(testTaskId, EXIT_REASON_RETURN_HOME); + verify(mSideStage).reorderChild(eq(testTaskId), eq(true), + any(WindowContainerTransaction.class)); + verify(mSideStage).resetBounds(any(WindowContainerTransaction.class)); } @Test @@ -399,8 +336,7 @@ public class StageCoordinatorTests extends ShellTestCase { public void testFinishEnterSplitScreen_applySurfaceLayout() { mStageCoordinator.finishEnterSplitScreen(new SurfaceControl.Transaction()); - verify(mSplitLayout, atLeastOnce()) - .applySurfaceChanges(any(), any(), any(), any(), any(), eq(false)); + verify(mSplitLayout).applySurfaceChanges(any(), any(), any(), any(), any(), eq(false)); } @Test @@ -411,7 +347,8 @@ public class StageCoordinatorTests extends ShellTestCase { assertThat(options.getLaunchRootTask()).isEqualTo(mMainStage.mRootTaskInfo.token); assertThat(options.getPendingIntentBackgroundActivityStartMode()) - .isEqualTo(ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_ALWAYS); + .isEqualTo(ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED); + assertThat(options.isPendingIntentBackgroundActivityLaunchAllowedByPermission()).isTrue(); } @Test @@ -422,22 +359,31 @@ public class StageCoordinatorTests extends ShellTestCase { mMainStage.mRootTaskInfo = new TestRunningTaskInfoBuilder().setVisible(true).build(); when(mStageCoordinator.isSplitActive()).thenReturn(true); when(mStageCoordinator.isSplitScreenVisible()).thenReturn(true); - when(mStageCoordinator.willSleepOnFold()).thenReturn(true); mStageCoordinator.onFoldedStateChanged(true); - assertEquals(mStageCoordinator.mLastActiveStage, STAGE_TYPE_MAIN); + assertEquals(mStageCoordinator.mTopStageAfterFoldDismiss, STAGE_TYPE_MAIN); - mStageCoordinator.onStartedWakingUp(); + mStageCoordinator.onFinishedWakingUp(); - verify(mTaskOrganizer).startNewTransition(eq(TRANSIT_SPLIT_DISMISS), notNull()); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + verify(mTaskOrganizer).startNewTransition(eq(TRANSIT_SPLIT_DISMISS), notNull()); + } else { + verify(mStageCoordinator).onSplitScreenExit(); + verify(mMainStage).deactivate(any(WindowContainerTransaction.class), eq(false)); + } } @Test public void testSplitIntentAndTaskWithPippedApp_launchFullscreen() { int taskId = 9; + SplitScreenTransitions splitScreenTransitions = + spy(mStageCoordinator.getSplitTransitions()); + mStageCoordinator.setSplitTransitions(splitScreenTransitions); mStageCoordinator.setMixedHandler(mDefaultMixedHandler); PendingIntent pendingIntent = mock(PendingIntent.class); + RemoteTransition remoteTransition = mock(RemoteTransition.class); + when(remoteTransition.getDebugName()).thenReturn(""); // Test launching second task full screen when(mDefaultMixedHandler.isIntentInPip(pendingIntent)).thenReturn(true); mStageCoordinator.startIntentAndTask( @@ -448,9 +394,9 @@ public class StageCoordinatorTests extends ShellTestCase { null /*option2*/, 0 /*splitPosition*/, 1 /*snapPosition*/, - mRemoteTransition /*remoteTransition*/, + remoteTransition /*remoteTransition*/, null /*instanceId*/); - verify(mSplitScreenTransitions, times(1)) + verify(splitScreenTransitions, times(1)) .startFullscreenTransition(any(), any()); // Test launching first intent fullscreen @@ -464,17 +410,22 @@ public class StageCoordinatorTests extends ShellTestCase { null /*option2*/, 0 /*splitPosition*/, 1 /*snapPosition*/, - mRemoteTransition /*remoteTransition*/, + remoteTransition /*remoteTransition*/, null /*instanceId*/); - verify(mSplitScreenTransitions, times(2)) + verify(splitScreenTransitions, times(2)) .startFullscreenTransition(any(), any()); } @Test public void testSplitIntentsWithPippedApp_launchFullscreen() { + SplitScreenTransitions splitScreenTransitions = + spy(mStageCoordinator.getSplitTransitions()); + mStageCoordinator.setSplitTransitions(splitScreenTransitions); mStageCoordinator.setMixedHandler(mDefaultMixedHandler); PendingIntent pendingIntent = mock(PendingIntent.class); PendingIntent pendingIntent2 = mock(PendingIntent.class); + RemoteTransition remoteTransition = mock(RemoteTransition.class); + when(remoteTransition.getDebugName()).thenReturn(""); // Test launching second task full screen when(mDefaultMixedHandler.isIntentInPip(pendingIntent)).thenReturn(true); mStageCoordinator.startIntents( @@ -488,9 +439,9 @@ public class StageCoordinatorTests extends ShellTestCase { new Bundle(), 0 /*splitPosition*/, 1 /*snapPosition*/, - mRemoteTransition /*remoteTransition*/, + remoteTransition /*remoteTransition*/, null /*instanceId*/); - verify(mSplitScreenTransitions, times(1)) + verify(splitScreenTransitions, times(1)) .startFullscreenTransition(any(), any()); // Test launching first intent fullscreen @@ -507,132 +458,18 @@ public class StageCoordinatorTests extends ShellTestCase { new Bundle(), 0 /*splitPosition*/, 1 /*snapPosition*/, - mRemoteTransition /*remoteTransition*/, + remoteTransition /*remoteTransition*/, null /*instanceId*/); - verify(mSplitScreenTransitions, times(2)) + verify(splitScreenTransitions, times(2)) .startFullscreenTransition(any(), any()); } - @Test - public void startTask_ensureWindowingModeCleared() { - mStageCoordinator.startTask(mTaskId, SPLIT_POSITION_TOP_OR_LEFT, null /*options*/, - null, SPLIT_INDEX_UNDEFINED); - verify(mSplitScreenTransitions).startEnterTransition(anyInt(), - mWctCaptor.capture(), any(), any(), anyInt(), anyBoolean(), anyInt()); - - int windowingMode = mWctCaptor.getValue().getChanges().get(mBinder).getWindowingMode(); - assertEquals(windowingMode, WINDOWING_MODE_UNDEFINED); - } - - @Test - @EnableFlags({Flags.FLAG_ENABLE_FULL_SCREEN_WINDOW_ON_REMOVING_SPLIT_SCREEN_STAGE_BUGFIX, - Flags.FLAG_ENABLE_MULTIPLE_DESKTOPS_BACKEND}) - public void startTasksOnSingleFreeformWindow_ensureWindowingModeClearedAndLaunchFullScreen() { - mDisplayAreaInfo.configuration.windowConfiguration.setWindowingMode( - WINDOWING_MODE_FREEFORM); - when(mRunningTaskInfo.getWindowingMode()).thenReturn(WINDOWING_MODE_FREEFORM); - mDesktopRepository.addTask(DEFAULT_DISPLAY, mTaskId, false, mBounds1); - when(mDesktopRepository.isActiveTask(mTaskId)).thenReturn(true); - - mStageCoordinator.startTasks(mTaskId, null, INVALID_TASK_ID, null, - SPLIT_POSITION_TOP_OR_LEFT, SNAP_TO_2_50_50, mRemoteTransition, - InstanceId.fakeInstanceId(0)); - - verify(mSplitScreenTransitions).startFullscreenTransition(mWctCaptor.capture(), any()); - int windowingMode = mWctCaptor.getValue().getChanges().get(mBinder).getWindowingMode(); - assertEquals(windowingMode, WINDOWING_MODE_UNDEFINED); - assertThat(mWctCaptor.getValue().getHierarchyOps().stream().filter( - WindowContainerTransaction.HierarchyOp::isReparent).findFirst().get() - .getNewParent()).isNull(); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_FULL_SCREEN_WINDOW_ON_REMOVING_SPLIT_SCREEN_STAGE_BUGFIX) - public void startTasksOnSingleFreeformWindow_flagDisabled_noChangeToWindowingModeInWct() { - mDisplayAreaInfo.configuration.windowConfiguration.setWindowingMode( - WINDOWING_MODE_FREEFORM); - when(mRunningTaskInfo.getWindowingMode()).thenReturn(WINDOWING_MODE_FREEFORM); - - mStageCoordinator.startTasks(mTaskId, null, INVALID_TASK_ID, null, - SPLIT_POSITION_TOP_OR_LEFT, SNAP_TO_2_50_50, mRemoteTransition, - InstanceId.fakeInstanceId(0)); - - verify(mSplitScreenTransitions).startFullscreenTransition(mWctCaptor.capture(), any()); - assertThat(mWctCaptor.getValue().getChanges()).isEmpty(); - } - - @Test - public void testDismiss_freeformDisplay() { - mDisplayAreaInfo.configuration.windowConfiguration.setWindowingMode( - WINDOWING_MODE_FREEFORM); - when(mStageCoordinator.isSplitActive()).thenReturn(true); - - WindowContainerTransaction wct = new WindowContainerTransaction(); - mStageCoordinator.prepareExitSplitScreen(STAGE_TYPE_MAIN, wct, EXIT_REASON_DRAG_DIVIDER); - - assertEquals(wct.getChanges().get(mMainChildTaskInfo.token.asBinder()).getWindowingMode(), - WINDOWING_MODE_FULLSCREEN); - } - - @Test - public void testDismiss_freeformDisplayToDesktop() { - mDisplayAreaInfo.configuration.windowConfiguration.setWindowingMode( - WINDOWING_MODE_FREEFORM); - when(mStageCoordinator.isSplitActive()).thenReturn(true); - - WindowContainerTransaction wct = new WindowContainerTransaction(); - mStageCoordinator.prepareExitSplitScreen(STAGE_TYPE_MAIN, wct, EXIT_REASON_DESKTOP_MODE); - - WindowContainerTransaction.Change c = - wct.getChanges().get(mMainChildTaskInfo.token.asBinder()); - assertFalse(c != null && c.getWindowingMode() == WINDOWING_MODE_FULLSCREEN); - } - - @Test - public void testDismiss_fullscreenDisplay() { - when(mStageCoordinator.isSplitActive()).thenReturn(true); - - WindowContainerTransaction wct = new WindowContainerTransaction(); - mStageCoordinator.prepareExitSplitScreen(STAGE_TYPE_MAIN, wct, EXIT_REASON_DRAG_DIVIDER); - - assertEquals(wct.getChanges().get(mMainChildTaskInfo.token.asBinder()).getWindowingMode(), - WINDOWING_MODE_UNDEFINED); - } - - @Test - public void testDismiss_fullscreenDisplayToDesktop() { - when(mStageCoordinator.isSplitActive()).thenReturn(true); - - WindowContainerTransaction wct = new WindowContainerTransaction(); - mStageCoordinator.prepareExitSplitScreen(STAGE_TYPE_MAIN, wct, EXIT_REASON_DESKTOP_MODE); - - WindowContainerTransaction.Change c = - wct.getChanges().get(mMainChildTaskInfo.token.asBinder()); - assertFalse(c != null && c.getWindowingMode() == WINDOWING_MODE_FULLSCREEN); - } - private Transitions createTestTransitions() { ShellInit shellInit = new ShellInit(mMainExecutor); final Transitions t = new Transitions(mContext, shellInit, mock(ShellController.class), - mTaskOrganizer, mTransactionPool, mock(DisplayController.class), - mDisplayInsetsController, mMainExecutor, mMainHandler, mAnimExecutor, - mock(HomeTransitionObserver.class), mock(FocusTransitionObserver.class)); + mTaskOrganizer, mTransactionPool, mock(DisplayController.class), mMainExecutor, + mMainHandler, mAnimExecutor, mock(HomeTransitionObserver.class)); shellInit.init(); return t; } - - private static class TestSplitSelectListener implements SplitScreen.SplitSelectListener { - private final boolean mAlwaysEnter; - - TestSplitSelectListener(boolean alwaysEnter) { - mAlwaysEnter = alwaysEnter; - } - - @Override - public boolean onRequestEnterSplitSelect(ActivityManager.RunningTaskInfo taskInfo, - int splitPosition, Rect taskBounds, boolean startRecents, - @Nullable WindowContainerTransaction withRecentsWct) { - return mAlwaysEnter; - } - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/StageTaskListenerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/StageTaskListenerTests.java index e181f4bf60..946a7ef7d8 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/StageTaskListenerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/splitscreen/StageTaskListenerTests.java @@ -19,19 +19,19 @@ package com.android.wm.shell.splitscreen; import static android.app.ActivityTaskManager.INVALID_TASK_ID; import static android.view.Display.DEFAULT_DISPLAY; -import static com.android.wm.shell.splitscreen.SplitScreen.STAGE_TYPE_UNDEFINED; - import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; +import static org.junit.Assume.assumeFalse; import static org.mockito.ArgumentMatchers.eq; -import static org.mockito.ArgumentMatchers.isNull; -import static org.mockito.Mockito.never; +import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import android.app.ActivityManager; +import android.os.SystemProperties; import android.view.SurfaceControl; +import android.view.SurfaceSession; import android.window.WindowContainerTransaction; import androidx.test.annotation.UiThreadTest; @@ -52,10 +52,7 @@ import org.mockito.ArgumentCaptor; import org.mockito.Captor; import org.mockito.Mock; import org.mockito.MockitoAnnotations; -import org.mockito.Spy; -import java.util.Arrays; -import java.util.List; import java.util.Optional; /** @@ -66,6 +63,8 @@ import java.util.Optional; @SmallTest @RunWith(AndroidJUnit4.class) public final class StageTaskListenerTests extends ShellTestCase { + private static final boolean ENABLE_SHELL_TRANSITIONS = + SystemProperties.getBoolean("persist.wm.debug.shell_transit", true); @Mock private ShellTaskOrganizer mTaskOrganizer; @@ -77,10 +76,9 @@ public final class StageTaskListenerTests extends ShellTestCase { private IconProvider mIconProvider; @Mock private WindowDecorViewModel mWindowDecorViewModel; - @Spy - private WindowContainerTransaction mWct; @Captor private ArgumentCaptor<SyncTransactionQueue.TransactionRunnable> mRunnableCaptor; + private SurfaceSession mSurfaceSession = new SurfaceSession(); private SurfaceControl mSurfaceControl; private ActivityManager.RunningTaskInfo mRootTask; private StageTaskListener mStageTaskListener; @@ -95,12 +93,12 @@ public final class StageTaskListenerTests extends ShellTestCase { DEFAULT_DISPLAY, mCallbacks, mSyncQueue, + mSurfaceSession, mIconProvider, - Optional.of(mWindowDecorViewModel), - STAGE_TYPE_UNDEFINED); + Optional.of(mWindowDecorViewModel)); mRootTask = new TestRunningTaskInfoBuilder().build(); mRootTask.parentTaskId = INVALID_TASK_ID; - mSurfaceControl = new SurfaceControl.Builder().setName("test").build(); + mSurfaceControl = new SurfaceControl.Builder(mSurfaceSession).setName("test").build(); mStageTaskListener.onTaskAppeared(mRootTask, mSurfaceControl); } @@ -117,20 +115,21 @@ public final class StageTaskListenerTests extends ShellTestCase { @Test public void testRootTaskAppeared() { assertThat(mStageTaskListener.mRootTaskInfo.taskId).isEqualTo(mRootTask.taskId); - verify(mCallbacks).onRootTaskAppeared(mRootTask); - verify(mCallbacks, never()).onStageVisibilityChanged(mStageTaskListener); + verify(mCallbacks).onRootTaskAppeared(); + verify(mCallbacks).onStatusChanged(eq(mRootTask.isVisible), eq(false)); } @Test - public void testRootTaskVisible() { - mStageTaskListener.onTaskVanished(mRootTask); - mRootTask = new TestRunningTaskInfoBuilder().setVisible(true).build(); - mRootTask.parentTaskId = INVALID_TASK_ID; - mSurfaceControl = new SurfaceControl.Builder().setName("test").build(); - mStageTaskListener.onTaskAppeared(mRootTask, mSurfaceControl); + public void testChildTaskAppeared() { + // With shell transitions, the transition manages status changes, so skip this test. + assumeFalse(ENABLE_SHELL_TRANSITIONS); + final ActivityManager.RunningTaskInfo childTask = + new TestRunningTaskInfoBuilder().setParentTaskId(mRootTask.taskId).build(); - verify(mCallbacks).onStageVisibilityChanged(mStageTaskListener); + mStageTaskListener.onTaskAppeared(childTask, mSurfaceControl); + assertThat(mStageTaskListener.mChildrenTaskInfo.contains(childTask.taskId)).isTrue(); + verify(mCallbacks).onStatusChanged(eq(mRootTask.isVisible), eq(true)); } @Test(expected = IllegalArgumentException.class) @@ -139,6 +138,22 @@ public final class StageTaskListenerTests extends ShellTestCase { mStageTaskListener.onTaskVanished(task); } + @Test + public void testTaskVanished() { + // With shell transitions, the transition manages status changes, so skip this test. + assumeFalse(ENABLE_SHELL_TRANSITIONS); + final ActivityManager.RunningTaskInfo childTask = + new TestRunningTaskInfoBuilder().setParentTaskId(mRootTask.taskId).build(); + mStageTaskListener.mRootTaskInfo = mRootTask; + mStageTaskListener.mChildrenTaskInfo.put(childTask.taskId, childTask); + + mStageTaskListener.onTaskVanished(childTask); + verify(mCallbacks, times(2)).onStatusChanged(eq(mRootTask.isVisible), eq(false)); + + mStageTaskListener.onTaskVanished(mRootTask); + verify(mCallbacks).onRootTaskVanished(); + } + @Test public void testTaskInfoChanged_notSupportsMultiWindow() { final ActivityManager.RunningTaskInfo childTask = @@ -146,7 +161,7 @@ public final class StageTaskListenerTests extends ShellTestCase { childTask.supportsMultiWindow = false; mStageTaskListener.onTaskInfoChanged(childTask); - verify(mCallbacks).onNoLongerSupportMultiWindow(mStageTaskListener, childTask); + verify(mCallbacks).onNoLongerSupportMultiWindow(childTask); } @Test @@ -162,87 +177,4 @@ public final class StageTaskListenerTests extends ShellTestCase { mStageTaskListener.evictAllChildren(wct); assertFalse(wct.isEmpty()); } - - @Test - public void testAddTask() { - final ActivityManager.RunningTaskInfo task = new TestRunningTaskInfoBuilder().build(); - mStageTaskListener.addTask(task, mWct); - - verify(mWct).reparent(eq(task.token), eq(mRootTask.token), eq(true)); - } - - @Test - public void testRemoveTask() { - final ActivityManager.RunningTaskInfo task = new TestRunningTaskInfoBuilder().build(); - assertThat(mStageTaskListener.removeTask(task.taskId, null, mWct)).isFalse(); - - mStageTaskListener.mChildrenTaskInfo.put(task.taskId, task); - assertThat(mStageTaskListener.removeTask(task.taskId, null, mWct)).isTrue(); - verify(mWct).reparent(eq(task.token), isNull(), eq(false)); - } - - @Test - public void testActiveDeactivate() { - mStageTaskListener.activate(mWct, true /* reparent */); - assertThat(mStageTaskListener.isActive()).isTrue(); - - mStageTaskListener.deactivate(mWct); - assertThat(mStageTaskListener.isActive()).isFalse(); - } - - @Test - public void testGetAllVisibleChildTaskIds() { - final ActivityManager.RunningTaskInfo taskVisible1 = - new TestRunningTaskInfoBuilder() - .setTaskId(1) - .setVisible(true) - .setVisibleRequested(true) - .build(); - final ActivityManager.RunningTaskInfo taskInvisible2 = - new TestRunningTaskInfoBuilder() - .setTaskId(2) - .setVisible(false) - .build(); - final ActivityManager.RunningTaskInfo taskVisible3 = - new TestRunningTaskInfoBuilder() - .setTaskId(3) - .setVisible(true) - .setVisibleRequested(true) - .build(); - final ActivityManager.RunningTaskInfo taskVisible4 = - new TestRunningTaskInfoBuilder() - .setTaskId(4) - .setVisible(true) - .setVisibleRequested(true) - .build(); - final ActivityManager.RunningTaskInfo taskInvisible5 = - new TestRunningTaskInfoBuilder() - .setTaskId(5) - .setVisible(false) - .build(); - final List<Integer> visibleTaskIds = Arrays.asList(taskVisible1.taskId, taskVisible3.taskId, - taskVisible4.taskId); - - mStageTaskListener.mChildrenTaskInfo.clear(); - assertThat(mStageTaskListener.mChildrenTaskInfo.size() == 0).isTrue(); - - mStageTaskListener.mChildrenTaskInfo.put(taskVisible1.taskId, taskVisible1); - mStageTaskListener.mChildrenTaskInfo.put(taskInvisible2.taskId, taskInvisible2); - mStageTaskListener.mChildrenTaskInfo.put(taskVisible3.taskId, taskVisible3); - mStageTaskListener.mChildrenTaskInfo.put(taskVisible4.taskId, taskVisible4); - mStageTaskListener.mChildrenTaskInfo.put(taskInvisible5.taskId, taskInvisible5); - - final List<Integer> ids = mStageTaskListener.getAllVisibleChildTaskIds(); - assertThat(ids.size() == 3).isTrue(); - assertTrue("List should contain all visible taskIds", - ids.containsAll(visibleTaskIds)); - assertFalse("List should not contain invisible taskId2", - ids.contains(taskInvisible2.taskId)); - assertFalse("List should not contain invisible taskId5", - ids.contains(taskInvisible5.taskId)); - - // Clear the mChildrenTaskInfo. - mStageTaskListener.mChildrenTaskInfo.clear(); - assertThat(mStageTaskListener.mChildrenTaskInfo.size() == 0).isTrue(); - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawerTests.java index 03f2351b9c..ee9f886633 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawerTests.java @@ -30,6 +30,7 @@ import static com.android.wm.shell.startingsurface.SplashscreenContentDrawer.MIN import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.times; @@ -55,10 +56,12 @@ import android.os.IBinder; import android.os.Looper; import android.os.UserHandle; import android.testing.TestableContext; +import android.view.IWindowSession; +import android.view.InsetsState; import android.view.Surface; import android.view.WindowManager; +import android.view.WindowManagerGlobal; import android.view.WindowMetrics; -import android.window.SnapshotDrawerUtils; import android.window.StartingWindowInfo; import android.window.StartingWindowRemovalInfo; import android.window.TaskSnapshot; @@ -71,7 +74,7 @@ import com.android.launcher3.icons.IconProvider; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.common.HandlerExecutor; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.TransactionPool; +import com.android.wm.shell.common.TransactionPool; import org.junit.Before; import org.junit.Test; @@ -217,10 +220,18 @@ public class StartingSurfaceDrawerTests extends ShellTestCase { createWindowInfo(taskId, android.R.style.Theme, mBinder); TaskSnapshot snapshot = createTaskSnapshot(100, 100, new Point(100, 100), new Rect(0, 0, 0, 50), true /* hasImeSurface */); - final TaskSnapshotWindow mockSnapshotWindow = new TaskSnapshotWindow( - snapshot, SnapshotDrawerUtils.getOrCreateTaskDescription(windowInfo.taskInfo), - snapshot.getOrientation(), - () -> {}, mTestExecutor); + final IWindowSession session = WindowManagerGlobal.getWindowSession(); + spyOn(session); + doReturn(WindowManagerGlobal.ADD_OKAY).when(session).addToDisplay( + any() /* window */, any() /* attrs */, + anyInt() /* viewVisibility */, anyInt() /* displayId */, + anyInt() /* requestedVisibleTypes */, any() /* outInputChannel */, + any() /* outInsetsState */, any() /* outActiveControls */, + any() /* outAttachedFrame */, any() /* outSizeCompatScale */); + TaskSnapshotWindow mockSnapshotWindow = TaskSnapshotWindow.create(windowInfo, + mBinder, + snapshot, mTestExecutor, () -> { + }); spyOn(mockSnapshotWindow); try (AutoCloseable mockTaskSnapshotSession = new AutoCloseable() { MockitoSession mockSession = mockitoSession() @@ -234,12 +245,12 @@ public class StartingSurfaceDrawerTests extends ShellTestCase { }) { when(TaskSnapshotWindow.create(eq(windowInfo), eq(mBinder), eq(snapshot), any(), any())).thenReturn(mockSnapshotWindow); - // Simulate a task snapshot window created with hasImeSurface. + // Simulate a task snapshot window created with IME snapshot shown. mStartingSurfaceDrawer.makeTaskSnapshotWindow(windowInfo, snapshot); waitHandlerIdle(mTestHandler); - // Verify the task snapshot with hasImeSurface will be removed when receiving the - // callback that the real IME was drawn. + // Verify the task snapshot with IME snapshot will be removed when received the real IME + // drawn callback. // makeTaskSnapshotWindow shall call removeWindowSynced before there add a new // StartingWindowRecord for the task. mStartingSurfaceDrawer.onImeDrawnOnTask(1); @@ -337,7 +348,9 @@ public class StartingSurfaceDrawerTests extends ShellTestCase { windowInfo.appToken = appToken; windowInfo.targetActivityInfo = info; windowInfo.taskInfo = taskInfo; + windowInfo.topOpaqueWindowInsetsState = new InsetsState(); windowInfo.mainWindowLayoutParams = new WindowManager.LayoutParams(); + windowInfo.topOpaqueWindowLayoutParams = new WindowManager.LayoutParams(); return windowInfo; } @@ -357,6 +370,6 @@ public class StartingSurfaceDrawerTests extends ShellTestCase { Surface.ROTATION_0, taskSize, contentInsets, new Rect() /* letterboxInsets */, false, true /* isRealSnapshot */, WINDOWING_MODE_FULLSCREEN, 0 /* systemUiVisibility */, false /* isTranslucent */, - hasImeSurface /* hasImeSurface */, 0 /* uiMode */); + hasImeSurface /* hasImeSurface */); } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/startingsurface/StartingWindowControllerTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/startingsurface/StartingWindowControllerTests.java index aa7fb2f8e7..ff76a2f135 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/startingsurface/StartingWindowControllerTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/startingsurface/StartingWindowControllerTests.java @@ -16,9 +16,6 @@ package com.android.wm.shell.startingsurface; -import static android.view.WindowManager.TRANSIT_OPEN; -import static android.window.TransitionInfo.FLAG_IS_BEHIND_STARTING_WINDOW; - import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; @@ -33,32 +30,23 @@ import static org.mockito.Mockito.verify; import android.content.Context; import android.hardware.display.DisplayManager; -import android.os.Binder; import android.os.Bundle; -import android.os.IBinder; -import android.os.UserManager; -import android.platform.test.annotations.EnableFlags; import android.view.Display; -import android.window.StartingWindowRemovalInfo; -import android.window.TransitionInfo; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import com.android.internal.util.function.TriConsumer; import com.android.launcher3.icons.IconProvider; -import com.android.server.testutils.StubTransaction; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.TestShellExecutor; import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.TransactionPool; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.sysui.ShellCommandHandler; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; -import com.android.wm.shell.transition.TransitionInfoBuilder; -import com.android.wm.shell.transition.Transitions; +import com.android.wm.shell.sysui.ShellSharedConstants; import org.junit.Before; import org.junit.Test; @@ -81,16 +69,13 @@ public class StartingWindowControllerTests extends ShellTestCase { private @Mock DisplayInsetsController mDisplayInsetsController; private @Mock ShellCommandHandler mShellCommandHandler; private @Mock ShellTaskOrganizer mTaskOrganizer; - private @Mock ShellExecutor mSplashScreenExecutor; + private @Mock ShellExecutor mMainExecutor; private @Mock StartingWindowTypeAlgorithm mTypeAlgorithm; private @Mock IconProvider mIconProvider; private @Mock TransactionPool mTransactionPool; - private @Mock UserManager mUserManager; - private @Mock Transitions mTransitions; private StartingWindowController mController; private ShellInit mShellInit; private ShellController mShellController; - private TestShellExecutor mMainExecutor; @Before public void setUp() { @@ -98,13 +83,11 @@ public class StartingWindowControllerTests extends ShellTestCase { doReturn(mock(Display.class)).when(mDisplayManager).getDisplay(anyInt()); doReturn(mDisplayManager).when(mContext).getSystemService(eq(DisplayManager.class)); doReturn(super.mContext.getResources()).when(mContext).getResources(); - mShellInit = spy(new ShellInit(mSplashScreenExecutor)); + mShellInit = spy(new ShellInit(mMainExecutor)); mShellController = spy(new ShellController(mContext, mShellInit, mShellCommandHandler, - mDisplayInsetsController, mUserManager, mSplashScreenExecutor)); - mMainExecutor = new TestShellExecutor(); + mDisplayInsetsController, mMainExecutor)); mController = new StartingWindowController(mContext, mShellInit, mShellController, - mTaskOrganizer, mSplashScreenExecutor, mTypeAlgorithm, mIconProvider, - mTransactionPool, mMainExecutor, mTransitions); + mTaskOrganizer, mMainExecutor, mTypeAlgorithm, mIconProvider, mTransactionPool); mShellInit.init(); } @@ -116,7 +99,7 @@ public class StartingWindowControllerTests extends ShellTestCase { @Test public void instantiateController_addExternalInterface() { verify(mShellController, times(1)).addExternalInterface( - eq(IStartingWindow.DESCRIPTOR), any(), any()); + eq(ShellSharedConstants.KEY_EXTRA_SHELL_STARTING_WINDOW), any(), any()); } @Test @@ -132,64 +115,4 @@ public class StartingWindowControllerTests extends ShellTestCase { mShellController.createExternalInterfaces(new Bundle()); assertFalse(mController.hasStartingWindowListener()); } - - @Test - @EnableFlags(com.android.window.flags.Flags.FLAG_REMOVE_STARTING_IN_TRANSITION) - public void testRemoveStartingInShell() { - final int taskId = 1; - final IBinder token = new Binder(); - final IBinder appToken = new Binder(); - final TransitionInfo info = new TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN).build(); - final StartingWindowRemovalInfo removalInfo = new StartingWindowRemovalInfo(); - removalInfo.taskId = taskId; - final StubTransaction st = new StubTransaction(); - final StartingWindowController.RemoveStartingObserver observer = - mController.mRemoveStartingObserver; - - observer.onAddingWindow(taskId, token, appToken); - observer.onTransitionReady(token, info, st, st); - notifyTransactionCommitted(st); - assertTrue(observer.hasPendingRemoval()); - observer.requestRemoval(taskId, removalInfo); - assertFalse(observer.hasPendingRemoval()); - - st.clear(); - observer.onAddingWindow(taskId, token, appToken); - observer.requestRemoval(taskId, removalInfo); - observer.onTransitionReady(token, info, st, st); - assertTrue(observer.hasPendingRemoval()); - notifyTransactionCommitted(st); - assertFalse(observer.hasPendingRemoval()); - - // Received second transition with FLAG_IS_BEHIND_STARTING_WINDOW - // simulate transfer starting window. - st.clear(); - final IBinder secondToken = new Binder(); - final TransitionInfo secondInfo = new TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN, FLAG_IS_BEHIND_STARTING_WINDOW).build(); - observer.onAddingWindow(taskId, token, appToken); - observer.onTransitionReady(token, info, st, st); - notifyTransactionCommitted(st); - observer.onTransitionReady(secondToken, secondInfo, st, st); - notifyTransactionCommitted(st); - assertTrue(observer.hasPendingRemoval()); - observer.requestRemoval(taskId, removalInfo); - assertFalse(observer.hasPendingRemoval()); - - st.clear(); - observer.onAddingWindow(taskId, token, appToken); - observer.onTransitionReady(token, info, st, st); - notifyTransactionCommitted(st); - observer.onTransitionReady(secondToken, secondInfo, st, st); - observer.requestRemoval(taskId, removalInfo); - assertTrue(observer.hasPendingRemoval()); - notifyTransactionCommitted(st); - assertFalse(observer.hasPendingRemoval()); - } - - private void notifyTransactionCommitted(StubTransaction st) { - st.apply(); - mMainExecutor.flushAll(); - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/sysui/ShellControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/sysui/ShellControllerTest.java index c88f0cfa5f..6292018ba3 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/sysui/ShellControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/sysui/ShellControllerTest.java @@ -16,13 +16,10 @@ package com.android.wm.shell.sysui; -import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertThrows; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.when; -import android.app.ActivityManager; import android.content.Context; import android.content.pm.UserInfo; import android.content.res.Configuration; @@ -30,9 +27,6 @@ import android.graphics.Rect; import android.os.Binder; import android.os.Bundle; import android.os.IBinder; -import android.os.UserManager; -import android.platform.test.annotations.DisableFlags; -import android.platform.test.annotations.EnableFlags; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; @@ -40,7 +34,6 @@ import androidx.annotation.NonNull; import androidx.test.filters.SmallTest; import androidx.test.platform.app.InstrumentationRegistry; -import com.android.wm.shell.Flags; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestShellExecutor; import com.android.wm.shell.common.DisplayInsetsController; @@ -63,21 +56,17 @@ import java.util.Locale; public class ShellControllerTest extends ShellTestCase { private static final int TEST_USER_ID = 100; - private static final int TEST_SECOND_USER_ID = 101; private static final String EXTRA_TEST_BINDER = "test_binder"; + @Mock + private ShellInit mShellInit; @Mock private ShellCommandHandler mShellCommandHandler; @Mock private Context mTestUserContext; @Mock - private Context mTestSecondUserContext; - @Mock private DisplayInsetsController mDisplayInsetsController; - @Mock - private UserManager mUserManager; - private ShellInit mShellInit; private TestShellExecutor mExecutor; private ShellController mController; private TestConfigurationChangeListener mConfigChangeListener; @@ -89,16 +78,13 @@ public class ShellControllerTest extends ShellTestCase { @Before public void setUp() { MockitoAnnotations.initMocks(this); - when(mTestUserContext.getUserId()).thenReturn(TEST_USER_ID); - when(mTestSecondUserContext.getUserId()).thenReturn(TEST_SECOND_USER_ID); mKeyguardChangeListener = new TestKeyguardChangeListener(); mConfigChangeListener = new TestConfigurationChangeListener(); mUserChangeListener = new TestUserChangeListener(); mDisplayImeChangeListener = new TestDisplayImeChangeListener(); mExecutor = new TestShellExecutor(); - mShellInit = new ShellInit(mExecutor); mController = new ShellController(mContext, mShellInit, mShellCommandHandler, - mDisplayInsetsController, mUserManager, mExecutor); + mDisplayInsetsController, mExecutor); mController.onConfigurationChanged(getConfigurationCopy()); } @@ -107,24 +93,6 @@ public class ShellControllerTest extends ShellTestCase { // Do nothing } - @Test - @EnableFlags(Flags.FLAG_FIX_MISSING_USER_CHANGE_CALLBACKS) - public void testOnInit_updatesCurrentUser() { - mController.onUserChanged(TEST_SECOND_USER_ID, mTestSecondUserContext); - final List<UserInfo> profiles = new ArrayList<>(); - profiles.add(mock(UserInfo.class)); - mController.onUserProfilesChanged(profiles); - - final int newUserId = ActivityManager.getCurrentUser(); - final List<UserInfo> newProfiles = new ArrayList<>(); - newProfiles.add(mock(UserInfo.class)); - when(mUserManager.getProfiles(newUserId)).thenReturn(newProfiles); - mShellInit.init(); - - assertEquals(mController.getCurrentUserId(), newUserId); - assertEquals(mController.getCurrentUserProfiles(), newProfiles); - } - @Test public void testAddExternalInterface_ensureCallback() { Binder callback = new Binder(); @@ -207,7 +175,6 @@ public class ShellControllerTest extends ShellTestCase { } @Test - @DisableFlags(Flags.FLAG_FIX_MISSING_USER_CHANGE_CALLBACKS) public void testAddUserChangeListener_ensureCallback() { mController.addUserChangeListener(mUserChangeListener); @@ -216,32 +183,10 @@ public class ShellControllerTest extends ShellTestCase { assertTrue(mUserChangeListener.lastUserContext == mTestUserContext); } - @Test - @EnableFlags(Flags.FLAG_FIX_MISSING_USER_CHANGE_CALLBACKS) - public void testAddUserChangeListener_changed_ensureCallback() { - mController.addUserChangeListener(mUserChangeListener); - - mController.onUserChanged(TEST_SECOND_USER_ID, mTestSecondUserContext); - - assertTrue(mUserChangeListener.lastUserId == TEST_SECOND_USER_ID); - assertTrue(mUserChangeListener.lastUserContext == mTestSecondUserContext); - } - - @Test - @EnableFlags(Flags.FLAG_FIX_MISSING_USER_CHANGE_CALLBACKS) - public void testAddUserChangeListener_ensureCallbacksWithCurrentUser() { - mController.addUserChangeListener(mUserChangeListener); - - assertTrue(mUserChangeListener.userChanged == 1); - assertTrue(mUserChangeListener.lastUserContext != null); - assertTrue(mUserChangeListener.userProfilesChanged == 1); - } - @Test public void testDoubleAddUserChangeListener_ensureSingleCallback() { mController.addUserChangeListener(mUserChangeListener); mController.addUserChangeListener(mUserChangeListener); - mUserChangeListener.reset(); mController.onUserChanged(TEST_USER_ID, mTestUserContext); assertTrue(mUserChangeListener.userChanged == 1); @@ -252,25 +197,12 @@ public class ShellControllerTest extends ShellTestCase { public void testAddRemoveUserChangeListener_ensureNoCallback() { mController.addUserChangeListener(mUserChangeListener); mController.removeUserChangeListener(mUserChangeListener); - mUserChangeListener.reset(); mController.onUserChanged(TEST_USER_ID, mTestUserContext); assertTrue(mUserChangeListener.userChanged == 0); assertTrue(mUserChangeListener.lastUserContext == null); } - @Test - @EnableFlags(Flags.FLAG_FIX_MISSING_USER_CHANGE_CALLBACKS) - public void testUserChanged_noChange_ensureNoCallback() { - mController.addUserChangeListener(mUserChangeListener); - mController.onUserChanged(TEST_SECOND_USER_ID, mTestSecondUserContext); - mUserChangeListener.reset(); - - mController.onUserChanged(TEST_SECOND_USER_ID, mTestSecondUserContext); - - assertTrue(mUserChangeListener.userChanged == 0); - } - @Test public void testUserProfilesChanged() { mController.addUserChangeListener(mUserChangeListener); @@ -282,21 +214,6 @@ public class ShellControllerTest extends ShellTestCase { assertTrue(mUserChangeListener.lastUserProfiles.equals(profiles)); } - @Test - @EnableFlags(Flags.FLAG_FIX_MISSING_USER_CHANGE_CALLBACKS) - public void testUserProfilesChanged_noChange_ensureNoCallback() { - ArrayList<UserInfo> profiles = new ArrayList<>(); - profiles.add(mock(UserInfo.class)); - profiles.add(mock(UserInfo.class)); - mController.addUserChangeListener(mUserChangeListener); - mController.onUserProfilesChanged(profiles); - mUserChangeListener.reset(); - - mController.onUserProfilesChanged(profiles); - - assertTrue(mUserChangeListener.lastUserProfiles == null); - } - @Test public void testAddKeyguardChangeListener_ensureCallback() { mController.addKeyguardChangeListener(mKeyguardChangeListener); @@ -584,14 +501,6 @@ public class ShellControllerTest extends ShellTestCase { userProfilesChanged++; lastUserProfiles = profiles; } - - void reset() { - userChanged = 0; - lastUserId = 0; - lastUserContext = null; - userProfilesChanged = 0; - lastUserProfiles = null; - } } private static class TestDisplayImeChangeListener implements DisplayImeChangeListener { diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/taskview/TaskViewTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/taskview/TaskViewTest.java index 309af8586f..0434742c57 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/taskview/TaskViewTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/taskview/TaskViewTest.java @@ -16,22 +16,17 @@ package com.android.wm.shell.taskview; -import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; import static com.google.common.truth.Truth.assertThat; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; +import static org.junit.Assume.assumeFalse; +import static org.junit.Assume.assumeTrue; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.eq; -import static org.mockito.ArgumentMatchers.same; import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; @@ -50,54 +45,38 @@ import android.graphics.Insets; import android.graphics.Rect; import android.graphics.Region; import android.os.Looper; -import android.platform.test.flag.junit.FlagsParameterization; +import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; import android.view.SurfaceControl; import android.view.SurfaceHolder; +import android.view.SurfaceSession; import android.view.ViewTreeObserver; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import androidx.test.filters.SmallTest; -import com.android.wm.shell.Flags; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestHandler; import com.android.wm.shell.common.HandlerExecutor; import com.android.wm.shell.common.SyncTransactionQueue; import com.android.wm.shell.common.SyncTransactionQueue.TransactionRunnable; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; import com.android.wm.shell.transition.Transitions; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; -import org.mockito.ArgumentCaptor; -import org.mockito.Captor; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.mockito.invocation.InvocationOnMock; -import platform.test.runner.parameterized.ParameterizedAndroidJunit4; -import platform.test.runner.parameterized.Parameters; - -import java.util.List; - @SmallTest -@RunWith(ParameterizedAndroidJunit4.class) +@RunWith(AndroidTestingRunner.class) @TestableLooper.RunWithLooper(setAsMainLooper = true) public class TaskViewTest extends ShellTestCase { - @Parameters(name = "{0}") - public static List<FlagsParameterization> getParams() { - return FlagsParameterization.allCombinationsOf( - Flags.FLAG_TASK_VIEW_REPOSITORY, - Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE - ); - } - @Mock TaskView.Listener mViewListener; @Mock @@ -106,8 +85,6 @@ public class TaskViewTest extends ShellTestCase { WindowContainerToken mToken; @Mock ShellTaskOrganizer mOrganizer; - @Captor - ArgumentCaptor<WindowContainerTransaction> mWctCaptor; @Mock HandlerExecutor mExecutor; @Mock @@ -118,20 +95,18 @@ public class TaskViewTest extends ShellTestCase { Looper mViewLooper; TestHandler mViewHandler; + SurfaceSession mSession; SurfaceControl mLeash; Context mContext; TaskView mTaskView; - TaskViewRepository mTaskViewRepository; TaskViewTransitions mTaskViewTransitions; TaskViewTaskController mTaskViewTaskController; - public TaskViewTest(FlagsParameterization flags) {} - @Before public void setUp() { MockitoAnnotations.initMocks(this); - mLeash = new SurfaceControl.Builder() + mLeash = new SurfaceControl.Builder(mSession) .setName("test") .build(); @@ -158,12 +133,13 @@ public class TaskViewTest extends ShellTestCase { return null; }).when(mSyncQueue).runInSync(any()); - mTaskViewRepository = new TaskViewRepository(); - mTaskViewTransitions = spy(new TaskViewTransitions(mTransitions, mTaskViewRepository, - mOrganizer, mSyncQueue)); - mTaskViewTaskController = new TaskViewTaskController(mContext, mOrganizer, - mTaskViewTransitions, mSyncQueue); - mTaskView = new TaskView(mContext, mTaskViewTransitions, mTaskViewTaskController); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + doReturn(true).when(mTransitions).isRegistered(); + } + mTaskViewTransitions = spy(new TaskViewTransitions(mTransitions)); + mTaskViewTaskController = spy(new TaskViewTaskController(mContext, mOrganizer, + mTaskViewTransitions, mSyncQueue)); + mTaskView = new TaskView(mContext, mTaskViewTaskController); mTaskView.setHandler(mViewHandler); mTaskView.setListener(mExecutor, mViewListener); } @@ -177,7 +153,7 @@ public class TaskViewTest extends ShellTestCase { @Test public void testSetPendingListener_throwsException() { - TaskView taskView = new TaskView(mContext, mTaskViewTransitions, + TaskView taskView = new TaskView(mContext, new TaskViewTaskController(mContext, mOrganizer, mTaskViewTransitions, mSyncQueue)); taskView.setListener(mExecutor, mViewListener); try { @@ -199,10 +175,139 @@ public class TaskViewTest extends ShellTestCase { assertThat(options.getLaunchWindowingMode()).isEqualTo(WINDOWING_MODE_MULTI_WINDOW); } + @Test + public void testOnTaskAppeared_noSurface_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); + + verify(mViewListener).onTaskCreated(eq(mTaskInfo.taskId), any()); + verify(mViewListener, never()).onInitialized(); + // If there's no surface the task should be made invisible + verify(mViewListener).onTaskVisibilityChanged(eq(mTaskInfo.taskId), eq(false)); + } + + @Test + public void testOnTaskAppeared_withSurface_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskView.surfaceCreated(mock(SurfaceHolder.class)); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); + + verify(mViewListener).onTaskCreated(eq(mTaskInfo.taskId), any()); + assertThat(mTaskView.isInitialized()).isTrue(); + verify(mViewListener, never()).onTaskVisibilityChanged(anyInt(), anyBoolean()); + } + + @Test + public void testSurfaceCreated_noTask_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskView.surfaceCreated(mock(SurfaceHolder.class)); + + verify(mViewListener).onInitialized(); + assertThat(mTaskView.isInitialized()).isTrue(); + // No task, no visibility change + verify(mViewListener, never()).onTaskVisibilityChanged(anyInt(), anyBoolean()); + } + + @Test + public void testSurfaceCreated_withTask_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); + mTaskView.surfaceCreated(mock(SurfaceHolder.class)); + + verify(mViewListener).onInitialized(); + assertThat(mTaskView.isInitialized()).isTrue(); + verify(mViewListener).onTaskVisibilityChanged(eq(mTaskInfo.taskId), eq(true)); + } + + @Test + public void testSurfaceDestroyed_noTask_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + SurfaceHolder sh = mock(SurfaceHolder.class); + mTaskView.surfaceCreated(sh); + mTaskView.surfaceDestroyed(sh); + + verify(mViewListener, never()).onTaskVisibilityChanged(anyInt(), anyBoolean()); + } + + @Test + public void testSurfaceDestroyed_withTask_shouldNotHideTask_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTaskController.setHideTaskWithSurface(false); + + SurfaceHolder sh = mock(SurfaceHolder.class); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); + mTaskView.surfaceCreated(sh); + reset(mViewListener); + mTaskView.surfaceDestroyed(sh); + + verify(mViewListener, never()).onTaskVisibilityChanged(anyInt(), anyBoolean()); + } + + @Test + public void testSurfaceDestroyed_withTask_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + SurfaceHolder sh = mock(SurfaceHolder.class); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); + mTaskView.surfaceCreated(sh); + reset(mViewListener); + mTaskView.surfaceDestroyed(sh); + + verify(mViewListener).onTaskVisibilityChanged(eq(mTaskInfo.taskId), eq(false)); + } + + @Test + public void testOnReleased_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); + mTaskView.surfaceCreated(mock(SurfaceHolder.class)); + mTaskView.release(); + + verify(mOrganizer).removeListener(eq(mTaskViewTaskController)); + verify(mViewListener).onReleased(); + assertThat(mTaskView.isInitialized()).isFalse(); + } + + @Test + public void testOnTaskVanished_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); + mTaskView.surfaceCreated(mock(SurfaceHolder.class)); + mTaskViewTaskController.onTaskVanished(mTaskInfo); + + verify(mViewListener).onTaskRemovalStarted(eq(mTaskInfo.taskId)); + } + + @Test + public void testOnBackPressedOnTaskRoot_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); + mTaskViewTaskController.onBackPressedOnTaskRoot(mTaskInfo); + + verify(mViewListener).onBackPressedOnTaskRoot(eq(mTaskInfo.taskId)); + } + + @Test + public void testSetOnBackPressedOnTaskRoot_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); + verify(mOrganizer).setInterceptBackPressedOnTaskRoot(eq(mTaskInfo.token), eq(true)); + } + + @Test + public void testUnsetOnBackPressedOnTaskRoot_legacyTransitions() { + assumeFalse(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); + verify(mOrganizer).setInterceptBackPressedOnTaskRoot(eq(mTaskInfo.token), eq(true)); + + mTaskViewTaskController.onTaskVanished(mTaskInfo); + verify(mOrganizer).setInterceptBackPressedOnTaskRoot(eq(mTaskInfo.token), eq(false)); + } + @Test public void testOnNewTask_noSurface() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); @@ -215,6 +320,7 @@ public class TaskViewTest extends ShellTestCase { @Test public void testSurfaceCreated_noTask() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); mTaskView.surfaceCreated(mock(SurfaceHolder.class)); verify(mTaskViewTransitions, never()).setTaskViewVisible(any(), anyBoolean()); @@ -226,9 +332,10 @@ public class TaskViewTest extends ShellTestCase { @Test public void testOnNewTask_withSurface() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); mTaskView.surfaceCreated(mock(SurfaceHolder.class)); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); @@ -238,8 +345,9 @@ public class TaskViewTest extends ShellTestCase { @Test public void testSurfaceCreated_withTask() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); mTaskView.surfaceCreated(mock(SurfaceHolder.class)); @@ -247,7 +355,7 @@ public class TaskViewTest extends ShellTestCase { verify(mViewListener).onInitialized(); verify(mTaskViewTransitions).setTaskViewVisible(eq(mTaskViewTaskController), eq(true)); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, false /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(false /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); @@ -256,6 +364,7 @@ public class TaskViewTest extends ShellTestCase { @Test public void testSurfaceDestroyed_noTask() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); SurfaceHolder sh = mock(SurfaceHolder.class); mTaskView.surfaceCreated(sh); mTaskView.surfaceDestroyed(sh); @@ -265,9 +374,10 @@ public class TaskViewTest extends ShellTestCase { @Test public void testSurfaceDestroyed_withTask() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); SurfaceHolder sh = mock(SurfaceHolder.class); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); mTaskView.surfaceCreated(sh); @@ -283,8 +393,9 @@ public class TaskViewTest extends ShellTestCase { @Test public void testOnReleased() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); mTaskView.surfaceCreated(mock(SurfaceHolder.class)); @@ -293,71 +404,27 @@ public class TaskViewTest extends ShellTestCase { verify(mOrganizer).removeListener(eq(mTaskViewTaskController)); verify(mViewListener).onReleased(); assertThat(mTaskView.isInitialized()).isFalse(); - verify(mTaskViewTransitions).unregisterTaskView(eq(mTaskViewTaskController)); + verify(mTaskViewTransitions).removeTaskView(eq(mTaskViewTaskController)); } @Test public void testOnTaskVanished() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); - final SurfaceControl taskLeash = mTaskViewTaskController.getTaskLeash(); mTaskView.surfaceCreated(mock(SurfaceHolder.class)); mTaskViewTaskController.prepareCloseAnimation(); verify(mViewListener).onTaskRemovalStarted(eq(mTaskInfo.taskId)); - assertThat(mTaskViewTaskController.getTaskLeash()).isNull(); - assertThat(taskLeash.isValid()).isFalse(); - } - - @Test - public void testOnTaskVanished_withTaskInfoUpdate_notifiesTaskRemoval() { - // Capture task info when onTaskRemovalStarted is triggered on the task view listener. - final ActivityManager.RunningTaskInfo[] capturedTaskInfo = - new ActivityManager.RunningTaskInfo[1]; - final int taskId = mTaskInfo.taskId; - doAnswer(invocation -> { - capturedTaskInfo[0] = mTaskView.getTaskInfo(); - return null; - }).when(mViewListener).onTaskRemovalStarted(taskId); - - // Set up a mock TaskViewBase to verify notified task info. - final TaskViewBase mockTaskViewBase = mock(TaskViewBase.class); - mTaskViewTaskController.setTaskViewBase(mockTaskViewBase); - - // Prepare and trigger task opening animation with mTaskInfo. - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, - new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, - mLeash, new WindowContainerTransaction()); - mTaskView.surfaceCreated(mock(SurfaceHolder.class)); - - // Simulate task info change with windowing mode update. - final ActivityManager.RunningTaskInfo newTaskInfo = new ActivityManager.RunningTaskInfo(); - newTaskInfo.token = mTaskInfo.token; - newTaskInfo.taskId = taskId; - newTaskInfo.taskDescription = mTaskInfo.taskDescription; - newTaskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - - // Invoke onTaskVanished with updated task info. - mTaskViewTaskController.onTaskVanished(newTaskInfo); - - verify(mViewListener).onTaskRemovalStarted(taskId); - if (BubbleAnythingFlagHelper.enableCreateAnyBubble()) { - // Verify TaskViewBase and listener updates with new task info. - verify(mockTaskViewBase).onTaskVanished(same(newTaskInfo)); - assertThat(capturedTaskInfo[0]).isSameInstanceAs(newTaskInfo); - } else { - // Verify TaskViewBase and listener updates with old task info. - verify(mockTaskViewBase).onTaskVanished(same(mTaskInfo)); - assertThat(capturedTaskInfo[0]).isSameInstanceAs(mTaskInfo); - } } @Test public void testOnBackPressedOnTaskRoot() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); mTaskViewTaskController.onBackPressedOnTaskRoot(mTaskInfo); @@ -367,12 +434,25 @@ public class TaskViewTest extends ShellTestCase { @Test public void testSetOnBackPressedOnTaskRoot() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); + verify(mOrganizer).setInterceptBackPressedOnTaskRoot(eq(mTaskInfo.token), eq(true)); + } - assertThat(wct.getChanges().get(mToken.asBinder()).getInterceptBackPressed()).isTrue(); + @Test + public void testUnsetOnBackPressedOnTaskRoot() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + WindowContainerTransaction wct = new WindowContainerTransaction(); + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, + new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, + mLeash, wct); + verify(mOrganizer).setInterceptBackPressedOnTaskRoot(eq(mTaskInfo.token), eq(true)); + + mTaskViewTaskController.prepareCloseAnimation(); + verify(mOrganizer).setInterceptBackPressedOnTaskRoot(eq(mTaskInfo.token), eq(false)); } @Test @@ -418,6 +498,8 @@ public class TaskViewTest extends ShellTestCase { @Test public void testStartRootTask_setsBoundsAndVisibility() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + TaskViewBase taskViewBase = mock(TaskViewBase.class); Rect bounds = new Rect(0, 0, 100, 100); when(taskViewBase.getCurrentBoundsOnScreen()).thenReturn(bounds); @@ -425,45 +507,24 @@ public class TaskViewTest extends ShellTestCase { // Surface created, but task not available so bounds / visibility isn't set mTaskView.surfaceCreated(mock(SurfaceHolder.class)); - if (TaskViewTransitions.useRepo()) { - assertNotNull(mTaskViewTransitions.getRepository().byTaskView(mTaskViewTaskController)); - assertFalse(mTaskViewTransitions.getRepository().byTaskView(mTaskViewTaskController) - .mVisible); - } else { - verify(mTaskViewTransitions, never()).updateVisibilityState( - eq(mTaskViewTaskController), eq(true)); - } + verify(mTaskViewTransitions, never()).updateVisibilityState( + eq(mTaskViewTaskController), eq(true)); // Make the task available WindowContainerTransaction wct = mock(WindowContainerTransaction.class); - mTaskViewTransitions.startRootTask(mTaskViewTaskController, mTaskInfo, mLeash, wct); + mTaskViewTaskController.startRootTask(mTaskInfo, mLeash, wct); // Bounds got set verify(wct).setBounds(any(WindowContainerToken.class), eq(bounds)); // Visibility & bounds state got set - if (TaskViewTransitions.useRepo()) { - assertTrue(mTaskViewTransitions.getRepository().byTaskView(mTaskViewTaskController) - .mVisible); - assertEquals(mTaskViewTransitions.getRepository().byTaskView(mTaskViewTaskController) - .mBounds, bounds); - } else { - verify(mTaskViewTransitions).updateVisibilityState(eq(mTaskViewTaskController), - eq(true)); - verify(mTaskViewTransitions).updateBoundsState(eq(mTaskViewTaskController), eq(bounds)); - } - } - - @Test - public void testPrepareOpenAnimation_copiesLeash() { - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, - new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, - mLeash, new WindowContainerTransaction()); - - assertThat(mTaskViewTaskController.getTaskLeash()).isNotEqualTo(mLeash); + verify(mTaskViewTransitions).updateVisibilityState(eq(mTaskViewTaskController), eq(true)); + verify(mTaskViewTransitions).updateBoundsState(eq(mTaskViewTaskController), eq(bounds)); } @Test public void testTaskViewPrepareOpenAnimationSetsBoundsAndVisibility() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + TaskViewBase taskViewBase = mock(TaskViewBase.class); Rect bounds = new Rect(0, 0, 100, 100); when(taskViewBase.getCurrentBoundsOnScreen()).thenReturn(bounds); @@ -471,39 +532,26 @@ public class TaskViewTest extends ShellTestCase { // Surface created, but task not available so bounds / visibility isn't set mTaskView.surfaceCreated(mock(SurfaceHolder.class)); - if (TaskViewTransitions.useRepo()) { - assertNotNull(mTaskViewTransitions.getRepository().byTaskView( - mTaskViewTaskController)); - assertFalse(mTaskViewTransitions.getRepository().byTaskView(mTaskViewTaskController) - .mVisible); - } else { - verify(mTaskViewTransitions, never()).updateVisibilityState( - eq(mTaskViewTaskController), eq(true)); - } + verify(mTaskViewTransitions, never()).updateVisibilityState( + eq(mTaskViewTaskController), eq(true)); // Make the task available / start prepareOpen WindowContainerTransaction wct = mock(WindowContainerTransaction.class); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); // Bounds got set verify(wct).setBounds(any(WindowContainerToken.class), eq(bounds)); // Visibility & bounds state got set - if (TaskViewTransitions.useRepo()) { - assertTrue(mTaskViewTransitions.getRepository().byTaskView(mTaskViewTaskController) - .mVisible); - assertEquals(mTaskViewTransitions.getRepository().byTaskView(mTaskViewTaskController) - .mBounds, bounds); - } else { - verify(mTaskViewTransitions).updateVisibilityState(eq(mTaskViewTaskController), - eq(true)); - verify(mTaskViewTransitions).updateBoundsState(eq(mTaskViewTaskController), eq(bounds)); - } + verify(mTaskViewTransitions).updateVisibilityState(eq(mTaskViewTaskController), eq(true)); + verify(mTaskViewTransitions).updateBoundsState(eq(mTaskViewTaskController), eq(bounds)); } @Test public void testTaskViewPrepareOpenAnimationSetsVisibilityFalse() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + TaskViewBase taskViewBase = mock(TaskViewBase.class); Rect bounds = new Rect(0, 0, 100, 100); when(taskViewBase.getCurrentBoundsOnScreen()).thenReturn(bounds); @@ -511,114 +559,108 @@ public class TaskViewTest extends ShellTestCase { // Task is available, but the surface was never created WindowContainerTransaction wct = mock(WindowContainerTransaction.class); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); // Bounds do not get set as there is no surface verify(wct, never()).setBounds(any(WindowContainerToken.class), any()); // Visibility is set to false, bounds aren't set - if (TaskViewTransitions.useRepo()) { - assertFalse(mTaskViewTransitions.getRepository().byTaskView(mTaskViewTaskController) - .mVisible); - assertTrue(mTaskViewTransitions.getRepository().byTaskView(mTaskViewTaskController) - .mBounds.isEmpty()); - } else { - verify(mTaskViewTransitions).updateVisibilityState(eq(mTaskViewTaskController), - eq(false)); - verify(mTaskViewTransitions, never()).updateBoundsState(eq(mTaskViewTaskController), - any()); - } + verify(mTaskViewTransitions).updateVisibilityState(eq(mTaskViewTaskController), eq(false)); + verify(mTaskViewTransitions, never()).updateBoundsState(eq(mTaskViewTaskController), any()); } @Test public void testRemoveTaskView_noTask() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskView.removeTask(); - assertFalse(mTaskViewTransitions.hasPending()); + verify(mTaskViewTransitions, never()).closeTaskView(any(), any()); } @Test public void testRemoveTaskView() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskView.surfaceCreated(mock(SurfaceHolder.class)); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); verify(mViewListener).onTaskCreated(eq(mTaskInfo.taskId), any()); mTaskView.removeTask(); - verify(mTaskViewTransitions).removeTaskView(eq(mTaskViewTaskController), any()); - } - - @Test - public void testUnregisterTask() { - mTaskView.unregisterTask(); - - verify(mTaskViewTransitions).unregisterTaskView(mTaskViewTaskController); + verify(mTaskViewTransitions).closeTaskView(any(), eq(mTaskViewTaskController)); } @Test public void testOnTaskAppearedWithTaskNotFound() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTaskController.setTaskNotFound(); mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); - assertNull(mTaskViewTaskController.getTaskInfo()); - verify(mTaskViewTransitions).removeTaskView(eq(mTaskViewTaskController), any()); + verify(mTaskViewTaskController).cleanUpPendingTask(); + verify(mTaskViewTransitions).closeTaskView(any(), eq(mTaskViewTaskController)); } @Test public void testOnTaskAppeared_withoutTaskNotFound() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTaskController.onTaskAppeared(mTaskInfo, mLeash); - assertEquals(mTaskInfo, mTaskViewTaskController.getPendingInfo()); - verify(mTaskViewTransitions, never()).removeTaskView(any(), any()); + verify(mTaskViewTaskController, never()).cleanUpPendingTask(); } @Test public void testSetCaptionInsets_noTaskInitially() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + Rect insets = new Rect(0, 400, 0, 0); mTaskView.setCaptionInsets(Insets.of(insets)); mTaskView.onComputeInternalInsets(new ViewTreeObserver.InternalInsetsInfo()); + verify(mTaskViewTaskController).applyCaptionInsetsIfNeeded(); verify(mOrganizer, never()).applyTransaction(any()); mTaskView.surfaceCreated(mock(SurfaceHolder.class)); reset(mOrganizer); + reset(mTaskViewTaskController); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); mTaskView.onComputeInternalInsets(new ViewTreeObserver.InternalInsetsInfo()); - verify(mOrganizer).applyTransaction(mWctCaptor.capture()); - assertTrue(mWctCaptor.getValue().getHierarchyOps().stream().anyMatch(hop -> - hop.getType() == WindowContainerTransaction.HierarchyOp - .HIERARCHY_OP_TYPE_ADD_INSETS_FRAME_PROVIDER)); + verify(mTaskViewTaskController).applyCaptionInsetsIfNeeded(); + verify(mOrganizer).applyTransaction(any()); } @Test public void testSetCaptionInsets_withTask() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskView.surfaceCreated(mock(SurfaceHolder.class)); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); + reset(mTaskViewTaskController); reset(mOrganizer); Rect insets = new Rect(0, 400, 0, 0); mTaskView.setCaptionInsets(Insets.of(insets)); mTaskView.onComputeInternalInsets(new ViewTreeObserver.InternalInsetsInfo()); - verify(mOrganizer).applyTransaction(mWctCaptor.capture()); - assertTrue(mWctCaptor.getValue().getHierarchyOps().stream().anyMatch(hop -> - hop.getType() == WindowContainerTransaction.HierarchyOp - .HIERARCHY_OP_TYPE_ADD_INSETS_FRAME_PROVIDER)); + verify(mTaskViewTaskController).applyCaptionInsetsIfNeeded(); + verify(mOrganizer).applyTransaction(any()); } @Test public void testReleaseInOnTaskRemoval_noNPE() { mTaskViewTaskController = spy(new TaskViewTaskController(mContext, mOrganizer, mTaskViewTransitions, mSyncQueue)); - mTaskView = new TaskView(mContext, mTaskViewTransitions, mTaskViewTaskController); + mTaskView = new TaskView(mContext, mTaskViewTaskController); mTaskView.setListener(mExecutor, new TaskView.Listener() { @Override public void onTaskRemovalStarted(int taskId) { @@ -627,7 +669,7 @@ public class TaskViewTest extends ShellTestCase { }); WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, + mTaskViewTaskController.prepareOpenAnimation(true /* newTask */, new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, mLeash, wct); mTaskView.surfaceCreated(mock(SurfaceHolder.class)); @@ -671,26 +713,4 @@ public class TaskViewTest extends ShellTestCase { verify(mViewHandler).post(any()); verify(mTaskView).setResizeBackgroundColor(eq(Color.BLUE)); } - - @Test - public void testOnAppeared_setsTrimmableTask() { - WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, - new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, - mLeash, wct); - - assertThat(wct.getHierarchyOps().get(0).isTrimmableFromRecents()).isFalse(); - } - - @Test - public void testMoveToFullscreen_callsTaskRemovalStarted() { - WindowContainerTransaction wct = new WindowContainerTransaction(); - mTaskViewTransitions.prepareOpenAnimation(mTaskViewTaskController, true /* newTask */, - new SurfaceControl.Transaction(), new SurfaceControl.Transaction(), mTaskInfo, - mLeash, wct); - mTaskView.surfaceCreated(mock(SurfaceHolder.class)); - mTaskViewTransitions.moveTaskViewToFullscreen(mTaskViewTaskController); - - verify(mViewListener).onTaskRemovalStarted(eq(mTaskInfo.taskId)); - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/taskview/TaskViewTransitionsTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/taskview/TaskViewTransitionsTest.java index 0e9a099a48..d3e40f21db 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/taskview/TaskViewTransitionsTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/taskview/TaskViewTransitionsTest.java @@ -21,30 +21,19 @@ import static android.view.WindowManager.TRANSIT_OPEN; import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.view.WindowManager.TRANSIT_TO_FRONT; -import static com.android.window.flags.Flags.FLAG_EXCLUDE_TASK_FROM_RECENTS; -import static com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_ANYTHING; -import static com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_APP_COMPAT_FIXES; -import static com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE; -import static com.android.wm.shell.bubbles.util.BubbleTestUtils.verifyExitBubbleTransaction; - import static com.google.common.truth.Truth.assertThat; import static org.junit.Assume.assumeTrue; -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyFloat; -import static org.mockito.ArgumentMatchers.anyInt; +import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.app.ActivityManager; import android.graphics.Rect; -import android.os.Binder; import android.os.IBinder; -import android.platform.test.annotations.EnableFlags; -import android.platform.test.flag.junit.FlagsParameterization; +import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; import android.view.SurfaceControl; import android.window.TransitionInfo; @@ -53,113 +42,56 @@ import android.window.WindowContainerTransaction; import androidx.test.filters.SmallTest; -import com.android.wm.shell.MockToken; -import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper; import com.android.wm.shell.transition.Transitions; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; -import org.mockito.ArgumentCaptor; import org.mockito.Mock; import org.mockito.MockitoAnnotations; -import platform.test.runner.parameterized.ParameterizedAndroidJunit4; -import platform.test.runner.parameterized.Parameters; - import java.util.ArrayList; import java.util.List; -import java.util.Map; -import java.util.concurrent.Executor; -/** - * Tests of {@link TaskViewTransitions}. - * - * Build/Install/Run: - * atest WMShellUnitTests:TaskViewTransitionsTest - */ @SmallTest -@RunWith(ParameterizedAndroidJunit4.class) +@RunWith(AndroidTestingRunner.class) @TestableLooper.RunWithLooper(setAsMainLooper = true) public class TaskViewTransitionsTest extends ShellTestCase { - @Parameters(name = "{0}") - public static List<FlagsParameterization> getParams() { - return FlagsParameterization.allCombinationsOf( - FLAG_EXCLUDE_TASK_FROM_RECENTS, - FLAG_ENABLE_BUBBLE_ANYTHING); - } - @Mock Transitions mTransitions; + @Mock TaskViewTaskController mTaskViewTaskController; - WindowContainerToken mToken; @Mock - ShellTaskOrganizer mOrganizer; - @Mock - SyncTransactionQueue mSyncQueue; - - Executor mExecutor = Runnable::run; - ActivityManager.RunningTaskInfo mTaskInfo; - TaskViewRepository mTaskViewRepository; - TaskViewTransitions mTaskViewTransitions; + @Mock + WindowContainerToken mToken; - public TaskViewTransitionsTest(FlagsParameterization flags) {} + TaskViewTransitions mTaskViewTransitions; @Before public void setUp() { MockitoAnnotations.initMocks(this); - mToken = new MockToken().token(); + if (Transitions.ENABLE_SHELL_TRANSITIONS) { + doReturn(true).when(mTransitions).isRegistered(); + } - mTaskInfo = createMockTaskInfo(314, mToken); + mTaskInfo = new ActivityManager.RunningTaskInfo(); + mTaskInfo.token = mToken; + mTaskInfo.taskId = 314; + mTaskInfo.taskDescription = mock(ActivityManager.TaskDescription.class); - mTaskViewRepository = new TaskViewRepository(); - when(mOrganizer.getExecutor()).thenReturn(mExecutor); - mTaskViewTransitions = spy(new TaskViewTransitions(mTransitions, mTaskViewRepository, - mOrganizer, mSyncQueue)); - mTaskViewTaskController = createMockTaskController(mTaskInfo); - mTaskViewTransitions.registerTaskView(mTaskViewTaskController); - } - - @Test - public void testMoveTaskViewToFullscreen_resetsInterceptBackPressed() { - mTaskViewTransitions.moveTaskViewToFullscreen(mTaskViewTaskController); - - ArgumentCaptor<WindowContainerTransaction> wctCaptor = - ArgumentCaptor.forClass(WindowContainerTransaction.class); - verify(mTransitions).startTransition(anyInt(), wctCaptor.capture(), any()); - WindowContainerTransaction.Change chg = - wctCaptor.getValue().getChanges().get(mToken.asBinder()); - assertThat(chg.getInterceptBackPressed()).isFalse(); - } - - @EnableFlags({ - FLAG_ENABLE_CREATE_ANY_BUBBLE, - FLAG_ENABLE_BUBBLE_ANYTHING, - FLAG_EXCLUDE_TASK_FROM_RECENTS, - FLAG_ENABLE_BUBBLE_APP_COMPAT_FIXES, - }) - @Test - public void testMoveTaskViewToFullscreen_applyWctToExitBubble() { - final Binder captionInsetsOwner = new Binder(); - when(mTaskViewTaskController.getCaptionInsetsOwner()).thenReturn(captionInsetsOwner); - mTaskViewTransitions.moveTaskViewToFullscreen(mTaskViewTaskController); - - final TaskViewTransitions.PendingTransition pending = mTaskViewTransitions.findPending( - mTaskViewTaskController, TRANSIT_CHANGE); - assertThat(pending).isNotNull(); - final WindowContainerTransaction wct = pending.mWct; - assertThat(wct).isNotNull(); - verifyExitBubbleTransaction(wct, mToken.asBinder(), captionInsetsOwner); + mTaskViewTransitions = spy(new TaskViewTransitions(mTransitions)); + mTaskViewTransitions.addTaskView(mTaskViewTaskController); + when(mTaskViewTaskController.getTaskInfo()).thenReturn(mTaskInfo); } @Test public void testSetTaskBounds_taskNotVisible_noTransaction() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTransitions.setTaskViewVisible(mTaskViewTaskController, false); mTaskViewTransitions.setTaskBounds(mTaskViewTaskController, new Rect(0, 0, 100, 100)); @@ -170,6 +102,8 @@ public class TaskViewTransitionsTest extends ShellTestCase { @Test public void testSetTaskBounds_taskVisible_boundsChangeTransaction() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTransitions.setTaskViewVisible(mTaskViewTaskController, true); // Consume the pending transaction from visibility change @@ -195,6 +129,8 @@ public class TaskViewTransitionsTest extends ShellTestCase { @Test public void testSetTaskBounds_taskVisibleWithPending_noTransaction() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTransitions.setTaskViewVisible(mTaskViewTaskController, true); TaskViewTransitions.PendingTransition pending = @@ -209,6 +145,8 @@ public class TaskViewTransitionsTest extends ShellTestCase { @Test public void testSetTaskBounds_sameBounds_noTransaction() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTransitions.setTaskViewVisible(mTaskViewTaskController, true); // Consume the pending transaction from visibility change @@ -253,42 +191,18 @@ public class TaskViewTransitionsTest extends ShellTestCase { @Test public void testSetTaskVisibility_taskRemoved_noNPE() { - mTaskViewTransitions.unregisterTaskView(mTaskViewTaskController); + mTaskViewTransitions.removeTaskView(mTaskViewTaskController); + + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); mTaskViewTransitions.setTaskViewVisible(mTaskViewTaskController, false); } - @Test - public void testSetTaskVisibility_reorderNoHiddenVisibilitySync_resetsAlwaysOnTopAndReorder() { - assumeTrue(TaskViewTransitions.useRepo()); - assumeTrue(BubbleAnythingFlagHelper.enableCreateAnyBubbleWithForceExcludedFromRecents()); - - final Rect bounds = new Rect(0, 0, 100, 100); - mTaskViewRepository.byTaskView(mTaskViewTaskController).mBounds = bounds; - mTaskViewRepository.byTaskView(mTaskViewTaskController).mVisible = true; - final IBinder mockBinder = mock(IBinder.class); - when(mToken.asBinder()).thenReturn(mockBinder); - - mTaskViewTransitions.setTaskViewVisible(mTaskViewTaskController, false /* visible */, - true /* reorder */, false /* syncHiddenWithVisibilityOnReorder */); - - final TaskViewTransitions.PendingTransition pending = - mTaskViewTransitions.findPending(mTaskViewTaskController, TRANSIT_TO_BACK); - assertThat(pending).isNotNull(); - final Map<IBinder, WindowContainerTransaction.Change> chgs = pending.mWct.getChanges(); - assertThat(chgs.keySet()).containsExactly(mockBinder); - assertThat(chgs.get(mockBinder).getConfiguration().windowConfiguration.getBounds()) - .isEqualTo(bounds); - assertThat(chgs.get(mockBinder).getHidden()).isFalse(); - final List<WindowContainerTransaction.HierarchyOp> ops = pending.mWct.getHierarchyOps(); - assertThat(ops).hasSize(2); - assertThat(ops.get(0).isAlwaysOnTop()).isFalse(); - assertThat(ops.get(1).getToTop()).isFalse(); - } - @Test public void testSetTaskBounds_taskRemoved_noNPE() { - mTaskViewTransitions.unregisterTaskView(mTaskViewTaskController); + mTaskViewTransitions.removeTaskView(mTaskViewTaskController); + + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); mTaskViewTransitions.setTaskBounds(mTaskViewTaskController, new Rect(0, 0, 100, 100)); @@ -296,6 +210,8 @@ public class TaskViewTransitionsTest extends ShellTestCase { @Test public void testReorderTask_movedToFrontTransaction() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTransitions.reorderTaskViewTask(mTaskViewTaskController, true); // Consume the pending transaction from order change TaskViewTransitions.PendingTransition pending = @@ -315,6 +231,8 @@ public class TaskViewTransitionsTest extends ShellTestCase { @Test public void testReorderTask_movedToBackTransaction() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + mTaskViewTransitions.reorderTaskViewTask(mTaskViewTaskController, false); // Consume the pending transaction from order change TaskViewTransitions.PendingTransition pending = @@ -334,6 +252,8 @@ public class TaskViewTransitionsTest extends ShellTestCase { @Test public void test_startAnimation_setsTaskNotFound() { + assumeTrue(Transitions.ENABLE_SHELL_TRANSITIONS); + TransitionInfo.Change change = mock(TransitionInfo.Change.class); when(change.getTaskInfo()).thenReturn(mTaskInfo); when(change.getMode()).thenReturn(TRANSIT_OPEN); @@ -359,121 +279,4 @@ public class TaskViewTransitionsTest extends ShellTestCase { verify(mTaskViewTaskController).setTaskNotFound(); } - - @Test - public void updateBoundsForUnfold_taskNotFound_doesNothing() { - ActivityManager.RunningTaskInfo taskInfo = new ActivityManager.RunningTaskInfo(); - taskInfo.token = mock(WindowContainerToken.class); - taskInfo.taskId = 666; - Rect bounds = new Rect(100, 50, 200, 250); - SurfaceControl.Transaction startTransaction = mock(SurfaceControl.Transaction.class); - SurfaceControl.Transaction finishTransaction = mock(SurfaceControl.Transaction.class); - assertThat( - mTaskViewTransitions.updateBoundsForUnfold(bounds, startTransaction, - finishTransaction, taskInfo, mock(SurfaceControl.class))) - .isFalse(); - - verify(startTransaction, never()).reparent(any(), any()); - } - - @Test - public void updateBoundsForUnfold_noPendingTransition_doesNothing() { - Rect bounds = new Rect(100, 50, 200, 250); - mTaskViewTransitions.setTaskBounds(mTaskViewTaskController, bounds); - assertThat(mTaskViewTransitions.hasPending()).isFalse(); - - SurfaceControl.Transaction startTransaction = mock(SurfaceControl.Transaction.class); - SurfaceControl.Transaction finishTransaction = mock(SurfaceControl.Transaction.class); - assertThat( - mTaskViewTransitions.updateBoundsForUnfold(bounds, startTransaction, - finishTransaction, mTaskInfo, mock(SurfaceControl.class))) - .isFalse(); - verify(startTransaction, never()).reparent(any(), any()); - } - - @Test - public void updateBoundsForUnfold() { - Rect bounds = new Rect(100, 50, 200, 250); - mTaskViewTransitions.updateVisibilityState(mTaskViewTaskController, /* visible= */ true); - mTaskViewTransitions.setTaskBounds(mTaskViewTaskController, bounds); - assertThat(mTaskViewTransitions.hasPending()).isTrue(); - - SurfaceControl.Transaction startTransaction = createMockTransaction(); - SurfaceControl.Transaction finishTransaction = createMockTransaction(); - assertThat( - mTaskViewTransitions.updateBoundsForUnfold(bounds, startTransaction, - finishTransaction, mTaskInfo, mock(SurfaceControl.class))) - .isTrue(); - assertThat(mTaskViewRepository.byTaskView(mTaskViewTaskController).mBounds) - .isEqualTo(bounds); - } - - @Test - public void externalTransitionPending_alreadyFinished_removed() { - IBinder transition = mock(IBinder.class); - mTaskViewTransitions.enqueueExternal(mTaskViewTaskController, () -> transition); - assertThat(mTaskViewTransitions.hasPending()).isTrue(); - - // enqueue an external transition, that when started returns a null token as if it has - // already finished - mTaskViewTransitions.enqueueExternal(mTaskViewTaskController, () -> null); - assertThat(mTaskViewTransitions.hasPending()).isTrue(); - - mTaskViewTransitions.onExternalDone(transition); - - assertThat(mTaskViewTransitions.hasPending()).isFalse(); - } - - @Test - public void removePendingTransitions_removePerTask() { - WindowContainerToken otherToken = new MockToken().token(); - ActivityManager.RunningTaskInfo otherTaskInfo = createMockTaskInfo(999, otherToken); - TaskViewTaskController otherController = createMockTaskController(otherTaskInfo); - mTaskViewTransitions.registerTaskView(otherController); - - mTaskViewTransitions.setTaskViewVisible(mTaskViewTaskController, true); - mTaskViewTransitions.setTaskViewVisible(otherController, true); - - // There should be two pending transitions, one for each task - assertThat(mTaskViewTransitions.hasPending()).isTrue(); - assertThat(mTaskViewTransitions.findPending(mTaskViewTaskController, - TRANSIT_TO_FRONT)).isNotNull(); - assertThat(mTaskViewTransitions.findPending(otherController, TRANSIT_TO_FRONT)).isNotNull(); - - // Remove pending for one task, keep the other - mTaskViewTransitions.removePendingTransitions(mTaskViewTaskController); - assertThat(mTaskViewTransitions.hasPending()).isTrue(); - assertThat(mTaskViewTransitions.findPending(mTaskViewTaskController, - TRANSIT_TO_FRONT)).isNull(); - assertThat(mTaskViewTransitions.findPending(otherController, TRANSIT_TO_FRONT)).isNotNull(); - - // Remove the last one - mTaskViewTransitions.removePendingTransitions(otherController); - assertThat(mTaskViewTransitions.hasPending()).isFalse(); - } - - private ActivityManager.RunningTaskInfo createMockTaskInfo(int taskId, - WindowContainerToken token) { - ActivityManager.RunningTaskInfo taskInfo = new ActivityManager.RunningTaskInfo(); - taskInfo.token = token; - taskInfo.taskId = taskId; - taskInfo.taskDescription = mock(ActivityManager.TaskDescription.class); - return taskInfo; - } - - private TaskViewTaskController createMockTaskController( - ActivityManager.RunningTaskInfo taskInfo) { - TaskViewTaskController controller = mock(TaskViewTaskController.class); - when(controller.getTaskInfo()).thenReturn(taskInfo); - when(controller.getTaskToken()).thenReturn(taskInfo.token); - return controller; - } - - private SurfaceControl.Transaction createMockTransaction() { - SurfaceControl.Transaction transaction = mock(SurfaceControl.Transaction.class); - when(transaction.reparent(any(), any())).thenReturn(transaction); - when(transaction.setPosition(any(), anyFloat(), anyFloat())).thenReturn(transaction); - when(transaction.setWindowCrop(any(), anyInt(), anyInt())).thenReturn(transaction); - return transaction; - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/transition/HomeTransitionObserverTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/transition/HomeTransitionObserverTest.java index 52634c08da..0db10ef65a 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/transition/HomeTransitionObserverTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/transition/HomeTransitionObserverTest.java @@ -17,54 +17,42 @@ package com.android.wm.shell.transition; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; -import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD; import static android.app.WindowConfiguration.ACTIVITY_TYPE_UNDEFINED; import static android.view.WindowManager.TRANSIT_CHANGE; import static android.view.WindowManager.TRANSIT_OPEN; -import static android.view.WindowManager.TRANSIT_PREPARE_BACK_NAVIGATION; import static android.view.WindowManager.TRANSIT_TO_BACK; -import static android.view.WindowManager.TRANSIT_TO_FRONT; import static android.window.TransitionInfo.FLAG_BACK_GESTURE_ANIMATED; import static com.android.dx.mockito.inline.extended.ExtendedMockito.verify; -import static com.android.window.flags.Flags.FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX; -import static com.android.wm.shell.desktopmode.DesktopModeTransitionTypes.TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP; -import static com.android.wm.shell.transition.Transitions.TRANSIT_CONVERT_TO_BUBBLE; +import static com.android.wm.shell.transition.Transitions.TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP; import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.never; import static org.mockito.Mockito.times; import static org.mockito.Mockito.when; import android.app.ActivityManager; import android.app.WindowConfiguration.ActivityType; import android.content.Context; -import android.os.Binder; import android.os.Handler; import android.os.IBinder; import android.os.Looper; import android.os.RemoteException; -import android.platform.test.annotations.DisableFlags; -import android.platform.test.annotations.EnableFlags; import android.view.SurfaceControl; import android.window.TransitionInfo; import android.window.TransitionInfo.TransitionMode; -import android.window.WindowContainerToken; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import androidx.test.platform.app.InstrumentationRegistry; -import com.android.wm.shell.Flags; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestShellExecutor; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.ShellExecutor; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.shared.IHomeTransitionListener; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; @@ -81,6 +69,7 @@ import java.util.List; @SmallTest @RunWith(AndroidJUnit4.class) public class HomeTransitionObserverTest extends ShellTestCase { + private final ShellTaskOrganizer mOrganizer = mock(ShellTaskOrganizer.class); private final TransactionPool mTransactionPool = mock(TransactionPool.class); private final Context mContext = @@ -89,8 +78,6 @@ public class HomeTransitionObserverTest extends ShellTestCase { private final TestShellExecutor mMainExecutor = new TestShellExecutor(); private final Handler mMainHandler = new Handler(Looper.getMainLooper()); private final DisplayController mDisplayController = mock(DisplayController.class); - private final DisplayInsetsController mDisplayInsetsController = - mock(DisplayInsetsController.class); private IHomeTransitionListener mListener; private Transitions mTransition; @@ -101,12 +88,10 @@ public class HomeTransitionObserverTest extends ShellTestCase { mListener = mock(IHomeTransitionListener.class); when(mListener.asBinder()).thenReturn(mock(IBinder.class)); - mHomeTransitionObserver = new HomeTransitionObserver(mContext, mMainExecutor, - mDisplayInsetsController, mock(ShellInit.class)); + mHomeTransitionObserver = new HomeTransitionObserver(mContext, mMainExecutor); mTransition = new Transitions(mContext, mock(ShellInit.class), mock(ShellController.class), - mOrganizer, mTransactionPool, mDisplayController, mDisplayInsetsController, - mMainExecutor, mMainHandler, mAnimExecutor, mHomeTransitionObserver, - mock(FocusTransitionObserver.class)); + mOrganizer, mTransactionPool, mDisplayController, mMainExecutor, + mMainHandler, mAnimExecutor, mHomeTransitionObserver); mHomeTransitionObserver.setHomeTransitionListener(mTransition, mListener); } @@ -202,163 +187,21 @@ public class HomeTransitionObserverTest extends ShellTestCase { } @Test - @DisableFlags({FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX}) - public void startDragToDesktopFinished_flagDisabled_doesNotTriggerCallback() - throws RemoteException { + public void testHomeActivityWithBackGestureNotifiesHomeIsVisible() throws RemoteException { TransitionInfo info = mock(TransitionInfo.class); TransitionInfo.Change change = mock(TransitionInfo.Change.class); ActivityManager.RunningTaskInfo taskInfo = mock(ActivityManager.RunningTaskInfo.class); when(change.getTaskInfo()).thenReturn(taskInfo); when(info.getChanges()).thenReturn(new ArrayList<>(List.of(change))); - when(info.getType()).thenReturn(TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP); - setupTransitionInfo(taskInfo, change, ACTIVITY_TYPE_HOME, TRANSIT_OPEN, true); - IBinder transition = mock(IBinder.class); - mHomeTransitionObserver.onTransitionReady( - transition, - info, - mock(SurfaceControl.Transaction.class), - mock(SurfaceControl.Transaction.class)); - - mHomeTransitionObserver.onTransitionFinished(transition, /* aborted= */ false); - - verify(mListener, never()).onHomeVisibilityChanged(/* isVisible= */ anyBoolean()); - } - - @Test - @EnableFlags({FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX}) - public void startDragToDesktopAborted_triggersCallback() throws RemoteException { - TransitionInfo info = mock(TransitionInfo.class); - TransitionInfo.Change change = mock(TransitionInfo.Change.class); - ActivityManager.RunningTaskInfo taskInfo = mock(ActivityManager.RunningTaskInfo.class); - when(change.getTaskInfo()).thenReturn(taskInfo); - when(info.getChanges()).thenReturn(new ArrayList<>(List.of(change))); - when(info.getType()).thenReturn(TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP); - setupTransitionInfo(taskInfo, change, ACTIVITY_TYPE_HOME, TRANSIT_OPEN, true); - IBinder transition = mock(IBinder.class); - mHomeTransitionObserver.onTransitionReady( - transition, - info, - mock(SurfaceControl.Transaction.class), - mock(SurfaceControl.Transaction.class)); - - mHomeTransitionObserver.onTransitionFinished(transition, /* aborted= */ true); - - verify(mListener).onHomeVisibilityChanged(/* isVisible= */ true); - } - - @Test - @EnableFlags({FLAG_ENABLE_DRAG_TO_DESKTOP_INCOMING_TRANSITIONS_BUGFIX}) - public void startDragToDesktopFinished_triggersCallback() throws RemoteException { - TransitionInfo info = mock(TransitionInfo.class); - TransitionInfo.Change change = mock(TransitionInfo.Change.class); - ActivityManager.RunningTaskInfo taskInfo = mock(ActivityManager.RunningTaskInfo.class); - when(change.getTaskInfo()).thenReturn(taskInfo); - when(info.getChanges()).thenReturn(new ArrayList<>(List.of(change))); - when(info.getType()).thenReturn(TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP); - setupTransitionInfo(taskInfo, change, ACTIVITY_TYPE_HOME, TRANSIT_OPEN, true); - IBinder transition = mock(IBinder.class); - mHomeTransitionObserver.onTransitionReady( - transition, - info, - mock(SurfaceControl.Transaction.class), - mock(SurfaceControl.Transaction.class)); - - mHomeTransitionObserver.onTransitionFinished(transition, /* aborted= */ false); - - verify(mListener).onHomeVisibilityChanged(/* isVisible= */ true); - } - - @Test - @EnableFlags({Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE}) - public void testDragTaskToBubbleOverHome_notifiesHomeIsVisible() throws RemoteException { - ActivityManager.RunningTaskInfo homeTask = createTaskInfo(1, ACTIVITY_TYPE_HOME); - ActivityManager.RunningTaskInfo bubbleTask = createTaskInfo(2, ACTIVITY_TYPE_STANDARD); - - TransitionInfo startDragTransition = - new TransitionInfoBuilder(TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP) - .addChange(TRANSIT_TO_FRONT, homeTask) - .addChange(TRANSIT_TO_BACK, bubbleTask) - .build(); - - // Start drag to desktop which brings home to front - mHomeTransitionObserver.onTransitionReady(new Binder(), startDragTransition, - MockTransactionPool.create(), MockTransactionPool.create()); - // Does not notify home visibility yet - verify(mListener, never()).onHomeVisibilityChanged(anyBoolean()); - - TransitionInfo convertToBubbleTransition = - new TransitionInfoBuilder(TRANSIT_CONVERT_TO_BUBBLE) - .addChange(TRANSIT_TO_FRONT, bubbleTask) - .build(); - - // Convert to bubble. Transition does not include changes for home task - mHomeTransitionObserver.onTransitionReady(new Binder(), convertToBubbleTransition, - MockTransactionPool.create(), MockTransactionPool.create()); - - // Notifies home visibility change that was pending from the start of drag - verify(mListener).onHomeVisibilityChanged(true); - } - - @Test - @EnableFlags({Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN, Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE}) - public void testDragTaskToBubbleOverOtherTask_notifiesHomeIsNotVisible() - throws RemoteException { - ActivityManager.RunningTaskInfo homeTask = createTaskInfo(1, ACTIVITY_TYPE_HOME); - ActivityManager.RunningTaskInfo bubbleTask = createTaskInfo(2, ACTIVITY_TYPE_STANDARD); - ActivityManager.RunningTaskInfo otherTask = createTaskInfo(3, ACTIVITY_TYPE_STANDARD); - - TransitionInfo startDragTransition = - new TransitionInfoBuilder(TRANSIT_DESKTOP_MODE_START_DRAG_TO_DESKTOP) - .addChange(TRANSIT_TO_FRONT, homeTask) - .addChange(TRANSIT_TO_BACK, bubbleTask) - .build(); - - // Start drag to desktop which brings home to front - mHomeTransitionObserver.onTransitionReady(new Binder(), startDragTransition, - MockTransactionPool.create(), MockTransactionPool.create()); - // Does not notify home visibility yet - verify(mListener, never()).onHomeVisibilityChanged(anyBoolean()); - - TransitionInfo convertToBubbleTransition = - new TransitionInfoBuilder(TRANSIT_CONVERT_TO_BUBBLE) - .addChange(TRANSIT_TO_FRONT, bubbleTask) - .addChange(TRANSIT_TO_FRONT, otherTask) - .addChange(TRANSIT_TO_BACK, homeTask) - .build(); - - // Convert to bubble. Transition includes home task to back which updates home visibility - mHomeTransitionObserver.onTransitionReady(new Binder(), convertToBubbleTransition, - MockTransactionPool.create(), MockTransactionPool.create()); - - // Notifies home visibility change due to home moving to back in the second transition - verify(mListener).onHomeVisibilityChanged(false); - } - - @Test - public void testHomeActivityWithBackGestureNotifiesHomeIsVisibleAfterClose() - throws RemoteException { - TransitionInfo info = mock(TransitionInfo.class); - TransitionInfo.Change change = mock(TransitionInfo.Change.class); - ActivityManager.RunningTaskInfo taskInfo = mock(ActivityManager.RunningTaskInfo.class); - when(change.getTaskInfo()).thenReturn(taskInfo); - when(info.getChanges()).thenReturn(new ArrayList<>(List.of(change))); - when(info.getType()).thenReturn(TRANSIT_PREPARE_BACK_NAVIGATION); when(change.hasFlags(FLAG_BACK_GESTURE_ANIMATED)).thenReturn(true); - setupTransitionInfo(taskInfo, change, ACTIVITY_TYPE_HOME, TRANSIT_OPEN, true); - - mHomeTransitionObserver.onTransitionReady(mock(IBinder.class), - info, - mock(SurfaceControl.Transaction.class), - mock(SurfaceControl.Transaction.class)); - verify(mListener, times(0)).onHomeVisibilityChanged(anyBoolean()); - - when(info.getType()).thenReturn(TRANSIT_TO_BACK); setupTransitionInfo(taskInfo, change, ACTIVITY_TYPE_HOME, TRANSIT_CHANGE, true); + mHomeTransitionObserver.onTransitionReady(mock(IBinder.class), info, mock(SurfaceControl.Transaction.class), mock(SurfaceControl.Transaction.class)); + verify(mListener, times(1)).onHomeVisibilityChanged(true); } @@ -374,14 +217,4 @@ public class HomeTransitionObserverTest extends ShellTestCase { when(change.getMode()).thenReturn(mode); taskInfo.isRunning = isRunning; } - - private static ActivityManager.RunningTaskInfo createTaskInfo(int taskId, int activityType) { - ActivityManager.RunningTaskInfo taskInfo = new ActivityManager.RunningTaskInfo(); - taskInfo.taskId = taskId; - taskInfo.topActivityType = activityType; - taskInfo.configuration.windowConfiguration.setActivityType(activityType); - taskInfo.token = mock(WindowContainerToken.class); - taskInfo.isRunning = true; - return taskInfo; - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/transition/ShellTransitionTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/transition/ShellTransitionTests.java index c4c16a4868..964d86e8bd 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/transition/ShellTransitionTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/transition/ShellTransitionTests.java @@ -19,7 +19,6 @@ package com.android.wm.shell.transition; import static android.app.WindowConfiguration.ACTIVITY_TYPE_HOME; import static android.app.WindowConfiguration.ACTIVITY_TYPE_RECENTS; import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD; -import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; @@ -37,7 +36,6 @@ import static android.view.WindowManager.TRANSIT_TO_BACK; import static android.view.WindowManager.TRANSIT_TO_FRONT; import static android.window.TransitionInfo.FLAG_DISPLAY_HAS_ALERT_WINDOWS; import static android.window.TransitionInfo.FLAG_IS_DISPLAY; -import static android.window.TransitionInfo.FLAG_MOVED_TO_TOP; import static android.window.TransitionInfo.FLAG_SYNC; import static android.window.TransitionInfo.FLAG_TRANSLUCENT; @@ -75,12 +73,13 @@ import android.os.Handler; import android.os.IBinder; import android.os.Looper; import android.os.RemoteException; -import android.platform.test.annotations.DisableFlags; -import android.platform.test.annotations.EnableFlags; +import android.platform.test.flag.junit.SetFlagsRule; import android.util.ArraySet; import android.util.Pair; +import android.view.IRecentsAnimationRunner; import android.view.Surface; import android.view.SurfaceControl; +import android.view.WindowManager; import android.window.IRemoteTransition; import android.window.IRemoteTransitionFinishedCallback; import android.window.IWindowContainerToken; @@ -107,20 +106,18 @@ import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestShellExecutor; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayInsetsController; import com.android.wm.shell.common.DisplayLayout; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.desktopmode.multidesks.DesksOrganizer; -import com.android.wm.shell.recents.IRecentsAnimationRunner; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.recents.RecentTasksController; import com.android.wm.shell.recents.RecentsTransitionHandler; -import com.android.wm.shell.shared.IShellTransitions; -import com.android.wm.shell.shared.TransactionPool; import com.android.wm.shell.sysui.ShellController; import com.android.wm.shell.sysui.ShellInit; +import com.android.wm.shell.sysui.ShellSharedConstants; import com.android.wm.shell.util.StubTransaction; import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Answers; @@ -147,8 +144,9 @@ public class ShellTransitionTests extends ShellTestCase { private final ShellExecutor mAnimExecutor = new TestShellExecutor(); private final TestTransitionHandler mDefaultHandler = new TestTransitionHandler(); private final Handler mMainHandler = new Handler(Looper.getMainLooper()); - private final DisplayInsetsController mDisplayInsets = - mock(DisplayInsetsController.class); + + @Rule + public final SetFlagsRule setFlagsRule = new SetFlagsRule(); @Before public void setUp() { @@ -160,9 +158,8 @@ public class ShellTransitionTests extends ShellTestCase { public void instantiate_addInitCallback() { ShellInit shellInit = mock(ShellInit.class); final Transitions t = new Transitions(mContext, shellInit, mock(ShellController.class), - mOrganizer, mTransactionPool, createTestDisplayController(), mDisplayInsets, - mMainExecutor, mMainHandler, mAnimExecutor, - mock(HomeTransitionObserver.class), mock(FocusTransitionObserver.class)); + mOrganizer, mTransactionPool, createTestDisplayController(), mMainExecutor, + mMainHandler, mAnimExecutor, mock(HomeTransitionObserver.class)); // One from Transitions, one from RootTaskDisplayAreaOrganizer verify(shellInit).addInitCallback(any(), eq(t)); verify(shellInit).addInitCallback(any(), isA(RootTaskDisplayAreaOrganizer.class)); @@ -173,12 +170,11 @@ public class ShellTransitionTests extends ShellTestCase { ShellInit shellInit = new ShellInit(mMainExecutor); ShellController shellController = mock(ShellController.class); final Transitions t = new Transitions(mContext, shellInit, shellController, - mOrganizer, mTransactionPool, createTestDisplayController(), mDisplayInsets, - mMainExecutor, mMainHandler, mAnimExecutor, - mock(HomeTransitionObserver.class), mock(FocusTransitionObserver.class)); + mOrganizer, mTransactionPool, createTestDisplayController(), mMainExecutor, + mMainHandler, mAnimExecutor, mock(HomeTransitionObserver.class)); shellInit.init(); verify(shellController, times(1)).addExternalInterface( - eq(IShellTransitions.DESCRIPTOR), any(), any()); + eq(ShellSharedConstants.KEY_EXTRA_SHELL_SHELL_TRANSITIONS), any(), any()); } @Test @@ -336,54 +332,6 @@ public class ShellTransitionTests extends ShellTestCase { assertFalse(filter.matches(openStd)); } - @Test - public void testTransitionFilterTaskFragmentToken() { - final IBinder taskFragmentToken = new Binder(); - - TransitionFilter filter = new TransitionFilter(); - filter.mRequirements = - new TransitionFilter.Requirement[]{new TransitionFilter.Requirement()}; - filter.mRequirements[0].mModes = new int[]{TRANSIT_OPEN, TRANSIT_TO_FRONT}; - filter.mRequirements[0].mTaskFragmentToken = taskFragmentToken; - - // Transition with the same token should match. - final TransitionInfo infoHasTaskFragmentToken = new TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN, taskFragmentToken).build(); - assertTrue(filter.matches(infoHasTaskFragmentToken)); - - // Transition with a different token should not match. - final IBinder differentTaskFragmentToken = new Binder(); - final TransitionInfo infoDifferentTaskFragmentToken = - new TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN, differentTaskFragmentToken).build(); - assertFalse(filter.matches(infoDifferentTaskFragmentToken)); - - // Transition without a token should not match. - final TransitionInfo infoNoTaskFragmentToken = new TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN, createTaskInfo( - 1, WINDOWING_MODE_FULLSCREEN, ACTIVITY_TYPE_STANDARD)).build(); - assertFalse(filter.matches(infoNoTaskFragmentToken)); - } - - @Test - public void testTransitionFilterWindowingMode() { - TransitionFilter filter = new TransitionFilter(); - filter.mRequirements = - new TransitionFilter.Requirement[]{new TransitionFilter.Requirement()}; - filter.mRequirements[0].mWindowingMode = WINDOWING_MODE_FREEFORM; - filter.mRequirements[0].mModes = new int[]{TRANSIT_OPEN, TRANSIT_TO_FRONT}; - - final TransitionInfo fullscreenStd = new TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN, createTaskInfo( - 1, WINDOWING_MODE_FULLSCREEN, ACTIVITY_TYPE_STANDARD)).build(); - assertFalse(filter.matches(fullscreenStd)); - - final TransitionInfo freeformStd = new TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN, createTaskInfo( - 1, WINDOWING_MODE_FREEFORM, ACTIVITY_TYPE_STANDARD)).build(); - assertTrue(filter.matches(freeformStd)); - } - @Test public void testTransitionFilterMultiRequirement() { // filter that requires at-least one opening and one closing app @@ -494,27 +442,6 @@ public class ShellTransitionTests extends ShellTestCase { assertTrue(filter.matches(openAct)); } - @Test - public void testTransitionFilterAnimOverride() { - TransitionFilter filter = new TransitionFilter(); - filter.mRequirements = - new TransitionFilter.Requirement[]{new TransitionFilter.Requirement()}; - filter.mRequirements[0].mCustomAnimation = true; - filter.mRequirements[0].mModes = new int[]{TRANSIT_OPEN, TRANSIT_TO_FRONT}; - - final RunningTaskInfo taskInf = createTaskInfo(1); - final TransitionInfo openTask = new TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN, taskInf).build(); - assertFalse(filter.matches(openTask)); - - final TransitionInfo.AnimationOptions overOpts = - TransitionInfo.AnimationOptions.makeCustomAnimOptions("pakname", 0, 0, 0, true); - final TransitionInfo openTaskOpts = new TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_OPEN, taskInf).build(); - openTaskOpts.getChanges().get(0).setAnimationOptions(overOpts); - assertTrue(filter.matches(openTaskOpts)); - } - @Test public void testRegisteredRemoteTransition() { Transitions transitions = createTestTransitions(); @@ -555,8 +482,7 @@ public class ShellTransitionTests extends ShellTestCase { } @Test - @DisableFlags(Flags.FLAG_RETURN_ANIMATION_FRAMEWORK_LONG_LIVED) - public void testRegisteredRemoteTransitionTakeover_flagDisabled() { + public void testRegisteredRemoteTransitionTakeover() { Transitions transitions = createTestTransitions(); transitions.replaceDefaultHandlerForTest(mDefaultHandler); @@ -611,6 +537,7 @@ public class ShellTransitionTests extends ShellTestCase { mMainExecutor.flushAll(); // Takeover shouldn't happen when the flag is disabled. + setFlagsRule.disableFlags(Flags.FLAG_RETURN_ANIMATION_FRAMEWORK_LIBRARY); IBinder transitToken = new Binder(); transitions.requestStartTransition(transitToken, new TransitionRequestInfo(TRANSIT_OPEN, null /* trigger */, null /* remote */)); @@ -623,69 +550,12 @@ public class ShellTransitionTests extends ShellTestCase { mDefaultHandler.finishAll(); mMainExecutor.flushAll(); verify(mOrganizer, times(1)).finishTransition(eq(transitToken), any()); - } - - @Test - @EnableFlags(Flags.FLAG_RETURN_ANIMATION_FRAMEWORK_LONG_LIVED) - public void testRegisteredRemoteTransitionTakeover_flagEnabled() { - Transitions transitions = createTestTransitions(); - transitions.replaceDefaultHandlerForTest(mDefaultHandler); - - IRemoteTransition testRemote = new RemoteTransitionStub() { - @Override - public void startAnimation(IBinder token, TransitionInfo info, - SurfaceControl.Transaction t, - IRemoteTransitionFinishedCallback finishCallback) throws RemoteException { - final Transitions.TransitionHandler takeoverHandler = - transitions.getHandlerForTakeover(token, info); - - if (takeoverHandler == null) { - finishCallback.onTransitionFinished(null /* wct */, null /* sct */); - return; - } - - takeoverHandler.takeOverAnimation(token, info, new SurfaceControl.Transaction(), - wct -> { - try { - finishCallback.onTransitionFinished(wct, null /* sct */); - } catch (RemoteException e) { - // Fail - } - }, new WindowAnimationState[info.getChanges().size()]); - } - }; - final boolean[] takeoverRemoteCalled = new boolean[]{false}; - IRemoteTransition testTakeoverRemote = new RemoteTransitionStub() { - @Override - public void startAnimation(IBinder token, TransitionInfo info, - SurfaceControl.Transaction t, - IRemoteTransitionFinishedCallback finishCallback) {} - - @Override - public void takeOverAnimation(IBinder transition, TransitionInfo info, - SurfaceControl.Transaction startTransaction, - IRemoteTransitionFinishedCallback finishCallback, WindowAnimationState[] states) - throws RemoteException { - takeoverRemoteCalled[0] = true; - finishCallback.onTransitionFinished(null /* wct */, null /* sct */); - } - }; - - TransitionFilter filter = new TransitionFilter(); - filter.mRequirements = - new TransitionFilter.Requirement[]{new TransitionFilter.Requirement()}; - filter.mRequirements[0].mModes = new int[]{TRANSIT_OPEN, TRANSIT_TO_FRONT}; - - transitions.registerRemote(filter, new RemoteTransition(testRemote, "Test")); - transitions.registerRemoteForTakeover( - filter, new RemoteTransition(testTakeoverRemote, "Test")); - mMainExecutor.flushAll(); // Takeover should happen when the flag is enabled. - IBinder transitToken = new Binder(); + setFlagsRule.enableFlags(Flags.FLAG_RETURN_ANIMATION_FRAMEWORK_LIBRARY); transitions.requestStartTransition(transitToken, new TransitionRequestInfo(TRANSIT_OPEN, null /* trigger */, null /* remote */)); - TransitionInfo info = new TransitionInfoBuilder(TRANSIT_OPEN) + info = new TransitionInfoBuilder(TRANSIT_OPEN) .addChange(TRANSIT_OPEN).addChange(TRANSIT_CLOSE).build(); transitions.onTransitionReady(transitToken, info, new StubTransaction(), new StubTransaction()); @@ -693,7 +563,7 @@ public class ShellTransitionTests extends ShellTestCase { assertTrue(takeoverRemoteCalled[0]); mDefaultHandler.finishAll(); mMainExecutor.flushAll(); - verify(mOrganizer, times(1)).finishTransition(eq(transitToken), any()); + verify(mOrganizer, times(2)).finishTransition(eq(transitToken), any()); } @Test @@ -1318,18 +1188,11 @@ public class ShellTransitionTests extends ShellTestCase { ShellInit shellInit = new ShellInit(mMainExecutor); final Transitions transitions = new Transitions(mContext, shellInit, mock(ShellController.class), mOrganizer, - mTransactionPool, createTestDisplayController(), mDisplayInsets, - mMainExecutor, mMainHandler, mAnimExecutor, - mock(HomeTransitionObserver.class), - mock(FocusTransitionObserver.class)); - final RecentTasksController mockRecentsTaskController = mock(RecentTasksController.class); - doReturn(mContext).when(mockRecentsTaskController).getContext(); + mTransactionPool, createTestDisplayController(), mMainExecutor, + mMainHandler, mAnimExecutor, mock(HomeTransitionObserver.class)); final RecentsTransitionHandler recentsHandler = - new RecentsTransitionHandler(shellInit, mock(ShellTaskOrganizer.class), transitions, - mockRecentsTaskController, mock(HomeTransitionObserver.class), - mock(DisplayController.class), mock(DesksOrganizer.class)); - recentsHandler.setFinishTransactionSupplier( - () -> mock(SurfaceControl.Transaction.class)); + new RecentsTransitionHandler(shellInit, transitions, + mock(RecentTasksController.class), mock(HomeTransitionObserver.class)); transitions.replaceDefaultHandlerForTest(mDefaultHandler); shellInit.init(); @@ -1363,7 +1226,6 @@ public class ShellTransitionTests extends ShellTestCase { mock(PendingIntent.class) /* intent */, mock(Intent.class) /* fillIn */, new Bundle() /* options */, - null /* wct */, mock(IApplicationThread.class) /* appThread */, recentsListener); final TransitionInfo infoRecents = @@ -1752,51 +1614,41 @@ public class ShellTransitionTests extends ShellTestCase { eq(R.styleable.WindowAnimation_activityCloseEnterAnimation), anyBoolean()); } - @Test - public void testTransientHideWithMoveToTop() { - Transitions transitions = createTestTransitions(); - transitions.replaceDefaultHandlerForTest(mDefaultHandler); - final TransitionAnimation transitionAnimation = new TransitionAnimation(mContext, false, - Transitions.TAG); - spyOn(transitionAnimation); + class ChangeBuilder { + final TransitionInfo.Change mChange; - // Prepare for a TO_BACK transition - final RunningTaskInfo taskInfo = createTaskInfo(1); - final IBinder closeTransition = new Binder(); - final SurfaceControl.Transaction closeTransitionFinishT = - mock(SurfaceControl.Transaction.class); + ChangeBuilder(@WindowManager.TransitionType int mode) { + mChange = new TransitionInfo.Change(null /* token */, createMockSurface(true)); + mChange.setMode(mode); + } - // Start a TO_BACK transition - transitions.requestStartTransition(closeTransition, - new TransitionRequestInfo(TRANSIT_TO_BACK, null /* trigger */, null /* remote */)); - TransitionInfo closeInfo = new TransitionInfoBuilder(TRANSIT_TO_BACK) - .addChange(TRANSIT_TO_BACK, taskInfo) - .build(); - transitions.onTransitionReady(closeTransition, closeInfo, new StubTransaction(), - closeTransitionFinishT); + ChangeBuilder setFlags(@TransitionInfo.ChangeFlags int flags) { + mChange.setFlags(flags); + return this; + } - // Verify that the transition hides the task surface in the finish transaction - verify(closeTransitionFinishT).hide(any()); + ChangeBuilder setTask(RunningTaskInfo taskInfo) { + mChange.setTaskInfo(taskInfo); + return this; + } - // Prepare for a CHANGE transition - final IBinder changeTransition = new Binder(); - final SurfaceControl.Transaction changeTransitionFinishT = - mock(SurfaceControl.Transaction.class); + ChangeBuilder setRotate(int anim) { + return setRotate(Surface.ROTATION_90, anim); + } - // Start a CHANGE transition w/ MOVE_TO_FRONT that is merged into the TO_BACK - mDefaultHandler.setShouldMerge(changeTransition); - transitions.requestStartTransition(changeTransition, - new TransitionRequestInfo(TRANSIT_OPEN, null /* trigger */, null /* remote */)); - TransitionInfo changeInfo = new TransitionInfoBuilder(TRANSIT_OPEN) - .addChange(TRANSIT_CHANGE, FLAG_MOVED_TO_TOP, taskInfo) - .build(); - transitions.onTransitionReady(changeTransition, changeInfo, new StubTransaction(), - changeTransitionFinishT); + ChangeBuilder setRotate() { + return setRotate(ROTATION_ANIMATION_UNSPECIFIED); + } - // Verify that the transition shows the task surface in the finish transaction so that the - // when the original transition finishes, the finish transaction does not clobber the - // visibility of the merged transition - verify(changeTransitionFinishT).show(any()); + ChangeBuilder setRotate(@Surface.Rotation int target, int anim) { + mChange.setRotation(Surface.ROTATION_0, target); + mChange.setRotationAnimation(anim); + return this; + } + + TransitionInfo.Change build() { + return mChange; + } } class TestTransitionHandler implements Transitions.TransitionHandler { @@ -1818,9 +1670,7 @@ public class ShellTransitionTests extends ShellTestCase { @Override public void mergeAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, - @NonNull SurfaceControl.Transaction startT, - @NonNull SurfaceControl.Transaction finishT, - @NonNull IBinder mergeTarget, + @NonNull SurfaceControl.Transaction t, @NonNull IBinder mergeTarget, @NonNull Transitions.TransitionFinishCallback finishCallback) { if (mFinishOnSync && info.getType() == TRANSIT_SLEEP) { for (int i = 0; i < mFinishes.size(); ++i) { @@ -1889,6 +1739,12 @@ public class ShellTransitionTests extends ShellTestCase { .addChange(TRANSIT_OPEN).addChange(TRANSIT_CLOSE).build(); } + private static SurfaceControl createMockSurface(boolean valid) { + SurfaceControl sc = mock(SurfaceControl.class); + doReturn(valid).when(sc).isValid(); + return sc; + } + private static RunningTaskInfo createTaskInfo(int taskId, int windowingMode, int activityType) { RunningTaskInfo taskInfo = new RunningTaskInfo(); taskInfo.taskId = taskId; @@ -1896,7 +1752,6 @@ public class ShellTransitionTests extends ShellTestCase { taskInfo.configuration.windowConfiguration.setWindowingMode(windowingMode); taskInfo.configuration.windowConfiguration.setActivityType(activityType); taskInfo.token = mock(WindowContainerToken.class); - taskInfo.baseIntent = mock(Intent.class); return taskInfo; } @@ -1918,9 +1773,8 @@ public class ShellTransitionTests extends ShellTestCase { private Transitions createTestTransitions() { ShellInit shellInit = new ShellInit(mMainExecutor); final Transitions t = new Transitions(mContext, shellInit, mock(ShellController.class), - mOrganizer, mTransactionPool, createTestDisplayController(), mDisplayInsets, - mMainExecutor, mMainHandler, mAnimExecutor, mock(HomeTransitionObserver.class), - mock(FocusTransitionObserver.class)); + mOrganizer, mTransactionPool, createTestDisplayController(), mMainExecutor, + mMainHandler, mAnimExecutor, mock(HomeTransitionObserver.class)); shellInit.init(); return t; } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/unfold/UnfoldAnimationControllerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/unfold/UnfoldAnimationControllerTest.java index 8fe0c386b7..8196c5ab08 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/unfold/UnfoldAnimationControllerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/unfold/UnfoldAnimationControllerTest.java @@ -35,7 +35,7 @@ import android.view.SurfaceControl.Transaction; import com.android.wm.shell.ShellTestCase; import com.android.wm.shell.TestRunningTaskInfoBuilder; import com.android.wm.shell.TestShellExecutor; -import com.android.wm.shell.shared.TransactionPool; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.unfold.animation.UnfoldTaskAnimator; diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/unfold/UnfoldTransitionHandlerTest.java b/wmshell/tests/unittest/src/com/android/wm/shell/unfold/UnfoldTransitionHandlerTest.java index e28d0acb57..acc0bce5cc 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/unfold/UnfoldTransitionHandlerTest.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/unfold/UnfoldTransitionHandlerTest.java @@ -18,15 +18,13 @@ package com.android.wm.shell.unfold; import static android.view.WindowManager.TRANSIT_CHANGE; import static android.view.WindowManager.TRANSIT_FLAG_KEYGUARD_GOING_AWAY; +import static android.view.WindowManager.TRANSIT_FLAG_PHYSICAL_DISPLAY_SWITCH; import static android.view.WindowManager.TRANSIT_NONE; -import static com.android.wm.shell.unfold.UnfoldTransitionHandler.FINISH_ANIMATION_TIMEOUT_MILLIS; - import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.clearInvocations; -import static org.mockito.Mockito.inOrder; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; @@ -34,19 +32,15 @@ import static org.mockito.Mockito.verify; import android.app.ActivityManager; import android.graphics.Rect; import android.os.Binder; -import android.os.Handler; import android.os.IBinder; -import android.os.test.TestLooper; import android.view.Display; import android.view.SurfaceControl; import android.window.TransitionInfo; import android.window.TransitionRequestInfo; import android.window.WindowContainerTransaction; -import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.TestSyncExecutor; import com.android.wm.shell.common.ShellExecutor; -import com.android.wm.shell.shared.TransactionPool; +import com.android.wm.shell.common.TransactionPool; import com.android.wm.shell.sysui.ShellInit; import com.android.wm.shell.transition.TransitionInfoBuilder; import com.android.wm.shell.transition.Transitions; @@ -56,14 +50,12 @@ import com.android.wm.shell.unfold.animation.SplitTaskUnfoldAnimator; import org.junit.Before; import org.junit.Test; -import org.mockito.InOrder; import java.util.ArrayList; import java.util.List; -import java.util.Optional; import java.util.concurrent.Executor; -public class UnfoldTransitionHandlerTest extends ShellTestCase { +public class UnfoldTransitionHandlerTest { private UnfoldTransitionHandler mUnfoldTransitionHandler; @@ -74,8 +66,6 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { private FullscreenUnfoldTaskAnimator mFullscreenUnfoldTaskAnimator; private SplitTaskUnfoldAnimator mSplitTaskUnfoldAnimator; private Transitions mTransitions; - private TestLooper mTestLooper; - private Handler mHandler; private final IBinder mTransition = new Binder(); @@ -84,9 +74,6 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { final ShellExecutor executor = new TestSyncExecutor(); final ShellInit shellInit = new ShellInit(executor); - mTestLooper = new TestLooper(); - mHandler = new Handler(mTestLooper.getLooper()); - mFullscreenUnfoldTaskAnimator = mock(FullscreenUnfoldTaskAnimator.class); mSplitTaskUnfoldAnimator = mock(SplitTaskUnfoldAnimator.class); mTransitions = mock(Transitions.class); @@ -98,9 +85,7 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { mSplitTaskUnfoldAnimator, mTransactionPool, executor, - mHandler, - mTransitions, - /* bubbleTaskUnfoldTransitionMerger= */ Optional.empty() + mTransitions ); shellInit.init(); @@ -154,34 +139,6 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { assertThat(result).isNull(); } - @Test - public void handleFoldMergeRequest_finishesTheTransition() { - TransitionRequestInfo requestInfo = createUnfoldTransitionRequestInfo(); - mUnfoldTransitionHandler.handleRequest(mTransition, requestInfo); - TransitionFinishCallback finishCallback = mock(TransitionFinishCallback.class); - // Starts the animation, the handler should wait for mShellUnfoldProgressProvider to - // notify about the end of the animation - mUnfoldTransitionHandler.startAnimation( - mTransition, - mock(TransitionInfo.class), - mock(SurfaceControl.Transaction.class), - mock(SurfaceControl.Transaction.class), - finishCallback - ); - - // Send fold transition request - TransitionFinishCallback mergeFinishCallback = mock(TransitionFinishCallback.class); - mUnfoldTransitionHandler.mergeAnimation(new Binder(), createFoldTransitionInfo(), - mock(SurfaceControl.Transaction.class), mock(SurfaceControl.Transaction.class), - mTransition, mergeFinishCallback); - mTestLooper.dispatchAll(); - - // Verify that fold transition is merged into unfold and that unfold is finished - final InOrder inOrder = inOrder(mergeFinishCallback, finishCallback); - inOrder.verify(mergeFinishCallback).onTransitionFinished(any()); - inOrder.verify(finishCallback).onTransitionFinished(any()); - } - @Test public void startAnimation_animationHasNotFinishedYet_doesNotFinishTheTransition() { TransitionRequestInfo requestInfo = createUnfoldTransitionRequestInfo(); @@ -217,22 +174,19 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { } @Test - public void startAnimation_animationHasNotFinishedAfterTimeout_finishesTheTransition() { - TransitionRequestInfo requestInfo = createUnfoldTransitionRequestInfo(); - mUnfoldTransitionHandler.handleRequest(mTransition, requestInfo); + public void startAnimation_differentTransitionFromRequestWithUnfold_startsAnimation() { + mUnfoldTransitionHandler.handleRequest(new Binder(), createNoneTransitionInfo()); TransitionFinishCallback finishCallback = mock(TransitionFinishCallback.class); - mUnfoldTransitionHandler.startAnimation( + + boolean animationStarted = mUnfoldTransitionHandler.startAnimation( mTransition, - mock(TransitionInfo.class), + createUnfoldTransitionInfo(), mock(SurfaceControl.Transaction.class), mock(SurfaceControl.Transaction.class), finishCallback ); - mTestLooper.moveTimeForward(FINISH_ANIMATION_TIMEOUT_MILLIS + 1); - mTestLooper.dispatchAll(); - - verify(finishCallback).onTransitionFinished(any()); + assertThat(animationStarted).isTrue(); } @Test @@ -242,7 +196,7 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { boolean animationStarted = mUnfoldTransitionHandler.startAnimation( mTransition, - createUnfoldTransitionInfo(), + createDisplayResizeTransitionInfo(), mock(SurfaceControl.Transaction.class), mock(SurfaceControl.Transaction.class), finishCallback @@ -293,7 +247,6 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { TransitionFinishCallback finishCallback = mock(TransitionFinishCallback.class); mShellUnfoldProgressProvider.onStateChangeStarted(); - mShellUnfoldProgressProvider.onStateChangeProgress(0.5f); mShellUnfoldProgressProvider.onStateChangeFinished(); mUnfoldTransitionHandler.startAnimation( mTransition, @@ -326,8 +279,6 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { clearInvocations(finishCallback); // Fold - mShellUnfoldProgressProvider.onStateChangeProgress(/* progress= */ 0.0f); - mShellUnfoldProgressProvider.onStateChangeFinished(); mShellUnfoldProgressProvider.onFoldStateChanged(/* isFolded= */ true); // Second unfold @@ -391,7 +342,6 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { new Binder(), new TransitionInfoBuilder(TRANSIT_CHANGE, TRANSIT_FLAG_KEYGUARD_GOING_AWAY).build(), mock(SurfaceControl.Transaction.class), - mock(SurfaceControl.Transaction.class), mTransition, mergeCallback); verify(finishCallback, never()).onTransitionFinished(any()); @@ -401,7 +351,6 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { new Binder(), new TransitionInfoBuilder(TRANSIT_CHANGE).build(), mock(SurfaceControl.Transaction.class), - mock(SurfaceControl.Transaction.class), mTransition, mergeCallback); verify(mergeCallback).onTransitionFinished(any()); @@ -421,19 +370,6 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { triggerTaskInfo, /* remoteTransition= */ null, displayChange, 0 /* flags */); } - private TransitionInfo createFoldTransitionInfo() { - final TransitionInfo transitionInfo = new TransitionInfo(TRANSIT_CHANGE, /* flags= */ 0); - - final TransitionInfo.Change change = new TransitionInfo.Change(/* container= */ null, - /* leash= */ null); - change.setFlags(TransitionInfo.FLAG_IS_DISPLAY); - change.setStartAbsBounds(new Rect(0, 0, 200, 200)); - change.setEndAbsBounds(new Rect(0, 0, 100, 100)); - transitionInfo.addChange(change); - - return transitionInfo; - } - private TransitionRequestInfo createNoneTransitionInfo() { return new TransitionRequestInfo(TRANSIT_NONE, /* triggerTask= */ null, /* remoteTransition= */ null, @@ -482,7 +418,39 @@ public class UnfoldTransitionHandlerTest extends ShellTestCase { } } + private static class TestSyncExecutor implements ShellExecutor { + @Override + public void execute(Runnable runnable) { + runnable.run(); + } + + @Override + public void executeDelayed(Runnable runnable, long delayMillis) { + runnable.run(); + } + + @Override + public void removeCallbacks(Runnable runnable) { + } + + @Override + public boolean hasCallback(Runnable runnable) { + return false; + } + } + private TransitionInfo createUnfoldTransitionInfo() { + TransitionInfo transitionInfo = new TransitionInfo(TRANSIT_CHANGE, /* flags= */ 0); + TransitionInfo.Change change = new TransitionInfo.Change(null, mock(SurfaceControl.class)); + change.setStartAbsBounds(new Rect(0, 0, 10, 10)); + change.setEndAbsBounds(new Rect(0, 0, 100, 100)); + change.setFlags(TransitionInfo.FLAG_IS_DISPLAY); + transitionInfo.addChange(change); + transitionInfo.setFlags(TRANSIT_FLAG_PHYSICAL_DISPLAY_SWITCH); + return transitionInfo; + } + + private TransitionInfo createDisplayResizeTransitionInfo() { TransitionInfo transitionInfo = new TransitionInfo(TRANSIT_CHANGE, /* flags= */ 0); TransitionInfo.Change change = new TransitionInfo.Change(null, mock(SurfaceControl.class)); change.setStartAbsBounds(new Rect(0, 0, 10, 10)); diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModelTests.kt b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModelTests.kt index 84508b934b..ca1e3f173e 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModelTests.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorViewModelTests.kt @@ -13,92 +13,86 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package com.android.wm.shell.windowdecor import android.app.ActivityManager.RunningTaskInfo +import android.app.WindowConfiguration import android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD import android.app.WindowConfiguration.ACTIVITY_TYPE_UNDEFINED import android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM import android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN -import android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW -import android.app.WindowConfiguration.WINDOWING_MODE_PINNED import android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED -import android.app.WindowConfiguration.WindowingMode import android.content.ComponentName import android.content.Context -import android.content.Intent -import android.content.Intent.ACTION_MAIN -import android.graphics.PointF +import android.content.pm.ActivityInfo import android.graphics.Rect -import android.graphics.Region import android.hardware.display.DisplayManager import android.hardware.display.VirtualDisplay import android.hardware.input.InputManager -import android.net.Uri -import android.os.IBinder -import android.os.SystemClock -import android.platform.test.annotations.DisableFlags +import android.os.Handler import android.platform.test.annotations.EnableFlags +import android.platform.test.annotations.RequiresFlagsEnabled +import android.platform.test.flag.junit.CheckFlagsRule +import android.platform.test.flag.junit.DeviceFlagsValueProvider +import android.platform.test.flag.junit.SetFlagsRule import android.testing.AndroidTestingRunner import android.testing.TestableLooper.RunWithLooper +import android.util.SparseArray +import android.view.Choreographer import android.view.Display.DEFAULT_DISPLAY -import android.view.ISystemGestureExclusionListener +import android.view.IWindowManager +import android.view.InputChannel +import android.view.InputMonitor import android.view.InsetsSource import android.view.InsetsState import android.view.KeyEvent -import android.view.MotionEvent -import android.view.PointerIcon -import android.view.Surface import android.view.SurfaceControl import android.view.SurfaceView import android.view.View -import android.view.ViewRootImpl +import android.view.WindowInsets.Type.navigationBars import android.view.WindowInsets.Type.statusBars -import android.window.WindowContainerTransaction -import android.window.WindowContainerTransaction.HierarchyOp import androidx.test.filters.SmallTest -import com.android.dx.mockito.inline.extended.ExtendedMockito +import com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn +import com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession +import com.android.dx.mockito.inline.extended.StaticMockitoSession import com.android.window.flags.Flags import com.android.wm.shell.R +import com.android.wm.shell.RootTaskDisplayAreaOrganizer +import com.android.wm.shell.ShellTaskOrganizer +import com.android.wm.shell.ShellTestCase +import com.android.wm.shell.TestRunningTaskInfoBuilder import com.android.wm.shell.common.DisplayController -import com.android.wm.shell.desktopmode.DesktopImmersiveController -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.InputMethod -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.MinimizeReason -import com.android.wm.shell.desktopmode.DesktopModeEventLogger.Companion.ResizeTrigger +import com.android.wm.shell.common.DisplayInsetsController +import com.android.wm.shell.common.DisplayLayout +import com.android.wm.shell.common.ShellExecutor +import com.android.wm.shell.common.SyncTransactionQueue import com.android.wm.shell.desktopmode.DesktopTasksController -import com.android.wm.shell.desktopmode.DesktopTasksController.SnapPosition -import com.android.wm.shell.desktopmode.common.ToggleTaskSizeInteraction -import com.android.wm.shell.recents.RecentsTransitionStateListener -import com.android.wm.shell.shared.bubbles.BubbleAnythingFlagHelper -import com.android.wm.shell.shared.desktopmode.DesktopModeTransitionSource -import com.android.wm.shell.splitscreen.SplitScreenController -import com.android.wm.shell.util.StubTransaction -import com.google.common.truth.Truth.assertThat -import junit.framework.Assert.assertFalse -import junit.framework.Assert.assertTrue -import junit.framework.Assert.fail -import kotlinx.coroutines.ExperimentalCoroutinesApi -import org.junit.Assume.assumeTrue +import com.android.wm.shell.freeform.FreeformTaskTransitionStarter +import com.android.wm.shell.shared.DesktopModeStatus +import com.android.wm.shell.sysui.KeyguardChangeListener +import com.android.wm.shell.sysui.ShellCommandHandler +import com.android.wm.shell.sysui.ShellController +import com.android.wm.shell.sysui.ShellInit +import com.android.wm.shell.transition.Transitions +import com.android.wm.shell.windowdecor.DesktopModeWindowDecorViewModel.DesktopModeOnInsetsChangedListener +import java.util.Optional +import java.util.function.Supplier +import org.junit.Assert.assertEquals import org.junit.Before +import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith +import org.mockito.Mock import org.mockito.Mockito -import org.mockito.kotlin.KArgumentCaptor +import org.mockito.Mockito.anyInt +import org.mockito.Mockito.mock +import org.mockito.Mockito.never +import org.mockito.Mockito.times +import org.mockito.Mockito.verify import org.mockito.kotlin.any -import org.mockito.kotlin.anyOrNull -import org.mockito.kotlin.argThat import org.mockito.kotlin.argumentCaptor -import org.mockito.kotlin.doNothing -import org.mockito.kotlin.doReturn import org.mockito.kotlin.eq -import org.mockito.kotlin.isNotNull -import org.mockito.kotlin.isNull -import org.mockito.kotlin.mock -import org.mockito.kotlin.never -import org.mockito.kotlin.stub -import org.mockito.kotlin.times -import org.mockito.kotlin.verify +import org.mockito.kotlin.spy import org.mockito.kotlin.whenever import org.mockito.quality.Strictness @@ -106,24 +100,88 @@ import org.mockito.quality.Strictness * Tests of [DesktopModeWindowDecorViewModel] * Usage: atest WMShellUnitTests:DesktopModeWindowDecorViewModelTests */ -@OptIn(kotlinx.coroutines.ExperimentalCoroutinesApi::class) @SmallTest @RunWith(AndroidTestingRunner::class) @RunWithLooper -class DesktopModeWindowDecorViewModelTests : DesktopModeWindowDecorViewModelTestsBase() { +class DesktopModeWindowDecorViewModelTests : ShellTestCase() { + @JvmField + @Rule + val setFlagsRule = SetFlagsRule() + + @JvmField + @Rule + val mCheckFlagsRule: CheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule() + + @Mock private lateinit var mockDesktopModeWindowDecorFactory: + DesktopModeWindowDecoration.Factory + @Mock private lateinit var mockMainHandler: Handler + @Mock private lateinit var mockMainChoreographer: Choreographer + @Mock private lateinit var mockTaskOrganizer: ShellTaskOrganizer + @Mock private lateinit var mockDisplayController: DisplayController + @Mock private lateinit var mockDisplayLayout: DisplayLayout + @Mock private lateinit var displayInsetsController: DisplayInsetsController + @Mock private lateinit var mockSyncQueue: SyncTransactionQueue + @Mock private lateinit var mockDesktopTasksController: DesktopTasksController + @Mock private lateinit var mockInputMonitor: InputMonitor + @Mock private lateinit var mockTransitions: Transitions + @Mock private lateinit var mockInputMonitorFactory: + DesktopModeWindowDecorViewModel.InputMonitorFactory + @Mock private lateinit var mockShellController: ShellController + @Mock private lateinit var mockShellExecutor: ShellExecutor + @Mock private lateinit var mockRootTaskDisplayAreaOrganizer: RootTaskDisplayAreaOrganizer + @Mock private lateinit var mockShellCommandHandler: ShellCommandHandler + @Mock private lateinit var mockWindowManager: IWindowManager + + private val transactionFactory = Supplier<SurfaceControl.Transaction> { + SurfaceControl.Transaction() + } + private val windowDecorByTaskIdSpy = spy(SparseArray<DesktopModeWindowDecoration>()) + + private lateinit var shellInit: ShellInit + private lateinit var desktopModeOnInsetsChangedListener: DesktopModeOnInsetsChangedListener + private lateinit var desktopModeWindowDecorViewModel: DesktopModeWindowDecorViewModel @Before fun setUp() { - mockitoSession = ExtendedMockito.mockitoSession() - .strictness(Strictness.LENIENT) - .spyStatic(DragPositioningCallbackUtility::class.java) - .startMocking() + shellInit = ShellInit(mockShellExecutor) + windowDecorByTaskIdSpy.clear() + desktopModeWindowDecorViewModel = DesktopModeWindowDecorViewModel( + mContext, + mockShellExecutor, + mockMainHandler, + mockMainChoreographer, + shellInit, + mockShellCommandHandler, + mockWindowManager, + mockTaskOrganizer, + mockDisplayController, + mockShellController, + displayInsetsController, + mockSyncQueue, + mockTransitions, + Optional.of(mockDesktopTasksController), + mockDesktopModeWindowDecorFactory, + mockInputMonitorFactory, + transactionFactory, + mockRootTaskDisplayAreaOrganizer, + windowDecorByTaskIdSpy + ) - desktopState.canEnterDesktopMode = true - desktopState.overridesShowAppHandle = false - desktopState.isFreeformEnabled = true + whenever(mockDisplayController.getDisplayLayout(any())).thenReturn(mockDisplayLayout) + whenever(mockDisplayLayout.stableInsets()).thenReturn(STABLE_INSETS) + whenever(mockInputMonitorFactory.create(any(), any())).thenReturn(mockInputMonitor) - setUpCommon() + // InputChannel cannot be mocked because it passes to InputEventReceiver. + val inputChannels = InputChannel.openInputChannelPair(TAG) + inputChannels.first().dispose() + whenever(mockInputMonitor.inputChannel).thenReturn(inputChannels[1]) + + shellInit.init() + + val listenerCaptor = + argumentCaptor<DesktopModeWindowDecorViewModel.DesktopModeOnInsetsChangedListener>() + verify(displayInsetsController).addInsetsChangedListener(anyInt(), listenerCaptor.capture()) + desktopModeOnInsetsChangedListener = listenerCaptor.firstValue } @Test @@ -133,57 +191,87 @@ class DesktopModeWindowDecorViewModelTests : DesktopModeWindowDecorViewModelTest val decoration = setUpMockDecorationForTask(task) onTaskOpening(task, taskSurface) - assertTrue(windowDecorByTaskIdSpy.contains(task.taskId)) task.setWindowingMode(WINDOWING_MODE_UNDEFINED) task.setActivityType(ACTIVITY_TYPE_UNDEFINED) onTaskChanging(task, taskSurface) - assertFalse(windowDecorByTaskIdSpy.contains(task.taskId)) + verify(mockDesktopModeWindowDecorFactory).create( + mContext, + mockDisplayController, + mockTaskOrganizer, + task, + taskSurface, + mockMainHandler, + mockMainChoreographer, + mockSyncQueue, + mockRootTaskDisplayAreaOrganizer + ) verify(decoration).close() } @Test fun testCreateCaptionOnChangeTransitionWhenNecessary() { val task = createTask( - windowingMode = WINDOWING_MODE_UNDEFINED, - activityType = ACTIVITY_TYPE_UNDEFINED, + windowingMode = WINDOWING_MODE_UNDEFINED, + activityType = ACTIVITY_TYPE_UNDEFINED ) val taskSurface = SurfaceControl() setUpMockDecorationForTask(task) onTaskChanging(task, taskSurface) - assertFalse(windowDecorByTaskIdSpy.contains(task.taskId)) + verify(mockDesktopModeWindowDecorFactory, never()).create( + mContext, + mockDisplayController, + mockTaskOrganizer, + task, + taskSurface, + mockMainHandler, + mockMainChoreographer, + mockSyncQueue, + mockRootTaskDisplayAreaOrganizer + ) task.setWindowingMode(WINDOWING_MODE_FREEFORM) task.setActivityType(ACTIVITY_TYPE_STANDARD) onTaskChanging(task, taskSurface) - assertTrue(windowDecorByTaskIdSpy.contains(task.taskId)) + verify(mockDesktopModeWindowDecorFactory, times(1)).create( + mContext, + mockDisplayController, + mockTaskOrganizer, + task, + taskSurface, + mockMainHandler, + mockMainChoreographer, + mockSyncQueue, + mockRootTaskDisplayAreaOrganizer + ) } @Test - @DisableFlags(Flags.FLAG_ENABLE_HANDLE_INPUT_FIX) fun testCreateAndDisposeEventReceiver() { - val decor = createOpenTaskDecoration(windowingMode = WINDOWING_MODE_FREEFORM) - desktopModeWindowDecorViewModel.destroyWindowDecoration(decor.mTaskInfo) + val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) + setUpMockDecorationForTask(task) + + onTaskOpening(task) + desktopModeWindowDecorViewModel.destroyWindowDecoration(task) verify(mockInputMonitorFactory).create(any(), any()) verify(mockInputMonitor).dispose() } @Test - @DisableFlags(Flags.FLAG_ENABLE_HANDLE_INPUT_FIX) fun testEventReceiversOnMultipleDisplays() { val secondaryDisplay = createVirtualDisplay() ?: return val secondaryDisplayId = secondaryDisplay.display.displayId val task = createTask(displayId = DEFAULT_DISPLAY, windowingMode = WINDOWING_MODE_FREEFORM) val secondTask = createTask( - displayId = secondaryDisplayId, - windowingMode = WINDOWING_MODE_FREEFORM, + displayId = secondaryDisplayId, + windowingMode = WINDOWING_MODE_FREEFORM ) val thirdTask = createTask( - displayId = secondaryDisplayId, - windowingMode = WINDOWING_MODE_FREEFORM, + displayId = secondaryDisplayId, + windowingMode = WINDOWING_MODE_FREEFORM ) setUpMockDecorationsForTasks(task, secondTask, thirdTask) @@ -198,43 +286,13 @@ class DesktopModeWindowDecorViewModelTests : DesktopModeWindowDecorViewModelTest verify(mockInputMonitor, times(1)).dispose() } - @Test - fun snapToHalfScreen_callsCorrectPersistenceFunction() { - val task = createTask(displayId = DEFAULT_DISPLAY, windowingMode = WINDOWING_MODE_FREEFORM) - desktopModeWindowDecorViewModel.snapToHalfScreen( - task, - INITIAL_BOUNDS, - DesktopTasksController.SnapPosition.LEFT, - ) - - verify(mockTilingWindowDecoration, times(1)) - .snapToHalfScreen(any(), anyOrNull(), any(), any(), isNull()) - - desktopModeWindowDecorViewModel.snapPersistedTaskToHalfScreen( - task, - INITIAL_BOUNDS, - DesktopTasksController.SnapPosition.LEFT, - ) - - verify(mockTilingWindowDecoration, times(1)) - .snapToHalfScreen(any(), anyOrNull(), any(), any(), isNotNull()) - } - - @Test - fun overviewAnimationChanges_shouldNotifyTiling() { - desktopModeWindowDecorViewModel.onRecentsAnimationEndedToSameDesk() - - verify(mockTilingWindowDecoration, times(1)) - .onOverviewAnimationEndedToSameDesk() - } - @Test fun testBackEventHasRightDisplayId() { val secondaryDisplay = createVirtualDisplay() ?: return val secondaryDisplayId = secondaryDisplay.display.displayId val task = createTask( displayId = secondaryDisplayId, - windowingMode = WINDOWING_MODE_FREEFORM, + windowingMode = WINDOWING_MODE_FREEFORM ) val windowDecor = setUpMockDecorationForTask(task) @@ -244,236 +302,137 @@ class DesktopModeWindowDecorViewModelTests : DesktopModeWindowDecorViewModelTest onClickListenerCaptor.capture(), any(), any(), any()) val onClickListener = onClickListenerCaptor.firstValue - val view = mock<View> { - on { id } doReturn R.id.back_button - } + val view = mock(View::class.java) + whenever(view.id).thenReturn(R.id.back_button) - val inputManager = mock<InputManager>() - spyContext.addMockSystemService(InputManager::class.java, inputManager) + val inputManager = mock(InputManager::class.java) + mContext.addMockSystemService(InputManager::class.java, inputManager) + val freeformTaskTransitionStarter = mock(FreeformTaskTransitionStarter::class.java) desktopModeWindowDecorViewModel - .setFreeformTaskTransitionStarter(mockFreeformTaskTransitionStarter) + .setFreeformTaskTransitionStarter(freeformTaskTransitionStarter) onClickListener.onClick(view) val eventCaptor = argumentCaptor<KeyEvent>() - verify(inputManager, times(2)).injectInputEvent(eventCaptor.capture(), any<Int>()) + verify(inputManager, times(2)).injectInputEvent(eventCaptor.capture(), anyInt()) - assertThat(eventCaptor.firstValue.displayId).isEqualTo(secondaryDisplayId) - assertThat(eventCaptor.secondValue.displayId).isEqualTo(secondaryDisplayId) + assertEquals(secondaryDisplayId, eventCaptor.firstValue.displayId) + assertEquals(secondaryDisplayId, eventCaptor.secondValue.displayId) } @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS) - fun testCloseButtonInFreeform_closeWindow() { - val onClickListenerCaptor = argumentCaptor<View.OnClickListener>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - onCaptionButtonClickListener = onClickListenerCaptor, + fun testCaptionIsNotCreatedWhenKeyguardIsVisible() { + val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN, focused = true) + val keyguardListenerCaptor = argumentCaptor<KeyguardChangeListener>() + verify(mockShellController).addKeyguardChangeListener(keyguardListenerCaptor.capture()) + + keyguardListenerCaptor.firstValue.onKeyguardVisibilityChanged( + true /* visible */, + true /* occluded */, + false /* animatingDismiss */ ) - - val view = mock<View> { - on { id } doReturn R.id.close_window - } - - desktopModeWindowDecorViewModel - .setFreeformTaskTransitionStarter(mockFreeformTaskTransitionStarter) - - onClickListenerCaptor.firstValue.onClick(view) - - verify(mockDesktopTasksController, never()).getNextFocusedTask(decor.mTaskInfo) - - val transactionCaptor = argumentCaptor<WindowContainerTransaction>() - verify(mockFreeformTaskTransitionStarter).startRemoveTransition(transactionCaptor.capture()) - val wct = transactionCaptor.firstValue - - assertThat(wct.hierarchyOps).hasSize(1) - val hierarchyOp = wct.hierarchyOps[0] - assertThat(hierarchyOp.type).isEqualTo(HierarchyOp.HIERARCHY_OP_TYPE_REMOVE_TASK) - assertThat(hierarchyOp.container).isEqualTo(decor.mTaskInfo.token.asBinder()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS) - fun testCloseButtonInFreeform_withStateChangeAnnouncementFlag_closeWindow() { - val onClickListenerCaptor = argumentCaptor<View.OnClickListener>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - onCaptionButtonClickListener = onClickListenerCaptor, - ) - - val view = mock<View> { - on { id } doReturn R.id.close_window - } - - desktopModeWindowDecorViewModel - .setFreeformTaskTransitionStarter(mockFreeformTaskTransitionStarter) - - onClickListenerCaptor.firstValue.onClick(view) - - verify(mockDesktopTasksController).getNextFocusedTask(decor.mTaskInfo) - - val transactionCaptor = argumentCaptor<WindowContainerTransaction>() - verify(mockFreeformTaskTransitionStarter).startRemoveTransition(transactionCaptor.capture()) - val wct = transactionCaptor.firstValue - - assertThat(wct.hierarchyOps).hasSize(1) - val hierarchyOp = wct.hierarchyOps[0] - assertThat(hierarchyOp.type).isEqualTo(HierarchyOp.HIERARCHY_OP_TYPE_REMOVE_TASK) - assertThat(hierarchyOp.container).isEqualTo(decor.mTaskInfo.token.asBinder()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_MINIMIZE_BUTTON) - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS) - fun testMinimizeButtonInFreeform_minimizeWindow() { - val onClickListenerCaptor = argumentCaptor<View.OnClickListener>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - onCaptionButtonClickListener = onClickListenerCaptor, - ) - - val view = mock<View> { - on { id } doReturn R.id.minimize_window - } - - desktopModeWindowDecorViewModel - .setFreeformTaskTransitionStarter(mockFreeformTaskTransitionStarter) - - onClickListenerCaptor.firstValue.onClick(view) - - verify(mockDesktopTasksController, never()).getNextFocusedTask(decor.mTaskInfo) - verify(mockDesktopTasksController) - .minimizeTask(decor.mTaskInfo, MinimizeReason.MINIMIZE_BUTTON) - } - - @Test - @EnableFlags( - Flags.FLAG_ENABLE_MINIMIZE_BUTTON, - Flags.FLAG_ENABLE_DESKTOP_APP_HEADER_STATE_CHANGE_ANNOUNCEMENTS - ) - fun testMinimizeButtonInFreeform_withStateChangeAnnouncementFlag_minimizeWindow() { - val onClickListenerCaptor = argumentCaptor<View.OnClickListener>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - onCaptionButtonClickListener = onClickListenerCaptor, - ) - - val view = mock<View> { - on { id } doReturn R.id.minimize_window - } - - desktopModeWindowDecorViewModel - .setFreeformTaskTransitionStarter(mockFreeformTaskTransitionStarter) - - onClickListenerCaptor.firstValue.onClick(view) - - verify(mockDesktopTasksController).getNextFocusedTask(decor.mTaskInfo) - verify(mockDesktopTasksController) - .minimizeTask(decor.mTaskInfo, MinimizeReason.MINIMIZE_BUTTON) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun testDecorationIsNotCreatedForNoDisplayActivities() { - val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN).apply { - isTopActivityNoDisplay = true - } onTaskOpening(task) - assertFalse(windowDecorByTaskIdSpy.contains(task.taskId)) + task.setWindowingMode(WINDOWING_MODE_UNDEFINED) + task.setWindowingMode(ACTIVITY_TYPE_UNDEFINED) + onTaskChanging(task) + + verify(mockDesktopModeWindowDecorFactory, never()) + .create(any(), any(), any(), eq(task), any(), any(), any(), any(), any()) } @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) fun testDecorationIsNotCreatedForTopTranslucentActivities() { - val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN).apply { - isActivityStackTransparent = true + setFlagsRule.enableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) + val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN, focused = true).apply { + isTopActivityTransparent = true numActivities = 1 } onTaskOpening(task) - assertFalse(windowDecorByTaskIdSpy.contains(task.taskId)) + verify(mockDesktopModeWindowDecorFactory, never()) + .create(any(), any(), any(), eq(task), any(), any(), any(), any(), any()) } @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) fun testDecorationIsNotCreatedForSystemUIActivities() { + val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN, focused = true) + // Set task as systemUI package val systemUIPackageName = context.resources.getString( com.android.internal.R.string.config_systemUi) val baseComponent = ComponentName(systemUIPackageName, /* class */ "") - val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN).apply { - baseActivity = baseComponent - } + task.baseActivity = baseComponent onTaskOpening(task) - assertFalse(windowDecorByTaskIdSpy.contains(task.taskId)) + verify(mockDesktopModeWindowDecorFactory, never()) + .create(any(), any(), any(), eq(task), any(), any(), any(), any(), any()) } @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODALS_POLICY) - fun testDecorationIsNotCreatedForDefaultHomePackage() { - val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN).apply { - baseActivity = homeComponentName - } + @RequiresFlagsEnabled(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_IMMERSIVE_HANDLE_HIDING) + fun testRelayoutRunsWhenStatusBarsInsetsSourceVisibilityChanges() { + val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM, focused = true) + val decoration = setUpMockDecorationForTask(task) onTaskOpening(task) - assertFalse(windowDecorByTaskIdSpy.contains(task.taskId)) - } - - @Test - fun testOnTaskInfoChanged_tilingNotified() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - setUpMockDecorationsForTasks(task) - - onTaskOpening(task) - desktopModeWindowDecorViewModel.onTaskInfoChanged(task) - - verify(mockTilingWindowDecoration).onTaskInfoChange(task) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_IMMERSIVE_HANDLE_HIDING) - fun testInsetsStateChanged_notifiesAllDecorsInDisplay() { - val task1 = createTask(windowingMode = WINDOWING_MODE_FREEFORM, displayId = 1) - val decoration1 = setUpMockDecorationForTask(task1) - onTaskOpening(task1) - val task2 = createTask(windowingMode = WINDOWING_MODE_FREEFORM, displayId = 2) - val decoration2 = setUpMockDecorationForTask(task2) - onTaskOpening(task2) - val task3 = createTask(windowingMode = WINDOWING_MODE_FREEFORM, displayId = 2) - val decoration3 = setUpMockDecorationForTask(task3) - onTaskOpening(task3) - // Add status bar insets source - val insetsState = InsetsState().apply { - addSource(InsetsSource(0 /* id */, statusBars()).apply { - isVisible = false - }) - } - desktopModeOnInsetsChangedListener.insetsChanged(2 /* displayId */, insetsState) + val insetsState = InsetsState() + val statusBarInsetsSourceId = 0 + val statusBarInsetsSource = InsetsSource(statusBarInsetsSourceId, statusBars()) + statusBarInsetsSource.isVisible = false + insetsState.addSource(statusBarInsetsSource) - verify(decoration1, never()).onInsetsStateChanged(insetsState) - verify(decoration2).onInsetsStateChanged(insetsState) - verify(decoration3).onInsetsStateChanged(insetsState) + desktopModeOnInsetsChangedListener.insetsChanged(insetsState) + + // Verify relayout occurs when status bar inset visibility changes + verify(decoration, times(1)).relayout(task) } @Test - fun testKeyguardState_notifiesAllDecors() { - val decoration1 = createOpenTaskDecoration(windowingMode = WINDOWING_MODE_FREEFORM) - val decoration2 = createOpenTaskDecoration(windowingMode = WINDOWING_MODE_FREEFORM) - val decoration3 = createOpenTaskDecoration(windowingMode = WINDOWING_MODE_FREEFORM) + @RequiresFlagsEnabled(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_IMMERSIVE_HANDLE_HIDING) + fun testRelayoutDoesNotRunWhenNonStatusBarsInsetsSourceVisibilityChanges() { + val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM, focused = true) + val decoration = setUpMockDecorationForTask(task) - desktopModeOnKeyguardChangedListener - .onKeyguardVisibilityChanged(true /* visible */, true /* occluded */, - false /* animatingDismiss */) + onTaskOpening(task) - verify(decoration1).onKeyguardStateChanged(true /* visible */, true /* occluded */) - verify(decoration2).onKeyguardStateChanged(true /* visible */, true /* occluded */) - verify(decoration3).onKeyguardStateChanged(true /* visible */, true /* occluded */) + // Add navigation bar insets source + val insetsState = InsetsState() + val navigationBarInsetsSourceId = 1 + val navigationBarInsetsSource = InsetsSource(navigationBarInsetsSourceId, navigationBars()) + navigationBarInsetsSource.isVisible = false + insetsState.addSource(navigationBarInsetsSource) + + desktopModeOnInsetsChangedListener.insetsChanged(insetsState) + + // Verify relayout does not occur when non-status bar inset changes visibility + verify(decoration, never()).relayout(task) + } + + @Test + @RequiresFlagsEnabled(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_IMMERSIVE_HANDLE_HIDING) + fun testRelayoutDoesNotRunWhenNonStatusBarsInsetSourceVisibilityDoesNotChange() { + val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM, focused = true) + val decoration = setUpMockDecorationForTask(task) + + onTaskOpening(task) + + // Add status bar insets source + val insetsState = InsetsState() + val statusBarInsetsSourceId = 0 + val statusBarInsetsSource = InsetsSource(statusBarInsetsSourceId, statusBars()) + statusBarInsetsSource.isVisible = false + insetsState.addSource(statusBarInsetsSource) + + desktopModeOnInsetsChangedListener.insetsChanged(insetsState) + desktopModeOnInsetsChangedListener.insetsChanged(insetsState) + + // Verify relayout runs only once when status bar inset visibility changes. + verify(decoration, times(1)).relayout(task) } @Test @@ -491,1111 +450,119 @@ class DesktopModeWindowDecorViewModelTests : DesktopModeWindowDecorViewModelTest @Test @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) - fun testWindowDecor_deviceEligibleForDesktopMode_decorCreated() { - val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN) - setUpMockDecorationsForTasks(task) + fun testWindowDecor_desktopModeUnsupportedOnDevice_decorNotCreated() { + val mockitoSession: StaticMockitoSession = mockitoSession() + .strictness(Strictness.LENIENT) + .spyStatic(DesktopModeStatus::class.java) + .startMocking() + try { + // Simulate default enforce device restrictions system property + whenever(DesktopModeStatus.enforceDeviceRestrictions()).thenReturn(true) - onTaskOpening(task) - assertTrue(task.taskId in windowDecorByTaskIdSpy) - } + val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN, focused = true) + // Simulate device that doesn't support desktop mode + doReturn(false).`when` { DesktopModeStatus.isDesktopModeSupported(any()) } - @Test - fun testOnDecorMaximizedOrRestored_togglesTaskSize_maximize() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor, - ) - - windowDecorationActionsCaptor.firstValue.onMaximizeOrRestore( - decor.mTaskInfo.taskId, - InputMethod.UNKNOWN_INPUT_METHOD - ) - - verify(mockDesktopTasksController).toggleDesktopTaskSize( - decor.mTaskInfo, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.MAXIMIZE_MENU_TO_MAXIMIZE, - InputMethod.UNKNOWN_INPUT_METHOD, - ) - ) - } - - @Test - fun testOnDecorMaximizedOrRestored_togglesTaskSize_maximizeFromMaximizedSize() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor - ) - val movedMaximizedBounds = Rect(STABLE_BOUNDS) - movedMaximizedBounds.offset(10, 10) - decor.mTaskInfo.configuration.windowConfiguration.bounds.set(movedMaximizedBounds) - - windowDecorationActionsCaptor.firstValue.onMaximizeOrRestore( - decor.mTaskInfo.taskId, - InputMethod.UNKNOWN_INPUT_METHOD - ) - - verify(mockDesktopTasksController).toggleDesktopTaskSize( - decor.mTaskInfo, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.MAXIMIZE_MENU_TO_MAXIMIZE, - InputMethod.UNKNOWN_INPUT_METHOD, - ) - ) - } - - @Test - fun testOnDecorMaximizedOrRestored_togglesTaskSize_restore() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor, - ) - decor.mTaskInfo.configuration.windowConfiguration.bounds.set(STABLE_BOUNDS) - - windowDecorationActionsCaptor.firstValue.onMaximizeOrRestore( - decor.mTaskInfo.taskId, - InputMethod.UNKNOWN_INPUT_METHOD - ) - - verify(mockDesktopTasksController).toggleDesktopTaskSize( - decor.mTaskInfo, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.RESTORE, - ToggleTaskSizeInteraction.Source.MAXIMIZE_MENU_TO_RESTORE, - InputMethod.UNKNOWN_INPUT_METHOD, - ) - ) - } - - @Test - fun testOnDecorSnappedLeft_snapResizes() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor, - ) - - windowDecorationActionsCaptor.firstValue.onLeftSnap( - decor.mTaskInfo.taskId, - InputMethod.UNKNOWN_INPUT_METHOD - ) - - verify(mockDesktopTasksController).handleInstantSnapResizingTask( - eq(decor.mTaskInfo), - eq(SnapPosition.LEFT), - eq(ResizeTrigger.SNAP_LEFT_MENU), - eq(InputMethod.UNKNOWN_INPUT_METHOD), - ) - } - - @Test - @DisableFlags(Flags.FLAG_DISABLE_NON_RESIZABLE_APP_SNAP_RESIZING) - fun testOnSnapResizeLeft_nonResizable_decorSnappedLeft() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor - ).apply { - mTaskInfo.isResizeable = false + onTaskOpening(task) + verify(mockDesktopModeWindowDecorFactory, never()) + .create(any(), any(), any(), eq(task), any(), any(), any(), any(), any()) + } finally { + mockitoSession.finishMocking() } - - windowDecorationActionsCaptor.firstValue.onLeftSnap( - decor.mTaskInfo.taskId, - InputMethod.UNKNOWN_INPUT_METHOD - ) - - verify(mockDesktopTasksController).handleInstantSnapResizingTask( - eq(decor.mTaskInfo), - eq(SnapPosition.LEFT), - eq(ResizeTrigger.SNAP_LEFT_MENU), - eq(InputMethod.UNKNOWN_INPUT_METHOD), - ) } @Test - @EnableFlags(Flags.FLAG_DISABLE_NON_RESIZABLE_APP_SNAP_RESIZING) - fun testOnSnapResizeLeft_nonResizable_decorNotSnapped() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor, - ).apply { - mTaskInfo.isResizeable = false + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) + fun testWindowDecor_desktopModeUnsupportedOnDevice_deviceRestrictionsOverridden_decorCreated() { + val mockitoSession: StaticMockitoSession = mockitoSession() + .strictness(Strictness.LENIENT) + .spyStatic(DesktopModeStatus::class.java) + .startMocking() + try { + // Simulate enforce device restrictions system property overridden to false + whenever(DesktopModeStatus.enforceDeviceRestrictions()).thenReturn(false) + // Simulate device that doesn't support desktop mode + doReturn(false).`when` { DesktopModeStatus.isDesktopModeSupported(any()) } + + val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN, focused = true) + setUpMockDecorationsForTasks(task) + + onTaskOpening(task) + verify(mockDesktopModeWindowDecorFactory) + .create(any(), any(), any(), eq(task), any(), any(), any(), any(), any()) + } finally { + mockitoSession.finishMocking() } - - val currentBounds = decor.mTaskInfo.configuration.windowConfiguration.bounds - windowDecorationActionsCaptor.firstValue.onLeftSnap( - decor.mTaskInfo.taskId, - InputMethod.UNKNOWN_INPUT_METHOD - ) - - verify(mockDesktopTasksController, never()) - .snapToHalfScreen( - eq(decor.mTaskInfo), any(), eq(currentBounds), eq(SnapPosition.LEFT), - eq(ResizeTrigger.MAXIMIZE_BUTTON), - eq(InputMethod.UNKNOWN_INPUT_METHOD), - ) } @Test - fun testOnDecorSnappedRight_snapResizes() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor - ) + @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_MODE) + fun testWindowDecor_deviceSupportsDesktopMode_decorCreated() { + val mockitoSession: StaticMockitoSession = mockitoSession() + .strictness(Strictness.LENIENT) + .spyStatic(DesktopModeStatus::class.java) + .startMocking() + try { + // Simulate default enforce device restrictions system property + whenever(DesktopModeStatus.enforceDeviceRestrictions()).thenReturn(true) - windowDecorationActionsCaptor.firstValue.onRightSnap( - decor.mTaskInfo.taskId, - InputMethod.UNKNOWN_INPUT_METHOD - ) + val task = createTask(windowingMode = WINDOWING_MODE_FULLSCREEN, focused = true) + doReturn(true).`when` { DesktopModeStatus.isDesktopModeSupported(any()) } + setUpMockDecorationsForTasks(task) - verify(mockDesktopTasksController).handleInstantSnapResizingTask( - eq(decor.mTaskInfo), - eq(SnapPosition.RIGHT), - eq(ResizeTrigger.SNAP_RIGHT_MENU), - eq(InputMethod.UNKNOWN_INPUT_METHOD), - ) - } - - @Test - @DisableFlags(Flags.FLAG_DISABLE_NON_RESIZABLE_APP_SNAP_RESIZING) - fun testOnSnapResizeRight_nonResizable_decorSnappedRight() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor, - ).apply { - mTaskInfo.isResizeable = false + onTaskOpening(task) + verify(mockDesktopModeWindowDecorFactory) + .create(any(), any(), any(), eq(task), any(), any(), any(), any(), any()) + } finally { + mockitoSession.finishMocking() } + } - windowDecorationActionsCaptor.firstValue.onRightSnap( - decor.mTaskInfo.taskId, - InputMethod.UNKNOWN_INPUT_METHOD - ) - - verify(mockDesktopTasksController).handleInstantSnapResizingTask( - eq(decor.mTaskInfo), - eq(SnapPosition.RIGHT), - eq(ResizeTrigger.SNAP_RIGHT_MENU), - eq(InputMethod.UNKNOWN_INPUT_METHOD), + private fun onTaskOpening(task: RunningTaskInfo, leash: SurfaceControl = SurfaceControl()) { + desktopModeWindowDecorViewModel.onTaskOpening( + task, + leash, + SurfaceControl.Transaction(), + SurfaceControl.Transaction() ) } - @Test - @EnableFlags(Flags.FLAG_DISABLE_NON_RESIZABLE_APP_SNAP_RESIZING) - fun testOnSnapResizeRight_nonResizable_decorNotSnapped() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor, - ).apply { - mTaskInfo.isResizeable = false - } - - val currentBounds = decor.mTaskInfo.configuration.windowConfiguration.bounds - windowDecorationActionsCaptor.firstValue.onRightSnap( - decor.mTaskInfo.taskId, - InputMethod.UNKNOWN_INPUT_METHOD - ) - - verify(mockDesktopTasksController, never()) - .snapToHalfScreen( - eq(decor.mTaskInfo), any(), eq(currentBounds), eq(SnapPosition.RIGHT), - eq(ResizeTrigger.MAXIMIZE_BUTTON), - eq(InputMethod.UNKNOWN_INPUT_METHOD), - ) - } - - @Test - fun testDecor_onClickToDesktop_movesToDesktopWithSource() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FULLSCREEN, - windowDecorationActions = windowDecorationActionsCaptor, - ) - - windowDecorationActionsCaptor.firstValue.onToDesktop( - decor.mTaskInfo.taskId, - DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON - ) - - verify(mockDesktopTasksController).moveTaskToDefaultDeskAndActivate( - eq(decor.mTaskInfo.taskId), - any(), - eq(DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON), - anyOrNull(), - anyOrNull(), - ) - } - - @Test - fun testDecor_onClickToDesktop_addsCaptionInsets() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FULLSCREEN, - windowDecorationActions = windowDecorationActionsCaptor, - ) - - windowDecorationActionsCaptor.firstValue.onToDesktop( - decor.mTaskInfo.taskId, - DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON - ) - - verify(decor).addCaptionInset(any()) - } - - @Test - fun testDecor_onClickToFullscreen_isFreeform_movesToFullscreen() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor, - ) - - windowDecorationActionsCaptor.firstValue.onToFullscreen(decor.mTaskInfo.taskId) - - verify(mockDesktopTasksController).moveToFullscreen( - decor.mTaskInfo.taskId, - DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON, - remoteTransition = null, - ) - } - - @Test - fun testDecor_onClickToFullscreen_isSplit_movesToFullscreen() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_MULTI_WINDOW, - windowDecorationActions = windowDecorationActionsCaptor - ) - - windowDecorationActionsCaptor.firstValue.onToFullscreen(decor.mTaskInfo.taskId) - - verify(mockSplitScreenController).moveTaskToFullscreen( - decor.mTaskInfo.taskId, - SplitScreenController.EXIT_REASON_DESKTOP_MODE, - ) - } - - @Test - fun testDecor_onClickToSplitScreen_requestsSplit() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_MULTI_WINDOW, - windowDecorationActions = windowDecorationActionsCaptor - ) - - windowDecorationActionsCaptor.firstValue.onToSplitScreen(decor.mTaskInfo.taskId) - - verify(mockDesktopTasksController).requestSplit(decor.mTaskInfo, leftOrTop = false) - } - - @Test - fun testDecor_onClickToOpenBrowser_opensBrowser() { - doNothing().whenever(spyContext).startActivity(any()) - val uri = Uri.parse("https://www.google.com") - val intent = Intent(ACTION_MAIN, uri) - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FULLSCREEN, - windowDecorationActions = windowDecorationActionsCaptor - ) - - windowDecorationActionsCaptor.firstValue.onOpenInBrowser(decor.mTaskInfo.taskId, intent) - - verify(spyContext).startActivityAsUser(argThat { intent -> - uri.equals(intent.data) - && intent.action == ACTION_MAIN - }, any(), eq(mockUserHandle)) - } - - @OptIn(ExperimentalCoroutinesApi::class) - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_HANDLE_EDUCATION) - fun testDecor_createWindowDecoration_setsAppHandleEducationTooltipClickCallbacks() { - desktopState.canEnterDesktopMode = true - - shellInit.init() - - verify( - mockAppHandleEducationController, - times(1), - ).setAppHandleEducationTooltipCallbacks(any(), any()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_HANDLE_EDUCATION) - fun testDecor_invokeOpenHandleMenuCallback_openHandleMenu() { - desktopState.canEnterDesktopMode = true - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val decor = setUpMockDecorationForTask(task) - val openHandleMenuCallbackCaptor = argumentCaptor<(Int) -> Unit>() - // Set task as gmail - val gmailPackageName = "com.google.android.gm" - val baseComponent = ComponentName(gmailPackageName, /* class */ "") - task.baseActivity = baseComponent - - onTaskOpening(task) - verify( - mockAppHandleEducationController, - times(1), - ).setAppHandleEducationTooltipCallbacks(openHandleMenuCallbackCaptor.capture(), any()) - openHandleMenuCallbackCaptor.lastValue.invoke(task.taskId) - bgExecutor.flushAll() - testShellExecutor.flushAll() - - verify(decor, times(1)).createHandleMenu(any<Boolean>()) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_HANDLE_EDUCATION) - fun testDecor_openTaskWithFlagDisabled_doNotOpenHandleMenu() { - desktopState.canEnterDesktopMode = true - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - setUpMockDecorationForTask(task) - val openHandleMenuCallbackCaptor = argumentCaptor<(Int) -> Unit>() - // Set task as gmail - val gmailPackageName = "com.google.android.gm" - val baseComponent = ComponentName(gmailPackageName, /* class */ "") - task.baseActivity = baseComponent - - onTaskOpening(task) - verify( - mockAppHandleEducationController, - never(), - ).setAppHandleEducationTooltipCallbacks(openHandleMenuCallbackCaptor.capture(), any()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_HANDLE_EDUCATION) - fun testDecor_invokeOnToDesktopCallback_setsAppHandleEducationTooltipClickCallbacks() { - desktopState.canEnterDesktopMode = true - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - setUpMockDecorationsForTasks(task) - onTaskOpening(task) - val onToDesktopCallbackCaptor = argumentCaptor<(Int, DesktopModeTransitionSource) -> Unit>() - - verify( - mockAppHandleEducationController, - times(1), - ).setAppHandleEducationTooltipCallbacks(any(), onToDesktopCallbackCaptor.capture()) - onToDesktopCallbackCaptor.lastValue.invoke( - task.taskId, - DesktopModeTransitionSource.APP_HANDLE_MENU_BUTTON, - ) - - verify(mockDesktopTasksController, times(1)) - .moveTaskToDefaultDeskAndActivate(any(), any(), any(), anyOrNull(), anyOrNull()) - } - - @Test - fun testOnDisplayRotation_tasksOutOfValidArea_taskBoundsUpdated() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val secondTask = - createTask(displayId = task.displayId, windowingMode = WINDOWING_MODE_FREEFORM) - val thirdTask = - createTask(displayId = task.displayId, windowingMode = WINDOWING_MODE_FREEFORM) - - ExtendedMockito.doReturn(true).`when` { - DragPositioningCallbackUtility.snapTaskBoundsIfNecessary(any(), any()) - } - setUpMockDecorationsForTasks(task, secondTask, thirdTask) - - onTaskOpening(task) - onTaskOpening(secondTask) - onTaskOpening(thirdTask) - - val wct = mock<WindowContainerTransaction>() - - displayChangingListener.onDisplayChange( - task.displayId, Surface.ROTATION_0, Surface.ROTATION_90, null, wct - ) - - verify(wct).setBounds(eq(task.token), any()) - verify(wct).setBounds(eq(secondTask.token), any()) - verify(wct).setBounds(eq(thirdTask.token), any()) - } - - @Test - fun testOnDisplayRotation_taskInValidArea_taskBoundsNotUpdated() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val secondTask = - createTask(displayId = task.displayId, windowingMode = WINDOWING_MODE_FREEFORM) - val thirdTask = - createTask(displayId = task.displayId, windowingMode = WINDOWING_MODE_FREEFORM) - - ExtendedMockito.doReturn(false).`when` { - DragPositioningCallbackUtility.snapTaskBoundsIfNecessary(any(), any()) - } - setUpMockDecorationsForTasks(task, secondTask, thirdTask) - - onTaskOpening(task) - onTaskOpening(secondTask) - onTaskOpening(thirdTask) - - val wct = mock<WindowContainerTransaction>() - displayChangingListener.onDisplayChange( - task.displayId, Surface.ROTATION_0, Surface.ROTATION_90, null, wct - ) - - verify(wct, never()).setBounds(eq(task.token), any()) - verify(wct, never()).setBounds(eq(secondTask.token), any()) - verify(wct, never()).setBounds(eq(thirdTask.token), any()) - } - - @Test - fun testOnDisplayRotation_sameOrientationRotation_taskBoundsNotUpdated() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val secondTask = - createTask(displayId = task.displayId, windowingMode = WINDOWING_MODE_FREEFORM) - val thirdTask = - createTask(displayId = task.displayId, windowingMode = WINDOWING_MODE_FREEFORM) - - setUpMockDecorationsForTasks(task, secondTask, thirdTask) - - onTaskOpening(task) - onTaskOpening(secondTask) - onTaskOpening(thirdTask) - - val wct = mock<WindowContainerTransaction>() - displayChangingListener.onDisplayChange( - task.displayId, Surface.ROTATION_0, Surface.ROTATION_180, null, wct - ) - - verify(wct, never()).setBounds(eq(task.token), any()) - verify(wct, never()).setBounds(eq(secondTask.token), any()) - verify(wct, never()).setBounds(eq(thirdTask.token), any()) - } - - @Test - fun testOnDisplayRotation_differentDisplayId_taskBoundsNotUpdated() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val secondTask = createTask(displayId = -2, windowingMode = WINDOWING_MODE_FREEFORM) - val thirdTask = createTask(displayId = -3, windowingMode = WINDOWING_MODE_FREEFORM) - - ExtendedMockito.doReturn(true).`when` { - DragPositioningCallbackUtility.snapTaskBoundsIfNecessary(any(), any()) - } - setUpMockDecorationsForTasks(task, secondTask, thirdTask) - - onTaskOpening(task) - onTaskOpening(secondTask) - onTaskOpening(thirdTask) - - val wct = mock<WindowContainerTransaction>() - displayChangingListener.onDisplayChange( - task.displayId, Surface.ROTATION_0, Surface.ROTATION_90, null, wct - ) - - verify(wct).setBounds(eq(task.token), any()) - verify(wct, never()).setBounds(eq(secondTask.token), any()) - verify(wct, never()).setBounds(eq(thirdTask.token), any()) - } - - @Test - fun testOnDisplayRotation_nonFreeformTask_taskBoundsNotUpdated() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val secondTask = createTask(displayId = -2, windowingMode = WINDOWING_MODE_FULLSCREEN) - val thirdTask = createTask(displayId = -3, windowingMode = WINDOWING_MODE_PINNED) - - ExtendedMockito.doReturn(true).`when` { - DragPositioningCallbackUtility.snapTaskBoundsIfNecessary(any(), any()) - } - setUpMockDecorationsForTasks(task, secondTask, thirdTask) - - onTaskOpening(task) - onTaskOpening(secondTask) - onTaskOpening(thirdTask) - - val wct = mock<WindowContainerTransaction>() - displayChangingListener.onDisplayChange( - task.displayId, Surface.ROTATION_0, Surface.ROTATION_90, null, wct - ) - - verify(wct).setBounds(eq(task.token), any()) - verify(wct, never()).setBounds(eq(secondTask.token), any()) - verify(wct, never()).setBounds(eq(thirdTask.token), any()) - } - - @Test - fun testCloseButtonInFreeform_closeWindow_ignoreMoveEventsWithoutBoundsChange() { - val onClickListenerCaptor = argumentCaptor<View.OnClickListener>() - val onTouchListenerCaptor = argumentCaptor<View.OnTouchListener>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - onCaptionButtonClickListener = onClickListenerCaptor, - onCaptionButtonTouchListener = onTouchListenerCaptor, - ) - - mockTaskPositioner.stub { - on { onDragPositioningStart(any(), any(), any(), any()) } doReturn INITIAL_BOUNDS - on { onDragPositioningMove(any(), any(), any()) } doReturn INITIAL_BOUNDS - on { onDragPositioningEnd(any(), any(), any()) } doReturn INITIAL_BOUNDS - } - - val viewRootImpl = mock<ViewRootImpl> { - on { inputToken } doReturn null - } - val view = mock<View> { - on { id } doReturn R.id.close_window - on { getViewRootImpl() } doReturn viewRootImpl - } - - desktopModeWindowDecorViewModel - .setFreeformTaskTransitionStarter(mockFreeformTaskTransitionStarter) - - onTouchListenerCaptor.firstValue.onTouch(view, - MotionEvent.obtain(SystemClock.uptimeMillis(), SystemClock.uptimeMillis(), - MotionEvent.ACTION_DOWN, /* x= */ 0f, /* y= */ 0f, /* metaState= */ 0)) - onTouchListenerCaptor.firstValue.onTouch(view, - MotionEvent.obtain(SystemClock.uptimeMillis(), SystemClock.uptimeMillis(), - MotionEvent.ACTION_MOVE, /* x= */ 0f, /* y= */ 0f, /* metaState= */ 0)) - onTouchListenerCaptor.firstValue.onTouch(view, - MotionEvent.obtain(SystemClock.uptimeMillis(), SystemClock.uptimeMillis(), - MotionEvent.ACTION_UP, /* x= */ 0f, /* y= */ 0f, /* metaState= */ 0)) - onClickListenerCaptor.firstValue.onClick(view) - - val transactionCaptor = argumentCaptor<WindowContainerTransaction>() - verify(mockFreeformTaskTransitionStarter).startRemoveTransition(transactionCaptor.capture()) - val wct = transactionCaptor.firstValue - - - assertThat(wct.hierarchyOps).hasSize(1) - val hierarchyOp = wct.hierarchyOps[0] - assertThat(hierarchyOp.type).isEqualTo(HierarchyOp.HIERARCHY_OP_TYPE_REMOVE_TASK) - assertThat(hierarchyOp.container).isEqualTo(decor.mTaskInfo.token.asBinder()) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun testImmersiveRestoreButtonClick_exitsImmersiveMode() { - val onClickListenerCaptor = argumentCaptor<View.OnClickListener>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - onCaptionButtonClickListener = onClickListenerCaptor, - requestingImmersive = true, - ) - val view = mock<View> { - on { id } doReturn R.id.maximize_window - } - mockDesktopRepository.stub { - on { isTaskInFullImmersiveState(decor.mTaskInfo.taskId) } doReturn true - } - - onClickListenerCaptor.firstValue.onClick(view) - - verify(mockDesktopImmersiveController).moveTaskToNonImmersive( - decor.mTaskInfo, - DesktopImmersiveController.ExitReason.USER_INTERACTION, - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun testMaximizeButtonClick_notRequestingImmersive_togglesDesktopTaskSize() { - val onClickListenerCaptor = argumentCaptor<View.OnClickListener>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - onCaptionButtonClickListener = onClickListenerCaptor, - requestingImmersive = false, - ) - val view = mock<View> { - on { id } doReturn R.id.maximize_window - } - - onClickListenerCaptor.firstValue.onClick(view) - - verify(mockDesktopTasksController) - .toggleDesktopTaskSize( - decor.mTaskInfo, - ToggleTaskSizeInteraction( - ToggleTaskSizeInteraction.Direction.MAXIMIZE, - ToggleTaskSizeInteraction.Source.HEADER_BUTTON_TO_MAXIMIZE, - InputMethod.UNKNOWN_INPUT_METHOD, - ) - ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun testImmersiveMenuOptionClick_entersImmersiveMode() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor, - requestingImmersive = true, - ) - mockDesktopRepository.stub { - on { isTaskInFullImmersiveState(decor.mTaskInfo.taskId) } doReturn false - } - - windowDecorationActionsCaptor.firstValue.onImmersiveOrRestore(decor.mTaskInfo) - - verify(mockDesktopImmersiveController).moveTaskToImmersive(decor.mTaskInfo) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - fun testImmersiveMenuOptionClick_exitsTiling() { - val windowDecorationActionsCaptor = argumentCaptor<WindowDecorationActions>() - val decor = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - windowDecorationActions = windowDecorationActionsCaptor, - requestingImmersive = true, - ) - mockDesktopRepository.stub { - on { isTaskInFullImmersiveState(decor.mTaskInfo.taskId) } doReturn false - } - - windowDecorationActionsCaptor.firstValue.onImmersiveOrRestore(decor.mTaskInfo) - - verify(mockTilingWindowDecoration) - .removeTaskIfTiled(decor.mTaskInfo.displayId, decor.mTaskInfo.taskId) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS) - fun testOnTaskInfoChanged_enableShellTransitionsFlag() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val taskSurface = SurfaceControl() - val decoration = setUpMockDecorationForTask(task) - - onTaskOpening(task, taskSurface) - assertTrue(windowDecorByTaskIdSpy.contains(task.taskId)) - - decoration.mHasGlobalFocus = true - desktopModeWindowDecorViewModel.onTaskInfoChanged(task) - verify(decoration).relayout(eq(task), eq(true), anyOrNull()) - - decoration.mHasGlobalFocus = false - desktopModeWindowDecorViewModel.onTaskInfoChanged(task) - verify(decoration).relayout(eq(task), eq(false), anyOrNull()) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DISPLAY_FOCUS_IN_SHELL_TRANSITIONS) - fun testOnTaskInfoChanged_disableShellTransitionsFlag() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val taskSurface = SurfaceControl() - val decoration = setUpMockDecorationForTask(task) - - onTaskOpening(task, taskSurface) - assertTrue(windowDecorByTaskIdSpy.contains(task.taskId)) - - task.isFocused = true - desktopModeWindowDecorViewModel.onTaskInfoChanged(task) - verify(decoration).relayout(eq(task), eq(true), anyOrNull()) - - task.isFocused = false - desktopModeWindowDecorViewModel.onTaskInfoChanged(task) - verify(decoration).relayout(eq(task), eq(false), anyOrNull()) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY) - fun testGestureExclusionChanged_updatesDecorations() { - val captor = argumentCaptor<ISystemGestureExclusionListener>() - verify(mockWindowManager) - .registerSystemGestureExclusionListener(captor.capture(), eq(DEFAULT_DISPLAY)) - val task = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - displayId = DEFAULT_DISPLAY, - ) - val task2 = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - displayId = DEFAULT_DISPLAY, - ) - val newRegion = Region.obtain().apply { - set(Rect(0, 0, 1600, 80)) - } - - captor.firstValue.onSystemGestureExclusionChanged(DEFAULT_DISPLAY, newRegion, newRegion) - testShellExecutor.flushAll() - - verify(task).onExclusionRegionChanged(newRegion) - verify(task2).onExclusionRegionChanged(newRegion) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY) - fun testGestureExclusionChanged_updatesDecorations_onlyOnItsDisplayId() { - val gestureExclusionCaptor = argumentCaptor<ISystemGestureExclusionListener>() - val displayListenerCaptor = argumentCaptor<DisplayController.OnDisplaysChangedListener>() - verify(mockDisplayController).addDisplayWindowListener(displayListenerCaptor.capture()) - displayListenerCaptor.firstValue.onDisplayAdded(DEFAULT_DISPLAY) - displayListenerCaptor.firstValue.onDisplayAdded(SECOND_DISPLAY) - verify(mockWindowManager) - .registerSystemGestureExclusionListener(gestureExclusionCaptor.capture(), - eq(DEFAULT_DISPLAY)) - verify(mockWindowManager) - .registerSystemGestureExclusionListener(gestureExclusionCaptor.capture(), - eq(SECOND_DISPLAY)) - val task = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - displayId = DEFAULT_DISPLAY, - ) - val task2 = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - displayId = SECOND_DISPLAY, - ) - val newRegion = Region.obtain().apply { - set(Rect(0, 0, 1600, 80)) - } - - gestureExclusionCaptor.firstValue.onSystemGestureExclusionChanged(SECOND_DISPLAY, newRegion, - newRegion) - testShellExecutor.flushAll() - - verify(task, never()).onExclusionRegionChanged(newRegion) - verify(task2).onExclusionRegionChanged(newRegion) - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_BUG_FIXES_FOR_SECONDARY_DISPLAY) - fun testGestureExclusionChanged_otherDisplay_skipsDecorationUpdate() { - val captor = argumentCaptor<ISystemGestureExclusionListener>() - verify(mockWindowManager) - .registerSystemGestureExclusionListener(captor.capture(), eq(DEFAULT_DISPLAY)) - val task = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - displayId = DEFAULT_DISPLAY, - ) - val task2 = createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - displayId = 2, - ) - val newRegion = Region.obtain().apply { - set(Rect(0, 0, 1600, 80)) - } - - captor.firstValue.onSystemGestureExclusionChanged(DEFAULT_DISPLAY, newRegion, newRegion) - testShellExecutor.flushAll() - - verify(task).onExclusionRegionChanged(newRegion) - verify(task2, never()).onExclusionRegionChanged(newRegion) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX) - fun testRecentsTransitionStateListener_requestedState_setsTransitionRunning() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val decoration = setUpMockDecorationForTask(task) - onTaskOpening(task, SurfaceControl()) - - desktopModeRecentsTransitionStateListener.onTransitionStateChanged( - RecentsTransitionStateListener.TRANSITION_STATE_REQUESTED) - - verify(decoration).setIsRecentsTransitionRunning(true) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX) - fun testRecentsTransitionStateListener_nonRunningState_setsTransitionNotRunning() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val decoration = setUpMockDecorationForTask(task) - onTaskOpening(task, SurfaceControl()) - desktopModeRecentsTransitionStateListener.onTransitionStateChanged( - RecentsTransitionStateListener.TRANSITION_STATE_REQUESTED) - - desktopModeRecentsTransitionStateListener.onTransitionStateChanged( - RecentsTransitionStateListener.TRANSITION_STATE_NOT_RUNNING) - - verify(decoration).setIsRecentsTransitionRunning(false) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_RECENTS_TRANSITIONS_CORNERS_BUGFIX) - fun testRecentsTransitionStateListener_requestedAndAnimating_setsTransitionRunningOnce() { - val task = createTask(windowingMode = WINDOWING_MODE_FREEFORM) - val decoration = setUpMockDecorationForTask(task) - onTaskOpening(task, SurfaceControl()) - - desktopModeRecentsTransitionStateListener.onTransitionStateChanged( - RecentsTransitionStateListener.TRANSITION_STATE_REQUESTED) - desktopModeRecentsTransitionStateListener.onTransitionStateChanged( - RecentsTransitionStateListener.TRANSITION_STATE_ANIMATING) - - verify(decoration, times(1)).setIsRecentsTransitionRunning(true) - } - - @Test - fun testOnTaskOpening_expandedBubbleTask_skipsWindowDecorationCreation() { - val taskInfo = createTask(windowingMode = WINDOWING_MODE_MULTI_WINDOW).apply { - // Bubble task is launched with ActivityOptions#setTaskAlwaysOnTop - // in BubbleTaskViewListener#onInitialized. - configuration.windowConfiguration.setAlwaysOnTop(true) - } - mockBubbleController.stub { - on { hasStableBubbleForTask(taskInfo.taskId) } doReturn true - } - - val isWindowDecorCreated = desktopModeWindowDecorViewModel.onTaskOpening( - taskInfo, - SurfaceControl(), /* taskSurface */ - StubTransaction(), /* startT */ - StubTransaction(), /* finishT */ - ) - - assertThat(isWindowDecorCreated).isFalse() - } - - @Test - fun testOnTaskChanging_collapsedBubbleTask_skipsWindowDecorationCreation() { - assumeTrue(BubbleAnythingFlagHelper.enableCreateAnyBubbleWithForceExcludedFromRecents()) - - val taskInfo = createTask(windowingMode = WINDOWING_MODE_MULTI_WINDOW) - mockBubbleController.stub { - on { hasStableBubbleForTask(taskInfo.taskId) } doReturn true - } - + private fun onTaskChanging(task: RunningTaskInfo, leash: SurfaceControl = SurfaceControl()) { desktopModeWindowDecorViewModel.onTaskChanging( - taskInfo, - SurfaceControl(), /* taskSurface */ - StubTransaction(), /* startT */ - StubTransaction(), /* finishT */ + task, + leash, + SurfaceControl.Transaction(), + SurfaceControl.Transaction() ) - - assertThat(windowDecorByTaskIdSpy.contains(taskInfo.taskId)).isFalse() } - @Test - fun testOnTaskChanging_convertTaskToBubble_destroysWindowDecoration() { - assumeTrue(BubbleAnythingFlagHelper.enableCreateAnyBubbleWithForceExcludedFromRecents()) - - val taskInfo = createTask(windowingMode = WINDOWING_MODE_MULTI_WINDOW) - mockBubbleController.stub { - on { hasStableBubbleForTask(taskInfo.taskId) } doReturn true - } - val mockDecoration = mock<DesktopModeWindowDecoration>() - windowDecorByTaskIdSpy.put(taskInfo.taskId, mockDecoration) - - desktopModeWindowDecorViewModel.onTaskChanging( - taskInfo, - SurfaceControl(), /* taskSurface */ - StubTransaction(), /* startT */ - StubTransaction(), /* finishT */ - ) - - verify(mockDecoration).close() + private fun createTask( + displayId: Int = DEFAULT_DISPLAY, + @WindowConfiguration.WindowingMode windowingMode: Int, + activityType: Int = ACTIVITY_TYPE_STANDARD, + focused: Boolean = true, + activityInfo: ActivityInfo = ActivityInfo() + ): RunningTaskInfo { + return TestRunningTaskInfoBuilder() + .setDisplayId(displayId) + .setWindowingMode(windowingMode) + .setVisible(true) + .setActivityType(activityType) + .build().apply { + topActivityInfo = activityInfo + isFocused = focused + } } - @Test - @EnableFlags(Flags.FLAG_ENABLE_BLOCK_NON_DESKTOP_DISPLAY_WINDOW_DRAG_BUGFIX) - fun testOnFreeformWindowDragEnd_toDesktopModeDisplay_updateBounds() { - val onTouchListenerCaptor = argumentCaptor<View.OnTouchListener>() - val decor = - createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - onCaptionButtonTouchListener = onTouchListenerCaptor, - ) - - val touchListener = onTouchListenerCaptor.firstValue - if (touchListener is DesktopModeWindowDecorViewModel.DesktopModeTouchEventListener) { - val taskInfo = decor.mTaskInfo - mockDesktopTasksController.stub { on { getActiveDeskId(DEFAULT_DISPLAY) } doReturn 1 } - mockDesktopTasksController.stub { on { getActiveDeskId(SECOND_DISPLAY) } doReturn 2 } - val mockInputToken = mock<IBinder>() - val mockViewRootImpl = mock<ViewRootImpl> { on { inputToken } doReturn mockInputToken } - val view = mock<View> { on { getViewRootImpl() } doReturn mockViewRootImpl } - mockTaskPositioner.stub { - on { onDragPositioningStart(any(), any(), any(), any()) } doReturn INITIAL_BOUNDS - on { onDragPositioningMove(any(), any(), any()) } doReturn BOUNDS_AFTER_FIRST_MOVE - on { onDragPositioningEnd(any(), any(), any()) } doReturn - BOUNDS_ON_DRAG_END_DESKTOP_ACCEPTED - } - - touchListener.handleMotionEvent( - view, - MotionEvent.obtain(0L, 0L, MotionEvent.ACTION_DOWN, 0f, 0f, 0).apply { - displayId = DEFAULT_DISPLAY - }, - ) - // ACTION_MOVE on desktop-mode display - touchListener.handleMotionEvent( - view, - MotionEvent.obtain(0L, 1L, MotionEvent.ACTION_MOVE, 10f, 10f, 0).apply { - displayId = SECOND_DISPLAY - }, - ) - - // Verify point icon does not change and bounds changes - verify(mockInputManager, never()).setPointerIcon(any(), any(), any(), any(), any()) - verify(mockDesktopTasksController) - .onDragPositioningMove( - eq(taskInfo), - any<SurfaceControl>(), - eq(SECOND_DISPLAY), - eq(10f), - eq(10f), - eq(BOUNDS_AFTER_FIRST_MOVE), - ) - - // ACTION_UP on desktop-mode display - touchListener.handleMotionEvent( - view, - MotionEvent.obtain(0L, 2L, MotionEvent.ACTION_UP, 20f, 20f, 0).apply { - displayId = SECOND_DISPLAY - }, - ) - - // Verify point icon does not change and bounds changes - verify(mockInputManager, never()).setPointerIcon(any(), any(), any(), any(), any()) - verify(mockDesktopTasksController) - .onDragPositioningEnd( - eq(taskInfo), - any<SurfaceControl>(), - eq(SECOND_DISPLAY), - eq(PointF(20f, 20f)), - eq(BOUNDS_ON_DRAG_END_DESKTOP_ACCEPTED), - any<Rect>(), - any<Rect>(), - any<MotionEvent>(), - ) - } else { - fail("touchListener was not a DesktopModeTouchEventListener as expected.") - } - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_BLOCK_NON_DESKTOP_DISPLAY_WINDOW_DRAG_BUGFIX) - fun testOnFreeformWindowDragMove_toNonDesktopModeDisplay_setsNoDropIconAndKeepsBounds() { - val onTouchListenerCaptor = argumentCaptor<View.OnTouchListener>() - val decor = - createOpenTaskDecoration( - windowingMode = WINDOWING_MODE_FREEFORM, - onCaptionButtonTouchListener = onTouchListenerCaptor, - ) - - val touchListener = onTouchListenerCaptor.firstValue - if (touchListener is DesktopModeWindowDecorViewModel.DesktopModeTouchEventListener) { - val taskInfo = decor.mTaskInfo - mockDesktopTasksController.stub { on { getActiveDeskId(DEFAULT_DISPLAY) } doReturn 1 } - mockDesktopTasksController.stub { on { getActiveDeskId(SECOND_DISPLAY) } doReturn null } - val mockInputToken = mock<IBinder>() - val mockViewRootImpl = mock<ViewRootImpl> { on { inputToken } doReturn mockInputToken } - val view = mock<View> { on { getViewRootImpl() } doReturn mockViewRootImpl } - mockTaskPositioner.stub { - on { onDragPositioningStart(any(), any(), any(), any()) } doReturn INITIAL_BOUNDS - on { onDragPositioningMove(any(), any(), any()) } doReturn BOUNDS_AFTER_FIRST_MOVE - on { onDragPositioningEnd(any(), any(), any()) } doReturn - BOUNDS_IGNORED_ON_NON_DESKTOP - } - - touchListener.handleMotionEvent( - view, - MotionEvent.obtain(0L, 0L, MotionEvent.ACTION_DOWN, 0f, 0f, 0).apply { - displayId = DEFAULT_DISPLAY - }, - ) - // ACTION_MOVE on desktop-mode display - touchListener.handleMotionEvent( - view, - MotionEvent.obtain(0L, 1L, MotionEvent.ACTION_MOVE, 10f, 10f, 0).apply { - displayId = DEFAULT_DISPLAY - }, - ) - - // Verify point icon does not change and bounds changes - verify(mockInputManager, never()).setPointerIcon(any(), any(), any(), any(), any()) - verify(mockDesktopTasksController) - .onDragPositioningMove( - eq(taskInfo), - any(), - eq(DEFAULT_DISPLAY), - eq(10f), - eq(10f), - eq(BOUNDS_AFTER_FIRST_MOVE), - ) - - // ACTION_MOVE to non-desktop-mode display - touchListener.handleMotionEvent( - view, - MotionEvent.obtain(0L, 2L, MotionEvent.ACTION_MOVE, 20f, 20f, 0).apply { - displayId = SECOND_DISPLAY - }, - ) - - // Verify point icon changes and bounds stays the same - verify(mockInputManager) - .setPointerIcon( - argThat { icon -> icon.type == PointerIcon.TYPE_NO_DROP }, - eq(SECOND_DISPLAY), - any(), - eq(0), - eq(mockInputToken), - ) - verify(mockDesktopTasksController) - .onDragPositioningMove( - eq(taskInfo), - any(), - eq(SECOND_DISPLAY), - eq(20f), - eq(20f), - eq(BOUNDS_AFTER_FIRST_MOVE), - ) - - // ACTION_UP on non-desktop-mode display - touchListener.handleMotionEvent( - view, - MotionEvent.obtain(0L, 2L, MotionEvent.ACTION_UP, 30f, 30f, 0).apply { - displayId = SECOND_DISPLAY - }, - ) - - // Verify point icon changes and bounds resets to initial bounds - verify(mockInputManager) - .setPointerIcon( - argThat { icon -> icon.type == PointerIcon.TYPE_ARROW }, - eq(SECOND_DISPLAY), - any(), - eq(0), - eq(mockInputToken), - ) - verify(mockDesktopTasksController) - .onDragPositioningEnd( - eq(taskInfo), - any<SurfaceControl>(), - eq(SECOND_DISPLAY), - eq(PointF(30f, 30f)), - eq(INITIAL_BOUNDS), - any<Rect>(), - any<Rect>(), - any<MotionEvent>(), - ) - } else { - fail("touchListener was not a DesktopModeTouchEventListener as expected.") - } - } - - private fun createOpenTaskDecoration( - @WindowingMode windowingMode: Int, - taskSurface: SurfaceControl = SurfaceControl(), - requestingImmersive: Boolean = false, - displayId: Int = DEFAULT_DISPLAY, - windowDecorationActions: KArgumentCaptor<WindowDecorationActions> = argumentCaptor(), - onCaptionButtonClickListener: KArgumentCaptor<View.OnClickListener> = argumentCaptor(), - onCaptionButtonTouchListener: KArgumentCaptor<View.OnTouchListener> = argumentCaptor(), - ): DesktopModeWindowDecoration { - val decor = setUpMockDecorationForTask( - createTask( - windowingMode = windowingMode, - displayId = displayId, - requestingImmersive = requestingImmersive - ), - windowDecorationActions - ) - onTaskOpening(decor.mTaskInfo, taskSurface) - decor.stub { on { leash } doReturn taskSurface } - verify(decor).setCaptionListeners( - onCaptionButtonClickListener.capture(), onCaptionButtonTouchListener.capture(), - any(), any()) - return decor + private fun setUpMockDecorationForTask(task: RunningTaskInfo): DesktopModeWindowDecoration { + val decoration = mock(DesktopModeWindowDecoration::class.java) + whenever( + mockDesktopModeWindowDecorFactory.create( + any(), any(), any(), eq(task), any(), any(), any(), any(), any()) + ).thenReturn(decoration) + decoration.mTaskInfo = task + whenever(decoration.isFocused).thenReturn(task.isFocused) + return decoration } private fun setUpMockDecorationsForTasks(vararg tasks: RunningTaskInfo) { @@ -1606,19 +573,25 @@ class DesktopModeWindowDecorViewModelTests : DesktopModeWindowDecorViewModelTest val surfaceView = SurfaceView(mContext) val dm = mContext.getSystemService(Context.DISPLAY_SERVICE) as DisplayManager return dm.createVirtualDisplay( - "testEventReceiversOnMultipleDisplays", - /*width=*/ 400, - /*height=*/ 400, - /*densityDpi=*/ 320, - surfaceView.holder.surface, - DisplayManager.VIRTUAL_DISPLAY_FLAG_OWN_CONTENT_ONLY, + "testEventReceiversOnMultipleDisplays", + /*width=*/ 400, + /*height=*/ 400, + /*densityDpi=*/ 320, + surfaceView.holder.surface, + DisplayManager.VIRTUAL_DISPLAY_FLAG_OWN_CONTENT_ONLY ) } - private companion object { - const val SECOND_DISPLAY = 2 - private val BOUNDS_AFTER_FIRST_MOVE = Rect(10, 10, 110, 110) - private val BOUNDS_IGNORED_ON_NON_DESKTOP = Rect(20, 20, 120, 120) - private val BOUNDS_ON_DRAG_END_DESKTOP_ACCEPTED = Rect(50, 50, 150, 150) + private fun RunningTaskInfo.setWindowingMode(@WindowConfiguration.WindowingMode mode: Int) { + configuration.windowConfiguration.windowingMode = mode + } + + private fun RunningTaskInfo.setActivityType(type: Int) { + configuration.windowConfiguration.activityType = type + } + + companion object { + private const val TAG = "DesktopModeWindowDecorViewModelTests" + private val STABLE_INSETS = Rect(0, 100, 0, 0) } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorationTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorationTests.java index 7b5542c707..46c1589082 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorationTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DesktopModeWindowDecorationTests.java @@ -19,31 +19,16 @@ package com.android.wm.shell.windowdecor; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW; -import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED; -import static android.view.InsetsSource.FLAG_FORCE_CONSUMING; -import static android.view.InsetsSource.FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR; -import static android.view.WindowInsets.Type.captionBar; -import static android.view.WindowInsets.Type.statusBars; +import static android.platform.test.flag.junit.SetFlagsRule.DefaultInitValueType.DEVICE_DEFAULT; import static android.view.WindowInsetsController.APPEARANCE_TRANSPARENT_CAPTION_BAR_BACKGROUND; -import static android.view.WindowManager.TRANSIT_CHANGE; +import static com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession; import static com.android.wm.shell.MockSurfaceControlHelper.createMockSurfaceControlTransaction; -import static com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT; -import static com.android.wm.shell.windowdecor.DesktopModeWindowDecoration.CLOSE_MAXIMIZE_MENU_DELAY_MS; -import static com.android.wm.shell.windowdecor.WindowDecoration.INVALID_CORNER_RADIUS; import static com.google.common.truth.Truth.assertThat; -import static junit.framework.Assert.assertFalse; -import static junit.framework.Assert.assertTrue; -import static junit.framework.Assert.fail; - -import static org.mockito.ArgumentMatchers.anyBoolean; -import static org.mockito.ArgumentMatchers.argThat; -import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.any; import static org.mockito.Mockito.anyInt; -import static org.mockito.Mockito.atLeastOnce; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; @@ -52,99 +37,56 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.app.ActivityManager; -import android.app.assist.AssistContent; import android.content.ComponentName; -import android.content.Context; -import android.content.Intent; import android.content.pm.ActivityInfo; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; -import android.content.pm.ResolveInfo; import android.content.res.Resources; import android.content.res.TypedArray; -import android.graphics.Insets; -import android.graphics.Point; -import android.graphics.Rect; -import android.graphics.Region; -import android.net.Uri; import android.os.Handler; -import android.os.Looper; +import android.os.SystemProperties; import android.platform.test.annotations.DisableFlags; import android.platform.test.annotations.EnableFlags; +import android.platform.test.flag.junit.SetFlagsRule; import android.testing.AndroidTestingRunner; import android.testing.TestableContext; -import android.testing.TestableLooper; import android.view.AttachedSurfaceControl; import android.view.Choreographer; import android.view.Display; -import android.view.DisplayCutout; import android.view.GestureDetector; -import android.view.InsetsSource; import android.view.InsetsState; import android.view.MotionEvent; import android.view.SurfaceControl; import android.view.SurfaceControlViewHost; import android.view.View; -import android.view.WindowInsets; import android.view.WindowManager; import android.window.WindowContainerTransaction; -import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.test.filters.SmallTest; +import com.android.dx.mockito.inline.extended.StaticMockitoSession; import com.android.internal.R; import com.android.window.flags.Flags; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.TestHandler; import com.android.wm.shell.TestRunningTaskInfoBuilder; -import com.android.wm.shell.TestShellExecutor; -import com.android.wm.shell.apptoweb.AppToWebGenericLinksParser; -import com.android.wm.shell.apptoweb.AssistContentRequester; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.common.DisplayLayout; -import com.android.wm.shell.common.MultiInstanceHelper; -import com.android.wm.shell.common.ShellExecutor; import com.android.wm.shell.common.SyncTransactionQueue; -import com.android.wm.shell.desktopmode.CaptionState; -import com.android.wm.shell.desktopmode.DesktopModeEventLogger; -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger; -import com.android.wm.shell.desktopmode.DesktopRepository; -import com.android.wm.shell.desktopmode.DesktopUserRepositories; -import com.android.wm.shell.desktopmode.WindowDecorCaptionRepository; -import com.android.wm.shell.shared.desktopmode.DesktopModeCompatPolicy; -import com.android.wm.shell.shared.desktopmode.FakeDesktopConfig; -import com.android.wm.shell.shared.desktopmode.FakeDesktopState; -import com.android.wm.shell.splitscreen.SplitScreenController; -import com.android.wm.shell.transition.Transitions; +import com.android.wm.shell.shared.DesktopModeStatus; import com.android.wm.shell.windowdecor.WindowDecoration.RelayoutParams; -import com.android.wm.shell.windowdecor.common.WindowDecorTaskResourceLoader; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHostSupplier; -import com.android.wm.shell.windowdecor.viewholder.AppHandleViewHolder; -import com.android.wm.shell.windowdecor.viewholder.AppHeaderViewHolder; - -import kotlin.Unit; -import kotlin.jvm.functions.Function0; -import kotlin.jvm.functions.Function1; -import kotlin.jvm.functions.Function2; - -import kotlinx.coroutines.CoroutineScope; -import kotlinx.coroutines.MainCoroutineDispatcher; import org.junit.After; import org.junit.Before; -import org.junit.Ignore; +import org.junit.BeforeClass; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.ArgumentCaptor; -import org.mockito.Captor; import org.mockito.Mock; -import org.mockito.MockitoAnnotations; +import org.mockito.quality.Strictness; -import java.util.List; import java.util.function.Supplier; /** @@ -154,7 +96,6 @@ import java.util.function.Supplier; * atest WMShellUnitTests:DesktopModeWindowDecorationTests */ @SmallTest -@TestableLooper.RunWithLooper @RunWith(AndroidTestingRunner.class) public class DesktopModeWindowDecorationTests extends ShellTestCase { private static final String USE_WINDOW_SHADOWS_SYSPROP_KEY = @@ -164,51 +105,19 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { private static final String USE_ROUNDED_CORNERS_SYSPROP_KEY = "persist.wm.debug.desktop_use_rounded_corners"; - private static final Uri TEST_URI1 = Uri.parse("https://www.google.com/"); - private static final Uri TEST_URI2 = Uri.parse("https://docs.google.com/"); - private static final Uri TEST_URI3 = Uri.parse("https://slides.google.com/"); - private static final Uri TEST_URI4 = Uri.parse("https://calendar.google.com/"); - - private static final boolean DEFAULT_APPLY_START_TRANSACTION_ON_DRAW = true; - private static final boolean DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP = false; - private static final boolean DEFAULT_IS_STATUSBAR_VISIBLE = true; - private static final boolean DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED = false; - private static final boolean DEFAULT_IS_IN_FULL_IMMERSIVE_MODE = false; - private static final boolean DEFAULT_IS_DRAGGING = false; - private static final boolean DEFAULT_HAS_GLOBAL_FOCUS = true; - private static final boolean DEFAULT_SHOULD_IGNORE_CORNER_RADIUS = false; - private static final boolean DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS = false; - private static final boolean DEFAULT_IN_SYNC_WITH_TRANSITION = true; + @Rule public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(DEVICE_DEFAULT); @Mock private DisplayController mMockDisplayController; @Mock - private Display mDefaultDisplay; - @Mock - private DisplayLayout mDisplayLayout; - @Mock - private SplitScreenController mMockSplitScreenController; - @Mock private ShellTaskOrganizer mMockShellTaskOrganizer; @Mock - private DesktopUserRepositories mMockDesktopUserRepositories; + private Handler mMockHandler; @Mock private Choreographer mMockChoreographer; @Mock - private MainCoroutineDispatcher mMockMainCoroutineDispatcher; - @Mock - private CoroutineScope mMockBgCoroutineScope; - @Mock private SyncTransactionQueue mMockSyncQueue; @Mock - private AppHeaderViewHolder.Factory mMockAppHeaderViewHolderFactory; - @Mock - private AppHandleViewHolder.Factory mMockAppHandleViewHolderFactory; - @Mock - private AppHeaderViewHolder mMockAppHeaderViewHolder; - @Mock - private AppHandleViewHolder mMockAppHandleViewHolder; - @Mock private RootTaskDisplayAreaOrganizer mMockRootTaskDisplayAreaOrganizer; @Mock private Supplier<SurfaceControl.Transaction> mMockTransactionSupplier; @@ -219,78 +128,38 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { @Mock private AttachedSurfaceControl mMockRootSurfaceControl; @Mock - private WindowDecorViewHostSupplier<WindowDecorViewHost> mMockWindowDecorViewHostSupplier; - @Mock - private WindowDecorViewHost mMockWindowDecorViewHost; - @Mock private WindowDecoration.SurfaceControlViewHostFactory mMockSurfaceControlViewHostFactory; @Mock private TypedArray mMockRoundedCornersRadiusArray; + @Mock private TestTouchEventListener mMockTouchEventListener; @Mock private DesktopModeWindowDecoration.ExclusionRegionListener mMockExclusionRegionListener; @Mock private PackageManager mMockPackageManager; - @Mock - private Handler mMockHandler; - @Mock - private AppToWebGenericLinksParser mMockGenericLinksParser; - @Mock - private WindowManager mMockWindowManager; - @Mock - private AssistContentRequester mMockAssistContentRequester; - @Mock - private HandleMenu mMockHandleMenu; - @Mock - private HandleMenuFactory mMockHandleMenuFactory; - @Mock - private MultiInstanceHelper mMockMultiInstanceHelper; - @Mock - private WindowDecorCaptionRepository mMockCaptionHandleRepository; - @Mock - private DesktopModeEventLogger mDesktopModeEventLogger; - @Mock - private DesktopModeUiEventLogger mDesktopModeUiEventLogger; - @Mock - private DesktopRepository mDesktopRepository; - @Mock - private WindowDecorTaskResourceLoader mMockTaskResourceLoader; - @Mock - private DesktopModeCompatPolicy mDesktopModeCompatPolicy; - @Mock - private WindowDecorationActions mMockWindowDecorationActions; - @Mock - private Transitions mTransitions; - private final TestHandler mTestHandler = new TestHandler(Looper.getMainLooper()); - @Captor - private ArgumentCaptor<Function1<Boolean, Unit>> mOnMaxMenuHoverChangeListener; - @Captor - private ArgumentCaptor<Runnable> mCloseMaxMenuRunnable; - private FakeDesktopConfig mDesktopConfig; - private FakeDesktopState mDesktopState; - private final InsetsState mInsetsState = createInsetsState(statusBars(), /* visible= */true); + private final InsetsState mInsetsState = new InsetsState(); private SurfaceControl.Transaction mMockTransaction; + private StaticMockitoSession mMockitoSession; private TestableContext mTestableContext; - private final ShellExecutor mBgExecutor = new TestShellExecutor(); - private final ShellExecutor mMainExecutor = new TestShellExecutor(); - private final AssistContent mAssistContent = new AssistContent(); - private final Region mExclusionRegion = Region.obtain(); - private AutoCloseable mMocksInit = null; + + /** Set up run before test class. */ + @BeforeClass + public static void setUpClass() { + // Reset the sysprop settings before running the test. + SystemProperties.set(USE_WINDOW_SHADOWS_SYSPROP_KEY, ""); + SystemProperties.set(FOCUSED_USE_WINDOW_SHADOWS_SYSPROP_KEY, ""); + SystemProperties.set(USE_ROUNDED_CORNERS_SYSPROP_KEY, ""); + } @Before - public void setUp() throws PackageManager.NameNotFoundException { - mDesktopConfig = new FakeDesktopConfig(); - mDesktopConfig.setUseDesktopOverrideDensity(true); - mDesktopConfig.setUseWindowShadowWhenFocused(true); - mDesktopConfig.setUseWindowShadowWhenUnfocused(true); - mDesktopConfig.setDefaultSetBackground(true); - mDesktopConfig.setUseRoundedCorners(true); - mDesktopState = new FakeDesktopState(); - mDesktopState.setCanEnterDesktopMode(true); - - mMocksInit = MockitoAnnotations.openMocks(this); + public void setUp() { + mMockitoSession = mockitoSession() + .strictness(Strictness.LENIENT) + .spyStatic(DesktopModeStatus.class) + .startMocking(); + when(DesktopModeStatus.useDesktopOverrideDensity()).thenReturn(false); doReturn(mMockSurfaceControlViewHost).when(mMockSurfaceControlViewHostFactory).create( any(), any(), any()); when(mMockSurfaceControlViewHost.getRootSurfaceControl()) @@ -300,43 +169,15 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { mTestableContext = new TestableContext(mContext); mTestableContext.ensureTestableResources(); mContext.setMockPackageManager(mMockPackageManager); - when(mMockMultiInstanceHelper.supportsMultiInstanceSplit(any(), anyInt())) - .thenReturn(false); when(mMockPackageManager.getApplicationLabel(any())).thenReturn("applicationLabel"); - final ActivityInfo activityInfo = createActivityInfo(); - when(mMockPackageManager.getActivityInfo(any(), anyInt())).thenReturn(activityInfo); - final ResolveInfo resolveInfo = createResolveInfo(false /* handleAllWebDataUri */); - when(mMockPackageManager.resolveActivityAsUser(any(), anyInt(), anyInt())) - .thenReturn(resolveInfo); - doReturn(mDefaultDisplay).when(mMockDisplayController).getDisplay(Display.DEFAULT_DISPLAY); + final Display defaultDisplay = mock(Display.class); + doReturn(defaultDisplay).when(mMockDisplayController).getDisplay(Display.DEFAULT_DISPLAY); doReturn(mInsetsState).when(mMockDisplayController).getInsetsState(anyInt()); - doReturn(mDisplayLayout).when(mMockDisplayController).getDisplayLayout( - Display.DEFAULT_DISPLAY); - when(mMockHandleMenuFactory.create(any(), any(), any(), any(), any(), any(), anyInt(), - any(), anyBoolean(), anyBoolean(), anyBoolean(), anyBoolean(), anyBoolean(), - anyBoolean(), anyBoolean(), any(), any(), anyInt(), anyInt(), anyInt(), anyInt())) - .thenReturn(mMockHandleMenu); - when(mMockMultiInstanceHelper.supportsMultiInstanceSplit(any(), anyInt())) - .thenReturn(false); - when(mMockAppHeaderViewHolderFactory - .create(any(), any(), any(), any(), any(), any(), any(), any(), any())) - .thenReturn(mMockAppHeaderViewHolder); - when(mMockAppHandleViewHolderFactory - .create(any(), any(), any(), any(), any(), any(), any())) - .thenReturn(mMockAppHandleViewHolder); - when(mMockDesktopUserRepositories.getCurrent()).thenReturn(mDesktopRepository); - when(mMockDesktopUserRepositories.getProfile(anyInt())).thenReturn(mDesktopRepository); - when(mMockWindowDecorViewHostSupplier.acquire(any(), eq(mDefaultDisplay))) - .thenReturn(mMockWindowDecorViewHost); - when(mMockWindowDecorViewHost.getSurfaceControl()).thenReturn(mock(SurfaceControl.class)); } @After - public void tearDown() throws Exception { - if (mMocksInit != null) { - mMocksInit.close(); - mMocksInit = null; - } + public void tearDown() { + mMockitoSession.finishMocking(); } @Test @@ -347,7 +188,7 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { final DesktopModeWindowDecoration spyWindowDecor = spy(createWindowDecoration(taskInfo)); - spyWindowDecor.relayout(taskInfo, false /* hasGlobalFocus */, mExclusionRegion); + spyWindowDecor.relayout(taskInfo); // Menus should close if open before the task being invisible causes relayout to return. verify(spyWindowDecor).closeHandleMenu(); @@ -356,264 +197,33 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { } @Test - @DisableFlags({Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX, - Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS}) - public void updateRelayoutParams_noSysPropFlagsSet_windowShadowsAreSetForFreeform_dynamicDisabled() { + public void updateRelayoutParams_noSysPropFlagsSet_windowShadowsAreEnabled() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); RelayoutParams relayoutParams = new RelayoutParams(); - updateRelayoutParams(relayoutParams, taskInfo); + DesktopModeWindowDecoration.updateRelayoutParams( + relayoutParams, mContext, taskInfo, /* applyStartTransactionOnDraw= */ true, + /* shouldSetTaskPositionAndCrop */ false); - assertThat(relayoutParams.mShadowRadius) - .isNotEqualTo(WindowDecoration.INVALID_SHADOW_RADIUS); + assertThat(relayoutParams.mShadowRadiusId).isNotEqualTo(Resources.ID_NULL); } @Test - @DisableFlags({Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX, - Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS}) - public void updateRelayoutParams_noSysPropFlagsSet_windowShadowsAreNotSetForFullscreen_dynamicDisabled() { + public void updateRelayoutParams_noSysPropFlagsSet_roundedCornersAreEnabled() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mShadowRadius).isEqualTo(WindowDecoration.INVALID_SHADOW_RADIUS); - } - - @Test - @DisableFlags({Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX, - Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS}) - public void updateRelayoutParams_noSysPropFlagsSet_windowShadowsAreNotSetForSplit_dynamicDisabled() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_MULTI_WINDOW); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mShadowRadius).isEqualTo(WindowDecoration.INVALID_SHADOW_RADIUS); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - public void updateRelayoutParams_noSysPropFlagsSet_roundedCornersSetForFreeform_dynamicDisabled() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); fillRoundedCornersResources(/* fillValue= */ 30); RelayoutParams relayoutParams = new RelayoutParams(); - updateRelayoutParams(relayoutParams, taskInfo); + DesktopModeWindowDecoration.updateRelayoutParams( + relayoutParams, + mTestableContext, + taskInfo, + /* applyStartTransactionOnDraw= */ true, + /* shouldSetTaskPositionAndCrop */ false); assertThat(relayoutParams.mCornerRadius).isGreaterThan(0); } - @Test - @DisableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - public void updateRelayoutParams_noSysPropFlagsSet_roundedCornersNotSetForFullscreen_dynamicDisabled() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - fillRoundedCornersResources(/* fillValue= */ 30); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mCornerRadius).isEqualTo(INVALID_CORNER_RADIUS); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - public void updateRelayoutParams_noSysPropFlagsSet_roundedCornersNotSetForSplit_dynamicDisabled() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_MULTI_WINDOW); - fillRoundedCornersResources(/* fillValue= */ 30); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mCornerRadius).isEqualTo(INVALID_CORNER_RADIUS); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - public void updateRelayoutParams_shouldIgnoreCornerRadius_roundedCornersNotSet_dynamicDisabled() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - fillRoundedCornersResources(/* fillValue= */ 30); - RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - DEFAULT_IS_STATUSBAR_VISIBLE, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - DEFAULT_IS_IN_FULL_IMMERSIVE_MODE, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - /* shouldIgnoreCornerRadius= */ true, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat(relayoutParams.mCornerRadius).isEqualTo(INVALID_CORNER_RADIUS); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - @DisableFlags(Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS) - public void updateRelayoutParams_noSysPropFlagsSet_windowShadowsAreSetForFreeform() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mShadowRadiusId).isNotEqualTo(Resources.ID_NULL); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - @DisableFlags(Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS) - public void updateRelayoutParams_noSysPropFlagsSet_windowShadowsAreNotSetForFullscreen() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mShadowRadiusId).isEqualTo(Resources.ID_NULL); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - @DisableFlags(Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS) - public void updateRelayoutParams_noSysPropFlagsSet_windowShadowsAreNotSetForSplit() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_MULTI_WINDOW); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mShadowRadiusId).isEqualTo(Resources.ID_NULL); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - @DisableFlags(Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS) - public void updateRelayoutParams_noSysPropFlagsSet_roundedCornersSetForFreeform() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mShadowRadiusId).isNotEqualTo(Resources.ID_NULL); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS) - public void updateRelayoutParams_windowBoxShadowsAreSetForFreeform() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mBoxShadowSettingsIds.length).isGreaterThan(0); - for (int i = 0; i < relayoutParams.mBoxShadowSettingsIds.length; i++) { - assertThat(relayoutParams.mBoxShadowSettingsIds[i]).isNotEqualTo(Resources.ID_NULL); - } - assertThat(relayoutParams.mBorderSettingsId).isNotEqualTo(Resources.ID_NULL); - } - - - @Test - @EnableFlags({Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX, - Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS}) - public void updateRelayoutParams_noSysPropFlagsSet_windowBoxShadowsAreNotSetForFullscreen() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mBoxShadowSettingsIds).isEqualTo(null); - assertThat(relayoutParams.mBorderSettingsId).isEqualTo(Resources.ID_NULL); - } - - @Test - @EnableFlags({Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX, - Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS}) - public void updateRelayoutParams_noSysPropFlagsSet_windowBoxShadowsAreNotSetForSplit() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_MULTI_WINDOW); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mBoxShadowSettingsIds).isEqualTo(null); - assertThat(relayoutParams.mBorderSettingsId).isEqualTo(Resources.ID_NULL); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - public void updateRelayoutParams_noSysPropFlagsSet_roundedCornersNotSetForFullscreen() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mCornerRadiusId).isEqualTo(Resources.ID_NULL); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - public void updateRelayoutParams_noSysPropFlagsSet_roundedCornersNotSetForSplit() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_MULTI_WINDOW); - RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mCornerRadiusId).isEqualTo(Resources.ID_NULL); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX) - public void updateRelayoutParams_shouldIgnoreCornerRadius_roundedCornersNotSet() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - DEFAULT_IS_STATUSBAR_VISIBLE, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - DEFAULT_IS_IN_FULL_IMMERSIVE_MODE, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - /* shouldIgnoreCornerRadius= */ true, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat(relayoutParams.mCornerRadiusId).isEqualTo(Resources.ID_NULL); - } - @Test @EnableFlags(Flags.FLAG_ENABLE_APP_HEADER_WITH_TASK_DENSITY) public void updateRelayoutParams_appHeader_usesTaskDensity() { @@ -625,7 +235,12 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { taskInfo.configuration.densityDpi = customTaskDensity; final RelayoutParams relayoutParams = new RelayoutParams(); - updateRelayoutParams(relayoutParams, taskInfo); + DesktopModeWindowDecoration.updateRelayoutParams( + relayoutParams, + mTestableContext, + taskInfo, + /* applyStartTransactionOnDraw= */ true, + /* shouldSetTaskPositionAndCrop */ false); assertThat(relayoutParams.mWindowDecorConfig.densityDpi).isEqualTo(customTaskDensity); } @@ -633,7 +248,7 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { @Test @DisableFlags(Flags.FLAG_ENABLE_APP_HEADER_WITH_TASK_DENSITY) public void updateRelayoutParams_appHeader_usesSystemDensity() { - mDesktopConfig.setUseDesktopOverrideDensity(true); + when(DesktopModeStatus.useDesktopOverrideDensity()).thenReturn(true); final int systemDensity = mTestableContext.getOrCreateTestableResources().getResources() .getConfiguration().densityDpi; final int customTaskDensity = systemDensity + 300; @@ -642,13 +257,17 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { taskInfo.configuration.densityDpi = customTaskDensity; final RelayoutParams relayoutParams = new RelayoutParams(); - updateRelayoutParams(relayoutParams, taskInfo); + DesktopModeWindowDecoration.updateRelayoutParams( + relayoutParams, + mTestableContext, + taskInfo, + /* applyStartTransactionOnDraw= */ true, + /* shouldSetTaskPositionAndCrop */ false); assertThat(relayoutParams.mWindowDecorConfig.densityDpi).isEqualTo(systemDensity); } @Test - @DisableFlags(Flags.FLAG_ENABLE_ACCESSIBLE_CUSTOM_HEADERS) public void updateRelayoutParams_freeformAndTransparentAppearance_allowsInputFallthrough() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); @@ -656,618 +275,110 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { APPEARANCE_TRANSPARENT_CAPTION_BAR_BACKGROUND); final RelayoutParams relayoutParams = new RelayoutParams(); - updateRelayoutParams(relayoutParams, taskInfo); + DesktopModeWindowDecoration.updateRelayoutParams( + relayoutParams, + mTestableContext, + taskInfo, + /* applyStartTransactionOnDraw= */ true, + /* shouldSetTaskPositionAndCrop */ false); assertThat(relayoutParams.hasInputFeatureSpy()).isTrue(); } @Test - @EnableFlags(Flags.FLAG_ENABLE_ACCESSIBLE_CUSTOM_HEADERS) - public void updateRelayoutParams_freeformAndTransparentAppearance_limitedTouchRegion() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - taskInfo.taskDescription.setTopOpaqueSystemBarsAppearance( - APPEARANCE_TRANSPARENT_CAPTION_BAR_BACKGROUND); - final RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mLimitTouchRegionToSystemAreas).isTrue(); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_ACCESSIBLE_CUSTOM_HEADERS) public void updateRelayoutParams_freeformButOpaqueAppearance_disallowsInputFallthrough() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); taskInfo.taskDescription.setTopOpaqueSystemBarsAppearance(0); final RelayoutParams relayoutParams = new RelayoutParams(); - updateRelayoutParams(relayoutParams, taskInfo); + DesktopModeWindowDecoration.updateRelayoutParams( + relayoutParams, + mTestableContext, + taskInfo, + /* applyStartTransactionOnDraw= */ true, + /* shouldSetTaskPositionAndCrop */ false); assertThat(relayoutParams.hasInputFeatureSpy()).isFalse(); } @Test - @EnableFlags(Flags.FLAG_ENABLE_ACCESSIBLE_CUSTOM_HEADERS) - public void updateRelayoutParams_freeformButOpaqueAppearance_unlimitedTouchRegion() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - taskInfo.taskDescription.setTopOpaqueSystemBarsAppearance(0); - final RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mLimitTouchRegionToSystemAreas).isFalse(); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_ACCESSIBLE_CUSTOM_HEADERS) public void updateRelayoutParams_fullscreen_disallowsInputFallthrough() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); final RelayoutParams relayoutParams = new RelayoutParams(); - updateRelayoutParams(relayoutParams, taskInfo); + DesktopModeWindowDecoration.updateRelayoutParams( + relayoutParams, + mTestableContext, + taskInfo, + /* applyStartTransactionOnDraw= */ true, + /* shouldSetTaskPositionAndCrop */ false); assertThat(relayoutParams.hasInputFeatureSpy()).isFalse(); } - @Test - @EnableFlags(Flags.FLAG_ENABLE_ACCESSIBLE_CUSTOM_HEADERS) - public void updateRelayoutParams_fullscreen_unlimitedTouchRegion() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - final RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mLimitTouchRegionToSystemAreas).isFalse(); - } - @Test public void updateRelayoutParams_freeform_inputChannelNeeded() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); final RelayoutParams relayoutParams = new RelayoutParams(); - updateRelayoutParams(relayoutParams, taskInfo); + DesktopModeWindowDecoration.updateRelayoutParams( + relayoutParams, + mTestableContext, + taskInfo, + /* applyStartTransactionOnDraw= */ true, + /* shouldSetTaskPositionAndCrop */ false); assertThat(hasNoInputChannelFeature(relayoutParams)).isFalse(); } @Test - @DisableFlags(Flags.FLAG_ENABLE_HANDLE_INPUT_FIX) public void updateRelayoutParams_fullscreen_inputChannelNotNeeded() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); final RelayoutParams relayoutParams = new RelayoutParams(); - updateRelayoutParams(relayoutParams, taskInfo); + DesktopModeWindowDecoration.updateRelayoutParams( + relayoutParams, + mTestableContext, + taskInfo, + /* applyStartTransactionOnDraw= */ true, + /* shouldSetTaskPositionAndCrop */ false); assertThat(hasNoInputChannelFeature(relayoutParams)).isTrue(); } @Test - @DisableFlags(Flags.FLAG_ENABLE_HANDLE_INPUT_FIX) public void updateRelayoutParams_multiwindow_inputChannelNotNeeded() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_MULTI_WINDOW); final RelayoutParams relayoutParams = new RelayoutParams(); - updateRelayoutParams(relayoutParams, taskInfo); + DesktopModeWindowDecoration.updateRelayoutParams( + relayoutParams, + mTestableContext, + taskInfo, + /* applyStartTransactionOnDraw= */ true, + /* shouldSetTaskPositionAndCrop */ false); assertThat(hasNoInputChannelFeature(relayoutParams)).isTrue(); } - @Test - @EnableFlags(Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION) - public void updateRelayoutParams_defaultHeader_addsForceConsumingFlag() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - taskInfo.taskDescription.setTopOpaqueSystemBarsAppearance(0); - final RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat((relayoutParams.mInsetSourceFlags & FLAG_FORCE_CONSUMING) != 0).isTrue(); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION) - public void updateRelayoutParams_customHeader_noForceConsumptionFlag() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - taskInfo.taskDescription.setTopOpaqueSystemBarsAppearance( - APPEARANCE_TRANSPARENT_CAPTION_BAR_BACKGROUND); - final RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat((relayoutParams.mInsetSourceFlags & FLAG_FORCE_CONSUMING) == 0).isTrue(); - } - - @Test - @EnableFlags({Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION, - Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS}) - public void updateRelayoutParams_excludeCaptionTrue_forceConsumptionFalse() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - taskInfo.taskDescription.setTopOpaqueSystemBarsAppearance(0); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - DEFAULT_IS_STATUSBAR_VISIBLE, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - DEFAULT_IS_IN_FULL_IMMERSIVE_MODE, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - /* shouldExcludeCaptionFromAppBounds */ true, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - // Force consuming flags are disabled. - assertThat((relayoutParams.mInsetSourceFlags & FLAG_FORCE_CONSUMING) == 0).isTrue(); - assertThat( - (relayoutParams.mInsetSourceFlags & FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR) == 0) - .isTrue(); - // Exclude caption from app bounds is true. - assertThat(relayoutParams.mShouldSetAppBounds).isTrue(); - } - - @Test - @EnableFlags({Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION, - Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS}) - public void updateRelayoutParams_excludeCaptionFalse_forceConsumptionTrue() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - taskInfo.taskDescription.setTopOpaqueSystemBarsAppearance(0); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - DEFAULT_IS_STATUSBAR_VISIBLE, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - DEFAULT_IS_IN_FULL_IMMERSIVE_MODE, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat((relayoutParams.mInsetSourceFlags & FLAG_FORCE_CONSUMING) != 0).isTrue(); - assertThat( - (relayoutParams.mInsetSourceFlags & FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR) != 0) - .isTrue(); - // Exclude caption from app bounds is false. - assertThat(relayoutParams.mShouldSetAppBounds).isFalse(); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS) - public void updateRelayoutParams_header_addsForceConsumingCaptionBar() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - final RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat( - (relayoutParams.mInsetSourceFlags & FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR) != 0) - .isTrue(); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS) - public void updateRelayoutParams_handle_skipsForceConsumingCaptionBar() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - final RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat( - (relayoutParams.mInsetSourceFlags & FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR) == 0) - .isTrue(); - } - - @Test - public void updateRelayoutParams_handle_bottomSplitIsInsetSource() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - final RelayoutParams relayoutParams = new RelayoutParams(); - when(mMockSplitScreenController.isLeftRightSplit()).thenReturn(false); - when(mMockSplitScreenController.getSplitPosition(taskInfo.taskId)) - .thenReturn(SPLIT_POSITION_BOTTOM_OR_RIGHT); - - updateRelayoutParams(relayoutParams, taskInfo); - - assertThat(relayoutParams.mIsInsetSource).isTrue(); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - public void updateRelayoutParams_header_addsPaddingInFullImmersive() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - taskInfo.configuration.windowConfiguration.setBounds(new Rect(0, 0, 1000, 2000)); - final InsetsState insetsState = createInsetsState(List.of( - createInsetsSource( - 0 /* id */, statusBars(), true /* visible */, new Rect(0, 0, 1000, 50)), - createInsetsSource( - 1 /* id */, captionBar(), true /* visible */, new Rect(0, 0, 1000, 100)))); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - DEFAULT_IS_STATUSBAR_VISIBLE, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - /* inFullImmersiveMode */ true, - DEFAULT_IS_DRAGGING, - insetsState, - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - // Takes status bar inset as padding, ignores caption bar inset. - assertThat(relayoutParams.mCaptionTopPadding).isEqualTo(50); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - public void updateRelayoutParams_header_notAnInsetsSourceInFullyImmersive() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - DEFAULT_IS_STATUSBAR_VISIBLE, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - /* inFullImmersiveMode */ true, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat(relayoutParams.mIsInsetSource).isFalse(); - } - - @Test - @DisableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - public void updateRelayoutParams_header_statusBarInvisible_captionVisible() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - /* isStatusBarVisible */ false, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - DEFAULT_IS_IN_FULL_IMMERSIVE_MODE, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - // Header is always shown because it's assumed the status bar is always visible. - assertThat(relayoutParams.mIsCaptionVisible).isTrue(); - } - - @Test - public void updateRelayoutParams_handle_statusBarVisibleAndNotOverKeyguard_captionVisible() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - /* isStatusBarVisible */ true, - /* isKeyguardVisibleAndOccluded */ false, - DEFAULT_IS_IN_FULL_IMMERSIVE_MODE, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat(relayoutParams.mIsCaptionVisible).isTrue(); - } - - @Test - public void updateRelayoutParams_handle_statusBarInvisible_captionNotVisible() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - /* isStatusBarVisible */ false, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - DEFAULT_IS_IN_FULL_IMMERSIVE_MODE, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat(relayoutParams.mIsCaptionVisible).isFalse(); - } - - @Test - public void updateRelayoutParams_handle_overKeyguard_captionNotVisible() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - DEFAULT_IS_STATUSBAR_VISIBLE, - /* isKeyguardVisibleAndOccluded */ true, - DEFAULT_IS_IN_FULL_IMMERSIVE_MODE, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat(relayoutParams.mIsCaptionVisible).isFalse(); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - public void updateRelayoutParams_header_fullyImmersive_captionVisFollowsStatusBar() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - /* isStatusBarVisible */ true, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - /* inFullImmersiveMode */ true, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat(relayoutParams.mIsCaptionVisible).isTrue(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - /* isStatusBarVisible */ false, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - /* inFullImmersiveMode */ true, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat(relayoutParams.mIsCaptionVisible).isFalse(); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_IMMERSIVE_DRAG_BUGFIX) - public void updateRelayoutParams_header_fullyImmersive_captionVisDuringDrag() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - /* isStatusBarVisible */ false, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - /* inFullImmersiveMode */ true, - /* isDragging */ true, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat(relayoutParams.mIsCaptionVisible).isTrue(); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - public void updateRelayoutParams_header_fullyImmersive_overKeyguard_captionNotVisible() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - final RelayoutParams relayoutParams = new RelayoutParams(); - - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - DEFAULT_IS_STATUSBAR_VISIBLE, - /* isKeyguardVisibleAndOccluded */ true, - /* inFullImmersiveMode */ true, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - - assertThat(relayoutParams.mIsCaptionVisible).isFalse(); - } - - @Test - public void updateRelayoutParams_handle_requestsAsyncViewHostRendering() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - // Make the task fullscreen so that its decoration is an App Handle. - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - final RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - // App Handles don't need to be rendered in sync with the task animation, per UX. - assertThat(relayoutParams.mAsyncViewHost).isTrue(); - } - - @Test - public void updateRelayoutParams_header_requestsSyncViewHostRendering() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - // Make the task freeform so that its decoration is an App Header. - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - final RelayoutParams relayoutParams = new RelayoutParams(); - - updateRelayoutParams(relayoutParams, taskInfo); - - // App Headers must be rendered in sync with the task animation, so it cannot be delayed. - assertThat(relayoutParams.mAsyncViewHost).isFalse(); - } - - @Test - public void updateRelayoutParams_handle_hasDisplayCutout_useCutoutInCaptionHeight() { - // Have cutout be larger than status bar so we use cutout as the caption height - int statusBarHeight = mContext.getResources().getDimensionPixelSize( - R.dimen.status_bar_height_default); - int cutoutSize = statusBarHeight + 100; - DisplayCutout cutout = createDisplayCutout(cutoutSize); - when(mDefaultDisplay.getCutout()).thenReturn(cutout); - - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - createWindowDecoration(taskInfo, /* relayout= */ true); - - ArgumentCaptor<WindowManager.LayoutParams> captor = ArgumentCaptor.forClass( - WindowManager.LayoutParams.class); - verify(mMockWindowDecorViewHost).updateViewAsync(any(), captor.capture(), any(), any()); - WindowManager.LayoutParams lp = captor.getValue(); - assertThat(lp.height).isEqualTo(cutoutSize); - } - - @Test - public void updateRelayoutParams_header_hasDisplayCutout_ignoreCutoutInCaptionHeight() { - // Have cutout be larger than desktop header so it would affect the size if used - int desktopHeaderHeight = mContext.getResources().getDimensionPixelSize( - R.dimen.desktop_view_default_header_height); - int cutoutHeight = desktopHeaderHeight + 100; - DisplayCutout cutout = createDisplayCutout(cutoutHeight); - when(mDefaultDisplay.getCutout()).thenReturn(cutout); - - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - createWindowDecoration(taskInfo, /* relayout= */ true); - - ArgumentCaptor<WindowManager.LayoutParams> captor = ArgumentCaptor.forClass( - WindowManager.LayoutParams.class); - verify(mMockWindowDecorViewHost).updateView(any(), captor.capture(), any(), any(), any()); - WindowManager.LayoutParams lp = captor.getValue(); - assertThat(lp.height).isEqualTo(desktopHeaderHeight); - } - @Test public void relayout_fullscreenTask_appliesTransactionImmediately() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); final DesktopModeWindowDecoration spyWindowDecor = spy(createWindowDecoration(taskInfo)); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - spyWindowDecor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); + spyWindowDecor.relayout(taskInfo); verify(mMockTransaction).apply(); verify(mMockRootSurfaceControl, never()).applyTransactionOnDraw(any()); } @Test - @Ignore("TODO(b/367235906): Due to MONITOR_INPUT permission error") public void relayout_freeformTask_appliesTransactionOnDraw() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); final DesktopModeWindowDecoration spyWindowDecor = spy(createWindowDecoration(taskInfo)); @@ -1275,597 +386,77 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { // Make non-resizable to avoid dealing with input-permissions (MONITOR_INPUT) taskInfo.isResizeable = false; - spyWindowDecor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); + spyWindowDecor.relayout(taskInfo); verify(mMockTransaction, never()).apply(); verify(mMockRootSurfaceControl).applyTransactionOnDraw(mMockTransaction); } @Test - @EnableFlags({Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP}) - public void relayout_shouldSetAppBounds_startsTransition() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - final DesktopModeWindowDecoration spyWindowDecor = - spy(createWindowDecoration(taskInfo, new FakeMaximizeMenuFactory(), /* relayout= */ - false, mTestHandler)); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - when(mDesktopModeCompatPolicy.shouldExcludeCaptionFromAppBounds(taskInfo)).thenReturn(true); - - spyWindowDecor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); - - verify(mTransitions).startTransition(eq(TRANSIT_CHANGE), any(), any()); - } - - @Test - @EnableFlags({Flags.FLAG_ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_PIP}) - public void relayout_shouldNotSetAppBounds_doesNotStartTransition() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - final DesktopModeWindowDecoration spyWindowDecor = - spy(createWindowDecoration(taskInfo, new FakeMaximizeMenuFactory(), /* relayout= */ - false, mTestHandler)); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); - when(mDesktopModeCompatPolicy.shouldExcludeCaptionFromAppBounds(taskInfo)).thenReturn( - false); - - spyWindowDecor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); - - verify(mTransitions, never()).startTransition(anyInt(), any(), any()); - } - - @Test - public void createMaximizeMenu_showsMenu() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final MaximizeMenu menu = mock(MaximizeMenu.class); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - new FakeMaximizeMenuFactory(menu)); - assertFalse(decoration.isMaximizeMenuActive()); - - createMaximizeMenu(decoration); - - verify(menu).show(anyBoolean(), anyBoolean(), anyBoolean(), - mOnMaxMenuHoverChangeListener.capture(), any(), any()); - assertTrue(decoration.isMaximizeMenuActive()); - } - - @Test - public void maximizeMenu_unHoversMenu_schedulesCloseMenu() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final MaximizeMenu menu = mock(MaximizeMenu.class); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - new FakeMaximizeMenuFactory(menu)); - decoration.setAppHeaderMaximizeButtonHovered(false); - createMaximizeMenu(decoration); - verify(menu).show(anyBoolean(), anyBoolean(), anyBoolean(), - mOnMaxMenuHoverChangeListener.capture(), any(), any()); - - mOnMaxMenuHoverChangeListener.getValue().invoke(false); - - verify(mMockHandler) - .postDelayed(mCloseMaxMenuRunnable.capture(), eq(CLOSE_MAXIMIZE_MENU_DELAY_MS)); - - mCloseMaxMenuRunnable.getValue().run(); - verify(menu).close(any()); - assertFalse(decoration.isMaximizeMenuActive()); - } - - @Test - public void maximizeMenu_unHoversButton_schedulesCloseMenu() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final MaximizeMenu menu = mock(MaximizeMenu.class); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - new FakeMaximizeMenuFactory(menu)); - decoration.setAppHeaderMaximizeButtonHovered(true); - createMaximizeMenu(decoration); - - decoration.setAppHeaderMaximizeButtonHovered(false); - - verify(mMockHandler) - .postDelayed(mCloseMaxMenuRunnable.capture(), eq(CLOSE_MAXIMIZE_MENU_DELAY_MS)); - - mCloseMaxMenuRunnable.getValue().run(); - verify(menu).close(any()); - assertFalse(decoration.isMaximizeMenuActive()); - } - - @Test - public void maximizeMenu_hoversMenu_cancelsCloseMenu() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final MaximizeMenu menu = mock(MaximizeMenu.class); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - new FakeMaximizeMenuFactory(menu)); - createMaximizeMenu(decoration); - verify(menu).show(anyBoolean(), anyBoolean(), anyBoolean(), - mOnMaxMenuHoverChangeListener.capture(), any(), any()); - - mOnMaxMenuHoverChangeListener.getValue().invoke(true); - - verify(mMockHandler).removeCallbacks(any()); - } - - @Test - public void maximizeMenu_hoversButton_cancelsCloseMenu() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final MaximizeMenu menu = mock(MaximizeMenu.class); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - new FakeMaximizeMenuFactory(menu)); - createMaximizeMenu(decoration); - verify(menu).show(anyBoolean(), anyBoolean(), anyBoolean(), - mOnMaxMenuHoverChangeListener.capture(), any(), any()); - - decoration.setAppHeaderMaximizeButtonHovered(true); - - verify(mMockHandler).removeCallbacks(any()); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - public void createMaximizeMenu_taskRequestsImmersive_showsImmersiveOption() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - taskInfo.requestedVisibleTypes = ~statusBars(); - final MaximizeMenu menu = mock(MaximizeMenu.class); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - new FakeMaximizeMenuFactory(menu)); - - createMaximizeMenu(decoration); - - verify(menu).show( - anyBoolean(), - /* showImmersiveOption= */ eq(true), - anyBoolean(), - any(), - any(), - any() - ); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - public void createMaximizeMenu_taskDoesNotRequestImmersive_hiddenImmersiveOption() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - taskInfo.requestedVisibleTypes = statusBars(); - final MaximizeMenu menu = mock(MaximizeMenu.class); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - new FakeMaximizeMenuFactory(menu)); - - createMaximizeMenu(decoration); - - verify(menu).show( - anyBoolean(), - /* showImmersiveOption= */ eq(false), - anyBoolean(), - any(), - any(), - any() - ); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - public void createMaximizeMenu_taskResizable_showsSnapOptions() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - taskInfo.isResizeable = true; - final MaximizeMenu menu = mock(MaximizeMenu.class); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - new FakeMaximizeMenuFactory(menu)); - - createMaximizeMenu(decoration); - - verify(menu).show( - anyBoolean(), - anyBoolean(), - /* showSnapOptions= */ eq(true), - any(), - any(), - any() - ); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_FULLY_IMMERSIVE_IN_DESKTOP) - public void createMaximizeMenu_taskUnresizable_hiddenSnapOptions() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - taskInfo.isResizeable = false; - final MaximizeMenu menu = mock(MaximizeMenu.class); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - new FakeMaximizeMenuFactory(menu)); - - createMaximizeMenu(decoration); - - verify(menu).show( - anyBoolean(), - anyBoolean(), - /* showSnapOptions= */ eq(false), - any(), - any(), - any() - ); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB) - public void capturedLink_CapturedLinkUsedIfValidAndWebUriUnavailable() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = createWindowDecoration( - taskInfo, TEST_URI1 /* captured link */, null /* web uri */, - null /* session transfer uri */, TEST_URI4 /* generic link */); - - // Verify handle menu's browser link set as captured link - createHandleMenu(decor); - verifyHandleMenuCreated(TEST_URI1); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB) - public void capturedLink_capturedLinkNotResetToSameLink() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = createWindowDecoration( - taskInfo, TEST_URI1 /* captured link */, null /* web uri */, - null /* session transfer uri */, null /* generic link */); - final ArgumentCaptor<Function1<Intent, Unit>> openInBrowserCaptor = - ArgumentCaptor.forClass(Function1.class); - - createHandleMenu(decor); - verify(mMockHandleMenu).show( - openInBrowserCaptor.capture(), - any(), - any(), - any(), - any(), - anyBoolean() - ); - // Run runnable to set captured link to used - openInBrowserCaptor.getValue().invoke(new Intent(Intent.ACTION_MAIN, TEST_URI1)); - - // Relayout decor with same captured link - decor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); - - // Verify handle menu's browser link not set to captured link since link is already used - createHandleMenu(decor); - verifyHandleMenuCreated(null /* uri */); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB) - public void capturedLink_capturedLinkSetToUsedAfterClick() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = createWindowDecoration( - taskInfo, TEST_URI1 /* captured link */, null /* web uri */, - null /* session transfer uri */, null /* generic link */); - final ArgumentCaptor<Function1<Intent, Unit>> openInBrowserCaptor = - ArgumentCaptor.forClass(Function1.class); - - // Simulate menu opening and clicking open in browser button - createHandleMenu(decor); - verify(mMockHandleMenu).show( - openInBrowserCaptor.capture(), - any(), - any(), - any(), - any(), - anyBoolean() - ); - openInBrowserCaptor.getValue().invoke(new Intent(Intent.ACTION_MAIN, TEST_URI1)); - - // Verify handle menu's browser link not set to captured link since link not valid after - // open in browser clicked - createHandleMenu(decor); - verifyHandleMenuCreated(null /* uri */); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB) - public void capturedLink_openInBrowserListenerCalledOnClick() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = createWindowDecoration( - taskInfo, TEST_URI1 /* captured link */, null /* web uri */, - null /* session transfer uri */, null /* generic link */); - final ArgumentCaptor<Function1<Intent, Unit>> openInBrowserCaptor = - ArgumentCaptor.forClass(Function1.class); - createHandleMenu(decor); - verify(mMockHandleMenu).show( - openInBrowserCaptor.capture(), - any(), - any(), - any(), - any(), - anyBoolean() - ); - - openInBrowserCaptor.getValue().invoke(new Intent(Intent.ACTION_MAIN, TEST_URI1)); - - verify(mMockWindowDecorationActions).onOpenInBrowser( - eq(taskInfo.taskId), argThat(intent -> intent.getData() == TEST_URI1)); - } - - @Test - @EnableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB, - com.android.wm.shell.Flags.FLAG_ENABLE_CREATE_ANY_BUBBLE, - com.android.wm.shell.Flags.FLAG_ENABLE_BUBBLE_TO_FULLSCREEN}) - public void capturedLink_desktopNotAvailable_linkNotUsed() { - mDesktopState.getOverrideDesktopModeSupportPerDisplay().put(Display.DEFAULT_DISPLAY, false); - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = createWindowDecoration( - taskInfo, TEST_URI1 /* captured link */, null /* web uri */, - null /* session transfer uri */, TEST_URI4 /* generic link */); - - decor.createHandleMenu(false); - // Verify handle menu is created without app or browser link - verifyHandleMenuCreated(/* uri= */ null); - // Verify assist content is not requested as it is not used - verify(mMockAssistContentRequester, never()).requestAssistContent(anyInt(), any()); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB) - public void sessionTransferUri_sessionTransferUriUsedWhenWhenAvailable() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = createWindowDecoration( - taskInfo, TEST_URI1 /* captured link */, TEST_URI2 /* web uri */, - TEST_URI3 /* session transfer uri */, TEST_URI4 /* generic link */); - // Verify handle menu's browser link set as web uri link when captured link is unavailable - createHandleMenu(decor); - verifyHandleMenuCreated(TEST_URI3); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB) - public void webUri_webUriUsedWhenSessionTransferUriUnavailable() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = createWindowDecoration( - taskInfo, TEST_URI1 /* captured link */, TEST_URI2 /* web uri */, - null /* session transfer uri */, TEST_URI4 /* generic link */); - // Verify handle menu's browser link set as web uri link when captured link is unavailable - createHandleMenu(decor); - verifyHandleMenuCreated(TEST_URI2); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB) - public void genericLink_genericLinkUsedWhenCapturedLinkAndAssistContentUriUnavailable() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = createWindowDecoration( - taskInfo, null /* captured link */, null /* web uri */, - null /* session transfer uri */, TEST_URI4 /* generic link */); - - // Verify handle menu's browser link set as generic link when captured link and web uri link - // are unavailable - createHandleMenu(decor); - verifyHandleMenuCreated(TEST_URI4); - } - - @Test - public void handleMenu_onCloseMenuClick_closesMenu() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - true /* relayout */); - final ArgumentCaptor<Function0<Unit>> closeClickListener = - ArgumentCaptor.forClass(Function0.class); - createHandleMenu(decoration); - verify(mMockHandleMenu).show( - any(), - any(), - closeClickListener.capture(), - any(), - any(), - anyBoolean() - ); - - closeClickListener.getValue().invoke(); - - verify(mMockHandleMenu).close(); - assertFalse(decoration.isHandleMenuActive()); - } - - @Test - public void createHandleMenu_immersiveWindow_forceShowsSystemBars() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - final DesktopModeWindowDecoration decoration = createWindowDecoration(taskInfo, - true /* relayout */); - when(mMockDesktopUserRepositories.getCurrent() - .isTaskInFullImmersiveState(taskInfo.taskId)).thenReturn(true); - - createHandleMenu(decoration); - - verify(mMockHandleMenu).show( - any(), - any(), - any(), - any(), - any(), - /* forceShowSystemBars= */ eq(true) - ); - } - - @Test - @DisableFlags({Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_HANDLE_EDUCATION, - Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB_EDUCATION_INTEGRATION}) - public void notifyCaptionStateChanged_flagDisabled_doNoNotify() { + public void relayout_fullscreenTask_doesNotCreateViewHostImmediately() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); final DesktopModeWindowDecoration spyWindowDecor = spy(createWindowDecoration(taskInfo)); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - spyWindowDecor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); + spyWindowDecor.relayout(taskInfo); - verify(mMockCaptionHandleRepository, never()).notifyCaptionChanged(any()); + verify(mMockSurfaceControlViewHostFactory, never()).create(any(), any(), any()); } @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_HANDLE_EDUCATION) - public void notifyCaptionStateChanged_inFullscreenMode_notifiesAppHandleVisible() { + public void relayout_fullscreenTask_postsViewHostCreation() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); final DesktopModeWindowDecoration spyWindowDecor = spy(createWindowDecoration(taskInfo)); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - ArgumentCaptor<CaptionState> captionStateArgumentCaptor = ArgumentCaptor.forClass( - CaptionState.class); - spyWindowDecor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); + ArgumentCaptor<Runnable> runnableArgument = ArgumentCaptor.forClass(Runnable.class); + spyWindowDecor.relayout(taskInfo); - verify(mMockCaptionHandleRepository, atLeastOnce()).notifyCaptionChanged( - captionStateArgumentCaptor.capture()); - assertThat(captionStateArgumentCaptor.getValue()).isInstanceOf( - CaptionState.AppHandle.class); + verify(mMockHandler).post(runnableArgument.capture()); + runnableArgument.getValue().run(); + verify(mMockSurfaceControlViewHostFactory).create(any(), any(), any()); } @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_HANDLE_EDUCATION) - @Ignore("TODO(b/367235906): Due to MONITOR_INPUT permission error") - public void notifyCaptionStateChanged_inWindowingMode_notifiesAppHeaderVisible() { + public void relayout_freeformTask_createsViewHostImmediately() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); - when(mMockAppHeaderViewHolder.getAppChipLocationInWindow()).thenReturn( - new Rect(/* left= */ 0, /* top= */ 1, /* right= */ 2, /* bottom= */ 3)); final DesktopModeWindowDecoration spyWindowDecor = spy(createWindowDecoration(taskInfo)); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FREEFORM); // Make non-resizable to avoid dealing with input-permissions (MONITOR_INPUT) taskInfo.isResizeable = false; - ArgumentCaptor<Function0<Unit>> runnableArgumentCaptor = ArgumentCaptor.forClass( - Function0.class); - ArgumentCaptor<CaptionState> captionStateArgumentCaptor = ArgumentCaptor.forClass( - CaptionState.class); - spyWindowDecor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); - verify(mMockAppHeaderViewHolder, atLeastOnce()).runOnAppChipGlobalLayout( - runnableArgumentCaptor.capture()); - runnableArgumentCaptor.getValue().invoke(); + spyWindowDecor.relayout(taskInfo); - verify(mMockCaptionHandleRepository, atLeastOnce()).notifyCaptionChanged( - captionStateArgumentCaptor.capture()); - assertThat(captionStateArgumentCaptor.getValue()).isInstanceOf( - CaptionState.AppHeader.class); + verify(mMockSurfaceControlViewHostFactory).create(any(), any(), any()); + verify(mMockHandler, never()).post(any()); } @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_HANDLE_EDUCATION) - public void notifyCaptionStateChanged_taskNotVisible_notifiesNoCaptionVisible() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ false); - final DesktopModeWindowDecoration spyWindowDecor = spy(createWindowDecoration(taskInfo)); - taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_UNDEFINED); - ArgumentCaptor<CaptionState> captionStateArgumentCaptor = ArgumentCaptor.forClass( - CaptionState.class); - - spyWindowDecor.relayout(taskInfo, false /* hasGlobalFocus */, mExclusionRegion); - - verify(mMockCaptionHandleRepository, atLeastOnce()).notifyCaptionChanged( - captionStateArgumentCaptor.capture()); - assertThat(captionStateArgumentCaptor.getValue()).isInstanceOf( - CaptionState.NoCaption.class); - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_HANDLE_EDUCATION) - public void notifyCaptionStateChanged_captionHandleExpanded_notifiesHandleMenuExpanded() { + public void relayout_removesExistingHandlerCallback() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); final DesktopModeWindowDecoration spyWindowDecor = spy(createWindowDecoration(taskInfo)); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - ArgumentCaptor<CaptionState> captionStateArgumentCaptor = ArgumentCaptor.forClass( - CaptionState.class); + ArgumentCaptor<Runnable> runnableArgument = ArgumentCaptor.forClass(Runnable.class); + spyWindowDecor.relayout(taskInfo); + verify(mMockHandler).post(runnableArgument.capture()); - spyWindowDecor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); - createHandleMenu(spyWindowDecor); + spyWindowDecor.relayout(taskInfo); - verify(mMockCaptionHandleRepository, atLeastOnce()).notifyCaptionChanged( - captionStateArgumentCaptor.capture()); - assertThat(captionStateArgumentCaptor.getValue()).isInstanceOf( - CaptionState.AppHandle.class); - assertThat( - ((CaptionState.AppHandle) captionStateArgumentCaptor.getValue()) - .isHandleMenuExpanded()).isEqualTo( - true); + verify(mMockHandler).removeCallbacks(runnableArgument.getValue()); } @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_HANDLE_EDUCATION) - public void notifyCaptionStateChanged_captionHandleClosed_notifiesHandleMenuClosed() { + public void close_removesExistingHandlerCallback() { final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(/* visible= */ true); final DesktopModeWindowDecoration spyWindowDecor = spy(createWindowDecoration(taskInfo)); taskInfo.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - ArgumentCaptor<CaptionState> captionStateArgumentCaptor = ArgumentCaptor.forClass( - CaptionState.class); + ArgumentCaptor<Runnable> runnableArgument = ArgumentCaptor.forClass(Runnable.class); + spyWindowDecor.relayout(taskInfo); + verify(mMockHandler).post(runnableArgument.capture()); - spyWindowDecor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); - createHandleMenu(spyWindowDecor); - spyWindowDecor.closeHandleMenu(); + spyWindowDecor.close(); - verify(mMockCaptionHandleRepository, atLeastOnce()).notifyCaptionChanged( - captionStateArgumentCaptor.capture()); - assertThat(captionStateArgumentCaptor.getValue()).isInstanceOf( - CaptionState.AppHandle.class); - assertThat( - ((CaptionState.AppHandle) captionStateArgumentCaptor.getValue()) - .isHandleMenuExpanded()).isEqualTo( - false); - - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB) - public void browserApp_transferSessionUriUsedForBrowserAppWhenAvailable() { - // Make {@link AppToWebUtils#isBrowserApp} return true - ResolveInfo browserResolveInfo = createResolveInfo(true /* handleAllWebUriData */); - when(mMockPackageManager.queryIntentActivitiesAsUser(any(), anyInt(), anyInt())) - .thenReturn(List.of(browserResolveInfo)); - - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = createWindowDecoration( - taskInfo, TEST_URI1 /* captured link */, TEST_URI2 /* web uri */, - null /* transfer session uri */, TEST_URI4 /* generic link */); - - // Verify web uri used for browser applications - createHandleMenu(decor); - verifyHandleMenuCreated(TEST_URI2); - } - - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_APP_TO_WEB) - public void browserApp_webUriUsedForBrowserAppWhenTransferSessionUriUnavailable() { - // Make {@link AppToWebUtils#isBrowserApp} return true - ResolveInfo resolveInfo = new ResolveInfo(); - resolveInfo.handleAllWebDataURI = true; - resolveInfo.activityInfo = createActivityInfo(); - when(mMockPackageManager.queryIntentActivitiesAsUser(any(), anyInt(), anyInt())) - .thenReturn(List.of(resolveInfo)); - - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = createWindowDecoration( - taskInfo, TEST_URI1 /* captured link */, TEST_URI2 /* web uri */, - TEST_URI3 /* transfer session uri */, TEST_URI4 /* generic link */); - - // Verify web uri used for browser applications - createHandleMenu(decor); - verifyHandleMenuCreated(TEST_URI3); - } - - @Test - public void setAnimatingTaskResizeOrReposition_returnsWhenViewHolderIsNull() { - final ActivityManager.RunningTaskInfo taskInfo = createTaskInfo(true /* visible */); - final DesktopModeWindowDecoration decor = - spy(createWindowDecoration(taskInfo, true /* relayout */)); - - // Close the decor to close the view holder and set it to null - decor.close(); - - // Verify returns when view holder is null - try { - decor.setAnimatingTaskResizeOrReposition(true /* animatingTaskResizeOrReposition */); - } catch (NullPointerException e) { - fail("Attempted to access view holder after window decor is closed"); - } - } - - - private void verifyHandleMenuCreated(@Nullable Uri uri) { - verify(mMockHandleMenuFactory).create(any(), any(), any(), any(), any(), any(), anyInt(), - any(), anyBoolean(), anyBoolean(), anyBoolean(), anyBoolean(), anyBoolean(), - anyBoolean(), anyBoolean(), argThat(intent -> - (uri == null && intent == null) || intent.getData().equals(uri)), - any(), anyInt(), anyInt(), anyInt(), anyInt()); - } - - private void createMaximizeMenu(DesktopModeWindowDecoration decoration) { - final Function0<Unit> l = () -> Unit.INSTANCE; - decoration.createMaximizeMenu(); + verify(mMockHandler).removeCallbacks(runnableArgument.getValue()); } private void fillRoundedCornersResources(int fillValue) { @@ -1885,101 +476,21 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { R.dimen.rounded_corner_radius_bottom, fillValue); } - private void updateRelayoutParams( - RelayoutParams relayoutParams, ActivityManager.RunningTaskInfo taskInfo) { - DesktopModeWindowDecoration.updateRelayoutParams( - relayoutParams, - mTestableContext, - taskInfo, - mMockSplitScreenController, - DEFAULT_APPLY_START_TRANSACTION_ON_DRAW, - DEFAULT_SHOULD_SET_TASK_POSITIONING_AND_CROP, - DEFAULT_IS_STATUSBAR_VISIBLE, - DEFAULT_IS_KEYGUARD_VISIBLE_AND_OCCLUDED, - DEFAULT_IS_IN_FULL_IMMERSIVE_MODE, - DEFAULT_IS_DRAGGING, - new InsetsState(), - DEFAULT_HAS_GLOBAL_FOCUS, - mExclusionRegion, - DEFAULT_SHOULD_IGNORE_CORNER_RADIUS, - DEFAULT_SHOULD_EXCLUDE_CAPTION_FROM_APP_BOUNDS, - mDesktopConfig, - DEFAULT_IN_SYNC_WITH_TRANSITION); - } - - private DesktopModeWindowDecoration createWindowDecoration( - ActivityManager.RunningTaskInfo taskInfo, @Nullable Uri capturedLink, - @Nullable Uri webUri, @Nullable Uri sessionTransferUri, @Nullable Uri genericLink) { - taskInfo.capturedLink = capturedLink; - taskInfo.capturedLinkTimestamp = System.currentTimeMillis(); - mAssistContent.setWebUri(webUri); - mAssistContent.setSessionTransferUri(sessionTransferUri); - final String genericLinkString = genericLink == null ? null : genericLink.toString(); - doReturn(genericLinkString).when(mMockGenericLinksParser).getGenericLink(any()); - // Relayout to set captured link - return createWindowDecoration(taskInfo, new FakeMaximizeMenuFactory(), true /* relayout */); - } private DesktopModeWindowDecoration createWindowDecoration( ActivityManager.RunningTaskInfo taskInfo) { - return createWindowDecoration(taskInfo, new FakeMaximizeMenuFactory(), - false /* relayout */); - } - - private DesktopModeWindowDecoration createWindowDecoration( - ActivityManager.RunningTaskInfo taskInfo, boolean relayout) { - return createWindowDecoration(taskInfo, new FakeMaximizeMenuFactory(), relayout); - } - - private DesktopModeWindowDecoration createWindowDecoration( - ActivityManager.RunningTaskInfo taskInfo, - MaximizeMenuFactory maximizeMenuFactory) { - return createWindowDecoration(taskInfo, maximizeMenuFactory, false /* relayout */); - } - - private DesktopModeWindowDecoration createWindowDecoration( - ActivityManager.RunningTaskInfo taskInfo, - MaximizeMenuFactory maximizeMenuFactory, - boolean relayout) { - return createWindowDecoration(taskInfo, maximizeMenuFactory, relayout, mMockHandler); - } - - private DesktopModeWindowDecoration createWindowDecoration( - ActivityManager.RunningTaskInfo taskInfo, - MaximizeMenuFactory maximizeMenuFactory, - boolean relayout, - Handler handler) { - final DesktopModeWindowDecoration windowDecor = new DesktopModeWindowDecoration(mContext, - mContext, mMockDisplayController, mMockTaskResourceLoader, - mMockSplitScreenController, mMockDesktopUserRepositories, mMockShellTaskOrganizer, - taskInfo, mMockSurfaceControl, handler, mMainExecutor, - mMockMainCoroutineDispatcher, mMockBgCoroutineScope, mBgExecutor, mTransitions, - mMockChoreographer, mMockSyncQueue, mMockAppHeaderViewHolderFactory, - mMockAppHandleViewHolderFactory, mMockRootTaskDisplayAreaOrganizer, - mMockGenericLinksParser, mMockAssistContentRequester, SurfaceControl.Builder::new, - mMockTransactionSupplier, WindowContainerTransaction::new, SurfaceControl::new, - new WindowManagerWrapper(mMockWindowManager), mMockSurfaceControlViewHostFactory, - mMockWindowDecorViewHostSupplier, maximizeMenuFactory, mMockHandleMenuFactory, - mMockMultiInstanceHelper, mMockCaptionHandleRepository, mDesktopModeEventLogger, - mDesktopModeUiEventLogger, mDesktopModeCompatPolicy, mDesktopState, - mDesktopConfig, mMockWindowDecorationActions); + DesktopModeWindowDecoration windowDecor = new DesktopModeWindowDecoration(mContext, + mMockDisplayController, mMockShellTaskOrganizer, taskInfo, mMockSurfaceControl, + mMockHandler, mMockChoreographer, mMockSyncQueue, mMockRootTaskDisplayAreaOrganizer, + SurfaceControl.Builder::new, mMockTransactionSupplier, + WindowContainerTransaction::new, SurfaceControl::new, + mMockSurfaceControlViewHostFactory); windowDecor.setCaptionListeners(mMockTouchEventListener, mMockTouchEventListener, mMockTouchEventListener, mMockTouchEventListener); windowDecor.setExclusionRegionListener(mMockExclusionRegionListener); - windowDecor.mDecorWindowContext = mContext; - if (relayout) { - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */, mExclusionRegion); - } return windowDecor; } - private ResolveInfo createResolveInfo(boolean handleAllWebDataURI) { - final ResolveInfo info = new ResolveInfo(); - info.handleAllWebDataURI = handleAllWebDataURI; - info.activityInfo = createActivityInfo(); - return info; - } - private ActivityManager.RunningTaskInfo createTaskInfo(boolean visible) { final ActivityManager.TaskDescription.Builder taskDescriptionBuilder = new ActivityManager.TaskDescription.Builder(); @@ -1988,68 +499,21 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { .setTaskDescriptionBuilder(taskDescriptionBuilder) .setVisible(visible) .build(); - taskInfo.isVisibleRequested = visible; + taskInfo.topActivityInfo = new ActivityInfo(); + taskInfo.topActivityInfo.applicationInfo = new ApplicationInfo(); taskInfo.realActivity = new ComponentName("com.android.wm.shell.windowdecor", "DesktopModeWindowDecorationTests"); taskInfo.baseActivity = new ComponentName("com.android.wm.shell.windowdecor", "DesktopModeWindowDecorationTests"); - taskInfo.topActivityInfo = createActivityInfo(); return taskInfo; } - private void createHandleMenu(@NonNull DesktopModeWindowDecoration decor) { - decor.createHandleMenu(false); - // Call DesktopModeWindowDecoration#onAssistContentReceived because decor waits to receive - // {@link AssistContent} before creating the menu - decor.onAssistContentReceived(mAssistContent); - } - - private static ActivityInfo createActivityInfo() { - final ApplicationInfo applicationInfo = new ApplicationInfo(); - applicationInfo.packageName = "DesktopModeWindowDecorationTestPackage"; - final ActivityInfo activityInfo = new ActivityInfo(); - activityInfo.applicationInfo = applicationInfo; - activityInfo.packageName = "DesktopModeWindowDecorationTestPackage"; - activityInfo.name = "DesktopModeWindowDecorationTest"; - return activityInfo; - } - private static boolean hasNoInputChannelFeature(RelayoutParams params) { return (params.mInputFeatures & WindowManager.LayoutParams.INPUT_FEATURE_NO_INPUT_CHANNEL) != 0; } - private InsetsSource createInsetsSource(int id, @WindowInsets.Type.InsetsType int type, - boolean visible, @NonNull Rect frame) { - final InsetsSource source = new InsetsSource(id, type); - source.setVisible(visible); - source.setFrame(frame); - return source; - } - - private InsetsState createInsetsState(@NonNull List<InsetsSource> sources) { - final InsetsState state = new InsetsState(); - sources.forEach(state::addSource); - return state; - } - - private InsetsState createInsetsState(@WindowInsets.Type.InsetsType int type, boolean visible) { - final InsetsSource source = createInsetsSource(0 /* id */, type, visible, new Rect()); - return createInsetsState(List.of(source)); - } - - private static DisplayCutout createDisplayCutout(int cutoutSize) { - Insets safeInsets = Insets.of(0, cutoutSize, 0, 0); - DisplayCutout cutout = new DisplayCutout( - safeInsets, - /* boundLeft= */ null, - /* boundTop= */ new Rect(0, 0, cutoutSize, cutoutSize), - /* boundRight= */ null, - /* boundBottom= */ null); - return cutout; - } - private static class TestTouchEventListener extends GestureDetector.SimpleOnGestureListener implements View.OnClickListener, View.OnTouchListener, View.OnLongClickListener, View.OnGenericMotionListener, DragDetector.MotionEventHandler { @@ -2077,31 +541,4 @@ public class DesktopModeWindowDecorationTests extends ShellTestCase { return false; } } - - private static final class FakeMaximizeMenuFactory implements MaximizeMenuFactory { - private final MaximizeMenu mMaximizeMenu; - - FakeMaximizeMenuFactory() { - this(mock(MaximizeMenu.class)); - } - - FakeMaximizeMenuFactory(MaximizeMenu menu) { - mMaximizeMenu = menu; - } - - @NonNull - @Override - public MaximizeMenu create(@NonNull SyncTransactionQueue syncQueue, - @NonNull RootTaskDisplayAreaOrganizer rootTdaOrganizer, - @NonNull DisplayController displayController, - @NonNull WindowDecorationActions windowDecorationActions, - @NonNull ActivityManager.RunningTaskInfo taskInfo, - @NonNull Context decorWindowContext, - @NonNull Function2<? super Integer,? super Integer,? extends Point> - positionSupplier, - @NonNull Supplier<SurfaceControl.Transaction> transactionSupplier, - @NonNull DesktopModeUiEventLogger desktopModeUiEventLogger) { - return mMaximizeMenu; - } - } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragDetectorTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragDetectorTest.kt index 7f7211d65f..3fbab0f9e2 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragDetectorTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragDetectorTest.kt @@ -21,7 +21,6 @@ import android.testing.AndroidTestingRunner import android.view.MotionEvent import android.view.InputDevice import androidx.test.filters.SmallTest -import com.android.wm.shell.ShellTestCase import org.junit.After import org.junit.Assert.assertFalse import org.junit.Assert.assertTrue @@ -35,7 +34,6 @@ import org.mockito.Mockito.any import org.mockito.Mockito.argThat import org.mockito.Mockito.never import org.mockito.Mockito.verify -import org.mockito.kotlin.times /** * Tests for [DragDetector]. @@ -45,17 +43,22 @@ import org.mockito.kotlin.times */ @SmallTest @RunWith(AndroidTestingRunner::class) -class DragDetectorTest : ShellTestCase() { +class DragDetectorTest { private val motionEvents = mutableListOf<MotionEvent>() @Mock private lateinit var eventHandler: DragDetector.MotionEventHandler + private lateinit var dragDetector: DragDetector + @Before fun setUp() { MockitoAnnotations.initMocks(this) `when`(eventHandler.handleMotionEvent(any(), any())).thenReturn(true) + + dragDetector = DragDetector(eventHandler) + dragDetector.setTouchSlop(SLOP) } @After @@ -68,7 +71,6 @@ class DragDetectorTest : ShellTestCase() { @Test fun testNoMove_passesDownAndUp() { - val dragDetector = createDragDetector() assertTrue(dragDetector.onMotionEvent(createMotionEvent(MotionEvent.ACTION_DOWN))) verify(eventHandler).handleMotionEvent(any(), argThat { return@argThat it.action == MotionEvent.ACTION_DOWN && it.x == X && it.y == Y && @@ -82,27 +84,8 @@ class DragDetectorTest : ShellTestCase() { }) } - @Test - fun testNoMove_mouse_passesDownAndUp() { - val dragDetector = createDragDetector() - assertTrue(dragDetector.onMotionEvent( - createMotionEvent(MotionEvent.ACTION_DOWN, isTouch = false))) - verify(eventHandler).handleMotionEvent(any(), argThat { - return@argThat it.action == MotionEvent.ACTION_DOWN && it.x == X && it.y == Y && - it.source == InputDevice.SOURCE_MOUSE - }) - - assertTrue(dragDetector.onMotionEvent( - createMotionEvent(MotionEvent.ACTION_UP, isTouch = false))) - verify(eventHandler).handleMotionEvent(any(), argThat { - return@argThat it.action == MotionEvent.ACTION_UP && it.x == X && it.y == Y && - it.source == InputDevice.SOURCE_MOUSE - }) - } - @Test fun testMoveInSlop_touch_passesDownAndUp() { - val dragDetector = createDragDetector() `when`(eventHandler.handleMotionEvent(any(), argThat { return@argThat it.action == MotionEvent.ACTION_DOWN })).thenReturn(false) @@ -129,7 +112,6 @@ class DragDetectorTest : ShellTestCase() { @Test fun testMoveInSlop_mouse_passesDownMoveAndUp() { - val dragDetector = createDragDetector() `when`(eventHandler.handleMotionEvent(any(), argThat { it.action == MotionEvent.ACTION_DOWN })).thenReturn(false) @@ -159,7 +141,6 @@ class DragDetectorTest : ShellTestCase() { @Test fun testMoveBeyondSlop_passesDownMoveAndUp() { - val dragDetector = createDragDetector() `when`(eventHandler.handleMotionEvent(any(), argThat { it.action == MotionEvent.ACTION_DOWN })).thenReturn(false) @@ -184,57 +165,8 @@ class DragDetectorTest : ShellTestCase() { }) } - @Test - fun testDownMoveDown_shouldIgnoreTheSecondDownMotion() { - val dragDetector = createDragDetector() - assertTrue(dragDetector.onMotionEvent(createMotionEvent(MotionEvent.ACTION_DOWN))) - verify(eventHandler).handleMotionEvent(any(), argThat { - return@argThat it.action == MotionEvent.ACTION_DOWN && it.x == X && it.y == Y && - it.source == InputDevice.SOURCE_TOUCHSCREEN - }) - - val newX = X + SLOP + 1 - assertTrue(dragDetector.onMotionEvent(createMotionEvent(MotionEvent.ACTION_MOVE, newX, Y))) - verify(eventHandler).handleMotionEvent(any(), argThat { - return@argThat it.action == MotionEvent.ACTION_MOVE && it.x == newX && it.y == Y && - it.source == InputDevice.SOURCE_TOUCHSCREEN - }) - - assertTrue(dragDetector.onMotionEvent(createMotionEvent(MotionEvent.ACTION_DOWN))) - verify(eventHandler).handleMotionEvent(any(), argThat { - return@argThat it.action == MotionEvent.ACTION_MOVE && it.x == newX && it.y == Y && - it.source == InputDevice.SOURCE_TOUCHSCREEN - }) - } - - @Test - fun testDownMouseMoveDownTouch_shouldIgnoreTheTouchDownMotion() { - val dragDetector = createDragDetector() - assertTrue(dragDetector.onMotionEvent( - createMotionEvent(MotionEvent.ACTION_DOWN, isTouch = false))) - verify(eventHandler).handleMotionEvent(any(), argThat { - return@argThat it.action == MotionEvent.ACTION_DOWN && it.x == X && it.y == Y && - it.source == InputDevice.SOURCE_MOUSE - }) - - val newX = X + SLOP + 1 - assertTrue(dragDetector.onMotionEvent( - createMotionEvent(MotionEvent.ACTION_MOVE, newX, Y, isTouch = false))) - verify(eventHandler).handleMotionEvent(any(), argThat { - return@argThat it.action == MotionEvent.ACTION_MOVE && it.x == newX && it.y == Y && - it.source == InputDevice.SOURCE_MOUSE - }) - - assertTrue(dragDetector.onMotionEvent(createMotionEvent(MotionEvent.ACTION_DOWN))) - verify(eventHandler).handleMotionEvent(any(), argThat { - return@argThat it.action == MotionEvent.ACTION_MOVE && it.x == newX && it.y == Y && - it.source == InputDevice.SOURCE_MOUSE - }) - } - @Test fun testPassesHoverEnter() { - val dragDetector = createDragDetector() `when`(eventHandler.handleMotionEvent(any(), argThat { it.action == MotionEvent.ACTION_HOVER_ENTER })).thenReturn(false) @@ -247,7 +179,6 @@ class DragDetectorTest : ShellTestCase() { @Test fun testPassesHoverMove() { - val dragDetector = createDragDetector() assertTrue(dragDetector.onMotionEvent(createMotionEvent(MotionEvent.ACTION_HOVER_MOVE))) verify(eventHandler).handleMotionEvent(any(), argThat { return@argThat it.action == MotionEvent.ACTION_HOVER_MOVE && it.x == X && it.y == Y @@ -256,240 +187,21 @@ class DragDetectorTest : ShellTestCase() { @Test fun testPassesHoverExit() { - val dragDetector = createDragDetector() assertTrue(dragDetector.onMotionEvent(createMotionEvent(MotionEvent.ACTION_HOVER_EXIT))) verify(eventHandler).handleMotionEvent(any(), argThat { return@argThat it.action == MotionEvent.ACTION_HOVER_EXIT && it.x == X && it.y == Y }) } - @Test - fun testHoldToDrag_holdsWithMovementWithinSlop_passesDragMoveEvents() { - val dragDetector = createDragDetector(holdToDragMinDurationMs = 100, slop = 20) - val downTime = SystemClock.uptimeMillis() - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_DOWN, - x = 500f, - y = 10f, - isTouch = true, - downTime = downTime, - eventTime = downTime - )) - - // Couple of movements within the slop, still counting as "holding" - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_MOVE, - x = 500f + 10f, // within slop - y = 10f + 10f, // within slop - isTouch = true, - downTime = downTime, - eventTime = downTime + 30 - )) - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_MOVE, - x = 500f - 10f, // within slop - y = 10f - 5f, // within slop - isTouch = true, - downTime = downTime, - eventTime = downTime + 70 - )) - // Now go beyond slop, but after the required holding period. - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_MOVE, - x = 500f + 50f, // beyond slop - y = 10f + 50f, // beyond slop - isTouch = true, - downTime = downTime, - eventTime = downTime + 101 // after hold period - )) - - // Had a valid hold, so there should be 1 "move". - verify(eventHandler, times(1)) - .handleMotionEvent(any(), argThat { ev -> ev.action == MotionEvent.ACTION_MOVE }) - } - - @Test - fun testHoldToDrag_holdsWithoutAnyMovement_passesMoveEvents() { - val dragDetector = createDragDetector(holdToDragMinDurationMs = 100, slop = 20) - val downTime = SystemClock.uptimeMillis() - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_DOWN, - x = 500f, - y = 10f, - isTouch = true, - downTime = downTime, - eventTime = downTime - )) - - // First |move| is already beyond slop and after holding period. - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_MOVE, - x = 500f + 50f, // beyond slop - y = 10f + 50f, // beyond slop - isTouch = true, - downTime = downTime, - eventTime = downTime + 101 // after hold period - )) - - // Considered a valid hold, so there should be 1 "move". - verify(eventHandler, times(1)) - .handleMotionEvent(any(), argThat { ev -> ev.action == MotionEvent.ACTION_MOVE }) - } - - @Test - fun testHoldToDrag_returnsWithinSlopAfterHoldPeriod_passesDragMoveEvents() { - val dragDetector = createDragDetector(holdToDragMinDurationMs = 100, slop = 20) - val downTime = SystemClock.uptimeMillis() - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_DOWN, - x = 500f, - y = 10f, - isTouch = true, - downTime = downTime, - eventTime = downTime - )) - // Go beyond slop after the required holding period. - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_MOVE, - x = 500f + 50f, // beyond slop - y = 10f + 50f, // beyond slop - isTouch = true, - downTime = downTime, - eventTime = downTime + 101 // after hold period - )) - - // Return to original coordinates after holding period. - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_MOVE, - x = 500f, // within slop - y = 10f, // within slop - isTouch = true, - downTime = downTime, - eventTime = downTime + 102 // after hold period - )) - - // Both |moves| should be passed, even the one in the slop region since it was after the - // holding period. (e.g. after you drag the handle you may return to its original position). - verify(eventHandler, times(2)) - .handleMotionEvent(any(), argThat { ev -> ev.action == MotionEvent.ACTION_MOVE }) - } - - @Test - fun testHoldToDrag_straysDuringHoldPeriod_skipsMoveEvents() { - val dragDetector = createDragDetector(holdToDragMinDurationMs = 100, slop = 20) - val downTime = SystemClock.uptimeMillis() - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_DOWN, - x = 500f, - y = 10f, - isTouch = true, - downTime = downTime, - eventTime = downTime - )) - - // Go beyond slop before the required holding period. - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_MOVE, - x = 500f + 50f, // beyond slop - y = 10f + 50f, // beyond slop - isTouch = true, - downTime = downTime, - eventTime = downTime + 30 // during hold period - )) - - // The |move| was too quick and did not held, do not pass it to the handler. - verify(eventHandler, never()) - .handleMotionEvent(any(), argThat { ev -> ev.action == MotionEvent.ACTION_MOVE }) - } - - @Test - fun testHoldToDrag_straysDuringHoldPeriodAndReturnsWithinSlop_skipsMoveEvents() { - val dragDetector = createDragDetector(holdToDragMinDurationMs = 100, slop = 20) - val downTime = SystemClock.uptimeMillis() - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_DOWN, - x = 500f, - y = 10f, - isTouch = true, - downTime = downTime, - eventTime = downTime - )) - // Go beyond slop before the required holding period. - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_MOVE, - x = 500f + 50f, // beyond slop - y = 10f + 50f, // beyond slop - isTouch = true, - downTime = downTime, - eventTime = downTime + 30 // during hold period - )) - - // Return to slop area during holding period. - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_MOVE, - x = 500f + 10f, // within slop - y = 10f + 10f, // within slop - isTouch = true, - downTime = downTime, - eventTime = downTime + 50 // during hold period - )) - - // The first |move| invalidates the drag even if you return within the hold period, so the - // |move| should not be passed to the handler. - verify(eventHandler, never()) - .handleMotionEvent(any(), argThat { ev -> ev.action == MotionEvent.ACTION_MOVE }) - } - - @Test - fun testHoldToDrag_noHoldRequired_passesMoveEvents() { - val dragDetector = createDragDetector(holdToDragMinDurationMs = 0, slop = 20) - val downTime = SystemClock.uptimeMillis() - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_DOWN, - x = 500f, - y = 10f, - isTouch = true, - downTime = downTime, - eventTime = downTime - )) - - dragDetector.onMotionEvent(createMotionEvent( - action = MotionEvent.ACTION_MOVE, - x = 500f + 50f, // beyond slop - y = 10f + 50f, // beyond slop - isTouch = true, - downTime = downTime, - eventTime = downTime + 1 - )) - - // The |move| should be passed to the handler as no hold period was needed. - verify(eventHandler, times(1)) - .handleMotionEvent(any(), argThat { ev -> ev.action == MotionEvent.ACTION_MOVE }) - } - - private fun createMotionEvent( - action: Int, - x: Float = X, - y: Float = Y, - isTouch: Boolean = true, - downTime: Long = SystemClock.uptimeMillis(), - eventTime: Long = SystemClock.uptimeMillis() - ): MotionEvent { - val ev = MotionEvent.obtain(downTime, eventTime, action, x, y, 0) + private fun createMotionEvent(action: Int, x: Float = X, y: Float = Y, isTouch: Boolean = true): + MotionEvent { + val time = SystemClock.uptimeMillis() + val ev = MotionEvent.obtain(time, time, action, x, y, 0) ev.source = if (isTouch) InputDevice.SOURCE_TOUCHSCREEN else InputDevice.SOURCE_MOUSE motionEvents.add(ev) return ev } - private fun createDragDetector( - holdToDragMinDurationMs: Long = 0, - slop: Int = SLOP - ) = DragDetector( - eventHandler, - holdToDragMinDurationMs, - slop - ) - companion object { private const val SLOP = 10 private const val X = 123f diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragPositioningCallbackUtilityTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragPositioningCallbackUtilityTest.kt index c51dcd1cfd..f750e6b9a6 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragPositioningCallbackUtilityTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragPositioningCallbackUtilityTest.kt @@ -21,7 +21,6 @@ import android.content.res.Resources import android.graphics.PointF import android.graphics.Rect import android.os.IBinder -import android.platform.test.annotations.DisableFlags import android.platform.test.annotations.EnableFlags import android.testing.AndroidTestingRunner import android.view.Display @@ -30,20 +29,19 @@ import com.android.window.flags.Flags import com.android.wm.shell.R import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.DisplayLayout +import com.android.wm.shell.shared.DesktopModeStatus import com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_BOTTOM -import com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_LEFT import com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_RIGHT import com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_TOP import com.google.common.truth.Truth.assertThat -import junit.framework.Assert.assertFalse import junit.framework.Assert.assertTrue import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import org.mockito.Mock import org.mockito.Mockito.any -import org.mockito.MockitoAnnotations import org.mockito.Mockito.`when` as whenever +import org.mockito.MockitoAnnotations /** * Tests for [DragPositioningCallbackUtility]. @@ -55,25 +53,18 @@ import org.mockito.Mockito.`when` as whenever class DragPositioningCallbackUtilityTest { @Mock private lateinit var mockWindowDecoration: WindowDecoration<*> - @Mock private lateinit var taskToken: WindowContainerToken - @Mock private lateinit var taskBinder: IBinder - @Mock private lateinit var mockDisplayController: DisplayController - @Mock private lateinit var mockDisplayLayout: DisplayLayout - @Mock private lateinit var mockDisplay: Display - @Mock private lateinit var mockContext: Context - @Mock private lateinit var mockResources: Resources @@ -91,13 +82,12 @@ class DragPositioningCallbackUtilityTest { initializeTaskInfo() mockWindowDecoration.mDisplay = mockDisplay mockWindowDecoration.mDecorWindowContext = mockContext - mockWindowDecoration.mTaskInfo.isResizeable = true whenever(mockContext.getResources()).thenReturn(mockResources) whenever(mockWindowDecoration.mDecorWindowContext.resources).thenReturn(mockResources) whenever(mockResources.getDimensionPixelSize(R.dimen.desktop_mode_minimum_window_width)) - .thenReturn(DESKTOP_MODE_MIN_WIDTH) + .thenReturn(DESKTOP_MODE_MIN_WIDTH) whenever(mockResources.getDimensionPixelSize(R.dimen.desktop_mode_minimum_window_height)) - .thenReturn(DESKTOP_MODE_MIN_HEIGHT) + .thenReturn(DESKTOP_MODE_MIN_HEIGHT) whenever(mockDisplay.displayId).thenAnswer { DISPLAY_ID } } @@ -111,11 +101,9 @@ class DragPositioningCallbackUtilityTest { val newY = STARTING_BOUNDS.top.toFloat() + 95 val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, + DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) + mockWindowDecoration) assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) @@ -133,11 +121,9 @@ class DragPositioningCallbackUtilityTest { val newY = STARTING_BOUNDS.top.toFloat() + 5 val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, + DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) + mockWindowDecoration) assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top + 5) @@ -145,171 +131,6 @@ class DragPositioningCallbackUtilityTest { assertThat(repositionTaskBounds.bottom).isEqualTo(STARTING_BOUNDS.bottom) } - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_SCALED_RESIZING) - fun testChangeBounds_unresizeableApp_heightLessThanMin_resetToStartingBounds() { - mockWindowDecoration.mTaskInfo.isResizeable = false - val startingPoint = PointF(STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat()) - val repositionTaskBounds = Rect(STARTING_BOUNDS) - - // Resize to width of 95px and height of 5px with min width of 10px - val newX = STARTING_BOUNDS.right.toFloat() - 5 - val newY = STARTING_BOUNDS.top.toFloat() + 95 - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - assertFalse( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, - repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - - assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) - assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) - assertThat(repositionTaskBounds.right).isEqualTo(STARTING_BOUNDS.right) - assertThat(repositionTaskBounds.bottom).isEqualTo(STARTING_BOUNDS.bottom) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_SCALED_RESIZING) - fun testChangeBounds_unresizeableApp_initialHeightLessThanMin_increasingBounds_resizeAllowed() { - mockWindowDecoration.mTaskInfo.isResizeable = false - val startingPoint = PointF(BELOW_MIN_HEIGHT_BOUNDS.right.toFloat(), - BELOW_MIN_HEIGHT_BOUNDS.bottom.toFloat()) - val repositionTaskBounds = Rect(BELOW_MIN_HEIGHT_BOUNDS) - - // Resize to increased bounds - val newX = BELOW_MIN_HEIGHT_BOUNDS.right.toFloat() + 20 - val newY = BELOW_MIN_HEIGHT_BOUNDS.bottom.toFloat() + 10 - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - // Resize should be allowed as drag is in direction of desired range - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, - repositionTaskBounds, BELOW_MIN_HEIGHT_BOUNDS, STABLE_BOUNDS, delta, - mockDisplayController, mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - - assertThat(repositionTaskBounds.left).isEqualTo(BELOW_MIN_HEIGHT_BOUNDS.left) - assertThat(repositionTaskBounds.top).isEqualTo(BELOW_MIN_HEIGHT_BOUNDS.top) - assertThat(repositionTaskBounds.right).isEqualTo(BELOW_MIN_HEIGHT_BOUNDS.right + 20) - assertThat(repositionTaskBounds.bottom).isEqualTo(BELOW_MIN_HEIGHT_BOUNDS.bottom + 10) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_SCALED_RESIZING) - fun testChangeBounds_unresizeableApp_initialHeightMoreThanMax_decreasingBounds_resizeAllowed() { - mockWindowDecoration.mTaskInfo.isResizeable = false - val startingPoint = PointF(EXCEEDS_MAX_HEIGHT_BOUNDS.right.toFloat(), - EXCEEDS_MAX_HEIGHT_BOUNDS.top.toFloat()) - val repositionTaskBounds = Rect(EXCEEDS_MAX_HEIGHT_BOUNDS) - - // Resize to decreased bounds. - val newX = EXCEEDS_MAX_HEIGHT_BOUNDS.right.toFloat() - 10 - val newY = EXCEEDS_MAX_HEIGHT_BOUNDS.top.toFloat() + 20 - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - // Resize should be allowed as drag is in direction of desired range. - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, - repositionTaskBounds, EXCEEDS_MAX_HEIGHT_BOUNDS, STABLE_BOUNDS, delta, - mockDisplayController, mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - - assertThat(repositionTaskBounds.left).isEqualTo(EXCEEDS_MAX_HEIGHT_BOUNDS.left) - assertThat(repositionTaskBounds.top).isEqualTo(EXCEEDS_MAX_HEIGHT_BOUNDS.top + 20) - assertThat(repositionTaskBounds.right).isEqualTo(EXCEEDS_MAX_HEIGHT_BOUNDS.right - 10) - assertThat(repositionTaskBounds.bottom).isEqualTo(EXCEEDS_MAX_HEIGHT_BOUNDS.bottom) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_SCALED_RESIZING) - fun testChangeBounds_unresizeableApp_widthLessThanMin_resetToStartingBounds() { - mockWindowDecoration.mTaskInfo.isResizeable = false - val startingPoint = PointF(STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat()) - val repositionTaskBounds = Rect(STARTING_BOUNDS) - - // Resize to height of 95px and width of 5px with min width of 10px - val newX = STARTING_BOUNDS.right.toFloat() - 95 - val newY = STARTING_BOUNDS.top.toFloat() + 5 - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - assertFalse( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, - repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - - assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) - assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) - assertThat(repositionTaskBounds.right).isEqualTo(STARTING_BOUNDS.right) - assertThat(repositionTaskBounds.bottom).isEqualTo(STARTING_BOUNDS.bottom) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_SCALED_RESIZING) - fun testChangeBounds_unresizeableApp_initialWidthLessThanMin_increasingBounds_resizeAllowed() { - mockWindowDecoration.mTaskInfo.isResizeable = false - val startingPoint = PointF(BELOW_MIN_WIDTH_BOUNDS.right.toFloat(), - BELOW_MIN_WIDTH_BOUNDS.bottom.toFloat()) - val repositionTaskBounds = Rect(BELOW_MIN_WIDTH_BOUNDS) - - // Resize to increased bounds. - val newX = BELOW_MIN_WIDTH_BOUNDS.right.toFloat() + 10 - val newY = BELOW_MIN_WIDTH_BOUNDS.bottom.toFloat() + 20 - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - // Resize should be allowed as drag is in direction of desired range. - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, - repositionTaskBounds, BELOW_MIN_WIDTH_BOUNDS, STABLE_BOUNDS, delta, - mockDisplayController, mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - - assertThat(repositionTaskBounds.left).isEqualTo(BELOW_MIN_WIDTH_BOUNDS.left) - assertThat(repositionTaskBounds.top).isEqualTo(BELOW_MIN_WIDTH_BOUNDS.top) - assertThat(repositionTaskBounds.right).isEqualTo(BELOW_MIN_WIDTH_BOUNDS.right + 10) - assertThat(repositionTaskBounds.bottom).isEqualTo(BELOW_MIN_WIDTH_BOUNDS.bottom + 20) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_SCALED_RESIZING) - fun testChangeBounds_unresizeableApp_initialWidthMoreThanMax_decreasingBounds_resizeAllowed() { - mockWindowDecoration.mTaskInfo.isResizeable = false - val startingPoint = PointF(EXCEEDS_MAX_WIDTH_BOUNDS.left.toFloat(), - EXCEEDS_MAX_WIDTH_BOUNDS.top.toFloat()) - val repositionTaskBounds = Rect(EXCEEDS_MAX_WIDTH_BOUNDS) - - // Resize to decreased bounds. - val newX = EXCEEDS_MAX_WIDTH_BOUNDS.left.toFloat() + 20 - val newY = EXCEEDS_MAX_WIDTH_BOUNDS.top.toFloat() + 10 - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - // Resize should be allowed as drag is in direction of desired range. - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_LEFT or CTRL_TYPE_TOP, - repositionTaskBounds, EXCEEDS_MAX_WIDTH_BOUNDS, STABLE_BOUNDS, delta, - mockDisplayController, mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - - assertThat(repositionTaskBounds.left).isEqualTo(EXCEEDS_MAX_WIDTH_BOUNDS.left + 20) - assertThat(repositionTaskBounds.top).isEqualTo(EXCEEDS_MAX_WIDTH_BOUNDS.top + 10) - assertThat(repositionTaskBounds.right).isEqualTo(EXCEEDS_MAX_WIDTH_BOUNDS.right) - assertThat(repositionTaskBounds.bottom).isEqualTo(EXCEEDS_MAX_WIDTH_BOUNDS.bottom) - } - - @Test fun testChangeBoundsDoesNotChangeHeightWhenNegative() { val startingPoint = PointF(STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat()) @@ -320,11 +141,9 @@ class DragPositioningCallbackUtilityTest { val newY = STARTING_BOUNDS.top.toFloat() + 105 val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, + DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) + mockWindowDecoration) assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) @@ -342,11 +161,9 @@ class DragPositioningCallbackUtilityTest { val newY = STARTING_BOUNDS.top.toFloat() + 80 val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, + DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) + mockWindowDecoration) assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top + 80) assertThat(repositionTaskBounds.right).isEqualTo(STARTING_BOUNDS.right - 80) @@ -363,11 +180,9 @@ class DragPositioningCallbackUtilityTest { val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, + DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) + mockWindowDecoration) assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) assertThat(repositionTaskBounds.right).isEqualTo(STARTING_BOUNDS.right) @@ -378,122 +193,52 @@ class DragPositioningCallbackUtilityTest { fun testDragEndSnapsTaskBoundsWhenOutsideValidDragArea() { val startingPoint = PointF(STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat()) val repositionTaskBounds = Rect(STARTING_BOUNDS) - val validDragArea = Rect( - DISPLAY_BOUNDS.left - 100, + val validDragArea = Rect(DISPLAY_BOUNDS.left - 100, STABLE_BOUNDS.top, DISPLAY_BOUNDS.right - 100, - DISPLAY_BOUNDS.bottom - 100 - ) + DISPLAY_BOUNDS.bottom - 100) - DragPositioningCallbackUtility.updateTaskBounds( - repositionTaskBounds, STARTING_BOUNDS, - startingPoint, startingPoint.x - 1000, (DISPLAY_BOUNDS.bottom + 1000).toFloat() - ) - DragPositioningCallbackUtility.snapTaskBoundsIfNecessary( - repositionTaskBounds, - validDragArea - ) + DragPositioningCallbackUtility.updateTaskBounds(repositionTaskBounds, STARTING_BOUNDS, + startingPoint, startingPoint.x - 1000, (DISPLAY_BOUNDS.bottom + 1000).toFloat()) + DragPositioningCallbackUtility.snapTaskBoundsIfNecessary(repositionTaskBounds, + validDragArea) assertThat(repositionTaskBounds.left).isEqualTo(validDragArea.left) assertThat(repositionTaskBounds.top).isEqualTo(validDragArea.bottom) assertThat(repositionTaskBounds.right) - .isEqualTo(validDragArea.left + STARTING_BOUNDS.width()) + .isEqualTo(validDragArea.left + STARTING_BOUNDS.width()) assertThat(repositionTaskBounds.bottom) - .isEqualTo(validDragArea.bottom + STARTING_BOUNDS.height()) + .isEqualTo(validDragArea.bottom + STARTING_BOUNDS.height()) } @Test fun testChangeBounds_toDisallowedBounds_freezesAtLimit() { - val startingPoint = PointF( - STARTING_BOUNDS.right.toFloat(), - STARTING_BOUNDS.bottom.toFloat() - ) + val startingPoint = PointF(STARTING_BOUNDS.right.toFloat(), + STARTING_BOUNDS.bottom.toFloat()) val repositionTaskBounds = Rect(STARTING_BOUNDS) // Initial resize to width and height 110px. var newX = STARTING_BOUNDS.right.toFloat() + 10 var newY = STARTING_BOUNDS.bottom.toFloat() + 10 var delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, - repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) + assertTrue(DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, + repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, + mockWindowDecoration)) // Resize width to 120px, height to disallowed area which should not result in a change. newX += 10 newY = DISALLOWED_RESIZE_AREA.top.toFloat() delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, - repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) + assertTrue(DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, + repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, + mockWindowDecoration)) assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) assertThat(repositionTaskBounds.right).isEqualTo(STARTING_BOUNDS.right + 20) - assertThat(repositionTaskBounds.bottom).isEqualTo(STABLE_BOUNDS.bottom) - } - - - @Test - fun testChangeBounds_beyondStableBounds_freezesAtStableBounds() { - val startingPoint = PointF( - STARTING_BOUNDS.right.toFloat(), - STARTING_BOUNDS.bottom.toFloat() - ) - val repositionTaskBounds = Rect(STARTING_BOUNDS) - - // Resize to beyond stable bounds. - val newX = STARTING_BOUNDS.right.toFloat() + STABLE_BOUNDS.width() - val newY = STARTING_BOUNDS.bottom.toFloat() + STABLE_BOUNDS.height() - - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, - repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) - assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) - assertThat(repositionTaskBounds.right).isEqualTo(STABLE_BOUNDS.right) - assertThat(repositionTaskBounds.bottom).isEqualTo(STABLE_BOUNDS.bottom) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_SCALED_RESIZING) - fun testChangeBounds_unresizeableApp_beyondStableBounds_resetToStartingBounds() { - mockWindowDecoration.mTaskInfo.isResizeable = false - val startingPoint = PointF( - STARTING_BOUNDS.right.toFloat(), - STARTING_BOUNDS.bottom.toFloat() - ) - val repositionTaskBounds = Rect(STARTING_BOUNDS) - - // Resize to beyond stable bounds. - val newX = STARTING_BOUNDS.right.toFloat() + STABLE_BOUNDS.width() - val newY = STARTING_BOUNDS.bottom.toFloat() + STABLE_BOUNDS.height() - - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - assertFalse( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, - repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) - assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) - assertThat(repositionTaskBounds.right).isEqualTo(STARTING_BOUNDS.right) - assertThat(repositionTaskBounds.bottom).isEqualTo(STARTING_BOUNDS.bottom) + assertThat(repositionTaskBounds.bottom).isEqualTo(STARTING_BOUNDS.bottom + 10) } @Test @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS) fun taskMinWidthHeightUndefined_changeBoundsInDesktopModeLessThanMin_shouldNotChangeBounds() { + whenever(DesktopModeStatus.canEnterDesktopMode(mockContext)).thenReturn(true) initializeTaskInfo(taskMinWidth = -1, taskMinHeight = -1) val startingPoint = PointF(STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.bottom.toFloat()) @@ -504,74 +249,19 @@ class DragPositioningCallbackUtilityTest { val newY = STARTING_BOUNDS.bottom.toFloat() - 99 val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, + DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ true - ) + mockWindowDecoration) assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) assertThat(repositionTaskBounds.right).isEqualTo(STARTING_BOUNDS.right) assertThat(repositionTaskBounds.bottom).isEqualTo(STARTING_BOUNDS.bottom) } - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS) - fun testMinHeight_initialHeightLessThanMin_increasingHeight_resizeAllowed() { - val startingPoint = PointF(BELOW_MIN_HEIGHT_BOUNDS.right.toFloat(), - BELOW_MIN_HEIGHT_BOUNDS.bottom.toFloat()) - val repositionTaskBounds = Rect(BELOW_MIN_HEIGHT_BOUNDS) - - // Attempt to increase height. - val newX = BELOW_MIN_HEIGHT_BOUNDS.right.toFloat() - val newY = BELOW_MIN_HEIGHT_BOUNDS.bottom.toFloat() + 10 - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - // Resize should be allowed as drag is increasing height closer to valid region. - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, - repositionTaskBounds, BELOW_MIN_HEIGHT_BOUNDS, STABLE_BOUNDS, delta, - mockDisplayController, mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - - assertThat(repositionTaskBounds.left).isEqualTo(BELOW_MIN_HEIGHT_BOUNDS.left) - assertThat(repositionTaskBounds.top).isEqualTo(BELOW_MIN_HEIGHT_BOUNDS.top) - assertThat(repositionTaskBounds.right).isEqualTo(BELOW_MIN_HEIGHT_BOUNDS.right) - assertThat(repositionTaskBounds.bottom).isEqualTo(BELOW_MIN_HEIGHT_BOUNDS.bottom + 10) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS) - fun testMinWidth_initialWidthLessThanMin_increasingBounds_resizeAllowed() { - val startingPoint = PointF(BELOW_MIN_WIDTH_BOUNDS.right.toFloat(), - BELOW_MIN_WIDTH_BOUNDS.bottom.toFloat()) - val repositionTaskBounds = Rect(BELOW_MIN_WIDTH_BOUNDS) - - // Attempt to increase width. - val newX = BELOW_MIN_WIDTH_BOUNDS.right.toFloat() + 10 - val newY = BELOW_MIN_WIDTH_BOUNDS.bottom.toFloat() - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - // Resize should be allowed as drag is increasing width closer to valid region. - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, - repositionTaskBounds, BELOW_MIN_WIDTH_BOUNDS, STABLE_BOUNDS, delta, - mockDisplayController, mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - - assertThat(repositionTaskBounds.left).isEqualTo(BELOW_MIN_WIDTH_BOUNDS.left) - assertThat(repositionTaskBounds.top).isEqualTo(BELOW_MIN_WIDTH_BOUNDS.top) - assertThat(repositionTaskBounds.right).isEqualTo(BELOW_MIN_WIDTH_BOUNDS.right + 10) - assertThat(repositionTaskBounds.bottom).isEqualTo(BELOW_MIN_WIDTH_BOUNDS.bottom) - } - @Test @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS) fun taskMinWidthHeightUndefined_changeBoundsInDesktopModeAllowedSize_shouldChangeBounds() { + whenever(DesktopModeStatus.canEnterDesktopMode(mockContext)).thenReturn(true) initializeTaskInfo(taskMinWidth = -1, taskMinHeight = -1) val startingPoint = PointF(STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.bottom.toFloat()) @@ -582,11 +272,9 @@ class DragPositioningCallbackUtilityTest { val newY = STARTING_BOUNDS.bottom.toFloat() - 80 val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, + DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ true - ) + mockWindowDecoration) assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) assertThat(repositionTaskBounds.right).isEqualTo(STARTING_BOUNDS.right - 80) @@ -605,11 +293,9 @@ class DragPositioningCallbackUtilityTest { val newY = STARTING_BOUNDS.bottom.toFloat() - 99 val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, + DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ false - ) + mockWindowDecoration) assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) assertThat(repositionTaskBounds.right).isEqualTo(STARTING_BOUNDS.right) @@ -628,122 +314,15 @@ class DragPositioningCallbackUtilityTest { val newY = STARTING_BOUNDS.bottom.toFloat() - 50 val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, + DragPositioningCallbackUtility.changeBounds(CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, repositionTaskBounds, STARTING_BOUNDS, STABLE_BOUNDS, delta, mockDisplayController, - mockWindowDecoration, /* canEnterDesktopMode= */ true - ) + mockWindowDecoration) assertThat(repositionTaskBounds.left).isEqualTo(STARTING_BOUNDS.left) assertThat(repositionTaskBounds.top).isEqualTo(STARTING_BOUNDS.top) assertThat(repositionTaskBounds.right).isEqualTo(STARTING_BOUNDS.right - 50) assertThat(repositionTaskBounds.bottom).isEqualTo(STARTING_BOUNDS.bottom - 50) } - @Test - @DisableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS) - fun testChangeBounds_windowSizeExceedsStableBounds_shouldBeAllowedToChangeBounds() { - val startingPoint = - PointF( - OFF_CENTER_STARTING_BOUNDS.right.toFloat(), - OFF_CENTER_STARTING_BOUNDS.bottom.toFloat() - ) - val repositionTaskBounds = Rect(OFF_CENTER_STARTING_BOUNDS) - // Increase height and width by STABLE_BOUNDS. Subtract by 5px so that it doesn't reach - // the disallowed drag area. - val offset = 5 - val newX = STABLE_BOUNDS.right.toFloat() - offset - val newY = STABLE_BOUNDS.bottom.toFloat() - offset - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, - repositionTaskBounds, OFF_CENTER_STARTING_BOUNDS, STABLE_BOUNDS, delta, - mockDisplayController, mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - assertThat(repositionTaskBounds.width()).isGreaterThan(STABLE_BOUNDS.right) - assertThat(repositionTaskBounds.height()).isGreaterThan(STABLE_BOUNDS.bottom) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS) - fun testChangeBoundsInDesktopMode_windowSizeExceedsStableBounds_shouldBeLimitedToDisplaySize() { - val startingPoint = - PointF( - OFF_CENTER_STARTING_BOUNDS.right.toFloat(), - OFF_CENTER_STARTING_BOUNDS.bottom.toFloat() - ) - val repositionTaskBounds = Rect(OFF_CENTER_STARTING_BOUNDS) - // Increase height and width by STABLE_BOUNDS. Subtract by 5px so that it doesn't reach - // the disallowed drag area. - val offset = 5 - val newX = STABLE_BOUNDS.right.toFloat() - offset - val newY = STABLE_BOUNDS.bottom.toFloat() - offset - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, - repositionTaskBounds, OFF_CENTER_STARTING_BOUNDS, STABLE_BOUNDS, delta, - mockDisplayController, mockWindowDecoration, /* canEnterDesktopMode= */ true - ) - assertThat(repositionTaskBounds.width()).isLessThan(STABLE_BOUNDS.right) - assertThat(repositionTaskBounds.height()).isLessThan(STABLE_BOUNDS.bottom) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS) - fun testMaxHeight_initialHeightMoreThanMax_decreasingHeight_resizeAllowed() { - mockWindowDecoration.mTaskInfo.isResizeable = false - val startingPoint = PointF(EXCEEDS_MAX_HEIGHT_BOUNDS.right.toFloat(), - EXCEEDS_MAX_HEIGHT_BOUNDS.top.toFloat()) - val repositionTaskBounds = Rect(EXCEEDS_MAX_HEIGHT_BOUNDS) - - // Attempt to decrease height - val newX = EXCEEDS_MAX_HEIGHT_BOUNDS.right.toFloat() - 10 - val newY = EXCEEDS_MAX_HEIGHT_BOUNDS.top.toFloat() - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - // Resize should be allowed as drag is decreasing height closer to valid region. - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, - repositionTaskBounds, EXCEEDS_MAX_HEIGHT_BOUNDS, STABLE_BOUNDS, delta, - mockDisplayController, mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - - assertThat(repositionTaskBounds.left).isEqualTo(EXCEEDS_MAX_HEIGHT_BOUNDS.left) - assertThat(repositionTaskBounds.top).isEqualTo(EXCEEDS_MAX_HEIGHT_BOUNDS.top) - assertThat(repositionTaskBounds.right).isEqualTo(EXCEEDS_MAX_HEIGHT_BOUNDS.right - 10) - assertThat(repositionTaskBounds.bottom).isEqualTo(EXCEEDS_MAX_HEIGHT_BOUNDS.bottom ) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_DESKTOP_WINDOWING_SIZE_CONSTRAINTS) - fun testMaxHeight_initialWidthMoreThanMax_decreasingBounds_resizeAllowed() { - val startingPoint = PointF(EXCEEDS_MAX_WIDTH_BOUNDS.left.toFloat(), - EXCEEDS_MAX_WIDTH_BOUNDS.top.toFloat()) - val repositionTaskBounds = Rect(EXCEEDS_MAX_WIDTH_BOUNDS) - - // Attempt to decrease width. - val newX = EXCEEDS_MAX_WIDTH_BOUNDS.left.toFloat() + 20 - val newY = EXCEEDS_MAX_WIDTH_BOUNDS.top.toFloat() - val delta = DragPositioningCallbackUtility.calculateDelta(newX, newY, startingPoint) - - // Resize should be allowed as drag is decreasing width closer to valid region. - assertTrue( - DragPositioningCallbackUtility.changeBounds( - CTRL_TYPE_LEFT or CTRL_TYPE_TOP, - repositionTaskBounds, EXCEEDS_MAX_WIDTH_BOUNDS, STABLE_BOUNDS, delta, - mockDisplayController, mockWindowDecoration, /* canEnterDesktopMode= */ false - ) - ) - - assertThat(repositionTaskBounds.left).isEqualTo(EXCEEDS_MAX_WIDTH_BOUNDS.left + 20) - assertThat(repositionTaskBounds.top).isEqualTo(EXCEEDS_MAX_WIDTH_BOUNDS.top) - assertThat(repositionTaskBounds.right).isEqualTo(EXCEEDS_MAX_WIDTH_BOUNDS.right) - assertThat(repositionTaskBounds.bottom).isEqualTo(EXCEEDS_MAX_WIDTH_BOUNDS.bottom) - } - private fun initializeTaskInfo(taskMinWidth: Int = MIN_WIDTH, taskMinHeight: Int = MIN_HEIGHT) { mockWindowDecoration.mTaskInfo = ActivityManager.RunningTaskInfo().apply { taskId = TASK_ID @@ -768,17 +347,11 @@ class DragPositioningCallbackUtilityTest { private const val NAVBAR_HEIGHT = 50 private val DISPLAY_BOUNDS = Rect(0, 0, 2400, 1600) private val STARTING_BOUNDS = Rect(0, 0, 100, 100) - private val BELOW_MIN_WIDTH_BOUNDS = Rect(0, 0, 50, 100) - private val BELOW_MIN_HEIGHT_BOUNDS = Rect(0, 0, 100, 50) - private val EXCEEDS_MAX_WIDTH_BOUNDS = Rect(0, 0, 3000, 1500) - private val EXCEEDS_MAX_HEIGHT_BOUNDS = Rect(0, 0, 1000, 2000) - private val OFF_CENTER_STARTING_BOUNDS = Rect(-100, -100, 10, 10) private val DISALLOWED_RESIZE_AREA = Rect( DISPLAY_BOUNDS.left, DISPLAY_BOUNDS.bottom - NAVBAR_HEIGHT, DISPLAY_BOUNDS.right, - DISPLAY_BOUNDS.bottom - ) + DISPLAY_BOUNDS.bottom) private val STABLE_BOUNDS = Rect( DISPLAY_BOUNDS.left, DISPLAY_BOUNDS.top, diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragResizeWindowGeometryTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragResizeWindowGeometryTests.java index add2bb21bd..4dea5a75a0 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragResizeWindowGeometryTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/DragResizeWindowGeometryTests.java @@ -25,25 +25,24 @@ import static com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE import static com.google.common.truth.Truth.assertThat; import android.annotation.NonNull; -import android.content.Context; import android.graphics.Point; import android.graphics.Region; import android.platform.test.annotations.DisableFlags; import android.platform.test.annotations.EnableFlags; +import android.platform.test.flag.junit.SetFlagsRule; import android.testing.AndroidTestingRunner; import android.util.Size; import androidx.test.filters.SmallTest; import com.android.window.flags.Flags; -import com.android.wm.shell.ShellTestCase; +import com.google.common.testing.EqualsTester; + +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; -import java.util.Arrays; -import java.util.List; - /** * Tests for {@link DragResizeWindowGeometry}. * @@ -52,17 +51,17 @@ import java.util.List; */ @SmallTest @RunWith(AndroidTestingRunner.class) -public class DragResizeWindowGeometryTests extends ShellTestCase { +public class DragResizeWindowGeometryTests { private static final Size TASK_SIZE = new Size(500, 1000); private static final int TASK_CORNER_RADIUS = 10; - private static final int EDGE_RESIZE_THICKNESS = 12; - private static final int EDGE_RESIZE_HANDLE_INSET = 4; + private static final int EDGE_RESIZE_THICKNESS = 15; + private static final int EDGE_RESIZE_DEBUG_THICKNESS = EDGE_RESIZE_THICKNESS + + (DragResizeWindowGeometry.DEBUG ? DragResizeWindowGeometry.EDGE_DEBUG_BUFFER : 0); private static final int FINE_CORNER_SIZE = EDGE_RESIZE_THICKNESS * 2 + 10; private static final int LARGE_CORNER_SIZE = FINE_CORNER_SIZE + 10; - private static final int SMALL_OFFSET = 10; private static final DragResizeWindowGeometry GEOMETRY = new DragResizeWindowGeometry( - TASK_CORNER_RADIUS, TASK_SIZE, EDGE_RESIZE_THICKNESS, EDGE_RESIZE_HANDLE_INSET, - FINE_CORNER_SIZE, LARGE_CORNER_SIZE, DragResizeWindowGeometry.DisabledEdge.NONE); + TASK_CORNER_RADIUS, TASK_SIZE, EDGE_RESIZE_THICKNESS, FINE_CORNER_SIZE, + LARGE_CORNER_SIZE); // Points in the edge resize handle. Note that coordinates start from the top left. private static final Point TOP_EDGE_POINT = new Point(TASK_SIZE.getWidth() / 2, -EDGE_RESIZE_THICKNESS / 2); @@ -72,16 +71,9 @@ public class DragResizeWindowGeometryTests extends ShellTestCase { TASK_SIZE.getWidth() + EDGE_RESIZE_THICKNESS / 2, TASK_SIZE.getHeight() / 2); private static final Point BOTTOM_EDGE_POINT = new Point(TASK_SIZE.getWidth() / 2, TASK_SIZE.getHeight() + EDGE_RESIZE_THICKNESS / 2); - // Points in the inset of the task bounds still within the edge resize handle. - // Note that coordinates start from the top left. - private static final Point TOP_INSET_POINT = new Point(TASK_SIZE.getWidth() / 2, - EDGE_RESIZE_HANDLE_INSET / 2); - private static final Point LEFT_INSET_POINT = new Point(EDGE_RESIZE_HANDLE_INSET / 2, - TASK_SIZE.getHeight() / 2); - private static final Point RIGHT_INSET_POINT = new Point( - TASK_SIZE.getWidth() - EDGE_RESIZE_HANDLE_INSET / 2, TASK_SIZE.getHeight() / 2); - private static final Point BOTTOM_INSET_POINT = new Point(TASK_SIZE.getWidth() / 2, - TASK_SIZE.getHeight() - EDGE_RESIZE_HANDLE_INSET / 2); + + @Rule + public final SetFlagsRule mSetFlagsRule = new SetFlagsRule(); /** * Check that both groups of objects satisfy equals/hashcode within each group, and that each @@ -89,45 +81,25 @@ public class DragResizeWindowGeometryTests extends ShellTestCase { */ @Test public void testEqualsAndHash() { - final DragResizeWindowGeometry geometry1 = new DragResizeWindowGeometry( - TASK_CORNER_RADIUS, TASK_SIZE, EDGE_RESIZE_THICKNESS, EDGE_RESIZE_HANDLE_INSET, - FINE_CORNER_SIZE, LARGE_CORNER_SIZE, DragResizeWindowGeometry.DisabledEdge.NONE); - // 2 & 3 are intentionally created with the same params - final DragResizeWindowGeometry geometry2 = new DragResizeWindowGeometry( - TASK_CORNER_RADIUS, TASK_SIZE, EDGE_RESIZE_THICKNESS + 10, EDGE_RESIZE_HANDLE_INSET, - FINE_CORNER_SIZE, LARGE_CORNER_SIZE, DragResizeWindowGeometry.DisabledEdge.NONE); - final DragResizeWindowGeometry geometry3 = new DragResizeWindowGeometry( - TASK_CORNER_RADIUS, TASK_SIZE, EDGE_RESIZE_THICKNESS + 10, EDGE_RESIZE_HANDLE_INSET, - FINE_CORNER_SIZE, LARGE_CORNER_SIZE, DragResizeWindowGeometry.DisabledEdge.NONE); - // 4 & 5 are intentionally created with the same params - final DragResizeWindowGeometry geometry4 = new DragResizeWindowGeometry( - TASK_CORNER_RADIUS, TASK_SIZE, EDGE_RESIZE_THICKNESS + 10, EDGE_RESIZE_HANDLE_INSET, - FINE_CORNER_SIZE, LARGE_CORNER_SIZE + 5, - DragResizeWindowGeometry.DisabledEdge.NONE); - final DragResizeWindowGeometry geometry5 = new DragResizeWindowGeometry( - TASK_CORNER_RADIUS, TASK_SIZE, EDGE_RESIZE_THICKNESS + 10, EDGE_RESIZE_HANDLE_INSET, - FINE_CORNER_SIZE, LARGE_CORNER_SIZE + 5, - DragResizeWindowGeometry.DisabledEdge.NONE); - - // Assert that geometries with the same params are equal - assertThat(GEOMETRY).isEqualTo(geometry1); - assertThat(GEOMETRY.hashCode()).isEqualTo(geometry1.hashCode()); - - assertThat(geometry2).isEqualTo(geometry3); - assertThat(geometry2.hashCode()).isEqualTo(geometry3.hashCode()); - - assertThat(geometry4).isEqualTo(geometry5); - assertThat(geometry4.hashCode()).isEqualTo(geometry5.hashCode()); - - // Assert that geometries with different params are not equal - assertThat(geometry1).isNotEqualTo(geometry2); - assertThat(geometry1.hashCode()).isNotEqualTo(geometry2.hashCode()); - - assertThat(geometry1).isNotEqualTo(geometry4); - assertThat(geometry1.hashCode()).isNotEqualTo(geometry4.hashCode()); - - assertThat(geometry2).isNotEqualTo(geometry4); - assertThat(geometry2.hashCode()).isNotEqualTo(geometry4.hashCode()); + new EqualsTester() + .addEqualityGroup( + GEOMETRY, + new DragResizeWindowGeometry(TASK_CORNER_RADIUS, TASK_SIZE, + EDGE_RESIZE_THICKNESS, FINE_CORNER_SIZE, LARGE_CORNER_SIZE)) + .addEqualityGroup( + new DragResizeWindowGeometry(TASK_CORNER_RADIUS, TASK_SIZE, + EDGE_RESIZE_THICKNESS + 10, FINE_CORNER_SIZE, LARGE_CORNER_SIZE), + new DragResizeWindowGeometry(TASK_CORNER_RADIUS, TASK_SIZE, + EDGE_RESIZE_THICKNESS + 10, FINE_CORNER_SIZE, LARGE_CORNER_SIZE)) + .addEqualityGroup(new DragResizeWindowGeometry(TASK_CORNER_RADIUS, TASK_SIZE, + EDGE_RESIZE_THICKNESS, FINE_CORNER_SIZE, LARGE_CORNER_SIZE + 5), + new DragResizeWindowGeometry(TASK_CORNER_RADIUS, TASK_SIZE, + EDGE_RESIZE_THICKNESS, FINE_CORNER_SIZE, LARGE_CORNER_SIZE + 5)) + .addEqualityGroup(new DragResizeWindowGeometry(TASK_CORNER_RADIUS, TASK_SIZE, + EDGE_RESIZE_THICKNESS, FINE_CORNER_SIZE + 4, LARGE_CORNER_SIZE), + new DragResizeWindowGeometry(TASK_CORNER_RADIUS, TASK_SIZE, + EDGE_RESIZE_THICKNESS, FINE_CORNER_SIZE + 4, LARGE_CORNER_SIZE)) + .testEquals(); } @Test @@ -152,25 +124,21 @@ public class DragResizeWindowGeometryTests extends ShellTestCase { private static void verifyHorizontalEdge(@NonNull Region region, @NonNull Point point) { assertThat(region.contains(point.x, point.y)).isTrue(); // Horizontally along the edge is still contained. - assertThat(region.contains(point.x + EDGE_RESIZE_THICKNESS, point.y)).isTrue(); - assertThat(region.contains(point.x - EDGE_RESIZE_THICKNESS, point.y)).isTrue(); + assertThat(region.contains(point.x + EDGE_RESIZE_DEBUG_THICKNESS, point.y)).isTrue(); + assertThat(region.contains(point.x - EDGE_RESIZE_DEBUG_THICKNESS, point.y)).isTrue(); // Vertically along the edge is not contained. - assertThat( - region.contains(point.x, point.y - EDGE_RESIZE_THICKNESS - SMALL_OFFSET)).isFalse(); - assertThat( - region.contains(point.x, point.y + EDGE_RESIZE_THICKNESS + SMALL_OFFSET)).isFalse(); + assertThat(region.contains(point.x, point.y - EDGE_RESIZE_DEBUG_THICKNESS)).isFalse(); + assertThat(region.contains(point.x, point.y + EDGE_RESIZE_DEBUG_THICKNESS)).isFalse(); } private static void verifyVerticalEdge(@NonNull Region region, @NonNull Point point) { assertThat(region.contains(point.x, point.y)).isTrue(); // Horizontally along the edge is not contained. - assertThat( - region.contains(point.x + EDGE_RESIZE_THICKNESS + SMALL_OFFSET, point.y)).isFalse(); - assertThat( - region.contains(point.x - EDGE_RESIZE_THICKNESS - SMALL_OFFSET, point.y)).isFalse(); + assertThat(region.contains(point.x + EDGE_RESIZE_DEBUG_THICKNESS, point.y)).isFalse(); + assertThat(region.contains(point.x - EDGE_RESIZE_DEBUG_THICKNESS, point.y)).isFalse(); // Vertically along the edge is contained. - assertThat(region.contains(point.x, point.y - EDGE_RESIZE_THICKNESS)).isTrue(); - assertThat(region.contains(point.x, point.y + EDGE_RESIZE_THICKNESS)).isTrue(); + assertThat(region.contains(point.x, point.y - EDGE_RESIZE_DEBUG_THICKNESS)).isTrue(); + assertThat(region.contains(point.x, point.y + EDGE_RESIZE_DEBUG_THICKNESS)).isTrue(); } /** @@ -183,9 +151,12 @@ public class DragResizeWindowGeometryTests extends ShellTestCase { public void testRegionUnion_edgeDragResizeEnabled_containsLargeCorners() { Region region = new Region(); GEOMETRY.union(region); - final int cornerRadius = LARGE_CORNER_SIZE / 2; + // Make sure we're choosing a point outside of any debug region buffer. + final int cornerRadius = DragResizeWindowGeometry.DEBUG + ? Math.max(LARGE_CORNER_SIZE / 2, EDGE_RESIZE_DEBUG_THICKNESS) + : LARGE_CORNER_SIZE / 2; - new TestPoints(mContext, TASK_SIZE, cornerRadius).validateRegion(region); + new TestPoints(TASK_SIZE, cornerRadius).validateRegion(region); } /** @@ -197,9 +168,11 @@ public class DragResizeWindowGeometryTests extends ShellTestCase { public void testRegionUnion_edgeDragResizeDisabled_containsFineCorners() { Region region = new Region(); GEOMETRY.union(region); - final int cornerRadius = FINE_CORNER_SIZE / 2; + final int cornerRadius = DragResizeWindowGeometry.DEBUG + ? Math.max(LARGE_CORNER_SIZE / 2, EDGE_RESIZE_DEBUG_THICKNESS) + : LARGE_CORNER_SIZE / 2; - new TestPoints(mContext, TASK_SIZE, cornerRadius).validateRegion(region); + new TestPoints(TASK_SIZE, cornerRadius).validateRegion(region); } @Test @@ -221,26 +194,25 @@ public class DragResizeWindowGeometryTests extends ShellTestCase { } private void validateCtrlTypeForEdges(boolean isTouchscreen, boolean isEdgeResizePermitted) { - List<Point> points = Arrays.asList(LEFT_EDGE_POINT, TOP_EDGE_POINT, RIGHT_EDGE_POINT, - BOTTOM_EDGE_POINT, LEFT_INSET_POINT, TOP_INSET_POINT, RIGHT_INSET_POINT, - BOTTOM_INSET_POINT); - List<Integer> expectedCtrlType = Arrays.asList(CTRL_TYPE_LEFT, CTRL_TYPE_TOP, - CTRL_TYPE_RIGHT, CTRL_TYPE_BOTTOM, CTRL_TYPE_LEFT, CTRL_TYPE_TOP, CTRL_TYPE_RIGHT, - CTRL_TYPE_BOTTOM); - - for (int i = 0; i < points.size(); i++) { - assertThat(GEOMETRY.calculateCtrlType(isTouchscreen, isEdgeResizePermitted, - points.get(i).x, points.get(i).y)).isEqualTo( - isEdgeResizePermitted ? expectedCtrlType.get(i) : CTRL_TYPE_UNDEFINED); - } + assertThat(GEOMETRY.calculateCtrlType(isTouchscreen, isEdgeResizePermitted, + LEFT_EDGE_POINT.x, LEFT_EDGE_POINT.y)).isEqualTo( + isEdgeResizePermitted ? CTRL_TYPE_LEFT : CTRL_TYPE_UNDEFINED); + assertThat(GEOMETRY.calculateCtrlType(isTouchscreen, isEdgeResizePermitted, + TOP_EDGE_POINT.x, TOP_EDGE_POINT.y)).isEqualTo( + isEdgeResizePermitted ? CTRL_TYPE_TOP : CTRL_TYPE_UNDEFINED); + assertThat(GEOMETRY.calculateCtrlType(isTouchscreen, isEdgeResizePermitted, + RIGHT_EDGE_POINT.x, RIGHT_EDGE_POINT.y)).isEqualTo( + isEdgeResizePermitted ? CTRL_TYPE_RIGHT : CTRL_TYPE_UNDEFINED); + assertThat(GEOMETRY.calculateCtrlType(isTouchscreen, isEdgeResizePermitted, + BOTTOM_EDGE_POINT.x, BOTTOM_EDGE_POINT.y)).isEqualTo( + isEdgeResizePermitted ? CTRL_TYPE_BOTTOM : CTRL_TYPE_UNDEFINED); } @Test @EnableFlags(Flags.FLAG_ENABLE_WINDOWING_EDGE_DRAG_RESIZE) public void testCalculateControlType_edgeDragResizeEnabled_corners() { - final TestPoints fineTestPoints = new TestPoints(mContext, TASK_SIZE, FINE_CORNER_SIZE / 2); - final TestPoints largeCornerTestPoints = - new TestPoints(mContext, TASK_SIZE, LARGE_CORNER_SIZE / 2); + final TestPoints fineTestPoints = new TestPoints(TASK_SIZE, FINE_CORNER_SIZE / 2); + final TestPoints largeCornerTestPoints = new TestPoints(TASK_SIZE, LARGE_CORNER_SIZE / 2); // When the flag is enabled, points within fine corners should pass regardless of touch or // not. Points outside fine corners should not pass when using a course input (non-touch). @@ -277,10 +249,8 @@ public class DragResizeWindowGeometryTests extends ShellTestCase { @Test @DisableFlags(Flags.FLAG_ENABLE_WINDOWING_EDGE_DRAG_RESIZE) public void testCalculateControlType_edgeDragResizeDisabled_corners() { - final TestPoints fineTestPoints = - new TestPoints(mContext, TASK_SIZE, FINE_CORNER_SIZE / 2); - final TestPoints largeCornerTestPoints = - new TestPoints(mContext, TASK_SIZE, LARGE_CORNER_SIZE / 2); + final TestPoints fineTestPoints = new TestPoints(TASK_SIZE, FINE_CORNER_SIZE / 2); + final TestPoints largeCornerTestPoints = new TestPoints(TASK_SIZE, LARGE_CORNER_SIZE / 2); // When the flag is disabled, points within fine corners should pass only from touchscreen. // Edge resize permitted (indicating the event is from a cursor/stylus) should have no @@ -322,7 +292,6 @@ public class DragResizeWindowGeometryTests extends ShellTestCase { * <p>Creates points that are both just within the bounds of each corner, and just outside. */ private static final class TestPoints { - private final Context mContext; private final Point mTopLeftPoint; private final Point mTopLeftPointOutside; private final Point mTopRightPoint; @@ -332,8 +301,7 @@ public class DragResizeWindowGeometryTests extends ShellTestCase { private final Point mBottomRightPoint; private final Point mBottomRightPointOutside; - TestPoints(@NonNull Context context, @NonNull Size taskSize, int cornerRadius) { - mContext = context; + TestPoints(@NonNull Size taskSize, int cornerRadius) { // Point just inside corner square is included. mTopLeftPoint = new Point(-cornerRadius + 1, -cornerRadius + 1); // Point just outside corner square is excluded. diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositionerTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositionerTest.kt index 59ca635dae..666750485e 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositionerTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/FluidResizeTaskPositionerTest.kt @@ -24,7 +24,6 @@ import com.android.wm.shell.ShellTaskOrganizer import com.android.wm.shell.ShellTestCase import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.DisplayLayout -import com.android.wm.shell.shared.desktopmode.FakeDesktopState import com.android.wm.shell.transition.Transitions import com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_BOTTOM import com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_RIGHT @@ -36,6 +35,7 @@ import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import org.mockito.ArgumentMatchers.anyInt +import org.mockito.ArgumentMatchers.eq import org.mockito.Mock import org.mockito.Mockito import org.mockito.Mockito.any @@ -48,7 +48,6 @@ import org.mockito.kotlin.doReturn import java.util.function.Supplier import org.mockito.Mockito.eq import org.mockito.Mockito.mock -import org.mockito.kotlin.times import org.mockito.Mockito.`when` as whenever /** @@ -68,7 +67,7 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { @Mock private lateinit var mockWindowDecoration: WindowDecoration<*> @Mock - private lateinit var mockDragEventListener: DragPositioningCallbackUtility.DragEventListener + private lateinit var mockDragStartListener: DragPositioningCallbackUtility.DragStartListener @Mock private lateinit var taskToken: WindowContainerToken @@ -92,7 +91,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { @Mock private lateinit var mockResources: Resources private lateinit var taskPositioner: FluidResizeTaskPositioner - private val desktopState = FakeDesktopState() @Before fun setUp() { @@ -124,7 +122,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { displayId = DISPLAY_ID configuration.windowConfiguration.setBounds(STARTING_BOUNDS) configuration.windowConfiguration.displayRotation = ROTATION_90 - isResizeable = true } `when`(mockWindowDecoration.calculateValidDragArea()).thenReturn(VALID_DRAG_AREA) mockWindowDecoration.mDisplay = mockDisplay @@ -143,8 +140,8 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { mockTransitions, mockWindowDecoration, mockDisplayController, - mockTransactionFactory, - desktopState, + mockDragStartListener, + mockTransactionFactory ) } @@ -152,13 +149,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_notMove_skipsTransitionOnEnd() { taskPositioner.onDragPositioningStart( CTRL_TYPE_TOP or CTRL_TYPE_RIGHT, - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) taskPositioner.onDragPositioningEnd( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat() + 10, STARTING_BOUNDS.top.toFloat() + 10 ) @@ -175,13 +170,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_noEffectiveMove_skipsTransitionOnMoveAndEnd() { taskPositioner.onDragPositioningStart( CTRL_TYPE_TOP or CTRL_TYPE_RIGHT, - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) taskPositioner.onDragPositioningMove( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -194,7 +187,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { }) taskPositioner.onDragPositioningEnd( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat() + 10, STARTING_BOUNDS.top.toFloat() + 10 ) @@ -209,16 +201,13 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { @Test fun testDragResize_hasEffectiveMove_issuesTransitionOnMoveAndEnd() { - taskPositioner.addDragEventListener(mockDragEventListener) taskPositioner.onDragPositioningStart( CTRL_TYPE_TOP or CTRL_TYPE_RIGHT, - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) taskPositioner.onDragPositioningMove( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat() + 10, STARTING_BOUNDS.top.toFloat() ) @@ -231,10 +220,8 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { change.configuration.windowConfiguration.bounds == rectAfterMove } }) - verify(mockDragEventListener, times(1)).onDragMove(eq(TASK_ID)) taskPositioner.onDragPositioningEnd( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat() + 10, STARTING_BOUNDS.top.toFloat() + 10 ) @@ -253,7 +240,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_move_skipsDragResizingFlag() { taskPositioner.onDragPositioningStart( CTRL_TYPE_UNDEFINED, // Move - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -262,12 +248,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.left.toFloat() + 10 val newY = STARTING_BOUNDS.top.toFloat() taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer, never()).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -289,7 +274,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_resize_setsDragResizingFlag() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT, // Resize right - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -298,12 +282,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.right.toFloat() + 10 val newY = STARTING_BOUNDS.top.toFloat() taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -325,7 +308,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_resize_setBoundsDoesNotChangeHeightWhenLessThanMin() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, // Resize right and top - DISPLAY_ID, STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -334,12 +316,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.right.toFloat() - 5 val newY = STARTING_BOUNDS.top.toFloat() + 95 taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -357,7 +338,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_resize_setBoundsDoesNotChangeWidthWhenLessThanMin() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, // Resize right and top - DISPLAY_ID, STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -366,12 +346,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.right.toFloat() - 95 val newY = STARTING_BOUNDS.top.toFloat() + 5 taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -389,7 +368,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_resize_setBoundsDoesNotChangeHeightWhenNegative() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, // Resize right and top - DISPLAY_ID, STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -398,12 +376,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.right.toFloat() - 5 val newY = STARTING_BOUNDS.top.toFloat() + 105 taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -421,7 +398,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_resize_setBoundsDoesNotChangeWidthWhenNegative() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, // Resize right and top - DISPLAY_ID, STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -430,12 +406,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.right.toFloat() - 105 val newY = STARTING_BOUNDS.top.toFloat() + 5 taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -453,7 +428,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_resize_setBoundsRunsWhenResizeBoundsValid() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, // Resize right and top - DISPLAY_ID, STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -462,12 +436,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.right.toFloat() - 80 val newY = STARTING_BOUNDS.top.toFloat() + 80 taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -481,7 +454,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_resize_setBoundsDoesNotRunWithNegativeHeightAndWidth() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, // Resize right and top - DISPLAY_ID, STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -490,12 +462,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.right.toFloat() - 95 val newY = STARTING_BOUNDS.top.toFloat() + 95 taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer, never()).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -511,7 +482,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, // Resize right and top - DISPLAY_ID, STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -520,12 +490,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.right.toFloat() - 97 val newY = STARTING_BOUNDS.top.toFloat() + 97 taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer, never()).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -539,7 +508,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_resize_useMinWidthWhenValid() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, // Resize right and top - DISPLAY_ID, STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -548,12 +516,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.right.toFloat() - 93 val newY = STARTING_BOUNDS.top.toFloat() + 93 taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer, never()).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -566,7 +533,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { fun testDragResize_toDisallowedBounds_freezesAtLimit() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM, // Resize right-bottom corner - DISPLAY_ID, STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.bottom.toFloat() ) @@ -578,7 +544,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { STARTING_BOUNDS.right + 10, STARTING_BOUNDS.bottom + 10) taskPositioner.onDragPositioningMove( - DISPLAY_ID, newBounds.right.toFloat(), newBounds.bottom.toFloat() ) @@ -592,13 +557,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { DISALLOWED_RESIZE_AREA.top ) taskPositioner.onDragPositioningMove( - DISPLAY_ID, newBounds2.right.toFloat(), newBounds2.bottom.toFloat() ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newBounds2.right.toFloat(), - newBounds2.bottom.toFloat()) + taskPositioner.onDragPositioningEnd(newBounds2.right.toFloat(), newBounds2.bottom.toFloat()) // The first resize falls in the allowed area, verify there's a change for it. verify(mockShellTaskOrganizer).applyTransaction(argThat { wct -> @@ -661,10 +624,9 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { @Test fun testDragResize_resize_resizingTaskReorderedToTopWhenNotFocused() { - mockWindowDecoration.mHasGlobalFocus = false + mockWindowDecoration.mTaskInfo.isFocused = false taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT, // Resize right - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -678,10 +640,9 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { @Test fun testDragResize_resize_resizingTaskNotReorderedToTopWhenFocused() { - mockWindowDecoration.mHasGlobalFocus = true + mockWindowDecoration.mTaskInfo.isFocused = true taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT, // Resize right - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -695,10 +656,9 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { @Test fun testDragResize_drag_draggedTaskNotReorderedToTop() { - mockWindowDecoration.mHasGlobalFocus = false + mockWindowDecoration.mTaskInfo.isFocused = false taskPositioner.onDragPositioningStart( CTRL_TYPE_UNDEFINED, // drag - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -719,7 +679,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM) val rectAfterDrag = Rect(STARTING_BOUNDS) rectAfterDrag.right += 2000 - rectAfterDrag.bottom = STABLE_BOUNDS_LANDSCAPE.bottom // First drag; we should fetch stable bounds. verify(mockDisplayLayout, Mockito.times(1)).getStableBounds(any()) verify(mockShellTaskOrganizer).applyTransaction(argThat { wct -> @@ -747,8 +706,8 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.bottom.toFloat(), STARTING_BOUNDS.right.toFloat() + 2000, STARTING_BOUNDS.bottom.toFloat() + 2000, CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM) - rectAfterDrag.right = STABLE_BOUNDS_PORTRAIT.right - rectAfterDrag.bottom = STARTING_BOUNDS.bottom + 2000 + rectAfterDrag.right -= 2000 + rectAfterDrag.bottom += 2000 verify(mockShellTaskOrganizer).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -767,13 +726,11 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { taskPositioner.onDragPositioningStart( CTRL_TYPE_TOP or CTRL_TYPE_RIGHT, - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) taskPositioner.onDragPositioningMove( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat() - 20, STARTING_BOUNDS.top.toFloat() - 20 ) @@ -782,7 +739,6 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { assertTrue(taskPositioner.isResizingOrAnimating) taskPositioner.onDragPositioningEnd( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -826,18 +782,15 @@ class FluidResizeTaskPositionerTest : ShellTestCase() { ) { taskPositioner.onDragPositioningStart( ctrlType, - DISPLAY_ID, startX, startY ) taskPositioner.onDragPositioningMove( - DISPLAY_ID, endX, endY ) taskPositioner.onDragPositioningEnd( - DISPLAY_ID, endX, endY ) diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/HandleMenuTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/HandleMenuTest.kt index 84fc553c43..5582e0f463 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/HandleMenuTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/HandleMenuTest.kt @@ -22,10 +22,10 @@ import android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN import android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW import android.graphics.Bitmap import android.graphics.Color -import android.graphics.Point import android.graphics.Rect -import android.graphics.drawable.BitmapDrawable -import android.platform.test.annotations.EnableFlags +import android.platform.test.annotations.RequiresFlagsEnabled +import android.platform.test.flag.junit.CheckFlagsRule +import android.platform.test.flag.junit.DeviceFlagsValueProvider import android.testing.AndroidTestingRunner import android.testing.TestableLooper import android.view.Display @@ -33,9 +33,6 @@ import android.view.LayoutInflater import android.view.SurfaceControl import android.view.SurfaceControlViewHost import android.view.View -import android.view.WindowInsets.Type.systemBars -import android.view.WindowManager -import androidx.core.graphics.toPointF import androidx.test.filters.SmallTest import com.android.window.flags.Flags import com.android.wm.shell.R @@ -43,30 +40,21 @@ import com.android.wm.shell.ShellTestCase import com.android.wm.shell.TestRunningTaskInfoBuilder import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.DisplayLayout -import com.android.wm.shell.desktopmode.DesktopModeUiEventLogger -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT -import com.android.wm.shell.shared.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED +import com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_BOTTOM_OR_RIGHT +import com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_TOP_OR_LEFT +import com.android.wm.shell.common.split.SplitScreenConstants.SPLIT_POSITION_UNDEFINED import com.android.wm.shell.splitscreen.SplitScreenController import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalSystemViewContainer import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalViewHostViewContainer -import com.android.wm.shell.windowdecor.common.WindowDecorTaskResourceLoader -import com.google.common.truth.Truth.assertThat -import kotlinx.coroutines.ExperimentalCoroutinesApi -import kotlinx.coroutines.test.StandardTestDispatcher -import kotlinx.coroutines.test.TestScope -import kotlinx.coroutines.test.advanceUntilIdle -import kotlinx.coroutines.test.runTest -import org.junit.Assert.assertEquals import org.junit.Assert.assertTrue import org.junit.Before +import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith import org.mockito.ArgumentMatchers.anyInt import org.mockito.Mock import org.mockito.Mockito.mock import org.mockito.kotlin.any -import org.mockito.kotlin.mock import org.mockito.kotlin.whenever /** @@ -75,15 +63,24 @@ import org.mockito.kotlin.whenever * Build/Install/Run: * atest WMShellUnitTests:HandleMenuTest */ -@OptIn(ExperimentalCoroutinesApi::class) @SmallTest @TestableLooper.RunWithLooper @RunWith(AndroidTestingRunner::class) class HandleMenuTest : ShellTestCase() { + @JvmField + @Rule + val mCheckFlagsRule: CheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule() + @Mock private lateinit var mockDesktopWindowDecoration: DesktopModeWindowDecoration @Mock - private lateinit var mockWindowManager: WindowManager + private lateinit var onClickListener: View.OnClickListener + @Mock + private lateinit var onTouchListener: View.OnTouchListener + @Mock + private lateinit var appIcon: Bitmap + @Mock + private lateinit var appName: CharSequence @Mock private lateinit var displayController: DisplayController @Mock @@ -92,14 +89,6 @@ class HandleMenuTest : ShellTestCase() { private lateinit var displayLayout: DisplayLayout @Mock private lateinit var mockSurfaceControlViewHost: SurfaceControlViewHost - @Mock - private lateinit var mockTaskResourceLoader: WindowDecorTaskResourceLoader - @Mock - private lateinit var mockWindowDecorationActions: WindowDecorationActions - @Mock - private lateinit var mockAppIcon: Bitmap - @Mock - private lateinit var mockDesktopModeUiEventLogger: DesktopModeUiEventLogger private lateinit var handleMenu: HandleMenu @@ -111,124 +100,69 @@ class HandleMenuTest : ShellTestCase() { ) { SurfaceControl.Transaction() } - val menuView = LayoutInflater.from(mContext).inflate( + val menuView = LayoutInflater.from(context).inflate( R.layout.desktop_mode_window_decor_handle_menu, null) whenever(mockDesktopWindowDecoration.addWindow( anyInt(), any(), any(), any(), anyInt(), anyInt(), anyInt(), anyInt()) ).thenReturn(mockAdditionalViewHostViewContainer) - whenever(mockDesktopWindowDecoration.addWindow( - any<View>(), any(), any(), any(), anyInt(), anyInt(), anyInt(), anyInt()) - ).thenReturn(mockAdditionalViewHostViewContainer) whenever(mockAdditionalViewHostViewContainer.view).thenReturn(menuView) whenever(displayController.getDisplayLayout(anyInt())).thenReturn(displayLayout) whenever(displayLayout.width()).thenReturn(DISPLAY_BOUNDS.width()) whenever(displayLayout.height()).thenReturn(DISPLAY_BOUNDS.height()) whenever(displayLayout.isLandscape).thenReturn(true) - mContext.orCreateTestableResources.apply { - addOverride(R.dimen.desktop_mode_handle_menu_width, MENU_WIDTH) - addOverride(R.dimen.desktop_mode_handle_menu_height, MENU_HEIGHT) - addOverride(R.dimen.desktop_mode_handle_menu_margin_top, MENU_TOP_MARGIN) - addOverride(R.dimen.desktop_mode_handle_menu_margin_start, MENU_START_MARGIN) - addOverride( - R.dimen.desktop_mode_handle_menu_pill_spacing_margin, MENU_PILL_SPACING_MARGIN) - } - mockDesktopWindowDecoration.mDecorWindowContext = mContext + mockDesktopWindowDecoration.mDecorWindowContext = context } @Test - @EnableFlags(Flags.FLAG_ENABLE_HANDLE_INPUT_FIX) - fun testFullscreenMenuUsesSystemViewContainer() = runTest { + @RequiresFlagsEnabled(Flags.FLAG_ENABLE_ADDITIONAL_WINDOWS_ABOVE_STATUS_BAR) + fun testFullscreenMenuUsesSystemViewContainer() { createTaskInfo(WINDOWING_MODE_FULLSCREEN, SPLIT_POSITION_UNDEFINED) - val handleMenu = createAndShowHandleMenu(SPLIT_POSITION_UNDEFINED) - assertTrue(handleMenu.handleMenuViewContainer is AdditionalSystemViewContainer) + val handleMenu = createAndShowHandleMenu() + assertTrue(handleMenu.mHandleMenuViewContainer is AdditionalSystemViewContainer) // Verify menu is created at coordinates that, when added to WindowManager, // show at the top-center of display. - val expected = Point(DISPLAY_BOUNDS.centerX() - MENU_WIDTH / 2, MENU_TOP_MARGIN) - assertEquals(expected.toPointF(), handleMenu.handleMenuPosition) + assertTrue(handleMenu.mHandleMenuPosition.equals(16f, -512f)) } @Test - @EnableFlags(Flags.FLAG_ENABLE_HANDLE_INPUT_FIX) - fun testFreeformMenu_usesViewHostViewContainer() = runTest { + @RequiresFlagsEnabled(Flags.FLAG_ENABLE_ADDITIONAL_WINDOWS_ABOVE_STATUS_BAR) + fun testFreeformMenu_usesViewHostViewContainer() { createTaskInfo(WINDOWING_MODE_FREEFORM, SPLIT_POSITION_UNDEFINED) - handleMenu = createAndShowHandleMenu(SPLIT_POSITION_UNDEFINED) - assertTrue(handleMenu.handleMenuViewContainer is AdditionalViewHostViewContainer) - // Verify menu is created near top-left of task. - val expected = Point(MENU_START_MARGIN, MENU_TOP_MARGIN) - assertEquals(expected.toPointF(), handleMenu.handleMenuPosition) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_HANDLE_INPUT_FIX) - fun testSplitLeftMenu_usesSystemViewContainer() = runTest { - createTaskInfo(WINDOWING_MODE_MULTI_WINDOW, SPLIT_POSITION_TOP_OR_LEFT) - handleMenu = createAndShowHandleMenu(SPLIT_POSITION_TOP_OR_LEFT) - assertTrue(handleMenu.handleMenuViewContainer is AdditionalSystemViewContainer) - // Verify menu is created at coordinates that, when added to WindowManager, - // show at the top-center of split left task. - val expected = Point( - SPLIT_LEFT_BOUNDS.centerX() - MENU_WIDTH / 2, - MENU_TOP_MARGIN - ) - assertEquals(expected.toPointF(), handleMenu.handleMenuPosition) - } - - @Test - @EnableFlags(Flags.FLAG_ENABLE_HANDLE_INPUT_FIX) - fun testSplitRightMenu_usesSystemViewContainer() = runTest { - createTaskInfo(WINDOWING_MODE_MULTI_WINDOW, SPLIT_POSITION_BOTTOM_OR_RIGHT) - handleMenu = createAndShowHandleMenu(SPLIT_POSITION_BOTTOM_OR_RIGHT) - assertTrue(handleMenu.handleMenuViewContainer is AdditionalSystemViewContainer) - // Verify menu is created at coordinates that, when added to WindowManager, - // show at the top-center of split right task. - val expected = Point( - SPLIT_RIGHT_BOUNDS.centerX() - MENU_WIDTH / 2, - MENU_TOP_MARGIN - ) - assertEquals(expected.toPointF(), handleMenu.handleMenuPosition) - } - - @Test - fun testCreate_forceShowSystemBars_usesSystemViewContainer() = runTest { - createTaskInfo(WINDOWING_MODE_FREEFORM) - - handleMenu = createAndShowHandleMenu(forceShowSystemBars = true) - - // Only AdditionalSystemViewContainer supports force showing system bars. - assertTrue(handleMenu.handleMenuViewContainer is AdditionalSystemViewContainer) - } - - @Test - fun testCreate_forceShowSystemBars() = runTest { - createTaskInfo(WINDOWING_MODE_FREEFORM) - - handleMenu = createAndShowHandleMenu(forceShowSystemBars = true) - - val types = (handleMenu.handleMenuViewContainer as AdditionalSystemViewContainer) - .lp.forciblyShownTypes - assertTrue((types and systemBars()) != 0) - } - - @Test - fun testCreate_loadsAppInfoInBackground() = runTest { - createTaskInfo(WINDOWING_MODE_FREEFORM) - handleMenu = createAndShowHandleMenu() - advanceUntilIdle() - - assertThat(handleMenu.handleMenuView!!.appNameView.text).isEqualTo(APP_NAME) - val drawable = handleMenu.handleMenuView!!.appIconView.drawable as BitmapDrawable - assertThat(drawable.bitmap).isEqualTo(mockAppIcon) + assertTrue(handleMenu.mHandleMenuViewContainer is AdditionalViewHostViewContainer) + // Verify menu is created near top-left of task. + assertTrue(handleMenu.mHandleMenuPosition.equals(12f, 8f)) } - private fun createTaskInfo(windowingMode: Int, splitPosition: Int? = null) { + @Test + @RequiresFlagsEnabled(Flags.FLAG_ENABLE_ADDITIONAL_WINDOWS_ABOVE_STATUS_BAR) + fun testSplitLeftMenu_usesSystemViewContainer() { + createTaskInfo(WINDOWING_MODE_MULTI_WINDOW, SPLIT_POSITION_TOP_OR_LEFT) + handleMenu = createAndShowHandleMenu() + assertTrue(handleMenu.mHandleMenuViewContainer is AdditionalSystemViewContainer) + // Verify menu is created at coordinates that, when added to WindowManager, + // show at the top of split left task. + assertTrue(handleMenu.mHandleMenuPosition.equals(-624f, -512f)) + } + + @Test + @RequiresFlagsEnabled(Flags.FLAG_ENABLE_ADDITIONAL_WINDOWS_ABOVE_STATUS_BAR) + fun testSplitRightMenu_usesSystemViewContainer() { + createTaskInfo(WINDOWING_MODE_MULTI_WINDOW, SPLIT_POSITION_BOTTOM_OR_RIGHT) + handleMenu = createAndShowHandleMenu() + assertTrue(handleMenu.mHandleMenuViewContainer is AdditionalSystemViewContainer) + // Verify menu is created at coordinates that, when added to WindowManager, + // show at the top of split right task. + assertTrue(handleMenu.mHandleMenuPosition.equals(656f, -512f)) + } + + private fun createTaskInfo(windowingMode: Int, splitPosition: Int) { val taskDescriptionBuilder = ActivityManager.TaskDescription.Builder() .setBackgroundColor(Color.YELLOW) val bounds = when (windowingMode) { WINDOWING_MODE_FULLSCREEN -> DISPLAY_BOUNDS WINDOWING_MODE_FREEFORM -> FREEFORM_BOUNDS WINDOWING_MODE_MULTI_WINDOW -> { - checkNotNull(splitPosition) if (splitPosition == SPLIT_POSITION_TOP_OR_LEFT) { SPLIT_LEFT_BOUNDS } else { @@ -244,72 +178,28 @@ class HandleMenuTest : ShellTestCase() { .setBounds(bounds) .setVisible(true) .build() - if (windowingMode == WINDOWING_MODE_MULTI_WINDOW) { - whenever(splitScreenController.getSplitPosition(any())).thenReturn(splitPosition) - whenever(splitScreenController.getStageBounds(any(), any())).thenAnswer { - (it.arguments.first() as Rect).set(SPLIT_LEFT_BOUNDS) - (it.arguments[1] as Rect).set(SPLIT_RIGHT_BOUNDS) - } + // Calculate captionX similar to how WindowDecoration calculates it. + whenever(mockDesktopWindowDecoration.captionX).thenReturn( + (mockDesktopWindowDecoration.mTaskInfo.configuration.windowConfiguration + .bounds.width() - context.resources.getDimensionPixelSize( + R.dimen.desktop_mode_fullscreen_decor_caption_width)) / 2) + whenever(splitScreenController.getSplitPosition(any())).thenReturn(splitPosition) + whenever(splitScreenController.getStageBounds(any(), any())).thenAnswer { + (it.arguments.first() as Rect).set(SPLIT_LEFT_BOUNDS) } - whenever(mockTaskResourceLoader.getName(mockDesktopWindowDecoration.mTaskInfo)) - .thenReturn(APP_NAME) - whenever(mockTaskResourceLoader.getHeaderIcon(mockDesktopWindowDecoration.mTaskInfo)) - .thenReturn(mockAppIcon) } - private fun TestScope.createAndShowHandleMenu( - splitPosition: Int? = null, - forceShowSystemBars: Boolean = false - ): HandleMenu { + private fun createAndShowHandleMenu(): HandleMenu { val layoutId = if (mockDesktopWindowDecoration.mTaskInfo.isFreeform) { R.layout.desktop_mode_app_header } else { - R.layout.desktop_mode_app_handle + R.layout.desktop_mode_app_header } - val captionX = when (mockDesktopWindowDecoration.mTaskInfo.windowingMode) { - WINDOWING_MODE_FULLSCREEN -> (DISPLAY_BOUNDS.width() / 2) - (HANDLE_WIDTH / 2) - WINDOWING_MODE_FREEFORM -> 0 - WINDOWING_MODE_MULTI_WINDOW -> { - checkNotNull(splitPosition) - if (splitPosition == SPLIT_POSITION_TOP_OR_LEFT) { - (SPLIT_LEFT_BOUNDS.width() / 2) - (HANDLE_WIDTH / 2) - } else { - SPLIT_LEFT_BOUNDS.width() + (SPLIT_RIGHT_BOUNDS.width() / 2) - (HANDLE_WIDTH / 2) - } - } - else -> error("Invalid windowing mode") - } - val handleMenu = HandleMenu( - StandardTestDispatcher(testScheduler), - this, - mockDesktopWindowDecoration, - WindowManagerWrapper(mockWindowManager), - mockWindowDecorationActions, - mockTaskResourceLoader, - layoutId, - splitScreenController, - shouldShowWindowingPill = true, - shouldShowNewWindowButton = true, - shouldShowManageWindowsButton = false, - shouldShowChangeAspectRatioButton = false, - shouldShowDesktopModeButton = true, - shouldShowRestartButton = true, - isBrowserApp = false, - null /* openInAppOrBrowserIntent */, - mockDesktopModeUiEventLogger, - captionWidth = HANDLE_WIDTH, - captionHeight = 50, - captionX = captionX, - captionY = 0, - ) - handleMenu.show( - openInAppOrBrowserClickListener = mock(), - onOpenByDefaultClickListener = mock(), - onCloseMenuClickListener = mock(), - onOutsideTouchListener = mock(), - onHandleMenuClicked = mock(), - forceShowSystemBars = forceShowSystemBars - ) + val handleMenu = HandleMenu(mockDesktopWindowDecoration, layoutId, + onClickListener, onTouchListener, appIcon, appName, displayController, + splitScreenController, true /* shouldShowWindowingPill */, + 50 /* captionHeight */ ) + handleMenu.show() return handleMenu } @@ -318,12 +208,5 @@ class HandleMenuTest : ShellTestCase() { private val FREEFORM_BOUNDS = Rect(500, 500, 2000, 1200) private val SPLIT_LEFT_BOUNDS = Rect(0, 0, 1280, 1600) private val SPLIT_RIGHT_BOUNDS = Rect(1280, 0, 2560, 1600) - private const val MENU_WIDTH = 200 - private const val MENU_HEIGHT = 400 - private const val MENU_TOP_MARGIN = 10 - private const val MENU_START_MARGIN = 20 - private const val MENU_PILL_SPACING_MARGIN = 4 - private const val HANDLE_WIDTH = 80 - private const val APP_NAME = "Test App" } } diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/ResizeVeilTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/ResizeVeilTest.kt index 011c8f0ae1..a07be79579 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/ResizeVeilTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/ResizeVeilTest.kt @@ -17,7 +17,6 @@ package com.android.wm.shell.windowdecor import android.graphics.Bitmap import android.graphics.Rect -import android.graphics.drawable.BitmapDrawable import android.testing.AndroidTestingRunner import android.testing.TestableLooper import android.view.Display @@ -30,13 +29,6 @@ import com.android.wm.shell.TestRunningTaskInfoBuilder import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.DisplayController.OnDisplaysChangedListener import com.android.wm.shell.windowdecor.WindowDecoration.SurfaceControlViewHostFactory -import com.android.wm.shell.windowdecor.common.WindowDecorTaskResourceLoader -import com.google.common.truth.Truth.assertThat -import kotlinx.coroutines.ExperimentalCoroutinesApi -import kotlinx.coroutines.test.StandardTestDispatcher -import kotlinx.coroutines.test.TestScope -import kotlinx.coroutines.test.advanceUntilIdle -import kotlinx.coroutines.test.runTest import org.junit.Before import org.junit.Test import org.junit.runner.RunWith @@ -52,7 +44,7 @@ import org.mockito.kotlin.mock import org.mockito.kotlin.never import org.mockito.kotlin.times import org.mockito.kotlin.verify -import org.mockito.kotlin.verifyNoMoreInteractions +import org.mockito.kotlin.verifyZeroInteractions import org.mockito.kotlin.whenever @@ -62,7 +54,6 @@ import org.mockito.kotlin.whenever * Build/Install/Run: * atest WMShellUnitTests:ResizeVeilTest */ -@OptIn(ExperimentalCoroutinesApi::class) @SmallTest @RunWith(AndroidTestingRunner::class) @TestableLooper.RunWithLooper @@ -94,8 +85,6 @@ class ResizeVeilTest : ShellTestCase() { private lateinit var mockIconSurface: SurfaceControl @Mock private lateinit var mockTransaction: SurfaceControl.Transaction - @Mock - private lateinit var mockTaskResourceLoader: WindowDecorTaskResourceLoader private val taskInfo = TestRunningTaskInfoBuilder().build() @@ -108,7 +97,7 @@ class ResizeVeilTest : ShellTestCase() { .thenReturn(spyResizeVeilSurfaceBuilder) doReturn(mockResizeVeilSurface).whenever(spyResizeVeilSurfaceBuilder).build() whenever(mockSurfaceControlBuilderFactory - .create(eq("Resize veil background of Task=" + taskInfo.taskId))) + .create(eq("Resize veil background of Task=" + taskInfo.taskId), any())) .thenReturn(spyBackgroundSurfaceBuilder) doReturn(mockBackgroundSurface).whenever(spyBackgroundSurfaceBuilder).build() whenever(mockSurfaceControlBuilderFactory @@ -126,7 +115,7 @@ class ResizeVeilTest : ShellTestCase() { } @Test - fun init_displayAvailable_viewHostCreated() = runTest { + fun init_displayAvailable_viewHostCreated() { createResizeVeil(withDisplayAvailable = true) verify(mockSurfaceControlViewHostFactory) @@ -134,7 +123,7 @@ class ResizeVeilTest : ShellTestCase() { } @Test - fun init_displayUnavailable_viewHostNotCreatedUntilDisplayAppears() = runTest { + fun init_displayUnavailable_viewHostNotCreatedUntilDisplayAppears() { createResizeVeil(withDisplayAvailable = false) verify(mockSurfaceControlViewHostFactory, never()) @@ -151,14 +140,14 @@ class ResizeVeilTest : ShellTestCase() { } @Test - fun dispose_removesDisplayWindowListener() = runTest { + fun dispose_removesDisplayWindowListener() { createResizeVeil().dispose() verify(mockDisplayController).removeDisplayWindowListener(any()) } @Test - fun showVeil() = runTest { + fun showVeil() { val veil = createResizeVeil() veil.showVeil(mockTransaction, mock(), Rect(0, 0, 100, 100), taskInfo, false /* fadeIn */) @@ -170,7 +159,7 @@ class ResizeVeilTest : ShellTestCase() { } @Test - fun showVeil_displayUnavailable_doesNotShow() = runTest { + fun showVeil_displayUnavailable_doesNotShow() { val veil = createResizeVeil(withDisplayAvailable = false) veil.showVeil(mockTransaction, mock(), Rect(0, 0, 100, 100), taskInfo, false /* fadeIn */) @@ -182,7 +171,7 @@ class ResizeVeilTest : ShellTestCase() { } @Test - fun showVeil_alreadyVisible_doesNotShowAgain() = runTest { + fun showVeil_alreadyVisible_doesNotShowAgain() { val veil = createResizeVeil() veil.showVeil(mockTransaction, mock(), Rect(0, 0, 100, 100), taskInfo, false /* fadeIn */) @@ -195,7 +184,7 @@ class ResizeVeilTest : ShellTestCase() { } @Test - fun showVeil_reparentsVeilToNewParent() = runTest { + fun showVeil_reparentsVeilToNewParent() { val veil = createResizeVeil(parent = mock()) val newParent = mock<SurfaceControl>() @@ -211,49 +200,24 @@ class ResizeVeilTest : ShellTestCase() { } @Test - fun hideVeil_alreadyHidden_doesNothing() = runTest { + fun hideVeil_alreadyHidden_doesNothing() { val veil = createResizeVeil() veil.hideVeil() - verifyNoMoreInteractions(mockTransaction) + verifyZeroInteractions(mockTransaction) } - @Test - fun showVeil_loadsIconInBackground() = runTest { - val veil = createResizeVeil() - veil.showVeil(mockTransaction, mock(), Rect(0, 0, 100, 100), taskInfo, false /* fadeIn */) - - advanceUntilIdle() - - verify(mockTaskResourceLoader).getVeilIcon(taskInfo) - assertThat((veil.iconView.drawable as BitmapDrawable).bitmap).isEqualTo(mockAppIcon) - } - - @Test - fun dispose_iconLoading_cancelsJob() = runTest { - val veil = createResizeVeil() - veil.showVeil(mockTransaction, mock(), Rect(0, 0, 100, 100), taskInfo, false /* fadeIn */) - - veil.dispose() - advanceUntilIdle() - - assertThat(veil.iconView.drawable).isNull() - } - - private fun TestScope.createResizeVeil( + private fun createResizeVeil( withDisplayAvailable: Boolean = true, parent: SurfaceControl = mock() ): ResizeVeil { whenever(mockDisplayController.getDisplay(taskInfo.displayId)) .thenReturn(if (withDisplayAvailable) mockDisplay else null) - whenever(mockTaskResourceLoader.getVeilIcon(taskInfo)).thenReturn(mockAppIcon) return ResizeVeil( context, mockDisplayController, - mockTaskResourceLoader, - StandardTestDispatcher(testScheduler), - this, + mockAppIcon, parent, { mockTransaction }, mockSurfaceControlBuilderFactory, diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositionerTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositionerTest.kt index 22e90fda75..48ac1e5717 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositionerTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/VeiledResizeTaskPositionerTest.kt @@ -17,13 +17,9 @@ package com.android.wm.shell.windowdecor import android.app.ActivityManager import android.app.WindowConfiguration -import android.content.Context -import android.content.res.Resources import android.graphics.Point import android.graphics.Rect -import android.os.Handler import android.os.IBinder -import android.os.Looper import android.testing.AndroidTestingRunner import android.view.Display import android.view.Surface.ROTATION_0 @@ -35,13 +31,10 @@ import android.view.WindowManager.TRANSIT_CHANGE import android.window.TransitionInfo import android.window.WindowContainerToken import androidx.test.filters.SmallTest -import androidx.test.internal.runner.junit4.statement.UiThreadStatement.runOnUiThread -import com.android.internal.jank.InteractionJankMonitor import com.android.wm.shell.ShellTaskOrganizer import com.android.wm.shell.ShellTestCase import com.android.wm.shell.common.DisplayController import com.android.wm.shell.common.DisplayLayout -import com.android.wm.shell.shared.desktopmode.FakeDesktopState import com.android.wm.shell.transition.Transitions import com.android.wm.shell.transition.Transitions.TransitionFinishCallback import com.android.wm.shell.windowdecor.DragPositioningCallback.CTRL_TYPE_BOTTOM @@ -80,7 +73,7 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { @Mock private lateinit var mockDesktopWindowDecoration: DesktopModeWindowDecoration @Mock - private lateinit var mockDragEventListener: DragPositioningCallbackUtility.DragEventListener + private lateinit var mockDragStartListener: DragPositioningCallbackUtility.DragStartListener @Mock private lateinit var taskToken: WindowContainerToken @@ -105,14 +98,6 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { private lateinit var mockFinishCallback: TransitionFinishCallback @Mock private lateinit var mockTransitions: Transitions - @Mock - private lateinit var mockContext: Context - @Mock - private lateinit var mockResources: Resources - @Mock - private lateinit var mockInteractionJankMonitor: InteractionJankMonitor - private val mainHandler = Handler(Looper.getMainLooper()) - private val desktopState = FakeDesktopState() private lateinit var taskPositioner: VeiledResizeTaskPositioner @@ -120,9 +105,6 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { fun setUp() { MockitoAnnotations.initMocks(this) - mockDesktopWindowDecoration.mDisplay = mockDisplay - mockDesktopWindowDecoration.mDecorWindowContext = mockContext - whenever(mockContext.getResources()).thenReturn(mockResources) whenever(taskToken.asBinder()).thenReturn(taskBinder) whenever(mockDisplayController.getDisplayLayout(DISPLAY_ID)).thenReturn(mockDisplayLayout) whenever(mockDisplayLayout.densityDpi()).thenReturn(DENSITY_DPI) @@ -147,7 +129,6 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { displayId = DISPLAY_ID configuration.windowConfiguration.setBounds(STARTING_BOUNDS) configuration.windowConfiguration.displayRotation = ROTATION_90 - isResizeable = true } `when`(mockDesktopWindowDecoration.calculateValidDragArea()).thenReturn(VALID_DRAG_AREA) mockDesktopWindowDecoration.mDisplay = mockDisplay @@ -158,30 +139,25 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { mockShellTaskOrganizer, mockDesktopWindowDecoration, mockDisplayController, + mockDragStartListener, mockTransactionFactory, - mockTransitions, - mockInteractionJankMonitor, - mainHandler, - desktopState, + mockTransitions ) } @Test - fun testDragResize_noMove_doesNotShowResizeVeil() = runOnUiThread { + fun testDragResize_noMove_doesNotShowResizeVeil() { taskPositioner.onDragPositioningStart( CTRL_TYPE_TOP or CTRL_TYPE_RIGHT, - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) verify(mockDesktopWindowDecoration, never()).showResizeVeil(STARTING_BOUNDS) taskPositioner.onDragPositioningEnd( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) - verify(mockTransitions, never()).startTransition(eq(TRANSIT_CHANGE), argThat { wct -> return@argThat wct.changes.any { (token, change) -> token == taskBinder && @@ -192,16 +168,14 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { } @Test - fun testDragResize_movesTask_doesNotShowResizeVeil() = runOnUiThread { + fun testDragResize_movesTask_doesNotShowResizeVeil() { taskPositioner.onDragPositioningStart( CTRL_TYPE_UNDEFINED, - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) taskPositioner.onDragPositioningMove( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat() + 60, STARTING_BOUNDS.top.toFloat() + 100 ) @@ -213,8 +187,7 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { verify(mockTransaction).setPosition(any(), eq(rectAfterMove.left.toFloat()), eq(rectAfterMove.top.toFloat())) - val endBounds = taskPositioner.onDragPositioningEnd( - DISPLAY_ID, + taskPositioner.onDragPositioningEnd( STARTING_BOUNDS.left.toFloat() + 70, STARTING_BOUNDS.top.toFloat() + 20 ) @@ -226,20 +199,23 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { verify(mockDesktopWindowDecoration, never()).showResizeVeil(any()) verify(mockDesktopWindowDecoration, never()).hideResizeVeil() - Assert.assertEquals(rectAfterEnd, endBounds) + verify(mockTransitions).startTransition(eq(TRANSIT_CHANGE), argThat { wct -> + return@argThat wct.changes.any { (token, change) -> + token == taskBinder && + (change.windowSetMask and WindowConfiguration.WINDOW_CONFIG_BOUNDS) != 0 && + change.configuration.windowConfiguration.bounds == rectAfterEnd }}, + eq(taskPositioner)) } @Test - fun testDragResize_resize_boundsUpdateOnEnd() = runOnUiThread { + fun testDragResize_resize_boundsUpdateOnEnd() { taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT or CTRL_TYPE_TOP, - DISPLAY_ID, STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.top.toFloat() ) taskPositioner.onDragPositioningMove( - DISPLAY_ID, STARTING_BOUNDS.right.toFloat() + 10, STARTING_BOUNDS.top.toFloat() + 10 ) @@ -257,7 +233,6 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { }) taskPositioner.onDragPositioningEnd( - DISPLAY_ID, STARTING_BOUNDS.right.toFloat() + 20, STARTING_BOUNDS.top.toFloat() + 20 ) @@ -274,22 +249,19 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { } @Test - fun testDragResize_noEffectiveMove_skipsTransactionOnEnd() = runOnUiThread { + fun testDragResize_noEffectiveMove_skipsTransactionOnEnd() { taskPositioner.onDragPositioningStart( - DISPLAY_ID, CTRL_TYPE_TOP or CTRL_TYPE_RIGHT, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) taskPositioner.onDragPositioningMove( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) taskPositioner.onDragPositioningEnd( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat() + 10, STARTING_BOUNDS.top.toFloat() + 10 ) @@ -309,11 +281,11 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { }) } + @Test - fun testDragResize_drag_setBoundsNotRunIfDragEndsInDisallowedEndArea() = runOnUiThread { + fun testDragResize_drag_setBoundsNotRunIfDragEndsInDisallowedEndArea() { taskPositioner.onDragPositioningStart( CTRL_TYPE_UNDEFINED, // drag - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -321,12 +293,11 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { val newX = STARTING_BOUNDS.left.toFloat() + 5 val newY = DISALLOWED_AREA_FOR_END_BOUNDS_HEIGHT.toFloat() - 1 taskPositioner.onDragPositioningMove( - DISPLAY_ID, newX, newY ) - taskPositioner.onDragPositioningEnd(DISPLAY_ID, newX, newY) + taskPositioner.onDragPositioningEnd(newX, newY) verify(mockShellTaskOrganizer, never()).applyTransaction(argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -337,11 +308,10 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { } @Test - fun testDragResize_resize_resizingTaskReorderedToTopWhenNotFocused() = runOnUiThread { - mockDesktopWindowDecoration.mHasGlobalFocus = false + fun testDragResize_resize_resizingTaskReorderedToTopWhenNotFocused() { + mockDesktopWindowDecoration.mTaskInfo.isFocused = false taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT, // Resize right - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -354,11 +324,10 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { } @Test - fun testDragResize_resize_resizingTaskNotReorderedToTopWhenFocused() = runOnUiThread { - mockDesktopWindowDecoration.mHasGlobalFocus = true + fun testDragResize_resize_resizingTaskNotReorderedToTopWhenFocused() { + mockDesktopWindowDecoration.mTaskInfo.isFocused = true taskPositioner.onDragPositioningStart( CTRL_TYPE_RIGHT, // Resize right - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -371,11 +340,10 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { } @Test - fun testDragResize_drag_draggedTaskNotReorderedToTop() = runOnUiThread { - mockDesktopWindowDecoration.mHasGlobalFocus = false + fun testDragResize_drag_draggedTaskNotReorderedToTop() { + mockDesktopWindowDecoration.mTaskInfo.isFocused = false taskPositioner.onDragPositioningStart( CTRL_TYPE_UNDEFINED, // drag - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -389,14 +357,13 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { } @Test - fun testDragResize_drag_updatesStableBoundsOnRotate() = runOnUiThread { + fun testDragResize_drag_updatesStableBoundsOnRotate() { // Test landscape stable bounds performDrag(STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.bottom.toFloat(), STARTING_BOUNDS.right.toFloat() + 2000, STARTING_BOUNDS.bottom.toFloat() + 2000, CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM) val rectAfterDrag = Rect(STARTING_BOUNDS) rectAfterDrag.right += 2000 - rectAfterDrag.bottom = STABLE_BOUNDS_LANDSCAPE.bottom // First drag; we should fetch stable bounds. verify(mockDisplayLayout, times(1)).getStableBounds(any()) verify(mockTransitions).startTransition(eq(TRANSIT_CHANGE), argThat { wct -> @@ -421,8 +388,8 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { performDrag(STARTING_BOUNDS.right.toFloat(), STARTING_BOUNDS.bottom.toFloat(), STARTING_BOUNDS.right.toFloat() + 2000, STARTING_BOUNDS.bottom.toFloat() + 2000, CTRL_TYPE_RIGHT or CTRL_TYPE_BOTTOM) - rectAfterDrag.right = STABLE_BOUNDS_PORTRAIT.right - rectAfterDrag.bottom = STARTING_BOUNDS.bottom + 2000 + rectAfterDrag.right -= 2000 + rectAfterDrag.bottom += 2000 verify(mockTransitions).startTransition(eq(TRANSIT_CHANGE), argThat { wct -> return@argThat wct.changes.any { (token, change) -> @@ -435,29 +402,24 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { } @Test - fun testIsResizingOrAnimatingResizeSet() = runOnUiThread { - taskPositioner.addDragEventListener(mockDragEventListener) + fun testIsResizingOrAnimatingResizeSet() { Assert.assertFalse(taskPositioner.isResizingOrAnimating) taskPositioner.onDragPositioningStart( CTRL_TYPE_TOP or CTRL_TYPE_RIGHT, - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) taskPositioner.onDragPositioningMove( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat() - 20, STARTING_BOUNDS.top.toFloat() - 20 ) // isResizingOrAnimating should be set to true after move during a resize Assert.assertTrue(taskPositioner.isResizingOrAnimating) - verify(mockDragEventListener, times(1)).onDragMove(eq(TASK_ID)) taskPositioner.onDragPositioningEnd( - DISPLAY_ID, STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat() ) @@ -467,7 +429,7 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { } @Test - fun testIsResizingOrAnimatingResizeResetAfterStartAnimation() = runOnUiThread { + fun testIsResizingOrAnimatingResizeResetAfterStartAnimation() { performDrag( STARTING_BOUNDS.left.toFloat(), STARTING_BOUNDS.top.toFloat(), STARTING_BOUNDS.left.toFloat() - 20, STARTING_BOUNDS.top.toFloat() - 20, @@ -481,7 +443,7 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { } @Test - fun testStartAnimation_useEndRelOffset() = runOnUiThread { + fun testStartAnimation_useEndRelOffset() { val changeMock = mock(TransitionInfo.Change::class.java) val startTransaction = mock(Transaction::class.java) val finishTransaction = mock(Transaction::class.java) @@ -523,18 +485,15 @@ class VeiledResizeTaskPositionerTest : ShellTestCase() { ) { taskPositioner.onDragPositioningStart( ctrlType, - DISPLAY_ID, startX, startY ) taskPositioner.onDragPositioningMove( - DISPLAY_ID, endX, endY ) taskPositioner.onDragPositioningEnd( - DISPLAY_ID, endX, endY ) diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/WindowDecorationTests.java b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/WindowDecorationTests.java index 174015a012..f3603e1d9b 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/WindowDecorationTests.java +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/WindowDecorationTests.java @@ -18,18 +18,16 @@ package com.android.wm.shell.windowdecor; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN; -import static android.view.InsetsSource.FLAG_FORCE_CONSUMING; -import static android.view.InsetsSource.FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR; import static android.view.WindowInsets.Type.captionBar; import static android.view.WindowInsets.Type.mandatorySystemGestures; import static android.view.WindowInsets.Type.statusBars; +import static com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession; import static com.android.wm.shell.MockSurfaceControlHelper.createMockSurfaceControlBuilder; import static com.android.wm.shell.MockSurfaceControlHelper.createMockSurfaceControlTransaction; import static com.google.common.truth.Truth.assertThat; -import static junit.framework.Assert.assertFalse; import static junit.framework.Assert.assertTrue; import static org.junit.Assert.assertEquals; @@ -39,61 +37,47 @@ import static org.mockito.ArgumentMatchers.anyFloat; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.any; import static org.mockito.Mockito.argThat; -import static org.mockito.Mockito.clearInvocations; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.eq; import static org.mockito.Mockito.inOrder; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.same; -import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; +import static org.mockito.quality.Strictness.LENIENT; -import android.annotation.NonNull; import android.app.ActivityManager; import android.content.Context; import android.content.res.Resources; import android.graphics.Color; -import android.graphics.Insets; import android.graphics.Point; import android.graphics.Rect; -import android.graphics.Region; -import android.os.LocaleList; -import android.os.Looper; -import android.platform.test.annotations.UsesFlags; -import android.platform.test.flag.junit.FlagsParameterization; +import android.testing.AndroidTestingRunner; import android.util.DisplayMetrics; import android.view.AttachedSurfaceControl; import android.view.Display; -import android.view.InsetsSource; import android.view.InsetsState; import android.view.SurfaceControl; import android.view.SurfaceControlViewHost; import android.view.View; import android.view.WindowInsets; import android.view.WindowManager.LayoutParams; -import android.window.DesktopExperienceFlags; import android.window.SurfaceSyncGroup; import android.window.WindowContainerToken; import android.window.WindowContainerTransaction; import androidx.test.filters.SmallTest; -import com.android.window.flags.Flags; -import com.android.wm.shell.MockToken; +import com.android.dx.mockito.inline.extended.StaticMockitoSession; import com.android.wm.shell.ShellTaskOrganizer; import com.android.wm.shell.ShellTestCase; -import com.android.wm.shell.TestHandler; import com.android.wm.shell.TestRunningTaskInfoBuilder; import com.android.wm.shell.common.DisplayController; -import com.android.wm.shell.desktopmode.DesktopModeEventLogger; +import com.android.wm.shell.shared.DesktopModeStatus; import com.android.wm.shell.tests.R; -import com.android.wm.shell.transition.Transitions; import com.android.wm.shell.windowdecor.additionalviewcontainer.AdditionalViewContainer; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHost; -import com.android.wm.shell.windowdecor.common.viewhost.WindowDecorViewHostSupplier; import org.junit.Before; import org.junit.Test; @@ -103,12 +87,8 @@ import org.mockito.InOrder; import org.mockito.Mock; import org.mockito.Mockito; -import platform.test.runner.parameterized.ParameterizedAndroidJunit4; -import platform.test.runner.parameterized.Parameters; - import java.util.ArrayList; import java.util.List; -import java.util.Locale; import java.util.function.Supplier; /** @@ -118,22 +98,13 @@ import java.util.function.Supplier; * atest WMShellUnitTests:WindowDecorationTests */ @SmallTest -@RunWith(ParameterizedAndroidJunit4.class) -@UsesFlags(com.android.window.flags.Flags.class) +@RunWith(AndroidTestingRunner.class) public class WindowDecorationTests extends ShellTestCase { private static final Rect TASK_BOUNDS = new Rect(100, 300, 400, 400); private static final Point TASK_POSITION_IN_PARENT = new Point(40, 60); private static final int CORNER_RADIUS = 20; - private static final int SHADOW_RADIUS = 10; private static final int STATUS_BAR_INSET_SOURCE_ID = 0; - @Parameters(name = "{0}") - public static List<FlagsParameterization> getParams() { - return FlagsParameterization.allCombinationsOf( - Flags.FLAG_ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX, - Flags.FLAG_ENABLE_FREEFORM_BOX_SHADOWS); - } - private final WindowDecoration.RelayoutResult<TestView> mRelayoutResult = new WindowDecoration.RelayoutResult<>(); @@ -144,10 +115,6 @@ public class WindowDecorationTests extends ShellTestCase { @Mock private WindowDecoration.SurfaceControlViewHostFactory mMockSurfaceControlViewHostFactory; @Mock - private WindowDecorViewHostSupplier<WindowDecorViewHost> mMockWindowDecorViewHostSupplier; - @Mock - private WindowDecorViewHost mMockWindowDecorViewHost; - @Mock private SurfaceControlViewHost mMockSurfaceControlViewHost; @Mock private AttachedSurfaceControl mMockRootSurfaceControl; @@ -159,10 +126,6 @@ public class WindowDecorationTests extends ShellTestCase { private SurfaceSyncGroup mMockSurfaceSyncGroup; @Mock private SurfaceControl mMockTaskSurface; - @Mock - private DesktopModeEventLogger mDesktopModeEventLogger; - @Mock - private Transitions mTransitions; private final List<SurfaceControl.Transaction> mMockSurfaceControlTransactions = new ArrayList<>(); @@ -173,11 +136,6 @@ public class WindowDecorationTests extends ShellTestCase { private SurfaceControl.Transaction mMockSurfaceControlAddWindowT; private WindowDecoration.RelayoutParams mRelayoutParams = new WindowDecoration.RelayoutParams(); private int mCaptionMenuWidthId; - private final TestHandler mTestHandler = new TestHandler(Looper.getMainLooper()); - - public WindowDecorationTests(FlagsParameterization flags) { - mSetFlagsRule.setFlagsParameterization(flags); - } @Before public void setUp() { @@ -186,23 +144,11 @@ public class WindowDecorationTests extends ShellTestCase { mMockSurfaceControlAddWindowT = createMockSurfaceControlTransaction(); mRelayoutParams.mLayoutResId = 0; - mRelayoutParams.mCaptionHeightCalculator = - (ctx, display) -> WindowDecoration.loadDimensionPixelSize(ctx.getResources(), - R.dimen.test_freeform_decor_caption_height); + mRelayoutParams.mCaptionHeightId = R.dimen.test_freeform_decor_caption_height; mCaptionMenuWidthId = R.dimen.test_freeform_decor_caption_menu_width; - if (Flags.enableFreeformBoxShadows()) { - mRelayoutParams.mBoxShadowSettingsIds = new int[]{R.style.BoxShadowParamsKeyFocused}; - mRelayoutParams.mBorderSettingsId = R.style.BorderSettingsFocusedDark; - } else if (DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue()) { - mRelayoutParams.mShadowRadiusId = R.dimen.test_freeform_shadow_radius; - mRelayoutParams.mCornerRadiusId = R.dimen.test_freeform_corner_radius; - } else { - mRelayoutParams.mShadowRadius = SHADOW_RADIUS; - mRelayoutParams.mCornerRadius = CORNER_RADIUS; - } + mRelayoutParams.mShadowRadiusId = R.dimen.test_window_decor_shadow_radius; + mRelayoutParams.mCornerRadius = CORNER_RADIUS; - when(mMockDisplayController.getDisplay(Display.DEFAULT_DISPLAY)) - .thenReturn(mock(Display.class)); doReturn(mMockSurfaceControlViewHost).when(mMockSurfaceControlViewHostFactory) .create(any(), any(), any()); when(mMockSurfaceControlViewHost.getRootSurfaceControl()) @@ -212,10 +158,6 @@ public class WindowDecorationTests extends ShellTestCase { // Add status bar inset so that WindowDecoration does not think task is in immersive mode mInsetsState.getOrCreateSource(STATUS_BAR_INSET_SOURCE_ID, statusBars()).setVisible(true); doReturn(mInsetsState).when(mMockDisplayController).getInsetsState(anyInt()); - - when(mMockWindowDecorViewHostSupplier.acquire(any(), any())) - .thenReturn(mMockWindowDecorViewHost); - when(mMockWindowDecorViewHost.getSurfaceControl()).thenReturn(mock(SurfaceControl.class)); } @Test @@ -247,32 +189,26 @@ public class WindowDecorationTests extends ShellTestCase { .setPositionInParent(TASK_POSITION_IN_PARENT.x, TASK_POSITION_IN_PARENT.y) .setVisible(false) .build(); + taskInfo.isFocused = false; // Density is 2. Shadow radius is 10px. Caption height is 64px. taskInfo.configuration.densityDpi = DisplayMetrics.DENSITY_DEFAULT * 2; final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - windowDecor.relayout(taskInfo, false /* hasGlobalFocus */); + windowDecor.relayout(taskInfo); verify(decorContainerSurfaceBuilder, never()).build(); verify(taskBackgroundSurfaceBuilder, never()).build(); verify(captionContainerSurfaceBuilder, never()).build(); verify(mMockSurfaceControlViewHostFactory, never()).create(any(), any(), any()); + verify(mMockSurfaceControlFinishT).hide(mMockTaskSurface); + assertNull(mRelayoutResult.mRootView); } @Test - public void testLayoutResultCalculation_visibleFocusedTask_inSyncWithTransition() { - testLayoutResultCalculation_visibleFocusedTask(/* inSyncWithTransition= */ true); - } - - @Test - public void testLayoutResultCalculation_visibleFocusedTask_NotInSyncWithTransition() { - testLayoutResultCalculation_visibleFocusedTask(/* inSyncWithTransition= */ false); - } - - void testLayoutResultCalculation_visibleFocusedTask(boolean inSyncWithTransition) { + public void testLayoutResultCalculation_visibleFocusedTask() { final Display defaultDisplay = mock(Display.class); doReturn(defaultDisplay).when(mMockDisplayController) .getDisplay(Display.DEFAULT_DISPLAY); @@ -281,6 +217,10 @@ public class WindowDecorationTests extends ShellTestCase { final SurfaceControl.Builder decorContainerSurfaceBuilder = createMockSurfaceControlBuilder(decorContainerSurface); mMockSurfaceControlBuilders.add(decorContainerSurfaceBuilder); + final SurfaceControl captionContainerSurface = mock(SurfaceControl.class); + final SurfaceControl.Builder captionContainerSurfaceBuilder = + createMockSurfaceControlBuilder(captionContainerSurface); + mMockSurfaceControlBuilders.add(captionContainerSurfaceBuilder); final ActivityManager.RunningTaskInfo taskInfo = new TestRunningTaskInfoBuilder() .setDisplayId(Display.DEFAULT_DISPLAY) @@ -289,77 +229,44 @@ public class WindowDecorationTests extends ShellTestCase { .setVisible(true) .setWindowingMode(WINDOWING_MODE_FREEFORM) .build(); + taskInfo.isFocused = true; // Density is 2. Shadow radius is 10px. Caption height is 64px. taskInfo.configuration.densityDpi = DisplayMetrics.DENSITY_DEFAULT * 2; final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mIsCaptionVisible = true; - mRelayoutParams.mInSyncWithTransition = inSyncWithTransition; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(taskInfo); verify(decorContainerSurfaceBuilder).setParent(mMockTaskSurface); verify(decorContainerSurfaceBuilder).setContainerLayer(); verify(mMockSurfaceControlStartT).setTrustedOverlay(decorContainerSurface, true); verify(mMockSurfaceControlStartT).setWindowCrop(decorContainerSurface, 300, 100); - final SurfaceControl captionContainerSurface = mMockWindowDecorViewHost.getSurfaceControl(); - verify(mMockSurfaceControlStartT).reparent(captionContainerSurface, decorContainerSurface); + verify(captionContainerSurfaceBuilder).setParent(decorContainerSurface); + verify(captionContainerSurfaceBuilder).setContainerLayer(); verify(mMockSurfaceControlStartT).setWindowCrop(captionContainerSurface, 300, 64); verify(mMockSurfaceControlStartT).show(captionContainerSurface); - verify(mMockWindowDecorViewHost).updateView( - same(mMockView), - argThat(lp -> lp.height == 64 - && lp.width == 300 - && (lp.flags & LayoutParams.FLAG_NOT_FOCUSABLE) != 0), - eq(taskInfo.configuration), - any(), - eq(null) /* onDrawTransaction */); - verify(mMockView).setTaskFocusState(true); - verifyAddedInsets(1, taskInfo.token, 0 /* index */, WindowInsets.Type.captionBar(), - new Rect(100, 300, 400, 364)); + verify(mMockSurfaceControlViewHostFactory).create(any(), eq(defaultDisplay), any()); - if (Flags.enableFreeformBoxShadows()) { - if (inSyncWithTransition) { - verify(mMockSurfaceControlStartT).setBoxShadowSettings(eq(mMockTaskSurface), any()); - verify(mMockSurfaceControlFinishT).setBoxShadowSettings(eq(mMockTaskSurface), - any()); - verify(mMockSurfaceControlStartT).setBorderSettings(eq(mMockTaskSurface), any()); - verify(mMockSurfaceControlFinishT).setBorderSettings(eq(mMockTaskSurface), any()); - } else { - verify(mMockSurfaceControlStartT, never()).setBoxShadowSettings( - eq(mMockTaskSurface), any()); - verify(mMockSurfaceControlFinishT, never()).setBoxShadowSettings( - eq(mMockTaskSurface), any()); - verify(mMockSurfaceControlStartT, never()).setBorderSettings(eq(mMockTaskSurface), - any()); - verify(mMockSurfaceControlFinishT, never()).setBorderSettings(eq(mMockTaskSurface), - any()); - } - } else if (DesktopExperienceFlags.ENABLE_DYNAMIC_RADIUS_COMPUTATION_BUGFIX.isTrue()) { - if (inSyncWithTransition) { - final int cornerRadius = WindowDecoration.loadDimensionPixelSize( - windowDecor.mDecorWindowContext.getResources(), - mRelayoutParams.mCornerRadiusId); - verify(mMockSurfaceControlStartT).setCornerRadius(mMockTaskSurface, cornerRadius); - verify(mMockSurfaceControlFinishT).setCornerRadius(mMockTaskSurface, cornerRadius); - final int shadowRadius = WindowDecoration.loadDimensionPixelSize( - windowDecor.mDecorWindowContext.getResources(), - mRelayoutParams.mShadowRadiusId); - verify(mMockSurfaceControlStartT).setShadowRadius(mMockTaskSurface, shadowRadius); - } else { - verify(mMockSurfaceControlStartT, never()).setCornerRadius(eq(mMockTaskSurface), - anyFloat()); - verify(mMockSurfaceControlFinishT, never()).setCornerRadius(eq(mMockTaskSurface), - anyFloat()); - verify(mMockSurfaceControlStartT, never()).setShadowRadius(eq(mMockTaskSurface), - anyFloat()); - } - } else { - verify(mMockSurfaceControlStartT).setCornerRadius(mMockTaskSurface, CORNER_RADIUS); - verify(mMockSurfaceControlFinishT).setCornerRadius(mMockTaskSurface, CORNER_RADIUS); - verify(mMockSurfaceControlStartT).setShadowRadius(mMockTaskSurface, SHADOW_RADIUS); - } + verify(mMockSurfaceControlViewHost) + .setView(same(mMockView), + argThat(lp -> lp.height == 64 + && lp.width == 300 + && (lp.flags & LayoutParams.FLAG_NOT_FOCUSABLE) != 0)); + verify(mMockView).setTaskFocusState(true); + verify(mMockWindowContainerTransaction).addInsetsSource( + eq(taskInfo.token), + any(), + eq(0 /* index */), + eq(WindowInsets.Type.captionBar()), + eq(new Rect(100, 300, 400, 364)), + any()); + + verify(mMockSurfaceControlStartT).setCornerRadius(mMockTaskSurface, CORNER_RADIUS); + verify(mMockSurfaceControlFinishT).setCornerRadius(mMockTaskSurface, CORNER_RADIUS); + verify(mMockSurfaceControlStartT) + .show(mMockTaskSurface); + verify(mMockSurfaceControlStartT).setShadowRadius(mMockTaskSurface, 10); assertEquals(300, mRelayoutResult.mWidth); assertEquals(100, mRelayoutResult.mHeight); @@ -375,6 +282,10 @@ public class WindowDecorationTests extends ShellTestCase { final SurfaceControl.Builder decorContainerSurfaceBuilder = createMockSurfaceControlBuilder(decorContainerSurface); mMockSurfaceControlBuilders.add(decorContainerSurfaceBuilder); + final SurfaceControl captionContainerSurface = mock(SurfaceControl.class); + final SurfaceControl.Builder captionContainerSurfaceBuilder = + createMockSurfaceControlBuilder(captionContainerSurface); + mMockSurfaceControlBuilders.add(captionContainerSurfaceBuilder); final SurfaceControl.Transaction t = mock(SurfaceControl.Transaction.class); mMockSurfaceControlTransactions.add(t); @@ -389,15 +300,15 @@ public class WindowDecorationTests extends ShellTestCase { .setPositionInParent(TASK_POSITION_IN_PARENT.x, TASK_POSITION_IN_PARENT.y) .setVisible(true) .build(); + taskInfo.isFocused = true; // Density is 2. Shadow radius is 10px. Caption height is 64px. taskInfo.configuration.densityDpi = DisplayMetrics.DENSITY_DEFAULT * 2; final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mIsCaptionVisible = true; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(taskInfo); - verify(mMockWindowDecorViewHost, never()).release(any()); + verify(mMockSurfaceControlViewHost, never()).release(); verify(t, never()).apply(); verify(mMockWindowContainerTransaction, never()) .removeInsetsSource(eq(taskInfo.token), any(), anyInt(), anyInt()); @@ -405,10 +316,11 @@ public class WindowDecorationTests extends ShellTestCase { final SurfaceControl.Transaction t2 = mock(SurfaceControl.Transaction.class); mMockSurfaceControlTransactions.add(t2); taskInfo.isVisible = false; - windowDecor.relayout(taskInfo, false /* hasGlobalFocus */); + windowDecor.relayout(taskInfo); - final InOrder releaseOrder = inOrder(t2, mMockWindowDecorViewHostSupplier); - releaseOrder.verify(mMockWindowDecorViewHostSupplier).release(mMockWindowDecorViewHost, t2); + final InOrder releaseOrder = inOrder(t2, mMockSurfaceControlViewHost); + releaseOrder.verify(mMockSurfaceControlViewHost).release(); + releaseOrder.verify(t2).remove(captionContainerSurface); releaseOrder.verify(t2).remove(decorContainerSurface); releaseOrder.verify(t2).apply(); // Expect to remove two insets sources, the caption insets and the mandatory gesture insets. @@ -432,7 +344,7 @@ public class WindowDecorationTests extends ShellTestCase { .build(); final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(taskInfo); // It shouldn't show the window decoration when it can't obtain the display instance. assertThat(mRelayoutResult.mRootView).isNull(); @@ -456,51 +368,8 @@ public class WindowDecorationTests extends ShellTestCase { verify(mMockDisplayController).removeDisplayWindowListener(same(listener)); assertThat(mRelayoutResult.mRootView).isSameInstanceAs(mMockView); - verify(mMockWindowDecorViewHostSupplier).acquire(any(), eq(mockDisplay)); - verify(mMockWindowDecorViewHost).updateView(same(mMockView), any(), any(), any(), any()); - } - - - @Test - public void testReinflateViewsOnFontScaleChange() { - final Display defaultDisplay = mock(Display.class); - doReturn(defaultDisplay).when(mMockDisplayController) - .getDisplay(Display.DEFAULT_DISPLAY); - - final ActivityManager.RunningTaskInfo taskInfo = new TestRunningTaskInfoBuilder() - .setVisible(true) - .setDisplayId(Display.DEFAULT_DISPLAY) - .build(); - final TestWindowDecoration windowDecor = spy(createWindowDecoration(taskInfo)); - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */, Region.obtain()); - clearInvocations(windowDecor); - final ActivityManager.RunningTaskInfo taskInfo2 = new TestRunningTaskInfoBuilder() - .setVisible(true) - .setDisplayId(Display.DEFAULT_DISPLAY) - .build(); - taskInfo2.configuration.fontScale = taskInfo.configuration.fontScale + 1; - windowDecor.relayout(taskInfo2, true /* hasGlobalFocus */, Region.obtain()); - // WindowDecoration#releaseViews should be called since the font scale has changed. - verify(windowDecor).releaseViews(any()); - } - - @Test - public void testViewNotReinflatedWhenFontScaleNotChanged() { - final Display defaultDisplay = mock(Display.class); - doReturn(defaultDisplay).when(mMockDisplayController) - .getDisplay(Display.DEFAULT_DISPLAY); - - final ActivityManager.RunningTaskInfo taskInfo = new TestRunningTaskInfoBuilder() - .setVisible(true) - .setDisplayId(Display.DEFAULT_DISPLAY) - .build(); - final TestWindowDecoration windowDecor = spy(createWindowDecoration(taskInfo)); - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */, Region.obtain()); - clearInvocations(windowDecor); - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */, Region.obtain()); - // WindowDecoration#releaseViews should be called since task info (and therefore the - // fontScale) has not changed. - verify(windowDecor, never()).releaseViews(any()); + verify(mMockSurfaceControlViewHostFactory).create(any(), eq(mockDisplay), any()); + verify(mMockSurfaceControlViewHost).setView(same(mMockView), any()); } @Test @@ -513,6 +382,10 @@ public class WindowDecorationTests extends ShellTestCase { final SurfaceControl.Builder decorContainerSurfaceBuilder = createMockSurfaceControlBuilder(decorContainerSurface); mMockSurfaceControlBuilders.add(decorContainerSurfaceBuilder); + final SurfaceControl captionContainerSurface = mock(SurfaceControl.class); + final SurfaceControl.Builder captionContainerSurfaceBuilder = + createMockSurfaceControlBuilder(captionContainerSurface); + mMockSurfaceControlBuilders.add(captionContainerSurfaceBuilder); final SurfaceControl.Transaction t = mock(SurfaceControl.Transaction.class); mMockSurfaceControlTransactions.add(t); @@ -527,16 +400,17 @@ public class WindowDecorationTests extends ShellTestCase { .setPositionInParent(TASK_POSITION_IN_PARENT.x, TASK_POSITION_IN_PARENT.y) .setVisible(true) .build(); + taskInfo.isFocused = true; taskInfo.configuration.densityDpi = DisplayMetrics.DENSITY_DEFAULT * 2; final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(taskInfo); final SurfaceControl additionalWindowSurface = mock(SurfaceControl.class); final SurfaceControl.Builder additionalWindowSurfaceBuilder = createMockSurfaceControlBuilder(additionalWindowSurface); mMockSurfaceControlBuilders.add(additionalWindowSurfaceBuilder); - windowDecor.addTestViewContainer(defaultDisplay); + windowDecor.addTestViewContainer(); verify(additionalWindowSurfaceBuilder).setContainerLayer(); verify(additionalWindowSurfaceBuilder).setParent(decorContainerSurface); @@ -544,55 +418,12 @@ public class WindowDecorationTests extends ShellTestCase { verify(mMockSurfaceControlAddWindowT).setPosition(additionalWindowSurface, 0, 0); final int width = WindowDecoration.loadDimensionPixelSize( windowDecor.mDecorWindowContext.getResources(), mCaptionMenuWidthId); - final int height = mRelayoutParams.mCaptionHeightCalculator.apply( - windowDecor.mDecorWindowContext, defaultDisplay); + final int height = WindowDecoration.loadDimensionPixelSize( + windowDecor.mDecorWindowContext.getResources(), mRelayoutParams.mCaptionHeightId); verify(mMockSurfaceControlAddWindowT).setWindowCrop(additionalWindowSurface, width, height); verify(mMockSurfaceControlAddWindowT).show(additionalWindowSurface); - verify(mMockSurfaceControlViewHostFactory).create(any(), eq(defaultDisplay), any()); - } - - @Test - public void testReinflateViewsOnLocaleListChange() { - final Display defaultDisplay = mock(Display.class); - doReturn(defaultDisplay).when(mMockDisplayController) - .getDisplay(Display.DEFAULT_DISPLAY); - - final ActivityManager.RunningTaskInfo taskInfo = new TestRunningTaskInfoBuilder() - .setVisible(true) - .setDisplayId(Display.DEFAULT_DISPLAY) - .build(); - taskInfo.configuration.setLocales(new LocaleList(Locale.FRANCE, Locale.US)); - final TestWindowDecoration windowDecor = spy(createWindowDecoration(taskInfo)); - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */, Region.obtain()); - clearInvocations(windowDecor); - - final ActivityManager.RunningTaskInfo taskInfo2 = new TestRunningTaskInfoBuilder() - .setVisible(true) - .setDisplayId(Display.DEFAULT_DISPLAY) - .build(); - taskInfo2.configuration.setLocales(new LocaleList(Locale.US, Locale.FRANCE)); - windowDecor.relayout(taskInfo2, true /* hasGlobalFocus */, Region.obtain()); - // WindowDecoration#releaseViews should be called since the locale list has changed. - verify(windowDecor, times(1)).releaseViews(any()); - } - - @Test - public void testViewNotReinflatedWhenLocaleListNotChanged() { - final Display defaultDisplay = mock(Display.class); - doReturn(defaultDisplay).when(mMockDisplayController) - .getDisplay(Display.DEFAULT_DISPLAY); - - final ActivityManager.RunningTaskInfo taskInfo = new TestRunningTaskInfoBuilder() - .setVisible(true) - .setDisplayId(Display.DEFAULT_DISPLAY) - .build(); - taskInfo.configuration.setLocales(new LocaleList(Locale.FRANCE, Locale.US)); - final TestWindowDecoration windowDecor = spy(createWindowDecoration(taskInfo)); - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */, Region.obtain()); - clearInvocations(windowDecor); - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */, Region.obtain()); - // WindowDecoration#releaseViews should not be called since nothing has changed. - verify(windowDecor, never()).releaseViews(any()); + verify(mMockSurfaceControlViewHostFactory, Mockito.times(2)) + .create(any(), eq(defaultDisplay), any()); } @Test @@ -605,6 +436,10 @@ public class WindowDecorationTests extends ShellTestCase { final SurfaceControl.Builder decorContainerSurfaceBuilder = createMockSurfaceControlBuilder(decorContainerSurface); mMockSurfaceControlBuilders.add(decorContainerSurfaceBuilder); + final SurfaceControl captionContainerSurface = mock(SurfaceControl.class); + final SurfaceControl.Builder captionContainerSurfaceBuilder = + createMockSurfaceControlBuilder(captionContainerSurface); + mMockSurfaceControlBuilders.add(captionContainerSurfaceBuilder); final SurfaceControl.Transaction t = mock(SurfaceControl.Transaction.class); mMockSurfaceControlTransactions.add(t); @@ -618,13 +453,14 @@ public class WindowDecorationTests extends ShellTestCase { .setPositionInParent(TASK_POSITION_IN_PARENT.x, TASK_POSITION_IN_PARENT.y) .setVisible(true) .build(); + taskInfo.isFocused = true; taskInfo.configuration.densityDpi = DisplayMetrics.DENSITY_DEFAULT * 2; final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(taskInfo); - final SurfaceControl captionContainerSurface = mMockWindowDecorViewHost.getSurfaceControl(); - verify(mMockSurfaceControlStartT).reparent(captionContainerSurface, decorContainerSurface); + verify(captionContainerSurfaceBuilder).setParent(decorContainerSurface); + verify(captionContainerSurfaceBuilder).setContainerLayer(); // Width of the captionContainerSurface should match the width of TASK_BOUNDS verify(mMockSurfaceControlStartT).setWindowCrop(captionContainerSurface, 300, 64); verify(mMockSurfaceControlStartT).show(captionContainerSurface); @@ -640,6 +476,10 @@ public class WindowDecorationTests extends ShellTestCase { final SurfaceControl.Builder decorContainerSurfaceBuilder = createMockSurfaceControlBuilder(decorContainerSurface); mMockSurfaceControlBuilders.add(decorContainerSurfaceBuilder); + final SurfaceControl captionContainerSurface = mock(SurfaceControl.class); + final SurfaceControl.Builder captionContainerSurfaceBuilder = + createMockSurfaceControlBuilder(captionContainerSurface); + mMockSurfaceControlBuilders.add(captionContainerSurfaceBuilder); final SurfaceControl.Transaction t = mock(SurfaceControl.Transaction.class); mMockSurfaceControlTransactions.add(t); @@ -653,35 +493,22 @@ public class WindowDecorationTests extends ShellTestCase { .setPositionInParent(TASK_POSITION_IN_PARENT.x, TASK_POSITION_IN_PARENT.y) .setVisible(true) .build(); + taskInfo.isFocused = true; taskInfo.configuration.densityDpi = DisplayMetrics.DENSITY_DEFAULT * 2; final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mApplyStartTransactionOnDraw = true; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */, Region.obtain()); + windowDecor.relayout(taskInfo, true /* applyStartTransactionOnDraw */); - verify(mMockWindowDecorViewHost).updateView(any(), any(), any(), any(), - eq(mMockSurfaceControlStartT)); + verify(mMockRootSurfaceControl).applyTransactionOnDraw(mMockSurfaceControlStartT); } @Test - public void testRelayout_withPadding_setsOnResult() { - final ActivityManager.RunningTaskInfo taskInfo = new TestRunningTaskInfoBuilder() - .setDisplayId(Display.DEFAULT_DISPLAY) - .setBounds(TASK_BOUNDS) - .setPositionInParent(TASK_POSITION_IN_PARENT.x, TASK_POSITION_IN_PARENT.y) - .setVisible(true) - .build(); - final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mCaptionTopPadding = 50; + public void testRelayout_fluidResizeEnabled_freeformTask_setTaskSurfaceColor() { + StaticMockitoSession mockitoSession = mockitoSession().mockStatic( + DesktopModeStatus.class).strictness( + LENIENT).startMocking(); + when(DesktopModeStatus.isVeiledResizeEnabled()).thenReturn(false); - windowDecor.relayout(taskInfo, false /* applyStartTransactionOnDraw */, - true /* hasGlobalFocus */, Region.obtain()); - - assertEquals(50, mRelayoutResult.mCaptionTopPadding); - } - - @Test - public void testRelayout_shouldSetBackground_freeformTask_setTaskSurfaceColor() { final Display defaultDisplay = mock(Display.class); doReturn(defaultDisplay).when(mMockDisplayController) .getDisplay(Display.DEFAULT_DISPLAY); @@ -705,12 +532,14 @@ public class WindowDecorationTests extends ShellTestCase { .setVisible(true) .setWindowingMode(WINDOWING_MODE_FREEFORM) .build(); + taskInfo.isFocused = true; final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mShouldSetBackground = true; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(taskInfo); verify(mMockSurfaceControlStartT).setColor(mMockTaskSurface, new float[]{1.f, 1.f, 0.f}); + + mockitoSession.finishMocking(); } @Test @@ -728,15 +557,25 @@ public class WindowDecorationTests extends ShellTestCase { .build(); final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mIsCaptionVisible = true; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + assertTrue(mInsetsState.getOrCreateSource(STATUS_BAR_INSET_SOURCE_ID, statusBars()) + .isVisible()); + assertTrue(mInsetsState.sourceSize() == 1); + assertTrue(mInsetsState.sourceAt(0).getType() == statusBars()); - verifyAddedInsets(1 /* times */, taskInfo.token, 0 /* index */, captionBar()); - verifyAddedInsets(1 /* times */, taskInfo.token, 0 /* index */, mandatorySystemGestures()); + windowDecor.relayout(taskInfo); + + verify(mMockWindowContainerTransaction).addInsetsSource(eq(taskInfo.token), any(), + eq(0) /* index */, eq(captionBar()), any(), any()); + verify(mMockWindowContainerTransaction).addInsetsSource(eq(taskInfo.token), any(), + eq(0) /* index */, eq(mandatorySystemGestures()), any(), any()); } @Test - public void testRelayout_shouldNotSetBackground_fullscreenTask_clearTaskSurfaceColor() { + public void testRelayout_fluidResizeEnabled_fullscreenTask_clearTaskSurfaceColor() { + StaticMockitoSession mockitoSession = mockitoSession().mockStatic( + DesktopModeStatus.class).strictness(LENIENT).startMocking(); + when(DesktopModeStatus.isVeiledResizeEnabled()).thenReturn(false); + final Display defaultDisplay = mock(Display.class); doReturn(defaultDisplay).when(mMockDisplayController) .getDisplay(Display.DEFAULT_DISPLAY); @@ -759,12 +598,41 @@ public class WindowDecorationTests extends ShellTestCase { .setVisible(true) .setWindowingMode(WINDOWING_MODE_FULLSCREEN) .build(); + taskInfo.isFocused = true; final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mIsCaptionVisible = false; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(taskInfo); verify(mMockSurfaceControlStartT).unsetColor(mMockTaskSurface); + + mockitoSession.finishMocking(); + } + + @Test + public void testRelayout_captionHidden_insetsRemoved() { + final Display defaultDisplay = mock(Display.class); + doReturn(defaultDisplay).when(mMockDisplayController) + .getDisplay(Display.DEFAULT_DISPLAY); + + final ActivityManager.RunningTaskInfo taskInfo = new TestRunningTaskInfoBuilder() + .setDisplayId(Display.DEFAULT_DISPLAY) + .setVisible(true) + .setBounds(new Rect(0, 0, 1000, 1000)) + .build(); + final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); + + // Run it once so that insets are added. + mInsetsState.getOrCreateSource(STATUS_BAR_INSET_SOURCE_ID, captionBar()).setVisible(true); + windowDecor.relayout(taskInfo); + + // Run it again so that insets are removed. + mInsetsState.getOrCreateSource(STATUS_BAR_INSET_SOURCE_ID, captionBar()).setVisible(false); + windowDecor.relayout(taskInfo); + + verify(mMockWindowContainerTransaction).removeInsetsSource(eq(taskInfo.token), any(), + eq(0) /* index */, eq(captionBar())); + verify(mMockWindowContainerTransaction).removeInsetsSource(eq(taskInfo.token), any(), + eq(0) /* index */, eq(mandatorySystemGestures())); } @Test @@ -778,14 +646,17 @@ public class WindowDecorationTests extends ShellTestCase { .setVisible(true) .setBounds(new Rect(0, 0, 1000, 1000)) .build(); - // Hidden from the beginning, so no insets were ever added. final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mIsCaptionVisible = false; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + + // Hidden from the beginning, so no insets were ever added. + mInsetsState.getOrCreateSource(STATUS_BAR_INSET_SOURCE_ID, captionBar()).setVisible(false); + windowDecor.relayout(taskInfo); // Never added. - verifyAddedInsets(0 /* times */, taskInfo.token, 0 /* index */, captionBar()); - verifyAddedInsets(0 /* times */, taskInfo.token, 0 /* index */, mandatorySystemGestures()); + verify(mMockWindowContainerTransaction, never()).addInsetsSource(eq(taskInfo.token), any(), + eq(0) /* index */, eq(captionBar()), any(), any()); + verify(mMockWindowContainerTransaction, never()).addInsetsSource(eq(taskInfo.token), any(), + eq(0) /* index */, eq(mandatorySystemGestures()), any(), any()); // No need to remove them if they were never added. verify(mMockWindowContainerTransaction, never()).removeInsetsSource(eq(taskInfo.token), any(), eq(0) /* index */, eq(captionBar())); @@ -793,55 +664,6 @@ public class WindowDecorationTests extends ShellTestCase { any(), eq(0) /* index */, eq(mandatorySystemGestures())); } - @Test - public void testRelayout_notAnInsetsSource_doesNotAddInsets() { - final Display defaultDisplay = mock(Display.class); - doReturn(defaultDisplay).when(mMockDisplayController) - .getDisplay(Display.DEFAULT_DISPLAY); - - final ActivityManager.RunningTaskInfo taskInfo = new TestRunningTaskInfoBuilder() - .setDisplayId(Display.DEFAULT_DISPLAY) - .setVisible(true) - .setBounds(new Rect(0, 0, 1000, 1000)) - .build(); - final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - - mRelayoutParams.mIsInsetSource = false; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); - - // Never added. - verifyAddedInsets(0 /* times */, taskInfo.token, 0 /* index */, captionBar()); - verifyAddedInsets(0 /* times */, taskInfo.token, 0 /* index */, mandatorySystemGestures()); - } - - @Test - public void testRelayout_notAnInsetsSource_hadInsetsBefore_removesInsets() { - final Display defaultDisplay = mock(Display.class); - doReturn(defaultDisplay).when(mMockDisplayController) - .getDisplay(Display.DEFAULT_DISPLAY); - - final ActivityManager.RunningTaskInfo taskInfo = new TestRunningTaskInfoBuilder() - .setDisplayId(Display.DEFAULT_DISPLAY) - .setVisible(true) - .setBounds(new Rect(0, 0, 1000, 1000)) - .build(); - final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - - mRelayoutParams.mIsCaptionVisible = true; - mRelayoutParams.mIsInsetSource = true; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); - - mRelayoutParams.mIsCaptionVisible = true; - mRelayoutParams.mIsInsetSource = false; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); - - // Insets should be removed. - verify(mMockWindowContainerTransaction).removeInsetsSource(eq(taskInfo.token), any(), - eq(0) /* index */, eq(captionBar())); - verify(mMockWindowContainerTransaction).removeInsetsSource(eq(taskInfo.token), any(), - eq(0) /* index */, eq(mandatorySystemGestures())); - } - @Test public void testClose_withExistingInsets_insetsRemoved() { final Display defaultDisplay = mock(Display.class); @@ -856,10 +678,12 @@ public class WindowDecorationTests extends ShellTestCase { final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); // Relayout will add insets. - mRelayoutParams.mIsCaptionVisible = true; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); - verifyAddedInsets(1 /* times */, taskInfo.token, 0 /* index */, captionBar()); - verifyAddedInsets(1 /* times */, taskInfo.token, 0 /* index */, mandatorySystemGestures()); + mInsetsState.getOrCreateSource(STATUS_BAR_INSET_SOURCE_ID, captionBar()).setVisible(true); + windowDecor.relayout(taskInfo); + verify(mMockWindowContainerTransaction).addInsetsSource(eq(taskInfo.token), any(), + eq(0) /* index */, eq(captionBar()), any(), any()); + verify(mMockWindowContainerTransaction).addInsetsSource(eq(taskInfo.token), any(), + eq(0) /* index */, eq(mandatorySystemGestures()), any(), any()); windowDecor.close(); @@ -892,42 +716,31 @@ public class WindowDecorationTests extends ShellTestCase { any(), eq(0) /* index */, eq(mandatorySystemGestures())); } - @Test - public void testClose_withTaskDragResizerSet_callResizerClose() { - final TestWindowDecoration windowDecor = createWindowDecoration( - new TestRunningTaskInfoBuilder().build()); - final TaskDragResizer taskDragResizer = mock(TaskDragResizer.class); - windowDecor.setTaskDragResizer(taskDragResizer); - - windowDecor.close(); - - verify(taskDragResizer).close(); - } - @Test public void testRelayout_captionFrameChanged_insetsReapplied() { final Display defaultDisplay = mock(Display.class); doReturn(defaultDisplay).when(mMockDisplayController) .getDisplay(Display.DEFAULT_DISPLAY); mInsetsState.getOrCreateSource(STATUS_BAR_INSET_SOURCE_ID, captionBar()).setVisible(true); - final WindowContainerToken token = new MockToken().token(); + final WindowContainerToken token = TestRunningTaskInfoBuilder.createMockWCToken(); final TestRunningTaskInfoBuilder builder = new TestRunningTaskInfoBuilder() .setDisplayId(Display.DEFAULT_DISPLAY) .setVisible(true); - mRelayoutParams.mIsCaptionVisible = true; // Relayout twice with different bounds. final ActivityManager.RunningTaskInfo firstTaskInfo = builder.setToken(token).setBounds(new Rect(0, 0, 1000, 1000)).build(); final TestWindowDecoration windowDecor = createWindowDecoration(firstTaskInfo); - windowDecor.relayout(firstTaskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(firstTaskInfo); final ActivityManager.RunningTaskInfo secondTaskInfo = builder.setToken(token).setBounds(new Rect(50, 50, 1000, 1000)).build(); - windowDecor.relayout(secondTaskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(secondTaskInfo); // Insets should be applied twice. - verifyAddedInsets(2 /* times */, token, 0 /* index */, captionBar()); - verifyAddedInsets(2 /* times */, token, 0 /* index */, mandatorySystemGestures()); + verify(mMockWindowContainerTransaction, times(2)).addInsetsSource(eq(token), any(), + eq(0) /* index */, eq(captionBar()), any(), any()); + verify(mMockWindowContainerTransaction, times(2)).addInsetsSource(eq(token), any(), + eq(0) /* index */, eq(mandatorySystemGestures()), any(), any()); } @Test @@ -936,96 +749,25 @@ public class WindowDecorationTests extends ShellTestCase { doReturn(defaultDisplay).when(mMockDisplayController) .getDisplay(Display.DEFAULT_DISPLAY); mInsetsState.getOrCreateSource(STATUS_BAR_INSET_SOURCE_ID, captionBar()).setVisible(true); - final WindowContainerToken token = new MockToken().token(); + final WindowContainerToken token = TestRunningTaskInfoBuilder.createMockWCToken(); final TestRunningTaskInfoBuilder builder = new TestRunningTaskInfoBuilder() .setDisplayId(Display.DEFAULT_DISPLAY) .setVisible(true); - mRelayoutParams.mIsCaptionVisible = true; // Relayout twice with the same bounds. final ActivityManager.RunningTaskInfo firstTaskInfo = builder.setToken(token).setBounds(new Rect(0, 0, 1000, 1000)).build(); final TestWindowDecoration windowDecor = createWindowDecoration(firstTaskInfo); - windowDecor.relayout(firstTaskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(firstTaskInfo); final ActivityManager.RunningTaskInfo secondTaskInfo = builder.setToken(token).setBounds(new Rect(0, 0, 1000, 1000)).build(); - windowDecor.relayout(secondTaskInfo, true /* hasGlobalFocus */); + windowDecor.relayout(secondTaskInfo); // Insets should only need to be applied once. - verifyAddedInsets(1 /* times */, token, 0 /* index */, captionBar()); - verifyAddedInsets(1 /* times */, token, 0 /* index */, mandatorySystemGestures()); - } - - @Test - public void testRelayout_captionInsetSourceFlags() { - final Display defaultDisplay = mock(Display.class); - doReturn(defaultDisplay).when(mMockDisplayController) - .getDisplay(Display.DEFAULT_DISPLAY); - final WindowContainerToken token = new MockToken().token(); - final TestRunningTaskInfoBuilder builder = new TestRunningTaskInfoBuilder() - .setDisplayId(Display.DEFAULT_DISPLAY) - .setVisible(true); - - final ActivityManager.RunningTaskInfo taskInfo = - builder.setToken(token).setBounds(new Rect(0, 0, 1000, 1000)).build(); - final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mIsCaptionVisible = true; - mRelayoutParams.mInsetSourceFlags = - FLAG_FORCE_CONSUMING | FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); - - // Caption inset source should add params' flags. - - verifyAddedInsets(1 /* times */, token, 0 /* index */, captionBar(), - FLAG_FORCE_CONSUMING | FLAG_FORCE_CONSUMING_OPAQUE_CAPTION_BAR); - } - - @Test - public void testRelayout_setAppBoundsIfNeeded() { - final Display defaultDisplay = mock(Display.class); - doReturn(defaultDisplay).when(mMockDisplayController).getDisplay(Display.DEFAULT_DISPLAY); - final WindowContainerToken token = new MockToken().token(); - final TestRunningTaskInfoBuilder builder = new TestRunningTaskInfoBuilder() - .setDisplayId(Display.DEFAULT_DISPLAY) - .setVisible(true); - - final ActivityManager.RunningTaskInfo taskInfo = - builder.setToken(token).setBounds(TASK_BOUNDS).build(); - final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mIsCaptionVisible = true; - mRelayoutParams.mShouldSetAppBounds = true; - - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); - final Rect appBounds = new Rect(TASK_BOUNDS); - appBounds.top += mRelayoutParams.mCaptionHeightCalculator.apply( - windowDecor.mDecorWindowContext, defaultDisplay); - verify(mMockWindowContainerTransaction).setAppBounds(eq(token), eq(appBounds)); - } - - @Test - public void testRelayout_setAppBoundsIfNeeded_reset() { - final Display defaultDisplay = mock(Display.class); - doReturn(defaultDisplay).when(mMockDisplayController).getDisplay(Display.DEFAULT_DISPLAY); - final WindowContainerToken token = new MockToken().token(); - final TestRunningTaskInfoBuilder builder = new TestRunningTaskInfoBuilder() - .setDisplayId(Display.DEFAULT_DISPLAY) - .setVisible(true); - - final ActivityManager.RunningTaskInfo taskInfo = - builder.setToken(token).setBounds(TASK_BOUNDS).build(); - final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - - mRelayoutParams.mIsCaptionVisible = true; - mRelayoutParams.mIsInsetSource = true; - mRelayoutParams.mShouldSetAppBounds = true; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); - - mRelayoutParams.mIsCaptionVisible = true; - mRelayoutParams.mIsInsetSource = false; - mRelayoutParams.mShouldSetAppBounds = false; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); - - verify(mMockWindowContainerTransaction).setAppBounds(eq(token), eq(new Rect())); + verify(mMockWindowContainerTransaction, times(1)).addInsetsSource(eq(token), any(), + eq(0) /* index */, eq(captionBar()), any(), any()); + verify(mMockWindowContainerTransaction, times(1)).addInsetsSource(eq(token), any(), + eq(0) /* index */, eq(mandatorySystemGestures()), any(), any()); } @Test @@ -1041,13 +783,14 @@ public class WindowDecorationTests extends ShellTestCase { .setVisible(true) .setWindowingMode(WINDOWING_MODE_FREEFORM) .build(); + taskInfo.isFocused = true; // Density is 2. Shadow radius is 10px. Caption height is 64px. taskInfo.configuration.densityDpi = DisplayMetrics.DENSITY_DEFAULT * 2; final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mSetTaskVisibilityPositionAndCrop = false; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + mRelayoutParams.mSetTaskPositionAndCrop = false; + windowDecor.relayout(taskInfo); verify(mMockSurfaceControlStartT, never()).setWindowCrop( eq(mMockTaskSurface), anyInt(), anyInt()); @@ -1070,12 +813,13 @@ public class WindowDecorationTests extends ShellTestCase { .setVisible(true) .setWindowingMode(WINDOWING_MODE_FREEFORM) .build(); + taskInfo.isFocused = true; // Density is 2. Shadow radius is 10px. Caption height is 64px. taskInfo.configuration.densityDpi = DisplayMetrics.DENSITY_DEFAULT * 2; final TestWindowDecoration windowDecor = createWindowDecoration(taskInfo); - mRelayoutParams.mSetTaskVisibilityPositionAndCrop = true; - windowDecor.relayout(taskInfo, true /* hasGlobalFocus */); + mRelayoutParams.mSetTaskPositionAndCrop = true; + windowDecor.relayout(taskInfo); verify(mMockSurfaceControlStartT).setWindowCrop( eq(mMockTaskSurface), anyInt(), anyInt()); @@ -1086,154 +830,45 @@ public class WindowDecorationTests extends ShellTestCase { } @Test - public void relayout_applyTransactionOnDrawIsTrue_updatesViewWithDrawTransaction() { + public void updateViewHost_applyTransactionOnDrawIsTrue_surfaceControlIsUpdated() { final TestWindowDecoration windowDecor = createWindowDecoration( - new TestRunningTaskInfoBuilder() - .setVisible(true) - .setWindowingMode(WINDOWING_MODE_FREEFORM) - .build()); + new TestRunningTaskInfoBuilder().build()); mRelayoutParams.mApplyStartTransactionOnDraw = true; - mRelayoutResult.mRootView = mMockView; - windowDecor.relayout( - windowDecor.mTaskInfo, - /* hasGlobalFocus= */ true, - Region.obtain()); + windowDecor.updateViewHost(mRelayoutParams, mMockSurfaceControlStartT, mRelayoutResult); - verify(mMockWindowDecorViewHost) - .updateView( - eq(mRelayoutResult.mRootView), - any(), - eq(windowDecor.mTaskInfo.configuration), - any(), - eq(mMockSurfaceControlStartT)); - windowDecor.close(); + verify(mMockRootSurfaceControl).applyTransactionOnDraw(mMockSurfaceControlStartT); } @Test - public void relayout_applyTransactionOnDrawIsTrue_asyncViewHostRendering_throwsException() { + public void updateViewHost_nullDrawTransaction_applyTransactionOnDrawIsTrue_throwsException() { final TestWindowDecoration windowDecor = createWindowDecoration( - new TestRunningTaskInfoBuilder() - .setVisible(true) - .setWindowingMode(WINDOWING_MODE_FULLSCREEN) - .build()); + new TestRunningTaskInfoBuilder().build()); mRelayoutParams.mApplyStartTransactionOnDraw = true; - mRelayoutParams.mAsyncViewHost = true; - mRelayoutResult.mRootView = mMockView; assertThrows(IllegalArgumentException.class, - () -> windowDecor.relayout( - windowDecor.mTaskInfo, - /* hasGlobalFocus= */ true, - Region.obtain())); - windowDecor.close(); + () -> windowDecor.updateViewHost( + mRelayoutParams, null /* onDrawTransaction */, mRelayoutResult)); } @Test - public void relayout_asyncViewHostRendering() { + public void updateViewHost_nullDrawTransaction_applyTransactionOnDrawIsFalse_doesNotThrow() { final TestWindowDecoration windowDecor = createWindowDecoration( - new TestRunningTaskInfoBuilder() - .setVisible(true) - .setWindowingMode(WINDOWING_MODE_FULLSCREEN) - .build()); + new TestRunningTaskInfoBuilder().build()); mRelayoutParams.mApplyStartTransactionOnDraw = false; - mRelayoutParams.mAsyncViewHost = true; - mRelayoutResult.mRootView = mMockView; - windowDecor.relayout( - windowDecor.mTaskInfo, - /* hasGlobalFocus= */ true, - Region.obtain()); - - verify(mMockWindowDecorViewHost) - .updateViewAsync(eq(mRelayoutResult.mRootView), any(), - eq(windowDecor.mTaskInfo.configuration), any()); - windowDecor.close(); - } - - @Test - public void onStatusBarVisibilityChange() { - final ActivityManager.RunningTaskInfo task = createTaskInfo(); - task.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - when(mMockDisplayController.getInsetsState(task.displayId)) - .thenReturn(createInsetsState(statusBars(), true /* visible */)); - final TestWindowDecoration decor = spy(createWindowDecoration(task)); - decor.relayout(task, true /* hasGlobalFocus */); - assertTrue(decor.mIsStatusBarVisible); - - decor.onInsetsStateChanged(createInsetsState(statusBars(), false /* visible */)); - - verify(decor, times(2)).relayout(any(), any(), any(), any(), any(), any()); - } - - @Test - public void onStatusBarVisibilityChange_noChange_doesNotRelayout() { - final ActivityManager.RunningTaskInfo task = createTaskInfo(); - task.configuration.windowConfiguration.setWindowingMode(WINDOWING_MODE_FULLSCREEN); - when(mMockDisplayController.getInsetsState(task.displayId)) - .thenReturn(createInsetsState(statusBars(), true /* visible */)); - final TestWindowDecoration decor = spy(createWindowDecoration(task)); - decor.relayout(task, true /* hasGlobalFocus */); - - decor.onInsetsStateChanged(createInsetsState(statusBars(), true /* visible */)); - - verify(decor, times(1)).relayout(any(), any(), any(), any(), any(), any()); - } - - @Test - public void onKeyguardStateChange() { - final ActivityManager.RunningTaskInfo task = createTaskInfo(); - when(mMockDisplayController.getInsetsState(task.displayId)) - .thenReturn(createInsetsState(statusBars(), true /* visible */)); - final TestWindowDecoration decor = spy(createWindowDecoration(task)); - decor.relayout(task, true /* hasGlobalFocus */); - assertFalse(decor.mIsKeyguardVisibleAndOccluded); - - decor.onKeyguardStateChanged(true /* visible */, true /* occluding */); - - assertTrue(decor.mIsKeyguardVisibleAndOccluded); - verify(decor, times(2)).relayout(any(), any(), any(), any(), any(), any()); - } - - @Test - public void onKeyguardStateChange_noChange_doesNotRelayout() { - final ActivityManager.RunningTaskInfo task = createTaskInfo(); - when(mMockDisplayController.getInsetsState(task.displayId)) - .thenReturn(createInsetsState(statusBars(), true /* visible */)); - final TestWindowDecoration decor = spy(createWindowDecoration(task)); - decor.relayout(task, true /* hasGlobalFocus */); - assertFalse(decor.mIsKeyguardVisibleAndOccluded); - - decor.onKeyguardStateChanged(false /* visible */, true /* occluding */); - - verify(decor, times(1)).relayout(any(), any(), any(), any(), any(), any()); - } - - private ActivityManager.RunningTaskInfo createTaskInfo() { - final ActivityManager.RunningTaskInfo taskInfo = new TestRunningTaskInfoBuilder() - .setVisible(true) - .build(); - return taskInfo; - } - - private InsetsState createInsetsState(@WindowInsets.Type.InsetsType int type, boolean visible) { - final InsetsState state = new InsetsState(); - final InsetsSource source = new InsetsSource(0, type); - source.setVisible(visible); - state.addSource(source); - return state; + windowDecor.updateViewHost(mRelayoutParams, null /* onDrawTransaction */, mRelayoutResult); } private TestWindowDecoration createWindowDecoration(ActivityManager.RunningTaskInfo taskInfo) { - return new TestWindowDecoration(mContext, mContext, mMockDisplayController, - mMockShellTaskOrganizer, taskInfo, mMockTaskSurface, + return new TestWindowDecoration(mContext, mMockDisplayController, mMockShellTaskOrganizer, + taskInfo, mMockTaskSurface, new MockObjectSupplier<>(mMockSurfaceControlBuilders, () -> createMockSurfaceControlBuilder(mock(SurfaceControl.class))), new MockObjectSupplier<>(mMockSurfaceControlTransactions, () -> mock(SurfaceControl.Transaction.class)), () -> mMockWindowContainerTransaction, () -> mMockTaskSurface, - mMockSurfaceControlViewHostFactory, mMockWindowDecorViewHostSupplier, - mDesktopModeEventLogger); + mMockSurfaceControlViewHostFactory); } private class MockObjectSupplier<T> implements Supplier<T> { @@ -1255,84 +890,33 @@ public class WindowDecorationTests extends ShellTestCase { } } - private void verifyAddedInsets(int times, WindowContainerToken token, int index, int type) { - if (com.android.window.flags.Flags.relativeInsets()) { - verify(mMockWindowContainerTransaction, times(times)).addInsetsSource(eq(token), any(), - eq(index), eq(type), any(Insets.class), any(), anyInt()); - } else { - verify(mMockWindowContainerTransaction, times(times)).addInsetsSource(eq(token), any(), - eq(index), eq(type), any(Rect.class), any(), anyInt()); - } - } - - private void verifyAddedInsets(int times, WindowContainerToken token, int index, int type, - int flags) { - if (com.android.window.flags.Flags.relativeInsets()) { - verify(mMockWindowContainerTransaction, times(times)).addInsetsSource(eq(token), any(), - eq(index), eq(type), any(Insets.class), any(), eq(flags)); - } else { - verify(mMockWindowContainerTransaction, times(times)).addInsetsSource(eq(token), any(), - eq(index), eq(type), any(Rect.class), any(), eq(flags)); - } - } - - private void verifyAddedInsets(int times, WindowContainerToken token, int index, int type, - Rect attachedRect) { - if (com.android.window.flags.Flags.relativeInsets()) { - verify(mMockWindowContainerTransaction, times(times)).addInsetsSource(eq(token), any(), - eq(index), eq(type), eq(Insets.of(0, attachedRect.height(), 0, 0)), any(), - anyInt()); - } else { - verify(mMockWindowContainerTransaction, times(times)).addInsetsSource(eq(token), any(), - eq(index), eq(type), eq(attachedRect), any(), anyInt()); - } - } - private static class TestView extends View implements TaskFocusStateConsumer { private TestView(Context context) { super(context); } @Override - public void setTaskFocusState(boolean focused) { - } + public void setTaskFocusState(boolean focused) {} } private class TestWindowDecoration extends WindowDecoration<TestView> { - TestWindowDecoration(Context context, @NonNull Context userContext, - DisplayController displayController, - ShellTaskOrganizer taskOrganizer, - ActivityManager.RunningTaskInfo taskInfo, + TestWindowDecoration(Context context, DisplayController displayController, + ShellTaskOrganizer taskOrganizer, ActivityManager.RunningTaskInfo taskInfo, SurfaceControl taskSurface, Supplier<SurfaceControl.Builder> surfaceControlBuilderSupplier, Supplier<SurfaceControl.Transaction> surfaceControlTransactionSupplier, Supplier<WindowContainerTransaction> windowContainerTransactionSupplier, Supplier<SurfaceControl> surfaceControlSupplier, - SurfaceControlViewHostFactory surfaceControlViewHostFactory, - @NonNull WindowDecorViewHostSupplier<WindowDecorViewHost> - windowDecorViewHostSupplier, - DesktopModeEventLogger desktopModeEventLogger) { - super(context, mTestHandler, mTransitions, userContext, displayController, - taskOrganizer, taskInfo, taskSurface, surfaceControlBuilderSupplier, - surfaceControlTransactionSupplier, windowContainerTransactionSupplier, - surfaceControlSupplier, surfaceControlViewHostFactory, - windowDecorViewHostSupplier, desktopModeEventLogger); - } - - void relayout(ActivityManager.RunningTaskInfo taskInfo, boolean hasGlobalFocus) { - relayout(taskInfo, false /* applyStartTransactionOnDraw */, hasGlobalFocus, - Region.obtain()); + SurfaceControlViewHostFactory surfaceControlViewHostFactory) { + super(context, displayController, taskOrganizer, taskInfo, taskSurface, + surfaceControlBuilderSupplier, surfaceControlTransactionSupplier, + windowContainerTransactionSupplier, surfaceControlSupplier, + surfaceControlViewHostFactory); } @Override - void relayout(ActivityManager.RunningTaskInfo taskInfo, boolean hasGlobalFocus, - @NonNull Region displayExclusionRegion) { - mRelayoutParams.mRunningTaskInfo = taskInfo; - mRelayoutParams.mHasGlobalFocus = hasGlobalFocus; - mRelayoutParams.mDisplayExclusionRegion.set(displayExclusionRegion); - mRelayoutParams.mLayoutResId = R.layout.caption_layout; - relayout(mRelayoutParams, mMockSurfaceControlStartT, mMockSurfaceControlFinishT, - mMockWindowContainerTransaction, mMockView, mRelayoutResult); + void relayout(ActivityManager.RunningTaskInfo taskInfo) { + relayout(taskInfo, false /* applyStartTransactionOnDraw */); } @Override @@ -1340,31 +924,18 @@ public class WindowDecorationTests extends ShellTestCase { return null; } - @Override - int getCaptionViewId() { - return R.id.caption; - } - - @Override - TestView inflateLayout(Context context, int layoutResId) { - if (layoutResId == R.layout.caption_layout) { - return mMockView; - } - return super.inflateLayout(context, layoutResId); - } - void relayout(ActivityManager.RunningTaskInfo taskInfo, - boolean applyStartTransactionOnDraw, boolean hasGlobalFocus, - @NonNull Region displayExclusionRegion) { + boolean applyStartTransactionOnDraw) { + mRelayoutParams.mRunningTaskInfo = taskInfo; mRelayoutParams.mApplyStartTransactionOnDraw = applyStartTransactionOnDraw; - relayout(taskInfo, hasGlobalFocus, displayExclusionRegion); + relayout(mRelayoutParams, mMockSurfaceControlStartT, mMockSurfaceControlFinishT, + mMockWindowContainerTransaction, mMockView, mRelayoutResult); } - private AdditionalViewContainer addTestViewContainer(Display display) { + private AdditionalViewContainer addTestViewContainer() { final Resources resources = mDecorWindowContext.getResources(); final int width = loadDimensionPixelSize(resources, mCaptionMenuWidthId); - final int height = mRelayoutParams.mCaptionHeightCalculator.apply(mDecorWindowContext, - display); + final int height = loadDimensionPixelSize(resources, mRelayoutParams.mCaptionHeightId); final String name = "Test Window"; final AdditionalViewContainer additionalViewContainer = addWindow(R.layout.desktop_mode_window_decor_handle_menu, name, diff --git a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/additionalviewcontainer/AdditionalSystemViewContainerTest.kt b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/additionalviewcontainer/AdditionalSystemViewContainerTest.kt index 0f52ed7f1c..d3e996b12e 100644 --- a/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/additionalviewcontainer/AdditionalSystemViewContainerTest.kt +++ b/wmshell/tests/unittest/src/com/android/wm/shell/windowdecor/additionalviewcontainer/AdditionalSystemViewContainerTest.kt @@ -25,12 +25,11 @@ import android.view.WindowManager import androidx.test.filters.SmallTest import com.android.wm.shell.R import com.android.wm.shell.ShellTestCase -import com.android.wm.shell.windowdecor.WindowManagerWrapper import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import org.mockito.Mock -import org.mockito.kotlin.argThat +import org.mockito.kotlin.any import org.mockito.kotlin.eq import org.mockito.kotlin.verify import org.mockito.kotlin.whenever @@ -67,25 +66,16 @@ class AdditionalSystemViewContainerTest : ShellTestCase() { @Test fun testReleaseView_ViewRemoved() { - val flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE or - WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH viewContainer = AdditionalSystemViewContainer( mockContext, - WindowManagerWrapper(mockWindowManager), + R.layout.desktop_mode_window_decor_handle_menu, TASK_ID, X, Y, WIDTH, - HEIGHT, - flags, - R.layout.desktop_mode_window_decor_handle_menu - ) - verify(mockWindowManager).addView( - eq(mockView), - argThat { - lp -> (lp as WindowManager.LayoutParams).flags == flags - } + HEIGHT ) + verify(mockWindowManager).addView(eq(mockView), any()) viewContainer.releaseView() verify(mockWindowManager).removeViewImmediate(mockView) }

    rWYpLICd*4o$1j}&D(;3Es9ec=6hG9 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

    24dTRW^dkxR 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%0ATWV6NC0}AgGwF z++I>?AmPZgPql8g;t9Z=G}smVMSa=X3P-X{Z#lik*r&h(1KidV`#@-KK$NDEp42_g z7^vM0s9YT6mt&Kz$Oftf+*>nC*lDQwUogubWxo39!pk$$1!|!j1Y+1<(kzjM97KS8Oz26#Cmhb6+o>s<+ zY~DP3KDyo_KN-oVwEjlS??Xldzf&C^wA->hay`Q4MHS_qdYAVcIx=Rv!{>RZ-HbWom@ITv)Vvp5>|I^3pNGMMO1 zxu~=-52u{MK^`Q71(wO20sZ^Ee$uvjt}&v@`kL+Gvi6qLEZaOlCUOXt8|S4Xvc9;*9hcZjcJti-?^PFCpb1qzaU zBr8@_zlb3@`b_fMr#=e&IP!{t^X48ezz*KWc$ZdU(DDss@Cdc>`lLBt>>?sv8u|b< ze1kq*!Vw4U%7;9e`vUsd(uCf>y0GlR(E&k-N>}9B*8(+tCk=#V;&h|~5l@t?BZF;d za&vK`?2r-}lnVy>wx|GmApnyb#l1N~kbZ)96CBfSdERDs;mW*{G!)e=+zwjU3C85} zuewA+Ze&gndK#n9))T?;y^84s#tXHX#J_&TEo77B`8-Oo$M0|rPk3d`y{7={+%Q=N z<6McV(pM4L%d3qN*4je~Kx*EkTJ@NX#bd!qg^WFd!{ zNFt-P*JMe!eVGljKJa(fOy>N$NUTt<+-R3HcrI|Eu5FcnOLMUnyJO`po_rpL{PcdiSqgUz~m-v>rvQ z&*25&cx9QJRIvNu1qZroeYa=3ngDG;5*r1C7(_P%2rCK@AsVu%vLF@$>!vaK<*T~H z8V1)?IQDK%Pt>3=BH!Z-aGTUAzp75{LU8hDDT#c(;E<@WmyJDOS+gMqa-S=(&lPjz zaxPkL4zhEg`~rLaWSIJ1?2$_x|sXvPIYTrGVgNhKl=!ZTvSGYd$?Wtu`2PE-23T6#0 zcNMnj+cURr+sD)^g1vhE^D8wK~7DXwHbZCeUvnvy9(g2V&!MK*P&y+;0ifi1d2PZ!m zp{%=N4#y4Ekrc;2*Bh+%FY^H29QCO+w1VmP4}!DGmyWJbeOKJ;yoX2x3o!68k`XL^ z`Y-L~R1CMq7MIkLx7E6dFU9ab$^>?*Q`qi8&o*(VWu}d{HXWuJCSFA-K^pTLT0y*C^b0O*ZHdl?Q4UK?loz-qDqeN z@uRVy6cJ=KVaudrkv!Y_zVBFq7{750%acj)V3gn`;UEKW;UOp=Bx_-`=c9Mo6|3x& zq95S&qZ~SrtwIQ?5=OerA|EHIbKVL5;oLGS{+@hu)ZJu#vheCMt#e4#4w$g>QNTWr zj&#v5+CTJRch}j5#3gETbQ((L9eEeh*v*UIylApdfmAFo{F4y>aU;_d?W&s;BqjuYXjNLl%@;97 z1@FsxWi{`*DJhy_jYLQ!9D82oA5SLI>x zRzn{ZUw&8!o5o)4Ai5*Vb3N^>Ey66^Q&t@o`ILrIKmZSJ8B{ zqBf4#Y;j*?S#ZT^*oD?_*<#@s3yL6Ol!xG~QwgtT8`q9ldx@xX@@F&HKo=p7pk^0~uXI zj#8>OL6x+Z?=>9VJIIQYi<{QmO5cvQDtn$tCV!xwMA7Oe&&gwN8-!PLc94SJ_z$;q zlZg_IrQuC%DoVRf9uAsQ*LiDM8B=u@0ESAWM9rr7bVrDZ&rL?5ubk0E_H|Wg^{-@{ z+#Ow>gTJZA782}UjbKvxI@-AYV*EhQo?Jkfdiw-wxV~HQlJLxC*;c#mW3cZG6rq1L zLq1_-?+;6=rEN=SAWgi>xIT}rzEI)Ux1A8|uXKa4ICmLc;-=Lr$5viSY~m+k%$@&g zi2MU`2^N3ln8G=YuHN7rTrx1E|+dH zEb5O78LVwh-)4~!TTq(6*Hip>^63l4??rafD`jLfP#S2m_LPwTGcPA9sR=p~uTLiI zF|959s|zqP`T{O=HLMCWFRip>Zo4*cKJk>n>H@=zO7C6M>Ed^ETGLWJ|tHFl{?s&tKOmEDn{=(}8 z#-9uQmOuOX-am9Be07J(L-WYt19l;QZIkNl5rBLBLko6vLKsoFX1RUg-9Z!tZXzuF zxsu~{-r;DG>Rin~LAV8{Xwg;`lHm6fvzLo$eWrR=13oA6blj9U-W?Yh99&sqH>07= zVHk68bY>PuRTG!VBk(U@$#H%>u2d8o5Z+mCWP>)scAiL{H!! zzUo^RTN1eC+wBzL>}y^F-)*%p)U1@Rcj7&T{CPl|PI?fMpjyi{lz@k#ni>{98Z6bn z2P^XRDwK8ls|_t6xKf^gWx-~1_E69Nxxnk=iC+7a&_a@2v-wk9kjQYkvB62zj9d=I zyc%Jf3Y+WPD2eK=E^0ED3Z*RofS%07OhEZD0SjDd>Z2JOZO@e!lBZ6%WZ0Fv65kP$ z#PcG@{Mt4WF^XuDsu5qGe{K_FCe&oN;-;nTc&eC{G`9l$y%^RmEwu=hn&~8}i{F54kK3QOJ zyXCYK?3pyGkP^~5^Qt|nxP?Ea+$GWcoIR8ivv%^!J4n2=;3A%-Iud}U3;_) zncx^1yW$dj79hKx^ji5(Y5V`S=pjcF^F@d-FzwKyL=+O}7nM(nV2=Nzkv65yx)RCY zjEc>=JB_Xhx&ScJ%n+R1j4K%QN)*S^zJJlKh|C2ptO_+lYitLm2rBvhl`6^rFo*@N z%*aFeKR;mu*Y6j|VfXhhtaqk*9$$lYHnPb6Jv|8RI@eyRn^&vySmb281=>KRtg&nt ztxhlh7DB7Np1|#7k=%rNP>M>HL+|BWA_`MH8bBPnyNXy^GFZuu z{j!+gR?)C&p3ji=Lxd4g1H*4-HopRwvd4=O2<02w>pYkhN!Xwq+dVVsFm)6e8>6PZ z`cmK=-}1<~%EaknZF67|Q_tg{wIl6M4=nAug9uK~Jiz56A6MA?e5E?chBRv6Xyv@G z?qsD8S*3kh#H*!{)>@^9eGe;N^)oWg{xreqHUaWEHVGc@v${a@l7tYOarXNlwUEXM zP4kbW1AZ`H=lOfOib;*S86rkZ0?{lE+U)MeN{75#g!^jO|-+HU`(FwLwSSrFcG)KDvX1c$*?o0p5 z5*Z9`KAZ#KifR@v&l``;4L8=V^XVUDJ)OaOzi$(ztkZGw8yqCzGn}4 zPhyYCwh2W{Z2r(z@I|w}*xPaFN)N$eh6I_~QA)ICR5qeOP^ zArCbj4~j6I|4C7|V0jj1T55)N91W{pieSv-W7viG8yY@U0B6``>i7cs|1YGt2@*50 z%lmqlf2zbj36wn_$Tb9eH&zMiy?ze$Q0NjFU3EQb9F4PqJ8&klL22rQ&z%j_vhc<@Dt zXuf|1O-!X#XlIo&`eCh^)2pyGbl`VToh-92?-ikTC#ItY8jiG(xq#}hN?uGOZ!|}1 zofGs%Y-tqFYU8j(Zq~CKs^rttORtfp{zhr`9D8+(aY1;?md z1&qe*Zcs0PnXaSTMydak>5Y5mOXIDOy?P6`>YVXk-V3{UWY0~a9YeB@0{4O#tw$9! z^q2G}WQHdQ%Pf}K3yGy*Pms-n@`gc~G7JuItqw8TsnPTAN=yU;9^i>68bJS{`4~z1 z_7BIqS>5t@8xHmj26gRh7c{&pz}1g>91eX!e~=3S4&3qkBu{)a8+XV6Wn|e-Mu`*k_PS zWlYAkF7>tjFmS5Dppdt1dKmT*c|1@OrCC1ui;qIl|gYuOSegI4ek)!-Ccvb zyAufRE(Z$)cXxMpcXwxScemg??)UEd>is%Xb*iRn&+P8K*6QB9t_1Kk!4B>H?5=-z zqSFPcB$d@xe44dlIy^m#xOB@TjZ}h^I-}QPBf|o5cbx`wH#Yz68Q1Y`uqB)5UdRJm zD2DcdG@*Yxhlvl2T4oy;Q`;6+9Ngl*(!iE5s=h791Q4)MR&ID^HS{ zuedh|P2TBED{iA#L!nLmMl}5mlz2XaPc9m#}G)s^#TuX$_+Soiy7% z7x6ZBK4Hn6PxcSB#k677%7j1$tPTg3v#P<kf-9`j+fmG$>9wHoyKq<+4V7Uf;jZarI|>29XcTTkNgZ_t4)Ga6~i0W98vYeVgRTcVWrqj33 zJH&B?p8mJKq135?Se>HwJl@&@=jaN7TEkoMO>cGdVS;vZlzi``K~5y3(X@gns^wo} zz7yJas6r>+X6_Jhtr#3@t8WrNHMJE3s}Tr!ELdLAuc=(3pK1PIh6fFcz-@m55RN2d zkQP@GqqYG(z(V?8&`}=0Zu1||0hsMxTH(i`;Y#H|=v3<-v4dBJQ)?2T!8H;3jo;7n zNI{)Xc3&(bySAe!A^F1*_znsB4+;KWVzT~;#PKkZ{xrqab<4E-c3!3L13~UJO=?gi zN0u)on@q2RLxpQL*{}Gnd*R&5I@9F7Cz}i0QnFLq7tPFjWN4lX%<83(3b-sxKNXQPgdbZ;&)bJVPHk1n-8&X>;?MKwj%?>dvu z^Rq5KLVf;1oVK&3RdN)25D$NXwM%X1ZoRj+T|5XlS|-DsTZ#DeP~;kg(N~Vu2M2+R zvzXeGdL)}k_W6VvvzdZ9d!|ZUqAEM(=0+vSO`e38mKn3&p8alNyvrM$rjs>9_Y96e z+>ZzhMCMNiQTm-i^HSryc8t~ln(Dq5MqDei>bE=;buO10j0e-flcBM@kjYLJc@(;{ zsWo9T$AlCkfJiNL6`g-w4d$({W*TtMe^bT;Dwz{3s_Jxp^YDP$k5F;pnldAHH|0C5 z@^k22ru6sGJB3f-n#M7njg_684nIQM|21e)8D93&qa@*awpOz5b?kg^j-#uXb}M)M z2pQ`@lB-w%+2`Kq9IlaPf0Zaw_R{nHvb-<*?YSGwU&%b;;{9*9Pwu~%NptKUIe7EQiS#+5LsVCl6X47gnzTMs}#o*yBDmda5>%ybnzXIdwskt zZGPj?(KU$lm!9d%A=SC0$P*k0V1VE1SxX-BVNk*qA*!nI#XL7V@+hVt<3vRn zpV?G@6x-78yVG6^7>-Eo%XKJhVyd+%hx93IelM@l9XyO53mu}i^as@OO9_>(8JBsQ z%U;ANbrFHxX&q$P29K(7?hjY@!Cg)Ez?C@%m@yIShe1;cMDfu;N!s+1g%5BgWk50=Rlr4URi(yoc{RV=C`|!f5{J}{{nYx zn5TOkIKuBMu8#zZn&gqxTP5{H`4WO$_?R%xw^6w3a;h3v`~l@Oo{=q)gwhyx?uo!Z zZ+2KTEOHGB5<@lB$uenk>?-@8o({Cpb%HG_5^p_O7^;H7U=R0RzLb}!WD2Y`A zZvf>;ubW%%;Veew#9kBM#&+md)I48@Yw?@}Uou{wQH8N3GazktAZA3TM-l1Vid#ZE zmooMud@FF5z4fu)kKy z7*uZ_O21(5GH!4mcbu?Ye$Ky+#*E^!B*DBHKIPnc9d5rx&AeslyoEzQToRXHry#ve zKVZ`ncO%gsu~pHbMssHwatmwnBTi}_Z)@2{x%`TY=79fVB|C^ueU^yv{%HjEf%u^y z4Fx@r=;ihL86C4pOvH%zNmruC|3%(<+6JV6t}U7>)@NGgDO$BDa?&>6m)$FfcfsT) zgy?~&Pi)$0MC!rm;A!(*A>if`EE?K!GMMcfqcw^uZUxLyhPX3y zB+5VSD6}&V**vIf2FXgYH!IStZqm10yycH9$fV%WVMKyJ6qEu=@+xRFZ5Zp8ytA?t zM_m@>_Dc}nb1XC)j$9`3OhV>$n129+($2JD3o`H*k--$C@JjO~$CqxZBF9M4C@v(2 zXc7O~5t}2`2K2UH=b7ZkVu(*GB9VdZheUa&)SlLkouGNmgU!w#4&l50IWldnBk7IY z=<|iHWRA7}>a%y6b5d~|QW8+UQizay%NT33FIaY3KjSDGh0ciT{)K9*joBY=oam-;({*)HO<%FJ-Cz&B$E9I{=Y~S8 z%zDFnQlVjD`w)CJ(>-6y+;Lv{-~K#ByNafvgc{7R{$}1G828M$n{RUtk##pah?;eL znsquR@I3`OK8*dG&|O48YinojmMqgY+uOm2J|po8Ud7*}@b>L2LH~9cMLk2oMar?V z@G(m+v*qLI{q}f(#0%p`ZB^RIcik699`loyk002@^;|XUFox}@z5M#6?b%fmB^<=m z@q#{5iu8A)O!T&n3LD$e?PK+?;Vcdza5o!~j0df~L0laIB;hFDU;v}mPrNOM ze^ym{b61K!8x4B*)OK`LviA5`d4k<&KTs8ft|ULU^#8YJLG!5NRPl+m(&H4XKT8&k zQU49;Dd%^mOxQaZ{h1lY)*vmtUB@cdxKDB;xIkiH7@)+X^!eWGSjiQYxSBZ#rSh(^a zS=4`whmzFu;~Ivs7VMrC+J>C1GnlC{_H?CJZ=8G9pG)FPF|ZA)1!v5l^`})?Mop3;A* zY&8M->!AfTFN$a2Eu+tCt^wgpdIr6Rym9^u%I2T1m-2O;E1XgU^PLO53gd{)R@lrf zV%+mxe;kRo4r5_@(~~8JgMwHk9a?4-7B|A`?b$&*r;aH!{yh&}HoUwUHSuk5v-cFw z3q+$jbXS>EFDl@hA6Wz7yD`TZ+7)CIm4F3oBK18#N#%p|!$sAkHO1>KKO8OWO-zaS zA`JP<*n~A)XGwZwR*6O>23vwber3c8@9)cEH|dK&DMqa*9Okve8o5r_*p|I~7#~i2 zUk-xf((L*i9U6;`xEd>(A|o2gWMfqDUGEO$#|Q#5h@?%6PJ_qJxQGsfmd#_kXJ8d< z*Gan~O~m?Mt~fCwB;ARdSXLG8=?|gzRwnAoKeH?S;UgR=y4eq-_w$FL zsNwA{BeHh_#N)AsUyurvZoYk~H36`8z?gNwY@&(4&<-&(Ne+ObE3{#xFYe%O5S3s) zD9U>x{NMN?dA}B*5OW=wDA#Nb$3iR~WD#N9iih(a>YxbhW>DyGMozwsP8(hPjiEq` z8=o2Z&ceX88iIkLe`S+cL}la8oRICw-^n2}fJ<~Grg<}Izl1A)Z5nmzas|X5L1yI- zTY8O}nKY*m##QW1)y*HDJ7&Yen<1@9$((r6S1%t+xSplRcGs@knCdBU3wihG6b3uR zWx*n$bvDBMM02BLzQlSK;{C<4o*eMx zr}*ikY>_c~))}7Ly^-M+9g@f^;Uj%XdHW42$hO3G1R-r!OSEyon?#{l|COrRwz*79 zmw}HhI2LLim6LTX-Z+K2qMeu{3edNmvM{@m41Ue4`4^$uGw>>QMTKpHdk7J!76v}~ zWId@DQ9ST{v_xetqTb7IGZgOr zHsC?CjE8d(>#cxI*W~@6l0qT7o3kxhI~*=bfZG|X$Bw}AO9;?3>DUM*7dQM=5S^E_ zcl>_vCn#zk*Zs`odfOg;w@@mea--)#KLwx`{kCcL2essS8z;Mb+D7;Ofq*$-vHH>= z{HQvn)vjWa>UCwC{B%z?bNh4py72TirqDNKd4c&=`zwbkr&+a0j+L;y_u}VK?UePn z1!~!MC2!}64LO{eKNHLCQ*QF2VvGVcW+iFry8LC51tP19lR}rm+yzx^b)F zK5D7p7Pj2!n}2Q~*tz#!8Gykj=1z=eABICcgR%jc#*zZZJ@C>p27eSn1;NL2G>An- z;bxps<+X0pepr6rZVcaA-)ZFf(H_xzfr^lTZ~5NKg4-^DUby+IstZcfkBu> zJ6MBH`44n-bj2ia#+nTgnc-Z2 z&2I3ze|4+77r$LiGg4x&YGk}5+poYLQ{t1={+>!lhjnltAIBX&HGHxnuBSWfZVa`P zD+Rc1acD*nxAmnwmE!T=DFqM9+yv;%-p0xlj*aHzqLom`l@3;DZPqTrz(He0g7N;S zkyB=!c?JyPyx~lpH_4Ek#R35=+g3SAh4DZT<8IJwBLPaLOJQu=OgHTb5f1VJ5_01d z9{wROfrWFr+|3yb8Kjj~m(q#=6GuVp1#(Vf>!LNG7|TzT?GNUiYn5)8upoV$#y)(* zre`^VYr~n<3B-99)3JVO0GU3?-kxbPa5u|pO0DSbbg>n@tAd4`l}G8?hv}rooyda= z^?;|9;ii(Y){EczdH)VN@A!+3l^Hwq2tixUWF{Pm*x9m1umAfgI820yZZf|>4B6#q z7ZO1`inu>x+tlLu?^EcRN+qk6mg>awz`mAnq6=g-`g)JRg4?9;z}OWdoNsJCZ_XFq zFOJRMzQcWC-&V~Se17|veIEtAsg_#y#c2M^2hFz++>>{h%CCO~3viZdptm4>eSJy4 zZkyga=evQG}7L9IC&!rixeLDctE0)wd?H3gOk4dVEdE&BWAG_Y_C6cHf*us*MV=L z5DK)}8ecv?;ES#&mW$K!Xkl49wY{X@dLOnOrh5uJUVit1);V0&L?NBiU>}lzxt#YG z>$wI_4YwBIW^D3R^Nuk#B4AhURaA=GA~CHnMmyDVs_trMBTq#Ox|c?m4jABh<^MQ( zLN+B7H8y<%n)clE7E1V#lsv{F4(MSRD)3;`>;vIJtR(Dt%e^ffe?7jpG5#HZtGqlZ z6L#=1T>s5z>gaDzv{1}iw%Amhy zD$5i-MNhyN{o(k?GUzSot}3=0swfF{si(H)dM_-6J3LT-xRk8=HDe_d`F%D0m)dYc zWA>6TXN|)q$R1Yq+~bd`SsQ0>UAi=jnPX-YEX8hB=5EuYEl$oHPvnwH6MNvu(@ifh z${)5vc}ttGS+BX{Z`b}^NWzAr!Op#N=vM8%v-Ei9odfPgANxA1j>=Aw6aR56(nZSe zvMkjFtV=(~_;&xMx7GeJaDw6~o)P^K-F42jJrpsatE4G6^7_fo;Q_k|;w^mQR&1Ju zPKd|4`b=y!vrhYg!(Y{GwcBU$09F(*B);l~$$`HrI(-V#ik8 zn#ug_uE=^~(-OJE<`zP#*C}r=FsH1StzZ+b7m99dA-fX1#f*5f+I{9{Cj6^VA^Gwc z`>(kX3fwV^K64LlNcL~ZRUFo8@bf?O@SNS(uQE!DPRthr4}-A?9r@&FZ1NL;s$SMA z*rgz6pIo$7A-x}oLhARGx7OP?jFTN53-@}Mp(5`8)J-|MF@w%s%~4?oeJBK6?1L0qP8Biyv;HPr)}XO1O!CQ z64iN~Gh8qA*ED!lzl$CW7C<(KO#eLQmTW{4-tajb z$}&#^yDnb*Tx8b8dQ&=vFEP_6UwXB+s@V7#4wj7=Pny_|A1)eE26H=~ku$xY1yRZG zeBDXl`BDPwE!fJV9V}MX6)W7A&i69iy%;vUN?>OaZ zHuU49PbI|#^iNgeCY@3#hS7WY{`XDx+yaNu7EFueCK!KX@3iClr_saGTT@N;@O_W8~ULzS*#% zANH?pg8oguOt+wCWX)4xC|pxu+u9&D(0&`g6aISCFdbZ#Fzs*6xcoR5&JEgF9n-@?(FXiS&_-WU(r_)(0PK zsxh6Xd(Mg}vY&4mPtLl5#BcDFSa~F?DlSmcXpRy|1+KYsVg5y&RMXic`87p zwnNyy`Zeof$sH+Wtiwd><|9*i@du~nTMXP{7Gm^f-VB-3wxqCn%VOe(0g)-eZLbf} z`}p5`%$r61??}Bs(L7CHvZXZcsI|xhj&F*%mk-k3&AZcw*x)k{*XfV+hIbGc&#GSr z+0h@qu*WX+v;Bxgy6mLRzTav6H1gz+41?tWi}_noQTq*kKCfZ8iJGFVyKL;w zp@|g}iub8&f-6{%+Z#Vj;c!jbXth*ORetRnai6-frXC4>-;$ChwaKFg^%y?07fHfC zJ$7fx=nW)xXTs<^!~av>qb8Wmk|Dl)=|~d7hWY>Lps%d~5ul8!{weT8X~rU{hxoen zNY@u5#WXBftQJ@3%u`yx!6vBLOCs9;staqQV00?{k#Ec0dFzZXx;l9Wc9(W1?Zj;s z(r84NG*sJc*Ua^>QTd)L?Y`rBAUG)tlhQ>!bM( zAu>A&^Piy#S4L{s0<7yI&U-t)qlj$Qb6iG1aBE@11PH3${XKngwD~18yu_eZ-?Vp} zAbBpPCE7dfCS4TflXn17Q+MGr@-w{&Bvce#*7ZP&2Y7>-fztjt?Wtj??0Gs)o_dCO zH%-WS1d7~GC?V4~Azpf0Dp`mxTh|452(KP3U!9NnkDGuf(AZff?F5(aZD}Z+_aGX! zgAUbYhyKka?ng&|4>0YaP+7Zj?!ogmnHxeTI;W>E&8AL2`k^1Cg5zdc2BXJ}Gz9;% ztGcS|75KmmV;{mstL4_=L2G^4WT)E4>K(D0Juv1+zNso*ozA=r4`vf8?XAJ^YlQAd z->$cN)=k}Pij3l#v}5lxW6w&fe%XK!kywiFEL3xd=Sw41PPse=#!3x8FJlx*-I5C3GnY|4jh$lCHpd%?@VEJ|po3J*177UM=dr-$0K zICi3N5A}tf%D2RrEl$Wv3tSm(zX!t@h{!U);9q#K@1=>pPnA)*rAb*2alfI=>fO4Z zZTyuL=3cC{>F;fnJXgc0Yzv$CwnyG42B;_|@z!zHYWj;DJi&l)sTb9S`>@;az^QSr z*E!W{sy%o0D~#9Wf&`b_n9Aa^5vr&R_^r0lsBR9vL*5)XN)Kk-ebM%XcSSP&l0~N> z=z0xNvU7b{j|r7Er^tJqUa23uy7`r_-cNO)7VUhIceMgXcM+@;D%A2}ZJ&U&4$y2Q z89C$62#iUZ|zWE$V)!#X}u?YeWA)t8R%J439_m8N-7`T|$E%^$o z9>XJ5`5W|Z2JU+%w^hXo!=`@!ka-*3N0aAVUwugSy2jR(Z|NM}Lq)6#&hSB9Bu$cv z#WkYQ;5RRu6taxrKSidfNUlpX)mXN$ThKCE(b}%O2a{fmlAMK5O3#mjT_Ek*Upi*U zOBPIqn$>`cI^z@!)lwRTavP!K1%HU`JsSU}DQ6EUU>#U4H=GH4vWNf6B^FOnU&KDS z?s!tq2NZsifgaNTXitp)^*V0%hVxPxxc~S!KEB=t(z%f%B=z(C8Ye6K6FDIpCH6}U zFCz@$Z`q_X+1grAL>n#vf2p-<>1WZ}8X~Krak&)TywWUO{Z01!>lNtl(}hhO4`0RRiWuo3ym3#WC*OYt z4e1qQ@K<38$Xx4H!!0Hvams_EH#ud59~VUI;d?6$tQBIZ9X*UnCYnoIyKL|I!;HhItcRmDepu6bkKrQn!hUWp%XT5CZx^#F_Z=t#gf_Hu!+dc>DDYm2l(ljqzfoYAUwP0cuz{L&3(0A*<1W}C~U4GU8kY^t^>DVv_2m(%bT-m9~yfs?ii!aHVxIaF=RLMo47!zH~QgJ(73GBjO5`-=c) zIATBUr%@q>f0$lrmQ*j1t z0{kLS*v;IG8S59|L7RI;vXJb%!orJor-*fc3RPB%WL&EN*3l1yKcu@xUtsq=;dR3K zLG34}kA&4clzHm!j`<7w!P;W^nBS0tt1wz|x11L<)Qg6Np9KZ#oA1)&W?K8?~z($oEt;eBBjiv6sYJxvVP}L zG^Z%HyRp*``HaZgvHwrs5?`b?! z+g2A#7$z)Jxz(E*C2|Ffw#0z7pTjq99kQj|Ih+9((Jt?Kk}|`rMCp%MIs9VE-Ql#c zNMXHsBqToiT@*-~^J@zr&`SEx025FJq)i`1zLe&r<+>>(@p+FBS#1e@to*TPR9DXr zJiI#yNL;1t1j;oV1C9rzo1nBam|4{8K(tlNUl@MKA4k~?NH!7y>dU|ds~zS=q6lby z(>AE@)W1_@v+_y9Xd#PL6_=UVeBPcR$DWykbaMM1IZHqXodv=AZPq)kQ-g7@m+!Hj zb?YDUXc@&qTB788xZjjf)w~*tIWtZ#D2`iXE<0Co=nxt+3#*LwE#HKWqC<&=kOBmj zSmQI?-S_xyJ74Cxb`A))`X1Cs-X1sB7(rz+2cF3 ziE?9=gjfIvb!85EGz5#Y+)FAK z4d}Am5^X1CD+B@+f<|vn$!R0W^N1=kd!Ix7F1KGCAj_HgVrHUSMlWM7K%^`NfoQRQQ?uTI2U=VLaO+BXbs3B)-kmf(E5LUan`sZnCTTsx@Q_|B6wCoccb+9;lET?z*F#4h&Ajl^;byd8f95Tn{}>wY zeuw;zp|KpF&m~<*S%|3G$4^vt`vkTIIOlM(;5(Cd;bjk_Uqv+0XEGe$-MZ8jAquV( z4C6QhzHJLYZu9~$x4e3nHO084{E%_-@b^li;2Z2$h><9xQ2U&uP}(Rpv{j*^4aYwN zQ;sK3M-{U+ErWEx_jn|cOo#ut=oXxO)JkFc;Xxknk#h2qkeGH$7fj-NLbo?KH6k;W%H=lvFaR<$5M6>gxvC!qE9+ zsp>a6_9K;f>7^zRYW1L|mOJR43^Ie>SyHii6E*se%&$ zK4JUfS_(!+h-ANM20h7LhDMfY?$xwhYp)=YuB3)%E<0TQMIU|ZXm;80Tj+jV=-!Fz zwu?!uMh3q`ad=N;p#Q3u9?Luu9E`dqvJr)@^ziMYFo}vusmsjvV4hEWjo=4W`AAW!5Ba8u>02T(LvbA^fUQ z?nhiFAf~TTqzzLL=Q1OiMc8~k6=oDqe`0mMzP!-UXsheG6x5iwc+r`;xUtbVxxh!? z`p1St;cuE7!I!7o&nw~=`EAg0QA?Ipm!q*0UetUM^sT`c3&+Zk-l-STpKlYXbwk@Sw-Z8XKau^zVtV(`gyrCRm<*scGNt}~G5lqvR%0uJ5 zEv0N^H>2kvSTu!w=k5_*ZRfE~H#QY7U>y=sGkyYjO9T^665>`mmFr@Rw zK74xAoac!pw5_yM)-=Hz~A*`z!u4<>p5XaHu6cx)s!E;LlL$grWUqL@-r_bJ0 z&@MPiZCB(URtrT*8&T8a-{0GwhcT5+nN98UcbSD9CwY6$W;2X*PF(#V8$09YIvxXG z64QU9*8gQ^U;xB8QFmHQ&!L!^Pdz7m4vspn@b0L=(q33xTAW*Iut@0tS1vRq z>BZG)7uGVdWZMY!(j*nAPlEOjF(pAym3nBos*`eUlko^5#8Zg+;y&YCcf#_;qwSf! zzQN|K?oXTe;$x!FW+J`Z#T8DJtUKu*OW)0^D}sljkv5PVTG3>#tFH_n^3wvU?pHz* zf`_PDiB!ex+{*lVdtrs6^JZz~h1*MQ)+WahRBaYnXLX06Q5uxxFLL|$;p`vM>Gvg^ zJZ;=BscEfkt6IBQFN?11*1s(*ZM8rfC;3?@4%`6=82`MH9o=HAt_~sJgrD&oAt(MW zh|T>bU9JPxF^_+oz>l(JYavKZ>to-Q=2zHJ&Iv0{+rmH7brkNoi!e57uVYmIt1R%h zCJ$@P?IQs&)cS-Q@ z<`%YDsYC$Do>o|rR29We3<_1rOR&&K{CfJaqBl_gw25KE{`RieMX{I90qrgcJ~|qj z^uc~4aEC#}QAoMNwD_QsN69ALzw#|El$_j*C+_Y~Xvgz&AA%mPqzLghY4IcLj18uv z;xm_hwA37dBlWfl`#;N=)va?JC^rb6!aOf%fnkH#*x^iac8IAlre&#k)$Eva$s%U0 zJ?Q`~jX9i!!#5a@ff-C8}G|Or!_Nm#f zTA9|xv?6gm44x3xV=KQN3@PN#w26F0{(NzI30KDGtFZR(>XS-P;DDVF^>s7 z*w7rOifUR=CAz;ChuA*37Pu0Akw}4p_i)d_S|Z-WWe}9VZ&!n}*G8z((StGaJ_#g^ z;fjh!$%>Wh<9f#sr2%YbXaRJlMJR3>m9ESlO}M0MC@u6Svmhm5xp1g;)l3P}{tykn zu#ADk(&ggz9N zukK6yaSReBZh2J4Qfg0W^j2|VVEssyHvA$(+d2H|tv0(gj+HM0ih~x<;=Rp@<+05Q z<++rD$B+ta&|u1xK~i-cqe$L}S15@ScDig`H?i`j2xzGyG9dgkuV_Qgki^x`O8iAm1i~a1RtHxaph7p4o zL$L|T^5+a&|6QH7Jdv2*?~H0Vpz=()`?q9Ns=Xpm?(_Qx41O5@pfFh_*Y;7+G@2`B zC~1rE7Buvv(68N{;oaSW^=ayS? zGcpaSiZ4oXm#MZl!~lx6v@aR!(v&0ZTU1|`ix9M?E=b_hi<8BevBC1bqPtohDY`S7 z7Au-%r9?BW8jITjL5KhD?(5lI zof}!5Z9^%B?;D&ePq@Vrg`18!_zaar+i~hZQ_EA%4**=iTkKn?-3@CUF0^K+9WQdb z4N5^=4qpj%$lHoRSIoP%rWcifJ&#InhiUZ^=n}fXzB%OhBhG5P0PJ%+|2Xo>cw;iQ zG2*Tdd-Hn(eIBS~xjOpImL{ZFq2Z8T+kdO{PoBH5&o0k?1dbXXd-TRq;SEcQXw*gk z*k=e2K;eS>s(O6bC^|<=?K|jVI?P(uqr=X#Q%T*H;hr&m*DFoPu-G z`+Y^c61_vMVMzQ5w z4tn-yhM_FFO6cThgGN^P73*c%+A3Qv!ix{}9!r!|DVA4Kl46n`N0Xy)E`E<*0a^WJ z(4r$_93paog1(M7>eJ-)Bq3#y+voJ=~8l9l;^O-~FjbxyZE#IvK+l4vJ1*SpyhSnkl7rbcyG?>`2kVs`?r4 z-7BVr^Z`4!FotX;JTeGr1fQUOtwfm~2}Z1w(E=54P8o=QaoZ?_-fEmG!t@-E zAQT55W|MwAf)r@_HrGm%BiNQgi#A3PB#MBOTyL*}p0tHVK?htv10^{6jZt;r*sGyu z>59D<8#`jZCXNs0w&E^cqtx{qDObWpZ=gzv=mum~3m+ecsZk!P{a|W^loqlQqLI1zEimGFTIAJUP4v7ho|kUTYT*td@YYypsT<*G5_tq&*(4n zMnwN0AdR0Q1L;uB@;eX~U5u~*jXEJ0@=eq@4E$HkAT9e<_ZfGK+9%kz6Dl2!%1 z%ZCSzevO*aS3iccx_$KC7_A=lcg)H7j^ia!U}BZTs$+Cj;e?qpJ*rd#SZYu3JYA`* z4(Xn1wWWEqp{x#Ze@D47CWY!lpb-bt>pI@~y2s=GSD}$M$OI%f%))5}N$j0DZP096 z)-pFj639FCoAkGNaP>;P!}XU<)2nkYC?ZP}*2>-@_bcmwIQ>NE5V}z7Xa;82pTe1< z7EIGSx!RBDkX^A|QCoP}Kt%nhZHh7&#pXYkn=+XFkc&UT{;Mxa&y;CTzE%eTfsQPS z0)Dn}mmEA#4IzRWMh5frmhz6uW@g%lC;f%|n*##*x2Fg`VC(6b2AmUKw!(7DD-d-N zIboN%6dA8#y|1bSSzXL1<@L_)ULJat6tb2-}LwN-3pVwXOgMC^Mp#9J!%;%_mhpV4WR~C zd8ei(1icSbm-3-2_N&eDm(L)V@-NfhpO%E=eCn9xrPz+FBd6ukqDp(N@3{;k3m%yJ zSMkW!6#xuwW$k+cs>4Fw#I$J}iNDQpu%xLF#J2?81Wv0XJe}F>Ui{KopOd&j1!;HmG`G_S*M)^cW&5bk7>&z=2PdP z8mvd+*K)XuSkSl>4W>`b*?=*m0Iiunjg^>DCq6jPyCtth(ZW(7S0`{)1podEV?AjTxtATNz!Crq`q#7~i54-QkC+~yoHlK0 z1d!r%u9clqIhHtCBBuD@+P!{_`u)_43*qvKku|7P3w}Qaen6!mNRmv6p&DV{SNs-@)3t_cch3)o0(BVNLD5l zY788(9_qd_Kz@{^BXE_lViJaZtZ#j6eUM&F|Ms1B&Fwv~rs`Yf!-3ZD{QZjXUO4$- zef4qG1Pvki!02P3EAc&nv5p(nKXsy3Kpg(P5ibC=t$`-?V3ENMnEsPJ6o+wSmiRT> z0Z;#q_}MQE&4&8*oNKPa0ZSxv+4oo&sT82_*A6MD=@>U4#JdJ3HpB$PIpK5QC=6YQ zeG($$rxn%{nY=h8|A-|KZZrREOuq?YShF_MO4Tb$7UFzcuIsfF%Wqi0h+otMm5atM z>jd0y|85+{glMH?{TXAmbr#Odw9c|5l~VbAnZTElh;}Txn?I)aov02dJ16bOivUFF zOVR7#6{$_Nm2;`McEw?3{X@R8pcw1tDaTWY%b)LPq`{uziHxHsEb4ji_PF-f4IF+B z+A-Cz)-n;!sOi~Djc85Ia)BiTiy z6%#gr#uj83rbW|COjq*DUYyR5h!&7BmgE&@hNzsOI)Q;;q8K!FP5XC7J3}ZpGhif= zUiuAsNKAA%RNXa{EU*@9QKH&`73sl>rNe$m(Z!&IXi}l*_orA=#jwNSY`+M@*( zHrq~~#Hq}RLy0y9<0_wfPtK#nPsdSl4Q@W0iV!P)i1k{xqtoEXkugZ|_!nTqtrd;a zCa;88Y*gx=FiId&TWzV~d&?Az1KP~Yn$6RO4wDE$ZmRXz zJG^Mfuzhct-K7SUPu-I2fNni*t_Zg#@mbsWyr?=YmpG`eP+>SPGOFz-#SNKTlhCQ? zRG@_Z+L^a(IY&QaO^iZpCJ?*HK5d?=Cp>Z2Y##9y_=(tWDxyQ#mLjkRGc-7P@;CpO zFQ_@$1*v)HbmG8rz!PB`SsQwwN6^9cJP&qsU!Lu0E}jk@Qj?}Vh%q4vSB1ijbTh*! zI(lw)wyvBRsr*bGf$L9{Lhfk0xjG)5qhG(8$Ya3<)%BmH;Qim9#&n~^--4iLA^rQf z35jsK=8=e6LMdTPd4sq8k&s2gL#-Q^ek>vPOh4ruWH0GhLzbg*E`~PI%yXUmEAx&w zzcvVcy|b_BL*glr8;L<|`z*njO`qMtr_tNDGz(*@)`&@q=TLbc`S|Q@{FY`+mY3(DL)i9T^jgm&;1WXZxT^RRRz>x39$SN^8 zj&}Nj9{)Dm*H(;#sDDSQt)MKSCS7A3c$m-sK@LhBLt-;eyO9GQbJX1|{B7Vej1T2wC1*DKB;VX7HpO^X7+*_J1zJA5FK2 z0SUBq9YtOK0>EDv_e=4R4Km;u(SDBT1CdrDD~jMnv%x{CE-Klv&hEg0{M;YD+7BZ| zh4d{R7Se5J1FS}c2mB2qg_(@~akW(5)6e8%naur31M1N3B0bTUwFZPc*S0F@q|?+e zSM@}hF<-b=#})dQe!Qg9Wui`bXRctpADLc=oVe^oxqi)h{ z^fnlqto=>>O>_&>rcmAs`Dt;aN|N?F%jl@|*Sgoa^m@$wV<+$rd)eT!5cSU29jGo{ zAanZb&__Qf4IhbR=iEf|xvVt9NDx_Hm#>Rf4|-LV1d&QWox zJLl@-s_&>SZMk`}C`W^Gk*nSR1L2y&BRU#DZ&X9;`NHsR3#BTg3uni6=W=nD6||?R zvTT3&56_c@aF^}Zoc-RyhTmfm(L0&?@NKU-@cZ{?%Es0_zI~>xLu2YV4f6k5=jh}X zHlM4!hQo+|VY;HYBvqf%%04zNRbUT{NJ9~FzN*ExsO2VLYqhKtC*_s#w-MHJ1+imt zU7wf4lh-|+uJDSaRb~9N(>OK?td)WBz6Kw#vi9rg%%&q%F_n{%+2g|Ko-W-VUU;oy z5kmzVd(U3L(aKP>)y$5^D*-LUnF{}^^ZXsOw@nq)sNvB_{He>e^{1_vL&5?LWPzu0 zDo}+aFmW-ObwW#taw**v%(2GD%dIY^vtMU9tNrcGi!8_B(Q3v2}7A@Xn( zGzGkU^f_mXe98jhtRr&%4^ihFoXPX`?Qmn;wzYAxv9-y@wr$<9ZJQh0#vR+Xy)mDB ze}BAh)l}E%Q)jxXx@W4UyFYWTCaE+)o47 zjfB=C;|o9SDLT8@nY(ISnV3bb%X?Rjhx^AWt25iPlT)qv#m(lniiVc*E;}Qu^)rsH zy^V@P?9|dum=aO>GbNYXmE0!q%3w^9J}(7m9KKUcDZt=sP#Rz{g#cK3Af+)PLeSW zLbhi-Ob^l%<*Jc1ExM+FgM$N|QTN#!_P6-m=20UPUpde4gZmPPSB~&>E0b23I@7@9 zOM}f_W+V282yK3RnOV9=<8HiKWG6+3=l#PuCXPh zEaucwYQ~KNP6NedTGr4-kQ1*vPSVA48OthL#pH5n`n_o=9iV8b^@V_A4XB%A=Ee0s zd)@qTj=A-{&|2W34KNX(P?SEDsuo5>^5`@biGA<63}d%>3MwL~p4RR=kN2@?bzazi zLU^7~Y|S6ohhqoGd&0emJ}2jVRt4tonD?%KOKqN9S(SSZAsEytJ06@Gvh1fmMR9Ea zcLe4^5fi$R$sya4>dXvZp}nL75DeCb^~Vx(B+xl%8`H9)6S5sTWkXoa3KX|hNAh%) zR&)Y-gLaxNzynRXE6IW)dX6tj6PwcNFLf+f#E=Pl_hJAQy297!zttB$9nf zLvk_OvmsoKb+i^H`m8N^q`vf4w7$dWZ8`&+Q?u?gza3~K58(vRhxBOoqYflo7!8zS z_eBJ-A*qS5ZKN4VYAF{ex0pfg{+xXa`rQpV2SW{>?kW3sLjRX^{E`JN2F;;gcaZA`!3DC+^K1NX?7iQQPU37I!WsKuJR(oEo7985X&3c4r8LDAsLo zR1kC(LUQhUE zh6+&f{ahUf^}|cpKqH}=_NNl5_3!PPqipY7GO@HA!vYkO zXAUFzOlR-i?3o@0n6BfFwU?1GG4zrFSFO0MbmB?a4*L(84Ng0vpvtp*N@gV$%cWhW zDEXCBc4~tp2{t5y)}WJtu)`?#aopy&#XrGsj4djHaB>!+Cil=S!YKZr!h)weG9Q}+ z$jdc5qocyI{UVTPUN!~$7gZ+OvI5wML~`2=ielg%)CAb8&{~jLoDxzV4B9y~m}xye z4nhV8bsC$GE6`%!1@Q)uI2o~Sq@x+@YktK2o=KCxYCNYUD3RBpOHQ6S5@>r&tQ>(U zB?xv>F9!r&T?JGx6pq0u z?xQbPkC$@KrK>!dj;}vL{#g8TPr?o2L?wH>ATkn!v%4Tl@pR8dcMu@bt-i_-gOXg4 za6v;v7A>{rKAmFErv^Nffd!C%4$6f@VQ$v3pVI4PK?S{Eq9uA(uvT0y9Dw)Z_n5gy zE-NQXX{a&?Br95heg4f;? zpj54;a;q9aB53vapH$ADNO6P;64QKyJ8UXHzQvr?)&hioQ&6|O_LvBzCtJA)J>{u7 zxh~<;zhK@zu_R$u$woDPa(@fy>S?)fEpHKCi-?$gelTzo?##zPJp&f@L3L$Ytv$_N zKRMsC1d2(9`#sUAE+Zc$EdQ`Ac2-H@#vz$uBA9J&S{Pp{q08J`Im$Dr|hG{ zoymRrqOZMV1g6H+CkV$%YSl+87XkL#=3G3DiFe5bB@?2{&djhU43Ax?6S$F(Lra#P$IG3rmIM#Ey}dP|GQ#`)*?P zuyxd-;p(|;w{_^2rT;ys?E$hGvLyrIQo5CQBFv09r$R96{XF=9IZ$U5mB`AAUVD)c z-j;x1G%id~V`wXz?5N|-oP*nCGb3ED_-Sij*-EUC0hw9kEa>lj2|-59YqC3G0#7=qKg#2`13%lL9^yQ~6S8KBYWe)z zIAstw5R5w8xgu<*7WIcS@FQpyr!-A-L;WR%cB!bG4(I{|530nr=M-`$jgPx>XFi=? zG}b2kvzoeTSy$Rlsp`fjoR&N1JIq_Ur`8Pw*k#WVynU-D7B7|vjDi}rT;LRB7u2iGty!5STA%JwSEv;3@~;0r^#EyT z>?ZfV76a`Ly#^l{uuk%~ApFxUb`G@zVxjwBBR|KOjs1hUEC;JlfnNl= z;+SIPZw@HLq7zX}Be=@cx{#!}U* zWf$$t1BX#ffk6IYBf$5eQnk~-9a~RvTB1&mABgg28h9JzDPSVl6H&VOkDHGv_ughm zIRxuA0k?+ga@*w$CM#huF&{l=V$OSyPXFf@lhj+YON5=T4cDXGJN02^ukA%0;3baw z4eFCS|Ds_fQ&+sSz!z-e&3-Ycex9}02X0%Q$taVu7b6d4e9?&_1JwDKxl=rN2_#4s zEEuSLJFvHKWUbVbsPPQ^x#K5TZ>@f#OcS!c(@%Ked`$m1cXuWTQ?P|o0YB|019Uqc zzx4gIWOoLI&MB99uA`1sF3k290M|x1Q{=(*(A9u?{iqL!4A3Fvjd?2N`Z&gD$hYxA z+_mp4pgB;zV^$}FBj(>`@yovYHKR-PKA77j7o%h96gJRnv-p*(^XfN{D`ca1%Hesl zc#TVZqZo2OtW~A~ST~?!85P(e<239L{Kj0pde-lIQ1Vs>bZwC8oekeQ zxP5R5oHAnUw+{GVKUq7*?iPSQFK}JC5eR2NK`{ zjmiacol`Mm_Q$X03LNrs&-{tQL?sAK)mZMD($4v;wRf|I?BV|~#{ zk+I5zuF3*e`C#55u(!k*yGpdfptOBz=9Jw+4L7XGd!g)jf`zQ_8DqCde|wcOL~tjI zt^XFSvd3DQ3vkRxIrIEcLSx8VY>eYMF{a?I(fVy572}B~mYYNgI9q7mMbkgC;eGV0 zXd!6D6Yjbc#m?~TfY;hpv`aNYZujf}6Dt2xrrd$rHS*i;dLY=oyrsgPyMA$f(Y{~N z?pi|7w5$bbhxXvRG!%4PT;~WQRp`=*)IF$ZIj<#vJhQ>d5zqI0L(Y+i_v|2K%2)5& z^t&z;ePi~MpHTv62c+`^$?vy6qGZ?1-~L6MtCImv@+_XcBj|KU0k54~o!5#Zy><9X zBhO8^zX}*LoVWh|)8To;$@5vr0k(jw0YTW4{TgG*K8P$@hQD&D-&#L98E{k*|9Ut` zX+8+yzilHmDQNNpHVco;_S4GJ-sWIs1b!LmUo5-K*y#MJ`PZLQP`yKY#>MuDhvZP zHsOeHpr6`AY*cY_jK(GIu1MS=)?nmSleKzl?C?A9xRx)MXfi%tqCRFjaK|lnw~xAQ z^Kjoef)^lNN>QTSf@{u+uM&y>SAvA0AK&s9M|OZX4?=|n%+lQHimaJFTy{7K58U!^ zG6Csv2c+z179J>tSy=DDj2i;Y@YHe*xp3)7k2)HEwZ`>gl0SAGN=PN5qo67O^sJTl zlZSq-5n5rNz@z&waB0IZ9!KyaiuaufYyRajZ20cqOd1ov;4ny}FQBiqrGB%w=B)z zM)Pyatixv;-Tz{qv*Pe+c0C4b8f6Iq)VJ|`yMe0N! zd$eyIlSbzxkmjf4uI|8{J3IQ{r=g#~m1Sl3`VUmS1| z=pr^%@f=1q3RK9-TRIfMLs*k6-K?Jc=+?L;E$f+PG&3if>Y;yyd%<5b6j?o!w8t26 zI@e(Z2%=MouKMCi)qhY((a-iqs3PZW;-QIUftK{vADG`!`y9-+67Bxx5dfo#rUdMc z*YlEmD{a>#`A zCM)vk5|Izr`DGr)1r(6hB#R{_^UKQkCEc#Yl?>}QnW*qCEBGaIH?hog!dW$mg5;O= zf9OP_t_5p2cUjgB3ZoPCz+Ng_t^#fihM-jw>^G8xmjtR7*DKq4kL-eZrI9YhV-`H# zPUESgFB^1;5^Eet9g{e^Pif|Zlp+mJrFLe*3?}0b>5+$eZ>)9Dg1Q! zn`&fV+WWx)`XrKB&{GQXPDfT?oIt~ZxoklAtA!-gRs!Wx9CFj&vKvI;DGt^}%48nRk!R>5Dz(eoyI+ z0nBmUV0Qh=>K5a^*P$)JDv#1Fp!E#KJ%MUW@|Bdk-w!&?KWgP%s`L@B#=0T4T^7LO z-R}e%8wQDm^TOPJ-yYTQiN;g(e$vB29EtZu1h(1r=90|LM1GSni6HIYlFAuOaJV=RXH$*WpWXj5Z zP--r)CBm*}AzH3?vPTuj%Mq?S<~w8|68cFX1`2M<($6>Sfa;W&ajHI5KQpGS4y>;W zKkPO3z&3bk4Zzp~uY_2xC)EZ+rX5P0 zZ9$x!O$O2&HrW7Ggx9VeL`2cn$dP&N)Aw!`Y8yNeI2aK`qEjP;Z$BIThBhm zvk=>rMiITyFyfXfvD&^l(k@lJgf7@$>}ILeQj zlwjb6iB!jsH-WRK)CzN289mWoR0mql3|Q`4Lx4FvLZIVGC2Qn}u>7R?3N3`^U&Cr* zfnF%kz>`2=r|*Ylh`{ASpI_>`{rR_uZE&f1W}TXpmM6mSB*DTs8LcnhU2TNm9CuS1VmKj{^(qeLG;0JZ9s!V~E- z-pr@^eWW=(+?BRVIFPs$YiNU1|HyW&d$1_Bs#vFrW%5alr;$?3-`6PD$zEZW7zeG5 z+NXO`Z#m7H3b8dUUU*Soyc)WioGGmXwen{?>Ngik7bD^z0p-S4D;Q(pX zmt2WKWLRaMA#0G_YfR3-e8oeR4oaMOY*n+Zyd z?N;E)=tB7y(7^Sp1pJ~Q+a+{Gw_o|<-$QI&sGo>6(SVV)Y&U^1*9f8DV0Zrwx);DT zy^Ic{DYov|-$e6+jd?csI zd)uS$oQ?rMZB_OX_rip4YyIOT5AY(yAK#hpF5yS=SJkfc(ec8>Z7!653wh+jkLZ)h zTjkITTYfj~JmTE{pGAr9x^bs9c3HcOPhJ|9g{;;Fyt(sz{1CY)h4;#<3q`C~OHHlw zieqR}TIL)_zYh0a_xx~U&n86yN9UPx(==KPjTwZ1bf`IfN<_j+*2$-$PRRo6omV5gdI zE7foKxvaSjDXq8A`TnS9Dn9in|6YY_ze~c8h*vjDCM&`f4P7G>ClsrHiZwT+8Ul)Yp)N`tXk`(MK0D zHO(FqYk6s`Q~!bT3hc6ob-~uY6x}!_9H8e0d0R!Xx^t3D^Z~>*m}qVaU3p`^+$sHC z6;VfZYixz(#;EUjqyXg`azec8EOnp4X3{;YU1EZKd#N<>EU%7u9D{6O*KK=y$#S=- zGvd6nq(i*(7>c3RtHnYL=afU%4I0)JX7R!~yzo+==#FJuL8=Y-fM&QTbw_&R?!3Ud zsna8!@C_bcsQ|P_e0=AnS-vrNfkks*Vric zL4sT8-L!y{WpTCGHj^MxjHzfMGRMo`<>yj+GuWU=gZZ$bU*dMIA`d0%Bc&bDE4QN1 zzhHRO^8(3fX$i2km++V*G+w?sc2U}@t+7onldOBl&<5;FAr38j$heHNxoBMQ7rF`x zig|%~WV+kbHRFlR1({tQmtF_g<>t0w#e8(KjNy6y3~$e&7Bov=i6nIkc8rQ%`{<+@ z!#jv8ZFq~FS2ncfNYPnto(aY<$a`}x?uYrg*lBcd;skCQh2t3`CuPeP$3vpP-FZY>6X#I zF$`-t&jG5w6-|r}4rAjNLTF& zFPwReRZjzrbzM`k0g6Ld&9Nk$;w_)?zjyL%lW*Xop^arv?9)r3YcAIC8=nP$Q|`hJ z2EZsao{ZvT$}y)F`;NP!(lm=9Z+Vf_Hc= zcYUdCd^;w^-e@iH_^7a!YvXOO?l9)IEbaj?`)C+(TwY!^uZqEt1o1`1?}TOS2Jv`5 zC_+30&K_%#Fg=*MjQCqGj($5%o#FBT9~4{pnHNoOG{2d$bf&I`vP4BQyb6nw*LTeY zYHyWVI{3zXnrQAdqTEFGo9u6SRBk=#cM!~XO35`6l=qx-3>$<*s+xY)2i`eDz(Mb5 zoib)NM7)WgdKLDyAVHFNG1np4*1$YWwX38%P+OD$yu5KP zQA}irZCH#P$taGb76jz_2fxd*-!vqowQ|XC>^<)-B_M?ePt1P){g87Ne)Gz*(ap4J zV3@0pFIv<^XDzziD}1B3Ax<| zuZfbcPWw(%-{^GapwU;TW&)}YfQGO}ek=P^J_*1z`E=YR6)$H7pZGZaj5r$o6TDk( zL~za)C!5w}oNjMV8IPhWZX2Cqa!bK;0oKwqN$Oo}NW1yqMk39M*K+)rxS-djdpexg=VSSFwwa>pNbiC&%_WtKNx)(?w%RZ z|D7uh+esRViDd-|M?#AnB)vf2e@25>YeIK-0t#yos; z6Cn>0PoE7s_V^X9;^UD-Bn|&AYz+F2Y5Xs?Z>J?c2msdbLZvinCxNgH&e?;8@Lo;M zkWjg2s1&HYuwX>pXMMT7mf1|}>W?R(SpAO|HIwX13GISm^6_LwUqNw_|A*Zgs^4}d zJ8#qT1z$l|cK)5BC*bgnP1RR|HzWT}((@3C^-qb~e!p9{PTLAWap+^&%5+=;_!BmO zPv?SA2yr`?E8jL=4XOHPF^}^w@(aj2WQ|YsKGi^8Kt|rWj!Z$wV9mMfP z=-?ml`$yQn!Rp?zl!6>TCvHr&dlpw-ZBmW|m;>a{qKs0w|Q164}a*9R5HDf0sIW zmtlTZrasaWhxwu%d!8>lnAQgcU`9SWneXTgq`#l5Pxbgyeu7QyZx3pIGC2RUGa~y! z+#2tJLjvFkd;(yr_qSy-Tskfc7y`FJDS&1L<3hI>)`+5`C=&%_)bp!E%up>JpCr(STia$Za&zz>QduoDLxPbQNVgHxUt)DD(Q>HNV}LGMy2YHK zwcnS>faux@rL$Vjlj$V8%b?N~q61HsF<(7jB-+FAT)?Bgs!d-t_1A~;N^!Snd62|Q z?h~QU8h^;c)m;SedE1ZrD-{=sj=l$n0^|$9`BQ6RrzSt>3z6-Gh$Zw3=Fj_d*)d>< z^b;wo?<@H59iei^t|0jf@A&qs7x)!9{*0nMzC9fJjN%>C6P@{@PfgJHlmUplJt&627T9Mccci zrrFHX-wR$1AJrp>KRuB^RBo=3NpkKAS3T#R^d#4zXj*IiAcEo(Jp~=8u@@VWKG!l5 zKV%ZVw^mlBs8#r$|DDs2ief}P0>`f`6u^jS5Mur-Ts=y|5QcW>v zAZr#4Zk;wgkb5r+-uka-G8r(wLZx7L#OYw&daPkZrGOVUhFAjYAIPVM1by)SAFhR@ z&d#63GH?uQR)qzx8Vluj%|R&0E=qF;Ei84^@d?Q!Hj-JUpgB4Au~tZtY@FpL^?)}& zbxaI1s_5{weN;LUQ8w)Y$Y4W^2r;~|A&)esrGh`shE*s1aVNv_vxx`Dx`e68;{-#u zAF5EIBpee^_!Nyx&2t~k*7WwVyW^pQurzpMkbX}Z2jdbdjq-bu5peopaw8~Ml;M*B zm{Q&4vz~;)sz`a!`ZqQ-(I2 z&OlxBA;agdYY^kGSt8m3rWhYf$h{bn@0f5bs)M>en z_&;YCD{zI~3m%f%gSEG~*^h)i{S3pWnO?ij{~TURFjz(tV_(}1FXK)cNGVc=)&eyA zS_#`*LFFCDwD%~n_e{Sx=?la+0>t)=)M*7`OdaT^&|31rL;+Hfrxc@*Jxh$ z(XD8l5$iV&4oJ3GPkV^BG=L4dE1>QzPE>f;?MxYz%UVyVF&3?fPCY8(Z=sg#lJ*11y|kwIfP6 zu`b!w+M<4hat~I6fl`Sk!5+#%m`@r7p;-AdsXVHYRF&$GR+Zy~n#UQ-(<-E67J6>l=+){T`;+WC*DQbJ zZNE~ndjs(mAz;ik7O<@nQ|ko}cR1c9)$NC^*!^owvquqLOo~p1y0JcRFJaStg+HXt zRoH@F?RN(EXnKA-%^XD{s%p8N5i2Ik1TmaxF;-G3<_P8(sz#LwnzH72Wi$mhJsJE} zy#u{$RJ7w4yCAy_wudGNg(k97lZ;Y%aGheLesD8EMN@XGBA^4_XYH_6v;&N6ExA>x z1J=z-Z6D?G!(F=L2b1~op4pmLtgWN>G&VPf@N5`87j$vD zDCuY-#4bq;eHm?>1s1mdeZJmwoAOvi2$nNy{)cOB zJXhx|h>8a$S2lxA)7U4hJRi=hNdRRkU15kLgM9%ZBLT3$7(@b#{{@ZA5)TTqdNEEJ z34VuykQX5PL+R7cAOyz*9+4}Y3pD%b(bNnff8gyn+vjP^>H3>y(RRG?Z++5a0MUipx!2@ekyL7Q z)zHbG`~)EB4^im?YQ^dOQ$c!W77V7df$?T)LKk%Z6Llp=}4D*!W;4)xinWWt3W`yH+u3r-o){~ zd%D8TAAxWlf#4c@!L0*O@5t#Leu2mb?;m*2PtO37FHpI6iN+g`#(%l?aZs~BEQhGC zC}nS$(ihh18w3T5Q_IoCsJUwCk;q#|d#Qd@e_@zC)MV7OGSSeaI}YTd!ao8G(|&cJ zdP%I)%0vUs=`@G!nyeVkSZoYUV+BN;16nB)^<}eZtP$my*-+*ji&g`?H3&7sbYSxs zHPC=g0!RY_sQUpT*Aq>)l@sScf@m8V9KrC1nFoql@7GKb&a;9S_5J7PpE_gLPwtl1K(oJg~`j-o*z^Qw3i?7VQUHjuNEQSR{z5>@h<-d?7e>u)uX`cWf zP`a3hRlV4eEn{H5>0kB*<{66Uxyg{8H&(A@lgn=-e~_dV7n&=J54|K|o<^rNaYYXQ z;DGjYQp0h4X;!`Jo5Me$#N6MKN55hBtX;ruC3r8gh86%msH1qa^*`|a%OvRCo^M?h7w9_hI+~3f2MKcW zc3sgW8ga>1EgNaFx!rXffu3fd(&Nl9ir2d+i+*{ph_H)q)W6SflU_ll|6cEUG=VOj zk#$!6+{3d(Q>~cXavkr3E>P7y;z4?ER{7iINMAd=&c$bWab_4zb?q#G5#$2EI>dxx zKvdPhXD93mBsGD2uXiUs*LUjdR8ue~$jzML(O&h9a_M}lUCKYeU|f1Pdd;b)KDcSr z{Vehq@cj)QChYUR;A6U%-DL?W*%dr`X0u{Rk)udg->j76N(@RNV_cq7vX;G0kX;b3 zPL2N!sUD~JfzNokTYoF8k=_JI)E_2*oa~tc?BYIE96?UH8Bm5g8Zn28d>|oDEjKt( z#VS#@Otm|ce@Q}b;ysz z8j6Scx)x z$5z-cr4}Qjt;Ha(@i4eJ{+1!VNmaLDgP-)q)uqsyE9wHZafR9ziv9iSVM@G(4DTpn zJw>|d^&ZMh>b18Ps_0m&^u`;j7plgMlRGQQJvA!I?ar5eXiy=%u6u4?BfM05m-YCN z%J}i^* zf93p5{mBizo<-l2ApbmJc2LV3QzN5|x`!sgPbqb)1S#nmFA~jsuXP%z@cYi{NiOj8 za2}di0@Q>5Ln~&~fg9!x@c+mSUg9V6zVaX-WWA}k8Dbp&!HSqu89X`>0T)^x?i<4{ zUkFS$exk5^qU!Y~+>T;Gq;4jw2^7*PG!gaKO3l`1VdssEt#DQP40Y^&6hrvUjw^NZ zlyX|zDc22ZXVz{;6t+D_YMNdAQmz)g)B(5;X;D7Xbd_PVE^Ed}52Hv;c zx2`9xS@qu6j<3*)ZO0{p}wxCK6d3$2WfZyuPz;~Hydief5u$j~7HJz;~rnwy3n1#n`@;IU-lb8gfdB@n#YGfHUu6Gfu$3ReHJMuso4fb;(t*2Xg5y)*Z)kx)-YOnis*c zc6mno5Zh6*zuNc~W~7km0@@)qWU%JJa0nVXNb_@AKi92-tDiZiS+?gyGxYArP?Fak zy@j?_ZirBt%=6KyZ7p!!d#FB^g^pNwz&K5{GRv?L%r4i`p7719kw zyJJV#SkLksm`eNnBfu)fm0vft9`=e-y=P{+?j2p{JJoLaP|+WKRBPx*Y@LicSXPKN z;nINAJ$4m+6z$QJ!jpB62o_~$9o+X|?>}*5t&HqHNv)KjQjTiCI&2p)?-*Rj=_4_+ zC{_qx34U_KmO7rLWK5_s%hfWOo|?jX@Uk&=Yo*@6!a}Ig!{;_twJntEx6`$z>N}lK zsn3&PE4CQvS532f?vTHxf*^n=i;)2Lc?{|4mz z#ejyqj*S?z_={970$OJ-K_^hQC$OO~v#aj3A9I{3KTH~}N01gK`L+x5l2mhvmwJWL zm00w86Qq(6>QbR_J0xIms`K`fya|h!zU1L%5KvD;;15`Jt|n;krj>ZsV~jRRHGVaMk^2j z1$|!@9Uw7d;t4gmLz$ru1lhlDOS+sP7}!JfmbpL5`a14ZPus52+;gW#|s=ir=e}dPd^EpvJbPG{w7<3GD>Mm<8Z_ z8jjOpJvcg%GRXu*x37@xlBztN?D!-E0tSrZV-#efkPdhVP<6nchQnwHeCSX68Ee|4 zxbVqF7Zz<2st?dJJv-^jB`kzWx9pPCyOFy}MSuzN^hNlJf@o47qG~_Ru8e=Xu?7e7 z2*fYciR$G0UQ3>FR$pk(?FFe&oRwNM#x+6nP+0@po4EK*+JKYgonm>j)Q1WgfNHt* z_gJ}4ob^H}Vvg(9yQUk#RCu)eMPD1=5I|iq+3QG?_GUtqy!C9tJ(*Hnf~T~4HF*KL zS_NtwG>r=CKH1--gOM9l3YOLqfe)kz-x(( z9dX)!6Sx+}grbf0Y5GF;PkkXzR0}CU%lKW=njd;Ab40nn3W|S!Sd_;0Tqw4Dj!}4e zq+@Sbf-vrBBr1xB0BIPZniqE)d+{r0#p!ld)C#-hA9YsrW-thvtZgDf}eOcO|#k(r$sbvt6m)4T_ z1yKsWva~m+>Y_=Oq@*V)C(HvMBddcUqoBYAG7ZVF0hMI90SXXE4(3~amTlg)SEMzp zQE5BQ6_0T#+Ko!>x-ka`%0*B7=47V1b7RM=FQRcLB;JcM7T@#51Kn8^4jA7Rsh=!f z8h#B>seTF)(%CV-Oqv`Ujc3yd`i);|?iHeUI7sao9zxlNb3|>9jl4u|Pma9AZ_SW9 zry47u^{9WxQLXHe-_y2?OP#0~7ADT@e@*E^!S)o3=SifX1_1tWsLeq)Q1HtR9Ib~qFl5> zEK;fCIi!9=zySE$hQ_)2eXv_P)f#^$ruRp=EZj|2o@Nd}Tx-tl zKNh67D6FU8ohWE>$&@HhH-j_?|pR^>~*78N9N9!ng_E|ad{u64ck<$Gau z?;{X!*Z@jBGZjmoK-rvr9%Dwxr${?}+*fca+1BBYbNJBlMqQeVfkSsA_{_|JVnA$z z=7Glk5;4pBpk_Dse>9qz!7~>`MELN3M4PE)obg4)t%hyP4G4+$f1IDGrJ3mlLC6HZ zG|TIQZp;l1>HGD@Z7vD5HZ3v`^Xm=LdkY#k z8?I3=IAp;8(Q3w?e8!i6f!KUl#JtxH4B~_^Y0g>zK9aE9(a{YxFFFG#c6CaEyz>i;K-Eh6=ub}Sc0kJ>P z>u?)RhVh-V27XNJYjz@O-TGPsp=#lX1_d@kl{R7>vVb2xMVIB3a7p>RSt9RDI2x#xdD6wW=Z5IVVmKxWI%m?v zaAqgz$ASq>l`!vFBdY;K0th?fC;Qk$DA+_8*hFa9L|E9l$k@5)*tw|KxtQ2Y&{2SC z=%{JfsA-s}X}GBGIumRZ6HF8q#BeI)uo}d$8szXY#PISgko(hzm@7oVUoj*x`=n4k z+%hTO8xajcua`g^r=rzogSs$sohq8Oz3qdrFiOA{(4`bIb@_yAQhEHyiECoL^T>%~ zqCId)Qy68{md!DSz4K^M7*(|)05D2o8NBq0Vr_QfwM%l~Zy_j*(%Hyi8CyZS>4{yh zRvMn%c#LKhZ{xR0atK>Lj$$2d`{<5*?!}{*XP?%@MiLlx6sj5yKNiN@>NRVX-thMw z#(!dH+_KOfe5t~6@LdzGrsh0a0>0fu|JhKA-w`Y!|J^b0Ul&{fsGi_$(k#9`z3Q0QbYS~tki(pi!;xV7#}LEc zb7cn;B}mNtnb-T=-1{s7w*Nh4M3~qBQGIV2{dXn*Ti|yc3mYJ;|1NcZr~N@Q+>m?3 zcfQ9b!XTIZsu!}Q@!VXG3!88KV z)Wy+8flbU#UzKV3kzM(o(zI%SEypxstG_Z@dwpJZRx7t%riGhk>n!hOLK1 z|3bQEPjppNA7rg%JURfQemD8>_emZ>#`nkd4fH3yZ;Zsv@hu!*Ku?(79?HAPJ8bMu z&EB#*1c0EYkL)=U@XSEiw>_Nt?SRrdLV4GDCyd>>-bZqW_(BE@l05^T(Fpqlht%95 zdLjh(QQn=r!zFH*Zc_OI0Kq-q@p$hHu{+zl*B%gGpkHCS?`VFPKG2^MH`8G+HC7Nn zd#|P-QpkR=Icsms+{)O!#mFY`$xc`HJC`@Cce=NyZHAj`kflPDFVG!9p_`_TnUmcf zKCoEiIgt1N589oDSY!=A1Oe%kPE{i1``_Y~GPQ-)6bqo?gf@=x8AET;IU+NhW@X@f zJ2^=j%Yf8P?>_?P4!S;K%7V=-mB(Qj8FC9h5rzMrlKLM09@rUA+hH&KCuNzh=#KY} z?030E^bZe|1cqSgKUazJ71MXw*WOi26Wd=OrGntC;cD4od2&MR{@8m#-D=jEr<4s5 zubc05w(fwS=c3vmPC0X#*h;rN0s>ebv=iZgTI&@po(9+$2H5tFeNXQS^81$RE11L% zPa)=c#xt1|AVH+pzYU{)=VR;f{gjq|dewuee_9ha)@Gq`n84Q;q8OWujke>J^@3i4 z{x)rYjL41IagvDzIxh_(0|l@yflmJf^_8QP)CPdhaYW?xZ6JiocHt961ME>>7aI)x zv)A$6gu9OOMZzC-cVKja8Ik=Pt-sKA)iuX9O-h<_nYHUKeh7M&0&#E+Okh(U>RQAG zS(a4n0pfhlA7)u~^MEadMw(|5p$d5nVU|lnC3Ue6B@P8xUr|N6?&b=n6z<6ifqg_@f}V!1RP%%*denuDYC!k#)ggNqY4u(c(=qgw@Y-dRKjf2Amt zcKXkAit&du6Z-;Lo@G>ldOWTP{2kV%|B~+`hUoS3~^vfJhkG z9bV!36j&W$BBx`G2N)7<>2b{M)Bd}|=Tm@t^n!rL=K&Wo`zhs&j&zZzl$(1gIaTfjyp?#!Pv82EK1f4CK5rlTqHI3Y|rdB!9WSo zZ!Nh*myyT9T#m4hgNB<1iQ@|}s{5m$AvGB-k1IZ7k3_VEEE{I0Z0>$NC_VA6)P4ZP zK?crbJ|2$@msjn=RAwH&N7J;|`NFJzc>5ezIb#O0SYVt&A@r9wV+rR^O-C){R|M0^ z)uj^Z>J<-zJC7q4FdO9dfo!0mGV)%?KspcxP~jr=&e>xt*6}Ce^RGBgf8@TKCY4#g zFd4~J2&M-JT52X5HmLi z@X7Q(X=NdEpL%Uq&*YoPF>tP=gc!*KPP}1TVu;}?{N%3&A5@nJAD0JlO$2QglZh?F z|B4!5pFh{w}d8vZyz8`vb5?0IlK>oS^UED1)HzRz$znP6*L$tdTY~O_6*wS=&Q> z8F1DIRs})K2k8B3@HTL+zW{tvG}P``FNT+SYL zJBuYO%l%p0!7?J~Kn^Pb?4zm?j!R7m)?hT$Ad(3 zAtfnvVO17Np%<%iKLr)5lAIKO2Cymtr7(z9M61a3BkzWh_rl2gVdR4_at+ad%!d;G zqX7Qz0{A@={^(dH89fH?auwblIebW~H;_S(9DYPv1Az>BH^BB#R0=`eC8 zjJy%zT}KB-F%}H}9Xh07)sMLPR2w>|zXvjqSEMwjt)6&;sw@>(31Fk4_Fm$xcr50@`hI18tL-CzrUO;1xz6n;)A zZ7KJKzNq+tC}_nN6Gz;*s39Q*Vv|}7DEsN{@iJsOqj%<_-T9L=!I-%42l$^frqhZs z8a8!z&v`!1bI;6t{r>q2fGyN!ki%3F`3Tb}5Sp>=3u$_(RXyPb&T~Ig;H|WvJ+WV-j1p#wC`Xt@M5r9g6DhPb ziP-BNbLK7gYvKTeg??MT2)i-gtlsC#b=r-a?wKiF0MkdSZM9uwx<%5W#^cR783F1wlu3vC-qeJE2k ztjEp#@TdqolMk-bc{-Clo&f&Sd}v5P)yE0$_2(!c|-Y!q;@b zmjFx?@U8;Fbu5oT@2$d-gl^eI9>R@gHe^gyl97Pm8&8%6nb^<{N2r&stB&;T* zL1UBzU6-UXRSPK{#46uU+<>{si<`L*o9u_` ziNzuw*(%RI*w2)wZJX$vcE~@m#W`rtSfxjyB2m8+6PmnD{2G+#un zugX$W+33bata(9Vg*9i3$bG0k){Re2y(qEDsaf_ou86B7${v`l%&}liqRWD*e0h#E64w;r=0dj)*Oa$mAJIj`(9hKt&AE{J;kdM zH?S^np&7MTc^f~`J{|2?c2av15RpKuZ!;2@8fZg1RgqA+%R36p3~Z|MJymL6H^G)4 zX(td5{`X6^A<&6!Ri<=L^G?hEe^z{*Z=Ar=`<3y!pvW9(r<0s|##pcTFr2{ZpfUJK zsQ!wFdt>E2Tkewc+6*@YCU?mB`_}n3-WKTn=h*~gWDJ%4TscQhVCuxMxD0;kfCTu} zf`8{4p2b|v3k@$de6iu>hF2P1ZMfU;wT5qC9e@D%V*-KK0DOvxI@0fce-6=|X&>Qq zjZ@v=2r~@l8J=ahz;KD-d4?+tR~cUFP8{Kt&j3u|bpSVU1_-`JEBFST;9E=w-(fEJ z9*e;bxD@<|mEb3=1wZ3@@C(+1UvVq=4R?ayakD;v+78~pEdVXNS$BO48$fOPHh?>I zY!mMQ=s=)@P4qDNX8-^I3;+L6O9u!_;Idf#mp_M%A(xOAU?P`bO2T6tciV@P8pAdJ&x2J zUxhsjnnGKFKwa|%io^z3@G%g&6I0wKLI@N~*7*AV&;N1mo%7=#-~IrUSxpcTwi@l0 zY5UDi+ijZN+ucC5dan6d*9=@wblqNuWZ(rt#Wl^wO(7>*b#QBC!$=`(#Z@dEj?3PE8nQpcdQkw z{z0vNZEJILW4*pqwU(||mNjrFLxy1?F~41|ZdGc+haaDiuQa1%6AWh&+c}M z1Ao+lj_W(cK?O|^@}JIdh8ZEg;QDT`C`{&#R$BRO-KOUj!t6K9-g!(nf&s=a#EoAWGJXqbCy9jQ zm&0iK*A?b4LV;levK)Sat0B=F2ygOMKdp&`zG8*1nf>x9zt6e57~%TG=veGtxK2Fa zrMsl>JSIEL{}Wl`XXcDYMEj8zcqe==@^1JnaVT@ z2)Ib2plbsF0L}*h0FzX(8kazU9T}Gpbi5gtk9)imm(KKH6n~c_Bm@W~tP#Q_5O$Ox z5<-AL2uL6ZE^(5)BqOuLnF)(^X=`n*sI5!2;DWX)?h7WvR`;r{bzkaI_tsk5U)8p1 zYwPm+-22|lyqQeGqWqD$@7{aPJ@?#m&OPVc`yNkxwf}wq)%q(27-3Xv&|m2Zw1tA+ zw#x92h?rSr z<08{%c6cIYz1iVu-Ac&uFZ8r-><9(B18pnY+Xh zcA?6^5W+aSr+UheaS9C{YhkEZObCD1aHprutZWPVJ>Ed2SB~RpjRZrLjk114u+6NC*AcS4 z;YHmZpK4Pa-r&Mmj59D^pj0kMMSmP__jx+PmB)uIp)lK;yyj*?z9$?uLy@|G#a%g^ zocsiVi6|rF`m0-lo6N?DC(<2W=m`;MgKT#Tlz*dwFx20uhFDu?t<_>h=2pV7_37uT z5Vd$hm0g{|fLWOgU220@$swi)RAMTj#IGi6^-%2J5^-{5c|Ri!#MOR~sd1+Z%#c&p z7u7CYyCf5{2sz0DnTa`sg1Ue=GA6mfg<~++K$XBe981WH5!D^>`YP*#9RzA4Of0KU zD1S|3B;*ZrRQ0WyR40i!PGAA537P(-oqn!V~ax$g$_8=k>t)YeTCMmJ8Hl z1!1iJU^a@dz@UZ2u?*hARo20Km(U*)xwzms(pp%g0Uv6&g==Ox#2*({% zse?Xm>(@o@C>o*1?K5t-4WoxV@T$$WS zVF(BW(Iq*%)?2&D3`FXK9ZEVYl7GlkIv?=(Dt*C@4sW2NGO4%16cPv{LMZZElDa13 z3530p!PNn;-=p;AnDle@s1Dv>pt3*EDg&DcGY?CKtJ^$X5i{gMH@3(Pb}PYO_ARNw zA#m5)uD>I2CeD&J$0mm``|xP6;i|H64!&#Pdjj9bxrDlJ%}^6u9rj+lC4WK~SvIL( zX?Ni~{LsLU1kT5gQx)#;wk1MFYsmCOOv1(etja+U#ax-H{+07c@K(974Hp`?NZ?}p zgfQa>a1gRO%*Z-#pe?wWFwDWxOmMMj%9?DvMl z2CgI29F{bv^Fm9fxv&$zkUIKH!s5f#(KHxs<-1YfChU^tu|DQiuG}1uIygR^!R_%pD?7ZVNLDohT1jFi|VTDS1xI8T)J`{ zVcj=hy>#PMW#a&TW#B%6`|$w5edxOrfh)PMDm#oVt<-+14RrgfCN;V65FR%0h`_J$ zC}Cuh_E~CL7ijl+lz)NO+CxD<;phRphWY^zRAu3D{Kmj<1)h+8)7Z2O4VmG})ulcK zNhtQ(ENgBJ1_EYl#JkBG+1lJ@d(sc#Nr9*EG{Nv%qY$Q))g@CQW0)nOV0Tw4d9p!m z@y`l8hvx~|wk@%uo`ST!U&KoWelPIy!KM&aE;?bXr?u4#hkv~-UY{b}47WC)-tBGO z*c@}^TzD0)8Tf<1>v)4OtRL;z@PCxAtxLUbS?AF@FQHY^$VTcy-KgYEBKEF2jccAE}KZ9NUQEy%i(>A@EQ9iy%78$Z9hj z><+b>VZzunyT2MV)}<;7pW-tE{}%Yq!RT!B`pp1gd|Ws!d2E*ccyqvvYz~GtHg}rd zj?Rb+|Hc0dd?D~9z9N(iNCTlzh8_}o*c%M2@@_GGjep)V>}^km6a+ye$;4GxINT0@t+u2g(brX!5)wR`YY8UmBsz~Wy<-*OBCCEkDgj~7)R)Ag?mVdI$8ln>A#K{=F5$O_tVMH`{zTiGGg(Xg^5Y=$61J`>4rYB@=a&pl5f{vpF(k-jCq3i8!tR!_@C#V{D zp?{znIdGw0B?#hH#23e2D`>IAKE!Y35NzGIho?eXDyUAPD2Q~20?omIWsVXEmJ6zv z2nPGtbcX`ce5?#4pc@3ORM`v#6$y59_{`?`0v|7EwIxClZjEYHD=TG1g0B&@*0E@< zoz?Y%>)X%R2?#CFLp4woXa%c#ojnisLqvLk@cc^-8#W8!klv_Xygn z)Y)T`-|P>zB_Y@^=zv5pJZXk0Xzmkqztg(f=FPDaJt*iQxf8{#t7YOGyV4_qel1Z9 zN19E$(5r-O z>5#_3COSQk0nX7Rt$z^oI`SpM94B!B7jo!LL2uF9g#3;qPsECBMt_v`AJ|X{y({RC zGOAG-A#+Q_p!WzvlANL?A&(3aIlhYm3Gx>~AIONo6*ePwo8;Nw1gU^zbRWmY^jYT8 zY;QMPBa-3|1${&x6Y|4mWM!bn=WX36Hw;tdT#i1XG@p#7sEYn6=wI{+VNlqNB>3d? zr3d1(jL0~BCg|T7Eq{H=uu}(W1F}z>i!Pw;x4!&=uw68dnk#!}Fd zjX5k!Fc-_VVlYQ=6+g^fTh>qB^>E^o(v&meDmn5X!E#tGA%Ca4tIZQXNUtL_eG3s$ zpAjcDWwOCC{0THhJRuo2vI4<|$e7VsUE8>JMeQONI2$V1U^eUsqOyL@7E-cbH6EX@ z#nZa6YJmzGve^ql^pw2Y`nqJrO#b-E`6TK z#t|~)l5yQKD8+jD6@ zkV^V5WfSEZO&4q&gp18&vkW#{usM>0a}RI1)MH#L2Yiqzl_OIIaHb?trpgRoUz~w!mQ3f-Ph|Oxb5hqE8~O zbFn4Jl9TKd%qu53!r#~#?Dn;-Rh^R*P$JtXn14_D7P%c}q|we$NIyYpOF*!o+$V>5 zS|i>~F{rw5jp_4s`#d2z%;|!Kl4jNZ7LkJ6pmE|I$Q*1o*CC-;)4?yiO62E$0gM1KCp0 z>3<1Z1E`A#D+7z#!V={V1^bb86JcrJ4idqS1-n2Z$nl03nVY<=W_?ha9tnG)U>8}} zeCm?gB-l>``>6yQY*8fF%^{eV3U--<%(rFM(JX;~CfF4?o-nGzj94^PcSnMj8{80- zlqnh|rk@M8T{>&U{sB7XgR!dwyP932c7Hcz!wJ`X8|LZAJiJ5LTJpi!RdUamm=BFz zFRA|pq4V3I`Ot>f+4cFzkbewzlN^3m{}%mQnQx{XD~nw(x76DNyPe%Z$nvXR%YrS^ z9;Ug2uq@b8mCf#AcN^>;!FDU8w0$lfSaPJD~2|gew=@rD;_z=xncG``CWMD8FZ`^0wl)CD(aE0dJrqc6hzH ze^2@l?qt**jFw6LF;(i}uLQeKI#@Yj%kg#W8xP3M;X%T-Ba?`4&gV4VtHB;73`@NW zx3JsmYcoSG_7Ji%*`tIhY4)>lv9}HO zj$rSyKN5zb-+`_4F-G9aZIUjERFbmF7_w(zF>c09}qIz zLqWf+B$TIF6Gv7;fj4$}0s*tF%3yzUTq#jaF)zJ@{avsRWl$_*(}f|^v#~J}@5Y+w>SyTB%kt=QWUD$ z;2Pnm1b=;|Gy_{JomVF9&>{;T@C?BXNzD`~BGp}8rYGbHw3;cWynoH{@T%GNr|<#K z65J(0Cmteb78PW5{@HGIb8`yx?AKFa|O?%VuEP*2HIi=ZU)bHGRH|dY!^MskAD?>zO?IE-mq=9vyj6V z2wu$>s!O-daH=+7-=A`Fc(b?N8wq(@H<}@zx1}=PPZ}1!Nbp)4ePXlVO9WpU+brVM zC47lw<8s045kL2`v*flUxOf9!Y4BBoA20W<(nBG`vLx1a!y9;`;A{9=>t3c~he@+j z%59IY6Z{0e-hbMiVv8VAC-TwtWrxO%LrPjp897n#ljsv`Pf%hPYnAkzB6u@DmEg9n zm9~33xjI$K9%>u8} z+XmlCSf18cB;A*)Z1)8{Qjh&+pu4g<5C}%pU7vbyV58jSOJ$)h&>qa>-yvu|Z(yT~ zpT*BM_WMnZYj?{Ac_M!h|H> z&~HXMgKd=(%ZlJ8({BbMD^!(r4ptWkN92wm#U;hzv>}tBs-(F8T=4CDhqeEvB6S?{ z41i@)leC>z3x18XyBQs3WVyLj+M}I%x80_7cw>g8BHJ zGB(&Sz-30x?-u+XdX-Qlw+-cZG)6*Zpd-@hu+Hoi`R5NVnogg)XgZGyzDI6z%901# z%!nECdjp<`naTGNh94hZ>Itvu4h77%m4EH+iKxoO5Aa_Z{64|&=MNA@q!mi_x}~*^ zEer;Irj+r@0Rs3wOR!)6q7Lqwg5Fm32Ax?KXf#8cysh@FzYS7r9~JyD zskP;{bJpgGc$(Y1VLA7h;x@NgZy`0eS^=&Lukzmr{#zN}Wl7Gdp$+~!!sr;Ko`0^c z%4(k(vVEJa4JEsq51HMWP3#*x+wD z-q?%X@#Ule`N-w(%B|s#gc)frn}1rE)Mn7`X*JVW_$T;#g8!MnZ`q0l=@NT4#qW)* zbzEycRGf!0p$}5-D#ovmJ7z~q^O48@PtNY|gr6Ml#+Nps+Mlu<8RtF{{NotsRt3Y} z1m|SyKLyU`|4M!ZD1{?c(qw%q_-Fjz1mSnII4?-10=f9-xX|GLb=<#9>3`zFHvWa+ zU-GXkC#$hDxOs6fRPFPv4V$4bVR%^*b{nxe6y2slXrwX1u#kE$!VE34j^Yxhh{Mu? zPio56G)*_O451k^1UU9!*}DPX$x|VOq+HqeZCaMlTyjD=@jKWn18ag^E=_2I3@t}! zxmq4!PWlb~pzp*T z50h%=v_fg;-jG1Ugr*|11RcccS`7ykS_oxY4S1=su_mFvmi+`@^QcrZr zgPB5`rOhS`2?i`(SsZNb4#zLOA9G}xb?erIcC=vQ=wn%$E7)MGG*4i+b}V7}kzuZP z%y?n9oUt+|$7u@;t$$i*3uRQ7lgvwk7WSTDW+6vgB(z$rja}4CiYL*nEfLyMtQ&^n-QCPE^w_uXe+fDMJ zW!(sRS)Jk=*H#OyQCmY8l5|L5r$Y#%`*-H*Hb@lwfYv0mb${9k1Xox05qp7h4f);q z7^0mh72+hqnm)He64|dqNn)gx>3kGwr^o@C31@vP8h50WxHON}VrZ>GYg5O@i7s&# ziWaNXM-bt81Ir)h(`TKEAPe;o3E8RyH)( z)YsK4uU#Z36Bb%TPG(rAGA4=J6v}w2a~o}w&^D_R&ak@aAU9rHMs1fON82j2Gw5SE z^UmOA8O9`n7`sn_cBatI($2P0aEh6!Crq~UEb)C;Xn)_+zE2qKz?ZB|v90(B?Nyzn zcRvu?d2+=H?aXQNVVtDoM?yPa`>}O7w9iGFCK)MyWAROM2d_ZeCbSE+iwIfLw%hC~ zOqUgEa^V>5CqnzFb_v1d4c7-dI;?Eu(6lF08w~9-!n`A3TKr9LL;D%wq{Ex{;oZU` z@HN#-2!Hu~XFwQK6I7Xx7+dnH7p`ooZEjpsy=HA=^TO)Ync7t{ENTgEGMlX_HMe*| zgrPOn4b3$x8y43sXa({JqAma6#b%9M*sv(gl3KJ&ARCr6J zCthD^CnXjKLu<@%#G3V}v^^WTeLiK$2w5r@5$O(@gsq9r{eI}@h`x(*5XqfiMXY^* zJ?98Uj9s!lOxXUin;SN4ID`uf^=U)U^dIFoG#5Y3w>Ikg`f^UMFx>}l4r=QL{+7u> z!G8z(zEMBGNAM+#BSDq?O{uC$O$4nb*k%%P>%9T9q1)eLhSpeyFTXz6>hU#sLSFf7 zS89EMpW9r*Hl5v%ua99SCZI#t_p)R1d zU&6R#aP<`tGh&94@JtzKezvNFyL_Il)tfybY0O9TJ8%_2-(+oklhb3hAy4o2_sZ-7U^{uad5HR1u0&FZVlMO@A7h+U9u6j4&k8ns{f9P}~Q|@tP#T2*=LBg?$^R z#=6~8=t+0Qm5>)uPl+>Cf{0%_SS@4ed~Z1M>WX!Lz|h`H`U<0c7NEVK_)Ne6p&TJQ z?3}53q0@N;ZND|Fs=NW~5SXC1T5Xv=`&5pw;#)oBQ#lnCHzi$^AZVM^i+`cTsjZ0x zl0pyzZZypm!B9NWu7@o~8=K-Un6&#m9fWNAV5Pz1H`OiE_(_eS{f96#{i%W)XSLZL zGQ*vAv}5sNa4^v5^;>2>mJBKk25LNA9>oZ+nUo}oF)d(5D(&U1N>}NGSG%?mi0NTr zS|o&mKwnV8*n?sxj7zI=>wkiwjbvjPd^Ju=AmK6vN(mo*a9W@81FoGjbB-F^i(8?u%pIdT>67igh_I2ar3J8s~p4X zWp#BDu^zTCX4`DHK5R8yii7iPGr@zS($bsMSy7x5PO5V(PycXAJb&%IP|9U|(DHPH zu8EZ#5NhZlku)uYL&l*bAUPReQ9{VD-qujdX??S1RnQxVB-k^zPww#0k~teB;pz?B zcp5S<6_fJtZ0lj)Xv**GbCZTJ!nyq=&x0^D**)Ic6?2h~P8n|Ap%Fg6O1+hLgs_L! zPcf%7HIz>8Y`KDg*nis{gbZ)kDr9zg!Yb8G$g^%T#G%6k_rNDQ&fGI$w9n&jY4en( z6@b!dbNYM(>u?SMnh29@{0B*Xl}?*Ym~ilO*ea#wV-MPmK${O^@L5TgVBoR);&f&Q zOQ+2w%pV|a@a+sTgHRId)AufZ>9pyDQDp<&_G}_#Cf->e5P#P+LiIOIoi`n1jH!g; z0osotjIo>hN$!>&EjOPH^?kD5@%J+-*9N@O>IiRGeWlfYhp8Y9h`Of}BPQkWt#l57 zHVxQg_JFOkzWMQy^LEjIW6d0}b;f|L(+P!ktMiDlbQ)oB+-O+e5Gev%fp; zYE<9cTI`jgHGg)XNMnlRJt4cn3`bU&{uVP7HuRPKeW~=YVwiXkpSLg=jD#a0PnTsX z!+F|8xw_uyLXN&h=yfbNkLBh;cC|B2;<Fx5=F);0<)xF;t#DEjL3yUxNNv=ri?cxw^hhK3ypE>H3V^ z4E2!U$Z%1-$bn%e^=+;3_LS( z{NzHv+3~HezMq062|3q-;-?$`XJDv>vuKw=ysaIbgMN`Bqb zuzo+Npxf_7W!A^@4TgQs&Cs7DWW_MAHuR?nl?QQhQm1O@&pK{S_5)<-&l85G71h;- z{vzS1L$U&f{(Hixfx8kitj-vV9AtuNmw#%PV*y5JS7=v)w4VcDn28aXfieIiwC#y{ zZ3jkZS391s!3b@qeokp^?Q!}8@Bsx zwSRB1>+iCkd+px?_U~`$3HAGsP3N=r^A&WZI>Nk$u1w(vqhG2vMz14Z&AkJi@)?7X zpTZx8HCU_qoM5j@oBCx$s$S#Oe1D-0;{uZ~);eglYQ2-zhI{+0jmB@Y@L>n8QusH* zr}%n1yQ2>+cj0cxe>Y)Q3LaoMiomp8vY&QyQri*`vb9^lwOaxD3_9`vT<6{c!%e*y z%7UYyj67I%^8h3PIb zdf{~!W%k1FF3Re~>FxvQUN1q5j6K-gi!<&4z_r@|v|u=Z7og!9WML16;3bU0%NUE- zFcE*iWW0_Ucmv1aO;qDuEPuftu>ya>YP^Sa_%mAYK05Ii1n>bi;jcIof5Z3je>fk1 z$Hn*%JMocrJAhwUe9`XE?o=GTPPCA2pbkuxc4Gy&D&31RXsXnMGU%$*i!x-W zQWQQIsqwR|Ev5ES$_tH$e;(usWQPoSw+7;EYibZzCl32wuyJAIbh*fq)W2{G$U9mpa<0QMHIo6}a zt}s)Dfz#uDCTu#~pUX-LZ;$?TTouVt=1q@hiph2kfVZRr900^tfH| zyI953?#a99xhVaq=|AosI`07eZ~f#w^ktMmKDv8wMwDr8ca&vDnMjz=cX2d8*~lP) z9Lhlf<$q!{T7w7|O>y8iIvXh~+d4jZ}maX#_kp5*w))XVNHKM5A#njlu0S z7WdIOJWb>A7M0>-I*N!UP(Dqh@l-}LX%f|vo0_PcI;euS&}8~CO`#oBNw?8d`V~#1 zr)WC8Ni*mpn#n-3*kGE?M$;TNm5yfBbPTJfxqoaORWT3EV?H{Tolf)FRyvNIMGM$A zs%96_aqOqGknN-zb}QAg-LzQg_e@JwW9FOPYw5QtJ*_zfV(?Rk(ZTa*DF4l4|?+dg~XAsl0h~ZVoJw8jpwkhckYfdc@f8TBtbafm zh#eytqNcpbUIBMv%17H%mZVu5U~X&!q+a|yRUS4WgEk|VwqhuqffD)-O6g2YqO%>0 zciW7Q(NF|v6WJ)6hB{j`2fKT)&^>ZLn+xn?^BEFr?2;YmN64cK9FrUzpX6ZeMd`YN zu^g6bp(V{;O#^9=<*)6*nhHb6Uuv7eU#oQ?_mu)kQo!i>&tuC@kth~Jj&L{ zKkF>r(C(2B8|0sp<)2gKpVkC(mPyy0Er4jV8JV>u4uVqU+$H>(NfXz()F|W5&MtjD6Zm+VAaU9RWReY=47o3z)P8 zY>8z8hJb13Yd^L*G73z&hCe*OmaN~y+E-MJ>}4Gl(%AR1#TD)-JFS=1kKB%;3QI!$ zy{yYFhI`qj3ft26vg7UAt-b6_yLe77Yp{#o?`7xN#q)dFHoJInFT2DpUf#>DtVnoE zt1$$in~+JnFoD!!x_=d8={8KD+fhMxU>e#jM~Jgttc3M z6t_qZ*s8Hn8XkA~ezpU!?91cw>00@;QyL@pes*1~=|cB@_RHAA)9(H3hFG`D%lESz z<%6HdGco;yOW@_$+9u`x_jW|(g@rO>}7j;*{unk zvN-x73g{yYp?{!={)saB2d2<}9Yj>diKyiBRX{6OnL{Z;*2g*Ky=^l8PQI z8yRH>5@Y7e5Q@G;Hhl%bfFX<=V-?27Doh?rfUzc)YwvTR#D7?HY9OUl?GL%Xns{9`hHnO>+54?5v{gJ6_xj}j_p=(^LT6l%A@T5 zRC-*7v86vXxDtcJg4!A0M*rx3;v|Z5n zd}W)*e?Qs{uCNfHo8K20Doof9@@v%s?$Delw)MvtVCp=0<>gf zpOTHZ@=yy-0N7v*VZ$(j4aXc-jCwW-YuRX=#KxeLjYk(N#o6pAT*M~eN;VNYSs89( zlW+?w!|lwC9#)PA*kt^MRpMnf8-HbU@F6=I|7COVB|C z8h@I}7SUW*OUJRrw1_RGMpj2Buw`@#tEV7qpiOKgoy%6!#cT~-!VT ztc-=&G!|yFS%@9OHnBx)GizX5*a_?mc7HPa4r^y;FfTik`Pf;ki=EBRVP~=Lvvb%5 z?0f8|?ECC8b`HCOoy&HzAF`X+kJw#o8;i0F+5PMy_6WO}J;^R&&#<4cKd?*KpV;Nf z7+s7UYNVmsE845bqHFM^_8N_YiypwO+8<~fvgzLlX|IzXf)!zv_6GSe2v@Qd+JBqc zmC#7gE81IF3!TQ%!`j^bd^ zCXe~krySzoJ()qB^fhK7 zt4~*;LG3j>U7Or?4DHXW6iKX~9wn5WTmCgNp(UEt26a+wv!o@qmwK`EUZQ-S^vri6 zM?T47l)YHq!?tb52zL*ya`*7#9_ypf%d8%QtybFzXjZ-gEjuvFLS3^R<$tooqkOSM z#-qH>GEK`Yqqm|$R#kAPVq2a)`#Eyhb`-IzFos=?a&`@-v1>7tU5z>HI#jXiv5Nfy z$Fu9OhTQ;@-3ULs3EgZL&Sf{_e0B>iVzo=e z%2!xsaI<{kQNG%GJWXX1REMT0-{9_{vux)sZsHR?PJT=+?NvNV|FI0|Rdxm`ZjDpC zqy`iK>@F0udvFxnjVbJ2RI*;oVNukwJy^r`;#9T|t!yva*?t7r0e@^}`*8;Q70ze( z<1+Rju4a$mm+aTLojvC8Xzqw}{tgG{v!EB}{|~L1xhWiNiF33FOl8_57AqY*Oi5qd zvJ=^|SQ6!3@|W9)+&#P_;aE5r zGgrA;Pauc=4#U`!7=Oc_!dUhUCa`BQjXj6i>;=qcFQS&cgjMYKIDx%_Q`xHsv)2?8 z+}0f8Oo-S4$pkcLA7CvQYEh~E6>BXkhw;eB$^QaF=nIUcCR++MOA2j!knDznx8iu) zCEjkk#M6y=(kYJe@D61BfWDR+cl=>w#tqOjWQUeS-RzhON4J0`OaF_nGnSmo*V1R17ke^ZBG)+%dXAeTgjh@X|+2-qua#y$B@ zk)e#!*$&;=fx+cH?2`Dp4|4ZVlfB$MbW)UW+RNVDj@ko!%lZO-hLrvFd-<8`_Ve!p zd-!=PWUrWp@PG58ctyL9Z&}YP8u#*TmP(zpmtPX)S4zY@Y0alY0PIr~v;W{I_Bkf7 z|6vCE0>`nhP|v=`8V;E3Yi#6%Zq9KQ*WyN}9+R~H)BdiQa&~;x&vuBu0bZQ-KQtt- zqV^%)w}T0fZAykqWq#Zape)6{syxcCO^GGA0fT2ElYhG~j0?w_437^#T>D5J8ryMH zCZK&BAFkRKnk+d?d6fSmB}2sXkjV!-@MgvFW?6Uv?H~Q3yD=5r5M=Vgfzi=h^tO#| zI!I-^R3krkvsi-Cmh>Ee2cnJT9 zjcSo(mKDE`?B%z(duZm!M1;+IR7I5cx_hW%7zYJ)v`Kb#hxlxz2C5%|Zd+%lGpA^XzbTJF-UZfUe!nZ%8=iG6}eW_i&tDb6f)!KWmwdRM@{;#_5^&0jO@_pbrTKIKz^R_KnBMywD~B2?OPIsIdsv0%HIi_}ejgw|aY5gZQH$GsTj7 zqup-Gb+E%KQe3%?TKYsF#s|ZqOK|DxDf&rclF0$*w@=rDit83uEsdp~-^>4r5PcOL zHf85J%a?z-q%h;h`}!fShx{?$RWtdZE@&j503M$C2NQ4aF5~}9um)Pw=3T1xK(Hio zHC#%Xa(7H%-)eF@mVH8Sf7ghJek7oPsSam4Z)K~!wrZDsF!MmXA(m(DCjRQPYS4I#6)C{ z_8Xq@i*yAOB4ayw96pO{%e)`Ti3GK{xz8QDT_zNEO zLVKF^E`;?MQ;~j7n5N%9aL2 zUzj@6B-L;3cfRs_4epNRPL!{dOw!%i@?2mNwBUV<`w8|7YnQEvvW?OFQO(j$_b)L^ z6h2!NX!>f3eJjfz|3RqnRG2!zrn9PAjzVs^NOk|=N=x7 zx@){q3Ui`-7krg*Bvg7+6-`}6pWVZ6Yoo^{>^QpigyHoW@f2pVk-EICu91w-zn#35 z+vn7TNHXkYo_}z}JLWhVrw#C~L*naWEGloZX6KYzT}TACN92&U_W$iHIFoJ@+`oD> zWo=yNHQmin+ZAP zc@!%qiv)=SJQTTd1jUMt;tm(N@gC$yv4_<;_SGDAJv}0ZyY-REU-A$%we2JUQmma3 zNq1f5DLYT}gG=-r9;6wEb9Q&q56;6Y1E-FDWNxKUox43H6(kCP_xauL%R^;G7S)Z; z>$)GMxZn2s^+$@EN${n!Brt|s_?3049jI~T>e2Ua4?t%<@Lu0f|5l~Fy0DBHxr1aI zS=yNeF)gQ4&j!$$aDHD<{9#SfqUmKi6&XMp`HiP0#%4h89a_Tv1M!$o;Ir736S25)ljw?LU{XXM{s`pvn zlTBRWQK!Tt*~-a*swbPslyI!D8>msq;u*T|wwZMExq^QY%7Lx$2Wo0P*p1IIs2Iud-nEo zAjUrSJ2nXDPAekIbGv_OU~YmIczzpMV1-*I8yQ(38_<95C(wPSdMJWtfP>dJPN+!|fq*c|0C7O!|Ciz0fA`2Yi}9G!R)PSL^)LWU>>&VMJ`lJfBXwk~ zU%EuS;>ffl3S9;-ozdI%kozD8^VNJyI8n=d@v;)KK8fAg{DvFE>AYv(&cd*4y<*Y z^;uRTi}unDauQ%#jh<6c?Z?7fT49IG_OEcP3!ql>+R*0`<&TTUQTkHaseKFMhP#s6 z{8yCjqS!y+ak-U)f-eR>?9OboEQUO}RREmLe76B7WArF0)3$IAB`N@d--vmwkU z^FH%g8I%`L3=@ve#5rYSx-xIf=9jN&WQZi1qWvyvUpeP@jaApJwat9!n#JZCd6XPU-b#RU+t@6|A9&-m1n+fMMTA|r&h?kHn~LINhIP~iXTHUq&kf!5A}|=HJ3mZ= zX=whkS^xBFOW~3sOYEN~kNv8$9;uJyQOI^13DaG$Q--WNYfhR&+l)A8v(^8x4H?87Asvc1`Ykow)ipav)L)$V zOy5@44LwSLcPQj5JOB#aC6%`H6}El*k_2Rpsdl`vsBLw$sFogWkAiFS!F6qFyRecL z=;Z)-s#$Y1Fb#RXCTvovY%-Y88H7xbry3CSy(EzKkt%TzQu!wgD@PBs4{a-ItVdmI z?>PF$NuG+Nkf&AE#iAcf)K@x8?O)T$o6=%tTh#nuB3XFy0aV$G(EZ%j4lc_7&>L5D=;gP@op5d_2$< zo;Lx=1Z+wU63gl!0HGe5QUW^C)*V01Wx~5H>0Hjzmw<_Pa=);n&u5es=p*=l0~>m(zLe`qM;jtfQgAM+xh63*VHapMEPy^iz|MWZ`B_k z%OY=Y)79Nj3L8^Nl-Z{A)9h3druyfM!W9*>h??i9~HWYa^WBcqLh< z@qJ9&5BNy-7ooNmvYpu)+EzKIK>6lz6_Uf;UIy0ln&31$Lj9$(7bQ!fVQ($Ca;vu< zT><#N993OJCnjZ9ahH{(zx``50S`d82)XetYp5*`k1Ln$%gi=ZAeWuT;*X;|luL%? z)dbBU{@zjKFrjHqRzTKCD*bPwHAJkzxivK^Mgm&kzp4<)3VWtM^)2-dGcT#FZ9K-#EuEp};4^3sH!b1eiqChn zyb5<{`8Cs(@4HFC$LMzACTIROYESN)TQQ}g$Tv$T>)ffs&Slfwp%h+Vl3rfwVjo{; z^SD?*`iZz?3t(M%t^}bkS2*PnLC9pQ>#cg%w&wf0uP>8ljRb9*;k$$}CGaxd_;&d9 z8~hTHX62>v?lK)kNzeI_2* zdKgI!^{u9uRf-u{JV@d%QGHLEU=yNx?R7)*c@NAYS|pCz1?}oNbV#T(jiVT;=ya=m zjo$~D-vR1xB$Y+C``)1bI>fG`#vYBn!n)VQ%KQZa_w_lR{X+r;#ixgk4D+fz#H`Js zzUJ50LcYx4)XlbYahP17`_hI4UYFhwC5W+I@nWYHl(>D_rba~t0S@*HlW$3qBe2%z z5E7&vhqk{n83k7&M{75} zi@!la0=vlx?+hNrjip@i(*ZYZu33Kdx?OGC7JW}&ygt2U0?7{l?q5CUZhb(j4)|hX zxDR3|QG`26JQJ*&rcGKb`ZnChfX1D;o)iPa0Ed$x_%udr99ZTp-UO7d;NnwSB zlcxIxtG`Vwf;mkg|Bzqcr~sF&B+ zrnaXgMz{Z5)nd|`0kRg)l&l)4u6GRS=NsLblgBr!w*Z?F`b}xz4K=IaL7b~|F86>i z{&4t0mM}|MM%L7Q*J(Yc+1Oo9)3XJZT@~(HYF}rbFpOACUz#n$q#U!l2?SB=ZzTtK z%4mG!cy&d}9)*bm9vhLnR*22)GA+ah*|Kt6PP0;IuUVt`RNc+M1zJ*WCZfNx4pTr8 z;3c{h7x<-*YITyI69|{hNfEU^Vgry#2JTOB|In!L*Crbg%1=2q>EH2AV0Yj6wXIIW zE2YV~=qy07(bvi)HH8O1=vg0t<{ozxq5%eW{Y-o{Eo>Uxq_ZDC00#fmuzH|%3k!TO zmRW4NfK z`bn<%N;d}FOiu1cAo6E*Bhj#~5_9cW)x~_S;32dUGn%I|Fm#fmvGtd}fLF0!?Vv9z zOvjApZXzz}Q1d+TPi4|FjRxSro6~s;IkM{u;cN&uFg5j`!O|(FX6yaM%XC7R^jrVa zcT4nqSa5a1yUujM`Q~+e5VbSeYL=mJ!8ynTBVjB3?Sge>;?|wYd@589B8rdv7bp0v3o}3 z??iLJZuWG)V5E0nZ!+ziUqX`=>t~aMtV$agxe8xkCjQ-YNiVR=eFW#QxxKXTwkFtB zv%d??EdNR7^T@QHKN@@-EN_bCt_ znrKaGZGHk+QO&p@|CY!dajbbczC&C#^^TK1+C0Gj{et_JnQMxW!g})A+@gm&Vlm*_ zZFb_Fu|Uyo-nFTgJI6_yzQy#kA?5)_f}lay>W204j+BL1LS`l~#Sit4egD5-j47B) zUJPgmhzL-UJ{}3k!~>BaEw_WPgzd(Z7L@a33J0LD`Im^23e}`&w(Nn~8?ri7CP{>` z4n52o#XiK3uWgf@#2sF%-F|a{DA~>GI}eyUy(9i1=clYv?K|5&)BX;856a2OFsy`; z^L~`uYZ30kxcnhA&2{-AGJUpooAB}auNvaudR?4)ri3Cx9MPt41gmKfIa!xz$n_sW z^{2`5T~-ayD|?2Iqm?%(5cvoGgb6%BpEgdr6??_WN`Y;QVAZf4im8wric0zhk5r{2 zVc$)Qxyy9v8V@ZqV1hB{96zRa0m}47f5JQlyZ~xm%q8h_9&8foI^T3VV^P~j1^d^I z@$$A{k#o)en8Mk6P_|}ge)JrxT=Dpu^%KCgHBQcC&B_j5P_nwFX&<}1Z97LCU2MCH zLzY>bi+0fM*ok5RpEnr$@`k#(9{XH4l-nCw%(k8R!|uAS>hrWSD|YGBvNXSqHFLI* zYsU-YB@E8eNIr?M+B}KFg06YN1|??b&%76d_g+U=~O9eas&YjG|i#*$A zoKtJCar6<3QEvL7z7k4_2B!4#_yff7>z;0hg7)z)5Rg(fCeQRqcpMXk7=0!F6y14 z`SGO=k~%luzAkwxo+773@zvwQODKKKSlP>+V_eC0ga-(xbc<=?8v`MKW&tb(fKJcH zkJk3(-!zWnk0F9UHd^JGb3$AMYqasN{?G5WbY2|` zwGO7Bw0H$5^c$Ea49w#bcLCeuznd8hB>oLBFTcX61+#lPLkZrSU`2_#2O^RlHnPSo zg;ouC>7vQ)>ivOBNqSv`%2_!$fwcZ^tyG0EhZDh-fK~Lh^Re@*aqfmj!{D5?U?Nsk zQ?9`Ks=)HGtlF!h^Vc__a@?Jl4Asjt?y6jb4*fB?Kw6>GG`gnT{ZoJ#C`;{4F$&rK;d^M5vLjpP{b4815^9Jum@*p>xo!V{X@$v;+E}|@U!&*BoaRjSOnsgTcpKj{(pRsBEzRF+r*6#vt z{9xPleG%|PJ#B&@mvQy4f&yNp7IzETcajkjN0$hn4!s_~BiS#&TnR~B$&sKdh9GDW zN!)&xUCO$VrdUwo;E(Yq);j)WP9quIU6x(HksXO~Zx|bN^_F1h3n=bL=x0d9)2*Pp zGT|T3ccjXIW9%G>${C*z4eK5O^YEeElINO=Ez9`Ru+C~`gKZB5m4y;Xw2L4n)9i%U_R{Xx#P zB_xj%2giAfGM}lh6;%I z`5f?xdL4NwLN!ym8Nlf@AJRgjjdaP4HmlOn={rf|L6PR&j-k zzX(6TjC%hl?bi23C65rXhgyLIgJ`G?UdINjuZgz1|Cg9Y^KPqi0Sf^U3c9v2Bmw0$ zG7*4!Xw2|HAUrcn&~Rx7Ycm(QnHmMC$DJG&z$*P&S|ZD8Id7G+R=eAPX@O*!J%H3X zt9~|;q^)~H*^VF;Z?i%!29;;-vGquEZ2oB-9=}j}E+8Cm0XSCJTA$~VL@$JoZ{Q+4B`g7Ea$#|$qU&+{j7C>86{Si!)g+pAv?`1)Au;P8H3Wghd;&w zgj;%-z)NB!E9hDzYO-hb!@C0EG~4r!wI*xhG7qZSNbMSs&yy;A!bc4ze{d^JI_oTY z+Jg!F;CVA9UN&+do~CxJJi}`L&mVWF=|fNRJNLo_#F-;X!bGr-^8A;uuRvi z#5(w#MR^U@k`eJ7pc~~>AK!mo?;#27{Y$=% zuy6c3m%a7}%!|Bic!yl?w-Hb5dE??IxQok=Io)5Ylq|4m?zLa@DZsVT`{F3g z?kY@^xiH`Ffh*K_$}|h@@8SZBm58D5V>;VGO+*5LUF*cLt{~vu7WD;MCNAR-pvrFo zROvTiCqRsjgyQ*I^dE*lg0U8RQa|)jQIUElZ#c-DF2 zPHfpbt?O|*#Q8bVCGhm^SJFPqdg}fm{-w-9smLy#wJ0{Nh1_@D*A1oT|3;5u1a~Xc zU*5iE)@_VUj8=G=)>+wt-rbp~yQK%`@5I0_?(N1NuxL7ATWGWVe9jw-ti10`Xbn$= z`(iTXD!f_F`E7yrpfFA&Ct)Hm$VS3ykX`X^LTM6{Q+SP@0;@<7Gwp>I77#_@^jo0s z2UVgbOYgqLrIB(INa`4eKFh)9J+@@8^bFk{ooF%P1?Ij!of!X~ppF zkQVS3m~HjbiiNIk_^n$w!$AFt)pTF9yR5$@D8>M+kdin3Ys9)eiuu~Ny-(Dv3iCp# zBeA%^Bp3j=|1NR$FVm3y1dw*oNG!vTrN>UUga7zF!`T5VQVtCFFEf;NG-Rk&7|!S& zyXTiSjI42rbb=Z;@ne9lL2Kp?Hpr5Jm!*}3hDAFm%S=3tvd%=n)^(_gqwlE0v{s>V z2+^(Tl!=yV@9@0bk@Yyf_wvn{w(})if!$cl((4_X1q*SyxNhxk9w7h9^_opu|J#x$ zuF6_>zrIQIkeDruX#7Gwvd#$f zCBZjg%w)9908uD>(D+O++%Yii9r9kHh@|b~-xlO-X_A8i=2xS`pU|m}Mn9j_-V`vE z+rs2`K9)T=&hXty75ULiCg2%dP!+wI^rpl$rSXZJ4HWrFZ2<2xKPk@;1$1e%;(?nT z#qjO@$^{6+O$M64*&HsrzO!3;x;`+=cNEix!zV#*l2%uWSb?`RI^tEcN_3GEQJ%{R zxm@86QQ_`7Oyi4wB+v1(I=Apqcn(?*TbE3>F!sPoOCOogN!hsu{4Xd^7z)I^!aeb5kZga3SMJ z*?0jZrluOLJ)qPpM|WaYSc?hE)h%r>i$KH6@PP3t(b@lWiGsfCD?LRhH2iX+G%3|c zurrC+mzWXrhSNXG7tKbUJrW>v`X`KJ;f?>MV8_vHPx775A4N)x_Ipc zGb<9mMKe#57XX?G{3T@i5PT4qTtNu))DF#r335ICj>FlYKu7#-dY>S@DXOe9B9{bx} z$rHk+m)hbg(}@Iy6GFs5e;q@~*@Ug{%U984WB|40n&pIqGP{+_;eC{>SDn4SM{1TQ zHiXLcHr{~BdXttzKNBJuAn#}L#Z6&T%+eMrHI%57culM*eGi1){rjIZ7&HOPn7jQt z+(zl%23Xz&+$K}v4yPEY^G=@5;vF+`K;6c zHZa7=h`R%gbqg6gK4gDr5ZJWG1Qt0is236cEGR!JwmUTeD5b1V`PvUEC8y5(>Rp=7 zTpWE|pgw^-0}ceC!kF4b{#e)ohSa!ANC^hG;Q@=1DG47Z4bjt-V}9g1U3^|>{=DlL zwO_r*naZSvfPDiI-w_UZ9I`(<2mp4>3yon`-i>uSM$0{M&R2=}XS6HqD+7ndB04_& z)H8j9p!LSw9q;s{8;G@aQ~%1_g=O*2P;~qf{1TWZ+Jly~YSc^pT~rW-+F9d-%(;~> zgTzoX@uq_OnC(XPsrKm~*6VjMG_W;9AZj05nmB7n$~>UNnhsLXzYkOVrf+6#RG=TGX4rrMY7_xT4BHwVz20w6%VyZ_ zL#ux)O~G~A7raIH*||Lg-62i^!Cd5;*2Kmy9Cv>FQ%0=IiF>w<2)j?TtLp(5K7jzw zM^C`ZZHY0&1o(m-Q;zURp^yv;IQwEBmw}p$b2~H^;KzjVPV1_ zhdl>uPXp-lWHbnCuM~HKnT#qCZu6ZO!OmOQi<-lK+ISz8)+;$Flqhf>(~AtIJBnYN zkRsUF2S4$F(`;}6A|S?iYIJqQubg&T`wI-zRC}#5=jt38&SCpl9G;p^o7f-UlZ{== z>YZpDfXAf)HnGR0*QsM6SK1kM7uWRUVJ;mO+W;{_EPlC9@gO1bkFzxXw1q#DZ+8s4vwp3SKl!P*FPq%C6@uA2=8)0GSq ztxi*XnflZb9Fc`K#Qk=_l)VJpqU!Vpe(<9r1FU210#E7S+>{A!eYV|&tsYK<3vo3O zKOkv{Xat>hH|rjuaKac~rg=jo8NuF&FKhwVX|mn^HD$r|@UAVBc4KT{`0ZDc{c4YV zpZa4Mp$uuU%o{EE^kb=k-cDNOw8$r1b?VL{6Q5rp{l}v4T5@=rv^1yYEkD@)k1(E@ zIXu7h?*0J|R|$m-*x9iXfN z1H>SGKuE6j#dv7UK10xMr^lh#^k*Ws@MJ^>S3Jas{kovo!uRqjvaB&jVQc4^-T{TZ zW0HOlEg})Jfv?n+7}fS;T$P^82ElIXZP5(iZ@JFD7CE27c?S#@T4LfAs7nB()l}GsGK&>rp>6)X;j+GSm`8e*8SBH~O?*Rr};#Dl9w-lEc6A`gP>tXaKZ}caem=xVj7IC&XUUJx#|2vUrR#Nu|;)ES7>POwRz2dV6Y0xL@N82q{BQ`MV67W98#BPA-z zk*0&6(6#&TXbh0%jfYXFWe(YcLrwLtuw(BJ1AEGrfPTO1PtY7}*%Tvxwcxz6nG*C+ z|7=0ora~Xfr3CMqljUxsUTJ?qB>p>_u&g5hsQlChNkEVw0+O^01OgEI4^vdow22u$ zNX*m>1{CCOMhB{KafSv=;s|TYMMf~!u;bg0Us98!?|SXPWBui=Wgl7@s9tfDcWAx- z0XrQVIVzI+k!YNFmcIj`$^jA?UrqVsUWP32MU zKe@kiGKiu4W(r_2eIJL^jN*}jRfXbwhT6h`+qlprdZsLpA`74K&BRJI6RP>YEHwHZ#JY6x%KO5y*3p zN=EE?{R@>y^Z=m9?o1FeSss#dA%1NxC*TBoBO_$YXrL?d#b_8DN*_3XP|=wkr6t_G zr4jvn!K-^OQ68G9$SKFpG};eO=Al_U(KzQ1n^((1nAUbVsu|EKUg*qw zrfW30P0VR28tyGO)XgwTd>;~Sl-{HdR7^+FDqRwtZcd zq>yOu1#sD|pmN=09VNW2c3MtbplRKFy$@;BOcnf*1fdSc(g>Q!2o?rDKa)_;hnxOT zGl&8+Rslv~bgi>jfy!1Y93O-<2AA3~7lpLQt=nDpY*6=Jq&AsEu2h}!PlkZE!}yb_ z9(8O{8X;lksC8$gX3K6-y3CIzW>i;QW_h-_5$yqzzVUZS16sA$5NFr+h>m5a(*kk9`*B}l5gBKZnA_=7*x@NZrGhe{T<-oZQaMGEAc6-{t?iVm6q6?ShY<(yQ z32;zCzrR7-SORLl^dVYBu=qLTa|D?*rB%m;n|xWxlsNusgv!4Xz+rDu{_+KpHVjZ= zTk2cm!yArak}g{(`Fic+r`r%JVGs@n&I?a12PMh`Z|N){n~(6FKhEtgl=uSf9-?;o%svX zK~2*2_WS>06F=P4gOT}}Td|Zy8HwWQuXW8eS13zvUHaKcinGM|wdbeJ{u+SYHcVj- zYLF@F#_sB%Cw~>0Hg|(<0sX0G;6a|3(X#^f=&xRiq0VK+XA&95JC)mM)py&D02ocCQ(^@7rz*Ncu|6;1DCo9; zWevH!WiR14D|E`1D0C}`S0V~-DE{1MOV&KoZK`D}fl+ z#TWh=3i3~Wh;H=ZPH zNwOXN85-kR`QFuRNrW9=la-MD)fP9Cbj1EFT|3=0Q?l{S)&c+_3W{q8sKYEMEwC~^|<^sSZPk$e;<0?2LrAeyT zU3d->quVxvhZob|{C8~u6N?iFY;JSoSvQ;|!d=}GOt2h#@&6|Ax|)T$MAt^{kn&>eI670C6ipxsquDjAa5P)??zElX?i$ zZSKsgPc!#8FLX|C$hz9t#~!c$)yR0Jf;Ub+@onnF5FpBDV_{HGV+T^Rm!BC%B520V z91bA!r4riJS&ErzcdeI#g_&2MN9kOu2_f9XTvGArM)vG$jAtTTwddePbb25F@b|8m z?+xczU}okaE63=u`>t3tuf$rW;y$Ed3Dt$)VfWWQ$+_U=?G)Ga%f-rV0^noc34-=| zos>H9`%J1dpE~p~-yMq~mq$gxrqOzyWdeZQBSUwh{aYe2f#D>1Tx>`Vvu_ej&6ua= zJWGFVMtCmTRyo0HAlD%zP$XciN$7b&-}#KiN;P78AuC^-alvMw(Otu?iwSTI zG#)KTu-4a^A6H?FH*AiD`dkcE==nb_haN?|hc_Z3$QCRu{uy!$eVDV7Gs;|PFX*{xj_c7_R($Lf8{!f| zt-qW0M{srX)aBFmh`6r(Fb6%Rw?a2kmCqh@vnxRVdpovY zeogsVb~NoVvGe-n&yBDwf*(`671VY)GZL?H_D(6K>X9reOLe?LPV`t6Z>^y%Z? z0i`pa$tVQOUnFs5JHE&&-t{KU+B=Eg7q2S<{pN5Hgupr!^l8fi-MZ9n7IKWI#`ihP znvU>S*nbus86dSOjn(0HR7Y_n=xj$KA8gQxo)!34ldpFHsgy8etJ%oEd7+H$>4^8r z3`sHT!7uHsO{17=;y3gl|9qy0z!aVody7u9kXBLs60X~7raT?X_``r>8??1PZtM3Z zJNF#luWTily+kaeWJ?~&m0Tylj<#m^dS!&6F;9<;5`a~Q{G>Nk-;djcU1c9P5&XrvMH2qO#e8hG+xn!On>lPsh-P*Q)?j5mw` zGH|G3#FU-8E0lN&IOLVoulmCuO#nG!=rQSwIA0Z2Z~_EpD6}txfx0M^+OTJS>7kd4 zVrNavF2FY54)4wO6L#;@n7Ae_&O+bLUx_={&R>Dc+0Oqc3n4EA!5(h}u{;yTV8I@z zeI@eD5&ETSm)UV!X~GPdPi=t3V1StPi;k1Y?z%TLd_^x#Grt0YsY~F`zMTnogc!Fu z7Un6LZ#r3U(mGke4K+_|Tu=BtP!|5cA_!9kF@O##y4DxqA_Q1D$eB;91&@3~cF0;A zu9x01)YyCeeIj1cms#aJr z3$WEc5GJgM-S$-YOH}6w}3J1?DwgQiy z0}W3*_pYS{Bdrxm`8r-g&qhxu2*{t&1RSycM*K#x86FXbj^;yQ179({1?)(4m(Zc} zcR39E-45hAiV8+V}wmABckm zUc5_9=cng-i*t*Rrl;%TKgBMUtA%M-qOI%tSJp1=L+gJ5ub<*q#1qEcFdYZt;t=d1-AK~5kP}znIO=JqCtW_9NzvdHla57`XC|#oyo2rlD(VU>!Q6u5f~5y@ zHPw0aCJyi0yPPOM%;_1;H+4!(ay>)21k`zY*Yr`)d8}087LOVO!BS|rkYp2L^Qyh=0WaU$Mqn`+$ml2Gef3VdeTVf#yx+NZhq|H;8oRQE|4^Y zjigkn3jmWB!oX+%`9ji@6MypLrfbu1Ar>Pn zw>#o`ER}zz1uH$}%wn`e3;-~A@R#n=x?Jb5x5V?#?P8N2MRLJ1{OdSzSVfcPwME;M z;EjkTZN5tDOjAM6aW0kv+ag1^sS@R0JK$*HQkp;lq7mBIU=0z<`p%>?f2z7yv4-3Z zAddU*fMs9aV9u0&Rf#?<)w6;l1*J7iez0|>jm!HZVX2@IJRuZ1r7C`qdtz6ggwp~^ zr}7N$Hpdssure{T_*Z0Hb^7h-kmk9TXgi?2DqlO$bTb>P-jC#6k2PqiY+Hp^TRRDG z;)MR5iDdM+CBW5KZW4dxOUE@|oSW9A$lZaMVr8!Rko)QI5= zmQsHhajNp#{a0E`2LXE{b%e21kK7DP3Tf(uX_Yk421!_bv)~TW3!80KQwCp;oyD_cQOA5LAfR#zJ_BZb<`huTW`0xq zYQEuT-zL;8hf?on$%d|cF1uy_4XrjI1TAIP{TsAuw^H9Hos7zKwvb0oht05!s-XC> zQAR3uvkU&0bVG5v9t|~e#4#z=E7wuTUD=1*fJSAZ{P34Vgz-)5`1yR`xT&}xY8_nu zL-?s`2nM3CUIb=U#Le9ODcEt~pZ?(oS4f`(G__!{YLGbk) zSq~E8vRFp+c$-sU@UE)>dMSu26(D=BEY^B$cj4X6$KMZXvS!*^(E!ismjrG%Iku1G z$Bx}-d~--Pv{zOv&3<4Ks}l;4Xc&(I{QdC|q3`^VPNL6bcpMh&p8y!6`u$)e1m9}3 zD076TLIKqFMaMH`-u9ucfmd6QzI!};n+A0H_r|j%9nyu8>RzVqla>Yqo=LxQV#6=? zvsp%nSp7UO5lQguV_Pk&+jK?tod3hsCw0YV8!jt}Z|ta>vubj?6n>m(=b_cWypE;Y z4vdn-i1uaWRH;76nF0{mOIA1Ii}Rcf#m0JD@$Fx3xDi0Zl+vT)z0dM^O}+uX73q7DbOcPjR6HVqy{AQlFyMde~AR6a^j!h zZ%M;u#9s?rIM|W z^XsY$ue?U8Z1(0llS9oM1y(Q3F5f0;o02r^$9Rpj>PHSexj$kGT(k9`Z0Dl~Gt#-F9erFRnNYqo;q4AxMG{P(9Qvms z`XPTsW(ilHyZt;Y0&*a`L?An7Jm83o-eyRk_&(rIO7LAu_?AB^y40GqL=EG9!kidK zZCYpwkVkovF-*;<`gH}|V*KdhLFP3%%;UdNo-ppeAuHmD5^ZrHdP8lP{@r^~YGhlT4e#AlXM?QZ7?#21? zsl_W`!%yVmXF~hgZd$;`i^xTE?ll(jwvs^_fZ)T7ZFep>c1t9^wv}xcP3@7YVq}D{ z#=?R(le5l)pOX_WC-zSm3c;#|P%^=#R^_C<;L;?RathpWMuI}UbXU>cD+nhoGDmR} z$Z*pF{0G~`@czQ$Pt-&Gd_{uZb-LsCB*I6UH$8}E@H#Un`;>H~P7Wi1D%v}Z3H5=B z@jqcb(5Ruq`!lRBf+&oCku*E|nJc0L^mM(jRx#ek(l*onm|{Sc4x90XZsK#Z6L3TY z5%j*|1^v~#;=rM(4E`8pAS&KX>wpU~*&P7~=wHS$xBOKf8e;=Yelv?1W zXLRZC-dw71OmqDy@cZ1EZ`P!9In>Bvy*_7WEBfjcB@=o;{Un9q-&DnnC_@ivb=-8tt=?C&TDg@w8DX`AdPhSxo)&h^!6IdZ`;T_*1)>(-+ttZ-+&9ohe-j zg?CC=1sXE5bDeel0C=nMrLTmZP{h-iR+h&WFQLhMmh!*XBkDKcql#)l{LhO2hp4j* zimMCOH4cLX5AJRuxVyVcAh^3b3?YMSaMv)nyTjn_?k>Rz!Qt|qQ>X5qU8`#U+qKr} z-fzGCwCpij?5utV+qWCgq#f2k(R+YSnk+d$beQfh6Ia*ISReMY?37slb*OGZW#!VJ7&Y< zs(Uzuvxx*IJuFibE3rqcUhkkC-X=3$DVPb2g0t%^$JS5>Om1#C@#6^r#d~};@WRj4 zp|f*mSEIsneSHkf=tCXDAYcvlg{;d6iol1}rH>Gl?aYE2d6;;(z?PR8n?Ar6zlPx{ z95u!^0ub2A$MMC7DAT(`R;p^SS>0vlcy*)~8{@}5Pp_*>-ej}DcZW8i!*-w4;K4Z7 z%dx;MbGPY5N>?Qp<@Fu!DI={p?4t7#%GAdXLAAZygq?n7`z|GI2oxq)Kyl>7`9c=I zMBSBeoPX?OmF1w|JjD6MAf)!zXDI!F4ZqHwndFmg;C@6rii`l#h&EjjlGX3F-;KT) z+}v3;lpRzdoAksWv^%;wq@f~FBI=(tjRVkC3xVC=6D={gx%l3tcvo7DF`Alq*#~n& z*KEqU=%s~DTvM?p8-Y@*Ip!Dzy{%l3U!K4IXa=)+m)iSCN5tsehT4s1oCRMT(;R+1 z0$Hr&To8P?SrLXDiqisnI`m|Cn0YF{7%8fxC~4$!>7`&~){QCW9H1s*O0OoR{PcgJ zMxB?bqYNTJL*`3vK3aym{TqC7q6f)Ah>Nn=;JhFhFTFlZUjk0BQ&IPi`_=H@l4i{- zRERDwK&c72x`h6ZVP+U>*X+YEqXE8X8`rub5@#izprQ{H$9d^maB1NVQR*e5ncC+X zP6-yNcBK~wFS#HE9K&Epz`Tb4bS4n}Tt)ulj_Z#Nb$p4QkrYg(-QrTbXq{yM2>^Az z!YaP!U&b98kh-SaG5{NZx>(^v@gsoi&)P9`K4RiAgd_<0SX?A%Z2bpJL&Y_Uf732wk?CM1zM;%dx!UXw+KN{%3RGkFK;of+hh1?&N9rGIhO%YWE^+2@A3nXw{4u z1<02Jjia2b8jv-&0`<$u57u&L7?*d}WEzn@pZ~d326uM7UQj9r(o^mUEHSY=%bg8Q z+M4$|3QA$#58M^AT|s>h-wj9$MC)X|0hkMmZ+SRiw!TIU$1qcR8DsKsL5zGK6utn} z9u&xc5v-K=sC#4xjT$lARpEJU90Y$0sVRqn#zOMDz6gM%eo~7X0vb#k1iAl~Y(WXj zg{V!1)c@#zey5KR8a2kCsg)r(lK{+QFm4-Y_gEkrxIr)V1&sk()`P}ST1KIl{Cn<@ z)Vh&Lqt=D4-Ik7ySQ%WKf%`#(YJT&ET58Yp)`@4jTq|;sq(5pFpEnY4gl1_fCV+t< zG*WSrAg*mM1@*tO)is`v|MQBjBA`GYnW?1;&R`CDX(8y(w;m6n?F>MR8hBk}oPb)zz;fp+u5wL`@I(cYR$!~8Lty@v;lAT>VI zj3o6_ni(xH*};iO3MVAjj!1wTYy-=J(fl_=)Pd(5%WyQTk}+BHhpeMDQlw;;rkP(u zc1;dieZ9?dwJ1z*WdEma8HxrXI-BnlKN|MeI@bA)Hr=K+UT>?9fKc}j9a15-Kfh%z zm7rL8Ep#E9S`=>o*{LG+$qyXT-Md6yaCB-PA)Y`0R&rO*;c?51P^)^LVR4|(T9qy( zj>C!k7PAZvD9lw%sEz$OF&^EuHM>bfR8$^uH>!Ky6cczu-VJO3OAEV9kyfhwGc^gU zFe728E*^pm<|$^>3=kX=WjVOT!slx`=M&m|Idk_ypi{3Jh`2GS#sSw15IY^5^MA4T zROl51rhuC_b{#ftt{gL^_#p?ik(B2!W}Tke1HElZopptYhx0PZOw}Qo8@&}ikWJ%% zub3J?6=>wT-LvE!xCrb_0*xy+hiN6wyR`arQBZ!G|K4>tQ0&SjU3@W1MAk2&zD@{} z$WOHN^NYAW`8+8Z*STQx)We&~YepsJ2?7TK+luXNv6!;_2ACkTJn46q1xx2$auaNe zpOQ7O&l}sV9Cnj=B9uak#C8jeb)NGz2Ejl0TT!{|cqi@9LQ3olaR@}vq9>k-1>Hxw z2<$#1Pq1L?9dHzf{G2oC)Ic8l6$fe0cYd2*m@A~BG->`DX^FTG&ybr-xbmK7Y{xVL zT$im*_g~b0vxppcSRc(~{$T2F(`*?96s0^5yeT*|Y8b{zy5R{3A5q`FDjbQ2t z>9ekKMT^vmWkiZ%R%Kx8F8J1Ae+L8uXY}5Zc>)CoE2w%JVg8Jo%%kXD)@!aeKLmX$ zbtbVs1c~z))yX=^yJp&AuD)frUOpjqJQ97jw5j^cdEVDz^Y}`6h@h0x`bbuj@{aij zPb=8;4wGr_A?}Atq`2#~$bo0)nb?Yiz0~fU3A*4 zcHK4q=Gd2Xu;LH6urqq*cv?R>!wQv+%4@~p+p~NT&!$1|a++GX{GcD)O})R}U4C?h z4N+5uGlmzjfp~ZJsRE3a7~2{vD}fF|rWSD+U(!-eCNK+DPGU@`*(%7>AxP?=#=6e( zla!rhaDJ=G_qcOyrSsZyEhUF7a}`gApIQxfWqNNF{en{sO&jXzdiFC-f|fo+w0?D? z-$|MOd=&a}u1B#E{m4d?zOk84i{>K46OBOpegl ztxb-sNz&AHaC;%qnFN@K87KM~$P~hPFLK-Rb;w6z>o#rfj6DTnbK!cO@8CC{{>2aM z(3&keq`^D3m1ghrGwgCXS)S>s6^9md$;zP^pyqW}Hpa*#$P2xG_AHHj)Ora*imh+H z_u~j*xZt_CiI07X-iFy!2ReTZX}%_btkgtf6|9X@MOzd{O({@U8)rBdSK=4|7aIF4 z0>Eg$*c~YBTR+T>rN*H(^Q2irn~aU>nT^7dZIWr{dAgmoyQ{vXdQixmkh_{C!auA0 z5eH4Dyjg?HVkmw3j@8)kI!HtgMp(8pqi8xh9B1D*8XAP$;P$cK{$v8FEPEHx)6p=f zF$N~MqQo+Y(JviMUhVJ%VKBTTacoz znLB{a!%I$3$Ua2}SXZDBSe1@<86QS8=l+m0aL_&6yh8)&uG3HDh6EZGAdT_W>>Fnih<&k3(D@GFB=c#1Y zPoQfNTV2Z*NJ}8|{c0@c$;6|7J zBK)*N$$JjWMXmdUNjm&X{+>cyEpjKs3W*kFNrQ~iAobwH-PfBLelbp1@9-?dXtQ0x?dqK7?Ryp0{Sc3cVPmA~`3V#N1zJ)O{FP2B>Gj{i# z%=@FmDvXgTtSX#^XMnSjKO5JC$ouk%r$48RQni9lzQ&{ss6 zOD;v#mu*~s0$+;t@A-@muqHbXML+eZF`(l`38`fN^OwW%#1C4}wS;qi_}8_5yR_N( zW7}jo5LQ#fM1ZeZe!Fzpbi{IkGd@%{I3NTg1w#yw$4rTja25N+C7WF;q2}h%0X8h# z`<)T7@FBsWF1Scf^#2(yAt;JnT2L&A9T9;I-=%_LOn|xx&kr)`2*Xb6W9W!Otun>B zZ3%}TH^!{jg{VOJ&l>k5TtGo=%|ZHtpD|6YnI%I8_Tm6hGQ!l%q;3Yfg5RWcfr688 z7cea`pg2FO9u|a_a_EZ*C@+?tPTcJ(#1`V}U)_G>9Wl@3IYKW0zz?SqE_z^ZGvHlR zyK;wXOM8J(`N>ncawo~jNZXEgZ*5DA&cLm2Pjx1SE6LaJ-8 zv}(X;u?gGO<{V*|_K|m^CODb9KIk^~ksXK5gqf7pd|3nFVLNo}WgMT09YJm>L$@>t zZ4y{(wM$I~~c9d|ng)_|(VLiI(TlY#g`{qAKu9d$`yhyGhsj;>n4PtPA%D7^rG*D(-8873aC;Ng zc?o7+ANs;K$WI{L8?n#(vyV}#5vlYC*8$VW&rrrvp`VuYk>eQ^7iigD^OC-@d~5X& zKURd}bB;(o$N2k41pVLqazA)Th594gB&SbR8wP*4!ZXeIQ_0&TP@7qQo2`-qzyJSw*pE?2 zQ?ywswWl$ry>muWL=6e*TTco$5kad>0vPc;LRbGR;lFyAyvXdOvePq1#{ZVXs{Pj1 z-l8{~=J;e}#*nESV8C;p{#2U>S+^aRJ~>Al-$`EYjDRm3L3}TaA^1<6{d31M!E7(# z4s3;kXTY-S$x$l9Ye0nFSkns=sOvi71}Xu6I$quk!v z$!Y~3R4y%pYx~pNr^Am(Qd9j8pX`eUMLK#JyY?KhLK$PvZ;RiAmR4#MFR&(Yl(Z{d zmul>D+qugLCTfF+-~9Q zB?ChqsoGeF^N}}k!lVB2`U>@(9IHxQuCXoq`tmQ}ue7x2mF#O3=dozJG#wQ?;)I{C zfyg`VbO?X|tqbhBJ?w$bZ=X38F_gLPlG>KLzHUv+^ifk__$9X)Di;gtGlxzP3wwoiE|7(zs{I z^c(c&U?c8Cg0EzH`rVZh?)7 z#uhrSItbK}-C?h?Zpj$bPovuB=PHrGx7-XS-f&o58nkE@=3>@&KfOS6DY)%a2YOo> zt}lH?0uo&cUIN|B3o3RHc48!$5+EMySbv$Z7IL}ffL-aMkUXz`*mBtx!N8=$*(>gy zdBbYBYJ6Cla$An>3s=Y=5*Dtt8CV@;P&?+LRAYEgIcboWKRQ;rcXc|t3EQuuQ)r*I zXBG1GNL`!He$vTIWq$CR<(OCEz(YKR-P_m^fP~c8q0`cmcFVJ9T5>!CKdv?t#}d}k zX|4-!;RfkeNN)CDa+@gcN`{HscZ&!XuRwHS^LM1E0zZ+0VHvK#Y8&)}C#rA4rZL}N zNyT!HE#sgTcmGDPQ>eM{-SX|^W*ch0{do@n9jTPuDtn018Q6-rUTGY80-L2~)?$r4 zVFV_ds4D&@9jZFWq@5>G%dcTp$&}XGtw~MO`L1Dt+kP|(8=L03A2-5Y?hhRn)1#6u zC<-0$CMCw27SbF>)#XWqW(KZ1%xPI+RNhG zJaa%%Y(=2}Ry?~gK?f11V!_}*DRT3*^w^rVcbVXTE-m-JiocYlQf+GyMz3nZU)M7piL4ry~SAO#*$%ne?_L2nesZ%WvrnYlL_eNJX{T z_Z$>W7#%L_jG6e$IA2BD^xcIZBKv+!_Kc5$s#ae~+B8?rAIcaY7vlG&r;}`(6~3hi z>Rv3Uo%kbat%u1nzI8!Eq;SN7gcwOtIiAOKvI zKl;3-yE=C)zKDm}KhTsI=b%i3^%|x@f{`8v~ z~W^;bH%B#jo6VM^-x#)ME?*2qLflQ>%gqb2iYOC2==_v_f-Cu zSX99)mHw4wzt;VF?KL2&&Hgn#cXYt*wN+BtuHFo9)kXUWi=9wi(W>Z+89SjG`h>jE zpao|caYk~N;;^+M|KFc@>weG|uTWkLJuLA5#r6ZJX5wvOR8NCGs7*<+$D6qg5~Hp9 zy-c8AfO+GYH(FEKcyC+TnORF2`=_q5idZzQ6>LGRWQSe-vO1?df$7jAXUyu7NYr@A zKTE*4H9v)6P{n$61+fm%Giw*!dtmS-EN__b3lxaV_W@HFx7RP+=b<(%ce@xW5P=*X z!WkHAM2ql7@_$h|1$&9q@*^q_LQ|yv8Uu1Qi%gg`zyfsv-oy(5@2~fSm$vTubry16 z@ih$z9Y|~V9fOi74jtqxgD@*8iS&gV#S7aT1YbFr^pttc9L0GPf_?q--yfpDtSVkv6TSdhVz98?S4bTjZk0t1&h+dz2fp|dyv%DH7^ z?LgpG0V6iJ6cF zfFsI6>6#78xC|+#peD$u^Am%c=vVR9?ciBHcEV}dE4pS<^O>X~B9O&*$~5(q3?wNJ zmJD`OuwFiDP>()MAz%U|>dM1$mxO6SD>Ggbdzvxef@&FB2L)3rCC#*oR5ZeBp{SyV z>A;q+D_C+`zf8qQgmwVLYoQ=G%Fk8>W}jh}eaEeRtyPNn*7jAp#hdjtEX+M7@Cc05qri6K0PW(CDmyNi`*MNS9l7I+<3xWYuwH6V z+kVd_ClOoUth8jwwZ9DSvqg0rN~gr2 z@);$w;;L#VBhdjtMaj3o<(RTs-g@!xWrH|<=pqygjs!w22^irVQB-w5@$#EWeZDma zkoB!6b+Z36{*ph=eL!soIRz7Z1!ms51@(o&9`^+T$daxpE;3j3`e~BznM>npVkLw3 zGKiav24(UvsA=%(;Y%DDdqQPI$qG7H2a!DLhnJa5*orl9;|qHO&(u+AY~=ANvp8aQ zib8V;Ct*>8c5El#p?cSFB9^geEUc#iMYQ#<`2Z#O`84GPwKGBjgir5Sz(hR(v}Bu< zaJ>s71!;NwVRO9V-VGkcJ@RHx56vZn1@BR3!4^IXy*5kN1_^fIQ8B^8cwxex#ujDB z9lK*s44*Qi>L?P;45+F$JOvGmazug&U$#4BL3}9GNxfpm5ISJG_E$1`;H3q=S-wSS z@VsNGDlLB^J%0lYK7FmVp;K}X zR0Kf5)J(-Oj1UK@oIuz%i<6N+xA3p!Mv~>fDxjPV26K0B;pCS1u^FAnmpZoetiHvs zl4DMo4(4H5pb0o=e=oE7s^s2%{=h+?vONVjpsn{j0o#^RjZacS;Q8`7j4}fJ_xVG= zjCdyy**`K5sy5IA6*PmKvruku3HAuYJZoCm8D!xNWXE_Tije|0hsJ-~X29KkGG+_Y z%Nfb}bC=WO%?QVo71u6ZY(1G$;_Cl+W^9D zC0zwaJ6(GM4H3Gxjk$(#m@I0hjm0A}^BrEk@{0- zfKnfm>~$oeZLmgN5A_{$Yd+v=jC7v_P$dZVj9|RsH=(+sF6F$n2Jf$VK+_coco~GB zhtd}k2}u`yTqdE}0JusM8X*jjPuI;@fz*3k9m@10@8fGRzTpukv=A{M^WNq4CpfPx zJrJW|8Mq1gH2eSvl&2?DACGQ48>x;1zR?l9kFVekrQ=3?RjTlihH~09qIt=T z&fWVAx{(_doCmqiB9T#gq4Qg~5`w0Wbl3x9wlLP^nFm9%SWVq>LGR@A2cZe0eR>*L z9~%w%K0K3}7;6EL}msv)jg`sq)f*H$b=ZhQkq&DB)sa)N@SheYb3BQT! zmf7vzI(jNarY}xnT84X4Fmgs+bDm+N;4h45PJKNs0Bo3}8;9Xx-!q#{7DY*pAu*xg zZ76RTn<8r>U?~>hf^u3T>vL2K&HUGK%z#z&Ieg9ZK1b=6lrwxF539y#tQR3$1MGvW zXMR*$_OH~yWSZ8p%StwAvk3C-)aAwhN^{ItmV8Uw=JJ8KoP_%bHIR5 z3YO4xC8~gnD)HEp=2h@XMzYiy}mRL7Kv#$FZMa1dVf#(p*IKm0| z541{|aS`9|Vys%_+C|>Z{;tm>xlT-(;7L|N=lx#6JaDOKNbAREP1LL3u=|pplaomH zIenbbf6T~y|Lt3fY69%nqWr4>g}z5nDBlt(Mdg>n{f$Vz-lP3hW$Ua=J5c>yEPClo zJ|9Dl4AS2ZDxcCpZ=-(-P`oWe05r{SCv-}{Q62fWXQPvBWh-QSpWS z@rwc&Ix?V!lG5cmSe2I1~uR zHD3zMFRFE1KO-QH;90j93}B7hAJ5*wmhL#C>&CS(1ExU3x6fz7tISqI4moehR+4dy z$O*(VoR;piICJ~yE#`;o3CDY&$;XsTJp^@ei(U3%2|!dfHxZJE!Ol%FCqkru?FuC+&Iil)Ga@7KI-;Bmm&wv8fS`@Gs=o- zwf|PI0p+1`8R5-|&hy8y0hBOCC5$S1u%wbR_K-h-R2GUGK?OqMuF^y1u9PSEz+CnZ zUd40`)yGgIWFbP?}O^?`(m_eS}#7T%p5X4x{JFR;3e z>2y>`VtCzz@MpWQF*fB7R2!6N@+YX7r!%8xvY8NFD6G@!Fol{M#GzWwv_bg9HaIvd z5)?M({Uirb8Rdc~=LiXNA_Ew1j0z<)Gq#vdis}qNOm+P$N_Y`zxFTC3{&JTfZet20 zNt4y%=?-kxAFbTHv6G)McH=l%g@OmSdE1P7X7d7Er3iIAZVNg8UCY=Jk{zyZ1p77C zOi?foHd^<1SohxP{v-;)8QYPDl|M0ErQX-eOtxbAE=~rehFA>y4fZp)6^kdbA;q$x zfUZ3Suq~KHJl1Nax%z+_ftK9d7th{k#n0k08AA6ULM+yL@UyT&jGBA!C1SXHXkCi z{O9eYT|#_{_WivDEKq>p2@jv7ftn1a-1H={z z#>nXBjuZNoBJCq?5B;R?!<^qS;oMbg*rVs(cA?m!eNct6VgR4VRkK5m}tp zZs?8i#F^o4!y(;C;BVQKBB3_$BShK$g%NMv4nm|hU{ZfKUepQO#uRJMDZj(ObHxVc z_U!dqUC{;6#e7*tG(r{r`6cQnHiT}<7)EyQq}1iFkL&{s-d>dTU}6i@Nmhrh6H`J& z`hc^E2CbMinP6~_8fioM+`|~aT{z?@F7FF(?C0(f*j}sa(XPaYazF<@@zA5qi$}Ac zM!=uB2k0IARsBD?gIldv#Nql~74$JcpkOd#tp1+do|VduQO@9(@5^q>N<%8${=|*k zDy7NY2-%ES?@y$+q~Lfh92C1NFmMn2K~O6U6HPW zVFM3@lf6qb!AG^ETcUJb5sn=}fr6hxoy?G`MTfkcVY|ZCt{E?S@2~L#$x$1Cc!ur; zv8;t-J7Pqvzgd|_|wWm4KR_Oy)=sY$d~QbiB}S~Kor9z z%9bm?4%k%Z`=f2VWEb3K%dyf#O-SXk>nVPjzW%AsQRc}JrK=F%#VaO^HyW-t$=DSk z;k6k>00!xBiHkXcwgt_1DV=GcBL+-KF=>^IwxtVXEi+#4@S4#reQVIP`0hL4v+`cC za@OW4PCNJgfXBK=>{jaaJ^#?16S%bEAALs-9eVrm!^zTyig{tZxb-W7{53Y`E?UF3 z)r#r1cs)ioQ7a3RFVT0}=yi(Ij!YuwgS9J&)LlbArfpB@slrcEwc|6Otegf7uu^HR zfLtlhug+ja`USq@foAlIiFvSEEpBUH^QB1dP2q$w>8c~&aCOhyDYb8E==nSYD*_RD7WkFmgcln9Zu zbHBs}TRK(Y5IoF|{fr;L#juvUF$4cN7wdCRYh1*k9Uu})a1Q5!GGVV{AszV+Q~cLo z5>31cO=-g7qvjt1je)<5>#>uI_;@Of{n#ls-m|*$?QpUN29DDQBfx^SD^02Jm{s&T z;!zD0hX8LWDA0)tZEDB_{R_FE{QjpRzbGK5id<7|7OZIIoG1u1Hj@-Z0h z=`QYYv-K!&itj$hZ?g61LPZ3>olI20Fb7T=XdOv7A}tkHgvzpLjh>#8p=cMwz*Tmd zva($I`_8&LV>N-@^OHwuDKtx&{1v8Uv-1*RQtJ)hPKq?O*wjAy*aKwn&O5I8=fMg0Fya&b!{EaqOvDEr6n#QQUp~BGk!~q z8+DuPX}u51<`SnA|0(~J7DCb>s9=bw8SL?WC4GDJL5;x-uM7zd)>eLvYrc#c%eG7^ zu8~%gX236l^fJ7(tw>KoA9ZfE#F{@JSj7!nJtlACE4VxGqntZT)%Ke-FvSvNTeTu6 zE>&6V9>`3t$nlp|p?3DrmS(}>cVQ<49b&9IY(*xc8s{Lz@1|!=eWboHTC%6mxQ&!D z8ixRhR@~8$Z>Tnk;JZ08$tP1l!i}t=!ByD!jas3to*hcMm7uP~fl8L*3ZIDt%#2m) z&B?jrOYtBui7ow>i8!w*A65D%`ga?@gI;J(uP_-C?{o6dcwm5^N^FQACY_uv4OMU= zz>U2&d#{Trzkg!T^GzhbOr&VAp`-|{WF5`@9;_*|sx%tJDpGHxF zw6Z_NlPgX^DmdV;4ao={YrA`Dus0J(fFe4Y+KjTF~22VP8QB`-Br`D)bT% zni2*G*5v`W*4XUdmKEM~VJt~xFr0#P#^w8NVY(uHRQV#IM{0ty?xd;=GZgMmc2Bc# zRfl7eJ^c?D#Ucpr+)jl+PT#{Zm}DJJ%U^L2z9pV*>5L13W6=W`HRxlZJW_prQnEIg zy0gd5I!N>K;4s(Ecf#4?f{my04PL2vKBg0M*ZvL0JLF5><0qb63OK{DA z8=AX?XjGJ2gN7VHf{n-vIax7K-r>B-?$kKuJn;O}dsm1eYN~M*Ty}dxYos5jv zpSGq-tLn|gjZPon+{y-vK9YW?*ZF%dCsx1KLlQ`3tc7q1<224+49N#Tr5rv_I>7kx z7sD--9euUYij({6TCXdQD{Q*U?H1gq-_+#c@#rFCBHbne)-7|Bo|P|PNjX%TLY08T ztQY#nIxp7xB;}OqNynynV&_9NSxCp42vc<5xWD3|^u+;%45B-SvV?qO*hL&^lTJd5 z&IwPo$GfuSM`Qn);OvfN?XiGjhK9d>9;?PEqph`<)0eKs(`cWy>@FLEAQ`JbHShev z>Y^|sbNtK~I!RAf>Ywk5AMU%%i0%RGvU26#80cfpUS2XI#eP~ol4w_Fi zXH%0~10z7ALe~`^<0o#F*lr2>vhUqpeUC%0QeQ3-uD|=oVQdQzdkTXH8a)ydzgkga z^$6joI9EqwUL1{fh9lj;;dz-m;3v9}d70Po*=!@W7(rm!N&7zmJoa=uNxi}Vf z^B!u<fxz*h2gOUjRI(}TvU9U_te7%z z>G?cX23HcM6W==q-Wvd}(}KL8NZl zJ&%_N)r2iQ+Iz&zDJHFksq$mYZLzN8R$;g(*#7bPmJ@>q`sfs0z`K@(nzL2)GAMY*<#84t`sp14lUj z!d*e5%fqFIydng@pveewXc>j36n>ftB3t} z+K>`nS_*|**so#|IOck&E%OM^57c%*Pq(S`Rjv0e=L!&&v#vdDCZTH0Fd*RQK_)N`b1yB&A8R6|E;)9rpTW`!%gTGlfN>;L00`s}Wy~_|OAD+8Gw3v-|L@=r)G6LBbY#Z0J0{)-|_E9}`DDt?d(rw&!JWck;K(8toB^_H{ zNOVc+UX&WocXpQ7HU#VvW;>jbp6USp2=!gm8cVgDH4nGsIMP&$A0V^ z6D)20l~<0M!abj! z0FX@%9M)@)^9{xCI08ATxpM>kE8Fqi^I}BrvI{{E&CH+Qx(V|x=RR3H89n`~d9Spc zt1k5kvlwS%{vizQG`{foi-m7+ z4z;36TeY+RXSTlVXbpDHLRi#bIy*9^S2$fVAX+v)r@%BW(qN+ zNpSk-U&dECFi*=j3s2VBrnN~j5PIMfib)YK`@+n%n^EQJQGlFBv1zHV`!KhpQrvCL zH=x7nkr|-dtb=B5?Il=@@aQj3`rBk;k-XR}t>XNTV^0i7Nxyg({d>}h(O=elb_VqC z?U+iL5E!pghI=^mPxpN9zfOdFbGJWoFoFWw8b10b3(_Li%v3D1d@lRMh&Le^w6vJIMcP9N!8_J(50|#gC>kQXtWvX z^(rFSyw)v~-rl4yS`axE=Iu7z*)Vii?g6E=do@=CB%~UYV%%X9$-0f>hc1%~VILiP zB^YrR5Ls)*e)3Sa%3`P!D{xz!R^VqW27q-V0ambmc)Sj2ySji#%0+_x;^L{Pv z9y((PZ=^ySzi@fYH=V0y0Aw>FSN)<4@mbFO=B*S7w~Vz&Ut7d(XF3t~Tol2x7PMlA z>L^Dr5-9NXxO7cf*9Y};4^r;29gwSK>dVQzyN3pUtA^5t5T}6TMW{wo`(4ha%Uv{Z0h8s0@*gL%sI zY64Yx!+p2N#=aWtrOA}PL} z4LBgUO!E&IU}_$&;t;l?cEfEntX5hB6lL(e?V-`Z;yS?)jJSB8N(S%qdIm~0-;v9L zi_$uGGi~VJKrjP7?e|h4K%YkhKdtPZdFWuE&Zz8-dGhw9m!mA)dr$^jLBXne4TnSO z&8VQG4G2q#jO}cDf`$ulHjXZCV*jEC+E(GSlhO5cr_t)-R=0gAApvT-0pLB0Vzxh9 zh^l@6o9Rek`;S6_3FJR^yf>!#_3;?(E{?4GF${*cwOzo~R?<`sC{FM9huRWjl(x(B z9vm%3R9~YI^(WE+I#cDskn0ZJ=Tr@^++OUot)0rBF3T4+f4!VoQumi?f`FO)1m??| z^-J+Lt_i04z{=$Bof(?Ul*GV&LE8)+4BJmp=gep(U9j2Z#D;SnS!_;NGf8E>O1E`@ z4C2Pej6+KZOc<>d(54vN8c}18wUAGyYnzdZb^3|NB&+3wTD(%i|JVzh0mcS!49d|Z z8`)+klM^4IlAJ14f^BF_{%Jz4>*ST@kRgg*{<9J$N^>^=+Av@JDw}WIz5RO|?cmaM zRiXTP8L0wr>B$wf0-Y!Ck`s!pGCxcPHsGLY)G@q_??(;LT0B@H3C>m<>ySTbQ)I4O z?<<9L)z;GjGu`-go{JL~*BH9Yv|@?-In|%Aqz^%%Y;yg?0K~>L*F>vgD39b$aH6T{ zu+*QJpd(xd%C!)e%Oq982ZM*s=RwEfJDvI#o@h}?`}Nf~n@i@NjmH7m_gxhADsyiM{+>>z_G9ylPnj&46^{A4)QVMDFS`gS};;EknCxsd+etqUAr*G542A zYQM|#CA50*9NW|ED`}iTD{bWH=2tZS%bc(*eIAb_#0J)h-CC`SX%8-%z@Fj^tY^A> zzNK@Kd#83l7b{bzhUq(P)+yg>IFLjdNS}T4%ofq9qU&SdeMt#NcL(-Ksig6Yuel2U zr!`6i$&yIKLbf;6?29vn!a=4$BIsd+DzYcQ*GJ#hWMhN+@f7MuzOWTl&<@4c1S1NK z)U#(#6NH=@ncbrd_x>5fx?dS4UZrP%0%PeN-e4I3rn!KA^9kGHg3iv2btiJ1Imjo_%t5dtDEi z^EcDI7_t2--a!3Rt8}a^sgZ5XP=3XhKU{Few#aJ-wwCKRxk?S8SQm!b8j|wz&nC>Q zIz+OvZlc)@-gA=*Yj1od-8?#(4AjkCj%;$KPpQ06o|o{a14vrB{TR{6l2w zaI@>L?$d}s(#YX)3fE>)tG`@r6TKY-1N1dKuXg2^5^DsvhZAL^V`e`29z~M(yRll2 z9JeG2_=DMfEq?fgRKSO~@s|#h7w_(|_JqP|D1Xjy`8KGi6LHQtDP6J8$a*O#&2_WM z7Bp+L>-rt13>|r#==TRN&_z>L;i!C)WEK>g9agM->UO`6)f{xb$Cl zXV7LPSszgF2WhZkoHtD8CH!B*SA2ADm{(Nx*LB!%HI@ZF(Oij~E5BcuFJ5Uk%B5IQ z(r@~zM$$I{n*M{GIE;m}CXD5T;1df?K1B<(K22^#Eg+R5wk zZd!vkA~12skm`b8CT+ASh}?v4Z6G@~To67FmN%kDRfbMrSrB)Dti?ry=|T>`^=^Um{4J$3re>8|RkBYW+&*Shz06GMqI(=icr+m2y@eDSWH z@E(t}VGg-5XOT*Cag?PQjW|FZp`F=~{j0R$_n$ zyJZIJ<5Ppl+TRaIM(X?`AZ)0&snq2Wscc=#Pa~y`jmj-Y9Q{nk;{%%GpUmUY2a798E{c(QtjKb`WJFo|C**4S(~2|zpG+BVpg z7?4iq{F;!B>?VscE-v(y`QC}s(L%JSHt&AdAN`7_Z>fK`g#?5YZ1tVsIG9k0EDN3) zD6LR>Q67OB4$pi)oT&pkS5ivTi4oP`+URWLQD|RFa=60v z?a}S7W4)b}vmW?kxOac|qi-qcr(X)eujbMSNy|wlUy$eL=2X;~Wtv*X9BSlQP2k*1Uydy{wQ#;VO|evP0&7(ILgcsY{%F867Q zMtxht^C^rZE>eEh&ejjeGmM=11CQK$dmHVWY6bEJBpU43|KW(7Ir+*kmSOeqmmyK?OOP`@ClL629xqF1}<3aNN{H`D3QvD+WXh@Y_uYU%q_f$5=#_X?)UPMk2dDkSFtlq)_ zogAmlJ&)DBcuT4>11K@>0TK%bK?N0H(v*hkYC8tx-U=V%FHI)+{(|HrAYsxCG1?6g ztc?M(SLneVqWUdEF6eh*%!@o!I7i|)P(;M#r>X&AJ<0B~zDwxqEzH1#BK5T z^fnwLXALaG>d9sU)0Bi3ITFCE z=ixTW#);#DU24wONHt!D88FR z%GU2Akhs|k%x*8)#&wXp)m;ZKUujoCDVi_o6wB5}>^+@&34@^9rmNIHpSrvvh58cb zelxG>`X001*V%3FtYhe^YY5aebkc2Vsr0o!$*?~`X>u!Bea>FR2kI8spS;+gd}_Mu zvOghhy2EI?V{N)?UiE_5@$WTi`<>Kh114)NG8b-6#Vu~lQqI+z?x=wnFL3_mn3pH% zkD6l}fcI;xZI%0Pe|9`r@;{*-xpv**BhYyeMLC|2!IK_RvTVMt{F+@n_3=E8K1c%7x7QzI`>F!b` zEv-j7WLgcdE{wUUU1*VC>0JJQ2N{-<_T{HXCHSZ;rC2@FourGF_ZQHb%l_NdfkPK` zif2D5wchPcV@ZKII-ES?SM01CvE8GHaa=A-@3Dy+*?dL*HDxIPg`L?m2dy)p}plF7%S?z4hhEf zHA^kKD3GJMM*wh*EidI$pg=VcCKn#lBbGZPM2~nMZR=KQ@C!9NkbjN=P;))7I`5=5 zDg;C_OBwVONwv0EXKSit(iGgitWz=V2&~k}_Wa;P?KuaBJ01&g_1LBLdVh2;|M-wc zH2NNkql1jv-;Zgp5uq>wAg$eFcGn zfl-5gTf=Q?E^De;o=?6^?)R?%x#3X>=*4r8l?#g^ysh>!r?iij;U}ugcI)m+Mb*S zr#a1q5_C!k!lEaJBiYA2DtxauX$t7n1DCIRnooF6q#ankJ)SIX`s?}_P#NWmk($Qm zR}))=#L0M5$$G`{*C>#nBn%yDl}tzwf!O7CpzVNi_m73;<4))&E9pwEaAB4DXbZe0 z15I>t%0HD6xJ7C7JffrP=8opX4O8XrjLp{hiB5L42=YA0r7_%9Q%gDT>0V=w(C1_E z%!8g%u5{nX6JJ)=!}a5fAbK6so~6<1Y)V#w$2=QdT>K=_>5N{!p=;cNJ?59Rp4jKwHSQ+$5s zJbL&8mGD_m4Xvs+*kk3w_T~VgRNrr8dHG#%r;<7oG{CEvs{0SYb0lc9Eb{H=J~FjW zuP0SUC(}3cz|Rpq6hDNQk+kryI=(5HWZAR`S?gH@`p59cR4Dz$xY$w^fJUT;W-!#= z5B?AoBVYdiJdqc5dgzUmTpwK0{~84#)}JP}02i0cq)8Wy2fP8n3z-EOV+4^U+$0#7 zR3p6V?+P?EDmvOU!r!ZFLRCMPwHf#_FiN#eoR2hkALn&6lsFGJq-3Y%k`v{}uLKAe5dSwh^xHQ4+r6jN^Tu(UIfHQhkPafC3V z-usd&c$d4TXvQLDu8N!J9yAt6+7=%U-=eKfF$w(-*=5}k4D_6(Xri@m#<3|NVk-9RFMPpcBh*gg%^-*{9X9@Sl!r9nIFw6*4Mybz6RK2Bo{EYoXIeXD5I z>GZ7gVjV|t<`HD&8g7G3!XBj8!spA8%yTOZAH?eQ&AXRC#2Havb^V zsRY(SDoK2)-72e`9)=g>f=Ed#G(m4! z%6^e8zMHcxYb!QsgtTPl{G1Dc=HTt;T$hpliG(9D`SOOwI|ub>32(0)ZD}9=4Ym44q)@yaqISI#uNe0Svsi9 zKe6c@O@hZRgHhN$9PAS2z*o~Dd(lkXa`jUUtMYqAE#q4h58yRWt7tw*MvwWCj1P9W`>d_lb0~!;<}2|{ zQtYxFfa0Ka6}^wRG8Qdt4s0_kxHX2Q0ru#(quY{N2hMfaTgZE&iadqPIy2OD7<&O9 z1(*hU%jtY>?@d9fE|jD$nqLU)U50PRq7f4hkZ2e22$i>b|NRi00v>&5082=8W}khvfZQ(9l_bH$Ty$NE7`95?ZzljJ#@pAlf#pfR{M9*mKZ z@(oGTr(gzP-eQH7D#%GIT*D+yCx6~?rDr`R4?A$N-2~JSU+{M&jz4gDUtD*E3U)2+ z{JRL{A2R@X4ck@>&OdqlB=#HXH@v*Tc{TPsz4jqX@o4Vit~;d zHi*m>>K^j#(=lL61Od1v3TBH+0^xg4iG^ z#HZ~f8ZL!U^pNfpGrk*o)NId!3BKjj#>AiXMK2pFtq=8iNDO&3CZc(?>qi?iNmZ^p z2XCM3CJCgIZGR{P#7s_)`MP)Icwb~3yx+{#LA74h!b&s`+^!{(g6KEvD%F^90n z3~Ya0;SoZQ{BR`~Xr)@Ew}?jrz@ArhYAd{=U_CX8HbiE7j9c*-m(gKLIj|q8R2N%*= z|fnbejxMnc&R(ozvw-yV&M`t?P(!c{g(R21MA2t>>l%FP4Jjtzj@>! zc|{)2k=8B_Nkx6^2-eh5sF#5U)+u(%vnL+>OqdcL3#x%gAYb`O4Fcxzf2?l=T)2>W zw+B==tM5kaz}MnOA9Do*AlWMe17CA=Z^$X?a&I_I%>dvjBN#l=7D4M$KH}1#RM!LU z+Um^bYE*|=r_W6o>1$ss!1{m03WDFM>ouMhRh5wO28k?{7S0!(P``=N5|k&tSyDwIz# zjz!*bkzUbmbDUyEKL&a`Q*J!Jef4-N+|upW1`%=?H6x+~srEX~IJF~o1`CCV{fgBZ z5h=ZS^`rg^j+*D!TQfYGD55}4__*^JWtrJCPJ#yVmcTlbHK*S*UDYYn>uR~UYW9dg zYf_iiPk;KM@eN9Lgxmd;85w^_YuP=oDfOy48{#G<_&Zujj>`;QN{F;B=u}l~R7y7t zg6w*0E}F!vSUh^=*Zo5-&5<3ZuQc|~qLDto=10%*$Ih6emHpQ@ZwWe>3<*(!x56> z^j!(G8}`Dv`g|iHJLONg!Db9$I>v2L18FEnuR^Y=9PT})&VEFIy?75%QyiS)H>&g= zL!%`Vku(t$R|-_O97~r-E??~jkLm*3P2|2Hio_g0;tEt@14&5O5u@pe=z8R6q?Xj$ zHuWaA6@D9&uKO!)tKth(?yx@6Zyh7Wll3|41#bi?6HZ-ni|A_GL-rHO;uYySK?yv> zy*TjY2Rpin#t=#(IF^3jM@k|?6dMiGs#csRJhDLsWJA&lopw2I#6}Y*!RW#1Z@si4 zCrUj|@#Kxwn1mhEyHsxX>_jEZ@};cTo>e2$>Nbpwq)GK9N#U$A{ikHZ__IcNre77& zG;CMW6W`Qk4)%1zhiH=w7q7l%gDCq7H519|-RS3&G@4TCcsk3@8`=YtZ?|N z3e8J-0i$xVsxtK)JH%EnXx|UOV_+1aSEB}A`Y^BXV^ngFiTw8AJ{9@>@2_Bxn($5L z=4WtmKe)7&k}Qm7?(*?xX_2_^+2>{$A@WYtU=pY$I9S;4ot~p?WEqpWZXIGoD^Y!(%fgONbf_b&WmEbmr15d&G%oT3Kvvh z(z{kS>?Vbs$JyqcKD;$E9Wt*PY|6qy11C))t{e=UJvs~#BM$|J( z9|5W}Q5&=`kN}d=UkJG>OIcGWe8o}j93(<2#kLe7KDHr$ z57_)Hl|Qjq-S)5R5^a9&{esPQ(GgCn_Z-Vc)Blp}O-T$MhK#hZkup7JV266*Z+RHC z`Q>gh-WbKcIp}itYj$=&XLL%PVQ@De7sd!Lkb0q}tvYT!>L*YUOQ~rb+D&)Z211fj z_iwF#wXr(d$=0;s(75Gh>20?CEU+lpMxKqjQ{S#AzY_t?KZ<-nubxS{sMXEjL(1fa z2}0R>3+VbB`uqBCQLM-#fj>|zv2JT~vxexsqI?jI4+jhqKY7Rbzgtz3*$}p_KB$yZ zDNdm>|6Nl7vHwr5q^_*`QJ{RAh_9xoph%Vxv$eD7hDo&RSF@qfA;WUbi!5^rZW=vL z(rar;S?-YC8iynCxf1rha^O-uS%L%k?>IPTwk^-p7i$g4nFA-EIxl<<*6P|o|85RH zwA$7B{y}I2+;E^%yv@+y?fU3`jA<_1R3tPsE zY(ek3bY)@qC%{!(Do+!hyuqu)A0g2;k*Gb=1#DB&D2aR0kU00Mgi+ivsJ96&1lEDn z>OyZk`UesN5e+ESvIEHz@0&MFMXHFL1*hrA^s44N9F{)0U@(Y?UMA46WDdseb3^^% zPVG4X$I-;W`~f}-YZ8oSRj3T@X1|D&QLZ9;x)9=A1xLxE{MKyk=jtEEDUl1_qOsWIupvmM4jqesP}dIiFsdXZ}d zdE=(yfEia2pGJ7~WnAD%>W`>x4YYF0<;T7re0z*4K5YV0)H(ihud*lks^!J8MLHg` z$OqVqH{!L1$hkkw6Js#jzf0yo9j0B}P&Ox0Lmm4!q3$vFPs{QD;;CIu-p3oYa2ta- zO7?7}h6^-?wo?Z=IN&)aUN^{h$1)~^B~yL#NSBw$^!V^(aL)pr5U>ZJlv->B(1o5! z26d~IpsPP4Vf$~tLL73RHUaO5-6H(r=tjOFo=~d3nAn#bu?Bmyue?y8YZxD0SO6Ld zO_Dwn<@mdH!-Xn)NzT|D{P{Zu2v;VvUr(YvFmBG+?CsOxCj+n0;iojoRM@xfFGz~J zW6r(LXsQd7&{^uyyybuCs(uN1;K-(Vkei`8-HrOg5XpYq5QSE293xMZUK@keXL>Uy z-X6Co^23j%Bb3Er;q+`5$k`U`Muy^+gL-6&lFLm)-ZzOf!sD!oR2-M2CJ23s0ubfw zAwCjjGzT7mJ_@7%2aYH1Iu0oKI1@?u_5Hs`bV_$B{Qs_!ZrT%wh|BH^}J z3fz&F<*=W5k$GYH@Tcqj5o2l3F9BS{Gis+%ih#<(tC*C=lcA{kJ_pCocr$k-m+^PD zhE5(>u?`})n9L@&bWgWv?P8dNIGw*dfZ=vNs0})7mJ3!5+C>bmIi;#e*dt>zjMR#* z*x;4Hmf>DefE5#;^$eg=p=sRB3-a#=C#LFiGjFk`ufg_YlKddoaR(?h*EDa*?DgKehB!Y>D_aCJrSAycd^c4Y123=rEk1ULpD|ofovR zWd55=S2l)h2+0 z6hzd2N3Z5}A^~c`-Ll4WiXaF4GgKCNFP{PXR6UGYo!?03F@8D4Hwg^?#&Ff7KnKM z@y$}heLLt58W7*Ljh_HP+%>9Xbs<#1`)rDPL^MrWb%k|(&TYE;QF|L{<8;<>OTd{u>%JYeD~Ug> zsHf;xwPO2IDaFp~_DCG>)+5AS+5^>6f&l`hWv+#0?^Lql=KoMG6M{;&1Tpkkz-$@q z(7DO^PkXFlBltErC1=a-zpI%k*%|-)ZH?DgoHhDrkCmJTB_X)b1cc|JtTWZ%=cgJ; zjgdK-k`22)Os))8E;SS@O0H!Y4u~Ty%1+trIsiTI95h{Y zljBp;7l-eT?9##$*t5B+9rnjvaGTqr^AkQPROk~?4Oo>cAELOnlSn!Y5D}4po~x?t z5Q9wrW~>ka3Ve^B7&5G6#7|jR6N5&6@u(@}LOO3M+;i8(X!veL1(&glkE5!_>0QL> z%qCQ@&a-utw7wSffw<32*BM_G^3gjmN;}c6@76U6bayi^|B78RUAz8u9WZCnB4rjlI7D@+*Ci=*^DKDL2RsvgUPGpHi>M=~RqwnFDTZ9Q9jg z=!)!>DZs`x{V`^r3yY4b{ub2LGDBEe{fEDY<0u^?!BmsRv(uBP)M*r>ka8)@60^-~ zP*KqKh+=&82oTgVm`5NsfcheN4Y|$c7)}_X5NW{*=COwz!LN$C|@8>O?47 zJ2%R|~P(c5tU8m}EYCr832N@whWB_Vs1N}Y9dZzeQxH)my)MQfoDB*S?R$W-4` zJ0)};BUOKrEt{hkIs|khMj@G-mvo)KJ)dm+djP#(DMBGV`XZQsd4DP3YUWL|m^RvE zNwEw^!h@ZY8$60Z0ptLVD1oEKAnxQ}G_(!4Gij!kanFA`YnnT%Ue_&<%}nVygZ_v!cPj0xa2L%Y$a z1X5&LJw*UO`=-wjHDny8uuF++bh51t$9G>8gtKsKfjvho3YJbvCZkHvDX* zYGyYH?cj3^zPjE3FQs1DmcAaP&wc)62|}GDS+t^WFa(&XfI)=VIH&vPNU5I4J&jWD zYqO4qLMl!+TGd$eEq~KRZ{^~pfS-7(LUJGJq;V649sZ4dn~i%qvF^7j_B*!Jh$B!4rFSf zT8jgraJFoPIYP7`89H_Z#8Oy$);fIKbm*jc6xaD+m=)^wghP{>{J^nr$Bfm9M!%m3 zkVjjW%>$86fKGwi)OR(Afj1k!V}epxf8Hw7Di39*123`bg2#$tXFHe1YW3`AD%8BNJS&8ixw zuz7Ktjd+fQ%b!N{#6;-Td5u}uDhL4ik2R6a7OQZr0!vR$ z$z4{igb|At%~e@^iNf|P0^4~@33PLclBAbxX8%S8uKn#0XGsEe$>ue9>{|IJ6hWzK zZ|abb5s;iWi08z|C$yER7H7t*f%|7Qy6ZV$`}GN5lMf$Z8f~3shsxBuogAf33&BSB zS_x+TyI)c2435H8YClhSVfa$Co&fepgDV?8=$moQFX2Q%qVdIl{n6oWQ`$-_!!01Y zVOXd%(?JzJGx_-+^HyE$pScnX}x<0B3=J zVFArrz6h)x+0p<>zT|~OvC6@Um|X@75n+`6x`b!rKI*!J!i3W6#=-4%06~qJd^Lgk zz3A|YytDWo?J@}!3Ha0v15cAVm;$wNybd8te$61BCyc88YLw|Os2ETku$oJF?}zev zs@xLCP^jP&J^(95_&eK`I?1*m%{~cc`C?b^qx)lj*QL0_-Tp)B8}@9+xVPY6Xb9!l zzq0ET2W6jyE}uQPHQZi9Wsq)8E3ezT_p8?h-hfiSJRgK;4buDC6$^KdMklmor-n4! ztkWEs5%i;3y*WH2=;5mLl6W78Df(F4fcvKg6L%Q2EIa>OUrEMq;z)o*!L% zoRn!6wEv3ISRn5ISyLuXD}0z44uIgWZ8MP{72#pv-zgaEkgc{0|JElaVq4~a=ca|w z;Uj|YuDFBK=kLE4o%c#RLXFC{RPz2$5*~{ivKQkFn=BA-h7&PGQW@cFgqh! zGPQ{$4gTRFKpu(sLpYr+389V+G2^~(pNBTzych&+=e%lL4uJ{bSskBQq$bKDlKf?$ zhaqv(JM?n{Lt_PJ!tjr>S%t{>0eYw74jXU7cou(FVatYw)0%oudB1{zYtVE^T-Y@- zpt+`AaDWQ~>sa93M5P(D^$d}#HF0P4U4v^hsfpPPlgwk*Bw;lGc7AXV_lTfJHNl=9@r;N zwR+U_H@M}!sU3t^HJ7s_9qL(Vlxo{S`0XONaEb{6VePT(tND}iMv@%&GEKIesWp4b zOO8t!Ywr);a$~M(*c&0x0Q>J{?kSLH8-2JSiVM)1vIfuza)$iXs&jXp07wXZ*t3`bJUj4(ergs*nHGKMR* zK=0WX@^v9a!oO-sS~~wxd{ND5Y_NWXz1nbIu5@Ug(KX*-erLV8Flk!*uwdl=(pwZ@ zCDGj`F`u#5$~j2nkge_j5K=yoQ;vA?39eQ#AEhhz51E4O+|-saYW=8j>f9|y$FqP= zJuP?ZqBE>Jiu#B3f7f7}v;-UTDa>Lpq$y0N-~L~|2SW)w0jMIu!5u>!b0BB6So#p8 zgRcWaAC4~+rY>A$ZATt-3!a%3GXQHQtTW@arfFN4L*MB>E#UY;2__D*CdfmLXY+fF zWvpd+A8<}~OpcL&-tKw*edlCTN%;`xatBOHli+Rk*R%wr#N==MWo@kGlZSFA@4__x zOz7&Nig!D7f*O`E2b_o95WYZ;kvL2nLWd2`tRB9g(gXB|TjS&5G-$LhSeJK5^OVlk zyd-Gm)Q1p$$df)fu^c+Do3DprETq#JO|upUy(r)yH8Ot9n|{rqxIo7SOV4ww&ym{F zc;*MqK*9|@Jbu%=K(e-jRrMAUu&lpnB>M2UT3n`7f;zou5%zNG@%c2M7s2s%^C#l3 zbF!;3CZeg8JY&J}RUeZ%jeZDeUf-ay_%H{ng?_Pa@^arRZpc_fW;yWnR7Mm4&XFC~ zGJpQr#Jyafqcx91>Oe`gKNC03rK9P*i3^}lxECwW-XCawL-7S&nFgUCXl|DJ_C?9F z{V5j)5nfHhkBAbN2`#xmYHQ?HrJ3_o?4tQqih;31Oxtbep~j1Y;5*tc;FI94f#xl1 zG-sC)kV3OG+~t~X4cV^Jmydb(CY1m(b_1ISDa2(Ojak0*KPryzNKh8+w=Qwn<@gCd zt06u0-b0|l=F6~)2M~~}FX49@Cy7do{K5rlLP57l@`>#2TzV58Sg8suc!k&r!sfn2_!X^gr?GBofo}+NLl^Dcq zl9@!HYG@lLlp6HH5Xcll22Tm~05t}cYv`*4>x1Yr+6}?W8PRc1a4&{q-5MFI|#8I-WK_X;{#kf9G`cXgOm^2F=@_cfM^CpLjBSsQqHnDvv%p%(viX-mBvM4yWmor5<|toUI$a z(}u67I7`ws502y=-yUkfpWzL+%iA;Rvz!t-vrB#b^~a2`Hy^V$w|U>YLVO9JZv1Gx zxo8X?fBfG8i%ZhJAM#N&8A$1=X5;veLK748e`c%Gc5fd&^?A-Weea81IjRz?^baBr z$Jwn6ixqDXCb*bEp7DdogOkotBwR|(NGK>?ZYZbNmlpUT@%A5dBb8l~8wX>iRB6&H+az5N|Jt80CpHc$I__6&{&d{yfNcKo zqjr95>-xkN5o2Wp)|OyP4AssPV#1bBpEmtYj9|+e;2lNmQisOwH3o(i*20ez|BR>f z;-AGvPW!{?0Uv=?6;&^`Ho$u|!Q4llK3xvCr!ZIr(jLG-UK5LlQcqItu5%_$Ze@M> z4WGrxH@StedNe%P_(hMbu^*yw3F=PQnp41^F4Tu*9AQ7?8ORH8H182WH=l~6Iupu> z3y1X{?`ssZeg6eyowoQQFQRT*X*Sq9@axQ+&s=v{Ya0rnt}84@3diz|C0^otTo7tx z_mo<+jNFt`Q2{;%!jDaS9!N7W>rtmY@-o=-4%yDzWVjk@odkXWy+&;&9Fz{s**Ct8e!Ii0QBmtgz@`G;jL$=+4h%!nKKU#hl> zfBDVhl~gx%{P*@~gcG9ow6^3FWtR?X=9@XZw)&rVH1g7zDDh==)jUbfCkD-lbgPq;h_o>xB*u+q!o^vkz+pk@R?YrO{1nXNVPL1+@!A9f+g_b8 z*O2I}!|!rq!mR`FA)vO%zXlmfY2LlSR zws$KZQNi9eE(ZA;wd;YE3hk2?4Ti~1`eI-wE;_z0&05nNo|;!#R%q-_S4HZnQ=zjR zgsghspg8D97#psyFxD!-n!aWaD_=e-_ieu(dGkPn+E{|da!EUv3i*PM0e#|n+c^aM z!&Q$~x-`NRY93^*H)|v2J*HGlj(ovg>6h%~lr%fZ&a)BnfKiNcw=-f7q(emZgi%t( z;;Ndz`jE_*hKjqCQ7)BGdWeI6SW&0~Q{v$JyiJr<&-iG)8{!;+PmzC1-JVE^NCuF> zv~grg;3S926gqexwZW)I+@4i4aZwe{QBp$>FVTtaLC~qtiFJ_uxz4QAy*+23#u`gO zbmtQ|I^$AWWy+a7aYe5^8g1xM2YGd`!)6ESBcpW)y7O7X&1mxob7fV{vE_^mOnew0x0;YU9U>8AO+6rC|0| z9ekHzOG;)CZ0tiXhCc3TDzsDf_aycSQQE|Bh)+gq{K;AP{iW3e!O$@8yuBIq!Nx;q z5cF{AD`FO`H&`2b_l-u3t3Y5d+)9zE!cuW|h%?&r8JY-H`iH4Z;k?=Cf|z+Bf2}O4 zpBR_B#oQVRXP`9eZk@yoev~*4k57ua`&efp17}8#sT}qEL-dB2Z4TS-_DAN0k*!y` zLGnlLUl+1KjN}~5BfBr(T6dm`q9w0zdqCt2HH9quHj<}e=hQ{mB#T!t*%Xlxwj33Q zt^drKiZXwtadYT0VI%W2YJP{#U3t?Pob?E15}4Vr3GS7_aU+=Nuo+9Z@Qw3l_*Cdv zTp=V-4Y?&Cn%weiIJ(6rt?OlZpylMiM#%`{*l|9JXb6hTCT2y8ou@)(ME~vF=LQNy zLk=nexBpEo?3%sueidec{L6=NglRwir^xe0@BPOqYVfs+vd_@%6`4^s^xg= z-R0IEz6hTbcb|(lZcpG`OkJL~K?17IpCO8S&YwhV8Q++?DqfY#C$`prWfZ0+lb9ms zPWO9Ui)m#T5|BDnBa?q9`Q2rz|X7ttI_ORRf+wDx~KDqk}=7q z@PzHd4KN`BULdbxP>v_U3jA_V#muNa0~7Vz^>=X?xHYbn>`H4clBx+8EdivI6%GuE z`uMv>3gfu1$90JG2f?35ncw~k7tPwHiX_0;ltnC#>JulZ5()AMd#%LL zcppq7G52(4R$X~gCdk#qfI1_K))9B5QC`A;KxV>|qndpFUwoGRy&$Trq{@t5Gyn1uCC;4_^!h1Gl zS)xERGsENU%Ich;yM*ObV7Fd1!B}_dM%RoH@2X!qYky2JmWb^(vVw;^==?mk9@Q9) z-|l$)iPxAS9=HadP8Z3H2%%zJm|AsfP5tQ+1G)|NTHY;kkIhp~Q4lV( z`KXki!`Q4=O7T@B#-zv{FO*7_7}SRM_lTBB@l|tRg;^l4kARoSiAupfCw+a%*tNrm z`J?s9)=rE;?BR!)MYwro-+kr|>%1^!=OnT#?V^Lm^r~dfn0GPGY4Z6MP*(NS-Sk>2 z%9o~oPn&^{KtXQi5m*Z82&l_o?x2S#yKx&1_CJPAC7x$1ZZ;j5C3wWgKCN&&w314jjeALMC_uq8|BaQ!Vb+XmPdjw7LE{GRYdkUY-2Knt?q4E z(WN1UpH=5RGK;*2Z~IXS*XhXPx(mEwhLyAI@qH}hAWUlwrI~DxE(MZY8y5-_nhH1N zf6{#o;kIHZsu33s2CdOmi-)2-zFI$T5%8Ffp4+bWj?&yZ831>9(jQ(!_58PS`Lhjm zAMZUsZ&SUUex23&3QKF8K=JgT+cV6%Sm|)uSF18^Aj>b#rUq%fv;Lixt;;Vg0n(KbJqI5+QFKwU6O z)LX<~#^xU05|NSd>W@?s*_`WV%H)}ANd3k+g&fK7dL+SNDrSh=GoSA-CQ=qcdFAqa zqY`=if0I_?9us#nH~_CB*;})yPBP>Y@9=&OP_R}b6?Pcz^wbwxRx|YEsNrqBM_Z*4 zp!Owu*0Yt+GvvtlBOX->Ci zLmmTLw`hEC=lk5eM|F8pq_SQlMqk~M3nPAjGaWHYe6fugo81qJ=R@`2>|mi(DnxGrl) zP{iclzyuldJ=%TO8lT_q*w`+l>Vb5q;ehOXR4|}vIj49pe%+bVr%XRZl3n!$!Nif>nx@WzSmRw}cii)SkXN3StCJelS-ikgZ53eKxUTz7TyrjP_JlZzP z(U(z&k$(lH6&KV|91d@b2_NS2jZJO7g2fAlY<@ujxU+IoMvpiK+^8tttj_a%CVuH? zET;5~%D5FX$GG-g1M?FEGRJK|^J)|A6?!JE69aiIsa`}_UjQof>4SzT)=^Q^a^uXp zjTv!TGkQ&emUKq99H|B@Ve*SH`C_;!~~p&8tW|izDWdAItDnS zBwZt=pmHcv0nf~UN#7kO!C`6&q=REy;ta*oXerf}NmsIx)p6pzDU^OtrZ>7o`y!&u zh<7415@Y$IcHj!RNYxWHK}r0umRi=?YJ6T4k8U?MdU1a~Ij>{0$$>U|FR%6CWi=F_ z=bKA_1lK9S7k%GA!lg7G-2es1oRke)woGGR0IhC6bL+gPGnrNJZ>0bYMgt>@lT*Tb zj)2g?Qwo5yZ{BTKumUQGH^%Ya^0!wSW9q-Zb+(3(`mCzmcJ?D%?oP#Af#n04tgJ~5 zZql(vE&6lYLC=!hi4!VD-SGuW+scWBVOR_ap>KR~& z_IWK)K^pHnH2Cbry`5>%tcb=2chV zFN)%yrpxx!3}H)`JGy0>KucRVz_lZZquU5#$QU@K!K5*(RBsJ5|OEWRjyl> zx<{8e%|$yWOPp(}=co@|`0ZXsl{2$kvTOm*XABabA50F$Ms3SdN+~$aQt+*@1U8Ho z-E+54UBuedcIPRY%X=+>Fn;^KR5&iB$Pr%R@dsliCD1ba7#KeW^i?~teSH@-LTk%h zAMY%zVfn!Dc~vQO?~84a&=LpKb$w_>9F-u8+EmF1UOi~E1M$KXQK=i=5duP5x_)r zzTk@;iYSbKM=ASX~}2WM|;q0R*ofu zz#>0eY>iOSg$WO5es{@&IjinbqNg8sUK6RXEsmFzgF4a>AxOfG_o5YBgB}PPqE846MiK08XZrgQey`pse ztXbrO;bWSdr#tO182s7B?de%Knj|RN1$WJ3ixjZ3U9BQV?aQ5n?}&Yz*|sAsnmao> z0W|!2y#*wJ^yCs;mpdD?=(h+{X&O5_odK-bQ})QJZqJ2?T|!t)=v_4fPjE=lsHf!G zwQrRegoLg?!iJPp-Q4^D=1$I$OAO=d+k#1@j%ax;^oSn}aZUfYw+2&#^<-02@Xt)> z@SCgx|LSl99Nm7*hED2VtP`HA$+Y_U|yDgDS7DpGs3FT2t%#`UQTZ zl$lgdZzN+JQ11}Uzc|0S`+Yjju@}m>ygY=HpA!v?uj_d0=kE3efB^Z#uqfVE#$S_B zyq1amZL!R`og9hqgP&b+mBgH^`_2K;(hJqIOhDM%HALw%gDCY?TMKZONQls zvIpT|Phnl#TFs4Uw5lA{D-Df>##4ujO-+j~eF=?cnv2$3 zT{ah4pb2a1TgykKg~LO*r~Q7Oo2WXrD6~JTm02Yuk>-6btr~yE!m}vR`G?IkS42jh z6l8aC4P$iyG5p@2`{}ZN9r4^jO3N-7llY9^&vS4dMmIs z!5qCO>-szuw7lVqp#RKGtD?SAKsw-t-^VE8#QC_I9R6w#-S>Gh{8Z zs&Y?bx3M#o=i3FD^ui(h#=^Lz%Xg^XX7E+g%73Bt7)Oap9hrA3`%_YS-N*2^joCM_ z3Kl*Zur{^&*GDZjVM60jUS$_|k4=s^=11tCCM{%h6S2&KTtH7{+6g+9RxyD@6jqPn z8l1HZyXWHNYAW@yp__HO*FKLQR(eL%VsV#ybR|f`<%ZT|cEl2i-q-O|#NiTd)x&tK zDVIUZhrEPFpaSuLuNfZExAh*gOkm#P zE`1PRzRlK|3UDCfV6u51Wv~;;k|&oqw=pd`x}M`0y9>{fL3_ zrq$Y{xmXuXagtnguf&5pr$&aU7}YbVJe?6q$=otYk7Xt`nU&rLF&YH4SUl7vpft5H zu<1j6$5U+xWoE)uNrqle{~ARf$+<;gW-}fqzw->o0FzIZS4Ela!Ajd8@6Fu{oNYVI z*2`I(Q747)8_Aa9rClx@p0u_ZsF&HJ?gnQ;l_CzXcjfI=bfm#n*r5um8L1 zVfZ>9`21%)y|VWgCq|qMrIBuBw8l)6;HHrb)-&J*xs(#Jbd*U z5l3EG=ThAgr8HR{e^m0M7Oh19P|x5joH=5I8czk0Nz|bz;CDb-l0d0Ui=4~ILC?oa z@VPhEn`_3KD-EkgpSW&?#=B!hs&aOmeo6y@4&xXc+ye(^uVb?Mcr?)cRm)(8q13J= zRNne&NKqdIckx=$(#qCVztC!XW|Ez)q<0>iFDBzjrHnXLOd2Da@@qvBs2+}tNjDLq zzQXxaLXx4>(p}4H58WsW*6`ySq99v61&{f1r|jrxG0C`tCgw#TPNIPr?9}WFfES%+HQ&Jb2UKb(tGg%=J zTZTp9)iJ4_F&!*m!u>N5MVyd!c|{;QIUzB^wM`ll0-Ia^+%=BK2E6Sj5=R6m2QNTQ z{sPsi1j=W`D?LGn$+xaZKMo147+awg1x5Z;8%g02VwvCz&uJ&hKkRCix-B<7RKr3u zC%YpVW^D;4#CoTS7L_&0=1x=^CWWqVzJl3&RHsE@*P`bdZVU|3A=d!C8Jt~TY_(<^ ziF)*z%&venrMNiM12`v&Y-+9Cm{O~w0Vu8}3snPuZzv3+v2|X5i6?E_lA<8rMg;_vD(T4jT!R7M`1ZBE$ww04F5eV#$Ll}k%MAqMYEU1Q~20d z93HMfU#%r^zo$#|zoZ6#4Y>VjbCJ6qq0t;G+!jx5Gi4n<2s{?;=6~!f>k1bp%AMt> zr}JB^1;y$WmNaQeaE-ZJvRhEjR|}*xQ8G@wa2@1@7JUxGSZQvqGjv+{8*LPBtfDg7 zD(Ao6$-QR+c+bfKCe1l~Xg~KC%AY<4=uTf~ zb;rEr@?mWc=c99AwQ5xQW{lGEwq5hcUjI>-jmSlwz8;;xovz4zJ(U=kcjRy`JEFCi zY{C=4$do!NeHt?l+#TfouD7r>%l)t}hE?)}dskwgxQ(jPjhK1*qH`3wad}7b^t%?W zd7$(TK)+I&a=oLQcNO-cQg1;|;BZw5;WiZQ^ST@cf9RO?>O#6wn?lkZpSPq3st`r_R?0l|P*9~l&|m$JCX8N%In2fGMGK&m-y~YUxhcINTWhACQ{h~5bgbIG(aAMb~dlz_1x|C0E2#a24l+s zrw^q~67qS_r&tRHSqU`Njn!s$#sgn{h`!LV_yX~h0YAX_-@98NwBv@N?`%uK+3#%c zu6&+d!HSTm5GM*8XM%hV}9S_V^r~YuWq(E%fy`_S%EOQ$5L`4*iM9pP{?> z+w_q@(3tUy&R4hQ5A3SAgD1po3z&c4FkYSXULr~SmjXfQ2T%TAIrjyE7Iq3qf} zurCu1`oBJRd=ha7ObFX!jg97>7a8V2BZfIXU&zhvOQi7hfIhVM7Y!&kp8~jY?COf5LEx&VR>_VLV3HVCfq!*#qVKygZp+(2UKGB zD7~-Fg7cmU1Yx-l_1Z#R$8|RufdThR7GIykyPK@QfTyJ-q;0)-O)s$OSIc1lVLKoj z3HgabHJ(bwSls*#Y~eXt;o{OF%_ZRU?VoZyrC!=0qI_rfB9G7D`)cV|>boWP-(oS} z%woIs-h-!*W>LQZ)(2pjd)1lDKgQk~hfJ^}fpWvAbLjnk?yvB*qp_~Z&F`w*5MJo(xkfx;oN++FDuvOksjxq zE3E$L1kA&?%7|(9b=md=?VO@5^IsHV{np&ZInq7oQ5@F@$a`JUJ0^Kl`^)8#N@)5~ zuvG`lZ7rYOQ+oI()^TWnpwfpzL3Wd0v}+L7$5wxHt@RJrc6t&5;dkzjgqNmEH<0Jw z2!CoUVzup41v z**#fDMZyBZ+wdFJb;+#U4eTG~6a5UxYTAGB)w$Ymzll$Wnm?oPjR3*2(#0J1As<;E;Lei2ZS01hk%>m^ ze1M6Ap8gI2HnFV9h*%=~;b(jzCz{{BA1F!*yI$CvXwTq4k>$0;{=#!M``@^skGvVj zTcVG2F%M9iO#ce*NBf(&I6J(>y>sM;(%#4Hb2%=clmE)j3ev2enYjHpUXqvSp>-!% zXi)HXjihV`KYhR3Ku-C_B=Z|VfciIqe&lYI@inEu&N+z?qr?}xP36{9=pdyJvfhHV?A0>K#K`QOShKRe}Dls29aiVORH|tLU!xnKAV%I5HnwB?u>1`>6u_@K|1M*^L zv11k$XeYm(V;=RZ#~FyYF)-tI_J6b4MS2M0zZoF}kO;e^bLRi+tUN;!j2Xrif+0pecwDfxu>b+`) z7<&HBo|$>$P*L>?ySNZa%u_61$wd(xHT-*Cl31W=Nj7_=hl!s#PE)}0O;4~cOR^jQ z9E0#~A^^W&3pr{oeD2!`MbJdQ?!Q=?lEFC#ge)lHOAR}L21xV2XML{9nhDim(Ktlw#GD&$j~F@+N8-!_ z^jVP9rI|x1@beiem5Or3%BV6S9d=h#I>OCa1Zb6&)7VR~S+X~?mk%k~ne!NCFufkW z&h#)1qrNlJAF1U8>V;ar(K_8e5sz$zcfMJGHk)~zOvG_8F)T*MX5E}<1CcQkkCnw7 z)un$F?@FmF=PJnvt1IU#Ibi6spkz7#NI%r)bI=F}KLP(Tet`ZIFgkq{7|^3A!W?!U z+%jaMGKVnyg45|W16R6t{}=hyDoS8t61ys$KLpjA;Lq~|*Xd+BLA#o?!ChgSA%X_Z z2Uv^WEl=O~sjaEQ^=OW)4#7PyZ$NLSHn{89xEC@(ik=l zT5zgNCUxwaf9ydi^b16mzOkkB3Z&QXnjBWQ;3D(IUR<#@cLzEo91$9ixr`FdSq&;I zdQz1sKm9X{&m;<3(woqnwfc9x2?zwUdP7m(@UTP^4SjhJ%-F;_yl3n=O!TW&O*?S` znt7no@i`1L3JmrX7Msop0mC%whvJn-;S?3;H*Cu-uYijR69RLWT+eh9Te*6^xJ{2B zv-8_xjVEM#Z}X(<_M980{5Svu%}s#vhOA^yyfy+UFO*0a?&I6{TiZiuV4|pE+6q-k znR$T1OXw^1*@RtGntU1NBncqkLg1$tXCpDI>j5iqViR?a^Hyr%^?opct6pGEpFxO!1O^|+ciX=yC zM>?1_iS96dq|JI|?OCTYeuNh4DA$X<;6%mKMArNw?|i$fHm?#tX++ z;vRd%?cqBy>%f@uK{Q&lRlrl(4(aEtNRSN_lb$0v)ZFQlDW=Q+4)1N6|cy>dHU#_jr4oIa1If!TnO}e zvy6Cue*b3EHtrIsxr@>OkSFocf{z8PgZz_FD{T1fZ|psiZ|0AA+E4BFG^8um7KKhU zqFiYrkgDO5R+wltI?DRZDIrpWRw4t^B7sP+1N0qIRmc+bH5PGgpKrB>(p3xz^HJMr>H{k@DD0*&nbcy_jLKnfEaK-v{>S+7 zIbc_GBGbD{lp%Kp5IPZ(_ArMb;WNaWER=$#n3QHPOgt2RxKO{%S^WG;&`HJt6hZco zOBNVzDS8Hx=@rlQQq+A0v6w(fdzwRNI0RB&O2MO$W(?9}ZT?=0h=K|++s%bj#a=mdOrB|1o&4NN*%04^rmTPncSI2b`KYyw zmN==E-|7eZ4V`wjjska-ZXgmMO@9PpENpI1U?dbQWy+pSy|Wk~u6B^{GD*oNd(4$Q zAJ(=9LoguvvYW}ZKRFrK&M9?iP}_$?ocGj$GAvsZY=jvaM%E zGx3(iG)6A&o3E~ON7@qM!JJF$C0MlmZnP51Geh8W<9qweUwRP(5>@<5g#3jam9mc5JT0-;J{A z4d9?1OlH-wk$hDtYR}wxAZKTm{AMTQQB+ zS%u)ZVsYHqiK_@AdTJP6b8bfFE=CV=%z1S@)gOR zL=rc*wTp{&=c}5r?M;(J&enXeGQ2^dyY};;di_*c1N1lOxPxw=H^{ohW-dOwn*k*F?!JeU$r-khus7GYlEVcv_^9izsw%( zrA^YO6e>fnQda}R#e2;Yi&Djp2Jmy7!@V#ydD8d9Ieoy~<+{)y9+&s#?D?Szu4M}& zs~ETZ1=4(TQ+_Io*OhPzn^8Iv0F*=j{o4CVWOffHLv8)3{UTFeVAzAK13c7P6-lOdA zqw%dUG^_|TtfaK92m#PX1YZ5*!N~^K1z**#B<|uCgX9)@K37vYM;>td*sz9AlZQ)# z=xHo_D*niHdkn_lNX8qNVRqzX-|+B33Sifu*~mzWq%-IR(jchN zSebT{ir+``ookh@ih&`YsclQ(rylB3a#AgO$F6Xp@j1%Vzu-affyk17AD=(^e;|Fx zOF=enh5i2l)X|e=x1o^%Q&0Ti-|u&RV2H*FZY5Ik1*KvJ61yS_ zkgU`S6{sRLFc76SOqWU9VZnT6Pl)LEA5^jiC))d@3QfjRNpaMn?n?wP5A0N2#ZfslGDs9Lu z;?4Yifei(sX+*@%#dK*-xbv}#EcWO=bNWFGA=AlheonHphV{uDkF$r`AIY^+quCnq zdk>Qi0yUarLxLr4s`~)@d3M>CCqB7eT*T7>>;9TgkKo3dXdJk%#-Hntg61ViSVp7HMNV_ROnaBpN0vF-tp@|hGmWM2Vt9|{6KRTv)EOMpaeSFG z^S#fievoo*?iPGcH@zG~NM)n`jVe@t)izrO_B+;VO*+#SRna!;Vlmks_9Kc`bT)lw zgA|4p#?jMR62F4`y91<}-K;EdLKV4}T44N%Hu-x!WNILuBHBv6SEa&GZD^g%TKyz; ze&9<93FO+dqZ~R7wIgVWdU-O`!6YMs%Y;JdCZ31hQBf|PhRDX1dU-SmK4p<*PO?CD z;^ozE#`w~@*^lpS(|MRB^Im;bntStZiKZnhTh55G_)kQ)U@yN*mw+KaAV+~FZnfbc z{e6jq2c(Y|RnK9ZJ$oT?Qt}TLu|~mb&qY#hz?o`7TS%^*h4wFjqFo9aca?`t|C*t4 zFN*AOLS`6Vl;ikfagn586fNhF&dPyjZ9QnuWF57)64s{wB0#r$o2nv(c{X4Y;U5{? z+?+fF5$XMSA#s*sg_9Ma#?mN~gEqNm$ZF0uDm%>9G~qse5DmQ>5NSN8&eAsI%+oX$ zFGtD@{cjVzn9`6pd!XfPKupR(3XRf^^ovq&Ca1))mRo$gQtC}X?O6bdfJBMR>C-s! zUyf(0zV}uo`eArcW{G7*7MSQH2`-cZXkp`EjlT_Cz1bY?H(&Drm9$9GmT)_3FiR*! z^Sc(DqkeIXENZb(tU;224(h-2%Ht2o1zdzYY?KwUb^>`YhP@(>NvqC;fY*QtggB4ZUA9DkHte-udW7iku0` zx_C>;`8s{!pv%-zBQ(EQ$RyNBFU|M-tcYziZ#nV(>gCD7RC>SHf26Aus`P2R8gzbg zXjL>o)b!|fkR_U(FD!XEzslQB+^6_+`%5r(Ji;n^P|=Yoq{nvxpy zN1*LiqqM@ z#|R{m!8b+jA_p6owt?9WR40%x7X|bW#_Z?yV?XU(wxd4YU4-IR{9U#NgZG#onrykZ zDh?|~oYQImKlnhmJSgoNnIEh72*VQ`iEZJ4j2K_2{qlUV6E(HQ*9%V? z7mp}6t(cZN>40s_bd$*RZ?xF;0dc1`V_VuaHKA$Md%v>BiUXfs)zR34XKR+!{9S&9 z>U)Xb+BL+^EyBY56SQ~6bUkxp=-~X2f@9z89L^d*tbLgd-uzNjWf=thp6aOe!^AK@ zm@Xno!V~_iEk-@@j#RjfhFtMi5uFCy;WSy@v}Yyz_cpiIlzxJQ!19zKoZX4K5R!V{ z{w`rmts>|em?B|Wrh)5uA8^aL4>go3dQ&~a}21PoQTLI z#%whJX40z&-tDBVU3p%)$^-tS4jIQtP{XJnaa8xmLD?vAH4+StyfV%_0!i){OUAG5 zI+)UV-X$_`d3F` z#B5wP%i{Mp1%e?_1-tIIB{u057w_un{QBI|u|MGoTd&5111=T!Q$OKpcfNfrgh|5E z%;(cHMH{s~EQpc#`UNQbO!;A4BabnA5_EV5=Tp9zNd1sXwI`Q+QZ1;I10D4VD_P0+F znT1V>m@i3{DHw~7Hc4ON6nf_E0;A6>TjDT(rcSY@jaxrg=LY_Oi9^z7{sMQBx4?!o z9VTVU`a|%{gjGG4!XLdXLl^q1SJa?T3Qf5@tV2z%u^)cL6m4q7kC-&}p9BHma0%b^ ze+V6ap~0q6kSC~XAcba=0SX~&k^AY)eYZ8Qv!KCC#}F047dC}sAY$5neqb=;pr`J3 z7bJ$J+0uVx?;NmQy|PK&-UN9hce4lk!zjm$>7^a`QaC$u-a9g6_D^U=x+jSuGUXV@ zehPf{Iuhhu5;_bm9c73d@tmD+g}+~g7Z>^(5nc!Md#`ZH5~V z;>Qnk2?3K1?L)`_V|kG@s-|R95{Xq@Y1F4`FH`8R4l1!VMYm1t0R&Q2Q32uo)<(jd zb~fb{pV=TG?(Eu8#7&>C5C+%q8|jc&z^#7|p4KR;fk)x~bDp_(rkYren_Fn)PatG@ z;=N8*SdOHh%~34bHAw%Cgt{i2qXN9!qBM_~6kXer2k?Bs7>sL} zS%+FarGQ)TI`aC*F(Ty@gDj7scX&|Vy#DZ>{W0O_W}2k=lIT{SLE%kMS0da44aT@8mM)8mI~K-S!cZnMk!8l~)13;I_vaMiZ#S!t|~ zc;=b0>>?%Ui}B|N3gN|+Q0r#|DearSyT{;3^FiV=mZatdsj_XqP|kNEve={3gD!kG z)nRU{TEQoKyf+$_Cm09lZQ>j=^>LcAzM~2+`vKqPeXb4F1F6$;eXh~KEUwA(%XOETIfO z09lWCAqJm$Q|57Qn|B9NBYLdbl7*3FJ@SO?rWF5UJQXbICoAcd`$FfE|IG`GaB0%7 zA@a9KgUs&+v-CT&rTJA}ZuUmTXd9WzDdC0rpM>S0Mv~~pwAGa1m$cP{VbQeJjNxxG zD!0oer3}B}%`7Ylwb&aOqQ}@9`J(ASfU_|n(fqs_p_-+IIN_3og(+b>dm~+RXWDA! za81$UK1*I{=WqOZWl%I8$XSKZuo_I=H~Y&kLy%8&9_CXX%2O_ehSRp8{EdCZAe9{o ze`sV2k=8YhcBtH*h3B{SYYq54aQp#(?0)n0u;83M$CREUmQbdi-u{$ctQ!fA87cXEmID$Mm`$tT{|~lKyZDv~G~q>8CYbY}q>4(Hf;S9(~q2 z$jjOH3A2f?ZlJq1!f;qE^C`1B&TyCy+nnOsWEcKoOxK(u-ee#CV!+d!f>pJTdDl(d zoO0y+8Kq6toYL(48KuF|45S1YS~$sCIO$qaFtj@uTik^0 zZi=>d8F~lT{K8!!u&xXe@w5b>`mEi)43LJ4)r8p#9a(aT=nl&O=Sw^d_?p_U{hEju zReV(k(>tp$48fNg_)8A*;U5()Q{;{Ki)~GX2XRb!{ofdZBQ+7fUfP;7 z1T$3eRUX)-T5f%Yg_c|S2iJm2?;o0oYVD6tmR#Crs{%O(HDisy&oTXK%dPSQ=JQnz zhG3MX_m-r7!71R1qwSHZ5r0VgRjK}Yd@O?xbK_w>JnI*VS_C8aR%DCV8?Se6O1;IW z1<_OcdAeDPM*84MWIbo6Ic71()NX_37^3sJ{1hUJi`lPWF&8s~U=tVl<=j95&6V6p zg4Gp$3LcS_Tz>-YmE3TGww2sq0{0cc%)yiT=iM<<4h*3BT_=kvEH+k@4VG8WXeQ{3 zK(;74Bq5oGQ*MtTdAKgRTZGX}@R#UV`o*087|zt!*rU5b|FLTc|C2NOk74kcTCA=G z;y;F!sPFJkOtt?>m&?`+MSA>?{qUI*7&RdJFDa+be<~33|5HKs zKNZ-p@_ZV8_BWremon@LsuU(fn zU4pv#J(b^^H4$!cRr)I#|Bo1}FxS4#c8q??YmlLSUIfV%7V7&S$V} zp&2(no6Kih(z3gW+TPXK@d84{czvM4H^rwWJ+|^y+_ntiI&&ZNr^m%sURJ9|f$kGww^Uh6cy(wywF$%bC0f@i>WAFo z=QlIwSH$(8wQ$_8EXYTVvONAo8tP&k{ji!)d3OYD zK8!{~mBhh}dEvev2>%Z{rL8@*)9e%c3nkfiRhc097Y#Q~GSNc^B~XyOqJ*cmIs{ac zn~~t=L&FcTgocb_A!84EpjuI3ud&qjgpzQQyu`83)|$01RG!$>j(52|j-H=6GkRXo z^5F2QIG%);zJwQ9B%PAgV#Ar7YoFY6UET6txkSA`Rzm@hl+T7?*!KPb5^$A5e~TKe z4hY5=j;a|ql?Ua`06xQZ7dP1uB!sEv*n$aS#D7PH<4PfZDuftI12@$~5dk!BJ4x z5oheeQo0s`5M2dicv5z?dz6m$*pJSK%+u? zQYS3JWFonlDaUV9=|(unQT+CA0Y(~u?&6#v_71pOiZQi98DXVpbzIv|2*z(rX>UYK zFvD5v0n;a~0Nw*@`+jAMkb#-L+vYEI&X&k$kjjmavwdSpS?)!vgjm4Wb`{MyGNJc4 zW1g}EgifoRb;U(XXj6X*TZ;0eL_9H5*{@UTVZ2Ou_#mz!dy>wb4$M{AuI)rfg}&6> zKGo{+pstIg;ivUft=mov%Nd2eekFw-*|dz^hL}xKz!36BP)VA8 z_vc_lR^Td~UL=^W3Tu^P@f7OehpckBU>s6letgoIyME`h5JRjrIWZpNi*98{LZukY z$hU{ztR~kpHe|oZ9M|FsY5yQpmc$1>uMeaP0f#q?sN9r%9MB9L8O<4KsQj-?jWhQ} zZguI~QnJrGze!k55)-C1YIHzK<@B@w;~$xU89L3$j)S$CPpb|T#uZ zfV{9QJX(%%@u3Bal74;kGa{j_Du=!jT(UE}IW5^_Zwa3nlYq_^fVaFhBXNkouI0J4BX!KHys{K@q^a3DaGRNF zjT?3OLYY4Izo+2*r<=>>Xti%81=AKMF}-6*N0DT@3cJ1Wz5WgC<9XKCCuSEuCuHNj z_3bCWNxJEW$6YXbG%I)Iv`Uvxx9MXDPwAnp(yevBckv-26t;c*oukI4|MbbB2{>O# zy`T)XHkP@!^|y_6ItLR8WH#WNE+Xb9q$^dGzexjjflv3{9BXI{BW5;z=md^N6m-k9QX;g(aIFFKH?Rz ze(c5VAbxo_u47#baXX-qb62cI{IcjT}~k_Qf)OmaDPgA}%Jv~{zYAC1UGM67Jjv@FA%LJnL7SrCt z9oguA&Jdo-+!a>>LpSkE=2j30|2d|@+Ox*`?%Ky$|?t=ixV2G5`v1-PU)bHXLu zQ*x5;j9ObH+SG#ks0dqEAlQEV2oaG3Ea=e;MWKivZQb(#GYJ;X2yFO9k_v}5@MlJQ zg8kla+o@zoTyFa-!e<#Fj=_^lsHxhAiCqJjhc@o6zp_Y2wNlWJ4{1B4=Z4{fe~W)U zEI6+M_CsoR|MV0nyp;R}0GEU%4uAG|5BJ|Yv=>t-^gqfsmw@V1E3xaV>9Vi(P2k=HsozI`Rc9Jc-Ab$>lUF0uBwrJp=yAgkw6ecTx)q@K1mCl(o^{a8FI{cq=Esa0 z^JB04B)gB_h#i7d^!$NDG&@CQ^b!KjPZ`_@W0Irb9{c|D>ta|D;gvwO6kTsKDDleb zaoyGT3Um)hW~_N;ldVNAM7K;-gIIPr-l7DipZS6P#Z9vByT}iB}(%T<`T(VGF+?Kd~dO#AF@6c z%Qc+dxS$cQ8?1T!8n)v{s)U&jPLSoM57kbTzG_nDK<(_vjvr1{$7~iK{}xyKY_Y)m z`vC{oom-L!#0=-qY>0ja^MhYwsts#-E)!$-b`W_4poftZvjj7v-Ide>foe}a_mf1X z#bj9~Q^R=}(|O~fC5}T&$hD=H;p8;j`mzBMc$uzM3oSCrE*#^vmM1qKS~gu>TX+A5P&ajs8~9}Dje1nlUZgIbw9!z z)7Oy*h>7XTdiV20Vmh9xjFRisFq|wGwT8;*G)U1X*+%9<79yglQK927-_&soD<_dv{HxwpA za*utJtbqQ#&Z;#|;~UjmYIy)-F1x3M&l}i1pj()H+YSf6>RL#?Ih@ML|8tMtAs}Cn zq&aL(y+*ac&2+kjz|(yZ`-EsV+|Z3(Ibn%Lo|&;>q2n<8_>?TJGz3Z_}wQ}9*3Vz zQz(EZ_t=GpUQU=L@MlN~GV++2Xz=bTU@RAu3!`xP&N1cs@yKJ>9d^9?aW_+^x5dm? z;Y_8C-OJXu{{u>nI*2Vi2Epw5>z0&zy#;_$jR>T2TruKmADj@VG8L%1lOU$#9&n7{qf^gx(3SwdNY zJ>$&D)Eb_T2Fs%c|Lg#L>am3p0hoPzWL!jjOf_(`jfa+?GaruAQw6d@^4-XUAZi;h z&cKrBwsmoxll(*EheU5!MK8LMxz>P^;7N1KkdFxAfGvAvt$uL8Q(LP)LBQMeE0x}F ze970AX4$6(7v}@dN|^DzqN{#d109`igWc37-_#X^arE!ZcepQVUPNu$Kr(OD1UKee z8&&PLT0-v^(yt4fr}_M6`8H&`Y97N%cdgY!j|&C7p!z@((kg3|*jxHwjEB7V z7@rqcxmEWHj$SCn&=p8x~EhTZ4qsfVC)%bsUbjG&%#@*Aw$pr=M* z%r#Ze*;`Qsjero+A;`g$D|DsT?j=8utFg}N24^i+g|$>^{-f^W>=~xaNk$UrJm@bu zteGbfT|HM8u3KJ@URy`Kew#?||DK+}q_;D%HK%EFWJGwlq5s;H)0M@kJ!CkT-vHky zmLUkJKsxnuXbp(b^iH{GI$sP(+elC|Cb1z!7wU_0jWH}2>dbRXXecMJO;qbENL7lK z9gF@#@o`8^U@!>lah01`^=ngvn8I&-kMzt+n=7i#GcJ|5w&N~8beLCW-zX}oI!t`% zBG>u=N9nY>c{X5lPBsZ^+L<)o_yDL#C)+%1OWhauk{|e}4SXID&>QDr7cLrl7jL4L zDGXvFv1bvq+DnaP^|p zb2Jt^Di1pM2+?YTBR%NLOMjDbn3lB_)`F;w8T8*Wy>mksok?~ea6Vs&sA5UK$S4Y$P3oQ=Cy|~N4Tio5<-QB&|Qrxvb zaV_rd6nA%bcPYiW=jr?T-G8!4Cdtl`o!y;DzOx!A&t_|OS^SY~V5wNhj?Bb{KCMHW z8apB^&~}QS-bA_7d-2OTSB0R3U9T(7cBH6p2sei(KjIh!+<;rxdEeUt7(Q7He8~ zPB{{94L7C3XkGbPmy!0SYA9ZjYH#22*7^e7HEp#IS(Kcr0R3F!S3V2cTb)SR-*^GL z;H1)0y?Sgl6|GjYBUP@h1}NwZN=|i;#t}pXHrM?q1t|nhi7VUn;nC#U0*2{!piqU< z22)k8DkLnWgteo^7MfS#N>vr!C>TT{7l)L=rJ=Lp&5`F3zlG*tUTBS=``Z=QH{DM4 zhQ-xbybp8$*Xs6k^22_)G%L4Y|9sn3r9WMk1GHx9Wiw4RyN&2>(y35G(#i4z^-g(B2n$$tS+LQ?$qry;Q$9XJ#FEiDN^x3p>`g z1cYsy6@z#p3w|||oALwhK$M;u|)K- zr-WnEL@3ToimRfdVFq_u;n zb7nDz`P|6ewg-R3RlBCcCX;`Lw~EFwG8bty?$&>|W!|I~PM*hBGfJ$ogVi*dHo91) ziUv_0$=PssXo5h>F7kT7m`Z@>%24qm^!%LW>Z3`zuS^|W7QBATb}WTdKqz~gfu3`+ z--Dgm8YvXyNixCNWZ>p!wXP3*m4@)v8=fn$p?g8;p6N`rdZX zL}VLYOUO;tf+sG3!ou`>4!Mc)d|?pg3x9$8o9^WhHS2&fWve-R zlw_C^_cr~+1x7Ylh?u73OpdVHK7ZDL8!4=j)F>blup!FQt36 zE^e6b-3g-;^W$DfoTr3{Dnf23UK(j3m=rAqe+>A!S9v?q_uUme*|UEM`y-pWO+|c? zS0YVD89lV@6prTt5=IqeWA<3+qRF{X4jgAM@Uv5eF=aYFs?-?<6t}&4@PD&896Uhj zuz0qz^0qzX;TTeY3r2<|tCy5;!;vo{_xeOVkCrK}ej4^B0(Z~O`^MyV2-61lq#bFu zMqvy)dLa6pq|vD)%+SLh6%}rRk~{$RlqEaIVpfhk;G+^8pfF`{h>zZ#CD@2TU>`6C z_3BnhU&GWKkO8?iMODr6quXGc#CA0u9=IAI!~(v9&MH94p1 z{s2oTk3|ih$j%dueokQ~8c#;BZ0>4fc!dlVnM>qI(A4lDb4KHfjLz6BydHE5pcgRE;Q;qRx0}V;Y60@o3nn*w?D{ zx#DBI`Odt9$RAt7QA)TT_w1dWP1mKN*ZY6M!TTRfxv+`pE#47yTMkL#sLEN`Rza(F z7+(|2mz1o0NvA+9a?MOj{5D@(Oqrt#ja_pF$GwP%0)$S5W23H#qU;=nzy;_)Xy=f| z=qo(4?}T};c%TmY7iCHi1ZKHIIw5^q;ogz-T!GnH+O=XLjp@j`XWd!4v`P;XxvyvF zV>z%|4cpBr(i4S+TX7;}(1aZFw(R~0QMm6Rv^R|a^(Y9am{JhUm(mrF%^tVGUdu|sB(F?^&c*I_0KBW7pr zz}XMof!&zb4BY|#!K{Q)T=%nEXT1CvUm-@5wHl_1?Hk{i%y~)JLGQrB*0e=$`O3B{ zc%PY)d9%BlpG9xqC+KhR4Gu2~yDeb({0)0w5$8tsxlvx{?F#lM%|5$XI>$}2g*#Fr3 zyuR7=9={)+UMg|_43PfQBIiL(tLP&Q+b||5v`F%wlRZX7?z!O%Tj)__yTto!h}}Tr z4CClgI5bOk?vXvRiWaqZ_RL-tCWahlexdNh7e|SbvQuuG14!YOi{>c%3+$!JF*X-@ zujL${0(3g$doVIO8P@O}!!ow+>~#O30Zn}x>aZ!iQ_N3a7|+Y@`|?%7G(LsnbaB~RNEq~FomiNr%qU0L>4 z7MSc@a`(KmvmwaQi?{7x#woe~*n12@+Tz5g;HoSQ57h z2vSIHVDVC}tW1$o;H6Dbno=}PzuTlZ>RWzJQS3B@N~!KOg>E_@GSxy)LDe%OPKmoV z#cAq1FwFn~zE(b%i%G97^*Ifgl3&shYQiZ6A+1ep2|!5LACQF0jipGIFxM$da^@>s zH3Ii--`~ef8^@BhYR6>FM{QGwcM94}&@EhsIwvXEv@++HF)U)wrKs4t{+8YqUsRq{ zYB0Q{qrCoVR#0=ZpZ|8b;c-!xcPi55b;<*QG=;bdupq|MXk(5I5C|_)zD5u!93R&_ zOh=|f1&RHvo0UypU=%j(9hkMV6w|>xN8rvuMW$rMaN^4xGaobMQRZ zQ!uA;Wh0!_@>-Z-DvWx7d%iWKvO6|k8H$m8f9-tr>KQRDf?I#uGaZpVN=}uErC?1Q zsIff&B2vH92L0-l^0gfs8W^uPGoAIK-ne;*C$LJ0_z3TqEKeg>CZy1SGn@xnEiH_16WP z%@H{MrEUHV`+#+8tlq@B{88Mxmf$)s04laFT$j}i^h+V>k{vVZ=2!oVQ#oQYa-P)4y9lmzGLTV6hWC|NFd|-^rAihsq0ggdMKNT_f3BO z{^Fx9v=+a0xh?;plN(`mT91D0=-FJn;aT`Plcd-1<)9Iz5Oli)J?d6w;;Gnl56e3I3GV ziHcQ<9E%ujRvEKPrny4g<8a_ld3;onXF_e;ioB-M3(+?ABpU`TUkaOq96>4&mF3Uo$@W#ZPo5MGPEnDnb!f!Wz(wZoUfIj*XcJA2zKC~M?sIepkb z7B6sDe1|oc@|OU!*iv)1!Ln_}M*l&^8;$<<;;p-Ud$Gl?1Zy%EH$$#wE2jzzgZTAf zP@`QV-E|6agt>-2kr4{^ZgaS<_I#$ z-A#mj_2V-_+N*HlIN5wGWM81w*U;vVmbm^4H6Be80*i>s#)mDipEZ~NAhFr46q$ZQ zD-Z!t@z$wFt+2hjmM0^Ar+Eu@WVTfXSYwpOOW_lSgo%HO{r<%$l8$N01qj^O%7W@nrCJWD5lgGl_|od2Gw#X*Oh+ zn7%^XKUpQwRHC_ig0rBrt4W!+%JlL)%Puv`zdns7$zeL&=7W;(B3CK*hgpAN^z*>A znZa%iJJZg^sJF|25ve^na>?y<`F>7ld2t&lp2mObbrX|&uU5rTg~QLT`)HAuDpHEh z`Uyfk5|@}69&$Gjm1J_RzZjG8YulVg{X>SDNcBU;HiP;LGBTCw(`b;`w|u4VN;srH zn&aAr#8t(A!d3oa#)l&ycH8y{?*1Y6xZI#7hRZmDC3e15@(ZBqk?>4PD2Cn7Cp$r| zOG6Om9(*hdZN*WpBslB+SOPPQe6NPY&nYw~{Bv5j64M9uMOC&&edKwwUE>x)gY zBHBi|7W#PFe&GVBDD~;x16t!+s)z5hc_Fy|LjX>OPAu9px5%!KK;~4P-v-tF**ZHD zl47LNuV)z_?vF!ZNPy8+e(l!xM5EyR@brUX?RRDXI2gY=B#r%9AAmp^`S1kSrZ|nK`j^E~4|@$TjP`8z9q=tM z_5IP6b?}wvsl5xEQQhNlFX$_Y2GMBtK~Nwe;dqQvVWTYMVXqqoL);ZUx2b@64kTJy zU%i=q6c-oq1-YCP8eLOqOod#piKa$l%R{qifI^xnWRvx$6n@Zz5t|(Wc>l>SwJ&6F zHQTbn3YiOaR5m<-ZOyG{&M0yS0;k?D-4Ab0#k;3RAco%dnK%@yNLer0_{p!py<*;La&j~fbxX&9@seO_GlF!PNeJScRc?n* zH?$RnaFF0y*RX;$!5{3$4S?p@Ey#UefQ@9@R(g=XP^YY@j0jV}J86+bqNzsaX4Wl( zPP_EGu5Wg$=k|DC*89fKm3CLG5-C0aIqtGI(3`L32UnNhA5v(IL#n z#Rgu9N0JLplT*@YMD3IER6`ca$d=?hBHK$f#f{~y#MdYP%aF0IxF>P!dE)9o@*FiH5`thivk6{o##!zK%n`S#sTiOjQ@-H5_$S; zsR|ycdrK)1=~)ud6p`Ae+}8ovak$eCmNGg#VTlWIJmDpMmzX;S132(GMab7qqSeYA zNyq5lP4SH)IU*Fgg^$V~a?%_`p(|A35IZ`%#DDT+<~>wlp|`$vc8VXBzAU6&dM3~! ziQ;;VdiET90sK8lutEJB2H(iXs-6lzZ~JtVSxSyzV0-$I#yEmRi7HBV;SoFdStK~o z_@5t2JlR=(j5@rBljitPk1;$K6B^Y;S!chI8Mmz66Az##WD3P<_)^3=T6lKID>6No z*!JX3!8d8wVkAHKM8-NwNRG=NO*|IczZ;<{Hee(_0l>~=N}A$GCUe!xt$&bbM`V@a zSh`MS<-bea_vdGgGiW@(hoyLzJu*E`Z+1Onw%XGzrYv3mrs?<=IzOg ztQtM(bnBq1$^~Gn6&?j<|0?envHklV`pShQYfjc4jG(rxQ^OqQtD6#)^X!m?MFzBuQGY(XSEjc2L8IJbuE z9s*SJ-QJ(U?;o_~4Y3zKJp8yvm0VR7R$bNY(Y2F-*GpSb?)e~>35Jd~mdjKLC@q;r zPqwnQfv5l4P!TkrwxZv|Eq6|16j(?{X*)C5LV0I((vIE;&V_|?o{~lI$q0;w|l&T*yej zol(fhw5>0vrxZ|GLN5bITA!4n4}5883X(}{Z4H8#(^Ki$`wS_1g$Tja%MDQ_hNvIP z-cEFT1q1pWsCX@2-j`mD3~einrlZtD=*f1`BZAxam7q_@5!0ccmN&}9^RsI^p@}Cf z)s_6-6{GAnT07k3K%^5PQ@8h(ayt&w;PVw-J8{(j>=nKbs>5#}RIw-YnwdX9;!3HV zn7CKs+Q|n!`!^G0tLbg*`#=?h{qpq~2z$7$x!)L^UyI!Vo+NYPN!I}xA38?%TmR4j zN$a%q@6<)>fLOs(X2!LFIv{*3`x?%SQ3mYqw_vZTL>b}8& z9yLG*0b12BSlu@oU;zUpK&AQCYWVm$VBY~D8R(+ad}}m(%B|eUc9y<@ zEYCqGM)S^6Y|QQK&`Qje>mIS544d;l5=?pS-xnhk37;1m$dbA4BOA!nx$hmU#DH@5 zv(4!U&BG<8>4>GRrLHQhn&FyvMf$u;eEm|an)$awc8kf;2C@rBTlaa7m9|Ugw>und zG!LHpvU)NY!sn_6vU{HUO=~d%*E0l!rZ zm#N;zHRu}scx;-^*qA!W&eEv$n;mi49Bmb34y04s&W^Lw zt%A(bi5j&A*hiPmp;yaI)75NeN7>7&wx2{EwgQdys~!H}@S?1K%k@W&xZ>3nq!xR4 z`(TW@jhE*y_K(^}Tp=k5qKJ8h&=^AhM{`ohcttR)lmF4I|7ea_s0-AnQnz!NVT)Y#8l&a~ zDu_N{za?P*Tfn}2w{wc&w@yPYDouS7O??_oeF{x|kfuJF<^?vWEMWgvz&=s;4Quy} zbN3BG_lX`Y*I{^8Z+;Ot&GggQka%RA!#YEwxowFSk-vqom{H z~6Aill8{!haO#Om-6FtGJu$>KD*^Jtrg(f`D4y65`G1g~-LS*DU!8e+Sg zHvfxse6WD`&ksC891{NLHpXgC`Okk0!9Mk0Y;&w8)_=?Zp$ND;vUM+b-8UA{quCfB zK)?D0y89+S0Q^Fh+(n`JR%-}6g1_Y|utcTl2fn`Dx^Fn3MmI4*fK2s^UH6R#Sik}S z3e_*Z-8Z`d`^0d`0FCBbyy4?uz1iOVZf*okns!ia^2=4C{wb$$hT2=$U zgfm(o@iy5&XgGCM7^A^nXZ@_`zY(@!I-R+{KHv9e{j|_8pQj*n)FuOn|lpx2#AuT6c(3HUy~k-6If>UN$A<2f}Hu7#ejxA zN$tR6`d@M~o0osvvY%Mam+jW>GqU_H3}(A>iYx|9zI7xo;4kmVJdj;@O8oUW+<1Pr zqBszEe;(|Dh}u@La?Mc@qKjm7#kkx2iXAOHUriqjjQ(nyyMu34&~Dt%COaa)&pH-E z@xm&o8zPZ$9B@5A4AFBZEYrP8=FOg1EDx|yPRAaZXg6Ahp5)Noq*1fVwQODRadPu~ zE;o9LX%nqp)YL52F5K3M(fg7K?bYvwUBT)Ge=}>AubgY&UF&5s9Wkk;MFLMOqMce^7WwgImiOt z*QP#tyOt=ktvNr``(S^xUGX>H?$a<>O$4)BM7+$_>7FNmc^f)}L$?c7bCl*m zWn!IR@bY}&U0(@q4Zwkix#aSjuO-Hm9dxtqG*hW!?zFy{P`YC69^IB3c2Q?t>*>h= zOd{=dZSbI};pFW%Ce-5sg`IpwXdf`U9~DvP?ZmWnf*(@hY`CGT#HVc<{s`;J*&Rtk zQ^PY3S4El)RNJ2DZ!C2q$fL=Q47gL3_G9^k7=rYtSH5%xuqi1eskib|6xT=^)BGeU z4w4Y_-K?e8H;SeZFWi3>9miBGdgL{ zzfgIn-fC$bN)3(sUkrU1cFGn~1i511NJP|7a& z3cn@u?c$u%WpN8gOx1)&9@Qy?5NL9VB#k5^zW=xk zk|qhh7Bv-Q43PV3=zUL8@N!4*`&@OmnsA`He~ftFXwyUyQST%3w3!efV@!$VB!#O* znBtnPIznlb6_qv$b4?1*{iHLQiN;GTVgyc3h)GAw2y6PGZna$rELeT$F2Rko$)|;C z6Go{)(_P}1A|0~heaC)0SCf~Aa}Oa%BX3S1VX|uo5{%|`lVGOoNVeo6U0S^8BkJ}X zySJjIgL*tt@ryr|q5we!re~p=GCdI|51`&PWbj3e52-t8z4F&wTy4WZW8kA7USmHR zl$_ad=($=~N=<45YSPT8jH>w{f`IQfUsszBjte?0zp0l<58AF?x43_Uf@KdHYB(YL z6J5LgnOkTvPpLxb!?^2#gxFAi8EI_g8lSfAjlC>3L!0uiP7^jRTQ~0pbJYs1$X2;Z z1KY!!%=ypl(=}gPC~?=ey!KVcxvW(dudK8No$hkLfQ_Vq00HYzz?KUHx8rB7yRXrg zB%!*qOM=L4X#+o$$EM9Pm~4n3uj}i6Muk4Pfm#7Fh9y64V#g1lyy! z=7u4!K@X9;k{}uiKSPLqwi29_d8~zN!5t%kaf{E%HiP4a{Fvl1l))6h#37)(;YPUH+ z!x5`$8-GAa6zg|yk|#6D=dA^4ztn!#)ozC5S$X>!+rsAlo27n+`@KyOHJX-nlabNZ^&x@D8UZGoDF!zXov>PoHR&lEMEF@W;#=_c00qor`INI3x2h#Kvr97RUhOx z>MERf5?m^3;6_I9mMz<@t{!aQ4hedFVx8!iG%;;BKX6*#YtSwkHBlW>i@GB+0+MMb*F z@VVX!@&M&;@&yO~S*t5uLKTbqYa=L*Lo^WN%s{xY3syiCyFiv=?VZt6=sGjPk-dIn zuvipvVV_-DxvU&rCihVjegE1{o%hb&Nty>lr4Xm;Qp&CignZCPRl*VER8P6*XrIR4 zx}dsngTHW#=zssvwfFvp&;`TnFaH7q)%E9!=OqiTNs#vi5`cOm{=e1z{syk+M>q%w zE4GwwENhPcE#iY0?P33W9zslE#OWYzD*s|;MA`&i&YuKt>*caK@aIiE4^An7F?Sac z)L)44XaQf_la0Y)C1OA`np~mTXf~XD-WQG(PmjO~Pe(%2Z*=K2>+L18=AFKAX~!xO zlVn~vd-w+Ldt~w+!tci27Gxv|CCb=0EL-H&O<;(#+2lQu<$zK=zxnoh*aZQuIwQ0c zDhrB>Vh@4`yi)417_#Q0WM5`p(B-tCwoO`db*SOAVMEQyEhR*SL!;z}pe$4#b#>Wh z%=Hxp5j_yF$Fcr+l8Sx8XF9pY%B(!Nu}X`ctd=nO);r@Gm{!NF*YP`RGTMfg-eH4u zY1|-<8DxDUpaW){kYSuP%4!UGVe^&V=Y z<|z$kKuXH``kTT4>Bc#GM3I$AqmTstX2?HI>|8Sy{u$ij=(!E@d+=XnE33bL-SdZa?m*By8cw^JbD=GDb94d{?&~8qKu$yn;U!-NO|WT0PI;YMxt2E9MrT4Qxq} z0MvBBP46;qF1s(iAnW56JXHdU^sbbu18y{hB3~5uF!^1p#|{M*ar=bV!18V1-g$e{ zeDuSNG-IdY7v zP}8i&ZfkerOz78{IN-4lY6qYGr4l0n_wKT3y;f^0XRMwPfH8Vm!biJ7|=Mfas#Bi-^JNdzITBT0LFx+ zC=v!)l8nDm=Gs3CV?fMPw#-u`rQJsdV#lIl!SU@B(quVYNbkusoj)m9B5*#c%&CAv z_!kLWiG@s%a%+6j(C=hVU^+C%##L@3z)6r$)5AW}qZ8JJ6Bp;9q&7-SsIpMHPG7rz zQ^L7d9JbWix&-TASAA*%CFc$G0MfM5Q_ZpwWRX?{%w7=RF%OE%V!BZSrSfS~ni(Tl z;llH1nv2O`2CA4s$G_jt3#*q^Ai>byd|<2%-Gd@s2saFcC(*I1(VEZ?|-yI44Owlytd!);b%6CSkF__V&GGrswe^REb=HroeWc_3A_j)v65 zPayn7L13dcQV*-wo)|g6W`jY85of6=9In=}g@pTVU=&(CH-aQG3Gpmn1&&X!MbJ?y zD&M|EFb7r;Nu9A8Uq48uUDuF!pA1QO|HHF51|$vx4qPQ{ZYD9``u8H0BRk?> zo3(3j-3T_(s9w9mtz0b}Q3)4~jAJ3Kwb)eMwr9nq^ocdg#yGt@_*TpiBy?;Us0$xW)CPqLBg$SY z94@cP<}Pr{l}$B_M3?Vf)=|0d6H%$i)WD<+MpQV-V;GXv>*76H?m4;eszgwlr|41F z0SW;j+hbm8-mX_NI)F4+LYifoJp$!BE7m*X;@YD*jrin~9D^^uG1H6)cfY7A%2x8i z+9AlmP@$zAuoa$0loF|(Odnjf_&rU3-lWu`L`ZHt?-=SkuMzGXfr+pPBD&w@^X8{N zy0t8^a1@6Eh;O3Igh+06hUlU;#5-^+(;o!IF*D| zQ$Hf5GpF?;RI%(+{%D%}mJ3=iltrt7Am+!)XQVvNy;cKJ%+gbR2~6_JXUh8TIiD7% z16Cov!7?0uxN7$z7A33{R7TO5`W2%(RYsSK;9e}P1Kp-dsrx;TP8s^ObVk41Pc2;a zs=3rv)lpH6n;yVb#cB!I{tHo0hPcJ$`jImhl?tsJ+I5%AeG45^)<}SHm!yy-3Xh;0 zi#M{2Ge#?F8=uONkPE`2j6Co=@9&Dz!_ z1!#1M{Kg7y?M1d{xpZ@me3Tnt^15_DILhS^Kl50jA zV@u3v8hwQs@;4h3t?{1io_}Z$>^AypGwkNr#g>^Nt=w}pL>aC6`8{0WQ*FAb3;y&z zrHVB#2e^%?)BY;@_pe^&hGEq^DvVAfs?{&K09a^i-8T0T9WnMq(R;9#UAdJ;)}EhK zLKm68)`rkh_A%O>p_}7`>#ZzP_AnBj&9sD+JpWwh903uVeVvhV&Fhm$6-AM5=L@Hi z<~@))6AhoF3g@G_{z*L@iXQt7{aJB`MPUa*8UQyU<@A|k^^yMY97|MG0;`RoC|z6C z@ps>wd*9(h-xHDFiwNEncwVxd9t2LWx-PCZ-5vxEue!Fc0HVysrmo)|uVSmK5_S%M zT^vw|iIjw;)6vx_e(8nN5K0$?Qp+$Z+}~zEH+h{Mfsc0E3-UbP&)+6On&&Mn8~}mI zW#%U2rRCL0m&Qz;(6h7iL$1~C3bd?_(bI=Rf;S!Hu7j&do)_9sf%7YsP@sEzlJg}J z8QcpduB;byvgR-u_ldWU9l9tc#9JXn)L2@_t+6;9Ubmkv#yQF^cSau&vgMEr`qSI_ zLaMe;eb`xiK5p*Sg>UP4MovcX zMg2g#n1?&5mZ}5NXwz-M-)&hjn|!pe?4NA;gZP5J#r=mKq6_BgGej3Osu*Iz1K}HL z%vNmkcaPrqcW{N!|0c=+7n_R(aP?3bF9d|5%tt6p2snropOR1LDUOMO_$h{~rqC%& zdS;(eaxBe|Q(lNV&{9ZRMUa|8Jj`I>fmM5QG1QQ*8*cu7nULR%ZGt4#FlV5%YDr6I zp?EUHAW9QO^Z+Q0bEnZ`(=|f3CXwddq&QAV-75%QOkuXhk2pfYS?Q^jy&7t-3a^ig zmjFa4ua)w)e5Q5!C+nWNv2kTH>Wx$>d_Op)$pflSsf#OKnOp)=u_Gxpvz>L*KpXF3 z=dEgSKN|-3CE{d=4a>dG7s~~!hUEeVio+A>UoEw>cca%W6M2fyeVQ03K|JdlR+)!E z5@oDxd@OVwca>pZCJG0q^@yynGVJ27d@|43nXdA#wzb#cJw&8*y@ISg6u&qbJZ!n= z#Y`_*Np>NxWP2v*S#BPe@e-Gv0m2W>Z3kcf$Ol_*%GFnY{h}UwP*-zLZJl9bMC4kqj^_ioJmJvNK0o#Ndk1TGl#B0dUv2|qDIk1Ka#oJI zSkhWkL~bE*%e#rAJ!pTy_L@p-zt_#+!cY6gVRWjJzR!ruqZbAGBF^16sTU^fZCG*t zsvDdmlIan=@xGvMSw3fxg77KGTQUJN5?0k;PCu{bQQF3Q#23(=Ba04GM;@>v|u@pOp`d~f1b*^R={_u3A1&ft@(2)v`xKficB z{FZ&_>+yH8%kP=6cy=rvz4EEhK+TAnRj3FbAl6wIfG@2fwjvZ?;ZQ1iBGC${ZnFb~ zKd0&|NT`_p9E$%l#6oKu16|w7XnO91TBVQ1o^E0^ce9r|vHflADx~@by_+LnxfC=`1;pF&UYP77lCkjy`{EWOOA7Sgho22iiKjT$WaWel7~vBK={B4yRhIL2 zel;TM|9S9730|&j{AA*#9h{#L%;voE>mE~hI=?T?F&7w+OeoyCe@Q9wqW7OlOx^}2~f{Kqt9Ji>)bjD&k=3w-=;W`zpq8a7KKtQvg$E{i8v zzx7cEg_h*Vf=>IdMHi%Dh0Rx8>zP-PgncgyfP#Eqx4GFK-PwmykDR>UnGyq0-n2ap z*9euBi$OhEje~_Q24baE6)}LZ(MV8!D5))GdXYoz$Eiu%bAcEmHgr6U>uQ`CZ09#- zAx$ra&xyy5CZy7$jF7N&1 zj>RaoG1c5AXev&0CwSu|UC-%uCoAo?bC-029g16V1zuCauiDP2*m3@-8KZT|L&@a9 zJ^cTxiL<$Fj_M->gno)qmO6XN6-fsvz{Y4|YvkfmkbLTbY4vANfSS!TK~^LLLaTOL z;$}6PbyzS&?|1W9ExvGEpHzS;9AlYr(V^4K)GT2e4{3Rd9#eT<`QOoX2ENTs@=kJX-try#WRJ$aKfV%w==I?c0}>s_ zZc4w+GCXJLO~5V&D5~L{`4~P*w{+I>c4Y|Q_}VtH?zH4ya>d-}NYyfk)d@vl8(GSb z_(}vFI8GoxAtQ?PGZQoDx2*8!gX(Jn z?=kTLGhN~I++>)BVm%S8S`T!7Na4)36m2k2BRF%n%8@e}`1BiTK9CpTq zXQB%|7HbG+EB1=ands?31w#mjjdNw4^DW0yNb^G($Le!o$DDPAZj|GYFi6e>m@`?Q z-Ez+K+=5LT)o+9Xc|(I;-9SGV^cvSANO1nFB*IACr7002s`pxsnZP(0NiI$MbDbpT z7m&{tA;qYmww7t*bXo=919{xX-sa1!fsWSv^?VvjYPNBM!_ZA<#loMdJ*oOvkv1kA z1N|2yU1 zqhfSw(Kp#X>h1kA-$AzKfsdJr+NeP-yGp31ydX@Gm-PqBfP zu7p=W9L(9n_Q6jdm;Ou^a59~hW?ZeBzpRLdTl{HpR$5B5TN0hkb!bb{9^Ev#(%&fZZlG&Yac6c2S;&|G0`~2pz#X7vYz7LlV0Cr0jhd+LuiA6tqUJK0XL6?5U(x%N<_W7ODlTlqH)X+L%AzPtK z%AyNGh{asgW2|>drKcqbq^rEz1F~b{uGPe{tKNLyCM}4`zJH~PX7G&zu@6ySth9H- zUI$B*of0^SRVhysDA=B}N3J8<1%V1QzciP|R`$I6Q@V2M17_MS+jphh1Y3fWAa8s7}kWlvy3ujUq(?g(k&q-LuKuuXZ1 z_(@HvR5=fmfXTE@Ej6P%Ow0SVgbI{ODjRhgJC-$b4s)R;wFbgLbwXdRpQmG8ptD$u-w1PqCE;4}%(r+L$;mdYCm0ya2RlC#zF zM%vDX>F*84!Q}O8#230ML|#(0A1y~r?-H?C@m>R9(0|MGOJguWOx8qWR@;zx#P$hl z-12F|dhsMy)xO5KAByGRLHhL!`a>qHWW?UWhl%5>=S@?$$g6zu3O}WI{DGVlgu_<; z#)=mNP7_BB-{}$!uoJZ3VhnFP(>{nF7NLL1c8shPq330M3Hvyhs5hL2^@OqJx7)y@ zgr24$(YIf8cg2Q$o4P#aHhbI4O$VqSna8Kk62gE|^xhC{?udj&e`lKBhP( z6;s1dI>Rtd>l7>Ul-@pw@s|tRH+eX1&_J@{(8UXeanLjE%j!v_CUaLWp8W4*Pm%nPOEM|?G!9X)*T zQCI!(#b7H^32>M%^<=AjIdzq2IDO;!g(+i|;6tlCmhy-YC;C8FCCb*S2nN3^{`}+t zvHf|x!Y7fobA4?Do%#W};vHNr_P=+CChHH}>@W}zY$-x`@L<4{EM#!;*nf8!Wit~8 zXHzSC3l&!*S2GbyBYO)o5hGh$V3uv8AWg@KOWUMHwUFEC?In#G*nJn?GTh8WuIFzA8oJe8` zrV}WVgxgJe%45wpjqhMm*M;f%p0vh}PWP+^H{AcHj*E2Iu0JS09J>>onYS*B6#_qq zp+m=}A>Z_F!vZgJ4qrFCUgRgmS<=9=0{qAsPr^P=(M3B-b8NjdpyY?46 z%6~;iy)c3hM%Y3RLo(e$njW$bqvvO>qCW|mc`xX*IpuxSqM8+x)k&Y3!C2D z#}~rAWS`)PMsfcvK<SHzMIoq=P#crlvE~!zINvFwn-X3TmGJ%P*URsY4c+%t4hQqAU&Mgl!7W6q}(wJ;rI{j+AOy4mu{v?+JB5G|H1aZ6#WhC&et zs?#Gip|pmZ54R`(waPcp`&68~RrdL*jtq(Z%e#rDFk!CP&y?B*Pa5l^=^s|C>&R}O zhf8{&&{XQQQmjf`0I@($zh(PSi&8Fajf}Mj5PS*#n(5562(A4^GYU&+AnaI{ z{mq+wsKz@d!Tx1&3Ac=ML++H(h`R`Ni7|hRncb&VeUinx)p&eDjh-QFE5MxD zwx&;7Ax<=Es?jsdY|c`JB{VPFwka&Hs#LMKBhs+$ZB8B7`5^GqY%xeMV8)TfoNkT)yC20X$LTw&uA5=_8h{}k8i*T*ryYrx$ z5nYj(;*XJ-I8h^ZV4;BYMcG9 z2u}qIB7SQzc^&v;b<~{7VLv{OPe}M>8NY(Z34T|BM<|_SHlZ%q(!YPOAqq?QRl-P7 z8*Yg-nWxJ1;R$?F#s&Nup>aXZ?luz1II~%NYA$=%7lOLwI6ugKUB;(yk+)D0Ys6Mf zUMCVreESUJSH+D< z!9Qj^taqz=l*QvL#&!N}8Nb8%mq*20F7@|hJkMX)IjKn8i@`^P)An%4mV;Q^BMblkB$y^Wu7YN4uYSZvrYA+mD!cv5p7ae`PoW% zwD@sefyUs~d2Vl*5OYtMiflh_uf7ms=Fg=x-r|4iYCNRQIW#n$@o}GFjxx&@4k@AF zErw{z8F$T_sTH3{3N0<_C@w&JJKb23EN-_)F2<~4+JxLtX4(Am40u|`37&2v#t7B@ zn$8AOi3w(oax?fAHlk{LTs1ZR?7Z~Yr!|YPqX;eXReSuqls{c<2MVR$}nh*j`SumcbC|D(;?p#RIx%r`pxP%FJ&8HbsO*O%6X3isS&#$Qy zbPuJ}xOPforWG1cHC|b)b%u*B<+C#qC76GIfZ*Ov&RB%7#?VCtI2SB&EqaFc+I9K3 z5GqG(HF{=1O*%=hd10ZH-@e>#KIb}kLxZV!+~K=%u|fH~K{#H(yjSn(FriBH$+@PC z5DqTcgfH2j6G{>mfe!Izm6si7)i}W~L}dFhpXHiHRA(Aum-v$C1YxuY+itr6Blv$b z*O0`o&9$3^N=sC+xo1x>!p$MZ1GS*Zi#xioV_^2z?8-@IyMNuTh&w+p6V~Ss5JTrN z5-!knj1yK2F#EI-%SD|{SBN3=SxPiW&4N0q=hd4qe4yr!V01q%nF#3HZ`DI)eu;11P1t0SuxRz?!GD}1yKfb2+UrACxG9@@hVPr4`E7LfThIM~QnZ{lvjj3nw<}}`+OruXx(s&<#)jErxC_@@QeJSVFjqn2a zI3#=m)p#6rcmnl!9P9BUn(#?%!Ub%_lR}r(8F@KxZKK_^2Sj^0H&8Y06J~;FztFXd z4mi3FIl9&<(>RpXMrobJ&zE5ivnt``XHbS`QHy6>GV5|O>l}ZX^F`qym=2_UJY6`V zI%e@pgy--C7n#PB7Z-@ShDv-EwYcVjx-JKGH}yC?-vh4*tY*bCgQvv)d0M%K%g2-r zje)W&c$V+UX;i0?K5{uHW3>p-FQ5!xgdbl<1HOqSyeMRC6W^M1W;IhU^$GdSbRYEz z?V9NzE;;KWxFmmq^N{$@b-IKSu`0p^KQGMfOyjc|HGb;?e3=)&%d^H)$~0D|@%#O) zv-mRMJXW{P;*U8p*9Y2W@#lmKKl;Yy1u^k$Ncaw_@LjCM_pkvkqZ!}FKHNYret?6x zne)#+l+*pxFFX~=m?UDN5}vi?uRxaYm78b)(Ll~iAt!(E%amz6wIK3|T<$1yAZnz+ zyu@E!NbJo+OmvuroKSq$!L3ti;OTT4Pd|^f8La-AKPl6AAdSDv0r*c!X&T?S0C|8v zx25rKmwAdtJ2v4Z2QURbfL5Z6Y9Uh{YH1Z3X$^uDKs&9&CaT9~YQQd9FSNT8rPz!L zdL0c5&^mu}anMO4;wathsAx?1R8q)Y~!^dzJ zhvhsPlxf_nOk=|={<8$iG`1+y*qFvmZunQ7h~VxQ5z*9^jfla9^N`zTIm8#>ZJ(u5 z9v&~ug+~WZ+SH5+x*N505ALKOT1mksYQ_E3hQoi!5@hTXj%sE(((Q$EoeeQsL0H8Mr zAUwE^%VU008+b002-+0|b}1l@2eL@F2Y)m;9ig6t@hWWuF6=P=Jsc zm+*dN43}_#WfPYy;$shgT3L77#{IoNiXudbj`gQ(*^C@Jik*K%$QH{ush!eGWG#+U z%26y^sdq!*n1TrbG62e!yEomJbWQiCeuDHIsZrZ=divb&(wBaKo}L*(FeCybK-mwi z{Xz~1%)LL}xpxNO@E`yF%ijQu&&`6t*DM^trGSuDVj0$kg0XYv}P@HMXNB2@M5{5RIAJ?XokZqL(vPH=SsYQ z7c$t**@qS^Q>mzbitS8l_Ojxri_8Pz*Zp4xS$^Gt3R}@sHf!pdx_XJ(roOWE!aW)6 z^ruRgNGDw;BDnOsNBG-jA%X{z1a z;iU`?@(!a7;U<)2r*5%H%~lq4R+-ck-K=!xun1jM<`DLbn}(1uMtD8YV&2FX&NX|W7oR~Vf zKDO>AUN3rZE`te768a4G;DTX0ilH(}oERy$bYZD~9N&SZEshBW2r^69rICyh(m9Sv zB0|J9NR+P?#~hvGH5;Rpj{p{+d8rrEI4|Ly3@+eZLN09junGN&J*oI-eZujE>mC*~ zgR2@a*)-2X+{0zQP|pzl*UpteZm+&6p&5p*Y7Z>q97wr-y=y}wi?WoW52wmp) zEmsJCZ;f;seF+~B_HFm8cUPO9)2fETH6n!D`cxY)o+%M#TlDV0svPouT*w%X2)NA_ zoaf_m1_p*BU5$+tEl(W#c3kXOapMg3P8njSk+bS?StEoiB&?in@hQ*+WSLVXC(H^X z>@I5tyI5aZVAf?W0wG&ARYjjyER7$#A10lDMa?FhjZj64ht?8da4Y)ivdhpl6}~99 zPkUV1+C@DsUJS1V=R7W9NXTQuL``^H;F$5=DSQXnj!PLKX`#V>3S5Dy&d(E4s>KwC z5%q`NCI7d6+~FOEZ}Qm}f=oCWe5U=(LzoHc+R@BIFk<1wNJ7{h#$+tQ(A$gocra0a zXCA_hSimu79>VgD;5(Rk2wE)42(v+pTMG81xq|N}x)wvGoAwckRbadP!~%;km?6t{ z9Ja7EI~GRN*u+AOnVB77cMzCZd=VTRzD_@3qToe30$j^wj7FcO->-J6R@aBmA1q=J zK7X)?s`oSXU=abX^{sctzgtZ>)Fydw}(v_ zjgb&S&I)rm;dE#6xh^IgXtf(on26@(mQf)bw%gmA@If@L*tzj`@LPM|`<-|;f~2v+ zM0hQ@fTpc{Lb+q|fOHWmejDz5VhVZAOMLXScW|Co=`nH`VPKwb3_anEp$K4qK^sBb z_xHB{v!!W4b6KLSXF(+V3AlI8tXnFZ)^tXAxy3Ry#>*iLU8)<7w!|(NE1In>=xp3D zOh@4(XY-Y7dx>+Zxy)vmqf`_}DG|C?6ur&}vT81kxh0QnmOR$zJvO&$U%4=+8C9J* zra?H|1p9tn(Y3o8vwYB_tsw7zZ+5W9W)#gJ3^!pmcGAx?gIS8hDtukOU>MAr&=uQe zwuE03rrRqW#cKq~`#Z|-2zw>pQ-V zEcW`2Zy<~PzT=z7V#s%V3t1fW9p6S4!@lD?$l{3aSV0PeZpH5iS1R)2ITtfwaqT)nmBkFngJ%(Ez!)=e@ zj>n)N?W(&7LLOH@Tw8pMv|y^qYmokoR|$W|sJw<G=D%neC@Yp%>`Xt?JN|1R_i zS&Dx}&sBK?Q==Q0I=X?WV;h*tCHYG?e@XEdiNEx0VCqwR{u6K98$?$HQA6V*`cM<& zS;TJC#Q7q!s0p=;*o&G_yNLa$3AKwDLQSY$#6i@A+C>bbCe$wC2x{o@jUs2zJ%%NZ z!SEPNk73zkxbHE4SRRAzF*xXPN3kv>T4_jxf4LG33W-LK9?K%5UI9x5{tgTW*!##&_H*zl-m=I%GVw?<3*X{e%8- zw>=*NzI=4M`AE7jKg5s3`$zaOfFX3@Cm{UP#?SC`-nb63@e6zm;FkchNZ>Snh2Nyo zIE&x%_x}VE00960P)i30sG0zmbO-rBfSQH zta}M~RMpx4?>%=WcV==!k_iDO2^b(qm?Q)cgAx!z2rxApSwK)4Z!(w3$YdtodnbU} zy49s_wY3}4*7o08v@Wd(7nJUcws!k!x9{uM#a8Y5b+wDOw)~%S?wy&NFcVU3pQmQd zJ?Fgdd*1zh&*7PWJ^5(>ZPMK`7-7|aNNTKEO-A)pJlbp=G)!$Q9d9;9bWKa@+DJ-| zHus4?@no!D(X+^CBYf% zBCI<*&VDh-Vs1-E~513Xz2xSV&IYG*pYlcr$D430ZN%h%_FJgNLtsmq}iNVAoiZ4pcV`HF}l=va+{ir3UX$5 zW=KgH&CXY`ezAf&EFsJq8;o~UXfiBv2WPsW-jtrn1$ zDyYXY!t6Qa-cfVZ&Its8lk2p|m#8qq|k7#lP+o%2OIU=HZ&$UY9^yaG(sOf#O0 z8O^Rey?SaQ9(ABLD_DV*oV1IzgR!)#M>offvAAIjn(+i-Z2_>RYNm~UVO4J)A5A5- z<~(}^^z#&~#`%N=V^dVD-&A#TAU>w`n<-r*Y|M|x)`qxYq_wF^IvGN%j5UNg82}^v zq)D?mBK`!>f(yABt|c_pcTQd8u%*>jp@f=@HMb{J!)RT$!-sW*r6Z}a<<6$%8Pb-! z)pdFQKwIAcM{|*a4cJJ3@Ee-hHo`?nXsmZZ?l<*#GS<563@U6=TYcC>DANv@x;mt5 zMmk}(r=l7My;(sAwh(;dX|sdRi^H4&IWi6CZG>4i=(M2;TlV1%*>A>ZYX5*bZg6Cs z99dU>47;bn&_k%Op^d2HW?I(C)p0#_g(ig7+{MSe*>Su3Fw+U|5<;nc{%G77 zPpAhYQGWK_3NFQE1b-~27PIS@oyiD(us13g;){!7nmM4xWT=F>Q&(AEqQ}QM zI*#Y93U0&ggjt4WZq7|{`txvn2j6n1g1hiGuBu6HXFKA!}gVFbLkUgM;y?NP;58IE?qn zc)x-V;6B32e><$%9>Fz1sIEWLWHT-yfDhsS$@s8>k8t|t7FcJi28SAn%J?Xu(sdC2 z+0GmSxE~L2!9U1(8R5r&2oKA6M8TsRd|6H+J;U68xe$D#sxfLi`G@cc1&`q3050=f%vu^3>9oo{@)0NqFl5pOO ze{eI*AedR`r&I_LEFLnfwX`sF<+!>|}}x*Qj%ILVO}r^tbnQbaW5(b+q^NZ5|R4h_G%3 zM=u1kwU|n1mQ1Azl~Fk%JoDGuAifkZ2vu3Y3%5r>RCN8K9+qR4>yqg~B|KnSrm#)50N?i2OPW6hw^*HPLcHv3+c( zFXpX}M3(LF(F#JqCS_bTM`cVHkGp{Ts;^sl2nVMeLlOfM8Ia>qNPMc-wP-qKn zC0y`YTRWo0*GAH&wsTZV4kme`rbR_%|GMbgz1udDh(d4RmJl3CqzuiD$(!S9A{8?N z@KC2hUBXaO$#!9mTsO&oN4UGk6g(O>2dA5$f_HAJ=q#L|Yp>xA5~_s?cS$hfrc@$>=6MrA9|o!_3>8 z%IHJhLXK!iq033N)74y@xv;)~qRb%DyhI}kMLB!DBGSmTmrx;p(8p8Fk)DnNBbul$ zWg5+y9oN%7Z7gMKuK6nnRXMu*(n+4jXXpJmKnaD$c%3_MQk^UC4r$!S@-wCs8n<2M zXllRkyaOrKFaxBMA(N?4TC~@5n6fAcrQ>=$Y4)4y$i4wx9T5R>zd{G-AUAozNrSL{ zM*Ny;ytW{W)&O09P1nfuCWYRN%Lo^~W=I+DsOqLTrjM>8)Yv|P-^USbUwL_-&xr&FWl+i%=RL8FFhE$Ny12^@Vy@GX(vpLLaA3@H9uW^?}eb zZG(JTXh#)#oQ@IvYBVZJP-9YEmQ|&h!m|`QK_>~`Vg8X&Q(t%^&&%mag-+2YIj6Wy z<}y0Mg8E3|tz4Tv?W*(k$D=XLY<4``r|7c^eU3hVPw!ivwsww6H>6e$ z>Wd0}iF-&7_n+J_o>u6~+%PI)n%R?#rQ*q0)+6!xXB7G>pRdU?zcX%*iW-ie{p$*S zgT84O?2|44oksjL6c>!7GJT5>a`UZMOLENiyrl2|P5(vTQRut$Jwkvxq)gV>I}M8p zA)I1=5|gmC%Jkoar3E#|&Ra4H#Lf2y3jHs)-9UU~$k`U4AJLCx`iVl%(N75rGSFhW zIzAd7F`6^B+-zHE(01gU(|wxZT;{Hu=4818`}6pMJ%S>erJyGzEBnDU9&{6#6awju13N$JJ;b)lFIJesN^BpRxt!`K z+}h7bYDQAHnw2W7EaOc!sU!PrGMv_bJQ;Ho@h}T2tb)g!S+1C)9WZ^Yl29=@$uQIj zEgE2R**uwr6jsHm37gNJcjfH_aZs**c1lr9GY9oJp~9sNPNmuEWAh7^nmZyLJEby! z0%&2i3R@`32hMw5KJbr=6;{WVI2SdlskSAfyyWEh=NXv(jT>XmnT&JZJcC|ehMH+{FIQNzJ2iB2t*hBeg{|Tf#hD51fGK%@Z2!&9 zS6B=8-^I?2D6b2-7F?jP3)xyiSxyTw6mO`X&eP098xON}3R}-@rNq$8wzQdQSCb=J zf~(R7g>7VQ_Av%V(__O)l~=lp>d)$4W!6rpFN{7O>y3|?X3X@pY0$odLq$I71=zDXgChsWg)!Iwb?28&ud1k?luVY}FF zf|BGg54IV+${}pccW+ZTDa+1G?cDhoPnT@i@no!aZ%VIC8=77lz~$_JjS6CHh^LBq zu8VWmIWI9)VZ*$Tl{C@tV^M`^d|blaSuO*^ODv|aQJ%8Nx|YyXL-XSRyFy|6c+i@ZI6I&~W(NuL+(OB& zup1ieYK2|H^Y0oPPcBTj(F8&4%?i7gT}P1gbdsRHzV6%9F59H8g}5SbEoL{c8)fzu zh26w%Cd?O03OzR?$WDWdFtD(tQ7Ho_eHwA@KfF5QQJXL7EyhqY-8Ph2iM z7r^uEPKDjY-bN@IPrt7Ft=&HMc0$=yZu{6hT-Dui+z(>!QrNrMdw8Lf?Sd4zftg7Q zg`b8UQrNw8kg&kH-z%_|hp6{)oqRv{@@L8X#6>>4PhlTqA97N&glZUenlSZ#Q)V9~ zEY1KF7h27(8?9V_|J%pzCzK{#;uwlYee4LKQi!uwcjQ?cPwq{vt>veCP+=eAMOUVi zo_XR%>|upH!X72en*0)oFu!15F(UHHrR)<5dkm)u#c?CcEgyTFZ~;d#&V5PlntNCq zQPYOTJxZ-Dom!pO0*0wY?T=<^oD+0hp(Z@&V<&hx7tW%8R(HF(ClvN1JH;zgbwVR- zn^7BX2HMVXe@bDWW}hLHrCb+vd>P^L|Bz7?3>Px{9O0atRzwmBEv6>Km0Y$t>0@6Y zoFg1*t-~CffE7N3VVj2jEEE_6Y}yt2`oq{ zPfNe1u&=X!ZxBjsC)7TgN(o4Bm`OLfKnG~b2A&s#OXXV%dzO8h`vIunp@MhM!2w!zJjo}vDp!M^qmLaF_+e_PMap@FvE ze!^_~OM6@Iz+hj;&_G+?){X%}nf-Zlq`$YbZI@t%gHgP1>g#Ch@98EeZS4b*p6<*o z_1w&m!*{)%A{1vA_Vg0UU8Bs3EU0a5eVo#N-j2SmNPoZh)X}+xP-)|LU)yrJC^i#! zl;<+lF~fpS-rYu@d9m?t+=90jOc^qd(qF@i^Vj~G{Pn-eAb8qSQH@aA8Bc26>9Ju= zAFzAq!Oql(n%JT0aXxlFdd$)I88$JqY=qn4i0jtdr{xmE(agU)C`nI#sZfzTlgEUA zU^>rZ|B8M2E@kH%({X?ha%_J`9?P#3%59#I4o@^z^BPr)8W~gB6f)L2PnkN*i?tc;E zGqNw@N+vx|C$#?u9wQOzrh3=>{FQXUTcj3@)C7O_ z;X0uxE#A8l0=b7Ef{m)Ki6&Y38Lc8hvEgnr%`1$lDDJHB?zL~&WswyK#H!PWlt(g; zjSK%Hnao>bZgjR26px8ZG6Uxf#jY`7Zh@SLP$I62yVP;v2V`m4q*uF{OT(gnRB}_C zC)auI_|9larHtkXU#;n__PshU3@bbHTv_vI>h=SZFW-DIJ(V86SUX6V<6aesZb|9R zWm=KuT!U4((L1+b1bNu*NDvmCy%{4OBk}Wc{*}8iIs}!ByPI%?>Pavscjz1~%5<0u z%QMqpCMe^swi6*d^A;7spG~8G30r31!)K826QnfP`oKh7+n+hIt?rpq`ORGGur^C> zp~j)qG0i_EsLQ|%2&s!HLRH~Pp0Ff4IZe^Yd86f?NYr!|exuPU4&-!bCTnc2aYLA8 zOl_i@X+7DKBzVQ^Y=UQ8HAjWfM3Q?`lj?1o(#g+IA`u?0*_iJ3mH8Hb5Xn8AAZbLAc1xF*!B^^)_VN!g zMcPG`rA1OaAYCEtlcj`zB8^E&!lImL;>n5BKCQV^oU2PS)xGM7nbHpuipSieuenP_ zXOm5WeIBE(GnLwx9-sc5$fS(}2gkM7HhJcglr#4(J9D;OO(go`Cf7nGl1ys4=)h=( zEL};cDttdjD6&19ESawR<}+S|6N>EjXN2l$ib+{IK&U^vld+$FxDv|Gc;qTeR})%h zo}RlOsS=7^BUyTLp?^C(!-sgXbRD7b-+@3VodSa(Z^}d(U+%R^QD)ZbT#(M1dI48D z#g)s_TV0pt`7ag-UT5tcge5alYFWCAuweS7gd%$}7J}dbvF~6hLhO5}1hMY}VC=t9 z#s0@N{sC&(|GLJ1KST}tk!$>8)Ucnp#?PUK{nR!78LHUx?1k+3Zd9=sUE_CP9{V|a z0n8cCX1@SX1Y*AgP{n?gTT9ns9{Y7}E!{e0?Qe2x(S{oKf3CgFsA9i$&2L2&`<-hX zK^6PGYut@0_6OH^C#u*VUGVBq!~W!&Z$%Az$u)i)HSEuSuJH-fu)ny*$5F%n>KZ?R zD)u)Q{7X>7UUu>6BM4$1LI7rC1y%wGq81Cq-g3+mf4_t8iod^g{{9{R5bIXseDSvi z^TppfED><(u}u7JL=ylHW}{NzdN+FyAaq1#uRvmd2k>(+_yKGTpMVrT3jcAGhRe$y zJC0zu;W*}hgd2~eD%^A&3&J7KaV!dlyvK2FI8<~T;c!Skj^*Ky?>JUHCNOZiRzU%v z!vht?xB@{Km z&yPXu02A!F2Oa@>*(tQ_3J2)~E(o?-SRZVww$L8jTEqVvnQ!6ZV0Xx4q4yJ6J}eOU z?|_0k5yV}Xhqqw??#2?l9rd_FoO!hkTvDVGfqI!Vi`$s^Rf=E`Th*Rcy0L3T=*u4!;!|Q#x z!NRV!p0I^Ir*QeM6BrJTSkO2lH4E{RNbEd+1$|f8f*C%F{T8k%I)NM3dPCmuQQTzV z8Vk3EydDd8gpc9ekk`W9C-KgfqVO?wot-0GodI&41nupfBX-vj6xYY>`@j z0!Oeh#KkBjlSUOui3`GY6Kcuo-?mxcVnC&ai&ZV6NdJ_gXc98P(J zVFE7$RP6kJklW!&oVxXLZj2}KxrX3Y$-?;R6S@_0r zJlhcL4t~$Ve}5L=TU#6sTlk@cp9EijluqIohah{7z#|>UZyJI-Iph{496p9;E&L&T z3NP)-vN3!N3o1EROGCw#V$G@(_{(v;9JcW4AykJw79nhr6h4MUN2%xuQW%cF3QPQZ z$Y)V7?6qi4*rJg4;WHQB89dHq{_#Ty+7mU-M5#SIM+_S(Xc6O7mNZmQUHBM(=2&zt zAI}O`mQ>ENsNo3O8!D)|f>!bq)5^7_+-xi8yc2YO1+B5@!U|d!Dz(tNwk&*%yRNd3 z?@77{kR*#Xg)Q3Vc^H5sOymb>0q`h1_&AF27!({uJsw9Bj$t*9V?9nFf|KaM6SxGY zum_*SK70xj_%zkwbF>1Vrw9(3jGIy@;REukkbb1D>b9;01aGFVa8oD>{u|vts;)&BE{5 zJp6$z#h=)D_$ynFzp*a7%m(oay9BSY82-gfoMzV$*!4v0om9-;OS6Q3xxW{sl*Y}% zc#G*hhzf&N*m_h;b5V&B)`ene9x5@5#jsKeNmVFi*JG|!E!CimTXDu&vwNlaQVn+% z>|SYs?JC&4(mAMv1clut)v_1h!FskwS|}}o7kk)xX)!8Mgng`8szW7YOt3m>iF7V} z(oz6#MtRX`Jc42wB%_6YNS5kl=tMH^m!*0FN=r*il|`qaK`F3C#`pLHod%{|!( zie2;yDueTi>t4YIkQA00Y_EkDkZ^vCat^eJpOz{FC+FC++0extZV+|B=fF6RkGZ!A zpP-9#(K5id(mZ%5BtR+lA_tU*E+^G->djdI$MEu0Iu@L{StL<^0Wj`^MIyzB;cX5z zMuc`CEN)lT7Ih!NQrmcXPSE+?O%=4g+QP*^rV6^mqTP>W z&1DgM04+iZEk-#lK@Ba%QmV%aT80ZKjE&SNhz!HSvs1w$9!J`;Y-^Jm@m&x~uv#b} z6N(^%y^0!I42FMy;j}~ljbMW3bHf(B(V}6`!=2%yw9lesgGEu5D(Iv;*&L4ekvoGw5mt<8!wfMPZ-H3_E9wW$;o6@el$>G05O%7om0cm+Wf z;fAn96Bb=nLD!a-9kb~AoUntO=hO~~I#5dO2+}r}{#0at8BrnZfF`BE9%dFsc2fo2 zT3+^e9%Q|cs1K#oiy#fo7#X7*=`9Yce*mw@WO~C5jZKvvi*7qbckVhtZ{u;eg5F_M z@J@@~bBYe{;vvR7LGM3GAGGNHMvES7vgnbJ*P_SP7V*dt3>8^)+@dFPl!g%iXb=2! zIfA5OA&p>v1x2x%G+aP?v7TbsM5E}TxH!Q!o1W|mdhHX4U(0zNA$~Qp7lan{N-IR3 z62wK)N@*3m*o0ZqdD3bW!9(MC&|&H(NMdIoT}CieoDG{7|2o(kj@vi z(IkP97d{&{UFjrbM;z95HcVn1kE}=G|0qiAZ%-Y6LBRg?m9DTi9Jc6d74+;$`gZpz z`u?u)QTm^g^h0~W&zerqix&NIttUVCJr@1OW6|%!7X9fc{nes>Sd2Ut^LQ*KhddSw zG;q;)ZP9phqOr|n81n$q;UfccD2-a0K$!Mp6&*wiU4wOW5F6>u*hbf)ldi)Kx*nI( z4Y-1TZbXva0-bKc1l^3Q=oZ{Ux8insEAFP-@J_lNhv*J`lDYkPBopi+f3wVU*8=i*g zosO8g8Vl-ogGCRD88*veZQ6B$Z4Sv6>+o1Cvep+W3i&M7wNtp59Q$?D0Q3=*(EX^Qk76Mm!4i59P4qFW zq=&GMK8{WFFt*WS=%UB5gN{KX3nra^zyUgm8|VqVou0%Y`V8JrpT&pib9jJ0k4NZB zI7Lt4v-C8+LSM$$=_`1ap1}|3YuSqSS@@(@X&sM^crNQNo|D!~7l}ysZE1s41zyXZ zk~WHn*oAwfHlf}-aGT??9>IBz$2x^2(k7`LvJiF?yu}-3T6r1|LFNe#n=8|QN*OJ( zv{|M*WjYLOl<7yWqE@CKxm7|GYce?{8lyY1{{Hulzu!J{k!IYy$70(i|M7gv@+KM7DYRU$I z4Nee{!>rn(hN%(Yw64 z)hBSI+f~(7uuCmy)fU^6sp-PU@Ecy4S@g!IP|W|-SnTp}wZ%q`pp#dB(R?Bx5+b%Y ze3Zp4N^*!5EOC-0cXGSBGTdY_{RrkyU4Dw~e|(6Nv=!7G%iAtSghuIj`iXxL&`HCk+E_!z2x!i`U|Hvvzu>lt#2 zBoa?n2|t^I3N{yW*&I}{5W*}h&RT1O&Yr8mIhP-c#Az5j?9=Qs4k>#aQYvy3G+6AG z#!2QTGC{T+#jF{nY&n8#g$tEC6YLURDU%cO6#Gxvk|733te;bzX&kH%TkQ7Wi!~?N z9XoR=gXk==^AKQvt5M0$cVU{7#WY9i7MXqkiqwd~i~)&zApoD69_^tREq^-37hM>Gyf)8(HXs@Cg4F;?Nty7W)8) ze_X(?%hO0?m!XpF!8~@E%Q=R!;tmNE1jZUzql01$9-$PAC!u&kplEKi&|ASi!u2`N zNmNv_VVuK%MzDyfF8x}ZMYz~O$ba>U_)5}tsn0=u$Z6`XndEOjYC)@U`P-B1fwi8H zr-JIr0v6hLhC?1nve-i|!h`|Y%Gd8HEy+Nb+L~hLWS*r&W{TEsx5XbXLUAbu0(+8sALAJ zSlT6u>MR-6PMmTSvuaYnDr3?vsz8>uCbil9+q2aS^=adb*h)>Oe}mzN#2 z=(ccUgT+311g%|@`1^SaTBF6j==643a%ZDOS7zc=#(gzd?CHk@%`Lc4RPQagkbTyj zNV95x6tfyEVDqt%or5MeA1l}*w6Jd3cyt;#Q|wt(hq-&+?i~Mw$?v`$VpFSjwOE)4UZKk`Wx4=)|mo`f`AVhzY#-*Dw z5Mp!jl5{hOZKAuSTi};&rMsouJbvkR=}zfw2>t&600960P)i30zU&d?)+PV|om!WX z?w>Z7@P1_smvDe(373r{y%m?h+#Cdd8_5+tSAa%L@Lr)gH$P%uZ_PW7D#j&l5;cmGeU$0w+YdV|@hnu!jF_zSq zC8}laY+5FNa+8^!?Q9WprY$_juGP4+=-8W9g*$|^r3$N7xno$u|m#y{8|<{IobDrjEPDJRn84&F(l`P>ej+07hcJhUcxI*XK_ZZ7#6l? zJ+(~cS+=;#1Z!G%Hj81o?rh!V&YUeg{?c1^nEB%1vU6FSS8y-*R<+KY%Dm;STdup} zS+(%GuV*nT*Ij6^wojMG9BSpy%QiNQdxs07;R@kW>r}YsS)%G1EBkfYqesI#gsZK$dCaT3 zYs@h=p4oyMA095BhW7}6Gc9*Fn6q5B&W-X>1?@ow-_GJ1iiBRlKfNPdj|r0#{cfyu ztkM)qN0y~nI$V-sDSkQj_eYeX7!mdnWr*6+z623FW7A(8PeQVPbQODW9W!j5V{oNG z*RC^@iIa&j;l#G>WMbR4%^mF6wr$%xwlT47Oq`sY_pR@Ie@;FBy1Kfa>Z*n6wbpfG zZ%*$*n!-GnUOK_NPh^?x5C_|vNUIzd8NmDveuY|dzfU7KVIrSC^Z;!Q1M-*O?WQ7Y zEL$a7Gdt0E)q8D5$MNz{&w`(+uuWAgZ-k$>DUmnvxK+U|TE#gwDnquTayzV5Ans0o zk|z?IFlP-om98_33N>Pttd$C0`o4y4&<+r_tVgGb;m}Hyo-uZcOUPXI5HKgYOD2X^ zgdrP2t9<8|g~inyM(K8%0#w@z>5Zbi>H7FYagSS94Z*a<+tja8Ini+b1DxMyYtRwK zou})%MgWzd@>UyP5j=Kh9BChIy)ufy4Z+OJV&8rqi zH=zZb!LP0562a(FOkuwhjt>^2nYf-mAMLJ^pe20%z3`Ud$wrz+Vv3ymO2cB-kfP@M zy6A*uzjIrGyd-Lc0QJPi|Eg240lawc>Ly_K-^%VJtjvERBU?U zkewNK2u?sIVw753zq$Dvk_A#bLkwCs+zgiDF{Hi5CrY8*xxhReH%Fe_Wv5e;?Kqym;yLfa@I}h|T2y{M zI0pTopwIMMmwve}#Jzvn^LI!6@UKc`FIo*m<~OBI3Th(2_BoKPi(ro$epZ5a75CbVHy|^>E&(5EV0c&<$hez%D@pFC3F8+(j0sPv zGmOc@vos==PH`gZKDD#_NxhOrf42}+65ae5whHX~6WIUvjshdCj)z#$d~|%fb8du` zhFa2H?(YSL&X9bK+1TDj`26?84?%at6-M(h=SrRT#7b)*#P<7YX2G2=}zQ+8}JRtDZk3uIRd*q?xhFwh6K^`3ylpP(fJ1Hf&VZ5W^PKH zg9i!>j3I^aKmacViParD1&O>1r3GomBo7lHw;+o<#J^?o*HsEo%db4(wjlFEng%zK zB6uKI4E49z#Ab*qQNe~Q^ZcUyogUK->CN`yk56(Vt|0dt{pJ!rxg6iaSEk{fZXYQ8 z*{eB2s$4u~8S#}r;|BTR6Uk&!>v0wL_SPsVnpJQW^K+)7-IyI*%%??ejTbd=S*J6A z){pesI%Z@eW}-qIq`?U!II9w%ut~$?*eMCKZDK`%vA#8{>hqr1zZR8jg3|k{84q(< zB^wx}aq7TOjl=JrjGxP`9jNG}&SQo>RN|n(1DIFMU(gp9O!J`iXv+IdclX>2YL{3m z1K$#96+Zc;g_i;AV;- z1?c@KhTywLqC+Ca_d>kk52?tBrGI;b!uFV9{Kn7AVe3e~&4%f7i;~inegONWG&GL# zRIkM%H{xR3+|l#JJp3=9N-4Nsc_hW}#KhsZtNuTu)q?_k!5@kFicK^{yBKH< zL4`<>o_YP}DafZLm;i#jFx}MjCuF01)+*Mk>!L*J4t6iT?7Pk*9l(-+;;#Ow^JZ_+>9!>y9&Sh=&WprXvri@J8N&P%qaS2zb*_U|d zd@+*^JR!ed@EKSNBFVY}h?^Fk`D8jITCNGr8aG-bYWmpT?+P;DVR1538Km^$PZ+Im z3cV)euza^-qrCKzy7gX@5dRiH?TGz&Ag_ z7V{K>U$Hq@$y<~o(`W~nL;Gq&2kcX$v~(i`$_H|~$!jztc*zHJH8|JB1|$X1^Fnbv zN2$HWew)S%Xk_SA(quv$9YR>0eI8^;#eVaJSB9GKqrAb5ar4bZm{yF=XZx^Vt96I8!E1z7Wx4 zq+Mu$%%lw`)C0^fuBhD_aHg2@&38cvIy4=aGKeXnA(AH_Ry;^3PuIC>i=P0+-jTI| z(5?NvOg(56{9fE?kNRv-=6f|zutz3h|knL&>eCzVG#;p~!qU#L)Mb*hTW;j0e-F}gE^4^MBfAIfj_?j#meA%wF3wYbw z6-o2ZMX`L%J`=sfyiBh-Z^ncaGHDnP=lW$$1TDK4bc}j?338fq&7^S(PiNr8b=sUz z;ip*5r<<^`n(uZyl9H<`X)NKOo{#|?ucI9SQQh(>B2RxLEqtXVj4aN{wyd&()r~AAbr;cV5)%4%}z^+eT zC+fy-F+&HUY$;8JG15Oi2V%EU6!bx%yc(2-KZn?pJ{uTgK1t{5aAr7A-MS#qyF%=7 zo+Xr=bLFzP3o|rm;5=BJgB1X2KWyt|vj1wT8KlULE1IpzRGyWZdtQ`S&d`*j_Kzthh+A+@4@rQ6Zy^;9%?SO% zzS-$*X7bw@={6mPO8AO4nOqji7bhyG_y}S1hf&uc`hdC}v&@jXnny@w-R1!{C+;>$ z8lbcYAV~^W*J|s~zZoG9iQ=#en3>NhFU3)t!tK?p;y?j0iI_ZjhXM2A>s{;#Y1 zZ*sBpuyjlO4GioeB`yf*i+*`$A^_0z@K#=Y`1HM^vAeykPv`~G{)shK|E^lV6dwG; znB|-FcPwihf;914V>UD0@8&w?jSEFfwwftRQIhNx&Bg+CRU4Qc8W*N&T5FmYw(RH! zk8N(r(x4yt@9%e;I@4cR9IvV8%>%6(-dhhan`$zIfK=Nd&}b{3?XS>bTx!5!W8?Uz ztau0xK7uYdw)eoTc0(z8^JKCJlW!gC_R5XAR0_>X>@<6GM%;+1lRozjZ-4aPDM`@c zLTA|zE=g7_$T4}@OeUn5=6&;G*CJeMF6)*;$oOP*DNXPj(eU#{! zqX>EpB>0{EcLR~N;C|Oma=uL5+R!8=)08~RVMw?a>ai$Dj6WMEvp)gcNujA<9kd#q zGXkjTVVtut?_RjfC-IWWec^e3IR800emz>R7w9{hZky$V3IA( z8EfIkVE}y-kLshyUcIMGMu)izZG7gOf0^>j%I*xE2CTzU>-v)M$t{K<11E#d$Qs9@ zgQ|?>hcoQ!gO%VLca;IVi4qsYECz(e&usrV`nAFonbE^JRUI=Z+iGm6hAbmLmBXN1 zkV~i&{%v}09Cdloo`aEnth-Y-eBJx%m!XDBTM7e<%p65 zE-~(0S%;n9Md{q=o=2OvoENN5scIAz>;zva8fu>HC{cYkS>?py8)1nTtW2*gyiG*GjR+!8plcjh^#@S8_NjH!Y7B4t{!m6|;Y=AB% z6hEznaKA^CPXb_7J+g&mwVSI=GEYCnUNRt}>CX_&oM*9M@W7jo4|5EJ4Az&*ab8%3 zm6km}rev$z5cr{x&t!ohX_t)~QFX*7lcvl^1QjvJUuH{W``ceCbWU*Gf*mTj@~0NI z*_6V{O){(N0PN|XzF7uq{U6-W1-0?lVl5#T#*#7%7z6-UWZU6zGVj(%d-^Cc+2jp+ zc6*3wk}>AsEh|yfw9Sfe_svmB$6IM6Im^!r$m$_hCTpp=jPqLb=^1*0E!BSR(6l`l z4m#h{6@-|=Cpz%uT`mcS?-*$t9+8)QDC>T1R;{zWUdH>pdw{S;U$ry(nt6r2$wEM8_4ITZrGo?f6NU$pbDV8Vtc>!DxPa76=EPE1A| z<)zj?=8w>vFxrwuYlS{jFdp|@yeO(pazZ1NBG+Z2`TgcscjSbzdq`TNCMYfW89!}? zNbNx!VLil0q$u)Q^5B`HC)d8INqj$Y;Ba`eY1AW~_nqQ5;~; zVyMOKxE{!LIb6cZqrWZ4BO*<`M1h*nLCYMEhd;|;IxQMpQ+e;}z0~U)dFW{;rCF9| zJ71UBS4G*E#i75Q`@^V+`@EL9v2W8tRI&aI89cod(Md;xtl%0vbXxSHf9@;T z(1Xo`I4YLHOx=^w>RC&n=yCVm2HP1=7>ri9yxeT+E3wxsK|+dh9XB@MTXA@iZ=Ox` zDsazUklpm86=N!u66p$3r}9f5y}b$bt}g%)z6xvcW{127dbQDDex~caOkU?SZtmcO zV&_JDFnITmZ+{QXAbq3t_SgR8B+OQHoM`_l^L4>3qVl4ZKV^pWO;9==Xg5Q6lU-6d zJY5Z$P@f1d)JCe=B-P?E+m30=i+Z5L#pYWi#Q7NQ%`xe>@JKNbLq+ChOI4cFLwExq z0LaINq}AJ&%Zp*EH6{llAU`NuVl;^?NGA&OukFA;`v48CUK|nLW-KzbCDu{5C-gY( z5Fugp<`l_T_-D#$oe_vN$SNNEtFcW*DC-hfg{xJ-D)li}R~HiND7xK+GS8!%ghuU> z++ja4`nr6Jv5vBvIHB^f!fAaN7ejz18G~(o!c^_AQLjiuOqiHFc?xB1h^z$9(HrNO zK!jpRu_+XUKoc5rs(e(F9Ih-&za+>Cbs6_P#uHTNGX&~?>fhQOx`=YN$j(+KEg-El zQf?6UD#DV(LeEkcNYFa{nc-hdt{;Pz9;z>OmzOBv%&;>_;ix-=F5YdjsS z!d!Ct3EDH01AhmR{wgb&*+&TVYa81$ru?xlHU2%7ert?@&R1Gjq|dL%fc}eOXU{R; zSfu?5!^v3SD8s#eND03AR@o3RWIP*EI=Z40QnY?ruG7_lf>C#$dh`vo><4MbJVLd8 zECWgMlqlP;9r7!3tsgGgqecr_unFi ztiFeJd!Cc4+*u6BCaWBK`rty#>!{jVNu>`=Z5d1dwexWwS~C&%TYB3uKB;oHrVD8-Q#~ce zKVbf1F)1k*99IxFk5~x=)Rm$;8DIGI)mA1EPda0(bxm&n4heMxM~hrvE6XKCb%V(qvvJKykqrK)j5hbY@Plbb+}gz zox$r)6Eui#vtHu%i@hBriy}8l2G;MP%#?Y*ItbF+K};d-D^j zvOGNr3enhJ-(Z9RSn!xnSV){WBrh>_6BTaR0$Zeg^9cT{Ec# zv(whI=@;_u@B<$u=U9JH?STS@V!ETd9-d-1@WV>>$5!EDrebdPu=x$H6W)}kWEUe% zTmvZcc`S68tjVifZdTfN{s1}ZPL2_b;&_c&N91t4{SZ+A+22MLU;2#j@gni8D3Fsr zXWCM77@ssQ$-Ud|exEdjH`;6}BlO9s^$&u_-w7HjC^_V+N2;){dyD+z7OAvOXL6;M z9qXT#P|P83-=v6yLoYc$Fp9s$44Yz?^k5PN{M`n>etuHPp9l{cw(cFSK^^xBsSJis z2v%ROYxz3|__U5f7KvFq;#WBNpRG{>N~vc zc0hOj#?De{v;m1sdXu`JQVT*k^V!-)oom)sl|HbWe?n8JS=d$Q&PvATP7hVbD>gc~ zUW^Ilgkxr+(P*_=uGZ1f*}0ByvMQKWw%nOB-`x)aaOLdFk%YccDrikS*v>sQWHOKA zx{Yj*<|GF{kpL{N)!tZlHi|h=qBO9di$yctZ zFD?(V8dg-DBV5ghCSv=`z&u_@@x_2F3p)`R1XAT(qbAMnWX*N#zsHf8qEsn8pgaRo z*H}B}B`pov>T>_!DmLv+*|IXay}?fW##5j_{53NGBjQvi)d3fwAqe9v zE8)=Z097!6dtZ`k9*KHTL&Su~V2}y>!XZBS7ioZKvQ*qdT0%#ylYDgjBvOS4_m0ah z4jNkJxDBtNYo|#DUY(|~hdgG*Aht}VQD_rUqLN7WC^k2do5-cVyWujHEIvRkuN8js z=yaFIR|7R`pwW<)r7rq7^|VtqRR1s({gO@~+c1!D3Ugxs-sN9ata_`PIY&FI>1y1> zsO7}~UM9`Y(|oD>F_reX&`yP1hEe5%pWG3(Hk*YJle^z#?td9ZXh(UNsk(!w_dw;C zmT>KHw@;dfuo@z&^G2VnfX@LEy8j~CA=^!6lKm-R&cuyHWvdBAl+i3p_D;wpqa!j! z|G7N%{V4fzs1~oukj`^p>$3i;8)3noIB=G+Uo z@jtGTa=ciO3Cp7uqv)C=QokW=%^8FP3F+d*_LFBMFba+PM2oz&;c)|PT4tZ^Q9AEk8#Wh54@f2#H|k@I4VOz0ej*3O^24VO?^f+=?W&J%Ef3Yn z2Tq|wVF&MBXRjS#}xvKT>2zc$|kU$tL<#g)laP(7Q$_hX4MAV(uwIokL@Pldjx=#B%o7GDYPC5;;LCm zbeF~963q0PV~r%Vu#Dcv?p@)ioISahv`DK7wc+f->)1*fg|`ZGEI=h!)F~yqVfb|t z#w{BNEgs|H!SFGpX33k`;h1XAnz&YgQZx#RP^xhRQVMBf5%HX^CSIFXOThRH{4}#0 z31vdx>6id&5(Cno-1{uHQ-@d`=<|*k#UxQ5Q6C^K+N;dh>uwQPZUk(5ifDSgI1X24 z>paWooy^1n<|e3CGUMh(_LodeCeKNj%z8CBoWf-mVVJ@Yqag*tbvZW$lEo?54;hw;<&Zp)F4#{lRK@xe^&nglshv zITEYOQFWQfnV3o&C>~vCAPuuG$5d(!l!Ox%`5Ll5Gj| zRci;^$@G{1`y=LLIj`b^=19b{R+nF{I-oSC9I-2vPZBd4#`>uzd3)f8(MKy1mCzrX z=kLCmTt1w1h+#btX^W5%rAo8jnprww+Q7aRH4cp|gK~){TrBKfnI$_%avxbTtsOs2 zLA0yL>6!1GmE_n?^D9+RlUSqKvx)TsF0Ap0K6&*FuqD7k}siBi>WXlYd>F$WB z0Klf5@aeF3%f3kb@R*qAbcjr`t*!dh+)P~pnM*M(Hk+g|TX zg#r)D$qx@WWIbX3xH|$=irNm*dPJtOjS^!X+0(7?71X>D#oW=JX0)RQ0w}9|CS8aa zk5*)0?1~u=1w(Lp;TIzCO2G$Z!Gz9*x>_551Ad(juEE}>6zFO*CJ$dJ&{xxp0Qh4( z9aIEAC>J7HA}a2lb8>aHiCvFwr3JPvwF~CH6lvi5R6o`1)ss@{v=3?qT~75PxJbvp zJLH$^O^}v*IGRo=*6CdF#YlDwVwDU4=IFt1vbe2&70smDcDzE zh#z&WIU1?|V8NH-1HPzC@71rtdw`!F&ftXK7H@c)zvdOiA=F#9LgrI!yal2km@}9| zYn%WKogim?sUWN`M{0xtO)oTt0aUV4i94nryBSBg)u4-Hb;7^{1(eDuq_S}7LWcrW zisVKp>cV;!$!4IZyYea7LSKdA)gZ1p)dL?(Ka@XUtOhr0O{@&JLtPn<0}wix74dVo zuzJw{iz;_6E`eRrrtSZp`pKZ`S!X-ifBgIB?mGHqudnnc_Th^PQPcyXQGo#6@*~40 z5faCb206u>4n%!@w6*WAb+kw;G2tw9Q}QuY*H63_BbFHMWJ$p!(=iGiBYVM?ir(Sa_uUMBFdC#nr zuGj=xJ9n>dn=E_>k3~0WXIfIuA|jY}P63+K2OG?PvKkv`Yls~}r=>lB-Gu;8nW#n!M@%jh$6v%bAbQuf2M=cKAtW70i+3z1hE!5x z+zcuIZKHLWsInV z@f`eq<9qWBsVHC2TYeqh{~1JXi%bvzC-q$3s^Sf8d%o@KfK%-c730v+sN1k(h%3AEBL$uXu+Bp@Ov%@~2Tj@B%VV#4U^qwj%cBf_+TzYgw3F>D;9zRkQ`LBS!_n~s%ulq=oL*>Hcgtq~APeNavS>@ZJq`etdt=2(n zS9~K0iDugtzHaGeg>9BWYNpFCT^8A2GnFw8PU${X=@UI3G*=maH5Ijp;9gN%^6S}h zU|NzVEEla@($>n$Z`156bSoB<*P|jVeVSf2j_L(@c(AK79kE(M*%a#CJ)L>1N0A+FdP|*}p)! zU-Q6s`eDDpFyEN5Y}=^^_v~4BhPu9?o?X*xhkkBXJ<(ft0+DftT-?#wcc5)aYg4}G zj*g3H;`(8Z zx5|7ewKud$XyhSYoFhXeHFYPIgoP+T;n8m=>>@ir7r7%phKm84bhJjd+9Wo2}(&v3*%{(M3AsC{eGI9tsgy~&#n#F!c zf`yoaZjY=T{@`R!S?e%JczMCy`-&#HGVd1q%Ek|RHHq~oturQB@0_u1MPL4}A)7hc}dd*o^>V3D}i#lnJBn zPZwe1fg%y{q>*L4VNHEDbZU4}M@Os?-^z$~Hr zzrzpDtle<8)#I7-ptUG!ZiLnNd=Ofu6^ypDw&Yq zjI{8EGp+CO8?S`X?(~50MYp|ixru`3cR-cg25-GY$~mvtK}5VB4ta9k`t||fnbdQ} z-(~iJdRnU*`9Tvw}oq&t;Vh!|Gg?YBj|1~F&&{%y8F zXuR&h3NfG+TW$~2P{Os?cEH;Yqr4TN2^VC&s@@wh3%cM4L7D+Erkow~f>0`HHA6>80QwfwbxB_1g>>7P~x6vRz1qVNX;*4n1cxgd2MMij9S_ zK*RZ8X`-$>6Iu$2#1lSWFLhNGjP{4Ej#^22nHb>Ih+!8#4Q2p5q}jUKGFQOc@Ab}K z=$#NvZ%C%srW3nW>LY8lz!sxlc7vmx!WPuAJK2koIMf3%gK`2BAeh|}s?;oa9Uj`i zH0&Em&RtDt8UH^rz!(8zCm~b={63ae<@3>H(}r?v+w2TCA@JP#(>BMjGL=-F?LEwc zRHM>_HJMGgC@+9Q->dwvPilV*CP!%79-fG(M-dW#zo-T~Nmuszlx&Vi2GgvK1@czO zlWj&C#%Nf#EyTKZm}7HZ^hLOYPO;Z!p4>FYJ#L4i%|xCW?2Qv+Jl@IBIgL~?Gv;La zd#(LCME6>S@uzMdF!4YmF-&ipOGS^&Hw`^k`b{zqt_ASalz$WXgaC$TdwH;zA0hOH z(W_~`i{3iWun}+rofXT(-kZC&YAP##rII-ecH3jnX>;3UEGf_f8dyM?Ql%j zvK+#`Lz6PB6L43n`JtnmGF{XklTo{-5>Dlf)S&}eZja;IF(w~0{IwKK<(*{KPPIKu zU$>?brbh+Ks@PgS5E0*90okF`w29JuC#{C}cD|oheRAzY@4O6uOxH7`&AfBeK-Xi1 z@n)E8)m#DZI}5SFii!4K4Y>?+-Er7~(TV~31bmg2|66EAnE8mozy||U6G^!#h+_M{ z<$8^l9b{8v#FXonAnX)BsxH3&3<;z-v6x~4GS#D%;D^Z2*$5b`P8%-`TxgawE~q-F ztye$%KSHMN^Ov(6%=D!*(qv0gx{mLm?#Z2BP`R?48foHZiEM<(+Cu4hu68o-G9SMr zvO97A5q!Rm>wTlyX15raDfyi(_+0`tqtraklAxh-(f3cO+6%ZZ)6dkY1?&zRtwMVN z#3{y3>4W_O`D|2MOq6ppE6lF*F7Gu3=e4!>w;kATxKgba<64jOVY^udpJ6vQ88ggR z(>Wxlr419%GjB9x@q#Gkd5xB@|FQ8Ny02?Eo$C~U@IYt(85Ah^l{}0Wk+wRktw7>J z7bqAv`y4!;CAxO|0od_E^1SdOq_}AEc4+0y^St%0 z##BRWHG7r5Ciu-^mjGt$})1P1JQe!)1YC|G}0Xbawv zIQy;;AXgl5^-ZP4an2p=ju81Fu<+9U&;iubk59A(ikX&-O-^RSc0}8;JxUvS z50DQBEN5jSirdijzhYhi70HyGzHETH7$ygpnvni(IvmJ=KDTv30(ls&0G&l6>OK z)n=(?@jQ;FK?eAjKANq)0q&vQ;+P2zltCVC?yC;y7^l5th*1j%PK28{n9UkjkLy76 z5NSWd%KoPCbzunc9RMSV8w6we{RS-n4>w|1YvPTgVXQS2F=E(i(g~z-r2V4a8&;Zh zM*e_?Sr>qJ`}PLKNCCD<+4%##_-8I!G2*qR!6BG11go##9R#a`UtB;skKYS9m`^Lz z?-*YIm>TjhYvDED)DG9w9(d^!Qi=n(T|p>1*kk(f(+_?~;{{`KqCRRe;=WQju>dJ; zu>esaF``crNibW&6C;`*SS{d@gJ4FKy{)MFG{h&%`shG*djb;bYpBA5^oOzt<{%#m zz>p|tE0+FzkCh)^Z7;|N{<**n_Lbvm7&Qps6ZzzjSBtn9Q-a9&DunMU7fu!bu8y&9 zc~_hJ`^?>sm9r<>#rhA^*~&mk`~(-iA)G_uHR{_!%K6oCipdBd?89*f=}svmHHUBD zZG!M{vGs}GA@n)rX>gB7`MY3v?N~kEjE-rj&Hk4BX@Fm#f(!B~Xe-rOO#K&C=NsDn&F(u$a_L-1z zp2PqnvvaAQ_iMq0bvtmgcbz;GoEQ{@VKKm1qxJwlI!qQq+NH1HIKaeapfLTQg!Yg} z2I;cDx&Qo)0Q&Lo+N$t_;D5p*aXF*rEhHFND&BuJbkM+{zdo=OdK*o|6#f3V{{%*k z6utLOI6!AIzz$~+b%@`H+u^(>>ptTHS|%fT4or6Lo+1&=Ub##Xt=2e*qB!n}di6>5 zGWZUERZIL{l+gbNnnD@9A7;=@R#s|p7(=|$XA?8~BM|d zc_SMpzIlF?Ya?0*tC7iwo!PbVES-e0Zi9s?oI8VS4)5UMBiZtckhf*$+!F&#v)?9Y z4az!n4?8s}PNQ@z1AV5UHxI+n?{lxh@h_zh=Q^P9$TYr6{$-eZ7=nJdFN?ge9$4z& z0E9PIu!mgyz0j!mNu;BP{mm+I|IDPgHGZm3B~Jwh^)zf(%FE=?y=3G8_HG@?Hl%!h zmX2Y`%1i}~#dFm;vpEiIi z;wjF#xTxDfzBHukfx0H5Zaq|uifakjPOOv24Mq&S&_zR-nV|5&5uM-BG_m+Z0$^p> ziq`J!5~G@8CutTNC0%jSc6w`do*C_OZg#xvwc9rV5aG3lm4%$YsbqC4e-Iv5wES@+ z)qw3?9q0+g+y zzCTKfJ7()r%;C=~!7pehgh6)4KGTE`St?lhc#nK%ORZzqHO^v=tUfvNwk_miErI)Y zHIulOT?$;5i_Ku6ltH1H<5tx9;XWy zAKHSN`#s399~u+liSE6_pWmz=v@7LC?ijdz##VoSAYW?~Yp{s)z5QayK*+*B$jmFPo{j}TqN*{Q&k<^-?ssj<))>RV+Anc)BoKI67aaW z`g&bmeOz`i8v{P~QuMw}^uiY)_#*`%Hx>lWJOXVP3Pvge9LyeIraOSq0BR7*B@1CJ zmd=R~dAks__)HY^j_Rf^bE=7?R%&p=Nvn4i2|PJHXA8;n+8j&rgP{aHMw>QjG_kdn z=(Sk`h^ft+W%{<7mK}!JY8}m5VU?=7whGs+XoOp%Lw?&)VHF3oAJ34K@;U_iOy24xFa0AQ%VVVx>-O1Y!4*IgZ=(Htg|kn`Nq{!PO8!;wX(&Hr1d0G67+CEet-q|ni|M8gaUwu%Sx$T|VlvjMc* zB4t&fy{Qy{ny0~a$^`oXpCc?)qiMklsyGNie3s{)qVucs(fY*7p!>dBnP|k z>>V*BTtonubc2is*Eva%owsK$>uFb)vrHZLcBJLdqydz&70zo3;Bp$2j8cMmb=d|` zz`^4`?)YX<4S`O0zu+tTJCaQsM(8RV5dj!>C@GNo0w;+omMob}z4R2&M2K6bxgQ~2 z&wA;|X{6CSu3Y@nfW&G%;0D-H5npy~?Ka=4Lj}O-I%Dp%PBG4&hI3gi!LFJCa`{0I z|5Ge8us76;pgp>9$=;)5P8(+eD!n4PNmWvGV`!`9$zBR40me7CF;XTDOd%7FMR5Fn z=O2sx0K$Q-+9NC6t5(qyhMO;PMNvSOFQv@>RP3>v4TkqiF&F0c+u660ceIAf+ke7{ zCIKjE9ZL-bY8`(f3xKJiLE?caLK}Y9VVDVQI36b1#T-#=~0=TIacJHKGZfiA(l= z=3#Pn@dGIwxh|0)V})}i`GR_M`nJlpzy7iV+WnT+B6%Et+>SRHdD79EMQ25&rXk-Uemm4caQvlH;8rON~L`5qB;FYhndJLswWn}TeO4^MCW;FPz}OHSt3xdBMCav$OsuG^)tPf* zJI4wQ8_uAqPDl1AQ^G23K~ImJb>+st@^J4{eA^bUEmDwjCF+KXE@DiOteG>3L6$^u zd8Xwx*E|TbAP{3r=OTzeD+|1r1+IIl@m2dT$E?BY4;Ogz$cyU2r4AN}MmTP9+P}wI z6|N|F0J==DGtsaR7c!27$M?$GCG2mzd1G)|E~f4UW6zKc+DLT6^He_RB*5rJ%Xb+f2^l!DPrk(gfPl0kEU8kAJTiSR=Zw^2Ej&20>;oAC-vYa?lauBR_O!ne_wA15C0(wMl`>toWKC%dTM|0#EAzg? zltv8#csh`XFA_{5^94<&akq&6b!`m+E-9B8trQK-7VWCf-SZ&&nt;10XpW!WIDk!r zpoYL-*!Xxe&>h6phffS2;sfF}p_cori|q5=5%=Yz;Uvh}g>aCx*DzJ+N_1b0uC?H&r^M@Ze`iLGFP^y=T zR8qj_hOxf&{wr(oM@jLQ80*DF2hb_*q1b&tf}GXfp`}peEdM>hBvaPAZW_s$+xA4g zSk!iKmn6;t-~!@_`&B@!PYP}mY9~}oU_Q!h9%cnpj&?MLE2q=c{s}7b)-kw-x%$Rx zs)2vIm9H(p@?pH2F*uz0k>xaeq6Oh&gv73VsELd!zvol^iCB4XWVn$#K?XH=N=EQ= z&+c0b-2Wl#tD^FVnk@+q!QCaeyE_DTcXx;2+5tY?f;)r&!QCA`ED+qC;O_3jomuyv znRWZ+tX}=lXPwhsRi}2<-n&;_{{1xDjlh4}IXLmAPf0%Ra?;q6bpH4MgP(@V*ooNe zE@DN4n^uE>jR=Sj^PJ-9^}GeAQqDSj(y#c$Sfn=9P*i9om7~g%W#4hS$9(2g6LT*7 zcp|bXpJU5(6ti9b9U!?mD#RMTfF@lUh znlbdFIDcAs5r>13+J3MvmS*(^zVlif(K!KaY>yt{h8#ebW)BT4gpXHjcVgA`a8Tu1 zbzIoK4P!N!*)-r^ZOAE8wItyn>auMI*XKAERD>M!x2y+t=xsCz8=L;t!<6E-``cvB zBS`*O$0YPNs_%Bfq`He@TBu>!NZ^G;E_5bigXs8M5&?Zin900%6GRD@M{E1}$~a zgi-^5ZP}A$=Y3ZQx7(OD4veC9zd} z8G(LNc{ZyKMxuz#EKkdIx}#3^54t7ldiqiHqwaUsy#Oi$aVlsNZ&Lld_AjP3A_sR? zpC5qme`AExJ(w;m+T=HxDApu2{mGf$d z1@UkEPU1B4$>;HRmqK*>z&lO6dc-J2>6p8cDkzebAE6jEBNyI{yo7{0@xpQcW!AK4 zLNF$2^L28FNw!-N9N`8hRt#dnRWol@J?rJ@iX-C0H0c?GLTCjkh z+y@Q&&O#-0vrBk}vVGjz4^41U+{l>jF-h90DM>XBTdeR`QC2iDsn`cH1*ixUSbTs> zyZL?M7j7Xn2yLMDK&fXbDztiOPat z=AK~$`a_stsrti<4-W(gszfV`F_V}fKm4c9j!;pFhY=bAVleHpT7@`O4HrL^ z$NF=#ps&?VMViXC6(y{KrM0QKPuiwQCsx|Z10({Vz4DDv5>4oIQBNK{5?(d}c?S~K zfyUb$p8V@zB*kAHGUE&W-~Xt%j1=cFwK&E{Wop+SJ_&!H_>Pz#1@|%LBSz6gEhk_J zh(&4F8d-TYO&rb$t#y`*yuF@!L41aWFxVgA9n;MP@S`mT))h@1SDJ*Ct9j7)Q!|+VD%d){W)UfEa-kMq^M(NRp!$jEik8qHu`P!1l`4rYzTe88zH?=e za^OD(&52755RIFT_IZ;y|5Fq<-7s-{{)Eaz-bc!<;{b0>T|Obgq!f@f;A3#%!WJ*@ zo#k@9%c1;dt{EC=sG2j1cDbIESfxSm^!9(JYf2x0UcbFCA~`ot{8vmv&ttee7%~k= zwRR9NRy(fiS3onQkkPWN>#rCvJEK{_q3u0H@hNQAg){j0f5!*M-aJ@CQDAWbi~k0h z5!G=AYtmgDznKWB>x1;e`-~BAv#2@;lL&>z*eLr&Ye|}95-EgPWuC?B#D-o>o zxXOPbl=O3sha|nJY8YRfLQg%n#$n3xCAugRvp&CuWXbwQyVNoE>EM$WcxDe{>HXX! zRRhgoy(GLh{@}W`36;fhH9W~Vd1i}_>F&>PwCPG-y;b)H7fx))-vRv ze2g@;R&mMQdY~+))WyGP=+!O8YhoebKYE2Syp=^gS?_&ck;{?n=x8o)P;@jhYnPRa zKIL1g`J$x6;9!$Oq~jAGj$E$xBZD=PG16ebHJnq(SADkCZqbt3-qrYUWvzMf?V0gk z9e2d*FV^<;r8u<#C|9A})TkXuPKS9WwZ$KsC10KsR2i?zz&*yG z4>oe7c@_v2&ivDAVUyjZwaxfpK$>1#6?NxNp2Sm`CoJ+=tt<@5XN``H-s!h^E2v>e zN7ijm?lfa6G23fY&&epR>YI65N-fA=lDf^@3WZBN(=-XU^i#9Mzj#CTKX1$xz|GrNAFcf20>PaC+REpf`C zaaxoB7DP-Qzt1j$Q9v-T0DLulVmn}4f5JZ(?A6%XOLubv>%N5wz768Nxt=jMO)0O% zZo>+Dd>eGdlteNe-?T;Qdl;q59b$s$gyl*AeW zhFm-EJd+%dLC(v;LA;^7&^AF|#ZvO^iY7JWSTVe^Zu@iVauYn~lUFY}4SFS2Wzlg3 zAy7jnD`E{bv7+m=1>W7p&;7?o51%!W9N(1^X(%*HRuOP39;ZuRQt32u3qzZvY;-ts>T1l!5{QfYLR>c+ zSoj1RwgokL8dy%Yk}#c~vKT4?ou)_m9buDJ(a#?(rCLWErn}Fw>9bY3D-B#{+QcKA z@C&Y-QhAFFdcwid(QSd#Z=gnCoh+>c;|pLQwYAtC_!E)w8WvlxhXk8mw8eE7H9k8?%I*OymNmhWm2MaX$a$nlm3c8}mU}YS9FSu9lQSIQ^OsRmZpI2!CR%HQ#zT z9(1KX97kQH-sEB#*2+IHE3_ArMq<56^COScbk;h?%PPiRLr%YsBX!*S*7c9X(G|-v z#g9QOwcWL8ws3o&@4YPH)OpOuKr*n2vm&W-AhX4ModG0C`Gtx|2tH}SSf9+5) zfd>jx?cMaH@rQtTOa0n!4$-rVikWS)M{4@A1)?pwx?fV{>Kn_vVQqE44fSb?O3}Qm(M}Qrk_niN1R7@F9r@sb5%Jh_)$rY8R8$;zc zYg7J7Y9xQ-P|V`c!1^6Y%;FDbyk{?s8opCEJTeNTs+PB}B~IL$7Ezky`fZz4Eswu1 zUtZ?Q2cm21wpsuDU^Phz(X13Vt!O|Oin!9Iz#eaDJ1Q3sV?38}>)9li0y&(FdjTFy z@6%vpO*Zj&U1h($jvtxXnWQGkwVbE|L_0rR_TK(tgdNQU8Qs{;$X8XB%6MBb$c^AB zFMQe1|I;2DcCKl#4Z}Zz+o+l!RpAmH60CSu(^nAl`MJWaU_OR*oi1Q*X3m5QU?N$* z5)Y#wQgj>LbfpIMwbOl8Qq17Ph5^QE%+!VX`Q|Q-YWbIUB(Qe{=tGgtw}v^BP}Fxo zZm1f+SS@b#(q`@In2EAhDS}FmandkRlwH+$Rk~Fo&E3!YTZLBK+~CgHSuA)5+Gje3 zHX9uC!B7tvgOG+*i^DgG3$#br3-@JJs+#(J&qV7Ja1O{>%!%A6q3V9~F2F!}`Oj8U zRbB}H$xS2}a%}F#i>sYnVb5*9%~ONbpl|9$iiu-fjh?vvng@~q}QfL{`BVPJt^n!w|hBdf}x!&WOKEjL^N7uP}okXzqOq-**cn(^|Mrvk;cjBXO`p3qe(B)BUfwK5DGVE0es=o$r@BL(I{}P)n64(R`uUks ze2i+x;2kGT)1GJtIG;A04VZ<>%6*r31X(0hVv5cw6!qXFu6a9>kQI+ zGn^oGeYcKR4lP@VRS6Xb=> zPfXEF(~f}QPF3vO)wj&WUk0?xZDGOK*kMMRj;pNk8zDviY#M#1q6xZI>QFK15JN1t zwNkCuqzFTX{F}Q}JZPFGrn-_~+j6-BPSfOn6B%1f_|-<|Yyy0?%}RKIO4=`ESME$= zBb$Ux+U*;eQ`7dl@-?)fu zOk6+(rte9ki0sjTYsVz!XBc|xM$)#_tW#WZ*P;->sWsi}LeKK|!>inKU#Nv}6qAEZ zT9;_uOH&jN4goz=nm&fgur?9X_DZkDoHl(sUG2M=x)tMDz0jF1LP>hLYmUu-ajV!; z&DPGD#_-Ckn2ff8R59mO^fxpkMET*2;-d6fjV!i*tWGKTNS+Vi)OsXVDJ9`YCnZ=| z69od{hI3jZ`0r}qEE(u|LE6_nKr+*tphMNb|`9%O|kJ5dKs2@(_gCx zP^8fG{Ba_o-qO~2LmO8eceu|L!ldVY9CB!!RAu*u7KUkz&&PJ1lE&Ap-U$UA3vvwi zUmCx9vf*0=O3Uh4JLSYvGvqx%g)bW)Gp?G|aOnC9h4tX1)L;C`!%yn|rtvn&=aYoH zOPai^xCiX!&F&b_?rv0!09)XAN*^yo<84b}>mbwEiE9|&hcA=iFY$8@@s=v>JNRm~ zwu4r#Fa7*~ou%*24L`BxK;UMKX1-Qpf{wadUI;~x8$4&b}~OQNycMdg2St)jfE$iu;VP9z81e&k6}(!}r)i2tXj z@DJ$u@D$0$&L6?f0N{1%ZEh{m)O0K^dq9e`nAO0H_SS$BMEgC;f?!rdYRj>nk%U zp(^_!$oB{J<!Ni>?Y2Y}_htV_PUjFkySOdIeC-kzVx?!dLI?x1vtLJ_=H~h% zaE01(*RW@1@MAogLV>PfV6mM^U%bYW!T!NfZTOeJkCg7JLXPtT~RUXiW z$0FW_?R3>8KeG)bjHR_6fs?AvC2M6T{Z4c&RtM}f;#y1Dw);2VTD9&i5w@ScK{72f z2Mv`m`F!Bi@S*NyhE52_`{?L_j)sN6?)X7jy>IavZq&-KD1v;aPC4AnaIPFFv8Bo> zl`8L9xUIwfQ17o!bnqU`DAz)J@OuG!fyIS-dKjjqMkd1Unsl(%NJe%sFaLn zSu5ysxJu17A(VOrOY!ZK`W=20VK4#AMswb$ivYjQ>w6-qpAfSxia{tYq~TvwP_XF(Bh6hD4!;wjM#ssbM3SLRig0PBu*e|N9*E6 z*BRR+Jj`@<{W0tPo2Z6P*5cY_L8&)7Z`BbfsAO0{n+#*pK0&dN|GL zcjf;KjsQxo{|@oToG@jvLc3R7PZlp1a}})EMKWZq2EU(@Wh!#>Mp@{Jktu*Mc3|4& z+AX|htK!N=66&^7eu$zodP9&P=AZo_MF4+U@-Uv`+c=!@5D9p@KtHHer8cShnm-~a zY04m1oX<{?HCQm2!&_Zk&+DErx7;Fo1oQ=wlpk2Un@uXmHrpoJtgK>b#c56}C{FaN z?{3fD%p9uz>cmNf3qR5cjbz_;akh%#mvL_fL+)av&_`>8-tp<=9QSb)&!U*^H%>M2 zs7V{?=eJ;IEjoX8tGr{qF4ZiZL9^4o5U`@GXoOvO_FUhR$a}3K#AkzdbvlML-K#jwKibY~p&3Sw^y=25?1fIqa-<+l|TXqhTB9fn^m?tdsO zjs6*>Oayi-jUJ$0c-}rGAWvswJP!y6&++Bw~o_04lO-TwPLYZO0(&N3pJ^BF#pQ<3-c_qa+UYe z7i(@jcur3cpdDq#!=t5SHIwkbAyoFYHmzM;TjEslwHt%b)hyVoX5Qmfp)G1$AQDqM zaMDPbDhd^d%2DUJ4kgN5KAn1}V>uquBJ$5(viZ%<*&9QDsC)b?ZgASy#u&VdY)&x?AOuX5pJVhL3WY9zGl6;Q_9g}=X$OV%P& zB5OLsxcfS&I?EAyONv7_ZKoAMgtO#T}MG|{d_!*=983=gxmF@G( z%bL+m^IA-E%UW#s++N3OjnQkBp0&}Ar%vUbu8(Vp zmbN(ow4->Z%dpN)bQ(leiyk^vBw3f7{k45Zc<+!kS9LIUV$ho<7c*P!LL@x=? z{cGQwiC008D+t>*AbqMtWRV!*!HdWH`3drkS?EGWLY~zwY%GGlL1ub(8`(1p9SReE zhMjI5gk zA?BH-`Yau-tn4PwcEmQ+V-N{DO3@J0^{$v-0x0|c8}<`?z23Uf{Lkx!6C>66$_E&e3 z&wbRUX9s}E(k)jB7lxuvxoD%$YwzCY(W*BaT7`70%F(wHk)K*B+5m3_j%r7+Q@fIx z5I5Q&oe>HQB=;)ikD2Q&%qe8Tx~7GIZ1P(4N>JPS2}f!hWD`i@`9)ZAcD{o+oZekAQD0z|3Kx1ab*b9{fVzuBG5w`HNq`$I1<%$RskZpGWQ4D6kT*z0CF63y~nmXRM2X#~^FlVlhB&3wE`HGK5M%-~C=O zDkXVTFPZe}!YX!v_j?x7D&r--e`*aqX$)3*$q>@X(jL#fGeS5so(us+=$e&=HG0$B zj>S4=o%(e9bpJzkf8~Q_30KdFu%niHV9)6s z6}Gb->UU};990)c00A4Fqm9qzbGJ7#_#x8)*}j?Y(sI@D9|MN*zyf^no`j>2tbpZ$UVMx0qtKhK}K4vraVGN|Z_%vml^b==U7#rYb z1oLD+?wa9M=T>tNejh^adYfl4CbJ;TrQt61-x_>)pMY`-bPfVKsLf{#ksee8n74mj zAIs=+CR_EVGvB6%)PdL8*tswF?WZNcT~V)oO%Q!)F6jJ^W<<;{2&myTHcsV@T>;5{ zdU&k3o=(TT&#t2*-FlR?w#NO2*B$ghJV^;_=MSVkz!^~}oQ&zl zx`@YQt$&ck5rTFfm-met=B{(RiQf}x2fGm%uIqbbj*Y`})|0(IJ2N=9(arMwa7kSr zW1gu-ZcqKo*bMC9bx{*E)U)D#7QD*k%9S2Km+ntdTn};x1cc*V-m>r4o9Sn`VdW?x4=9L)%aR6j`(u|>HdiV9iZiH zE@<`0Ns5vs(D-7Dl(JXHB6Y)#P*t;Zs-5bRm`O@f1r?U$rjw!}$GwM;V9|z^8ojib zsJSquL(fqH7^sC#^J?nCmHMga(GpR~0EJ`6sCwjKUs`Ok3okjvT2U2osGA-)c95Yx z{o3y^=Jze9mClVgEXQ@mU+TkjHtG;0|KC7VWs%w zcOmsTir=&Ei(vw6xe5Y*St2JfHuQR{Zvc6Yc*!|1WuX8z&`MFzKAmSOzw@Ke?0pmM zk>#*W6|1M3Q(@}GK9^OmkSW3KAhPHz`qukTOcib1yR z-!lNx2bo)`S^b_racmSR{D5ga3szH`O42;7Eng*B^5V3B@X}efdZmtCQK4o-rb_;5 z!w$1pxZ;Srrnz!dQl?F%*jVEHl&`q%Na6|xibqC5#J5|x#J}2QVPiQ;%W^PE{8{VflYEKeMTV_k#m9k* zFZq;aumO<<;Ox!mC2_j&Vi)qR&BC==%OA>#vVQRD>?_5(5723r15`ZI@EmU5*tT;7 z(LJToiN=xNw^SCLVGG(s+1`v~KOHIZ=+6=$HbFOoz*98~)$`9vG@&IEKd-4m=@K!v z|LS0awj%J?{>4_H+}wI2{IV*Z#v%uf(i)U2Hxj#QmiCdea`GEZtM~FgQzB1>f@D1- z+2Y>o5U za$Qp`QVesFJD;H#?S-dDMt~}K>~S;Bq-NJK%MZaW*-qLZ$&REt(VfdsA{|I)hSLkS z?=bXh?;A;{>JWJ+yCP%%LgE7*jxDs_G%b=UMT(sTHcP8DCkqy`1sUjCVT z?s)r-t_U&l%DLlH}^M;sMrknyagO%k7Kre@PZcJEh*>Q-zOUBxHN!SG`4K($TDm z=W!fp$>wQ8TFZ8c?L=W6kVTOs!d80kbIUd}tg~UABi&@c1|+buq4;~R$}~PE77C=~ zYBPJQJ(sch>rSuTV1p?+yaT(JoPVFvF3(bWf19C|$g>CgD^3gXLjXImQk{lEIQ)q5 z5{YL8Vhm2Ld?)93aGjr4W>w`m5}hn5`+eK5;xwPr3;W#rqhJSDnxQGII1~H6G$A(H z@KPW0t|{Xk$KGTZPI(sje{md{A#a%9X{h-I9u2ZORSF@Y)UaaGlshn$jW2m*IMFiL zj=n1y9ij{nVn*Xme*?~POOi-_(j+rHQ1+JCeq0}6IIP&lkCvQV>Q(n|iDUv-0@vWt zDlYcmE%(nt42M}QNvyqEC1brdi-afaNtY&Vp8nQxF0=Rt8|pp=MqMe0%}tL8bz4zw6=;~untroXBv3tiU()n?sG!!wKB0a4Z$ z=BLKOjgm)}mGk&zNRvh!*x$-yFV0l2O0w|Mi!te{Dc4bjB9o*DmTxj0X4bSM4EtP- z0-8l4@=wua0Oe~!<6A_WCvKi-B`b2)vM-7T9RPBXI(Hlwcz9iu=f(dGW-}-sZZwVNx(1me5TMJ z{W(E;a&~YTrf6)vNEq`_xkiD@kT`1V%y1KSxAaU~CMu`(3vmQ&)pH{?%007x?}XqD zH(Eo_oHAMzHMBTzN21EcV7?1m{-Z)IMJs;KA3mRTdWQ5i^bYPrNp?`4JE#@G^0jv} zs807oQ$5+1G)6Jep$^)Y1h>V;1#D-1>C{S^`lN(G;i0gbBRjNp&&}x0@t&F7X-DT+ zGl0=tKLZc-n85!@Ksb#p)sU~dCsnQ~h6`iReF%ABeA0-cgtdCC>90zD10?dumv#b`DmbLKjnC01=kpu)|>bS%!g{QC6fYY0+&gME|tu%M+nK&5~~s z5Lc$2EPuSGc}!H!oL?z%ji@(?=P96B>*@li8u+gMzz4 zxnyN&bUb$T_T5pB;cr!X&hRqwJh?8-id@NrboI@3g8500{npKVFxH4gdN&{Pp?Fiy zWQ!7nk<#nqMn<$p>?8*^<5IBrAysCJ=h!J?H$Ebio<4pz#o=_ zYNf9Y!90m!WqCZtCe|;oTg1T$5r*d$4pNT>W#x9X4qY$IY)>1C{~Q{s8Gq#j(7j|1 zvG_FXtNVkM8%se+x&81K8BN$%jd;(VKas4g=^F>@bX}El-E~IY4+X;ogMycNBv+4> zgLH<^vUPi}s4-vh3t1)^1}gGSITiyWR~nbNJG_btVJX{xbjGVV5pw64&a8F_n1wZZ za0z8Or|K0=nVge`n&I`<=^R+#0=1|zSoQMoephY-HuIX(B!9Y+b57VjTYIa1oXB}< z%CQO`qaip|Pc-wT9~n`-{wdO}_%S;_w?wGdesn@GEG*LrtzE52gj(?!b%=6DK3ru^ zN{wffH^J^hP@f^lSJ8C?Wu8g1c$*k7%e`62`}4|^No2uzyJb($MUMWnq zgnS|;Udm*xfop$r8{^8wwB#QcLM*e?AS?ZMSa{4SRYCejE=3mi;-2gF0jjG8U&FFl z=8jKuukJ6ugnozcZaJ;~#dTspP@pL7A;(x}f9+M5m^wR0BqB4T zCgG@_6D1ECtqAh}ssyhjTLF)C7GCztUw`FyrJ5K6vzZJ)jXocuamtB(nRl?-m~JO@ z%VK9Dv0BRDF~`J5H_pi%w%(lsyJFsuJ%o41DUmV{{U!Jnv(VsIcM6?y@ zM}M+}J}U;GNtKSLQ9c)iEn&k;j+*I>1~M%|2# z7fF%sq=(=7-xSi5;=kjkB_k^2P_F(U5S{Qnph`1O<{-&&1^5Tqh1w+Y&%Q5BVjrC% z!-U^jsp>1PwFL$wl_C|LRF6zP5pGt~43V7wy63O37}OR=i0V5@H@@c;q!V6;%GH-M zg{ibdZ9#ZupkMC!Bgx|Tg7~B4!(Hos1-8|$FhW%|sioTadCr%+S_8JLm`<}68XLF; zT*+BdRtJWtou(E)waqn7pR$& zlPc4m$ER-^KG}>^J=9{+cwI-r=21Rc2#2a*!_8XfT{#@ooVRFsr5k1{BVq-GsDf?z z#w&{51q6SrsI90$!{t%?q?o~ncNM5BcwOKp=KVrq(+2V;2Dt%6!}|wN#Lur?HWN7S zFji#0t_Ugfimxo=*GHppvqy08{PTCBHI^>62`^)D(OK`mYM#ze8vl|e(o)eFXCEfi zM2Qc3nmxx(%&Q8-JwcHy$Ty-9>d}_%(qn4}%)1-g?;xBL{VPZ4YHD1sJp4O*d1ThX z6A^?0nd^@0HmE^XkB>>rOw)$KUnWZIy3X^ z$)0Uf_Y%W<&=j>u#>bWLELT^TAlYX!ywy~udwp>5K2sTvPf#cjh%H)YXUE37W%WXV zt}Mi^VGOPE>~#NxfFg%`G$;uWv*@mYe}x$x%5}JpkD%QG{;TxFnI%k=)8?3>RQ48^ zEKFgNl#aY}iij>1%FOGq$?-2`+qg2qKOg)IqA*l`Z8S3+#ltFubhGRZJ_UAHuf%X4 zP&g|Ek^|j4xNZUJlkE#9v*FaZF)l$2lDWUd?KFNer@XLRl0?cV+jJ)x_f~TP51NU_ zW7Xu0f12s*)}69!5T55%SVJZBP9*TJ-AM3=!ny*w6b}>Zsov4L<5Yf)4Ly{@*b<`Q zSKj!*yrB<|?=N5~ks3l%;U>{{-m?vhRNbtPqJz7b9QBv81o-v1o$32@-ee~0~cPJ32;xIJc z4Ew4oZu<9k-1uBpW+nnvB^{L>$lvIS>=$O>4Lj28Z7vCg zefJxA81dBR{e>TLpv=|t16gm5n>Vyqzd{AYvua%b;jW~vneb)mhvz#q@xYI#V+%~L zp?LSc9`JO_f!UFMWD6lpdkK8&p}q0EEAKozn{}fr^?;wT*OT((Yr?(^f9Qh+zFtW` znrB!jiP)+wHhi2(=bM1NMv!bJ-!WHeezuWX%rj_5`KlP+oKY+diIZ~&iF4;_!}_Y2 z3JA-MW^wbYdAh0W?UvO^j`yTfFT_eJ+DXa3a2)RL%cH=OeC@QNJUTt4n8a6lV|>pw zdpO5Dl6Hj5&X2#mB$a!kcr!0TNl|px-KKLA*^Jrzc4)ZiEDuEF$=nGRVw|wZy{S_z z7XL=PQp_1UEzjcD=XPG6TbiEl@Ubt(><5@1Ssvs;!J;MYGb@Ve8J@#j|6;$^EgF8T znP7YJnyw}N*jnne-dWXHewA*u4+}?Plz9*NX)5`Sn zYAL94Yr2F74_MnnzR3b*CbNA!*qB}IvUj|0o72}9*zQ}No1b1@p6(603;@ZVzKU@b zGxY|%MF3ts8uESoW5nbNvIsBz^@QBFa5w1lQW&~UXakBr96Ito6z5Xdb#obb6A&hR zw_ibIg#l6=oybaaI>gmMJcrq_TX3nwjPI zdvFmT#o8u*H^X$64gR50C-NEqvC!30B4<$ck%x`%m}VYpRRGj0sS}k=sL+6dv-Zehvn0G^oyVqW5+11+8S+8&14EZyK9>hl=_y2oD9`SJdsZWLUs`F|5y!kDI|#`l0}MQ^X5V+R{jbG*1HW zKvasGqhmFTDbVC$t2klsfqnfOL0Xp!+|yQcGl$>8Bd(it)h1_dRZAnq(dqKa-s#L5 z-Y>>&;veW0*b*8sTgwWbetl@$@aj^t6JhD1yyiFmuHC#;!@C7aE@>`r-gUn{hAsgg zL&AIgj?{4M`-a{(8XB={?zatAsI?~bcBW`~{kfy-G8nrJSk3@$OGV@8-x3t2Qoe2h zZ66gTo1DCEb=wY5BHbH=lY})1VcgXsi!$ly^&3*b4A+uy;8+?A6~cjBUtyC1-+fW_ zX4+}YtV zj9!Y)TAMWmqCAQ^DOyD$m&gsXY#t1~zu^NNO3s}99Szn++wnZBx5hb>4nq5(B2Ro( z<4B(^jiHn32g55Uz_HNbwreBwh%gJ82{yc(qAs92IHnmk35?|_F>zB~SAez4my-|z zlxXs_`v&=Ugi^!ea|%Y3|1e?bZXd-)lqRI_xzMfVXv{M+sOtR^L6gI@y2kUB)5nL_ z2aD;EQreW(Mv@-^#_wc?abCTF#uN5;LXC$7)^#k;N^UE6In+61PSU|yX;MaJ#{{H> zq2D{E`^>bb^2-J14rOi`_YrxpEeN_Yjhk|Gm^19kUE-eSJ;X z+2hQMq->vMn&m!+7j-u+lBVYCwGf;bE&R$c>$`lNZgI9s#+O=*A%K7YK~pyp3&1M& zeG?CmdolDVLz{pL{IrSHE;nxfdG1=7_|WI4<5R87u|f~Xbo_T`q;k5ISCU70i|?C1 zSfgF4Da&Z?dLP|0?k+N9$|h~OVa)-YoZxGmxwD5(Vp?L9SiudZ;F>E&U-fKMc&_nf zGc|t;d9u}y(=`rM1Q`96i}#08QCr&#ljl!|yLf9HLAf|_Dox*2wiJOUbE#>J;oIpU zcnD?UIj(VkdJ5y`?DA?2QYg7b6Q#eO83*FzmyRf9{9-;}wOfC2TSaQ9Vy$#(T7z}$ zn)gmj>+nE)yBy&+J|?e8zbXRWeD5Uu$fk_W_A!@!G*Yq(U^x65KAZ+)N@*ceg_a;P ztTVvTs)1%Fx`j-hc9bwH)ylf6Bcn-Ip&% z82c^#(zk(*MuR15T1RN4+KwXRlBC469udl=#ym1p48hEQ4mTbf2GCfkpf$Rm#CsJUMrf6V6Z z(ZZVA3C1~-M?^LMAYj^Ad;jlp{;DS@D}4&U(u-3tqQep zZ<$wLohUahb-}VgA?g8=K>bn)!75*0@hF;MGKGktypODCd3)QaOn>*v2e1KWV3Ew< zKU22Lp$0l=orb(rEPhCRXd>^T7;xKa2jR;u>r4>xG#qiwSV?vIZN=!VW<4D*&ANT^ zr1%g3WirGpbwUokyStC|?`N$v-51S!JVV?*ax83W?2}J{TilGN7ZGiO4zbe7b7rN0 z&Ug!JF|F2;c(K6>m#g#50Zk)y&!CBrD~uv4bn8pg*5oF0_A7sYBDb0QOmyO=b=$^h zdr0a<6hgD&>73%Fo3R8nSNQswFml4((mXMS$v~(L&$LO#d!dc z3^-lkXEv*w#+Mlv-mUi?mGLqVWI6lqzEJTGc{D5YFN)GI-y>fZN+2#bAWZy;s4vn= z$uFOqY5N8qAilGI;H0FPo7mm*-F5F%_aY&~(;G<0DiRb8?Q{z(!l**`a&_4j;VVji|{U?J^xT*JuT$sucU)%_>LMV~oZyY-(Novro;SiHxNXs9N2$I;XV!kk!=%WEQ zBx4A(hhO{fX9QrOT(MPkZaj(60s^AmT5`by{MmQ72s7_ljtDvrHbLyZ`V}EI|DkOX z`?QTMzOeI8(w7uL{6ShhfwHzFVKlH*NNP=8GK!gfODZH>DTp!-`_HQxS$>HGmqGEHHe_O_#_xv zeu?GO&vSt<7|ZexAMi(**eZXZhP`AW>hroF_Qw?&P`c#8*uvo{l`isb= z>dxjga_&dO+0ktDRNu9dkFXG6)0AAvS+$CZS_mxpHNPLLR;j}Z7vf+V(jiKs(|e3W zDw||0VQ)*tEYL-ErhhNLY@*!+LiA%kkyW}zi>pS-Z9=->EDE^eP!qV|^KSeUKw_Kk z`6Q7{Si*CF41{!kR2d_y+SX{o`orcps??GX5_%8!#3LJ-Ob#J&&-9QY120oR3BK?HiZ)7Vg@=l z(0sp5pJK_Rs9yZ!@6+72C%hb=YHPHW_?da)-G*1z(@A;rVxw9%U+0*PkXa_DP;wOU z3v&Jm4w=8+F~LWK1trDfOlA!m91&^9W;b1yD9Sl2s?~2q1@b|7hPt=~sOw10)@Tc* zh0-Yo#ekf!FB(-@&WadYTQ7x~dy?KG+mnM~Oqa?9U$XaVTpJ#7%#>j+UO*$W)IBr9 zq-C>NX!}2emN}JUGtM1mUU6yEpAjtFC}zKP9EghHJYA}y%x`|&`rNPzbyfT$L+m%} zGpwmlk;nHkEmHN0$yIw0EckY0cEdy!Vs^7;egjCPye1WK%mhk4i6CWb)ffiq=15y+|(`Y;0A`6cvt?8Q;vWgf{$*lY+}K z(WO9a>NK^Ua+WPaUG&2?ZWVo3g1hbV23zA;cu$G*wzIcoQ zl@j`#FP|ZmRg|vY$DP#-v`a;P<1bijv=-D2%tkO2TnfdPqpw1U2aKbQ{!fY-GT{@w9@&O!rMNaQ#v1sHe2&*1RXS3*D*y!IKrSm6H z>Ko7$ey?M2Hs6^WaFB)J@(YQyd;~p)4sh*`0xd6R{?6~;!?6y_y&h82O4c8sy{0UX z7A?SVav=TUlyWXR-1BWKwyQglV!QnrGu~%`Xo7QVMt<5Sw_H7}Yk7-LL##C*8xCk@ zD$JYk+2r$Li=snC!pzrM_v6WIcM&L{<4baX?sBVcYQVx!QhY`I`Ga|iIIfQyyu+p-f_RJHD}E|YK^saVOG`iqnRFFnZ|Xd$l(e+uDfZm zimG+gS+DsmJ#E@B^g`kSqeKK}Jt@V0U&f`lXv}q1NoLHDx&E8l`*V_5IE%3&YD9Eh~BOhg2cT zMGJs)0vu7p0Sqq`*E=Pd;rr{{>8};b_U;KzykrkP*ZbjR(uv{JvnyAr7f-m)MDpca zF(&ER(!pK!LCp#pP(C1-KA_D4WughwOtu|IH;-2jX<&JD{QCz5+_5Hgp`j_9&Xf>*i0YCkK?>CE# zX05HvPAP6@p>Gjj9kSF5@6fDuib!>Sm_a|i7dYVy z71nHbP3YzT?p>3_mT7Lh5FlS7&Bf}s7F@7)3Qf`soWlfOP!3n^pBxk%-fTmAwL#Km40p1+#whxW+IC)gG?Dhm}eFtppzr9_XX?ricB=m z;PyP`YMC3_v%*7;=FhdgXTkaoqV1j_4hyZUOk|3UZ-IS&^;KhY?BV4?=@V@&jQkks zggP`iqrwt1Rn?j+@|vqqiCTQ12w)tAZs52HNC)PPj*j5f3n}qPt}%tuV%N1OQP#*f zM9S5BjQc~ANa<7!p|(6xP^ma0DF007t6h4P(*OP{7U6qi{BYdlMQF-ZDwr*wcd8sr zo$fE<1~*h|6=BhsGR}8Z!!vH?T$3;{cw7N0Z(}fuvbZWrJ>V3{ZA=q32#~3zb%ohO z@Dd&|w=jWmU#au#Bm`@3Y*fG_3~Ms`cAJ033585#V%Q+D|A0`(v8(z+o z)*rZ#i84v5yIvN-s1v8QkYx#C=tpS6zg>o-Hz_uy(2aDpkq?_U%*N@Jv4)WDu)w+N z`@!r+oh|n^%AEQqP5IBFDS&>BIZv(t>7+s376eIt22L?zW3QCA@1pz>-&C@(H5t|i z9>QAkJ1?CXB`w;xTC7qsW>R5n1C~ov9TvS=_qPbak?cBXcO0Znk97XPvkxkzTmhDc zE6@q;$KmBY!b)kX;bm3PvybnJ)Mot`f|FSrJE_hozH~!bb0w#3f`C66an3AB=Y0@O zcyn6V=Bz|kslN;9ftd7RjTM68UhGuCv-FFhUXdR4oc<{a9KZLQ?of=-%X*e?f8(~z zXaLI_QeLl7AJEN~y75f~)$_=Q{ESz=4w2Y?O=z#CQPhWQzZIrI*U}9cOzPo)JJi9m zBy}RAFN>!PZAO1{V*wo0$kxQ@hf$odR{TgV9=|WUYs~_e(46CV&=U*<+b1-MwLpw>c;LXBP)3f=7+B>n>VO0zgsEmm6z=CC2*ykcs3$s+(Xo3Y%WEAid>vVhCMipR|Ow;sxNhiCc5fmvs zQKzRRI{kru-Gc6`>!WHk&~pjx>`i3A(UiYMt_2ML+!Us-k=c@=>&z1vLfwl34}+~e zLSa(CvPg+LFokSo+(tAyXR*5a+uk=kV{SXZjE)OK@cRhMAy$mKr!7~Sl{JW}J1yuu1$T|ZZDNYykivgSw_CS^YcPIt1aPSBVU(7HwM|7VHmIu6tAjNZCOc^ zQb==6c!HrH{FE-Eg+BO6&{JG|6FE48oEO6nF+wcu_N z&KT@UtfO@&m#7oX5bo5`%^WE&0Y#u=QHEEvR*&-cKvyj(c#>D6nVDKP|JD%V$q2`; zZ;pSsz>9RNT^Y7_YU0y$u8(xn)+Q|Q$jtAj*tRj6B}($jsCVW~GoKlYvWY$@F#{J6 zA2s)`VF*w|2o?eH<{LF8_7p1xSc&&nc42D2YcNj*UuYjgyatEAU_d{D zuoD)^?=hjAc2K>SBI*Ul&{N$vqPmr~rNF4e)TcL#tfMuzf%Kp@+l1wnBB^G}2-6$a_RRgrB&l`D&KN+w>hepikn{IMn($*NLmnYQ;WFc7 z0hEJWzt@ZcB8pa!cAlt9pFd~IpvKH^Fc<%D+fn&>XC=66EG+aH-IR%CS|^rT{R}g7 zi4|lS_OmM9QC(Q%+a|LpQTB80t&Tlr!TOBmVUOZ9)IE#Arxl%mHiE#n^_Q<<)%Aw+ zdK4hv2l-3$OfORara4$?(t9I{jIUvXK?-}lJfsd3?|GB`pdD%OtUqN!ARy?>i{2u8 z0LqPxvraKLa^n}l8KuXH1-n0Ij}VJSD1k{ap&jHxXnmq(&<1SqdL<;*aRQp7T=C*+ zfNe9DBWcyrR*yvBWu*(tHKAkFM54vo!yiCPo3LNiBGU5y_o05F2+1akvMnT>3iL!9 zZ#b$bSzO})Y91c0+$@c9dJcY>D*WBoXH-As2*bFY{8|N!`bwOB9#wXk(uKhA z-}<|qoGtY|cPNScHzRF0-5v71mC@J8<|2QoO~6c3$;9cCC>$8;EAL1#V5^rA4@>}g zbjDw)GN|I6((If*Xycb+FL|P&H95n{6XglYBm@v*UN0JM<1q zvz;RVBFdk^qHjgstoX&r%3|F?1z)=){6dcJWWo~CQiY7n`y9W{bv)1(#_TduK9K8` z+|6vHeQ(=3#L-``tQ{(qSju#O^#wGoF{=l5Y+y~Wd<^crRS|rRxBK5Na6Z3OJwLeN zj$q|-vkULIIcE0e2ONqhk5)vdR`|UVk?QXkBwc-?i#?=#q+)NRiojPPp`W)&(d|z9 zeyqle+FO?Q?qm2lW^HVs#Z*xsT|-}v5HGjVC;^x06qb~LFjvDl14`8}s{o~@6*=Z1 zRjw7bL!8gHzMJcD*ySwNc2hL1$Qgg;+0qs>ZVA&ebFKv9@vsEyX%1JGk4U*Ii^81r zZ=iKh6JkUJHNv(vxPztI4FVEeKl*esSe+*!=q*eRGIo7X7um2;mGMr7m2(PL&c5s1 zjdM?CZ{)^Vp&cUJ*b^LV=>sU$qVMfc_XPi3F_j`gE%b{!Gp8PyU};aTh;TFGD$FoF zShh_l5VP?bgHI|f|Eg~s*meBPF*Z2h=jb1~wJWwxH+njLQEZoK7z4yF^bPUOKXIA#oB)!Mvb**kuT(>?XXu7S!lsxle z!W>3tAe1X0l%9WW^8k!az6Q6b`5^ZwGQ%RZiTV(UmlQwmLPLsk3pF2IMyF11B_EN# z`|8IdH)y>ny|v_oo($aXLbeQs-?3cR2asMndkJ@_DUth0+lLxrW3WW48@>hGp>{J+ zqjj5>570r1pONx@BA>Bd7k?GDc(7a$d`)>O_rSD!sL=m#7kdcxsLTm%A3WX7cDUty z2z$Z~d(wA%?tbRqod_UxWYL2YyiW2M7N&M$4spQfdH?)6EA{!GgQsGeyt1RLARrBq z$t=!@9RIh_M)H)h1x)hQCpt7h&(mjZ(f9M?hx9ZkK`>*#!tRQ^6>gJwx;Z|T6OwMM z>0q7nA4ygF5hJ*w9i<%kUwI48`ltG~ZRM?*uai|S6q3y=Z5JnP7hRXHCvEM#?PP0* z{341u5Gcf@XW7?8PmjQ@*RDt3r`<=-=k}v1pKv85umR<@fAmxvi0%yDe-U>9*i8NKbKJgs|Tau}s%f+Pm!Gt!Mtd<~u zd9jKFr@2m4Y~!7a&GkBfJ6)(cLV)u{X|utc?U}5tusGt(1a3@=PShBe-(uEl^dSp3 zfn{K_BAqMpZDVD85YnA+vj7$MRBM()R?ht3uA*M>I0d&H%)T=Mk>2%Cavk zXG)*+jBRp(wQ5Jq>ELgN@%OpZc~(+GGE?*^=EJ)L7SC%R%2PFfd57pwBfV*ih1}6$ zrrzQeWrykzRu*${`r==4vQ%eQOc-6WpY%Icyd&l(B2Q*^$+dxINW2Fbu_NC@T&y|u zzh|aIWYU}cb>YmPqI6wLWvN&h&1i|(ptlJ8)4I_xb*gYI7ZM>#?;9_flA6JBn(bR0(NF(MyHUsboz8On z+HyJd&c|#Q6<6{Zl14Rq_crs-x3?LW1A>YWw)Uxy?BIC{mkf94RWb2?dFnBV-JBEYYhhe9w z=B7a{#eDMHF&h<@bzkF!da{F{u_7Whp|s4CSD)Hl7pR%3C2cWm8nyzxFHgKo>erXH zt}9MHj^+jgAPVj?(4kGDG)bQ9V!^^%z-r!(WjK$sx95%MagH&b?7oxj;2Rs_{A|6e zSUj;j_vvjH4itZDF(V`@mkU4wiO+L7%zS zz-XrULIf#YeuOzS&p(nHd(;{ZMG+X5xuR{NLoR($M5H~4c8Y4cB*DsafygLm#_x}> z7<{l>LdyiJ&SsEjBG6sRLm}6wBF$!hi|N;9Dhq@w4RJD&O3e1=dR=XNcuWxCr7Cj$ z7J%EaCJgT)CmIxL_i2~{HsYOODHloc*T-e9wD=V|k#Lv#+Sywuh zrC1e!9xn`}UBmDsyP{DZ4A7}&sGvvqDnT<${fJa7@0{P_hD6b2(6&1f3nMm}hG9mkV1K3y4+DG?7* zUec>X;BA^kn#Bo!{XGz9AAQw;>SOA%v-bp0D4M;@TMS7v-(r6a?Myc(5{{IwuiiRS zMB%X*PZ&If-g)UEZDFeUxxuQijF+3OC~vAyRqhh0bAvPa-ncujg1Q1StYHCS-}|Gc zRNWu3yx68d6jc(ArWxVHL9FD;YJB>_2IC7y$yQ@Tw1urQrhVzo#hh4HnB}j?1=0l= zhdl{^=Y)fDf28g4^Z^QIRbsNLt#xts2hVDnl^9`LHGn~+UEZ|a zYJ%6O>P+V%((g!yHj$tHBai(%HE<@{Hx( zWtEtEF0~*_AlE{E(d~2jB!k1Y?>raK9|Yj%QNXFfH`(dnjc8zba(3oei=O^sYg+4T z81`3V7H~Ej65Pp@8)A+-WJhz$m5fLZ{NBBa6k%BL{#wuLAs3101pSLyWk9FFA!`U( z0Vi0E$)wf;YTiY=r{;VE1qIV^4KwHv6vD+CO$=@iQeWoH^-Fi64euA?)wu)!#aBMv zSK_MyJu%} z7?B+bDRmzq2LV+%{O2E({s^G5M|JspS~NM1UxkSD{YWqtA%cSq$=eq5q$XdVK}m3* zvam;)ZJkEUj=xtRb!oOJGx!0>uFP7kDZ9MIx5Thsp^R2WHz@f9?(T76?~`$|#_PJZ zq5k0J7KAC99hv!Zh}u!^++i>t!;oouzpJq|)mm<_+%u7p?@IP^`BzF4nlD;?gQavB z*E+4`(?FU5rqOekR)}eh!V-sh9Wg%w)hb9?DDTNglshXkmWQBbbEhBhAa(-OZzWNI zS6bMJf%2zq7O?__SGSxNkm?Uq+khxV=l6gv&?qkVhVu6&as|`adMZJ0IH{7%OcB;4 zyzhIybO%0!-;~zvJAEOaIi@-gEi@#vW{(ft4JIx-(zZMo-hDI$oo;!nzby9?`Ole4 zpDXSLx$k)?^yH7&&j1LHX;oN$Ou=p{J@pA0Sle|xSWxFXM+K438^dFCB%lhyyh%Li--FJ0{MVHgs0h7_Q(~5MOlS4iVJvZQ zEf<-9Gha4PW7AMUv|yhtHK7&?m%n8XQb(0OwV=ip)Vr*@0P;Hq?^|JFsTv|QC?A7J zAt^Dan-mgbo&+((EXidXXx`+Qryq!>P_IPBe;#cSlX1jjXxi` z#J;U>-NKv(8r})PFukh#MCYsuUx?$}c|$`OD;|Y*EsEn@d8$L~yf|-&EY+O4h+6eG{#u03^TC5XzeZ)*>r}O)TtfQ;wCU}t1 zB?qzx2E#=ZYNs8vVH;g(`p{Ak0Wz%k9R>rzb2VC|mq+oHg?f40QVPg))Gv@~i_u#q8 zB+^@%^&qR{&@<qPQ~XYgf&b887#NVB^>F$VJQoo;7jg@{!3UQ?3wqmB z2e!bLPGq(TdnW&!I?qs5HymerzKJxLqp=eJqpn&=S~WZWMg6w2vOrDeXe$al7Cm4)1{PH@>{80BhqY*{LWi};t3rpTOwZ?%B3Yd{ zpsJ?vs0`dufmZZBf^mZ<66wZ@P)+7xQ$jf)(Gm_w6gUzb)F5KHkp$v75OVE-QN{oU zF>KZ$p@(DpX~sn*32F2O@Ue{c__cbxuZ26lm{Wc}7(_jfpieTM1Xu4*puZ%|^y@-t z>VhQY!mT|9)Rsrdin=)oS@s)mLoF3{QB`%Jqf;h%JO?lq2g!;m?Fd=aNBB&)3!2@J!{5lyz{t2nKKh&ntBf+I$1!?1EDoVG_!=+#e8PQf-idi!eNi+|K zFTC~TMYxucNM{{Tu69QQx@}G_gK4-FhrLHDNc?%Y6sNVz zCAbu~J!HG~0OZbI?C=fXIY1AKXqRim!Lt_29!)1)F&9LHD(s1*xquHQQI__TlILQs zYJ0YcuBG7}j`6%DK-P+mx1m;)msjd+x)&+)Y^|lHuk*}y)^vwX%?eApuEJ-ezw~NVqWC}k4WJrptM*v^2(yrH(DS?dM zrKgS1@6#{Ym;V^h{~7ec(U!akb^jSeMgRE-s2w{GYtg>~`P}jc?z4so6IwQJTTuTQ z9&-N~D*u&m1o>y6RQ`(FL;3eZ_!9r3^Qn!OofX-dG$Ga$;hVBiZMHA~HUO=fchug8 z`hfFjxTb7$8-QHRyJPPI6~tOLh7CZb=Dow{buQo>`|BRnrki^Cqr&LbIpBN>zN!0{ z@nhD9IAf2Y6XcVE<}XLa9@{ndl1i)e)hZdQkkwMR(v7l;hmuaK?A7WjbxcU+dwN(!|l)bQv}BgXac^~T^`Yl zS7GdEx0ZiJh;M&3|HsqG*EZw&FW8T8Q@cs90;A&QM5hK(VbjUkqe zA*zibri~%GjUo2xvzg0o|C5w9uM61ev$N2yyiW(zc?lVX&#=?I&*rUOY)|#J=Cc>& zmGzUWpMd{XkNwTP+;;QTnh!tv6Tus!;S_`)a`)5{o4;TW(LY!8)$l(T`Wt}e%lCl* znEdi}_Za^3$v)9_Wx@L30w(_1dbhr8M#vvg)fQlYXu$SqYLDP9-M?U}H@1JVke{Pp z+u9{7i3L?yC^Zfj7=UXHIXl-R@)7?^ui504*`%UAMa6l-vqX zBWw39*W ziT6J7wwP_?{65n}{9!?ZQo~*)8H^Ksi$;DP z)xDlr{5tXmM$%6neg#SdR#fZu$Wg-R`Q5Nhau3uRA)S->W{=uTn*0@*Qh z>X!i9W(L}#HM}Qx=M;bO} zidT90wQzKwe0DqK^{J{P_sw5g^y9sq?5Thhsbc=#Ee_H0b?${e_bIle%c+neaWtM#u;NuLs3WPPjHrl;dlkLLqF%mo+m7AY0J$1i^glXC%b zo5F6Rnt0R|B>8h!nl*~kYro{{Jv*3uo+_}i4f3`V#ht==Fo8>`NjF=l4pkmWsEnX% zY9%0%7w84;A8eb^LP29ao@G6>@D)4G{#?Hj$?P}(!eQ8dSC4s9p-Ux7lO#OG-wj>54YmM* zPg}(&yvAc`g>@yOMyo-cT@u4$+i7$wv+T8^vXvQt%V`BtM~Q+O%+9GC!4uk}S&1!s z!F#>x8StfG_Friwg`t+*<*y_YAl{#tpqZG;;@ag4ccrb0H;g?9U>Jd6`1SF|f@9MG z!KCx+I>7Xdgd8Fukc`(+YRAbSPU7T`=x#{chc%^1#r6hfGje5PwByrf%Ve5Od^_8UWc+iiha5AF zG*Bi02O4ND@uBf@@uUnXjGm`SE@NGX36-mE3`(c2!)1v+h3l*EOf^YsV-``m4^4hr z357kk&5#z&-qVx5 zMKulBVYaslh^Sz|xyv+kuNx{!PTI4I-)tnq-lRDn-W|=kpzC!hc}UIIvas#lc!b$tk{KR6=&VD#!z9q;FRiYo z{p4-cQ4jdY(~MidJm!6Ae>SD}*qMhwR^Vf*WV3>YdZgUk{7JC|V}HW3-z~Y`yW031 zT}N~#1hcy@(ZF~;T@g?fSN$Ug!rB-bKzyf{p{5kFCrToHKaU@V&uiNp9nNbr?+07@ z+;WhWa-wEVz!D_+-k1@5v-Ih4rI_DnF@;Ij;*cOD+~HXW7c7bi8#iXK!Bi?P`H2`2 zT&s8@jFR!$bOANlrsKqwnO3i(?p$>W$?Cw@Oxfbn6Sp7NoJ&|Plw?M1+q>)!AW%H5 zJ9+y{-EF#*2;Tn9eOYv$))1=9#yQ-MR0!zz?j+1?*F|}>bou+?k=z31Ws@`ja{m4n z=4kAa_$G*J;C9dc=ovB83H^u)Dgt$n7Pe|;%+(Gw8P9nA04YU1P@|gN7)WC@9Xh)# zhL=u0i{Xsj3qnK|kx(o)aWV4-u-@&CM|~SK`rzQ7xNq%aB&(Lo!CEv!JBUbun)s|WWKsg zWgB9Fcv>vKc$r=y-LJz9v@Z)}vXmRB_@!(!5poO7JerGJHsB8Rm(Fki~i+9(on@TkkK)v}^(sA}C+L|3WBkq>hcMz91CF z$;QnnU*d$nV!kC4n^<5Z_sDl5CG#kB!Z+t-TTme+D<0xQ15mz!I`yzF|7mdxMaP4} zT~J`EEi^)BC-@H8L+-a03BiLw&UPdgHvO1lTNf}H zp|i8mINY&|0#Kotn9hI|8UAx*g*|(uGMy=m%nEF#J@E3!RUex#gY+JAd-Bq!TgD7` z?)Uq_6J+)POzzwnXEP|}E#heI$`wp8!yImCf-z0oaR^t(x1Hm9#9}MsX`Mr0w}tSSJQ|@#(A=YHO6_mCfW1# zSh!j~tpHHqyC-zsk@VNau6AD>OzoW}Tb+;NVpbfCIp~wsaZ0WXPu2OuY)76z5|;kq zaof2WLMzOJpG7QY-=fS;CN{#nyAyh~9WSrQCcmn4P8s%AZ#ZeBHSYJEt6jR*!9y@0 zf;_ngP=~BGa{$GL4HPawgNB$}5{?xi;7kpp*TNP1LnHia|={uYg0529B~ z?T1TRlFBXRfJ}zzSCo@nim(U@vrKiBWNXn+@gf{e)KDVUgQsi5Z@GhGL|6NKC$wzS zF1M7Ztl7m52v~x3p1FNaG`^HJjV`T5s|xM~Y`~#~2UMe*o1pUJ5f|DOIC2D9Q=@qy zeC%Wx^NyD|$YkKABGWO4QHO=(i(!d53aBA~(vZR$e|A=iqfjY^g7oErVGB~`3d0-X zBQlV9Y%#h06K8A5>P3_bi{vpntcCR*&ocj*NVs|lT@TK}WEZs&_D=u&dF3n&<0=E- z+b)9r#DUFveC}XvD>LHki^A$4-$?0Y=$*o!={C@M47c4--wAFWGzDZav&<$XVy;tW z@RZ114px;{EFc`rGbm`mV>r+>1V{y>Q=?rB%A@H=gME0xKRL9*0Uvj0XgBW-Npngr}24&8)g;ug~V`(39Gg zbd&BjSXXh*HaKbMEt4%qeF7d?*XkaGTitTv;?fu78R$EO?nA?_Y$7mf7SNO zMpJKTT{$+aMLC#aVyZVP3yD(TK^EwD5^_k6L95`8lTqK-uM8dk#lCb8nF6Ln{S9wk z;4T#3M9_K0vGBcz)6 zfzsA-%ii}4^Fo!;1g=iMiQ2zvy93%+>kI7!^ua$yXIu?|YdLO+x^j!)>F*Hw1DSP) zy7~+m%Z%efE7gK)e+`Z(Je@WLn{IQ&iPzP|@HO+lEZs1xw^M(rC~^k$4LamUhR?!? z%DVQ?EIwz{maeR(O;REDyL^)s;a*a!!Z_t!Hx39U&2^4HcHQKL#CIPf0vLRF>|I>n zBz3ZCE=HtH63n6aal^E0S+qSU?Ij_<$k6>Mp0ckQrsCps(G&;nP#z7{j>y|Ngn#eQ zA^&lJ5U8ulQ*UcW_e256#gOnT?*!&}K*x2H$ORh*eFI63l>h^}$4FrD|M_*r_zMCn zM!ed-Bb2_b>l&>N=PGjSkI6KbfdrOl*EL)n_bFaAX}Iy$6OszCi^(_G4(MqZv?DMF z@pp)VsBLzrevHWW6FG5n`Xx zxW6ZP&B(nJMxycyrmHcY`+2_V%Na>6mI@O@@Y|US=LS+d7hWBC4M~1 zDAQW-bc8`fbDevZcL%%qvaCBN5hb3Q-)m0DZ{*Z@a|8*9U%LGhAZ>7q0}|hHzyd?* zIbjMTcat`(%{*dF*l(odQ%>%%#J3(6qI>Vq8uB{bU+LKr&8LSL)-DrGfv%`W`EkrT z!<33MW;jaWoY|_T@V#K~wJYkikdY+cAo^{=Z;N3Dtco7!TezLQ9&9hi|8&<_AxO(bwAT-Q{d{WX>z2}N!XGY1n zKAP3%L|4DllDJTNtnomS)tYF#vu06duYhxw-S_HO?_ zdaE668@qAPARws8GqREd$wC>?uDHbt9 z{%h!Wtke&bAo0Ev#vE$(-`QRkJl3Z+Q}cJ@qZ<3-H(w`sOABa`w?zw8_|F85lY=YI zl1sbh4%eMu9v;r0pQf?_;99-)e8DlbF$De05-=89H9Ymcl;sZ^`-twQeShL&NDU}| zn47yZ0RF;6ujiPv9gF*4*(@lrR8#b6*bTI*RR=CB0QIro^ck*N>@OSk+5@`jPPGWJ zZg}=SVQ$$9u@Z-t$6Z@h@<@G9xy}+VlvAZO_G8)F(}!s?njFj#EF7blS5&9lrpm&Y zH&7o`Fu-sn{V#8izJCU_I-(SI`87HC*BIUG18S`jCH135{ga!gkx*-|16;l*1FzcFWvrj)=OcN*Dy9&R8-pY-hmCveFe6${wb zsvzJ++c7ER_!NK8Tlr{GD_=i{B?yn3ph}5z>sy8CVa}=|8Mk4UQ25a|$dQzfGLCXn z1L~(q^v?Nnx7iA_Zh}Q|s@Mc~fI*RRQlOi4O;NN7H&c{qAd$} zt7T52o%9zl+V`ILQX$M$@)*_?qww?*@u8=0z%cC(;b|5zcTxO4*Gz8;1o$o(_2F@- zM^VB?_it>n#>PihNNYli?zjBUmntZX03VZbv%M8!PJ}va=wfocMb`EQ*BB{#UbvIK zJyhc<`ex*Z6z^Q*RT8~pk_zVnG(Y~@1|%f!m5yU&#S z9Ln|Ywcq+$7gts)ehWAhBc)$3jz~I7%XEycOE5h}-Zw~c;*$->{=8+yG8-p501V}A zy1LjgAG^+>P`-Dmz*-N{4>QZ)X!5TlN1j1#s`9cpZzX9jcR>Di4q@kq{IM1$AU=9K-&<#8{J+j5}$QPmMaU0rScBs_2>+LjWqVqycIg9kGE=jrbgi@=6oxFr@^} zT_So7+hWEMhAMrx%nd|U0Wrh-@MYY}hDLAK=aI$Iw2{k7XEH3pP6Nrqv#Az+mVz>!fD88^@- zD)TRJn8Ur+hR1cP@x%c!Jo zrMM|RD+tN}275z%$9%^y4H_yN?sc(!dR2|Jelfrl3Q-YO5sjCvY+<&y4yPO@x=A<} zQc=(D5CaLLJe9ya|c@OX3U z{sy3ALhZyRSm{LcL3DCdII8j-MM$_(oi&JU2|8MCK78te*sNK?lelwp`O$o3RQ|;C zV0_EkIvBZ!1I2)*v0x;NxSk1Fj&_4W$W1wFuK9jNSTjw-;Szr&#$j! zE)rkbemURzXp$IMc@c2AJ4bp&7M1t$nwl*5!7n-ho)mOLI%2-%4v< zXxVG|A|eJNH7By_I%k*b(lVc#8)*RdY;oQ3ifn!DY3$_}XPPPwW^RI=5-gy~3{ais zqVhXn*Y11)`*`E9nl5e>Tn5ZKTtOjy;smo2I8f2NEv7b$tdn!1a69NKcR|gMsxw%Dr#xiC5*vJNM(&cY=r%O^~U<2yRHcQ6-a&=)CiDrx611V}g49~j)T z_(K*E!gq@Wh+86k7@GcmDvoDPbetlzSk8#BQ|VFwax+?5&|n!R7C$nkj@<6MIQ{F_ z9=JfJJjdLs3+hL?g2EAA4C@i*$@`WLssb{|XTc*+EuEd|E4UB?=UwsgF3QOunBr2- zDFw>Bw3|Ct|B6!b2>B+H>}H$HFfIFmifEHXn*p8<(5*k;x@`X9&*;{xYi@<>+YL(S z_;8H?fSRMrt=0v3XL^<%L8^2Kn+|rJs+vp82Pp^PFdW0lYO!w~9xG8Zqf+c9lE<0? z2FP>mLstZ~JI7k{4CZ-Tq5TL2KImO0WKEERjU-U4Rl3V~8;^#|tFbHY<@Y|3n0>l@eHrn)wwS(HW7rSJrK zR*Sel+0S~9FO)X`$D+o2NycaeR(CHf+e<`V`|zPodEcBDOTt++!sua=c`m)YpyQ}o zui~xKle5l~BAt};7OlcpS~hWgj??GZ>%QAb52wSVC7{`!yPh4AT!qu#*=DTF-Qw}@ zy59<;HUcn}m2+Cz7^Xx{>RLRSE&^V~-i%BAkj6YLT^1bxK>ifcE3GWBnC{csdC88a zoJ%duP5sT$*46OmfI0;qZoI@#>d&wIl|^6QsMTS>`?)Yc{^xnCAJ(a6(I0m|_S%p^ zP}oR<^V_A#LlN&aolM(;QSbAhny`d+AOwtjP87ythy!dW3PeiFC*m_4L_;oqKSr|u zgONW?5vZ|YFdYQNlQ1NbRkmb|Gj@z{P)6mzAxZ`ilw@a^Znki(CeKY}@cf%jKfhPSjM*jb1U1-3PQH9n@B10M zKU|U;aDDF)Hol6w1X?X3CIb5F7V_L>TVw4mJQd4xFI(vL*W-HeL_EFKTpwS!`;-H@ z(d$II!^RC4WG{V@?|e!97ZpENs698`&0f8(GLyIlrc(v`b?R8=mD4m;;liN~W2 z1G|n!8V(l{_fJ;l+t4ZP#d-QQ-R7#w|8Uu{e*LKmp4CLRoHg4LfSpWD`L6{Tx@ZqJ z8|4%v%GXvhI4RD0jni7X8XtL$dYU5Ull7G^ar?Zn8;+EH>QpGS&Yz&3uYol1{ChUOxx07rh9${JJ{ zCx$v7O!kx9m=1$_5m}t|JbjTVSHsGsbP)hY!9_lDQx_j zoT(D#P;(*Xta|m%+DQPq|MI(2dN?W*Nn=jHRUS4l;QMLYX!U$0v66pG=z);b$xoyh z(%|W6lyJ@;#HD~@lual`6f&rSTS1cN86p-!a25q{-cWEX*remZA_Roy{O|p|IhRGu zsN{fEXx{I#tHD1$pd&8ZkG&dhgB47hzFEX6Rd@Kqp_a$> zM?f(18wNLi)_O~x|EggVse=Sx15>mBHam$ac@6kV|9;oWS zV({Y^BwNyw|Ct*`z?Anas?Wl(;GTknh*#|>er1!dKzB#QA$f?nK9W+vMZiNKgQ^FJ zg`86m`!k2s^z0)gZSiW+642i&E;lPpYr*9+C`j1E1=S*Qnljv&GDKl>*4W^XjT8f- zKmA873ZC%enf_c+ct3^Z`^aZOV|f07C1jZdALaW?ADwc5C%;cF9Tj(^tuCzVNz$qsOqB*`eYop6AHM15!UrGLn`hFP7PRaVj=oS7na^5r^) zSoWBCurQVu7@z~araZpRp@*vt)1UUq3tC~#cl=K4V(eCG>^q4&v!c1p2DW#()Y+9p z2TaKk=54%e{zK1?!#Bgp8NkQuQa3mq1SKp<^?K6f_sTl#gmNzY=E8S+D4O_&Aizk9 zgGouAA#p)9cNMw;dYtpEe0+t&$^+6U6K$X!%1L09Dw2(%HP`ZE-%ai%|3y-HWPa-X zPZNalE!}T-Nd|XGA6vR%-m=5q^>T4+sde1K1|=PeTgI93xI)H*Y~Ka;6e6cV0^ZF!&aqdlNE9=!+7M;YZQT; z0z6%H@8O$J4(_BFBNi~#zU~-LJJp`j^W)7kiRh+iB$|Hmde5GxtI9{WIf&-`!mFz? z1V=vFWM0m0iED|pr)VrB*?S;848fy#-+f%bk-YqP6nbyx{{q{IQi> z?pdetTkd76HxrtVm7QM#v9`drXneK~y((&w;cVdRh5Xb)dD+IM@GAFqp|>UE(NV~k6ybKTm~h?KHPdsu8vE{&7O#D$5I_m_vq1EI3MfwDuW zT&MmbD|Z((lw4*6#|RU(IFtzW>cSws2}jpX=bHR?`Np|L5rM7@dB8sJ%%jmP%wwid z%S+vAM4LNi?uVBEk!U51wEbc3)eyBB$uV~o^DV(;DDwn+PlR-u52;*q1?G_2 z)vi;@S{D+}xl#-RNn_<(XLuhp)7Xxd6-0kjB(n~!THgq2DT+#$fQ@_5yq)ejq)1aC z_?kPC=u|Yq>!Pe_9e_%XARDVrl1a?yMv0rPVI^4LO2k)<_y?ZBaPxf{I;7D{%TpnY zK2G^5amP7iu93RF=4-hvCIk;k#D}=z-~wfr!*L=x>m{}_^9OTS6mue7$wg+p4q z=vHIPnwW^k@1ozd`f|k5 z!vA_CvvmxocMx5AmPN}3$`cRMcjx@R8he8HeYcds`HW*6E*scSPkJqkK3FX2GJ8E9 zBFc^i{tb;^njDa)(5e83esnOLtO~jJ_!sWE9za~roqlp1DDqLc#nOclIfbVP2O$4A z4VR7ZbYo`3_SS33FgU5LVb8o!ehGsQ=ihu~OHQ5(=dZ%BnB(`usss#*)z-AI+wz&- z|Gxe!mCXCspAJWlVwj_-Rly%~(lM~PWyIC4ULx@;_YKHwXV*FeCA!ANJDc4mNyoop zF}$&q^9p2HOxac?j5z?Mdcy3EYP>`OhDxkC8syDbl%&Wc6R2ebF>*GuFdt2e#E0>x z5WjQGQMRL7+}7hhkVK`5#!1$Gvqjqd#9d#$AdmlX6@kDe=OlI4{_J`8-u*u*$nXhu zsMpJ{=Fu>DW|`{?X>Z+$_BBvLPWH3ygaQ=APAIGiVFXRdBPbwX$l$@{0^qS~YTfnO zRVWe);?!l7^lFdnOtyfz4|42mRdJf9dC1ctWo0cWN*c=T8O~Eax5ty!TY`RI+{3y= z9DVI-*s)5fGpylf>pYAyxGVF_bl&;;>>OU4(YrrV^%%g22#qf_e6W=n=gGfC*a5z~ z3UIiSGJjnDiFN@MXPAGx5jNxJ%WY$XG9?ibTvZP)~|23}J-DAH*FGw6@u-{G27rpz4*wI&LH*c6vRJ><41M$fv1H2qXjTgm>jgnQ zn~)mUkwxDFlYyZZ58xBY!>BuNf*@4xf&jUvtLPNMXz^6uKDP>tbUVfh zGubOFpMdTRd$o6Yuw0}*C>Y7B8IWAqoL~@+=$c3Zlq`@dq2+rR#oAA9VJ3p9vJdA5 z5O$?uP^6h5S&;J+F^_$Y8K@nOH0}Y=P2wl?{~mOcNFw~oPyDDQNzS3NBv1Z){|S|> zX!rFV5C4t2t0Axvo4LMO{s9O4P5v)L@8__>F1cI!wqF5}kS?k<@8Vjx>3zqQ*ir6&ye0OXW%K@wC9%92zEhW2cF-X5 zh9!ekZ$&?xLu1EW`V)#J2}9NAUmjZl!5(c=uvuOHkLz3=L3=6iZ`JoL%dbt$JGLTj zOP1dn&DEur=xw5%(Dt~~d%kywhRS}N$GKp}V^O^&(jpB4(wQEH)3!EzVJrj)MCJ@B z_NlHJH^X;)z_4RTGZ4n|WK+y90=QNu&h`_MXI)jLGAHd~3;RzM>8y{$<4O2rg4Ph( z;uwb=VwszXq$y*AN}o5Wd_IZBT(!d={S6$GVVhN7$9)krVc0rNpuES#q}3=?|OQ$OVe8$Ge)xK~g8|y?EjBx7tVd&qs$dC|@3q!G^T z@ZCQ3-s6%xOz}z{moSb92p=Mfq`uFAa1}rV*O1gVtDt`!Nqvh7`Zq8J(q~^p@DYF? z5Wxt5qsD8Hk$Hufk$r_j#>H2d{s}-7c>u>T3g7}pkivfi(l`tQN07lB0HggrZsHc; zwc0$orAZ=QOEX0AF@Up(`c~HhtLuT)4Mcs?+aP_+1bLi~5%sK7#!JM0!4bkAIBC4Z zA-{dvc!_Dh{njSVyzqQz_A&20(_?LOrF_;26mZAaVI8AwuHP{J)Y!yqW)rj7P0YSV z`bD5a+t+_p&sR5&c|Yzc%=-}~F^@=3vOy4O5V>Ae?`(s(k57H~MJ)U7 zAK)P((*=D+_uZNxZ*0`~8JBt;9^R6sQ9n(cf>IilAWSCD10@P>_d6Q4|yqL=*%Rd;kjK1EIq2 zGjs25HtD7f=&yfd=FXfsbLPyM^P1T{{O-Yf0Mu)pJ}__{f0}>?8HA}uI1sghff^$c zsj2U^gWH1kPC~}1!En%CLEz;TJ(=(#Q-@C=3xcq`*BYov42$iI+2+7tuqM_UHO+9W z-?C-Z3WaJ~t#DsgvUL=9&cNDW(>60~w_1IDW|UCXnu;+Pw#{hR2-SqFzP@0%uVxH% zog^klAQyRre=Lb^0sL6^2W}t*nI53tKtF2H# z;;cI+&a|9tG;BlRKTcp4W)pG;By+9sC@Yp66SFg-ek_L=s& zU^rlHClr-eB;mIO&FwW#N1YGVSfryy;CL)1%ywaR)bv_WGZnJI8i*J+p*UvRjb^VE zZ4TP8e=fBK2Ovf$E>Anh26+rl#7R0%7FdE>!kn~>h?=pQ&a#lP(;Bo1xgjguw{es? z1Zt71J4Ij_>IgY8({8X7t9pXwc7j&kA}3mo6*^W5oF*qa?kE!l0|Y%1H6^JM@hX7^ zG!k;7=J|ucs420o+SwA2ylxrCJ=s^MqnR*0f6=}@80a%yQI_3OAXW>s;0%Iypu?Gm zFr#&%0dNVF0bAM>b;L!@{R7O)gi14dss zxH)J>b(~K)X_C0w5~C87#RO~&N{u$AYce__9m+Z%`mkMK2X+!>Nb!wY5qa37hC27H z!I*7^rFLsApX>yQ^_NY6tIjzR9~HPje{#lWM~!eSC?VtmcL`i12ckJkV0G|@L6rU#OR=6P)?A=NTOnOb}jbB}wBUrY^ z!Jb^L4|{N#j?W5w4xcAXIbsAMKW5tFh7lH&PXc*GPd*5j3w#k@BIH=%R;8*MfBKDZ zpGnyI|FgiS^jX)qh7@<1-y3*owB;_iBuPHqewJbXy3||-c2Cg9# zSmF9eB(&2}>Mh}zX~zhQ$J-Tmh9f}7Y|*s>*Wp`)S!ypPge9Dip8kokI~MSIfgA80 z#{xRmlrSTO(q6}I)Hr>0UVN93f7fe7?7^s69W`SSD;zU@xCuAwxJBSre2*|K{a`|V zpJ{g((OxrTYzmo8JM5@Is4RCps*n-xtLd_%!Ej&7{#vn`(GhhzZYRtgv(7FhC=Cup zoi0K0;O!IGk0HXefwUlmvesiGs`DaFC>#~c>cN;9?Kh+kp<{$lm_q2fnNeWi-9(wJ@7 zW~mvrqdQBt2krjSt>(_sh2x1{ILC)4@sy5V3OtQp5%LmbD}TP#>LZXzSa|e3OVF>p ztX~WKM#eY=n}gwCtiL`S=rjkcZDzL-+p6O^f=~m4R!wtIO2)Hze_lpKFAxgT@kGTz zzZ3X9UXs>Ex-tRf_;eU{KOv_z6NG@w&hp_!~hBSw?`+SUz?^70NR7Syo@j zlrGYM6+R-?a#Wa9e+bQk@~|qY`MbbB@J~YCK!efSua@cb5>EOcIAt*LmcYN|*6LQc z%Qm8RCf>ne9sdz{7w=8Ng&RGzDz+q4b~SW1HMMuGUemp?bxr%}8&kgP8@gM1TDsS7 z?CP%X>~3nDjB7V;g1RgsVmfg_8hHr*$w#~d9+J{uSN=Z2f8;Xvt0_D~aCKhFB1|8@fu(bnmxc#JAs?QkY(Y8l z+)^MPobm)sp?m_54u%Pz{%^gC47fG6I27 z>%OEs-8{!ge??UE_-F=|=rmK%aWso?$_L_4qhT9_eB0P+j_n|vRbDY!o{urFQZ>j= zGg>wlWt|URDit(`<`Sk`;jz7)X0I9CW(EkIliuq|&Rfyrr82^C?N+Ibrb|Z=l^WZO zpmIOv=(K=PG+t+~8VrV{N~QVWUaBBuHCO|YkZGHNe`TdUnopI2s;HWfVMHQkIG}vZ zNf<*HZ=FO@BT*bbZlvod9DU>of=;B92wvMt*y5?>X)LciT}uSjs?!zBgqKbcw2bPc z5gNbkYyQW~_tA3Fby`7a`=26~3h6XK^|VSlFs7{x;HXwwSUwr0Bu~+DY82E&%>=K? z6a}Oyf9B;CEwXF1pcdIB-JR8Du&>|tAwp*gYNa+pRxDK!R!nNjmKJByHG(=M=8Qhm z?zSR6>ZC56x&^JJ9zxFO9=0jpfDafu2%hrh=89%H{A@w%6NIg@Y}*=;t>*~(kZjFX z&Ul~cl1!a+uAq$)F&_wqy<`xwZ7b63hRKd7fA>l`3=n3PH%}~fUfN8^+oWb39i9)3 z`lZ4S64p)n_)egzo14=rULS3xkWK@F!ekMSPixAQx4$NAcJ*6!M^wqfsG{XYAV4@L zO)yoLZo-Q6*77J*C}BTeP?TcoP_7Ev14e{UlFmdrok}SV3fe~79mA>&WMeQ&$V(jM ze}wh^!NVw03XX&E?9=brfcw>jAb4Go%i!RdXV}d?TpCD8pYuCo* zvvW;V?Y26N?Q#yn1?9&uS`#wif8!_8C4xSg;wMV~+Ud=Qhdw3c^HRdv|5iTJN@phC zq0b1~BYnr($#{Yd^$n|=8aKAI)t}z9f3bBRV8Fax(G)x7mQvM^gAq6xk#zvTEa2g2=|&@wqcvn z2)rcdW$6~`$_r5G9Qvc6e?QTm37L_>WZq_ynUEei=c|HVlN`yA;j$Hx+V-!4UZ*z* z`6+306-vuvK^x@3c~j8e)hH)_BAfmx=wI{}AuAYbR*i}jUS6?5s?fIuy(3j<)nrs? zb4zO{e+AQ20_`0HdSYZf=y#ZgcFZ7SK3QhpCgz}fuK!TJSvW1 z)2>+?4b~l%f{Gp=e=BA)bXFqROv$A57n$mQEl|@OGWueKqQRKi5j8iP(WsmBl9OA} zeCRAUlg(zOI-4Wd++$sg#$4eo>b1g~gQ=d7gHLXKnZQrkd_rM)OPXlN%N7!5xab!J z6=N1Tp6sHg#+Gg$Zo>0k<|kyT>|%}bt!`pff>pCc&Xuc-f1B&Wf$p6Vldyau{-sZQ zk4w8t)W-|9n4LiI8i9bzuaeZ;*6~BwN$g~uEfK7iEltVE+vX0trrX?MueF1r7(oxl zng$~FPKhmrqK1AW+GU87uo<@7jRBKTFc{t( zGHlxnH%G03e}pbM@u->pw5Zg|PZO-3ts)3@kL~snPDz(?OdUHRZ!+O!je<2vw;V}zLl##Xbd z*9@DZNb1AE0mE?vHjJ(-b$H#;W1u58FwN9;lFapjZD8j(!H#<~P&oFo!F`h{Zx)e$vgF*A^fci8!YMWvxFJ&K|2s_$uP%w#qj)Y&${wzD0C zGmpimqnfs|4l^uWDTkQ^O-?~*`|k|qSgcCae?B7EN7)6^Czhh-INXGe|I#v#o2a5k za&nho7fDXeJ_;wLS&@wVxL}``SsYKeacJ6zgMO7VInRN@s9G)QYUK2Ezd(8Z;eamd>YDp1hCtv#SKFrMJB7 zYQj7@wseym94j@Y^*VyqMLs;qz9HB(DxbMs?)SBVT_=6I!of(uuuUf!7#uLeF?oh0 z#J2^zp4~tYQRQeS^nTBzl6DgXArrgle{3)NuFh^0>?U?|BAut)skLic8VSCr5e`@b z&PRTEs>dhW>U`{0_C1~5CfM!ljznJC4i1<#8?3MyXf$lIJ1DI&4_n)v1k(f{bvoOh z@<>yu`^I1_5;AuBXcrq6EY1!PGEDc3+;+?)&Nxyhwn5RkImYHqe=*DHd(D!Xz=yE+}s-$bh=z+VM> zee~)<0d!l+=l+{uZ_1v$(H{540)6Zsg8h^Ii;ydW>K%5}a3Khua&=XLKK5_H-cF?J zl=wO(2~F&_OoYCEGe@ZE6h0m6K?+K1Hed~Q_;!JSPHD@)>E3ghDY7E2(3)8*i zIz4I)M#@qF>vWz$Sm8qMkWvz}qed`nI}djg&srOj?at^iNHV#Hdj-W&D{DSMccNBO zCj`&tIS%DxsVh%&caes;iXNTkrOSi18FnX+Z>3Lf2yFcbaOCd<|C7&X!Ava*YM*Bn%o9LQQAiW6&rlCA6&wpDELYI zWXJt-j{KUi!=$5SQG0wegVzeal%GPFV;fsjqR2)wX3OA01{y{vw8`k*O6Z#WtAHb4 z8kD6)UY8Fa^=I)@`Es4F5PT&+jj-l_Jc$g(Q{(J0U5h5-e@|MT_egfH61;&o5_Chw z+9qLsI?d4$wIXKJ-swc-R4 z{S3_&J#yVWe}b=*i_TcJrn`Gho1AyO;2UIQkn3(#Q`nA5pT^5SL?}_0r-9N<&c#f~ zG6JQ&u1b>n>RiD$^7B-tU8Ro$qZeQS!iq@~edN7aT}6+VZz7a5C!HQ=c84G*OT+`* z)cIz?`=tGxHD>Qq-~E<3c}Sl_!73vf^YI|xqVuhSe~0)0p?JcfiPynSeP(&OFwN<$ z%j6b4pz}yN!{UHQh(np&;xWN(^&5+*^bussHo>>6A5?5|P5&OgQ}B=QkGh$Ogw=Pi zt$H$fkY6bHE`AZg+pwm+Yi(OoBcY^q!j;td_{aGtbbhhmm+(&#Dvq@`tyW)y${`an zLRMe5f6*roacZ9Qi08Ymn@O0~bar=V{levhQ z6?KI3KMis-8Ja+Ik_V;mN0tbj?#Z4HLa_Q8QoX0+S6%*=1KdW}$z5e>?3w^6hEgE7L&V@`MUK$ws{IQ9u? zc5v+T4>4c_Q+_Y#+tfGuF*TI-*NQpDxE~o780qe&iaQ6xc5uK{H}fI0J{-1e!_9UV zf2wWWQ4;s!RWv!gxxo83hk&t1jD<;Bm=|GZq`p!=Y)#Hb`X>pBt zazXG~gSNZNx|w)ul5MIh&JLq@tI;QWti&x)mbz?B{1zwE{kfSL81oC+(W@S*e^+Q5 zfdvEV;@V-eaMCV`SIVLP7mJZD|D+65M%3NkWB;r$Eslh8a6~wnT9UkU)@25C{u4q$ z8X%oNqC7-rN;khkxO>tL-v3uf`hoc=ci0n?F+HKs9Q*6UL^k2Hgk*fc{Ds`K0XOtd z^Y+V){0Tni_)0ZQ5bi~&`_MMqfBkgs5eS*`!v%G&-&@ViHo>dv-Bu)_4H5$!ggI`@L{Hnx zmP`WX0e%$@}3iG;i)jC!3@c7pod+WVJ9wdyHJWX@0U%N7&Pe@y$Lc49|8 z?QihiK7zJQ{XkW09}}fy1l>v+K}!xjg1F-ev(gdQ;{KB>(ydUyk+BRb6i^c8wL*bT zS01fUz{yq;yr=et-2c?V*QFjSI`3Xf(x3iCQqd5y+Rd2VW=h8`M#x)bS++b~sk;h-j&CoouAw%##^H=hak?YYi zWrI)fKk`52dNd)wvIYM=J(BCua^+W^;J-sgo|ZrE*Jz2K7WCwLw5bxXQ1BP|3wiv7 zT#q(gHWUl~y!tAUUo!>&EicXWXtU(kY{6erbIg%na|QncJ(8QDf0g;P`Pu?qTPU=0 zt%5LjbiQDCo3+)fX;pjEX4=MPqt~{gI|*3>sb4=$CDI+_Fv+`|gLS%hQb!$Iab$0U5ejt$ZE5dCOE_#sRSapybghaoBdso1&zfWisx+&v)eufU zmeQZ(&)x||6ZGiXe+lW5Pvd{=O~@VBqH8Coyiq>Zuc-;s(s$_EQbKh)G)MUvbjeYA zb*+xDWb)Bw>d)H%Ck)-mSZFdZl%!vV$| zc)l#j{zv=yYU!^e+mG@UKI07Q@)2WgMT{Z`w;Sx1py!*xyVyxfm=>Pkt%1P zM3u8JTa|M$PmOKC8LGU7YAEkEp*TM<&FjX_oJ$B-)T!M&>dJzkO} zeG>l!@z2OQf8PU!f24e02F9A`N(Hx!>QwnUy#b&E1P}i#IR6}gyTRZEP~|@W@>dQ+ z_g4=i+h42=V~W3O7*qYlo?%S)7iSD(roUJpM(G`DhR*|7fJ^`vK*NQ|#4hCEB22}{ zP>hdbHa>y*xEPhVgnt1*r!x<~oPQBewJ$+{RP72Bf2m!n;$KD{xT<{xdC*ktN|eB( zYG1`{WT@IzmK{VTKZIx;+hoT_5))h~zdn}uy4XL2cK<=_2IBaPe+WkE$J*47b5cJ} z_aDR;tMZ5Q55#fjeK;_TyZuAB z`yu%JBe-uEcUK<5s>=LBar~&g`XNl&hez`te;>gw*7@Uj<_`Z|cy@jD0sM9tFW!Zh z*Zbr6;{m+7O!F6O{vo^=$6tr>rW6gXMB_7<3*gi6;4)<6bC`-RU@k64HNJ?Y_!1g$ z1={gtdxzd=(etDqN1MaSgtXoAC{d;2J!LYwQFe}_j4$Tvb_oor~8fBcmPDHjqp`%Wt0@Y68f z+>81CAxw``ackuvWce%OG<&bwkOG>Q+z|kpV)ZJekA46R4U2_D8=`~+3_ zDHh`qG~w4c1HVBVp2b=`hxPa^47`A?co7y}QYJq>TFl@#QJp%We-Vd8 z{ANI%Sp~%}11Sb&Ln~Q)7zH{le;e6gG>7K8%y|-Cb=DT{!=rc6{PhQDVF8uLNiJzo zoEDGJ$?N=;!?e^tL`&mzYMW$QRh(AJ)8e){MT1kE9;Y*of-B2`YPWa0;Jd>kbXKzv z&gVL(*bo@)-aJAdUaF;{JTFfEfBA9Ru%ss15MapsB0!{d*WT|hey&`08Q;V@n7AEJx>2WfZ8?vHBLO_&bgk0`;PP>MgJ z9IxPbyo!~04J~*Tt@sQ2@CHKo8$N!*r%x-{zl$!D>-}8i5Pk6geKmDkPZx2zT5fNZ?2OYlo#I<@Izy^S z9;a{nD~ISi!+6oJ#p%XTf1WHt7CvPCu%yjMJm*{MB)Kyedvle^(_2jL@%dPm(`Z z8bGQ*7WpxQDlwa?P(#%?nHFIg)nEl3uSoVgBq;Vn)rR;m2w6Cd$N2#;%tjR-;dg>V zqu(X$8hTwtG{awcfL@R~`4I9d^A9QQOuvuQA4auvzS4Xr!$V6Ts20U^ikf?xgCWVT z8T_Esi0YVgP%$)me=VW;a4ne94h{YT^ooCo{&E#`f1Lj2kJCS{LX9I2|4!(_I}X7o zi#Q$j$LT$JFjNaIjWae%nX}2uq0tIt(Mse}J*Lqr%%w(DP!o=)({U2DppMSKDr!?y zJ8ndStE42Y9`M}KDbndlQfs-?E|ll)5OQRp-N`%*>s($be?~FyI;n$S9HnT6bUCO4 zI-P}l>OwKC#T@Fv0y;Zo_Jt|4Yhd{WV01Ix;!eIEOmVhYn)s49%aR7&EzgnVsFXWf za}K=pA>`4AF`dp$*_z_y))e!*=nW7UdzL-ts@raGCz}n($jo+<~u+BI;dzt3fhUqW<>S8U< zJ~YbRb`$_)z(>6(p{d$N=Zu;AaPGAza5^15o^Uky zsG~vG!b8`=N8ds&eH+v0dd#I8P(|OtiL@6hf9bnup&QXbH{nBcGd9yL7@%9RlfH)w z>Gl*Z>`HQB7r!58$*=@F`43R*`dyjO4x@@@&YT9uKFTg|nNkB?$@q5HziO*`2szR< zVwXwRNcvjAsyO>xRh(TOXIHdW$Jtk}av{Dp!oI%l4u70|(_d9R!oD@k8WM(jgndU! zfAR>sMeSvr4K34(HGgHXc94yXGtrLQ)r=_s?T43!AZQrVD2^h!6Qy(z^XN`2q`R?* zzK^AJ4^E-`v78=2Gd+lQI)o3?gV;nr!Z!Nxs2RrgBuBRM2iOh}ys%s|ybvAA4sdKj zA^#!%2`%Z4sTTeqG{v_Zu)`?Q>50Rbf1}fWFg}}?f+^;0auviy%CuJ9$?hWD$L?+4 zi~MDpV$nmz+6epcx;v_e*iT2;&zGgRM$*qJU{A%#U#z(<7k;s>GR~g9Nz#108*525 zHBaeH8CJ^U{_DNSQyZlq4e;`RsnTe84RqbeX#Xxd1%^5B(gu^b6$Ee`Aa&22iO!>Xj>~Ee}Z;LWt_d(Ru!jxyQ|`KV0XA#^|F_p;tv6*{BvN5 z=G0zuioduWZv>Wj3boyZp55W48Sa=Rx(ls;ep|;yye?y#oZg+TT z)?Ty~YP;ueDar`%S>h|y3$;R@8l$^WuSD!(jkCWiM4sLAx9pL~Jfp}im&jDFuP`&t zu2_~W?MIb7qX=&Z%dpPs_>wAN}Nl5dvQ@-p=b9Nmmj+~6^h-P;_Tf~ z<@yYk0Q3iV>5mZfCuGwr$fs8^i(bQG`U`65uQ-EVM+d!u_4Idaf1-b2E4>Aa{*4&D zgKcye7t(vUlmVAB!VQe!Mn<@Waf~nx_cITkWICQ_UcAbDL@bMPn4sA#kE+-dI+f*9 zD=VN5HkHn1g|vxHqYx{iK~_u`uo?6*RzjDuneqfP8(qzRgIWlx!b|*F zK8$QS8+Y>O_+!XXXTC`qrEHy^cn=RDTZdPtCv@7+h!_!()DiEYB~1?_;6Hd>r~Nwj zi){AI6rRGfyj{9=tn6gQ%~wGJ*l^JM{ngZ{ycxdMfs46at*ar z#`&B>SXEiTf9J>fg31D35$6luhu_xbxNVhHW4yK#AOIQwBMX^yKJqAvB8p)y+3?dK zPNMBtNjuR%AH{0gg?73qWf^Od%UGj4GwErxDbLJNtX|Mztk&`4JjP#4E^4)O#Q^1} z&#X-6artCF1&~YqDK2wfa<)8YwmimvmkbLoccZ2X}9D|5whwNr0^Wuo|!YBljP;7(qbny8qj{E2tr#e2vjpp*#n zDKjOKU67<;L6U+64h8UH7JpfKHF=ExAxX<;UGc3|+LG6cIB$~5G`NqSIWNx7a;j^~ z+-jVkoy;7J%^1vr4iJMNjv~@9mprJT3@j!ce@n=l!lv3Jk+n%8Ym;pHBma|2+M_OM zE0t)RqjGtbj?~bX;{3yVv9L{b8C6PZ(nOXCN%ElxGuZuZ`Jh`q;7XDoJ~f>WKSvRM zg&BAZC3qYQ@C2&yBu>UtSca#u0?#CuQG$6&vZOq(OfG1plh9K#mJ7Z?xh%7F{_xx2 ze|bLsXa0)2w#_nZmZ&O6cyFBdxB07vc(`hapI+=FajFmBQV2IY0Lk@u+-L#t z&<|y_plT1HR!!{TwlWB^wp|$nS^FDmf7Qi-hrg)|f~@^r83bAThcXCW{?DXVn4|Cm znfcxk{;~ad^bU2QFiKhnH2yC|?pyrdD&!|-^S1#+kfqH7=kM^t{2f($PXm8X)-m#md)y5NiQHi&_F(Fb)H7XU<5K{^Zcc=6{ap9?gDMalR+HNhL){MdUrhzMe z^n?{bE$W2cdcxn<-d_P9rmASfDMVzr%S@Y@UNf(Bi8o*&oy)k z>2p-fMT?Lw;8>j=8PW)Li&yhh%*UyJMBVV3v~DCXOj$!4w3Hz?6WlINr(H!19fX?I zt!^`s%W4B@od~pTw@+`OibaSMGqSqXGdyBuEX}aG&CKdVLeFMX1F3Y%+9%fcwD&7G zjc7Yje6G!CdxVk*7Tfrop<*eP5f$z$qSXzF!HhOCluBgdN#|v}u&OhH<#>yKf)y${ zaTYQ6#9N5UtZsE_>GXgmj(>66N$6=Utnah~X_bnz#d#{jg@ay=H43^^ti?J{jGEba zuW63x86rHquP|(AYww+~LZ0NgD%PWis2N_jS5M?D5u^5=x-vVW0N$#i7aIsgmm73q zPFuSj(K3?~rjf{HG9uLqBBiE(O)56ye1UjjnwWipeNhlwRBXisgg=urh_l*yPjuEI zBs<$ZIo6jm4Cm~8xKPDK*hWlo%->`b&1q~aw@bw2a_mrXF)ks(gSzDeyuYozM~J*k z#pTclbx^nZ^sJf7B=oEeODXwe^laQ+(iuSlNd>x!ofsryWj&MN^lF)ZL48XiqwB^6 zRw|t(W@m@YTsnC{R`D~)aL(|2)|fdXnI#%0>h2SaFCe`^#XE2#QIXZH!usiDjFlVgFuYl8xrI>LY~@k-ahpK; zoy5wMM0)$A$#I8@J8_q7P~p;8-}YwQ8rua^zl)e#)ZCL!>w{W?}hy1fZ~ zL`VwbJw$`OuQ{O^hG{hq=*>nhosQsc+#{~odj+R?yx3x8QpTW+ya4VKc)Xvu{v`2u zbNnlh>0*39#r=4IsFR0mS?2J%iW#JO(@=yphd zSj9*12%%(kYir7Xu!vw=&vpS-5RVF|4iKwO5~`l^eu@O|78R|YkkRK=y<6X?1Y5U3ndF)CPBP^();L@x_7 zgqhJx1Uqb5F(8VO)qUr#Awq3EJ>7!27vnQ3J}aOJ7vf!iIPy6a&*C{kwXfRlRN4}B zS|%?yn;A>btj+D*=~>xXffw+31uv?2311+ZkF%|HgPGKc@Rq)=%Qp3|>m%kKPm5gM z8Nti=l7cU*_zJ#C%s)A^2t{Bh^|g9#rsJylx{7ZUEu;fZrzOxAmM@ip^Tz zRq;K1pQtW>;9Rh2PPtpegQdOwhbn#~NV&R5%3JjG&Io>jpDOs7il5^bL`^X;yVIs7 z;yjhzsBN^9Y`cPA5sjsku_l*FC-qDOzeHUaza<)E9C~$ii zq8mwKVL1kxFy(0I6e9j4MEqG?p54b^_`g;BAN+-X2wSH8lBjQ+xTQ0S5dJ1|`2U_f z{dbp5;Y$1i|5WfVA*`N=PFzxnSMhHJuZj9^8!_{^rJKmE*H!#iR2KE)n6Jw;654LP z0zOiukA6WJ(z=b>us*&!a=eV7nn9HzDnvAy%8qDOVrZ+GOAM{stqVe%SqvlDq-`(- zJIa@TqRL?fBMK{3s;naBmq$sIPH`!;*Bl%a!C9L&2iJPF$=ZE_b(5>!E-Nh7sH_$3 zOv5-FHk;X$SSnUTRn`flPRZ(4pC|XDK3zUF~+F4Nq9ryEHJ6LA zQeDZ~&In`dP`E(lLM|d^mI0t>K2e*<=$fUkN$1?Db#2|Alm!%tZrE;WAH@Si{x0Q@=Vc4*QBy*9jpgMEQI+MqQYGp zVJFX0xKiaRo=wyiEV0`LbC6(CmcSF^b|QK8M6jHzRjv`?DlSFY=?L%Fs$3@`v@SOy z=vQ*I=(6|P7^nO?zr;I`N|>Ep_*@1*<0xTyV9w|F1s=Jaihvj z;=SdLLEYMFj)~bg(-NwK?4aEy_}c_kbnt*;i>i6-(rODrf~+-b!%@pE%pCaEXa?CT_gyKSMf zdfiH=xHP^omrhFtAJ>zWe(h@SCjwnE|7v`Vr% zp;VTbe{z=!p(Jco#I#AR5M`c!Wr?n$={TR?2sNqi++yuZ>tdd$EIjs!zPd82Tg9Gz zY1;|DA(Z)yA;1Xhu82_D`Q#BYjkU75^=E{l*(d0qiBLjzyk3_}n_;4Ai=`!YZO}#} zunMp95LsElwu{C7HJo&ZXPh{4`t5-0HZxoGtRS0CqO~*}H)|PfShw_l%(%Fm;dBE7TKduqIjY;o+5z0nbAyZ4Pe84iXJ%ZFnH5wR+KOT`EdLcU~ahdIk|KPT4`# zx@6pb_o{0>ov1I)yI*`yBUESF(D$@1Cc}Jh_;aG;#Jt#A`~yR{FjV*} zqG`h3VvkM)1e+-QEzvkhl}v;Sb+W?W6Z1~$&=mfWn05T6M95x@Iq;zxKsBZ_K|jbO z03VlQx+sEw0YuS=Q{?a2m<>{wtI3@p2X}y3G$M*wm@W2UE?VU8QY@3d&*C{L&qu#} z{x}|&zw@PRA2#EB`MVxH^7mR?=jaH590Cvn5o8MF6#&kLA3gv|tb=3V(^B{@01-L8 z2_bA|8o*S08HZ^Aa%6G@6vCuvA?!Q^Aj}HKIu`hU$Dou-+X4k!rL<;yohvQuNE4$g znSoErt#IUCfFJ?@Dq*x%N3nR@7)~F> zlGq`CEQ#fDW^u>L*kPPAitgAEoCl0zV=Q(AeLx=lMK4y!nAw2}tVBK5U^cqYiuGv6 zC0K+@u>_Z46)s0NG@OqCT!aKPB(V#F((5y9+g-2IuGeYT>$Kyw7+H860gyTFcKkmd zKKZUP)*)^onCHLTbsj`xL(E}d>+y}!Ef4?Jsu>dHK z?GK_YmdB+V#N)GAydP7<=yO=S;4lXA7!pq%dF&E4_@xbV5eAS&1Qu$r2h*?@bFdGs z*o#wf72>$YwW|ird>gNlZZCE%T+FL^4am0(8{vBmrz*VmRVVbF!oDdQ{?8Pg1C^3Y9ltnJ3@g0f4Yv={w+)JEF0UF=RS~mybe;<*~cyXjDe< z9SGu1RN*d6!Mi-VqOPu}qf5Bs2dD5xnUx@K0uaDexY_~#5JCt6SQcxVF|#4i5FEq4 z*dbi=qK=5hT2oYJ%(^))_83C=*d)AnhotRsXbZ`AIg$;B1e-d4UP9GT z+`TRO?lHXgSS;2t;|Sj8n(jU9rxCzGRO1k)<1?P@YI3zU*;?i3PMiu~;n=ICAr(Hy z5Mj#wc))?J5N=c5G^=*ftR;{AMJw$5ejX9LfCjwi@q4Ok!BpObmSVUy0KA*;a(s?U zbb+7{|CEbmNKU>i<*D`pTi*D81mU~+9>?Mv9G;jHJA{U9z0buCVMgo_R_5`+j^_^` zyrJXy1;@nXQ}97SJsJTtV!HhGLi!CT_$H$G7G~hv9s}k$1_(DA;QKEc;ZwxFT2SG8 zUlp{7j|hiK!lcQc$A?P8IQ9}M4&wO(h=_+gzPM5R+KhHAkFSYs51}r0 z6fbWRVQ8#?$p~&_CGKGr?qf9`;1nES6i={0Lbx6ZqBxCzH*i0En1y-#09xQj zD`xY4Nr5Kj@d11Re)Quaeo(>+Jn4e|q=eeezxk+q9cL+6?Bl;sQFRVq!xVNac;PiP zD0tyj)c69gVhYFyaY>ngd8{O0cuKi|;X`h;EpRsb{G~f*dUpEUoe#Sdv`4TxfJH5b z@#FoNB?$2-ez|Rb48M;4CXZKI^7vyO|I22`mLvFUIf7&x6t-h7JFt+advauv3(q1v z<)x>&AV0(pm+`&%i4qT%mhnBnkDP?>E6Vup!$sKU>>P3OeO~MkHol0e!!mNaABEcS z4E|0WK$UpY@eKZ-52Y@z!W5p3>0FIgc6nT$=ej(PkMN^^j>|##r-Vhh{HV(|laqf_ z9{(vJfA%24^F*CfbRb<5u4CJ_ZQHhO+wRzyIFpGpvF*vkw(W_X2_`!E{&m(lH@#L> z@4nc5(Q8-rThBZDds}w&GZ;T0OY#~GCJ?aL&TYvBWQX)6)W+s&Y+Ti@xW)|39+a9%R9M*I z?rgE2;|K-t32|I_f6lcOCj;KT$@y@11rsd!9%5F~@<%<$ z0b^C&0n2rXJ2x$ zZdk%@NO~V=rrq4t=`O*HYZu0yKIM*Pj9}*>hi9IZshk=l8BXX94`I6V_AhsHZ37*+ zX@8V`e?WE0Uy#nu0FzUIqL&>5u3wK>+R!CM>3x2Yto+)@b*VKP>JcSF0=d<|)j#hz z4Q&QY!-cdGcf=#_&)f;E)QJ1#gC6m{lVig~#qMD4ht9$Pi~wV0?uZ%t-348Y*c+zl z8zSa2f8{Om;$D89Tk*E0_H_pS-vj%dSUutq7a+6vnIu5X#vmgRU-GoQk$mRr9fmRB z!}b-H*nmbZ5;G)XMj4*K-QjLR%&nFI#(H9>Ba0d6ah##SI7A)7!Mj1Q+J{+p#fZDH zO`39D`O~gnHzLTj@|)TDWZg*DF48Vgz@V0o;J~+JX>|Z*Up#fT{A+A7FaU~Idf5|Z z9MGJQU+Y%OurbOzdv6lPq&MSc8&7Z^5G66Y$43J14QPx*s})V2N4|{`zR#l9k~ZA;|6XM z2KEsKju8ef5eA0M+)3YssiQ1Bn}1+nzTsxvV;918e|d7P94na90|VOA--mZ@k>Aiu z-#`B!_Xo9*<(Lf<1SFj$b8ilrAhTXf3O7?ZtOqu;(F*H}B84&N!Pc$a#TKrm6~zWD3LFH?P>2XmjvEK9V{i&rlvaaz z3P=g;Pg`4FI7$_p0!rHnTql^*)>fNv;i{!Y24S%i-EWqOg=W7EM%2L&v{`{2|uONoVghnx>8_TS`jPSv)b+Y`tua)^tdD&i0~o%c;;T< zYMrGUc|1=DqTEV86S>!xm$sUe)Es4pDobu85R> z_cZaCc%pg!{UD=+coIh<(D`=#uIZAFZ~8~flKRO6|IytYY%va&Zh*YT)V_JLw&(PGid$= z>WSk$0tcKDie96*Hy$&i=ilY4&lx*?t@{=5ZegkOc>ImKV!@B6W~+*D9&!JnBXXOB zmrolN>sQ3@9m1m0`^jtY>oBfIz`b{`t>O(O2;tKrLLs64T??$;^GG<;T9?7p?QkGE zz!YiHyDEo5kGeOV)W^7?x;>anv~%vgX8qvc zafy*!6WVI-Ou`*=RhGzy4?M?znv56uLEudg!rLo)$5v|!CLOcxP?jf<;&tIlj~T6* zb**43Uw(k+G|U*D!N^O|5VVJuY-3cnhuEH8KCa~LF*vM!h(p;Zy!2&Tu1kW?l5&v9 z3ZPt2a?Kv$YWhp<2?-{99SiA<`fI^ICK7lM?k{IH=ub4sPGGpQJDx6rjYKJQ=;En>^LU6y7J?H?2hjMM?J05JJ3ykH@+s|7Mb| z7)I={S8iw#pAMX3=tf4@(MxK(3q4zHHn}JYh-Pm{h{*cQThFIDG^t!t@!ZI+0i6ux z{-}q^_T+knnML+LQ&M!X(k^mCwunjl2n_+t=8qO0rrA}Ss;?&nHC@{ussm>@`0y@R z$kd8wB9KG_2XuL}H@K#nRaQf%I8NQYLw^YtKSZ7=q1P?|)8y+DMjRzOz4@OTmO~30J z`fY1MmdqaI*y_8|mcC^?(&Y6CS3FxI8l#$t2p&%4UEUHIhh@mkGqov-F?p&@iqBTU4FK64`)10&qg!#^Dr zaT2{-@}|zhyy|RmI~P(LJd-`zsQmoa{feHc@-%N55qE|G6#09N66MQ<9#!2()WT|8 zRLdHnN$=Zyy1a#(ug>wR0DT)feRjx!mfK^FJ3cx2DO=~vOZbt=PNM{XT;>gFd@ujVa3VlTGR&tHRW zp6w$whXq$eq#EL-D3P(kDE!lLHWQ`tMLw|j^r)1abp1GF#a81u09!(_8C!LOf)ZR4 zMyhIMe0lXOj^$BD?0!@6x!TGNRKi8p<;nEzyg$9Y;%M>Cup}OKQ*1O=7+*tm3r;4r z!hsEutA842wWe-aL!P``xMpWexooCgjB$RQv!HZ&{x4k#2QC`}Du!QtKU|^+R6RZ9 zu`^=#ahX!NN&u|=gZKT4AKo%>+ zpj3h@YuBW^f~k*GWz!*DEoUP9tRfyWrVY7M$X{!p@52)vKm<(_vTU63hF@TjqY<}0 zyi3)vV|QqILrvlvS8q94Vt(D!f9yc1GeFosn(sn{$EEtMi@q+XG|j7xQ1U zxwCBAHpbzBfP{Resc&K)E{-?SsqDZO&yNeb_9%Z%qq2s4@WD>r`;kv###z2vG<`@w71+%*Q!;ldALabB5Md~jA0ui_OjQFI=Nf*l}mD7&X znfgY00M}>Xvy*~R(Iqu8t=qW#>yX>93DUj{E;oY)e|Y$(wcRDqeQF&1c>ZJS0xn9V=Q`@u*m;agyI-_??mrVW>frpt_daxK zgX5Q`kLc20Ns>R?wYOfs!lFAVFQW9lTM=WHya79bKK_7S+98Hzq-I3To2_p3BY%!x znck@BA$%823Q5rvUdRYu7guLgSbsCBWfp>Zhmmi>Bs|w|0)B9-&4Z%+t#M>eBC9=h zN&uL^lWbqM^^c-r(tQze-7jEKDfeI0x-3P`6vBxyN%>B3A~mzCtS{40kD`2%hW%eM zB>>6wn@3)&q|um_X)_MVd`n!TfPC|Dkbl~EpV?2Sp1JQaRbR-DEkPER`8I3or_o;@ z5UT9pQb*L$^w8)UhlCB|y`-Jk@dLmow^~z&92v)|E2k>|efMAy(}tU%;5V*0 zp4lI(Yg@we4g7N}tXZo~{ual-g4SR`(}A++>|Y^O(vO#0Ypkn+``3t|B&yU{d{EH* zowc~9iUTLCbrg3@g*wt9E;ZzP3PH(TiV{&81kk?6~N}*WOZ^q)f+*MVhEa%$voN&tt(J!awBc7NEyV zZ3f{qk#@MxVilj$aKG{%;jaXTt{b^~`!QtTI;q}t#-!2KTvH@<v`zHNGmCsgIsyUan50`d!{J7@KZChQ{ArPO}gL*Ckyq%dFQ*xS?0`0YIO>QF_~HlTWs9zkZ);J0RlDZ$8p$;wL?DHJBL z#bAJr3B3?eb}%f`8)en-n%+ZeNb%{q;mb#Pa-HXlLN8+nq4Bmq*p+Uv;^#7Rf z(O5i>=<7>y^Z)0a+CQMc3P7~q?ymbgSkJl$3QyYpqJNk$*44&>ftL5Rv#b$R6VQ~b z6t#)Z(jpQ{TS|&4ATy18Kv2CpRa!?`vn*Vv)e`^0C{+X~?&QohL96>sFkJI9W=_Aa z0U1AiS}&4RnqJa)TU`_?!HS$RAnrHcoXA?^^lbLR*GrFL1{*{9kw{0}F zO$|xY)!1jT=R^_i6( zPh@Aj6064l^9G%Y6%vuu@Lq2{_Dd96w)QFZ8n4mn*R+&V#4s(_#bD zQY~!Vn~5`@y2Wszfd%BF8J+Kpgo5gRX&|G*UBrBw8AcmIY(mRI^1K4jySuln2TA%5 zvU&Kej(;j$CcsOn*)$kUbt4zj=L}a|G>?jW0a=a_W}E(}Ve)4o z#H-Z)Jmj%4rOOwl8$OcU&N?VfEq%&85IkkaKHBXwE}_zalxrFf@6TJfs7(nmtA-_h zgC$WE`$!XRgU2JJ=9&`6pX6y8;~2NzU`jGc1I6PTl5o8n%G|+q$hEM_3koKlC#|B* zop?W|#8y3HSQ z$^&&9tQO8-y{~hyh5bHDuwQxf=xvv4nS=8%V`Ct=Q~IT$5Ao;%$hfEw-SKuf_r!7t z{RS*S`X%*^>{<{CwWU8T7x>9wW`o>K2xH^rAsYZpvNs|gjF|{x$7>fDwIViZ&Z1QV zsLJx)U$xMh7xZO|sK4Rt)rh@?Ke*H(?ltT)yNgWXn6f!5h7eQ%JRAl{dV_5Ea=uhV zC^V&e5_t4@$q&>a#sIM2Y5=|PzzkU96Yq!M=nS|D?kM#nu$x*iC`4f59AA?!p@}3f z(FHI>QOy~B8#p7Y(F+HaLN%qVtT4sJPM>vPm~}W*e*=RlN-&nt`L>6w3WfL^zCpU4 z%M0o}$~?(L94T{9jMo6G3Il>uR4{GeY!%l5{rr;GAt|>HY3_QmklqVQun15@idn^d zi2b-CcpRKAFn)k`U&ZDRGo9-didq?--UX!QgtNriT7{xKF7^q;#Nu0|mB@=pmUWT` zbgCQJpqX1qqs$wIU6AVHI5UoKhIJg!PHDR-qr3<4CfwS|mvP4S1RJC{qn<{lcdzz_ zZ5+_*0wIXU_lg_X+r4#y10GNV7@}Td&D>`ZZuG)U3-ELqLc)$*TuB9*cY_Q-Mm@rGdF-u()is+^F`g8(riLm0_@1Qi?AP~D% z$7SwK!Euv6Re$rN>>8qyoYU=JqWMG=2?ew|{#20#M-&LRDwT(+ra^f|0(#HUcQa8l z`u)kcVkWMnEEiwpDD7HP0uJYhN&9|6*3f2gu59a@C*fbi^&-KIz+a7#9B#A|~Hp1Z{e7SI+DX?dgag zqQ3281icpo^rDkx{e}ycR+&J+%aUYgtp1~DQyezI8*(WS3z1}s?cC=XKxj13W)j}k zx2x}(51o=krnPn%=AMnM#I)1$+5e^=C zL8bk(@~?>D zx<)WUOFTI`#iPyT2ChXpiRn}`vO^o+oI%&LPL)Wnxjgh9W`c+snWeUi+YD#ZX5=TFu-XK4Q}8j+8BCFVs6g-p|204h zZ=V1krYo5!;Tk%FhJ%?n`ZM!oQxM)JHu;&n`D(t6>XL#+Tz6YC-?e-e2Zf@yZ{AhNb z&Zql!hkRF(61E5pjVd!yuy{q%|3(X76})5h&%a)wMQ)H^a$Rir^fbG2z3D)%9p3YiX z@jzjJ;S)mCkH?(-KLmMbU@?N@+MwzVbrk}ds|#s-Lse4tNfu7$DE?YX4gS5%BZF&h zFQ6Is(l&cZbHn*Xal!*eA8@ZP_M5+rNvC#9;(LcwKa|ETOX3Sg;M{nJjbk>kY!`1< z-ViZ-fjgG8qqxG|ve6x9yra8C#Rl2#-ozecS8w%+SZQ7uf$LrS`5UAbSYVm zKVewWT(@m0YKQU=<&%bI`~0LH@~JT0>U zLF2oa&QT4WvDOQlF&3-VWIE=tMs-ypokm))Av~$?>=AxO{vUk|2Oal)jvcK2$Uh5j z?2yQ}hR6!Y{c@ZdB~Y4jj2U#Eltp?>kcS(0?jhSunP7K}hV}TBT4~?VkZg8Po|ECj zf#E=-(jE1H9cv!0q10bgk#5g#YqG!NXbxr?;(LF?eKZbc8mP2a!l$tbAd(fOVF$P? z+<{A+KPRid#YMd|K$ko*SumYQ!+@8I2=~X14q{LiMVGI{OUh}?xiA~`$F-vloJceK z)q`);8|hx0m$`w8$)&5+Xp9-jPv{Jmx$~8S@x-P>#SX612;?Yg>31D~_|uzFPou|2P$mk3xq=2SUPgtXsz&9moC<$VZ9Er)O?9Y@$KiAk@x4Piaaz7T%r7K z$vPGYh#FVw9sxn7NNW;aW_?P}moMmdJGji4q#o+F^I5wjBmjS@aYNN% zWLgSgwUJOXSVcvLz#6@wiI<0h!HOZ_h;%+a3wMoGK+mUJ?Zk+t*#q9uwlIz9XH4U4 zV>8BjnizKHf|#xR(|lmb%`boJ=GBZG6quc3+^wTccI%fJH{QGXJ!p^zxpNDda3x9Q ztjLV$c>6O63!tl%Iz9$eQah!xV@<~Pc1%dT%|Wt_5tpcco^~RN!_zF+)`I==ef(!~ z3pagfN~^^)%>5nwL8MbvCt*xXRJ>h((OXW+SiAIBE44ghGCQ^g*AE1AanuCCT}3`i zzq6a$$^IZ)Q1+%~(PK&|Q)Ow6_fQ(;FB={X9&4tH7O*KJeYa69JE66p%V<{7T5~E( z&t_&f#;UK)NZ(j_)2XMfCY8d%-7_UarG922Ctvo5@$+H5wIad7aS3i$gCWxuZ{U1#U{4ip~kfV`LVexgPPtA$#upk3B!G`;P#A_(~EB&ZX7 zVT}xLQpWz`R!%i>*ecb5SR|SZ61KJ1>rv4!VwoDW#ej|J910;^<37kk*-a^?dlf1Bfr+!RGAeTTh zeNLOMoA%C)At;=5Ix8c z(3OEF29ROX9LPC~jjdL8^ieGi`Zl7r5rSGyd^eXggyEbVH`EoZU1nIxT&5@Ea%0^d zz9C{7<}LNJ)M~kC5z7t${&+<`?Y$=w^RTAQa%>^z#FWP)XZ*}Hv&yZwX>NjB*>489 z`WZOk>Dkf}E51SJYl= zd#1{dPae&NrqVNr>D+*!GF+js88jWW7VRq60S_?y@|<4jm&h;sy8Hp5&>gkQAnr(i zelymQWOoE;ms!?lM{_$p${YhRI^yatMIR%%{jg@0Aw&E>SDdGbXMq81o?6B{$_)KS z3pvW>n1q2av%CJ)n~Z9#9nO<%FA(H?Qe0&AFFrLLt+?_I3GN>CEfaqZEls??uI9(VC(gnge^_FK~*(vgyJFebkvH0DZ^p;wK4Le@ZbeH{Ngc=fwDHwgBWEYKAON zPSPw4TBC+$ca@IKTH1*s11@2UXVj-q-V8fr+n4p=nYXMxfZ8WgC38~0=73*)$~^;( zlkT8w!G33d9CS#*&hOMuIB#eMC+KS++!-I&8j?6LZ!a?-Edl4N;)p}T+78a?8T?Z*!ZQ; zpVc7%13Rz)X(CiWaS84}E628Myv15KQ}W@X7v)G`ZwJZB(d!ZYFj0qr3hfU2))<$W zwOfINfw%GwCIOv2&aXcu)QWELeGbGT1xGV^gq6@bp_JMeiP|nDiiz|qc+tus~IU}j!GO7ZQy8y#szx;$boz|K>xw&KsW>hSx7j{osD1$dak zxAmVug~f0)kM~kLVFA}7N3acRF{KAs;j)Y4P6$%}**>khm()bM?&Xit3nmcc&u?B* z)bq08SfKVt8K{2aec0aew_EA(&2V=~UPQ_^ zS<`YHA`>)Z3$*b{N4knT_9Cgfa~@NF(v-~s555^JJ0A=dgpCUMl{q*m>-lq-#uOPI z*YXYnv5~&Q$m!B@1^SM+8PaNAB&Z45peOq1>XNO_19bnG-|sNjTuzrlsv|2x~HFhfl!PRpw{1Iu=3uh32{@h>O-svD)YW z;{8c!a1IfC%k@DUcE<`AnLG`{J#@3quhWyMsPF!?2Zu;lvtlVcE~0C_k&dh7YwK9N zT=`PED@mP7=q7-0l#Z5G;bs2SWMg)()DW+H0FSF=^NoO_8P zO1nu}w!}xzbc}!fi4&J5jXtPKdEdF?TQQMpeAm5&CARj!-cr25{|Ds>xV5krqU-US zy<6(WdRRe2mI5y>x|8GX=|dYUs5 zyRP~b;8Jf^g~vT_n_jkAiv!)PA=k8N#=8s>^T^tn`iS1z9lEMnA>IpV^lIM)fPsbn125?dLsV-Q`oxt zd+!BTluZiul8}AFyd;eiDix5E_*sQsCfLP z&esHF;hPu%`VJ;jrSNTt$bWsCEG;>i&@|T#*FiBCXtf{=6H5z=Mm_ACBXd}y0HTADc z93QZGLaNfsf9*RvS$`0zPB|hKaX#R?QgZ&x!uz~L^1EQY+8Zf>Tgio0BwygcpE_=* z)V8#A3e@!*hjdi=4!AbySu0)x%y~h}lM@qID-TiQI6*Qz%U98*?%WB3gXD5Nre{Q| z>Xof_N^6_yMslzb&|9PFx|Agec9pi0P#B8G9kcB;40scZm_786ZJ6c_)H*Z(@8xv>29pKDvBVC_2SVE6@DeKTbtRTmkhsL zx}D;?F3gm|jZydUkN;J)p|7TKf0uN zdFJrel^R)&)u;(?ZYmFoY!@|1r$|RzQ^`>JX(%@RPXmUd|mHMvhdf zHyAT5yR_xkX01-MI}J_CO{2%MbIrYMO^zOZsz3^N^g182(^nh^K96<^p{qCk)9X~C zA9e_wBXD!IMCxAz8I*=T?XI(8=flcDi9yGYoEdkg%<9LWfz|XW3G2s8I>*DK^IOGE zY`rGn>N1CSf<8=i>d)%1S!Zo_Anj12M%?exRzyo~qEWT1`r8)7=Eg-uo!9l*v=Ynk zm-LN22;&bxAh{W$@7(CkXDB^|Ay?_-yQy-MVG@d-b*^JpOeaL0&G^K;?$G|9@*4U6 zZaH+KS|eRP>vhJ9xi}{ES-W~?t+F0&}H?9Ff z6awUVPQh3b1C0=rWNzie6+{Rn(C|$t-w%|d0M&h{33h6KEtc!nAbiMdE6OJ6xd-EN z-^>R?elteMYU@HPgsq?GKiOKhoIh9`$rZ07s>M(-ZHsS(sp?`(+VZ@*h9KnA1Br*@?ho8Q)5l$$dEPT*L zq9?5`E1({c?kBv_>f2F}dp%#h@bMeKC?{WhN8}4GRy{%Lg+1L(49?#VU2l6}@3|B5nb}T~ZeJ#v+N+Xm?e9-=3dZIxg8HIcbDI-w zCu((r%ik(740O5hIY|*erqy?^Tdu|3pJYDJXCB$j#+{_PLI=CrAngG2U_L{*%8~9q zY*Eh09-2otVYLK#K`=8;)p~oUu)dE6ythx-``2}YJ3DuO{cocPJ{tQsFz@(2k8YB# z0-u!=Z6cTt;r~7UCce|$30co0e7!Mnc{zH$HFy%btNk{>TWO?9n9}1-LNKkWNWP?b zR2~%3OMTc&xKw!7MG^&6_EdZu;m=rAF6?6Arts$}QSl6_uA-KndQ#s=1aH1^0JP(T z4|x^hf(aNIV{hOlp>I$%4wNSQMpWXG$itNjaGy*_g<`xm<5+|u)NgF72LpAI0#`%d z+Yz7(_E-=$lNf#lSKWTqeqrsX$fn3d!&}c}LQ%{IBt%04J_vyFu54i_f}IO__Q}eF zz?(rma)qN zTMBAKJcHMKKB^=qkrd;5#0Olj$`wig^8wo^TPR!NsE_J!lLQ2WkrXx9LgWj=n9rl7 zMtW}Q^LZ~Sj2O@l_0UE23!i9@a_>fHF`^4;ZcG#BWLi~O+dDBszAw|w11cZhlenmf z;-btwj)h-YWVh}2jU&V@hTbiq$9|WXSsY;{ByYs2^Mf}E4%WQzN&Yty)nEZ8>}%=t z0#7?0=_;f-JuyH#@gH<2^89jG^ZPo%<>qQr64UjX^ciqOFJQ=vH=#;*D7&d|VpaJ2 zj+i8vxDZLX7*$vbJx_{0C^Yp(0W>IB-LMpl=lh4`CsZL4^(=5ADPuDv@Q=ACoGvFE z&rg?TM*KS%nE{yWU{uBp=sctqbpPwgCV?St?a0Cx-EB^a@bry<=nV{1Aj$6yZtA(k zB%D`*Knl29RYyiP)aS89mtla5M4mk#;O$iUjsI?Z8w`ai7KDua5scRz%=cCi?&Cst z%ja`a3U+HG1W~{g5WJ1y^s|j?e#7nIvB-|_zz3D{nfdG%EgLqyWFDcY>%{5lCpS!`fDE6__b4L)d{wG$sZ_BH%6+(=?K0HZhXWP#=o?h|dYSrZbH zE(Flvg zbM24#@r+oe*6$?jpG2n$%`$agIfwjws8ciA z*e_wXmfUes#5O}N_1_{%J<6Jl<)Wki-+~qdMJHnX>OjMC{I3ITVrTV#JJ7(U9aN@6 z@|OraK}Hs)4du~p%mhf6cVE!LiOfHcC*X&}9&rtEaRwcMfM9G6hW*wKVSs?4&@_6r zD#Sz9n3jB~v?W;v6u*OSc`SUV=waY9^xo-RIL$F%LXkoku;4S4<(v2ImA>}o1wP(4 zu79J|fYHwLvSH~`K|mXgGM8M+)maNW^{V8`u(&SV=A2}Z7y{por`TnMr2EX^zF{Q#pwzRKGjecz^ES_XJ zUxqVsPSwwt2}46fy&^BxbAJ={_HCyfsK4@8-R-K?`juNvAjO6k?ufhk;x2q5S67T@^b>3?=BPb#_fY| z1q78ghmi+=jo@I|(pz4Zz@)P#To?CoMj#*gv&rfWiUs}3B=L(Ka+`UEY#jkJmjWclGlyY=AoqZ$8?8oC920%wmm*#mS4E;WGISB>84(WnJg%U}IkOV2I71+!2i z%-knJ#0fH@`u3&)7=IK)cVCBI(;g~>p%fq}n<7ir9)m$>4t zdFaon#3~CnsDr?NN_*DDuN}NfoJOkw)2e)Jgrigyz;nhOcT5H zdo5tJ`e#>JBwMmT0ZWHu0P@bjf|!flU>{3`@bZ|;`}ZcJDe2@E8#IDp3?Jou0NjDM zr_;B@)2l`>1(J4Xm_%1%)8{my!@oNO?|EZ(R#9tbSREaNNWDMl@j~e>+U4@>2@X3+ z`FYoQsp#i-+0lDO!Ie^rY&j%|3XwZ`4!;3uAwt@@8-E6wyFUq!&aj{XOQRd;$4#V6 zz@)Ns=wTCy_}3v%KZHvZgSV4cpJeV-$fRH1k!M zf$SP5*L`X81v3XU0gg~|`lg10S#-heZk$hXA+PhZbFdjB(($C2I{_}FlIP8UPYdjv z%(5Hh|2I%_guiD1{^i^0m)Z9TO_*7bi-wyi5@rvTiIew*^C{4`cSZvIHy1mClFapu zFql&{Wu4r>`x?@DQc++aqJj@ZSa@J}2RBJGC6{T;DcRMs<|v-GCw?(^JbC3_F?u-L z;;-YvsL*Wbud8*=_I!#1SIB|?a@egc*2oh)EXtH$1wJGLM);0jjRJSPx3#UKxBqQa zIfLK~=kw2oQ=(;mL70H_g5z*6J$Wlm`cwe{-~L&`&}G3=OFnN4G(HOt zF)Ez7O9Qp0dEX5MYWM}nkx|Sk3sX6H{4sFdsd+?4Hv3JL9D)W$X?8|(<%I6sDZH1i z+7*wH=`RzRuLo;wY}ZsLSnn?CxQ{QtK-Qz^)wuHZ-{X^&vw?@w63f&Ue{l?j%y_5R z!=mgY*8x`rdiC-r$+D+$nb}i0$A96rIlMMy3Dw@qZn*R()tuA`rwXbQW$(E)DGk|5 z8yY{nDC%?}7g!x9fId82`_oWO2JsK~55-|WKI<3S*Z5@Na$UXQEY7_hONXE6TFXSH zgVXCTq2A*|YycOliJsFu2g7l+;bNK8#U||r8$;CbR#$=YuoaZUaM=+~#z8JSiFk?o zaw(@Yep{UH)~d5bLOjr&)y`&72p zg%*4}TtS_$r6nb$YQ~ox7$j5ESsZMT+ZxvgNs`{q2X+#SkZ2Z8~dwAVgJ|-ggt( zVHcQ;C*=64tq^gvNA!#PE!!41$^|ba_L@p_t?fgZt-KT$!M+67_r+^^SZ+6t#yzW0 z&6XuEQs1vpQ2F+B6KR<<0(UCQB|)Y=m_E=Q%YZU!!u2KDZR>%c4FG-T6O9U{7J)He zX$2Dj8EqH=?IUbg?-SxQ(sGvLD8Zvq@5S|B8SwtMn{>}BG_4m~+C4TxmQgrP`Xv8v z>X`Ukxnw_p7XPnvM%7IAY^fsRENnTWBbPNQkYZETMI2@wmrE{@lY$D?JIa}O9b7tW zRIcAb^Z88B;!?q_T1p>n9s+#Z_o|lXOx%djX22B}R{_;SZ}_`v)vgLH^%V8%JGU;x zKOk!jN4z0$QC%ggZukMco)642oGf~GAju1?Tk>a4VFO4ftfIQ$5(EQk+4tGi5DfIR z_>%{;LsQUl%HN&@da#nX-_^w2x4tQXY0VU+thwXOkIsq|TOsiiB6#jXD9MeEkM@zN zgc{|-K?v%Z3U~3}^R+bP_egL3;9&fR#0j`t;lKzfsciF0&WJvt-1z}F-9!AJo8C}V z6c{j(f93)SM~h|j_c&~om}0k!P8k2YNTT<^(vd&SgMV`LalYT9i^6^?*4r^HbO`6P zBz>`P++%&icCSRlHqn3h3v@YLqx3C8!t9AVb1Ysqh)2{Ddotxz!VGdjf5yNADE*oI z=9KhwEo#S^+%80e-5y(}sw#*v-~Biw1c!GW@vOx-lrZ$l60b2l8T$Wm{Knk_fhUFI zaFgP2W0)#PPK=X^C8urh($p9#oUX(46w?1z9tVzU$gxa+R^dCSgb%T0UTR4|_lGLs z4Yg7hB8F9er4e0k`=|NGh?Vs?z<^@FO>A2A-kVPvn%-otkiYM$#~+qtVhR~uZiD^1 zw=QQW5xvr~D382+viqC#4RL{4QF4*I4#PWI1Ui{f(Ulo(rp-5-M#?iyg{JTx=6I8s z$b<^5BGY}@bepsjKFTxSS{X?L;!+iGbchugl_PD1<5*!L(A3nT5yU!a&^&0*G zj}(XN>PNUqRu(gQs4B!ZHH4sXIdL4elqtkCk9H0n19FzV5#UKf2=``R!;2sLd6@3pJQP~pK_9J!4}XpC1EVC+x#Kq z3cOG}PMc2hO{{eQ$1nF96T@QWcNi&b1zwoWziZ9PE}A%pCSxQzf9`on`+mKgL-zfN zHYPzMfG=M4g@Ng-46eh4b;)A7Y~okW;We{2FB31^UZCw#YP5SqLr{;O!h-{FSV+meO@~+y8P_kbmtkY z{NnWuNHTu`_;28mmWP}pGU`}FEjD0HdW9w!6mQA9*}jb=A%k(jgf`;nFdy(eG6m>t zFdxt&=vU%kTY0zdG9-Jr!od()KEudlAxn9;;xZ;R)^99mI@h?up%7et!%1Wzig~x@ zGA2#dZ#-x!f(O*!eivB3QJ}3};R;7Uc=-)0lZO}rdAIB`CT-Sl3}~wdxL;y27(Ex{ z?3-SZ1ttzsP!qX8T!}5Uke^O9CKY@-qDhq;+Vu*WdUQG!bTybXm1LUrN}B6*s|9qI zm%tyt=L2-GW z0T5=*e8}rQe^4t;du2wwzf@Lpe$1v=H6CAt)W z&`mb)eBUMMsoCR}9cY_uS~{~N&ljf{^a_aptGV@u{jXn;BFxeO`Ek!d*tg(J`_P7i z$Q{wdUZ}$RWI>CPZ&`8AuGqKeO#9S^gUTJz`Cm7_U<1pN0a!iVKemxWO%=jsjrxt} zCcgC+XOQ-UR>5u$M(Yi$IT@E_%ne+E+u=^M3sz<{q-=0kSki0?m1i_0ZbU7yak&7m zSS|5!?Si!#uCQ%Mm6i|guUswhjGIaomJSDxtS#|`o4>>v57?Y`N-|s_+c;a|tJ-Vw zqg)dO=`Yu`9s`~ljjA4(_`6ruzZeMhon@n4I>UC~{SX~#{|Zbp9-BG|BD>!RD3p9R z(mN?hH=^*fEzb1vJ1xjm@=HFor0oGb=H$719&(~y*e=|!s4BtuCO|atX(E);bneS$ z6VSTy#lR?+c4bB(V!k}gy{cP z5dOE~;(sf;{m` z4oG}f{=A1qJS$+`8Zqn*e}_g(XwLVALlU30Kktzd&l*^_8qGF(qC70Ad&&Erh z=SLIdzK->0k6>MW^*1VBz$mj_JlzA0XYQ`vdU??xvt9CziF!MN>KnR_@MSm5uCQfy z%&negH_WYpW_Qf4fa^QDZ(hQ&#xtnTNc|1zd#c$k{d=I0V z@rpV%;oag)-~!maSei(9X7`!;d_(jB)#ppzNg;Yx0qq`YU*HU;E&}sW>ao4$0qKUC z0rj{4mP4|%{__045~doA(I^NW1Y}t}CGIMRJq0-t0FhFe(@CBZLs*8;oa73a0|y?c zT|1)v`RTJ&aM>u6+ek#83#Llmnw;tT&LR)*C(M>OCy0SRyh@b*X3z8-mvfgvfdp2;QZK+0XN@x=7$A#a2G@@eNwsMGQ^lh=@1i`D zts$W5nnRbp30!Pty{5iZUr0sG*4B@2M>;f`u1qOVXTBcGR_;1(+xRj~UQ9f$MiaHn zR(@~Qyy;|9IOg9~FPy?bxZ)9}xsp2Ku5A5#0TRvlOA)6c)|t30>?J12(^lJT6x~=>Thx6blxQ#etZaX zXo5y&UwdHW!SvDhGgR33xiR*w)v3u11Dfe!EFvuX;m>wLyG@Yv;$bb?W{$gi{tCyzql-SJ=w3Y6$qsp+x4@Io|fM zR(^XfahuRy-F!;x=`8!R6ngYHgLZra*psXy`?K7Q?TCR{@8tNzB*%jUtgmycp!5NT z8a2A3YyH&{Fx!Lhp@%=63W&67_tA_s_uojbOApFqr~K|r!~7pz$+U+?fvoHT({oF z*l(eF3Oqe4NpjWaOl>qjbr*MuF>!lA&RP+P#-qx+cI{ejr3#?bpzC^dsO>Y-42NB<|=QbmRI(*h2C2>z9coB`YGdT31z+l zv2hgtCVlIHV#XYb4oyfL#k`3XV22_Io5EDIKL7a7B=Quo;lm38oM;n{C@2QhD+2u$ z1g}ZY@1hhz{SkN%iMV3M&h$#^`zstII+w7=;+{B!_`n{S9nk<*4RmGKL%SbdUzC`T zZ%$g#w1BI?9=}JTAiqTFvSj?SgjQTkS^)HvaEYkj5yb*6t6s0~6*~mFd%xrZ73%M; z{TsPx{_T1O=WU<9`4zZnmQhP^hXcwoaiSgR-7eRwh%T_(@FuP^Y_wEHTGrO^4&#n- zjXzKw3t=fa+M&Sn$D#P_&oOc5lFrrWw#Df5KQxM->ou)twYMbf*!`xKZE#_Lb#dd! zL#F&VapNKNuB_if>RaJ$8_{iZ6wD#So7rN?)7EjRh!W`BI`rM5drDrIy=r#N2m&z+ z<}mxIq56XOv1#Ycz`j-4o`Cha1;WBo738NH{m<=T65oCCeAvDK5Tx1yC_O(guV_YJ zAlU!1i$%aspUS@5Ggc{}DcJZaGX%K*)t!PoD^Uy)Acx<|5>5hp@HG`?qV^AuW-*Q8;1dOGX}%H5EE1 zV&JV4QvlJs7ow-tbB!va72d+KJb*^u%r|Ts?C)WmbIO=vOxU zk@RW(FRO3yjKXN5^boozc1hHML*bkMps#p+9NJ)zb`0Q}ns-DPKiAi<@p_B@Was8% zT{|elkV6fe&SagCda3a>?X06*FmCnc(O!VaWC8)Beyp2TB7J5#=LE zoOZC$OAF-4I}oWXVQBAU5d+{ZI%*VDSarm(4B%iCNd*P{2E0U$N+0kL zXjP!5oomeMZ=x3wWE#(`R@VO{3G#qT}C+h6$}oYq<-lE4`G$i?y% z#munF4xEJ`*kE(+dY&bDiPH3%(vnE?<%fcdu%Bk)P!Gd|nD64zN*#+Leg+W%+$5Uit4BOb^XOy{zuJD9dw$(II(corr_GoPGXK1DyFdl51M?7rC%;bxoyi zJZd6Qht!p)R#ud%UFi7lBA}!pqkblrYqC88gmWZtyaTi`45yg$8IL$0Om?lnXOb|j z^`5-@VlmQ0Nf>JTxzY38UEUbIcY(bg>SulQ0aXBQAw4_CPU;_}IMNzb7}U-6F2-`~Q{Y83c)gj<>mcV5uB-M8Ji#ufAqD|aL!Iqy$ z+UECCTYT6;d3}A;-i2hbE{vgMIpb(s->=B9($NQdI^}H|J{qBr+B|J7fsHZPqw?2I z9QwsX?<7w%I}IC_tk}r6LT_OI@?zJFM$uwm8?jQ}>W|4-^0T^0^5n-FU2T77XGPl5 z!4r1B93s3jW9egDDh{Vp0xdO;FVUK^A2f1Qt$)~pjJc*pLKYO3ZpCF#I?`h#e*1eE z(LlDz`%i#nHo+S^HK>LC5?*A-z>~F8F>ppO7^2~uRdSI&mPx(TwP^-&%*obyV8K~C z?W)H`@g#`pX`Bq$SzM@w4m-_@%Egn6@7u&3F03BjWalxXr&p7_Lxw5^{UE$FXBdOcsnQNLCTm6eldT$a z-8v6{xyAw@t8var0?>eE78}qBv4lzmnbcUm&i!X_-EA@cYeBf|B)Y9~_l~0ssf}wG ztjkz%)IJy8+s1FL=bq+F!)<%YT19I$xTYB5WzICELt|DXly8I&?VUzphj$)0Idpq| zyG|$Q8lEN_my1$jR*~!qG12U``;CqdzQ{P1Ju{ zAAz07UkusWwx3TO%9jn~8KeswaH9j_h6valKboKZLY$ok3ZGXC9g%{lhd}FJ%H8mR zJeS1#U-u({^jXh$)_gL9Y(#*3wjiK*foUN_tZWM&BpK|VZWFyic>!SCPW_fX;VT=v zf9zCB+Q55Z`F!_Neh47iBJC(WOFZ9!_`re?_Gjsbe)0L|^iD5d_cQJ=^Xhbe{eQ`+ zid*(bWk?VZyOi5fux|(|2MDCp%!5LGgU_Z7?zgj^X!36<1#2#gjbAS54Jx>+7Ijr` zgsrmFbK!xCO;%%f59UwiT(egbhNh}4-iwsfGhp7nU=pzRf05*KtCi7Nr5GgQ7UIi5 zMK(4ayZ*gp)z^Q0UJHCd_stWJM_8;Eml?PqXSRL6=_t8=xhi9UkcjLSOycM)(guu4nl( zD1XInKHEF8fZ_Ab9P&?_A>+3cId@6;Yn!W00D|IHljg|Ea9eF~&Q38rE&r16>!tlH z4m&pg{jWjm&U(34|$C1nqpygIJa8r|Snu!kQ#B(=hgeLRd9yFM ztJycbfeR0cPjNJY&A^q+j${8cY=K~elA=c4xE88JMdLh6@`HH0+N~m*bY3}~I#Xe+ z;`e?vaRPTx4UOw*;3nK%NNHum5HuoP-V6c{oWrp1$84k5Y*RB4^+N(B{DEc_nKu5dUwl?xM`4Cg2hIvyzcxZRdkYN zPEbr%3FG3?y;d;&TU@E=j)=!Iz?xgaXwGVjoM7_LQe8sWL486(8~W)=K{kw`;5Qbo zXscC(`Hdf*r(Snym?{s@BmFWNYdKt^*Vj#49<-zeHeJ+DK=cQ*y$a}<+2gtt9oYnX!AGi! zq8?gc{`&W;Ju@r;oZ+%njTP8|%0dwCNV32s7awU>FiEvi{`rCLdR7J4QxRu1{>$?D znO5|z3PWMlY~9+#Dz6WgLopG7xQveQui`)*SZJgqEn}{G%oWu!q7r}=;2htNlJu)8 zFl?lfI$qV4(wFUHp7QDx5veqLU6y=r#rI2ui@A{x2(+uNn-InnOs>BoX+J#=(qD35A9v(dRtyH^8agKFC* zP~lj3s2{E-zOD%mnqo!PK__#rNwZV!5)(N8u$@pPKyKukR0|LAoXY}7wSiB=@tL+O zxBdG*HDGrfZ|lhR?q}e+(p=v8Z4&6cyMN)u3ExP7%HIc86|iem^WaQpfZf9eV!KO# zX-C*&M5hnhbM_(E1={|FwD5_j51Io4REGq|{EW;2ZP5|mRq}#-)|2{l2hk4$1!_X| zgTLcV^b_o*tF?H30hpe?0A9t<|E8Lsx0;`KaNphZ%@;=*-XUBuKe>%BY%DGq2==h_ z^`A{FcGYxo^|3xa){%eE600K_))qel-XVKPY<8NTH?~{-=s~WZ@La$6he&zxbai{N zO7d$v?z;c46=n8^a|9F$1Oz?>_1ouu-zD1^bu`tB=2mBZ+2#o%_vY% z8gFH)bOfd8@3mYGKd7?eq8<0`Mkl=sr7lNk5sgl4-8~hhk#)tvY zc~w>MBK`xF{NGRs%MGCZFQ`0!`k8Dcm-5UGXDlFa zoYT$W9xW)@;Iu2Yk6%BvyWYMf61QcwXN_jdVGro_k%hfAYVx-)p$NScYYkH|mEey} z%$MFEFZ?Id5g!70Ccujuf)jRx9v01% zT)_J9#$$`RA0-kTl>8rD6BGByEEX$3dR7pIw{=w>Nf4%8qxPphOkH{ zqOdS*x@3N4c0S~kQ`$O)2OqL?h-pJP{06}Hxqs0Cs0&GnTUFXHEd}J@`MlEXzdew6 zv_+#?oi&Xh8{kHjP=Hqe`>}q*KzC;<4LON2SmW}M7Usq?jrd{Vbo~rU{w3`@w=%m_ zJEMVGBEDE#t_!>55n~z@1BJBZ#*Mj&B?N=EPm752RgmEDeD_Q4I$kUmMYBfeIFCO< zTAhER!vP%BN;?H1Dw^dBiWXxg_rHoWErXB-<6NXS^2m5>>w*7=didX{H|Te?8BRKKq0o-FFH^wYo34hR5G zXEE8Zqm@i0EPrxnNK|^1ILh3ecStA;jnCCeHQQsk3Zaon!b_~0PPAp$oi__x>uafR zTdl+_)}QoIDMNS%F;ElzaOm=P0LrAeJk^%HEc+*+Q}N}Uu&o>(gl%)+w!mUe5#j2Nb=E2gkDX^>ntJkkC zC_7T8ia$q5IOj;NG$e+!f4XWd&SlSNp4!M|eLp;6&suz=iU?D$YW(?Ka?|Q5VI$AG z$}X@_$5VRfipmIE)wQr4ifrR23xe0+%?BQ@=!U=-DzzWa_pm+Z1OMVmVCI?Dm#YIw9|k^k zyT=-&S(4hzR}b{lVz&AVr-uamvko#CsTTIgpc}$*ti|QYR$pNMD>!!?(frf#*HQOP zPkEs>Vd^fa*T%5rj{5I@>~kg?;LYu{+Z*o$hkEwcRKHi$pX=qGE{u1`9JdpUihVTO z4_KcFxwp?R#2iBuxR!ks4m+$KFq<7#uifsAo)nO+;g03N7(w4{Mx9~88@4W;w$J|$ zehp=Tr1Ov|a%D5=XFfW}DT%0!Wa9P%m~vT5WLifE>^Qx;%O*!p z2|{-Ximje@mMqCV>v^&RO$ekcR->3e)V=-i>2qqaNRydxEc(K?_%O3r^-4L_|4BU> zfW|4sP-HjS+YmB-N}`tumAFIMAFHvY=#f-EV}*dPP23>>$`E5UUd!h(%zsm9phS%i zJ6bWNV%RWELT)%%Ln}!(#dB`yVHk{(xq# zKR2C-+#TvA?OSUlmn^}XMz0?+zzf8Vy)Iq`^TqRJsUishfT+ff)7Th&!j;@2OdVSt zar=@$j{r76nE2BBWH!L+nrkZr;PfMX<@lkS?V%D4GIHbO_d%R|!>U`JQ_hPjy}&rS zT?2JK`x*8bEQ!z=>=@sU`3XR%a{ak+Gz$IQK@vi?=FK3HYUSxZ5dXK$-5j?9`TM)+ zjhG;`_upv~kd48}%D~aFAbwL;Nd`SQN99$Fx{z@D$xnc)gpE2?U5*pQUsX6jf}AX# zz>d8E9Dg&5nKfXD)wcIHwXuGp{p3Y{K&7sHW8_GQRUiZBepE}_RP)xa~ZVPR!d<6 zjW&6x8-&C9P5t?l;BuX|kw|^wK6w^=$hmSi>CgLTMBCSSG2gE1SOucODlJpqMxPJ>tm1D(ZpQ>%FZKGHqJmqu>&^cTb7rP9QcWm;GzfH!6 zj+nf`Yx2qFPl3*;NWs zC@1lM?<5-&*w8>_9b4Q#=zOmGjR}{p`8HJ4KhovFqv4!iU<(oRqHz<5C@l|ZkbE*$ z&^$*xhSspLf+&3;mBDU7gvFs1sA2q}d_V+X^U_+X^t8)v8eFHZ_>MPX(z?H1{xO26 zSWWl#OT&gC^T!7^Hl3xUT?|M%jlGKFZV`spUDYBoUef?c5r1c3=N<4-xHnKfW3iFT zRQwGc4pI@GyANd8Agf@Tl2fkDHWis5CYlg1RuFnxU^@E+RU5mBu*6R$Pb(Pe1e=De zaR5y#*N}?tJ*-{TCO(LehmgWs<+9RqlNzgyrkLv7Cv9(Hi|DQ`X}~`K*CO5G?Xw+7 z`%z?ITEYQTw*u#XvG$e})9&Ms7@s8NL!ZB+#j5e8rS3rAGoh2sn*SGvVj9#{-i2Ow z?lDux=f*amLWeT<@#b;2tTml}@R4Uu$ll5<>_S=B^cGNpN))p!to_X$5MB;Za8g!M z7=TQ71?!0BP;_JcjY1o^_|F2F;qqTqY!0(~OMU^6iN=MEJe;0K9cfvl!=#z&WI5I9 zA64C$`v$Z^lN8#?t)#|t7V@LYYm`k9?@6EWE~{^OJT zyYHn~W~^-qd&HwU-NhTU^a|@QZ@p}>rW#G+1DBT5(kVX7dVUVxrNGSiMatoP3w0}K zwTLL-DP^(Y=5&;O-(I~BML|YzBa-WizVg^0OlLhPG7DNNz-~slzh&~g&lLSLzYaI2 zJ|r@BGx1W~g1Fu6Pw>j`tXTdUBhTEXmXk+#gC=#`#d90T`gZLM`a%TajpX>@#!!n% zw&We+A57rWSFo|;s~N+5-ejO;AjY=@yd6luTvJBrh{UQKU&#nc@g$$&pkWYRFAyRa zu=na(*c}$$ly_nqP=>qBrx=h4_Z~H_Vv&|8*pXYp9!H7sLZcaGhEG2%m>4GD<7>Eg zrr`^E(C}1)%7nVeXYx1W z7C>8DB^A730kd$?hV#$ z$SzRA1i>i&8;IwT-$n~113&eG!kCLIjZwu6X@6VQg=!E`k-i8ZdXqyjNQbUQn`A|jt@;r4`C zsJY!BepbXktnUc!aQ=RVRs!lC1)7Cpv1}}8Ow|#tFr)3_$0phk4hQwgL^Oscw!VBk z%t~ME&cRU}gqCGJyZu;OeNF|H7IPB~@-lCqBj_|M$w}D@Uhi(PX{ua(l6CwgD3GyE z#O}lb4m!Ae&E0}}$s;fE#BEXFKKnv_cbmIhbbIQ9gDl4si&4S_>cXH}|JW!Wg2zxN zLiNF)4@;CB19L%B*%cyz)4KER_v5WyJ}%{vRz42G%CJxG)|y9rME0YK5$!DLKhA#w zIxb_23Gv~Mauspcq~oc^ygMM(us~S>fKYF8nG5~-A(cbrsMWSPY^3E&&H6hKgEW{v|VGPzPxDupKFE2d|CT3>jzTKN?na5S*%TM41lI4RNxWcm2nUC zG>uVwn#a#788L$rRa6}b)TpP z?H+ei2%T|*b>?}84mA0j=-uDVF&b*7hANMaNfU63)_UpEt%wrzle|_~!{Ls{#!a28YhAjmEkaArhv2xjpC@Mzcsm(Ys)N(_kS}X z^Ytmrbe|}{EM;n17!_mXduT7Q4$(55NH~%FTx~hLC<-9>;TS4C1T6AJ%#DHIZh@Abn*}x$3?prbMFRag z)+1YgIFSnajGO2eU<{H-%_O#^f6@x3_{yq4# z$DM%}J%@D1Gk53NG^S0sLIE_+c@G1>Gm{olt@0|y-3Dy1LTvE zR+7Yc5j2i3%q7TWs7h|-l4N^cZQeX@KZT{p`oA`eT0yft17S_vz_XV#s@XVsP1Yr{ zbK$Nh}CjMvnuKS{c@+Lobz&wqhYPvD+S|=UZAB@wJY&l z-qbR|_D$tZpbIP0qkjLZa9-mw0qj?k&0Kz>{7Fa`rYYpm+2#IiSF}y}halX85T|0V z{2z)B0VK@1Rp@gLAZKH19nFHx=>gNdt8&2*_pAclM6iqDTg7CbA>ih;)#R=`p{3@g z)!5*53{(RtYx9N^=Ts(v8{i}KsOP%qO+I0@qJTU!M3BjKb5gK89!6P@MzhW>`}zHn zZkj3<6$Iq%D~ysy6hIvg=HMV2HD3*Vd3Wycxw@d1>f!Bx+~dXK$JB?z8jE1^!ad%- zNImZwm;!ast7WN|jG%w~#MlCJp0Qt`wa(CG)7pM>TP%1>%z8URXr=2*y$hoWJv;ZU zahb7kQ;L5kuHLV68JxlVOF1}QNPPQ+t^+XD-Wlrd)$4&ECQc%<-x=}yPQ7%hNzlTG$eYtv zpFTRSGoDPpUf-Ssd_%l=Wr8fT(uaQ}_)jvOL$O3j7v=Z(m}Q+IIqQ3}DE9gs-7f>V z6J^a#{iIdq7SA%W=$t8}P)*jJAQGyIt>2pT9k1VWqac-}mo40W-TtV=x+{c7O&jXP z3Sm?}`H_&py=WsPucLF$ev?)?f0t^cdvp523U_39NZ`#AYf zE&0dzhYmUE+v3iyer`dWMadA#`j-N*Ey2bdsSpOTlTM`RfEl__j2RhD=&*;LE9aWN!}rpzl_&3$nnXBmR^!^|b~W>f>;n|)zdL5!<--c9MP}Gi1)rJu+#>zZVlBadYk#rwCVNg^<>sY5Zi**MWL~`w_ z+sVzeDusU-Er=fEWYssTg@T1<7Tjj0)Gmk}YY)|(1sZO3k$HJ+L5ee{ui(;ii z1bF)l&V5jB)y2dYCw&{EHiAeoI+X2`i@BZa7S*r#$BIwcpI_`Ck7MOjmj|t=$~quzCO$WgB19ckr|_3}|Z`t}Z|9qw>nJ1b(faM(6EZl(DE|^R z-MQ!T+g`6n0Q7%DJSKQ7ayZ347lk+_cHA82Kb%qWl!=C3+!TQ(z%L*~7#uQI4+Iez z6*LTiZ-}rtN0p?4dHK;8Yku1H%hc`c=fl%A5Dd#5kd1msIGoOYKod6_je*ts zS#Zswx6`v}7S2DFGX!AtJaRh6q8W{B68_-wE5`#7bP~OhjGG!&^Rml1U5$F->JD>q zVC5UtTkV(=Dv}agxaZ5L*bv3ll1cH$;Dn4d$pr3~pUQ_aCB(-*H+^z>ruofp{)zRN zD=GEND{`8X^R;#h_HSu&34`8MTqC~OtlB!#tOJi?9NtM*VS3=~$7#vAsBrscC$0#i z@lZ6o!09JP+9Yoj<}{ldKcNfpyxIkmiqLVwGfr`k(o|P#;kYj2Eu(NYBpwJSq@D)vd zk3833@E*cCH?F$0eu&!+lape`ilk$LRvh%47{Y3o&?UPZ{t2(A>kW98ZRlTH zi$B{R<2?d*(qfz+0y9`wNFUi$uYRic`@}OW)tJqC`wx4~gYNpJ;w^&^$?CfZ49Z7e zF#j9WcXJL$yWd?D;uK~QMEsN;HP`_E}(r@s92UxH>{j28*KXWdsOwzfr>j)qdN zOW@@I#WPC@E!x1WHO6TT=1IT{%dP*nb#M6Q|n%lqp5{zL;9dZN> zDhK5s@=t1xl>F+an$Pk5Ji^PAmN54RFn}EceI6Hp-3?Xb(=1tl z9;N3Jm4Ov)Re4QOd=LMVF6PB3>SK=3!+ld73fhLXb$TsOi@dBbN>_ipDRg8yWPf?(7;@**pyT@YR5`6PIgHosfZiHbjrA#$-U2ywvIwM zXP_*BQmw_ql8r9j2-*PBUgvEY1bu|L4{(qQkvtLyF8L2GChkR#`V;H`m2(N|+CF<%+&>&2{|QQ}AY#GqzAWhHiU@*|)x$ z!V*^VyO2`N%ojA*>SdWmO^pIBMEk=QN?^A|!0e*X=I+~BhlkFLA;~@EP`Y)(Q#xV# z?~_K6U^XtcebC~CYa)_w#6kTtg^@J#7`?;94KX1C;urq^uC?w}Xt&?r4Xc9$g&O=6 zWJQMm;^pF|$aezhfsSa4Si=I82%GGi^cFxtY60|tGHcQwv0(AAiGq1^!E;NIzWI(B zon-42?aoiZeS~}9UFFjgf?2n{vshWTwuX4eHZ#=D;VaQ{o=*o?Po7=do>Q$amrsN~ zKZ?{Z$VE~_mQ0W~`xNOdF;q^56?U)^#KLAPUF4;4#+C;qfyVxCLNaMYu*WJT8H<9| zDfu%43iYM?agy=BY)^8xm=1$s&)0GgQ1eCb;Wmp<$Ve%JMpv`Y5*_Ym&SM=<`!Vil z&-`fERn!@`G<9d$NS)*$4fGjcb@GiCbzfJ{V_m-s>XsTu(_X-)EPHnjFe!TdGPkL% zBnqbQwW!(@s0o-klO|Oo`Bn#p_x??Bp zGY8a5M2Ie`VgcCmH6ExeGbWEV)`#%&rFk?|?U^@#fyVufi+ce76o-y+PsDr%qewW{ zPgV*8J)MkGB3bEHlwTi`##Lf@m{pO{AGF@~4Z0VZiJCT+TI%E>PeEx}0anR1$d$)b zc725-5(Yq>jFfV&rN@n9m!t>GKE-Gs*>*4e^&9buZmaVFC#!{9#Rm3jF9GQDEa5s& zO6@6Nk>|R_$#mbPbVQ-KEZ+qk{uJC|*0IGVek+CzYY;=!mFa7wN{|)TU1NeBfVtj1Qd=bjaKN?kfYo|Cz0t;($+>Vr?!Uj9Q&+Uu~$|(BZ=Y5kp@-~%Py;52}vXzBq z2RF5L_Q%hQ3+R-vSWbVV5Qsn*}3+ zpOW#PG8w*mPnTe=NR3k>m>|$moZt2f2SmsCWM70u8)Pb$82n%eZaVh%+CCcuTT&3n z0k%bw;0stjcn*!|A=i%)qj)>GF$(66+wH3E zDw?jUpLWYf^8^IA(hLKOZc;aHbEv$;R2hsz>bvbqm@+>gZ8_U}Z+9=64=$i^GtYRZ zcqJfKjpg?JpQypN@F6=r@&54}ZM*?9mA0^?-NvOo*oydaJh!})J0bnB3i_s;SbT^l zs;cB=2dnIo@{LpV{Q-%mhUq9pt+L6uJw9zvA=!>I21j)wyIfFsuuJtB6E5%uBoC;@ z<)xE}Z-U3e-7SX@u2_zzpRmnyW&;0u^gWb6HcVq3Cu(Lk-^Bj6i3SV32--sW{JlGX zrWjOubENe20=$4KjIUynuD$q=Cj`DeA2?#o zN<)6${srv2Z;^*-}|A^e@-jxyJ<*O}Ic$J>ghY{s#KH<(I&6sKqX-w%%r)k5@)+g5S2%~c4 zB-87#a2*(xsd$Y2E70pZN_70gaX5%GQ>UxU8WsKs&NW=>uu;;$q*PfmLr=3cMK29) zf>6tl@?9Gk52r27WPFF&?_av_59?uE`6zA0{P9(?#`@1X!L=b_$pG$(fl`9m@{YmC zU&$E*6ELf%cd^TIP2OS{Zz|06anwlFvQQStVg*${*In6kZhg9ZANS{UtZj=CPvLa7 z(D`&d17TX_v0Tt$(->mDI*z5O^c`W^*7=5dRHX_?UL#ZFrWY$vOCm&L?xr=~H6Q=^ zSh4I<&h5tF-F@HaMRZx@bnZfakKdfVe%^p2ZF7^Se`22GFI|jD`#p5tlWpDJSTrWH zfwdu-V;n490UPPBrsU5`KCE)+0?>JJJ@8P1Q6#UX$ta(5y?^qVnW>lhwm7b+PL1O7 zYb*iw1*>T#cUhInzxef-y9rU9Tmxs5%b{9MtaFz+YS7>123IG8$cV1QZ}^; zk=Qq&;PG-!IY-LBZww^14tl^1e&F$5B7|3u`PuksJmG;OF?u0HC_YLcJ{oVvUPmY8 z$F=7L`f~vCHI$W*{DmBD_Sz&IMU7Vz_$S=PraqKl4U5Y0_W%EZ)>YZC+^xZ4-*y)gsb6P{c8agKU}#(lBE!Ft>A!m0*6uuanuSl8Q8 z=locP#qB675fpu_t5#Jd&GV|e^}USCl^eG8B4u@;MO4xmgJ~9C+z*o<0?`83zIp!G zQ#?XnFa~ahZ;B2UZ71yF8Tb0IX*`w+CbVPpX4R8hvxV{}crMzMcqotX@UpH(wcA8S z4!*j(8;|60X=ka`V=9-ye=Zq;+~o9`=5i)gJ`5vOZE+Fz?m45xuYsM5;{J9H79e-TB1!}QG?IMocw z4i@}<^N`>a0q`(pO;DtGH0L$Qzs%WY34eHb#p&g$`M&HyljS7B5R-HrH;Z}RW#lnfQLs-;n0d%Gi)Od zPwmYJLj|)fYbUMj~6rW$6U+1YYvWmB1FE#%0@I}H(lC4Hxj9_%VCa-z_brIs{SL9>Zr z1K*(55?4T9b58UqP;#;3RB)9#YElKQV}d{QR$D$a-!UQuiADiT(8hpmx1sI5+erR2 zg7btLGK-hB+brlo*tKK3ZgrGxJsLi#9KznD6UFQZSJE7-0!M}#O&lFg!+a$`pI5#e zk~J)#H?0bhvm4i^fQ?)4d%>?oMr>S)E~r0(ES~R}D2C^^zDp~4(cQMjto>JX%Qw-UB30#C%1dD!|Ve{U!|}2>qSx7y7ISEzM*K? zW0Lu~%fV%Jx);5}L%0v^5XW>*@vP;`eGz~C!z|E#?6 ztm3iwuPpVwtQ)yXnrauC_c9jGUyfEgPbftW_ow5)i2}r9zPGkJ6_t=Rq(J`ZDEWA; zwd^|^?y5`RCfe&-mq0Ou20CKXD%vB4h)NqzDdt%wBIOE}vp?UF=OUy>+sWd4Jb~k1 z$BztT9s-Dz8D|wJ`xfY|0$XtVU1a!ZSQo*Am8NR z5pCf+BRa;rj5%8-NIMCokK`Es?V3byy+ciR4b~c88jZ%bPn(Coc62%BNC^+K?2kS* z8dCwcj!pNC?bGBaSd-vi`DKmfwJ6*ui|}T#Nf4Im@oHu73Y^1>E9W!or{rs<47K`O zmfUq4Mcp=WqNtz9wa*gsSD&8w`;bWPMu5~r?{-1&>&|zq8L?j%mP>l(CF=!GheL`9 z3+2@5*<7gZb7PJJZ6jz)~m@(R`I-OTqar5eV(OAj7tqryCQ_V-J&tN^SagF`i49|V0^UvPR5bL*BAr6RL$$YKoS~Z!ea{GqD z{d)tB64inMN6cfqp`Tc$?a)aO&kE|7!R+s3i+R!K*=v%{bm%s3c{x*X;H>qN#Jc)@ zdma4+yVUrMK*gV-JO*)a9p=oJc5zaDg=nnk!Khg-gF%gHL;H?&UjnOZR(gCbJs2S@ zj4=6OvI5(8%4JC8-52Dm%0gm<^WNxdDQz{Z^PHEf&(LtqY-=H0EV19A8gSFHZAvf$hb*mhM&GGokS9t#*LoDLu3eIp;QP_i`Fl z>#Q?Qlnts1S2Kgn4O@d(iG(!g3H};5B{^73(U==X<8eVw&w-|&9>Vr~X9M(|2N~Zq zvXZM{E(-%=W-ADVy^yD;@H#g!b-v3Yu7wu*NE@g39>D)&>KvmpiK46>+qP}nHaoU$ z^NnrWwvCRHj_r4lBQS93;|%; zm=_6`L_Bh$o33LW=sKG|we`hyK-_K?lwnNz#2w5nHur&9ld~OWrS8s1mE55RwK@fa z2X>wB>}k7D9CkrKz$a|;Z!T`o;z70XzjXj7{JpS3!VrfoxrbB5ihG)*Gyecnu#rCq z_n@<|;Vj|@jewCh056FeUjhxwm<`n61^>UAJl}qkO+e1?mr>vy%)_RN%0CDrG4)MD z4ZdSby`SlmF9_%|W!2C5YtIHLm;IS7-`quPZUtv+=;y zKo85elg*3alRr%8NR*XbpozRJQL{%v4F^Ns6cd+@wUxtRFsIAi_^}9wrNJ^Fp}{f@W4Klf&ZBJ;Il zpdMNqlwE_p(Y&9GeFayl<^lInjqYx=`X0r`NY*#(^~ctXa8u4#_D<^`1}k;yrN3=D zcw%f-O6W)N=$@fvgPA$EyJ-Gi4(T|99@TqWUua{UQa$>iAEn1G8=tPWH%`WuF~*$9 zGtT5AGiV6#z3PU+9bm)_sa|3>d2IRE&wB*N?$cg){E~+?N$>r=r~wF>AAGb9qeI1j z{FxX?ytfb@Pq)^%@UREUxQ4V4y4hZ?Vb>(b!#9mgyv_7H*vW6fnQjziK__s2OE(K` z@eD)6g)5_>hSye<6%}d{diIAyh#sy5#+6ycsnLSP!X?E7W0to^NS}*`$#g%d-Ul8X zs?+T#T*ro8ux4A&rVH@Yg=t$evJu-tbOcAqWu@$xVJ_kM3|b5u&Y6g7m%cW`j(&zgwn0aml2%2UI!4GrJOut_e#v9h z5K8_{N&`TZ3KQT>#QR07FUlXpEa#0eDdJXtV%DyeDwtjP2XiVy3!MPt*|*38mPunB zTW47vspFy#$KTFFYYMn?oIYHmbK5E>3eyHXgIXP*?5oYf|J`WQzk()%_}whLJ|o$s zz=cL;bI#mhde6q35w$Y6Im>LjFm3AAwDTrKhidN;G6L`=pd4DQs8ZT_rbg^WUqibm zGy=Oct!|fs>1ZS=%WD_ zu0Yi?F=~omi<`}HEJ^+>&^Ap=hIN`}#ZTQS)zfEr9qh}dSy>&@gjL{%`sF(9alqC2 z3-UR6IR){T#3Dlb45GVz&`qrMkvxYee+W=<-h=VCI&ZQ*E8odN+ z_ya2(TWf>)SL(c^Bh>T@>#frF8J8i|u>5+s&_7)Cd56omf70c7XJYevHwf^l$gpukX3OYm{Jb{v-02d=cl&ZSyq5)?!-MKXuM`G;@o!@+fh`y7?oH|*pW=lj*St%3eG`i~9DDt&HohfP#bLzL{`u6YyJc3C0Q)8pa=4fUdAG zw4@e3R_XS@^d$jrEob^NuXXzLG{yjvN54w-8MWUtdgMPiPh*-jC>_hju_R-|#QmJdy@Z5*cD!5PjhaybP*4Z%uH5F2n z>}bC4;ECs3NAN#en%axO!YzveZNIL`c9|r8^YLV#SZ+AI+TTi|+%$Skqj0VfF#UmQ zr=GGsw~_OEdoaLNH0`EB24v|+O&G}x^5u!WpwOiLQPG)T2fA4>EDpoId{D6b(|x6> zPOdF%(7#KCKkZn*dO!Wj@`QN&*GP1A_vAYsn(1gc_FhrfKo> zIgaEhCuoGt{lsuA{a@rr!LzC_xRR;vB7?<<+dmIj^zaMhrQtWMh6f|vz?Z<4S)(wY zax?#!p&6jgRsJ&JD7gw6^lFFT&TN-{>Y_g8LC!quyLtbc6tC48uAI5z4(J#oc;r;YHZmWU@V{8M&=~cq1V5fUKx5xmI8 zmWf78c0r9YqL}}I44*Ae2uT$BGYljr;vHq4-yh=taK&ne@0X;9*X1xm) zN0GpBCx}O?%gx2Q=PLS+eC=&nPX{ugcMTab(1fv&Gze&f>6>j^?)HWG9y0`?l*<{W z9=x+yLMobSgAUHTx2OGg=>xMH6G`04d;JjBK9O3CjB3FwgJmBg12auwA>d-uqjMWe zAS_FvGl26@YrgH$xeQ5KzoyT0_w%WSZG3g&+n*xDINC6>v{!H4_tM*3e^R*EwH@Eu zmykQio&cVcBGZ|LBf$4T>jcfE=`G|BnWQ7?Tq;#)&GKjH17Sl7$BcIDI@zbSAGZpY zcfWvUhFF}C>yh?r)DPs>4`6?xdZschm)qsd--Os?o}As;rXtaLb5P>Z!=`I!$Fg77 zSCl}F{n3x*Ry&4$!eba+vPD+U3vONAJ%&C5X8>H}^^W_l?5e!HW1DaCmjyDVQNKVN zY|8TFo+tK=grF+o{IwTg>792lsTVyay5h>F#F{kTHfuU^5h1_T zss#|-HOw@rS#igKOrk>Q$Y)P%7oyPkn71M((y*a`(I7))iHNJ#z>ZPi>8I7WI|Q;1 znG@{Tm9g3>cF55C(D#oz!1P+gC+4Z>$w;Yt5}oir>6oPHroW4ag99T%QTj~rjUox7 zgvb`SYJXA!AxVOPcEmuH0sF-QNgYuT1_7J}iSIxIp!640!LT+x@dGNa69;iUQGcTY zg+ob|3y+&nfa$;wAe;~c5bWL_BE;3x^i+(>R;G`JGsVWU9Y?x5MO0qb8DoUl;0v@m z2U zfemhEAhsGT%nCKt`dz;3Wdi0?y;#I(LLGMITicZo8vVt|jnLCbs&PMkZa^kmEA${*Bh-Rc^k+T)YOnqVt9r3E88W~J|qbW{=>9Gzi8Fgp@yV(%p0?NzDJh_x*o1``@Zwob;ldAFo|`#GOuuSQ-}F zCa<(nlJ$HlIr&!hgAR>Ka3&C(Zp~?}VJ}DGL$kqfpa{3;Fn$l{WO}?(yE`;Q)$VUD z?~ccbPyfx|_s5m~uMbSay!=>ZF$&2Q;|ye@UV^qLgZr-W z=eC}%;$9|AH;|)MJ~x01F`O&fTVIrUHH4azeK>yaoNG{6m1m=RU{nb5_T&CK>tN@f zPe4J6MM@){S2U^S;A>m+1)3kFC7K3DyP6&>=}FJ;#aYiAG$8QNK{ zF&8;azTYKGE>!8_tyf^YxEl{9d!{wHQj9dU=Nqs%C!Y;{2jGBM=WYU6)zCkiXjMG- zK@wJVX%<tAm$D|nX*nML;(@YBwfvYl> zBjyhW7=%YAHyZ$5Re#NwM?2v(xd86yMLuFUhs<`7wgxs0)^0(gJ2LUYIh?8Xs@yk) zR(qDK)hVIBt2@O%Om*J7GF0^7K&er^9qO<60a-7B303aAHqS6cXbr)JAKwVRwBEDM zo&vnnbojMpq}f*j%RaLiBd_ZujOvKmiDAq_9%L5Q;u^p%BvNJ@cj3Du` zKhvPx2DTOMFzrC#p2>Z;X``+6TcSIbk3=x|V*f)RZ-uNaRjszJxx8n^8CYFCf|yGz z#ZgP=Dm{Qh?g-C;>T_m>&7oe?cc5k9(5Ti1XqB!GS7pT?BCeWbXb(M_F$;` zOhY{Jr0U60c|@NL>nJSL_(iN{=($joU6Ks#8P<4Jl{31`)Z&G5xtlQ!6Xs=05VY8^j=~gEL<4$^ zM!z79w^km#w!DOr#%TM_M&U5?q>t5xfu-;n;QQ2jGm*sPFMVcyTE~;PsG=?2Xc&Go zt_R>!tH495_;vj)C(}gB=LjV+{$?!;tAfG8V+%W!NKIvA%DTj33*9;AK?`k3_PFg9 zj1BMSK_40$+UL_3-y*Wp>w^p}nJn!&VMQr(^cv{+0R&EL0MDzeNAD#uz5Y$IoLrU> zGH-@{5p7fhUX2GvqkWsprQYbc@Au^*M+neo%`u8l4$(-wb9$(U#4?T`9fm6mv`DfT z&-dR)aDGEP^v^fs`3(i~EPDx();Qsktn=H>P}9&CZ*S5UoO$4o(3A`0QXcP=pU{d-ZCk>bav-GA z6p1CHXlt}^o7I}nW)xTK3hQbF?WYA8vDf4 z_lDm%wht3tUJ>-1BcJrTVklN@T(O77j(l7v9{dc`Y|kX(&H&j5)66LcZfD<9LoFYu z2IIFwC3OD7xD!0n@qv*go@M`_QG5Pee7Krk{$IW|To^GV=0{5c+o#`6`~Ft~fg(No z$Oa$aW2>Wq{q6VM>TtPrKw*_rCcP+`mdd7g0i?s4RcDtqQ>9aGcg)d{!ffxWc(u6| z?s4N5JefV$s@uZpmnKQSsbsdC~5o!rIA1t0dSA}XfVuQ zhL|5yX|x_(E}8bu>H)i7L$f92CDf!;PaoKDQSOQMSF#)4L=9H2^E{8G2%bX9oQWyI-J_0xw(L@Hbj|6Cm2`3Z(E`V)eR5d!W4qzbz<< zNp)qLbS0v8Wbb$C9yQego6*CxFtRsX_fNAk%K)@apcL0TbZ$wIn>%yDHZ$Q4LF9t( z&?Zs#K^#^SuPy5JuyZH7{&Ttb4EObWs1ywEe3e_P!c}X4xm$GgOi@_F5i1M< z`YV4aj;tg+uOPp%)zdEzGv72O_ieP47-!-3Ei>HqRW^OM&y_sf`(ow%R#V5U5@e&7dgJXkhYp!jacaA`H`MBs>rXn1f7A($;Y^%kTm9Nbi1pH^9qWWjsp~w zYZNn)t*2jO)%?}~*Mzx}iG2sT?$+KlBRkU6}|L1Q(Wz< zakWLaqbeQn!Sm!eJN@A4k4;-S`eozRjkf1a3(w!lUH)vj7)}~+`O*)3(N(R&d=}}s ze2Nz!MfJjT?a?zCbFLZPe}OljpkzjyI#{hM>S(PC4&DX;X?I{ovoM`lo;^@e!cq~z zw^$XW;vZu`M8sfWv&12@pdF~hAwa{BZTiBVyOI(7z(gU8KoLPe&t&GnRK_t}GY8Q? zePBc)Lb9+>wH=^`!B@g-kjao;LuxhJVo}j%?%>MmPxCw=tvFd&e%QT4A;Sh?Ky;5F zMV1hj=DXB@ko>{(^2W3V-VEC{VmDb#Vp*4jL0%H$#&;Nw9~ID5?U{?zPF|`toTOqZ z%!*@an=P)x!ULTyUC2Oh+mKe`>F^~fN1Lku?o+l)M@WQ#D} zNZg5kR;WqDHAn0*Ts6)Ru)`TH=|{@}Ro!K+t%e6clyIoruXXXHqRy3!S2~4DTc&xX z%UaFN=hRpDbCL)XQl8YesHS<5q~d{&xGa=vYKr0PiIAi#E-tr1QK~(~u=MZ!8l3bm zWlGivo9@UEEDRyW1nm2S4_G$Pvntawt80VB+@yaT@H5@DalcU7Cko}7%kHJd?V7_a z(>pz2rg3M_>Dfou81UQdS@I);Ki*U_$_5DlN=&w8+G!;fK&1{wl8yu=2Hg$>qwlze&q3PV zyqOCfvEkpQZDS{RWwD&)8Ms1ITWY;rvs+|>GhQC|z{q`>*kfpgfR16bko-}8c0!ex!YV5W9YV!g>&%Jol zilS!p2z&Og?U?-R3>U5Zm`rVRtsOn~*rb^XHLV6Pz8P_fO9&DL-M`lyirNX+5#IEl zdzc+T9qE@}De$B@E;Pl@Hd6;d(TMKii6W6>on+`tkEWcF;cD3Oj79l`+$Y75BU^X_wvX4%YPci$kHn?NUu*{u+!H?s7uwV@YSZFY{! zyr+h45mt%W$BJbRiE<4`^VFh{uHfB@gfW$-T}2yJ4pE-esI!SQ%i$Pnc6OqzCe!L! zcJ6^P#v&X9i;K(<<9ahNk&P&0nRt#_%A5_G(`>J4u&=hWv!Tnh)m{OVHzP1w@J^Ib zUmQ-v9dkjrg%F>q+2@Z!HzRm-sr_uDvf)QwZOL?6%V{%ZStJ#bqEM>bWkx(k$73d< zNYIr}E<-(4^5X*PkYui78F|0+114guwr-}yqv2XzNelDrE3%;sMXn<#Vsu(=!+ea| z;hZ&!5jyj3W)0?)ul1=$Bzmw7nTk5z6ju6U%Mp|_Ir>c34Oak4byp2TG}Dz73=O$M zQ~^9?xFgIMOJ#Z(z=Yl?!olC8(ZpUx3z~Y#ISyS@x7SxtQjY>OB{$yA!Yd<-LzE#qkBH__qk5kG=XZN9)N)%l-2s`#G2N=2i~2E(^grqI z!(VZW4S7nb`qqFRp25UOX?&WT27ClR)7doOO@YmB6`C4Y-&(m`g`*h)DTE8dAw|0Q`N&5(#2D_mBs z$w;Ee86?{{mxfTK@A_tvlo3`vm1pE&F}2MUH=`2hA_qWqtk&cPio|hp$m;-2YSlkB zNd$&MK6=yxD=_QSAw4{u_psH;M}LMf_Z&&A19$T-l}LZ99!pFSFFhNZYL$0zy!-(R zXwn7RZk47{bNR7WRt02AJmye@t~%-<*wSFX>+yA$xhErCG0m^WCoU>QE%UzLPLXi- zL+(1=DwTjM`pjQ{rn;ISmJd|o7$+<%=$!VM`sA?EoYbGr7>|#-=q4@&xf#aLLmUS; zmQsJsnIIW(`>hN8S|aN`>4%CIcm|doPE`NE8B>FyY~`-A;K>6#hg^{zU9#gDq&Jhk zA8C0g&&Z{j9@xhbNTbWsQki#urPMI5x@-mDLXQDTSSF6J>uXEe-djL9QwiFPh9K0u z-JN|!@6^hz{-#WLCEdusszY(QYz66sY>1XZ21#k_yXYdcWM5;@?j6K(OuX^pweNS| z8{+rz(zCe;*iy;2KE(aZ&fVN*cvrf}rn%$a!Wg{5^N?azd?TBJ+ABHw7i_d8t$A5o zs)7r65mi{2Q5elk8@F{aE~^iyY-~})-!$)HZY~(dx;{P?&tobRyuDck z?pGq^9eYZQ-a-fC{9$h2kluMOZA?nLa66j%b)Y?~u%1URyh*kB6rahCYQy7_wrtJ& zQ;-^`XS7wY`*&Z-^T;C}RVEeOy{F@HIeO*dnEEQT7YUP7opUqKn_$S~oj+ahW+wrL zScyiF>Tu+y(;$Ad7^_cn1mQYfVOaJ&=faZ|U>_vCRqe{vj3Hti%wvQfkozVZ$b zUr7VYc|SngOIYscL18VGG4=9ttsgI2mNiATe?_L>ogjS;-f4W;2@UXlsDRx3`7_|o zo7$wNvCHXH@7zQ2-V^0o*qi+P;SdK{E#;@RZ6{B4@?(>Ir5wX;O2i}J%g8`;LuIg?!acI|%`oPp@+P&* zAYA5`Z_>{eFV)W7W|2*8R`le24H}0CnaN8pM@KLtc0mwsI#ogE){4Oel@sveQ4AlBYcXptzZODt0sShd)*n8SrK*wa<+$wR7iX zT8@8(B|}#4{gNex9#YLb6pjHvvj;D&!PojX70u_2N<~VPMyK{_g+(A%M;VDpI^j@G zR4vNNYYe#1&KvRG?az<8WD!w^m9LtkmRYox`Hm^IBpITVPb3+(sHi-YO{rHe%SlTn zMh;y~mH2k!4OJ>|w56Jp%;&9Jmwx($W>@5?2G>x{8@oNYm}itBpF;w~=Ut4oQn^jY z(TT-kL#!mLWIoRWQogtpSWi7OC0Dd6<+h&N-tFm<-;_UXh6DbULFEduin@}NYq2Pe z;l*hhpQe}{ldy$niMXPace2GJU9lQ;pShv1xg^uN0IH`x#bCME7e&mAh{dd^y%P{ z7C8c{GDaHC+TzuvpzP%z62r|w7a%*&=39)k<#2gD!QBC)Via~8an@!Z=&|AED`ot)W3AcT1+KioG81ZC*KPUh|?=XTE%f zPsAroJGZ?M-X!1MA5Vd*r$LaqzRH z)wfVrhVrZX(^PlDSUd;BMevZy5mLmB@DZL*3lS~#>wf?(g>T{)xOe%ApZ)uhdoY9q zck&U&T2@o%ssnwJhNttDL;}PnJyhV?LWYJ@m$r=HUw1!ZjYIX$((#EIuIg?) z%7~15m#(xf=+r-O19op6Lu9M)xMj9bi*6y(;?WhY)muTQ^Sxo%n50Ja2!xw9jyMp@&i+H)W z#XV571n&?+ko5%msHbYDI@)NWn(*qA(dlN-v~5!)cZRI$;aZivm5=!ZK>-JNj7)S;miT2ilSMVBnDc*?7 z!_As-vz%bK3x+05o0CpRLmEFlDV)uJcyRQT9p6OWDT^ixiKA6Et>peYmbum&`Zg3A zVpJ-kf=7?6sr-ndk6`7L!J9Y+isk4Qq>lhLe$=9Tm$%R@hoypNJNZoMbS7e@pM=Rs zo|{ftiAidc;N+PG3LvI+`ztw=JQ`N`ov$1-sNl&+k=SzR5qHojv`9xgh10^B*+GY* zZT$r20VIxj)gk?i{LL=Hf9&k#z9GB=;*!lpeUJZjW1_jq|1r}ko~g@gy$QYCUKg;o z<@{%qJeqffL9;NC;wTfV;fYp0%MgiG7C#8Gey-<$X^?OFb# zM8x02N5KUYSV3;tpn0nk(GxP><9T{0&Snb;cL(b;hxlUEMj+HRYuS($&4Yf(#! z8Kbll(|$IqZu6!|r<8I1z6r@7LX_+H930pI+)%V&nCh-Pg8zk;}xJ#?*v$qPITkZze%w0bw!r zK5xh!nJjN1>oeNeD-u1Ruxo2Rk^2h}gp@6gwbKvXR%@3GvPdgseFPA(MKBsHC^s;! ze9WA-ZNwY=82a+wljgTcOa;~pwG&amR_N1Muvcy=Cn%d*x(uteWsZ!wYVvd3V$mI00!96^T&g%l}) zpl@w&-G$q+=Kz8ftM28KMEIf6V`hb3xfv4~&M~LYA7FnQG#z}lChKMi~EiaNL5e-crV{ZT*--cBS5+pB2m(q28?W z-SsHa)7i!~NOmHyve0~RLLY1wM#7Pko^U>I*C%~Hwk`E?Mc&Te=8&OYZpKA_=$r7{Vmdb#P&bmgt?{Fpr5YhT0;bU%+0#@eQIwbS4w~*pmSh% zR-yXJazIY84v=+v^s>4jprxSF06pYp1lGBv36t@8{?nfEOYC%n_WUW-eu)

  • +PntjJC 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%0AG@8LQyDTp-hB6VLgIFIr``9 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¨M50K+MQi4Kj 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